@fgbg/mdocs 0.8.20 → 0.8.22

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.
Files changed (47) hide show
  1. package/README.md +1 -1
  2. package/agent-skills/changelog/SKILL.md +15 -1
  3. package/agent-skills/index.json +1 -1
  4. package/bin/mdocs.js +1 -1
  5. package/dist/server/agent/Agent/choice-pending.js +10 -1
  6. package/dist/server/agent/Agent/choice-pending.js.map +1 -1
  7. package/dist/server/agent/Agent/run-pi-agent.js +10 -4
  8. package/dist/server/agent/Agent/run-pi-agent.js.map +1 -1
  9. package/dist/server/agent/Agent/run.js +3 -1
  10. package/dist/server/agent/Agent/run.js.map +1 -1
  11. package/dist/server/agent/Agent/skill-form-pending.js +9 -0
  12. package/dist/server/agent/Agent/skill-form-pending.js.map +1 -1
  13. package/dist/server/cli/main.js +22 -1
  14. package/dist/server/cli/main.js.map +1 -1
  15. package/dist/server/documents/tree-and-folders.test.js +54 -3
  16. package/dist/server/documents/tree-and-folders.test.js.map +1 -1
  17. package/dist/server/documents/tree.service.js +66 -5
  18. package/dist/server/documents/tree.service.js.map +1 -1
  19. package/dist/server/routes/agent.routes.js +25 -9
  20. package/dist/server/routes/agent.routes.js.map +1 -1
  21. package/dist/server/routes/documents.routes.js +16 -0
  22. package/dist/server/routes/documents.routes.js.map +1 -1
  23. package/dist/web/assets/AgentChatPanel-IrNTGpzN.js +1 -0
  24. package/dist/web/assets/AgentSkillFormCard-goRzD94F.js +6 -0
  25. package/dist/web/assets/AiWriteWorkbench-CMe6iuR8.js +7 -0
  26. package/dist/web/assets/{DiagramEditor-BTRe45TX-C1YVSFMK.js → DiagramEditor-BTRe45TX-D1vc5s9F.js} +1 -1
  27. package/dist/web/assets/{DocumentEditor-B6IMAcRI.js → DocumentEditor-CbksWmYP.js} +1 -1
  28. package/dist/web/assets/{MergeView-DoUvoUF6.js → MergeView-CMQVyBUA.js} +1 -1
  29. package/dist/web/assets/{PlaygroundPage-XyDSnDG_.js → PlaygroundPage-w1D9fzsK.js} +1 -1
  30. package/dist/web/assets/{SettingsPage-DOeySRr-.js → SettingsPage-DzTINzaB.js} +1 -1
  31. package/dist/web/assets/{Toolbar-C6GIlNMW.js → Toolbar-DylP9gFR.js} +1 -1
  32. package/dist/web/assets/{VisitorPickerModal-Db9Mh63R.js → VisitorPickerModal-D0i7oxrW.js} +1 -1
  33. package/dist/web/assets/{copy-D8ORBt1-.js → copy-Ba87S6Rg.js} +1 -1
  34. package/dist/web/assets/{diagram-BJFhx-27.js → diagram-gfUK8OHx.js} +332 -332
  35. package/dist/web/assets/index-7HUca950.css +1 -0
  36. package/dist/web/assets/{index-czw0A2GN.js → index-DOrcbEeP.js} +22 -22
  37. package/dist/web/assets/{meta2dEngine-BD2XbzaV-D1CzYV6l.js → meta2dEngine-BD2XbzaV-BFAQue19.js} +1 -1
  38. package/dist/web/assets/{motion-D-I76zAi.js → motion-C4pN8CfU.js} +1 -1
  39. package/dist/web/assets/{plus-9njZDkAU.js → plus-BlTVBbk-.js} +1 -1
  40. package/dist/web/assets/{react-BCo8JH1D.js → react-DedaIFYc.js} +3 -3
  41. package/dist/web/assets/{ui-C3xtW1w8.js → ui-DxdLi_28.js} +3 -3
  42. package/dist/web/index.html +4 -4
  43. package/package.json +1 -1
  44. package/dist/web/assets/AgentChatPanel-Cva-1CWE.js +0 -1
  45. package/dist/web/assets/AgentSkillFormCard-DcKxyiAV.js +0 -6
  46. package/dist/web/assets/AiWriteWorkbench-DkZ4JQuS.js +0 -6
  47. package/dist/web/assets/index-BQ1RXV0n.css +0 -1
