autoglm-gui 1.5.1__py3-none-any.whl → 1.5.3__py3-none-any.whl

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 (50) hide show
  1. AutoGLM_GUI/__init__.py +1 -1
  2. AutoGLM_GUI/__main__.py +11 -2
  3. AutoGLM_GUI/adb_plus/qr_pair.py +3 -3
  4. AutoGLM_GUI/agents/__init__.py +7 -2
  5. AutoGLM_GUI/agents/factory.py +46 -6
  6. AutoGLM_GUI/agents/glm/agent.py +2 -2
  7. AutoGLM_GUI/agents/glm/async_agent.py +515 -0
  8. AutoGLM_GUI/agents/glm/parser.py +4 -2
  9. AutoGLM_GUI/agents/protocols.py +111 -1
  10. AutoGLM_GUI/agents/stream_runner.py +4 -5
  11. AutoGLM_GUI/api/__init__.py +3 -1
  12. AutoGLM_GUI/api/agents.py +78 -37
  13. AutoGLM_GUI/api/devices.py +72 -0
  14. AutoGLM_GUI/api/layered_agent.py +9 -8
  15. AutoGLM_GUI/api/mcp.py +6 -4
  16. AutoGLM_GUI/config_manager.py +38 -1
  17. AutoGLM_GUI/device_manager.py +28 -4
  18. AutoGLM_GUI/device_metadata_manager.py +174 -0
  19. AutoGLM_GUI/devices/mock_device.py +8 -1
  20. AutoGLM_GUI/phone_agent_manager.py +145 -32
  21. AutoGLM_GUI/scheduler_manager.py +6 -6
  22. AutoGLM_GUI/schemas.py +89 -0
  23. AutoGLM_GUI/scrcpy_stream.py +2 -1
  24. AutoGLM_GUI/static/assets/{about-CfwX1Cmc.js → about-DTrVqEQH.js} +1 -1
  25. AutoGLM_GUI/static/assets/{alert-dialog-CtGlN2IJ.js → alert-dialog-B2KxPLtZ.js} +1 -1
  26. AutoGLM_GUI/static/assets/chat-BkrVbc3X.js +129 -0
  27. AutoGLM_GUI/static/assets/{circle-alert-t08bEMPO.js → circle-alert-vnNxOaxv.js} +1 -1
  28. AutoGLM_GUI/static/assets/{dialog-FNwZJFwk.js → dialog-Cuw3N8_F.js} +1 -1
  29. AutoGLM_GUI/static/assets/{eye-D0UPWCWC.js → eye-JD1jbm99.js} +1 -1
  30. AutoGLM_GUI/static/assets/{history-CRo95B7i.js → history-CobYdXju.js} +1 -1
  31. AutoGLM_GUI/static/assets/{index-CTHbFvKl.js → index-BzP-Te33.js} +5 -5
  32. AutoGLM_GUI/static/assets/index-y1vOOBHH.js +1 -0
  33. AutoGLM_GUI/static/assets/label-BpCMrXj_.js +1 -0
  34. AutoGLM_GUI/static/assets/{logs-RW09DyYY.js → logs-BcsSAeol.js} +1 -1
  35. AutoGLM_GUI/static/assets/{popover--JTJrE5v.js → popover-BHbCs5Wl.js} +1 -1
  36. AutoGLM_GUI/static/assets/scheduled-tasks-WvtmRsex.js +1 -0
  37. AutoGLM_GUI/static/assets/{textarea-PRmVnWq5.js → textarea-B84jf3cE.js} +1 -1
  38. AutoGLM_GUI/static/assets/workflows-DhBpqdz_.js +1 -0
  39. AutoGLM_GUI/static/index.html +1 -1
  40. {autoglm_gui-1.5.1.dist-info → autoglm_gui-1.5.3.dist-info}/METADATA +10 -1
  41. {autoglm_gui-1.5.1.dist-info → autoglm_gui-1.5.3.dist-info}/RECORD +44 -43
  42. AutoGLM_GUI/static/assets/chat-BYa-foUI.js +0 -129
  43. AutoGLM_GUI/static/assets/index-BaLMSqd3.js +0 -1
  44. AutoGLM_GUI/static/assets/label-DJFevVmr.js +0 -1
  45. AutoGLM_GUI/static/assets/scheduled-tasks-DTRKsQXF.js +0 -1
  46. AutoGLM_GUI/static/assets/square-pen-CPK_K680.js +0 -1
  47. AutoGLM_GUI/static/assets/workflows-CdcsAoaT.js +0 -1
  48. {autoglm_gui-1.5.1.dist-info → autoglm_gui-1.5.3.dist-info}/WHEEL +0 -0
  49. {autoglm_gui-1.5.1.dist-info → autoglm_gui-1.5.3.dist-info}/entry_points.txt +0 -0
  50. {autoglm_gui-1.5.1.dist-info → autoglm_gui-1.5.3.dist-info}/licenses/LICENSE +0 -0
