@lofcz/streamdown 2.11.1 → 2.11.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/{chunk-PJ2AJRJ3.js → chunk-TSGRZBXR.js} +25 -25
- package/dist/{highlighted-body-IRX6SH3P.js → highlighted-body-RJER4GOS.js} +1 -1
- package/dist/index.js +1 -1
- package/dist/lib/table/utils.d.ts +9 -0
- package/dist/lib/tailwind-classes.js +1 -1
- package/dist/mermaid-RWUV64UX.js +2 -0
- package/package.json +1 -1
- package/dist/mermaid-GL7FDD4I.js +0 -2
|
@@ -1,45 +1,45 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import {createContext,memo,useContext,useMemo,lazy,isValidElement,useLayoutEffect,useId,useRef,useEffect,useDeferredValue,cloneElement,createElement,useState,useCallback,Suspense}from'react';import {harden}from'rehype-harden';import nn from'rehype-raw';import Wr,{defaultSchema}from'rehype-sanitize';import kl from'remark-gfm';import Tl from'remend';import {visitParents,SKIP as SKIP$1}from'unist-util-visit-parents';import {clsx}from'clsx';import {twMerge}from'tailwind-merge';import {jsx,jsxs,Fragment}from'react/jsx-runtime';import {createPortal}from'react-dom';import {toJsxRuntime}from'hast-util-to-jsx-runtime';import {urlAttributes}from'html-url-attributes';import ka from'remark-parse';import Ta from'remark-rehype';import {unified}from'unified';import {visit,SKIP}from'unist-util-visit';import {Lexer}from'marked';import {toText}from'hast-util-to-text';var ns=300,rs="300px",ss=500;function ho(e={}){let{immediate:t=false,debounceDelay:o=ns,rootMargin:n=rs,idleTimeout:r=ss}=e,[s,a]=useState(false),c=useRef(null),i=useRef(null),l=useRef(null),d=useMemo(()=>p=>{let f=Date.now();return window.setTimeout(()=>{p({didTimeout:false,timeRemaining:()=>Math.max(0,50-(Date.now()-f))});},1)},[]),m=useMemo(()=>typeof window!="undefined"&&window.requestIdleCallback?(p,f)=>window.requestIdleCallback(p,f):d,[d]),u=useMemo(()=>typeof window!="undefined"&&window.cancelIdleCallback?p=>window.cancelIdleCallback(p):p=>{clearTimeout(p);},[]);return useEffect(()=>{if(t){a(true);return}let p=c.current;if(!p)return;i.current&&(clearTimeout(i.current),i.current=null),l.current&&(u(l.current),l.current=null);let f=()=>{i.current&&(clearTimeout(i.current),i.current=null),l.current&&(u(l.current),l.current=null);},h=x=>{l.current=m(P=>{P.timeRemaining()>0||P.didTimeout?(a(true),x.disconnect()):l.current=m(()=>{a(true),x.disconnect();},{timeout:r/2});},{timeout:r});},g=x=>{f(),i.current=window.setTimeout(()=>{var M,C;let P=x.takeRecords();(P.length===0||(C=(M=P.at(-1))==null?void 0:M.isIntersecting)!=null&&C)&&h(x);},o);},b=(x,P)=>{x.isIntersecting?g(P):f();},y=new IntersectionObserver(x=>{for(let P of x)b(P,y);},{rootMargin:n,threshold:0});return y.observe(p),()=>{i.current&&clearTimeout(i.current),l.current&&u(l.current),y.disconnect();}},[t,o,n,r,u,m]),{shouldRender:s,containerRef:c}}var as=320,is=4,Co=()=>typeof performance=="undefined"?Date.now():performance.now();function Nt(e){var s,a;let t=(s=e==null?void 0:e.now)!=null?s:Co,o=(a=e==null?void 0:e.maxBacklogMs)!=null?a:as,n=0,r=0;return {now:t,beginPass(c){r=Math.min(Math.max(n,c),c+o);},mark(){return r},rewind(c){r=c;},take(c,i,l){if(c<=0)return {baseDelay:0,step:Math.max(0,i)};let d=Math.max(0,i),m=d===0?0:Math.min(d,is),u=Math.max(r,l),p=l+o,f=u+Math.max(0,c-1)*d,h=d;if(f>p&&c>1)if(u<p){let b=p-u;h=Math.max(m,b/(c-1));}else h=m;let g=Math.max(0,Math.round(u-l));return r=u+c*h,{baseDelay:g,step:h}},commitPass(){n=r;}}}function ls(){return {current:0}}var wo=/\s/,At=/^\s+$/,cs=new Set(["pre","svg","math","annotation"]),ds=new Set(["svg","math","annotation"]),Lt=new Set(["img","hr"]),ms=new Set(["ul","ol","li"]),Se=e=>typeof e=="object"&&e!==null&&"type"in e&&e.type==="element",Dt=(e,t)=>{let o=t?ds:cs;return e.some(n=>Se(n)&&o.has(n.tagName))},us=e=>{for(let t=e.length-1;t>=0;t-=1){let o=e[t];if(Se(o)&&o.tagName==="li")return o}},ps=(e,t,o,n)=>{(e.properties)!=null||(e.properties={}),e.properties["data-sd-animate-marker"]=true,e.properties.style=`--sd-marker-duration:${t}ms;--sd-marker-delay:${o}ms;--sd-marker-easing:${n}`;},xo=e=>{for(let t of e.children)if(Se(t)){if(t.tagName==="input")return t;if(ms.has(t.tagName))continue;let o=xo(t);if(o)return o}},vo=(e,t,o,n)=>{(e.properties)!=null||(e.properties={}),e.properties["data-sd-animate"]=true;let r=typeof e.properties.style=="string"?`${e.properties.style};`:"";e.properties.style=`${r}--sd-animation:sd-${t.animation};--sd-duration:${o}ms;--sd-easing:${t.easing};--sd-delay:${n}ms`;},fs=(e,t,o,n)=>{let r=xo(e);r&&vo(r,t,o,n);},ko=e=>{var t;for(let o=e.length-1;o>=0;o-=1){let n=e[o];if(Se(n)){if((t=n.properties)!=null&&t["data-sd-animated"])break;n.properties={...n.properties,"data-sd-animated":true};}}},To=e=>{let t=[],o="",n=false;for(let r of e){let s=wo.test(r);if(s!==n&&o){if(s){o+=r,n=true;continue}t.push(o),o="";}o+=r,n=s;}return o&&t.push(o),t},Po=e=>{let t=[],o="";for(let n of e)wo.test(n)?t.length>0&&!At.test(t.at(-1))?t[t.length-1]+=n:o+=n:(o&&(t.push(o),o=""),t.push(n));return o&&(t.length>0?t[t.length-1]+=o:t.push(o)),t},gs=(e,t,o,n,r,s)=>{let a=`--sd-animation:sd-${t};--sd-duration:${r?0:o}ms;--sd-easing:${n}`;return s&&(a+=`;--sd-delay:${Math.round(s)}ms`),{type:"element",tagName:"span",properties:{"data-sd-animate":true,style:a},children:[{type:"text",value:e}]}},hs=(e,t,o,n)=>{let r=0,s=0;return visitParents(e,a=>a.type==="text"||Se(a)&&Lt.has(a.tagName),(a,c)=>{if(Dt(c,o.animateCodeBlocks))return SKIP$1;if(Se(a)&&Lt.has(a.tagName)){n>0&&s<n||(r+=1),s+=1;return}let i=a.value;if(!i.trim()){s+=i.length;return}let l=t.sep==="char"?Po(i):To(i);for(let d of l){let m=s;s+=d.length,!At.test(d)&&(n>0&&m<n||(r+=1));}}),r},bs=(e,t,o,n,r,s)=>{if(Dt(t,n.animateCodeBlocks))return;let a=n.prevContentLength,c=r.count;r.count+=1;let i=a>0&&c<a,l=i?0:s.baseDelay+r.newIndex++*s.step;vo(e,o,i?0:o.duration,l),ko(t);},ys=(e,t,o,n,r,s)=>{var b;let a=t.at(-1);if(!(a&&"children"in a))return;if(Dt(t,n.animateCodeBlocks))return SKIP$1;let c=a,i=c.children.indexOf(e);if(i===-1)return;let l=e.value;if(!l.trim()){r.count+=l.length;return}let d=o.sep==="char"?Po(l):To(l),m=n.prevContentLength,u=false,p=us(t),f=!!(p&&!((b=p.properties)!=null&&b["data-sd-animate-marker"])),h=false,g=d.map(y=>{let x=r.count;if(r.count+=y.length,At.test(y))return {type:"text",value:y};let P=m>0&&x<m,S=P?0:s.baseDelay+r.newIndex++*s.step;if(p&&f&&!h){let M=P?0:o.duration;ps(p,M,S,o.easing),fs(p,o,M,S),h=true;}return u=true,gs(y,o.animation,o.duration,o.easing,P,S)});return u&&ko(t),c.children.splice(i,1,...g),i+g.length},Cs=0;function ct(e){var s,a,c,i,l;let t={animation:(s=e==null?void 0:e.animation)!=null?s:"fadeIn",duration:(a=e==null?void 0:e.duration)!=null?a:150,easing:(c=e==null?void 0:e.easing)!=null?c:"ease",sep:(i=e==null?void 0:e.sep)!=null?i:"word",stagger:(l=e==null?void 0:e.stagger)!=null?l:40,timeline:e==null?void 0:e.timeline},o={animateCodeBlocks:false,committedCharCount:0,prevContentLength:0,lastRenderCharCount:0,pendingMark:null},n=Cs++,r=()=>d=>{var h;let m={count:0,newIndex:0};o.prevContentLength=o.committedCharCount;let u=t.timeline,p=(h=u==null?void 0:u.now())!=null?h:Co();u&&(o.pendingMark===null?o.pendingMark=u.mark():u.rewind(o.pendingMark));let f=u?u.take(hs(d,t,o,o.prevContentLength),t.stagger,p):{baseDelay:0,step:t.stagger};visitParents(d,g=>g.type==="text"||Se(g)&&Lt.has(g.tagName),(g,b)=>{if(g.type==="text")return ys(g,b,t,o,m,f);bs(g,b,t,o,m,f);}),o.lastRenderCharCount=m.count,o.prevContentLength=0;};return Object.defineProperty(r,"name",{value:`rehypeAnimate$${n}`}),{name:"animate",type:"animate",rehypePlugin:r,setAnimateCodeBlocks(d){o.animateCodeBlocks=d;},setPrevContentLength(d){o.committedCharCount=d,o.prevContentLength=d;},getLastRenderCharCount(){return o.lastRenderCharCount},commit(){o.committedCharCount=o.lastRenderCharCount,o.pendingMark=null;}}}ct();var Ht=createContext(false),Bt=()=>useContext(Ht);var He=(...e)=>twMerge(clsx(e)),dt=e=>{if(e!==void 0)return typeof e=="number"?!Number.isFinite(e)||e<=0?void 0:`${e}px`:e},vs=(e,t)=>{if(!e||!t)return t;let o=`${e}:`;return t.split(/\s+/).filter(Boolean).map(n=>n.startsWith(o)?n:`${e}:${n}`).join(" ")},Io=e=>e?(...t)=>vs(e,twMerge(clsx(t))):He,oe=(e,t,o)=>{let n=typeof t=="string"&&o.startsWith("text/csv")?"\uFEFF":"",r=typeof t=="string"?new Blob([n+t],{type:o}):t,s=URL.createObjectURL(r),a=document.createElement("a");a.href=s,a.download=e,document.body.appendChild(a),a.click(),document.body.removeChild(a),URL.revokeObjectURL(s);};var mt=createContext(He),v=()=>useContext(mt);var qe=({scrollRef:e,ref:t,...o})=>jsx("div",{ref:e,...o});var Is=8,Es=e=>e.scrollHeight-e.scrollTop-e.clientHeight<Is,No=e=>{var o,n;let t=(n=(o=e.touches[0])!=null?o:e.changedTouches[0])!=null?n:null;return typeof(t==null?void 0:t.clientY)=="number"?t.clientY:null},ut=({enabled:e,isAnimating:t,content:o})=>{let[n,r]=useState(null),s=useRef(true),a=useRef(0),c=useCallback(l=>{r(d=>d===l?d:l);},[]),i=useCallback(l=>{t&&s.current&&(l.scrollTo({top:l.scrollHeight,behavior:"instant"}),a.current=l.scrollTop);},[t]);return useEffect(()=>{t||(s.current=true);},[t]),useEffect(()=>{if(!(e&&n))return;a.current=n.scrollTop;let l=()=>{s.current=false;},d=g=>{g.deltaY<0&&l();},m=null,u=g=>{m=No(g);},p=g=>{if(m===null)return;let b=No(g);if(b===null)return;let y=b-m;Math.abs(y)<=3||(y>0&&l(),m=b);},f=()=>{m=null;},h=()=>{let g=n.scrollTop<a.current;if(a.current=n.scrollTop,g){l();return}Es(n)&&(s.current=true);};return n.addEventListener("wheel",d,{capture:true,passive:true}),n.addEventListener("touchstart",u,{passive:true}),n.addEventListener("touchmove",p,{passive:true}),n.addEventListener("touchend",f,{passive:true}),n.addEventListener("touchcancel",f,{passive:true}),n.addEventListener("scroll",h,{passive:true}),()=>{n.removeEventListener("wheel",d,{capture:true}),n.removeEventListener("touchstart",u),n.removeEventListener("touchmove",p),n.removeEventListener("touchend",f),n.removeEventListener("touchcancel",f),n.removeEventListener("scroll",h);}},[e,n]),useLayoutEffect(()=>{if(!(e&&n)||(i(n),typeof ResizeObserver=="undefined"))return;let l=new ResizeObserver(()=>{i(n);});l.observe(n);for(let d of n.children)l.observe(d);return ()=>{l.disconnect();}},[o,n,e,i]),c};var Ns=He("block"),As=He("block","before:content-[counter(line)]","before:inline-block","before:[counter-increment:line]","before:w-6","before:mr-4","before:text-[13px]","before:text-right","before:text-muted-foreground/50","before:font-mono","before:select-none"),Ds=e=>{let t={};for(let o of e.split(";")){let n=o.indexOf(":");if(n>0){let r=o.slice(0,n).trim(),s=o.slice(n+1).trim();r&&s&&(t[r]=s);}}return t},Ao=memo(({children:e,result:t,language:o,className:n,maxHeight:r,startLine:s,lineNumbers:a=true,...c})=>{let i=v(),{isAnimating:l,scrollable:d}=useContext(E),m=d!=null?d:qe,u=dt(r),p=ut({content:t,enabled:!!u,isAnimating:l}),f=useMemo(()=>i(As),[i]),h=useMemo(()=>i(Ns),[i]),g=useMemo(()=>{let b={};return t.bg&&(b["--sdm-bg"]=t.bg),t.fg&&(b["--sdm-fg"]=t.fg),t.rootStyle&&Object.assign(b,Ds(t.rootStyle)),b},[t.bg,t.fg,t.rootStyle]);return jsx(m,{className:i(n,u?"overflow-x-auto overflow-y-auto":"overflow-x-auto","rounded-md border border-border bg-background p-4 text-sm"),"data-language":o,"data-streamdown":"code-block-body",scrollRef:p,style:u?{maxHeight:u}:void 0,...c,children:jsx("pre",{className:i(n,"bg-[var(--sdm-bg,inherit)]","dark:bg-[var(--shiki-dark-bg,var(--sdm-bg,inherit))]"),style:g,children:jsx("code",{className:a?i("[counter-increment:line_0] [counter-reset:line]"):void 0,style:a&&s&&s>1?{counterReset:`line ${s-1}`}:void 0,children:t.tokens.map((b,y)=>jsx("span",{className:a?f:h,children:b.length===0||b.length===1&&b[0].content===""?`
|
|
3
|
-
`:b.map((x,P)=>{let S={},M=!!x.bgColor;if(x.color&&(S["--sdm-c"]=x.color),x.bgColor&&(S["--sdm-tbg"]=x.bgColor),x.htmlStyle)for(let[C,D]of Object.entries(x.htmlStyle))C==="color"?S["--sdm-c"]=D:C==="background-color"?(S["--sdm-tbg"]=D,M=true):S[C]=D;return jsx("span",{className:i("text-[var(--sdm-c,inherit)]","dark:text-[var(--shiki-dark,var(--sdm-c,inherit))]",M&&"bg-[var(--sdm-tbg)]",M&&"dark:bg-[var(--shiki-dark-bg,var(--sdm-tbg))]"),style:S,...x.htmlAttrs,children:x.content},P)})},y))})})})});var _t=({className:e,language:t,style:o,isIncomplete:n,...r})=>{let s=v();return jsx("div",{className:s("my-4 flex w-full flex-col gap-2 rounded-xl border border-border bg-sidebar p-2",e),"data-incomplete":n||void 0,"data-language":t,"data-streamdown":"code-block",style:{contentVisibility:"auto",containIntrinsicSize:"auto 200px",...o},...r})};var Vt=createContext({code:""}),pt=()=>useContext(Vt);var $t=({language:e})=>{let t=v();return jsx("div",{className:t("flex h-8 items-center text-muted-foreground text-xs"),"data-language":e,"data-streamdown":"code-block-header",children:jsx("span",{className:t("ml-1 font-mono lowercase"),children:e})})};var
|
|
4
|
-
`;)t--;return e.slice(0,t)},
|
|
5
|
-
`).map(u=>[{content:u,color:"inherit",bgColor:"transparent",htmlStyle:{},offset:0}])}),[d]);return jsx(Vt.Provider,{value:{code:e},children:jsxs(_t,{dir:"ltr",isIncomplete:r,language:t,children:[jsx($t,{language:t}),n?jsx("div",{className:i("pointer-events-none sticky top-2 z-10 -mt-10 flex h-8 items-center justify-end"),children:jsx("div",{className:i("pointer-events-auto flex shrink-0 items-center gap-2 rounded-md border border-sidebar bg-sidebar/80 px-1.5 py-1 supports-[backdrop-filter]:bg-sidebar/70 supports-[backdrop-filter]:backdrop-blur"),"data-streamdown":"code-block-actions",children:n})}):null,jsx(Suspense,{fallback:jsx(Ao,{className:o,language:t,lineNumbers:a,maxHeight:l,result:m,startLine:s,...c}),children:jsx(js,{className:o,code:d,language:t,lineNumbers:a,maxHeight:l,raw:m,startLine:s,...c})})]})})};var Bo=e=>jsx("svg",{"aria-hidden":"true",color:"currentColor",height:16,strokeLinejoin:"round",viewBox:"0 0 16 16",width:16,...e,children:jsx("path",{clipRule:"evenodd",d:"M15.5607 3.99999L15.0303 4.53032L6.23744 13.3232C5.55403 14.0066 4.44599 14.0066 3.76257 13.3232L4.2929 12.7929L3.76257 13.3232L0.969676 10.5303L0.439346 9.99999L1.50001 8.93933L2.03034 9.46966L4.82323 12.2626C4.92086 12.3602 5.07915 12.3602 5.17678 12.2626L13.9697 3.46966L14.5 2.93933L15.5607 3.99999Z",fill:"currentColor",fillRule:"evenodd"})}),Oo=e=>jsx("svg",{"aria-hidden":"true",color:"currentColor",height:16,strokeLinejoin:"round",viewBox:"0 0 16 16",width:16,...e,children:jsx("path",{clipRule:"evenodd",d:"M2.75 0.5C1.7835 0.5 1 1.2835 1 2.25V9.75C1 10.7165 1.7835 11.5 2.75 11.5H3.75H4.5V10H3.75H2.75C2.61193 10 2.5 9.88807 2.5 9.75V2.25C2.5 2.11193 2.61193 2 2.75 2H8.25C8.38807 2 8.5 2.11193 8.5 2.25V3H10V2.25C10 1.2835 9.2165 0.5 8.25 0.5H2.75ZM7.75 4.5C6.7835 4.5 6 5.2835 6 6.25V13.75C6 14.7165 6.7835 15.5 7.75 15.5H13.25C14.2165 15.5 15 14.7165 15 13.75V6.25C15 5.2835 14.2165 4.5 13.25 4.5H7.75ZM7.5 6.25C7.5 6.11193 7.61193 6 7.75 6H13.25C13.3881 6 13.5 6.11193 13.5 6.25V13.75C13.5 13.8881 13.3881 14 13.25 14H7.75C7.61193 14 7.5 13.8881 7.5 13.75V6.25Z",fill:"currentColor",fillRule:"evenodd"})}),_o=e=>jsx("svg",{"aria-hidden":"true",color:"currentColor",height:16,strokeLinejoin:"round",viewBox:"0 0 16 16",width:16,...e,children:jsx("path",{clipRule:"evenodd",d:"M8.75 1V1.75V8.68934L10.7197 6.71967L11.25 6.18934L12.3107 7.25L11.7803 7.78033L8.70711 10.8536C8.31658 11.2441 7.68342 11.2441 7.29289 10.8536L4.21967 7.78033L3.68934 7.25L4.75 6.18934L5.28033 6.71967L7.25 8.68934V1.75V1H8.75ZM13.5 9.25V13.5H2.5V9.25V8.5H1V9.25V14C1 14.5523 1.44771 15 2 15H14C14.5523 15 15 14.5523 15 14V9.25V8.5H13.5V9.25Z",fill:"currentColor",fillRule:"evenodd"})}),Vo=e=>jsxs("svg",{"aria-hidden":"true",color:"currentColor",height:16,strokeLinejoin:"round",viewBox:"0 0 16 16",width:16,...e,children:[jsx("path",{d:"M8 0V4",stroke:"currentColor",strokeWidth:"1.5"}),jsx("path",{d:"M8 16V12",opacity:"0.5",stroke:"currentColor",strokeWidth:"1.5"}),jsx("path",{d:"M3.29773 1.52783L5.64887 4.7639",opacity:"0.9",stroke:"currentColor",strokeWidth:"1.5"}),jsx("path",{d:"M12.7023 1.52783L10.3511 4.7639",opacity:"0.1",stroke:"currentColor",strokeWidth:"1.5"}),jsx("path",{d:"M12.7023 14.472L10.3511 11.236",opacity:"0.4",stroke:"currentColor",strokeWidth:"1.5"}),jsx("path",{d:"M3.29773 14.472L5.64887 11.236",opacity:"0.6",stroke:"currentColor",strokeWidth:"1.5"}),jsx("path",{d:"M15.6085 5.52783L11.8043 6.7639",opacity:"0.2",stroke:"currentColor",strokeWidth:"1.5"}),jsx("path",{d:"M0.391602 10.472L4.19583 9.23598",opacity:"0.7",stroke:"currentColor",strokeWidth:"1.5"}),jsx("path",{d:"M15.6085 10.4722L11.8043 9.2361",opacity:"0.3",stroke:"currentColor",strokeWidth:"1.5"}),jsx("path",{d:"M0.391602 5.52783L4.19583 6.7639",opacity:"0.8",stroke:"currentColor",strokeWidth:"1.5"})]}),$o=e=>jsx("svg",{"aria-hidden":"true",color:"currentColor",height:16,strokeLinejoin:"round",viewBox:"0 0 16 16",width:16,...e,children:jsx("path",{clipRule:"evenodd",d:"M1 5.25V6H2.5V5.25V2.5H5.25H6V1H5.25H2C1.44772 1 1 1.44772 1 2V5.25ZM5.25 14.9994H6V13.4994H5.25H2.5V10.7494V9.99939H1V10.7494V13.9994C1 14.5517 1.44772 14.9994 2 14.9994H5.25ZM15 10V10.75V14C15 14.5523 14.5523 15 14 15H10.75H10V13.5H10.75H13.5V10.75V10H15ZM10.75 1H10V2.5H10.75H13.5V5.25V6H15V5.25V2C15 1.44772 14.5523 1 14 1H10.75Z",fill:"currentColor",fillRule:"evenodd"})}),Fo=e=>jsx("svg",{"aria-hidden":"true",color:"currentColor",height:16,strokeLinejoin:"round",viewBox:"0 0 16 16",width:16,...e,children:jsx("path",{clipRule:"evenodd",d:"M13.5 8C13.5 4.96643 11.0257 2.5 7.96452 2.5C5.42843 2.5 3.29365 4.19393 2.63724 6.5H5.25H6V8H5.25H0.75C0.335787 8 0 7.66421 0 7.25V2.75V2H1.5V2.75V5.23347C2.57851 2.74164 5.06835 1 7.96452 1C11.8461 1 15 4.13001 15 8C15 11.87 11.8461 15 7.96452 15C5.62368 15 3.54872 13.8617 2.27046 12.1122L1.828 11.5066L3.03915 10.6217L3.48161 11.2273C4.48831 12.6051 6.12055 13.5 7.96452 13.5C11.0257 13.5 13.5 11.0336 13.5 8Z",fill:"currentColor",fillRule:"evenodd"})}),jo=e=>jsx("svg",{"aria-hidden":"true",color:"currentColor",height:16,strokeLinejoin:"round",viewBox:"0 0 16 16",width:16,...e,children:jsx("path",{clipRule:"evenodd",d:"M12.4697 13.5303L13 14.0607L14.0607 13L13.5303 12.4697L9.06065 7.99999L13.5303 3.53032L14.0607 2.99999L13 1.93933L12.4697 2.46966L7.99999 6.93933L3.53032 2.46966L2.99999 1.93933L1.93933 2.99999L2.46966 3.53032L6.93933 7.99999L2.46966 12.4697L1.93933 13L2.99999 14.0607L3.53032 13.5303L7.99999 9.06065L12.4697 13.5303Z",fill:"currentColor",fillRule:"evenodd"})}),zo=e=>jsx("svg",{"aria-hidden":"true",color:"currentColor",height:16,strokeLinejoin:"round",viewBox:"0 0 16 16",width:16,...e,children:jsx("path",{clipRule:"evenodd",d:"M13.5 10.25V13.25C13.5 13.3881 13.3881 13.5 13.25 13.5H2.75C2.61193 13.5 2.5 13.3881 2.5 13.25L2.5 2.75C2.5 2.61193 2.61193 2.5 2.75 2.5H5.75H6.5V1H5.75H2.75C1.7835 1 1 1.7835 1 2.75V13.25C1 14.2165 1.7835 15 2.75 15H13.25C14.2165 15 15 14.2165 15 13.25V10.25V9.5H13.5V10.25ZM9 1H9.75H14.2495C14.6637 1 14.9995 1.33579 14.9995 1.75V6.25V7H13.4995V6.25V3.56066L8.53033 8.52978L8 9.06011L6.93934 7.99945L7.46967 7.46912L12.4388 2.5H9.75H9V1Z",fill:"currentColor",fillRule:"evenodd"})}),Wo=e=>jsx("svg",{"aria-hidden":"true",color:"currentColor",height:16,strokeLinejoin:"round",viewBox:"0 0 16 16",width:16,...e,children:jsx("path",{clipRule:"evenodd",d:"M1.5 6.5C1.5 3.73858 3.73858 1.5 6.5 1.5C9.26142 1.5 11.5 3.73858 11.5 6.5C11.5 9.26142 9.26142 11.5 6.5 11.5C3.73858 11.5 1.5 9.26142 1.5 6.5ZM6.5 0C2.91015 0 0 2.91015 0 6.5C0 10.0899 2.91015 13 6.5 13C8.02469 13 9.42677 12.475 10.5353 11.596L13.9697 15.0303L14.5 15.5607L15.5607 14.5L15.0303 13.9697L11.596 10.5353C12.475 9.42677 13 8.02469 13 6.5C13 2.91015 10.0899 0 6.5 0ZM4.125 5.875H4.75H5.875V4.75V4.125H7.125V4.75V5.875H8.25H8.875V7.125H8.25H7.125V8.25V8.875H5.875V8.25V7.125H4.75H4.125V5.875Z",fill:"currentColor",fillRule:"evenodd"})}),qo=e=>jsx("svg",{"aria-hidden":"true",color:"currentColor",height:16,strokeLinejoin:"round",viewBox:"0 0 16 16",width:16,...e,children:jsx("path",{clipRule:"evenodd",d:"M1.5 6.5C1.5 3.73858 3.73858 1.5 6.5 1.5C9.26142 1.5 11.5 3.73858 11.5 6.5C11.5 9.26142 9.26142 11.5 6.5 11.5C3.73858 11.5 1.5 9.26142 1.5 6.5ZM6.5 0C2.91015 0 0 2.91015 0 6.5C0 10.0899 2.91015 13 6.5 13C8.02469 13 9.42677 12.475 10.5353 11.596L13.9697 15.0303L14.5 15.5607L15.5607 14.5L15.0303 13.9697L11.596 10.5353C12.475 9.42677 13 8.02469 13 6.5C13 2.91015 10.0899 0 6.5 0ZM4.125 5.875H4.75H8.25H8.875V7.125H8.25H4.75H4.125V5.875Z",fill:"currentColor",fillRule:"evenodd"})});var Ke={CheckIcon:Bo,CopyIcon:Oo,DownloadIcon:_o,ExternalLinkIcon:zo,Loader2Icon:Vo,Maximize2Icon:$o,RotateCcwIcon:Fo,XIcon:jo,ZoomInIcon:Wo,ZoomOutIcon:qo},Ko=createContext(Ke),Ks=(e,t)=>{if(e===t)return true;if(!(e&&t))return e===t;let o=Object.keys(e),n=Object.keys(t);return o.length!==n.length?false:o.every(r=>e[r]===t[r])},jt=({icons:e,children:t})=>{let o=useRef(e),n=useRef(e?{...Ke,...e}:Ke);Ks(o.current,e)||(o.current=e,n.current=e?{...Ke,...e}:Ke);let r=n.current;return jsx(Ko.Provider,{value:r,children:t})},O=()=>useContext(Ko);var ft={alertNote:"Note",alertTip:"Tip",alertImportant:"Important",alertWarning:"Warning",alertCaution:"Caution",copyCode:"Copy Code",downloadFile:"Download file",downloadDiagram:"Download diagram",downloadDiagramAsSvg:"Download diagram as SVG",downloadDiagramAsPng:"Download diagram as PNG",downloadDiagramAsMmd:"Download diagram as MMD",viewFullscreen:"View fullscreen",exitFullscreen:"Exit fullscreen",mermaidFormatSvg:"SVG",mermaidFormatPng:"PNG",mermaidFormatMmd:"MMD",zoomIn:"Zoom in",zoomOut:"Zoom out",resetView:"Reset zoom and pan",copyTable:"Copy table",copyTableAsMarkdown:"Copy table as Markdown",copyTableAsCsv:"Copy table as CSV",copyTableAsTsv:"Copy table as TSV",downloadTable:"Download table",downloadTableAsCsv:"Download table as CSV",downloadTableAsMarkdown:"Download table as Markdown",tableFormatMarkdown:"Markdown",tableFormatCsv:"CSV",tableFormatTsv:"TSV",imageNotAvailable:"Image not available",downloadImage:"Download image",openExternalLink:"Open external link?",externalLinkWarning:"You're about to visit an external website.",close:"Close",copyLink:"Copy link",copied:"Copied",openLink:"Open link"},gt=createContext(ft),_=()=>useContext(gt);var ht=({onCopy:e,onError:t,timeout:o=2e3,children:n,className:r,code:s,...a})=>{let c=v(),[i,l]=useState(false),d=useRef(0),{code:m}=pt(),{isAnimating:u}=useContext(E),p=_(),f=s!=null?s:m,h=async()=>{var y;if(typeof window=="undefined"||!((y=navigator==null?void 0:navigator.clipboard)!=null&&y.writeText)){t==null||t(new Error("Clipboard API not available"));return}try{i||(await navigator.clipboard.writeText(f),l(!0),e==null||e(),d.current=window.setTimeout(()=>l(!1),o));}catch(x){t==null||t(x);}};useEffect(()=>()=>{window.clearTimeout(d.current);},[]);let g=O(),b=i?g.CheckIcon:g.CopyIcon;return jsxs(Fragment,{children:[jsx("button",{"aria-label":p.copyCode,className:c("cursor-pointer p-1 text-muted-foreground transition-all hover:text-foreground disabled:cursor-not-allowed disabled:opacity-50",r),"data-streamdown":"code-block-copy-button",disabled:u,onClick:h,title:p.copyCode,type:"button",...a,children:n!=null?n:jsx(b,{"aria-hidden":"true",size:14})}),i&&jsx("output",{"aria-live":"polite",className:"sr-only",children:p.copied})]})};var Ie=(e,t,o)=>{if(typeof e=="boolean")return o;let n=e[t];if(typeof n!="object")return o;let r=n.download;return typeof r!="object"?o:r.filename||o};var Go={"1c":"1c","1c-query":"1cq",abap:"abap","actionscript-3":"as",ada:"ada",adoc:"adoc","angular-html":"html","angular-ts":"ts",apache:"conf",apex:"cls",apl:"apl",applescript:"applescript",ara:"ara",asciidoc:"adoc",asm:"asm",astro:"astro",awk:"awk",ballerina:"bal",bash:"sh",bat:"bat",batch:"bat",be:"be",beancount:"beancount",berry:"berry",bibtex:"bib",bicep:"bicep",blade:"blade.php",bsl:"bsl",c:"c","c#":"cs","c++":"cpp",cadence:"cdc",cairo:"cairo",cdc:"cdc",clarity:"clar",clj:"clj",clojure:"clj","closure-templates":"soy",cmake:"cmake",cmd:"cmd",cobol:"cob",codeowners:"CODEOWNERS",codeql:"ql",coffee:"coffee",coffeescript:"coffee","common-lisp":"lisp",console:"sh",coq:"v",cpp:"cpp",cql:"cql",crystal:"cr",cs:"cs",csharp:"cs",css:"css",csv:"csv",cue:"cue",cypher:"cql",d:"d",dart:"dart",dax:"dax",desktop:"desktop",diff:"diff",docker:"dockerfile",dockerfile:"dockerfile",dotenv:"env","dream-maker":"dm",edge:"edge",elisp:"el",elixir:"ex",elm:"elm","emacs-lisp":"el",erb:"erb",erl:"erl",erlang:"erl",f:"f","f#":"fs",f03:"f03",f08:"f08",f18:"f18",f77:"f77",f90:"f90",f95:"f95",fennel:"fnl",fish:"fish",fluent:"ftl",for:"for","fortran-fixed-form":"f","fortran-free-form":"f90",fs:"fs",fsharp:"fs",fsl:"fsl",ftl:"ftl",gdresource:"tres",gdscript:"gd",gdshader:"gdshader",genie:"gs",gherkin:"feature","git-commit":"gitcommit","git-rebase":"gitrebase",gjs:"js",gleam:"gleam","glimmer-js":"js","glimmer-ts":"ts",glsl:"glsl",gnuplot:"plt",go:"go",gql:"gql",graphql:"graphql",groovy:"groovy",gts:"gts",hack:"hack",haml:"haml",handlebars:"hbs",haskell:"hs",haxe:"hx",hbs:"hbs",hcl:"hcl",hjson:"hjson",hlsl:"hlsl",hs:"hs",html:"html","html-derivative":"html",http:"http",hxml:"hxml",hy:"hy",imba:"imba",ini:"ini",jade:"jade",java:"java",javascript:"js",jinja:"jinja",jison:"jison",jl:"jl",js:"js",json:"json",json5:"json5",jsonc:"jsonc",jsonl:"jsonl",jsonnet:"jsonnet",jssm:"jssm",jsx:"jsx",julia:"jl",kotlin:"kt",kql:"kql",kt:"kt",kts:"kts",kusto:"kql",latex:"tex",lean:"lean",lean4:"lean",less:"less",liquid:"liquid",lisp:"lisp",lit:"lit",llvm:"ll",log:"log",logo:"logo",lua:"lua",luau:"luau",make:"mak",makefile:"mak",markdown:"md",marko:"marko",matlab:"m",md:"md",mdc:"mdc",mdx:"mdx",mediawiki:"wiki",mermaid:"mmd",mips:"s",mipsasm:"s",mmd:"mmd",mojo:"mojo",move:"move",nar:"nar",narrat:"narrat",nextflow:"nf",nf:"nf",nginx:"conf",nim:"nim",nix:"nix",nu:"nu",nushell:"nu",objc:"m","objective-c":"m","objective-cpp":"mm",ocaml:"ml",pascal:"pas",perl:"pl",perl6:"p6",php:"php",plsql:"pls",po:"po",polar:"polar",postcss:"pcss",pot:"pot",potx:"potx",powerquery:"pq",powershell:"ps1",prisma:"prisma",prolog:"pl",properties:"properties",proto:"proto",protobuf:"proto",ps:"ps",ps1:"ps1",pug:"pug",puppet:"pp",purescript:"purs",py:"py",python:"py",ql:"ql",qml:"qml",qmldir:"qmldir",qss:"qss",r:"r",racket:"rkt",raku:"raku",razor:"cshtml",rb:"rb",reg:"reg",regex:"regex",regexp:"regexp",rel:"rel",riscv:"s",rs:"rs",rst:"rst",ruby:"rb",rust:"rs",sas:"sas",sass:"sass",scala:"scala",scheme:"scm",scss:"scss",sdbl:"sdbl",sh:"sh",shader:"shader",shaderlab:"shader",shell:"sh",shellscript:"sh",shellsession:"sh",smalltalk:"st",solidity:"sol",soy:"soy",sparql:"rq",spl:"spl",splunk:"spl",sql:"sql","ssh-config":"config",stata:"do",styl:"styl",stylus:"styl",svelte:"svelte",swift:"swift","system-verilog":"sv",systemd:"service",talon:"talon",talonscript:"talon",tasl:"tasl",tcl:"tcl",templ:"templ",terraform:"tf",tex:"tex",tf:"tf",tfvars:"tfvars",toml:"toml",ts:"ts","ts-tags":"ts",tsp:"tsp",tsv:"tsv",tsx:"tsx",turtle:"ttl",twig:"twig",typ:"typ",typescript:"ts",typespec:"tsp",typst:"typ",v:"v",vala:"vala",vb:"vb",verilog:"v",vhdl:"vhdl",vim:"vim",viml:"vim",vimscript:"vim",vue:"vue","vue-html":"html","vue-vine":"vine",vy:"vy",vyper:"vy",wasm:"wasm",wenyan:"wy",wgsl:"wgsl",wiki:"wiki",wikitext:"wiki",wit:"wit",wl:"wl",wolfram:"wl",xml:"xml",xsl:"xsl",yaml:"yaml",yml:"yml",zenscript:"zs",zig:"zig",zsh:"zsh",\u6587\u8A00:"wy"},Wt=({onDownload:e,onError:t,language:o,children:n,className:r,code:s,...a})=>{let c=v(),{code:i}=pt(),{isAnimating:l,controls:d}=useContext(E),m=_(),u=O(),p=s!=null?s:i,f=o&&o in Go?Go[o]:"txt",h=`${Ie(d,"code","file")}.${f}`,g="text/plain",b=()=>{try{oe(h,p,g),e==null||e();}catch(y){t==null||t(y);}};return jsx("button",{"aria-label":m.downloadFile,className:c("cursor-pointer p-1 text-muted-foreground transition-all hover:text-foreground disabled:cursor-not-allowed disabled:opacity-50",r),"data-streamdown":"code-block-download-button",disabled:l,onClick:b,title:m.downloadFile,type:"button",...a,children:n!=null?n:jsx(u.DownloadIcon,{size:14})})};var bt=()=>{let{Loader2Icon:e}=O(),t=v();return jsxs("div",{className:t("w-full divide-y divide-border overflow-hidden rounded-xl border border-border"),children:[jsx("div",{className:t("h-[46px] w-full bg-muted/80")}),jsx("div",{className:t("flex w-full items-center justify-center p-4"),children:jsx(e,{className:t("size-4 animate-spin")})})]})};var Ge=0,he=()=>{Ge+=1,Ge===1&&(document.body.style.overflow="hidden");},be=()=>{Ge=Math.max(0,Ge-1),Ge===0&&(document.body.style.overflow="");};var aa=["github-light","github-dark"],ia={enabled:true},la={codeBlockMaxHeight:400,shikiTheme:aa,controls:true,isAnimating:false,lineNumbers:true,listStyle:"hierarchical",mode:"streaming",mermaid:void 0,linkSafety:ia,portal:void 0,tableMaxHeight:300},E=createContext(la);var ua=/\.[^/.]+$/,Jo=(e,t)=>{if(typeof e=="boolean")return e;let o=e.image;return o===false?false:o===true||o===void 0?true:o[t]!==false},Yo=({node:e,className:t,src:o,alt:n,onLoad:r,onError:s,onClick:a,...c})=>{let{DownloadIcon:i,XIcon:l}=O(),d=v(),m=useRef(null),[u,p]=useState(false),[f,h]=useState(false),[g,b]=useState(false),{controls:y}=useContext(E),x=_(),P=Jo(y,"download"),S=Jo(y,"fullscreen"),M=c.width!=null||c.height!=null,C=P&&(u||M)&&!f,D=f&&!M,B=S&&!!o&&!f&&u;useEffect(()=>{let R=m.current;if(R!=null&&R.complete){let z=R.naturalWidth>0;p(z),h(!z);}},[]),useEffect(()=>{if(!g)return;he();let R=z=>{z.key==="Escape"&&b(false);};return document.addEventListener("keydown",R),()=>{document.removeEventListener("keydown",R),be();}},[g]);let j=useCallback(R=>{p(true),h(false),r==null||r(R);},[r]),Y=useCallback(R=>{p(false),h(true),s==null||s(R);},[s]),F=useCallback(()=>{B&&b(true);},[B]),H=useCallback(()=>{b(false);},[]),V=useCallback(R=>{a==null||a(R),!R.defaultPrevented&&F();},[a,F]),U=async R=>{if(R.stopPropagation(),!!o)try{let re=await(await fetch(o)).blob(),le=new URL(o,window.location.origin).pathname.split("/").pop()||"",ee=le.split(".").pop(),Ae=le.includes(".")&&ee!==void 0&&ee.length<=4,X="";if(Ae)X=le;else {let W=re.type,T="png";W.includes("jpeg")||W.includes("jpg")?T="jpg":W.includes("png")?T="png":W.includes("svg")?T="svg":W.includes("gif")?T="gif":W.includes("webp")&&(T="webp"),X=`${(n||le||"image").replace(ua,"")}.${T}`;}oe(X,re,re.type);}catch(z){window.open(o,"_blank");}};return o?o==="streamdown:incomplete-image"?jsx("div",{className:d("group relative my-4 inline-block"),"data-incomplete":"true","data-streamdown":"image-wrapper",children:jsx("div",{className:d("h-24 w-48 animate-pulse rounded-lg bg-muted"),"data-streamdown":"image-placeholder"})}):jsxs(Fragment,{children:[jsxs("div",{className:d("group/image not-prose relative my-2 block max-w-full"),"data-streamdown":"image-wrapper",children:[jsx("img",{alt:n,className:d("m-0 block h-auto max-w-full rounded-lg",B&&"cursor-zoom-in",D&&"hidden",t),"data-streamdown":"image",onClick:V,onError:Y,onLoad:j,ref:m,src:o,...c}),D&&jsx("span",{className:d("text-muted-foreground text-xs italic"),"data-streamdown":"image-fallback",children:x.imageNotAvailable}),C&&jsx("button",{className:d("absolute right-2 bottom-2 flex h-8 w-8 cursor-pointer items-center justify-center rounded-md border border-border bg-background/90 shadow-sm backdrop-blur-sm transition-all duration-200 hover:bg-background","opacity-0 focus-visible:opacity-100 group-hover/image:opacity-100"),onClick:U,title:x.downloadImage,type:"button",children:jsx(i,{size:14})})]}),g?createPortal(jsxs("div",{className:d("fixed inset-0 z-50 flex items-center justify-center bg-black/90 p-4"),"data-streamdown":"image-lightbox",onClick:H,onKeyDown:R=>{R.key==="Escape"&&H();},role:"button",tabIndex:0,children:[jsx("button",{className:d("absolute top-4 right-4 z-10 rounded-md p-2 text-white/80 transition-colors hover:bg-white/10 hover:text-white"),onClick:H,title:x.exitFullscreen,type:"button",children:jsx(l,{size:20})}),jsx("div",{onClick:R=>R.stopPropagation(),onKeyDown:R=>R.stopPropagation(),role:"presentation",children:jsx("img",{alt:n,className:d("max-h-[calc(100vh-2rem)] max-w-[calc(100vw-2rem)] object-contain"),"data-streamdown":"image-lightbox-img",src:o})})]}),document.body):null]}):null};var Be=e=>{let t=typeof e=="function"?e():e;return t!=null?t:document.body};var tn=({url:e,isOpen:t,onClose:o,onConfirm:n})=>{let{CheckIcon:r,CopyIcon:s,ExternalLinkIcon:a,XIcon:c}=O(),i=v(),[l,d]=useState(false),m=_(),{portal:u}=useContext(E),p=useCallback(async()=>{try{await navigator.clipboard.writeText(e),d(!0),setTimeout(()=>d(!1),2e3);}catch(g){}},[e]),f=useCallback(()=>{n(),o();},[n,o]);if(useEffect(()=>{if(t){he();let g=b=>{b.key==="Escape"&&o();};return document.addEventListener("keydown",g),()=>{document.removeEventListener("keydown",g),be();}}},[t,o]),!t||typeof document=="undefined")return null;let h=jsx("div",{className:i("fixed inset-0 z-50 flex items-center justify-center bg-background/50 backdrop-blur-sm"),"data-streamdown":"link-safety-modal",onClick:o,onKeyDown:g=>{g.key==="Escape"&&o();},role:"button",tabIndex:0,children:jsxs("div",{className:i("relative mx-4 flex w-full max-w-md flex-col gap-4 rounded-xl border bg-background p-6 shadow-lg"),onClick:g=>g.stopPropagation(),onKeyDown:g=>g.stopPropagation(),role:"presentation",children:[jsx("button",{className:i("absolute top-4 right-4 rounded-md p-1 text-muted-foreground transition-all hover:bg-muted hover:text-foreground"),onClick:o,title:m.close,type:"button",children:jsx(c,{size:16})}),jsxs("div",{className:i("flex flex-col gap-2"),children:[jsxs("div",{className:i("flex items-center gap-2 font-semibold text-lg"),children:[jsx(a,{size:20}),jsx("span",{children:m.openExternalLink})]}),jsx("p",{className:i("text-muted-foreground text-sm"),children:m.externalLinkWarning})]}),jsx("div",{className:i("break-all rounded-md bg-muted p-3 font-mono text-sm",e.length>100&&"max-h-32 overflow-y-auto"),children:e}),jsxs("div",{className:i("flex gap-2"),children:[jsx("button",{className:i("flex flex-1 items-center justify-center gap-2 rounded-md border bg-background px-4 py-2 font-medium text-sm transition-all hover:bg-muted"),onClick:p,type:"button",children:l?jsxs(Fragment,{children:[jsx(r,{size:14}),jsx("span",{children:m.copied})]}):jsxs(Fragment,{children:[jsx(s,{size:14}),jsx("span",{children:m.copyLink})]})}),jsxs("button",{className:i("flex flex-1 items-center justify-center gap-2 rounded-md bg-primary px-4 py-2 font-medium text-primary-foreground text-sm transition-all hover:bg-primary/90"),onClick:f,type:"button",children:[jsx(a,{size:14}),jsx("span",{children:m.openLink})]})]})]})});return createPortal(h,Be(u))};var on=()=>e=>{visit(e,"html",(o,n,r)=>{!r||typeof n!="number"||(r.children[n]={type:"text",value:o.value});});};var rn=[],sn={allowDangerousHtml:true},yt=new WeakMap,Xt=class{constructor(){this.cache=new Map;this.keyCache=new WeakMap;this.maxSize=100;}generateCacheKey(t){let o=this.keyCache.get(t);if(o)return o;let n=t.rehypePlugins,r=t.remarkPlugins,s=t.remarkRehypeOptions;if(!(n||r||s)){let m="default";return this.keyCache.set(t,m),m}let a=m=>{if(!m||m.length===0)return "";let u="";for(let p=0;p<m.length;p+=1){let f=m[p];if(p>0&&(u+=","),Array.isArray(f)){let[h,g]=f;if(typeof h=="function"){let b=yt.get(h);b||(b=h.name,yt.set(h,b)),u+=b;}else u+=String(h);u+=":",u+=JSON.stringify(g);}else if(typeof f=="function"){let h=yt.get(f);h||(h=f.name,yt.set(f,h)),u+=h;}else u+=String(f);}return u},c=a(n),i=a(r),l=s?JSON.stringify(s):"",d=`${i}::${c}::${l}`;return this.keyCache.set(t,d),d}get(t){let o=this.generateCacheKey(t),n=this.cache.get(o);return n&&(this.cache.delete(o),this.cache.set(o,n)),n}set(t,o){let n=this.generateCacheKey(t);if(this.cache.size>=this.maxSize){let r=this.cache.keys().next().value;r&&this.cache.delete(r);}this.cache.set(n,o);}clear(){this.cache.clear();}},an=new Xt,Ue=e=>{let t=Ma(e),o=e.children||"",n=t.runSync(t.parse(o),o);return Aa(n,e)},Ma=e=>{let t=an.get(e);if(t)return t;let o=Ea(e);return an.set(e,o),o},Ia=e=>e.some(t=>Array.isArray(t)?t[0]===nn:t===nn),Ea=e=>{let t=e.rehypePlugins||rn,o=e.remarkPlugins||rn,n=Ia(t)?o:[...o,on],r=e.remarkRehypeOptions?{...sn,...e.remarkRehypeOptions}:sn;return unified().use(ka).use(n).use(Ta,r).use(t)},ln=e=>e,Ra=(e,t,o,n)=>{o?e.children.splice(t,1):e.children[t]={type:"text",value:n};},La=(e,t)=>{var o;for(let n in urlAttributes)if(Object.hasOwn(urlAttributes,n)&&Object.hasOwn(e.properties,n)){let r=e.properties[n],s=urlAttributes[n];(s===null||s.includes(e.tagName))&&(e.properties[n]=(o=t(String(r||""),n,e))!=null?o:void 0);}},Na=(e,t,o,n,r,s)=>{let a=false;return n?a=!n.includes(e.tagName):r&&(a=r.includes(e.tagName)),!a&&s&&typeof t=="number"&&(a=!s(e,t,o)),a},Aa=(e,t)=>{let{allowElement:o,allowedElements:n,disallowedElements:r,skipHtml:s,unwrapDisallowed:a,urlTransform:c}=t;if(o||n||r||s||c){let l=c||ln;visit(e,(d,m,u)=>{if(d.type==="raw"&&u&&typeof m=="number")return Ra(u,m,s,d.value),m;if(d.type==="element"&&(La(d,l),Na(d,m,u,n,r,o)&&u&&typeof m=="number"))return a&&d.children?u.children.splice(m,1,...d.children):u.children.splice(m,1),m});}return toJsxRuntime(e,{Fragment:Fragment,components:t.components,ignoreInvalidStyle:true,jsx:jsx,jsxs:jsxs,passKeys:true,passNode:true})};var Ct=createContext(null),Ut=()=>useContext(Ct),om=()=>{var t;let e=Ut();return (t=e==null?void 0:e.code)!=null?t:null},Oe=()=>{var t;let e=Ut();return (t=e==null?void 0:e.mermaid)!=null?t:null};var cn=e=>{var o;let t=Ut();return t!=null&&t.renderers&&e&&(o=t.renderers.find(n=>Array.isArray(n.language)?n.language.includes(e):n.language===e))!=null?o:null};var Ba=/(<svg\b)/,un=/<svg\b[^>]*>/i,Oa=/\bviewBox=(['"])(.*?)\1/i,_a=/\swidth=(['"]).*?\1/i,Va=/\sheight=(['"]).*?\1/i,dn=/\sstyle=(['"])(.*?)\1/i,mn=/^<svg/i,$a=/^width\s*:/i,Fa=/^height\s*:/i,ja=/^max-width\s*:/i,za=/[\s,]+/,Wa=e=>!e.includes("xlink:")||e.includes("xmlns:xlink")?e:e.replace(Ba,'$1 xmlns:xlink="http://www.w3.org/1999/xlink"'),pn=e=>{if(typeof DOMParser=="undefined"||typeof XMLSerializer=="undefined")return e;let o=new DOMParser().parseFromString(e,"text/html").querySelector("svg");return o?new XMLSerializer().serializeToString(o):e},Jt=e=>{let t=e.match(un);if(!t)return null;let n=t[0].match(Oa),r=n==null?void 0:n[2];if(!r)return null;let s=r.trim().split(za).map(i=>Number.parseFloat(i));if(s.length<4||s.slice(0,4).some(Number.isNaN))return null;let a=s[2],c=s[3];return a>0&&c>0?{height:c,width:a}:null},fn=e=>{let t=e.match(un);if(!t)return e;try{let o=t[0],n=Jt(e);if(!n)return e;let{width:r,height:s}=n,a=o.replace(_a,"").replace(Va,""),c=a.match(dn),i=`width:${r}px;height:${s}px;max-width:none;`;if(c){let l=c[1],m=c[2].split(";").map(p=>p.trim()).filter(Boolean).filter(p=>!($a.test(p)||Fa.test(p)||ja.test(p))).join(";"),u=`${i}${m?`${m};`:""}`;a=a.replace(dn,` style=${l}${u}${l}`);}else a=a.replace(mn,`<svg style="${i}"`);return a=a.replace(mn,`<svg width="${r}" height="${s}"`),e.replace(o,a)}catch(o){return e}},gn=(e,t)=>{var n;let o=(n=void 0)!=null?n:5;return new Promise((r,s)=>{let a=Wa(e),c="data:image/svg+xml;base64,"+btoa(unescape(encodeURIComponent(a))),i=new Image;i.crossOrigin="anonymous",i.onload=()=>{let l=document.createElement("canvas"),d=i.width*o,m=i.height*o;l.width=d,l.height=m;let u=l.getContext("2d");if(!u){s(new Error("Failed to create 2D canvas context for PNG export"));return}u.drawImage(i,0,0,d,m),l.toBlob(p=>{if(!p){s(new Error("Failed to create PNG blob"));return}r(p);},"image/png");},i.onerror=()=>s(new Error("Failed to load SVG image")),i.src=c;})};var wt=({chart:e,children:t,className:o,onDownload:n,config:r,onError:s})=>{let a=v(),[c,i]=useState(false),l=useRef(null),{isAnimating:d,controls:m}=useContext(E),u=O(),p=Oe(),f=_(),h=Ie(m,"mermaid","diagram"),g=async b=>{try{if(b==="mmd"){let C=`${h}.mmd`;oe(C,e,"text/plain"),i(!1),n==null||n(b);return}if(!p){s==null||s(new Error("Mermaid plugin not available"));return}let y=p.getMermaid(r),x=e.split("").reduce((C,D)=>(C<<5)-C+D.charCodeAt(0)|0,0),P=`mermaid-${Math.abs(x)}-${Date.now()}-${Math.random().toString(36).substring(2,9)}`,{svg:S}=await y.render(P,e);if(!S){s==null||s(new Error("SVG not found. Please wait for the diagram to render."));return}let M=pn(S);if(b==="svg"){let C=`${h}.svg`;oe(C,M,"image/svg+xml"),i(!1),n==null||n(b);return}if(b==="png"){let C=await gn(M);oe(`${h}.png`,C,"image/png"),n==null||n(b),i(!1);return}}catch(y){s==null||s(y);}};return useEffect(()=>{let b=y=>{let x=y.composedPath();l.current&&!x.includes(l.current)&&i(false);};return document.addEventListener("mousedown",b),()=>{document.removeEventListener("mousedown",b);}},[]),jsxs("div",{className:a("relative"),ref:l,children:[jsx("button",{"aria-label":f.downloadDiagram,className:a("cursor-pointer p-1 text-muted-foreground transition-all hover:text-foreground disabled:cursor-not-allowed disabled:opacity-50",o),disabled:d,onClick:()=>i(!c),title:f.downloadDiagram,type:"button",children:t!=null?t:jsx(u.DownloadIcon,{"aria-hidden":"true",size:14})}),c?jsxs("div",{className:a("absolute top-full right-0 z-10 mt-1 min-w-[120px] overflow-hidden rounded-md border border-border bg-background shadow-lg"),children:[jsx("button",{"aria-label":f.downloadDiagramAsSvg,className:a("w-full px-3 py-2 text-left text-sm transition-colors hover:bg-muted/40"),onClick:()=>g("svg"),title:f.downloadDiagramAsSvg,type:"button",children:f.mermaidFormatSvg}),jsx("button",{"aria-label":f.downloadDiagramAsPng,className:a("w-full px-3 py-2 text-left text-sm transition-colors hover:bg-muted/40"),onClick:()=>g("png"),title:f.downloadDiagramAsPng,type:"button",children:f.mermaidFormatPng}),jsx("button",{"aria-label":f.downloadDiagramAsMmd,className:a("w-full px-3 py-2 text-left text-sm transition-colors hover:bg-muted/40"),onClick:()=>g("mmd"),title:f.downloadDiagramAsMmd,type:"button",children:f.mermaidFormatMmd})]}):null]})};var Cn=({chart:e,config:t,onFullscreen:o,onExit:n,className:r,...s})=>{let{Maximize2Icon:a,XIcon:c}=O(),i=v(),[l,d]=useState(false),{isAnimating:m,controls:u,portal:p}=useContext(E),f=_(),h=(()=>{if(typeof u=="boolean")return u;let y=u.mermaid;return y===false?false:y===true||y===void 0?true:y.panZoom!==false})(),g=(()=>{if(typeof u=="boolean")return u;let y=u.mermaid;return y===false?false:y===true||y===void 0?true:y.download!==false})(),b=()=>{d(!l);};return useEffect(()=>{if(l){he();let y=x=>{x.key==="Escape"&&d(false);};return document.addEventListener("keydown",y),()=>{document.removeEventListener("keydown",y),be();}}},[l]),useEffect(()=>{l?o==null||o():n&&n();},[l,o,n]),jsxs(Fragment,{children:[jsx("button",{className:i("cursor-pointer p-1 text-muted-foreground transition-all hover:text-foreground disabled:cursor-not-allowed disabled:opacity-50",r),disabled:m,onClick:b,title:f.viewFullscreen,type:"button",...s,"aria-label":f.viewFullscreen,children:jsx(a,{"aria-hidden":"true",size:14})}),l?createPortal(jsxs("div",{"aria-label":f.viewFullscreen,"aria-modal":"true",className:i("fixed inset-0 z-50 flex items-center justify-center bg-background/95 backdrop-blur-sm"),"data-streamdown":"mermaid-fullscreen",onClick:b,onKeyDown:y=>{y.key==="Escape"&&b();},role:"dialog",children:[jsxs("div",{className:i("absolute top-4 right-4 z-10 flex items-center gap-1"),onClick:y=>y.stopPropagation(),onKeyDown:y=>y.stopPropagation(),role:"presentation",children:[g?jsx(wt,{chart:e,config:t}):null,jsx("button",{"aria-label":f.exitFullscreen,className:i("rounded-md p-2 text-muted-foreground transition-all hover:bg-muted hover:text-foreground"),onClick:b,title:f.exitFullscreen,type:"button",children:jsx(c,{"aria-hidden":"true",size:20})})]}),jsx("div",{className:i("flex size-full items-center justify-center p-4"),onClick:y=>y.stopPropagation(),onKeyDown:y=>y.stopPropagation(),role:"presentation",children:jsx(yn,{chart:e,className:i("size-full [&_svg]:h-auto [&_svg]:w-auto"),config:t,fullscreen:true,showControls:h})})]}),Be(p)):null]})};function Qt(e){var o;if(e.nodeType===Node.TEXT_NODE)return (o=e.textContent)!=null?o:"";if(e.nodeType!==Node.ELEMENT_NODE)return "";let t=e;return t.tagName==="BR"?`
|
|
6
|
-
`:Array.from(t.childNodes).map(
|
|
2
|
+
import {createContext,memo,useContext,useMemo,lazy,isValidElement,useLayoutEffect,useId,useRef,useEffect,useDeferredValue,cloneElement,createElement,useState,useCallback,Suspense}from'react';import {harden}from'rehype-harden';import rn from'rehype-raw';import Zr,{defaultSchema}from'rehype-sanitize';import Ml from'remark-gfm';import Il from'remend';import {visitParents,SKIP as SKIP$1}from'unist-util-visit-parents';import {clsx}from'clsx';import {twMerge}from'tailwind-merge';import {jsx,jsxs,Fragment}from'react/jsx-runtime';import {createPortal}from'react-dom';import {toJsxRuntime}from'hast-util-to-jsx-runtime';import {urlAttributes}from'html-url-attributes';import Pa from'remark-parse';import Sa from'remark-rehype';import {unified}from'unified';import {visit,SKIP}from'unist-util-visit';import {toText}from'hast-util-to-text';import {Lexer}from'marked';var ss=300,as="300px",is=500;function bo(e={}){let{immediate:t=false,debounceDelay:o=ss,rootMargin:n=as,idleTimeout:r=is}=e,[s,a]=useState(false),c=useRef(null),i=useRef(null),l=useRef(null),d=useMemo(()=>p=>{let f=Date.now();return window.setTimeout(()=>{p({didTimeout:false,timeRemaining:()=>Math.max(0,50-(Date.now()-f))});},1)},[]),m=useMemo(()=>typeof window!="undefined"&&window.requestIdleCallback?(p,f)=>window.requestIdleCallback(p,f):d,[d]),u=useMemo(()=>typeof window!="undefined"&&window.cancelIdleCallback?p=>window.cancelIdleCallback(p):p=>{clearTimeout(p);},[]);return useEffect(()=>{if(t){a(true);return}let p=c.current;if(!p)return;i.current&&(clearTimeout(i.current),i.current=null),l.current&&(u(l.current),l.current=null);let f=()=>{i.current&&(clearTimeout(i.current),i.current=null),l.current&&(u(l.current),l.current=null);},h=x=>{l.current=m(P=>{P.timeRemaining()>0||P.didTimeout?(a(true),x.disconnect()):l.current=m(()=>{a(true),x.disconnect();},{timeout:r/2});},{timeout:r});},g=x=>{f(),i.current=window.setTimeout(()=>{var M,C;let P=x.takeRecords();(P.length===0||(C=(M=P.at(-1))==null?void 0:M.isIntersecting)!=null&&C)&&h(x);},o);},b=(x,P)=>{x.isIntersecting?g(P):f();},y=new IntersectionObserver(x=>{for(let P of x)b(P,y);},{rootMargin:n,threshold:0});return y.observe(p),()=>{i.current&&clearTimeout(i.current),l.current&&u(l.current),y.disconnect();}},[t,o,n,r,u,m]),{shouldRender:s,containerRef:c}}var ls=320,cs=4,wo=()=>typeof performance=="undefined"?Date.now():performance.now();function Nt(e){var s,a;let t=(s=e==null?void 0:e.now)!=null?s:wo,o=(a=e==null?void 0:e.maxBacklogMs)!=null?a:ls,n=0,r=0;return {now:t,beginPass(c){r=Math.min(Math.max(n,c),c+o);},mark(){return r},rewind(c){r=c;},take(c,i,l){if(c<=0)return {baseDelay:0,step:Math.max(0,i)};let d=Math.max(0,i),m=d===0?0:Math.min(d,cs),u=Math.max(r,l),p=l+o,f=u+Math.max(0,c-1)*d,h=d;if(f>p&&c>1)if(u<p){let b=p-u;h=Math.max(m,b/(c-1));}else h=m;let g=Math.max(0,Math.round(u-l));return r=u+c*h,{baseDelay:g,step:h}},commitPass(){n=r;}}}function ds(){return {current:0}}var xo=/\s/,At=/^\s+$/,ms=new Set(["pre","svg","math","annotation"]),us=new Set(["svg","math","annotation"]),Lt=new Set(["img","hr"]),ps=new Set(["ul","ol","li"]),Se=e=>typeof e=="object"&&e!==null&&"type"in e&&e.type==="element",Dt=(e,t)=>{let o=t?us:ms;return e.some(n=>Se(n)&&o.has(n.tagName))},fs=e=>{for(let t=e.length-1;t>=0;t-=1){let o=e[t];if(Se(o)&&o.tagName==="li")return o}},gs=(e,t,o,n)=>{(e.properties)!=null||(e.properties={}),e.properties["data-sd-animate-marker"]=true,e.properties.style=`--sd-marker-duration:${t}ms;--sd-marker-delay:${o}ms;--sd-marker-easing:${n}`;},vo=e=>{for(let t of e.children)if(Se(t)){if(t.tagName==="input")return t;if(ps.has(t.tagName))continue;let o=vo(t);if(o)return o}},ko=(e,t,o,n)=>{(e.properties)!=null||(e.properties={}),e.properties["data-sd-animate"]=true;let r=typeof e.properties.style=="string"?`${e.properties.style};`:"";e.properties.style=`${r}--sd-animation:sd-${t.animation};--sd-duration:${o}ms;--sd-easing:${t.easing};--sd-delay:${n}ms`;},hs=(e,t,o,n)=>{let r=vo(e);r&&ko(r,t,o,n);},To=e=>{var t;for(let o=e.length-1;o>=0;o-=1){let n=e[o];if(Se(n)){if((t=n.properties)!=null&&t["data-sd-animated"])break;n.properties={...n.properties,"data-sd-animated":true};}}},Po=e=>{let t=[],o="",n=false;for(let r of e){let s=xo.test(r);if(s!==n&&o){if(s){o+=r,n=true;continue}t.push(o),o="";}o+=r,n=s;}return o&&t.push(o),t},So=e=>{let t=[],o="";for(let n of e)xo.test(n)?t.length>0&&!At.test(t.at(-1))?t[t.length-1]+=n:o+=n:(o&&(t.push(o),o=""),t.push(n));return o&&(t.length>0?t[t.length-1]+=o:t.push(o)),t},bs=(e,t,o,n,r,s)=>{let a=`--sd-animation:sd-${t};--sd-duration:${r?0:o}ms;--sd-easing:${n}`;return s&&(a+=`;--sd-delay:${Math.round(s)}ms`),{type:"element",tagName:"span",properties:{"data-sd-animate":true,style:a},children:[{type:"text",value:e}]}},ys=(e,t,o,n)=>{let r=0,s=0;return visitParents(e,a=>a.type==="text"||Se(a)&&Lt.has(a.tagName),(a,c)=>{if(Dt(c,o.animateCodeBlocks))return SKIP$1;if(Se(a)&&Lt.has(a.tagName)){n>0&&s<n||(r+=1),s+=1;return}let i=a.value;if(!i.trim()){s+=i.length;return}let l=t.sep==="char"?So(i):Po(i);for(let d of l){let m=s;s+=d.length,!At.test(d)&&(n>0&&m<n||(r+=1));}}),r},Cs=(e,t,o,n,r,s)=>{if(Dt(t,n.animateCodeBlocks))return;let a=n.prevContentLength,c=r.count;r.count+=1;let i=a>0&&c<a,l=i?0:s.baseDelay+r.newIndex++*s.step;ko(e,o,i?0:o.duration,l),To(t);},ws=(e,t,o,n,r,s)=>{var b;let a=t.at(-1);if(!(a&&"children"in a))return;if(Dt(t,n.animateCodeBlocks))return SKIP$1;let c=a,i=c.children.indexOf(e);if(i===-1)return;let l=e.value;if(!l.trim()){r.count+=l.length;return}let d=o.sep==="char"?So(l):Po(l),m=n.prevContentLength,u=false,p=fs(t),f=!!(p&&!((b=p.properties)!=null&&b["data-sd-animate-marker"])),h=false,g=d.map(y=>{let x=r.count;if(r.count+=y.length,At.test(y))return {type:"text",value:y};let P=m>0&&x<m,S=P?0:s.baseDelay+r.newIndex++*s.step;if(p&&f&&!h){let M=P?0:o.duration;gs(p,M,S,o.easing),hs(p,o,M,S),h=true;}return u=true,bs(y,o.animation,o.duration,o.easing,P,S)});return u&&To(t),c.children.splice(i,1,...g),i+g.length},xs=0;function ct(e){var s,a,c,i,l;let t={animation:(s=e==null?void 0:e.animation)!=null?s:"fadeIn",duration:(a=e==null?void 0:e.duration)!=null?a:150,easing:(c=e==null?void 0:e.easing)!=null?c:"ease",sep:(i=e==null?void 0:e.sep)!=null?i:"word",stagger:(l=e==null?void 0:e.stagger)!=null?l:40,timeline:e==null?void 0:e.timeline},o={animateCodeBlocks:false,committedCharCount:0,prevContentLength:0,lastRenderCharCount:0,pendingMark:null},n=xs++,r=()=>d=>{var h;let m={count:0,newIndex:0};o.prevContentLength=o.committedCharCount;let u=t.timeline,p=(h=u==null?void 0:u.now())!=null?h:wo();u&&(o.pendingMark===null?o.pendingMark=u.mark():u.rewind(o.pendingMark));let f=u?u.take(ys(d,t,o,o.prevContentLength),t.stagger,p):{baseDelay:0,step:t.stagger};visitParents(d,g=>g.type==="text"||Se(g)&&Lt.has(g.tagName),(g,b)=>{if(g.type==="text")return ws(g,b,t,o,m,f);Cs(g,b,t,o,m,f);}),o.lastRenderCharCount=m.count,o.prevContentLength=0;};return Object.defineProperty(r,"name",{value:`rehypeAnimate$${n}`}),{name:"animate",type:"animate",rehypePlugin:r,setAnimateCodeBlocks(d){o.animateCodeBlocks=d;},setPrevContentLength(d){o.committedCharCount=d,o.prevContentLength=d;},getLastRenderCharCount(){return o.lastRenderCharCount},commit(){o.committedCharCount=o.lastRenderCharCount,o.pendingMark=null;}}}ct();var Ht=createContext(false),Bt=()=>useContext(Ht);var He=(...e)=>twMerge(clsx(e)),dt=e=>{if(e!==void 0)return typeof e=="number"?!Number.isFinite(e)||e<=0?void 0:`${e}px`:e},Ts=(e,t)=>{if(!e||!t)return t;let o=`${e}:`;return t.split(/\s+/).filter(Boolean).map(n=>n.startsWith(o)?n:`${e}:${n}`).join(" ")},Eo=e=>e?(...t)=>Ts(e,twMerge(clsx(t))):He,oe=(e,t,o)=>{let n=typeof t=="string"&&o.startsWith("text/csv")?"\uFEFF":"",r=typeof t=="string"?new Blob([n+t],{type:o}):t,s=URL.createObjectURL(r),a=document.createElement("a");a.href=s,a.download=e,document.body.appendChild(a),a.click(),document.body.removeChild(a),URL.revokeObjectURL(s);};var mt=createContext(He),v=()=>useContext(mt);var qe=({scrollRef:e,ref:t,...o})=>jsx("div",{ref:e,...o});var Rs=8,Ls=e=>e.scrollHeight-e.scrollTop-e.clientHeight<Rs,Ao=e=>{var o,n;let t=(n=(o=e.touches[0])!=null?o:e.changedTouches[0])!=null?n:null;return typeof(t==null?void 0:t.clientY)=="number"?t.clientY:null},ut=({enabled:e,isAnimating:t,content:o})=>{let[n,r]=useState(null),s=useRef(true),a=useRef(0),c=useCallback(l=>{r(d=>d===l?d:l);},[]),i=useCallback(l=>{t&&s.current&&(l.scrollTo({top:l.scrollHeight,behavior:"instant"}),a.current=l.scrollTop);},[t]);return useEffect(()=>{t||(s.current=true);},[t]),useEffect(()=>{if(!(e&&n))return;a.current=n.scrollTop;let l=()=>{s.current=false;},d=g=>{g.deltaY<0&&l();},m=null,u=g=>{m=Ao(g);},p=g=>{if(m===null)return;let b=Ao(g);if(b===null)return;let y=b-m;Math.abs(y)<=3||(y>0&&l(),m=b);},f=()=>{m=null;},h=()=>{let g=n.scrollTop<a.current;if(a.current=n.scrollTop,g){l();return}Ls(n)&&(s.current=true);};return n.addEventListener("wheel",d,{capture:true,passive:true}),n.addEventListener("touchstart",u,{passive:true}),n.addEventListener("touchmove",p,{passive:true}),n.addEventListener("touchend",f,{passive:true}),n.addEventListener("touchcancel",f,{passive:true}),n.addEventListener("scroll",h,{passive:true}),()=>{n.removeEventListener("wheel",d,{capture:true}),n.removeEventListener("touchstart",u),n.removeEventListener("touchmove",p),n.removeEventListener("touchend",f),n.removeEventListener("touchcancel",f),n.removeEventListener("scroll",h);}},[e,n]),useLayoutEffect(()=>{if(!(e&&n)||(i(n),typeof ResizeObserver=="undefined"))return;let l=new ResizeObserver(()=>{i(n);});l.observe(n);for(let d of n.children)l.observe(d);return ()=>{l.disconnect();}},[o,n,e,i]),c};var Ds=He("block"),Hs=He("block","before:content-[counter(line)]","before:inline-block","before:[counter-increment:line]","before:w-6","before:mr-4","before:text-[13px]","before:text-right","before:text-muted-foreground/50","before:font-mono","before:select-none"),Bs=e=>{let t={};for(let o of e.split(";")){let n=o.indexOf(":");if(n>0){let r=o.slice(0,n).trim(),s=o.slice(n+1).trim();r&&s&&(t[r]=s);}}return t},Do=memo(({children:e,result:t,language:o,className:n,maxHeight:r,startLine:s,lineNumbers:a=true,...c})=>{let i=v(),{isAnimating:l,scrollable:d}=useContext(E),m=d!=null?d:qe,u=dt(r),p=ut({content:t,enabled:!!u,isAnimating:l}),f=useMemo(()=>i(Hs),[i]),h=useMemo(()=>i(Ds),[i]),g=useMemo(()=>{let b={};return t.bg&&(b["--sdm-bg"]=t.bg),t.fg&&(b["--sdm-fg"]=t.fg),t.rootStyle&&Object.assign(b,Bs(t.rootStyle)),b},[t.bg,t.fg,t.rootStyle]);return jsx(m,{className:i(n,u?"overflow-x-auto overflow-y-auto":"overflow-x-auto","rounded-md border border-border bg-background p-4 text-sm"),"data-language":o,"data-streamdown":"code-block-body",scrollRef:p,style:u?{maxHeight:u}:void 0,...c,children:jsx("pre",{className:i(n,"bg-[var(--sdm-bg,inherit)]","dark:bg-[var(--shiki-dark-bg,var(--sdm-bg,inherit))]"),style:g,children:jsx("code",{className:a?i("[counter-increment:line_0] [counter-reset:line]"):void 0,style:a&&s&&s>1?{counterReset:`line ${s-1}`}:void 0,children:t.tokens.map((b,y)=>jsx("span",{className:a?f:h,children:b.length===0||b.length===1&&b[0].content===""?`
|
|
3
|
+
`:b.map((x,P)=>{let S={},M=!!x.bgColor;if(x.color&&(S["--sdm-c"]=x.color),x.bgColor&&(S["--sdm-tbg"]=x.bgColor),x.htmlStyle)for(let[C,D]of Object.entries(x.htmlStyle))C==="color"?S["--sdm-c"]=D:C==="background-color"?(S["--sdm-tbg"]=D,M=true):S[C]=D;return jsx("span",{className:i("text-[var(--sdm-c,inherit)]","dark:text-[var(--shiki-dark,var(--sdm-c,inherit))]",M&&"bg-[var(--sdm-tbg)]",M&&"dark:bg-[var(--shiki-dark-bg,var(--sdm-tbg))]"),style:S,...x.htmlAttrs,children:x.content},P)})},y))})})})});var _t=({className:e,language:t,style:o,isIncomplete:n,...r})=>{let s=v();return jsx("div",{className:s("my-4 flex w-full flex-col gap-2 rounded-xl border border-border bg-sidebar p-2",e),"data-incomplete":n||void 0,"data-language":t,"data-streamdown":"code-block",style:{contentVisibility:"auto",containIntrinsicSize:"auto 200px",...o},...r})};var Vt=createContext({code:""}),pt=()=>useContext(Vt);var $t=({language:e})=>{let t=v();return jsx("div",{className:t("flex h-8 items-center text-muted-foreground text-xs"),"data-language":e,"data-streamdown":"code-block-header",children:jsx("span",{className:t("ml-1 font-mono lowercase"),children:e})})};var zs=e=>{let t=e.length;for(;t>0&&e[t-1]===`
|
|
4
|
+
`;)t--;return e.slice(0,t)},Ws=lazy(()=>import('./highlighted-body-RJER4GOS.js').then(e=>({default:e.HighlightedCodeBlockBody}))),Ft=({code:e,language:t,className:o,children:n,isIncomplete:r=false,startLine:s,lineNumbers:a,...c})=>{let i=v(),{codeBlockMaxHeight:l}=useContext(E),d=useMemo(()=>zs(e),[e]),m=useMemo(()=>({bg:"transparent",fg:"inherit",tokens:d.split(`
|
|
5
|
+
`).map(u=>[{content:u,color:"inherit",bgColor:"transparent",htmlStyle:{},offset:0}])}),[d]);return jsx(Vt.Provider,{value:{code:e},children:jsxs(_t,{dir:"ltr",isIncomplete:r,language:t,children:[jsx($t,{language:t}),n?jsx("div",{className:i("pointer-events-none sticky top-2 z-10 -mt-10 flex h-8 items-center justify-end"),children:jsx("div",{className:i("pointer-events-auto flex shrink-0 items-center gap-2 rounded-md border border-sidebar bg-sidebar/80 px-1.5 py-1 supports-[backdrop-filter]:bg-sidebar/70 supports-[backdrop-filter]:backdrop-blur"),"data-streamdown":"code-block-actions",children:n})}):null,jsx(Suspense,{fallback:jsx(Do,{className:o,language:t,lineNumbers:a,maxHeight:l,result:m,startLine:s,...c}),children:jsx(Ws,{className:o,code:d,language:t,lineNumbers:a,maxHeight:l,raw:m,startLine:s,...c})})]})})};var Oo=e=>jsx("svg",{"aria-hidden":"true",color:"currentColor",height:16,strokeLinejoin:"round",viewBox:"0 0 16 16",width:16,...e,children:jsx("path",{clipRule:"evenodd",d:"M15.5607 3.99999L15.0303 4.53032L6.23744 13.3232C5.55403 14.0066 4.44599 14.0066 3.76257 13.3232L4.2929 12.7929L3.76257 13.3232L0.969676 10.5303L0.439346 9.99999L1.50001 8.93933L2.03034 9.46966L4.82323 12.2626C4.92086 12.3602 5.07915 12.3602 5.17678 12.2626L13.9697 3.46966L14.5 2.93933L15.5607 3.99999Z",fill:"currentColor",fillRule:"evenodd"})}),_o=e=>jsx("svg",{"aria-hidden":"true",color:"currentColor",height:16,strokeLinejoin:"round",viewBox:"0 0 16 16",width:16,...e,children:jsx("path",{clipRule:"evenodd",d:"M2.75 0.5C1.7835 0.5 1 1.2835 1 2.25V9.75C1 10.7165 1.7835 11.5 2.75 11.5H3.75H4.5V10H3.75H2.75C2.61193 10 2.5 9.88807 2.5 9.75V2.25C2.5 2.11193 2.61193 2 2.75 2H8.25C8.38807 2 8.5 2.11193 8.5 2.25V3H10V2.25C10 1.2835 9.2165 0.5 8.25 0.5H2.75ZM7.75 4.5C6.7835 4.5 6 5.2835 6 6.25V13.75C6 14.7165 6.7835 15.5 7.75 15.5H13.25C14.2165 15.5 15 14.7165 15 13.75V6.25C15 5.2835 14.2165 4.5 13.25 4.5H7.75ZM7.5 6.25C7.5 6.11193 7.61193 6 7.75 6H13.25C13.3881 6 13.5 6.11193 13.5 6.25V13.75C13.5 13.8881 13.3881 14 13.25 14H7.75C7.61193 14 7.5 13.8881 7.5 13.75V6.25Z",fill:"currentColor",fillRule:"evenodd"})}),Vo=e=>jsx("svg",{"aria-hidden":"true",color:"currentColor",height:16,strokeLinejoin:"round",viewBox:"0 0 16 16",width:16,...e,children:jsx("path",{clipRule:"evenodd",d:"M8.75 1V1.75V8.68934L10.7197 6.71967L11.25 6.18934L12.3107 7.25L11.7803 7.78033L8.70711 10.8536C8.31658 11.2441 7.68342 11.2441 7.29289 10.8536L4.21967 7.78033L3.68934 7.25L4.75 6.18934L5.28033 6.71967L7.25 8.68934V1.75V1H8.75ZM13.5 9.25V13.5H2.5V9.25V8.5H1V9.25V14C1 14.5523 1.44771 15 2 15H14C14.5523 15 15 14.5523 15 14V9.25V8.5H13.5V9.25Z",fill:"currentColor",fillRule:"evenodd"})}),$o=e=>jsxs("svg",{"aria-hidden":"true",color:"currentColor",height:16,strokeLinejoin:"round",viewBox:"0 0 16 16",width:16,...e,children:[jsx("path",{d:"M8 0V4",stroke:"currentColor",strokeWidth:"1.5"}),jsx("path",{d:"M8 16V12",opacity:"0.5",stroke:"currentColor",strokeWidth:"1.5"}),jsx("path",{d:"M3.29773 1.52783L5.64887 4.7639",opacity:"0.9",stroke:"currentColor",strokeWidth:"1.5"}),jsx("path",{d:"M12.7023 1.52783L10.3511 4.7639",opacity:"0.1",stroke:"currentColor",strokeWidth:"1.5"}),jsx("path",{d:"M12.7023 14.472L10.3511 11.236",opacity:"0.4",stroke:"currentColor",strokeWidth:"1.5"}),jsx("path",{d:"M3.29773 14.472L5.64887 11.236",opacity:"0.6",stroke:"currentColor",strokeWidth:"1.5"}),jsx("path",{d:"M15.6085 5.52783L11.8043 6.7639",opacity:"0.2",stroke:"currentColor",strokeWidth:"1.5"}),jsx("path",{d:"M0.391602 10.472L4.19583 9.23598",opacity:"0.7",stroke:"currentColor",strokeWidth:"1.5"}),jsx("path",{d:"M15.6085 10.4722L11.8043 9.2361",opacity:"0.3",stroke:"currentColor",strokeWidth:"1.5"}),jsx("path",{d:"M0.391602 5.52783L4.19583 6.7639",opacity:"0.8",stroke:"currentColor",strokeWidth:"1.5"})]}),Fo=e=>jsx("svg",{"aria-hidden":"true",color:"currentColor",height:16,strokeLinejoin:"round",viewBox:"0 0 16 16",width:16,...e,children:jsx("path",{clipRule:"evenodd",d:"M1 5.25V6H2.5V5.25V2.5H5.25H6V1H5.25H2C1.44772 1 1 1.44772 1 2V5.25ZM5.25 14.9994H6V13.4994H5.25H2.5V10.7494V9.99939H1V10.7494V13.9994C1 14.5517 1.44772 14.9994 2 14.9994H5.25ZM15 10V10.75V14C15 14.5523 14.5523 15 14 15H10.75H10V13.5H10.75H13.5V10.75V10H15ZM10.75 1H10V2.5H10.75H13.5V5.25V6H15V5.25V2C15 1.44772 14.5523 1 14 1H10.75Z",fill:"currentColor",fillRule:"evenodd"})}),jo=e=>jsx("svg",{"aria-hidden":"true",color:"currentColor",height:16,strokeLinejoin:"round",viewBox:"0 0 16 16",width:16,...e,children:jsx("path",{clipRule:"evenodd",d:"M13.5 8C13.5 4.96643 11.0257 2.5 7.96452 2.5C5.42843 2.5 3.29365 4.19393 2.63724 6.5H5.25H6V8H5.25H0.75C0.335787 8 0 7.66421 0 7.25V2.75V2H1.5V2.75V5.23347C2.57851 2.74164 5.06835 1 7.96452 1C11.8461 1 15 4.13001 15 8C15 11.87 11.8461 15 7.96452 15C5.62368 15 3.54872 13.8617 2.27046 12.1122L1.828 11.5066L3.03915 10.6217L3.48161 11.2273C4.48831 12.6051 6.12055 13.5 7.96452 13.5C11.0257 13.5 13.5 11.0336 13.5 8Z",fill:"currentColor",fillRule:"evenodd"})}),zo=e=>jsx("svg",{"aria-hidden":"true",color:"currentColor",height:16,strokeLinejoin:"round",viewBox:"0 0 16 16",width:16,...e,children:jsx("path",{clipRule:"evenodd",d:"M12.4697 13.5303L13 14.0607L14.0607 13L13.5303 12.4697L9.06065 7.99999L13.5303 3.53032L14.0607 2.99999L13 1.93933L12.4697 2.46966L7.99999 6.93933L3.53032 2.46966L2.99999 1.93933L1.93933 2.99999L2.46966 3.53032L6.93933 7.99999L2.46966 12.4697L1.93933 13L2.99999 14.0607L3.53032 13.5303L7.99999 9.06065L12.4697 13.5303Z",fill:"currentColor",fillRule:"evenodd"})}),Wo=e=>jsx("svg",{"aria-hidden":"true",color:"currentColor",height:16,strokeLinejoin:"round",viewBox:"0 0 16 16",width:16,...e,children:jsx("path",{clipRule:"evenodd",d:"M13.5 10.25V13.25C13.5 13.3881 13.3881 13.5 13.25 13.5H2.75C2.61193 13.5 2.5 13.3881 2.5 13.25L2.5 2.75C2.5 2.61193 2.61193 2.5 2.75 2.5H5.75H6.5V1H5.75H2.75C1.7835 1 1 1.7835 1 2.75V13.25C1 14.2165 1.7835 15 2.75 15H13.25C14.2165 15 15 14.2165 15 13.25V10.25V9.5H13.5V10.25ZM9 1H9.75H14.2495C14.6637 1 14.9995 1.33579 14.9995 1.75V6.25V7H13.4995V6.25V3.56066L8.53033 8.52978L8 9.06011L6.93934 7.99945L7.46967 7.46912L12.4388 2.5H9.75H9V1Z",fill:"currentColor",fillRule:"evenodd"})}),qo=e=>jsx("svg",{"aria-hidden":"true",color:"currentColor",height:16,strokeLinejoin:"round",viewBox:"0 0 16 16",width:16,...e,children:jsx("path",{clipRule:"evenodd",d:"M1.5 6.5C1.5 3.73858 3.73858 1.5 6.5 1.5C9.26142 1.5 11.5 3.73858 11.5 6.5C11.5 9.26142 9.26142 11.5 6.5 11.5C3.73858 11.5 1.5 9.26142 1.5 6.5ZM6.5 0C2.91015 0 0 2.91015 0 6.5C0 10.0899 2.91015 13 6.5 13C8.02469 13 9.42677 12.475 10.5353 11.596L13.9697 15.0303L14.5 15.5607L15.5607 14.5L15.0303 13.9697L11.596 10.5353C12.475 9.42677 13 8.02469 13 6.5C13 2.91015 10.0899 0 6.5 0ZM4.125 5.875H4.75H5.875V4.75V4.125H7.125V4.75V5.875H8.25H8.875V7.125H8.25H7.125V8.25V8.875H5.875V8.25V7.125H4.75H4.125V5.875Z",fill:"currentColor",fillRule:"evenodd"})}),Zo=e=>jsx("svg",{"aria-hidden":"true",color:"currentColor",height:16,strokeLinejoin:"round",viewBox:"0 0 16 16",width:16,...e,children:jsx("path",{clipRule:"evenodd",d:"M1.5 6.5C1.5 3.73858 3.73858 1.5 6.5 1.5C9.26142 1.5 11.5 3.73858 11.5 6.5C11.5 9.26142 9.26142 11.5 6.5 11.5C3.73858 11.5 1.5 9.26142 1.5 6.5ZM6.5 0C2.91015 0 0 2.91015 0 6.5C0 10.0899 2.91015 13 6.5 13C8.02469 13 9.42677 12.475 10.5353 11.596L13.9697 15.0303L14.5 15.5607L15.5607 14.5L15.0303 13.9697L11.596 10.5353C12.475 9.42677 13 8.02469 13 6.5C13 2.91015 10.0899 0 6.5 0ZM4.125 5.875H4.75H8.25H8.875V7.125H8.25H4.75H4.125V5.875Z",fill:"currentColor",fillRule:"evenodd"})});var Ke={CheckIcon:Oo,CopyIcon:_o,DownloadIcon:Vo,ExternalLinkIcon:Wo,Loader2Icon:$o,Maximize2Icon:Fo,RotateCcwIcon:jo,XIcon:zo,ZoomInIcon:qo,ZoomOutIcon:Zo},Go=createContext(Ke),Xs=(e,t)=>{if(e===t)return true;if(!(e&&t))return e===t;let o=Object.keys(e),n=Object.keys(t);return o.length!==n.length?false:o.every(r=>e[r]===t[r])},jt=({icons:e,children:t})=>{let o=useRef(e),n=useRef(e?{...Ke,...e}:Ke);Xs(o.current,e)||(o.current=e,n.current=e?{...Ke,...e}:Ke);let r=n.current;return jsx(Go.Provider,{value:r,children:t})},O=()=>useContext(Go);var ft={alertNote:"Note",alertTip:"Tip",alertImportant:"Important",alertWarning:"Warning",alertCaution:"Caution",copyCode:"Copy Code",downloadFile:"Download file",downloadDiagram:"Download diagram",downloadDiagramAsSvg:"Download diagram as SVG",downloadDiagramAsPng:"Download diagram as PNG",downloadDiagramAsMmd:"Download diagram as MMD",viewFullscreen:"View fullscreen",exitFullscreen:"Exit fullscreen",mermaidFormatSvg:"SVG",mermaidFormatPng:"PNG",mermaidFormatMmd:"MMD",zoomIn:"Zoom in",zoomOut:"Zoom out",resetView:"Reset zoom and pan",copyTable:"Copy table",copyTableAsMarkdown:"Copy table as Markdown",copyTableAsCsv:"Copy table as CSV",copyTableAsTsv:"Copy table as TSV",downloadTable:"Download table",downloadTableAsCsv:"Download table as CSV",downloadTableAsMarkdown:"Download table as Markdown",tableFormatMarkdown:"Markdown",tableFormatCsv:"CSV",tableFormatTsv:"TSV",imageNotAvailable:"Image not available",downloadImage:"Download image",openExternalLink:"Open external link?",externalLinkWarning:"You're about to visit an external website.",close:"Close",copyLink:"Copy link",copied:"Copied",openLink:"Open link"},gt=createContext(ft),_=()=>useContext(gt);var ht=({onCopy:e,onError:t,timeout:o=2e3,children:n,className:r,code:s,...a})=>{let c=v(),[i,l]=useState(false),d=useRef(0),{code:m}=pt(),{isAnimating:u}=useContext(E),p=_(),f=s!=null?s:m,h=async()=>{var y;if(typeof window=="undefined"||!((y=navigator==null?void 0:navigator.clipboard)!=null&&y.writeText)){t==null||t(new Error("Clipboard API not available"));return}try{i||(await navigator.clipboard.writeText(f),l(!0),e==null||e(),d.current=window.setTimeout(()=>l(!1),o));}catch(x){t==null||t(x);}};useEffect(()=>()=>{window.clearTimeout(d.current);},[]);let g=O(),b=i?g.CheckIcon:g.CopyIcon;return jsxs(Fragment,{children:[jsx("button",{"aria-label":p.copyCode,className:c("cursor-pointer p-1 text-muted-foreground transition-all hover:text-foreground disabled:cursor-not-allowed disabled:opacity-50",r),"data-streamdown":"code-block-copy-button",disabled:u,onClick:h,title:p.copyCode,type:"button",...a,children:n!=null?n:jsx(b,{"aria-hidden":"true",size:14})}),i&&jsx("output",{"aria-live":"polite",className:"sr-only",children:p.copied})]})};var Ie=(e,t,o)=>{if(typeof e=="boolean")return o;let n=e[t];if(typeof n!="object")return o;let r=n.download;return typeof r!="object"?o:r.filename||o};var Xo={"1c":"1c","1c-query":"1cq",abap:"abap","actionscript-3":"as",ada:"ada",adoc:"adoc","angular-html":"html","angular-ts":"ts",apache:"conf",apex:"cls",apl:"apl",applescript:"applescript",ara:"ara",asciidoc:"adoc",asm:"asm",astro:"astro",awk:"awk",ballerina:"bal",bash:"sh",bat:"bat",batch:"bat",be:"be",beancount:"beancount",berry:"berry",bibtex:"bib",bicep:"bicep",blade:"blade.php",bsl:"bsl",c:"c","c#":"cs","c++":"cpp",cadence:"cdc",cairo:"cairo",cdc:"cdc",clarity:"clar",clj:"clj",clojure:"clj","closure-templates":"soy",cmake:"cmake",cmd:"cmd",cobol:"cob",codeowners:"CODEOWNERS",codeql:"ql",coffee:"coffee",coffeescript:"coffee","common-lisp":"lisp",console:"sh",coq:"v",cpp:"cpp",cql:"cql",crystal:"cr",cs:"cs",csharp:"cs",css:"css",csv:"csv",cue:"cue",cypher:"cql",d:"d",dart:"dart",dax:"dax",desktop:"desktop",diff:"diff",docker:"dockerfile",dockerfile:"dockerfile",dotenv:"env","dream-maker":"dm",edge:"edge",elisp:"el",elixir:"ex",elm:"elm","emacs-lisp":"el",erb:"erb",erl:"erl",erlang:"erl",f:"f","f#":"fs",f03:"f03",f08:"f08",f18:"f18",f77:"f77",f90:"f90",f95:"f95",fennel:"fnl",fish:"fish",fluent:"ftl",for:"for","fortran-fixed-form":"f","fortran-free-form":"f90",fs:"fs",fsharp:"fs",fsl:"fsl",ftl:"ftl",gdresource:"tres",gdscript:"gd",gdshader:"gdshader",genie:"gs",gherkin:"feature","git-commit":"gitcommit","git-rebase":"gitrebase",gjs:"js",gleam:"gleam","glimmer-js":"js","glimmer-ts":"ts",glsl:"glsl",gnuplot:"plt",go:"go",gql:"gql",graphql:"graphql",groovy:"groovy",gts:"gts",hack:"hack",haml:"haml",handlebars:"hbs",haskell:"hs",haxe:"hx",hbs:"hbs",hcl:"hcl",hjson:"hjson",hlsl:"hlsl",hs:"hs",html:"html","html-derivative":"html",http:"http",hxml:"hxml",hy:"hy",imba:"imba",ini:"ini",jade:"jade",java:"java",javascript:"js",jinja:"jinja",jison:"jison",jl:"jl",js:"js",json:"json",json5:"json5",jsonc:"jsonc",jsonl:"jsonl",jsonnet:"jsonnet",jssm:"jssm",jsx:"jsx",julia:"jl",kotlin:"kt",kql:"kql",kt:"kt",kts:"kts",kusto:"kql",latex:"tex",lean:"lean",lean4:"lean",less:"less",liquid:"liquid",lisp:"lisp",lit:"lit",llvm:"ll",log:"log",logo:"logo",lua:"lua",luau:"luau",make:"mak",makefile:"mak",markdown:"md",marko:"marko",matlab:"m",md:"md",mdc:"mdc",mdx:"mdx",mediawiki:"wiki",mermaid:"mmd",mips:"s",mipsasm:"s",mmd:"mmd",mojo:"mojo",move:"move",nar:"nar",narrat:"narrat",nextflow:"nf",nf:"nf",nginx:"conf",nim:"nim",nix:"nix",nu:"nu",nushell:"nu",objc:"m","objective-c":"m","objective-cpp":"mm",ocaml:"ml",pascal:"pas",perl:"pl",perl6:"p6",php:"php",plsql:"pls",po:"po",polar:"polar",postcss:"pcss",pot:"pot",potx:"potx",powerquery:"pq",powershell:"ps1",prisma:"prisma",prolog:"pl",properties:"properties",proto:"proto",protobuf:"proto",ps:"ps",ps1:"ps1",pug:"pug",puppet:"pp",purescript:"purs",py:"py",python:"py",ql:"ql",qml:"qml",qmldir:"qmldir",qss:"qss",r:"r",racket:"rkt",raku:"raku",razor:"cshtml",rb:"rb",reg:"reg",regex:"regex",regexp:"regexp",rel:"rel",riscv:"s",rs:"rs",rst:"rst",ruby:"rb",rust:"rs",sas:"sas",sass:"sass",scala:"scala",scheme:"scm",scss:"scss",sdbl:"sdbl",sh:"sh",shader:"shader",shaderlab:"shader",shell:"sh",shellscript:"sh",shellsession:"sh",smalltalk:"st",solidity:"sol",soy:"soy",sparql:"rq",spl:"spl",splunk:"spl",sql:"sql","ssh-config":"config",stata:"do",styl:"styl",stylus:"styl",svelte:"svelte",swift:"swift","system-verilog":"sv",systemd:"service",talon:"talon",talonscript:"talon",tasl:"tasl",tcl:"tcl",templ:"templ",terraform:"tf",tex:"tex",tf:"tf",tfvars:"tfvars",toml:"toml",ts:"ts","ts-tags":"ts",tsp:"tsp",tsv:"tsv",tsx:"tsx",turtle:"ttl",twig:"twig",typ:"typ",typescript:"ts",typespec:"tsp",typst:"typ",v:"v",vala:"vala",vb:"vb",verilog:"v",vhdl:"vhdl",vim:"vim",viml:"vim",vimscript:"vim",vue:"vue","vue-html":"html","vue-vine":"vine",vy:"vy",vyper:"vy",wasm:"wasm",wenyan:"wy",wgsl:"wgsl",wiki:"wiki",wikitext:"wiki",wit:"wit",wl:"wl",wolfram:"wl",xml:"xml",xsl:"xsl",yaml:"yaml",yml:"yml",zenscript:"zs",zig:"zig",zsh:"zsh",\u6587\u8A00:"wy"},Wt=({onDownload:e,onError:t,language:o,children:n,className:r,code:s,...a})=>{let c=v(),{code:i}=pt(),{isAnimating:l,controls:d}=useContext(E),m=_(),u=O(),p=s!=null?s:i,f=o&&o in Xo?Xo[o]:"txt",h=`${Ie(d,"code","file")}.${f}`,g="text/plain",b=()=>{try{oe(h,p,g),e==null||e();}catch(y){t==null||t(y);}};return jsx("button",{"aria-label":m.downloadFile,className:c("cursor-pointer p-1 text-muted-foreground transition-all hover:text-foreground disabled:cursor-not-allowed disabled:opacity-50",r),"data-streamdown":"code-block-download-button",disabled:l,onClick:b,title:m.downloadFile,type:"button",...a,children:n!=null?n:jsx(u.DownloadIcon,{size:14})})};var bt=()=>{let{Loader2Icon:e}=O(),t=v();return jsxs("div",{className:t("w-full divide-y divide-border overflow-hidden rounded-xl border border-border"),children:[jsx("div",{className:t("h-[46px] w-full bg-muted/80")}),jsx("div",{className:t("flex w-full items-center justify-center p-4"),children:jsx(e,{className:t("size-4 animate-spin")})})]})};var Ge=0,he=()=>{Ge+=1,Ge===1&&(document.body.style.overflow="hidden");},be=()=>{Ge=Math.max(0,Ge-1),Ge===0&&(document.body.style.overflow="");};var la=["github-light","github-dark"],ca={enabled:true},da={codeBlockMaxHeight:400,shikiTheme:la,controls:true,isAnimating:false,lineNumbers:true,listStyle:"hierarchical",mode:"streaming",mermaid:void 0,linkSafety:ca,portal:void 0,tableMaxHeight:300},E=createContext(da);var fa=/\.[^/.]+$/,Yo=(e,t)=>{if(typeof e=="boolean")return e;let o=e.image;return o===false?false:o===true||o===void 0?true:o[t]!==false},Qo=({node:e,className:t,src:o,alt:n,onLoad:r,onError:s,onClick:a,...c})=>{let{DownloadIcon:i,XIcon:l}=O(),d=v(),m=useRef(null),[u,p]=useState(false),[f,h]=useState(false),[g,b]=useState(false),{controls:y}=useContext(E),x=_(),P=Yo(y,"download"),S=Yo(y,"fullscreen"),M=c.width!=null||c.height!=null,C=P&&(u||M)&&!f,D=f&&!M,B=S&&!!o&&!f&&u;useEffect(()=>{let R=m.current;if(R!=null&&R.complete){let z=R.naturalWidth>0;p(z),h(!z);}},[]),useEffect(()=>{if(!g)return;he();let R=z=>{z.key==="Escape"&&b(false);};return document.addEventListener("keydown",R),()=>{document.removeEventListener("keydown",R),be();}},[g]);let j=useCallback(R=>{p(true),h(false),r==null||r(R);},[r]),Y=useCallback(R=>{p(false),h(true),s==null||s(R);},[s]),F=useCallback(()=>{B&&b(true);},[B]),H=useCallback(()=>{b(false);},[]),V=useCallback(R=>{a==null||a(R),!R.defaultPrevented&&F();},[a,F]),U=async R=>{if(R.stopPropagation(),!!o)try{let re=await(await fetch(o)).blob(),le=new URL(o,window.location.origin).pathname.split("/").pop()||"",ee=le.split(".").pop(),Ae=le.includes(".")&&ee!==void 0&&ee.length<=4,X="";if(Ae)X=le;else {let W=re.type,T="png";W.includes("jpeg")||W.includes("jpg")?T="jpg":W.includes("png")?T="png":W.includes("svg")?T="svg":W.includes("gif")?T="gif":W.includes("webp")&&(T="webp"),X=`${(n||le||"image").replace(fa,"")}.${T}`;}oe(X,re,re.type);}catch(z){window.open(o,"_blank");}};return o?o==="streamdown:incomplete-image"?jsx("div",{className:d("group relative my-4 inline-block"),"data-incomplete":"true","data-streamdown":"image-wrapper",children:jsx("div",{className:d("h-24 w-48 animate-pulse rounded-lg bg-muted"),"data-streamdown":"image-placeholder"})}):jsxs(Fragment,{children:[jsxs("div",{className:d("group/image not-prose relative my-2 block max-w-full"),"data-streamdown":"image-wrapper",children:[jsx("img",{alt:n,className:d("m-0 block h-auto max-w-full rounded-lg",B&&"cursor-zoom-in",D&&"hidden",t),"data-streamdown":"image",onClick:V,onError:Y,onLoad:j,ref:m,src:o,...c}),D&&jsx("span",{className:d("text-muted-foreground text-xs italic"),"data-streamdown":"image-fallback",children:x.imageNotAvailable}),C&&jsx("button",{className:d("absolute right-2 bottom-2 flex h-8 w-8 cursor-pointer items-center justify-center rounded-md border border-border bg-background/90 shadow-sm backdrop-blur-sm transition-all duration-200 hover:bg-background","opacity-0 focus-visible:opacity-100 group-hover/image:opacity-100"),onClick:U,title:x.downloadImage,type:"button",children:jsx(i,{size:14})})]}),g?createPortal(jsxs("div",{className:d("fixed inset-0 z-50 flex items-center justify-center bg-black/90 p-4"),"data-streamdown":"image-lightbox",onClick:H,onKeyDown:R=>{R.key==="Escape"&&H();},role:"button",tabIndex:0,children:[jsx("button",{className:d("absolute top-4 right-4 z-10 rounded-md p-2 text-white/80 transition-colors hover:bg-white/10 hover:text-white"),onClick:H,title:x.exitFullscreen,type:"button",children:jsx(l,{size:20})}),jsx("div",{onClick:R=>R.stopPropagation(),onKeyDown:R=>R.stopPropagation(),role:"presentation",children:jsx("img",{alt:n,className:d("max-h-[calc(100vh-2rem)] max-w-[calc(100vw-2rem)] object-contain"),"data-streamdown":"image-lightbox-img",src:o})})]}),document.body):null]}):null};var Be=e=>{let t=typeof e=="function"?e():e;return t!=null?t:document.body};var on=({url:e,isOpen:t,onClose:o,onConfirm:n})=>{let{CheckIcon:r,CopyIcon:s,ExternalLinkIcon:a,XIcon:c}=O(),i=v(),[l,d]=useState(false),m=_(),{portal:u}=useContext(E),p=useCallback(async()=>{try{await navigator.clipboard.writeText(e),d(!0),setTimeout(()=>d(!1),2e3);}catch(g){}},[e]),f=useCallback(()=>{n(),o();},[n,o]);if(useEffect(()=>{if(t){he();let g=b=>{b.key==="Escape"&&o();};return document.addEventListener("keydown",g),()=>{document.removeEventListener("keydown",g),be();}}},[t,o]),!t||typeof document=="undefined")return null;let h=jsx("div",{className:i("fixed inset-0 z-50 flex items-center justify-center bg-background/50 backdrop-blur-sm"),"data-streamdown":"link-safety-modal",onClick:o,onKeyDown:g=>{g.key==="Escape"&&o();},role:"button",tabIndex:0,children:jsxs("div",{className:i("relative mx-4 flex w-full max-w-md flex-col gap-4 rounded-xl border bg-background p-6 shadow-lg"),onClick:g=>g.stopPropagation(),onKeyDown:g=>g.stopPropagation(),role:"presentation",children:[jsx("button",{className:i("absolute top-4 right-4 rounded-md p-1 text-muted-foreground transition-all hover:bg-muted hover:text-foreground"),onClick:o,title:m.close,type:"button",children:jsx(c,{size:16})}),jsxs("div",{className:i("flex flex-col gap-2"),children:[jsxs("div",{className:i("flex items-center gap-2 font-semibold text-lg"),children:[jsx(a,{size:20}),jsx("span",{children:m.openExternalLink})]}),jsx("p",{className:i("text-muted-foreground text-sm"),children:m.externalLinkWarning})]}),jsx("div",{className:i("break-all rounded-md bg-muted p-3 font-mono text-sm",e.length>100&&"max-h-32 overflow-y-auto"),children:e}),jsxs("div",{className:i("flex gap-2"),children:[jsx("button",{className:i("flex flex-1 items-center justify-center gap-2 rounded-md border bg-background px-4 py-2 font-medium text-sm transition-all hover:bg-muted"),onClick:p,type:"button",children:l?jsxs(Fragment,{children:[jsx(r,{size:14}),jsx("span",{children:m.copied})]}):jsxs(Fragment,{children:[jsx(s,{size:14}),jsx("span",{children:m.copyLink})]})}),jsxs("button",{className:i("flex flex-1 items-center justify-center gap-2 rounded-md bg-primary px-4 py-2 font-medium text-primary-foreground text-sm transition-all hover:bg-primary/90"),onClick:f,type:"button",children:[jsx(a,{size:14}),jsx("span",{children:m.openLink})]})]})]})});return createPortal(h,Be(u))};var nn=()=>e=>{visit(e,"html",(o,n,r)=>{!r||typeof n!="number"||(r.children[n]={type:"text",value:o.value});});};var sn=[],an={allowDangerousHtml:true},yt=new WeakMap,Xt=class{constructor(){this.cache=new Map;this.keyCache=new WeakMap;this.maxSize=100;}generateCacheKey(t){let o=this.keyCache.get(t);if(o)return o;let n=t.rehypePlugins,r=t.remarkPlugins,s=t.remarkRehypeOptions;if(!(n||r||s)){let m="default";return this.keyCache.set(t,m),m}let a=m=>{if(!m||m.length===0)return "";let u="";for(let p=0;p<m.length;p+=1){let f=m[p];if(p>0&&(u+=","),Array.isArray(f)){let[h,g]=f;if(typeof h=="function"){let b=yt.get(h);b||(b=h.name,yt.set(h,b)),u+=b;}else u+=String(h);u+=":",u+=JSON.stringify(g);}else if(typeof f=="function"){let h=yt.get(f);h||(h=f.name,yt.set(f,h)),u+=h;}else u+=String(f);}return u},c=a(n),i=a(r),l=s?JSON.stringify(s):"",d=`${i}::${c}::${l}`;return this.keyCache.set(t,d),d}get(t){let o=this.generateCacheKey(t),n=this.cache.get(o);return n&&(this.cache.delete(o),this.cache.set(o,n)),n}set(t,o){let n=this.generateCacheKey(t);if(this.cache.size>=this.maxSize){let r=this.cache.keys().next().value;r&&this.cache.delete(r);}this.cache.set(n,o);}clear(){this.cache.clear();}},ln=new Xt,Ue=e=>{let t=Ea(e),o=e.children||"",n=t.runSync(t.parse(o),o);return Ha(n,e)},Ea=e=>{let t=ln.get(e);if(t)return t;let o=La(e);return ln.set(e,o),o},Ra=e=>e.some(t=>Array.isArray(t)?t[0]===rn:t===rn),La=e=>{let t=e.rehypePlugins||sn,o=e.remarkPlugins||sn,n=Ra(t)?o:[...o,nn],r=e.remarkRehypeOptions?{...an,...e.remarkRehypeOptions}:an;return unified().use(Pa).use(n).use(Sa,r).use(t)},cn=e=>e,Na=(e,t,o,n)=>{o?e.children.splice(t,1):e.children[t]={type:"text",value:n};},Aa=(e,t)=>{var o;for(let n in urlAttributes)if(Object.hasOwn(urlAttributes,n)&&Object.hasOwn(e.properties,n)){let r=e.properties[n],s=urlAttributes[n];(s===null||s.includes(e.tagName))&&(e.properties[n]=(o=t(String(r||""),n,e))!=null?o:void 0);}},Da=(e,t,o,n,r,s)=>{let a=false;return n?a=!n.includes(e.tagName):r&&(a=r.includes(e.tagName)),!a&&s&&typeof t=="number"&&(a=!s(e,t,o)),a},Ha=(e,t)=>{let{allowElement:o,allowedElements:n,disallowedElements:r,skipHtml:s,unwrapDisallowed:a,urlTransform:c}=t;if(o||n||r||s||c){let l=c||cn;visit(e,(d,m,u)=>{if(d.type==="raw"&&u&&typeof m=="number")return Na(u,m,s,d.value),m;if(d.type==="element"&&(Aa(d,l),Da(d,m,u,n,r,o)&&u&&typeof m=="number"))return a&&d.children?u.children.splice(m,1,...d.children):u.children.splice(m,1),m});}return toJsxRuntime(e,{Fragment:Fragment,components:t.components,ignoreInvalidStyle:true,jsx:jsx,jsxs:jsxs,passKeys:true,passNode:true})};var Ct=createContext(null),Ut=()=>useContext(Ct),am=()=>{var t;let e=Ut();return (t=e==null?void 0:e.code)!=null?t:null},Oe=()=>{var t;let e=Ut();return (t=e==null?void 0:e.mermaid)!=null?t:null};var dn=e=>{var o;let t=Ut();return t!=null&&t.renderers&&e&&(o=t.renderers.find(n=>Array.isArray(n.language)?n.language.includes(e):n.language===e))!=null?o:null};var _a=/(<svg\b)/,pn=/<svg\b[^>]*>/i,Va=/\bviewBox=(['"])(.*?)\1/i,$a=/\swidth=(['"]).*?\1/i,Fa=/\sheight=(['"]).*?\1/i,mn=/\sstyle=(['"])(.*?)\1/i,un=/^<svg/i,ja=/^width\s*:/i,za=/^height\s*:/i,Wa=/^max-width\s*:/i,qa=/[\s,]+/,Za=e=>!e.includes("xlink:")||e.includes("xmlns:xlink")?e:e.replace(_a,'$1 xmlns:xlink="http://www.w3.org/1999/xlink"'),fn=e=>{if(typeof DOMParser=="undefined"||typeof XMLSerializer=="undefined")return e;let o=new DOMParser().parseFromString(e,"text/html").querySelector("svg");return o?new XMLSerializer().serializeToString(o):e},Jt=e=>{let t=e.match(pn);if(!t)return null;let n=t[0].match(Va),r=n==null?void 0:n[2];if(!r)return null;let s=r.trim().split(qa).map(i=>Number.parseFloat(i));if(s.length<4||s.slice(0,4).some(Number.isNaN))return null;let a=s[2],c=s[3];return a>0&&c>0?{height:c,width:a}:null},gn=e=>{let t=e.match(pn);if(!t)return e;try{let o=t[0],n=Jt(e);if(!n)return e;let{width:r,height:s}=n,a=o.replace($a,"").replace(Fa,""),c=a.match(mn),i=`width:${r}px;height:${s}px;max-width:none;`;if(c){let l=c[1],m=c[2].split(";").map(p=>p.trim()).filter(Boolean).filter(p=>!(ja.test(p)||za.test(p)||Wa.test(p))).join(";"),u=`${i}${m?`${m};`:""}`;a=a.replace(mn,` style=${l}${u}${l}`);}else a=a.replace(un,`<svg style="${i}"`);return a=a.replace(un,`<svg width="${r}" height="${s}"`),e.replace(o,a)}catch(o){return e}},hn=(e,t)=>{var n;let o=(n=void 0)!=null?n:5;return new Promise((r,s)=>{let a=Za(e),c="data:image/svg+xml;base64,"+btoa(unescape(encodeURIComponent(a))),i=new Image;i.crossOrigin="anonymous",i.onload=()=>{let l=document.createElement("canvas"),d=i.width*o,m=i.height*o;l.width=d,l.height=m;let u=l.getContext("2d");if(!u){s(new Error("Failed to create 2D canvas context for PNG export"));return}u.drawImage(i,0,0,d,m),l.toBlob(p=>{if(!p){s(new Error("Failed to create PNG blob"));return}r(p);},"image/png");},i.onerror=()=>s(new Error("Failed to load SVG image")),i.src=c;})};var wt=({chart:e,children:t,className:o,onDownload:n,config:r,onError:s})=>{let a=v(),[c,i]=useState(false),l=useRef(null),{isAnimating:d,controls:m}=useContext(E),u=O(),p=Oe(),f=_(),h=Ie(m,"mermaid","diagram"),g=async b=>{try{if(b==="mmd"){let C=`${h}.mmd`;oe(C,e,"text/plain"),i(!1),n==null||n(b);return}if(!p){s==null||s(new Error("Mermaid plugin not available"));return}let y=p.getMermaid(r),x=e.split("").reduce((C,D)=>(C<<5)-C+D.charCodeAt(0)|0,0),P=`mermaid-${Math.abs(x)}-${Date.now()}-${Math.random().toString(36).substring(2,9)}`,{svg:S}=await y.render(P,e);if(!S){s==null||s(new Error("SVG not found. Please wait for the diagram to render."));return}let M=fn(S);if(b==="svg"){let C=`${h}.svg`;oe(C,M,"image/svg+xml"),i(!1),n==null||n(b);return}if(b==="png"){let C=await hn(M);oe(`${h}.png`,C,"image/png"),n==null||n(b),i(!1);return}}catch(y){s==null||s(y);}};return useEffect(()=>{let b=y=>{let x=y.composedPath();l.current&&!x.includes(l.current)&&i(false);};return document.addEventListener("mousedown",b),()=>{document.removeEventListener("mousedown",b);}},[]),jsxs("div",{className:a("relative"),ref:l,children:[jsx("button",{"aria-label":f.downloadDiagram,className:a("cursor-pointer p-1 text-muted-foreground transition-all hover:text-foreground disabled:cursor-not-allowed disabled:opacity-50",o),disabled:d,onClick:()=>i(!c),title:f.downloadDiagram,type:"button",children:t!=null?t:jsx(u.DownloadIcon,{"aria-hidden":"true",size:14})}),c?jsxs("div",{className:a("absolute top-full right-0 z-10 mt-1 min-w-[120px] overflow-hidden rounded-md border border-border bg-background shadow-lg"),children:[jsx("button",{"aria-label":f.downloadDiagramAsSvg,className:a("w-full px-3 py-2 text-left text-sm transition-colors hover:bg-muted/40"),onClick:()=>g("svg"),title:f.downloadDiagramAsSvg,type:"button",children:f.mermaidFormatSvg}),jsx("button",{"aria-label":f.downloadDiagramAsPng,className:a("w-full px-3 py-2 text-left text-sm transition-colors hover:bg-muted/40"),onClick:()=>g("png"),title:f.downloadDiagramAsPng,type:"button",children:f.mermaidFormatPng}),jsx("button",{"aria-label":f.downloadDiagramAsMmd,className:a("w-full px-3 py-2 text-left text-sm transition-colors hover:bg-muted/40"),onClick:()=>g("mmd"),title:f.downloadDiagramAsMmd,type:"button",children:f.mermaidFormatMmd})]}):null]})};var wn=({chart:e,config:t,onFullscreen:o,onExit:n,className:r,...s})=>{let{Maximize2Icon:a,XIcon:c}=O(),i=v(),[l,d]=useState(false),{isAnimating:m,controls:u,portal:p}=useContext(E),f=_(),h=(()=>{if(typeof u=="boolean")return u;let y=u.mermaid;return y===false?false:y===true||y===void 0?true:y.panZoom!==false})(),g=(()=>{if(typeof u=="boolean")return u;let y=u.mermaid;return y===false?false:y===true||y===void 0?true:y.download!==false})(),b=()=>{d(!l);};return useEffect(()=>{if(l){he();let y=x=>{x.key==="Escape"&&d(false);};return document.addEventListener("keydown",y),()=>{document.removeEventListener("keydown",y),be();}}},[l]),useEffect(()=>{l?o==null||o():n&&n();},[l,o,n]),jsxs(Fragment,{children:[jsx("button",{className:i("cursor-pointer p-1 text-muted-foreground transition-all hover:text-foreground disabled:cursor-not-allowed disabled:opacity-50",r),disabled:m,onClick:b,title:f.viewFullscreen,type:"button",...s,"aria-label":f.viewFullscreen,children:jsx(a,{"aria-hidden":"true",size:14})}),l?createPortal(jsxs("div",{"aria-label":f.viewFullscreen,"aria-modal":"true",className:i("fixed inset-0 z-50 flex items-center justify-center bg-background/95 backdrop-blur-sm"),"data-streamdown":"mermaid-fullscreen",onClick:b,onKeyDown:y=>{y.key==="Escape"&&b();},role:"dialog",children:[jsxs("div",{className:i("absolute top-4 right-4 z-10 flex items-center gap-1"),onClick:y=>y.stopPropagation(),onKeyDown:y=>y.stopPropagation(),role:"presentation",children:[g?jsx(wt,{chart:e,config:t}):null,jsx("button",{"aria-label":f.exitFullscreen,className:i("rounded-md p-2 text-muted-foreground transition-all hover:bg-muted hover:text-foreground"),onClick:b,title:f.exitFullscreen,type:"button",children:jsx(c,{"aria-hidden":"true",size:20})})]}),jsx("div",{className:i("flex size-full items-center justify-center p-4"),onClick:y=>y.stopPropagation(),onKeyDown:y=>y.stopPropagation(),role:"presentation",children:jsx(Cn,{chart:e,className:i("size-full [&_svg]:h-auto [&_svg]:w-auto"),config:t,fullscreen:true,showControls:h})})]}),Be(p)):null]})};var Qt=e=>e==null||typeof e=="boolean"?"":typeof e=="string"||typeof e=="number"?String(e):Array.isArray(e)?e.map(Qt).join(""):isValidElement(e)?Qt(e.props.children):"",xn=(e,t,o)=>o!=null?o:(t?toText(t):Qt(e)).replace(/\s+/g," ").trim()||void 0;function eo(e){var o;if(e.nodeType===Node.TEXT_NODE)return (o=e.textContent)!=null?o:"";if(e.nodeType!==Node.ELEMENT_NODE)return "";let t=e;return t.tagName==="BR"?`
|
|
6
|
+
`:Array.from(t.childNodes).map(eo).join("")}var _e=e=>{let t=[],o=[],n=e.querySelectorAll("thead th");for(let s of n)t.push(eo(s).trim());let r=e.querySelectorAll("tbody tr");for(let s of r){let a=[],c=s.querySelectorAll("td");for(let i of c)a.push(eo(i).trim());o.push(a);}return {headers:t,rows:o}},Ye=e=>{var o;if(typeof e!="object")return ",";let t=e.table;return typeof t!="object"?",":(o=t.csvSeparator)!=null?o:","},Le=(e,t=",")=>{let o;t==="auto"?Intl.NumberFormat().format(1.1).includes(",")?o=";":o=",":o=t;let{headers:n,rows:r}=e,s=l=>{let d=false;for(let m of l)if(m===o||m==='"'||m===`
|
|
7
7
|
`||m==="\r"){d=true;break}return d?`"${l.replace(/"/g,'""')}"`:l},a=n.length>0?r.length+1:r.length,c=new Array(a),i=0;n.length>0&&(c[i]=n.map(s).join(o),i+=1);for(let l of r)c[i]=l.map(s).join(o),i+=1;return c.join(`
|
|
8
|
-
`)},
|
|
8
|
+
`)},to=e=>{let{headers:t,rows:o}=e,n=c=>{let i=false;for(let d of c)if(d===" "||d===`
|
|
9
9
|
`||d==="\r"){i=true;break}if(!i)return c;let l=[];for(let d of c)d===" "?l.push("\\t"):d===`
|
|
10
10
|
`?l.push("\\n"):d==="\r"?l.push("\\r"):l.push(d);return l.join("")},r=t.length>0?o.length+1:o.length,s=new Array(r),a=0;t.length>0&&(s[a]=t.map(n).join(" "),a+=1);for(let c of o)s[a]=c.map(n).join(" "),a+=1;return s.join(`
|
|
11
11
|
`)},xt=e=>{let t=false;for(let n of e)if(n==="\\"||n==="|"||n===`
|
|
12
12
|
`){t=true;break}if(!t)return e;let o=[];for(let n of e)n==="\\"?o.push("\\\\"):n==="|"?o.push("\\|"):n===`
|
|
13
13
|
`?o.push("<br>"):o.push(n);return o.join("")},Ve=e=>{let{headers:t,rows:o}=e;if(t.length===0)return "";let n=new Array(o.length+2),r=0,s=t.map(c=>xt(c));n[r]=`| ${s.join(" | ")} |`,r+=1;let a=new Array(t.length);for(let c=0;c<t.length;c+=1)a[c]="---";n[r]=`| ${a.join(" | ")} |`,r+=1;for(let c of o)if(c.length<t.length){let i=new Array(t.length);for(let l=0;l<t.length;l+=1)i[l]=l<c.length?xt(c[l]):"";n[r]=`| ${i.join(" | ")} |`,r+=1;}else {let i=c.map(l=>xt(l));n[r]=`| ${i.join(" | ")} |`,r+=1;}return n.join(`
|
|
14
|
-
`)};var et=({children:e,className:t,onCopy:o,onError:n,timeout:r=2e3})=>{let s=v(),[a,c]=useState(false),[i,l]=useState(false),d=useRef(null),m=useRef(0),{isAnimating:u,controls:p}=useContext(E),f=_(),h=Ye(p),g=async x=>{var P,S;if(typeof window=="undefined"||!((P=navigator==null?void 0:navigator.clipboard)!=null&&P.write)){n==null||n(new Error("Clipboard API not available"));return}try{let M=(S=d.current)==null?void 0:S.closest('[data-streamdown="table-wrapper"], [data-streamdown="table-fullscreen"]'),C=M==null?void 0:M.querySelector("table");if(!C){n==null||n(new Error("Table not found"));return}let D=_e(C),B="";x==="csv"?B=Le(D,h):x==="tsv"?B=
|
|
15
|
-
`&&g!==""):[e],u=m[0],p=isValidElement(u)?(h=ie(u).node)==null?void 0:h.tagName:void 0,f=m.length===1&&isValidElement(u)&&(u.type==="p"||p==="p")?ie(u).children:e;return t!=null&&t.includes("task-list-item")?jsx("li",{className:r("my-1 flex list-none items-center gap-2 [&>input]:m-0 [&>p]:inline",t),"data-depth":s>0?s-1:0,"data-streamdown":"list-item",...n,children:f}):jsx("li",{className:r("py-1 [&>p]:inline",d,t),"data-depth":s>0?s-1:0,"data-streamdown":"list-item",...n,children:f})},(e,t)=>A(e,t));An.displayName="MarkdownLi";var Dn=memo(({children:e,className:t,node:o,...n})=>{let r=v(),{depth:s,ulDepth:a}=useContext(nt),c=useMemo(()=>({depth:s+1,ulDepth:a+1,isUnordered:true}),[s,a]);return jsx("ul",{className:r("list-inside whitespace-normal [li_&]:pl-6",t),"data-depth":s,"data-streamdown":"unordered-list",...n,children:jsx(nt.Provider,{value:c,children:e})})},(e,t)=>A(e,t));Dn.displayName="MarkdownUl";var Hn=memo(({className:e,node:t,...o})=>{let n=v();return jsx("hr",{className:n("my-6 border-border",e),"data-streamdown":"horizontal-rule",...o})},(e,t)=>A(e,t));Hn.displayName="MarkdownHr";var Bn=memo(({children:e,className:t,node:o,...n})=>{let r=v();return jsx("span",{className:r("font-semibold",t),"data-streamdown":"strong",...n,children:e})},(e,t)=>A(e,t));Bn.displayName="MarkdownStrong";var ki=({children:e,className:t,href:o,node:n,...r})=>{let s=v(),{linkSafety:a}=useContext(E),[c,i]=useState(false),l=o==="streamdown:incomplete-link",d=useCallback(async f=>{if(!(!(a!=null&&a.enabled&&o)||l)){if(f.preventDefault(),a.onLinkCheck&&await a.onLinkCheck(o)){window.open(o,"_blank","noreferrer");return}i(true);}},[a,o,l]),m=useCallback(()=>{o&&window.open(o,"_blank","noreferrer");},[o]),u=useCallback(()=>{i(false);},[]),p={url:o!=null?o:"",isOpen:c,onClose:u,onConfirm:m};return a!=null&&a.enabled&&o?jsxs(Fragment,{children:[jsx("button",{className:s("wrap-anywhere appearance-none text-left font-medium text-primary underline",t),"data-incomplete":l,"data-streamdown":"link",onClick:d,type:"button",children:e}),a.renderModal?a.renderModal(p):jsx(tn,{...p})]}):jsx("a",{className:s("wrap-anywhere font-medium text-primary underline",t),"data-incomplete":l,"data-streamdown":"link",href:o,rel:"noreferrer",target:"_blank",...r,children:e})},On=memo(ki,(e,t)=>A(e,t));On.displayName="MarkdownA";var _n=memo(({children:e,className:t,node:o,...n})=>{let r=v();return jsx("h1",{className:r("mt-6 mb-2 font-semibold text-3xl",t),"data-streamdown":"heading-1",...n,children:e})},(e,t)=>A(e,t));_n.displayName="MarkdownH1";var Vn=memo(({children:e,className:t,node:o,...n})=>{let r=v();return jsx("h2",{className:r("mt-6 mb-2 font-semibold text-2xl",t),"data-streamdown":"heading-2",...n,children:e})},(e,t)=>A(e,t));Vn.displayName="MarkdownH2";var $n=memo(({children:e,className:t,node:o,...n})=>{let r=v();return jsx("h3",{className:r("mt-6 mb-2 font-semibold text-xl",t),"data-streamdown":"heading-3",...n,children:e})},(e,t)=>A(e,t));$n.displayName="MarkdownH3";var Fn=memo(({children:e,className:t,node:o,...n})=>{let r=v();return jsx("h4",{className:r("mt-6 mb-2 font-semibold text-lg",t),"data-streamdown":"heading-4",...n,children:e})},(e,t)=>A(e,t));Fn.displayName="MarkdownH4";var jn=memo(({children:e,className:t,node:o,...n})=>{let r=v();return jsx("h5",{className:r("mt-6 mb-2 font-semibold text-base",t),"data-streamdown":"heading-5",...n,children:e})},(e,t)=>A(e,t));jn.displayName="MarkdownH5";var zn=memo(({children:e,className:t,node:o,...n})=>{let r=v();return jsx("h6",{className:r("mt-6 mb-2 font-semibold text-sm",t),"data-streamdown":"heading-6",...n,children:e})},(e,t)=>A(e,t));zn.displayName="MarkdownH6";var Wn=memo(({children:e,className:t,node:o,...n})=>{let{controls:r,tableMaxHeight:s}=useContext(E),a=ro(r,"table"),c=no(r,"copy"),i=no(r,"download"),l=no(r,"fullscreen");return jsx(Mn,{className:t,maxHeight:s,showControls:a,showCopy:c,showDownload:i,showFullscreen:l,...n,children:e})},(e,t)=>A(e,t));Wn.displayName="MarkdownTable";var qn=memo(({children:e,className:t,node:o,...n})=>{let r=v();return jsx("thead",{className:r("bg-muted/80",t),"data-streamdown":"table-header",...n,children:e})},(e,t)=>A(e,t));qn.displayName="MarkdownThead";var Zn=memo(({children:e,className:t,node:o,...n})=>{let r=v();return jsx("tbody",{className:r("divide-y divide-border",t),"data-streamdown":"table-body",...n,children:e})},(e,t)=>A(e,t));Zn.displayName="MarkdownTbody";var Kn=memo(({children:e,className:t,node:o,...n})=>{let r=v();return jsx("tr",{className:r("border-border",t),"data-streamdown":"table-row",...n,children:e})},(e,t)=>A(e,t));Kn.displayName="MarkdownTr";var Gn=memo(({children:e,className:t,node:o,...n})=>{let r=v();return jsx("th",{className:r("whitespace-nowrap px-4 py-2 text-left font-semibold text-sm",t),"data-streamdown":"table-header-cell",...n,children:e})},(e,t)=>A(e,t));Gn.displayName="MarkdownTh";var Xn=memo(({children:e,className:t,node:o,...n})=>{let r=v();return jsx("td",{className:r("px-4 py-2 text-sm",t),"data-streamdown":"table-cell",...n,children:e})},(e,t)=>A(e,t));Xn.displayName="MarkdownTd";var Un=memo(({children:e,className:t,node:o,...n})=>{let r=v();return jsx("blockquote",{className:r("my-4 border-muted-foreground/30 border-l-4 pl-4 text-muted-foreground italic",t),"data-streamdown":"blockquote",...n,children:e})},(e,t)=>A(e,t));Un.displayName="MarkdownBlockquote";var Jn=memo(({children:e,className:t,node:o,...n})=>{let r=v();return jsx("sup",{className:r("text-sm",t),"data-streamdown":"superscript",...n,children:e})},(e,t)=>A(e,t));Jn.displayName="MarkdownSup";var Ti=()=>({}),Pi=e=>{try{let t=atob(e),o=Uint8Array.from(t,n=>n.charCodeAt(0));return new TextDecoder().decode(o)}catch(t){return ""}},Yn=memo(({children:e,className:t,node:o,...n})=>{let r=v(),{calloutIcon:s,calloutStyle:a,components:c,remarkPlugins:i,rehypePlugins:l}=useContext(E),d=n,m=d["data-callout-title"],u=d["data-callout-color"],p=d["data-callout-icon"],f=d["data-callout-body"],h=f?Pi(f):"",g=(a!=null?a:Ti)(u),b=p&&s?s(p):null;return jsxs("div",{className:r("my-4 rounded-md border-l-4 px-4 py-3 [&>p:last-child]:mb-0",t),"data-streamdown":"callout",style:g,...n,children:[m!==void 0?jsxs("p",{className:"mb-1 flex items-center gap-2 font-semibold [&>svg]:inline-block",children:[b,m]}):null,h.trim().length>0?jsx(Ue,{components:c,rehypePlugins:l,remarkPlugins:i,children:h}):null]})},(e,t)=>A(e,t));Yn.displayName="MarkdownCallout";var Rn={"markdown-alert-note":"border-l-blue-500 bg-blue-500/5 [&_.markdown-alert-title]:text-blue-600 dark:[&_.markdown-alert-title]:text-blue-400","markdown-alert-tip":"border-l-green-600 bg-green-600/5 [&_.markdown-alert-title]:text-green-700 dark:[&_.markdown-alert-title]:text-green-400","markdown-alert-important":"border-l-purple-600 bg-purple-600/5 [&_.markdown-alert-title]:text-purple-700 dark:[&_.markdown-alert-title]:text-purple-400","markdown-alert-warning":"border-l-amber-600 bg-amber-600/5 [&_.markdown-alert-title]:text-amber-700 dark:[&_.markdown-alert-title]:text-amber-400","markdown-alert-caution":"border-l-red-600 bg-red-600/5 [&_.markdown-alert-title]:text-red-700 dark:[&_.markdown-alert-title]:text-red-400"},Qn=memo(({children:e,className:t,node:o,...n})=>{let r=v(),s=t==null?void 0:t.includes("markdown-alert");if(t==null?void 0:t.includes("sdm-callout"))return jsx(Yn,{className:t,node:o,...n,children:e});if(s){let c=Object.keys(Rn).find(i=>t==null?void 0:t.includes(i));return jsx("div",{className:r("my-4 rounded-r-md border-muted-foreground/30 border-l-4 bg-muted/40 px-4 py-3 [&>p:last-child]:mb-0",c?Rn[c]:null,t),...n,children:e})}return jsx("div",{className:r(t),...n,children:e})},(e,t)=>A(e,t));Qn.displayName="MarkdownDiv";var er=memo(({children:e,className:t,node:o,...n})=>{let r=v();return jsx("sub",{className:r("text-sm",t),"data-streamdown":"subscript",...n,children:e})},(e,t)=>A(e,t));er.displayName="MarkdownSub";var tr=memo(({children:e,className:t,node:o,...n})=>{if("data-footnotes"in n){let s=i=>{if(!isValidElement(i))return false;let l=ie(i).children,d=Array.isArray(l)?l:[l],m=false,u=false;for(let p of d)if(p){if(typeof p=="string")p.trim()!==""&&(m=true);else if(isValidElement(p))if(ie(p)["data-footnote-backref"]!==void 0)u=true;else {let f=ie(p).children,h=Array.isArray(f)?f:[f];for(let g of h){if(typeof g=="string"&&g.trim()!==""){m=true;break}if(isValidElement(g)&&ie(g)["data-footnote-backref"]===void 0){m=true;break}}}}return u&&!m},a=Array.isArray(e)?e.map(i=>{if(!isValidElement(i))return i;if(i.type===so){let l=ie(i).children,m=(Array.isArray(l)?l:[l]).filter(u=>!s(u));return m.length===0?null:{...i,props:{...ie(i),children:m}}}return i}):e;return (Array.isArray(a)?a.some(i=>i!==null):a!==null)?jsx("section",{className:t,...n,children:a}):null}return jsx("section",{className:t,...n,children:e})},(e,t)=>A(e,t));tr.displayName="MarkdownSection";var Si=({node:e,className:t,children:o,...n})=>{var Y,F,H;let r=v(),s=!("data-block"in n),{mermaid:a,controls:c,lineNumbers:i}=useContext(E),l=Oe(),d=Bt(),m=t==null?void 0:t.match(yi),u=(Y=m==null?void 0:m.at(1))!=null?Y:"",p=cn(u);if(s)return jsx("code",{className:r("rounded bg-muted px-1.5 py-0.5 font-mono text-sm",t),"data-streamdown":"inline-code",...n,children:o});let f=(F=e==null?void 0:e.properties)==null?void 0:F.metastring,h=typeof f=="string"?f:void 0,g=h==null?void 0:h.match(gi),b=g?Number.parseInt(g[1],10):void 0,y=b!==void 0&&b>=1?b:void 0,P=!(h?hi.test(h):false)&&i!==false,S=(H=xi(o))!=null?H:"";if(p){let V=p.component;return jsx(Suspense,{fallback:jsx(bt,{}),children:jsx(V,{code:S,isIncomplete:d,language:u,meta:h})})}if(u==="mermaid"&&l){let V=ro(c,"mermaid"),U=vt(c,"download"),Q=vt(c,"copy"),R=vt(c,"fullscreen"),z=vt(c,"panZoom"),re=V&&(U||Q||R);return jsx(Suspense,{fallback:jsx(bt,{}),children:jsxs("div",{className:r("group relative my-4 flex w-full flex-col gap-2 rounded-xl border border-border bg-sidebar p-2",t),"data-incomplete":d||void 0,"data-streamdown":"mermaid-block",children:[jsx("div",{className:r("flex h-8 items-center text-muted-foreground text-xs"),children:jsx("span",{className:r("ml-1 font-mono lowercase"),children:"mermaid"})}),re?jsx("div",{className:r("pointer-events-none sticky top-2 z-10 -mt-10 flex h-8 items-center justify-end"),children:jsxs("div",{className:r("pointer-events-auto flex shrink-0 items-center gap-2 rounded-md border border-sidebar bg-sidebar/80 px-1.5 py-1 supports-[backdrop-filter]:bg-sidebar/70 supports-[backdrop-filter]:backdrop-blur"),"data-streamdown":"mermaid-block-actions",children:[U?jsx(wt,{chart:S,config:a==null?void 0:a.config}):null,Q?jsx(ht,{code:S}):null,R?jsx(Cn,{chart:S,config:a==null?void 0:a.config}):null]})}):null,jsx("div",{className:r("rounded-md border border-border bg-background"),children:jsx(bi,{chart:S,config:a==null?void 0:a.config,showControls:z})})]})})}let M=ro(c,"code"),C=En(c,"download"),D=En(c,"copy"),{"data-block":B,...j}=n;return jsx(Ft,{className:t,code:S,isIncomplete:d,language:u,lineNumbers:P,startLine:y,...j,children:M?jsxs(Fragment,{children:[C?jsx(Wt,{code:S,language:u}):null,D?jsx(ht,{}):null]}):null})},or=memo(Si,(e,t)=>A(e,t)&&wi(e.node,t.node));or.displayName="MarkdownCode";var nr=memo(Yo,(e,t)=>A(e,t));nr.displayName="MarkdownImg";var Ln={caution:"alertCaution",important:"alertImportant",note:"alertNote",tip:"alertTip",warning:"alertWarning"},rr=memo(({children:e,className:t,node:o,...n})=>{let r=v(),s=_(),a=n["data-alert-type"],c=a&&a in Ln?Ln[a]:void 0,i=c?s[c]:void 0,l=e;return i&&(l=[...(Array.isArray(e)?e:[e]).filter(u=>!(typeof u=="string"&&u.trim().length>0)),i]),jsx("p",{className:r("mb-1 flex items-center gap-2 font-semibold [&>svg]:inline-block",t),...n,children:l})},(e,t)=>A(e,t));rr.displayName="MarkdownAlertTitle";var sr=memo(({children:e,className:t,node:o,...n})=>{if(t!=null&&t.includes("markdown-alert-title"))return jsx(rr,{className:t,node:o,...n,children:e});let s=(Array.isArray(e)?e:[e]).filter(a=>a!=null&&a!=="");if(s.length===1&&isValidElement(s[0])){let a=ie(s[0]).node,c=a==null?void 0:a.tagName;if(c==="img")return jsx(Fragment,{children:e});if(c==="code"&&"data-block"in s[0].props)return jsx(Fragment,{children:e})}return jsx("p",{className:t,...n,children:e})},(e,t)=>A(e,t));sr.displayName="MarkdownParagraph";var ar={ol:so,li:An,ul:Dn,hr:Hn,strong:Bn,a:On,h1:_n,h2:Vn,h3:$n,h4:Fn,h5:jn,h6:zn,table:Wn,thead:qn,tbody:Zn,tr:Kn,th:Gn,td:Xn,blockquote:Un,code:or,div:Qn,img:nr,pre:({children:e})=>isValidElement(e)?cloneElement(e,{"data-block":"true"}):e,sup:Jn,sub:er,p:sr,section:tr};var Mi=/[\u0590-\u08FF\uFB1D-\uFDFF\uFE70-\uFEFF]/,Ii=/\p{L}/u;function rt(e){let t=e.replace(/(```|~~~)[\s\S]*?\1/g,"").replace(/^#{1,6}\s+/gm,"").replace(/(\*{1,3}|_{1,3})/g,"").replace(/`[^`]*`/g,"").replace(/\[([^\]]*)\]\([^)]*\)/g,"$1").replace(/^[\s>*\-+\d.]+/gm,""),o,n=0,r=0;for(let s of t){if(Mi.test(s)){o!=null||(o="rtl"),r+=1;continue}Ii.test(s)&&(o!=null||(o="ltr"),n+=1);}return r>n?"rtl":n>r?"ltr":o!=null?o:"ltr"}var Ei=/^[ \t]{0,3}(`{3,}|~{3,})/;var ir=e=>{let t=e.split(`
|
|
16
|
-
`),o=null,n=0;for(let r of t){let s=
|
|
17
|
-
`))return e+t+o;let r=t.replace(
|
|
14
|
+
`)};var et=({children:e,className:t,onCopy:o,onError:n,timeout:r=2e3})=>{let s=v(),[a,c]=useState(false),[i,l]=useState(false),d=useRef(null),m=useRef(0),{isAnimating:u,controls:p}=useContext(E),f=_(),h=Ye(p),g=async x=>{var P,S;if(typeof window=="undefined"||!((P=navigator==null?void 0:navigator.clipboard)!=null&&P.write)){n==null||n(new Error("Clipboard API not available"));return}try{let M=(S=d.current)==null?void 0:S.closest('[data-streamdown="table-wrapper"], [data-streamdown="table-fullscreen"]'),C=M==null?void 0:M.querySelector("table");if(!C){n==null||n(new Error("Table not found"));return}let D=_e(C),B="";x==="csv"?B=Le(D,h):x==="tsv"?B=to(D):B=Ve(D);let j=new ClipboardItem({"text/plain":new Blob([B],{type:"text/plain"}),"text/html":new Blob([C.outerHTML],{type:"text/html"})});await navigator.clipboard.write([j]),l(!0),c(!1),o==null||o(x),m.current=window.setTimeout(()=>l(!1),r);}catch(M){n==null||n(M);}};useEffect(()=>{let x=P=>{let S=P.composedPath();d.current&&!S.includes(d.current)&&c(false);};return document.addEventListener("mousedown",x),()=>{document.removeEventListener("mousedown",x),window.clearTimeout(m.current);}},[]);let b=O(),y=i?b.CheckIcon:b.CopyIcon;return jsxs("div",{className:s("relative"),ref:d,children:[jsx("button",{className:s("cursor-pointer p-1 text-muted-foreground transition-all hover:text-foreground disabled:cursor-not-allowed disabled:opacity-50",t),disabled:u,onClick:()=>c(!a),title:f.copyTable,type:"button",children:e!=null?e:jsx(y,{height:14,width:14})}),a?jsxs("div",{className:s("absolute top-full right-0 z-20 mt-1 min-w-[120px] overflow-hidden rounded-md border border-border bg-background shadow-lg"),children:[jsx("button",{className:s("w-full px-3 py-2 text-left text-sm transition-colors hover:bg-muted/40"),onClick:()=>g("md"),title:f.copyTableAsMarkdown,type:"button",children:f.tableFormatMarkdown}),jsx("button",{className:s("w-full px-3 py-2 text-left text-sm transition-colors hover:bg-muted/40"),onClick:()=>g("csv"),title:f.copyTableAsCsv,type:"button",children:f.tableFormatCsv}),jsx("button",{className:s("w-full px-3 py-2 text-left text-sm transition-colors hover:bg-muted/40"),onClick:()=>g("tsv"),title:f.copyTableAsTsv,type:"button",children:f.tableFormatTsv})]}):null]})};var li=({children:e,className:t,onDownload:o,onError:n,format:r="csv",filename:s})=>{let a=v(),{isAnimating:c,controls:i}=useContext(E),l=_(),d=O(),m=Ye(i),u=p=>{try{let h=p.currentTarget.closest('[data-streamdown="table-wrapper"], [data-streamdown="table-fullscreen"]'),g=h==null?void 0:h.querySelector("table");if(!g){n==null||n(new Error("Table not found"));return}let b=_e(g),y="",x="",P="";switch(r){case "csv":y=Le(b,m),x="text/csv",P="csv";break;case "markdown":y=Ve(b),x="text/markdown",P="md";break;default:y=Le(b,m),x="text/csv",P="csv";}oe(`${s||Ie(i,"table","table")}.${P}`,y,x),o==null||o();}catch(f){n==null||n(f);}};return jsx("button",{className:a("cursor-pointer p-1 text-muted-foreground transition-all hover:text-foreground disabled:cursor-not-allowed disabled:opacity-50",t),disabled:c,onClick:u,title:r==="csv"?l.downloadTableAsCsv:l.downloadTableAsMarkdown,type:"button",children:e!=null?e:jsx(d.DownloadIcon,{size:14})})},tt=({children:e,className:t,onDownload:o,onError:n})=>{let r=v(),[s,a]=useState(false),c=useRef(null),{isAnimating:i,controls:l}=useContext(E),d=_(),m=O(),u=Ye(l),p=f=>{var h;try{let g=(h=c.current)==null?void 0:h.closest('[data-streamdown="table-wrapper"], [data-streamdown="table-fullscreen"]'),b=g==null?void 0:g.querySelector("table");if(!b){n==null||n(new Error("Table not found"));return}let y=_e(b),x=f==="csv"?Le(y,u):Ve(y),P=f==="csv"?"csv":"md",S=`${Ie(l,"table","table")}.${P}`;oe(S,x,f==="csv"?"text/csv":"text/markdown"),a(!1),o==null||o(f);}catch(g){n==null||n(g);}};return useEffect(()=>{let f=h=>{let g=h.composedPath();c.current&&!g.includes(c.current)&&a(false);};return document.addEventListener("mousedown",f),()=>{document.removeEventListener("mousedown",f);}},[]),jsxs("div",{className:r("relative"),ref:c,children:[jsx("button",{className:r("cursor-pointer p-1 text-muted-foreground transition-all hover:text-foreground disabled:cursor-not-allowed disabled:opacity-50",t),disabled:i,onClick:()=>a(!s),title:d.downloadTable,type:"button",children:e!=null?e:jsx(m.DownloadIcon,{size:14})}),s?jsxs("div",{className:r("absolute top-full right-0 z-20 mt-1 min-w-[120px] overflow-hidden rounded-md border border-border bg-background shadow-lg"),children:[jsx("button",{className:r("w-full px-3 py-2 text-left text-sm transition-colors hover:bg-muted/40"),onClick:()=>p("csv"),title:d.downloadTableAsCsv,type:"button",children:d.tableFormatCsv}),jsx("button",{className:r("w-full px-3 py-2 text-left text-sm transition-colors hover:bg-muted/40"),onClick:()=>p("markdown"),title:d.downloadTableAsMarkdown,type:"button",children:d.tableFormatMarkdown})]}):null]})};var Mn=({children:e,className:t,showCopy:o=true,showDownload:n=true})=>{let{Maximize2Icon:r,XIcon:s}=O(),a=v(),[c,i]=useState(false),{isAnimating:l,portal:d}=useContext(E),m=_(),u=()=>{i(true);},p=()=>{i(false);};return useEffect(()=>{if(c){he();let f=h=>{h.key==="Escape"&&i(false);};return document.addEventListener("keydown",f),()=>{document.removeEventListener("keydown",f),be();}}},[c]),jsxs(Fragment,{children:[jsx("button",{className:a("cursor-pointer p-1 text-muted-foreground transition-all hover:text-foreground disabled:cursor-not-allowed disabled:opacity-50",t),disabled:l,onClick:u,title:m.viewFullscreen,type:"button",children:jsx(r,{size:14})}),c?createPortal(jsx("div",{"aria-label":m.viewFullscreen,"aria-modal":"true",className:a("fixed inset-0 z-50 flex flex-col bg-background"),"data-streamdown":"table-fullscreen",onClick:p,onKeyDown:f=>{f.key==="Escape"&&p();},role:"dialog",children:jsxs("div",{className:a("flex h-full flex-col"),onClick:f=>f.stopPropagation(),onKeyDown:f=>f.stopPropagation(),role:"presentation",children:[jsxs("div",{className:a("flex items-center justify-end gap-1 p-4"),children:[o?jsx(et,{}):null,n?jsx(tt,{}):null,jsx("button",{className:a("rounded-md p-1 text-muted-foreground transition-all hover:bg-muted hover:text-foreground"),onClick:p,title:m.exitFullscreen,type:"button",children:jsx(s,{size:20})})]}),jsx("div",{className:a("flex-1 overflow-auto p-4 pt-0 [&_thead]:sticky [&_thead]:top-0 [&_thead]:z-10"),children:jsx("table",{className:a("w-full table-fixed border-collapse border border-border"),"data-streamdown":"table",children:e})})]})}),Be(d)):null]})};var En=({children:e,className:t,maxHeight:o,showControls:n,showCopy:r=true,showDownload:s=true,showFullscreen:a=true,...c})=>{let i=v(),{isAnimating:l,scrollable:d}=useContext(E),m=d!=null?d:qe,u=dt(o),p=ut({content:e,enabled:!!u,isAnimating:l}),f=n&&r,h=n&&s,g=n&&a,b=f||h||g;return jsxs("div",{className:i("my-4 flex flex-col gap-2 rounded-lg border border-border bg-sidebar p-2"),"data-streamdown":"table-wrapper",children:[b?jsxs("div",{className:i("flex items-center justify-end gap-1"),children:[f?jsx(et,{}):null,h?jsx(tt,{}):null,g?jsx(Mn,{showCopy:f,showDownload:h,children:e}):null]}):null,jsx(m,{className:i("border-collapse overflow-x-auto overflow-y-auto rounded-md border border-border bg-background"),scrollRef:p,style:u?{maxHeight:u}:void 0,children:jsx("table",{className:i("w-full table-fixed divide-y divide-border",t),"data-streamdown":"table",...c,children:e})})]})};var Ci=/startLine=(\d+)/,wi=/\bnoLineNumbers\b/,xi=lazy(()=>import('./mermaid-RWUV64UX.js').then(e=>({default:e.Mermaid}))),vi=/language-([^\s]+)/,ie=e=>e.props,ki="node";function A(e,t){let o=Object.keys(e);if(o.length!==Object.keys(t).length)return false;let n=e,r=t;for(let s of o)if(s!==ki&&!Object.is(n[s],r[s]))return false;return true}function Ti(e,t){var o,n;return ((o=e==null?void 0:e.properties)==null?void 0:o.metastring)===((n=t==null?void 0:t.properties)==null?void 0:n.metastring)}function Pi(e){if(typeof e=="string")return e;if(isValidElement(e)){let t=ie(e).children;if(typeof t=="string")return t}}var so=(e,t)=>typeof e=="boolean"?e:e[t]!==false,ro=(e,t)=>{if(typeof e=="boolean")return e;let o=e.table;return o===false?false:o===true||o===void 0?true:o[t]!==false},Ln=(e,t)=>{if(typeof e=="boolean")return e;let o=e.code;return o===false?false:o===true||o===void 0?true:o[t]!==false},vt=(e,t)=>{if(typeof e=="boolean")return e;let o=e.mermaid;return o===false?false:o===true||o===void 0?true:o[t]!==false},nt=createContext({depth:0,ulDepth:0,isUnordered:false}),Si={flat:["list-disc"],hierarchical:["list-disc","list-[circle]","list-[square]"]},ao=memo(({children:e,className:t,node:o,...n})=>{let r=v(),{depth:s,ulDepth:a}=useContext(nt),c=useMemo(()=>({depth:s+1,ulDepth:a,isUnordered:false}),[s,a]);return jsx("ol",{className:r("list-inside list-decimal whitespace-normal [li_&]:pl-6",t),"data-depth":s,"data-streamdown":"ordered-list",...n,children:jsx(nt.Provider,{value:c,children:e})})},(e,t)=>A(e,t));ao.displayName="MarkdownOl";var Hn=memo(({children:e,className:t,node:o,...n})=>{var h;let r=v(),{depth:s,ulDepth:a,isUnordered:c}=useContext(nt),{listStyle:i}=useContext(E),l=Si[i],d=c&&a>0?l[(a-1)%l.length]:void 0,m=Array.isArray(e)?e.filter(g=>g!==`
|
|
15
|
+
`&&g!==""):[e],u=m[0],p=isValidElement(u)?(h=ie(u).node)==null?void 0:h.tagName:void 0,f=m.length===1&&isValidElement(u)&&(u.type==="p"||p==="p")?ie(u).children:e;return t!=null&&t.includes("task-list-item")?jsx("li",{className:r("my-1 flex list-none items-center gap-2 [&>input]:m-0 [&>p]:inline",t),"data-depth":s>0?s-1:0,"data-streamdown":"list-item",...n,children:f}):jsx("li",{className:r("py-1 [&>p]:inline",d,t),"data-depth":s>0?s-1:0,"data-streamdown":"list-item",...n,children:f})},(e,t)=>A(e,t));Hn.displayName="MarkdownLi";var Bn=memo(({children:e,className:t,node:o,...n})=>{let r=v(),{depth:s,ulDepth:a}=useContext(nt),c=useMemo(()=>({depth:s+1,ulDepth:a+1,isUnordered:true}),[s,a]);return jsx("ul",{className:r("list-inside whitespace-normal [li_&]:pl-6",t),"data-depth":s,"data-streamdown":"unordered-list",...n,children:jsx(nt.Provider,{value:c,children:e})})},(e,t)=>A(e,t));Bn.displayName="MarkdownUl";var On=memo(({className:e,node:t,...o})=>{let n=v();return jsx("hr",{className:n("my-6 border-border",e),"data-streamdown":"horizontal-rule",...o})},(e,t)=>A(e,t));On.displayName="MarkdownHr";var _n=memo(({children:e,className:t,node:o,...n})=>{let r=v();return jsx("span",{className:r("font-semibold",t),"data-streamdown":"strong",...n,children:e})},(e,t)=>A(e,t));_n.displayName="MarkdownStrong";var Mi=({children:e,className:t,href:o,node:n,...r})=>{let s=v(),{linkSafety:a}=useContext(E),[c,i]=useState(false),l=o==="streamdown:incomplete-link",d=useCallback(async f=>{if(!(!(a!=null&&a.enabled&&o)||l)){if(f.preventDefault(),a.onLinkCheck&&await a.onLinkCheck(o)){window.open(o,"_blank","noreferrer");return}i(true);}},[a,o,l]),m=useCallback(()=>{o&&window.open(o,"_blank","noreferrer");},[o]),u=useCallback(()=>{i(false);},[]),p={url:o!=null?o:"",isOpen:c,onClose:u,onConfirm:m};return a!=null&&a.enabled&&o?jsxs(Fragment,{children:[jsx("button",{className:s("wrap-anywhere appearance-none text-left font-medium text-primary underline",t),"data-incomplete":l,"data-streamdown":"link",onClick:d,type:"button",children:e}),a.renderModal?a.renderModal(p):jsx(on,{...p})]}):jsx("a",{className:s("wrap-anywhere font-medium text-primary underline",t),"data-incomplete":l,"data-streamdown":"link",href:o,rel:"noreferrer",target:"_blank",...r,children:e})},Vn=memo(Mi,(e,t)=>A(e,t));Vn.displayName="MarkdownA";var $n=memo(({children:e,className:t,node:o,...n})=>{let r=v();return jsx("h1",{className:r("mt-6 mb-2 font-semibold text-3xl",t),"data-streamdown":"heading-1",...n,children:e})},(e,t)=>A(e,t));$n.displayName="MarkdownH1";var Fn=memo(({children:e,className:t,node:o,...n})=>{let r=v();return jsx("h2",{className:r("mt-6 mb-2 font-semibold text-2xl",t),"data-streamdown":"heading-2",...n,children:e})},(e,t)=>A(e,t));Fn.displayName="MarkdownH2";var jn=memo(({children:e,className:t,node:o,...n})=>{let r=v();return jsx("h3",{className:r("mt-6 mb-2 font-semibold text-xl",t),"data-streamdown":"heading-3",...n,children:e})},(e,t)=>A(e,t));jn.displayName="MarkdownH3";var zn=memo(({children:e,className:t,node:o,...n})=>{let r=v();return jsx("h4",{className:r("mt-6 mb-2 font-semibold text-lg",t),"data-streamdown":"heading-4",...n,children:e})},(e,t)=>A(e,t));zn.displayName="MarkdownH4";var Wn=memo(({children:e,className:t,node:o,...n})=>{let r=v();return jsx("h5",{className:r("mt-6 mb-2 font-semibold text-base",t),"data-streamdown":"heading-5",...n,children:e})},(e,t)=>A(e,t));Wn.displayName="MarkdownH5";var qn=memo(({children:e,className:t,node:o,...n})=>{let r=v();return jsx("h6",{className:r("mt-6 mb-2 font-semibold text-sm",t),"data-streamdown":"heading-6",...n,children:e})},(e,t)=>A(e,t));qn.displayName="MarkdownH6";var Zn=memo(({children:e,className:t,node:o,...n})=>{let{controls:r,tableMaxHeight:s}=useContext(E),a=so(r,"table"),c=ro(r,"copy"),i=ro(r,"download"),l=ro(r,"fullscreen");return jsx(En,{className:t,maxHeight:s,showControls:a,showCopy:c,showDownload:i,showFullscreen:l,...n,children:e})},(e,t)=>A(e,t));Zn.displayName="MarkdownTable";var Kn=memo(({children:e,className:t,node:o,...n})=>{let r=v();return jsx("thead",{className:r("bg-muted/80",t),"data-streamdown":"table-header",...n,children:e})},(e,t)=>A(e,t));Kn.displayName="MarkdownThead";var Gn=memo(({children:e,className:t,node:o,...n})=>{let r=v();return jsx("tbody",{className:r("divide-y divide-border",t),"data-streamdown":"table-body",...n,children:e})},(e,t)=>A(e,t));Gn.displayName="MarkdownTbody";var Xn=memo(({children:e,className:t,node:o,...n})=>{let r=v();return jsx("tr",{className:r("border-border",t),"data-streamdown":"table-row",...n,children:e})},(e,t)=>A(e,t));Xn.displayName="MarkdownTr";var Un=memo(({children:e,className:t,node:o,title:n,...r})=>{let s=v(),a=xn(e,o,n);return jsx("th",{className:s("min-w-0 overflow-hidden px-4 py-2 text-left font-semibold text-sm",t),"data-streamdown":"table-header-cell",...r,title:a,children:jsx("span",{className:s("wrap-anywhere line-clamp-2"),children:e})})},(e,t)=>A(e,t));Un.displayName="MarkdownTh";var Jn=memo(({children:e,className:t,node:o,...n})=>{let r=v();return jsx("td",{className:r("wrap-anywhere min-w-0 px-4 py-2 text-sm",t),"data-streamdown":"table-cell",...n,children:e})},(e,t)=>A(e,t));Jn.displayName="MarkdownTd";var Yn=memo(({children:e,className:t,node:o,...n})=>{let r=v();return jsx("blockquote",{className:r("my-4 border-muted-foreground/30 border-l-4 pl-4 text-muted-foreground italic",t),"data-streamdown":"blockquote",...n,children:e})},(e,t)=>A(e,t));Yn.displayName="MarkdownBlockquote";var Qn=memo(({children:e,className:t,node:o,...n})=>{let r=v();return jsx("sup",{className:r("text-sm",t),"data-streamdown":"superscript",...n,children:e})},(e,t)=>A(e,t));Qn.displayName="MarkdownSup";var Ii=()=>({}),Ei=e=>{try{let t=atob(e),o=Uint8Array.from(t,n=>n.charCodeAt(0));return new TextDecoder().decode(o)}catch(t){return ""}},er=memo(({children:e,className:t,node:o,...n})=>{let r=v(),{calloutIcon:s,calloutStyle:a,components:c,remarkPlugins:i,rehypePlugins:l}=useContext(E),d=n,m=d["data-callout-title"],u=d["data-callout-color"],p=d["data-callout-icon"],f=d["data-callout-body"],h=f?Ei(f):"",g=(a!=null?a:Ii)(u),b=p&&s?s(p):null;return jsxs("div",{className:r("my-4 rounded-md border-l-4 px-4 py-3 [&>p:last-child]:mb-0",t),"data-streamdown":"callout",style:g,...n,children:[m!==void 0?jsxs("p",{className:"mb-1 flex items-center gap-2 font-semibold [&>svg]:inline-block",children:[b,m]}):null,h.trim().length>0?jsx(Ue,{components:c,rehypePlugins:l,remarkPlugins:i,children:h}):null]})},(e,t)=>A(e,t));er.displayName="MarkdownCallout";var Nn={"markdown-alert-note":"border-l-blue-500 bg-blue-500/5 [&_.markdown-alert-title]:text-blue-600 dark:[&_.markdown-alert-title]:text-blue-400","markdown-alert-tip":"border-l-green-600 bg-green-600/5 [&_.markdown-alert-title]:text-green-700 dark:[&_.markdown-alert-title]:text-green-400","markdown-alert-important":"border-l-purple-600 bg-purple-600/5 [&_.markdown-alert-title]:text-purple-700 dark:[&_.markdown-alert-title]:text-purple-400","markdown-alert-warning":"border-l-amber-600 bg-amber-600/5 [&_.markdown-alert-title]:text-amber-700 dark:[&_.markdown-alert-title]:text-amber-400","markdown-alert-caution":"border-l-red-600 bg-red-600/5 [&_.markdown-alert-title]:text-red-700 dark:[&_.markdown-alert-title]:text-red-400"},tr=memo(({children:e,className:t,node:o,...n})=>{let r=v(),s=t==null?void 0:t.includes("markdown-alert");if(t==null?void 0:t.includes("sdm-callout"))return jsx(er,{className:t,node:o,...n,children:e});if(s){let c=Object.keys(Nn).find(i=>t==null?void 0:t.includes(i));return jsx("div",{className:r("my-4 rounded-r-md border-muted-foreground/30 border-l-4 bg-muted/40 px-4 py-3 [&>p:last-child]:mb-0",c?Nn[c]:null,t),...n,children:e})}return jsx("div",{className:r(t),...n,children:e})},(e,t)=>A(e,t));tr.displayName="MarkdownDiv";var or=memo(({children:e,className:t,node:o,...n})=>{let r=v();return jsx("sub",{className:r("text-sm",t),"data-streamdown":"subscript",...n,children:e})},(e,t)=>A(e,t));or.displayName="MarkdownSub";var nr=memo(({children:e,className:t,node:o,...n})=>{if("data-footnotes"in n){let s=i=>{if(!isValidElement(i))return false;let l=ie(i).children,d=Array.isArray(l)?l:[l],m=false,u=false;for(let p of d)if(p){if(typeof p=="string")p.trim()!==""&&(m=true);else if(isValidElement(p))if(ie(p)["data-footnote-backref"]!==void 0)u=true;else {let f=ie(p).children,h=Array.isArray(f)?f:[f];for(let g of h){if(typeof g=="string"&&g.trim()!==""){m=true;break}if(isValidElement(g)&&ie(g)["data-footnote-backref"]===void 0){m=true;break}}}}return u&&!m},a=Array.isArray(e)?e.map(i=>{if(!isValidElement(i))return i;if(i.type===ao){let l=ie(i).children,m=(Array.isArray(l)?l:[l]).filter(u=>!s(u));return m.length===0?null:{...i,props:{...ie(i),children:m}}}return i}):e;return (Array.isArray(a)?a.some(i=>i!==null):a!==null)?jsx("section",{className:t,...n,children:a}):null}return jsx("section",{className:t,...n,children:e})},(e,t)=>A(e,t));nr.displayName="MarkdownSection";var Ri=({node:e,className:t,children:o,...n})=>{var Y,F,H;let r=v(),s=!("data-block"in n),{mermaid:a,controls:c,lineNumbers:i}=useContext(E),l=Oe(),d=Bt(),m=t==null?void 0:t.match(vi),u=(Y=m==null?void 0:m.at(1))!=null?Y:"",p=dn(u);if(s)return jsx("code",{className:r("rounded bg-muted px-1.5 py-0.5 font-mono text-sm",t),"data-streamdown":"inline-code",...n,children:o});let f=(F=e==null?void 0:e.properties)==null?void 0:F.metastring,h=typeof f=="string"?f:void 0,g=h==null?void 0:h.match(Ci),b=g?Number.parseInt(g[1],10):void 0,y=b!==void 0&&b>=1?b:void 0,P=!(h?wi.test(h):false)&&i!==false,S=(H=Pi(o))!=null?H:"";if(p){let V=p.component;return jsx(Suspense,{fallback:jsx(bt,{}),children:jsx(V,{code:S,isIncomplete:d,language:u,meta:h})})}if(u==="mermaid"&&l){let V=so(c,"mermaid"),U=vt(c,"download"),Q=vt(c,"copy"),R=vt(c,"fullscreen"),z=vt(c,"panZoom"),re=V&&(U||Q||R);return jsx(Suspense,{fallback:jsx(bt,{}),children:jsxs("div",{className:r("group relative my-4 flex w-full flex-col gap-2 rounded-xl border border-border bg-sidebar p-2",t),"data-incomplete":d||void 0,"data-streamdown":"mermaid-block",children:[jsx("div",{className:r("flex h-8 items-center text-muted-foreground text-xs"),children:jsx("span",{className:r("ml-1 font-mono lowercase"),children:"mermaid"})}),re?jsx("div",{className:r("pointer-events-none sticky top-2 z-10 -mt-10 flex h-8 items-center justify-end"),children:jsxs("div",{className:r("pointer-events-auto flex shrink-0 items-center gap-2 rounded-md border border-sidebar bg-sidebar/80 px-1.5 py-1 supports-[backdrop-filter]:bg-sidebar/70 supports-[backdrop-filter]:backdrop-blur"),"data-streamdown":"mermaid-block-actions",children:[U?jsx(wt,{chart:S,config:a==null?void 0:a.config}):null,Q?jsx(ht,{code:S}):null,R?jsx(wn,{chart:S,config:a==null?void 0:a.config}):null]})}):null,jsx("div",{className:r("rounded-md border border-border bg-background"),children:jsx(xi,{chart:S,config:a==null?void 0:a.config,showControls:z})})]})})}let M=so(c,"code"),C=Ln(c,"download"),D=Ln(c,"copy"),{"data-block":B,...j}=n;return jsx(Ft,{className:t,code:S,isIncomplete:d,language:u,lineNumbers:P,startLine:y,...j,children:M?jsxs(Fragment,{children:[C?jsx(Wt,{code:S,language:u}):null,D?jsx(ht,{}):null]}):null})},rr=memo(Ri,(e,t)=>A(e,t)&&Ti(e.node,t.node));rr.displayName="MarkdownCode";var sr=memo(Qo,(e,t)=>A(e,t));sr.displayName="MarkdownImg";var An={caution:"alertCaution",important:"alertImportant",note:"alertNote",tip:"alertTip",warning:"alertWarning"},ar=memo(({children:e,className:t,node:o,...n})=>{let r=v(),s=_(),a=n["data-alert-type"],c=a&&a in An?An[a]:void 0,i=c?s[c]:void 0,l=e;return i&&(l=[...(Array.isArray(e)?e:[e]).filter(u=>!(typeof u=="string"&&u.trim().length>0)),i]),jsx("p",{className:r("mb-1 flex items-center gap-2 font-semibold [&>svg]:inline-block",t),...n,children:l})},(e,t)=>A(e,t));ar.displayName="MarkdownAlertTitle";var ir=memo(({children:e,className:t,node:o,...n})=>{if(t!=null&&t.includes("markdown-alert-title"))return jsx(ar,{className:t,node:o,...n,children:e});let s=(Array.isArray(e)?e:[e]).filter(a=>a!=null&&a!=="");if(s.length===1&&isValidElement(s[0])){let a=ie(s[0]).node,c=a==null?void 0:a.tagName;if(c==="img")return jsx(Fragment,{children:e});if(c==="code"&&"data-block"in s[0].props)return jsx(Fragment,{children:e})}return jsx("p",{className:t,...n,children:e})},(e,t)=>A(e,t));ir.displayName="MarkdownParagraph";var lr={ol:ao,li:Hn,ul:Bn,hr:On,strong:_n,a:Vn,h1:$n,h2:Fn,h3:jn,h4:zn,h5:Wn,h6:qn,table:Zn,thead:Kn,tbody:Gn,tr:Xn,th:Un,td:Jn,blockquote:Yn,code:rr,div:tr,img:sr,pre:({children:e})=>isValidElement(e)?cloneElement(e,{"data-block":"true"}):e,sup:Qn,sub:or,p:ir,section:nr};var Li=/[\u0590-\u08FF\uFB1D-\uFDFF\uFE70-\uFEFF]/,Ni=/\p{L}/u;function rt(e){let t=e.replace(/(```|~~~)[\s\S]*?\1/g,"").replace(/^#{1,6}\s+/gm,"").replace(/(\*{1,3}|_{1,3})/g,"").replace(/`[^`]*`/g,"").replace(/\[([^\]]*)\]\([^)]*\)/g,"$1").replace(/^[\s>*\-+\d.]+/gm,""),o,n=0,r=0;for(let s of t){if(Li.test(s)){o!=null||(o="rtl"),r+=1;continue}Ni.test(s)&&(o!=null||(o="ltr"),n+=1);}return r>n?"rtl":n>r?"ltr":o!=null?o:"ltr"}var Ai=/^[ \t]{0,3}(`{3,}|~{3,})/;var cr=e=>{let t=e.split(`
|
|
16
|
+
`),o=null,n=0;for(let r of t){let s=Ai.exec(r);if(o===null){if(s){let a=s[1];o=a[0],n=a.length;}}else if(s){let a=s[1],c=a[0],i=a.length;c===o&&i>=n&&(o=null,n=0);}}return o!==null};var Hi=/\[\^[\w-]{1,200}\](?!:)/,Bi=/\[\^[\w-]{1,200}\]:/,Oi=/<([A-Za-z][\w:-]*)[\s>/]/,_i=new Set(["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","wbr"]),dr=new Map,mr=new Map,fr=e=>{let t=e.toLowerCase(),o=dr.get(t);if(o)return o;let n=new RegExp(`<${t}(?=[\\s>/])[^>]*>`,"gi");return dr.set(t,n),n},Vi=e=>{let t=e.toLowerCase(),o=mr.get(t);if(o)return o;let n=new RegExp(`</${t}(?=[\\s>])[^>]*>`,"gi");return mr.set(t,n),n},ur=(e,t)=>{if(_i.has(t.toLowerCase()))return 0;let o=e.match(fr(t));if(!o)return 0;let n=0;for(let r of o)r.trimEnd().endsWith("/>")||(n+=1);return n},pr=(e,t)=>{let o=e.match(Vi(t));return o?o.length:0},$i=(e,t)=>{let o=e.match(fr(t));return !!o&&o.every(n=>n.trimEnd().endsWith("/>"))},Fi=e=>{let t=0;for(let o=0;o<e.length-1;o+=1)e[o]==="$"&&e[o+1]==="$"&&(t+=1,o+=1);return t},Tt=e=>{let t=Hi.test(e),o=Bi.test(e);if(t||o)return [e];let n=Lexer.lex(e,{gfm:true}),r=[],s=[],a=false;for(let c of n){let i=c.raw,l=r.length;if(s.length>0){r[l-1]+=i;let d=s.at(-1),m=ur(i,d),u=pr(i,d);for(let p=0;p<m;p+=1)s.push(d);for(let p=0;p<u;p+=1)s.length>0&&s.at(-1)===d&&s.pop();continue}if(c.type==="html"&&c.block){let d=i.match(Oi);if(d){let m=d[1],u=ur(i,m),p=pr(i,m);u>p&&!$i(i,m)&&s.push(m);}}if(l>0&&!a){let d=r[l-1];if(Fi(d)%2===1){r[l-1]=d+i;continue}}r.push(i),c.type!=="space"&&(a=c.type==="code");}return r},io=(e,t,o=Tt)=>{if(!(t!=null&&t.source&&e.startsWith(t.source)))return {source:e,blocks:o(e)};if(e===t.source)return t;if(t.blocks.length<=1)return {source:e,blocks:o(e)};let n=t.blocks.slice(0,-1),r=0;for(let i of n)r+=i.length;let s=e.slice(0,r);if(n.join("")!==s)return {source:e,blocks:o(e)};let a=e.slice(r),c=o(a);return {source:e,blocks:[...n,...c]}};var ji=/^\n*/,zi=/\n*$/,lo=/\n\n/g,Wi=(e,t,o)=>{if(!t.includes(`
|
|
17
|
+
`))return e+t+o;let r=t.replace(lo,`
|
|
18
18
|
<!---->
|
|
19
|
-
`).replace(
|
|
19
|
+
`).replace(ji,`
|
|
20
20
|
|
|
21
|
-
`).replace(
|
|
21
|
+
`).replace(zi,`
|
|
22
22
|
|
|
23
23
|
`);return `${e}${r}${o}
|
|
24
24
|
|
|
25
|
-
`},
|
|
25
|
+
`},qi=(e,t)=>{let o=new RegExp(`<(${t})(?=[\\s>/])([^>]*)>`,"gi"),n="",r=0,s=o.exec(e);for(;s;){let a=s[0],c=s[1],i=s.index+a.length,l=e.slice(i);if(new RegExp(`</${c}\\s*>`,"i").test(l)){s=o.exec(e);continue}if(n+=e.slice(r,s.index),l.length===0){n+=a,r=i,s=o.exec(e);continue}if(l.startsWith(`
|
|
26
26
|
|
|
27
|
-
`)){let p=l.slice(2).replace(
|
|
27
|
+
`)){let p=l.slice(2).replace(lo,`
|
|
28
28
|
<!---->
|
|
29
29
|
`);n+=`${a}
|
|
30
30
|
|
|
31
31
|
${p}`,r=e.length;break}if(!l.startsWith(`
|
|
32
|
-
`)){n+=a,r=i,s=o.exec(e);continue}let m=l.slice(1);if(m.trim().length===0){n+=a,r=i,s=o.exec(e);continue}let u=m.replace(
|
|
32
|
+
`)){n+=a,r=i,s=o.exec(e);continue}let m=l.slice(1);if(m.trim().length===0){n+=a,r=i,s=o.exec(e);continue}let u=m.replace(lo,`
|
|
33
33
|
<!---->
|
|
34
34
|
`);n+=`${a}
|
|
35
35
|
|
|
36
|
-
${u}`,r=e.length;break}return r===0?e:n+e.slice(r)},
|
|
37
|
-
`))return;let i=
|
|
38
|
-
`).trim();return {replacement:`<div ${['class="sdm-callout"',r.title!==void 0?`data-callout-title="${
|
|
39
|
-
`),o=[],n=0,r=false;for(;n<t.length;)if(
|
|
40
|
-
`):e},Pr=()=>()=>{};var fl={NOTE:{icon:"info",kind:"note",title:"Note",iconPaths:[{d:"M0 8a8 8 0 1 1 16 0A8 8 0 0 1 0 8Zm8-6.5a6.5 6.5 0 1 0 0 13 6.5 6.5 0 0 0 0-13ZM6.5 7.75A.75.75 0 0 1 7.25 7h1a.75.75 0 0 1 .75.75v2.75h.25a.75.75 0 0 1 0 1.5h-2a.75.75 0 0 1 0-1.5h.25v-2h-.25a.75.75 0 0 1-.75-.75ZM8 6a1 1 0 1 1 0-2 1 1 0 0 1 0 2Z"}]},TIP:{icon:"light-bulb",kind:"tip",title:"Tip",iconPaths:[{d:"M8 1.5c-2.363 0-4 1.69-4 3.75 0 .984.424 1.625.984 2.304l.214.253c.223.264.47.556.673.848.284.411.537.896.621 1.49a.75.75 0 0 1-1.484.211c-.04-.282-.163-.547-.37-.847a8.456 8.456 0 0 0-.542-.68c-.084-.1-.173-.205-.268-.32C3.201 7.75 2.5 6.766 2.5 5.25 2.5 2.31 4.863 0 8 0s5.5 2.31 5.5 5.25c0 1.516-.701 2.5-1.328 3.259-.095.115-.184.22-.268.319-.207.245-.383.453-.541.681-.208.3-.33.565-.37.847a.751.751 0 0 1-1.485-.212c.084-.593.337-1.078.621-1.489.203-.292.45-.584.673-.848.075-.088.147-.173.213-.253.561-.679.985-1.32.985-2.304 0-2.06-1.637-3.75-4-3.75ZM5.75 12h4.5a.75.75 0 0 1 0 1.5h-4.5a.75.75 0 0 1 0-1.5ZM6 15.25a.75.75 0 0 1 .75-.75h2.5a.75.75 0 0 1 0 1.5h-2.5a.75.75 0 0 1-.75-.75Z"}]},IMPORTANT:{icon:"report",kind:"important",title:"Important",iconPaths:[{d:"M0 1.75C0 .784.784 0 1.75 0h12.5C15.216 0 16 .784 16 1.75v9.5A1.75 1.75 0 0 1 14.25 13H8.06l-2.573 2.573A1.458 1.458 0 0 1 3 14.543V13H1.75A1.75 1.75 0 0 1 0 11.25Zm1.75-.25a.25.25 0 0 0-.25.25v9.5c0 .138.112.25.25.25h2a.75.75 0 0 1 .75.75v2.19l2.72-2.72a.749.749 0 0 1 .53-.22h6.5a.25.25 0 0 0 .25-.25v-9.5a.25.25 0 0 0-.25-.25Zm7 2.25v2.5a.75.75 0 0 1-1.5 0v-2.5a.75.75 0 0 1 1.5 0ZM9 9a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z"}]},WARNING:{icon:"alert",kind:"warning",title:"Warning",iconPaths:[{d:"M6.457 1.047c.659-1.234 2.427-1.234 3.086 0l6.082 11.378A1.75 1.75 0 0 1 14.082 15H1.918a1.75 1.75 0 0 1-1.543-2.575Zm1.763.707a.25.25 0 0 0-.44 0L1.698 13.132a.25.25 0 0 0 .22.368h12.164a.25.25 0 0 0 .22-.368Zm.53 3.996v2.5a.75.75 0 0 1-1.5 0v-2.5a.75.75 0 0 1 1.5 0ZM9 11a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z",fillRule:"evenodd"}]},CAUTION:{icon:"stop",kind:"caution",title:"Caution",iconPaths:[{d:"M4.47.22A.749.749 0 0 1 5 0h6c.199 0 .389.079.53.22l4.25 4.25c.141.14.22.331.22.53v6a.749.749 0 0 1-.22.53l-4.25 4.25a.749.749 0 0 1-.53.22H5a.749.749 0 0 1-.53-.22L.22 11.53A.749.749 0 0 1 0 11V5c0-.199.079-.389.22-.53Zm.84 1.28L1.5 5.31v5.38l3.81 3.81h5.38l3.81-3.81V5.31L10.69 1.5ZM8 4a.75.75 0 0 1 .75.75v3.5a.75.75 0 0 1-1.5 0v-3.5A.75.75 0 0 1 8 4Zm0 8a1 1 0 1 1 0-2 1 1 0 0 1 0 2Z"}]}},gl=/^\[!(note|tip|important|warning|caution)\][ \t]*(?:\n|$)/i,Sr=e=>{if(e.type==="text")return e.value;let t=e.children;if(!t)return "";let o="";for(let n of t)o+=Sr(n);return o},hl=e=>{let t=e.iconPaths.map(o=>`<path d="${o.d}"${o.fillRule?` fill-rule="${o.fillRule}"`:""}></path>`).join("");return {type:"paragraph",children:[{type:"html",value:`<svg class="octicon octicon-${e.icon}" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" aria-hidden="true">${t}</svg>`},{type:"text",value:e.title}],data:{hName:"p",hProperties:{className:["markdown-alert-title"],"data-alert-type":e.kind}}}},bl=e=>{var m,u;let t=e.children[0];if(!t||t.type!=="paragraph")return;let o=t.children[0];if(!o||o.type!=="text")return;let n=Sr(o).trimStart(),r=n.match(gl);if(!r)return;let s=fl[r[1].toUpperCase()],a=n.slice(r[0].length),c=t.children.slice(1);if(a.trim().length===0&&c.length===0&&e.children.length===1)return;let i=[hl(s)],l=[];a.length>0&&l.push({type:"text",value:a});let d=c;return ((m=d[0])==null?void 0:m.type)==="break"&&(d=d.slice(1)),l.push(...d),l.length>0&&l.some(p=>p.type!=="text"||p.value.trim().length>0)&&i.push({type:"paragraph",children:l}),i.push(...e.children.slice(1)),e.data=(u=e.data)!=null?u:{},e.data.hName="div",e.data.hProperties={className:["markdown-alert",`markdown-alert-${s.kind}`]},e.children=i,SKIP},Mr=()=>e=>{visit(e,"blockquote",bl);};var Pl=/^[ \t]*<[\w!/?-]/,Sl=/(^|\n)[ \t]{4,}(?=<[\w!/?-])/g,Ml=e=>typeof e!="string"||e.length===0||!Pl.test(e)?e:e.replace(Sl,"$1"),Lr,Nr,Ar,Dr,Hr,Br,Or,_r,Vr,$r,Fr,Pt={...defaultSchema,clobberPrefix:"",protocols:{...defaultSchema.protocols,href:[...(Nr=(Lr=defaultSchema.protocols)==null?void 0:Lr.href)!=null?Nr:[],"tel","streamdown"]},attributes:{...defaultSchema.attributes,code:["metastring",["className",/^(language-.+|math-display|math-inline)$/]],div:[...(Dr=(Ar=defaultSchema.attributes)==null?void 0:Ar.div)!=null?Dr:[],["className",/^(markdown-alert|markdown-alert-(note|tip|important|warning|caution)|sdm-callout)$/],"dataCalloutTitle","dataCalloutColor","dataCalloutIcon","dataCalloutBody"],p:[...(Br=(Hr=defaultSchema.attributes)==null?void 0:Hr.p)!=null?Br:[],["className",/^markdown-alert-title$/],"dataAlertType"],svg:[...(_r=(Or=defaultSchema.attributes)==null?void 0:Or.svg)!=null?_r:[],"className","viewBox","width","height","fill","ariaHidden"],path:[...($r=(Vr=defaultSchema.attributes)==null?void 0:Vr.path)!=null?$r:[],"d","fillRule"]},tagNames:[...(Fr=defaultSchema.tagNames)!=null?Fr:[],"svg","path"]},co={raw:nn,sanitize:[Wr,Pt],harden:[harden,{allowedImagePrefixes:["*"],allowedLinkPrefixes:["*"],allowedProtocols:["*"],defaultOrigin:void 0,allowDataImages:true}]},Il={gfm:[kl,{}],githubAlerts:Mr,containerAlerts:Pr,codeMeta:vr},Er=Object.values(co),El=Object.values(Il),Rr=new WeakMap;function Rl(e){var r;let t=Rr.get(e);if(t)return t;let o={...Pt,tagNames:[...(r=Pt.tagNames)!=null?r:[],...Object.keys(e)],attributes:{...Pt.attributes,...e}},n=[co.raw,[Wr,o],co.harden];return Rr.set(e,n),n}var Ll={block:" \u258B",circle:" \u25CF"},Nl=["github-light","github-dark"],Al={enabled:true},qr=memo(({content:e,shouldParseIncompleteMarkdown:t,shouldNormalizeHtmlIndentation:o,index:n,isIncomplete:r,dir:s,animatePlugin:a,...c})=>{useLayoutEffect(()=>{a==null||a.commit();}),a==null||a.setAnimateCodeBlocks(r);let i=typeof e=="string"&&o?Ml(e):e,l=jsx(Ue,{...c,children:i});return jsx(Ht.Provider,{value:r,children:s?jsx("div",{dir:s,style:{display:"contents"},children:l}):l})},(e,t)=>{if(e.content!==t.content||e.shouldNormalizeHtmlIndentation!==t.shouldNormalizeHtmlIndentation||e.index!==t.index||e.isIncomplete!==t.isIncomplete||e.dir!==t.dir)return false;if(e.components!==t.components){let o=Object.keys(e.components||{}),n=Object.keys(t.components||{});if(o.length!==n.length||o.some(r=>{var s,a;return ((s=e.components)==null?void 0:s[r])!==((a=t.components)==null?void 0:a[r])}))return false}return !(e.rehypePlugins!==t.rehypePlugins||e.remarkPlugins!==t.remarkPlugins||!!e.animatePlugin!=!!t.animatePlugin)});qr.displayName="Block";var Dl=memo(({children:e,mode:t="streaming",dir:o,parseIncompleteMarkdown:n=true,normalizeHtmlIndentation:r=false,components:s,rehypePlugins:a=Er,remarkPlugins:c=El,className:i,shikiTheme:l,mermaid:d,codeBlockMaxHeight:m=400,controls:u=true,isAnimating:p=false,scrollable:f,tableMaxHeight:h=300,animated:g,BlockComponent:b=qr,parseMarkdownIntoBlocksFn:y=Tt,caret:x,listStyle:P="hierarchical",calloutIcon:S,calloutStyle:M,plugins:C,remend:D,linkSafety:B=Al,portal:j,lineNumbers:Y=true,allowedTags:F,literalTagContent:H,dataOnlyTags:V,translations:U,icons:Q,prefix:R,onAnimationStart:z,onAnimationEnd:re,...ze})=>{let le=useId(),ee=useMemo(()=>Io(R),[R]),Ae=useRef(null),X=useRef(z),W=useRef(re);X.current=z,W.current=re,useEffect(()=>{var I,K,q;if(t==="static")return;let w=Ae.current;if(Ae.current=p,w===null){p&&((I=X.current)==null||I.call(X));return}p&&!w?(K=X.current)==null||K.call(X):!p&&w&&((q=W.current)==null||q.call(W));},[p,t]);let T=useMemo(()=>F?Object.keys(F):[],[F]),$=useMemo(()=>{if(!(V!=null&&V.length))return T;let w=new Set(V.map(I=>I.toLowerCase()));return T.filter(I=>!w.has(I.toLowerCase()))},[T,V]),ge=useRef(null),ce=useMemo(()=>{if(typeof e!="string")return "";let w=e;return H&&H.length>0&&(w=fr(w,H)),$.length>0&&(w=pr(w,$)),w=Tr(w),w},[e,$,H]),se=useMemo(()=>{let w=t==="streaming"?ge.current:null,I=ao(ce,w,y);if(ge.current=t==="streaming"?I:null,!(t==="streaming"&&n)||I.blocks.length===0)return I.blocks;let K=I.blocks.length-1,q=I.blocks[K],de=Tl(q,D);if(de===q)return I.blocks;let Pe=I.blocks.slice();return Pe[K]=de,Pe},[ce,y,t,n,D]),De=useMemo(()=>g===true?"true":g?JSON.stringify(g):"",[g]),te=useRef(null),We=useRef([]),xe=useRef([]),uo=useRef(null),Mt=useRef("");if(De){if(Mt.current!==De){Mt.current=De;let w=De!=="true"?g.maxBacklogMs:void 0;te.current=Nt({maxBacklogMs:w}),We.current=[],xe.current=[];}else te.current||(te.current=Nt());p&&te.current&&te.current.beginPass(te.current.now());}else te.current=null,We.current=[],xe.current=[],Mt.current="";useLayoutEffect(()=>{var w;p&&((w=te.current)==null||w.commitPass());});let ve=useDeferredValue(se),ke=useMemo(()=>{if(t!=="streaming"||te.current||ve===se||ve.length===0)return se;let w=ve.length,I=se.length;if(I===0)return ve;if(w!==I)return se;for(let q=0;q<w-1;q+=1)if(ve[q]!==se[q])return se;let K=ve.slice();return K[w-1]=se[I-1],K},[se,ve,t]),It=useMemo(()=>o==="auto"?ke.map(rt):void 0,[ke,o]),Jr=useMemo(()=>ke.map((w,I)=>`${le}-${I}`),[ke.length,le]),Yr=useMemo(()=>U?JSON.stringify(U):"",[U]),po=useMemo(()=>({...ft,...U}),[Yr]),it=useMemo(()=>{let{inlineCode:w,...I}=s!=null?s:{},K={...ar,...I};if(w){let q=K.code;K.code=de=>"data-block"in de?q?createElement(q,de):null:createElement(w,de);}return K},[s]),lt=useMemo(()=>{let w=[];return C!=null&&C.cjk&&(w=[...w,...C.cjk.remarkPluginsBefore]),w=[...w,...c],C!=null&&C.cjk&&(w=[...w,...C.cjk.remarkPluginsAfter]),C!=null&&C.math&&(w=[...w,C.math.remarkPlugin]),w},[c,C==null?void 0:C.math,C==null?void 0:C.cjk]),Te=useMemo(()=>{let w=a;return F&&Object.keys(F).length>0&&a===Er&&(w=Rl(F)),$.length>0&&(w=[...w,[xr,$,H!=null?H:[]]]),H&&H.length>0&&(w=[...w,[wr,H]]),V&&V.length>0&&(w=[...w,[yr,V]]),C!=null&&C.math&&(w=[...w,C.math.rehypePlugin]),o==="auto"&&t==="static"&&(w=[...w,br]),w},[a,C==null?void 0:C.math,F,$,H,V,o,t]),fo=useMemo(()=>{var w,I;return {calloutIcon:S,calloutStyle:M,codeBlockMaxHeight:m,shikiTheme:(I=l!=null?l:(w=C==null?void 0:C.code)==null?void 0:w.getThemes())!=null?I:Nl,controls:u,isAnimating:p,lineNumbers:Y,listStyle:P,mode:t,mermaid:d,linkSafety:B,portal:j,scrollable:f,tableMaxHeight:h,components:it,remarkPlugins:lt,rehypePlugins:Te}},[S,M,m,l,u,p,Y,P,t,d,B,j,f,C==null?void 0:C.code,h,it,lt,Te]),Qr=useMemo(()=>x&&p?{"--streamdown-caret":`"${Ll[x]}"`}:void 0,[x,p]),es=w=>{let I=null;if(te.current&&p){if(!We.current[w]){let q=De&&De!=="true"?g:{},{maxBacklogMs:de,...Pe}=q;We.current[w]=ct({...Pe,timeline:te.current});}I=We.current[w];}uo.current!==Te&&(xe.current=[],uo.current=Te),I&&!xe.current[w]&&(xe.current[w]=[...Te,I.rehypePlugin]);let K=I&&xe.current[w]?xe.current[w]:Te;return {blockAnimatePlugin:I,blockRehypePlugins:K}};return t==="static"?jsx(gt.Provider,{value:po,children:jsx(Ct.Provider,{value:C!=null?C:null,children:jsx(E.Provider,{value:fo,children:jsx(jt,{icons:Q,children:jsx(mt.Provider,{value:ee,children:jsx("div",{className:ee("space-y-4 whitespace-normal [&>*:first-child]:mt-0 [&>*:last-child]:mb-0",i),dir:o==="auto"?void 0:o,children:jsx(Ue,{components:it,rehypePlugins:Te,remarkPlugins:lt,...ze,children:ce})})})})})})}):jsx(gt.Provider,{value:po,children:jsx(Ct.Provider,{value:C!=null?C:null,children:jsx(E.Provider,{value:fo,children:jsx(jt,{icons:Q,children:jsx(mt.Provider,{value:ee,children:jsxs("div",{className:ee("space-y-4 whitespace-normal [&>*:first-child]:mt-0 [&>*:last-child]:mb-0",x?"[&>*:last-child]:after:inline [&>*:last-child]:after:align-baseline [&>*:last-child]:after:content-[var(--streamdown-caret)]":null,i),"data-streamdown":"container",style:Qr,children:[ke.length===0&&x&&p&&jsx("span",{}),ke.map((w,I)=>{var go;let K=I===ke.length-1,q=p&&K&&ir(w),{blockAnimatePlugin:de,blockRehypePlugins:Pe}=es(I);return jsx(b,{animatePlugin:de,components:it,content:w,dir:(go=It==null?void 0:It[I])!=null?go:o!=="auto"?o:void 0,index:I,isIncomplete:q,rehypePlugins:Pe,remarkPlugins:lt,shouldNormalizeHtmlIndentation:r,shouldParseIncompleteMarkdown:n,...ze},Jr[I])})]})})})})})})},(e,t)=>e.children===t.children&&e.shikiTheme===t.shikiTheme&&e.isAnimating===t.isAnimating&&e.animated===t.animated&&e.mode===t.mode&&e.plugins===t.plugins&&e.className===t.className&&e.linkSafety===t.linkSafety&&e.lineNumbers===t.lineNumbers&&e.calloutIcon===t.calloutIcon&&e.calloutStyle===t.calloutStyle&&e.normalizeHtmlIndentation===t.normalizeHtmlIndentation&&e.literalTagContent===t.literalTagContent&&e.dataOnlyTags===t.dataOnlyTags&&JSON.stringify(e.translations)===JSON.stringify(t.translations)&&e.prefix===t.prefix&&e.dir===t.dir);Dl.displayName="Streamdown";var Zr=/[(){}[\]]/,Bl=/[\s;]/,Ol=/^[\w-]+$/,_l=/:::[\w-]+\s*$/,Vl=/^[/\\]/,$l=/[/\\]$/,Fl=/("[^"]*")/,jl=[["((","))"],["))","(("],["{{","}}"],["[","]"],["(",")"],[")","("]],st=e=>`"${e.replace(/"/g,"#quot;")}"`,zl=e=>e.length>=2&&e.startsWith('"')&&e.endsWith('"'),Wl=e=>{var n,r,s,a;let t=e.split(`
|
|
41
|
-
`),o=0;if(((n=t[o])==null?void 0:n.trim())==="---"){for(o+=1;o<t.length&&((r=t[o])==null?void 0:r.trim())!=="---";)o+=1;o+=1;}for(;o<t.length;){let c=(a=(s=t[o])==null?void 0:s.trim())!=null?a:"";if(c&&!c.startsWith("%%")){let i=c.split(
|
|
42
|
-
`),o=false;return t.map(n=>o?
|
|
43
|
-
`)},
|
|
44
|
-
`).map(
|
|
45
|
-
`),
|
|
36
|
+
${u}`,r=e.length;break}return r===0?e:n+e.slice(r)},gr=(e,t)=>{if(!t.length)return e;let o=e;for(let n of t){let r=new RegExp(`<${n}(?=[\\s>/])((?:"[^"]*"|'[^']*'|[^"'>])*)\\/>`,"gi");o=o.replace(r,(s,a)=>`<${n}${a}></${n}>`);}for(let n of t){let r=new RegExp(`(<${n}(?=[\\s>/])[^>]*>)([\\s\\S]*?)(</${n}\\s*>)`,"gi");o=o.replace(r,(s,a,c,i)=>Wi(a,c,i)),o=qi(o,n);}return o};var Zi=/([\\`*_~[\]|])/g,Ki=e=>e.replace(Zi,"\\$1"),hr=(e,t)=>{if(!t.length)return e;let o=e;for(let n of t){let r=new RegExp(`(<${n}(?=[\\s>/])[^>]*>)([\\s\\S]*?)(</${n}\\s*>)`,"gi");o=o.replace(r,(s,a,c,i)=>{let l=Ki(c).replace(/\n\n/g," ");return a+l+i});}return o};var Xi=new Set(["blockquote","dd","dt","figcaption","h1","h2","h3","h4","h5","h6","li","p","td","th"]),br=new Set(["code","kbd","pre","samp","var"]);function yr(e){return e.children.map(t=>t.type==="text"?t.value:t.type==="element"&&!br.has(t.tagName)?yr(t):"").join("")}function Cr(){return e=>{visit(e,"element",t=>{if(br.has(t.tagName)){(t.properties)!=null||(t.properties={}),t.properties.dir="ltr";return}Xi.has(t.tagName)&&((t.properties)!=null||(t.properties={}),typeof t.properties.dir!="string"&&(t.properties.dir=rt(yr(t))));});}}var wr=e=>t=>{if(!e||e.length===0)return;let o=new Set(e.map(n=>n.toLowerCase()));visit(t,"element",n=>{var s;if(!o.has(n.tagName.toLowerCase()))return;let r=n.children.filter(a=>a.type==="element").map(a=>{var c;return {tag:a.tagName,props:(c=a.properties)!=null?c:{},text:toText(a).trim()}});n.properties=(s=n.properties)!=null?s:{},n.properties["data-content"]=JSON.stringify(r),n.children=[];});};var xr=e=>e.type==="text"?e.value:"children"in e&&Array.isArray(e.children)?e.children.map(xr).join(""):"",vr=e=>t=>{if(!e||e.length===0)return;let o=new Set(e.map(n=>n.toLowerCase()));visit(t,"element",n=>{if(o.has(n.tagName.toLowerCase())){let r=xr(n);n.children=r?[{type:"text",value:r}]:[];}});};var nl=e=>e.children.every(t=>t.type==="text"||t.type==="comment"),rl=e=>e.children.map(t=>t.type==="text"?t.value:"").join(""),sl=e=>{let t=unified().use(Pa).use(Sa,{allowDangerousHtml:true}),o=t.parse(e);return t.runSync(o).children},kr=(e,t=[])=>o=>{if(!e||e.length===0)return;let n=new Set(e.map(s=>s.toLowerCase())),r=new Set((t!=null?t:[]).map(s=>s.toLowerCase()));visit(o,"element",s=>{let a=s.tagName.toLowerCase();if(!n.has(a)||r.has(a)||!nl(s))return;let c=rl(s);if(!c.includes(`
|
|
37
|
+
`))return;let i=sl(c);s.children=i;});};var Tr=()=>e=>{visit(e,"code",t=>{var o,n;t.meta&&(t.data=(o=t.data)!=null?o:{},t.data.hProperties={...(n=t.data.hProperties)!=null?n:{},metastring:t.meta});});};var Pr=/^>>>[ \t]?(.*)$/,il=/^<<<\s*$/,ll=/^>+\s*$/,cl=/^<+\s*$/,dl=/^\s*(?:\((?<iconParen>[a-z0-9-]+)\)|\{(?<iconBrace>[a-z0-9-]+)\}(?=\s*\[))?\s*(?:\[(?<title>[^\]]*)\])?\s*(?:\{(?<color>[^}]*)\})?\s*$/i,ml=/^(?:#[0-9a-f]{3,8}|[a-z]+)$/i,ul=/^[a-z0-9-]+$/,pl=e=>{let t=dl.exec(e);if(!(t!=null&&t.groups))return {};let{iconParen:o,iconBrace:n,title:r,color:s}=t.groups,a=o!=null?o:n;return {icon:a&&ul.test(a)?a:void 0,title:r!==void 0&&r.length>0?r:void 0,color:s&&ml.test(s)?s:void 0}},co=e=>e.replace(/&/g,"&").replace(/"/g,""").replace(/</g,"<").replace(/>/g,">"),fl=e=>{let t=new TextEncoder().encode(e),o="";for(let n of t)o+=String.fromCharCode(n);return btoa(o)},gl=(e,t)=>{var l;let o=Pr.exec(e[t]),n=(l=o==null?void 0:o[1])!=null?l:"",r=pl(n),s=[],a=t+1;for(;a<e.length;a+=1){let d=e[a];if(il.test(d)){a+=1;break}if(ll.test(d)||cl.test(d)){a+=1;break}s.push(d);}let c=s.join(`
|
|
38
|
+
`).trim();return {replacement:`<div ${['class="sdm-callout"',r.title!==void 0?`data-callout-title="${co(r.title)}"`:"",r.color!==void 0?`data-callout-color="${co(r.color)}"`:"",r.icon!==void 0?`data-callout-icon="${co(r.icon)}"`:"",`data-callout-body="${fl(c)}"`].filter(Boolean).join(" ")}></div>`,next:a}},Sr=e=>{if(!e.includes(">>>"))return e;let t=e.split(`
|
|
39
|
+
`),o=[],n=0,r=false;for(;n<t.length;)if(Pr.test(t[n])){let s=gl(t,n);o.push(s.replacement),n=s.next,r=true;}else o.push(t[n]),n+=1;return r?o.join(`
|
|
40
|
+
`):e},Mr=()=>()=>{};var yl={NOTE:{icon:"info",kind:"note",title:"Note",iconPaths:[{d:"M0 8a8 8 0 1 1 16 0A8 8 0 0 1 0 8Zm8-6.5a6.5 6.5 0 1 0 0 13 6.5 6.5 0 0 0 0-13ZM6.5 7.75A.75.75 0 0 1 7.25 7h1a.75.75 0 0 1 .75.75v2.75h.25a.75.75 0 0 1 0 1.5h-2a.75.75 0 0 1 0-1.5h.25v-2h-.25a.75.75 0 0 1-.75-.75ZM8 6a1 1 0 1 1 0-2 1 1 0 0 1 0 2Z"}]},TIP:{icon:"light-bulb",kind:"tip",title:"Tip",iconPaths:[{d:"M8 1.5c-2.363 0-4 1.69-4 3.75 0 .984.424 1.625.984 2.304l.214.253c.223.264.47.556.673.848.284.411.537.896.621 1.49a.75.75 0 0 1-1.484.211c-.04-.282-.163-.547-.37-.847a8.456 8.456 0 0 0-.542-.68c-.084-.1-.173-.205-.268-.32C3.201 7.75 2.5 6.766 2.5 5.25 2.5 2.31 4.863 0 8 0s5.5 2.31 5.5 5.25c0 1.516-.701 2.5-1.328 3.259-.095.115-.184.22-.268.319-.207.245-.383.453-.541.681-.208.3-.33.565-.37.847a.751.751 0 0 1-1.485-.212c.084-.593.337-1.078.621-1.489.203-.292.45-.584.673-.848.075-.088.147-.173.213-.253.561-.679.985-1.32.985-2.304 0-2.06-1.637-3.75-4-3.75ZM5.75 12h4.5a.75.75 0 0 1 0 1.5h-4.5a.75.75 0 0 1 0-1.5ZM6 15.25a.75.75 0 0 1 .75-.75h2.5a.75.75 0 0 1 0 1.5h-2.5a.75.75 0 0 1-.75-.75Z"}]},IMPORTANT:{icon:"report",kind:"important",title:"Important",iconPaths:[{d:"M0 1.75C0 .784.784 0 1.75 0h12.5C15.216 0 16 .784 16 1.75v9.5A1.75 1.75 0 0 1 14.25 13H8.06l-2.573 2.573A1.458 1.458 0 0 1 3 14.543V13H1.75A1.75 1.75 0 0 1 0 11.25Zm1.75-.25a.25.25 0 0 0-.25.25v9.5c0 .138.112.25.25.25h2a.75.75 0 0 1 .75.75v2.19l2.72-2.72a.749.749 0 0 1 .53-.22h6.5a.25.25 0 0 0 .25-.25v-9.5a.25.25 0 0 0-.25-.25Zm7 2.25v2.5a.75.75 0 0 1-1.5 0v-2.5a.75.75 0 0 1 1.5 0ZM9 9a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z"}]},WARNING:{icon:"alert",kind:"warning",title:"Warning",iconPaths:[{d:"M6.457 1.047c.659-1.234 2.427-1.234 3.086 0l6.082 11.378A1.75 1.75 0 0 1 14.082 15H1.918a1.75 1.75 0 0 1-1.543-2.575Zm1.763.707a.25.25 0 0 0-.44 0L1.698 13.132a.25.25 0 0 0 .22.368h12.164a.25.25 0 0 0 .22-.368Zm.53 3.996v2.5a.75.75 0 0 1-1.5 0v-2.5a.75.75 0 0 1 1.5 0ZM9 11a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z",fillRule:"evenodd"}]},CAUTION:{icon:"stop",kind:"caution",title:"Caution",iconPaths:[{d:"M4.47.22A.749.749 0 0 1 5 0h6c.199 0 .389.079.53.22l4.25 4.25c.141.14.22.331.22.53v6a.749.749 0 0 1-.22.53l-4.25 4.25a.749.749 0 0 1-.53.22H5a.749.749 0 0 1-.53-.22L.22 11.53A.749.749 0 0 1 0 11V5c0-.199.079-.389.22-.53Zm.84 1.28L1.5 5.31v5.38l3.81 3.81h5.38l3.81-3.81V5.31L10.69 1.5ZM8 4a.75.75 0 0 1 .75.75v3.5a.75.75 0 0 1-1.5 0v-3.5A.75.75 0 0 1 8 4Zm0 8a1 1 0 1 1 0-2 1 1 0 0 1 0 2Z"}]}},Cl=/^\[!(note|tip|important|warning|caution)\][ \t]*(?:\n|$)/i,Ir=e=>{if(e.type==="text")return e.value;let t=e.children;if(!t)return "";let o="";for(let n of t)o+=Ir(n);return o},wl=e=>{let t=e.iconPaths.map(o=>`<path d="${o.d}"${o.fillRule?` fill-rule="${o.fillRule}"`:""}></path>`).join("");return {type:"paragraph",children:[{type:"html",value:`<svg class="octicon octicon-${e.icon}" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" aria-hidden="true">${t}</svg>`},{type:"text",value:e.title}],data:{hName:"p",hProperties:{className:["markdown-alert-title"],"data-alert-type":e.kind}}}},xl=e=>{var m,u;let t=e.children[0];if(!t||t.type!=="paragraph")return;let o=t.children[0];if(!o||o.type!=="text")return;let n=Ir(o).trimStart(),r=n.match(Cl);if(!r)return;let s=yl[r[1].toUpperCase()],a=n.slice(r[0].length),c=t.children.slice(1);if(a.trim().length===0&&c.length===0&&e.children.length===1)return;let i=[wl(s)],l=[];a.length>0&&l.push({type:"text",value:a});let d=c;return ((m=d[0])==null?void 0:m.type)==="break"&&(d=d.slice(1)),l.push(...d),l.length>0&&l.some(p=>p.type!=="text"||p.value.trim().length>0)&&i.push({type:"paragraph",children:l}),i.push(...e.children.slice(1)),e.data=(u=e.data)!=null?u:{},e.data.hName="div",e.data.hProperties={className:["markdown-alert",`markdown-alert-${s.kind}`]},e.children=i,SKIP},Er=()=>e=>{visit(e,"blockquote",xl);};var El=/^[ \t]*<[\w!/?-]/,Rl=/(^|\n)[ \t]{4,}(?=<[\w!/?-])/g,Ll=e=>typeof e!="string"||e.length===0||!El.test(e)?e:e.replace(Rl,"$1"),Ar,Dr,Hr,Br,Or,_r,Vr,$r,Fr,jr,zr,Pt={...defaultSchema,clobberPrefix:"",protocols:{...defaultSchema.protocols,href:[...(Dr=(Ar=defaultSchema.protocols)==null?void 0:Ar.href)!=null?Dr:[],"tel","streamdown"]},attributes:{...defaultSchema.attributes,code:["metastring",["className",/^(language-.+|math-display|math-inline)$/]],div:[...(Br=(Hr=defaultSchema.attributes)==null?void 0:Hr.div)!=null?Br:[],["className",/^(markdown-alert|markdown-alert-(note|tip|important|warning|caution)|sdm-callout)$/],"dataCalloutTitle","dataCalloutColor","dataCalloutIcon","dataCalloutBody"],p:[...(_r=(Or=defaultSchema.attributes)==null?void 0:Or.p)!=null?_r:[],["className",/^markdown-alert-title$/],"dataAlertType"],svg:[...($r=(Vr=defaultSchema.attributes)==null?void 0:Vr.svg)!=null?$r:[],"className","viewBox","width","height","fill","ariaHidden"],path:[...(jr=(Fr=defaultSchema.attributes)==null?void 0:Fr.path)!=null?jr:[],"d","fillRule"]},tagNames:[...(zr=defaultSchema.tagNames)!=null?zr:[],"svg","path"]},mo={raw:rn,sanitize:[Zr,Pt],harden:[harden,{allowedImagePrefixes:["*"],allowedLinkPrefixes:["*"],allowedProtocols:["*"],defaultOrigin:void 0,allowDataImages:true}]},Nl={gfm:[Ml,{}],githubAlerts:Er,containerAlerts:Mr,codeMeta:Tr},Lr=Object.values(mo),Al=Object.values(Nl),Nr=new WeakMap;function Dl(e){var r;let t=Nr.get(e);if(t)return t;let o={...Pt,tagNames:[...(r=Pt.tagNames)!=null?r:[],...Object.keys(e)],attributes:{...Pt.attributes,...e}},n=[mo.raw,[Zr,o],mo.harden];return Nr.set(e,n),n}var Hl={block:" \u258B",circle:" \u25CF"},Bl=["github-light","github-dark"],Ol={enabled:true},Kr=memo(({content:e,shouldParseIncompleteMarkdown:t,shouldNormalizeHtmlIndentation:o,index:n,isIncomplete:r,dir:s,animatePlugin:a,...c})=>{useLayoutEffect(()=>{a==null||a.commit();}),a==null||a.setAnimateCodeBlocks(r);let i=typeof e=="string"&&o?Ll(e):e,l=jsx(Ue,{...c,children:i});return jsx(Ht.Provider,{value:r,children:s?jsx("div",{dir:s,style:{display:"contents"},children:l}):l})},(e,t)=>{if(e.content!==t.content||e.shouldNormalizeHtmlIndentation!==t.shouldNormalizeHtmlIndentation||e.index!==t.index||e.isIncomplete!==t.isIncomplete||e.dir!==t.dir)return false;if(e.components!==t.components){let o=Object.keys(e.components||{}),n=Object.keys(t.components||{});if(o.length!==n.length||o.some(r=>{var s,a;return ((s=e.components)==null?void 0:s[r])!==((a=t.components)==null?void 0:a[r])}))return false}return !(e.rehypePlugins!==t.rehypePlugins||e.remarkPlugins!==t.remarkPlugins||!!e.animatePlugin!=!!t.animatePlugin)});Kr.displayName="Block";var _l=memo(({children:e,mode:t="streaming",dir:o,parseIncompleteMarkdown:n=true,normalizeHtmlIndentation:r=false,components:s,rehypePlugins:a=Lr,remarkPlugins:c=Al,className:i,shikiTheme:l,mermaid:d,codeBlockMaxHeight:m=400,controls:u=true,isAnimating:p=false,scrollable:f,tableMaxHeight:h=300,animated:g,BlockComponent:b=Kr,parseMarkdownIntoBlocksFn:y=Tt,caret:x,listStyle:P="hierarchical",calloutIcon:S,calloutStyle:M,plugins:C,remend:D,linkSafety:B=Ol,portal:j,lineNumbers:Y=true,allowedTags:F,literalTagContent:H,dataOnlyTags:V,translations:U,icons:Q,prefix:R,onAnimationStart:z,onAnimationEnd:re,...ze})=>{let le=useId(),ee=useMemo(()=>Eo(R),[R]),Ae=useRef(null),X=useRef(z),W=useRef(re);X.current=z,W.current=re,useEffect(()=>{var I,K,q;if(t==="static")return;let w=Ae.current;if(Ae.current=p,w===null){p&&((I=X.current)==null||I.call(X));return}p&&!w?(K=X.current)==null||K.call(X):!p&&w&&((q=W.current)==null||q.call(W));},[p,t]);let T=useMemo(()=>F?Object.keys(F):[],[F]),$=useMemo(()=>{if(!(V!=null&&V.length))return T;let w=new Set(V.map(I=>I.toLowerCase()));return T.filter(I=>!w.has(I.toLowerCase()))},[T,V]),ge=useRef(null),ce=useMemo(()=>{if(typeof e!="string")return "";let w=e;return H&&H.length>0&&(w=hr(w,H)),$.length>0&&(w=gr(w,$)),w=Sr(w),w},[e,$,H]),se=useMemo(()=>{let w=t==="streaming"?ge.current:null,I=io(ce,w,y);if(ge.current=t==="streaming"?I:null,!(t==="streaming"&&n)||I.blocks.length===0)return I.blocks;let K=I.blocks.length-1,q=I.blocks[K],de=Il(q,D);if(de===q)return I.blocks;let Pe=I.blocks.slice();return Pe[K]=de,Pe},[ce,y,t,n,D]),De=useMemo(()=>g===true?"true":g?JSON.stringify(g):"",[g]),te=useRef(null),We=useRef([]),xe=useRef([]),po=useRef(null),Mt=useRef("");if(De){if(Mt.current!==De){Mt.current=De;let w=De!=="true"?g.maxBacklogMs:void 0;te.current=Nt({maxBacklogMs:w}),We.current=[],xe.current=[];}else te.current||(te.current=Nt());p&&te.current&&te.current.beginPass(te.current.now());}else te.current=null,We.current=[],xe.current=[],Mt.current="";useLayoutEffect(()=>{var w;p&&((w=te.current)==null||w.commitPass());});let ve=useDeferredValue(se),ke=useMemo(()=>{if(t!=="streaming"||te.current||ve===se||ve.length===0)return se;let w=ve.length,I=se.length;if(I===0)return ve;if(w!==I)return se;for(let q=0;q<w-1;q+=1)if(ve[q]!==se[q])return se;let K=ve.slice();return K[w-1]=se[I-1],K},[se,ve,t]),It=useMemo(()=>o==="auto"?ke.map(rt):void 0,[ke,o]),Qr=useMemo(()=>ke.map((w,I)=>`${le}-${I}`),[ke.length,le]),es=useMemo(()=>U?JSON.stringify(U):"",[U]),fo=useMemo(()=>({...ft,...U}),[es]),it=useMemo(()=>{let{inlineCode:w,...I}=s!=null?s:{},K={...lr,...I};if(w){let q=K.code;K.code=de=>"data-block"in de?q?createElement(q,de):null:createElement(w,de);}return K},[s]),lt=useMemo(()=>{let w=[];return C!=null&&C.cjk&&(w=[...w,...C.cjk.remarkPluginsBefore]),w=[...w,...c],C!=null&&C.cjk&&(w=[...w,...C.cjk.remarkPluginsAfter]),C!=null&&C.math&&(w=[...w,C.math.remarkPlugin]),w},[c,C==null?void 0:C.math,C==null?void 0:C.cjk]),Te=useMemo(()=>{let w=a;return F&&Object.keys(F).length>0&&a===Lr&&(w=Dl(F)),$.length>0&&(w=[...w,[kr,$,H!=null?H:[]]]),H&&H.length>0&&(w=[...w,[vr,H]]),V&&V.length>0&&(w=[...w,[wr,V]]),C!=null&&C.math&&(w=[...w,C.math.rehypePlugin]),o==="auto"&&t==="static"&&(w=[...w,Cr]),w},[a,C==null?void 0:C.math,F,$,H,V,o,t]),go=useMemo(()=>{var w,I;return {calloutIcon:S,calloutStyle:M,codeBlockMaxHeight:m,shikiTheme:(I=l!=null?l:(w=C==null?void 0:C.code)==null?void 0:w.getThemes())!=null?I:Bl,controls:u,isAnimating:p,lineNumbers:Y,listStyle:P,mode:t,mermaid:d,linkSafety:B,portal:j,scrollable:f,tableMaxHeight:h,components:it,remarkPlugins:lt,rehypePlugins:Te}},[S,M,m,l,u,p,Y,P,t,d,B,j,f,C==null?void 0:C.code,h,it,lt,Te]),ts=useMemo(()=>x&&p?{"--streamdown-caret":`"${Hl[x]}"`}:void 0,[x,p]),os=w=>{let I=null;if(te.current&&p){if(!We.current[w]){let q=De&&De!=="true"?g:{},{maxBacklogMs:de,...Pe}=q;We.current[w]=ct({...Pe,timeline:te.current});}I=We.current[w];}po.current!==Te&&(xe.current=[],po.current=Te),I&&!xe.current[w]&&(xe.current[w]=[...Te,I.rehypePlugin]);let K=I&&xe.current[w]?xe.current[w]:Te;return {blockAnimatePlugin:I,blockRehypePlugins:K}};return t==="static"?jsx(gt.Provider,{value:fo,children:jsx(Ct.Provider,{value:C!=null?C:null,children:jsx(E.Provider,{value:go,children:jsx(jt,{icons:Q,children:jsx(mt.Provider,{value:ee,children:jsx("div",{className:ee("space-y-4 whitespace-normal [&>*:first-child]:mt-0 [&>*:last-child]:mb-0",i),dir:o==="auto"?void 0:o,children:jsx(Ue,{components:it,rehypePlugins:Te,remarkPlugins:lt,...ze,children:ce})})})})})})}):jsx(gt.Provider,{value:fo,children:jsx(Ct.Provider,{value:C!=null?C:null,children:jsx(E.Provider,{value:go,children:jsx(jt,{icons:Q,children:jsx(mt.Provider,{value:ee,children:jsxs("div",{className:ee("space-y-4 whitespace-normal [&>*:first-child]:mt-0 [&>*:last-child]:mb-0",x?"[&>*:last-child]:after:inline [&>*:last-child]:after:align-baseline [&>*:last-child]:after:content-[var(--streamdown-caret)]":null,i),"data-streamdown":"container",style:ts,children:[ke.length===0&&x&&p&&jsx("span",{}),ke.map((w,I)=>{var ho;let K=I===ke.length-1,q=p&&K&&cr(w),{blockAnimatePlugin:de,blockRehypePlugins:Pe}=os(I);return jsx(b,{animatePlugin:de,components:it,content:w,dir:(ho=It==null?void 0:It[I])!=null?ho:o!=="auto"?o:void 0,index:I,isIncomplete:q,rehypePlugins:Pe,remarkPlugins:lt,shouldNormalizeHtmlIndentation:r,shouldParseIncompleteMarkdown:n,...ze},Qr[I])})]})})})})})})},(e,t)=>e.children===t.children&&e.shikiTheme===t.shikiTheme&&e.isAnimating===t.isAnimating&&e.animated===t.animated&&e.mode===t.mode&&e.plugins===t.plugins&&e.className===t.className&&e.linkSafety===t.linkSafety&&e.lineNumbers===t.lineNumbers&&e.calloutIcon===t.calloutIcon&&e.calloutStyle===t.calloutStyle&&e.normalizeHtmlIndentation===t.normalizeHtmlIndentation&&e.literalTagContent===t.literalTagContent&&e.dataOnlyTags===t.dataOnlyTags&&JSON.stringify(e.translations)===JSON.stringify(t.translations)&&e.prefix===t.prefix&&e.dir===t.dir);_l.displayName="Streamdown";var Gr=/[(){}[\]]/,$l=/[\s;]/,Fl=/^[\w-]+$/,jl=/:::[\w-]+\s*$/,zl=/^[/\\]/,Wl=/[/\\]$/,ql=/("[^"]*")/,Zl=[["((","))"],["))","(("],["{{","}}"],["[","]"],["(",")"],[")","("]],st=e=>`"${e.replace(/"/g,"#quot;")}"`,Kl=e=>e.length>=2&&e.startsWith('"')&&e.endsWith('"'),Gl=e=>{var n,r,s,a;let t=e.split(`
|
|
41
|
+
`),o=0;if(((n=t[o])==null?void 0:n.trim())==="---"){for(o+=1;o<t.length&&((r=t[o])==null?void 0:r.trim())!=="---";)o+=1;o+=1;}for(;o<t.length;){let c=(a=(s=t[o])==null?void 0:s.trim())!=null?a:"";if(c&&!c.startsWith("%%")){let i=c.split($l,1)[0];return i==="mindmap"?"mindmap":i==="flowchart"||i==="graph"?"flowchart":null}o+=1;}return null},Xl=e=>{for(let[t,o]of Zl){let n=e.indexOf(t);if(n===-1||!e.endsWith(o))continue;let r=e.slice(0,n);if(r&&!Fl.test(r))continue;let s=e.slice(n+t.length,e.length-o.length);if(!(s.includes(o)&&o!==t))return {id:r,open:t,close:o,inner:s}}return null},Ul=e=>{let t=e.length-e.trimStart().length,o=e.slice(0,t),n=e.trim();if(!n||n.startsWith("%%")||n.startsWith("::icon"))return e;let r=Xl(n);if(r)return !Kl(r.inner)&&(Gr.test(r.inner)||r.inner.includes('"'))?`${o}${r.id}${r.open}${st(r.inner)}${r.close}`:e;if(Gr.test(n)){let s=n.replace(jl,"").trimEnd();return `${o}[${st(s)}]`}return e},Jl=e=>{let t=e.split(`
|
|
42
|
+
`),o=false;return t.map(n=>o?Ul(n):(n.trim()&&(o=true),n)).join(`
|
|
43
|
+
`)},Yl=e=>e.startsWith("(")&&e.endsWith(")")||zl.test(e)||Wl.test(e),uo=(e,t)=>e.split(ql).map((o,n)=>n%2===0?t(o):o).join(""),Ql=e=>{if(e.trim().startsWith("%%"))return e;let t=uo(e,o=>o.replace(/\[([^[\]"]*[(){}][^[\]"]*)\]/g,(n,r)=>Yl(r)?n:`[${st(r)}]`));return t=uo(t,o=>o.replace(/\{([^{}"]*[()[\]][^{}"]*)\}/g,(n,r)=>`{${st(r)}}`)),t=uo(t,o=>o.replace(/\|([^|"]*[(){}[\]][^|"]*)\|/g,(n,r)=>`|${st(r)}|`)),t},ec=e=>e.split(`
|
|
44
|
+
`).map(Ql).join(`
|
|
45
|
+
`),Xr=e=>{let t=Gl(e);if(!t)return null;let o=t==="mindmap"?Jl(e):ec(e);return o===e?null:o};var Yr=({children:e,className:t,contentSize:o,fitKey:n,minZoom:r=.5,maxZoom:s=3,zoomStep:a=.1,showControls:c=true,initialZoom:i=1,isAutoFit:l=false,fullscreen:d=false})=>{let{RotateCcwIcon:m,ZoomInIcon:u,ZoomOutIcon:p}=O(),f=v(),h=_(),g=useRef(null),b=useRef(null),[y,x]=useState(i),[P,S]=useState(r),[M,C]=useState(i),[D,B]=useState({x:0,y:0}),[j,Y]=useState(false),[F,H]=useState(false),[V,U]=useState({x:0,y:0}),[Q,R]=useState({x:0,y:0}),z=useCallback(T=>{C($=>Math.max(P,Math.min(s,$+T))),H(true);},[P,s]),re=useCallback(()=>{z(a);},[z,a]),ze=useCallback(()=>{z(-a);},[z,a]),le=useCallback(()=>{C(y),B({x:0,y:0}),H(false);},[y]),ee=useCallback(T=>{T.preventDefault();let $=T.deltaY>0?-a:a;z($);},[z,a]),Ae=useCallback(T=>{if(T.button!==0||T.isPrimary===false)return;Y(true),H(true),U({x:T.clientX,y:T.clientY}),R(D);let $=T.currentTarget;$ instanceof HTMLElement&&$.setPointerCapture(T.pointerId);},[D]),X=useCallback(T=>{if(!j)return;T.preventDefault();let $=T.clientX-V.x,ge=T.clientY-V.y;B({x:Q.x+$,y:Q.y+ge});},[j,V,Q]),W=useCallback(T=>{Y(false);let $=T.currentTarget;$ instanceof HTMLElement&&$.releasePointerCapture(T.pointerId);},[]);return useEffect(()=>{S(r),l||(x(i),C(i));},[i,l,r]),useEffect(()=>{if(!(l&&o))return;let T=g.current;if(!T)return;let $=T.clientWidth,ge=T.clientHeight;if(!($>0&&ge>0))return;let ce=Math.min($/o.width,ge/o.height,1);!(ce>0)||Number.isNaN(ce)||(x(ce),S(Math.min(r,ce)),F||(C(ce),B({x:0,y:0})));},[o,F,l,r]),useEffect(()=>{l&&H(false);},[l]),useEffect(()=>{let T=g.current;if(T)return T.addEventListener("wheel",ee,{passive:false}),()=>{T.removeEventListener("wheel",ee);}},[ee]),useEffect(()=>{let T=b.current;if(T&&j)return document.body.style.userSelect="none",T.addEventListener("pointermove",X,{passive:false}),T.addEventListener("pointerup",W),T.addEventListener("pointercancel",W),()=>{document.body.style.userSelect="",T.removeEventListener("pointermove",X),T.removeEventListener("pointerup",W),T.removeEventListener("pointercancel",W);}},[j,X,W]),jsxs("div",{className:f("relative flex flex-col",d?"h-full w-full":"min-h-28 w-full",t),ref:g,style:{cursor:j?"grabbing":"grab"},children:[c?jsxs("div",{className:f("absolute z-10 flex flex-col gap-1 rounded-md border border-border bg-background/80 p-1 supports-[backdrop-filter]:bg-background/70 supports-[backdrop-filter]:backdrop-blur-sm",d?"bottom-4 left-4":"bottom-2 left-2"),children:[jsx("button",{"aria-label":h.zoomIn,className:f("flex items-center justify-center rounded p-1.5 text-muted-foreground transition-colors hover:bg-muted hover:text-foreground disabled:cursor-not-allowed disabled:opacity-50"),disabled:M>=s,onClick:re,title:h.zoomIn,type:"button",children:jsx(u,{"aria-hidden":"true",size:16})}),jsx("button",{"aria-label":h.zoomOut,className:f("flex items-center justify-center rounded p-1.5 text-muted-foreground transition-colors hover:bg-muted hover:text-foreground disabled:cursor-not-allowed disabled:opacity-50"),disabled:M<=P,onClick:ze,title:h.zoomOut,type:"button",children:jsx(p,{"aria-hidden":"true",size:16})}),jsx("button",{"aria-label":h.resetView,className:f("flex items-center justify-center rounded p-1.5 text-muted-foreground transition-colors hover:bg-muted hover:text-foreground"),onClick:le,title:h.resetView,type:"button",children:jsx(m,{"aria-hidden":"true",size:16})})]}):null,jsx("div",{className:f("flex-1 origin-center transition-transform duration-150 ease-out",d?"flex h-full w-full items-center justify-center":"flex w-full items-center justify-center"),onPointerDown:Ae,ref:b,role:"application",style:{transform:`translate(${D.x}px, ${D.y}px) scale(${M})`,transformOrigin:"center center",touchAction:"none",willChange:"transform"},children:e})]})};var nc=async(e,t,o)=>{try{return await e.render(t,o)}catch(n){let r=Xr(o);if(!r)throw n;try{return await e.render(`${t}-autofix`,r)}catch(s){throw n}}},Cn=({chart:e,className:t,config:o,fullscreen:n=false,showControls:r=true})=>{let s=v(),[a,c]=useState(null),[i,l]=useState(false),[d,m]=useState(""),[u,p]=useState(null),[f,h]=useState(""),[g,b]=useState(0),{mermaid:y}=useContext(E),x=Oe(),P=y==null?void 0:y.errorComponent,{shouldRender:S,containerRef:M}=bo({immediate:n});if(useEffect(()=>{if(!S)return;if(!x){c("Mermaid plugin not available. Please add the mermaid plugin to enable diagram rendering.");return}(async()=>{try{c(null),l(!0);let B=x.getMermaid(o),j=e.split("").reduce((U,Q)=>(U<<5)-U+Q.charCodeAt(0)|0,0),Y=`mermaid-${Math.abs(j)}-${Date.now()}-${Math.random().toString(36).substring(2,9)}`,{svg:F}=await nc(B,Y,e),H=Jt(F),V=n?F:gn(F);m(V),p(H),h(V);}catch(B){if(!(f||d)){let j=B instanceof Error?B.message:"Failed to render Mermaid chart";c(j);}}finally{l(false);}})();},[e,o,g,S,x]),!(S||d||f))return jsx("div",{className:s("my-4 min-h-[200px]",t),ref:M});if(i&&!d&&!f)return jsx("div",{className:s("my-4 flex justify-center p-4",t),ref:M,children:jsxs("div",{className:s("flex items-center space-x-2 text-muted-foreground"),children:[jsx("div",{className:s("h-4 w-4 animate-spin rounded-full border-current border-b-2")}),jsx("span",{className:s("text-sm"),children:"Loading diagram..."})]})});if(a&&!d&&!f){let D=()=>b(B=>B+1);return P?jsx("div",{ref:M,children:jsx(P,{chart:e,error:a,retry:D})}):jsxs("div",{className:s("rounded-md bg-red-50 p-4",t),ref:M,children:[jsxs("p",{className:s("font-mono text-red-700 text-sm"),children:["Mermaid Error: ",a]}),jsxs("details",{className:s("mt-2"),children:[jsx("summary",{className:s("cursor-pointer text-red-600 text-xs"),children:"Show Code"}),jsx("pre",{className:s("mt-2 overflow-x-auto rounded bg-red-100 p-2 text-red-800 text-xs"),children:e})]})]})}let C=d||f;return jsx("div",{className:s("size-full",t),"data-streamdown":"mermaid",ref:M,children:jsx(Yr,{className:s(n?"size-full overflow-hidden":"overflow-hidden",t),contentSize:u,fitKey:e,fullscreen:n,isAutoFit:true,maxZoom:3,minZoom:.5,showControls:r,zoomStep:.1,children:jsx("div",{"aria-label":"Mermaid chart",className:s("flex justify-center",n?"size-full items-center":null),dangerouslySetInnerHTML:{__html:C},role:"img"})})})};export{io as A,Ll as B,mo as C,Nl as D,Kr as E,_l as F,ds as a,ct as b,Bt as c,qe as d,Do as e,_t as f,$t as g,am as h,Ft as i,ft as j,ht as k,Wt as l,bt as m,E as n,cn as o,Cn as p,_e as q,Le as r,to as s,xt as t,Ve as u,et as v,li as w,tt as x,rt as y,Tt as z};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import {n,h,e}from'./chunk-
|
|
2
|
+
import {n,h,e}from'./chunk-TSGRZBXR.js';import {useContext,useState,useEffect}from'react';import {jsx}from'react/jsx-runtime';var x=({code:s,language:e$1,maxHeight:h$1,raw:t,className:m,startLine:d,lineNumbers:a,...c})=>{let{shikiTheme:l}=useContext(n),i=h(),[p,o]=useState(t);return useEffect(()=>{if(!i){o(t);return}let g=i.highlight({code:s,language:e$1,themes:l},H=>{o(H);});g&&o(g);},[s,e$1,l,i,t]),jsx(e,{className:m,language:e$1,lineNumbers:a,maxHeight:h$1,result:p,startLine:d,...c})};export{x as HighlightedCodeBlockBody};
|
package/dist/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
export{E as Block,i as CodeBlock,f as CodeBlockContainer,k as CodeBlockCopyButton,l as CodeBlockDownloadButton,g as CodeBlockHeader,m as CodeBlockSkeleton,d as DefaultScrollable,F as Streamdown,n as StreamdownContext,v as TableCopyDropdown,w as TableDownloadButton,x as TableDownloadDropdown,a as createAnimateCursor,b as createAnimatePlugin,C as defaultRehypePlugins,D as defaultRemarkPlugins,j as defaultTranslations,o as defaultUrlTransform,y as detectTextDirection,t as escapeMarkdownTableCell,q as extractTableDataFromElement,B as normalizeHtmlIndentation,z as parseMarkdownIntoBlocks,A as parseMarkdownIntoBlocksIncremental,r as tableDataToCSV,u as tableDataToMarkdown,s as tableDataToTSV,c as useIsCodeFenceIncomplete}from'./chunk-
|
|
2
|
+
export{E as Block,i as CodeBlock,f as CodeBlockContainer,k as CodeBlockCopyButton,l as CodeBlockDownloadButton,g as CodeBlockHeader,m as CodeBlockSkeleton,d as DefaultScrollable,F as Streamdown,n as StreamdownContext,v as TableCopyDropdown,w as TableDownloadButton,x as TableDownloadDropdown,a as createAnimateCursor,b as createAnimatePlugin,C as defaultRehypePlugins,D as defaultRemarkPlugins,j as defaultTranslations,o as defaultUrlTransform,y as detectTextDirection,t as escapeMarkdownTableCell,q as extractTableDataFromElement,B as normalizeHtmlIndentation,z as parseMarkdownIntoBlocks,A as parseMarkdownIntoBlocksIncremental,r as tableDataToCSV,u as tableDataToMarkdown,s as tableDataToTSV,c as useIsCodeFenceIncomplete}from'./chunk-TSGRZBXR.js';
|
|
@@ -1,7 +1,16 @@
|
|
|
1
|
+
import type { Element } from "hast";
|
|
2
|
+
import { type ReactNode } from "react";
|
|
1
3
|
export interface TableData {
|
|
2
4
|
headers: string[];
|
|
3
5
|
rows: string[][];
|
|
4
6
|
}
|
|
7
|
+
/** Flatten React children to a single line of visible text. */
|
|
8
|
+
export declare const reactChildrenToText: (children: ReactNode) => string;
|
|
9
|
+
/**
|
|
10
|
+
* Native `title` for a table header: honor an explicit prop, otherwise the
|
|
11
|
+
* cell's plain text so clamped / wrapped headers stay readable on hover.
|
|
12
|
+
*/
|
|
13
|
+
export declare const tableHeaderLabel: (children: ReactNode, node?: Element, title?: string) => string | undefined;
|
|
5
14
|
export declare const extractTableDataFromElement: (tableElement: HTMLElement) => TableData;
|
|
6
15
|
export type CSVSeparator = "," | ";" | "\t" | "auto";
|
|
7
16
|
export declare const getTableCsvSeparator: (config: boolean | {
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
var s=["-mt-10","[&>p]:inline","[&>p:last-child]:mb-0","[&>svg]:inline-block","[&_svg]:h-auto","[&_svg]:w-auto","[counter-increment:line_0]","[counter-reset:line]","[li_&]:pl-6","absolute","animate-spin","appearance-none","backdrop-blur-sm","before:[counter-increment:line]","before:content-[counter(line)]","before:font-mono","before:inline-block","before:mr-4","before:select-none","before:text-[13px]","before:text-muted-foreground/50","before:text-right","before:w-6","bg-[var(--sdm-bg,inherit)]","bg-[var(--sdm-tbg)]","bg-background","bg-background/50","bg-background/80","bg-background/90","bg-background/95","bg-black/10","bg-muted","bg-muted/40","bg-muted/80","bg-primary","bg-red-100","bg-red-50","bg-sidebar","bg-sidebar/80","block","border","border-b","border-b-2","border-border","border-collapse","border-current","border-l-4","border-muted-foreground/30","border-red-200","border-sidebar","border-t","bottom-2","bottom-4","break-all","cursor-pointer","dark:bg-[var(--shiki-dark-bg,var(--sdm-bg,inherit))]","dark:bg-[var(--shiki-dark-bg,var(--sdm-tbg))]","dark:text-[var(--shiki-dark,var(--sdm-c,inherit))]","disabled:cursor-not-allowed","disabled:opacity-50","divide-border","divide-y","duration-150","duration-200","ease-out","fixed","flex","flex-1","flex-col","font-medium","font-mono","font-semibold","gap-1","gap-2","gap-4","group","group-hover:block","group-hover:opacity-100","h-4","h-8","h-[46px]","h-auto","h-full","hidden","hover:bg-background","hover:bg-muted","hover:bg-muted/40","hover:bg-primary/90","hover:text-foreground","inline-block","inset-0","italic","items-center","justify-between","justify-center","justify-end","left-2","left-4","list-decimal","list-disc","list-inside","lowercase","max-h-32","max-w-full","max-w-md","mb-2","min-h-28","min-h-[200px]","min-w-[120px]","ml-1","mt-1","mt-2","mt-6","mx-4","my-4","my-6","opacity-0","origin-center","overflow-hidden","overflow-x-auto","overflow-y-auto","overscroll-y-auto","p-1","p-1.5","p-2","p-3","p-4","p-6","pl-4","pointer-events-auto","pointer-events-none","px-1.5","px-3","px-4","py-0.5","py-1","py-2","relative","right-0","right-2","right-4","rounded","rounded-full","rounded-lg","rounded-md","rounded-r-md","rounded-xl","shadow-lg","shadow-sm","shrink-0","size-4","size-full","space-x-2","space-y-2","space-y-4","sticky","table-fixed","supports-[backdrop-filter]:backdrop-blur","supports-[backdrop-filter]:backdrop-blur-sm","supports-[backdrop-filter]:bg-background/70","supports-[backdrop-filter]:bg-sidebar/70","text-2xl","text-3xl","text-[var(--sdm-c,inherit)]","text-base","text-left","text-lg","text-muted-foreground","text-primary","text-primary-foreground","text-red-600","text-red-700","text-red-800","text-sm","text-xl","text-xs","top-2","top-4","top-full","transition-all","transition-colors","transition-transform","w-4","w-8","w-full","whitespace-normal","
|
|
1
|
+
var s=["-mt-10","[&>p]:inline","[&>p:last-child]:mb-0","[&>svg]:inline-block","[&_svg]:h-auto","[&_svg]:w-auto","[counter-increment:line_0]","[counter-reset:line]","[li_&]:pl-6","absolute","animate-spin","appearance-none","backdrop-blur-sm","before:[counter-increment:line]","before:content-[counter(line)]","before:font-mono","before:inline-block","before:mr-4","before:select-none","before:text-[13px]","before:text-muted-foreground/50","before:text-right","before:w-6","bg-[var(--sdm-bg,inherit)]","bg-[var(--sdm-tbg)]","bg-background","bg-background/50","bg-background/80","bg-background/90","bg-background/95","bg-black/10","bg-muted","bg-muted/40","bg-muted/80","bg-primary","bg-red-100","bg-red-50","bg-sidebar","bg-sidebar/80","block","border","border-b","border-b-2","border-border","border-collapse","border-current","border-l-4","border-muted-foreground/30","border-red-200","border-sidebar","border-t","bottom-2","bottom-4","break-all","cursor-pointer","dark:bg-[var(--shiki-dark-bg,var(--sdm-bg,inherit))]","dark:bg-[var(--shiki-dark-bg,var(--sdm-tbg))]","dark:text-[var(--shiki-dark,var(--sdm-c,inherit))]","disabled:cursor-not-allowed","disabled:opacity-50","divide-border","divide-y","duration-150","duration-200","ease-out","fixed","flex","flex-1","flex-col","font-medium","font-mono","font-semibold","gap-1","gap-2","gap-4","group","group-hover:block","group-hover:opacity-100","h-4","h-8","h-[46px]","h-auto","h-full","hidden","hover:bg-background","hover:bg-muted","hover:bg-muted/40","hover:bg-primary/90","hover:text-foreground","inline-block","inset-0","italic","items-center","justify-between","justify-center","justify-end","left-2","left-4","line-clamp-2","list-decimal","list-disc","list-inside","lowercase","max-h-32","max-w-full","max-w-md","mb-2","min-h-28","min-h-[200px]","min-w-0","min-w-[120px]","ml-1","mt-1","mt-2","mt-6","mx-4","my-4","my-6","opacity-0","origin-center","overflow-hidden","overflow-x-auto","overflow-y-auto","overscroll-y-auto","p-1","p-1.5","p-2","p-3","p-4","p-6","pl-4","pointer-events-auto","pointer-events-none","px-1.5","px-3","px-4","py-0.5","py-1","py-2","relative","right-0","right-2","right-4","rounded","rounded-full","rounded-lg","rounded-md","rounded-r-md","rounded-xl","shadow-lg","shadow-sm","shrink-0","size-4","size-full","space-x-2","space-y-2","space-y-4","sticky","table-fixed","supports-[backdrop-filter]:backdrop-blur","supports-[backdrop-filter]:backdrop-blur-sm","supports-[backdrop-filter]:bg-background/70","supports-[backdrop-filter]:bg-sidebar/70","text-2xl","text-3xl","text-[var(--sdm-c,inherit)]","text-base","text-left","text-lg","text-muted-foreground","text-primary","text-primary-foreground","text-red-600","text-red-700","text-red-800","text-sm","text-xl","text-xs","top-2","top-4","top-full","transition-all","transition-colors","transition-transform","w-4","w-8","w-full","whitespace-normal","wrap-anywhere","z-10","z-50"];function a(r){let i=[...s],d=e=>r?`${r}:${e}`:e,t=[],n=[];for(let e of i)e.includes(",")?n.push(e):t.push(e);let o=[];if(t.length>0){let e=r?`${r}:{${t.join(",")}}`:`{${t.join(",")}}`;o.push(`@source inline("${e}");`);}for(let e of n)o.push(`@source inline("${d(e)}");`);return o.join(`
|
|
2
2
|
`)}export{s as STREAMDOWN_CLASSES,a as getSourceInline};
|
package/package.json
CHANGED
package/dist/mermaid-GL7FDD4I.js
DELETED