@@ -1 +1 @@
1
- import{T as D,W as _}from"./react-BCo8JH1D.js";import{r as p,a as A,b as u,c as z,i as N,M as O,C,f as k,d as q,e as L,g as V,h as j,s as B,j as G,k as H,l as J,m as W,n as K,o as Q}from"./meta2d-C8Z4cn-d.js";import"./react-vendor-BNpqFP9B.js";import"./editor-ONzd_YnO.js";import"./ui-C3xtW1w8.js";import"./motion-D-I76zAi.js";import"./diagram-BJFhx-27.js";import"./index-czw0A2GN.js";import"./plus-9njZDkAU.js";import"./copy-D8ORBt1-.js";let E=!1;function U(){E||(p(k()),A(q()),p(L()),u(V()),p(j()),p(B()),u(G()),z(),u(H()),u(J()),p(W()),u(K()),A(Q()),E=!0)}let F=!1;function Z(){F||(U(),F=!0)}function Y(e,r){try{e==null||e.destroy()}catch{}try{r.remove()}catch{}}function X(e){let r=e.font;Object.defineProperty(e,"font",{configurable:!0,get:()=>r,set:t=>{r=typeof t=="string"?t.replace(/(\d+(?:\.\d+)?(?:px|pt|pc|em|ex|%|in|cm|mm))\s*\/\s*(\d+(?:\.\d+)?)(?=\s|$)/,"$1/normal"):t,e.__ctx&&(e.__ctx.font=r)}})}function ee(e){typeof e.ellipse!="function"&&(e.ellipse=(r,t,n,a,s=0,o=0,m=Math.PI*2,i=!1)=>{var M;if(n<0||a<0)throw new Error("IndexSizeError: The radius provided is negative.");((M=e.__currentElement)==null?void 0:M.nodeName)!=="path"&&e.beginPath();const h=Math.PI*2,f=Math.abs(m-o),y=f>=h-1e-4||f===0,w=s*180/Math.PI,v=i?0:1,c=g=>{const l=Math.cos(g),S=Math.sin(g),b=Math.cos(s),x=Math.sin(s);return{x:r+n*l*b-a*S*x,y:t+n*l*x+a*S*b}},d=(g,l)=>{e.__addPathCommand(`A ${n} ${a} ${w} ${g} ${v} ${l.x} ${l.y}`),e.__currentPosition=l},P=c(o);if(e.moveTo(P.x,P.y),y){d(1,c(o+Math.PI)),d(1,P);return}const T=c(m);d(f>Math.PI?1:0,T)})}function $(){return new Promise(e=>{requestAnimationFrame(()=>e())})}async function I(){await $(),await $()}function R(){const e=C.default??C.C2S??C;if(typeof e=="function")return e;const r=window.C2S;return typeof r=="function"?r:null}async function te(e,r=R()){var f,y,w,v;if(!r)return console.error("[meta2d] preview failed: canvas2svg constructor missing"),"";D(e.data()),e.render(!0),await I();const t=e.store,n=(f=t==null?void 0:t.data)==null?void 0:f.pens,a=Array.isArray(n)?n.length:0,s=10,o=e.getRect();if(!o||!Number.isFinite(o.width)||!Number.isFinite(o.height)||o.width<=0||o.height<=0)return a===0?_:(console.error("[meta2d] preview failed: invalid bounds",o),"");const m={...o,x:o.x-s,y:o.y-s},i=new r(Math.ceil(o.width+s*2),Math.ceil(o.height+s*2));if(i.textBaseline="middle",i.strokeStyle=((y=t==null?void 0:t.styles)==null?void 0:y.color)||"#1f1f1f",X(i),ee(i),Array.isArray(n)&&t){for(const c of n)if(!((c==null?void 0:c.visible)===!1||!N(c,t)))try{e.renderPenRaw(i,c,m,!0)}catch(d){console.error("[meta2d] preview failed: render pen",c,d)}}const h=((v=(w=i.getSerializedSvg)==null?void 0:w.call(i))==null?void 0:v.replace(/--le5le--/g,"&#x"))??"";return h.trim()?h:a===0?_:(console.error("[meta2d] preview failed: serialized SVG is empty",{pensCount:a}),"")}async function pe(e){const r=R();if(!r)return console.error("[meta2d] preview failed: canvas2svg constructor missing"),"";Z();const t=document.createElement("div");t.style.cssText="position:fixed;left:-20000px;top:0;width:1200px;height:800px;pointer-events:none;z-index:-1;",document.body.append(t);let n=null;try{let a;try{a=JSON.parse(e)}catch(s){return console.error("[meta2d] preview failed: invalid diagram JSON",s,e),""}return n=new O(t,{background:"#fff",grid:!1,rule:!1}),D(a),n.open(a),n.render(!0),await I(),te(n,r)}catch(a){return console.error("[meta2d] preview failed: unexpected error",a),""}finally{Y(n,t)}}export{Z as ensureMeta2dShapes,pe as generateSvgFromDiagram,te as generateSvgFromMeta2d};
1
+ import{T as D,W as _}from"./react-DedaIFYc.js";import{r as p,a as A,b as u,c as z,i as N,M as O,C,f as k,d as q,e as L,g as V,h as j,s as B,j as G,k as H,l as J,m as W,n as K,o as Q}from"./meta2d-C8Z4cn-d.js";import"./react-vendor-BNpqFP9B.js";import"./editor-ONzd_YnO.js";import"./ui-DxdLi_28.js";import"./motion-C4pN8CfU.js";import"./diagram-gfUK8OHx.js";import"./index-DOrcbEeP.js";import"./plus-BlTVBbk-.js";import"./copy-Ba87S6Rg.js";let E=!1;function U(){E||(p(k()),A(q()),p(L()),u(V()),p(j()),p(B()),u(G()),z(),u(H()),u(J()),p(W()),u(K()),A(Q()),E=!0)}let F=!1;function Z(){F||(U(),F=!0)}function Y(e,r){try{e==null||e.destroy()}catch{}try{r.remove()}catch{}}function X(e){let r=e.font;Object.defineProperty(e,"font",{configurable:!0,get:()=>r,set:t=>{r=typeof t=="string"?t.replace(/(\d+(?:\.\d+)?(?:px|pt|pc|em|ex|%|in|cm|mm))\s*\/\s*(\d+(?:\.\d+)?)(?=\s|$)/,"$1/normal"):t,e.__ctx&&(e.__ctx.font=r)}})}function ee(e){typeof e.ellipse!="function"&&(e.ellipse=(r,t,n,a,s=0,o=0,m=Math.PI*2,i=!1)=>{var M;if(n<0||a<0)throw new Error("IndexSizeError: The radius provided is negative.");((M=e.__currentElement)==null?void 0:M.nodeName)!=="path"&&e.beginPath();const h=Math.PI*2,f=Math.abs(m-o),y=f>=h-1e-4||f===0,w=s*180/Math.PI,v=i?0:1,c=g=>{const l=Math.cos(g),S=Math.sin(g),b=Math.cos(s),x=Math.sin(s);return{x:r+n*l*b-a*S*x,y:t+n*l*x+a*S*b}},d=(g,l)=>{e.__addPathCommand(`A ${n} ${a} ${w} ${g} ${v} ${l.x} ${l.y}`),e.__currentPosition=l},P=c(o);if(e.moveTo(P.x,P.y),y){d(1,c(o+Math.PI)),d(1,P);return}const T=c(m);d(f>Math.PI?1:0,T)})}function $(){return new Promise(e=>{requestAnimationFrame(()=>e())})}async function I(){await $(),await $()}function R(){const e=C.default??C.C2S??C;if(typeof e=="function")return e;const r=window.C2S;return typeof r=="function"?r:null}async function te(e,r=R()){var f,y,w,v;if(!r)return console.error("[meta2d] preview failed: canvas2svg constructor missing"),"";D(e.data()),e.render(!0),await I();const t=e.store,n=(f=t==null?void 0:t.data)==null?void 0:f.pens,a=Array.isArray(n)?n.length:0,s=10,o=e.getRect();if(!o||!Number.isFinite(o.width)||!Number.isFinite(o.height)||o.width<=0||o.height<=0)return a===0?_:(console.error("[meta2d] preview failed: invalid bounds",o),"");const m={...o,x:o.x-s,y:o.y-s},i=new r(Math.ceil(o.width+s*2),Math.ceil(o.height+s*2));if(i.textBaseline="middle",i.strokeStyle=((y=t==null?void 0:t.styles)==null?void 0:y.color)||"#1f1f1f",X(i),ee(i),Array.isArray(n)&&t){for(const c of n)if(!((c==null?void 0:c.visible)===!1||!N(c,t)))try{e.renderPenRaw(i,c,m,!0)}catch(d){console.error("[meta2d] preview failed: render pen",c,d)}}const h=((v=(w=i.getSerializedSvg)==null?void 0:w.call(i))==null?void 0:v.replace(/--le5le--/g,"&#x"))??"";return h.trim()?h:a===0?_:(console.error("[meta2d] preview failed: serialized SVG is empty",{pensCount:a}),"")}async function pe(e){const r=R();if(!r)return console.error("[meta2d] preview failed: canvas2svg constructor missing"),"";Z();const t=document.createElement("div");t.style.cssText="position:fixed;left:-20000px;top:0;width:1200px;height:800px;pointer-events:none;z-index:-1;",document.body.append(t);let n=null;try{let a;try{a=JSON.parse(e)}catch(s){return console.error("[meta2d] preview failed: invalid diagram JSON",s,e),""}return n=new O(t,{background:"#fff",grid:!1,rule:!1}),D(a),n.open(a),n.render(!0),await I(),te(n,r)}catch(a){return console.error("[meta2d] preview failed: unexpected error",a),""}finally{Y(n,t)}}export{Z as ensureMeta2dShapes,pe as generateSvgFromDiagram,te as generateSvgFromMeta2d};
@@ -1,4 +1,4 @@
1
- var Xa=Object.defineProperty;var Ya=(t,e,n)=>e in t?Xa(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n;var ve=(t,e,n)=>Ya(t,typeof e!="symbol"?e+"":e,n);import{r as v,a as ti,j as In}from"./react-vendor-BNpqFP9B.js";import{u as On,c as ps,w as ei,a as qa,b as Za,s as Ja,g as Qa,d as tc,e as ec}from"./ui-C3xtW1w8.js";function nc(t){if(t.sheet)return t.sheet;for(var e=0;e<document.styleSheets.length;e++)if(document.styleSheets[e].ownerNode===t)return document.styleSheets[e]}function sc(t){var e=document.createElement("style");return e.setAttribute("data-emotion",t.key),t.nonce!==void 0&&e.setAttribute("nonce",t.nonce),e.appendChild(document.createTextNode("")),e.setAttribute("data-s",""),e}var ic=function(){function t(n){var s=this;this._insertTag=function(i){var o;s.tags.length===0?s.insertionPoint?o=s.insertionPoint.nextSibling:s.prepend?o=s.container.firstChild:o=s.before:o=s.tags[s.tags.length-1].nextSibling,s.container.insertBefore(i,o),s.tags.push(i)},this.isSpeedy=n.speedy===void 0?!0:n.speedy,this.tags=[],this.ctr=0,this.nonce=n.nonce,this.key=n.key,this.container=n.container,this.prepend=n.prepend,this.insertionPoint=n.insertionPoint,this.before=null}var e=t.prototype;return e.hydrate=function(s){s.forEach(this._insertTag)},e.insert=function(s){this.ctr%(this.isSpeedy?65e3:1)===0&&this._insertTag(sc(this));var i=this.tags[this.tags.length-1];if(this.isSpeedy){var o=nc(i);try{o.insertRule(s,o.cssRules.length)}catch{}}else i.appendChild(document.createTextNode(s));this.ctr++},e.flush=function(){this.tags.forEach(function(s){var i;return(i=s.parentNode)==null?void 0:i.removeChild(s)}),this.tags=[],this.ctr=0},t}(),X="-ms-",je="-moz-",V="-webkit-",kr="comm",ys="rule",gs="decl",rc="@import",Lr="@keyframes",oc="@layer",ac=Math.abs,Ye=String.fromCharCode,cc=Object.assign;function uc(t,e){return z(t,0)^45?(((e<<2^z(t,0))<<2^z(t,1))<<2^z(t,2))<<2^z(t,3):0}function Ir(t){return t.trim()}function lc(t,e){return(t=e.exec(t))?t[0]:t}function R(t,e,n){return t.replace(e,n)}function Fn(t,e){return t.indexOf(e)}function z(t,e){return t.charCodeAt(e)|0}function ie(t,e,n){return t.slice(e,n)}function mt(t){return t.length}function vs(t){return t.length}function xe(t,e){return e.push(t),t}function fc(t,e){return t.map(e).join("")}var qe=1,Kt=1,Or=0,tt=0,N=0,zt="";function Ze(t,e,n,s,i,o,r){return{value:t,root:e,parent:n,type:s,props:i,children:o,line:qe,column:Kt,length:r,return:""}}function qt(t,e){return cc(Ze("",null,null,"",null,null,0),t,{length:-t.length},e)}function hc(){return N}function dc(){return N=tt>0?z(zt,--tt):0,Kt--,N===10&&(Kt=1,qe--),N}function nt(){return N=tt<Or?z(zt,tt++):0,Kt++,N===10&&(Kt=1,qe++),N}function gt(){return z(zt,tt)}function Me(){return tt}function fe(t,e){return ie(zt,t,e)}function re(t){switch(t){case 0:case 9:case 10:case 13:case 32:return 5;case 33:case 43:case 44:case 47:case 62:case 64:case 126:case 59:case 123:case 125:return 4;case 58:return 3;case 34:case 39:case 40:case 91:return 2;case 41:case 93:return 1}return 0}function Fr(t){return qe=Kt=1,Or=mt(zt=t),tt=0,[]}function Br(t){return zt="",t}function Ve(t){return Ir(fe(tt-1,Bn(t===91?t+2:t===40?t+1:t)))}function mc(t){for(;(N=gt())&&N<33;)nt();return re(t)>2||re(N)>3?"":" "}function pc(t,e){for(;--e&&nt()&&!(N<48||N>102||N>57&&N<65||N>70&&N<97););return fe(t,Me()+(e<6&&gt()==32&&nt()==32))}function Bn(t){for(;nt();)switch(N){case t:return tt;case 34:case 39:t!==34&&t!==39&&Bn(N);break;case 40:t===41&&Bn(t);break;case 92:nt();break}return tt}function yc(t,e){for(;nt()&&t+N!==57;)if(t+N===84&&gt()===47)break;return"/*"+fe(e,tt-1)+"*"+Ye(t===47?t:nt())}function gc(t){for(;!re(gt());)nt();return fe(t,tt)}function vc(t){return Br(Re("",null,null,null,[""],t=Fr(t),0,[0],t))}function Re(t,e,n,s,i,o,r,a,c){for(var l=0,u=0,f=r,h=0,d=0,m=0,p=1,g=1,y=1,x=0,T="",S=i,w=o,M=s,A=T;g;)switch(m=x,x=nt()){case 40:if(m!=108&&z(A,f-1)==58){Fn(A+=R(Ve(x),"&","&\f"),"&\f")!=-1&&(y=-1);break}case 34:case 39:case 91:A+=Ve(x);break;case 9:case 10:case 13:case 32:A+=mc(m);break;case 92:A+=pc(Me()-1,7);continue;case 47:switch(gt()){case 42:case 47:xe(xc(yc(nt(),Me()),e,n),c);break;default:A+="/"}break;case 123*p:a[l++]=mt(A)*y;case 125*p:case 59:case 0:switch(x){case 0:case 125:g=0;case 59+u:y==-1&&(A=R(A,/\f/g,"")),d>0&&mt(A)-f&&xe(d>32?si(A+";",s,n,f-1):si(R(A," ","")+";",s,n,f-2),c);break;case 59:A+=";";default:if(xe(M=ni(A,e,n,l,u,i,a,T,S=[],w=[],f),o),x===123)if(u===0)Re(A,e,M,M,S,o,f,a,w);else switch(h===99&&z(A,3)===110?100:h){case 100:case 108:case 109:case 115:Re(t,M,M,s&&xe(ni(t,M,M,0,0,i,a,T,i,S=[],f),w),i,w,f,a,s?S:w);break;default:Re(A,M,M,M,[""],w,0,a,w)}}l=u=d=0,p=y=1,T=A="",f=r;break;case 58:f=1+mt(A),d=m;default:if(p<1){if(x==123)--p;else if(x==125&&p++==0&&dc()==125)continue}switch(A+=Ye(x),x*p){case 38:y=u>0?1:(A+="\f",-1);break;case 44:a[l++]=(mt(A)-1)*y,y=1;break;case 64:gt()===45&&(A+=Ve(nt())),h=gt(),u=f=mt(T=A+=gc(Me())),x++;break;case 45:m===45&&mt(A)==2&&(p=0)}}return o}function ni(t,e,n,s,i,o,r,a,c,l,u){for(var f=i-1,h=i===0?o:[""],d=vs(h),m=0,p=0,g=0;m<s;++m)for(var y=0,x=ie(t,f+1,f=ac(p=r[m])),T=t;y<d;++y)(T=Ir(p>0?h[y]+" "+x:R(x,/&\f/g,h[y])))&&(c[g++]=T);return Ze(t,e,n,i===0?ys:a,c,l,u)}function xc(t,e,n){return Ze(t,e,n,kr,Ye(hc()),ie(t,2,-2),0)}function si(t,e,n,s){return Ze(t,e,n,gs,ie(t,0,s),ie(t,s+1,-1),s)}function Wt(t,e){for(var n="",s=vs(t),i=0;i<s;i++)n+=e(t[i],i,t,e)||"";return n}function Tc(t,e,n,s){switch(t.type){case oc:if(t.children.length)break;case rc:case gs:return t.return=t.return||t.value;case kr:return"";case Lr:return t.return=t.value+"{"+Wt(t.children,s)+"}";case ys:t.value=t.props.join(",")}return mt(n=Wt(t.children,s))?t.return=t.value+"{"+n+"}":""}function Sc(t){var e=vs(t);return function(n,s,i,o){for(var r="",a=0;a<e;a++)r+=t[a](n,s,i,o)||"";return r}}function bc(t){return function(e){e.root||(e=e.return)&&t(e)}}var ii=function(e){var n=new WeakMap;return function(s){if(n.has(s))return n.get(s);var i=e(s);return n.set(s,i),i}};function wc(t){var e=Object.create(null);return function(n){return e[n]===void 0&&(e[n]=t(n)),e[n]}}var Pc=function(e,n,s){for(var i=0,o=0;i=o,o=gt(),i===38&&o===12&&(n[s]=1),!re(o);)nt();return fe(e,tt)},Ac=function(e,n){var s=-1,i=44;do switch(re(i)){case 0:i===38&&gt()===12&&(n[s]=1),e[s]+=Pc(tt-1,n,s);break;case 2:e[s]+=Ve(i);break;case 4:if(i===44){e[++s]=gt()===58?"&\f":"",n[s]=e[s].length;break}default:e[s]+=Ye(i)}while(i=nt());return e},Cc=function(e,n){return Br(Ac(Fr(e),n))},ri=new WeakMap,Ec=function(e){if(!(e.type!=="rule"||!e.parent||e.length<1)){for(var n=e.value,s=e.parent,i=e.column===s.column&&e.line===s.line;s.type!=="rule";)if(s=s.parent,!s)return;if(!(e.props.length===1&&n.charCodeAt(0)!==58&&!ri.get(s))&&!i){ri.set(e,!0);for(var o=[],r=Cc(n,o),a=s.props,c=0,l=0;c<r.length;c++)for(var u=0;u<a.length;u++,l++)e.props[l]=o[c]?r[c].replace(/&\f/g,a[u]):a[u]+" "+r[c]}}},Mc=function(e){if(e.type==="decl"){var n=e.value;n.charCodeAt(0)===108&&n.charCodeAt(2)===98&&(e.return="",e.value="")}};function jr(t,e){switch(uc(t,e)){case 5103:return V+"print-"+t+t;case 5737:case 4201:case 3177:case 3433:case 1641:case 4457:case 2921:case 5572:case 6356:case 5844:case 3191:case 6645:case 3005:case 6391:case 5879:case 5623:case 6135:case 4599:case 4855:case 4215:case 6389:case 5109:case 5365:case 5621:case 3829:return V+t+t;case 5349:case 4246:case 4810:case 6968:case 2756:return V+t+je+t+X+t+t;case 6828:case 4268:return V+t+X+t+t;case 6165:return V+t+X+"flex-"+t+t;case 5187:return V+t+R(t,/(\w+).+(:[^]+)/,V+"box-$1$2"+X+"flex-$1$2")+t;case 5443:return V+t+X+"flex-item-"+R(t,/flex-|-self/,"")+t;case 4675:return V+t+X+"flex-line-pack"+R(t,/align-content|flex-|-self/,"")+t;case 5548:return V+t+X+R(t,"shrink","negative")+t;case 5292:return V+t+X+R(t,"basis","preferred-size")+t;case 6060:return V+"box-"+R(t,"-grow","")+V+t+X+R(t,"grow","positive")+t;case 4554:return V+R(t,/([^-])(transform)/g,"$1"+V+"$2")+t;case 6187:return R(R(R(t,/(zoom-|grab)/,V+"$1"),/(image-set)/,V+"$1"),t,"")+t;case 5495:case 3959:return R(t,/(image-set\([^]*)/,V+"$1$`$1");case 4968:return R(R(t,/(.+:)(flex-)?(.*)/,V+"box-pack:$3"+X+"flex-pack:$3"),/s.+-b[^;]+/,"justify")+V+t+t;case 4095:case 3583:case 4068:case 2532:return R(t,/(.+)-inline(.+)/,V+"$1$2")+t;case 8116:case 7059:case 5753:case 5535:case 5445:case 5701:case 4933:case 4677:case 5533:case 5789:case 5021:case 4765:if(mt(t)-1-e>6)switch(z(t,e+1)){case 109:if(z(t,e+4)!==45)break;case 102:return R(t,/(.+:)(.+)-([^]+)/,"$1"+V+"$2-$3$1"+je+(z(t,e+3)==108?"$3":"$2-$3"))+t;case 115:return~Fn(t,"stretch")?jr(R(t,"stretch","fill-available"),e)+t:t}break;case 4949:if(z(t,e+1)!==115)break;case 6444:switch(z(t,mt(t)-3-(~Fn(t,"!important")&&10))){case 107:return R(t,":",":"+V)+t;case 101:return R(t,/(.+:)([^;!]+)(;|!.+)?/,"$1"+V+(z(t,14)===45?"inline-":"")+"box$3$1"+V+"$2$3$1"+X+"$2box$3")+t}break;case 5936:switch(z(t,e+11)){case 114:return V+t+X+R(t,/[svh]\w+-[tblr]{2}/,"tb")+t;case 108:return V+t+X+R(t,/[svh]\w+-[tblr]{2}/,"tb-rl")+t;case 45:return V+t+X+R(t,/[svh]\w+-[tblr]{2}/,"lr")+t}return V+t+X+t+t}return t}var Vc=function(e,n,s,i){if(e.length>-1&&!e.return)switch(e.type){case gs:e.return=jr(e.value,e.length);break;case Lr:return Wt([qt(e,{value:R(e.value,"@","@"+V)})],i);case ys:if(e.length)return fc(e.props,function(o){switch(lc(o,/(::plac\w+|:read-\w+)/)){case":read-only":case":read-write":return Wt([qt(e,{props:[R(o,/:(read-\w+)/,":"+je+"$1")]})],i);case"::placeholder":return Wt([qt(e,{props:[R(o,/:(plac\w+)/,":"+V+"input-$1")]}),qt(e,{props:[R(o,/:(plac\w+)/,":"+je+"$1")]}),qt(e,{props:[R(o,/:(plac\w+)/,X+"input-$1")]})],i)}return""})}},Rc=[Vc],Nr=function(e){var n=e.key;if(n==="css"){var s=document.querySelectorAll("style[data-emotion]:not([data-s])");Array.prototype.forEach.call(s,function(p){var g=p.getAttribute("data-emotion");g.indexOf(" ")!==-1&&(document.head.appendChild(p),p.setAttribute("data-s",""))})}var i=e.stylisPlugins||Rc,o={},r,a=[];r=e.container||document.head,Array.prototype.forEach.call(document.querySelectorAll('style[data-emotion^="'+n+' "]'),function(p){for(var g=p.getAttribute("data-emotion").split(" "),y=1;y<g.length;y++)o[g[y]]=!0;a.push(p)});var c,l=[Ec,Mc];{var u,f=[Tc,bc(function(p){u.insert(p)})],h=Sc(l.concat(i,f)),d=function(g){return Wt(vc(g),h)};c=function(g,y,x,T){u=x,d(g?g+"{"+y.styles+"}":y.styles),T&&(m.inserted[y.name]=!0)}}var m={key:n,sheet:new ic({key:n,container:r,nonce:e.nonce,speedy:e.speedy,prepend:e.prepend,insertionPoint:e.insertionPoint}),nonce:e.nonce,inserted:o,registered:{},insert:c};return m.sheet.hydrate(a),m};function Dc(t){for(var e=0,n,s=0,i=t.length;i>=4;++s,i-=4)n=t.charCodeAt(s)&255|(t.charCodeAt(++s)&255)<<8|(t.charCodeAt(++s)&255)<<16|(t.charCodeAt(++s)&255)<<24,n=(n&65535)*1540483477+((n>>>16)*59797<<16),n^=n>>>24,e=(n&65535)*1540483477+((n>>>16)*59797<<16)^(e&65535)*1540483477+((e>>>16)*59797<<16);switch(i){case 3:e^=(t.charCodeAt(s+2)&255)<<16;case 2:e^=(t.charCodeAt(s+1)&255)<<8;case 1:e^=t.charCodeAt(s)&255,e=(e&65535)*1540483477+((e>>>16)*59797<<16)}return e^=e>>>13,e=(e&65535)*1540483477+((e>>>16)*59797<<16),((e^e>>>15)>>>0).toString(36)}var kc={animationIterationCount:1,aspectRatio:1,borderImageOutset:1,borderImageSlice:1,borderImageWidth:1,boxFlex:1,boxFlexGroup:1,boxOrdinalGroup:1,columnCount:1,columns:1,flex:1,flexGrow:1,flexPositive:1,flexShrink:1,flexNegative:1,flexOrder:1,gridRow:1,gridRowEnd:1,gridRowSpan:1,gridRowStart:1,gridColumn:1,gridColumnEnd:1,gridColumnSpan:1,gridColumnStart:1,msGridRow:1,msGridRowSpan:1,msGridColumn:1,msGridColumnSpan:1,fontWeight:1,lineHeight:1,opacity:1,order:1,orphans:1,scale:1,tabSize:1,widows:1,zIndex:1,zoom:1,WebkitLineClamp:1,fillOpacity:1,floodOpacity:1,stopOpacity:1,strokeDasharray:1,strokeDashoffset:1,strokeMiterlimit:1,strokeOpacity:1,strokeWidth:1},Lc=/[A-Z]|^ms/g,Ic=/_EMO_([^_]+?)_([^]*?)_EMO_/g,$r=function(e){return e.charCodeAt(1)===45},oi=function(e){return e!=null&&typeof e!="boolean"},yn=wc(function(t){return $r(t)?t:t.replace(Lc,"-$&").toLowerCase()}),ai=function(e,n){switch(e){case"animation":case"animationName":if(typeof n=="string")return n.replace(Ic,function(s,i,o){return pt={name:i,styles:o,next:pt},i})}return kc[e]!==1&&!$r(e)&&typeof n=="number"&&n!==0?n+"px":n};function oe(t,e,n){if(n==null)return"";var s=n;if(s.__emotion_styles!==void 0)return s;switch(typeof n){case"boolean":return"";case"object":{var i=n;if(i.anim===1)return pt={name:i.name,styles:i.styles,next:pt},i.name;var o=n;if(o.styles!==void 0){var r=o.next;if(r!==void 0)for(;r!==void 0;)pt={name:r.name,styles:r.styles,next:pt},r=r.next;var a=o.styles+";";return a}return Oc(t,e,n)}case"function":{if(t!==void 0){var c=pt,l=n(t);return pt=c,oe(t,e,l)}break}}var u=n;if(e==null)return u;var f=e[u];return f!==void 0?f:u}function Oc(t,e,n){var s="";if(Array.isArray(n))for(var i=0;i<n.length;i++)s+=oe(t,e,n[i])+";";else for(var o in n){var r=n[o];if(typeof r!="object"){var a=r;e!=null&&e[a]!==void 0?s+=o+"{"+e[a]+"}":oi(a)&&(s+=yn(o)+":"+ai(o,a)+";")}else if(Array.isArray(r)&&typeof r[0]=="string"&&(e==null||e[r[0]]===void 0))for(var c=0;c<r.length;c++)oi(r[c])&&(s+=yn(o)+":"+ai(o,r[c])+";");else{var l=oe(t,e,r);switch(o){case"animation":case"animationName":{s+=yn(o)+":"+l+";";break}default:s+=o+"{"+l+"}"}}}return s}var ci=/label:\s*([^\s;{]+)\s*(;|$)/g,pt;function Qt(t,e,n){if(t.length===1&&typeof t[0]=="object"&&t[0]!==null&&t[0].styles!==void 0)return t[0];var s=!0,i="";pt=void 0;var o=t[0];if(o==null||o.raw===void 0)s=!1,i+=oe(n,e,o);else{var r=o;i+=r[0]}for(var a=1;a<t.length;a++)if(i+=oe(n,e,t[a]),s){var c=o;i+=c[a]}ci.lastIndex=0;for(var l="",u;(u=ci.exec(i))!==null;)l+="-"+u[1];var f=Dc(i)+l;return{name:f,styles:i,next:pt}}var Fc=!0;function xs(t,e,n){var s="";return n.split(" ").forEach(function(i){t[i]!==void 0?e.push(t[i]+";"):i&&(s+=i+" ")}),s}var Ur=function(e,n,s){var i=e.key+"-"+n.name;(s===!1||Fc===!1)&&e.registered[i]===void 0&&(e.registered[i]=n.styles)},Ts=function(e,n,s){Ur(e,n,s);var i=e.key+"-"+n.name;if(e.inserted[n.name]===void 0){var o=n;do e.insert(n===o?"."+i:"",o,e.sheet,!0),o=o.next;while(o!==void 0)}};function ui(t,e){if(t.inserted[e.name]===void 0)return t.insert("",e,t.sheet,!0)}function li(t,e,n){var s=[],i=xs(t,s,n);return s.length<2?n:i+e(s)}var Bc=function(e){var n=Nr(e);n.sheet.speedy=function(a){this.isSpeedy=a},n.compat=!0;var s=function(){for(var c=arguments.length,l=new Array(c),u=0;u<c;u++)l[u]=arguments[u];var f=Qt(l,n.registered,void 0);return Ts(n,f,!1),n.key+"-"+f.name},i=function(){for(var c=arguments.length,l=new Array(c),u=0;u<c;u++)l[u]=arguments[u];var f=Qt(l,n.registered),h="animation-"+f.name;return ui(n,{name:f.name,styles:"@keyframes "+h+"{"+f.styles+"}"}),h},o=function(){for(var c=arguments.length,l=new Array(c),u=0;u<c;u++)l[u]=arguments[u];var f=Qt(l,n.registered);ui(n,f)},r=function(){for(var c=arguments.length,l=new Array(c),u=0;u<c;u++)l[u]=arguments[u];return li(n.registered,s,jc(l))};return{css:s,cx:r,injectGlobal:o,keyframes:i,hydrate:function(c){c.forEach(function(l){n.inserted[l]=!0})},flush:function(){n.registered={},n.inserted={},n.sheet.flush()},sheet:n.sheet,cache:n,getRegisteredStyles:xs.bind(null,n.registered),merge:li.bind(null,n.registered,s)}},jc=function t(e){for(var n="",s=0;s<e.length;s++){var i=e[s];if(i!=null){var o=void 0;switch(typeof i){case"boolean":break;case"object":{if(Array.isArray(i))o=t(i);else{o="";for(var r in i)i[r]&&r&&(o&&(o+=" "),o+=r)}break}default:o=i}o&&(n&&(n+=" "),n+=o)}}return n},Tt=Bc({key:"css"});Tt.flush;Tt.hydrate;Tt.cx;Tt.merge;Tt.getRegisteredStyles;Tt.injectGlobal;Tt.keyframes;Tt.css;Tt.sheet;var vm=Tt.cache;function jn(){return jn=Object.assign?Object.assign.bind():function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var s in n)({}).hasOwnProperty.call(n,s)&&(t[s]=n[s])}return t},jn.apply(null,arguments)}var Wr={exports:{}},D={};/** @license React v16.13.1
1
+ var Xa=Object.defineProperty;var Ya=(t,e,n)=>e in t?Xa(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n;var ve=(t,e,n)=>Ya(t,typeof e!="symbol"?e+"":e,n);import{r as v,a as ti,j as In}from"./react-vendor-BNpqFP9B.js";import{u as On,c as ps,w as ei,a as qa,b as Za,s as Ja,g as Qa,d as tc,e as ec}from"./ui-DxdLi_28.js";function nc(t){if(t.sheet)return t.sheet;for(var e=0;e<document.styleSheets.length;e++)if(document.styleSheets[e].ownerNode===t)return document.styleSheets[e]}function sc(t){var e=document.createElement("style");return e.setAttribute("data-emotion",t.key),t.nonce!==void 0&&e.setAttribute("nonce",t.nonce),e.appendChild(document.createTextNode("")),e.setAttribute("data-s",""),e}var ic=function(){function t(n){var s=this;this._insertTag=function(i){var o;s.tags.length===0?s.insertionPoint?o=s.insertionPoint.nextSibling:s.prepend?o=s.container.firstChild:o=s.before:o=s.tags[s.tags.length-1].nextSibling,s.container.insertBefore(i,o),s.tags.push(i)},this.isSpeedy=n.speedy===void 0?!0:n.speedy,this.tags=[],this.ctr=0,this.nonce=n.nonce,this.key=n.key,this.container=n.container,this.prepend=n.prepend,this.insertionPoint=n.insertionPoint,this.before=null}var e=t.prototype;return e.hydrate=function(s){s.forEach(this._insertTag)},e.insert=function(s){this.ctr%(this.isSpeedy?65e3:1)===0&&this._insertTag(sc(this));var i=this.tags[this.tags.length-1];if(this.isSpeedy){var o=nc(i);try{o.insertRule(s,o.cssRules.length)}catch{}}else i.appendChild(document.createTextNode(s));this.ctr++},e.flush=function(){this.tags.forEach(function(s){var i;return(i=s.parentNode)==null?void 0:i.removeChild(s)}),this.tags=[],this.ctr=0},t}(),X="-ms-",je="-moz-",V="-webkit-",kr="comm",ys="rule",gs="decl",rc="@import",Lr="@keyframes",oc="@layer",ac=Math.abs,Ye=String.fromCharCode,cc=Object.assign;function uc(t,e){return z(t,0)^45?(((e<<2^z(t,0))<<2^z(t,1))<<2^z(t,2))<<2^z(t,3):0}function Ir(t){return t.trim()}function lc(t,e){return(t=e.exec(t))?t[0]:t}function R(t,e,n){return t.replace(e,n)}function Fn(t,e){return t.indexOf(e)}function z(t,e){return t.charCodeAt(e)|0}function ie(t,e,n){return t.slice(e,n)}function mt(t){return t.length}function vs(t){return t.length}function xe(t,e){return e.push(t),t}function fc(t,e){return t.map(e).join("")}var qe=1,Kt=1,Or=0,tt=0,N=0,zt="";function Ze(t,e,n,s,i,o,r){return{value:t,root:e,parent:n,type:s,props:i,children:o,line:qe,column:Kt,length:r,return:""}}function qt(t,e){return cc(Ze("",null,null,"",null,null,0),t,{length:-t.length},e)}function hc(){return N}function dc(){return N=tt>0?z(zt,--tt):0,Kt--,N===10&&(Kt=1,qe--),N}function nt(){return N=tt<Or?z(zt,tt++):0,Kt++,N===10&&(Kt=1,qe++),N}function gt(){return z(zt,tt)}function Me(){return tt}function fe(t,e){return ie(zt,t,e)}function re(t){switch(t){case 0:case 9:case 10:case 13:case 32:return 5;case 33:case 43:case 44:case 47:case 62:case 64:case 126:case 59:case 123:case 125:return 4;case 58:return 3;case 34:case 39:case 40:case 91:return 2;case 41:case 93:return 1}return 0}function Fr(t){return qe=Kt=1,Or=mt(zt=t),tt=0,[]}function Br(t){return zt="",t}function Ve(t){return Ir(fe(tt-1,Bn(t===91?t+2:t===40?t+1:t)))}function mc(t){for(;(N=gt())&&N<33;)nt();return re(t)>2||re(N)>3?"":" "}function pc(t,e){for(;--e&&nt()&&!(N<48||N>102||N>57&&N<65||N>70&&N<97););return fe(t,Me()+(e<6&&gt()==32&&nt()==32))}function Bn(t){for(;nt();)switch(N){case t:return tt;case 34:case 39:t!==34&&t!==39&&Bn(N);break;case 40:t===41&&Bn(t);break;case 92:nt();break}return tt}function yc(t,e){for(;nt()&&t+N!==57;)if(t+N===84&&gt()===47)break;return"/*"+fe(e,tt-1)+"*"+Ye(t===47?t:nt())}function gc(t){for(;!re(gt());)nt();return fe(t,tt)}function vc(t){return Br(Re("",null,null,null,[""],t=Fr(t),0,[0],t))}function Re(t,e,n,s,i,o,r,a,c){for(var l=0,u=0,f=r,h=0,d=0,m=0,p=1,g=1,y=1,x=0,T="",S=i,w=o,M=s,A=T;g;)switch(m=x,x=nt()){case 40:if(m!=108&&z(A,f-1)==58){Fn(A+=R(Ve(x),"&","&\f"),"&\f")!=-1&&(y=-1);break}case 34:case 39:case 91:A+=Ve(x);break;case 9:case 10:case 13:case 32:A+=mc(m);break;case 92:A+=pc(Me()-1,7);continue;case 47:switch(gt()){case 42:case 47:xe(xc(yc(nt(),Me()),e,n),c);break;default:A+="/"}break;case 123*p:a[l++]=mt(A)*y;case 125*p:case 59:case 0:switch(x){case 0:case 125:g=0;case 59+u:y==-1&&(A=R(A,/\f/g,"")),d>0&&mt(A)-f&&xe(d>32?si(A+";",s,n,f-1):si(R(A," ","")+";",s,n,f-2),c);break;case 59:A+=";";default:if(xe(M=ni(A,e,n,l,u,i,a,T,S=[],w=[],f),o),x===123)if(u===0)Re(A,e,M,M,S,o,f,a,w);else switch(h===99&&z(A,3)===110?100:h){case 100:case 108:case 109:case 115:Re(t,M,M,s&&xe(ni(t,M,M,0,0,i,a,T,i,S=[],f),w),i,w,f,a,s?S:w);break;default:Re(A,M,M,M,[""],w,0,a,w)}}l=u=d=0,p=y=1,T=A="",f=r;break;case 58:f=1+mt(A),d=m;default:if(p<1){if(x==123)--p;else if(x==125&&p++==0&&dc()==125)continue}switch(A+=Ye(x),x*p){case 38:y=u>0?1:(A+="\f",-1);break;case 44:a[l++]=(mt(A)-1)*y,y=1;break;case 64:gt()===45&&(A+=Ve(nt())),h=gt(),u=f=mt(T=A+=gc(Me())),x++;break;case 45:m===45&&mt(A)==2&&(p=0)}}return o}function ni(t,e,n,s,i,o,r,a,c,l,u){for(var f=i-1,h=i===0?o:[""],d=vs(h),m=0,p=0,g=0;m<s;++m)for(var y=0,x=ie(t,f+1,f=ac(p=r[m])),T=t;y<d;++y)(T=Ir(p>0?h[y]+" "+x:R(x,/&\f/g,h[y])))&&(c[g++]=T);return Ze(t,e,n,i===0?ys:a,c,l,u)}function xc(t,e,n){return Ze(t,e,n,kr,Ye(hc()),ie(t,2,-2),0)}function si(t,e,n,s){return Ze(t,e,n,gs,ie(t,0,s),ie(t,s+1,-1),s)}function Wt(t,e){for(var n="",s=vs(t),i=0;i<s;i++)n+=e(t[i],i,t,e)||"";return n}function Tc(t,e,n,s){switch(t.type){case oc:if(t.children.length)break;case rc:case gs:return t.return=t.return||t.value;case kr:return"";case Lr:return t.return=t.value+"{"+Wt(t.children,s)+"}";case ys:t.value=t.props.join(",")}return mt(n=Wt(t.children,s))?t.return=t.value+"{"+n+"}":""}function Sc(t){var e=vs(t);return function(n,s,i,o){for(var r="",a=0;a<e;a++)r+=t[a](n,s,i,o)||"";return r}}function bc(t){return function(e){e.root||(e=e.return)&&t(e)}}var ii=function(e){var n=new WeakMap;return function(s){if(n.has(s))return n.get(s);var i=e(s);return n.set(s,i),i}};function wc(t){var e=Object.create(null);return function(n){return e[n]===void 0&&(e[n]=t(n)),e[n]}}var Pc=function(e,n,s){for(var i=0,o=0;i=o,o=gt(),i===38&&o===12&&(n[s]=1),!re(o);)nt();return fe(e,tt)},Ac=function(e,n){var s=-1,i=44;do switch(re(i)){case 0:i===38&&gt()===12&&(n[s]=1),e[s]+=Pc(tt-1,n,s);break;case 2:e[s]+=Ve(i);break;case 4:if(i===44){e[++s]=gt()===58?"&\f":"",n[s]=e[s].length;break}default:e[s]+=Ye(i)}while(i=nt());return e},Cc=function(e,n){return Br(Ac(Fr(e),n))},ri=new WeakMap,Ec=function(e){if(!(e.type!=="rule"||!e.parent||e.length<1)){for(var n=e.value,s=e.parent,i=e.column===s.column&&e.line===s.line;s.type!=="rule";)if(s=s.parent,!s)return;if(!(e.props.length===1&&n.charCodeAt(0)!==58&&!ri.get(s))&&!i){ri.set(e,!0);for(var o=[],r=Cc(n,o),a=s.props,c=0,l=0;c<r.length;c++)for(var u=0;u<a.length;u++,l++)e.props[l]=o[c]?r[c].replace(/&\f/g,a[u]):a[u]+" "+r[c]}}},Mc=function(e){if(e.type==="decl"){var n=e.value;n.charCodeAt(0)===108&&n.charCodeAt(2)===98&&(e.return="",e.value="")}};function jr(t,e){switch(uc(t,e)){case 5103:return V+"print-"+t+t;case 5737:case 4201:case 3177:case 3433:case 1641:case 4457:case 2921:case 5572:case 6356:case 5844:case 3191:case 6645:case 3005:case 6391:case 5879:case 5623:case 6135:case 4599:case 4855:case 4215:case 6389:case 5109:case 5365:case 5621:case 3829:return V+t+t;case 5349:case 4246:case 4810:case 6968:case 2756:return V+t+je+t+X+t+t;case 6828:case 4268:return V+t+X+t+t;case 6165:return V+t+X+"flex-"+t+t;case 5187:return V+t+R(t,/(\w+).+(:[^]+)/,V+"box-$1$2"+X+"flex-$1$2")+t;case 5443:return V+t+X+"flex-item-"+R(t,/flex-|-self/,"")+t;case 4675:return V+t+X+"flex-line-pack"+R(t,/align-content|flex-|-self/,"")+t;case 5548:return V+t+X+R(t,"shrink","negative")+t;case 5292:return V+t+X+R(t,"basis","preferred-size")+t;case 6060:return V+"box-"+R(t,"-grow","")+V+t+X+R(t,"grow","positive")+t;case 4554:return V+R(t,/([^-])(transform)/g,"$1"+V+"$2")+t;case 6187:return R(R(R(t,/(zoom-|grab)/,V+"$1"),/(image-set)/,V+"$1"),t,"")+t;case 5495:case 3959:return R(t,/(image-set\([^]*)/,V+"$1$`$1");case 4968:return R(R(t,/(.+:)(flex-)?(.*)/,V+"box-pack:$3"+X+"flex-pack:$3"),/s.+-b[^;]+/,"justify")+V+t+t;case 4095:case 3583:case 4068:case 2532:return R(t,/(.+)-inline(.+)/,V+"$1$2")+t;case 8116:case 7059:case 5753:case 5535:case 5445:case 5701:case 4933:case 4677:case 5533:case 5789:case 5021:case 4765:if(mt(t)-1-e>6)switch(z(t,e+1)){case 109:if(z(t,e+4)!==45)break;case 102:return R(t,/(.+:)(.+)-([^]+)/,"$1"+V+"$2-$3$1"+je+(z(t,e+3)==108?"$3":"$2-$3"))+t;case 115:return~Fn(t,"stretch")?jr(R(t,"stretch","fill-available"),e)+t:t}break;case 4949:if(z(t,e+1)!==115)break;case 6444:switch(z(t,mt(t)-3-(~Fn(t,"!important")&&10))){case 107:return R(t,":",":"+V)+t;case 101:return R(t,/(.+:)([^;!]+)(;|!.+)?/,"$1"+V+(z(t,14)===45?"inline-":"")+"box$3$1"+V+"$2$3$1"+X+"$2box$3")+t}break;case 5936:switch(z(t,e+11)){case 114:return V+t+X+R(t,/[svh]\w+-[tblr]{2}/,"tb")+t;case 108:return V+t+X+R(t,/[svh]\w+-[tblr]{2}/,"tb-rl")+t;case 45:return V+t+X+R(t,/[svh]\w+-[tblr]{2}/,"lr")+t}return V+t+X+t+t}return t}var Vc=function(e,n,s,i){if(e.length>-1&&!e.return)switch(e.type){case gs:e.return=jr(e.value,e.length);break;case Lr:return Wt([qt(e,{value:R(e.value,"@","@"+V)})],i);case ys:if(e.length)return fc(e.props,function(o){switch(lc(o,/(::plac\w+|:read-\w+)/)){case":read-only":case":read-write":return Wt([qt(e,{props:[R(o,/:(read-\w+)/,":"+je+"$1")]})],i);case"::placeholder":return Wt([qt(e,{props:[R(o,/:(plac\w+)/,":"+V+"input-$1")]}),qt(e,{props:[R(o,/:(plac\w+)/,":"+je+"$1")]}),qt(e,{props:[R(o,/:(plac\w+)/,X+"input-$1")]})],i)}return""})}},Rc=[Vc],Nr=function(e){var n=e.key;if(n==="css"){var s=document.querySelectorAll("style[data-emotion]:not([data-s])");Array.prototype.forEach.call(s,function(p){var g=p.getAttribute("data-emotion");g.indexOf(" ")!==-1&&(document.head.appendChild(p),p.setAttribute("data-s",""))})}var i=e.stylisPlugins||Rc,o={},r,a=[];r=e.container||document.head,Array.prototype.forEach.call(document.querySelectorAll('style[data-emotion^="'+n+' "]'),function(p){for(var g=p.getAttribute("data-emotion").split(" "),y=1;y<g.length;y++)o[g[y]]=!0;a.push(p)});var c,l=[Ec,Mc];{var u,f=[Tc,bc(function(p){u.insert(p)})],h=Sc(l.concat(i,f)),d=function(g){return Wt(vc(g),h)};c=function(g,y,x,T){u=x,d(g?g+"{"+y.styles+"}":y.styles),T&&(m.inserted[y.name]=!0)}}var m={key:n,sheet:new ic({key:n,container:r,nonce:e.nonce,speedy:e.speedy,prepend:e.prepend,insertionPoint:e.insertionPoint}),nonce:e.nonce,inserted:o,registered:{},insert:c};return m.sheet.hydrate(a),m};function Dc(t){for(var e=0,n,s=0,i=t.length;i>=4;++s,i-=4)n=t.charCodeAt(s)&255|(t.charCodeAt(++s)&255)<<8|(t.charCodeAt(++s)&255)<<16|(t.charCodeAt(++s)&255)<<24,n=(n&65535)*1540483477+((n>>>16)*59797<<16),n^=n>>>24,e=(n&65535)*1540483477+((n>>>16)*59797<<16)^(e&65535)*1540483477+((e>>>16)*59797<<16);switch(i){case 3:e^=(t.charCodeAt(s+2)&255)<<16;case 2:e^=(t.charCodeAt(s+1)&255)<<8;case 1:e^=t.charCodeAt(s)&255,e=(e&65535)*1540483477+((e>>>16)*59797<<16)}return e^=e>>>13,e=(e&65535)*1540483477+((e>>>16)*59797<<16),((e^e>>>15)>>>0).toString(36)}var kc={animationIterationCount:1,aspectRatio:1,borderImageOutset:1,borderImageSlice:1,borderImageWidth:1,boxFlex:1,boxFlexGroup:1,boxOrdinalGroup:1,columnCount:1,columns:1,flex:1,flexGrow:1,flexPositive:1,flexShrink:1,flexNegative:1,flexOrder:1,gridRow:1,gridRowEnd:1,gridRowSpan:1,gridRowStart:1,gridColumn:1,gridColumnEnd:1,gridColumnSpan:1,gridColumnStart:1,msGridRow:1,msGridRowSpan:1,msGridColumn:1,msGridColumnSpan:1,fontWeight:1,lineHeight:1,opacity:1,order:1,orphans:1,scale:1,tabSize:1,widows:1,zIndex:1,zoom:1,WebkitLineClamp:1,fillOpacity:1,floodOpacity:1,stopOpacity:1,strokeDasharray:1,strokeDashoffset:1,strokeMiterlimit:1,strokeOpacity:1,strokeWidth:1},Lc=/[A-Z]|^ms/g,Ic=/_EMO_([^_]+?)_([^]*?)_EMO_/g,$r=function(e){return e.charCodeAt(1)===45},oi=function(e){return e!=null&&typeof e!="boolean"},yn=wc(function(t){return $r(t)?t:t.replace(Lc,"-$&").toLowerCase()}),ai=function(e,n){switch(e){case"animation":case"animationName":if(typeof n=="string")return n.replace(Ic,function(s,i,o){return pt={name:i,styles:o,next:pt},i})}return kc[e]!==1&&!$r(e)&&typeof n=="number"&&n!==0?n+"px":n};function oe(t,e,n){if(n==null)return"";var s=n;if(s.__emotion_styles!==void 0)return s;switch(typeof n){case"boolean":return"";case"object":{var i=n;if(i.anim===1)return pt={name:i.name,styles:i.styles,next:pt},i.name;var o=n;if(o.styles!==void 0){var r=o.next;if(r!==void 0)for(;r!==void 0;)pt={name:r.name,styles:r.styles,next:pt},r=r.next;var a=o.styles+";";return a}return Oc(t,e,n)}case"function":{if(t!==void 0){var c=pt,l=n(t);return pt=c,oe(t,e,l)}break}}var u=n;if(e==null)return u;var f=e[u];return f!==void 0?f:u}function Oc(t,e,n){var s="";if(Array.isArray(n))for(var i=0;i<n.length;i++)s+=oe(t,e,n[i])+";";else for(var o in n){var r=n[o];if(typeof r!="object"){var a=r;e!=null&&e[a]!==void 0?s+=o+"{"+e[a]+"}":oi(a)&&(s+=yn(o)+":"+ai(o,a)+";")}else if(Array.isArray(r)&&typeof r[0]=="string"&&(e==null||e[r[0]]===void 0))for(var c=0;c<r.length;c++)oi(r[c])&&(s+=yn(o)+":"+ai(o,r[c])+";");else{var l=oe(t,e,r);switch(o){case"animation":case"animationName":{s+=yn(o)+":"+l+";";break}default:s+=o+"{"+l+"}"}}}return s}var ci=/label:\s*([^\s;{]+)\s*(;|$)/g,pt;function Qt(t,e,n){if(t.length===1&&typeof t[0]=="object"&&t[0]!==null&&t[0].styles!==void 0)return t[0];var s=!0,i="";pt=void 0;var o=t[0];if(o==null||o.raw===void 0)s=!1,i+=oe(n,e,o);else{var r=o;i+=r[0]}for(var a=1;a<t.length;a++)if(i+=oe(n,e,t[a]),s){var c=o;i+=c[a]}ci.lastIndex=0;for(var l="",u;(u=ci.exec(i))!==null;)l+="-"+u[1];var f=Dc(i)+l;return{name:f,styles:i,next:pt}}var Fc=!0;function xs(t,e,n){var s="";return n.split(" ").forEach(function(i){t[i]!==void 0?e.push(t[i]+";"):i&&(s+=i+" ")}),s}var Ur=function(e,n,s){var i=e.key+"-"+n.name;(s===!1||Fc===!1)&&e.registered[i]===void 0&&(e.registered[i]=n.styles)},Ts=function(e,n,s){Ur(e,n,s);var i=e.key+"-"+n.name;if(e.inserted[n.name]===void 0){var o=n;do e.insert(n===o?"."+i:"",o,e.sheet,!0),o=o.next;while(o!==void 0)}};function ui(t,e){if(t.inserted[e.name]===void 0)return t.insert("",e,t.sheet,!0)}function li(t,e,n){var s=[],i=xs(t,s,n);return s.length<2?n:i+e(s)}var Bc=function(e){var n=Nr(e);n.sheet.speedy=function(a){this.isSpeedy=a},n.compat=!0;var s=function(){for(var c=arguments.length,l=new Array(c),u=0;u<c;u++)l[u]=arguments[u];var f=Qt(l,n.registered,void 0);return Ts(n,f,!1),n.key+"-"+f.name},i=function(){for(var c=arguments.length,l=new Array(c),u=0;u<c;u++)l[u]=arguments[u];var f=Qt(l,n.registered),h="animation-"+f.name;return ui(n,{name:f.name,styles:"@keyframes "+h+"{"+f.styles+"}"}),h},o=function(){for(var c=arguments.length,l=new Array(c),u=0;u<c;u++)l[u]=arguments[u];var f=Qt(l,n.registered);ui(n,f)},r=function(){for(var c=arguments.length,l=new Array(c),u=0;u<c;u++)l[u]=arguments[u];return li(n.registered,s,jc(l))};return{css:s,cx:r,injectGlobal:o,keyframes:i,hydrate:function(c){c.forEach(function(l){n.inserted[l]=!0})},flush:function(){n.registered={},n.inserted={},n.sheet.flush()},sheet:n.sheet,cache:n,getRegisteredStyles:xs.bind(null,n.registered),merge:li.bind(null,n.registered,s)}},jc=function t(e){for(var n="",s=0;s<e.length;s++){var i=e[s];if(i!=null){var o=void 0;switch(typeof i){case"boolean":break;case"object":{if(Array.isArray(i))o=t(i);else{o="";for(var r in i)i[r]&&r&&(o&&(o+=" "),o+=r)}break}default:o=i}o&&(n&&(n+=" "),n+=o)}}return n},Tt=Bc({key:"css"});Tt.flush;Tt.hydrate;Tt.cx;Tt.merge;Tt.getRegisteredStyles;Tt.injectGlobal;Tt.keyframes;Tt.css;Tt.sheet;var vm=Tt.cache;function jn(){return jn=Object.assign?Object.assign.bind():function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var s in n)({}).hasOwnProperty.call(n,s)&&(t[s]=n[s])}return t},jn.apply(null,arguments)}var Wr={exports:{}},D={};/** @license React v16.13.1
2
2
  * react-is.production.min.js
3
3
  *
4
4
  * Copyright (c) Facebook, Inc. and its affiliates.
@@ -1,4 +1,4 @@
1
- import{c as e}from"./index-czw0A2GN.js";/**
1
+ import{c as e}from"./index-DOrcbEeP.js";/**
2
2
  * @license lucide-react v0.562.0 - ISC
3
3
  *
4
4
  * This source code is licensed under the ISC license.
@@ -1,5 +1,5 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/html-GMplVEZG.js","assets/javascript-wDzz0qaB.js","assets/css-DPfMkruS.js","assets/scss-OYdSNvt2.js","assets/vue-DVfSmUF7.js","assets/typescript-BPQ3VLAy.js","assets/json-Cp-IABpG.js","assets/svelte-DZMnMd3x.js","assets/xml-sdJ4AIDG.js","assets/java-CylS5w8V.js","assets/cpp-BRuaLJcg.js","assets/c-BIGW1oBm.js","assets/sql-BLtJtn59.js","assets/ruby-BGX7qA9Y.js","assets/graphql-ChdNCCLP.js","assets/jsx-g9-lgVsj.js","assets/tsx-COt5Ahok.js","assets/shellscript-Yzrsuije.js","assets/lua-BaeVxFsk.js","assets/yaml-Buea-lGh.js","assets/php-Dhbhpdrm.js","assets/shellsession-BADoaaVG.js","assets/nginx-BpAMiNFr.js","assets/meta2dEngine-BD2XbzaV-D1CzYV6l.js","assets/meta2d-C8Z4cn-d.js","assets/react-vendor-BNpqFP9B.js","assets/editor-ONzd_YnO.js","assets/ui-C3xtW1w8.js","assets/motion-D-I76zAi.js","assets/diagram-BJFhx-27.js","assets/index-czw0A2GN.js","assets/index-BQ1RXV0n.css","assets/plus-9njZDkAU.js","assets/copy-D8ORBt1-.js","assets/DiagramEditor-BTRe45TX-C1YVSFMK.js"])))=>i.map(i=>d[i]);
2
- var K8=Object.defineProperty;var V8=(e,t,n)=>t in e?K8(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var An=(e,t,n)=>V8(e,typeof t!="symbol"?t+"":t,n);import{g as F4,_ as Pe,r as E,af as G8,ag as X8,ah as J8,ai as Nn,aj as zh,ak as lm,al as Y8,j as O,b as Pi,am as Z8,an as Q8,ao as e7,ap as t7,B as n7,d as Bh,aq as r7,ar as i7,as as s7,at as o7}from"./react-vendor-BNpqFP9B.js";import{P as Re,e as $h,A as nu,a as qt,b as O4,w as fe,c as fn,k as wn,n as ct,F as Hr,p as Ri,$ as le,O as Hn,G as dr,d as ps,l as sd,z as _r,r as bt,v as P4,B as je,X as Ln,T as R4,M as Dl,L as Ti,W as ml,f as li,g as ms,h as Co,C as jh,Y as z4,y as Ot,i as Il,H as We,j as a7,t as u7,m as Fo,J as bn,o as B4,R as ci,S as ru,Q as Yn,q as $4,s as l7,u as j4,x as gt,E as c7,D as bc,I as h7,K as f7,_ as d7,N as iu,U as od,Z as gs,a0 as _o,a1 as _t,a2 as q4,a3 as p7,a4 as m7,a5 as hi,a6 as Di,a7 as Ll,a8 as kn,a9 as Sn,aa as ad,ab as g7,ac as H4,ad as ud,ae as ld,af as Eo,V as hn,ag as U4,ah as b7,ai as W4,aj as y7,ak as x7,al as k7,am as w7,an as K4,ao as Zn,ap as S7,aq as v7,ar as $r,as as Qn,at as bs,au as cm,av as hm,aw as C7,ax as _7,ay as E7,az as T7,aA as Ma,aB as V4,aC as G4,aD as ua,aE as Na,aF as su,aG as A7,aH as M7,aI as X4,aJ as N7,aK as qh,aL as fm,aM as D7,aN as I7,aO as cd,aP as Pr,aQ as To,aR as hd,aS as ga,aT as cs,aU as Da,aV as Hh,aW as dm,aX as ba,aY as gl,aZ as Fl,a_ as L7,a$ as F7,b0 as O7,b1 as P7,b2 as R7,b3 as Rr,b4 as z7,b5 as B7,b6 as $7,b7 as pm,b8 as bl,b9 as mm,ba as j7,bb as q7,bc as H7,bd as U7,be as ys,bf as gm,bg as Uh,bh as W7,bi as K7,bj as V7,bk as G7,bl as bm,bm as ni,bn as Ia,bo as Wh,bp as X7,bq as la,br as J4,bs as Y4,bt as Z4,bu as Q4,bv as eb,bw as J7,bx as Y7,by as fd,bz as tb,bA as Z7,bB as Q7,bC as dd,bD as ek,bE as ym,bF as Kh,bG as nb,bH as rb,bI as tk,bJ as nk,bK as Ju,bL as ib,bM as rk,bN as ik,bO as sk,bP as sb,bQ as ok,bR as ak,bS as ob,bT as Ol,bU as uk,bV as lk,bW as ck}from"./editor-ONzd_YnO.js";import{q as nt,t as ut,v as hk,x as N0,y as fk,z as dk,D as pk,E as La,F as mk,G as Pl,I as gk,J as xi,K as Qo,L as bk,N as yk,O as xk,P as kk,Q as wk,R as Sk,S as vk,U as Ck,V as _k,B as pd,W as Ek,X as Nt,p as jr,Y as Vh,Z as Fa,_ as qe,$ as Rl,a0 as ab,a1 as Tk,a2 as ub,a3 as On,a4 as Ak,a5 as Mk,a6 as Nk,a7 as ou,a8 as md,a9 as Gh,aa as zl,ab as lb,ac as Dk,ad as xm,ae as Ik,af as Lk,ag as Xh,ah as cb,ai as Fk,aj as Ok,ak as hb,al as fb,am as Pk}from"./ui-C3xtW1w8.js";import{m as km,t as ea,s as Rk,y as zk,a as wm,b as Sm,i as Bk,l as $k,c as jk,o as qk,u as Hk}from"./diagram-BJFhx-27.js";import{c as Xt,ar as Uk}from"./index-czw0A2GN.js";import{P as vm}from"./plus-9njZDkAU.js";import{C as Wk,a as Kk}from"./copy-D8ORBt1-.js";/**
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/html-GMplVEZG.js","assets/javascript-wDzz0qaB.js","assets/css-DPfMkruS.js","assets/scss-OYdSNvt2.js","assets/vue-DVfSmUF7.js","assets/typescript-BPQ3VLAy.js","assets/json-Cp-IABpG.js","assets/svelte-DZMnMd3x.js","assets/xml-sdJ4AIDG.js","assets/java-CylS5w8V.js","assets/cpp-BRuaLJcg.js","assets/c-BIGW1oBm.js","assets/sql-BLtJtn59.js","assets/ruby-BGX7qA9Y.js","assets/graphql-ChdNCCLP.js","assets/jsx-g9-lgVsj.js","assets/tsx-COt5Ahok.js","assets/shellscript-Yzrsuije.js","assets/lua-BaeVxFsk.js","assets/yaml-Buea-lGh.js","assets/php-Dhbhpdrm.js","assets/shellsession-BADoaaVG.js","assets/nginx-BpAMiNFr.js","assets/meta2dEngine-BD2XbzaV-BFAQue19.js","assets/meta2d-C8Z4cn-d.js","assets/react-vendor-BNpqFP9B.js","assets/editor-ONzd_YnO.js","assets/ui-DxdLi_28.js","assets/motion-C4pN8CfU.js","assets/diagram-gfUK8OHx.js","assets/index-DOrcbEeP.js","assets/index-7HUca950.css","assets/plus-BlTVBbk-.js","assets/copy-Ba87S6Rg.js","assets/DiagramEditor-BTRe45TX-D1vc5s9F.js"])))=>i.map(i=>d[i]);
2
+ var K8=Object.defineProperty;var V8=(e,t,n)=>t in e?K8(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var An=(e,t,n)=>V8(e,typeof t!="symbol"?t+"":t,n);import{g as F4,_ as Pe,r as E,af as G8,ag as X8,ah as J8,ai as Nn,aj as zh,ak as lm,al as Y8,j as O,b as Pi,am as Z8,an as Q8,ao as e7,ap as t7,B as n7,d as Bh,aq as r7,ar as i7,as as s7,at as o7}from"./react-vendor-BNpqFP9B.js";import{P as Re,e as $h,A as nu,a as qt,b as O4,w as fe,c as fn,k as wn,n as ct,F as Hr,p as Ri,$ as le,O as Hn,G as dr,d as ps,l as sd,z as _r,r as bt,v as P4,B as je,X as Ln,T as R4,M as Dl,L as Ti,W as ml,f as li,g as ms,h as Co,C as jh,Y as z4,y as Ot,i as Il,H as We,j as a7,t as u7,m as Fo,J as bn,o as B4,R as ci,S as ru,Q as Yn,q as $4,s as l7,u as j4,x as gt,E as c7,D as bc,I as h7,K as f7,_ as d7,N as iu,U as od,Z as gs,a0 as _o,a1 as _t,a2 as q4,a3 as p7,a4 as m7,a5 as hi,a6 as Di,a7 as Ll,a8 as kn,a9 as Sn,aa as ad,ab as g7,ac as H4,ad as ud,ae as ld,af as Eo,V as hn,ag as U4,ah as b7,ai as W4,aj as y7,ak as x7,al as k7,am as w7,an as K4,ao as Zn,ap as S7,aq as v7,ar as $r,as as Qn,at as bs,au as cm,av as hm,aw as C7,ax as _7,ay as E7,az as T7,aA as Ma,aB as V4,aC as G4,aD as ua,aE as Na,aF as su,aG as A7,aH as M7,aI as X4,aJ as N7,aK as qh,aL as fm,aM as D7,aN as I7,aO as cd,aP as Pr,aQ as To,aR as hd,aS as ga,aT as cs,aU as Da,aV as Hh,aW as dm,aX as ba,aY as gl,aZ as Fl,a_ as L7,a$ as F7,b0 as O7,b1 as P7,b2 as R7,b3 as Rr,b4 as z7,b5 as B7,b6 as $7,b7 as pm,b8 as bl,b9 as mm,ba as j7,bb as q7,bc as H7,bd as U7,be as ys,bf as gm,bg as Uh,bh as W7,bi as K7,bj as V7,bk as G7,bl as bm,bm as ni,bn as Ia,bo as Wh,bp as X7,bq as la,br as J4,bs as Y4,bt as Z4,bu as Q4,bv as eb,bw as J7,bx as Y7,by as fd,bz as tb,bA as Z7,bB as Q7,bC as dd,bD as ek,bE as ym,bF as Kh,bG as nb,bH as rb,bI as tk,bJ as nk,bK as Ju,bL as ib,bM as rk,bN as ik,bO as sk,bP as sb,bQ as ok,bR as ak,bS as ob,bT as Ol,bU as uk,bV as lk,bW as ck}from"./editor-ONzd_YnO.js";import{q as nt,t as ut,v as hk,x as N0,y as fk,z as dk,D as pk,E as La,F as mk,G as Pl,I as gk,J as xi,K as Qo,L as bk,N as yk,O as xk,P as kk,Q as wk,R as Sk,S as vk,U as Ck,V as _k,B as pd,W as Ek,X as Nt,p as jr,Y as Vh,Z as Fa,_ as qe,$ as Rl,a0 as ab,a1 as Tk,a2 as ub,a3 as On,a4 as Ak,a5 as Mk,a6 as Nk,a7 as ou,a8 as md,a9 as Gh,aa as zl,ab as lb,ac as Dk,ad as xm,ae as Ik,af as Lk,ag as Xh,ah as cb,ai as Fk,aj as Ok,ak as hb,al as fb,am as Pk}from"./ui-DxdLi_28.js";import{m as km,t as ea,s as Rk,y as zk,a as wm,b as Sm,i as Bk,l as $k,c as jk,o as qk,u as Hk}from"./diagram-gfUK8OHx.js";import{c as Xt,at as Uk}from"./index-DOrcbEeP.js";import{P as vm}from"./plus-BlTVBbk-.js";import{C as Wk,a as Kk}from"./copy-Ba87S6Rg.js";/**
3
3
  * @license lucide-react v0.562.0 - ISC
4
4
  *
5
5
  * This source code is licensed under the ISC license.
@@ -1740,7 +1740,7 @@ ${this.__markdown}
1740
1740
  ## 分支 2`,style:{border:"none",flex:1,fontFamily:"monospace",fontSize:14,lineHeight:1.6,outline:"none",padding:16,resize:"none"},value:r})]}),O.jsx("div",{style:{display:"flex",flexDirection:"column",width:"50%"},children:O.jsx(_x,{markdown:r})})]})]})}function Zj({className:e,editor:t,node:n}){const[r,i]=E.useState(!1),s=n.__markdown;E.useLayoutEffect(()=>{const u=n.getKey();let l=!1;t.getEditorState().read(()=>{const h=Re(u);h&&w4(h)&&h.__autoOpenEditor&&(l=!0)}),l&&(i(!0),t.update(()=>{const h=Re(u);h&&w4(h)&&h.__autoOpenEditor&&h.clearAutoOpenEditor()}))},[t,n.getKey()]);const o=E.useCallback(()=>{t.update(()=>{const u=n.getLatest(),l=u.getNextSibling(),h=u.getPreviousSibling();if(u.remove(),l){l.selectStart();return}h&&h.selectEnd()})},[t,n]),a=E.useCallback(u=>{t.update(()=>{n.updateMarkdown(u)}),i(!1)},[t,n]);return r?O.jsx("div",{className:e,children:O.jsx(Yj,{markdown:s,onClose:()=>i(!1),onSave:a})}):O.jsxs("div",{className:e,style:{margin:"8px 0",position:"relative"},children:[O.jsxs("div",{style:{bottom:8,display:"flex",gap:4,position:"absolute",right:8,zIndex:10},children:[O.jsx("button",{onClick:()=>i(!0),style:{background:"rgba(0,0,0,0.5)",border:"none",borderRadius:4,color:"#fff",cursor:"pointer",fontSize:12,padding:"4px 8px"},type:"button",children:"编辑"}),O.jsx("button",{onClick:o,style:{background:"rgba(255,77,79,0.7)",border:"none",borderRadius:4,color:"#fff",cursor:"pointer",fontSize:12,padding:"4px 8px"},type:"button",children:"删除"})]}),O.jsx("div",{style:{border:"1px solid #f0f0f0",borderRadius:8,height:350},children:O.jsx(_x,{markdown:s})})]})}function LH({className:e,theme:t}){const[n]=vt(),r=E.useCallback((s,o)=>O.jsx(Zj,{className:e,editor:o,node:s}),[e]),i=E.useRef(!1);return i.current||(i.current=!0,n.registerPlugin(Jj,{decorator:r,theme:t})),null}const Qj=ct("INSERT_MATH_COMMAND"),Ex=ct("UPDATE_MATH_COMMAND"),Ml=ct("SELECT_MATH_SIDE_COMMAND");function eq(e){return bt(e.registerCommand(Qj,t=>{const{code:n}=t;return e.update(()=>{const r=lu(n);Sn([r]),Qn(r.getParentOrThrow())&&bs(r,hn).selectEnd()}),!0},Ln),e.registerCommand(Ex,t=>{const{code:n,key:r}=t;return e.update(()=>{const i=Re(r);i&&(i.updateCode(n),i.selectNext())}),!0},Ln),e.registerCommand(Ml,t=>{const{key:n,prev:r}=t;return e.update(()=>{const i=Re(n);i&&(r?i.selectPrevious():i.selectNext())}),!0},Ln))}function tq(e){const t=e.trim();return t?!!(/\\[A-Za-z]/.test(t)||/[\d!()*+,/<=>^_{|}-]/.test(t)||/^[A-Za-z]$/.test(t)):!1}nn();Pt();Lt();var So;const nq=(So=class extends Ft{constructor(t,n){super(),this.kernel=t,this.config=n,this.logger=Ze("plugin","math"),t.registerNodes([ka,Ii]),n!=null&&n.theme&&t.registerThemes(n==null?void 0:n.theme),this.registerDecorator(t,ka.getType(),(r,i)=>n!=null&&n.decorator?n.decorator(r,i):null),this.registerDecorator(t,Ii.getType(),(r,i)=>n!=null&&n.decorator?n.decorator(r,i):null)}onInit(t){this.register(eq(t)),this.registerMarkdown()}registerMarkdown(){const t=this.kernel.requireService(Dt);t==null||t.registerMarkdownShortCut({regExp:/\$([^\s$](?:[^$]*[^\s$])?)\$\s?$/,replace:(n,r)=>{const[,i]=r;if(!tq(i))return;const s=lu(i);this.logger.debug("Math node inserted:",s),n.insertBefore(s),n.setTextContent(""),n.select()},trigger:"$",type:"text-match"}),t==null||t.registerMarkdownShortCut({regExp:/^(\$\$)$/,replace:(n,r,i,s)=>{const o=kc();s||n.getNextSibling()?n.replace(o):n.insertBefore(o);const a=bn();a.add(o.getKey()),je(a)},trigger:"enter",type:"element"}),t==null||t.registerMarkdownWriter(ka.getType(),(n,r)=>(n.appendLine(r.getTextContent()),!0)),t==null||t.registerMarkdownWriter(Ii.getType(),(n,r)=>(n.appendLine(r.getTextContent()),!0)),t==null||t.registerMarkdownReader("inlineMath",n=>Se.createElementNode("math",{code:n.value,version:1})),t==null||t.registerMarkdownReader("math",n=>Se.createElementNode("mathBlock",{code:n.value,version:1}))}},So.pluginName="MathPlugin",So),Tx=E.memo(({children:e,isBlockMode:t,mathDOM:n,onFocus:r,prev:i})=>{const s=E.useRef(null),[o,a]=E.useState(void 0),u=E.useRef(void 0),l=E.useCallback(m=>{const y=typeof m=="number"?Math.round(m):void 0;u.current!==y&&(u.current=y,a(y))},[]),h=E.useCallback(()=>{if(!t){l(void 0);return}const m=n==null?void 0:n.closest('[contenteditable="true"]');m&&l(m.getBoundingClientRect().width)},[t,n,l]),d=E.useCallback(()=>Jc({callback:()=>{!s.current||!n||(r==null||r(),h())},floating:s.current,placement:t?"bottom-start":"bottom",reference:n}),[t,n,r,h]),g=E.useCallback(()=>{n&&d()},[n,d]);return E.useEffect(()=>{if(!n||!s.current)return;const m=s.current,y=new ResizeObserver(()=>{h()});y.observe(m);let w=null;return t&&(w=n.closest('[contenteditable="true"]'),w&&y.observe(w)),d(),window.addEventListener("resize",d),()=>{y.disconnect(),window.removeEventListener("resize",d)}},[n,i,t,d]),E.useEffect(()=>{n||!s.current||eu(s.current)},[n]),O.jsx(ou,{arrow:!1,content:O.jsx(Nt,{className:Fi.mathEditor,"data-math-editor-container":!0,style:o?{width:o}:void 0,children:e}),open:!!n,placement:t?"bottomLeft":"bottom",styles:{content:{borderRadius:"6px",padding:0}},children:O.jsx("span",{className:Fi.mathEditorAnchor,onClick:g,ref:s})})});Tx.displayName="MathEditorContainer";Cb();const Ax=E.memo(({focusRef:e,mathNode:t,onArrowLeft:n,onArrowRight:r,onCancel:i,onDelete:s,onSubmit:o,onValidationChange:a,onValueChange:u,value:l})=>{const h=nr(),d=E.useRef(null),[g,m]=E.useState("");E.useEffect(()=>{e==null||e(d.current)},[e]),E.useEffect(()=>{if(!t)return;if(!l.trim()){m(""),a==null||a(!0);return}const w=setTimeout(()=>{try{Ik(l,{displayMode:!0,throwOnError:!0}),m(""),a==null||a(!0)}catch(_){m(_ instanceof Error?_.message:"LaTeX Parse Error"),a==null||a(!1)}},50);return()=>clearTimeout(w)},[l,t,a]);const y=E.useCallback(w=>{if(t){if($4(w,vb)&&w.key==="Enter"){w.preventDefault(),o();return}if(w.key==="Escape"){w.preventDefault(),i();return}if(w.key==="Backspace"&&!l.trim()){w.preventDefault(),s();return}w.key==="ArrowLeft"&&w.currentTarget.selectionStart===0&&(w.preventDefault(),n()),w.key==="ArrowRight"&&w.currentTarget.selectionStart===w.currentTarget.value.length&&(w.preventDefault(),r())}},[t,o,i,s,n,r,l]);return O.jsxs(O.Fragment,{children:[O.jsx(Lk,{autoFocus:!0,autoSize:{maxRows:6,minRows:1},className:Fi.mathEditorTextArea,onChange:w=>{u(w.target.value)},onKeyDown:y,placeholder:`${h("math.placeholder")}...`,ref:d,resize:!1,value:l,variant:"borderless"}),g&&O.jsx(Nt,{className:Fi.mathEditorFooter,horizontal:!0,paddingBlock:4,paddingInline:12,width:"100%",children:O.jsx(jr,{fontSize:13,type:"danger",children:g})}),O.jsx(Nt,{className:Fi.mathEditorFooter,horizontal:!0,justify:"flex-end",padding:4,width:"100%",children:O.jsxs(Rl,{onClick:w=>{w.preventDefault(),o()},size:"small",type:"text",variant:"filled",children:[h("confirm"),O.jsx(ab,{compact:!0,keys:"mod+enter",variant:"borderless"})]})})]})});Ax.displayName="MathEditorContent";xr();const rq=E.memo(({renderComp:e})=>{const t=E.useRef(null),n=E.useRef(!1),[r,i]=E.useState(null),[s,o]=E.useState(""),a=E.useRef(""),u=E.useRef(!0),[l,h]=E.useState(null),[d,g]=E.useState(!1),[m,y]=E.useState(!1),[w,_]=E.useState(!1),[S]=vt();E.useEffect(()=>{if(!r||!u.current)return;const P=setTimeout(()=>{const G=S.getLexicalEditor();if(G&&!n.current){const Z=r.code;if(s&&Z&&Z===s)return;n.current=!0,G.update(()=>{if(G.getEditorState().read(()=>G.getElementByKey(r.getKey()))){const re=r.getWritable();re.__code=s}}),setTimeout(()=>{n.current=!1},50)}},50);return()=>clearTimeout(P)},[s,r,S]);const A=E.useCallback(()=>{if(!r)return;const P=S.getLexicalEditor();if(P){const G=u.current?s:a.current;P.dispatchCommand(Ex,{code:G,key:r.getKey()})}},[S,r,s]),T=E.useCallback(()=>{if(!r)return;const P=S.getLexicalEditor();P&&(P.dispatchCommand(Ml,{key:r.getKey(),prev:!1}),P.focus())},[r,S]),D=E.useCallback(()=>{if(!r)return;const P=S.getLexicalEditor();P&&P.update(()=>{r.remove()})},[r,S]),R=E.useCallback(()=>{r&&S.dispatchCommand(Ml,{key:r.getKey(),prev:!0})},[r,S]),F=E.useCallback(()=>{r&&S.dispatchCommand(Ml,{key:r.getKey(),prev:!1})},[r,S]),j=E.useCallback(()=>{var P,G,Z,re;(P=t.current)==null||P.focus(),d&&((re=(Z=(G=t.current)==null?void 0:G.resizableTextArea)==null?void 0:Z.textArea)==null||re.setSelectionRange(0,0))},[d]),q=E.useCallback(P=>{t.current=P},[]);gr(P=>bt(P.registerUpdateListener(({prevEditorState:G})=>{if(n.current)return;const Z=P.getEditorState().read(()=>{const re=le();if(!Hn(re))return!1;const te=re.getNodes()[0];if(!e3(te))return!1;const oe=r&&r.getKey()===te.getKey();return i(te),!oe&&te.code!==s&&(o(te.code),a.current=te.code,u.current=!0),h(P.getElementByKey(te.getKey())),y(te instanceof Ii),te});if(Z){const re=G.read(()=>{const te=G._selection;return fe(te)?te.anchor.key:!1});P.getEditorState().read(()=>{const te=re?Re(re):null;te&&q9(te,Z)<0?g(!0):g(!1)}),_(!0)}Z||(i(null),h(null),o(""),a.current="",u.current=!0,y(!1),_(!1))})),[r,s]);const U=O.jsx(Ax,{focusRef:q,mathNode:r,onArrowLeft:R,onArrowRight:F,onCancel:T,onDelete:D,onSubmit:A,onValidationChange:P=>{u.current=P,P&&(a.current=s)},onValueChange:o,value:s});return E.useEffect(()=>{if(!w)return;const P=G=>{const Z=G.target;Z&&(Array.from(document.querySelectorAll("[data-math-editor-container]")).some(re=>re&&re.contains(Z))||T())};return document.addEventListener("mousedown",P),document.addEventListener("touchstart",P),()=>{document.removeEventListener("mousedown",P),document.removeEventListener("touchstart",P)}},[w,T]),e?O.jsx(O.Fragment,{children:e({children:O.jsx("div",{"data-math-editor-container":!0,children:U}),open:w})}):O.jsx(Xc,{children:O.jsx(Tx,{isBlockMode:m,mathDOM:l,onFocus:j,prev:d,children:U})})}),iq=({mathBlock:e})=>{const t=nr(),n=O.jsx(jr,{as:"span",className:ut("katex",Fi.mathPlaceholder),fontSize:e?"1.2em":"1em",type:"secondary",children:t("math.placeholder")});return e?O.jsx(Gh,{padding:18,width:"100%",children:n}):n};Lt();const sq=Ze("plugin","math"),oq=({editor:e,node:t,className:n})=>{const r=E.useRef(null),[i,s,o]=Ro(t.getKey()),[a,u]=E.useState(!1),l=t instanceof Ii;return E.useEffect(()=>{r.current&&t.code&&Ak.render(t.code,r.current,{displayMode:t instanceof Ii,throwOnError:!1})},[t.code]),E.useEffect(()=>{const h=e.getElementByKey(t.getKey());if(h){const d=setTimeout(()=>{a?(qt(h,"editing"),la(h,"selected")):i?(qt(h,"selected"),la(h,"editing")):(la(h,"selected"),la(h,"editing"))},10);return()=>clearTimeout(d)}},[i,a,e,t]),gr(h=>h.registerUpdateListener(()=>{h.getEditorState().read(()=>{const d=le();if(!Hn(d)){u(!1);return}const g=d.getNodes()[0];if(!e3(g)){u(!1);return}g.getKey()===t.getKey()?u(!0):u(!1)})}),[t]),O.jsx("span",{className:n,onClick:E.useCallback(h=>{sq.debug("📊 Math click event:",h.target===r.current),h.preventDefault(),h.stopPropagation(),i&&o(),s(!0),e.focus()},[o,e,i,s]),ref:r,children:t.code?t.code:O.jsx(iq,{mathBlock:l})})},aq=({className:e,renderComp:t,theme:n})=>{const[r]=vt();return E.useLayoutEffect(()=>{r.registerPlugin(Ki),r.registerPlugin(nq,{decorator:(i,s)=>O.jsx(oq,{className:e,editor:s,node:i}),theme:n||Fi})},[r,e,n,Fi]),O.jsx(rq,{renderComp:t})};aq.displayName="ReactMathPlugin";var Xs=class Nl extends Hr{static getType(){return"meta2d"}static clone(t){return new Nl(t.__diagram,t.__svg,t.__key,t.__autoOpenEditor)}static importJSON(t){return new Nl(t.diagram,t.svg)}constructor(t="",n="",r,i=!1){super(r),this.__diagram=t,this.__svg=n,this.__autoOpenEditor=i}clearAutoOpenEditor(){const t=this.getWritable();t.__autoOpenEditor=!1}createDOM(t){const n=document.createElement("div");return qt(n,t.theme.meta2d??"editor-meta2d"),n}decorate(t){var r;const n=(r=ji(t))==null?void 0:r.getDecorator(Nl.getType());return n?typeof n=="function"?n(this,t):{queryDOM:n.queryDOM,render:n.render(this,t)}:null}exportJSON(){return{...super.exportJSON(),diagram:this.__diagram,svg:this.__svg}}getTextContent(){return`---meta2d---
1741
1741
  ${this.__diagram}
1742
1742
  ---/meta2d---
1743
- `}isInline(){return!1}updateDiagram(t,n){const r=this.getWritable();r.__diagram=t,r.__svg=n}updateDOM(){return!1}};function Mx(e="",t="",n){return wn(new Xs(e,t,void 0,(n==null?void 0:n.autoOpenEditor)??!1))}function v4(e){return e instanceof Xs}const uq=ct("INSERT_META2D_COMMAND");function lq(e){return e.registerCommand(uq,t=>(e.update(()=>{var n;Sn([Mx(((n=t==null?void 0:t.diagram)==null?void 0:n.trim())||vl,(t==null?void 0:t.svg)!==void 0&&t.svg.trim()!==""?t.svg:ec,{autoOpenEditor:(t==null?void 0:t.autoOpenEditor)??!0})])}),!0),_t)}nn();Pt();const cq=/^---meta2d---$/i,hq=/---meta2d---(\\n?)([\S\s]*?)\n?---\/meta2d---/i;function fq(e){return(e.children||[]).map(t=>"value"in t&&typeof t.value=="string"?t.value:"").join("")}var vo;const dq=(vo=class extends Ft{constructor(t,n){super(),this.kernel=t,this.config=n,t.registerNodes([Xs]),n!=null&&n.theme&&t.registerThemes(n.theme),this.registerDecorator(t,Xs.getType(),(r,i)=>n!=null&&n.decorator?n.decorator(r,i):null)}onInit(t){this.register(lq(t)),this.registerMarkdown()}registerMarkdown(){const t=this.kernel.requireService(Dt);t&&(t.registerMarkdownShortCut({regExp:cq,replace:n=>{const r=Mx(vl,ec,{autoOpenEditor:!0});n.replace(r);const i=bn();i.add(r.getKey()),je(i)},trigger:"enter",type:"element"}),t.registerMarkdownWriter(Xs.getType(),(n,r)=>{const i=r;return n.appendLine("---meta2d---"),n.appendLine(i.__diagram||vl),n.appendLine("---/meta2d---"),!0}),t.registerMarkdownReader("paragraph",n=>{var s;const r=fq(n).match(hq);if(!r)return!1;const i=((s=r[2])==null?void 0:s.trim())||vl;return Se.createTypeNode(Xs.getType(),{diagram:i,svg:ON(i)})},1))}},vo.pluginName="Meta2dPlugin",vo);let C4=null;function pq(){return C4??(C4=Pe(()=>import("./meta2dEngine-BD2XbzaV-D1CzYV6l.js"),__vite__mapDeps([23,24,25,26,27,28,29,30,31,32,33]))),C4}async function mq(e){return(await pq()).generateSvgFromDiagram(e)}function gq(e){const t=e.trimStart();return t.startsWith("<svg")?t.replace(/^<svg\b/,'<svg style="max-width:100%;height:auto;display:block;margin:0 auto" '):e}function _4({color:e,label:t,onClick:n,title:r}){return O.jsx("button",{onClick:i=>{i.preventDefault(),i.stopPropagation(),n()},style:{alignItems:"center",background:"#fff",border:"1px solid #e5e5e5",borderRadius:6,color:e,cursor:"pointer",display:"inline-flex",height:28,justifyContent:"center",width:28},title:r,type:"button",children:t})}function bq({diagram:e,onDelete:t,onEdit:n,onSvgReady:r,svg:i}){const[s,o]=E.useState(!1),[a,u]=E.useState(null),[l,h]=E.useState(!1),[d,g]=E.useState(!1),m=E.useRef(null);return E.useEffect(()=>{u(null),g(!1)},[e]),E.useEffect(()=>{if(!e||d||s)return;if(i){m.current=e;return}let y=!0;const w=window.setTimeout(()=>{y&&(u("Preview timeout (still loading). Double-click to open editor."),g(!0),o(!1))},5e3);return o(!0),mq(e).then(_=>{if(y){if(window.clearTimeout(w),_){m.current=e,r(_);return}u("Preview generation failed. Double-click to open editor."),g(!0)}}).finally(()=>{y&&o(!1)}),()=>{y=!1,window.clearTimeout(w)}},[e,d,r,i]),O.jsxs("div",{onDoubleClick:y=>{y.stopPropagation(),n()},onMouseEnter:()=>h(!0),onMouseLeave:()=>h(!1),style:{background:"#fff",border:"1px solid #efefef",borderRadius:10,cursor:"pointer",minHeight:140,overflow:"hidden",padding:10,position:"relative"},children:[l&&!!i&&O.jsxs("div",{style:{display:"flex",gap:8,position:"absolute",right:10,top:10,zIndex:1},children:[O.jsx(_4,{color:"#1677ff",label:"✎",onClick:n,title:"Edit diagram"}),O.jsx(_4,{color:"#ff4d4f",label:"🗑",onClick:t,title:"Delete diagram"})]}),i?O.jsx("div",{style:{alignItems:"center",display:"flex",justifyContent:"center",maxHeight:400,overflow:"auto",width:"100%"},children:O.jsx("div",{dangerouslySetInnerHTML:{__html:gq(i)},style:{lineHeight:0,maxWidth:"100%",width:"100%"}})}):O.jsx("div",{style:{alignItems:"center",color:a?"#cf1322":"#999",display:"flex",justifyContent:"center",minHeight:120,textAlign:"center"},children:s?"Generating preview...":a||"Double-click to edit diagram"})]})}const yq=E.memo(bq),xq=E.lazy(async()=>({default:(await Pe(async()=>{const{DiagramEditor:e}=await import("./DiagramEditor-BTRe45TX-C1YVSFMK.js");return{DiagramEditor:e}},__vite__mapDeps([34,25,23,24,26,27,28,29,30,31,32,33]))).DiagramEditor}));function kq({className:e,editor:t,node:n}){const[r,i]=E.useState(!1),s=n.__diagram,o=n.__svg;E.useLayoutEffect(()=>{const l=n.getKey();let h=!1;t.getEditorState().read(()=>{const d=Re(l);d&&v4(d)&&d.__autoOpenEditor&&(h=!0)}),h&&i(!0),h&&t.update(()=>{const d=Re(l);d&&v4(d)&&d.__autoOpenEditor&&d.clearAutoOpenEditor()})},[t,n.getKey()]);const a=E.useCallback(()=>{t.update(()=>{const l=n.getLatest(),h=l.getNextSibling(),d=l.getPreviousSibling();if(l.remove(),h){h.selectStart();return}d&&d.selectEnd()})},[t,n]),u=E.useCallback((l,h)=>{t.update(()=>{n.updateDiagram(l,h)}),i(!1)},[t,n]);return O.jsxs("div",{className:e,style:{margin:0},children:[O.jsx(yq,{diagram:s,onDelete:a,onEdit:()=>i(!0),onSvgReady:E.useCallback(l=>{t.update(()=>{n.updateDiagram(n.__diagram,l)})},[t,n]),svg:o}),r&&O.jsx(E.Suspense,{fallback:null,children:O.jsx(xq,{diagram:s,onClose:()=>i(!1),onSave:u})})]})}function FH({className:e,theme:t}){const[n]=vt(),r=E.useCallback((i,s)=>O.jsx(kq,{className:e,editor:s,node:i}),[e]);return E.useLayoutEffect(()=>{n.registerPlugin(dq,{decorator:r,theme:t})},[r,n,t]),null}const Nx=E.createContext(null),wq=({children:e,defaultVisible:t=!0})=>{const[n,r]=E.useState(t),i=E.useCallback(()=>r(o=>!o),[]),s=E.useMemo(()=>({setVisible:r,toggle:i,visible:n}),[i,n]);return O.jsx(Nx.Provider,{value:s,children:e})};wq.displayName="OutlineProvider";function $1(){return E.useContext(Nx)}function OH(){const e=$1();if(!e)throw new Error("useOutlineVisibility must be used within <OutlineProvider>.");return e}function Sq(e){const t=$1(),n=(e==null?void 0:e.visible)!==void 0&&(e==null?void 0:e.onVisibleChange)!==void 0;return E.useMemo(()=>n&&(e!=null&&e.onVisibleChange)?{ready:!0,toggle:()=>e.onVisibleChange(!e.visible),visible:e.visible}:t?{ready:!0,toggle:t.toggle,visible:t.visible}:{ready:!1},[e==null?void 0:e.onVisibleChange,e==null?void 0:e.visible,t,n])}xr();const PH=({editor:e,visible:t})=>{const n=$1(),r=E.useMemo(()=>t!==void 0?t:(n==null?void 0:n.visible)??!0,[t,n==null?void 0:n.visible]),[i,s]=E.useState([]),o=E.useCallback(()=>{const u=[],l=_r(),h=d=>{for(const g of d){if(Eo(g)){const m=g.getTextContent().trim();m&&u.push({key:g.getKey(),level:parseInt(g.getTag()[1],10),text:m})}if(fn(g)){const m=g.getChildren();m.length>0&&h(m)}}};h(l.getChildren()),s(u)},[]);E.useEffect(()=>{const u=e.getLexicalEditor();let l=Oo;const h=d=>(l=d.registerUpdateListener(({editorState:g})=>{g.read(o)}),d.getEditorState().read(o),l);return u?h(u):(e.on("initialized",h),()=>{l(),e.off("initialized",h)})},[e,o]);const a=E.useCallback(u=>{const l=e.getLexicalEditor();l&&(l.update(()=>{const h=bn();h.add(u),je(h)}),requestAnimationFrame(()=>{const h=l.getElementByKey(u);h&&h.scrollIntoView({behavior:"smooth",block:"center"})}))},[e]);return!r||i.length===0?null:O.jsxs("div",{style:{borderLeft:"1px solid rgba(0, 0, 0, 0.08)",paddingLeft:12},children:[O.jsx("div",{style:{color:"rgba(0,0,0,0.45)",fontSize:12,fontWeight:600,marginBottom:8},children:"OUTLINE"}),i.map(u=>O.jsx("div",{onClick:()=>a(u.key),onMouseEnter:l=>{l.currentTarget.style.background="rgba(0,0,0,0.04)"},onMouseLeave:l=>{l.currentTarget.style.background="transparent"},style:{borderRadius:4,color:"rgba(0,0,0,0.75)",cursor:"pointer",fontSize:13,lineHeight:"28px",overflow:"hidden",paddingLeft:(u.level-1)*16+8,textOverflow:"ellipsis",whiteSpace:"nowrap"},children:u.text},u.key))]})},vq="Hide outline",Cq="Show outline",_q="outline";function RH(e){const{collapseTitle:t=vq,expandTitle:n=Cq,onVisibleChange:r,visible:i}=e??{},s=Sq(i!==void 0&&r!==void 0?{onVisibleChange:r,visible:i}:void 0);return E.useMemo(()=>{if(!s.ready)return null;const{toggle:o,visible:a}=s;return{active:a,icon:a?bb:l9,key:_q,label:a?t:n,onClick:o}},[t,n,s])}xr();function Eq(e,t){const{domRows:n}=e;for(const[r,i]of n.entries())if(i)for(const[s,o]of i.entries()){if(!o)continue;const a=$r(o.elem);a!==null&&t(o,a,{x:s,y:r})}}function Tq(e,t){const n=t.elem,r=e._config.theme;yc(li($r(n)),"Expected to find LexicalNode from Table Cell DOMNode"),qt(n,r.tableCellSelected)}function Aq(e,t){const n=t.elem;yc(li($r(n)),"Expected to find LexicalNode from Table Cell DOMNode");const r=e._config.theme;la(n,r.tableCellSelected)}function Mq(e,t,n){const r=new Set(n?n.getNodes():[]);Eq(t,(i,s)=>{const o=i.elem;r.has(s)?(i.highlighted=!0,Tq(e,i)):(i.highlighted=!1,Aq(e,i),o.getAttribute("style")||o.removeAttribute("style"))})}function E4(e){const t=e.getShape();return{columns:t.toX-t.fromX+1,rows:t.toY-t.fromY+1}}function Nq(){const e=le();if(fe(e)&&!e.isCollapsed()||ci(e)&&!e.anchor.is(e.focus)||!fe(e)&&!ci(e))return!1;const[t]=sb(e.anchor);return t.__colSpan>1||t.__rowSpan>1}function Dq(e){const t=e.getLastDescendant();Ot(t)?t.select():fn(t)?t.selectEnd():t!==null&&t.selectNext()}function T4(e){return e.getEditorState().read(()=>{const t=le();if(fe(t)||ci(t)){const[n]=sb(t.anchor);if(li(n))return n.getBackgroundColor()}return null})}const Dx=E.memo(({editor:e,tableCellNode:t,cellMerge:n,children:r})=>{const[i,s]=E.useState(t),[o,a]=E.useState({columns:1,rows:1}),[u,l]=E.useState(!1),[h,d]=E.useState(!1),[,g]=E.useState(()=>T4(e)||""),m=nr();E.useEffect(()=>e.registerMutationListener(Uh,q=>{q.get(i.getKey())==="updated"&&(e.getEditorState().read(()=>{s(i.getLatest())}),g(T4(e)||""))},{skipInitialization:!0}),[e,i]),E.useEffect(()=>{e.getEditorState().read(()=>{const q=le();if(ci(q)){const U=E4(q);a(E4(q)),l(U.columns>1||U.rows>1)}d(Nq())})},[e]);const y=E.useCallback(()=>{e.update(()=>{if(i.isAttached()){const q=ni(i),U=Ia(q,e.getElementByKey(q.getKey()));if(U===null)throw new Error("TableActionMenu: Expected to find tableElement in DOM");const P=Wh(U);P!==null&&P.$clearHighlight(),q.markDirty(),s(i.getLatest())}je(null)})},[e,i]),w=()=>{e.update(()=>{const q=le();if(!ci(q))return;const U=ok(q.getNodes().filter(li));U&&Dq(U)})},_=()=>{e.update(()=>{ak()})},S=E.useCallback(q=>{e.update(()=>{for(let U=0;U<o.rows;U++)nb(q)})},[e,o.rows]),A=E.useCallback(q=>{e.update(()=>{for(let U=0;U<o.columns;U++)rb(q)})},[e,o.columns]),T=E.useCallback(()=>{e.update(()=>{tk()})},[e]),D=E.useCallback(()=>{e.update(()=>{ni(i).remove(),y()})},[e,i,y]),R=E.useCallback(()=>{e.update(()=>{nk()})},[e]),F=E.useCallback(()=>{e.update(()=>{const q=ni(i),U=dd(i),[P]=Kh(q,null,null),G=new Set,Z=i.getHeaderStyles()^Ju.ROW;for(let re=0;re<P[U].length;re++){const te=P[U][re];te!=null&&te.cell&&(G.has(te.cell)||(G.add(te.cell),te.cell.setHeaderStyles(Z,Ju.ROW)))}y()})},[e,i,y]),j=E.useCallback(()=>{e.update(()=>{const q=ni(i),U=ib(i),[P]=Kh(q,null,null),G=new Set,Z=i.getHeaderStyles()^Ju.COLUMN;for(const re of P){const te=re[U];te!=null&&te.cell&&(G.has(te.cell)||(G.add(te.cell),te.cell.setHeaderStyles(Z,Ju.COLUMN)))}y()})},[e,i,y]);return O.jsx(md,{menu:{items:E.useMemo(()=>[{icon:g9,key:"table-insert-row-above",label:m("table.insertRowAbove",{count:o.rows}),onClick:()=>S(!1)},{icon:d9,key:"table-insert-row-below",label:m("table.insertRowBelow",{count:o.rows}),onClick:()=>S(!0)},{type:"divider"},{icon:Uk,key:"table-insert-column-before",label:m("table.insertColumnLeft",{count:o.columns}),onClick:()=>A(!1)},{icon:bb,key:"table-insert-column-after",label:m("table.insertColumnRight",{count:o.columns}),onClick:()=>A(!0)},{type:"divider"},{icon:k9,key:"table-delete-columns",label:m("table.deleteColumn"),onClick:()=>R()},{icon:S9,key:"table-delete-rows",label:m("table.deleteRow"),onClick:()=>T()},{type:"divider"},{icon:o9,key:"table-delete",label:m("table.delete"),onClick:()=>D()}],[n,u,h,o.rows,o.columns,i.__headerState,w,_,S,A,R,T,D,F,j])},children:r})});Dx.displayName="TableActionMenu";const A4=nt(({css:e})=>({actionIcon:e`
1743
+ `}isInline(){return!1}updateDiagram(t,n){const r=this.getWritable();r.__diagram=t,r.__svg=n}updateDOM(){return!1}};function Mx(e="",t="",n){return wn(new Xs(e,t,void 0,(n==null?void 0:n.autoOpenEditor)??!1))}function v4(e){return e instanceof Xs}const uq=ct("INSERT_META2D_COMMAND");function lq(e){return e.registerCommand(uq,t=>(e.update(()=>{var n;Sn([Mx(((n=t==null?void 0:t.diagram)==null?void 0:n.trim())||vl,(t==null?void 0:t.svg)!==void 0&&t.svg.trim()!==""?t.svg:ec,{autoOpenEditor:(t==null?void 0:t.autoOpenEditor)??!0})])}),!0),_t)}nn();Pt();const cq=/^---meta2d---$/i,hq=/---meta2d---(\\n?)([\S\s]*?)\n?---\/meta2d---/i;function fq(e){return(e.children||[]).map(t=>"value"in t&&typeof t.value=="string"?t.value:"").join("")}var vo;const dq=(vo=class extends Ft{constructor(t,n){super(),this.kernel=t,this.config=n,t.registerNodes([Xs]),n!=null&&n.theme&&t.registerThemes(n.theme),this.registerDecorator(t,Xs.getType(),(r,i)=>n!=null&&n.decorator?n.decorator(r,i):null)}onInit(t){this.register(lq(t)),this.registerMarkdown()}registerMarkdown(){const t=this.kernel.requireService(Dt);t&&(t.registerMarkdownShortCut({regExp:cq,replace:n=>{const r=Mx(vl,ec,{autoOpenEditor:!0});n.replace(r);const i=bn();i.add(r.getKey()),je(i)},trigger:"enter",type:"element"}),t.registerMarkdownWriter(Xs.getType(),(n,r)=>{const i=r;return n.appendLine("---meta2d---"),n.appendLine(i.__diagram||vl),n.appendLine("---/meta2d---"),!0}),t.registerMarkdownReader("paragraph",n=>{var s;const r=fq(n).match(hq);if(!r)return!1;const i=((s=r[2])==null?void 0:s.trim())||vl;return Se.createTypeNode(Xs.getType(),{diagram:i,svg:ON(i)})},1))}},vo.pluginName="Meta2dPlugin",vo);let C4=null;function pq(){return C4??(C4=Pe(()=>import("./meta2dEngine-BD2XbzaV-BFAQue19.js"),__vite__mapDeps([23,24,25,26,27,28,29,30,31,32,33]))),C4}async function mq(e){return(await pq()).generateSvgFromDiagram(e)}function gq(e){const t=e.trimStart();return t.startsWith("<svg")?t.replace(/^<svg\b/,'<svg style="max-width:100%;height:auto;display:block;margin:0 auto" '):e}function _4({color:e,label:t,onClick:n,title:r}){return O.jsx("button",{onClick:i=>{i.preventDefault(),i.stopPropagation(),n()},style:{alignItems:"center",background:"#fff",border:"1px solid #e5e5e5",borderRadius:6,color:e,cursor:"pointer",display:"inline-flex",height:28,justifyContent:"center",width:28},title:r,type:"button",children:t})}function bq({diagram:e,onDelete:t,onEdit:n,onSvgReady:r,svg:i}){const[s,o]=E.useState(!1),[a,u]=E.useState(null),[l,h]=E.useState(!1),[d,g]=E.useState(!1),m=E.useRef(null);return E.useEffect(()=>{u(null),g(!1)},[e]),E.useEffect(()=>{if(!e||d||s)return;if(i){m.current=e;return}let y=!0;const w=window.setTimeout(()=>{y&&(u("Preview timeout (still loading). Double-click to open editor."),g(!0),o(!1))},5e3);return o(!0),mq(e).then(_=>{if(y){if(window.clearTimeout(w),_){m.current=e,r(_);return}u("Preview generation failed. Double-click to open editor."),g(!0)}}).finally(()=>{y&&o(!1)}),()=>{y=!1,window.clearTimeout(w)}},[e,d,r,i]),O.jsxs("div",{onDoubleClick:y=>{y.stopPropagation(),n()},onMouseEnter:()=>h(!0),onMouseLeave:()=>h(!1),style:{background:"#fff",border:"1px solid #efefef",borderRadius:10,cursor:"pointer",minHeight:140,overflow:"hidden",padding:10,position:"relative"},children:[l&&!!i&&O.jsxs("div",{style:{display:"flex",gap:8,position:"absolute",right:10,top:10,zIndex:1},children:[O.jsx(_4,{color:"#1677ff",label:"✎",onClick:n,title:"Edit diagram"}),O.jsx(_4,{color:"#ff4d4f",label:"🗑",onClick:t,title:"Delete diagram"})]}),i?O.jsx("div",{style:{alignItems:"center",display:"flex",justifyContent:"center",maxHeight:400,overflow:"auto",width:"100%"},children:O.jsx("div",{dangerouslySetInnerHTML:{__html:gq(i)},style:{lineHeight:0,maxWidth:"100%",width:"100%"}})}):O.jsx("div",{style:{alignItems:"center",color:a?"#cf1322":"#999",display:"flex",justifyContent:"center",minHeight:120,textAlign:"center"},children:s?"Generating preview...":a||"Double-click to edit diagram"})]})}const yq=E.memo(bq),xq=E.lazy(async()=>({default:(await Pe(async()=>{const{DiagramEditor:e}=await import("./DiagramEditor-BTRe45TX-D1vc5s9F.js");return{DiagramEditor:e}},__vite__mapDeps([34,25,23,24,26,27,28,29,30,31,32,33]))).DiagramEditor}));function kq({className:e,editor:t,node:n}){const[r,i]=E.useState(!1),s=n.__diagram,o=n.__svg;E.useLayoutEffect(()=>{const l=n.getKey();let h=!1;t.getEditorState().read(()=>{const d=Re(l);d&&v4(d)&&d.__autoOpenEditor&&(h=!0)}),h&&i(!0),h&&t.update(()=>{const d=Re(l);d&&v4(d)&&d.__autoOpenEditor&&d.clearAutoOpenEditor()})},[t,n.getKey()]);const a=E.useCallback(()=>{t.update(()=>{const l=n.getLatest(),h=l.getNextSibling(),d=l.getPreviousSibling();if(l.remove(),h){h.selectStart();return}d&&d.selectEnd()})},[t,n]),u=E.useCallback((l,h)=>{t.update(()=>{n.updateDiagram(l,h)}),i(!1)},[t,n]);return O.jsxs("div",{className:e,style:{margin:0},children:[O.jsx(yq,{diagram:s,onDelete:a,onEdit:()=>i(!0),onSvgReady:E.useCallback(l=>{t.update(()=>{n.updateDiagram(n.__diagram,l)})},[t,n]),svg:o}),r&&O.jsx(E.Suspense,{fallback:null,children:O.jsx(xq,{diagram:s,onClose:()=>i(!1),onSave:u})})]})}function FH({className:e,theme:t}){const[n]=vt(),r=E.useCallback((i,s)=>O.jsx(kq,{className:e,editor:s,node:i}),[e]);return E.useLayoutEffect(()=>{n.registerPlugin(dq,{decorator:r,theme:t})},[r,n,t]),null}const Nx=E.createContext(null),wq=({children:e,defaultVisible:t=!0})=>{const[n,r]=E.useState(t),i=E.useCallback(()=>r(o=>!o),[]),s=E.useMemo(()=>({setVisible:r,toggle:i,visible:n}),[i,n]);return O.jsx(Nx.Provider,{value:s,children:e})};wq.displayName="OutlineProvider";function $1(){return E.useContext(Nx)}function OH(){const e=$1();if(!e)throw new Error("useOutlineVisibility must be used within <OutlineProvider>.");return e}function Sq(e){const t=$1(),n=(e==null?void 0:e.visible)!==void 0&&(e==null?void 0:e.onVisibleChange)!==void 0;return E.useMemo(()=>n&&(e!=null&&e.onVisibleChange)?{ready:!0,toggle:()=>e.onVisibleChange(!e.visible),visible:e.visible}:t?{ready:!0,toggle:t.toggle,visible:t.visible}:{ready:!1},[e==null?void 0:e.onVisibleChange,e==null?void 0:e.visible,t,n])}xr();const PH=({editor:e,visible:t})=>{const n=$1(),r=E.useMemo(()=>t!==void 0?t:(n==null?void 0:n.visible)??!0,[t,n==null?void 0:n.visible]),[i,s]=E.useState([]),o=E.useCallback(()=>{const u=[],l=_r(),h=d=>{for(const g of d){if(Eo(g)){const m=g.getTextContent().trim();m&&u.push({key:g.getKey(),level:parseInt(g.getTag()[1],10),text:m})}if(fn(g)){const m=g.getChildren();m.length>0&&h(m)}}};h(l.getChildren()),s(u)},[]);E.useEffect(()=>{const u=e.getLexicalEditor();let l=Oo;const h=d=>(l=d.registerUpdateListener(({editorState:g})=>{g.read(o)}),d.getEditorState().read(o),l);return u?h(u):(e.on("initialized",h),()=>{l(),e.off("initialized",h)})},[e,o]);const a=E.useCallback(u=>{const l=e.getLexicalEditor();l&&(l.update(()=>{const h=bn();h.add(u),je(h)}),requestAnimationFrame(()=>{const h=l.getElementByKey(u);h&&h.scrollIntoView({behavior:"smooth",block:"center"})}))},[e]);return!r||i.length===0?null:O.jsxs("div",{style:{borderLeft:"1px solid rgba(0, 0, 0, 0.08)",paddingLeft:12},children:[O.jsx("div",{style:{color:"rgba(0,0,0,0.45)",fontSize:12,fontWeight:600,marginBottom:8},children:"OUTLINE"}),i.map(u=>O.jsx("div",{onClick:()=>a(u.key),onMouseEnter:l=>{l.currentTarget.style.background="rgba(0,0,0,0.04)"},onMouseLeave:l=>{l.currentTarget.style.background="transparent"},style:{borderRadius:4,color:"rgba(0,0,0,0.75)",cursor:"pointer",fontSize:13,lineHeight:"28px",overflow:"hidden",paddingLeft:(u.level-1)*16+8,textOverflow:"ellipsis",whiteSpace:"nowrap"},children:u.text},u.key))]})},vq="Hide outline",Cq="Show outline",_q="outline";function RH(e){const{collapseTitle:t=vq,expandTitle:n=Cq,onVisibleChange:r,visible:i}=e??{},s=Sq(i!==void 0&&r!==void 0?{onVisibleChange:r,visible:i}:void 0);return E.useMemo(()=>{if(!s.ready)return null;const{toggle:o,visible:a}=s;return{active:a,icon:a?bb:l9,key:_q,label:a?t:n,onClick:o}},[t,n,s])}xr();function Eq(e,t){const{domRows:n}=e;for(const[r,i]of n.entries())if(i)for(const[s,o]of i.entries()){if(!o)continue;const a=$r(o.elem);a!==null&&t(o,a,{x:s,y:r})}}function Tq(e,t){const n=t.elem,r=e._config.theme;yc(li($r(n)),"Expected to find LexicalNode from Table Cell DOMNode"),qt(n,r.tableCellSelected)}function Aq(e,t){const n=t.elem;yc(li($r(n)),"Expected to find LexicalNode from Table Cell DOMNode");const r=e._config.theme;la(n,r.tableCellSelected)}function Mq(e,t,n){const r=new Set(n?n.getNodes():[]);Eq(t,(i,s)=>{const o=i.elem;r.has(s)?(i.highlighted=!0,Tq(e,i)):(i.highlighted=!1,Aq(e,i),o.getAttribute("style")||o.removeAttribute("style"))})}function E4(e){const t=e.getShape();return{columns:t.toX-t.fromX+1,rows:t.toY-t.fromY+1}}function Nq(){const e=le();if(fe(e)&&!e.isCollapsed()||ci(e)&&!e.anchor.is(e.focus)||!fe(e)&&!ci(e))return!1;const[t]=sb(e.anchor);return t.__colSpan>1||t.__rowSpan>1}function Dq(e){const t=e.getLastDescendant();Ot(t)?t.select():fn(t)?t.selectEnd():t!==null&&t.selectNext()}function T4(e){return e.getEditorState().read(()=>{const t=le();if(fe(t)||ci(t)){const[n]=sb(t.anchor);if(li(n))return n.getBackgroundColor()}return null})}const Dx=E.memo(({editor:e,tableCellNode:t,cellMerge:n,children:r})=>{const[i,s]=E.useState(t),[o,a]=E.useState({columns:1,rows:1}),[u,l]=E.useState(!1),[h,d]=E.useState(!1),[,g]=E.useState(()=>T4(e)||""),m=nr();E.useEffect(()=>e.registerMutationListener(Uh,q=>{q.get(i.getKey())==="updated"&&(e.getEditorState().read(()=>{s(i.getLatest())}),g(T4(e)||""))},{skipInitialization:!0}),[e,i]),E.useEffect(()=>{e.getEditorState().read(()=>{const q=le();if(ci(q)){const U=E4(q);a(E4(q)),l(U.columns>1||U.rows>1)}d(Nq())})},[e]);const y=E.useCallback(()=>{e.update(()=>{if(i.isAttached()){const q=ni(i),U=Ia(q,e.getElementByKey(q.getKey()));if(U===null)throw new Error("TableActionMenu: Expected to find tableElement in DOM");const P=Wh(U);P!==null&&P.$clearHighlight(),q.markDirty(),s(i.getLatest())}je(null)})},[e,i]),w=()=>{e.update(()=>{const q=le();if(!ci(q))return;const U=ok(q.getNodes().filter(li));U&&Dq(U)})},_=()=>{e.update(()=>{ak()})},S=E.useCallback(q=>{e.update(()=>{for(let U=0;U<o.rows;U++)nb(q)})},[e,o.rows]),A=E.useCallback(q=>{e.update(()=>{for(let U=0;U<o.columns;U++)rb(q)})},[e,o.columns]),T=E.useCallback(()=>{e.update(()=>{tk()})},[e]),D=E.useCallback(()=>{e.update(()=>{ni(i).remove(),y()})},[e,i,y]),R=E.useCallback(()=>{e.update(()=>{nk()})},[e]),F=E.useCallback(()=>{e.update(()=>{const q=ni(i),U=dd(i),[P]=Kh(q,null,null),G=new Set,Z=i.getHeaderStyles()^Ju.ROW;for(let re=0;re<P[U].length;re++){const te=P[U][re];te!=null&&te.cell&&(G.has(te.cell)||(G.add(te.cell),te.cell.setHeaderStyles(Z,Ju.ROW)))}y()})},[e,i,y]),j=E.useCallback(()=>{e.update(()=>{const q=ni(i),U=ib(i),[P]=Kh(q,null,null),G=new Set,Z=i.getHeaderStyles()^Ju.COLUMN;for(const re of P){const te=re[U];te!=null&&te.cell&&(G.has(te.cell)||(G.add(te.cell),te.cell.setHeaderStyles(Z,Ju.COLUMN)))}y()})},[e,i,y]);return O.jsx(md,{menu:{items:E.useMemo(()=>[{icon:g9,key:"table-insert-row-above",label:m("table.insertRowAbove",{count:o.rows}),onClick:()=>S(!1)},{icon:d9,key:"table-insert-row-below",label:m("table.insertRowBelow",{count:o.rows}),onClick:()=>S(!0)},{type:"divider"},{icon:Uk,key:"table-insert-column-before",label:m("table.insertColumnLeft",{count:o.columns}),onClick:()=>A(!1)},{icon:bb,key:"table-insert-column-after",label:m("table.insertColumnRight",{count:o.columns}),onClick:()=>A(!0)},{type:"divider"},{icon:k9,key:"table-delete-columns",label:m("table.deleteColumn"),onClick:()=>R()},{icon:S9,key:"table-delete-rows",label:m("table.deleteRow"),onClick:()=>T()},{type:"divider"},{icon:o9,key:"table-delete",label:m("table.delete"),onClick:()=>D()}],[n,u,h,o.rows,o.columns,i.__headerState,w,_,S,A,R,T,D,F,j])},children:r})});Dx.displayName="TableActionMenu";const A4=nt(({css:e})=>({actionIcon:e`
1744
1744
  transform: translateX(2px);
1745
1745
  `,root:e`
1746
1746
  will-change: transform;
@@ -1,5 +1,5 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/diagram-BJFhx-27.js","assets/react-vendor-BNpqFP9B.js"])))=>i.map(i=>d[i]);
2
- var oS=Object.defineProperty;var iS=(e,t,r)=>t in e?oS(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r;var he=(e,t,r)=>iS(e,typeof t!="symbol"?t+"":t,r);import{r as d,j as N,R as q,a as aS,b as _o,c as sS,g as Ml,d as Xi,m as Il,T as ou,e as C5,f as S5,h as k5,i as $5,k as D5,l as bb,n as lS,M as cS,o as uS,p as dS,q as vb,s as fS,t as pS,u as mS,v as hS,w as _5,S as gS,x as bS,y as vS,z as yS,A as nd,B as xS,_ as Th,C as wS,P as CS,D as iu,E as SS,F as kS,G as $S,H as DS,I as _S,J as ES,K as MS,L as yb,N as jh,O as IS,Q as FS,U as TS,V as jS,W as AS,X as RS,Y as zS,Z as BS,$ as PS,a0 as xb,a1 as wb,a2 as Cb,a3 as ma,a4 as NS,a5 as OS,a6 as LS,a7 as HS}from"./react-vendor-BNpqFP9B.js";import{c as qS,r as WS,g as VS,s as Ah,G as GS,m as il,u as US,C as qn,M as XS,a as YS,_ as Xt,b as E5,d as Rh,T as KS,e as ZS}from"./motion-D-I76zAi.js";const zh=d.createContext(null);d.memo(({children:e,motion:t})=>N.jsx(zh,{value:t,children:e}));const Dee=()=>{const e=d.use(zh);if(!e)throw new Error("Please wrap your app with <ConfigProvider> (or <MotionProvider>) and pass the motion component");return e};function QS(e){var t=[];if(e.length===0)return"";if(typeof e[0]!="string")throw new TypeError("Url must be a string. Received "+e[0]);if(e[0].match(/^[^/:]+:\/*$/)&&e.length>1){var r=e.shift();e[0]=r+e[0]}e[0].match(/^file:\/\/\//)?e[0]=e[0].replace(/^([^/:]+):\/*/,"$1:///"):e[0]=e[0].replace(/^([^/:]+):\/*/,"$1://");for(var n=0;n<e.length;n++){var o=e[n];if(typeof o!="string")throw new TypeError("Url must be a string. Received "+o);o!==""&&(n>0&&(o=o.replace(/^[\/]+/,"")),n<e.length-1?o=o.replace(/[\/]+$/,""):o=o.replace(/[\/]+$/,"/"),t.push(o))}var i=t.join("/");i=i.replace(/\/(\?|&|#[^!])/g,"$1");var a=i.split("?");return i=a.shift()+(a.length>0?"?":"")+a.join("&"),i}function Sb(){var e;return typeof arguments[0]=="object"?e=arguments[0]:e=[].slice.call(arguments),QS(e)}const JS="https://unpkg.com",ek="https://registry.npmmirror.com",M5=({pkg:e,version:t="latest",path:r,proxy:n})=>{switch(n){case"unpkg":return Sb(JS,`${e}@${t}`,r);default:return Sb(ek,e,t,"files",r)}},Bh=d.createContext(null),I5=d.createContext({locale:"en",t:e=>e}),sc=e=>typeof(e==null?void 0:e.then)=="function",_ee=d.memo(({children:e,config:t,locale:r,resources:n,motion:o})=>{const i=r??"en",[a,s]=d.useState(()=>n&&!sc(n)?n:void 0),[l,c]=d.useState(i),u=d.useRef(0);d.useEffect(()=>{const m=++u.current;if(!n){s(void 0),c(i);return}if(sc(n)){const h=i;n.then(g=>{u.current===m&&(s(g),c(h))}).catch(()=>{u.current});return}s(n),c(i)},[i,n]);const f=sc(n)?a:n,p=sc(n)?l:i;return N.jsx(I5,{value:d.useMemo(()=>{const m=Array.isArray(f)?f:f?Object.values(f):[],h=Object.assign({},...m);return{locale:p,t:v=>h[v]||v}},[p,f]),children:N.jsx(Bh,{value:t??null,children:N.jsx(zh,{value:o,children:e})})})}),kb=({pkg:e,version:t,path:r})=>M5({path:r,pkg:e,proxy:"aliyun",version:t}),Ph=()=>{const e=d.use(Bh);return e?(e==null?void 0:e.proxy)!=="custom"?({pkg:t,version:r,path:n})=>M5({path:n,pkg:t,proxy:e.proxy,version:r}):(e==null?void 0:e.customCdnFn)||kb:kb},tk=()=>d.use(I5);function Fo(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function cr(e){"@babel/helpers - typeof";return cr=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},cr(e)}function rk(e,t){if(cr(e)!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(cr(n)!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function F5(e){var t=rk(e,"string");return cr(t)=="symbol"?t:t+""}function nk(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,F5(n.key),n)}}function To(e,t,r){return t&&nk(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e}function Kt(e,t,r){return(t=F5(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var ok=function(){function e(){Fo(this,e),Kt(this,"_cacheList",[qS])}return To(e,[{key:"add",value:function(r){var n=this.getCache(r.key);return n||(this._cacheList.push(r),r)}},{key:"delete",value:function(r){this._cacheList=this._cacheList.filter(function(n){return n.key!==r.key})}},{key:"hasCache",value:function(r){return this._cacheList.some(function(n){return n.key===r.key})}},{key:"getCache",value:function(r){return this._cacheList.find(function(n){return n.key===r})}},{key:"getCacheList",value:function(){return this._cacheList}}]),e}(),$b=typeof document<"u",T5=function(t,r){return"".concat(t,"-").concat(r)},ik=function(t,r,n,o){var i=o.hashPriority;WS(t,r,n);var a=".".concat(T5(t.key,r.name)),s=i==="low"?":where(".concat(a,")"):a;if(t.inserted[r.name]===void 0){var l="",c=r;do{var u=t.insert(r===c?s:"",c,t.sheet,!0);!$b&&u!==void 0&&(l+=u),c=c.next}while(c!==void 0);if(!$b&&l.length!==0)return l}},Nh=function(t){return cr(t)==="object"&&"styles"in t&&"name"in t&&"toString"in t},ak=function e(t){for(var r="",n=0;n<t.length;n++){var o=t[n];if(o!==null){var i=void 0;switch(cr(o)){case"boolean":break;case"object":{if(Array.isArray(o))i=e(o);else{i="";for(var a in o)o[a]&&a&&(i&&(i+=" "),i+=a)}break}default:i=o}i&&(r&&(r+=" "),r+=i)}}return r},sk=function(t,r,n){var o=[],i=VS(t,o,n);return o.length<2?n:i+r(o)},lk=function(t,r){return function(){for(var n=arguments.length,o=new Array(n),i=0;i<n;i++)o[i]=arguments[i];var a=Ah(o,t.registered,void 0);return ik(t,a,!1,r),T5(t.key,a.name)}},ck=function(t,r){return function(){for(var n=arguments.length,o=new Array(n),i=0;i<n;i++)o[i]=arguments[i];var a=o.map(function(s){return Nh(s)?r(s):s});return sk(t.registered,r,ak(a))}},Oh=function(t,r){var n=lk(t,{hashPriority:r.hashPriority||"high",label:r.label}),o=ck(t,n);return{css:n,cx:o}},Fl=function(){for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return Ah(r)},j5="acss";function Db(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,n)}return r}function st(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Db(Object(r),!0).forEach(function(n){Kt(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Db(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}var uk=function(t){return d.createContext(t)},dk=function(t){return function(){for(var r=arguments.length,n=new Array(r),o=0;o<r;o++)n[o]=arguments[o];return d.memo(function(i){var a=t();return N.jsx(GS,{styles:Ah(n,void 0,st(st({},i),{},{theme:a}))})})}};const dt=e=>{const t=d.useRef(e);return t.current=e,d.useCallback((...n)=>{var o;return(o=t.current)==null?void 0:o.call(t,...n)},[])};function uo(){return!!(typeof window<"u"&&window.document&&window.document.createElement)}const _b=uo()?d.useLayoutEffect:d.useEffect,Wt=(e,t)=>{const r=d.useRef(!0);_b(()=>e(r.current),t),_b(()=>(r.current=!1,()=>{r.current=!0}),[])},b0=(e,t)=>{Wt(r=>{if(!r)return e()},t)},fk=e=>{const t=d.useRef(!1),[r,n]=d.useState(e);d.useEffect(()=>(t.current=!1,()=>{t.current=!0}),[]);function o(i,a){a&&t.current||n(i)}return[r,o]};function er(e,t){const[r,n]=d.useState(e),o=t!==void 0?t:r;return Wt(i=>{i||n(t)},[t]),[o,n]}var A5={exports:{}},Zt={};/**
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/diagram-gfUK8OHx.js","assets/react-vendor-BNpqFP9B.js"])))=>i.map(i=>d[i]);
2
+ var oS=Object.defineProperty;var iS=(e,t,r)=>t in e?oS(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r;var he=(e,t,r)=>iS(e,typeof t!="symbol"?t+"":t,r);import{r as d,j as N,R as q,a as aS,b as _o,c as sS,g as Ml,d as Xi,m as Il,T as ou,e as C5,f as S5,h as k5,i as $5,k as D5,l as bb,n as lS,M as cS,o as uS,p as dS,q as vb,s as fS,t as pS,u as mS,v as hS,w as _5,S as gS,x as bS,y as vS,z as yS,A as nd,B as xS,_ as Th,C as wS,P as CS,D as iu,E as SS,F as kS,G as $S,H as DS,I as _S,J as ES,K as MS,L as yb,N as jh,O as IS,Q as FS,U as TS,V as jS,W as AS,X as RS,Y as zS,Z as BS,$ as PS,a0 as xb,a1 as wb,a2 as Cb,a3 as ma,a4 as NS,a5 as OS,a6 as LS,a7 as HS}from"./react-vendor-BNpqFP9B.js";import{c as qS,r as WS,g as VS,s as Ah,G as GS,m as il,u as US,C as qn,M as XS,a as YS,_ as Xt,b as E5,d as Rh,T as KS,e as ZS}from"./motion-C4pN8CfU.js";const zh=d.createContext(null);d.memo(({children:e,motion:t})=>N.jsx(zh,{value:t,children:e}));const Dee=()=>{const e=d.use(zh);if(!e)throw new Error("Please wrap your app with <ConfigProvider> (or <MotionProvider>) and pass the motion component");return e};function QS(e){var t=[];if(e.length===0)return"";if(typeof e[0]!="string")throw new TypeError("Url must be a string. Received "+e[0]);if(e[0].match(/^[^/:]+:\/*$/)&&e.length>1){var r=e.shift();e[0]=r+e[0]}e[0].match(/^file:\/\/\//)?e[0]=e[0].replace(/^([^/:]+):\/*/,"$1:///"):e[0]=e[0].replace(/^([^/:]+):\/*/,"$1://");for(var n=0;n<e.length;n++){var o=e[n];if(typeof o!="string")throw new TypeError("Url must be a string. Received "+o);o!==""&&(n>0&&(o=o.replace(/^[\/]+/,"")),n<e.length-1?o=o.replace(/[\/]+$/,""):o=o.replace(/[\/]+$/,"/"),t.push(o))}var i=t.join("/");i=i.replace(/\/(\?|&|#[^!])/g,"$1");var a=i.split("?");return i=a.shift()+(a.length>0?"?":"")+a.join("&"),i}function Sb(){var e;return typeof arguments[0]=="object"?e=arguments[0]:e=[].slice.call(arguments),QS(e)}const JS="https://unpkg.com",ek="https://registry.npmmirror.com",M5=({pkg:e,version:t="latest",path:r,proxy:n})=>{switch(n){case"unpkg":return Sb(JS,`${e}@${t}`,r);default:return Sb(ek,e,t,"files",r)}},Bh=d.createContext(null),I5=d.createContext({locale:"en",t:e=>e}),sc=e=>typeof(e==null?void 0:e.then)=="function",_ee=d.memo(({children:e,config:t,locale:r,resources:n,motion:o})=>{const i=r??"en",[a,s]=d.useState(()=>n&&!sc(n)?n:void 0),[l,c]=d.useState(i),u=d.useRef(0);d.useEffect(()=>{const m=++u.current;if(!n){s(void 0),c(i);return}if(sc(n)){const h=i;n.then(g=>{u.current===m&&(s(g),c(h))}).catch(()=>{u.current});return}s(n),c(i)},[i,n]);const f=sc(n)?a:n,p=sc(n)?l:i;return N.jsx(I5,{value:d.useMemo(()=>{const m=Array.isArray(f)?f:f?Object.values(f):[],h=Object.assign({},...m);return{locale:p,t:v=>h[v]||v}},[p,f]),children:N.jsx(Bh,{value:t??null,children:N.jsx(zh,{value:o,children:e})})})}),kb=({pkg:e,version:t,path:r})=>M5({path:r,pkg:e,proxy:"aliyun",version:t}),Ph=()=>{const e=d.use(Bh);return e?(e==null?void 0:e.proxy)!=="custom"?({pkg:t,version:r,path:n})=>M5({path:n,pkg:t,proxy:e.proxy,version:r}):(e==null?void 0:e.customCdnFn)||kb:kb},tk=()=>d.use(I5);function Fo(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function cr(e){"@babel/helpers - typeof";return cr=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},cr(e)}function rk(e,t){if(cr(e)!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(cr(n)!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function F5(e){var t=rk(e,"string");return cr(t)=="symbol"?t:t+""}function nk(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,F5(n.key),n)}}function To(e,t,r){return t&&nk(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e}function Kt(e,t,r){return(t=F5(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var ok=function(){function e(){Fo(this,e),Kt(this,"_cacheList",[qS])}return To(e,[{key:"add",value:function(r){var n=this.getCache(r.key);return n||(this._cacheList.push(r),r)}},{key:"delete",value:function(r){this._cacheList=this._cacheList.filter(function(n){return n.key!==r.key})}},{key:"hasCache",value:function(r){return this._cacheList.some(function(n){return n.key===r.key})}},{key:"getCache",value:function(r){return this._cacheList.find(function(n){return n.key===r})}},{key:"getCacheList",value:function(){return this._cacheList}}]),e}(),$b=typeof document<"u",T5=function(t,r){return"".concat(t,"-").concat(r)},ik=function(t,r,n,o){var i=o.hashPriority;WS(t,r,n);var a=".".concat(T5(t.key,r.name)),s=i==="low"?":where(".concat(a,")"):a;if(t.inserted[r.name]===void 0){var l="",c=r;do{var u=t.insert(r===c?s:"",c,t.sheet,!0);!$b&&u!==void 0&&(l+=u),c=c.next}while(c!==void 0);if(!$b&&l.length!==0)return l}},Nh=function(t){return cr(t)==="object"&&"styles"in t&&"name"in t&&"toString"in t},ak=function e(t){for(var r="",n=0;n<t.length;n++){var o=t[n];if(o!==null){var i=void 0;switch(cr(o)){case"boolean":break;case"object":{if(Array.isArray(o))i=e(o);else{i="";for(var a in o)o[a]&&a&&(i&&(i+=" "),i+=a)}break}default:i=o}i&&(r&&(r+=" "),r+=i)}}return r},sk=function(t,r,n){var o=[],i=VS(t,o,n);return o.length<2?n:i+r(o)},lk=function(t,r){return function(){for(var n=arguments.length,o=new Array(n),i=0;i<n;i++)o[i]=arguments[i];var a=Ah(o,t.registered,void 0);return ik(t,a,!1,r),T5(t.key,a.name)}},ck=function(t,r){return function(){for(var n=arguments.length,o=new Array(n),i=0;i<n;i++)o[i]=arguments[i];var a=o.map(function(s){return Nh(s)?r(s):s});return sk(t.registered,r,ak(a))}},Oh=function(t,r){var n=lk(t,{hashPriority:r.hashPriority||"high",label:r.label}),o=ck(t,n);return{css:n,cx:o}},Fl=function(){for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return Ah(r)},j5="acss";function Db(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,n)}return r}function st(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Db(Object(r),!0).forEach(function(n){Kt(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Db(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}var uk=function(t){return d.createContext(t)},dk=function(t){return function(){for(var r=arguments.length,n=new Array(r),o=0;o<r;o++)n[o]=arguments[o];return d.memo(function(i){var a=t();return N.jsx(GS,{styles:Ah(n,void 0,st(st({},i),{},{theme:a}))})})}};const dt=e=>{const t=d.useRef(e);return t.current=e,d.useCallback((...n)=>{var o;return(o=t.current)==null?void 0:o.call(t,...n)},[])};function uo(){return!!(typeof window<"u"&&window.document&&window.document.createElement)}const _b=uo()?d.useLayoutEffect:d.useEffect,Wt=(e,t)=>{const r=d.useRef(!0);_b(()=>e(r.current),t),_b(()=>(r.current=!1,()=>{r.current=!0}),[])},b0=(e,t)=>{Wt(r=>{if(!r)return e()},t)},fk=e=>{const t=d.useRef(!1),[r,n]=d.useState(e);d.useEffect(()=>(t.current=!1,()=>{t.current=!0}),[]);function o(i,a){a&&t.current||n(i)}return[r,o]};function er(e,t){const[r,n]=d.useState(e),o=t!==void 0?t:r;return Wt(i=>{i||n(t)},[t]),[o,n]}var A5={exports:{}},Zt={};/**
3
3
  * @license React
4
4
  * react-is.production.min.js
5
5
  *
@@ -2710,7 +2710,7 @@ l0,-`+(r+144)+`c-2,-159.3,-10,-310.7,-24,-454c-53.3,-528,-210,-949.7,
2710
2710
  overflow: hidden;
2711
2711
  max-width: 100%;
2712
2712
  height: auto;
2713
- `})),WG=fr(wn.root,{defaultVariants:{variant:"filled"},variants:{variant:{filled:wn.filled,outlined:wn.outlined,borderless:wn.borderless}}}),VG="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjU2IiBoZWlnaHQ9IjI1NiIgdmlld0JveD0iMCAwIDI1NiAyNTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxyZWN0IHdpZHRoPSIyNTYiIGhlaWdodD0iMjU2IiBmaWxsPSIjM0IzQjNCIi8+CjxwYXRoIGQ9Ik0xNTYuODg4IDkxLjAwMkgxMDAuMTEyQzk1LjYzMjkgOTEuMDAyIDkyLjAwMTUgOTQuNjMzNCA5Mi4wMDE1IDk5LjExMjdWMTU1Ljg4OEM5Mi4wMDE1IDE2MC4zNjcgOTUuNjMyOSAxNjMuOTk5IDEwMC4xMTIgMTYzLjk5OUgxNTYuODg4QzE2MS4zNjcgMTYzLjk5OSAxNjQuOTk4IDE2MC4zNjcgMTY0Ljk5OCAxNTUuODg4Vjk5LjExMjdDMTY0Ljk5OCA5NC42MzM0IDE2MS4zNjcgOTEuMDAyIDE1Ni44ODggOTEuMDAyWiIgc3Ryb2tlPSIjNjI2MjYyIiBzdHJva2Utd2lkdGg9IjguMTEwNzciIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPgo8cGF0aCBkPSJNMTY0Ljk5OCAxMzkuNjY4TDE1Mi40ODQgMTI3LjE1M0MxNTAuOTYyIDEyNS42MzIgMTQ4LjkgMTI0Ljc3OCAxNDYuNzQ5IDEyNC43NzhDMTQ0LjU5OSAxMjQuNzc4IDE0Mi41MzYgMTI1LjYzMiAxNDEuMDE1IDEyNy4xNTNMMTA0LjE2OCAxNjRNMTE2LjMzNCAxMjMuNDQ1QzEyMC44MTMgMTIzLjQ0NSAxMjQuNDQ1IDExOS44MTQgMTI0LjQ0NSAxMTUuMzM0QzEyNC40NDUgMTEwLjg1NSAxMjAuODEzIDEwNy4yMjQgMTE2LjMzNCAxMDcuMjI0QzExMS44NTUgMTA3LjIyNCAxMDguMjIzIDExMC44NTUgMTA4LjIyMyAxMTUuMzM0QzEwOC4yMjMgMTE5LjgxNCAxMTEuODU1IDEyMy40NDUgMTE2LjMzNCAxMjMuNDQ1WiIgc3Ryb2tlPSIjNjI2MjYyIiBzdHJva2Utd2lkdGg9IjguMTEwNzciIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPgo8L3N2Zz4K",GG="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjU2IiBoZWlnaHQ9IjI1NiIgdmlld0JveD0iMCAwIDI1NiAyNTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxyZWN0IHdpZHRoPSIyNTYiIGhlaWdodD0iMjU2IiBmaWxsPSIjRUNFQ0VDIi8+CjxwYXRoIGQ9Ik0xNTYuODg4IDkxLjAwMkgxMDAuMTEyQzk1LjYzMjkgOTEuMDAyIDkyLjAwMTUgOTQuNjMzNCA5Mi4wMDE1IDk5LjExMjdWMTU1Ljg4OEM5Mi4wMDE1IDE2MC4zNjcgOTUuNjMyOSAxNjMuOTk5IDEwMC4xMTIgMTYzLjk5OUgxNTYuODg4QzE2MS4zNjcgMTYzLjk5OSAxNjQuOTk4IDE2MC4zNjcgMTY0Ljk5OCAxNTUuODg4Vjk5LjExMjdDMTY0Ljk5OCA5NC42MzM0IDE2MS4zNjcgOTEuMDAyIDE1Ni44ODggOTEuMDAyWiIgc3Ryb2tlPSIjRDdEN0Q3IiBzdHJva2Utd2lkdGg9IjguMTEwNzciIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPgo8cGF0aCBkPSJNMTY0Ljk5OCAxMzkuNjY4TDE1Mi40ODQgMTI3LjE1M0MxNTAuOTYyIDEyNS42MzIgMTQ4LjkgMTI0Ljc3OCAxNDYuNzQ5IDEyNC43NzhDMTQ0LjU5OSAxMjQuNzc4IDE0Mi41MzYgMTI1LjYzMiAxNDEuMDE1IDEyNy4xNTNMMTA0LjE2OCAxNjRNMTE2LjMzNCAxMjMuNDQ1QzEyMC44MTMgMTIzLjQ0NSAxMjQuNDQ1IDExOS44MTQgMTI0LjQ0NSAxMTUuMzM0QzEyNC40NDUgMTEwLjg1NSAxMjAuODEzIDEwNy4yMjQgMTE2LjMzNCAxMDcuMjI0QzExMS44NTUgMTA3LjIyNCAxMDguMjIzIDExMC44NTUgMTA4LjIyMyAxMTUuMzM0QzEwOC4yMjMgMTE5LjgxNCAxMTEuODU1IDEyMy40NDUgMTE2LjMzNCAxMjMuNDQ1WiIgc3Ryb2tlPSIjRDdEN0Q3IiBzdHJva2Utd2lkdGg9IjguMTEwNzciIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPgo8L3N2Zz4K",GC=d.memo(({children:e,visible:t})=>{const r=d.useRef(null);return d.useEffect(()=>{if(!r.current)return;const n=o=>{o.preventDefault()};t?r.current.addEventListener("wheel",n,{passive:!1}):r.current.removeEventListener("wheel",n)},[t]),N.jsx("div",{ref:r,children:e})});var UG={"image.copy":"Copy","image.copyFailed":"Copy Failed","image.copySuccess":"Copy Success","image.download":"Download","image.downloadFailed":"Download Failed","image.downloadSuccess":"Download Success","image.flipHorizontal":"Flip Horizontal","image.flipVertical":"Flip Vertical","image.rotateLeft":"Rotate Left","image.rotateRight":"Rotate Right","image.zoomIn":"Zoom In","image.zoomOut":"Zoom Out"};const XG=e=>new Promise((t,r)=>{const n=new Image,o=URL.createObjectURL(e);n.onload=()=>{URL.revokeObjectURL(o);const i=document.createElement("canvas");i.width=n.naturalWidth,i.height=n.naturalHeight;const a=i.getContext("2d");if(!a){r(new Error("Canvas context not available"));return}a.drawImage(n,0,0),i.toBlob(s=>{s?t(s):r(new Error("Failed to convert to PNG"))},"image/png",1)},n.onerror=()=>{URL.revokeObjectURL(o),r(new Error("Failed to load image"))},n.src=o}),YG=async e=>{const t=(e.type||"").toLowerCase();return t==="image/png"||t==="image/svg+xml"?{[t]:e}:{"image/png":await XG(e)}},KG=e=>{try{const t=new URL(e).pathname.match(/\/([^/]+)$/);return t?decodeURIComponent(t[1]):"image"}catch{return"image"}},ZG=e=>{var t;return{"image/svg+xml":"svg","image/png":"png","image/jpeg":"jpg","image/jpg":"jpg","image/webp":"webp","image/gif":"gif"}[e==null?void 0:e.toLowerCase()]||((t=e==null?void 0:e.split("/")[1])==null?void 0:t.split("+")[0])||"png"},UC=d.memo(({children:e,info:t,minScale:r,maxScale:n})=>{const{t:o}=IW(UG),[i,a]=d.useState(null),[s,l]=d.useState(!1),[c,u]=d.useState(!1),{transform:{scale:f},actions:{onFlipY:p,onFlipX:m,onRotateLeft:h,onRotateRight:g,onZoomOut:v,onZoomIn:b},image:{url:y}}=t,x=d.useCallback(async()=>{u(!0);try{const S=await(await fetch(y,{mode:"cors"})).blob(),C=URL.createObjectURL(S);let k=KG(y);const D=ZG(S.type);k.includes(".")?k.endsWith(".svg+xml")&&(k=k.replace(/\.svg\+xml$/i,".svg")):k=`${k}.${D}`,await jW(C,k),URL.revokeObjectURL(C),La.success(o("image.downloadSuccess"))}catch{La.error(o("image.downloadFailed"))}finally{u(!1)}},[y,o]),w=d.useCallback(async()=>{l(!0);try{const S=await YG(await(await fetch(y,{mode:"cors"})).blob());await navigator.clipboard.write([new ClipboardItem(S)]),La.success(o("image.copySuccess"))}catch{La.error(o("image.copyFailed"))}finally{l(!1)}},[y,o]);return N.jsx(x1,{popupContainer:i??void 0,children:N.jsxs(ir,{horizontal:!0,className:wn.toolbar,gap:4,ref:a,children:[N.jsx(un,{icon:XH,title:o("image.flipHorizontal"),onClick:m}),N.jsx(un,{icon:GH,title:o("image.flipVertical"),onClick:p}),N.jsx(un,{icon:OH,title:o("image.rotateLeft"),onClick:h}),N.jsx(un,{icon:HH,title:o("image.rotateRight"),onClick:g}),N.jsx(un,{disabled:f===r,icon:tq,title:o("image.zoomOut"),onClick:v}),N.jsx(un,{disabled:f===n,icon:JH,title:o("image.zoomIn"),onClick:b}),N.jsx(un,{icon:qw,loading:s,title:o("image.copy"),onClick:w}),N.jsx(un,{icon:EH,loading:c,title:o("image.download"),onClick:x}),e]})})}),QG=e=>{const[t,r]=d.useState(!1);return d.useMemo(()=>{if(e===!1)return e;const{onVisibleChange:n,onOpenChange:o,minScale:i=.32,maxScale:a=32,toolbarAddon:s,rootClassName:l,imageRender:c,toolbarRender:u,...f}=e===!0?{}:e||{};return{actionsRender:(p,m)=>{const h=N.jsx(UC,{info:m,maxScale:a,minScale:i,children:s});return u?u(h,m):h},closeIcon:N.jsx(At,{color:"#fff",icon:Lu}),imageRender:(p,m)=>{const h=N.jsx(GC,{visible:t,children:p});return c?c(h,m):h},maxScale:a,minScale:i,onOpenChange:(p,m)=>{r(p),o==null||o(p,m),n==null||n(p,!p,m.current)},rootClassName:Fe(wn.preview,l),...f}},[e,t,wn])},{PreviewGroup:JG}=e1,XC=d.memo(({items:e,children:t,enable:r=!0,preview:n})=>{const o=QG(n);return r?N.jsx(JG,{items:e,preview:o,children:t}):t});XC.displayName="PreviewGroup";const eU=e=>{const[t,r]=d.useState(!1);return d.useMemo(()=>{if(e===!1)return e;const{onVisibleChange:n,onOpenChange:o,minScale:i=.32,maxScale:a=32,toolbarAddon:s,rootClassName:l,imageRender:c,toolbarRender:u,actionsRender:f,...p}=e===!0?{}:e||{};return{actionsRender:f||((m,h)=>{const g=N.jsx(UC,{info:h,maxScale:a,minScale:i,children:s});return u?u(g,h):g}),closeIcon:N.jsx(At,{color:"#fff",icon:Lu}),imageRender:(m,h)=>{const g=N.jsx(GC,{visible:t,children:m});return c?c(g,h):g},maxScale:a,minScale:i,onOpenChange:m=>{r(m),o==null||o(m),n==null||n(m,!m)},rootClassName:Fe(wn.preview,l),styles:{mask:{backdropFilter:"blur(8px)"}},...p}},[e,t,wn])},YC=d.memo(({ref:e,style:t,preview:r,isLoading:n,maxHeight:o="100%",maxWidth:i="100%",minHeight:a,minWidth:s,actions:l,className:c,alwaysShowActions:u,variant:f="filled",objectFit:p="cover",classNames:m,styles:h,onClick:g,width:v,height:b,...y})=>{const{isDarkMode:x}=En(),w=u?wn.actionsVisible:wn.actionsHidden,S=eU(r);return n?N.jsx("div",{onClick:g,children:N.jsx(oa.Avatar,{active:!0,style:{borderRadius:Ce.borderRadius,height:b,maxHeight:o,maxWidth:i,minHeight:a,minWidth:s,width:v}})}):N.jsxs(ir,{className:Fe(WG({variant:f}),c),ref:e,style:t,children:[l&&N.jsx("div",{className:Fe(w,u?"":"actions-hidden"),children:l}),N.jsx(e1,{className:Fe(wn.image,m==null?void 0:m.image),fallback:x?VG:GG,height:b,loading:"lazy",preview:r===!1?!1:S,width:v,classNames:{root:Fe(wn.wrapper,m==null?void 0:m.wrapper)},style:{maxHeight:o,maxWidth:i,minHeight:a,minWidth:s,objectFit:p||"cover",...h==null?void 0:h.image},styles:{root:h==null?void 0:h.wrapper},onClick:g,...y})]})});YC.displayName="Image";const G1=YC;G1.PreviewGroup=XC;const KC=[{displayName:"Lobe Theme",id:"lobe-theme"},{background:"#fbf9ff",displayName:"Mermaid Default",id:"default"},{background:"#fffcf8",displayName:"Mermaid Base",id:"base"},{background:"#000",displayName:"Mermaid Dark",id:"dark"},{background:"#f9ffeb",displayName:"Mermaid Forest",id:"forest"},{background:"#fff",displayName:"Mermaid Neutral",id:"neutral"}],Ko=new Map,_4=500,tU=()=>{if(Ko.size>_4){const e=Math.floor(_4*.2),t=Array.from(Ko.keys()).slice(0,e);for(const r of t)Ko.delete(r)}};let Bf=null;const ZC=()=>typeof window>"u"?Promise.resolve(null):(Bf||(Bf=Th(()=>import("./diagram-BJFhx-27.js").then(e=>e.d),__vite__mapDeps([0,1])).then(e=>e.default)),Bf),QC=(e,t,r="strict")=>({fontFamily:e.fontFamilyCode,gantt:{useWidth:1920},securityLevel:r,startOnLoad:!1,theme:t||(e.isDarkMode?"dark":"neutral"),themeVariables:t?void 0:{errorBkgColor:e.colorTextDescription,errorTextColor:e.colorTextDescription,fontFamily:e.fontFamily,lineColor:e.colorTextSecondary,mainBkg:e.colorBgContainer,noteBkgColor:e.colorInfoBg,noteTextColor:e.colorInfoText,pie1:e.geekblue,pie2:e.colorWarning,pie3:e.colorSuccess,pie4:e.colorError,primaryBorderColor:e.colorBorder,primaryColor:e.colorBgContainer,primaryTextColor:e.colorText,secondaryBorderColor:e.colorInfoBorder,secondaryColor:e.colorInfoBg,secondaryTextColor:e.colorInfoText,tertiaryBorderColor:e.colorSuccessBorder,tertiaryColor:e.colorSuccessBg,tertiaryTextColor:e.colorSuccessText,textColor:e.colorText}}),rU=(e,{id:t,theme:r,securityLevel:n})=>{const o=a1(),[i,a]=d.useState(""),s=d.useMemo(()=>QC(o,r,n),[o.fontFamilyCode,o.isDarkMode,o.colorTextDescription,o.fontFamily,o.colorTextSecondary,o.colorBgContainer,o.colorInfoBg,o.colorInfoText,o.geekblue,o.colorWarning,o.colorSuccess,o.colorError,o.colorBorder,o.colorInfoBorder,o.colorSuccessBorder,o.colorSuccessBg,o.colorSuccessText,o.colorText,r,n]),l=d.useMemo(()=>{const c=e.length<1e4?e:D1.hashStr(e);return[t,r||(o.isDarkMode?"d":"l"),c].filter(Boolean).join("-")},[e,t,o.isDarkMode,r]);return d.useEffect(()=>{const c=Ko.get(l);if(c){c.then(f=>{a(f)}).catch(()=>{});return}const u=(async()=>{try{const f=await ZC();if(!f)return"";if(await f.parse(e)){f.initialize(s);const{svg:p}=await f.render(t,e);return p}else throw new Error("Mermaid 语法无效")}catch(f){return console.error("Mermaid 解析错误:",f),""}})();Ko.set(l,u),tU(),u.then(f=>{Ko.get(l)===u&&a(f)}).catch(()=>{Ko.get(l)===u&&Ko.delete(l)})},[l,e,t,s]),i},JC=d.memo(({children:e,className:t,fallbackClassName:r,ref:n,style:o,theme:i,variant:a})=>{const s=e??"",l=i==="lobe-theme"||!i,c=d.useMemo(()=>{var g;if(!l)return(g=KC.find(v=>v.id===i))==null?void 0:g.background},[l,i]),u=rU(s,{id:Tw(`mermaid-${d.useId()}`),theme:l?void 0:i}),f=!u,[p,m]=d.useState();d.useEffect(()=>()=>{p&&URL.revokeObjectURL(p)},[p]),d.useEffect(()=>{if(f||!u)return;let g=u;if(typeof window<"u"&&typeof navigator<"u"&&navigator.userAgent.includes("Firefox")){const b=new DOMParser().parseFromString(u,"image/svg+xml"),y=b.documentElement;if(y&&y.hasAttribute("viewBox")){const x=y.getAttribute("viewBox").split(" ");Array.isArray(x)&&x.length===4&&(y.setAttribute("width",x[2]),y.setAttribute("height",x[3])),g=new XMLSerializer().serializeToString(b)}}const v=new Blob([g],{type:"image/svg+xml"});m(URL.createObjectURL(v))},[f,u]);const h={background:a==="filled"?c:void 0,margin:0,minWidth:300,padding:a==="borderless"?0:16,position:"relative",width:"100%",...o};return p?N.jsx(G1,{alt:"mermaid",className:t,maxHeight:480,minWidth:300,objectFit:"contain",ref:n,src:p,style:h,variant:"borderless",width:"100%"}):N.jsx("div",{className:r,style:o,children:N.jsx("div",{style:{padding:16},children:"Loading..."})})});JC.displayName="StaticMermaid";const nU=(e,{enabled:t=!0,id:r,theme:n})=>{const o=a1(),[i,a]=d.useState(""),s=d.useRef(""),l=d.useRef(e),c=d.useRef(void 0),u=d.useMemo(()=>QC(o,n),[o.fontFamilyCode,o.isDarkMode,o.colorTextDescription,o.fontFamily,o.colorTextSecondary,o.colorBgContainer,o.colorInfoBg,o.colorInfoText,o.geekblue,o.colorWarning,o.colorSuccess,o.colorError,o.colorBorder,o.colorInfoBorder,o.colorSuccessBorder,o.colorSuccessBg,o.colorSuccessText,o.colorText,n]);return d.useEffect(()=>{l.current=e},[e]),d.useEffect(()=>{if(!t){a(""),s.current="";const m=c.current;m&&clearTimeout(m);return}const f=l.current;if(f===s.current&&i)return;const p=c.current;return p&&clearTimeout(p),c.current=setTimeout(async()=>{const m=l.current;if(m===f)try{const h=await ZC();if(!h)return;if(await h.parse(m)){h.initialize(u);const{svg:g}=await h.render(r,m);l.current===m&&(a(g),s.current=m)}}catch(h){m===l.current&&console.error("Mermaid 解析错误:",h)}},300),()=>{const m=c.current;m&&clearTimeout(m)}},[t,e,r,u,i]),i},e9=d.memo(({children:e,className:t,fallbackClassName:r,ref:n,style:o,theme:i,variant:a})=>{const s=e??"",l=i==="lobe-theme"||!i,c=d.useMemo(()=>{var g;if(!l)return(g=KC.find(v=>v.id===i))==null?void 0:g.background},[l,i]),u=nU(s,{enabled:!0,id:Tw(`mermaid-${d.useId()}`),theme:l?void 0:i}),f=!u,[p,m]=d.useState();d.useEffect(()=>()=>{p&&URL.revokeObjectURL(p)},[p]),d.useEffect(()=>{if(f||!u){m(void 0);return}let g=u;if(typeof window<"u"&&typeof navigator<"u"&&navigator.userAgent.includes("Firefox")){const b=new DOMParser().parseFromString(u,"image/svg+xml"),y=b.documentElement;if(y&&y.hasAttribute("viewBox")){const x=y.getAttribute("viewBox").split(" ");Array.isArray(x)&&x.length===4&&(y.setAttribute("width",x[2]),y.setAttribute("height",x[3])),g=new XMLSerializer().serializeToString(b)}}const v=new Blob([g],{type:"image/svg+xml"});m(URL.createObjectURL(v))},[f,u]);const h={background:a==="filled"?c:void 0,margin:0,minWidth:300,padding:a==="borderless"?0:16,position:"relative",width:"100%",...o};return p?N.jsx(G1,{alt:"mermaid",className:t,maxHeight:480,minWidth:300,objectFit:"contain",ref:n,src:p,style:h,variant:"borderless",width:"100%"}):N.jsx("div",{className:r,style:o,children:N.jsx("div",{style:{padding:16},children:"Rendering..."})})});e9.displayName="StreamMermaid";const oU=Kl`
2713
+ `})),WG=fr(wn.root,{defaultVariants:{variant:"filled"},variants:{variant:{filled:wn.filled,outlined:wn.outlined,borderless:wn.borderless}}}),VG="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjU2IiBoZWlnaHQ9IjI1NiIgdmlld0JveD0iMCAwIDI1NiAyNTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxyZWN0IHdpZHRoPSIyNTYiIGhlaWdodD0iMjU2IiBmaWxsPSIjM0IzQjNCIi8+CjxwYXRoIGQ9Ik0xNTYuODg4IDkxLjAwMkgxMDAuMTEyQzk1LjYzMjkgOTEuMDAyIDkyLjAwMTUgOTQuNjMzNCA5Mi4wMDE1IDk5LjExMjdWMTU1Ljg4OEM5Mi4wMDE1IDE2MC4zNjcgOTUuNjMyOSAxNjMuOTk5IDEwMC4xMTIgMTYzLjk5OUgxNTYuODg4QzE2MS4zNjcgMTYzLjk5OSAxNjQuOTk4IDE2MC4zNjcgMTY0Ljk5OCAxNTUuODg4Vjk5LjExMjdDMTY0Ljk5OCA5NC42MzM0IDE2MS4zNjcgOTEuMDAyIDE1Ni44ODggOTEuMDAyWiIgc3Ryb2tlPSIjNjI2MjYyIiBzdHJva2Utd2lkdGg9IjguMTEwNzciIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPgo8cGF0aCBkPSJNMTY0Ljk5OCAxMzkuNjY4TDE1Mi40ODQgMTI3LjE1M0MxNTAuOTYyIDEyNS42MzIgMTQ4LjkgMTI0Ljc3OCAxNDYuNzQ5IDEyNC43NzhDMTQ0LjU5OSAxMjQuNzc4IDE0Mi41MzYgMTI1LjYzMiAxNDEuMDE1IDEyNy4xNTNMMTA0LjE2OCAxNjRNMTE2LjMzNCAxMjMuNDQ1QzEyMC44MTMgMTIzLjQ0NSAxMjQuNDQ1IDExOS44MTQgMTI0LjQ0NSAxMTUuMzM0QzEyNC40NDUgMTEwLjg1NSAxMjAuODEzIDEwNy4yMjQgMTE2LjMzNCAxMDcuMjI0QzExMS44NTUgMTA3LjIyNCAxMDguMjIzIDExMC44NTUgMTA4LjIyMyAxMTUuMzM0QzEwOC4yMjMgMTE5LjgxNCAxMTEuODU1IDEyMy40NDUgMTE2LjMzNCAxMjMuNDQ1WiIgc3Ryb2tlPSIjNjI2MjYyIiBzdHJva2Utd2lkdGg9IjguMTEwNzciIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPgo8L3N2Zz4K",GG="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjU2IiBoZWlnaHQ9IjI1NiIgdmlld0JveD0iMCAwIDI1NiAyNTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxyZWN0IHdpZHRoPSIyNTYiIGhlaWdodD0iMjU2IiBmaWxsPSIjRUNFQ0VDIi8+CjxwYXRoIGQ9Ik0xNTYuODg4IDkxLjAwMkgxMDAuMTEyQzk1LjYzMjkgOTEuMDAyIDkyLjAwMTUgOTQuNjMzNCA5Mi4wMDE1IDk5LjExMjdWMTU1Ljg4OEM5Mi4wMDE1IDE2MC4zNjcgOTUuNjMyOSAxNjMuOTk5IDEwMC4xMTIgMTYzLjk5OUgxNTYuODg4QzE2MS4zNjcgMTYzLjk5OSAxNjQuOTk4IDE2MC4zNjcgMTY0Ljk5OCAxNTUuODg4Vjk5LjExMjdDMTY0Ljk5OCA5NC42MzM0IDE2MS4zNjcgOTEuMDAyIDE1Ni44ODggOTEuMDAyWiIgc3Ryb2tlPSIjRDdEN0Q3IiBzdHJva2Utd2lkdGg9IjguMTEwNzciIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPgo8cGF0aCBkPSJNMTY0Ljk5OCAxMzkuNjY4TDE1Mi40ODQgMTI3LjE1M0MxNTAuOTYyIDEyNS42MzIgMTQ4LjkgMTI0Ljc3OCAxNDYuNzQ5IDEyNC43NzhDMTQ0LjU5OSAxMjQuNzc4IDE0Mi41MzYgMTI1LjYzMiAxNDEuMDE1IDEyNy4xNTNMMTA0LjE2OCAxNjRNMTE2LjMzNCAxMjMuNDQ1QzEyMC44MTMgMTIzLjQ0NSAxMjQuNDQ1IDExOS44MTQgMTI0LjQ0NSAxMTUuMzM0QzEyNC40NDUgMTEwLjg1NSAxMjAuODEzIDEwNy4yMjQgMTE2LjMzNCAxMDcuMjI0QzExMS44NTUgMTA3LjIyNCAxMDguMjIzIDExMC44NTUgMTA4LjIyMyAxMTUuMzM0QzEwOC4yMjMgMTE5LjgxNCAxMTEuODU1IDEyMy40NDUgMTE2LjMzNCAxMjMuNDQ1WiIgc3Ryb2tlPSIjRDdEN0Q3IiBzdHJva2Utd2lkdGg9IjguMTEwNzciIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPgo8L3N2Zz4K",GC=d.memo(({children:e,visible:t})=>{const r=d.useRef(null);return d.useEffect(()=>{if(!r.current)return;const n=o=>{o.preventDefault()};t?r.current.addEventListener("wheel",n,{passive:!1}):r.current.removeEventListener("wheel",n)},[t]),N.jsx("div",{ref:r,children:e})});var UG={"image.copy":"Copy","image.copyFailed":"Copy Failed","image.copySuccess":"Copy Success","image.download":"Download","image.downloadFailed":"Download Failed","image.downloadSuccess":"Download Success","image.flipHorizontal":"Flip Horizontal","image.flipVertical":"Flip Vertical","image.rotateLeft":"Rotate Left","image.rotateRight":"Rotate Right","image.zoomIn":"Zoom In","image.zoomOut":"Zoom Out"};const XG=e=>new Promise((t,r)=>{const n=new Image,o=URL.createObjectURL(e);n.onload=()=>{URL.revokeObjectURL(o);const i=document.createElement("canvas");i.width=n.naturalWidth,i.height=n.naturalHeight;const a=i.getContext("2d");if(!a){r(new Error("Canvas context not available"));return}a.drawImage(n,0,0),i.toBlob(s=>{s?t(s):r(new Error("Failed to convert to PNG"))},"image/png",1)},n.onerror=()=>{URL.revokeObjectURL(o),r(new Error("Failed to load image"))},n.src=o}),YG=async e=>{const t=(e.type||"").toLowerCase();return t==="image/png"||t==="image/svg+xml"?{[t]:e}:{"image/png":await XG(e)}},KG=e=>{try{const t=new URL(e).pathname.match(/\/([^/]+)$/);return t?decodeURIComponent(t[1]):"image"}catch{return"image"}},ZG=e=>{var t;return{"image/svg+xml":"svg","image/png":"png","image/jpeg":"jpg","image/jpg":"jpg","image/webp":"webp","image/gif":"gif"}[e==null?void 0:e.toLowerCase()]||((t=e==null?void 0:e.split("/")[1])==null?void 0:t.split("+")[0])||"png"},UC=d.memo(({children:e,info:t,minScale:r,maxScale:n})=>{const{t:o}=IW(UG),[i,a]=d.useState(null),[s,l]=d.useState(!1),[c,u]=d.useState(!1),{transform:{scale:f},actions:{onFlipY:p,onFlipX:m,onRotateLeft:h,onRotateRight:g,onZoomOut:v,onZoomIn:b},image:{url:y}}=t,x=d.useCallback(async()=>{u(!0);try{const S=await(await fetch(y,{mode:"cors"})).blob(),C=URL.createObjectURL(S);let k=KG(y);const D=ZG(S.type);k.includes(".")?k.endsWith(".svg+xml")&&(k=k.replace(/\.svg\+xml$/i,".svg")):k=`${k}.${D}`,await jW(C,k),URL.revokeObjectURL(C),La.success(o("image.downloadSuccess"))}catch{La.error(o("image.downloadFailed"))}finally{u(!1)}},[y,o]),w=d.useCallback(async()=>{l(!0);try{const S=await YG(await(await fetch(y,{mode:"cors"})).blob());await navigator.clipboard.write([new ClipboardItem(S)]),La.success(o("image.copySuccess"))}catch{La.error(o("image.copyFailed"))}finally{l(!1)}},[y,o]);return N.jsx(x1,{popupContainer:i??void 0,children:N.jsxs(ir,{horizontal:!0,className:wn.toolbar,gap:4,ref:a,children:[N.jsx(un,{icon:XH,title:o("image.flipHorizontal"),onClick:m}),N.jsx(un,{icon:GH,title:o("image.flipVertical"),onClick:p}),N.jsx(un,{icon:OH,title:o("image.rotateLeft"),onClick:h}),N.jsx(un,{icon:HH,title:o("image.rotateRight"),onClick:g}),N.jsx(un,{disabled:f===r,icon:tq,title:o("image.zoomOut"),onClick:v}),N.jsx(un,{disabled:f===n,icon:JH,title:o("image.zoomIn"),onClick:b}),N.jsx(un,{icon:qw,loading:s,title:o("image.copy"),onClick:w}),N.jsx(un,{icon:EH,loading:c,title:o("image.download"),onClick:x}),e]})})}),QG=e=>{const[t,r]=d.useState(!1);return d.useMemo(()=>{if(e===!1)return e;const{onVisibleChange:n,onOpenChange:o,minScale:i=.32,maxScale:a=32,toolbarAddon:s,rootClassName:l,imageRender:c,toolbarRender:u,...f}=e===!0?{}:e||{};return{actionsRender:(p,m)=>{const h=N.jsx(UC,{info:m,maxScale:a,minScale:i,children:s});return u?u(h,m):h},closeIcon:N.jsx(At,{color:"#fff",icon:Lu}),imageRender:(p,m)=>{const h=N.jsx(GC,{visible:t,children:p});return c?c(h,m):h},maxScale:a,minScale:i,onOpenChange:(p,m)=>{r(p),o==null||o(p,m),n==null||n(p,!p,m.current)},rootClassName:Fe(wn.preview,l),...f}},[e,t,wn])},{PreviewGroup:JG}=e1,XC=d.memo(({items:e,children:t,enable:r=!0,preview:n})=>{const o=QG(n);return r?N.jsx(JG,{items:e,preview:o,children:t}):t});XC.displayName="PreviewGroup";const eU=e=>{const[t,r]=d.useState(!1);return d.useMemo(()=>{if(e===!1)return e;const{onVisibleChange:n,onOpenChange:o,minScale:i=.32,maxScale:a=32,toolbarAddon:s,rootClassName:l,imageRender:c,toolbarRender:u,actionsRender:f,...p}=e===!0?{}:e||{};return{actionsRender:f||((m,h)=>{const g=N.jsx(UC,{info:h,maxScale:a,minScale:i,children:s});return u?u(g,h):g}),closeIcon:N.jsx(At,{color:"#fff",icon:Lu}),imageRender:(m,h)=>{const g=N.jsx(GC,{visible:t,children:m});return c?c(g,h):g},maxScale:a,minScale:i,onOpenChange:m=>{r(m),o==null||o(m),n==null||n(m,!m)},rootClassName:Fe(wn.preview,l),styles:{mask:{backdropFilter:"blur(8px)"}},...p}},[e,t,wn])},YC=d.memo(({ref:e,style:t,preview:r,isLoading:n,maxHeight:o="100%",maxWidth:i="100%",minHeight:a,minWidth:s,actions:l,className:c,alwaysShowActions:u,variant:f="filled",objectFit:p="cover",classNames:m,styles:h,onClick:g,width:v,height:b,...y})=>{const{isDarkMode:x}=En(),w=u?wn.actionsVisible:wn.actionsHidden,S=eU(r);return n?N.jsx("div",{onClick:g,children:N.jsx(oa.Avatar,{active:!0,style:{borderRadius:Ce.borderRadius,height:b,maxHeight:o,maxWidth:i,minHeight:a,minWidth:s,width:v}})}):N.jsxs(ir,{className:Fe(WG({variant:f}),c),ref:e,style:t,children:[l&&N.jsx("div",{className:Fe(w,u?"":"actions-hidden"),children:l}),N.jsx(e1,{className:Fe(wn.image,m==null?void 0:m.image),fallback:x?VG:GG,height:b,loading:"lazy",preview:r===!1?!1:S,width:v,classNames:{root:Fe(wn.wrapper,m==null?void 0:m.wrapper)},style:{maxHeight:o,maxWidth:i,minHeight:a,minWidth:s,objectFit:p||"cover",...h==null?void 0:h.image},styles:{root:h==null?void 0:h.wrapper},onClick:g,...y})]})});YC.displayName="Image";const G1=YC;G1.PreviewGroup=XC;const KC=[{displayName:"Lobe Theme",id:"lobe-theme"},{background:"#fbf9ff",displayName:"Mermaid Default",id:"default"},{background:"#fffcf8",displayName:"Mermaid Base",id:"base"},{background:"#000",displayName:"Mermaid Dark",id:"dark"},{background:"#f9ffeb",displayName:"Mermaid Forest",id:"forest"},{background:"#fff",displayName:"Mermaid Neutral",id:"neutral"}],Ko=new Map,_4=500,tU=()=>{if(Ko.size>_4){const e=Math.floor(_4*.2),t=Array.from(Ko.keys()).slice(0,e);for(const r of t)Ko.delete(r)}};let Bf=null;const ZC=()=>typeof window>"u"?Promise.resolve(null):(Bf||(Bf=Th(()=>import("./diagram-gfUK8OHx.js").then(e=>e.d),__vite__mapDeps([0,1])).then(e=>e.default)),Bf),QC=(e,t,r="strict")=>({fontFamily:e.fontFamilyCode,gantt:{useWidth:1920},securityLevel:r,startOnLoad:!1,theme:t||(e.isDarkMode?"dark":"neutral"),themeVariables:t?void 0:{errorBkgColor:e.colorTextDescription,errorTextColor:e.colorTextDescription,fontFamily:e.fontFamily,lineColor:e.colorTextSecondary,mainBkg:e.colorBgContainer,noteBkgColor:e.colorInfoBg,noteTextColor:e.colorInfoText,pie1:e.geekblue,pie2:e.colorWarning,pie3:e.colorSuccess,pie4:e.colorError,primaryBorderColor:e.colorBorder,primaryColor:e.colorBgContainer,primaryTextColor:e.colorText,secondaryBorderColor:e.colorInfoBorder,secondaryColor:e.colorInfoBg,secondaryTextColor:e.colorInfoText,tertiaryBorderColor:e.colorSuccessBorder,tertiaryColor:e.colorSuccessBg,tertiaryTextColor:e.colorSuccessText,textColor:e.colorText}}),rU=(e,{id:t,theme:r,securityLevel:n})=>{const o=a1(),[i,a]=d.useState(""),s=d.useMemo(()=>QC(o,r,n),[o.fontFamilyCode,o.isDarkMode,o.colorTextDescription,o.fontFamily,o.colorTextSecondary,o.colorBgContainer,o.colorInfoBg,o.colorInfoText,o.geekblue,o.colorWarning,o.colorSuccess,o.colorError,o.colorBorder,o.colorInfoBorder,o.colorSuccessBorder,o.colorSuccessBg,o.colorSuccessText,o.colorText,r,n]),l=d.useMemo(()=>{const c=e.length<1e4?e:D1.hashStr(e);return[t,r||(o.isDarkMode?"d":"l"),c].filter(Boolean).join("-")},[e,t,o.isDarkMode,r]);return d.useEffect(()=>{const c=Ko.get(l);if(c){c.then(f=>{a(f)}).catch(()=>{});return}const u=(async()=>{try{const f=await ZC();if(!f)return"";if(await f.parse(e)){f.initialize(s);const{svg:p}=await f.render(t,e);return p}else throw new Error("Mermaid 语法无效")}catch(f){return console.error("Mermaid 解析错误:",f),""}})();Ko.set(l,u),tU(),u.then(f=>{Ko.get(l)===u&&a(f)}).catch(()=>{Ko.get(l)===u&&Ko.delete(l)})},[l,e,t,s]),i},JC=d.memo(({children:e,className:t,fallbackClassName:r,ref:n,style:o,theme:i,variant:a})=>{const s=e??"",l=i==="lobe-theme"||!i,c=d.useMemo(()=>{var g;if(!l)return(g=KC.find(v=>v.id===i))==null?void 0:g.background},[l,i]),u=rU(s,{id:Tw(`mermaid-${d.useId()}`),theme:l?void 0:i}),f=!u,[p,m]=d.useState();d.useEffect(()=>()=>{p&&URL.revokeObjectURL(p)},[p]),d.useEffect(()=>{if(f||!u)return;let g=u;if(typeof window<"u"&&typeof navigator<"u"&&navigator.userAgent.includes("Firefox")){const b=new DOMParser().parseFromString(u,"image/svg+xml"),y=b.documentElement;if(y&&y.hasAttribute("viewBox")){const x=y.getAttribute("viewBox").split(" ");Array.isArray(x)&&x.length===4&&(y.setAttribute("width",x[2]),y.setAttribute("height",x[3])),g=new XMLSerializer().serializeToString(b)}}const v=new Blob([g],{type:"image/svg+xml"});m(URL.createObjectURL(v))},[f,u]);const h={background:a==="filled"?c:void 0,margin:0,minWidth:300,padding:a==="borderless"?0:16,position:"relative",width:"100%",...o};return p?N.jsx(G1,{alt:"mermaid",className:t,maxHeight:480,minWidth:300,objectFit:"contain",ref:n,src:p,style:h,variant:"borderless",width:"100%"}):N.jsx("div",{className:r,style:o,children:N.jsx("div",{style:{padding:16},children:"Loading..."})})});JC.displayName="StaticMermaid";const nU=(e,{enabled:t=!0,id:r,theme:n})=>{const o=a1(),[i,a]=d.useState(""),s=d.useRef(""),l=d.useRef(e),c=d.useRef(void 0),u=d.useMemo(()=>QC(o,n),[o.fontFamilyCode,o.isDarkMode,o.colorTextDescription,o.fontFamily,o.colorTextSecondary,o.colorBgContainer,o.colorInfoBg,o.colorInfoText,o.geekblue,o.colorWarning,o.colorSuccess,o.colorError,o.colorBorder,o.colorInfoBorder,o.colorSuccessBorder,o.colorSuccessBg,o.colorSuccessText,o.colorText,n]);return d.useEffect(()=>{l.current=e},[e]),d.useEffect(()=>{if(!t){a(""),s.current="";const m=c.current;m&&clearTimeout(m);return}const f=l.current;if(f===s.current&&i)return;const p=c.current;return p&&clearTimeout(p),c.current=setTimeout(async()=>{const m=l.current;if(m===f)try{const h=await ZC();if(!h)return;if(await h.parse(m)){h.initialize(u);const{svg:g}=await h.render(r,m);l.current===m&&(a(g),s.current=m)}}catch(h){m===l.current&&console.error("Mermaid 解析错误:",h)}},300),()=>{const m=c.current;m&&clearTimeout(m)}},[t,e,r,u,i]),i},e9=d.memo(({children:e,className:t,fallbackClassName:r,ref:n,style:o,theme:i,variant:a})=>{const s=e??"",l=i==="lobe-theme"||!i,c=d.useMemo(()=>{var g;if(!l)return(g=KC.find(v=>v.id===i))==null?void 0:g.background},[l,i]),u=nU(s,{enabled:!0,id:Tw(`mermaid-${d.useId()}`),theme:l?void 0:i}),f=!u,[p,m]=d.useState();d.useEffect(()=>()=>{p&&URL.revokeObjectURL(p)},[p]),d.useEffect(()=>{if(f||!u){m(void 0);return}let g=u;if(typeof window<"u"&&typeof navigator<"u"&&navigator.userAgent.includes("Firefox")){const b=new DOMParser().parseFromString(u,"image/svg+xml"),y=b.documentElement;if(y&&y.hasAttribute("viewBox")){const x=y.getAttribute("viewBox").split(" ");Array.isArray(x)&&x.length===4&&(y.setAttribute("width",x[2]),y.setAttribute("height",x[3])),g=new XMLSerializer().serializeToString(b)}}const v=new Blob([g],{type:"image/svg+xml"});m(URL.createObjectURL(v))},[f,u]);const h={background:a==="filled"?c:void 0,margin:0,minWidth:300,padding:a==="borderless"?0:16,position:"relative",width:"100%",...o};return p?N.jsx(G1,{alt:"mermaid",className:t,maxHeight:480,minWidth:300,objectFit:"contain",ref:n,src:p,style:h,variant:"borderless",width:"100%"}):N.jsx("div",{className:r,style:o,children:N.jsx("div",{style:{padding:16},children:"Rendering..."})})});e9.displayName="StreamMermaid";const oU=Kl`
2714
2714
  0% {
2715
2715
  opacity: 0;
2716
2716
  }
@@ -27,11 +27,11 @@
27
27
  opacity: 0.65;
28
28
  }
29
29
  </style>
30
- <script type="module" crossorigin src="/assets/index-czw0A2GN.js"></script>
30
+ <script type="module" crossorigin src="/assets/index-DOrcbEeP.js"></script>
31
31
  <link rel="modulepreload" crossorigin href="/assets/react-vendor-BNpqFP9B.js">
32
- <link rel="modulepreload" crossorigin href="/assets/motion-D-I76zAi.js">
33
- <link rel="modulepreload" crossorigin href="/assets/ui-C3xtW1w8.js">
34
- <link rel="stylesheet" crossorigin href="/assets/index-BQ1RXV0n.css">
32
+ <link rel="modulepreload" crossorigin href="/assets/motion-C4pN8CfU.js">
33
+ <link rel="modulepreload" crossorigin href="/assets/ui-DxdLi_28.js">
34
+ <link rel="stylesheet" crossorigin href="/assets/index-7HUca950.css">
35
35
  </head>
36
36
  <body>
37
37
  <div id="root"></div>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fgbg/mdocs",
3
- "version": "0.8.20",
3
+ "version": "0.8.22",
4
4
  "description": "A Markdown knowledge base for small teams",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -1 +0,0 @@
1
- import{r as d,j as e}from"./react-vendor-BNpqFP9B.js";import{aa as ge,ab as xe,i as ae,ac as ye,ad as je,ae as Ne,af as ke,ag as be,ah as Se,ai as we,aj as Ie}from"./index-czw0A2GN.js";import{H as ve,S as Ae,A as Ce}from"./AgentSkillFormCard-DcKxyiAV.js";import{P as _e}from"./plus-9njZDkAU.js";import{M as $e,r as Re}from"./ui-C3xtW1w8.js";import{C as Ee,a as qe}from"./copy-D8ORBt1-.js";import"./motion-D-I76zAi.js";function Y(r){var n;return r==null||typeof r=="boolean"?"":typeof r=="string"||typeof r=="number"?String(r):Array.isArray(r)?r.map(Y).join(""):typeof r=="object"&&"props"in r?Y((n=r.props)==null?void 0:n.children):""}function De(r){const[n,l]=d.useState(!1),h=d.useRef(null),N=Y(r.children).replace(/\n$/,"");d.useEffect(()=>()=>{h.current!=null&&window.clearTimeout(h.current)},[]);async function y(){if(N)try{await navigator.clipboard.writeText(N),l(!0),h.current!=null&&window.clearTimeout(h.current),h.current=window.setTimeout(()=>l(!1),1500)}catch{}}return e.jsxs("div",{className:"mdocs-agent-panel-md-pre-wrap",children:[e.jsx("button",{type:"button",className:"mdocs-agent-panel-md-copy",onClick:()=>void y(),"aria-label":n?"已复制":"复制代码",title:n?"已复制":"复制",children:n?e.jsx(Ee,{size:14,"aria-hidden":!0}):e.jsx(qe,{size:14,"aria-hidden":!0})}),e.jsx("pre",{children:r.children})]})}function ie(r){return e.jsx("div",{className:"mdocs-agent-panel-md",children:e.jsx($e,{remarkPlugins:[Re],components:{pre:({children:n})=>e.jsx(De,{children:n})},children:r.children})})}const Me=["如何发布文档?","草稿是什么?","如何创建域?"];function re(r,n){return n.map((l,h)=>{const N=l.skillNames&&l.skillNames.length>0?l.skillNames:l.skillIds&&l.skillIds.length>0?l.skillIds:void 0;return{id:`h-${r}-${h}-${l.role}`,role:l.role,content:l.content,skillNames:N}})}function ze(r,n){const l=r.slice(),h=l[l.length-1];return(h==null?void 0:h.type)==="text"?l[l.length-1]={type:"text",text:h.text+n}:l.push({type:"text",text:n}),l}function le(r){return r!=null&&r.length?r.filter(n=>n.type==="text").map(n=>n.text).join(""):""}function Fe(r){const n=new Date(r);if(Number.isNaN(n.getTime()))return"";const l=new Date;return n.getFullYear()===l.getFullYear()&&n.getMonth()===l.getMonth()&&n.getDate()===l.getDate()?n.toLocaleTimeString(void 0,{hour:"2-digit",minute:"2-digit"}):n.toLocaleDateString(void 0,{month:"2-digit",day:"2-digit"})}function ce(r){if(r>=1e3){const n=r/1e3;return`${n>=10?Math.round(n):Math.round(n*10)/10}K`}return String(r)}function Te(r){const{block:n,onResolved:l}=r,[h,N]=d.useState(""),[y,C]=d.useState(!1),[S,w]=d.useState(1),M=d.useRef(!1),I=d.useRef(l);I.current=l;const g=n.status==="open",c=d.useRef(0);d.useEffect(()=>{if(!g)return;M.current=!1;const x=new Date(n.expiresAt).getTime(),k=Date.now(),f=Math.max(x-k,1);c.current=f,w(1);const q=()=>{const z=x-Date.now(),H=Math.max(0,Math.min(1,z/f));w(H),z<=0&&!M.current&&(M.current=!0,we(n.requestId).catch(()=>{}).finally(()=>{I.current(n.requestId,"","expired")}))};q();const D=window.setInterval(q,100);return()=>window.clearInterval(D)},[g,n.expiresAt,n.requestId]);async function E(x){const k=x.trim();if(!(!k||y||!g)){C(!0);try{await Ie(n.requestId,k),l(n.requestId,k,"selected")}catch{l(n.requestId,k,"failed")}finally{C(!1)}}}const U=Math.max(0,Math.ceil(S*c.current/1e3));return e.jsxs("div",{className:"mdocs-agent-choice-card"+(g?"":" mdocs-agent-choice-card-done"),children:[e.jsxs("div",{className:"mdocs-agent-choice-head",children:[e.jsx("p",{className:"mdocs-agent-choice-title",children:n.title}),g?e.jsxs("span",{className:"mdocs-agent-choice-timer","aria-live":"polite",children:[U,"s"]}):null]}),g?e.jsx("div",{className:"mdocs-agent-choice-progress",role:"progressbar","aria-valuemin":0,"aria-valuemax":100,"aria-valuenow":Math.round(S*100),children:e.jsx("div",{className:"mdocs-agent-choice-progress-bar",style:{transform:`scaleX(${S})`}})}):null,n.status==="selected"&&n.selected?e.jsxs("p",{className:"mdocs-agent-choice-result",children:["已选择:",n.selected]}):null,n.status==="expired"?e.jsx("p",{className:"mdocs-agent-choice-result muted",children:"已超时,选择已失效"}):null,n.status==="failed"?e.jsx("p",{className:"mdocs-agent-choice-result muted",children:"提交失败或已失效"}):null,g?e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"mdocs-agent-choice-options",children:n.options.map(x=>e.jsx("button",{type:"button",className:"mdocs-agent-choice-option",disabled:y,onClick:()=>void E(x),children:x},x))}),e.jsxs("div",{className:"mdocs-agent-choice-custom",children:[e.jsx("input",{value:h,disabled:y,placeholder:"或输入自己的内容…",onChange:x=>N(x.target.value),onKeyDown:x=>{x.key==="Enter"&&(x.preventDefault(),E(h))}}),e.jsx("button",{type:"button",disabled:y||!h.trim(),onClick:()=>void E(h),children:"提交"})]})]}):null]})}function Pe(r){const N=2*Math.PI*8.75,y=Math.min(100,Math.max(0,r.percent)),C=N*(1-y/100),S=y>=90?"danger":y>=70?"warn":"ok",w=`上下文 ${y}% · 已用 ${ce(r.used)} / ${ce(r.limit)} tokens`;return e.jsx("span",{className:"mdocs-agent-panel-context mdocs-agent-panel-context-"+S,"data-tooltip":w,"aria-label":w,role:"img",tabIndex:0,children:e.jsxs("svg",{width:20,height:20,viewBox:"0 0 20 20","aria-hidden":!0,children:[e.jsx("circle",{className:"mdocs-agent-panel-context-track",cx:20/2,cy:20/2,r:8.75,fill:"none",strokeWidth:2.5}),e.jsx("circle",{className:"mdocs-agent-panel-context-value",cx:20/2,cy:20/2,r:8.75,fill:"none",strokeWidth:2.5,strokeLinecap:"round",strokeDasharray:N,strokeDashoffset:C,transform:`rotate(-90 ${20/2} ${20/2})`})]})})}function Ge(r){const{open:n,onClose:l,visitorName:h,anchorStyle:N,onOpenDocument:y,onTreeChanged:C,onDocumentOverwritten:S,onOpenCoding:w}=r,M=((h==null?void 0:h.trim().charAt(0))||"我").toUpperCase(),[I,g]=d.useState(!1),[c,E]=d.useState(null),[U,x]=d.useState(null),[k,f]=d.useState([]),[q,D]=d.useState(null),[z,H]=d.useState([]),[oe,J]=d.useState(!1),[P,B]=d.useState(""),[F,Q]=d.useState([]),[b,L]=d.useState(!1),[V,_]=d.useState(null),[K,Z]=d.useState(null),de=d.useRef(null),W=d.useRef(null),$=d.useRef(null),ee=d.useRef(0),T=d.useRef(!0);function se(s){return ee.current+=1,`${s}-${ee.current}`}function ue(s,m=48){return s.scrollHeight-s.scrollTop-s.clientHeight<=m}function v(){const s=W.current;!s||!T.current||(s.scrollTop=s.scrollHeight)}function me(){const s=W.current;s&&(T.current=ue(s))}async function pe(){J(!0);try{const s=await Ne();H(s.sessions),q||D(s.lastOpenedSessionId)}catch{}finally{J(!1)}}async function O(){try{const s=await je();Z(s)}catch{}}d.useEffect(()=>{var m;if(!n){g(!1),(m=$.current)==null||m.abort(),$.current=null,L(!1);return}let s=!1;return(async()=>{try{const i=await ge();s||(E(i),x(null))}catch(i){s||(E(null),x(i instanceof Error?i.message:String(i)))}})(),O(),()=>{s=!0}},[n]),d.useEffect(()=>{if(!n)return;let s=!1;return(async()=>{try{const m=await xe();if(s)return;D(m.sessionId),f(i=>i.length>0?i:re(m.sessionId,m.messages))}catch{}})(),()=>{s=!0}},[n]),d.useEffect(()=>{!n||!I||pe()},[n,I]),d.useEffect(()=>{if(!n)return;const s=m=>{if(m.key==="Escape"){if(I){g(!1);return}l()}};return document.addEventListener("keydown",s),()=>document.removeEventListener("keydown",s)},[n,l,I]);async function G(s){var R;const m=s.trim();if(!m||b)return;if(!(c!=null&&c.enabled)){_((c==null?void 0:c.reason)==="missing_api_key"?"请先在设置 → AI 配置 DeepSeek API Key":(c==null?void 0:c.reason)==="skills_missing"?"手册 skills 未就绪,请确认已构建 agent-skills":"助手暂不可用");return}(R=$.current)==null||R.abort();const i=new AbortController;$.current=i;const A={id:se("u"),role:"user",content:m,skillNames:F.length>0?[...F]:void 0},p=se("a");T.current=!0,f(j=>[...j,A,{id:p,role:"assistant",content:""}]),B(""),L(!0),_(null),g(!1),requestAnimationFrame(()=>v());try{let j=!1;await Se(m,{skillNames:F.length>0?F:void 0,signal:i.signal,onEvent:a=>{a.type==="text_delta"?(f(u=>u.map(t=>{if(t.id!==p)return t;const o=ze(t.blocks??[],a.text);return{...t,blocks:o,content:le(o)}})),requestAnimationFrame(()=>v())):a.type==="sources"?(f(u=>u.map(t=>{if(t.id!==p)return t;const o=(t.blocks??[]).slice(),X=o[o.length-1];return(X==null?void 0:X.type)==="sources"?o[o.length-1]={type:"sources",items:a.items}:o.push({type:"sources",items:a.items}),{...t,blocks:o}})),requestAnimationFrame(()=>v())):a.type==="document_table"?(f(u=>u.map(t=>{if(t.id!==p)return t;const o=[...t.blocks??[],{type:"document_table",title:a.title,rows:a.rows}];return{...t,blocks:o}})),requestAnimationFrame(()=>v())):a.type==="document_card"?(f(u=>u.map(t=>{if(t.id!==p)return t;const o=[...t.blocks??[],{type:"document_card",documentId:a.documentId,title:a.title,path:a.path,preview:a.preview}];return{...t,blocks:o}})),requestAnimationFrame(()=>v())):a.type==="tool_notice"?(f(u=>u.map(t=>{if(t.id!==p)return t;const o=[...t.blocks??[],{type:"tool_notice",toolName:a.toolName,text:a.text}];return{...t,blocks:o}})),requestAnimationFrame(()=>v())):a.type==="choice_card"?(f(u=>u.map(t=>{if(t.id!==p)return t;const o=[...t.blocks??[],{type:"choice_card",requestId:a.requestId,title:a.title,options:a.options,expiresAt:a.expiresAt,status:"open"}];return{...t,blocks:o}})),requestAnimationFrame(()=>v())):a.type==="choice_expired"?f(u=>u.map(t=>t.id!==p||!t.blocks?t:{...t,blocks:t.blocks.map(o=>o.type==="choice_card"&&o.requestId===a.requestId&&o.status==="open"?{...o,status:"expired"}:o)})):a.type==="skill_form_card"?(f(u=>u.map(t=>{if(t.id!==p)return t;const o=[...t.blocks??[],{type:"skill_form_card",requestId:a.requestId,mode:a.mode,title:a.title,currentName:a.currentName,initialName:a.initialName,initialDescription:a.initialDescription,initialBody:a.initialBody,expiresAt:a.expiresAt,status:"open"}];return{...t,blocks:o}})),requestAnimationFrame(()=>v())):a.type==="skill_form_expired"?f(u=>u.map(t=>t.id!==p||!t.blocks?t:{...t,blocks:t.blocks.map(o=>o.type==="skill_form_card"&&o.requestId===a.requestId&&o.status==="open"?{...o,status:"expired"}:o)})):a.type==="tree_changed"?C==null||C():a.type==="document_overwritten"?S==null||S({documentId:a.documentId,headCommitId:a.headCommitId}):a.type==="open_coding"?w==null||w({documentId:a.documentId,displayName:a.displayName}):a.type==="context_usage"?Z({percent:a.percent,used:a.used,limit:a.limit}):a.type==="error"&&(j=!0,_(a.message))}}),!i.signal.aborted&&!j&&Q([])}catch(j){if(i.signal.aborted)return;_(j instanceof Error?j.message:String(j))}finally{$.current===i&&($.current=null),L(!1)}}async function he(){var s;if(!b){(s=$.current)==null||s.abort(),_(null),g(!1),L(!1);try{const m=await ke();D(m.sessionId),f([]),B(""),T.current=!0,O()}catch(m){_(m instanceof Error?m.message:String(m))}}}async function fe(s){var m;if(!b){if(s===q){g(!1);return}(m=$.current)==null||m.abort(),_(null);try{const i=await be(s);D(i.sessionId),f(re(i.sessionId,i.messages)),B(""),g(!1),T.current=!0,requestAnimationFrame(()=>v()),O()}catch(i){_(i instanceof Error?i.message:String(i))}}}function te(s){!s||!y||y(s)}if(!n)return null;const ne=U??(c&&!c.enabled?c.reason==="missing_api_key"?"未配置 API Key:请打开设置 → AI":c.reason==="skills_missing"?"skills 未就绪":"助手暂不可用":null);return e.jsxs("div",{ref:de,className:"mdocs-agent-panel",role:"dialog","aria-label":"mdocs 智能助手",style:N,children:[e.jsxs("header",{className:"mdocs-agent-panel-header",children:[e.jsxs("div",{className:"mdocs-agent-panel-title",children:[e.jsx("img",{src:ae,alt:"",className:"mdocs-agent-panel-title-logo"}),e.jsx("span",{children:"mdocs 智能助手"})]}),e.jsxs("div",{className:"mdocs-agent-panel-actions",children:[e.jsx("button",{type:"button",className:"mdocs-agent-panel-icon-btn",title:"新会话","aria-label":"新会话",disabled:b,onClick:()=>void he(),children:e.jsx(_e,{size:16,strokeWidth:1.8})}),e.jsx("button",{type:"button",className:"mdocs-agent-panel-icon-btn"+(I?" active":""),title:"历史会话","aria-label":"历史会话",onClick:()=>g(s=>!s),children:e.jsx(ve,{size:16,strokeWidth:1.8})}),e.jsx("button",{type:"button",className:"mdocs-agent-panel-icon-btn",title:"关闭","aria-label":"关闭",onClick:l,children:e.jsx(ye,{size:16,strokeWidth:1.8})})]})]}),I?e.jsxs("div",{className:"mdocs-agent-panel-history",children:[e.jsxs("div",{className:"mdocs-agent-panel-history-head",children:[e.jsx("span",{children:"历史会话"}),e.jsx("button",{type:"button",className:"mdocs-agent-panel-history-back",onClick:()=>g(!1),children:"返回对话"})]}),oe?e.jsx("p",{className:"mdocs-agent-panel-history-hint",children:"加载中…"}):z.length===0?e.jsxs(e.Fragment,{children:[e.jsx("p",{className:"mdocs-agent-panel-history-empty",children:"暂无历史会话"}),e.jsx("p",{className:"mdocs-agent-panel-history-hint",children:"发一条消息后会出现在这里"})]}):e.jsx("ul",{className:"mdocs-agent-panel-history-list",children:z.map(s=>e.jsx("li",{children:e.jsxs("button",{type:"button",className:"mdocs-agent-panel-history-item"+(s.id===q?" active":""),disabled:b,onClick:()=>void fe(s.id),children:[e.jsx("span",{className:"mdocs-agent-panel-history-title",children:s.title}),e.jsx("span",{className:"mdocs-agent-panel-history-time",children:Fe(s.updatedAt)})]})},s.id))})]}):e.jsxs("div",{className:"mdocs-agent-panel-body",children:[e.jsx("div",{className:"mdocs-agent-panel-welcome",ref:W,onScroll:me,children:k.length===0?e.jsxs(e.Fragment,{children:[e.jsx("p",{className:"mdocs-agent-panel-hello",children:"你好,我是 mdocs 智能助手"}),e.jsx("p",{className:"mdocs-agent-panel-desc",children:"我能答疑、搜文档、整理结构,也能帮你写全文;需要精细改稿请点文档顶栏「帮写」。"}),ne?e.jsx("p",{className:"mdocs-agent-panel-status-warn",children:ne}):e.jsx("div",{className:"mdocs-agent-panel-chips",children:Me.map(s=>e.jsx("button",{type:"button",className:"mdocs-agent-panel-chip",onClick:()=>void G(s),disabled:b||!(c!=null&&c.enabled),children:s},s))})]}):e.jsx("div",{className:"mdocs-agent-panel-messages",children:k.map(s=>{var m;return e.jsxs("div",{className:"mdocs-agent-panel-msg"+(s.role==="user"?" mdocs-agent-panel-msg-user":" mdocs-agent-panel-msg-assistant"),children:[s.role==="assistant"?e.jsx("div",{className:"mdocs-agent-panel-avatar mdocs-agent-panel-avatar-ai","aria-hidden":!0,children:e.jsx("img",{src:ae,alt:""})}):null,e.jsxs("div",{className:"mdocs-agent-panel-msg-bubble",children:[s.role==="user"&&s.skillNames&&s.skillNames.length>0?e.jsxs("div",{className:"mdocs-agent-msg-skills",children:["Skill ×",s.skillNames.length]}):null,s.role==="assistant"?s.blocks&&s.blocks.length>0?e.jsxs("div",{className:"mdocs-agent-panel-timeline",children:[s.blocks.map((i,A)=>i.type==="text"?i.text?e.jsx("div",{className:"mdocs-agent-panel-block",children:e.jsx(ie,{children:i.text})},`${s.id}-t-${A}`):null:i.type==="sources"?i.items.length===0?null:e.jsx("div",{className:"mdocs-agent-panel-block",children:e.jsxs("details",{className:"mdocs-agent-panel-tool-fold",children:[e.jsxs("summary",{children:["已阅读 ",i.items.length," 个页面"]}),e.jsx("ol",{className:"mdocs-agent-panel-sources-list",children:i.items.map(p=>e.jsx("li",{children:e.jsx("a",{href:p.url,target:"_blank",rel:"noreferrer",children:p.name})},p.id))})]})},`${s.id}-s-${A}`):i.type==="tool_notice"?e.jsx("div",{className:"mdocs-agent-panel-block",children:e.jsx("p",{className:"mdocs-agent-panel-tool-notice",children:i.text})},`${s.id}-n-${A}`):i.type==="choice_card"?e.jsx("div",{className:"mdocs-agent-panel-block",children:e.jsx(Te,{block:i,onResolved:(p,R,j)=>{f(a=>a.map(u=>u.id!==s.id||!u.blocks?u:{...u,blocks:u.blocks.map(t=>t.type==="choice_card"&&t.requestId===p?{...t,status:j,selected:j==="selected"?R:t.selected}:t)}))}})},`${s.id}-ch-${A}`):i.type==="skill_form_card"?e.jsx("div",{className:"mdocs-agent-panel-block",children:e.jsx(Ae,{block:i,onResolved:(p,R,j)=>{f(a=>a.map(u=>u.id!==s.id||!u.blocks?u:{...u,blocks:u.blocks.map(t=>t.type==="skill_form_card"&&t.requestId===p?{...t,status:R,submittedName:R==="submitted"?j:t.submittedName}:t)}))}})},`${s.id}-sf-${A}`):i.type==="document_card"?e.jsx("div",{className:"mdocs-agent-panel-block",children:e.jsxs("details",{className:"mdocs-agent-panel-tool-fold",children:[e.jsxs("summary",{children:[e.jsxs("button",{type:"button",className:"mdocs-agent-panel-doc-link",onClick:p=>{p.preventDefault(),p.stopPropagation(),te(i.documentId)},children:["《",i.title,"》"]}),e.jsx("span",{className:"mdocs-agent-panel-tool-fold-hint",children:"文档预览"})]}),e.jsxs("div",{className:"mdocs-agent-panel-doc-card-body",children:[i.path?e.jsx("p",{className:"mdocs-agent-panel-doc-card-path",children:i.path}):null,i.preview?e.jsx("p",{className:"mdocs-agent-panel-doc-card-preview",children:i.preview}):e.jsx("p",{className:"mdocs-agent-panel-doc-card-preview muted",children:"(无正文预览)"})]})]})},`${s.id}-c-${A}`):e.jsx("div",{className:"mdocs-agent-panel-block",children:e.jsxs("details",{className:"mdocs-agent-panel-tool-fold",children:[e.jsxs("summary",{children:[i.title,e.jsx("span",{className:"mdocs-agent-panel-tool-fold-hint",children:i.rows.length===0?"无结果":`${i.rows.length} 条`})]}),e.jsx("div",{className:"mdocs-agent-panel-doc-table-wrap",children:i.rows.length===0?e.jsx("p",{className:"mdocs-agent-panel-doc-table-empty",children:"无结果"}):e.jsxs("table",{className:"mdocs-agent-panel-doc-table",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{children:"文章名字"}),e.jsx("th",{children:"文章内容"})]})}),e.jsx("tbody",{children:i.rows.map(p=>e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("button",{type:"button",className:"mdocs-agent-panel-doc-link",onClick:()=>te(p.documentId),children:p.title})}),e.jsx("td",{children:p.summary||"-"})]},p.documentId))})]})})]})},`${s.id}-d-${A}`)),b&&s.id===((m=k[k.length-1])==null?void 0:m.id)&&!le(s.blocks)?e.jsxs("span",{className:"mdocs-agent-panel-thinking","aria-label":"思考中",children:[e.jsx("span",{}),e.jsx("span",{}),e.jsx("span",{})]}):null]}):s.content?e.jsx(ie,{children:s.content}):b?e.jsxs("span",{className:"mdocs-agent-panel-thinking","aria-label":"思考中",children:[e.jsx("span",{}),e.jsx("span",{}),e.jsx("span",{})]}):null:s.content]}),s.role==="user"?e.jsx("div",{className:"mdocs-agent-panel-avatar mdocs-agent-panel-avatar-user","aria-hidden":!0,children:M}):null]},s.id)})})}),V?e.jsx("p",{className:"mdocs-agent-panel-status-warn",children:V}):null,e.jsx(Ce,{selectedNames:F,onChange:Q,disabled:b||!(c!=null&&c.enabled)}),e.jsxs("div",{className:"mdocs-agent-panel-input-wrap",children:[e.jsx("textarea",{className:"mdocs-agent-panel-input",rows:2,placeholder:c!=null&&c.enabled?"把你的问题告诉我…":"请先配置 API Key",value:P,disabled:b||!(c!=null&&c.enabled),onChange:s=>B(s.target.value),onKeyDown:s=>{s.key==="Enter"&&!s.shiftKey&&(s.preventDefault(),G(P))}}),K?e.jsx(Pe,{percent:K.percent,used:K.used,limit:K.limit}):null,e.jsx("button",{type:"button",className:"mdocs-agent-panel-send",disabled:b||!(c!=null&&c.enabled)||!P.trim(),onClick:()=>void G(P),title:"发送",children:"↑"})]}),e.jsx("p",{className:"mdocs-agent-panel-footnote",children:"内容由 AI 生成,仅供参考"})]})]})}export{Ge as AgentChatPanel};
@@ -1,6 +0,0 @@
1
- import{c as I,Z as L,al as q,am as D}from"./index-czw0A2GN.js";import{r as a,j as e}from"./react-vendor-BNpqFP9B.js";/**
2
- * @license lucide-react v0.562.0 - ISC
3
- *
4
- * This source code is licensed under the ISC license.
5
- * See the LICENSE file in the root directory of this source tree.
6
- */const _=[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}],["path",{d:"M12 7v5l4 2",key:"1fdv2h"}]],z=I("history",_),j=5;function H(i){const t=a.useRef(!0),m=a.useRef(null),[o,x]=a.useState([]),[d,f]=a.useState(!1),[u,k]=a.useState(null);a.useEffect(()=>(t.current=!0,()=>{t.current=!1}),[]),a.useEffect(()=>{(async()=>{try{const s=await L();if(!t.current)return;x(s)}catch(s){if(!t.current)return;k(s instanceof Error?s.message:String(s))}})()},[]),a.useEffect(()=>{if(!d)return;function s(r){const g=m.current;!g||g.contains(r.target)||f(!1)}function n(r){r.key==="Escape"&&f(!1)}return document.addEventListener("mousedown",s),document.addEventListener("keydown",n),()=>{document.removeEventListener("mousedown",s),document.removeEventListener("keydown",n)}},[d]);const c=o.filter(s=>i.selectedNames.includes(s.name));function p(s){if(i.disabled)return;const n=new Set(i.selectedNames);if(n.has(s))n.delete(s);else{if(n.size>=j)return;n.add(s)}i.onChange([...n])}return o.length===0&&!u?null:e.jsxs("div",{className:"mdocs-agent-skill-ref",ref:m,children:[e.jsxs("div",{className:"mdocs-agent-skill-ref-bar",children:[e.jsxs("div",{className:"mdocs-agent-skill-ref-anchor",children:[d&&o.length>0?e.jsxs("div",{className:"mdocs-agent-skill-popover",role:"listbox","aria-label":"选择 Skill",children:[e.jsxs("div",{className:"mdocs-agent-skill-popover-hint",children:["选择要引用的 Skill(最多 ",j," 个)"]}),e.jsx("ul",{className:"mdocs-agent-skill-popover-list",children:o.map(s=>{const n=i.selectedNames.includes(s.name),r=!n&&i.selectedNames.length>=j;return e.jsx("li",{children:e.jsxs("button",{type:"button",role:"option","aria-selected":n,className:"mdocs-agent-skill-popover-item"+(n?" mdocs-agent-skill-popover-item-on":""),disabled:i.disabled||r,onClick:()=>p(s.name),children:[e.jsx("span",{className:"mdocs-agent-skill-popover-check","aria-hidden":!0,children:n?"✓":""}),e.jsxs("span",{className:"mdocs-agent-skill-popover-text",children:[e.jsx("span",{className:"mdocs-agent-skill-popover-name",children:s.name}),s.description?e.jsx("span",{className:"mdocs-agent-skill-popover-desc",children:s.description}):e.jsx("span",{className:"mdocs-agent-skill-popover-desc mdocs-agent-skill-popover-desc-muted",children:"无简介"})]})]})},s.id)})})]}):null,e.jsxs("button",{type:"button",className:"mdocs-agent-skill-ref-toggle"+(d?" mdocs-agent-skill-ref-toggle-open":""),disabled:i.disabled||o.length===0,onClick:()=>f(s=>!s),"aria-expanded":d,"aria-haspopup":"listbox",title:"引用 Skill",children:["Skill",c.length>0?` · ${c.length}`:""]})]}),c.map(s=>e.jsxs("button",{type:"button",className:"mdocs-agent-skill-chip mdocs-agent-skill-chip-on",disabled:i.disabled,onClick:()=>p(s.name),title:"移除引用",children:[s.name,e.jsx("span",{"aria-hidden":!0,children:" ×"})]},s.name))]}),u?e.jsx("p",{className:"mdocs-agent-panel-status-warn",children:u}):null]})}const B=/^[A-Za-z0-9_]+$/;function O(i){const{block:t,onResolved:m}=i,[o,x]=a.useState(t.initialName),[d,f]=a.useState(t.initialDescription),[u,k]=a.useState(t.initialBody),[c,p]=a.useState(!1),[s,n]=a.useState(null),[r,g]=a.useState(1),v=a.useRef(!1),N=a.useRef(m);N.current=m;const h=t.status==="open",b=a.useRef(0);a.useEffect(()=>{if(!h)return;v.current=!1;const l=new Date(t.expiresAt).getTime(),A=Date.now(),y=Math.max(l-A,1);b.current=y,g(1);const S=()=>{const w=l-Date.now(),C=Math.max(0,Math.min(1,w/y));g(C),w<=0&&!v.current&&(v.current=!0,q(t.requestId).catch(()=>{}).finally(()=>{N.current(t.requestId,"expired")}))};S();const M=window.setInterval(S,100);return()=>window.clearInterval(M)},[h,t.expiresAt,t.requestId]);async function E(){if(c||!h)return;const l=o.trim();if(!l){n("名称不能为空");return}if(!B.test(l)){n("名称仅允许英文、数字、下划线");return}if(!u.trim()){n("正文不能为空");return}p(!0),n(null);try{await D(t.requestId,{name:l,description:d.trim(),body:u}),m(t.requestId,"submitted",l)}catch{m(t.requestId,"failed")}finally{p(!1)}}const R=Math.max(0,Math.ceil(r*b.current/1e3));return e.jsxs("div",{className:"mdocs-agent-choice-card mdocs-agent-skill-form-card"+(h?"":" mdocs-agent-choice-card-done"),children:[e.jsxs("div",{className:"mdocs-agent-choice-head",children:[e.jsx("p",{className:"mdocs-agent-choice-title",children:t.title}),h?e.jsxs("span",{className:"mdocs-agent-choice-timer","aria-live":"polite",children:[R,"s"]}):null]}),h?e.jsx("div",{className:"mdocs-agent-choice-progress",role:"progressbar","aria-valuemin":0,"aria-valuemax":100,"aria-valuenow":Math.round(r*100),children:e.jsx("div",{className:"mdocs-agent-choice-progress-bar",style:{transform:`scaleX(${r})`}})}):null,t.status==="submitted"?e.jsxs("p",{className:"mdocs-agent-choice-result",children:["已提交",t.submittedName?`:${t.submittedName}`:""]}):null,t.status==="expired"?e.jsx("p",{className:"mdocs-agent-choice-result muted",children:"已超时,表单已失效"}):null,t.status==="failed"?e.jsx("p",{className:"mdocs-agent-choice-result muted",children:"提交失败或已失效"}):null,h?e.jsxs("div",{className:"mdocs-agent-skill-form-fields",children:[e.jsxs("label",{className:"mdocs-agent-skill-form-field",children:[e.jsx("span",{children:"名称(英文数字下划线)"}),e.jsx("input",{type:"text",value:o,onChange:l=>x(l.target.value),maxLength:64,disabled:c,autoComplete:"off",spellCheck:!1})]}),e.jsxs("label",{className:"mdocs-agent-skill-form-field",children:[e.jsx("span",{children:"简介"}),e.jsx("input",{type:"text",value:d,onChange:l=>f(l.target.value),maxLength:200,disabled:c})]}),e.jsxs("label",{className:"mdocs-agent-skill-form-field",children:[e.jsx("span",{children:"正文"}),e.jsx("textarea",{value:u,onChange:l=>k(l.target.value),rows:8,disabled:c})]}),s?e.jsx("p",{className:"mdocs-agent-skill-form-error",children:s}):null,e.jsx("div",{className:"mdocs-agent-skill-form-actions",children:e.jsx("button",{type:"button",disabled:c,onClick:()=>void E(),children:c?"提交中…":t.mode==="create"?"创建":"保存"})})]}):null]})}export{H as A,z as H,O as S};
@@ -1,6 +0,0 @@
1
- import{r as h,j as e}from"./react-vendor-BNpqFP9B.js";import{aa as se,ab as ie,i as ae,ae as le,ak as oe,af as re,ag as ce,ah as de}from"./index-czw0A2GN.js";import{H as ue,S as me,A as he}from"./AgentSkillFormCard-DcKxyiAV.js";import{P as fe}from"./plus-9njZDkAU.js";import{M as ge,r as xe}from"./ui-C3xtW1w8.js";import"./motion-D-I76zAi.js";function T(t){return t===""?[]:t.split(`
2
- `)}function X(t){return t.join(`
3
- `)}function K(t,i){const s=T(t),c=T(i),d=s.length,g=c.length,j=Array.from({length:d+1},()=>Array.from({length:g+1},()=>0));for(let w=d-1;w>=0;w--)for(let N=g-1;N>=0;N--)s[w]===c[N]?j[w][N]=j[w+1][N+1]+1:j[w][N]=Math.max(j[w+1][N],j[w][N+1]);const r=[];let p=0,f=0;for(;p<d||f<g;)if(p<d&&f<g&&s[p]===c[f])r.push({kind:"eq",oi:p,ni:f}),p++,f++;else if(f<g&&(p===d||j[p][f+1]>=j[p+1][f]))r.push({kind:"ins",oi:p,ni:f}),f++;else if(p<d)r.push({kind:"del",oi:p,ni:f}),p++;else break;const C=[];let k=0,D=0;for(;k<r.length;){if(r[k].kind==="eq"){k++;continue}const w=r[k].oi,N=r[k].ni,P=[],v=[];let o=w,x=N;for(;k<r.length&&r[k].kind!=="eq";){const y=r[k];y.kind==="del"?(P.push(s[y.oi]),o=y.oi+1):(v.push(c[y.ni]),x=y.ni+1),k++}C.push({id:`h${D++}`,oldStart:w,oldEnd:o,newStart:N,newEnd:x,oldLines:P,newLines:v})}return C}function ke(t,i){const s=T(t);return X([...s.slice(0,i.oldStart),...i.newLines,...s.slice(i.oldEnd)])}function pe(t,i){const s=T(t);return X([...s.slice(0,i.newStart),...i.oldLines,...s.slice(i.newEnd)])}function ye(t){return t===""?[]:t.split(`
4
- `)}function je(t,i){const s=ye(t),c=[];let d=0;return i.forEach((g,j)=>{g.oldStart>d&&c.push({kind:"same",lines:s.slice(d,g.oldStart),key:`s-${d}-${g.oldStart}`}),c.push({kind:"hunk",hunk:g,hunkIndex:j,key:`h-${g.id}-${j}`}),d=g.oldEnd}),d<s.length?c.push({kind:"same",lines:s.slice(d),key:`s-${d}-end`}):i.length===0&&s.length===0&&c.push({kind:"same",lines:[],key:"s-empty"}),c}function we(t){return t.oldLines.length===0?"add":t.newLines.length===0?"del":"mod"}function Ne(t){const[i,s]=h.useState(!1),[c,d]=h.useState(0),[g,j]=h.useState(null),r=h.useMemo(()=>t.proposedMd==null||t.proposedMd===t.currentMd?[]:K(t.currentMd,t.proposedMd),[t.currentMd,t.proposedMd]),p=h.useMemo(()=>je(t.currentMd,r),[t.currentMd,r]);h.useEffect(()=>{if(r.length===0){d(0);return}d(o=>Math.min(o,r.length-1))},[r.length]);const f=!i&&r.length>0,C=g??c;function k(o){const x=ke(t.currentMd,o);t.onCurrentChange(x),t.proposedMd!=null&&K(x,t.proposedMd).length===0&&t.onProposedChange(null)}function D(o){if(t.proposedMd==null)return;const x=pe(t.proposedMd,o);x===t.currentMd?t.onProposedChange(null):t.onProposedChange(x)}function w(){t.proposedMd!=null&&(t.onCurrentChange(t.proposedMd),t.onProposedChange(null))}function N(){t.onProposedChange(null)}function P(o){r.length!==0&&d(x=>{const y=(x+o+r.length)%r.length,A=document.getElementById(`mdocs-ai-hunk-${y}`);return A==null||A.scrollIntoView({block:"center",behavior:"smooth"}),y})}const v=r[C]??null;return e.jsxs("div",{className:"mdocs-ai-write-md-pane",children:[e.jsxs("div",{className:"mdocs-ai-write-diff-toolbar",children:[e.jsx("span",{className:"mdocs-ai-write-diff-count",children:r.length===0?i||!t.proposedMd?"Markdown 源码(可编辑)":"与提案一致":`${r.length} 处变更`}),r.length>0?e.jsxs(e.Fragment,{children:[e.jsx("button",{type:"button",onClick:w,children:"全部接受"}),e.jsx("button",{type:"button",onClick:N,children:"全部拒绝"})]}):null,e.jsx("button",{type:"button",className:i?"active":"",onClick:()=>s(o=>!o),children:i?"回到 diff":"纯编辑"})]}),f?e.jsxs("div",{className:"mdocs-ai-write-inline",role:"document",children:[p.map(o=>{if(o.kind==="same")return e.jsx("pre",{className:"mdocs-ai-write-inline-same",children:o.lines.map((I,b)=>e.jsxs("div",{className:"mdocs-ai-write-line ctx",children:[e.jsx("span",{className:"mdocs-ai-write-rail","aria-hidden":!0}),e.jsx("span",{className:"mdocs-ai-write-code",children:I||" "})]},b))},o.key);const x=o.hunk,y=we(x),A=o.hunkIndex===C;return e.jsxs("div",{id:`mdocs-ai-hunk-${o.hunkIndex}`,className:`mdocs-ai-write-inline-hunk mdocs-ai-write-inline-hunk-${y}`+(A?" is-active":""),onMouseEnter:()=>j(o.hunkIndex),onMouseLeave:()=>j(null),onClick:()=>d(o.hunkIndex),children:[e.jsxs("div",{className:"mdocs-ai-write-hunk-hover",hidden:g!==o.hunkIndex,children:[e.jsx("button",{type:"button",className:"mdocs-ai-write-hunk-reject",onClick:I=>{I.stopPropagation(),D(x)},children:"拒绝"}),e.jsx("button",{type:"button",className:"mdocs-ai-write-hunk-accept",onClick:I=>{I.stopPropagation(),k(x)},children:"接受"})]}),e.jsxs("pre",{className:"mdocs-ai-write-hunk-pre",children:[x.oldLines.map((I,b)=>e.jsxs("div",{className:"mdocs-ai-write-line del",children:[e.jsx("span",{className:"mdocs-ai-write-rail","aria-hidden":!0}),e.jsx("span",{className:"mdocs-ai-write-code",children:I||" "})]},`o${b}`)),x.newLines.map((I,b)=>e.jsxs("div",{className:"mdocs-ai-write-line add",children:[e.jsx("span",{className:"mdocs-ai-write-rail","aria-hidden":!0}),e.jsx("span",{className:"mdocs-ai-write-code",children:I||" "})]},`n${b}`))]})]},o.key)}),v?e.jsxs("div",{className:"mdocs-ai-write-float-nav",role:"toolbar","aria-label":"变更导航",children:[e.jsx("button",{type:"button","aria-label":"上一段",onClick:()=>P(-1),children:"↑"}),e.jsxs("span",{children:[C+1," / ",r.length]}),e.jsx("button",{type:"button","aria-label":"下一段",onClick:()=>P(1),children:"↓"}),e.jsx("button",{type:"button",className:"mdocs-ai-write-hunk-reject",onClick:()=>D(v),children:"拒绝"}),e.jsx("button",{type:"button",className:"mdocs-ai-write-hunk-accept",onClick:()=>k(v),children:"接受"})]}):null]}):e.jsx("textarea",{className:"mdocs-ai-write-editor",value:t.currentMd,onChange:o=>t.onCurrentChange(o.target.value),spellCheck:!1,placeholder:`# 标题
5
-
6
- 在此编辑 Markdown 源码…`})]})}let U=0;function J(t){return U+=1,`${t}-${Date.now()}-${U}`}function be(t,i){const s=t.slice(),c=s[s.length-1];return(c==null?void 0:c.type)==="text"?s[s.length-1]={type:"text",text:c.text+i}:s.push({type:"text",text:i}),s}function R(t,i){const s=i.trim();return s?[...t,{type:"tool",text:s}]:t}function Se(t){return t.some(i=>i.type==="text"?i.text.length>0:!0)}function Ce(t){const i=new Date(t);if(Number.isNaN(i.getTime()))return"";const s=new Date;return i.getFullYear()===s.getFullYear()&&i.getMonth()===s.getMonth()&&i.getDate()===s.getDate()?i.toLocaleTimeString(void 0,{hour:"2-digit",minute:"2-digit"}):i.toLocaleDateString(void 0,{month:"2-digit",day:"2-digit"})}function Q(t,i){return i.map((s,c)=>{const d=`h-${t}-${c}-${s.role}`;if(s.role==="user"){const g=s.skillNames&&s.skillNames.length>0?s.skillNames:s.skillIds&&s.skillIds.length>0?s.skillIds:void 0;return{id:d,role:"user",content:s.content,skillNames:g}}return{id:d,role:"assistant",blocks:s.content?[{type:"text",text:s.content}]:[]}})}function Le(t){const[i,s]=h.useState(t.initialMarkdown),[c,d]=h.useState(null),[g]=h.useState(t.initialMarkdown),[j,r]=h.useState(t.displayName||"未命名"),[p,f]=h.useState([]),[C,k]=h.useState(null),[D,w]=h.useState([]),[N,P]=h.useState(!1),[v,o]=h.useState(!1),[x,y]=h.useState(""),[A,I]=h.useState([]),[b,B]=h.useState(!1),[S,O]=h.useState(null),[z,$]=h.useState(null),[W,V]=h.useState(!1),L=h.useRef(null);async function q(){P(!0);try{const n=await le("coding",t.documentId);w(n.sessions),C||k(n.lastOpenedSessionId)}catch{}finally{P(!1)}}if(h.useEffect(()=>{var u;if(!t.open){o(!1),(u=L.current)==null||u.abort();return}s(t.initialMarkdown),d(null),r(t.displayName||"未命名"),y(""),$(null),o(!1);let n=!1;return(async()=>{try{const a=await se();n||O(a)}catch{n||O({enabled:!1,skillsReady:!1,model:null})}try{const a=await ie("coding",t.documentId);if(n)return;k(a.sessionId),f(Q(a.sessionId,a.messages))}catch{n||(k(null),f([]))}q()})(),()=>{n=!0}},[t.open,t.initialMarkdown,t.displayName,t.documentId]),h.useEffect(()=>()=>{var n;return(n=L.current)==null?void 0:n.abort()},[]),h.useEffect(()=>{t.open&&v&&q()},[v,t.open,t.documentId]),!t.open)return null;const Y=c!=null&&c!==i?K(i,c):[];async function Z(){var n;if(!b){(n=L.current)==null||n.abort(),$(null),o(!1),B(!1);try{const u=await re("coding",t.documentId);k(u.sessionId),f([]),y(""),q()}catch(u){$(u instanceof Error?u.message:String(u))}}}async function ee(n){var u;if(!b){if(n===C){o(!1);return}(u=L.current)==null||u.abort(),$(null);try{const a=await ce(n,"coding",t.documentId);k(a.sessionId),f(Q(a.sessionId,a.messages)),y(""),o(!1)}catch(a){$(a instanceof Error?a.message:String(a))}}}async function G(){var F;const n=x.trim();if(!n||b)return;if(!(S!=null&&S.enabled)){$("请先在设置 → AI 配置 API Key");return}(F=L.current)==null||F.abort();const u=new AbortController;L.current=u;const a=J("u"),_=J("a");f(M=>[...M,{id:a,role:"user",content:n,skillNames:A.length>0?[...A]:void 0},{id:_,role:"assistant",blocks:[]}]),y(""),B(!0),$(null);const E=M=>{f(l=>l.map(m=>m.id===_&&m.role==="assistant"?{...m,blocks:M(m.blocks)}:m))};try{let M=!1;await de(n,{mode:"coding",skillNames:A.length>0?A:void 0,documentId:t.documentId,workingMarkdown:i,baseMarkdown:g,signal:u.signal,onEvent:l=>{l.type==="text_delta"?E(m=>be(m,l.text)):l.type==="markdown_set"?d(l.markdown):l.type==="tool_notice"?E(m=>R(m,l.text)):l.type==="document_table"?E(m=>R(m,l.title)):l.type==="document_card"?E(m=>R(m,`读取文档「${l.title}」`)):l.type==="sources"?l.items.length>0&&E(m=>R(m,`已阅读 ${l.items.length} 个手册页面`)):l.type==="skill_form_card"?E(m=>[...m,{type:"skill_form_card",requestId:l.requestId,mode:l.mode,title:l.title,currentName:l.currentName,initialName:l.initialName,initialDescription:l.initialDescription,initialBody:l.initialBody,expiresAt:l.expiresAt,status:"open"}]):l.type==="skill_form_expired"?E(m=>m.map(H=>H.type==="skill_form_card"&&H.requestId===l.requestId&&H.status==="open"?{...H,status:"expired"}:H)):l.type==="error"&&(M=!0,$(l.message))}}),!u.signal.aborted&&!M&&I([]),q()}catch(M){u.signal.aborted||$(M instanceof Error?M.message:String(M))}finally{L.current===u&&(L.current=null),B(!1)}}async function te(){let n=i;if(Y.length>0){if(!window.confirm(`还有 ${Y.length} 段未审阅,将全部接受后写回。继续?`))return;n=c??i,s(n),d(null)}V(!0);const u=!t.documentId;try{const a=await t.onComplete({markdown:n,documentId:t.documentId,displayName:j.trim()||"未命名"}),_=a&&typeof a=="object"&&typeof a.documentId=="string"?a.documentId.trim():"";if(u&&_&&C)try{await oe(C,_)}catch{}t.onClose()}catch(a){if(a!=null&&a.silent||a instanceof Error&&a.message==="cancelled")return;$(a instanceof Error?a.message:String(a))}finally{V(!1)}}function ne(){var n;(i!==g||c!=null)&&!window.confirm("取消帮写?未写回的修改将丢失。")||((n=L.current)==null||n.abort(),t.onClose())}return e.jsxs("div",{className:"mdocs-ai-write-overlay",role:"dialog","aria-modal":"true","aria-label":"帮写",children:[e.jsxs("header",{className:"mdocs-ai-write-header",children:[e.jsxs("div",{className:"mdocs-ai-write-header-left",children:[e.jsx("img",{src:ae,alt:"",className:"mdocs-ai-write-title-logo"}),e.jsx("strong",{children:"帮写"}),e.jsx("input",{className:"mdocs-ai-write-title",value:j,onChange:n=>r(n.target.value),"aria-label":"文档标题"})]}),e.jsxs("div",{className:"mdocs-ai-write-header-actions",children:[e.jsx("button",{type:"button",onClick:ne,disabled:W,children:"取消"}),e.jsx("button",{type:"button",className:"mdocs-ai-write-primary",onClick:()=>void te(),disabled:W,children:W?"写回中…":"完成并写回"})]})]}),e.jsxs("div",{className:"mdocs-ai-write-body",children:[e.jsxs("section",{className:"mdocs-ai-write-chat",children:[e.jsxs("div",{className:"mdocs-ai-write-chat-toolbar",children:[e.jsx("span",{className:"mdocs-ai-write-chat-toolbar-label",children:"对话"}),e.jsxs("div",{className:"mdocs-ai-write-chat-toolbar-actions",children:[e.jsx("button",{type:"button",className:"mdocs-agent-panel-icon-btn",title:"新会话","aria-label":"新会话",disabled:b,onClick:()=>void Z(),children:e.jsx(fe,{size:16,strokeWidth:1.8})}),e.jsx("button",{type:"button",className:"mdocs-agent-panel-icon-btn"+(v?" active":""),title:"历史会话","aria-label":"历史会话",onClick:()=>o(n=>!n),children:e.jsx(ue,{size:16,strokeWidth:1.8})})]})]}),v?e.jsxs("div",{className:"mdocs-ai-write-history mdocs-agent-panel-history",children:[e.jsxs("div",{className:"mdocs-agent-panel-history-head",children:[e.jsx("span",{children:"历史会话"}),e.jsx("button",{type:"button",className:"mdocs-agent-panel-history-back",onClick:()=>o(!1),children:"返回对话"})]}),N?e.jsx("p",{className:"mdocs-agent-panel-history-hint",children:"加载中…"}):D.length===0?e.jsxs(e.Fragment,{children:[e.jsx("p",{className:"mdocs-agent-panel-history-empty",children:"暂无历史会话"}),e.jsx("p",{className:"mdocs-agent-panel-history-hint",children:"发一条消息后会出现在这里"})]}):e.jsx("ul",{className:"mdocs-agent-panel-history-list",children:D.map(n=>e.jsx("li",{children:e.jsxs("button",{type:"button",className:"mdocs-agent-panel-history-item"+(n.id===C?" active":""),disabled:b,onClick:()=>void ee(n.id),children:[e.jsx("span",{className:"mdocs-agent-panel-history-title",children:n.title}),e.jsx("span",{className:"mdocs-agent-panel-history-time",children:Ce(n.updatedAt)})]})},n.id))})]}):e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"mdocs-ai-write-chat-messages",children:p.length===0?e.jsx("p",{className:"mdocs-ai-write-hint",children:"描述你想写或改的内容。助手可读取右侧当前稿与进场快照,再更新提案;请按段接受或拒绝后完成写回。"}):p.map(n=>e.jsx("div",{className:"mdocs-ai-write-msg"+(n.role==="user"?" mdocs-ai-write-msg-user":""),children:n.role==="user"?e.jsxs(e.Fragment,{children:[n.skillNames&&n.skillNames.length>0?e.jsxs("div",{className:"mdocs-agent-msg-skills",children:["Skill ×",n.skillNames.length]}):null,n.content]}):Se(n.blocks)?e.jsx("div",{className:"mdocs-ai-write-timeline",children:n.blocks.map((u,a)=>u.type==="tool"?e.jsx("p",{className:"mdocs-agent-panel-tool-notice",children:u.text},`${n.id}-tool-${a}`):u.type==="skill_form_card"?e.jsx(me,{block:u,onResolved:(_,E,F)=>{f(M=>M.map(l=>l.id!==n.id||l.role!=="assistant"?l:{...l,blocks:l.blocks.map(m=>m.type==="skill_form_card"&&m.requestId===_?{...m,status:E,submittedName:E==="submitted"?F:m.submittedName}:m)}))}},`${n.id}-sf-${a}`):u.text?e.jsx("div",{className:"mdocs-agent-panel-md",children:e.jsx(ge,{remarkPlugins:[xe],children:u.text})},`${n.id}-text-${a}`):null)}):b?e.jsxs("span",{className:"mdocs-agent-panel-thinking","aria-label":"思考中",children:[e.jsx("span",{}),e.jsx("span",{}),e.jsx("span",{})]}):null},n.id))}),z?e.jsx("p",{className:"mdocs-ai-write-error",children:z}):null,e.jsxs("div",{className:"mdocs-ai-write-input-row",children:[e.jsxs("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:6},children:[e.jsx(he,{selectedNames:A,onChange:I,disabled:b||!(S!=null&&S.enabled)}),e.jsx("textarea",{rows:2,value:x,disabled:b||!(S!=null&&S.enabled),placeholder:S!=null&&S.enabled?"说说要写什么…":"请先配置 API Key",onChange:n=>y(n.target.value),onKeyDown:n=>{n.key==="Enter"&&!n.shiftKey&&(n.preventDefault(),G())}})]}),e.jsx("button",{type:"button",disabled:b||!(S!=null&&S.enabled),onClick:()=>void G(),children:"发送"})]})]})]}),e.jsx(Ne,{currentMd:i,proposedMd:c,onCurrentChange:s,onProposedChange:d})]})]})}export{Le as AiWriteWorkbench};