@waniwani/sdk 0.13.3 → 0.14.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 +70 -70
- package/dist/chat/embed.js.map +1 -1
- package/dist/chat/express-js/index.d.ts +25 -1
- package/dist/chat/index.d.ts +13 -12
- package/dist/chat/index.js +7 -7
- package/dist/chat/index.js.map +1 -1
- package/dist/chat/next-js/index.d.ts +25 -1
- package/dist/chat/styles.css +1 -1
- package/dist/index.d.ts +25 -1
- package/dist/legacy/chat/express-js/index.d.ts +25 -1
- package/dist/legacy/chat/next-js/index.d.ts +25 -1
- package/dist/legacy/index.d.ts +38 -13
- package/dist/legacy/index.js +13 -13
- package/dist/legacy/index.js.map +1 -1
- package/dist/mcp/index.d.ts +43 -5
- 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,7 +1,7 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import{a as Er,b as _r,c as Nr,d as it,e as lt,f as ta,g as Or,h as Ur,i as Hr,j as qr,k as aa,l as Gr,m as fo,n as Wr,o as zr,p as ut,u as Lt}from"../chunk-5JBHQYU5.js";import"../chunk-V3ZDECK5.js";import{forwardRef as am,useCallback as Pr,useEffect as om,useImperativeHandle as rm,useRef as Xi,useState as Qi}from"react";import{forwardRef as hl,createElement as gl}from"react";var oa=(...e)=>e.filter((t,a,o)=>!!t&&t.trim()!==""&&o.indexOf(t)===a).join(" ").trim();var Vr=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();var jr=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(t,a,o)=>o?o.toUpperCase():a.toLowerCase());var co=e=>{let t=jr(e);return t.charAt(0).toUpperCase()+t.slice(1)};import{forwardRef as ml,createElement as Qr}from"react";var $r={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 Xr=e=>{for(let t in e)if(t.startsWith("aria-")||t==="role"||t==="title")return!0;return!1};var Kr=ml(({color:e="currentColor",size:t=24,strokeWidth:a=2,absoluteStrokeWidth:o,className:r="",children:s,iconNode:n,...i},l)=>Qr("svg",{ref:l,...$r,width:t,height:t,stroke:e,strokeWidth:o?Number(a)*24/Number(t):a,className:oa("lucide",r),...!s&&!Xr(i)&&{"aria-hidden":"true"},...i},[...n.map(([u,f])=>Qr(u,f)),...Array.isArray(s)?s:[s]]));var V=(e,t)=>{let a=hl(({className:o,...r},s)=>gl(Kr,{ref:s,iconNode:t,className:oa(`lucide-${Vr(co(e))}`,`lucide-${e}`,o),...r}));return a.displayName=co(e),a};var wl=[["path",{d:"M12 5v14",key:"s699le"}],["path",{d:"m19 12-7 7-7-7",key:"1idqje"}]],Qe=V("arrow-down",wl);var xl=[["path",{d:"m5 12 7-7 7 7",key:"hav0vg"}],["path",{d:"M12 19V5",key:"x0mq9r"}]],Ct=V("arrow-up",xl);var Ll=[["path",{d:"M8 3H7a2 2 0 0 0-2 2v5a2 2 0 0 1-2 2 2 2 0 0 1 2 2v5c0 1.1.9 2 2 2h1",key:"ezmyqa"}],["path",{d:"M16 21h1a2 2 0 0 0 2-2v-5c0-1.1.9-2 2-2a2 2 0 0 1-2-2V5a2 2 0 0 0-2-2h-1",key:"e1hn23"}]],qe=V("braces",Ll);var Cl=[["path",{d:"M12 18V5",key:"adv99a"}],["path",{d:"M15 13a4.17 4.17 0 0 1-3-4 4.17 4.17 0 0 1-3 4",key:"1e3is1"}],["path",{d:"M17.598 6.5A3 3 0 1 0 12 5a3 3 0 1 0-5.598 1.5",key:"1gqd8o"}],["path",{d:"M17.997 5.125a4 4 0 0 1 2.526 5.77",key:"iwvgf7"}],["path",{d:"M18 18a4 4 0 0 0 2-7.464",key:"efp6ie"}],["path",{d:"M19.967 17.483A4 4 0 1 1 12 18a4 4 0 1 1-7.967-.517",key:"1gq6am"}],["path",{d:"M6 18a4 4 0 0 1-2-7.464",key:"k1g0md"}],["path",{d:"M6.003 5.125a4 4 0 0 0-2.526 5.77",key:"q97ue3"}]],It=V("brain",Cl);var Il=[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]],St=V("check",Il);var Sl=[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]],yt=V("chevron-down",Sl);var yl=[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]],bt=V("chevron-right",yl);var bl=[["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"}]],kt=V("clipboard-copy",bl);var kl=[["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"}]],Tt=V("file",kl);var Tl=[["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"}]],Pt=V("loader",Tl);var Pl=[["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"}]],At=V("paperclip",Pl);var Al=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}]],vt=V("square",Al);var vl=[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]],Ke=V("x",vl);var Ml=[["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"}]],Mt=V("zap",Ml);import{useCallback as $l}from"react";import{useCallback as Ge,useMemo as Rl,useRef as Fl,useState as po}from"react";var Bl={damping:.7,stiffness:.05,mass:1.25},Dl=70,El=1e3/60,_l=350,ra=!1;globalThis.document?.addEventListener("mousedown",()=>{ra=!0});globalThis.document?.addEventListener("mouseup",()=>{ra=!1});globalThis.document?.addEventListener("click",()=>{ra=!1});var Zr=(e={})=>{let[t,a]=po(!1),[o,r]=po(e.initial!==!1),[s,n]=po(!1),i=Fl(null);i.current=e;let l=Ge(()=>{if(!ra)return!1;let g=window.getSelection();if(!g||!g.rangeCount)return!1;let h=g.getRangeAt(0);return h.commonAncestorContainer.contains(w.current)||w.current?.contains(h.commonAncestorContainer)},[]),u=Ge(g=>{d.isAtBottom=g,r(g)},[]),f=Ge(g=>{d.escapedFromLock=g,a(g)},[]),d=Rl(()=>{let g;return{escapedFromLock:t,isAtBottom:o,resizeDifference:0,accumulated:0,velocity:0,listeners:new Set,get scrollTop(){return w.current?.scrollTop??0},set scrollTop(h){w.current&&(w.current.scrollTop=h,d.ignoreScrollToTop=w.current.scrollTop)},get targetScrollTop(){return!w.current||!x.current?0:w.current.scrollHeight-1-w.current.clientHeight},get calculatedTargetScrollTop(){if(!w.current||!x.current)return 0;let{targetScrollTop:h}=this;if(!e.targetScrollTop)return h;if(g?.targetScrollTop===h)return g.calculatedScrollTop;let I=Math.max(Math.min(e.targetScrollTop(h,{scrollElement:w.current,contentElement:x.current}),h),0);return g={targetScrollTop:h,calculatedScrollTop:I},requestAnimationFrame(()=>{g=void 0}),I},get scrollDifference(){return this.calculatedTargetScrollTop-this.scrollTop},get isNearBottom(){return this.scrollDifference<=Dl}}},[]),p=Ge((g={})=>{typeof g=="string"&&(g={animation:g}),g.preserveScrollPosition||u(!0);let h=Date.now()+(Number(g.wait)||0),I=ho(i.current,g.animation),{ignoreEscapes:k=!1}=g,b,y=d.calculatedTargetScrollTop;g.duration instanceof Promise?g.duration.finally(()=>{b=Date.now()}):b=h+(g.duration??0);let M=async()=>{let E=new Promise(requestAnimationFrame).then(()=>{if(!d.isAtBottom)return d.animation=void 0,!1;let{scrollTop:B}=d,T=performance.now(),S=(T-(d.lastTick??T))/El;if(d.animation||(d.animation={behavior:I,promise:E,ignoreEscapes:k}),d.animation.behavior===I&&(d.lastTick=T),l()||h>Date.now())return M();if(B<Math.min(y,d.calculatedTargetScrollTop)){if(d.animation?.behavior===I){if(I==="instant")return d.scrollTop=d.calculatedTargetScrollTop,M();d.velocity=(I.damping*d.velocity+I.stiffness*d.scrollDifference)/I.mass,d.accumulated+=d.velocity*S,d.scrollTop+=d.accumulated,d.scrollTop!==B&&(d.accumulated=0)}return M()}return b>Date.now()?(y=d.calculatedTargetScrollTop,M()):(d.animation=void 0,d.scrollTop<d.calculatedTargetScrollTop?p({animation:ho(i.current,i.current.resize),ignoreEscapes:k,duration:Math.max(0,b-Date.now())||void 0}):d.isAtBottom)});return E.then(B=>(requestAnimationFrame(()=>{d.animation||(d.lastTick=void 0,d.velocity=0)}),B))};return g.wait!==!0&&(d.animation=void 0),d.animation?.behavior===I?d.animation.promise:M()},[u,l,d]),c=Ge(()=>{f(!0),u(!1)},[f,u]),m=Ge(({target:g})=>{if(g!==w.current)return;let{scrollTop:h,ignoreScrollToTop:I}=d,{lastScrollTop:k=h}=d;d.lastScrollTop=h,d.ignoreScrollToTop=void 0,I&&I>h&&(k=I),n(d.isNearBottom),setTimeout(()=>{if(d.resizeDifference||h===I)return;if(l()){f(!0),u(!1);return}let b=h>k,y=h<k;if(d.animation?.ignoreEscapes){d.scrollTop=k;return}y&&(f(!0),u(!1)),b&&f(!1),!d.escapedFromLock&&d.isNearBottom&&u(!0)},1)},[f,u,l,d]),C=Ge(({target:g,deltaY:h})=>{let I=g;for(;!["scroll","auto"].includes(getComputedStyle(I).overflow);){if(!I.parentElement)return;I=I.parentElement}I===w.current&&h<0&&w.current.scrollHeight>w.current.clientHeight&&!d.animation?.ignoreEscapes&&(f(!0),u(!1))},[f,u,d]),w=Jr(g=>{w.current?.removeEventListener("scroll",m),w.current?.removeEventListener("wheel",C),g?.addEventListener("scroll",m,{passive:!0}),g?.addEventListener("wheel",C,{passive:!0})},[]),x=Jr(g=>{if(d.resizeObserver?.disconnect(),!g)return;let h;d.resizeObserver=new ResizeObserver(([I])=>{let{height:k}=I.contentRect,b=k-(h??k);if(d.resizeDifference=b,d.scrollTop>d.targetScrollTop&&(d.scrollTop=d.targetScrollTop),n(d.isNearBottom),b>=0){let y=ho(i.current,h?i.current.resize:i.current.initial);p({animation:y,wait:!0,preserveScrollPosition:!0,duration:y==="instant"?void 0:_l})}else d.isNearBottom&&(f(!1),u(!0));h=k,requestAnimationFrame(()=>{setTimeout(()=>{d.resizeDifference===b&&(d.resizeDifference=0)},1)})}),d.resizeObserver?.observe(g)},[]);return{contentRef:x,scrollRef:w,scrollToBottom:p,stopScroll:c,isAtBottom:o||s,isNearBottom:s,escapedFromLock:t,state:d}};function Jr(e,t){let a=Ge(o=>(a.current=o,e(o)),t);return a}var mo=new Map;function ho(...e){let t={...Bl},a=!1;for(let r of e){if(r==="instant"){a=!0;continue}typeof r=="object"&&(a=!1,t.damping=r.damping??t.damping,t.stiffness=r.stiffness??t.stiffness,t.mass=r.mass??t.mass)}let o=JSON.stringify(t);return mo.has(o)||mo.set(o,Object.freeze(t)),a?"instant":mo.get(o)}import*as Je from"react";import{createContext as Nl,useContext as Ol,useEffect as Ul,useImperativeHandle as Hl,useLayoutEffect as ql,useMemo as Gl,useRef as Wl}from"react";var Yr=Nl(null),zl=typeof window<"u"?ql:Ul;function Rt({instance:e,children:t,resize:a,initial:o,mass:r,damping:s,stiffness:n,targetScrollTop:i,contextRef:l,...u}){let f=Wl(null),d=Je.useCallback((k,b)=>(I?.targetScrollTop??i)?.(k,b)??k,[i]),p=Zr({mass:r,damping:s,stiffness:n,resize:a,initial:o,targetScrollTop:d}),{scrollRef:c,contentRef:m,scrollToBottom:C,stopScroll:w,isAtBottom:x,escapedFromLock:g,state:h}=e??p,I=Gl(()=>({scrollToBottom:C,stopScroll:w,scrollRef:c,isAtBottom:x,escapedFromLock:g,contentRef:m,state:h,get targetScrollTop(){return f.current},set targetScrollTop(k){f.current=k}}),[C,x,m,c,w,g,h]);return Hl(l,()=>I,[I]),zl(()=>{c.current&&getComputedStyle(c.current).overflow==="visible"&&(c.current.style.overflow="auto")},[]),Je.createElement(Yr.Provider,{value:I},Je.createElement("div",{...u},typeof t=="function"?t(I):t))}(function(e){function t({children:a,scrollClassName:o,...r}){let s=go();return Je.createElement("div",{ref:s.scrollRef,style:{height:"100%",width:"100%",scrollbarGutter:"stable both-edges"},className:o},Je.createElement("div",{...r,ref:s.contentRef},typeof a=="function"?a(s):a))}e.Content=t})(Rt||(Rt={}));function go(){let e=Ol(Yr);if(!e)throw new Error("use-stick-to-bottom component context must be used within a StickToBottom component");return e}var Vl=_r({prefix:"ww"});function v(...e){return Vl(Er(e))}import{jsx as jl}from"react/jsx-runtime";var Te=({className:e,variant:t="default",size:a="default",type:o="button",...r})=>jl("button",{type:o,className:v("ww:inline-flex ww:cursor-pointer ww:items-center ww:justify-center ww:rounded-md ww:font-medium ww:transition-colors ww:disabled:pointer-events-none ww:disabled:opacity-50",t==="default"&&"ww:bg-primary ww:text-primary-foreground ww:hover:bg-primary/90",t==="outline"&&"ww:border ww:border-border ww:bg-background ww:hover:bg-accent ww:hover:text-accent-foreground",t==="ghost"&&"ww:hover:bg-accent ww:hover:text-accent-foreground",a==="default"&&"ww:h-9 ww:px-4 ww:py-2 ww:text-sm",a==="sm"&&"ww:h-8 ww:px-3 ww:text-xs",a==="icon"&&"ww:size-9 ww:!rounded-full",a==="icon-sm"&&"ww:size-7 ww:!rounded-full",e),...r});import{jsx as sa}from"react/jsx-runtime";var es=({className:e,...t})=>sa(Rt,{className:v("ww:relative ww:flex-1 ww:overflow-y-hidden",e),initial:"smooth",resize:"smooth",role:"log",...t}),ts=({className:e,...t})=>sa(Rt.Content,{className:v("ww:flex ww:flex-col ww:gap-6 ww:px-4 ww:py-6 ww:mx-auto ww:w-full ww:max-w-3xl",e),...t}),as=({className:e,...t})=>{let{isAtBottom:a,scrollToBottom:o}=go(),r=$l(()=>{o()},[o]);return!a&&sa(Te,{className:v("ww:absolute ww:bottom-4 ww:left-[50%] ww:translate-x-[-50%] ww:rounded-full",e),onClick:r,size:"icon",variant:"outline",...t,children:sa(Qe,{className:"ww:size-4"})})};import rs from"crypto";var os="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";var Xl=128,Ze,dt,Ql=e=>{!Ze||Ze.length<e?(Ze=Buffer.allocUnsafe(e*Xl),rs.randomFillSync(Ze),dt=0):dt+e>Ze.length&&(rs.randomFillSync(Ze),dt=0),dt+=e};var Ft=(e=21)=>{Ql(e|=0);let t="";for(let a=dt-e;a<dt;a++)t+=os[Ze[a]&63];return t};import{createContext as ou,useCallback as Oe,useContext as ru,useEffect as Io,useMemo as su,useRef as So,useState as ds}from"react";import{createContext as Kl,useContext as Jl,useEffect as Zl,useMemo as Yl,useState as ls}from"react";var ss=["en","fr","es"];function ft(e){return ss.includes(e)}function wo(e){if(e&&ft(e))return e;if(e){let a=e.split("-")[0]?.toLowerCase();if(a&&ft(a))return a}let t=[];if(typeof navigator<"u"&&(navigator.language&&t.push(navigator.language),navigator.languages&&t.push(...navigator.languages)),typeof document<"u"){let a=document.documentElement.getAttribute("lang");a&&t.push(a)}for(let a of t){let o=a.toLowerCase();if(ft(o))return o;let r=o.split("-")[0];if(r&&ft(r))return r}return"en"}var na={promptInput:{placeholder:"What would you like to know?",uploadFiles:"Upload files",stop:"Stop",submit:"Submit",removeAttachments:"Remove all attachments"},workingIndicator:{default:"On it\u2026"},reasoning:{thinking:"Thinking\u2026",thoughtBrief:"Thought for a few seconds",thoughtForSeconds:e=>`Thought for ${e} second${e===1?"":"s"}`},tool:{copy:"Copy",copied:"Copied",request:"Request",response:"Response",error:"Error"},attachments:{attachmentFallback:"attachment",fileFallback:"file"},threadMenu:{newChat:"New chat",threadHistory:"Thread history",deleteThread:"Delete thread",noPreviousChats:"No previous chats yet.",hiddenThreads:e=>`${e} older thread${e===1?"":"s"} hidden`},chatQueue:{attachmentFallback:"(attachment)",removeFromQueue:"Remove from queue",queued:e=>`${e} queued`},poweredBy:{label:"AI agent powered by"},aiDisclaimer:{default:"can make mistakes"},exportSession:{saving:"saving...",saved:"saved",error:"error",export:"export",tooltip:"Save scenario to WaniWani"},widgetErrorBoundary:{failedToLoad:"Widget failed to load",retry:"Retry"},launcher:{prompt:"Ask anything\u2026",open:"Open chat",close:"Close chat",minimize:"Minimize"}};var ns={promptInput:{placeholder:"\xBFQu\xE9 te gustar\xEDa saber?",uploadFiles:"Subir archivos",stop:"Detener",submit:"Enviar",removeAttachments:"Eliminar todos los archivos adjuntos"},workingIndicator:{default:"Un momento\u2026"},reasoning:{thinking:"Pensando\u2026",thoughtBrief:"Pensado durante unos segundos",thoughtForSeconds:e=>`Pensado durante ${e} segundo${e===1?"":"s"}`},tool:{copy:"Copiar",copied:"Copiado",request:"Solicitud",response:"Respuesta",error:"Error"},attachments:{attachmentFallback:"adjunto",fileFallback:"archivo"},threadMenu:{newChat:"Nueva conversaci\xF3n",threadHistory:"Historial",deleteThread:"Eliminar conversaci\xF3n",noPreviousChats:"A\xFAn no hay conversaciones anteriores.",hiddenThreads:e=>`${e} conversaci\xF3n${e===1?"":"es"} anterior${e===1?"":"es"} oculta${e===1?"":"s"}`},chatQueue:{attachmentFallback:"(adjunto)",removeFromQueue:"Quitar de la cola",queued:e=>`${e} en cola`},poweredBy:{label:"Agente IA con tecnolog\xEDa de"},aiDisclaimer:{default:"puede cometer errores"},exportSession:{saving:"guardando...",saved:"guardado",error:"error",export:"exportar",tooltip:"Guardar escenario en WaniWani"},widgetErrorBoundary:{failedToLoad:"No se pudo cargar el widget",retry:"Reintentar"},launcher:{prompt:"Pregunta lo que quieras\u2026",open:"Abrir chat",close:"Cerrar chat",minimize:"Minimizar"}};var is={promptInput:{placeholder:"Que souhaitez-vous savoir ?",uploadFiles:"Importer des fichiers",stop:"Arr\xEAter",submit:"Envoyer",removeAttachments:"Supprimer toutes les pi\xE8ces jointes"},workingIndicator:{default:"Un instant\u2026"},reasoning:{thinking:"R\xE9flexion\u2026",thoughtBrief:"R\xE9flexion pendant quelques secondes",thoughtForSeconds:e=>`R\xE9flexion pendant ${e} seconde${e===1?"":"s"}`},tool:{copy:"Copier",copied:"Copi\xE9",request:"Requ\xEAte",response:"R\xE9ponse",error:"Erreur"},attachments:{attachmentFallback:"pi\xE8ce jointe",fileFallback:"fichier"},threadMenu:{newChat:"Nouvelle conversation",threadHistory:"Historique",deleteThread:"Supprimer la conversation",noPreviousChats:"Aucune conversation pr\xE9c\xE9dente.",hiddenThreads:e=>`${e} conversation${e===1?"":"s"} plus ancienne${e===1?"":"s"} masqu\xE9e${e===1?"":"s"}`},chatQueue:{attachmentFallback:"(pi\xE8ce jointe)",removeFromQueue:"Retirer de la file",queued:e=>`${e} en attente`},poweredBy:{label:"Agent IA propuls\xE9 par"},aiDisclaimer:{default:"peut faire des erreurs"},exportSession:{saving:"enregistrement...",saved:"enregistr\xE9",error:"erreur",export:"exporter",tooltip:"Enregistrer le sc\xE9nario dans WaniWani"},widgetErrorBoundary:{failedToLoad:"\xC9chec du chargement du widget",retry:"R\xE9essayer"},launcher:{prompt:"Posez votre question\u2026",open:"Ouvrir le chat",close:"Fermer le chat",minimize:"R\xE9duire"}};var xo={en:na,fr:is,es:ns};import{jsx as au}from"react/jsx-runtime";var us=Kl(null);function eu(e,t){if(!t)return e;let a={...e};for(let o of Object.keys(e)){let r=e[o],s=t[o];s&&typeof r=="object"&&(a[o]={...r,...s})}return a}function Lo({children:e,locale:t,messages:a}){let o=!!(t&&tu(t)),r=o?t:"en",[s,n]=ls(r),[i,l]=ls(o);Zl(()=>{n(wo(t)),l(!0)},[t]);let u=Yl(()=>{let f=xo[s]??xo["en"];return{locale:s,t:eu(f,a),ready:i}},[s,a,i]);return au(us.Provider,{value:u,children:e})}function tu(e){return e==="en"||e==="fr"||e==="es"}function U(){let e=Jl(us);return e||{locale:"en",t:na,ready:!0}}function Co(e,t){let a=Date.now()-e;if(a<6e4)try{return new Intl.RelativeTimeFormat(t,{numeric:"auto",style:"narrow"}).format(0,"second")}catch{return"just now"}let o,r;a<60*6e4?(o=-Math.floor(a/6e4),r="minute"):a<1440*6e4?(o=-Math.floor(a/(60*6e4)),r="hour"):(o=-Math.floor(a/(1440*6e4)),r="day");try{return new Intl.RelativeTimeFormat(t,{numeric:"auto",style:"short"}).format(o,r)}catch{return`${Math.abs(o)}${r==="minute"?"m":r==="hour"?"h":"d"} ago`}}import{jsx as Re,jsxs as ps}from"react/jsx-runtime";var nu=async e=>{try{let a=await(await fetch(e)).blob();return new Promise(o=>{let r=new FileReader;r.onloadend=()=>o(r.result),r.onerror=()=>o(null),r.readAsDataURL(a)})}catch{return null}},fs=ou(null),cs=()=>{let e=ru(fs);if(!e)throw new Error("usePromptInputAttachments must be used within a PromptInput");return e},ia=({className:e,accept:t,multiple:a,globalDrop:o,maxFiles:r,maxFileSize:s,onSubmit:n,children:i,...l})=>{let{t:u}=U(),f=So(null),d=So(null),[p,c]=ds([]),m=So(p);Io(()=>{m.current=p},[p]);let C=Oe(()=>{f.current?.click()},[]),w=Oe(b=>{let y=[...b];if(y.length===0)return;let M=B=>s?B.size<=s:!0,E=y.filter(M);c(B=>{let T=typeof r=="number"?Math.max(0,r-B.length):void 0,S=typeof T=="number"?E.slice(0,T):E;return[...B,...S.map(P=>({filename:P.name,id:Ft(),mediaType:P.type,type:"file",url:URL.createObjectURL(P)}))]})},[r,s]),x=Oe(b=>{c(y=>{let M=y.find(E=>E.id===b);return M?.url&&URL.revokeObjectURL(M.url),y.filter(E=>E.id!==b)})},[]),g=Oe(()=>{c(b=>{for(let y of b)y.url&&URL.revokeObjectURL(y.url);return[]})},[]);Io(()=>()=>{for(let b of m.current)b.url&&URL.revokeObjectURL(b.url)},[]);let h=Oe(b=>{b.currentTarget.files&&w(b.currentTarget.files),b.currentTarget.value=""},[w]);Io(()=>{if(!o)return;let b=M=>{M.dataTransfer?.types?.includes("Files")&&M.preventDefault()},y=M=>{M.dataTransfer?.types?.includes("Files")&&M.preventDefault(),M.dataTransfer?.files&&M.dataTransfer.files.length>0&&w(M.dataTransfer.files)};return document.addEventListener("dragover",b),document.addEventListener("drop",y),()=>{document.removeEventListener("dragover",b),document.removeEventListener("drop",y)}},[w,o]);let I=Oe(async b=>{b.preventDefault();let y=b.currentTarget,E=new FormData(y).get("message")||"";y.reset();let B=await Promise.all(p.map(async({id:T,...S})=>{if(S.url?.startsWith("blob:")){let P=await nu(S.url);return{...S,url:P??S.url}}return S}));try{let T=n({files:B,text:E},b);T instanceof Promise&&await T,g()}catch{}},[p,n,g]),k=su(()=>({add:w,clear:g,files:p,openFileDialog:C,remove:x}),[p,w,x,g,C]);return ps(fs.Provider,{value:k,children:[Re("input",{accept:t,"aria-label":u.promptInput.uploadFiles,className:"ww:hidden",multiple:a,onChange:h,ref:f,title:u.promptInput.uploadFiles,type:"file"}),Re("form",{className:v("ww:flex ww:w-full ww:flex-col ww:rounded-lg ww:border ww:border-border ww:bg-background",e),onSubmit:I,ref:d,...l,children:i})]})};var la=({onChange:e,onKeyDown:t,className:a,placeholder:o,...r})=>{let{t:s}=U(),n=cs(),[i,l]=ds(!1),u=o??s.promptInput.placeholder,f=Oe(p=>{if(t?.(p),!p.defaultPrevented){if(p.key==="Enter"){if(i||p.nativeEvent.isComposing||p.shiftKey)return;p.preventDefault();let{form:c}=p.currentTarget;if(c?.querySelector('button[type="submit"]')?.disabled)return;c?.requestSubmit()}if(p.key==="Backspace"&&p.currentTarget.value===""&&n.files.length>0){p.preventDefault();let c=n.files.at(-1);c&&n.remove(c.id)}}},[t,i,n]),d=Oe(p=>{let c=p.clipboardData?.items;if(!c)return;let m=[];for(let C of c)if(C.kind==="file"){let w=C.getAsFile();w&&m.push(w)}m.length>0&&(p.preventDefault(),n.add(m))},[n]);return Re("textarea",{className:v("ww:field-sizing-content ww:max-h-48 ww:min-h-0 ww:w-full ww:resize-none ww:border-0 ww:bg-transparent ww:px-3 ww:py-2 ww:text-base ww:sm:text-sm ww:outline-none ww:placeholder:text-muted-foreground",a),name:"message",onCompositionEnd:()=>l(!1),onCompositionStart:()=>l(!0),onKeyDown:f,onPaste:d,placeholder:u,onChange:e,...r})},ua=({className:e,status:t,onStop:a,onClick:o,children:r,...s})=>{let{t:n}=U(),i=t==="submitted"||t==="streaming",l=Re(Ct,{className:"ww:size-4"});t==="submitted"?l=Re(Pt,{className:"ww:size-4 ww:animate-spin"}):t==="streaming"&&(l=Re(vt,{className:"ww:size-4"}));let u=Oe(f=>{if(i&&a){f.preventDefault(),a();return}o?.(f)},[i,a,o]);return Re(Te,{"aria-label":i?n.promptInput.stop:n.promptInput.submit,className:v("ww:bg-foreground ww:text-background ww:hover:bg-foreground ww:rounded-full",e),onClick:u,size:"icon-sm",type:i&&a?"button":"submit",variant:"ghost",...s,children:r??l})},da=({className:e,children:t,...a})=>{let{t:o}=U(),r=cs();return r.files.length>0?ps(Te,{className:v("ww:group ww:relative",e),onClick:()=>r.clear(),size:"icon-sm",type:"button",variant:"ghost","aria-label":o.promptInput.removeAttachments,...a,children:[Re("span",{className:"ww:flex ww:size-5 ww:items-center ww:justify-center ww:rounded-full ww:bg-primary ww:text-[10px] ww:font-medium ww:text-primary-foreground ww:transition-opacity ww:group-hover:opacity-0",children:r.files.length}),Re(Ke,{className:"ww:absolute ww:size-4 ww:opacity-0 ww:transition-opacity ww:group-hover:opacity-100"})]}):Re(Te,{className:v(e),onClick:()=>r.openFileDialog(),size:"icon-sm",type:"button",variant:"ghost",...a,children:t??Re(At,{className:"ww:size-4"})})};import{memo as iu,useCallback as lu}from"react";import{jsx as pt}from"react/jsx-runtime";var ms=({className:e,...t})=>pt("div",{className:v("ww:flex ww:flex-col ww:gap-1 ww:px-3 ww:py-2",e),...t}),hs=({className:e,...t})=>pt("li",{className:v("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}),gs=({className:e,...t})=>pt("span",{className:v("ww:inline-block ww:size-2 ww:shrink-0 ww:rounded-full ww:border ww:border-muted-foreground/50",e),...t}),ws=({className:e,...t})=>pt("span",{className:v("ww:line-clamp-1 ww:grow ww:break-words ww:text-muted-foreground",e),...t}),xs=({className:e,...t})=>pt("div",{className:v("ww:flex ww:shrink-0 ww:gap-1 ww:opacity-0 ww:transition-opacity ww:group-hover:opacity-100",e),...t}),Ls=({className:e,...t})=>pt(Te,{className:v("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 We,jsxs as Is}from"react/jsx-runtime";var Cs=iu(({message:e,onRemove:t})=>{let{t:a}=U(),o=lu(()=>t(e.id),[t,e.id]);return Is(hs,{children:[We(gs,{}),We(ws,{children:e.text||a.chatQueue.attachmentFallback}),We(xs,{children:We(Ls,{"aria-label":a.chatQueue.removeFromQueue,onClick:o,children:We(Ke,{className:"ww:size-3"})})})]})});Cs.displayName="ChatQueueItem";function fa({queuedMessages:e,onRemove:t,className:a}){let{t:o}=U();return e.length===0?null:Is(ms,{className:v("ww:border-t ww:border-border",a),children:[We("div",{className:"ww:text-[11px] ww:font-medium ww:text-muted-foreground ww:px-2",children:o.chatQueue.queued(e.length)}),We("ul",{children:e.map(r=>We(Cs,{message:r,onRemove:t},r.id))})]})}import{useState as Ss}from"react";import{jsx as uu}from"react/jsx-runtime";function ys({messages:e,evalEnabled:t,api:a="/api/waniwani"}){let{t:o}=U(),[r,s]=Ss(!1),[n,i]=Ss(null),l=async()=>{let f={name:`session-${new Date().toISOString().slice(0,19)}`,type:"functional",messages:e,mode:"manual"};s(!0),i(null);try{let d=await fetch(`${a}/scenarios`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(f)});if(!d.ok)throw new Error(`${d.status}`);i("saved")}catch{i("error")}finally{s(!1),setTimeout(()=>i(null),2e3)}};if(!t||e.length===0)return null;let u=r?o.exportSession.saving:n==="saved"?o.exportSession.saved:n==="error"?o.exportSession.error:o.exportSession.export;return uu("button",{type:"button",onClick:l,disabled:r,title:o.exportSession.tooltip,className:"ww:ml-auto ww:text-[10px] ww:font-mono ww:uppercase ww:tracking-wider ww:text-muted-foreground hover:ww:text-foreground ww:cursor-pointer ww:transition-colors ww:disabled:opacity-40",children:u})}import{jsx as Bt,jsxs as fu}from"react/jsx-runtime";var bs=({files:e,className:t,...a})=>e.length===0?null:Bt("div",{className:v("ww:flex ww:flex-wrap ww:gap-1.5",t),...a,children:e.map((o,r)=>Bt(du,{file:o},r))});function du({file:e}){let{t}=U();return e.mediaType?.startsWith("image/")&&e.url?Bt("img",{src:e.url,alt:e.filename??t.attachments.attachmentFallback,className:"ww:h-16 ww:max-w-32 ww:rounded ww:object-cover"}):fu("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:[Bt(Tt,{className:"ww:size-3 ww:shrink-0"}),Bt("span",{className:"ww:max-w-24 ww:truncate",children:e.filename??t.attachments.fileFallback})]})}var fe={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 De={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 ye={data:"data",whitespace:"whitespace",lineEnding:"lineEnding",lineEndingBlank:"lineEndingBlank",linePrefix:"linePrefix",lineSuffix:"lineSuffix",atxHeading:"atxHeading",atxHeadingSequence:"atxHeadingSequence",atxHeadingText:"atxHeadingText",autolink:"autolink",autolinkEmail:"autolinkEmail",autolinkMarker:"autolinkMarker",autolinkProtocol:"autolinkProtocol",characterEscape:"characterEscape",characterEscapeValue:"characterEscapeValue",characterReference:"characterReference",characterReferenceMarker:"characterReferenceMarker",characterReferenceMarkerNumeric:"characterReferenceMarkerNumeric",characterReferenceMarkerHexadecimal:"characterReferenceMarkerHexadecimal",characterReferenceValue:"characterReferenceValue",codeFenced:"codeFenced",codeFencedFence:"codeFencedFence",codeFencedFenceSequence:"codeFencedFenceSequence",codeFencedFenceInfo:"codeFencedFenceInfo",codeFencedFenceMeta:"codeFencedFenceMeta",codeFlowValue:"codeFlowValue",codeIndented:"codeIndented",codeText:"codeText",codeTextData:"codeTextData",codeTextPadding:"codeTextPadding",codeTextSequence:"codeTextSequence",content:"content",definition:"definition",definitionDestination:"definitionDestination",definitionDestinationLiteral:"definitionDestinationLiteral",definitionDestinationLiteralMarker:"definitionDestinationLiteralMarker",definitionDestinationRaw:"definitionDestinationRaw",definitionDestinationString:"definitionDestinationString",definitionLabel:"definitionLabel",definitionLabelMarker:"definitionLabelMarker",definitionLabelString:"definitionLabelString",definitionMarker:"definitionMarker",definitionTitle:"definitionTitle",definitionTitleMarker:"definitionTitleMarker",definitionTitleString:"definitionTitleString",emphasis:"emphasis",emphasisSequence:"emphasisSequence",emphasisText:"emphasisText",escapeMarker:"escapeMarker",hardBreakEscape:"hardBreakEscape",hardBreakTrailing:"hardBreakTrailing",htmlFlow:"htmlFlow",htmlFlowData:"htmlFlowData",htmlText:"htmlText",htmlTextData:"htmlTextData",image:"image",label:"label",labelText:"labelText",labelLink:"labelLink",labelImage:"labelImage",labelMarker:"labelMarker",labelImageMarker:"labelImageMarker",labelEnd:"labelEnd",link:"link",paragraph:"paragraph",reference:"reference",referenceMarker:"referenceMarker",referenceString:"referenceString",resource:"resource",resourceDestination:"resourceDestination",resourceDestinationLiteral:"resourceDestinationLiteral",resourceDestinationLiteralMarker:"resourceDestinationLiteralMarker",resourceDestinationRaw:"resourceDestinationRaw",resourceDestinationString:"resourceDestinationString",resourceMarker:"resourceMarker",resourceTitle:"resourceTitle",resourceTitleMarker:"resourceTitleMarker",resourceTitleString:"resourceTitleString",setextHeading:"setextHeading",setextHeadingText:"setextHeadingText",setextHeadingLine:"setextHeadingLine",setextHeadingLineSequence:"setextHeadingLineSequence",strong:"strong",strongSequence:"strongSequence",strongText:"strongText",thematicBreak:"thematicBreak",thematicBreakSequence:"thematicBreakSequence",blockQuote:"blockQuote",blockQuotePrefix:"blockQuotePrefix",blockQuoteMarker:"blockQuoteMarker",blockQuotePrefixWhitespace:"blockQuotePrefixWhitespace",listOrdered:"listOrdered",listUnordered:"listUnordered",listItemIndent:"listItemIndent",listItemMarker:"listItemMarker",listItemPrefix:"listItemPrefix",listItemPrefixWhitespace:"listItemPrefixWhitespace",listItemValue:"listItemValue",chunkDocument:"chunkDocument",chunkContent:"chunkContent",chunkFlow:"chunkFlow",chunkText:"chunkText",chunkString:"chunkString"};function ks(e){return e===161||e===164||e===167||e===168||e===170||e===173||e===174||e>=176&&e<=180||e>=182&&e<=186||e>=188&&e<=191||e===198||e===208||e===215||e===216||e>=222&&e<=225||e===230||e>=232&&e<=234||e===236||e===237||e===240||e===242||e===243||e>=247&&e<=250||e===252||e===254||e===257||e===273||e===275||e===283||e===294||e===295||e===299||e>=305&&e<=307||e===312||e>=319&&e<=322||e===324||e>=328&&e<=331||e===333||e===338||e===339||e===358||e===359||e===363||e===462||e===464||e===466||e===468||e===470||e===472||e===474||e===476||e===593||e===609||e===708||e===711||e>=713&&e<=715||e===717||e===720||e>=728&&e<=731||e===733||e===735||e>=768&&e<=879||e>=913&&e<=929||e>=931&&e<=937||e>=945&&e<=961||e>=963&&e<=969||e===1025||e>=1040&&e<=1103||e===1105||e===8208||e>=8211&&e<=8214||e===8216||e===8217||e===8220||e===8221||e>=8224&&e<=8226||e>=8228&&e<=8231||e===8240||e===8242||e===8243||e===8245||e===8251||e===8254||e===8308||e===8319||e>=8321&&e<=8324||e===8364||e===8451||e===8453||e===8457||e===8467||e===8470||e===8481||e===8482||e===8486||e===8491||e===8531||e===8532||e>=8539&&e<=8542||e>=8544&&e<=8555||e>=8560&&e<=8569||e===8585||e>=8592&&e<=8601||e===8632||e===8633||e===8658||e===8660||e===8679||e===8704||e===8706||e===8707||e===8711||e===8712||e===8715||e===8719||e===8721||e===8725||e===8730||e>=8733&&e<=8736||e===8739||e===8741||e>=8743&&e<=8748||e===8750||e>=8756&&e<=8759||e===8764||e===8765||e===8776||e===8780||e===8786||e===8800||e===8801||e>=8804&&e<=8807||e===8810||e===8811||e===8814||e===8815||e===8834||e===8835||e===8838||e===8839||e===8853||e===8857||e===8869||e===8895||e===8978||e>=9312&&e<=9449||e>=9451&&e<=9547||e>=9552&&e<=9587||e>=9600&&e<=9615||e>=9618&&e<=9621||e===9632||e===9633||e>=9635&&e<=9641||e===9650||e===9651||e===9654||e===9655||e===9660||e===9661||e===9664||e===9665||e>=9670&&e<=9672||e===9675||e>=9678&&e<=9681||e>=9698&&e<=9701||e===9711||e===9733||e===9734||e===9737||e===9742||e===9743||e===9756||e===9758||e===9792||e===9794||e===9824||e===9825||e>=9827&&e<=9829||e>=9831&&e<=9834||e===9836||e===9837||e===9839||e===9886||e===9887||e===9919||e>=9926&&e<=9933||e>=9935&&e<=9939||e>=9941&&e<=9953||e===9955||e===9960||e===9961||e>=9963&&e<=9969||e===9972||e>=9974&&e<=9977||e===9979||e===9980||e===9982||e===9983||e===10045||e>=10102&&e<=10111||e>=11094&&e<=11097||e>=12872&&e<=12879||e>=57344&&e<=63743||e>=65024&&e<=65039||e===65533||e>=127232&&e<=127242||e>=127248&&e<=127277||e>=127280&&e<=127337||e>=127344&&e<=127373||e===127375||e===127376||e>=127387&&e<=127404||e>=917760&&e<=917999||e>=983040&&e<=1048573||e>=1048576&&e<=1114109}function Ts(e){return e===12288||e>=65281&&e<=65376||e>=65504&&e<=65510}function Ps(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 As(e){return ks(e)?"ambiguous":Ts(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":Ps(e)?"wide":"neutral"}function cu(e){if(!Number.isSafeInteger(e))throw new TypeError(`Expected a code point, got \`${typeof e}\`.`)}function vs(e){return cu(e),As(e)}var pu=Object.defineProperty,mu=(e,t,a)=>t in e?pu(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a,hu=(e,t,a)=>mu(e,typeof t!="symbol"?t+"":t,a);function gu(e){return/^\p{Emoji_Presentation}/u.test(String.fromCodePoint(e))}function wu(e){if(!e||e<4352)return!1;switch(vs(e)){case"fullwidth":case"halfwidth":return!0;case"wide":return!gu(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 xu(e,t){return t!==65025||!e||e<8216?!1:e===8216||e===8217||e===8220||e===8221}function Lu(e){return e!==null&&e>=65024&&e<=65038}var Cu=Ms(/\p{P}|\p{S}/u),Iu=Ms(/\s/);function Ms(e){return t;function t(a){return a!==null&&a>-1&&e.test(String.fromCodePoint(a))}}var be;(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})(be||(be={}));function ze(e){if(e===fe.eof||Nr(e)||Iu(e))return De.characterGroupWhitespace;let t=0;if(e>=4352){if(Lu(e))return be.nonEmojiGeneralUseVS;switch(wu(e)){case null:return be.ivs;case!0:t|=be.cjk;break}}return Cu(e)&&(t|=De.characterGroupPunctuation),t}function ca(e,t,a){if(!yu(e))return e;let o=t(),r=ze(o);return!o||Ye(r)?e:xu(o,a)?be.cjkPunctuation:Su(r)}function Su(e){return e&~be.ivs}function Ye(e){return!!(e&De.characterGroupWhitespace)}function mt(e){return(e&be.cjkPunctuation)===De.characterGroupPunctuation}function Dt(e){return!!(e&be.cjk)}function Rs(e){return e===be.ivs}function Fs(e){return!!(e&be.cjkOrIvs)}function yu(e){return e===be.nonEmojiGeneralUseVS}function yo(e){return!!(e&be.spaceOrPunctuation)}function pa(e){return!!(e&&e>=55296&&e<=56319)}function ma(e){return!!(e&&e>=56320&&e<=57343)}function ha(e,t,a){if(t._bufferIndex<2)return e;let r=a({start:{...t,_bufferIndex:t._bufferIndex-2},end:t}).codePointAt(0);return r&&r>=65536?r:e}function bu(e,t,a){let o=e>=65536?2:1;if(t._bufferIndex<1+o)return null;let r=t._bufferIndex-o-2,s=a({start:{...t,_bufferIndex:r>=0?r:0},end:{...t,_bufferIndex:t._bufferIndex-o}}),n=s.charCodeAt(s.length-1);if(Number.isNaN(n))return null;if(s.length<2||n<56320||57343<n)return n;let i=s.codePointAt(0);return i&&i>=65536?i:n}var ga=class{constructor(e,t,a){this.previousCode=e,this.nowPoint=t,this.sliceSerialize=a,hu(this,"cachedValue")}value(){return this.cachedValue===void 0&&(this.cachedValue=bu(this.previousCode,this.nowPoint,this.sliceSerialize)),this.cachedValue}};function wa(e,t,a){let o=a({start:t,end:{...t,_bufferIndex:t._bufferIndex+2}}).codePointAt(0);return o&&o>=65536?o:e}var bo={name:"attention",resolveAll:ku,tokenize:Tu};function ku(e,t){let a=-1,o,r,s,n,i,l,u,f;for(;++a<e.length;)if(e[a][0]==="enter"&&e[a][1].type==="attentionSequence"&&e[a][1]._close){for(o=a;o--;)if(e[o][0]==="exit"&&e[o][1].type==="attentionSequence"&&e[o][1]._open&&t.sliceSerialize(e[o][1]).charCodeAt(0)===t.sliceSerialize(e[a][1]).charCodeAt(0)){if((e[o][1]._close||e[a][1]._open)&&(e[a][1].end.offset-e[a][1].start.offset)%3&&!((e[o][1].end.offset-e[o][1].start.offset+e[a][1].end.offset-e[a][1].start.offset)%3))continue;l=e[o][1].end.offset-e[o][1].start.offset>1&&e[a][1].end.offset-e[a][1].start.offset>1?2:1;let d={...e[o][1].end},p={...e[a][1].start};Bs(d,-l),Bs(p,l),n={type:l>1?ye.strongSequence:ye.emphasisSequence,start:d,end:{...e[o][1].end}},i={type:l>1?ye.strongSequence:ye.emphasisSequence,start:{...e[a][1].start},end:p},s={type:l>1?ye.strongText:ye.emphasisText,start:{...e[o][1].end},end:{...e[a][1].start}},r={type:l>1?ye.strong:ye.emphasis,start:{...n.start},end:{...i.end}},e[o][1].end={...n.start},e[a][1].start={...i.end},u=[],e[o][1].end.offset-e[o][1].start.offset&&(u=lt(u,[["enter",e[o][1],t],["exit",e[o][1],t]])),u=lt(u,[["enter",r,t],["enter",n,t],["exit",n,t],["enter",s,t]]),t.parser.constructs.insideSpan.null,u=lt(u,ta(t.parser.constructs.insideSpan.null,e.slice(o+1,a),t)),u=lt(u,[["exit",s,t],["enter",i,t],["exit",i,t],["exit",r,t]]),e[a][1].end.offset-e[a][1].start.offset?(f=2,u=lt(u,[["enter",e[a][1],t],["exit",e[a][1],t]])):f=0,it(e,o-1,a-o+3,u),a=o+u.length-f-2;break}}for(a=-1;++a<e.length;)e[a][1].type==="attentionSequence"&&(e[a][1].type="data");return e}function Tu(e,t){let a=this.parser.constructs.attentionMarkers.null,{now:o,sliceSerialize:r,previous:s}=this,n=ma(s)?ha(s,o(),r):s,i=ze(n),l=new ga(n,o(),r),u=ca(i,l.value.bind(l),n),f;return d;function d(c){return c===fe.asterisk||fe.underscore,f=c,e.enter("attentionSequence"),p(c)}function p(c){if(c===f)return e.consume(c),p;let m=e.exit("attentionSequence"),C=pa(c)?wa(c,o(),r):c,w=ze(C);let x=mt(u),g=x||Ye(u),h=mt(w),I=h||Ye(w),k=Fs(u),b=!I||h&&(g||k)||a.includes(c),y=!g||x&&(I||Dt(w))||a.includes(n);return m._open=!!(f===fe.asterisk?b:b&&(yo(u)||!y)),m._close=!!(f===fe.asterisk?y:y&&(yo(w)||!b)),t(c)}}function Bs(e,t){e.column+=t,e.offset+=t,e._bufferIndex+=t}function Ds(){return{text:{[fe.asterisk]:bo,[fe.underscore]:bo},insideSpan:{null:[bo]}}}function Es(){let e=this.data();(e.micromarkExtensions||(e.micromarkExtensions=[])).push(Ds())}function _s(e){let a=(e||{}).singleTilde,o={name:"strikethrough",tokenize:s,resolveAll:r};return a==null&&(a=!0),{text:{[fe.tilde]:o},insideSpan:{null:[o]},attentionMarkers:{null:[fe.tilde]}};function r(n,i){let l=-1;for(;++l<n.length;)if(n[l][0]==="enter"&&n[l][1].type==="strikethroughSequenceTemporary"&&n[l][1]._close){let u=l;for(;u--;)if(n[u][0]==="exit"&&n[u][1].type==="strikethroughSequenceTemporary"&&n[u][1]._open&&n[l][1].end.offset-n[l][1].start.offset===n[u][1].end.offset-n[u][1].start.offset){n[l][1].type="strikethroughSequence",n[u][1].type="strikethroughSequence";let f={type:"strikethrough",start:Object.assign({},n[u][1].start),end:Object.assign({},n[l][1].end)},d={type:"strikethroughText",start:Object.assign({},n[u][1].end),end:Object.assign({},n[l][1].start)},p=[["enter",f,i],["enter",n[u][1],i],["exit",n[u][1],i],["enter",d,i]],c=i.parser.constructs.insideSpan.null;c&&it(p,p.length,0,ta(c,n.slice(u+1,l),i)),it(p,p.length,0,[["exit",d,i],["enter",n[l][1],i],["exit",n[l][1],i],["exit",f,i]]),it(n,u-1,l-u+3,p),l=u+p.length-2;break}}for(l=-1;++l<n.length;)n[l][1].type==="strikethroughSequenceTemporary"&&(n[l][1].type=ye.data);return n}function s(n,i,l){let{now:u,sliceSerialize:f,previous:d}=this,p=ma(d)?ha(d,u(),f):d,c=ze(p),m=new ga(p,u(),f),C=ca(c,m.value.bind(m),p),w=this.events,x=0;return g;function g(I){return fe.tilde,p===fe.tilde&&w[w.length-1][1].type!==ye.characterEscape?l(I):(n.enter("strikethroughSequenceTemporary"),h(I))}function h(I){let k=ze(p);if(I===fe.tilde)return x>1?l(I):(n.consume(I),x++,h);if(x<2&&!a)return l(I);let b=n.exit("strikethroughSequenceTemporary"),y=pa(I)?wa(I,u(),f):I,M=ze(y),B=mt(C)||Ye(C),S=mt(M)||Ye(M),P=Dt(C)||Rs(k);return b._open=!S||M===De.attentionSideAfter&&(B||P),b._close=!B||k===De.attentionSideAfter&&(S||Dt(M)),i(I)}}}function Ns(e){let t=this.data();(t.micromarkExtensions||(t.micromarkExtensions=[])).push(_s(e))}var Pu=new Set(["\u3002","\uFF0E","\uFF0C","\u3001","\uFF1F","\uFF01","\uFF1A","\uFF1B","\uFF08","\uFF09","\u3010","\u3011","\u300C","\u300D","\u300E","\u300F","\u3008","\u3009","\u300A","\u300B"]),Au=/^(https?:\/\/|mailto:|www\.)/i,vu=e=>{if(e.children.length!==1)return!1;let t=e.children[0];return t.type==="text"&&t.value===e.url},Mu=e=>{let t=0;for(let a of e){if(Pu.has(a))return t;t+=a.length}return null},Ru=(e,t)=>({...t,url:e,children:[{type:"text",value:e}]}),Fu=e=>({type:"text",value:e}),Bu=()=>e=>{Or(e,"link",(t,a,o)=>{if(!o||typeof a!="number"||!vu(t)||!Au.test(t.url))return;let r=Mu(t.url);if(r===null||r===0)return;let s=t.url.slice(0,r),n=t.url.slice(r),i=Ru(s,t),l=Fu(n);return o.children.splice(a,1,i,l),a+1})};function Du(){let e=[Es],t=[Bu,Ns],a=[...e,...t];return{name:"cjk",type:"cjk",remarkPluginsBefore:e,remarkPluginsAfter:t,remarkPlugins:a}}var ko=Du();var J=class extends Error{constructor(t){super(t),this.name="ShikiError"}};function Eu(e){return Eo(e)}function Eo(e){return Array.isArray(e)?_u(e):e instanceof RegExp?e:typeof e=="object"?Nu(e):e}function _u(e){let t=[];for(let a=0,o=e.length;a<o;a++)t[a]=Eo(e[a]);return t}function Nu(e){let t={};for(let a in e)t[a]=Eo(e[a]);return t}function js(e,...t){return t.forEach(a=>{for(let o in a)e[o]=a[o]}),e}function $s(e){let t=~e.lastIndexOf("/")||~e.lastIndexOf("\\");return t===0?e:~t===e.length-1?$s(e.substring(0,e.length-1)):e.substr(~t+1)}var To=/\$(\d+)|\${(\d+):\/(downcase|upcase)}/g,xa=class{static hasCaptures(e){return e===null?!1:(To.lastIndex=0,To.test(e))}static replaceCaptures(e,t,a){return e.replace(To,(o,r,s,n)=>{let i=a[parseInt(r||s,10)];if(i){let l=t.substring(i.start,i.end);for(;l[0]===".";)l=l.substring(1);switch(n){case"downcase":return l.toLowerCase();case"upcase":return l.toUpperCase();default:return l}}else return o})}};function Xs(e,t){return e<t?-1:e>t?1:0}function Qs(e,t){if(e===null&&t===null)return 0;if(!e)return-1;if(!t)return 1;let a=e.length,o=t.length;if(a===o){for(let r=0;r<a;r++){let s=Xs(e[r],t[r]);if(s!==0)return s}return 0}return a-o}function Os(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 Ks(e){return e.replace(/[\-\\\{\}\*\+\?\|\^\$\.\,\[\]\(\)\#\s]/g,"\\$&")}var Js=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}},Nt=class{constructor(e,t,a){this._colorMap=e,this._defaults=t,this._root=a}static createFromRawTheme(e,t){return this.createFromParsedTheme(Hu(e),t)}static createFromParsedTheme(e,t){return Gu(e,t)}_cachedMatchRoot=new Js(e=>this._root.match(e));getColorMap(){return this._colorMap.getColorMap()}getDefaults(){return this._defaults}match(e){if(e===null)return this._defaults;let t=e.scopeName,o=this._cachedMatchRoot.get(t).find(r=>Ou(e.parent,r.parentScopes));return o?new Zs(o.fontStyle,o.foreground,o.background):null}},Po=class La{constructor(t,a){this.parent=t,this.scopeName=a}static push(t,a){for(let o of a)t=new La(t,o);return t}static from(...t){let a=null;for(let o=0;o<t.length;o++)a=new La(a,t[o]);return a}push(t){return new La(this,t)}getSegments(){let t=this,a=[];for(;t;)a.push(t.scopeName),t=t.parent;return a.reverse(),a}toString(){return this.getSegments().join(" ")}extends(t){return this===t?!0:this.parent===null?!1:this.parent.extends(t)}getExtensionIfDefined(t){let a=[],o=this;for(;o&&o!==t;)a.push(o.scopeName),o=o.parent;return o===t?a.reverse():void 0}};function Ou(e,t){if(t.length===0)return!0;for(let a=0;a<t.length;a++){let o=t[a],r=!1;if(o===">"){if(a===t.length-1)return!1;o=t[++a],r=!0}for(;e&&!Uu(e.scopeName,o);){if(r)return!1;e=e.parent}if(!e)return!1;e=e.parent}return!0}function Uu(e,t){return t===e||e.startsWith(t)&&e[t.length]==="."}var Zs=class{constructor(e,t,a){this.fontStyle=e,this.foregroundId=t,this.backgroundId=a}};function Hu(e){if(!e)return[];if(!e.settings||!Array.isArray(e.settings))return[];let t=e.settings,a=[],o=0;for(let r=0,s=t.length;r<s;r++){let n=t[r];if(!n.settings)continue;let i;if(typeof n.scope=="string"){let d=n.scope;d=d.replace(/^[,]+/,""),d=d.replace(/[,]+$/,""),i=d.split(",")}else Array.isArray(n.scope)?i=n.scope:i=[""];let l=-1;if(typeof n.settings.fontStyle=="string"){l=0;let d=n.settings.fontStyle.split(" ");for(let p=0,c=d.length;p<c;p++)switch(d[p]){case"italic":l=l|1;break;case"bold":l=l|2;break;case"underline":l=l|4;break;case"strikethrough":l=l|8;break}}let u=null;typeof n.settings.foreground=="string"&&Os(n.settings.foreground)&&(u=n.settings.foreground);let f=null;typeof n.settings.background=="string"&&Os(n.settings.background)&&(f=n.settings.background);for(let d=0,p=i.length;d<p;d++){let m=i[d].trim().split(" "),C=m[m.length-1],w=null;m.length>1&&(w=m.slice(0,m.length-1),w.reverse()),a[o++]=new qu(C,w,r,l,u,f)}}return a}var qu=class{constructor(e,t,a,o,r,s){this.scope=e,this.parentScopes=t,this.index=a,this.fontStyle=o,this.foreground=r,this.background=s}},ce=(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))(ce||{});function Gu(e,t){e.sort((l,u)=>{let f=Xs(l.scope,u.scope);return f!==0||(f=Qs(l.parentScopes,u.parentScopes),f!==0)?f:l.index-u.index});let a=0,o="#000000",r="#ffffff";for(;e.length>=1&&e[0].scope==="";){let l=e.shift();l.fontStyle!==-1&&(a=l.fontStyle),l.foreground!==null&&(o=l.foreground),l.background!==null&&(r=l.background)}let s=new Wu(t),n=new Zs(a,s.getId(o),s.getId(r)),i=new Vu(new vo(0,null,-1,0,0),[]);for(let l=0,u=e.length;l<u;l++){let f=e[l];i.insert(0,f.scope,f.parentScopes,f.fontStyle,s.getId(f.foreground),s.getId(f.background))}return new Nt(s,n,i)}var Wu=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)}},zu=Object.freeze([]),vo=class Ys{scopeDepth;parentScopes;fontStyle;foreground;background;constructor(t,a,o,r,s){this.scopeDepth=t,this.parentScopes=a||zu,this.fontStyle=o,this.foreground=r,this.background=s}clone(){return new Ys(this.scopeDepth,this.parentScopes,this.fontStyle,this.foreground,this.background)}static cloneArr(t){let a=[];for(let o=0,r=t.length;o<r;o++)a[o]=t[o].clone();return a}acceptOverwrite(t,a,o,r){this.scopeDepth>t?console.log("how did this happen?"):this.scopeDepth=t,a!==-1&&(this.fontStyle=a),o!==0&&(this.foreground=o),r!==0&&(this.background=r)}},Vu=class Mo{constructor(t,a=[],o={}){this._mainRule=t,this._children=o,this._rulesWithParentScopes=a}_rulesWithParentScopes;static _cmpBySpecificity(t,a){if(t.scopeDepth!==a.scopeDepth)return a.scopeDepth-t.scopeDepth;let o=0,r=0;for(;t.parentScopes[o]===">"&&o++,a.parentScopes[r]===">"&&r++,!(o>=t.parentScopes.length||r>=a.parentScopes.length);){let s=a.parentScopes[r].length-t.parentScopes[o].length;if(s!==0)return s;o++,r++}return a.parentScopes.length-t.parentScopes.length}match(t){if(t!==""){let o=t.indexOf("."),r,s;if(o===-1?(r=t,s=""):(r=t.substring(0,o),s=t.substring(o+1)),this._children.hasOwnProperty(r))return this._children[r].match(s)}let a=this._rulesWithParentScopes.concat(this._mainRule);return a.sort(Mo._cmpBySpecificity),a}insert(t,a,o,r,s,n){if(a===""){this._doInsertHere(t,o,r,s,n);return}let i=a.indexOf("."),l,u;i===-1?(l=a,u=""):(l=a.substring(0,i),u=a.substring(i+1));let f;this._children.hasOwnProperty(l)?f=this._children[l]:(f=new Mo(this._mainRule.clone(),vo.cloneArr(this._rulesWithParentScopes)),this._children[l]=f),f.insert(t+1,u,o,r,s,n)}_doInsertHere(t,a,o,r,s){if(a===null){this._mainRule.acceptOverwrite(t,o,r,s);return}for(let n=0,i=this._rulesWithParentScopes.length;n<i;n++){let l=this._rulesWithParentScopes[n];if(Qs(l.parentScopes,a)===0){l.acceptOverwrite(t,o,r,s);return}}o===-1&&(o=this._mainRule.fontStyle),r===0&&(r=this._mainRule.foreground),s===0&&(s=this._mainRule.background),this._rulesWithParentScopes.push(new vo(t,a,o,r,s))}},tt=class Pe{static toBinaryStr(t){return t.toString(2).padStart(32,"0")}static print(t){let a=Pe.getLanguageId(t),o=Pe.getTokenType(t),r=Pe.getFontStyle(t),s=Pe.getForeground(t),n=Pe.getBackground(t);console.log({languageId:a,tokenType:o,fontStyle:r,foreground:s,background:n})}static getLanguageId(t){return(t&255)>>>0}static getTokenType(t){return(t&768)>>>8}static containsBalancedBrackets(t){return(t&1024)!==0}static getFontStyle(t){return(t&30720)>>>11}static getForeground(t){return(t&16744448)>>>15}static getBackground(t){return(t&4278190080)>>>24}static set(t,a,o,r,s,n,i){let l=Pe.getLanguageId(t),u=Pe.getTokenType(t),f=Pe.containsBalancedBrackets(t)?1:0,d=Pe.getFontStyle(t),p=Pe.getForeground(t),c=Pe.getBackground(t);return a!==0&&(l=a),o!==8&&(u=o),r!==null&&(f=r?1:0),s!==-1&&(d=s),n!==0&&(p=n),i!==0&&(c=i),(l<<0|u<<8|f<<10|d<<11|p<<15|c<<24)>>>0}};function Ia(e,t){let a=[],o=ju(e),r=o.next();for(;r!==null;){let l=0;if(r.length===2&&r.charAt(1)===":"){switch(r.charAt(0)){case"R":l=1;break;case"L":l=-1;break;default:console.log(`Unknown priority ${r} in scope selector`)}r=o.next()}let u=n();if(a.push({matcher:u,priority:l}),r!==",")break;r=o.next()}return a;function s(){if(r==="-"){r=o.next();let l=s();return u=>!!l&&!l(u)}if(r==="("){r=o.next();let l=i();return r===")"&&(r=o.next()),l}if(Us(r)){let l=[];do l.push(r),r=o.next();while(Us(r));return u=>t(l,u)}return null}function n(){let l=[],u=s();for(;u;)l.push(u),u=s();return f=>l.every(d=>d(f))}function i(){let l=[],u=n();for(;u&&(l.push(u),r==="|"||r===",");){do r=o.next();while(r==="|"||r===",");u=n()}return f=>l.some(d=>d(f))}}function Us(e){return!!e&&!!e.match(/[\w\.:]+/)}function ju(e){let t=/([LR]:|[\w\.:][\w\.:\-]*|[\,\|\-\(\)])/g,a=t.exec(e);return{next:()=>{if(!a)return null;let o=a[0];return a=t.exec(e),o}}}function en(e){typeof e.dispose=="function"&&e.dispose()}var Ot=class{constructor(e){this.scopeName=e}toKey(){return this.scopeName}},$u=class{constructor(e,t){this.scopeName=e,this.ruleName=t}toKey(){return`${this.scopeName}#${this.ruleName}`}},Xu=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))}},Qu=class{constructor(e,t){this.repo=e,this.initialScopeName=t,this.seenFullScopeRequests.add(this.initialScopeName),this.Q=[new Ot(this.initialScopeName)]}seenFullScopeRequests=new Set;seenPartialScopeRequests=new Set;Q;processQueue(){let e=this.Q;this.Q=[];let t=new Xu;for(let a of e)Ku(a,this.initialScopeName,this.repo,t);for(let a of t.references)if(a instanceof Ot){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 Ku(e,t,a,o){let r=a.lookup(e.scopeName);if(!r){if(e.scopeName===t)throw new Error(`No grammar provided for <${t}>`);return}let s=a.lookup(t);e instanceof Ot?Ca({baseGrammar:s,selfGrammar:r},o):Ro(e.ruleName,{baseGrammar:s,selfGrammar:r,repository:r.repository},o);let n=a.injections(e.scopeName);if(n)for(let i of n)o.add(new Ot(i))}function Ro(e,t,a){if(t.repository&&t.repository[e]){let o=t.repository[e];Sa([o],t,a)}}function Ca(e,t){e.selfGrammar.patterns&&Array.isArray(e.selfGrammar.patterns)&&Sa(e.selfGrammar.patterns,{...e,repository:e.selfGrammar.repository},t),e.selfGrammar.injections&&Sa(Object.values(e.selfGrammar.injections),{...e,repository:e.selfGrammar.repository},t)}function Sa(e,t,a){for(let o of e){if(a.visitedRule.has(o))continue;a.visitedRule.add(o);let r=o.repository?js({},t.repository,o.repository):t.repository;Array.isArray(o.patterns)&&Sa(o.patterns,{...t,repository:r},a);let s=o.include;if(!s)continue;let n=tn(s);switch(n.kind){case 0:Ca({...t,selfGrammar:t.baseGrammar},a);break;case 1:Ca(t,a);break;case 2:Ro(n.ruleName,{...t,repository:r},a);break;case 3:case 4:let i=n.scopeName===t.selfGrammar.scopeName?t.selfGrammar:n.scopeName===t.baseGrammar.scopeName?t.baseGrammar:void 0;if(i){let l={baseGrammar:t.baseGrammar,selfGrammar:i,repository:r};n.kind===4?Ro(n.ruleName,l,a):Ca(l,a)}else n.kind===4?a.add(new $u(n.scopeName,n.ruleName)):a.add(new Ot(n.scopeName));break}}}var Ju=class{kind=0},Zu=class{kind=1},Yu=class{constructor(e){this.ruleName=e}kind=2},ed=class{constructor(e){this.scopeName=e}kind=3},td=class{constructor(e,t){this.scopeName=e,this.ruleName=t}kind=4};function tn(e){if(e==="$base")return new Ju;if(e==="$self")return new Zu;let t=e.indexOf("#");if(t===-1)return new ed(e);if(t===0)return new Yu(e.substring(1));{let a=e.substring(0,t),o=e.substring(t+1);return new td(a,o)}}var ad=/\\(\d+)/,Hs=/\\(\d+)/g;var od=-1,an=-2;var qt=class{$location;id;_nameIsCapturing;_name;_contentNameIsCapturing;_contentName;constructor(e,t,a,o){this.$location=e,this.id=t,this._name=a||null,this._nameIsCapturing=xa.hasCaptures(this._name),this._contentName=o||null,this._contentNameIsCapturing=xa.hasCaptures(this._contentName)}get debugName(){let e=this.$location?`${$s(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:xa.replaceCaptures(this._name,e,t)}getContentName(e,t){return!this._contentNameIsCapturing||this._contentName===null?this._contentName:xa.replaceCaptures(this._contentName,e,t)}},rd=class extends qt{retokenizeCapturedWithRuleId;constructor(e,t,a,o,r){super(e,t,a,o),this.retokenizeCapturedWithRuleId=r}dispose(){}collectPatterns(e,t){throw new Error("Not supported!")}compile(e,t){throw new Error("Not supported!")}compileAG(e,t,a,o){throw new Error("Not supported!")}},sd=class extends qt{_match;captures;_cachedCompiledPatterns;constructor(e,t,a,o,r){super(e,t,a,null),this._match=new Ut(o,this.id),this.captures=r,this._cachedCompiledPatterns=null}dispose(){this._cachedCompiledPatterns&&(this._cachedCompiledPatterns.dispose(),this._cachedCompiledPatterns=null)}get debugMatchRegExp(){return`${this._match.source}`}collectPatterns(e,t){t.push(this._match)}compile(e,t){return this._getCachedCompiledPatterns(e).compile(e)}compileAG(e,t,a,o){return this._getCachedCompiledPatterns(e).compileAG(e,a,o)}_getCachedCompiledPatterns(e){return this._cachedCompiledPatterns||(this._cachedCompiledPatterns=new Ht,this.collectPatterns(e,this._cachedCompiledPatterns)),this._cachedCompiledPatterns}},qs=class extends qt{hasMissingPatterns;patterns;_cachedCompiledPatterns;constructor(e,t,a,o,r){super(e,t,a,o),this.patterns=r.patterns,this.hasMissingPatterns=r.hasMissingPatterns,this._cachedCompiledPatterns=null}dispose(){this._cachedCompiledPatterns&&(this._cachedCompiledPatterns.dispose(),this._cachedCompiledPatterns=null)}collectPatterns(e,t){for(let a of this.patterns)e.getRule(a).collectPatterns(e,t)}compile(e,t){return this._getCachedCompiledPatterns(e).compile(e)}compileAG(e,t,a,o){return this._getCachedCompiledPatterns(e).compileAG(e,a,o)}_getCachedCompiledPatterns(e){return this._cachedCompiledPatterns||(this._cachedCompiledPatterns=new Ht,this.collectPatterns(e,this._cachedCompiledPatterns)),this._cachedCompiledPatterns}},Fo=class extends qt{_begin;beginCaptures;_end;endHasBackReferences;endCaptures;applyEndPatternLast;hasMissingPatterns;patterns;_cachedCompiledPatterns;constructor(e,t,a,o,r,s,n,i,l,u){super(e,t,a,o),this._begin=new Ut(r,this.id),this.beginCaptures=s,this._end=new Ut(n||"\uFFFF",-1),this.endHasBackReferences=this._end.hasBackReferences,this.endCaptures=i,this.applyEndPatternLast=l||!1,this.patterns=u.patterns,this.hasMissingPatterns=u.hasMissingPatterns,this._cachedCompiledPatterns=null}dispose(){this._cachedCompiledPatterns&&(this._cachedCompiledPatterns.dispose(),this._cachedCompiledPatterns=null)}get debugBeginRegExp(){return`${this._begin.source}`}get debugEndRegExp(){return`${this._end.source}`}getEndWithResolvedBackReferences(e,t){return this._end.resolveBackReferences(e,t)}collectPatterns(e,t){t.push(this._begin)}compile(e,t){return this._getCachedCompiledPatterns(e,t).compile(e)}compileAG(e,t,a,o){return this._getCachedCompiledPatterns(e,t).compileAG(e,a,o)}_getCachedCompiledPatterns(e,t){if(!this._cachedCompiledPatterns){this._cachedCompiledPatterns=new Ht;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}},ya=class extends qt{_begin;beginCaptures;whileCaptures;_while;whileHasBackReferences;hasMissingPatterns;patterns;_cachedCompiledPatterns;_cachedCompiledWhilePatterns;constructor(e,t,a,o,r,s,n,i,l){super(e,t,a,o),this._begin=new Ut(r,this.id),this.beginCaptures=s,this.whileCaptures=i,this._while=new Ut(n,an),this.whileHasBackReferences=this._while.hasBackReferences,this.patterns=l.patterns,this.hasMissingPatterns=l.hasMissingPatterns,this._cachedCompiledPatterns=null,this._cachedCompiledWhilePatterns=null}dispose(){this._cachedCompiledPatterns&&(this._cachedCompiledPatterns.dispose(),this._cachedCompiledPatterns=null),this._cachedCompiledWhilePatterns&&(this._cachedCompiledWhilePatterns.dispose(),this._cachedCompiledWhilePatterns=null)}get debugBeginRegExp(){return`${this._begin.source}`}get debugWhileRegExp(){return`${this._while.source}`}getWhileWithResolvedBackReferences(e,t){return this._while.resolveBackReferences(e,t)}collectPatterns(e,t){t.push(this._begin)}compile(e,t){return this._getCachedCompiledPatterns(e).compile(e)}compileAG(e,t,a,o){return this._getCachedCompiledPatterns(e).compileAG(e,a,o)}_getCachedCompiledPatterns(e){if(!this._cachedCompiledPatterns){this._cachedCompiledPatterns=new Ht;for(let t of this.patterns)e.getRule(t).collectPatterns(e,this._cachedCompiledPatterns)}return this._cachedCompiledPatterns}compileWhile(e,t){return this._getCachedCompiledWhilePatterns(e,t).compile(e)}compileWhileAG(e,t,a,o){return this._getCachedCompiledWhilePatterns(e,t).compileAG(e,a,o)}_getCachedCompiledWhilePatterns(e,t){return this._cachedCompiledWhilePatterns||(this._cachedCompiledWhilePatterns=new Ht,this._cachedCompiledWhilePatterns.push(this._while.hasBackReferences?this._while.clone():this._while)),this._while.hasBackReferences&&this._cachedCompiledWhilePatterns.setSource(0,t||"\uFFFF"),this._cachedCompiledWhilePatterns}},on=class Ce{static createCaptureRule(t,a,o,r,s){return t.registerRule(n=>new rd(a,n,o,r,s))}static getCompiledRuleId(t,a,o){return t.id||a.registerRule(r=>{if(t.id=r,t.match)return new sd(t.$vscodeTextmateLocation,t.id,t.name,t.match,Ce._compileCaptures(t.captures,a,o));if(typeof t.begin>"u"){t.repository&&(o=js({},o,t.repository));let s=t.patterns;return typeof s>"u"&&t.include&&(s=[{include:t.include}]),new qs(t.$vscodeTextmateLocation,t.id,t.name,t.contentName,Ce._compilePatterns(s,a,o))}return t.while?new ya(t.$vscodeTextmateLocation,t.id,t.name,t.contentName,t.begin,Ce._compileCaptures(t.beginCaptures||t.captures,a,o),t.while,Ce._compileCaptures(t.whileCaptures||t.captures,a,o),Ce._compilePatterns(t.patterns,a,o)):new Fo(t.$vscodeTextmateLocation,t.id,t.name,t.contentName,t.begin,Ce._compileCaptures(t.beginCaptures||t.captures,a,o),t.end,Ce._compileCaptures(t.endCaptures||t.captures,a,o),t.applyEndPatternLast,Ce._compilePatterns(t.patterns,a,o))}),t.id}static _compileCaptures(t,a,o){let r=[];if(t){let s=0;for(let n in t){if(n==="$vscodeTextmateLocation")continue;let i=parseInt(n,10);i>s&&(s=i)}for(let n=0;n<=s;n++)r[n]=null;for(let n in t){if(n==="$vscodeTextmateLocation")continue;let i=parseInt(n,10),l=0;t[n].patterns&&(l=Ce.getCompiledRuleId(t[n],a,o)),r[i]=Ce.createCaptureRule(a,t[n].$vscodeTextmateLocation,t[n].name,t[n].contentName,l)}}return r}static _compilePatterns(t,a,o){let r=[];if(t)for(let s=0,n=t.length;s<n;s++){let i=t[s],l=-1;if(i.include){let u=tn(i.include);switch(u.kind){case 0:case 1:l=Ce.getCompiledRuleId(o[i.include],a,o);break;case 2:let f=o[u.ruleName];f&&(l=Ce.getCompiledRuleId(f,a,o));break;case 3:case 4:let d=u.scopeName,p=u.kind===4?u.ruleName:null,c=a.getExternalGrammar(d,o);if(c)if(p){let m=c.repository[p];m&&(l=Ce.getCompiledRuleId(m,a,c.repository))}else l=Ce.getCompiledRuleId(c.repository.$self,a,c.repository);break}}else l=Ce.getCompiledRuleId(i,a,o);if(l!==-1){let u=a.getRule(l),f=!1;if((u instanceof qs||u instanceof Fo||u instanceof ya)&&u.hasMissingPatterns&&u.patterns.length===0&&(f=!0),f)continue;r.push(l)}}return{patterns:r,hasMissingPatterns:(t?t.length:0)!==r.length}}},Ut=class rn{source;ruleId;hasAnchor;hasBackReferences;_anchorCache;constructor(t,a){if(t&&typeof t=="string"){let o=t.length,r=0,s=[],n=!1;for(let i=0;i<o;i++)if(t.charAt(i)==="\\"&&i+1<o){let u=t.charAt(i+1);u==="z"?(s.push(t.substring(r,i)),s.push("$(?!\\n)(?<!\\n)"),r=i+2):(u==="A"||u==="G")&&(n=!0),i++}this.hasAnchor=n,r===0?this.source=t:(s.push(t.substring(r,o)),this.source=s.join(""))}else this.hasAnchor=!1,this.source=t;this.hasAnchor?this._anchorCache=this._buildAnchorCache():this._anchorCache=null,this.ruleId=a,typeof this.source=="string"?this.hasBackReferences=ad.test(this.source):this.hasBackReferences=!1}clone(){return new rn(this.source,this.ruleId)}setSource(t){this.source!==t&&(this.source=t,this.hasAnchor&&(this._anchorCache=this._buildAnchorCache()))}resolveBackReferences(t,a){if(typeof this.source!="string")throw new Error("This method should only be called if the source is a string");let o=a.map(r=>t.substring(r.start,r.end));return Hs.lastIndex=0,this.source.replace(Hs,(r,s)=>Ks(o[parseInt(s,10)]||""))}_buildAnchorCache(){if(typeof this.source!="string")throw new Error("This method should only be called if the source is a string");let t=[],a=[],o=[],r=[],s,n,i,l;for(s=0,n=this.source.length;s<n;s++)i=this.source.charAt(s),t[s]=i,a[s]=i,o[s]=i,r[s]=i,i==="\\"&&s+1<n&&(l=this.source.charAt(s+1),l==="A"?(t[s+1]="\uFFFF",a[s+1]="\uFFFF",o[s+1]="A",r[s+1]="A"):l==="G"?(t[s+1]="\uFFFF",a[s+1]="G",o[s+1]="\uFFFF",r[s+1]="G"):(t[s+1]=l,a[s+1]=l,o[s+1]=l,r[s+1]=l),s++);return{A0_G0:t.join(""),A0_G1:a.join(""),A1_G0:o.join(""),A1_G1:r.join("")}}resolveAnchors(t,a){return!this.hasAnchor||!this._anchorCache||typeof this.source!="string"?this.source:t?a?this._anchorCache.A1_G1:this._anchorCache.A1_G0:a?this._anchorCache.A0_G1:this._anchorCache.A0_G0}},Ht=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 Gs(e,t,this._items.map(a=>a.ruleId))}return this._cached}compileAG(e,t,a){return this._hasAnchors?t?a?(this._anchorCache.A1_G1||(this._anchorCache.A1_G1=this._resolveAnchors(e,t,a)),this._anchorCache.A1_G1):(this._anchorCache.A1_G0||(this._anchorCache.A1_G0=this._resolveAnchors(e,t,a)),this._anchorCache.A1_G0):a?(this._anchorCache.A0_G1||(this._anchorCache.A0_G1=this._resolveAnchors(e,t,a)),this._anchorCache.A0_G1):(this._anchorCache.A0_G0||(this._anchorCache.A0_G0=this._resolveAnchors(e,t,a)),this._anchorCache.A0_G0):this.compile(e)}_resolveAnchors(e,t,a){let o=this._items.map(r=>r.resolveAnchors(t,a));return new Gs(e,o,this._items.map(r=>r.ruleId))}},Gs=class{constructor(e,t,a){this.regExps=t,this.rules=a,this.scanner=e.createOnigScanner(t)}scanner;dispose(){typeof this.scanner.dispose=="function"&&this.scanner.dispose()}toString(){let e=[];for(let t=0,a=this.rules.length;t<a;t++)e.push(" - "+this.rules[t]+": "+this.regExps[t]);return e.join(`
|
|
3
|
-
`)}findNextMatchSync(e,t,a){let o=this.scanner.findNextMatchSync(e,t,a);return o?{ruleId:this.rules[o.index],captureIndices:o.captureIndices}:null}},
|
|
4
|
-
`;let s=this.createOnigString(e),n=s.content.length,i=new xd(a,e,this._tokenTypeMatchers,this.balancedBracketSelectors),l=nn(this,s,r,0,t,i,!0,o);return en(s),{lineLength:n,lineTokens:i,ruleStack:l.stack,stoppedEarly:l.stoppedEarly}}};function Vs(e,t){return e=Eu(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 _t=class Ee{constructor(t,a,o){this.parent=t,this.scopePath=a,this.tokenAttributes=o}static fromExtension(t,a){let o=t,r=t?.scopePath??null;for(let s of a)r=Po.push(r,s.scopeNames),o=new Ee(o,r,s.encodedTokenAttributes);return o}static createRoot(t,a){return new Ee(null,new Po(null,t),a)}static createRootAndLookUpScopeName(t,a,o){let r=o.getMetadataForScope(t),s=new Po(null,t),n=o.themeProvider.themeMatch(s),i=Ee.mergeAttributes(a,r,n);return new Ee(null,s,i)}get scopeName(){return this.scopePath.scopeName}toString(){return this.getScopeNames().join(" ")}equals(t){return Ee.equals(this,t)}static equals(t,a){do{if(t===a||!t&&!a)return!0;if(!t||!a||t.scopeName!==a.scopeName||t.tokenAttributes!==a.tokenAttributes)return!1;t=t.parent,a=a.parent}while(!0)}static mergeAttributes(t,a,o){let r=-1,s=0,n=0;return o!==null&&(r=o.fontStyle,s=o.foregroundId,n=o.backgroundId),tt.set(t,a.languageId,a.tokenType,null,r,s,n)}pushAttributed(t,a){if(t===null)return this;if(t.indexOf(" ")===-1)return Ee._pushAttributed(this,t,a);let o=t.split(/ /g),r=this;for(let s of o)r=Ee._pushAttributed(r,s,a);return r}static _pushAttributed(t,a,o){let r=o.getMetadataForScope(a),s=t.scopePath.push(a),n=o.themeProvider.themeMatch(s),i=Ee.mergeAttributes(t.tokenAttributes,r,n);return new Ee(t,s,i)}getScopeNames(){return this.scopePath.getSegments()}getExtensionIfDefined(t){let a=[],o=this;for(;o&&o!==t;)a.push({encodedTokenAttributes:o.tokenAttributes,scopeNames:o.scopePath.getExtensionIfDefined(o.parent?.scopePath??null)}),o=o.parent;return o===t?a.reverse():void 0}},Do=class et{constructor(t,a,o,r,s,n,i,l){this.parent=t,this.ruleId=a,this.beginRuleCapturedEOL=s,this.endRule=n,this.nameScopesList=i,this.contentNameScopesList=l,this.depth=this.parent?this.parent.depth+1:1,this._enterPos=o,this._anchorPos=r}_stackElementBrand=void 0;static NULL=new et(null,0,0,0,!1,null,null,null);_enterPos;_anchorPos;depth;equals(t){return t===null?!1:et._equals(this,t)}static _equals(t,a){return t===a?!0:this._structuralEquals(t,a)?_t.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(){et._reset(this)}pop(){return this.parent}safePop(){return this.parent?this.parent:this}push(t,a,o,r,s,n,i){return new et(this,t,a,o,r,s,n,i)}getEnterPos(){return this._enterPos}getAnchorPos(){return this._anchorPos}getRule(t){return t.getRule(this.ruleId)}toString(){let t=[];return this._writeString(t,0),"["+t.join(",")+"]"}_writeString(t,a){return this.parent&&(a=this.parent._writeString(t,a)),t[a++]=`(${this.ruleId}, ${this.nameScopesList?.toString()}, ${this.contentNameScopesList?.toString()})`,a}withContentNameScopesList(t){return this.contentNameScopesList===t?this:this.parent.push(this.ruleId,this._enterPos,this._anchorPos,this.beginRuleCapturedEOL,this.endRule,this.nameScopesList,t)}withEndRule(t){return this.endRule===t?this:new et(this.parent,this.ruleId,this._enterPos,this._anchorPos,this.beginRuleCapturedEOL,t,this.nameScopesList,this.contentNameScopesList)}hasSameRuleAs(t){let a=this;for(;a&&a._enterPos===t._enterPos;){if(a.ruleId===t.ruleId)return!0;a=a.parent}return!1}toStateStackFrame(){return{ruleId:this.ruleId,beginRuleCapturedEOL:this.beginRuleCapturedEOL,endRule:this.endRule,nameScopesList:this.nameScopesList?.getExtensionIfDefined(this.parent?.nameScopesList??null)??[],contentNameScopesList:this.contentNameScopesList?.getExtensionIfDefined(this.nameScopesList)??[]}}static pushFrame(t,a){let o=_t.fromExtension(t?.nameScopesList??null,a.nameScopesList);return new et(t,a.ruleId,a.enterPos??-1,a.anchorPos??-1,a.beginRuleCapturedEOL,a.endRule,o,_t.fromExtension(o,a.contentNameScopesList))}},wd=class{balancedBracketScopes;unbalancedBracketScopes;allowAny=!1;constructor(e,t){this.balancedBracketScopes=e.flatMap(a=>a==="*"?(this.allowAny=!0,[]):Ia(a,ba).map(o=>o.matcher)),this.unbalancedBracketScopes=t.flatMap(a=>Ia(a,ba).map(o=>o.matcher))}get matchesAlways(){return this.allowAny&&this.unbalancedBracketScopes.length===0}get matchesNever(){return this.balancedBracketScopes.length===0&&!this.allowAny}match(e){for(let t of this.unbalancedBracketScopes)if(t(e))return!1;for(let t of this.balancedBracketScopes)if(t(e))return!0;return this.allowAny}},xd=class{constructor(e,t,a,o){this.balancedBracketSelectors=o,this._emitBinaryTokens=e,this._tokenTypeOverrides=a,this._lineText=null,this._tokens=[],this._binaryTokens=[],this._lastTokenEndIndex=0}_emitBinaryTokens;_lineText;_tokens;_binaryTokens;_lastTokenEndIndex;_tokenTypeOverrides;produce(e,t){this.produceFromScopes(e.contentNameScopesList,t)}produceFromScopes(e,t){if(this._lastTokenEndIndex>=t)return;if(this._emitBinaryTokens){let o=e?.tokenAttributes??0,r=!1;if(this.balancedBracketSelectors?.matchesAlways&&(r=!0),this._tokenTypeOverrides.length>0||this.balancedBracketSelectors&&!this.balancedBracketSelectors.matchesAlways&&!this.balancedBracketSelectors.matchesNever){let s=e?.getScopeNames()??[];for(let n of this._tokenTypeOverrides)n.matcher(s)&&(o=tt.set(o,0,n.type,null,-1,0,0));this.balancedBracketSelectors&&(r=this.balancedBracketSelectors.match(s))}if(r&&(o=tt.set(o,0,8,r,-1,0,0)),this._binaryTokens.length>0&&this._binaryTokens[this._binaryTokens.length-1]===o){this._lastTokenEndIndex=t;return}this._binaryTokens.push(this._lastTokenEndIndex),this._binaryTokens.push(o),this._lastTokenEndIndex=t;return}let a=e?.getScopeNames()??[];this._tokens.push({startIndex:this._lastTokenEndIndex,endIndex:t,scopes:a}),this._lastTokenEndIndex=t}getResult(e,t){return this._tokens.length>0&&this._tokens[this._tokens.length-1].startIndex===t-1&&this._tokens.pop(),this._tokens.length===0&&(this._lastTokenEndIndex=-1,this.produce(e,t),this._tokens[this._tokens.length-1].startIndex=0),this._tokens}getBinaryResult(e,t){this._binaryTokens.length>0&&this._binaryTokens[this._binaryTokens.length-2]===t-1&&(this._binaryTokens.pop(),this._binaryTokens.pop()),this._binaryTokens.length===0&&(this._lastTokenEndIndex=-1,this.produce(e,t),this._binaryTokens[this._binaryTokens.length-2]=0);let a=new Uint32Array(this._binaryTokens.length);for(let o=0,r=this._binaryTokens.length;o<r;o++)a[o]=this._binaryTokens[o];return a}},Ld=class{constructor(e,t){this._onigLib=t,this._theme=e}_grammars=new Map;_rawGrammars=new Map;_injectionGrammars=new Map;_theme;dispose(){for(let e of this._grammars.values())e.dispose()}setTheme(e){this._theme=e}getColorMap(){return this._theme.getColorMap()}addGrammar(e,t){this._rawGrammars.set(e.scopeName,e),t&&this._injectionGrammars.set(e.scopeName,t)}lookup(e){return this._rawGrammars.get(e)}injections(e){return this._injectionGrammars.get(e)}getDefaults(){return this._theme.getDefaults()}themeMatch(e){return this._theme.match(e)}grammarForScopeName(e,t,a,o,r){if(!this._grammars.has(e)){let s=this._rawGrammars.get(e);if(!s)return null;this._grammars.set(e,md(e,s,t,a,o,r,this,this._onigLib))}return this._grammars.get(e)}},dn=class{_options;_syncRegistry;_ensureGrammarCache;constructor(e){this._options=e,this._syncRegistry=new Ld(Nt.createFromRawTheme(e.theme,e.colorMap),e.onigLib),this._ensureGrammarCache=new Map}dispose(){this._syncRegistry.dispose()}setTheme(e,t){this._syncRegistry.setTheme(Nt.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 wd(a.balancedBracketSelectors||[],a.unbalancedBracketSelectors||[]))}loadGrammar(e){return this._loadGrammar(e,0,null,null,null)}_loadGrammar(e,t,a,o,r){let s=new Qu(this._syncRegistry,e);for(;s.Q.length>0;)s.Q.map(n=>this._loadSingleGrammar(n.scopeName)),s.processQueue();return this._grammarForScopeName(e,t,a,o,r)}_loadSingleGrammar(e){this._ensureGrammarCache.has(e)||(this._doLoadSingleGrammar(e),this._ensureGrammarCache.set(e,!0))}_doLoadSingleGrammar(e){let t=this._options.loadGrammar(e);if(t){let a=typeof this._options.getInjections=="function"?this._options.getInjections(e):void 0;this._syncRegistry.addGrammar(t,a)}}addGrammar(e,t=[],a=0,o=null){return this._syncRegistry.addGrammar(e,t),this._grammarForScopeName(e.scopeName,a,o)}_grammarForScopeName(e,t=0,a=null,o=null,r=null){return this._syncRegistry.grammarForScopeName(e,t,a,o,r)}},ka=Do.NULL;var Cd=/["&'<>`]/g,Id=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,Sd=/[\x01-\t\v\f\x0E-\x1F\x7F\x81\x8D\x8F\x90\x9D\xA0-\uFFFF]/g,yd=/[|\\{}()[\]^$+*?.]/g,fn=new WeakMap;function cn(e,t){if(e=e.replace(t.subset?bd(t.subset):Cd,o),t.subset||t.escapeOnly)return e;return e.replace(Id,a).replace(Sd,o);function a(r,s,n){return t.format((r.charCodeAt(0)-55296)*1024+r.charCodeAt(1)-56320+65536,n.charCodeAt(s+2),t)}function o(r,s,n){return t.format(r.charCodeAt(0),n.charCodeAt(s+1),t)}}function bd(e){let t=fn.get(e);return t||(t=kd(e),fn.set(e,t)),t}function kd(e){let t=[],a=-1;for(;++a<e.length;)t.push(e[a].replace(yd,"\\$&"));return new RegExp("(?:"+t.join("|")+")","g")}var Td=/[\dA-Fa-f]/;function pn(e,t,a){let o="&#x"+e.toString(16).toUpperCase();return a&&t&&!Td.test(String.fromCharCode(t))?o:o+";"}var Pd=/\d/;function mn(e,t,a){let o="&#"+String(e);return a&&t&&!Pd.test(String.fromCharCode(t))?o:o+";"}var hn=["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 Ta={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 gn=["cent","copy","divide","gt","lt","not","para","times"];var wn={}.hasOwnProperty,_o={},Pa;for(Pa in Ta)wn.call(Ta,Pa)&&(_o[Ta[Pa]]=Pa);var Ad=/[^\dA-Za-z]/;function xn(e,t,a,o){let r=String.fromCharCode(e);if(wn.call(_o,r)){let s=_o[r],n="&"+s;return a&&hn.includes(s)&&!gn.includes(s)&&(!o||t&&t!==61&&Ad.test(String.fromCharCode(t)))?n:n+";"}return""}function Ln(e,t,a){let o=pn(e,t,a.omitOptionalSemicolons),r;if((a.useNamedReferences||a.useShortestReferences)&&(r=xn(e,t,a.omitOptionalSemicolons,a.attribute)),(a.useShortestReferences||!r)&&a.useShortestReferences){let s=mn(e,t,a.omitOptionalSemicolons);s.length<o.length&&(o=s)}return r&&(!a.useShortestReferences||r.length<o.length)?r:o}function Ue(e,t){return cn(e,Object.assign({format:Ln},t))}var vd=/^>|^->|<!--|-->|--!>|<!-$/g,Md=[">"],Rd=["<",">"];function Cn(e,t,a,o){return o.settings.bogusComments?"<?"+Ue(e.value,Object.assign({},o.settings.characterReferences,{subset:Md}))+">":"<!--"+e.value.replace(vd,r)+"-->";function r(s){return Ue(s,Object.assign({},o.settings.characterReferences,{subset:Rd}))}}function In(e,t,a,o){return"<!"+(o.settings.upperDoctype?"DOCTYPE":"doctype")+(o.settings.tightDoctype?"":" ")+"html>"}var te=Sn(1),No=Sn(-1),Fd=[];function Sn(e){return t;function t(a,o,r){let s=a?a.children:Fd,n=(o||0)+e,i=s[n];if(!r)for(;i&&ut(i);)n+=e,i=s[n];return i}}var Bd={}.hasOwnProperty;function Aa(e){return t;function t(a,o,r){return Bd.call(e,a.tagName)&&e[a.tagName](a,o,r)}}var Gt=Aa({body:Ed,caption:Oo,colgroup:Oo,dd:Ud,dt:Od,head:Oo,html:Dd,li:Nd,optgroup:Hd,option:qd,p:_d,rp:yn,rt:yn,tbody:Wd,td:bn,tfoot:zd,th:bn,thead:Gd,tr:Vd});function Oo(e,t,a){let o=te(a,t,!0);return!o||o.type!=="comment"&&!(o.type==="text"&&ut(o.value.charAt(0)))}function Dd(e,t,a){let o=te(a,t);return!o||o.type!=="comment"}function Ed(e,t,a){let o=te(a,t);return!o||o.type!=="comment"}function _d(e,t,a){let o=te(a,t);return o?o.type==="element"&&(o.tagName==="address"||o.tagName==="article"||o.tagName==="aside"||o.tagName==="blockquote"||o.tagName==="details"||o.tagName==="div"||o.tagName==="dl"||o.tagName==="fieldset"||o.tagName==="figcaption"||o.tagName==="figure"||o.tagName==="footer"||o.tagName==="form"||o.tagName==="h1"||o.tagName==="h2"||o.tagName==="h3"||o.tagName==="h4"||o.tagName==="h5"||o.tagName==="h6"||o.tagName==="header"||o.tagName==="hgroup"||o.tagName==="hr"||o.tagName==="main"||o.tagName==="menu"||o.tagName==="nav"||o.tagName==="ol"||o.tagName==="p"||o.tagName==="pre"||o.tagName==="section"||o.tagName==="table"||o.tagName==="ul"):!a||!(a.type==="element"&&(a.tagName==="a"||a.tagName==="audio"||a.tagName==="del"||a.tagName==="ins"||a.tagName==="map"||a.tagName==="noscript"||a.tagName==="video"))}function Nd(e,t,a){let o=te(a,t);return!o||o.type==="element"&&o.tagName==="li"}function Od(e,t,a){let o=te(a,t);return!!(o&&o.type==="element"&&(o.tagName==="dt"||o.tagName==="dd"))}function Ud(e,t,a){let o=te(a,t);return!o||o.type==="element"&&(o.tagName==="dt"||o.tagName==="dd")}function yn(e,t,a){let o=te(a,t);return!o||o.type==="element"&&(o.tagName==="rp"||o.tagName==="rt")}function Hd(e,t,a){let o=te(a,t);return!o||o.type==="element"&&o.tagName==="optgroup"}function qd(e,t,a){let o=te(a,t);return!o||o.type==="element"&&(o.tagName==="option"||o.tagName==="optgroup")}function Gd(e,t,a){let o=te(a,t);return!!(o&&o.type==="element"&&(o.tagName==="tbody"||o.tagName==="tfoot"))}function Wd(e,t,a){let o=te(a,t);return!o||o.type==="element"&&(o.tagName==="tbody"||o.tagName==="tfoot")}function zd(e,t,a){return!te(a,t)}function Vd(e,t,a){let o=te(a,t);return!o||o.type==="element"&&o.tagName==="tr"}function bn(e,t,a){let o=te(a,t);return!o||o.type==="element"&&(o.tagName==="td"||o.tagName==="th")}var kn=Aa({body:Xd,colgroup:Qd,head:$d,html:jd,tbody:Kd});function jd(e){let t=te(e,-1);return!t||t.type!=="comment"}function $d(e){let t=new Set;for(let o of e.children)if(o.type==="element"&&(o.tagName==="base"||o.tagName==="title")){if(t.has(o.tagName))return!1;t.add(o.tagName)}let a=e.children[0];return!a||a.type==="element"}function Xd(e){let t=te(e,-1,!0);return!t||t.type!=="comment"&&!(t.type==="text"&&ut(t.value.charAt(0)))&&!(t.type==="element"&&(t.tagName==="meta"||t.tagName==="link"||t.tagName==="script"||t.tagName==="style"||t.tagName==="template"))}function Qd(e,t,a){let o=No(a,t),r=te(e,-1,!0);return a&&o&&o.type==="element"&&o.tagName==="colgroup"&&Gt(o,a.children.indexOf(o),a)?!1:!!(r&&r.type==="element"&&r.tagName==="col")}function Kd(e,t,a){let o=No(a,t),r=te(e,-1);return a&&o&&o.type==="element"&&(o.tagName==="thead"||o.tagName==="tbody")&&Gt(o,a.children.indexOf(o),a)?!1:!!(r&&r.type==="element"&&r.tagName==="tr")}var va={name:[[`
|
|
2
|
+
import{a as Nr,b as Or,c as Hr,d as it,e as lt,f as ra,g as Ur,h as qr,i as Gr,j as Wr,k as sa,l as zr,m as mo,n as Vr,o as jr,p as ut,u as It}from"../chunk-5JBHQYU5.js";import"../chunk-V3ZDECK5.js";import{forwardRef as hm,useCallback as Ar,useEffect as gm,useImperativeHandle as wm,useRef as Yi,useState as el}from"react";import{forwardRef as Sl,createElement as yl}from"react";var na=(...e)=>e.filter((t,a,o)=>!!t&&t.trim()!==""&&o.indexOf(t)===a).join(" ").trim();var $r=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();var Xr=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(t,a,o)=>o?o.toUpperCase():a.toLowerCase());var ho=e=>{let t=Xr(e);return t.charAt(0).toUpperCase()+t.slice(1)};import{forwardRef as Il,createElement as Jr}from"react";var Qr={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 Kr=e=>{for(let t in e)if(t.startsWith("aria-")||t==="role"||t==="title")return!0;return!1};var Zr=Il(({color:e="currentColor",size:t=24,strokeWidth:a=2,absoluteStrokeWidth:o,className:r="",children:s,iconNode:n,...i},l)=>Jr("svg",{ref:l,...Qr,width:t,height:t,stroke:e,strokeWidth:o?Number(a)*24/Number(t):a,className:na("lucide",r),...!s&&!Kr(i)&&{"aria-hidden":"true"},...i},[...n.map(([u,f])=>Jr(u,f)),...Array.isArray(s)?s:[s]]));var j=(e,t)=>{let a=Sl(({className:o,...r},s)=>yl(Zr,{ref:s,iconNode:t,className:na(`lucide-${$r(ho(e))}`,`lucide-${e}`,o),...r}));return a.displayName=ho(e),a};var bl=[["path",{d:"M12 5v14",key:"s699le"}],["path",{d:"m19 12-7 7-7-7",key:"1idqje"}]],Ke=j("arrow-down",bl);var kl=[["path",{d:"m5 12 7-7 7 7",key:"hav0vg"}],["path",{d:"M12 19V5",key:"x0mq9r"}]],St=j("arrow-up",kl);var Tl=[["path",{d:"M8 3H7a2 2 0 0 0-2 2v5a2 2 0 0 1-2 2 2 2 0 0 1 2 2v5c0 1.1.9 2 2 2h1",key:"ezmyqa"}],["path",{d:"M16 21h1a2 2 0 0 0 2-2v-5c0-1.1.9-2 2-2a2 2 0 0 1-2-2V5a2 2 0 0 0-2-2h-1",key:"e1hn23"}]],He=j("braces",Tl);var Pl=[["path",{d:"M12 18V5",key:"adv99a"}],["path",{d:"M15 13a4.17 4.17 0 0 1-3-4 4.17 4.17 0 0 1-3 4",key:"1e3is1"}],["path",{d:"M17.598 6.5A3 3 0 1 0 12 5a3 3 0 1 0-5.598 1.5",key:"1gqd8o"}],["path",{d:"M17.997 5.125a4 4 0 0 1 2.526 5.77",key:"iwvgf7"}],["path",{d:"M18 18a4 4 0 0 0 2-7.464",key:"efp6ie"}],["path",{d:"M19.967 17.483A4 4 0 1 1 12 18a4 4 0 1 1-7.967-.517",key:"1gq6am"}],["path",{d:"M6 18a4 4 0 0 1-2-7.464",key:"k1g0md"}],["path",{d:"M6.003 5.125a4 4 0 0 0-2.526 5.77",key:"q97ue3"}]],yt=j("brain",Pl);var Al=[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]],bt=j("check",Al);var vl=[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]],Je=j("chevron-down",vl);var Ml=[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]],kt=j("chevron-right",Ml);var Rl=[["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"}]],Tt=j("clipboard-copy",Rl);var Fl=[["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"}]],Pt=j("file",Fl);var Bl=[["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"}]],At=j("loader",Bl);var Dl=[["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"}]],vt=j("paperclip",Dl);var El=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}]],Mt=j("square",El);var _l=[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]],Ze=j("x",_l);var Nl=[["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"}]],Rt=j("zap",Nl);import{useCallback as eu}from"react";import{useCallback as ze,useMemo as Ol,useRef as Hl,useState as go}from"react";var Ul={damping:.7,stiffness:.05,mass:1.25},ql=70,Gl=1e3/60,Wl=350,ia=!1;globalThis.document?.addEventListener("mousedown",()=>{ia=!0});globalThis.document?.addEventListener("mouseup",()=>{ia=!1});globalThis.document?.addEventListener("click",()=>{ia=!1});var es=(e={})=>{let[t,a]=go(!1),[o,r]=go(e.initial!==!1),[s,n]=go(!1),i=Hl(null);i.current=e;let l=ze(()=>{if(!ia)return!1;let g=window.getSelection();if(!g||!g.rangeCount)return!1;let h=g.getRangeAt(0);return h.commonAncestorContainer.contains(x.current)||x.current?.contains(h.commonAncestorContainer)},[]),u=ze(g=>{d.isAtBottom=g,r(g)},[]),f=ze(g=>{d.escapedFromLock=g,a(g)},[]),d=Ol(()=>{let g;return{escapedFromLock:t,isAtBottom:o,resizeDifference:0,accumulated:0,velocity:0,listeners:new Set,get scrollTop(){return x.current?.scrollTop??0},set scrollTop(h){x.current&&(x.current.scrollTop=h,d.ignoreScrollToTop=x.current.scrollTop)},get targetScrollTop(){return!x.current||!w.current?0:x.current.scrollHeight-1-x.current.clientHeight},get calculatedTargetScrollTop(){if(!x.current||!w.current)return 0;let{targetScrollTop:h}=this;if(!e.targetScrollTop)return h;if(g?.targetScrollTop===h)return g.calculatedScrollTop;let I=Math.max(Math.min(e.targetScrollTop(h,{scrollElement:x.current,contentElement:w.current}),h),0);return g={targetScrollTop:h,calculatedScrollTop:I},requestAnimationFrame(()=>{g=void 0}),I},get scrollDifference(){return this.calculatedTargetScrollTop-this.scrollTop},get isNearBottom(){return this.scrollDifference<=ql}}},[]),p=ze((g={})=>{typeof g=="string"&&(g={animation:g}),g.preserveScrollPosition||u(!0);let h=Date.now()+(Number(g.wait)||0),I=xo(i.current,g.animation),{ignoreEscapes:T=!1}=g,k,y=d.calculatedTargetScrollTop;g.duration instanceof Promise?g.duration.finally(()=>{k=Date.now()}):k=h+(g.duration??0);let M=async()=>{let E=new Promise(requestAnimationFrame).then(()=>{if(!d.isAtBottom)return d.animation=void 0,!1;let{scrollTop:F}=d,b=performance.now(),S=(b-(d.lastTick??b))/Gl;if(d.animation||(d.animation={behavior:I,promise:E,ignoreEscapes:T}),d.animation.behavior===I&&(d.lastTick=b),l()||h>Date.now())return M();if(F<Math.min(y,d.calculatedTargetScrollTop)){if(d.animation?.behavior===I){if(I==="instant")return d.scrollTop=d.calculatedTargetScrollTop,M();d.velocity=(I.damping*d.velocity+I.stiffness*d.scrollDifference)/I.mass,d.accumulated+=d.velocity*S,d.scrollTop+=d.accumulated,d.scrollTop!==F&&(d.accumulated=0)}return M()}return k>Date.now()?(y=d.calculatedTargetScrollTop,M()):(d.animation=void 0,d.scrollTop<d.calculatedTargetScrollTop?p({animation:xo(i.current,i.current.resize),ignoreEscapes:T,duration:Math.max(0,k-Date.now())||void 0}):d.isAtBottom)});return E.then(F=>(requestAnimationFrame(()=>{d.animation||(d.lastTick=void 0,d.velocity=0)}),F))};return g.wait!==!0&&(d.animation=void 0),d.animation?.behavior===I?d.animation.promise:M()},[u,l,d]),c=ze(()=>{f(!0),u(!1)},[f,u]),m=ze(({target:g})=>{if(g!==x.current)return;let{scrollTop:h,ignoreScrollToTop:I}=d,{lastScrollTop:T=h}=d;d.lastScrollTop=h,d.ignoreScrollToTop=void 0,I&&I>h&&(T=I),n(d.isNearBottom),setTimeout(()=>{if(d.resizeDifference||h===I)return;if(l()){f(!0),u(!1);return}let k=h>T,y=h<T;if(d.animation?.ignoreEscapes){d.scrollTop=T;return}y&&(f(!0),u(!1)),k&&f(!1),!d.escapedFromLock&&d.isNearBottom&&u(!0)},1)},[f,u,l,d]),L=ze(({target:g,deltaY:h})=>{let I=g;for(;!["scroll","auto"].includes(getComputedStyle(I).overflow);){if(!I.parentElement)return;I=I.parentElement}I===x.current&&h<0&&x.current.scrollHeight>x.current.clientHeight&&!d.animation?.ignoreEscapes&&(f(!0),u(!1))},[f,u,d]),x=Yr(g=>{x.current?.removeEventListener("scroll",m),x.current?.removeEventListener("wheel",L),g?.addEventListener("scroll",m,{passive:!0}),g?.addEventListener("wheel",L,{passive:!0})},[]),w=Yr(g=>{if(d.resizeObserver?.disconnect(),!g)return;let h;d.resizeObserver=new ResizeObserver(([I])=>{let{height:T}=I.contentRect,k=T-(h??T);if(d.resizeDifference=k,d.scrollTop>d.targetScrollTop&&(d.scrollTop=d.targetScrollTop),n(d.isNearBottom),k>=0){let y=xo(i.current,h?i.current.resize:i.current.initial);p({animation:y,wait:!0,preserveScrollPosition:!0,duration:y==="instant"?void 0:Wl})}else d.isNearBottom&&(f(!1),u(!0));h=T,requestAnimationFrame(()=>{setTimeout(()=>{d.resizeDifference===k&&(d.resizeDifference=0)},1)})}),d.resizeObserver?.observe(g)},[]);return{contentRef:w,scrollRef:x,scrollToBottom:p,stopScroll:c,isAtBottom:o||s,isNearBottom:s,escapedFromLock:t,state:d}};function Yr(e,t){let a=ze(o=>(a.current=o,e(o)),t);return a}var wo=new Map;function xo(...e){let t={...Ul},a=!1;for(let r of e){if(r==="instant"){a=!0;continue}typeof r=="object"&&(a=!1,t.damping=r.damping??t.damping,t.stiffness=r.stiffness??t.stiffness,t.mass=r.mass??t.mass)}let o=JSON.stringify(t);return wo.has(o)||wo.set(o,Object.freeze(t)),a?"instant":wo.get(o)}import*as Ye from"react";import{createContext as zl,useContext as Vl,useEffect as jl,useImperativeHandle as $l,useLayoutEffect as Xl,useMemo as Ql,useRef as Kl}from"react";var ts=zl(null),Jl=typeof window<"u"?Xl:jl;function Ft({instance:e,children:t,resize:a,initial:o,mass:r,damping:s,stiffness:n,targetScrollTop:i,contextRef:l,...u}){let f=Kl(null),d=Ye.useCallback((T,k)=>(I?.targetScrollTop??i)?.(T,k)??T,[i]),p=es({mass:r,damping:s,stiffness:n,resize:a,initial:o,targetScrollTop:d}),{scrollRef:c,contentRef:m,scrollToBottom:L,stopScroll:x,isAtBottom:w,escapedFromLock:g,state:h}=e??p,I=Ql(()=>({scrollToBottom:L,stopScroll:x,scrollRef:c,isAtBottom:w,escapedFromLock:g,contentRef:m,state:h,get targetScrollTop(){return f.current},set targetScrollTop(T){f.current=T}}),[L,w,m,c,x,g,h]);return $l(l,()=>I,[I]),Jl(()=>{c.current&&getComputedStyle(c.current).overflow==="visible"&&(c.current.style.overflow="auto")},[]),Ye.createElement(ts.Provider,{value:I},Ye.createElement("div",{...u},typeof t=="function"?t(I):t))}(function(e){function t({children:a,scrollClassName:o,...r}){let s=Lo();return Ye.createElement("div",{ref:s.scrollRef,style:{height:"100%",width:"100%",scrollbarGutter:"stable both-edges"},className:o},Ye.createElement("div",{...r,ref:s.contentRef},typeof a=="function"?a(s):a))}e.Content=t})(Ft||(Ft={}));function Lo(){let e=Vl(ts);if(!e)throw new Error("use-stick-to-bottom component context must be used within a StickToBottom component");return e}var Zl=Or({prefix:"ww"});function A(...e){return Zl(Nr(e))}import{jsx as Yl}from"react/jsx-runtime";var Pe=({className:e,variant:t="default",size:a="default",type:o="button",...r})=>Yl("button",{type:o,className:A("ww:inline-flex ww:cursor-pointer ww:items-center ww:justify-center ww:rounded-md ww:font-medium ww:transition-colors ww:disabled:pointer-events-none ww:disabled:opacity-50",t==="default"&&"ww:bg-primary ww:text-primary-foreground ww:hover:bg-primary/90",t==="outline"&&"ww:border ww:border-border ww:bg-background ww:hover:bg-accent ww:hover:text-accent-foreground",t==="ghost"&&"ww:hover:bg-accent ww:hover:text-accent-foreground",a==="default"&&"ww:h-9 ww:px-4 ww:py-2 ww:text-sm",a==="sm"&&"ww:h-8 ww:px-3 ww:text-xs",a==="icon"&&"ww:size-9 ww:!rounded-full",a==="icon-sm"&&"ww:size-7 ww:!rounded-full",e),...r});import{jsx as la}from"react/jsx-runtime";var as=({className:e,...t})=>la(Ft,{className:A("ww:relative ww:flex-1 ww:overflow-y-hidden",e),initial:"smooth",resize:"smooth",role:"log",...t}),os=({className:e,...t})=>la(Ft.Content,{className:A("ww:flex ww:flex-col ww:gap-6 ww:px-4 ww:py-6 ww:mx-auto ww:w-full ww:max-w-3xl",e),...t}),rs=({className:e,...t})=>{let{isAtBottom:a,scrollToBottom:o}=Lo(),r=eu(()=>{o()},[o]);return!a&&la(Pe,{className:A("ww:absolute ww:bottom-4 ww:left-[50%] ww:translate-x-[-50%] ww:rounded-full",e),onClick:r,size:"icon",variant:"outline",...t,children:la(Ke,{className:"ww:size-4"})})};import ns from"crypto";var ss="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";var tu=128,et,dt,au=e=>{!et||et.length<e?(et=Buffer.allocUnsafe(e*tu),ns.randomFillSync(et),dt=0):dt+e>et.length&&(ns.randomFillSync(et),dt=0),dt+=e};var Bt=(e=21)=>{au(e|=0);let t="";for(let a=dt-e;a<dt;a++)t+=ss[et[a]&63];return t};import{createContext as du,useCallback as Ue,useContext as fu,useEffect as bo,useMemo as cu,useRef as ko,useState as cs}from"react";import{createContext as ou,useContext as ru,useEffect as su,useMemo as nu,useState as ds}from"react";var is=["en","fr","es"];function ft(e){return is.includes(e)}function Co(e){if(e&&ft(e))return e;if(e){let a=e.split("-")[0]?.toLowerCase();if(a&&ft(a))return a}let t=[];if(typeof navigator<"u"&&(navigator.language&&t.push(navigator.language),navigator.languages&&t.push(...navigator.languages)),typeof document<"u"){let a=document.documentElement.getAttribute("lang");a&&t.push(a)}for(let a of t){let o=a.toLowerCase();if(ft(o))return o;let r=o.split("-")[0];if(r&&ft(r))return r}return"en"}var ua={promptInput:{placeholder:"What would you like to know?",uploadFiles:"Upload files",stop:"Stop",submit:"Submit",removeAttachments:"Remove all attachments"},workingIndicator:{default:"On it\u2026"},reasoning:{thinking:"Thinking\u2026",thoughtBrief:"Thought for a few seconds",thoughtForSeconds:e=>`Thought for ${e} second${e===1?"":"s"}`},tool:{copy:"Copy",copied:"Copied",request:"Request",response:"Response",error:"Error"},attachments:{attachmentFallback:"attachment",fileFallback:"file"},threadMenu:{newChat:"New chat",threadHistory:"Thread history",deleteThread:"Delete thread",noPreviousChats:"No previous chats yet.",hiddenThreads:e=>`${e} older thread${e===1?"":"s"} hidden`},chatQueue:{attachmentFallback:"(attachment)",removeFromQueue:"Remove from queue",queued:e=>`${e} queued`},poweredBy:{label:"AI agent powered by"},aiDisclaimer:{default:"can make mistakes"},exportSession:{saving:"saving...",saved:"saved",error:"error",export:"export",tooltip:"Save scenario to WaniWani"},widgetErrorBoundary:{failedToLoad:"Widget failed to load",retry:"Retry"},launcher:{prompt:"Ask anything\u2026",open:"Open chat",close:"Close chat",minimize:"Minimize"}};var ls={promptInput:{placeholder:"\xBFQu\xE9 te gustar\xEDa saber?",uploadFiles:"Subir archivos",stop:"Detener",submit:"Enviar",removeAttachments:"Eliminar todos los archivos adjuntos"},workingIndicator:{default:"Un momento\u2026"},reasoning:{thinking:"Pensando\u2026",thoughtBrief:"Pensado durante unos segundos",thoughtForSeconds:e=>`Pensado durante ${e} segundo${e===1?"":"s"}`},tool:{copy:"Copiar",copied:"Copiado",request:"Solicitud",response:"Respuesta",error:"Error"},attachments:{attachmentFallback:"adjunto",fileFallback:"archivo"},threadMenu:{newChat:"Nueva conversaci\xF3n",threadHistory:"Historial",deleteThread:"Eliminar conversaci\xF3n",noPreviousChats:"A\xFAn no hay conversaciones anteriores.",hiddenThreads:e=>`${e} conversaci\xF3n${e===1?"":"es"} anterior${e===1?"":"es"} oculta${e===1?"":"s"}`},chatQueue:{attachmentFallback:"(adjunto)",removeFromQueue:"Quitar de la cola",queued:e=>`${e} en cola`},poweredBy:{label:"Agente IA con tecnolog\xEDa de"},aiDisclaimer:{default:"puede cometer errores"},exportSession:{saving:"guardando...",saved:"guardado",error:"error",export:"exportar",tooltip:"Guardar escenario en WaniWani"},widgetErrorBoundary:{failedToLoad:"No se pudo cargar el widget",retry:"Reintentar"},launcher:{prompt:"Pregunta lo que quieras\u2026",open:"Abrir chat",close:"Cerrar chat",minimize:"Minimizar"}};var us={promptInput:{placeholder:"Que souhaitez-vous savoir ?",uploadFiles:"Importer des fichiers",stop:"Arr\xEAter",submit:"Envoyer",removeAttachments:"Supprimer toutes les pi\xE8ces jointes"},workingIndicator:{default:"Un instant\u2026"},reasoning:{thinking:"R\xE9flexion\u2026",thoughtBrief:"R\xE9flexion pendant quelques secondes",thoughtForSeconds:e=>`R\xE9flexion pendant ${e} seconde${e===1?"":"s"}`},tool:{copy:"Copier",copied:"Copi\xE9",request:"Requ\xEAte",response:"R\xE9ponse",error:"Erreur"},attachments:{attachmentFallback:"pi\xE8ce jointe",fileFallback:"fichier"},threadMenu:{newChat:"Nouvelle conversation",threadHistory:"Historique",deleteThread:"Supprimer la conversation",noPreviousChats:"Aucune conversation pr\xE9c\xE9dente.",hiddenThreads:e=>`${e} conversation${e===1?"":"s"} plus ancienne${e===1?"":"s"} masqu\xE9e${e===1?"":"s"}`},chatQueue:{attachmentFallback:"(pi\xE8ce jointe)",removeFromQueue:"Retirer de la file",queued:e=>`${e} en attente`},poweredBy:{label:"Agent IA propuls\xE9 par"},aiDisclaimer:{default:"peut faire des erreurs"},exportSession:{saving:"enregistrement...",saved:"enregistr\xE9",error:"erreur",export:"exporter",tooltip:"Enregistrer le sc\xE9nario dans WaniWani"},widgetErrorBoundary:{failedToLoad:"\xC9chec du chargement du widget",retry:"R\xE9essayer"},launcher:{prompt:"Posez votre question\u2026",open:"Ouvrir le chat",close:"Fermer le chat",minimize:"R\xE9duire"}};var Io={en:ua,fr:us,es:ls};import{jsx as uu}from"react/jsx-runtime";var fs=ou(null);function iu(e,t){if(!t)return e;let a={...e};for(let o of Object.keys(e)){let r=e[o],s=t[o];s&&typeof r=="object"&&(a[o]={...r,...s})}return a}function So({children:e,locale:t,messages:a}){let o=!!(t&&lu(t)),r=o?t:"en",[s,n]=ds(r),[i,l]=ds(o);su(()=>{n(Co(t)),l(!0)},[t]);let u=nu(()=>{let f=Io[s]??Io["en"];return{locale:s,t:iu(f,a),ready:i}},[s,a,i]);return uu(fs.Provider,{value:u,children:e})}function lu(e){return e==="en"||e==="fr"||e==="es"}function H(){let e=ru(fs);return e||{locale:"en",t:ua,ready:!0}}function yo(e,t){let a=Date.now()-e;if(a<6e4)try{return new Intl.RelativeTimeFormat(t,{numeric:"auto",style:"narrow"}).format(0,"second")}catch{return"just now"}let o,r;a<60*6e4?(o=-Math.floor(a/6e4),r="minute"):a<1440*6e4?(o=-Math.floor(a/(60*6e4)),r="hour"):(o=-Math.floor(a/(1440*6e4)),r="day");try{return new Intl.RelativeTimeFormat(t,{numeric:"auto",style:"short"}).format(o,r)}catch{return`${Math.abs(o)}${r==="minute"?"m":r==="hour"?"h":"d"} ago`}}import{jsx as Fe,jsxs as hs}from"react/jsx-runtime";var pu=async e=>{try{let a=await(await fetch(e)).blob();return new Promise(o=>{let r=new FileReader;r.onloadend=()=>o(r.result),r.onerror=()=>o(null),r.readAsDataURL(a)})}catch{return null}},ps=du(null),ms=()=>{let e=fu(ps);if(!e)throw new Error("usePromptInputAttachments must be used within a PromptInput");return e},da=({className:e,accept:t,multiple:a,globalDrop:o,maxFiles:r,maxFileSize:s,onSubmit:n,children:i,...l})=>{let{t:u}=H(),f=ko(null),d=ko(null),[p,c]=cs([]),m=ko(p);bo(()=>{m.current=p},[p]);let L=Ue(()=>{f.current?.click()},[]),x=Ue(k=>{let y=[...k];if(y.length===0)return;let M=F=>s?F.size<=s:!0,E=y.filter(M);c(F=>{let b=typeof r=="number"?Math.max(0,r-F.length):void 0,S=typeof b=="number"?E.slice(0,b):E;return[...F,...S.map(P=>({filename:P.name,id:Bt(),mediaType:P.type,type:"file",url:URL.createObjectURL(P)}))]})},[r,s]),w=Ue(k=>{c(y=>{let M=y.find(E=>E.id===k);return M?.url&&URL.revokeObjectURL(M.url),y.filter(E=>E.id!==k)})},[]),g=Ue(()=>{c(k=>{for(let y of k)y.url&&URL.revokeObjectURL(y.url);return[]})},[]);bo(()=>()=>{for(let k of m.current)k.url&&URL.revokeObjectURL(k.url)},[]);let h=Ue(k=>{k.currentTarget.files&&x(k.currentTarget.files),k.currentTarget.value=""},[x]);bo(()=>{if(!o)return;let k=M=>{M.dataTransfer?.types?.includes("Files")&&M.preventDefault()},y=M=>{M.dataTransfer?.types?.includes("Files")&&M.preventDefault(),M.dataTransfer?.files&&M.dataTransfer.files.length>0&&x(M.dataTransfer.files)};return document.addEventListener("dragover",k),document.addEventListener("drop",y),()=>{document.removeEventListener("dragover",k),document.removeEventListener("drop",y)}},[x,o]);let I=Ue(async k=>{k.preventDefault();let y=k.currentTarget,E=new FormData(y).get("message")||"";y.reset();let F=await Promise.all(p.map(async({id:b,...S})=>{if(S.url?.startsWith("blob:")){let P=await pu(S.url);return{...S,url:P??S.url}}return S}));try{let b=n({files:F,text:E},k);b instanceof Promise&&await b,g()}catch{}},[p,n,g]),T=cu(()=>({add:x,clear:g,files:p,openFileDialog:L,remove:w}),[p,x,w,g,L]);return hs(ps.Provider,{value:T,children:[Fe("input",{accept:t,"aria-label":u.promptInput.uploadFiles,className:"ww:hidden",multiple:a,onChange:h,ref:f,title:u.promptInput.uploadFiles,type:"file"}),Fe("form",{className:A("ww:flex ww:w-full ww:flex-col ww:rounded-lg ww:border ww:border-border ww:bg-background",e),onSubmit:I,ref:d,...l,children:i})]})};var fa=({onChange:e,onKeyDown:t,className:a,placeholder:o,...r})=>{let{t:s}=H(),n=ms(),[i,l]=cs(!1),u=o??s.promptInput.placeholder,f=Ue(p=>{if(t?.(p),!p.defaultPrevented){if(p.key==="Enter"){if(i||p.nativeEvent.isComposing||p.shiftKey)return;p.preventDefault();let{form:c}=p.currentTarget;if(c?.querySelector('button[type="submit"]')?.disabled)return;c?.requestSubmit()}if(p.key==="Backspace"&&p.currentTarget.value===""&&n.files.length>0){p.preventDefault();let c=n.files.at(-1);c&&n.remove(c.id)}}},[t,i,n]),d=Ue(p=>{let c=p.clipboardData?.items;if(!c)return;let m=[];for(let L of c)if(L.kind==="file"){let x=L.getAsFile();x&&m.push(x)}m.length>0&&(p.preventDefault(),n.add(m))},[n]);return Fe("textarea",{className:A("ww:field-sizing-content ww:max-h-48 ww:min-h-0 ww:w-full ww:resize-none ww:border-0 ww:bg-transparent ww:px-3 ww:py-2 ww:text-base ww:sm:text-sm ww:outline-none ww:placeholder:text-muted-foreground",a),name:"message",onCompositionEnd:()=>l(!1),onCompositionStart:()=>l(!0),onKeyDown:f,onPaste:d,placeholder:u,onChange:e,...r})},ca=({className:e,status:t,onStop:a,onClick:o,children:r,...s})=>{let{t:n}=H(),i=t==="submitted"||t==="streaming",l=Fe(St,{className:"ww:size-4"});t==="submitted"?l=Fe(At,{className:"ww:size-4 ww:animate-spin"}):t==="streaming"&&(l=Fe(Mt,{className:"ww:size-4"}));let u=Ue(f=>{if(i&&a){f.preventDefault(),a();return}o?.(f)},[i,a,o]);return Fe(Pe,{"aria-label":i?n.promptInput.stop:n.promptInput.submit,className:A("ww:bg-foreground ww:text-background ww:hover:bg-foreground ww:rounded-full",e),onClick:u,size:"icon-sm",type:i&&a?"button":"submit",variant:"ghost",...s,children:r??l})},pa=({className:e,children:t,...a})=>{let{t:o}=H(),r=ms();return r.files.length>0?hs(Pe,{className:A("ww:group ww:relative",e),onClick:()=>r.clear(),size:"icon-sm",type:"button",variant:"ghost","aria-label":o.promptInput.removeAttachments,...a,children:[Fe("span",{className:"ww:flex ww:size-5 ww:items-center ww:justify-center ww:rounded-full ww:bg-primary ww:text-[10px] ww:font-medium ww:text-primary-foreground ww:transition-opacity ww:group-hover:opacity-0",children:r.files.length}),Fe(Ze,{className:"ww:absolute ww:size-4 ww:opacity-0 ww:transition-opacity ww:group-hover:opacity-100"})]}):Fe(Pe,{className:A(e),onClick:()=>r.openFileDialog(),size:"icon-sm",type:"button",variant:"ghost",...a,children:t??Fe(vt,{className:"ww:size-4"})})};import{memo as mu,useCallback as hu}from"react";import{jsx as pt}from"react/jsx-runtime";var gs=({className:e,...t})=>pt("div",{className:A("ww:flex ww:flex-col ww:gap-1 ww:px-3 ww:py-2",e),...t}),ws=({className:e,...t})=>pt("li",{className:A("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}),xs=({className:e,...t})=>pt("span",{className:A("ww:inline-block ww:size-2 ww:shrink-0 ww:rounded-full ww:border ww:border-muted-foreground/50",e),...t}),Ls=({className:e,...t})=>pt("span",{className:A("ww:line-clamp-1 ww:grow ww:break-words ww:text-muted-foreground",e),...t}),Cs=({className:e,...t})=>pt("div",{className:A("ww:flex ww:shrink-0 ww:gap-1 ww:opacity-0 ww:transition-opacity ww:group-hover:opacity-100",e),...t}),Is=({className:e,...t})=>pt(Pe,{className:A("ww:size-auto ww:rounded ww:p-1 ww:text-muted-foreground ww:hover:bg-muted-foreground/10 ww:hover:text-foreground",e),size:"icon",type:"button",variant:"ghost",...t});import{jsx as Ve,jsxs as ys}from"react/jsx-runtime";var Ss=mu(({message:e,onRemove:t})=>{let{t:a}=H(),o=hu(()=>t(e.id),[t,e.id]);return ys(ws,{children:[Ve(xs,{}),Ve(Ls,{children:e.text||a.chatQueue.attachmentFallback}),Ve(Cs,{children:Ve(Is,{"aria-label":a.chatQueue.removeFromQueue,onClick:o,children:Ve(Ze,{className:"ww:size-3"})})})]})});Ss.displayName="ChatQueueItem";function ma({queuedMessages:e,onRemove:t,className:a}){let{t:o}=H();return e.length===0?null:ys(gs,{className:A("ww:border-t ww:border-border",a),children:[Ve("div",{className:"ww:text-[11px] ww:font-medium ww:text-muted-foreground ww:px-2",children:o.chatQueue.queued(e.length)}),Ve("ul",{children:e.map(r=>Ve(Ss,{message:r,onRemove:t},r.id))})]})}import{useState as bs}from"react";import{jsx as gu}from"react/jsx-runtime";function ks({messages:e,evalEnabled:t,api:a="/api/waniwani"}){let{t:o}=H(),[r,s]=bs(!1),[n,i]=bs(null),l=async()=>{let f={name:`session-${new Date().toISOString().slice(0,19)}`,type:"functional",messages:e,mode:"manual"};s(!0),i(null);try{let d=await fetch(`${a}/scenarios`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(f)});if(!d.ok)throw new Error(`${d.status}`);i("saved")}catch{i("error")}finally{s(!1),setTimeout(()=>i(null),2e3)}};if(!t||e.length===0)return null;let u=r?o.exportSession.saving:n==="saved"?o.exportSession.saved:n==="error"?o.exportSession.error:o.exportSession.export;return gu("button",{type:"button",onClick:l,disabled:r,title:o.exportSession.tooltip,className:"ww:ml-auto ww:text-[10px] ww:font-mono ww:uppercase ww:tracking-wider ww:text-muted-foreground hover:ww:text-foreground ww:cursor-pointer ww:transition-colors ww:disabled:opacity-40",children:u})}import{jsx as Dt,jsxs as xu}from"react/jsx-runtime";var Ts=({files:e,className:t,...a})=>e.length===0?null:Dt("div",{className:A("ww:flex ww:flex-wrap ww:gap-1.5",t),...a,children:e.map((o,r)=>Dt(wu,{file:o},r))});function wu({file:e}){let{t}=H();return e.mediaType?.startsWith("image/")&&e.url?Dt("img",{src:e.url,alt:e.filename??t.attachments.attachmentFallback,className:"ww:h-16 ww:max-w-32 ww:rounded ww:object-cover"}):xu("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:[Dt(Pt,{className:"ww:size-3 ww:shrink-0"}),Dt("span",{className:"ww:max-w-24 ww:truncate",children:e.filename??t.attachments.fileFallback})]})}import{createContext as Su,useCallback as yu,useContext as bu,useEffect as Ps,useMemo as ku,useRef as Tu,useState as To}from"react";import{memo as Lu}from"react";import{jsx as Iu}from"react/jsx-runtime";var Cu=({as:e="span",className:t,duration:a=2,style:o,children:r,...s})=>{let n={backgroundImage:"linear-gradient(90deg, var(--ww-color-muted-foreground) 0%, var(--ww-color-muted-foreground) 40%, var(--ww-color-foreground) 50%, var(--ww-color-muted-foreground) 60%, var(--ww-color-muted-foreground) 100%)",backgroundSize:"250% 100%",WebkitBackgroundClip:"text",backgroundClip:"text",color:"transparent",animation:`ww-shimmer ${a}s linear infinite`,...o};return Iu(e,{"data-waniwani-shimmer":"",className:A("ww:inline-block",t),style:n,...s,children:r})},qe=Lu(Cu);qe.displayName="Shimmer";import{jsx as ue,jsxs as Et}from"react/jsx-runtime";var Pu=1e3,As=Su(null);function vs(){let e=bu(As);if(!e)throw new Error("ChainOfThought components must be used within <ChainOfThought>");return e}function Ms({className:e,isWorking:t=!1,open:a,defaultOpen:o,onOpenChange:r,children:s,...n}){let i=o??t,l=a!==void 0,[u,f]=To(i),d=l?a:u,p=yu(w=>{l||f(w),r?.(w)},[l,r]),c=Tu(t),[m,L]=To(!1);Ps(()=>{t&&(c.current=!0,L(!1),l||f(!0))},[t,l]),Ps(()=>{if(c.current&&!t&&d&&!m){let w=setTimeout(()=>{p(!1),L(!0)},Pu);return()=>clearTimeout(w)}},[t,d,m,p]);let x=ku(()=>({open:d,setOpen:p,isWorking:t}),[d,p,t]);return ue(As.Provider,{value:x,children:ue("div",{className:A("ww:mb-4 ww:flex ww:flex-col ww:gap-2",e),"data-state":d?"open":"closed",style:{animation:"ww-fade-in 0.2s ease-out"},...n,children:s})})}function Rs({className:e,label:t,children:a,...o}){let{open:r,setOpen:s,isWorking:n}=vs(),i=a??(n?ue(qe,{duration:1.6,children:t??""}):t);return Et("button",{type:"button",onClick:()=>s(!r),"aria-expanded":r,className:A("ww:flex ww:w-full ww:items-center ww:gap-2 ww:text-sm ww:text-muted-foreground ww:transition-colors ww:hover:text-foreground",e),...o,children:[ue(He,{className:"ww:size-4 ww:shrink-0"}),ue("span",{className:"ww:truncate",children:i}),ue(Je,{className:A("ww:size-4 ww:shrink-0 ww:transition-transform ww:duration-200",r&&"ww:rotate-180")})]})}function Fs({className:e,children:t,...a}){let{open:o}=vs();return ue("div",{className:A("ww:grid ww:transition-[grid-template-rows,opacity] ww:duration-200 ww:ease-out",o?"ww:grid-rows-[1fr] ww:opacity-100":"ww:grid-rows-[0fr] ww:opacity-0"),children:ue("div",{className:"ww:min-h-0 ww:overflow-hidden",children:ue("div",{className:A("ww:flex ww:flex-col",e),...a,children:t})})})}function Po({className:e,title:t,state:a,isLast:o=!1,children:r,...s}){let n=a==="input-available"||a==="input-streaming",i=a==="output-error",l=r!=null,[u,f]=To(!1),d=t??"",p=n?ue(qe,{duration:1.6,children:d}):ue("span",{className:"ww:truncate",children:d});return Et("div",{className:A("ww:flex ww:gap-3",e),...s,children:[Et("div",{className:"ww:flex ww:flex-col ww:items-center ww:self-stretch",children:[ue("span",{className:A("ww:mt-[7px] ww:size-1.5 ww:shrink-0 ww:rounded-full",i?"ww:bg-destructive":n?"ww:animate-pulse ww:bg-foreground":"ww:bg-muted-foreground")}),!o&&ue("span",{className:"ww:w-px ww:flex-1 ww:bg-border"})]}),Et("div",{className:A("ww:min-w-0 ww:flex-1",!o&&"ww:pb-2"),children:[l?Et("button",{type:"button",onClick:()=>f(c=>!c),"aria-expanded":u,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,ue(Je,{className:A("ww:size-3.5 ww:shrink-0 ww:transition-transform ww:duration-200",u&&"ww:rotate-180")})]}):ue("div",{className:"ww:flex ww:items-center ww:text-sm ww:text-muted-foreground",children:p}),l&&ue("div",{className:A("ww:grid ww:transition-[grid-template-rows,opacity] ww:duration-200 ww:ease-out",u?"ww:grid-rows-[1fr] ww:opacity-100":"ww:grid-rows-[0fr] ww:opacity-0"),children:ue("div",{className:"ww:min-h-0 ww:overflow-hidden",children:ue("div",{className:"ww:mt-2 ww:space-y-3 ww:rounded-lg ww:border ww:border-border ww:bg-background ww:p-3",children:r})})})]})]})}var fe={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 Ee={attentionSideAfter:2,attentionSideBefore:1,atxHeadingOpeningFenceSizeMax:6,autolinkDomainSizeMax:63,autolinkSchemeSizeMax:32,cdataOpeningString:"CDATA[",characterGroupPunctuation:2,characterGroupWhitespace:1,characterReferenceDecimalSizeMax:7,characterReferenceHexadecimalSizeMax:6,characterReferenceNamedSizeMax:31,codeFencedSequenceSizeMin:3,contentTypeContent:"content",contentTypeDocument:"document",contentTypeFlow:"flow",contentTypeString:"string",contentTypeText:"text",hardBreakPrefixSizeMin:2,htmlBasic:6,htmlCdata:5,htmlComment:2,htmlComplete:7,htmlDeclaration:4,htmlInstruction:3,htmlRawSizeMax:8,htmlRaw:1,linkResourceDestinationBalanceMax:32,linkReferenceSizeMax:999,listItemValueSizeMax:10,numericBaseDecimal:10,numericBaseHexadecimal:16,tabSize:4,thematicBreakMarkerCountMin:3,v8MaxSafeChunkSize:1e4};var be={data:"data",whitespace:"whitespace",lineEnding:"lineEnding",lineEndingBlank:"lineEndingBlank",linePrefix:"linePrefix",lineSuffix:"lineSuffix",atxHeading:"atxHeading",atxHeadingSequence:"atxHeadingSequence",atxHeadingText:"atxHeadingText",autolink:"autolink",autolinkEmail:"autolinkEmail",autolinkMarker:"autolinkMarker",autolinkProtocol:"autolinkProtocol",characterEscape:"characterEscape",characterEscapeValue:"characterEscapeValue",characterReference:"characterReference",characterReferenceMarker:"characterReferenceMarker",characterReferenceMarkerNumeric:"characterReferenceMarkerNumeric",characterReferenceMarkerHexadecimal:"characterReferenceMarkerHexadecimal",characterReferenceValue:"characterReferenceValue",codeFenced:"codeFenced",codeFencedFence:"codeFencedFence",codeFencedFenceSequence:"codeFencedFenceSequence",codeFencedFenceInfo:"codeFencedFenceInfo",codeFencedFenceMeta:"codeFencedFenceMeta",codeFlowValue:"codeFlowValue",codeIndented:"codeIndented",codeText:"codeText",codeTextData:"codeTextData",codeTextPadding:"codeTextPadding",codeTextSequence:"codeTextSequence",content:"content",definition:"definition",definitionDestination:"definitionDestination",definitionDestinationLiteral:"definitionDestinationLiteral",definitionDestinationLiteralMarker:"definitionDestinationLiteralMarker",definitionDestinationRaw:"definitionDestinationRaw",definitionDestinationString:"definitionDestinationString",definitionLabel:"definitionLabel",definitionLabelMarker:"definitionLabelMarker",definitionLabelString:"definitionLabelString",definitionMarker:"definitionMarker",definitionTitle:"definitionTitle",definitionTitleMarker:"definitionTitleMarker",definitionTitleString:"definitionTitleString",emphasis:"emphasis",emphasisSequence:"emphasisSequence",emphasisText:"emphasisText",escapeMarker:"escapeMarker",hardBreakEscape:"hardBreakEscape",hardBreakTrailing:"hardBreakTrailing",htmlFlow:"htmlFlow",htmlFlowData:"htmlFlowData",htmlText:"htmlText",htmlTextData:"htmlTextData",image:"image",label:"label",labelText:"labelText",labelLink:"labelLink",labelImage:"labelImage",labelMarker:"labelMarker",labelImageMarker:"labelImageMarker",labelEnd:"labelEnd",link:"link",paragraph:"paragraph",reference:"reference",referenceMarker:"referenceMarker",referenceString:"referenceString",resource:"resource",resourceDestination:"resourceDestination",resourceDestinationLiteral:"resourceDestinationLiteral",resourceDestinationLiteralMarker:"resourceDestinationLiteralMarker",resourceDestinationRaw:"resourceDestinationRaw",resourceDestinationString:"resourceDestinationString",resourceMarker:"resourceMarker",resourceTitle:"resourceTitle",resourceTitleMarker:"resourceTitleMarker",resourceTitleString:"resourceTitleString",setextHeading:"setextHeading",setextHeadingText:"setextHeadingText",setextHeadingLine:"setextHeadingLine",setextHeadingLineSequence:"setextHeadingLineSequence",strong:"strong",strongSequence:"strongSequence",strongText:"strongText",thematicBreak:"thematicBreak",thematicBreakSequence:"thematicBreakSequence",blockQuote:"blockQuote",blockQuotePrefix:"blockQuotePrefix",blockQuoteMarker:"blockQuoteMarker",blockQuotePrefixWhitespace:"blockQuotePrefixWhitespace",listOrdered:"listOrdered",listUnordered:"listUnordered",listItemIndent:"listItemIndent",listItemMarker:"listItemMarker",listItemPrefix:"listItemPrefix",listItemPrefixWhitespace:"listItemPrefixWhitespace",listItemValue:"listItemValue",chunkDocument:"chunkDocument",chunkContent:"chunkContent",chunkFlow:"chunkFlow",chunkText:"chunkText",chunkString:"chunkString"};function Bs(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 Ds(e){return e===12288||e>=65281&&e<=65376||e>=65504&&e<=65510}function Es(e){return e>=4352&&e<=4447||e===8986||e===8987||e===9001||e===9002||e>=9193&&e<=9196||e===9200||e===9203||e===9725||e===9726||e===9748||e===9749||e>=9776&&e<=9783||e>=9800&&e<=9811||e===9855||e>=9866&&e<=9871||e===9875||e===9889||e===9898||e===9899||e===9917||e===9918||e===9924||e===9925||e===9934||e===9940||e===9962||e===9970||e===9971||e===9973||e===9978||e===9981||e===9989||e===9994||e===9995||e===10024||e===10060||e===10062||e>=10067&&e<=10069||e===10071||e>=10133&&e<=10135||e===10160||e===10175||e===11035||e===11036||e===11088||e===11093||e>=11904&&e<=11929||e>=11931&&e<=12019||e>=12032&&e<=12245||e>=12272&&e<=12287||e>=12289&&e<=12350||e>=12353&&e<=12438||e>=12441&&e<=12543||e>=12549&&e<=12591||e>=12593&&e<=12686||e>=12688&&e<=12773||e>=12783&&e<=12830||e>=12832&&e<=12871||e>=12880&&e<=42124||e>=42128&&e<=42182||e>=43360&&e<=43388||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65106||e>=65108&&e<=65126||e>=65128&&e<=65131||e>=94176&&e<=94180||e>=94192&&e<=94198||e>=94208&&e<=101589||e>=101631&&e<=101662||e>=101760&&e<=101874||e>=110576&&e<=110579||e>=110581&&e<=110587||e===110589||e===110590||e>=110592&&e<=110882||e===110898||e>=110928&&e<=110930||e===110933||e>=110948&&e<=110951||e>=110960&&e<=111355||e>=119552&&e<=119638||e>=119648&&e<=119670||e===126980||e===127183||e===127374||e>=127377&&e<=127386||e>=127488&&e<=127490||e>=127504&&e<=127547||e>=127552&&e<=127560||e===127568||e===127569||e>=127584&&e<=127589||e>=127744&&e<=127776||e>=127789&&e<=127797||e>=127799&&e<=127868||e>=127870&&e<=127891||e>=127904&&e<=127946||e>=127951&&e<=127955||e>=127968&&e<=127984||e===127988||e>=127992&&e<=128062||e===128064||e>=128066&&e<=128252||e>=128255&&e<=128317||e>=128331&&e<=128334||e>=128336&&e<=128359||e===128378||e===128405||e===128406||e===128420||e>=128507&&e<=128591||e>=128640&&e<=128709||e===128716||e>=128720&&e<=128722||e>=128725&&e<=128728||e>=128732&&e<=128735||e===128747||e===128748||e>=128756&&e<=128764||e>=128992&&e<=129003||e===129008||e>=129292&&e<=129338||e>=129340&&e<=129349||e>=129351&&e<=129535||e>=129648&&e<=129660||e>=129664&&e<=129674||e>=129678&&e<=129734||e===129736||e>=129741&&e<=129756||e>=129759&&e<=129770||e>=129775&&e<=129784||e>=131072&&e<=196605||e>=196608&&e<=262141}function _s(e){return Bs(e)?"ambiguous":Ds(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":Es(e)?"wide":"neutral"}function Au(e){if(!Number.isSafeInteger(e))throw new TypeError(`Expected a code point, got \`${typeof e}\`.`)}function Ns(e){return Au(e),_s(e)}var vu=Object.defineProperty,Mu=(e,t,a)=>t in e?vu(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a,Ru=(e,t,a)=>Mu(e,typeof t!="symbol"?t+"":t,a);function Fu(e){return/^\p{Emoji_Presentation}/u.test(String.fromCodePoint(e))}function Bu(e){if(!e||e<4352)return!1;switch(Ns(e)){case"fullwidth":case"halfwidth":return!0;case"wide":return!Fu(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 Du(e,t){return t!==65025||!e||e<8216?!1:e===8216||e===8217||e===8220||e===8221}function Eu(e){return e!==null&&e>=65024&&e<=65038}var _u=Os(/\p{P}|\p{S}/u),Nu=Os(/\s/);function Os(e){return t;function t(a){return a!==null&&a>-1&&e.test(String.fromCodePoint(a))}}var ke;(e=>{e.spaceOrPunctuation=3,e.cjk=4096,e.cjkPunctuation=4098,e.ivs=8192,e.cjkOrIvs=12288,e.nonEmojiGeneralUseVS=16384,e.variationSelector=24576,e.ivsToCjkRightShift=1})(ke||(ke={}));function je(e){if(e===fe.eof||Hr(e)||Nu(e))return Ee.characterGroupWhitespace;let t=0;if(e>=4352){if(Eu(e))return ke.nonEmojiGeneralUseVS;switch(Bu(e)){case null:return ke.ivs;case!0:t|=ke.cjk;break}}return _u(e)&&(t|=Ee.characterGroupPunctuation),t}function ha(e,t,a){if(!Hu(e))return e;let o=t(),r=je(o);return!o||tt(r)?e:Du(o,a)?ke.cjkPunctuation:Ou(r)}function Ou(e){return e&~ke.ivs}function tt(e){return!!(e&Ee.characterGroupWhitespace)}function mt(e){return(e&ke.cjkPunctuation)===Ee.characterGroupPunctuation}function _t(e){return!!(e&ke.cjk)}function Hs(e){return e===ke.ivs}function Us(e){return!!(e&ke.cjkOrIvs)}function Hu(e){return e===ke.nonEmojiGeneralUseVS}function Ao(e){return!!(e&ke.spaceOrPunctuation)}function ga(e){return!!(e&&e>=55296&&e<=56319)}function wa(e){return!!(e&&e>=56320&&e<=57343)}function xa(e,t,a){if(t._bufferIndex<2)return e;let r=a({start:{...t,_bufferIndex:t._bufferIndex-2},end:t}).codePointAt(0);return r&&r>=65536?r:e}function Uu(e,t,a){let o=e>=65536?2:1;if(t._bufferIndex<1+o)return null;let r=t._bufferIndex-o-2,s=a({start:{...t,_bufferIndex:r>=0?r:0},end:{...t,_bufferIndex:t._bufferIndex-o}}),n=s.charCodeAt(s.length-1);if(Number.isNaN(n))return null;if(s.length<2||n<56320||57343<n)return n;let i=s.codePointAt(0);return i&&i>=65536?i:n}var La=class{constructor(e,t,a){this.previousCode=e,this.nowPoint=t,this.sliceSerialize=a,Ru(this,"cachedValue")}value(){return this.cachedValue===void 0&&(this.cachedValue=Uu(this.previousCode,this.nowPoint,this.sliceSerialize)),this.cachedValue}};function Ca(e,t,a){let o=a({start:t,end:{...t,_bufferIndex:t._bufferIndex+2}}).codePointAt(0);return o&&o>=65536?o:e}var vo={name:"attention",resolveAll:qu,tokenize:Gu};function qu(e,t){let a=-1,o,r,s,n,i,l,u,f;for(;++a<e.length;)if(e[a][0]==="enter"&&e[a][1].type==="attentionSequence"&&e[a][1]._close){for(o=a;o--;)if(e[o][0]==="exit"&&e[o][1].type==="attentionSequence"&&e[o][1]._open&&t.sliceSerialize(e[o][1]).charCodeAt(0)===t.sliceSerialize(e[a][1]).charCodeAt(0)){if((e[o][1]._close||e[a][1]._open)&&(e[a][1].end.offset-e[a][1].start.offset)%3&&!((e[o][1].end.offset-e[o][1].start.offset+e[a][1].end.offset-e[a][1].start.offset)%3))continue;l=e[o][1].end.offset-e[o][1].start.offset>1&&e[a][1].end.offset-e[a][1].start.offset>1?2:1;let d={...e[o][1].end},p={...e[a][1].start};qs(d,-l),qs(p,l),n={type:l>1?be.strongSequence:be.emphasisSequence,start:d,end:{...e[o][1].end}},i={type:l>1?be.strongSequence:be.emphasisSequence,start:{...e[a][1].start},end:p},s={type:l>1?be.strongText:be.emphasisText,start:{...e[o][1].end},end:{...e[a][1].start}},r={type:l>1?be.strong:be.emphasis,start:{...n.start},end:{...i.end}},e[o][1].end={...n.start},e[a][1].start={...i.end},u=[],e[o][1].end.offset-e[o][1].start.offset&&(u=lt(u,[["enter",e[o][1],t],["exit",e[o][1],t]])),u=lt(u,[["enter",r,t],["enter",n,t],["exit",n,t],["enter",s,t]]),t.parser.constructs.insideSpan.null,u=lt(u,ra(t.parser.constructs.insideSpan.null,e.slice(o+1,a),t)),u=lt(u,[["exit",s,t],["enter",i,t],["exit",i,t],["exit",r,t]]),e[a][1].end.offset-e[a][1].start.offset?(f=2,u=lt(u,[["enter",e[a][1],t],["exit",e[a][1],t]])):f=0,it(e,o-1,a-o+3,u),a=o+u.length-f-2;break}}for(a=-1;++a<e.length;)e[a][1].type==="attentionSequence"&&(e[a][1].type="data");return e}function Gu(e,t){let a=this.parser.constructs.attentionMarkers.null,{now:o,sliceSerialize:r,previous:s}=this,n=wa(s)?xa(s,o(),r):s,i=je(n),l=new La(n,o(),r),u=ha(i,l.value.bind(l),n),f;return d;function d(c){return c===fe.asterisk||fe.underscore,f=c,e.enter("attentionSequence"),p(c)}function p(c){if(c===f)return e.consume(c),p;let m=e.exit("attentionSequence"),L=ga(c)?Ca(c,o(),r):c,x=je(L);let w=mt(u),g=w||tt(u),h=mt(x),I=h||tt(x),T=Us(u),k=!I||h&&(g||T)||a.includes(c),y=!g||w&&(I||_t(x))||a.includes(n);return m._open=!!(f===fe.asterisk?k:k&&(Ao(u)||!y)),m._close=!!(f===fe.asterisk?y:y&&(Ao(x)||!k)),t(c)}}function qs(e,t){e.column+=t,e.offset+=t,e._bufferIndex+=t}function Gs(){return{text:{[fe.asterisk]:vo,[fe.underscore]:vo},insideSpan:{null:[vo]}}}function Ws(){let e=this.data();(e.micromarkExtensions||(e.micromarkExtensions=[])).push(Gs())}function zs(e){let a=(e||{}).singleTilde,o={name:"strikethrough",tokenize:s,resolveAll:r};return a==null&&(a=!0),{text:{[fe.tilde]:o},insideSpan:{null:[o]},attentionMarkers:{null:[fe.tilde]}};function r(n,i){let l=-1;for(;++l<n.length;)if(n[l][0]==="enter"&&n[l][1].type==="strikethroughSequenceTemporary"&&n[l][1]._close){let u=l;for(;u--;)if(n[u][0]==="exit"&&n[u][1].type==="strikethroughSequenceTemporary"&&n[u][1]._open&&n[l][1].end.offset-n[l][1].start.offset===n[u][1].end.offset-n[u][1].start.offset){n[l][1].type="strikethroughSequence",n[u][1].type="strikethroughSequence";let f={type:"strikethrough",start:Object.assign({},n[u][1].start),end:Object.assign({},n[l][1].end)},d={type:"strikethroughText",start:Object.assign({},n[u][1].end),end:Object.assign({},n[l][1].start)},p=[["enter",f,i],["enter",n[u][1],i],["exit",n[u][1],i],["enter",d,i]],c=i.parser.constructs.insideSpan.null;c&&it(p,p.length,0,ra(c,n.slice(u+1,l),i)),it(p,p.length,0,[["exit",d,i],["enter",n[l][1],i],["exit",n[l][1],i],["exit",f,i]]),it(n,u-1,l-u+3,p),l=u+p.length-2;break}}for(l=-1;++l<n.length;)n[l][1].type==="strikethroughSequenceTemporary"&&(n[l][1].type=be.data);return n}function s(n,i,l){let{now:u,sliceSerialize:f,previous:d}=this,p=wa(d)?xa(d,u(),f):d,c=je(p),m=new La(p,u(),f),L=ha(c,m.value.bind(m),p),x=this.events,w=0;return g;function g(I){return fe.tilde,p===fe.tilde&&x[x.length-1][1].type!==be.characterEscape?l(I):(n.enter("strikethroughSequenceTemporary"),h(I))}function h(I){let T=je(p);if(I===fe.tilde)return w>1?l(I):(n.consume(I),w++,h);if(w<2&&!a)return l(I);let k=n.exit("strikethroughSequenceTemporary"),y=ga(I)?Ca(I,u(),f):I,M=je(y),F=mt(L)||tt(L),S=mt(M)||tt(M),P=_t(L)||Hs(T);return k._open=!S||M===Ee.attentionSideAfter&&(F||P),k._close=!F||T===Ee.attentionSideAfter&&(S||_t(M)),i(I)}}}function Vs(e){let t=this.data();(t.micromarkExtensions||(t.micromarkExtensions=[])).push(zs(e))}var Wu=new Set(["\u3002","\uFF0E","\uFF0C","\u3001","\uFF1F","\uFF01","\uFF1A","\uFF1B","\uFF08","\uFF09","\u3010","\u3011","\u300C","\u300D","\u300E","\u300F","\u3008","\u3009","\u300A","\u300B"]),zu=/^(https?:\/\/|mailto:|www\.)/i,Vu=e=>{if(e.children.length!==1)return!1;let t=e.children[0];return t.type==="text"&&t.value===e.url},ju=e=>{let t=0;for(let a of e){if(Wu.has(a))return t;t+=a.length}return null},$u=(e,t)=>({...t,url:e,children:[{type:"text",value:e}]}),Xu=e=>({type:"text",value:e}),Qu=()=>e=>{Ur(e,"link",(t,a,o)=>{if(!o||typeof a!="number"||!Vu(t)||!zu.test(t.url))return;let r=ju(t.url);if(r===null||r===0)return;let s=t.url.slice(0,r),n=t.url.slice(r),i=$u(s,t),l=Xu(n);return o.children.splice(a,1,i,l),a+1})};function Ku(){let e=[Ws],t=[Qu,Vs],a=[...e,...t];return{name:"cjk",type:"cjk",remarkPluginsBefore:e,remarkPluginsAfter:t,remarkPlugins:a}}var Mo=Ku();var K=class extends Error{constructor(t){super(t),this.name="ShikiError"}};function Ju(e){return Uo(e)}function Uo(e){return Array.isArray(e)?Zu(e):e instanceof RegExp?e:typeof e=="object"?Yu(e):e}function Zu(e){let t=[];for(let a=0,o=e.length;a<o;a++)t[a]=Uo(e[a]);return t}function Yu(e){let t={};for(let a in e)t[a]=Uo(e[a]);return t}function en(e,...t){return t.forEach(a=>{for(let o in a)e[o]=a[o]}),e}function tn(e){let t=~e.lastIndexOf("/")||~e.lastIndexOf("\\");return t===0?e:~t===e.length-1?tn(e.substring(0,e.length-1)):e.substr(~t+1)}var Ro=/\$(\d+)|\${(\d+):\/(downcase|upcase)}/g,Ia=class{static hasCaptures(e){return e===null?!1:(Ro.lastIndex=0,Ro.test(e))}static replaceCaptures(e,t,a){return e.replace(Ro,(o,r,s,n)=>{let i=a[parseInt(r||s,10)];if(i){let l=t.substring(i.start,i.end);for(;l[0]===".";)l=l.substring(1);switch(n){case"downcase":return l.toLowerCase();case"upcase":return l.toUpperCase();default:return l}}else return o})}};function an(e,t){return e<t?-1:e>t?1:0}function on(e,t){if(e===null&&t===null)return 0;if(!e)return-1;if(!t)return 1;let a=e.length,o=t.length;if(a===o){for(let r=0;r<a;r++){let s=an(e[r],t[r]);if(s!==0)return s}return 0}return a-o}function js(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 rn(e){return e.replace(/[\-\\\{\}\*\+\?\|\^\$\.\,\[\]\(\)\#\s]/g,"\\$&")}var sn=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}},Ht=class{constructor(e,t,a){this._colorMap=e,this._defaults=t,this._root=a}static createFromRawTheme(e,t){return this.createFromParsedTheme(ad(e),t)}static createFromParsedTheme(e,t){return rd(e,t)}_cachedMatchRoot=new sn(e=>this._root.match(e));getColorMap(){return this._colorMap.getColorMap()}getDefaults(){return this._defaults}match(e){if(e===null)return this._defaults;let t=e.scopeName,o=this._cachedMatchRoot.get(t).find(r=>ed(e.parent,r.parentScopes));return o?new nn(o.fontStyle,o.foreground,o.background):null}},Fo=class Sa{constructor(t,a){this.parent=t,this.scopeName=a}static push(t,a){for(let o of a)t=new Sa(t,o);return t}static from(...t){let a=null;for(let o=0;o<t.length;o++)a=new Sa(a,t[o]);return a}push(t){return new Sa(this,t)}getSegments(){let t=this,a=[];for(;t;)a.push(t.scopeName),t=t.parent;return a.reverse(),a}toString(){return this.getSegments().join(" ")}extends(t){return this===t?!0:this.parent===null?!1:this.parent.extends(t)}getExtensionIfDefined(t){let a=[],o=this;for(;o&&o!==t;)a.push(o.scopeName),o=o.parent;return o===t?a.reverse():void 0}};function ed(e,t){if(t.length===0)return!0;for(let a=0;a<t.length;a++){let o=t[a],r=!1;if(o===">"){if(a===t.length-1)return!1;o=t[++a],r=!0}for(;e&&!td(e.scopeName,o);){if(r)return!1;e=e.parent}if(!e)return!1;e=e.parent}return!0}function td(e,t){return t===e||e.startsWith(t)&&e[t.length]==="."}var nn=class{constructor(e,t,a){this.fontStyle=e,this.foregroundId=t,this.backgroundId=a}};function ad(e){if(!e)return[];if(!e.settings||!Array.isArray(e.settings))return[];let t=e.settings,a=[],o=0;for(let r=0,s=t.length;r<s;r++){let n=t[r];if(!n.settings)continue;let i;if(typeof n.scope=="string"){let d=n.scope;d=d.replace(/^[,]+/,""),d=d.replace(/[,]+$/,""),i=d.split(",")}else Array.isArray(n.scope)?i=n.scope:i=[""];let l=-1;if(typeof n.settings.fontStyle=="string"){l=0;let d=n.settings.fontStyle.split(" ");for(let p=0,c=d.length;p<c;p++)switch(d[p]){case"italic":l=l|1;break;case"bold":l=l|2;break;case"underline":l=l|4;break;case"strikethrough":l=l|8;break}}let u=null;typeof n.settings.foreground=="string"&&js(n.settings.foreground)&&(u=n.settings.foreground);let f=null;typeof n.settings.background=="string"&&js(n.settings.background)&&(f=n.settings.background);for(let d=0,p=i.length;d<p;d++){let m=i[d].trim().split(" "),L=m[m.length-1],x=null;m.length>1&&(x=m.slice(0,m.length-1),x.reverse()),a[o++]=new od(L,x,r,l,u,f)}}return a}var od=class{constructor(e,t,a,o,r,s){this.scope=e,this.parentScopes=t,this.index=a,this.fontStyle=o,this.foreground=r,this.background=s}},ce=(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))(ce||{});function rd(e,t){e.sort((l,u)=>{let f=an(l.scope,u.scope);return f!==0||(f=on(l.parentScopes,u.parentScopes),f!==0)?f:l.index-u.index});let a=0,o="#000000",r="#ffffff";for(;e.length>=1&&e[0].scope==="";){let l=e.shift();l.fontStyle!==-1&&(a=l.fontStyle),l.foreground!==null&&(o=l.foreground),l.background!==null&&(r=l.background)}let s=new sd(t),n=new nn(a,s.getId(o),s.getId(r)),i=new id(new Do(0,null,-1,0,0),[]);for(let l=0,u=e.length;l<u;l++){let f=e[l];i.insert(0,f.scope,f.parentScopes,f.fontStyle,s.getId(f.foreground),s.getId(f.background))}return new Ht(s,n,i)}var sd=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)}},nd=Object.freeze([]),Do=class ln{scopeDepth;parentScopes;fontStyle;foreground;background;constructor(t,a,o,r,s){this.scopeDepth=t,this.parentScopes=a||nd,this.fontStyle=o,this.foreground=r,this.background=s}clone(){return new ln(this.scopeDepth,this.parentScopes,this.fontStyle,this.foreground,this.background)}static cloneArr(t){let a=[];for(let o=0,r=t.length;o<r;o++)a[o]=t[o].clone();return a}acceptOverwrite(t,a,o,r){this.scopeDepth>t?console.log("how did this happen?"):this.scopeDepth=t,a!==-1&&(this.fontStyle=a),o!==0&&(this.foreground=o),r!==0&&(this.background=r)}},id=class Eo{constructor(t,a=[],o={}){this._mainRule=t,this._children=o,this._rulesWithParentScopes=a}_rulesWithParentScopes;static _cmpBySpecificity(t,a){if(t.scopeDepth!==a.scopeDepth)return a.scopeDepth-t.scopeDepth;let o=0,r=0;for(;t.parentScopes[o]===">"&&o++,a.parentScopes[r]===">"&&r++,!(o>=t.parentScopes.length||r>=a.parentScopes.length);){let s=a.parentScopes[r].length-t.parentScopes[o].length;if(s!==0)return s;o++,r++}return a.parentScopes.length-t.parentScopes.length}match(t){if(t!==""){let o=t.indexOf("."),r,s;if(o===-1?(r=t,s=""):(r=t.substring(0,o),s=t.substring(o+1)),this._children.hasOwnProperty(r))return this._children[r].match(s)}let a=this._rulesWithParentScopes.concat(this._mainRule);return a.sort(Eo._cmpBySpecificity),a}insert(t,a,o,r,s,n){if(a===""){this._doInsertHere(t,o,r,s,n);return}let i=a.indexOf("."),l,u;i===-1?(l=a,u=""):(l=a.substring(0,i),u=a.substring(i+1));let f;this._children.hasOwnProperty(l)?f=this._children[l]:(f=new Eo(this._mainRule.clone(),Do.cloneArr(this._rulesWithParentScopes)),this._children[l]=f),f.insert(t+1,u,o,r,s,n)}_doInsertHere(t,a,o,r,s){if(a===null){this._mainRule.acceptOverwrite(t,o,r,s);return}for(let n=0,i=this._rulesWithParentScopes.length;n<i;n++){let l=this._rulesWithParentScopes[n];if(on(l.parentScopes,a)===0){l.acceptOverwrite(t,o,r,s);return}}o===-1&&(o=this._mainRule.fontStyle),r===0&&(r=this._mainRule.foreground),s===0&&(s=this._mainRule.background),this._rulesWithParentScopes.push(new Do(t,a,o,r,s))}},ot=class Ae{static toBinaryStr(t){return t.toString(2).padStart(32,"0")}static print(t){let a=Ae.getLanguageId(t),o=Ae.getTokenType(t),r=Ae.getFontStyle(t),s=Ae.getForeground(t),n=Ae.getBackground(t);console.log({languageId:a,tokenType:o,fontStyle:r,foreground:s,background:n})}static getLanguageId(t){return(t&255)>>>0}static getTokenType(t){return(t&768)>>>8}static containsBalancedBrackets(t){return(t&1024)!==0}static getFontStyle(t){return(t&30720)>>>11}static getForeground(t){return(t&16744448)>>>15}static getBackground(t){return(t&4278190080)>>>24}static set(t,a,o,r,s,n,i){let l=Ae.getLanguageId(t),u=Ae.getTokenType(t),f=Ae.containsBalancedBrackets(t)?1:0,d=Ae.getFontStyle(t),p=Ae.getForeground(t),c=Ae.getBackground(t);return a!==0&&(l=a),o!==8&&(u=o),r!==null&&(f=r?1:0),s!==-1&&(d=s),n!==0&&(p=n),i!==0&&(c=i),(l<<0|u<<8|f<<10|d<<11|p<<15|c<<24)>>>0}};function ba(e,t){let a=[],o=ld(e),r=o.next();for(;r!==null;){let l=0;if(r.length===2&&r.charAt(1)===":"){switch(r.charAt(0)){case"R":l=1;break;case"L":l=-1;break;default:console.log(`Unknown priority ${r} in scope selector`)}r=o.next()}let u=n();if(a.push({matcher:u,priority:l}),r!==",")break;r=o.next()}return a;function s(){if(r==="-"){r=o.next();let l=s();return u=>!!l&&!l(u)}if(r==="("){r=o.next();let l=i();return r===")"&&(r=o.next()),l}if($s(r)){let l=[];do l.push(r),r=o.next();while($s(r));return u=>t(l,u)}return null}function n(){let l=[],u=s();for(;u;)l.push(u),u=s();return f=>l.every(d=>d(f))}function i(){let l=[],u=n();for(;u&&(l.push(u),r==="|"||r===",");){do r=o.next();while(r==="|"||r===",");u=n()}return f=>l.some(d=>d(f))}}function $s(e){return!!e&&!!e.match(/[\w\.:]+/)}function ld(e){let t=/([LR]:|[\w\.:][\w\.:\-]*|[\,\|\-\(\)])/g,a=t.exec(e);return{next:()=>{if(!a)return null;let o=a[0];return a=t.exec(e),o}}}function un(e){typeof e.dispose=="function"&&e.dispose()}var Ut=class{constructor(e){this.scopeName=e}toKey(){return this.scopeName}},ud=class{constructor(e,t){this.scopeName=e,this.ruleName=t}toKey(){return`${this.scopeName}#${this.ruleName}`}},dd=class{_references=[];_seenReferenceKeys=new Set;get references(){return this._references}visitedRule=new Set;add(e){let t=e.toKey();this._seenReferenceKeys.has(t)||(this._seenReferenceKeys.add(t),this._references.push(e))}},fd=class{constructor(e,t){this.repo=e,this.initialScopeName=t,this.seenFullScopeRequests.add(this.initialScopeName),this.Q=[new Ut(this.initialScopeName)]}seenFullScopeRequests=new Set;seenPartialScopeRequests=new Set;Q;processQueue(){let e=this.Q;this.Q=[];let t=new dd;for(let a of e)cd(a,this.initialScopeName,this.repo,t);for(let a of t.references)if(a instanceof Ut){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 cd(e,t,a,o){let r=a.lookup(e.scopeName);if(!r){if(e.scopeName===t)throw new Error(`No grammar provided for <${t}>`);return}let s=a.lookup(t);e instanceof Ut?ya({baseGrammar:s,selfGrammar:r},o):_o(e.ruleName,{baseGrammar:s,selfGrammar:r,repository:r.repository},o);let n=a.injections(e.scopeName);if(n)for(let i of n)o.add(new Ut(i))}function _o(e,t,a){if(t.repository&&t.repository[e]){let o=t.repository[e];ka([o],t,a)}}function ya(e,t){e.selfGrammar.patterns&&Array.isArray(e.selfGrammar.patterns)&&ka(e.selfGrammar.patterns,{...e,repository:e.selfGrammar.repository},t),e.selfGrammar.injections&&ka(Object.values(e.selfGrammar.injections),{...e,repository:e.selfGrammar.repository},t)}function ka(e,t,a){for(let o of e){if(a.visitedRule.has(o))continue;a.visitedRule.add(o);let r=o.repository?en({},t.repository,o.repository):t.repository;Array.isArray(o.patterns)&&ka(o.patterns,{...t,repository:r},a);let s=o.include;if(!s)continue;let n=dn(s);switch(n.kind){case 0:ya({...t,selfGrammar:t.baseGrammar},a);break;case 1:ya(t,a);break;case 2:_o(n.ruleName,{...t,repository:r},a);break;case 3:case 4:let i=n.scopeName===t.selfGrammar.scopeName?t.selfGrammar:n.scopeName===t.baseGrammar.scopeName?t.baseGrammar:void 0;if(i){let l={baseGrammar:t.baseGrammar,selfGrammar:i,repository:r};n.kind===4?_o(n.ruleName,l,a):ya(l,a)}else n.kind===4?a.add(new ud(n.scopeName,n.ruleName)):a.add(new Ut(n.scopeName));break}}}var pd=class{kind=0},md=class{kind=1},hd=class{constructor(e){this.ruleName=e}kind=2},gd=class{constructor(e){this.scopeName=e}kind=3},wd=class{constructor(e,t){this.scopeName=e,this.ruleName=t}kind=4};function dn(e){if(e==="$base")return new pd;if(e==="$self")return new md;let t=e.indexOf("#");if(t===-1)return new gd(e);if(t===0)return new hd(e.substring(1));{let a=e.substring(0,t),o=e.substring(t+1);return new wd(a,o)}}var xd=/\\(\d+)/,Xs=/\\(\d+)/g;var Ld=-1,fn=-2;var Wt=class{$location;id;_nameIsCapturing;_name;_contentNameIsCapturing;_contentName;constructor(e,t,a,o){this.$location=e,this.id=t,this._name=a||null,this._nameIsCapturing=Ia.hasCaptures(this._name),this._contentName=o||null,this._contentNameIsCapturing=Ia.hasCaptures(this._contentName)}get debugName(){let e=this.$location?`${tn(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:Ia.replaceCaptures(this._name,e,t)}getContentName(e,t){return!this._contentNameIsCapturing||this._contentName===null?this._contentName:Ia.replaceCaptures(this._contentName,e,t)}},Cd=class extends Wt{retokenizeCapturedWithRuleId;constructor(e,t,a,o,r){super(e,t,a,o),this.retokenizeCapturedWithRuleId=r}dispose(){}collectPatterns(e,t){throw new Error("Not supported!")}compile(e,t){throw new Error("Not supported!")}compileAG(e,t,a,o){throw new Error("Not supported!")}},Id=class extends Wt{_match;captures;_cachedCompiledPatterns;constructor(e,t,a,o,r){super(e,t,a,null),this._match=new qt(o,this.id),this.captures=r,this._cachedCompiledPatterns=null}dispose(){this._cachedCompiledPatterns&&(this._cachedCompiledPatterns.dispose(),this._cachedCompiledPatterns=null)}get debugMatchRegExp(){return`${this._match.source}`}collectPatterns(e,t){t.push(this._match)}compile(e,t){return this._getCachedCompiledPatterns(e).compile(e)}compileAG(e,t,a,o){return this._getCachedCompiledPatterns(e).compileAG(e,a,o)}_getCachedCompiledPatterns(e){return this._cachedCompiledPatterns||(this._cachedCompiledPatterns=new Gt,this.collectPatterns(e,this._cachedCompiledPatterns)),this._cachedCompiledPatterns}},Qs=class extends Wt{hasMissingPatterns;patterns;_cachedCompiledPatterns;constructor(e,t,a,o,r){super(e,t,a,o),this.patterns=r.patterns,this.hasMissingPatterns=r.hasMissingPatterns,this._cachedCompiledPatterns=null}dispose(){this._cachedCompiledPatterns&&(this._cachedCompiledPatterns.dispose(),this._cachedCompiledPatterns=null)}collectPatterns(e,t){for(let a of this.patterns)e.getRule(a).collectPatterns(e,t)}compile(e,t){return this._getCachedCompiledPatterns(e).compile(e)}compileAG(e,t,a,o){return this._getCachedCompiledPatterns(e).compileAG(e,a,o)}_getCachedCompiledPatterns(e){return this._cachedCompiledPatterns||(this._cachedCompiledPatterns=new Gt,this.collectPatterns(e,this._cachedCompiledPatterns)),this._cachedCompiledPatterns}},No=class extends Wt{_begin;beginCaptures;_end;endHasBackReferences;endCaptures;applyEndPatternLast;hasMissingPatterns;patterns;_cachedCompiledPatterns;constructor(e,t,a,o,r,s,n,i,l,u){super(e,t,a,o),this._begin=new qt(r,this.id),this.beginCaptures=s,this._end=new qt(n||"\uFFFF",-1),this.endHasBackReferences=this._end.hasBackReferences,this.endCaptures=i,this.applyEndPatternLast=l||!1,this.patterns=u.patterns,this.hasMissingPatterns=u.hasMissingPatterns,this._cachedCompiledPatterns=null}dispose(){this._cachedCompiledPatterns&&(this._cachedCompiledPatterns.dispose(),this._cachedCompiledPatterns=null)}get debugBeginRegExp(){return`${this._begin.source}`}get debugEndRegExp(){return`${this._end.source}`}getEndWithResolvedBackReferences(e,t){return this._end.resolveBackReferences(e,t)}collectPatterns(e,t){t.push(this._begin)}compile(e,t){return this._getCachedCompiledPatterns(e,t).compile(e)}compileAG(e,t,a,o){return this._getCachedCompiledPatterns(e,t).compileAG(e,a,o)}_getCachedCompiledPatterns(e,t){if(!this._cachedCompiledPatterns){this._cachedCompiledPatterns=new Gt;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}},Ta=class extends Wt{_begin;beginCaptures;whileCaptures;_while;whileHasBackReferences;hasMissingPatterns;patterns;_cachedCompiledPatterns;_cachedCompiledWhilePatterns;constructor(e,t,a,o,r,s,n,i,l){super(e,t,a,o),this._begin=new qt(r,this.id),this.beginCaptures=s,this.whileCaptures=i,this._while=new qt(n,fn),this.whileHasBackReferences=this._while.hasBackReferences,this.patterns=l.patterns,this.hasMissingPatterns=l.hasMissingPatterns,this._cachedCompiledPatterns=null,this._cachedCompiledWhilePatterns=null}dispose(){this._cachedCompiledPatterns&&(this._cachedCompiledPatterns.dispose(),this._cachedCompiledPatterns=null),this._cachedCompiledWhilePatterns&&(this._cachedCompiledWhilePatterns.dispose(),this._cachedCompiledWhilePatterns=null)}get debugBeginRegExp(){return`${this._begin.source}`}get debugWhileRegExp(){return`${this._while.source}`}getWhileWithResolvedBackReferences(e,t){return this._while.resolveBackReferences(e,t)}collectPatterns(e,t){t.push(this._begin)}compile(e,t){return this._getCachedCompiledPatterns(e).compile(e)}compileAG(e,t,a,o){return this._getCachedCompiledPatterns(e).compileAG(e,a,o)}_getCachedCompiledPatterns(e){if(!this._cachedCompiledPatterns){this._cachedCompiledPatterns=new Gt;for(let t of this.patterns)e.getRule(t).collectPatterns(e,this._cachedCompiledPatterns)}return this._cachedCompiledPatterns}compileWhile(e,t){return this._getCachedCompiledWhilePatterns(e,t).compile(e)}compileWhileAG(e,t,a,o){return this._getCachedCompiledWhilePatterns(e,t).compileAG(e,a,o)}_getCachedCompiledWhilePatterns(e,t){return this._cachedCompiledWhilePatterns||(this._cachedCompiledWhilePatterns=new Gt,this._cachedCompiledWhilePatterns.push(this._while.hasBackReferences?this._while.clone():this._while)),this._while.hasBackReferences&&this._cachedCompiledWhilePatterns.setSource(0,t||"\uFFFF"),this._cachedCompiledWhilePatterns}},cn=class Ce{static createCaptureRule(t,a,o,r,s){return t.registerRule(n=>new Cd(a,n,o,r,s))}static getCompiledRuleId(t,a,o){return t.id||a.registerRule(r=>{if(t.id=r,t.match)return new Id(t.$vscodeTextmateLocation,t.id,t.name,t.match,Ce._compileCaptures(t.captures,a,o));if(typeof t.begin>"u"){t.repository&&(o=en({},o,t.repository));let s=t.patterns;return typeof s>"u"&&t.include&&(s=[{include:t.include}]),new Qs(t.$vscodeTextmateLocation,t.id,t.name,t.contentName,Ce._compilePatterns(s,a,o))}return t.while?new Ta(t.$vscodeTextmateLocation,t.id,t.name,t.contentName,t.begin,Ce._compileCaptures(t.beginCaptures||t.captures,a,o),t.while,Ce._compileCaptures(t.whileCaptures||t.captures,a,o),Ce._compilePatterns(t.patterns,a,o)):new No(t.$vscodeTextmateLocation,t.id,t.name,t.contentName,t.begin,Ce._compileCaptures(t.beginCaptures||t.captures,a,o),t.end,Ce._compileCaptures(t.endCaptures||t.captures,a,o),t.applyEndPatternLast,Ce._compilePatterns(t.patterns,a,o))}),t.id}static _compileCaptures(t,a,o){let r=[];if(t){let s=0;for(let n in t){if(n==="$vscodeTextmateLocation")continue;let i=parseInt(n,10);i>s&&(s=i)}for(let n=0;n<=s;n++)r[n]=null;for(let n in t){if(n==="$vscodeTextmateLocation")continue;let i=parseInt(n,10),l=0;t[n].patterns&&(l=Ce.getCompiledRuleId(t[n],a,o)),r[i]=Ce.createCaptureRule(a,t[n].$vscodeTextmateLocation,t[n].name,t[n].contentName,l)}}return r}static _compilePatterns(t,a,o){let r=[];if(t)for(let s=0,n=t.length;s<n;s++){let i=t[s],l=-1;if(i.include){let u=dn(i.include);switch(u.kind){case 0:case 1:l=Ce.getCompiledRuleId(o[i.include],a,o);break;case 2:let f=o[u.ruleName];f&&(l=Ce.getCompiledRuleId(f,a,o));break;case 3:case 4:let d=u.scopeName,p=u.kind===4?u.ruleName:null,c=a.getExternalGrammar(d,o);if(c)if(p){let m=c.repository[p];m&&(l=Ce.getCompiledRuleId(m,a,c.repository))}else l=Ce.getCompiledRuleId(c.repository.$self,a,c.repository);break}}else l=Ce.getCompiledRuleId(i,a,o);if(l!==-1){let u=a.getRule(l),f=!1;if((u instanceof Qs||u instanceof No||u instanceof Ta)&&u.hasMissingPatterns&&u.patterns.length===0&&(f=!0),f)continue;r.push(l)}}return{patterns:r,hasMissingPatterns:(t?t.length:0)!==r.length}}},qt=class pn{source;ruleId;hasAnchor;hasBackReferences;_anchorCache;constructor(t,a){if(t&&typeof t=="string"){let o=t.length,r=0,s=[],n=!1;for(let i=0;i<o;i++)if(t.charAt(i)==="\\"&&i+1<o){let u=t.charAt(i+1);u==="z"?(s.push(t.substring(r,i)),s.push("$(?!\\n)(?<!\\n)"),r=i+2):(u==="A"||u==="G")&&(n=!0),i++}this.hasAnchor=n,r===0?this.source=t:(s.push(t.substring(r,o)),this.source=s.join(""))}else this.hasAnchor=!1,this.source=t;this.hasAnchor?this._anchorCache=this._buildAnchorCache():this._anchorCache=null,this.ruleId=a,typeof this.source=="string"?this.hasBackReferences=xd.test(this.source):this.hasBackReferences=!1}clone(){return new pn(this.source,this.ruleId)}setSource(t){this.source!==t&&(this.source=t,this.hasAnchor&&(this._anchorCache=this._buildAnchorCache()))}resolveBackReferences(t,a){if(typeof this.source!="string")throw new Error("This method should only be called if the source is a string");let o=a.map(r=>t.substring(r.start,r.end));return Xs.lastIndex=0,this.source.replace(Xs,(r,s)=>rn(o[parseInt(s,10)]||""))}_buildAnchorCache(){if(typeof this.source!="string")throw new Error("This method should only be called if the source is a string");let t=[],a=[],o=[],r=[],s,n,i,l;for(s=0,n=this.source.length;s<n;s++)i=this.source.charAt(s),t[s]=i,a[s]=i,o[s]=i,r[s]=i,i==="\\"&&s+1<n&&(l=this.source.charAt(s+1),l==="A"?(t[s+1]="\uFFFF",a[s+1]="\uFFFF",o[s+1]="A",r[s+1]="A"):l==="G"?(t[s+1]="\uFFFF",a[s+1]="G",o[s+1]="\uFFFF",r[s+1]="G"):(t[s+1]=l,a[s+1]=l,o[s+1]=l,r[s+1]=l),s++);return{A0_G0:t.join(""),A0_G1:a.join(""),A1_G0:o.join(""),A1_G1:r.join("")}}resolveAnchors(t,a){return!this.hasAnchor||!this._anchorCache||typeof this.source!="string"?this.source:t?a?this._anchorCache.A1_G1:this._anchorCache.A1_G0:a?this._anchorCache.A0_G1:this._anchorCache.A0_G0}},Gt=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 Ks(e,t,this._items.map(a=>a.ruleId))}return this._cached}compileAG(e,t,a){return this._hasAnchors?t?a?(this._anchorCache.A1_G1||(this._anchorCache.A1_G1=this._resolveAnchors(e,t,a)),this._anchorCache.A1_G1):(this._anchorCache.A1_G0||(this._anchorCache.A1_G0=this._resolveAnchors(e,t,a)),this._anchorCache.A1_G0):a?(this._anchorCache.A0_G1||(this._anchorCache.A0_G1=this._resolveAnchors(e,t,a)),this._anchorCache.A0_G1):(this._anchorCache.A0_G0||(this._anchorCache.A0_G0=this._resolveAnchors(e,t,a)),this._anchorCache.A0_G0):this.compile(e)}_resolveAnchors(e,t,a){let o=this._items.map(r=>r.resolveAnchors(t,a));return new Ks(e,o,this._items.map(r=>r.ruleId))}},Ks=class{constructor(e,t,a){this.regExps=t,this.rules=a,this.scanner=e.createOnigScanner(t)}scanner;dispose(){typeof this.scanner.dispose=="function"&&this.scanner.dispose()}toString(){let e=[];for(let t=0,a=this.rules.length;t<a;t++)e.push(" - "+this.rules[t]+": "+this.regExps[t]);return e.join(`
|
|
3
|
+
`)}findNextMatchSync(e,t,a){let o=this.scanner.findNextMatchSync(e,t,a);return o?{ruleId:this.rules[o.index],captureIndices:o.captureIndices}:null}},Bo=class{constructor(e,t){this.languageId=e,this.tokenType=t}},Sd=class Oo{_defaultAttributes;_embeddedLanguagesMatcher;constructor(t,a){this._defaultAttributes=new Bo(t,8),this._embeddedLanguagesMatcher=new yd(Object.entries(a||{}))}getDefaultAttributes(){return this._defaultAttributes}getBasicScopeAttributes(t){return t===null?Oo._NULL_SCOPE_METADATA:this._getBasicScopeAttributes.get(t)}static _NULL_SCOPE_METADATA=new Bo(0,0);_getBasicScopeAttributes=new sn(t=>{let a=this._scopeToLanguage(t),o=this._toStandardTokenType(t);return new Bo(a,o)});_scopeToLanguage(t){return this._embeddedLanguagesMatcher.match(t)||0}_toStandardTokenType(t){let a=t.match(Oo.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/},yd=class{values;scopesRegExp;constructor(e){if(e.length===0)this.values=null,this.scopesRegExp=null;else{this.values=new Map(e);let t=e.map(([a,o])=>rn(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])}},Yw={InDebugMode:typeof process<"u"&&!!process.env.VSCODE_TEXTMATE_DEBUG},mn=!1,Js=class{constructor(e,t){this.stack=e,this.stoppedEarly=t}};function hn(e,t,a,o,r,s,n,i){let l=t.content.length,u=!1,f=-1;if(n){let c=bd(e,t,a,o,r,s);r=c.stack,o=c.linePos,a=c.isFirstLine,f=c.anchorPosition}let d=Date.now();for(;!u;){if(i!==0&&Date.now()-d>i)return new Js(r,!0);p()}return new Js(r,!1);function p(){let c=kd(e,t,a,o,r,f);if(!c){s.produce(r,l),u=!0;return}let m=c.captureIndices,L=c.matchedRuleId,x=m&&m.length>0?m[0].end>o:!1;if(L===Ld){let w=r.getRule(e);s.produce(r,m[0].start),r=r.withContentNameScopesList(r.nameScopesList),Nt(e,t,a,r,s,w.endCaptures,m),s.produce(r,m[0].end);let g=r;if(r=r.parent,f=g.getAnchorPos(),!x&&g.getEnterPos()===o){r=g,s.produce(r,l),u=!0;return}}else{let w=e.getRule(L);s.produce(r,m[0].start);let g=r,h=w.getName(t.content,m),I=r.contentNameScopesList.pushAttributed(h,e);if(r=r.push(L,o,f,m[0].end===l,null,I,I),w instanceof No){let T=w;Nt(e,t,a,r,s,T.beginCaptures,m),s.produce(r,m[0].end),f=m[0].end;let k=T.getContentName(t.content,m),y=I.pushAttributed(k,e);if(r=r.withContentNameScopesList(y),T.endHasBackReferences&&(r=r.withEndRule(T.getEndWithResolvedBackReferences(t.content,m))),!x&&g.hasSameRuleAs(r)){r=r.pop(),s.produce(r,l),u=!0;return}}else if(w instanceof Ta){let T=w;Nt(e,t,a,r,s,T.beginCaptures,m),s.produce(r,m[0].end),f=m[0].end;let k=T.getContentName(t.content,m),y=I.pushAttributed(k,e);if(r=r.withContentNameScopesList(y),T.whileHasBackReferences&&(r=r.withEndRule(T.getWhileWithResolvedBackReferences(t.content,m))),!x&&g.hasSameRuleAs(r)){r=r.pop(),s.produce(r,l),u=!0;return}}else if(Nt(e,t,a,r,s,w.captures,m),s.produce(r,m[0].end),r=r.pop(),!x){r=r.safePop(),s.produce(r,l),u=!0;return}}m[0].end>o&&(o=m[0].end,a=!1)}}function bd(e,t,a,o,r,s){let n=r.beginRuleCapturedEOL?0:-1,i=[];for(let l=r;l;l=l.pop()){let u=l.getRule(e);u instanceof Ta&&i.push({rule:u,stack:l})}for(let l=i.pop();l;l=i.pop()){let{ruleScanner:u,findOptions:f}=Ad(l.rule,e,l.stack.endRule,a,o===n),d=u.findNextMatchSync(t,o,f);if(d){if(d.ruleId!==fn){r=l.stack.pop();break}d.captureIndices&&d.captureIndices.length&&(s.produce(l.stack,d.captureIndices[0].start),Nt(e,t,a,l.stack,s,l.rule.whileCaptures,d.captureIndices),s.produce(l.stack,d.captureIndices[0].end),n=d.captureIndices[0].end,d.captureIndices[0].end>o&&(o=d.captureIndices[0].end,a=!1))}else{r=l.stack.pop();break}}return{stack:r,linePos:o,anchorPosition:n,isFirstLine:a}}function kd(e,t,a,o,r,s){let n=Td(e,t,a,o,r,s),i=e.getInjections();if(i.length===0)return n;let l=Pd(i,e,t,a,o,r,s);if(!l)return n;if(!n)return l;let u=n.captureIndices[0].start,f=l.captureIndices[0].start;return f<u||l.priorityMatch&&f===u?l:n}function Td(e,t,a,o,r,s){let n=r.getRule(e),{ruleScanner:i,findOptions:l}=gn(n,e,r.endRule,a,o===s),u=i.findNextMatchSync(t,o,l);return u?{captureIndices:u.captureIndices,matchedRuleId:u.ruleId}:null}function Pd(e,t,a,o,r,s,n){let i=Number.MAX_VALUE,l=null,u,f=0,d=s.contentNameScopesList.getScopeNames();for(let p=0,c=e.length;p<c;p++){let m=e[p];if(!m.matcher(d))continue;let L=t.getRule(m.ruleId),{ruleScanner:x,findOptions:w}=gn(L,t,null,o,r===n),g=x.findNextMatchSync(a,r,w);if(!g)continue;let h=g.captureIndices[0].start;if(!(h>=i)&&(i=h,l=g.captureIndices,u=g.ruleId,f=m.priority,i===r))break}return l?{priorityMatch:f===-1,captureIndices:l,matchedRuleId:u}:null}function gn(e,t,a,o,r){if(mn){let n=e.compile(t,a),i=wn(o,r);return{ruleScanner:n,findOptions:i}}return{ruleScanner:e.compileAG(t,a,o,r),findOptions:0}}function Ad(e,t,a,o,r){if(mn){let n=e.compileWhile(t,a),i=wn(o,r);return{ruleScanner:n,findOptions:i}}return{ruleScanner:e.compileWhileAG(t,a,o,r),findOptions:0}}function wn(e,t){let a=0;return e||(a|=1),t||(a|=4),a}function Nt(e,t,a,o,r,s,n){if(s.length===0)return;let i=t.content,l=Math.min(s.length,n.length),u=[],f=n[0].end;for(let d=0;d<l;d++){let p=s[d];if(p===null)continue;let c=n[d];if(c.length===0)continue;if(c.start>f)break;for(;u.length>0&&u[u.length-1].endPos<=c.start;)r.produceFromScopes(u[u.length-1].scopes,u[u.length-1].endPos),u.pop();if(u.length>0?r.produceFromScopes(u[u.length-1].scopes,c.start):r.produce(o,c.start),p.retokenizeCapturedWithRuleId){let L=p.getName(i,n),x=o.contentNameScopesList.pushAttributed(L,e),w=p.getContentName(i,n),g=x.pushAttributed(w,e),h=o.push(p.retokenizeCapturedWithRuleId,c.start,-1,!1,null,x,g),I=e.createOnigString(i.substring(0,c.end));hn(e,I,a&&c.start===0,c.start,h,r,!1,0),un(I);continue}let m=p.getName(i,n);if(m!==null){let x=(u.length>0?u[u.length-1].scopes:o.contentNameScopesList).pushAttributed(m,e);u.push(new vd(x,c.end))}}for(;u.length>0;)r.produceFromScopes(u[u.length-1].scopes,u[u.length-1].endPos),u.pop()}var vd=class{scopes;endPos;constructor(e,t){this.scopes=e,this.endPos=t}};function Md(e,t,a,o,r,s,n,i){return new Fd(e,t,a,o,r,s,n,i)}function Zs(e,t,a,o,r){let s=ba(t,Pa),n=cn.getCompiledRuleId(a,o,r.repository);for(let i of s)e.push({debugSelector:t,matcher:i.matcher,ruleId:n,grammar:r,priority:i.priority})}function Pa(e,t){if(t.length<e.length)return!1;let a=0;return e.every(o=>{for(let r=a;r<t.length;r++)if(Rd(t[r],o))return a=r+1,!0;return!1})}function Rd(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 Fd=class{constructor(e,t,a,o,r,s,n,i){if(this._rootScopeName=e,this.balancedBracketSelectors=s,this._onigLib=i,this._basicScopeAttributesProvider=new Sd(a,o),this._rootId=-1,this._lastRuleId=0,this._ruleId2desc=[null],this._includedGrammars={},this._grammarRepository=n,this._grammar=Ys(t,null),this._injections=null,this._tokenTypeMatchers=[],r)for(let l of Object.keys(r)){let u=ba(l,Pa);for(let f of u)this._tokenTypeMatchers.push({matcher:f.matcher,type:r[l]})}}_rootId;_lastRuleId;_ruleId2desc;_includedGrammars;_grammarRepository;_grammar;_injections;_basicScopeAttributesProvider;_tokenTypeMatchers;get themeProvider(){return this._grammarRepository}dispose(){for(let e of this._ruleId2desc)e&&e.dispose()}createOnigScanner(e){return this._onigLib.createOnigScanner(e)}createOnigString(e){return this._onigLib.createOnigString(e)}getMetadataForScope(e){return this._basicScopeAttributesProvider.getBasicScopeAttributes(e)}_collectInjections(){let e={lookup:r=>r===this._rootScopeName?this._grammar:this.getExternalGrammar(r),injections:r=>this._grammarRepository.injections(r)},t=[],a=this._rootScopeName,o=e.lookup(a);if(o){let r=o.injections;if(r)for(let n in r)Zs(t,n,r[n],this,o);let s=this._grammarRepository.injections(a);s&&s.forEach(n=>{let i=this.getExternalGrammar(n);if(i){let l=i.injectionSelector;l&&Zs(t,l,i,this,i)}})}return t.sort((r,s)=>r.priority-s.priority),t}getInjections(){return this._injections===null&&(this._injections=this._collectInjections()),this._injections}registerRule(e){let t=++this._lastRuleId,a=e(t);return this._ruleId2desc[t]=a,a}getRule(e){return this._ruleId2desc[e]}getExternalGrammar(e,t){if(this._includedGrammars[e])return this._includedGrammars[e];if(this._grammarRepository){let a=this._grammarRepository.lookup(e);if(a)return this._includedGrammars[e]=Ys(a,t&&t.$base),this._includedGrammars[e]}}tokenizeLine(e,t,a=0){let o=this._tokenize(e,t,!1,a);return{tokens:o.lineTokens.getResult(o.ruleStack,o.lineLength),ruleStack:o.ruleStack,stoppedEarly:o.stoppedEarly}}tokenizeLine2(e,t,a=0){let o=this._tokenize(e,t,!0,a);return{tokens:o.lineTokens.getBinaryResult(o.ruleStack,o.lineLength),ruleStack:o.ruleStack,stoppedEarly:o.stoppedEarly}}_tokenize(e,t,a,o){this._rootId===-1&&(this._rootId=cn.getCompiledRuleId(this._grammar.repository.$self,this,this._grammar.repository),this.getInjections());let r;if(!t||t===Ho.NULL){r=!0;let u=this._basicScopeAttributesProvider.getDefaultAttributes(),f=this.themeProvider.getDefaults(),d=ot.set(0,u.languageId,u.tokenType,null,f.fontStyle,f.foregroundId,f.backgroundId),p=this.getRule(this._rootId).getName(null,null),c;p?c=Ot.createRootAndLookUpScopeName(p,d,this):c=Ot.createRoot("unknown",d),t=new Ho(null,this._rootId,-1,-1,!1,null,c,c)}else r=!1,t.reset();e=e+`
|
|
4
|
+
`;let s=this.createOnigString(e),n=s.content.length,i=new Dd(a,e,this._tokenTypeMatchers,this.balancedBracketSelectors),l=hn(this,s,r,0,t,i,!0,o);return un(s),{lineLength:n,lineTokens:i,ruleStack:l.stack,stoppedEarly:l.stoppedEarly}}};function Ys(e,t){return e=Ju(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 Ot=class _e{constructor(t,a,o){this.parent=t,this.scopePath=a,this.tokenAttributes=o}static fromExtension(t,a){let o=t,r=t?.scopePath??null;for(let s of a)r=Fo.push(r,s.scopeNames),o=new _e(o,r,s.encodedTokenAttributes);return o}static createRoot(t,a){return new _e(null,new Fo(null,t),a)}static createRootAndLookUpScopeName(t,a,o){let r=o.getMetadataForScope(t),s=new Fo(null,t),n=o.themeProvider.themeMatch(s),i=_e.mergeAttributes(a,r,n);return new _e(null,s,i)}get scopeName(){return this.scopePath.scopeName}toString(){return this.getScopeNames().join(" ")}equals(t){return _e.equals(this,t)}static equals(t,a){do{if(t===a||!t&&!a)return!0;if(!t||!a||t.scopeName!==a.scopeName||t.tokenAttributes!==a.tokenAttributes)return!1;t=t.parent,a=a.parent}while(!0)}static mergeAttributes(t,a,o){let r=-1,s=0,n=0;return o!==null&&(r=o.fontStyle,s=o.foregroundId,n=o.backgroundId),ot.set(t,a.languageId,a.tokenType,null,r,s,n)}pushAttributed(t,a){if(t===null)return this;if(t.indexOf(" ")===-1)return _e._pushAttributed(this,t,a);let o=t.split(/ /g),r=this;for(let s of o)r=_e._pushAttributed(r,s,a);return r}static _pushAttributed(t,a,o){let r=o.getMetadataForScope(a),s=t.scopePath.push(a),n=o.themeProvider.themeMatch(s),i=_e.mergeAttributes(t.tokenAttributes,r,n);return new _e(t,s,i)}getScopeNames(){return this.scopePath.getSegments()}getExtensionIfDefined(t){let a=[],o=this;for(;o&&o!==t;)a.push({encodedTokenAttributes:o.tokenAttributes,scopeNames:o.scopePath.getExtensionIfDefined(o.parent?.scopePath??null)}),o=o.parent;return o===t?a.reverse():void 0}},Ho=class at{constructor(t,a,o,r,s,n,i,l){this.parent=t,this.ruleId=a,this.beginRuleCapturedEOL=s,this.endRule=n,this.nameScopesList=i,this.contentNameScopesList=l,this.depth=this.parent?this.parent.depth+1:1,this._enterPos=o,this._anchorPos=r}_stackElementBrand=void 0;static NULL=new at(null,0,0,0,!1,null,null,null);_enterPos;_anchorPos;depth;equals(t){return t===null?!1:at._equals(this,t)}static _equals(t,a){return t===a?!0:this._structuralEquals(t,a)?Ot.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(){at._reset(this)}pop(){return this.parent}safePop(){return this.parent?this.parent:this}push(t,a,o,r,s,n,i){return new at(this,t,a,o,r,s,n,i)}getEnterPos(){return this._enterPos}getAnchorPos(){return this._anchorPos}getRule(t){return t.getRule(this.ruleId)}toString(){let t=[];return this._writeString(t,0),"["+t.join(",")+"]"}_writeString(t,a){return this.parent&&(a=this.parent._writeString(t,a)),t[a++]=`(${this.ruleId}, ${this.nameScopesList?.toString()}, ${this.contentNameScopesList?.toString()})`,a}withContentNameScopesList(t){return this.contentNameScopesList===t?this:this.parent.push(this.ruleId,this._enterPos,this._anchorPos,this.beginRuleCapturedEOL,this.endRule,this.nameScopesList,t)}withEndRule(t){return this.endRule===t?this:new at(this.parent,this.ruleId,this._enterPos,this._anchorPos,this.beginRuleCapturedEOL,t,this.nameScopesList,this.contentNameScopesList)}hasSameRuleAs(t){let a=this;for(;a&&a._enterPos===t._enterPos;){if(a.ruleId===t.ruleId)return!0;a=a.parent}return!1}toStateStackFrame(){return{ruleId:this.ruleId,beginRuleCapturedEOL:this.beginRuleCapturedEOL,endRule:this.endRule,nameScopesList:this.nameScopesList?.getExtensionIfDefined(this.parent?.nameScopesList??null)??[],contentNameScopesList:this.contentNameScopesList?.getExtensionIfDefined(this.nameScopesList)??[]}}static pushFrame(t,a){let o=Ot.fromExtension(t?.nameScopesList??null,a.nameScopesList);return new at(t,a.ruleId,a.enterPos??-1,a.anchorPos??-1,a.beginRuleCapturedEOL,a.endRule,o,Ot.fromExtension(o,a.contentNameScopesList))}},Bd=class{balancedBracketScopes;unbalancedBracketScopes;allowAny=!1;constructor(e,t){this.balancedBracketScopes=e.flatMap(a=>a==="*"?(this.allowAny=!0,[]):ba(a,Pa).map(o=>o.matcher)),this.unbalancedBracketScopes=t.flatMap(a=>ba(a,Pa).map(o=>o.matcher))}get matchesAlways(){return this.allowAny&&this.unbalancedBracketScopes.length===0}get matchesNever(){return this.balancedBracketScopes.length===0&&!this.allowAny}match(e){for(let t of this.unbalancedBracketScopes)if(t(e))return!1;for(let t of this.balancedBracketScopes)if(t(e))return!0;return this.allowAny}},Dd=class{constructor(e,t,a,o){this.balancedBracketSelectors=o,this._emitBinaryTokens=e,this._tokenTypeOverrides=a,this._lineText=null,this._tokens=[],this._binaryTokens=[],this._lastTokenEndIndex=0}_emitBinaryTokens;_lineText;_tokens;_binaryTokens;_lastTokenEndIndex;_tokenTypeOverrides;produce(e,t){this.produceFromScopes(e.contentNameScopesList,t)}produceFromScopes(e,t){if(this._lastTokenEndIndex>=t)return;if(this._emitBinaryTokens){let o=e?.tokenAttributes??0,r=!1;if(this.balancedBracketSelectors?.matchesAlways&&(r=!0),this._tokenTypeOverrides.length>0||this.balancedBracketSelectors&&!this.balancedBracketSelectors.matchesAlways&&!this.balancedBracketSelectors.matchesNever){let s=e?.getScopeNames()??[];for(let n of this._tokenTypeOverrides)n.matcher(s)&&(o=ot.set(o,0,n.type,null,-1,0,0));this.balancedBracketSelectors&&(r=this.balancedBracketSelectors.match(s))}if(r&&(o=ot.set(o,0,8,r,-1,0,0)),this._binaryTokens.length>0&&this._binaryTokens[this._binaryTokens.length-1]===o){this._lastTokenEndIndex=t;return}this._binaryTokens.push(this._lastTokenEndIndex),this._binaryTokens.push(o),this._lastTokenEndIndex=t;return}let a=e?.getScopeNames()??[];this._tokens.push({startIndex:this._lastTokenEndIndex,endIndex:t,scopes:a}),this._lastTokenEndIndex=t}getResult(e,t){return this._tokens.length>0&&this._tokens[this._tokens.length-1].startIndex===t-1&&this._tokens.pop(),this._tokens.length===0&&(this._lastTokenEndIndex=-1,this.produce(e,t),this._tokens[this._tokens.length-1].startIndex=0),this._tokens}getBinaryResult(e,t){this._binaryTokens.length>0&&this._binaryTokens[this._binaryTokens.length-2]===t-1&&(this._binaryTokens.pop(),this._binaryTokens.pop()),this._binaryTokens.length===0&&(this._lastTokenEndIndex=-1,this.produce(e,t),this._binaryTokens[this._binaryTokens.length-2]=0);let a=new Uint32Array(this._binaryTokens.length);for(let o=0,r=this._binaryTokens.length;o<r;o++)a[o]=this._binaryTokens[o];return a}},Ed=class{constructor(e,t){this._onigLib=t,this._theme=e}_grammars=new Map;_rawGrammars=new Map;_injectionGrammars=new Map;_theme;dispose(){for(let e of this._grammars.values())e.dispose()}setTheme(e){this._theme=e}getColorMap(){return this._theme.getColorMap()}addGrammar(e,t){this._rawGrammars.set(e.scopeName,e),t&&this._injectionGrammars.set(e.scopeName,t)}lookup(e){return this._rawGrammars.get(e)}injections(e){return this._injectionGrammars.get(e)}getDefaults(){return this._theme.getDefaults()}themeMatch(e){return this._theme.match(e)}grammarForScopeName(e,t,a,o,r){if(!this._grammars.has(e)){let s=this._rawGrammars.get(e);if(!s)return null;this._grammars.set(e,Md(e,s,t,a,o,r,this,this._onigLib))}return this._grammars.get(e)}},xn=class{_options;_syncRegistry;_ensureGrammarCache;constructor(e){this._options=e,this._syncRegistry=new Ed(Ht.createFromRawTheme(e.theme,e.colorMap),e.onigLib),this._ensureGrammarCache=new Map}dispose(){this._syncRegistry.dispose()}setTheme(e,t){this._syncRegistry.setTheme(Ht.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 Bd(a.balancedBracketSelectors||[],a.unbalancedBracketSelectors||[]))}loadGrammar(e){return this._loadGrammar(e,0,null,null,null)}_loadGrammar(e,t,a,o,r){let s=new fd(this._syncRegistry,e);for(;s.Q.length>0;)s.Q.map(n=>this._loadSingleGrammar(n.scopeName)),s.processQueue();return this._grammarForScopeName(e,t,a,o,r)}_loadSingleGrammar(e){this._ensureGrammarCache.has(e)||(this._doLoadSingleGrammar(e),this._ensureGrammarCache.set(e,!0))}_doLoadSingleGrammar(e){let t=this._options.loadGrammar(e);if(t){let a=typeof this._options.getInjections=="function"?this._options.getInjections(e):void 0;this._syncRegistry.addGrammar(t,a)}}addGrammar(e,t=[],a=0,o=null){return this._syncRegistry.addGrammar(e,t),this._grammarForScopeName(e.scopeName,a,o)}_grammarForScopeName(e,t=0,a=null,o=null,r=null){return this._syncRegistry.grammarForScopeName(e,t,a,o,r)}},Aa=Ho.NULL;var _d=/["&'<>`]/g,Nd=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,Od=/[\x01-\t\v\f\x0E-\x1F\x7F\x81\x8D\x8F\x90\x9D\xA0-\uFFFF]/g,Hd=/[|\\{}()[\]^$+*?.]/g,Ln=new WeakMap;function Cn(e,t){if(e=e.replace(t.subset?Ud(t.subset):_d,o),t.subset||t.escapeOnly)return e;return e.replace(Nd,a).replace(Od,o);function a(r,s,n){return t.format((r.charCodeAt(0)-55296)*1024+r.charCodeAt(1)-56320+65536,n.charCodeAt(s+2),t)}function o(r,s,n){return t.format(r.charCodeAt(0),n.charCodeAt(s+1),t)}}function Ud(e){let t=Ln.get(e);return t||(t=qd(e),Ln.set(e,t)),t}function qd(e){let t=[],a=-1;for(;++a<e.length;)t.push(e[a].replace(Hd,"\\$&"));return new RegExp("(?:"+t.join("|")+")","g")}var Gd=/[\dA-Fa-f]/;function In(e,t,a){let o="&#x"+e.toString(16).toUpperCase();return a&&t&&!Gd.test(String.fromCharCode(t))?o:o+";"}var Wd=/\d/;function Sn(e,t,a){let o="&#"+String(e);return a&&t&&!Wd.test(String.fromCharCode(t))?o:o+";"}var yn=["AElig","AMP","Aacute","Acirc","Agrave","Aring","Atilde","Auml","COPY","Ccedil","ETH","Eacute","Ecirc","Egrave","Euml","GT","Iacute","Icirc","Igrave","Iuml","LT","Ntilde","Oacute","Ocirc","Ograve","Oslash","Otilde","Ouml","QUOT","REG","THORN","Uacute","Ucirc","Ugrave","Uuml","Yacute","aacute","acirc","acute","aelig","agrave","amp","aring","atilde","auml","brvbar","ccedil","cedil","cent","copy","curren","deg","divide","eacute","ecirc","egrave","eth","euml","frac12","frac14","frac34","gt","iacute","icirc","iexcl","igrave","iquest","iuml","laquo","lt","macr","micro","middot","nbsp","not","ntilde","oacute","ocirc","ograve","ordf","ordm","oslash","otilde","ouml","para","plusmn","pound","quot","raquo","reg","sect","shy","sup1","sup2","sup3","szlig","thorn","times","uacute","ucirc","ugrave","uml","uuml","yacute","yen","yuml"];var va={nbsp:"\xA0",iexcl:"\xA1",cent:"\xA2",pound:"\xA3",curren:"\xA4",yen:"\xA5",brvbar:"\xA6",sect:"\xA7",uml:"\xA8",copy:"\xA9",ordf:"\xAA",laquo:"\xAB",not:"\xAC",shy:"\xAD",reg:"\xAE",macr:"\xAF",deg:"\xB0",plusmn:"\xB1",sup2:"\xB2",sup3:"\xB3",acute:"\xB4",micro:"\xB5",para:"\xB6",middot:"\xB7",cedil:"\xB8",sup1:"\xB9",ordm:"\xBA",raquo:"\xBB",frac14:"\xBC",frac12:"\xBD",frac34:"\xBE",iquest:"\xBF",Agrave:"\xC0",Aacute:"\xC1",Acirc:"\xC2",Atilde:"\xC3",Auml:"\xC4",Aring:"\xC5",AElig:"\xC6",Ccedil:"\xC7",Egrave:"\xC8",Eacute:"\xC9",Ecirc:"\xCA",Euml:"\xCB",Igrave:"\xCC",Iacute:"\xCD",Icirc:"\xCE",Iuml:"\xCF",ETH:"\xD0",Ntilde:"\xD1",Ograve:"\xD2",Oacute:"\xD3",Ocirc:"\xD4",Otilde:"\xD5",Ouml:"\xD6",times:"\xD7",Oslash:"\xD8",Ugrave:"\xD9",Uacute:"\xDA",Ucirc:"\xDB",Uuml:"\xDC",Yacute:"\xDD",THORN:"\xDE",szlig:"\xDF",agrave:"\xE0",aacute:"\xE1",acirc:"\xE2",atilde:"\xE3",auml:"\xE4",aring:"\xE5",aelig:"\xE6",ccedil:"\xE7",egrave:"\xE8",eacute:"\xE9",ecirc:"\xEA",euml:"\xEB",igrave:"\xEC",iacute:"\xED",icirc:"\xEE",iuml:"\xEF",eth:"\xF0",ntilde:"\xF1",ograve:"\xF2",oacute:"\xF3",ocirc:"\xF4",otilde:"\xF5",ouml:"\xF6",divide:"\xF7",oslash:"\xF8",ugrave:"\xF9",uacute:"\xFA",ucirc:"\xFB",uuml:"\xFC",yacute:"\xFD",thorn:"\xFE",yuml:"\xFF",fnof:"\u0192",Alpha:"\u0391",Beta:"\u0392",Gamma:"\u0393",Delta:"\u0394",Epsilon:"\u0395",Zeta:"\u0396",Eta:"\u0397",Theta:"\u0398",Iota:"\u0399",Kappa:"\u039A",Lambda:"\u039B",Mu:"\u039C",Nu:"\u039D",Xi:"\u039E",Omicron:"\u039F",Pi:"\u03A0",Rho:"\u03A1",Sigma:"\u03A3",Tau:"\u03A4",Upsilon:"\u03A5",Phi:"\u03A6",Chi:"\u03A7",Psi:"\u03A8",Omega:"\u03A9",alpha:"\u03B1",beta:"\u03B2",gamma:"\u03B3",delta:"\u03B4",epsilon:"\u03B5",zeta:"\u03B6",eta:"\u03B7",theta:"\u03B8",iota:"\u03B9",kappa:"\u03BA",lambda:"\u03BB",mu:"\u03BC",nu:"\u03BD",xi:"\u03BE",omicron:"\u03BF",pi:"\u03C0",rho:"\u03C1",sigmaf:"\u03C2",sigma:"\u03C3",tau:"\u03C4",upsilon:"\u03C5",phi:"\u03C6",chi:"\u03C7",psi:"\u03C8",omega:"\u03C9",thetasym:"\u03D1",upsih:"\u03D2",piv:"\u03D6",bull:"\u2022",hellip:"\u2026",prime:"\u2032",Prime:"\u2033",oline:"\u203E",frasl:"\u2044",weierp:"\u2118",image:"\u2111",real:"\u211C",trade:"\u2122",alefsym:"\u2135",larr:"\u2190",uarr:"\u2191",rarr:"\u2192",darr:"\u2193",harr:"\u2194",crarr:"\u21B5",lArr:"\u21D0",uArr:"\u21D1",rArr:"\u21D2",dArr:"\u21D3",hArr:"\u21D4",forall:"\u2200",part:"\u2202",exist:"\u2203",empty:"\u2205",nabla:"\u2207",isin:"\u2208",notin:"\u2209",ni:"\u220B",prod:"\u220F",sum:"\u2211",minus:"\u2212",lowast:"\u2217",radic:"\u221A",prop:"\u221D",infin:"\u221E",ang:"\u2220",and:"\u2227",or:"\u2228",cap:"\u2229",cup:"\u222A",int:"\u222B",there4:"\u2234",sim:"\u223C",cong:"\u2245",asymp:"\u2248",ne:"\u2260",equiv:"\u2261",le:"\u2264",ge:"\u2265",sub:"\u2282",sup:"\u2283",nsub:"\u2284",sube:"\u2286",supe:"\u2287",oplus:"\u2295",otimes:"\u2297",perp:"\u22A5",sdot:"\u22C5",lceil:"\u2308",rceil:"\u2309",lfloor:"\u230A",rfloor:"\u230B",lang:"\u2329",rang:"\u232A",loz:"\u25CA",spades:"\u2660",clubs:"\u2663",hearts:"\u2665",diams:"\u2666",quot:'"',amp:"&",lt:"<",gt:">",OElig:"\u0152",oelig:"\u0153",Scaron:"\u0160",scaron:"\u0161",Yuml:"\u0178",circ:"\u02C6",tilde:"\u02DC",ensp:"\u2002",emsp:"\u2003",thinsp:"\u2009",zwnj:"\u200C",zwj:"\u200D",lrm:"\u200E",rlm:"\u200F",ndash:"\u2013",mdash:"\u2014",lsquo:"\u2018",rsquo:"\u2019",sbquo:"\u201A",ldquo:"\u201C",rdquo:"\u201D",bdquo:"\u201E",dagger:"\u2020",Dagger:"\u2021",permil:"\u2030",lsaquo:"\u2039",rsaquo:"\u203A",euro:"\u20AC"};var bn=["cent","copy","divide","gt","lt","not","para","times"];var kn={}.hasOwnProperty,qo={},Ma;for(Ma in va)kn.call(va,Ma)&&(qo[va[Ma]]=Ma);var zd=/[^\dA-Za-z]/;function Tn(e,t,a,o){let r=String.fromCharCode(e);if(kn.call(qo,r)){let s=qo[r],n="&"+s;return a&&yn.includes(s)&&!bn.includes(s)&&(!o||t&&t!==61&&zd.test(String.fromCharCode(t)))?n:n+";"}return""}function Pn(e,t,a){let o=In(e,t,a.omitOptionalSemicolons),r;if((a.useNamedReferences||a.useShortestReferences)&&(r=Tn(e,t,a.omitOptionalSemicolons,a.attribute)),(a.useShortestReferences||!r)&&a.useShortestReferences){let s=Sn(e,t,a.omitOptionalSemicolons);s.length<o.length&&(o=s)}return r&&(!a.useShortestReferences||r.length<o.length)?r:o}function Ge(e,t){return Cn(e,Object.assign({format:Pn},t))}var Vd=/^>|^->|<!--|-->|--!>|<!-$/g,jd=[">"],$d=["<",">"];function An(e,t,a,o){return o.settings.bogusComments?"<?"+Ge(e.value,Object.assign({},o.settings.characterReferences,{subset:jd}))+">":"<!--"+e.value.replace(Vd,r)+"-->";function r(s){return Ge(s,Object.assign({},o.settings.characterReferences,{subset:$d}))}}function vn(e,t,a,o){return"<!"+(o.settings.upperDoctype?"DOCTYPE":"doctype")+(o.settings.tightDoctype?"":" ")+"html>"}var ee=Mn(1),Go=Mn(-1),Xd=[];function Mn(e){return t;function t(a,o,r){let s=a?a.children:Xd,n=(o||0)+e,i=s[n];if(!r)for(;i&&ut(i);)n+=e,i=s[n];return i}}var Qd={}.hasOwnProperty;function Ra(e){return t;function t(a,o,r){return Qd.call(e,a.tagName)&&e[a.tagName](a,o,r)}}var zt=Ra({body:Jd,caption:Wo,colgroup:Wo,dd:tf,dt:ef,head:Wo,html:Kd,li:Yd,optgroup:af,option:of,p:Zd,rp:Rn,rt:Rn,tbody:sf,td:Fn,tfoot:nf,th:Fn,thead:rf,tr:lf});function Wo(e,t,a){let o=ee(a,t,!0);return!o||o.type!=="comment"&&!(o.type==="text"&&ut(o.value.charAt(0)))}function Kd(e,t,a){let o=ee(a,t);return!o||o.type!=="comment"}function Jd(e,t,a){let o=ee(a,t);return!o||o.type!=="comment"}function Zd(e,t,a){let o=ee(a,t);return o?o.type==="element"&&(o.tagName==="address"||o.tagName==="article"||o.tagName==="aside"||o.tagName==="blockquote"||o.tagName==="details"||o.tagName==="div"||o.tagName==="dl"||o.tagName==="fieldset"||o.tagName==="figcaption"||o.tagName==="figure"||o.tagName==="footer"||o.tagName==="form"||o.tagName==="h1"||o.tagName==="h2"||o.tagName==="h3"||o.tagName==="h4"||o.tagName==="h5"||o.tagName==="h6"||o.tagName==="header"||o.tagName==="hgroup"||o.tagName==="hr"||o.tagName==="main"||o.tagName==="menu"||o.tagName==="nav"||o.tagName==="ol"||o.tagName==="p"||o.tagName==="pre"||o.tagName==="section"||o.tagName==="table"||o.tagName==="ul"):!a||!(a.type==="element"&&(a.tagName==="a"||a.tagName==="audio"||a.tagName==="del"||a.tagName==="ins"||a.tagName==="map"||a.tagName==="noscript"||a.tagName==="video"))}function Yd(e,t,a){let o=ee(a,t);return!o||o.type==="element"&&o.tagName==="li"}function ef(e,t,a){let o=ee(a,t);return!!(o&&o.type==="element"&&(o.tagName==="dt"||o.tagName==="dd"))}function tf(e,t,a){let o=ee(a,t);return!o||o.type==="element"&&(o.tagName==="dt"||o.tagName==="dd")}function Rn(e,t,a){let o=ee(a,t);return!o||o.type==="element"&&(o.tagName==="rp"||o.tagName==="rt")}function af(e,t,a){let o=ee(a,t);return!o||o.type==="element"&&o.tagName==="optgroup"}function of(e,t,a){let o=ee(a,t);return!o||o.type==="element"&&(o.tagName==="option"||o.tagName==="optgroup")}function rf(e,t,a){let o=ee(a,t);return!!(o&&o.type==="element"&&(o.tagName==="tbody"||o.tagName==="tfoot"))}function sf(e,t,a){let o=ee(a,t);return!o||o.type==="element"&&(o.tagName==="tbody"||o.tagName==="tfoot")}function nf(e,t,a){return!ee(a,t)}function lf(e,t,a){let o=ee(a,t);return!o||o.type==="element"&&o.tagName==="tr"}function Fn(e,t,a){let o=ee(a,t);return!o||o.type==="element"&&(o.tagName==="td"||o.tagName==="th")}var Bn=Ra({body:ff,colgroup:cf,head:df,html:uf,tbody:pf});function uf(e){let t=ee(e,-1);return!t||t.type!=="comment"}function df(e){let t=new Set;for(let o of e.children)if(o.type==="element"&&(o.tagName==="base"||o.tagName==="title")){if(t.has(o.tagName))return!1;t.add(o.tagName)}let a=e.children[0];return!a||a.type==="element"}function ff(e){let t=ee(e,-1,!0);return!t||t.type!=="comment"&&!(t.type==="text"&&ut(t.value.charAt(0)))&&!(t.type==="element"&&(t.tagName==="meta"||t.tagName==="link"||t.tagName==="script"||t.tagName==="style"||t.tagName==="template"))}function cf(e,t,a){let o=Go(a,t),r=ee(e,-1,!0);return a&&o&&o.type==="element"&&o.tagName==="colgroup"&&zt(o,a.children.indexOf(o),a)?!1:!!(r&&r.type==="element"&&r.tagName==="col")}function pf(e,t,a){let o=Go(a,t),r=ee(e,-1);return a&&o&&o.type==="element"&&(o.tagName==="thead"||o.tagName==="tbody")&&zt(o,a.children.indexOf(o),a)?!1:!!(r&&r.type==="element"&&r.tagName==="tr")}var Fa={name:[[`
|
|
5
5
|
\f\r &/=>`.split(""),`
|
|
6
6
|
\f\r "&'/=>\``.split("")],[`\0
|
|
7
7
|
\f\r "&'/<=>`.split(""),`\0
|
|
@@ -9,11 +9,11 @@ import{a as Er,b as _r,c as Nr,d as it,e as lt,f as ta,g as Or,h as Ur,i as Hr,j
|
|
|
9
9
|
\f\r &>`.split(""),`\0
|
|
10
10
|
\f\r "&'<=>\``.split("")],[`\0
|
|
11
11
|
\f\r "&'<=>\``.split(""),`\0
|
|
12
|
-
\f\r "&'<=>\``.split("")]],single:[["&'".split(""),"\"&'`".split("")],["\0&'".split(""),"\0\"&'`".split("")]],double:[['"&'.split(""),"\"&'`".split("")],['\0"&'.split(""),"\0\"&'`".split("")]]};function Tn(e,t,a,o){let r=o.schema,s=r.space==="svg"?!1:o.settings.omitOptionalTags,n=r.space==="svg"?o.settings.closeEmptyElements:o.settings.voids.includes(e.tagName.toLowerCase()),i=[],l;r.space==="html"&&e.tagName==="svg"&&(o.schema=aa);let u=Jd(o,e.properties),f=o.all(r.space==="html"&&e.tagName==="template"?e.content:e);return o.schema=r,f&&(n=!1),(u||!s||!kn(e,t,a))&&(i.push("<",e.tagName,u?" "+u:""),n&&(r.space==="svg"||o.settings.closeSelfClosing)&&(l=u.charAt(u.length-1),(!o.settings.tightSelfClosing||l==="/"||l&&l!=='"'&&l!=="'")&&i.push(" "),i.push("/")),i.push(">")),i.push(f),!n&&(!s||!Gt(e,t,a))&&i.push("</"+e.tagName+">"),i.join("")}function Jd(e,t){let a=[],o=-1,r;if(t){for(r in t)if(t[r]!==null&&t[r]!==void 0){let s=Zd(e,r,t[r]);s&&a.push(s)}}for(;++o<a.length;){let s=e.settings.tightAttributes?a[o].charAt(a[o].length-1):void 0;o!==a.length-1&&s!=='"'&&s!=="'"&&(a[o]+=" ")}return a.join("")}function Zd(e,t,a){let o=Hr(e.schema,t),r=e.settings.allowParseErrors&&e.schema.space==="html"?0:1,s=e.settings.allowDangerousCharacters?0:1,n=e.quote,i;if(o.overloadedBoolean&&(a===o.attribute||a==="")?a=!0:(o.boolean||o.overloadedBoolean)&&(typeof a!="string"||a===o.attribute||a==="")&&(a=!!a),a==null||a===!1||typeof a=="number"&&Number.isNaN(a))return"";let l=Ue(o.attribute,Object.assign({},e.settings.characterReferences,{subset:va.name[r][s]}));return a===!0||(a=Array.isArray(a)?(o.commaSeparated?Wr:zr)(a,{padLeft:!e.settings.tightCommaSeparatedLists}):String(a),e.settings.collapseEmptyAttributes&&!a)?l:(e.settings.preferUnquoted&&(i=Ue(a,Object.assign({},e.settings.characterReferences,{attribute:!0,subset:va.unquoted[r][s]}))),i!==a&&(e.settings.quoteSmart&&fo(a,n)>fo(a,e.alternative)&&(n=e.alternative),i=n+Ue(a,Object.assign({},e.settings.characterReferences,{subset:(n==="'"?va.single:va.double)[r][s],attribute:!0}))+n),l+(i&&"="+i))}var Yd=["<","&"];function Ma(e,t,a,o){return a&&a.type==="element"&&(a.tagName==="script"||a.tagName==="style")?e.value:Ue(e.value,Object.assign({},o.settings.characterReferences,{subset:Yd}))}function Pn(e,t,a,o){return o.settings.allowDangerousHtml?e.value:Ma(e,t,a,o)}function An(e,t,a,o){return o.all(e)}var vn=Gr("type",{invalid:ef,unknown:tf,handlers:{comment:Cn,doctype:In,element:Tn,raw:Pn,root:An,text:Ma}});function ef(e){throw new Error("Expected node, not `"+e+"`")}function tf(e){let t=e;throw new Error("Cannot compile unknown node `"+t.type+"`")}var af={},of={},rf=[];function Uo(e,t){let a=t||af,o=a.quote||'"',r=o==='"'?"'":'"';if(o!=='"'&&o!=="'")throw new Error("Invalid quote `"+o+"`, expected `'` or `\"`");return{one:sf,all:nf,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||Ur,characterReferences:a.characterReferences||of,closeSelfClosing:a.closeSelfClosing||!1,closeEmptyElements:a.closeEmptyElements||!1},schema:a.space==="svg"?aa:qr,quote:o,alternative:r}.one(Array.isArray(e)?{type:"root",children:e}:e,void 0,void 0)}function sf(e,t,a){return vn(e,t,a,this)}function nf(e){let t=[],a=e&&e.children||rf,o=-1;for(;++o<a.length;)t[o]=this.one(a[o],o,e);return t.join("")}function Ra(e,t){let a=typeof e=="string"?{}:{...e.colorReplacements},o=typeof e=="string"?e:e.name;for(let[r,s]of Object.entries(t?.colorReplacements||{}))typeof s=="string"?a[r]=s:r===o&&Object.assign(a,s);return a}function je(e,t){return e&&(t?.[e?.toLowerCase()]||e)}function lf(e){return Array.isArray(e)?e:[e]}async function _n(e){return Promise.resolve(typeof e=="function"?e():e).then(t=>t.default||t)}function Vo(e){return!e||["plaintext","txt","text","plain"].includes(e)}function Nn(e){return e==="ansi"||Vo(e)}function jo(e){return e==="none"}function On(e){return jo(e)}function Un(e,t){if(!t)return e;e.properties||={},e.properties.class||=[],typeof e.properties.class=="string"&&(e.properties.class=e.properties.class.split(/\s+/g)),Array.isArray(e.properties.class)||(e.properties.class=[]);let a=Array.isArray(t)?t:t.split(/\s+/g);for(let o of a)o&&!e.properties.class.includes(o)&&e.properties.class.push(o);return e}function _a(e,t=!1){if(e.length===0)return[["",0]];let a=e.split(/(\r?\n)/g),o=0,r=[];for(let s=0;s<a.length;s+=2){let n=t?a[s]+(a[s+1]||""):a[s];r.push([n,o]),o+=a[s].length,o+=a[s+1]?.length||0}return r}function uf(e){let t=_a(e,!0).map(([r])=>r);function a(r){if(r===e.length)return{line:t.length-1,character:t[t.length-1].length};let s=r,n=0;for(let i of t){if(s<i.length)break;s-=i.length,n++}return{line:n,character:s}}function o(r,s){let n=0;for(let i=0;i<r;i++)n+=t[i].length;return n+=s,n}return{lines:t,indexToPos:a,posToIndex:o}}function Hn(e,t,a){let o=new Set;for(let s of e.matchAll(/:?lang=["']([^"']+)["']/g)){let n=s[1].toLowerCase().trim();n&&o.add(n)}for(let s of e.matchAll(/(?:```|~~~)([\w-]+)/g)){let n=s[1].toLowerCase().trim();n&&o.add(n)}for(let s of e.matchAll(/\\begin\{([\w-]+)\}/g)){let n=s[1].toLowerCase().trim();n&&o.add(n)}for(let s of e.matchAll(/<script\s+(?:type|lang)=["']([^"']+)["']/gi)){let n=s[1].toLowerCase().trim(),i=n.includes("/")?n.split("/").pop():n;i&&o.add(i)}if(!a)return Array.from(o);let r=a.getBundledLanguages();return Array.from(o).filter(s=>s&&r[s])}var $o="light-dark()",df=["color","background-color"];function ff(e,t){let a=0,o=[];for(let r of t)r>a&&o.push({...e,content:e.content.slice(a,r),offset:e.offset+a}),a=r;return a<e.content.length&&o.push({...e,content:e.content.slice(a),offset:e.offset+a}),o}function cf(e,t){let a=Array.from(t instanceof Set?t:new Set(t)).sort((o,r)=>o-r);return a.length?e.map(o=>o.flatMap(r=>{let s=a.filter(n=>r.offset<n&&n<r.offset+r.content.length).map(n=>n-r.offset).sort((n,i)=>n-i);return s.length?ff(r,s):r})):e}function pf(e,t,a,o,r="css-vars"){let s={content:e.content,explanation:e.explanation,offset:e.offset},n=t.map(f=>Fa(e.variants[f])),i=new Set(n.flatMap(f=>Object.keys(f))),l={},u=(f,d)=>{let p=d==="color"?"":d==="background-color"?"-bg":`-${d}`;return a+t[f]+(d==="color"?"":p)};return n.forEach((f,d)=>{for(let p of i){let c=f[p]||"inherit";if(d===0&&o&&df.includes(p))if(o===$o&&n.length>1){let m=t.findIndex(g=>g==="light"),C=t.findIndex(g=>g==="dark");if(m===-1||C===-1)throw new J('When using `defaultColor: "light-dark()"`, you must provide both `light` and `dark` themes');let w=n[m][p]||"inherit",x=n[C][p]||"inherit";l[p]=`light-dark(${w}, ${x})`,r==="css-vars"&&(l[u(d,p)]=c)}else l[p]=c;else r==="css-vars"&&(l[u(d,p)]=c)}}),s.htmlStyle=l,s}function Fa(e){let t={};if(e.color&&(t.color=e.color),e.bgColor&&(t["background-color"]=e.bgColor),e.fontStyle){e.fontStyle&ce.Italic&&(t["font-style"]="italic"),e.fontStyle&ce.Bold&&(t["font-weight"]="bold");let a=[];e.fontStyle&ce.Underline&&a.push("underline"),e.fontStyle&ce.Strikethrough&&a.push("line-through"),a.length&&(t["text-decoration"]=a.join(" "))}return t}function Go(e){return typeof e=="string"?e:Object.entries(e).map(([t,a])=>`${t}:${a}`).join(";")}var qn=new WeakMap;function Na(e,t){qn.set(e,t)}function zt(e){return qn.get(e)}var ht=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(lf(a).map(o=>[o,ka])),t)}constructor(...t){if(t.length===2){let[a,o]=t;this.lang=o,this._stacks=a}else{let[a,o,r]=t;this.lang=o,this._stacks={[r]:a}}}getInternalStack(t=this.theme){return this._stacks[t]}getScopes(t=this.theme){return mf(this._stacks[t])}toJSON(){return{lang:this.lang,theme:this.theme,themes:this.themes,scopes:this.getScopes()}}};function mf(e){let t=[],a=new Set;function o(r){if(a.has(r))return;a.add(r);let s=r?.nameScopesList?.scopeName;s&&t.push(s),r.parent&&o(r.parent)}return o(e),t}function hf(e,t){if(!(e instanceof ht))throw new J("Invalid grammar state");return e.getInternalStack(t)}function gf(){let e=new WeakMap;function t(a){if(!e.has(a.meta)){let o=function(n){if(typeof n=="number"){if(n<0||n>a.source.length)throw new J(`Invalid decoration offset: ${n}. Code length: ${a.source.length}`);return{...r.indexToPos(n),offset:n}}else{let i=r.lines[n.line];if(i===void 0)throw new J(`Invalid decoration position ${JSON.stringify(n)}. Lines length: ${r.lines.length}`);let l=n.character;if(l<0&&(l=i.length+l),l<0||l>i.length)throw new J(`Invalid decoration position ${JSON.stringify(n)}. Line ${n.line} length: ${i.length}`);return{...n,character:l,offset:r.posToIndex(n.line,l)}}},r=uf(a.source),s=(a.options.decorations||[]).map(n=>({...n,start:o(n.start),end:o(n.end)}));wf(s),e.set(a.meta,{decorations:s,converter:r,source:a.source})}return e.get(a.meta)}return{name:"shiki:decorations",tokens(a){if(!this.options.decorations?.length)return;let r=t(this).decorations.flatMap(n=>[n.start.offset,n.end.offset]);return cf(a,r)},code(a){if(!this.options.decorations?.length)return;let o=t(this),r=Array.from(a.children).filter(f=>f.type==="element"&&f.tagName==="span");if(r.length!==o.converter.lines.length)throw new J(`Number of lines in code element (${r.length}) does not match the number of lines in the source (${o.converter.lines.length}). Failed to apply decorations.`);function s(f,d,p,c){let m=r[f],C="",w=-1,x=-1;if(d===0&&(w=0),p===0&&(x=0),p===Number.POSITIVE_INFINITY&&(x=m.children.length),w===-1||x===-1)for(let h=0;h<m.children.length;h++)C+=Gn(m.children[h]),w===-1&&C.length===d&&(w=h+1),x===-1&&C.length===p&&(x=h+1);if(w===-1)throw new J(`Failed to find start index for decoration ${JSON.stringify(c.start)}`);if(x===-1)throw new J(`Failed to find end index for decoration ${JSON.stringify(c.end)}`);let g=m.children.slice(w,x);if(!c.alwaysWrap&&g.length===m.children.length)i(m,c,"line");else if(!c.alwaysWrap&&g.length===1&&g[0].type==="element")i(g[0],c,"token");else{let h={type:"element",tagName:"span",properties:{},children:g};i(h,c,"wrapper"),m.children.splice(w,g.length,h)}}function n(f,d){r[f]=i(r[f],d,"line")}function i(f,d,p){let c=d.properties||{},m=d.transform||(C=>C);return f.tagName=d.tagName||"span",f.properties={...f.properties,...c,class:f.properties.class},d.properties?.class&&Un(f,d.properties.class),f=m(f,p)||f,f}let l=[],u=o.decorations.sort((f,d)=>d.start.offset-f.start.offset||f.end.offset-d.end.offset);for(let f of u){let{start:d,end:p}=f;if(d.line===p.line)s(d.line,d.character,p.character,f);else if(d.line<p.line){s(d.line,d.character,Number.POSITIVE_INFINITY,f);for(let c=d.line+1;c<p.line;c++)l.unshift(()=>n(c,f));s(p.line,0,p.character,f)}}l.forEach(f=>f())}}}function wf(e){for(let t=0;t<e.length;t++){let a=e[t];if(a.start.offset>a.end.offset)throw new J(`Invalid decoration range: ${JSON.stringify(a.start)} - ${JSON.stringify(a.end)}`);for(let o=t+1;o<e.length;o++){let r=e[o],s=a.start.offset<=r.start.offset&&r.start.offset<a.end.offset,n=a.start.offset<r.end.offset&&r.end.offset<=a.end.offset,i=r.start.offset<=a.start.offset&&a.start.offset<r.end.offset,l=r.start.offset<a.end.offset&&a.end.offset<=r.end.offset;if(s||n||i||l){if(s&&n||i&&l||i&&a.start.offset===a.end.offset||n&&r.start.offset===r.end.offset)continue;throw new J(`Decorations ${JSON.stringify(a.start)} and ${JSON.stringify(r.start)} intersect.`)}}}}function Gn(e){return e.type==="text"?e.value:e.type==="element"?e.children.map(Gn).join(""):""}var xf=[gf()];function Ba(e){let t=Lf(e.transformers||[]);return[...t.pre,...t.normal,...t.post,...xf]}function Lf(e){let t=[],a=[],o=[];for(let r of e)switch(r.enforce){case"pre":t.push(r);break;case"post":a.push(r);break;default:o.push(r)}return{pre:t,post:a,normal:o}}var at=["black","red","green","yellow","blue","magenta","cyan","white","brightBlack","brightRed","brightGreen","brightYellow","brightBlue","brightMagenta","brightCyan","brightWhite"],Ho={1:"bold",2:"dim",3:"italic",4:"underline",7:"reverse",8:"hidden",9:"strikethrough"};function Cf(e,t){let a=e.indexOf("\x1B",t);if(a!==-1&&e[a+1]==="["){let o=e.indexOf("m",a);if(o!==-1)return{sequence:e.substring(a+2,o).split(";"),startPosition:a,position:o+1}}return{position:e.length}}function Mn(e){let t=e.shift();if(t==="2"){let a=e.splice(0,3).map(o=>Number.parseInt(o));return a.length!==3||a.some(o=>Number.isNaN(o))?void 0:{type:"rgb",rgb:a}}else if(t==="5"){let a=e.shift();if(a)return{type:"table",index:Number(a)}}}function If(e){let t=[];for(;e.length>0;){let a=e.shift();if(!a)continue;let o=Number.parseInt(a);if(!Number.isNaN(o))if(o===0)t.push({type:"resetAll"});else if(o<=9)Ho[o]&&t.push({type:"setDecoration",value:Ho[o]});else if(o<=29){let r=Ho[o-20];r&&(t.push({type:"resetDecoration",value:r}),r==="dim"&&t.push({type:"resetDecoration",value:"bold"}))}else if(o<=37)t.push({type:"setForegroundColor",value:{type:"named",name:at[o-30]}});else if(o===38){let r=Mn(e);r&&t.push({type:"setForegroundColor",value:r})}else if(o===39)t.push({type:"resetForegroundColor"});else if(o<=47)t.push({type:"setBackgroundColor",value:{type:"named",name:at[o-40]}});else if(o===48){let r=Mn(e);r&&t.push({type:"setBackgroundColor",value:r})}else o===49?t.push({type:"resetBackgroundColor"}):o===53?t.push({type:"setDecoration",value:"overline"}):o===55?t.push({type:"resetDecoration",value:"overline"}):o>=90&&o<=97?t.push({type:"setForegroundColor",value:{type:"named",name:at[o-90+8]}}):o>=100&&o<=107&&t.push({type:"setBackgroundColor",value:{type:"named",name:at[o-100+8]}})}return t}function Sf(){let e=null,t=null,a=new Set;return{parse(o){let r=[],s=0;do{let n=Cf(o,s),i=n.sequence?o.substring(s,n.startPosition):o.substring(s);if(i.length>0&&r.push({value:i,foreground:e,background:t,decorations:new Set(a)}),n.sequence){let l=If(n.sequence);for(let u of l)u.type==="resetAll"?(e=null,t=null,a.clear()):u.type==="resetForegroundColor"?e=null:u.type==="resetBackgroundColor"?t=null:u.type==="resetDecoration"&&a.delete(u.value);for(let u of l)u.type==="setForegroundColor"?e=u.value:u.type==="setBackgroundColor"?t=u.value:u.type==="setDecoration"&&a.add(u.value)}s=n.position}while(s<o.length);return r}}}var yf={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 bf(e=yf){function t(i){return e[i]}function a(i){return`#${i.map(l=>Math.max(0,Math.min(l,255)).toString(16).padStart(2,"0")).join("")}`}let o;function r(){if(o)return o;o=[];for(let u=0;u<at.length;u++)o.push(t(at[u]));let i=[0,95,135,175,215,255];for(let u=0;u<6;u++)for(let f=0;f<6;f++)for(let d=0;d<6;d++)o.push(a([i[u],i[f],i[d]]));let l=8;for(let u=0;u<24;u++,l+=10)o.push(a([l,l,l]));return o}function s(i){return r()[i]}function n(i){switch(i.type){case"named":return t(i.name);case"rgb":return a(i.rgb);case"table":return s(i.index)}}return{value:n}}var kf={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 Tf(e,t,a){let o=Ra(e,a),r=_a(t),s=Object.fromEntries(at.map(l=>{let u=`terminal.ansi${l[0].toUpperCase()}${l.substring(1)}`,f=e.colors?.[u];return[l,f||kf[l]]})),n=bf(s),i=Sf();return r.map(l=>i.parse(l[0]).map(u=>{let f,d;u.decorations.has("reverse")?(f=u.background?n.value(u.background):e.bg,d=u.foreground?n.value(u.foreground):e.fg):(f=u.foreground?n.value(u.foreground):e.fg,d=u.background?n.value(u.background):void 0),f=je(f,o),d=je(d,o),u.decorations.has("dim")&&(f=Pf(f));let p=ce.None;return u.decorations.has("bold")&&(p|=ce.Bold),u.decorations.has("italic")&&(p|=ce.Italic),u.decorations.has("underline")&&(p|=ce.Underline),u.decorations.has("strikethrough")&&(p|=ce.Strikethrough),{content:u.value,offset:l[1],color:f,bgColor:d,fontStyle:p}}))}function Pf(e){let t=e.match(/#([0-9a-f]{3,8})/i);if(t){let o=t[1];if(o.length===8){let r=Math.round(Number.parseInt(o.slice(6,8),16)/2).toString(16).padStart(2,"0");return`#${o.slice(0,6)}${r}`}else{if(o.length===6)return`#${o}80`;if(o.length===4){let r=o[0],s=o[1],n=o[2],i=o[3],l=Math.round(Number.parseInt(`${i}${i}`,16)/2).toString(16).padStart(2,"0");return`#${r}${r}${s}${s}${n}${n}${l}`}else if(o.length===3){let r=o[0],s=o[1],n=o[2];return`#${r}${r}${s}${s}${n}${n}80`}}}let a=e.match(/var\((--[\w-]+-ansi-[\w-]+)\)/);return a?`var(${a[1]}-dim)`:e}function Xo(e,t,a={}){let{theme:o=e.getLoadedThemes()[0]}=a,r=e.resolveLangAlias(a.lang||"text");if(Vo(r)||jo(o))return _a(t).map(l=>[{content:l[0],offset:l[1]}]);let{theme:s,colorMap:n}=e.setTheme(o);if(r==="ansi")return Tf(s,t,a);let i=e.getLanguage(a.lang||"text");if(a.grammarState){if(a.grammarState.lang!==i.name)throw new J(`Grammar state language "${a.grammarState.lang}" does not match highlight language "${i.name}"`);if(!a.grammarState.themes.includes(s.name))throw new J(`Grammar state themes "${a.grammarState.themes}" do not contain highlight theme "${s.name}"`)}return vf(t,i,s,n,a)}function Af(...e){if(e.length===2)return zt(e[1]);let[t,a,o={}]=e,{lang:r="text",theme:s=t.getLoadedThemes()[0]}=o;if(Vo(r)||jo(s))throw new J("Plain language does not have grammar state");if(r==="ansi")throw new J("ANSI language does not have grammar state");let{theme:n,colorMap:i}=t.setTheme(s),l=t.getLanguage(r);return new ht(Qo(a,l,n,i,o).stateStack,l.name,n.name)}function vf(e,t,a,o,r){let s=Qo(e,t,a,o,r),n=new ht(s.stateStack,t.name,a.name);return Na(s.tokens,n),s.tokens}function Qo(e,t,a,o,r){let s=Ra(a,r),{tokenizeMaxLineLength:n=0,tokenizeTimeLimit:i=500}=r,l=_a(e),u=r.grammarState?hf(r.grammarState,a.name)??ka:r.grammarContextCode!=null?Qo(r.grammarContextCode,t,a,o,{...r,grammarState:void 0,grammarContextCode:void 0}).stateStack:ka,f=[],d=[];for(let p=0,c=l.length;p<c;p++){let[m,C]=l[p];if(m===""){f=[],d.push([]);continue}if(n>0&&m.length>=n){f=[],d.push([{content:m,offset:C,color:"",fontStyle:0}]);continue}let w,x,g;r.includeExplanation&&(w=t.tokenizeLine(m,u,i),x=w.tokens,g=0);let h=t.tokenizeLine2(m,u,i),I=h.tokens.length/2;for(let k=0;k<I;k++){let b=h.tokens[2*k],y=k+1<I?h.tokens[2*k+2]:m.length;if(b===y)continue;let M=h.tokens[2*k+1],E=je(o[tt.getForeground(M)],s),B=tt.getFontStyle(M),T={content:m.substring(b,y),offset:C+b,color:E,fontStyle:B};if(r.includeExplanation){let S=[];if(r.includeExplanation!=="scopeName")for(let $ of a.settings){let z;switch(typeof $.scope){case"string":z=$.scope.split(/,/).map(Ie=>Ie.trim());break;case"object":z=$.scope;break;default:continue}S.push({settings:$,selectors:z.map(Ie=>Ie.split(/ /))})}T.explanation=[];let P=0;for(;b+P<y;){let $=x[g],z=m.substring($.startIndex,$.endIndex);P+=z.length,T.explanation.push({content:z,scopes:r.includeExplanation==="scopeName"?Mf($.scopes):Rf(S,$.scopes)}),g+=1}}f.push(T)}d.push(f),f=[],u=h.ruleStack}return{tokens:d,stateStack:u}}function Mf(e){return e.map(t=>({scopeName:t}))}function Rf(e,t){let a=[];for(let o=0,r=t.length;o<r;o++){let s=t[o];a[o]={scopeName:s,themeMatches:Bf(e,s,t.slice(0,o))}}return a}function Rn(e,t){return e===t||t.substring(0,e.length)===e&&t[e.length]==="."}function Ff(e,t,a){if(!Rn(e[e.length-1],t))return!1;let o=e.length-2,r=a.length-1;for(;o>=0&&r>=0;)Rn(e[o],a[r])&&(o-=1),r-=1;return o===-1}function Bf(e,t,a){let o=[];for(let{selectors:r,settings:s}of e)for(let n of r)if(Ff(n,t,a)){o.push(s);break}return o}function Wn(e,t,a){let o=Object.entries(a.themes).filter(l=>l[1]).map(l=>({color:l[0],theme:l[1]})),r=o.map(l=>{let u=Xo(e,t,{...a,theme:l.theme}),f=zt(u),d=typeof l.theme=="string"?l.theme:l.theme.name;return{tokens:u,state:f,theme:d}}),s=Df(...r.map(l=>l.tokens)),n=s[0].map((l,u)=>l.map((f,d)=>{let p={content:f.content,variants:{},offset:f.offset};return"includeExplanation"in a&&a.includeExplanation&&(p.explanation=f.explanation),s.forEach((c,m)=>{let{content:C,explanation:w,offset:x,...g}=c[u][d];p.variants[o[m].color]=g}),p})),i=r[0].state?new ht(Object.fromEntries(r.map(l=>[l.theme,l.state?.getInternalStack(l.theme)])),r[0].state.lang):void 0;return i&&Na(n,i),n}function Df(...e){let t=e.map(()=>[]),a=e.length;for(let o=0;o<e[0].length;o++){let r=e.map(l=>l[o]),s=t.map(()=>[]);t.forEach((l,u)=>l.push(s[u]));let n=r.map(()=>0),i=r.map(l=>l[0]);for(;i.every(l=>l);){let l=Math.min(...i.map(u=>u.content.length));for(let u=0;u<a;u++){let f=i[u];f.content.length===l?(s[u].push(f),n[u]+=1,i[u]=r[u][n[u]]):(s[u].push({...f,content:f.content.slice(0,l)}),i[u]={...f,content:f.content.slice(l),offset:f.offset+l})}}}return t}function Da(e,t,a){let o,r,s,n,i,l;if("themes"in a){let{defaultColor:u="light",cssVariablePrefix:f="--shiki-",colorsRendering:d="css-vars"}=a,p=Object.entries(a.themes).filter(x=>x[1]).map(x=>({color:x[0],theme:x[1]})).sort((x,g)=>x.color===u?-1:g.color===u?1:0);if(p.length===0)throw new J("`themes` option must not be empty");let c=Wn(e,t,a);if(l=zt(c),u&&$o!==u&&!p.find(x=>x.color===u))throw new J(`\`themes\` option must contain the defaultColor key \`${u}\``);let m=p.map(x=>e.getTheme(x.theme)),C=p.map(x=>x.color);s=c.map(x=>x.map(g=>pf(g,C,f,u,d))),l&&Na(s,l);let w=p.map(x=>Ra(x.theme,a));r=Fn(p,m,w,f,u,"fg",d),o=Fn(p,m,w,f,u,"bg",d),n=`shiki-themes ${m.map(x=>x.name).join(" ")}`,i=u?void 0:[r,o].join(";")}else if("theme"in a){let u=Ra(a.theme,a);s=Xo(e,t,a);let f=e.getTheme(a.theme);o=je(f.bg,u),r=je(f.fg,u),n=f.name,l=zt(s)}else throw new J("Invalid options, either `theme` or `themes` must be provided");return{tokens:s,fg:r,bg:o,themeName:n,rootStyle:i,grammarState:l}}function Fn(e,t,a,o,r,s,n){return e.map((i,l)=>{let u=je(t[l][s],a[l])||"inherit",f=`${o+i.color}${s==="bg"?"-bg":""}:${u}`;if(l===0&&r){if(r===$o&&e.length>1){let d=e.findIndex(C=>C.color==="light"),p=e.findIndex(C=>C.color==="dark");if(d===-1||p===-1)throw new J('When using `defaultColor: "light-dark()"`, you must provide both `light` and `dark` themes');let c=je(t[d][s],a[d])||"inherit",m=je(t[p][s],a[p])||"inherit";return`light-dark(${c}, ${m});${f}`}return u}return n==="css-vars"?f:null}).filter(i=>!!i).join(";")}function Ea(e,t,a,o={meta:{},options:a,codeToHast:(r,s)=>Ea(e,r,s),codeToTokens:(r,s)=>Da(e,r,s)}){let r=t;for(let m of Ba(a))r=m.preprocess?.call(o,r,a)||r;let{tokens:s,fg:n,bg:i,themeName:l,rootStyle:u,grammarState:f}=Da(e,r,a),{mergeWhitespaces:d=!0,mergeSameStyleTokens:p=!1}=a;d===!0?s=_f(s):d==="never"&&(s=Nf(s)),p&&(s=Of(s));let c={...o,get source(){return r}};for(let m of Ba(a))s=m.tokens?.call(c,s)||s;return Ef(s,{...a,fg:n,bg:i,themeName:l,rootStyle:a.rootStyle===!1?!1:a.rootStyle??u},c,f)}function Ef(e,t,a,o=zt(e)){let r=Ba(t),s=[],n={type:"root",children:[]},{structure:i="classic",tabindex:l="0"}=t,u={class:`shiki ${t.themeName||""}`};t.rootStyle!==!1&&(t.rootStyle!=null?u.style=t.rootStyle:u.style=`background-color:${t.bg};color:${t.fg}`),l!==!1&&l!=null&&(u.tabindex=l.toString());for(let[C,w]of Object.entries(t.meta||{}))C.startsWith("_")||(u[C]=w);let f={type:"element",tagName:"pre",properties:u,children:[],data:t.data},d={type:"element",tagName:"code",properties:{},children:s},p=[],c={...a,structure:i,addClassToHast:Un,get source(){return a.source},get tokens(){return e},get options(){return t},get root(){return n},get pre(){return f},get code(){return d},get lines(){return p}};if(e.forEach((C,w)=>{w&&(i==="inline"?n.children.push({type:"element",tagName:"br",properties:{},children:[]}):i==="classic"&&s.push({type:"text",value:`
|
|
13
|
-
`}));let x={type:"element",tagName:"span",properties:{class:"line"},children:[]},g=0;for(let h of C){let I={type:"element",tagName:"span",properties:{...h.htmlAttrs},children:[{type:"text",value:h.content}]},k=Go(h.htmlStyle||Fa(h));k&&(I.properties.style=k);for(let b of r)I=b?.span?.call(c,I,w+1,g,x,h)||I;i==="inline"?n.children.push(I):i==="classic"&&x.children.push(I),g+=h.content.length}if(i==="classic"){for(let h of r)x=h?.line?.call(c,x,w+1)||x;p.push(x),s.push(x)}else i==="inline"&&p.push(x)}),i==="classic"){for(let C of r)d=C?.code?.call(c,d)||d;f.children.push(d);for(let C of r)f=C?.pre?.call(c,f)||f;n.children.push(f)}else if(i==="inline"){let C=[],w={type:"element",tagName:"span",properties:{class:"line"},children:[]};for(let h of n.children)h.type==="element"&&h.tagName==="br"?(C.push(w),w={type:"element",tagName:"span",properties:{class:"line"},children:[]}):(h.type==="element"||h.type==="text")&&w.children.push(h);C.push(w);let g={type:"element",tagName:"code",properties:{},children:C};for(let h of r)g=h?.code?.call(c,g)||g;n.children=[];for(let h=0;h<g.children.length;h++){h>0&&n.children.push({type:"element",tagName:"br",properties:{},children:[]});let I=g.children[h];I.type==="element"&&n.children.push(...I.children)}}let m=n;for(let C of r)m=C?.root?.call(c,m)||m;return o&&Na(m,o),m}function _f(e){return e.map(t=>{let a=[],o="",r;return t.forEach((s,n)=>{let l=!(s.fontStyle&&(s.fontStyle&ce.Underline||s.fontStyle&ce.Strikethrough));l&&s.content.match(/^\s+$/)&&t[n+1]?(r===void 0&&(r=s.offset),o+=s.content):o?(l?a.push({...s,offset:r,content:o+s.content}):a.push({content:o,offset:r},s),r=void 0,o=""):a.push(s)}),a})}function Nf(e){return e.map(t=>t.flatMap(a=>{if(a.content.match(/^\s+$/))return a;let o=a.content.match(/^(\s*)(.*?)(\s*)$/);if(!o)return a;let[,r,s,n]=o;if(!r&&!n)return a;let i=[{...a,offset:a.offset+r.length,content:s}];return r&&i.unshift({content:r,offset:a.offset}),n&&i.push({content:n,offset:a.offset+r.length+s.length}),i}))}function Of(e){return e.map(t=>{let a=[];for(let o of t){if(a.length===0){a.push({...o});continue}let r=a[a.length-1],s=Go(r.htmlStyle||Fa(r)),n=Go(o.htmlStyle||Fa(o)),i=r.fontStyle&&(r.fontStyle&ce.Underline||r.fontStyle&ce.Strikethrough),l=o.fontStyle&&(o.fontStyle&ce.Underline||o.fontStyle&ce.Strikethrough);!i&&!l&&s===n?r.content+=o.content:a.push({...o})}return a})}var Uf=Uo;function Hf(e,t,a){let o={meta:{},options:a,codeToHast:(s,n)=>Ea(e,s,n),codeToTokens:(s,n)=>Da(e,s,n)},r=Uf(Ea(e,t,a,o));for(let s of Ba(a))r=s.postprocess?.call(o,r,a)||r;return r}var Bn={light:"#333333",dark:"#bbbbbb"},Dn={light:"#fffffe",dark:"#1e1e1e"},En="__shiki_resolved";function Ko(e){if(e?.[En])return e;let t={...e};t.tokenColors&&!t.settings&&(t.settings=t.tokenColors,delete t.tokenColors),t.type||="dark",t.colorReplacements={...t.colorReplacements},t.settings||=[];let{bg:a,fg:o}=t;if(!a||!o){let i=t.settings?t.settings.find(l=>!l.name&&!l.scope):void 0;i?.settings?.foreground&&(o=i.settings.foreground),i?.settings?.background&&(a=i.settings.background),!o&&t?.colors?.["editor.foreground"]&&(o=t.colors["editor.foreground"]),!a&&t?.colors?.["editor.background"]&&(a=t.colors["editor.background"]),o||(o=t.type==="light"?Bn.light:Bn.dark),a||(a=t.type==="light"?Dn.light:Dn.dark),t.fg=o,t.bg=a}t.settings[0]&&t.settings[0].settings&&!t.settings[0].scope||t.settings.unshift({settings:{foreground:t.fg,background:t.bg}});let r=0,s=new Map;function n(i){if(s.has(i))return s.get(i);r+=1;let l=`#${r.toString(16).padStart(8,"0").toLowerCase()}`;return t.colorReplacements?.[`#${l}`]?n(i):(s.set(i,l),l)}t.settings=t.settings.map(i=>{let l=i.settings?.foreground&&!i.settings.foreground.startsWith("#"),u=i.settings?.background&&!i.settings.background.startsWith("#");if(!l&&!u)return i;let f={...i,settings:{...i.settings}};if(l){let d=n(i.settings.foreground);t.colorReplacements[d]=i.settings.foreground,f.settings.foreground=d}if(u){let d=n(i.settings.background);t.colorReplacements[d]=i.settings.background,f.settings.background=d}return f});for(let i of Object.keys(t.colors||{}))if((i==="editor.foreground"||i==="editor.background"||i.startsWith("terminal.ansi"))&&!t.colors[i]?.startsWith("#")){let l=n(t.colors[i]);t.colorReplacements[l]=t.colors[i],t.colors[i]=l}return Object.defineProperty(t,En,{enumerable:!1,writable:!1,value:!0}),t}async function zn(e){return Array.from(new Set((await Promise.all(e.filter(t=>!Nn(t)).map(async t=>await _n(t).then(a=>Array.isArray(a)?a:[a])))).flat()))}async function Vn(e){return(await Promise.all(e.map(async a=>On(a)?null:Ko(await _n(a))))).filter(a=>!!a)}var qo=3,qf=!1;function Gf(e,t=3){if(qo&&!(typeof qo=="number"&&t>qo)){if(qf)throw new Error(`[SHIKI DEPRECATE]: ${e}`);console.trace(`[SHIKI DEPRECATE]: ${e}`)}}var Ve=class extends Error{constructor(t){super(t),this.name="ShikiError"}};function jn(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 Ve(`Circular alias \`${Array.from(a).join(" -> ")} -> ${e}\``);a.add(e)}}return e}var Wo=class extends dn{constructor(t,a,o,r={}){super(t),this._resolver=t,this._themes=a,this._langs=o,this._alias=r,this._themes.map(s=>this.loadTheme(s)),this.loadLanguages(this._langs)}_resolvedThemes=new Map;_resolvedGrammars=new Map;_langMap=new Map;_langGraph=new Map;_textmateThemeCache=new WeakMap;_loadedThemesCache=null;_loadedLanguagesCache=null;getTheme(t){return typeof t=="string"?this._resolvedThemes.get(t):this.loadTheme(t)}loadTheme(t){let a=Ko(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=Nt.createFromRawTheme(t),this._textmateThemeCache.set(t,a)),this._syncRegistry.setTheme(a)}getGrammar(t){return t=jn(t,this._alias),this._resolvedGrammars.get(t)}loadLanguage(t){if(this.getGrammar(t.name))return;let a=new Set([...this._langMap.values()].filter(s=>s.embeddedLangsLazy?.includes(t.name)));this._resolver.addLanguage(t);let o={balancedBracketSelectors:t.balancedBracketSelectors||["*"],unbalancedBracketSelectors:t.unbalancedBracketSelectors||[]};this._syncRegistry._rawGrammars.set(t.scopeName,t);let r=this.loadGrammarWithConfiguration(t.scopeName,1,o);if(r.name=t.name,this._resolvedGrammars.set(t.name,r),t.aliases&&t.aliases.forEach(s=>{this._alias[s]=t.name}),this._loadedLanguagesCache=null,a.size)for(let s of a)this._resolvedGrammars.delete(s.name),this._loadedLanguagesCache=null,this._syncRegistry?._injectionGrammars?.delete(s.scopeName),this._syncRegistry?._grammars?.delete(s.scopeName),this.loadLanguage(this._langMap.get(s.name))}dispose(){super.dispose(),this._resolvedThemes.clear(),this._resolvedGrammars.clear(),this._langMap.clear(),this._langGraph.clear(),this._loadedThemesCache=null}loadLanguages(t){for(let r of t)this.resolveEmbeddedLanguages(r);let a=Array.from(this._langGraph.entries()),o=a.filter(([r,s])=>!s);if(o.length){let r=a.filter(([s,n])=>n?(n.embeddedLanguages||n.embeddedLangs)?.some(l=>o.map(([u])=>u).includes(l)):!1).filter(s=>!o.includes(s));throw new Ve(`Missing languages ${o.map(([s])=>`\`${s}\``).join(", ")}, required by ${r.map(([s])=>`\`${s}\``).join(", ")}`)}for(let[r,s]of a)this._resolver.addLanguage(s);for(let[r,s]of a)this.loadLanguage(s)}getLoadedLanguages(){return this._loadedLanguagesCache||(this._loadedLanguagesCache=[...new Set([...this._resolvedGrammars.keys(),...Object.keys(this._alias)])]),this._loadedLanguagesCache}resolveEmbeddedLanguages(t){this._langMap.set(t.name,t),this._langGraph.set(t.name,t);let a=t.embeddedLanguages??t.embeddedLangs;if(a)for(let o of a)this._langGraph.set(o,this._langMap.get(o))}},zo=class{_langs=new Map;_scopeToLang=new Map;_injections=new Map;_onigLib;constructor(t,a){this._onigLib={createOnigScanner:o=>t.createScanner(o),createOnigString:o=>t.createString(o)},a.forEach(o=>this.addLanguage(o))}get onigLib(){return this._onigLib}getLangRegistration(t){return this._langs.get(t)}loadGrammar(t){return this._scopeToLang.get(t)}addLanguage(t){this._langs.set(t.name,t),t.aliases&&t.aliases.forEach(a=>{this._langs.set(a,t)}),this._scopeToLang.set(t.scopeName,t),t.injectTo&&t.injectTo.forEach(a=>{this._injections.get(a)||this._injections.set(a,[]),this._injections.get(a).push(t.scopeName)})}getInjections(t){let a=t.split("."),o=[];for(let r=1;r<=a.length;r++){let s=a.slice(0,r).join(".");o=[...o,...this._injections.get(s)||[]]}return o}},Wt=0;function Wf(e){Wt+=1,e.warnings!==!1&&Wt>=10&&Wt%10===0&&console.warn(`[Shiki] ${Wt} 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 Ve("`engine` option is required for synchronous mode");let a=(e.langs||[]).flat(1),o=(e.themes||[]).flat(1).map(Ko),r=new zo(e.engine,a),s=new Wo(r,o,a,e.langAlias),n;function i(h){return jn(h,e.langAlias)}function l(h){x();let I=s.getGrammar(typeof h=="string"?h:h.name);if(!I)throw new Ve(`Language \`${h}\` not found, you may need to load it first`);return I}function u(h){if(h==="none")return{bg:"",fg:"",name:"none",settings:[],type:"dark"};x();let I=s.getTheme(h);if(!I)throw new Ve(`Theme \`${h}\` not found, you may need to load it first`);return I}function f(h){x();let I=u(h);n!==h&&(s.setTheme(I),n=h);let k=s.getColorMap();return{theme:I,colorMap:k}}function d(){return x(),s.getLoadedThemes()}function p(){return x(),s.getLoadedLanguages()}function c(...h){x(),s.loadLanguages(h.flat(1))}async function m(...h){return c(await zn(h))}function C(...h){x();for(let I of h.flat(1))s.loadTheme(I)}async function w(...h){return x(),C(await Vn(h))}function x(){if(t)throw new Ve("Shiki instance has been disposed")}function g(){t||(t=!0,s.dispose(),Wt-=1)}return{setTheme:f,getTheme:u,getLanguage:l,getLoadedThemes:d,getLoadedLanguages:p,resolveLangAlias:i,loadLanguage:m,loadLanguageSync:c,loadTheme:w,loadThemeSync:C,dispose:g,[Symbol.dispose]:g}}async function zf(e){e.engine||Gf("`engine` option is required. Use `createOnigurumaEngine` or `createJavaScriptRegexEngine` to create an engine.");let[t,a,o]=await Promise.all([Vn(e.themes||[]),zn(e.langs||[]),e.engine]);return Wf({...e,themes:t,langs:a,engine:o})}async function Vf(e){let t=await zf(e);return{getLastGrammarState:(...a)=>Af(t,...a),codeToTokensBase:(a,o)=>Xo(t,a,o),codeToTokensWithThemes:(a,o)=>Wn(t,a,o),codeToTokens:(a,o)=>Da(t,a,o),codeToHast:(a,o)=>Ea(t,a,o),codeToHtml:(a,o)=>Hf(t,a,o),getBundledLanguages:()=>({}),getBundledThemes:()=>({}),...t,getInternalContext:()=>t}}function $n(e){let t=e.langs,a=e.themes,o=e.engine;async function r(s){function n(d){if(typeof d=="string"){if(d=s.langAlias?.[d]||d,Nn(d))return[];let p=t[d];if(!p)throw new J(`Language \`${d}\` is not included in this bundle. You may want to load it from external source.`);return p}return d}function i(d){if(On(d))return"none";if(typeof d=="string"){let p=a[d];if(!p)throw new J(`Theme \`${d}\` is not included in this bundle. You may want to load it from external source.`);return p}return d}let l=(s.themes??[]).map(d=>i(d)),u=(s.langs??[]).map(d=>n(d)),f=await Vf({engine:s.engine??o(),...s,themes:l,langs:u});return{...f,loadLanguage(...d){return f.loadLanguage(...d.map(n))},loadTheme(...d){return f.loadTheme(...d.map(i))},getBundledLanguages(){return t},getBundledThemes(){return a}}}return r}function jf(e){let t;async function a(o={}){if(t){let r=await t;return await Promise.all([r.loadTheme(...o.themes||[]),r.loadLanguage(...o.langs||[])]),r}else{t=e({...o,themes:[],langs:[]});let r=await t;return await Promise.all([r.loadTheme(...o.themes||[]),r.loadLanguage(...o.langs||[])]),r}}return a}function Xn(e,t){let a=jf(e);async function o(r,s){let n=await a({langs:[s.lang],themes:"theme"in s?[s.theme]:Object.values(s.themes)}),i=await t?.guessEmbeddedLanguages?.(r,s.lang,n);return i&&await n.loadLanguage(...i),n}return{getSingletonHighlighter(r){return a(r)},async codeToHtml(r,s){return(await o(r,s)).codeToHtml(r,s)},async codeToHast(r,s){return(await o(r,s)).codeToHast(r,s)},async codeToTokens(r,s){return(await o(r,s)).codeToTokens(r,s)},async codeToTokensBase(r,s){return(await o(r,s)).codeToTokensBase(r,s)},async codeToTokensWithThemes(r,s){return(await o(r,s)).codeToTokensWithThemes(r,s)},async getLastGrammarState(r,s){return(await a({langs:[s.lang],themes:[s.theme]})).getLastGrammarState(r,s)}}}var Jo=[{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-A7ZNTSV6.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-QBN4KIYA.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-OQUOYMBE.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-QBDEYXMB.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-6DNJTKH3.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-HGSLHT5Y.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-YEJQLMOO.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-NEPTRAQZ.js"))},{id:"hurl",name:"Hurl",import:(()=>import("../hurl-V6ZX2Q3F.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-QPZ7EOS6.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-TEVTGSC7.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-JPSYX5KC.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-X4IFZB22.js"))},{id:"php",name:"PHP",import:(()=>import("../php-3V7EPUAN.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-WIWCR2KQ.js"))},{id:"ruby",name:"Ruby",aliases:["rb"],import:(()=>import("../ruby-LXZJUMFB.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-7WGDLEKX.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-C6YWFFZU.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-O6SLORWU.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"))}],Qn=Object.fromEntries(Jo.map(e=>[e.id,e.import])),Kn=Object.fromEntries(Jo.flatMap(e=>e.aliases?.map(t=>[t,e.import])||[])),Vt={...Qn,...Kn};var $f=[{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"))}],Jn=Object.fromEntries($f.map(e=>[e.id,e.import]));var jt=class extends Error{constructor(t){super(t),this.name="ShikiError"}};function Xf(){return 2147483648}function Qf(){return typeof performance<"u"?performance.now():Date.now()}var Kf=(e,t)=>e+(t-e%t)%t;async function Jf(e){let t,a,o={};function r(c){a=c,o.HEAPU8=new Uint8Array(c),o.HEAPU32=new Uint32Array(c)}function s(c,m,C){o.HEAPU8.copyWithin(c,m,m+C)}function n(c){try{return t.grow(c-a.byteLength+65535>>>16),r(t.buffer),1}catch{}}function i(c){let m=o.HEAPU8.length;c=c>>>0;let C=Xf();if(c>C)return!1;for(let w=1;w<=4;w*=2){let x=m*(1+.2/w);x=Math.min(x,c+100663296);let g=Math.min(C,Kf(Math.max(c,x),65536));if(n(g))return!0}return!1}let l=typeof TextDecoder<"u"?new TextDecoder("utf8"):void 0;function u(c,m,C=1024){let w=m+C,x=m;for(;c[x]&&!(x>=w);)++x;if(x-m>16&&c.buffer&&l)return l.decode(c.subarray(m,x));let g="";for(;m<x;){let h=c[m++];if(!(h&128)){g+=String.fromCharCode(h);continue}let I=c[m++]&63;if((h&224)===192){g+=String.fromCharCode((h&31)<<6|I);continue}let k=c[m++]&63;if((h&240)===224?h=(h&15)<<12|I<<6|k:h=(h&7)<<18|I<<12|k<<6|c[m++]&63,h<65536)g+=String.fromCharCode(h);else{let b=h-65536;g+=String.fromCharCode(55296|b>>10,56320|b&1023)}}return g}function f(c,m){return c?u(o.HEAPU8,c,m):""}let d={emscripten_get_now:Qf,emscripten_memcpy_big:s,emscripten_resize_heap:i,fd_write:()=>0};async function p(){let m=await e({env:d,wasi_snapshot_preview1:d});t=m.memory,r(t.buffer),Object.assign(o,m),o.UTF8ToString=f}return await p(),o}var Zf=Object.defineProperty,Yf=(e,t,a)=>t in e?Zf(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a,re=(e,t,a)=>Yf(e,typeof t!="symbol"?t+"":t,a),de=null;function ec(e){throw new jt(e.UTF8ToString(e.getLastOnigError()))}var Ua=class e{constructor(t){re(this,"utf16Length"),re(this,"utf8Length"),re(this,"utf16Value"),re(this,"utf8Value"),re(this,"utf16OffsetToUtf8"),re(this,"utf8OffsetToUtf16");let a=t.length,o=e._utf8ByteLength(t),r=o!==a,s=r?new Uint32Array(a+1):null;r&&(s[a]=o);let n=r?new Uint32Array(o+1):null;r&&(n[o]=a);let i=new Uint8Array(o),l=0;for(let u=0;u<a;u++){let f=t.charCodeAt(u),d=f,p=!1;if(f>=55296&&f<=56319&&u+1<a){let c=t.charCodeAt(u+1);c>=56320&&c<=57343&&(d=(f-55296<<10)+65536|c-56320,p=!0)}r&&(s[u]=l,p&&(s[u+1]=l),d<=127?n[l+0]=u:d<=2047?(n[l+0]=u,n[l+1]=u):d<=65535?(n[l+0]=u,n[l+1]=u,n[l+2]=u):(n[l+0]=u,n[l+1]=u,n[l+2]=u,n[l+3]=u)),d<=127?i[l++]=d:d<=2047?(i[l++]=192|(d&1984)>>>6,i[l++]=128|(d&63)>>>0):d<=65535?(i[l++]=224|(d&61440)>>>12,i[l++]=128|(d&4032)>>>6,i[l++]=128|(d&63)>>>0):(i[l++]=240|(d&1835008)>>>18,i[l++]=128|(d&258048)>>>12,i[l++]=128|(d&4032)>>>6,i[l++]=128|(d&63)>>>0),p&&u++}this.utf16Length=a,this.utf8Length=o,this.utf16Value=t,this.utf8Value=i,this.utf16OffsetToUtf8=s,this.utf8OffsetToUtf16=n}static _utf8ByteLength(t){let a=0;for(let o=0,r=t.length;o<r;o++){let s=t.charCodeAt(o),n=s,i=!1;if(s>=55296&&s<=56319&&o+1<r){let l=t.charCodeAt(o+1);l>=56320&&l<=57343&&(n=(s-55296<<10)+65536|l-56320,i=!0)}n<=127?a+=1:n<=2047?a+=2:n<=65535?a+=3:a+=4,i&&o++}return a}createString(t){let a=t.omalloc(this.utf8Length);return t.HEAPU8.set(this.utf8Value,a),a}},Ha=class _e{constructor(t){if(re(this,"id",++_e.LAST_ID),re(this,"_onigBinding"),re(this,"content"),re(this,"utf16Length"),re(this,"utf8Length"),re(this,"utf16OffsetToUtf8"),re(this,"utf8OffsetToUtf16"),re(this,"ptr"),!de)throw new jt("Must invoke loadWasm first.");this._onigBinding=de,this.content=t;let a=new Ua(t);this.utf16Length=a.utf16Length,this.utf8Length=a.utf8Length,this.utf16OffsetToUtf8=a.utf16OffsetToUtf8,this.utf8OffsetToUtf16=a.utf8OffsetToUtf16,this.utf8Length<1e4&&!_e._sharedPtrInUse?(_e._sharedPtr||(_e._sharedPtr=de.omalloc(1e4)),_e._sharedPtrInUse=!0,de.HEAPU8.set(a.utf8Value,_e._sharedPtr),this.ptr=_e._sharedPtr):this.ptr=a.createString(de)}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===_e._sharedPtr?_e._sharedPtrInUse=!1:this._onigBinding.ofree(this.ptr)}};re(Ha,"LAST_ID",0);re(Ha,"_sharedPtr",0);re(Ha,"_sharedPtrInUse",!1);var Zn=Ha,Yo=class{constructor(t){if(re(this,"_onigBinding"),re(this,"_ptr"),!de)throw new jt("Must invoke loadWasm first.");let a=[],o=[];for(let i=0,l=t.length;i<l;i++){let u=new Ua(t[i]);a[i]=u.createString(de),o[i]=u.utf8Length}let r=de.omalloc(4*t.length);de.HEAPU32.set(a,r/4);let s=de.omalloc(4*t.length);de.HEAPU32.set(o,s/4);let n=de.createOnigScanner(r,s,t.length);for(let i=0,l=t.length;i<l;i++)de.ofree(a[i]);de.ofree(s),de.ofree(r),n===0&&ec(de),this._onigBinding=de,this._ptr=n}dispose(){this._onigBinding.freeOnigScanner(this._ptr)}findNextMatchSync(t,a,o){let r=0;if(typeof o=="number"&&(r=o),typeof t=="string"){t=new Zn(t);let s=this._findNextMatchSync(t,a,!1,r);return t.dispose(),s}return this._findNextMatchSync(t,a,!1,r)}_findNextMatchSync(t,a,o,r){let s=this._onigBinding,n=s.findNextOnigScannerMatch(this._ptr,t.id,t.ptr,t.utf8Length,t.convertUtf16OffsetToUtf8(a),r);if(n===0)return null;let i=s.HEAPU32,l=n/4,u=i[l++],f=i[l++],d=[];for(let p=0;p<f;p++){let c=t.convertUtf8OffsetToUtf16(i[l++]),m=t.convertUtf8OffsetToUtf16(i[l++]);d[p]={start:c,end:m,length:m-c}}return{index:u,captureIndices:d}}};function tc(e){return typeof e.instantiator=="function"}function ac(e){return typeof e.default=="function"}function oc(e){return typeof e.data<"u"}function rc(e){return typeof Response<"u"&&e instanceof Response}function sc(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 Oa;function nc(e){if(Oa)return Oa;async function t(){de=await Jf(async a=>{let o=e;return o=await o,typeof o=="function"&&(o=await o(a)),typeof o=="function"&&(o=await o(a)),tc(o)?o=await o.instantiator(a):ac(o)?o=await o.default(a):(oc(o)&&(o=o.data),rc(o)?typeof WebAssembly.instantiateStreaming=="function"?o=await ic(o)(a):o=await lc(o)(a):sc(o)?o=await Zo(o)(a):o instanceof WebAssembly.Module?o=await Zo(o)(a):"default"in o&&o.default instanceof WebAssembly.Module&&(o=await Zo(o.default)(a))),"instance"in o&&(o=o.instance),"exports"in o&&(o=o.exports),o})}return Oa=t(),Oa}function Zo(e){return t=>WebAssembly.instantiate(e,t)}function ic(e){return t=>WebAssembly.instantiateStreaming(e,t)}function lc(e){return async t=>{let a=await e.arrayBuffer();return WebAssembly.instantiate(a,t)}}async function Yn(e){return e&&await nc(e),{createScanner(t){return new Yo(t.map(a=>typeof a=="string"?a:a.source))},createString(t){return new Zn(t)}}}var qa=$n({langs:Vt,themes:Jn,engine:()=>Yn(import("../wasm-EOPKAILK.js"))}),{codeToHtml:uc,codeToHast:dc,codeToTokens:fc,codeToTokensBase:cc,codeToTokensWithThemes:pc,getSingletonHighlighter:mc,getLastGrammarState:hc}=Xn(qa,{guessEmbeddedLanguages:Hn});var ei=new Set(Object.keys(Vt)),er=new Map,tr=new Map,gt=new Map,gc=(e,t)=>`${e}-${t[0]}-${t[1]}`,wc=(e,t,a)=>{let o=e.slice(0,100),r=e.length>100?e.slice(-100):"";return`${t}:${a[0]}:${a[1]}:${e.length}:${o}:${r}`},xc=(e,t)=>{let a=gc(e,t);if(er.has(a))return er.get(a);let o=qa({themes:t,langs:[e]});return er.set(a,o),o};function Lc(e={}){var t;let a=(t=e.themes)!=null?t:["github-light","github-dark"];return{name:"shiki",type:"code-highlighter",supportsLanguage(o){return ei.has(o)},getSupportedLanguages(){return Array.from(ei)},getThemes(){return a},highlight({code:o,language:r,themes:s},n){let i=wc(o,r,s);return tr.has(i)?tr.get(i):(n&&(gt.has(i)||gt.set(i,new Set),gt.get(i).add(n)),xc(r,s).then(l=>{let u=l.getLoadedLanguages().includes(r)?r:"text",f=l.codeToTokens(o,{lang:u,themes:{light:s[0],dark:s[1]}});tr.set(i,f);let d=gt.get(i);if(d){for(let p of d)p(f);gt.delete(i)}}).catch(l=>{console.error("[Streamdown Code] Failed to highlight code:",l),gt.delete(i)}),null)}}}var ti=Lc();import{memo as yc}from"react";import{useEffect as Cc,useRef as Ga,useState as Ic}from"react";var Sc=5,ai=400;function oi(e,t,a={}){let{msPerChar:o=Sc}=a,[r,s]=Ic(t?"":e),n=Ga(e),i=Ga(t?0:e.length),l=Ga(0),u=Ga(null);return(e.length<i.current||!e.startsWith(r.slice(0,i.current)))&&(i.current=t?0:e.length),n.current=e,Cc(()=>{if(!t){u.current!==null&&(cancelAnimationFrame(u.current),u.current=null),i.current=e.length,s(e);return}if(n.current.length-i.current>ai&&(i.current=n.current.length-ai),u.current!==null)return;let d=p=>{let c=n.current;if(i.current>=c.length){u.current=null;return}l.current===0&&(l.current=p);let m=p-l.current;if(m>=o){let C=Math.min(Math.floor(m/o),c.length-i.current);i.current+=C,s(c.slice(0,i.current)),l.current=p}u.current=requestAnimationFrame(d)};return u.current=requestAnimationFrame(d),()=>{u.current!==null&&(cancelAnimationFrame(u.current),u.current=null)}},[e,t,o]),r}import{jsx as Wa}from"react/jsx-runtime";var ar=({className:e,from:t,children:a,...o})=>Wa("div",{className:v("ww:group ww:flex ww:w-full",t==="user"?"is-user ww:ml-auto ww:max-w-[80%] ww:flex-col ww:items-end":"is-assistant ww:flex-col",e),...o,children:Wa("div",{className:v("ww:flex ww:min-w-0 ww:flex-col ww:gap-2","ww:w-full"),children:a})}),or=({children:e,className:t,...a})=>Wa("div",{className:v("ww:flex ww:w-fit ww:min-w-0 ww:max-w-full ww:flex-col ww:gap-2 ww:overflow-hidden ww:text-base","ww:group-[.is-user]:ml-auto ww:group-[.is-user]:rounded-lg ww:group-[.is-user]:bg-user-bubble ww:group-[.is-user]:px-4 ww:group-[.is-user]:py-3 ww:group-[.is-user]:text-primary-foreground","ww:group-[.is-assistant]:text-foreground",t),...a,children:e}),bc={cjk:ko,code:ti},kc={cjk:ko},Tc={enabled:!1};function Pc({className:e,linkSafety:t,isStreaming:a,children:o,...r}){let n=oi(typeof o=="string"?o:"",!!a),i=typeof o=="string"?n:o;return Wa(Lt,{className:v("ww:size-full ww:[&>*:first-child]:mt-0 ww:[&>*:last-child]:mb-0",e),linkSafety:t??Tc,plugins:a?kc:bc,...r,children:i})}var za=yc(Pc,(e,t)=>e.children===t.children&&e.isStreaming===t.isStreaming);za.displayName="MessageResponse";import{createContext as Rc,memo as nr,useCallback as Fc,useContext as Bc,useEffect as rr,useMemo as Dc,useRef as ri,useState as sr}from"react";import{memo as Ac}from"react";import{jsx as Mc}from"react/jsx-runtime";var vc=({as:e="span",className:t,duration:a=2,style:o,children:r,...s})=>{let n={backgroundImage:"linear-gradient(90deg, var(--ww-color-muted-foreground) 0%, var(--ww-color-muted-foreground) 40%, var(--ww-color-foreground) 50%, var(--ww-color-muted-foreground) 60%, var(--ww-color-muted-foreground) 100%)",backgroundSize:"250% 100%",WebkitBackgroundClip:"text",backgroundClip:"text",color:"transparent",animation:`ww-shimmer ${a}s linear infinite`,...o};return Mc(e,{"data-waniwani-shimmer":"",className:v("ww:inline-block",t),style:n,...s,children:r})},$e=Ac(vc);$e.displayName="Shimmer";import{Fragment as Nc,jsx as Fe,jsxs as Oc}from"react/jsx-runtime";var si=Rc(null);function ni(){let e=Bc(si);if(!e)throw new Error("Reasoning components must be used within <Reasoning>");return e}var Ec=1e3,_c=1e3,ir=nr(({className:e,isStreaming:t=!1,open:a,defaultOpen:o,onOpenChange:r,duration:s,children:n,...i})=>{let l=o??t,u=o===!1,f=a!==void 0,[d,p]=sr(l),c=f?a:d,m=Fc(y=>{f||p(y),r?.(y)},[f,r]),[C,w]=sr(void 0),x=s??C,g=ri(t),[h,I]=sr(!1),k=ri(null);rr(()=>{t?(g.current=!0,k.current===null&&(k.current=Date.now())):k.current!==null&&(w(Math.ceil((Date.now()-k.current)/_c)),k.current=null)},[t]),rr(()=>{t&&!c&&!u&&m(!0)},[t,c,u,m]),rr(()=>{if(g.current&&!t&&c&&!h){let y=setTimeout(()=>{m(!1),I(!0)},Ec);return()=>clearTimeout(y)}},[t,c,h,m]);let b=Dc(()=>({isStreaming:t,isOpen:c,setIsOpen:m,duration:x}),[t,c,m,x]);return Fe(si.Provider,{value:b,children:Fe("div",{className:v("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:n})})});ir.displayName="Reasoning";var lr=nr(({className:e,children:t,getThinkingMessage:a,onClick:o,...r})=>{let{t:s}=U(),{isStreaming:n,isOpen:i,duration:l,setIsOpen:u}=ni(),d=a??((p,c)=>p||c===0?Fe($e,{duration:1.6,children:s.reasoning.thinking}):c===void 0?Fe("span",{children:s.reasoning.thoughtBrief}):Fe("span",{children:s.reasoning.thoughtForSeconds(c)}));return Fe("button",{type:"button","aria-expanded":i,onClick:p=>{u(!i),o?.(p)},className:v("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),...r,children:t??Oc(Nc,{children:[Fe(It,{className:"ww:size-4 ww:shrink-0"}),d(n,l)]})})});lr.displayName="ReasoningTrigger";var ur=nr(({className:e,children:t,...a})=>{let{isOpen:o}=ni();return Fe("div",{className:v("ww:grid ww:transition-[grid-template-rows,opacity] ww:duration-200 ww:ease-out",o?"ww:grid-rows-[1fr] ww:opacity-100":"ww:grid-rows-[0fr] ww:opacity-0"),children:Fe("div",{className:"ww:min-h-0 ww:overflow-hidden",children:Fe("div",{className:v("ww:text-sm ww:text-muted-foreground",e),...a,children:Fe(Lt,{children:t})})})})});ur.displayName="ReasoningContent";import{createContext as Uc,useCallback as Hc,useContext as di,useEffect as qc,useMemo as fr,useRef as Gc,useState as cr}from"react";import{Fragment as ui,jsx as j,jsxs as ot}from"react/jsx-runtime";function Wc(e,t=80){if(e==null)return String(e);if(typeof e!="object")return String(e).slice(0,t);if(Array.isArray(e))return`Array(${e.length})`;let a=JSON.stringify(e);if(a.length<=t)return a;let o=Object.entries(e),r=[],s=t-2;for(let[n,i]of o){if(s<=8)break;let l=n.length>4?`${n.slice(0,4)}\u2026`:n,u;typeof i=="string"?u=i.length>2?`'${i.slice(0,1)}\u2026`:`'${i}'`:Array.isArray(i)?u=`Array(${i.length})`:typeof i=="object"&&i!==null?u="{\u2026}":u=String(i);let f=`${l}\u2009${u}`;r.push(f),s-=f.length+3}return`{${r.join(", ")}}`}function zc({text:e,className:t}){let{t:a}=U(),[o,r]=cr(!1),s=Gc(null);qc(()=>()=>{s.current&&clearTimeout(s.current)},[]);let n=Hc(async i=>{i.stopPropagation();try{await navigator.clipboard.writeText(e),r(!0),s.current&&clearTimeout(s.current),s.current=setTimeout(()=>r(!1),2e3)}catch{}},[e]);return j(Te,{variant:"ghost",size:"sm",onClick:n,className:v("ww:h-auto ww:gap-1 ww:px-1.5 ww:py-0.5 ww:text-xs ww:text-muted-foreground ww:hover:text-foreground",t),children:o?ot(ui,{children:[j(St,{className:"ww:size-3.5"}),j("span",{children:a.tool.copied})]}):ot(ui,{children:[j(kt,{className:"ww:size-3.5"}),j("span",{children:a.tool.copy})]})})}function fi({data:e,label:t,className:a,...o}){let[r,s]=cr(!1),n=fr(()=>JSON.stringify(e,null,2),[e]),i=Wc(e);return ot("div",{className:v("ww:rounded-lg ww:bg-tool-card",a),...o,children:[ot("div",{className:"ww:flex ww:items-center ww:justify-between ww:px-3 ww:pt-2.5 ww:pb-1.5",children:[j("span",{className:"ww:text-xs ww:font-medium ww:text-muted-foreground",children:t}),j(zc,{text:n})]}),ot("button",{type:"button",onClick:()=>s(l=>!l),className:"ww:flex ww:w-full ww:items-start ww:gap-2 ww:px-3 ww:pb-3 ww:text-left",children:[j(bt,{className:v("ww:mt-0.5 ww:size-3.5 ww:shrink-0 ww:text-muted-foreground ww:transition-transform ww:duration-150",r&&"ww:rotate-90")}),r?j("pre",{className:"ww:overflow-x-auto ww:text-xs ww:font-mono ww:text-foreground ww:whitespace-pre-wrap ww:break-all",children:j("code",{children:n})}):j("span",{className:"ww:truncate ww:text-xs ww:font-mono ww:text-foreground/80",children:i})]})]})}var pr=Uc({open:!1,toggle:()=>{}});function ci({className:e,defaultOpen:t=!1,children:a,...o}){let[r,s]=cr(t);return j(pr.Provider,{value:{open:r,toggle:()=>s(n=>!n)},children:j("div",{className:v("ww:mb-4 ww:w-full",e),"data-state":r?"open":"closed",style:{animation:"ww-fade-in 0.2s ease-out"},...o,children:a})})}function pi({className:e,title:t,state:a,...o}){let{open:r,toggle:s}=di(pr),n=a==="input-available"||a==="input-streaming",i=t??"";return ot("button",{type:"button",onClick:s,className:v("ww:flex ww:w-full ww:items-center ww:gap-2 ww:text-sm ww:text-muted-foreground ww:transition-colors ww:hover:text-foreground",e),"aria-expanded":r,...o,children:[j(qe,{className:"ww:size-4 ww:shrink-0"}),j("span",{className:"ww:truncate",children:n?j($e,{duration:1.6,children:i}):i}),j(yt,{className:v("ww:size-4 ww:shrink-0 ww:transition-transform ww:duration-200",r&&"ww:rotate-180")})]})}function mi({className:e,title:t,state:a,...o}){let r=a==="input-available"||a==="input-streaming",s=t??"";return j("div",{className:v("ww:mb-4 ww:flex ww:items-center ww:gap-2 ww:text-sm ww:text-muted-foreground",e),style:{animation:"ww-fade-in 0.2s ease-out"},...o,children:j("span",{className:"ww:truncate",children:r?j($e,{duration:1.6,children:s}):s})})}function hi({className:e,children:t,...a}){let{open:o}=di(pr);return j("div",{className:v("ww:grid ww:transition-[grid-template-rows,opacity] ww:duration-200 ww:ease-out",o?"ww:grid-rows-[1fr] ww:opacity-100":"ww:grid-rows-[0fr] ww:opacity-0"),children:j("div",{className:"ww:min-h-0 ww:overflow-hidden",children:j("div",{className:v("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 gi({className:e,input:t,debug:a,...o}){let{t:r}=U(),s=fr(()=>{if(!a&&typeof t=="object"&&t!==null&&!Array.isArray(t)){let{_meta:n,...i}=t;return i}return t},[t,a]);return j(fi,{data:s,label:r.tool.request,className:e,...o})}function dr(e){if(!(typeof e!="object"||e===null))return e}function wi(e){return dr(e?.ui)}function xi(e){return dr(dr(e)?._meta)}function ii(e){if(!e)return;let t=wi(e)?.resourceUri;if(typeof t=="string"&&t.length>0)return t;let a=e["ui/resourceUri"];if(typeof a=="string"&&a.length>0)return a;let o=e["openai/outputTemplate"];if(typeof o=="string"&&o.length>0)return o}function li(e){return wi(e)?.autoHeight===!0}function $t(e,t,a){if(e){let o=ii(a?.[e]?._meta);if(o)return o}return ii(xi(t))}function Li(e,t,a){return e&&li(a?.[e]?._meta)?!0:li(xi(t))}function Ci({className:e,output:t,errorText:a,debug:o,...r}){let{t:s}=U(),n=fr(()=>{if(!o&&typeof t=="object"&&t!==null&&!Array.isArray(t)){let{_meta:i,...l}=t;return l}return t},[t,o]);return t||a?a?ot("div",{className:v("ww:space-y-2",e),...r,children:[j("h4",{className:"ww:text-xs ww:font-medium ww:uppercase ww:tracking-wide ww:text-muted-foreground",children:s.tool.error}),j("div",{className:"ww:rounded-lg ww:bg-destructive/10 ww:p-3 ww:text-xs ww:text-destructive",children:a})]}):j(fi,{data:n,label:s.tool.response,className:e,...r}):null}import{jsx as Ii,jsxs as Vc}from"react/jsx-runtime";function Si(e){return e.type==="text"||e.type==="reasoning"||e.type==="file"||"toolCallId"in e}function mr(e){return e.parts.some(Si)}function yi(e,t,a){if(t!=="submitted"&&t!=="streaming")return!1;let o=e[e.length-1];return!o||o.role!=="assistant"?!0:!(a?.ignoreToolParts?o.parts.some(s=>Si(s)&&!("toolCallId"in s)):mr(o))}function bi({className:e,...t}){let{t:a}=U();return Vc("div",{"aria-live":"polite",className:v("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:[Ii(Mt,{className:"ww:size-4 ww:shrink-0"}),Ii($e,{duration:1.6,children:a.workingIndicator.default})]})}import{useCallback as jc,useEffect as Ti,useMemo as $c,useRef as Se,useState as Pi}from"react";function wt(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 ki(e,t){return!wt(e)&&!wt(t)?null:wt(e)?wt(t)?{...e.content||t.content?{content:[...e.content??[],...t.content??[]]}:{},...e.structuredContent||t.structuredContent?{structuredContent:{...e.structuredContent??{},...t.structuredContent??{}}}:{}}:{...e.content?{content:[...e.content]}:{},...e.structuredContent?{structuredContent:{...e.structuredContent}}:{}}:{...t?.content?{content:[...t.content]}:{},...t?.structuredContent?{structuredContent:{...t.structuredContent}}:{}}}import{jsx as rp}from"react/jsx-runtime";var Xc="/api/mcp/resource",Qc=500,Kc=0,Jc=16,Zc="2026-01-26",Yc=300,ep=3e3,tp=3;function ap(e){if(typeof e!="string")return;let t=e.trim();return t.length>0?t:void 0}function op(e,t,a){return $t(e,t,a)?!1:t._meta?.["waniwani/autoInjectResultText"]!==!1}function hr({resourceUri:e,toolInput:t,toolResult:a,resourceEndpoint:o=Xc,chatSessionId:r,isDark:s=!1,className:n,autoHeight:i=!1,onOpenLink:l,onFollowUp:u,onCallTool:f,onDisplayModeChange:d,isFullscreen:p=!1,toolDefinitions:c}){let m=Se(null),C=Se(t),w=Se(a),x=Se({width:0,height:0}),g=Se(null),h=Se(!1),I=Se(0),k=Se("inline"),[b,y]=Pi(Kc),[M,E]=Pi(void 0),B=Se(l),T=Se(u),S=Se(f),P=Se(d),$=Se(r),z=Se(c);C.current=t,w.current=a,B.current=l,T.current=u,S.current=f,P.current=d,$.current=r,z.current=c;let Ie=jc(X=>i?Math.max(X+Jc,0):Math.min(Math.max(X,50),Qc),[i]),he=$c(()=>{let X=o.includes("?")?"&":"?";return`${o}${X}uri=${encodeURIComponent(e)}`},[o,e]),ge=Se(s);return ge.current=s,Ti(()=>{if(!h.current)return;let X=m.current;X?.contentWindow&&X.contentWindow.postMessage({jsonrpc:"2.0",method:"ui/notifications/host-context-changed",params:{theme:s?"dark":"light"}},"*")},[s]),Ti(()=>{let X=m.current;if(!X)return;let Y=!1,we=!1,ie=null,le=null,Be=setTimeout(()=>{if(Y||we||I.current>=tp)return;I.current+=1;let q=new URL(X.src);q.searchParams.set("_retry",String(I.current)),X.src=q.toString()},ep),D=q=>{X.contentWindow?.postMessage(q,"*")},Q=q=>{if(Y||q.source!==X.contentWindow)return;let H=q.data;if(!H||typeof H!="object"||H.jsonrpc!=="2.0")return;let K=H.method,N=H.id;if(K==="ui/initialize"&&N!=null){we=!0,clearTimeout(Be),D({jsonrpc:"2.0",id:N,result:{protocolVersion:H.params?.protocolVersion??Zc,hostInfo:{name:"WaniWani Chat",version:"1.0.0"},hostCapabilities:{openLinks:{},message:{text:{}},tools:{},updateModelContext:{text:{},structuredContent:{}}},hostContext:{theme:ge.current?"dark":"light",displayMode:k.current}}});return}if(K==="ui/notifications/initialized"){h.current=!0;let G=C.current,W=w.current,A=W._meta&&typeof W._meta=="object"?W._meta:null,R=ap($.current),O=A&&typeof A.waniwani=="object"&&A.waniwani!==null?A.waniwani:null,ee=O||R?{...O??{},...R?{sessionId:R}:{}}:void 0,xe=A||ee?{...A??{},...ee?{waniwani:ee}:{}}:void 0;D({jsonrpc:"2.0",method:"ui/notifications/tool-input",params:{arguments:G}});let ve=W.content??[{type:"text",text:JSON.stringify(W)}];D({jsonrpc:"2.0",method:"ui/notifications/tool-result",params:{content:ve,structuredContent:W.structuredContent,_meta:xe,meta:xe}});return}if(K==="ui/notifications/size-changed"){let G=H.params,W=typeof G?.height=="number"?G.height:void 0,A=typeof G?.width=="number"?G.width:void 0,R=x.current,O=W!==void 0&&W!==R.height,ee=A!==void 0&&A!==R.width;if(!O&&!ee)return;if(O&&W!==void 0){R.height=W;let xe=Ie(W),ve=X.getBoundingClientRect().height;if(g.current&&(g.current.cancel(),g.current=null),y(xe),X.animate&&Math.abs(ve-xe)>2){let He=X.animate([{height:`${ve}px`},{height:`${xe}px`}],{duration:Yc,easing:"ease-out",fill:"forwards"});g.current=He,He.onfinish=()=>{g.current===He&&(He.cancel(),g.current=null)}}}ee&&i&&A!==void 0&&(R.width=A,E(A));return}if(K==="ui/open-link"&&N!=null){let G=H.params?.url;typeof G=="string"&&(B.current?B.current(G):window.open(G,"_blank","noopener,noreferrer")),D({jsonrpc:"2.0",id:N,result:{}});return}if(K==="ui/message"&&N!=null){if(T.current&&H.params){let G=H.params,W=ie;if(ie=null,le){clearTimeout(le.timer);let A=le.text;le=null;let R=(G.content??[]).map(O=>O.text??"").join("").trim();G={...G,content:[{type:"text",text:`${R}
|
|
12
|
+
\f\r "&'<=>\``.split("")]],single:[["&'".split(""),"\"&'`".split("")],["\0&'".split(""),"\0\"&'`".split("")]],double:[['"&'.split(""),"\"&'`".split("")],['\0"&'.split(""),"\0\"&'`".split("")]]};function Dn(e,t,a,o){let r=o.schema,s=r.space==="svg"?!1:o.settings.omitOptionalTags,n=r.space==="svg"?o.settings.closeEmptyElements:o.settings.voids.includes(e.tagName.toLowerCase()),i=[],l;r.space==="html"&&e.tagName==="svg"&&(o.schema=sa);let u=mf(o,e.properties),f=o.all(r.space==="html"&&e.tagName==="template"?e.content:e);return o.schema=r,f&&(n=!1),(u||!s||!Bn(e,t,a))&&(i.push("<",e.tagName,u?" "+u:""),n&&(r.space==="svg"||o.settings.closeSelfClosing)&&(l=u.charAt(u.length-1),(!o.settings.tightSelfClosing||l==="/"||l&&l!=='"'&&l!=="'")&&i.push(" "),i.push("/")),i.push(">")),i.push(f),!n&&(!s||!zt(e,t,a))&&i.push("</"+e.tagName+">"),i.join("")}function mf(e,t){let a=[],o=-1,r;if(t){for(r in t)if(t[r]!==null&&t[r]!==void 0){let s=hf(e,r,t[r]);s&&a.push(s)}}for(;++o<a.length;){let s=e.settings.tightAttributes?a[o].charAt(a[o].length-1):void 0;o!==a.length-1&&s!=='"'&&s!=="'"&&(a[o]+=" ")}return a.join("")}function hf(e,t,a){let o=Gr(e.schema,t),r=e.settings.allowParseErrors&&e.schema.space==="html"?0:1,s=e.settings.allowDangerousCharacters?0:1,n=e.quote,i;if(o.overloadedBoolean&&(a===o.attribute||a==="")?a=!0:(o.boolean||o.overloadedBoolean)&&(typeof a!="string"||a===o.attribute||a==="")&&(a=!!a),a==null||a===!1||typeof a=="number"&&Number.isNaN(a))return"";let l=Ge(o.attribute,Object.assign({},e.settings.characterReferences,{subset:Fa.name[r][s]}));return a===!0||(a=Array.isArray(a)?(o.commaSeparated?Vr:jr)(a,{padLeft:!e.settings.tightCommaSeparatedLists}):String(a),e.settings.collapseEmptyAttributes&&!a)?l:(e.settings.preferUnquoted&&(i=Ge(a,Object.assign({},e.settings.characterReferences,{attribute:!0,subset:Fa.unquoted[r][s]}))),i!==a&&(e.settings.quoteSmart&&mo(a,n)>mo(a,e.alternative)&&(n=e.alternative),i=n+Ge(a,Object.assign({},e.settings.characterReferences,{subset:(n==="'"?Fa.single:Fa.double)[r][s],attribute:!0}))+n),l+(i&&"="+i))}var gf=["<","&"];function Ba(e,t,a,o){return a&&a.type==="element"&&(a.tagName==="script"||a.tagName==="style")?e.value:Ge(e.value,Object.assign({},o.settings.characterReferences,{subset:gf}))}function En(e,t,a,o){return o.settings.allowDangerousHtml?e.value:Ba(e,t,a,o)}function _n(e,t,a,o){return o.all(e)}var Nn=zr("type",{invalid:wf,unknown:xf,handlers:{comment:An,doctype:vn,element:Dn,raw:En,root:_n,text:Ba}});function wf(e){throw new Error("Expected node, not `"+e+"`")}function xf(e){let t=e;throw new Error("Cannot compile unknown node `"+t.type+"`")}var Lf={},Cf={},If=[];function zo(e,t){let a=t||Lf,o=a.quote||'"',r=o==='"'?"'":'"';if(o!=='"'&&o!=="'")throw new Error("Invalid quote `"+o+"`, expected `'` or `\"`");return{one:Sf,all:yf,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||qr,characterReferences:a.characterReferences||Cf,closeSelfClosing:a.closeSelfClosing||!1,closeEmptyElements:a.closeEmptyElements||!1},schema:a.space==="svg"?sa:Wr,quote:o,alternative:r}.one(Array.isArray(e)?{type:"root",children:e}:e,void 0,void 0)}function Sf(e,t,a){return Nn(e,t,a,this)}function yf(e){let t=[],a=e&&e.children||If,o=-1;for(;++o<a.length;)t[o]=this.one(a[o],o,e);return t.join("")}function Da(e,t){let a=typeof e=="string"?{}:{...e.colorReplacements},o=typeof e=="string"?e:e.name;for(let[r,s]of Object.entries(t?.colorReplacements||{}))typeof s=="string"?a[r]=s:r===o&&Object.assign(a,s);return a}function Xe(e,t){return e&&(t?.[e?.toLowerCase()]||e)}function bf(e){return Array.isArray(e)?e:[e]}async function zn(e){return Promise.resolve(typeof e=="function"?e():e).then(t=>t.default||t)}function Ko(e){return!e||["plaintext","txt","text","plain"].includes(e)}function Vn(e){return e==="ansi"||Ko(e)}function Jo(e){return e==="none"}function jn(e){return Jo(e)}function $n(e,t){if(!t)return e;e.properties||={},e.properties.class||=[],typeof e.properties.class=="string"&&(e.properties.class=e.properties.class.split(/\s+/g)),Array.isArray(e.properties.class)||(e.properties.class=[]);let a=Array.isArray(t)?t:t.split(/\s+/g);for(let o of a)o&&!e.properties.class.includes(o)&&e.properties.class.push(o);return e}function Ha(e,t=!1){if(e.length===0)return[["",0]];let a=e.split(/(\r?\n)/g),o=0,r=[];for(let s=0;s<a.length;s+=2){let n=t?a[s]+(a[s+1]||""):a[s];r.push([n,o]),o+=a[s].length,o+=a[s+1]?.length||0}return r}function kf(e){let t=Ha(e,!0).map(([r])=>r);function a(r){if(r===e.length)return{line:t.length-1,character:t[t.length-1].length};let s=r,n=0;for(let i of t){if(s<i.length)break;s-=i.length,n++}return{line:n,character:s}}function o(r,s){let n=0;for(let i=0;i<r;i++)n+=t[i].length;return n+=s,n}return{lines:t,indexToPos:a,posToIndex:o}}function Xn(e,t,a){let o=new Set;for(let s of e.matchAll(/:?lang=["']([^"']+)["']/g)){let n=s[1].toLowerCase().trim();n&&o.add(n)}for(let s of e.matchAll(/(?:```|~~~)([\w-]+)/g)){let n=s[1].toLowerCase().trim();n&&o.add(n)}for(let s of e.matchAll(/\\begin\{([\w-]+)\}/g)){let n=s[1].toLowerCase().trim();n&&o.add(n)}for(let s of e.matchAll(/<script\s+(?:type|lang)=["']([^"']+)["']/gi)){let n=s[1].toLowerCase().trim(),i=n.includes("/")?n.split("/").pop():n;i&&o.add(i)}if(!a)return Array.from(o);let r=a.getBundledLanguages();return Array.from(o).filter(s=>s&&r[s])}var Zo="light-dark()",Tf=["color","background-color"];function Pf(e,t){let a=0,o=[];for(let r of t)r>a&&o.push({...e,content:e.content.slice(a,r),offset:e.offset+a}),a=r;return a<e.content.length&&o.push({...e,content:e.content.slice(a),offset:e.offset+a}),o}function Af(e,t){let a=Array.from(t instanceof Set?t:new Set(t)).sort((o,r)=>o-r);return a.length?e.map(o=>o.flatMap(r=>{let s=a.filter(n=>r.offset<n&&n<r.offset+r.content.length).map(n=>n-r.offset).sort((n,i)=>n-i);return s.length?Pf(r,s):r})):e}function vf(e,t,a,o,r="css-vars"){let s={content:e.content,explanation:e.explanation,offset:e.offset},n=t.map(f=>Ea(e.variants[f])),i=new Set(n.flatMap(f=>Object.keys(f))),l={},u=(f,d)=>{let p=d==="color"?"":d==="background-color"?"-bg":`-${d}`;return a+t[f]+(d==="color"?"":p)};return n.forEach((f,d)=>{for(let p of i){let c=f[p]||"inherit";if(d===0&&o&&Tf.includes(p))if(o===Zo&&n.length>1){let m=t.findIndex(g=>g==="light"),L=t.findIndex(g=>g==="dark");if(m===-1||L===-1)throw new K('When using `defaultColor: "light-dark()"`, you must provide both `light` and `dark` themes');let x=n[m][p]||"inherit",w=n[L][p]||"inherit";l[p]=`light-dark(${x}, ${w})`,r==="css-vars"&&(l[u(d,p)]=c)}else l[p]=c;else r==="css-vars"&&(l[u(d,p)]=c)}}),s.htmlStyle=l,s}function Ea(e){let t={};if(e.color&&(t.color=e.color),e.bgColor&&(t["background-color"]=e.bgColor),e.fontStyle){e.fontStyle&ce.Italic&&(t["font-style"]="italic"),e.fontStyle&ce.Bold&&(t["font-weight"]="bold");let a=[];e.fontStyle&ce.Underline&&a.push("underline"),e.fontStyle&ce.Strikethrough&&a.push("line-through"),a.length&&(t["text-decoration"]=a.join(" "))}return t}function $o(e){return typeof e=="string"?e:Object.entries(e).map(([t,a])=>`${t}:${a}`).join(";")}var Qn=new WeakMap;function Ua(e,t){Qn.set(e,t)}function jt(e){return Qn.get(e)}var ht=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(bf(a).map(o=>[o,Aa])),t)}constructor(...t){if(t.length===2){let[a,o]=t;this.lang=o,this._stacks=a}else{let[a,o,r]=t;this.lang=o,this._stacks={[r]:a}}}getInternalStack(t=this.theme){return this._stacks[t]}getScopes(t=this.theme){return Mf(this._stacks[t])}toJSON(){return{lang:this.lang,theme:this.theme,themes:this.themes,scopes:this.getScopes()}}};function Mf(e){let t=[],a=new Set;function o(r){if(a.has(r))return;a.add(r);let s=r?.nameScopesList?.scopeName;s&&t.push(s),r.parent&&o(r.parent)}return o(e),t}function Rf(e,t){if(!(e instanceof ht))throw new K("Invalid grammar state");return e.getInternalStack(t)}function Ff(){let e=new WeakMap;function t(a){if(!e.has(a.meta)){let o=function(n){if(typeof n=="number"){if(n<0||n>a.source.length)throw new K(`Invalid decoration offset: ${n}. Code length: ${a.source.length}`);return{...r.indexToPos(n),offset:n}}else{let i=r.lines[n.line];if(i===void 0)throw new K(`Invalid decoration position ${JSON.stringify(n)}. Lines length: ${r.lines.length}`);let l=n.character;if(l<0&&(l=i.length+l),l<0||l>i.length)throw new K(`Invalid decoration position ${JSON.stringify(n)}. Line ${n.line} length: ${i.length}`);return{...n,character:l,offset:r.posToIndex(n.line,l)}}},r=kf(a.source),s=(a.options.decorations||[]).map(n=>({...n,start:o(n.start),end:o(n.end)}));Bf(s),e.set(a.meta,{decorations:s,converter:r,source:a.source})}return e.get(a.meta)}return{name:"shiki:decorations",tokens(a){if(!this.options.decorations?.length)return;let r=t(this).decorations.flatMap(n=>[n.start.offset,n.end.offset]);return Af(a,r)},code(a){if(!this.options.decorations?.length)return;let o=t(this),r=Array.from(a.children).filter(f=>f.type==="element"&&f.tagName==="span");if(r.length!==o.converter.lines.length)throw new K(`Number of lines in code element (${r.length}) does not match the number of lines in the source (${o.converter.lines.length}). Failed to apply decorations.`);function s(f,d,p,c){let m=r[f],L="",x=-1,w=-1;if(d===0&&(x=0),p===0&&(w=0),p===Number.POSITIVE_INFINITY&&(w=m.children.length),x===-1||w===-1)for(let h=0;h<m.children.length;h++)L+=Kn(m.children[h]),x===-1&&L.length===d&&(x=h+1),w===-1&&L.length===p&&(w=h+1);if(x===-1)throw new K(`Failed to find start index for decoration ${JSON.stringify(c.start)}`);if(w===-1)throw new K(`Failed to find end index for decoration ${JSON.stringify(c.end)}`);let g=m.children.slice(x,w);if(!c.alwaysWrap&&g.length===m.children.length)i(m,c,"line");else if(!c.alwaysWrap&&g.length===1&&g[0].type==="element")i(g[0],c,"token");else{let h={type:"element",tagName:"span",properties:{},children:g};i(h,c,"wrapper"),m.children.splice(x,g.length,h)}}function n(f,d){r[f]=i(r[f],d,"line")}function i(f,d,p){let c=d.properties||{},m=d.transform||(L=>L);return f.tagName=d.tagName||"span",f.properties={...f.properties,...c,class:f.properties.class},d.properties?.class&&$n(f,d.properties.class),f=m(f,p)||f,f}let l=[],u=o.decorations.sort((f,d)=>d.start.offset-f.start.offset||f.end.offset-d.end.offset);for(let f of u){let{start:d,end:p}=f;if(d.line===p.line)s(d.line,d.character,p.character,f);else if(d.line<p.line){s(d.line,d.character,Number.POSITIVE_INFINITY,f);for(let c=d.line+1;c<p.line;c++)l.unshift(()=>n(c,f));s(p.line,0,p.character,f)}}l.forEach(f=>f())}}}function Bf(e){for(let t=0;t<e.length;t++){let a=e[t];if(a.start.offset>a.end.offset)throw new K(`Invalid decoration range: ${JSON.stringify(a.start)} - ${JSON.stringify(a.end)}`);for(let o=t+1;o<e.length;o++){let r=e[o],s=a.start.offset<=r.start.offset&&r.start.offset<a.end.offset,n=a.start.offset<r.end.offset&&r.end.offset<=a.end.offset,i=r.start.offset<=a.start.offset&&a.start.offset<r.end.offset,l=r.start.offset<a.end.offset&&a.end.offset<=r.end.offset;if(s||n||i||l){if(s&&n||i&&l||i&&a.start.offset===a.end.offset||n&&r.start.offset===r.end.offset)continue;throw new K(`Decorations ${JSON.stringify(a.start)} and ${JSON.stringify(r.start)} intersect.`)}}}}function Kn(e){return e.type==="text"?e.value:e.type==="element"?e.children.map(Kn).join(""):""}var Df=[Ff()];function _a(e){let t=Ef(e.transformers||[]);return[...t.pre,...t.normal,...t.post,...Df]}function Ef(e){let t=[],a=[],o=[];for(let r of e)switch(r.enforce){case"pre":t.push(r);break;case"post":a.push(r);break;default:o.push(r)}return{pre:t,post:a,normal:o}}var rt=["black","red","green","yellow","blue","magenta","cyan","white","brightBlack","brightRed","brightGreen","brightYellow","brightBlue","brightMagenta","brightCyan","brightWhite"],Vo={1:"bold",2:"dim",3:"italic",4:"underline",7:"reverse",8:"hidden",9:"strikethrough"};function _f(e,t){let a=e.indexOf("\x1B",t);if(a!==-1&&e[a+1]==="["){let o=e.indexOf("m",a);if(o!==-1)return{sequence:e.substring(a+2,o).split(";"),startPosition:a,position:o+1}}return{position:e.length}}function On(e){let t=e.shift();if(t==="2"){let a=e.splice(0,3).map(o=>Number.parseInt(o));return a.length!==3||a.some(o=>Number.isNaN(o))?void 0:{type:"rgb",rgb:a}}else if(t==="5"){let a=e.shift();if(a)return{type:"table",index:Number(a)}}}function Nf(e){let t=[];for(;e.length>0;){let a=e.shift();if(!a)continue;let o=Number.parseInt(a);if(!Number.isNaN(o))if(o===0)t.push({type:"resetAll"});else if(o<=9)Vo[o]&&t.push({type:"setDecoration",value:Vo[o]});else if(o<=29){let r=Vo[o-20];r&&(t.push({type:"resetDecoration",value:r}),r==="dim"&&t.push({type:"resetDecoration",value:"bold"}))}else if(o<=37)t.push({type:"setForegroundColor",value:{type:"named",name:rt[o-30]}});else if(o===38){let r=On(e);r&&t.push({type:"setForegroundColor",value:r})}else if(o===39)t.push({type:"resetForegroundColor"});else if(o<=47)t.push({type:"setBackgroundColor",value:{type:"named",name:rt[o-40]}});else if(o===48){let r=On(e);r&&t.push({type:"setBackgroundColor",value:r})}else o===49?t.push({type:"resetBackgroundColor"}):o===53?t.push({type:"setDecoration",value:"overline"}):o===55?t.push({type:"resetDecoration",value:"overline"}):o>=90&&o<=97?t.push({type:"setForegroundColor",value:{type:"named",name:rt[o-90+8]}}):o>=100&&o<=107&&t.push({type:"setBackgroundColor",value:{type:"named",name:rt[o-100+8]}})}return t}function Of(){let e=null,t=null,a=new Set;return{parse(o){let r=[],s=0;do{let n=_f(o,s),i=n.sequence?o.substring(s,n.startPosition):o.substring(s);if(i.length>0&&r.push({value:i,foreground:e,background:t,decorations:new Set(a)}),n.sequence){let l=Nf(n.sequence);for(let u of l)u.type==="resetAll"?(e=null,t=null,a.clear()):u.type==="resetForegroundColor"?e=null:u.type==="resetBackgroundColor"?t=null:u.type==="resetDecoration"&&a.delete(u.value);for(let u of l)u.type==="setForegroundColor"?e=u.value:u.type==="setBackgroundColor"?t=u.value:u.type==="setDecoration"&&a.add(u.value)}s=n.position}while(s<o.length);return r}}}var Hf={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 Uf(e=Hf){function t(i){return e[i]}function a(i){return`#${i.map(l=>Math.max(0,Math.min(l,255)).toString(16).padStart(2,"0")).join("")}`}let o;function r(){if(o)return o;o=[];for(let u=0;u<rt.length;u++)o.push(t(rt[u]));let i=[0,95,135,175,215,255];for(let u=0;u<6;u++)for(let f=0;f<6;f++)for(let d=0;d<6;d++)o.push(a([i[u],i[f],i[d]]));let l=8;for(let u=0;u<24;u++,l+=10)o.push(a([l,l,l]));return o}function s(i){return r()[i]}function n(i){switch(i.type){case"named":return t(i.name);case"rgb":return a(i.rgb);case"table":return s(i.index)}}return{value:n}}var qf={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 Gf(e,t,a){let o=Da(e,a),r=Ha(t),s=Object.fromEntries(rt.map(l=>{let u=`terminal.ansi${l[0].toUpperCase()}${l.substring(1)}`,f=e.colors?.[u];return[l,f||qf[l]]})),n=Uf(s),i=Of();return r.map(l=>i.parse(l[0]).map(u=>{let f,d;u.decorations.has("reverse")?(f=u.background?n.value(u.background):e.bg,d=u.foreground?n.value(u.foreground):e.fg):(f=u.foreground?n.value(u.foreground):e.fg,d=u.background?n.value(u.background):void 0),f=Xe(f,o),d=Xe(d,o),u.decorations.has("dim")&&(f=Wf(f));let p=ce.None;return u.decorations.has("bold")&&(p|=ce.Bold),u.decorations.has("italic")&&(p|=ce.Italic),u.decorations.has("underline")&&(p|=ce.Underline),u.decorations.has("strikethrough")&&(p|=ce.Strikethrough),{content:u.value,offset:l[1],color:f,bgColor:d,fontStyle:p}}))}function Wf(e){let t=e.match(/#([0-9a-f]{3,8})/i);if(t){let o=t[1];if(o.length===8){let r=Math.round(Number.parseInt(o.slice(6,8),16)/2).toString(16).padStart(2,"0");return`#${o.slice(0,6)}${r}`}else{if(o.length===6)return`#${o}80`;if(o.length===4){let r=o[0],s=o[1],n=o[2],i=o[3],l=Math.round(Number.parseInt(`${i}${i}`,16)/2).toString(16).padStart(2,"0");return`#${r}${r}${s}${s}${n}${n}${l}`}else if(o.length===3){let r=o[0],s=o[1],n=o[2];return`#${r}${r}${s}${s}${n}${n}80`}}}let a=e.match(/var\((--[\w-]+-ansi-[\w-]+)\)/);return a?`var(${a[1]}-dim)`:e}function Yo(e,t,a={}){let{theme:o=e.getLoadedThemes()[0]}=a,r=e.resolveLangAlias(a.lang||"text");if(Ko(r)||Jo(o))return Ha(t).map(l=>[{content:l[0],offset:l[1]}]);let{theme:s,colorMap:n}=e.setTheme(o);if(r==="ansi")return Gf(s,t,a);let i=e.getLanguage(a.lang||"text");if(a.grammarState){if(a.grammarState.lang!==i.name)throw new K(`Grammar state language "${a.grammarState.lang}" does not match highlight language "${i.name}"`);if(!a.grammarState.themes.includes(s.name))throw new K(`Grammar state themes "${a.grammarState.themes}" do not contain highlight theme "${s.name}"`)}return Vf(t,i,s,n,a)}function zf(...e){if(e.length===2)return jt(e[1]);let[t,a,o={}]=e,{lang:r="text",theme:s=t.getLoadedThemes()[0]}=o;if(Ko(r)||Jo(s))throw new K("Plain language does not have grammar state");if(r==="ansi")throw new K("ANSI language does not have grammar state");let{theme:n,colorMap:i}=t.setTheme(s),l=t.getLanguage(r);return new ht(er(a,l,n,i,o).stateStack,l.name,n.name)}function Vf(e,t,a,o,r){let s=er(e,t,a,o,r),n=new ht(s.stateStack,t.name,a.name);return Ua(s.tokens,n),s.tokens}function er(e,t,a,o,r){let s=Da(a,r),{tokenizeMaxLineLength:n=0,tokenizeTimeLimit:i=500}=r,l=Ha(e),u=r.grammarState?Rf(r.grammarState,a.name)??Aa:r.grammarContextCode!=null?er(r.grammarContextCode,t,a,o,{...r,grammarState:void 0,grammarContextCode:void 0}).stateStack:Aa,f=[],d=[];for(let p=0,c=l.length;p<c;p++){let[m,L]=l[p];if(m===""){f=[],d.push([]);continue}if(n>0&&m.length>=n){f=[],d.push([{content:m,offset:L,color:"",fontStyle:0}]);continue}let x,w,g;r.includeExplanation&&(x=t.tokenizeLine(m,u,i),w=x.tokens,g=0);let h=t.tokenizeLine2(m,u,i),I=h.tokens.length/2;for(let T=0;T<I;T++){let k=h.tokens[2*T],y=T+1<I?h.tokens[2*T+2]:m.length;if(k===y)continue;let M=h.tokens[2*T+1],E=Xe(o[ot.getForeground(M)],s),F=ot.getFontStyle(M),b={content:m.substring(k,y),offset:L+k,color:E,fontStyle:F};if(r.includeExplanation){let S=[];if(r.includeExplanation!=="scopeName")for(let V of a.settings){let U;switch(typeof V.scope){case"string":U=V.scope.split(/,/).map(Ie=>Ie.trim());break;case"object":U=V.scope;break;default:continue}S.push({settings:V,selectors:U.map(Ie=>Ie.split(/ /))})}b.explanation=[];let P=0;for(;k+P<y;){let V=w[g],U=m.substring(V.startIndex,V.endIndex);P+=U.length,b.explanation.push({content:U,scopes:r.includeExplanation==="scopeName"?jf(V.scopes):$f(S,V.scopes)}),g+=1}}f.push(b)}d.push(f),f=[],u=h.ruleStack}return{tokens:d,stateStack:u}}function jf(e){return e.map(t=>({scopeName:t}))}function $f(e,t){let a=[];for(let o=0,r=t.length;o<r;o++){let s=t[o];a[o]={scopeName:s,themeMatches:Qf(e,s,t.slice(0,o))}}return a}function Hn(e,t){return e===t||t.substring(0,e.length)===e&&t[e.length]==="."}function Xf(e,t,a){if(!Hn(e[e.length-1],t))return!1;let o=e.length-2,r=a.length-1;for(;o>=0&&r>=0;)Hn(e[o],a[r])&&(o-=1),r-=1;return o===-1}function Qf(e,t,a){let o=[];for(let{selectors:r,settings:s}of e)for(let n of r)if(Xf(n,t,a)){o.push(s);break}return o}function Jn(e,t,a){let o=Object.entries(a.themes).filter(l=>l[1]).map(l=>({color:l[0],theme:l[1]})),r=o.map(l=>{let u=Yo(e,t,{...a,theme:l.theme}),f=jt(u),d=typeof l.theme=="string"?l.theme:l.theme.name;return{tokens:u,state:f,theme:d}}),s=Kf(...r.map(l=>l.tokens)),n=s[0].map((l,u)=>l.map((f,d)=>{let p={content:f.content,variants:{},offset:f.offset};return"includeExplanation"in a&&a.includeExplanation&&(p.explanation=f.explanation),s.forEach((c,m)=>{let{content:L,explanation:x,offset:w,...g}=c[u][d];p.variants[o[m].color]=g}),p})),i=r[0].state?new ht(Object.fromEntries(r.map(l=>[l.theme,l.state?.getInternalStack(l.theme)])),r[0].state.lang):void 0;return i&&Ua(n,i),n}function Kf(...e){let t=e.map(()=>[]),a=e.length;for(let o=0;o<e[0].length;o++){let r=e.map(l=>l[o]),s=t.map(()=>[]);t.forEach((l,u)=>l.push(s[u]));let n=r.map(()=>0),i=r.map(l=>l[0]);for(;i.every(l=>l);){let l=Math.min(...i.map(u=>u.content.length));for(let u=0;u<a;u++){let f=i[u];f.content.length===l?(s[u].push(f),n[u]+=1,i[u]=r[u][n[u]]):(s[u].push({...f,content:f.content.slice(0,l)}),i[u]={...f,content:f.content.slice(l),offset:f.offset+l})}}}return t}function Na(e,t,a){let o,r,s,n,i,l;if("themes"in a){let{defaultColor:u="light",cssVariablePrefix:f="--shiki-",colorsRendering:d="css-vars"}=a,p=Object.entries(a.themes).filter(w=>w[1]).map(w=>({color:w[0],theme:w[1]})).sort((w,g)=>w.color===u?-1:g.color===u?1:0);if(p.length===0)throw new K("`themes` option must not be empty");let c=Jn(e,t,a);if(l=jt(c),u&&Zo!==u&&!p.find(w=>w.color===u))throw new K(`\`themes\` option must contain the defaultColor key \`${u}\``);let m=p.map(w=>e.getTheme(w.theme)),L=p.map(w=>w.color);s=c.map(w=>w.map(g=>vf(g,L,f,u,d))),l&&Ua(s,l);let x=p.map(w=>Da(w.theme,a));r=Un(p,m,x,f,u,"fg",d),o=Un(p,m,x,f,u,"bg",d),n=`shiki-themes ${m.map(w=>w.name).join(" ")}`,i=u?void 0:[r,o].join(";")}else if("theme"in a){let u=Da(a.theme,a);s=Yo(e,t,a);let f=e.getTheme(a.theme);o=Xe(f.bg,u),r=Xe(f.fg,u),n=f.name,l=jt(s)}else throw new K("Invalid options, either `theme` or `themes` must be provided");return{tokens:s,fg:r,bg:o,themeName:n,rootStyle:i,grammarState:l}}function Un(e,t,a,o,r,s,n){return e.map((i,l)=>{let u=Xe(t[l][s],a[l])||"inherit",f=`${o+i.color}${s==="bg"?"-bg":""}:${u}`;if(l===0&&r){if(r===Zo&&e.length>1){let d=e.findIndex(L=>L.color==="light"),p=e.findIndex(L=>L.color==="dark");if(d===-1||p===-1)throw new K('When using `defaultColor: "light-dark()"`, you must provide both `light` and `dark` themes');let c=Xe(t[d][s],a[d])||"inherit",m=Xe(t[p][s],a[p])||"inherit";return`light-dark(${c}, ${m});${f}`}return u}return n==="css-vars"?f:null}).filter(i=>!!i).join(";")}function Oa(e,t,a,o={meta:{},options:a,codeToHast:(r,s)=>Oa(e,r,s),codeToTokens:(r,s)=>Na(e,r,s)}){let r=t;for(let m of _a(a))r=m.preprocess?.call(o,r,a)||r;let{tokens:s,fg:n,bg:i,themeName:l,rootStyle:u,grammarState:f}=Na(e,r,a),{mergeWhitespaces:d=!0,mergeSameStyleTokens:p=!1}=a;d===!0?s=Zf(s):d==="never"&&(s=Yf(s)),p&&(s=ec(s));let c={...o,get source(){return r}};for(let m of _a(a))s=m.tokens?.call(c,s)||s;return Jf(s,{...a,fg:n,bg:i,themeName:l,rootStyle:a.rootStyle===!1?!1:a.rootStyle??u},c,f)}function Jf(e,t,a,o=jt(e)){let r=_a(t),s=[],n={type:"root",children:[]},{structure:i="classic",tabindex:l="0"}=t,u={class:`shiki ${t.themeName||""}`};t.rootStyle!==!1&&(t.rootStyle!=null?u.style=t.rootStyle:u.style=`background-color:${t.bg};color:${t.fg}`),l!==!1&&l!=null&&(u.tabindex=l.toString());for(let[L,x]of Object.entries(t.meta||{}))L.startsWith("_")||(u[L]=x);let f={type:"element",tagName:"pre",properties:u,children:[],data:t.data},d={type:"element",tagName:"code",properties:{},children:s},p=[],c={...a,structure:i,addClassToHast:$n,get source(){return a.source},get tokens(){return e},get options(){return t},get root(){return n},get pre(){return f},get code(){return d},get lines(){return p}};if(e.forEach((L,x)=>{x&&(i==="inline"?n.children.push({type:"element",tagName:"br",properties:{},children:[]}):i==="classic"&&s.push({type:"text",value:`
|
|
13
|
+
`}));let w={type:"element",tagName:"span",properties:{class:"line"},children:[]},g=0;for(let h of L){let I={type:"element",tagName:"span",properties:{...h.htmlAttrs},children:[{type:"text",value:h.content}]},T=$o(h.htmlStyle||Ea(h));T&&(I.properties.style=T);for(let k of r)I=k?.span?.call(c,I,x+1,g,w,h)||I;i==="inline"?n.children.push(I):i==="classic"&&w.children.push(I),g+=h.content.length}if(i==="classic"){for(let h of r)w=h?.line?.call(c,w,x+1)||w;p.push(w),s.push(w)}else i==="inline"&&p.push(w)}),i==="classic"){for(let L of r)d=L?.code?.call(c,d)||d;f.children.push(d);for(let L of r)f=L?.pre?.call(c,f)||f;n.children.push(f)}else if(i==="inline"){let L=[],x={type:"element",tagName:"span",properties:{class:"line"},children:[]};for(let h of n.children)h.type==="element"&&h.tagName==="br"?(L.push(x),x={type:"element",tagName:"span",properties:{class:"line"},children:[]}):(h.type==="element"||h.type==="text")&&x.children.push(h);L.push(x);let g={type:"element",tagName:"code",properties:{},children:L};for(let h of r)g=h?.code?.call(c,g)||g;n.children=[];for(let h=0;h<g.children.length;h++){h>0&&n.children.push({type:"element",tagName:"br",properties:{},children:[]});let I=g.children[h];I.type==="element"&&n.children.push(...I.children)}}let m=n;for(let L of r)m=L?.root?.call(c,m)||m;return o&&Ua(m,o),m}function Zf(e){return e.map(t=>{let a=[],o="",r;return t.forEach((s,n)=>{let l=!(s.fontStyle&&(s.fontStyle&ce.Underline||s.fontStyle&ce.Strikethrough));l&&s.content.match(/^\s+$/)&&t[n+1]?(r===void 0&&(r=s.offset),o+=s.content):o?(l?a.push({...s,offset:r,content:o+s.content}):a.push({content:o,offset:r},s),r=void 0,o=""):a.push(s)}),a})}function Yf(e){return e.map(t=>t.flatMap(a=>{if(a.content.match(/^\s+$/))return a;let o=a.content.match(/^(\s*)(.*?)(\s*)$/);if(!o)return a;let[,r,s,n]=o;if(!r&&!n)return a;let i=[{...a,offset:a.offset+r.length,content:s}];return r&&i.unshift({content:r,offset:a.offset}),n&&i.push({content:n,offset:a.offset+r.length+s.length}),i}))}function ec(e){return e.map(t=>{let a=[];for(let o of t){if(a.length===0){a.push({...o});continue}let r=a[a.length-1],s=$o(r.htmlStyle||Ea(r)),n=$o(o.htmlStyle||Ea(o)),i=r.fontStyle&&(r.fontStyle&ce.Underline||r.fontStyle&ce.Strikethrough),l=o.fontStyle&&(o.fontStyle&ce.Underline||o.fontStyle&ce.Strikethrough);!i&&!l&&s===n?r.content+=o.content:a.push({...o})}return a})}var tc=zo;function ac(e,t,a){let o={meta:{},options:a,codeToHast:(s,n)=>Oa(e,s,n),codeToTokens:(s,n)=>Na(e,s,n)},r=tc(Oa(e,t,a,o));for(let s of _a(a))r=s.postprocess?.call(o,r,a)||r;return r}var qn={light:"#333333",dark:"#bbbbbb"},Gn={light:"#fffffe",dark:"#1e1e1e"},Wn="__shiki_resolved";function tr(e){if(e?.[Wn])return e;let t={...e};t.tokenColors&&!t.settings&&(t.settings=t.tokenColors,delete t.tokenColors),t.type||="dark",t.colorReplacements={...t.colorReplacements},t.settings||=[];let{bg:a,fg:o}=t;if(!a||!o){let i=t.settings?t.settings.find(l=>!l.name&&!l.scope):void 0;i?.settings?.foreground&&(o=i.settings.foreground),i?.settings?.background&&(a=i.settings.background),!o&&t?.colors?.["editor.foreground"]&&(o=t.colors["editor.foreground"]),!a&&t?.colors?.["editor.background"]&&(a=t.colors["editor.background"]),o||(o=t.type==="light"?qn.light:qn.dark),a||(a=t.type==="light"?Gn.light:Gn.dark),t.fg=o,t.bg=a}t.settings[0]&&t.settings[0].settings&&!t.settings[0].scope||t.settings.unshift({settings:{foreground:t.fg,background:t.bg}});let r=0,s=new Map;function n(i){if(s.has(i))return s.get(i);r+=1;let l=`#${r.toString(16).padStart(8,"0").toLowerCase()}`;return t.colorReplacements?.[`#${l}`]?n(i):(s.set(i,l),l)}t.settings=t.settings.map(i=>{let l=i.settings?.foreground&&!i.settings.foreground.startsWith("#"),u=i.settings?.background&&!i.settings.background.startsWith("#");if(!l&&!u)return i;let f={...i,settings:{...i.settings}};if(l){let d=n(i.settings.foreground);t.colorReplacements[d]=i.settings.foreground,f.settings.foreground=d}if(u){let d=n(i.settings.background);t.colorReplacements[d]=i.settings.background,f.settings.background=d}return f});for(let i of Object.keys(t.colors||{}))if((i==="editor.foreground"||i==="editor.background"||i.startsWith("terminal.ansi"))&&!t.colors[i]?.startsWith("#")){let l=n(t.colors[i]);t.colorReplacements[l]=t.colors[i],t.colors[i]=l}return Object.defineProperty(t,Wn,{enumerable:!1,writable:!1,value:!0}),t}async function Zn(e){return Array.from(new Set((await Promise.all(e.filter(t=>!Vn(t)).map(async t=>await zn(t).then(a=>Array.isArray(a)?a:[a])))).flat()))}async function Yn(e){return(await Promise.all(e.map(async a=>jn(a)?null:tr(await zn(a))))).filter(a=>!!a)}var jo=3,oc=!1;function rc(e,t=3){if(jo&&!(typeof jo=="number"&&t>jo)){if(oc)throw new Error(`[SHIKI DEPRECATE]: ${e}`);console.trace(`[SHIKI DEPRECATE]: ${e}`)}}var $e=class extends Error{constructor(t){super(t),this.name="ShikiError"}};function ei(e,t){if(!t)return e;if(t[e]){let a=new Set([e]);for(;t[e];){if(e=t[e],a.has(e))throw new $e(`Circular alias \`${Array.from(a).join(" -> ")} -> ${e}\``);a.add(e)}}return e}var Xo=class extends xn{constructor(t,a,o,r={}){super(t),this._resolver=t,this._themes=a,this._langs=o,this._alias=r,this._themes.map(s=>this.loadTheme(s)),this.loadLanguages(this._langs)}_resolvedThemes=new Map;_resolvedGrammars=new Map;_langMap=new Map;_langGraph=new Map;_textmateThemeCache=new WeakMap;_loadedThemesCache=null;_loadedLanguagesCache=null;getTheme(t){return typeof t=="string"?this._resolvedThemes.get(t):this.loadTheme(t)}loadTheme(t){let a=tr(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=Ht.createFromRawTheme(t),this._textmateThemeCache.set(t,a)),this._syncRegistry.setTheme(a)}getGrammar(t){return t=ei(t,this._alias),this._resolvedGrammars.get(t)}loadLanguage(t){if(this.getGrammar(t.name))return;let a=new Set([...this._langMap.values()].filter(s=>s.embeddedLangsLazy?.includes(t.name)));this._resolver.addLanguage(t);let o={balancedBracketSelectors:t.balancedBracketSelectors||["*"],unbalancedBracketSelectors:t.unbalancedBracketSelectors||[]};this._syncRegistry._rawGrammars.set(t.scopeName,t);let r=this.loadGrammarWithConfiguration(t.scopeName,1,o);if(r.name=t.name,this._resolvedGrammars.set(t.name,r),t.aliases&&t.aliases.forEach(s=>{this._alias[s]=t.name}),this._loadedLanguagesCache=null,a.size)for(let s of a)this._resolvedGrammars.delete(s.name),this._loadedLanguagesCache=null,this._syncRegistry?._injectionGrammars?.delete(s.scopeName),this._syncRegistry?._grammars?.delete(s.scopeName),this.loadLanguage(this._langMap.get(s.name))}dispose(){super.dispose(),this._resolvedThemes.clear(),this._resolvedGrammars.clear(),this._langMap.clear(),this._langGraph.clear(),this._loadedThemesCache=null}loadLanguages(t){for(let r of t)this.resolveEmbeddedLanguages(r);let a=Array.from(this._langGraph.entries()),o=a.filter(([r,s])=>!s);if(o.length){let r=a.filter(([s,n])=>n?(n.embeddedLanguages||n.embeddedLangs)?.some(l=>o.map(([u])=>u).includes(l)):!1).filter(s=>!o.includes(s));throw new $e(`Missing languages ${o.map(([s])=>`\`${s}\``).join(", ")}, required by ${r.map(([s])=>`\`${s}\``).join(", ")}`)}for(let[r,s]of a)this._resolver.addLanguage(s);for(let[r,s]of a)this.loadLanguage(s)}getLoadedLanguages(){return this._loadedLanguagesCache||(this._loadedLanguagesCache=[...new Set([...this._resolvedGrammars.keys(),...Object.keys(this._alias)])]),this._loadedLanguagesCache}resolveEmbeddedLanguages(t){this._langMap.set(t.name,t),this._langGraph.set(t.name,t);let a=t.embeddedLanguages??t.embeddedLangs;if(a)for(let o of a)this._langGraph.set(o,this._langMap.get(o))}},Qo=class{_langs=new Map;_scopeToLang=new Map;_injections=new Map;_onigLib;constructor(t,a){this._onigLib={createOnigScanner:o=>t.createScanner(o),createOnigString:o=>t.createString(o)},a.forEach(o=>this.addLanguage(o))}get onigLib(){return this._onigLib}getLangRegistration(t){return this._langs.get(t)}loadGrammar(t){return this._scopeToLang.get(t)}addLanguage(t){this._langs.set(t.name,t),t.aliases&&t.aliases.forEach(a=>{this._langs.set(a,t)}),this._scopeToLang.set(t.scopeName,t),t.injectTo&&t.injectTo.forEach(a=>{this._injections.get(a)||this._injections.set(a,[]),this._injections.get(a).push(t.scopeName)})}getInjections(t){let a=t.split("."),o=[];for(let r=1;r<=a.length;r++){let s=a.slice(0,r).join(".");o=[...o,...this._injections.get(s)||[]]}return o}},Vt=0;function sc(e){Vt+=1,e.warnings!==!1&&Vt>=10&&Vt%10===0&&console.warn(`[Shiki] ${Vt} instances have been created. Shiki is supposed to be used as a singleton, consider refactoring your code to cache your highlighter instance; Or call \`highlighter.dispose()\` to release unused instances.`);let t=!1;if(!e.engine)throw new $e("`engine` option is required for synchronous mode");let a=(e.langs||[]).flat(1),o=(e.themes||[]).flat(1).map(tr),r=new Qo(e.engine,a),s=new Xo(r,o,a,e.langAlias),n;function i(h){return ei(h,e.langAlias)}function l(h){w();let I=s.getGrammar(typeof h=="string"?h:h.name);if(!I)throw new $e(`Language \`${h}\` not found, you may need to load it first`);return I}function u(h){if(h==="none")return{bg:"",fg:"",name:"none",settings:[],type:"dark"};w();let I=s.getTheme(h);if(!I)throw new $e(`Theme \`${h}\` not found, you may need to load it first`);return I}function f(h){w();let I=u(h);n!==h&&(s.setTheme(I),n=h);let T=s.getColorMap();return{theme:I,colorMap:T}}function d(){return w(),s.getLoadedThemes()}function p(){return w(),s.getLoadedLanguages()}function c(...h){w(),s.loadLanguages(h.flat(1))}async function m(...h){return c(await Zn(h))}function L(...h){w();for(let I of h.flat(1))s.loadTheme(I)}async function x(...h){return w(),L(await Yn(h))}function w(){if(t)throw new $e("Shiki instance has been disposed")}function g(){t||(t=!0,s.dispose(),Vt-=1)}return{setTheme:f,getTheme:u,getLanguage:l,getLoadedThemes:d,getLoadedLanguages:p,resolveLangAlias:i,loadLanguage:m,loadLanguageSync:c,loadTheme:x,loadThemeSync:L,dispose:g,[Symbol.dispose]:g}}async function nc(e){e.engine||rc("`engine` option is required. Use `createOnigurumaEngine` or `createJavaScriptRegexEngine` to create an engine.");let[t,a,o]=await Promise.all([Yn(e.themes||[]),Zn(e.langs||[]),e.engine]);return sc({...e,themes:t,langs:a,engine:o})}async function ic(e){let t=await nc(e);return{getLastGrammarState:(...a)=>zf(t,...a),codeToTokensBase:(a,o)=>Yo(t,a,o),codeToTokensWithThemes:(a,o)=>Jn(t,a,o),codeToTokens:(a,o)=>Na(t,a,o),codeToHast:(a,o)=>Oa(t,a,o),codeToHtml:(a,o)=>ac(t,a,o),getBundledLanguages:()=>({}),getBundledThemes:()=>({}),...t,getInternalContext:()=>t}}function ti(e){let t=e.langs,a=e.themes,o=e.engine;async function r(s){function n(d){if(typeof d=="string"){if(d=s.langAlias?.[d]||d,Vn(d))return[];let p=t[d];if(!p)throw new K(`Language \`${d}\` is not included in this bundle. You may want to load it from external source.`);return p}return d}function i(d){if(jn(d))return"none";if(typeof d=="string"){let p=a[d];if(!p)throw new K(`Theme \`${d}\` is not included in this bundle. You may want to load it from external source.`);return p}return d}let l=(s.themes??[]).map(d=>i(d)),u=(s.langs??[]).map(d=>n(d)),f=await ic({engine:s.engine??o(),...s,themes:l,langs:u});return{...f,loadLanguage(...d){return f.loadLanguage(...d.map(n))},loadTheme(...d){return f.loadTheme(...d.map(i))},getBundledLanguages(){return t},getBundledThemes(){return a}}}return r}function lc(e){let t;async function a(o={}){if(t){let r=await t;return await Promise.all([r.loadTheme(...o.themes||[]),r.loadLanguage(...o.langs||[])]),r}else{t=e({...o,themes:[],langs:[]});let r=await t;return await Promise.all([r.loadTheme(...o.themes||[]),r.loadLanguage(...o.langs||[])]),r}}return a}function ai(e,t){let a=lc(e);async function o(r,s){let n=await a({langs:[s.lang],themes:"theme"in s?[s.theme]:Object.values(s.themes)}),i=await t?.guessEmbeddedLanguages?.(r,s.lang,n);return i&&await n.loadLanguage(...i),n}return{getSingletonHighlighter(r){return a(r)},async codeToHtml(r,s){return(await o(r,s)).codeToHtml(r,s)},async codeToHast(r,s){return(await o(r,s)).codeToHast(r,s)},async codeToTokens(r,s){return(await o(r,s)).codeToTokens(r,s)},async codeToTokensBase(r,s){return(await o(r,s)).codeToTokensBase(r,s)},async codeToTokensWithThemes(r,s){return(await o(r,s)).codeToTokensWithThemes(r,s)},async getLastGrammarState(r,s){return(await a({langs:[s.lang],themes:[s.theme]})).getLastGrammarState(r,s)}}}var ar=[{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-A7ZNTSV6.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-QBN4KIYA.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-OQUOYMBE.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-QBDEYXMB.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-6DNJTKH3.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-HGSLHT5Y.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-YEJQLMOO.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-NEPTRAQZ.js"))},{id:"hurl",name:"Hurl",import:(()=>import("../hurl-V6ZX2Q3F.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-QPZ7EOS6.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-TEVTGSC7.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-JPSYX5KC.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-X4IFZB22.js"))},{id:"php",name:"PHP",import:(()=>import("../php-3V7EPUAN.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-WIWCR2KQ.js"))},{id:"ruby",name:"Ruby",aliases:["rb"],import:(()=>import("../ruby-LXZJUMFB.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-7WGDLEKX.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-C6YWFFZU.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-O6SLORWU.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"))}],oi=Object.fromEntries(ar.map(e=>[e.id,e.import])),ri=Object.fromEntries(ar.flatMap(e=>e.aliases?.map(t=>[t,e.import])||[])),$t={...oi,...ri};var uc=[{id:"andromeeda",displayName:"Andromeeda",type:"dark",import:(()=>import("../andromeeda-HAPOYWX3.js"))},{id:"aurora-x",displayName:"Aurora X",type:"dark",import:(()=>import("../aurora-x-R6WAWEBC.js"))},{id:"ayu-dark",displayName:"Ayu Dark",type:"dark",import:(()=>import("../ayu-dark-KMD4YO7F.js"))},{id:"ayu-light",displayName:"Ayu Light",type:"light",import:(()=>import("../ayu-light-2ATPDILG.js"))},{id:"ayu-mirage",displayName:"Ayu Mirage",type:"dark",import:(()=>import("../ayu-mirage-LJ7PG5AM.js"))},{id:"catppuccin-frappe",displayName:"Catppuccin Frapp\xE9",type:"dark",import:(()=>import("../catppuccin-frappe-Z4Y2POK6.js"))},{id:"catppuccin-latte",displayName:"Catppuccin Latte",type:"light",import:(()=>import("../catppuccin-latte-4TQUIKX4.js"))},{id:"catppuccin-macchiato",displayName:"Catppuccin Macchiato",type:"dark",import:(()=>import("../catppuccin-macchiato-B7YYPERT.js"))},{id:"catppuccin-mocha",displayName:"Catppuccin Mocha",type:"dark",import:(()=>import("../catppuccin-mocha-KX33VXKA.js"))},{id:"dark-plus",displayName:"Dark Plus",type:"dark",import:(()=>import("../dark-plus-LNHXUR7U.js"))},{id:"dracula",displayName:"Dracula Theme",type:"dark",import:(()=>import("../dracula-T2CMBBQ5.js"))},{id:"dracula-soft",displayName:"Dracula Theme Soft",type:"dark",import:(()=>import("../dracula-soft-SMFRNKX2.js"))},{id:"everforest-dark",displayName:"Everforest Dark",type:"dark",import:(()=>import("../everforest-dark-DBZHIUAO.js"))},{id:"everforest-light",displayName:"Everforest Light",type:"light",import:(()=>import("../everforest-light-TDAGYJUK.js"))},{id:"github-dark",displayName:"GitHub Dark",type:"dark",import:(()=>import("../github-dark-3E25TTAN.js"))},{id:"github-dark-default",displayName:"GitHub Dark Default",type:"dark",import:(()=>import("../github-dark-default-KCBFVSS5.js"))},{id:"github-dark-dimmed",displayName:"GitHub Dark Dimmed",type:"dark",import:(()=>import("../github-dark-dimmed-WRCBXEVS.js"))},{id:"github-dark-high-contrast",displayName:"GitHub Dark High Contrast",type:"dark",import:(()=>import("../github-dark-high-contrast-ET7SAHAV.js"))},{id:"github-light",displayName:"GitHub Light",type:"light",import:(()=>import("../github-light-6FNTZH5H.js"))},{id:"github-light-default",displayName:"GitHub Light Default",type:"light",import:(()=>import("../github-light-default-GGTAKNM7.js"))},{id:"github-light-high-contrast",displayName:"GitHub Light High Contrast",type:"light",import:(()=>import("../github-light-high-contrast-LHYKPR5E.js"))},{id:"gruvbox-dark-hard",displayName:"Gruvbox Dark Hard",type:"dark",import:(()=>import("../gruvbox-dark-hard-IQWZCHF7.js"))},{id:"gruvbox-dark-medium",displayName:"Gruvbox Dark Medium",type:"dark",import:(()=>import("../gruvbox-dark-medium-ARPWF4FS.js"))},{id:"gruvbox-dark-soft",displayName:"Gruvbox Dark Soft",type:"dark",import:(()=>import("../gruvbox-dark-soft-ODS6FPID.js"))},{id:"gruvbox-light-hard",displayName:"Gruvbox Light Hard",type:"light",import:(()=>import("../gruvbox-light-hard-KFA5YFDW.js"))},{id:"gruvbox-light-medium",displayName:"Gruvbox Light Medium",type:"light",import:(()=>import("../gruvbox-light-medium-MMET4L3Y.js"))},{id:"gruvbox-light-soft",displayName:"Gruvbox Light Soft",type:"light",import:(()=>import("../gruvbox-light-soft-DBZDERMK.js"))},{id:"horizon",displayName:"Horizon",type:"dark",import:(()=>import("../horizon-FSOMPXNP.js"))},{id:"houston",displayName:"Houston",type:"dark",import:(()=>import("../houston-FAQBCORN.js"))},{id:"kanagawa-dragon",displayName:"Kanagawa Dragon",type:"dark",import:(()=>import("../kanagawa-dragon-JNDVF5RJ.js"))},{id:"kanagawa-lotus",displayName:"Kanagawa Lotus",type:"light",import:(()=>import("../kanagawa-lotus-S7JK6TQ6.js"))},{id:"kanagawa-wave",displayName:"Kanagawa Wave",type:"dark",import:(()=>import("../kanagawa-wave-QJJIMVEV.js"))},{id:"laserwave",displayName:"LaserWave",type:"dark",import:(()=>import("../laserwave-YFP3EJVX.js"))},{id:"light-plus",displayName:"Light Plus",type:"light",import:(()=>import("../light-plus-NGDHCPUZ.js"))},{id:"material-theme",displayName:"Material Theme",type:"dark",import:(()=>import("../material-theme-H2BHKUKX.js"))},{id:"material-theme-darker",displayName:"Material Theme Darker",type:"dark",import:(()=>import("../material-theme-darker-VENCGWTB.js"))},{id:"material-theme-lighter",displayName:"Material Theme Lighter",type:"light",import:(()=>import("../material-theme-lighter-SDMLS22W.js"))},{id:"material-theme-ocean",displayName:"Material Theme Ocean",type:"dark",import:(()=>import("../material-theme-ocean-UHDBRLVF.js"))},{id:"material-theme-palenight",displayName:"Material Theme Palenight",type:"dark",import:(()=>import("../material-theme-palenight-3TB2BEET.js"))},{id:"min-dark",displayName:"Min Dark",type:"dark",import:(()=>import("../min-dark-CQ5WKNT7.js"))},{id:"min-light",displayName:"Min Light",type:"light",import:(()=>import("../min-light-LZRD4NPR.js"))},{id:"monokai",displayName:"Monokai",type:"dark",import:(()=>import("../monokai-WHRY6275.js"))},{id:"night-owl",displayName:"Night Owl",type:"dark",import:(()=>import("../night-owl-7PNEW2JB.js"))},{id:"night-owl-light",displayName:"Night Owl Light",type:"light",import:(()=>import("../night-owl-light-GJUYOOJR.js"))},{id:"nord",displayName:"Nord",type:"dark",import:(()=>import("../nord-EVGUMUX2.js"))},{id:"one-dark-pro",displayName:"One Dark Pro",type:"dark",import:(()=>import("../one-dark-pro-PMTR3SA7.js"))},{id:"one-light",displayName:"One Light",type:"light",import:(()=>import("../one-light-O7WH4N5X.js"))},{id:"plastic",displayName:"Plastic",type:"dark",import:(()=>import("../plastic-FBVUW6NJ.js"))},{id:"poimandres",displayName:"Poimandres",type:"dark",import:(()=>import("../poimandres-WBB7GZAD.js"))},{id:"red",displayName:"Red",type:"dark",import:(()=>import("../red-7KAMONOP.js"))},{id:"rose-pine",displayName:"Ros\xE9 Pine",type:"dark",import:(()=>import("../rose-pine-F2G5IHZD.js"))},{id:"rose-pine-dawn",displayName:"Ros\xE9 Pine Dawn",type:"light",import:(()=>import("../rose-pine-dawn-ALZ7XGH2.js"))},{id:"rose-pine-moon",displayName:"Ros\xE9 Pine Moon",type:"dark",import:(()=>import("../rose-pine-moon-D3K4SWUL.js"))},{id:"slack-dark",displayName:"Slack Dark",type:"dark",import:(()=>import("../slack-dark-YFPJODWS.js"))},{id:"slack-ochin",displayName:"Slack Ochin",type:"light",import:(()=>import("../slack-ochin-H67AWZOI.js"))},{id:"snazzy-light",displayName:"Snazzy Light",type:"light",import:(()=>import("../snazzy-light-OUVS63VK.js"))},{id:"solarized-dark",displayName:"Solarized Dark",type:"dark",import:(()=>import("../solarized-dark-2RCAVEXJ.js"))},{id:"solarized-light",displayName:"Solarized Light",type:"light",import:(()=>import("../solarized-light-XFSENHTC.js"))},{id:"synthwave-84",displayName:"Synthwave '84",type:"dark",import:(()=>import("../synthwave-84-5XXB3K6S.js"))},{id:"tokyo-night",displayName:"Tokyo Night",type:"dark",import:(()=>import("../tokyo-night-CHJCCBJH.js"))},{id:"vesper",displayName:"Vesper",type:"dark",import:(()=>import("../vesper-Y5GIEAN4.js"))},{id:"vitesse-black",displayName:"Vitesse Black",type:"dark",import:(()=>import("../vitesse-black-7TI33KHX.js"))},{id:"vitesse-dark",displayName:"Vitesse Dark",type:"dark",import:(()=>import("../vitesse-dark-FOB25MRB.js"))},{id:"vitesse-light",displayName:"Vitesse Light",type:"light",import:(()=>import("../vitesse-light-4WCNCTCO.js"))}],si=Object.fromEntries(uc.map(e=>[e.id,e.import]));var Xt=class extends Error{constructor(t){super(t),this.name="ShikiError"}};function dc(){return 2147483648}function fc(){return typeof performance<"u"?performance.now():Date.now()}var cc=(e,t)=>e+(t-e%t)%t;async function pc(e){let t,a,o={};function r(c){a=c,o.HEAPU8=new Uint8Array(c),o.HEAPU32=new Uint32Array(c)}function s(c,m,L){o.HEAPU8.copyWithin(c,m,m+L)}function n(c){try{return t.grow(c-a.byteLength+65535>>>16),r(t.buffer),1}catch{}}function i(c){let m=o.HEAPU8.length;c=c>>>0;let L=dc();if(c>L)return!1;for(let x=1;x<=4;x*=2){let w=m*(1+.2/x);w=Math.min(w,c+100663296);let g=Math.min(L,cc(Math.max(c,w),65536));if(n(g))return!0}return!1}let l=typeof TextDecoder<"u"?new TextDecoder("utf8"):void 0;function u(c,m,L=1024){let x=m+L,w=m;for(;c[w]&&!(w>=x);)++w;if(w-m>16&&c.buffer&&l)return l.decode(c.subarray(m,w));let g="";for(;m<w;){let h=c[m++];if(!(h&128)){g+=String.fromCharCode(h);continue}let I=c[m++]&63;if((h&224)===192){g+=String.fromCharCode((h&31)<<6|I);continue}let T=c[m++]&63;if((h&240)===224?h=(h&15)<<12|I<<6|T:h=(h&7)<<18|I<<12|T<<6|c[m++]&63,h<65536)g+=String.fromCharCode(h);else{let k=h-65536;g+=String.fromCharCode(55296|k>>10,56320|k&1023)}}return g}function f(c,m){return c?u(o.HEAPU8,c,m):""}let d={emscripten_get_now:fc,emscripten_memcpy_big:s,emscripten_resize_heap:i,fd_write:()=>0};async function p(){let m=await e({env:d,wasi_snapshot_preview1:d});t=m.memory,r(t.buffer),Object.assign(o,m),o.UTF8ToString=f}return await p(),o}var mc=Object.defineProperty,hc=(e,t,a)=>t in e?mc(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a,oe=(e,t,a)=>hc(e,typeof t!="symbol"?t+"":t,a),de=null;function gc(e){throw new Xt(e.UTF8ToString(e.getLastOnigError()))}var Ga=class e{constructor(t){oe(this,"utf16Length"),oe(this,"utf8Length"),oe(this,"utf16Value"),oe(this,"utf8Value"),oe(this,"utf16OffsetToUtf8"),oe(this,"utf8OffsetToUtf16");let a=t.length,o=e._utf8ByteLength(t),r=o!==a,s=r?new Uint32Array(a+1):null;r&&(s[a]=o);let n=r?new Uint32Array(o+1):null;r&&(n[o]=a);let i=new Uint8Array(o),l=0;for(let u=0;u<a;u++){let f=t.charCodeAt(u),d=f,p=!1;if(f>=55296&&f<=56319&&u+1<a){let c=t.charCodeAt(u+1);c>=56320&&c<=57343&&(d=(f-55296<<10)+65536|c-56320,p=!0)}r&&(s[u]=l,p&&(s[u+1]=l),d<=127?n[l+0]=u:d<=2047?(n[l+0]=u,n[l+1]=u):d<=65535?(n[l+0]=u,n[l+1]=u,n[l+2]=u):(n[l+0]=u,n[l+1]=u,n[l+2]=u,n[l+3]=u)),d<=127?i[l++]=d:d<=2047?(i[l++]=192|(d&1984)>>>6,i[l++]=128|(d&63)>>>0):d<=65535?(i[l++]=224|(d&61440)>>>12,i[l++]=128|(d&4032)>>>6,i[l++]=128|(d&63)>>>0):(i[l++]=240|(d&1835008)>>>18,i[l++]=128|(d&258048)>>>12,i[l++]=128|(d&4032)>>>6,i[l++]=128|(d&63)>>>0),p&&u++}this.utf16Length=a,this.utf8Length=o,this.utf16Value=t,this.utf8Value=i,this.utf16OffsetToUtf8=s,this.utf8OffsetToUtf16=n}static _utf8ByteLength(t){let a=0;for(let o=0,r=t.length;o<r;o++){let s=t.charCodeAt(o),n=s,i=!1;if(s>=55296&&s<=56319&&o+1<r){let l=t.charCodeAt(o+1);l>=56320&&l<=57343&&(n=(s-55296<<10)+65536|l-56320,i=!0)}n<=127?a+=1:n<=2047?a+=2:n<=65535?a+=3:a+=4,i&&o++}return a}createString(t){let a=t.omalloc(this.utf8Length);return t.HEAPU8.set(this.utf8Value,a),a}},Wa=class Ne{constructor(t){if(oe(this,"id",++Ne.LAST_ID),oe(this,"_onigBinding"),oe(this,"content"),oe(this,"utf16Length"),oe(this,"utf8Length"),oe(this,"utf16OffsetToUtf8"),oe(this,"utf8OffsetToUtf16"),oe(this,"ptr"),!de)throw new Xt("Must invoke loadWasm first.");this._onigBinding=de,this.content=t;let a=new Ga(t);this.utf16Length=a.utf16Length,this.utf8Length=a.utf8Length,this.utf16OffsetToUtf8=a.utf16OffsetToUtf8,this.utf8OffsetToUtf16=a.utf8OffsetToUtf16,this.utf8Length<1e4&&!Ne._sharedPtrInUse?(Ne._sharedPtr||(Ne._sharedPtr=de.omalloc(1e4)),Ne._sharedPtrInUse=!0,de.HEAPU8.set(a.utf8Value,Ne._sharedPtr),this.ptr=Ne._sharedPtr):this.ptr=a.createString(de)}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===Ne._sharedPtr?Ne._sharedPtrInUse=!1:this._onigBinding.ofree(this.ptr)}};oe(Wa,"LAST_ID",0);oe(Wa,"_sharedPtr",0);oe(Wa,"_sharedPtrInUse",!1);var ni=Wa,rr=class{constructor(t){if(oe(this,"_onigBinding"),oe(this,"_ptr"),!de)throw new Xt("Must invoke loadWasm first.");let a=[],o=[];for(let i=0,l=t.length;i<l;i++){let u=new Ga(t[i]);a[i]=u.createString(de),o[i]=u.utf8Length}let r=de.omalloc(4*t.length);de.HEAPU32.set(a,r/4);let s=de.omalloc(4*t.length);de.HEAPU32.set(o,s/4);let n=de.createOnigScanner(r,s,t.length);for(let i=0,l=t.length;i<l;i++)de.ofree(a[i]);de.ofree(s),de.ofree(r),n===0&&gc(de),this._onigBinding=de,this._ptr=n}dispose(){this._onigBinding.freeOnigScanner(this._ptr)}findNextMatchSync(t,a,o){let r=0;if(typeof o=="number"&&(r=o),typeof t=="string"){t=new ni(t);let s=this._findNextMatchSync(t,a,!1,r);return t.dispose(),s}return this._findNextMatchSync(t,a,!1,r)}_findNextMatchSync(t,a,o,r){let s=this._onigBinding,n=s.findNextOnigScannerMatch(this._ptr,t.id,t.ptr,t.utf8Length,t.convertUtf16OffsetToUtf8(a),r);if(n===0)return null;let i=s.HEAPU32,l=n/4,u=i[l++],f=i[l++],d=[];for(let p=0;p<f;p++){let c=t.convertUtf8OffsetToUtf16(i[l++]),m=t.convertUtf8OffsetToUtf16(i[l++]);d[p]={start:c,end:m,length:m-c}}return{index:u,captureIndices:d}}};function wc(e){return typeof e.instantiator=="function"}function xc(e){return typeof e.default=="function"}function Lc(e){return typeof e.data<"u"}function Cc(e){return typeof Response<"u"&&e instanceof Response}function Ic(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 qa;function Sc(e){if(qa)return qa;async function t(){de=await pc(async a=>{let o=e;return o=await o,typeof o=="function"&&(o=await o(a)),typeof o=="function"&&(o=await o(a)),wc(o)?o=await o.instantiator(a):xc(o)?o=await o.default(a):(Lc(o)&&(o=o.data),Cc(o)?typeof WebAssembly.instantiateStreaming=="function"?o=await yc(o)(a):o=await bc(o)(a):Ic(o)?o=await or(o)(a):o instanceof WebAssembly.Module?o=await or(o)(a):"default"in o&&o.default instanceof WebAssembly.Module&&(o=await or(o.default)(a))),"instance"in o&&(o=o.instance),"exports"in o&&(o=o.exports),o})}return qa=t(),qa}function or(e){return t=>WebAssembly.instantiate(e,t)}function yc(e){return t=>WebAssembly.instantiateStreaming(e,t)}function bc(e){return async t=>{let a=await e.arrayBuffer();return WebAssembly.instantiate(a,t)}}async function ii(e){return e&&await Sc(e),{createScanner(t){return new rr(t.map(a=>typeof a=="string"?a:a.source))},createString(t){return new ni(t)}}}var za=ti({langs:$t,themes:si,engine:()=>ii(import("../wasm-EOPKAILK.js"))}),{codeToHtml:kc,codeToHast:Tc,codeToTokens:Pc,codeToTokensBase:Ac,codeToTokensWithThemes:vc,getSingletonHighlighter:Mc,getLastGrammarState:Rc}=ai(za,{guessEmbeddedLanguages:Xn});var li=new Set(Object.keys($t)),sr=new Map,nr=new Map,gt=new Map,Fc=(e,t)=>`${e}-${t[0]}-${t[1]}`,Bc=(e,t,a)=>{let o=e.slice(0,100),r=e.length>100?e.slice(-100):"";return`${t}:${a[0]}:${a[1]}:${e.length}:${o}:${r}`},Dc=(e,t)=>{let a=Fc(e,t);if(sr.has(a))return sr.get(a);let o=za({themes:t,langs:[e]});return sr.set(a,o),o};function Ec(e={}){var t;let a=(t=e.themes)!=null?t:["github-light","github-dark"];return{name:"shiki",type:"code-highlighter",supportsLanguage(o){return li.has(o)},getSupportedLanguages(){return Array.from(li)},getThemes(){return a},highlight({code:o,language:r,themes:s},n){let i=Bc(o,r,s);return nr.has(i)?nr.get(i):(n&&(gt.has(i)||gt.set(i,new Set),gt.get(i).add(n)),Dc(r,s).then(l=>{let u=l.getLoadedLanguages().includes(r)?r:"text",f=l.codeToTokens(o,{lang:u,themes:{light:s[0],dark:s[1]}});nr.set(i,f);let d=gt.get(i);if(d){for(let p of d)p(f);gt.delete(i)}}).catch(l=>{console.error("[Streamdown Code] Failed to highlight code:",l),gt.delete(i)}),null)}}}var ui=Ec();import{memo as Hc}from"react";import{useEffect as _c,useRef as Va,useState as Nc}from"react";var Oc=5,di=400;function fi(e,t,a={}){let{msPerChar:o=Oc}=a,[r,s]=Nc(t?"":e),n=Va(e),i=Va(t?0:e.length),l=Va(0),u=Va(null);return(e.length<i.current||!e.startsWith(r.slice(0,i.current)))&&(i.current=t?0:e.length),n.current=e,_c(()=>{if(!t){u.current!==null&&(cancelAnimationFrame(u.current),u.current=null),i.current=e.length,s(e);return}if(n.current.length-i.current>di&&(i.current=n.current.length-di),u.current!==null)return;let d=p=>{let c=n.current;if(i.current>=c.length){u.current=null;return}l.current===0&&(l.current=p);let m=p-l.current;if(m>=o){let L=Math.min(Math.floor(m/o),c.length-i.current);i.current+=L,s(c.slice(0,i.current)),l.current=p}u.current=requestAnimationFrame(d)};return u.current=requestAnimationFrame(d),()=>{u.current!==null&&(cancelAnimationFrame(u.current),u.current=null)}},[e,t,o]),r}import{jsx as ja}from"react/jsx-runtime";var ir=({className:e,from:t,children:a,...o})=>ja("div",{className:A("ww:group ww:flex ww:w-full",t==="user"?"is-user ww:ml-auto ww:max-w-[80%] ww:flex-col ww:items-end":"is-assistant ww:flex-col",e),...o,children:ja("div",{className:A("ww:flex ww:min-w-0 ww:flex-col ww:gap-2","ww:w-full"),children:a})}),lr=({children:e,className:t,...a})=>ja("div",{className:A("ww:flex ww:w-fit ww:min-w-0 ww:max-w-full ww:flex-col ww:gap-2 ww:overflow-hidden ww:text-base","ww:group-[.is-user]:ml-auto ww:group-[.is-user]:rounded-lg ww:group-[.is-user]:bg-user-bubble ww:group-[.is-user]:px-4 ww:group-[.is-user]:py-3 ww:group-[.is-user]:text-primary-foreground","ww:group-[.is-assistant]:text-foreground",t),...a,children:e}),Uc={cjk:Mo,code:ui},qc={cjk:Mo},Gc={enabled:!1};function Wc({className:e,linkSafety:t,isStreaming:a,children:o,...r}){let n=fi(typeof o=="string"?o:"",!!a),i=typeof o=="string"?n:o;return ja(It,{className:A("ww:size-full ww:[&>*:first-child]:mt-0 ww:[&>*:last-child]:mb-0",e),linkSafety:t??Gc,plugins:a?qc:Uc,...r,children:i})}var $a=Hc(Wc,(e,t)=>e.children===t.children&&e.isStreaming===t.isStreaming);$a.displayName="MessageResponse";import{createContext as zc,memo as fr,useCallback as Vc,useContext as jc,useEffect as ur,useMemo as $c,useRef as ci,useState as dr}from"react";import{Fragment as Kc,jsx as Be,jsxs as Jc}from"react/jsx-runtime";var pi=zc(null);function mi(){let e=jc(pi);if(!e)throw new Error("Reasoning components must be used within <Reasoning>");return e}var Xc=1e3,Qc=1e3,cr=fr(({className:e,isStreaming:t=!1,open:a,defaultOpen:o,onOpenChange:r,duration:s,children:n,...i})=>{let l=o??t,u=o===!1,f=a!==void 0,[d,p]=dr(l),c=f?a:d,m=Vc(y=>{f||p(y),r?.(y)},[f,r]),[L,x]=dr(void 0),w=s??L,g=ci(t),[h,I]=dr(!1),T=ci(null);ur(()=>{t?(g.current=!0,T.current===null&&(T.current=Date.now())):T.current!==null&&(x(Math.ceil((Date.now()-T.current)/Qc)),T.current=null)},[t]),ur(()=>{t&&!c&&!u&&m(!0)},[t,c,u,m]),ur(()=>{if(g.current&&!t&&c&&!h){let y=setTimeout(()=>{m(!1),I(!0)},Xc);return()=>clearTimeout(y)}},[t,c,h,m]);let k=$c(()=>({isStreaming:t,isOpen:c,setIsOpen:m,duration:w}),[t,c,m,w]);return Be(pi.Provider,{value:k,children:Be("div",{className:A("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:n})})});cr.displayName="Reasoning";var pr=fr(({className:e,children:t,getThinkingMessage:a,onClick:o,...r})=>{let{t:s}=H(),{isStreaming:n,isOpen:i,duration:l,setIsOpen:u}=mi(),d=a??((p,c)=>p||c===0?Be(qe,{duration:1.6,children:s.reasoning.thinking}):c===void 0?Be("span",{children:s.reasoning.thoughtBrief}):Be("span",{children:s.reasoning.thoughtForSeconds(c)}));return Be("button",{type:"button","aria-expanded":i,onClick:p=>{u(!i),o?.(p)},className:A("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),...r,children:t??Jc(Kc,{children:[Be(yt,{className:"ww:size-4 ww:shrink-0"}),d(n,l)]})})});pr.displayName="ReasoningTrigger";var mr=fr(({className:e,children:t,...a})=>{let{isOpen:o}=mi();return Be("div",{className:A("ww:grid ww:transition-[grid-template-rows,opacity] ww:duration-200 ww:ease-out",o?"ww:grid-rows-[1fr] ww:opacity-100":"ww:grid-rows-[0fr] ww:opacity-0"),children:Be("div",{className:"ww:min-h-0 ww:overflow-hidden",children:Be("div",{className:A("ww:text-sm ww:text-muted-foreground",e),...a,children:Be(It,{children:t})})})})});mr.displayName="ReasoningContent";import{createContext as Zc,useCallback as Yc,useContext as FC,useEffect as ep,useMemo as gr,useRef as tp,useState as xi}from"react";import{Fragment as wi,jsx as Se,jsxs as wt}from"react/jsx-runtime";function ap(e,t=80){if(e==null)return String(e);if(typeof e!="object")return String(e).slice(0,t);if(Array.isArray(e))return`Array(${e.length})`;let a=JSON.stringify(e);if(a.length<=t)return a;let o=Object.entries(e),r=[],s=t-2;for(let[n,i]of o){if(s<=8)break;let l=n.length>4?`${n.slice(0,4)}\u2026`:n,u;typeof i=="string"?u=i.length>2?`'${i.slice(0,1)}\u2026`:`'${i}'`:Array.isArray(i)?u=`Array(${i.length})`:typeof i=="object"&&i!==null?u="{\u2026}":u=String(i);let f=`${l}\u2009${u}`;r.push(f),s-=f.length+3}return`{${r.join(", ")}}`}function op({text:e,className:t}){let{t:a}=H(),[o,r]=xi(!1),s=tp(null);ep(()=>()=>{s.current&&clearTimeout(s.current)},[]);let n=Yc(async i=>{i.stopPropagation();try{await navigator.clipboard.writeText(e),r(!0),s.current&&clearTimeout(s.current),s.current=setTimeout(()=>r(!1),2e3)}catch{}},[e]);return Se(Pe,{variant:"ghost",size:"sm",onClick:n,className:A("ww:h-auto ww:gap-1 ww:px-1.5 ww:py-0.5 ww:text-xs ww:text-muted-foreground ww:hover:text-foreground",t),children:o?wt(wi,{children:[Se(bt,{className:"ww:size-3.5"}),Se("span",{children:a.tool.copied})]}):wt(wi,{children:[Se(Tt,{className:"ww:size-3.5"}),Se("span",{children:a.tool.copy})]})})}function Li({data:e,label:t,className:a,...o}){let[r,s]=xi(!1),n=gr(()=>JSON.stringify(e,null,2),[e]),i=ap(e);return wt("div",{className:A("ww:rounded-lg ww:bg-tool-card",a),...o,children:[wt("div",{className:"ww:flex ww:items-center ww:justify-between ww:px-3 ww:pt-2.5 ww:pb-1.5",children:[Se("span",{className:"ww:text-xs ww:font-medium ww:text-muted-foreground",children:t}),Se(op,{text:n})]}),wt("button",{type:"button",onClick:()=>s(l=>!l),className:"ww:flex ww:w-full ww:items-start ww:gap-2 ww:px-3 ww:pb-3 ww:text-left",children:[Se(kt,{className:A("ww:mt-0.5 ww:size-3.5 ww:shrink-0 ww:text-muted-foreground ww:transition-transform ww:duration-150",r&&"ww:rotate-90")}),r?Se("pre",{className:"ww:overflow-x-auto ww:text-xs ww:font-mono ww:text-foreground ww:whitespace-pre-wrap ww:break-all",children:Se("code",{children:n})}):Se("span",{className:"ww:truncate ww:text-xs ww:font-mono ww:text-foreground/80",children:i})]})]})}var NC=Zc({open:!1,toggle:()=>{}});function Ci({className:e,input:t,debug:a,...o}){let{t:r}=H(),s=gr(()=>{if(!a&&typeof t=="object"&&t!==null&&!Array.isArray(t)){let{_meta:n,...i}=t;return i}return t},[t,a]);return Se(Li,{data:s,label:r.tool.request,className:e,...o})}function hr(e){if(!(typeof e!="object"||e===null))return e}function Ii(e){return hr(e?.ui)}function Si(e){return hr(hr(e)?._meta)}function hi(e){if(!e)return;let t=Ii(e)?.resourceUri;if(typeof t=="string"&&t.length>0)return t;let a=e["ui/resourceUri"];if(typeof a=="string"&&a.length>0)return a;let o=e["openai/outputTemplate"];if(typeof o=="string"&&o.length>0)return o}function gi(e){return Ii(e)?.autoHeight===!0}function Qt(e,t,a){if(e){let o=hi(a?.[e]?._meta);if(o)return o}return hi(Si(t))}function yi(e,t,a){return e&&gi(a?.[e]?._meta)?!0:gi(Si(t))}function bi({className:e,output:t,errorText:a,debug:o,...r}){let{t:s}=H(),n=gr(()=>{if(!o&&typeof t=="object"&&t!==null&&!Array.isArray(t)){let{_meta:i,...l}=t;return l}return t},[t,o]);return t||a?a?wt("div",{className:A("ww:space-y-2",e),...r,children:[Se("h4",{className:"ww:text-xs ww:font-medium ww:uppercase ww:tracking-wide ww:text-muted-foreground",children:s.tool.error}),Se("div",{className:"ww:rounded-lg ww:bg-destructive/10 ww:p-3 ww:text-xs ww:text-destructive",children:a})]}):Se(Li,{data:n,label:s.tool.response,className:e,...r}):null}import{jsx as ki,jsxs as rp}from"react/jsx-runtime";function Ti(e){return e.type==="text"||e.type==="reasoning"||e.type==="file"||"toolCallId"in e}function Pi(e){return e.parts.some(Ti)}function Ai(e,t,a){if(t!=="submitted"&&t!=="streaming")return!1;let o=e[e.length-1];return!o||o.role!=="assistant"?!0:!o.parts.some(s=>!(!Ti(s)||a?.ignoreToolParts&&"toolCallId"in s||a?.ignoreReasoningParts&&s.type==="reasoning"))}function vi({className:e,...t}){let{t:a}=H();return rp("div",{"aria-live":"polite",className:A("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:[ki(Rt,{className:"ww:size-4 ww:shrink-0"}),ki(qe,{duration:1.6,children:a.workingIndicator.default})]})}import{useCallback as sp,useEffect as Ri,useMemo as np,useRef as ye,useState as Fi}from"react";function xt(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 Mi(e,t){return!xt(e)&&!xt(t)?null:xt(e)?xt(t)?{...e.content||t.content?{content:[...e.content??[],...t.content??[]]}:{},...e.structuredContent||t.structuredContent?{structuredContent:{...e.structuredContent??{},...t.structuredContent??{}}}:{}}:{...e.content?{content:[...e.content]}:{},...e.structuredContent?{structuredContent:{...e.structuredContent}}:{}}:{...t?.content?{content:[...t.content]}:{},...t?.structuredContent?{structuredContent:{...t.structuredContent}}:{}}}import{jsx as wp}from"react/jsx-runtime";var ip="/api/mcp/resource",lp=500,up=0,dp=16,fp="2026-01-26",cp=300,pp=3e3,mp=3;function hp(e){if(typeof e!="string")return;let t=e.trim();return t.length>0?t:void 0}function gp(e,t,a){return Qt(e,t,a)?!1:t._meta?.["waniwani/autoInjectResultText"]!==!1}function wr({resourceUri:e,toolInput:t,toolResult:a,resourceEndpoint:o=ip,chatSessionId:r,isDark:s=!1,className:n,autoHeight:i=!1,onOpenLink:l,onFollowUp:u,onCallTool:f,onDisplayModeChange:d,isFullscreen:p=!1,toolDefinitions:c}){let m=ye(null),L=ye(t),x=ye(a),w=ye({width:0,height:0}),g=ye(null),h=ye(!1),I=ye(0),T=ye("inline"),[k,y]=Fi(up),[M,E]=Fi(void 0),F=ye(l),b=ye(u),S=ye(f),P=ye(d),V=ye(r),U=ye(c);L.current=t,x.current=a,F.current=l,b.current=u,S.current=f,P.current=d,V.current=r,U.current=c;let Ie=sp($=>i?Math.max($+dp,0):Math.min(Math.max($,50),lp),[i]),he=np(()=>{let $=o.includes("?")?"&":"?";return`${o}${$}uri=${encodeURIComponent(e)}`},[o,e]),ge=ye(s);return ge.current=s,Ri(()=>{if(!h.current)return;let $=m.current;$?.contentWindow&&$.contentWindow.postMessage({jsonrpc:"2.0",method:"ui/notifications/host-context-changed",params:{theme:s?"dark":"light"}},"*")},[s]),Ri(()=>{let $=m.current;if(!$)return;let Z=!1,we=!1,ne=null,ie=null,De=setTimeout(()=>{if(Z||we||I.current>=mp)return;I.current+=1;let G=new URL($.src);G.searchParams.set("_retry",String(I.current)),$.src=G.toString()},pp),D=G=>{$.contentWindow?.postMessage(G,"*")},X=G=>{if(Z||G.source!==$.contentWindow)return;let q=G.data;if(!q||typeof q!="object"||q.jsonrpc!=="2.0")return;let Q=q.method,N=q.id;if(Q==="ui/initialize"&&N!=null){we=!0,clearTimeout(De),D({jsonrpc:"2.0",id:N,result:{protocolVersion:q.params?.protocolVersion??fp,hostInfo:{name:"WaniWani Chat",version:"1.0.0"},hostCapabilities:{openLinks:{},message:{text:{}},tools:{},updateModelContext:{text:{},structuredContent:{}}},hostContext:{theme:ge.current?"dark":"light",displayMode:T.current}}});return}if(Q==="ui/notifications/initialized"){h.current=!0;let W=L.current,z=x.current,v=z._meta&&typeof z._meta=="object"?z._meta:null,R=hp(V.current),O=v&&typeof v.waniwani=="object"&&v.waniwani!==null?v.waniwani:null,Y=O||R?{...O??{},...R?{sessionId:R}:{}}:void 0,xe=v||Y?{...v??{},...Y?{waniwani:Y}:{}}:void 0;D({jsonrpc:"2.0",method:"ui/notifications/tool-input",params:{arguments:W}});let Me=z.content??[{type:"text",text:JSON.stringify(z)}];D({jsonrpc:"2.0",method:"ui/notifications/tool-result",params:{content:Me,structuredContent:z.structuredContent,_meta:xe,meta:xe}});return}if(Q==="ui/notifications/size-changed"){let W=q.params,z=typeof W?.height=="number"?W.height:void 0,v=typeof W?.width=="number"?W.width:void 0,R=w.current,O=z!==void 0&&z!==R.height,Y=v!==void 0&&v!==R.width;if(!O&&!Y)return;if(O&&z!==void 0){R.height=z;let xe=Ie(z),Me=$.getBoundingClientRect().height;if(g.current&&(g.current.cancel(),g.current=null),y(xe),$.animate&&Math.abs(Me-xe)>2){let We=$.animate([{height:`${Me}px`},{height:`${xe}px`}],{duration:cp,easing:"ease-out",fill:"forwards"});g.current=We,We.onfinish=()=>{g.current===We&&(We.cancel(),g.current=null)}}}Y&&i&&v!==void 0&&(R.width=v,E(v));return}if(Q==="ui/open-link"&&N!=null){let W=q.params?.url;typeof W=="string"&&(F.current?F.current(W):window.open(W,"_blank","noopener,noreferrer")),D({jsonrpc:"2.0",id:N,result:{}});return}if(Q==="ui/message"&&N!=null){if(b.current&&q.params){let W=q.params,z=ne;if(ne=null,ie){clearTimeout(ie.timer);let v=ie.text;ie=null;let R=(W.content??[]).map(O=>O.text??"").join("").trim();W={...W,content:[{type:"text",text:`${R}
|
|
14
14
|
|
|
15
|
-
${A}`}]}}T.current({...G,...W?{modelContext:W}:{}})}D({jsonrpc:"2.0",id:N,result:{}});return}if(K==="ui/update-model-context"&&N!=null){ie=ki(ie,H.params),D({jsonrpc:"2.0",id:N,result:{}});return}if(K==="tools/call"&&N!=null){let G=S.current;if(!G){D({jsonrpc:"2.0",id:N,error:{code:-32601,message:"tools/call not supported"}});return}let W=H.params?.name;G({name:W,arguments:H.params?.arguments??{}}).then(A=>{D({jsonrpc:"2.0",id:N,result:A});let R=A.content?.map(O=>O.text??"").join("").trim();R&&op(W,A,z.current)&&(le&&clearTimeout(le.timer),le={text:R,timer:setTimeout(()=>{if(Y)return;let O=ie;ie=null,le=null,T.current?.({role:"user",content:[{type:"text",text:R}],...O?{modelContext:O}:{}})},500)})}).catch(A=>{let R=A instanceof Error?A.message:"Tool call failed";D({jsonrpc:"2.0",id:N,error:{code:-32e3,message:R}})});return}if(K==="ui/request-display-mode"&&N!=null){let G=H.params?.mode,W=G==="fullscreen"||G==="inline"||G==="pip"?G:"inline";k.current=W,D({jsonrpc:"2.0",id:N,result:{mode:W}}),D({jsonrpc:"2.0",method:"ui/notifications/host-context-changed",params:{displayMode:W}}),P.current?.(W);return}if(K==="ui/resource-teardown"&&N!=null){D({jsonrpc:"2.0",id:N,result:{}});return}K==="ping"&&N!=null&&D({jsonrpc:"2.0",id:N,result:{}})};return window.addEventListener("message",Q),()=>{Y=!0,clearTimeout(Be),le&&clearTimeout(le.timer),window.removeEventListener("message",Q)}},[i,Ie]),rp("iframe",{ref:m,src:he,sandbox:"allow-scripts allow-forms allow-same-origin allow-popups allow-popups-to-escape-sandbox",className:v(!p&&"ww:rounded-md ww:border ww:border-border",n),style:{height:p?"100%":b,minWidth:p||!M?void 0:`min(${M}px, 100%)`,width:"100%",border:"none",colorScheme:s?"dark":"auto"},title:"MCP App"})}import{jsx as Xt,jsxs as sp}from"react/jsx-runtime";function Ai({icon:e,title:t,description:a,suggestions:o,onSuggestionSelect:r}){return sp("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&&Xt("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}),Xt("h2",{className:"ww:text-lg ww:font-semibold ww:text-foreground",children:t}),a&&Xt("p",{className:"ww:mt-1 ww:text-sm ww:text-muted-foreground ww:max-w-sm",children:a}),o&&o.length>0&&Xt("div",{className:"ww:mt-6 ww:w-full ww:max-w-md ww:flex ww:flex-col ww:gap-2",children:o.map((s,n)=>Xt("button",{type:"button",onClick:()=>r?.(s),className:v("ww:w-full ww:text-left ww:rounded-xl ww:border ww:border-border ww:bg-background ww:px-4 ww:py-3 ww:text-sm","ww:text-foreground ww:hover:bg-accent ww:hover:border-primary/30","ww:transition-all ww:duration-200 ww:ease-out ww:cursor-pointer","ww:animate-[ww-fade-in_0.2s_ease-out_both]"),style:{animationDelay:`${n*50}ms`},children:s},s))})]})}import{Component as np}from"react";import{jsx as gr,jsxs as lp}from"react/jsx-runtime";function ip({onRetry:e}){let{t}=U();return lp("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:[gr("span",{children:t.widgetErrorBoundary.failedToLoad}),gr("button",{type:"button",onClick:e,className:"ww:text-xs ww:font-medium ww:text-primary ww:hover:underline",children:t.widgetErrorBoundary.retry})]})}var Va=class extends np{state={hasError:!1};static getDerivedStateFromError(){return{hasError:!0}}componentDidCatch(t){console.warn("[WaniWani] Widget failed to render:",t.message)}render(){return this.state.hasError?gr(ip,{onRetry:()=>this.setState({hasError:!1})}):this.props.children}};import{Fragment as up,jsx as ae,jsxs as rt}from"react/jsx-runtime";function vi(e){return e?e.replace(/[-_]/g," ").replace(/^\w/,t=>t.toUpperCase()):"Tool"}function ja({messages:e,status:t,welcomeMessage:a,welcome:o,onSuggestionSelect:r,resourceEndpoint:s,chatSessionId:n,isDark:i,onFollowUp:l,onCallTool:u,onWidgetDisplayModeChange:f,fullscreenToolCallId:d,debug:p,showToolCalls:c=!0,toolDefinitions:m}){let C=e[e.length-1],w=e.length>0,x=d!=null,g=!x&&yi(e,t,{ignoreToolParts:c===!1});return rt(up,{children:[!x&&(!w&&o?ae(Ai,{...o,onSuggestionSelect:r}):a&&ae(ar,{from:"assistant",children:ae(or,{children:ae(za,{children:a})})})),e.map(h=>{let I=h.parts.filter(T=>T.type==="text"),k=h.parts.filter(T=>T.type==="reasoning"),b=h.parts.filter(T=>T.type==="file"),y=h.parts.filter(T=>"toolCallId"in T),M=h===C&&h.role==="assistant",E=I.length>0,B=x?y.some(T=>T.toolCallId===d):!1;return x&&!B?ae("div",{style:{display:"none"}},h.id):h.role==="assistant"&&!mr(h)?ae("div",{style:{display:"none"}},h.id):c===!1&&h.role==="assistant"&&!E&&k.length===0&&b.length===0&&y.every(T=>{let S="output"in T?T.output:void 0;return S===void 0||!s||!$t(T.toolName,S,m)})?ae("div",{style:{display:"none"}},h.id):rt(ar,{from:h.role,children:[!B&&k.map((T,S)=>rt(ir,{isStreaming:T.state==="streaming",children:[ae(lr,{}),ae(ur,{children:T.text})]},`reasoning-${h.id}-${S}`)),y.map(T=>{let S="output"in T?T.output:void 0,P=$t(T.toolName,S,m),$=Li(T.toolName,S,m),z=T.toolCallId===d;return c===!1&&!(P&&s&&S!==void 0)?null:rt("div",{style:z?{position:"absolute",inset:0,zIndex:10,display:"flex",flexDirection:"column",overflow:"hidden",background:"var(--ww-color-background)"}:void 0,children:[c!==!1&&ae("div",{style:z?{display:"none"}:void 0,children:c==="titles-only"?ae(mi,{title:T.title??vi(T.toolName),state:T.state}):rt(ci,{children:[ae(pi,{title:T.title??vi(T.toolName),state:T.state}),rt(hi,{children:[ae(gi,{input:T.input,debug:p}),S!==void 0&&ae(Ci,{output:S,errorText:"errorText"in T?T.errorText:void 0,debug:p})]})]})}),P&&s&&S!==void 0&&ae(Va,{children:ae(hr,{isFullscreen:z,resourceUri:P,toolInput:T.input??{},toolResult:{content:S.content,structuredContent:S.structuredContent,_meta:S._meta},resourceEndpoint:s,chatSessionId:n,isDark:i,autoHeight:$,toolDefinitions:m,onFollowUp:l,onCallTool:u,onDisplayModeChange:f?Ie=>f(Ie,{toolCallId:T.toolCallId,resourceUri:P,toolInput:T.input??{},toolResult:{content:S.content,structuredContent:S.structuredContent,_meta:S._meta},autoHeight:$}):void 0})})]},T.toolCallId)}),!B&&ae("div",{children:rt(or,{children:[b.length>0&&ae(bs,{files:b}),E?I.map((T,S)=>{let P=M&&t==="streaming"&&S===I.length-1;return ae(za,{isStreaming:P,children:T.type==="text"?T.text:""},`${h.id}-${S}`)}):null]})})]},h.id)}),g&&ae(bi,{})]})}import{jsx as Mi,jsxs as cp}from"react/jsx-runtime";var dp="https://app.waniwani.ai/assets/waniwani-logo.svg",fp="https://waniwani.ai";function $a(){let{t:e}=U();return cp("a",{href:fp,target:"_blank",rel:"noopener noreferrer",className:"ww:flex ww:items-center ww:gap-1.5 ww:text-[11px] ww:text-muted-foreground ww:opacity-70 hover:ww:opacity-100 ww:transition-opacity",children:[Mi("span",{children:e.poweredBy.label}),Mi("img",{src:dp,alt:"WaniWani",width:72,height:10,"data-waniwani-logo":"",className:"ww:h-2.5 ww:w-auto"})]})}import{jsx as Xa}from"react/jsx-runtime";function Qa({suggestions:e,isLoading:t,onSelect:a,className:o,...r}){return e.length===0&&!t?null:Xa("div",{className:v("ww:px-4 ww:py-2",o),...r,children:Xa("div",{className:"ww:mx-auto ww:w-full ww:max-w-3xl ww:flex ww:flex-wrap ww:gap-2",children:t?[0,1,2].map(s=>Xa("div",{className:"ww:h-7 ww:rounded-full ww:bg-accent ww:animate-pulse",style:{width:`${60+s*20}px`}},s)):e.map((s,n)=>Xa("button",{type:"button",onClick:()=>a(s),className:v("ww:rounded-full ww:border ww:border-border ww:bg-background ww:px-3 ww:py-1 ww:text-xs","ww:text-foreground ww:hover:bg-accent ww:hover:border-primary/30","ww:transition-all ww:duration-200 ww:ease-out ww:cursor-pointer","ww:animate-[ww-fade-in_0.2s_ease-out_both]"),style:{animationDelay:`${n*50}ms`},children:s},s))})})}import{useEffect as pp,useRef as mp,useState as hp}from"react";import{jsx as Z,jsxs as st}from"react/jsx-runtime";var Ri=20;function gp({label:e}){return st("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:[Z("title",{children:e}),Z("line",{x1:"12",y1:"5",x2:"12",y2:"19"}),Z("line",{x1:"5",y1:"12",x2:"19",y2:"12"})]})}function wp({label:e}){return st("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:[Z("title",{children:e}),Z("path",{d:"M3 12a9 9 0 1 0 3-6.7"}),Z("polyline",{points:"3 4 3 9 8 9"}),Z("line",{x1:"12",y1:"7",x2:"12",y2:"12"}),Z("line",{x1:"12",y1:"12",x2:"15",y2:"14"})]})}function xp({label:e}){return st("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:[Z("title",{children:e}),Z("polyline",{points:"3 6 5 6 21 6"}),Z("path",{d:"M19 6l-2 14a2 2 0 0 1-2 2H9a2 2 0 0 1-2-2L5 6"}),Z("path",{d:"M10 11v6"}),Z("path",{d:"M14 11v6"})]})}function Ka({threads:e,activeThreadId:t,onNewThread:a,onSelectThread:o,onDeleteThread:r}){let{locale:s,t:n}=U(),[i,l]=hp(!1),u=mp(null);pp(()=>{if(!i)return;let p=c=>{let m=u.current;m&&(c.composedPath().includes(m)||l(!1))};return document.addEventListener("mousedown",p),()=>document.removeEventListener("mousedown",p)},[i]);let f=e.slice(0,Ri),d=Math.max(0,e.length-Ri);return st("div",{ref:u,className:"ww:relative ww:flex ww:items-center ww:gap-1",children:[Z("button",{type:"button",onClick:a,title:n.threadMenu.newChat,"aria-label":n.threadMenu.newChat,className:"ww:p-1.5 ww:rounded-md ww:text-muted-foreground hover:ww:text-foreground hover:ww:bg-foreground/5 ww:transition-colors ww:cursor-pointer",children:Z(gp,{label:n.threadMenu.newChat})}),Z("button",{type:"button",onClick:()=>l(p=>!p),title:n.threadMenu.threadHistory,"aria-label":n.threadMenu.threadHistory,"aria-expanded":i,className:"ww:p-1.5 ww:rounded-md ww:text-muted-foreground hover:ww:text-foreground hover:ww:bg-foreground/5 ww:transition-colors ww:cursor-pointer",children:Z(wp,{label:n.threadMenu.threadHistory})}),i&&st("div",{role:"menu",className:"ww:absolute ww:right-0 ww:top-full ww:mt-1 ww:w-72 ww:max-h-80 ww:overflow-y-auto ww:rounded-lg ww:border ww:border-border ww:bg-background ww:shadow-lg ww:z-50",children:[f.length===0&&Z("div",{className:"ww:px-3 ww:py-3 ww:text-xs ww:text-muted-foreground",children:n.threadMenu.noPreviousChats}),f.map(p=>{let c=p.threadId===t,m=Date.parse(p.updatedAt);return st("div",{className:`ww:flex ww:items-center ww:gap-2 ww:px-3 ww:py-2 ww:text-xs hover:ww:bg-foreground/5 ${c?"ww:bg-foreground/5":""}`,children:[st("button",{type:"button",onClick:()=>{o(p.threadId),l(!1)},className:"ww:flex-1 ww:min-w-0 ww:text-left ww:cursor-pointer",children:[Z("div",{className:"ww:truncate ww:text-foreground ww:font-medium",children:p.title}),Z("div",{className:"ww:text-[10px] ww:text-muted-foreground",children:Number.isNaN(m)?"":Co(m,s)})]}),Z("button",{type:"button",onClick:C=>{C.stopPropagation(),r(p.threadId)},title:n.threadMenu.deleteThread,"aria-label":n.threadMenu.deleteThread,className:"ww:p-1 ww:rounded ww:text-muted-foreground hover:ww:text-foreground hover:ww:bg-foreground/10 ww:transition-colors ww:cursor-pointer",children:Z(xp,{label:n.threadMenu.deleteThread})})]},p.threadId)}),d>0&&Z("div",{className:"ww:px-3 ww:py-2 ww:text-[10px] ww:text-muted-foreground ww:border-t ww:border-border",children:n.threadMenu.hiddenThreads(d)})]})]})}import{useCallback as Lp,useRef as Cp}from"react";function Ja(e){let t=Cp(e);return t.current=e,Lp(async a=>{let{api:o,headers:r,onCallTool:s,sessionId:n}=t.current;if(s)return s(a);let i=`${o??"/api/waniwani"}/tool`,l=typeof n=="string"&&n.trim().length>0?n.trim():void 0,u=await fetch(i,{method:"POST",headers:{"Content-Type":"application/json",...l?{"X-Session-Id":l}:{},...r},body:JSON.stringify(a)});if(!u.ok)throw new Error(`Tool call failed: ${u.status} ${u.statusText}`);return u.json()},[])}import{useChat as Np}from"@ai-sdk/react";import{useCallback as pe,useEffect as Ae,useRef as se,useState as nt}from"react";import{DefaultChatTransport as Ip,uiMessageChunkSchema as Sp}from"ai";function yp(e){let t=e?.cause,a=t?.issues??t?.errors;if(!Array.isArray(a))return null;let o=a.find(r=>r.code==="invalid_union");if(!o?.errors)return null;for(let r of o.errors){if(!Array.isArray(r)||r.some(i=>(i.code==="invalid_value"||i.code==="invalid_literal")&&i.path?.[0]==="type"))continue;let n=r.filter(i=>i.code==="unrecognized_keys").flatMap(i=>i.keys??[]);if(n.length>0)return n}return null}var Za=class extends Ip{processResponseStream(t){let a="",o=Sp(),r=o.validate?.bind(o);return t.pipeThrough(new TextDecoderStream).pipeThrough(new TransformStream({async transform(s,n){a+=s;let i=a.split(`
|
|
16
|
-
`);a=i.pop()??"";for(let l of i){let u=l.trim();if(!u.startsWith("data:"))continue;let f=u.slice(5).trim();if(f!=="[DONE]")try{let d=JSON.parse(f);if(!r){n.enqueue(d);continue}let p=await r(d);if(p.success){n.enqueue(p.value);continue}let c=yp(p.error);if(c?.length){let m={...d};for(let w of c)delete m[w];let C=await r(m);C.success&&n.enqueue(C.value)}}catch{}}}}))}};var bp="waniwani-memory";var ke="threads",Ya="by_memoryUserId",kp="by_updatedAt";var Bi="memoryUserId",Fi="waniwani-memory-user-id",wr=null;function xr(){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 Tp(e,t){if(t<1&&(e.objectStoreNames.contains("ids")||e.createObjectStore("ids")),t<2&&!e.objectStoreNames.contains(ke)){let a=e.createObjectStore(ke,{keyPath:"threadId"});a.createIndex(Ya,"memoryUserId",{unique:!1}),a.createIndex(kp,"updatedAt",{unique:!1})}}async function Lr(){return new Promise((e,t)=>{let a=indexedDB.open(bp,2);a.onupgradeneeded=o=>{Tp(a.result,o.oldVersion)},a.onsuccess=()=>e(a.result),a.onerror=()=>t(a.error)})}async function Pp(){return Lr()}async function Ap(e){return new Promise((t,a)=>{let s=e.transaction("ids","readonly").objectStore("ids").get(Bi);s.onsuccess=()=>t(typeof s.result=="string"?s.result:null),s.onerror=()=>a(s.error)})}async function vp(e,t){return new Promise((a,o)=>{let n=e.transaction("ids","readwrite").objectStore("ids").put(t,Bi);n.onsuccess=()=>a(),n.onerror=()=>o(n.error)})}async function Mp(){if(typeof indexedDB>"u")return null;try{let e=await Pp();try{let t=await Ap(e);if(t)return t;let a=xr();return await vp(e,a),a}finally{e.close()}}catch{return null}}function Rp(){try{let e=localStorage.getItem(Fi);if(e)return e;let t=xr();return localStorage.setItem(Fi,t),t}catch{return null}}async function Di(){let e=await Mp();if(e)return e;let t=Rp();return t||(wr||(wr=xr()),wr)}var Ei=50,_i=1e3;function eo(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 to(e){if(typeof indexedDB>"u")return null;let t=null;try{return t=await Lr(),await e(t)}catch{return null}finally{try{t?.close()}catch{}}}function Cr(e){return new Promise((t,a)=>{e.onsuccess=()=>t(e.result),e.onerror=()=>a(e.error)})}async function Ir(e){return await to(async a=>{let s=a.transaction(ke,"readonly").objectStore(ke).index(Ya),i=(await Cr(s.getAll(e))??[]).filter(eo);return i.sort((l,u)=>l.updatedAt<u.updatedAt?1:-1),i})??[]}async function ao(e){return await to(async a=>{let r=a.transaction(ke,"readonly").objectStore(ke),s=await Cr(r.get(e));return eo(s)?s:null})??null}async function Sr(e){if(!eo(e))return;let t=e.messages.length>_i?{...e,messages:e.messages.slice(e.messages.length-_i)}:e;await to(async a=>{await new Promise((l,u)=>{let f=a.transaction(ke,"readwrite");f.oncomplete=()=>l(),f.onerror=()=>u(f.error),f.onabort=()=>u(f.error),f.objectStore(ke).put(t)});let o=a.transaction(ke,"readwrite"),r=o.objectStore(ke),s=r.index(Ya),i=(await Cr(s.getAll(t.memoryUserId))??[]).filter(eo);if(i.length>Ei){i.sort((u,f)=>u.updatedAt<f.updatedAt?-1:1);let l=i.slice(0,i.length-Ei);for(let u of l)r.delete(u.threadId)}return await new Promise((l,u)=>{o.oncomplete=()=>l(),o.onerror=()=>u(o.error),o.onabort=()=>u(o.error)}),null})}async function Ni(e){await to(async t=>(await new Promise((a,o)=>{let r=t.transaction(ke,"readwrite");r.oncomplete=()=>a(),r.onerror=()=>o(r.error),r.onabort=()=>o(r.error),r.objectStore(ke).delete(e)}),null))}async function yr(e){return(await Ir(e))[0]?.threadId??null}function Oi(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 Ui="waniwani-visitor-id";function Hi(e,t){return e.match(t)?.[1]??null}function Fp(e){let t=[["Edge",/Edg(?:e|A|iOS)?\/(\S+)/],["Opera",/(?:OPR|Opera)\/(\S+)/],["Samsung Internet",/SamsungBrowser\/(\S+)/],["Firefox",/Firefox\/(\S+)/],["Chrome",/Chrome\/(\S+)/],["Safari",/Version\/(\S+).*Safari/]];for(let[a,o]of t){let r=Hi(e,o);if(r)return{name:a,version:r}}return null}function Bp(e){let t=[["iOS",/(?:iPhone|iPad|iPod).+?OS (\d+[_.\d]*)/],["Android",/Android (\d+[.\d]*)/],["macOS",/Mac OS X (\d+[_.\d]*)/],["Windows",/Windows NT (\d+[.\d]*)/],["ChromeOS",/CrOS \S+ (\d+[.\d]*)/],["Linux",/Linux/]];for(let[a,o]of t){let r=Hi(e,o);if(r)return{name:a,version:r.replace(/_/g,".")};if(a==="Linux"&&o.test(e))return{name:a,version:""}}return null}function Dp(e){return typeof navigator<"u"&&"userAgentData"in navigator&&navigator.userAgentData?.mobile?"mobile":/iPad|tablet|PlayBook/i.test(e)?"tablet":/Mobi|Android.*Mobile|iPhone|iPod/i.test(e)?"mobile":"desktop"}async function Ep(e){let t=new TextEncoder().encode(e),a=await crypto.subtle.digest("SHA-256",t);return Array.from(new Uint8Array(a)).map(o=>o.toString(16).padStart(2,"0")).join("")}async function _p(){try{let a=localStorage.getItem(Ui);if(a)return a}catch{}let e=[navigator.userAgent,screen.width,screen.height,screen.colorDepth,Intl.DateTimeFormat().resolvedOptions().timeZone,navigator.language,navigator.hardwareConcurrency??"",navigator.platform??""].join("|"),t=await Ep(e);try{localStorage.setItem(Ui,t)}catch{}return t}async function br(){let e=navigator.userAgent,[t,a]=await Promise.all([_p(),Di()]);return{userAgent:e,browser:Fp(e),os:Bp(e),deviceType:Dp(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 Op="x-session-id",Up=250;function qi(){return typeof crypto<"u"&&typeof crypto.randomUUID=="function"?crypto.randomUUID():Ft()}function oo(){return new Date().toISOString()}function Gi(e){if(typeof e!="string")return;let t=e.trim();return t.length>0?t:void 0}async function Hp(e,t){let a=`${e.replace(/\/$/,"")}/tools`,o=await fetch(a,{method:"GET",headers:t?{...t}:void 0});if(!o.ok)throw new Error(`[WaniWani] Failed to fetch /tools: ${o.status} ${o.statusText}`);let r=await o.json();if(!r||!Array.isArray(r.tools))return{};let s={};for(let n of r.tools)n&&typeof n.name=="string"&&(s[n.name]=n);return s}function ro(e){let{api:t="/api/waniwani",headers:a,body:o,onMessageSent:r,onResponseReceived:s,enableThreadHistory:n=!1,activeThreadId:i,onThreadChange:l}=e,u=se(a),f=se(o),d=se(n);Ae(()=>{d.current=n},[n]);let p=se(void 0),c=se(null),[m,C]=nt(void 0),w=se(m),[x,g]=nt(i),h=se(x),[I,k]=nt([]),[b,y]=nt(!n),M=se(void 0),E=se(void 0),B=se(void 0),T=se(void 0),S=se(0),P=se(l);Ae(()=>{P.current=l},[l]);let $=pe(L=>{h.current=L,g(L),L&&P.current?.(L)},[]),z=pe(async()=>{if(!n)return;let L=c.current?.memoryUserId;if(!L)return;let F=await Ir(L);k(F)},[n]),Ie=pe(()=>w.current,[]),he=pe(L=>{let F=Gi(L);F&&w.current!==F&&(w.current=F,C(F))},[]),ge=pe(()=>{w.current=void 0,C(void 0)},[]);Ae(()=>{u.current=a},[a]),Ae(()=>{f.current=o},[o]),Ae(()=>{let L=!1,F=S.current;return(async()=>{try{let Le=await br();if(L)return;c.current=Le}catch{}if(!n)return;let _=c.current?.memoryUserId;if(!_){y(!0);return}try{let Le=i??await yr(_);if(L||F!==S.current)return;if(Le){let ue=await ao(Le);if(L||F!==S.current)return;ue&&ue.memoryUserId===_&&(h.current=ue.threadId,g(ue.threadId),M.current=ue.createdAt,E.current=ue.title,ue.sessionId&&(w.current=ue.sessionId,C(ue.sessionId)),K(ue.messages))}await z()}finally{L||y(!0)}})(),()=>{L=!0}},[]);let X=se(new Za({api:t,headers:()=>({...u.current}),body:()=>{let L={...f.current??{}},F=Object.hasOwn(L,"sessionId"),_=Gi(L.sessionId);if(_)he(_),L.sessionId=_;else if(F)ge(),delete L.sessionId;else{let Me=Ie();Me&&(L.sessionId=Me)}if(wt(p.current)&&(L.modelContext=p.current),c.current){let Me=c.current;L.visitorContext={timezone:Me.timezone,language:Me.language,languages:Me.languages,deviceType:Me.deviceType,referrer:Me.referrer,visitorId:Me.visitorId};let Ne=typeof L.visitor=="object"&&L.visitor!==null?L.visitor:{},pl=typeof Ne.client=="object"&&Ne.client!==null?Ne.client:{};L.visitor={...Ne,client:{...pl,memoryUserId:Me.memoryUserId}}}let Le=typeof L.extra=="object"&&L.extra!==null&&!Array.isArray(L.extra)?L.extra:void 0,ue=c.current?.memoryUserId,oe=c.current?.language,ea={};if(ue&&(ea.memoryUserId=ue),oe&&(ea.locale=oe),(Object.keys(ea).length>0||Le)&&(L.extra={...ea,...Le??{}}),d.current)if(Object.hasOwn(L,"threadId"))typeof L.threadId=="string"&&(h.current=L.threadId);else{let Ne=h.current;Ne||(Ne=qi(),M.current=oo(),E.current=void 0,$(Ne)),L.threadId=Ne}return L},fetch:(async(L,F)=>{let _=await fetch(L,F);return p.current=void 0,he(_.headers.get(Op)),_})})),Y=se(null),we=se(null),ie=se({}),[le,Be]=nt(0),D=e.skipRemoteConfig===!0,Q=pe(async()=>{if(!D)try{let L=await Hp(t,u.current);ie.current=L,Be(F=>F+1)}catch(L){console.warn("[WaniWani] Failed to fetch tool definitions:",L instanceof Error?L.message:L)}},[t,D]);Ae(()=>{Q()},[Q]);let{messages:q,sendMessage:H,setMessages:K,status:N}=Np({messages:e.initialMessages,transport:X.current,onFinish({message:L}){s?.(),Y.current&&(we.current=L)},onError(L){console.warn("[WaniWani] Chat error:",L.message),Y.current&&(Y.current.reject(L),Y.current=null)}}),G=se(q);Ae(()=>{G.current=q},[q]);let W=se(n);Ae(()=>{if(!n||W.current||(W.current=!0,G.current.length>0))return;let L=!1,F=S.current;return y(!1),(async()=>{try{let _=c.current;if(!_)try{_=await br(),c.current=_}catch{}let Le=_?.memoryUserId;if(!Le||L||F!==S.current){L||y(!0);return}let ue=i??await yr(Le);if(L||F!==S.current)return;if(ue){let oe=await ao(ue);if(L||F!==S.current)return;oe&&oe.memoryUserId===Le&&(h.current=oe.threadId,g(oe.threadId),M.current=oe.createdAt,E.current=oe.title,oe.sessionId&&(w.current=oe.sessionId,C(oe.sessionId)),K(oe.messages))}await z()}finally{L||y(!0)}})(),()=>{L=!0}},[n]),Ae(()=>{if(N==="ready"&&Y.current&&we.current){let L=Y.current,F=we.current;Y.current=null,we.current=null,L.resolve(F)}},[N]);let[A,R]=nt(""),[O,ee]=nt([]),xe=N==="submitted"||N==="streaming",ve=pe(L=>{ee(F=>F.filter(_=>_.id!==L))},[]),He=xe&&O.length>0,sl=pe(L=>{let F=!!L.text?.trim(),_=!!L.files?.length;if(F||_){if(xe){if(O.length>0)return;ee(Le=>[...Le,{id:Ft(),text:L.text||"",files:L.files??[],modelContext:L.modelContext}]),R("");return}p.current=L.modelContext,H({text:L.text||"",files:L.files}),r?.(L.text||""),R("")}},[H,r,xe,O.length]),nl=pe(L=>new Promise((F,_)=>{Y.current={resolve:F,reject:_},H({text:L}),r?.(L)}),[H,r]);Ae(()=>{if(N!=="ready"||O.length===0)return;let[L,...F]=O;ee(F),p.current=L.modelContext,H({text:L.text,files:L.files.length>0?L.files:void 0}),r?.(L.text)},[N,H,r,O]);let il=pe(()=>{K([]),ee([]),ge(),R(""),ie.current={},Be(L=>L+1),Q()},[K,ge,Q]),Zt=pe(()=>{if(!d.current)return;let L=c.current?.memoryUserId,F=h.current,_=G.current;if(!(!L||!F||_.length===0)){if(M.current||(M.current=oo()),!E.current){let Le=_.find(oe=>oe.role==="user"),ue=Le?Le.parts.map(oe=>"text"in oe&&typeof oe.text=="string"?oe.text:"").join(" "):"";E.current=Oi(ue)}return{threadId:F,memoryUserId:L,title:E.current,messages:_,sessionId:w.current,createdAt:M.current,updatedAt:oo()}}},[]),Fr=pe(async()=>{let L=Zt();L&&(await Sr(L),await z())},[Zt,z]);Ae(()=>{if(n&&b&&!(N==="submitted"||N==="streaming")&&q.length!==0)return B.current&&clearTimeout(B.current),B.current=setTimeout(()=>{B.current=void 0;let L=Fr().finally(()=>{T.current===L&&(T.current=void 0)});T.current=L},Up),()=>{B.current&&clearTimeout(B.current)}},[n,b,q,N,Fr]);let Yt=pe(()=>{let L=T.current,F=B.current,_=F?Zt():void 0;return F&&(clearTimeout(F),B.current=void 0),(async()=>{L&&await L,_&&(await Sr(_),await z())})()},[Zt,z]),ll=pe(()=>{S.current+=1,Yt(),K([]),ee([]),ge(),R("");let L=qi();return M.current=oo(),E.current=void 0,$(L),z(),L},[K,ge,$,z,Yt]),uo=pe(async L=>{S.current+=1;let F=S.current;if(await Yt(),F!==S.current)return;let _=await ao(L);F===S.current&&_&&($(_.threadId),M.current=_.createdAt,E.current=_.title,_.sessionId?(w.current=_.sessionId,C(_.sessionId)):ge(),K(_.messages),ee([]),R(""))},[K,ge,$,Yt]),ul=pe(async L=>{if(h.current===L){S.current+=1,B.current&&(clearTimeout(B.current),B.current=void 0);let F=T.current;F&&await F}await Ni(L),await z(),h.current===L&&(K([]),ee([]),ge(),R(""),h.current=void 0,g(void 0),M.current=void 0,E.current=void 0)},[K,ge,z]);Ae(()=>{n&&b&&i!==void 0&&i!==h.current&&uo(i)},[i,n,b,uo]);let dl=pe(L=>{R(L.target.value)},[]),Br=q[q.length-1],Dr=q.length>0,fl=xe&&(!Dr||Br.role==="user"),cl=ie.current;return{messages:q,status:N,text:A,setText:R,handleSubmit:sl,handleTextChange:dl,isLoading:xe,showLoaderBubble:fl,lastMessage:Br,hasMessages:Dr,sendMessage:H,sendMessageAndWait:nl,reset:il,queuedMessages:O,queueFull:He,removeQueuedMessage:ve,sessionId:m,toolDefinitions:cl,refreshToolDefinitions:Q,threads:I,activeThreadId:x,isThreadHistoryReady:b,startNewThread:ll,switchThread:uo,deleteThread:ul}}import{useEffect as Wi,useRef as qp,useState as Gp}from"react";var Wp={debug:!1,eval:!1};function zi(e="/api/waniwani",t,a=!1){let[o,r]=Gp(Wp),s=qp(t);return Wi(()=>{s.current=t},[t]),Wi(()=>{a||(async()=>{try{let n=s.current,l=await(await fetch(`${e}/config`,{headers:n?{...n}:void 0})).json();r({debug:l.debug===!0,eval:l.eval===!0})}catch{}})()},[e,a]),o}import{useCallback as zp,useEffect as kr,useRef as Vp,useState as jp}from"react";function $p(e){for(let t of e.parts){let a=t;if(a.type==="data"||a.type==="data-suggestions"){let o=a.data;if(o&&Array.isArray(o.suggestions))return o.suggestions}}return null}function Vi(e){return typeof e=="object"&&e!==null&&"initial"in e}function so(e){let{messages:t,status:a,config:o}=e,r=Vi(o)&&o.initial?o.initial:void 0,[s,n]=jp(r??[]),i=Vp(a),l=o===!0||Vi(o)&&o.dynamic!==!1,u=zp(()=>{n([])},[]),f=t.length>0;kr(()=>{!f&&r&&r.length>0&&n(r)},[r,f]);let d=t[t.length-1];return kr(()=>{d?.role==="user"&&u()},[d,u]),kr(()=>{let p=i.current;if(i.current=a,p==="streaming"&&a==="ready"&&l){let c=[...t].reverse().find(C=>C.role==="assistant");if(!c)return;let m=$p(c);m&&n(m)}},[a,l,t]),{suggestions:s,isLoading:!1,clear:u}}import{useEffect as Xp,useRef as Qp,useState as Kp}from"react";var Jp=50,Zp=30,Yp=2e3,ji=500;function no(e,t=!0){let[a,o]=Kp(""),r=Qp(void 0);return Xp(()=>{if(!t){o("");return}let s=0,n=!1,i=!1,l=()=>{i||(n?(s--,o(e.slice(0,s)),s<=0?(n=!1,r.current=setTimeout(l,ji)):r.current=setTimeout(l,Zp)):(s++,o(e.slice(0,s)),s>=e.length?(n=!0,r.current=setTimeout(l,Yp)):r.current=setTimeout(l,Jp)))};return r.current=setTimeout(l,ji),()=>{i=!0,clearTimeout(r.current)}},[e,t]),a}function io(e,t){let a=t?.Authorization,o=typeof a=="string"&&a.startsWith("Bearer ")?a.slice(7):null;return o?`${e}/resource?token=${encodeURIComponent(o)}`:`${e}/resource`}var $i={primaryColor:"#6366f1",primaryForeground:"#1f2937",backgroundColor:"#ffffff",textColor:"#1f2937",mutedColor:"#6b7280",borderColor:"#e5e7eb",borderWidth:0,boxShadow:"none",assistantBubbleColor:"#f3f4f6",userBubbleColor:"#f4f4f4",inputBackgroundColor:"#f9fafb",borderRadius:16,messageBorderRadius:12,fontFamily:"system-ui, -apple-system, 'Segoe UI', sans-serif",headerBackgroundColor:"#ffffff",headerTextColor:"#1f2937",statusColor:"#22c55e",toolCardColor:"#f4f4f5"},em={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"},tm={primaryColor:["--ww-primary","--ww-color-primary"],primaryForeground:["--ww-primary-fg","--ww-color-primary-foreground"],backgroundColor:["--ww-bg","--ww-color-background"],textColor:["--ww-text","--ww-color-foreground","--ww-color-accent-foreground"],mutedColor:["--ww-muted","--ww-color-muted-foreground"],borderColor:["--ww-border","--ww-color-border"],borderWidth:["--ww-border-width"],boxShadow:["--ww-shadow"],assistantBubbleColor:["--ww-assistant-bubble","--ww-color-accent"],userBubbleColor:["--ww-user-bubble"],inputBackgroundColor:["--ww-input-bg","--ww-color-input"],borderRadius:["--ww-radius"],messageBorderRadius:["--ww-msg-radius"],fontFamily:["--ww-font"],headerBackgroundColor:["--ww-header-bg"],headerTextColor:["--ww-header-text"],statusColor:["--ww-status"],toolCardColor:["--ww-tool-card","--ww-color-tool-card"]};function Tr(e){return{...$i,...e}}function Qt(e){let t={};for(let[a,o]of Object.entries(tm)){let r=e[a];if(r===void 0)continue;let s=typeof r=="number"?`${r}px`:String(r);for(let n of o)t[n]=s}return t}import{jsx as me,jsxs as Kt}from"react/jsx-runtime";var sm=am(function(t,a){let{theme:o,title:r="Assistant",width:s,height:n,className:i,allowAttachments:l=!1,welcomeMessage:u,welcome:f,placeholder:d="Ask me anything...",triggerEvent:p="triggerDemoRequest",api:c,debug:m,enableThreadHistory:C=!1,showToolCalls:w=!0}=t,x=c??"/api/waniwani",g=io(x,t.headers),h=Tr(o),I=Qt(h),k=h.backgroundColor.replace("#",""),b=parseInt(k.substring(0,2),16),y=parseInt(k.substring(2,4),16),M=parseInt(k.substring(4,6),16),E=(b*299+y*587+M*114)/1e3<128,B=zi(x,t.headers,t.skipRemoteConfig),T=m??B.debug,S=ro({...t,api:x}),P=Ja({...t,api:x,sessionId:S.sessionId}),$=no(d,!S.text),[z,Ie]=Qi(!1),[he,ge]=Qi(null),X=Xi(null),Y=Xi(void 0),we=Pr(()=>{let D=X.current;if(!D)return;D.scrollIntoView({behavior:"smooth",block:"center"});let Q=D.querySelector("textarea");Q&&setTimeout(()=>Q.focus(),300),Ie(!0),clearTimeout(Y.current),Y.current=setTimeout(()=>Ie(!1),2e3)},[]),ie=so({messages:S.messages,status:S.status,config:t.suggestions}),le=Pr(D=>{let Q=D.content.map(q=>q.text??"").join("").trim();Q&&S.handleSubmit({text:Q,files:[],modelContext:D.modelContext})},[S.handleSubmit]),Be=Pr(D=>{ie.clear(),S.handleSubmit({text:D,files:[]})},[ie.clear,S.handleSubmit]);return rm(a,()=>({sendMessage:D=>{S.handleSubmit({text:D,files:[]}),we()},sendMessageAndWait:D=>S.sendMessageAndWait(D),reset:S.reset,focus:we,get messages(){return S.messages},get sessionId(){return S.sessionId}}),[S.handleSubmit,S.sendMessageAndWait,S.reset,S.messages,S.sessionId,we]),om(()=>{if(!p)return;let D=Q=>{let q=Q.detail,H=typeof q?.message=="string"?q.message:void 0;H&&S.handleSubmit({text:H,files:[]}),we()};return window.addEventListener(p,D),()=>window.removeEventListener(p,D)},[p,S.handleSubmit,we]),Kt("div",{ref:X,style:{...I,width:s,height:n},"data-waniwani-chat":"","data-waniwani-layout":"card",...E?{"data-waniwani-dark":""}:{},className:v("ww:flex ww:flex-col ww:font-[family-name:var(--ww-font)] ww:text-foreground ww:bg-background ww:rounded-[var(--ww-radius)] ww:overflow-hidden",z&&"ww:ring-2 ww:ring-blue-400/70 ww:ring-offset-2 ww:ring-offset-background",i),children:[Kt("div",{className:"ww:shrink-0 ww:flex ww:items-center ww:gap-2 ww:px-6 ww:py-3",style:{backgroundColor:h.headerBackgroundColor,color:h.headerTextColor},children:[me("div",{className:"ww:text-sm ww:font-semibold ww:truncate ww:flex-1 ww:min-w-0",children:r}),me(ys,{messages:S.messages,evalEnabled:B.eval,api:x}),C&&me(Ka,{threads:S.threads,activeThreadId:S.activeThreadId,onNewThread:S.startNewThread,onSelectThread:D=>{S.switchThread(D)},onDeleteThread:D=>{S.deleteThread(D)}})]}),Kt(es,{className:"ww:flex-1 ww:min-h-0 ww:bg-background",children:[me(ts,{scrollClassName:he?"ww:!relative ww:!overflow-hidden":void 0,children:me(ja,{messages:S.messages,status:S.status,welcomeMessage:u,welcome:f,onSuggestionSelect:Be,resourceEndpoint:g,chatSessionId:S.sessionId,isDark:E,onFollowUp:le,onCallTool:P,fullscreenToolCallId:he,debug:T,showToolCalls:w,toolDefinitions:S.toolDefinitions,onWidgetDisplayModeChange:(D,Q)=>{ge(D==="fullscreen"?Q.toolCallId:null)}})}),me(as,{})]}),me("div",{style:he?{display:"none"}:void 0,children:me(Qa,{suggestions:ie.suggestions,isLoading:ie.isLoading,onSelect:Be})}),me("div",{style:he?{display:"none"}:void 0,children:me(fa,{queuedMessages:S.queuedMessages,onRemove:S.removeQueuedMessage})}),me("div",{style:he?{display:"none"}:void 0,children:me("div",{className:"ww:shrink-0 ww:px-4 ww:pb-8 ww:pt-2 ww:bg-background",children:Kt("div",{className:"ww:mx-auto ww:w-full ww:max-w-3xl",children:[me(ia,{onSubmit:S.handleSubmit,globalDrop:l,multiple:l,className:"ww:rounded-2xl ww:border-border ww:bg-input",children:Kt("div",{className:"ww:flex ww:items-center ww:gap-1 ww:pl-4 ww:pr-3 ww:py-2.5",children:[l&&me(da,{}),me(la,{onChange:S.handleTextChange,value:S.text,placeholder:$,className:"ww:min-h-0 ww:py-1 ww:px-0"}),me(ua,{status:S.status,disabled:S.queueFull})]})}),me($a,{})]})})})]})});import{forwardRef as Ji,useCallback as lo,useEffect as xt,useImperativeHandle as im,useRef as Jt,useState as Ar}from"react";import{jsx as nm}from"react/jsx-runtime";function Ki({text:e}){let{t}=U();return e===!1?null:nm("span",{className:"ww:text-[11px] ww:text-muted-foreground ww:opacity-70",children:e||t.aiDisclaimer.default})}import{jsx as ne,jsxs as Xe}from"react/jsx-runtime";var vr=Ji(function(t,a){let{locale:o,messages:r}=t;return ne(Lo,{locale:o,messages:r,children:ne(lm,{...t,ref:a})})}),lm=Ji(function(t,a){let{t:o,ready:r}=U(),{appearance:s,className:n,allowAttachments:i=!1,welcomeMessage:l,welcome:u,placeholder:f=o.promptInput.placeholder,triggerEvent:d="triggerDemoRequest",api:p,mcp:c,debug:m=!1,readOnly:C=!1,title:w,headerActions:x,hideHeader:g=!1,enableThreadHistory:h=!1,showToolCalls:I=!0,initializing:k=!1,disclaimer:b}=t,y=s?.theme,M=s?.variables,E=M?Qt(M):{},[B,T]=Ar(!1);xt(()=>{if(y!=="auto"||typeof window>"u")return;let A=window.matchMedia("(prefers-color-scheme: dark)");T(A.matches);let R=()=>T(A.matches);return A.addEventListener("change",R),()=>A.removeEventListener("change",R)},[y]);let S=y==="dark"||y==="auto"&&B,P=ro({...t,api:p}),$=Ja({...t,api:p,sessionId:P.sessionId,onCallTool:c?.onCallTool}),z=c?.resourceEndpoint??io(p,t.headers),Ie=no(f,!P.text),[he,ge]=Ar(null),X=Jt(null),Y=Jt(null),we=Jt(null),ie=Jt(null),[le,Be]=Ar(!0),D=Jt(le);D.current=le;let Q=lo(()=>{let A=X.current;if(!A)return;let R=A.querySelector("textarea");R&&R.focus()},[]),q=lo((A="smooth")=>{let R=Y.current;R&&R.scrollTo({top:R.scrollHeight,behavior:A})},[]);xt(()=>{let A=ie.current,R=Y.current;if(!A||!R)return;let O=new IntersectionObserver(([ee])=>Be(ee.isIntersecting),{root:R,rootMargin:"0px 0px 200px 0px",threshold:0});return O.observe(A),()=>O.disconnect()},[]),xt(()=>{(P.messages[P.messages.length-1]?.role==="user"||D.current)&&q("smooth")},[P.messages.length,P.messages[P.messages.length-1]]),xt(()=>{q("auto")},[q]),xt(()=>{if(typeof ResizeObserver>"u")return;let A=Y.current,R=we.current;if(!A&&!R)return;let O=A?.scrollHeight??0,ee=A?.clientHeight??0,xe=new ResizeObserver(()=>{let ve=Y.current;if(!ve)return;let He=ve.scrollTop+ee>=O-5;O=ve.scrollHeight,ee=ve.clientHeight,He&&q("auto")});return A&&xe.observe(A),R&&xe.observe(R),()=>xe.disconnect()},[q]);let H=so({messages:P.messages,status:P.status,config:t.suggestions}),K=lo(A=>{let R=A.content.map(O=>O.text??"").join("").trim();R&&P.handleSubmit({text:R,files:[],modelContext:A.modelContext})},[P.handleSubmit]),N=lo(A=>{H.clear(),P.handleSubmit({text:A,files:[]})},[H.clear,P.handleSubmit]);im(a,()=>({sendMessage:A=>{P.handleSubmit({text:A,files:[]}),Q()},sendMessageAndWait:A=>P.sendMessageAndWait(A),reset:P.reset,focus:Q,get messages(){return P.messages},get sessionId(){return P.sessionId}}),[P.handleSubmit,P.sendMessageAndWait,P.reset,P.messages,P.sessionId,Q]),xt(()=>{if(!d)return;let A=R=>{let O=R.detail,ee=typeof O?.message=="string"?O.message:void 0;ee&&P.handleSubmit({text:ee,files:[]}),Q()};return window.addEventListener(d,A),()=>window.removeEventListener(d,A)},[d,P.handleSubmit,Q]);let G=!g&&!!(w||h||x),W=k||!r;return Xe("div",{ref:X,style:{...E,maxHeight:"inherit",opacity:W?0:1,transition:"opacity 220ms ease-out"},"data-waniwani-chat":"","data-waniwani-layout":"embed","data-color-scheme":y==="auto"?"auto":void 0,...W?{"data-waniwani-initializing":""}:{},...S?{"data-waniwani-dark":""}:{},className:v("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",y==="dark"&&"dark",n),children:[G&&Xe("div",{className:"ww:shrink-0 ww:flex ww:items-center ww:gap-2 ww:pl-4 ww:pr-3 ww:py-3 ww:border-b ww:border-border",style:{backgroundColor:"var(--ww-color-card-header)",color:"var(--ww-color-card-header-foreground)"},children:[w&&ne("div",{className:"ww:text-sm ww:font-semibold ww:truncate ww:flex-1 ww:min-w-0",children:w}),!w&&ne("div",{className:"ww:flex-1"}),h&&ne(Ka,{threads:P.threads,activeThreadId:P.activeThreadId,onNewThread:P.startNewThread,onSelectThread:A=>{P.switchThread(A)},onDeleteThread:A=>{P.deleteThread(A)}}),x]}),Xe("div",{ref:Y,className:v("ww:relative ww:flex-1 ww:min-h-0",he?"ww:overflow-hidden":"ww:overflow-y-auto"),children:[Xe("div",{ref:we,className:v("ww:mx-auto ww:w-full ww:max-w-3xl ww:px-4 ww:py-6 ww:flex ww:flex-col ww:gap-6",he&&"ww:!py-0"),children:[ne(ja,{messages:P.messages,status:P.status,welcomeMessage:l,welcome:u,onSuggestionSelect:N,resourceEndpoint:z,chatSessionId:P.sessionId,isDark:S,onFollowUp:K,onCallTool:$,fullscreenToolCallId:he,debug:m,showToolCalls:I,toolDefinitions:P.toolDefinitions,onWidgetDisplayModeChange:(A,R)=>{ge(A==="fullscreen"?R.toolCallId:null)}}),ne("div",{ref:ie,"aria-hidden":!0,style:{height:1}})]}),!le&&!he&&ne("div",{className:"ww:sticky ww:bottom-2 ww:flex ww:justify-center ww:pointer-events-none",children:ne(Te,{type:"button",onClick:()=>q("smooth"),size:"icon",variant:"outline",className:"ww:rounded-full ww:shadow ww:pointer-events-auto","aria-label":"Scroll to latest",children:ne(Qe,{className:"ww:size-4"})})})]}),!C&&Xe("div",{className:"ww:shrink-0 ww:bg-background",style:he?{display:"none"}:void 0,children:[ne(Qa,{suggestions:H.suggestions,isLoading:H.isLoading,onSelect:N}),ne(fa,{queuedMessages:P.queuedMessages,onRemove:P.removeQueuedMessage}),ne("div",{className:"ww:px-4 ww:pb-2 ww:pt-2",children:Xe("div",{className:"ww:mx-auto ww:w-full ww:max-w-3xl",children:[ne(ia,{onSubmit:P.handleSubmit,globalDrop:i,multiple:i,className:"ww:rounded-2xl ww:border-border ww:bg-input",children:Xe("div",{className:"ww:flex ww:items-center ww:gap-1 ww:pl-4 ww:pr-3 ww:py-2.5",children:[i&&ne(da,{}),ne(la,{onChange:P.handleTextChange,value:P.text,placeholder:Ie,className:"ww:min-h-0 ww:py-1 ww:px-0"}),ne(ua,{status:P.status,disabled:P.queueFull})]})}),Xe("div",{className:"ww:pt-2 ww:pb-1 ww:flex ww:justify-center ww:items-center ww:gap-1.5",children:[ne($a,{}),ne(Ki,{text:b})]})]})})]})]})});import{forwardRef as gm,useEffect as wm,useMemo as al,useState as ol}from"react";var um="https://app.waniwani.ai/api/mcp/chat",dm={api:um};function fm(){if(typeof document>"u")return null;if(document.currentScript instanceof HTMLScriptElement)return document.currentScript;let e=document.querySelectorAll("script[src]");for(let t of e)if(t instanceof HTMLScriptElement&&/embed/i.test(t.src))return t;return null}function cm(){let e=fm();if(!e)return{};let t=y=>e.getAttribute(y)??void 0,a=y=>{let M=e.getAttribute(y);if(M==null)return;let E=M.trim().toLowerCase();if(E==="true"||E==="1"||E==="")return!0;if(E==="false"||E==="0")return!1},o={},r=t("data-api");r&&(o.api=r);let s=t("data-token");s&&(o.token=s);let n=t("data-title");n&&(o.title=n);let i=t("data-welcome-message");i&&(o.welcomeMessage=i);let l=t("data-placeholder");l&&(o.placeholder=l);let u=t("data-mcp-server-url");u&&(o.mcpServerUrl=u);let f=t("data-channel-id");if(f&&(o.channelId=f),t("data-show-tool-calls")?.trim().toLowerCase()==="titles-only")o.showToolCalls="titles-only";else{let y=a("data-show-tool-calls");y!==void 0&&(o.showToolCalls=y)}let p=t("data-css");p&&(o.css=p);let c=t("data-suggestions");c&&(o.suggestions=c.split(",").map(y=>y.trim()).filter(Boolean));let m=a("data-enable-thread-history");m!==void 0&&(o.enableThreadHistory=m);let C=a("data-hide-header");C!==void 0&&(o.hideHeader=C);let w=t("data-theme");(w==="light"||w==="dark"||w==="auto")&&(o.appearance={theme:w});let x=t("data-locale");(x==="en"||x==="fr"||x==="es")&&(o.locale=x);let g=t("data-mode");(g==="inline"||g==="floating")&&(o.mode=g);let h=t("data-position");(h==="bottom-center"||h==="bottom-right"||h==="bottom-left")&&(o.position=h);let I=t("data-height");I&&(o.height=I);let k=t("data-launcher-text");k&&(o.launcherText=k);let b=t("data-disclaimer");if(b!==void 0){let y=b.trim(),M=y.toLowerCase();M==="false"||M==="0"?o.disclaimer=!1:y&&(o.disclaimer=y)}return o}function Mr(e){if(!e)return{};let t={};for(let a in e)e[a]!==void 0&&(t[a]=e[a]);return t}function Rr(e,t,a){let o=a??cm(),r=pm(t,o,e),s={token:"",...dm,...Mr(t),...Mr(o),...Mr(e),...r?{appearance:r}:{}};if(!s.token)throw new Error("[WaniWani] Missing required config: `token`. Set data-token on the script tag or pass it to WaniWani.chat.init().");return s}function pm(e,t,a){let o=a?.appearance?.theme??t.appearance?.theme??e?.appearance?.theme,r={...e?.appearance?.variables??{},...t.appearance?.variables??{},...a?.appearance?.variables??{}},s=Object.keys(r).length>0;if(!o&&!s)return;let n={};return o&&(n.theme=o),s&&(n.variables=r),n}import{useEffect as LS,useState as CS}from"react";var mm="waniwani:config:";function Zi(e,t,a){return`${mm}${e}|${t}|${a??""}`}function Yi(e,t,a){if(typeof window>"u")return null;try{let o=window.sessionStorage.getItem(Zi(e,t,a));if(!o)return null;let r=JSON.parse(o);return r&&typeof r=="object"?r:null}catch{return null}}function el(e,t,a,o){if(!(typeof window>"u"))try{window.sessionStorage.setItem(Zi(e,t,a),JSON.stringify(o))}catch{}}async function tl(e,t,a,o){try{let r=`${e.replace(/\/$/,"")}/config`,s=o?`${r}?channel=${encodeURIComponent(o)}`:r,n=await fetch(s,{method:"GET",headers:{Authorization:`Bearer ${t}`},signal:a});if(!n.ok)return{};let i=await n.json(),l=i&&typeof i=="object"&&"data"in i&&i.data?i.data:i;return l?hm(l):{}}catch{return{}}}function hm(e){let t={};return e.title!=null&&(t.title=e.title),e.welcomeMessage!=null&&(t.welcomeMessage=e.welcomeMessage),e.placeholder!=null&&(t.placeholder=e.placeholder),e.suggestions!=null&&e.suggestions.length>0&&(t.suggestions=e.suggestions),typeof e.enableThreadHistory=="boolean"&&(t.enableThreadHistory=e.enableThreadHistory),t}import{jsx as Cm}from"react/jsx-runtime";var xm=600,rl="https://app.waniwani.ai/api/mcp/chat",Lm=gm(function(t,a){let{token:o,channelId:r,className:s,overrides:n}=t,i=al(()=>({token:o,channelId:r,api:n?.api,mcpServerUrl:n?.mcpServerUrl,title:n?.title,hideHeader:n?.hideHeader,welcomeMessage:n?.welcomeMessage,placeholder:n?.placeholder,suggestions:n?.suggestions,enableThreadHistory:n?.enableThreadHistory,showToolCalls:n?.showToolCalls,appearance:n?.appearance,disclaimer:n?.disclaimer,locale:n?.locale}),[o,r,n?.api,n?.mcpServerUrl,n?.title,n?.hideHeader,n?.welcomeMessage,n?.placeholder,n?.suggestions,n?.enableThreadHistory,n?.showToolCalls,n?.appearance,n?.disclaimer,n?.locale]),l=n?.api??rl,[u,f]=ol({}),[d,p]=ol(!1);wm(()=>{if(!o){p(!0);return}let C=Yi(l,o,r);C&&(f(C),p(!0));let w=new AbortController,x=setTimeout(()=>p(!0),xm);return tl(l,o,w.signal,r).then(g=>{w.signal.aborted||(Object.keys(g).length>0&&(el(l,o,r,g),f(g)),p(!0))}).catch(g=>{console.error("[WaniWani] Remote config fetch failed:",g),p(!0)}).finally(()=>clearTimeout(x)),()=>{w.abort(),clearTimeout(x)}},[l,o,r]);let c=al(()=>Rr(i,u,void 0),[i,u]),m={};return c.mcpServerUrl&&(m.mcpServerUrl=c.mcpServerUrl),c.channelId&&(m.channelId=c.channelId),Cm(vr,{ref:a,api:c.api??rl,headers:{Authorization:`Bearer ${c.token}`},skipRemoteConfig:!0,body:Object.keys(m).length>0?m:void 0,appearance:c.appearance,title:c.title,hideHeader:c.hideHeader,welcomeMessage:c.welcomeMessage,welcome:n?.welcome,placeholder:c.placeholder,suggestions:c.suggestions?{initial:c.suggestions}:void 0,enableThreadHistory:c.enableThreadHistory,showToolCalls:c.showToolCalls,disclaimer:c.disclaimer,allowAttachments:n?.allowAttachments,locale:c.locale,messages:n?.messages,className:s,initializing:!d})});export{sm as ChatCard,vr as ChatEmbed,em as DARK_THEME,$i as DEFAULT_THEME,hr as McpAppFrame,Lm as WaniwaniChat,Tr as mergeTheme,Qt as themeToCSSProperties};
|
|
15
|
+
${v}`}]}}b.current({...W,...z?{modelContext:z}:{}})}D({jsonrpc:"2.0",id:N,result:{}});return}if(Q==="ui/update-model-context"&&N!=null){ne=Mi(ne,q.params),D({jsonrpc:"2.0",id:N,result:{}});return}if(Q==="tools/call"&&N!=null){let W=S.current;if(!W){D({jsonrpc:"2.0",id:N,error:{code:-32601,message:"tools/call not supported"}});return}let z=q.params?.name;W({name:z,arguments:q.params?.arguments??{}}).then(v=>{D({jsonrpc:"2.0",id:N,result:v});let R=v.content?.map(O=>O.text??"").join("").trim();R&&gp(z,v,U.current)&&(ie&&clearTimeout(ie.timer),ie={text:R,timer:setTimeout(()=>{if(Z)return;let O=ne;ne=null,ie=null,b.current?.({role:"user",content:[{type:"text",text:R}],...O?{modelContext:O}:{}})},500)})}).catch(v=>{let R=v instanceof Error?v.message:"Tool call failed";D({jsonrpc:"2.0",id:N,error:{code:-32e3,message:R}})});return}if(Q==="ui/request-display-mode"&&N!=null){let W=q.params?.mode,z=W==="fullscreen"||W==="inline"||W==="pip"?W:"inline";T.current=z,D({jsonrpc:"2.0",id:N,result:{mode:z}}),D({jsonrpc:"2.0",method:"ui/notifications/host-context-changed",params:{displayMode:z}}),P.current?.(z);return}if(Q==="ui/resource-teardown"&&N!=null){D({jsonrpc:"2.0",id:N,result:{}});return}Q==="ping"&&N!=null&&D({jsonrpc:"2.0",id:N,result:{}})};return window.addEventListener("message",X),()=>{Z=!0,clearTimeout(De),ie&&clearTimeout(ie.timer),window.removeEventListener("message",X)}},[i,Ie]),wp("iframe",{ref:m,src:he,sandbox:"allow-scripts allow-forms allow-same-origin allow-popups allow-popups-to-escape-sandbox",className:A(!p&&"ww:rounded-md ww:border ww:border-border",n),style:{height:p?"100%":k,minWidth:p||!M?void 0:`min(${M}px, 100%)`,width:"100%",border:"none",colorScheme:s?"dark":"auto"},title:"MCP App"})}import{jsx as Kt,jsxs as xp}from"react/jsx-runtime";function Bi({icon:e,title:t,description:a,suggestions:o,onSuggestionSelect:r}){return xp("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&&Kt("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}),Kt("h2",{className:"ww:text-lg ww:font-semibold ww:text-foreground",children:t}),a&&Kt("p",{className:"ww:mt-1 ww:text-sm ww:text-muted-foreground ww:max-w-sm",children:a}),o&&o.length>0&&Kt("div",{className:"ww:mt-6 ww:w-full ww:max-w-md ww:flex ww:flex-col ww:gap-2",children:o.map((s,n)=>Kt("button",{type:"button",onClick:()=>r?.(s),className:A("ww:w-full ww:text-left ww:rounded-xl ww:border ww:border-border ww:bg-background ww:px-4 ww:py-3 ww:text-sm","ww:text-foreground ww:hover:bg-accent ww:hover:border-primary/30","ww:transition-all ww:duration-200 ww:ease-out ww:cursor-pointer","ww:animate-[ww-fade-in_0.2s_ease-out_both]"),style:{animationDelay:`${n*50}ms`},children:s},s))})]})}import{Component as Lp}from"react";import{jsx as xr,jsxs as Ip}from"react/jsx-runtime";function Cp({onRetry:e}){let{t}=H();return Ip("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:[xr("span",{children:t.widgetErrorBoundary.failedToLoad}),xr("button",{type:"button",onClick:e,className:"ww:text-xs ww:font-medium ww:text-primary ww:hover:underline",children:t.widgetErrorBoundary.retry})]})}var Xa=class extends Lp{state={hasError:!1};static getDerivedStateFromError(){return{hasError:!0}}componentDidCatch(t){console.warn("[WaniWani] Widget failed to render:",t.message)}render(){return this.state.hasError?xr(Cp,{onRetry:()=>this.setState({hasError:!1})}):this.props.children}};import{Fragment as Sp,jsx as te,jsxs as Lt}from"react/jsx-runtime";function Di(e){return e?e.replace(/[-_]/g," ").replace(/^\w/,t=>t.toUpperCase()):"Tool"}function Qa({messages:e,status:t,welcomeMessage:a,welcome:o,onSuggestionSelect:r,resourceEndpoint:s,chatSessionId:n,isDark:i,onFollowUp:l,onCallTool:u,onWidgetDisplayModeChange:f,fullscreenToolCallId:d,debug:p,showToolCalls:c=!0,toolDefinitions:m}){let L=e[e.length-1],x=e.length>0,w=d!=null,g=!w&&Ai(e,t,{ignoreToolParts:c===!1,ignoreReasoningParts:c===!1});return Lt(Sp,{children:[!w&&(!x&&o?te(Bi,{...o,onSuggestionSelect:r}):a&&te(ir,{from:"assistant",children:te(lr,{children:te($a,{children:a})})})),e.map(h=>{let I=h.parts.filter(b=>b.type==="text"),T=h.parts.filter(b=>b.type==="reasoning"),k=h.parts.filter(b=>b.type==="file"),y=h.parts.filter(b=>"toolCallId"in b),M=h===L&&h.role==="assistant",E=I.length>0,F=w?y.some(b=>b.toolCallId===d):!1;return w&&!F?te("div",{style:{display:"none"}},h.id):h.role==="assistant"&&!Pi(h)?te("div",{style:{display:"none"}},h.id):c===!1&&h.role==="assistant"&&!E&&k.length===0&&y.every(b=>{let S="output"in b?b.output:void 0;return S===void 0||!s||!Qt(b.toolName,S,m)})?te("div",{style:{display:"none"}},h.id):Lt(ir,{from:h.role,children:[c!==!1&&!F&&T.map((b,S)=>Lt(cr,{isStreaming:b.state==="streaming",children:[te(pr,{}),te(mr,{children:b.text})]},`reasoning-${h.id}-${S}`)),c!==!1&&!F&&y.length>0&&Lt(Ms,{isWorking:y.some(b=>b.state==="input-available"||b.state==="input-streaming"),children:[te(Rs,{label:(()=>{let b=y[y.length-1];return b.title??Di(b.toolName)})()}),te(Fs,{children:y.map((b,S)=>{let P=b.title??Di(b.toolName),V=S===y.length-1;if(c==="titles-only")return te(Po,{title:P,state:b.state,isLast:V},b.toolCallId);let U="output"in b?b.output:void 0;return Lt(Po,{title:P,state:b.state,isLast:V,children:[te(Ci,{input:b.input,debug:p}),U!==void 0&&te(bi,{output:U,errorText:"errorText"in b?b.errorText:void 0,debug:p})]},b.toolCallId)})})]}),y.map(b=>{let S="output"in b?b.output:void 0,P=Qt(b.toolName,S,m),V=yi(b.toolName,S,m),U=b.toolCallId===d;return P&&s&&S!==void 0?te("div",{style:U?{position:"absolute",inset:0,zIndex:10,display:"flex",flexDirection:"column",overflow:"hidden",background:"var(--ww-color-background)"}:void 0,children:P&&s&&S!==void 0&&te(Xa,{children:te(wr,{isFullscreen:U,resourceUri:P,toolInput:b.input??{},toolResult:{content:S.content,structuredContent:S.structuredContent,_meta:S._meta},resourceEndpoint:s,chatSessionId:n,isDark:i,autoHeight:V,toolDefinitions:m,onFollowUp:l,onCallTool:u,onDisplayModeChange:f?Ie=>f(Ie,{toolCallId:b.toolCallId,resourceUri:P,toolInput:b.input??{},toolResult:{content:S.content,structuredContent:S.structuredContent,_meta:S._meta},autoHeight:V}):void 0})})},b.toolCallId):null}),!F&&te("div",{children:Lt(lr,{children:[k.length>0&&te(Ts,{files:k}),E?I.map((b,S)=>{let P=M&&t==="streaming"&&S===I.length-1;return te($a,{isStreaming:P,children:b.type==="text"?b.text:""},`${h.id}-${S}`)}):null]})})]},h.id)}),g&&te(vi,{})]})}import{jsx as Ei,jsxs as kp}from"react/jsx-runtime";var yp="https://app.waniwani.ai/assets/waniwani-logo.svg",bp="https://waniwani.ai";function Ka(){let{t:e}=H();return kp("a",{href:bp,target:"_blank",rel:"noopener noreferrer",className:"ww:flex ww:items-center ww:gap-1.5 ww:text-[11px] ww:text-muted-foreground ww:opacity-70 hover:ww:opacity-100 ww:transition-opacity",children:[Ei("span",{children:e.poweredBy.label}),Ei("img",{src:yp,alt:"WaniWani",width:72,height:10,"data-waniwani-logo":"",className:"ww:h-2.5 ww:w-auto"})]})}import{jsx as Ja}from"react/jsx-runtime";function Za({suggestions:e,isLoading:t,onSelect:a,className:o,...r}){return e.length===0&&!t?null:Ja("div",{className:A("ww:px-4 ww:py-2",o),...r,children:Ja("div",{className:"ww:mx-auto ww:w-full ww:max-w-3xl ww:flex ww:flex-wrap ww:gap-2",children:t?[0,1,2].map(s=>Ja("div",{className:"ww:h-7 ww:rounded-full ww:bg-accent ww:animate-pulse",style:{width:`${60+s*20}px`}},s)):e.map((s,n)=>Ja("button",{type:"button",onClick:()=>a(s),className:A("ww:rounded-full ww:border ww:border-border ww:bg-background ww:px-3 ww:py-1 ww:text-xs","ww:text-foreground ww:hover:bg-accent ww:hover:border-primary/30","ww:transition-all ww:duration-200 ww:ease-out ww:cursor-pointer","ww:animate-[ww-fade-in_0.2s_ease-out_both]"),style:{animationDelay:`${n*50}ms`},children:s},s))})})}import{useEffect as Tp,useRef as Pp,useState as Ap}from"react";import{jsx as J,jsxs as st}from"react/jsx-runtime";var _i=20;function vp({label:e}){return st("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:[J("title",{children:e}),J("line",{x1:"12",y1:"5",x2:"12",y2:"19"}),J("line",{x1:"5",y1:"12",x2:"19",y2:"12"})]})}function Mp({label:e}){return st("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:[J("title",{children:e}),J("path",{d:"M3 12a9 9 0 1 0 3-6.7"}),J("polyline",{points:"3 4 3 9 8 9"}),J("line",{x1:"12",y1:"7",x2:"12",y2:"12"}),J("line",{x1:"12",y1:"12",x2:"15",y2:"14"})]})}function Rp({label:e}){return st("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:[J("title",{children:e}),J("polyline",{points:"3 6 5 6 21 6"}),J("path",{d:"M19 6l-2 14a2 2 0 0 1-2 2H9a2 2 0 0 1-2-2L5 6"}),J("path",{d:"M10 11v6"}),J("path",{d:"M14 11v6"})]})}function Ya({threads:e,activeThreadId:t,onNewThread:a,onSelectThread:o,onDeleteThread:r}){let{locale:s,t:n}=H(),[i,l]=Ap(!1),u=Pp(null);Tp(()=>{if(!i)return;let p=c=>{let m=u.current;m&&(c.composedPath().includes(m)||l(!1))};return document.addEventListener("mousedown",p),()=>document.removeEventListener("mousedown",p)},[i]);let f=e.slice(0,_i),d=Math.max(0,e.length-_i);return st("div",{ref:u,className:"ww:relative ww:flex ww:items-center ww:gap-1",children:[J("button",{type:"button",onClick:a,title:n.threadMenu.newChat,"aria-label":n.threadMenu.newChat,className:"ww:p-1.5 ww:rounded-md ww:text-muted-foreground hover:ww:text-foreground hover:ww:bg-foreground/5 ww:transition-colors ww:cursor-pointer",children:J(vp,{label:n.threadMenu.newChat})}),J("button",{type:"button",onClick:()=>l(p=>!p),title:n.threadMenu.threadHistory,"aria-label":n.threadMenu.threadHistory,"aria-expanded":i,className:"ww:p-1.5 ww:rounded-md ww:text-muted-foreground hover:ww:text-foreground hover:ww:bg-foreground/5 ww:transition-colors ww:cursor-pointer",children:J(Mp,{label:n.threadMenu.threadHistory})}),i&&st("div",{role:"menu",className:"ww:absolute ww:right-0 ww:top-full ww:mt-1 ww:w-72 ww:max-h-80 ww:overflow-y-auto ww:rounded-lg ww:border ww:border-border ww:bg-background ww:shadow-lg ww:z-50",children:[f.length===0&&J("div",{className:"ww:px-3 ww:py-3 ww:text-xs ww:text-muted-foreground",children:n.threadMenu.noPreviousChats}),f.map(p=>{let c=p.threadId===t,m=Date.parse(p.updatedAt);return st("div",{className:`ww:flex ww:items-center ww:gap-2 ww:px-3 ww:py-2 ww:text-xs hover:ww:bg-foreground/5 ${c?"ww:bg-foreground/5":""}`,children:[st("button",{type:"button",onClick:()=>{o(p.threadId),l(!1)},className:"ww:flex-1 ww:min-w-0 ww:text-left ww:cursor-pointer",children:[J("div",{className:"ww:truncate ww:text-foreground ww:font-medium",children:p.title}),J("div",{className:"ww:text-[10px] ww:text-muted-foreground",children:Number.isNaN(m)?"":yo(m,s)})]}),J("button",{type:"button",onClick:L=>{L.stopPropagation(),r(p.threadId)},title:n.threadMenu.deleteThread,"aria-label":n.threadMenu.deleteThread,className:"ww:p-1 ww:rounded ww:text-muted-foreground hover:ww:text-foreground hover:ww:bg-foreground/10 ww:transition-colors ww:cursor-pointer",children:J(Rp,{label:n.threadMenu.deleteThread})})]},p.threadId)}),d>0&&J("div",{className:"ww:px-3 ww:py-2 ww:text-[10px] ww:text-muted-foreground ww:border-t ww:border-border",children:n.threadMenu.hiddenThreads(d)})]})]})}import{useCallback as Fp,useRef as Bp}from"react";function eo(e){let t=Bp(e);return t.current=e,Fp(async a=>{let{api:o,headers:r,onCallTool:s,sessionId:n}=t.current;if(s)return s(a);let i=`${o??"/api/waniwani"}/tool`,l=typeof n=="string"&&n.trim().length>0?n.trim():void 0,u=await fetch(i,{method:"POST",headers:{"Content-Type":"application/json",...l?{"X-Session-Id":l}:{},...r},body:JSON.stringify(a)});if(!u.ok)throw new Error(`Tool call failed: ${u.status} ${u.statusText}`);return u.json()},[])}import{useChat as Kp}from"@ai-sdk/react";import{useCallback as pe,useEffect as ve,useRef as re,useState as nt}from"react";import{DefaultChatTransport as Dp,uiMessageChunkSchema as Ep}from"ai";function _p(e){let t=e?.cause,a=t?.issues??t?.errors;if(!Array.isArray(a))return null;let o=a.find(r=>r.code==="invalid_union");if(!o?.errors)return null;for(let r of o.errors){if(!Array.isArray(r)||r.some(i=>(i.code==="invalid_value"||i.code==="invalid_literal")&&i.path?.[0]==="type"))continue;let n=r.filter(i=>i.code==="unrecognized_keys").flatMap(i=>i.keys??[]);if(n.length>0)return n}return null}var to=class extends Dp{processResponseStream(t){let a="",o=Ep(),r=o.validate?.bind(o);return t.pipeThrough(new TextDecoderStream).pipeThrough(new TransformStream({async transform(s,n){a+=s;let i=a.split(`
|
|
16
|
+
`);a=i.pop()??"";for(let l of i){let u=l.trim();if(!u.startsWith("data:"))continue;let f=u.slice(5).trim();if(f!=="[DONE]")try{let d=JSON.parse(f);if(!r){n.enqueue(d);continue}let p=await r(d);if(p.success){n.enqueue(p.value);continue}let c=_p(p.error);if(c?.length){let m={...d};for(let x of c)delete m[x];let L=await r(m);L.success&&n.enqueue(L.value)}}catch{}}}}))}};var Np="waniwani-memory";var Te="threads",ao="by_memoryUserId",Op="by_updatedAt";var Oi="memoryUserId",Ni="waniwani-memory-user-id",Lr=null;function Cr(){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 Hp(e,t){if(t<1&&(e.objectStoreNames.contains("ids")||e.createObjectStore("ids")),t<2&&!e.objectStoreNames.contains(Te)){let a=e.createObjectStore(Te,{keyPath:"threadId"});a.createIndex(ao,"memoryUserId",{unique:!1}),a.createIndex(Op,"updatedAt",{unique:!1})}}async function Ir(){return new Promise((e,t)=>{let a=indexedDB.open(Np,2);a.onupgradeneeded=o=>{Hp(a.result,o.oldVersion)},a.onsuccess=()=>e(a.result),a.onerror=()=>t(a.error)})}async function Up(){return Ir()}async function qp(e){return new Promise((t,a)=>{let s=e.transaction("ids","readonly").objectStore("ids").get(Oi);s.onsuccess=()=>t(typeof s.result=="string"?s.result:null),s.onerror=()=>a(s.error)})}async function Gp(e,t){return new Promise((a,o)=>{let n=e.transaction("ids","readwrite").objectStore("ids").put(t,Oi);n.onsuccess=()=>a(),n.onerror=()=>o(n.error)})}async function Wp(){if(typeof indexedDB>"u")return null;try{let e=await Up();try{let t=await qp(e);if(t)return t;let a=Cr();return await Gp(e,a),a}finally{e.close()}}catch{return null}}function zp(){try{let e=localStorage.getItem(Ni);if(e)return e;let t=Cr();return localStorage.setItem(Ni,t),t}catch{return null}}async function Hi(){let e=await Wp();if(e)return e;let t=zp();return t||(Lr||(Lr=Cr()),Lr)}var Ui=50,qi=1e3;function oo(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 ro(e){if(typeof indexedDB>"u")return null;let t=null;try{return t=await Ir(),await e(t)}catch{return null}finally{try{t?.close()}catch{}}}function Sr(e){return new Promise((t,a)=>{e.onsuccess=()=>t(e.result),e.onerror=()=>a(e.error)})}async function yr(e){return await ro(async a=>{let s=a.transaction(Te,"readonly").objectStore(Te).index(ao),i=(await Sr(s.getAll(e))??[]).filter(oo);return i.sort((l,u)=>l.updatedAt<u.updatedAt?1:-1),i})??[]}async function so(e){return await ro(async a=>{let r=a.transaction(Te,"readonly").objectStore(Te),s=await Sr(r.get(e));return oo(s)?s:null})??null}async function br(e){if(!oo(e))return;let t=e.messages.length>qi?{...e,messages:e.messages.slice(e.messages.length-qi)}:e;await ro(async a=>{await new Promise((l,u)=>{let f=a.transaction(Te,"readwrite");f.oncomplete=()=>l(),f.onerror=()=>u(f.error),f.onabort=()=>u(f.error),f.objectStore(Te).put(t)});let o=a.transaction(Te,"readwrite"),r=o.objectStore(Te),s=r.index(ao),i=(await Sr(s.getAll(t.memoryUserId))??[]).filter(oo);if(i.length>Ui){i.sort((u,f)=>u.updatedAt<f.updatedAt?-1:1);let l=i.slice(0,i.length-Ui);for(let u of l)r.delete(u.threadId)}return await new Promise((l,u)=>{o.oncomplete=()=>l(),o.onerror=()=>u(o.error),o.onabort=()=>u(o.error)}),null})}async function Gi(e){await ro(async t=>(await new Promise((a,o)=>{let r=t.transaction(Te,"readwrite");r.oncomplete=()=>a(),r.onerror=()=>o(r.error),r.onabort=()=>o(r.error),r.objectStore(Te).delete(e)}),null))}async function kr(e){return(await yr(e))[0]?.threadId??null}function Wi(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 zi="waniwani-visitor-id";function Vi(e,t){return e.match(t)?.[1]??null}function Vp(e){let t=[["Edge",/Edg(?:e|A|iOS)?\/(\S+)/],["Opera",/(?:OPR|Opera)\/(\S+)/],["Samsung Internet",/SamsungBrowser\/(\S+)/],["Firefox",/Firefox\/(\S+)/],["Chrome",/Chrome\/(\S+)/],["Safari",/Version\/(\S+).*Safari/]];for(let[a,o]of t){let r=Vi(e,o);if(r)return{name:a,version:r}}return null}function jp(e){let t=[["iOS",/(?:iPhone|iPad|iPod).+?OS (\d+[_.\d]*)/],["Android",/Android (\d+[.\d]*)/],["macOS",/Mac OS X (\d+[_.\d]*)/],["Windows",/Windows NT (\d+[.\d]*)/],["ChromeOS",/CrOS \S+ (\d+[.\d]*)/],["Linux",/Linux/]];for(let[a,o]of t){let r=Vi(e,o);if(r)return{name:a,version:r.replace(/_/g,".")};if(a==="Linux"&&o.test(e))return{name:a,version:""}}return null}function $p(e){return typeof navigator<"u"&&"userAgentData"in navigator&&navigator.userAgentData?.mobile?"mobile":/iPad|tablet|PlayBook/i.test(e)?"tablet":/Mobi|Android.*Mobile|iPhone|iPod/i.test(e)?"mobile":"desktop"}async function Xp(e){let t=new TextEncoder().encode(e),a=await crypto.subtle.digest("SHA-256",t);return Array.from(new Uint8Array(a)).map(o=>o.toString(16).padStart(2,"0")).join("")}async function Qp(){try{let a=localStorage.getItem(zi);if(a)return a}catch{}let e=[navigator.userAgent,screen.width,screen.height,screen.colorDepth,Intl.DateTimeFormat().resolvedOptions().timeZone,navigator.language,navigator.hardwareConcurrency??"",navigator.platform??""].join("|"),t=await Xp(e);try{localStorage.setItem(zi,t)}catch{}return t}async function Jt(){let e=navigator.userAgent,[t,a]=await Promise.all([Qp(),Hi()]);return{userAgent:e,browser:Vp(e),os:jp(e),deviceType:$p(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 Jp="x-session-id",Zp=250;function ji(){return typeof crypto<"u"&&typeof crypto.randomUUID=="function"?crypto.randomUUID():Bt()}function no(){return new Date().toISOString()}function $i(e){if(typeof e!="string")return;let t=e.trim();return t.length>0?t:void 0}async function Yp(e,t){let a=`${e.replace(/\/$/,"")}/tools`,o=await fetch(a,{method:"GET",headers:t?{...t}:void 0});if(!o.ok)throw new Error(`[WaniWani] Failed to fetch /tools: ${o.status} ${o.statusText}`);let r=await o.json();if(!r||!Array.isArray(r.tools))return{};let s={};for(let n of r.tools)n&&typeof n.name=="string"&&(s[n.name]=n);return s}function io(e){let{api:t="/api/waniwani",headers:a,body:o,onMessageSent:r,onResponseReceived:s,enableThreadHistory:n=!1,activeThreadId:i,onThreadChange:l}=e,u=re(a),f=re(o),d=re(n);ve(()=>{d.current=n},[n]);let p=re(void 0),c=re(null),[m,L]=nt(void 0),x=re(m),[w,g]=nt(i),h=re(w),[I,T]=nt([]),[k,y]=nt(!n),M=re(void 0),E=re(void 0),F=re(void 0),b=re(void 0),S=re(0),P=re(l);ve(()=>{P.current=l},[l]);let V=pe(C=>{h.current=C,g(C),C&&P.current?.(C)},[]),U=pe(async()=>{if(!n)return;let C=c.current?.memoryUserId;if(!C)return;let B=await yr(C);T(B)},[n]),Ie=pe(()=>x.current,[]),he=pe(C=>{let B=$i(C);B&&x.current!==B&&(x.current=B,L(B))},[]),ge=pe(()=>{x.current=void 0,L(void 0)},[]);ve(()=>{u.current=a},[a]),ve(()=>{f.current=o},[o]),ve(()=>{let C=!1,B=S.current;return(async()=>{try{let Le=await Jt();if(C)return;c.current=Le}catch{}if(!n)return;let _=c.current?.memoryUserId;if(!_){y(!0);return}try{let Le=i??await kr(_);if(C||B!==S.current)return;if(Le){let le=await so(Le);if(C||B!==S.current)return;le&&le.memoryUserId===_&&(h.current=le.threadId,g(le.threadId),M.current=le.createdAt,E.current=le.title,le.sessionId&&(x.current=le.sessionId,L(le.sessionId)),Q(le.messages))}await U()}finally{C||y(!0)}})(),()=>{C=!0}},[]);let $=re(new to({api:t,headers:()=>({...u.current}),body:()=>{let C={...f.current??{}},B=Object.hasOwn(C,"sessionId"),_=$i(C.sessionId);if(_)he(_),C.sessionId=_;else if(B)ge(),delete C.sessionId;else{let Re=Ie();Re&&(C.sessionId=Re)}if(xt(p.current)&&(C.modelContext=p.current),c.current){let Re=c.current;C.visitorContext={timezone:Re.timezone,language:Re.language,languages:Re.languages,deviceType:Re.deviceType,referrer:Re.referrer,visitorId:Re.visitorId};let Oe=typeof C.visitor=="object"&&C.visitor!==null?C.visitor:{},Cl=typeof Oe.client=="object"&&Oe.client!==null?Oe.client:{};C.visitor={...Oe,client:{...Cl,memoryUserId:Re.memoryUserId}}}let Le=typeof C.extra=="object"&&C.extra!==null&&!Array.isArray(C.extra)?C.extra:void 0,le=c.current?.memoryUserId,ae=c.current?.language,oa={};if(le&&(oa.memoryUserId=le),ae&&(oa.locale=ae),(Object.keys(oa).length>0||Le)&&(C.extra={...oa,...Le??{}}),d.current)if(Object.hasOwn(C,"threadId"))typeof C.threadId=="string"&&(h.current=C.threadId);else{let Oe=h.current;Oe||(Oe=ji(),M.current=no(),E.current=void 0,V(Oe)),C.threadId=Oe}return C},fetch:(async(C,B)=>{let _=await fetch(C,B);return p.current=void 0,he(_.headers.get(Jp)),_})})),Z=re(null),we=re(null),ne=re({}),[ie,De]=nt(0),D=e.skipRemoteConfig===!0,X=pe(async()=>{if(!D)try{let C=await Yp(t,u.current);ne.current=C,De(B=>B+1)}catch(C){console.warn("[WaniWani] Failed to fetch tool definitions:",C instanceof Error?C.message:C)}},[t,D]);ve(()=>{X()},[X]);let{messages:G,sendMessage:q,setMessages:Q,status:N}=Kp({messages:e.initialMessages,transport:$.current,onFinish({message:C}){s?.(),Z.current&&(we.current=C)},onError(C){console.warn("[WaniWani] Chat error:",C.message),Z.current&&(Z.current.reject(C),Z.current=null)}}),W=re(G);ve(()=>{W.current=G},[G]);let z=re(n);ve(()=>{if(!n||z.current||(z.current=!0,W.current.length>0))return;let C=!1,B=S.current;return y(!1),(async()=>{try{let _=c.current;if(!_)try{_=await Jt(),c.current=_}catch{}let Le=_?.memoryUserId;if(!Le||C||B!==S.current){C||y(!0);return}let le=i??await kr(Le);if(C||B!==S.current)return;if(le){let ae=await so(le);if(C||B!==S.current)return;ae&&ae.memoryUserId===Le&&(h.current=ae.threadId,g(ae.threadId),M.current=ae.createdAt,E.current=ae.title,ae.sessionId&&(x.current=ae.sessionId,L(ae.sessionId)),Q(ae.messages))}await U()}finally{C||y(!0)}})(),()=>{C=!0}},[n]),ve(()=>{if(N==="ready"&&Z.current&&we.current){let C=Z.current,B=we.current;Z.current=null,we.current=null,C.resolve(B)}},[N]);let[v,R]=nt(""),[O,Y]=nt([]),xe=N==="submitted"||N==="streaming",Me=pe(C=>{Y(B=>B.filter(_=>_.id!==C))},[]),We=xe&&O.length>0,cl=pe(C=>{let B=!!C.text?.trim(),_=!!C.files?.length;if(B||_){if(xe){if(O.length>0)return;Y(Le=>[...Le,{id:Bt(),text:C.text||"",files:C.files??[],modelContext:C.modelContext}]),R("");return}p.current=C.modelContext,q({text:C.text||"",files:C.files}),r?.(C.text||""),R("")}},[q,r,xe,O.length]),pl=pe(C=>new Promise((B,_)=>{Z.current={resolve:B,reject:_},q({text:C}),r?.(C)}),[q,r]);ve(()=>{if(N!=="ready"||O.length===0)return;let[C,...B]=O;Y(B),p.current=C.modelContext,q({text:C.text,files:C.files.length>0?C.files:void 0}),r?.(C.text)},[N,q,r,O]);let ml=pe(()=>{Q([]),Y([]),ge(),R(""),ne.current={},De(C=>C+1),X()},[Q,ge,X]),ta=pe(()=>{if(!d.current)return;let C=c.current?.memoryUserId,B=h.current,_=W.current;if(!(!C||!B||_.length===0)){if(M.current||(M.current=no()),!E.current){let Le=_.find(ae=>ae.role==="user"),le=Le?Le.parts.map(ae=>"text"in ae&&typeof ae.text=="string"?ae.text:"").join(" "):"";E.current=Wi(le)}return{threadId:B,memoryUserId:C,title:E.current,messages:_,sessionId:x.current,createdAt:M.current,updatedAt:no()}}},[]),Dr=pe(async()=>{let C=ta();C&&(await br(C),await U())},[ta,U]);ve(()=>{if(n&&k&&!(N==="submitted"||N==="streaming")&&G.length!==0)return F.current&&clearTimeout(F.current),F.current=setTimeout(()=>{F.current=void 0;let C=Dr().finally(()=>{b.current===C&&(b.current=void 0)});b.current=C},Zp),()=>{F.current&&clearTimeout(F.current)}},[n,k,G,N,Dr]);let aa=pe(()=>{let C=b.current,B=F.current,_=B?ta():void 0;return B&&(clearTimeout(B),F.current=void 0),(async()=>{C&&await C,_&&(await br(_),await U())})()},[ta,U]),hl=pe(()=>{S.current+=1,aa(),Q([]),Y([]),ge(),R("");let C=ji();return M.current=no(),E.current=void 0,V(C),U(),C},[Q,ge,V,U,aa]),po=pe(async C=>{S.current+=1;let B=S.current;if(await aa(),B!==S.current)return;let _=await so(C);B===S.current&&_&&(V(_.threadId),M.current=_.createdAt,E.current=_.title,_.sessionId?(x.current=_.sessionId,L(_.sessionId)):ge(),Q(_.messages),Y([]),R(""))},[Q,ge,V,aa]),gl=pe(async C=>{if(h.current===C){S.current+=1,F.current&&(clearTimeout(F.current),F.current=void 0);let B=b.current;B&&await B}await Gi(C),await U(),h.current===C&&(Q([]),Y([]),ge(),R(""),h.current=void 0,g(void 0),M.current=void 0,E.current=void 0)},[Q,ge,U]);ve(()=>{n&&k&&i!==void 0&&i!==h.current&&po(i)},[i,n,k,po]);let wl=pe(C=>{R(C.target.value)},[]),Er=G[G.length-1],_r=G.length>0,xl=xe&&(!_r||Er.role==="user"),Ll=ne.current;return{messages:G,status:N,text:v,setText:R,handleSubmit:cl,handleTextChange:wl,isLoading:xe,showLoaderBubble:xl,lastMessage:Er,hasMessages:_r,sendMessage:q,sendMessageAndWait:pl,reset:ml,queuedMessages:O,queueFull:We,removeQueuedMessage:Me,sessionId:m,toolDefinitions:Ll,refreshToolDefinitions:X,threads:I,activeThreadId:w,isThreadHistoryReady:k,startNewThread:hl,switchThread:po,deleteThread:gl}}import{useEffect as Xi,useRef as em,useState as tm}from"react";var am={debug:!1,eval:!1};function Qi(e="/api/waniwani",t,a=!1){let[o,r]=tm(am),s=em(t);return Xi(()=>{s.current=t},[t]),Xi(()=>{a||(async()=>{try{let n=s.current,l=await(await fetch(`${e}/config`,{headers:n?{...n}:void 0})).json();r({debug:l.debug===!0,eval:l.eval===!0})}catch{}})()},[e,a]),o}import{useCallback as om,useEffect as Tr,useRef as rm,useState as sm}from"react";function nm(e){for(let t of e.parts){let a=t;if(a.type==="data"||a.type==="data-suggestions"){let o=a.data;if(o&&Array.isArray(o.suggestions))return o.suggestions}}return null}function Ki(e){return typeof e=="object"&&e!==null&&"initial"in e}function lo(e){let{messages:t,status:a,config:o}=e,r=Ki(o)&&o.initial?o.initial:void 0,[s,n]=sm(r??[]),i=rm(a),l=o===!0||Ki(o)&&o.dynamic!==!1,u=om(()=>{n([])},[]),f=t.length>0;Tr(()=>{!f&&r&&r.length>0&&n(r)},[r,f]);let d=t[t.length-1];return Tr(()=>{d?.role==="user"&&u()},[d,u]),Tr(()=>{let p=i.current;if(i.current=a,p==="streaming"&&a==="ready"&&l){let c=[...t].reverse().find(L=>L.role==="assistant");if(!c)return;let m=nm(c);m&&n(m)}},[a,l,t]),{suggestions:s,isLoading:!1,clear:u}}import{useEffect as im,useRef as lm,useState as um}from"react";var dm=50,fm=30,cm=2e3,Ji=500;function uo(e,t=!0){let[a,o]=um(""),r=lm(void 0);return im(()=>{if(!t){o("");return}let s=0,n=!1,i=!1,l=()=>{i||(n?(s--,o(e.slice(0,s)),s<=0?(n=!1,r.current=setTimeout(l,Ji)):r.current=setTimeout(l,fm)):(s++,o(e.slice(0,s)),s>=e.length?(n=!0,r.current=setTimeout(l,cm)):r.current=setTimeout(l,dm)))};return r.current=setTimeout(l,Ji),()=>{i=!0,clearTimeout(r.current)}},[e,t]),a}function fo(e,t){let a=t?.Authorization,o=typeof a=="string"&&a.startsWith("Bearer ")?a.slice(7):null;return o?`${e}/resource?token=${encodeURIComponent(o)}`:`${e}/resource`}var Zi={primaryColor:"#6366f1",primaryForeground:"#1f2937",backgroundColor:"#ffffff",textColor:"#1f2937",mutedColor:"#6b7280",borderColor:"#e5e7eb",borderWidth:0,boxShadow:"none",assistantBubbleColor:"#f3f4f6",userBubbleColor:"#f4f4f4",inputBackgroundColor:"#f9fafb",borderRadius:16,messageBorderRadius:12,fontFamily:"system-ui, -apple-system, 'Segoe UI', sans-serif",headerBackgroundColor:"#ffffff",headerTextColor:"#1f2937",statusColor:"#22c55e",toolCardColor:"#f4f4f5"},pm={backgroundColor:"#212121",headerBackgroundColor:"#1e1e1e",headerTextColor:"#ececec",textColor:"#ececec",primaryForeground:"#ffffff",mutedColor:"#8e8ea0",borderColor:"#444444",assistantBubbleColor:"#2f2f2f",userBubbleColor:"#303030",inputBackgroundColor:"#2f2f2f",primaryColor:"#6366f1",statusColor:"#22c55e",toolCardColor:"#262626"},mm={primaryColor:["--ww-primary","--ww-color-primary"],primaryForeground:["--ww-primary-fg","--ww-color-primary-foreground"],backgroundColor:["--ww-bg","--ww-color-background"],textColor:["--ww-text","--ww-color-foreground","--ww-color-accent-foreground"],mutedColor:["--ww-muted","--ww-color-muted-foreground"],borderColor:["--ww-border","--ww-color-border"],borderWidth:["--ww-border-width"],boxShadow:["--ww-shadow"],assistantBubbleColor:["--ww-assistant-bubble","--ww-color-accent"],userBubbleColor:["--ww-user-bubble"],inputBackgroundColor:["--ww-input-bg","--ww-color-input"],borderRadius:["--ww-radius"],messageBorderRadius:["--ww-msg-radius"],fontFamily:["--ww-font"],headerBackgroundColor:["--ww-header-bg"],headerTextColor:["--ww-header-text"],statusColor:["--ww-status"],toolCardColor:["--ww-tool-card","--ww-color-tool-card"]};function Pr(e){return{...Zi,...e}}function Zt(e){let t={};for(let[a,o]of Object.entries(mm)){let r=e[a];if(r===void 0)continue;let s=typeof r=="number"?`${r}px`:String(r);for(let n of o)t[n]=s}return t}import{jsx as me,jsxs as Yt}from"react/jsx-runtime";var xm=hm(function(t,a){let{theme:o,title:r="Assistant",width:s,height:n,className:i,allowAttachments:l=!1,welcomeMessage:u,welcome:f,placeholder:d="Ask me anything...",triggerEvent:p="triggerDemoRequest",api:c,debug:m,enableThreadHistory:L=!1,showToolCalls:x=!0}=t,w=c??"/api/waniwani",g=fo(w,t.headers),h=Pr(o),I=Zt(h),T=h.backgroundColor.replace("#",""),k=parseInt(T.substring(0,2),16),y=parseInt(T.substring(2,4),16),M=parseInt(T.substring(4,6),16),E=(k*299+y*587+M*114)/1e3<128,F=Qi(w,t.headers,t.skipRemoteConfig),b=m??F.debug,S=io({...t,api:w}),P=eo({...t,api:w,sessionId:S.sessionId}),V=uo(d,!S.text),[U,Ie]=el(!1),[he,ge]=el(null),$=Yi(null),Z=Yi(void 0),we=Ar(()=>{let D=$.current;if(!D)return;D.scrollIntoView({behavior:"smooth",block:"center"});let X=D.querySelector("textarea");X&&setTimeout(()=>X.focus(),300),Ie(!0),clearTimeout(Z.current),Z.current=setTimeout(()=>Ie(!1),2e3)},[]),ne=lo({messages:S.messages,status:S.status,config:t.suggestions}),ie=Ar(D=>{let X=D.content.map(G=>G.text??"").join("").trim();X&&S.handleSubmit({text:X,files:[],modelContext:D.modelContext})},[S.handleSubmit]),De=Ar(D=>{ne.clear(),S.handleSubmit({text:D,files:[]})},[ne.clear,S.handleSubmit]);return wm(a,()=>({sendMessage:D=>{S.handleSubmit({text:D,files:[]}),we()},sendMessageAndWait:D=>S.sendMessageAndWait(D),reset:S.reset,focus:we,get messages(){return S.messages},get sessionId(){return S.sessionId}}),[S.handleSubmit,S.sendMessageAndWait,S.reset,S.messages,S.sessionId,we]),gm(()=>{if(!p)return;let D=X=>{let G=X.detail,q=typeof G?.message=="string"?G.message:void 0;q&&S.handleSubmit({text:q,files:[]}),we()};return window.addEventListener(p,D),()=>window.removeEventListener(p,D)},[p,S.handleSubmit,we]),Yt("div",{ref:$,style:{...I,width:s,height:n},"data-waniwani-chat":"","data-waniwani-layout":"card",...E?{"data-waniwani-dark":""}:{},className:A("ww:flex ww:flex-col ww:font-[family-name:var(--ww-font)] ww:text-foreground ww:bg-background ww:rounded-[var(--ww-radius)] ww:overflow-hidden",U&&"ww:ring-2 ww:ring-blue-400/70 ww:ring-offset-2 ww:ring-offset-background",i),children:[Yt("div",{className:"ww:shrink-0 ww:flex ww:items-center ww:gap-2 ww:px-6 ww:py-3",style:{backgroundColor:h.headerBackgroundColor,color:h.headerTextColor},children:[me("div",{className:"ww:text-sm ww:font-semibold ww:truncate ww:flex-1 ww:min-w-0",children:r}),me(ks,{messages:S.messages,evalEnabled:F.eval,api:w}),L&&me(Ya,{threads:S.threads,activeThreadId:S.activeThreadId,onNewThread:S.startNewThread,onSelectThread:D=>{S.switchThread(D)},onDeleteThread:D=>{S.deleteThread(D)}})]}),Yt(as,{className:"ww:flex-1 ww:min-h-0 ww:bg-background",children:[me(os,{scrollClassName:he?"ww:!relative ww:!overflow-hidden":void 0,children:me(Qa,{messages:S.messages,status:S.status,welcomeMessage:u,welcome:f,onSuggestionSelect:De,resourceEndpoint:g,chatSessionId:S.sessionId,isDark:E,onFollowUp:ie,onCallTool:P,fullscreenToolCallId:he,debug:b,showToolCalls:x,toolDefinitions:S.toolDefinitions,onWidgetDisplayModeChange:(D,X)=>{ge(D==="fullscreen"?X.toolCallId:null)}})}),me(rs,{})]}),me("div",{style:he?{display:"none"}:void 0,children:me(Za,{suggestions:ne.suggestions,isLoading:ne.isLoading,onSelect:De})}),me("div",{style:he?{display:"none"}:void 0,children:me(ma,{queuedMessages:S.queuedMessages,onRemove:S.removeQueuedMessage})}),me("div",{style:he?{display:"none"}:void 0,children:me("div",{className:"ww:shrink-0 ww:px-4 ww:pb-8 ww:pt-2 ww:bg-background",children:Yt("div",{className:"ww:mx-auto ww:w-full ww:max-w-3xl",children:[me(da,{onSubmit:S.handleSubmit,globalDrop:l,multiple:l,className:"ww:rounded-2xl ww:border-border ww:bg-input",children:Yt("div",{className:"ww:flex ww:items-center ww:gap-1 ww:pl-4 ww:pr-3 ww:py-2.5",children:[l&&me(pa,{}),me(fa,{onChange:S.handleTextChange,value:S.text,placeholder:V,className:"ww:min-h-0 ww:py-1 ww:px-0"}),me(ca,{status:S.status,disabled:S.queueFull})]})}),me(Ka,{})]})})})]})});import{forwardRef as al,useCallback as co,useEffect as Ct,useImperativeHandle as Cm,useRef as ea,useState as vr}from"react";import{jsx as Lm}from"react/jsx-runtime";function tl({text:e}){let{t}=H();return e===!1?null:Lm("span",{className:"ww:text-[11px] ww:text-muted-foreground ww:opacity-70",children:e||t.aiDisclaimer.default})}import{jsx as se,jsxs as Qe}from"react/jsx-runtime";var Mr=al(function(t,a){let{locale:o,messages:r}=t;return se(So,{locale:o,messages:r,children:se(Im,{...t,ref:a})})}),Im=al(function(t,a){let{t:o,ready:r}=H(),{appearance:s,className:n,allowAttachments:i=!1,welcomeMessage:l,welcome:u,placeholder:f=o.promptInput.placeholder,triggerEvent:d="triggerDemoRequest",api:p,mcp:c,debug:m=!1,readOnly:L=!1,title:x,headerActions:w,hideHeader:g=!1,enableThreadHistory:h=!1,showToolCalls:I=!0,initializing:T=!1,disclaimer:k}=t,y=s?.theme,M=s?.variables,E=M?Zt(M):{},[F,b]=vr(!1);Ct(()=>{if(y!=="auto"||typeof window>"u")return;let v=window.matchMedia("(prefers-color-scheme: dark)");b(v.matches);let R=()=>b(v.matches);return v.addEventListener("change",R),()=>v.removeEventListener("change",R)},[y]);let S=y==="dark"||y==="auto"&&F,P=io({...t,api:p}),V=eo({...t,api:p,sessionId:P.sessionId,onCallTool:c?.onCallTool}),U=c?.resourceEndpoint??fo(p,t.headers),Ie=uo(f,!P.text),[he,ge]=vr(null),$=ea(null),Z=ea(null),we=ea(null),ne=ea(null),[ie,De]=vr(!0),D=ea(ie);D.current=ie;let X=co(()=>{let v=$.current;if(!v)return;let R=v.querySelector("textarea");R&&R.focus()},[]),G=co((v="smooth")=>{let R=Z.current;R&&R.scrollTo({top:R.scrollHeight,behavior:v})},[]);Ct(()=>{let v=ne.current,R=Z.current;if(!v||!R)return;let O=new IntersectionObserver(([Y])=>De(Y.isIntersecting),{root:R,rootMargin:"0px 0px 200px 0px",threshold:0});return O.observe(v),()=>O.disconnect()},[]),Ct(()=>{(P.messages[P.messages.length-1]?.role==="user"||D.current)&&G("smooth")},[P.messages.length,P.messages[P.messages.length-1]]),Ct(()=>{G("auto")},[G]),Ct(()=>{if(typeof ResizeObserver>"u")return;let v=Z.current,R=we.current;if(!v&&!R)return;let O=v?.scrollHeight??0,Y=v?.clientHeight??0,xe=new ResizeObserver(()=>{let Me=Z.current;if(!Me)return;let We=Me.scrollTop+Y>=O-5;O=Me.scrollHeight,Y=Me.clientHeight,We&&G("auto")});return v&&xe.observe(v),R&&xe.observe(R),()=>xe.disconnect()},[G]);let q=lo({messages:P.messages,status:P.status,config:t.suggestions}),Q=co(v=>{let R=v.content.map(O=>O.text??"").join("").trim();R&&P.handleSubmit({text:R,files:[],modelContext:v.modelContext})},[P.handleSubmit]),N=co(v=>{q.clear(),P.handleSubmit({text:v,files:[]})},[q.clear,P.handleSubmit]);Cm(a,()=>({sendMessage:v=>{P.handleSubmit({text:v,files:[]}),X()},sendMessageAndWait:v=>P.sendMessageAndWait(v),reset:P.reset,focus:X,get messages(){return P.messages},get sessionId(){return P.sessionId}}),[P.handleSubmit,P.sendMessageAndWait,P.reset,P.messages,P.sessionId,X]),Ct(()=>{if(!d)return;let v=R=>{let O=R.detail,Y=typeof O?.message=="string"?O.message:void 0;Y&&P.handleSubmit({text:Y,files:[]}),X()};return window.addEventListener(d,v),()=>window.removeEventListener(d,v)},[d,P.handleSubmit,X]);let W=!g&&!!(x||h||w),z=T||!r;return Qe("div",{ref:$,style:{...E,maxHeight:"inherit",opacity:z?0:1,transition:"opacity 220ms ease-out"},"data-waniwani-chat":"","data-waniwani-layout":"embed","data-color-scheme":y==="auto"?"auto":void 0,...z?{"data-waniwani-initializing":""}:{},...S?{"data-waniwani-dark":""}:{},className:A("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",y==="dark"&&"dark",n),children:[W&&Qe("div",{className:"ww:shrink-0 ww:flex ww:items-center ww:gap-2 ww:pl-4 ww:pr-3 ww:py-3 ww:border-b ww:border-border",style:{backgroundColor:"var(--ww-color-card-header)",color:"var(--ww-color-card-header-foreground)"},children:[x&&se("div",{className:"ww:text-sm ww:font-semibold ww:truncate ww:flex-1 ww:min-w-0",children:x}),!x&&se("div",{className:"ww:flex-1"}),h&&se(Ya,{threads:P.threads,activeThreadId:P.activeThreadId,onNewThread:P.startNewThread,onSelectThread:v=>{P.switchThread(v)},onDeleteThread:v=>{P.deleteThread(v)}}),w]}),Qe("div",{ref:Z,className:A("ww:relative ww:flex-1 ww:min-h-0",he?"ww:overflow-hidden":"ww:overflow-y-auto"),children:[Qe("div",{ref:we,className:A("ww:mx-auto ww:w-full ww:max-w-3xl ww:px-4 ww:py-6 ww:flex ww:flex-col ww:gap-6",he&&"ww:!py-0"),children:[se(Qa,{messages:P.messages,status:P.status,welcomeMessage:l,welcome:u,onSuggestionSelect:N,resourceEndpoint:U,chatSessionId:P.sessionId,isDark:S,onFollowUp:Q,onCallTool:V,fullscreenToolCallId:he,debug:m,showToolCalls:I,toolDefinitions:P.toolDefinitions,onWidgetDisplayModeChange:(v,R)=>{ge(v==="fullscreen"?R.toolCallId:null)}}),se("div",{ref:ne,"aria-hidden":!0,style:{height:1}})]}),!ie&&!he&&se("div",{className:"ww:sticky ww:bottom-2 ww:flex ww:justify-center ww:pointer-events-none",children:se(Pe,{type:"button",onClick:()=>G("smooth"),size:"icon",variant:"outline",className:"ww:rounded-full ww:shadow ww:pointer-events-auto","aria-label":"Scroll to latest",children:se(Ke,{className:"ww:size-4"})})})]}),!L&&Qe("div",{className:"ww:shrink-0 ww:bg-background",style:he?{display:"none"}:void 0,children:[se(Za,{suggestions:q.suggestions,isLoading:q.isLoading,onSelect:N}),se(ma,{queuedMessages:P.queuedMessages,onRemove:P.removeQueuedMessage}),se("div",{className:"ww:px-4 ww:pb-2 ww:pt-2",children:Qe("div",{className:"ww:mx-auto ww:w-full ww:max-w-3xl",children:[se(da,{onSubmit:P.handleSubmit,globalDrop:i,multiple:i,className:"ww:rounded-2xl ww:border-border ww:bg-input",children:Qe("div",{className:"ww:flex ww:items-center ww:gap-1 ww:pl-4 ww:pr-3 ww:py-2.5",children:[i&&se(pa,{}),se(fa,{onChange:P.handleTextChange,value:P.text,placeholder:Ie,className:"ww:min-h-0 ww:py-1 ww:px-0"}),se(ca,{status:P.status,disabled:P.queueFull})]})}),Qe("div",{className:"ww:pt-2 ww:pb-1 ww:flex ww:justify-center ww:items-center ww:gap-1.5",children:[se(Ka,{}),se(tl,{text:k})]})]})})]})]})});import{forwardRef as Rm,useEffect as ll,useMemo as ul,useState as dl}from"react";var Sm="https://app.waniwani.ai/api/mcp/chat",ym={api:Sm};function bm(){if(typeof document>"u")return null;if(document.currentScript instanceof HTMLScriptElement)return document.currentScript;let e=document.querySelectorAll("script[src]");for(let t of e)if(t instanceof HTMLScriptElement&&/embed/i.test(t.src))return t;return null}function km(){let e=bm();if(!e)return{};let t=y=>e.getAttribute(y)??void 0,a=y=>{let M=e.getAttribute(y);if(M==null)return;let E=M.trim().toLowerCase();if(E==="true"||E==="1"||E==="")return!0;if(E==="false"||E==="0")return!1},o={},r=t("data-api");r&&(o.api=r);let s=t("data-token");s&&(o.token=s);let n=t("data-title");n&&(o.title=n);let i=t("data-welcome-message");i&&(o.welcomeMessage=i);let l=t("data-placeholder");l&&(o.placeholder=l);let u=t("data-mcp-server-url");u&&(o.mcpServerUrl=u);let f=t("data-channel-id");if(f&&(o.channelId=f),t("data-show-tool-calls")?.trim().toLowerCase()==="titles-only")o.showToolCalls="titles-only";else{let y=a("data-show-tool-calls");y!==void 0&&(o.showToolCalls=y)}let p=t("data-css");p&&(o.css=p);let c=t("data-suggestions");c&&(o.suggestions=c.split(",").map(y=>y.trim()).filter(Boolean));let m=a("data-enable-thread-history");m!==void 0&&(o.enableThreadHistory=m);let L=a("data-hide-header");L!==void 0&&(o.hideHeader=L);let x=t("data-theme");(x==="light"||x==="dark"||x==="auto")&&(o.appearance={theme:x});let w=t("data-locale");(w==="en"||w==="fr"||w==="es")&&(o.locale=w);let g=t("data-mode");(g==="inline"||g==="floating")&&(o.mode=g);let h=t("data-position");(h==="bottom-center"||h==="bottom-right"||h==="bottom-left")&&(o.position=h);let I=t("data-height");I&&(o.height=I);let T=t("data-launcher-text");T&&(o.launcherText=T);let k=t("data-disclaimer");if(k!==void 0){let y=k.trim(),M=y.toLowerCase();M==="false"||M==="0"?o.disclaimer=!1:y&&(o.disclaimer=y)}return o}function Rr(e){if(!e)return{};let t={};for(let a in e)e[a]!==void 0&&(t[a]=e[a]);return t}function Fr(e,t,a){let o=a??km(),r=Tm(t,o,e),s={token:"",...ym,...Rr(t),...Rr(o),...Rr(e),...r?{appearance:r}:{}};if(!s.token)throw new Error("[WaniWani] Missing required config: `token`. Set data-token on the script tag or pass it to WaniWani.chat.init().");return s}function Tm(e,t,a){let o=a?.appearance?.theme??t.appearance?.theme??e?.appearance?.theme,r={...e?.appearance?.variables??{},...t.appearance?.variables??{},...a?.appearance?.variables??{}},s=Object.keys(r).length>0;if(!o&&!s)return;let n={};return o&&(n.theme=o),s&&(n.variables=r),n}import{useEffect as GS,useState as WS}from"react";var Pm="waniwani:config:";function ol(e,t,a){return`${Pm}${e}|${t}|${a??""}`}function rl(e,t,a){if(typeof window>"u")return null;try{let o=window.sessionStorage.getItem(ol(e,t,a));if(!o)return null;let r=JSON.parse(o);return r&&typeof r=="object"?r:null}catch{return null}}function sl(e,t,a,o){if(!(typeof window>"u"))try{window.sessionStorage.setItem(ol(e,t,a),JSON.stringify(o))}catch{}}async function nl(e,t,a,o){try{let r=`${e.replace(/\/$/,"")}/config`,s=o?`${r}?channel=${encodeURIComponent(o)}`:r,n=await fetch(s,{method:"GET",headers:{Authorization:`Bearer ${t}`},signal:a});if(!n.ok)return{};let i=await n.json(),l=i&&typeof i=="object"&&"data"in i&&i.data?i.data:i;return l?Am(l):{}}catch{return{}}}function Am(e){let t={};return e.title!=null&&(t.title=e.title),e.welcomeMessage!=null&&(t.welcomeMessage=e.welcomeMessage),e.placeholder!=null&&(t.placeholder=e.placeholder),e.suggestions!=null&&e.suggestions.length>0&&(t.suggestions=e.suggestions),typeof e.enableThreadHistory=="boolean"&&(t.enableThreadHistory=e.enableThreadHistory),e.toolCallDisplay==="full"?t.showToolCalls=!0:e.toolCallDisplay==="titles-only"?t.showToolCalls="titles-only":e.toolCallDisplay==="hidden"&&(t.showToolCalls=!1),t}var Br=new Set;function vm(e,t,a){return`${e}|${t}|${a??""}`}function Mm(e){try{return`${new URL(e).origin}/api/mcp/events/v2/batch`}catch{return e.replace(/\/$/,"").replace(/\/chat$/,"/events/v2/batch")}}async function il(e){let{api:t,token:a,channelId:o,mode:r}=e;if(typeof window>"u"||!t||!a)return;let s=vm(t,a,o);if(!Br.has(s)){Br.add(s);try{let n=await Jt(),i=new Date().toISOString(),l=JSON.stringify({sentAt:i,source:{sdk:"@waniwani/sdk",version:"0.1.0"},events:[{id:crypto.randomUUID(),type:"mcp.event",name:"page.viewed",source:"widget",timestamp:i,correlation:{externalUserId:n.visitorId},properties:{channelId:o,mode:r,url:window.location.href,referrer:n.referrer,deviceType:n.deviceType,language:n.language,timezone:n.timezone},metadata:{}}]});await fetch(Mm(t),{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${a}`},body:l,keepalive:!0})}catch{Br.delete(s)}}}import{jsx as Dm}from"react/jsx-runtime";var Fm=600,fl="https://app.waniwani.ai/api/mcp/chat",Bm=Rm(function(t,a){let{token:o,channelId:r,className:s,overrides:n}=t,i=ul(()=>({token:o,channelId:r,api:n?.api,mcpServerUrl:n?.mcpServerUrl,title:n?.title,hideHeader:n?.hideHeader,welcomeMessage:n?.welcomeMessage,placeholder:n?.placeholder,suggestions:n?.suggestions,enableThreadHistory:n?.enableThreadHistory,showToolCalls:n?.showToolCalls,appearance:n?.appearance,disclaimer:n?.disclaimer,locale:n?.locale}),[o,r,n?.api,n?.mcpServerUrl,n?.title,n?.hideHeader,n?.welcomeMessage,n?.placeholder,n?.suggestions,n?.enableThreadHistory,n?.showToolCalls,n?.appearance,n?.disclaimer,n?.locale]),l=n?.api??fl,[u,f]=dl({}),[d,p]=dl(!1);ll(()=>{if(!o){p(!0);return}let L=rl(l,o,r);L&&(f(L),p(!0));let x=new AbortController,w=setTimeout(()=>p(!0),Fm);return nl(l,o,x.signal,r).then(g=>{x.signal.aborted||(Object.keys(g).length>0&&(sl(l,o,r,g),f(g)),p(!0))}).catch(g=>{console.error("[WaniWani] Remote config fetch failed:",g),p(!0)}).finally(()=>clearTimeout(w)),()=>{x.abort(),clearTimeout(w)}},[l,o,r]),ll(()=>{o&&il({api:l,token:o,channelId:r,mode:"inline"})},[l,o,r]);let c=ul(()=>Fr(i,u,void 0),[i,u]),m={};return c.mcpServerUrl&&(m.mcpServerUrl=c.mcpServerUrl),c.channelId&&(m.channelId=c.channelId),Dm(Mr,{ref:a,api:c.api??fl,headers:{Authorization:`Bearer ${c.token}`},skipRemoteConfig:!0,body:Object.keys(m).length>0?m:void 0,appearance:c.appearance,title:c.title,hideHeader:c.hideHeader,welcomeMessage:c.welcomeMessage,welcome:n?.welcome,placeholder:c.placeholder,suggestions:c.suggestions?{initial:c.suggestions}:void 0,enableThreadHistory:c.enableThreadHistory,showToolCalls:c.showToolCalls,disclaimer:c.disclaimer,allowAttachments:n?.allowAttachments,locale:c.locale,messages:n?.messages,className:s,initializing:!d})});export{xm as ChatCard,Mr as ChatEmbed,pm as DARK_THEME,Zi as DEFAULT_THEME,wr as McpAppFrame,Bm as WaniwaniChat,Pr as mergeTheme,Zt as themeToCSSProperties};
|
|
17
17
|
/*! Bundled license information:
|
|
18
18
|
|
|
19
19
|
lucide-react/dist/esm/shared/src/utils/mergeClasses.js:
|