diff --git a/README.md b/README.md
index 682fd75..79fe367 100644
--- a/README.md
+++ b/README.md
@@ -78,6 +78,12 @@ We now cover the entire workflow lifecycle, including generation, debugging, rew
- Among the 4 workflows returned above, when you select one and click Accept, it will be imported into the ComfyUI canvas. At this time, you can click the Debug button to start debugging.
- There is a Debug button in the upper right corner of the input box. Click it to directly debug the workflow on the current canvas.
+ - If a missing model is identified, it will automatically prompt you to download the model.
+
+
- 3. 💎 **Unsatisfied with Previous Workflow Results?**: Tell us what you're not satisfied with, and let us help you modify the workflow, add nodes, modify parameters, and optimize workflow structure.
- Type in the input box: Help me add xxx to the current canvas.
diff --git a/README_CN.md b/README_CN.md
index 9a7b446..3b3a125 100644
--- a/README_CN.md
+++ b/README_CN.md
@@ -72,6 +72,12 @@ https://github.com/user-attachments/assets/17f8e822-e852-47fc-8dcb-0471526b099e
- 上方返回的4个工作流里,当您选中了一个点击Accept后,会导入ComfyUI的画布中。此时您可以点击Debug按钮,开始调整错误。
- 输入框右上角有一个Debug按钮,点击后直接对当前的画布上的工作流进行Debug。
+ - 如果识别出来工作流缺失了模型,会自动提示您下载模型。
+
+
- 3. 💎 **之前的工作流生图效果不满意?**:提出您不满意的地方,让我们帮您修改工作流,增加节点,修改参数,优化工作流结构。
- 在输入框输入:帮我在当前的画布上添加一个xxxx。
diff --git a/assets/Debug模型下载.jpg b/assets/Debug模型下载.jpg
new file mode 100644
index 0000000..fb3f7a1
Binary files /dev/null and b/assets/Debug模型下载.jpg differ
diff --git a/assets/模型下载.jpg b/assets/模型下载.jpg
new file mode 100644
index 0000000..871cbc2
Binary files /dev/null and b/assets/模型下载.jpg differ
diff --git a/dist/copilot_web/App-CYW-EISV.js b/dist/copilot_web/App-B2vxI6V6.js
similarity index 87%
rename from dist/copilot_web/App-CYW-EISV.js
rename to dist/copilot_web/App-B2vxI6V6.js
index 9e18466..cb4fa78 100644
--- a/dist/copilot_web/App-CYW-EISV.js
+++ b/dist/copilot_web/App-B2vxI6V6.js
@@ -1,7 +1,7 @@
function getImportPath(filename) {
return `./${filename}`;
}
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["copilot_web/workflowChat-BNBkmC9s.js","copilot_web/vendor-markdown-B4Av9P7l.js","copilot_web/vendor-react-ByKzdfMq.js","copilot_web/message-components-DSee13I8.js","copilot_web/input.js","copilot_web/assets/input-vDlPdcfE.css","copilot_web/fonts.css"].map(path => {
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["copilot_web/workflowChat-CINeZ3b-.js","copilot_web/vendor-markdown-B4Av9P7l.js","copilot_web/vendor-react-ByKzdfMq.js","copilot_web/message-components-DKU8exdb.js","copilot_web/input.js","copilot_web/assets/input-vDlPdcfE.css","copilot_web/fonts.css"].map(path => {
const apiBase = window.comfyAPI?.api?.api?.api_base;
if (apiBase) {
// 有 API base 时,使用完整路径
@@ -11,4 +11,4 @@ function getImportPath(filename) {
return `./${path}`;
}
}))))=>i.map(i=>d[i]);
-import{_ as a}from"./input.js";import{j as o}from"./vendor-markdown-B4Av9P7l.js";import{r as t,R as i}from"./vendor-react-ByKzdfMq.js";import{C as n}from"./message-components-DSee13I8.js";const s={EXPLAIN_NODE:"copilot:explain-node",TOOLBOX_USAGE:"copilot:toolbox-usage",TOOLBOX_PARAMETERS:"copilot:toolbox-parameters",TOOLBOX_DOWNSTREAMNODES:"copilot:toolbox-downstreamnodes"},d=i.lazy(()=>a(()=>import(getImportPath("workflowChat-BNBkmC9s.js")).then(e=>e.w),__vite__mapDeps([0,1,2,3,4,5,6])).then(e=>({default:e.default})));function c(){const[e,r]=t.useState(!1);return t.useEffect(()=>{const l=()=>{r(!0)};return window.addEventListener(s.EXPLAIN_NODE,l),()=>window.removeEventListener(s.EXPLAIN_NODE,l)},[]),o.jsx(n,{children:o.jsx("div",{className:"h-full w-full flex flex-col",children:o.jsx(t.Suspense,{fallback:o.jsx("div",{className:"h-full w-full flex items-center justify-center",children:"Loading..."}),children:o.jsx(d,{visible:!0,triggerUsage:e,onUsageTriggered:()=>r(!1)})})})})}const O=Object.freeze(Object.defineProperty({__proto__:null,default:c},Symbol.toStringTag,{value:"Module"}));export{O as A,s as C};
+import{_ as a}from"./input.js";import{j as o}from"./vendor-markdown-B4Av9P7l.js";import{r as t,R as i}from"./vendor-react-ByKzdfMq.js";import{C as n}from"./message-components-DKU8exdb.js";const s={EXPLAIN_NODE:"copilot:explain-node",TOOLBOX_USAGE:"copilot:toolbox-usage",TOOLBOX_PARAMETERS:"copilot:toolbox-parameters",TOOLBOX_DOWNSTREAMNODES:"copilot:toolbox-downstreamnodes"},d=i.lazy(()=>a(()=>import(getImportPath("workflowChat-CINeZ3b-.js")).then(e=>e.w),__vite__mapDeps([0,1,2,3,4,5,6])).then(e=>({default:e.default})));function c(){const[e,r]=t.useState(!1);return t.useEffect(()=>{const l=()=>{r(!0)};return window.addEventListener(s.EXPLAIN_NODE,l),()=>window.removeEventListener(s.EXPLAIN_NODE,l)},[]),o.jsx(n,{children:o.jsx("div",{className:"h-full w-full flex flex-col",children:o.jsx(t.Suspense,{fallback:o.jsx("div",{className:"h-full w-full flex items-center justify-center",children:"Loading..."}),children:o.jsx(d,{visible:!0,triggerUsage:e,onUsageTriggered:()=>r(!1)})})})})}const O=Object.freeze(Object.defineProperty({__proto__:null,default:c},Symbol.toStringTag,{value:"Module"}));export{O as A,s as C};
diff --git a/dist/copilot_web/DebugGuide-4fz9A050.js b/dist/copilot_web/DebugGuide-4fz9A050.js
new file mode 100644
index 0000000..3e1d862
--- /dev/null
+++ b/dist/copilot_web/DebugGuide-4fz9A050.js
@@ -0,0 +1,5 @@
+function getImportPath(filename) {
+ return `./${filename}`;
+ }
+ import{j as s}from"./vendor-markdown-B4Av9P7l.js";import{r as i}from"./vendor-react-ByKzdfMq.js";import{u as A,n as E,R as D,m,W as f,a as b}from"./message-components-DKU8exdb.js";function P({content:h,name:k="Assistant",avatar:O,onAddMessage:y,onUpdateMessage:c,messageId:_}){const{dispatch:u,abortControllerRef:l}=A(),[d,w]=i.useState(!1),[T,G]=i.useState(""),[J,S]=i.useState(!1),[j,v]=i.useState(null),r=i.useMemo(()=>{try{return JSON.parse(h)}catch(e){return console.error("Failed to parse message content:",e),null}},[h]),x=i.useMemo(()=>{if(!r||!r.ext)return null;const e=r.ext.find(t=>t.type==="debug_start_checkpoint"||t.type==="debug_checkpoint"&&t.data?.checkpoint_type==="debug_start");return e&&e.data&&e.data.checkpoint_id?e.data.checkpoint_id:null},[r])||j,N=async()=>{if(d)return;const e=m(),t={id:e,role:"ai",content:JSON.stringify({text:`🔍 Starting workflow analysis...
+`,ext:[]}),format:"markdown",name:"Assistant",finished:!1,debugGuide:!0};y?.(t);try{f.trackEvent({event_type:"debug_trigger",message_type:"debug",message_id:e,data:{}}),await C(),u({type:"SET_LOADING",payload:!0}),await I(e)}finally{w(!1)}},C=async()=>{try{const e=await b.graphToPrompt(),t=localStorage.getItem("sessionId")||"";if(t&&e){const n=await f.saveWorkflowCheckpoint(t,e.output,e.workflow,"debug_start");if(v(n.version_id),console.log(`Saved debug start checkpoint: ${n.version_id}`),c&&r){const o=[...r.ext||[]].filter(g=>g.type!=="debug_start_checkpoint"&&!(g.type==="debug_checkpoint"&&g.data?.checkpoint_type==="debug_start"));o.push({type:"debug_start_checkpoint",data:{checkpoint_id:n.version_id,checkpoint_type:"debug_start"}});const p={id:_||m(),role:"ai",content:JSON.stringify({text:r.text,ext:o}),format:"debug_guide",name:"Assistant"};c(p)}}}catch(e){console.error("Failed to save checkpoint before debug:",e)}},I=async e=>{try{const t=await b.graphToPrompt();let n="",a=null;l&&(l.current=new AbortController);for await(const o of f.streamDebugAgent(t,l?.current?.signal||void 0))if(o.text){n=o.text,o.ext&&(a=o.ext);const p={id:e,role:"ai",content:JSON.stringify({text:n,ext:a||[]}),format:"markdown",name:"Assistant",finished:!1,debugGuide:!0};c?.(p)}c?.({id:e,role:"ai",content:JSON.stringify({text:n,ext:a||[]}),format:"markdown",name:"Assistant",finished:!0,debugGuide:!0}),u({type:"SET_LOADING",payload:!1}),l.current=null}catch(t){console.error("Error calling debug agent:",t),S(!1);const a={id:e,role:"ai",content:JSON.stringify({text:`I encountered an error while analyzing your workflow: ${t.message||"Unknown error"}`,ext:[]}),format:"markdown",name:"Assistant",finished:!0};c?.(a),u({type:"SET_LOADING",payload:!1}),l.current=null}};return r?s.jsx(E,{name:k,children:s.jsxs("div",{className:"bg-gray-100 pt-4 px-4 pb-3 rounded-lg",children:[s.jsx("div",{className:"flex justify-between items-start",children:s.jsx("p",{className:"text-gray-700 text-sm flex-1",children:r.text})}),s.jsx("div",{className:"flex justify-end mt-4",children:s.jsx("button",{onClick:N,disabled:d,className:`debug-btn bg-debug-btn text-sm text-[#fff] rounded-lg px-4 py-2 ${d?"cursor-not-allowed":"cursor-pointer"}`,children:d?"Analyzing...":"Debug Errors"})}),s.jsx("div",{className:"flex justify-end mt-2",children:!!x&&s.jsx("div",{className:"ml-2 flex-shrink-0",children:s.jsx(D,{checkpointId:x,onRestore:()=>{console.log("Workflow restored from checkpoint")}})})})]})}):null}export{P as DebugGuide};
diff --git a/dist/copilot_web/DebugGuide-DYh7AEsz.js b/dist/copilot_web/DebugGuide-DYh7AEsz.js
deleted file mode 100644
index 031f63d..0000000
--- a/dist/copilot_web/DebugGuide-DYh7AEsz.js
+++ /dev/null
@@ -1,5 +0,0 @@
-function getImportPath(filename) {
- return `./${filename}`;
- }
- import{j as s}from"./vendor-markdown-B4Av9P7l.js";import{r as i}from"./vendor-react-ByKzdfMq.js";import{u as A,n as D,R as E,m as x,a as m,W as b}from"./message-components-DSee13I8.js";function P({content:f,name:k="Assistant",avatar:O,onAddMessage:y,onUpdateMessage:c,messageId:w}){const{dispatch:u,abortControllerRef:l}=A(),[d,_]=i.useState(!1),[T,G]=i.useState(""),[J,S]=i.useState(!1),[j,N]=i.useState(null),r=i.useMemo(()=>{try{return JSON.parse(f)}catch(e){return console.error("Failed to parse message content:",e),null}},[f]),h=i.useMemo(()=>{if(!r||!r.ext)return null;const e=r.ext.find(t=>t.type==="debug_start_checkpoint"||t.type==="debug_checkpoint"&&t.data?.checkpoint_type==="debug_start");return e&&e.data&&e.data.checkpoint_id?e.data.checkpoint_id:null},[r])||j,C=async()=>{if(d)return;const e=x(),t={id:e,role:"ai",content:JSON.stringify({text:`🔍 Starting workflow analysis...
-`,ext:[]}),format:"markdown",name:"Assistant",finished:!1,debugGuide:!0};y?.(t);try{await v(),u({type:"SET_LOADING",payload:!0}),await I(e)}finally{_(!1)}},v=async()=>{try{const e=await m.graphToPrompt(),t=localStorage.getItem("sessionId")||"";if(t&&e){const n=await b.saveWorkflowCheckpoint(t,e.output,e.workflow,"debug_start");if(N(n.version_id),console.log(`Saved debug start checkpoint: ${n.version_id}`),c&&r){const o=[...r.ext||[]].filter(g=>g.type!=="debug_start_checkpoint"&&!(g.type==="debug_checkpoint"&&g.data?.checkpoint_type==="debug_start"));o.push({type:"debug_start_checkpoint",data:{checkpoint_id:n.version_id,checkpoint_type:"debug_start"}});const p={id:w||x(),role:"ai",content:JSON.stringify({text:r.text,ext:o}),format:"debug_guide",name:"Assistant"};c(p)}}}catch(e){console.error("Failed to save checkpoint before debug:",e)}},I=async e=>{try{const t=await m.graphToPrompt();let n="",a=null;l&&(l.current=new AbortController);for await(const o of b.streamDebugAgent(t,l?.current?.signal||void 0))if(o.text){n=o.text,o.ext&&(a=o.ext);const p={id:e,role:"ai",content:JSON.stringify({text:n,ext:a||[]}),format:"markdown",name:"Assistant",finished:!1,debugGuide:!0};c?.(p)}c?.({id:e,role:"ai",content:JSON.stringify({text:n,ext:a||[]}),format:"markdown",name:"Assistant",finished:!0,debugGuide:!0}),u({type:"SET_LOADING",payload:!1}),l.current=null}catch(t){console.error("Error calling debug agent:",t),S(!1);const a={id:e,role:"ai",content:JSON.stringify({text:`I encountered an error while analyzing your workflow: ${t.message||"Unknown error"}`,ext:[]}),format:"markdown",name:"Assistant",finished:!0};c?.(a),u({type:"SET_LOADING",payload:!1}),l.current=null}};return r?s.jsx(D,{name:k,children:s.jsxs("div",{className:"bg-gray-100 pt-4 px-4 pb-3 rounded-lg",children:[s.jsx("div",{className:"flex justify-between items-start",children:s.jsx("p",{className:"text-gray-700 text-sm flex-1",children:r.text})}),s.jsx("div",{className:"flex justify-end mt-4",children:s.jsx("button",{onClick:C,disabled:d,className:`debug-btn bg-debug-btn text-sm text-[#fff] rounded-lg px-4 py-2 ${d?"cursor-not-allowed":"cursor-pointer"}`,children:d?"Analyzing...":"Debug Errors"})}),s.jsx("div",{className:"flex justify-end mt-2",children:!!h&&s.jsx("div",{className:"ml-2 flex-shrink-0",children:s.jsx(E,{checkpointId:h,onRestore:()=>{console.log("Workflow restored from checkpoint")}})})})]})}):null}export{P as DebugGuide};
diff --git a/dist/copilot_web/DebugResult-BSo0JDsU.js b/dist/copilot_web/DebugResult-lTdIiQ16.js
similarity index 95%
rename from dist/copilot_web/DebugResult-BSo0JDsU.js
rename to dist/copilot_web/DebugResult-lTdIiQ16.js
index a659eb5..636c204 100644
--- a/dist/copilot_web/DebugResult-BSo0JDsU.js
+++ b/dist/copilot_web/DebugResult-lTdIiQ16.js
@@ -1,4 +1,4 @@
function getImportPath(filename) {
return `./${filename}`;
}
- import{j as e}from"./vendor-markdown-B4Av9P7l.js";import{b as u,c as w,n as g,A as k,R as j}from"./message-components-DSee13I8.js";import{r as p}from"./vendor-react-ByKzdfMq.js";import{B as v,M as N}from"./workflowChat-BNBkmC9s.js";import"./input.js";/* empty css */import"./App-CYW-EISV.js";const y=n=>{const{title:a="",isWorkflowUpdate:f=!1,className:d="",children:c}=n,[i,r]=p.useState(!1);return e.jsx(v,{className:"rounded-lg ",borderClassName:"rounded-lg",children:e.jsxs("div",{className:`flex flex-col ${d} ${i?"":"max-h-[200px]"}`,children:[e.jsxs("div",{className:"flex justify-between items-center pb-2 border-b border-gray-100",children:[e.jsx("div",{children:typeof a=="string"?e.jsx("h3",{className:"text-sm text-[#fff] font-medium",children:a}):a}),e.jsx("button",{onClick:()=>{r(!i)},children:i?e.jsx(u,{className:"text-gray-700"}):e.jsx(w,{className:"text-gray-700"})})]}),e.jsx("div",{className:"overflow-hidden flex-1",children:c})]})})};function E({content:n,name:a="Assistant",avatar:f,format:d="markdown"}){const c=p.useRef(null),i=()=>{let r=null,l=!1,o,x=[];try{if(o=JSON.parse(n),o.ext){let t=o.ext.find(s=>s.type==="workflow_rewrite_checkpoint"||s.type==="debug_checkpoint"&&s.data?.checkpoint_type==="workflow_rewrite_start");t&&t.data&&t.data.checkpoint_id?(r=t.data.checkpoint_id,l=!0):(t=o.ext.find(s=>s.type==="workflow_rewrite_complete"),t&&t.data&&t.data.version_id?(r=t.data.version_id,l=!0):(t=o.ext.find(s=>s.type==="debug_checkpoint"),t&&t.data&&t.data.checkpoint_id&&(r=t.data.checkpoint_id,l=!1))),o.ext.find(s=>s.type==="workflow_update")&&(l=!0),x=o.ext.find(s=>s.type==="param_update")?.data?.model_suggest||[]}}catch(t){return console.error("Failed to parse DebugResult content:",t),null}const h=l?e.jsxs("div",{className:"flex items-center text-green-500",children:[e.jsx("svg",{className:"w-5 h-5 mr-2",fill:"currentColor",viewBox:"0 0 20 20",children:e.jsx("path",{fillRule:"evenodd",d:"M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z",clipRule:"evenodd"})}),e.jsx("h4",{className:"font-bold text-xl",children:"Workflow Updated Successfully"})]}):e.jsxs("div",{className:"flex items-center text-gray-900",children:[e.jsx("svg",{className:"w-5 h-5 mr-2",viewBox:"0 0 1024 1024",version:"1.1",xmlns:"http://www.w3.org/2000/svg","p-id":"28108",fill:"currentColor",children:e.jsx("path",{d:"M401.048025 844.855924c0 20.341281 16.643052 36.984333 36.984333 36.984333l147.936307 0c20.341281 0 36.984333-16.643052 36.984333-36.984333L622.952998 807.872614 401.048025 807.872614 401.048025 844.855924zM512 142.159744c-142.943596 0-258.888282 115.944686-258.888282 258.888282 0 88.021729 44.011376 165.503405 110.951975 212.288964l0 83.58365c0 20.341281 16.643052 36.984333 36.984333 36.984333l221.903949 0c20.341281 0 36.984333-16.643052 36.984333-36.984333l0-83.58365c66.941622-46.784536 110.951975-124.266212 110.951975-212.288964C770.888282 258.104429 654.943596 142.159744 512 142.159744zM617.588827 552.682561l-31.621185 22.005176 0 85.248569L438.031335 659.936307l0-85.063351L406.41015 552.866756c-49.743938-34.764781-79.33079-91.350544-79.33079-151.634536 0-101.890598 83.029018-184.92064 184.92064-184.92064s184.92064 83.029018 184.92064 184.92064C696.919617 461.332017 667.332764 517.91778 617.588827 552.682561z","p-id":"28277"})}),e.jsx("h4",{className:"font-bold text-xl",children:"Workflow Updated Finished"})]}),m=l?e.jsx("div",{className:"mt-3 text-xs text-gray-700",children:"💡 If you're not satisfied with the changes, click the restore button to revert to the previous version."}):null;return e.jsxs("div",{ref:c,className:"sticky top-0 left-0 w-full bg-gray-100 p-4 rounded-lg overflow-hidden",children:[e.jsx(y,{title:h,isWorkflowUpdate:l,className:"p-4",children:e.jsxs("div",{className:"prose prose-sm max-w-none",children:[d==="markdown"?e.jsx(k,{response:o||{}}):e.jsx("pre",{className:"whitespace-pre-wrap text-gray-700 text-sm leading-relaxed h-full",children:o?.text||""}),m]})}),x?.length>0&&e.jsx(N,{modelSuggests:x,showPagination:!1}),e.jsx("div",{className:"flex justify-end mt-2",children:!!r&&e.jsx("div",{className:"ml-2 flex-shrink-0",children:e.jsx(j,{checkpointId:r,onRestore:()=>{console.log(`Workflow restored from ${l?"workflow update":"debug"} checkpoint`)},title:l?`Restore to this version (Version ${r})`:`Restore checkpoint ${r}`})})})]})};return e.jsx(g,{name:a,children:i()})}export{E as DebugResult};
+ import{j as e}from"./vendor-markdown-B4Av9P7l.js";import{b as u,c as w,n as g,A as k,R as j}from"./message-components-DKU8exdb.js";import{r as p}from"./vendor-react-ByKzdfMq.js";import{B as v,M as N}from"./workflowChat-CINeZ3b-.js";import"./input.js";/* empty css */import"./App-B2vxI6V6.js";const y=n=>{const{title:a="",isWorkflowUpdate:f=!1,className:d="",children:c}=n,[i,r]=p.useState(!1);return e.jsx(v,{className:"rounded-lg ",borderClassName:"rounded-lg",children:e.jsxs("div",{className:`flex flex-col ${d} ${i?"":"max-h-[200px]"}`,children:[e.jsxs("div",{className:"flex justify-between items-center pb-2 border-b border-gray-100",children:[e.jsx("div",{children:typeof a=="string"?e.jsx("h3",{className:"text-sm text-[#fff] font-medium",children:a}):a}),e.jsx("button",{onClick:()=>{r(!i)},children:i?e.jsx(u,{className:"text-gray-700"}):e.jsx(w,{className:"text-gray-700"})})]}),e.jsx("div",{className:"overflow-hidden flex-1",children:c})]})})};function E({content:n,name:a="Assistant",avatar:f,format:d="markdown"}){const c=p.useRef(null),i=()=>{let r=null,l=!1,o,x=[];try{if(o=JSON.parse(n),o.ext){let t=o.ext.find(s=>s.type==="workflow_rewrite_checkpoint"||s.type==="debug_checkpoint"&&s.data?.checkpoint_type==="workflow_rewrite_start");t&&t.data&&t.data.checkpoint_id?(r=t.data.checkpoint_id,l=!0):(t=o.ext.find(s=>s.type==="workflow_rewrite_complete"),t&&t.data&&t.data.version_id?(r=t.data.version_id,l=!0):(t=o.ext.find(s=>s.type==="debug_checkpoint"),t&&t.data&&t.data.checkpoint_id&&(r=t.data.checkpoint_id,l=!1))),o.ext.find(s=>s.type==="workflow_update")&&(l=!0),x=o.ext.find(s=>s.type==="param_update")?.data?.model_suggest||[]}}catch(t){return console.error("Failed to parse DebugResult content:",t),null}const h=l?e.jsxs("div",{className:"flex items-center text-green-500",children:[e.jsx("svg",{className:"w-5 h-5 mr-2",fill:"currentColor",viewBox:"0 0 20 20",children:e.jsx("path",{fillRule:"evenodd",d:"M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z",clipRule:"evenodd"})}),e.jsx("h4",{className:"font-bold text-xl",children:"Workflow Updated Successfully"})]}):e.jsxs("div",{className:"flex items-center text-gray-900",children:[e.jsx("svg",{className:"w-5 h-5 mr-2",viewBox:"0 0 1024 1024",version:"1.1",xmlns:"http://www.w3.org/2000/svg","p-id":"28108",fill:"currentColor",children:e.jsx("path",{d:"M401.048025 844.855924c0 20.341281 16.643052 36.984333 36.984333 36.984333l147.936307 0c20.341281 0 36.984333-16.643052 36.984333-36.984333L622.952998 807.872614 401.048025 807.872614 401.048025 844.855924zM512 142.159744c-142.943596 0-258.888282 115.944686-258.888282 258.888282 0 88.021729 44.011376 165.503405 110.951975 212.288964l0 83.58365c0 20.341281 16.643052 36.984333 36.984333 36.984333l221.903949 0c20.341281 0 36.984333-16.643052 36.984333-36.984333l0-83.58365c66.941622-46.784536 110.951975-124.266212 110.951975-212.288964C770.888282 258.104429 654.943596 142.159744 512 142.159744zM617.588827 552.682561l-31.621185 22.005176 0 85.248569L438.031335 659.936307l0-85.063351L406.41015 552.866756c-49.743938-34.764781-79.33079-91.350544-79.33079-151.634536 0-101.890598 83.029018-184.92064 184.92064-184.92064s184.92064 83.029018 184.92064 184.92064C696.919617 461.332017 667.332764 517.91778 617.588827 552.682561z","p-id":"28277"})}),e.jsx("h4",{className:"font-bold text-xl",children:"Workflow Updated Finished"})]}),m=l?e.jsx("div",{className:"mt-3 text-xs text-gray-700",children:"💡 If you're not satisfied with the changes, click the restore button to revert to the previous version."}):null;return e.jsxs("div",{ref:c,className:"sticky top-0 left-0 w-full bg-gray-100 p-4 rounded-lg overflow-hidden",children:[e.jsx(y,{title:h,isWorkflowUpdate:l,className:"p-4",children:e.jsxs("div",{className:"prose prose-sm max-w-none",children:[d==="markdown"?e.jsx(k,{response:o||{}}):e.jsx("pre",{className:"whitespace-pre-wrap text-gray-700 text-sm leading-relaxed h-full",children:o?.text||""}),m]})}),x?.length>0&&e.jsx(N,{modelSuggests:x,showPagination:!1}),e.jsx("div",{className:"flex justify-end mt-2",children:!!r&&e.jsx("div",{className:"ml-2 flex-shrink-0",children:e.jsx(j,{checkpointId:r,onRestore:()=>{console.log(`Workflow restored from ${l?"workflow update":"debug"} checkpoint`)},title:l?`Restore to this version (Version ${r})`:`Restore checkpoint ${r}`})})})]})};return e.jsx(g,{name:a,children:i()})}export{E as DebugResult};
diff --git a/dist/copilot_web/WorkflowOption-CwCU0Sam.js b/dist/copilot_web/WorkflowOption-COpoDKLZ.js
similarity index 98%
rename from dist/copilot_web/WorkflowOption-CwCU0Sam.js
rename to dist/copilot_web/WorkflowOption-COpoDKLZ.js
index b921f2b..7569270 100644
--- a/dist/copilot_web/WorkflowOption-CwCU0Sam.js
+++ b/dist/copilot_web/WorkflowOption-COpoDKLZ.js
@@ -1,4 +1,4 @@
function getImportPath(filename) {
return `./${filename}`;
}
- import{j as s}from"./vendor-markdown-B4Av9P7l.js";import{z as J,W as _,m as z,a as d}from"./message-components-DSee13I8.js";import{r as h}from"./vendor-react-ByKzdfMq.js";function U({content:v,name:P="Assistant",avatar:R,latestInput:N,installedNodes:C,onAddMessage:y}){const[f,g]=h.useState({}),[A,W]=h.useState(null),[b,M]=h.useState([]);h.useEffect(()=>{const e=JSON.parse(v);W(e),M(e.ext?.find(a=>a.type==="workflow")?.data||[])},[v]);const E=async e=>{if(!e.id){console.error("No workflow id provided");return}const a=String(e.id);if(!f[a]){g(o=>({...o,[a]:!0})),_.trackEvent({event_type:"workflow_accept",message_type:"workflow",message_id:A?.message_id,data:{workflow_id:e.id,workflow_name:e.name}});try{const o=await _.getOptimizedWorkflow(e.id,N);if(o.workflow){const i=new Set;if(o.workflow.nodes)for(const t of o.workflow.nodes)i.add(t.type);else for(const t of Object.values(o.workflow))i.add(t.class_type);const l=Array.from(i).filter(t=>!C.includes(t));if(console.log("[WorkflowOption] Missing node types:",l),l.length>0){try{console.log("[WorkflowOption] Fetching info for missing nodes");const t=await _.batchGetNodeInfo(l);console.log("[WorkflowOption] Received node infos:",t);const p={text:"",ext:[{type:"node_install_guide",data:t.map(r=>({name:r.name,repository_url:r.github_url}))}]},c={id:z(),role:"ai",content:JSON.stringify(p),format:"markdown",name:"Assistant",metadata:{pendingWorkflow:o.workflow,optimizedParams:o.optimized_params}};y?.(c)}catch(t){console.error("[WorkflowOption] Error fetching node info:",t),alert("Error checking required nodes. Please try again.")}finally{g(t=>({...t,[a]:!1}))}return}I(o.workflow,o.optimized_params)}}catch(o){console.error("Failed to optimize workflow:",o),alert("Failed to optimize workflow. Please try again.")}finally{g(o=>({...o,[a]:!1}))}}},I=(e,a)=>{if(e.nodes)d.loadGraphData(e);else{d.loadApiJson(e);const i=Object.keys(e),l=Object.keys(d.graph._nodes_by_id)[0],t=d.graph._nodes_by_id[l],p=t?t.pos[0]:0,c=t?t.pos[1]:0,r=250,m=60,S=20,F=60,j=50,H=1e3;let k=p,x=c,w=0;for(const q of i){const n=d.graph._nodes_by_id[q];if(n){w>H&&(k+=r+F,w=0,x=c);const L=n.inputs?n.inputs.length:0,V=n.outputs?n.outputs.length:0,B=n.widgets?n.widgets.length:0,G=Math.max(L,V)+B,u=S*G+m;n.size[0]=r,n.size[1]=u,n.pos[0]=k,n.pos[1]=x,w+=u+j,x+=u+j}}}for(const[i,l,t,p,c]of a){const r=d.graph._nodes_by_id[i].widgets;for(const m of r)m.name===p&&(m.value=c)}d.graph.setDirtyCanvas(!1,!0);const o={id:z(),role:"tool",content:JSON.stringify({text:"The workflow has been successfully loaded to the canvas",ext:[]}),format:"markdown",name:"Assistant"};y?.(o)},O=(e,a)=>{const o=e.id?String(e.id):"",i=e?.source==="AI Generated";return s.jsxs("div",{className:`relative flex flex-col items-center gap-4 p-2 rounded-lg border ${i?"shadow-[0_0_12px_2px_#3b82f6] shadow-[0_0_0_4px_rgba(59,130,246,0.15)]":"border-gray-200"} hover:bg-gray-50`,children:[i&&s.jsx("div",{className:"absolute left-1/2 top-[-12px] -translate-x-1/2 rounded-lg flex bg-white",children:s.jsxs("svg",{t:"1752667348457",class:"icon",viewBox:"0 0 1024 1024",version:"1.1",xmlns:"http://www.w3.org/2000/svg","p-id":"25237",width:"24",height:"24",children:[s.jsx("path",{d:"M938.656 256A170.656 170.656 0 0 0 768 85.344H256A170.656 170.656 0 0 0 85.344 256v512A170.656 170.656 0 0 0 256 938.656h512A170.656 170.656 0 0 0 938.656 768V256zM256 170.656h512l6.368 0.256A85.344 85.344 0 0 1 853.312 256v512l-0.224 6.4A85.344 85.344 0 0 1 768 853.312H256l-6.336-0.256A85.344 85.344 0 0 1 170.656 768V256l0.224-6.368A85.344 85.344 0 0 1 256 170.656z","p-id":"25238",fill:"#1296db"}),s.jsx("path",{d:"M633.12 718.464h-95.392l-34.368-95.68h-160.288l-34.336 95.68H213.344l154.56-419.808h110.656l154.56 419.808z m-209.888-333.888l-61.056 177.696h120.192l-59.136-177.696z","p-id":"25239",fill:"#1296db"}),s.jsx("path",{d:"M682.656 298.656m0 0l85.344 0q0 0 0 0l0 426.656q0 0 0 0l-85.344 0q0 0 0 0l0-426.656q0 0 0 0Z","p-id":"25240",fill:"#1296db"})]})}),s.jsxs("div",{className:"flex flex-row",children:[s.jsx("h3",{className:"flex-1 font-medium text-sm line-clamp-2 break-all h-10 overflow-hidden",children:e.name}),s.jsx("div",{className:"flex items-start",children:e.description&&s.jsx(J,{arrow:!1,placement:"top",title:s.jsx("div",{className:"bg-gray-900 text-white text-xs rounded-md py-2 px-3 min-w-[400px] whitespace-normal break-words",children:e.description}),children:s.jsx("div",{className:"w-5 h-5 flex items-center justify-center text-gray-500 cursor-help",children:s.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor",className:"w-4 h-4",children:s.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M9.879 7.519c1.171-1.025 3.071-1.025 4.242 0 1.172 1.025 1.172 2.687 0 3.712-.203.179-.43.326-.67.442-.745.361-1.45.999-1.45 1.827v.75M21 12a9 9 0 11-18 0 9 9 0 0118 0zm-9 5.25h.008v.008H12v-.008z"})})})})})]}),s.jsx("div",{className:"aspect-[3/4] rounded-lg overflow-hidden flex-1 w-full",children:e.image?s.jsx("img",{src:e.image,alt:e.name,className:"w-full h-full object-cover",onError:l=>{const t=l.target;t.onerror=null,t.src="data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='56' height='56' viewBox='0 0 56 56' fill='none'%3E%3Crect width='56' height='56' fill='%23F3F4F6'/%3E%3Cpath d='M28 28C30.2091 28 32 26.2091 32 24C32 21.7909 30.2091 20 28 20C25.7909 20 24 21.7909 24 24C24 26.2091 25.7909 28 28 28Z' fill='%239CA3AF'/%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M18.7253 37.6307C19.8278 35.1533 22.6897 33.6 26 33.6H30C33.3103 33.6 36.1722 35.1533 37.2747 37.6307C37.6419 38.4561 37.0611 39.2 36.1694 39.2H19.8306C18.9389 39.2 18.3581 38.4561 18.7253 37.6307Z' fill='%239CA3AF'/%3E%3C/svg%3E"}}):s.jsx("div",{className:"w-full h-full flex items-center justify-center",children:s.jsxs("svg",{t:"1753686018498",class:"icon",viewBox:"0 0 1026 1024",version:"1.1",xmlns:"http://www.w3.org/2000/svg","p-id":"1875",width:"98",height:"98",children:[s.jsx("path",{d:"M0.003166 0v1024h1024V0H0.003166z m962.692789 61.286783v566.902743l-120.857537-118.426494-186.638683 137.466255-287.435012-237.138993L61.28995 705.410873V61.286783h901.406005zM61.28995 962.692788v-172.195431l309.661685-298.34406 282.164349 232.746773 183.104479-134.89221 126.49592 123.962734v248.722194H61.28995z",fill:"#8a8a8a","p-id":"1876"}),s.jsx("path",{d:"M757.03794 397.199641h0.960159c63.411392 0 118.263062-53.605506 119.733945-117.057756 1.470883-63.901686-51.337895-119.958663-115.321296-122.410134l-4.330933-0.081716c-31.011112 0-61.817935 13.1358-84.555332 36.016199-22.635252 22.819112-35.505476 53.666793-35.301187 84.616619 0.490294 63.942544 54.892529 118.406065 118.814644 118.916788z m-39.999841-160.346653a59.570753 59.570753 0 0 1 42.900748-17.875312h0.143003c30.214384 1.164449 57.098853 29.621945 56.38384 59.734184-0.694584 30.47996-28.00806 57.200998-58.447162 57.200998v30.643391l-0.449436-30.643391c-30.132668-0.245147-57.773007-27.926344-57.997726-58.079442-0.122574-14.749686 6.230823-29.683232 17.466733-40.980428z",fill:"#8a8a8a","p-id":"1877"})]})})}),s.jsx("button",{onClick:()=>E(e),disabled:f[o],className:`w-full px-3 py-1 ${f[o]?"bg-[#d2d2d2] cursor-not-allowed":"bg-[#ffffff] hover:bg-[#eee]"} text-black rounded-lg text-xs`,children:f[o]?"Loading...":"Accept"})]},a)};return s.jsx("div",{className:"space-y-3 flex justify-center",children:b.length>0&&s.jsx("div",{className:"grid grid-cols-[repeat(auto-fill,minmax(120px,1fr))] gap-4",children:b.map((e,a)=>O(e,a))})})}export{U as WorkflowOption};
+ import{j as s}from"./vendor-markdown-B4Av9P7l.js";import{z as J,W as _,m as z,a as d}from"./message-components-DKU8exdb.js";import{r as h}from"./vendor-react-ByKzdfMq.js";function U({content:v,name:P="Assistant",avatar:R,latestInput:N,installedNodes:C,onAddMessage:y}){const[f,g]=h.useState({}),[A,W]=h.useState(null),[b,M]=h.useState([]);h.useEffect(()=>{const e=JSON.parse(v);W(e),M(e.ext?.find(a=>a.type==="workflow")?.data||[])},[v]);const E=async e=>{if(!e.id){console.error("No workflow id provided");return}const a=String(e.id);if(!f[a]){g(o=>({...o,[a]:!0})),_.trackEvent({event_type:"workflow_accept",message_type:"workflow",message_id:A?.message_id,data:{workflow_id:e.id,workflow_name:e.name}});try{const o=await _.getOptimizedWorkflow(e.id,N);if(o.workflow){const i=new Set;if(o.workflow.nodes)for(const t of o.workflow.nodes)i.add(t.type);else for(const t of Object.values(o.workflow))i.add(t.class_type);const l=Array.from(i).filter(t=>!C.includes(t));if(console.log("[WorkflowOption] Missing node types:",l),l.length>0){try{console.log("[WorkflowOption] Fetching info for missing nodes");const t=await _.batchGetNodeInfo(l);console.log("[WorkflowOption] Received node infos:",t);const p={text:"",ext:[{type:"node_install_guide",data:t.map(r=>({name:r.name,repository_url:r.github_url}))}]},c={id:z(),role:"ai",content:JSON.stringify(p),format:"markdown",name:"Assistant",metadata:{pendingWorkflow:o.workflow,optimizedParams:o.optimized_params}};y?.(c)}catch(t){console.error("[WorkflowOption] Error fetching node info:",t),alert("Error checking required nodes. Please try again.")}finally{g(t=>({...t,[a]:!1}))}return}I(o.workflow,o.optimized_params)}}catch(o){console.error("Failed to optimize workflow:",o),alert("Failed to optimize workflow. Please try again.")}finally{g(o=>({...o,[a]:!1}))}}},I=(e,a)=>{if(e.nodes)d.loadGraphData(e);else{d.loadApiJson(e);const i=Object.keys(e),l=Object.keys(d.graph._nodes_by_id)[0],t=d.graph._nodes_by_id[l],p=t?t.pos[0]:0,c=t?t.pos[1]:0,r=250,m=60,S=20,F=60,j=50,H=1e3;let k=p,x=c,w=0;for(const q of i){const n=d.graph._nodes_by_id[q];if(n){w>H&&(k+=r+F,w=0,x=c);const L=n.inputs?n.inputs.length:0,V=n.outputs?n.outputs.length:0,B=n.widgets?n.widgets.length:0,G=Math.max(L,V)+B,u=S*G+m;n.size[0]=r,n.size[1]=u,n.pos[0]=k,n.pos[1]=x,w+=u+j,x+=u+j}}}for(const[i,l,t,p,c]of a){const r=d.graph._nodes_by_id[i].widgets;for(const m of r)m.name===p&&(m.value=c)}d.graph.setDirtyCanvas(!1,!0);const o={id:z(),role:"tool",content:JSON.stringify({text:"The workflow has been successfully loaded to the canvas",ext:[]}),format:"markdown",name:"Assistant"};y?.(o)},O=(e,a)=>{const o=e.id?String(e.id):"",i=e?.source==="AI Generated";return s.jsxs("div",{className:`relative flex flex-col items-center gap-4 p-2 rounded-lg border ${i?"shadow-[0_0_12px_2px_#3b82f6] shadow-[0_0_0_4px_rgba(59,130,246,0.15)]":"border-gray-200"} hover:bg-gray-50`,children:[i&&s.jsx("div",{className:"absolute left-1/2 top-[-12px] -translate-x-1/2 rounded-lg flex bg-white",children:s.jsxs("svg",{t:"1752667348457",class:"icon",viewBox:"0 0 1024 1024",version:"1.1",xmlns:"http://www.w3.org/2000/svg","p-id":"25237",width:"24",height:"24",children:[s.jsx("path",{d:"M938.656 256A170.656 170.656 0 0 0 768 85.344H256A170.656 170.656 0 0 0 85.344 256v512A170.656 170.656 0 0 0 256 938.656h512A170.656 170.656 0 0 0 938.656 768V256zM256 170.656h512l6.368 0.256A85.344 85.344 0 0 1 853.312 256v512l-0.224 6.4A85.344 85.344 0 0 1 768 853.312H256l-6.336-0.256A85.344 85.344 0 0 1 170.656 768V256l0.224-6.368A85.344 85.344 0 0 1 256 170.656z","p-id":"25238",fill:"#1296db"}),s.jsx("path",{d:"M633.12 718.464h-95.392l-34.368-95.68h-160.288l-34.336 95.68H213.344l154.56-419.808h110.656l154.56 419.808z m-209.888-333.888l-61.056 177.696h120.192l-59.136-177.696z","p-id":"25239",fill:"#1296db"}),s.jsx("path",{d:"M682.656 298.656m0 0l85.344 0q0 0 0 0l0 426.656q0 0 0 0l-85.344 0q0 0 0 0l0-426.656q0 0 0 0Z","p-id":"25240",fill:"#1296db"})]})}),s.jsxs("div",{className:"flex flex-row",children:[s.jsx("h3",{className:"flex-1 font-medium text-sm line-clamp-2 break-all h-10 overflow-hidden",children:e.name}),s.jsx("div",{className:"flex items-start",children:e.description&&s.jsx(J,{arrow:!1,placement:"top",title:s.jsx("div",{className:"bg-gray-900 text-white text-xs rounded-md py-2 px-3 min-w-[400px] whitespace-normal break-words",children:e.description}),children:s.jsx("div",{className:"w-5 h-5 flex items-center justify-center text-gray-500 cursor-help",children:s.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor",className:"w-4 h-4",children:s.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M9.879 7.519c1.171-1.025 3.071-1.025 4.242 0 1.172 1.025 1.172 2.687 0 3.712-.203.179-.43.326-.67.442-.745.361-1.45.999-1.45 1.827v.75M21 12a9 9 0 11-18 0 9 9 0 0118 0zm-9 5.25h.008v.008H12v-.008z"})})})})})]}),s.jsx("div",{className:"aspect-[3/4] rounded-lg overflow-hidden flex-1 w-full",children:e.image?s.jsx("img",{src:e.image,alt:e.name,className:"w-full h-full object-cover",onError:l=>{const t=l.target;t.onerror=null,t.src="data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='56' height='56' viewBox='0 0 56 56' fill='none'%3E%3Crect width='56' height='56' fill='%23F3F4F6'/%3E%3Cpath d='M28 28C30.2091 28 32 26.2091 32 24C32 21.7909 30.2091 20 28 20C25.7909 20 24 21.7909 24 24C24 26.2091 25.7909 28 28 28Z' fill='%239CA3AF'/%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M18.7253 37.6307C19.8278 35.1533 22.6897 33.6 26 33.6H30C33.3103 33.6 36.1722 35.1533 37.2747 37.6307C37.6419 38.4561 37.0611 39.2 36.1694 39.2H19.8306C18.9389 39.2 18.3581 38.4561 18.7253 37.6307Z' fill='%239CA3AF'/%3E%3C/svg%3E"}}):s.jsx("div",{className:"w-full h-full flex items-center justify-center",children:s.jsxs("svg",{t:"1753686018498",class:"icon",viewBox:"0 0 1026 1024",version:"1.1",xmlns:"http://www.w3.org/2000/svg","p-id":"1875",width:"98",height:"98",children:[s.jsx("path",{d:"M0.003166 0v1024h1024V0H0.003166z m962.692789 61.286783v566.902743l-120.857537-118.426494-186.638683 137.466255-287.435012-237.138993L61.28995 705.410873V61.286783h901.406005zM61.28995 962.692788v-172.195431l309.661685-298.34406 282.164349 232.746773 183.104479-134.89221 126.49592 123.962734v248.722194H61.28995z",fill:"#8a8a8a","p-id":"1876"}),s.jsx("path",{d:"M757.03794 397.199641h0.960159c63.411392 0 118.263062-53.605506 119.733945-117.057756 1.470883-63.901686-51.337895-119.958663-115.321296-122.410134l-4.330933-0.081716c-31.011112 0-61.817935 13.1358-84.555332 36.016199-22.635252 22.819112-35.505476 53.666793-35.301187 84.616619 0.490294 63.942544 54.892529 118.406065 118.814644 118.916788z m-39.999841-160.346653a59.570753 59.570753 0 0 1 42.900748-17.875312h0.143003c30.214384 1.164449 57.098853 29.621945 56.38384 59.734184-0.694584 30.47996-28.00806 57.200998-58.447162 57.200998v30.643391l-0.449436-30.643391c-30.132668-0.245147-57.773007-27.926344-57.997726-58.079442-0.122574-14.749686 6.230823-29.683232 17.466733-40.980428z",fill:"#8a8a8a","p-id":"1877"})]})})}),s.jsx("button",{onClick:()=>E(e),disabled:f[o],className:`w-full px-3 py-1 ${f[o]?"bg-[#d2d2d2] cursor-not-allowed":"bg-[#ffffff] hover:bg-[#eee]"} text-black rounded-lg text-xs`,children:f[o]?"Loading...":"Accept"})]},a)};return s.jsx("div",{className:"space-y-3 flex justify-center",children:b.length>0&&s.jsx("div",{className:"grid grid-cols-[repeat(auto-fill,minmax(120px,1fr))] gap-4",children:b.map((e,a)=>O(e,a))})})}export{U as WorkflowOption};
diff --git a/dist/copilot_web/input.js b/dist/copilot_web/input.js
index b7373c1..b188e65 100644
--- a/dist/copilot_web/input.js
+++ b/dist/copilot_web/input.js
@@ -1,7 +1,7 @@
function getImportPath(filename) {
return `./${filename}`;
}
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["copilot_web/App-CYW-EISV.js","copilot_web/vendor-markdown-B4Av9P7l.js","copilot_web/vendor-react-ByKzdfMq.js","copilot_web/message-components-DSee13I8.js"].map(path => {
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["copilot_web/App-B2vxI6V6.js","copilot_web/vendor-markdown-B4Av9P7l.js","copilot_web/vendor-react-ByKzdfMq.js","copilot_web/message-components-DKU8exdb.js"].map(path => {
const apiBase = window.comfyAPI?.api?.api?.api_base;
if (apiBase) {
// 有 API base 时,使用完整路径
@@ -11,7 +11,7 @@ function getImportPath(filename) {
return `./${path}`;
}
}))))=>i.map(i=>d[i]);
-import{j as Fu}from"./vendor-markdown-B4Av9P7l.js";import{r as d0,e as Pv,g as ly,R as s0}from"./vendor-react-ByKzdfMq.js";import{w as ay,a as ty}from"./message-components-DSee13I8.js";/* empty css */const uy="modulepreload",ey=function(l){return"/"+l},Jc={},ny=function(a,t,u){let e=Promise.resolve();if(t&&t.length>0){document.getElementsByTagName("link");const f=document.querySelector("meta[property=csp-nonce]"),c=f?.nonce||f?.getAttribute("nonce");e=Promise.allSettled(t.map(i=>{if(i=ey(i),i in Jc)return;Jc[i]=!0;const h=i.endsWith(".css"),b=h?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${i}"]${b}`))return;const S=document.createElement("link");if(S.rel=h?"stylesheet":uy,h||(S.as="script"),S.crossOrigin="",S.href=i,c&&S.setAttribute("nonce",c),document.head.appendChild(S),h)return new Promise((d,m)=>{S.addEventListener("load",d),S.addEventListener("error",()=>m(new Error(`Unable to preload CSS for ${i}`)))})}))}function n(f){const c=new Event("vite:preloadError",{cancelable:!0});if(c.payload=f,window.dispatchEvent(c),!c.defaultPrevented)throw f}return e.then(f=>{for(const c of f||[])c.status==="rejected"&&n(c.reason);return a().catch(n)})};var m0={exports:{}},an={},S0={exports:{}},b0={};/**
+import{j as Fu}from"./vendor-markdown-B4Av9P7l.js";import{r as d0,e as Pv,g as ly,R as s0}from"./vendor-react-ByKzdfMq.js";import{w as ay,a as ty}from"./message-components-DKU8exdb.js";/* empty css */const uy="modulepreload",ey=function(l){return"/"+l},Jc={},ny=function(a,t,u){let e=Promise.resolve();if(t&&t.length>0){document.getElementsByTagName("link");const f=document.querySelector("meta[property=csp-nonce]"),c=f?.nonce||f?.getAttribute("nonce");e=Promise.allSettled(t.map(i=>{if(i=ey(i),i in Jc)return;Jc[i]=!0;const h=i.endsWith(".css"),b=h?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${i}"]${b}`))return;const S=document.createElement("link");if(S.rel=h?"stylesheet":uy,h||(S.as="script"),S.crossOrigin="",S.href=i,c&&S.setAttribute("nonce",c),document.head.appendChild(S),h)return new Promise((d,m)=>{S.addEventListener("load",d),S.addEventListener("error",()=>m(new Error(`Unable to preload CSS for ${i}`)))})}))}function n(f){const c=new Event("vite:preloadError",{cancelable:!0});if(c.payload=f,window.dispatchEvent(c),!c.defaultPrevented)throw f}return e.then(f=>{for(const c of f||[])c.status==="rejected"&&n(c.reason);return a().catch(n)})};var m0={exports:{}},an={},S0={exports:{}},b0={};/**
* @license React
* scheduler.production.js
*
@@ -35,4 +35,4 @@ import{j as Fu}from"./vendor-markdown-B4Av9P7l.js";import{r as d0,e as Pv,g as l
`+i[u].replace(" at new "," at ");return l.displayName&&b.includes("