@@ -0,0 +1 @@
1
+ import{aa as o,r as a,j as t}from"./index-BzP-Te33.js";function n(){const e=o();return a.useEffect(()=>{e({to:"/chat"})},[e]),t.jsx("div",{className:"p-2",children:t.jsx("h3",{children:"Welcome Home!"})})}export{n as component};
@@ -0,0 +1 @@
1
+ import{o as i,j as r,b as o,r as s,ah as d}from"./index-BzP-Te33.js";const u=[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]],x=i("plus",u);const c=[["path",{d:"M12 3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7",key:"1m0v6g"}],["path",{d:"M18.375 2.625a1 1 0 0 1 3 3l-9.013 9.014a2 2 0 0 1-.853.505l-2.873.84a.5.5 0 0 1-.62-.62l.84-2.873a2 2 0 0 1 .506-.852z",key:"ohrbg2"}]],g=i("square-pen",c);function v({className:a,type:t,...e}){return r.jsx("input",{type:t,"data-slot":"input",className:o("file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input h-9 w-full min-w-0 rounded-md border bg-transparent px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm","focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]","aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",a),...e})}var p="Label",n=s.forwardRef((a,t)=>r.jsx(d.label,{...a,ref:t,onMouseDown:e=>{e.target.closest("button, input, select, textarea")||(a.onMouseDown?.(e),!e.defaultPrevented&&e.detail>1&&e.preventDefault())}}));n.displayName=p;var l=n;const f=s.forwardRef(({className:a,...t},e)=>r.jsx(l,{ref:e,className:o("text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70 text-slate-900 dark:text-slate-100",a),...t}));f.displayName=l.displayName;export{v as I,f as L,x as P,g as S};
@@ -1 +1 @@
1
- import{o as j,u as I,r as l,j as e,B as i,F as u}from"./index-CTHbFvKl.js";import{C as d}from"./circle-alert-t08bEMPO.js";const A=[["path",{d:"m6 14 1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2",key:"usdka0"}]],E=j("folder-open",A);const M=[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]],P=j("refresh-cw",M);function B(){const r=I(),[x,p]=l.useState([]),[o,v]=l.useState(null),[N,w]=l.useState(""),[m,h]=l.useState(!1),[b,g]=l.useState(!1),[f,a]=l.useState(""),[k,F]=l.useState(!1),n=l.useCallback(async()=>{try{h(!0),a("");const s=window.electronAPI;if(!s?.logs)return;const t=await s.logs.listFiles();p(t)}catch(s){const t=s instanceof Error?s.message:String(s);a(r.logs.loadFailed.replace("{error}",t))}finally{h(!1)}},[r.logs.loadFailed]);l.useEffect(()=>{window.electronAPI?.logs&&(F(!0),n())},[n]);const L=async s=>{g(!0),a("");try{const t=window.electronAPI;if(!t?.logs)return;const c=await t.logs.readFile(s);v(s),w(c)}catch(t){const c=t instanceof Error?t.message:String(t);a(r.logs.readFailed.replace("{error}",c))}finally{g(!1)}},y=async()=>{try{const s=window.electronAPI;if(!s?.logs)return;const t=await s.logs.openFolder();t.success||a(r.logs.openFolderFailed.replace("{error}",t.error||""))}catch(s){const t=s instanceof Error?s.message:String(s);a(r.logs.openFolderFailed.replace("{error}",t))}},C=s=>s<1024?s+" B":s<1024*1024?(s/1024).toFixed(1)+" KB":(s/(1024*1024)).toFixed(1)+" MB",S=s=>new Date(s).toLocaleString("zh-CN");return k?e.jsxs("div",{className:"h-full flex",children:[e.jsxs("div",{className:"w-80 border-r border-slate-200 dark:border-slate-800 flex flex-col",children:[e.jsxs("div",{className:"p-4 border-b border-slate-200 dark:border-slate-800",children:[e.jsxs("div",{className:"flex items-center justify-between mb-3",children:[e.jsx("h2",{className:"text-lg font-semibold",children:r.logs.title}),e.jsx(i,{variant:"ghost",size:"icon",onClick:n,disabled:m,title:r.logs.refresh,children:e.jsx(P,{className:`w-4 h-4 ${m?"animate-spin":""}`})})]}),e.jsxs(i,{variant:"outline",className:"w-full",onClick:y,children:[e.jsx(E,{className:"w-4 h-4 mr-2"}),r.logs.openFolder]})]}),e.jsx("div",{className:"flex-1 overflow-y-auto",children:x.length===0?e.jsx("div",{className:"p-4 text-center text-slate-500 text-sm",children:r.logs.noLogs}):e.jsx("div",{className:"divide-y divide-slate-200 dark:divide-slate-800",children:x.map(s=>e.jsxs("div",{className:`p-4 hover:bg-slate-50 dark:hover:bg-slate-900 cursor-pointer transition-colors ${o===s.name?"bg-slate-50 dark:bg-slate-900":""}`,onClick:()=>!s.isCompressed&&L(s.name),children:[e.jsxs("div",{className:"flex items-start gap-3",children:[s.isError?e.jsx(d,{className:"w-5 h-5 text-red-500 flex-shrink-0 mt-0.5"}):e.jsx(u,{className:"w-5 h-5 text-slate-400 flex-shrink-0 mt-0.5"}),e.jsxs("div",{className:"flex-1 min-w-0",children:[e.jsx("div",{className:"font-medium text-sm truncate",children:s.name}),e.jsxs("div",{className:"text-xs text-slate-500 mt-1",children:[C(s.size)," •"," ",S(s.modified)]})]})]}),s.isCompressed&&e.jsx("div",{className:"text-xs text-slate-400 mt-2 ml-8",children:r.logs.compressedFileNote})]},s.name))})})]}),e.jsx("div",{className:"flex-1 flex flex-col",children:o?e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"p-4 border-b border-slate-200 dark:border-slate-800",children:e.jsx("h3",{className:"font-semibold",children:o})}),e.jsx("div",{className:"flex-1 overflow-auto p-4 bg-slate-50 dark:bg-slate-950",children:b?e.jsx("div",{className:"flex items-center justify-center h-full",children:e.jsx("div",{className:"text-slate-500",children:r.logs.loading})}):e.jsx("pre",{className:"text-xs font-mono whitespace-pre-wrap break-all",children:N})})]}):e.jsx("div",{className:"flex-1 flex items-center justify-center text-slate-500",children:e.jsxs("div",{className:"text-center",children:[e.jsx(u,{className:"w-12 h-12 mx-auto mb-4 text-slate-300"}),e.jsx("p",{children:r.logs.selectLog})]})})}),f&&e.jsx("div",{className:"fixed bottom-4 right-4 max-w-md bg-red-50 dark:bg-red-900/20 border border-red-200 dark:border-red-800 rounded-lg p-4 shadow-lg",children:e.jsxs("div",{className:"flex items-start gap-3",children:[e.jsx(d,{className:"w-5 h-5 text-red-500 flex-shrink-0 mt-0.5"}),e.jsx("div",{className:"flex-1 text-sm text-red-600 dark:text-red-400",children:f}),e.jsx(i,{variant:"ghost",size:"icon",className:"h-6 w-6 text-red-400 hover:text-red-600",onClick:()=>a(""),children:"✕"})]})})]}):e.jsx("div",{className:"flex items-center justify-center h-full",children:e.jsxs("div",{className:"text-center",children:[e.jsx(d,{className:"w-12 h-12 mx-auto mb-4 text-slate-400"}),e.jsx("p",{className:"text-slate-600",dangerouslySetInnerHTML:{__html:r.logs.webVersionNotice}})]})})}export{B as component};
1
+ import{o as j,u as I,r as l,j as e,B as i,F as u}from"./index-BzP-Te33.js";import{C as d}from"./circle-alert-vnNxOaxv.js";const A=[["path",{d:"m6 14 1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2",key:"usdka0"}]],E=j("folder-open",A);const M=[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]],P=j("refresh-cw",M);function B(){const r=I(),[x,p]=l.useState([]),[o,v]=l.useState(null),[N,w]=l.useState(""),[m,h]=l.useState(!1),[b,g]=l.useState(!1),[f,a]=l.useState(""),[k,F]=l.useState(!1),n=l.useCallback(async()=>{try{h(!0),a("");const s=window.electronAPI;if(!s?.logs)return;const t=await s.logs.listFiles();p(t)}catch(s){const t=s instanceof Error?s.message:String(s);a(r.logs.loadFailed.replace("{error}",t))}finally{h(!1)}},[r.logs.loadFailed]);l.useEffect(()=>{window.electronAPI?.logs&&(F(!0),n())},[n]);const L=async s=>{g(!0),a("");try{const t=window.electronAPI;if(!t?.logs)return;const c=await t.logs.readFile(s);v(s),w(c)}catch(t){const c=t instanceof Error?t.message:String(t);a(r.logs.readFailed.replace("{error}",c))}finally{g(!1)}},y=async()=>{try{const s=window.electronAPI;if(!s?.logs)return;const t=await s.logs.openFolder();t.success||a(r.logs.openFolderFailed.replace("{error}",t.error||""))}catch(s){const t=s instanceof Error?s.message:String(s);a(r.logs.openFolderFailed.replace("{error}",t))}},C=s=>s<1024?s+" B":s<1024*1024?(s/1024).toFixed(1)+" KB":(s/(1024*1024)).toFixed(1)+" MB",S=s=>new Date(s).toLocaleString("zh-CN");return k?e.jsxs("div",{className:"h-full flex",children:[e.jsxs("div",{className:"w-80 border-r border-slate-200 dark:border-slate-800 flex flex-col",children:[e.jsxs("div",{className:"p-4 border-b border-slate-200 dark:border-slate-800",children:[e.jsxs("div",{className:"flex items-center justify-between mb-3",children:[e.jsx("h2",{className:"text-lg font-semibold",children:r.logs.title}),e.jsx(i,{variant:"ghost",size:"icon",onClick:n,disabled:m,title:r.logs.refresh,children:e.jsx(P,{className:`w-4 h-4 ${m?"animate-spin":""}`})})]}),e.jsxs(i,{variant:"outline",className:"w-full",onClick:y,children:[e.jsx(E,{className:"w-4 h-4 mr-2"}),r.logs.openFolder]})]}),e.jsx("div",{className:"flex-1 overflow-y-auto",children:x.length===0?e.jsx("div",{className:"p-4 text-center text-slate-500 text-sm",children:r.logs.noLogs}):e.jsx("div",{className:"divide-y divide-slate-200 dark:divide-slate-800",children:x.map(s=>e.jsxs("div",{className:`p-4 hover:bg-slate-50 dark:hover:bg-slate-900 cursor-pointer transition-colors ${o===s.name?"bg-slate-50 dark:bg-slate-900":""}`,onClick:()=>!s.isCompressed&&L(s.name),children:[e.jsxs("div",{className:"flex items-start gap-3",children:[s.isError?e.jsx(d,{className:"w-5 h-5 text-red-500 flex-shrink-0 mt-0.5"}):e.jsx(u,{className:"w-5 h-5 text-slate-400 flex-shrink-0 mt-0.5"}),e.jsxs("div",{className:"flex-1 min-w-0",children:[e.jsx("div",{className:"font-medium text-sm truncate",children:s.name}),e.jsxs("div",{className:"text-xs text-slate-500 mt-1",children:[C(s.size)," •"," ",S(s.modified)]})]})]}),s.isCompressed&&e.jsx("div",{className:"text-xs text-slate-400 mt-2 ml-8",children:r.logs.compressedFileNote})]},s.name))})})]}),e.jsx("div",{className:"flex-1 flex flex-col",children:o?e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"p-4 border-b border-slate-200 dark:border-slate-800",children:e.jsx("h3",{className:"font-semibold",children:o})}),e.jsx("div",{className:"flex-1 overflow-auto p-4 bg-slate-50 dark:bg-slate-950",children:b?e.jsx("div",{className:"flex items-center justify-center h-full",children:e.jsx("div",{className:"text-slate-500",children:r.logs.loading})}):e.jsx("pre",{className:"text-xs font-mono whitespace-pre-wrap break-all",children:N})})]}):e.jsx("div",{className:"flex-1 flex items-center justify-center text-slate-500",children:e.jsxs("div",{className:"text-center",children:[e.jsx(u,{className:"w-12 h-12 mx-auto mb-4 text-slate-300"}),e.jsx("p",{children:r.logs.selectLog})]})})}),f&&e.jsx("div",{className:"fixed bottom-4 right-4 max-w-md bg-red-50 dark:bg-red-900/20 border border-red-200 dark:border-red-800 rounded-lg p-4 shadow-lg",children:e.jsxs("div",{className:"flex items-start gap-3",children:[e.jsx(d,{className:"w-5 h-5 text-red-500 flex-shrink-0 mt-0.5"}),e.jsx("div",{className:"flex-1 text-sm text-red-600 dark:text-red-400",children:f}),e.jsx(i,{variant:"ghost",size:"icon",className:"h-6 w-6 text-red-400 hover:text-red-600",onClick:()=>a(""),children:"✕"})]})})]}):e.jsx("div",{className:"flex items-center justify-center h-full",children:e.jsxs("div",{className:"text-center",children:[e.jsx(d,{className:"w-12 h-12 mx-auto mb-4 text-slate-400"}),e.jsx("p",{className:"text-slate-600",dangerouslySetInnerHTML:{__html:r.logs.webVersionNotice}})]})})}export{B as component};
@@ -1 +1 @@
1
- import{o as R,r as i,ah as _,E as z,j as s,ai as $,x as L,A as H,y as O,P as b,D as h,aj as j,H as w,ak as G,z as q,al as K,am as B,an as U,b as V}from"./index-CTHbFvKl.js";import{i as W,R as X,u as Z,F as J}from"./dialog-FNwZJFwk.js";const Q=[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]],ge=R("chevron-down",Q);const Y=[["path",{d:"M21.801 10A10 10 0 1 1 17 3.335",key:"yps3ct"}],["path",{d:"m9 11 3 3L22 4",key:"1pflzl"}]],me=R("circle-check-big",Y);const ee=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m15 9-6 6",key:"1uzhvr"}],["path",{d:"m9 9 6 6",key:"z0biqf"}]],Ce=R("circle-x",ee);var C="Popover",[y]=L(C,[_]),P=_(),[oe,l]=y(C),E=e=>{const{__scopePopover:n,children:o,open:a,defaultOpen:t,onOpenChange:r,modal:c=!1}=e,p=P(n),f=i.useRef(null),[v,g]=i.useState(!1),[m,d]=z({prop:a,defaultProp:t??!1,onChange:r,caller:C});return s.jsx($,{...p,children:s.jsx(oe,{scope:n,contentId:H(),triggerRef:f,open:m,onOpenChange:d,onOpenToggle:i.useCallback(()=>d(x=>!x),[d]),hasCustomAnchor:v,onCustomAnchorAdd:i.useCallback(()=>g(!0),[]),onCustomAnchorRemove:i.useCallback(()=>g(!1),[]),modal:c,children:o})})};E.displayName=C;var N="PopoverAnchor",te=i.forwardRef((e,n)=>{const{__scopePopover:o,...a}=e,t=l(N,o),r=P(o),{onCustomAnchorAdd:c,onCustomAnchorRemove:p}=t;return i.useEffect(()=>(c(),()=>p()),[c,p]),s.jsx(j,{...r,...a,ref:n})});te.displayName=N;var k="PopoverTrigger",F=i.forwardRef((e,n)=>{const{__scopePopover:o,...a}=e,t=l(k,o),r=P(o),c=O(n,t.triggerRef),p=s.jsx(b.button,{type:"button","aria-haspopup":"dialog","aria-expanded":t.open,"aria-controls":t.contentId,"data-state":T(t.open),...a,ref:c,onClick:h(e.onClick,t.onOpenToggle)});return t.hasCustomAnchor?p:s.jsx(j,{asChild:!0,...r,children:p})});F.displayName=k;var A="PopoverPortal",[re,ne]=y(A,{forceMount:void 0}),S=e=>{const{__scopePopover:n,forceMount:o,children:a,container:t}=e,r=l(A,n);return s.jsx(re,{scope:n,forceMount:o,children:s.jsx(w,{present:o||r.open,children:s.jsx(G,{asChild:!0,container:t,children:a})})})};S.displayName=A;var u="PopoverContent",D=i.forwardRef((e,n)=>{const o=ne(u,e.__scopePopover),{forceMount:a=o.forceMount,...t}=e,r=l(u,e.__scopePopover);return s.jsx(w,{present:a||r.open,children:r.modal?s.jsx(se,{...t,ref:n}):s.jsx(ce,{...t,ref:n})})});D.displayName=u;var ae=q("PopoverContent.RemoveScroll"),se=i.forwardRef((e,n)=>{const o=l(u,e.__scopePopover),a=i.useRef(null),t=O(n,a),r=i.useRef(!1);return i.useEffect(()=>{const c=a.current;if(c)return W(c)},[]),s.jsx(X,{as:ae,allowPinchZoom:!0,children:s.jsx(M,{...e,ref:t,trapFocus:o.open,disableOutsidePointerEvents:!0,onCloseAutoFocus:h(e.onCloseAutoFocus,c=>{c.preventDefault(),r.current||o.triggerRef.current?.focus()}),onPointerDownOutside:h(e.onPointerDownOutside,c=>{const p=c.detail.originalEvent,f=p.button===0&&p.ctrlKey===!0,v=p.button===2||f;r.current=v},{checkForDefaultPrevented:!1}),onFocusOutside:h(e.onFocusOutside,c=>c.preventDefault(),{checkForDefaultPrevented:!1})})})}),ce=i.forwardRef((e,n)=>{const o=l(u,e.__scopePopover),a=i.useRef(!1),t=i.useRef(!1);return s.jsx(M,{...e,ref:n,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:r=>{e.onCloseAutoFocus?.(r),r.defaultPrevented||(a.current||o.triggerRef.current?.focus(),r.preventDefault()),a.current=!1,t.current=!1},onInteractOutside:r=>{e.onInteractOutside?.(r),r.defaultPrevented||(a.current=!0,r.detail.originalEvent.type==="pointerdown"&&(t.current=!0));const c=r.target;o.triggerRef.current?.contains(c)&&r.preventDefault(),r.detail.originalEvent.type==="focusin"&&t.current&&r.preventDefault()}})}),M=i.forwardRef((e,n)=>{const{__scopePopover:o,trapFocus:a,onOpenAutoFocus:t,onCloseAutoFocus:r,disableOutsidePointerEvents:c,onEscapeKeyDown:p,onPointerDownOutside:f,onFocusOutside:v,onInteractOutside:g,...m}=e,d=l(u,o),x=P(o);return Z(),s.jsx(J,{asChild:!0,loop:!0,trapped:a,onMountAutoFocus:t,onUnmountAutoFocus:r,children:s.jsx(K,{asChild:!0,disableOutsidePointerEvents:c,onInteractOutside:g,onEscapeKeyDown:p,onPointerDownOutside:f,onFocusOutside:v,onDismiss:()=>d.onOpenChange(!1),children:s.jsx(B,{"data-state":T(d.open),role:"dialog",id:d.contentId,...x,...m,ref:n,style:{...m.style,"--radix-popover-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-popover-content-available-width":"var(--radix-popper-available-width)","--radix-popover-content-available-height":"var(--radix-popper-available-height)","--radix-popover-trigger-width":"var(--radix-popper-anchor-width)","--radix-popover-trigger-height":"var(--radix-popper-anchor-height)"}})})})}),I="PopoverClose",ie=i.forwardRef((e,n)=>{const{__scopePopover:o,...a}=e,t=l(I,o);return s.jsx(b.button,{type:"button",...a,ref:n,onClick:h(e.onClick,()=>t.onOpenChange(!1))})});ie.displayName=I;var pe="PopoverArrow",le=i.forwardRef((e,n)=>{const{__scopePopover:o,...a}=e,t=P(o);return s.jsx(U,{...t,...a,ref:n})});le.displayName=pe;function T(e){return e?"open":"closed"}var de=E,ue=F,fe=S,ve=D;function xe({...e}){return s.jsx(de,{"data-slot":"popover",...e})}function Re({...e}){return s.jsx(ue,{"data-slot":"popover-trigger",...e})}function Ae({className:e,align:n="center",sideOffset:o=4,...a}){return s.jsx(fe,{children:s.jsx(ve,{"data-slot":"popover-content",align:n,sideOffset:o,className:V("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-72 origin-(--radix-popover-content-transform-origin) rounded-md border p-4 shadow-md outline-hidden",e),...a})})}export{me as C,xe as P,Ce as a,ge as b,Re as c,Ae as d};
1
+ import{o as R,r as i,ai as _,G as z,j as s,aj as $,y as L,D as G,z as O,P as b,E as P,ak as j,I as w,al as H,A as q,am as K,an as B,ao as U,b as V}from"./index-BzP-Te33.js";import{i as W,R as X,u as Z,F as J}from"./dialog-Cuw3N8_F.js";const Q=[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]],he=R("chevron-down",Q);const Y=[["path",{d:"M21.801 10A10 10 0 1 1 17 3.335",key:"yps3ct"}],["path",{d:"m9 11 3 3L22 4",key:"1pflzl"}]],me=R("circle-check-big",Y);const ee=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m15 9-6 6",key:"1uzhvr"}],["path",{d:"m9 9 6 6",key:"z0biqf"}]],Ce=R("circle-x",ee);var C="Popover",[y]=L(C,[_]),g=_(),[oe,l]=y(C),E=e=>{const{__scopePopover:n,children:o,open:a,defaultOpen:t,onOpenChange:r,modal:c=!1}=e,p=g(n),f=i.useRef(null),[v,h]=i.useState(!1),[m,d]=z({prop:a,defaultProp:t??!1,onChange:r,caller:C});return s.jsx($,{...p,children:s.jsx(oe,{scope:n,contentId:G(),triggerRef:f,open:m,onOpenChange:d,onOpenToggle:i.useCallback(()=>d(x=>!x),[d]),hasCustomAnchor:v,onCustomAnchorAdd:i.useCallback(()=>h(!0),[]),onCustomAnchorRemove:i.useCallback(()=>h(!1),[]),modal:c,children:o})})};E.displayName=C;var N="PopoverAnchor",te=i.forwardRef((e,n)=>{const{__scopePopover:o,...a}=e,t=l(N,o),r=g(o),{onCustomAnchorAdd:c,onCustomAnchorRemove:p}=t;return i.useEffect(()=>(c(),()=>p()),[c,p]),s.jsx(j,{...r,...a,ref:n})});te.displayName=N;var k="PopoverTrigger",F=i.forwardRef((e,n)=>{const{__scopePopover:o,...a}=e,t=l(k,o),r=g(o),c=O(n,t.triggerRef),p=s.jsx(b.button,{type:"button","aria-haspopup":"dialog","aria-expanded":t.open,"aria-controls":t.contentId,"data-state":T(t.open),...a,ref:c,onClick:P(e.onClick,t.onOpenToggle)});return t.hasCustomAnchor?p:s.jsx(j,{asChild:!0,...r,children:p})});F.displayName=k;var A="PopoverPortal",[re,ne]=y(A,{forceMount:void 0}),S=e=>{const{__scopePopover:n,forceMount:o,children:a,container:t}=e,r=l(A,n);return s.jsx(re,{scope:n,forceMount:o,children:s.jsx(w,{present:o||r.open,children:s.jsx(H,{asChild:!0,container:t,children:a})})})};S.displayName=A;var u="PopoverContent",D=i.forwardRef((e,n)=>{const o=ne(u,e.__scopePopover),{forceMount:a=o.forceMount,...t}=e,r=l(u,e.__scopePopover);return s.jsx(w,{present:a||r.open,children:r.modal?s.jsx(se,{...t,ref:n}):s.jsx(ce,{...t,ref:n})})});D.displayName=u;var ae=q("PopoverContent.RemoveScroll"),se=i.forwardRef((e,n)=>{const o=l(u,e.__scopePopover),a=i.useRef(null),t=O(n,a),r=i.useRef(!1);return i.useEffect(()=>{const c=a.current;if(c)return W(c)},[]),s.jsx(X,{as:ae,allowPinchZoom:!0,children:s.jsx(M,{...e,ref:t,trapFocus:o.open,disableOutsidePointerEvents:!0,onCloseAutoFocus:P(e.onCloseAutoFocus,c=>{c.preventDefault(),r.current||o.triggerRef.current?.focus()}),onPointerDownOutside:P(e.onPointerDownOutside,c=>{const p=c.detail.originalEvent,f=p.button===0&&p.ctrlKey===!0,v=p.button===2||f;r.current=v},{checkForDefaultPrevented:!1}),onFocusOutside:P(e.onFocusOutside,c=>c.preventDefault(),{checkForDefaultPrevented:!1})})})}),ce=i.forwardRef((e,n)=>{const o=l(u,e.__scopePopover),a=i.useRef(!1),t=i.useRef(!1);return s.jsx(M,{...e,ref:n,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:r=>{e.onCloseAutoFocus?.(r),r.defaultPrevented||(a.current||o.triggerRef.current?.focus(),r.preventDefault()),a.current=!1,t.current=!1},onInteractOutside:r=>{e.onInteractOutside?.(r),r.defaultPrevented||(a.current=!0,r.detail.originalEvent.type==="pointerdown"&&(t.current=!0));const c=r.target;o.triggerRef.current?.contains(c)&&r.preventDefault(),r.detail.originalEvent.type==="focusin"&&t.current&&r.preventDefault()}})}),M=i.forwardRef((e,n)=>{const{__scopePopover:o,trapFocus:a,onOpenAutoFocus:t,onCloseAutoFocus:r,disableOutsidePointerEvents:c,onEscapeKeyDown:p,onPointerDownOutside:f,onFocusOutside:v,onInteractOutside:h,...m}=e,d=l(u,o),x=g(o);return Z(),s.jsx(J,{asChild:!0,loop:!0,trapped:a,onMountAutoFocus:t,onUnmountAutoFocus:r,children:s.jsx(K,{asChild:!0,disableOutsidePointerEvents:c,onInteractOutside:h,onEscapeKeyDown:p,onPointerDownOutside:f,onFocusOutside:v,onDismiss:()=>d.onOpenChange(!1),children:s.jsx(B,{"data-state":T(d.open),role:"dialog",id:d.contentId,...x,...m,ref:n,style:{...m.style,"--radix-popover-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-popover-content-available-width":"var(--radix-popper-available-width)","--radix-popover-content-available-height":"var(--radix-popper-available-height)","--radix-popover-trigger-width":"var(--radix-popper-anchor-width)","--radix-popover-trigger-height":"var(--radix-popper-anchor-height)"}})})})}),I="PopoverClose",ie=i.forwardRef((e,n)=>{const{__scopePopover:o,...a}=e,t=l(I,o);return s.jsx(b.button,{type:"button",...a,ref:n,onClick:P(e.onClick,()=>t.onOpenChange(!1))})});ie.displayName=I;var pe="PopoverArrow",le=i.forwardRef((e,n)=>{const{__scopePopover:o,...a}=e,t=g(o);return s.jsx(U,{...t,...a,ref:n})});le.displayName=pe;function T(e){return e?"open":"closed"}var de=E,ue=F,fe=S,ve=D;function xe({...e}){return s.jsx(de,{"data-slot":"popover",...e})}function Re({...e}){return s.jsx(ue,{"data-slot":"popover-trigger",...e})}function Ae({className:e,align:n="center",sideOffset:o=4,...a}){return s.jsx(fe,{children:s.jsx(ve,{"data-slot":"popover-content",align:n,sideOffset:o,className:V("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-72 origin-(--radix-popover-content-transform-origin) rounded-md border p-4 shadow-md outline-hidden",e),...a})})}export{me as C,xe as P,Ce as a,he as b,Re as c,Ae as d};
@@ -0,0 +1 @@
1
+ import{r as n,j as e,b as C,u as J,e as K,l as Q,g as U,B as i,f as Y,C as Z,h as $,i as ee,k as se,m as ae,n as le}from"./index-BzP-Te33.js";import{P as ne,S as te,L as x,I as D}from"./label-BpCMrXj_.js";import{L as _,C as re,a as ce,b as ie,c as oe,T as de,D as me,d as he,e as xe,f as ue,g as je}from"./dialog-Cuw3N8_F.js";import{S,a as F,b as A,c as E,d as P,A as pe,e as fe,f as ke,g as ge,h as we,i as ve,j as Ne,k as Te}from"./alert-dialog-B2KxPLtZ.js";import{C as be,a as ye}from"./popover-BHbCs5Wl.js";const L=n.forwardRef(({className:a,checked:r=!1,onCheckedChange:j,disabled:o,...p},d)=>e.jsx("button",{ref:d,role:"switch",type:"button","aria-checked":r,disabled:o,className:C("peer inline-flex h-6 w-11 shrink-0 cursor-pointer items-center rounded-full border-2 border-transparent transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-slate-950 focus-visible:ring-offset-2 focus-visible:ring-offset-white disabled:cursor-not-allowed disabled:opacity-50",r?"bg-slate-900 dark:bg-slate-50":"bg-slate-200 dark:bg-slate-800",a),onClick:()=>j?.(!r),...p,children:e.jsx("span",{className:C("pointer-events-none block h-5 w-5 rounded-full bg-white shadow-lg ring-0 transition-transform dark:bg-slate-950",r?"translate-x-5":"translate-x-0")})}));L.displayName="Switch";const Ce=[{key:"everyHour",cron:"0 * * * *"},{key:"daily8am",cron:"0 8 * * *"},{key:"daily12pm",cron:"0 12 * * *"},{key:"daily6pm",cron:"0 18 * * *"},{key:"weeklyMonday",cron:"0 9 * * 1"}];function Ee(){const a=J(),[r,j]=n.useState([]),[o,p]=n.useState([]),[d,H]=n.useState([]),[O,g]=n.useState(!0),[W,m]=n.useState(!1),[f,w]=n.useState(null),[t,c]=n.useState({name:"",workflow_uuid:"",device_serialno:"",cron_expression:"",enabled:!0}),[v,N]=n.useState(!1),[z,k]=n.useState(!1),[T,b]=n.useState(null);n.useEffect(()=>{u()},[]);const u=async()=>{try{g(!0);const[s,l,h]=await Promise.all([K(),Q(),U()]);j(s.tasks),p(l.workflows),H(h)}catch(s){console.error("Failed to load data:",s)}finally{g(!1)}},B=()=>{w(null),c({name:"",workflow_uuid:"",device_serialno:"",cron_expression:"",enabled:!0}),m(!0)},R=s=>{w(s),c({name:s.name,workflow_uuid:s.workflow_uuid,device_serialno:s.device_serialno,cron_expression:s.cron_expression,enabled:s.enabled}),m(!0)},V=async()=>{try{N(!0),f?await se(f.id,t):await ae(t),m(!1),u()}catch(s){console.error("Failed to save task:",s)}finally{N(!1)}},I=async()=>{if(T){try{await le(T),u()}catch(s){console.error("Failed to delete task:",s)}k(!1),b(null)}},q=async s=>{try{s.enabled?await $(s.id):await ee(s.id),u()}catch(l){console.error("Failed to toggle task:",l)}},M=s=>o.find(h=>h.uuid===s)?.name||s,X=s=>d.find(h=>h.serial===s)?.model||s,y=s=>s?new Date(s).toLocaleString("zh-CN",{month:"short",day:"numeric",hour:"2-digit",minute:"2-digit"}):a.scheduledTasks.never,G=t.name.trim()&&t.workflow_uuid&&t.device_serialno&&t.cron_expression.trim();return e.jsxs("div",{className:"container mx-auto p-6 max-w-7xl",children:[e.jsxs("div",{className:"flex justify-between items-center mb-6",children:[e.jsx("h1",{className:"text-3xl font-bold",children:a.scheduledTasks.title}),e.jsxs(i,{onClick:B,children:[e.jsx(ne,{className:"w-4 h-4 mr-2"}),a.scheduledTasks.create]})]}),O?e.jsx("div",{className:"flex justify-center items-center h-64",children:e.jsx(_,{className:"w-8 h-8 animate-spin text-slate-400"})}):r.length===0?e.jsxs("div",{className:"text-center py-12",children:[e.jsx("p",{className:"text-slate-500 dark:text-slate-400",children:a.scheduledTasks.noTasks}),e.jsx("p",{className:"text-sm text-slate-400 dark:text-slate-500 mt-2",children:a.scheduledTasks.noTasksDesc})]}):e.jsx("div",{className:"grid gap-4 md:grid-cols-2 lg:grid-cols-3",children:r.map(s=>e.jsxs(re,{className:"hover:shadow-md transition-shadow",children:[e.jsx(ce,{className:"pb-2",children:e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsx(ie,{className:"text-lg truncate flex-1 mr-2",children:s.name}),e.jsx(L,{checked:s.enabled,onCheckedChange:()=>q(s)})]})}),e.jsx(oe,{children:e.jsxs("div",{className:"space-y-3",children:[e.jsxs("div",{className:"text-sm",children:[e.jsxs("span",{className:"text-slate-500 dark:text-slate-400",children:[a.scheduledTasks.workflow,":"," "]}),e.jsx("span",{className:"font-medium",children:M(s.workflow_uuid)})]}),e.jsxs("div",{className:"text-sm",children:[e.jsxs("span",{className:"text-slate-500 dark:text-slate-400",children:[a.scheduledTasks.device,":"," "]}),e.jsx("span",{className:"font-medium",children:X(s.device_serialno)})]}),e.jsx("div",{className:"text-sm",children:e.jsxs(Y,{variant:"outline",className:"font-mono",children:[e.jsx(Z,{className:"w-3 h-3 mr-1"}),s.cron_expression]})}),e.jsxs("div",{className:"text-sm flex items-center gap-2",children:[e.jsxs("span",{className:"text-slate-500 dark:text-slate-400",children:[a.scheduledTasks.lastRun,":"]}),s.last_run_time?e.jsxs(e.Fragment,{children:[s.last_run_success?e.jsx(be,{className:"w-4 h-4 text-green-500"}):e.jsx(ye,{className:"w-4 h-4 text-red-500"}),e.jsx("span",{children:y(s.last_run_time)})]}):e.jsx("span",{className:"text-slate-400",children:a.scheduledTasks.never})]}),e.jsxs("div",{className:"text-sm",children:[e.jsxs("span",{className:"text-slate-500 dark:text-slate-400",children:[a.scheduledTasks.nextRun,":"," "]}),e.jsx("span",{children:y(s.next_run_time)})]}),e.jsxs("div",{className:"flex gap-2 pt-2",children:[e.jsxs(i,{variant:"outline",size:"sm",onClick:()=>R(s),children:[e.jsx(te,{className:"w-3 h-3 mr-1"}),a.common.edit]}),e.jsxs(i,{variant:"destructive",size:"sm",onClick:()=>{b(s.id),k(!0)},children:[e.jsx(de,{className:"w-3 h-3 mr-1"}),a.common.delete]})]})]})})]},s.id))}),e.jsx(me,{open:W,onOpenChange:m,children:e.jsxs(he,{className:"sm:max-w-[500px]",children:[e.jsx(xe,{children:e.jsx(ue,{children:f?a.scheduledTasks.edit:a.scheduledTasks.create})}),e.jsxs("div",{className:"space-y-4 py-4",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsx(x,{htmlFor:"name",children:a.scheduledTasks.taskName}),e.jsx(D,{id:"name",value:t.name,onChange:s=>c(l=>({...l,name:s.target.value})),placeholder:a.scheduledTasks.taskNamePlaceholder})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(x,{children:a.scheduledTasks.workflow}),o.length===0?e.jsx("p",{className:"text-sm text-amber-600 dark:text-amber-400",children:a.scheduledTasks.noWorkflows}):e.jsxs(S,{value:t.workflow_uuid,onValueChange:s=>c(l=>({...l,workflow_uuid:s})),children:[e.jsx(F,{children:e.jsx(A,{placeholder:a.scheduledTasks.selectWorkflow})}),e.jsx(E,{children:o.map(s=>e.jsx(P,{value:s.uuid,children:s.name},s.uuid))})]})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(x,{children:a.scheduledTasks.device}),d.length===0?e.jsx("p",{className:"text-sm text-amber-600 dark:text-amber-400",children:a.scheduledTasks.noDevicesOnline}):e.jsxs(S,{value:t.device_serialno,onValueChange:s=>c(l=>({...l,device_serialno:s})),children:[e.jsx(F,{children:e.jsx(A,{placeholder:a.scheduledTasks.selectDevice})}),e.jsx(E,{children:d.map(s=>e.jsx(P,{value:s.serial,children:s.model||s.serial},s.serial))})]})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(x,{htmlFor:"cron",children:a.scheduledTasks.cronExpression}),e.jsx(D,{id:"cron",value:t.cron_expression,onChange:s=>c(l=>({...l,cron_expression:s.target.value})),placeholder:a.scheduledTasks.cronPlaceholder,className:"font-mono"}),e.jsx("p",{className:"text-xs text-slate-500 dark:text-slate-400",children:a.scheduledTasks.cronHelp})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(x,{children:a.scheduledTasks.presets}),e.jsx("div",{className:"flex flex-wrap gap-2",children:Ce.map(s=>e.jsx(i,{variant:"outline",size:"sm",onClick:()=>c(l=>({...l,cron_expression:s.cron})),children:a.scheduledTasks.preset[s.key]},s.key))})]})]}),e.jsxs(je,{children:[e.jsx(i,{variant:"outline",onClick:()=>m(!1),children:a.common.cancel}),e.jsx(i,{onClick:V,disabled:!G||v,children:v?e.jsxs(e.Fragment,{children:[e.jsx(_,{className:"w-4 h-4 mr-2 animate-spin"}),a.common.loading]}):a.common.save})]})]})}),e.jsx(pe,{open:z,onOpenChange:k,children:e.jsxs(fe,{children:[e.jsxs(ke,{children:[e.jsx(ge,{children:a.common.delete}),e.jsx(we,{children:a.scheduledTasks.deleteConfirm})]}),e.jsxs(ve,{children:[e.jsx(Ne,{children:a.common.cancel}),e.jsx(Te,{onClick:I,children:a.common.confirm})]})]})})]})}export{Ee as component};
@@ -1 +1 @@
1
- import{r as s,j as a,b as i}from"./index-CTHbFvKl.js";const l=s.forwardRef(({className:e,...r},t)=>a.jsx("textarea",{className:i("flex min-h-[40px] w-full rounded-full border border-slate-200 bg-white px-3 py-2 text-sm ring-offset-white file:border-0 file:bg-transparent file:text-sm file:font-medium placeholder:text-slate-500 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[#1d9bf0] focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 dark:border-slate-800 dark:bg-slate-950 dark:text-slate-100 dark:ring-offset-slate-950 dark:placeholder:text-slate-400 dark:focus-visible:ring-[#1d9bf0] resize-none",e),ref:t,...r}));l.displayName="Textarea";export{l as T};
1
+ import{r as s,j as a,b as i}from"./index-BzP-Te33.js";const l=s.forwardRef(({className:e,...r},t)=>a.jsx("textarea",{className:i("flex min-h-[40px] w-full rounded-full border border-slate-200 bg-white px-3 py-2 text-sm ring-offset-white file:border-0 file:bg-transparent file:text-sm file:font-medium placeholder:text-slate-500 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[#1d9bf0] focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 dark:border-slate-800 dark:bg-slate-950 dark:text-slate-100 dark:ring-offset-slate-950 dark:placeholder:text-slate-400 dark:focus-visible:ring-[#1d9bf0] resize-none",e),ref:t,...r}));l.displayName="Textarea";export{l as T};
@@ -0,0 +1 @@
1
+ import{u as D,r as t,l as S,j as e,B as n,d as W,a as F,c as b}from"./index-BzP-Te33.js";import{P as T,S as E,L as u,I as L}from"./label-BpCMrXj_.js";import{T as P}from"./textarea-B84jf3cE.js";import{L as j,C as z,a as B,b as H,c as I,T as q,D as O,d as R,e as A,f as G,g as J}from"./dialog-Cuw3N8_F.js";function V(){const a=D(),[m,p]=t.useState([]),[g,x]=t.useState(!0),[k,o]=t.useState(!1),[c,h]=t.useState(null),[l,i]=t.useState({name:"",text:""}),[w,f]=t.useState(!1);t.useEffect(()=>{d()},[]);const d=async()=>{try{x(!0);const s=await S();p(s.workflows)}catch(s){console.error("Failed to load workflows:",s)}finally{x(!1)}},v=()=>{h(null),i({name:"",text:""}),o(!0)},N=s=>{h(s),i({name:s.name,text:s.text}),o(!0)},C=async()=>{try{f(!0),c?await F(c.uuid,l):await b(l),o(!1),d()}catch(s){console.error("Failed to save workflow:",s)}finally{f(!1)}},y=async s=>{if(window.confirm(a.workflows.deleteConfirm))try{await W(s),d()}catch(r){console.error("Failed to delete workflow:",r)}};return e.jsxs("div",{className:"container mx-auto p-6 max-w-7xl",children:[e.jsxs("div",{className:"flex justify-between items-center mb-6",children:[e.jsx("h1",{className:"text-3xl font-bold",children:a.workflows.title}),e.jsxs(n,{onClick:v,children:[e.jsx(T,{className:"w-4 h-4 mr-2"}),a.workflows.createNew]})]}),g?e.jsx("div",{className:"flex justify-center items-center h-64",children:e.jsx(j,{className:"w-8 h-8 animate-spin text-slate-400"})}):m.length===0?e.jsx("div",{className:"text-center py-12",children:e.jsx("p",{className:"text-slate-500 dark:text-slate-400",children:a.workflows.empty})}):e.jsx("div",{className:"grid gap-4 md:grid-cols-2 lg:grid-cols-3",children:m.map(s=>e.jsxs(z,{className:"hover:shadow-md transition-shadow",children:[e.jsx(B,{children:e.jsx(H,{className:"text-lg",children:s.name})}),e.jsxs(I,{children:[e.jsx("p",{className:"text-sm text-slate-600 dark:text-slate-400 mb-4 line-clamp-3",children:s.text}),e.jsxs("div",{className:"flex gap-2",children:[e.jsxs(n,{variant:"outline",size:"sm",onClick:()=>N(s),children:[e.jsx(E,{className:"w-3 h-3 mr-1"}),a.common.edit]}),e.jsxs(n,{variant:"destructive",size:"sm",onClick:()=>y(s.uuid),children:[e.jsx(q,{className:"w-3 h-3 mr-1"}),a.common.delete]})]})]})]},s.uuid))}),e.jsx(O,{open:k,onOpenChange:o,children:e.jsxs(R,{className:"sm:max-w-[600px]",children:[e.jsx(A,{children:e.jsx(G,{children:c?a.workflows.edit:a.workflows.create})}),e.jsxs("div",{className:"space-y-4 py-4",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsx(u,{htmlFor:"name",children:a.workflows.name}),e.jsx(L,{id:"name",value:l.name,onChange:s=>i(r=>({...r,name:s.target.value})),placeholder:a.workflows.namePlaceholder})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(u,{htmlFor:"text",children:a.workflows.text}),e.jsx(P,{id:"text",value:l.text,onChange:s=>i(r=>({...r,text:s.target.value})),placeholder:a.workflows.textPlaceholder,rows:6,className:"resize-none !rounded-lg"})]})]}),e.jsxs(J,{children:[e.jsx(n,{variant:"outline",onClick:()=>o(!1),children:a.common.cancel}),e.jsx(n,{onClick:C,disabled:!l.name.trim()||!l.text.trim()||w,children:w?e.jsxs(e.Fragment,{children:[e.jsx(j,{className:"w-4 h-4 mr-2 animate-spin"}),a.common.loading]}):a.common.save})]})]})})]})}export{V as component};
@@ -11,7 +11,7 @@
11
11
  <link rel="icon" type="image/png" sizes="192x192" href="/logo-192.png" />
