@waniwani/sdk 0.17.1 → 0.17.2
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 +93 -93
- package/dist/chat/embed.js.map +1 -1
- package/dist/chat/index.d.ts +100 -1
- package/dist/chat/index.js +7 -7
- package/dist/chat/index.js.map +1 -1
- package/dist/legacy/index.d.ts +23 -0
- package/dist/legacy/index.js +13 -13
- package/dist/legacy/index.js.map +1 -1
- package/package.json +1 -1
package/dist/legacy/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{a as yo,b as Au,c as Ru}from"../chunk-R6LESDWJ.js";import{b as Rt,c as Ct,d as Zr,e as en}from"../chunk-PYLRF5BB.js";import{a as tn,b as an,c as on,d as rn,e as nn,f as ya,g as sn,h as ln,i as un,j as dn,k as bo,l as cn,m as Lt,n as It,o as ba,p as St,u as Mt}from"../chunk-YP6YTC7R.js";import{d as f}from"../chunk-LPD7BHH5.js";f();f();f();f();var ka="text/html+skybridge",Ta="text/html;profile=mcp-app",fn=async(e,t)=>{let a=e.endsWith("/")?e.slice(0,-1):e;return await(await fetch(`${a}${t}`)).text()};function pn(e){return{"openai/widgetDescription":e.description,"openai/widgetPrefersBorder":e.prefersBorder,"openai/widgetDomain":e.widgetDomain,...e.widgetCSP&&{"openai/widgetCSP":e.widgetCSP}}}function mn(e){let t=e.widgetCSP?{connectDomains:e.widgetCSP.connect_domains,resourceDomains:e.widgetCSP.resource_domains,frameDomains:e.widgetCSP.frame_domains,redirectDomains:e.widgetCSP.redirect_domains}:void 0;return{ui:{...t&&{csp:t},...e.prefersBorder!==void 0&&{prefersBorder:e.prefersBorder}}}}function ko(e){return{...e.openaiTemplateUri&&{"openai/outputTemplate":e.openaiTemplateUri},"openai/toolInvocation/invoking":e.invoking,"openai/toolInvocation/invoked":e.invoked,"openai/widgetAccessible":!0,"openai/resultCanProduceWidget":!0,...e.mcpTemplateUri&&{ui:{resourceUri:e.mcpTemplateUri,...e.autoHeight&&{autoHeight:!0}}},...e.mcpTemplateUri&&{"ui/resourceUri":e.mcpTemplateUri}}}function hn(e){let{id:t,title:a,description:o,baseUrl:r,htmlPath:n,widgetDomain:s,prefersBorder:i=!0,autoHeight:l=!0}=e,u=e.widgetCSP??{connect_domains:[r],resource_domains:[r]};if(process.env.NODE_ENV==="development")try{let{hostname:x}=new URL(r);(x==="localhost"||x==="127.0.0.1")&&(u={...u,connect_domains:[...u.connect_domains||[],`ws://${x}:*`,`wss://${x}:*`],resource_domains:[...u.resource_domains||[],`http://${x}:*`]})}catch{}let c=`ui://widgets/apps-sdk/${t}.html`,d=`ui://widgets/ext-apps/${t}.html`,p=null,m=()=>(p||(p=fn(r,n)),p),h=o;async function I(x){let S=await m();x.registerResource(`${t}-openai-widget`,c,{title:a,description:h,mimeType:ka,_meta:{"openai/widgetDescription":h,"openai/widgetPrefersBorder":i}},async L=>({contents:[{uri:L.href,mimeType:ka,text:S,_meta:pn({description:h,prefersBorder:i,widgetDomain:s,widgetCSP:u})}]})),x.registerResource(`${t}-mcp-widget`,d,{title:a,description:h,mimeType:Ta,_meta:{ui:{prefersBorder:i}}},async L=>({contents:[{uri:L.href,mimeType:Ta,text:S,_meta:mn({description:h,prefersBorder:i,widgetCSP:u})}]}))}return{id:t,title:a,description:o,openaiUri:c,mcpUri:d,autoHeight:l,register:I}}f();f();f();f();var Mu="waniwani/client";function gn(e){if(typeof e=="object"&&e!==null)return e[Mu]}function Fu(e,t){let{resource:a,description:o,inputSchema:r,annotations:n,autoInjectResultText:s=!0}=e,i=e.id??a?.id,l=e.title??a?.title;if(!i)throw new Error("createTool: `id` is required when no resource is provided");if(!l)throw new Error("createTool: `title` is required when no resource is provided");let u=a?ko({openaiTemplateUri:a.openaiUri,mcpTemplateUri:a.mcpUri,invoking:e.invoking??"Loading...",invoked:e.invoked??"Loaded",autoHeight:a.autoHeight}):void 0;return{id:i,title:l,description:o,async register(c){c.registerTool(i,{title:l,description:o,inputSchema:r,annotations:n,...u&&{_meta:u}},(async(d,p)=>{let m=p,h=m._meta??{},I=gn(m),x=await t(d,{extra:{_meta:h},waniwani:I});return a&&x.data?{content:[{type:"text",text:x.text}],structuredContent:x.data,_meta:{...u,...h,...s===!1?{"waniwani/autoInjectResultText":!1}:{}}}:{content:[{type:"text",text:x.text}],...x.data?{structuredContent:x.data}:{},...s===!1?{_meta:{"waniwani/autoInjectResultText":!1}}:{}}}))}}}async function Du(e,t){await Promise.all(t.map(a=>a.register(e)))}f();f();import{Fragment as Nu,jsx as Ft,jsxs as Ou}from"react/jsx-runtime";function Bu(){let e=window.innerBaseUrl,t=window.__wwPassthroughOrigins??[],a=document.documentElement;new MutationObserver(l=>{l.forEach(u=>{if(u.type==="attributes"&&u.target===a){let c=u.attributeName;c&&c!=="suppresshydrationwarning"&&c!=="lang"&&c!=="class"&&c!=="style"&&a.removeAttribute(c)}})}).observe(a,{attributes:!0,attributeOldValue:!0});let r=history.replaceState.bind(history);history.replaceState=(l,u,c)=>{try{let d=new URL(String(c??""),window.location.href);r(null,u,d.pathname+d.search+d.hash)}catch{}};let n=history.pushState.bind(history);history.pushState=(l,u,c)=>{try{let d=new URL(String(c??""),window.location.href);n(null,u,d.pathname+d.search+d.hash)}catch{}};let s=new URL(e).origin,i=window.self!==window.top;if(window.addEventListener("click",l=>{let u=l?.target?.closest("a");if(!u||!u.href)return;let c=new URL(u.href,window.location.href);if(c.origin!==window.location.origin&&c.origin!==s)try{window.openai&&(window.openai?.openExternal({href:u.href}),l.preventDefault())}catch{console.warn("openExternal failed, likely not in OpenAI client")}},!0),i&&window.location.origin!==s){let l=window.fetch;window.fetch=((p,m)=>{let h=typeof p=="string"&&!/^[a-z][a-z0-9+.-]*:/i.test(p)&&!p.startsWith("//"),I;if(typeof p=="string"||p instanceof URL?I=new URL(p,window.location.href):I=new URL(p.url,window.location.href),I.origin===s)return typeof p=="string"||p instanceof URL?p=I.toString():p=new Request(I.toString(),p),l.call(window,p,{...m,mode:"cors"});if(t.indexOf(I.origin)!==-1)return l.call(window,p,m);if(h&&I.origin===window.location.origin){let x=new URL(e);return x.pathname=I.pathname,x.search=I.search,x.hash=I.hash,I=x,p=I.toString(),l.call(window,p,{...m,mode:"cors"})}return l.call(window,p,m)});let u=s.replace(/^http/,"ws"),c=window.WebSocket,d=((p,m)=>{let h=new URL(String(p),window.location.href);if(h.origin===window.location.origin||h.origin===window.location.origin.replace(/^http/,"ws")){let I=new URL(u);return I.pathname=h.pathname,I.search=h.search,I.hash=h.hash,new c(I.toString(),m)}return new c(p,m)});d.prototype=c.prototype,Object.assign(d,{CONNECTING:c.CONNECTING,OPEN:c.OPEN,CLOSING:c.CLOSING,CLOSED:c.CLOSED}),window.WebSocket=d}}var Eu=`(${Bu.toString()})()`;function _u({baseUrl:e,passthroughOrigins:t}){return Ou(Nu,{children:[Ft("base",{href:e}),Ft("script",{children:`window.innerBaseUrl = ${JSON.stringify(e)}`}),Ft("script",{children:`window.__wwPassthroughOrigins = ${JSON.stringify(t??[])}`}),Ft("script",{children:'window.__isChatGptApp = typeof window.openai !== "undefined";'}),Ft("script",{children:Eu})]})}f();f();import{useCallback as ze,useEffect as yt,useRef as To,useState as Ue}from"react";f();var wn={theme:"dark",userAgent:{device:{type:"desktop"},capabilities:{hover:!0,touch:!1}},locale:"en",maxHeight:800,displayMode:"inline",safeArea:{insets:{top:0,bottom:0,left:0,right:0}},toolInput:{},toolOutput:null,toolResponseMetadata:null,widgetState:null},Dt={...wn};function Bt(e){typeof window>"u"||window.openai||(Dt={...wn,toolOutput:e??null},window.openai={...Dt,requestDisplayMode:async({mode:t})=>(rt("displayMode",t),{mode:t}),callTool:async(t,a)=>(console.log(`[DevMode] callTool: ${t}`,a),{result:JSON.stringify({mock:!0,tool:t,args:a})}),sendFollowUpMessage:async({prompt:t})=>{console.log(`[DevMode] sendFollowUpMessage: ${t}`)},openExternal:({href:t})=>{console.log(`[DevMode] openExternal: ${t}`),window.open(t,"_blank")},setWidgetState:async t=>{rt("widgetState",t)}},window.dispatchEvent(new Rt({globals:Dt})))}function rt(e,t){typeof window>"u"||!window.openai||(Dt[e]=t,window.openai[e]=t,window.dispatchEvent(new Rt({globals:{[e]:t}})))}function va(){return{...Dt}}function Et(e){rt("toolOutput",e)}function _t(e){rt("displayMode",e)}function Nt(e){rt("theme",e)}import{Fragment as vo,jsx as B,jsxs as J}from"react/jsx-runtime";var Pa=150;function xn({className:e}){return J("svg",{className:e,viewBox:"0 0 24 24",fill:"none",role:"img","aria-label":"Dev Controls",children:[B("rect",{x:"4",y:"4",width:"10",height:"10",rx:"2",stroke:"currentColor",strokeWidth:"1.5"}),B("rect",{x:"10",y:"10",width:"10",height:"10",rx:"2",stroke:"currentColor",strokeWidth:"1.5",fill:"currentColor",fillOpacity:"0.15"})]})}function Uu({className:e}){return B("svg",{"aria-hidden":"true",className:e,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:B("path",{d:"M18 6L6 18M6 6l12 12"})})}function Hu({className:e}){return B("svg",{"aria-hidden":"true",className:e,viewBox:"0 0 16 16",fill:"none",children:B("rect",{x:"2",y:"4",width:"12",height:"8",rx:"1.5",stroke:"currentColor",strokeWidth:"1.25"})})}function qu({className:e}){return J("svg",{"aria-hidden":"true",className:e,viewBox:"0 0 16 16",fill:"none",children:[B("rect",{x:"1.5",y:"3",width:"13",height:"10",rx:"1.5",stroke:"currentColor",strokeWidth:"1.25"}),B("rect",{x:"8.5",y:"7",width:"5",height:"4",rx:"0.75",fill:"currentColor"})]})}function Wu({className:e}){return B("svg",{"aria-hidden":"true",className:e,viewBox:"0 0 16 16",fill:"none",children:B("path",{d:"M2 5.5V3.5C2 2.95 2.45 2.5 3 2.5H5.5M10.5 2.5H13C13.55 2.5 14 2.95 14 3.5V5.5M14 10.5V12.5C14 13.05 13.55 13.5 13 13.5H10.5M5.5 13.5H3C2.45 13.5 2 13.05 2 12.5V10.5",stroke:"currentColor",strokeWidth:"1.25",strokeLinecap:"round",strokeLinejoin:"round"})})}function Gu({className:e}){return J("svg",{"aria-hidden":"true",className:e,viewBox:"0 0 16 16",fill:"none",children:[B("circle",{cx:"8",cy:"8",r:"2.5",stroke:"currentColor",strokeWidth:"1.25"}),B("path",{d:"M8 2v1.5M8 12.5V14M2 8h1.5M12.5 8H14M4.11 4.11l1.06 1.06M10.83 10.83l1.06 1.06M4.11 11.89l1.06-1.06M10.83 5.17l1.06-1.06",stroke:"currentColor",strokeWidth:"1.25",strokeLinecap:"round"})]})}function ju({className:e}){return B("svg",{"aria-hidden":"true",className:e,viewBox:"0 0 16 16",fill:"none",children:B("path",{d:"M13.5 9.5a5.5 5.5 0 01-7-7 5.5 5.5 0 107 7z",stroke:"currentColor",strokeWidth:"1.25",strokeLinecap:"round",strokeLinejoin:"round"})})}function zu({className:e}){return J("svg",{"aria-hidden":"true",className:e,viewBox:"0 0 16 16",fill:"none",children:[B("path",{d:"M2.5 8a5.5 5.5 0 019.37-3.9M13.5 8a5.5 5.5 0 01-9.37 3.9",stroke:"currentColor",strokeWidth:"1.25",strokeLinecap:"round"}),B("path",{d:"M12.5 2v3h-3M3.5 14v-3h3",stroke:"currentColor",strokeWidth:"1.25",strokeLinecap:"round",strokeLinejoin:"round"})]})}var Vu=`
|
|
1
|
+
import{a as bo,b as _u,c as Nu}from"../chunk-R6LESDWJ.js";import{b as Rt,c as Ct,d as en,e as tn}from"../chunk-PYLRF5BB.js";import{a as an,b as on,c as rn,d as nn,e as sn,f as ya,g as ln,h as un,i as dn,j as cn,k as ko,l as fn,m as Lt,n as It,o as ba,p as St,u as Mt}from"../chunk-YP6YTC7R.js";import{d as f}from"../chunk-LPD7BHH5.js";f();f();f();f();var ka="text/html+skybridge",Ta="text/html;profile=mcp-app",pn=async(e,t)=>{let a=e.endsWith("/")?e.slice(0,-1):e;return await(await fetch(`${a}${t}`)).text()};function mn(e){return{"openai/widgetDescription":e.description,"openai/widgetPrefersBorder":e.prefersBorder,"openai/widgetDomain":e.widgetDomain,...e.widgetCSP&&{"openai/widgetCSP":e.widgetCSP}}}function hn(e){let t=e.widgetCSP?{connectDomains:e.widgetCSP.connect_domains,resourceDomains:e.widgetCSP.resource_domains,frameDomains:e.widgetCSP.frame_domains,redirectDomains:e.widgetCSP.redirect_domains}:void 0;return{ui:{...t&&{csp:t},...e.prefersBorder!==void 0&&{prefersBorder:e.prefersBorder}}}}function To(e){return{...e.openaiTemplateUri&&{"openai/outputTemplate":e.openaiTemplateUri},"openai/toolInvocation/invoking":e.invoking,"openai/toolInvocation/invoked":e.invoked,"openai/widgetAccessible":!0,"openai/resultCanProduceWidget":!0,...e.mcpTemplateUri&&{ui:{resourceUri:e.mcpTemplateUri,...e.autoHeight&&{autoHeight:!0}}},...e.mcpTemplateUri&&{"ui/resourceUri":e.mcpTemplateUri}}}function gn(e){let{id:t,title:a,description:o,baseUrl:r,htmlPath:n,widgetDomain:s,prefersBorder:i=!0,autoHeight:l=!0}=e,u=e.widgetCSP??{connect_domains:[r],resource_domains:[r]};if(process.env.NODE_ENV==="development")try{let{hostname:C}=new URL(r);(C==="localhost"||C==="127.0.0.1")&&(u={...u,connect_domains:[...u.connect_domains||[],`ws://${C}:*`,`wss://${C}:*`],resource_domains:[...u.resource_domains||[],`http://${C}:*`]})}catch{}let d=`ui://widgets/apps-sdk/${t}.html`,c=`ui://widgets/ext-apps/${t}.html`,p=null,m=()=>(p||(p=pn(r,n)),p),h=o;async function L(C){let S=await m();C.registerResource(`${t}-openai-widget`,d,{title:a,description:h,mimeType:ka,_meta:{"openai/widgetDescription":h,"openai/widgetPrefersBorder":i}},async x=>({contents:[{uri:x.href,mimeType:ka,text:S,_meta:mn({description:h,prefersBorder:i,widgetDomain:s,widgetCSP:u})}]})),C.registerResource(`${t}-mcp-widget`,c,{title:a,description:h,mimeType:Ta,_meta:{ui:{prefersBorder:i}}},async x=>({contents:[{uri:x.href,mimeType:Ta,text:S,_meta:hn({description:h,prefersBorder:i,widgetCSP:u})}]}))}return{id:t,title:a,description:o,openaiUri:d,mcpUri:c,autoHeight:l,register:L}}f();f();f();f();var Ou="waniwani/client";function wn(e){if(typeof e=="object"&&e!==null)return e[Ou]}function Uu(e,t){let{resource:a,description:o,inputSchema:r,annotations:n,autoInjectResultText:s=!0}=e,i=e.id??a?.id,l=e.title??a?.title;if(!i)throw new Error("createTool: `id` is required when no resource is provided");if(!l)throw new Error("createTool: `title` is required when no resource is provided");let u=a?To({openaiTemplateUri:a.openaiUri,mcpTemplateUri:a.mcpUri,invoking:e.invoking??"Loading...",invoked:e.invoked??"Loaded",autoHeight:a.autoHeight}):void 0;return{id:i,title:l,description:o,async register(d){d.registerTool(i,{title:l,description:o,inputSchema:r,annotations:n,...u&&{_meta:u}},(async(c,p)=>{let m=p,h=m._meta??{},L=wn(m),C=await t(c,{extra:{_meta:h},waniwani:L});return a&&C.data?{content:[{type:"text",text:C.text}],structuredContent:C.data,_meta:{...u,...h,...s===!1?{"waniwani/autoInjectResultText":!1}:{}}}:{content:[{type:"text",text:C.text}],...C.data?{structuredContent:C.data}:{},...s===!1?{_meta:{"waniwani/autoInjectResultText":!1}}:{}}}))}}}async function Hu(e,t){await Promise.all(t.map(a=>a.register(e)))}f();f();import{Fragment as ju,jsx as Ft,jsxs as zu}from"react/jsx-runtime";function qu(){let e=window.innerBaseUrl,t=window.__wwPassthroughOrigins??[],a=document.documentElement;new MutationObserver(l=>{l.forEach(u=>{if(u.type==="attributes"&&u.target===a){let d=u.attributeName;d&&d!=="suppresshydrationwarning"&&d!=="lang"&&d!=="class"&&d!=="style"&&a.removeAttribute(d)}})}).observe(a,{attributes:!0,attributeOldValue:!0});let r=history.replaceState.bind(history);history.replaceState=(l,u,d)=>{try{let c=new URL(String(d??""),window.location.href);r(null,u,c.pathname+c.search+c.hash)}catch{}};let n=history.pushState.bind(history);history.pushState=(l,u,d)=>{try{let c=new URL(String(d??""),window.location.href);n(null,u,c.pathname+c.search+c.hash)}catch{}};let s=new URL(e).origin,i=window.self!==window.top;if(window.addEventListener("click",l=>{let u=l?.target?.closest("a");if(!u||!u.href)return;let d=new URL(u.href,window.location.href);if(d.origin!==window.location.origin&&d.origin!==s)try{window.openai&&(window.openai?.openExternal({href:u.href}),l.preventDefault())}catch{console.warn("openExternal failed, likely not in OpenAI client")}},!0),i&&window.location.origin!==s){let l=window.fetch;window.fetch=((p,m)=>{let h=typeof p=="string"&&!/^[a-z][a-z0-9+.-]*:/i.test(p)&&!p.startsWith("//"),L;if(typeof p=="string"||p instanceof URL?L=new URL(p,window.location.href):L=new URL(p.url,window.location.href),L.origin===s)return typeof p=="string"||p instanceof URL?p=L.toString():p=new Request(L.toString(),p),l.call(window,p,{...m,mode:"cors"});if(t.indexOf(L.origin)!==-1)return l.call(window,p,m);if(h&&L.origin===window.location.origin){let C=new URL(e);return C.pathname=L.pathname,C.search=L.search,C.hash=L.hash,L=C,p=L.toString(),l.call(window,p,{...m,mode:"cors"})}return l.call(window,p,m)});let u=s.replace(/^http/,"ws"),d=window.WebSocket,c=((p,m)=>{let h=new URL(String(p),window.location.href);if(h.origin===window.location.origin||h.origin===window.location.origin.replace(/^http/,"ws")){let L=new URL(u);return L.pathname=h.pathname,L.search=h.search,L.hash=h.hash,new d(L.toString(),m)}return new d(p,m)});c.prototype=d.prototype,Object.assign(c,{CONNECTING:d.CONNECTING,OPEN:d.OPEN,CLOSING:d.CLOSING,CLOSED:d.CLOSED}),window.WebSocket=c}}var Wu=`(${qu.toString()})()`;function Gu({baseUrl:e,passthroughOrigins:t}){return zu(ju,{children:[Ft("base",{href:e}),Ft("script",{children:`window.innerBaseUrl = ${JSON.stringify(e)}`}),Ft("script",{children:`window.__wwPassthroughOrigins = ${JSON.stringify(t??[])}`}),Ft("script",{children:'window.__isChatGptApp = typeof window.openai !== "undefined";'}),Ft("script",{children:Wu})]})}f();f();import{useCallback as $e,useEffect as yt,useRef as vo,useState as qe}from"react";f();var xn={theme:"dark",userAgent:{device:{type:"desktop"},capabilities:{hover:!0,touch:!1}},locale:"en",maxHeight:800,displayMode:"inline",safeArea:{insets:{top:0,bottom:0,left:0,right:0}},toolInput:{},toolOutput:null,toolResponseMetadata:null,widgetState:null},Dt={...xn};function Bt(e){typeof window>"u"||window.openai||(Dt={...xn,toolOutput:e??null},window.openai={...Dt,requestDisplayMode:async({mode:t})=>(nt("displayMode",t),{mode:t}),callTool:async(t,a)=>(console.log(`[DevMode] callTool: ${t}`,a),{result:JSON.stringify({mock:!0,tool:t,args:a})}),sendFollowUpMessage:async({prompt:t})=>{console.log(`[DevMode] sendFollowUpMessage: ${t}`)},openExternal:({href:t})=>{console.log(`[DevMode] openExternal: ${t}`),window.open(t,"_blank")},setWidgetState:async t=>{nt("widgetState",t)}},window.dispatchEvent(new Rt({globals:Dt})))}function nt(e,t){typeof window>"u"||!window.openai||(Dt[e]=t,window.openai[e]=t,window.dispatchEvent(new Rt({globals:{[e]:t}})))}function va(){return{...Dt}}function Et(e){nt("toolOutput",e)}function _t(e){nt("displayMode",e)}function Nt(e){nt("theme",e)}import{Fragment as Po,jsx as B,jsxs as Y}from"react/jsx-runtime";var Pa=150;function Cn({className:e}){return Y("svg",{className:e,viewBox:"0 0 24 24",fill:"none",role:"img","aria-label":"Dev Controls",children:[B("rect",{x:"4",y:"4",width:"10",height:"10",rx:"2",stroke:"currentColor",strokeWidth:"1.5"}),B("rect",{x:"10",y:"10",width:"10",height:"10",rx:"2",stroke:"currentColor",strokeWidth:"1.5",fill:"currentColor",fillOpacity:"0.15"})]})}function Vu({className:e}){return B("svg",{"aria-hidden":"true",className:e,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:B("path",{d:"M18 6L6 18M6 6l12 12"})})}function $u({className:e}){return B("svg",{"aria-hidden":"true",className:e,viewBox:"0 0 16 16",fill:"none",children:B("rect",{x:"2",y:"4",width:"12",height:"8",rx:"1.5",stroke:"currentColor",strokeWidth:"1.25"})})}function Xu({className:e}){return Y("svg",{"aria-hidden":"true",className:e,viewBox:"0 0 16 16",fill:"none",children:[B("rect",{x:"1.5",y:"3",width:"13",height:"10",rx:"1.5",stroke:"currentColor",strokeWidth:"1.25"}),B("rect",{x:"8.5",y:"7",width:"5",height:"4",rx:"0.75",fill:"currentColor"})]})}function Ku({className:e}){return B("svg",{"aria-hidden":"true",className:e,viewBox:"0 0 16 16",fill:"none",children:B("path",{d:"M2 5.5V3.5C2 2.95 2.45 2.5 3 2.5H5.5M10.5 2.5H13C13.55 2.5 14 2.95 14 3.5V5.5M14 10.5V12.5C14 13.05 13.55 13.5 13 13.5H10.5M5.5 13.5H3C2.45 13.5 2 13.05 2 12.5V10.5",stroke:"currentColor",strokeWidth:"1.25",strokeLinecap:"round",strokeLinejoin:"round"})})}function Qu({className:e}){return Y("svg",{"aria-hidden":"true",className:e,viewBox:"0 0 16 16",fill:"none",children:[B("circle",{cx:"8",cy:"8",r:"2.5",stroke:"currentColor",strokeWidth:"1.25"}),B("path",{d:"M8 2v1.5M8 12.5V14M2 8h1.5M12.5 8H14M4.11 4.11l1.06 1.06M10.83 10.83l1.06 1.06M4.11 11.89l1.06-1.06M10.83 5.17l1.06-1.06",stroke:"currentColor",strokeWidth:"1.25",strokeLinecap:"round"})]})}function Ju({className:e}){return B("svg",{"aria-hidden":"true",className:e,viewBox:"0 0 16 16",fill:"none",children:B("path",{d:"M13.5 9.5a5.5 5.5 0 01-7-7 5.5 5.5 0 107 7z",stroke:"currentColor",strokeWidth:"1.25",strokeLinecap:"round",strokeLinejoin:"round"})})}function Yu({className:e}){return Y("svg",{"aria-hidden":"true",className:e,viewBox:"0 0 16 16",fill:"none",children:[B("path",{d:"M2.5 8a5.5 5.5 0 019.37-3.9M13.5 8a5.5 5.5 0 01-9.37 3.9",stroke:"currentColor",strokeWidth:"1.25",strokeLinecap:"round"}),B("path",{d:"M12.5 2v3h-3M3.5 14v-3h3",stroke:"currentColor",strokeWidth:"1.25",strokeLinecap:"round",strokeLinejoin:"round"})]})}var Zu=`
|
|
2
2
|
@keyframes devPanelSlideIn {
|
|
3
3
|
0% {
|
|
4
4
|
opacity: 0;
|
|
@@ -46,28 +46,28 @@ import{a as yo,b as Au,c as Ru}from"../chunk-R6LESDWJ.js";import{b as Rt,c as Ct
|
|
|
46
46
|
.dev-json-editor::-webkit-scrollbar-thumb:hover {
|
|
47
47
|
background: rgba(255, 255, 255, 0.15);
|
|
48
48
|
}
|
|
49
|
-
`;function
|
|
49
|
+
`;function In({defaultProps:e,widgetPaths:t,children:a}){let[o,r]=qe(!1),[n,s]=qe(!1);return yt(()=>{if(new URLSearchParams(window.location.search).get("platform")==="mcp-apps"){r(!0);return}if(t&&t.length>0){let l=window.location.pathname,u=t.some(d=>l===d||l.startsWith(`${d}/`));s(u),u&&Bt(e)}else Bt(e),s(!0);r(!0)},[e,t]),o?n?Y(Po,{children:[B(ed,{children:a}),B(td,{defaultProps:e})]}):B(Po,{children:a}):null}function ed({children:e}){return B("div",{className:"min-h-screen bg-[#212121] flex items-center justify-center p-8",children:B("div",{className:"relative w-full max-w-md overflow-hidden rounded-2xl sm:rounded-3xl border border-[#414141]",style:{boxShadow:"0px 0px 0px 1px #414141, 0px 4px 14px rgba(0,0,0,0.24)"},children:e})})}function Ln({options:e,value:t,onChange:a}){let o=e.findIndex(r=>r.value===t);return Y("div",{className:"relative flex p-0.5 rounded-lg",style:{background:"rgba(255, 255, 255, 0.04)",border:"1px solid rgba(255, 255, 255, 0.06)"},children:[B("div",{className:"absolute top-0.5 bottom-0.5 rounded-md transition-transform duration-150 ease-out",style:{width:`calc(${100/e.length}% - 2px)`,left:"2px",transform:`translateX(calc(${o*100}% + ${o*2}px))`,background:"rgba(255, 255, 255, 0.1)"}}),e.map(r=>Y("button",{type:"button",onClick:()=>a(r.value),className:`
|
|
50
50
|
relative z-10 flex-1 flex items-center justify-center gap-1.5 px-2 py-1.5
|
|
51
51
|
text-xs font-medium rounded-md transition-colors duration-150
|
|
52
52
|
${t===r.value?"text-white":"text-gray-400 hover:text-gray-300"}
|
|
53
|
-
`,children:[r.icon,B("span",{className:"capitalize",children:r.label})]},r.value))]})}function
|
|
53
|
+
`,children:[r.icon,B("span",{className:"capitalize",children:r.label})]},r.value))]})}function td({defaultProps:e}){let[t,a]=qe(()=>typeof window>"u"?!1:localStorage.getItem("dev-controls-open")==="true"),[o,r]=qe(!1),[n,s]=qe(t),[i,l]=qe("inline"),[u,d]=qe("dark"),[c,p]=qe(!1),[m,h]=qe(()=>JSON.stringify(e??{},null,2)),[L,C]=qe(null),S=vo(null),x=vo(null),I=vo(null);yt(()=>{let T=va();l(T.displayMode),d(T.theme)},[]),yt(()=>{typeof window>"u"||(window.openai||(window.openai={}),window.openai.safeArea={insets:{top:0,bottom:c?Pa:0,left:0,right:0}},window.dispatchEvent(new Rt({globals:{safeArea:window.openai.safeArea}})))},[c]),yt(()=>{localStorage.setItem("dev-controls-open",String(t))},[t]);let b=$e(()=>{s(!0),requestAnimationFrame(()=>{a(!0)})},[]),k=$e(()=>{r(!0),a(!1),setTimeout(()=>{s(!1),r(!1)},150)},[]),P=$e(()=>{t?k():b()},[t,b,k]);yt(()=>{let T=N=>{(N.metaKey||N.ctrlKey)&&N.shiftKey&&N.key==="d"&&(N.preventDefault(),P()),N.key==="Escape"&&t&&k()};return window.addEventListener("keydown",T),()=>window.removeEventListener("keydown",T)},[t,P,k]),yt(()=>{if(!t)return;let T=N=>{I.current&&!I.current.contains(N.target)&&k()};return document.addEventListener("mousedown",T),()=>document.removeEventListener("mousedown",T)},[t,k]);let F=$e(T=>{l(T),_t(T)},[]),R=$e(T=>{d(T),Nt(T)},[]),_=$e(T=>{try{let N=JSON.parse(T);C(null),Et(N)}catch{C("Invalid JSON")}},[]),M=$e(T=>{h(T),S.current&&clearTimeout(S.current),S.current=setTimeout(()=>{_(T)},500)},[_]),E=$e(()=>{S.current&&clearTimeout(S.current),_(m)},[_,m]),v=$e(()=>{let T=JSON.stringify(e??{},null,2);h(T),C(null),Et(e??{}),l("inline"),_t("inline"),d("dark"),Nt("dark")},[e]),D=[{value:"inline",label:"inline",icon:B($u,{className:"w-3.5 h-3.5"})},{value:"pip",label:"pip",icon:B(Xu,{className:"w-3.5 h-3.5"})},{value:"fullscreen",label:"full",icon:B(Ku,{className:"w-3.5 h-3.5"})}],H=[{value:"light",label:"light",icon:B(Qu,{className:"w-3.5 h-3.5"})},{value:"dark",label:"dark",icon:B(Ju,{className:"w-3.5 h-3.5"})}];return Y(Po,{children:[B("style",{dangerouslySetInnerHTML:{__html:Zu}}),Y("div",{ref:I,className:"fixed bottom-4 right-4 z-[9999] font-['Inter',_system-ui,_sans-serif]",children:[Y("button",{type:"button",onClick:P,className:"group relative flex items-center justify-center w-11 h-11 rounded-xl transition-all duration-200 ease-out hover:scale-105 active:scale-95",style:{background:"rgba(14, 14, 16, 0.95)",backdropFilter:"blur(16px)",WebkitBackdropFilter:"blur(16px)",border:"1px solid rgba(255, 255, 255, 0.08)",boxShadow:`
|
|
54
54
|
0 4px 12px rgba(0, 0, 0, 0.4),
|
|
55
55
|
0 0 0 1px rgba(255, 255, 255, 0.05),
|
|
56
56
|
inset 0 1px 0 rgba(255, 255, 255, 0.04)
|
|
57
|
-
`},"aria-label":"Toggle Dev Controls","aria-expanded":t,children:[B(
|
|
57
|
+
`},"aria-label":"Toggle Dev Controls","aria-expanded":t,children:[B(Cn,{className:`w-5 h-5 transition-all duration-200 ${t?"text-indigo-400 scale-110":"text-gray-300 group-hover:text-white"}`}),B("div",{className:"absolute inset-0 rounded-xl opacity-0 group-hover:opacity-100 transition-opacity duration-200 pointer-events-none",style:{background:"radial-gradient(circle at center, rgba(99, 102, 241, 0.15) 0%, transparent 70%)"}})]}),n&&Y("div",{ref:x,className:`absolute bottom-14 right-0 w-80 ${t&&!o?"dev-panel-enter":"dev-panel-exit"}`,style:{maxHeight:"calc(100vh - 120px)",background:"rgba(14, 14, 16, 0.92)",backdropFilter:"blur(24px)",WebkitBackdropFilter:"blur(24px)",border:"1px solid rgba(255, 255, 255, 0.06)",borderRadius:"16px",boxShadow:`
|
|
58
58
|
0 25px 50px -12px rgba(0, 0, 0, 0.6),
|
|
59
59
|
0 0 0 1px rgba(255, 255, 255, 0.05),
|
|
60
60
|
inset 0 1px 0 rgba(255, 255, 255, 0.04)
|
|
61
|
-
`},children:[J("div",{className:"flex items-center justify-between px-4 py-3",style:{borderBottom:"1px solid rgba(255, 255, 255, 0.06)"},children:[J("div",{className:"flex items-center gap-2",children:[B(xn,{className:"w-4 h-4 text-gray-400"}),B("span",{className:"text-sm font-medium text-white",children:"Dev Controls"})]}),J("div",{className:"flex items-center gap-2",children:[B("span",{className:"text-[10px] font-medium text-gray-500 px-1.5 py-0.5 rounded",style:{background:"rgba(255, 255, 255, 0.04)",border:"1px solid rgba(255, 255, 255, 0.06)"},children:typeof navigator<"u"&&navigator.platform?.includes("Mac")?"\u2318\u21E7D":"Ctrl+Shift+D"}),B("button",{type:"button",onClick:T,className:"p-1 rounded-md text-gray-500 hover:text-gray-300 hover:bg-white/5 transition-colors",children:B(Uu,{className:"w-4 h-4"})})]})]}),J("div",{className:"p-4 space-y-5 overflow-y-auto",style:{maxHeight:"calc(100vh - 200px)"},children:[J("div",{children:[B("label",{htmlFor:"display-mode",className:"text-[11px] font-medium uppercase tracking-wider text-gray-500 block mb-2",children:"Display Mode"}),B(Cn,{options:D,value:i,onChange:M})]}),J("div",{children:[B("label",{htmlFor:"theme",className:"text-[11px] font-medium uppercase tracking-wider text-gray-500 block mb-2",children:"Theme"}),B(Cn,{options:q,value:u,onChange:A})]}),J("div",{children:[B("label",{htmlFor:"safe-area",className:"text-[11px] font-medium uppercase tracking-wider text-gray-500 block mb-2",children:"Safe Area (Chat Input)"}),J("button",{type:"button",onClick:()=>p(!d),className:`w-full flex items-center justify-between px-3 py-2.5 rounded-lg text-xs font-medium transition-all duration-150 ${d?"text-emerald-400":"text-gray-400"}`,style:{background:d?"rgba(34, 197, 94, 0.1)":"rgba(255, 255, 255, 0.04)",border:d?"1px solid rgba(34, 197, 94, 0.3)":"1px solid rgba(255, 255, 255, 0.06)"},children:[B("span",{children:"Mock ChatGPT Input Bar"}),B("span",{className:`px-2 py-0.5 rounded text-[10px] font-semibold ${d?"bg-emerald-500/20 text-emerald-400":"bg-gray-500/20 text-gray-500"}`,children:d?"ON":"OFF"})]}),d&&J("p",{className:"text-[10px] text-gray-500 mt-1.5",children:["bottom: ",Pa,"px"]})]}),J("div",{children:[B("label",{htmlFor:"widget-props",className:"text-[11px] font-medium uppercase tracking-wider text-gray-500 block mb-2",children:"Widget Props"}),B("textarea",{value:m,onChange:y=>F(y.target.value),onBlur:_,className:"dev-json-editor w-full min-h-[160px] text-xs text-gray-200 p-3 rounded-lg resize-none focus:outline-none transition-colors",style:{background:"rgba(0, 0, 0, 0.3)",border:I?"1px solid rgba(239, 68, 68, 0.5)":"1px solid rgba(255, 255, 255, 0.06)",fontFamily:"'JetBrains Mono', 'SF Mono', 'Fira Code', monospace",lineHeight:1.6},onFocus:y=>{I||(y.target.style.borderColor="rgba(99, 102, 241, 0.5)")},onBlurCapture:y=>{I||(y.target.style.borderColor="rgba(255, 255, 255, 0.06)")},spellCheck:!1}),I&&J("p",{className:"text-red-400 text-[11px] mt-1.5 flex items-center gap-1",children:[B("svg",{"aria-hidden":"true","aria-label":"Error",className:"w-3 h-3",viewBox:"0 0 16 16",fill:"currentColor",children:B("path",{d:"M8 1.5a6.5 6.5 0 100 13 6.5 6.5 0 000-13zM7 4.5h2v4H7v-4zm0 5h2v2H7v-2z"})}),I]})]}),J("button",{type:"button",onClick:v,className:"w-full flex items-center justify-center gap-2 px-3 py-2 rounded-lg text-xs font-medium text-gray-400 transition-all duration-150 hover:text-gray-200",style:{background:"rgba(255, 255, 255, 0.04)",border:"1px solid rgba(255, 255, 255, 0.06)"},onMouseEnter:y=>{y.currentTarget.style.background="rgba(255, 255, 255, 0.08)",y.currentTarget.style.borderColor="rgba(255, 255, 255, 0.1)"},onMouseLeave:y=>{y.currentTarget.style.background="rgba(255, 255, 255, 0.04)",y.currentTarget.style.borderColor="rgba(255, 255, 255, 0.06)"},children:[B(zu,{className:"w-3.5 h-3.5"}),"Reset to Defaults"]})]})]})]}),d&&J("div",{className:"fixed bottom-0 left-0 right-0 z-[9998] flex items-center justify-center pointer-events-none",style:{height:`${Pa}px`,background:"linear-gradient(to top, #1a1a1a 0%, #1a1a1a 80%, transparent 100%)"},children:[J("div",{className:"w-full max-w-2xl mx-4 px-4 py-3 rounded-2xl bg-[#2f2f2f] border border-[#424242] flex items-center gap-3",children:[B("div",{className:"w-8 h-8 rounded-full bg-[#424242] flex items-center justify-center",children:B("svg",{"aria-hidden":"true",className:"w-4 h-4 text-gray-400",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:B("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M12 4v16m8-8H4"})})}),B("div",{className:"flex-1 text-gray-400 text-sm",children:"Ask me anything..."}),B("div",{className:"w-8 h-8 rounded-full bg-[#424242] flex items-center justify-center",children:B("svg",{"aria-hidden":"true",className:"w-4 h-4 text-gray-400",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:B("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M19 11a7 7 0 01-7 7m0 0a7 7 0 01-7-7m7 7v4m0 0H8m4 0h4m-4-8a3 3 0 01-3-3V5a3 3 0 116 0v6a3 3 0 01-3 3z"})})})]}),J("div",{className:"absolute bottom-1 text-[10px] text-gray-600 font-mono",children:["Mock SafeArea: bottom=",Pa,"px"]})]})]})}f();f();import{useCallback as Qu,useContext as Ju,useLayoutEffect as Yu,useMemo as Zu,useRef as In}from"react";f();import{createContext as Ku}from"react";var Ot=Ku(null);import{Fragment as Sn,jsx as Po}from"react/jsx-runtime";var ed="waniwani:send-follow-up:advanced:",td=1e4;function yn(e){return`${ed}${e??"default"}`}function ad(e){try{let t=globalThis.localStorage?.getItem(yn(e));if(!t)return null;let a=JSON.parse(t);return typeof a?.at!="number"||typeof a?.byMountId!="string"?null:a}catch{return null}}function od(e,t){try{globalThis.localStorage?.setItem(yn(e),JSON.stringify({at:Date.now(),byMountId:t}))}catch{}}function Ao(){return typeof window>"u"?!1:typeof window.openai=="object"}function rd(){return Ao()?window.openai:null}function nd(){return Yu(()=>{let e=document.documentElement,t=document.body,a=e.getAttribute("style"),o=t.getAttribute("style"),r="margin:0!important;padding:0!important;border:0!important;background:transparent!important;background-color:transparent!important;height:0!important;min-height:0!important;max-height:0!important;overflow:hidden!important;";return e.setAttribute("style",r),t.setAttribute("style",r),()=>{a===null?e.removeAttribute("style"):e.setAttribute("style",a),o===null?t.removeAttribute("style"):t.setAttribute("style",o)}},[]),null}function bn(e){let t=Ju(Ot),a=In(e);a.current=e;let o=t?.getToolResponseMetadata?.()??null,r=rd()?.toolResponseMetadata??null,n=o??r,s=n&&typeof n.viewUUID=="string"?n.viewUUID:void 0,i=In("");i.current===""&&(i.current=crypto.randomUUID());let l=Qu((c,d)=>{Ao()&&od(s,i.current);try{Promise.resolve(a.current(c)).catch(p=>{console.error("[unstable_useSendFollowUpWithGhostGuard]",p)})}catch(p){console.error("[unstable_useSendFollowUpWithGhostGuard]",p)}},[s]),u=Zu(()=>{let c=i.current;return function({children:p}){if(!Ao())return Po(Sn,{children:p});let m=ad(s);return m&&m.byMountId!==c&&Date.now()-m.at<td?Po(nd,{}):Po(Sn,{children:p})}},[s]);return{sendFollowUp:l,Guard:u}}f();import{useCallback as ld}from"react";f();import Ut,{useCallback as Tn,useContext as sd,useEffect as vn,useState as Ro,useSyncExternalStore as id}from"react";f();async function kn(){let{detectPlatform:e}=await import("../platform-ZNBJH5XX.js");if(e()==="openai"){let{OpenAIWidgetClient:a}=await import("../openai-client-VRJPAPFR.js");return new a}else{let{MCPAppsWidgetClient:a}=await import("../mcp-apps-client-Z5ICFYSR.js");return new a}}function Pn({children:e,loading:t=null,onError:a}){let[o,r]=Ro(null),[n,s]=Ro(null),[i,l]=Ro(!0);return vn(()=>{let u=!0,c=null;async function d(){try{let p=await kn();await p.connect(),u?(c=p,r(p),l(!1)):p.close()}catch(p){u&&(console.error("error",p),s(p instanceof Error?p:new Error(String(p))),l(!1))}}return d(),()=>{u=!1,c?.close()}},[]),vn(()=>{if(!o)return;let u=c=>{document.documentElement.classList.toggle("dark",c==="dark"),document.documentElement.style.colorScheme=c==="dark"?"dark":"auto"};return u(o.getTheme()),o.onThemeChange(u)},[o]),n&&a?Ut.createElement(Ut.Fragment,null,a(n)):i||!o?Ut.createElement(Ut.Fragment,null,t):Ut.createElement(Ot.Provider,{value:o},e)}function $(e){let t=sd(Ot);if(!t)throw new Error("useWidgetClient must be used within a WidgetProvider");let a=Tn(n=>e==="toolOutput"?t.onToolResult(()=>n()):e==="theme"?t.onThemeChange(()=>n()):e==="displayMode"?t.onDisplayModeChange(()=>n()):e==="safeArea"?t.onSafeAreaChange(()=>n()):e==="maxHeight"?t.onMaxHeightChange(()=>n()):e==="toolResponseMetadata"?t.onToolResponseMetadataChange(()=>n()):e==="widgetState"?t.onWidgetStateChange(()=>n()):()=>{},[t,e]),o=Tn(()=>e==="toolOutput"?t.getToolOutput():e==="theme"?t.getTheme():e==="displayMode"?t.getDisplayMode():e==="locale"?t.getLocale():e==="safeArea"?t.getSafeArea():e==="maxHeight"?t.getMaxHeight():e==="toolResponseMetadata"?t.getToolResponseMetadata():e==="widgetState"?t.getWidgetState():null,[t,e]),r=id(a,o,o);return e?r:t}function An(){let e=$();return ld((t,a)=>e.callTool(t,a),[e])}f();function Rn(){return $("displayMode")}f();f();function Aa(){return $("toolOutput")}function Mn(){return{data:Aa()}}f();import{useSyncExternalStore as ud}from"react";function Fn(){return ud(()=>()=>{},()=>typeof window>"u"?!1:window.__isChatGptApp===!0,()=>!1)}f();function Dn(){return $("locale")}f();function Bn(){return $("maxHeight")}f();import{useCallback as dd}from"react";function En(){let e=$();return dd(t=>e.openExternal(t),[e])}f();import{useCallback as cd}from"react";function _n(){let e=$();return cd(t=>e.requestDisplayMode(t),[e])}f();function Nn(){return $("safeArea")}f();import{useCallback as fd}from"react";function On(){let e=$();return fd((t,a)=>{(async()=>{Ct(a?.modelContext)&&await Promise.resolve(e.updateModelContext(a.modelContext)),await Promise.resolve(e.sendFollowUp(t))})().catch(o=>{console.error("Failed to send follow-up message:",o)})},[e])}f();function Un(){return $("theme")}f();function Hn(){return $("toolResponseMetadata")}f();import{useCallback as pd}from"react";function qn(){let e=$();return pd(async t=>{await Promise.resolve(e.updateModelContext(t))},[e])}f();import{useCallback as md,useEffect as hd,useState as gd}from"react";function Wn(e){let t=$("widgetState"),[a,o]=gd(()=>t??(typeof e=="function"?e():e??null));hd(()=>{o(t)},[t]);let r=md(n=>{o(s=>{let i=typeof n=="function"?n(s):n;return yo()==="openai"&&i!=null&&window.openai?.setWidgetState(i),i})},[]);return[a,r]}f();import{jsx as nt,jsxs as Gn}from"react/jsx-runtime";var wd=()=>Gn("div",{className:"flex flex-col items-center justify-center h-full min-h-[120px] gap-4",children:[Gn("div",{className:"flex gap-2",children:[nt("div",{className:"w-3 h-3 rounded-full bg-gradient-to-r from-blue-400 to-cyan-400 animate-bounce [animation-delay:-0.3s]"}),nt("div",{className:"w-3 h-3 rounded-full bg-gradient-to-r from-cyan-400 to-teal-400 animate-bounce [animation-delay:-0.15s]"}),nt("div",{className:"w-3 h-3 rounded-full bg-gradient-to-r from-teal-400 to-emerald-400 animate-bounce"})]}),nt("p",{className:"text-sm font-medium text-transparent bg-clip-text bg-gradient-to-r from-slate-400 via-slate-200 to-slate-400 bg-[length:200%_100%] animate-[shimmer_1.5s_ease-in-out_infinite]",children:"Loading widget..."}),nt("div",{className:"absolute inset-0 flex items-center justify-center pointer-events-none",children:nt("div",{className:"w-16 h-16 rounded-full border-2 border-blue-400/20 animate-ping"})}),nt("style",{children:`
|
|
61
|
+
`},children:[Y("div",{className:"flex items-center justify-between px-4 py-3",style:{borderBottom:"1px solid rgba(255, 255, 255, 0.06)"},children:[Y("div",{className:"flex items-center gap-2",children:[B(Cn,{className:"w-4 h-4 text-gray-400"}),B("span",{className:"text-sm font-medium text-white",children:"Dev Controls"})]}),Y("div",{className:"flex items-center gap-2",children:[B("span",{className:"text-[10px] font-medium text-gray-500 px-1.5 py-0.5 rounded",style:{background:"rgba(255, 255, 255, 0.04)",border:"1px solid rgba(255, 255, 255, 0.06)"},children:typeof navigator<"u"&&navigator.platform?.includes("Mac")?"\u2318\u21E7D":"Ctrl+Shift+D"}),B("button",{type:"button",onClick:k,className:"p-1 rounded-md text-gray-500 hover:text-gray-300 hover:bg-white/5 transition-colors",children:B(Vu,{className:"w-4 h-4"})})]})]}),Y("div",{className:"p-4 space-y-5 overflow-y-auto",style:{maxHeight:"calc(100vh - 200px)"},children:[Y("div",{children:[B("label",{htmlFor:"display-mode",className:"text-[11px] font-medium uppercase tracking-wider text-gray-500 block mb-2",children:"Display Mode"}),B(Ln,{options:D,value:i,onChange:F})]}),Y("div",{children:[B("label",{htmlFor:"theme",className:"text-[11px] font-medium uppercase tracking-wider text-gray-500 block mb-2",children:"Theme"}),B(Ln,{options:H,value:u,onChange:R})]}),Y("div",{children:[B("label",{htmlFor:"safe-area",className:"text-[11px] font-medium uppercase tracking-wider text-gray-500 block mb-2",children:"Safe Area (Chat Input)"}),Y("button",{type:"button",onClick:()=>p(!c),className:`w-full flex items-center justify-between px-3 py-2.5 rounded-lg text-xs font-medium transition-all duration-150 ${c?"text-emerald-400":"text-gray-400"}`,style:{background:c?"rgba(34, 197, 94, 0.1)":"rgba(255, 255, 255, 0.04)",border:c?"1px solid rgba(34, 197, 94, 0.3)":"1px solid rgba(255, 255, 255, 0.06)"},children:[B("span",{children:"Mock ChatGPT Input Bar"}),B("span",{className:`px-2 py-0.5 rounded text-[10px] font-semibold ${c?"bg-emerald-500/20 text-emerald-400":"bg-gray-500/20 text-gray-500"}`,children:c?"ON":"OFF"})]}),c&&Y("p",{className:"text-[10px] text-gray-500 mt-1.5",children:["bottom: ",Pa,"px"]})]}),Y("div",{children:[B("label",{htmlFor:"widget-props",className:"text-[11px] font-medium uppercase tracking-wider text-gray-500 block mb-2",children:"Widget Props"}),B("textarea",{value:m,onChange:T=>M(T.target.value),onBlur:E,className:"dev-json-editor w-full min-h-[160px] text-xs text-gray-200 p-3 rounded-lg resize-none focus:outline-none transition-colors",style:{background:"rgba(0, 0, 0, 0.3)",border:L?"1px solid rgba(239, 68, 68, 0.5)":"1px solid rgba(255, 255, 255, 0.06)",fontFamily:"'JetBrains Mono', 'SF Mono', 'Fira Code', monospace",lineHeight:1.6},onFocus:T=>{L||(T.target.style.borderColor="rgba(99, 102, 241, 0.5)")},onBlurCapture:T=>{L||(T.target.style.borderColor="rgba(255, 255, 255, 0.06)")},spellCheck:!1}),L&&Y("p",{className:"text-red-400 text-[11px] mt-1.5 flex items-center gap-1",children:[B("svg",{"aria-hidden":"true","aria-label":"Error",className:"w-3 h-3",viewBox:"0 0 16 16",fill:"currentColor",children:B("path",{d:"M8 1.5a6.5 6.5 0 100 13 6.5 6.5 0 000-13zM7 4.5h2v4H7v-4zm0 5h2v2H7v-2z"})}),L]})]}),Y("button",{type:"button",onClick:v,className:"w-full flex items-center justify-center gap-2 px-3 py-2 rounded-lg text-xs font-medium text-gray-400 transition-all duration-150 hover:text-gray-200",style:{background:"rgba(255, 255, 255, 0.04)",border:"1px solid rgba(255, 255, 255, 0.06)"},onMouseEnter:T=>{T.currentTarget.style.background="rgba(255, 255, 255, 0.08)",T.currentTarget.style.borderColor="rgba(255, 255, 255, 0.1)"},onMouseLeave:T=>{T.currentTarget.style.background="rgba(255, 255, 255, 0.04)",T.currentTarget.style.borderColor="rgba(255, 255, 255, 0.06)"},children:[B(Yu,{className:"w-3.5 h-3.5"}),"Reset to Defaults"]})]})]})]}),c&&Y("div",{className:"fixed bottom-0 left-0 right-0 z-[9998] flex items-center justify-center pointer-events-none",style:{height:`${Pa}px`,background:"linear-gradient(to top, #1a1a1a 0%, #1a1a1a 80%, transparent 100%)"},children:[Y("div",{className:"w-full max-w-2xl mx-4 px-4 py-3 rounded-2xl bg-[#2f2f2f] border border-[#424242] flex items-center gap-3",children:[B("div",{className:"w-8 h-8 rounded-full bg-[#424242] flex items-center justify-center",children:B("svg",{"aria-hidden":"true",className:"w-4 h-4 text-gray-400",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:B("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M12 4v16m8-8H4"})})}),B("div",{className:"flex-1 text-gray-400 text-sm",children:"Ask me anything..."}),B("div",{className:"w-8 h-8 rounded-full bg-[#424242] flex items-center justify-center",children:B("svg",{"aria-hidden":"true",className:"w-4 h-4 text-gray-400",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:B("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M19 11a7 7 0 01-7 7m0 0a7 7 0 01-7-7m7 7v4m0 0H8m4 0h4m-4-8a3 3 0 01-3-3V5a3 3 0 116 0v6a3 3 0 01-3 3z"})})})]}),Y("div",{className:"absolute bottom-1 text-[10px] text-gray-600 font-mono",children:["Mock SafeArea: bottom=",Pa,"px"]})]})]})}f();f();import{useCallback as od,useContext as rd,useLayoutEffect as nd,useMemo as sd,useRef as Sn}from"react";f();import{createContext as ad}from"react";var Ot=ad(null);import{Fragment as yn,jsx as Ao}from"react/jsx-runtime";var id="waniwani:send-follow-up:advanced:",ld=1e4;function bn(e){return`${id}${e??"default"}`}function ud(e){try{let t=globalThis.localStorage?.getItem(bn(e));if(!t)return null;let a=JSON.parse(t);return typeof a?.at!="number"||typeof a?.byMountId!="string"?null:a}catch{return null}}function dd(e,t){try{globalThis.localStorage?.setItem(bn(e),JSON.stringify({at:Date.now(),byMountId:t}))}catch{}}function Ro(){return typeof window>"u"?!1:typeof window.openai=="object"}function cd(){return Ro()?window.openai:null}function fd(){return nd(()=>{let e=document.documentElement,t=document.body,a=e.getAttribute("style"),o=t.getAttribute("style"),r="margin:0!important;padding:0!important;border:0!important;background:transparent!important;background-color:transparent!important;height:0!important;min-height:0!important;max-height:0!important;overflow:hidden!important;";return e.setAttribute("style",r),t.setAttribute("style",r),()=>{a===null?e.removeAttribute("style"):e.setAttribute("style",a),o===null?t.removeAttribute("style"):t.setAttribute("style",o)}},[]),null}function kn(e){let t=rd(Ot),a=Sn(e);a.current=e;let o=t?.getToolResponseMetadata?.()??null,r=cd()?.toolResponseMetadata??null,n=o??r,s=n&&typeof n.viewUUID=="string"?n.viewUUID:void 0,i=Sn("");i.current===""&&(i.current=crypto.randomUUID());let l=od((d,c)=>{Ro()&&dd(s,i.current);try{Promise.resolve(a.current(d)).catch(p=>{console.error("[unstable_useSendFollowUpWithGhostGuard]",p)})}catch(p){console.error("[unstable_useSendFollowUpWithGhostGuard]",p)}},[s]),u=sd(()=>{let d=i.current;return function({children:p}){if(!Ro())return Ao(yn,{children:p});let m=ud(s);return m&&m.byMountId!==d&&Date.now()-m.at<ld?Ao(fd,{}):Ao(yn,{children:p})}},[s]);return{sendFollowUp:l,Guard:u}}f();import{useCallback as hd}from"react";f();import Ut,{useCallback as vn,useContext as pd,useEffect as Pn,useState as Mo,useSyncExternalStore as md}from"react";f();async function Tn(){let{detectPlatform:e}=await import("../platform-ZNBJH5XX.js");if(e()==="openai"){let{OpenAIWidgetClient:a}=await import("../openai-client-VRJPAPFR.js");return new a}else{let{MCPAppsWidgetClient:a}=await import("../mcp-apps-client-Z5ICFYSR.js");return new a}}function An({children:e,loading:t=null,onError:a}){let[o,r]=Mo(null),[n,s]=Mo(null),[i,l]=Mo(!0);return Pn(()=>{let u=!0,d=null;async function c(){try{let p=await Tn();await p.connect(),u?(d=p,r(p),l(!1)):p.close()}catch(p){u&&(console.error("error",p),s(p instanceof Error?p:new Error(String(p))),l(!1))}}return c(),()=>{u=!1,d?.close()}},[]),Pn(()=>{if(!o)return;let u=d=>{document.documentElement.classList.toggle("dark",d==="dark"),document.documentElement.style.colorScheme=d==="dark"?"dark":"auto"};return u(o.getTheme()),o.onThemeChange(u)},[o]),n&&a?Ut.createElement(Ut.Fragment,null,a(n)):i||!o?Ut.createElement(Ut.Fragment,null,t):Ut.createElement(Ot.Provider,{value:o},e)}function $(e){let t=pd(Ot);if(!t)throw new Error("useWidgetClient must be used within a WidgetProvider");let a=vn(n=>e==="toolOutput"?t.onToolResult(()=>n()):e==="theme"?t.onThemeChange(()=>n()):e==="displayMode"?t.onDisplayModeChange(()=>n()):e==="safeArea"?t.onSafeAreaChange(()=>n()):e==="maxHeight"?t.onMaxHeightChange(()=>n()):e==="toolResponseMetadata"?t.onToolResponseMetadataChange(()=>n()):e==="widgetState"?t.onWidgetStateChange(()=>n()):()=>{},[t,e]),o=vn(()=>e==="toolOutput"?t.getToolOutput():e==="theme"?t.getTheme():e==="displayMode"?t.getDisplayMode():e==="locale"?t.getLocale():e==="safeArea"?t.getSafeArea():e==="maxHeight"?t.getMaxHeight():e==="toolResponseMetadata"?t.getToolResponseMetadata():e==="widgetState"?t.getWidgetState():null,[t,e]),r=md(a,o,o);return e?r:t}function Rn(){let e=$();return hd((t,a)=>e.callTool(t,a),[e])}f();function Mn(){return $("displayMode")}f();f();function Aa(){return $("toolOutput")}function Fn(){return{data:Aa()}}f();import{useSyncExternalStore as gd}from"react";function Dn(){return gd(()=>()=>{},()=>typeof window>"u"?!1:window.__isChatGptApp===!0,()=>!1)}f();function Bn(){return $("locale")}f();function En(){return $("maxHeight")}f();import{useCallback as wd}from"react";function _n(){let e=$();return wd(t=>e.openExternal(t),[e])}f();import{useCallback as xd}from"react";function Nn(){let e=$();return xd(t=>e.requestDisplayMode(t),[e])}f();function On(){return $("safeArea")}f();import{useCallback as Cd}from"react";function Un(){let e=$();return Cd((t,a)=>{(async()=>{Ct(a?.modelContext)&&await Promise.resolve(e.updateModelContext(a.modelContext)),await Promise.resolve(e.sendFollowUp(t))})().catch(o=>{console.error("Failed to send follow-up message:",o)})},[e])}f();function Hn(){return $("theme")}f();function qn(){return $("toolResponseMetadata")}f();import{useCallback as Ld}from"react";function Wn(){let e=$();return Ld(async t=>{await Promise.resolve(e.updateModelContext(t))},[e])}f();import{useCallback as Id,useEffect as Sd,useState as yd}from"react";function Gn(e){let t=$("widgetState"),[a,o]=yd(()=>t??(typeof e=="function"?e():e??null));Sd(()=>{o(t)},[t]);let r=Id(n=>{o(s=>{let i=typeof n=="function"?n(s):n;return bo()==="openai"&&i!=null&&window.openai?.setWidgetState(i),i})},[]);return[a,r]}f();import{jsx as st,jsxs as jn}from"react/jsx-runtime";var bd=()=>jn("div",{className:"flex flex-col items-center justify-center h-full min-h-[120px] gap-4",children:[jn("div",{className:"flex gap-2",children:[st("div",{className:"w-3 h-3 rounded-full bg-gradient-to-r from-blue-400 to-cyan-400 animate-bounce [animation-delay:-0.3s]"}),st("div",{className:"w-3 h-3 rounded-full bg-gradient-to-r from-cyan-400 to-teal-400 animate-bounce [animation-delay:-0.15s]"}),st("div",{className:"w-3 h-3 rounded-full bg-gradient-to-r from-teal-400 to-emerald-400 animate-bounce"})]}),st("p",{className:"text-sm font-medium text-transparent bg-clip-text bg-gradient-to-r from-slate-400 via-slate-200 to-slate-400 bg-[length:200%_100%] animate-[shimmer_1.5s_ease-in-out_infinite]",children:"Loading widget..."}),st("div",{className:"absolute inset-0 flex items-center justify-center pointer-events-none",children:st("div",{className:"w-16 h-16 rounded-full border-2 border-blue-400/20 animate-ping"})}),st("style",{children:`
|
|
62
62
|
@keyframes shimmer {
|
|
63
63
|
0% { background-position: 200% 0; }
|
|
64
64
|
100% { background-position: -200% 0; }
|
|
65
65
|
}
|
|
66
|
-
`})]});f();f();f();var
|
|
66
|
+
`})]});f();f();f();var kd={debug:0,warn:1,error:2,none:3};function Td(){let e=process.env.WANIWANI_LOG_LEVEL;return e&&e in kd?e:process.env.WANIWANI_DEBUG?"debug":"none"}function We(e,t){return t??Td()==="debug"?(...o)=>console.log(`[waniwani:${e}]`,...o):()=>{}}f();function zn(e){if(e===!0)return{};if(!(e===!1||e===void 0))return e}f();function Vn(){return function(t){return t.headers.set("Access-Control-Allow-Origin","*"),t.headers.set("Access-Control-Allow-Methods","GET, POST, PATCH, OPTIONS"),t.headers.set("Access-Control-Allow-Headers","Content-Type, Authorization, X-Session-Id, X-Client-User-Agent"),t.headers.set("Access-Control-Expose-Headers","X-Session-Id"),t}}function $n(e){return function(a,o){return e(new Response(JSON.stringify(a),{headers:{"Content-Type":"application/json"},status:o}))}}f();f();var Pe=class extends Error{constructor(a,o){super(a);this.status=o;this.name="WaniWaniError"}};f();function Xn(e){let t=e.headers,a=t.get("x-vercel-ip-city")??t.get("cf-ipcity")??void 0,o=a?vd(a):void 0,r=t.get("x-vercel-ip-country")??t.get("cf-ipcountry")??void 0,n=t.get("x-vercel-ip-country-region")??void 0,s=t.get("x-vercel-ip-latitude")??t.get("cf-iplatitude")??void 0,i=t.get("x-vercel-ip-longitude")??t.get("cf-iplongitude")??void 0,l=t.get("x-vercel-ip-timezone")??t.get("cf-iptimezone")??void 0,u=t.get("x-real-ip")??t.get("x-forwarded-for")?.split(",")[0]?.trim()??t.get("cf-connecting-ip")??void 0;return{city:o,country:r,countryRegion:n,latitude:s,longitude:i,timezone:l,ip:u}}function vd(e){try{return decodeURIComponent(e)}catch{return e}}f();function Kn(e,t){if(!Ct(t))return e;let a=tn(t);return a?[e,a].filter(Boolean).join(`
|
|
67
67
|
|
|
68
|
-
`):e}function Kn(e){let{apiKey:t,apiUrl:a,source:o,systemPrompt:r,maxSteps:n,beforeRequest:s,mcpServerUrl:i,resolveConfig:l,debug:u,webSearch:c}=e,d=He("chat",u);return async function(m){d("\u2192 POST",m.url);try{let h=await m.json(),I=h.messages??[],x=h.sessionId,S=h.modelContext,L=r,C=typeof h.extra=="object"&&h.extra!==null&&!Array.isArray(h.extra)?h.extra:void 0,k=h.visitorContext??null,T=$n(m),P={geo:T,client:k};if(d("body parsed \u2014 messages:",I.length,"sessionId:",x??"(none)","geo:",JSON.stringify(T)),s){d("running beforeRequest hook");try{let D=await s({messages:I,sessionId:x,modelContext:S,request:m,visitor:P});D&&(D.messages&&(I=D.messages),D.systemPrompt!==void 0&&(L=D.systemPrompt),D.sessionId!==void 0&&(x=D.sessionId),D.modelContext!==void 0&&(S=D.modelContext)),d("beforeRequest hook done \u2014 messages:",I.length,"sessionId:",x??"(none)")}catch(D){console.error("[waniwani:chat] beforeRequest hook error:",D);let q=D instanceof Pe?D.status:400,y=D instanceof Error?D.message:"Request rejected";return d("\u2190 returning",q,"from hook error"),Response.json({error:y},{status:q})}}let M=i??(await l()).mcpServerUrl;d("mcpServerUrl:",M),L=Xn(L,S);let A=`${a}/api/mcp/chat`;d("forwarding to",A);let E=m.headers.get("user-agent"),F=await fetch(A,{method:"POST",headers:{"Content-Type":"application/json","X-WaniWani-Stream-Protocol":"2",...t?{Authorization:`Bearer ${t}`}:{},...E?{"X-Client-User-Agent":E}:{}},body:JSON.stringify({messages:I,mcpServerUrl:M,sessionId:x,source:o,systemPrompt:L,maxSteps:n,visitor:P,webSearch:c,...C&&{extra:C}}),signal:m.signal});if(d("upstream response status:",F.status),!F.ok){let D=await F.text().catch(()=>"");return d("\u2190 returning",F.status,"upstream error:",D),new Response(D,{status:F.status,headers:{"Content-Type":F.headers.get("Content-Type")??"application/json"}})}let _=new Headers({"Content-Type":F.headers.get("Content-Type")??"text/event-stream"}),v=F.headers.get("x-session-id");return v&&_.set("x-session-id",v),d("\u2190 streaming response",F.status,"body null?",F.body===null),new Response(F.body,{status:F.status,headers:_})}catch(h){console.error("[waniwani:chat] handler error:",h);let I=h instanceof Error?h.message:"Unknown error occurred",x=h instanceof Pe?h.status:500;return d("\u2190 returning",x,"from caught error"),Response.json({error:I},{status:x})}}}f();function Qn(e){let{mcpServerUrl:t,resolveConfig:a,debug:o}=e,r=He("resource",o);return async function(s){r("\u2192 GET",s.toString());try{let i=s.searchParams.get("uri");if(r("uri:",i??"(missing)"),!i)return r("\u2190 400 missing uri"),Response.json({error:"Missing uri query parameter"},{status:400});let l=t??(await a()).mcpServerUrl;r("mcpServerUrl:",l);let u,c;try{[{createMCPClient:u},{StreamableHTTPClientTransport:c}]=await Promise.all([import("@ai-sdk/mcp"),import("@modelcontextprotocol/sdk/client/streamableHttp.js")]),r("MCP deps loaded")}catch(p){return console.error("[waniwani:resource] MCP deps import failed:",p),Response.json({error:"MCP resource handler requires @ai-sdk/mcp and @modelcontextprotocol/sdk. Install them to enable resource serving."},{status:501})}r("creating MCP client for",l);let d=await u({transport:new c(new URL(l))});try{r("reading resource:",i);let p=await d.readResource({uri:i});r("resource contents count:",p.contents.length);let m=p.contents[0];if(!m)return r("\u2190 404 resource not found"),Response.json({error:"Resource not found"},{status:404});let h;return"text"in m&&typeof m.text=="string"?h=m.text:"blob"in m&&typeof m.blob=="string"&&(h=atob(m.blob)),h?(r("\u2190 200 HTML length:",h.length),new Response(h,{headers:{"Content-Type":"text/html","Cache-Control":"private, max-age=300"}})):(r("\u2190 404 resource has no content, keys:",Object.keys(m)),Response.json({error:"Resource has no content"},{status:404}))}finally{await d.close(),r("MCP client closed")}}catch(i){console.error("[waniwani:resource] handler error:",i);let l=i instanceof Error?i.message:"Unknown error occurred",u=i instanceof Pe?i.status:500;return r("\u2190 returning",u,"from caught error"),Response.json({error:l},{status:u})}}}f();function Jn(e){let{mcpServerUrl:t,resolveConfig:a,debug:o,source:r}=e,n=He("tool",o);return async function(i){n("\u2192 POST",i.url);try{let l=await i.json(),{name:u,arguments:c}=l,d=i.headers.get("x-session-id")?.trim();if(!u||typeof u!="string")return n("\u2190 400 missing tool name"),Response.json({error:"Missing tool name"},{status:400});n("tool:",u,"args:",JSON.stringify(c),"sessionId:",d||"(none)");let p=t??(await a()).mcpServerUrl;n("mcpServerUrl:",p);let m,h;try{[{Client:m},{StreamableHTTPClientTransport:h}]=await Promise.all([import("@modelcontextprotocol/sdk/client/index.js"),import("@modelcontextprotocol/sdk/client/streamableHttp.js")]),n("MCP deps loaded")}catch(S){return console.error("[waniwani:tool] MCP deps import failed:",S),Response.json({error:"MCP tool handler requires @modelcontextprotocol/sdk. Install it to enable tool calls."},{status:501})}n("creating MCP client for",p);let I=new h(new URL(p)),x=new m({name:"waniwani-tool-caller",version:"1.0.0"});await x.connect(I);try{n("calling tool:",u);let S={};d&&(S["waniwani/sessionId"]=d),r&&(S["waniwani/source"]=r);let L=await x.callTool({name:u,arguments:c??{},...Object.keys(S).length>0?{_meta:S}:{}});return n("tool result received"),Response.json({content:L.content,structuredContent:L.structuredContent,_meta:L._meta,isError:L.isError})}finally{await x.close(),n("MCP client closed")}}catch(l){console.error("[waniwani:tool] handler error:",l);let u=l instanceof Error?l.message:"Unknown error occurred",c=l instanceof Pe?l.status:500;return n("\u2190 returning",c,"from caught error"),Response.json({error:u},{status:c})}}}f();function Yn(e){let{mcpServerUrl:t,resolveConfig:a,debug:o}=e,r=He("tools-list",o);return async function(){r("\u2192 GET tools/list");try{let s=t??(await a()).mcpServerUrl;r("mcpServerUrl:",s);let i,l;try{[{createMCPClient:i},{StreamableHTTPClientTransport:l}]=await Promise.all([import("@ai-sdk/mcp"),import("@modelcontextprotocol/sdk/client/streamableHttp.js")]),r("MCP deps loaded")}catch(c){return console.error("[waniwani:tools-list] MCP deps import failed:",c),Response.json({error:"MCP tools list handler requires @ai-sdk/mcp and @modelcontextprotocol/sdk. Install them to enable tool discovery."},{status:501})}r("creating MCP client for",s);let u=await i({transport:new l(new URL(s))});try{r("listing tools");let c=await u.listTools();r("tools count:",c.tools.length);let d={tools:c.tools.map(p=>({name:p.name,...p.title!==void 0&&{title:p.title},...p.description!==void 0&&{description:p.description},...p.inputSchema!==void 0&&{inputSchema:p.inputSchema},...p.outputSchema!==void 0&&{outputSchema:p.outputSchema},...p.annotations!==void 0&&{annotations:p.annotations},...p._meta!==void 0&&{_meta:p._meta}})),...c.nextCursor!==void 0&&{nextCursor:c.nextCursor}};return r("\u2190 200"),Response.json(d,{headers:{"Cache-Control":"private, max-age=60"}})}finally{await u.close(),r("MCP client closed")}}catch(s){console.error("[waniwani:tools-list] handler error:",s);let i=s instanceof Error?s.message:"Unknown error occurred",l=s instanceof Pe?s.status:500;return r("\u2190 returning",l,"from caught error"),Response.json({error:i},{status:l})}}}f();var Id=300*1e3;function Zn(e,t){let a=null,o=null;return async function(){if(a&&Date.now()<a.expiresAt)return a.config;if(o)return o;o=(async()=>{if(!t)throw new Pe("WANIWANI_API_KEY is required for createChatHandler",401);let n=await fetch(`${e}/api/mcp/environments/config`,{method:"GET",headers:{Authorization:`Bearer ${t}`,"Content-Type":"application/json"}});if(!n.ok){let i=await n.text().catch(()=>"");throw new Pe(`Failed to resolve MCP environment config: ${n.status} ${i}`,n.status)}let s=await n.json();return a={config:s,expiresAt:Date.now()+Id},s})();try{return await o}finally{o=null}}}var Sd="https://app.waniwani.ai";function es(e={}){let{apiKey:t=process.env.WANIWANI_API_KEY,apiUrl:a=Sd,source:o,systemPrompt:r,maxSteps:n=5,beforeRequest:s,mcpServerUrl:i,debug:l=!1,webSearch:u}=e,c=He("router",l),d=zn(),p=Vn(d),m=Zn(a,t),h=Kn({apiKey:t,apiUrl:a,source:o,systemPrompt:r,maxSteps:n,beforeRequest:s,mcpServerUrl:i,resolveConfig:m,debug:l,webSearch:jn(u)}),I=Qn({mcpServerUrl:i,resolveConfig:m,debug:l}),x=Yn({mcpServerUrl:i,resolveConfig:m,debug:l}),S=Jn({mcpServerUrl:i,resolveConfig:m,debug:l,source:o}),L=process.env.WANIWANI_EVAL==="1";async function C(M){c("\u2192 GET",M.url);try{let A=new URL(M.url),F=A.pathname.replace(/\/$/,"").split("/").filter(Boolean).at(-1);if(c("pathname:",A.pathname,"subRoute:",F),L&&F==="scenarios"){c("dispatching to scenarios handler (proxy to app API)");try{let v=await(await fetch(`${a}/api/mcp/scenarios`,{headers:{...t?{Authorization:`Bearer ${t}`}:{}}})).json();return p(v.data??v,200)}catch{return p([],200)}}if(F==="resource"){c("dispatching to resource handler");let _=await I(A);return c("\u2190 resource handler returned",_.status),d(_)}if(F==="config")return c("dispatching to config handler"),p({debug:l,eval:L},200);if(F==="tools"){c("dispatching to tools-list handler");let _=await x();return c("\u2190 tools-list handler returned",_.status),d(_)}return c("\u2190 404 no matching sub-route for",F),p({error:"Not found"},404)}catch(A){console.error("[waniwani:router] GET handler error:",A);let E=A instanceof Error?A.message:"Unknown error occurred";return c("\u2190 500 from caught error"),p({error:E},500)}}async function k(M){c("\u2192 POST",M.url);try{let A=new URL(M.url),F=A.pathname.replace(/\/$/,"").split("/").filter(Boolean).at(-1);if(c("pathname:",A.pathname,"subRoute:",F),L&&F==="scenarios"){c("dispatching to save-scenario handler (proxy to app API)");try{let v=await M.json(),D=await fetch(`${a}/api/mcp/scenarios`,{method:"POST",headers:{"Content-Type":"application/json",...t?{Authorization:`Bearer ${t}`}:{}},body:JSON.stringify(v)}),q=await D.json();return D.ok?p({ok:!0,scenario:q.data},200):p({error:q.message??"Failed to save scenario"},D.status)}catch(v){let D=v instanceof Error?v.message:"Failed to save scenario";return p({error:D},400)}}if(F==="tool"){c("dispatching to tool handler");let v=await S(M);return c("\u2190 tool handler returned",v.status),d(v)}c("dispatching to chat handler");let _=await h(M);return d(_)}catch(A){console.error("[waniwani:router] POST handler error:",A);let E=A instanceof Error?A.message:"Unknown error occurred";return c("\u2190 500 from caught error"),p({error:E},500)}}async function T(M){c("\u2192 PATCH",M.url);try{let A=new URL(M.url),E=A.pathname.replace(/\/$/,"").split("/").filter(Boolean),F=E.at(-1),_=E.at(-2);if(c("pathname:",A.pathname,"subRoute:",_,"id:",F),L&&_==="scenarios"&&F){c("dispatching to update-scenario handler (proxy to app API)");try{let v=await M.json(),D=await fetch(`${a}/api/mcp/scenarios/${F}`,{method:"PATCH",headers:{"Content-Type":"application/json",...t?{Authorization:`Bearer ${t}`}:{}},body:JSON.stringify(v)}),q=await D.json();return D.ok?p({ok:!0,scenario:q.data},200):p({error:q.message??"Failed to update scenario"},D.status)}catch(v){let D=v instanceof Error?v.message:"Failed to update scenario";return p({error:D},400)}}return c("\u2190 404 no matching sub-route for PATCH",_),p({error:"Not found"},404)}catch(A){console.error("[waniwani:router] PATCH handler error:",A);let E=A instanceof Error?A.message:"Unknown error occurred";return c("\u2190 500 from caught error"),p({error:E},500)}}function P(){return d(new Response(null,{status:204}))}return{handleChat:h,handleResource:I,handleTool:S,routeGet:C,routePost:k,routePatch:T,handleOptions:P}}var ts=!1;function HC(e,t){!ts&&process.env.NODE_ENV!=="test"&&(console.warn("[waniwani-sdk] toNextJsHandler is deprecated; switch to toExpressJsHandler from @waniwani/sdk/express-js. It will be removed in a follow-up release."),ts=!0);let{apiKey:a,apiUrl:o}=e._config,r=t?.debug??process.env.WANIWANI_DEBUG==="1",n=es({...t?.chat,apiKey:a,apiUrl:o,source:t?.source,debug:r});return{POST:n.routePost,GET:n.routeGet,PATCH:n.routePatch,OPTIONS:()=>n.handleOptions()}}f();import{forwardRef as hg,useCallback as Vr,useEffect as gg,useImperativeHandle as wg,useRef as Cu,useState as Lu}from"react";f();f();f();import{forwardRef as bd,createElement as kd}from"react";f();var Ra=(...e)=>e.filter((t,a,o)=>!!t&&t.trim()!==""&&o.indexOf(t)===a).join(" ").trim();f();var as=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();f();f();var os=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(t,a,o)=>o?o.toUpperCase():a.toLowerCase());var Mo=e=>{let t=os(e);return t.charAt(0).toUpperCase()+t.slice(1)};f();import{forwardRef as yd,createElement as ss}from"react";f();var rs={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"};f();var ns=e=>{for(let t in e)if(t.startsWith("aria-")||t==="role"||t==="title")return!0;return!1};var is=yd(({color:e="currentColor",size:t=24,strokeWidth:a=2,absoluteStrokeWidth:o,className:r="",children:n,iconNode:s,...i},l)=>ss("svg",{ref:l,...rs,width:t,height:t,stroke:e,strokeWidth:o?Number(a)*24/Number(t):a,className:Ra("lucide",r),...!n&&!ns(i)&&{"aria-hidden":"true"},...i},[...s.map(([u,c])=>ss(u,c)),...Array.isArray(n)?n:[n]]));var j=(e,t)=>{let a=bd(({className:o,...r},n)=>kd(is,{ref:n,iconNode:t,className:Ra(`lucide-${as(Mo(e))}`,`lucide-${e}`,o),...r}));return a.displayName=Mo(e),a};f();var Td=[["path",{d:"M12 5v14",key:"s699le"}],["path",{d:"m19 12-7 7-7-7",key:"1idqje"}]],Ht=j("arrow-down",Td);f();var vd=[["path",{d:"m5 12 7-7 7 7",key:"hav0vg"}],["path",{d:"M12 19V5",key:"x0mq9r"}]],qt=j("arrow-up",vd);f();var Pd=[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]],Wt=j("check",Pd);f();var Ad=[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]],Qe=j("chevron-down",Ad);f();var Rd=[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]],Gt=j("chevron-right",Rd);f();var Md=[["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"}]],jt=j("clipboard-copy",Md);f();var Fd=[["path",{d:"M12 6v6l4 2",key:"mmk7yg"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]],Ve=j("clock",Fd);f();var Dd=[["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"}]],zt=j("file",Dd);f();var Bd=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20",key:"13o1zl"}],["path",{d:"M2 12h20",key:"9i4pu4"}]],Vt=j("globe",Bd);f();var Ed=[["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"}]],$t=j("loader",Ed);f();var _d=[["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"}]],Xt=j("paperclip",_d);f();var Nd=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}]],Kt=j("square",Nd);f();var Od=[["path",{d:"M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.106-3.105c.32-.322.863-.22.983.218a6 6 0 0 1-8.259 7.057l-7.91 7.91a1 1 0 0 1-2.999-3l7.91-7.91a6 6 0 0 1 7.057-8.259c.438.12.54.662.219.984z",key:"1ngwbx"}]],st=j("wrench",Od);f();var Ud=[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]],it=j("x",Ud);f();var Hd=[["path",{d:"M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z",key:"1xq2db"}]],Qt=j("zap",Hd);import{useCallback as oc}from"react";f();import{useCallback as Je,useMemo as qd,useRef as Wd,useState as Fo}from"react";var Gd={damping:.7,stiffness:.05,mass:1.25},jd=70,zd=1e3/60,Vd=350,Ma=!1;globalThis.document?.addEventListener("mousedown",()=>{Ma=!0});globalThis.document?.addEventListener("mouseup",()=>{Ma=!1});globalThis.document?.addEventListener("click",()=>{Ma=!1});var us=(e={})=>{let[t,a]=Fo(!1),[o,r]=Fo(e.initial!==!1),[n,s]=Fo(!1),i=Wd(null);i.current=e;let l=Je(()=>{if(!Ma)return!1;let L=window.getSelection();if(!L||!L.rangeCount)return!1;let C=L.getRangeAt(0);return C.commonAncestorContainer.contains(x.current)||x.current?.contains(C.commonAncestorContainer)},[]),u=Je(L=>{d.isAtBottom=L,r(L)},[]),c=Je(L=>{d.escapedFromLock=L,a(L)},[]),d=qd(()=>{let L;return{escapedFromLock:t,isAtBottom:o,resizeDifference:0,accumulated:0,velocity:0,listeners:new Set,get scrollTop(){return x.current?.scrollTop??0},set scrollTop(C){x.current&&(x.current.scrollTop=C,d.ignoreScrollToTop=x.current.scrollTop)},get targetScrollTop(){return!x.current||!S.current?0:x.current.scrollHeight-1-x.current.clientHeight},get calculatedTargetScrollTop(){if(!x.current||!S.current)return 0;let{targetScrollTop:C}=this;if(!e.targetScrollTop)return C;if(L?.targetScrollTop===C)return L.calculatedScrollTop;let k=Math.max(Math.min(e.targetScrollTop(C,{scrollElement:x.current,contentElement:S.current}),C),0);return L={targetScrollTop:C,calculatedScrollTop:k},requestAnimationFrame(()=>{L=void 0}),k},get scrollDifference(){return this.calculatedTargetScrollTop-this.scrollTop},get isNearBottom(){return this.scrollDifference<=jd}}},[]),p=Je((L={})=>{typeof L=="string"&&(L={animation:L}),L.preserveScrollPosition||u(!0);let C=Date.now()+(Number(L.wait)||0),k=Bo(i.current,L.animation),{ignoreEscapes:T=!1}=L,P,M=d.calculatedTargetScrollTop;L.duration instanceof Promise?L.duration.finally(()=>{P=Date.now()}):P=C+(L.duration??0);let A=async()=>{let E=new Promise(requestAnimationFrame).then(()=>{if(!d.isAtBottom)return d.animation=void 0,!1;let{scrollTop:F}=d,_=performance.now(),v=(_-(d.lastTick??_))/zd;if(d.animation||(d.animation={behavior:k,promise:E,ignoreEscapes:T}),d.animation.behavior===k&&(d.lastTick=_),l()||C>Date.now())return A();if(F<Math.min(M,d.calculatedTargetScrollTop)){if(d.animation?.behavior===k){if(k==="instant")return d.scrollTop=d.calculatedTargetScrollTop,A();d.velocity=(k.damping*d.velocity+k.stiffness*d.scrollDifference)/k.mass,d.accumulated+=d.velocity*v,d.scrollTop+=d.accumulated,d.scrollTop!==F&&(d.accumulated=0)}return A()}return P>Date.now()?(M=d.calculatedTargetScrollTop,A()):(d.animation=void 0,d.scrollTop<d.calculatedTargetScrollTop?p({animation:Bo(i.current,i.current.resize),ignoreEscapes:T,duration:Math.max(0,P-Date.now())||void 0}):d.isAtBottom)});return E.then(F=>(requestAnimationFrame(()=>{d.animation||(d.lastTick=void 0,d.velocity=0)}),F))};return L.wait!==!0&&(d.animation=void 0),d.animation?.behavior===k?d.animation.promise:A()},[u,l,d]),m=Je(()=>{c(!0),u(!1)},[c,u]),h=Je(({target:L})=>{if(L!==x.current)return;let{scrollTop:C,ignoreScrollToTop:k}=d,{lastScrollTop:T=C}=d;d.lastScrollTop=C,d.ignoreScrollToTop=void 0,k&&k>C&&(T=k),s(d.isNearBottom),setTimeout(()=>{if(d.resizeDifference||C===k)return;if(l()){c(!0),u(!1);return}let P=C>T,M=C<T;if(d.animation?.ignoreEscapes){d.scrollTop=T;return}M&&(c(!0),u(!1)),P&&c(!1),!d.escapedFromLock&&d.isNearBottom&&u(!0)},1)},[c,u,l,d]),I=Je(({target:L,deltaY:C})=>{let k=L;for(;!["scroll","auto"].includes(getComputedStyle(k).overflow);){if(!k.parentElement)return;k=k.parentElement}k===x.current&&C<0&&x.current.scrollHeight>x.current.clientHeight&&!d.animation?.ignoreEscapes&&(c(!0),u(!1))},[c,u,d]),x=ls(L=>{x.current?.removeEventListener("scroll",h),x.current?.removeEventListener("wheel",I),L?.addEventListener("scroll",h,{passive:!0}),L?.addEventListener("wheel",I,{passive:!0})},[]),S=ls(L=>{if(d.resizeObserver?.disconnect(),!L)return;let C;d.resizeObserver=new ResizeObserver(([k])=>{let{height:T}=k.contentRect,P=T-(C??T);if(d.resizeDifference=P,d.scrollTop>d.targetScrollTop&&(d.scrollTop=d.targetScrollTop),s(d.isNearBottom),P>=0){let M=Bo(i.current,C?i.current.resize:i.current.initial);p({animation:M,wait:!0,preserveScrollPosition:!0,duration:M==="instant"?void 0:Vd})}else d.isNearBottom&&(c(!1),u(!0));C=T,requestAnimationFrame(()=>{setTimeout(()=>{d.resizeDifference===P&&(d.resizeDifference=0)},1)})}),d.resizeObserver?.observe(L)},[]);return{contentRef:S,scrollRef:x,scrollToBottom:p,stopScroll:m,isAtBottom:o||n,isNearBottom:n,escapedFromLock:t,state:d}};function ls(e,t){let a=Je(o=>(a.current=o,e(o)),t);return a}var Do=new Map;function Bo(...e){let t={...Gd},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 Do.has(o)||Do.set(o,Object.freeze(t)),a?"instant":Do.get(o)}f();import*as lt from"react";import{createContext as $d,useContext as Xd,useEffect as Kd,useImperativeHandle as Qd,useLayoutEffect as Jd,useMemo as Yd,useRef as Zd}from"react";var ds=$d(null),ec=typeof window<"u"?Jd:Kd;function Jt({instance:e,children:t,resize:a,initial:o,mass:r,damping:n,stiffness:s,targetScrollTop:i,contextRef:l,...u}){let c=Zd(null),d=lt.useCallback((T,P)=>(k?.targetScrollTop??i)?.(T,P)??T,[i]),p=us({mass:r,damping:n,stiffness:s,resize:a,initial:o,targetScrollTop:d}),{scrollRef:m,contentRef:h,scrollToBottom:I,stopScroll:x,isAtBottom:S,escapedFromLock:L,state:C}=e??p,k=Yd(()=>({scrollToBottom:I,stopScroll:x,scrollRef:m,isAtBottom:S,escapedFromLock:L,contentRef:h,state:C,get targetScrollTop(){return c.current},set targetScrollTop(T){c.current=T}}),[I,S,h,m,x,L,C]);return Qd(l,()=>k,[k]),ec(()=>{m.current&&getComputedStyle(m.current).overflow==="visible"&&(m.current.style.overflow="auto")},[]),lt.createElement(ds.Provider,{value:k},lt.createElement("div",{...u},typeof t=="function"?t(k):t))}(function(e){function t({children:a,scrollClassName:o,...r}){let n=Eo();return lt.createElement("div",{ref:n.scrollRef,style:{height:"100%",width:"100%",scrollbarGutter:"stable both-edges"},className:o},lt.createElement("div",{...r,ref:n.contentRef},typeof a=="function"?a(n):a))}e.Content=t})(Jt||(Jt={}));function Eo(){let e=Xd(ds);if(!e)throw new Error("use-stick-to-bottom component context must be used within a StickToBottom component");return e}f();var tc=an({prefix:"ww"});function R(...e){return tc(tn(e))}f();import{jsx as ac}from"react/jsx-runtime";var qe=({className:e,variant:t="default",size:a="default",type:o="button",...r})=>ac("button",{type:o,className:R("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 Fa}from"react/jsx-runtime";var cs=({className:e,...t})=>Fa(Jt,{className:R("ww:relative ww:flex-1 ww:overflow-y-hidden",e),initial:"smooth",resize:"smooth",role:"log",...t}),fs=({className:e,...t})=>Fa(Jt.Content,{className:R("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}),ps=({className:e,...t})=>{let{isAtBottom:a,scrollToBottom:o}=Eo(),r=oc(()=>{o()},[o]);return!a&&Fa(qe,{className:R("ww:absolute ww:bottom-4 ww:left-[50%] ww:translate-x-[-50%] ww:rounded-full",e),onClick:r,size:"icon",variant:"outline",...t,children:Fa(Ht,{className:"ww:size-4"})})};f();f();import hs from"crypto";f();var ms="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";var rc=128,ut,bt,nc=e=>{!ut||ut.length<e?(ut=Buffer.allocUnsafe(e*rc),hs.randomFillSync(ut),bt=0):bt+e>ut.length&&(hs.randomFillSync(ut),bt=0),bt+=e};var Yt=(e=21)=>{nc(e|=0);let t="";for(let a=bt-e;a<bt;a++)t+=ms[ut[a]&63];return t};import{createContext as cc,useCallback as $e,useContext as fc,useEffect as Uo,useMemo as pc,useRef as Ho,useState as gs}from"react";f();f();import{createContext as lc,useContext as uc,useEffect as xS,useMemo as CS,useState as LS}from"react";f();f();f();f();var No={promptInput:{placeholder:"What would you like to know?",uploadFiles:"Upload files",stop:"Stop",submit:"Submit",removeAttachments:"Remove all attachments"},workingIndicator:{default:"On it\u2026"},reasoning:{thinking:"Thinking\u2026",thoughtBrief:"Thought for a few seconds",thoughtForSeconds:e=>`Thought for ${e} second${e===1?"":"s"}`},chainOfThought:{working:"Working on it\u2026",done:"Thought process"},tool:{copy:"Copy",copied:"Copied",request:"Request",response:"Response",error:"Error"},attachments:{attachmentFallback:"attachment",fileFallback:"file"},threadMenu:{newChat:"New chat",threadHistory:"Thread history",deleteThread:"Delete thread",noPreviousChats:"No previous chats yet.",hiddenThreads:e=>`${e} older thread${e===1?"":"s"} hidden`},chatQueue:{attachmentFallback:"(attachment)",removeFromQueue:"Remove from queue",queued:e=>`${e} queued`},poweredBy:{label:"AI agent powered by"},aiDisclaimer:{default:"can make mistakes"},exportSession:{saving:"saving...",saved:"saved",error:"error",export:"export",tooltip:"Save scenario to Waniwani"},widgetErrorBoundary:{failedToLoad:"Widget failed to load",retry:"Retry"},launcher:{prompt:"Ask anything\u2026",open:"Open chat",close:"Close chat",minimize:"Minimize"}};f();f();import{jsx as vS}from"react/jsx-runtime";var dc=lc(null);function V(){let e=uc(dc);return e||{locale:"en",t:No,ready:!0}}f();function Oo(e,t){let a=Date.now()-e;if(a<6e4)try{return new Intl.RelativeTimeFormat(t,{numeric:"auto",style:"narrow"}).format(0,"second")}catch{return"just now"}let o,r;a<60*6e4?(o=-Math.floor(a/6e4),r="minute"):a<1440*6e4?(o=-Math.floor(a/(60*6e4)),r="hour"):(o=-Math.floor(a/(1440*6e4)),r="day");try{return new Intl.RelativeTimeFormat(t,{numeric:"auto",style:"short"}).format(o,r)}catch{return`${Math.abs(o)}${r==="minute"?"m":r==="hour"?"h":"d"} ago`}}import{jsx as Ee,jsxs as ys}from"react/jsx-runtime";var mc=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}},ws=cc(null),xs=()=>{let e=fc(ws);if(!e)throw new Error("usePromptInputAttachments must be used within a PromptInput");return e},Cs=({className:e,accept:t,multiple:a,globalDrop:o,maxFiles:r,maxFileSize:n,onSubmit:s,children:i,...l})=>{let{t:u}=V(),c=Ho(null),d=Ho(null),[p,m]=gs([]),h=Ho(p);Uo(()=>{h.current=p},[p]);let I=$e(()=>{c.current?.click()},[]),x=$e(P=>{let M=[...P];if(M.length===0)return;let A=F=>n?F.size<=n:!0,E=M.filter(A);m(F=>{let _=typeof r=="number"?Math.max(0,r-F.length):void 0,v=typeof _=="number"?E.slice(0,_):E;return[...F,...v.map(D=>({filename:D.name,id:Yt(),mediaType:D.type,type:"file",url:URL.createObjectURL(D)}))]})},[r,n]),S=$e(P=>{m(M=>{let A=M.find(E=>E.id===P);return A?.url&&URL.revokeObjectURL(A.url),M.filter(E=>E.id!==P)})},[]),L=$e(()=>{m(P=>{for(let M of P)M.url&&URL.revokeObjectURL(M.url);return[]})},[]);Uo(()=>()=>{for(let P of h.current)P.url&&URL.revokeObjectURL(P.url)},[]);let C=$e(P=>{P.currentTarget.files&&x(P.currentTarget.files),P.currentTarget.value=""},[x]);Uo(()=>{if(!o)return;let P=A=>{A.dataTransfer?.types?.includes("Files")&&A.preventDefault()},M=A=>{A.dataTransfer?.types?.includes("Files")&&A.preventDefault(),A.dataTransfer?.files&&A.dataTransfer.files.length>0&&x(A.dataTransfer.files)};return document.addEventListener("dragover",P),document.addEventListener("drop",M),()=>{document.removeEventListener("dragover",P),document.removeEventListener("drop",M)}},[x,o]);let k=$e(async P=>{P.preventDefault();let M=P.currentTarget,E=new FormData(M).get("message")||"";M.reset();let F=await Promise.all(p.map(async({id:_,...v})=>{if(v.url?.startsWith("blob:")){let D=await mc(v.url);return{...v,url:D??v.url}}return v}));try{let _=s({files:F,text:E},P);_ instanceof Promise&&await _,L()}catch{}},[p,s,L]),T=pc(()=>({add:x,clear:L,files:p,openFileDialog:I,remove:S}),[p,x,S,L,I]);return ys(ws.Provider,{value:T,children:[Ee("input",{accept:t,"aria-label":u.promptInput.uploadFiles,className:"ww:hidden",multiple:a,onChange:C,ref:c,title:u.promptInput.uploadFiles,type:"file"}),Ee("form",{className:R("ww:flex ww:w-full ww:flex-col ww:rounded-lg ww:border ww:border-border ww:bg-background",e),onSubmit:k,ref:d,...l,children:i})]})};var Ls=({onChange:e,onKeyDown:t,className:a,placeholder:o,...r})=>{let{t:n}=V(),s=xs(),[i,l]=gs(!1),u=o??n.promptInput.placeholder,c=$e(p=>{if(t?.(p),!p.defaultPrevented){if(p.key==="Enter"){if(i||p.nativeEvent.isComposing||p.shiftKey)return;p.preventDefault();let{form:m}=p.currentTarget;if(m?.querySelector('button[type="submit"]')?.disabled)return;m?.requestSubmit()}if(p.key==="Backspace"&&p.currentTarget.value===""&&s.files.length>0){p.preventDefault();let m=s.files.at(-1);m&&s.remove(m.id)}}},[t,i,s]),d=$e(p=>{let m=p.clipboardData?.items;if(!m)return;let h=[];for(let I of m)if(I.kind==="file"){let x=I.getAsFile();x&&h.push(x)}h.length>0&&(p.preventDefault(),s.add(h))},[s]);return Ee("textarea",{className:R("ww:field-sizing-content ww:max-h-48 ww:min-h-0 ww:w-full ww:resize-none ww:border-0 ww:bg-transparent ww:px-3 ww:py-2 ww:text-base ww:sm:text-sm ww:outline-none ww:placeholder:text-muted-foreground",a),name:"message",onCompositionEnd:()=>l(!1),onCompositionStart:()=>l(!0),onKeyDown:c,onPaste:d,placeholder:u,onChange:e,...r})},Is=({className:e,status:t,onStop:a,onClick:o,children:r,...n})=>{let{t:s}=V(),i=t==="submitted"||t==="streaming",l=Ee(qt,{className:"ww:size-4"});t==="submitted"?l=Ee($t,{className:"ww:size-4 ww:animate-spin"}):t==="streaming"&&(l=Ee(Kt,{className:"ww:size-4"}));let u=$e(c=>{if(i&&a){c.preventDefault(),a();return}o?.(c)},[i,a,o]);return Ee(qe,{"aria-label":i?s.promptInput.stop:s.promptInput.submit,className:R("ww:bg-foreground ww:text-background ww:hover:bg-foreground ww:rounded-full",e),onClick:u,size:"icon-sm",type:i&&a?"button":"submit",variant:"ghost",...n,children:r??l})},Ss=({className:e,children:t,...a})=>{let{t:o}=V(),r=xs();return r.files.length>0?ys(qe,{className:R("ww:group ww:relative",e),onClick:()=>r.clear(),size:"icon-sm",type:"button",variant:"ghost","aria-label":o.promptInput.removeAttachments,...a,children:[Ee("span",{className:"ww:flex ww:size-5 ww:items-center ww:justify-center ww:rounded-full ww:bg-primary ww:text-[10px] ww:font-medium ww:text-primary-foreground ww:transition-opacity ww:group-hover:opacity-0",children:r.files.length}),Ee(it,{className:"ww:absolute ww:size-4 ww:opacity-0 ww:transition-opacity ww:group-hover:opacity-100"})]}):Ee(qe,{className:R(e),onClick:()=>r.openFileDialog(),size:"icon-sm",type:"button",variant:"ghost",...a,children:t??Ee(Xt,{className:"ww:size-4"})})};f();import{memo as hc,useCallback as gc}from"react";f();import{jsx as kt}from"react/jsx-runtime";var bs=({className:e,...t})=>kt("div",{className:R("ww:flex ww:flex-col ww:gap-1 ww:px-3 ww:py-2",e),...t}),ks=({className:e,...t})=>kt("li",{className:R("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}),Ts=({className:e,...t})=>kt("span",{className:R("ww:inline-block ww:size-2 ww:shrink-0 ww:rounded-full ww:border ww:border-muted-foreground/50",e),...t}),vs=({className:e,...t})=>kt("span",{className:R("ww:line-clamp-1 ww:grow ww:break-words ww:text-muted-foreground",e),...t}),Ps=({className:e,...t})=>kt("div",{className:R("ww:flex ww:shrink-0 ww:gap-1 ww:opacity-0 ww:transition-opacity ww:group-hover:opacity-100",e),...t}),As=({className:e,...t})=>kt(qe,{className:R("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 Ye,jsxs as Fs}from"react/jsx-runtime";var Rs=hc(({message:e,onRemove:t})=>{let{t:a}=V(),o=gc(()=>t(e.id),[t,e.id]);return Fs(ks,{children:[Ye(Ts,{}),Ye(vs,{children:e.text||a.chatQueue.attachmentFallback}),Ye(Ps,{children:Ye(As,{"aria-label":a.chatQueue.removeFromQueue,onClick:o,children:Ye(it,{className:"ww:size-3"})})})]})});Rs.displayName="ChatQueueItem";function Ms({queuedMessages:e,onRemove:t,className:a}){let{t:o}=V();return e.length===0?null:Fs(bs,{className:R("ww:border-t ww:border-border",a),children:[Ye("div",{className:"ww:text-[11px] ww:font-medium ww:text-muted-foreground ww:px-2",children:o.chatQueue.queued(e.length)}),Ye("ul",{children:e.map(r=>Ye(Rs,{message:r,onRemove:t},r.id))})]})}f();import{useState as Ds}from"react";import{jsx as wc}from"react/jsx-runtime";function Bs({messages:e,evalEnabled:t,api:a="/api/waniwani"}){let{t:o}=V(),[r,n]=Ds(!1),[s,i]=Ds(null),l=async()=>{let c={name:`session-${new Date().toISOString().slice(0,19)}`,type:"functional",messages:e,mode:"manual"};n(!0),i(null);try{let d=await fetch(`${a}/scenarios`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(c)});if(!d.ok)throw new Error(`${d.status}`);i("saved")}catch{i("error")}finally{n(!1),setTimeout(()=>i(null),2e3)}};if(!t||e.length===0)return null;let u=r?o.exportSession.saving:s==="saved"?o.exportSession.saved:s==="error"?o.exportSession.error:o.exportSession.export;return wc("button",{type:"button",onClick:l,disabled:r,title:o.exportSession.tooltip,className:"ww:ml-auto ww:text-[10px] ww:font-mono ww:uppercase ww:tracking-wider ww:text-muted-foreground hover:ww:text-foreground ww:cursor-pointer ww:transition-colors ww:disabled:opacity-40",children:u})}f();f();import{jsx as Zt,jsxs as Cc}from"react/jsx-runtime";var Es=({files:e,className:t,...a})=>e.length===0?null:Zt("div",{className:R("ww:flex ww:flex-wrap ww:gap-1.5",t),...a,children:e.map((o,r)=>Zt(xc,{file:o},r))});function xc({file:e}){let{t}=V();return e.mediaType?.startsWith("image/")&&e.url?Zt("img",{src:e.url,alt:e.filename??t.attachments.attachmentFallback,className:"ww:h-16 ww:max-w-32 ww:rounded ww:object-cover"}):Cc("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:[Zt(zt,{className:"ww:size-3 ww:shrink-0"}),Zt("span",{className:"ww:max-w-24 ww:truncate",children:e.filename??t.attachments.fileFallback})]})}f();import{createContext as Mc,useCallback as Fc,useContext as Dc,useEffect as Bc,useMemo as Ec,useState as jo}from"react";f();import{createContext as yc,memo as Go,useCallback as bc,useContext as kc,useEffect as qo,useMemo as Tc,useRef as _s,useState as Wo}from"react";f();f();import{memo as Lc}from"react";import{jsx as Sc}from"react/jsx-runtime";var Ic=({as:e="span",className:t,duration:a=2,style:o,children:r,...n})=>{let s={backgroundImage:"linear-gradient(90deg, var(--ww-color-muted-foreground) 0%, var(--ww-color-muted-foreground) 40%, var(--ww-color-foreground) 50%, var(--ww-color-muted-foreground) 60%, var(--ww-color-muted-foreground) 100%)",backgroundSize:"250% 100%",WebkitBackgroundClip:"text",backgroundClip:"text",color:"transparent",animation:`ww-shimmer ${a}s linear infinite`,...o};return Sc(e,{"data-waniwani-shimmer":"",className:R("ww:inline-block",t),style:s,...n,children:r})},_e=Lc(Ic);_e.displayName="Shimmer";import{Fragment as Ac,jsx as Ne,jsxs as Rc}from"react/jsx-runtime";var Ns=yc(null);function Os(){let e=kc(Ns);if(!e)throw new Error("Reasoning components must be used within <Reasoning>");return e}var vc=1e3,Pc=1e3,ea=Go(({className:e,isStreaming:t=!1,open:a,defaultOpen:o,onOpenChange:r,duration:n,children:s,...i})=>{let l=o??t,u=o===!1,c=a!==void 0,[d,p]=Wo(l),m=c?a:d,h=bc(M=>{c||p(M),r?.(M)},[c,r]),[I,x]=Wo(void 0),S=n??I,L=_s(t),[C,k]=Wo(!1),T=_s(null);qo(()=>{t?(L.current=!0,T.current===null&&(T.current=Date.now())):T.current!==null&&(x(Math.ceil((Date.now()-T.current)/Pc)),T.current=null)},[t]),qo(()=>{t&&!m&&!u&&h(!0)},[t,m,u,h]),qo(()=>{if(L.current&&!t&&m&&!C){let M=setTimeout(()=>{h(!1),k(!0)},vc);return()=>clearTimeout(M)}},[t,m,C,h]);let P=Tc(()=>({isStreaming:t,isOpen:m,setIsOpen:h,duration:S}),[t,m,h,S]);return Ne(Ns.Provider,{value:P,children:Ne("div",{className:R("ww:mb-4 ww:flex ww:flex-col ww:gap-2",e),"data-state":m?"open":"closed",style:{animation:"ww-fade-in 0.2s ease-out"},...i,children:s})})});ea.displayName="Reasoning";var ta=Go(({className:e,children:t,getThinkingMessage:a,hideIcon:o=!1,onClick:r,...n})=>{let{t:s}=V(),{isStreaming:i,isOpen:l,duration:u,setIsOpen:c}=Os(),p=a??((m,h)=>m||h===0?Ne(_e,{duration:1.6,children:s.reasoning.thinking}):h===void 0?Ne("span",{children:s.reasoning.thoughtBrief}):Ne("span",{children:s.reasoning.thoughtForSeconds(h)}));return Ne("button",{type:"button","aria-expanded":l,onClick:m=>{c(!l),r?.(m)},className:R("ww:flex ww:w-full ww:items-center ww:gap-2 ww:text-sm ww:text-muted-foreground ww:transition-colors ww:hover:text-foreground",e),...n,children:t??Rc(Ac,{children:[!o&&Ne(Ve,{className:"ww:size-4 ww:shrink-0"}),p(i,u)]})})});ta.displayName="ReasoningTrigger";var aa=Go(({className:e,children:t,...a})=>{let{isOpen:o}=Os();return Ne("div",{className:R("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:Ne("div",{className:"ww:min-h-0 ww:overflow-hidden",children:Ne("div",{className:R("ww:text-sm ww:text-muted-foreground",e),...a,children:Ne(Mt,{children:t})})})})});aa.displayName="ReasoningContent";import{jsx as Y,jsxs as Ze}from"react/jsx-runtime";var _c=500,Us=Mc(null);function Hs(){let e=Dc(Us);if(!e)throw new Error("ChainOfThought components must be used within <ChainOfThought>");return e}function qs({className:e,isWorking:t=!1,activeStep:a,open:o,defaultOpen:r=!1,onOpenChange:n,children:s,...i}){let l=o!==void 0,[u,c]=jo(r),d=l?o:u,p=Fc(x=>{l||c(x),n?.(x)},[l,n]),[m,h]=jo(!t);Bc(()=>{if(t){h(!1);return}let x=setTimeout(()=>h(!0),_c);return()=>clearTimeout(x)},[t]);let I=Ec(()=>({open:d,setOpen:p,isWorking:t,settled:m,activeStep:a}),[d,p,t,m,a]);return Y(Us.Provider,{value:I,children:Y("div",{className:R("ww:mb-4 ww:flex ww:flex-col ww:gap-2",e),"data-state":d?"open":"closed",style:{animation:"ww-fade-in 0.2s ease-out"},...i,children:s})})}function Ws({className:e,label:t,workingLabel:a,children:o,...r}){let{open:n,setOpen:s,isWorking:i,settled:l,activeStep:u}=Hs();if(!l){let c=u?.icon,d=u?.label??a??t??"";return Y("div",{className:R("ww:flex ww:min-h-5 ww:w-full ww:items-center ww:gap-1.5 ww:text-sm ww:text-muted-foreground",e),children:Ze("span",{className:"ww:flex ww:min-w-0 ww:items-center ww:gap-1.5",style:{animation:"ww-fade-in 0.25s ease-out"},children:[c&&Y(c,{className:R("ww:size-4 ww:shrink-0",i&&"ww:animate-pulse")}),Y("span",{className:"ww:truncate",children:i?Y(_e,{duration:2.6,children:d}):d})]},d)})}return Ze("button",{type:"button",onClick:()=>s(!n),"aria-expanded":n,className:R("ww:flex ww:min-h-5 ww:w-full ww:items-center ww:gap-1.5 ww:text-sm ww:text-muted-foreground ww:transition-colors ww:hover:text-foreground",e),style:{animation:"ww-fade-in 0.25s ease-out"},...r,children:[Y("span",{className:"ww:truncate",children:o??t}),Y(Qe,{className:R("ww:size-4 ww:shrink-0 ww:transition-transform ww:duration-200",n&&"ww:rotate-180")})]})}function Gs({className:e,children:t,...a}){let{open:o}=Hs();return Y("div",{className:R("ww:grid ww:transition-[grid-template-rows,opacity] ww:duration-200 ww:ease-out",o?"ww:grid-rows-[1fr] ww:opacity-100":"ww:grid-rows-[0fr] ww:opacity-0"),children:Y("div",{className:"ww:min-h-0 ww:overflow-hidden",children:Y("div",{className:R("ww:flex ww:flex-col",e),...a,children:t})})})}function js({icon:e,isLast:t,running:a,error:o}){return Ze("div",{className:"ww:flex ww:flex-col ww:items-center ww:self-stretch",children:[Y("span",{className:"ww:flex ww:h-5 ww:items-center",children:Y(e,{className:R("ww:size-4 ww:shrink-0",o?"ww:text-destructive":a?"ww:animate-pulse ww:text-foreground":"ww:text-muted-foreground")})}),!t&&Y("span",{className:"ww:w-px ww:flex-1 ww:bg-border"})]})}function zo({className:e,icon:t,title:a,state:o,isLast:r=!1,children:n,...s}){let i=o==="input-available"||o==="input-streaming",l=o==="output-error",u=n!=null,[c,d]=jo(!1),p=a??"",m=i?Y(_e,{duration:1.6,children:p}):Y("span",{className:"ww:truncate",children:p});return Ze("div",{className:R("ww:flex ww:gap-2",e),...s,children:[Y(js,{icon:t,isLast:r,running:i,error:l}),Ze("div",{className:R("ww:min-w-0 ww:flex-1",!r&&"ww:pb-3"),children:[u?Ze("button",{type:"button",onClick:()=>d(h=>!h),"aria-expanded":c,className:"ww:flex ww:w-full ww:items-center ww:gap-1.5 ww:text-left ww:text-sm ww:text-muted-foreground ww:transition-colors ww:hover:text-foreground",children:[m,Y(Qe,{className:R("ww:size-3.5 ww:shrink-0 ww:transition-transform ww:duration-200",c&&"ww:rotate-180")})]}):Y("div",{className:"ww:flex ww:items-center ww:text-sm ww:text-muted-foreground",children:m}),u&&Y("div",{className:R("ww:grid ww:transition-[grid-template-rows,opacity] ww:duration-200 ww:ease-out",c?"ww:grid-rows-[1fr] ww:opacity-100":"ww:grid-rows-[0fr] ww:opacity-0"),children:Y("div",{className:"ww:min-h-0 ww:overflow-hidden",children:Y("div",{className:"ww:mt-2 ww:space-y-3 ww:rounded-lg ww:border ww:border-border ww:bg-background ww:p-3",children:n})})})]})]})}function zs({isStreaming:e=!1,isLast:t=!1,children:a}){return Ze("div",{className:"ww:flex ww:gap-2",children:[Y(js,{icon:Ve,isLast:t,running:e}),Y("div",{className:R("ww:min-w-0 ww:flex-1",!t&&"ww:pb-3"),children:Ze(ea,{isStreaming:e,className:"ww:mb-0",children:[Y(ta,{hideIcon:!0}),Y(aa,{children:a})]})})]})}f();f();f();f();f();f();var Ce={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};f();var We={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};f();var Ae={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"};f();f();f();function Vs(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 $s(e){return e===12288||e>=65281&&e<=65376||e>=65504&&e<=65510}function Xs(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 Ks(e){return Vs(e)?"ambiguous":$s(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":Xs(e)?"wide":"neutral"}function Nc(e){if(!Number.isSafeInteger(e))throw new TypeError(`Expected a code point, got \`${typeof e}\`.`)}function Qs(e){return Nc(e),Ks(e)}var Oc=Object.defineProperty,Uc=(e,t,a)=>t in e?Oc(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a,Hc=(e,t,a)=>Uc(e,typeof t!="symbol"?t+"":t,a);function qc(e){return new RegExp("^\\p{Emoji_Presentation}","u").test(String.fromCodePoint(e))}function Wc(e){if(!e||e<4352)return!1;switch(Qs(e)){case"fullwidth":case"halfwidth":return!0;case"wide":return!qc(e);case"narrow":return!1;case"ambiguous":return 917760<=e&&e<=917999?null:!1;case"neutral":return new RegExp("^\\p{sc=Hangul}","u").test(String.fromCodePoint(e))}}function Gc(e,t){return t!==65025||!e||e<8216?!1:e===8216||e===8217||e===8220||e===8221}function jc(e){return e!==null&&e>=65024&&e<=65038}var zc=Js(new RegExp("\\p{P}|\\p{S}","u")),Vc=Js(/\s/);function Js(e){return t;function t(a){return a!==null&&a>-1&&e.test(String.fromCodePoint(a))}}var Re;(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})(Re||(Re={}));function et(e){if(e===Ce.eof||cn(e)||Vc(e))return We.characterGroupWhitespace;let t=0;if(e>=4352){if(jc(e))return Re.nonEmojiGeneralUseVS;switch(Wc(e)){case null:return Re.ivs;case!0:t|=Re.cjk;break}}return zc(e)&&(t|=We.characterGroupPunctuation),t}function Da(e,t,a){if(!Xc(e))return e;let o=t(),r=et(o);return!o||dt(r)?e:Gc(o,a)?Re.cjkPunctuation:$c(r)}function $c(e){return e&~Re.ivs}function dt(e){return!!(e&We.characterGroupWhitespace)}function Tt(e){return(e&Re.cjkPunctuation)===We.characterGroupPunctuation}function oa(e){return!!(e&Re.cjk)}function Ys(e){return e===Re.ivs}function Zs(e){return!!(e&Re.cjkOrIvs)}function Xc(e){return e===Re.nonEmojiGeneralUseVS}function Vo(e){return!!(e&Re.spaceOrPunctuation)}function Ba(e){return!!(e&&e>=55296&&e<=56319)}function Ea(e){return!!(e&&e>=56320&&e<=57343)}function _a(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 Kc(e,t,a){let o=e>=65536?2:1;if(t._bufferIndex<1+o)return null;let r=t._bufferIndex-o-2,n=a({start:{...t,_bufferIndex:r>=0?r:0},end:{...t,_bufferIndex:t._bufferIndex-o}}),s=n.charCodeAt(n.length-1);if(Number.isNaN(s))return null;if(n.length<2||s<56320||57343<s)return s;let i=n.codePointAt(0);return i&&i>=65536?i:s}var Na=class{constructor(e,t,a){this.previousCode=e,this.nowPoint=t,this.sliceSerialize=a,Hc(this,"cachedValue")}value(){return this.cachedValue===void 0&&(this.cachedValue=Kc(this.previousCode,this.nowPoint,this.sliceSerialize)),this.cachedValue}};function Oa(e,t,a){let o=a({start:t,end:{...t,_bufferIndex:t._bufferIndex+2}}).codePointAt(0);return o&&o>=65536?o:e}var $o={name:"attention",resolveAll:Qc,tokenize:Jc};function Qc(e,t){let a=-1,o,r,n,s,i,l,u,c;for(;++a<e.length;)if(e[a][0]==="enter"&&e[a][1].type==="attentionSequence"&&e[a][1]._close){for(o=a;o--;)if(e[o][0]==="exit"&&e[o][1].type==="attentionSequence"&&e[o][1]._open&&t.sliceSerialize(e[o][1]).charCodeAt(0)===t.sliceSerialize(e[a][1]).charCodeAt(0)){if((e[o][1]._close||e[a][1]._open)&&(e[a][1].end.offset-e[a][1].start.offset)%3&&!((e[o][1].end.offset-e[o][1].start.offset+e[a][1].end.offset-e[a][1].start.offset)%3))continue;l=e[o][1].end.offset-e[o][1].start.offset>1&&e[a][1].end.offset-e[a][1].start.offset>1?2:1;let d={...e[o][1].end},p={...e[a][1].start};ei(d,-l),ei(p,l),s={type:l>1?Ae.strongSequence:Ae.emphasisSequence,start:d,end:{...e[o][1].end}},i={type:l>1?Ae.strongSequence:Ae.emphasisSequence,start:{...e[a][1].start},end:p},n={type:l>1?Ae.strongText:Ae.emphasisText,start:{...e[o][1].end},end:{...e[a][1].start}},r={type:l>1?Ae.strong:Ae.emphasis,start:{...s.start},end:{...i.end}},e[o][1].end={...s.start},e[a][1].start={...i.end},u=[],e[o][1].end.offset-e[o][1].start.offset&&(u=It(u,[["enter",e[o][1],t],["exit",e[o][1],t]])),u=It(u,[["enter",r,t],["enter",s,t],["exit",s,t],["enter",n,t]]),t.parser.constructs.insideSpan.null,u=It(u,ba(t.parser.constructs.insideSpan.null,e.slice(o+1,a),t)),u=It(u,[["exit",n,t],["enter",i,t],["exit",i,t],["exit",r,t]]),e[a][1].end.offset-e[a][1].start.offset?(c=2,u=It(u,[["enter",e[a][1],t],["exit",e[a][1],t]])):c=0,Lt(e,o-1,a-o+3,u),a=o+u.length-c-2;break}}for(a=-1;++a<e.length;)e[a][1].type==="attentionSequence"&&(e[a][1].type="data");return e}function Jc(e,t){let a=this.parser.constructs.attentionMarkers.null,{now:o,sliceSerialize:r,previous:n}=this,s=Ea(n)?_a(n,o(),r):n,i=et(s),l=new Na(s,o(),r),u=Da(i,l.value.bind(l),s),c;return d;function d(m){return m===Ce.asterisk||Ce.underscore,c=m,e.enter("attentionSequence"),p(m)}function p(m){if(m===c)return e.consume(m),p;let h=e.exit("attentionSequence"),I=Ba(m)?Oa(m,o(),r):m,x=et(I);let S=Tt(u),L=S||dt(u),C=Tt(x),k=C||dt(x),T=Zs(u),P=!k||C&&(L||T)||a.includes(m),M=!L||S&&(k||oa(x))||a.includes(s);return h._open=!!(c===Ce.asterisk?P:P&&(Vo(u)||!M)),h._close=!!(c===Ce.asterisk?M:M&&(Vo(x)||!P)),t(m)}}function ei(e,t){e.column+=t,e.offset+=t,e._bufferIndex+=t}function ti(){return{text:{[Ce.asterisk]:$o,[Ce.underscore]:$o},insideSpan:{null:[$o]}}}function ai(){let e=this.data();(e.micromarkExtensions||(e.micromarkExtensions=[])).push(ti())}f();f();function oi(e){let a=(e||{}).singleTilde,o={name:"strikethrough",tokenize:n,resolveAll:r};return a==null&&(a=!0),{text:{[Ce.tilde]:o},insideSpan:{null:[o]},attentionMarkers:{null:[Ce.tilde]}};function r(s,i){let l=-1;for(;++l<s.length;)if(s[l][0]==="enter"&&s[l][1].type==="strikethroughSequenceTemporary"&&s[l][1]._close){let u=l;for(;u--;)if(s[u][0]==="exit"&&s[u][1].type==="strikethroughSequenceTemporary"&&s[u][1]._open&&s[l][1].end.offset-s[l][1].start.offset===s[u][1].end.offset-s[u][1].start.offset){s[l][1].type="strikethroughSequence",s[u][1].type="strikethroughSequence";let c={type:"strikethrough",start:Object.assign({},s[u][1].start),end:Object.assign({},s[l][1].end)},d={type:"strikethroughText",start:Object.assign({},s[u][1].end),end:Object.assign({},s[l][1].start)},p=[["enter",c,i],["enter",s[u][1],i],["exit",s[u][1],i],["enter",d,i]],m=i.parser.constructs.insideSpan.null;m&&Lt(p,p.length,0,ba(m,s.slice(u+1,l),i)),Lt(p,p.length,0,[["exit",d,i],["enter",s[l][1],i],["exit",s[l][1],i],["exit",c,i]]),Lt(s,u-1,l-u+3,p),l=u+p.length-2;break}}for(l=-1;++l<s.length;)s[l][1].type==="strikethroughSequenceTemporary"&&(s[l][1].type=Ae.data);return s}function n(s,i,l){let{now:u,sliceSerialize:c,previous:d}=this,p=Ea(d)?_a(d,u(),c):d,m=et(p),h=new Na(p,u(),c),I=Da(m,h.value.bind(h),p),x=this.events,S=0;return L;function L(k){return Ce.tilde,p===Ce.tilde&&x[x.length-1][1].type!==Ae.characterEscape?l(k):(s.enter("strikethroughSequenceTemporary"),C(k))}function C(k){let T=et(p);if(k===Ce.tilde)return S>1?l(k):(s.consume(k),S++,C);if(S<2&&!a)return l(k);let P=s.exit("strikethroughSequenceTemporary"),M=Ba(k)?Oa(k,u(),c):k,A=et(M),F=Tt(I)||dt(I),v=Tt(A)||dt(A),D=oa(I)||Ys(T);return P._open=!v||A===We.attentionSideAfter&&(F||D),P._close=!F||T===We.attentionSideAfter&&(v||oa(A)),i(k)}}}function ri(e){let t=this.data();(t.micromarkExtensions||(t.micromarkExtensions=[])).push(oi(e))}var Yc=new Set(["\u3002","\uFF0E","\uFF0C","\u3001","\uFF1F","\uFF01","\uFF1A","\uFF1B","\uFF08","\uFF09","\u3010","\u3011","\u300C","\u300D","\u300E","\u300F","\u3008","\u3009","\u300A","\u300B"]),Zc=/^(https?:\/\/|mailto:|www\.)/i,ef=e=>{if(e.children.length!==1)return!1;let t=e.children[0];return t.type==="text"&&t.value===e.url},tf=e=>{let t=0;for(let a of e){if(Yc.has(a))return t;t+=a.length}return null},af=(e,t)=>({...t,url:e,children:[{type:"text",value:e}]}),of=e=>({type:"text",value:e}),rf=()=>e=>{on(e,"link",(t,a,o)=>{if(!o||typeof a!="number"||!ef(t)||!Zc.test(t.url))return;let r=tf(t.url);if(r===null||r===0)return;let n=t.url.slice(0,r),s=t.url.slice(r),i=af(n,t),l=of(s);return o.children.splice(a,1,i,l),a+1})};function nf(){let e=[ai],t=[rf,ri],a=[...e,...t];return{name:"cjk",type:"cjk",remarkPluginsBefore:e,remarkPluginsAfter:t,remarkPlugins:a}}var Xo=nf();f();f();f();f();f();var re=class extends Error{constructor(t){super(t),this.name="ShikiError"}};f();function sf(e){return rr(e)}function rr(e){return Array.isArray(e)?lf(e):e instanceof RegExp?e:typeof e=="object"?uf(e):e}function lf(e){let t=[];for(let a=0,o=e.length;a<o;a++)t[a]=rr(e[a]);return t}function uf(e){let t={};for(let a in e)t[a]=rr(e[a]);return t}function pi(e,...t){return t.forEach(a=>{for(let o in a)e[o]=a[o]}),e}function mi(e){let t=~e.lastIndexOf("/")||~e.lastIndexOf("\\");return t===0?e:~t===e.length-1?mi(e.substring(0,e.length-1)):e.substr(~t+1)}var Ko=/\$(\d+)|\${(\d+):\/(downcase|upcase)}/g,Ua=class{static hasCaptures(e){return e===null?!1:(Ko.lastIndex=0,Ko.test(e))}static replaceCaptures(e,t,a){return e.replace(Ko,(o,r,n,s)=>{let i=a[parseInt(r||n,10)];if(i){let l=t.substring(i.start,i.end);for(;l[0]===".";)l=l.substring(1);switch(s){case"downcase":return l.toLowerCase();case"upcase":return l.toUpperCase();default:return l}}else return o})}};function hi(e,t){return e<t?-1:e>t?1:0}function gi(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 n=hi(e[r],t[r]);if(n!==0)return n}return 0}return a-o}function ni(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 wi(e){return e.replace(/[\-\\\{\}\*\+\?\|\^\$\.\,\[\]\(\)\#\s]/g,"\\$&")}var xi=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}},sa=class{constructor(e,t,a){this._colorMap=e,this._defaults=t,this._root=a}static createFromRawTheme(e,t){return this.createFromParsedTheme(ff(e),t)}static createFromParsedTheme(e,t){return mf(e,t)}_cachedMatchRoot=new xi(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=>df(e.parent,r.parentScopes));return o?new Ci(o.fontStyle,o.foreground,o.background):null}},Qo=class Ha{constructor(t,a){this.parent=t,this.scopeName=a}static push(t,a){for(let o of a)t=new Ha(t,o);return t}static from(...t){let a=null;for(let o=0;o<t.length;o++)a=new Ha(a,t[o]);return a}push(t){return new Ha(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 df(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&&!cf(e.scopeName,o);){if(r)return!1;e=e.parent}if(!e)return!1;e=e.parent}return!0}function cf(e,t){return t===e||e.startsWith(t)&&e[t.length]==="."}var Ci=class{constructor(e,t,a){this.fontStyle=e,this.foregroundId=t,this.backgroundId=a}};function ff(e){if(!e)return[];if(!e.settings||!Array.isArray(e.settings))return[];let t=e.settings,a=[],o=0;for(let r=0,n=t.length;r<n;r++){let s=t[r];if(!s.settings)continue;let i;if(typeof s.scope=="string"){let d=s.scope;d=d.replace(/^[,]+/,""),d=d.replace(/[,]+$/,""),i=d.split(",")}else Array.isArray(s.scope)?i=s.scope:i=[""];let l=-1;if(typeof s.settings.fontStyle=="string"){l=0;let d=s.settings.fontStyle.split(" ");for(let p=0,m=d.length;p<m;p++)switch(d[p]){case"italic":l=l|1;break;case"bold":l=l|2;break;case"underline":l=l|4;break;case"strikethrough":l=l|8;break}}let u=null;typeof s.settings.foreground=="string"&&ni(s.settings.foreground)&&(u=s.settings.foreground);let c=null;typeof s.settings.background=="string"&&ni(s.settings.background)&&(c=s.settings.background);for(let d=0,p=i.length;d<p;d++){let h=i[d].trim().split(" "),I=h[h.length-1],x=null;h.length>1&&(x=h.slice(0,h.length-1),x.reverse()),a[o++]=new pf(I,x,r,l,u,c)}}return a}var pf=class{constructor(e,t,a,o,r,n){this.scope=e,this.parentScopes=t,this.index=a,this.fontStyle=o,this.foreground=r,this.background=n}},Le=(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))(Le||{});function mf(e,t){e.sort((l,u)=>{let c=hi(l.scope,u.scope);return c!==0||(c=gi(l.parentScopes,u.parentScopes),c!==0)?c: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 n=new hf(t),s=new Ci(a,n.getId(o),n.getId(r)),i=new wf(new Yo(0,null,-1,0,0),[]);for(let l=0,u=e.length;l<u;l++){let c=e[l];i.insert(0,c.scope,c.parentScopes,c.fontStyle,n.getId(c.foreground),n.getId(c.background))}return new sa(n,s,i)}var hf=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)}},gf=Object.freeze([]),Yo=class Li{scopeDepth;parentScopes;fontStyle;foreground;background;constructor(t,a,o,r,n){this.scopeDepth=t,this.parentScopes=a||gf,this.fontStyle=o,this.foreground=r,this.background=n}clone(){return new Li(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)}},wf=class Zo{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 n=a.parentScopes[r].length-t.parentScopes[o].length;if(n!==0)return n;o++,r++}return a.parentScopes.length-t.parentScopes.length}match(t){if(t!==""){let o=t.indexOf("."),r,n;if(o===-1?(r=t,n=""):(r=t.substring(0,o),n=t.substring(o+1)),this._children.hasOwnProperty(r))return this._children[r].match(n)}let a=this._rulesWithParentScopes.concat(this._mainRule);return a.sort(Zo._cmpBySpecificity),a}insert(t,a,o,r,n,s){if(a===""){this._doInsertHere(t,o,r,n,s);return}let i=a.indexOf("."),l,u;i===-1?(l=a,u=""):(l=a.substring(0,i),u=a.substring(i+1));let c;this._children.hasOwnProperty(l)?c=this._children[l]:(c=new Zo(this._mainRule.clone(),Yo.cloneArr(this._rulesWithParentScopes)),this._children[l]=c),c.insert(t+1,u,o,r,n,s)}_doInsertHere(t,a,o,r,n){if(a===null){this._mainRule.acceptOverwrite(t,o,r,n);return}for(let s=0,i=this._rulesWithParentScopes.length;s<i;s++){let l=this._rulesWithParentScopes[s];if(gi(l.parentScopes,a)===0){l.acceptOverwrite(t,o,r,n);return}}o===-1&&(o=this._mainRule.fontStyle),r===0&&(r=this._mainRule.foreground),n===0&&(n=this._mainRule.background),this._rulesWithParentScopes.push(new Yo(t,a,o,r,n))}},ft=class De{static toBinaryStr(t){return t.toString(2).padStart(32,"0")}static print(t){let a=De.getLanguageId(t),o=De.getTokenType(t),r=De.getFontStyle(t),n=De.getForeground(t),s=De.getBackground(t);console.log({languageId:a,tokenType:o,fontStyle:r,foreground:n,background:s})}static getLanguageId(t){return(t&255)>>>0}static getTokenType(t){return(t&768)>>>8}static containsBalancedBrackets(t){return(t&1024)!==0}static getFontStyle(t){return(t&30720)>>>11}static getForeground(t){return(t&16744448)>>>15}static getBackground(t){return(t&4278190080)>>>24}static set(t,a,o,r,n,s,i){let l=De.getLanguageId(t),u=De.getTokenType(t),c=De.containsBalancedBrackets(t)?1:0,d=De.getFontStyle(t),p=De.getForeground(t),m=De.getBackground(t);return a!==0&&(l=a),o!==8&&(u=o),r!==null&&(c=r?1:0),n!==-1&&(d=n),s!==0&&(p=s),i!==0&&(m=i),(l<<0|u<<8|c<<10|d<<11|p<<15|m<<24)>>>0}};function Wa(e,t){let a=[],o=xf(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=s();if(a.push({matcher:u,priority:l}),r!==",")break;r=o.next()}return a;function n(){if(r==="-"){r=o.next();let l=n();return u=>!!l&&!l(u)}if(r==="("){r=o.next();let l=i();return r===")"&&(r=o.next()),l}if(si(r)){let l=[];do l.push(r),r=o.next();while(si(r));return u=>t(l,u)}return null}function s(){let l=[],u=n();for(;u;)l.push(u),u=n();return c=>l.every(d=>d(c))}function i(){let l=[],u=s();for(;u&&(l.push(u),r==="|"||r===",");){do r=o.next();while(r==="|"||r===",");u=s()}return c=>l.some(d=>d(c))}}function si(e){return!!e&&!!e.match(/[\w\.:]+/)}function xf(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 Ii(e){typeof e.dispose=="function"&&e.dispose()}var ia=class{constructor(e){this.scopeName=e}toKey(){return this.scopeName}},Cf=class{constructor(e,t){this.scopeName=e,this.ruleName=t}toKey(){return`${this.scopeName}#${this.ruleName}`}},Lf=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))}},If=class{constructor(e,t){this.repo=e,this.initialScopeName=t,this.seenFullScopeRequests.add(this.initialScopeName),this.Q=[new ia(this.initialScopeName)]}seenFullScopeRequests=new Set;seenPartialScopeRequests=new Set;Q;processQueue(){let e=this.Q;this.Q=[];let t=new Lf;for(let a of e)Sf(a,this.initialScopeName,this.repo,t);for(let a of t.references)if(a instanceof ia){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 Sf(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 n=a.lookup(t);e instanceof ia?qa({baseGrammar:n,selfGrammar:r},o):er(e.ruleName,{baseGrammar:n,selfGrammar:r,repository:r.repository},o);let s=a.injections(e.scopeName);if(s)for(let i of s)o.add(new ia(i))}function er(e,t,a){if(t.repository&&t.repository[e]){let o=t.repository[e];Ga([o],t,a)}}function qa(e,t){e.selfGrammar.patterns&&Array.isArray(e.selfGrammar.patterns)&&Ga(e.selfGrammar.patterns,{...e,repository:e.selfGrammar.repository},t),e.selfGrammar.injections&&Ga(Object.values(e.selfGrammar.injections),{...e,repository:e.selfGrammar.repository},t)}function Ga(e,t,a){for(let o of e){if(a.visitedRule.has(o))continue;a.visitedRule.add(o);let r=o.repository?pi({},t.repository,o.repository):t.repository;Array.isArray(o.patterns)&&Ga(o.patterns,{...t,repository:r},a);let n=o.include;if(!n)continue;let s=Si(n);switch(s.kind){case 0:qa({...t,selfGrammar:t.baseGrammar},a);break;case 1:qa(t,a);break;case 2:er(s.ruleName,{...t,repository:r},a);break;case 3:case 4:let i=s.scopeName===t.selfGrammar.scopeName?t.selfGrammar:s.scopeName===t.baseGrammar.scopeName?t.baseGrammar:void 0;if(i){let l={baseGrammar:t.baseGrammar,selfGrammar:i,repository:r};s.kind===4?er(s.ruleName,l,a):qa(l,a)}else s.kind===4?a.add(new Cf(s.scopeName,s.ruleName)):a.add(new ia(s.scopeName));break}}}var yf=class{kind=0},bf=class{kind=1},kf=class{constructor(e){this.ruleName=e}kind=2},Tf=class{constructor(e){this.scopeName=e}kind=3},vf=class{constructor(e,t){this.scopeName=e,this.ruleName=t}kind=4};function Si(e){if(e==="$base")return new yf;if(e==="$self")return new bf;let t=e.indexOf("#");if(t===-1)return new Tf(e);if(t===0)return new kf(e.substring(1));{let a=e.substring(0,t),o=e.substring(t+1);return new vf(a,o)}}var Pf=/\\(\d+)/,ii=/\\(\d+)/g;var Af=-1,yi=-2;var da=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?`${mi(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)}},Rf=class extends da{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!")}},Mf=class extends da{_match;captures;_cachedCompiledPatterns;constructor(e,t,a,o,r){super(e,t,a,null),this._match=new la(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 ua,this.collectPatterns(e,this._cachedCompiledPatterns)),this._cachedCompiledPatterns}},li=class extends da{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 ua,this.collectPatterns(e,this._cachedCompiledPatterns)),this._cachedCompiledPatterns}},tr=class extends da{_begin;beginCaptures;_end;endHasBackReferences;endCaptures;applyEndPatternLast;hasMissingPatterns;patterns;_cachedCompiledPatterns;constructor(e,t,a,o,r,n,s,i,l,u){super(e,t,a,o),this._begin=new la(r,this.id),this.beginCaptures=n,this._end=new la(s||"\uFFFF",-1),this.endHasBackReferences=this._end.hasBackReferences,this.endCaptures=i,this.applyEndPatternLast=l||!1,this.patterns=u.patterns,this.hasMissingPatterns=u.hasMissingPatterns,this._cachedCompiledPatterns=null}dispose(){this._cachedCompiledPatterns&&(this._cachedCompiledPatterns.dispose(),this._cachedCompiledPatterns=null)}get debugBeginRegExp(){return`${this._begin.source}`}get debugEndRegExp(){return`${this._end.source}`}getEndWithResolvedBackReferences(e,t){return this._end.resolveBackReferences(e,t)}collectPatterns(e,t){t.push(this._begin)}compile(e,t){return this._getCachedCompiledPatterns(e,t).compile(e)}compileAG(e,t,a,o){return this._getCachedCompiledPatterns(e,t).compileAG(e,a,o)}_getCachedCompiledPatterns(e,t){if(!this._cachedCompiledPatterns){this._cachedCompiledPatterns=new ua;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}},ja=class extends da{_begin;beginCaptures;whileCaptures;_while;whileHasBackReferences;hasMissingPatterns;patterns;_cachedCompiledPatterns;_cachedCompiledWhilePatterns;constructor(e,t,a,o,r,n,s,i,l){super(e,t,a,o),this._begin=new la(r,this.id),this.beginCaptures=n,this.whileCaptures=i,this._while=new la(s,yi),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 ua;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 ua,this._cachedCompiledWhilePatterns.push(this._while.hasBackReferences?this._while.clone():this._while)),this._while.hasBackReferences&&this._cachedCompiledWhilePatterns.setSource(0,t||"\uFFFF"),this._cachedCompiledWhilePatterns}},bi=class be{static createCaptureRule(t,a,o,r,n){return t.registerRule(s=>new Rf(a,s,o,r,n))}static getCompiledRuleId(t,a,o){return t.id||a.registerRule(r=>{if(t.id=r,t.match)return new Mf(t.$vscodeTextmateLocation,t.id,t.name,t.match,be._compileCaptures(t.captures,a,o));if(typeof t.begin>"u"){t.repository&&(o=pi({},o,t.repository));let n=t.patterns;return typeof n>"u"&&t.include&&(n=[{include:t.include}]),new li(t.$vscodeTextmateLocation,t.id,t.name,t.contentName,be._compilePatterns(n,a,o))}return t.while?new ja(t.$vscodeTextmateLocation,t.id,t.name,t.contentName,t.begin,be._compileCaptures(t.beginCaptures||t.captures,a,o),t.while,be._compileCaptures(t.whileCaptures||t.captures,a,o),be._compilePatterns(t.patterns,a,o)):new tr(t.$vscodeTextmateLocation,t.id,t.name,t.contentName,t.begin,be._compileCaptures(t.beginCaptures||t.captures,a,o),t.end,be._compileCaptures(t.endCaptures||t.captures,a,o),t.applyEndPatternLast,be._compilePatterns(t.patterns,a,o))}),t.id}static _compileCaptures(t,a,o){let r=[];if(t){let n=0;for(let s in t){if(s==="$vscodeTextmateLocation")continue;let i=parseInt(s,10);i>n&&(n=i)}for(let s=0;s<=n;s++)r[s]=null;for(let s in t){if(s==="$vscodeTextmateLocation")continue;let i=parseInt(s,10),l=0;t[s].patterns&&(l=be.getCompiledRuleId(t[s],a,o)),r[i]=be.createCaptureRule(a,t[s].$vscodeTextmateLocation,t[s].name,t[s].contentName,l)}}return r}static _compilePatterns(t,a,o){let r=[];if(t)for(let n=0,s=t.length;n<s;n++){let i=t[n],l=-1;if(i.include){let u=Si(i.include);switch(u.kind){case 0:case 1:l=be.getCompiledRuleId(o[i.include],a,o);break;case 2:let c=o[u.ruleName];c&&(l=be.getCompiledRuleId(c,a,o));break;case 3:case 4:let d=u.scopeName,p=u.kind===4?u.ruleName:null,m=a.getExternalGrammar(d,o);if(m)if(p){let h=m.repository[p];h&&(l=be.getCompiledRuleId(h,a,m.repository))}else l=be.getCompiledRuleId(m.repository.$self,a,m.repository);break}}else l=be.getCompiledRuleId(i,a,o);if(l!==-1){let u=a.getRule(l),c=!1;if((u instanceof li||u instanceof tr||u instanceof ja)&&u.hasMissingPatterns&&u.patterns.length===0&&(c=!0),c)continue;r.push(l)}}return{patterns:r,hasMissingPatterns:(t?t.length:0)!==r.length}}},la=class ki{source;ruleId;hasAnchor;hasBackReferences;_anchorCache;constructor(t,a){if(t&&typeof t=="string"){let o=t.length,r=0,n=[],s=!1;for(let i=0;i<o;i++)if(t.charAt(i)==="\\"&&i+1<o){let u=t.charAt(i+1);u==="z"?(n.push(t.substring(r,i)),n.push("$(?!\\n)(?<!\\n)"),r=i+2):(u==="A"||u==="G")&&(s=!0),i++}this.hasAnchor=s,r===0?this.source=t:(n.push(t.substring(r,o)),this.source=n.join(""))}else this.hasAnchor=!1,this.source=t;this.hasAnchor?this._anchorCache=this._buildAnchorCache():this._anchorCache=null,this.ruleId=a,typeof this.source=="string"?this.hasBackReferences=Pf.test(this.source):this.hasBackReferences=!1}clone(){return new ki(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 ii.lastIndex=0,this.source.replace(ii,(r,n)=>wi(o[parseInt(n,10)]||""))}_buildAnchorCache(){if(typeof this.source!="string")throw new Error("This method should only be called if the source is a string");let t=[],a=[],o=[],r=[],n,s,i,l;for(n=0,s=this.source.length;n<s;n++)i=this.source.charAt(n),t[n]=i,a[n]=i,o[n]=i,r[n]=i,i==="\\"&&n+1<s&&(l=this.source.charAt(n+1),l==="A"?(t[n+1]="\uFFFF",a[n+1]="\uFFFF",o[n+1]="A",r[n+1]="A"):l==="G"?(t[n+1]="\uFFFF",a[n+1]="G",o[n+1]="\uFFFF",r[n+1]="G"):(t[n+1]=l,a[n+1]=l,o[n+1]=l,r[n+1]=l),n++);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}},ua=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 ui(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 ui(e,o,this._items.map(r=>r.ruleId))}},ui=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(`
|
|
69
|
-
`)}findNextMatchSync(e,t,a){let o=this.scanner.findNextMatchSync(e,t,a);return o?{ruleId:this.rules[o.index],captureIndices:o.captureIndices}:null}},
|
|
70
|
-
`;let n=this.createOnigString(e),s=n.content.length,i=new jf(a,e,this._tokenTypeMatchers,this.balancedBracketSelectors),l=vi(this,n,r,0,t,i,!0,o);return Ii(n),{lineLength:s,lineTokens:i,ruleStack:l.stack,stoppedEarly:l.stoppedEarly}}};function fi(e,t){return e=sf(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 na=class Ge{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 n of a)r=Qo.push(r,n.scopeNames),o=new Ge(o,r,n.encodedTokenAttributes);return o}static createRoot(t,a){return new Ge(null,new Qo(null,t),a)}static createRootAndLookUpScopeName(t,a,o){let r=o.getMetadataForScope(t),n=new Qo(null,t),s=o.themeProvider.themeMatch(n),i=Ge.mergeAttributes(a,r,s);return new Ge(null,n,i)}get scopeName(){return this.scopePath.scopeName}toString(){return this.getScopeNames().join(" ")}equals(t){return Ge.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,n=0,s=0;return o!==null&&(r=o.fontStyle,n=o.foregroundId,s=o.backgroundId),ft.set(t,a.languageId,a.tokenType,null,r,n,s)}pushAttributed(t,a){if(t===null)return this;if(t.indexOf(" ")===-1)return Ge._pushAttributed(this,t,a);let o=t.split(/ /g),r=this;for(let n of o)r=Ge._pushAttributed(r,n,a);return r}static _pushAttributed(t,a,o){let r=o.getMetadataForScope(a),n=t.scopePath.push(a),s=o.themeProvider.themeMatch(n),i=Ge.mergeAttributes(t.tokenAttributes,r,s);return new Ge(t,n,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}},or=class ct{constructor(t,a,o,r,n,s,i,l){this.parent=t,this.ruleId=a,this.beginRuleCapturedEOL=n,this.endRule=s,this.nameScopesList=i,this.contentNameScopesList=l,this.depth=this.parent?this.parent.depth+1:1,this._enterPos=o,this._anchorPos=r}_stackElementBrand=void 0;static NULL=new ct(null,0,0,0,!1,null,null,null);_enterPos;_anchorPos;depth;equals(t){return t===null?!1:ct._equals(this,t)}static _equals(t,a){return t===a?!0:this._structuralEquals(t,a)?na.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(){ct._reset(this)}pop(){return this.parent}safePop(){return this.parent?this.parent:this}push(t,a,o,r,n,s,i){return new ct(this,t,a,o,r,n,s,i)}getEnterPos(){return this._enterPos}getAnchorPos(){return this._anchorPos}getRule(t){return t.getRule(this.ruleId)}toString(){let t=[];return this._writeString(t,0),"["+t.join(",")+"]"}_writeString(t,a){return this.parent&&(a=this.parent._writeString(t,a)),t[a++]=`(${this.ruleId}, ${this.nameScopesList?.toString()}, ${this.contentNameScopesList?.toString()})`,a}withContentNameScopesList(t){return this.contentNameScopesList===t?this:this.parent.push(this.ruleId,this._enterPos,this._anchorPos,this.beginRuleCapturedEOL,this.endRule,this.nameScopesList,t)}withEndRule(t){return this.endRule===t?this:new ct(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=na.fromExtension(t?.nameScopesList??null,a.nameScopesList);return new ct(t,a.ruleId,a.enterPos??-1,a.anchorPos??-1,a.beginRuleCapturedEOL,a.endRule,o,na.fromExtension(o,a.contentNameScopesList))}},Gf=class{balancedBracketScopes;unbalancedBracketScopes;allowAny=!1;constructor(e,t){this.balancedBracketScopes=e.flatMap(a=>a==="*"?(this.allowAny=!0,[]):Wa(a,za).map(o=>o.matcher)),this.unbalancedBracketScopes=t.flatMap(a=>Wa(a,za).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}},jf=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 n=e?.getScopeNames()??[];for(let s of this._tokenTypeOverrides)s.matcher(n)&&(o=ft.set(o,0,s.type,null,-1,0,0));this.balancedBracketSelectors&&(r=this.balancedBracketSelectors.match(n))}if(r&&(o=ft.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}},zf=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 n=this._rawGrammars.get(e);if(!n)return null;this._grammars.set(e,Hf(e,n,t,a,o,r,this,this._onigLib))}return this._grammars.get(e)}},Ri=class{_options;_syncRegistry;_ensureGrammarCache;constructor(e){this._options=e,this._syncRegistry=new zf(sa.createFromRawTheme(e.theme,e.colorMap),e.onigLib),this._ensureGrammarCache=new Map}dispose(){this._syncRegistry.dispose()}setTheme(e,t){this._syncRegistry.setTheme(sa.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 Gf(a.balancedBracketSelectors||[],a.unbalancedBracketSelectors||[]))}loadGrammar(e){return this._loadGrammar(e,0,null,null,null)}_loadGrammar(e,t,a,o,r){let n=new If(this._syncRegistry,e);for(;n.Q.length>0;)n.Q.map(s=>this._loadSingleGrammar(s.scopeName)),n.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)}},Va=or.NULL;f();f();f();f();f();f();var Vf=/["&'<>`]/g,$f=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,Xf=/[\x01-\t\v\f\x0E-\x1F\x7F\x81\x8D\x8F\x90\x9D\xA0-\uFFFF]/g,Kf=/[|\\{}()[\]^$+*?.]/g,Mi=new WeakMap;function Fi(e,t){if(e=e.replace(t.subset?Qf(t.subset):Vf,o),t.subset||t.escapeOnly)return e;return e.replace($f,a).replace(Xf,o);function a(r,n,s){return t.format((r.charCodeAt(0)-55296)*1024+r.charCodeAt(1)-56320+65536,s.charCodeAt(n+2),t)}function o(r,n,s){return t.format(r.charCodeAt(0),s.charCodeAt(n+1),t)}}function Qf(e){let t=Mi.get(e);return t||(t=Jf(e),Mi.set(e,t)),t}function Jf(e){let t=[],a=-1;for(;++a<e.length;)t.push(e[a].replace(Kf,"\\$&"));return new RegExp("(?:"+t.join("|")+")","g")}f();f();var Yf=/[\dA-Fa-f]/;function Di(e,t,a){let o="&#x"+e.toString(16).toUpperCase();return a&&t&&!Yf.test(String.fromCharCode(t))?o:o+";"}f();var Zf=/\d/;function Bi(e,t,a){let o="&#"+String(e);return a&&t&&!Zf.test(String.fromCharCode(t))?o:o+";"}f();f();var Ei=["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"];f();var $a={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"};f();var _i=["cent","copy","divide","gt","lt","not","para","times"];var Ni={}.hasOwnProperty,nr={},Xa;for(Xa in $a)Ni.call($a,Xa)&&(nr[$a[Xa]]=Xa);var ep=/[^\dA-Za-z]/;function Oi(e,t,a,o){let r=String.fromCharCode(e);if(Ni.call(nr,r)){let n=nr[r],s="&"+n;return a&&Ei.includes(n)&&!_i.includes(n)&&(!o||t&&t!==61&&ep.test(String.fromCharCode(t)))?s:s+";"}return""}function Ui(e,t,a){let o=Di(e,t,a.omitOptionalSemicolons),r;if((a.useNamedReferences||a.useShortestReferences)&&(r=Oi(e,t,a.omitOptionalSemicolons,a.attribute)),(a.useShortestReferences||!r)&&a.useShortestReferences){let n=Bi(e,t,a.omitOptionalSemicolons);n.length<o.length&&(o=n)}return r&&(!a.useShortestReferences||r.length<o.length)?r:o}function Xe(e,t){return Fi(e,Object.assign({format:Ui},t))}var tp=/^>|^->|<!--|-->|--!>|<!-$/g,ap=[">"],op=["<",">"];function Hi(e,t,a,o){return o.settings.bogusComments?"<?"+Xe(e.value,Object.assign({},o.settings.characterReferences,{subset:ap}))+">":"<!--"+e.value.replace(tp,r)+"-->";function r(n){return Xe(n,Object.assign({},o.settings.characterReferences,{subset:op}))}}f();function qi(e,t,a,o){return"<!"+(o.settings.upperDoctype?"DOCTYPE":"doctype")+(o.settings.tightDoctype?"":" ")+"html>"}f();f();f();var ue=Wi(1),sr=Wi(-1),rp=[];function Wi(e){return t;function t(a,o,r){let n=a?a.children:rp,s=(o||0)+e,i=n[s];if(!r)for(;i&&St(i);)s+=e,i=n[s];return i}}f();var np={}.hasOwnProperty;function Ka(e){return t;function t(a,o,r){return np.call(e,a.tagName)&&e[a.tagName](a,o,r)}}var ca=Ka({body:ip,caption:ir,colgroup:ir,dd:cp,dt:dp,head:ir,html:sp,li:up,optgroup:fp,option:pp,p:lp,rp:Gi,rt:Gi,tbody:hp,td:ji,tfoot:gp,th:ji,thead:mp,tr:wp});function ir(e,t,a){let o=ue(a,t,!0);return!o||o.type!=="comment"&&!(o.type==="text"&&St(o.value.charAt(0)))}function sp(e,t,a){let o=ue(a,t);return!o||o.type!=="comment"}function ip(e,t,a){let o=ue(a,t);return!o||o.type!=="comment"}function lp(e,t,a){let o=ue(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 up(e,t,a){let o=ue(a,t);return!o||o.type==="element"&&o.tagName==="li"}function dp(e,t,a){let o=ue(a,t);return!!(o&&o.type==="element"&&(o.tagName==="dt"||o.tagName==="dd"))}function cp(e,t,a){let o=ue(a,t);return!o||o.type==="element"&&(o.tagName==="dt"||o.tagName==="dd")}function Gi(e,t,a){let o=ue(a,t);return!o||o.type==="element"&&(o.tagName==="rp"||o.tagName==="rt")}function fp(e,t,a){let o=ue(a,t);return!o||o.type==="element"&&o.tagName==="optgroup"}function pp(e,t,a){let o=ue(a,t);return!o||o.type==="element"&&(o.tagName==="option"||o.tagName==="optgroup")}function mp(e,t,a){let o=ue(a,t);return!!(o&&o.type==="element"&&(o.tagName==="tbody"||o.tagName==="tfoot"))}function hp(e,t,a){let o=ue(a,t);return!o||o.type==="element"&&(o.tagName==="tbody"||o.tagName==="tfoot")}function gp(e,t,a){return!ue(a,t)}function wp(e,t,a){let o=ue(a,t);return!o||o.type==="element"&&o.tagName==="tr"}function ji(e,t,a){let o=ue(a,t);return!o||o.type==="element"&&(o.tagName==="td"||o.tagName==="th")}f();var zi=Ka({body:Lp,colgroup:Ip,head:Cp,html:xp,tbody:Sp});function xp(e){let t=ue(e,-1);return!t||t.type!=="comment"}function Cp(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 Lp(e){let t=ue(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 Ip(e,t,a){let o=sr(a,t),r=ue(e,-1,!0);return a&&o&&o.type==="element"&&o.tagName==="colgroup"&&ca(o,a.children.indexOf(o),a)?!1:!!(r&&r.type==="element"&&r.tagName==="col")}function Sp(e,t,a){let o=sr(a,t),r=ue(e,-1);return a&&o&&o.type==="element"&&(o.tagName==="thead"||o.tagName==="tbody")&&ca(o,a.children.indexOf(o),a)?!1:!!(r&&r.type==="element"&&r.tagName==="tr")}var Qa={name:[[`
|
|
68
|
+
`):e}function Qn(e){let{apiKey:t,apiUrl:a,source:o,systemPrompt:r,maxSteps:n,beforeRequest:s,mcpServerUrl:i,resolveConfig:l,debug:u,webSearch:d}=e,c=We("chat",u);return async function(m){c("\u2192 POST",m.url);try{let h=await m.json(),L=h.messages??[],C=h.sessionId,S=h.modelContext,x=r,I=typeof h.extra=="object"&&h.extra!==null&&!Array.isArray(h.extra)?h.extra:void 0,b=h.visitorContext??null,k=Xn(m),P={geo:k,client:b};if(c("body parsed \u2014 messages:",L.length,"sessionId:",C??"(none)","geo:",JSON.stringify(k)),s){c("running beforeRequest hook");try{let D=await s({messages:L,sessionId:C,modelContext:S,request:m,visitor:P});D&&(D.messages&&(L=D.messages),D.systemPrompt!==void 0&&(x=D.systemPrompt),D.sessionId!==void 0&&(C=D.sessionId),D.modelContext!==void 0&&(S=D.modelContext)),c("beforeRequest hook done \u2014 messages:",L.length,"sessionId:",C??"(none)")}catch(D){console.error("[waniwani:chat] beforeRequest hook error:",D);let H=D instanceof Pe?D.status:400,T=D instanceof Error?D.message:"Request rejected";return c("\u2190 returning",H,"from hook error"),Response.json({error:T},{status:H})}}let F=i??(await l()).mcpServerUrl;c("mcpServerUrl:",F),x=Kn(x,S);let R=`${a}/api/mcp/chat`;c("forwarding to",R);let _=m.headers.get("user-agent"),M=await fetch(R,{method:"POST",headers:{"Content-Type":"application/json","X-WaniWani-Stream-Protocol":"2",...t?{Authorization:`Bearer ${t}`}:{},..._?{"X-Client-User-Agent":_}:{}},body:JSON.stringify({messages:L,mcpServerUrl:F,sessionId:C,source:o,systemPrompt:x,maxSteps:n,visitor:P,webSearch:d,...I&&{extra:I}}),signal:m.signal});if(c("upstream response status:",M.status),!M.ok){let D=await M.text().catch(()=>"");return c("\u2190 returning",M.status,"upstream error:",D),new Response(D,{status:M.status,headers:{"Content-Type":M.headers.get("Content-Type")??"application/json"}})}let E=new Headers({"Content-Type":M.headers.get("Content-Type")??"text/event-stream"}),v=M.headers.get("x-session-id");return v&&E.set("x-session-id",v),c("\u2190 streaming response",M.status,"body null?",M.body===null),new Response(M.body,{status:M.status,headers:E})}catch(h){console.error("[waniwani:chat] handler error:",h);let L=h instanceof Error?h.message:"Unknown error occurred",C=h instanceof Pe?h.status:500;return c("\u2190 returning",C,"from caught error"),Response.json({error:L},{status:C})}}}f();function Jn(e){let{mcpServerUrl:t,resolveConfig:a,debug:o}=e,r=We("resource",o);return async function(s){r("\u2192 GET",s.toString());try{let i=s.searchParams.get("uri");if(r("uri:",i??"(missing)"),!i)return r("\u2190 400 missing uri"),Response.json({error:"Missing uri query parameter"},{status:400});let l=t??(await a()).mcpServerUrl;r("mcpServerUrl:",l);let u,d;try{[{createMCPClient:u},{StreamableHTTPClientTransport:d}]=await Promise.all([import("@ai-sdk/mcp"),import("@modelcontextprotocol/sdk/client/streamableHttp.js")]),r("MCP deps loaded")}catch(p){return console.error("[waniwani:resource] MCP deps import failed:",p),Response.json({error:"MCP resource handler requires @ai-sdk/mcp and @modelcontextprotocol/sdk. Install them to enable resource serving."},{status:501})}r("creating MCP client for",l);let c=await u({transport:new d(new URL(l))});try{r("reading resource:",i);let p=await c.readResource({uri:i});r("resource contents count:",p.contents.length);let m=p.contents[0];if(!m)return r("\u2190 404 resource not found"),Response.json({error:"Resource not found"},{status:404});let h;return"text"in m&&typeof m.text=="string"?h=m.text:"blob"in m&&typeof m.blob=="string"&&(h=atob(m.blob)),h?(r("\u2190 200 HTML length:",h.length),new Response(h,{headers:{"Content-Type":"text/html","Cache-Control":"private, max-age=300"}})):(r("\u2190 404 resource has no content, keys:",Object.keys(m)),Response.json({error:"Resource has no content"},{status:404}))}finally{await c.close(),r("MCP client closed")}}catch(i){console.error("[waniwani:resource] handler error:",i);let l=i instanceof Error?i.message:"Unknown error occurred",u=i instanceof Pe?i.status:500;return r("\u2190 returning",u,"from caught error"),Response.json({error:l},{status:u})}}}f();function Yn(e){let{mcpServerUrl:t,resolveConfig:a,debug:o,source:r}=e,n=We("tool",o);return async function(i){n("\u2192 POST",i.url);try{let l=await i.json(),{name:u,arguments:d}=l,c=i.headers.get("x-session-id")?.trim();if(!u||typeof u!="string")return n("\u2190 400 missing tool name"),Response.json({error:"Missing tool name"},{status:400});n("tool:",u,"args:",JSON.stringify(d),"sessionId:",c||"(none)");let p=t??(await a()).mcpServerUrl;n("mcpServerUrl:",p);let m,h;try{[{Client:m},{StreamableHTTPClientTransport:h}]=await Promise.all([import("@modelcontextprotocol/sdk/client/index.js"),import("@modelcontextprotocol/sdk/client/streamableHttp.js")]),n("MCP deps loaded")}catch(S){return console.error("[waniwani:tool] MCP deps import failed:",S),Response.json({error:"MCP tool handler requires @modelcontextprotocol/sdk. Install it to enable tool calls."},{status:501})}n("creating MCP client for",p);let L=new h(new URL(p)),C=new m({name:"waniwani-tool-caller",version:"1.0.0"});await C.connect(L);try{n("calling tool:",u);let S={};c&&(S["waniwani/sessionId"]=c),r&&(S["waniwani/source"]=r);let x=await C.callTool({name:u,arguments:d??{},...Object.keys(S).length>0?{_meta:S}:{}});return n("tool result received"),Response.json({content:x.content,structuredContent:x.structuredContent,_meta:x._meta,isError:x.isError})}finally{await C.close(),n("MCP client closed")}}catch(l){console.error("[waniwani:tool] handler error:",l);let u=l instanceof Error?l.message:"Unknown error occurred",d=l instanceof Pe?l.status:500;return n("\u2190 returning",d,"from caught error"),Response.json({error:u},{status:d})}}}f();function Zn(e){let{mcpServerUrl:t,resolveConfig:a,debug:o}=e,r=We("tools-list",o);return async function(){r("\u2192 GET tools/list");try{let s=t??(await a()).mcpServerUrl;r("mcpServerUrl:",s);let i,l;try{[{createMCPClient:i},{StreamableHTTPClientTransport:l}]=await Promise.all([import("@ai-sdk/mcp"),import("@modelcontextprotocol/sdk/client/streamableHttp.js")]),r("MCP deps loaded")}catch(d){return console.error("[waniwani:tools-list] MCP deps import failed:",d),Response.json({error:"MCP tools list handler requires @ai-sdk/mcp and @modelcontextprotocol/sdk. Install them to enable tool discovery."},{status:501})}r("creating MCP client for",s);let u=await i({transport:new l(new URL(s))});try{r("listing tools");let d=await u.listTools();r("tools count:",d.tools.length);let c={tools:d.tools.map(p=>({name:p.name,...p.title!==void 0&&{title:p.title},...p.description!==void 0&&{description:p.description},...p.inputSchema!==void 0&&{inputSchema:p.inputSchema},...p.outputSchema!==void 0&&{outputSchema:p.outputSchema},...p.annotations!==void 0&&{annotations:p.annotations},...p._meta!==void 0&&{_meta:p._meta}})),...d.nextCursor!==void 0&&{nextCursor:d.nextCursor}};return r("\u2190 200"),Response.json(c,{headers:{"Cache-Control":"private, max-age=60"}})}finally{await u.close(),r("MCP client closed")}}catch(s){console.error("[waniwani:tools-list] handler error:",s);let i=s instanceof Error?s.message:"Unknown error occurred",l=s instanceof Pe?s.status:500;return r("\u2190 returning",l,"from caught error"),Response.json({error:i},{status:l})}}}f();var Pd=300*1e3;function es(e,t){let a=null,o=null;return async function(){if(a&&Date.now()<a.expiresAt)return a.config;if(o)return o;o=(async()=>{if(!t)throw new Pe("WANIWANI_API_KEY is required for createChatHandler",401);let n=await fetch(`${e}/api/mcp/environments/config`,{method:"GET",headers:{Authorization:`Bearer ${t}`,"Content-Type":"application/json"}});if(!n.ok){let i=await n.text().catch(()=>"");throw new Pe(`Failed to resolve MCP environment config: ${n.status} ${i}`,n.status)}let s=await n.json();return a={config:s,expiresAt:Date.now()+Pd},s})();try{return await o}finally{o=null}}}var Ad="https://app.waniwani.ai";function ts(e={}){let{apiKey:t=process.env.WANIWANI_API_KEY,apiUrl:a=Ad,source:o,systemPrompt:r,maxSteps:n=5,beforeRequest:s,mcpServerUrl:i,debug:l=!1,webSearch:u}=e,d=We("router",l),c=Vn(),p=$n(c),m=es(a,t),h=Qn({apiKey:t,apiUrl:a,source:o,systemPrompt:r,maxSteps:n,beforeRequest:s,mcpServerUrl:i,resolveConfig:m,debug:l,webSearch:zn(u)}),L=Jn({mcpServerUrl:i,resolveConfig:m,debug:l}),C=Zn({mcpServerUrl:i,resolveConfig:m,debug:l}),S=Yn({mcpServerUrl:i,resolveConfig:m,debug:l,source:o}),x=process.env.WANIWANI_EVAL==="1";async function I(F){d("\u2192 GET",F.url);try{let R=new URL(F.url),M=R.pathname.replace(/\/$/,"").split("/").filter(Boolean).at(-1);if(d("pathname:",R.pathname,"subRoute:",M),x&&M==="scenarios"){d("dispatching to scenarios handler (proxy to app API)");try{let v=await(await fetch(`${a}/api/mcp/scenarios`,{headers:{...t?{Authorization:`Bearer ${t}`}:{}}})).json();return p(v.data??v,200)}catch{return p([],200)}}if(M==="resource"){d("dispatching to resource handler");let E=await L(R);return d("\u2190 resource handler returned",E.status),c(E)}if(M==="config")return d("dispatching to config handler"),p({debug:l,eval:x},200);if(M==="tools"){d("dispatching to tools-list handler");let E=await C();return d("\u2190 tools-list handler returned",E.status),c(E)}return d("\u2190 404 no matching sub-route for",M),p({error:"Not found"},404)}catch(R){console.error("[waniwani:router] GET handler error:",R);let _=R instanceof Error?R.message:"Unknown error occurred";return d("\u2190 500 from caught error"),p({error:_},500)}}async function b(F){d("\u2192 POST",F.url);try{let R=new URL(F.url),M=R.pathname.replace(/\/$/,"").split("/").filter(Boolean).at(-1);if(d("pathname:",R.pathname,"subRoute:",M),x&&M==="scenarios"){d("dispatching to save-scenario handler (proxy to app API)");try{let v=await F.json(),D=await fetch(`${a}/api/mcp/scenarios`,{method:"POST",headers:{"Content-Type":"application/json",...t?{Authorization:`Bearer ${t}`}:{}},body:JSON.stringify(v)}),H=await D.json();return D.ok?p({ok:!0,scenario:H.data},200):p({error:H.message??"Failed to save scenario"},D.status)}catch(v){let D=v instanceof Error?v.message:"Failed to save scenario";return p({error:D},400)}}if(M==="tool"){d("dispatching to tool handler");let v=await S(F);return d("\u2190 tool handler returned",v.status),c(v)}d("dispatching to chat handler");let E=await h(F);return c(E)}catch(R){console.error("[waniwani:router] POST handler error:",R);let _=R instanceof Error?R.message:"Unknown error occurred";return d("\u2190 500 from caught error"),p({error:_},500)}}async function k(F){d("\u2192 PATCH",F.url);try{let R=new URL(F.url),_=R.pathname.replace(/\/$/,"").split("/").filter(Boolean),M=_.at(-1),E=_.at(-2);if(d("pathname:",R.pathname,"subRoute:",E,"id:",M),x&&E==="scenarios"&&M){d("dispatching to update-scenario handler (proxy to app API)");try{let v=await F.json(),D=await fetch(`${a}/api/mcp/scenarios/${M}`,{method:"PATCH",headers:{"Content-Type":"application/json",...t?{Authorization:`Bearer ${t}`}:{}},body:JSON.stringify(v)}),H=await D.json();return D.ok?p({ok:!0,scenario:H.data},200):p({error:H.message??"Failed to update scenario"},D.status)}catch(v){let D=v instanceof Error?v.message:"Failed to update scenario";return p({error:D},400)}}return d("\u2190 404 no matching sub-route for PATCH",E),p({error:"Not found"},404)}catch(R){console.error("[waniwani:router] PATCH handler error:",R);let _=R instanceof Error?R.message:"Unknown error occurred";return d("\u2190 500 from caught error"),p({error:_},500)}}function P(){return c(new Response(null,{status:204}))}return{handleChat:h,handleResource:L,handleTool:S,routeGet:I,routePost:b,routePatch:k,handleOptions:P}}var as=!1;function JC(e,t){!as&&process.env.NODE_ENV!=="test"&&(console.warn("[waniwani-sdk] toNextJsHandler is deprecated; switch to toExpressJsHandler from @waniwani/sdk/express-js. It will be removed in a follow-up release."),as=!0);let{apiKey:a,apiUrl:o}=e._config,r=t?.debug??process.env.WANIWANI_DEBUG==="1",n=ts({...t?.chat,apiKey:a,apiUrl:o,source:t?.source,debug:r});return{POST:n.routePost,GET:n.routeGet,PATCH:n.routePatch,OPTIONS:()=>n.handleOptions()}}f();import{forwardRef as Tg,useCallback as $r,useEffect as vg,useImperativeHandle as Pg,useRef as bu,useState as ku}from"react";f();f();f();import{forwardRef as Md,createElement as Fd}from"react";f();var Ra=(...e)=>e.filter((t,a,o)=>!!t&&t.trim()!==""&&o.indexOf(t)===a).join(" ").trim();f();var os=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();f();f();var rs=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(t,a,o)=>o?o.toUpperCase():a.toLowerCase());var Fo=e=>{let t=rs(e);return t.charAt(0).toUpperCase()+t.slice(1)};f();import{forwardRef as Rd,createElement as is}from"react";f();var ns={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"};f();var ss=e=>{for(let t in e)if(t.startsWith("aria-")||t==="role"||t==="title")return!0;return!1};var ls=Rd(({color:e="currentColor",size:t=24,strokeWidth:a=2,absoluteStrokeWidth:o,className:r="",children:n,iconNode:s,...i},l)=>is("svg",{ref:l,...ns,width:t,height:t,stroke:e,strokeWidth:o?Number(a)*24/Number(t):a,className:Ra("lucide",r),...!n&&!ss(i)&&{"aria-hidden":"true"},...i},[...s.map(([u,d])=>is(u,d)),...Array.isArray(n)?n:[n]]));var j=(e,t)=>{let a=Md(({className:o,...r},n)=>Fd(ls,{ref:n,iconNode:t,className:Ra(`lucide-${os(Fo(e))}`,`lucide-${e}`,o),...r}));return a.displayName=Fo(e),a};f();var Dd=[["path",{d:"M12 5v14",key:"s699le"}],["path",{d:"m19 12-7 7-7-7",key:"1idqje"}]],Ht=j("arrow-down",Dd);f();var Bd=[["path",{d:"m5 12 7-7 7 7",key:"hav0vg"}],["path",{d:"M12 19V5",key:"x0mq9r"}]],qt=j("arrow-up",Bd);f();var Ed=[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]],Wt=j("check",Ed);f();var _d=[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]],Je=j("chevron-down",_d);f();var Nd=[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]],Gt=j("chevron-right",Nd);f();var Od=[["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"}]],jt=j("clipboard-copy",Od);f();var Ud=[["path",{d:"M12 6v6l4 2",key:"mmk7yg"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]],Xe=j("clock",Ud);f();var Hd=[["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"}]],zt=j("file",Hd);f();var qd=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20",key:"13o1zl"}],["path",{d:"M2 12h20",key:"9i4pu4"}]],Vt=j("globe",qd);f();var Wd=[["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"}]],$t=j("loader",Wd);f();var Gd=[["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"}]],Xt=j("paperclip",Gd);f();var jd=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}]],Kt=j("square",jd);f();var zd=[["path",{d:"M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.106-3.105c.32-.322.863-.22.983.218a6 6 0 0 1-8.259 7.057l-7.91 7.91a1 1 0 0 1-2.999-3l7.91-7.91a6 6 0 0 1 7.057-8.259c.438.12.54.662.219.984z",key:"1ngwbx"}]],it=j("wrench",zd);f();var Vd=[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]],lt=j("x",Vd);f();var $d=[["path",{d:"M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z",key:"1xq2db"}]],Qt=j("zap",$d);import{useCallback as dc}from"react";f();import{useCallback as Ye,useMemo as Xd,useRef as Kd,useState as Do}from"react";var Qd={damping:.7,stiffness:.05,mass:1.25},Jd=70,Yd=1e3/60,Zd=350,Ma=!1;globalThis.document?.addEventListener("mousedown",()=>{Ma=!0});globalThis.document?.addEventListener("mouseup",()=>{Ma=!1});globalThis.document?.addEventListener("click",()=>{Ma=!1});var ds=(e={})=>{let[t,a]=Do(!1),[o,r]=Do(e.initial!==!1),[n,s]=Do(!1),i=Kd(null);i.current=e;let l=Ye(()=>{if(!Ma)return!1;let x=window.getSelection();if(!x||!x.rangeCount)return!1;let I=x.getRangeAt(0);return I.commonAncestorContainer.contains(C.current)||C.current?.contains(I.commonAncestorContainer)},[]),u=Ye(x=>{c.isAtBottom=x,r(x)},[]),d=Ye(x=>{c.escapedFromLock=x,a(x)},[]),c=Xd(()=>{let x;return{escapedFromLock:t,isAtBottom:o,resizeDifference:0,accumulated:0,velocity:0,listeners:new Set,get scrollTop(){return C.current?.scrollTop??0},set scrollTop(I){C.current&&(C.current.scrollTop=I,c.ignoreScrollToTop=C.current.scrollTop)},get targetScrollTop(){return!C.current||!S.current?0:C.current.scrollHeight-1-C.current.clientHeight},get calculatedTargetScrollTop(){if(!C.current||!S.current)return 0;let{targetScrollTop:I}=this;if(!e.targetScrollTop)return I;if(x?.targetScrollTop===I)return x.calculatedScrollTop;let b=Math.max(Math.min(e.targetScrollTop(I,{scrollElement:C.current,contentElement:S.current}),I),0);return x={targetScrollTop:I,calculatedScrollTop:b},requestAnimationFrame(()=>{x=void 0}),b},get scrollDifference(){return this.calculatedTargetScrollTop-this.scrollTop},get isNearBottom(){return this.scrollDifference<=Jd}}},[]),p=Ye((x={})=>{typeof x=="string"&&(x={animation:x}),x.preserveScrollPosition||u(!0);let I=Date.now()+(Number(x.wait)||0),b=Eo(i.current,x.animation),{ignoreEscapes:k=!1}=x,P,F=c.calculatedTargetScrollTop;x.duration instanceof Promise?x.duration.finally(()=>{P=Date.now()}):P=I+(x.duration??0);let R=async()=>{let _=new Promise(requestAnimationFrame).then(()=>{if(!c.isAtBottom)return c.animation=void 0,!1;let{scrollTop:M}=c,E=performance.now(),v=(E-(c.lastTick??E))/Yd;if(c.animation||(c.animation={behavior:b,promise:_,ignoreEscapes:k}),c.animation.behavior===b&&(c.lastTick=E),l()||I>Date.now())return R();if(M<Math.min(F,c.calculatedTargetScrollTop)){if(c.animation?.behavior===b){if(b==="instant")return c.scrollTop=c.calculatedTargetScrollTop,R();c.velocity=(b.damping*c.velocity+b.stiffness*c.scrollDifference)/b.mass,c.accumulated+=c.velocity*v,c.scrollTop+=c.accumulated,c.scrollTop!==M&&(c.accumulated=0)}return R()}return P>Date.now()?(F=c.calculatedTargetScrollTop,R()):(c.animation=void 0,c.scrollTop<c.calculatedTargetScrollTop?p({animation:Eo(i.current,i.current.resize),ignoreEscapes:k,duration:Math.max(0,P-Date.now())||void 0}):c.isAtBottom)});return _.then(M=>(requestAnimationFrame(()=>{c.animation||(c.lastTick=void 0,c.velocity=0)}),M))};return x.wait!==!0&&(c.animation=void 0),c.animation?.behavior===b?c.animation.promise:R()},[u,l,c]),m=Ye(()=>{d(!0),u(!1)},[d,u]),h=Ye(({target:x})=>{if(x!==C.current)return;let{scrollTop:I,ignoreScrollToTop:b}=c,{lastScrollTop:k=I}=c;c.lastScrollTop=I,c.ignoreScrollToTop=void 0,b&&b>I&&(k=b),s(c.isNearBottom),setTimeout(()=>{if(c.resizeDifference||I===b)return;if(l()){d(!0),u(!1);return}let P=I>k,F=I<k;if(c.animation?.ignoreEscapes){c.scrollTop=k;return}F&&(d(!0),u(!1)),P&&d(!1),!c.escapedFromLock&&c.isNearBottom&&u(!0)},1)},[d,u,l,c]),L=Ye(({target:x,deltaY:I})=>{let b=x;for(;!["scroll","auto"].includes(getComputedStyle(b).overflow);){if(!b.parentElement)return;b=b.parentElement}b===C.current&&I<0&&C.current.scrollHeight>C.current.clientHeight&&!c.animation?.ignoreEscapes&&(d(!0),u(!1))},[d,u,c]),C=us(x=>{C.current?.removeEventListener("scroll",h),C.current?.removeEventListener("wheel",L),x?.addEventListener("scroll",h,{passive:!0}),x?.addEventListener("wheel",L,{passive:!0})},[]),S=us(x=>{if(c.resizeObserver?.disconnect(),!x)return;let I;c.resizeObserver=new ResizeObserver(([b])=>{let{height:k}=b.contentRect,P=k-(I??k);if(c.resizeDifference=P,c.scrollTop>c.targetScrollTop&&(c.scrollTop=c.targetScrollTop),s(c.isNearBottom),P>=0){let F=Eo(i.current,I?i.current.resize:i.current.initial);p({animation:F,wait:!0,preserveScrollPosition:!0,duration:F==="instant"?void 0:Zd})}else c.isNearBottom&&(d(!1),u(!0));I=k,requestAnimationFrame(()=>{setTimeout(()=>{c.resizeDifference===P&&(c.resizeDifference=0)},1)})}),c.resizeObserver?.observe(x)},[]);return{contentRef:S,scrollRef:C,scrollToBottom:p,stopScroll:m,isAtBottom:o||n,isNearBottom:n,escapedFromLock:t,state:c}};function us(e,t){let a=Ye(o=>(a.current=o,e(o)),t);return a}var Bo=new Map;function Eo(...e){let t={...Qd},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 Bo.has(o)||Bo.set(o,Object.freeze(t)),a?"instant":Bo.get(o)}f();import*as ut from"react";import{createContext as ec,useContext as tc,useEffect as ac,useImperativeHandle as oc,useLayoutEffect as rc,useMemo as nc,useRef as sc}from"react";var cs=ec(null),ic=typeof window<"u"?rc:ac;function Jt({instance:e,children:t,resize:a,initial:o,mass:r,damping:n,stiffness:s,targetScrollTop:i,contextRef:l,...u}){let d=sc(null),c=ut.useCallback((k,P)=>(b?.targetScrollTop??i)?.(k,P)??k,[i]),p=ds({mass:r,damping:n,stiffness:s,resize:a,initial:o,targetScrollTop:c}),{scrollRef:m,contentRef:h,scrollToBottom:L,stopScroll:C,isAtBottom:S,escapedFromLock:x,state:I}=e??p,b=nc(()=>({scrollToBottom:L,stopScroll:C,scrollRef:m,isAtBottom:S,escapedFromLock:x,contentRef:h,state:I,get targetScrollTop(){return d.current},set targetScrollTop(k){d.current=k}}),[L,S,h,m,C,x,I]);return oc(l,()=>b,[b]),ic(()=>{m.current&&getComputedStyle(m.current).overflow==="visible"&&(m.current.style.overflow="auto")},[]),ut.createElement(cs.Provider,{value:b},ut.createElement("div",{...u},typeof t=="function"?t(b):t))}(function(e){function t({children:a,scrollClassName:o,...r}){let n=_o();return ut.createElement("div",{ref:n.scrollRef,style:{height:"100%",width:"100%",scrollbarGutter:"stable both-edges"},className:o},ut.createElement("div",{...r,ref:n.contentRef},typeof a=="function"?a(n):a))}e.Content=t})(Jt||(Jt={}));function _o(){let e=tc(cs);if(!e)throw new Error("use-stick-to-bottom component context must be used within a StickToBottom component");return e}f();var lc=on({prefix:"ww"});function A(...e){return lc(an(e))}f();import{jsx as uc}from"react/jsx-runtime";var Ge=({className:e,variant:t="default",size:a="default",type:o="button",...r})=>uc("button",{type:o,className:A("ww:inline-flex ww:cursor-pointer ww:items-center ww:justify-center ww:rounded-md ww:font-medium ww:transition-colors ww:disabled:pointer-events-none ww:disabled:opacity-50",t==="default"&&"ww:bg-primary ww:text-primary-foreground ww:hover:bg-primary/90",t==="outline"&&"ww:border ww:border-border ww:bg-background ww:hover:bg-accent ww:hover:text-accent-foreground",t==="ghost"&&"ww:hover:bg-accent ww:hover:text-accent-foreground",a==="default"&&"ww:h-9 ww:px-4 ww:py-2 ww:text-sm",a==="sm"&&"ww:h-8 ww:px-3 ww:text-xs",a==="icon"&&"ww:size-9 ww:!rounded-full",a==="icon-sm"&&"ww:size-7 ww:!rounded-full",e),...r});import{jsx as Fa}from"react/jsx-runtime";var fs=({className:e,...t})=>Fa(Jt,{className:A("ww:relative ww:flex-1 ww:overflow-y-hidden",e),initial:"smooth",resize:"smooth",role:"log",...t}),ps=({className:e,...t})=>Fa(Jt.Content,{className:A("ww:flex ww:flex-col ww:gap-6 ww:px-4 ww:py-6 ww:mx-auto ww:w-full ww:max-w-3xl",e),...t}),ms=({className:e,...t})=>{let{isAtBottom:a,scrollToBottom:o}=_o(),r=dc(()=>{o()},[o]);return!a&&Fa(Ge,{className:A("ww:absolute ww:bottom-4 ww:left-[50%] ww:translate-x-[-50%] ww:rounded-full",e),onClick:r,size:"icon",variant:"outline",...t,children:Fa(Ht,{className:"ww:size-4"})})};f();f();import gs from"crypto";f();var hs="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";var cc=128,dt,bt,fc=e=>{!dt||dt.length<e?(dt=Buffer.allocUnsafe(e*cc),gs.randomFillSync(dt),bt=0):bt+e>dt.length&&(gs.randomFillSync(dt),bt=0),bt+=e};var Yt=(e=21)=>{fc(e|=0);let t="";for(let a=bt-e;a<bt;a++)t+=hs[dt[a]&63];return t};import{createContext as xc,useCallback as Ke,useContext as Cc,useEffect as Ho,useMemo as Lc,useRef as qo,useState as ws}from"react";f();f();import{createContext as hc,useContext as gc,useEffect as AS,useMemo as RS,useState as MS}from"react";f();f();f();f();var Oo={promptInput:{placeholder:"What would you like to know?",uploadFiles:"Upload files",stop:"Stop",submit:"Submit",removeAttachments:"Remove all attachments"},workingIndicator:{default:"On it\u2026"},reasoning:{thinking:"Thinking\u2026",thoughtBrief:"Thought for a few seconds",thoughtForSeconds:e=>`Thought for ${e} second${e===1?"":"s"}`},chainOfThought:{working:"Working on it\u2026",done:"Thought process"},tool:{copy:"Copy",copied:"Copied",request:"Request",response:"Response",error:"Error"},attachments:{attachmentFallback:"attachment",fileFallback:"file"},threadMenu:{newChat:"New chat",threadHistory:"Thread history",deleteThread:"Delete thread",noPreviousChats:"No previous chats yet.",hiddenThreads:e=>`${e} older thread${e===1?"":"s"} hidden`},chatQueue:{attachmentFallback:"(attachment)",removeFromQueue:"Remove from queue",queued:e=>`${e} queued`},poweredBy:{label:"AI agent powered by"},aiDisclaimer:{default:"can make mistakes"},exportSession:{saving:"saving...",saved:"saved",error:"error",export:"export",tooltip:"Save scenario to Waniwani"},widgetErrorBoundary:{failedToLoad:"Widget failed to load",retry:"Retry"},launcher:{prompt:"Ask anything\u2026",open:"Open chat",close:"Close chat",minimize:"Minimize"}};f();f();import{jsx as OS}from"react/jsx-runtime";var wc=hc(null);function V(){let e=gc(wc);return e||{locale:"en",t:Oo,ready:!0}}f();function Uo(e,t){let a=Date.now()-e;if(a<6e4)try{return new Intl.RelativeTimeFormat(t,{numeric:"auto",style:"narrow"}).format(0,"second")}catch{return"just now"}let o,r;a<60*6e4?(o=-Math.floor(a/6e4),r="minute"):a<1440*6e4?(o=-Math.floor(a/(60*6e4)),r="hour"):(o=-Math.floor(a/(1440*6e4)),r="day");try{return new Intl.RelativeTimeFormat(t,{numeric:"auto",style:"short"}).format(o,r)}catch{return`${Math.abs(o)}${r==="minute"?"m":r==="hour"?"h":"d"} ago`}}import{jsx as _e,jsxs as bs}from"react/jsx-runtime";var Ic=async e=>{try{let a=await(await fetch(e)).blob();return new Promise(o=>{let r=new FileReader;r.onloadend=()=>o(r.result),r.onerror=()=>o(null),r.readAsDataURL(a)})}catch{return null}},xs=xc(null),Cs=()=>{let e=Cc(xs);if(!e)throw new Error("usePromptInputAttachments must be used within a PromptInput");return e},Ls=({className:e,accept:t,multiple:a,globalDrop:o,maxFiles:r,maxFileSize:n,onSubmit:s,children:i,...l})=>{let{t:u}=V(),d=qo(null),c=qo(null),[p,m]=ws([]),h=qo(p);Ho(()=>{h.current=p},[p]);let L=Ke(()=>{d.current?.click()},[]),C=Ke(P=>{let F=[...P];if(F.length===0)return;let R=M=>n?M.size<=n:!0,_=F.filter(R);m(M=>{let E=typeof r=="number"?Math.max(0,r-M.length):void 0,v=typeof E=="number"?_.slice(0,E):_;return[...M,...v.map(D=>({filename:D.name,id:Yt(),mediaType:D.type,type:"file",url:URL.createObjectURL(D)}))]})},[r,n]),S=Ke(P=>{m(F=>{let R=F.find(_=>_.id===P);return R?.url&&URL.revokeObjectURL(R.url),F.filter(_=>_.id!==P)})},[]),x=Ke(()=>{m(P=>{for(let F of P)F.url&&URL.revokeObjectURL(F.url);return[]})},[]);Ho(()=>()=>{for(let P of h.current)P.url&&URL.revokeObjectURL(P.url)},[]);let I=Ke(P=>{P.currentTarget.files&&C(P.currentTarget.files),P.currentTarget.value=""},[C]);Ho(()=>{if(!o)return;let P=R=>{R.dataTransfer?.types?.includes("Files")&&R.preventDefault()},F=R=>{R.dataTransfer?.types?.includes("Files")&&R.preventDefault(),R.dataTransfer?.files&&R.dataTransfer.files.length>0&&C(R.dataTransfer.files)};return document.addEventListener("dragover",P),document.addEventListener("drop",F),()=>{document.removeEventListener("dragover",P),document.removeEventListener("drop",F)}},[C,o]);let b=Ke(async P=>{P.preventDefault();let F=P.currentTarget,_=new FormData(F).get("message")||"";F.reset();let M=await Promise.all(p.map(async({id:E,...v})=>{if(v.url?.startsWith("blob:")){let D=await Ic(v.url);return{...v,url:D??v.url}}return v}));try{let E=s({files:M,text:_},P);E instanceof Promise&&await E,x()}catch{}},[p,s,x]),k=Lc(()=>({add:C,clear:x,files:p,openFileDialog:L,remove:S}),[p,C,S,x,L]);return bs(xs.Provider,{value:k,children:[_e("input",{accept:t,"aria-label":u.promptInput.uploadFiles,className:"ww:hidden",multiple:a,onChange:I,ref:d,title:u.promptInput.uploadFiles,type:"file"}),_e("form",{className:A("ww:flex ww:w-full ww:flex-col ww:rounded-lg ww:border ww:border-border ww:bg-background",e),onSubmit:b,ref:c,...l,children:i})]})};var Is=({onChange:e,onKeyDown:t,className:a,placeholder:o,...r})=>{let{t:n}=V(),s=Cs(),[i,l]=ws(!1),u=o??n.promptInput.placeholder,d=Ke(p=>{if(t?.(p),!p.defaultPrevented){if(p.key==="Enter"){if(i||p.nativeEvent.isComposing||p.shiftKey)return;p.preventDefault();let{form:m}=p.currentTarget;if(m?.querySelector('button[type="submit"]')?.disabled)return;m?.requestSubmit()}if(p.key==="Backspace"&&p.currentTarget.value===""&&s.files.length>0){p.preventDefault();let m=s.files.at(-1);m&&s.remove(m.id)}}},[t,i,s]),c=Ke(p=>{let m=p.clipboardData?.items;if(!m)return;let h=[];for(let L of m)if(L.kind==="file"){let C=L.getAsFile();C&&h.push(C)}h.length>0&&(p.preventDefault(),s.add(h))},[s]);return _e("textarea",{className:A("ww:field-sizing-content ww:max-h-48 ww:min-h-0 ww:w-full ww:resize-none ww:border-0 ww:bg-transparent ww:px-3 ww:py-2 ww:text-base ww:sm:text-sm ww:outline-none ww:placeholder:text-muted-foreground",a),name:"message",onCompositionEnd:()=>l(!1),onCompositionStart:()=>l(!0),onKeyDown:d,onPaste:c,placeholder:u,onChange:e,...r})},Ss=({className:e,status:t,onStop:a,onClick:o,children:r,...n})=>{let{t:s}=V(),i=t==="submitted"||t==="streaming",l=_e(qt,{className:"ww:size-4"});t==="submitted"?l=_e($t,{className:"ww:size-4 ww:animate-spin"}):t==="streaming"&&(l=_e(Kt,{className:"ww:size-4"}));let u=Ke(d=>{if(i&&a){d.preventDefault(),a();return}o?.(d)},[i,a,o]);return _e(Ge,{"aria-label":i?s.promptInput.stop:s.promptInput.submit,className:A("ww:bg-foreground ww:text-background ww:hover:bg-foreground ww:rounded-full",e),onClick:u,size:"icon-sm",type:i&&a?"button":"submit",variant:"ghost",...n,children:r??l})},ys=({className:e,children:t,...a})=>{let{t:o}=V(),r=Cs();return r.files.length>0?bs(Ge,{className:A("ww:group ww:relative",e),onClick:()=>r.clear(),size:"icon-sm",type:"button",variant:"ghost","aria-label":o.promptInput.removeAttachments,...a,children:[_e("span",{className:"ww:flex ww:size-5 ww:items-center ww:justify-center ww:rounded-full ww:bg-primary ww:text-[10px] ww:font-medium ww:text-primary-foreground ww:transition-opacity ww:group-hover:opacity-0",children:r.files.length}),_e(lt,{className:"ww:absolute ww:size-4 ww:opacity-0 ww:transition-opacity ww:group-hover:opacity-100"})]}):_e(Ge,{className:A(e),onClick:()=>r.openFileDialog(),size:"icon-sm",type:"button",variant:"ghost",...a,children:t??_e(Xt,{className:"ww:size-4"})})};f();import{memo as Sc,useCallback as yc}from"react";f();import{jsx as kt}from"react/jsx-runtime";var ks=({className:e,...t})=>kt("div",{className:A("ww:flex ww:flex-col ww:gap-1 ww:px-3 ww:py-2",e),...t}),Ts=({className:e,...t})=>kt("li",{className:A("ww:group ww:flex ww:items-center ww:gap-2 ww:rounded-md ww:px-2 ww:py-1 ww:text-sm ww:transition-colors ww:hover:bg-muted",e),...t}),vs=({className:e,...t})=>kt("span",{className:A("ww:inline-block ww:size-2 ww:shrink-0 ww:rounded-full ww:border ww:border-muted-foreground/50",e),...t}),Ps=({className:e,...t})=>kt("span",{className:A("ww:line-clamp-1 ww:grow ww:break-words ww:text-muted-foreground",e),...t}),As=({className:e,...t})=>kt("div",{className:A("ww:flex ww:shrink-0 ww:gap-1 ww:opacity-0 ww:transition-opacity ww:group-hover:opacity-100",e),...t}),Rs=({className:e,...t})=>kt(Ge,{className:A("ww:size-auto ww:rounded ww:p-1 ww:text-muted-foreground ww:hover:bg-muted-foreground/10 ww:hover:text-foreground",e),size:"icon",type:"button",variant:"ghost",...t});import{jsx as Ze,jsxs as Ds}from"react/jsx-runtime";var Ms=Sc(({message:e,onRemove:t})=>{let{t:a}=V(),o=yc(()=>t(e.id),[t,e.id]);return Ds(Ts,{children:[Ze(vs,{}),Ze(Ps,{children:e.text||a.chatQueue.attachmentFallback}),Ze(As,{children:Ze(Rs,{"aria-label":a.chatQueue.removeFromQueue,onClick:o,children:Ze(lt,{className:"ww:size-3"})})})]})});Ms.displayName="ChatQueueItem";function Fs({queuedMessages:e,onRemove:t,className:a}){let{t:o}=V();return e.length===0?null:Ds(ks,{className:A("ww:border-t ww:border-border",a),children:[Ze("div",{className:"ww:text-[11px] ww:font-medium ww:text-muted-foreground ww:px-2",children:o.chatQueue.queued(e.length)}),Ze("ul",{children:e.map(r=>Ze(Ms,{message:r,onRemove:t},r.id))})]})}f();import{useState as Bs}from"react";import{jsx as bc}from"react/jsx-runtime";function Es({messages:e,evalEnabled:t,api:a="/api/waniwani"}){let{t:o}=V(),[r,n]=Bs(!1),[s,i]=Bs(null),l=async()=>{let d={name:`session-${new Date().toISOString().slice(0,19)}`,type:"functional",messages:e,mode:"manual"};n(!0),i(null);try{let c=await fetch(`${a}/scenarios`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(d)});if(!c.ok)throw new Error(`${c.status}`);i("saved")}catch{i("error")}finally{n(!1),setTimeout(()=>i(null),2e3)}};if(!t||e.length===0)return null;let u=r?o.exportSession.saving:s==="saved"?o.exportSession.saved:s==="error"?o.exportSession.error:o.exportSession.export;return bc("button",{type:"button",onClick:l,disabled:r,title:o.exportSession.tooltip,className:"ww:ml-auto ww:text-[10px] ww:font-mono ww:uppercase ww:tracking-wider ww:text-muted-foreground hover:ww:text-foreground ww:cursor-pointer ww:transition-colors ww:disabled:opacity-40",children:u})}f();f();import{jsx as Zt,jsxs as Tc}from"react/jsx-runtime";var _s=({files:e,className:t,...a})=>e.length===0?null:Zt("div",{className:A("ww:flex ww:flex-wrap ww:gap-1.5",t),...a,children:e.map((o,r)=>Zt(kc,{file:o},r))});function kc({file:e}){let{t}=V();return e.mediaType?.startsWith("image/")&&e.url?Zt("img",{src:e.url,alt:e.filename??t.attachments.attachmentFallback,className:"ww:h-16 ww:max-w-32 ww:rounded ww:object-cover"}):Tc("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:[Zt(zt,{className:"ww:size-3 ww:shrink-0"}),Zt("span",{className:"ww:max-w-24 ww:truncate",children:e.filename??t.attachments.fileFallback})]})}f();import{createContext as Oc,useCallback as Uc,useContext as Hc,useEffect as qc,useMemo as Wc,useState as zo}from"react";f();import{createContext as Rc,memo as jo,useCallback as Mc,useContext as Fc,useEffect as Wo,useMemo as Dc,useRef as Ns,useState as Go}from"react";f();f();import{memo as vc}from"react";import{jsx as Ac}from"react/jsx-runtime";var Pc=({as:e="span",className:t,duration:a=2,style:o,children:r,...n})=>{let s={backgroundImage:"linear-gradient(90deg, var(--ww-color-muted-foreground) 0%, var(--ww-color-muted-foreground) 40%, var(--ww-color-foreground) 50%, var(--ww-color-muted-foreground) 60%, var(--ww-color-muted-foreground) 100%)",backgroundSize:"250% 100%",WebkitBackgroundClip:"text",backgroundClip:"text",color:"transparent",animation:`ww-shimmer ${a}s linear infinite`,...o};return Ac(e,{"data-waniwani-shimmer":"",className:A("ww:inline-block",t),style:s,...n,children:r})},Ne=vc(Pc);Ne.displayName="Shimmer";import{Fragment as _c,jsx as Oe,jsxs as Nc}from"react/jsx-runtime";var Os=Rc(null);function Us(){let e=Fc(Os);if(!e)throw new Error("Reasoning components must be used within <Reasoning>");return e}var Bc=1e3,Ec=1e3,ea=jo(({className:e,isStreaming:t=!1,open:a,defaultOpen:o,onOpenChange:r,duration:n,children:s,...i})=>{let l=o??t,u=o===!1,d=a!==void 0,[c,p]=Go(l),m=d?a:c,h=Mc(F=>{d||p(F),r?.(F)},[d,r]),[L,C]=Go(void 0),S=n??L,x=Ns(t),[I,b]=Go(!1),k=Ns(null);Wo(()=>{t?(x.current=!0,k.current===null&&(k.current=Date.now())):k.current!==null&&(C(Math.ceil((Date.now()-k.current)/Ec)),k.current=null)},[t]),Wo(()=>{t&&!m&&!u&&h(!0)},[t,m,u,h]),Wo(()=>{if(x.current&&!t&&m&&!I){let F=setTimeout(()=>{h(!1),b(!0)},Bc);return()=>clearTimeout(F)}},[t,m,I,h]);let P=Dc(()=>({isStreaming:t,isOpen:m,setIsOpen:h,duration:S}),[t,m,h,S]);return Oe(Os.Provider,{value:P,children:Oe("div",{className:A("ww:mb-4 ww:flex ww:flex-col ww:gap-2",e),"data-state":m?"open":"closed",style:{animation:"ww-fade-in 0.2s ease-out"},...i,children:s})})});ea.displayName="Reasoning";var ta=jo(({className:e,children:t,getThinkingMessage:a,hideIcon:o=!1,onClick:r,...n})=>{let{t:s}=V(),{isStreaming:i,isOpen:l,duration:u,setIsOpen:d}=Us(),p=a??((m,h)=>m||h===0?Oe(Ne,{duration:1.6,children:s.reasoning.thinking}):h===void 0?Oe("span",{children:s.reasoning.thoughtBrief}):Oe("span",{children:s.reasoning.thoughtForSeconds(h)}));return Oe("button",{type:"button","aria-expanded":l,onClick:m=>{d(!l),r?.(m)},className:A("ww:flex ww:w-full ww:items-center ww:gap-2 ww:text-sm ww:text-muted-foreground ww:transition-colors ww:hover:text-foreground",e),...n,children:t??Nc(_c,{children:[!o&&Oe(Xe,{className:"ww:size-4 ww:shrink-0"}),p(i,u)]})})});ta.displayName="ReasoningTrigger";var aa=jo(({className:e,children:t,...a})=>{let{isOpen:o}=Us();return Oe("div",{className:A("ww:grid ww:transition-[grid-template-rows,opacity] ww:duration-200 ww:ease-out",o?"ww:grid-rows-[1fr] ww:opacity-100":"ww:grid-rows-[0fr] ww:opacity-0"),children:Oe("div",{className:"ww:min-h-0 ww:overflow-hidden",children:Oe("div",{className:A("ww:text-sm ww:text-muted-foreground",e),...a,children:Oe(Mt,{children:t})})})})});aa.displayName="ReasoningContent";import{jsx as Z,jsxs as et}from"react/jsx-runtime";var Gc=500,Hs=Oc(null);function qs(){let e=Hc(Hs);if(!e)throw new Error("ChainOfThought components must be used within <ChainOfThought>");return e}function Ws({className:e,isWorking:t=!1,activeStep:a,open:o,defaultOpen:r=!1,onOpenChange:n,children:s,...i}){let l=o!==void 0,[u,d]=zo(r),c=l?o:u,p=Uc(C=>{l||d(C),n?.(C)},[l,n]),[m,h]=zo(!t);qc(()=>{if(t){h(!1);return}let C=setTimeout(()=>h(!0),Gc);return()=>clearTimeout(C)},[t]);let L=Wc(()=>({open:c,setOpen:p,isWorking:t,settled:m,activeStep:a}),[c,p,t,m,a]);return Z(Hs.Provider,{value:L,children:Z("div",{className:A("ww:mb-4 ww:flex ww:flex-col ww:gap-2",e),"data-state":c?"open":"closed",style:{animation:"ww-fade-in 0.2s ease-out"},...i,children:s})})}function Gs({className:e,label:t,workingLabel:a,children:o,...r}){let{open:n,setOpen:s,isWorking:i,settled:l,activeStep:u}=qs();if(!l){let d=u?.icon,c=u?.label??a??t??"";return Z("div",{className:A("ww:flex ww:min-h-5 ww:w-full ww:items-center ww:gap-1.5 ww:text-sm ww:text-muted-foreground",e),children:et("span",{className:"ww:flex ww:min-w-0 ww:items-center ww:gap-1.5",style:{animation:"ww-fade-in 0.25s ease-out"},children:[d&&Z(d,{className:A("ww:size-4 ww:shrink-0",i&&"ww:animate-pulse")}),Z("span",{className:"ww:truncate",children:i?Z(Ne,{duration:2.6,children:c}):c})]},c)})}return et("button",{type:"button",onClick:()=>s(!n),"aria-expanded":n,className:A("ww:flex ww:min-h-5 ww:w-full ww:items-center ww:gap-1.5 ww:text-sm ww:text-muted-foreground ww:transition-colors ww:hover:text-foreground",e),style:{animation:"ww-fade-in 0.25s ease-out"},...r,children:[Z("span",{className:"ww:truncate",children:o??t}),Z(Je,{className:A("ww:size-4 ww:shrink-0 ww:transition-transform ww:duration-200",n&&"ww:rotate-180")})]})}function js({className:e,children:t,...a}){let{open:o}=qs();return Z("div",{className:A("ww:grid ww:transition-[grid-template-rows,opacity] ww:duration-200 ww:ease-out",o?"ww:grid-rows-[1fr] ww:opacity-100":"ww:grid-rows-[0fr] ww:opacity-0"),children:Z("div",{className:"ww:min-h-0 ww:overflow-hidden",children:Z("div",{className:A("ww:flex ww:flex-col",e),...a,children:t})})})}function zs({icon:e,isLast:t,running:a,error:o}){return et("div",{className:"ww:flex ww:flex-col ww:items-center ww:self-stretch",children:[Z("span",{className:"ww:flex ww:h-5 ww:items-center",children:Z(e,{className:A("ww:size-4 ww:shrink-0",o?"ww:text-destructive":a?"ww:animate-pulse ww:text-foreground":"ww:text-muted-foreground")})}),!t&&Z("span",{className:"ww:w-px ww:flex-1 ww:bg-border"})]})}function Vo({className:e,icon:t,title:a,state:o,isLast:r=!1,children:n,...s}){let i=o==="input-available"||o==="input-streaming",l=o==="output-error",u=n!=null,[d,c]=zo(!1),p=a??"",m=i?Z(Ne,{duration:1.6,children:p}):Z("span",{className:"ww:truncate",children:p});return et("div",{className:A("ww:flex ww:gap-2",e),...s,children:[Z(zs,{icon:t,isLast:r,running:i,error:l}),et("div",{className:A("ww:min-w-0 ww:flex-1",!r&&"ww:pb-3"),children:[u?et("button",{type:"button",onClick:()=>c(h=>!h),"aria-expanded":d,className:"ww:flex ww:w-full ww:items-center ww:gap-1.5 ww:text-left ww:text-sm ww:text-muted-foreground ww:transition-colors ww:hover:text-foreground",children:[m,Z(Je,{className:A("ww:size-3.5 ww:shrink-0 ww:transition-transform ww:duration-200",d&&"ww:rotate-180")})]}):Z("div",{className:"ww:flex ww:items-center ww:text-sm ww:text-muted-foreground",children:m}),u&&Z("div",{className:A("ww:grid ww:transition-[grid-template-rows,opacity] ww:duration-200 ww:ease-out",d?"ww:grid-rows-[1fr] ww:opacity-100":"ww:grid-rows-[0fr] ww:opacity-0"),children:Z("div",{className:"ww:min-h-0 ww:overflow-hidden",children:Z("div",{className:"ww:mt-2 ww:space-y-3 ww:rounded-lg ww:border ww:border-border ww:bg-background ww:p-3",children:n})})})]})]})}function Vs({isStreaming:e=!1,isLast:t=!1,children:a}){return et("div",{className:"ww:flex ww:gap-2",children:[Z(zs,{icon:Xe,isLast:t,running:e}),Z("div",{className:A("ww:min-w-0 ww:flex-1",!t&&"ww:pb-3"),children:et(ea,{isStreaming:e,className:"ww:mb-0",children:[Z(ta,{hideIcon:!0}),Z(aa,{children:a})]})})]})}f();f();f();f();f();f();var we={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};f();var je={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};f();var Re={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"};f();f();f();function $s(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 Xs(e){return e===12288||e>=65281&&e<=65376||e>=65504&&e<=65510}function Ks(e){return e>=4352&&e<=4447||e===8986||e===8987||e===9001||e===9002||e>=9193&&e<=9196||e===9200||e===9203||e===9725||e===9726||e===9748||e===9749||e>=9776&&e<=9783||e>=9800&&e<=9811||e===9855||e>=9866&&e<=9871||e===9875||e===9889||e===9898||e===9899||e===9917||e===9918||e===9924||e===9925||e===9934||e===9940||e===9962||e===9970||e===9971||e===9973||e===9978||e===9981||e===9989||e===9994||e===9995||e===10024||e===10060||e===10062||e>=10067&&e<=10069||e===10071||e>=10133&&e<=10135||e===10160||e===10175||e===11035||e===11036||e===11088||e===11093||e>=11904&&e<=11929||e>=11931&&e<=12019||e>=12032&&e<=12245||e>=12272&&e<=12287||e>=12289&&e<=12350||e>=12353&&e<=12438||e>=12441&&e<=12543||e>=12549&&e<=12591||e>=12593&&e<=12686||e>=12688&&e<=12773||e>=12783&&e<=12830||e>=12832&&e<=12871||e>=12880&&e<=42124||e>=42128&&e<=42182||e>=43360&&e<=43388||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65106||e>=65108&&e<=65126||e>=65128&&e<=65131||e>=94176&&e<=94180||e>=94192&&e<=94198||e>=94208&&e<=101589||e>=101631&&e<=101662||e>=101760&&e<=101874||e>=110576&&e<=110579||e>=110581&&e<=110587||e===110589||e===110590||e>=110592&&e<=110882||e===110898||e>=110928&&e<=110930||e===110933||e>=110948&&e<=110951||e>=110960&&e<=111355||e>=119552&&e<=119638||e>=119648&&e<=119670||e===126980||e===127183||e===127374||e>=127377&&e<=127386||e>=127488&&e<=127490||e>=127504&&e<=127547||e>=127552&&e<=127560||e===127568||e===127569||e>=127584&&e<=127589||e>=127744&&e<=127776||e>=127789&&e<=127797||e>=127799&&e<=127868||e>=127870&&e<=127891||e>=127904&&e<=127946||e>=127951&&e<=127955||e>=127968&&e<=127984||e===127988||e>=127992&&e<=128062||e===128064||e>=128066&&e<=128252||e>=128255&&e<=128317||e>=128331&&e<=128334||e>=128336&&e<=128359||e===128378||e===128405||e===128406||e===128420||e>=128507&&e<=128591||e>=128640&&e<=128709||e===128716||e>=128720&&e<=128722||e>=128725&&e<=128728||e>=128732&&e<=128735||e===128747||e===128748||e>=128756&&e<=128764||e>=128992&&e<=129003||e===129008||e>=129292&&e<=129338||e>=129340&&e<=129349||e>=129351&&e<=129535||e>=129648&&e<=129660||e>=129664&&e<=129674||e>=129678&&e<=129734||e===129736||e>=129741&&e<=129756||e>=129759&&e<=129770||e>=129775&&e<=129784||e>=131072&&e<=196605||e>=196608&&e<=262141}function Qs(e){return $s(e)?"ambiguous":Xs(e)?"fullwidth":e===8361||e>=65377&&e<=65470||e>=65474&&e<=65479||e>=65482&&e<=65487||e>=65490&&e<=65495||e>=65498&&e<=65500||e>=65512&&e<=65518?"halfwidth":e>=32&&e<=126||e===162||e===163||e===165||e===166||e===172||e===175||e>=10214&&e<=10221||e===10629||e===10630?"narrow":Ks(e)?"wide":"neutral"}function jc(e){if(!Number.isSafeInteger(e))throw new TypeError(`Expected a code point, got \`${typeof e}\`.`)}function Js(e){return jc(e),Qs(e)}var zc=Object.defineProperty,Vc=(e,t,a)=>t in e?zc(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a,$c=(e,t,a)=>Vc(e,typeof t!="symbol"?t+"":t,a);function Xc(e){return new RegExp("^\\p{Emoji_Presentation}","u").test(String.fromCodePoint(e))}function Kc(e){if(!e||e<4352)return!1;switch(Js(e)){case"fullwidth":case"halfwidth":return!0;case"wide":return!Xc(e);case"narrow":return!1;case"ambiguous":return 917760<=e&&e<=917999?null:!1;case"neutral":return new RegExp("^\\p{sc=Hangul}","u").test(String.fromCodePoint(e))}}function Qc(e,t){return t!==65025||!e||e<8216?!1:e===8216||e===8217||e===8220||e===8221}function Jc(e){return e!==null&&e>=65024&&e<=65038}var Yc=Ys(new RegExp("\\p{P}|\\p{S}","u")),Zc=Ys(/\s/);function Ys(e){return t;function t(a){return a!==null&&a>-1&&e.test(String.fromCodePoint(a))}}var Me;(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})(Me||(Me={}));function tt(e){if(e===we.eof||fn(e)||Zc(e))return je.characterGroupWhitespace;let t=0;if(e>=4352){if(Jc(e))return Me.nonEmojiGeneralUseVS;switch(Kc(e)){case null:return Me.ivs;case!0:t|=Me.cjk;break}}return Yc(e)&&(t|=je.characterGroupPunctuation),t}function Da(e,t,a){if(!tf(e))return e;let o=t(),r=tt(o);return!o||ct(r)?e:Qc(o,a)?Me.cjkPunctuation:ef(r)}function ef(e){return e&~Me.ivs}function ct(e){return!!(e&je.characterGroupWhitespace)}function Tt(e){return(e&Me.cjkPunctuation)===je.characterGroupPunctuation}function oa(e){return!!(e&Me.cjk)}function Zs(e){return e===Me.ivs}function ei(e){return!!(e&Me.cjkOrIvs)}function tf(e){return e===Me.nonEmojiGeneralUseVS}function $o(e){return!!(e&Me.spaceOrPunctuation)}function Ba(e){return!!(e&&e>=55296&&e<=56319)}function Ea(e){return!!(e&&e>=56320&&e<=57343)}function _a(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 af(e,t,a){let o=e>=65536?2:1;if(t._bufferIndex<1+o)return null;let r=t._bufferIndex-o-2,n=a({start:{...t,_bufferIndex:r>=0?r:0},end:{...t,_bufferIndex:t._bufferIndex-o}}),s=n.charCodeAt(n.length-1);if(Number.isNaN(s))return null;if(n.length<2||s<56320||57343<s)return s;let i=n.codePointAt(0);return i&&i>=65536?i:s}var Na=class{constructor(e,t,a){this.previousCode=e,this.nowPoint=t,this.sliceSerialize=a,$c(this,"cachedValue")}value(){return this.cachedValue===void 0&&(this.cachedValue=af(this.previousCode,this.nowPoint,this.sliceSerialize)),this.cachedValue}};function Oa(e,t,a){let o=a({start:t,end:{...t,_bufferIndex:t._bufferIndex+2}}).codePointAt(0);return o&&o>=65536?o:e}var Xo={name:"attention",resolveAll:of,tokenize:rf};function of(e,t){let a=-1,o,r,n,s,i,l,u,d;for(;++a<e.length;)if(e[a][0]==="enter"&&e[a][1].type==="attentionSequence"&&e[a][1]._close){for(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 c={...e[o][1].end},p={...e[a][1].start};ti(c,-l),ti(p,l),s={type:l>1?Re.strongSequence:Re.emphasisSequence,start:c,end:{...e[o][1].end}},i={type:l>1?Re.strongSequence:Re.emphasisSequence,start:{...e[a][1].start},end:p},n={type:l>1?Re.strongText:Re.emphasisText,start:{...e[o][1].end},end:{...e[a][1].start}},r={type:l>1?Re.strong:Re.emphasis,start:{...s.start},end:{...i.end}},e[o][1].end={...s.start},e[a][1].start={...i.end},u=[],e[o][1].end.offset-e[o][1].start.offset&&(u=It(u,[["enter",e[o][1],t],["exit",e[o][1],t]])),u=It(u,[["enter",r,t],["enter",s,t],["exit",s,t],["enter",n,t]]),t.parser.constructs.insideSpan.null,u=It(u,ba(t.parser.constructs.insideSpan.null,e.slice(o+1,a),t)),u=It(u,[["exit",n,t],["enter",i,t],["exit",i,t],["exit",r,t]]),e[a][1].end.offset-e[a][1].start.offset?(d=2,u=It(u,[["enter",e[a][1],t],["exit",e[a][1],t]])):d=0,Lt(e,o-1,a-o+3,u),a=o+u.length-d-2;break}}for(a=-1;++a<e.length;)e[a][1].type==="attentionSequence"&&(e[a][1].type="data");return e}function rf(e,t){let a=this.parser.constructs.attentionMarkers.null,{now:o,sliceSerialize:r,previous:n}=this,s=Ea(n)?_a(n,o(),r):n,i=tt(s),l=new Na(s,o(),r),u=Da(i,l.value.bind(l),s),d;return c;function c(m){return m===we.asterisk||we.underscore,d=m,e.enter("attentionSequence"),p(m)}function p(m){if(m===d)return e.consume(m),p;let h=e.exit("attentionSequence"),L=Ba(m)?Oa(m,o(),r):m,C=tt(L);let S=Tt(u),x=S||ct(u),I=Tt(C),b=I||ct(C),k=ei(u),P=!b||I&&(x||k)||a.includes(m),F=!x||S&&(b||oa(C))||a.includes(s);return h._open=!!(d===we.asterisk?P:P&&($o(u)||!F)),h._close=!!(d===we.asterisk?F:F&&($o(C)||!P)),t(m)}}function ti(e,t){e.column+=t,e.offset+=t,e._bufferIndex+=t}function ai(){return{text:{[we.asterisk]:Xo,[we.underscore]:Xo},insideSpan:{null:[Xo]}}}function oi(){let e=this.data();(e.micromarkExtensions||(e.micromarkExtensions=[])).push(ai())}f();f();function ri(e){let a=(e||{}).singleTilde,o={name:"strikethrough",tokenize:n,resolveAll:r};return a==null&&(a=!0),{text:{[we.tilde]:o},insideSpan:{null:[o]},attentionMarkers:{null:[we.tilde]}};function r(s,i){let l=-1;for(;++l<s.length;)if(s[l][0]==="enter"&&s[l][1].type==="strikethroughSequenceTemporary"&&s[l][1]._close){let u=l;for(;u--;)if(s[u][0]==="exit"&&s[u][1].type==="strikethroughSequenceTemporary"&&s[u][1]._open&&s[l][1].end.offset-s[l][1].start.offset===s[u][1].end.offset-s[u][1].start.offset){s[l][1].type="strikethroughSequence",s[u][1].type="strikethroughSequence";let d={type:"strikethrough",start:Object.assign({},s[u][1].start),end:Object.assign({},s[l][1].end)},c={type:"strikethroughText",start:Object.assign({},s[u][1].end),end:Object.assign({},s[l][1].start)},p=[["enter",d,i],["enter",s[u][1],i],["exit",s[u][1],i],["enter",c,i]],m=i.parser.constructs.insideSpan.null;m&&Lt(p,p.length,0,ba(m,s.slice(u+1,l),i)),Lt(p,p.length,0,[["exit",c,i],["enter",s[l][1],i],["exit",s[l][1],i],["exit",d,i]]),Lt(s,u-1,l-u+3,p),l=u+p.length-2;break}}for(l=-1;++l<s.length;)s[l][1].type==="strikethroughSequenceTemporary"&&(s[l][1].type=Re.data);return s}function n(s,i,l){let{now:u,sliceSerialize:d,previous:c}=this,p=Ea(c)?_a(c,u(),d):c,m=tt(p),h=new Na(p,u(),d),L=Da(m,h.value.bind(h),p),C=this.events,S=0;return x;function x(b){return we.tilde,p===we.tilde&&C[C.length-1][1].type!==Re.characterEscape?l(b):(s.enter("strikethroughSequenceTemporary"),I(b))}function I(b){let k=tt(p);if(b===we.tilde)return S>1?l(b):(s.consume(b),S++,I);if(S<2&&!a)return l(b);let P=s.exit("strikethroughSequenceTemporary"),F=Ba(b)?Oa(b,u(),d):b,R=tt(F),M=Tt(L)||ct(L),v=Tt(R)||ct(R),D=oa(L)||Zs(k);return P._open=!v||R===je.attentionSideAfter&&(M||D),P._close=!M||k===je.attentionSideAfter&&(v||oa(R)),i(b)}}}function ni(e){let t=this.data();(t.micromarkExtensions||(t.micromarkExtensions=[])).push(ri(e))}var nf=new Set(["\u3002","\uFF0E","\uFF0C","\u3001","\uFF1F","\uFF01","\uFF1A","\uFF1B","\uFF08","\uFF09","\u3010","\u3011","\u300C","\u300D","\u300E","\u300F","\u3008","\u3009","\u300A","\u300B"]),sf=/^(https?:\/\/|mailto:|www\.)/i,lf=e=>{if(e.children.length!==1)return!1;let t=e.children[0];return t.type==="text"&&t.value===e.url},uf=e=>{let t=0;for(let a of e){if(nf.has(a))return t;t+=a.length}return null},df=(e,t)=>({...t,url:e,children:[{type:"text",value:e}]}),cf=e=>({type:"text",value:e}),ff=()=>e=>{rn(e,"link",(t,a,o)=>{if(!o||typeof a!="number"||!lf(t)||!sf.test(t.url))return;let r=uf(t.url);if(r===null||r===0)return;let n=t.url.slice(0,r),s=t.url.slice(r),i=df(n,t),l=cf(s);return o.children.splice(a,1,i,l),a+1})};function pf(){let e=[oi],t=[ff,ni],a=[...e,...t];return{name:"cjk",type:"cjk",remarkPluginsBefore:e,remarkPluginsAfter:t,remarkPlugins:a}}var Ko=pf();f();f();f();f();f();var re=class extends Error{constructor(t){super(t),this.name="ShikiError"}};f();function mf(e){return nr(e)}function nr(e){return Array.isArray(e)?hf(e):e instanceof RegExp?e:typeof e=="object"?gf(e):e}function hf(e){let t=[];for(let a=0,o=e.length;a<o;a++)t[a]=nr(e[a]);return t}function gf(e){let t={};for(let a in e)t[a]=nr(e[a]);return t}function mi(e,...t){return t.forEach(a=>{for(let o in a)e[o]=a[o]}),e}function hi(e){let t=~e.lastIndexOf("/")||~e.lastIndexOf("\\");return t===0?e:~t===e.length-1?hi(e.substring(0,e.length-1)):e.substr(~t+1)}var Qo=/\$(\d+)|\${(\d+):\/(downcase|upcase)}/g,Ua=class{static hasCaptures(e){return e===null?!1:(Qo.lastIndex=0,Qo.test(e))}static replaceCaptures(e,t,a){return e.replace(Qo,(o,r,n,s)=>{let i=a[parseInt(r||n,10)];if(i){let l=t.substring(i.start,i.end);for(;l[0]===".";)l=l.substring(1);switch(s){case"downcase":return l.toLowerCase();case"upcase":return l.toUpperCase();default:return l}}else return o})}};function gi(e,t){return e<t?-1:e>t?1:0}function wi(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 n=gi(e[r],t[r]);if(n!==0)return n}return 0}return a-o}function si(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 xi(e){return e.replace(/[\-\\\{\}\*\+\?\|\^\$\.\,\[\]\(\)\#\s]/g,"\\$&")}var Ci=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}},sa=class{constructor(e,t,a){this._colorMap=e,this._defaults=t,this._root=a}static createFromRawTheme(e,t){return this.createFromParsedTheme(Cf(e),t)}static createFromParsedTheme(e,t){return If(e,t)}_cachedMatchRoot=new Ci(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=>wf(e.parent,r.parentScopes));return o?new Li(o.fontStyle,o.foreground,o.background):null}},Jo=class Ha{constructor(t,a){this.parent=t,this.scopeName=a}static push(t,a){for(let o of a)t=new Ha(t,o);return t}static from(...t){let a=null;for(let o=0;o<t.length;o++)a=new Ha(a,t[o]);return a}push(t){return new Ha(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 wf(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&&!xf(e.scopeName,o);){if(r)return!1;e=e.parent}if(!e)return!1;e=e.parent}return!0}function xf(e,t){return t===e||e.startsWith(t)&&e[t.length]==="."}var Li=class{constructor(e,t,a){this.fontStyle=e,this.foregroundId=t,this.backgroundId=a}};function Cf(e){if(!e)return[];if(!e.settings||!Array.isArray(e.settings))return[];let t=e.settings,a=[],o=0;for(let r=0,n=t.length;r<n;r++){let s=t[r];if(!s.settings)continue;let i;if(typeof s.scope=="string"){let c=s.scope;c=c.replace(/^[,]+/,""),c=c.replace(/[,]+$/,""),i=c.split(",")}else Array.isArray(s.scope)?i=s.scope:i=[""];let l=-1;if(typeof s.settings.fontStyle=="string"){l=0;let c=s.settings.fontStyle.split(" ");for(let p=0,m=c.length;p<m;p++)switch(c[p]){case"italic":l=l|1;break;case"bold":l=l|2;break;case"underline":l=l|4;break;case"strikethrough":l=l|8;break}}let u=null;typeof s.settings.foreground=="string"&&si(s.settings.foreground)&&(u=s.settings.foreground);let d=null;typeof s.settings.background=="string"&&si(s.settings.background)&&(d=s.settings.background);for(let c=0,p=i.length;c<p;c++){let h=i[c].trim().split(" "),L=h[h.length-1],C=null;h.length>1&&(C=h.slice(0,h.length-1),C.reverse()),a[o++]=new Lf(L,C,r,l,u,d)}}return a}var Lf=class{constructor(e,t,a,o,r,n){this.scope=e,this.parentScopes=t,this.index=a,this.fontStyle=o,this.foreground=r,this.background=n}},xe=(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))(xe||{});function If(e,t){e.sort((l,u)=>{let d=gi(l.scope,u.scope);return d!==0||(d=wi(l.parentScopes,u.parentScopes),d!==0)?d: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 n=new Sf(t),s=new Li(a,n.getId(o),n.getId(r)),i=new bf(new Zo(0,null,-1,0,0),[]);for(let l=0,u=e.length;l<u;l++){let d=e[l];i.insert(0,d.scope,d.parentScopes,d.fontStyle,n.getId(d.foreground),n.getId(d.background))}return new sa(n,s,i)}var Sf=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)}},yf=Object.freeze([]),Zo=class Ii{scopeDepth;parentScopes;fontStyle;foreground;background;constructor(t,a,o,r,n){this.scopeDepth=t,this.parentScopes=a||yf,this.fontStyle=o,this.foreground=r,this.background=n}clone(){return new Ii(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)}},bf=class er{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 n=a.parentScopes[r].length-t.parentScopes[o].length;if(n!==0)return n;o++,r++}return a.parentScopes.length-t.parentScopes.length}match(t){if(t!==""){let o=t.indexOf("."),r,n;if(o===-1?(r=t,n=""):(r=t.substring(0,o),n=t.substring(o+1)),this._children.hasOwnProperty(r))return this._children[r].match(n)}let a=this._rulesWithParentScopes.concat(this._mainRule);return a.sort(er._cmpBySpecificity),a}insert(t,a,o,r,n,s){if(a===""){this._doInsertHere(t,o,r,n,s);return}let i=a.indexOf("."),l,u;i===-1?(l=a,u=""):(l=a.substring(0,i),u=a.substring(i+1));let d;this._children.hasOwnProperty(l)?d=this._children[l]:(d=new er(this._mainRule.clone(),Zo.cloneArr(this._rulesWithParentScopes)),this._children[l]=d),d.insert(t+1,u,o,r,n,s)}_doInsertHere(t,a,o,r,n){if(a===null){this._mainRule.acceptOverwrite(t,o,r,n);return}for(let s=0,i=this._rulesWithParentScopes.length;s<i;s++){let l=this._rulesWithParentScopes[s];if(wi(l.parentScopes,a)===0){l.acceptOverwrite(t,o,r,n);return}}o===-1&&(o=this._mainRule.fontStyle),r===0&&(r=this._mainRule.foreground),n===0&&(n=this._mainRule.background),this._rulesWithParentScopes.push(new Zo(t,a,o,r,n))}},pt=class Ee{static toBinaryStr(t){return t.toString(2).padStart(32,"0")}static print(t){let a=Ee.getLanguageId(t),o=Ee.getTokenType(t),r=Ee.getFontStyle(t),n=Ee.getForeground(t),s=Ee.getBackground(t);console.log({languageId:a,tokenType:o,fontStyle:r,foreground:n,background:s})}static getLanguageId(t){return(t&255)>>>0}static getTokenType(t){return(t&768)>>>8}static containsBalancedBrackets(t){return(t&1024)!==0}static getFontStyle(t){return(t&30720)>>>11}static getForeground(t){return(t&16744448)>>>15}static getBackground(t){return(t&4278190080)>>>24}static set(t,a,o,r,n,s,i){let l=Ee.getLanguageId(t),u=Ee.getTokenType(t),d=Ee.containsBalancedBrackets(t)?1:0,c=Ee.getFontStyle(t),p=Ee.getForeground(t),m=Ee.getBackground(t);return a!==0&&(l=a),o!==8&&(u=o),r!==null&&(d=r?1:0),n!==-1&&(c=n),s!==0&&(p=s),i!==0&&(m=i),(l<<0|u<<8|d<<10|c<<11|p<<15|m<<24)>>>0}};function Wa(e,t){let a=[],o=kf(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=s();if(a.push({matcher:u,priority:l}),r!==",")break;r=o.next()}return a;function n(){if(r==="-"){r=o.next();let l=n();return u=>!!l&&!l(u)}if(r==="("){r=o.next();let l=i();return r===")"&&(r=o.next()),l}if(ii(r)){let l=[];do l.push(r),r=o.next();while(ii(r));return u=>t(l,u)}return null}function s(){let l=[],u=n();for(;u;)l.push(u),u=n();return d=>l.every(c=>c(d))}function i(){let l=[],u=s();for(;u&&(l.push(u),r==="|"||r===",");){do r=o.next();while(r==="|"||r===",");u=s()}return d=>l.some(c=>c(d))}}function ii(e){return!!e&&!!e.match(/[\w\.:]+/)}function kf(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 Si(e){typeof e.dispose=="function"&&e.dispose()}var ia=class{constructor(e){this.scopeName=e}toKey(){return this.scopeName}},Tf=class{constructor(e,t){this.scopeName=e,this.ruleName=t}toKey(){return`${this.scopeName}#${this.ruleName}`}},vf=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))}},Pf=class{constructor(e,t){this.repo=e,this.initialScopeName=t,this.seenFullScopeRequests.add(this.initialScopeName),this.Q=[new ia(this.initialScopeName)]}seenFullScopeRequests=new Set;seenPartialScopeRequests=new Set;Q;processQueue(){let e=this.Q;this.Q=[];let t=new vf;for(let a of e)Af(a,this.initialScopeName,this.repo,t);for(let a of t.references)if(a instanceof ia){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 Af(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 n=a.lookup(t);e instanceof ia?qa({baseGrammar:n,selfGrammar:r},o):tr(e.ruleName,{baseGrammar:n,selfGrammar:r,repository:r.repository},o);let s=a.injections(e.scopeName);if(s)for(let i of s)o.add(new ia(i))}function tr(e,t,a){if(t.repository&&t.repository[e]){let o=t.repository[e];Ga([o],t,a)}}function qa(e,t){e.selfGrammar.patterns&&Array.isArray(e.selfGrammar.patterns)&&Ga(e.selfGrammar.patterns,{...e,repository:e.selfGrammar.repository},t),e.selfGrammar.injections&&Ga(Object.values(e.selfGrammar.injections),{...e,repository:e.selfGrammar.repository},t)}function Ga(e,t,a){for(let o of e){if(a.visitedRule.has(o))continue;a.visitedRule.add(o);let r=o.repository?mi({},t.repository,o.repository):t.repository;Array.isArray(o.patterns)&&Ga(o.patterns,{...t,repository:r},a);let n=o.include;if(!n)continue;let s=yi(n);switch(s.kind){case 0:qa({...t,selfGrammar:t.baseGrammar},a);break;case 1:qa(t,a);break;case 2:tr(s.ruleName,{...t,repository:r},a);break;case 3:case 4:let i=s.scopeName===t.selfGrammar.scopeName?t.selfGrammar:s.scopeName===t.baseGrammar.scopeName?t.baseGrammar:void 0;if(i){let l={baseGrammar:t.baseGrammar,selfGrammar:i,repository:r};s.kind===4?tr(s.ruleName,l,a):qa(l,a)}else s.kind===4?a.add(new Tf(s.scopeName,s.ruleName)):a.add(new ia(s.scopeName));break}}}var Rf=class{kind=0},Mf=class{kind=1},Ff=class{constructor(e){this.ruleName=e}kind=2},Df=class{constructor(e){this.scopeName=e}kind=3},Bf=class{constructor(e,t){this.scopeName=e,this.ruleName=t}kind=4};function yi(e){if(e==="$base")return new Rf;if(e==="$self")return new Mf;let t=e.indexOf("#");if(t===-1)return new Df(e);if(t===0)return new Ff(e.substring(1));{let a=e.substring(0,t),o=e.substring(t+1);return new Bf(a,o)}}var Ef=/\\(\d+)/,li=/\\(\d+)/g;var _f=-1,bi=-2;var da=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?`${hi(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)}},Nf=class extends da{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!")}},Of=class extends da{_match;captures;_cachedCompiledPatterns;constructor(e,t,a,o,r){super(e,t,a,null),this._match=new la(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 ua,this.collectPatterns(e,this._cachedCompiledPatterns)),this._cachedCompiledPatterns}},ui=class extends da{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 ua,this.collectPatterns(e,this._cachedCompiledPatterns)),this._cachedCompiledPatterns}},ar=class extends da{_begin;beginCaptures;_end;endHasBackReferences;endCaptures;applyEndPatternLast;hasMissingPatterns;patterns;_cachedCompiledPatterns;constructor(e,t,a,o,r,n,s,i,l,u){super(e,t,a,o),this._begin=new la(r,this.id),this.beginCaptures=n,this._end=new la(s||"\uFFFF",-1),this.endHasBackReferences=this._end.hasBackReferences,this.endCaptures=i,this.applyEndPatternLast=l||!1,this.patterns=u.patterns,this.hasMissingPatterns=u.hasMissingPatterns,this._cachedCompiledPatterns=null}dispose(){this._cachedCompiledPatterns&&(this._cachedCompiledPatterns.dispose(),this._cachedCompiledPatterns=null)}get debugBeginRegExp(){return`${this._begin.source}`}get debugEndRegExp(){return`${this._end.source}`}getEndWithResolvedBackReferences(e,t){return this._end.resolveBackReferences(e,t)}collectPatterns(e,t){t.push(this._begin)}compile(e,t){return this._getCachedCompiledPatterns(e,t).compile(e)}compileAG(e,t,a,o){return this._getCachedCompiledPatterns(e,t).compileAG(e,a,o)}_getCachedCompiledPatterns(e,t){if(!this._cachedCompiledPatterns){this._cachedCompiledPatterns=new ua;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}},ja=class extends da{_begin;beginCaptures;whileCaptures;_while;whileHasBackReferences;hasMissingPatterns;patterns;_cachedCompiledPatterns;_cachedCompiledWhilePatterns;constructor(e,t,a,o,r,n,s,i,l){super(e,t,a,o),this._begin=new la(r,this.id),this.beginCaptures=n,this.whileCaptures=i,this._while=new la(s,bi),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 ua;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 ua,this._cachedCompiledWhilePatterns.push(this._while.hasBackReferences?this._while.clone():this._while)),this._while.hasBackReferences&&this._cachedCompiledWhilePatterns.setSource(0,t||"\uFFFF"),this._cachedCompiledWhilePatterns}},ki=class Se{static createCaptureRule(t,a,o,r,n){return t.registerRule(s=>new Nf(a,s,o,r,n))}static getCompiledRuleId(t,a,o){return t.id||a.registerRule(r=>{if(t.id=r,t.match)return new Of(t.$vscodeTextmateLocation,t.id,t.name,t.match,Se._compileCaptures(t.captures,a,o));if(typeof t.begin>"u"){t.repository&&(o=mi({},o,t.repository));let n=t.patterns;return typeof n>"u"&&t.include&&(n=[{include:t.include}]),new ui(t.$vscodeTextmateLocation,t.id,t.name,t.contentName,Se._compilePatterns(n,a,o))}return t.while?new ja(t.$vscodeTextmateLocation,t.id,t.name,t.contentName,t.begin,Se._compileCaptures(t.beginCaptures||t.captures,a,o),t.while,Se._compileCaptures(t.whileCaptures||t.captures,a,o),Se._compilePatterns(t.patterns,a,o)):new ar(t.$vscodeTextmateLocation,t.id,t.name,t.contentName,t.begin,Se._compileCaptures(t.beginCaptures||t.captures,a,o),t.end,Se._compileCaptures(t.endCaptures||t.captures,a,o),t.applyEndPatternLast,Se._compilePatterns(t.patterns,a,o))}),t.id}static _compileCaptures(t,a,o){let r=[];if(t){let n=0;for(let s in t){if(s==="$vscodeTextmateLocation")continue;let i=parseInt(s,10);i>n&&(n=i)}for(let s=0;s<=n;s++)r[s]=null;for(let s in t){if(s==="$vscodeTextmateLocation")continue;let i=parseInt(s,10),l=0;t[s].patterns&&(l=Se.getCompiledRuleId(t[s],a,o)),r[i]=Se.createCaptureRule(a,t[s].$vscodeTextmateLocation,t[s].name,t[s].contentName,l)}}return r}static _compilePatterns(t,a,o){let r=[];if(t)for(let n=0,s=t.length;n<s;n++){let i=t[n],l=-1;if(i.include){let u=yi(i.include);switch(u.kind){case 0:case 1:l=Se.getCompiledRuleId(o[i.include],a,o);break;case 2:let d=o[u.ruleName];d&&(l=Se.getCompiledRuleId(d,a,o));break;case 3:case 4:let c=u.scopeName,p=u.kind===4?u.ruleName:null,m=a.getExternalGrammar(c,o);if(m)if(p){let h=m.repository[p];h&&(l=Se.getCompiledRuleId(h,a,m.repository))}else l=Se.getCompiledRuleId(m.repository.$self,a,m.repository);break}}else l=Se.getCompiledRuleId(i,a,o);if(l!==-1){let u=a.getRule(l),d=!1;if((u instanceof ui||u instanceof ar||u instanceof ja)&&u.hasMissingPatterns&&u.patterns.length===0&&(d=!0),d)continue;r.push(l)}}return{patterns:r,hasMissingPatterns:(t?t.length:0)!==r.length}}},la=class Ti{source;ruleId;hasAnchor;hasBackReferences;_anchorCache;constructor(t,a){if(t&&typeof t=="string"){let o=t.length,r=0,n=[],s=!1;for(let i=0;i<o;i++)if(t.charAt(i)==="\\"&&i+1<o){let u=t.charAt(i+1);u==="z"?(n.push(t.substring(r,i)),n.push("$(?!\\n)(?<!\\n)"),r=i+2):(u==="A"||u==="G")&&(s=!0),i++}this.hasAnchor=s,r===0?this.source=t:(n.push(t.substring(r,o)),this.source=n.join(""))}else this.hasAnchor=!1,this.source=t;this.hasAnchor?this._anchorCache=this._buildAnchorCache():this._anchorCache=null,this.ruleId=a,typeof this.source=="string"?this.hasBackReferences=Ef.test(this.source):this.hasBackReferences=!1}clone(){return new Ti(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 li.lastIndex=0,this.source.replace(li,(r,n)=>xi(o[parseInt(n,10)]||""))}_buildAnchorCache(){if(typeof this.source!="string")throw new Error("This method should only be called if the source is a string");let t=[],a=[],o=[],r=[],n,s,i,l;for(n=0,s=this.source.length;n<s;n++)i=this.source.charAt(n),t[n]=i,a[n]=i,o[n]=i,r[n]=i,i==="\\"&&n+1<s&&(l=this.source.charAt(n+1),l==="A"?(t[n+1]="\uFFFF",a[n+1]="\uFFFF",o[n+1]="A",r[n+1]="A"):l==="G"?(t[n+1]="\uFFFF",a[n+1]="G",o[n+1]="\uFFFF",r[n+1]="G"):(t[n+1]=l,a[n+1]=l,o[n+1]=l,r[n+1]=l),n++);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}},ua=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 di(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 di(e,o,this._items.map(r=>r.ruleId))}},di=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(`
|
|
69
|
+
`)}findNextMatchSync(e,t,a){let o=this.scanner.findNextMatchSync(e,t,a);return o?{ruleId:this.rules[o.index],captureIndices:o.captureIndices}:null}},Yo=class{constructor(e,t){this.languageId=e,this.tokenType=t}},Uf=class or{_defaultAttributes;_embeddedLanguagesMatcher;constructor(t,a){this._defaultAttributes=new Yo(t,8),this._embeddedLanguagesMatcher=new Hf(Object.entries(a||{}))}getDefaultAttributes(){return this._defaultAttributes}getBasicScopeAttributes(t){return t===null?or._NULL_SCOPE_METADATA:this._getBasicScopeAttributes.get(t)}static _NULL_SCOPE_METADATA=new Yo(0,0);_getBasicScopeAttributes=new Ci(t=>{let a=this._scopeToLanguage(t),o=this._toStandardTokenType(t);return new Yo(a,o)});_scopeToLanguage(t){return this._embeddedLanguagesMatcher.match(t)||0}_toStandardTokenType(t){let a=t.match(or.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/},Hf=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])=>xi(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])}},e0={InDebugMode:typeof process<"u"&&!!process.env.VSCODE_TEXTMATE_DEBUG},vi=!1,ci=class{constructor(e,t){this.stack=e,this.stoppedEarly=t}};function Pi(e,t,a,o,r,n,s,i){let l=t.content.length,u=!1,d=-1;if(s){let m=qf(e,t,a,o,r,n);r=m.stack,o=m.linePos,a=m.isFirstLine,d=m.anchorPosition}let c=Date.now();for(;!u;){if(i!==0&&Date.now()-c>i)return new ci(r,!0);p()}return new ci(r,!1);function p(){let m=Wf(e,t,a,o,r,d);if(!m){n.produce(r,l),u=!0;return}let h=m.captureIndices,L=m.matchedRuleId,C=h&&h.length>0?h[0].end>o:!1;if(L===_f){let S=r.getRule(e);n.produce(r,h[0].start),r=r.withContentNameScopesList(r.nameScopesList),ra(e,t,a,r,n,S.endCaptures,h),n.produce(r,h[0].end);let x=r;if(r=r.parent,d=x.getAnchorPos(),!C&&x.getEnterPos()===o){r=x,n.produce(r,l),u=!0;return}}else{let S=e.getRule(L);n.produce(r,h[0].start);let x=r,I=S.getName(t.content,h),b=r.contentNameScopesList.pushAttributed(I,e);if(r=r.push(L,o,d,h[0].end===l,null,b,b),S instanceof ar){let k=S;ra(e,t,a,r,n,k.beginCaptures,h),n.produce(r,h[0].end),d=h[0].end;let P=k.getContentName(t.content,h),F=b.pushAttributed(P,e);if(r=r.withContentNameScopesList(F),k.endHasBackReferences&&(r=r.withEndRule(k.getEndWithResolvedBackReferences(t.content,h))),!C&&x.hasSameRuleAs(r)){r=r.pop(),n.produce(r,l),u=!0;return}}else if(S instanceof ja){let k=S;ra(e,t,a,r,n,k.beginCaptures,h),n.produce(r,h[0].end),d=h[0].end;let P=k.getContentName(t.content,h),F=b.pushAttributed(P,e);if(r=r.withContentNameScopesList(F),k.whileHasBackReferences&&(r=r.withEndRule(k.getWhileWithResolvedBackReferences(t.content,h))),!C&&x.hasSameRuleAs(r)){r=r.pop(),n.produce(r,l),u=!0;return}}else if(ra(e,t,a,r,n,S.captures,h),n.produce(r,h[0].end),r=r.pop(),!C){r=r.safePop(),n.produce(r,l),u=!0;return}}h[0].end>o&&(o=h[0].end,a=!1)}}function qf(e,t,a,o,r,n){let s=r.beginRuleCapturedEOL?0:-1,i=[];for(let l=r;l;l=l.pop()){let u=l.getRule(e);u instanceof ja&&i.push({rule:u,stack:l})}for(let l=i.pop();l;l=i.pop()){let{ruleScanner:u,findOptions:d}=zf(l.rule,e,l.stack.endRule,a,o===s),c=u.findNextMatchSync(t,o,d);if(c){if(c.ruleId!==bi){r=l.stack.pop();break}c.captureIndices&&c.captureIndices.length&&(n.produce(l.stack,c.captureIndices[0].start),ra(e,t,a,l.stack,n,l.rule.whileCaptures,c.captureIndices),n.produce(l.stack,c.captureIndices[0].end),s=c.captureIndices[0].end,c.captureIndices[0].end>o&&(o=c.captureIndices[0].end,a=!1))}else{r=l.stack.pop();break}}return{stack:r,linePos:o,anchorPosition:s,isFirstLine:a}}function Wf(e,t,a,o,r,n){let s=Gf(e,t,a,o,r,n),i=e.getInjections();if(i.length===0)return s;let l=jf(i,e,t,a,o,r,n);if(!l)return s;if(!s)return l;let u=s.captureIndices[0].start,d=l.captureIndices[0].start;return d<u||l.priorityMatch&&d===u?l:s}function Gf(e,t,a,o,r,n){let s=r.getRule(e),{ruleScanner:i,findOptions:l}=Ai(s,e,r.endRule,a,o===n),u=i.findNextMatchSync(t,o,l);return u?{captureIndices:u.captureIndices,matchedRuleId:u.ruleId}:null}function jf(e,t,a,o,r,n,s){let i=Number.MAX_VALUE,l=null,u,d=0,c=n.contentNameScopesList.getScopeNames();for(let p=0,m=e.length;p<m;p++){let h=e[p];if(!h.matcher(c))continue;let L=t.getRule(h.ruleId),{ruleScanner:C,findOptions:S}=Ai(L,t,null,o,r===s),x=C.findNextMatchSync(a,r,S);if(!x)continue;let I=x.captureIndices[0].start;if(!(I>=i)&&(i=I,l=x.captureIndices,u=x.ruleId,d=h.priority,i===r))break}return l?{priorityMatch:d===-1,captureIndices:l,matchedRuleId:u}:null}function Ai(e,t,a,o,r){if(vi){let s=e.compile(t,a),i=Ri(o,r);return{ruleScanner:s,findOptions:i}}return{ruleScanner:e.compileAG(t,a,o,r),findOptions:0}}function zf(e,t,a,o,r){if(vi){let s=e.compileWhile(t,a),i=Ri(o,r);return{ruleScanner:s,findOptions:i}}return{ruleScanner:e.compileWhileAG(t,a,o,r),findOptions:0}}function Ri(e,t){let a=0;return e||(a|=1),t||(a|=4),a}function ra(e,t,a,o,r,n,s){if(n.length===0)return;let i=t.content,l=Math.min(n.length,s.length),u=[],d=s[0].end;for(let c=0;c<l;c++){let p=n[c];if(p===null)continue;let m=s[c];if(m.length===0)continue;if(m.start>d)break;for(;u.length>0&&u[u.length-1].endPos<=m.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,m.start):r.produce(o,m.start),p.retokenizeCapturedWithRuleId){let L=p.getName(i,s),C=o.contentNameScopesList.pushAttributed(L,e),S=p.getContentName(i,s),x=C.pushAttributed(S,e),I=o.push(p.retokenizeCapturedWithRuleId,m.start,-1,!1,null,C,x),b=e.createOnigString(i.substring(0,m.end));Pi(e,b,a&&m.start===0,m.start,I,r,!1,0),Si(b);continue}let h=p.getName(i,s);if(h!==null){let C=(u.length>0?u[u.length-1].scopes:o.contentNameScopesList).pushAttributed(h,e);u.push(new Vf(C,m.end))}}for(;u.length>0;)r.produceFromScopes(u[u.length-1].scopes,u[u.length-1].endPos),u.pop()}var Vf=class{scopes;endPos;constructor(e,t){this.scopes=e,this.endPos=t}};function $f(e,t,a,o,r,n,s,i){return new Kf(e,t,a,o,r,n,s,i)}function fi(e,t,a,o,r){let n=Wa(t,za),s=ki.getCompiledRuleId(a,o,r.repository);for(let i of n)e.push({debugSelector:t,matcher:i.matcher,ruleId:s,grammar:r,priority:i.priority})}function za(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(Xf(t[r],o))return a=r+1,!0;return!1})}function Xf(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 Kf=class{constructor(e,t,a,o,r,n,s,i){if(this._rootScopeName=e,this.balancedBracketSelectors=n,this._onigLib=i,this._basicScopeAttributesProvider=new Uf(a,o),this._rootId=-1,this._lastRuleId=0,this._ruleId2desc=[null],this._includedGrammars={},this._grammarRepository=s,this._grammar=pi(t,null),this._injections=null,this._tokenTypeMatchers=[],r)for(let l of Object.keys(r)){let u=Wa(l,za);for(let d of u)this._tokenTypeMatchers.push({matcher:d.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 s in r)fi(t,s,r[s],this,o);let n=this._grammarRepository.injections(a);n&&n.forEach(s=>{let i=this.getExternalGrammar(s);if(i){let l=i.injectionSelector;l&&fi(t,l,i,this,i)}})}return t.sort((r,n)=>r.priority-n.priority),t}getInjections(){return this._injections===null&&(this._injections=this._collectInjections()),this._injections}registerRule(e){let t=++this._lastRuleId,a=e(t);return this._ruleId2desc[t]=a,a}getRule(e){return this._ruleId2desc[e]}getExternalGrammar(e,t){if(this._includedGrammars[e])return this._includedGrammars[e];if(this._grammarRepository){let a=this._grammarRepository.lookup(e);if(a)return this._includedGrammars[e]=pi(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=ki.getCompiledRuleId(this._grammar.repository.$self,this,this._grammar.repository),this.getInjections());let r;if(!t||t===rr.NULL){r=!0;let u=this._basicScopeAttributesProvider.getDefaultAttributes(),d=this.themeProvider.getDefaults(),c=pt.set(0,u.languageId,u.tokenType,null,d.fontStyle,d.foregroundId,d.backgroundId),p=this.getRule(this._rootId).getName(null,null),m;p?m=na.createRootAndLookUpScopeName(p,c,this):m=na.createRoot("unknown",c),t=new rr(null,this._rootId,-1,-1,!1,null,m,m)}else r=!1,t.reset();e=e+`
|
|
70
|
+
`;let n=this.createOnigString(e),s=n.content.length,i=new Jf(a,e,this._tokenTypeMatchers,this.balancedBracketSelectors),l=Pi(this,n,r,0,t,i,!0,o);return Si(n),{lineLength:s,lineTokens:i,ruleStack:l.stack,stoppedEarly:l.stoppedEarly}}};function pi(e,t){return e=mf(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 na=class ze{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 n of a)r=Jo.push(r,n.scopeNames),o=new ze(o,r,n.encodedTokenAttributes);return o}static createRoot(t,a){return new ze(null,new Jo(null,t),a)}static createRootAndLookUpScopeName(t,a,o){let r=o.getMetadataForScope(t),n=new Jo(null,t),s=o.themeProvider.themeMatch(n),i=ze.mergeAttributes(a,r,s);return new ze(null,n,i)}get scopeName(){return this.scopePath.scopeName}toString(){return this.getScopeNames().join(" ")}equals(t){return ze.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,n=0,s=0;return o!==null&&(r=o.fontStyle,n=o.foregroundId,s=o.backgroundId),pt.set(t,a.languageId,a.tokenType,null,r,n,s)}pushAttributed(t,a){if(t===null)return this;if(t.indexOf(" ")===-1)return ze._pushAttributed(this,t,a);let o=t.split(/ /g),r=this;for(let n of o)r=ze._pushAttributed(r,n,a);return r}static _pushAttributed(t,a,o){let r=o.getMetadataForScope(a),n=t.scopePath.push(a),s=o.themeProvider.themeMatch(n),i=ze.mergeAttributes(t.tokenAttributes,r,s);return new ze(t,n,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}},rr=class ft{constructor(t,a,o,r,n,s,i,l){this.parent=t,this.ruleId=a,this.beginRuleCapturedEOL=n,this.endRule=s,this.nameScopesList=i,this.contentNameScopesList=l,this.depth=this.parent?this.parent.depth+1:1,this._enterPos=o,this._anchorPos=r}_stackElementBrand=void 0;static NULL=new ft(null,0,0,0,!1,null,null,null);_enterPos;_anchorPos;depth;equals(t){return t===null?!1:ft._equals(this,t)}static _equals(t,a){return t===a?!0:this._structuralEquals(t,a)?na.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(){ft._reset(this)}pop(){return this.parent}safePop(){return this.parent?this.parent:this}push(t,a,o,r,n,s,i){return new ft(this,t,a,o,r,n,s,i)}getEnterPos(){return this._enterPos}getAnchorPos(){return this._anchorPos}getRule(t){return t.getRule(this.ruleId)}toString(){let t=[];return this._writeString(t,0),"["+t.join(",")+"]"}_writeString(t,a){return this.parent&&(a=this.parent._writeString(t,a)),t[a++]=`(${this.ruleId}, ${this.nameScopesList?.toString()}, ${this.contentNameScopesList?.toString()})`,a}withContentNameScopesList(t){return this.contentNameScopesList===t?this:this.parent.push(this.ruleId,this._enterPos,this._anchorPos,this.beginRuleCapturedEOL,this.endRule,this.nameScopesList,t)}withEndRule(t){return this.endRule===t?this:new ft(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=na.fromExtension(t?.nameScopesList??null,a.nameScopesList);return new ft(t,a.ruleId,a.enterPos??-1,a.anchorPos??-1,a.beginRuleCapturedEOL,a.endRule,o,na.fromExtension(o,a.contentNameScopesList))}},Qf=class{balancedBracketScopes;unbalancedBracketScopes;allowAny=!1;constructor(e,t){this.balancedBracketScopes=e.flatMap(a=>a==="*"?(this.allowAny=!0,[]):Wa(a,za).map(o=>o.matcher)),this.unbalancedBracketScopes=t.flatMap(a=>Wa(a,za).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}},Jf=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 n=e?.getScopeNames()??[];for(let s of this._tokenTypeOverrides)s.matcher(n)&&(o=pt.set(o,0,s.type,null,-1,0,0));this.balancedBracketSelectors&&(r=this.balancedBracketSelectors.match(n))}if(r&&(o=pt.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}},Yf=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 n=this._rawGrammars.get(e);if(!n)return null;this._grammars.set(e,$f(e,n,t,a,o,r,this,this._onigLib))}return this._grammars.get(e)}},Mi=class{_options;_syncRegistry;_ensureGrammarCache;constructor(e){this._options=e,this._syncRegistry=new Yf(sa.createFromRawTheme(e.theme,e.colorMap),e.onigLib),this._ensureGrammarCache=new Map}dispose(){this._syncRegistry.dispose()}setTheme(e,t){this._syncRegistry.setTheme(sa.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 Qf(a.balancedBracketSelectors||[],a.unbalancedBracketSelectors||[]))}loadGrammar(e){return this._loadGrammar(e,0,null,null,null)}_loadGrammar(e,t,a,o,r){let n=new Pf(this._syncRegistry,e);for(;n.Q.length>0;)n.Q.map(s=>this._loadSingleGrammar(s.scopeName)),n.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)}},Va=rr.NULL;f();f();f();f();f();f();var Zf=/["&'<>`]/g,ep=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,tp=/[\x01-\t\v\f\x0E-\x1F\x7F\x81\x8D\x8F\x90\x9D\xA0-\uFFFF]/g,ap=/[|\\{}()[\]^$+*?.]/g,Fi=new WeakMap;function Di(e,t){if(e=e.replace(t.subset?op(t.subset):Zf,o),t.subset||t.escapeOnly)return e;return e.replace(ep,a).replace(tp,o);function a(r,n,s){return t.format((r.charCodeAt(0)-55296)*1024+r.charCodeAt(1)-56320+65536,s.charCodeAt(n+2),t)}function o(r,n,s){return t.format(r.charCodeAt(0),s.charCodeAt(n+1),t)}}function op(e){let t=Fi.get(e);return t||(t=rp(e),Fi.set(e,t)),t}function rp(e){let t=[],a=-1;for(;++a<e.length;)t.push(e[a].replace(ap,"\\$&"));return new RegExp("(?:"+t.join("|")+")","g")}f();f();var np=/[\dA-Fa-f]/;function Bi(e,t,a){let o="&#x"+e.toString(16).toUpperCase();return a&&t&&!np.test(String.fromCharCode(t))?o:o+";"}f();var sp=/\d/;function Ei(e,t,a){let o="&#"+String(e);return a&&t&&!sp.test(String.fromCharCode(t))?o:o+";"}f();f();var _i=["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"];f();var $a={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"};f();var Ni=["cent","copy","divide","gt","lt","not","para","times"];var Oi={}.hasOwnProperty,sr={},Xa;for(Xa in $a)Oi.call($a,Xa)&&(sr[$a[Xa]]=Xa);var ip=/[^\dA-Za-z]/;function Ui(e,t,a,o){let r=String.fromCharCode(e);if(Oi.call(sr,r)){let n=sr[r],s="&"+n;return a&&_i.includes(n)&&!Ni.includes(n)&&(!o||t&&t!==61&&ip.test(String.fromCharCode(t)))?s:s+";"}return""}function Hi(e,t,a){let o=Bi(e,t,a.omitOptionalSemicolons),r;if((a.useNamedReferences||a.useShortestReferences)&&(r=Ui(e,t,a.omitOptionalSemicolons,a.attribute)),(a.useShortestReferences||!r)&&a.useShortestReferences){let n=Ei(e,t,a.omitOptionalSemicolons);n.length<o.length&&(o=n)}return r&&(!a.useShortestReferences||r.length<o.length)?r:o}function Qe(e,t){return Di(e,Object.assign({format:Hi},t))}var lp=/^>|^->|<!--|-->|--!>|<!-$/g,up=[">"],dp=["<",">"];function qi(e,t,a,o){return o.settings.bogusComments?"<?"+Qe(e.value,Object.assign({},o.settings.characterReferences,{subset:up}))+">":"<!--"+e.value.replace(lp,r)+"-->";function r(n){return Qe(n,Object.assign({},o.settings.characterReferences,{subset:dp}))}}f();function Wi(e,t,a,o){return"<!"+(o.settings.upperDoctype?"DOCTYPE":"doctype")+(o.settings.tightDoctype?"":" ")+"html>"}f();f();f();var le=Gi(1),ir=Gi(-1),cp=[];function Gi(e){return t;function t(a,o,r){let n=a?a.children:cp,s=(o||0)+e,i=n[s];if(!r)for(;i&&St(i);)s+=e,i=n[s];return i}}f();var fp={}.hasOwnProperty;function Ka(e){return t;function t(a,o,r){return fp.call(e,a.tagName)&&e[a.tagName](a,o,r)}}var ca=Ka({body:mp,caption:lr,colgroup:lr,dd:xp,dt:wp,head:lr,html:pp,li:gp,optgroup:Cp,option:Lp,p:hp,rp:ji,rt:ji,tbody:Sp,td:zi,tfoot:yp,th:zi,thead:Ip,tr:bp});function lr(e,t,a){let o=le(a,t,!0);return!o||o.type!=="comment"&&!(o.type==="text"&&St(o.value.charAt(0)))}function pp(e,t,a){let o=le(a,t);return!o||o.type!=="comment"}function mp(e,t,a){let o=le(a,t);return!o||o.type!=="comment"}function hp(e,t,a){let o=le(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 gp(e,t,a){let o=le(a,t);return!o||o.type==="element"&&o.tagName==="li"}function wp(e,t,a){let o=le(a,t);return!!(o&&o.type==="element"&&(o.tagName==="dt"||o.tagName==="dd"))}function xp(e,t,a){let o=le(a,t);return!o||o.type==="element"&&(o.tagName==="dt"||o.tagName==="dd")}function ji(e,t,a){let o=le(a,t);return!o||o.type==="element"&&(o.tagName==="rp"||o.tagName==="rt")}function Cp(e,t,a){let o=le(a,t);return!o||o.type==="element"&&o.tagName==="optgroup"}function Lp(e,t,a){let o=le(a,t);return!o||o.type==="element"&&(o.tagName==="option"||o.tagName==="optgroup")}function Ip(e,t,a){let o=le(a,t);return!!(o&&o.type==="element"&&(o.tagName==="tbody"||o.tagName==="tfoot"))}function Sp(e,t,a){let o=le(a,t);return!o||o.type==="element"&&(o.tagName==="tbody"||o.tagName==="tfoot")}function yp(e,t,a){return!le(a,t)}function bp(e,t,a){let o=le(a,t);return!o||o.type==="element"&&o.tagName==="tr"}function zi(e,t,a){let o=le(a,t);return!o||o.type==="element"&&(o.tagName==="td"||o.tagName==="th")}f();var Vi=Ka({body:vp,colgroup:Pp,head:Tp,html:kp,tbody:Ap});function kp(e){let t=le(e,-1);return!t||t.type!=="comment"}function Tp(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 vp(e){let t=le(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 Pp(e,t,a){let o=ir(a,t),r=le(e,-1,!0);return a&&o&&o.type==="element"&&o.tagName==="colgroup"&&ca(o,a.children.indexOf(o),a)?!1:!!(r&&r.type==="element"&&r.tagName==="col")}function Ap(e,t,a){let o=ir(a,t),r=le(e,-1);return a&&o&&o.type==="element"&&(o.tagName==="thead"||o.tagName==="tbody")&&ca(o,a.children.indexOf(o),a)?!1:!!(r&&r.type==="element"&&r.tagName==="tr")}var Qa={name:[[`
|
|
71
71
|
\f\r &/=>`.split(""),`
|
|
72
72
|
\f\r "&'/=>\``.split("")],[`\0
|
|
73
73
|
\f\r "&'/<=>`.split(""),`\0
|
|
@@ -75,11 +75,11 @@ import{a as yo,b as Au,c as Ru}from"../chunk-R6LESDWJ.js";import{b as Rt,c as Ct
|
|
|
75
75
|
\f\r &>`.split(""),`\0
|
|
76
76
|
\f\r "&'<=>\``.split("")],[`\0
|
|
77
77
|
\f\r "&'<=>\``.split(""),`\0
|
|
78
|
-
\f\r "&'<=>\``.split("")]],single:[["&'".split(""),"\"&'`".split("")],["\0&'".split(""),"\0\"&'`".split("")]],double:[['"&'.split(""),"\"&'`".split("")],['\0"&'.split(""),"\0\"&'`".split("")]]};function Vi(e,t,a,o){let r=o.schema,n=r.space==="svg"?!1:o.settings.omitOptionalTags,s=r.space==="svg"?o.settings.closeEmptyElements:o.settings.voids.includes(e.tagName.toLowerCase()),i=[],l;r.space==="html"&&e.tagName==="svg"&&(o.schema=ya);let u=yp(o,e.properties),c=o.all(r.space==="html"&&e.tagName==="template"?e.content:e);return o.schema=r,c&&(s=!1),(u||!n||!zi(e,t,a))&&(i.push("<",e.tagName,u?" "+u:""),s&&(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(c),!s&&(!n||!ca(e,t,a))&&i.push("</"+e.tagName+">"),i.join("")}function yp(e,t){let a=[],o=-1,r;if(t){for(r in t)if(t[r]!==null&&t[r]!==void 0){let n=bp(e,r,t[r]);n&&a.push(n)}}for(;++o<a.length;){let n=e.settings.tightAttributes?a[o].charAt(a[o].length-1):void 0;o!==a.length-1&&n!=='"'&&n!=="'"&&(a[o]+=" ")}return a.join("")}function bp(e,t,a){let o=rn(e.schema,t),r=e.settings.allowParseErrors&&e.schema.space==="html"?0:1,n=e.settings.allowDangerousCharacters?0:1,s=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=Xe(o.attribute,Object.assign({},e.settings.characterReferences,{subset:Qa.name[r][n]}));return a===!0||(a=Array.isArray(a)?(o.commaSeparated?sn:ln)(a,{padLeft:!e.settings.tightCommaSeparatedLists}):String(a),e.settings.collapseEmptyAttributes&&!a)?l:(e.settings.preferUnquoted&&(i=Xe(a,Object.assign({},e.settings.characterReferences,{attribute:!0,subset:Qa.unquoted[r][n]}))),i!==a&&(e.settings.quoteSmart&&bo(a,s)>bo(a,e.alternative)&&(s=e.alternative),i=s+Xe(a,Object.assign({},e.settings.characterReferences,{subset:(s==="'"?Qa.single:Qa.double)[r][n],attribute:!0}))+s),l+(i&&"="+i))}f();f();var kp=["<","&"];function Ja(e,t,a,o){return a&&a.type==="element"&&(a.tagName==="script"||a.tagName==="style")?e.value:Xe(e.value,Object.assign({},o.settings.characterReferences,{subset:kp}))}function $i(e,t,a,o){return o.settings.allowDangerousHtml?e.value:Ja(e,t,a,o)}f();function Xi(e,t,a,o){return o.all(e)}var Ki=un("type",{invalid:Tp,unknown:vp,handlers:{comment:Hi,doctype:qi,element:Vi,raw:$i,root:Xi,text:Ja}});function Tp(e){throw new Error("Expected node, not `"+e+"`")}function vp(e){let t=e;throw new Error("Cannot compile unknown node `"+t.type+"`")}var Pp={},Ap={},Rp=[];function lr(e,t){let a=t||Pp,o=a.quote||'"',r=o==='"'?"'":'"';if(o!=='"'&&o!=="'")throw new Error("Invalid quote `"+o+"`, expected `'` or `\"`");return{one:Mp,all:Fp,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||dn,characterReferences:a.characterReferences||Ap,closeSelfClosing:a.closeSelfClosing||!1,closeEmptyElements:a.closeEmptyElements||!1},schema:a.space==="svg"?ya:nn,quote:o,alternative:r}.one(Array.isArray(e)?{type:"root",children:e}:e,void 0,void 0)}function Mp(e,t,a){return Ki(e,t,a,this)}function Fp(e){let t=[],a=e&&e.children||Rp,o=-1;for(;++o<a.length;)t[o]=this.one(a[o],o,e);return t.join("")}function Ya(e,t){let a=typeof e=="string"?{}:{...e.colorReplacements},o=typeof e=="string"?e:e.name;for(let[r,n]of Object.entries(t?.colorReplacements||{}))typeof n=="string"?a[r]=n:r===o&&Object.assign(a,n);return a}function at(e,t){return e&&(t?.[e?.toLowerCase()]||e)}function Dp(e){return Array.isArray(e)?e:[e]}async function al(e){return Promise.resolve(typeof e=="function"?e():e).then(t=>t.default||t)}function mr(e){return!e||["plaintext","txt","text","plain"].includes(e)}function ol(e){return e==="ansi"||mr(e)}function hr(e){return e==="none"}function rl(e){return hr(e)}function nl(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 oo(e,t=!1){if(e.length===0)return[["",0]];let a=e.split(/(\r?\n)/g),o=0,r=[];for(let n=0;n<a.length;n+=2){let s=t?a[n]+(a[n+1]||""):a[n];r.push([s,o]),o+=a[n].length,o+=a[n+1]?.length||0}return r}function Bp(e){let t=oo(e,!0).map(([r])=>r);function a(r){if(r===e.length)return{line:t.length-1,character:t[t.length-1].length};let n=r,s=0;for(let i of t){if(n<i.length)break;n-=i.length,s++}return{line:s,character:n}}function o(r,n){let s=0;for(let i=0;i<r;i++)s+=t[i].length;return s+=n,s}return{lines:t,indexToPos:a,posToIndex:o}}function sl(e,t,a){let o=new Set;for(let n of e.matchAll(/:?lang=["']([^"']+)["']/g)){let s=n[1].toLowerCase().trim();s&&o.add(s)}for(let n of e.matchAll(/(?:```|~~~)([\w-]+)/g)){let s=n[1].toLowerCase().trim();s&&o.add(s)}for(let n of e.matchAll(/\\begin\{([\w-]+)\}/g)){let s=n[1].toLowerCase().trim();s&&o.add(s)}for(let n of e.matchAll(/<script\s+(?:type|lang)=["']([^"']+)["']/gi)){let s=n[1].toLowerCase().trim(),i=s.includes("/")?s.split("/").pop():s;i&&o.add(i)}if(!a)return Array.from(o);let r=a.getBundledLanguages();return Array.from(o).filter(n=>n&&r[n])}var gr="light-dark()",Ep=["color","background-color"];function _p(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 Np(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 n=a.filter(s=>r.offset<s&&s<r.offset+r.content.length).map(s=>s-r.offset).sort((s,i)=>s-i);return n.length?_p(r,n):r})):e}function Op(e,t,a,o,r="css-vars"){let n={content:e.content,explanation:e.explanation,offset:e.offset},s=t.map(c=>Za(e.variants[c])),i=new Set(s.flatMap(c=>Object.keys(c))),l={},u=(c,d)=>{let p=d==="color"?"":d==="background-color"?"-bg":`-${d}`;return a+t[c]+(d==="color"?"":p)};return s.forEach((c,d)=>{for(let p of i){let m=c[p]||"inherit";if(d===0&&o&&Ep.includes(p))if(o===gr&&s.length>1){let h=t.findIndex(L=>L==="light"),I=t.findIndex(L=>L==="dark");if(h===-1||I===-1)throw new re('When using `defaultColor: "light-dark()"`, you must provide both `light` and `dark` themes');let x=s[h][p]||"inherit",S=s[I][p]||"inherit";l[p]=`light-dark(${x}, ${S})`,r==="css-vars"&&(l[u(d,p)]=m)}else l[p]=m;else r==="css-vars"&&(l[u(d,p)]=m)}}),n.htmlStyle=l,n}function Za(e){let t={};if(e.color&&(t.color=e.color),e.bgColor&&(t["background-color"]=e.bgColor),e.fontStyle){e.fontStyle&Le.Italic&&(t["font-style"]="italic"),e.fontStyle&Le.Bold&&(t["font-weight"]="bold");let a=[];e.fontStyle&Le.Underline&&a.push("underline"),e.fontStyle&Le.Strikethrough&&a.push("line-through"),a.length&&(t["text-decoration"]=a.join(" "))}return t}function cr(e){return typeof e=="string"?e:Object.entries(e).map(([t,a])=>`${t}:${a}`).join(";")}var il=new WeakMap;function ro(e,t){il.set(e,t)}function pa(e){return il.get(e)}var vt=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(Dp(a).map(o=>[o,Va])),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 Up(this._stacks[t])}toJSON(){return{lang:this.lang,theme:this.theme,themes:this.themes,scopes:this.getScopes()}}};function Up(e){let t=[],a=new Set;function o(r){if(a.has(r))return;a.add(r);let n=r?.nameScopesList?.scopeName;n&&t.push(n),r.parent&&o(r.parent)}return o(e),t}function Hp(e,t){if(!(e instanceof vt))throw new re("Invalid grammar state");return e.getInternalStack(t)}function qp(){let e=new WeakMap;function t(a){if(!e.has(a.meta)){let o=function(s){if(typeof s=="number"){if(s<0||s>a.source.length)throw new re(`Invalid decoration offset: ${s}. Code length: ${a.source.length}`);return{...r.indexToPos(s),offset:s}}else{let i=r.lines[s.line];if(i===void 0)throw new re(`Invalid decoration position ${JSON.stringify(s)}. Lines length: ${r.lines.length}`);let l=s.character;if(l<0&&(l=i.length+l),l<0||l>i.length)throw new re(`Invalid decoration position ${JSON.stringify(s)}. Line ${s.line} length: ${i.length}`);return{...s,character:l,offset:r.posToIndex(s.line,l)}}},r=Bp(a.source),n=(a.options.decorations||[]).map(s=>({...s,start:o(s.start),end:o(s.end)}));Wp(n),e.set(a.meta,{decorations:n,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(s=>[s.start.offset,s.end.offset]);return Np(a,r)},code(a){if(!this.options.decorations?.length)return;let o=t(this),r=Array.from(a.children).filter(c=>c.type==="element"&&c.tagName==="span");if(r.length!==o.converter.lines.length)throw new re(`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 n(c,d,p,m){let h=r[c],I="",x=-1,S=-1;if(d===0&&(x=0),p===0&&(S=0),p===Number.POSITIVE_INFINITY&&(S=h.children.length),x===-1||S===-1)for(let C=0;C<h.children.length;C++)I+=ll(h.children[C]),x===-1&&I.length===d&&(x=C+1),S===-1&&I.length===p&&(S=C+1);if(x===-1)throw new re(`Failed to find start index for decoration ${JSON.stringify(m.start)}`);if(S===-1)throw new re(`Failed to find end index for decoration ${JSON.stringify(m.end)}`);let L=h.children.slice(x,S);if(!m.alwaysWrap&&L.length===h.children.length)i(h,m,"line");else if(!m.alwaysWrap&&L.length===1&&L[0].type==="element")i(L[0],m,"token");else{let C={type:"element",tagName:"span",properties:{},children:L};i(C,m,"wrapper"),h.children.splice(x,L.length,C)}}function s(c,d){r[c]=i(r[c],d,"line")}function i(c,d,p){let m=d.properties||{},h=d.transform||(I=>I);return c.tagName=d.tagName||"span",c.properties={...c.properties,...m,class:c.properties.class},d.properties?.class&&nl(c,d.properties.class),c=h(c,p)||c,c}let l=[],u=o.decorations.sort((c,d)=>d.start.offset-c.start.offset||c.end.offset-d.end.offset);for(let c of u){let{start:d,end:p}=c;if(d.line===p.line)n(d.line,d.character,p.character,c);else if(d.line<p.line){n(d.line,d.character,Number.POSITIVE_INFINITY,c);for(let m=d.line+1;m<p.line;m++)l.unshift(()=>s(m,c));n(p.line,0,p.character,c)}}l.forEach(c=>c())}}}function Wp(e){for(let t=0;t<e.length;t++){let a=e[t];if(a.start.offset>a.end.offset)throw new re(`Invalid decoration range: ${JSON.stringify(a.start)} - ${JSON.stringify(a.end)}`);for(let o=t+1;o<e.length;o++){let r=e[o],n=a.start.offset<=r.start.offset&&r.start.offset<a.end.offset,s=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(n||s||i||l){if(n&&s||i&&l||i&&a.start.offset===a.end.offset||s&&r.start.offset===r.end.offset)continue;throw new re(`Decorations ${JSON.stringify(a.start)} and ${JSON.stringify(r.start)} intersect.`)}}}}function ll(e){return e.type==="text"?e.value:e.type==="element"?e.children.map(ll).join(""):""}var Gp=[qp()];function eo(e){let t=jp(e.transformers||[]);return[...t.pre,...t.normal,...t.post,...Gp]}function jp(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 pt=["black","red","green","yellow","blue","magenta","cyan","white","brightBlack","brightRed","brightGreen","brightYellow","brightBlue","brightMagenta","brightCyan","brightWhite"],ur={1:"bold",2:"dim",3:"italic",4:"underline",7:"reverse",8:"hidden",9:"strikethrough"};function zp(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 Qi(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 Vp(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)ur[o]&&t.push({type:"setDecoration",value:ur[o]});else if(o<=29){let r=ur[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:pt[o-30]}});else if(o===38){let r=Qi(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:pt[o-40]}});else if(o===48){let r=Qi(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:pt[o-90+8]}}):o>=100&&o<=107&&t.push({type:"setBackgroundColor",value:{type:"named",name:pt[o-100+8]}})}return t}function $p(){let e=null,t=null,a=new Set;return{parse(o){let r=[],n=0;do{let s=zp(o,n),i=s.sequence?o.substring(n,s.startPosition):o.substring(n);if(i.length>0&&r.push({value:i,foreground:e,background:t,decorations:new Set(a)}),s.sequence){let l=Vp(s.sequence);for(let u of l)u.type==="resetAll"?(e=null,t=null,a.clear()):u.type==="resetForegroundColor"?e=null:u.type==="resetBackgroundColor"?t=null:u.type==="resetDecoration"&&a.delete(u.value);for(let u of l)u.type==="setForegroundColor"?e=u.value:u.type==="setBackgroundColor"?t=u.value:u.type==="setDecoration"&&a.add(u.value)}n=s.position}while(n<o.length);return r}}}var Xp={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 Kp(e=Xp){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<pt.length;u++)o.push(t(pt[u]));let i=[0,95,135,175,215,255];for(let u=0;u<6;u++)for(let c=0;c<6;c++)for(let d=0;d<6;d++)o.push(a([i[u],i[c],i[d]]));let l=8;for(let u=0;u<24;u++,l+=10)o.push(a([l,l,l]));return o}function n(i){return r()[i]}function s(i){switch(i.type){case"named":return t(i.name);case"rgb":return a(i.rgb);case"table":return n(i.index)}}return{value:s}}var Qp={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 Jp(e,t,a){let o=Ya(e,a),r=oo(t),n=Object.fromEntries(pt.map(l=>{let u=`terminal.ansi${l[0].toUpperCase()}${l.substring(1)}`,c=e.colors?.[u];return[l,c||Qp[l]]})),s=Kp(n),i=$p();return r.map(l=>i.parse(l[0]).map(u=>{let c,d;u.decorations.has("reverse")?(c=u.background?s.value(u.background):e.bg,d=u.foreground?s.value(u.foreground):e.fg):(c=u.foreground?s.value(u.foreground):e.fg,d=u.background?s.value(u.background):void 0),c=at(c,o),d=at(d,o),u.decorations.has("dim")&&(c=Yp(c));let p=Le.None;return u.decorations.has("bold")&&(p|=Le.Bold),u.decorations.has("italic")&&(p|=Le.Italic),u.decorations.has("underline")&&(p|=Le.Underline),u.decorations.has("strikethrough")&&(p|=Le.Strikethrough),{content:u.value,offset:l[1],color:c,bgColor:d,fontStyle:p}}))}function Yp(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],n=o[1],s=o[2],i=o[3],l=Math.round(Number.parseInt(`${i}${i}`,16)/2).toString(16).padStart(2,"0");return`#${r}${r}${n}${n}${s}${s}${l}`}else if(o.length===3){let r=o[0],n=o[1],s=o[2];return`#${r}${r}${n}${n}${s}${s}80`}}}let a=e.match(/var\((--[\w-]+-ansi-[\w-]+)\)/);return a?`var(${a[1]}-dim)`:e}function wr(e,t,a={}){let{theme:o=e.getLoadedThemes()[0]}=a,r=e.resolveLangAlias(a.lang||"text");if(mr(r)||hr(o))return oo(t).map(l=>[{content:l[0],offset:l[1]}]);let{theme:n,colorMap:s}=e.setTheme(o);if(r==="ansi")return Jp(n,t,a);let i=e.getLanguage(a.lang||"text");if(a.grammarState){if(a.grammarState.lang!==i.name)throw new re(`Grammar state language "${a.grammarState.lang}" does not match highlight language "${i.name}"`);if(!a.grammarState.themes.includes(n.name))throw new re(`Grammar state themes "${a.grammarState.themes}" do not contain highlight theme "${n.name}"`)}return em(t,i,n,s,a)}function Zp(...e){if(e.length===2)return pa(e[1]);let[t,a,o={}]=e,{lang:r="text",theme:n=t.getLoadedThemes()[0]}=o;if(mr(r)||hr(n))throw new re("Plain language does not have grammar state");if(r==="ansi")throw new re("ANSI language does not have grammar state");let{theme:s,colorMap:i}=t.setTheme(n),l=t.getLanguage(r);return new vt(xr(a,l,s,i,o).stateStack,l.name,s.name)}function em(e,t,a,o,r){let n=xr(e,t,a,o,r),s=new vt(n.stateStack,t.name,a.name);return ro(n.tokens,s),n.tokens}function xr(e,t,a,o,r){let n=Ya(a,r),{tokenizeMaxLineLength:s=0,tokenizeTimeLimit:i=500}=r,l=oo(e),u=r.grammarState?Hp(r.grammarState,a.name)??Va:r.grammarContextCode!=null?xr(r.grammarContextCode,t,a,o,{...r,grammarState:void 0,grammarContextCode:void 0}).stateStack:Va,c=[],d=[];for(let p=0,m=l.length;p<m;p++){let[h,I]=l[p];if(h===""){c=[],d.push([]);continue}if(s>0&&h.length>=s){c=[],d.push([{content:h,offset:I,color:"",fontStyle:0}]);continue}let x,S,L;r.includeExplanation&&(x=t.tokenizeLine(h,u,i),S=x.tokens,L=0);let C=t.tokenizeLine2(h,u,i),k=C.tokens.length/2;for(let T=0;T<k;T++){let P=C.tokens[2*T],M=T+1<k?C.tokens[2*T+2]:h.length;if(P===M)continue;let A=C.tokens[2*T+1],E=at(o[ft.getForeground(A)],n),F=ft.getFontStyle(A),_={content:h.substring(P,M),offset:I+P,color:E,fontStyle:F};if(r.includeExplanation){let v=[];if(r.includeExplanation!=="scopeName")for(let q of a.settings){let y;switch(typeof q.scope){case"string":y=q.scope.split(/,/).map(N=>N.trim());break;case"object":y=q.scope;break;default:continue}v.push({settings:q,selectors:y.map(N=>N.split(/ /))})}_.explanation=[];let D=0;for(;P+D<M;){let q=S[L],y=h.substring(q.startIndex,q.endIndex);D+=y.length,_.explanation.push({content:y,scopes:r.includeExplanation==="scopeName"?tm(q.scopes):am(v,q.scopes)}),L+=1}}c.push(_)}d.push(c),c=[],u=C.ruleStack}return{tokens:d,stateStack:u}}function tm(e){return e.map(t=>({scopeName:t}))}function am(e,t){let a=[];for(let o=0,r=t.length;o<r;o++){let n=t[o];a[o]={scopeName:n,themeMatches:rm(e,n,t.slice(0,o))}}return a}function Ji(e,t){return e===t||t.substring(0,e.length)===e&&t[e.length]==="."}function om(e,t,a){if(!Ji(e[e.length-1],t))return!1;let o=e.length-2,r=a.length-1;for(;o>=0&&r>=0;)Ji(e[o],a[r])&&(o-=1),r-=1;return o===-1}function rm(e,t,a){let o=[];for(let{selectors:r,settings:n}of e)for(let s of r)if(om(s,t,a)){o.push(n);break}return o}function ul(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=wr(e,t,{...a,theme:l.theme}),c=pa(u),d=typeof l.theme=="string"?l.theme:l.theme.name;return{tokens:u,state:c,theme:d}}),n=nm(...r.map(l=>l.tokens)),s=n[0].map((l,u)=>l.map((c,d)=>{let p={content:c.content,variants:{},offset:c.offset};return"includeExplanation"in a&&a.includeExplanation&&(p.explanation=c.explanation),n.forEach((m,h)=>{let{content:I,explanation:x,offset:S,...L}=m[u][d];p.variants[o[h].color]=L}),p})),i=r[0].state?new vt(Object.fromEntries(r.map(l=>[l.theme,l.state?.getInternalStack(l.theme)])),r[0].state.lang):void 0;return i&&ro(s,i),s}function nm(...e){let t=e.map(()=>[]),a=e.length;for(let o=0;o<e[0].length;o++){let r=e.map(l=>l[o]),n=t.map(()=>[]);t.forEach((l,u)=>l.push(n[u]));let s=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 c=i[u];c.content.length===l?(n[u].push(c),s[u]+=1,i[u]=r[u][s[u]]):(n[u].push({...c,content:c.content.slice(0,l)}),i[u]={...c,content:c.content.slice(l),offset:c.offset+l})}}}return t}function to(e,t,a){let o,r,n,s,i,l;if("themes"in a){let{defaultColor:u="light",cssVariablePrefix:c="--shiki-",colorsRendering:d="css-vars"}=a,p=Object.entries(a.themes).filter(S=>S[1]).map(S=>({color:S[0],theme:S[1]})).sort((S,L)=>S.color===u?-1:L.color===u?1:0);if(p.length===0)throw new re("`themes` option must not be empty");let m=ul(e,t,a);if(l=pa(m),u&&gr!==u&&!p.find(S=>S.color===u))throw new re(`\`themes\` option must contain the defaultColor key \`${u}\``);let h=p.map(S=>e.getTheme(S.theme)),I=p.map(S=>S.color);n=m.map(S=>S.map(L=>Op(L,I,c,u,d))),l&&ro(n,l);let x=p.map(S=>Ya(S.theme,a));r=Yi(p,h,x,c,u,"fg",d),o=Yi(p,h,x,c,u,"bg",d),s=`shiki-themes ${h.map(S=>S.name).join(" ")}`,i=u?void 0:[r,o].join(";")}else if("theme"in a){let u=Ya(a.theme,a);n=wr(e,t,a);let c=e.getTheme(a.theme);o=at(c.bg,u),r=at(c.fg,u),s=c.name,l=pa(n)}else throw new re("Invalid options, either `theme` or `themes` must be provided");return{tokens:n,fg:r,bg:o,themeName:s,rootStyle:i,grammarState:l}}function Yi(e,t,a,o,r,n,s){return e.map((i,l)=>{let u=at(t[l][n],a[l])||"inherit",c=`${o+i.color}${n==="bg"?"-bg":""}:${u}`;if(l===0&&r){if(r===gr&&e.length>1){let d=e.findIndex(I=>I.color==="light"),p=e.findIndex(I=>I.color==="dark");if(d===-1||p===-1)throw new re('When using `defaultColor: "light-dark()"`, you must provide both `light` and `dark` themes');let m=at(t[d][n],a[d])||"inherit",h=at(t[p][n],a[p])||"inherit";return`light-dark(${m}, ${h});${c}`}return u}return s==="css-vars"?c:null}).filter(i=>!!i).join(";")}function ao(e,t,a,o={meta:{},options:a,codeToHast:(r,n)=>ao(e,r,n),codeToTokens:(r,n)=>to(e,r,n)}){let r=t;for(let h of eo(a))r=h.preprocess?.call(o,r,a)||r;let{tokens:n,fg:s,bg:i,themeName:l,rootStyle:u,grammarState:c}=to(e,r,a),{mergeWhitespaces:d=!0,mergeSameStyleTokens:p=!1}=a;d===!0?n=im(n):d==="never"&&(n=lm(n)),p&&(n=um(n));let m={...o,get source(){return r}};for(let h of eo(a))n=h.tokens?.call(m,n)||n;return sm(n,{...a,fg:s,bg:i,themeName:l,rootStyle:a.rootStyle===!1?!1:a.rootStyle??u},m,c)}function sm(e,t,a,o=pa(e)){let r=eo(t),n=[],s={type:"root",children:[]},{structure:i="classic",tabindex:l="0"}=t,u={class:`shiki ${t.themeName||""}`};t.rootStyle!==!1&&(t.rootStyle!=null?u.style=t.rootStyle:u.style=`background-color:${t.bg};color:${t.fg}`),l!==!1&&l!=null&&(u.tabindex=l.toString());for(let[I,x]of Object.entries(t.meta||{}))I.startsWith("_")||(u[I]=x);let c={type:"element",tagName:"pre",properties:u,children:[],data:t.data},d={type:"element",tagName:"code",properties:{},children:n},p=[],m={...a,structure:i,addClassToHast:nl,get source(){return a.source},get tokens(){return e},get options(){return t},get root(){return s},get pre(){return c},get code(){return d},get lines(){return p}};if(e.forEach((I,x)=>{x&&(i==="inline"?s.children.push({type:"element",tagName:"br",properties:{},children:[]}):i==="classic"&&n.push({type:"text",value:`
|
|
79
|
-
`}));let S={type:"element",tagName:"span",properties:{class:"line"},children:[]},L=0;for(let C of I){let k={type:"element",tagName:"span",properties:{...C.htmlAttrs},children:[{type:"text",value:C.content}]},T=cr(C.htmlStyle||Za(C));T&&(k.properties.style=T);for(let P of r)k=P?.span?.call(m,k,x+1,L,S,C)||k;i==="inline"?s.children.push(k):i==="classic"&&S.children.push(k),L+=C.content.length}if(i==="classic"){for(let C of r)S=C?.line?.call(m,S,x+1)||S;p.push(S),n.push(S)}else i==="inline"&&p.push(S)}),i==="classic"){for(let I of r)d=I?.code?.call(m,d)||d;c.children.push(d);for(let I of r)c=I?.pre?.call(m,c)||c;s.children.push(c)}else if(i==="inline"){let I=[],x={type:"element",tagName:"span",properties:{class:"line"},children:[]};for(let C of s.children)C.type==="element"&&C.tagName==="br"?(I.push(x),x={type:"element",tagName:"span",properties:{class:"line"},children:[]}):(C.type==="element"||C.type==="text")&&x.children.push(C);I.push(x);let L={type:"element",tagName:"code",properties:{},children:I};for(let C of r)L=C?.code?.call(m,L)||L;s.children=[];for(let C=0;C<L.children.length;C++){C>0&&s.children.push({type:"element",tagName:"br",properties:{},children:[]});let k=L.children[C];k.type==="element"&&s.children.push(...k.children)}}let h=s;for(let I of r)h=I?.root?.call(m,h)||h;return o&&ro(h,o),h}function im(e){return e.map(t=>{let a=[],o="",r;return t.forEach((n,s)=>{let l=!(n.fontStyle&&(n.fontStyle&Le.Underline||n.fontStyle&Le.Strikethrough));l&&n.content.match(/^\s+$/)&&t[s+1]?(r===void 0&&(r=n.offset),o+=n.content):o?(l?a.push({...n,offset:r,content:o+n.content}):a.push({content:o,offset:r},n),r=void 0,o=""):a.push(n)}),a})}function lm(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,n,s]=o;if(!r&&!s)return a;let i=[{...a,offset:a.offset+r.length,content:n}];return r&&i.unshift({content:r,offset:a.offset}),s&&i.push({content:s,offset:a.offset+r.length+n.length}),i}))}function um(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],n=cr(r.htmlStyle||Za(r)),s=cr(o.htmlStyle||Za(o)),i=r.fontStyle&&(r.fontStyle&Le.Underline||r.fontStyle&Le.Strikethrough),l=o.fontStyle&&(o.fontStyle&Le.Underline||o.fontStyle&Le.Strikethrough);!i&&!l&&n===s?r.content+=o.content:a.push({...o})}return a})}var dm=lr;function cm(e,t,a){let o={meta:{},options:a,codeToHast:(n,s)=>ao(e,n,s),codeToTokens:(n,s)=>to(e,n,s)},r=dm(ao(e,t,a,o));for(let n of eo(a))r=n.postprocess?.call(o,r,a)||r;return r}var Zi={light:"#333333",dark:"#bbbbbb"},el={light:"#fffffe",dark:"#1e1e1e"},tl="__shiki_resolved";function Cr(e){if(e?.[tl])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"?Zi.light:Zi.dark),a||(a=t.type==="light"?el.light:el.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,n=new Map;function s(i){if(n.has(i))return n.get(i);r+=1;let l=`#${r.toString(16).padStart(8,"0").toLowerCase()}`;return t.colorReplacements?.[`#${l}`]?s(i):(n.set(i,l),l)}t.settings=t.settings.map(i=>{let l=i.settings?.foreground&&!i.settings.foreground.startsWith("#"),u=i.settings?.background&&!i.settings.background.startsWith("#");if(!l&&!u)return i;let c={...i,settings:{...i.settings}};if(l){let d=s(i.settings.foreground);t.colorReplacements[d]=i.settings.foreground,c.settings.foreground=d}if(u){let d=s(i.settings.background);t.colorReplacements[d]=i.settings.background,c.settings.background=d}return c});for(let i of Object.keys(t.colors||{}))if((i==="editor.foreground"||i==="editor.background"||i.startsWith("terminal.ansi"))&&!t.colors[i]?.startsWith("#")){let l=s(t.colors[i]);t.colorReplacements[l]=t.colors[i],t.colors[i]=l}return Object.defineProperty(t,tl,{enumerable:!1,writable:!1,value:!0}),t}async function dl(e){return Array.from(new Set((await Promise.all(e.filter(t=>!ol(t)).map(async t=>await al(t).then(a=>Array.isArray(a)?a:[a])))).flat()))}async function cl(e){return(await Promise.all(e.map(async a=>rl(a)?null:Cr(await al(a))))).filter(a=>!!a)}var dr=3,fm=!1;function pm(e,t=3){if(dr&&!(typeof dr=="number"&&t>dr)){if(fm)throw new Error(`[SHIKI DEPRECATE]: ${e}`);console.trace(`[SHIKI DEPRECATE]: ${e}`)}}var tt=class extends Error{constructor(t){super(t),this.name="ShikiError"}};function fl(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 tt(`Circular alias \`${Array.from(a).join(" -> ")} -> ${e}\``);a.add(e)}}return e}var fr=class extends Ri{constructor(t,a,o,r={}){super(t),this._resolver=t,this._themes=a,this._langs=o,this._alias=r,this._themes.map(n=>this.loadTheme(n)),this.loadLanguages(this._langs)}_resolvedThemes=new Map;_resolvedGrammars=new Map;_langMap=new Map;_langGraph=new Map;_textmateThemeCache=new WeakMap;_loadedThemesCache=null;_loadedLanguagesCache=null;getTheme(t){return typeof t=="string"?this._resolvedThemes.get(t):this.loadTheme(t)}loadTheme(t){let a=Cr(t);return a.name&&(this._resolvedThemes.set(a.name,a),this._loadedThemesCache=null),a}getLoadedThemes(){return this._loadedThemesCache||(this._loadedThemesCache=[...this._resolvedThemes.keys()]),this._loadedThemesCache}setTheme(t){let a=this._textmateThemeCache.get(t);a||(a=sa.createFromRawTheme(t),this._textmateThemeCache.set(t,a)),this._syncRegistry.setTheme(a)}getGrammar(t){return t=fl(t,this._alias),this._resolvedGrammars.get(t)}loadLanguage(t){if(this.getGrammar(t.name))return;let a=new Set([...this._langMap.values()].filter(n=>n.embeddedLangsLazy?.includes(t.name)));this._resolver.addLanguage(t);let 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(n=>{this._alias[n]=t.name}),this._loadedLanguagesCache=null,a.size)for(let n of a)this._resolvedGrammars.delete(n.name),this._loadedLanguagesCache=null,this._syncRegistry?._injectionGrammars?.delete(n.scopeName),this._syncRegistry?._grammars?.delete(n.scopeName),this.loadLanguage(this._langMap.get(n.name))}dispose(){super.dispose(),this._resolvedThemes.clear(),this._resolvedGrammars.clear(),this._langMap.clear(),this._langGraph.clear(),this._loadedThemesCache=null}loadLanguages(t){for(let r of t)this.resolveEmbeddedLanguages(r);let a=Array.from(this._langGraph.entries()),o=a.filter(([r,n])=>!n);if(o.length){let r=a.filter(([n,s])=>s?(s.embeddedLanguages||s.embeddedLangs)?.some(l=>o.map(([u])=>u).includes(l)):!1).filter(n=>!o.includes(n));throw new tt(`Missing languages ${o.map(([n])=>`\`${n}\``).join(", ")}, required by ${r.map(([n])=>`\`${n}\``).join(", ")}`)}for(let[r,n]of a)this._resolver.addLanguage(n);for(let[r,n]of a)this.loadLanguage(n)}getLoadedLanguages(){return this._loadedLanguagesCache||(this._loadedLanguagesCache=[...new Set([...this._resolvedGrammars.keys(),...Object.keys(this._alias)])]),this._loadedLanguagesCache}resolveEmbeddedLanguages(t){this._langMap.set(t.name,t),this._langGraph.set(t.name,t);let a=t.embeddedLanguages??t.embeddedLangs;if(a)for(let o of a)this._langGraph.set(o,this._langMap.get(o))}},pr=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 n=a.slice(0,r).join(".");o=[...o,...this._injections.get(n)||[]]}return o}},fa=0;function mm(e){fa+=1,e.warnings!==!1&&fa>=10&&fa%10===0&&console.warn(`[Shiki] ${fa} 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 tt("`engine` option is required for synchronous mode");let a=(e.langs||[]).flat(1),o=(e.themes||[]).flat(1).map(Cr),r=new pr(e.engine,a),n=new fr(r,o,a,e.langAlias),s;function i(C){return fl(C,e.langAlias)}function l(C){S();let k=n.getGrammar(typeof C=="string"?C:C.name);if(!k)throw new tt(`Language \`${C}\` not found, you may need to load it first`);return k}function u(C){if(C==="none")return{bg:"",fg:"",name:"none",settings:[],type:"dark"};S();let k=n.getTheme(C);if(!k)throw new tt(`Theme \`${C}\` not found, you may need to load it first`);return k}function c(C){S();let k=u(C);s!==C&&(n.setTheme(k),s=C);let T=n.getColorMap();return{theme:k,colorMap:T}}function d(){return S(),n.getLoadedThemes()}function p(){return S(),n.getLoadedLanguages()}function m(...C){S(),n.loadLanguages(C.flat(1))}async function h(...C){return m(await dl(C))}function I(...C){S();for(let k of C.flat(1))n.loadTheme(k)}async function x(...C){return S(),I(await cl(C))}function S(){if(t)throw new tt("Shiki instance has been disposed")}function L(){t||(t=!0,n.dispose(),fa-=1)}return{setTheme:c,getTheme:u,getLanguage:l,getLoadedThemes:d,getLoadedLanguages:p,resolveLangAlias:i,loadLanguage:h,loadLanguageSync:m,loadTheme:x,loadThemeSync:I,dispose:L,[Symbol.dispose]:L}}async function hm(e){e.engine||pm("`engine` option is required. Use `createOnigurumaEngine` or `createJavaScriptRegexEngine` to create an engine.");let[t,a,o]=await Promise.all([cl(e.themes||[]),dl(e.langs||[]),e.engine]);return mm({...e,themes:t,langs:a,engine:o})}async function gm(e){let t=await hm(e);return{getLastGrammarState:(...a)=>Zp(t,...a),codeToTokensBase:(a,o)=>wr(t,a,o),codeToTokensWithThemes:(a,o)=>ul(t,a,o),codeToTokens:(a,o)=>to(t,a,o),codeToHast:(a,o)=>ao(t,a,o),codeToHtml:(a,o)=>cm(t,a,o),getBundledLanguages:()=>({}),getBundledThemes:()=>({}),...t,getInternalContext:()=>t}}function pl(e){let t=e.langs,a=e.themes,o=e.engine;async function r(n){function s(d){if(typeof d=="string"){if(d=n.langAlias?.[d]||d,ol(d))return[];let p=t[d];if(!p)throw new re(`Language \`${d}\` is not included in this bundle. You may want to load it from external source.`);return p}return d}function i(d){if(rl(d))return"none";if(typeof d=="string"){let p=a[d];if(!p)throw new re(`Theme \`${d}\` is not included in this bundle. You may want to load it from external source.`);return p}return d}let l=(n.themes??[]).map(d=>i(d)),u=(n.langs??[]).map(d=>s(d)),c=await gm({engine:n.engine??o(),...n,themes:l,langs:u});return{...c,loadLanguage(...d){return c.loadLanguage(...d.map(s))},loadTheme(...d){return c.loadTheme(...d.map(i))},getBundledLanguages(){return t},getBundledThemes(){return a}}}return r}function wm(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 ml(e,t){let a=wm(e);async function o(r,n){let s=await a({langs:[n.lang],themes:"theme"in n?[n.theme]:Object.values(n.themes)}),i=await t?.guessEmbeddedLanguages?.(r,n.lang,s);return i&&await s.loadLanguage(...i),s}return{getSingletonHighlighter(r){return a(r)},async codeToHtml(r,n){return(await o(r,n)).codeToHtml(r,n)},async codeToHast(r,n){return(await o(r,n)).codeToHast(r,n)},async codeToTokens(r,n){return(await o(r,n)).codeToTokens(r,n)},async codeToTokensBase(r,n){return(await o(r,n)).codeToTokensBase(r,n)},async codeToTokensWithThemes(r,n){return(await o(r,n)).codeToTokensWithThemes(r,n)},async getLastGrammarState(r,n){return(await a({langs:[n.lang],themes:[n.theme]})).getLastGrammarState(r,n)}}}f();var Lr=[{id:"abap",name:"ABAP",import:(()=>import("../abap-3IAGZ3PS.js"))},{id:"actionscript-3",name:"ActionScript",import:(()=>import("../actionscript-3-C46RIPM4.js"))},{id:"ada",name:"Ada",import:(()=>import("../ada-DNTYS66P.js"))},{id:"angular-html",name:"Angular HTML",import:(()=>import("../angular-html-GK625GFM.js"))},{id:"angular-ts",name:"Angular TypeScript",import:(()=>import("../angular-ts-BBPQXDS2.js"))},{id:"apache",name:"Apache Conf",import:(()=>import("../apache-DU26FTNI.js"))},{id:"apex",name:"Apex",import:(()=>import("../apex-OU63AG2P.js"))},{id:"apl",name:"APL",import:(()=>import("../apl-JGB4KP74.js"))},{id:"applescript",name:"AppleScript",import:(()=>import("../applescript-TT4XSRXH.js"))},{id:"ara",name:"Ara",import:(()=>import("../ara-Q7AJDKA4.js"))},{id:"asciidoc",name:"AsciiDoc",aliases:["adoc"],import:(()=>import("../asciidoc-WADBFJPS.js"))},{id:"asm",name:"Assembly",import:(()=>import("../asm-D3LJR7GV.js"))},{id:"astro",name:"Astro",import:(()=>import("../astro-K7JGTCPV.js"))},{id:"awk",name:"AWK",import:(()=>import("../awk-DCAM52A7.js"))},{id:"ballerina",name:"Ballerina",import:(()=>import("../ballerina-44XARFEK.js"))},{id:"bat",name:"Batch File",aliases:["batch"],import:(()=>import("../bat-WM4RL2AB.js"))},{id:"beancount",name:"Beancount",import:(()=>import("../beancount-5PUWGPVT.js"))},{id:"berry",name:"Berry",aliases:["be"],import:(()=>import("../berry-YAK4XTWX.js"))},{id:"bibtex",name:"BibTeX",import:(()=>import("../bibtex-2ISWNMJJ.js"))},{id:"bicep",name:"Bicep",import:(()=>import("../bicep-EOACOM4G.js"))},{id:"blade",name:"Blade",import:(()=>import("../blade-RWJJQSLU.js"))},{id:"bsl",name:"1C (Enterprise)",aliases:["1c"],import:(()=>import("../bsl-TNLQPNE3.js"))},{id:"c",name:"C",import:(()=>import("../c-G7V525MX.js"))},{id:"c3",name:"C3",import:(()=>import("../c3-CDQIRWGP.js"))},{id:"cadence",name:"Cadence",aliases:["cdc"],import:(()=>import("../cadence-U32GKKTR.js"))},{id:"cairo",name:"Cairo",import:(()=>import("../cairo-26RR6N4F.js"))},{id:"clarity",name:"Clarity",import:(()=>import("../clarity-4JIHRN2V.js"))},{id:"clojure",name:"Clojure",aliases:["clj"],import:(()=>import("../clojure-PKTTXYYS.js"))},{id:"cmake",name:"CMake",import:(()=>import("../cmake-HXKHWGGH.js"))},{id:"cobol",name:"COBOL",import:(()=>import("../cobol-ZFZ6ZP6X.js"))},{id:"codeowners",name:"CODEOWNERS",import:(()=>import("../codeowners-WCXRHQ2R.js"))},{id:"codeql",name:"CodeQL",aliases:["ql"],import:(()=>import("../codeql-XZZ2USHF.js"))},{id:"coffee",name:"CoffeeScript",aliases:["coffeescript"],import:(()=>import("../coffee-SGQWHBUL.js"))},{id:"common-lisp",name:"Common Lisp",aliases:["lisp"],import:(()=>import("../common-lisp-IK3DGBCK.js"))},{id:"coq",name:"Coq",import:(()=>import("../coq-UPTUVPLH.js"))},{id:"cpp",name:"C++",aliases:["c++"],import:(()=>import("../cpp-HLYUQ6RF.js"))},{id:"crystal",name:"Crystal",import:(()=>import("../crystal-UPNOBGN4.js"))},{id:"csharp",name:"C#",aliases:["c#","cs"],import:(()=>import("../csharp-6EXQ7B24.js"))},{id:"css",name:"CSS",import:(()=>import("../css-MH4LSMNV.js"))},{id:"csv",name:"CSV",import:(()=>import("../csv-CRTD5FOL.js"))},{id:"cue",name:"CUE",import:(()=>import("../cue-IFMTDLM2.js"))},{id:"cypher",name:"Cypher",aliases:["cql"],import:(()=>import("../cypher-WH7754G7.js"))},{id:"d",name:"D",import:(()=>import("../d-VFMGCSG3.js"))},{id:"dart",name:"Dart",import:(()=>import("../dart-CSERBUPM.js"))},{id:"dax",name:"DAX",import:(()=>import("../dax-Y4DTPR3K.js"))},{id:"desktop",name:"Desktop",import:(()=>import("../desktop-UYAYGPQT.js"))},{id:"diff",name:"Diff",import:(()=>import("../diff-BJDM3N45.js"))},{id:"docker",name:"Dockerfile",aliases:["dockerfile"],import:(()=>import("../docker-UOM4Q7PD.js"))},{id:"dotenv",name:"dotEnv",import:(()=>import("../dotenv-LK44WBD3.js"))},{id:"dream-maker",name:"Dream Maker",import:(()=>import("../dream-maker-7RP4JRQH.js"))},{id:"edge",name:"Edge",import:(()=>import("../edge-XE5XFLFP.js"))},{id:"elixir",name:"Elixir",import:(()=>import("../elixir-EXRA4QJX.js"))},{id:"elm",name:"Elm",import:(()=>import("../elm-THYL2NRS.js"))},{id:"emacs-lisp",name:"Emacs Lisp",aliases:["elisp"],import:(()=>import("../emacs-lisp-YHLQYGNI.js"))},{id:"erb",name:"ERB",import:(()=>import("../erb-LRUOJBTB.js"))},{id:"erlang",name:"Erlang",aliases:["erl"],import:(()=>import("../erlang-UNX5MMGA.js"))},{id:"fennel",name:"Fennel",import:(()=>import("../fennel-HYSSBG3N.js"))},{id:"fish",name:"Fish",import:(()=>import("../fish-PTKGQOJI.js"))},{id:"fluent",name:"Fluent",aliases:["ftl"],import:(()=>import("../fluent-LEZHPPJV.js"))},{id:"fortran-fixed-form",name:"Fortran (Fixed Form)",aliases:["f","for","f77"],import:(()=>import("../fortran-fixed-form-J5AMEFMB.js"))},{id:"fortran-free-form",name:"Fortran (Free Form)",aliases:["f90","f95","f03","f08","f18"],import:(()=>import("../fortran-free-form-S3BNTBLS.js"))},{id:"fsharp",name:"F#",aliases:["f#","fs"],import:(()=>import("../fsharp-H4OIW62Z.js"))},{id:"gdresource",name:"GDResource",aliases:["tscn","tres"],import:(()=>import("../gdresource-A6NTYFLM.js"))},{id:"gdscript",name:"GDScript",aliases:["gd"],import:(()=>import("../gdscript-YQUSJRNZ.js"))},{id:"gdshader",name:"GDShader",import:(()=>import("../gdshader-S5432GFE.js"))},{id:"genie",name:"Genie",import:(()=>import("../genie-RNVG5N7L.js"))},{id:"gherkin",name:"Gherkin",import:(()=>import("../gherkin-E5R62T6O.js"))},{id:"git-commit",name:"Git Commit Message",import:(()=>import("../git-commit-QGH6XOBG.js"))},{id:"git-rebase",name:"Git Rebase Message",import:(()=>import("../git-rebase-XTCZTXU4.js"))},{id:"gleam",name:"Gleam",import:(()=>import("../gleam-W5WZ7CST.js"))},{id:"glimmer-js",name:"Glimmer JS",aliases:["gjs"],import:(()=>import("../glimmer-js-JA25I4AE.js"))},{id:"glimmer-ts",name:"Glimmer TS",aliases:["gts"],import:(()=>import("../glimmer-ts-CKELYRRF.js"))},{id:"glsl",name:"GLSL",import:(()=>import("../glsl-PVW2OPUD.js"))},{id:"gn",name:"GN",import:(()=>import("../gn-FCAO7WI5.js"))},{id:"gnuplot",name:"Gnuplot",import:(()=>import("../gnuplot-Q6SE5CHZ.js"))},{id:"go",name:"Go",import:(()=>import("../go-CPCZAAWX.js"))},{id:"graphql",name:"GraphQL",aliases:["gql"],import:(()=>import("../graphql-UN5O7U5U.js"))},{id:"groovy",name:"Groovy",import:(()=>import("../groovy-PJAEBBJY.js"))},{id:"hack",name:"Hack",import:(()=>import("../hack-QIUJFE3G.js"))},{id:"haml",name:"Ruby Haml",import:(()=>import("../haml-JQIESO7E.js"))},{id:"handlebars",name:"Handlebars",aliases:["hbs"],import:(()=>import("../handlebars-UBV5AWUH.js"))},{id:"haskell",name:"Haskell",aliases:["hs"],import:(()=>import("../haskell-NX6XRMNO.js"))},{id:"haxe",name:"Haxe",import:(()=>import("../haxe-7YNB7FVC.js"))},{id:"hcl",name:"HashiCorp HCL",import:(()=>import("../hcl-ZF75ASCX.js"))},{id:"hjson",name:"Hjson",import:(()=>import("../hjson-65TX6QOC.js"))},{id:"hlsl",name:"HLSL",import:(()=>import("../hlsl-U2O526MI.js"))},{id:"html",name:"HTML",import:(()=>import("../html-AWDHWPK7.js"))},{id:"html-derivative",name:"HTML (Derivative)",import:(()=>import("../html-derivative-QY3ZIV7G.js"))},{id:"http",name:"HTTP",import:(()=>import("../http-KIGXJYY6.js"))},{id:"hurl",name:"Hurl",import:(()=>import("../hurl-BZB5LDD5.js"))},{id:"hxml",name:"HXML",import:(()=>import("../hxml-IGTXIURH.js"))},{id:"hy",name:"Hy",import:(()=>import("../hy-CLDGXJYP.js"))},{id:"imba",name:"Imba",import:(()=>import("../imba-NWHLCVE5.js"))},{id:"ini",name:"INI",aliases:["properties"],import:(()=>import("../ini-R6WYP7NC.js"))},{id:"java",name:"Java",import:(()=>import("../java-DHBXDMBM.js"))},{id:"javascript",name:"JavaScript",aliases:["js","cjs","mjs"],import:(()=>import("../javascript-GNUEDNHO.js"))},{id:"jinja",name:"Jinja",import:(()=>import("../jinja-AEVQQKWS.js"))},{id:"jison",name:"Jison",import:(()=>import("../jison-64A6IJCV.js"))},{id:"json",name:"JSON",import:(()=>import("../json-2ELCHKXT.js"))},{id:"json5",name:"JSON5",import:(()=>import("../json5-QRH5UJYD.js"))},{id:"jsonc",name:"JSON with Comments",import:(()=>import("../jsonc-IXPVR4NY.js"))},{id:"jsonl",name:"JSON Lines",import:(()=>import("../jsonl-C57GMUK5.js"))},{id:"jsonnet",name:"Jsonnet",import:(()=>import("../jsonnet-VNADFLKI.js"))},{id:"jssm",name:"JSSM",aliases:["fsl"],import:(()=>import("../jssm-CW4ZYDSF.js"))},{id:"jsx",name:"JSX",import:(()=>import("../jsx-YTENXENT.js"))},{id:"julia",name:"Julia",aliases:["jl"],import:(()=>import("../julia-75QR2XDN.js"))},{id:"kdl",name:"KDL",import:(()=>import("../kdl-X3AS2HRT.js"))},{id:"kotlin",name:"Kotlin",aliases:["kt","kts"],import:(()=>import("../kotlin-WGITM75W.js"))},{id:"kusto",name:"Kusto",aliases:["kql"],import:(()=>import("../kusto-LT46F7AO.js"))},{id:"latex",name:"LaTeX",import:(()=>import("../latex-R4PJ7JDY.js"))},{id:"lean",name:"Lean 4",aliases:["lean4"],import:(()=>import("../lean-DYWOENAS.js"))},{id:"less",name:"Less",import:(()=>import("../less-ZYJT7MPU.js"))},{id:"liquid",name:"Liquid",import:(()=>import("../liquid-S4LVU77Y.js"))},{id:"llvm",name:"LLVM IR",import:(()=>import("../llvm-WBQ7MHV7.js"))},{id:"log",name:"Log file",import:(()=>import("../log-AXKDFD3L.js"))},{id:"logo",name:"Logo",import:(()=>import("../logo-E23LAFZY.js"))},{id:"lua",name:"Lua",import:(()=>import("../lua-QQ5QEPPO.js"))},{id:"luau",name:"Luau",import:(()=>import("../luau-D432BEB5.js"))},{id:"make",name:"Makefile",aliases:["makefile"],import:(()=>import("../make-QFMWQJMG.js"))},{id:"markdown",name:"Markdown",aliases:["md"],import:(()=>import("../markdown-D756RUOP.js"))},{id:"marko",name:"Marko",import:(()=>import("../marko-WVASNOGB.js"))},{id:"matlab",name:"MATLAB",import:(()=>import("../matlab-ZKZ7YBAH.js"))},{id:"mdc",name:"MDC",import:(()=>import("../mdc-NDTDGSIG.js"))},{id:"mdx",name:"MDX",import:(()=>import("../mdx-34BL2O4O.js"))},{id:"mermaid",name:"Mermaid",aliases:["mmd"],import:(()=>import("../mermaid-54Z3SAII.js"))},{id:"mipsasm",name:"MIPS Assembly",aliases:["mips"],import:(()=>import("../mipsasm-NKQWJEL7.js"))},{id:"mojo",name:"Mojo",import:(()=>import("../mojo-KRRNBH7O.js"))},{id:"moonbit",name:"MoonBit",aliases:["mbt","mbti"],import:(()=>import("../moonbit-LQ7JL5LZ.js"))},{id:"move",name:"Move",import:(()=>import("../move-4VWCI4YQ.js"))},{id:"narrat",name:"Narrat Language",aliases:["nar"],import:(()=>import("../narrat-4QSDQDLH.js"))},{id:"nextflow",name:"Nextflow",aliases:["nf"],import:(()=>import("../nextflow-DPCEWQNZ.js"))},{id:"nginx",name:"Nginx",import:(()=>import("../nginx-DXHAXQRH.js"))},{id:"nim",name:"Nim",import:(()=>import("../nim-Z6EEJ7SX.js"))},{id:"nix",name:"Nix",import:(()=>import("../nix-WAYR4BYU.js"))},{id:"nushell",name:"nushell",aliases:["nu"],import:(()=>import("../nushell-26KZW4VL.js"))},{id:"objective-c",name:"Objective-C",aliases:["objc"],import:(()=>import("../objective-c-246HWLKT.js"))},{id:"objective-cpp",name:"Objective-C++",import:(()=>import("../objective-cpp-RJUXXPYQ.js"))},{id:"ocaml",name:"OCaml",import:(()=>import("../ocaml-P7NGS7PR.js"))},{id:"odin",name:"Odin",import:(()=>import("../odin-UPPZCJGN.js"))},{id:"openscad",name:"OpenSCAD",aliases:["scad"],import:(()=>import("../openscad-JRK6K3FL.js"))},{id:"pascal",name:"Pascal",import:(()=>import("../pascal-RDFLUHHA.js"))},{id:"perl",name:"Perl",import:(()=>import("../perl-5IQEFQG3.js"))},{id:"php",name:"PHP",import:(()=>import("../php-UQGWKJAF.js"))},{id:"pkl",name:"Pkl",import:(()=>import("../pkl-PAM76VXP.js"))},{id:"plsql",name:"PL/SQL",import:(()=>import("../plsql-3Y6UMFEG.js"))},{id:"po",name:"Gettext PO",aliases:["pot","potx"],import:(()=>import("../po-GNTAKCTE.js"))},{id:"polar",name:"Polar",import:(()=>import("../polar-EVTMRLGV.js"))},{id:"postcss",name:"PostCSS",import:(()=>import("../postcss-42343LW7.js"))},{id:"powerquery",name:"PowerQuery",import:(()=>import("../powerquery-M34PNR4X.js"))},{id:"powershell",name:"PowerShell",aliases:["ps","ps1"],import:(()=>import("../powershell-IR7ICFQW.js"))},{id:"prisma",name:"Prisma",import:(()=>import("../prisma-RXSIFLZX.js"))},{id:"prolog",name:"Prolog",import:(()=>import("../prolog-YBBQ4UD5.js"))},{id:"proto",name:"Protocol Buffer 3",aliases:["protobuf"],import:(()=>import("../proto-U4FF45G6.js"))},{id:"pug",name:"Pug",aliases:["jade"],import:(()=>import("../pug-XHTBJJNO.js"))},{id:"puppet",name:"Puppet",import:(()=>import("../puppet-HWOKIYJP.js"))},{id:"purescript",name:"PureScript",import:(()=>import("../purescript-D45AJS5J.js"))},{id:"python",name:"Python",aliases:["py"],import:(()=>import("../python-QWA7UE2I.js"))},{id:"qml",name:"QML",import:(()=>import("../qml-RHCWFR3S.js"))},{id:"qmldir",name:"QML Directory",import:(()=>import("../qmldir-FBDC3XMZ.js"))},{id:"qss",name:"Qt Style Sheets",import:(()=>import("../qss-AD3WZQ45.js"))},{id:"r",name:"R",import:(()=>import("../r-NHIAHDOD.js"))},{id:"racket",name:"Racket",import:(()=>import("../racket-7G65C5N5.js"))},{id:"raku",name:"Raku",aliases:["perl6"],import:(()=>import("../raku-IWS7BLGD.js"))},{id:"razor",name:"ASP.NET Razor",import:(()=>import("../razor-UMC4HKIF.js"))},{id:"reg",name:"Windows Registry Script",import:(()=>import("../reg-V4XLWESR.js"))},{id:"regexp",name:"RegExp",aliases:["regex"],import:(()=>import("../regexp-XP4MR635.js"))},{id:"rel",name:"Rel",import:(()=>import("../rel-DE6UXATM.js"))},{id:"riscv",name:"RISC-V",import:(()=>import("../riscv-5PDXBPPL.js"))},{id:"ron",name:"RON",import:(()=>import("../ron-WD6BJFDY.js"))},{id:"rosmsg",name:"ROS Interface",import:(()=>import("../rosmsg-7LDUCZRQ.js"))},{id:"rst",name:"reStructuredText",import:(()=>import("../rst-HCGHBPBZ.js"))},{id:"ruby",name:"Ruby",aliases:["rb"],import:(()=>import("../ruby-ML25RVXY.js"))},{id:"rust",name:"Rust",aliases:["rs"],import:(()=>import("../rust-Z2NYMT2Z.js"))},{id:"sas",name:"SAS",import:(()=>import("../sas-A4JCTK6H.js"))},{id:"sass",name:"Sass",import:(()=>import("../sass-75VDP7DE.js"))},{id:"scala",name:"Scala",import:(()=>import("../scala-7TJ4N6KC.js"))},{id:"scheme",name:"Scheme",import:(()=>import("../scheme-5XARZMKT.js"))},{id:"scss",name:"SCSS",import:(()=>import("../scss-4QR2BXFS.js"))},{id:"sdbl",name:"1C (Query)",aliases:["1c-query"],import:(()=>import("../sdbl-6M55AJVA.js"))},{id:"shaderlab",name:"ShaderLab",aliases:["shader"],import:(()=>import("../shaderlab-322XNY5V.js"))},{id:"shellscript",name:"Shell",aliases:["bash","sh","shell","zsh"],import:(()=>import("../shellscript-F23VVVTW.js"))},{id:"shellsession",name:"Shell Session",aliases:["console"],import:(()=>import("../shellsession-G65XJMCC.js"))},{id:"smalltalk",name:"Smalltalk",import:(()=>import("../smalltalk-LALIO5SC.js"))},{id:"solidity",name:"Solidity",import:(()=>import("../solidity-TQUKTJZZ.js"))},{id:"soy",name:"Closure Templates",aliases:["closure-templates"],import:(()=>import("../soy-ALTWCQTO.js"))},{id:"sparql",name:"SPARQL",import:(()=>import("../sparql-ARI3MVK7.js"))},{id:"splunk",name:"Splunk Query Language",aliases:["spl"],import:(()=>import("../splunk-QEFG3NPJ.js"))},{id:"sql",name:"SQL",import:(()=>import("../sql-SBP7VV3V.js"))},{id:"ssh-config",name:"SSH Config",import:(()=>import("../ssh-config-SC6RC6IV.js"))},{id:"stata",name:"Stata",import:(()=>import("../stata-MNI5YOQU.js"))},{id:"stylus",name:"Stylus",aliases:["styl"],import:(()=>import("../stylus-YYWEHAK3.js"))},{id:"surrealql",name:"SurrealQL",aliases:["surql"],import:(()=>import("../surrealql-5X7LI3J6.js"))},{id:"svelte",name:"Svelte",import:(()=>import("../svelte-6TT7H4YP.js"))},{id:"swift",name:"Swift",import:(()=>import("../swift-JEBLU4EM.js"))},{id:"system-verilog",name:"SystemVerilog",import:(()=>import("../system-verilog-46QRSGNM.js"))},{id:"systemd",name:"Systemd Units",import:(()=>import("../systemd-3PUVCSI7.js"))},{id:"talonscript",name:"TalonScript",aliases:["talon"],import:(()=>import("../talonscript-AK4LB3KC.js"))},{id:"tasl",name:"Tasl",import:(()=>import("../tasl-VHTYBUVI.js"))},{id:"tcl",name:"Tcl",import:(()=>import("../tcl-UUMKHRHL.js"))},{id:"templ",name:"Templ",import:(()=>import("../templ-WN3SJLUV.js"))},{id:"terraform",name:"Terraform",aliases:["tf","tfvars"],import:(()=>import("../terraform-GCGIT2RL.js"))},{id:"tex",name:"TeX",import:(()=>import("../tex-L55DZDKV.js"))},{id:"toml",name:"TOML",import:(()=>import("../toml-7AH4HFBN.js"))},{id:"ts-tags",name:"TypeScript with Tags",aliases:["lit"],import:(()=>import("../ts-tags-NAJDOQCO.js"))},{id:"tsv",name:"TSV",import:(()=>import("../tsv-EB3LRXYX.js"))},{id:"tsx",name:"TSX",import:(()=>import("../tsx-Y5YXGNIX.js"))},{id:"turtle",name:"Turtle",import:(()=>import("../turtle-KM6UGYIQ.js"))},{id:"twig",name:"Twig",import:(()=>import("../twig-GIY7NVAA.js"))},{id:"typescript",name:"TypeScript",aliases:["ts","cts","mts"],import:(()=>import("../typescript-ZF5AMNEZ.js"))},{id:"typespec",name:"TypeSpec",aliases:["tsp"],import:(()=>import("../typespec-6JSRRA42.js"))},{id:"typst",name:"Typst",aliases:["typ"],import:(()=>import("../typst-ZOSAUKL5.js"))},{id:"v",name:"V",import:(()=>import("../v-HVLBO3DI.js"))},{id:"vala",name:"Vala",import:(()=>import("../vala-WWRVCJNF.js"))},{id:"vb",name:"Visual Basic",aliases:["cmd"],import:(()=>import("../vb-XFFF4O73.js"))},{id:"verilog",name:"Verilog",import:(()=>import("../verilog-XTDPJNP7.js"))},{id:"vhdl",name:"VHDL",import:(()=>import("../vhdl-OCZJ2AOZ.js"))},{id:"viml",name:"Vim Script",aliases:["vim","vimscript"],import:(()=>import("../viml-PVA3ZJ5L.js"))},{id:"vue",name:"Vue",import:(()=>import("../vue-V6GLJNYA.js"))},{id:"vue-html",name:"Vue HTML",import:(()=>import("../vue-html-G4DE7FYD.js"))},{id:"vue-vine",name:"Vue Vine",import:(()=>import("../vue-vine-KB45C76H.js"))},{id:"vyper",name:"Vyper",aliases:["vy"],import:(()=>import("../vyper-SBDFKHRI.js"))},{id:"wasm",name:"WebAssembly",import:(()=>import("../wasm-SXNE4SKX.js"))},{id:"wenyan",name:"Wenyan",aliases:["\u6587\u8A00"],import:(()=>import("../wenyan-PMSCJP7P.js"))},{id:"wgsl",name:"WGSL",import:(()=>import("../wgsl-DOXQU7M4.js"))},{id:"wikitext",name:"Wikitext",aliases:["mediawiki","wiki"],import:(()=>import("../wikitext-LGNEKWDX.js"))},{id:"wit",name:"WebAssembly Interface Types",import:(()=>import("../wit-G62U2KBE.js"))},{id:"wolfram",name:"Wolfram",aliases:["wl"],import:(()=>import("../wolfram-YTZHUYN6.js"))},{id:"xml",name:"XML",import:(()=>import("../xml-WGLM4CWK.js"))},{id:"xsl",name:"XSL",import:(()=>import("../xsl-KAAH2GEK.js"))},{id:"yaml",name:"YAML",aliases:["yml"],import:(()=>import("../yaml-JGEBDSVI.js"))},{id:"zenscript",name:"ZenScript",import:(()=>import("../zenscript-QQQPZNJ7.js"))},{id:"zig",name:"Zig",import:(()=>import("../zig-6LJUAPBA.js"))}],hl=Object.fromEntries(Lr.map(e=>[e.id,e.import])),gl=Object.fromEntries(Lr.flatMap(e=>e.aliases?.map(t=>[t,e.import])||[])),ma={...hl,...gl};f();var xm=[{id:"andromeeda",displayName:"Andromeeda",type:"dark",import:(()=>import("../andromeeda-XSK3JERF.js"))},{id:"aurora-x",displayName:"Aurora X",type:"dark",import:(()=>import("../aurora-x-CGSVHL4H.js"))},{id:"ayu-dark",displayName:"Ayu Dark",type:"dark",import:(()=>import("../ayu-dark-XYI57HMC.js"))},{id:"ayu-light",displayName:"Ayu Light",type:"light",import:(()=>import("../ayu-light-4PSGMDIC.js"))},{id:"ayu-mirage",displayName:"Ayu Mirage",type:"dark",import:(()=>import("../ayu-mirage-DU5SNMZX.js"))},{id:"catppuccin-frappe",displayName:"Catppuccin Frapp\xE9",type:"dark",import:(()=>import("../catppuccin-frappe-UZ4N3Z4I.js"))},{id:"catppuccin-latte",displayName:"Catppuccin Latte",type:"light",import:(()=>import("../catppuccin-latte-GCOWYLZG.js"))},{id:"catppuccin-macchiato",displayName:"Catppuccin Macchiato",type:"dark",import:(()=>import("../catppuccin-macchiato-PJD7W5WJ.js"))},{id:"catppuccin-mocha",displayName:"Catppuccin Mocha",type:"dark",import:(()=>import("../catppuccin-mocha-RRH4FOBS.js"))},{id:"dark-plus",displayName:"Dark Plus",type:"dark",import:(()=>import("../dark-plus-PSM5XP2I.js"))},{id:"dracula",displayName:"Dracula Theme",type:"dark",import:(()=>import("../dracula-2VHT5LK5.js"))},{id:"dracula-soft",displayName:"Dracula Theme Soft",type:"dark",import:(()=>import("../dracula-soft-MSCUO73T.js"))},{id:"everforest-dark",displayName:"Everforest Dark",type:"dark",import:(()=>import("../everforest-dark-AGVJEQ35.js"))},{id:"everforest-light",displayName:"Everforest Light",type:"light",import:(()=>import("../everforest-light-62GPFKVJ.js"))},{id:"github-dark",displayName:"GitHub Dark",type:"dark",import:(()=>import("../github-dark-5OJVMBCE.js"))},{id:"github-dark-default",displayName:"GitHub Dark Default",type:"dark",import:(()=>import("../github-dark-default-4WERFSZW.js"))},{id:"github-dark-dimmed",displayName:"GitHub Dark Dimmed",type:"dark",import:(()=>import("../github-dark-dimmed-7VD3SZKC.js"))},{id:"github-dark-high-contrast",displayName:"GitHub Dark High Contrast",type:"dark",import:(()=>import("../github-dark-high-contrast-FVMMS656.js"))},{id:"github-light",displayName:"GitHub Light",type:"light",import:(()=>import("../github-light-SE4LEKO7.js"))},{id:"github-light-default",displayName:"GitHub Light Default",type:"light",import:(()=>import("../github-light-default-TV7BYQGI.js"))},{id:"github-light-high-contrast",displayName:"GitHub Light High Contrast",type:"light",import:(()=>import("../github-light-high-contrast-WKO4I3G7.js"))},{id:"gruvbox-dark-hard",displayName:"Gruvbox Dark Hard",type:"dark",import:(()=>import("../gruvbox-dark-hard-LOYZQIGI.js"))},{id:"gruvbox-dark-medium",displayName:"Gruvbox Dark Medium",type:"dark",import:(()=>import("../gruvbox-dark-medium-UIMSJJ6K.js"))},{id:"gruvbox-dark-soft",displayName:"Gruvbox Dark Soft",type:"dark",import:(()=>import("../gruvbox-dark-soft-PU6RNTTO.js"))},{id:"gruvbox-light-hard",displayName:"Gruvbox Light Hard",type:"light",import:(()=>import("../gruvbox-light-hard-ZQJ7XSZF.js"))},{id:"gruvbox-light-medium",displayName:"Gruvbox Light Medium",type:"light",import:(()=>import("../gruvbox-light-medium-CD3ZGYV6.js"))},{id:"gruvbox-light-soft",displayName:"Gruvbox Light Soft",type:"light",import:(()=>import("../gruvbox-light-soft-S74MAGOM.js"))},{id:"horizon",displayName:"Horizon",type:"dark",import:(()=>import("../horizon-EAAZ4KVN.js"))},{id:"houston",displayName:"Houston",type:"dark",import:(()=>import("../houston-UNRWGR67.js"))},{id:"kanagawa-dragon",displayName:"Kanagawa Dragon",type:"dark",import:(()=>import("../kanagawa-dragon-BOSCCB42.js"))},{id:"kanagawa-lotus",displayName:"Kanagawa Lotus",type:"light",import:(()=>import("../kanagawa-lotus-NXMB2IVI.js"))},{id:"kanagawa-wave",displayName:"Kanagawa Wave",type:"dark",import:(()=>import("../kanagawa-wave-YOHS63UF.js"))},{id:"laserwave",displayName:"LaserWave",type:"dark",import:(()=>import("../laserwave-TS4AG4VO.js"))},{id:"light-plus",displayName:"Light Plus",type:"light",import:(()=>import("../light-plus-2HYW3NJ6.js"))},{id:"material-theme",displayName:"Material Theme",type:"dark",import:(()=>import("../material-theme-KPDVFAGV.js"))},{id:"material-theme-darker",displayName:"Material Theme Darker",type:"dark",import:(()=>import("../material-theme-darker-GVSTMSNT.js"))},{id:"material-theme-lighter",displayName:"Material Theme Lighter",type:"light",import:(()=>import("../material-theme-lighter-JWZNUXUH.js"))},{id:"material-theme-ocean",displayName:"Material Theme Ocean",type:"dark",import:(()=>import("../material-theme-ocean-MU4N3XNQ.js"))},{id:"material-theme-palenight",displayName:"Material Theme Palenight",type:"dark",import:(()=>import("../material-theme-palenight-VMWD73WM.js"))},{id:"min-dark",displayName:"Min Dark",type:"dark",import:(()=>import("../min-dark-ASEVSA24.js"))},{id:"min-light",displayName:"Min Light",type:"light",import:(()=>import("../min-light-3H54BB3D.js"))},{id:"monokai",displayName:"Monokai",type:"dark",import:(()=>import("../monokai-5QWQOFN6.js"))},{id:"night-owl",displayName:"Night Owl",type:"dark",import:(()=>import("../night-owl-4QQBS2UX.js"))},{id:"night-owl-light",displayName:"Night Owl Light",type:"light",import:(()=>import("../night-owl-light-HR6A2OQO.js"))},{id:"nord",displayName:"Nord",type:"dark",import:(()=>import("../nord-XK3AUNCF.js"))},{id:"one-dark-pro",displayName:"One Dark Pro",type:"dark",import:(()=>import("../one-dark-pro-ZV7CEA5M.js"))},{id:"one-light",displayName:"One Light",type:"light",import:(()=>import("../one-light-FKZJCKM6.js"))},{id:"plastic",displayName:"Plastic",type:"dark",import:(()=>import("../plastic-SXCQPKYC.js"))},{id:"poimandres",displayName:"Poimandres",type:"dark",import:(()=>import("../poimandres-S3UYVG4O.js"))},{id:"red",displayName:"Red",type:"dark",import:(()=>import("../red-A6OC2HVL.js"))},{id:"rose-pine",displayName:"Ros\xE9 Pine",type:"dark",import:(()=>import("../rose-pine-GLWOWPBK.js"))},{id:"rose-pine-dawn",displayName:"Ros\xE9 Pine Dawn",type:"light",import:(()=>import("../rose-pine-dawn-HYE6T7LV.js"))},{id:"rose-pine-moon",displayName:"Ros\xE9 Pine Moon",type:"dark",import:(()=>import("../rose-pine-moon-VHVTDDVO.js"))},{id:"slack-dark",displayName:"Slack Dark",type:"dark",import:(()=>import("../slack-dark-OPW5CYSY.js"))},{id:"slack-ochin",displayName:"Slack Ochin",type:"light",import:(()=>import("../slack-ochin-WTVMYBFH.js"))},{id:"snazzy-light",displayName:"Snazzy Light",type:"light",import:(()=>import("../snazzy-light-5UQ56PC5.js"))},{id:"solarized-dark",displayName:"Solarized Dark",type:"dark",import:(()=>import("../solarized-dark-DSMP6D7D.js"))},{id:"solarized-light",displayName:"Solarized Light",type:"light",import:(()=>import("../solarized-light-3IZTZCIV.js"))},{id:"synthwave-84",displayName:"Synthwave '84",type:"dark",import:(()=>import("../synthwave-84-JWI6CVJZ.js"))},{id:"tokyo-night",displayName:"Tokyo Night",type:"dark",import:(()=>import("../tokyo-night-SRK4SADJ.js"))},{id:"vesper",displayName:"Vesper",type:"dark",import:(()=>import("../vesper-WIZFPFI7.js"))},{id:"vitesse-black",displayName:"Vitesse Black",type:"dark",import:(()=>import("../vitesse-black-PEGI4HJX.js"))},{id:"vitesse-dark",displayName:"Vitesse Dark",type:"dark",import:(()=>import("../vitesse-dark-M2ZAGPXG.js"))},{id:"vitesse-light",displayName:"Vitesse Light",type:"light",import:(()=>import("../vitesse-light-RICZI4IG.js"))}],wl=Object.fromEntries(xm.map(e=>[e.id,e.import]));f();var ha=class extends Error{constructor(t){super(t),this.name="ShikiError"}};function Cm(){return 2147483648}function Lm(){return typeof performance<"u"?performance.now():Date.now()}var Im=(e,t)=>e+(t-e%t)%t;async function Sm(e){let t,a,o={};function r(m){a=m,o.HEAPU8=new Uint8Array(m),o.HEAPU32=new Uint32Array(m)}function n(m,h,I){o.HEAPU8.copyWithin(m,h,h+I)}function s(m){try{return t.grow(m-a.byteLength+65535>>>16),r(t.buffer),1}catch{}}function i(m){let h=o.HEAPU8.length;m=m>>>0;let I=Cm();if(m>I)return!1;for(let x=1;x<=4;x*=2){let S=h*(1+.2/x);S=Math.min(S,m+100663296);let L=Math.min(I,Im(Math.max(m,S),65536));if(s(L))return!0}return!1}let l=typeof TextDecoder<"u"?new TextDecoder("utf8"):void 0;function u(m,h,I=1024){let x=h+I,S=h;for(;m[S]&&!(S>=x);)++S;if(S-h>16&&m.buffer&&l)return l.decode(m.subarray(h,S));let L="";for(;h<S;){let C=m[h++];if(!(C&128)){L+=String.fromCharCode(C);continue}let k=m[h++]&63;if((C&224)===192){L+=String.fromCharCode((C&31)<<6|k);continue}let T=m[h++]&63;if((C&240)===224?C=(C&15)<<12|k<<6|T:C=(C&7)<<18|k<<12|T<<6|m[h++]&63,C<65536)L+=String.fromCharCode(C);else{let P=C-65536;L+=String.fromCharCode(55296|P>>10,56320|P&1023)}}return L}function c(m,h){return m?u(o.HEAPU8,m,h):""}let d={emscripten_get_now:Lm,emscripten_memcpy_big:n,emscripten_resize_heap:i,fd_write:()=>0};async function p(){let h=await e({env:d,wasi_snapshot_preview1:d});t=h.memory,r(t.buffer),Object.assign(o,h),o.UTF8ToString=c}return await p(),o}var ym=Object.defineProperty,bm=(e,t,a)=>t in e?ym(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a,fe=(e,t,a)=>bm(e,typeof t!="symbol"?t+"":t,a),we=null;function km(e){throw new ha(e.UTF8ToString(e.getLastOnigError()))}var so=class e{constructor(t){fe(this,"utf16Length"),fe(this,"utf8Length"),fe(this,"utf16Value"),fe(this,"utf8Value"),fe(this,"utf16OffsetToUtf8"),fe(this,"utf8OffsetToUtf16");let a=t.length,o=e._utf8ByteLength(t),r=o!==a,n=r?new Uint32Array(a+1):null;r&&(n[a]=o);let s=r?new Uint32Array(o+1):null;r&&(s[o]=a);let i=new Uint8Array(o),l=0;for(let u=0;u<a;u++){let c=t.charCodeAt(u),d=c,p=!1;if(c>=55296&&c<=56319&&u+1<a){let m=t.charCodeAt(u+1);m>=56320&&m<=57343&&(d=(c-55296<<10)+65536|m-56320,p=!0)}r&&(n[u]=l,p&&(n[u+1]=l),d<=127?s[l+0]=u:d<=2047?(s[l+0]=u,s[l+1]=u):d<=65535?(s[l+0]=u,s[l+1]=u,s[l+2]=u):(s[l+0]=u,s[l+1]=u,s[l+2]=u,s[l+3]=u)),d<=127?i[l++]=d:d<=2047?(i[l++]=192|(d&1984)>>>6,i[l++]=128|(d&63)>>>0):d<=65535?(i[l++]=224|(d&61440)>>>12,i[l++]=128|(d&4032)>>>6,i[l++]=128|(d&63)>>>0):(i[l++]=240|(d&1835008)>>>18,i[l++]=128|(d&258048)>>>12,i[l++]=128|(d&4032)>>>6,i[l++]=128|(d&63)>>>0),p&&u++}this.utf16Length=a,this.utf8Length=o,this.utf16Value=t,this.utf8Value=i,this.utf16OffsetToUtf8=n,this.utf8OffsetToUtf16=s}static _utf8ByteLength(t){let a=0;for(let o=0,r=t.length;o<r;o++){let n=t.charCodeAt(o),s=n,i=!1;if(n>=55296&&n<=56319&&o+1<r){let l=t.charCodeAt(o+1);l>=56320&&l<=57343&&(s=(n-55296<<10)+65536|l-56320,i=!0)}s<=127?a+=1:s<=2047?a+=2:s<=65535?a+=3:a+=4,i&&o++}return a}createString(t){let a=t.omalloc(this.utf8Length);return t.HEAPU8.set(this.utf8Value,a),a}},io=class je{constructor(t){if(fe(this,"id",++je.LAST_ID),fe(this,"_onigBinding"),fe(this,"content"),fe(this,"utf16Length"),fe(this,"utf8Length"),fe(this,"utf16OffsetToUtf8"),fe(this,"utf8OffsetToUtf16"),fe(this,"ptr"),!we)throw new ha("Must invoke loadWasm first.");this._onigBinding=we,this.content=t;let a=new so(t);this.utf16Length=a.utf16Length,this.utf8Length=a.utf8Length,this.utf16OffsetToUtf8=a.utf16OffsetToUtf8,this.utf8OffsetToUtf16=a.utf8OffsetToUtf16,this.utf8Length<1e4&&!je._sharedPtrInUse?(je._sharedPtr||(je._sharedPtr=we.omalloc(1e4)),je._sharedPtrInUse=!0,we.HEAPU8.set(a.utf8Value,je._sharedPtr),this.ptr=je._sharedPtr):this.ptr=a.createString(we)}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===je._sharedPtr?je._sharedPtrInUse=!1:this._onigBinding.ofree(this.ptr)}};fe(io,"LAST_ID",0);fe(io,"_sharedPtr",0);fe(io,"_sharedPtrInUse",!1);var xl=io,Sr=class{constructor(t){if(fe(this,"_onigBinding"),fe(this,"_ptr"),!we)throw new ha("Must invoke loadWasm first.");let a=[],o=[];for(let i=0,l=t.length;i<l;i++){let u=new so(t[i]);a[i]=u.createString(we),o[i]=u.utf8Length}let r=we.omalloc(4*t.length);we.HEAPU32.set(a,r/4);let n=we.omalloc(4*t.length);we.HEAPU32.set(o,n/4);let s=we.createOnigScanner(r,n,t.length);for(let i=0,l=t.length;i<l;i++)we.ofree(a[i]);we.ofree(n),we.ofree(r),s===0&&km(we),this._onigBinding=we,this._ptr=s}dispose(){this._onigBinding.freeOnigScanner(this._ptr)}findNextMatchSync(t,a,o){let r=0;if(typeof o=="number"&&(r=o),typeof t=="string"){t=new xl(t);let n=this._findNextMatchSync(t,a,!1,r);return t.dispose(),n}return this._findNextMatchSync(t,a,!1,r)}_findNextMatchSync(t,a,o,r){let n=this._onigBinding,s=n.findNextOnigScannerMatch(this._ptr,t.id,t.ptr,t.utf8Length,t.convertUtf16OffsetToUtf8(a),r);if(s===0)return null;let i=n.HEAPU32,l=s/4,u=i[l++],c=i[l++],d=[];for(let p=0;p<c;p++){let m=t.convertUtf8OffsetToUtf16(i[l++]),h=t.convertUtf8OffsetToUtf16(i[l++]);d[p]={start:m,end:h,length:h-m}}return{index:u,captureIndices:d}}};function Tm(e){return typeof e.instantiator=="function"}function vm(e){return typeof e.default=="function"}function Pm(e){return typeof e.data<"u"}function Am(e){return typeof Response<"u"&&e instanceof Response}function Rm(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 no;function Mm(e){if(no)return no;async function t(){we=await Sm(async a=>{let o=e;return o=await o,typeof o=="function"&&(o=await o(a)),typeof o=="function"&&(o=await o(a)),Tm(o)?o=await o.instantiator(a):vm(o)?o=await o.default(a):(Pm(o)&&(o=o.data),Am(o)?typeof WebAssembly.instantiateStreaming=="function"?o=await Fm(o)(a):o=await Dm(o)(a):Rm(o)?o=await Ir(o)(a):o instanceof WebAssembly.Module?o=await Ir(o)(a):"default"in o&&o.default instanceof WebAssembly.Module&&(o=await Ir(o.default)(a))),"instance"in o&&(o=o.instance),"exports"in o&&(o=o.exports),o})}return no=t(),no}function Ir(e){return t=>WebAssembly.instantiate(e,t)}function Fm(e){return t=>WebAssembly.instantiateStreaming(e,t)}function Dm(e){return async t=>{let a=await e.arrayBuffer();return WebAssembly.instantiate(a,t)}}async function Cl(e){return e&&await Mm(e),{createScanner(t){return new Sr(t.map(a=>typeof a=="string"?a:a.source))},createString(t){return new xl(t)}}}var lo=pl({langs:ma,themes:wl,engine:()=>Cl(import("../wasm-ISCPKFD2.js"))}),{codeToHtml:Bm,codeToHast:Em,codeToTokens:_m,codeToTokensBase:Nm,codeToTokensWithThemes:Om,getSingletonHighlighter:Um,getLastGrammarState:Hm}=ml(lo,{guessEmbeddedLanguages:sl});var Ll=new Set(Object.keys(ma)),yr=new Map,br=new Map,Pt=new Map,qm=(e,t)=>`${e}-${t[0]}-${t[1]}`,Wm=(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}`},Gm=(e,t)=>{let a=qm(e,t);if(yr.has(a))return yr.get(a);let o=lo({themes:t,langs:[e]});return yr.set(a,o),o};function jm(e={}){var t;let a=(t=e.themes)!=null?t:["github-light","github-dark"];return{name:"shiki",type:"code-highlighter",supportsLanguage(o){return Ll.has(o)},getSupportedLanguages(){return Array.from(Ll)},getThemes(){return a},highlight({code:o,language:r,themes:n},s){let i=Wm(o,r,n);return br.has(i)?br.get(i):(s&&(Pt.has(i)||Pt.set(i,new Set),Pt.get(i).add(s)),Gm(r,n).then(l=>{let u=l.getLoadedLanguages().includes(r)?r:"text",c=l.codeToTokens(o,{lang:u,themes:{light:n[0],dark:n[1]}});br.set(i,c);let d=Pt.get(i);if(d){for(let p of d)p(c);Pt.delete(i)}}).catch(l=>{console.error("[Streamdown Code] Failed to highlight code:",l),Pt.delete(i)}),null)}}}var Il=jm();import{memo as Xm}from"react";f();import{useEffect as zm,useRef as uo,useState as Vm}from"react";var $m=5,Sl=400;function yl(e,t,a={}){let{msPerChar:o=$m}=a,[r,n]=Vm(t?"":e),s=uo(e),i=uo(t?0:e.length),l=uo(0),u=uo(null);return(e.length<i.current||!e.startsWith(r.slice(0,i.current)))&&(i.current=t?0:e.length),s.current=e,zm(()=>{if(!t){u.current!==null&&(cancelAnimationFrame(u.current),u.current=null),i.current=e.length,n(e);return}if(s.current.length-i.current>Sl&&(i.current=s.current.length-Sl),u.current!==null)return;let d=p=>{let m=s.current;if(i.current>=m.length){u.current=null;return}l.current===0&&(l.current=p);let h=p-l.current;if(h>=o){let I=Math.min(Math.floor(h/o),m.length-i.current);i.current+=I,n(m.slice(0,i.current)),l.current=p}u.current=requestAnimationFrame(d)};return u.current=requestAnimationFrame(d),()=>{u.current!==null&&(cancelAnimationFrame(u.current),u.current=null)}},[e,t,o]),r}import{jsx as co}from"react/jsx-runtime";var kr=({className:e,from:t,children:a,...o})=>co("div",{className:R("ww-message ww:group ww:flex ww:w-full",t==="user"?"ww-message-user is-user ww:ml-auto ww:flex-col ww:items-end ww:[max-width:var(--ww-msg-max-width,80%)]":"ww-message-assistant is-assistant ww:flex-col",e),...o,children:co("div",{className:R("ww:flex ww:min-w-0 ww:flex-col ww:gap-2","ww:w-full"),children:a})}),Tr=({children:e,className:t,...a})=>co("div",{className:R("ww-bubble ww:flex ww:w-fit ww:min-w-0 ww:max-w-full ww:flex-col ww:gap-2 ww:overflow-hidden","ww:[font-size:var(--ww-font-size,1rem)] ww:[line-height:var(--ww-line-height,1.5)]","ww:group-[.is-user]:ml-auto ww:group-[.is-user]:bg-user-bubble ww:group-[.is-user]:[color:var(--ww-color-user-bubble-text)] ww:group-[.is-user]:[border-radius:var(--ww-msg-radius,8px)] ww:group-[.is-user]:[padding:var(--ww-msg-pad-y,12px)_var(--ww-msg-pad-x,16px)]","ww:group-[.is-assistant]:text-foreground",t),...a,children:e}),Km={cjk:Xo,code:Il},Qm={cjk:Xo},Jm={enabled:!1};function Ym({className:e,linkSafety:t,isStreaming:a,children:o,...r}){let s=yl(typeof o=="string"?o:"",!!a),i=typeof o=="string"?s:o;return co(Mt,{className:R("ww:size-full ww:[&>*:first-child]:mt-0 ww:[&>*:last-child]:mb-0",e),linkSafety:t??Jm,plugins:a?Qm:Km,...r,children:i})}var fo=Xm(Ym,(e,t)=>e.children===t.children&&e.isStreaming===t.isStreaming);fo.displayName="MessageResponse";f();import{createContext as Zm,useCallback as eh,useContext as vl,useEffect as th,useMemo as Pr,useRef as ah,useState as Ar}from"react";import{Fragment as Tl,jsx as K,jsxs as mt}from"react/jsx-runtime";function oh(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=[],n=t-2;for(let[s,i]of o){if(n<=8)break;let l=s.length>4?`${s.slice(0,4)}\u2026`:s,u;typeof i=="string"?u=i.length>2?`'${i.slice(0,1)}\u2026`:`'${i}'`:Array.isArray(i)?u=`Array(${i.length})`:typeof i=="object"&&i!==null?u="{\u2026}":u=String(i);let c=`${l}\u2009${u}`;r.push(c),n-=c.length+3}return`{${r.join(", ")}}`}function rh({text:e,className:t}){let{t:a}=V(),[o,r]=Ar(!1),n=ah(null);th(()=>()=>{n.current&&clearTimeout(n.current)},[]);let s=eh(async i=>{i.stopPropagation();try{await navigator.clipboard.writeText(e),r(!0),n.current&&clearTimeout(n.current),n.current=setTimeout(()=>r(!1),2e3)}catch{}},[e]);return K(qe,{variant:"ghost",size:"sm",onClick:s,className:R("ww:h-auto ww:gap-1 ww:px-1.5 ww:py-0.5 ww:text-xs ww:text-muted-foreground ww:hover:text-foreground",t),children:o?mt(Tl,{children:[K(Wt,{className:"ww:size-3.5"}),K("span",{children:a.tool.copied})]}):mt(Tl,{children:[K(jt,{className:"ww:size-3.5"}),K("span",{children:a.tool.copy})]})})}function Pl({data:e,label:t,className:a,...o}){let[r,n]=Ar(!1),s=Pr(()=>JSON.stringify(e,null,2),[e]),i=oh(e);return mt("div",{className:R("ww:rounded-lg ww:bg-tool-card",a),...o,children:[mt("div",{className:"ww:flex ww:items-center ww:justify-between ww:px-3 ww:pt-2.5 ww:pb-1.5",children:[K("span",{className:"ww:text-xs ww:font-medium ww:text-muted-foreground",children:t}),K(rh,{text:s})]}),mt("button",{type:"button",onClick:()=>n(l=>!l),className:"ww:flex ww:w-full ww:items-start ww:gap-2 ww:px-3 ww:pb-3 ww:text-left",children:[K(Gt,{className:R("ww:mt-0.5 ww:size-3.5 ww:shrink-0 ww:text-muted-foreground ww:transition-transform ww:duration-150",r&&"ww:rotate-90")}),r?K("pre",{className:"ww:overflow-x-auto ww:text-xs ww:font-mono ww:text-foreground ww:whitespace-pre-wrap ww:break-all",children:K("code",{children:s})}):K("span",{className:"ww:truncate ww:text-xs ww:font-mono ww:text-foreground/80",children:i})]})]})}var Rr=Zm({open:!1,toggle:()=>{}});function Al({className:e,defaultOpen:t=!1,children:a,...o}){let[r,n]=Ar(t);return K(Rr.Provider,{value:{open:r,toggle:()=>n(s=>!s)},children:K("div",{className:R("ww:mb-4 ww:w-full",e),"data-state":r?"open":"closed",style:{animation:"ww-fade-in 0.2s ease-out"},...o,children:a})})}function Rl({className:e,title:t,state:a,...o}){let{open:r,toggle:n}=vl(Rr),s=a==="input-available"||a==="input-streaming",i=t??"";return mt("button",{type:"button",onClick:n,className:R("ww:flex ww:w-full ww:items-center ww:gap-2 ww:text-sm ww:text-muted-foreground ww:transition-colors ww:hover:text-foreground",e),"aria-expanded":r,...o,children:[K(st,{className:"ww:size-4 ww:shrink-0"}),K("span",{className:"ww:truncate",children:s?K(_e,{duration:1.6,children:i}):i}),K(Qe,{className:R("ww:size-4 ww:shrink-0 ww:transition-transform ww:duration-200",r&&"ww:rotate-180")})]})}function Ml({className:e,title:t,state:a,...o}){let r=a==="input-available"||a==="input-streaming",n=t??"";return K("div",{className:R("ww:mb-4 ww:flex ww:items-center ww:gap-2 ww:text-sm ww:text-muted-foreground",e),style:{animation:"ww-fade-in 0.2s ease-out"},...o,children:K("span",{className:"ww:truncate",children:r?K(_e,{duration:1.6,children:n}):n})})}function Fl({className:e,children:t,...a}){let{open:o}=vl(Rr);return K("div",{className:R("ww:grid ww:transition-[grid-template-rows,opacity] ww:duration-200 ww:ease-out",o?"ww:grid-rows-[1fr] ww:opacity-100":"ww:grid-rows-[0fr] ww:opacity-0"),children:K("div",{className:"ww:min-h-0 ww:overflow-hidden",children:K("div",{className:R("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 Mr({className:e,input:t,debug:a,...o}){let{t:r}=V(),n=Pr(()=>{if(!a&&typeof t=="object"&&t!==null&&!Array.isArray(t)){let{_meta:s,...i}=t;return i}return t},[t,a]);return K(Pl,{data:n,label:r.tool.request,className:e,...o})}function vr(e){if(!(typeof e!="object"||e===null))return e}function Dl(e){return vr(e?.ui)}function Bl(e){return vr(vr(e)?._meta)}function bl(e){if(!e)return;let t=Dl(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 kl(e){return Dl(e)?.autoHeight===!0}function ga(e,t,a){if(e){let o=bl(a?.[e]?._meta);if(o)return o}return bl(Bl(t))}function El(e,t,a){return e&&kl(a?.[e]?._meta)?!0:kl(Bl(t))}function Fr({className:e,output:t,errorText:a,debug:o,...r}){let{t:n}=V(),s=Pr(()=>{if(!o&&typeof t=="object"&&t!==null&&!Array.isArray(t)){let{_meta:i,...l}=t;return l}return t},[t,o]);return t||a?a?mt("div",{className:R("ww:space-y-2",e),...r,children:[K("h4",{className:"ww:text-xs ww:font-medium ww:uppercase ww:tracking-wide ww:text-muted-foreground",children:n.tool.error}),K("div",{className:"ww:rounded-lg ww:bg-destructive/10 ww:p-3 ww:text-xs ww:text-destructive",children:a})]}):K(Pl,{data:s,label:n.tool.response,className:e,...r}):null}f();import{jsx as _l,jsxs as nh}from"react/jsx-runtime";function Nl(e){return e.type==="text"||e.type==="reasoning"||e.type==="file"||"toolCallId"in e}function Ol(e){return e.parts.some(Nl)}function Ul(e,t,a){if(t!=="submitted"&&t!=="streaming")return!1;let o=e[e.length-1];return!o||o.role!=="assistant"?!0:!o.parts.some(n=>!(!Nl(n)||a?.ignoreToolParts&&"toolCallId"in n||a?.ignoreReasoningParts&&n.type==="reasoning"))}function Hl({className:e,...t}){let{t:a}=V();return nh("div",{"aria-live":"polite",className:R("ww:mb-4 ww:flex ww:w-full ww:items-center ww:gap-2 ww:text-sm ww:text-muted-foreground",e),style:{animation:"ww-fade-in 0.2s ease-out"},...t,children:[_l(Qt,{className:"ww:size-4 ww:shrink-0"}),_l(_e,{duration:1.6,children:a.workingIndicator.default})]})}f();import{useCallback as sh,useEffect as Dr,useMemo as ih,useRef as ke,useState as ql}from"react";import{jsx as xh}from"react/jsx-runtime";var lh="/api/mcp/resource",uh=500,dh=0,ch=16,fh="2026-01-26",ph=300,mh=3e3,hh=3;function gh(e){if(typeof e!="string")return;let t=e.trim();return t.length>0?t:void 0}function wh(e,t,a){return ga(e,t,a)?!1:t._meta?.["waniwani/autoInjectResultText"]!==!1}function Wl({resourceUri:e,toolInput:t,toolResult:a,resourceEndpoint:o=lh,chatSessionId:r,isDark:n=!1,className:s,autoHeight:i=!1,onOpenLink:l,onFollowUp:u,onCallTool:c,onDisplayModeChange:d,isFullscreen:p=!1,toolDefinitions:m}){let h=ke(null),I=ke(t),x=ke(a),S=ke({width:0,height:0}),L=ke(null),C=ke(!1),k=ke(0),T=ke("inline"),[P,M]=ql(dh),[A,E]=ql(void 0),F=ke(l),_=ke(u),v=ke(c),D=ke(d),q=ke(r),y=ke(m);I.current=t,x.current=a,F.current=l,_.current=u,v.current=c,D.current=d,q.current=r,y.current=m;let N=sh(W=>i?Math.max(W+ch,0):Math.min(Math.max(W,50),uh),[i]),H=ih(()=>{let W=o.includes("?")?"&":"?";return`${o}${W}uri=${encodeURIComponent(e)}`},[o,e]),de=ke(n);de.current=n;let Te=ke(p);return Dr(()=>{Te.current=p,S.current.height=-1,L.current&&(L.current.cancel(),L.current=null)},[p]),Dr(()=>{if(!C.current)return;let W=h.current;W?.contentWindow&&W.contentWindow.postMessage({jsonrpc:"2.0",method:"ui/notifications/host-context-changed",params:{theme:n?"dark":"light"}},"*")},[n]),Dr(()=>{let W=h.current;if(!W)return;let me=!1,ve=!1,Oe=null,ye=null,X=setTimeout(()=>{if(me||ve||k.current>=hh)return;k.current+=1;let he=new URL(W.src);he.searchParams.set("_retry",String(k.current)),W.src=he.toString()},mh),z=he=>{W.contentWindow?.postMessage(he,"*")},xe=he=>{if(me||he.source!==W.contentWindow)return;let ee=he.data;if(!ee||typeof ee!="object"||ee.jsonrpc!=="2.0")return;let ie=ee.method,se=ee.id;if(ie==="ui/initialize"&&se!=null){ve=!0,clearTimeout(X),z({jsonrpc:"2.0",id:se,result:{protocolVersion:ee.params?.protocolVersion??fh,hostInfo:{name:"Waniwani Chat",version:"1.0.0"},hostCapabilities:{openLinks:{},message:{text:{}},tools:{},updateModelContext:{text:{},structuredContent:{}}},hostContext:{theme:de.current?"dark":"light",displayMode:T.current}}});return}if(ie==="ui/notifications/initialized"){C.current=!0;let Q=I.current,te=x.current,G=te._meta&&typeof te._meta=="object"?te._meta:null,ae=gh(q.current),ce=G&&typeof G.waniwani=="object"&&G.waniwani!==null?G.waniwani:null,Fe=ce||ae?{...ce??{},...ae?{sessionId:ae}:{}}:void 0,Ke=G||Fe?{...G??{},...Fe?{waniwani:Fe}:{}}:void 0;z({jsonrpc:"2.0",method:"ui/notifications/tool-input",params:{arguments:Q}});let wt=te.content??[{type:"text",text:JSON.stringify(te)}];z({jsonrpc:"2.0",method:"ui/notifications/tool-result",params:{content:wt,structuredContent:te.structuredContent,_meta:Ke,meta:Ke}});return}if(ie==="ui/notifications/size-changed"){let Q=ee.params,te=typeof Q?.height=="number"?Q.height:void 0,G=typeof Q?.width=="number"?Q.width:void 0,ae=S.current,ce=te!==void 0&&te!==ae.height,Fe=G!==void 0&&G!==ae.width;if(!ce&&!Fe)return;if(ce&&te!==void 0){if(ae.height=te,Te.current)return;let Ke=N(te),wt=W.getBoundingClientRect().height;if(L.current&&(L.current.cancel(),L.current=null),M(Ke),W.animate&&Math.abs(wt-Ke)>2){let xt=W.animate([{height:`${wt}px`},{height:`${Ke}px`}],{duration:ph,easing:"ease-out",fill:"forwards"});L.current=xt,xt.onfinish=()=>{L.current===xt&&(xt.cancel(),L.current=null)}}}Fe&&i&&G!==void 0&&(ae.width=G,E(G));return}if(ie==="ui/open-link"&&se!=null){let Q=ee.params?.url;typeof Q=="string"&&(F.current?F.current(Q):window.open(Q,"_blank","noopener,noreferrer")),z({jsonrpc:"2.0",id:se,result:{}});return}if(ie==="ui/message"&&se!=null){if(_.current&&ee.params){let Q=ee.params,te=Oe;if(Oe=null,ye){clearTimeout(ye.timer);let G=ye.text;ye=null;let ae=(Q.content??[]).map(ce=>ce.text??"").join("").trim();Q={...Q,content:[{type:"text",text:`${ae}
|
|
78
|
+
\f\r "&'<=>\``.split("")]],single:[["&'".split(""),"\"&'`".split("")],["\0&'".split(""),"\0\"&'`".split("")]],double:[['"&'.split(""),"\"&'`".split("")],['\0"&'.split(""),"\0\"&'`".split("")]]};function $i(e,t,a,o){let r=o.schema,n=r.space==="svg"?!1:o.settings.omitOptionalTags,s=r.space==="svg"?o.settings.closeEmptyElements:o.settings.voids.includes(e.tagName.toLowerCase()),i=[],l;r.space==="html"&&e.tagName==="svg"&&(o.schema=ya);let u=Rp(o,e.properties),d=o.all(r.space==="html"&&e.tagName==="template"?e.content:e);return o.schema=r,d&&(s=!1),(u||!n||!Vi(e,t,a))&&(i.push("<",e.tagName,u?" "+u:""),s&&(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(d),!s&&(!n||!ca(e,t,a))&&i.push("</"+e.tagName+">"),i.join("")}function Rp(e,t){let a=[],o=-1,r;if(t){for(r in t)if(t[r]!==null&&t[r]!==void 0){let n=Mp(e,r,t[r]);n&&a.push(n)}}for(;++o<a.length;){let n=e.settings.tightAttributes?a[o].charAt(a[o].length-1):void 0;o!==a.length-1&&n!=='"'&&n!=="'"&&(a[o]+=" ")}return a.join("")}function Mp(e,t,a){let o=nn(e.schema,t),r=e.settings.allowParseErrors&&e.schema.space==="html"?0:1,n=e.settings.allowDangerousCharacters?0:1,s=e.quote,i;if(o.overloadedBoolean&&(a===o.attribute||a==="")?a=!0:(o.boolean||o.overloadedBoolean)&&(typeof a!="string"||a===o.attribute||a==="")&&(a=!!a),a==null||a===!1||typeof a=="number"&&Number.isNaN(a))return"";let l=Qe(o.attribute,Object.assign({},e.settings.characterReferences,{subset:Qa.name[r][n]}));return a===!0||(a=Array.isArray(a)?(o.commaSeparated?ln:un)(a,{padLeft:!e.settings.tightCommaSeparatedLists}):String(a),e.settings.collapseEmptyAttributes&&!a)?l:(e.settings.preferUnquoted&&(i=Qe(a,Object.assign({},e.settings.characterReferences,{attribute:!0,subset:Qa.unquoted[r][n]}))),i!==a&&(e.settings.quoteSmart&&ko(a,s)>ko(a,e.alternative)&&(s=e.alternative),i=s+Qe(a,Object.assign({},e.settings.characterReferences,{subset:(s==="'"?Qa.single:Qa.double)[r][n],attribute:!0}))+s),l+(i&&"="+i))}f();f();var Fp=["<","&"];function Ja(e,t,a,o){return a&&a.type==="element"&&(a.tagName==="script"||a.tagName==="style")?e.value:Qe(e.value,Object.assign({},o.settings.characterReferences,{subset:Fp}))}function Xi(e,t,a,o){return o.settings.allowDangerousHtml?e.value:Ja(e,t,a,o)}f();function Ki(e,t,a,o){return o.all(e)}var Qi=dn("type",{invalid:Dp,unknown:Bp,handlers:{comment:qi,doctype:Wi,element:$i,raw:Xi,root:Ki,text:Ja}});function Dp(e){throw new Error("Expected node, not `"+e+"`")}function Bp(e){let t=e;throw new Error("Cannot compile unknown node `"+t.type+"`")}var Ep={},_p={},Np=[];function ur(e,t){let a=t||Ep,o=a.quote||'"',r=o==='"'?"'":'"';if(o!=='"'&&o!=="'")throw new Error("Invalid quote `"+o+"`, expected `'` or `\"`");return{one:Op,all:Up,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||cn,characterReferences:a.characterReferences||_p,closeSelfClosing:a.closeSelfClosing||!1,closeEmptyElements:a.closeEmptyElements||!1},schema:a.space==="svg"?ya:sn,quote:o,alternative:r}.one(Array.isArray(e)?{type:"root",children:e}:e,void 0,void 0)}function Op(e,t,a){return Qi(e,t,a,this)}function Up(e){let t=[],a=e&&e.children||Np,o=-1;for(;++o<a.length;)t[o]=this.one(a[o],o,e);return t.join("")}function Ya(e,t){let a=typeof e=="string"?{}:{...e.colorReplacements},o=typeof e=="string"?e:e.name;for(let[r,n]of Object.entries(t?.colorReplacements||{}))typeof n=="string"?a[r]=n:r===o&&Object.assign(a,n);return a}function ot(e,t){return e&&(t?.[e?.toLowerCase()]||e)}function Hp(e){return Array.isArray(e)?e:[e]}async function ol(e){return Promise.resolve(typeof e=="function"?e():e).then(t=>t.default||t)}function hr(e){return!e||["plaintext","txt","text","plain"].includes(e)}function rl(e){return e==="ansi"||hr(e)}function gr(e){return e==="none"}function nl(e){return gr(e)}function sl(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 oo(e,t=!1){if(e.length===0)return[["",0]];let a=e.split(/(\r?\n)/g),o=0,r=[];for(let n=0;n<a.length;n+=2){let s=t?a[n]+(a[n+1]||""):a[n];r.push([s,o]),o+=a[n].length,o+=a[n+1]?.length||0}return r}function qp(e){let t=oo(e,!0).map(([r])=>r);function a(r){if(r===e.length)return{line:t.length-1,character:t[t.length-1].length};let n=r,s=0;for(let i of t){if(n<i.length)break;n-=i.length,s++}return{line:s,character:n}}function o(r,n){let s=0;for(let i=0;i<r;i++)s+=t[i].length;return s+=n,s}return{lines:t,indexToPos:a,posToIndex:o}}function il(e,t,a){let o=new Set;for(let n of e.matchAll(/:?lang=["']([^"']+)["']/g)){let s=n[1].toLowerCase().trim();s&&o.add(s)}for(let n of e.matchAll(/(?:```|~~~)([\w-]+)/g)){let s=n[1].toLowerCase().trim();s&&o.add(s)}for(let n of e.matchAll(/\\begin\{([\w-]+)\}/g)){let s=n[1].toLowerCase().trim();s&&o.add(s)}for(let n of e.matchAll(/<script\s+(?:type|lang)=["']([^"']+)["']/gi)){let s=n[1].toLowerCase().trim(),i=s.includes("/")?s.split("/").pop():s;i&&o.add(i)}if(!a)return Array.from(o);let r=a.getBundledLanguages();return Array.from(o).filter(n=>n&&r[n])}var wr="light-dark()",Wp=["color","background-color"];function Gp(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 jp(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 n=a.filter(s=>r.offset<s&&s<r.offset+r.content.length).map(s=>s-r.offset).sort((s,i)=>s-i);return n.length?Gp(r,n):r})):e}function zp(e,t,a,o,r="css-vars"){let n={content:e.content,explanation:e.explanation,offset:e.offset},s=t.map(d=>Za(e.variants[d])),i=new Set(s.flatMap(d=>Object.keys(d))),l={},u=(d,c)=>{let p=c==="color"?"":c==="background-color"?"-bg":`-${c}`;return a+t[d]+(c==="color"?"":p)};return s.forEach((d,c)=>{for(let p of i){let m=d[p]||"inherit";if(c===0&&o&&Wp.includes(p))if(o===wr&&s.length>1){let h=t.findIndex(x=>x==="light"),L=t.findIndex(x=>x==="dark");if(h===-1||L===-1)throw new re('When using `defaultColor: "light-dark()"`, you must provide both `light` and `dark` themes');let C=s[h][p]||"inherit",S=s[L][p]||"inherit";l[p]=`light-dark(${C}, ${S})`,r==="css-vars"&&(l[u(c,p)]=m)}else l[p]=m;else r==="css-vars"&&(l[u(c,p)]=m)}}),n.htmlStyle=l,n}function Za(e){let t={};if(e.color&&(t.color=e.color),e.bgColor&&(t["background-color"]=e.bgColor),e.fontStyle){e.fontStyle&xe.Italic&&(t["font-style"]="italic"),e.fontStyle&xe.Bold&&(t["font-weight"]="bold");let a=[];e.fontStyle&xe.Underline&&a.push("underline"),e.fontStyle&xe.Strikethrough&&a.push("line-through"),a.length&&(t["text-decoration"]=a.join(" "))}return t}function fr(e){return typeof e=="string"?e:Object.entries(e).map(([t,a])=>`${t}:${a}`).join(";")}var ll=new WeakMap;function ro(e,t){ll.set(e,t)}function pa(e){return ll.get(e)}var vt=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(Hp(a).map(o=>[o,Va])),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 Vp(this._stacks[t])}toJSON(){return{lang:this.lang,theme:this.theme,themes:this.themes,scopes:this.getScopes()}}};function Vp(e){let t=[],a=new Set;function o(r){if(a.has(r))return;a.add(r);let n=r?.nameScopesList?.scopeName;n&&t.push(n),r.parent&&o(r.parent)}return o(e),t}function $p(e,t){if(!(e instanceof vt))throw new re("Invalid grammar state");return e.getInternalStack(t)}function Xp(){let e=new WeakMap;function t(a){if(!e.has(a.meta)){let o=function(s){if(typeof s=="number"){if(s<0||s>a.source.length)throw new re(`Invalid decoration offset: ${s}. Code length: ${a.source.length}`);return{...r.indexToPos(s),offset:s}}else{let i=r.lines[s.line];if(i===void 0)throw new re(`Invalid decoration position ${JSON.stringify(s)}. Lines length: ${r.lines.length}`);let l=s.character;if(l<0&&(l=i.length+l),l<0||l>i.length)throw new re(`Invalid decoration position ${JSON.stringify(s)}. Line ${s.line} length: ${i.length}`);return{...s,character:l,offset:r.posToIndex(s.line,l)}}},r=qp(a.source),n=(a.options.decorations||[]).map(s=>({...s,start:o(s.start),end:o(s.end)}));Kp(n),e.set(a.meta,{decorations:n,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(s=>[s.start.offset,s.end.offset]);return jp(a,r)},code(a){if(!this.options.decorations?.length)return;let o=t(this),r=Array.from(a.children).filter(d=>d.type==="element"&&d.tagName==="span");if(r.length!==o.converter.lines.length)throw new re(`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 n(d,c,p,m){let h=r[d],L="",C=-1,S=-1;if(c===0&&(C=0),p===0&&(S=0),p===Number.POSITIVE_INFINITY&&(S=h.children.length),C===-1||S===-1)for(let I=0;I<h.children.length;I++)L+=ul(h.children[I]),C===-1&&L.length===c&&(C=I+1),S===-1&&L.length===p&&(S=I+1);if(C===-1)throw new re(`Failed to find start index for decoration ${JSON.stringify(m.start)}`);if(S===-1)throw new re(`Failed to find end index for decoration ${JSON.stringify(m.end)}`);let x=h.children.slice(C,S);if(!m.alwaysWrap&&x.length===h.children.length)i(h,m,"line");else if(!m.alwaysWrap&&x.length===1&&x[0].type==="element")i(x[0],m,"token");else{let I={type:"element",tagName:"span",properties:{},children:x};i(I,m,"wrapper"),h.children.splice(C,x.length,I)}}function s(d,c){r[d]=i(r[d],c,"line")}function i(d,c,p){let m=c.properties||{},h=c.transform||(L=>L);return d.tagName=c.tagName||"span",d.properties={...d.properties,...m,class:d.properties.class},c.properties?.class&&sl(d,c.properties.class),d=h(d,p)||d,d}let l=[],u=o.decorations.sort((d,c)=>c.start.offset-d.start.offset||d.end.offset-c.end.offset);for(let d of u){let{start:c,end:p}=d;if(c.line===p.line)n(c.line,c.character,p.character,d);else if(c.line<p.line){n(c.line,c.character,Number.POSITIVE_INFINITY,d);for(let m=c.line+1;m<p.line;m++)l.unshift(()=>s(m,d));n(p.line,0,p.character,d)}}l.forEach(d=>d())}}}function Kp(e){for(let t=0;t<e.length;t++){let a=e[t];if(a.start.offset>a.end.offset)throw new re(`Invalid decoration range: ${JSON.stringify(a.start)} - ${JSON.stringify(a.end)}`);for(let o=t+1;o<e.length;o++){let r=e[o],n=a.start.offset<=r.start.offset&&r.start.offset<a.end.offset,s=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(n||s||i||l){if(n&&s||i&&l||i&&a.start.offset===a.end.offset||s&&r.start.offset===r.end.offset)continue;throw new re(`Decorations ${JSON.stringify(a.start)} and ${JSON.stringify(r.start)} intersect.`)}}}}function ul(e){return e.type==="text"?e.value:e.type==="element"?e.children.map(ul).join(""):""}var Qp=[Xp()];function eo(e){let t=Jp(e.transformers||[]);return[...t.pre,...t.normal,...t.post,...Qp]}function Jp(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 mt=["black","red","green","yellow","blue","magenta","cyan","white","brightBlack","brightRed","brightGreen","brightYellow","brightBlue","brightMagenta","brightCyan","brightWhite"],dr={1:"bold",2:"dim",3:"italic",4:"underline",7:"reverse",8:"hidden",9:"strikethrough"};function Yp(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 Ji(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 Zp(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)dr[o]&&t.push({type:"setDecoration",value:dr[o]});else if(o<=29){let r=dr[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:mt[o-30]}});else if(o===38){let r=Ji(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:mt[o-40]}});else if(o===48){let r=Ji(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:mt[o-90+8]}}):o>=100&&o<=107&&t.push({type:"setBackgroundColor",value:{type:"named",name:mt[o-100+8]}})}return t}function em(){let e=null,t=null,a=new Set;return{parse(o){let r=[],n=0;do{let s=Yp(o,n),i=s.sequence?o.substring(n,s.startPosition):o.substring(n);if(i.length>0&&r.push({value:i,foreground:e,background:t,decorations:new Set(a)}),s.sequence){let l=Zp(s.sequence);for(let u of l)u.type==="resetAll"?(e=null,t=null,a.clear()):u.type==="resetForegroundColor"?e=null:u.type==="resetBackgroundColor"?t=null:u.type==="resetDecoration"&&a.delete(u.value);for(let u of l)u.type==="setForegroundColor"?e=u.value:u.type==="setBackgroundColor"?t=u.value:u.type==="setDecoration"&&a.add(u.value)}n=s.position}while(n<o.length);return r}}}var tm={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 am(e=tm){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<mt.length;u++)o.push(t(mt[u]));let i=[0,95,135,175,215,255];for(let u=0;u<6;u++)for(let d=0;d<6;d++)for(let c=0;c<6;c++)o.push(a([i[u],i[d],i[c]]));let l=8;for(let u=0;u<24;u++,l+=10)o.push(a([l,l,l]));return o}function n(i){return r()[i]}function s(i){switch(i.type){case"named":return t(i.name);case"rgb":return a(i.rgb);case"table":return n(i.index)}}return{value:s}}var om={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 rm(e,t,a){let o=Ya(e,a),r=oo(t),n=Object.fromEntries(mt.map(l=>{let u=`terminal.ansi${l[0].toUpperCase()}${l.substring(1)}`,d=e.colors?.[u];return[l,d||om[l]]})),s=am(n),i=em();return r.map(l=>i.parse(l[0]).map(u=>{let d,c;u.decorations.has("reverse")?(d=u.background?s.value(u.background):e.bg,c=u.foreground?s.value(u.foreground):e.fg):(d=u.foreground?s.value(u.foreground):e.fg,c=u.background?s.value(u.background):void 0),d=ot(d,o),c=ot(c,o),u.decorations.has("dim")&&(d=nm(d));let p=xe.None;return u.decorations.has("bold")&&(p|=xe.Bold),u.decorations.has("italic")&&(p|=xe.Italic),u.decorations.has("underline")&&(p|=xe.Underline),u.decorations.has("strikethrough")&&(p|=xe.Strikethrough),{content:u.value,offset:l[1],color:d,bgColor:c,fontStyle:p}}))}function nm(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],n=o[1],s=o[2],i=o[3],l=Math.round(Number.parseInt(`${i}${i}`,16)/2).toString(16).padStart(2,"0");return`#${r}${r}${n}${n}${s}${s}${l}`}else if(o.length===3){let r=o[0],n=o[1],s=o[2];return`#${r}${r}${n}${n}${s}${s}80`}}}let a=e.match(/var\((--[\w-]+-ansi-[\w-]+)\)/);return a?`var(${a[1]}-dim)`:e}function xr(e,t,a={}){let{theme:o=e.getLoadedThemes()[0]}=a,r=e.resolveLangAlias(a.lang||"text");if(hr(r)||gr(o))return oo(t).map(l=>[{content:l[0],offset:l[1]}]);let{theme:n,colorMap:s}=e.setTheme(o);if(r==="ansi")return rm(n,t,a);let i=e.getLanguage(a.lang||"text");if(a.grammarState){if(a.grammarState.lang!==i.name)throw new re(`Grammar state language "${a.grammarState.lang}" does not match highlight language "${i.name}"`);if(!a.grammarState.themes.includes(n.name))throw new re(`Grammar state themes "${a.grammarState.themes}" do not contain highlight theme "${n.name}"`)}return im(t,i,n,s,a)}function sm(...e){if(e.length===2)return pa(e[1]);let[t,a,o={}]=e,{lang:r="text",theme:n=t.getLoadedThemes()[0]}=o;if(hr(r)||gr(n))throw new re("Plain language does not have grammar state");if(r==="ansi")throw new re("ANSI language does not have grammar state");let{theme:s,colorMap:i}=t.setTheme(n),l=t.getLanguage(r);return new vt(Cr(a,l,s,i,o).stateStack,l.name,s.name)}function im(e,t,a,o,r){let n=Cr(e,t,a,o,r),s=new vt(n.stateStack,t.name,a.name);return ro(n.tokens,s),n.tokens}function Cr(e,t,a,o,r){let n=Ya(a,r),{tokenizeMaxLineLength:s=0,tokenizeTimeLimit:i=500}=r,l=oo(e),u=r.grammarState?$p(r.grammarState,a.name)??Va:r.grammarContextCode!=null?Cr(r.grammarContextCode,t,a,o,{...r,grammarState:void 0,grammarContextCode:void 0}).stateStack:Va,d=[],c=[];for(let p=0,m=l.length;p<m;p++){let[h,L]=l[p];if(h===""){d=[],c.push([]);continue}if(s>0&&h.length>=s){d=[],c.push([{content:h,offset:L,color:"",fontStyle:0}]);continue}let C,S,x;r.includeExplanation&&(C=t.tokenizeLine(h,u,i),S=C.tokens,x=0);let I=t.tokenizeLine2(h,u,i),b=I.tokens.length/2;for(let k=0;k<b;k++){let P=I.tokens[2*k],F=k+1<b?I.tokens[2*k+2]:h.length;if(P===F)continue;let R=I.tokens[2*k+1],_=ot(o[pt.getForeground(R)],n),M=pt.getFontStyle(R),E={content:h.substring(P,F),offset:L+P,color:_,fontStyle:M};if(r.includeExplanation){let v=[];if(r.includeExplanation!=="scopeName")for(let H of a.settings){let T;switch(typeof H.scope){case"string":T=H.scope.split(/,/).map(N=>N.trim());break;case"object":T=H.scope;break;default:continue}v.push({settings:H,selectors:T.map(N=>N.split(/ /))})}E.explanation=[];let D=0;for(;P+D<F;){let H=S[x],T=h.substring(H.startIndex,H.endIndex);D+=T.length,E.explanation.push({content:T,scopes:r.includeExplanation==="scopeName"?lm(H.scopes):um(v,H.scopes)}),x+=1}}d.push(E)}c.push(d),d=[],u=I.ruleStack}return{tokens:c,stateStack:u}}function lm(e){return e.map(t=>({scopeName:t}))}function um(e,t){let a=[];for(let o=0,r=t.length;o<r;o++){let n=t[o];a[o]={scopeName:n,themeMatches:cm(e,n,t.slice(0,o))}}return a}function Yi(e,t){return e===t||t.substring(0,e.length)===e&&t[e.length]==="."}function dm(e,t,a){if(!Yi(e[e.length-1],t))return!1;let o=e.length-2,r=a.length-1;for(;o>=0&&r>=0;)Yi(e[o],a[r])&&(o-=1),r-=1;return o===-1}function cm(e,t,a){let o=[];for(let{selectors:r,settings:n}of e)for(let s of r)if(dm(s,t,a)){o.push(n);break}return o}function dl(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=xr(e,t,{...a,theme:l.theme}),d=pa(u),c=typeof l.theme=="string"?l.theme:l.theme.name;return{tokens:u,state:d,theme:c}}),n=fm(...r.map(l=>l.tokens)),s=n[0].map((l,u)=>l.map((d,c)=>{let p={content:d.content,variants:{},offset:d.offset};return"includeExplanation"in a&&a.includeExplanation&&(p.explanation=d.explanation),n.forEach((m,h)=>{let{content:L,explanation:C,offset:S,...x}=m[u][c];p.variants[o[h].color]=x}),p})),i=r[0].state?new vt(Object.fromEntries(r.map(l=>[l.theme,l.state?.getInternalStack(l.theme)])),r[0].state.lang):void 0;return i&&ro(s,i),s}function fm(...e){let t=e.map(()=>[]),a=e.length;for(let o=0;o<e[0].length;o++){let r=e.map(l=>l[o]),n=t.map(()=>[]);t.forEach((l,u)=>l.push(n[u]));let s=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 d=i[u];d.content.length===l?(n[u].push(d),s[u]+=1,i[u]=r[u][s[u]]):(n[u].push({...d,content:d.content.slice(0,l)}),i[u]={...d,content:d.content.slice(l),offset:d.offset+l})}}}return t}function to(e,t,a){let o,r,n,s,i,l;if("themes"in a){let{defaultColor:u="light",cssVariablePrefix:d="--shiki-",colorsRendering:c="css-vars"}=a,p=Object.entries(a.themes).filter(S=>S[1]).map(S=>({color:S[0],theme:S[1]})).sort((S,x)=>S.color===u?-1:x.color===u?1:0);if(p.length===0)throw new re("`themes` option must not be empty");let m=dl(e,t,a);if(l=pa(m),u&&wr!==u&&!p.find(S=>S.color===u))throw new re(`\`themes\` option must contain the defaultColor key \`${u}\``);let h=p.map(S=>e.getTheme(S.theme)),L=p.map(S=>S.color);n=m.map(S=>S.map(x=>zp(x,L,d,u,c))),l&&ro(n,l);let C=p.map(S=>Ya(S.theme,a));r=Zi(p,h,C,d,u,"fg",c),o=Zi(p,h,C,d,u,"bg",c),s=`shiki-themes ${h.map(S=>S.name).join(" ")}`,i=u?void 0:[r,o].join(";")}else if("theme"in a){let u=Ya(a.theme,a);n=xr(e,t,a);let d=e.getTheme(a.theme);o=ot(d.bg,u),r=ot(d.fg,u),s=d.name,l=pa(n)}else throw new re("Invalid options, either `theme` or `themes` must be provided");return{tokens:n,fg:r,bg:o,themeName:s,rootStyle:i,grammarState:l}}function Zi(e,t,a,o,r,n,s){return e.map((i,l)=>{let u=ot(t[l][n],a[l])||"inherit",d=`${o+i.color}${n==="bg"?"-bg":""}:${u}`;if(l===0&&r){if(r===wr&&e.length>1){let c=e.findIndex(L=>L.color==="light"),p=e.findIndex(L=>L.color==="dark");if(c===-1||p===-1)throw new re('When using `defaultColor: "light-dark()"`, you must provide both `light` and `dark` themes');let m=ot(t[c][n],a[c])||"inherit",h=ot(t[p][n],a[p])||"inherit";return`light-dark(${m}, ${h});${d}`}return u}return s==="css-vars"?d:null}).filter(i=>!!i).join(";")}function ao(e,t,a,o={meta:{},options:a,codeToHast:(r,n)=>ao(e,r,n),codeToTokens:(r,n)=>to(e,r,n)}){let r=t;for(let h of eo(a))r=h.preprocess?.call(o,r,a)||r;let{tokens:n,fg:s,bg:i,themeName:l,rootStyle:u,grammarState:d}=to(e,r,a),{mergeWhitespaces:c=!0,mergeSameStyleTokens:p=!1}=a;c===!0?n=mm(n):c==="never"&&(n=hm(n)),p&&(n=gm(n));let m={...o,get source(){return r}};for(let h of eo(a))n=h.tokens?.call(m,n)||n;return pm(n,{...a,fg:s,bg:i,themeName:l,rootStyle:a.rootStyle===!1?!1:a.rootStyle??u},m,d)}function pm(e,t,a,o=pa(e)){let r=eo(t),n=[],s={type:"root",children:[]},{structure:i="classic",tabindex:l="0"}=t,u={class:`shiki ${t.themeName||""}`};t.rootStyle!==!1&&(t.rootStyle!=null?u.style=t.rootStyle:u.style=`background-color:${t.bg};color:${t.fg}`),l!==!1&&l!=null&&(u.tabindex=l.toString());for(let[L,C]of Object.entries(t.meta||{}))L.startsWith("_")||(u[L]=C);let d={type:"element",tagName:"pre",properties:u,children:[],data:t.data},c={type:"element",tagName:"code",properties:{},children:n},p=[],m={...a,structure:i,addClassToHast:sl,get source(){return a.source},get tokens(){return e},get options(){return t},get root(){return s},get pre(){return d},get code(){return c},get lines(){return p}};if(e.forEach((L,C)=>{C&&(i==="inline"?s.children.push({type:"element",tagName:"br",properties:{},children:[]}):i==="classic"&&n.push({type:"text",value:`
|
|
79
|
+
`}));let S={type:"element",tagName:"span",properties:{class:"line"},children:[]},x=0;for(let I of L){let b={type:"element",tagName:"span",properties:{...I.htmlAttrs},children:[{type:"text",value:I.content}]},k=fr(I.htmlStyle||Za(I));k&&(b.properties.style=k);for(let P of r)b=P?.span?.call(m,b,C+1,x,S,I)||b;i==="inline"?s.children.push(b):i==="classic"&&S.children.push(b),x+=I.content.length}if(i==="classic"){for(let I of r)S=I?.line?.call(m,S,C+1)||S;p.push(S),n.push(S)}else i==="inline"&&p.push(S)}),i==="classic"){for(let L of r)c=L?.code?.call(m,c)||c;d.children.push(c);for(let L of r)d=L?.pre?.call(m,d)||d;s.children.push(d)}else if(i==="inline"){let L=[],C={type:"element",tagName:"span",properties:{class:"line"},children:[]};for(let I of s.children)I.type==="element"&&I.tagName==="br"?(L.push(C),C={type:"element",tagName:"span",properties:{class:"line"},children:[]}):(I.type==="element"||I.type==="text")&&C.children.push(I);L.push(C);let x={type:"element",tagName:"code",properties:{},children:L};for(let I of r)x=I?.code?.call(m,x)||x;s.children=[];for(let I=0;I<x.children.length;I++){I>0&&s.children.push({type:"element",tagName:"br",properties:{},children:[]});let b=x.children[I];b.type==="element"&&s.children.push(...b.children)}}let h=s;for(let L of r)h=L?.root?.call(m,h)||h;return o&&ro(h,o),h}function mm(e){return e.map(t=>{let a=[],o="",r;return t.forEach((n,s)=>{let l=!(n.fontStyle&&(n.fontStyle&xe.Underline||n.fontStyle&xe.Strikethrough));l&&n.content.match(/^\s+$/)&&t[s+1]?(r===void 0&&(r=n.offset),o+=n.content):o?(l?a.push({...n,offset:r,content:o+n.content}):a.push({content:o,offset:r},n),r=void 0,o=""):a.push(n)}),a})}function hm(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,n,s]=o;if(!r&&!s)return a;let i=[{...a,offset:a.offset+r.length,content:n}];return r&&i.unshift({content:r,offset:a.offset}),s&&i.push({content:s,offset:a.offset+r.length+n.length}),i}))}function gm(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],n=fr(r.htmlStyle||Za(r)),s=fr(o.htmlStyle||Za(o)),i=r.fontStyle&&(r.fontStyle&xe.Underline||r.fontStyle&xe.Strikethrough),l=o.fontStyle&&(o.fontStyle&xe.Underline||o.fontStyle&xe.Strikethrough);!i&&!l&&n===s?r.content+=o.content:a.push({...o})}return a})}var wm=ur;function xm(e,t,a){let o={meta:{},options:a,codeToHast:(n,s)=>ao(e,n,s),codeToTokens:(n,s)=>to(e,n,s)},r=wm(ao(e,t,a,o));for(let n of eo(a))r=n.postprocess?.call(o,r,a)||r;return r}var el={light:"#333333",dark:"#bbbbbb"},tl={light:"#fffffe",dark:"#1e1e1e"},al="__shiki_resolved";function Lr(e){if(e?.[al])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"?el.light:el.dark),a||(a=t.type==="light"?tl.light:tl.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,n=new Map;function s(i){if(n.has(i))return n.get(i);r+=1;let l=`#${r.toString(16).padStart(8,"0").toLowerCase()}`;return t.colorReplacements?.[`#${l}`]?s(i):(n.set(i,l),l)}t.settings=t.settings.map(i=>{let l=i.settings?.foreground&&!i.settings.foreground.startsWith("#"),u=i.settings?.background&&!i.settings.background.startsWith("#");if(!l&&!u)return i;let d={...i,settings:{...i.settings}};if(l){let c=s(i.settings.foreground);t.colorReplacements[c]=i.settings.foreground,d.settings.foreground=c}if(u){let c=s(i.settings.background);t.colorReplacements[c]=i.settings.background,d.settings.background=c}return d});for(let i of Object.keys(t.colors||{}))if((i==="editor.foreground"||i==="editor.background"||i.startsWith("terminal.ansi"))&&!t.colors[i]?.startsWith("#")){let l=s(t.colors[i]);t.colorReplacements[l]=t.colors[i],t.colors[i]=l}return Object.defineProperty(t,al,{enumerable:!1,writable:!1,value:!0}),t}async function cl(e){return Array.from(new Set((await Promise.all(e.filter(t=>!rl(t)).map(async t=>await ol(t).then(a=>Array.isArray(a)?a:[a])))).flat()))}async function fl(e){return(await Promise.all(e.map(async a=>nl(a)?null:Lr(await ol(a))))).filter(a=>!!a)}var cr=3,Cm=!1;function Lm(e,t=3){if(cr&&!(typeof cr=="number"&&t>cr)){if(Cm)throw new Error(`[SHIKI DEPRECATE]: ${e}`);console.trace(`[SHIKI DEPRECATE]: ${e}`)}}var at=class extends Error{constructor(t){super(t),this.name="ShikiError"}};function pl(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 at(`Circular alias \`${Array.from(a).join(" -> ")} -> ${e}\``);a.add(e)}}return e}var pr=class extends Mi{constructor(t,a,o,r={}){super(t),this._resolver=t,this._themes=a,this._langs=o,this._alias=r,this._themes.map(n=>this.loadTheme(n)),this.loadLanguages(this._langs)}_resolvedThemes=new Map;_resolvedGrammars=new Map;_langMap=new Map;_langGraph=new Map;_textmateThemeCache=new WeakMap;_loadedThemesCache=null;_loadedLanguagesCache=null;getTheme(t){return typeof t=="string"?this._resolvedThemes.get(t):this.loadTheme(t)}loadTheme(t){let a=Lr(t);return a.name&&(this._resolvedThemes.set(a.name,a),this._loadedThemesCache=null),a}getLoadedThemes(){return this._loadedThemesCache||(this._loadedThemesCache=[...this._resolvedThemes.keys()]),this._loadedThemesCache}setTheme(t){let a=this._textmateThemeCache.get(t);a||(a=sa.createFromRawTheme(t),this._textmateThemeCache.set(t,a)),this._syncRegistry.setTheme(a)}getGrammar(t){return t=pl(t,this._alias),this._resolvedGrammars.get(t)}loadLanguage(t){if(this.getGrammar(t.name))return;let a=new Set([...this._langMap.values()].filter(n=>n.embeddedLangsLazy?.includes(t.name)));this._resolver.addLanguage(t);let 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(n=>{this._alias[n]=t.name}),this._loadedLanguagesCache=null,a.size)for(let n of a)this._resolvedGrammars.delete(n.name),this._loadedLanguagesCache=null,this._syncRegistry?._injectionGrammars?.delete(n.scopeName),this._syncRegistry?._grammars?.delete(n.scopeName),this.loadLanguage(this._langMap.get(n.name))}dispose(){super.dispose(),this._resolvedThemes.clear(),this._resolvedGrammars.clear(),this._langMap.clear(),this._langGraph.clear(),this._loadedThemesCache=null}loadLanguages(t){for(let r of t)this.resolveEmbeddedLanguages(r);let a=Array.from(this._langGraph.entries()),o=a.filter(([r,n])=>!n);if(o.length){let r=a.filter(([n,s])=>s?(s.embeddedLanguages||s.embeddedLangs)?.some(l=>o.map(([u])=>u).includes(l)):!1).filter(n=>!o.includes(n));throw new at(`Missing languages ${o.map(([n])=>`\`${n}\``).join(", ")}, required by ${r.map(([n])=>`\`${n}\``).join(", ")}`)}for(let[r,n]of a)this._resolver.addLanguage(n);for(let[r,n]of a)this.loadLanguage(n)}getLoadedLanguages(){return this._loadedLanguagesCache||(this._loadedLanguagesCache=[...new Set([...this._resolvedGrammars.keys(),...Object.keys(this._alias)])]),this._loadedLanguagesCache}resolveEmbeddedLanguages(t){this._langMap.set(t.name,t),this._langGraph.set(t.name,t);let a=t.embeddedLanguages??t.embeddedLangs;if(a)for(let o of a)this._langGraph.set(o,this._langMap.get(o))}},mr=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 n=a.slice(0,r).join(".");o=[...o,...this._injections.get(n)||[]]}return o}},fa=0;function Im(e){fa+=1,e.warnings!==!1&&fa>=10&&fa%10===0&&console.warn(`[Shiki] ${fa} 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 at("`engine` option is required for synchronous mode");let a=(e.langs||[]).flat(1),o=(e.themes||[]).flat(1).map(Lr),r=new mr(e.engine,a),n=new pr(r,o,a,e.langAlias),s;function i(I){return pl(I,e.langAlias)}function l(I){S();let b=n.getGrammar(typeof I=="string"?I:I.name);if(!b)throw new at(`Language \`${I}\` not found, you may need to load it first`);return b}function u(I){if(I==="none")return{bg:"",fg:"",name:"none",settings:[],type:"dark"};S();let b=n.getTheme(I);if(!b)throw new at(`Theme \`${I}\` not found, you may need to load it first`);return b}function d(I){S();let b=u(I);s!==I&&(n.setTheme(b),s=I);let k=n.getColorMap();return{theme:b,colorMap:k}}function c(){return S(),n.getLoadedThemes()}function p(){return S(),n.getLoadedLanguages()}function m(...I){S(),n.loadLanguages(I.flat(1))}async function h(...I){return m(await cl(I))}function L(...I){S();for(let b of I.flat(1))n.loadTheme(b)}async function C(...I){return S(),L(await fl(I))}function S(){if(t)throw new at("Shiki instance has been disposed")}function x(){t||(t=!0,n.dispose(),fa-=1)}return{setTheme:d,getTheme:u,getLanguage:l,getLoadedThemes:c,getLoadedLanguages:p,resolveLangAlias:i,loadLanguage:h,loadLanguageSync:m,loadTheme:C,loadThemeSync:L,dispose:x,[Symbol.dispose]:x}}async function Sm(e){e.engine||Lm("`engine` option is required. Use `createOnigurumaEngine` or `createJavaScriptRegexEngine` to create an engine.");let[t,a,o]=await Promise.all([fl(e.themes||[]),cl(e.langs||[]),e.engine]);return Im({...e,themes:t,langs:a,engine:o})}async function ym(e){let t=await Sm(e);return{getLastGrammarState:(...a)=>sm(t,...a),codeToTokensBase:(a,o)=>xr(t,a,o),codeToTokensWithThemes:(a,o)=>dl(t,a,o),codeToTokens:(a,o)=>to(t,a,o),codeToHast:(a,o)=>ao(t,a,o),codeToHtml:(a,o)=>xm(t,a,o),getBundledLanguages:()=>({}),getBundledThemes:()=>({}),...t,getInternalContext:()=>t}}function ml(e){let t=e.langs,a=e.themes,o=e.engine;async function r(n){function s(c){if(typeof c=="string"){if(c=n.langAlias?.[c]||c,rl(c))return[];let p=t[c];if(!p)throw new re(`Language \`${c}\` is not included in this bundle. You may want to load it from external source.`);return p}return c}function i(c){if(nl(c))return"none";if(typeof c=="string"){let p=a[c];if(!p)throw new re(`Theme \`${c}\` is not included in this bundle. You may want to load it from external source.`);return p}return c}let l=(n.themes??[]).map(c=>i(c)),u=(n.langs??[]).map(c=>s(c)),d=await ym({engine:n.engine??o(),...n,themes:l,langs:u});return{...d,loadLanguage(...c){return d.loadLanguage(...c.map(s))},loadTheme(...c){return d.loadTheme(...c.map(i))},getBundledLanguages(){return t},getBundledThemes(){return a}}}return r}function bm(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 hl(e,t){let a=bm(e);async function o(r,n){let s=await a({langs:[n.lang],themes:"theme"in n?[n.theme]:Object.values(n.themes)}),i=await t?.guessEmbeddedLanguages?.(r,n.lang,s);return i&&await s.loadLanguage(...i),s}return{getSingletonHighlighter(r){return a(r)},async codeToHtml(r,n){return(await o(r,n)).codeToHtml(r,n)},async codeToHast(r,n){return(await o(r,n)).codeToHast(r,n)},async codeToTokens(r,n){return(await o(r,n)).codeToTokens(r,n)},async codeToTokensBase(r,n){return(await o(r,n)).codeToTokensBase(r,n)},async codeToTokensWithThemes(r,n){return(await o(r,n)).codeToTokensWithThemes(r,n)},async getLastGrammarState(r,n){return(await a({langs:[n.lang],themes:[n.theme]})).getLastGrammarState(r,n)}}}f();var Ir=[{id:"abap",name:"ABAP",import:(()=>import("../abap-3IAGZ3PS.js"))},{id:"actionscript-3",name:"ActionScript",import:(()=>import("../actionscript-3-C46RIPM4.js"))},{id:"ada",name:"Ada",import:(()=>import("../ada-DNTYS66P.js"))},{id:"angular-html",name:"Angular HTML",import:(()=>import("../angular-html-GK625GFM.js"))},{id:"angular-ts",name:"Angular TypeScript",import:(()=>import("../angular-ts-BBPQXDS2.js"))},{id:"apache",name:"Apache Conf",import:(()=>import("../apache-DU26FTNI.js"))},{id:"apex",name:"Apex",import:(()=>import("../apex-OU63AG2P.js"))},{id:"apl",name:"APL",import:(()=>import("../apl-JGB4KP74.js"))},{id:"applescript",name:"AppleScript",import:(()=>import("../applescript-TT4XSRXH.js"))},{id:"ara",name:"Ara",import:(()=>import("../ara-Q7AJDKA4.js"))},{id:"asciidoc",name:"AsciiDoc",aliases:["adoc"],import:(()=>import("../asciidoc-WADBFJPS.js"))},{id:"asm",name:"Assembly",import:(()=>import("../asm-D3LJR7GV.js"))},{id:"astro",name:"Astro",import:(()=>import("../astro-K7JGTCPV.js"))},{id:"awk",name:"AWK",import:(()=>import("../awk-DCAM52A7.js"))},{id:"ballerina",name:"Ballerina",import:(()=>import("../ballerina-44XARFEK.js"))},{id:"bat",name:"Batch File",aliases:["batch"],import:(()=>import("../bat-WM4RL2AB.js"))},{id:"beancount",name:"Beancount",import:(()=>import("../beancount-5PUWGPVT.js"))},{id:"berry",name:"Berry",aliases:["be"],import:(()=>import("../berry-YAK4XTWX.js"))},{id:"bibtex",name:"BibTeX",import:(()=>import("../bibtex-2ISWNMJJ.js"))},{id:"bicep",name:"Bicep",import:(()=>import("../bicep-EOACOM4G.js"))},{id:"blade",name:"Blade",import:(()=>import("../blade-RWJJQSLU.js"))},{id:"bsl",name:"1C (Enterprise)",aliases:["1c"],import:(()=>import("../bsl-TNLQPNE3.js"))},{id:"c",name:"C",import:(()=>import("../c-G7V525MX.js"))},{id:"c3",name:"C3",import:(()=>import("../c3-CDQIRWGP.js"))},{id:"cadence",name:"Cadence",aliases:["cdc"],import:(()=>import("../cadence-U32GKKTR.js"))},{id:"cairo",name:"Cairo",import:(()=>import("../cairo-26RR6N4F.js"))},{id:"clarity",name:"Clarity",import:(()=>import("../clarity-4JIHRN2V.js"))},{id:"clojure",name:"Clojure",aliases:["clj"],import:(()=>import("../clojure-PKTTXYYS.js"))},{id:"cmake",name:"CMake",import:(()=>import("../cmake-HXKHWGGH.js"))},{id:"cobol",name:"COBOL",import:(()=>import("../cobol-ZFZ6ZP6X.js"))},{id:"codeowners",name:"CODEOWNERS",import:(()=>import("../codeowners-WCXRHQ2R.js"))},{id:"codeql",name:"CodeQL",aliases:["ql"],import:(()=>import("../codeql-XZZ2USHF.js"))},{id:"coffee",name:"CoffeeScript",aliases:["coffeescript"],import:(()=>import("../coffee-SGQWHBUL.js"))},{id:"common-lisp",name:"Common Lisp",aliases:["lisp"],import:(()=>import("../common-lisp-IK3DGBCK.js"))},{id:"coq",name:"Coq",import:(()=>import("../coq-UPTUVPLH.js"))},{id:"cpp",name:"C++",aliases:["c++"],import:(()=>import("../cpp-HLYUQ6RF.js"))},{id:"crystal",name:"Crystal",import:(()=>import("../crystal-UPNOBGN4.js"))},{id:"csharp",name:"C#",aliases:["c#","cs"],import:(()=>import("../csharp-6EXQ7B24.js"))},{id:"css",name:"CSS",import:(()=>import("../css-MH4LSMNV.js"))},{id:"csv",name:"CSV",import:(()=>import("../csv-CRTD5FOL.js"))},{id:"cue",name:"CUE",import:(()=>import("../cue-IFMTDLM2.js"))},{id:"cypher",name:"Cypher",aliases:["cql"],import:(()=>import("../cypher-WH7754G7.js"))},{id:"d",name:"D",import:(()=>import("../d-VFMGCSG3.js"))},{id:"dart",name:"Dart",import:(()=>import("../dart-CSERBUPM.js"))},{id:"dax",name:"DAX",import:(()=>import("../dax-Y4DTPR3K.js"))},{id:"desktop",name:"Desktop",import:(()=>import("../desktop-UYAYGPQT.js"))},{id:"diff",name:"Diff",import:(()=>import("../diff-BJDM3N45.js"))},{id:"docker",name:"Dockerfile",aliases:["dockerfile"],import:(()=>import("../docker-UOM4Q7PD.js"))},{id:"dotenv",name:"dotEnv",import:(()=>import("../dotenv-LK44WBD3.js"))},{id:"dream-maker",name:"Dream Maker",import:(()=>import("../dream-maker-7RP4JRQH.js"))},{id:"edge",name:"Edge",import:(()=>import("../edge-XE5XFLFP.js"))},{id:"elixir",name:"Elixir",import:(()=>import("../elixir-EXRA4QJX.js"))},{id:"elm",name:"Elm",import:(()=>import("../elm-THYL2NRS.js"))},{id:"emacs-lisp",name:"Emacs Lisp",aliases:["elisp"],import:(()=>import("../emacs-lisp-YHLQYGNI.js"))},{id:"erb",name:"ERB",import:(()=>import("../erb-LRUOJBTB.js"))},{id:"erlang",name:"Erlang",aliases:["erl"],import:(()=>import("../erlang-UNX5MMGA.js"))},{id:"fennel",name:"Fennel",import:(()=>import("../fennel-HYSSBG3N.js"))},{id:"fish",name:"Fish",import:(()=>import("../fish-PTKGQOJI.js"))},{id:"fluent",name:"Fluent",aliases:["ftl"],import:(()=>import("../fluent-LEZHPPJV.js"))},{id:"fortran-fixed-form",name:"Fortran (Fixed Form)",aliases:["f","for","f77"],import:(()=>import("../fortran-fixed-form-J5AMEFMB.js"))},{id:"fortran-free-form",name:"Fortran (Free Form)",aliases:["f90","f95","f03","f08","f18"],import:(()=>import("../fortran-free-form-S3BNTBLS.js"))},{id:"fsharp",name:"F#",aliases:["f#","fs"],import:(()=>import("../fsharp-H4OIW62Z.js"))},{id:"gdresource",name:"GDResource",aliases:["tscn","tres"],import:(()=>import("../gdresource-A6NTYFLM.js"))},{id:"gdscript",name:"GDScript",aliases:["gd"],import:(()=>import("../gdscript-YQUSJRNZ.js"))},{id:"gdshader",name:"GDShader",import:(()=>import("../gdshader-S5432GFE.js"))},{id:"genie",name:"Genie",import:(()=>import("../genie-RNVG5N7L.js"))},{id:"gherkin",name:"Gherkin",import:(()=>import("../gherkin-E5R62T6O.js"))},{id:"git-commit",name:"Git Commit Message",import:(()=>import("../git-commit-QGH6XOBG.js"))},{id:"git-rebase",name:"Git Rebase Message",import:(()=>import("../git-rebase-XTCZTXU4.js"))},{id:"gleam",name:"Gleam",import:(()=>import("../gleam-W5WZ7CST.js"))},{id:"glimmer-js",name:"Glimmer JS",aliases:["gjs"],import:(()=>import("../glimmer-js-JA25I4AE.js"))},{id:"glimmer-ts",name:"Glimmer TS",aliases:["gts"],import:(()=>import("../glimmer-ts-CKELYRRF.js"))},{id:"glsl",name:"GLSL",import:(()=>import("../glsl-PVW2OPUD.js"))},{id:"gn",name:"GN",import:(()=>import("../gn-FCAO7WI5.js"))},{id:"gnuplot",name:"Gnuplot",import:(()=>import("../gnuplot-Q6SE5CHZ.js"))},{id:"go",name:"Go",import:(()=>import("../go-CPCZAAWX.js"))},{id:"graphql",name:"GraphQL",aliases:["gql"],import:(()=>import("../graphql-UN5O7U5U.js"))},{id:"groovy",name:"Groovy",import:(()=>import("../groovy-PJAEBBJY.js"))},{id:"hack",name:"Hack",import:(()=>import("../hack-QIUJFE3G.js"))},{id:"haml",name:"Ruby Haml",import:(()=>import("../haml-JQIESO7E.js"))},{id:"handlebars",name:"Handlebars",aliases:["hbs"],import:(()=>import("../handlebars-UBV5AWUH.js"))},{id:"haskell",name:"Haskell",aliases:["hs"],import:(()=>import("../haskell-NX6XRMNO.js"))},{id:"haxe",name:"Haxe",import:(()=>import("../haxe-7YNB7FVC.js"))},{id:"hcl",name:"HashiCorp HCL",import:(()=>import("../hcl-ZF75ASCX.js"))},{id:"hjson",name:"Hjson",import:(()=>import("../hjson-65TX6QOC.js"))},{id:"hlsl",name:"HLSL",import:(()=>import("../hlsl-U2O526MI.js"))},{id:"html",name:"HTML",import:(()=>import("../html-AWDHWPK7.js"))},{id:"html-derivative",name:"HTML (Derivative)",import:(()=>import("../html-derivative-QY3ZIV7G.js"))},{id:"http",name:"HTTP",import:(()=>import("../http-KIGXJYY6.js"))},{id:"hurl",name:"Hurl",import:(()=>import("../hurl-BZB5LDD5.js"))},{id:"hxml",name:"HXML",import:(()=>import("../hxml-IGTXIURH.js"))},{id:"hy",name:"Hy",import:(()=>import("../hy-CLDGXJYP.js"))},{id:"imba",name:"Imba",import:(()=>import("../imba-NWHLCVE5.js"))},{id:"ini",name:"INI",aliases:["properties"],import:(()=>import("../ini-R6WYP7NC.js"))},{id:"java",name:"Java",import:(()=>import("../java-DHBXDMBM.js"))},{id:"javascript",name:"JavaScript",aliases:["js","cjs","mjs"],import:(()=>import("../javascript-GNUEDNHO.js"))},{id:"jinja",name:"Jinja",import:(()=>import("../jinja-AEVQQKWS.js"))},{id:"jison",name:"Jison",import:(()=>import("../jison-64A6IJCV.js"))},{id:"json",name:"JSON",import:(()=>import("../json-2ELCHKXT.js"))},{id:"json5",name:"JSON5",import:(()=>import("../json5-QRH5UJYD.js"))},{id:"jsonc",name:"JSON with Comments",import:(()=>import("../jsonc-IXPVR4NY.js"))},{id:"jsonl",name:"JSON Lines",import:(()=>import("../jsonl-C57GMUK5.js"))},{id:"jsonnet",name:"Jsonnet",import:(()=>import("../jsonnet-VNADFLKI.js"))},{id:"jssm",name:"JSSM",aliases:["fsl"],import:(()=>import("../jssm-CW4ZYDSF.js"))},{id:"jsx",name:"JSX",import:(()=>import("../jsx-YTENXENT.js"))},{id:"julia",name:"Julia",aliases:["jl"],import:(()=>import("../julia-75QR2XDN.js"))},{id:"kdl",name:"KDL",import:(()=>import("../kdl-X3AS2HRT.js"))},{id:"kotlin",name:"Kotlin",aliases:["kt","kts"],import:(()=>import("../kotlin-WGITM75W.js"))},{id:"kusto",name:"Kusto",aliases:["kql"],import:(()=>import("../kusto-LT46F7AO.js"))},{id:"latex",name:"LaTeX",import:(()=>import("../latex-R4PJ7JDY.js"))},{id:"lean",name:"Lean 4",aliases:["lean4"],import:(()=>import("../lean-DYWOENAS.js"))},{id:"less",name:"Less",import:(()=>import("../less-ZYJT7MPU.js"))},{id:"liquid",name:"Liquid",import:(()=>import("../liquid-S4LVU77Y.js"))},{id:"llvm",name:"LLVM IR",import:(()=>import("../llvm-WBQ7MHV7.js"))},{id:"log",name:"Log file",import:(()=>import("../log-AXKDFD3L.js"))},{id:"logo",name:"Logo",import:(()=>import("../logo-E23LAFZY.js"))},{id:"lua",name:"Lua",import:(()=>import("../lua-QQ5QEPPO.js"))},{id:"luau",name:"Luau",import:(()=>import("../luau-D432BEB5.js"))},{id:"make",name:"Makefile",aliases:["makefile"],import:(()=>import("../make-QFMWQJMG.js"))},{id:"markdown",name:"Markdown",aliases:["md"],import:(()=>import("../markdown-D756RUOP.js"))},{id:"marko",name:"Marko",import:(()=>import("../marko-WVASNOGB.js"))},{id:"matlab",name:"MATLAB",import:(()=>import("../matlab-ZKZ7YBAH.js"))},{id:"mdc",name:"MDC",import:(()=>import("../mdc-NDTDGSIG.js"))},{id:"mdx",name:"MDX",import:(()=>import("../mdx-34BL2O4O.js"))},{id:"mermaid",name:"Mermaid",aliases:["mmd"],import:(()=>import("../mermaid-54Z3SAII.js"))},{id:"mipsasm",name:"MIPS Assembly",aliases:["mips"],import:(()=>import("../mipsasm-NKQWJEL7.js"))},{id:"mojo",name:"Mojo",import:(()=>import("../mojo-KRRNBH7O.js"))},{id:"moonbit",name:"MoonBit",aliases:["mbt","mbti"],import:(()=>import("../moonbit-LQ7JL5LZ.js"))},{id:"move",name:"Move",import:(()=>import("../move-4VWCI4YQ.js"))},{id:"narrat",name:"Narrat Language",aliases:["nar"],import:(()=>import("../narrat-4QSDQDLH.js"))},{id:"nextflow",name:"Nextflow",aliases:["nf"],import:(()=>import("../nextflow-DPCEWQNZ.js"))},{id:"nginx",name:"Nginx",import:(()=>import("../nginx-DXHAXQRH.js"))},{id:"nim",name:"Nim",import:(()=>import("../nim-Z6EEJ7SX.js"))},{id:"nix",name:"Nix",import:(()=>import("../nix-WAYR4BYU.js"))},{id:"nushell",name:"nushell",aliases:["nu"],import:(()=>import("../nushell-26KZW4VL.js"))},{id:"objective-c",name:"Objective-C",aliases:["objc"],import:(()=>import("../objective-c-246HWLKT.js"))},{id:"objective-cpp",name:"Objective-C++",import:(()=>import("../objective-cpp-RJUXXPYQ.js"))},{id:"ocaml",name:"OCaml",import:(()=>import("../ocaml-P7NGS7PR.js"))},{id:"odin",name:"Odin",import:(()=>import("../odin-UPPZCJGN.js"))},{id:"openscad",name:"OpenSCAD",aliases:["scad"],import:(()=>import("../openscad-JRK6K3FL.js"))},{id:"pascal",name:"Pascal",import:(()=>import("../pascal-RDFLUHHA.js"))},{id:"perl",name:"Perl",import:(()=>import("../perl-5IQEFQG3.js"))},{id:"php",name:"PHP",import:(()=>import("../php-UQGWKJAF.js"))},{id:"pkl",name:"Pkl",import:(()=>import("../pkl-PAM76VXP.js"))},{id:"plsql",name:"PL/SQL",import:(()=>import("../plsql-3Y6UMFEG.js"))},{id:"po",name:"Gettext PO",aliases:["pot","potx"],import:(()=>import("../po-GNTAKCTE.js"))},{id:"polar",name:"Polar",import:(()=>import("../polar-EVTMRLGV.js"))},{id:"postcss",name:"PostCSS",import:(()=>import("../postcss-42343LW7.js"))},{id:"powerquery",name:"PowerQuery",import:(()=>import("../powerquery-M34PNR4X.js"))},{id:"powershell",name:"PowerShell",aliases:["ps","ps1"],import:(()=>import("../powershell-IR7ICFQW.js"))},{id:"prisma",name:"Prisma",import:(()=>import("../prisma-RXSIFLZX.js"))},{id:"prolog",name:"Prolog",import:(()=>import("../prolog-YBBQ4UD5.js"))},{id:"proto",name:"Protocol Buffer 3",aliases:["protobuf"],import:(()=>import("../proto-U4FF45G6.js"))},{id:"pug",name:"Pug",aliases:["jade"],import:(()=>import("../pug-XHTBJJNO.js"))},{id:"puppet",name:"Puppet",import:(()=>import("../puppet-HWOKIYJP.js"))},{id:"purescript",name:"PureScript",import:(()=>import("../purescript-D45AJS5J.js"))},{id:"python",name:"Python",aliases:["py"],import:(()=>import("../python-QWA7UE2I.js"))},{id:"qml",name:"QML",import:(()=>import("../qml-RHCWFR3S.js"))},{id:"qmldir",name:"QML Directory",import:(()=>import("../qmldir-FBDC3XMZ.js"))},{id:"qss",name:"Qt Style Sheets",import:(()=>import("../qss-AD3WZQ45.js"))},{id:"r",name:"R",import:(()=>import("../r-NHIAHDOD.js"))},{id:"racket",name:"Racket",import:(()=>import("../racket-7G65C5N5.js"))},{id:"raku",name:"Raku",aliases:["perl6"],import:(()=>import("../raku-IWS7BLGD.js"))},{id:"razor",name:"ASP.NET Razor",import:(()=>import("../razor-UMC4HKIF.js"))},{id:"reg",name:"Windows Registry Script",import:(()=>import("../reg-V4XLWESR.js"))},{id:"regexp",name:"RegExp",aliases:["regex"],import:(()=>import("../regexp-XP4MR635.js"))},{id:"rel",name:"Rel",import:(()=>import("../rel-DE6UXATM.js"))},{id:"riscv",name:"RISC-V",import:(()=>import("../riscv-5PDXBPPL.js"))},{id:"ron",name:"RON",import:(()=>import("../ron-WD6BJFDY.js"))},{id:"rosmsg",name:"ROS Interface",import:(()=>import("../rosmsg-7LDUCZRQ.js"))},{id:"rst",name:"reStructuredText",import:(()=>import("../rst-HCGHBPBZ.js"))},{id:"ruby",name:"Ruby",aliases:["rb"],import:(()=>import("../ruby-ML25RVXY.js"))},{id:"rust",name:"Rust",aliases:["rs"],import:(()=>import("../rust-Z2NYMT2Z.js"))},{id:"sas",name:"SAS",import:(()=>import("../sas-A4JCTK6H.js"))},{id:"sass",name:"Sass",import:(()=>import("../sass-75VDP7DE.js"))},{id:"scala",name:"Scala",import:(()=>import("../scala-7TJ4N6KC.js"))},{id:"scheme",name:"Scheme",import:(()=>import("../scheme-5XARZMKT.js"))},{id:"scss",name:"SCSS",import:(()=>import("../scss-4QR2BXFS.js"))},{id:"sdbl",name:"1C (Query)",aliases:["1c-query"],import:(()=>import("../sdbl-6M55AJVA.js"))},{id:"shaderlab",name:"ShaderLab",aliases:["shader"],import:(()=>import("../shaderlab-322XNY5V.js"))},{id:"shellscript",name:"Shell",aliases:["bash","sh","shell","zsh"],import:(()=>import("../shellscript-F23VVVTW.js"))},{id:"shellsession",name:"Shell Session",aliases:["console"],import:(()=>import("../shellsession-G65XJMCC.js"))},{id:"smalltalk",name:"Smalltalk",import:(()=>import("../smalltalk-LALIO5SC.js"))},{id:"solidity",name:"Solidity",import:(()=>import("../solidity-TQUKTJZZ.js"))},{id:"soy",name:"Closure Templates",aliases:["closure-templates"],import:(()=>import("../soy-ALTWCQTO.js"))},{id:"sparql",name:"SPARQL",import:(()=>import("../sparql-ARI3MVK7.js"))},{id:"splunk",name:"Splunk Query Language",aliases:["spl"],import:(()=>import("../splunk-QEFG3NPJ.js"))},{id:"sql",name:"SQL",import:(()=>import("../sql-SBP7VV3V.js"))},{id:"ssh-config",name:"SSH Config",import:(()=>import("../ssh-config-SC6RC6IV.js"))},{id:"stata",name:"Stata",import:(()=>import("../stata-MNI5YOQU.js"))},{id:"stylus",name:"Stylus",aliases:["styl"],import:(()=>import("../stylus-YYWEHAK3.js"))},{id:"surrealql",name:"SurrealQL",aliases:["surql"],import:(()=>import("../surrealql-5X7LI3J6.js"))},{id:"svelte",name:"Svelte",import:(()=>import("../svelte-6TT7H4YP.js"))},{id:"swift",name:"Swift",import:(()=>import("../swift-JEBLU4EM.js"))},{id:"system-verilog",name:"SystemVerilog",import:(()=>import("../system-verilog-46QRSGNM.js"))},{id:"systemd",name:"Systemd Units",import:(()=>import("../systemd-3PUVCSI7.js"))},{id:"talonscript",name:"TalonScript",aliases:["talon"],import:(()=>import("../talonscript-AK4LB3KC.js"))},{id:"tasl",name:"Tasl",import:(()=>import("../tasl-VHTYBUVI.js"))},{id:"tcl",name:"Tcl",import:(()=>import("../tcl-UUMKHRHL.js"))},{id:"templ",name:"Templ",import:(()=>import("../templ-WN3SJLUV.js"))},{id:"terraform",name:"Terraform",aliases:["tf","tfvars"],import:(()=>import("../terraform-GCGIT2RL.js"))},{id:"tex",name:"TeX",import:(()=>import("../tex-L55DZDKV.js"))},{id:"toml",name:"TOML",import:(()=>import("../toml-7AH4HFBN.js"))},{id:"ts-tags",name:"TypeScript with Tags",aliases:["lit"],import:(()=>import("../ts-tags-NAJDOQCO.js"))},{id:"tsv",name:"TSV",import:(()=>import("../tsv-EB3LRXYX.js"))},{id:"tsx",name:"TSX",import:(()=>import("../tsx-Y5YXGNIX.js"))},{id:"turtle",name:"Turtle",import:(()=>import("../turtle-KM6UGYIQ.js"))},{id:"twig",name:"Twig",import:(()=>import("../twig-GIY7NVAA.js"))},{id:"typescript",name:"TypeScript",aliases:["ts","cts","mts"],import:(()=>import("../typescript-ZF5AMNEZ.js"))},{id:"typespec",name:"TypeSpec",aliases:["tsp"],import:(()=>import("../typespec-6JSRRA42.js"))},{id:"typst",name:"Typst",aliases:["typ"],import:(()=>import("../typst-ZOSAUKL5.js"))},{id:"v",name:"V",import:(()=>import("../v-HVLBO3DI.js"))},{id:"vala",name:"Vala",import:(()=>import("../vala-WWRVCJNF.js"))},{id:"vb",name:"Visual Basic",aliases:["cmd"],import:(()=>import("../vb-XFFF4O73.js"))},{id:"verilog",name:"Verilog",import:(()=>import("../verilog-XTDPJNP7.js"))},{id:"vhdl",name:"VHDL",import:(()=>import("../vhdl-OCZJ2AOZ.js"))},{id:"viml",name:"Vim Script",aliases:["vim","vimscript"],import:(()=>import("../viml-PVA3ZJ5L.js"))},{id:"vue",name:"Vue",import:(()=>import("../vue-V6GLJNYA.js"))},{id:"vue-html",name:"Vue HTML",import:(()=>import("../vue-html-G4DE7FYD.js"))},{id:"vue-vine",name:"Vue Vine",import:(()=>import("../vue-vine-KB45C76H.js"))},{id:"vyper",name:"Vyper",aliases:["vy"],import:(()=>import("../vyper-SBDFKHRI.js"))},{id:"wasm",name:"WebAssembly",import:(()=>import("../wasm-SXNE4SKX.js"))},{id:"wenyan",name:"Wenyan",aliases:["\u6587\u8A00"],import:(()=>import("../wenyan-PMSCJP7P.js"))},{id:"wgsl",name:"WGSL",import:(()=>import("../wgsl-DOXQU7M4.js"))},{id:"wikitext",name:"Wikitext",aliases:["mediawiki","wiki"],import:(()=>import("../wikitext-LGNEKWDX.js"))},{id:"wit",name:"WebAssembly Interface Types",import:(()=>import("../wit-G62U2KBE.js"))},{id:"wolfram",name:"Wolfram",aliases:["wl"],import:(()=>import("../wolfram-YTZHUYN6.js"))},{id:"xml",name:"XML",import:(()=>import("../xml-WGLM4CWK.js"))},{id:"xsl",name:"XSL",import:(()=>import("../xsl-KAAH2GEK.js"))},{id:"yaml",name:"YAML",aliases:["yml"],import:(()=>import("../yaml-JGEBDSVI.js"))},{id:"zenscript",name:"ZenScript",import:(()=>import("../zenscript-QQQPZNJ7.js"))},{id:"zig",name:"Zig",import:(()=>import("../zig-6LJUAPBA.js"))}],gl=Object.fromEntries(Ir.map(e=>[e.id,e.import])),wl=Object.fromEntries(Ir.flatMap(e=>e.aliases?.map(t=>[t,e.import])||[])),ma={...gl,...wl};f();var km=[{id:"andromeeda",displayName:"Andromeeda",type:"dark",import:(()=>import("../andromeeda-XSK3JERF.js"))},{id:"aurora-x",displayName:"Aurora X",type:"dark",import:(()=>import("../aurora-x-CGSVHL4H.js"))},{id:"ayu-dark",displayName:"Ayu Dark",type:"dark",import:(()=>import("../ayu-dark-XYI57HMC.js"))},{id:"ayu-light",displayName:"Ayu Light",type:"light",import:(()=>import("../ayu-light-4PSGMDIC.js"))},{id:"ayu-mirage",displayName:"Ayu Mirage",type:"dark",import:(()=>import("../ayu-mirage-DU5SNMZX.js"))},{id:"catppuccin-frappe",displayName:"Catppuccin Frapp\xE9",type:"dark",import:(()=>import("../catppuccin-frappe-UZ4N3Z4I.js"))},{id:"catppuccin-latte",displayName:"Catppuccin Latte",type:"light",import:(()=>import("../catppuccin-latte-GCOWYLZG.js"))},{id:"catppuccin-macchiato",displayName:"Catppuccin Macchiato",type:"dark",import:(()=>import("../catppuccin-macchiato-PJD7W5WJ.js"))},{id:"catppuccin-mocha",displayName:"Catppuccin Mocha",type:"dark",import:(()=>import("../catppuccin-mocha-RRH4FOBS.js"))},{id:"dark-plus",displayName:"Dark Plus",type:"dark",import:(()=>import("../dark-plus-PSM5XP2I.js"))},{id:"dracula",displayName:"Dracula Theme",type:"dark",import:(()=>import("../dracula-2VHT5LK5.js"))},{id:"dracula-soft",displayName:"Dracula Theme Soft",type:"dark",import:(()=>import("../dracula-soft-MSCUO73T.js"))},{id:"everforest-dark",displayName:"Everforest Dark",type:"dark",import:(()=>import("../everforest-dark-AGVJEQ35.js"))},{id:"everforest-light",displayName:"Everforest Light",type:"light",import:(()=>import("../everforest-light-62GPFKVJ.js"))},{id:"github-dark",displayName:"GitHub Dark",type:"dark",import:(()=>import("../github-dark-5OJVMBCE.js"))},{id:"github-dark-default",displayName:"GitHub Dark Default",type:"dark",import:(()=>import("../github-dark-default-4WERFSZW.js"))},{id:"github-dark-dimmed",displayName:"GitHub Dark Dimmed",type:"dark",import:(()=>import("../github-dark-dimmed-7VD3SZKC.js"))},{id:"github-dark-high-contrast",displayName:"GitHub Dark High Contrast",type:"dark",import:(()=>import("../github-dark-high-contrast-FVMMS656.js"))},{id:"github-light",displayName:"GitHub Light",type:"light",import:(()=>import("../github-light-SE4LEKO7.js"))},{id:"github-light-default",displayName:"GitHub Light Default",type:"light",import:(()=>import("../github-light-default-TV7BYQGI.js"))},{id:"github-light-high-contrast",displayName:"GitHub Light High Contrast",type:"light",import:(()=>import("../github-light-high-contrast-WKO4I3G7.js"))},{id:"gruvbox-dark-hard",displayName:"Gruvbox Dark Hard",type:"dark",import:(()=>import("../gruvbox-dark-hard-LOYZQIGI.js"))},{id:"gruvbox-dark-medium",displayName:"Gruvbox Dark Medium",type:"dark",import:(()=>import("../gruvbox-dark-medium-UIMSJJ6K.js"))},{id:"gruvbox-dark-soft",displayName:"Gruvbox Dark Soft",type:"dark",import:(()=>import("../gruvbox-dark-soft-PU6RNTTO.js"))},{id:"gruvbox-light-hard",displayName:"Gruvbox Light Hard",type:"light",import:(()=>import("../gruvbox-light-hard-ZQJ7XSZF.js"))},{id:"gruvbox-light-medium",displayName:"Gruvbox Light Medium",type:"light",import:(()=>import("../gruvbox-light-medium-CD3ZGYV6.js"))},{id:"gruvbox-light-soft",displayName:"Gruvbox Light Soft",type:"light",import:(()=>import("../gruvbox-light-soft-S74MAGOM.js"))},{id:"horizon",displayName:"Horizon",type:"dark",import:(()=>import("../horizon-EAAZ4KVN.js"))},{id:"houston",displayName:"Houston",type:"dark",import:(()=>import("../houston-UNRWGR67.js"))},{id:"kanagawa-dragon",displayName:"Kanagawa Dragon",type:"dark",import:(()=>import("../kanagawa-dragon-BOSCCB42.js"))},{id:"kanagawa-lotus",displayName:"Kanagawa Lotus",type:"light",import:(()=>import("../kanagawa-lotus-NXMB2IVI.js"))},{id:"kanagawa-wave",displayName:"Kanagawa Wave",type:"dark",import:(()=>import("../kanagawa-wave-YOHS63UF.js"))},{id:"laserwave",displayName:"LaserWave",type:"dark",import:(()=>import("../laserwave-TS4AG4VO.js"))},{id:"light-plus",displayName:"Light Plus",type:"light",import:(()=>import("../light-plus-2HYW3NJ6.js"))},{id:"material-theme",displayName:"Material Theme",type:"dark",import:(()=>import("../material-theme-KPDVFAGV.js"))},{id:"material-theme-darker",displayName:"Material Theme Darker",type:"dark",import:(()=>import("../material-theme-darker-GVSTMSNT.js"))},{id:"material-theme-lighter",displayName:"Material Theme Lighter",type:"light",import:(()=>import("../material-theme-lighter-JWZNUXUH.js"))},{id:"material-theme-ocean",displayName:"Material Theme Ocean",type:"dark",import:(()=>import("../material-theme-ocean-MU4N3XNQ.js"))},{id:"material-theme-palenight",displayName:"Material Theme Palenight",type:"dark",import:(()=>import("../material-theme-palenight-VMWD73WM.js"))},{id:"min-dark",displayName:"Min Dark",type:"dark",import:(()=>import("../min-dark-ASEVSA24.js"))},{id:"min-light",displayName:"Min Light",type:"light",import:(()=>import("../min-light-3H54BB3D.js"))},{id:"monokai",displayName:"Monokai",type:"dark",import:(()=>import("../monokai-5QWQOFN6.js"))},{id:"night-owl",displayName:"Night Owl",type:"dark",import:(()=>import("../night-owl-4QQBS2UX.js"))},{id:"night-owl-light",displayName:"Night Owl Light",type:"light",import:(()=>import("../night-owl-light-HR6A2OQO.js"))},{id:"nord",displayName:"Nord",type:"dark",import:(()=>import("../nord-XK3AUNCF.js"))},{id:"one-dark-pro",displayName:"One Dark Pro",type:"dark",import:(()=>import("../one-dark-pro-ZV7CEA5M.js"))},{id:"one-light",displayName:"One Light",type:"light",import:(()=>import("../one-light-FKZJCKM6.js"))},{id:"plastic",displayName:"Plastic",type:"dark",import:(()=>import("../plastic-SXCQPKYC.js"))},{id:"poimandres",displayName:"Poimandres",type:"dark",import:(()=>import("../poimandres-S3UYVG4O.js"))},{id:"red",displayName:"Red",type:"dark",import:(()=>import("../red-A6OC2HVL.js"))},{id:"rose-pine",displayName:"Ros\xE9 Pine",type:"dark",import:(()=>import("../rose-pine-GLWOWPBK.js"))},{id:"rose-pine-dawn",displayName:"Ros\xE9 Pine Dawn",type:"light",import:(()=>import("../rose-pine-dawn-HYE6T7LV.js"))},{id:"rose-pine-moon",displayName:"Ros\xE9 Pine Moon",type:"dark",import:(()=>import("../rose-pine-moon-VHVTDDVO.js"))},{id:"slack-dark",displayName:"Slack Dark",type:"dark",import:(()=>import("../slack-dark-OPW5CYSY.js"))},{id:"slack-ochin",displayName:"Slack Ochin",type:"light",import:(()=>import("../slack-ochin-WTVMYBFH.js"))},{id:"snazzy-light",displayName:"Snazzy Light",type:"light",import:(()=>import("../snazzy-light-5UQ56PC5.js"))},{id:"solarized-dark",displayName:"Solarized Dark",type:"dark",import:(()=>import("../solarized-dark-DSMP6D7D.js"))},{id:"solarized-light",displayName:"Solarized Light",type:"light",import:(()=>import("../solarized-light-3IZTZCIV.js"))},{id:"synthwave-84",displayName:"Synthwave '84",type:"dark",import:(()=>import("../synthwave-84-JWI6CVJZ.js"))},{id:"tokyo-night",displayName:"Tokyo Night",type:"dark",import:(()=>import("../tokyo-night-SRK4SADJ.js"))},{id:"vesper",displayName:"Vesper",type:"dark",import:(()=>import("../vesper-WIZFPFI7.js"))},{id:"vitesse-black",displayName:"Vitesse Black",type:"dark",import:(()=>import("../vitesse-black-PEGI4HJX.js"))},{id:"vitesse-dark",displayName:"Vitesse Dark",type:"dark",import:(()=>import("../vitesse-dark-M2ZAGPXG.js"))},{id:"vitesse-light",displayName:"Vitesse Light",type:"light",import:(()=>import("../vitesse-light-RICZI4IG.js"))}],xl=Object.fromEntries(km.map(e=>[e.id,e.import]));f();var ha=class extends Error{constructor(t){super(t),this.name="ShikiError"}};function Tm(){return 2147483648}function vm(){return typeof performance<"u"?performance.now():Date.now()}var Pm=(e,t)=>e+(t-e%t)%t;async function Am(e){let t,a,o={};function r(m){a=m,o.HEAPU8=new Uint8Array(m),o.HEAPU32=new Uint32Array(m)}function n(m,h,L){o.HEAPU8.copyWithin(m,h,h+L)}function s(m){try{return t.grow(m-a.byteLength+65535>>>16),r(t.buffer),1}catch{}}function i(m){let h=o.HEAPU8.length;m=m>>>0;let L=Tm();if(m>L)return!1;for(let C=1;C<=4;C*=2){let S=h*(1+.2/C);S=Math.min(S,m+100663296);let x=Math.min(L,Pm(Math.max(m,S),65536));if(s(x))return!0}return!1}let l=typeof TextDecoder<"u"?new TextDecoder("utf8"):void 0;function u(m,h,L=1024){let C=h+L,S=h;for(;m[S]&&!(S>=C);)++S;if(S-h>16&&m.buffer&&l)return l.decode(m.subarray(h,S));let x="";for(;h<S;){let I=m[h++];if(!(I&128)){x+=String.fromCharCode(I);continue}let b=m[h++]&63;if((I&224)===192){x+=String.fromCharCode((I&31)<<6|b);continue}let k=m[h++]&63;if((I&240)===224?I=(I&15)<<12|b<<6|k:I=(I&7)<<18|b<<12|k<<6|m[h++]&63,I<65536)x+=String.fromCharCode(I);else{let P=I-65536;x+=String.fromCharCode(55296|P>>10,56320|P&1023)}}return x}function d(m,h){return m?u(o.HEAPU8,m,h):""}let c={emscripten_get_now:vm,emscripten_memcpy_big:n,emscripten_resize_heap:i,fd_write:()=>0};async function p(){let h=await e({env:c,wasi_snapshot_preview1:c});t=h.memory,r(t.buffer),Object.assign(o,h),o.UTF8ToString=d}return await p(),o}var Rm=Object.defineProperty,Mm=(e,t,a)=>t in e?Rm(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a,de=(e,t,a)=>Mm(e,typeof t!="symbol"?t+"":t,a),he=null;function Fm(e){throw new ha(e.UTF8ToString(e.getLastOnigError()))}var so=class e{constructor(t){de(this,"utf16Length"),de(this,"utf8Length"),de(this,"utf16Value"),de(this,"utf8Value"),de(this,"utf16OffsetToUtf8"),de(this,"utf8OffsetToUtf16");let a=t.length,o=e._utf8ByteLength(t),r=o!==a,n=r?new Uint32Array(a+1):null;r&&(n[a]=o);let s=r?new Uint32Array(o+1):null;r&&(s[o]=a);let i=new Uint8Array(o),l=0;for(let u=0;u<a;u++){let d=t.charCodeAt(u),c=d,p=!1;if(d>=55296&&d<=56319&&u+1<a){let m=t.charCodeAt(u+1);m>=56320&&m<=57343&&(c=(d-55296<<10)+65536|m-56320,p=!0)}r&&(n[u]=l,p&&(n[u+1]=l),c<=127?s[l+0]=u:c<=2047?(s[l+0]=u,s[l+1]=u):c<=65535?(s[l+0]=u,s[l+1]=u,s[l+2]=u):(s[l+0]=u,s[l+1]=u,s[l+2]=u,s[l+3]=u)),c<=127?i[l++]=c:c<=2047?(i[l++]=192|(c&1984)>>>6,i[l++]=128|(c&63)>>>0):c<=65535?(i[l++]=224|(c&61440)>>>12,i[l++]=128|(c&4032)>>>6,i[l++]=128|(c&63)>>>0):(i[l++]=240|(c&1835008)>>>18,i[l++]=128|(c&258048)>>>12,i[l++]=128|(c&4032)>>>6,i[l++]=128|(c&63)>>>0),p&&u++}this.utf16Length=a,this.utf8Length=o,this.utf16Value=t,this.utf8Value=i,this.utf16OffsetToUtf8=n,this.utf8OffsetToUtf16=s}static _utf8ByteLength(t){let a=0;for(let o=0,r=t.length;o<r;o++){let n=t.charCodeAt(o),s=n,i=!1;if(n>=55296&&n<=56319&&o+1<r){let l=t.charCodeAt(o+1);l>=56320&&l<=57343&&(s=(n-55296<<10)+65536|l-56320,i=!0)}s<=127?a+=1:s<=2047?a+=2:s<=65535?a+=3:a+=4,i&&o++}return a}createString(t){let a=t.omalloc(this.utf8Length);return t.HEAPU8.set(this.utf8Value,a),a}},io=class Ve{constructor(t){if(de(this,"id",++Ve.LAST_ID),de(this,"_onigBinding"),de(this,"content"),de(this,"utf16Length"),de(this,"utf8Length"),de(this,"utf16OffsetToUtf8"),de(this,"utf8OffsetToUtf16"),de(this,"ptr"),!he)throw new ha("Must invoke loadWasm first.");this._onigBinding=he,this.content=t;let a=new so(t);this.utf16Length=a.utf16Length,this.utf8Length=a.utf8Length,this.utf16OffsetToUtf8=a.utf16OffsetToUtf8,this.utf8OffsetToUtf16=a.utf8OffsetToUtf16,this.utf8Length<1e4&&!Ve._sharedPtrInUse?(Ve._sharedPtr||(Ve._sharedPtr=he.omalloc(1e4)),Ve._sharedPtrInUse=!0,he.HEAPU8.set(a.utf8Value,Ve._sharedPtr),this.ptr=Ve._sharedPtr):this.ptr=a.createString(he)}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===Ve._sharedPtr?Ve._sharedPtrInUse=!1:this._onigBinding.ofree(this.ptr)}};de(io,"LAST_ID",0);de(io,"_sharedPtr",0);de(io,"_sharedPtrInUse",!1);var Cl=io,yr=class{constructor(t){if(de(this,"_onigBinding"),de(this,"_ptr"),!he)throw new ha("Must invoke loadWasm first.");let a=[],o=[];for(let i=0,l=t.length;i<l;i++){let u=new so(t[i]);a[i]=u.createString(he),o[i]=u.utf8Length}let r=he.omalloc(4*t.length);he.HEAPU32.set(a,r/4);let n=he.omalloc(4*t.length);he.HEAPU32.set(o,n/4);let s=he.createOnigScanner(r,n,t.length);for(let i=0,l=t.length;i<l;i++)he.ofree(a[i]);he.ofree(n),he.ofree(r),s===0&&Fm(he),this._onigBinding=he,this._ptr=s}dispose(){this._onigBinding.freeOnigScanner(this._ptr)}findNextMatchSync(t,a,o){let r=0;if(typeof o=="number"&&(r=o),typeof t=="string"){t=new Cl(t);let n=this._findNextMatchSync(t,a,!1,r);return t.dispose(),n}return this._findNextMatchSync(t,a,!1,r)}_findNextMatchSync(t,a,o,r){let n=this._onigBinding,s=n.findNextOnigScannerMatch(this._ptr,t.id,t.ptr,t.utf8Length,t.convertUtf16OffsetToUtf8(a),r);if(s===0)return null;let i=n.HEAPU32,l=s/4,u=i[l++],d=i[l++],c=[];for(let p=0;p<d;p++){let m=t.convertUtf8OffsetToUtf16(i[l++]),h=t.convertUtf8OffsetToUtf16(i[l++]);c[p]={start:m,end:h,length:h-m}}return{index:u,captureIndices:c}}};function Dm(e){return typeof e.instantiator=="function"}function Bm(e){return typeof e.default=="function"}function Em(e){return typeof e.data<"u"}function _m(e){return typeof Response<"u"&&e instanceof Response}function Nm(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 no;function Om(e){if(no)return no;async function t(){he=await Am(async a=>{let o=e;return o=await o,typeof o=="function"&&(o=await o(a)),typeof o=="function"&&(o=await o(a)),Dm(o)?o=await o.instantiator(a):Bm(o)?o=await o.default(a):(Em(o)&&(o=o.data),_m(o)?typeof WebAssembly.instantiateStreaming=="function"?o=await Um(o)(a):o=await Hm(o)(a):Nm(o)?o=await Sr(o)(a):o instanceof WebAssembly.Module?o=await Sr(o)(a):"default"in o&&o.default instanceof WebAssembly.Module&&(o=await Sr(o.default)(a))),"instance"in o&&(o=o.instance),"exports"in o&&(o=o.exports),o})}return no=t(),no}function Sr(e){return t=>WebAssembly.instantiate(e,t)}function Um(e){return t=>WebAssembly.instantiateStreaming(e,t)}function Hm(e){return async t=>{let a=await e.arrayBuffer();return WebAssembly.instantiate(a,t)}}async function Ll(e){return e&&await Om(e),{createScanner(t){return new yr(t.map(a=>typeof a=="string"?a:a.source))},createString(t){return new Cl(t)}}}var lo=ml({langs:ma,themes:xl,engine:()=>Ll(import("../wasm-ISCPKFD2.js"))}),{codeToHtml:qm,codeToHast:Wm,codeToTokens:Gm,codeToTokensBase:jm,codeToTokensWithThemes:zm,getSingletonHighlighter:Vm,getLastGrammarState:$m}=hl(lo,{guessEmbeddedLanguages:il});var Il=new Set(Object.keys(ma)),br=new Map,kr=new Map,Pt=new Map,Xm=(e,t)=>`${e}-${t[0]}-${t[1]}`,Km=(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}`},Qm=(e,t)=>{let a=Xm(e,t);if(br.has(a))return br.get(a);let o=lo({themes:t,langs:[e]});return br.set(a,o),o};function Jm(e={}){var t;let a=(t=e.themes)!=null?t:["github-light","github-dark"];return{name:"shiki",type:"code-highlighter",supportsLanguage(o){return Il.has(o)},getSupportedLanguages(){return Array.from(Il)},getThemes(){return a},highlight({code:o,language:r,themes:n},s){let i=Km(o,r,n);return kr.has(i)?kr.get(i):(s&&(Pt.has(i)||Pt.set(i,new Set),Pt.get(i).add(s)),Qm(r,n).then(l=>{let u=l.getLoadedLanguages().includes(r)?r:"text",d=l.codeToTokens(o,{lang:u,themes:{light:n[0],dark:n[1]}});kr.set(i,d);let c=Pt.get(i);if(c){for(let p of c)p(d);Pt.delete(i)}}).catch(l=>{console.error("[Streamdown Code] Failed to highlight code:",l),Pt.delete(i)}),null)}}}var Sl=Jm();import{memo as th}from"react";f();import{useEffect as Ym,useRef as uo,useState as Zm}from"react";var eh=5,yl=400;function bl(e,t,a={}){let{msPerChar:o=eh}=a,[r,n]=Zm(t?"":e),s=uo(e),i=uo(t?0:e.length),l=uo(0),u=uo(null);return(e.length<i.current||!e.startsWith(r.slice(0,i.current)))&&(i.current=t?0:e.length),s.current=e,Ym(()=>{if(!t){u.current!==null&&(cancelAnimationFrame(u.current),u.current=null),i.current=e.length,n(e);return}if(s.current.length-i.current>yl&&(i.current=s.current.length-yl),u.current!==null)return;let c=p=>{let m=s.current;if(i.current>=m.length){u.current=null;return}l.current===0&&(l.current=p);let h=p-l.current;if(h>=o){let L=Math.min(Math.floor(h/o),m.length-i.current);i.current+=L,n(m.slice(0,i.current)),l.current=p}u.current=requestAnimationFrame(c)};return u.current=requestAnimationFrame(c),()=>{u.current!==null&&(cancelAnimationFrame(u.current),u.current=null)}},[e,t,o]),r}import{jsx as co}from"react/jsx-runtime";var Tr=({className:e,from:t,children:a,...o})=>co("div",{className:A("ww-message ww:group ww:flex ww:w-full",t==="user"?"ww-message-user is-user ww:ml-auto ww:flex-col ww:items-end ww:[max-width:var(--ww-msg-max-width,80%)]":"ww-message-assistant is-assistant ww:flex-col",e),...o,children:co("div",{className:A("ww:flex ww:min-w-0 ww:flex-col ww:gap-2","ww:w-full"),children:a})}),vr=({children:e,className:t,...a})=>co("div",{className:A("ww-bubble ww:flex ww:w-fit ww:min-w-0 ww:max-w-full ww:flex-col ww:gap-2 ww:overflow-hidden","ww:[font-size:var(--ww-font-size,1rem)] ww:[line-height:var(--ww-line-height,1.5)]","ww:group-[.is-user]:ml-auto ww:group-[.is-user]:bg-user-bubble ww:group-[.is-user]:[color:var(--ww-color-user-bubble-text)] ww:group-[.is-user]:[border-radius:var(--ww-msg-radius,8px)] ww:group-[.is-user]:[padding:var(--ww-msg-pad-y,12px)_var(--ww-msg-pad-x,16px)]","ww:group-[.is-assistant]:text-foreground",t),...a,children:e}),ah={cjk:Ko,code:Sl},oh={cjk:Ko},rh={enabled:!1};function nh({className:e,linkSafety:t,isStreaming:a,children:o,...r}){let s=bl(typeof o=="string"?o:"",!!a),i=typeof o=="string"?s:o;return co(Mt,{className:A("ww:size-full ww:[&>*:first-child]:mt-0 ww:[&>*:last-child]:mb-0",e),linkSafety:t??rh,plugins:a?oh:ah,...r,children:i})}var fo=th(nh,(e,t)=>e.children===t.children&&e.isStreaming===t.isStreaming);fo.displayName="MessageResponse";f();import{createContext as sh,useCallback as ih,useContext as Pl,useEffect as lh,useMemo as Ar,useRef as uh,useState as Rr}from"react";import{Fragment as vl,jsx as K,jsxs as ht}from"react/jsx-runtime";function dh(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=[],n=t-2;for(let[s,i]of o){if(n<=8)break;let l=s.length>4?`${s.slice(0,4)}\u2026`:s,u;typeof i=="string"?u=i.length>2?`'${i.slice(0,1)}\u2026`:`'${i}'`:Array.isArray(i)?u=`Array(${i.length})`:typeof i=="object"&&i!==null?u="{\u2026}":u=String(i);let d=`${l}\u2009${u}`;r.push(d),n-=d.length+3}return`{${r.join(", ")}}`}function ch({text:e,className:t}){let{t:a}=V(),[o,r]=Rr(!1),n=uh(null);lh(()=>()=>{n.current&&clearTimeout(n.current)},[]);let s=ih(async i=>{i.stopPropagation();try{await navigator.clipboard.writeText(e),r(!0),n.current&&clearTimeout(n.current),n.current=setTimeout(()=>r(!1),2e3)}catch{}},[e]);return K(Ge,{variant:"ghost",size:"sm",onClick:s,className:A("ww:h-auto ww:gap-1 ww:px-1.5 ww:py-0.5 ww:text-xs ww:text-muted-foreground ww:hover:text-foreground",t),children:o?ht(vl,{children:[K(Wt,{className:"ww:size-3.5"}),K("span",{children:a.tool.copied})]}):ht(vl,{children:[K(jt,{className:"ww:size-3.5"}),K("span",{children:a.tool.copy})]})})}function Al({data:e,label:t,className:a,...o}){let[r,n]=Rr(!1),s=Ar(()=>JSON.stringify(e,null,2),[e]),i=dh(e);return ht("div",{className:A("ww:rounded-lg ww:bg-tool-card",a),...o,children:[ht("div",{className:"ww:flex ww:items-center ww:justify-between ww:px-3 ww:pt-2.5 ww:pb-1.5",children:[K("span",{className:"ww:text-xs ww:font-medium ww:text-muted-foreground",children:t}),K(ch,{text:s})]}),ht("button",{type:"button",onClick:()=>n(l=>!l),className:"ww:flex ww:w-full ww:items-start ww:gap-2 ww:px-3 ww:pb-3 ww:text-left",children:[K(Gt,{className:A("ww:mt-0.5 ww:size-3.5 ww:shrink-0 ww:text-muted-foreground ww:transition-transform ww:duration-150",r&&"ww:rotate-90")}),r?K("pre",{className:"ww:overflow-x-auto ww:text-xs ww:font-mono ww:text-foreground ww:whitespace-pre-wrap ww:break-all",children:K("code",{children:s})}):K("span",{className:"ww:truncate ww:text-xs ww:font-mono ww:text-foreground/80",children:i})]})]})}var Mr=sh({open:!1,toggle:()=>{}});function Rl({className:e,defaultOpen:t=!1,children:a,...o}){let[r,n]=Rr(t);return K(Mr.Provider,{value:{open:r,toggle:()=>n(s=>!s)},children:K("div",{className:A("ww:mb-4 ww:w-full",e),"data-state":r?"open":"closed",style:{animation:"ww-fade-in 0.2s ease-out"},...o,children:a})})}function Ml({className:e,title:t,state:a,...o}){let{open:r,toggle:n}=Pl(Mr),s=a==="input-available"||a==="input-streaming",i=t??"";return ht("button",{type:"button",onClick:n,className:A("ww:flex ww:w-full ww:items-center ww:gap-2 ww:text-sm ww:text-muted-foreground ww:transition-colors ww:hover:text-foreground",e),"aria-expanded":r,...o,children:[K(it,{className:"ww:size-4 ww:shrink-0"}),K("span",{className:"ww:truncate",children:s?K(Ne,{duration:1.6,children:i}):i}),K(Je,{className:A("ww:size-4 ww:shrink-0 ww:transition-transform ww:duration-200",r&&"ww:rotate-180")})]})}function Fl({className:e,title:t,state:a,...o}){let r=a==="input-available"||a==="input-streaming",n=t??"";return K("div",{className:A("ww:mb-4 ww:flex ww:items-center ww:gap-2 ww:text-sm ww:text-muted-foreground",e),style:{animation:"ww-fade-in 0.2s ease-out"},...o,children:K("span",{className:"ww:truncate",children:r?K(Ne,{duration:1.6,children:n}):n})})}function Dl({className:e,children:t,...a}){let{open:o}=Pl(Mr);return K("div",{className:A("ww:grid ww:transition-[grid-template-rows,opacity] ww:duration-200 ww:ease-out",o?"ww:grid-rows-[1fr] ww:opacity-100":"ww:grid-rows-[0fr] ww:opacity-0"),children:K("div",{className:"ww:min-h-0 ww:overflow-hidden",children:K("div",{className:A("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 Fr({className:e,input:t,debug:a,...o}){let{t:r}=V(),n=Ar(()=>{if(!a&&typeof t=="object"&&t!==null&&!Array.isArray(t)){let{_meta:s,...i}=t;return i}return t},[t,a]);return K(Al,{data:n,label:r.tool.request,className:e,...o})}function Pr(e){if(!(typeof e!="object"||e===null))return e}function Bl(e){return Pr(e?.ui)}function El(e){return Pr(Pr(e)?._meta)}function kl(e){if(!e)return;let t=Bl(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 Tl(e){return Bl(e)?.autoHeight===!0}function ga(e,t,a){if(e){let o=kl(a?.[e]?._meta);if(o)return o}return kl(El(t))}function _l(e,t,a){return e&&Tl(a?.[e]?._meta)?!0:Tl(El(t))}function Dr({className:e,output:t,errorText:a,debug:o,...r}){let{t:n}=V(),s=Ar(()=>{if(!o&&typeof t=="object"&&t!==null&&!Array.isArray(t)){let{_meta:i,...l}=t;return l}return t},[t,o]);return t||a?a?ht("div",{className:A("ww:space-y-2",e),...r,children:[K("h4",{className:"ww:text-xs ww:font-medium ww:uppercase ww:tracking-wide ww:text-muted-foreground",children:n.tool.error}),K("div",{className:"ww:rounded-lg ww:bg-destructive/10 ww:p-3 ww:text-xs ww:text-destructive",children:a})]}):K(Al,{data:s,label:n.tool.response,className:e,...r}):null}f();import{jsx as Nl,jsxs as fh}from"react/jsx-runtime";function Ol(e){return e.type==="text"||e.type==="reasoning"||e.type==="file"||"toolCallId"in e}function Ul(e){return e.parts.some(Ol)}function Hl(e,t,a){if(t!=="submitted"&&t!=="streaming")return!1;let o=e[e.length-1];return!o||o.role!=="assistant"?!0:!o.parts.some(n=>!(!Ol(n)||a?.ignoreToolParts&&"toolCallId"in n||a?.ignoreReasoningParts&&n.type==="reasoning"))}function ql({className:e,...t}){let{t:a}=V();return fh("div",{"aria-live":"polite",className:A("ww:mb-4 ww:flex ww:w-full ww:items-center ww:gap-2 ww:text-sm ww:text-muted-foreground",e),style:{animation:"ww-fade-in 0.2s ease-out"},...t,children:[Nl(Qt,{className:"ww:size-4 ww:shrink-0"}),Nl(Ne,{duration:1.6,children:a.workingIndicator.default})]})}f();import{useCallback as ph,useEffect as Br,useMemo as mh,useRef as ye,useState as Wl}from"react";import{jsx as kh}from"react/jsx-runtime";var hh="/api/mcp/resource",gh=500,wh=0,xh=16,Ch="2026-01-26",Lh=300,Ih=3e3,Sh=3;function yh(e){if(typeof e!="string")return;let t=e.trim();return t.length>0?t:void 0}function bh(e,t,a){return ga(e,t,a)?!1:t._meta?.["waniwani/autoInjectResultText"]!==!1}function Gl({resourceUri:e,toolInput:t,toolResult:a,resourceEndpoint:o=hh,chatSessionId:r,isDark:n=!1,className:s,autoHeight:i=!1,onOpenLink:l,onFollowUp:u,onCallTool:d,onDisplayModeChange:c,isFullscreen:p=!1,toolDefinitions:m}){let h=ye(null),L=ye(t),C=ye(a),S=ye({width:0,height:0}),x=ye(null),I=ye(!1),b=ye(0),k=ye("inline"),[P,F]=Wl(wh),[R,_]=Wl(void 0),M=ye(l),E=ye(u),v=ye(d),D=ye(c),H=ye(r),T=ye(m);L.current=t,C.current=a,M.current=l,E.current=u,v.current=d,D.current=c,H.current=r,T.current=m;let N=ph(W=>i?Math.max(W+xh,0):Math.min(Math.max(W,50),gh),[i]),U=mh(()=>{let W=o.includes("?")?"&":"?";return`${o}${W}uri=${encodeURIComponent(e)}`},[o,e]),Be=ye(n);Be.current=n;let be=ye(p);return Br(()=>{be.current=p,S.current.height=-1,x.current&&(x.current.cancel(),x.current=null)},[p]),Br(()=>{if(!I.current)return;let W=h.current;W?.contentWindow&&W.contentWindow.postMessage({jsonrpc:"2.0",method:"ui/notifications/host-context-changed",params:{theme:n?"dark":"light"}},"*")},[n]),Br(()=>{let W=h.current;if(!W)return;let ke=!1,ue=!1,Ae=null,ge=null,Q=setTimeout(()=>{if(ke||ue||b.current>=Sh)return;b.current+=1;let Ie=new URL(W.src);Ie.searchParams.set("_retry",String(b.current)),W.src=Ie.toString()},Ih),J=Ie=>{W.contentWindow?.postMessage(Ie,"*")},Ue=Ie=>{if(ke||Ie.source!==W.contentWindow)return;let te=Ie.data;if(!te||typeof te!="object"||te.jsonrpc!=="2.0")return;let fe=te.method,z=te.id;if(fe==="ui/initialize"&&z!=null){ue=!0,clearTimeout(Q),J({jsonrpc:"2.0",id:z,result:{protocolVersion:te.params?.protocolVersion??Ch,hostInfo:{name:"Waniwani Chat",version:"1.0.0"},hostCapabilities:{openLinks:{},message:{text:{}},tools:{},updateModelContext:{text:{},structuredContent:{}}},hostContext:{theme:Be.current?"dark":"light",displayMode:k.current}}});return}if(fe==="ui/notifications/initialized"){I.current=!0;let G=L.current,X=C.current,ae=X._meta&&typeof X._meta=="object"?X._meta:null,pe=yh(H.current),se=ae&&typeof ae.waniwani=="object"&&ae.waniwani!==null?ae.waniwani:null,Te=se||pe?{...se??{},...pe?{sessionId:pe}:{}}:void 0,ve=ae||Te?{...ae??{},...Te?{waniwani:Te}:{}}:void 0;J({jsonrpc:"2.0",method:"ui/notifications/tool-input",params:{arguments:G}});let He=X.content??[{type:"text",text:JSON.stringify(X)}];J({jsonrpc:"2.0",method:"ui/notifications/tool-result",params:{content:He,structuredContent:X.structuredContent,_meta:ve,meta:ve}});return}if(fe==="ui/notifications/size-changed"){let G=te.params,X=typeof G?.height=="number"?G.height:void 0,ae=typeof G?.width=="number"?G.width:void 0,pe=S.current,se=X!==void 0&&X!==pe.height,Te=ae!==void 0&&ae!==pe.width;if(!se&&!Te)return;if(se&&X!==void 0){if(pe.height=X,be.current)return;let ve=N(X),He=W.getBoundingClientRect().height;if(x.current&&(x.current.cancel(),x.current=null),F(ve),W.animate&&Math.abs(He-ve)>2){let xt=W.animate([{height:`${He}px`},{height:`${ve}px`}],{duration:Lh,easing:"ease-out",fill:"forwards"});x.current=xt,xt.onfinish=()=>{x.current===xt&&(xt.cancel(),x.current=null)}}}Te&&i&&ae!==void 0&&(pe.width=ae,_(ae));return}if(fe==="ui/open-link"&&z!=null){let G=te.params?.url;typeof G=="string"&&(M.current?M.current(G):window.open(G,"_blank","noopener,noreferrer")),J({jsonrpc:"2.0",id:z,result:{}});return}if(fe==="ui/message"&&z!=null){if(E.current&&te.params){let G=te.params,X=Ae;if(Ae=null,ge){clearTimeout(ge.timer);let ae=ge.text;ge=null;let pe=(G.content??[]).map(se=>se.text??"").join("").trim();G={...G,content:[{type:"text",text:`${pe}
|
|
80
80
|
|
|
81
|
-
${G}`}]}}_.current({...Q,...te?{modelContext:te}:{}})}z({jsonrpc:"2.0",id:se,result:{}});return}if(ie==="ui/update-model-context"&&se!=null){Oe=Zr(Oe,ee.params),z({jsonrpc:"2.0",id:se,result:{}});return}if(ie==="tools/call"&&se!=null){let Q=v.current;if(!Q){z({jsonrpc:"2.0",id:se,error:{code:-32601,message:"tools/call not supported"}});return}let te=ee.params?.name;Q({name:te,arguments:ee.params?.arguments??{}}).then(G=>{z({jsonrpc:"2.0",id:se,result:G});let ae=G.content?.map(ce=>ce.text??"").join("").trim();ae&&wh(te,G,y.current)&&(ye&&clearTimeout(ye.timer),ye={text:ae,timer:setTimeout(()=>{if(me)return;let ce=Oe;Oe=null,ye=null,_.current?.({role:"user",content:[{type:"text",text:ae}],...ce?{modelContext:ce}:{}})},500)})}).catch(G=>{let ae=G instanceof Error?G.message:"Tool call failed";z({jsonrpc:"2.0",id:se,error:{code:-32e3,message:ae}})});return}if(ie==="ui/request-display-mode"&&se!=null){let Q=ee.params?.mode,te=Q==="fullscreen"||Q==="inline"||Q==="pip"?Q:"inline";T.current=te,z({jsonrpc:"2.0",id:se,result:{mode:te}}),z({jsonrpc:"2.0",method:"ui/notifications/host-context-changed",params:{displayMode:te}}),D.current?.(te);return}if(ie==="ui/resource-teardown"&&se!=null){z({jsonrpc:"2.0",id:se,result:{}});return}ie==="ping"&&se!=null&&z({jsonrpc:"2.0",id:se,result:{}})};return window.addEventListener("message",xe),()=>{me=!0,clearTimeout(X),ye&&clearTimeout(ye.timer),window.removeEventListener("message",xe)}},[i,N]),xh("iframe",{ref:h,src:H,sandbox:"allow-scripts allow-forms allow-same-origin allow-popups allow-popups-to-escape-sandbox",className:R(!p&&"ww:rounded-md ww:border ww:border-border",s),style:{height:p?"100%":P,minWidth:p||!A?void 0:`min(${A}px, 100%)`,width:"100%",border:"none",colorScheme:n?"dark":"auto"},title:"MCP App"})}f();import{jsx as wa,jsxs as Ch}from"react/jsx-runtime";function Gl({icon:e,title:t,description:a,suggestions:o,onSuggestionSelect:r}){return Ch("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&&wa("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}),wa("h2",{className:"ww:text-lg ww:font-semibold ww:text-foreground",children:t}),a&&wa("p",{className:"ww:mt-1 ww:text-sm ww:text-muted-foreground ww:max-w-sm",children:a}),o&&o.length>0&&wa("div",{className:"ww:mt-6 ww:w-full ww:max-w-md ww:flex ww:flex-col ww:gap-2",children:o.map((n,s)=>wa("button",{type:"button",onClick:()=>r?.(n),className:R("ww:w-full ww:text-left ww:rounded-xl ww:border ww:border-border ww:bg-background ww:px-4 ww:py-3 ww:text-sm","ww:text-foreground ww:hover:bg-accent ww:hover:border-primary/30","ww:transition-all ww:duration-200 ww:ease-out ww:cursor-pointer","ww:animate-[ww-fade-in_0.2s_ease-out_both]"),style:{animationDelay:`${s*50}ms`},children:n},n))})]})}f();import{Component as Lh}from"react";import{jsx as Br,jsxs as Sh}from"react/jsx-runtime";function Ih({onRetry:e}){let{t}=V();return Sh("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:[Br("span",{children:t.widgetErrorBoundary.failedToLoad}),Br("button",{type:"button",onClick:e,className:"ww:text-xs ww:font-medium ww:text-primary ww:hover:underline",children:t.widgetErrorBoundary.retry})]})}var po=class extends Lh{state={hasError:!1};static getDerivedStateFromError(){return{hasError:!0}}componentDidCatch(t){console.warn("[Waniwani] Widget failed to render:",t.message)}render(){return this.state.hasError?Br(Ih,{onRetry:()=>this.setState({hasError:!1})}):this.props.children}};import{Fragment as yh,jsx as Z,jsxs as ot}from"react/jsx-runtime";function Er(e){return e?e.replace(/[-_]/g," ").replace(/^\w/,t=>t.toUpperCase()):"Tool"}function jl(e){return e&&/search|find|lookup|query|web|browse|google/i.test(e)?Vt:st}function zl({messages:e,status:t,welcomeMessage:a,welcome:o,onSuggestionSelect:r,resourceEndpoint:n,chatSessionId:s,isDark:i,onFollowUp:l,onCallTool:u,onWidgetDisplayModeChange:c,fullscreenToolCallId:d,debug:p,showToolCalls:m=!0,toolDefinitions:h,messageClassNames:I}){let{t:x}=V(),S=e[e.length-1],L=e.length>0,C=d!=null,k=!C&&Ul(e,t,{ignoreToolParts:m===!1,ignoreReasoningParts:m===!1});return ot(yh,{children:[!C&&(!L&&o?Z(Gl,{...o,onSuggestionSelect:r}):a&&Z(kr,{from:"assistant",children:Z(Tr,{children:Z(fo,{children:a})})})),e.map(T=>{let P=T.parts.filter(y=>y.type==="text"),M=T.parts.filter(y=>y.type==="reasoning"),A=T.parts.filter(y=>y.type==="file"),E=T.parts.filter(y=>"toolCallId"in y),F=T.parts.filter(y=>y.type==="reasoning"||"toolCallId"in y),_=T===S&&T.role==="assistant",v=P.length>0,D=C?E.some(y=>y.toolCallId===d):!1,q=m!==!1&&!D&&F.length>=2;return C&&!D?Z("div",{style:{display:"none"}},T.id):T.role==="assistant"&&!Ol(T)?Z("div",{style:{display:"none"}},T.id):m===!1&&T.role==="assistant"&&!v&&A.length===0&&E.every(y=>{let N="output"in y?y.output:void 0;return N===void 0||!n||!ga(y.toolName,N,h)})?Z("div",{style:{display:"none"}},T.id):ot(kr,{from:T.role,className:I?.message,children:[m!==!1&&!D&&!q&&M.map((y,N)=>ot(ea,{isStreaming:y.state==="streaming",children:[Z(ta,{}),Z(aa,{children:y.text})]},`reasoning-${T.id}-${N}`)),q&&(()=>{let y=F[F.length-1],N=y.type==="reasoning"?{icon:Ve,label:x.reasoning.thinking}:{icon:jl(y.toolName),label:y.title??Er(y.toolName)};return ot(qs,{isWorking:_&&(t==="streaming"||t==="submitted"),activeStep:N,children:[Z(Ws,{workingLabel:x.chainOfThought.working,label:x.chainOfThought.done}),Z(Gs,{children:F.map((H,de)=>{let Te=de===F.length-1;if(H.type==="reasoning")return Z(zs,{isStreaming:H.state==="streaming",isLast:Te,children:H.text},`reasoning-${T.id}-${de}`);let W=H.title??Er(H.toolName),me=jl(H.toolName);if(m==="titles-only")return Z(zo,{icon:me,title:W,state:H.state,isLast:Te},H.toolCallId);let ve="output"in H?H.output:void 0;return ot(zo,{icon:me,title:W,state:H.state,isLast:Te,children:[Z(Mr,{input:H.input,debug:p}),ve!==void 0&&Z(Fr,{output:ve,errorText:"errorText"in H?H.errorText:void 0,debug:p})]},H.toolCallId)})})]})})(),m!==!1&&!D&&!q&&E.length===1&&(()=>{let y=E[0],N=y.title??Er(y.toolName);if(m==="titles-only")return Z(Ml,{title:N,state:y.state});let H="output"in y?y.output:void 0;return ot(Al,{children:[Z(Rl,{title:N,state:y.state}),ot(Fl,{children:[Z(Mr,{input:y.input,debug:p}),H!==void 0&&Z(Fr,{output:H,errorText:"errorText"in y?y.errorText:void 0,debug:p})]})]})})(),E.map(y=>{let N="output"in y?y.output:void 0,H=ga(y.toolName,N,h),de=El(y.toolName,N,h),Te=y.toolCallId===d;return H&&n&&N!==void 0?Z("div",{style:Te?{position:"absolute",inset:0,zIndex:10,display:"flex",flexDirection:"column",overflow:"hidden",background:"var(--ww-color-background)"}:void 0,children:H&&n&&N!==void 0&&Z(po,{children:Z(Wl,{isFullscreen:Te,resourceUri:H,toolInput:y.input??{},toolResult:{content:N.content,structuredContent:N.structuredContent,_meta:N._meta},resourceEndpoint:n,chatSessionId:s,isDark:i,autoHeight:de,toolDefinitions:h,onFollowUp:l,onCallTool:u,onDisplayModeChange:c?W=>c(W,{toolCallId:y.toolCallId,resourceUri:H,toolInput:y.input??{},toolResult:{content:N.content,structuredContent:N.structuredContent,_meta:N._meta},autoHeight:de}):void 0})})},y.toolCallId):null}),!D&&Z("div",{children:ot(Tr,{className:R(T.role==="user"?I?.userBubble:I?.assistantBubble),children:[A.length>0&&Z(Es,{files:A}),v?P.map((y,N)=>{let H=_&&t==="streaming"&&N===P.length-1;return Z(fo,{isStreaming:H,children:y.type==="text"?y.text:""},`${T.id}-${N}`)}):null]})})]},T.id)}),k&&Z(Hl,{})]})}f();import{jsx as Vl,jsxs as Th}from"react/jsx-runtime";var bh="https://app.waniwani.ai/assets/waniwani-logo.svg",kh="https://waniwani.ai";function $l(){let{t:e}=V();return Th("a",{href:kh,target:"_blank",rel:"noopener noreferrer",className:"ww:flex ww:items-center ww:gap-1.5 ww:whitespace-nowrap ww:text-[10px] ww:sm:text-[11px] ww:text-muted-foreground ww:opacity-70 hover:ww:opacity-100 ww:transition-opacity",children:[Vl("span",{children:e.poweredBy.label}),Vl("img",{src:bh,alt:"Waniwani",width:72,height:10,"data-waniwani-logo":"",className:"ww:h-2.5 ww:w-auto"})]})}f();import{jsx as mo}from"react/jsx-runtime";function Xl({suggestions:e,isLoading:t,onSelect:a,className:o,...r}){return e.length===0&&!t?null:mo("div",{className:R("ww:px-4 ww:py-2",o),...r,children:mo("div",{className:"ww:mx-auto ww:w-full ww:max-w-3xl ww:flex ww:flex-wrap ww:gap-2",children:t?[0,1,2].map(n=>mo("div",{className:"ww:h-8 ww:rounded-full ww:bg-accent ww:animate-pulse",style:{width:`${60+n*20}px`}},n)):e.map((n,s)=>mo("button",{type:"button",onClick:()=>a(n),className:R("ww:rounded-full ww:border ww:border-border ww:bg-background ww:px-3.5 ww:py-1.5 ww:text-sm","ww:text-foreground ww:hover:bg-accent ww:hover:border-primary/30","ww:transition-all ww:duration-200 ww:ease-out ww:cursor-pointer","ww:animate-[ww-fade-in_0.2s_ease-out_both]"),style:{animationDelay:`${s*50}ms`},children:n},n))})})}f();import{useEffect as vh,useRef as Ph,useState as Ah}from"react";import{jsx as ne,jsxs as ht}from"react/jsx-runtime";var Kl=20;function Rh({label:e}){return ht("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",role:"img","aria-label":e,children:[ne("title",{children:e}),ne("line",{x1:"12",y1:"5",x2:"12",y2:"19"}),ne("line",{x1:"5",y1:"12",x2:"19",y2:"12"})]})}function Mh({label:e}){return ht("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",role:"img","aria-label":e,children:[ne("title",{children:e}),ne("path",{d:"M3 12a9 9 0 1 0 3-6.7"}),ne("polyline",{points:"3 4 3 9 8 9"}),ne("line",{x1:"12",y1:"7",x2:"12",y2:"12"}),ne("line",{x1:"12",y1:"12",x2:"15",y2:"14"})]})}function Fh({label:e}){return ht("svg",{xmlns:"http://www.w3.org/2000/svg",width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",role:"img","aria-label":e,children:[ne("title",{children:e}),ne("polyline",{points:"3 6 5 6 21 6"}),ne("path",{d:"M19 6l-2 14a2 2 0 0 1-2 2H9a2 2 0 0 1-2-2L5 6"}),ne("path",{d:"M10 11v6"}),ne("path",{d:"M14 11v6"})]})}function Ql({threads:e,activeThreadId:t,onNewThread:a,onSelectThread:o,onDeleteThread:r}){let{locale:n,t:s}=V(),[i,l]=Ah(!1),u=Ph(null);vh(()=>{if(!i)return;let p=m=>{let h=u.current;h&&(m.composedPath().includes(h)||l(!1))};return document.addEventListener("mousedown",p),()=>document.removeEventListener("mousedown",p)},[i]);let c=e.slice(0,Kl),d=Math.max(0,e.length-Kl);return ht("div",{ref:u,className:"ww:relative ww:flex ww:items-center ww:gap-1",children:[ne("button",{type:"button",onClick:a,title:s.threadMenu.newChat,"aria-label":s.threadMenu.newChat,className:"ww:p-1.5 ww:rounded-md ww:text-muted-foreground hover:ww:text-foreground hover:ww:bg-foreground/5 ww:transition-colors ww:cursor-pointer",children:ne(Rh,{label:s.threadMenu.newChat})}),ne("button",{type:"button",onClick:()=>l(p=>!p),title:s.threadMenu.threadHistory,"aria-label":s.threadMenu.threadHistory,"aria-expanded":i,className:"ww:p-1.5 ww:rounded-md ww:text-muted-foreground hover:ww:text-foreground hover:ww:bg-foreground/5 ww:transition-colors ww:cursor-pointer",children:ne(Mh,{label:s.threadMenu.threadHistory})}),i&&ht("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:[c.length===0&&ne("div",{className:"ww:px-3 ww:py-3 ww:text-xs ww:text-muted-foreground",children:s.threadMenu.noPreviousChats}),c.map(p=>{let m=p.threadId===t,h=Date.parse(p.updatedAt);return ht("div",{className:`ww:flex ww:items-center ww:gap-2 ww:px-3 ww:py-2 ww:text-xs hover:ww:bg-foreground/5 ${m?"ww:bg-foreground/5":""}`,children:[ht("button",{type:"button",onClick:()=>{o(p.threadId),l(!1)},className:"ww:flex-1 ww:min-w-0 ww:text-left ww:cursor-pointer",children:[ne("div",{className:"ww:truncate ww:text-foreground ww:font-medium",children:p.title}),ne("div",{className:"ww:text-[10px] ww:text-muted-foreground",children:Number.isNaN(h)?"":Oo(h,n)})]}),ne("button",{type:"button",onClick:I=>{I.stopPropagation(),r(p.threadId)},title:s.threadMenu.deleteThread,"aria-label":s.threadMenu.deleteThread,className:"ww:p-1 ww:rounded ww:text-muted-foreground hover:ww:text-foreground hover:ww:bg-foreground/10 ww:transition-colors ww:cursor-pointer",children:ne(Fh,{label:s.threadMenu.deleteThread})})]},p.threadId)}),d>0&&ne("div",{className:"ww:px-3 ww:py-2 ww:text-[10px] ww:text-muted-foreground ww:border-t ww:border-border",children:s.threadMenu.hiddenThreads(d)})]})]})}f();import{useCallback as Dh,useRef as Bh}from"react";function Jl(e){let t=Bh(e);return t.current=e,Dh(async a=>{let{api:o,headers:r,onCallTool:n,sessionId:s}=t.current;if(n)return n(a);let i=`${o??"/api/waniwani"}/tool`,l=typeof s=="string"&&s.trim().length>0?s.trim():void 0,u=await fetch(i,{method:"POST",headers:{"Content-Type":"application/json",...l?{"X-Session-Id":l}:{},...r},body:JSON.stringify(a)});if(!u.ok)throw new Error(`Tool call failed: ${u.status} ${u.statusText}`);return u.json()},[])}f();import{useChat as Qh}from"@ai-sdk/react";import{useCallback as Ie,useEffect as Be,useRef as pe,useState as gt}from"react";f();function At(e,t,a){let[o,r=""]=e.split("?"),n=o.replace(/\/$/,""),s=new URLSearchParams(r);if(a)for(let[l,u]of Object.entries(a))s.set(l,u);let i=s.toString();return`${n}${t}${i?`?${i}`:""}`}f();import{DefaultChatTransport as Eh,uiMessageChunkSchema as _h}from"ai";function Nh(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 s=r.filter(i=>i.code==="unrecognized_keys").flatMap(i=>i.keys??[]);if(s.length>0)return s}return null}var ho=class extends Eh{processResponseStream(t){let a="",o=_h(),r=o.validate?.bind(o);return t.pipeThrough(new TextDecoderStream).pipeThrough(new TransformStream({async transform(n,s){a+=n;let i=a.split(`
|
|
82
|
-
`);a=i.pop()??"";for(let l of i){let u=l.trim();if(!u.startsWith("data:"))continue;let c=u.slice(5).trim();if(c!=="[DONE]")try{let d=JSON.parse(c);if(!r){s.enqueue(d);continue}let p=await r(d);if(p.success){s.enqueue(p.value);continue}let m=Nh(p.error);if(m?.length){let h={...d};for(let x of m)delete h[x];let I=await r(h);I.success&&s.enqueue(I.value)}}catch{}}}}))}};f();f();var Oh="waniwani-memory";var Me="threads",go="by_memoryUserId",Uh="by_updatedAt";var Zl="memoryUserId",Yl="waniwani-memory-user-id",_r=null;function Nr(){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 Hh(e,t){if(t<1&&(e.objectStoreNames.contains("ids")||e.createObjectStore("ids")),t<2&&!e.objectStoreNames.contains(Me)){let a=e.createObjectStore(Me,{keyPath:"threadId"});a.createIndex(go,"memoryUserId",{unique:!1}),a.createIndex(Uh,"updatedAt",{unique:!1})}}async function Or(){return new Promise((e,t)=>{let a=indexedDB.open(Oh,2);a.onupgradeneeded=o=>{Hh(a.result,o.oldVersion)},a.onsuccess=()=>e(a.result),a.onerror=()=>t(a.error)})}async function qh(){return Or()}async function Wh(e){return new Promise((t,a)=>{let n=e.transaction("ids","readonly").objectStore("ids").get(Zl);n.onsuccess=()=>t(typeof n.result=="string"?n.result:null),n.onerror=()=>a(n.error)})}async function Gh(e,t){return new Promise((a,o)=>{let s=e.transaction("ids","readwrite").objectStore("ids").put(t,Zl);s.onsuccess=()=>a(),s.onerror=()=>o(s.error)})}async function jh(){if(typeof indexedDB>"u")return null;try{let e=await qh();try{let t=await Wh(e);if(t)return t;let a=Nr();return await Gh(e,a),a}finally{e.close()}}catch{return null}}function zh(){try{let e=localStorage.getItem(Yl);if(e)return e;let t=Nr();return localStorage.setItem(Yl,t),t}catch{return null}}async function eu(){let e=await jh();if(e)return e;let t=zh();return t||(_r||(_r=Nr()),_r)}var tu=50,au=1e3;function wo(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 xo(e){if(typeof indexedDB>"u")return null;let t=null;try{return t=await Or(),await e(t)}catch{return null}finally{try{t?.close()}catch{}}}function Ur(e){return new Promise((t,a)=>{e.onsuccess=()=>t(e.result),e.onerror=()=>a(e.error)})}async function Hr(e){return await xo(async a=>{let n=a.transaction(Me,"readonly").objectStore(Me).index(go),i=(await Ur(n.getAll(e))??[]).filter(wo);return i.sort((l,u)=>l.updatedAt<u.updatedAt?1:-1),i})??[]}async function Co(e){return await xo(async a=>{let r=a.transaction(Me,"readonly").objectStore(Me),n=await Ur(r.get(e));return wo(n)?n:null})??null}async function qr(e){if(!wo(e))return;let t=e.messages.length>au?{...e,messages:e.messages.slice(e.messages.length-au)}:e;await xo(async a=>{await new Promise((l,u)=>{let c=a.transaction(Me,"readwrite");c.oncomplete=()=>l(),c.onerror=()=>u(c.error),c.onabort=()=>u(c.error),c.objectStore(Me).put(t)});let o=a.transaction(Me,"readwrite"),r=o.objectStore(Me),n=r.index(go),i=(await Ur(n.getAll(t.memoryUserId))??[]).filter(wo);if(i.length>tu){i.sort((u,c)=>u.updatedAt<c.updatedAt?-1:1);let l=i.slice(0,i.length-tu);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 ou(e){await xo(async t=>(await new Promise((a,o)=>{let r=t.transaction(Me,"readwrite");r.oncomplete=()=>a(),r.onerror=()=>o(r.error),r.onabort=()=>o(r.error),r.objectStore(Me).delete(e)}),null))}async function Wr(e){return(await Hr(e))[0]?.threadId??null}function ru(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`}f();var nu="waniwani-visitor-id";function su(e,t){return e.match(t)?.[1]??null}function Vh(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=su(e,o);if(r)return{name:a,version:r}}return null}function $h(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=su(e,o);if(r)return{name:a,version:r.replace(/_/g,".")};if(a==="Linux"&&o.test(e))return{name:a,version:""}}return null}function Xh(e){return typeof navigator<"u"&&"userAgentData"in navigator&&navigator.userAgentData?.mobile?"mobile":/iPad|tablet|PlayBook/i.test(e)?"tablet":/Mobi|Android.*Mobile|iPhone|iPod/i.test(e)?"mobile":"desktop"}function Kh(){try{if(typeof crypto<"u"){if(typeof crypto.randomUUID=="function")return crypto.randomUUID();if(typeof crypto.getRandomValues=="function"){let e=crypto.getRandomValues(new Uint8Array(16));e[6]=e[6]&15|64,e[8]=e[8]&63|128;let t=Array.from(e,a=>a.toString(16).padStart(2,"0")).join("");return`${t.slice(0,8)}-${t.slice(8,12)}-${t.slice(12,16)}-${t.slice(16,20)}-${t.slice(20)}`}}}catch{}return`v-${Date.now().toString(36)}-${Math.random().toString(36).slice(2,10)}`}function Gr(){try{let t=localStorage.getItem(nu);if(t)return t}catch{}let e=Kh();try{localStorage.setItem(nu,e)}catch{}return e}async function jr(){let e=navigator.userAgent,t=Gr(),a=await eu();return{userAgent:e,browser:Vh(e),os:$h(e),deviceType:Xh(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 Jh="x-session-id",Yh=250;function iu(){return typeof crypto<"u"&&typeof crypto.randomUUID=="function"?crypto.randomUUID():Yt()}function Lo(){return new Date().toISOString()}function lu(e){if(typeof e!="string")return;let t=e.trim();return t.length>0?t:void 0}async function Zh(e,t){let a=At(e,"/tools"),o=await fetch(a,{method:"GET",headers:t?{...t}:void 0});if(!o.ok)throw new Error(`[Waniwani] Failed to fetch /tools: ${o.status} ${o.statusText}`);let r=await o.json();if(!r||!Array.isArray(r.tools))return{};let n={};for(let s of r.tools)s&&typeof s.name=="string"&&(n[s.name]=s);return n}function uu(e){let{api:t="/api/waniwani",headers:a,body:o,onMessageSent:r,onResponseReceived:n,enableThreadHistory:s=!1,activeThreadId:i,onThreadChange:l}=e,u=pe(a),c=pe(o),d=pe(s);Be(()=>{d.current=s},[s]);let p=pe(void 0),m=pe(null),[h,I]=gt(void 0),x=pe(h),[S,L]=gt(i),C=pe(S),[k,T]=gt([]),[P,M]=gt(!s),A=pe(void 0),E=pe(void 0),F=pe(void 0),_=pe(void 0),v=pe(0),D=pe(l);Be(()=>{D.current=l},[l]);let q=Ie(b=>{C.current=b,L(b),b&&D.current?.(b)},[]),y=Ie(async()=>{if(!s)return;let b=m.current?.memoryUserId;if(!b)return;let O=await Hr(b);T(O)},[s]),N=Ie(()=>x.current,[]),H=Ie(b=>{let O=lu(b);O&&x.current!==O&&(x.current=O,I(O))},[]),de=Ie(()=>{x.current=void 0,I(void 0)},[]);Be(()=>{u.current=a},[a]),Be(()=>{c.current=o},[o]),Be(()=>{let b=!1,O=v.current;return(async()=>{try{let oe=await jr();if(b)return;m.current=oe}catch{}if(!s)return;let U=m.current?.memoryUserId;if(!U){M(!0);return}try{let oe=i??await Wr(U);if(b||O!==v.current)return;if(oe){let ge=await Co(oe);if(b||O!==v.current)return;ge&&ge.memoryUserId===U&&(C.current=ge.threadId,L(ge.threadId),A.current=ge.createdAt,E.current=ge.title,ge.sessionId&&(x.current=ge.sessionId,I(ge.sessionId)),ee(ge.messages))}await y()}finally{b||M(!0)}})(),()=>{b=!0}},[]);let Te=pe(new ho({api:t,headers:()=>({...u.current}),body:()=>{let b={...c.current??{}},O=Object.hasOwn(b,"sessionId"),U=lu(b.sessionId);if(U)H(U),b.sessionId=U;else if(O)de(),delete b.sessionId;else{let So=N();So&&(b.sessionId=So)}Ct(p.current)&&(b.modelContext=p.current);let oe=m.current,ge=oe?.visitorId??Gr();oe&&(b.visitorContext={timezone:oe.timezone,language:oe.language,languages:oe.languages,deviceType:oe.deviceType,referrer:oe.referrer,visitorId:ge});let le=typeof b.visitor=="object"&&b.visitor!==null?b.visitor:{},Pu=typeof le.client=="object"&&le.client!==null?le.client:{};b.visitor={...le,id:ge,client:{...Pu,...oe&&{memoryUserId:oe.memoryUserId}}};let Qr=typeof b.extra=="object"&&b.extra!==null&&!Array.isArray(b.extra)?b.extra:void 0,Jr=m.current?.memoryUserId,Yr=m.current?.language,Ia={};if(Jr&&(Ia.memoryUserId=Jr),Yr&&(Ia.locale=Yr),(Object.keys(Ia).length>0||Qr)&&(b.extra={...Ia,...Qr??{}}),d.current)if(Object.hasOwn(b,"threadId"))typeof b.threadId=="string"&&(C.current=b.threadId);else{let Sa=C.current;Sa||(Sa=iu(),A.current=Lo(),E.current=void 0,q(Sa)),b.threadId=Sa}return b},fetch:(async(b,O)=>{let U=await fetch(b,O);return p.current=void 0,H(U.headers.get(Jh)),U})})),W=pe(null),me=pe(null),ve=pe({}),[Oe,ye]=gt(0),X=e.skipRemoteConfig===!0,z=Ie(async()=>{if(!X)try{let b=await Zh(t,u.current);ve.current=b,ye(O=>O+1)}catch(b){console.warn("[Waniwani] Failed to fetch tool definitions:",b instanceof Error?b.message:b)}},[t,X]);Be(()=>{z()},[z]);let{messages:xe,sendMessage:he,setMessages:ee,status:ie}=Qh({messages:e.initialMessages,transport:Te.current,onFinish({message:b}){n?.(),W.current&&(me.current=b)},onError(b){console.warn("[Waniwani] Chat error:",b.message),W.current&&(W.current.reject(b),W.current=null)}}),se=pe(xe);Be(()=>{se.current=xe},[xe]);let Q=pe(s);Be(()=>{if(!s||Q.current||(Q.current=!0,se.current.length>0))return;let b=!1,O=v.current;return M(!1),(async()=>{try{let U=m.current;if(!U)try{U=await jr(),m.current=U}catch{}let oe=U?.memoryUserId;if(!oe||b||O!==v.current){b||M(!0);return}let ge=i??await Wr(oe);if(b||O!==v.current)return;if(ge){let le=await Co(ge);if(b||O!==v.current)return;le&&le.memoryUserId===oe&&(C.current=le.threadId,L(le.threadId),A.current=le.createdAt,E.current=le.title,le.sessionId&&(x.current=le.sessionId,I(le.sessionId)),ee(le.messages))}await y()}finally{b||M(!0)}})(),()=>{b=!0}},[s]),Be(()=>{if(ie==="ready"&&W.current&&me.current){let b=W.current,O=me.current;W.current=null,me.current=null,b.resolve(O)}},[ie]);let[te,G]=gt(""),[ae,ce]=gt([]),Fe=ie==="submitted"||ie==="streaming",Ke=Ie(b=>{ce(O=>O.filter(U=>U.id!==b))},[]),wt=Fe&&ae.length>0,xt=Ie(b=>{let O=!!b.text?.trim(),U=!!b.files?.length;if(O||U){if(Fe){if(ae.length>0)return;ce(oe=>[...oe,{id:Yt(),text:b.text||"",files:b.files??[],modelContext:b.modelContext}]),G("");return}p.current=b.modelContext,he({text:b.text||"",files:b.files}),r?.(b.text||""),G("")}},[he,r,Fe,ae.length]),Iu=Ie(b=>new Promise((O,U)=>{W.current={resolve:O,reject:U},he({text:b}),r?.(b)}),[he,r]);Be(()=>{if(ie!=="ready"||ae.length===0)return;let[b,...O]=ae;ce(O),p.current=b.modelContext,he({text:b.text,files:b.files.length>0?b.files:void 0}),r?.(b.text)},[ie,he,r,ae]);let Su=Ie(()=>{ee([]),ce([]),de(),G(""),ve.current={},ye(b=>b+1),z()},[ee,de,z]),Ca=Ie(()=>{if(!d.current)return;let b=m.current?.memoryUserId,O=C.current,U=se.current;if(!(!b||!O||U.length===0)){if(A.current||(A.current=Lo()),!E.current){let oe=U.find(le=>le.role==="user"),ge=oe?oe.parts.map(le=>"text"in le&&typeof le.text=="string"?le.text:"").join(" "):"";E.current=ru(ge)}return{threadId:O,memoryUserId:b,title:E.current,messages:U,sessionId:x.current,createdAt:A.current,updatedAt:Lo()}}},[]),$r=Ie(async()=>{let b=Ca();b&&(await qr(b),await y())},[Ca,y]);Be(()=>{if(s&&P&&!(ie==="submitted"||ie==="streaming")&&xe.length!==0)return F.current&&clearTimeout(F.current),F.current=setTimeout(()=>{F.current=void 0;let b=$r().finally(()=>{_.current===b&&(_.current=void 0)});_.current=b},Yh),()=>{F.current&&clearTimeout(F.current)}},[s,P,xe,ie,$r]);let La=Ie(()=>{let b=_.current,O=F.current,U=O?Ca():void 0;return O&&(clearTimeout(O),F.current=void 0),(async()=>{b&&await b,U&&(await qr(U),await y())})()},[Ca,y]),yu=Ie(()=>{v.current+=1,La(),ee([]),ce([]),de(),G("");let b=iu();return A.current=Lo(),E.current=void 0,q(b),y(),b},[ee,de,q,y,La]),Io=Ie(async b=>{v.current+=1;let O=v.current;if(await La(),O!==v.current)return;let U=await Co(b);O===v.current&&U&&(q(U.threadId),A.current=U.createdAt,E.current=U.title,U.sessionId?(x.current=U.sessionId,I(U.sessionId)):de(),ee(U.messages),ce([]),G(""))},[ee,de,q,La]),bu=Ie(async b=>{if(C.current===b){v.current+=1,F.current&&(clearTimeout(F.current),F.current=void 0);let O=_.current;O&&await O}await ou(b),await y(),C.current===b&&(ee([]),ce([]),de(),G(""),C.current=void 0,L(void 0),A.current=void 0,E.current=void 0)},[ee,de,y]);Be(()=>{s&&P&&i!==void 0&&i!==C.current&&Io(i)},[i,s,P,Io]);let ku=Ie(b=>{G(b.target.value)},[]),Xr=xe[xe.length-1],Kr=xe.length>0,Tu=Fe&&(!Kr||Xr.role==="user"),vu=ve.current;return{messages:xe,status:ie,text:te,setText:G,handleSubmit:xt,handleTextChange:ku,isLoading:Fe,showLoaderBubble:Tu,lastMessage:Xr,hasMessages:Kr,sendMessage:he,sendMessageAndWait:Iu,reset:Su,queuedMessages:ae,queueFull:wt,removeQueuedMessage:Ke,sessionId:h,toolDefinitions:vu,refreshToolDefinitions:z,threads:k,activeThreadId:S,isThreadHistoryReady:P,startNewThread:yu,switchThread:Io,deleteThread:bu}}f();import{useEffect as du,useRef as eg,useState as tg}from"react";var ag={debug:!1,eval:!1};function cu(e="/api/waniwani",t,a=!1){let[o,r]=tg(ag),n=eg(t);return du(()=>{n.current=t},[t]),du(()=>{a||(async()=>{try{let s=n.current,l=await(await fetch(At(e,"/config"),{headers:s?{...s}:void 0})).json();r({debug:l.debug===!0,eval:l.eval===!0})}catch{}})()},[e,a]),o}f();import{useCallback as og,useEffect as zr,useRef as rg,useState as ng}from"react";function sg(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 fu(e){return typeof e=="object"&&e!==null&&"initial"in e}function pu(e){let{messages:t,status:a,config:o}=e,r=fu(o)&&o.initial?o.initial:void 0,[n,s]=ng(r??[]),i=rg(a),l=o===!0||fu(o)&&o.dynamic!==!1,u=og(()=>{s([])},[]),c=t.length>0;zr(()=>{!c&&r&&r.length>0&&s(r)},[r,c]);let d=t[t.length-1];return zr(()=>{d?.role==="user"&&u()},[d,u]),zr(()=>{let p=i.current;if(i.current=a,p==="streaming"&&a==="ready"&&l){let m=[...t].reverse().find(I=>I.role==="assistant");if(!m)return;let h=sg(m);h&&s(h)}},[a,l,t]),{suggestions:n,isLoading:!1,clear:u}}f();import{useEffect as ig,useRef as lg,useState as ug}from"react";var dg=80,cg=50,fg=15e3,mu=500;function hu(e,t=!0){let[a,o]=ug(""),r=lg(void 0);return ig(()=>{if(!t){o("");return}let n=0,s=!1,i=!1,l=()=>{i||(s?(n--,o(e.slice(0,n)),n<=0?(s=!1,r.current=setTimeout(l,mu)):r.current=setTimeout(l,cg)):(n++,o(e.slice(0,n)),n>=e.length?(s=!0,r.current=setTimeout(l,fg)):r.current=setTimeout(l,dg)))};return r.current=setTimeout(l,mu),()=>{i=!0,clearTimeout(r.current)}},[e,t]),a}f();function gu(e,t){let a=t?.Authorization,o=typeof a=="string"&&a.startsWith("Bearer ")?a.slice(7):null;return At(e,"/resource",o?{token:o}:void 0)}f();var pg={primaryColor:"#6366f1",primaryForeground:"#1f2937",backgroundColor:"#ffffff",textColor:"#1f2937",mutedColor:"#6b7280",borderColor:"#e5e7eb",borderWidth:0,boxShadow:"none",assistantBubbleColor:"#f3f4f6",userBubbleColor:"#f4f4f4",inputBackgroundColor:"#f9fafb",borderRadius:16,messageBorderRadius:8,fontFamily:"system-ui, -apple-system, 'Segoe UI', sans-serif",headerBackgroundColor:"#ffffff",headerTextColor:"#1f2937",statusColor:"#22c55e",toolCardColor:"#f4f4f5",userBubbleTextColor:"#1f2937",assistantBubbleTextColor:"#1f2937",messagePaddingX:16,messagePaddingY:12,messageMaxWidth:"80%",fontSize:16,lineHeight:"1.5"};var mg={primaryColor:["--ww-primary","--ww-color-primary"],primaryForeground:["--ww-primary-fg","--ww-color-primary-foreground"],backgroundColor:["--ww-bg","--ww-color-background"],textColor:["--ww-text","--ww-color-foreground","--ww-color-accent-foreground"],mutedColor:["--ww-muted","--ww-color-muted-foreground"],borderColor:["--ww-border","--ww-color-border"],borderWidth:["--ww-border-width"],boxShadow:["--ww-shadow"],assistantBubbleColor:["--ww-assistant-bubble","--ww-color-accent"],userBubbleColor:["--ww-user-bubble"],inputBackgroundColor:["--ww-input-bg","--ww-color-input"],borderRadius:["--ww-radius"],messageBorderRadius:["--ww-msg-radius"],fontFamily:["--ww-font"],headerBackgroundColor:["--ww-header-bg"],headerTextColor:["--ww-header-text"],statusColor:["--ww-status"],toolCardColor:["--ww-tool-card","--ww-color-tool-card"],userBubbleTextColor:["--ww-user-bubble-text"],assistantBubbleTextColor:["--ww-assistant-bubble-text"],messagePaddingX:["--ww-msg-pad-x"],messagePaddingY:["--ww-msg-pad-y"],messageMaxWidth:["--ww-msg-max-width"],fontSize:["--ww-font-size"],lineHeight:["--ww-line-height"]};function wu(e){return{...pg,...e}}function xu(e){let t={};for(let[a,o]of Object.entries(mg)){let r=e[a];if(r===void 0)continue;let n=typeof r=="number"?`${r}px`:String(r);for(let s of o)t[s]=n}return t}import{jsx as Se,jsxs as xa}from"react/jsx-runtime";var xg=hg(function(t,a){let{theme:o,title:r="Assistant",width:n,height:s,className:i,allowAttachments:l=!1,welcomeMessage:u,welcome:c,placeholder:d="Ask me anything...",triggerEvent:p="triggerDemoRequest",api:m,debug:h,enableThreadHistory:I=!1,showToolCalls:x=!0}=t,S=m??"/api/waniwani",L=gu(S,t.headers),C=wu(o),k=xu(o??{}),T=C.backgroundColor.replace("#",""),P=parseInt(T.substring(0,2),16),M=parseInt(T.substring(2,4),16),A=parseInt(T.substring(4,6),16),E=(P*299+M*587+A*114)/1e3<128,F=cu(S,t.headers,t.skipRemoteConfig),_=h??F.debug,v=uu({...t,api:S}),D=Jl({...t,api:S,sessionId:v.sessionId}),q=hu(d,!v.text),[y,N]=Lu(!1),[H,de]=Lu(null),Te=Cu(null),W=Cu(void 0),me=Vr(()=>{let X=Te.current;if(!X)return;X.scrollIntoView({behavior:"smooth",block:"center"});let z=X.querySelector("textarea");z&&setTimeout(()=>z.focus(),300),N(!0),clearTimeout(W.current),W.current=setTimeout(()=>N(!1),2e3)},[]),ve=pu({messages:v.messages,status:v.status,config:t.suggestions}),Oe=Vr(X=>{let z=X.content.map(xe=>xe.text??"").join("").trim();z&&v.handleSubmit({text:z,files:[],modelContext:X.modelContext})},[v.handleSubmit]),ye=Vr(X=>{ve.clear(),v.handleSubmit({text:X,files:[]})},[ve.clear,v.handleSubmit]);return wg(a,()=>({sendMessage:X=>{v.handleSubmit({text:X,files:[]}),me()},sendMessageAndWait:X=>v.sendMessageAndWait(X),reset:v.reset,focus:me,get messages(){return v.messages},get sessionId(){return v.sessionId}}),[v.handleSubmit,v.sendMessageAndWait,v.reset,v.messages,v.sessionId,me]),gg(()=>{if(!p)return;let X=z=>{let xe=z.detail,he=typeof xe?.message=="string"?xe.message:void 0;he&&v.handleSubmit({text:he,files:[]}),me()};return window.addEventListener(p,X),()=>window.removeEventListener(p,X)},[p,v.handleSubmit,me]),xa("div",{ref:Te,style:{...k,width:n,height:s},"data-waniwani-chat":"","data-waniwani-layout":"card",...E?{"data-waniwani-dark":""}:{},className:R("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",y&&"ww:ring-2 ww:ring-blue-400/70 ww:ring-offset-2 ww:ring-offset-background",i),children:[xa("div",{className:"ww:shrink-0 ww:flex ww:items-center ww:gap-2 ww:px-6 ww:py-3",style:{backgroundColor:C.headerBackgroundColor,color:C.headerTextColor},children:[Se("div",{className:"ww:text-sm ww:font-semibold ww:truncate ww:flex-1 ww:min-w-0",children:r}),Se(Bs,{messages:v.messages,evalEnabled:F.eval,api:S}),I&&Se(Ql,{threads:v.threads,activeThreadId:v.activeThreadId,onNewThread:v.startNewThread,onSelectThread:X=>{v.switchThread(X)},onDeleteThread:X=>{v.deleteThread(X)}})]}),xa(cs,{className:"ww:flex-1 ww:min-h-0 ww:bg-background",children:[Se(fs,{scrollClassName:H?"ww:!relative ww:!overflow-hidden":void 0,children:Se(zl,{messages:v.messages,status:v.status,welcomeMessage:u,welcome:c,onSuggestionSelect:ye,resourceEndpoint:L,chatSessionId:v.sessionId,isDark:E,onFollowUp:Oe,onCallTool:D,fullscreenToolCallId:H,debug:_,showToolCalls:x,toolDefinitions:v.toolDefinitions,onWidgetDisplayModeChange:(X,z)=>{de(X==="fullscreen"?z.toolCallId:null)}})}),Se(ps,{})]}),Se("div",{style:H?{display:"none"}:void 0,children:Se(Xl,{suggestions:ve.suggestions,isLoading:ve.isLoading,onSelect:ye})}),Se("div",{style:H?{display:"none"}:void 0,children:Se(Ms,{queuedMessages:v.queuedMessages,onRemove:v.removeQueuedMessage})}),Se("div",{style:H?{display:"none"}:void 0,children:Se("div",{className:"ww:shrink-0 ww:px-4 ww:pb-8 ww:pt-2 ww:bg-background",children:xa("div",{className:"ww:mx-auto ww:w-full ww:max-w-3xl",children:[Se(Cs,{onSubmit:v.handleSubmit,globalDrop:l,multiple:l,className:"ww:rounded-2xl ww:border-border ww:bg-input",children:xa("div",{className:"ww:flex ww:items-center ww:gap-1 ww:pl-4 ww:pr-3 ww:py-2.5",children:[l&&Se(Ss,{}),Se(Ls,{onChange:v.handleTextChange,value:v.text,placeholder:q,className:"ww:min-h-0 ww:py-1 ww:px-0"}),Se(Is,{status:v.status,disabled:v.queueFull})]})}),Se($l,{})]})})})]})});export{xg as ChatCard,Ln as DevModeProvider,_u as InitializeNextJsInIframe,wd as LoadingWidget,Pn as WidgetProvider,hn as createResource,Fu as createTool,yo as detectPlatform,va as getMockState,Bt as initializeMockOpenAI,Ru as isMCPApps,Au as isOpenAI,Du as registerTools,HC as toNextJsHandler,bn as unstable_useSendFollowUpWithGhostGuard,_t as updateMockDisplayMode,rt as updateMockGlobal,Nt as updateMockTheme,Et as updateMockToolOutput,An as useCallTool,Rn as useDisplayMode,Mn as useFlowAction,Fn as useIsChatGptApp,Dn as useLocale,Bn as useMaxHeight,En as useOpenExternal,_n as useRequestDisplayMode,Nn as useSafeArea,On as useSendFollowUp,Un as useTheme,Aa as useToolOutput,Hn as useToolResponseMetadata,qn as useUpdateModelContext,$ as useWidgetClient,Wn as useWidgetState};
|
|
81
|
+
${ae}`}]}}E.current({...G,...X?{modelContext:X}:{}})}J({jsonrpc:"2.0",id:z,result:{}});return}if(fe==="ui/update-model-context"&&z!=null){Ae=en(Ae,te.params),J({jsonrpc:"2.0",id:z,result:{}});return}if(fe==="tools/call"&&z!=null){let G=v.current;if(!G){J({jsonrpc:"2.0",id:z,error:{code:-32601,message:"tools/call not supported"}});return}let X=te.params?.name;G({name:X,arguments:te.params?.arguments??{}}).then(ae=>{J({jsonrpc:"2.0",id:z,result:ae});let pe=ae.content?.map(se=>se.text??"").join("").trim();pe&&bh(X,ae,T.current)&&(ge&&clearTimeout(ge.timer),ge={text:pe,timer:setTimeout(()=>{if(ke)return;let se=Ae;Ae=null,ge=null,E.current?.({role:"user",content:[{type:"text",text:pe}],...se?{modelContext:se}:{}})},500)})}).catch(ae=>{let pe=ae instanceof Error?ae.message:"Tool call failed";J({jsonrpc:"2.0",id:z,error:{code:-32e3,message:pe}})});return}if(fe==="ui/request-display-mode"&&z!=null){let G=te.params?.mode,X=G==="fullscreen"||G==="inline"||G==="pip"?G:"inline";k.current=X,J({jsonrpc:"2.0",id:z,result:{mode:X}}),J({jsonrpc:"2.0",method:"ui/notifications/host-context-changed",params:{displayMode:X}}),D.current?.(X);return}if(fe==="ui/resource-teardown"&&z!=null){J({jsonrpc:"2.0",id:z,result:{}});return}fe==="ping"&&z!=null&&J({jsonrpc:"2.0",id:z,result:{}})};return window.addEventListener("message",Ue),()=>{ke=!0,clearTimeout(Q),ge&&clearTimeout(ge.timer),window.removeEventListener("message",Ue)}},[i,N]),kh("iframe",{ref:h,src:U,sandbox:"allow-scripts allow-forms allow-same-origin allow-popups allow-popups-to-escape-sandbox",className:A(!p&&"ww:rounded-md ww:border ww:border-border",s),style:{height:p?"100%":P,minWidth:p||!R?void 0:`min(${R}px, 100%)`,width:"100%",border:"none",colorScheme:n?"dark":"auto"},title:"MCP App"})}f();import{jsx as wa,jsxs as Th}from"react/jsx-runtime";function jl({icon:e,title:t,description:a,suggestions:o,onSuggestionSelect:r}){return Th("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&&wa("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}),wa("h2",{className:"ww:text-lg ww:font-semibold ww:text-foreground",children:t}),a&&wa("p",{className:"ww:mt-1 ww:text-sm ww:text-muted-foreground ww:max-w-sm",children:a}),o&&o.length>0&&wa("div",{className:"ww:mt-6 ww:w-full ww:max-w-md ww:flex ww:flex-col ww:gap-2",children:o.map((n,s)=>wa("button",{type:"button",onClick:()=>r?.(n),className:A("ww:w-full ww:text-left ww:rounded-xl ww:border ww:border-border ww:bg-background ww:px-4 ww:py-3 ww:text-sm","ww:text-foreground ww:hover:bg-accent ww:hover:border-primary/30","ww:transition-all ww:duration-200 ww:ease-out ww:cursor-pointer","ww:animate-[ww-fade-in_0.2s_ease-out_both]"),style:{animationDelay:`${s*50}ms`},children:n},n))})]})}f();import{Component as vh}from"react";import{jsx as Er,jsxs as Ah}from"react/jsx-runtime";function Ph({onRetry:e}){let{t}=V();return Ah("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:[Er("span",{children:t.widgetErrorBoundary.failedToLoad}),Er("button",{type:"button",onClick:e,className:"ww:text-xs ww:font-medium ww:text-primary ww:hover:underline",children:t.widgetErrorBoundary.retry})]})}var po=class extends vh{state={hasError:!1};static getDerivedStateFromError(){return{hasError:!0}}componentDidCatch(t){console.warn("[Waniwani] Widget failed to render:",t.message)}render(){return this.state.hasError?Er(Ph,{onRetry:()=>this.setState({hasError:!1})}):this.props.children}};import{Fragment as Rh,jsx as ee,jsxs as rt}from"react/jsx-runtime";function _r(e){return e?e.replace(/[-_]/g," ").replace(/^\w/,t=>t.toUpperCase()):"Tool"}function zl(e){return e&&/search|find|lookup|query|web|browse|google/i.test(e)?Vt:it}function Vl({messages:e,status:t,welcomeMessage:a,welcome:o,onSuggestionSelect:r,resourceEndpoint:n,chatSessionId:s,isDark:i,onFollowUp:l,onCallTool:u,onWidgetDisplayModeChange:d,fullscreenToolCallId:c,debug:p,showToolCalls:m=!0,toolDefinitions:h,messageClassNames:L}){let{t:C}=V(),S=e[e.length-1],x=e.length>0,I=c!=null,b=!I&&Hl(e,t,{ignoreToolParts:m===!1,ignoreReasoningParts:m===!1});return rt(Rh,{children:[!I&&(!x&&o?ee(jl,{...o,onSuggestionSelect:r}):a&&ee(Tr,{from:"assistant",children:ee(vr,{children:ee(fo,{children:a})})})),e.map(k=>{let P=k.parts.filter(T=>T.type==="text"),F=k.parts.filter(T=>T.type==="reasoning"),R=k.parts.filter(T=>T.type==="file"),_=k.parts.filter(T=>"toolCallId"in T),M=k.parts.filter(T=>T.type==="reasoning"||"toolCallId"in T),E=k===S&&k.role==="assistant",v=P.length>0,D=I?_.some(T=>T.toolCallId===c):!1,H=m!==!1&&!D&&M.length>=2;return I&&!D?ee("div",{style:{display:"none"}},k.id):k.role==="assistant"&&!Ul(k)?ee("div",{style:{display:"none"}},k.id):m===!1&&k.role==="assistant"&&!v&&R.length===0&&_.every(T=>{let N="output"in T?T.output:void 0;return N===void 0||!n||!ga(T.toolName,N,h)})?ee("div",{style:{display:"none"}},k.id):rt(Tr,{from:k.role,className:L?.message,children:[m!==!1&&!D&&!H&&F.map((T,N)=>rt(ea,{isStreaming:T.state==="streaming",children:[ee(ta,{}),ee(aa,{children:T.text})]},`reasoning-${k.id}-${N}`)),H&&(()=>{let T=M[M.length-1],N=T.type==="reasoning"?{icon:Xe,label:C.reasoning.thinking}:{icon:zl(T.toolName),label:T.title??_r(T.toolName)};return rt(Ws,{isWorking:E&&(t==="streaming"||t==="submitted"),activeStep:N,children:[ee(Gs,{workingLabel:C.chainOfThought.working,label:C.chainOfThought.done}),ee(js,{children:M.map((U,Be)=>{let be=Be===M.length-1;if(U.type==="reasoning")return ee(Vs,{isStreaming:U.state==="streaming",isLast:be,children:U.text},`reasoning-${k.id}-${Be}`);let W=U.title??_r(U.toolName),ke=zl(U.toolName);if(m==="titles-only")return ee(Vo,{icon:ke,title:W,state:U.state,isLast:be},U.toolCallId);let ue="output"in U?U.output:void 0;return rt(Vo,{icon:ke,title:W,state:U.state,isLast:be,children:[ee(Fr,{input:U.input,debug:p}),ue!==void 0&&ee(Dr,{output:ue,errorText:"errorText"in U?U.errorText:void 0,debug:p})]},U.toolCallId)})})]})})(),m!==!1&&!D&&!H&&_.length===1&&(()=>{let T=_[0],N=T.title??_r(T.toolName);if(m==="titles-only")return ee(Fl,{title:N,state:T.state});let U="output"in T?T.output:void 0;return rt(Rl,{children:[ee(Ml,{title:N,state:T.state}),rt(Dl,{children:[ee(Fr,{input:T.input,debug:p}),U!==void 0&&ee(Dr,{output:U,errorText:"errorText"in T?T.errorText:void 0,debug:p})]})]})})(),_.map(T=>{let N="output"in T?T.output:void 0,U=ga(T.toolName,N,h),Be=_l(T.toolName,N,h),be=T.toolCallId===c;return U&&n&&N!==void 0?ee("div",{style:be?{position:"absolute",inset:0,zIndex:10,display:"flex",flexDirection:"column",overflow:"hidden",background:"var(--ww-color-background)"}:void 0,children:U&&n&&N!==void 0&&ee(po,{children:ee(Gl,{isFullscreen:be,resourceUri:U,toolInput:T.input??{},toolResult:{content:N.content,structuredContent:N.structuredContent,_meta:N._meta},resourceEndpoint:n,chatSessionId:s,isDark:i,autoHeight:Be,toolDefinitions:h,onFollowUp:l,onCallTool:u,onDisplayModeChange:d?W=>d(W,{toolCallId:T.toolCallId,resourceUri:U,toolInput:T.input??{},toolResult:{content:N.content,structuredContent:N.structuredContent,_meta:N._meta},autoHeight:Be}):void 0})})},T.toolCallId):null}),!D&&ee("div",{children:rt(vr,{className:A(k.role==="user"?L?.userBubble:L?.assistantBubble),children:[R.length>0&&ee(_s,{files:R}),v?P.map((T,N)=>{let U=E&&t==="streaming"&&N===P.length-1;return ee(fo,{isStreaming:U,children:T.type==="text"?T.text:""},`${k.id}-${N}`)}):null]})})]},k.id)}),b&&ee(ql,{})]})}f();import{jsx as $l,jsxs as Dh}from"react/jsx-runtime";var Mh="https://app.waniwani.ai/assets/waniwani-logo.svg",Fh="https://waniwani.ai";function Xl(){let{t:e}=V();return Dh("a",{href:Fh,target:"_blank",rel:"noopener noreferrer",className:"ww:flex ww:items-center ww:gap-1.5 ww:whitespace-nowrap ww:text-[10px] ww:sm:text-[11px] ww:text-muted-foreground ww:opacity-70 hover:ww:opacity-100 ww:transition-opacity",children:[$l("span",{children:e.poweredBy.label}),$l("img",{src:Mh,alt:"Waniwani",width:72,height:10,"data-waniwani-logo":"",className:"ww:h-2.5 ww:w-auto"})]})}f();import{jsx as mo}from"react/jsx-runtime";function Kl({suggestions:e,isLoading:t,onSelect:a,className:o,...r}){return e.length===0&&!t?null:mo("div",{className:A("ww:px-4 ww:py-2",o),...r,children:mo("div",{className:"ww:mx-auto ww:w-full ww:max-w-3xl ww:flex ww:flex-wrap ww:gap-2",children:t?[0,1,2].map(n=>mo("div",{className:"ww:h-8 ww:rounded-full ww:bg-accent ww:animate-pulse",style:{width:`${60+n*20}px`}},n)):e.map((n,s)=>mo("button",{type:"button",onClick:()=>a(n),className:A("ww:rounded-full ww:border ww:border-border ww:bg-background ww:px-3.5 ww:py-1.5 ww:text-sm","ww:text-foreground ww:hover:bg-accent ww:hover:border-primary/30","ww:transition-all ww:duration-200 ww:ease-out ww:cursor-pointer","ww:animate-[ww-fade-in_0.2s_ease-out_both]"),style:{animationDelay:`${s*50}ms`},children:n},n))})})}f();import{useEffect as Bh,useRef as Eh,useState as _h}from"react";import{jsx as ne,jsxs as gt}from"react/jsx-runtime";var Ql=20;function Nh({label:e}){return gt("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",role:"img","aria-label":e,children:[ne("title",{children:e}),ne("line",{x1:"12",y1:"5",x2:"12",y2:"19"}),ne("line",{x1:"5",y1:"12",x2:"19",y2:"12"})]})}function Oh({label:e}){return gt("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",role:"img","aria-label":e,children:[ne("title",{children:e}),ne("path",{d:"M3 12a9 9 0 1 0 3-6.7"}),ne("polyline",{points:"3 4 3 9 8 9"}),ne("line",{x1:"12",y1:"7",x2:"12",y2:"12"}),ne("line",{x1:"12",y1:"12",x2:"15",y2:"14"})]})}function Uh({label:e}){return gt("svg",{xmlns:"http://www.w3.org/2000/svg",width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",role:"img","aria-label":e,children:[ne("title",{children:e}),ne("polyline",{points:"3 6 5 6 21 6"}),ne("path",{d:"M19 6l-2 14a2 2 0 0 1-2 2H9a2 2 0 0 1-2-2L5 6"}),ne("path",{d:"M10 11v6"}),ne("path",{d:"M14 11v6"})]})}function Jl({threads:e,activeThreadId:t,onNewThread:a,onSelectThread:o,onDeleteThread:r}){let{locale:n,t:s}=V(),[i,l]=_h(!1),u=Eh(null);Bh(()=>{if(!i)return;let p=m=>{let h=u.current;h&&(m.composedPath().includes(h)||l(!1))};return document.addEventListener("mousedown",p),()=>document.removeEventListener("mousedown",p)},[i]);let d=e.slice(0,Ql),c=Math.max(0,e.length-Ql);return gt("div",{ref:u,className:"ww:relative ww:flex ww:items-center ww:gap-1",children:[ne("button",{type:"button",onClick:a,title:s.threadMenu.newChat,"aria-label":s.threadMenu.newChat,className:"ww:p-1.5 ww:rounded-md ww:text-muted-foreground hover:ww:text-foreground hover:ww:bg-foreground/5 ww:transition-colors ww:cursor-pointer",children:ne(Nh,{label:s.threadMenu.newChat})}),ne("button",{type:"button",onClick:()=>l(p=>!p),title:s.threadMenu.threadHistory,"aria-label":s.threadMenu.threadHistory,"aria-expanded":i,className:"ww:p-1.5 ww:rounded-md ww:text-muted-foreground hover:ww:text-foreground hover:ww:bg-foreground/5 ww:transition-colors ww:cursor-pointer",children:ne(Oh,{label:s.threadMenu.threadHistory})}),i&>("div",{role:"menu",className:"ww:absolute ww:right-0 ww:top-full ww:mt-1 ww:w-72 ww:max-h-80 ww:overflow-y-auto ww:rounded-lg ww:border ww:border-border ww:bg-background ww:shadow-lg ww:z-50",children:[d.length===0&&ne("div",{className:"ww:px-3 ww:py-3 ww:text-xs ww:text-muted-foreground",children:s.threadMenu.noPreviousChats}),d.map(p=>{let m=p.threadId===t,h=Date.parse(p.updatedAt);return gt("div",{className:`ww:flex ww:items-center ww:gap-2 ww:px-3 ww:py-2 ww:text-xs hover:ww:bg-foreground/5 ${m?"ww:bg-foreground/5":""}`,children:[gt("button",{type:"button",onClick:()=>{o(p.threadId),l(!1)},className:"ww:flex-1 ww:min-w-0 ww:text-left ww:cursor-pointer",children:[ne("div",{className:"ww:truncate ww:text-foreground ww:font-medium",children:p.title}),ne("div",{className:"ww:text-[10px] ww:text-muted-foreground",children:Number.isNaN(h)?"":Uo(h,n)})]}),ne("button",{type:"button",onClick:L=>{L.stopPropagation(),r(p.threadId)},title:s.threadMenu.deleteThread,"aria-label":s.threadMenu.deleteThread,className:"ww:p-1 ww:rounded ww:text-muted-foreground hover:ww:text-foreground hover:ww:bg-foreground/10 ww:transition-colors ww:cursor-pointer",children:ne(Uh,{label:s.threadMenu.deleteThread})})]},p.threadId)}),c>0&&ne("div",{className:"ww:px-3 ww:py-2 ww:text-[10px] ww:text-muted-foreground ww:border-t ww:border-border",children:s.threadMenu.hiddenThreads(c)})]})]})}f();import{useCallback as Hh,useRef as qh}from"react";function Yl(e){let t=qh(e);return t.current=e,Hh(async a=>{let{api:o,headers:r,onCallTool:n,sessionId:s}=t.current;if(n)return n(a);let i=`${o??"/api/waniwani"}/tool`,l=typeof s=="string"&&s.trim().length>0?s.trim():void 0,u=await fetch(i,{method:"POST",headers:{"Content-Type":"application/json",...l?{"X-Session-Id":l}:{},...r},body:JSON.stringify(a)});if(!u.ok)throw new Error(`Tool call failed: ${u.status} ${u.statusText}`);return u.json()},[])}f();import{useChat as sg}from"@ai-sdk/react";import{useCallback as Ce,useEffect as De,useRef as ce,useState as wt}from"react";f();import{createContext as Wh,useContext as Gh}from"react";f();function Zl(){return{subscribe(){return()=>{}},emit(){}}}var eu=Wh(Zl());function tu(){return Gh(eu)}var iP=eu.Provider;f();function At(e,t,a){let[o,r=""]=e.split("?"),n=o.replace(/\/$/,""),s=new URLSearchParams(r);if(a)for(let[l,u]of Object.entries(a))s.set(l,u);let i=s.toString();return`${n}${t}${i?`?${i}`:""}`}f();import{DefaultChatTransport as jh,uiMessageChunkSchema as zh}from"ai";function Vh(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 s=r.filter(i=>i.code==="unrecognized_keys").flatMap(i=>i.keys??[]);if(s.length>0)return s}return null}var ho=class extends jh{processResponseStream(t){let a="",o=zh(),r=o.validate?.bind(o);return t.pipeThrough(new TextDecoderStream).pipeThrough(new TransformStream({async transform(n,s){a+=n;let i=a.split(`
|
|
82
|
+
`);a=i.pop()??"";for(let l of i){let u=l.trim();if(!u.startsWith("data:"))continue;let d=u.slice(5).trim();if(d!=="[DONE]")try{let c=JSON.parse(d);if(!r){s.enqueue(c);continue}let p=await r(c);if(p.success){s.enqueue(p.value);continue}let m=Vh(p.error);if(m?.length){let h={...c};for(let C of m)delete h[C];let L=await r(h);L.success&&s.enqueue(L.value)}}catch{}}}}))}};f();f();var $h="waniwani-memory";var Fe="threads",go="by_memoryUserId",Xh="by_updatedAt";var ou="memoryUserId",au="waniwani-memory-user-id",Nr=null;function Or(){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 Kh(e,t){if(t<1&&(e.objectStoreNames.contains("ids")||e.createObjectStore("ids")),t<2&&!e.objectStoreNames.contains(Fe)){let a=e.createObjectStore(Fe,{keyPath:"threadId"});a.createIndex(go,"memoryUserId",{unique:!1}),a.createIndex(Xh,"updatedAt",{unique:!1})}}async function Ur(){return new Promise((e,t)=>{let a=indexedDB.open($h,2);a.onupgradeneeded=o=>{Kh(a.result,o.oldVersion)},a.onsuccess=()=>e(a.result),a.onerror=()=>t(a.error)})}async function Qh(){return Ur()}async function Jh(e){return new Promise((t,a)=>{let n=e.transaction("ids","readonly").objectStore("ids").get(ou);n.onsuccess=()=>t(typeof n.result=="string"?n.result:null),n.onerror=()=>a(n.error)})}async function Yh(e,t){return new Promise((a,o)=>{let s=e.transaction("ids","readwrite").objectStore("ids").put(t,ou);s.onsuccess=()=>a(),s.onerror=()=>o(s.error)})}async function Zh(){if(typeof indexedDB>"u")return null;try{let e=await Qh();try{let t=await Jh(e);if(t)return t;let a=Or();return await Yh(e,a),a}finally{e.close()}}catch{return null}}function eg(){try{let e=localStorage.getItem(au);if(e)return e;let t=Or();return localStorage.setItem(au,t),t}catch{return null}}async function ru(){let e=await Zh();if(e)return e;let t=eg();return t||(Nr||(Nr=Or()),Nr)}var nu=50,su=1e3;function wo(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 xo(e){if(typeof indexedDB>"u")return null;let t=null;try{return t=await Ur(),await e(t)}catch{return null}finally{try{t?.close()}catch{}}}function Hr(e){return new Promise((t,a)=>{e.onsuccess=()=>t(e.result),e.onerror=()=>a(e.error)})}async function qr(e){return await xo(async a=>{let n=a.transaction(Fe,"readonly").objectStore(Fe).index(go),i=(await Hr(n.getAll(e))??[]).filter(wo);return i.sort((l,u)=>l.updatedAt<u.updatedAt?1:-1),i})??[]}async function Co(e){return await xo(async a=>{let r=a.transaction(Fe,"readonly").objectStore(Fe),n=await Hr(r.get(e));return wo(n)?n:null})??null}async function Wr(e){if(!wo(e))return;let t=e.messages.length>su?{...e,messages:e.messages.slice(e.messages.length-su)}:e;await xo(async a=>{await new Promise((l,u)=>{let d=a.transaction(Fe,"readwrite");d.oncomplete=()=>l(),d.onerror=()=>u(d.error),d.onabort=()=>u(d.error),d.objectStore(Fe).put(t)});let o=a.transaction(Fe,"readwrite"),r=o.objectStore(Fe),n=r.index(go),i=(await Hr(n.getAll(t.memoryUserId))??[]).filter(wo);if(i.length>nu){i.sort((u,d)=>u.updatedAt<d.updatedAt?-1:1);let l=i.slice(0,i.length-nu);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 iu(e){await xo(async t=>(await new Promise((a,o)=>{let r=t.transaction(Fe,"readwrite");r.oncomplete=()=>a(),r.onerror=()=>o(r.error),r.onabort=()=>o(r.error),r.objectStore(Fe).delete(e)}),null))}async function Gr(e){return(await qr(e))[0]?.threadId??null}function lu(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`}f();var jr="waniwani-visitor-id";function du(e,t){return e.match(t)?.[1]??null}function tg(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=du(e,o);if(r)return{name:a,version:r}}return null}function ag(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=du(e,o);if(r)return{name:a,version:r.replace(/_/g,".")};if(a==="Linux"&&o.test(e))return{name:a,version:""}}return null}function og(e){return typeof navigator<"u"&&"userAgentData"in navigator&&navigator.userAgentData?.mobile?"mobile":/iPad|tablet|PlayBook/i.test(e)?"tablet":/Mobi|Android.*Mobile|iPhone|iPod/i.test(e)?"mobile":"desktop"}function rg(){try{if(typeof crypto<"u"){if(typeof crypto.randomUUID=="function")return crypto.randomUUID();if(typeof crypto.getRandomValues=="function"){let e=crypto.getRandomValues(new Uint8Array(16));e[6]=e[6]&15|64,e[8]=e[8]&63|128;let t=Array.from(e,a=>a.toString(16).padStart(2,"0")).join("");return`${t.slice(0,8)}-${t.slice(8,12)}-${t.slice(12,16)}-${t.slice(16,20)}-${t.slice(20)}`}}}catch{}return`v-${Date.now().toString(36)}-${Math.random().toString(36).slice(2,10)}`}function Lo(){try{let t=localStorage.getItem(jr);if(t)return t}catch{}let e=rg();try{localStorage.setItem(jr,e)}catch{}return e}function uu(e){let t=typeof e=="string"?e.trim():"";if(!t)return Lo();try{localStorage.setItem(jr,t)}catch{}return t}function ng(e){return e!=null&&typeof e.then=="function"}function cu(e){let t=!1,a=()=>{t=!0};if(e==null)return a;let o;try{o=typeof e=="function"?e():e}catch{return a}return ng(o)?o.then(r=>{t||uu(r??"")},()=>{}):uu(o??""),a}async function zr(){let e=navigator.userAgent,t=Lo(),a=await ru();return{userAgent:e,browser:tg(e),os:ag(e),deviceType:og(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 ig="x-session-id",lg=250,ug=200;function fu(){return typeof crypto<"u"&&typeof crypto.randomUUID=="function"?crypto.randomUUID():Yt()}function Io(){return new Date().toISOString()}function pu(e){if(typeof e!="string")return;let t=e.trim();return t.length>0?t:void 0}async function dg(e,t){let a=At(e,"/tools"),o=await fetch(a,{method:"GET",headers:t?{...t}:void 0});if(!o.ok)throw new Error(`[Waniwani] Failed to fetch /tools: ${o.status} ${o.statusText}`);let r=await o.json();if(!r||!Array.isArray(r.tools))return{};let n={};for(let s of r.tools)s&&typeof s.name=="string"&&(n[s.name]=s);return n}function mu(e){let{api:t="/api/waniwani",headers:a,body:o,onMessageSent:r,onResponseReceived:n,enableThreadHistory:s=!1,activeThreadId:i,onThreadChange:l}=e,u=e.visitorId;De(()=>cu(u),[u]);let d=tu(),c=ce(a),p=ce(o),m=ce(s);De(()=>{m.current=s},[s]);let h=ce(void 0),L=ce(null),[C,S]=wt(void 0),x=ce(C),[I,b]=wt(i),k=ce(I),[P,F]=wt([]),[R,_]=wt(!s),M=ce(void 0),E=ce(void 0),v=ce(void 0),D=ce(void 0),H=ce(0),T=ce(l);De(()=>{T.current=l},[l]);let N=Ce(y=>{k.current=y,b(y),y&&(T.current?.(y),d.emit({name:"thread.changed",sessionId:x.current,properties:{threadId:y}}))},[d]),U=Ce(async()=>{if(!s)return;let y=L.current?.memoryUserId;if(!y)return;let O=await qr(y);F(O)},[s]),Be=Ce(()=>x.current,[]),be=Ce(y=>{let O=pu(y);if(!O||x.current===O)return;let q=x.current===void 0;x.current=O,S(O),q&&d.emit({name:"session.started",properties:{sessionId:O}})},[d]),W=Ce(()=>{x.current=void 0,S(void 0)},[]);De(()=>{c.current=a},[a]),De(()=>{p.current=o},[o]),De(()=>{let y=!1,O=H.current;return(async()=>{try{let oe=await zr();if(y)return;L.current=oe}catch{}if(!s)return;let q=L.current?.memoryUserId;if(!q){_(!0);return}try{let oe=i??await Gr(q);if(y||O!==H.current)return;if(oe){let me=await Co(oe);if(y||O!==H.current)return;me&&me.memoryUserId===q&&(k.current=me.threadId,b(me.threadId),M.current=me.createdAt,E.current=me.title,me.sessionId&&(x.current=me.sessionId,S(me.sessionId)),z(me.messages))}await U()}finally{y||_(!0)}})(),()=>{y=!0}},[]);let ke=ce(new ho({api:t,headers:()=>({...c.current}),body:()=>{let y={...p.current??{}},O=Object.hasOwn(y,"sessionId"),q=pu(y.sessionId);if(q)be(q),y.sessionId=q;else if(O)W(),delete y.sessionId;else{let yo=Be();yo&&(y.sessionId=yo)}Ct(h.current)&&(y.modelContext=h.current);let oe=L.current,me=Lo();oe&&(y.visitorContext={timezone:oe.timezone,language:oe.language,languages:oe.languages,deviceType:oe.deviceType,referrer:oe.referrer,visitorId:me});let ie=typeof y.visitor=="object"&&y.visitor!==null?y.visitor:{},Eu=typeof ie.client=="object"&&ie.client!==null?ie.client:{};y.visitor={...ie,id:me,client:{...Eu,...oe&&{memoryUserId:oe.memoryUserId}}};let Jr=typeof y.extra=="object"&&y.extra!==null&&!Array.isArray(y.extra)?y.extra:void 0,Yr=L.current?.memoryUserId,Zr=L.current?.language,Ia={};if(Yr&&(Ia.memoryUserId=Yr),Zr&&(Ia.locale=Zr),(Object.keys(Ia).length>0||Jr)&&(y.extra={...Ia,...Jr??{}}),m.current)if(Object.hasOwn(y,"threadId"))typeof y.threadId=="string"&&(k.current=y.threadId);else{let Sa=k.current;Sa||(Sa=fu(),M.current=Io(),E.current=void 0,N(Sa)),y.threadId=Sa}return y},fetch:(async(y,O)=>{let q=await fetch(y,O);return h.current=void 0,be(q.headers.get(ig)),q})})),ue=ce(null),Ae=ce(null),ge=ce({}),[Q,J]=wt(0),Ue=e.skipRemoteConfig===!0,Ie=Ce(async()=>{if(!Ue)try{let y=await dg(t,c.current);ge.current=y,J(O=>O+1)}catch(y){console.warn("[Waniwani] Failed to fetch tool definitions:",y instanceof Error?y.message:y)}},[t,Ue]);De(()=>{Ie()},[Ie]);let{messages:te,sendMessage:fe,setMessages:z,status:G}=sg({messages:e.initialMessages,transport:ke.current,onFinish({message:y,isAbort:O,isDisconnect:q,isError:oe}){n?.(),!O&&!q&&!oe&&d.emit({name:"message.received"}),ue.current&&(Ae.current=y)},onError(y){console.warn("[Waniwani] Chat error:",y.message),d.emit({name:"chat.error",properties:{message:y.message.slice(0,ug)}}),ue.current&&(ue.current.reject(y),ue.current=null)}}),X=ce(te);De(()=>{X.current=te},[te]);let ae=ce(s);De(()=>{if(!s||ae.current||(ae.current=!0,X.current.length>0))return;let y=!1,O=H.current;return _(!1),(async()=>{try{let q=L.current;if(!q)try{q=await zr(),L.current=q}catch{}let oe=q?.memoryUserId;if(!oe||y||O!==H.current){y||_(!0);return}let me=i??await Gr(oe);if(y||O!==H.current)return;if(me){let ie=await Co(me);if(y||O!==H.current)return;ie&&ie.memoryUserId===oe&&(k.current=ie.threadId,b(ie.threadId),M.current=ie.createdAt,E.current=ie.title,ie.sessionId&&(x.current=ie.sessionId,S(ie.sessionId)),z(ie.messages))}await U()}finally{y||_(!0)}})(),()=>{y=!0}},[s]),De(()=>{if(G==="ready"&&ue.current&&Ae.current){let y=ue.current,O=Ae.current;ue.current=null,Ae.current=null,y.resolve(O)}},[G]);let[pe,se]=wt(""),[Te,ve]=wt([]),He=G==="submitted"||G==="streaming",xt=Ce(y=>{ve(O=>O.filter(q=>q.id!==y))},[]),Tu=He&&Te.length>0,vu=Ce(y=>{let O=!!y.text?.trim(),q=!!y.files?.length;if(O||q){if(He){if(Te.length>0)return;ve(oe=>[...oe,{id:Yt(),text:y.text||"",files:y.files??[],modelContext:y.modelContext}]),se("");return}h.current=y.modelContext,fe({text:y.text||"",files:y.files}),r?.(y.text||""),d.emit({name:"message.sent"}),se("")}},[fe,r,He,Te.length,d]),Pu=Ce(y=>new Promise((O,q)=>{ue.current={resolve:O,reject:q},fe({text:y}),r?.(y),d.emit({name:"message.sent"})}),[fe,r,d]);De(()=>{if(G!=="ready"||Te.length===0)return;let[y,...O]=Te;ve(O),h.current=y.modelContext,fe({text:y.text,files:y.files.length>0?y.files:void 0}),r?.(y.text),d.emit({name:"message.sent"})},[G,fe,r,Te,d]);let Au=Ce(()=>{z([]),ve([]),W(),se(""),ge.current={},J(y=>y+1),Ie()},[z,W,Ie]),Ca=Ce(()=>{if(!m.current)return;let y=L.current?.memoryUserId,O=k.current,q=X.current;if(!(!y||!O||q.length===0)){if(M.current||(M.current=Io()),!E.current){let oe=q.find(ie=>ie.role==="user"),me=oe?oe.parts.map(ie=>"text"in ie&&typeof ie.text=="string"?ie.text:"").join(" "):"";E.current=lu(me)}return{threadId:O,memoryUserId:y,title:E.current,messages:q,sessionId:x.current,createdAt:M.current,updatedAt:Io()}}},[]),Xr=Ce(async()=>{let y=Ca();y&&(await Wr(y),await U())},[Ca,U]);De(()=>{if(s&&R&&!(G==="submitted"||G==="streaming")&&te.length!==0)return v.current&&clearTimeout(v.current),v.current=setTimeout(()=>{v.current=void 0;let y=Xr().finally(()=>{D.current===y&&(D.current=void 0)});D.current=y},lg),()=>{v.current&&clearTimeout(v.current)}},[s,R,te,G,Xr]);let La=Ce(()=>{let y=D.current,O=v.current,q=O?Ca():void 0;return O&&(clearTimeout(O),v.current=void 0),(async()=>{y&&await y,q&&(await Wr(q),await U())})()},[Ca,U]),Ru=Ce(()=>{H.current+=1,La(),z([]),ve([]),W(),se("");let y=fu();return M.current=Io(),E.current=void 0,N(y),U(),y},[z,W,N,U,La]),So=Ce(async y=>{H.current+=1;let O=H.current;if(await La(),O!==H.current)return;let q=await Co(y);O===H.current&&q&&(q.sessionId?(x.current=q.sessionId,S(q.sessionId)):W(),N(q.threadId),M.current=q.createdAt,E.current=q.title,z(q.messages),ve([]),se(""))},[z,W,N,La]),Mu=Ce(async y=>{if(k.current===y){H.current+=1,v.current&&(clearTimeout(v.current),v.current=void 0);let O=D.current;O&&await O}await iu(y),await U(),k.current===y&&(z([]),ve([]),W(),se(""),k.current=void 0,b(void 0),M.current=void 0,E.current=void 0)},[z,W,U]);De(()=>{s&&R&&i!==void 0&&i!==k.current&&So(i)},[i,s,R,So]);let Fu=Ce(y=>{se(y.target.value)},[]),Kr=te[te.length-1],Qr=te.length>0,Du=He&&(!Qr||Kr.role==="user"),Bu=ge.current;return{messages:te,status:G,text:pe,setText:se,handleSubmit:vu,handleTextChange:Fu,isLoading:He,showLoaderBubble:Du,lastMessage:Kr,hasMessages:Qr,sendMessage:fe,sendMessageAndWait:Pu,reset:Au,queuedMessages:Te,queueFull:Tu,removeQueuedMessage:xt,sessionId:C,toolDefinitions:Bu,refreshToolDefinitions:Ie,threads:P,activeThreadId:I,isThreadHistoryReady:R,startNewThread:Ru,switchThread:So,deleteThread:Mu}}f();import{useEffect as hu,useRef as cg,useState as fg}from"react";var pg={debug:!1,eval:!1};function gu(e="/api/waniwani",t,a=!1){let[o,r]=fg(pg),n=cg(t);return hu(()=>{n.current=t},[t]),hu(()=>{a||(async()=>{try{let s=n.current,l=await(await fetch(At(e,"/config"),{headers:s?{...s}:void 0})).json();r({debug:l.debug===!0,eval:l.eval===!0})}catch{}})()},[e,a]),o}f();import{useCallback as mg,useEffect as Vr,useRef as hg,useState as gg}from"react";function wg(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 wu(e){return typeof e=="object"&&e!==null&&"initial"in e}function xu(e){let{messages:t,status:a,config:o}=e,r=wu(o)&&o.initial?o.initial:void 0,[n,s]=gg(r??[]),i=hg(a),l=o===!0||wu(o)&&o.dynamic!==!1,u=mg(()=>{s([])},[]),d=t.length>0;Vr(()=>{!d&&r&&r.length>0&&s(r)},[r,d]);let c=t[t.length-1];return Vr(()=>{c?.role==="user"&&u()},[c,u]),Vr(()=>{let p=i.current;if(i.current=a,p==="streaming"&&a==="ready"&&l){let m=[...t].reverse().find(L=>L.role==="assistant");if(!m)return;let h=wg(m);h&&s(h)}},[a,l,t]),{suggestions:n,isLoading:!1,clear:u}}f();import{useEffect as xg,useRef as Cg,useState as Lg}from"react";var Ig=80,Sg=50,yg=15e3,Cu=500;function Lu(e,t=!0){let[a,o]=Lg(""),r=Cg(void 0);return xg(()=>{if(!t){o("");return}let n=0,s=!1,i=!1,l=()=>{i||(s?(n--,o(e.slice(0,n)),n<=0?(s=!1,r.current=setTimeout(l,Cu)):r.current=setTimeout(l,Sg)):(n++,o(e.slice(0,n)),n>=e.length?(s=!0,r.current=setTimeout(l,yg)):r.current=setTimeout(l,Ig)))};return r.current=setTimeout(l,Cu),()=>{i=!0,clearTimeout(r.current)}},[e,t]),a}f();function Iu(e,t){let a=t?.Authorization,o=typeof a=="string"&&a.startsWith("Bearer ")?a.slice(7):null;return At(e,"/resource",o?{token:o}:void 0)}f();var bg={primaryColor:"#6366f1",primaryForeground:"#1f2937",backgroundColor:"#ffffff",textColor:"#1f2937",mutedColor:"#6b7280",borderColor:"#e5e7eb",borderWidth:0,boxShadow:"none",assistantBubbleColor:"#f3f4f6",userBubbleColor:"#f4f4f4",inputBackgroundColor:"#f9fafb",borderRadius:16,messageBorderRadius:8,fontFamily:"system-ui, -apple-system, 'Segoe UI', sans-serif",headerBackgroundColor:"#ffffff",headerTextColor:"#1f2937",statusColor:"#22c55e",toolCardColor:"#f4f4f5",userBubbleTextColor:"#1f2937",assistantBubbleTextColor:"#1f2937",messagePaddingX:16,messagePaddingY:12,messageMaxWidth:"80%",fontSize:16,lineHeight:"1.5"};var kg={primaryColor:["--ww-primary","--ww-color-primary"],primaryForeground:["--ww-primary-fg","--ww-color-primary-foreground"],backgroundColor:["--ww-bg","--ww-color-background"],textColor:["--ww-text","--ww-color-foreground","--ww-color-accent-foreground"],mutedColor:["--ww-muted","--ww-color-muted-foreground"],borderColor:["--ww-border","--ww-color-border"],borderWidth:["--ww-border-width"],boxShadow:["--ww-shadow"],assistantBubbleColor:["--ww-assistant-bubble","--ww-color-accent"],userBubbleColor:["--ww-user-bubble"],inputBackgroundColor:["--ww-input-bg","--ww-color-input"],borderRadius:["--ww-radius"],messageBorderRadius:["--ww-msg-radius"],fontFamily:["--ww-font"],headerBackgroundColor:["--ww-header-bg"],headerTextColor:["--ww-header-text"],statusColor:["--ww-status"],toolCardColor:["--ww-tool-card","--ww-color-tool-card"],userBubbleTextColor:["--ww-user-bubble-text"],assistantBubbleTextColor:["--ww-assistant-bubble-text"],messagePaddingX:["--ww-msg-pad-x"],messagePaddingY:["--ww-msg-pad-y"],messageMaxWidth:["--ww-msg-max-width"],fontSize:["--ww-font-size"],lineHeight:["--ww-line-height"]};function Su(e){return{...bg,...e}}function yu(e){let t={};for(let[a,o]of Object.entries(kg)){let r=e[a];if(r===void 0)continue;let n=typeof r=="number"?`${r}px`:String(r);for(let s of o)t[s]=n}return t}import{jsx as Le,jsxs as xa}from"react/jsx-runtime";var Ag=Tg(function(t,a){let{theme:o,title:r="Assistant",width:n,height:s,className:i,allowAttachments:l=!1,welcomeMessage:u,welcome:d,placeholder:c="Ask me anything...",triggerEvent:p="triggerDemoRequest",api:m,debug:h,enableThreadHistory:L=!1,showToolCalls:C=!0}=t,S=m??"/api/waniwani",x=Iu(S,t.headers),I=Su(o),b=yu(o??{}),k=I.backgroundColor.replace("#",""),P=parseInt(k.substring(0,2),16),F=parseInt(k.substring(2,4),16),R=parseInt(k.substring(4,6),16),_=(P*299+F*587+R*114)/1e3<128,M=gu(S,t.headers,t.skipRemoteConfig),E=h??M.debug,v=mu({...t,api:S}),D=Yl({...t,api:S,sessionId:v.sessionId}),H=Lu(c,!v.text),[T,N]=ku(!1),[U,Be]=ku(null),be=bu(null),W=bu(void 0),ke=$r(()=>{let Q=be.current;if(!Q)return;Q.scrollIntoView({behavior:"smooth",block:"center"});let J=Q.querySelector("textarea");J&&setTimeout(()=>J.focus(),300),N(!0),clearTimeout(W.current),W.current=setTimeout(()=>N(!1),2e3)},[]),ue=xu({messages:v.messages,status:v.status,config:t.suggestions}),Ae=$r(Q=>{let J=Q.content.map(Ue=>Ue.text??"").join("").trim();J&&v.handleSubmit({text:J,files:[],modelContext:Q.modelContext})},[v.handleSubmit]),ge=$r(Q=>{ue.clear(),v.handleSubmit({text:Q,files:[]})},[ue.clear,v.handleSubmit]);return Pg(a,()=>({sendMessage:Q=>{v.handleSubmit({text:Q,files:[]}),ke()},sendMessageAndWait:Q=>v.sendMessageAndWait(Q),reset:v.reset,focus:ke,get messages(){return v.messages},get sessionId(){return v.sessionId}}),[v.handleSubmit,v.sendMessageAndWait,v.reset,v.messages,v.sessionId,ke]),vg(()=>{if(!p)return;let Q=J=>{let Ue=J.detail,Ie=typeof Ue?.message=="string"?Ue.message:void 0;Ie&&v.handleSubmit({text:Ie,files:[]}),ke()};return window.addEventListener(p,Q),()=>window.removeEventListener(p,Q)},[p,v.handleSubmit,ke]),xa("div",{ref:be,style:{...b,width:n,height:s},"data-waniwani-chat":"","data-waniwani-layout":"card",..._?{"data-waniwani-dark":""}:{},className:A("ww:flex ww:flex-col ww:font-[family-name:var(--ww-font)] ww:text-foreground ww:bg-background ww:rounded-[var(--ww-radius)] ww:overflow-hidden",T&&"ww:ring-2 ww:ring-blue-400/70 ww:ring-offset-2 ww:ring-offset-background",i),children:[xa("div",{className:"ww:shrink-0 ww:flex ww:items-center ww:gap-2 ww:px-6 ww:py-3",style:{backgroundColor:I.headerBackgroundColor,color:I.headerTextColor},children:[Le("div",{className:"ww:text-sm ww:font-semibold ww:truncate ww:flex-1 ww:min-w-0",children:r}),Le(Es,{messages:v.messages,evalEnabled:M.eval,api:S}),L&&Le(Jl,{threads:v.threads,activeThreadId:v.activeThreadId,onNewThread:v.startNewThread,onSelectThread:Q=>{v.switchThread(Q)},onDeleteThread:Q=>{v.deleteThread(Q)}})]}),xa(fs,{className:"ww:flex-1 ww:min-h-0 ww:bg-background",children:[Le(ps,{scrollClassName:U?"ww:!relative ww:!overflow-hidden":void 0,children:Le(Vl,{messages:v.messages,status:v.status,welcomeMessage:u,welcome:d,onSuggestionSelect:ge,resourceEndpoint:x,chatSessionId:v.sessionId,isDark:_,onFollowUp:Ae,onCallTool:D,fullscreenToolCallId:U,debug:E,showToolCalls:C,toolDefinitions:v.toolDefinitions,onWidgetDisplayModeChange:(Q,J)=>{Be(Q==="fullscreen"?J.toolCallId:null)}})}),Le(ms,{})]}),Le("div",{style:U?{display:"none"}:void 0,children:Le(Kl,{suggestions:ue.suggestions,isLoading:ue.isLoading,onSelect:ge})}),Le("div",{style:U?{display:"none"}:void 0,children:Le(Fs,{queuedMessages:v.queuedMessages,onRemove:v.removeQueuedMessage})}),Le("div",{style:U?{display:"none"}:void 0,children:Le("div",{className:"ww:shrink-0 ww:px-4 ww:pb-8 ww:pt-2 ww:bg-background",children:xa("div",{className:"ww:mx-auto ww:w-full ww:max-w-3xl",children:[Le(Ls,{onSubmit:v.handleSubmit,globalDrop:l,multiple:l,className:"ww:rounded-2xl ww:border-border ww:bg-input",children:xa("div",{className:"ww:flex ww:items-center ww:gap-1 ww:pl-4 ww:pr-3 ww:py-2.5",children:[l&&Le(ys,{}),Le(Is,{onChange:v.handleTextChange,value:v.text,placeholder:H,className:"ww:min-h-0 ww:py-1 ww:px-0"}),Le(Ss,{status:v.status,disabled:v.queueFull})]})}),Le(Xl,{})]})})})]})});export{Ag as ChatCard,In as DevModeProvider,Gu as InitializeNextJsInIframe,bd as LoadingWidget,An as WidgetProvider,gn as createResource,Uu as createTool,bo as detectPlatform,va as getMockState,Bt as initializeMockOpenAI,Nu as isMCPApps,_u as isOpenAI,Hu as registerTools,JC as toNextJsHandler,kn as unstable_useSendFollowUpWithGhostGuard,_t as updateMockDisplayMode,nt as updateMockGlobal,Nt as updateMockTheme,Et as updateMockToolOutput,Rn as useCallTool,Mn as useDisplayMode,Fn as useFlowAction,Dn as useIsChatGptApp,Bn as useLocale,En as useMaxHeight,_n as useOpenExternal,Nn as useRequestDisplayMode,On as useSafeArea,Un as useSendFollowUp,Hn as useTheme,Aa as useToolOutput,qn as useToolResponseMetadata,Wn as useUpdateModelContext,$ as useWidgetClient,Gn as useWidgetState};
|
|
83
83
|
/*! Bundled license information:
|
|
84
84
|
|
|
85
85
|
lucide-react/dist/esm/shared/src/utils/mergeClasses.js:
|