@waniwani/sdk 0.11.19 → 0.11.20
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 +15 -15
- package/dist/chat/embed.js.map +1 -1
- package/dist/chat/index.js +5 -5
- package/dist/chat/index.js.map +1 -1
- package/dist/legacy/index.js +5 -5
- package/dist/legacy/index.js.map +1 -1
- package/package.json +1 -1
package/dist/chat/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import{a as mr,b as hr,c as gr,d as ot,e as rt,f as $t,g as wr,h as xr,i as Lr,j as Cr,k as Xt,l as Ir,m as oo,n as Sr,o as yr,p as st,u as ro}from"../chunk-5JBHQYU5.js";import"../chunk-V3ZDECK5.js";import{forwardRef as Xc,useCallback as ir,useEffect as Qc,useImperativeHandle as Kc,useRef as wi,useState as xi}from"react";import{forwardRef as Bi,createElement as Di}from"react";var Qt=(...e)=>e.filter((t,a,o)=>!!t&&t.trim()!==""&&o.indexOf(t)===a).join(" ").trim();var kr=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();var br=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(t,a,o)=>o?o.toUpperCase():a.toLowerCase());var so=e=>{let t=br(e);return t.charAt(0).toUpperCase()+t.slice(1)};import{forwardRef as Fi,createElement as Ar}from"react";var Tr={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 Pr=e=>{for(let t in e)if(t.startsWith("aria-")||t==="role"||t==="title")return!0;return!1};var vr=Fi(({color:e="currentColor",size:t=24,strokeWidth:a=2,absoluteStrokeWidth:o,className:r="",children:s,iconNode:n,...i},l)=>Ar("svg",{ref:l,...Tr,width:t,height:t,stroke:e,strokeWidth:o?Number(a)*24/Number(t):a,className:Qt("lucide",r),...!s&&!Pr(i)&&{"aria-hidden":"true"},...i},[...n.map(([u,f])=>Ar(u,f)),...Array.isArray(s)?s:[s]]));var Q=(e,t)=>{let a=Bi(({className:o,...r},s)=>Di(vr,{ref:s,iconNode:t,className:Qt(`lucide-${kr(so(e))}`,`lucide-${e}`,o),...r}));return a.displayName=so(e),a};var Ei=[["path",{d:"M12 5v14",key:"s699le"}],["path",{d:"m19 12-7 7-7-7",key:"1idqje"}]],ze=Q("arrow-down",Ei);var _i=[["path",{d:"m5 12 7-7 7 7",key:"hav0vg"}],["path",{d:"M12 19V5",key:"x0mq9r"}]],pt=Q("arrow-up",_i);var Ni=[["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"}]],Oe=Q("braces",Ni);var Oi=[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]],mt=Q("check",Oi);var Ui=[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]],ht=Q("chevron-down",Ui);var Hi=[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]],gt=Q("chevron-right",Hi);var qi=[["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"}]],wt=Q("clipboard-copy",qi);var Gi=[["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"}]],xt=Q("file",Gi);var Wi=[["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"}]],Lt=Q("loader",Wi);var zi=[["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"}]],Ct=Q("paperclip",zi);var ji=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}]],It=Q("square",ji);var Vi=[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]],je=Q("x",Vi);import{useCallback as ul}from"react";import{useCallback as Ue,useMemo as $i,useRef as Xi,useState as no}from"react";var Qi={damping:.7,stiffness:.05,mass:1.25},Ki=70,Ji=1e3/60,Zi=350,Kt=!1;globalThis.document?.addEventListener("mousedown",()=>{Kt=!0});globalThis.document?.addEventListener("mouseup",()=>{Kt=!1});globalThis.document?.addEventListener("click",()=>{Kt=!1});var Rr=(e={})=>{let[t,a]=no(!1),[o,r]=no(e.initial!==!1),[s,n]=no(!1),i=Xi(null);i.current=e;let l=Ue(()=>{if(!Kt)return!1;let g=window.getSelection();if(!g||!g.rangeCount)return!1;let h=g.getRangeAt(0);return h.commonAncestorContainer.contains(C.current)||C.current?.contains(h.commonAncestorContainer)},[]),u=Ue(g=>{d.isAtBottom=g,r(g)},[]),f=Ue(g=>{d.escapedFromLock=g,a(g)},[]),d=$i(()=>{let g;return{escapedFromLock:t,isAtBottom:o,resizeDifference:0,accumulated:0,velocity:0,listeners:new Set,get scrollTop(){return C.current?.scrollTop??0},set scrollTop(h){C.current&&(C.current.scrollTop=h,d.ignoreScrollToTop=C.current.scrollTop)},get targetScrollTop(){return!C.current||!x.current?0:C.current.scrollHeight-1-C.current.clientHeight},get calculatedTargetScrollTop(){if(!C.current||!x.current)return 0;let{targetScrollTop:h}=this;if(!e.targetScrollTop)return h;if(g?.targetScrollTop===h)return g.calculatedScrollTop;let L=Math.max(Math.min(e.targetScrollTop(h,{scrollElement:C.current,contentElement:x.current}),h),0);return g={targetScrollTop:h,calculatedScrollTop:L},requestAnimationFrame(()=>{g=void 0}),L},get scrollDifference(){return this.calculatedTargetScrollTop-this.scrollTop},get isNearBottom(){return this.scrollDifference<=Ki}}},[]),c=Ue((g={})=>{typeof g=="string"&&(g={animation:g}),g.preserveScrollPosition||u(!0);let h=Date.now()+(Number(g.wait)||0),L=lo(i.current,g.animation),{ignoreEscapes:w=!1}=g,b,P=d.calculatedTargetScrollTop;g.duration instanceof Promise?g.duration.finally(()=>{b=Date.now()}):b=h+(g.duration??0);let y=async()=>{let D=new Promise(requestAnimationFrame).then(()=>{if(!d.isAtBottom)return d.animation=void 0,!1;let{scrollTop:v}=d,F=performance.now(),k=(F-(d.lastTick??F))/Ji;if(d.animation||(d.animation={behavior:L,promise:D,ignoreEscapes:w}),d.animation.behavior===L&&(d.lastTick=F),l()||h>Date.now())return y();if(v<Math.min(P,d.calculatedTargetScrollTop)){if(d.animation?.behavior===L){if(L==="instant")return d.scrollTop=d.calculatedTargetScrollTop,y();d.velocity=(L.damping*d.velocity+L.stiffness*d.scrollDifference)/L.mass,d.accumulated+=d.velocity*k,d.scrollTop+=d.accumulated,d.scrollTop!==v&&(d.accumulated=0)}return y()}return b>Date.now()?(P=d.calculatedTargetScrollTop,y()):(d.animation=void 0,d.scrollTop<d.calculatedTargetScrollTop?c({animation:lo(i.current,i.current.resize),ignoreEscapes:w,duration:Math.max(0,b-Date.now())||void 0}):d.isAtBottom)});return D.then(v=>(requestAnimationFrame(()=>{d.animation||(d.lastTick=void 0,d.velocity=0)}),v))};return g.wait!==!0&&(d.animation=void 0),d.animation?.behavior===L?d.animation.promise:y()},[u,l,d]),p=Ue(()=>{f(!0),u(!1)},[f,u]),m=Ue(({target:g})=>{if(g!==C.current)return;let{scrollTop:h,ignoreScrollToTop:L}=d,{lastScrollTop:w=h}=d;d.lastScrollTop=h,d.ignoreScrollToTop=void 0,L&&L>h&&(w=L),n(d.isNearBottom),setTimeout(()=>{if(d.resizeDifference||h===L)return;if(l()){f(!0),u(!1);return}let b=h>w,P=h<w;if(d.animation?.ignoreEscapes){d.scrollTop=w;return}P&&(f(!0),u(!1)),b&&f(!1),!d.escapedFromLock&&d.isNearBottom&&u(!0)},1)},[f,u,l,d]),I=Ue(({target:g,deltaY:h})=>{let L=g;for(;!["scroll","auto"].includes(getComputedStyle(L).overflow);){if(!L.parentElement)return;L=L.parentElement}L===C.current&&h<0&&C.current.scrollHeight>C.current.clientHeight&&!d.animation?.ignoreEscapes&&(f(!0),u(!1))},[f,u,d]),C=Mr(g=>{C.current?.removeEventListener("scroll",m),C.current?.removeEventListener("wheel",I),g?.addEventListener("scroll",m,{passive:!0}),g?.addEventListener("wheel",I,{passive:!0})},[]),x=Mr(g=>{if(d.resizeObserver?.disconnect(),!g)return;let h;d.resizeObserver=new ResizeObserver(([L])=>{let{height:w}=L.contentRect,b=w-(h??w);if(d.resizeDifference=b,d.scrollTop>d.targetScrollTop&&(d.scrollTop=d.targetScrollTop),n(d.isNearBottom),b>=0){let P=lo(i.current,h?i.current.resize:i.current.initial);c({animation:P,wait:!0,preserveScrollPosition:!0,duration:P==="instant"?void 0:Zi})}else d.isNearBottom&&(f(!1),u(!0));h=w,requestAnimationFrame(()=>{setTimeout(()=>{d.resizeDifference===b&&(d.resizeDifference=0)},1)})}),d.resizeObserver?.observe(g)},[]);return{contentRef:x,scrollRef:C,scrollToBottom:c,stopScroll:p,isAtBottom:o||s,isNearBottom:s,escapedFromLock:t,state:d}};function Mr(e,t){let a=Ue(o=>(a.current=o,e(o)),t);return a}var io=new Map;function lo(...e){let t={...Qi},a=!1;for(let r of e){if(r==="instant"){a=!0;continue}typeof r=="object"&&(a=!1,t.damping=r.damping??t.damping,t.stiffness=r.stiffness??t.stiffness,t.mass=r.mass??t.mass)}let o=JSON.stringify(t);return io.has(o)||io.set(o,Object.freeze(t)),a?"instant":io.get(o)}import*as Ve from"react";import{createContext as Yi,useContext as el,useEffect as tl,useImperativeHandle as al,useLayoutEffect as ol,useMemo as rl,useRef as sl}from"react";var Fr=Yi(null),nl=typeof window<"u"?ol:tl;function St({instance:e,children:t,resize:a,initial:o,mass:r,damping:s,stiffness:n,targetScrollTop:i,contextRef:l,...u}){let f=sl(null),d=Ve.useCallback((w,b)=>(L?.targetScrollTop??i)?.(w,b)??w,[i]),c=Rr({mass:r,damping:s,stiffness:n,resize:a,initial:o,targetScrollTop:d}),{scrollRef:p,contentRef:m,scrollToBottom:I,stopScroll:C,isAtBottom:x,escapedFromLock:g,state:h}=e??c,L=rl(()=>({scrollToBottom:I,stopScroll:C,scrollRef:p,isAtBottom:x,escapedFromLock:g,contentRef:m,state:h,get targetScrollTop(){return f.current},set targetScrollTop(w){f.current=w}}),[I,x,m,p,C,g,h]);return al(l,()=>L,[L]),nl(()=>{p.current&&getComputedStyle(p.current).overflow==="visible"&&(p.current.style.overflow="auto")},[]),Ve.createElement(Fr.Provider,{value:L},Ve.createElement("div",{...u},typeof t=="function"?t(L):t))}(function(e){function t({children:a,scrollClassName:o,...r}){let s=uo();return Ve.createElement("div",{ref:s.scrollRef,style:{height:"100%",width:"100%",scrollbarGutter:"stable both-edges"},className:o},Ve.createElement("div",{...r,ref:s.contentRef},typeof a=="function"?a(s):a))}e.Content=t})(St||(St={}));function uo(){let e=el(Fr);if(!e)throw new Error("use-stick-to-bottom component context must be used within a StickToBottom component");return e}var il=hr({prefix:"ww"});function T(...e){return il(mr(e))}import{jsx as ll}from"react/jsx-runtime";var ke=({className:e,variant:t="default",size:a="default",type:o="button",...r})=>ll("button",{type:o,className:T("ww:inline-flex ww:cursor-pointer ww:items-center ww:justify-center ww:rounded-md ww:font-medium ww:transition-colors ww:disabled:pointer-events-none ww:disabled:opacity-50",t==="default"&&"ww:bg-primary ww:text-primary-foreground ww:hover:bg-primary/90",t==="outline"&&"ww:border ww:border-border ww:bg-background ww:hover:bg-accent ww:hover:text-accent-foreground",t==="ghost"&&"ww:hover:bg-accent ww:hover:text-accent-foreground",a==="default"&&"ww:h-9 ww:px-4 ww:py-2 ww:text-sm",a==="sm"&&"ww:h-8 ww:px-3 ww:text-xs",a==="icon"&&"ww:size-9 ww:!rounded-full",a==="icon-sm"&&"ww:size-7 ww:!rounded-full",e),...r});import{jsx as Jt}from"react/jsx-runtime";var Br=({className:e,...t})=>Jt(St,{className:T("ww:relative ww:flex-1 ww:overflow-y-hidden",e),initial:"smooth",resize:"smooth",role:"log",...t}),Dr=({className:e,...t})=>Jt(St.Content,{className:T("ww:flex ww:flex-col ww:gap-6 ww:px-4 ww:py-6 ww:mx-auto ww:w-full ww:max-w-3xl",e),...t}),Er=({className:e,...t})=>{let{isAtBottom:a,scrollToBottom:o}=uo(),r=ul(()=>{o()},[o]);return!a&&Jt(ke,{className:T("ww:absolute ww:bottom-4 ww:left-[50%] ww:translate-x-[-50%] ww:rounded-full",e),onClick:r,size:"icon",variant:"outline",...t,children:Jt(ze,{className:"ww:size-4"})})};import Nr from"crypto";var _r="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";var dl=128,$e,nt,fl=e=>{!$e||$e.length<e?($e=Buffer.allocUnsafe(e*dl),Nr.randomFillSync($e),nt=0):nt+e>$e.length&&(Nr.randomFillSync($e),nt=0),nt+=e};var yt=(e=21)=>{fl(e|=0);let t="";for(let a=nt-e;a<nt;a++)t+=_r[$e[a]&63];return t};import{createContext as cl,useCallback as Be,useContext as pl,useEffect as fo,useMemo as ml,useRef as co,useState as Or}from"react";import{jsx as Pe,jsxs as qr}from"react/jsx-runtime";var hl=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}},Ur=cl(null),Hr=()=>{let e=pl(Ur);if(!e)throw new Error("usePromptInputAttachments must be used within a PromptInput");return e},Zt=({className:e,accept:t,multiple:a,globalDrop:o,maxFiles:r,maxFileSize:s,onSubmit:n,children:i,...l})=>{let u=co(null),f=co(null),[d,c]=Or([]),p=co(d);fo(()=>{p.current=d},[d]);let m=Be(()=>{u.current?.click()},[]),I=Be(w=>{let b=[...w];if(b.length===0)return;let P=D=>s?D.size<=s:!0,y=b.filter(P);c(D=>{let v=typeof r=="number"?Math.max(0,r-D.length):void 0,F=typeof v=="number"?y.slice(0,v):y;return[...D,...F.map(k=>({filename:k.name,id:yt(),mediaType:k.type,type:"file",url:URL.createObjectURL(k)}))]})},[r,s]),C=Be(w=>{c(b=>{let P=b.find(y=>y.id===w);return P?.url&&URL.revokeObjectURL(P.url),b.filter(y=>y.id!==w)})},[]),x=Be(()=>{c(w=>{for(let b of w)b.url&&URL.revokeObjectURL(b.url);return[]})},[]);fo(()=>()=>{for(let w of p.current)w.url&&URL.revokeObjectURL(w.url)},[]);let g=Be(w=>{w.currentTarget.files&&I(w.currentTarget.files),w.currentTarget.value=""},[I]);fo(()=>{if(!o)return;let w=P=>{P.dataTransfer?.types?.includes("Files")&&P.preventDefault()},b=P=>{P.dataTransfer?.types?.includes("Files")&&P.preventDefault(),P.dataTransfer?.files&&P.dataTransfer.files.length>0&&I(P.dataTransfer.files)};return document.addEventListener("dragover",w),document.addEventListener("drop",b),()=>{document.removeEventListener("dragover",w),document.removeEventListener("drop",b)}},[I,o]);let h=Be(async w=>{w.preventDefault();let b=w.currentTarget,y=new FormData(b).get("message")||"";b.reset();let D=await Promise.all(d.map(async({id:v,...F})=>{if(F.url?.startsWith("blob:")){let k=await hl(F.url);return{...F,url:k??F.url}}return F}));try{let v=n({files:D,text:y},w);v instanceof Promise&&await v,x()}catch{}},[d,n,x]),L=ml(()=>({add:I,clear:x,files:d,openFileDialog:m,remove:C}),[d,I,C,x,m]);return qr(Ur.Provider,{value:L,children:[Pe("input",{accept:t,"aria-label":"Upload files",className:"ww:hidden",multiple:a,onChange:g,ref:u,title:"Upload files",type:"file"}),Pe("form",{className:T("ww:flex ww:w-full ww:flex-col ww:rounded-lg ww:border ww:border-border ww:bg-background",e),onSubmit:h,ref:f,...l,children:i})]})};var Yt=({onChange:e,onKeyDown:t,className:a,placeholder:o="What would you like to know?",...r})=>{let s=Hr(),[n,i]=Or(!1),l=Be(f=>{if(t?.(f),!f.defaultPrevented){if(f.key==="Enter"){if(n||f.nativeEvent.isComposing||f.shiftKey)return;f.preventDefault();let{form:d}=f.currentTarget;if(d?.querySelector('button[type="submit"]')?.disabled)return;d?.requestSubmit()}if(f.key==="Backspace"&&f.currentTarget.value===""&&s.files.length>0){f.preventDefault();let d=s.files.at(-1);d&&s.remove(d.id)}}},[t,n,s]),u=Be(f=>{let d=f.clipboardData?.items;if(!d)return;let c=[];for(let p of d)if(p.kind==="file"){let m=p.getAsFile();m&&c.push(m)}c.length>0&&(f.preventDefault(),s.add(c))},[s]);return Pe("textarea",{className:T("ww:field-sizing-content ww:max-h-48 ww:min-h-0 ww:w-full ww:resize-none ww:border-0 ww:bg-transparent ww:px-3 ww:py-2 ww:text-sm ww:outline-none ww:placeholder:text-muted-foreground",a),name:"message",onCompositionEnd:()=>i(!1),onCompositionStart:()=>i(!0),onKeyDown:l,onPaste:u,placeholder:o,onChange:e,...r})},ea=({className:e,status:t,onStop:a,onClick:o,children:r,...s})=>{let n=t==="submitted"||t==="streaming",i=Pe(pt,{className:"ww:size-4"});t==="submitted"?i=Pe(Lt,{className:"ww:size-4 ww:animate-spin"}):t==="streaming"&&(i=Pe(It,{className:"ww:size-4"}));let l=Be(u=>{if(n&&a){u.preventDefault(),a();return}o?.(u)},[n,a,o]);return Pe(ke,{"aria-label":n?"Stop":"Submit",className:T("ww:bg-foreground ww:text-background ww:hover:bg-foreground ww:rounded-full",e),onClick:l,size:"icon-sm",type:n&&a?"button":"submit",variant:"ghost",...s,children:r??i})},ta=({className:e,children:t,...a})=>{let o=Hr();return o.files.length>0?qr(ke,{className:T("ww:group ww:relative",e),onClick:()=>o.clear(),size:"icon-sm",type:"button",variant:"ghost","aria-label":"Remove all attachments",...a,children:[Pe("span",{className:"ww:flex ww:size-5 ww:items-center ww:justify-center ww:rounded-full ww:bg-primary ww:text-[10px] ww:font-medium ww:text-primary-foreground ww:transition-opacity ww:group-hover:opacity-0",children:o.files.length}),Pe(je,{className:"ww:absolute ww:size-4 ww:opacity-0 ww:transition-opacity ww:group-hover:opacity-100"})]}):Pe(ke,{className:T(e),onClick:()=>o.openFileDialog(),size:"icon-sm",type:"button",variant:"ghost",...a,children:t??Pe(Ct,{className:"ww:size-4"})})};import{memo as gl,useCallback as wl}from"react";import{jsx as it}from"react/jsx-runtime";var Gr=({className:e,...t})=>it("div",{className:T("ww:flex ww:flex-col ww:gap-1 ww:px-3 ww:py-2",e),...t}),Wr=({className:e,...t})=>it("li",{className:T("ww:group ww:flex ww:items-center ww:gap-2 ww:rounded-md ww:px-2 ww:py-1 ww:text-sm ww:transition-colors ww:hover:bg-muted",e),...t}),zr=({className:e,...t})=>it("span",{className:T("ww:inline-block ww:size-2 ww:shrink-0 ww:rounded-full ww:border ww:border-muted-foreground/50",e),...t}),jr=({className:e,...t})=>it("span",{className:T("ww:line-clamp-1 ww:grow ww:break-words ww:text-muted-foreground",e),...t}),Vr=({className:e,...t})=>it("div",{className:T("ww:flex ww:shrink-0 ww:gap-1 ww:opacity-0 ww:transition-opacity ww:group-hover:opacity-100",e),...t}),$r=({className:e,...t})=>it(ke,{className:T("ww:size-auto ww:rounded ww:p-1 ww:text-muted-foreground ww:hover:bg-muted-foreground/10 ww:hover:text-foreground",e),size:"icon",type:"button",variant:"ghost",...t});import{jsx as Xe,jsxs as po}from"react/jsx-runtime";var Xr=gl(({message:e,onRemove:t})=>{let a=wl(()=>t(e.id),[t,e.id]);return po(Wr,{children:[Xe(zr,{}),Xe(jr,{children:e.text||"(attachment)"}),Xe(Vr,{children:Xe($r,{"aria-label":"Remove from queue",onClick:a,children:Xe(je,{className:"ww:size-3"})})})]})});Xr.displayName="ChatQueueItem";function aa({queuedMessages:e,onRemove:t,className:a}){return e.length===0?null:po(Gr,{className:T("ww:border-t ww:border-border",a),children:[po("div",{className:"ww:text-[11px] ww:font-medium ww:text-muted-foreground ww:px-2",children:[e.length," queued"]}),Xe("ul",{children:e.map(o=>Xe(Xr,{message:o,onRemove:t},o.id))})]})}import{useState as Qr}from"react";import{jsx as xl}from"react/jsx-runtime";function Kr({messages:e,evalEnabled:t,api:a="/api/waniwani"}){let[o,r]=Qr(!1),[s,n]=Qr(null),i=async()=>{let u={name:`session-${new Date().toISOString().slice(0,19)}`,type:"functional",messages:e,mode:"manual"};r(!0),n(null);try{let f=await fetch(`${a}/scenarios`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(u)});if(!f.ok)throw new Error(`${f.status}`);n("saved")}catch{n("error")}finally{r(!1),setTimeout(()=>n(null),2e3)}};return!t||e.length===0?null:xl("button",{type:"button",onClick:i,disabled:o,title:"Save scenario to WaniWani",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:o?"saving...":s==="saved"?"saved":s==="error"?"error":"export"})}import{jsx as kt,jsxs as Cl}from"react/jsx-runtime";var Jr=({files:e,className:t,...a})=>e.length===0?null:kt("div",{className:T("ww:flex ww:flex-wrap ww:gap-1.5",t),...a,children:e.map((o,r)=>kt(Ll,{file:o},r))});function Ll({file:e}){return e.mediaType?.startsWith("image/")&&e.url?kt("img",{src:e.url,alt:e.filename??"attachment",className:"ww:h-16 ww:max-w-32 ww:rounded ww:object-cover"}):Cl("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:[kt(xt,{className:"ww:size-3 ww:shrink-0"}),kt("span",{className:"ww:max-w-24 ww:truncate",children:e.filename??"file"})]})}import{jsx as Zr}from"react/jsx-runtime";var mo=({className:e,size:t=5,...a})=>Zr("div",{className:T("ww:flex ww:items-center ww:gap-1",e),...a,children:[0,1,2].map(o=>Zr("div",{className:"ww:rounded-full ww:bg-muted-foreground/60",style:{width:t,height:t,animation:"ww-pulse 1.4s ease-in-out infinite",animationDelay:`${o*.2}s`}},o))});var de={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 ve={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 Le={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 Yr(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 es(e){return e===12288||e>=65281&&e<=65376||e>=65504&&e<=65510}function ts(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 Yr(e)?"ambiguous":es(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":ts(e)?"wide":"neutral"}function Il(e){if(!Number.isSafeInteger(e))throw new TypeError(`Expected a code point, got \`${typeof e}\`.`)}function os(e){return Il(e),as(e)}var Sl=Object.defineProperty,yl=(e,t,a)=>t in e?Sl(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a,kl=(e,t,a)=>yl(e,typeof t!="symbol"?t+"":t,a);function bl(e){return/^\p{Emoji_Presentation}/u.test(String.fromCodePoint(e))}function Tl(e){if(!e||e<4352)return!1;switch(os(e)){case"fullwidth":case"halfwidth":return!0;case"wide":return!bl(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 Pl(e,t){return t!==65025||!e||e<8216?!1:e===8216||e===8217||e===8220||e===8221}function Al(e){return e!==null&&e>=65024&&e<=65038}var vl=rs(/\p{P}|\p{S}/u),Ml=rs(/\s/);function rs(e){return t;function t(a){return a!==null&&a>-1&&e.test(String.fromCodePoint(a))}}var Ce;(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})(Ce||(Ce={}));function He(e){if(e===de.eof||gr(e)||Ml(e))return ve.characterGroupWhitespace;let t=0;if(e>=4352){if(Al(e))return Ce.nonEmojiGeneralUseVS;switch(Tl(e)){case null:return Ce.ivs;case!0:t|=Ce.cjk;break}}return vl(e)&&(t|=ve.characterGroupPunctuation),t}function oa(e,t,a){if(!Fl(e))return e;let o=t(),r=He(o);return!o||Qe(r)?e:Pl(o,a)?Ce.cjkPunctuation:Rl(r)}function Rl(e){return e&~Ce.ivs}function Qe(e){return!!(e&ve.characterGroupWhitespace)}function lt(e){return(e&Ce.cjkPunctuation)===ve.characterGroupPunctuation}function bt(e){return!!(e&Ce.cjk)}function ss(e){return e===Ce.ivs}function ns(e){return!!(e&Ce.cjkOrIvs)}function Fl(e){return e===Ce.nonEmojiGeneralUseVS}function ho(e){return!!(e&Ce.spaceOrPunctuation)}function ra(e){return!!(e&&e>=55296&&e<=56319)}function sa(e){return!!(e&&e>=56320&&e<=57343)}function na(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 Bl(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 ia=class{constructor(e,t,a){this.previousCode=e,this.nowPoint=t,this.sliceSerialize=a,kl(this,"cachedValue")}value(){return this.cachedValue===void 0&&(this.cachedValue=Bl(this.previousCode,this.nowPoint,this.sliceSerialize)),this.cachedValue}};function la(e,t,a){let o=a({start:t,end:{...t,_bufferIndex:t._bufferIndex+2}}).codePointAt(0);return o&&o>=65536?o:e}var go={name:"attention",resolveAll:Dl,tokenize:El};function Dl(e,t){let a=-1,o,r,s,n,i,l,u,f;for(;++a<e.length;)if(e[a][0]==="enter"&&e[a][1].type==="attentionSequence"&&e[a][1]._close){for(o=a;o--;)if(e[o][0]==="exit"&&e[o][1].type==="attentionSequence"&&e[o][1]._open&&t.sliceSerialize(e[o][1]).charCodeAt(0)===t.sliceSerialize(e[a][1]).charCodeAt(0)){if((e[o][1]._close||e[a][1]._open)&&(e[a][1].end.offset-e[a][1].start.offset)%3&&!((e[o][1].end.offset-e[o][1].start.offset+e[a][1].end.offset-e[a][1].start.offset)%3))continue;l=e[o][1].end.offset-e[o][1].start.offset>1&&e[a][1].end.offset-e[a][1].start.offset>1?2:1;let d={...e[o][1].end},c={...e[a][1].start};is(d,-l),is(c,l),n={type:l>1?Le.strongSequence:Le.emphasisSequence,start:d,end:{...e[o][1].end}},i={type:l>1?Le.strongSequence:Le.emphasisSequence,start:{...e[a][1].start},end:c},s={type:l>1?Le.strongText:Le.emphasisText,start:{...e[o][1].end},end:{...e[a][1].start}},r={type:l>1?Le.strong:Le.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=rt(u,[["enter",e[o][1],t],["exit",e[o][1],t]])),u=rt(u,[["enter",r,t],["enter",n,t],["exit",n,t],["enter",s,t]]),t.parser.constructs.insideSpan.null,u=rt(u,$t(t.parser.constructs.insideSpan.null,e.slice(o+1,a),t)),u=rt(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=rt(u,[["enter",e[a][1],t],["exit",e[a][1],t]])):f=0,ot(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 El(e,t){let a=this.parser.constructs.attentionMarkers.null,{now:o,sliceSerialize:r,previous:s}=this,n=sa(s)?na(s,o(),r):s,i=He(n),l=new ia(n,o(),r),u=oa(i,l.value.bind(l),n),f;return d;function d(p){return p===de.asterisk||de.underscore,f=p,e.enter("attentionSequence"),c(p)}function c(p){if(p===f)return e.consume(p),c;let m=e.exit("attentionSequence"),I=ra(p)?la(p,o(),r):p,C=He(I);let x=lt(u),g=x||Qe(u),h=lt(C),L=h||Qe(C),w=ns(u),b=!L||h&&(g||w)||a.includes(p),P=!g||x&&(L||bt(C))||a.includes(n);return m._open=!!(f===de.asterisk?b:b&&(ho(u)||!P)),m._close=!!(f===de.asterisk?P:P&&(ho(C)||!b)),t(p)}}function is(e,t){e.column+=t,e.offset+=t,e._bufferIndex+=t}function ls(){return{text:{[de.asterisk]:go,[de.underscore]:go},insideSpan:{null:[go]}}}function us(){let e=this.data();(e.micromarkExtensions||(e.micromarkExtensions=[])).push(ls())}function ds(e){let a=(e||{}).singleTilde,o={name:"strikethrough",tokenize:s,resolveAll:r};return a==null&&(a=!0),{text:{[de.tilde]:o},insideSpan:{null:[o]},attentionMarkers:{null:[de.tilde]}};function r(n,i){let l=-1;for(;++l<n.length;)if(n[l][0]==="enter"&&n[l][1].type==="strikethroughSequenceTemporary"&&n[l][1]._close){let u=l;for(;u--;)if(n[u][0]==="exit"&&n[u][1].type==="strikethroughSequenceTemporary"&&n[u][1]._open&&n[l][1].end.offset-n[l][1].start.offset===n[u][1].end.offset-n[u][1].start.offset){n[l][1].type="strikethroughSequence",n[u][1].type="strikethroughSequence";let f={type:"strikethrough",start:Object.assign({},n[u][1].start),end:Object.assign({},n[l][1].end)},d={type:"strikethroughText",start:Object.assign({},n[u][1].end),end:Object.assign({},n[l][1].start)},c=[["enter",f,i],["enter",n[u][1],i],["exit",n[u][1],i],["enter",d,i]],p=i.parser.constructs.insideSpan.null;p&&ot(c,c.length,0,$t(p,n.slice(u+1,l),i)),ot(c,c.length,0,[["exit",d,i],["enter",n[l][1],i],["exit",n[l][1],i],["exit",f,i]]),ot(n,u-1,l-u+3,c),l=u+c.length-2;break}}for(l=-1;++l<n.length;)n[l][1].type==="strikethroughSequenceTemporary"&&(n[l][1].type=Le.data);return n}function s(n,i,l){let{now:u,sliceSerialize:f,previous:d}=this,c=sa(d)?na(d,u(),f):d,p=He(c),m=new ia(c,u(),f),I=oa(p,m.value.bind(m),c),C=this.events,x=0;return g;function g(L){return de.tilde,c===de.tilde&&C[C.length-1][1].type!==Le.characterEscape?l(L):(n.enter("strikethroughSequenceTemporary"),h(L))}function h(L){let w=He(c);if(L===de.tilde)return x>1?l(L):(n.consume(L),x++,h);if(x<2&&!a)return l(L);let b=n.exit("strikethroughSequenceTemporary"),P=ra(L)?la(L,u(),f):L,y=He(P),v=lt(I)||Qe(I),k=lt(y)||Qe(y),B=bt(I)||ss(w);return b._open=!k||y===ve.attentionSideAfter&&(v||B),b._close=!v||w===ve.attentionSideAfter&&(k||bt(y)),i(L)}}}function fs(e){let t=this.data();(t.micromarkExtensions||(t.micromarkExtensions=[])).push(ds(e))}var _l=new Set(["\u3002","\uFF0E","\uFF0C","\u3001","\uFF1F","\uFF01","\uFF1A","\uFF1B","\uFF08","\uFF09","\u3010","\u3011","\u300C","\u300D","\u300E","\u300F","\u3008","\u3009","\u300A","\u300B"]),Nl=/^(https?:\/\/|mailto:|www\.)/i,Ol=e=>{if(e.children.length!==1)return!1;let t=e.children[0];return t.type==="text"&&t.value===e.url},Ul=e=>{let t=0;for(let a of e){if(_l.has(a))return t;t+=a.length}return null},Hl=(e,t)=>({...t,url:e,children:[{type:"text",value:e}]}),ql=e=>({type:"text",value:e}),Gl=()=>e=>{wr(e,"link",(t,a,o)=>{if(!o||typeof a!="number"||!Ol(t)||!Nl.test(t.url))return;let r=Ul(t.url);if(r===null||r===0)return;let s=t.url.slice(0,r),n=t.url.slice(r),i=Hl(s,t),l=ql(n);return o.children.splice(a,1,i,l),a+1})};function Wl(){let e=[us],t=[Gl,fs],a=[...e,...t];return{name:"cjk",type:"cjk",remarkPluginsBefore:e,remarkPluginsAfter:t,remarkPlugins:a}}var cs=Wl();var Z=class extends Error{constructor(t){super(t),this.name="ShikiError"}};function zl(e){return To(e)}function To(e){return Array.isArray(e)?jl(e):e instanceof RegExp?e:typeof e=="object"?Vl(e):e}function jl(e){let t=[];for(let a=0,o=e.length;a<o;a++)t[a]=To(e[a]);return t}function Vl(e){let t={};for(let a in e)t[a]=To(e[a]);return t}function Is(e,...t){return t.forEach(a=>{for(let o in a)e[o]=a[o]}),e}function Ss(e){let t=~e.lastIndexOf("/")||~e.lastIndexOf("\\");return t===0?e:~t===e.length-1?Ss(e.substring(0,e.length-1)):e.substr(~t+1)}var wo=/\$(\d+)|\${(\d+):\/(downcase|upcase)}/g,ua=class{static hasCaptures(e){return e===null?!1:(wo.lastIndex=0,wo.test(e))}static replaceCaptures(e,t,a){return e.replace(wo,(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 ys(e,t){return e<t?-1:e>t?1:0}function ks(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=ys(e[r],t[r]);if(s!==0)return s}return 0}return a-o}function ps(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 bs(e){return e.replace(/[\-\\\{\}\*\+\?\|\^\$\.\,\[\]\(\)\#\s]/g,"\\$&")}var Ts=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}},At=class{constructor(e,t,a){this._colorMap=e,this._defaults=t,this._root=a}static createFromRawTheme(e,t){return this.createFromParsedTheme(Ql(e),t)}static createFromParsedTheme(e,t){return Jl(e,t)}_cachedMatchRoot=new Ts(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=>$l(e.parent,r.parentScopes));return o?new Ps(o.fontStyle,o.foreground,o.background):null}},xo=class da{constructor(t,a){this.parent=t,this.scopeName=a}static push(t,a){for(let o of a)t=new da(t,o);return t}static from(...t){let a=null;for(let o=0;o<t.length;o++)a=new da(a,t[o]);return a}push(t){return new da(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 $l(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&&!Xl(e.scopeName,o);){if(r)return!1;e=e.parent}if(!e)return!1;e=e.parent}return!0}function Xl(e,t){return t===e||e.startsWith(t)&&e[t.length]==="."}var Ps=class{constructor(e,t,a){this.fontStyle=e,this.foregroundId=t,this.backgroundId=a}};function Ql(e){if(!e)return[];if(!e.settings||!Array.isArray(e.settings))return[];let t=e.settings,a=[],o=0;for(let r=0,s=t.length;r<s;r++){let n=t[r];if(!n.settings)continue;let i;if(typeof n.scope=="string"){let d=n.scope;d=d.replace(/^[,]+/,""),d=d.replace(/[,]+$/,""),i=d.split(",")}else Array.isArray(n.scope)?i=n.scope:i=[""];let l=-1;if(typeof n.settings.fontStyle=="string"){l=0;let d=n.settings.fontStyle.split(" ");for(let c=0,p=d.length;c<p;c++)switch(d[c]){case"italic":l=l|1;break;case"bold":l=l|2;break;case"underline":l=l|4;break;case"strikethrough":l=l|8;break}}let u=null;typeof n.settings.foreground=="string"&&ps(n.settings.foreground)&&(u=n.settings.foreground);let f=null;typeof n.settings.background=="string"&&ps(n.settings.background)&&(f=n.settings.background);for(let d=0,c=i.length;d<c;d++){let m=i[d].trim().split(" "),I=m[m.length-1],C=null;m.length>1&&(C=m.slice(0,m.length-1),C.reverse()),a[o++]=new Kl(I,C,r,l,u,f)}}return a}var Kl=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}},fe=(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))(fe||{});function Jl(e,t){e.sort((l,u)=>{let f=ys(l.scope,u.scope);return f!==0||(f=ks(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 Zl(t),n=new Ps(a,s.getId(o),s.getId(r)),i=new eu(new Co(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 At(s,n,i)}var Zl=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)}},Yl=Object.freeze([]),Co=class As{scopeDepth;parentScopes;fontStyle;foreground;background;constructor(t,a,o,r,s){this.scopeDepth=t,this.parentScopes=a||Yl,this.fontStyle=o,this.foreground=r,this.background=s}clone(){return new As(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)}},eu=class Io{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(Io._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 Io(this._mainRule.clone(),Co.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(ks(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 Co(t,a,o,r,s))}},Je=class be{static toBinaryStr(t){return t.toString(2).padStart(32,"0")}static print(t){let a=be.getLanguageId(t),o=be.getTokenType(t),r=be.getFontStyle(t),s=be.getForeground(t),n=be.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=be.getLanguageId(t),u=be.getTokenType(t),f=be.containsBalancedBrackets(t)?1:0,d=be.getFontStyle(t),c=be.getForeground(t),p=be.getBackground(t);return a!==0&&(l=a),o!==8&&(u=o),r!==null&&(f=r?1:0),s!==-1&&(d=s),n!==0&&(c=n),i!==0&&(p=i),(l<<0|u<<8|f<<10|d<<11|c<<15|p<<24)>>>0}};function ca(e,t){let a=[],o=tu(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(ms(r)){let l=[];do l.push(r),r=o.next();while(ms(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 ms(e){return!!e&&!!e.match(/[\w\.:]+/)}function tu(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 vs(e){typeof e.dispose=="function"&&e.dispose()}var vt=class{constructor(e){this.scopeName=e}toKey(){return this.scopeName}},au=class{constructor(e,t){this.scopeName=e,this.ruleName=t}toKey(){return`${this.scopeName}#${this.ruleName}`}},ou=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))}},ru=class{constructor(e,t){this.repo=e,this.initialScopeName=t,this.seenFullScopeRequests.add(this.initialScopeName),this.Q=[new vt(this.initialScopeName)]}seenFullScopeRequests=new Set;seenPartialScopeRequests=new Set;Q;processQueue(){let e=this.Q;this.Q=[];let t=new ou;for(let a of e)su(a,this.initialScopeName,this.repo,t);for(let a of t.references)if(a instanceof vt){if(this.seenFullScopeRequests.has(a.scopeName))continue;this.seenFullScopeRequests.add(a.scopeName),this.Q.push(a)}else{if(this.seenFullScopeRequests.has(a.scopeName)||this.seenPartialScopeRequests.has(a.toKey()))continue;this.seenPartialScopeRequests.add(a.toKey()),this.Q.push(a)}}};function su(e,t,a,o){let r=a.lookup(e.scopeName);if(!r){if(e.scopeName===t)throw new Error(`No grammar provided for <${t}>`);return}let s=a.lookup(t);e instanceof vt?fa({baseGrammar:s,selfGrammar:r},o):So(e.ruleName,{baseGrammar:s,selfGrammar:r,repository:r.repository},o);let n=a.injections(e.scopeName);if(n)for(let i of n)o.add(new vt(i))}function So(e,t,a){if(t.repository&&t.repository[e]){let o=t.repository[e];pa([o],t,a)}}function fa(e,t){e.selfGrammar.patterns&&Array.isArray(e.selfGrammar.patterns)&&pa(e.selfGrammar.patterns,{...e,repository:e.selfGrammar.repository},t),e.selfGrammar.injections&&pa(Object.values(e.selfGrammar.injections),{...e,repository:e.selfGrammar.repository},t)}function pa(e,t,a){for(let o of e){if(a.visitedRule.has(o))continue;a.visitedRule.add(o);let r=o.repository?Is({},t.repository,o.repository):t.repository;Array.isArray(o.patterns)&&pa(o.patterns,{...t,repository:r},a);let s=o.include;if(!s)continue;let n=Ms(s);switch(n.kind){case 0:fa({...t,selfGrammar:t.baseGrammar},a);break;case 1:fa(t,a);break;case 2:So(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?So(n.ruleName,l,a):fa(l,a)}else n.kind===4?a.add(new au(n.scopeName,n.ruleName)):a.add(new vt(n.scopeName));break}}}var nu=class{kind=0},iu=class{kind=1},lu=class{constructor(e){this.ruleName=e}kind=2},uu=class{constructor(e){this.scopeName=e}kind=3},du=class{constructor(e,t){this.scopeName=e,this.ruleName=t}kind=4};function Ms(e){if(e==="$base")return new nu;if(e==="$self")return new iu;let t=e.indexOf("#");if(t===-1)return new uu(e);if(t===0)return new lu(e.substring(1));{let a=e.substring(0,t),o=e.substring(t+1);return new du(a,o)}}var fu=/\\(\d+)/,hs=/\\(\d+)/g;var cu=-1,Rs=-2;var Ft=class{$location;id;_nameIsCapturing;_name;_contentNameIsCapturing;_contentName;constructor(e,t,a,o){this.$location=e,this.id=t,this._name=a||null,this._nameIsCapturing=ua.hasCaptures(this._name),this._contentName=o||null,this._contentNameIsCapturing=ua.hasCaptures(this._contentName)}get debugName(){let e=this.$location?`${Ss(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:ua.replaceCaptures(this._name,e,t)}getContentName(e,t){return!this._contentNameIsCapturing||this._contentName===null?this._contentName:ua.replaceCaptures(this._contentName,e,t)}},pu=class extends Ft{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!")}},mu=class extends Ft{_match;captures;_cachedCompiledPatterns;constructor(e,t,a,o,r){super(e,t,a,null),this._match=new Mt(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 Rt,this.collectPatterns(e,this._cachedCompiledPatterns)),this._cachedCompiledPatterns}},gs=class extends Ft{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 Rt,this.collectPatterns(e,this._cachedCompiledPatterns)),this._cachedCompiledPatterns}},yo=class extends Ft{_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 Mt(r,this.id),this.beginCaptures=s,this._end=new Mt(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 Rt;for(let a of this.patterns)e.getRule(a).collectPatterns(e,this._cachedCompiledPatterns);this.applyEndPatternLast?this._cachedCompiledPatterns.push(this._end.hasBackReferences?this._end.clone():this._end):this._cachedCompiledPatterns.unshift(this._end.hasBackReferences?this._end.clone():this._end)}return this._end.hasBackReferences&&(this.applyEndPatternLast?this._cachedCompiledPatterns.setSource(this._cachedCompiledPatterns.length()-1,t):this._cachedCompiledPatterns.setSource(0,t)),this._cachedCompiledPatterns}},ma=class extends Ft{_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 Mt(r,this.id),this.beginCaptures=s,this.whileCaptures=i,this._while=new Mt(n,Rs),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 Rt;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 Rt,this._cachedCompiledWhilePatterns.push(this._while.hasBackReferences?this._while.clone():this._while)),this._while.hasBackReferences&&this._cachedCompiledWhilePatterns.setSource(0,t||"\uFFFF"),this._cachedCompiledWhilePatterns}},Fs=class me{static createCaptureRule(t,a,o,r,s){return t.registerRule(n=>new pu(a,n,o,r,s))}static getCompiledRuleId(t,a,o){return t.id||a.registerRule(r=>{if(t.id=r,t.match)return new mu(t.$vscodeTextmateLocation,t.id,t.name,t.match,me._compileCaptures(t.captures,a,o));if(typeof t.begin>"u"){t.repository&&(o=Is({},o,t.repository));let s=t.patterns;return typeof s>"u"&&t.include&&(s=[{include:t.include}]),new gs(t.$vscodeTextmateLocation,t.id,t.name,t.contentName,me._compilePatterns(s,a,o))}return t.while?new ma(t.$vscodeTextmateLocation,t.id,t.name,t.contentName,t.begin,me._compileCaptures(t.beginCaptures||t.captures,a,o),t.while,me._compileCaptures(t.whileCaptures||t.captures,a,o),me._compilePatterns(t.patterns,a,o)):new yo(t.$vscodeTextmateLocation,t.id,t.name,t.contentName,t.begin,me._compileCaptures(t.beginCaptures||t.captures,a,o),t.end,me._compileCaptures(t.endCaptures||t.captures,a,o),t.applyEndPatternLast,me._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=me.getCompiledRuleId(t[n],a,o)),r[i]=me.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=Ms(i.include);switch(u.kind){case 0:case 1:l=me.getCompiledRuleId(o[i.include],a,o);break;case 2:let f=o[u.ruleName];f&&(l=me.getCompiledRuleId(f,a,o));break;case 3:case 4:let d=u.scopeName,c=u.kind===4?u.ruleName:null,p=a.getExternalGrammar(d,o);if(p)if(c){let m=p.repository[c];m&&(l=me.getCompiledRuleId(m,a,p.repository))}else l=me.getCompiledRuleId(p.repository.$self,a,p.repository);break}}else l=me.getCompiledRuleId(i,a,o);if(l!==-1){let u=a.getRule(l),f=!1;if((u instanceof gs||u instanceof yo||u instanceof ma)&&u.hasMissingPatterns&&u.patterns.length===0&&(f=!0),f)continue;r.push(l)}}return{patterns:r,hasMissingPatterns:(t?t.length:0)!==r.length}}},Mt=class Bs{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=fu.test(this.source):this.hasBackReferences=!1}clone(){return new Bs(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)=>bs(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}},Rt=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 ws(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 ws(e,o,this._items.map(r=>r.ruleId))}},ws=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}},Lo=class{constructor(e,t){this.languageId=e,this.tokenType=t}},hu=class ko{_defaultAttributes;_embeddedLanguagesMatcher;constructor(t,a){this._defaultAttributes=new Lo(t,8),this._embeddedLanguagesMatcher=new gu(Object.entries(a||{}))}getDefaultAttributes(){return this._defaultAttributes}getBasicScopeAttributes(t){return t===null?ko._NULL_SCOPE_METADATA:this._getBasicScopeAttributes.get(t)}static _NULL_SCOPE_METADATA=new Lo(0,0);_getBasicScopeAttributes=new Ts(t=>{let a=this._scopeToLanguage(t),o=this._toStandardTokenType(t);return new Lo(a,o)});_scopeToLanguage(t){return this._embeddedLanguagesMatcher.match(t)||0}_toStandardTokenType(t){let a=t.match(ko.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/},gu=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])=>bs(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])}},
|
|
2
|
+
import{a as mr,b as hr,c as gr,d as ot,e as rt,f as $t,g as wr,h as xr,i as Lr,j as Cr,k as Xt,l as Ir,m as oo,n as Sr,o as yr,p as st,u as ro}from"../chunk-5JBHQYU5.js";import"../chunk-V3ZDECK5.js";import{forwardRef as Qc,useCallback as ir,useEffect as Kc,useImperativeHandle as Jc,useRef as wi,useState as xi}from"react";import{forwardRef as Bi,createElement as Di}from"react";var Qt=(...e)=>e.filter((t,a,o)=>!!t&&t.trim()!==""&&o.indexOf(t)===a).join(" ").trim();var kr=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();var br=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(t,a,o)=>o?o.toUpperCase():a.toLowerCase());var so=e=>{let t=br(e);return t.charAt(0).toUpperCase()+t.slice(1)};import{forwardRef as Fi,createElement as Ar}from"react";var Tr={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 Pr=e=>{for(let t in e)if(t.startsWith("aria-")||t==="role"||t==="title")return!0;return!1};var vr=Fi(({color:e="currentColor",size:t=24,strokeWidth:a=2,absoluteStrokeWidth:o,className:r="",children:s,iconNode:n,...i},l)=>Ar("svg",{ref:l,...Tr,width:t,height:t,stroke:e,strokeWidth:o?Number(a)*24/Number(t):a,className:Qt("lucide",r),...!s&&!Pr(i)&&{"aria-hidden":"true"},...i},[...n.map(([u,f])=>Ar(u,f)),...Array.isArray(s)?s:[s]]));var Q=(e,t)=>{let a=Bi(({className:o,...r},s)=>Di(vr,{ref:s,iconNode:t,className:Qt(`lucide-${kr(so(e))}`,`lucide-${e}`,o),...r}));return a.displayName=so(e),a};var Ei=[["path",{d:"M12 5v14",key:"s699le"}],["path",{d:"m19 12-7 7-7-7",key:"1idqje"}]],ze=Q("arrow-down",Ei);var _i=[["path",{d:"m5 12 7-7 7 7",key:"hav0vg"}],["path",{d:"M12 19V5",key:"x0mq9r"}]],pt=Q("arrow-up",_i);var Ni=[["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"}]],Oe=Q("braces",Ni);var Oi=[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]],mt=Q("check",Oi);var Ui=[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]],ht=Q("chevron-down",Ui);var Hi=[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]],gt=Q("chevron-right",Hi);var qi=[["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"}]],wt=Q("clipboard-copy",qi);var Gi=[["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"}]],xt=Q("file",Gi);var Wi=[["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"}]],Lt=Q("loader",Wi);var zi=[["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"}]],Ct=Q("paperclip",zi);var ji=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}]],It=Q("square",ji);var Vi=[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]],je=Q("x",Vi);import{useCallback as ul}from"react";import{useCallback as Ue,useMemo as $i,useRef as Xi,useState as no}from"react";var Qi={damping:.7,stiffness:.05,mass:1.25},Ki=70,Ji=1e3/60,Zi=350,Kt=!1;globalThis.document?.addEventListener("mousedown",()=>{Kt=!0});globalThis.document?.addEventListener("mouseup",()=>{Kt=!1});globalThis.document?.addEventListener("click",()=>{Kt=!1});var Rr=(e={})=>{let[t,a]=no(!1),[o,r]=no(e.initial!==!1),[s,n]=no(!1),i=Xi(null);i.current=e;let l=Ue(()=>{if(!Kt)return!1;let g=window.getSelection();if(!g||!g.rangeCount)return!1;let h=g.getRangeAt(0);return h.commonAncestorContainer.contains(C.current)||C.current?.contains(h.commonAncestorContainer)},[]),u=Ue(g=>{d.isAtBottom=g,r(g)},[]),f=Ue(g=>{d.escapedFromLock=g,a(g)},[]),d=$i(()=>{let g;return{escapedFromLock:t,isAtBottom:o,resizeDifference:0,accumulated:0,velocity:0,listeners:new Set,get scrollTop(){return C.current?.scrollTop??0},set scrollTop(h){C.current&&(C.current.scrollTop=h,d.ignoreScrollToTop=C.current.scrollTop)},get targetScrollTop(){return!C.current||!x.current?0:C.current.scrollHeight-1-C.current.clientHeight},get calculatedTargetScrollTop(){if(!C.current||!x.current)return 0;let{targetScrollTop:h}=this;if(!e.targetScrollTop)return h;if(g?.targetScrollTop===h)return g.calculatedScrollTop;let L=Math.max(Math.min(e.targetScrollTop(h,{scrollElement:C.current,contentElement:x.current}),h),0);return g={targetScrollTop:h,calculatedScrollTop:L},requestAnimationFrame(()=>{g=void 0}),L},get scrollDifference(){return this.calculatedTargetScrollTop-this.scrollTop},get isNearBottom(){return this.scrollDifference<=Ki}}},[]),c=Ue((g={})=>{typeof g=="string"&&(g={animation:g}),g.preserveScrollPosition||u(!0);let h=Date.now()+(Number(g.wait)||0),L=lo(i.current,g.animation),{ignoreEscapes:w=!1}=g,b,P=d.calculatedTargetScrollTop;g.duration instanceof Promise?g.duration.finally(()=>{b=Date.now()}):b=h+(g.duration??0);let y=async()=>{let D=new Promise(requestAnimationFrame).then(()=>{if(!d.isAtBottom)return d.animation=void 0,!1;let{scrollTop:v}=d,F=performance.now(),k=(F-(d.lastTick??F))/Ji;if(d.animation||(d.animation={behavior:L,promise:D,ignoreEscapes:w}),d.animation.behavior===L&&(d.lastTick=F),l()||h>Date.now())return y();if(v<Math.min(P,d.calculatedTargetScrollTop)){if(d.animation?.behavior===L){if(L==="instant")return d.scrollTop=d.calculatedTargetScrollTop,y();d.velocity=(L.damping*d.velocity+L.stiffness*d.scrollDifference)/L.mass,d.accumulated+=d.velocity*k,d.scrollTop+=d.accumulated,d.scrollTop!==v&&(d.accumulated=0)}return y()}return b>Date.now()?(P=d.calculatedTargetScrollTop,y()):(d.animation=void 0,d.scrollTop<d.calculatedTargetScrollTop?c({animation:lo(i.current,i.current.resize),ignoreEscapes:w,duration:Math.max(0,b-Date.now())||void 0}):d.isAtBottom)});return D.then(v=>(requestAnimationFrame(()=>{d.animation||(d.lastTick=void 0,d.velocity=0)}),v))};return g.wait!==!0&&(d.animation=void 0),d.animation?.behavior===L?d.animation.promise:y()},[u,l,d]),p=Ue(()=>{f(!0),u(!1)},[f,u]),m=Ue(({target:g})=>{if(g!==C.current)return;let{scrollTop:h,ignoreScrollToTop:L}=d,{lastScrollTop:w=h}=d;d.lastScrollTop=h,d.ignoreScrollToTop=void 0,L&&L>h&&(w=L),n(d.isNearBottom),setTimeout(()=>{if(d.resizeDifference||h===L)return;if(l()){f(!0),u(!1);return}let b=h>w,P=h<w;if(d.animation?.ignoreEscapes){d.scrollTop=w;return}P&&(f(!0),u(!1)),b&&f(!1),!d.escapedFromLock&&d.isNearBottom&&u(!0)},1)},[f,u,l,d]),I=Ue(({target:g,deltaY:h})=>{let L=g;for(;!["scroll","auto"].includes(getComputedStyle(L).overflow);){if(!L.parentElement)return;L=L.parentElement}L===C.current&&h<0&&C.current.scrollHeight>C.current.clientHeight&&!d.animation?.ignoreEscapes&&(f(!0),u(!1))},[f,u,d]),C=Mr(g=>{C.current?.removeEventListener("scroll",m),C.current?.removeEventListener("wheel",I),g?.addEventListener("scroll",m,{passive:!0}),g?.addEventListener("wheel",I,{passive:!0})},[]),x=Mr(g=>{if(d.resizeObserver?.disconnect(),!g)return;let h;d.resizeObserver=new ResizeObserver(([L])=>{let{height:w}=L.contentRect,b=w-(h??w);if(d.resizeDifference=b,d.scrollTop>d.targetScrollTop&&(d.scrollTop=d.targetScrollTop),n(d.isNearBottom),b>=0){let P=lo(i.current,h?i.current.resize:i.current.initial);c({animation:P,wait:!0,preserveScrollPosition:!0,duration:P==="instant"?void 0:Zi})}else d.isNearBottom&&(f(!1),u(!0));h=w,requestAnimationFrame(()=>{setTimeout(()=>{d.resizeDifference===b&&(d.resizeDifference=0)},1)})}),d.resizeObserver?.observe(g)},[]);return{contentRef:x,scrollRef:C,scrollToBottom:c,stopScroll:p,isAtBottom:o||s,isNearBottom:s,escapedFromLock:t,state:d}};function Mr(e,t){let a=Ue(o=>(a.current=o,e(o)),t);return a}var io=new Map;function lo(...e){let t={...Qi},a=!1;for(let r of e){if(r==="instant"){a=!0;continue}typeof r=="object"&&(a=!1,t.damping=r.damping??t.damping,t.stiffness=r.stiffness??t.stiffness,t.mass=r.mass??t.mass)}let o=JSON.stringify(t);return io.has(o)||io.set(o,Object.freeze(t)),a?"instant":io.get(o)}import*as Ve from"react";import{createContext as Yi,useContext as el,useEffect as tl,useImperativeHandle as al,useLayoutEffect as ol,useMemo as rl,useRef as sl}from"react";var Fr=Yi(null),nl=typeof window<"u"?ol:tl;function St({instance:e,children:t,resize:a,initial:o,mass:r,damping:s,stiffness:n,targetScrollTop:i,contextRef:l,...u}){let f=sl(null),d=Ve.useCallback((w,b)=>(L?.targetScrollTop??i)?.(w,b)??w,[i]),c=Rr({mass:r,damping:s,stiffness:n,resize:a,initial:o,targetScrollTop:d}),{scrollRef:p,contentRef:m,scrollToBottom:I,stopScroll:C,isAtBottom:x,escapedFromLock:g,state:h}=e??c,L=rl(()=>({scrollToBottom:I,stopScroll:C,scrollRef:p,isAtBottom:x,escapedFromLock:g,contentRef:m,state:h,get targetScrollTop(){return f.current},set targetScrollTop(w){f.current=w}}),[I,x,m,p,C,g,h]);return al(l,()=>L,[L]),nl(()=>{p.current&&getComputedStyle(p.current).overflow==="visible"&&(p.current.style.overflow="auto")},[]),Ve.createElement(Fr.Provider,{value:L},Ve.createElement("div",{...u},typeof t=="function"?t(L):t))}(function(e){function t({children:a,scrollClassName:o,...r}){let s=uo();return Ve.createElement("div",{ref:s.scrollRef,style:{height:"100%",width:"100%",scrollbarGutter:"stable both-edges"},className:o},Ve.createElement("div",{...r,ref:s.contentRef},typeof a=="function"?a(s):a))}e.Content=t})(St||(St={}));function uo(){let e=el(Fr);if(!e)throw new Error("use-stick-to-bottom component context must be used within a StickToBottom component");return e}var il=hr({prefix:"ww"});function T(...e){return il(mr(e))}import{jsx as ll}from"react/jsx-runtime";var ke=({className:e,variant:t="default",size:a="default",type:o="button",...r})=>ll("button",{type:o,className:T("ww:inline-flex ww:cursor-pointer ww:items-center ww:justify-center ww:rounded-md ww:font-medium ww:transition-colors ww:disabled:pointer-events-none ww:disabled:opacity-50",t==="default"&&"ww:bg-primary ww:text-primary-foreground ww:hover:bg-primary/90",t==="outline"&&"ww:border ww:border-border ww:bg-background ww:hover:bg-accent ww:hover:text-accent-foreground",t==="ghost"&&"ww:hover:bg-accent ww:hover:text-accent-foreground",a==="default"&&"ww:h-9 ww:px-4 ww:py-2 ww:text-sm",a==="sm"&&"ww:h-8 ww:px-3 ww:text-xs",a==="icon"&&"ww:size-9 ww:!rounded-full",a==="icon-sm"&&"ww:size-7 ww:!rounded-full",e),...r});import{jsx as Jt}from"react/jsx-runtime";var Br=({className:e,...t})=>Jt(St,{className:T("ww:relative ww:flex-1 ww:overflow-y-hidden",e),initial:"smooth",resize:"smooth",role:"log",...t}),Dr=({className:e,...t})=>Jt(St.Content,{className:T("ww:flex ww:flex-col ww:gap-6 ww:px-4 ww:py-6 ww:mx-auto ww:w-full ww:max-w-3xl",e),...t}),Er=({className:e,...t})=>{let{isAtBottom:a,scrollToBottom:o}=uo(),r=ul(()=>{o()},[o]);return!a&&Jt(ke,{className:T("ww:absolute ww:bottom-4 ww:left-[50%] ww:translate-x-[-50%] ww:rounded-full",e),onClick:r,size:"icon",variant:"outline",...t,children:Jt(ze,{className:"ww:size-4"})})};import Nr from"crypto";var _r="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";var dl=128,$e,nt,fl=e=>{!$e||$e.length<e?($e=Buffer.allocUnsafe(e*dl),Nr.randomFillSync($e),nt=0):nt+e>$e.length&&(Nr.randomFillSync($e),nt=0),nt+=e};var yt=(e=21)=>{fl(e|=0);let t="";for(let a=nt-e;a<nt;a++)t+=_r[$e[a]&63];return t};import{createContext as cl,useCallback as Be,useContext as pl,useEffect as fo,useMemo as ml,useRef as co,useState as Or}from"react";import{jsx as Pe,jsxs as qr}from"react/jsx-runtime";var hl=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}},Ur=cl(null),Hr=()=>{let e=pl(Ur);if(!e)throw new Error("usePromptInputAttachments must be used within a PromptInput");return e},Zt=({className:e,accept:t,multiple:a,globalDrop:o,maxFiles:r,maxFileSize:s,onSubmit:n,children:i,...l})=>{let u=co(null),f=co(null),[d,c]=Or([]),p=co(d);fo(()=>{p.current=d},[d]);let m=Be(()=>{u.current?.click()},[]),I=Be(w=>{let b=[...w];if(b.length===0)return;let P=D=>s?D.size<=s:!0,y=b.filter(P);c(D=>{let v=typeof r=="number"?Math.max(0,r-D.length):void 0,F=typeof v=="number"?y.slice(0,v):y;return[...D,...F.map(k=>({filename:k.name,id:yt(),mediaType:k.type,type:"file",url:URL.createObjectURL(k)}))]})},[r,s]),C=Be(w=>{c(b=>{let P=b.find(y=>y.id===w);return P?.url&&URL.revokeObjectURL(P.url),b.filter(y=>y.id!==w)})},[]),x=Be(()=>{c(w=>{for(let b of w)b.url&&URL.revokeObjectURL(b.url);return[]})},[]);fo(()=>()=>{for(let w of p.current)w.url&&URL.revokeObjectURL(w.url)},[]);let g=Be(w=>{w.currentTarget.files&&I(w.currentTarget.files),w.currentTarget.value=""},[I]);fo(()=>{if(!o)return;let w=P=>{P.dataTransfer?.types?.includes("Files")&&P.preventDefault()},b=P=>{P.dataTransfer?.types?.includes("Files")&&P.preventDefault(),P.dataTransfer?.files&&P.dataTransfer.files.length>0&&I(P.dataTransfer.files)};return document.addEventListener("dragover",w),document.addEventListener("drop",b),()=>{document.removeEventListener("dragover",w),document.removeEventListener("drop",b)}},[I,o]);let h=Be(async w=>{w.preventDefault();let b=w.currentTarget,y=new FormData(b).get("message")||"";b.reset();let D=await Promise.all(d.map(async({id:v,...F})=>{if(F.url?.startsWith("blob:")){let k=await hl(F.url);return{...F,url:k??F.url}}return F}));try{let v=n({files:D,text:y},w);v instanceof Promise&&await v,x()}catch{}},[d,n,x]),L=ml(()=>({add:I,clear:x,files:d,openFileDialog:m,remove:C}),[d,I,C,x,m]);return qr(Ur.Provider,{value:L,children:[Pe("input",{accept:t,"aria-label":"Upload files",className:"ww:hidden",multiple:a,onChange:g,ref:u,title:"Upload files",type:"file"}),Pe("form",{className:T("ww:flex ww:w-full ww:flex-col ww:rounded-lg ww:border ww:border-border ww:bg-background",e),onSubmit:h,ref:f,...l,children:i})]})};var Yt=({onChange:e,onKeyDown:t,className:a,placeholder:o="What would you like to know?",...r})=>{let s=Hr(),[n,i]=Or(!1),l=Be(f=>{if(t?.(f),!f.defaultPrevented){if(f.key==="Enter"){if(n||f.nativeEvent.isComposing||f.shiftKey)return;f.preventDefault();let{form:d}=f.currentTarget;if(d?.querySelector('button[type="submit"]')?.disabled)return;d?.requestSubmit()}if(f.key==="Backspace"&&f.currentTarget.value===""&&s.files.length>0){f.preventDefault();let d=s.files.at(-1);d&&s.remove(d.id)}}},[t,n,s]),u=Be(f=>{let d=f.clipboardData?.items;if(!d)return;let c=[];for(let p of d)if(p.kind==="file"){let m=p.getAsFile();m&&c.push(m)}c.length>0&&(f.preventDefault(),s.add(c))},[s]);return Pe("textarea",{className:T("ww:field-sizing-content ww:max-h-48 ww:min-h-0 ww:w-full ww:resize-none ww:border-0 ww:bg-transparent ww:px-3 ww:py-2 ww:text-sm ww:outline-none ww:placeholder:text-muted-foreground",a),name:"message",onCompositionEnd:()=>i(!1),onCompositionStart:()=>i(!0),onKeyDown:l,onPaste:u,placeholder:o,onChange:e,...r})},ea=({className:e,status:t,onStop:a,onClick:o,children:r,...s})=>{let n=t==="submitted"||t==="streaming",i=Pe(pt,{className:"ww:size-4"});t==="submitted"?i=Pe(Lt,{className:"ww:size-4 ww:animate-spin"}):t==="streaming"&&(i=Pe(It,{className:"ww:size-4"}));let l=Be(u=>{if(n&&a){u.preventDefault(),a();return}o?.(u)},[n,a,o]);return Pe(ke,{"aria-label":n?"Stop":"Submit",className:T("ww:bg-foreground ww:text-background ww:hover:bg-foreground ww:rounded-full",e),onClick:l,size:"icon-sm",type:n&&a?"button":"submit",variant:"ghost",...s,children:r??i})},ta=({className:e,children:t,...a})=>{let o=Hr();return o.files.length>0?qr(ke,{className:T("ww:group ww:relative",e),onClick:()=>o.clear(),size:"icon-sm",type:"button",variant:"ghost","aria-label":"Remove all attachments",...a,children:[Pe("span",{className:"ww:flex ww:size-5 ww:items-center ww:justify-center ww:rounded-full ww:bg-primary ww:text-[10px] ww:font-medium ww:text-primary-foreground ww:transition-opacity ww:group-hover:opacity-0",children:o.files.length}),Pe(je,{className:"ww:absolute ww:size-4 ww:opacity-0 ww:transition-opacity ww:group-hover:opacity-100"})]}):Pe(ke,{className:T(e),onClick:()=>o.openFileDialog(),size:"icon-sm",type:"button",variant:"ghost",...a,children:t??Pe(Ct,{className:"ww:size-4"})})};import{memo as gl,useCallback as wl}from"react";import{jsx as it}from"react/jsx-runtime";var Gr=({className:e,...t})=>it("div",{className:T("ww:flex ww:flex-col ww:gap-1 ww:px-3 ww:py-2",e),...t}),Wr=({className:e,...t})=>it("li",{className:T("ww:group ww:flex ww:items-center ww:gap-2 ww:rounded-md ww:px-2 ww:py-1 ww:text-sm ww:transition-colors ww:hover:bg-muted",e),...t}),zr=({className:e,...t})=>it("span",{className:T("ww:inline-block ww:size-2 ww:shrink-0 ww:rounded-full ww:border ww:border-muted-foreground/50",e),...t}),jr=({className:e,...t})=>it("span",{className:T("ww:line-clamp-1 ww:grow ww:break-words ww:text-muted-foreground",e),...t}),Vr=({className:e,...t})=>it("div",{className:T("ww:flex ww:shrink-0 ww:gap-1 ww:opacity-0 ww:transition-opacity ww:group-hover:opacity-100",e),...t}),$r=({className:e,...t})=>it(ke,{className:T("ww:size-auto ww:rounded ww:p-1 ww:text-muted-foreground ww:hover:bg-muted-foreground/10 ww:hover:text-foreground",e),size:"icon",type:"button",variant:"ghost",...t});import{jsx as Xe,jsxs as po}from"react/jsx-runtime";var Xr=gl(({message:e,onRemove:t})=>{let a=wl(()=>t(e.id),[t,e.id]);return po(Wr,{children:[Xe(zr,{}),Xe(jr,{children:e.text||"(attachment)"}),Xe(Vr,{children:Xe($r,{"aria-label":"Remove from queue",onClick:a,children:Xe(je,{className:"ww:size-3"})})})]})});Xr.displayName="ChatQueueItem";function aa({queuedMessages:e,onRemove:t,className:a}){return e.length===0?null:po(Gr,{className:T("ww:border-t ww:border-border",a),children:[po("div",{className:"ww:text-[11px] ww:font-medium ww:text-muted-foreground ww:px-2",children:[e.length," queued"]}),Xe("ul",{children:e.map(o=>Xe(Xr,{message:o,onRemove:t},o.id))})]})}import{useState as Qr}from"react";import{jsx as xl}from"react/jsx-runtime";function Kr({messages:e,evalEnabled:t,api:a="/api/waniwani"}){let[o,r]=Qr(!1),[s,n]=Qr(null),i=async()=>{let u={name:`session-${new Date().toISOString().slice(0,19)}`,type:"functional",messages:e,mode:"manual"};r(!0),n(null);try{let f=await fetch(`${a}/scenarios`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(u)});if(!f.ok)throw new Error(`${f.status}`);n("saved")}catch{n("error")}finally{r(!1),setTimeout(()=>n(null),2e3)}};return!t||e.length===0?null:xl("button",{type:"button",onClick:i,disabled:o,title:"Save scenario to WaniWani",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:o?"saving...":s==="saved"?"saved":s==="error"?"error":"export"})}import{jsx as kt,jsxs as Cl}from"react/jsx-runtime";var Jr=({files:e,className:t,...a})=>e.length===0?null:kt("div",{className:T("ww:flex ww:flex-wrap ww:gap-1.5",t),...a,children:e.map((o,r)=>kt(Ll,{file:o},r))});function Ll({file:e}){return e.mediaType?.startsWith("image/")&&e.url?kt("img",{src:e.url,alt:e.filename??"attachment",className:"ww:h-16 ww:max-w-32 ww:rounded ww:object-cover"}):Cl("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:[kt(xt,{className:"ww:size-3 ww:shrink-0"}),kt("span",{className:"ww:max-w-24 ww:truncate",children:e.filename??"file"})]})}import{jsx as Zr}from"react/jsx-runtime";var mo=({className:e,size:t=5,...a})=>Zr("div",{className:T("ww:flex ww:items-center ww:gap-1",e),...a,children:[0,1,2].map(o=>Zr("div",{className:"ww:rounded-full ww:bg-muted-foreground/60",style:{width:t,height:t,animation:"ww-pulse 1.4s ease-in-out infinite",animationDelay:`${o*.2}s`}},o))});var de={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 ve={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 Le={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 Yr(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 es(e){return e===12288||e>=65281&&e<=65376||e>=65504&&e<=65510}function ts(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 Yr(e)?"ambiguous":es(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":ts(e)?"wide":"neutral"}function Il(e){if(!Number.isSafeInteger(e))throw new TypeError(`Expected a code point, got \`${typeof e}\`.`)}function os(e){return Il(e),as(e)}var Sl=Object.defineProperty,yl=(e,t,a)=>t in e?Sl(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a,kl=(e,t,a)=>yl(e,typeof t!="symbol"?t+"":t,a);function bl(e){return/^\p{Emoji_Presentation}/u.test(String.fromCodePoint(e))}function Tl(e){if(!e||e<4352)return!1;switch(os(e)){case"fullwidth":case"halfwidth":return!0;case"wide":return!bl(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 Pl(e,t){return t!==65025||!e||e<8216?!1:e===8216||e===8217||e===8220||e===8221}function Al(e){return e!==null&&e>=65024&&e<=65038}var vl=rs(/\p{P}|\p{S}/u),Ml=rs(/\s/);function rs(e){return t;function t(a){return a!==null&&a>-1&&e.test(String.fromCodePoint(a))}}var Ce;(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})(Ce||(Ce={}));function He(e){if(e===de.eof||gr(e)||Ml(e))return ve.characterGroupWhitespace;let t=0;if(e>=4352){if(Al(e))return Ce.nonEmojiGeneralUseVS;switch(Tl(e)){case null:return Ce.ivs;case!0:t|=Ce.cjk;break}}return vl(e)&&(t|=ve.characterGroupPunctuation),t}function oa(e,t,a){if(!Fl(e))return e;let o=t(),r=He(o);return!o||Qe(r)?e:Pl(o,a)?Ce.cjkPunctuation:Rl(r)}function Rl(e){return e&~Ce.ivs}function Qe(e){return!!(e&ve.characterGroupWhitespace)}function lt(e){return(e&Ce.cjkPunctuation)===ve.characterGroupPunctuation}function bt(e){return!!(e&Ce.cjk)}function ss(e){return e===Ce.ivs}function ns(e){return!!(e&Ce.cjkOrIvs)}function Fl(e){return e===Ce.nonEmojiGeneralUseVS}function ho(e){return!!(e&Ce.spaceOrPunctuation)}function ra(e){return!!(e&&e>=55296&&e<=56319)}function sa(e){return!!(e&&e>=56320&&e<=57343)}function na(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 Bl(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 ia=class{constructor(e,t,a){this.previousCode=e,this.nowPoint=t,this.sliceSerialize=a,kl(this,"cachedValue")}value(){return this.cachedValue===void 0&&(this.cachedValue=Bl(this.previousCode,this.nowPoint,this.sliceSerialize)),this.cachedValue}};function la(e,t,a){let o=a({start:t,end:{...t,_bufferIndex:t._bufferIndex+2}}).codePointAt(0);return o&&o>=65536?o:e}var go={name:"attention",resolveAll:Dl,tokenize:El};function Dl(e,t){let a=-1,o,r,s,n,i,l,u,f;for(;++a<e.length;)if(e[a][0]==="enter"&&e[a][1].type==="attentionSequence"&&e[a][1]._close){for(o=a;o--;)if(e[o][0]==="exit"&&e[o][1].type==="attentionSequence"&&e[o][1]._open&&t.sliceSerialize(e[o][1]).charCodeAt(0)===t.sliceSerialize(e[a][1]).charCodeAt(0)){if((e[o][1]._close||e[a][1]._open)&&(e[a][1].end.offset-e[a][1].start.offset)%3&&!((e[o][1].end.offset-e[o][1].start.offset+e[a][1].end.offset-e[a][1].start.offset)%3))continue;l=e[o][1].end.offset-e[o][1].start.offset>1&&e[a][1].end.offset-e[a][1].start.offset>1?2:1;let d={...e[o][1].end},c={...e[a][1].start};is(d,-l),is(c,l),n={type:l>1?Le.strongSequence:Le.emphasisSequence,start:d,end:{...e[o][1].end}},i={type:l>1?Le.strongSequence:Le.emphasisSequence,start:{...e[a][1].start},end:c},s={type:l>1?Le.strongText:Le.emphasisText,start:{...e[o][1].end},end:{...e[a][1].start}},r={type:l>1?Le.strong:Le.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=rt(u,[["enter",e[o][1],t],["exit",e[o][1],t]])),u=rt(u,[["enter",r,t],["enter",n,t],["exit",n,t],["enter",s,t]]),t.parser.constructs.insideSpan.null,u=rt(u,$t(t.parser.constructs.insideSpan.null,e.slice(o+1,a),t)),u=rt(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=rt(u,[["enter",e[a][1],t],["exit",e[a][1],t]])):f=0,ot(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 El(e,t){let a=this.parser.constructs.attentionMarkers.null,{now:o,sliceSerialize:r,previous:s}=this,n=sa(s)?na(s,o(),r):s,i=He(n),l=new ia(n,o(),r),u=oa(i,l.value.bind(l),n),f;return d;function d(p){return p===de.asterisk||de.underscore,f=p,e.enter("attentionSequence"),c(p)}function c(p){if(p===f)return e.consume(p),c;let m=e.exit("attentionSequence"),I=ra(p)?la(p,o(),r):p,C=He(I);let x=lt(u),g=x||Qe(u),h=lt(C),L=h||Qe(C),w=ns(u),b=!L||h&&(g||w)||a.includes(p),P=!g||x&&(L||bt(C))||a.includes(n);return m._open=!!(f===de.asterisk?b:b&&(ho(u)||!P)),m._close=!!(f===de.asterisk?P:P&&(ho(C)||!b)),t(p)}}function is(e,t){e.column+=t,e.offset+=t,e._bufferIndex+=t}function ls(){return{text:{[de.asterisk]:go,[de.underscore]:go},insideSpan:{null:[go]}}}function us(){let e=this.data();(e.micromarkExtensions||(e.micromarkExtensions=[])).push(ls())}function ds(e){let a=(e||{}).singleTilde,o={name:"strikethrough",tokenize:s,resolveAll:r};return a==null&&(a=!0),{text:{[de.tilde]:o},insideSpan:{null:[o]},attentionMarkers:{null:[de.tilde]}};function r(n,i){let l=-1;for(;++l<n.length;)if(n[l][0]==="enter"&&n[l][1].type==="strikethroughSequenceTemporary"&&n[l][1]._close){let u=l;for(;u--;)if(n[u][0]==="exit"&&n[u][1].type==="strikethroughSequenceTemporary"&&n[u][1]._open&&n[l][1].end.offset-n[l][1].start.offset===n[u][1].end.offset-n[u][1].start.offset){n[l][1].type="strikethroughSequence",n[u][1].type="strikethroughSequence";let f={type:"strikethrough",start:Object.assign({},n[u][1].start),end:Object.assign({},n[l][1].end)},d={type:"strikethroughText",start:Object.assign({},n[u][1].end),end:Object.assign({},n[l][1].start)},c=[["enter",f,i],["enter",n[u][1],i],["exit",n[u][1],i],["enter",d,i]],p=i.parser.constructs.insideSpan.null;p&&ot(c,c.length,0,$t(p,n.slice(u+1,l),i)),ot(c,c.length,0,[["exit",d,i],["enter",n[l][1],i],["exit",n[l][1],i],["exit",f,i]]),ot(n,u-1,l-u+3,c),l=u+c.length-2;break}}for(l=-1;++l<n.length;)n[l][1].type==="strikethroughSequenceTemporary"&&(n[l][1].type=Le.data);return n}function s(n,i,l){let{now:u,sliceSerialize:f,previous:d}=this,c=sa(d)?na(d,u(),f):d,p=He(c),m=new ia(c,u(),f),I=oa(p,m.value.bind(m),c),C=this.events,x=0;return g;function g(L){return de.tilde,c===de.tilde&&C[C.length-1][1].type!==Le.characterEscape?l(L):(n.enter("strikethroughSequenceTemporary"),h(L))}function h(L){let w=He(c);if(L===de.tilde)return x>1?l(L):(n.consume(L),x++,h);if(x<2&&!a)return l(L);let b=n.exit("strikethroughSequenceTemporary"),P=ra(L)?la(L,u(),f):L,y=He(P),v=lt(I)||Qe(I),k=lt(y)||Qe(y),B=bt(I)||ss(w);return b._open=!k||y===ve.attentionSideAfter&&(v||B),b._close=!v||w===ve.attentionSideAfter&&(k||bt(y)),i(L)}}}function fs(e){let t=this.data();(t.micromarkExtensions||(t.micromarkExtensions=[])).push(ds(e))}var _l=new Set(["\u3002","\uFF0E","\uFF0C","\u3001","\uFF1F","\uFF01","\uFF1A","\uFF1B","\uFF08","\uFF09","\u3010","\u3011","\u300C","\u300D","\u300E","\u300F","\u3008","\u3009","\u300A","\u300B"]),Nl=/^(https?:\/\/|mailto:|www\.)/i,Ol=e=>{if(e.children.length!==1)return!1;let t=e.children[0];return t.type==="text"&&t.value===e.url},Ul=e=>{let t=0;for(let a of e){if(_l.has(a))return t;t+=a.length}return null},Hl=(e,t)=>({...t,url:e,children:[{type:"text",value:e}]}),ql=e=>({type:"text",value:e}),Gl=()=>e=>{wr(e,"link",(t,a,o)=>{if(!o||typeof a!="number"||!Ol(t)||!Nl.test(t.url))return;let r=Ul(t.url);if(r===null||r===0)return;let s=t.url.slice(0,r),n=t.url.slice(r),i=Hl(s,t),l=ql(n);return o.children.splice(a,1,i,l),a+1})};function Wl(){let e=[us],t=[Gl,fs],a=[...e,...t];return{name:"cjk",type:"cjk",remarkPluginsBefore:e,remarkPluginsAfter:t,remarkPlugins:a}}var cs=Wl();var Z=class extends Error{constructor(t){super(t),this.name="ShikiError"}};function zl(e){return To(e)}function To(e){return Array.isArray(e)?jl(e):e instanceof RegExp?e:typeof e=="object"?Vl(e):e}function jl(e){let t=[];for(let a=0,o=e.length;a<o;a++)t[a]=To(e[a]);return t}function Vl(e){let t={};for(let a in e)t[a]=To(e[a]);return t}function Is(e,...t){return t.forEach(a=>{for(let o in a)e[o]=a[o]}),e}function Ss(e){let t=~e.lastIndexOf("/")||~e.lastIndexOf("\\");return t===0?e:~t===e.length-1?Ss(e.substring(0,e.length-1)):e.substr(~t+1)}var wo=/\$(\d+)|\${(\d+):\/(downcase|upcase)}/g,ua=class{static hasCaptures(e){return e===null?!1:(wo.lastIndex=0,wo.test(e))}static replaceCaptures(e,t,a){return e.replace(wo,(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 ys(e,t){return e<t?-1:e>t?1:0}function ks(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=ys(e[r],t[r]);if(s!==0)return s}return 0}return a-o}function ps(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 bs(e){return e.replace(/[\-\\\{\}\*\+\?\|\^\$\.\,\[\]\(\)\#\s]/g,"\\$&")}var Ts=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}},At=class{constructor(e,t,a){this._colorMap=e,this._defaults=t,this._root=a}static createFromRawTheme(e,t){return this.createFromParsedTheme(Ql(e),t)}static createFromParsedTheme(e,t){return Jl(e,t)}_cachedMatchRoot=new Ts(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=>$l(e.parent,r.parentScopes));return o?new Ps(o.fontStyle,o.foreground,o.background):null}},xo=class da{constructor(t,a){this.parent=t,this.scopeName=a}static push(t,a){for(let o of a)t=new da(t,o);return t}static from(...t){let a=null;for(let o=0;o<t.length;o++)a=new da(a,t[o]);return a}push(t){return new da(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 $l(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&&!Xl(e.scopeName,o);){if(r)return!1;e=e.parent}if(!e)return!1;e=e.parent}return!0}function Xl(e,t){return t===e||e.startsWith(t)&&e[t.length]==="."}var Ps=class{constructor(e,t,a){this.fontStyle=e,this.foregroundId=t,this.backgroundId=a}};function Ql(e){if(!e)return[];if(!e.settings||!Array.isArray(e.settings))return[];let t=e.settings,a=[],o=0;for(let r=0,s=t.length;r<s;r++){let n=t[r];if(!n.settings)continue;let i;if(typeof n.scope=="string"){let d=n.scope;d=d.replace(/^[,]+/,""),d=d.replace(/[,]+$/,""),i=d.split(",")}else Array.isArray(n.scope)?i=n.scope:i=[""];let l=-1;if(typeof n.settings.fontStyle=="string"){l=0;let d=n.settings.fontStyle.split(" ");for(let c=0,p=d.length;c<p;c++)switch(d[c]){case"italic":l=l|1;break;case"bold":l=l|2;break;case"underline":l=l|4;break;case"strikethrough":l=l|8;break}}let u=null;typeof n.settings.foreground=="string"&&ps(n.settings.foreground)&&(u=n.settings.foreground);let f=null;typeof n.settings.background=="string"&&ps(n.settings.background)&&(f=n.settings.background);for(let d=0,c=i.length;d<c;d++){let m=i[d].trim().split(" "),I=m[m.length-1],C=null;m.length>1&&(C=m.slice(0,m.length-1),C.reverse()),a[o++]=new Kl(I,C,r,l,u,f)}}return a}var Kl=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}},fe=(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))(fe||{});function Jl(e,t){e.sort((l,u)=>{let f=ys(l.scope,u.scope);return f!==0||(f=ks(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 Zl(t),n=new Ps(a,s.getId(o),s.getId(r)),i=new eu(new Co(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 At(s,n,i)}var Zl=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)}},Yl=Object.freeze([]),Co=class As{scopeDepth;parentScopes;fontStyle;foreground;background;constructor(t,a,o,r,s){this.scopeDepth=t,this.parentScopes=a||Yl,this.fontStyle=o,this.foreground=r,this.background=s}clone(){return new As(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)}},eu=class Io{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(Io._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 Io(this._mainRule.clone(),Co.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(ks(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 Co(t,a,o,r,s))}},Je=class be{static toBinaryStr(t){return t.toString(2).padStart(32,"0")}static print(t){let a=be.getLanguageId(t),o=be.getTokenType(t),r=be.getFontStyle(t),s=be.getForeground(t),n=be.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=be.getLanguageId(t),u=be.getTokenType(t),f=be.containsBalancedBrackets(t)?1:0,d=be.getFontStyle(t),c=be.getForeground(t),p=be.getBackground(t);return a!==0&&(l=a),o!==8&&(u=o),r!==null&&(f=r?1:0),s!==-1&&(d=s),n!==0&&(c=n),i!==0&&(p=i),(l<<0|u<<8|f<<10|d<<11|c<<15|p<<24)>>>0}};function ca(e,t){let a=[],o=tu(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(ms(r)){let l=[];do l.push(r),r=o.next();while(ms(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 ms(e){return!!e&&!!e.match(/[\w\.:]+/)}function tu(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 vs(e){typeof e.dispose=="function"&&e.dispose()}var vt=class{constructor(e){this.scopeName=e}toKey(){return this.scopeName}},au=class{constructor(e,t){this.scopeName=e,this.ruleName=t}toKey(){return`${this.scopeName}#${this.ruleName}`}},ou=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))}},ru=class{constructor(e,t){this.repo=e,this.initialScopeName=t,this.seenFullScopeRequests.add(this.initialScopeName),this.Q=[new vt(this.initialScopeName)]}seenFullScopeRequests=new Set;seenPartialScopeRequests=new Set;Q;processQueue(){let e=this.Q;this.Q=[];let t=new ou;for(let a of e)su(a,this.initialScopeName,this.repo,t);for(let a of t.references)if(a instanceof vt){if(this.seenFullScopeRequests.has(a.scopeName))continue;this.seenFullScopeRequests.add(a.scopeName),this.Q.push(a)}else{if(this.seenFullScopeRequests.has(a.scopeName)||this.seenPartialScopeRequests.has(a.toKey()))continue;this.seenPartialScopeRequests.add(a.toKey()),this.Q.push(a)}}};function su(e,t,a,o){let r=a.lookup(e.scopeName);if(!r){if(e.scopeName===t)throw new Error(`No grammar provided for <${t}>`);return}let s=a.lookup(t);e instanceof vt?fa({baseGrammar:s,selfGrammar:r},o):So(e.ruleName,{baseGrammar:s,selfGrammar:r,repository:r.repository},o);let n=a.injections(e.scopeName);if(n)for(let i of n)o.add(new vt(i))}function So(e,t,a){if(t.repository&&t.repository[e]){let o=t.repository[e];pa([o],t,a)}}function fa(e,t){e.selfGrammar.patterns&&Array.isArray(e.selfGrammar.patterns)&&pa(e.selfGrammar.patterns,{...e,repository:e.selfGrammar.repository},t),e.selfGrammar.injections&&pa(Object.values(e.selfGrammar.injections),{...e,repository:e.selfGrammar.repository},t)}function pa(e,t,a){for(let o of e){if(a.visitedRule.has(o))continue;a.visitedRule.add(o);let r=o.repository?Is({},t.repository,o.repository):t.repository;Array.isArray(o.patterns)&&pa(o.patterns,{...t,repository:r},a);let s=o.include;if(!s)continue;let n=Ms(s);switch(n.kind){case 0:fa({...t,selfGrammar:t.baseGrammar},a);break;case 1:fa(t,a);break;case 2:So(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?So(n.ruleName,l,a):fa(l,a)}else n.kind===4?a.add(new au(n.scopeName,n.ruleName)):a.add(new vt(n.scopeName));break}}}var nu=class{kind=0},iu=class{kind=1},lu=class{constructor(e){this.ruleName=e}kind=2},uu=class{constructor(e){this.scopeName=e}kind=3},du=class{constructor(e,t){this.scopeName=e,this.ruleName=t}kind=4};function Ms(e){if(e==="$base")return new nu;if(e==="$self")return new iu;let t=e.indexOf("#");if(t===-1)return new uu(e);if(t===0)return new lu(e.substring(1));{let a=e.substring(0,t),o=e.substring(t+1);return new du(a,o)}}var fu=/\\(\d+)/,hs=/\\(\d+)/g;var cu=-1,Rs=-2;var Ft=class{$location;id;_nameIsCapturing;_name;_contentNameIsCapturing;_contentName;constructor(e,t,a,o){this.$location=e,this.id=t,this._name=a||null,this._nameIsCapturing=ua.hasCaptures(this._name),this._contentName=o||null,this._contentNameIsCapturing=ua.hasCaptures(this._contentName)}get debugName(){let e=this.$location?`${Ss(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:ua.replaceCaptures(this._name,e,t)}getContentName(e,t){return!this._contentNameIsCapturing||this._contentName===null?this._contentName:ua.replaceCaptures(this._contentName,e,t)}},pu=class extends Ft{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!")}},mu=class extends Ft{_match;captures;_cachedCompiledPatterns;constructor(e,t,a,o,r){super(e,t,a,null),this._match=new Mt(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 Rt,this.collectPatterns(e,this._cachedCompiledPatterns)),this._cachedCompiledPatterns}},gs=class extends Ft{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 Rt,this.collectPatterns(e,this._cachedCompiledPatterns)),this._cachedCompiledPatterns}},yo=class extends Ft{_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 Mt(r,this.id),this.beginCaptures=s,this._end=new Mt(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 Rt;for(let a of this.patterns)e.getRule(a).collectPatterns(e,this._cachedCompiledPatterns);this.applyEndPatternLast?this._cachedCompiledPatterns.push(this._end.hasBackReferences?this._end.clone():this._end):this._cachedCompiledPatterns.unshift(this._end.hasBackReferences?this._end.clone():this._end)}return this._end.hasBackReferences&&(this.applyEndPatternLast?this._cachedCompiledPatterns.setSource(this._cachedCompiledPatterns.length()-1,t):this._cachedCompiledPatterns.setSource(0,t)),this._cachedCompiledPatterns}},ma=class extends Ft{_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 Mt(r,this.id),this.beginCaptures=s,this.whileCaptures=i,this._while=new Mt(n,Rs),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 Rt;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 Rt,this._cachedCompiledWhilePatterns.push(this._while.hasBackReferences?this._while.clone():this._while)),this._while.hasBackReferences&&this._cachedCompiledWhilePatterns.setSource(0,t||"\uFFFF"),this._cachedCompiledWhilePatterns}},Fs=class me{static createCaptureRule(t,a,o,r,s){return t.registerRule(n=>new pu(a,n,o,r,s))}static getCompiledRuleId(t,a,o){return t.id||a.registerRule(r=>{if(t.id=r,t.match)return new mu(t.$vscodeTextmateLocation,t.id,t.name,t.match,me._compileCaptures(t.captures,a,o));if(typeof t.begin>"u"){t.repository&&(o=Is({},o,t.repository));let s=t.patterns;return typeof s>"u"&&t.include&&(s=[{include:t.include}]),new gs(t.$vscodeTextmateLocation,t.id,t.name,t.contentName,me._compilePatterns(s,a,o))}return t.while?new ma(t.$vscodeTextmateLocation,t.id,t.name,t.contentName,t.begin,me._compileCaptures(t.beginCaptures||t.captures,a,o),t.while,me._compileCaptures(t.whileCaptures||t.captures,a,o),me._compilePatterns(t.patterns,a,o)):new yo(t.$vscodeTextmateLocation,t.id,t.name,t.contentName,t.begin,me._compileCaptures(t.beginCaptures||t.captures,a,o),t.end,me._compileCaptures(t.endCaptures||t.captures,a,o),t.applyEndPatternLast,me._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=me.getCompiledRuleId(t[n],a,o)),r[i]=me.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=Ms(i.include);switch(u.kind){case 0:case 1:l=me.getCompiledRuleId(o[i.include],a,o);break;case 2:let f=o[u.ruleName];f&&(l=me.getCompiledRuleId(f,a,o));break;case 3:case 4:let d=u.scopeName,c=u.kind===4?u.ruleName:null,p=a.getExternalGrammar(d,o);if(p)if(c){let m=p.repository[c];m&&(l=me.getCompiledRuleId(m,a,p.repository))}else l=me.getCompiledRuleId(p.repository.$self,a,p.repository);break}}else l=me.getCompiledRuleId(i,a,o);if(l!==-1){let u=a.getRule(l),f=!1;if((u instanceof gs||u instanceof yo||u instanceof ma)&&u.hasMissingPatterns&&u.patterns.length===0&&(f=!0),f)continue;r.push(l)}}return{patterns:r,hasMissingPatterns:(t?t.length:0)!==r.length}}},Mt=class Bs{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=fu.test(this.source):this.hasBackReferences=!1}clone(){return new Bs(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)=>bs(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}},Rt=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 ws(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 ws(e,o,this._items.map(r=>r.ruleId))}},ws=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}},Lo=class{constructor(e,t){this.languageId=e,this.tokenType=t}},hu=class ko{_defaultAttributes;_embeddedLanguagesMatcher;constructor(t,a){this._defaultAttributes=new Lo(t,8),this._embeddedLanguagesMatcher=new gu(Object.entries(a||{}))}getDefaultAttributes(){return this._defaultAttributes}getBasicScopeAttributes(t){return t===null?ko._NULL_SCOPE_METADATA:this._getBasicScopeAttributes.get(t)}static _NULL_SCOPE_METADATA=new Lo(0,0);_getBasicScopeAttributes=new Ts(t=>{let a=this._scopeToLanguage(t),o=this._toStandardTokenType(t);return new Lo(a,o)});_scopeToLanguage(t){return this._embeddedLanguagesMatcher.match(t)||0}_toStandardTokenType(t){let a=t.match(ko.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/},gu=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])=>bs(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])}},Wh={InDebugMode:typeof process<"u"&&!!process.env.VSCODE_TEXTMATE_DEBUG},Ds=!1,xs=class{constructor(e,t){this.stack=e,this.stoppedEarly=t}};function Es(e,t,a,o,r,s,n,i){let l=t.content.length,u=!1,f=-1;if(n){let p=wu(e,t,a,o,r,s);r=p.stack,o=p.linePos,a=p.isFirstLine,f=p.anchorPosition}let d=Date.now();for(;!u;){if(i!==0&&Date.now()-d>i)return new xs(r,!0);c()}return new xs(r,!1);function c(){let p=xu(e,t,a,o,r,f);if(!p){s.produce(r,l),u=!0;return}let m=p.captureIndices,I=p.matchedRuleId,C=m&&m.length>0?m[0].end>o:!1;if(I===cu){let x=r.getRule(e);s.produce(r,m[0].start),r=r.withContentNameScopesList(r.nameScopesList),Tt(e,t,a,r,s,x.endCaptures,m),s.produce(r,m[0].end);let g=r;if(r=r.parent,f=g.getAnchorPos(),!C&&g.getEnterPos()===o){r=g,s.produce(r,l),u=!0;return}}else{let x=e.getRule(I);s.produce(r,m[0].start);let g=r,h=x.getName(t.content,m),L=r.contentNameScopesList.pushAttributed(h,e);if(r=r.push(I,o,f,m[0].end===l,null,L,L),x instanceof yo){let w=x;Tt(e,t,a,r,s,w.beginCaptures,m),s.produce(r,m[0].end),f=m[0].end;let b=w.getContentName(t.content,m),P=L.pushAttributed(b,e);if(r=r.withContentNameScopesList(P),w.endHasBackReferences&&(r=r.withEndRule(w.getEndWithResolvedBackReferences(t.content,m))),!C&&g.hasSameRuleAs(r)){r=r.pop(),s.produce(r,l),u=!0;return}}else if(x instanceof ma){let w=x;Tt(e,t,a,r,s,w.beginCaptures,m),s.produce(r,m[0].end),f=m[0].end;let b=w.getContentName(t.content,m),P=L.pushAttributed(b,e);if(r=r.withContentNameScopesList(P),w.whileHasBackReferences&&(r=r.withEndRule(w.getWhileWithResolvedBackReferences(t.content,m))),!C&&g.hasSameRuleAs(r)){r=r.pop(),s.produce(r,l),u=!0;return}}else if(Tt(e,t,a,r,s,x.captures,m),s.produce(r,m[0].end),r=r.pop(),!C){r=r.safePop(),s.produce(r,l),u=!0;return}}m[0].end>o&&(o=m[0].end,a=!1)}}function wu(e,t,a,o,r,s){let n=r.beginRuleCapturedEOL?0:-1,i=[];for(let l=r;l;l=l.pop()){let u=l.getRule(e);u instanceof ma&&i.push({rule:u,stack:l})}for(let l=i.pop();l;l=i.pop()){let{ruleScanner:u,findOptions:f}=Iu(l.rule,e,l.stack.endRule,a,o===n),d=u.findNextMatchSync(t,o,f);if(d){if(d.ruleId!==Rs){r=l.stack.pop();break}d.captureIndices&&d.captureIndices.length&&(s.produce(l.stack,d.captureIndices[0].start),Tt(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 xu(e,t,a,o,r,s){let n=Lu(e,t,a,o,r,s),i=e.getInjections();if(i.length===0)return n;let l=Cu(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 Lu(e,t,a,o,r,s){let n=r.getRule(e),{ruleScanner:i,findOptions:l}=_s(n,e,r.endRule,a,o===s),u=i.findNextMatchSync(t,o,l);return u?{captureIndices:u.captureIndices,matchedRuleId:u.ruleId}:null}function Cu(e,t,a,o,r,s,n){let i=Number.MAX_VALUE,l=null,u,f=0,d=s.contentNameScopesList.getScopeNames();for(let c=0,p=e.length;c<p;c++){let m=e[c];if(!m.matcher(d))continue;let I=t.getRule(m.ruleId),{ruleScanner:C,findOptions:x}=_s(I,t,null,o,r===n),g=C.findNextMatchSync(a,r,x);if(!g)continue;let h=g.captureIndices[0].start;if(!(h>=i)&&(i=h,l=g.captureIndices,u=g.ruleId,f=m.priority,i===r))break}return l?{priorityMatch:f===-1,captureIndices:l,matchedRuleId:u}:null}function _s(e,t,a,o,r){if(Ds){let n=e.compile(t,a),i=Ns(o,r);return{ruleScanner:n,findOptions:i}}return{ruleScanner:e.compileAG(t,a,o,r),findOptions:0}}function Iu(e,t,a,o,r){if(Ds){let n=e.compileWhile(t,a),i=Ns(o,r);return{ruleScanner:n,findOptions:i}}return{ruleScanner:e.compileWhileAG(t,a,o,r),findOptions:0}}function Ns(e,t){let a=0;return e||(a|=1),t||(a|=4),a}function Tt(e,t,a,o,r,s,n){if(s.length===0)return;let i=t.content,l=Math.min(s.length,n.length),u=[],f=n[0].end;for(let d=0;d<l;d++){let c=s[d];if(c===null)continue;let p=n[d];if(p.length===0)continue;if(p.start>f)break;for(;u.length>0&&u[u.length-1].endPos<=p.start;)r.produceFromScopes(u[u.length-1].scopes,u[u.length-1].endPos),u.pop();if(u.length>0?r.produceFromScopes(u[u.length-1].scopes,p.start):r.produce(o,p.start),c.retokenizeCapturedWithRuleId){let I=c.getName(i,n),C=o.contentNameScopesList.pushAttributed(I,e),x=c.getContentName(i,n),g=C.pushAttributed(x,e),h=o.push(c.retokenizeCapturedWithRuleId,p.start,-1,!1,null,C,g),L=e.createOnigString(i.substring(0,p.end));Es(e,L,a&&p.start===0,p.start,h,r,!1,0),vs(L);continue}let m=c.getName(i,n);if(m!==null){let C=(u.length>0?u[u.length-1].scopes:o.contentNameScopesList).pushAttributed(m,e);u.push(new Su(C,p.end))}}for(;u.length>0;)r.produceFromScopes(u[u.length-1].scopes,u[u.length-1].endPos),u.pop()}var Su=class{scopes;endPos;constructor(e,t){this.scopes=e,this.endPos=t}};function yu(e,t,a,o,r,s,n,i){return new bu(e,t,a,o,r,s,n,i)}function Ls(e,t,a,o,r){let s=ca(t,ha),n=Fs.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 ha(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(ku(t[r],o))return a=r+1,!0;return!1})}function ku(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 bu=class{constructor(e,t,a,o,r,s,n,i){if(this._rootScopeName=e,this.balancedBracketSelectors=s,this._onigLib=i,this._basicScopeAttributesProvider=new hu(a,o),this._rootId=-1,this._lastRuleId=0,this._ruleId2desc=[null],this._includedGrammars={},this._grammarRepository=n,this._grammar=Cs(t,null),this._injections=null,this._tokenTypeMatchers=[],r)for(let l of Object.keys(r)){let u=ca(l,ha);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)Ls(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&&Ls(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]=Cs(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=Fs.getCompiledRuleId(this._grammar.repository.$self,this,this._grammar.repository),this.getInjections());let r;if(!t||t===bo.NULL){r=!0;let u=this._basicScopeAttributesProvider.getDefaultAttributes(),f=this.themeProvider.getDefaults(),d=Je.set(0,u.languageId,u.tokenType,null,f.fontStyle,f.foregroundId,f.backgroundId),c=this.getRule(this._rootId).getName(null,null),p;c?p=Pt.createRootAndLookUpScopeName(c,d,this):p=Pt.createRoot("unknown",d),t=new bo(null,this._rootId,-1,-1,!1,null,p,p)}else r=!1,t.reset();e=e+`
|
|
4
4
|
`;let s=this.createOnigString(e),n=s.content.length,i=new Pu(a,e,this._tokenTypeMatchers,this.balancedBracketSelectors),l=Es(this,s,r,0,t,i,!0,o);return vs(s),{lineLength:n,lineTokens:i,ruleStack:l.stack,stoppedEarly:l.stoppedEarly}}};function Cs(e,t){return e=zl(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 Pt=class Me{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=xo.push(r,s.scopeNames),o=new Me(o,r,s.encodedTokenAttributes);return o}static createRoot(t,a){return new Me(null,new xo(null,t),a)}static createRootAndLookUpScopeName(t,a,o){let r=o.getMetadataForScope(t),s=new xo(null,t),n=o.themeProvider.themeMatch(s),i=Me.mergeAttributes(a,r,n);return new Me(null,s,i)}get scopeName(){return this.scopePath.scopeName}toString(){return this.getScopeNames().join(" ")}equals(t){return Me.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),Je.set(t,a.languageId,a.tokenType,null,r,s,n)}pushAttributed(t,a){if(t===null)return this;if(t.indexOf(" ")===-1)return Me._pushAttributed(this,t,a);let o=t.split(/ /g),r=this;for(let s of o)r=Me._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=Me.mergeAttributes(t.tokenAttributes,r,n);return new Me(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}},bo=class Ke{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 Ke(null,0,0,0,!1,null,null,null);_enterPos;_anchorPos;depth;equals(t){return t===null?!1:Ke._equals(this,t)}static _equals(t,a){return t===a?!0:this._structuralEquals(t,a)?Pt.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(){Ke._reset(this)}pop(){return this.parent}safePop(){return this.parent?this.parent:this}push(t,a,o,r,s,n,i){return new Ke(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 Ke(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=Pt.fromExtension(t?.nameScopesList??null,a.nameScopesList);return new Ke(t,a.ruleId,a.enterPos??-1,a.anchorPos??-1,a.beginRuleCapturedEOL,a.endRule,o,Pt.fromExtension(o,a.contentNameScopesList))}},Tu=class{balancedBracketScopes;unbalancedBracketScopes;allowAny=!1;constructor(e,t){this.balancedBracketScopes=e.flatMap(a=>a==="*"?(this.allowAny=!0,[]):ca(a,ha).map(o=>o.matcher)),this.unbalancedBracketScopes=t.flatMap(a=>ca(a,ha).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}},Pu=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=Je.set(o,0,n.type,null,-1,0,0));this.balancedBracketSelectors&&(r=this.balancedBracketSelectors.match(s))}if(r&&(o=Je.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}},Au=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,yu(e,s,t,a,o,r,this,this._onigLib))}return this._grammars.get(e)}},Os=class{_options;_syncRegistry;_ensureGrammarCache;constructor(e){this._options=e,this._syncRegistry=new Au(At.createFromRawTheme(e.theme,e.colorMap),e.onigLib),this._ensureGrammarCache=new Map}dispose(){this._syncRegistry.dispose()}setTheme(e,t){this._syncRegistry.setTheme(At.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 Tu(a.balancedBracketSelectors||[],a.unbalancedBracketSelectors||[]))}loadGrammar(e){return this._loadGrammar(e,0,null,null,null)}_loadGrammar(e,t,a,o,r){let s=new ru(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)}},ga=bo.NULL;var vu=/["&'<>`]/g,Mu=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,Ru=/[\x01-\t\v\f\x0E-\x1F\x7F\x81\x8D\x8F\x90\x9D\xA0-\uFFFF]/g,Fu=/[|\\{}()[\]^$+*?.]/g,Us=new WeakMap;function Hs(e,t){if(e=e.replace(t.subset?Bu(t.subset):vu,o),t.subset||t.escapeOnly)return e;return e.replace(Mu,a).replace(Ru,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 Bu(e){let t=Us.get(e);return t||(t=Du(e),Us.set(e,t)),t}function Du(e){let t=[],a=-1;for(;++a<e.length;)t.push(e[a].replace(Fu,"\\$&"));return new RegExp("(?:"+t.join("|")+")","g")}var Eu=/[\dA-Fa-f]/;function qs(e,t,a){let o="&#x"+e.toString(16).toUpperCase();return a&&t&&!Eu.test(String.fromCharCode(t))?o:o+";"}var _u=/\d/;function Gs(e,t,a){let o="&#"+String(e);return a&&t&&!_u.test(String.fromCharCode(t))?o:o+";"}var Ws=["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 wa={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 zs=["cent","copy","divide","gt","lt","not","para","times"];var js={}.hasOwnProperty,Po={},xa;for(xa in wa)js.call(wa,xa)&&(Po[wa[xa]]=xa);var Nu=/[^\dA-Za-z]/;function Vs(e,t,a,o){let r=String.fromCharCode(e);if(js.call(Po,r)){let s=Po[r],n="&"+s;return a&&Ws.includes(s)&&!zs.includes(s)&&(!o||t&&t!==61&&Nu.test(String.fromCharCode(t)))?n:n+";"}return""}function $s(e,t,a){let o=qs(e,t,a.omitOptionalSemicolons),r;if((a.useNamedReferences||a.useShortestReferences)&&(r=Vs(e,t,a.omitOptionalSemicolons,a.attribute)),(a.useShortestReferences||!r)&&a.useShortestReferences){let s=Gs(e,t,a.omitOptionalSemicolons);s.length<o.length&&(o=s)}return r&&(!a.useShortestReferences||r.length<o.length)?r:o}function De(e,t){return Hs(e,Object.assign({format:$s},t))}var Ou=/^>|^->|<!--|-->|--!>|<!-$/g,Uu=[">"],Hu=["<",">"];function Xs(e,t,a,o){return o.settings.bogusComments?"<?"+De(e.value,Object.assign({},o.settings.characterReferences,{subset:Uu}))+">":"<!--"+e.value.replace(Ou,r)+"-->";function r(s){return De(s,Object.assign({},o.settings.characterReferences,{subset:Hu}))}}function Qs(e,t,a,o){return"<!"+(o.settings.upperDoctype?"DOCTYPE":"doctype")+(o.settings.tightDoctype?"":" ")+"html>"}var te=Ks(1),Ao=Ks(-1),qu=[];function Ks(e){return t;function t(a,o,r){let s=a?a.children:qu,n=(o||0)+e,i=s[n];if(!r)for(;i&&st(i);)n+=e,i=s[n];return i}}var Gu={}.hasOwnProperty;function La(e){return t;function t(a,o,r){return Gu.call(e,a.tagName)&&e[a.tagName](a,o,r)}}var Bt=La({body:zu,caption:vo,colgroup:vo,dd:Xu,dt:$u,head:vo,html:Wu,li:Vu,optgroup:Qu,option:Ku,p:ju,rp:Js,rt:Js,tbody:Zu,td:Zs,tfoot:Yu,th:Zs,thead:Ju,tr:ed});function vo(e,t,a){let o=te(a,t,!0);return!o||o.type!=="comment"&&!(o.type==="text"&&st(o.value.charAt(0)))}function Wu(e,t,a){let o=te(a,t);return!o||o.type!=="comment"}function zu(e,t,a){let o=te(a,t);return!o||o.type!=="comment"}function ju(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 Vu(e,t,a){let o=te(a,t);return!o||o.type==="element"&&o.tagName==="li"}function $u(e,t,a){let o=te(a,t);return!!(o&&o.type==="element"&&(o.tagName==="dt"||o.tagName==="dd"))}function Xu(e,t,a){let o=te(a,t);return!o||o.type==="element"&&(o.tagName==="dt"||o.tagName==="dd")}function Js(e,t,a){let o=te(a,t);return!o||o.type==="element"&&(o.tagName==="rp"||o.tagName==="rt")}function Qu(e,t,a){let o=te(a,t);return!o||o.type==="element"&&o.tagName==="optgroup"}function Ku(e,t,a){let o=te(a,t);return!o||o.type==="element"&&(o.tagName==="option"||o.tagName==="optgroup")}function Ju(e,t,a){let o=te(a,t);return!!(o&&o.type==="element"&&(o.tagName==="tbody"||o.tagName==="tfoot"))}function Zu(e,t,a){let o=te(a,t);return!o||o.type==="element"&&(o.tagName==="tbody"||o.tagName==="tfoot")}function Yu(e,t,a){return!te(a,t)}function ed(e,t,a){let o=te(a,t);return!o||o.type==="element"&&o.tagName==="tr"}function Zs(e,t,a){let o=te(a,t);return!o||o.type==="element"&&(o.tagName==="td"||o.tagName==="th")}var Ys=La({body:od,colgroup:rd,head:ad,html:td,tbody:sd});function td(e){let t=te(e,-1);return!t||t.type!=="comment"}function ad(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 od(e){let t=te(e,-1,!0);return!t||t.type!=="comment"&&!(t.type==="text"&&st(t.value.charAt(0)))&&!(t.type==="element"&&(t.tagName==="meta"||t.tagName==="link"||t.tagName==="script"||t.tagName==="style"||t.tagName==="template"))}function rd(e,t,a){let o=Ao(a,t),r=te(e,-1,!0);return a&&o&&o.type==="element"&&o.tagName==="colgroup"&&Bt(o,a.children.indexOf(o),a)?!1:!!(r&&r.type==="element"&&r.tagName==="col")}function sd(e,t,a){let o=Ao(a,t),r=te(e,-1);return a&&o&&o.type==="element"&&(o.tagName==="thead"||o.tagName==="tbody")&&Bt(o,a.children.indexOf(o),a)?!1:!!(r&&r.type==="element"&&r.tagName==="tr")}var Ca={name:[[`
|
|
5
5
|
\f\r &/=>`.split(""),`
|
|
6
6
|
\f\r "&'/=>\``.split("")],[`\0
|
|
@@ -10,10 +10,10 @@ import{a as mr,b as hr,c as gr,d as ot,e as rt,f as $t,g as wr,h as xr,i as Lr,j
|
|
|
10
10
|
\f\r "&'<=>\``.split("")],[`\0
|
|
11
11
|
\f\r "&'<=>\``.split(""),`\0
|
|
12
12
|
\f\r "&'<=>\``.split("")]],single:[["&'".split(""),"\"&'`".split("")],["\0&'".split(""),"\0\"&'`".split("")]],double:[['"&'.split(""),"\"&'`".split("")],['\0"&'.split(""),"\0\"&'`".split("")]]};function en(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=Xt);let u=nd(o,e.properties),f=o.all(r.space==="html"&&e.tagName==="template"?e.content:e);return o.schema=r,f&&(n=!1),(u||!s||!Ys(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||!Bt(e,t,a))&&i.push("</"+e.tagName+">"),i.join("")}function nd(e,t){let a=[],o=-1,r;if(t){for(r in t)if(t[r]!==null&&t[r]!==void 0){let s=id(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 id(e,t,a){let o=Lr(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=De(o.attribute,Object.assign({},e.settings.characterReferences,{subset:Ca.name[r][s]}));return a===!0||(a=Array.isArray(a)?(o.commaSeparated?Sr:yr)(a,{padLeft:!e.settings.tightCommaSeparatedLists}):String(a),e.settings.collapseEmptyAttributes&&!a)?l:(e.settings.preferUnquoted&&(i=De(a,Object.assign({},e.settings.characterReferences,{attribute:!0,subset:Ca.unquoted[r][s]}))),i!==a&&(e.settings.quoteSmart&&oo(a,n)>oo(a,e.alternative)&&(n=e.alternative),i=n+De(a,Object.assign({},e.settings.characterReferences,{subset:(n==="'"?Ca.single:Ca.double)[r][s],attribute:!0}))+n),l+(i&&"="+i))}var ld=["<","&"];function Ia(e,t,a,o){return a&&a.type==="element"&&(a.tagName==="script"||a.tagName==="style")?e.value:De(e.value,Object.assign({},o.settings.characterReferences,{subset:ld}))}function tn(e,t,a,o){return o.settings.allowDangerousHtml?e.value:Ia(e,t,a,o)}function an(e,t,a,o){return o.all(e)}var on=Ir("type",{invalid:ud,unknown:dd,handlers:{comment:Xs,doctype:Qs,element:en,raw:tn,root:an,text:Ia}});function ud(e){throw new Error("Expected node, not `"+e+"`")}function dd(e){let t=e;throw new Error("Cannot compile unknown node `"+t.type+"`")}var fd={},cd={},pd=[];function Mo(e,t){let a=t||fd,o=a.quote||'"',r=o==='"'?"'":'"';if(o!=='"'&&o!=="'")throw new Error("Invalid quote `"+o+"`, expected `'` or `\"`");return{one:md,all:hd,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||xr,characterReferences:a.characterReferences||cd,closeSelfClosing:a.closeSelfClosing||!1,closeEmptyElements:a.closeEmptyElements||!1},schema:a.space==="svg"?Xt:Cr,quote:o,alternative:r}.one(Array.isArray(e)?{type:"root",children:e}:e,void 0,void 0)}function md(e,t,a){return on(e,t,a,this)}function hd(e){let t=[],a=e&&e.children||pd,o=-1;for(;++o<a.length;)t[o]=this.one(a[o],o,e);return t.join("")}function Sa(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 Ge(e,t){return e&&(t?.[e?.toLowerCase()]||e)}function gd(e){return Array.isArray(e)?e:[e]}async function fn(e){return Promise.resolve(typeof e=="function"?e():e).then(t=>t.default||t)}function _o(e){return!e||["plaintext","txt","text","plain"].includes(e)}function cn(e){return e==="ansi"||_o(e)}function No(e){return e==="none"}function pn(e){return No(e)}function mn(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 Pa(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 wd(e){let t=Pa(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 Oo="light-dark()",xd=["color","background-color"];function Ld(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 Cd(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?Ld(r,s):r})):e}function Id(e,t,a,o,r="css-vars"){let s={content:e.content,explanation:e.explanation,offset:e.offset},n=t.map(f=>ya(e.variants[f])),i=new Set(n.flatMap(f=>Object.keys(f))),l={},u=(f,d)=>{let c=d==="color"?"":d==="background-color"?"-bg":`-${d}`;return a+t[f]+(d==="color"?"":c)};return n.forEach((f,d)=>{for(let c of i){let p=f[c]||"inherit";if(d===0&&o&&xd.includes(c))if(o===Oo&&n.length>1){let m=t.findIndex(g=>g==="light"),I=t.findIndex(g=>g==="dark");if(m===-1||I===-1)throw new Z('When using `defaultColor: "light-dark()"`, you must provide both `light` and `dark` themes');let C=n[m][c]||"inherit",x=n[I][c]||"inherit";l[c]=`light-dark(${C}, ${x})`,r==="css-vars"&&(l[u(d,c)]=p)}else l[c]=p;else r==="css-vars"&&(l[u(d,c)]=p)}}),s.htmlStyle=l,s}function ya(e){let t={};if(e.color&&(t.color=e.color),e.bgColor&&(t["background-color"]=e.bgColor),e.fontStyle){e.fontStyle&fe.Italic&&(t["font-style"]="italic"),e.fontStyle&fe.Bold&&(t["font-weight"]="bold");let a=[];e.fontStyle&fe.Underline&&a.push("underline"),e.fontStyle&fe.Strikethrough&&a.push("line-through"),a.length&&(t["text-decoration"]=a.join(" "))}return t}function Bo(e){return typeof e=="string"?e:Object.entries(e).map(([t,a])=>`${t}:${a}`).join(";")}var gn=new WeakMap;function Aa(e,t){gn.set(e,t)}function Et(e){return gn.get(e)}var ut=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(gd(a).map(o=>[o,ga])),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 Sd(this._stacks[t])}toJSON(){return{lang:this.lang,theme:this.theme,themes:this.themes,scopes:this.getScopes()}}};function Sd(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 yd(e,t){if(!(e instanceof ut))throw new Z("Invalid grammar state");return e.getInternalStack(t)}function kd(){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 Z(`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 Z(`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 Z(`Invalid decoration position ${JSON.stringify(n)}. Line ${n.line} length: ${i.length}`);return{...n,character:l,offset:r.posToIndex(n.line,l)}}},r=wd(a.source),s=(a.options.decorations||[]).map(n=>({...n,start:o(n.start),end:o(n.end)}));bd(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 Cd(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 Z(`Number of lines in code element (${r.length}) does not match the number of lines in the source (${o.converter.lines.length}). Failed to apply decorations.`);function s(f,d,c,p){let m=r[f],I="",C=-1,x=-1;if(d===0&&(C=0),c===0&&(x=0),c===Number.POSITIVE_INFINITY&&(x=m.children.length),C===-1||x===-1)for(let h=0;h<m.children.length;h++)I+=wn(m.children[h]),C===-1&&I.length===d&&(C=h+1),x===-1&&I.length===c&&(x=h+1);if(C===-1)throw new Z(`Failed to find start index for decoration ${JSON.stringify(p.start)}`);if(x===-1)throw new Z(`Failed to find end index for decoration ${JSON.stringify(p.end)}`);let g=m.children.slice(C,x);if(!p.alwaysWrap&&g.length===m.children.length)i(m,p,"line");else if(!p.alwaysWrap&&g.length===1&&g[0].type==="element")i(g[0],p,"token");else{let h={type:"element",tagName:"span",properties:{},children:g};i(h,p,"wrapper"),m.children.splice(C,g.length,h)}}function n(f,d){r[f]=i(r[f],d,"line")}function i(f,d,c){let p=d.properties||{},m=d.transform||(I=>I);return f.tagName=d.tagName||"span",f.properties={...f.properties,...p,class:f.properties.class},d.properties?.class&&mn(f,d.properties.class),f=m(f,c)||f,f}let l=[],u=o.decorations.sort((f,d)=>d.start.offset-f.start.offset||f.end.offset-d.end.offset);for(let f of u){let{start:d,end:c}=f;if(d.line===c.line)s(d.line,d.character,c.character,f);else if(d.line<c.line){s(d.line,d.character,Number.POSITIVE_INFINITY,f);for(let p=d.line+1;p<c.line;p++)l.unshift(()=>n(p,f));s(c.line,0,c.character,f)}}l.forEach(f=>f())}}}function bd(e){for(let t=0;t<e.length;t++){let a=e[t];if(a.start.offset>a.end.offset)throw new Z(`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 Z(`Decorations ${JSON.stringify(a.start)} and ${JSON.stringify(r.start)} intersect.`)}}}}function wn(e){return e.type==="text"?e.value:e.type==="element"?e.children.map(wn).join(""):""}var Td=[kd()];function ka(e){let t=Pd(e.transformers||[]);return[...t.pre,...t.normal,...t.post,...Td]}function Pd(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 Ze=["black","red","green","yellow","blue","magenta","cyan","white","brightBlack","brightRed","brightGreen","brightYellow","brightBlue","brightMagenta","brightCyan","brightWhite"],Ro={1:"bold",2:"dim",3:"italic",4:"underline",7:"reverse",8:"hidden",9:"strikethrough"};function Ad(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 rn(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 vd(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)Ro[o]&&t.push({type:"setDecoration",value:Ro[o]});else if(o<=29){let r=Ro[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:Ze[o-30]}});else if(o===38){let r=rn(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:Ze[o-40]}});else if(o===48){let r=rn(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:Ze[o-90+8]}}):o>=100&&o<=107&&t.push({type:"setBackgroundColor",value:{type:"named",name:Ze[o-100+8]}})}return t}function Md(){let e=null,t=null,a=new Set;return{parse(o){let r=[],s=0;do{let n=Ad(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=vd(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 Rd={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 Fd(e=Rd){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<Ze.length;u++)o.push(t(Ze[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 Bd={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 Dd(e,t,a){let o=Sa(e,a),r=Pa(t),s=Object.fromEntries(Ze.map(l=>{let u=`terminal.ansi${l[0].toUpperCase()}${l.substring(1)}`,f=e.colors?.[u];return[l,f||Bd[l]]})),n=Fd(s),i=Md();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=Ge(f,o),d=Ge(d,o),u.decorations.has("dim")&&(f=Ed(f));let c=fe.None;return u.decorations.has("bold")&&(c|=fe.Bold),u.decorations.has("italic")&&(c|=fe.Italic),u.decorations.has("underline")&&(c|=fe.Underline),u.decorations.has("strikethrough")&&(c|=fe.Strikethrough),{content:u.value,offset:l[1],color:f,bgColor:d,fontStyle:c}}))}function Ed(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 Uo(e,t,a={}){let{theme:o=e.getLoadedThemes()[0]}=a,r=e.resolveLangAlias(a.lang||"text");if(_o(r)||No(o))return Pa(t).map(l=>[{content:l[0],offset:l[1]}]);let{theme:s,colorMap:n}=e.setTheme(o);if(r==="ansi")return Dd(s,t,a);let i=e.getLanguage(a.lang||"text");if(a.grammarState){if(a.grammarState.lang!==i.name)throw new Z(`Grammar state language "${a.grammarState.lang}" does not match highlight language "${i.name}"`);if(!a.grammarState.themes.includes(s.name))throw new Z(`Grammar state themes "${a.grammarState.themes}" do not contain highlight theme "${s.name}"`)}return Nd(t,i,s,n,a)}function _d(...e){if(e.length===2)return Et(e[1]);let[t,a,o={}]=e,{lang:r="text",theme:s=t.getLoadedThemes()[0]}=o;if(_o(r)||No(s))throw new Z("Plain language does not have grammar state");if(r==="ansi")throw new Z("ANSI language does not have grammar state");let{theme:n,colorMap:i}=t.setTheme(s),l=t.getLanguage(r);return new ut(Ho(a,l,n,i,o).stateStack,l.name,n.name)}function Nd(e,t,a,o,r){let s=Ho(e,t,a,o,r),n=new ut(s.stateStack,t.name,a.name);return Aa(s.tokens,n),s.tokens}function Ho(e,t,a,o,r){let s=Sa(a,r),{tokenizeMaxLineLength:n=0,tokenizeTimeLimit:i=500}=r,l=Pa(e),u=r.grammarState?yd(r.grammarState,a.name)??ga:r.grammarContextCode!=null?Ho(r.grammarContextCode,t,a,o,{...r,grammarState:void 0,grammarContextCode:void 0}).stateStack:ga,f=[],d=[];for(let c=0,p=l.length;c<p;c++){let[m,I]=l[c];if(m===""){f=[],d.push([]);continue}if(n>0&&m.length>=n){f=[],d.push([{content:m,offset:I,color:"",fontStyle:0}]);continue}let C,x,g;r.includeExplanation&&(C=t.tokenizeLine(m,u,i),x=C.tokens,g=0);let h=t.tokenizeLine2(m,u,i),L=h.tokens.length/2;for(let w=0;w<L;w++){let b=h.tokens[2*w],P=w+1<L?h.tokens[2*w+2]:m.length;if(b===P)continue;let y=h.tokens[2*w+1],D=Ge(o[Je.getForeground(y)],s),v=Je.getFontStyle(y),F={content:m.substring(b,P),offset:I+b,color:D,fontStyle:v};if(r.includeExplanation){let k=[];if(r.includeExplanation!=="scopeName")for(let H of a.settings){let U;switch(typeof H.scope){case"string":U=H.scope.split(/,/).map(ue=>ue.trim());break;case"object":U=H.scope;break;default:continue}k.push({settings:H,selectors:U.map(ue=>ue.split(/ /))})}F.explanation=[];let B=0;for(;b+B<P;){let H=x[g],U=m.substring(H.startIndex,H.endIndex);B+=U.length,F.explanation.push({content:U,scopes:r.includeExplanation==="scopeName"?Od(H.scopes):Ud(k,H.scopes)}),g+=1}}f.push(F)}d.push(f),f=[],u=h.ruleStack}return{tokens:d,stateStack:u}}function Od(e){return e.map(t=>({scopeName:t}))}function Ud(e,t){let a=[];for(let o=0,r=t.length;o<r;o++){let s=t[o];a[o]={scopeName:s,themeMatches:qd(e,s,t.slice(0,o))}}return a}function sn(e,t){return e===t||t.substring(0,e.length)===e&&t[e.length]==="."}function Hd(e,t,a){if(!sn(e[e.length-1],t))return!1;let o=e.length-2,r=a.length-1;for(;o>=0&&r>=0;)sn(e[o],a[r])&&(o-=1),r-=1;return o===-1}function qd(e,t,a){let o=[];for(let{selectors:r,settings:s}of e)for(let n of r)if(Hd(n,t,a)){o.push(s);break}return o}function xn(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=Uo(e,t,{...a,theme:l.theme}),f=Et(u),d=typeof l.theme=="string"?l.theme:l.theme.name;return{tokens:u,state:f,theme:d}}),s=Gd(...r.map(l=>l.tokens)),n=s[0].map((l,u)=>l.map((f,d)=>{let c={content:f.content,variants:{},offset:f.offset};return"includeExplanation"in a&&a.includeExplanation&&(c.explanation=f.explanation),s.forEach((p,m)=>{let{content:I,explanation:C,offset:x,...g}=p[u][d];c.variants[o[m].color]=g}),c})),i=r[0].state?new ut(Object.fromEntries(r.map(l=>[l.theme,l.state?.getInternalStack(l.theme)])),r[0].state.lang):void 0;return i&&Aa(n,i),n}function Gd(...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 ba(e,t,a){let o,r,s,n,i,l;if("themes"in a){let{defaultColor:u="light",cssVariablePrefix:f="--shiki-",colorsRendering:d="css-vars"}=a,c=Object.entries(a.themes).filter(x=>x[1]).map(x=>({color:x[0],theme:x[1]})).sort((x,g)=>x.color===u?-1:g.color===u?1:0);if(c.length===0)throw new Z("`themes` option must not be empty");let p=xn(e,t,a);if(l=Et(p),u&&Oo!==u&&!c.find(x=>x.color===u))throw new Z(`\`themes\` option must contain the defaultColor key \`${u}\``);let m=c.map(x=>e.getTheme(x.theme)),I=c.map(x=>x.color);s=p.map(x=>x.map(g=>Id(g,I,f,u,d))),l&&Aa(s,l);let C=c.map(x=>Sa(x.theme,a));r=nn(c,m,C,f,u,"fg",d),o=nn(c,m,C,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=Sa(a.theme,a);s=Uo(e,t,a);let f=e.getTheme(a.theme);o=Ge(f.bg,u),r=Ge(f.fg,u),n=f.name,l=Et(s)}else throw new Z("Invalid options, either `theme` or `themes` must be provided");return{tokens:s,fg:r,bg:o,themeName:n,rootStyle:i,grammarState:l}}function nn(e,t,a,o,r,s,n){return e.map((i,l)=>{let u=Ge(t[l][s],a[l])||"inherit",f=`${o+i.color}${s==="bg"?"-bg":""}:${u}`;if(l===0&&r){if(r===Oo&&e.length>1){let d=e.findIndex(I=>I.color==="light"),c=e.findIndex(I=>I.color==="dark");if(d===-1||c===-1)throw new Z('When using `defaultColor: "light-dark()"`, you must provide both `light` and `dark` themes');let p=Ge(t[d][s],a[d])||"inherit",m=Ge(t[c][s],a[c])||"inherit";return`light-dark(${p}, ${m});${f}`}return u}return n==="css-vars"?f:null}).filter(i=>!!i).join(";")}function Ta(e,t,a,o={meta:{},options:a,codeToHast:(r,s)=>Ta(e,r,s),codeToTokens:(r,s)=>ba(e,r,s)}){let r=t;for(let m of ka(a))r=m.preprocess?.call(o,r,a)||r;let{tokens:s,fg:n,bg:i,themeName:l,rootStyle:u,grammarState:f}=ba(e,r,a),{mergeWhitespaces:d=!0,mergeSameStyleTokens:c=!1}=a;d===!0?s=zd(s):d==="never"&&(s=jd(s)),c&&(s=Vd(s));let p={...o,get source(){return r}};for(let m of ka(a))s=m.tokens?.call(p,s)||s;return Wd(s,{...a,fg:n,bg:i,themeName:l,rootStyle:a.rootStyle===!1?!1:a.rootStyle??u},p,f)}function Wd(e,t,a,o=Et(e)){let r=ka(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[I,C]of Object.entries(t.meta||{}))I.startsWith("_")||(u[I]=C);let f={type:"element",tagName:"pre",properties:u,children:[],data:t.data},d={type:"element",tagName:"code",properties:{},children:s},c=[],p={...a,structure:i,addClassToHast:mn,get source(){return a.source},get tokens(){return e},get options(){return t},get root(){return n},get pre(){return f},get code(){return d},get lines(){return c}};if(e.forEach((I,C)=>{C&&(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 I){let L={type:"element",tagName:"span",properties:{...h.htmlAttrs},children:[{type:"text",value:h.content}]},w=Bo(h.htmlStyle||ya(h));w&&(L.properties.style=w);for(let b of r)L=b?.span?.call(p,L,C+1,g,x,h)||L;i==="inline"?n.children.push(L):i==="classic"&&x.children.push(L),g+=h.content.length}if(i==="classic"){for(let h of r)x=h?.line?.call(p,x,C+1)||x;c.push(x),s.push(x)}else i==="inline"&&c.push(x)}),i==="classic"){for(let I of r)d=I?.code?.call(p,d)||d;f.children.push(d);for(let I of r)f=I?.pre?.call(p,f)||f;n.children.push(f)}else if(i==="inline"){let I=[],C={type:"element",tagName:"span",properties:{class:"line"},children:[]};for(let h of n.children)h.type==="element"&&h.tagName==="br"?(I.push(C),C={type:"element",tagName:"span",properties:{class:"line"},children:[]}):(h.type==="element"||h.type==="text")&&C.children.push(h);I.push(C);let g={type:"element",tagName:"code",properties:{},children:I};for(let h of r)g=h?.code?.call(p,g)||g;n.children=[];for(let h=0;h<g.children.length;h++){h>0&&n.children.push({type:"element",tagName:"br",properties:{},children:[]});let L=g.children[h];L.type==="element"&&n.children.push(...L.children)}}let m=n;for(let I of r)m=I?.root?.call(p,m)||m;return o&&Aa(m,o),m}function zd(e){return e.map(t=>{let a=[],o="",r;return t.forEach((s,n)=>{let l=!(s.fontStyle&&(s.fontStyle&fe.Underline||s.fontStyle&fe.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 jd(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 Vd(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=Bo(r.htmlStyle||ya(r)),n=Bo(o.htmlStyle||ya(o)),i=r.fontStyle&&(r.fontStyle&fe.Underline||r.fontStyle&fe.Strikethrough),l=o.fontStyle&&(o.fontStyle&fe.Underline||o.fontStyle&fe.Strikethrough);!i&&!l&&s===n?r.content+=o.content:a.push({...o})}return a})}var $d=Mo;function Xd(e,t,a){let o={meta:{},options:a,codeToHast:(s,n)=>Ta(e,s,n),codeToTokens:(s,n)=>ba(e,s,n)},r=$d(Ta(e,t,a,o));for(let s of ka(a))r=s.postprocess?.call(o,r,a)||r;return r}var ln={light:"#333333",dark:"#bbbbbb"},un={light:"#fffffe",dark:"#1e1e1e"},dn="__shiki_resolved";function qo(e){if(e?.[dn])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"?ln.light:ln.dark),a||(a=t.type==="light"?un.light:un.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,dn,{enumerable:!1,writable:!1,value:!0}),t}async function Ln(e){return Array.from(new Set((await Promise.all(e.filter(t=>!cn(t)).map(async t=>await fn(t).then(a=>Array.isArray(a)?a:[a])))).flat()))}async function Cn(e){return(await Promise.all(e.map(async a=>pn(a)?null:qo(await fn(a))))).filter(a=>!!a)}var Fo=3,Qd=!1;function Kd(e,t=3){if(Fo&&!(typeof Fo=="number"&&t>Fo)){if(Qd)throw new Error(`[SHIKI DEPRECATE]: ${e}`);console.trace(`[SHIKI DEPRECATE]: ${e}`)}}var qe=class extends Error{constructor(t){super(t),this.name="ShikiError"}};function In(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 qe(`Circular alias \`${Array.from(a).join(" -> ")} -> ${e}\``);a.add(e)}}return e}var Do=class extends Os{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=qo(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=At.createFromRawTheme(t),this._textmateThemeCache.set(t,a)),this._syncRegistry.setTheme(a)}getGrammar(t){return t=In(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 qe(`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))}},Eo=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}},Dt=0;function Jd(e){Dt+=1,e.warnings!==!1&&Dt>=10&&Dt%10===0&&console.warn(`[Shiki] ${Dt} 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 qe("`engine` option is required for synchronous mode");let a=(e.langs||[]).flat(1),o=(e.themes||[]).flat(1).map(qo),r=new Eo(e.engine,a),s=new Do(r,o,a,e.langAlias),n;function i(h){return In(h,e.langAlias)}function l(h){x();let L=s.getGrammar(typeof h=="string"?h:h.name);if(!L)throw new qe(`Language \`${h}\` not found, you may need to load it first`);return L}function u(h){if(h==="none")return{bg:"",fg:"",name:"none",settings:[],type:"dark"};x();let L=s.getTheme(h);if(!L)throw new qe(`Theme \`${h}\` not found, you may need to load it first`);return L}function f(h){x();let L=u(h);n!==h&&(s.setTheme(L),n=h);let w=s.getColorMap();return{theme:L,colorMap:w}}function d(){return x(),s.getLoadedThemes()}function c(){return x(),s.getLoadedLanguages()}function p(...h){x(),s.loadLanguages(h.flat(1))}async function m(...h){return p(await Ln(h))}function I(...h){x();for(let L of h.flat(1))s.loadTheme(L)}async function C(...h){return x(),I(await Cn(h))}function x(){if(t)throw new qe("Shiki instance has been disposed")}function g(){t||(t=!0,s.dispose(),Dt-=1)}return{setTheme:f,getTheme:u,getLanguage:l,getLoadedThemes:d,getLoadedLanguages:c,resolveLangAlias:i,loadLanguage:m,loadLanguageSync:p,loadTheme:C,loadThemeSync:I,dispose:g,[Symbol.dispose]:g}}async function Zd(e){e.engine||Kd("`engine` option is required. Use `createOnigurumaEngine` or `createJavaScriptRegexEngine` to create an engine.");let[t,a,o]=await Promise.all([Cn(e.themes||[]),Ln(e.langs||[]),e.engine]);return Jd({...e,themes:t,langs:a,engine:o})}async function Yd(e){let t=await Zd(e);return{getLastGrammarState:(...a)=>_d(t,...a),codeToTokensBase:(a,o)=>Uo(t,a,o),codeToTokensWithThemes:(a,o)=>xn(t,a,o),codeToTokens:(a,o)=>ba(t,a,o),codeToHast:(a,o)=>Ta(t,a,o),codeToHtml:(a,o)=>Xd(t,a,o),getBundledLanguages:()=>({}),getBundledThemes:()=>({}),...t,getInternalContext:()=>t}}function Sn(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,cn(d))return[];let c=t[d];if(!c)throw new Z(`Language \`${d}\` is not included in this bundle. You may want to load it from external source.`);return c}return d}function i(d){if(pn(d))return"none";if(typeof d=="string"){let c=a[d];if(!c)throw new Z(`Theme \`${d}\` is not included in this bundle. You may want to load it from external source.`);return c}return d}let l=(s.themes??[]).map(d=>i(d)),u=(s.langs??[]).map(d=>n(d)),f=await Yd({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 ef(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 yn(e,t){let a=ef(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 Go=[{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"))}],kn=Object.fromEntries(Go.map(e=>[e.id,e.import])),bn=Object.fromEntries(Go.flatMap(e=>e.aliases?.map(t=>[t,e.import])||[])),_t={...kn,...bn};var tf=[{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"))}],Tn=Object.fromEntries(tf.map(e=>[e.id,e.import]));var Nt=class extends Error{constructor(t){super(t),this.name="ShikiError"}};function af(){return 2147483648}function of(){return typeof performance<"u"?performance.now():Date.now()}var rf=(e,t)=>e+(t-e%t)%t;async function sf(e){let t,a,o={};function r(p){a=p,o.HEAPU8=new Uint8Array(p),o.HEAPU32=new Uint32Array(p)}function s(p,m,I){o.HEAPU8.copyWithin(p,m,m+I)}function n(p){try{return t.grow(p-a.byteLength+65535>>>16),r(t.buffer),1}catch{}}function i(p){let m=o.HEAPU8.length;p=p>>>0;let I=af();if(p>I)return!1;for(let C=1;C<=4;C*=2){let x=m*(1+.2/C);x=Math.min(x,p+100663296);let g=Math.min(I,rf(Math.max(p,x),65536));if(n(g))return!0}return!1}let l=typeof TextDecoder<"u"?new TextDecoder("utf8"):void 0;function u(p,m,I=1024){let C=m+I,x=m;for(;p[x]&&!(x>=C);)++x;if(x-m>16&&p.buffer&&l)return l.decode(p.subarray(m,x));let g="";for(;m<x;){let h=p[m++];if(!(h&128)){g+=String.fromCharCode(h);continue}let L=p[m++]&63;if((h&224)===192){g+=String.fromCharCode((h&31)<<6|L);continue}let w=p[m++]&63;if((h&240)===224?h=(h&15)<<12|L<<6|w:h=(h&7)<<18|L<<12|w<<6|p[m++]&63,h<65536)g+=String.fromCharCode(h);else{let b=h-65536;g+=String.fromCharCode(55296|b>>10,56320|b&1023)}}return g}function f(p,m){return p?u(o.HEAPU8,p,m):""}let d={emscripten_get_now:of,emscripten_memcpy_big:s,emscripten_resize_heap:i,fd_write:()=>0};async function c(){let m=await e({env:d,wasi_snapshot_preview1:d});t=m.memory,r(t.buffer),Object.assign(o,m),o.UTF8ToString=f}return await c(),o}var nf=Object.defineProperty,lf=(e,t,a)=>t in e?nf(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a,ne=(e,t,a)=>lf(e,typeof t!="symbol"?t+"":t,a),ie=null;function uf(e){throw new Nt(e.UTF8ToString(e.getLastOnigError()))}var Ma=class e{constructor(t){ne(this,"utf16Length"),ne(this,"utf8Length"),ne(this,"utf16Value"),ne(this,"utf8Value"),ne(this,"utf16OffsetToUtf8"),ne(this,"utf8OffsetToUtf16");let a=t.length,o=e._utf8ByteLength(t),r=o!==a,s=r?new Uint32Array(a+1):null;r&&(s[a]=o);let n=r?new Uint32Array(o+1):null;r&&(n[o]=a);let i=new Uint8Array(o),l=0;for(let u=0;u<a;u++){let f=t.charCodeAt(u),d=f,c=!1;if(f>=55296&&f<=56319&&u+1<a){let p=t.charCodeAt(u+1);p>=56320&&p<=57343&&(d=(f-55296<<10)+65536|p-56320,c=!0)}r&&(s[u]=l,c&&(s[u+1]=l),d<=127?n[l+0]=u:d<=2047?(n[l+0]=u,n[l+1]=u):d<=65535?(n[l+0]=u,n[l+1]=u,n[l+2]=u):(n[l+0]=u,n[l+1]=u,n[l+2]=u,n[l+3]=u)),d<=127?i[l++]=d:d<=2047?(i[l++]=192|(d&1984)>>>6,i[l++]=128|(d&63)>>>0):d<=65535?(i[l++]=224|(d&61440)>>>12,i[l++]=128|(d&4032)>>>6,i[l++]=128|(d&63)>>>0):(i[l++]=240|(d&1835008)>>>18,i[l++]=128|(d&258048)>>>12,i[l++]=128|(d&4032)>>>6,i[l++]=128|(d&63)>>>0),c&&u++}this.utf16Length=a,this.utf8Length=o,this.utf16Value=t,this.utf8Value=i,this.utf16OffsetToUtf8=s,this.utf8OffsetToUtf16=n}static _utf8ByteLength(t){let a=0;for(let o=0,r=t.length;o<r;o++){let s=t.charCodeAt(o),n=s,i=!1;if(s>=55296&&s<=56319&&o+1<r){let l=t.charCodeAt(o+1);l>=56320&&l<=57343&&(n=(s-55296<<10)+65536|l-56320,i=!0)}n<=127?a+=1:n<=2047?a+=2:n<=65535?a+=3:a+=4,i&&o++}return a}createString(t){let a=t.omalloc(this.utf8Length);return t.HEAPU8.set(this.utf8Value,a),a}},Ra=class Re{constructor(t){if(ne(this,"id",++Re.LAST_ID),ne(this,"_onigBinding"),ne(this,"content"),ne(this,"utf16Length"),ne(this,"utf8Length"),ne(this,"utf16OffsetToUtf8"),ne(this,"utf8OffsetToUtf16"),ne(this,"ptr"),!ie)throw new Nt("Must invoke loadWasm first.");this._onigBinding=ie,this.content=t;let a=new Ma(t);this.utf16Length=a.utf16Length,this.utf8Length=a.utf8Length,this.utf16OffsetToUtf8=a.utf16OffsetToUtf8,this.utf8OffsetToUtf16=a.utf8OffsetToUtf16,this.utf8Length<1e4&&!Re._sharedPtrInUse?(Re._sharedPtr||(Re._sharedPtr=ie.omalloc(1e4)),Re._sharedPtrInUse=!0,ie.HEAPU8.set(a.utf8Value,Re._sharedPtr),this.ptr=Re._sharedPtr):this.ptr=a.createString(ie)}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===Re._sharedPtr?Re._sharedPtrInUse=!1:this._onigBinding.ofree(this.ptr)}};ne(Ra,"LAST_ID",0);ne(Ra,"_sharedPtr",0);ne(Ra,"_sharedPtrInUse",!1);var Pn=Ra,zo=class{constructor(t){if(ne(this,"_onigBinding"),ne(this,"_ptr"),!ie)throw new Nt("Must invoke loadWasm first.");let a=[],o=[];for(let i=0,l=t.length;i<l;i++){let u=new Ma(t[i]);a[i]=u.createString(ie),o[i]=u.utf8Length}let r=ie.omalloc(4*t.length);ie.HEAPU32.set(a,r/4);let s=ie.omalloc(4*t.length);ie.HEAPU32.set(o,s/4);let n=ie.createOnigScanner(r,s,t.length);for(let i=0,l=t.length;i<l;i++)ie.ofree(a[i]);ie.ofree(s),ie.ofree(r),n===0&&uf(ie),this._onigBinding=ie,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 Pn(t);let s=this._findNextMatchSync(t,a,!1,r);return t.dispose(),s}return this._findNextMatchSync(t,a,!1,r)}_findNextMatchSync(t,a,o,r){let s=this._onigBinding,n=s.findNextOnigScannerMatch(this._ptr,t.id,t.ptr,t.utf8Length,t.convertUtf16OffsetToUtf8(a),r);if(n===0)return null;let i=s.HEAPU32,l=n/4,u=i[l++],f=i[l++],d=[];for(let c=0;c<f;c++){let p=t.convertUtf8OffsetToUtf16(i[l++]),m=t.convertUtf8OffsetToUtf16(i[l++]);d[c]={start:p,end:m,length:m-p}}return{index:u,captureIndices:d}}};function df(e){return typeof e.instantiator=="function"}function ff(e){return typeof e.default=="function"}function cf(e){return typeof e.data<"u"}function pf(e){return typeof Response<"u"&&e instanceof Response}function mf(e){return typeof ArrayBuffer<"u"&&(e instanceof ArrayBuffer||ArrayBuffer.isView(e))||typeof Buffer<"u"&&Buffer.isBuffer?.(e)||typeof SharedArrayBuffer<"u"&&e instanceof SharedArrayBuffer||typeof Uint32Array<"u"&&e instanceof Uint32Array}var va;function hf(e){if(va)return va;async function t(){ie=await sf(async a=>{let o=e;return o=await o,typeof o=="function"&&(o=await o(a)),typeof o=="function"&&(o=await o(a)),df(o)?o=await o.instantiator(a):ff(o)?o=await o.default(a):(cf(o)&&(o=o.data),pf(o)?typeof WebAssembly.instantiateStreaming=="function"?o=await gf(o)(a):o=await wf(o)(a):mf(o)?o=await Wo(o)(a):o instanceof WebAssembly.Module?o=await Wo(o)(a):"default"in o&&o.default instanceof WebAssembly.Module&&(o=await Wo(o.default)(a))),"instance"in o&&(o=o.instance),"exports"in o&&(o=o.exports),o})}return va=t(),va}function Wo(e){return t=>WebAssembly.instantiate(e,t)}function gf(e){return t=>WebAssembly.instantiateStreaming(e,t)}function wf(e){return async t=>{let a=await e.arrayBuffer();return WebAssembly.instantiate(a,t)}}async function An(e){return e&&await hf(e),{createScanner(t){return new zo(t.map(a=>typeof a=="string"?a:a.source))},createString(t){return new Pn(t)}}}var Fa=Sn({langs:_t,themes:Tn,engine:()=>An(import("../wasm-EOPKAILK.js"))}),{codeToHtml:xf,codeToHast:Lf,codeToTokens:Cf,codeToTokensBase:If,codeToTokensWithThemes:Sf,getSingletonHighlighter:yf,getLastGrammarState:kf}=yn(Fa,{guessEmbeddedLanguages:hn});var vn=new Set(Object.keys(_t)),jo=new Map,Vo=new Map,dt=new Map,bf=(e,t)=>`${e}-${t[0]}-${t[1]}`,Tf=(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}`},Pf=(e,t)=>{let a=bf(e,t);if(jo.has(a))return jo.get(a);let o=Fa({themes:t,langs:[e]});return jo.set(a,o),o};function Af(e={}){var t;let a=(t=e.themes)!=null?t:["github-light","github-dark"];return{name:"shiki",type:"code-highlighter",supportsLanguage(o){return vn.has(o)},getSupportedLanguages(){return Array.from(vn)},getThemes(){return a},highlight({code:o,language:r,themes:s},n){let i=Tf(o,r,s);return Vo.has(i)?Vo.get(i):(n&&(dt.has(i)||dt.set(i,new Set),dt.get(i).add(n)),Pf(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]}});Vo.set(i,f);let d=dt.get(i);if(d){for(let c of d)c(f);dt.delete(i)}}).catch(l=>{console.error("[Streamdown Code] Failed to highlight code:",l),dt.delete(i)}),null)}}}var Mn=Af();import{memo as vf}from"react";import{jsx as Ba}from"react/jsx-runtime";var Da=({className:e,from:t,children:a,...o})=>Ba("div",{className:T("ww:group ww:flex ww:w-full",t==="user"?"is-user ww:ml-auto ww:max-w-[80%] ww:flex-col ww:items-end":"is-assistant ww:flex-col",e),...o,children:Ba("div",{className:T("ww:flex ww:min-w-0 ww:flex-col ww:gap-2","ww:w-full"),children:a})}),Ea=({children:e,className:t,...a})=>Ba("div",{className:T("ww:flex ww:w-fit ww:min-w-0 ww:max-w-full ww:flex-col ww:gap-2 ww:overflow-hidden ww:text-base","ww:group-[.is-user]:ml-auto ww:group-[.is-user]:rounded-lg ww:group-[.is-user]:bg-user-bubble ww:group-[.is-user]:px-4 ww:group-[.is-user]:py-3 ww:group-[.is-user]:text-primary-foreground","ww:group-[.is-assistant]:text-foreground",t),...a,children:e}),Mf={cjk:cs,code:Mn},_a=vf(({className:e,...t})=>Ba(ro,{className:T("ww:size-full ww:[&>*:first-child]:mt-0 ww:[&>*:last-child]:mb-0",e),plugins:Mf,...t}),(e,t)=>e.children===t.children);_a.displayName="MessageResponse";import{jsx as Rf}from"react/jsx-runtime";function Rn({className:e,text:t,...a}){return t?Rf("pre",{className:T("ww:mb-2 ww:overflow-x-auto ww:whitespace-pre-wrap ww:break-words ww:text-xs ww:font-mono ww:text-muted-foreground",e),...a,children:t}):null}import{createContext as Ff,useCallback as Bf,useContext as En,useEffect as Df,useMemo as Xo,useRef as Ef,useState as Qo}from"react";import{Fragment as Dn,jsx as z,jsxs as Ee}from"react/jsx-runtime";function _f(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 Nf({text:e,className:t}){let[a,o]=Qo(!1),r=Ef(null);Df(()=>()=>{r.current&&clearTimeout(r.current)},[]);let s=Bf(async n=>{n.stopPropagation();try{await navigator.clipboard.writeText(e),o(!0),r.current&&clearTimeout(r.current),r.current=setTimeout(()=>o(!1),2e3)}catch{}},[e]);return z(ke,{variant:"ghost",size:"sm",onClick:s,className:T("ww:h-auto ww:gap-1 ww:px-1.5 ww:py-0.5 ww:text-xs ww:text-muted-foreground ww:hover:text-foreground",t),children:a?Ee(Dn,{children:[z(mt,{className:"ww:size-3.5"}),z("span",{children:"Copied"})]}):Ee(Dn,{children:[z(wt,{className:"ww:size-3.5"}),z("span",{children:"Copy"})]})})}function _n({data:e,label:t,className:a,...o}){let[r,s]=Qo(!1),n=Xo(()=>JSON.stringify(e,null,2),[e]),i=_f(e);return Ee("div",{className:T("ww:rounded-lg ww:bg-tool-card",a),...o,children:[Ee("div",{className:"ww:flex ww:items-center ww:justify-between ww:px-3 ww:pt-2.5 ww:pb-1.5",children:[z("span",{className:"ww:text-xs ww:font-medium ww:text-muted-foreground",children:t}),z(Nf,{text:n})]}),Ee("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:[z(gt,{className:T("ww:mt-0.5 ww:size-3.5 ww:shrink-0 ww:text-muted-foreground ww:transition-transform ww:duration-150",r&&"ww:rotate-90")}),r?z("pre",{className:"ww:overflow-x-auto ww:text-xs ww:font-mono ww:text-foreground ww:whitespace-pre-wrap ww:break-all",children:z("code",{children:n})}):z("span",{className:"ww:truncate ww:text-xs ww:font-mono ww:text-foreground/80",children:i})]})]})}var Ko=Ff({open:!1,toggle:()=>{}});function Nn({className:e,defaultOpen:t=!1,children:a,...o}){let[r,s]=Qo(t);return z(Ko.Provider,{value:{open:r,toggle:()=>s(n=>!n)},children:z("div",{className:T("ww:mb-4 ww:w-full",e),"data-state":r?"open":"closed",...o,children:a})})}function On({className:e,title:t,state:a,...o}){let{open:r,toggle:s}=En(Ko),n=a==="input-available"||a==="input-streaming";return Ee("button",{type:"button",onClick:s,className:T("ww:flex ww:w-full ww:items-center ww:justify-between ww:gap-3 ww:py-1.5",e),"aria-expanded":r,...o,children:[Ee("div",{className:"ww:flex ww:min-w-0 ww:items-center ww:gap-2",children:[z(Oe,{className:"ww:size-4 ww:shrink-0 ww:text-muted-foreground"}),z("span",{className:"ww:truncate ww:text-sm ww:font-medium",children:t}),n&&z("span",{className:"ww:size-2 ww:shrink-0 ww:rounded-full ww:bg-primary ww:animate-pulse"})]}),z(ht,{className:T("ww:size-4 ww:shrink-0 ww:text-muted-foreground ww:transition-transform ww:duration-200",r&&"ww:rotate-180")})]})}function Un({className:e,title:t,state:a,...o}){let r=a==="input-available"||a==="input-streaming";return Ee("div",{className:T("ww:mb-4 ww:flex ww:items-center ww:gap-2 ww:py-1.5 ww:text-sm ww:text-muted-foreground ww:italic",e),...o,children:[z("span",{className:"ww:truncate",children:t}),r&&z("span",{className:"ww:size-2 ww:shrink-0 ww:rounded-full ww:bg-primary ww:animate-pulse"})]})}function Hn({className:e,children:t,...a}){let{open:o}=En(Ko);return z("div",{className:T("ww:grid ww:transition-[grid-template-rows,opacity] ww:duration-200 ww:ease-out",o?"ww:grid-rows-[1fr] ww:opacity-100":"ww:grid-rows-[0fr] ww:opacity-0"),children:z("div",{className:"ww:min-h-0 ww:overflow-hidden",children:z("div",{className:T("ww: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 qn({className:e,input:t,debug:a,...o}){let r=Xo(()=>{if(!a&&typeof t=="object"&&t!==null&&!Array.isArray(t)){let{_meta:s,...n}=t;return n}return t},[t,a]);return z(_n,{data:r,label:"Request",className:e,...o})}function $o(e){if(!(typeof e!="object"||e===null))return e}function Gn(e){return $o(e?.ui)}function Wn(e){return $o($o(e)?._meta)}function Fn(e){if(!e)return;let t=Gn(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 Bn(e){return Gn(e)?.autoHeight===!0}function Na(e,t,a){if(e){let o=Fn(a?.[e]?._meta);if(o)return o}return Fn(Wn(t))}function zn(e,t,a){return e&&Bn(a?.[e]?._meta)?!0:Bn(Wn(t))}function jn({className:e,output:t,errorText:a,debug:o,...r}){let s=Xo(()=>{if(!o&&typeof t=="object"&&t!==null&&!Array.isArray(t)){let{_meta:n,...i}=t;return i}return t},[t,o]);return t||a?a?Ee("div",{className:T("ww:space-y-2",e),...r,children:[z("h4",{className:"ww:text-xs ww:font-medium ww:uppercase ww:tracking-wide ww:text-muted-foreground",children:"Error"}),z("div",{className:"ww:rounded-lg ww:bg-destructive/10 ww:p-3 ww:text-xs ww:text-destructive",children:a})]}):z(_n,{data:s,label:"Response",className:e,...r}):null}import{useCallback as Of,useEffect as $n,useMemo as Uf,useRef as xe,useState as Xn}from"react";function ft(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 Vn(e,t){return!ft(e)&&!ft(t)?null:ft(e)?ft(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 Kf}from"react/jsx-runtime";var Hf="/api/mcp/resource",qf=500,Gf=0,Wf=16,zf="2026-01-26",jf=300,Vf=3e3,$f=3;function Xf(e){if(typeof e!="string")return;let t=e.trim();return t.length>0?t:void 0}function Qf(e,t,a){return Na(e,t,a)?!1:t._meta?.["waniwani/autoInjectResultText"]!==!1}function Jo({resourceUri:e,toolInput:t,toolResult:a,resourceEndpoint:o=Hf,chatSessionId:r,isDark:s=!1,className:n,autoHeight:i=!1,onOpenLink:l,onFollowUp:u,onCallTool:f,onDisplayModeChange:d,isFullscreen:c=!1,toolDefinitions:p}){let m=xe(null),I=xe(t),C=xe(a),x=xe({width:0,height:0}),g=xe(null),h=xe(!1),L=xe(0),w=xe("inline"),[b,P]=Xn(Gf),[y,D]=Xn(void 0),v=xe(l),F=xe(u),k=xe(f),B=xe(d),H=xe(r),U=xe(p);I.current=t,C.current=a,v.current=l,F.current=u,k.current=f,B.current=d,H.current=r,U.current=p;let ue=Of(q=>i?Math.max(q+Wf,0):Math.min(Math.max(q,50),qf),[i]),ge=Uf(()=>{let q=o.includes("?")?"&":"?";return`${o}${q}uri=${encodeURIComponent(e)}`},[o,e]),K=xe(s);return K.current=s,$n(()=>{if(!h.current)return;let q=m.current;q?.contentWindow&&q.contentWindow.postMessage({jsonrpc:"2.0",method:"ui/notifications/host-context-changed",params:{theme:s?"dark":"light"}},"*")},[s]),$n(()=>{let q=m.current;if(!q)return;let ee=!1,_=!1,J=null,re=null,A=setTimeout(()=>{if(ee||_||L.current>=$f)return;L.current+=1;let j=new URL(q.src);j.searchParams.set("_retry",String(L.current)),q.src=j.toString()},Vf),R=j=>{q.contentWindow?.postMessage(j,"*")},se=j=>{if(ee||j.source!==q.contentWindow)return;let G=j.data;if(!G||typeof G!="object"||G.jsonrpc!=="2.0")return;let V=G.method,N=G.id;if(V==="ui/initialize"&&N!=null){_=!0,clearTimeout(A),R({jsonrpc:"2.0",id:N,result:{protocolVersion:G.params?.protocolVersion??zf,hostInfo:{name:"WaniWani Chat",version:"1.0.0"},hostCapabilities:{openLinks:{},message:{text:{}},tools:{},updateModelContext:{text:{},structuredContent:{}}},hostContext:{theme:K.current?"dark":"light",displayMode:w.current}}});return}if(V==="ui/notifications/initialized"){h.current=!0;let W=I.current,$=C.current,O=$._meta&&typeof $._meta=="object"?$._meta:null,X=Xf(H.current),ae=O&&typeof O.waniwani=="object"&&O.waniwani!==null?O.waniwani:null,Se=ae||X?{...ae??{},...X?{sessionId:X}:{}}:void 0,_e=O||Se?{...O??{},...Se?{waniwani:Se}:{}}:void 0;R({jsonrpc:"2.0",method:"ui/notifications/tool-input",params:{arguments:W}});let tt=$.content??[{type:"text",text:JSON.stringify($)}];R({jsonrpc:"2.0",method:"ui/notifications/tool-result",params:{content:tt,structuredContent:$.structuredContent,_meta:_e,meta:_e}});return}if(V==="ui/notifications/size-changed"){let W=G.params,$=typeof W?.height=="number"?W.height:void 0,O=typeof W?.width=="number"?W.width:void 0,X=x.current,ae=$!==void 0&&$!==X.height,Se=O!==void 0&&O!==X.width;if(!ae&&!Se)return;if(ae&&$!==void 0){X.height=$;let _e=ue($),tt=q.getBoundingClientRect().height;if(g.current&&(g.current.cancel(),g.current=null),P(_e),q.animate&&Math.abs(tt-_e)>2){let at=q.animate([{height:`${tt}px`},{height:`${_e}px`}],{duration:jf,easing:"ease-out",fill:"forwards"});g.current=at,at.onfinish=()=>{g.current===at&&(at.cancel(),g.current=null)}}}Se&&i&&O!==void 0&&(X.width=O,D(O));return}if(V==="ui/open-link"&&N!=null){let W=G.params?.url;typeof W=="string"&&(v.current?v.current(W):window.open(W,"_blank","noopener,noreferrer")),R({jsonrpc:"2.0",id:N,result:{}});return}if(V==="ui/message"&&N!=null){if(F.current&&G.params){let W=G.params,$=J;if(J=null,re){clearTimeout(re.timer);let O=re.text;re=null;let X=(W.content??[]).map(ae=>ae.text??"").join("").trim();W={...W,content:[{type:"text",text:`${X}
|
|
13
|
+
`}));let x={type:"element",tagName:"span",properties:{class:"line"},children:[]},g=0;for(let h of I){let L={type:"element",tagName:"span",properties:{...h.htmlAttrs},children:[{type:"text",value:h.content}]},w=Bo(h.htmlStyle||ya(h));w&&(L.properties.style=w);for(let b of r)L=b?.span?.call(p,L,C+1,g,x,h)||L;i==="inline"?n.children.push(L):i==="classic"&&x.children.push(L),g+=h.content.length}if(i==="classic"){for(let h of r)x=h?.line?.call(p,x,C+1)||x;c.push(x),s.push(x)}else i==="inline"&&c.push(x)}),i==="classic"){for(let I of r)d=I?.code?.call(p,d)||d;f.children.push(d);for(let I of r)f=I?.pre?.call(p,f)||f;n.children.push(f)}else if(i==="inline"){let I=[],C={type:"element",tagName:"span",properties:{class:"line"},children:[]};for(let h of n.children)h.type==="element"&&h.tagName==="br"?(I.push(C),C={type:"element",tagName:"span",properties:{class:"line"},children:[]}):(h.type==="element"||h.type==="text")&&C.children.push(h);I.push(C);let g={type:"element",tagName:"code",properties:{},children:I};for(let h of r)g=h?.code?.call(p,g)||g;n.children=[];for(let h=0;h<g.children.length;h++){h>0&&n.children.push({type:"element",tagName:"br",properties:{},children:[]});let L=g.children[h];L.type==="element"&&n.children.push(...L.children)}}let m=n;for(let I of r)m=I?.root?.call(p,m)||m;return o&&Aa(m,o),m}function zd(e){return e.map(t=>{let a=[],o="",r;return t.forEach((s,n)=>{let l=!(s.fontStyle&&(s.fontStyle&fe.Underline||s.fontStyle&fe.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 jd(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 Vd(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=Bo(r.htmlStyle||ya(r)),n=Bo(o.htmlStyle||ya(o)),i=r.fontStyle&&(r.fontStyle&fe.Underline||r.fontStyle&fe.Strikethrough),l=o.fontStyle&&(o.fontStyle&fe.Underline||o.fontStyle&fe.Strikethrough);!i&&!l&&s===n?r.content+=o.content:a.push({...o})}return a})}var $d=Mo;function Xd(e,t,a){let o={meta:{},options:a,codeToHast:(s,n)=>Ta(e,s,n),codeToTokens:(s,n)=>ba(e,s,n)},r=$d(Ta(e,t,a,o));for(let s of ka(a))r=s.postprocess?.call(o,r,a)||r;return r}var ln={light:"#333333",dark:"#bbbbbb"},un={light:"#fffffe",dark:"#1e1e1e"},dn="__shiki_resolved";function qo(e){if(e?.[dn])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"?ln.light:ln.dark),a||(a=t.type==="light"?un.light:un.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,dn,{enumerable:!1,writable:!1,value:!0}),t}async function Ln(e){return Array.from(new Set((await Promise.all(e.filter(t=>!cn(t)).map(async t=>await fn(t).then(a=>Array.isArray(a)?a:[a])))).flat()))}async function Cn(e){return(await Promise.all(e.map(async a=>pn(a)?null:qo(await fn(a))))).filter(a=>!!a)}var Fo=3,Qd=!1;function Kd(e,t=3){if(Fo&&!(typeof Fo=="number"&&t>Fo)){if(Qd)throw new Error(`[SHIKI DEPRECATE]: ${e}`);console.trace(`[SHIKI DEPRECATE]: ${e}`)}}var qe=class extends Error{constructor(t){super(t),this.name="ShikiError"}};function In(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 qe(`Circular alias \`${Array.from(a).join(" -> ")} -> ${e}\``);a.add(e)}}return e}var Do=class extends Os{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=qo(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=At.createFromRawTheme(t),this._textmateThemeCache.set(t,a)),this._syncRegistry.setTheme(a)}getGrammar(t){return t=In(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 qe(`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))}},Eo=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}},Dt=0;function Jd(e){Dt+=1,e.warnings!==!1&&Dt>=10&&Dt%10===0&&console.warn(`[Shiki] ${Dt} 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 qe("`engine` option is required for synchronous mode");let a=(e.langs||[]).flat(1),o=(e.themes||[]).flat(1).map(qo),r=new Eo(e.engine,a),s=new Do(r,o,a,e.langAlias),n;function i(h){return In(h,e.langAlias)}function l(h){x();let L=s.getGrammar(typeof h=="string"?h:h.name);if(!L)throw new qe(`Language \`${h}\` not found, you may need to load it first`);return L}function u(h){if(h==="none")return{bg:"",fg:"",name:"none",settings:[],type:"dark"};x();let L=s.getTheme(h);if(!L)throw new qe(`Theme \`${h}\` not found, you may need to load it first`);return L}function f(h){x();let L=u(h);n!==h&&(s.setTheme(L),n=h);let w=s.getColorMap();return{theme:L,colorMap:w}}function d(){return x(),s.getLoadedThemes()}function c(){return x(),s.getLoadedLanguages()}function p(...h){x(),s.loadLanguages(h.flat(1))}async function m(...h){return p(await Ln(h))}function I(...h){x();for(let L of h.flat(1))s.loadTheme(L)}async function C(...h){return x(),I(await Cn(h))}function x(){if(t)throw new qe("Shiki instance has been disposed")}function g(){t||(t=!0,s.dispose(),Dt-=1)}return{setTheme:f,getTheme:u,getLanguage:l,getLoadedThemes:d,getLoadedLanguages:c,resolveLangAlias:i,loadLanguage:m,loadLanguageSync:p,loadTheme:C,loadThemeSync:I,dispose:g,[Symbol.dispose]:g}}async function Zd(e){e.engine||Kd("`engine` option is required. Use `createOnigurumaEngine` or `createJavaScriptRegexEngine` to create an engine.");let[t,a,o]=await Promise.all([Cn(e.themes||[]),Ln(e.langs||[]),e.engine]);return Jd({...e,themes:t,langs:a,engine:o})}async function Yd(e){let t=await Zd(e);return{getLastGrammarState:(...a)=>_d(t,...a),codeToTokensBase:(a,o)=>Uo(t,a,o),codeToTokensWithThemes:(a,o)=>xn(t,a,o),codeToTokens:(a,o)=>ba(t,a,o),codeToHast:(a,o)=>Ta(t,a,o),codeToHtml:(a,o)=>Xd(t,a,o),getBundledLanguages:()=>({}),getBundledThemes:()=>({}),...t,getInternalContext:()=>t}}function Sn(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,cn(d))return[];let c=t[d];if(!c)throw new Z(`Language \`${d}\` is not included in this bundle. You may want to load it from external source.`);return c}return d}function i(d){if(pn(d))return"none";if(typeof d=="string"){let c=a[d];if(!c)throw new Z(`Theme \`${d}\` is not included in this bundle. You may want to load it from external source.`);return c}return d}let l=(s.themes??[]).map(d=>i(d)),u=(s.langs??[]).map(d=>n(d)),f=await Yd({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 ef(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 yn(e,t){let a=ef(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 Go=[{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"))}],kn=Object.fromEntries(Go.map(e=>[e.id,e.import])),bn=Object.fromEntries(Go.flatMap(e=>e.aliases?.map(t=>[t,e.import])||[])),_t={...kn,...bn};var tf=[{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"))}],Tn=Object.fromEntries(tf.map(e=>[e.id,e.import]));var Nt=class extends Error{constructor(t){super(t),this.name="ShikiError"}};function af(){return 2147483648}function of(){return typeof performance<"u"?performance.now():Date.now()}var rf=(e,t)=>e+(t-e%t)%t;async function sf(e){let t,a,o={};function r(p){a=p,o.HEAPU8=new Uint8Array(p),o.HEAPU32=new Uint32Array(p)}function s(p,m,I){o.HEAPU8.copyWithin(p,m,m+I)}function n(p){try{return t.grow(p-a.byteLength+65535>>>16),r(t.buffer),1}catch{}}function i(p){let m=o.HEAPU8.length;p=p>>>0;let I=af();if(p>I)return!1;for(let C=1;C<=4;C*=2){let x=m*(1+.2/C);x=Math.min(x,p+100663296);let g=Math.min(I,rf(Math.max(p,x),65536));if(n(g))return!0}return!1}let l=typeof TextDecoder<"u"?new TextDecoder("utf8"):void 0;function u(p,m,I=1024){let C=m+I,x=m;for(;p[x]&&!(x>=C);)++x;if(x-m>16&&p.buffer&&l)return l.decode(p.subarray(m,x));let g="";for(;m<x;){let h=p[m++];if(!(h&128)){g+=String.fromCharCode(h);continue}let L=p[m++]&63;if((h&224)===192){g+=String.fromCharCode((h&31)<<6|L);continue}let w=p[m++]&63;if((h&240)===224?h=(h&15)<<12|L<<6|w:h=(h&7)<<18|L<<12|w<<6|p[m++]&63,h<65536)g+=String.fromCharCode(h);else{let b=h-65536;g+=String.fromCharCode(55296|b>>10,56320|b&1023)}}return g}function f(p,m){return p?u(o.HEAPU8,p,m):""}let d={emscripten_get_now:of,emscripten_memcpy_big:s,emscripten_resize_heap:i,fd_write:()=>0};async function c(){let m=await e({env:d,wasi_snapshot_preview1:d});t=m.memory,r(t.buffer),Object.assign(o,m),o.UTF8ToString=f}return await c(),o}var nf=Object.defineProperty,lf=(e,t,a)=>t in e?nf(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a,ne=(e,t,a)=>lf(e,typeof t!="symbol"?t+"":t,a),ie=null;function uf(e){throw new Nt(e.UTF8ToString(e.getLastOnigError()))}var Ma=class e{constructor(t){ne(this,"utf16Length"),ne(this,"utf8Length"),ne(this,"utf16Value"),ne(this,"utf8Value"),ne(this,"utf16OffsetToUtf8"),ne(this,"utf8OffsetToUtf16");let a=t.length,o=e._utf8ByteLength(t),r=o!==a,s=r?new Uint32Array(a+1):null;r&&(s[a]=o);let n=r?new Uint32Array(o+1):null;r&&(n[o]=a);let i=new Uint8Array(o),l=0;for(let u=0;u<a;u++){let f=t.charCodeAt(u),d=f,c=!1;if(f>=55296&&f<=56319&&u+1<a){let p=t.charCodeAt(u+1);p>=56320&&p<=57343&&(d=(f-55296<<10)+65536|p-56320,c=!0)}r&&(s[u]=l,c&&(s[u+1]=l),d<=127?n[l+0]=u:d<=2047?(n[l+0]=u,n[l+1]=u):d<=65535?(n[l+0]=u,n[l+1]=u,n[l+2]=u):(n[l+0]=u,n[l+1]=u,n[l+2]=u,n[l+3]=u)),d<=127?i[l++]=d:d<=2047?(i[l++]=192|(d&1984)>>>6,i[l++]=128|(d&63)>>>0):d<=65535?(i[l++]=224|(d&61440)>>>12,i[l++]=128|(d&4032)>>>6,i[l++]=128|(d&63)>>>0):(i[l++]=240|(d&1835008)>>>18,i[l++]=128|(d&258048)>>>12,i[l++]=128|(d&4032)>>>6,i[l++]=128|(d&63)>>>0),c&&u++}this.utf16Length=a,this.utf8Length=o,this.utf16Value=t,this.utf8Value=i,this.utf16OffsetToUtf8=s,this.utf8OffsetToUtf16=n}static _utf8ByteLength(t){let a=0;for(let o=0,r=t.length;o<r;o++){let s=t.charCodeAt(o),n=s,i=!1;if(s>=55296&&s<=56319&&o+1<r){let l=t.charCodeAt(o+1);l>=56320&&l<=57343&&(n=(s-55296<<10)+65536|l-56320,i=!0)}n<=127?a+=1:n<=2047?a+=2:n<=65535?a+=3:a+=4,i&&o++}return a}createString(t){let a=t.omalloc(this.utf8Length);return t.HEAPU8.set(this.utf8Value,a),a}},Ra=class Re{constructor(t){if(ne(this,"id",++Re.LAST_ID),ne(this,"_onigBinding"),ne(this,"content"),ne(this,"utf16Length"),ne(this,"utf8Length"),ne(this,"utf16OffsetToUtf8"),ne(this,"utf8OffsetToUtf16"),ne(this,"ptr"),!ie)throw new Nt("Must invoke loadWasm first.");this._onigBinding=ie,this.content=t;let a=new Ma(t);this.utf16Length=a.utf16Length,this.utf8Length=a.utf8Length,this.utf16OffsetToUtf8=a.utf16OffsetToUtf8,this.utf8OffsetToUtf16=a.utf8OffsetToUtf16,this.utf8Length<1e4&&!Re._sharedPtrInUse?(Re._sharedPtr||(Re._sharedPtr=ie.omalloc(1e4)),Re._sharedPtrInUse=!0,ie.HEAPU8.set(a.utf8Value,Re._sharedPtr),this.ptr=Re._sharedPtr):this.ptr=a.createString(ie)}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===Re._sharedPtr?Re._sharedPtrInUse=!1:this._onigBinding.ofree(this.ptr)}};ne(Ra,"LAST_ID",0);ne(Ra,"_sharedPtr",0);ne(Ra,"_sharedPtrInUse",!1);var Pn=Ra,zo=class{constructor(t){if(ne(this,"_onigBinding"),ne(this,"_ptr"),!ie)throw new Nt("Must invoke loadWasm first.");let a=[],o=[];for(let i=0,l=t.length;i<l;i++){let u=new Ma(t[i]);a[i]=u.createString(ie),o[i]=u.utf8Length}let r=ie.omalloc(4*t.length);ie.HEAPU32.set(a,r/4);let s=ie.omalloc(4*t.length);ie.HEAPU32.set(o,s/4);let n=ie.createOnigScanner(r,s,t.length);for(let i=0,l=t.length;i<l;i++)ie.ofree(a[i]);ie.ofree(s),ie.ofree(r),n===0&&uf(ie),this._onigBinding=ie,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 Pn(t);let s=this._findNextMatchSync(t,a,!1,r);return t.dispose(),s}return this._findNextMatchSync(t,a,!1,r)}_findNextMatchSync(t,a,o,r){let s=this._onigBinding,n=s.findNextOnigScannerMatch(this._ptr,t.id,t.ptr,t.utf8Length,t.convertUtf16OffsetToUtf8(a),r);if(n===0)return null;let i=s.HEAPU32,l=n/4,u=i[l++],f=i[l++],d=[];for(let c=0;c<f;c++){let p=t.convertUtf8OffsetToUtf16(i[l++]),m=t.convertUtf8OffsetToUtf16(i[l++]);d[c]={start:p,end:m,length:m-p}}return{index:u,captureIndices:d}}};function df(e){return typeof e.instantiator=="function"}function ff(e){return typeof e.default=="function"}function cf(e){return typeof e.data<"u"}function pf(e){return typeof Response<"u"&&e instanceof Response}function mf(e){return typeof ArrayBuffer<"u"&&(e instanceof ArrayBuffer||ArrayBuffer.isView(e))||typeof Buffer<"u"&&Buffer.isBuffer?.(e)||typeof SharedArrayBuffer<"u"&&e instanceof SharedArrayBuffer||typeof Uint32Array<"u"&&e instanceof Uint32Array}var va;function hf(e){if(va)return va;async function t(){ie=await sf(async a=>{let o=e;return o=await o,typeof o=="function"&&(o=await o(a)),typeof o=="function"&&(o=await o(a)),df(o)?o=await o.instantiator(a):ff(o)?o=await o.default(a):(cf(o)&&(o=o.data),pf(o)?typeof WebAssembly.instantiateStreaming=="function"?o=await gf(o)(a):o=await wf(o)(a):mf(o)?o=await Wo(o)(a):o instanceof WebAssembly.Module?o=await Wo(o)(a):"default"in o&&o.default instanceof WebAssembly.Module&&(o=await Wo(o.default)(a))),"instance"in o&&(o=o.instance),"exports"in o&&(o=o.exports),o})}return va=t(),va}function Wo(e){return t=>WebAssembly.instantiate(e,t)}function gf(e){return t=>WebAssembly.instantiateStreaming(e,t)}function wf(e){return async t=>{let a=await e.arrayBuffer();return WebAssembly.instantiate(a,t)}}async function An(e){return e&&await hf(e),{createScanner(t){return new zo(t.map(a=>typeof a=="string"?a:a.source))},createString(t){return new Pn(t)}}}var Fa=Sn({langs:_t,themes:Tn,engine:()=>An(import("../wasm-EOPKAILK.js"))}),{codeToHtml:xf,codeToHast:Lf,codeToTokens:Cf,codeToTokensBase:If,codeToTokensWithThemes:Sf,getSingletonHighlighter:yf,getLastGrammarState:kf}=yn(Fa,{guessEmbeddedLanguages:hn});var vn=new Set(Object.keys(_t)),jo=new Map,Vo=new Map,dt=new Map,bf=(e,t)=>`${e}-${t[0]}-${t[1]}`,Tf=(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}`},Pf=(e,t)=>{let a=bf(e,t);if(jo.has(a))return jo.get(a);let o=Fa({themes:t,langs:[e]});return jo.set(a,o),o};function Af(e={}){var t;let a=(t=e.themes)!=null?t:["github-light","github-dark"];return{name:"shiki",type:"code-highlighter",supportsLanguage(o){return vn.has(o)},getSupportedLanguages(){return Array.from(vn)},getThemes(){return a},highlight({code:o,language:r,themes:s},n){let i=Tf(o,r,s);return Vo.has(i)?Vo.get(i):(n&&(dt.has(i)||dt.set(i,new Set),dt.get(i).add(n)),Pf(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]}});Vo.set(i,f);let d=dt.get(i);if(d){for(let c of d)c(f);dt.delete(i)}}).catch(l=>{console.error("[Streamdown Code] Failed to highlight code:",l),dt.delete(i)}),null)}}}var Mn=Af();import{memo as vf}from"react";import{jsx as Ba}from"react/jsx-runtime";var Da=({className:e,from:t,children:a,...o})=>Ba("div",{className:T("ww:group ww:flex ww:w-full",t==="user"?"is-user ww:ml-auto ww:max-w-[80%] ww:flex-col ww:items-end":"is-assistant ww:flex-col",e),...o,children:Ba("div",{className:T("ww:flex ww:min-w-0 ww:flex-col ww:gap-2","ww:w-full"),children:a})}),Ea=({children:e,className:t,...a})=>Ba("div",{className:T("ww:flex ww:w-fit ww:min-w-0 ww:max-w-full ww:flex-col ww:gap-2 ww:overflow-hidden ww:text-base","ww:group-[.is-user]:ml-auto ww:group-[.is-user]:rounded-lg ww:group-[.is-user]:bg-user-bubble ww:group-[.is-user]:px-4 ww:group-[.is-user]:py-3 ww:group-[.is-user]:text-primary-foreground","ww:group-[.is-assistant]:text-foreground",t),...a,children:e}),Mf={cjk:cs,code:Mn},Rf={enabled:!1},_a=vf(({className:e,linkSafety:t,...a})=>Ba(ro,{className:T("ww:size-full ww:[&>*:first-child]:mt-0 ww:[&>*:last-child]:mb-0",e),linkSafety:t??Rf,plugins:Mf,...a}),(e,t)=>e.children===t.children);_a.displayName="MessageResponse";import{jsx as Ff}from"react/jsx-runtime";function Rn({className:e,text:t,...a}){return t?Ff("pre",{className:T("ww:mb-2 ww:overflow-x-auto ww:whitespace-pre-wrap ww:break-words ww:text-xs ww:font-mono ww:text-muted-foreground",e),...a,children:t}):null}import{createContext as Bf,useCallback as Df,useContext as En,useEffect as Ef,useMemo as Xo,useRef as _f,useState as Qo}from"react";import{Fragment as Dn,jsx as z,jsxs as Ee}from"react/jsx-runtime";function Nf(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 Of({text:e,className:t}){let[a,o]=Qo(!1),r=_f(null);Ef(()=>()=>{r.current&&clearTimeout(r.current)},[]);let s=Df(async n=>{n.stopPropagation();try{await navigator.clipboard.writeText(e),o(!0),r.current&&clearTimeout(r.current),r.current=setTimeout(()=>o(!1),2e3)}catch{}},[e]);return z(ke,{variant:"ghost",size:"sm",onClick:s,className:T("ww:h-auto ww:gap-1 ww:px-1.5 ww:py-0.5 ww:text-xs ww:text-muted-foreground ww:hover:text-foreground",t),children:a?Ee(Dn,{children:[z(mt,{className:"ww:size-3.5"}),z("span",{children:"Copied"})]}):Ee(Dn,{children:[z(wt,{className:"ww:size-3.5"}),z("span",{children:"Copy"})]})})}function _n({data:e,label:t,className:a,...o}){let[r,s]=Qo(!1),n=Xo(()=>JSON.stringify(e,null,2),[e]),i=Nf(e);return Ee("div",{className:T("ww:rounded-lg ww:bg-tool-card",a),...o,children:[Ee("div",{className:"ww:flex ww:items-center ww:justify-between ww:px-3 ww:pt-2.5 ww:pb-1.5",children:[z("span",{className:"ww:text-xs ww:font-medium ww:text-muted-foreground",children:t}),z(Of,{text:n})]}),Ee("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:[z(gt,{className:T("ww:mt-0.5 ww:size-3.5 ww:shrink-0 ww:text-muted-foreground ww:transition-transform ww:duration-150",r&&"ww:rotate-90")}),r?z("pre",{className:"ww:overflow-x-auto ww:text-xs ww:font-mono ww:text-foreground ww:whitespace-pre-wrap ww:break-all",children:z("code",{children:n})}):z("span",{className:"ww:truncate ww:text-xs ww:font-mono ww:text-foreground/80",children:i})]})]})}var Ko=Bf({open:!1,toggle:()=>{}});function Nn({className:e,defaultOpen:t=!1,children:a,...o}){let[r,s]=Qo(t);return z(Ko.Provider,{value:{open:r,toggle:()=>s(n=>!n)},children:z("div",{className:T("ww:mb-4 ww:w-full",e),"data-state":r?"open":"closed",...o,children:a})})}function On({className:e,title:t,state:a,...o}){let{open:r,toggle:s}=En(Ko),n=a==="input-available"||a==="input-streaming";return Ee("button",{type:"button",onClick:s,className:T("ww:flex ww:w-full ww:items-center ww:justify-between ww:gap-3 ww:py-1.5",e),"aria-expanded":r,...o,children:[Ee("div",{className:"ww:flex ww:min-w-0 ww:items-center ww:gap-2",children:[z(Oe,{className:"ww:size-4 ww:shrink-0 ww:text-muted-foreground"}),z("span",{className:"ww:truncate ww:text-sm ww:font-medium",children:t}),n&&z("span",{className:"ww:size-2 ww:shrink-0 ww:rounded-full ww:bg-primary ww:animate-pulse"})]}),z(ht,{className:T("ww:size-4 ww:shrink-0 ww:text-muted-foreground ww:transition-transform ww:duration-200",r&&"ww:rotate-180")})]})}function Un({className:e,title:t,state:a,...o}){let r=a==="input-available"||a==="input-streaming";return Ee("div",{className:T("ww:mb-4 ww:flex ww:items-center ww:gap-2 ww:py-1.5 ww:text-sm ww:text-muted-foreground ww:italic",e),...o,children:[z("span",{className:"ww:truncate",children:t}),r&&z("span",{className:"ww:size-2 ww:shrink-0 ww:rounded-full ww:bg-primary ww:animate-pulse"})]})}function Hn({className:e,children:t,...a}){let{open:o}=En(Ko);return z("div",{className:T("ww:grid ww:transition-[grid-template-rows,opacity] ww:duration-200 ww:ease-out",o?"ww:grid-rows-[1fr] ww:opacity-100":"ww:grid-rows-[0fr] ww:opacity-0"),children:z("div",{className:"ww:min-h-0 ww:overflow-hidden",children:z("div",{className:T("ww: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 qn({className:e,input:t,debug:a,...o}){let r=Xo(()=>{if(!a&&typeof t=="object"&&t!==null&&!Array.isArray(t)){let{_meta:s,...n}=t;return n}return t},[t,a]);return z(_n,{data:r,label:"Request",className:e,...o})}function $o(e){if(!(typeof e!="object"||e===null))return e}function Gn(e){return $o(e?.ui)}function Wn(e){return $o($o(e)?._meta)}function Fn(e){if(!e)return;let t=Gn(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 Bn(e){return Gn(e)?.autoHeight===!0}function Na(e,t,a){if(e){let o=Fn(a?.[e]?._meta);if(o)return o}return Fn(Wn(t))}function zn(e,t,a){return e&&Bn(a?.[e]?._meta)?!0:Bn(Wn(t))}function jn({className:e,output:t,errorText:a,debug:o,...r}){let s=Xo(()=>{if(!o&&typeof t=="object"&&t!==null&&!Array.isArray(t)){let{_meta:n,...i}=t;return i}return t},[t,o]);return t||a?a?Ee("div",{className:T("ww:space-y-2",e),...r,children:[z("h4",{className:"ww:text-xs ww:font-medium ww:uppercase ww:tracking-wide ww:text-muted-foreground",children:"Error"}),z("div",{className:"ww:rounded-lg ww:bg-destructive/10 ww:p-3 ww:text-xs ww:text-destructive",children:a})]}):z(_n,{data:s,label:"Response",className:e,...r}):null}import{useCallback as Uf,useEffect as $n,useMemo as Hf,useRef as xe,useState as Xn}from"react";function ft(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 Vn(e,t){return!ft(e)&&!ft(t)?null:ft(e)?ft(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 Jf}from"react/jsx-runtime";var qf="/api/mcp/resource",Gf=500,Wf=0,zf=16,jf="2026-01-26",Vf=300,$f=3e3,Xf=3;function Qf(e){if(typeof e!="string")return;let t=e.trim();return t.length>0?t:void 0}function Kf(e,t,a){return Na(e,t,a)?!1:t._meta?.["waniwani/autoInjectResultText"]!==!1}function Jo({resourceUri:e,toolInput:t,toolResult:a,resourceEndpoint:o=qf,chatSessionId:r,isDark:s=!1,className:n,autoHeight:i=!1,onOpenLink:l,onFollowUp:u,onCallTool:f,onDisplayModeChange:d,isFullscreen:c=!1,toolDefinitions:p}){let m=xe(null),I=xe(t),C=xe(a),x=xe({width:0,height:0}),g=xe(null),h=xe(!1),L=xe(0),w=xe("inline"),[b,P]=Xn(Wf),[y,D]=Xn(void 0),v=xe(l),F=xe(u),k=xe(f),B=xe(d),H=xe(r),U=xe(p);I.current=t,C.current=a,v.current=l,F.current=u,k.current=f,B.current=d,H.current=r,U.current=p;let ue=Uf(q=>i?Math.max(q+zf,0):Math.min(Math.max(q,50),Gf),[i]),ge=Hf(()=>{let q=o.includes("?")?"&":"?";return`${o}${q}uri=${encodeURIComponent(e)}`},[o,e]),K=xe(s);return K.current=s,$n(()=>{if(!h.current)return;let q=m.current;q?.contentWindow&&q.contentWindow.postMessage({jsonrpc:"2.0",method:"ui/notifications/host-context-changed",params:{theme:s?"dark":"light"}},"*")},[s]),$n(()=>{let q=m.current;if(!q)return;let ee=!1,_=!1,J=null,re=null,A=setTimeout(()=>{if(ee||_||L.current>=Xf)return;L.current+=1;let j=new URL(q.src);j.searchParams.set("_retry",String(L.current)),q.src=j.toString()},$f),R=j=>{q.contentWindow?.postMessage(j,"*")},se=j=>{if(ee||j.source!==q.contentWindow)return;let G=j.data;if(!G||typeof G!="object"||G.jsonrpc!=="2.0")return;let V=G.method,N=G.id;if(V==="ui/initialize"&&N!=null){_=!0,clearTimeout(A),R({jsonrpc:"2.0",id:N,result:{protocolVersion:G.params?.protocolVersion??jf,hostInfo:{name:"WaniWani Chat",version:"1.0.0"},hostCapabilities:{openLinks:{},message:{text:{}},tools:{},updateModelContext:{text:{},structuredContent:{}}},hostContext:{theme:K.current?"dark":"light",displayMode:w.current}}});return}if(V==="ui/notifications/initialized"){h.current=!0;let W=I.current,$=C.current,O=$._meta&&typeof $._meta=="object"?$._meta:null,X=Qf(H.current),ae=O&&typeof O.waniwani=="object"&&O.waniwani!==null?O.waniwani:null,Se=ae||X?{...ae??{},...X?{sessionId:X}:{}}:void 0,_e=O||Se?{...O??{},...Se?{waniwani:Se}:{}}:void 0;R({jsonrpc:"2.0",method:"ui/notifications/tool-input",params:{arguments:W}});let tt=$.content??[{type:"text",text:JSON.stringify($)}];R({jsonrpc:"2.0",method:"ui/notifications/tool-result",params:{content:tt,structuredContent:$.structuredContent,_meta:_e,meta:_e}});return}if(V==="ui/notifications/size-changed"){let W=G.params,$=typeof W?.height=="number"?W.height:void 0,O=typeof W?.width=="number"?W.width:void 0,X=x.current,ae=$!==void 0&&$!==X.height,Se=O!==void 0&&O!==X.width;if(!ae&&!Se)return;if(ae&&$!==void 0){X.height=$;let _e=ue($),tt=q.getBoundingClientRect().height;if(g.current&&(g.current.cancel(),g.current=null),P(_e),q.animate&&Math.abs(tt-_e)>2){let at=q.animate([{height:`${tt}px`},{height:`${_e}px`}],{duration:Vf,easing:"ease-out",fill:"forwards"});g.current=at,at.onfinish=()=>{g.current===at&&(at.cancel(),g.current=null)}}}Se&&i&&O!==void 0&&(X.width=O,D(O));return}if(V==="ui/open-link"&&N!=null){let W=G.params?.url;typeof W=="string"&&(v.current?v.current(W):window.open(W,"_blank","noopener,noreferrer")),R({jsonrpc:"2.0",id:N,result:{}});return}if(V==="ui/message"&&N!=null){if(F.current&&G.params){let W=G.params,$=J;if(J=null,re){clearTimeout(re.timer);let O=re.text;re=null;let X=(W.content??[]).map(ae=>ae.text??"").join("").trim();W={...W,content:[{type:"text",text:`${X}
|
|
14
14
|
|
|
15
|
-
${O}`}]}}F.current({...W,...$?{modelContext:$}:{}})}R({jsonrpc:"2.0",id:N,result:{}});return}if(V==="ui/update-model-context"&&N!=null){J=Vn(J,G.params),R({jsonrpc:"2.0",id:N,result:{}});return}if(V==="tools/call"&&N!=null){let W=k.current;if(!W){R({jsonrpc:"2.0",id:N,error:{code:-32601,message:"tools/call not supported"}});return}let $=G.params?.name;W({name:$,arguments:G.params?.arguments??{}}).then(O=>{R({jsonrpc:"2.0",id:N,result:O});let X=O.content?.map(ae=>ae.text??"").join("").trim();X&&Qf($,O,U.current)&&(re&&clearTimeout(re.timer),re={text:X,timer:setTimeout(()=>{if(ee)return;let ae=J;J=null,re=null,F.current?.({role:"user",content:[{type:"text",text:X}],...ae?{modelContext:ae}:{}})},500)})}).catch(O=>{let X=O instanceof Error?O.message:"Tool call failed";R({jsonrpc:"2.0",id:N,error:{code:-32e3,message:X}})});return}if(V==="ui/request-display-mode"&&N!=null){let W=G.params?.mode,$=W==="fullscreen"||W==="inline"||W==="pip"?W:"inline";w.current=$,R({jsonrpc:"2.0",id:N,result:{mode:$}}),R({jsonrpc:"2.0",method:"ui/notifications/host-context-changed",params:{displayMode:$}}),B.current?.($);return}if(V==="ui/resource-teardown"&&N!=null){R({jsonrpc:"2.0",id:N,result:{}});return}V==="ping"&&N!=null&&R({jsonrpc:"2.0",id:N,result:{}})};return window.addEventListener("message",se),()=>{ee=!0,clearTimeout(A),re&&clearTimeout(re.timer),window.removeEventListener("message",se)}},[i,ue]),Kf("iframe",{ref:m,src:ge,sandbox:"allow-scripts allow-forms allow-same-origin",className:T(!c&&"ww:rounded-md ww:border ww:border-border",n),style:{height:c?"100%":b,minWidth:c||!y?void 0:`min(${y}px, 100%)`,width:"100%",border:"none",colorScheme:s?"dark":"auto"},title:"MCP App"})}import{jsx as Ot,jsxs as Jf}from"react/jsx-runtime";function Qn({icon:e,title:t,description:a,suggestions:o,onSuggestionSelect:r}){return Jf("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&&Ot("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}),Ot("h2",{className:"ww:text-lg ww:font-semibold ww:text-foreground",children:t}),a&&Ot("p",{className:"ww:mt-1 ww:text-sm ww:text-muted-foreground ww:max-w-sm",children:a}),o&&o.length>0&&Ot("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)=>Ot("button",{type:"button",onClick:()=>r?.(s),className:T("ww:w-full ww:text-left ww:rounded-xl ww:border ww:border-border ww:bg-background ww:px-4 ww:py-3 ww:text-sm","ww:text-foreground ww:hover:bg-accent ww:hover:border-primary/30","ww:transition-all ww:duration-200 ww:ease-out ww:cursor-pointer","ww:animate-[ww-fade-in_0.2s_ease-out_both]"),style:{animationDelay:`${n*50}ms`},children:s},s))})]})}import{Component as Zf}from"react";import{jsx as Kn,jsxs as Yf}from"react/jsx-runtime";var Oa=class extends Zf{state={hasError:!1};static getDerivedStateFromError(){return{hasError:!0}}componentDidCatch(t){console.warn("[WaniWani] Widget failed to render:",t.message)}render(){return this.state.hasError?Yf("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:[Kn("span",{children:"Widget failed to load"}),Kn("button",{type:"button",onClick:()=>this.setState({hasError:!1}),className:"ww:text-xs ww:font-medium ww:text-primary ww:hover:underline",children:"Retry"})]}):this.props.children}};import{Fragment as ec,jsx as oe,jsxs as ct}from"react/jsx-runtime";function Jn(e){return e?e.replace(/[-_]/g," ").replace(/^\w/,t=>t.toUpperCase()):"Tool"}function Ua({messages:e,status:t,welcomeMessage:a,welcome:o,onSuggestionSelect:r,resourceEndpoint:s,chatSessionId:n,isDark:i,onFollowUp:l,onCallTool:u,onWidgetDisplayModeChange:f,fullscreenToolCallId:d,debug:c,showToolCalls:p=!0,toolDefinitions:m}){let I=t==="submitted"||t==="streaming",C=e[e.length-1],x=e.length>0,g=I&&(!x||C.role==="user"),h=d!=null;return ct(ec,{children:[!h&&(!x&&o?oe(Qn,{...o,onSuggestionSelect:r}):a&&oe(Da,{from:"assistant",children:oe(Ea,{children:oe(_a,{children:a})})})),e.map(L=>{let w=L.parts.filter(k=>k.type==="text"),b=L.parts.filter(k=>k.type==="reasoning"),P=L.parts.filter(k=>k.type==="file"),y=L.parts.filter(k=>"toolCallId"in k),D=L===C&&L.role==="assistant",v=w.length>0,F=h?y.some(k=>k.toolCallId===d):!1;return h&&!F?oe("div",{style:{display:"none"}},L.id):ct(Da,{from:L.role,children:[!F&&b.map((k,B)=>oe(Rn,{text:k.text},`reasoning-${L.id}-${B}`)),y.map(k=>{let B="output"in k?k.output:void 0,H=Na(k.toolName,B,m),U=zn(k.toolName,B,m),ue=k.toolCallId===d;return ct("div",{style:ue?{position:"absolute",inset:0,zIndex:10,display:"flex",flexDirection:"column",overflow:"hidden",background:"var(--ww-color-background)"}:void 0,children:[oe("div",{style:ue?{display:"none"}:void 0,children:p?ct(Nn,{children:[oe(On,{title:k.title??Jn(k.toolName),state:k.state}),ct(Hn,{children:[oe(qn,{input:k.input,debug:c}),B!==void 0&&oe(jn,{output:B,errorText:"errorText"in k?k.errorText:void 0,debug:c})]})]}):oe(Un,{title:k.title??Jn(k.toolName),state:k.state})}),H&&s&&B!==void 0&&oe(Oa,{children:oe(Jo,{isFullscreen:ue,resourceUri:H,toolInput:k.input??{},toolResult:{content:B.content,structuredContent:B.structuredContent,_meta:B._meta},resourceEndpoint:s,chatSessionId:n,isDark:i,autoHeight:U,toolDefinitions:m,onFollowUp:l,onCallTool:u,onDisplayModeChange:f?ge=>f(ge,{toolCallId:k.toolCallId,resourceUri:H,toolInput:k.input??{},toolResult:{content:B.content,structuredContent:B.structuredContent,_meta:B._meta},autoHeight:U}):void 0})})]},k.toolCallId)}),!F&&oe("div",{children:ct(Ea,{children:[P.length>0&&oe(Jr,{files:P}),v?w.map((k,B)=>oe(_a,{children:k.type==="text"?k.text:""},`${L.id}-${B}`)):D&&I&&oe(mo,{})]})})]},L.id)}),!h&&g&&oe(Da,{from:"assistant",children:oe(Ea,{children:oe(mo,{})})})]})}import{jsx as Zo,jsxs as oc}from"react/jsx-runtime";var tc="https://app.waniwani.ai/assets/waniwani-logo.svg",ac="https://waniwani.ai";function Ha(){return Zo("div",{className:"ww:pt-2 ww:pb-1 ww:flex ww:justify-center",children:oc("a",{href:ac,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:[Zo("span",{children:"powered by"}),Zo("img",{src:tc,alt:"WaniWani",width:72,height:10,className:"ww:h-2.5 ww:w-auto"})]})})}import{jsx as qa}from"react/jsx-runtime";function Ga({suggestions:e,isLoading:t,onSelect:a,className:o,...r}){return e.length===0&&!t?null:qa("div",{className:T("ww:px-4 ww:py-2",o),...r,children:qa("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=>qa("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)=>qa("button",{type:"button",onClick:()=>a(s),className:T("ww:rounded-full ww:border ww:border-border ww:bg-background ww:px-3 ww:py-1 ww:text-xs","ww:text-foreground ww:hover:bg-accent ww:hover:border-primary/30","ww:transition-all ww:duration-200 ww:ease-out ww:cursor-pointer","ww:animate-[ww-fade-in_0.2s_ease-out_both]"),style:{animationDelay:`${n*50}ms`},children:s},s))})})}import{useEffect as rc,useRef as sc,useState as nc}from"react";import{jsx as Y,jsxs as We}from"react/jsx-runtime";var Zn=20;function ic(e){let t=Date.parse(e);if(Number.isNaN(t))return"";let a=Date.now()-t;return a<6e4?"just now":a<60*6e4?`${Math.floor(a/6e4)}m ago`:a<1440*6e4?`${Math.floor(a/(60*6e4))}h ago`:`${Math.floor(a/(1440*6e4))}d ago`}function lc(){return We("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":"New chat",children:[Y("title",{children:"New chat"}),Y("line",{x1:"12",y1:"5",x2:"12",y2:"19"}),Y("line",{x1:"5",y1:"12",x2:"19",y2:"12"})]})}function uc(){return We("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":"Thread history",children:[Y("title",{children:"Thread history"}),Y("path",{d:"M3 12a9 9 0 1 0 3-6.7"}),Y("polyline",{points:"3 4 3 9 8 9"}),Y("line",{x1:"12",y1:"7",x2:"12",y2:"12"}),Y("line",{x1:"12",y1:"12",x2:"15",y2:"14"})]})}function dc(){return We("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":"Delete thread",children:[Y("title",{children:"Delete thread"}),Y("polyline",{points:"3 6 5 6 21 6"}),Y("path",{d:"M19 6l-2 14a2 2 0 0 1-2 2H9a2 2 0 0 1-2-2L5 6"}),Y("path",{d:"M10 11v6"}),Y("path",{d:"M14 11v6"})]})}function Wa({threads:e,activeThreadId:t,onNewThread:a,onSelectThread:o,onDeleteThread:r}){let[s,n]=nc(!1),i=sc(null);rc(()=>{if(!s)return;let f=d=>{let c=i.current;c&&(d.composedPath().includes(c)||n(!1))};return document.addEventListener("mousedown",f),()=>document.removeEventListener("mousedown",f)},[s]);let l=e.slice(0,Zn),u=Math.max(0,e.length-Zn);return We("div",{ref:i,className:"ww:relative ww:flex ww:items-center ww:gap-1",children:[Y("button",{type:"button",onClick:a,title:"New chat","aria-label":"New chat",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:Y(lc,{})}),Y("button",{type:"button",onClick:()=>n(f=>!f),title:"Thread history","aria-label":"Thread history","aria-expanded":s,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:Y(uc,{})}),s&&We("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:[l.length===0&&Y("div",{className:"ww:px-3 ww:py-3 ww:text-xs ww:text-muted-foreground",children:"No previous chats yet."}),l.map(f=>{let d=f.threadId===t;return We("div",{className:`ww:flex ww:items-center ww:gap-2 ww:px-3 ww:py-2 ww:text-xs hover:ww:bg-foreground/5 ${d?"ww:bg-foreground/5":""}`,children:[We("button",{type:"button",onClick:()=>{o(f.threadId),n(!1)},className:"ww:flex-1 ww:min-w-0 ww:text-left ww:cursor-pointer",children:[Y("div",{className:"ww:truncate ww:text-foreground ww:font-medium",children:f.title}),Y("div",{className:"ww:text-[10px] ww:text-muted-foreground",children:ic(f.updatedAt)})]}),Y("button",{type:"button",onClick:c=>{c.stopPropagation(),r(f.threadId)},title:"Delete thread","aria-label":"Delete thread",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:Y(dc,{})})]},f.threadId)}),u>0&&We("div",{className:"ww:px-3 ww:py-2 ww:text-[10px] ww:text-muted-foreground ww:border-t ww:border-border",children:[u," older thread",u===1?"":"s"," hidden"]})]})]})}import{useCallback as fc,useRef as cc}from"react";function za(e){let t=cc(e);return t.current=e,fc(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 vc}from"@ai-sdk/react";import{useCallback as ce,useEffect as Ae,useRef as le,useState as Ye}from"react";import{DefaultChatTransport as pc,uiMessageChunkSchema as mc}from"ai";function hc(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 ja=class extends pc{processResponseStream(t){let a="",o=mc(),r=o.validate?.bind(o);return t.pipeThrough(new TextDecoderStream).pipeThrough(new TransformStream({async transform(s,n){a+=s;let i=a.split(`
|
|
16
|
-
`);a=i.pop()??"";for(let l of i){let u=l.trim();if(!u.startsWith("data:"))continue;let f=u.slice(5).trim();if(f!=="[DONE]")try{let d=JSON.parse(f);if(!r){n.enqueue(d);continue}let c=await r(d);if(c.success){n.enqueue(c.value);continue}let p=hc(c.error);if(p?.length){let m={...d};for(let C of p)delete m[C];let I=await r(m);I.success&&n.enqueue(I.value)}}catch{}}}}))}};var gc="waniwani-memory";var Ie="threads",Va="by_memoryUserId",wc="by_updatedAt";var ei="memoryUserId",Yn="waniwani-memory-user-id",Yo=null;function er(){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 xc(e,t){if(t<1&&(e.objectStoreNames.contains("ids")||e.createObjectStore("ids")),t<2&&!e.objectStoreNames.contains(Ie)){let a=e.createObjectStore(Ie,{keyPath:"threadId"});a.createIndex(Va,"memoryUserId",{unique:!1}),a.createIndex(wc,"updatedAt",{unique:!1})}}async function tr(){return new Promise((e,t)=>{let a=indexedDB.open(gc,2);a.onupgradeneeded=o=>{xc(a.result,o.oldVersion)},a.onsuccess=()=>e(a.result),a.onerror=()=>t(a.error)})}async function Lc(){return tr()}async function Cc(e){return new Promise((t,a)=>{let s=e.transaction("ids","readonly").objectStore("ids").get(ei);s.onsuccess=()=>t(typeof s.result=="string"?s.result:null),s.onerror=()=>a(s.error)})}async function Ic(e,t){return new Promise((a,o)=>{let n=e.transaction("ids","readwrite").objectStore("ids").put(t,ei);n.onsuccess=()=>a(),n.onerror=()=>o(n.error)})}async function Sc(){if(typeof indexedDB>"u")return null;try{let e=await Lc();try{let t=await Cc(e);if(t)return t;let a=er();return await Ic(e,a),a}finally{e.close()}}catch{return null}}function yc(){try{let e=localStorage.getItem(Yn);if(e)return e;let t=er();return localStorage.setItem(Yn,t),t}catch{return null}}async function ti(){let e=await Sc();if(e)return e;let t=yc();return t||(Yo||(Yo=er()),Yo)}var ai=50,oi=1e3;function $a(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 Xa(e){if(typeof indexedDB>"u")return null;let t=null;try{return t=await tr(),await e(t)}catch{return null}finally{try{t?.close()}catch{}}}function ar(e){return new Promise((t,a)=>{e.onsuccess=()=>t(e.result),e.onerror=()=>a(e.error)})}async function or(e){return await Xa(async a=>{let s=a.transaction(Ie,"readonly").objectStore(Ie).index(Va),i=(await ar(s.getAll(e))??[]).filter($a);return i.sort((l,u)=>l.updatedAt<u.updatedAt?1:-1),i})??[]}async function rr(e){return await Xa(async a=>{let r=a.transaction(Ie,"readonly").objectStore(Ie),s=await ar(r.get(e));return $a(s)?s:null})??null}async function sr(e){if(!$a(e))return;let t=e.messages.length>oi?{...e,messages:e.messages.slice(e.messages.length-oi)}:e;await Xa(async a=>{await new Promise((l,u)=>{let f=a.transaction(Ie,"readwrite");f.oncomplete=()=>l(),f.onerror=()=>u(f.error),f.onabort=()=>u(f.error),f.objectStore(Ie).put(t)});let o=a.transaction(Ie,"readwrite"),r=o.objectStore(Ie),s=r.index(Va),i=(await ar(s.getAll(t.memoryUserId))??[]).filter($a);if(i.length>ai){i.sort((u,f)=>u.updatedAt<f.updatedAt?-1:1);let l=i.slice(0,i.length-ai);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 ri(e){await Xa(async t=>(await new Promise((a,o)=>{let r=t.transaction(Ie,"readwrite");r.oncomplete=()=>a(),r.onerror=()=>o(r.error),r.onabort=()=>o(r.error),r.objectStore(Ie).delete(e)}),null))}async function si(e){return(await or(e))[0]?.threadId??null}function ni(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 ii="waniwani-visitor-id";function li(e,t){return e.match(t)?.[1]??null}function kc(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=li(e,o);if(r)return{name:a,version:r}}return null}function bc(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=li(e,o);if(r)return{name:a,version:r.replace(/_/g,".")};if(a==="Linux"&&o.test(e))return{name:a,version:""}}return null}function Tc(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 Pc(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 Ac(){try{let a=localStorage.getItem(ii);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 Pc(e);try{localStorage.setItem(ii,t)}catch{}return t}async function ui(){let e=navigator.userAgent,[t,a]=await Promise.all([Ac(),ti()]);return{userAgent:e,browser:kc(e),os:bc(e),deviceType:Tc(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 Mc="x-session-id",Rc=250;function di(){return typeof crypto<"u"&&typeof crypto.randomUUID=="function"?crypto.randomUUID():yt()}function Qa(){return new Date().toISOString()}function fi(e){if(typeof e!="string")return;let t=e.trim();return t.length>0?t:void 0}async function Fc(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 Ka(e){let{api:t="/api/waniwani",headers:a,body:o,onMessageSent:r,onResponseReceived:s,enableThreadHistory:n=!1,activeThreadId:i,onThreadChange:l}=e,u=le(a),f=le(o),d=le(n);Ae(()=>{d.current=n},[n]);let c=le(void 0),p=le(null),[m,I]=Ye(void 0),C=le(m),[x,g]=Ye(i),h=le(x),[L,w]=Ye([]),[b,P]=Ye(!n),y=le(void 0),D=le(void 0),v=le(void 0),F=le(void 0),k=le(0),B=le(l);Ae(()=>{B.current=l},[l]);let H=ce(S=>{h.current=S,g(S),S&&B.current?.(S)},[]),U=ce(async()=>{if(!n)return;let S=p.current?.memoryUserId;if(!S)return;let M=await or(S);w(M)},[n]),ue=ce(()=>C.current,[]),ge=ce(S=>{let M=fi(S);M&&C.current!==M&&(C.current=M,I(M))},[]),K=ce(()=>{C.current=void 0,I(void 0)},[]);Ae(()=>{u.current=a},[a]),Ae(()=>{f.current=o},[o]),Ae(()=>{let S=!1,M=k.current;return(async()=>{try{let ye=await ui();if(S)return;p.current=ye}catch{}if(!n)return;let E=p.current?.memoryUserId;if(!E){P(!0);return}try{let ye=i??await si(E);if(S||M!==k.current)return;if(ye){let we=await rr(ye);if(S||M!==k.current)return;we&&we.memoryUserId===E&&(h.current=we.threadId,g(we.threadId),y.current=we.createdAt,D.current=we.title,we.sessionId&&(C.current=we.sessionId,I(we.sessionId)),V(we.messages))}await U()}finally{S||P(!0)}})(),()=>{S=!0}},[]);let q=le(new ja({api:t,headers:()=>({...u.current}),body:()=>{let S={...f.current??{}},M=Object.hasOwn(S,"sessionId"),E=fi(S.sessionId);if(E)ge(E),S.sessionId=E;else if(M)K(),delete S.sessionId;else{let Te=ue();Te&&(S.sessionId=Te)}if(ft(c.current)&&(S.modelContext=c.current),p.current){let Te=p.current;S.visitorContext={timezone:Te.timezone,language:Te.language,languages:Te.languages,deviceType:Te.deviceType,referrer:Te.referrer,visitorId:Te.visitorId};let Fe=typeof S.visitor=="object"&&S.visitor!==null?S.visitor:{},Ri=typeof Fe.client=="object"&&Fe.client!==null?Fe.client:{};S.visitor={...Fe,client:{...Ri,memoryUserId:Te.memoryUserId}}}let ye=typeof S.extra=="object"&&S.extra!==null&&!Array.isArray(S.extra)?S.extra:void 0,we=p.current?.memoryUserId,Ne=p.current?.language,Vt={};if(we&&(Vt.memoryUserId=we),Ne&&(Vt.locale=Ne),(Object.keys(Vt).length>0||ye)&&(S.extra={...Vt,...ye??{}}),d.current)if(Object.hasOwn(S,"threadId"))typeof S.threadId=="string"&&(h.current=S.threadId);else{let Fe=h.current;Fe||(Fe=di(),y.current=Qa(),D.current=void 0,H(Fe)),S.threadId=Fe}return S},fetch:(async(S,M)=>{let E=await fetch(S,M);return c.current=void 0,ge(E.headers.get(Mc)),E})})),ee=le(null),_=le(null),J=le({}),[re,A]=Ye(0),R=e.skipRemoteConfig===!0,se=ce(async()=>{if(!R)try{let S=await Fc(t,u.current);J.current=S,A(M=>M+1)}catch(S){console.warn("[WaniWani] Failed to fetch tool definitions:",S instanceof Error?S.message:S)}},[t,R]);Ae(()=>{se()},[se]);let{messages:j,sendMessage:G,setMessages:V,status:N}=vc({messages:e.initialMessages,transport:q.current,onFinish({message:S}){s?.(),ee.current&&(_.current=S)},onError(S){console.warn("[WaniWani] Chat error:",S.message),ee.current&&(ee.current.reject(S),ee.current=null)}}),W=le(j);Ae(()=>{W.current=j},[j]),Ae(()=>{if(N==="ready"&&ee.current&&_.current){let S=ee.current,M=_.current;ee.current=null,_.current=null,S.resolve(M)}},[N]);let[$,O]=Ye(""),[X,ae]=Ye([]),Se=N==="submitted"||N==="streaming",_e=ce(S=>{ae(M=>M.filter(E=>E.id!==S))},[]),tt=Se&&X.length>0,at=ce(S=>{let M=!!S.text?.trim(),E=!!S.files?.length;if(M||E){if(Se){if(X.length>0)return;ae(ye=>[...ye,{id:yt(),text:S.text||"",files:S.files??[],modelContext:S.modelContext}]),O("");return}c.current=S.modelContext,G({text:S.text||"",files:S.files}),r?.(S.text||""),O("")}},[G,r,Se,X.length]),ki=ce(S=>new Promise((M,E)=>{ee.current={resolve:M,reject:E},G({text:S}),r?.(S)}),[G,r]);Ae(()=>{if(N!=="ready"||X.length===0)return;let[S,...M]=X;ae(M),c.current=S.modelContext,G({text:S.text,files:S.files.length>0?S.files:void 0}),r?.(S.text)},[N,G,r,X]);let bi=ce(()=>{V([]),ae([]),K(),O(""),J.current={},A(S=>S+1),se()},[V,K,se]),zt=ce(()=>{if(!d.current)return;let S=p.current?.memoryUserId,M=h.current,E=W.current;if(!(!S||!M||E.length===0)){if(y.current||(y.current=Qa()),!D.current){let ye=E.find(Ne=>Ne.role==="user"),we=ye?ye.parts.map(Ne=>"text"in Ne&&typeof Ne.text=="string"?Ne.text:"").join(" "):"";D.current=ni(we)}return{threadId:M,memoryUserId:S,title:D.current,messages:E,sessionId:C.current,createdAt:y.current,updatedAt:Qa()}}},[]),fr=ce(async()=>{let S=zt();S&&(await sr(S),await U())},[zt,U]);Ae(()=>{if(n&&b&&!(N==="submitted"||N==="streaming")&&j.length!==0)return v.current&&clearTimeout(v.current),v.current=setTimeout(()=>{v.current=void 0;let S=fr().finally(()=>{F.current===S&&(F.current=void 0)});F.current=S},Rc),()=>{v.current&&clearTimeout(v.current)}},[n,b,j,N,fr]);let jt=ce(()=>{let S=F.current,M=v.current,E=M?zt():void 0;return M&&(clearTimeout(M),v.current=void 0),(async()=>{S&&await S,E&&(await sr(E),await U())})()},[zt,U]),Ti=ce(()=>{k.current+=1,jt(),V([]),ae([]),K(),O("");let S=di();return y.current=Qa(),D.current=void 0,H(S),U(),S},[V,K,H,U,jt]),ao=ce(async S=>{k.current+=1;let M=k.current;if(await jt(),M!==k.current)return;let E=await rr(S);M===k.current&&E&&(H(E.threadId),y.current=E.createdAt,D.current=E.title,E.sessionId?(C.current=E.sessionId,I(E.sessionId)):K(),V(E.messages),ae([]),O(""))},[V,K,H,jt]),Pi=ce(async S=>{if(h.current===S){k.current+=1,v.current&&(clearTimeout(v.current),v.current=void 0);let M=F.current;M&&await M}await ri(S),await U(),h.current===S&&(V([]),ae([]),K(),O(""),h.current=void 0,g(void 0),y.current=void 0,D.current=void 0)},[V,K,U]);Ae(()=>{n&&b&&i!==void 0&&i!==h.current&&ao(i)},[i,n,b,ao]);let Ai=ce(S=>{O(S.target.value)},[]),cr=j[j.length-1],pr=j.length>0,vi=Se&&(!pr||cr.role==="user"),Mi=J.current;return{messages:j,status:N,text:$,setText:O,handleSubmit:at,handleTextChange:Ai,isLoading:Se,showLoaderBubble:vi,lastMessage:cr,hasMessages:pr,sendMessage:G,sendMessageAndWait:ki,reset:bi,queuedMessages:X,queueFull:tt,removeQueuedMessage:_e,sessionId:m,toolDefinitions:Mi,refreshToolDefinitions:se,threads:L,activeThreadId:x,isThreadHistoryReady:b,startNewThread:Ti,switchThread:ao,deleteThread:Pi}}import{useEffect as ci,useRef as Bc,useState as Dc}from"react";var Ec={debug:!1,eval:!1};function pi(e="/api/waniwani",t,a=!1){let[o,r]=Dc(Ec),s=Bc(t);return ci(()=>{s.current=t},[t]),ci(()=>{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 _c,useEffect as nr,useRef as Nc,useState as Oc}from"react";function Uc(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 mi(e){return typeof e=="object"&&e!==null&&"initial"in e}function Ja(e){let{messages:t,status:a,config:o}=e,r=mi(o)&&o.initial?o.initial:void 0,[s,n]=Oc(r??[]),i=Nc(a),l=o===!0||mi(o)&&o.dynamic!==!1,u=_c(()=>{n([])},[]),f=t.length>0;nr(()=>{!f&&r&&r.length>0&&n(r)},[r,f]);let d=t[t.length-1];return nr(()=>{d?.role==="user"&&u()},[d,u]),nr(()=>{let c=i.current;if(i.current=a,c==="streaming"&&a==="ready"&&l){let p=[...t].reverse().find(I=>I.role==="assistant");if(!p)return;let m=Uc(p);m&&n(m)}},[a,l,t]),{suggestions:s,isLoading:!1,clear:u}}import{useEffect as Hc,useRef as qc,useState as Gc}from"react";var Wc=50,zc=30,jc=2e3,hi=500;function Za(e,t=!0){let[a,o]=Gc(""),r=qc(void 0);return Hc(()=>{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,hi)):r.current=setTimeout(l,zc)):(s++,o(e.slice(0,s)),s>=e.length?(n=!0,r.current=setTimeout(l,jc)):r.current=setTimeout(l,Wc)))};return r.current=setTimeout(l,hi),()=>{i=!0,clearTimeout(r.current)}},[e,t]),a}function Ya(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 gi={primaryColor:"#6366f1",primaryForeground:"#1f2937",backgroundColor:"#ffffff",textColor:"#1f2937",mutedColor:"#6b7280",borderColor:"#e5e7eb",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"},Vc={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"},$c={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"],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 Ut(e){return{...gi,...e}}function eo(e){let t=e.backgroundColor.replace("#",""),a=parseInt(t.substring(0,2),16),o=parseInt(t.substring(2,4),16),r=parseInt(t.substring(4,6),16);return(a*299+o*587+r*114)/1e3<128}function Ht(e){let t={};for(let[a,o]of Object.entries($c)){let r=e[a],s=typeof r=="number"?`${r}px`:String(r);for(let n of o)t[n]=s}return t}import{jsx as pe,jsxs as qt}from"react/jsx-runtime";var Jc=Xc(function(t,a){let{theme:o,title:r="Assistant",width:s,height:n,className:i,allowAttachments:l=!1,welcomeMessage:u,welcome:f,placeholder:d="Ask me anything...",triggerEvent:c="triggerDemoRequest",api:p,debug:m,enableThreadHistory:I=!1,showToolCalls:C=!0}=t,x=p??"/api/waniwani",g=Ya(x,t.headers),h=Ut(o),L=Ht(h),w=eo(h),b=pi(x,t.headers,t.skipRemoteConfig),P=m??b.debug,y=Ka({...t,api:x}),D=za({...t,api:x,sessionId:y.sessionId}),v=Za(d,!y.text),[F,k]=xi(!1),[B,H]=xi(null),U=wi(null),ue=wi(void 0),ge=ir(()=>{let _=U.current;if(!_)return;_.scrollIntoView({behavior:"smooth",block:"center"});let J=_.querySelector("textarea");J&&setTimeout(()=>J.focus(),300),k(!0),clearTimeout(ue.current),ue.current=setTimeout(()=>k(!1),2e3)},[]),K=Ja({messages:y.messages,status:y.status,config:t.suggestions}),q=ir(_=>{let J=_.content.map(re=>re.text??"").join("").trim();J&&y.handleSubmit({text:J,files:[],modelContext:_.modelContext})},[y.handleSubmit]),ee=ir(_=>{K.clear(),y.handleSubmit({text:_,files:[]})},[K.clear,y.handleSubmit]);return Kc(a,()=>({sendMessage:_=>{y.handleSubmit({text:_,files:[]}),ge()},sendMessageAndWait:_=>y.sendMessageAndWait(_),reset:y.reset,focus:ge,get messages(){return y.messages}}),[y.handleSubmit,y.sendMessageAndWait,y.reset,y.messages,ge]),Qc(()=>{if(!c)return;let _=J=>{let re=J.detail,A=typeof re?.message=="string"?re.message:void 0;A&&y.handleSubmit({text:A,files:[]}),ge()};return window.addEventListener(c,_),()=>window.removeEventListener(c,_)},[c,y.handleSubmit,ge]),qt("div",{ref:U,style:{...L,width:s,height:n},"data-waniwani-chat":"","data-waniwani-layout":"card",...w?{"data-waniwani-dark":""}:{},className:T("ww:flex ww:flex-col ww:font-[family-name:var(--ww-font)] ww:text-foreground ww:bg-background ww:rounded-[var(--ww-radius)] ww:overflow-hidden",F&&"ww:ring-2 ww:ring-blue-400/70 ww:ring-offset-2 ww:ring-offset-background",i),children:[qt("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:[pe("div",{className:"ww:text-sm ww:font-semibold ww:truncate ww:flex-1 ww:min-w-0",children:r}),pe(Kr,{messages:y.messages,evalEnabled:b.eval,api:x}),I&&pe(Wa,{threads:y.threads,activeThreadId:y.activeThreadId,onNewThread:y.startNewThread,onSelectThread:_=>{y.switchThread(_)},onDeleteThread:_=>{y.deleteThread(_)}})]}),qt(Br,{className:"ww:flex-1 ww:min-h-0 ww:bg-background",children:[pe(Dr,{scrollClassName:B?"ww:!relative ww:!overflow-hidden":void 0,children:pe(Ua,{messages:y.messages,status:y.status,welcomeMessage:u,welcome:f,onSuggestionSelect:ee,resourceEndpoint:g,chatSessionId:y.sessionId,isDark:w,onFollowUp:q,onCallTool:D,fullscreenToolCallId:B,debug:P,showToolCalls:C,toolDefinitions:y.toolDefinitions,onWidgetDisplayModeChange:(_,J)=>{H(_==="fullscreen"?J.toolCallId:null)}})}),pe(Er,{})]}),pe("div",{style:B?{display:"none"}:void 0,children:pe(Ga,{suggestions:K.suggestions,isLoading:K.isLoading,onSelect:ee})}),pe("div",{style:B?{display:"none"}:void 0,children:pe(aa,{queuedMessages:y.queuedMessages,onRemove:y.removeQueuedMessage})}),pe("div",{style:B?{display:"none"}:void 0,children:pe("div",{className:"ww:shrink-0 ww:px-4 ww:pb-8 ww:pt-2 ww:bg-background",children:qt("div",{className:"ww:mx-auto ww:w-full ww:max-w-3xl",children:[pe(Zt,{onSubmit:y.handleSubmit,globalDrop:l,multiple:l,className:"ww:rounded-2xl ww:border-border ww:bg-input",children:qt("div",{className:"ww:flex ww:items-center ww:gap-1 ww:pl-4 ww:pr-3 ww:py-2.5",children:[l&&pe(ta,{}),pe(Yt,{onChange:y.handleTextChange,value:y.text,placeholder:v,className:"ww:min-h-0 ww:py-1 ww:px-0"}),pe(ea,{status:y.status,disabled:y.queueFull})]})}),pe(Ha,{})]})})})]})});import{forwardRef as Zc,useCallback as to,useEffect as Gt,useImperativeHandle as Yc,useRef as Wt,useState as Li}from"react";import{jsx as he,jsxs as et}from"react/jsx-runtime";var lr=Zc(function(t,a){let{theme:o,className:r,allowAttachments:s=!1,welcomeMessage:n,welcome:i,placeholder:l="Ask me anything...",triggerEvent:u="triggerDemoRequest",api:f,mcp:d,debug:c=!1,readOnly:p=!1,title:m,headerActions:I,enableThreadHistory:C=!1,showToolCalls:x=!0}=t,g=Ut(o),h=Ht(g),L=eo(g),w=Ka({...t,api:f}),b=za({...t,api:f,sessionId:w.sessionId,onCallTool:d?.onCallTool}),P=d?.resourceEndpoint??Ya(f,t.headers),y=Za(l,!w.text),[D,v]=Li(null),F=Wt(null),k=Wt(null),B=Wt(null),H=Wt(null),[U,ue]=Li(!0),ge=Wt(U);ge.current=U;let K=to(()=>{let A=F.current;if(!A)return;let R=A.querySelector("textarea");R&&R.focus()},[]),q=to((A="smooth")=>{let R=k.current;R&&R.scrollTo({top:R.scrollHeight,behavior:A})},[]);Gt(()=>{let A=H.current,R=k.current;if(!A||!R)return;let se=new IntersectionObserver(([j])=>ue(j.isIntersecting),{root:R,rootMargin:"0px 0px 200px 0px",threshold:0});return se.observe(A),()=>se.disconnect()},[]),Gt(()=>{(w.messages[w.messages.length-1]?.role==="user"||ge.current)&&q("smooth")},[w.messages.length,w.messages[w.messages.length-1]]),Gt(()=>{q("auto")},[q]),Gt(()=>{if(typeof ResizeObserver>"u")return;let A=k.current,R=B.current;if(!A&&!R)return;let se=A?.scrollHeight??0,j=A?.clientHeight??0,G=new ResizeObserver(()=>{let V=k.current;if(!V)return;let N=V.scrollTop+j>=se-5;se=V.scrollHeight,j=V.clientHeight,N&&q("auto")});return A&&G.observe(A),R&&G.observe(R),()=>G.disconnect()},[q]);let ee=Ja({messages:w.messages,status:w.status,config:t.suggestions}),_=to(A=>{let R=A.content.map(se=>se.text??"").join("").trim();R&&w.handleSubmit({text:R,files:[],modelContext:A.modelContext})},[w.handleSubmit]),J=to(A=>{ee.clear(),w.handleSubmit({text:A,files:[]})},[ee.clear,w.handleSubmit]);Yc(a,()=>({sendMessage:A=>{w.handleSubmit({text:A,files:[]}),K()},sendMessageAndWait:A=>w.sendMessageAndWait(A),reset:w.reset,focus:K,get messages(){return w.messages}}),[w.handleSubmit,w.sendMessageAndWait,w.reset,w.messages,K]),Gt(()=>{if(!u)return;let A=R=>{let se=R.detail,j=typeof se?.message=="string"?se.message:void 0;j&&w.handleSubmit({text:j,files:[]}),K()};return window.addEventListener(u,A),()=>window.removeEventListener(u,A)},[u,w.handleSubmit,K]);let re=!!(m||C||I);return et("div",{ref:F,style:{...h,maxHeight:"inherit"},"data-waniwani-chat":"","data-waniwani-layout":"embed",...L?{"data-waniwani-dark":""}:{},className:T("ww:relative ww:w-full ww:h-full ww:flex ww:flex-col ww:bg-background ww:text-foreground ww:font-[family-name:var(--ww-font)] ww:overflow-hidden",r),children:[re&&et("div",{className:"ww:shrink-0 ww:flex ww:items-center ww:gap-2 ww:px-6 ww:py-3 ww:bg-background ww:border-b ww:border-border",style:{backgroundColor:g.headerBackgroundColor,color:g.headerTextColor},children:[m&&he("div",{className:"ww:text-sm ww:font-semibold ww:truncate ww:flex-1 ww:min-w-0",children:m}),!m&&he("div",{className:"ww:flex-1"}),I,C&&he(Wa,{threads:w.threads,activeThreadId:w.activeThreadId,onNewThread:w.startNewThread,onSelectThread:A=>{w.switchThread(A)},onDeleteThread:A=>{w.deleteThread(A)}})]}),et("div",{ref:k,className:T("ww:relative ww:flex-1 ww:min-h-0",D?"ww:overflow-hidden":"ww:overflow-y-auto"),children:[et("div",{ref:B,className:T("ww:mx-auto ww:w-full ww:max-w-3xl ww:px-4 ww:py-6 ww:flex ww:flex-col ww:gap-6",D&&"ww:!py-0"),children:[he(Ua,{messages:w.messages,status:w.status,welcomeMessage:n,welcome:i,onSuggestionSelect:J,resourceEndpoint:P,chatSessionId:w.sessionId,isDark:L,onFollowUp:_,onCallTool:b,fullscreenToolCallId:D,debug:c,showToolCalls:x,toolDefinitions:w.toolDefinitions,onWidgetDisplayModeChange:(A,R)=>{v(A==="fullscreen"?R.toolCallId:null)}}),he("div",{ref:H,"aria-hidden":!0,style:{height:1}})]}),!U&&!D&&he("div",{className:"ww:sticky ww:bottom-2 ww:flex ww:justify-center ww:pointer-events-none",children:he(ke,{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:he(ze,{className:"ww:size-4"})})})]}),!p&&et("div",{className:"ww:shrink-0 ww:bg-background",style:D?{display:"none"}:void 0,children:[he(Ga,{suggestions:ee.suggestions,isLoading:ee.isLoading,onSelect:J}),he(aa,{queuedMessages:w.queuedMessages,onRemove:w.removeQueuedMessage}),he("div",{className:"ww:px-4 ww:pb-2 ww:pt-2",children:et("div",{className:"ww:mx-auto ww:w-full ww:max-w-3xl",children:[he(Zt,{onSubmit:w.handleSubmit,globalDrop:s,multiple:s,className:"ww:rounded-2xl ww:border-border ww:bg-input",children:et("div",{className:"ww:flex ww:items-center ww:gap-1 ww:pl-4 ww:pr-3 ww:py-2.5",children:[s&&he(ta,{}),he(Yt,{onChange:w.handleTextChange,value:w.text,placeholder:y,className:"ww:min-h-0 ww:py-1 ww:px-0"}),he(ea,{status:w.status,disabled:w.queueFull})]})}),he(Ha,{})]})})]})]})});import{forwardRef as sp,useEffect as np,useMemo as Si,useState as ip}from"react";var ep="https://app.waniwani.ai/api/mcp/chat",tp={api:ep};function ap(){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 op(){let e=ap();if(!e)return{};let t=h=>e.getAttribute(h)??void 0,a=h=>{let L=e.getAttribute(h);if(L==null)return;let w=L.trim().toLowerCase();if(w==="true"||w==="1"||w==="")return!0;if(w==="false"||w==="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");f&&(o.channelId=f);let d=a("data-show-tool-calls");d!==void 0&&(o.showToolCalls=d);let c=t("data-css");c&&(o.css=c);let p=t("data-suggestions");p&&(o.suggestions=p.split(",").map(h=>h.trim()).filter(Boolean));let m=a("data-enable-thread-history");m!==void 0&&(o.enableThreadHistory=m);let I=t("data-primary-color"),C=t("data-background-color"),x=t("data-text-color"),g=t("data-font-family");return(I||C||x||g)&&(o.theme={},I&&(o.theme.primaryColor=I),C&&(o.theme.backgroundColor=C),x&&(o.theme.textColor=x),g&&(o.theme.fontFamily=g)),o}function ur(e){if(!e)return{};let t={};for(let a in e)e[a]!==void 0&&(t[a]=e[a]);return t}function dr(e,t,a){let o=a??op(),r={token:"",...tp,...ur(t),...ur(o),...ur(e),theme:{...t?.theme??{},...o.theme,...e?.theme}};if(!r.token)throw new Error("[WaniWani] Missing required config: `token`. Set data-token on the script tag or pass it to WaniWani.chat.init().");return r}function Ci(e){if(!(!e.theme||Object.keys(e.theme).length===0))return e.theme}import{useEffect as rC,useState as sC}from"react";async function Ii(e,t,a){try{let o=`${e.replace(/\/$/,"")}/config`,r=await fetch(o,{method:"GET",headers:{Authorization:`Bearer ${t}`},signal:a});if(!r.ok)return{};let s=await r.json(),n=s&&typeof s=="object"&&"data"in s&&s.data?s.data:s;return n?rp(n):{}}catch{return{}}}function rp(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 up}from"react/jsx-runtime";var yi="https://app.waniwani.ai/api/mcp/chat",lp=sp(function(t,a){let{token:o,channelId:r,className:s,overrides:n}=t,i=Si(()=>({token:o,channelId:r,api:n?.api,mcpServerUrl:n?.mcpServerUrl,title:n?.title,welcomeMessage:n?.welcomeMessage,placeholder:n?.placeholder,suggestions:n?.suggestions,enableThreadHistory:n?.enableThreadHistory,showToolCalls:n?.showToolCalls,theme:n?.theme}),[o,r,n?.api,n?.mcpServerUrl,n?.title,n?.welcomeMessage,n?.placeholder,n?.suggestions,n?.enableThreadHistory,n?.showToolCalls,n?.theme]),[l,u]=ip({});np(()=>{if(!o)return;let p=new AbortController,m=n?.api??yi;return Ii(m,o,p.signal).then(I=>{p.signal.aborted||u(I)}).catch(I=>{console.error("[WaniWani] Remote config fetch failed:",I)}),()=>p.abort()},[n?.api,o]);let f=Si(()=>dr(i,l,void 0),[i,l]),d=Ci(f),c={};return f.mcpServerUrl&&(c.mcpServerUrl=f.mcpServerUrl),f.channelId&&(c.channelId=f.channelId),up(lr,{ref:a,api:f.api??yi,headers:{Authorization:`Bearer ${f.token}`},skipRemoteConfig:!0,body:Object.keys(c).length>0?c:void 0,theme:d,title:f.title,welcomeMessage:f.welcomeMessage,welcome:n?.welcome,placeholder:f.placeholder,suggestions:f.suggestions?{initial:f.suggestions}:void 0,enableThreadHistory:f.enableThreadHistory,showToolCalls:f.showToolCalls,allowAttachments:n?.allowAttachments,className:s})});export{Jc as ChatCard,lr as ChatEmbed,Vc as DARK_THEME,gi as DEFAULT_THEME,Jo as McpAppFrame,lp as WaniwaniChat,Ut as mergeTheme,Ht as themeToCSSProperties};
|
|
15
|
+
${O}`}]}}F.current({...W,...$?{modelContext:$}:{}})}R({jsonrpc:"2.0",id:N,result:{}});return}if(V==="ui/update-model-context"&&N!=null){J=Vn(J,G.params),R({jsonrpc:"2.0",id:N,result:{}});return}if(V==="tools/call"&&N!=null){let W=k.current;if(!W){R({jsonrpc:"2.0",id:N,error:{code:-32601,message:"tools/call not supported"}});return}let $=G.params?.name;W({name:$,arguments:G.params?.arguments??{}}).then(O=>{R({jsonrpc:"2.0",id:N,result:O});let X=O.content?.map(ae=>ae.text??"").join("").trim();X&&Kf($,O,U.current)&&(re&&clearTimeout(re.timer),re={text:X,timer:setTimeout(()=>{if(ee)return;let ae=J;J=null,re=null,F.current?.({role:"user",content:[{type:"text",text:X}],...ae?{modelContext:ae}:{}})},500)})}).catch(O=>{let X=O instanceof Error?O.message:"Tool call failed";R({jsonrpc:"2.0",id:N,error:{code:-32e3,message:X}})});return}if(V==="ui/request-display-mode"&&N!=null){let W=G.params?.mode,$=W==="fullscreen"||W==="inline"||W==="pip"?W:"inline";w.current=$,R({jsonrpc:"2.0",id:N,result:{mode:$}}),R({jsonrpc:"2.0",method:"ui/notifications/host-context-changed",params:{displayMode:$}}),B.current?.($);return}if(V==="ui/resource-teardown"&&N!=null){R({jsonrpc:"2.0",id:N,result:{}});return}V==="ping"&&N!=null&&R({jsonrpc:"2.0",id:N,result:{}})};return window.addEventListener("message",se),()=>{ee=!0,clearTimeout(A),re&&clearTimeout(re.timer),window.removeEventListener("message",se)}},[i,ue]),Jf("iframe",{ref:m,src:ge,sandbox:"allow-scripts allow-forms allow-same-origin",className:T(!c&&"ww:rounded-md ww:border ww:border-border",n),style:{height:c?"100%":b,minWidth:c||!y?void 0:`min(${y}px, 100%)`,width:"100%",border:"none",colorScheme:s?"dark":"auto"},title:"MCP App"})}import{jsx as Ot,jsxs as Zf}from"react/jsx-runtime";function Qn({icon:e,title:t,description:a,suggestions:o,onSuggestionSelect:r}){return Zf("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&&Ot("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}),Ot("h2",{className:"ww:text-lg ww:font-semibold ww:text-foreground",children:t}),a&&Ot("p",{className:"ww:mt-1 ww:text-sm ww:text-muted-foreground ww:max-w-sm",children:a}),o&&o.length>0&&Ot("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)=>Ot("button",{type:"button",onClick:()=>r?.(s),className:T("ww:w-full ww:text-left ww:rounded-xl ww:border ww:border-border ww:bg-background ww:px-4 ww:py-3 ww:text-sm","ww:text-foreground ww:hover:bg-accent ww:hover:border-primary/30","ww:transition-all ww:duration-200 ww:ease-out ww:cursor-pointer","ww:animate-[ww-fade-in_0.2s_ease-out_both]"),style:{animationDelay:`${n*50}ms`},children:s},s))})]})}import{Component as Yf}from"react";import{jsx as Kn,jsxs as ec}from"react/jsx-runtime";var Oa=class extends Yf{state={hasError:!1};static getDerivedStateFromError(){return{hasError:!0}}componentDidCatch(t){console.warn("[WaniWani] Widget failed to render:",t.message)}render(){return this.state.hasError?ec("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:[Kn("span",{children:"Widget failed to load"}),Kn("button",{type:"button",onClick:()=>this.setState({hasError:!1}),className:"ww:text-xs ww:font-medium ww:text-primary ww:hover:underline",children:"Retry"})]}):this.props.children}};import{Fragment as tc,jsx as oe,jsxs as ct}from"react/jsx-runtime";function Jn(e){return e?e.replace(/[-_]/g," ").replace(/^\w/,t=>t.toUpperCase()):"Tool"}function Ua({messages:e,status:t,welcomeMessage:a,welcome:o,onSuggestionSelect:r,resourceEndpoint:s,chatSessionId:n,isDark:i,onFollowUp:l,onCallTool:u,onWidgetDisplayModeChange:f,fullscreenToolCallId:d,debug:c,showToolCalls:p=!0,toolDefinitions:m}){let I=t==="submitted"||t==="streaming",C=e[e.length-1],x=e.length>0,g=I&&(!x||C.role==="user"),h=d!=null;return ct(tc,{children:[!h&&(!x&&o?oe(Qn,{...o,onSuggestionSelect:r}):a&&oe(Da,{from:"assistant",children:oe(Ea,{children:oe(_a,{children:a})})})),e.map(L=>{let w=L.parts.filter(k=>k.type==="text"),b=L.parts.filter(k=>k.type==="reasoning"),P=L.parts.filter(k=>k.type==="file"),y=L.parts.filter(k=>"toolCallId"in k),D=L===C&&L.role==="assistant",v=w.length>0,F=h?y.some(k=>k.toolCallId===d):!1;return h&&!F?oe("div",{style:{display:"none"}},L.id):ct(Da,{from:L.role,children:[!F&&b.map((k,B)=>oe(Rn,{text:k.text},`reasoning-${L.id}-${B}`)),y.map(k=>{let B="output"in k?k.output:void 0,H=Na(k.toolName,B,m),U=zn(k.toolName,B,m),ue=k.toolCallId===d;return ct("div",{style:ue?{position:"absolute",inset:0,zIndex:10,display:"flex",flexDirection:"column",overflow:"hidden",background:"var(--ww-color-background)"}:void 0,children:[oe("div",{style:ue?{display:"none"}:void 0,children:p?ct(Nn,{children:[oe(On,{title:k.title??Jn(k.toolName),state:k.state}),ct(Hn,{children:[oe(qn,{input:k.input,debug:c}),B!==void 0&&oe(jn,{output:B,errorText:"errorText"in k?k.errorText:void 0,debug:c})]})]}):oe(Un,{title:k.title??Jn(k.toolName),state:k.state})}),H&&s&&B!==void 0&&oe(Oa,{children:oe(Jo,{isFullscreen:ue,resourceUri:H,toolInput:k.input??{},toolResult:{content:B.content,structuredContent:B.structuredContent,_meta:B._meta},resourceEndpoint:s,chatSessionId:n,isDark:i,autoHeight:U,toolDefinitions:m,onFollowUp:l,onCallTool:u,onDisplayModeChange:f?ge=>f(ge,{toolCallId:k.toolCallId,resourceUri:H,toolInput:k.input??{},toolResult:{content:B.content,structuredContent:B.structuredContent,_meta:B._meta},autoHeight:U}):void 0})})]},k.toolCallId)}),!F&&oe("div",{children:ct(Ea,{children:[P.length>0&&oe(Jr,{files:P}),v?w.map((k,B)=>oe(_a,{children:k.type==="text"?k.text:""},`${L.id}-${B}`)):D&&I&&oe(mo,{})]})})]},L.id)}),!h&&g&&oe(Da,{from:"assistant",children:oe(Ea,{children:oe(mo,{})})})]})}import{jsx as Zo,jsxs as rc}from"react/jsx-runtime";var ac="https://app.waniwani.ai/assets/waniwani-logo.svg",oc="https://waniwani.ai";function Ha(){return Zo("div",{className:"ww:pt-2 ww:pb-1 ww:flex ww:justify-center",children:rc("a",{href:oc,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:[Zo("span",{children:"powered by"}),Zo("img",{src:ac,alt:"WaniWani",width:72,height:10,className:"ww:h-2.5 ww:w-auto"})]})})}import{jsx as qa}from"react/jsx-runtime";function Ga({suggestions:e,isLoading:t,onSelect:a,className:o,...r}){return e.length===0&&!t?null:qa("div",{className:T("ww:px-4 ww:py-2",o),...r,children:qa("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=>qa("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)=>qa("button",{type:"button",onClick:()=>a(s),className:T("ww:rounded-full ww:border ww:border-border ww:bg-background ww:px-3 ww:py-1 ww:text-xs","ww:text-foreground ww:hover:bg-accent ww:hover:border-primary/30","ww:transition-all ww:duration-200 ww:ease-out ww:cursor-pointer","ww:animate-[ww-fade-in_0.2s_ease-out_both]"),style:{animationDelay:`${n*50}ms`},children:s},s))})})}import{useEffect as sc,useRef as nc,useState as ic}from"react";import{jsx as Y,jsxs as We}from"react/jsx-runtime";var Zn=20;function lc(e){let t=Date.parse(e);if(Number.isNaN(t))return"";let a=Date.now()-t;return a<6e4?"just now":a<60*6e4?`${Math.floor(a/6e4)}m ago`:a<1440*6e4?`${Math.floor(a/(60*6e4))}h ago`:`${Math.floor(a/(1440*6e4))}d ago`}function uc(){return We("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":"New chat",children:[Y("title",{children:"New chat"}),Y("line",{x1:"12",y1:"5",x2:"12",y2:"19"}),Y("line",{x1:"5",y1:"12",x2:"19",y2:"12"})]})}function dc(){return We("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":"Thread history",children:[Y("title",{children:"Thread history"}),Y("path",{d:"M3 12a9 9 0 1 0 3-6.7"}),Y("polyline",{points:"3 4 3 9 8 9"}),Y("line",{x1:"12",y1:"7",x2:"12",y2:"12"}),Y("line",{x1:"12",y1:"12",x2:"15",y2:"14"})]})}function fc(){return We("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":"Delete thread",children:[Y("title",{children:"Delete thread"}),Y("polyline",{points:"3 6 5 6 21 6"}),Y("path",{d:"M19 6l-2 14a2 2 0 0 1-2 2H9a2 2 0 0 1-2-2L5 6"}),Y("path",{d:"M10 11v6"}),Y("path",{d:"M14 11v6"})]})}function Wa({threads:e,activeThreadId:t,onNewThread:a,onSelectThread:o,onDeleteThread:r}){let[s,n]=ic(!1),i=nc(null);sc(()=>{if(!s)return;let f=d=>{let c=i.current;c&&(d.composedPath().includes(c)||n(!1))};return document.addEventListener("mousedown",f),()=>document.removeEventListener("mousedown",f)},[s]);let l=e.slice(0,Zn),u=Math.max(0,e.length-Zn);return We("div",{ref:i,className:"ww:relative ww:flex ww:items-center ww:gap-1",children:[Y("button",{type:"button",onClick:a,title:"New chat","aria-label":"New chat",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:Y(uc,{})}),Y("button",{type:"button",onClick:()=>n(f=>!f),title:"Thread history","aria-label":"Thread history","aria-expanded":s,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:Y(dc,{})}),s&&We("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:[l.length===0&&Y("div",{className:"ww:px-3 ww:py-3 ww:text-xs ww:text-muted-foreground",children:"No previous chats yet."}),l.map(f=>{let d=f.threadId===t;return We("div",{className:`ww:flex ww:items-center ww:gap-2 ww:px-3 ww:py-2 ww:text-xs hover:ww:bg-foreground/5 ${d?"ww:bg-foreground/5":""}`,children:[We("button",{type:"button",onClick:()=>{o(f.threadId),n(!1)},className:"ww:flex-1 ww:min-w-0 ww:text-left ww:cursor-pointer",children:[Y("div",{className:"ww:truncate ww:text-foreground ww:font-medium",children:f.title}),Y("div",{className:"ww:text-[10px] ww:text-muted-foreground",children:lc(f.updatedAt)})]}),Y("button",{type:"button",onClick:c=>{c.stopPropagation(),r(f.threadId)},title:"Delete thread","aria-label":"Delete thread",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:Y(fc,{})})]},f.threadId)}),u>0&&We("div",{className:"ww:px-3 ww:py-2 ww:text-[10px] ww:text-muted-foreground ww:border-t ww:border-border",children:[u," older thread",u===1?"":"s"," hidden"]})]})]})}import{useCallback as cc,useRef as pc}from"react";function za(e){let t=pc(e);return t.current=e,cc(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 Mc}from"@ai-sdk/react";import{useCallback as ce,useEffect as Ae,useRef as le,useState as Ye}from"react";import{DefaultChatTransport as mc,uiMessageChunkSchema as hc}from"ai";function gc(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 ja=class extends mc{processResponseStream(t){let a="",o=hc(),r=o.validate?.bind(o);return t.pipeThrough(new TextDecoderStream).pipeThrough(new TransformStream({async transform(s,n){a+=s;let i=a.split(`
|
|
16
|
+
`);a=i.pop()??"";for(let l of i){let u=l.trim();if(!u.startsWith("data:"))continue;let f=u.slice(5).trim();if(f!=="[DONE]")try{let d=JSON.parse(f);if(!r){n.enqueue(d);continue}let c=await r(d);if(c.success){n.enqueue(c.value);continue}let p=gc(c.error);if(p?.length){let m={...d};for(let C of p)delete m[C];let I=await r(m);I.success&&n.enqueue(I.value)}}catch{}}}}))}};var wc="waniwani-memory";var Ie="threads",Va="by_memoryUserId",xc="by_updatedAt";var ei="memoryUserId",Yn="waniwani-memory-user-id",Yo=null;function er(){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 Lc(e,t){if(t<1&&(e.objectStoreNames.contains("ids")||e.createObjectStore("ids")),t<2&&!e.objectStoreNames.contains(Ie)){let a=e.createObjectStore(Ie,{keyPath:"threadId"});a.createIndex(Va,"memoryUserId",{unique:!1}),a.createIndex(xc,"updatedAt",{unique:!1})}}async function tr(){return new Promise((e,t)=>{let a=indexedDB.open(wc,2);a.onupgradeneeded=o=>{Lc(a.result,o.oldVersion)},a.onsuccess=()=>e(a.result),a.onerror=()=>t(a.error)})}async function Cc(){return tr()}async function Ic(e){return new Promise((t,a)=>{let s=e.transaction("ids","readonly").objectStore("ids").get(ei);s.onsuccess=()=>t(typeof s.result=="string"?s.result:null),s.onerror=()=>a(s.error)})}async function Sc(e,t){return new Promise((a,o)=>{let n=e.transaction("ids","readwrite").objectStore("ids").put(t,ei);n.onsuccess=()=>a(),n.onerror=()=>o(n.error)})}async function yc(){if(typeof indexedDB>"u")return null;try{let e=await Cc();try{let t=await Ic(e);if(t)return t;let a=er();return await Sc(e,a),a}finally{e.close()}}catch{return null}}function kc(){try{let e=localStorage.getItem(Yn);if(e)return e;let t=er();return localStorage.setItem(Yn,t),t}catch{return null}}async function ti(){let e=await yc();if(e)return e;let t=kc();return t||(Yo||(Yo=er()),Yo)}var ai=50,oi=1e3;function $a(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 Xa(e){if(typeof indexedDB>"u")return null;let t=null;try{return t=await tr(),await e(t)}catch{return null}finally{try{t?.close()}catch{}}}function ar(e){return new Promise((t,a)=>{e.onsuccess=()=>t(e.result),e.onerror=()=>a(e.error)})}async function or(e){return await Xa(async a=>{let s=a.transaction(Ie,"readonly").objectStore(Ie).index(Va),i=(await ar(s.getAll(e))??[]).filter($a);return i.sort((l,u)=>l.updatedAt<u.updatedAt?1:-1),i})??[]}async function rr(e){return await Xa(async a=>{let r=a.transaction(Ie,"readonly").objectStore(Ie),s=await ar(r.get(e));return $a(s)?s:null})??null}async function sr(e){if(!$a(e))return;let t=e.messages.length>oi?{...e,messages:e.messages.slice(e.messages.length-oi)}:e;await Xa(async a=>{await new Promise((l,u)=>{let f=a.transaction(Ie,"readwrite");f.oncomplete=()=>l(),f.onerror=()=>u(f.error),f.onabort=()=>u(f.error),f.objectStore(Ie).put(t)});let o=a.transaction(Ie,"readwrite"),r=o.objectStore(Ie),s=r.index(Va),i=(await ar(s.getAll(t.memoryUserId))??[]).filter($a);if(i.length>ai){i.sort((u,f)=>u.updatedAt<f.updatedAt?-1:1);let l=i.slice(0,i.length-ai);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 ri(e){await Xa(async t=>(await new Promise((a,o)=>{let r=t.transaction(Ie,"readwrite");r.oncomplete=()=>a(),r.onerror=()=>o(r.error),r.onabort=()=>o(r.error),r.objectStore(Ie).delete(e)}),null))}async function si(e){return(await or(e))[0]?.threadId??null}function ni(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 ii="waniwani-visitor-id";function li(e,t){return e.match(t)?.[1]??null}function bc(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=li(e,o);if(r)return{name:a,version:r}}return null}function Tc(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=li(e,o);if(r)return{name:a,version:r.replace(/_/g,".")};if(a==="Linux"&&o.test(e))return{name:a,version:""}}return null}function Pc(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 Ac(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 vc(){try{let a=localStorage.getItem(ii);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 Ac(e);try{localStorage.setItem(ii,t)}catch{}return t}async function ui(){let e=navigator.userAgent,[t,a]=await Promise.all([vc(),ti()]);return{userAgent:e,browser:bc(e),os:Tc(e),deviceType:Pc(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 Rc="x-session-id",Fc=250;function di(){return typeof crypto<"u"&&typeof crypto.randomUUID=="function"?crypto.randomUUID():yt()}function Qa(){return new Date().toISOString()}function fi(e){if(typeof e!="string")return;let t=e.trim();return t.length>0?t:void 0}async function Bc(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 Ka(e){let{api:t="/api/waniwani",headers:a,body:o,onMessageSent:r,onResponseReceived:s,enableThreadHistory:n=!1,activeThreadId:i,onThreadChange:l}=e,u=le(a),f=le(o),d=le(n);Ae(()=>{d.current=n},[n]);let c=le(void 0),p=le(null),[m,I]=Ye(void 0),C=le(m),[x,g]=Ye(i),h=le(x),[L,w]=Ye([]),[b,P]=Ye(!n),y=le(void 0),D=le(void 0),v=le(void 0),F=le(void 0),k=le(0),B=le(l);Ae(()=>{B.current=l},[l]);let H=ce(S=>{h.current=S,g(S),S&&B.current?.(S)},[]),U=ce(async()=>{if(!n)return;let S=p.current?.memoryUserId;if(!S)return;let M=await or(S);w(M)},[n]),ue=ce(()=>C.current,[]),ge=ce(S=>{let M=fi(S);M&&C.current!==M&&(C.current=M,I(M))},[]),K=ce(()=>{C.current=void 0,I(void 0)},[]);Ae(()=>{u.current=a},[a]),Ae(()=>{f.current=o},[o]),Ae(()=>{let S=!1,M=k.current;return(async()=>{try{let ye=await ui();if(S)return;p.current=ye}catch{}if(!n)return;let E=p.current?.memoryUserId;if(!E){P(!0);return}try{let ye=i??await si(E);if(S||M!==k.current)return;if(ye){let we=await rr(ye);if(S||M!==k.current)return;we&&we.memoryUserId===E&&(h.current=we.threadId,g(we.threadId),y.current=we.createdAt,D.current=we.title,we.sessionId&&(C.current=we.sessionId,I(we.sessionId)),V(we.messages))}await U()}finally{S||P(!0)}})(),()=>{S=!0}},[]);let q=le(new ja({api:t,headers:()=>({...u.current}),body:()=>{let S={...f.current??{}},M=Object.hasOwn(S,"sessionId"),E=fi(S.sessionId);if(E)ge(E),S.sessionId=E;else if(M)K(),delete S.sessionId;else{let Te=ue();Te&&(S.sessionId=Te)}if(ft(c.current)&&(S.modelContext=c.current),p.current){let Te=p.current;S.visitorContext={timezone:Te.timezone,language:Te.language,languages:Te.languages,deviceType:Te.deviceType,referrer:Te.referrer,visitorId:Te.visitorId};let Fe=typeof S.visitor=="object"&&S.visitor!==null?S.visitor:{},Ri=typeof Fe.client=="object"&&Fe.client!==null?Fe.client:{};S.visitor={...Fe,client:{...Ri,memoryUserId:Te.memoryUserId}}}let ye=typeof S.extra=="object"&&S.extra!==null&&!Array.isArray(S.extra)?S.extra:void 0,we=p.current?.memoryUserId,Ne=p.current?.language,Vt={};if(we&&(Vt.memoryUserId=we),Ne&&(Vt.locale=Ne),(Object.keys(Vt).length>0||ye)&&(S.extra={...Vt,...ye??{}}),d.current)if(Object.hasOwn(S,"threadId"))typeof S.threadId=="string"&&(h.current=S.threadId);else{let Fe=h.current;Fe||(Fe=di(),y.current=Qa(),D.current=void 0,H(Fe)),S.threadId=Fe}return S},fetch:(async(S,M)=>{let E=await fetch(S,M);return c.current=void 0,ge(E.headers.get(Rc)),E})})),ee=le(null),_=le(null),J=le({}),[re,A]=Ye(0),R=e.skipRemoteConfig===!0,se=ce(async()=>{if(!R)try{let S=await Bc(t,u.current);J.current=S,A(M=>M+1)}catch(S){console.warn("[WaniWani] Failed to fetch tool definitions:",S instanceof Error?S.message:S)}},[t,R]);Ae(()=>{se()},[se]);let{messages:j,sendMessage:G,setMessages:V,status:N}=Mc({messages:e.initialMessages,transport:q.current,onFinish({message:S}){s?.(),ee.current&&(_.current=S)},onError(S){console.warn("[WaniWani] Chat error:",S.message),ee.current&&(ee.current.reject(S),ee.current=null)}}),W=le(j);Ae(()=>{W.current=j},[j]),Ae(()=>{if(N==="ready"&&ee.current&&_.current){let S=ee.current,M=_.current;ee.current=null,_.current=null,S.resolve(M)}},[N]);let[$,O]=Ye(""),[X,ae]=Ye([]),Se=N==="submitted"||N==="streaming",_e=ce(S=>{ae(M=>M.filter(E=>E.id!==S))},[]),tt=Se&&X.length>0,at=ce(S=>{let M=!!S.text?.trim(),E=!!S.files?.length;if(M||E){if(Se){if(X.length>0)return;ae(ye=>[...ye,{id:yt(),text:S.text||"",files:S.files??[],modelContext:S.modelContext}]),O("");return}c.current=S.modelContext,G({text:S.text||"",files:S.files}),r?.(S.text||""),O("")}},[G,r,Se,X.length]),ki=ce(S=>new Promise((M,E)=>{ee.current={resolve:M,reject:E},G({text:S}),r?.(S)}),[G,r]);Ae(()=>{if(N!=="ready"||X.length===0)return;let[S,...M]=X;ae(M),c.current=S.modelContext,G({text:S.text,files:S.files.length>0?S.files:void 0}),r?.(S.text)},[N,G,r,X]);let bi=ce(()=>{V([]),ae([]),K(),O(""),J.current={},A(S=>S+1),se()},[V,K,se]),zt=ce(()=>{if(!d.current)return;let S=p.current?.memoryUserId,M=h.current,E=W.current;if(!(!S||!M||E.length===0)){if(y.current||(y.current=Qa()),!D.current){let ye=E.find(Ne=>Ne.role==="user"),we=ye?ye.parts.map(Ne=>"text"in Ne&&typeof Ne.text=="string"?Ne.text:"").join(" "):"";D.current=ni(we)}return{threadId:M,memoryUserId:S,title:D.current,messages:E,sessionId:C.current,createdAt:y.current,updatedAt:Qa()}}},[]),fr=ce(async()=>{let S=zt();S&&(await sr(S),await U())},[zt,U]);Ae(()=>{if(n&&b&&!(N==="submitted"||N==="streaming")&&j.length!==0)return v.current&&clearTimeout(v.current),v.current=setTimeout(()=>{v.current=void 0;let S=fr().finally(()=>{F.current===S&&(F.current=void 0)});F.current=S},Fc),()=>{v.current&&clearTimeout(v.current)}},[n,b,j,N,fr]);let jt=ce(()=>{let S=F.current,M=v.current,E=M?zt():void 0;return M&&(clearTimeout(M),v.current=void 0),(async()=>{S&&await S,E&&(await sr(E),await U())})()},[zt,U]),Ti=ce(()=>{k.current+=1,jt(),V([]),ae([]),K(),O("");let S=di();return y.current=Qa(),D.current=void 0,H(S),U(),S},[V,K,H,U,jt]),ao=ce(async S=>{k.current+=1;let M=k.current;if(await jt(),M!==k.current)return;let E=await rr(S);M===k.current&&E&&(H(E.threadId),y.current=E.createdAt,D.current=E.title,E.sessionId?(C.current=E.sessionId,I(E.sessionId)):K(),V(E.messages),ae([]),O(""))},[V,K,H,jt]),Pi=ce(async S=>{if(h.current===S){k.current+=1,v.current&&(clearTimeout(v.current),v.current=void 0);let M=F.current;M&&await M}await ri(S),await U(),h.current===S&&(V([]),ae([]),K(),O(""),h.current=void 0,g(void 0),y.current=void 0,D.current=void 0)},[V,K,U]);Ae(()=>{n&&b&&i!==void 0&&i!==h.current&&ao(i)},[i,n,b,ao]);let Ai=ce(S=>{O(S.target.value)},[]),cr=j[j.length-1],pr=j.length>0,vi=Se&&(!pr||cr.role==="user"),Mi=J.current;return{messages:j,status:N,text:$,setText:O,handleSubmit:at,handleTextChange:Ai,isLoading:Se,showLoaderBubble:vi,lastMessage:cr,hasMessages:pr,sendMessage:G,sendMessageAndWait:ki,reset:bi,queuedMessages:X,queueFull:tt,removeQueuedMessage:_e,sessionId:m,toolDefinitions:Mi,refreshToolDefinitions:se,threads:L,activeThreadId:x,isThreadHistoryReady:b,startNewThread:Ti,switchThread:ao,deleteThread:Pi}}import{useEffect as ci,useRef as Dc,useState as Ec}from"react";var _c={debug:!1,eval:!1};function pi(e="/api/waniwani",t,a=!1){let[o,r]=Ec(_c),s=Dc(t);return ci(()=>{s.current=t},[t]),ci(()=>{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 Nc,useEffect as nr,useRef as Oc,useState as Uc}from"react";function Hc(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 mi(e){return typeof e=="object"&&e!==null&&"initial"in e}function Ja(e){let{messages:t,status:a,config:o}=e,r=mi(o)&&o.initial?o.initial:void 0,[s,n]=Uc(r??[]),i=Oc(a),l=o===!0||mi(o)&&o.dynamic!==!1,u=Nc(()=>{n([])},[]),f=t.length>0;nr(()=>{!f&&r&&r.length>0&&n(r)},[r,f]);let d=t[t.length-1];return nr(()=>{d?.role==="user"&&u()},[d,u]),nr(()=>{let c=i.current;if(i.current=a,c==="streaming"&&a==="ready"&&l){let p=[...t].reverse().find(I=>I.role==="assistant");if(!p)return;let m=Hc(p);m&&n(m)}},[a,l,t]),{suggestions:s,isLoading:!1,clear:u}}import{useEffect as qc,useRef as Gc,useState as Wc}from"react";var zc=50,jc=30,Vc=2e3,hi=500;function Za(e,t=!0){let[a,o]=Wc(""),r=Gc(void 0);return qc(()=>{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,hi)):r.current=setTimeout(l,jc)):(s++,o(e.slice(0,s)),s>=e.length?(n=!0,r.current=setTimeout(l,Vc)):r.current=setTimeout(l,zc)))};return r.current=setTimeout(l,hi),()=>{i=!0,clearTimeout(r.current)}},[e,t]),a}function Ya(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 gi={primaryColor:"#6366f1",primaryForeground:"#1f2937",backgroundColor:"#ffffff",textColor:"#1f2937",mutedColor:"#6b7280",borderColor:"#e5e7eb",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"},$c={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"},Xc={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"],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 Ut(e){return{...gi,...e}}function eo(e){let t=e.backgroundColor.replace("#",""),a=parseInt(t.substring(0,2),16),o=parseInt(t.substring(2,4),16),r=parseInt(t.substring(4,6),16);return(a*299+o*587+r*114)/1e3<128}function Ht(e){let t={};for(let[a,o]of Object.entries(Xc)){let r=e[a],s=typeof r=="number"?`${r}px`:String(r);for(let n of o)t[n]=s}return t}import{jsx as pe,jsxs as qt}from"react/jsx-runtime";var Zc=Qc(function(t,a){let{theme:o,title:r="Assistant",width:s,height:n,className:i,allowAttachments:l=!1,welcomeMessage:u,welcome:f,placeholder:d="Ask me anything...",triggerEvent:c="triggerDemoRequest",api:p,debug:m,enableThreadHistory:I=!1,showToolCalls:C=!0}=t,x=p??"/api/waniwani",g=Ya(x,t.headers),h=Ut(o),L=Ht(h),w=eo(h),b=pi(x,t.headers,t.skipRemoteConfig),P=m??b.debug,y=Ka({...t,api:x}),D=za({...t,api:x,sessionId:y.sessionId}),v=Za(d,!y.text),[F,k]=xi(!1),[B,H]=xi(null),U=wi(null),ue=wi(void 0),ge=ir(()=>{let _=U.current;if(!_)return;_.scrollIntoView({behavior:"smooth",block:"center"});let J=_.querySelector("textarea");J&&setTimeout(()=>J.focus(),300),k(!0),clearTimeout(ue.current),ue.current=setTimeout(()=>k(!1),2e3)},[]),K=Ja({messages:y.messages,status:y.status,config:t.suggestions}),q=ir(_=>{let J=_.content.map(re=>re.text??"").join("").trim();J&&y.handleSubmit({text:J,files:[],modelContext:_.modelContext})},[y.handleSubmit]),ee=ir(_=>{K.clear(),y.handleSubmit({text:_,files:[]})},[K.clear,y.handleSubmit]);return Jc(a,()=>({sendMessage:_=>{y.handleSubmit({text:_,files:[]}),ge()},sendMessageAndWait:_=>y.sendMessageAndWait(_),reset:y.reset,focus:ge,get messages(){return y.messages}}),[y.handleSubmit,y.sendMessageAndWait,y.reset,y.messages,ge]),Kc(()=>{if(!c)return;let _=J=>{let re=J.detail,A=typeof re?.message=="string"?re.message:void 0;A&&y.handleSubmit({text:A,files:[]}),ge()};return window.addEventListener(c,_),()=>window.removeEventListener(c,_)},[c,y.handleSubmit,ge]),qt("div",{ref:U,style:{...L,width:s,height:n},"data-waniwani-chat":"","data-waniwani-layout":"card",...w?{"data-waniwani-dark":""}:{},className:T("ww:flex ww:flex-col ww:font-[family-name:var(--ww-font)] ww:text-foreground ww:bg-background ww:rounded-[var(--ww-radius)] ww:overflow-hidden",F&&"ww:ring-2 ww:ring-blue-400/70 ww:ring-offset-2 ww:ring-offset-background",i),children:[qt("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:[pe("div",{className:"ww:text-sm ww:font-semibold ww:truncate ww:flex-1 ww:min-w-0",children:r}),pe(Kr,{messages:y.messages,evalEnabled:b.eval,api:x}),I&&pe(Wa,{threads:y.threads,activeThreadId:y.activeThreadId,onNewThread:y.startNewThread,onSelectThread:_=>{y.switchThread(_)},onDeleteThread:_=>{y.deleteThread(_)}})]}),qt(Br,{className:"ww:flex-1 ww:min-h-0 ww:bg-background",children:[pe(Dr,{scrollClassName:B?"ww:!relative ww:!overflow-hidden":void 0,children:pe(Ua,{messages:y.messages,status:y.status,welcomeMessage:u,welcome:f,onSuggestionSelect:ee,resourceEndpoint:g,chatSessionId:y.sessionId,isDark:w,onFollowUp:q,onCallTool:D,fullscreenToolCallId:B,debug:P,showToolCalls:C,toolDefinitions:y.toolDefinitions,onWidgetDisplayModeChange:(_,J)=>{H(_==="fullscreen"?J.toolCallId:null)}})}),pe(Er,{})]}),pe("div",{style:B?{display:"none"}:void 0,children:pe(Ga,{suggestions:K.suggestions,isLoading:K.isLoading,onSelect:ee})}),pe("div",{style:B?{display:"none"}:void 0,children:pe(aa,{queuedMessages:y.queuedMessages,onRemove:y.removeQueuedMessage})}),pe("div",{style:B?{display:"none"}:void 0,children:pe("div",{className:"ww:shrink-0 ww:px-4 ww:pb-8 ww:pt-2 ww:bg-background",children:qt("div",{className:"ww:mx-auto ww:w-full ww:max-w-3xl",children:[pe(Zt,{onSubmit:y.handleSubmit,globalDrop:l,multiple:l,className:"ww:rounded-2xl ww:border-border ww:bg-input",children:qt("div",{className:"ww:flex ww:items-center ww:gap-1 ww:pl-4 ww:pr-3 ww:py-2.5",children:[l&&pe(ta,{}),pe(Yt,{onChange:y.handleTextChange,value:y.text,placeholder:v,className:"ww:min-h-0 ww:py-1 ww:px-0"}),pe(ea,{status:y.status,disabled:y.queueFull})]})}),pe(Ha,{})]})})})]})});import{forwardRef as Yc,useCallback as to,useEffect as Gt,useImperativeHandle as ep,useRef as Wt,useState as Li}from"react";import{jsx as he,jsxs as et}from"react/jsx-runtime";var lr=Yc(function(t,a){let{theme:o,className:r,allowAttachments:s=!1,welcomeMessage:n,welcome:i,placeholder:l="Ask me anything...",triggerEvent:u="triggerDemoRequest",api:f,mcp:d,debug:c=!1,readOnly:p=!1,title:m,headerActions:I,enableThreadHistory:C=!1,showToolCalls:x=!0}=t,g=Ut(o),h=Ht(g),L=eo(g),w=Ka({...t,api:f}),b=za({...t,api:f,sessionId:w.sessionId,onCallTool:d?.onCallTool}),P=d?.resourceEndpoint??Ya(f,t.headers),y=Za(l,!w.text),[D,v]=Li(null),F=Wt(null),k=Wt(null),B=Wt(null),H=Wt(null),[U,ue]=Li(!0),ge=Wt(U);ge.current=U;let K=to(()=>{let A=F.current;if(!A)return;let R=A.querySelector("textarea");R&&R.focus()},[]),q=to((A="smooth")=>{let R=k.current;R&&R.scrollTo({top:R.scrollHeight,behavior:A})},[]);Gt(()=>{let A=H.current,R=k.current;if(!A||!R)return;let se=new IntersectionObserver(([j])=>ue(j.isIntersecting),{root:R,rootMargin:"0px 0px 200px 0px",threshold:0});return se.observe(A),()=>se.disconnect()},[]),Gt(()=>{(w.messages[w.messages.length-1]?.role==="user"||ge.current)&&q("smooth")},[w.messages.length,w.messages[w.messages.length-1]]),Gt(()=>{q("auto")},[q]),Gt(()=>{if(typeof ResizeObserver>"u")return;let A=k.current,R=B.current;if(!A&&!R)return;let se=A?.scrollHeight??0,j=A?.clientHeight??0,G=new ResizeObserver(()=>{let V=k.current;if(!V)return;let N=V.scrollTop+j>=se-5;se=V.scrollHeight,j=V.clientHeight,N&&q("auto")});return A&&G.observe(A),R&&G.observe(R),()=>G.disconnect()},[q]);let ee=Ja({messages:w.messages,status:w.status,config:t.suggestions}),_=to(A=>{let R=A.content.map(se=>se.text??"").join("").trim();R&&w.handleSubmit({text:R,files:[],modelContext:A.modelContext})},[w.handleSubmit]),J=to(A=>{ee.clear(),w.handleSubmit({text:A,files:[]})},[ee.clear,w.handleSubmit]);ep(a,()=>({sendMessage:A=>{w.handleSubmit({text:A,files:[]}),K()},sendMessageAndWait:A=>w.sendMessageAndWait(A),reset:w.reset,focus:K,get messages(){return w.messages}}),[w.handleSubmit,w.sendMessageAndWait,w.reset,w.messages,K]),Gt(()=>{if(!u)return;let A=R=>{let se=R.detail,j=typeof se?.message=="string"?se.message:void 0;j&&w.handleSubmit({text:j,files:[]}),K()};return window.addEventListener(u,A),()=>window.removeEventListener(u,A)},[u,w.handleSubmit,K]);let re=!!(m||C||I);return et("div",{ref:F,style:{...h,maxHeight:"inherit"},"data-waniwani-chat":"","data-waniwani-layout":"embed",...L?{"data-waniwani-dark":""}:{},className:T("ww:relative ww:w-full ww:h-full ww:flex ww:flex-col ww:bg-background ww:text-foreground ww:font-[family-name:var(--ww-font)] ww:overflow-hidden",r),children:[re&&et("div",{className:"ww:shrink-0 ww:flex ww:items-center ww:gap-2 ww:px-6 ww:py-3 ww:bg-background ww:border-b ww:border-border",style:{backgroundColor:g.headerBackgroundColor,color:g.headerTextColor},children:[m&&he("div",{className:"ww:text-sm ww:font-semibold ww:truncate ww:flex-1 ww:min-w-0",children:m}),!m&&he("div",{className:"ww:flex-1"}),I,C&&he(Wa,{threads:w.threads,activeThreadId:w.activeThreadId,onNewThread:w.startNewThread,onSelectThread:A=>{w.switchThread(A)},onDeleteThread:A=>{w.deleteThread(A)}})]}),et("div",{ref:k,className:T("ww:relative ww:flex-1 ww:min-h-0",D?"ww:overflow-hidden":"ww:overflow-y-auto"),children:[et("div",{ref:B,className:T("ww:mx-auto ww:w-full ww:max-w-3xl ww:px-4 ww:py-6 ww:flex ww:flex-col ww:gap-6",D&&"ww:!py-0"),children:[he(Ua,{messages:w.messages,status:w.status,welcomeMessage:n,welcome:i,onSuggestionSelect:J,resourceEndpoint:P,chatSessionId:w.sessionId,isDark:L,onFollowUp:_,onCallTool:b,fullscreenToolCallId:D,debug:c,showToolCalls:x,toolDefinitions:w.toolDefinitions,onWidgetDisplayModeChange:(A,R)=>{v(A==="fullscreen"?R.toolCallId:null)}}),he("div",{ref:H,"aria-hidden":!0,style:{height:1}})]}),!U&&!D&&he("div",{className:"ww:sticky ww:bottom-2 ww:flex ww:justify-center ww:pointer-events-none",children:he(ke,{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:he(ze,{className:"ww:size-4"})})})]}),!p&&et("div",{className:"ww:shrink-0 ww:bg-background",style:D?{display:"none"}:void 0,children:[he(Ga,{suggestions:ee.suggestions,isLoading:ee.isLoading,onSelect:J}),he(aa,{queuedMessages:w.queuedMessages,onRemove:w.removeQueuedMessage}),he("div",{className:"ww:px-4 ww:pb-2 ww:pt-2",children:et("div",{className:"ww:mx-auto ww:w-full ww:max-w-3xl",children:[he(Zt,{onSubmit:w.handleSubmit,globalDrop:s,multiple:s,className:"ww:rounded-2xl ww:border-border ww:bg-input",children:et("div",{className:"ww:flex ww:items-center ww:gap-1 ww:pl-4 ww:pr-3 ww:py-2.5",children:[s&&he(ta,{}),he(Yt,{onChange:w.handleTextChange,value:w.text,placeholder:y,className:"ww:min-h-0 ww:py-1 ww:px-0"}),he(ea,{status:w.status,disabled:w.queueFull})]})}),he(Ha,{})]})})]})]})});import{forwardRef as np,useEffect as ip,useMemo as Si,useState as lp}from"react";var tp="https://app.waniwani.ai/api/mcp/chat",ap={api:tp};function op(){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 rp(){let e=op();if(!e)return{};let t=h=>e.getAttribute(h)??void 0,a=h=>{let L=e.getAttribute(h);if(L==null)return;let w=L.trim().toLowerCase();if(w==="true"||w==="1"||w==="")return!0;if(w==="false"||w==="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");f&&(o.channelId=f);let d=a("data-show-tool-calls");d!==void 0&&(o.showToolCalls=d);let c=t("data-css");c&&(o.css=c);let p=t("data-suggestions");p&&(o.suggestions=p.split(",").map(h=>h.trim()).filter(Boolean));let m=a("data-enable-thread-history");m!==void 0&&(o.enableThreadHistory=m);let I=t("data-primary-color"),C=t("data-background-color"),x=t("data-text-color"),g=t("data-font-family");return(I||C||x||g)&&(o.theme={},I&&(o.theme.primaryColor=I),C&&(o.theme.backgroundColor=C),x&&(o.theme.textColor=x),g&&(o.theme.fontFamily=g)),o}function ur(e){if(!e)return{};let t={};for(let a in e)e[a]!==void 0&&(t[a]=e[a]);return t}function dr(e,t,a){let o=a??rp(),r={token:"",...ap,...ur(t),...ur(o),...ur(e),theme:{...t?.theme??{},...o.theme,...e?.theme}};if(!r.token)throw new Error("[WaniWani] Missing required config: `token`. Set data-token on the script tag or pass it to WaniWani.chat.init().");return r}function Ci(e){if(!(!e.theme||Object.keys(e.theme).length===0))return e.theme}import{useEffect as sC,useState as nC}from"react";async function Ii(e,t,a){try{let o=`${e.replace(/\/$/,"")}/config`,r=await fetch(o,{method:"GET",headers:{Authorization:`Bearer ${t}`},signal:a});if(!r.ok)return{};let s=await r.json(),n=s&&typeof s=="object"&&"data"in s&&s.data?s.data:s;return n?sp(n):{}}catch{return{}}}function sp(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 dp}from"react/jsx-runtime";var yi="https://app.waniwani.ai/api/mcp/chat",up=np(function(t,a){let{token:o,channelId:r,className:s,overrides:n}=t,i=Si(()=>({token:o,channelId:r,api:n?.api,mcpServerUrl:n?.mcpServerUrl,title:n?.title,welcomeMessage:n?.welcomeMessage,placeholder:n?.placeholder,suggestions:n?.suggestions,enableThreadHistory:n?.enableThreadHistory,showToolCalls:n?.showToolCalls,theme:n?.theme}),[o,r,n?.api,n?.mcpServerUrl,n?.title,n?.welcomeMessage,n?.placeholder,n?.suggestions,n?.enableThreadHistory,n?.showToolCalls,n?.theme]),[l,u]=lp({});ip(()=>{if(!o)return;let p=new AbortController,m=n?.api??yi;return Ii(m,o,p.signal).then(I=>{p.signal.aborted||u(I)}).catch(I=>{console.error("[WaniWani] Remote config fetch failed:",I)}),()=>p.abort()},[n?.api,o]);let f=Si(()=>dr(i,l,void 0),[i,l]),d=Ci(f),c={};return f.mcpServerUrl&&(c.mcpServerUrl=f.mcpServerUrl),f.channelId&&(c.channelId=f.channelId),dp(lr,{ref:a,api:f.api??yi,headers:{Authorization:`Bearer ${f.token}`},skipRemoteConfig:!0,body:Object.keys(c).length>0?c:void 0,theme:d,title:f.title,welcomeMessage:f.welcomeMessage,welcome:n?.welcome,placeholder:f.placeholder,suggestions:f.suggestions?{initial:f.suggestions}:void 0,enableThreadHistory:f.enableThreadHistory,showToolCalls:f.showToolCalls,allowAttachments:n?.allowAttachments,className:s})});export{Zc as ChatCard,lr as ChatEmbed,$c as DARK_THEME,gi as DEFAULT_THEME,Jo as McpAppFrame,up as WaniwaniChat,Ut as mergeTheme,Ht as themeToCSSProperties};
|
|
17
17
|
/*! Bundled license information:
|
|
18
18
|
|
|
19
19
|
lucide-react/dist/esm/shared/src/utils/mergeClasses.js:
|