12
12
  <link rel="icon" type="image/png" sizes="512x512" href="/logo-512.png" />
13
13
  <meta name="theme-color" content="#f5f1e8" />
14
- <script type="module" crossorigin src="/assets/index-CTHbFvKl.js"></script>
14
+ <script type="module" crossorigin src="/assets/index-BzP-Te33.js"></script>
15
15
  <link rel="stylesheet" crossorigin href="/assets/index-CV7jGxGm.css">
16
16
  </head>
17
17
  <body>
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: autoglm-gui
3
- Version: 1.5.1
3
+ Version: 1.5.3
4
4
  Summary: Web GUI for AutoGLM Phone Agent - AI-powered Android automation
5
5
  Project-URL: Homepage, https://github.com/suyiiyii/AutoGLM-GUI
6
6
  Project-URL: Repository, https://github.com/suyiiyii/AutoGLM-GUI
@@ -96,6 +96,15 @@ AutoGLM 手机助手的现代化 Web 图形界面 - 让 AI 自动化操作 Andro
96
96
 
97
97
  > 💡 **提示**: 桌面版已内置所有依赖(Python、ADB 等),无需手动配置环境。首次运行时需配置模型服务 API。
98
98
 
99
+ **自动更新:**
100
+
101
+ AutoGLM GUI 桌面版支持自动更新功能:
102
+
103
+ - **🪟 Windows 安装版**:启动时自动检测更新,下载完成后退出时自动安装
104
+ - **🍎 macOS DMG**:启动时自动检测更新,下载完成后提示用户重启(未签名应用可能需要手动允许)
105
+ - **🐧 Linux AppImage**:启动时自动检测更新(需配合 [AppImageLauncher](https://github.com/TheAssassin/AppImageLauncher))
106
+ - **便携版(Windows EXE/Linux tar.gz)**:不支持自动更新,请手动下载新版本
107
+
99
108
  ---
100
109
 
101
110
  **或者使用 Python 包(需要 Python 环境):**
@@ -1,22 +1,23 @@
1
- AutoGLM_GUI/__init__.py,sha256=XHKVEKeLm9LLoM5Otd_9Sk1ald7GxGIvIvjQlCpQTCc,2387
2
- AutoGLM_GUI/__main__.py,sha256=liPZEFLCuhshCCodW_ldn0A63-i_gXy29TLIuDhuWvQ,6920
1
+ AutoGLM_GUI/__init__.py,sha256=ZAaFdGp9Xaep9FvBe_j4YkJWs7-QmIMsaqX_RQ0XTEo,2418
2
+ AutoGLM_GUI/__main__.py,sha256=l9ULeqL5fRHAB-zoHo5dKqCmPJHmx-c7icYLzaNb8r8,7176
3
3
  AutoGLM_GUI/config.py,sha256=OrjhbjcaZWBRLiLTzmknm6pONglDXjfoZngQd8jU9bk,2286
4
- AutoGLM_GUI/config_manager.py,sha256=WZEa8p2iXIg1CneuquKh-EemdQL1uiPoz_I7yWPY99A,24312
5
- AutoGLM_GUI/device_manager.py,sha256=QvxTjXvnVz_BhJAIfNColsXkw6YUQkf1yiC1An8u7kU,35293
4
+ AutoGLM_GUI/config_manager.py,sha256=Pg2vRqlZzuRbWkROLzZm0AxgSyrGSpBkm9OeG6Ct9ns,25878
5
+ AutoGLM_GUI/device_manager.py,sha256=DNXkFV9zN1q1PAkww40PMrq5g-KOelS5K1PumYCu4h4,36380
6
+ AutoGLM_GUI/device_metadata_manager.py,sha256=vKblcuIhsQ5KGTcP3Rh8oxp5QsFHZe2BKU0v-d-SaGs,6137
6
7
  AutoGLM_GUI/device_protocol.py,sha256=T3JctpggGekkYDeNXiPj_PoINPg8yFqalTx8Lk9w-9A,6944
7
8
  AutoGLM_GUI/exceptions.py,sha256=QXTQzxdbEHDUrtaD1G4zuKZydFJO5ymNvuo8ZvVjUdA,3487
8
9
  AutoGLM_GUI/history_manager.py,sha256=wbndRk2fnuY5n2bcsfbt2HEa_1N9AcnSC1xAn1VMgcA,6347
9
10
  AutoGLM_GUI/i18n.py,sha256=-x8yD5ywyK7xwjoI-pOYqPlSeId_W9KkVjmKayr36m0,2501
10
11
  AutoGLM_GUI/logger.py,sha256=wLzjbRqsHAsOtI9yB0bcUZFVzgGK6qM8330std6FjVw,2553
11
12
  AutoGLM_GUI/metrics.py,sha256=L72hzMNzw1eemQLz6Hoth5sRW6OQlI4Np5BIFSFwl1c,8994
12
- AutoGLM_GUI/phone_agent_manager.py,sha256=Bcz--lMTjLFzB2wX8teOm7CAyjcB7h_1E2eVkh3qogQ,19798
13
+ AutoGLM_GUI/phone_agent_manager.py,sha256=Ong3wh-WWh7Bcrif3JUa2pfu2o5SUsavn-cY8UKKA14,24382
13
14
  AutoGLM_GUI/platform_utils.py,sha256=tsZ-H6Lsgz3aceWQ3GVBmO4lgKBEyD5l-fYyXU7nPU4,3356
14
15
  AutoGLM_GUI/prompt_config.py,sha256=3eNEDdlrk8rvuqakQTiVrGEmFFH5X-UdV-9yUibCSsI,336
15
16
  AutoGLM_GUI/prompts.py,sha256=lC5UktW0KRpWKij6T0GG1OrNKV9gAfM6dUcp_tjX7mo,4814
16
- AutoGLM_GUI/scheduler_manager.py,sha256=K7Y6j0omuuHgrJZJ780ck7ldLrosRzWmTBz-SYU3Hqg,11884
17
- AutoGLM_GUI/schemas.py,sha256=m5dg3gjeu2GZT1IInAr0oyp4CCoyL8cUqX2KXlGlaqQ,21559
17
+ AutoGLM_GUI/scheduler_manager.py,sha256=WLHGBF4xrQv1zguGSA7S2IpWP9r8P5SXxHe_A9s5TXQ,12046
18
+ AutoGLM_GUI/schemas.py,sha256=LhdU3X3Ys4cgYWFxNgdfSEPmF44SljYG7ao598TXq4M,23527
18
19
  AutoGLM_GUI/scrcpy_protocol.py,sha256=h6AtAGq3zMM30FWM7EYiYKJz7BDikpNCOjcKtFcRx3s,997
19
- AutoGLM_GUI/scrcpy_stream.py,sha256=cI30cOnDeAgaWZhHdkbAvQvuWovA3FVC8IatyrSspeE,21376
20
+ AutoGLM_GUI/scrcpy_stream.py,sha256=fOlWMW9U3L6J_pbH0bNaf06HMzuQXwA5e5ZRHhgZHYw,21459
20
21
  AutoGLM_GUI/server.py,sha256=Fo2Afl6CFT5B6MBggvR0n_savNxqxW22bFdN51NXRJs,299
21
22
  AutoGLM_GUI/socketio_server.py,sha256=Y_B3lKXCv9rDs8IbbKUCGoA2eldZ1pr6_qK1Gh99XOQ,6532
22
23
  AutoGLM_GUI/state.py,sha256=qGnqZKdWFDpegVBLB4KHDbzfAVWc89C0AiCum_R9LSk,912
@@ -39,20 +40,21 @@ AutoGLM_GUI/adb_plus/ip.py,sha256=dt6ffIjiW_jGoEqUKUDi9fRGbWN1W9LxfT8rWIqgS-0,22
39
40
  AutoGLM_GUI/adb_plus/keyboard_installer.py,sha256=OfBdtFNbIZtiEgsJJaewgCAucaP4ppoAmd1M6y9-URY,13586
40
41
  AutoGLM_GUI/adb_plus/mdns.py,sha256=AwQ4MQsPKVW1tPjIUpOWvBQGlJxvVrO9eTvxoqsgPUo,5862
41
42
  AutoGLM_GUI/adb_plus/pair.py,sha256=3UElG0yjylhmZBtPpDER2BNMZs9CwDeavjuQOwOC4sw,1945
42
- AutoGLM_GUI/adb_plus/qr_pair.py,sha256=WHvx76q2xfTnJPXf5y_qI9cNuiBC_KeWwqYpuROdPkw,13571
43
+ AutoGLM_GUI/adb_plus/qr_pair.py,sha256=ZluqUusM5C6UIRM7jUaQ9QjKEl5IaRkob0RKN4nSOtM,13595
43
44
  AutoGLM_GUI/adb_plus/screenshot.py,sha256=12JFZJsrUsW4hTSFCQMEDFtMA6WWROaa8bcXxVvi1iw,4023
44
45
  AutoGLM_GUI/adb_plus/serial.py,sha256=DZEm5R-w9UypMpqPbnE1uRvQXsAx9Jr-4vQk07_X7eM,3850
45
46
  AutoGLM_GUI/adb_plus/touch.py,sha256=cqGmGBmo9gUjSI31OBEV4Q_hLKhRo48ed4XNmbYwgSs,2135
46
47
  AutoGLM_GUI/adb_plus/version.py,sha256=u5u1N40izJceeORN9kFhyz0wq_hZtlwBXaiytfA3px8,2428
47
- AutoGLM_GUI/agents/__init__.py,sha256=z4AggrPOw8xa9S0e053UvOFIES5GTe052HZcjnYCmLU,1264
48
+ AutoGLM_GUI/agents/__init__.py,sha256=-SCUNLfJtdol690k3I82IeomVa00GlSs7b3Zm9UDvhE,1383
48
49
  AutoGLM_GUI/agents/events.py,sha256=4810WrCNYqQFTpkIcU0lv3XUYwzR4uGn3MeshhDrFaI,392
49
- AutoGLM_GUI/agents/factory.py,sha256=PKIcssxwGVjpCVqC03jS64vZUUarSDs1_9GB1AZTESE,4620
50
- AutoGLM_GUI/agents/protocols.py,sha256=YkAprwChnLsomDRDyrPmzpI3uOAASHU-KHBpTxNryHs,572
51
- AutoGLM_GUI/agents/stream_runner.py,sha256=uWJ7QiRVhtQ52tO8sc5AOz3IQSHAXrBtp2v30IBtXAY,6831
50
+ AutoGLM_GUI/agents/factory.py,sha256=vOLJra6FT7kk_QFNWAnq72dVRQe1FNB-ocucUh7z1g4,6404
51
+ AutoGLM_GUI/agents/protocols.py,sha256=3UoT9pUaJPOow0AFsTzv2dct2Zy91tcfQVt9ZKR0fsc,3806
52
+ AutoGLM_GUI/agents/stream_runner.py,sha256=9yxg0QdG3av2m6RUe6hvh8zJW3_FYO_zwIFAHmOhCN8,6841
52
53
  AutoGLM_GUI/agents/glm/__init__.py,sha256=1b9SzDLmWXcxlPS708p96o4W1Ks40YWQ3dd2HPaYewI,179
53
- AutoGLM_GUI/agents/glm/agent.py,sha256=Owtad5NQY-Yg-iMiSAqWxfi5Lr6I31aDpbQvBKYZBys,10110
54
+ AutoGLM_GUI/agents/glm/agent.py,sha256=pcj4AEc4OPx0og8jecgdMxlD8lNIUWjozLqKUPY3OHM,10119
55
+ AutoGLM_GUI/agents/glm/async_agent.py,sha256=AmUYK3VQElIXIStJPFgvMgxso1TxiNhZappdSGDF54w,17500
54
56
  AutoGLM_GUI/agents/glm/message_builder.py,sha256=Z1eNMifdrQfojoDBnUBaFRMnxxvugE8kTvFX2jiyHFk,2302
55
- AutoGLM_GUI/agents/glm/parser.py,sha256=nhWKIAlEloghxdw_pPEKMbLFufYsaj2aIFsYi_ZEU3A,3425
57
+ AutoGLM_GUI/agents/glm/parser.py,sha256=-8l8OfMbHUoXkAOWWtxlSBxff2mTHiUKoImkGCF3NLU,3512
56
58
  AutoGLM_GUI/agents/glm/prompts_en.py,sha256=ms92sFAl45gZC1mVdKjYN4kntJG-OZujbCcI-jyzJGo,2608
57
59
  AutoGLM_GUI/agents/glm/prompts_zh.py,sha256=g3_6nBjcLZwc5Keg1u26Z4w6xjoL05Fk078263A5EZ8,8285
58
60
  AutoGLM_GUI/agents/mai/__init__.py,sha256=HOma4Vc0SDgk2uyS-bq6IvWCrpTBTC_9u6TJp1fOplU,935
@@ -60,14 +62,14 @@ AutoGLM_GUI/agents/mai/agent.py,sha256=xkLXjTJeKiTuaBddi70RHsQGpcaBzMjyXjjB9LBfq
60
62
  AutoGLM_GUI/agents/mai/parser.py,sha256=0VoxBiW3gEaU759tw1iD0qoOOFgUcaq-CyiWQJ1u0aM,8453
61
63
  AutoGLM_GUI/agents/mai/prompts.py,sha256=X3dvVLAP01_OcpUYiwJxBNhETU3lbY-EUK0gJURtkec,4392
62
64
  AutoGLM_GUI/agents/mai/traj_memory.py,sha256=2oEpwgz4YGT3KgW0BojFYEcsZL8WKlkaBJao0QcLHcY,2965
63
- AutoGLM_GUI/api/__init__.py,sha256=EYENHE-DjShI0EOy65i3cmpw7CT4EilaQgG3rmPW0Qs,6321
64
- AutoGLM_GUI/api/agents.py,sha256=JkAVnylw9Wdan1pE3gaSnoWsY9yHegH1Dm-9kqlW3q8,19274
65
+ AutoGLM_GUI/api/__init__.py,sha256=gg-aRjfiaeFrXL9J8vRSo3hQd1fo9nt_xna5v-_wHwQ,6386
66
+ AutoGLM_GUI/api/agents.py,sha256=0tXoPbgisSPpzF7893SDlC8gW5j00663UAUaZ9iMOR4,20786
65
67
  AutoGLM_GUI/api/control.py,sha256=mxklJ7o4Eb_nc-lZKKG86zMk2s5DHv3WGPatnyzQB44,3374
66
- AutoGLM_GUI/api/devices.py,sha256=lRjbkrNHM9aoXGw4pu0GidDDedR6DB5uPxsTQZJmcCE,14022
68
+ AutoGLM_GUI/api/devices.py,sha256=Unc8iMkEJK4QMRg3UUufz67UGmb_shabcCVQyzhZbjI,16215
67
69
  AutoGLM_GUI/api/health.py,sha256=ZedFUv-IHst_YUyeQ_MpL5JXOKuOhWVlHBVwAY3MM0I,266
68
70
  AutoGLM_GUI/api/history.py,sha256=GFJ3kphNAkQFATiWAzLVsCJPrjrJ6_LMGYwfUwTHy4c,3582
69
- AutoGLM_GUI/api/layered_agent.py,sha256=GvwajyfzFbfuPWhFxbz9p8fR1dspAH4x3VN_h5gwE0A,28403
70
- AutoGLM_GUI/api/mcp.py,sha256=ppqzBxiS_8tUeJ5P8AszH_4m6q0sNe0oT2SCU_uISks,4625
71
+ AutoGLM_GUI/api/layered_agent.py,sha256=T2O6oKX3BWGSe-OdzSNkrspibLx84lKxrJBYPO_tgck,28563
72
+ AutoGLM_GUI/api/mcp.py,sha256=BG-FKS9E7nZZMtJeKFht3Wy2Qx2fkdlf_Z4gBH204pc,4738
71
73
  AutoGLM_GUI/api/media.py,sha256=Cwtk2cikZSBK8gV-igpdtx7bsGYyb2letOe4ZEj0-k4,3806
72
74
  AutoGLM_GUI/api/metrics.py,sha256=2h5MnUiMTRAshD6nvcarLVoSlOjtlyVAGg-LRXq03vQ,941
73
75
  AutoGLM_GUI/api/scheduled_tasks.py,sha256=BJvu2TlNfXw6C_y4lYYl-sxfcUQzyE6TYWf-jiVa2-Y,3622
@@ -75,7 +77,7 @@ AutoGLM_GUI/api/version.py,sha256=DYiSNNykJsxOXO1zvf3w5AcAtQJTs2c-qtA1HRVihx0,60
75
77
  AutoGLM_GUI/api/workflows.py,sha256=waYwlm2HxwkcfZwp7Bm2Z2l_bms6UmOy2xJEU9B_t0s,2431
76
78
  AutoGLM_GUI/devices/__init__.py,sha256=3RHDxS3feJ1jGdWbDKeOHSFUogmexcEr9lpcXWhlnjg,1471
77
79
  AutoGLM_GUI/devices/adb_device.py,sha256=uKgSMh7Dn7VPkfjkGltUqAgMcXsXBPIvG4dD3C__MOw,6334
78
- AutoGLM_GUI/devices/mock_device.py,sha256=StMmVnQ5YRkc6MNUSLz5-FAdW1l2eL1XTRxCHNwE6Lc,5786
80
+ AutoGLM_GUI/devices/mock_device.py,sha256=mUQrSbBhgYvneDWrhPCw6rWbfrnrJEmpSPpZFDfe3uQ,6164
79
81
  AutoGLM_GUI/devices/remote_device.py,sha256=PXc2uoczKcDi7ovcIZoWcDA8U9CrIXDamyPApGXNXYI,5665
80
82
  AutoGLM_GUI/model/__init__.py,sha256=eBat20fq5PyTUL_uRW33eQQzj6m3JQkG5rVgmDOgh3c,120
81
83
  AutoGLM_GUI/model/message_builder.py,sha256=wUX3iFiR8kj2lBEpI9gJXVISzsW1AgvRVeIG4DaHmEQ,2148
@@ -88,31 +90,30 @@ AutoGLM_GUI/parsers/base.py,sha256=3HGsMAhIv5oQU9GjLGPzMDtDmhScpFQKYK1kaRhNm8w,1
88
90
  AutoGLM_GUI/parsers/phone_parser.py,sha256=JEgfZfpolmGM_j9F1gNZC1nxBNWXlo4h1k_JIyNuLCE,2053
89
91
  AutoGLM_GUI/prompts/__init__.py,sha256=GtS7Ek3ds5G8orJj4R-2odjm1Hchje3cF1-1YaxZD38,1069
90
92
  AutoGLM_GUI/static/favicon.ico,sha256=uB4wrcENiFaF-K4V-FzNp51XLW8GC4-ujpBDHgISfGM,781
91
- AutoGLM_GUI/static/index.html,sha256=CxPbhU2dHA4PMHb9CaqSCbR2QIagsWavdVPasAYxCz0,761
93
+ AutoGLM_GUI/static/index.html,sha256=9-sVK9cNdsJ17TWDaSUEpMxveJGYKT7MzUnvJM2rbxU,761
92
94
  AutoGLM_GUI/static/logo-192.png,sha256=FOXgZxFrN0ZleO0VjlCnvD5cDkd1okJPkwPDZqsflNs,35243
93
95
  AutoGLM_GUI/static/logo-512.png,sha256=HlwSg09dQ3_Jtb09Ght4l2VK3YNLZlP_941LCdpDkWk,251598
94
- AutoGLM_GUI/static/assets/about-CfwX1Cmc.js,sha256=9oETNHceeJjZHTwdx56sR_N-zh3Ry-oxy7DZw4gDBxQ,155
95
- AutoGLM_GUI/static/assets/alert-dialog-CtGlN2IJ.js,sha256=PH3sQ9SsNTw9MxgWF9fK0PhZyn-KQwjG76XZ2QE1c0o,3140
96
- AutoGLM_GUI/static/assets/chat-BYa-foUI.js,sha256=NIM5jD7F7XJbGrVaBStbd1jrl1LOS-QeVqw8vJOQZiI,301041
97
- AutoGLM_GUI/static/assets/circle-alert-t08bEMPO.js,sha256=N6uSigPZu4YJdlJ6qLWeyOMpUofDLn9mHFXT525ZdLM,251
98
- AutoGLM_GUI/static/assets/dialog-FNwZJFwk.js,sha256=gRs_hh2BxysSNQ8LgyvnDmBEr8-Ek6OgXSTBvp61xRc,25373
99
- AutoGLM_GUI/static/assets/eye-D0UPWCWC.js,sha256=0Cj-BDbPmQQ1TWPtAtl5KQmUW08zjvUvhmEia4XV-dI,339
100
- AutoGLM_GUI/static/assets/history-CRo95B7i.js,sha256=E_EUGqi753WvivR4ivnc5jiY015C7u5_nnzGylFSmBQ,10787
101
- AutoGLM_GUI/static/assets/index-BaLMSqd3.js,sha256=O886kmQVwhXM8jq4aPEtxFfMrzIzroFqZyIXFqrJdso,229
102
- AutoGLM_GUI/static/assets/index-CTHbFvKl.js,sha256=sUeL3IunDxbs0AbxlFkSItIKY36uXKxBiSgL98aPLG4,396545
96
+ AutoGLM_GUI/static/assets/about-DTrVqEQH.js,sha256=RQOFkRhUaI7V-IAomQwLEF4JHWG4y_JosEswM523m6w,155
97
+ AutoGLM_GUI/static/assets/alert-dialog-B2KxPLtZ.js,sha256=8zfoc-i1fVIUDIpR8PZVrIJU0vhmUSgQwYP5g-s0ZBI,3140
98
+ AutoGLM_GUI/static/assets/chat-BkrVbc3X.js,sha256=Ki9MR1ANEZR0xlIGHmUrf_Rqm7XaouVAelP13IAUqzY,303635
99
+ AutoGLM_GUI/static/assets/circle-alert-vnNxOaxv.js,sha256=Y8TIJS7o2bIR51PMocYLIPZuGjUpdCAmqwp1NkF6kgk,251
100
+ AutoGLM_GUI/static/assets/dialog-Cuw3N8_F.js,sha256=BkooocvDGCXySz6GB4FTghaPG7SqeNLlDYSOY_4vjkQ,25373
101
+ AutoGLM_GUI/static/assets/eye-JD1jbm99.js,sha256=uFRyhW7g3h5q5tzB0b7sa6kigd0xoRKHoJ1wrTSozb0,339
102
+ AutoGLM_GUI/static/assets/history-CobYdXju.js,sha256=sSVS2g9a8R1mrkvKGmnQ6teV9bO5kkCUTqixgWzEJ5w,10787
103
+ AutoGLM_GUI/static/assets/index-BzP-Te33.js,sha256=E7odZTlpPR9mCx6mztq6r1SWzqwcQBiAucEqye2anlg,397346
103
104
  AutoGLM_GUI/static/assets/index-CV7jGxGm.css,sha256=cw7HZ3DBylOyAOpqLz6j5bnSBvGL6mrqXb1hvBvWXjE,83985
104
- AutoGLM_GUI/static/assets/label-DJFevVmr.js,sha256=dQt2s2v47Em5pH2I-D2yS7BjOVVYpojfSYYLygyzZRo,1407
105
+ AutoGLM_GUI/static/assets/index-y1vOOBHH.js,sha256=CLHBDjMw9vzMObpadCzlOzZ4eHlCMOAeCBStPBw69bo,229
106
+ AutoGLM_GUI/static/assets/label-BpCMrXj_.js,sha256=rIc20rhklqDAwLOl8S6EFoG4M0JSgNjMoB7pEfnzCe8,1679
105
107
  AutoGLM_GUI/static/assets/logo-Cyfm06Ym.png,sha256=6GRUFH2KNmB4ZmnrmJ1wxpoIYEmOW-__XlmKImyAMKM,4955675
106
- AutoGLM_GUI/static/assets/logs-RW09DyYY.js,sha256=RwkA-hZFnhEX_3thhw-hCRYi3t7vbwJ9oGywE2iztZQ,5048
107
- AutoGLM_GUI/static/assets/popover--JTJrE5v.js,sha256=LREDbF7RY5psGvW-0Z7DYvAxCPapJszZQLRUGgLf8WQ,5782
108
- AutoGLM_GUI/static/assets/scheduled-tasks-DTRKsQXF.js,sha256=_6R292PSGOtogjprbUt40QT1NsNWsfUG_1LBN0iXmDE,8364
109
- AutoGLM_GUI/static/assets/square-pen-CPK_K680.js,sha256=GG9UhqPsIwIBpgAwCRhHYd2E7sjUGSiTV8EpTIY05g4,321
110
- AutoGLM_GUI/static/assets/textarea-PRmVnWq5.js,sha256=hfTdufXPvGYU0YEjkX5aTxmJdgSNZ9Daz_XPxiHapzE,705
108
+ AutoGLM_GUI/static/assets/logs-BcsSAeol.js,sha256=Ek9Zs_o0_-bPY9PDJ1yLME7m4ksKwBCrQz-OJSI4qFk,5048
109
+ AutoGLM_GUI/static/assets/popover-BHbCs5Wl.js,sha256=WFacy_0_BWCPYwptRrYo0k2SMd5GN7yI-lDwFPujoAw,5782
110
+ AutoGLM_GUI/static/assets/scheduled-tasks-WvtmRsex.js,sha256=P59U_dz_AM0RMu-hefAK1WFElkVEY5aCDpzCnWs0Fz0,8326
111
+ AutoGLM_GUI/static/assets/textarea-B84jf3cE.js,sha256=VyCLnkmrNkkHdiQPri2Gc36ggcbEks1GrDFAg5uKOZo,705
111
112
  AutoGLM_GUI/static/assets/worker-D6BRitjy.js,sha256=RL1NIRIks9dXdDhXOHK1cCg-OELT0uv9a6u_UEHfQ0Q,173494
112
- AutoGLM_GUI/static/assets/workflows-CdcsAoaT.js,sha256=LG_ggnjS484fxlNFnMELViavvmZmtEJyBWwOdZ6uvDc,3301
113
+ AutoGLM_GUI/static/assets/workflows-DhBpqdz_.js,sha256=fS4h1r-t1SCXV-klMyV8nuwjB5TnCcJaIzR93j6aFd0,3263
113
114
  scrcpy-server-v3.3.3,sha256=fnAyO6fyWWSd1KzOl6xP77roECssbZHi575hP9U1S-A,90164
114
- autoglm_gui-1.5.1.dist-info/METADATA,sha256=EKtdUmFHRp0sKm4Vkq8JOxf3a-Kkui_jvoZrSJmxv5M,21690
115
- autoglm_gui-1.5.1.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
116
- autoglm_gui-1.5.1.dist-info/entry_points.txt,sha256=sz4rBO_kgrYmOiT0QnhCCv0b9QqBdWyCjugJgY8AEOI,58
117
- autoglm_gui-1.5.1.dist-info/licenses/LICENSE,sha256=0IkSHDewdtmXnmYzTNq4U47EJYjTuhjQNpT0bZKuqWc,11342
118
- autoglm_gui-1.5.1.dist-info/RECORD,,
115
+ autoglm_gui-1.5.3.dist-info/METADATA,sha256=3m2dReNWBeELnzRK8knJozNnU4pU8_aJZhATrcQGlJI,22228
116
+ autoglm_gui-1.5.3.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
117
+ autoglm_gui-1.5.3.dist-info/entry_points.txt,sha256=sz4rBO_kgrYmOiT0QnhCCv0b9QqBdWyCjugJgY8AEOI,58
118
+ autoglm_gui-1.5.3.dist-info/licenses/LICENSE,sha256=0IkSHDewdtmXnmYzTNq4U47EJYjTuhjQNpT0bZKuqWc,11342
119
+ autoglm_gui-1.5.3.dist-info/RECORD,,