fluxflow-cli 4.17.1 → 4.19.0

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 (74) hide show
  1. package/dist/chunks/{addMemScore-W4I665ZR.js → addMemScore-HPTGXICT.js} +1 -1
  2. package/dist/chunks/ai-UMXT6VB5.js +1 -0
  3. package/dist/chunks/{app-ZHDEY5VH.js → app-GKXK24DF.js} +85 -85
  4. package/dist/chunks/{chat-HZ7UVZE2.js → chat-6R23AKX6.js} +1 -1
  5. package/dist/chunks/{chunk-EP3WAFTJ.js → chunk-33KD6VKN.js} +1 -1
  6. package/dist/chunks/{chunk-X3ZZM2GL.js → chunk-4XZGWK5L.js} +1 -1
  7. package/dist/chunks/chunk-EPGLNGLE.js +3 -0
  8. package/dist/chunks/{chunk-YNU56P2H.js → chunk-G3223ZQY.js} +1 -1
  9. package/dist/chunks/chunk-I4JQEUHE.js +1 -0
  10. package/dist/chunks/{chunk-VCF6JVQV.js → chunk-ORXN6WUW.js} +1 -1
  11. package/dist/chunks/chunk-Q2D63UDR.js +33 -0
  12. package/dist/chunks/chunk-QGPOMXO4.js +1 -0
  13. package/dist/chunks/{chunk-FDNLMLIM.js → chunk-RI37VZYB.js} +1 -1
  14. package/dist/chunks/{chunk-UAHJEAVX.js → chunk-RLT6EHPQ.js} +1 -1
  15. package/dist/chunks/{chunk-ZSVBC2ZI.js → chunk-UDJ2C3N3.js} +1 -1
  16. package/dist/chunks/{chunk-ZWNKNXAI.js → chunk-UN6TUQZX.js} +1 -1
  17. package/dist/chunks/{chunk-AZGFDR6K.js → chunk-VD2I7Z6Q.js} +258 -125
  18. package/dist/chunks/chunk-W6AVB2PY.js +6 -0
  19. package/dist/chunks/{chunk-HYGK7YDY.js → chunk-WFHGURXW.js} +1 -1
  20. package/dist/chunks/{chunk-72RYQ5W7.js → chunk-Y6DZDEJ5.js} +1 -1
  21. package/dist/chunks/{chunk-47AJJOP3.js → chunk-YK27Y77U.js} +174 -173
  22. package/dist/chunks/{chunk-KFM2OZWJ.js → chunk-YUJMCXJA.js} +1 -1
  23. package/dist/chunks/{click-G6RRSFVC.js → click-H7HTKF3R.js} +2 -2
  24. package/dist/chunks/{computer_action-WTHH7RBB.js → computer_action-UTDLLMF2.js} +1 -1
  25. package/dist/chunks/{drag-ZGH2MMP7.js → drag-U6X3O5GB.js} +1 -1
  26. package/dist/chunks/{emergency_rollback-EPJPKANN.js → emergency_rollback-HWM4FJ6J.js} +1 -1
  27. package/dist/chunks/{exec_command-255QUWWX.js → exec_command-BH3PUWVO.js} +1 -1
  28. package/dist/chunks/export-ZTNXWWJF.js +1 -0
  29. package/dist/chunks/{file_map-5KY2ADZW.js → file_map-XK7BFZFI.js} +1 -1
  30. package/dist/chunks/generate_image-H7B5XMXI.js +1 -0
  31. package/dist/chunks/{invoke-GJ72T6SR.js → invoke-CZ67HJ6V.js} +2 -2
  32. package/dist/chunks/{invokeSync-KGIQEPIQ.js → invokeSync-OU2V4FTC.js} +2 -2
  33. package/dist/chunks/{key_press-M5QNCIPH.js → key_press-QRO3OFLC.js} +1 -1
  34. package/dist/chunks/{keyboard_typing-CK3KVAWM.js → keyboard_typing-FXP3VJ6Q.js} +1 -1
  35. package/dist/chunks/{memory-OYIUYX3A.js → memory-TVFFXCSD.js} +1 -1
  36. package/dist/chunks/model_config-UZLNHYP5.js +1 -0
  37. package/dist/chunks/paths-Y7ACZJAE.js +1 -0
  38. package/dist/chunks/{saveSummary-ATBIFYDP.js → saveSummary-HFAPNJJH.js} +1 -1
  39. package/dist/chunks/{screen_grid-TDQC6CV5.js → screen_grid-EIPLWNEM.js} +1 -1
  40. package/dist/chunks/{scroll-GHXES2II.js → scroll-SND6RHXA.js} +1 -1
  41. package/dist/chunks/search_keyword-EAMQWPPI.js +8 -0
  42. package/dist/chunks/{secrets-XNJW2U6Y.js → secrets-RFEEPY3S.js} +1 -1
  43. package/dist/chunks/settings-JGWWOFEC.js +1 -0
  44. package/dist/chunks/{todo-SJLJJLVZ.js → todo-7Q2JBEVP.js} +1 -1
  45. package/dist/chunks/update_file-BXYTHDAC.js +13 -0
  46. package/dist/chunks/usage-H4SG5DWF.js +1 -0
  47. package/dist/chunks/usageServer-LRDIG27Z.js +1 -0
  48. package/dist/chunks/view_file-JRVPAETL.js +1 -0
  49. package/dist/chunks/{web_scrape-IKJE45Z6.js → web_scrape-LAQI7CVA.js} +1 -1
  50. package/dist/chunks/{web_search-2Q2BWH6G.js → web_search-D2GOWARI.js} +1 -1
  51. package/dist/chunks/{write_docx-EKUIZ7GV.js → write_docx-IUKMO7XL.js} +1 -1
  52. package/dist/chunks/{write_file-LOYRYIK6.js → write_file-QMTFTJ6V.js} +1 -1
  53. package/dist/chunks/{write_pdf-VB4IFPWX.js → write_pdf-UM6Z2J4K.js} +1 -1
  54. package/dist/cli.js +22 -9
  55. package/dist/package.json +2 -2
  56. package/package.json +2 -2
  57. package/dist/chunks/ai-OUU7AEB6.js +0 -1
  58. package/dist/chunks/ai-X7EEY6S3.js +0 -1
  59. package/dist/chunks/app-QTWX774S.js +0 -285
  60. package/dist/chunks/chunk-AAPXJU65.js +0 -1
  61. package/dist/chunks/chunk-DRD5PTCI.js +0 -929
  62. package/dist/chunks/chunk-JRQMA5CG.js +0 -33
  63. package/dist/chunks/chunk-KRRJNFBF.js +0 -6
  64. package/dist/chunks/chunk-WKHYRBBK.js +0 -1
  65. package/dist/chunks/export-OHZ652N5.js +0 -1
  66. package/dist/chunks/generate_image-XYDE47LK.js +0 -1
  67. package/dist/chunks/invoke-PZPQJRG7.js +0 -6
  68. package/dist/chunks/invokeSync-KKA5TJM6.js +0 -3
  69. package/dist/chunks/paths-PM7MFWJK.js +0 -1
  70. package/dist/chunks/search_keyword-W5YEUUPO.js +0 -8
  71. package/dist/chunks/settings-2IFZMDUD.js +0 -1
  72. package/dist/chunks/update_file-SOXC3PMR.js +0 -13
  73. package/dist/chunks/usageServer-M7OKG6CP.js +0 -1
  74. package/dist/chunks/view_file-WUHFS5L7.js +0 -1
@@ -1,33 +0,0 @@
1
- import{a as b,b as T}from"./chunk-HYGK7YDY.js";import{a as A}from"./chunk-Y5JU726N.js";import{spawn as C}from"child_process";var P=null;try{let f=await import("node-pty");P=f.default||f}catch{}var _=!!P,S=f=>typeof f!="string"?f:f.replace(/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/g,""),E=f=>{if(!f)return"";let p=[[]],n=0,o=0,w=/\x1b\[([0-9;]*?)([a-zA-Z])/g,g=0,h,d=u=>{for(let e=0;e<u.length;e++){let s=u[e];if(s===`
2
- `)for(n++,o=0;n>=p.length;)p.push([]);else if(s==="\r")o=0;else{for(;n>=p.length;)p.push([]);let t=p[n];for(;o>t.length;)t.push(" ");t[o]=s,o++}}};for(;(h=w.exec(f))!==null;){d(f.substring(g,h.index));let u=h[1],e=h[2],s=u?u.split(";").map(Number):[];if(e==="A"){let t=s[0]||1;n=Math.max(0,n-t)}else if(e==="B"){let t=s[0]||1;for(n=n+t;n>=p.length;)p.push([])}else if(e==="C"){let t=s[0]||1;o=o+t}else if(e==="D"){let t=s[0]||1;o=Math.max(0,o-t)}else if(e==="G"){let t=(s[0]||1)-1;o=Math.max(0,t)}else if(e==="H"||e==="f"){let t=(s[0]||1)-1,r=(s[1]||1)-1;for(n=Math.max(0,t),o=Math.max(0,r);n>=p.length;)p.push([])}else if(e==="K"){let t=s[0]||0;if(n<p.length){let r=p[n];if(t===0)r.length=o;else if(t===1)for(let c=0;c<o&&c<r.length;c++)r[c]=" ";else t===2&&(r.length=0)}}else if(e==="J"){let t=s[0]||0;(t===2||t===3)&&(p.length=0,p.push([]),n=0,o=0)}g=w.lastIndex}d(f.substring(g));let O=p.map(u=>u.join(""));for(;O.length>0&&O[O.length-1]==="";)O.pop();return O.join(`
3
- `)},x=null,k=!1,D=f=>{try{x&&(k&&typeof x.write=="function"?x.write(f):x.stdin&&x.stdin.writable&&x.stdin.write(f))}catch{}},F=()=>{if(x){try{k&&typeof x.destroy=="function"?x.destroy():typeof x.kill=="function"&&(process.platform==="win32"?C("taskkill",["/pid",x.pid,"/f","/t"]):x.kill("SIGKILL"))}catch{}x=null,k=!1}},v=(f,p=!1)=>{if(process.platform!=="win32")return f;let n=[],o="",w=null,g=!1;for(let e=0;e<f.length;e++){let s=f[e];if(g){o+=s,g=!1;continue}if(s==="\\"){if(f[e+1]===" "){o+=" ",e++;continue}o+=s,g=!0;continue}w?(s===w&&(w=null),o+=s):s==='"'||s==="'"?(w=s,o+=s):s===";"&&!o.includes("://")?(o.length>0&&(n.push(o),o=""),n.push(p?";":"&")):s==="&"&&!o.includes("://")?f[e+1]==="&"?(o.length>0&&(n.push(o),o=""),n.push("&&"),e++):(o.length>0&&(n.push(o),o=""),n.push("&")):s==="|"&&!o.includes("://")?(o.length>0&&(n.push(o),o=""),n.push("|")):/\s/.test(s)?o.length>0&&(n.push(o),o=""):o+=s}o.length>0&&n.push(o);let h=e=>!(!e.includes("/")||/^(https?|file|ftp):\/\//i.test(e)||e.startsWith("@")||e.startsWith("/")&&(e.match(/\//g)||[]).length===1||/\s\/|\/\s/.test(e)||/[\(\)\{\}\;\<\>\=\'\"]/.test(e)),d=[];for(let e=0;e<n.length;e++){let s=n[e];if(s==="mkdir"&&p&&b()){let t=[],r=e+1;for(;r<n.length;){let c=n[r];if([">",">>","<","&","&&","|","||",";"].includes(c))break;c!=="-p"&&c!=="--parents"&&c!=="-v"&&c!=="--verbose"&&t.push(c),r++}if(t.length>0){let c=t.map(i=>{let a=i.replace(/^['"]|['"]$/g,""),l=i;return h(a)&&(l=i.replace(/\//g,"\\")),l});d.push("New-Item","-ItemType","Directory","-Force","-Path",c.join(","))}else d.push("New-Item","-ItemType","Directory","-Force");e=r-1;continue}if(s==="rm"&&p&&b()){let t=[],r=!1,c=!1,i=e+1;for(;i<n.length;){let l=n[i];if([">",">>","<","&","&&","|","||",";"].includes(l))break;l==="-rf"||l==="-fr"?(r=!0,c=!0):l==="-r"||l==="-R"||l==="--recursive"?r=!0:l==="-f"||l==="--force"?c=!0:t.push(l),i++}let a=["Remove-Item"];if(r&&a.push("-Recurse"),c&&a.push("-Force"),t.length>0){let l=t.map(m=>{let $=m.replace(/^['"]|['"]$/g,""),R=m;return h($)&&(R=m.replace(/\//g,"\\")),R});a.push("-Path",l.join(","))}d.push(...a),e=i-1;continue}if(s==="cp"&&p&&b()){let t=[],r=!1,c=!1,i=e+1;for(;i<n.length;){let l=n[i];if([">",">>","<","&","&&","|","||",";"].includes(l))break;l==="-r"||l==="-R"||l==="--recursive"?r=!0:l==="-f"||l==="--force"?c=!0:t.push(l),i++}let a=["Copy-Item"];if(r&&a.push("-Recurse"),c&&a.push("-Force"),t.length>0){let l=t.map(m=>{let $=m.replace(/^['"]|['"]$/g,""),R=m;return h($)&&(R=m.replace(/\//g,"\\")),R});if(l.length>1){let m=l.pop();a.push("-Path",l.join(","),"-Destination",m)}else a.push("-Path",l[0])}d.push(...a),e=i-1;continue}if(s==="touch"&&p&&b()){let t=[],r=e+1;for(;r<n.length;){let c=n[r];if([">",">>","<","&","&&","|","||",";"].includes(c))break;t.push(c),r++}if(t.length>0){let i=`(${t.map(a=>{let l=a.replace(/^['"]|['"]$/g,""),m=a;return h(l)&&(m=a.replace(/\//g,"\\")),m}).join(", ")}) | ForEach-Object { if (Test-Path $_) { (Get-Item $_).LastWriteTime = [System.DateTime]::Now } else { $null | Out-File -FilePath $_ } }`;d.push(i)}e=r-1;continue}if(s==="|"&&n[e+1]==="tee"){n[e+2]==="-a"?(d.push(">>"),e+=2):(d.push(">"),e+=1);continue}if(s==="|"&&n[e+1]==="cat"&&n[e+2]===">"){d.push(">"),e+=2;continue}if(s==="|"){let t=n[e+1];if(t){let r=t.replace(/^['"]|['"]$/g,""),c=/\.(txt|md|json|log|csv|html|css|py|js|xml|yaml|yml|pdf|docx|pptx|xlsx)$/i.test(r);if(h(r)&&c){d.push(">");continue}}}d.push(s)}let O=!1,u=d.map(e=>{if(e==="echo")return O=!0,e;[">",">>","<","&","&&","|","||",";"].includes(e)&&(O=!1);let t=/^['"]|['"]$/.test(e),r=e;O&&t&&(r=e.replace(/^['"]|['"]$/g,""));let c=/^['"]|['"]$/.test(r),i=r.replace(/^['"]|['"]$/g,"");h(i)&&(r=r.replace(/\//g,"\\"));let a=r.replace(/^['"]|['"]$/g,"");return a.includes(" ")&&!c&&(r=`"${a}"`),r});if(p){let e="",s=0;for(let t=0;t<u.length;t++){let r=u[t];r==="&&"?(e+="; if ($?) {",s++):r===";"?(e+=" }".repeat(s)+";",s=0):(e&&!e.endsWith(" ")&&!e.endsWith("{")&&(e+=" "),e+=r)}return e+=" }".repeat(s),e}return u.join(" ")},M=async(f,p={})=>{let{command:n}=A(f),{onChunk:o}=p;if(!n)return'ERROR: Missing "command" argument for exec_command.';let w=process.platform==="win32",g=p.systemSettings||{},h={};return g.networkAccess===!1&&(h.HTTP_PROXY="http://127.0.0.1:9999",h.HTTPS_PROXY="http://127.0.0.1:9999",h.ALL_PROXY="socks5://127.0.0.1:9999",h.http_proxy="http://127.0.0.1:9999",h.https_proxy="http://127.0.0.1:9999",h.all_proxy="socks5://127.0.0.1:9999",h.NO_PROXY="localhost,127.0.0.1"),new Promise(d=>{let O=u=>{let e=u==="pwsh"||u==="powershell",s=v(n,e),t;w?u==="pwsh"?t="pwsh.exe":u==="powershell"?t="powershell.exe":t="cmd.exe":t=process.env.SHELL||"bash";let r=w?e?["-NoProfile","-Command",s]:["/c",s]:["-c",s];if(g.networkAccess===!1&&!w){let c=t,i=[...r];if(process.platform==="linux")t="unshare",r=["-n","-r",c,...i];else if(process.platform==="darwin"){let a=`(version 1)
4
- (allow default)
5
- (deny network-outbound)
6
- (allow network-outbound (remote ip "localhost:*"))
7
- (allow network-outbound (remote ip "127.0.0.1:*"))
8
- `;t="sandbox-exec",r=["-p",a,c,...i]}}if(P)try{let c=P.spawn(t,r,{name:"xterm-256color",cols:p.cols||120,rows:p.rows||30,cwd:process.cwd(),env:{...process.env,CI:"false",TERM:"xterm-256color",FORCE_COLOR:"1",...h}});x=c,k=!0;let i="",a=!1;return c.onData(l=>{if(!a){i+=l,o&&o(l);let m=S(i);/(?:Network:\s+use\s+--host\s+to|Network:\s+Type\s+--host\s+to|Local:\s+http:\/\/localhost:\d+|ready in \d+\s*ms|Compiled successfully|Development server is running|Listening on:)/i.test(m)&&(a=!0,setTimeout(()=>d(`SUCCESS: Dev server started successfully in background.
9
-
10
- ${m}`),500))}}),c.onExit(({exitCode:l})=>{if(a)return;x=null;let m=E(i||""),$=S(m).replace(/\n{3,}/g,`
11
-
12
- `)||"Command executed with no output.";d(l!==0?`ERROR: Command [${n}] failed with exit code [${l}].
13
-
14
- ${$}`:`SUCCESS: Command [${n}] completed.
15
-
16
- ${$}`)}),!0}catch(c){return w&&(u==="pwsh"||u==="powershell")&&c.code==="ENOENT"?!1:(y(d,s,n,h,o,u,g),!0)}else return y(d,s,n,h,o,u,g),!0};if(w){let u=T();O(u)||(u==="pwsh"&&!O("powershell")||u==="powershell")&&O("cmd")}else O("bash")})},y=(f,p,n,o,w,g="powershell",h={})=>{let d=process.platform==="win32",O=g==="pwsh"||g==="powershell",u;d?g==="pwsh"?u="pwsh.exe":g==="powershell"?u="powershell.exe":u="cmd.exe":u=process.env.SHELL||"bash";let e=d?O?["-NoProfile","-Command",p]:["/c",p]:["-c",p];if(h.networkAccess===!1&&!d){let i=u,a=[...e];if(process.platform==="linux")u="unshare",e=["-n","-r",i,...a];else if(process.platform==="darwin"){let l=`(version 1)
17
- (allow default)
18
- (deny network-outbound)
19
- (allow network-outbound (remote ip "localhost:*"))
20
- (allow network-outbound (remote ip "127.0.0.1:*"))
21
- `;u="sandbox-exec",e=["-p",l,i,...a]}}let s=d?C(u,e,{cwd:process.cwd(),env:{...process.env,...o}}):C(u,e,{cwd:process.cwd(),env:{...process.env,CI:"false",TERM:"xterm-256color",FORCE_COLOR:"1",...o}});x=s,k=!1,s.stdin&&s.stdin.on("error",()=>{x=null});let t="",r="",c=!1;s.stdout.on("data",i=>{if(!c){let a=i.toString();t+=a,w&&w(a);let l=S(t);/(?:Network:\s+use\s+--host\s+to|Network:\s+Type\s+--host\s+to|Local:\s+http:\/\/localhost:\d+|ready in \d+\s*ms|Compiled successfully|Development server is running|Listening on:)/i.test(l)&&(c=!0,setTimeout(()=>f(`SUCCESS: Dev server started successfully in background.
22
-
23
- ${l}`),500))}}),s.stderr.on("data",i=>{if(!c){let a=i.toString();r+=a,w&&w(a)}}),s.on("close",i=>{if(c)return;x=null;let a=[],l=E(t),m=E(r);l&&a.push(`STDOUT:
24
- ${l}`),m&&a.push(`STDERR:
25
- ${m}`),i!==0&&a.push(`EXIT CODE: ${i}`);let $=a.join(`
26
-
27
- `)||"Command executed with no output.",R=S($).replace(/\n{3,}/g,`
28
-
29
- `);f(i!==0?`ERROR: Command [${n}] failed with exit code [${i}].
30
-
31
- ${R}`:`SUCCESS: Command [${n}] completed.
32
-
33
- ${R}`)}),s.on("error",i=>{if(d&&i.code==="ENOENT"){if(g==="pwsh"){let l=v(n,!0);return y(f,l,n,o,w,"powershell",h)}else if(g==="powershell"){let l=v(n,!1);return y(f,l,n,o,w,"cmd",h)}}x=null;let a=i instanceof Error?i.message:String(i);f(`ERROR: Failed to start command [${n}]: ${a}`)})};export{_ as a,E as b,x as c,k as d,D as e,F as f,v as g,M as h};
@@ -1,6 +0,0 @@
1
- import{a as j}from"./chunk-KFM2OZWJ.js";import{c as w,d as m}from"./chunk-SIINYZWE.js";import{f as T,g as C,k as N,l as L,r as x}from"./chunk-FDNLMLIM.js";import u from"fs-extra";import F from"path";import{nanoid as S}from"nanoid";var O=Promise.resolve(),I=t=>{let n=O.then(async()=>{try{return await t()}catch(s){throw console.error("Lock Operation Failed:",s),s}});return O=n.catch(()=>{}),n},M=async()=>{await u.ensureDir(C);let t={};if(await u.pathExists(T))try{t=w(T,{})}catch{t={}}for(let n in t){let s=F.join(C,`${n}.json`);Object.defineProperty(t[n],"messages",{get:()=>{if(u.existsSync(s))try{return w(s,[])}catch{return[]}return[]},set:e=>{try{m(s,e)}catch{}},enumerable:!1,configurable:!0})}return t},J=async(t,n,s)=>I(async()=>{await u.ensureDir(C);let e=await M(),r=e[t],a=(s||[]).filter(l=>!l.isUpdateNotification&&(!l.isMeta||l.text&&l.text.includes("Request Cancelled"))),i=l=>{if(!l)return;let E=typeof l=="string"?l:l.text||l.content||"";if(!E||typeof E!="string")return;let b=E.replace(/\s*\n+\s*\[Prompted on:.*?\]/g,"").replace(/\[\/?(?:STEERING HINT|QUESTION)(?::\s*\w+)?\]/gi,"").trim();if(!b)return;let R=b.split(/\s+/),D;return R.length>7?D=R.slice(0,7).join(" ")+"...":b.length>45?D=b.substring(0,45).trimEnd()+"...":D=b,D},o,d=a.filter(l=>l.role==="user"),A=d[0],h=d[d.length-1],c=i(h),f=i(A);r&&r.prompt?Math.random()<.3&&c?o=c:o=r.prompt:o=f||c;let p=n||(r?r.name:`Session ${t.slice(-6)}`),g=F.join(C,`${t}.json`);m(g,a),e[t]={name:p,prompt:o||void 0,updatedAt:Date.now()};let y={};for(let l in e)y[l]={name:e[l].name,prompt:e[l].prompt||void 0,updatedAt:e[l].updatedAt};m(T,y)}),W=async(t,n)=>I(async()=>{let s=await M();s[t]?(s[t].name=n,s[t].updatedAt=Date.now()):s[t]={name:n,updatedAt:Date.now()};let e={};for(let r in s)e[r]={name:s[r].name,prompt:s[r].prompt||void 0,updatedAt:s[r].updatedAt};m(T,e)}),k=async t=>I(async()=>{let n=await M();delete n[t];let s={};for(let i in n)s[i]={name:n[i].name,prompt:n[i].prompt||void 0,updatedAt:n[i].updatedAt};if(m(T,s),await u.pathExists(x))try{let i=w(x,[]);if(Array.isArray(i)){let o=i.filter(d=>Object.keys(d)[0]!==String(t));m(x,o)}}catch{}let e=w(N,{});e[t]&&(delete e[t],m(N,e));let r=w(L,{});r[t]&&(delete r[t],m(L,r)),await j.deleteChatBackups(t);let a=F.join(C,`${t}.json`);if(await u.pathExists(a))try{await u.remove(a)}catch{}return n}),Y=()=>`flow-${S(6)}`,q=async t=>{if(!t||t==="Never")return;let n=parseInt(t);if(isNaN(n))return;let s=await M(),e=Date.now(),r=n*24*60*60*1e3,a=0;for(let i in s){let o=s[i];o.updatedAt&&e-o.updatedAt>r&&(await k(i),a++)}return a},H=t=>{let n=t.replace(/[\[\]]/g,"").trim(),s=new Date(n);if(!isNaN(s.getTime()))return s.getTime();let e=n.split(/,\s*|\s+/);if(e.length===0)return null;let r=e[0],a=e[1]||"",i=e[2]||"",o=r.split(/[-\/.]/).map(Number);if(o.length!==3)return null;let d="en";try{d=Intl.DateTimeFormat().resolvedOptions().locale||"en"}catch{}let A=!/^en[-_]?us$|^en$/.test(d?.toLowerCase()),h,c,f;if(o[0]>1e3)h=o[0],c=o[1],f=o[2];else if(o[2]>1e3)h=o[2],o[0]>12?(f=o[0],c=o[1]):o[1]>12?(f=o[1],c=o[0]):A?(f=o[0],c=o[1]):(c=o[0],f=o[1]);else return null;if(c<1||c>12||f<1||f>31)return null;let p=0,g=0,y=0;if(a){let E=a.split(":").map(Number);p=E[0]||0,g=E[1]||0,y=E[2]||0,i.toLowerCase()==="pm"&&p<12?p+=12:i.toLowerCase()==="am"&&p===12&&(p=0)}let l=new Date(h,c-1,f,p,g,y);return isNaN(l.getTime())?null:l.getTime()},v=async t=>{try{if(!await u.pathExists(t))return;let n=await u.readFile(t,"utf8");if(!n.trim())return;let s=n.split(`
2
- `),e=[],r=null,a=/^\s*(?:DEBUG|ERROR|SEARCH|PUPPETEER)\b/i;for(let c of s)a.test(c)?(r&&e.push(r),r={header:c,body:[]}):r?r.body.push(c):e.push({header:c,body:[]});r&&e.push(r);let i=10080*60*1e3,o=Date.now(),d=[],A=/(\d{1,4}[-\/.]\d{1,4}[-\/.]\d{1,4}(?:,\s*|\s+)?(?:\d{1,2}:\d{2}:\d{2}(?:\s*[aApP][mM])?)?)/;for(let c of e){if(a.test(c.header)){let g=c.header.match(A);if(g){let y=H(g[1]);if(y&&o-y>i)continue}}let p=c.header+(c.body.length>0?`
3
- `+c.body.join(`
4
- `):"");d.push(p)}let h=d.join(`
5
- `).trim();h?await u.writeFile(t,h+`
6
- `,"utf8"):await u.writeFile(t,"","utf8")}catch{}},K=async t=>{try{if(!await u.pathExists(t))return;let n=async s=>{let e=await u.readdir(s);for(let r of e){let a=F.join(s,r);(await u.stat(a)).isDirectory()?(await n(a),(await u.readdir(a)).length===0&&await u.remove(a)):r.endsWith(".log")&&await v(a)}};await n(t)}catch{}},Q=(t,n=4)=>{if(t.length<=1)return t;let s=t[0],e=t.slice(1),r=n*2,a=e.slice(r);return[s,...a]};var X=async(t,n,s)=>I(async()=>{let e=w(x,[]);Array.isArray(e)||(e=[]);let r={total:n,context:s},a=e.findIndex(i=>Object.keys(i)[0]===String(t));a!==-1?e[a]={[String(t)]:r}:e.push({[String(t)]:r}),m(x,e)}),z=async t=>{try{if(!await u.pathExists(x))return{total:0,context:0};let n=w(x,[]);if(!Array.isArray(n))return{total:0,context:0};let s=n.find(e=>Object.keys(e)[0]===String(t));return s?{total:0,context:0,...s[String(t)]}:{total:0,context:0}}catch{return{total:0,context:0}}};export{M as a,J as b,W as c,k as d,Y as e,q as f,K as g,Q as h,X as i,z as j};
@@ -1 +0,0 @@
1
- import{l as K}from"./chunk-AAPXJU65.js";import{a as et,b as _}from"./chunk-SIINYZWE.js";import{h as G,i as L}from"./chunk-FDNLMLIM.js";import p from"fs-extra";import st from"path";var ut=()=>Math.random().toString(36).substring(2)+Date.now().toString(36),r=null,b=null,ot=0,F=!1,S={agent:0,background:0,search:0,toolSuccess:0,toolFailure:0,toolDenied:0,duration:0,tokens:0,cachedTokens:0,candidateTokens:0,linesAdded:0,linesRemoved:0,imageCalls:[]},O=(e,i)=>{if(!e)return{};let n=Object.keys(e),c=new Date(new Date(i).getTime()-720*60*60*1e3),t={};for(let s of n)new Date(s)>=c&&(t[s]=e[s]);return t},j=async()=>{let e=new Date().toISOString().split("T")[0];try{!await p.exists(L)&&await p.exists(G)&&(await p.ensureDir(st.dirname(L)),await p.move(G,L))}catch{}let i=L+".tmp",n=null;try{if(await p.exists(i)){let t=(await p.readFile(i,"utf8")).trim(),s=null;if(t.startsWith("{")||t.startsWith("[")?s=JSON.parse(t):s=JSON.parse(_(t)),s&&s.date&&s.stats){n=s;try{await p.rename(i,L)}catch{}}else try{await p.remove(i)}catch{}}}catch{try{await p.remove(i)}catch{}}if(!n)try{if(await p.exists(L)){let t=(await p.readFile(L,"utf8")).trim();t.startsWith("{")||t.startsWith("[")?n=JSON.parse(t):n=JSON.parse(_(t))}}catch{}let c=n;if(c){let t=c.stats||{...S},s={...S,...t};Array.isArray(s.imageCalls)||(s.imageCalls=[]);let a=c.history||{},o=O(a,e);if(Object.keys(a).length!==Object.keys(o).length&&(F=!0),c.date===e)return{...c,stats:s,history:o};{let l=c.date,f=s,d={...o};return l&&(d[l]=f),{date:e,stats:{...S},history:O(d,e)}}}return{date:e,stats:{...S},history:{}}},$=async()=>{if(!(!F||!r))try{await p.ensureDir(st.dirname(L));let e=null;try{if(await p.exists(L)){let t=(await p.readFile(L,"utf8")).trim();t.startsWith("{")||t.startsWith("[")?e=JSON.parse(t):e=JSON.parse(_(t))}}catch{}if(e&&e.date===r.date&&e.stats){for(let t in r.stats)if(e.stats[t]!==void 0){if(Array.isArray(r.stats[t])){let s=Array.isArray(e.stats[t])?e.stats[t]:[],a=r.stats[t],o=new Map;for(let l of[...s,...a])l&&l.timestamp&&o.set(l.timestamp,l);r.stats[t]=Array.from(o.values())}else if(typeof r.stats[t]=="number")r.stats[t]=Math.max(r.stats[t],Number(e.stats[t])||0);else if(r.stats[t]&&typeof r.stats[t]=="object"){let s=e.stats[t]||{},a=r.stats[t];for(let o in s)if(typeof s[o]=="number")a[o]=Math.max(a[o]||0,s[o]);else if(s[o]&&typeof s[o]=="object"){a[o]||(a[o]={});for(let l in s[o])if(typeof s[o][l]=="number")a[o][l]=Math.max(a[o][l]||0,s[o][l]);else if(s[o][l]&&typeof s[o][l]=="object"){a[o][l]||(a[o][l]={});for(let f in s[o][l])a[o][l][f]=Math.max(a[o][l][f]||0,s[o][l][f])}}}}}if(e&&e.history){let t={...r.history||{}};for(let s in e.history)if(t[s])for(let a in t[s])if(a==="imageCalls"){let o=Array.isArray(e.history[s].imageCalls)?e.history[s].imageCalls:[],l=Array.isArray(t[s].imageCalls)?t[s].imageCalls:[],f=new Map;for(let d of[...o,...l])d&&d.timestamp&&f.set(d.timestamp,d);t[s].imageCalls=Array.from(f.values())}else typeof t[s][a]=="number"&&(t[s][a]=Math.max(t[s][a],Number(e.history[s][a])||0));else t[s]=e.history[s];r.history=O(t,r.date||today)}else if(r&&r.history){let t=new Date().toISOString().split("T")[0];r.history=O(r.history,t)}r.saveId=ut();let i=L+".tmp",n=et(JSON.stringify(r,null,2));await p.writeFile(i,n,"utf8");let c=await p.open(i,"r+");await p.fsync(c),await p.close(c),await p.rename(i,L),F=!1,ot=Date.now()}catch{}},J=()=>{if(F=!0,b)return;let e=Date.now(),i=Math.max(0,1500-(e-ot));b=setTimeout(async()=>{await $(),b=null},i),b.unref&&b.unref()},wt=async()=>{r=await j(),F&&J()},Tt=async()=>{b&&(clearTimeout(b),b=null),await $()},v=async()=>{let e=new Date().toISOString().split("T")[0];if(!r)r=await j();else if(r.date!==e){let i=r.date,n=r.stats,c=r.history||{};n&&(c[i]=n),r={date:e,stats:{...S},history:O(c,e)},F=!0,await $()}return r&&r.stats&&!Array.isArray(r.stats.imageCalls)&&(r.stats.imageCalls=[]),r.stats},it=async()=>{let e=new Date().toISOString().split("T")[0];r||(r=await j()),r.date!==e&&await v();let i=r.history||{},n=O(i,e);r.history=n;let c=r.stats||{...S},t={...S};t.imageCalls=[],t.models={};let s=(a,o)=>{for(let l in a)if(l==="imageCalls")a.imageCalls=[...a.imageCalls||[],...o.imageCalls||[]];else if(l==="models"){let f=o.models||{};for(let d in f){a.models[d]||(a.models[d]={});for(let m in f[d]){a.models[d][m]||(a.models[d][m]={tokens:0,cachedTokens:0,candidateTokens:0});let u=a.models[d][m],h=f[d][m];u.tokens+=h.tokens||0,u.cachedTokens+=h.cachedTokens||0,u.candidateTokens+=h.candidateTokens||0}}}else typeof a[l]=="number"&&(a[l]+=o[l]||0)};s(t,c);for(let a in n)s(t,n[a]);return t},Lt=async(e,i)=>{e==="toolSuccess"?q.toolSuccess++:e==="toolFailure"?q.toolFailure++:e==="toolDenied"&&q.toolDenied++;let n=await v();n[e]!==void 0&&n[e]++,i&&e==="agent"&&(n.providerRequests||(n.providerRequests={}),n.providerRequests[i]=(n.providerRequests[i]||0)+1),J()},q={linesAdded:0,linesRemoved:0,toolSuccess:0,toolFailure:0,toolDenied:0},Dt=async(e,i,n,c)=>{e==="linesAdded"?q.linesAdded+=i:e==="linesRemoved"&&(q.linesRemoved+=i);let t=await v();if(t[e]!==void 0&&(t[e]+=Math.floor(i)),n&&c&&(e==="tokens"||e==="cachedTokens"||e==="candidateTokens")){t.models||(t.models={}),t.models[n]||(t.models[n]={}),t.models[n][c]||(t.models[n][c]={tokens:0,cachedTokens:0,candidateTokens:0});let s=t.models[n][c];e==="tokens"&&(s.tokens+=Math.floor(i)),e==="cachedTokens"&&(s.cachedTokens+=Math.floor(i)),e==="candidateTokens"&&(s.candidateTokens+=Math.floor(i))}J()},at=async(e=1)=>{let i=new Date,n=i.toISOString().split("T")[0];r||(r=await j()),r.date!==n&&await v();let c=i.getFullYear(),t=i.getMonth();i.getDate()<e&&(t-=1,t<0&&(t=11,c-=1));let o=new Date(c,t,e).toISOString().split("T")[0],l=r.history||{},f=r.stats||{...S},d={...S};d.imageCalls=[],d.models={};let m=(u,h)=>{for(let k in u)if(k==="imageCalls")u.imageCalls=[...u.imageCalls||[],...h.imageCalls||[]];else if(k==="models"){let D=h.models||{};for(let y in D){u.models[y]||(u.models[y]={});for(let w in D[y]){u.models[y][w]||(u.models[y][w]={tokens:0,cachedTokens:0,candidateTokens:0});let C=u.models[y][w],M=D[y][w];C.tokens+=M.tokens||0,C.cachedTokens+=M.cachedTokens||0,C.candidateTokens+=M.candidateTokens||0}}}else typeof u[k]=="number"&&(u[k]+=h[k]||0)};m(d,f);for(let u in l)u>=o&&u<n&&m(d,l[u]);return d},ft=async(e,i={})=>{let n=await K().catch(()=>({})),c=i.apiTier||n.apiTier||"Free",t=i.quotas||i.systemSettings?.quotas||n.quotas||{},s=t.providerBudgets||{},a=!!s.__useProvider,o=i.aiProvider||n.aiProvider||"Google",l=a&&!!s[o],f=()=>{if(l){let d=s[o];return{agentLimit:typeof d.agentLimit=="number"&&d.agentLimit>0?d.agentLimit:99999999,tokenLimit:typeof d.tokenLimit=="number"&&d.tokenLimit>0?d.tokenLimit:99999999999999,monthlyTokenLimit:typeof d.monthlyTokenLimit=="number"&&d.monthlyTokenLimit>0?d.monthlyTokenLimit:99999999999999}}return{agentLimit:t.agentLimit||99999999,tokenLimit:t.tokenLimit||99999999999999,monthlyTokenLimit:t.monthlyTokenLimit||99999999999999}};if(e==="agent"){let{agentLimit:d,tokenLimit:m,monthlyTokenLimit:u}=f(),h=await v(),k;t.resetMode==="Custom"?k=await at(t.resetDay||1):k=await it();let D=0,y=0,w=0;if(l){D=h.providerRequests?.[o]||0;let C=h.models?.[o]||{};for(let I in C)y+=C[I]?.tokens||0;let M=k.models?.[o]||{};for(let I in M)w+=M[I]?.tokens||0}else D=h.agent||0,y=h.tokens||0,w=k.tokens||0;return c==="Free"&&h.agent+h.background>=999999?{allowed:!1,reason:"Free Tier Daily Usage Limit Exceeded"}:D>=d?{allowed:!1,reason:l?`Daily Request Limit Reached for ${o}`:"Daily Agent Request Limit Reached"}:y>=m?{allowed:!1,reason:l?`Daily Token Budget Exhausted for ${o}`:"Daily Token Budget Exhausted"}:w>=u?{allowed:!1,reason:l?`Monthly Token Budget Exhausted for ${o}`:"Monthly Token Budget Exhausted"}:{allowed:!0}}if(e==="background"){let d=await v();if(c==="Free"&&d.agent+d.background>=999999)return{allowed:!1,reason:"Free Tier Background Limit Exceeded"};let m=d.background<(t.backgroundLimit||999999);return{allowed:m,reason:m?void 0:"Background Request Limit Exceeded"}}if(e==="search"){let m=(await v()).search<(t.searchLimit||100);return{allowed:m,reason:m?void 0:"Search Quota Exceeded"}}return{allowed:!0}},Mt=async(e,i={})=>(await ft(e,i)).allowed,Y=e=>{if(!e||e.length===0)return[];let n=[...e].sort((t,s)=>t.timestamp-s.timestamp),c=[];for(let t of n){if(c.length>0){let s=c[c.length-1];if(t.timestamp>=s.start&&t.timestamp<s.end){s.calls.push(t),s.spent+=t.cost;continue}}c.push({start:t.timestamp,end:t.timestamp+36e5,calls:[t],spent:t.cost})}return c},nt=(e,i)=>{if(!e||e.length===0)return .025;let c=Y(e);if(c.length===0)return .025;let t=[];for(let m of c){let u=.025;if(t.length>0){let k=t[t.length-1],D=!1;if(t.length>=2){let y=t[t.length-2];k.ratio>=.8&&y.ratio>=.8&&(D=!0)}if(D)u=.015;else{let y=k.limit,w=k.ratio;w>=.8?u=y===.015?.015:y:w<.4?u=Math.min(.025,y+.005):w>=.4&&w<.6?u=Math.min(.025,y+.004):u=Math.min(.025,y+.002)}}let h=u>0?m.spent/u:0;t.push({limit:u,spent:m.spent,ratio:h})}let s=c[c.length-1];if(i<s.end)return t[t.length-1].limit;let a=t[t.length-1].limit,o=a,l=t[t.length-1].ratio,f=s.end,d=0;for(let m=t.length-1;m>=0&&t[m].ratio>=.8;m--)d++;for(;f<=i;){let m=.025;d>=2?m=.015:l>=.8?m=o===.015?.015:o:l<.4?m=Math.min(.025,o+.005):l>=.4&&l<.6?m=Math.min(.025,o+.004):m=Math.min(.025,o+.002),o=m,l=0,d=0,f+=36e5,a=m}return a},St=async e=>{let i=e.imageSettings||{keyType:"Default",quality:"Low-High"};if(i.keyType!=="Default")return!0;let c={Low:.001,"Low-High":.002,Medium:.008,"Medium-High":.01,High:.045,Ultra:.0488,Premium:.15}[i.quality]||.002,t=await v();t.imageCalls||(t.imageCalls=[]);let s=Date.now(),a=Y(t.imageCalls),o=0;if(a.length>0){let f=a[a.length-1];s>=f.start&&s<f.end&&(o=f.spent)}let l=nt(t.imageCalls,s);return o+c<=l},vt=async()=>{let e=await v();e.imageCalls||(e.imageCalls=[]);let i=Date.now(),n=Y(e.imageCalls),c=[],t=0,s=0;if(n.length>0){let f=n[n.length-1];i>=f.start&&i<f.end&&(c=f.calls,t=f.spent,s=Math.max(0,Math.ceil((f.end-i)/(60*1e3))))}let a=nt(e.imageCalls,i),o=Math.max(0,a-t),l=t;return{totalSpent:t,remaining:o,activeCallsCount:c.length,nextResetMin:s,reclaimCost:l,limit:a}},Ct=async e=>{let i=e.imageSettings||{keyType:"Default",quality:"Low-High"},c={Low:.001,"Low-High":.002,Medium:.008,"Medium-High":.01,High:.045,Ultra:.0488,Premium:.1}[i.quality]||.002,t=await v();t.imageCalls||(t.imageCalls=[]),t.imageCalls.push({timestamp:Date.now(),cost:c}),J()},xt=async()=>{let e=new Date().toISOString().split("T")[0];r||(r=await j()),r.date!==e&&await v();let i=r.stats||{...S},n=r.history||{},c=new Set(Object.keys(n));c.add(e);let s=Array.from(c).sort().map(T=>{let x=T===e?i:n[T]||{},g={...S,...x},B=g.tokens||0,P=g.cachedTokens||0,H=g.candidateTokens||0,N=Math.max(0,B-H),E=Math.max(0,N-P),A=g.agent||0,R=g.background||0,U=g.search||0,rt=A+R+U,Q=g.toolSuccess||0,V=g.toolFailure||0,X=g.toolDenied||0,W=Q+V+X,lt=W>0?(Q/W*100).toFixed(1):"100.0",z=g.linesAdded||0,Z=g.linesRemoved||0,tt=Array.isArray(g.imageCalls)?g.imageCalls:[],ct=tt.reduce((dt,mt)=>dt+(mt.cost||0),0);return{date:T,tokens:B,cachedTokens:P,candidateTokens:H,promptTokens:N,uncachedPromptTokens:E,agent:A,background:R,search:U,totalRequests:rt,toolSuccess:Q,toolFailure:V,toolDenied:X,totalTools:W,toolSuccessRate:parseFloat(lt),linesAdded:z,linesRemoved:Z,netLines:z-Z,duration:g.duration||0,imageCallsCount:tt.length,imageCost:ct,models:g.models||{},providerRequests:g.providerRequests||{}}}),a=await K().catch(()=>({})),o=a.quotas||{},l=a.apiTier||"Free",f=await it().catch(()=>({tokens:0,agent:0})),d=null;o.resetMode==="Custom"&&(d=await at(o.resetDay||1).catch(()=>({tokens:0})));let m=o.tokenLimit||0,u=o.monthlyTokenLimit||0,h=o.agentLimit||0,k=o.resetMode||"Daily",D=o.resetDay||1,y=o.providerBudgets||{},w=!!y.__useProvider,C=["Google","Anthropic","OpenAI","DeepSeek","Mistral","NVIDIA","OpenRouter","Ollama","InferX","SenseNova","AIHubMix","Poolside"];Object.keys(y).forEach(T=>{T!=="__useProvider"&&!C.includes(T)&&C.push(T)});let M=[];for(let T of C){let x=y[T];if(x&&(x.agentLimit||x.tokenLimit||x.monthlyTokenLimit)){let g=0,B=i.models?.[T]||{};for(let U in B)g+=B[U]?.tokens||0;let P=0,H=(o.resetMode==="Custom"?d?.models:f?.models)?.[T]||{};for(let U in H)P+=H[U]?.tokens||0;let N=i.providerRequests?.[T]||0,E=x.tokenLimit||0,A=x.monthlyTokenLimit||0,R=x.agentLimit||0;M.push({provider:T,dailyTokens:g,dailyTokenLimit:E,isDailyUnlimited:E>=9999999999999||E===0,monthlyTokens:P,monthlyTokenLimit:A,isMonthlyUnlimited:A>=9999999999999||A===0,dailyRequests:N,dailyAgentLimit:R,isRequestsUnlimited:R>=9999999||R===0})}}let I={apiTier:l,resetMode:k,resetDay:D,quotas:o,usingProviderBudgets:w&&M.length>0||M.length>0,providerBudgetsList:M,daily:{tokensUsed:i.tokens||0,tokenLimit:m,agentRequests:i.agent||0,agentLimit:h,isUnlimitedTokens:m>=9999999999999||m===0,isUnlimitedRequests:h>=9999999||h===0},monthly:{tokensUsed:(o.resetMode==="Custom"?d?.tokens:f?.tokens)||0,tokenLimit:u,isUnlimitedTokens:u>=9999999999999||u===0},providerBudgets:y};return{currentDate:e,todayStats:i,history:n,timeline:s,budget:I,runtimeSession:{...q}}};export{wt as a,Tt as b,v as c,it as d,Lt as e,q as f,Dt as g,at as h,ft as i,Mt as j,St as k,vt as l,Ct as m,xt as n};
@@ -1 +0,0 @@
1
- import{a,b,c,d,e}from"./chunk-YNU56P2H.js";import"./chunk-FDNLMLIM.js";export{b as exportCurrentChat,d as exportErrorLogs,e as handleExport,a as parseAgentText,c as parseLogEntries};
@@ -1 +0,0 @@
1
- import{a as $}from"./chunk-KFM2OZWJ.js";import{k as S,l as C,m as B}from"./chunk-WKHYRBBK.js";import{l as I}from"./chunk-AAPXJU65.js";import"./chunk-SIINYZWE.js";import"./chunk-FDNLMLIM.js";import{a as T}from"./chunk-Y5JU726N.js";import b from"fs-extra";import E from"path";var F=(a,y={})=>{try{if(a.length<8||a[0]!==137||a[1]!==80||a[2]!==78||a[3]!==71)return a;let s=[],c=[];for(let r=0;r<256;r++){let e=r;for(let n=0;n<8;n++)e&1?e=3988292384^e>>>1:e=e>>>1;c[r]=e}let l=r=>{let e=4294967295;for(let n=0;n<r.length;n++)e=c[(e^r[n])&255]^e>>>8;return(e^4294967295)>>>0},f=(r,e)=>{let n=Buffer.from(r,"ascii"),i=Buffer.from(e,"utf-8"),u=n.length+1+i.length,o=Buffer.alloc(8+u+4);o.writeUInt32BE(u,0),o.write("tEXt",4,"ascii"),n.copy(o,8),o[8+n.length]=0,i.copy(o,8+n.length+1);let w=l(o.subarray(4,8+u));return o.writeUInt32BE(w,8+u),o};for(let[r,e]of Object.entries(y))e!=null&&s.push(f(r,String(e)));if(s.length===0)return a;if(a.subarray(12,16).toString("ascii")==="IHDR"){let e=a.subarray(0,33),n=a.subarray(33);return Buffer.concat([e,...s,n])}return a}catch{return a}},N=async(a,y={})=>{let s=T(a),c=s.prompt||s.text,l=s.path||s.outputPath||s.output||"generated_image.png",f=s.ratio;if(!c)return'ERROR: Missing "prompt" argument for generate_image.';let r=["nsfw","naked","nudity","nude","porn","sex","xxx","erotic","gore","bloody","violence","abuse","suicide","murder","hentai","pedophile","rape"],e=c.toLowerCase();if(r.some(i=>e.includes(i)))return"ERROR: Prompt blocked by system safety filter (inappropriate or unsafe content detected).";try{let i=await I();if(!await S(i))return`ERROR: Insufficient Quota for selected quality. Either tell user reduce quality or wait for next refresh cycle (${(await C()).nextResetMin||60}m).`;let o=i.imageSettings||{keyType:"Default",quality:"Low-High",apiKey:""},w=o.keyType==="Custom"&&o.apiKey?o.apiKey:FALLBACK_IMAGE_KEY,x={Low:"flux","Low-High":"zimage",Medium:"gptimage","Medium-High":"gptimage",High:"qwen-image",Ultra:"gptimage-large",Premium:"nanobanana-pro"}[o.quality]||"zimage",g=1024,m=1024;if(f){let t=f.replace(/\s+/g,"");t==="16:9"?(g=1024,m=576):t==="9:16"?(g=576,m=1024):t==="4:3"?(g=1024,m=768):t==="3:4"?(g=768,m=1024):t==="1:1"&&(g=1024,m=1024)}let M=Math.floor(Math.random()*1e7),k=`https://gen.pollinations.ai/image/${encodeURIComponent(c)}?model=${x}&width=${g}&height=${m}&seed=${M}&enhance=true&reasoning=high&quality=high&negative=${encodeURIComponent("deformed, distorted, disfigured, poorly drawn, bad anatomy, wrong anatomy, extra limb, missing limb, floating limbs, disconnected limbs, mutation, mutated hands and fingers, blurry, low quality, low resolution, extra fingers, censored, watermarks, signatures")}`,d=await fetch(k,{method:"GET",headers:{Authorization:`Bearer ${w}`}});if(!d.ok){let t=d.status,h="";try{h=await d.text()}catch{}return t===402||h.includes("Insufficient balance")||h.includes("PAYMENT_REQUIRED")?"ERROR: Image Generation Currently unavailable. Try again later.":`ERROR: Image Generation failed with status [${t}]: ${h||"Unknown API Error"}`}if((d.headers.get("content-type")||"").includes("application/json")){let t=await d.json();return t.status===402||t.error&&t.error.code==="PAYMENT_REQUIRED"?"ERROR: Image Generation Currently unavailable. Try again later.":`ERROR: Image Generation failed: ${t.error?.message||JSON.stringify(t)}`}let O=await d.arrayBuffer(),p=Buffer.from(O),P={Title:c,Description:"Generated via FluxFlow CLI",Software:"FluxFlow CLI",Author:"FluxFlow","Creation Time":new Date().toISOString(),Prompt:c,Model:`Fluxflow:${x}`,Ratio:f||"1:1",Seed:String(M)};p=F(p,P);let R=E.resolve(process.cwd(),l);await b.ensureDir(E.dirname(R)),await $.recordFileChange(R),await b.writeFile(R,p),await B(i);let v=E.extname(l).toLowerCase(),L={".jpg":"image/jpeg",".jpeg":"image/jpeg",".png":"image/png",".webp":"image/webp"}[v]||"image/png";return y.isMultiModal!==!1?{text:`SUCCESS: Image successfully generated from prompt [${c}] and saved to [${l}]. Output attached to multimodal part`,binaryPart:{inlineData:{data:p.toString("base64"),mimeType:L}}}:`SUCCESS: Image successfully generated from prompt [${c}] and saved to [${l}].`}catch(i){return`ERROR: Failed during image generation: ${i instanceof Error?i.message:String(i)}`}};export{N as generate_image};
@@ -1,6 +0,0 @@
1
- import{a as k,c as d}from"./chunk-56EJGQU3.js";import{a as b}from"./chunk-Y5JU726N.js";var I=async(w,s={})=>{let{runSubagent:U}=await import("./ai-X7EEY6S3.js"),l=b(w),c=l.task||l.instruction||l.prompt,C=l.model||null,E=l.title||null,m=l.tools||null;if(!c)return'ERROR: Missing "task" argument for invoke.';let f=null;if(m)try{let t=m.trim();t.startsWith("[")&&t.endsWith("]")&&(t=t.substring(1,t.length-1)),f=t.split(",").map(n=>n.trim().replace(/^["']|["']$/g,"")).filter(Boolean)}catch{}let i=`subagent-${Date.now()}-${Math.floor(Math.random()*1e3)}`,h=null,S=null,$=new Promise((t,n)=>{h=t,S=n}),e={id:i,title:E||c.substring(0,30),task:c,status:"running",startedAt:Date.now(),lastChunkTime:Date.now(),wps:0,questions:[],pendingSteerMessages:[],steer:t=>{t&&e.pendingSteerMessages.push(t)},completionPromise:$,_resolveCompletion:h,_rejectCompletion:S,progress:[]},r={chunks:[],totalWords:0};k.push(e),s.onSubagentUpdate&&s.onSubagentUpdate();let a=[],M={...s,taskId:i,onAskMain:async t=>{let n=`q-${Date.now()}-${Math.floor(Math.random()*1e3)}`,o=null,p=new Promise(g=>{o=g}),u={id:n,question:t,answered:!1,answer:null,askedAt:Date.now(),_resolve:o};return e.questions.push(u),e.status="waiting",s.onSubagentUpdate&&s.onSubagentUpdate(),d(`[SYSTEM] Background subagent "${e.title}" is WAITING FOR YOUR INPUT: "${t}"
2
- Respond using tool: [tool:functions.Answer(id="${i}", answer="...")]
3
- [/SYSTEM]`),await p},onVisualFeedback:t=>{e.lastChunkTime=Date.now();let n=t.replace(/\x1b\[[0-9;]*m/g,""),o=n.match(/[✔✘✗✖🔍📖→➕↻•]\s*([A-Za-z0-9\s-]+)/);o?e.currentTool=o[1].trim():e.currentTool=n,s.onSubagentUpdate&&s.onSubagentUpdate()},onTokenChunk:(t,n)=>{let o=Date.now();if(e.lastChunkTime=o,e.currentTool="Thinking",typeof n=="number"&&n>0){r.totalWords+=n,r.chunks.push({time:o,words:n});let p=o-400;if(r.chunks=r.chunks.filter(u=>u.time>=p),r.chunks.length>0){let u=r.chunks.reduce((_,A)=>_+A.words,0),T=r.chunks[0].time,g=Math.max(.4,(o-T)/1e3);e.wps=Math.round(u/g)}}s.onSubagentUpdate&&s.onSubagentUpdate()}};return U(c,M,C,f,50,t=>{if(e.status==="cancelled")return;if(t.startsWith("[Subagent Turn")&&a.length>0&&(e.progress.push([...a]),a=[]),t.includes("[Executing Tool]")){let o=t.match(/\[Executing Tool\]\s*([a-zA-Z0-9_]+)/);o&&(!e.currentTool||e.currentTool==="Thinking")&&(e.currentTool=o[1])}let n=t;if(n.startsWith("[Tool Result]")){let o=n.split(`
4
- `);o.length>5&&(n=o.slice(0,4).join(`
5
- `)+`
6
- ... [Content/Diff Truncated from Logs] ...`)}a.push(n),s.onSubagentUpdate&&s.onSubagentUpdate()},!0).then(t=>{if(e.status==="cancelled"){e._resolveCompletion&&e._resolveCompletion(t);return}a.length>0&&(e.progress.push([...a]),a=[]),e.status="completed",e.finalAnswer=t,s.onSubagentUpdate&&s.onSubagentUpdate(),d(`[SYSTEM] Background subagent "${e.title}" (id: ${i}) has FINISHED. Call GetProgress(id="${i}") to see the final result. [/SYSTEM]`),e._resolveCompletion&&e._resolveCompletion(t)}).catch(async t=>{let{isTerminationSignaled:n}=await import("./ai-X7EEY6S3.js");if(t.message==="Subagent task was cancelled."||e.status==="cancelled"||n()){e.status="cancelled",a.push("[SUBAGENT CANCELLED] Task was cancelled."),e.progress.push([...a]),s.onSubagentUpdate&&s.onSubagentUpdate(),e._resolveCompletion&&e._resolveCompletion(null);return}a.push(`[SUBAGENT FAILURE] Error: ${t.message}`),e.progress.push([...a]),e.status="failed",e.error=t.message,s.onSubagentUpdate&&s.onSubagentUpdate(),d(`[SYSTEM] Background subagent "${e.title}" (id: ${i}) FAILED with error: ${t.message}. [/SYSTEM]`),e._rejectCompletion&&e._rejectCompletion(t)}),`SUCCESS: Background subagent started. Task ID: ${i}`};export{I as invoke};
@@ -1,3 +0,0 @@
1
- import{a as o}from"./chunk-Y5JU726N.js";var k=async(b,t={})=>{let{runSubagent:u}=await import("./ai-X7EEY6S3.js"),s=o(b),a=s.task||s.instruction||s.prompt,m=s.model||null,l=s.tools||null;if(!a)return'ERROR: Missing "task" argument for invokeSync.';let r=null;if(l)try{let e=l.trim();e.startsWith("[")&&e.endsWith("]")&&(e=e.substring(1,e.length-1)),r=e.split(",").map(i=>i.trim().replace(/^["']|["']$/g,"")).filter(Boolean)}catch{}let n=s.title||a.substring(0,30);try{t.onVisualFeedback&&t.onVisualFeedback(`\x1B[95mSubAgent\x1B[0m: \x1B[32mGeneralist\x1B[0m \u2192 ${n}`);let e=await u(a,t,m,r,50);return t.onVisualFeedback&&t.onVisualFeedback(`\x1B[95mSubAgent\x1B[0m: \x1B[32mGeneralist\x1B[0m \u2192 ${n} [COMPLETED]
2
- `),e}catch(e){let{isTerminationSignaled:i}=await import("./ai-X7EEY6S3.js"),c=e.message==="Subagent task was cancelled by user."||i();if(t.onVisualFeedback){let d=c?"[CANCELLED]":"[FAILED]";t.onVisualFeedback(`\x1B[95mSubAgent\x1B[0m: \x1B[32mGeneralist\x1B[0m \u2192 ${n} ${d}
3
- `)}return`ERROR: Subagent execution failed: ${e.message}`}};export{k as invokeSync};
@@ -1 +0,0 @@
1
- import{a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u}from"./chunk-FDNLMLIM.js";export{p as ACTIVE_TX_FILE,m as BACKUPS_DIR,r as CONTEXT_FILE,t as CU_CACHE_DIR,c as DATA_DIR,a as FLUXFLOW_DIR,g as HISTORY_DIR,f as HISTORY_FILE,o as LEDGER_ADVANCE_FILE,n as LEDGER_FILE,d as LOGS_DIR,j as MEMORIES_FILE,s as PARSER_DIR,q as PATHS_FILE,e as SECRET_DIR,b as SETTINGS_FILE,l as TEMP_MEM_CHAT_FILE,k as TEMP_MEM_FILE,u as THINKING_CONFIG_FILE,i as USAGE_FILE,h as USAGE_FILE_OLD};
@@ -1,8 +0,0 @@
1
- import{a as Z}from"./chunk-FDNLMLIM.js";import{a as q}from"./chunk-Y5JU726N.js";import M from"fs/promises";import R from"path";import G from"fast-glob";import{Minimatch as H}from"minimatch";import J from"fs";async function S(a,r,e=a,f=1){if(f>12)return[];let i=[],s;try{s=await M.readdir(a,{withFileTypes:!0})}catch{return[]}for(let t of s){let n=R.join(a,t.name),o=R.relative(e,n),u=o.split(R.sep).map(g=>g.toLowerCase()),z=t.name.toLowerCase();if(!r.some(g=>{let L=g.toLowerCase();return L.startsWith(".")&&z.endsWith(L)?!0:u.some(F=>F===L||F.startsWith(".pnpm"))}))if(t.isDirectory()){let g=await S(n,r,e,f+1);i=i.concat(g)}else t.isFile()&&i.push({fullPath:n,relativePath:o})}return i}function Q(a,r,e=1/0){if(a===r)return 0;if(a.length===0)return r.length;if(r.length===0)return a.length;if(Math.abs(a.length-r.length)>e)return e+1;let f=Array.from({length:r.length+1},(i,s)=>s);for(let i=1;i<=a.length;i++){let s=[i],t=i;for(let n=1;n<=r.length;n++){let o=a[i-1]===r[n-1]?0:1,u=Math.min(s[n-1]+1,f[n]+1,f[n-1]+o);s.push(u),u<t&&(t=u)}if(f=s,t>e)return e+1}return f[r.length]}function tt(a,r){if(!a||!r)return!1;let e=a.toLowerCase(),f=r.toLowerCase();if(e.includes(f))return!0;let i=e.split(/[^a-z0-9]+/).filter(t=>t.length>0),s=f.split(/[^a-z0-9]+/).filter(t=>t.length>1||f.length===1&&t.length>0);return s.length===0?!1:s.every(t=>{let n=t.length<=2?0:t.length<=5?1:2;for(let o of i)if(o.includes(t)||t.length>=3&&o.length>=3&&Math.abs(o.length-t.length)<=n&&Q(t,o,n)<=n)return!0;return!1})}async function et(a){let r=R.join(Z,"skills","fluxflow"),e=R.join(r,"references");if(!J.existsSync(e))return"No documentation found in #docs.";let f=async o=>{let u=[];try{let z=await M.readdir(o,{withFileTypes:!0});for(let P of z){let g=R.join(o,P.name);P.isDirectory()?u=u.concat(await f(g)):P.isFile()&&u.push(g)}}catch{}return u},i=await f(e);if(i.length===0)return"No documentation found in #docs.";let s=null;try{s=new RegExp(a,"i")}catch{}let t=a.toLowerCase(),n=[];for(let o of i)try{let u=await M.readFile(o,"utf8");if(s&&s.test(u)||u.toLowerCase().includes(t)){let P=R.relative(r,o).replace(/\\/g,"/");n.push(P)}}catch{}return n.length===0?`No matches found for "${a}" in #docs.`:`DOCs Search "${a}":
2
- ${n.map(o=>`- ${o}`).join(`
3
- `)}`}var ct=async a=>{let{keyword:r,path:e,fuzzy:f,subString:i,regex:s}=q(a);if(r==null)return'ERROR: Missing "keyword" argument.';let t=String(r);if(e&&(e.trim().toLowerCase()==="#docs"||e.trim().toLowerCase()==="#doc"||e.trim().toLowerCase()==="#documentation"||e.trim().toLowerCase().includes("#skill/global/fluxflow")))return et(t);let n=l=>l===!0||l==="true"||l===1||l==="1"||l==="yes",o=s===!1||s==="false"||s===0||s==="0"||s==="no",u=s===!0||s==="true"||s===1||s==="1"||s==="yes",z=n(f)||n(i),P=null,g=null;if(o)z||(g=new RegExp(`(?<![\\w])${t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}(?![\\w])`,"i"));else{try{P=new RegExp(t,"i")}catch(l){if(u)return`ERROR: Invalid regex pattern "${t}": ${l.message}`}g=new RegExp(`(?<![\\w])${t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}(?![\\w])`,"i")}let L=[".git","node_modules",".gemini","dist","build",".next","out",".cache","bin","obj","vendor","venv",".idea",".gradle",".terraform","target","coverage",".vscode",".svn",".hg",".fslckout",".github",".gitlab",".circleci",".gitea",".gitee",".lerna",".changeset",".nx",".npm",".yarn",".pnpm-store",".pnpm",".expo",".nuxt",".svelte-kit",".docusaurus",".turbo",".vercel","bower_components",".netlify",".vuepress",".quasar",".output",".angular","jspm_packages",".parcel-cache",".rollup.cache",".rspack",".vitepress","__pycache__",".pytest_cache",".mypy_cache",".tox",".poetry","env","vhdl",".ipynb_checkpoints",".jupyter",".conda",".pdm-build",".bundle",".yardoc",".metadata","App_Data","ClientBin",".cargo",".rustc_info",".go","Godeps","_vendor",".rake_tasks","CMakefiles",".wakatime",".dart_tool",".fvm",".cocoapods","Pods",".pub-cache",".symlinks","DerivedData",".xcworkspace",".serverless",".aws",".gcloud",".azure",".kube",".vagrant",".docker","postgres-data","redis-data","mongo-data",".Spotlight-V100",".Trashes","$RECYCLE.BIN","System Volume Information",".DocumentRevisions-V100",".fseventsd","AppData","Application Data","Local","LocalLow","Roaming","$WinREAgent","$WINDOWS.~BT","$WINDOWS.~WS","scw","System32","SysWOW64",".AppleDouble",".AppleDB",".AppleDesktop","_CodeSignature",".cmio",".LSOverride",".localized",".TemporaryItems",".Trash",".Trash-0",".Trash-1000",".gvfs",".local",".config",".dbus",".fontconfig",".snap",".var",".lost+found","lost+found",".thumb",".thumbnails","EFI","boot","grub","logs","log",".nyc_output",".sonar",".ruff_cache",".VSCodeCounter",".exe",".dll",".so",".dylib",".png",".jpg",".jpeg",".gif",".ico",".svg",".webp",".mp3",".mp4",".avi",".zip",".tgz",".tar",".gz",".7z",".rar",".pdf",".docx",".xlsx",".pptx",".woff",".woff2",".ttf",".eot",".skills","skills"],F=150;try{let l=[],x=process.cwd(),m=null;if(e){let c=e.split(";").map(h=>h.trim()).filter(Boolean),y=c.some(h=>h.startsWith("!"));if(c.some(h=>G.isDynamicPattern(h)||/[*?{}[\]()|+]/.test(h))){m="glob";let h=e.replace(/\\/g,"/"),b=c.map($=>$.replace(/\\/g,"/")),p=L.map($=>$.startsWith(".")?`**/*${$}`:`**/${$}/**`);if(y&&!c.some($=>!$.startsWith("!"))){let $=await S(x,L,x),C=d=>d.endsWith("/")?d+"**":d,D=b.filter(d=>d.startsWith("!")).map(d=>C(d.slice(1))),I=b.filter(d=>!d.startsWith("!")).map(C);l=$.filter(d=>{let w=d.relativePath.replace(/\\/g,"/"),B=I.length===0||I.some(_=>{try{return new H(_).match(w)}catch{return!1}}),T=D.some(_=>{try{return new H(_).match(w)}catch{return!1}});return B&&!T})}else{let $=b.some(D=>/[\(\)\|]|\.\*/.test(D)),C=[];if(!$)try{C=await G(b,{cwd:x,ignore:p,dot:!0,onlyFiles:!0,absolute:!1})}catch{C=[]}if(C.length===0&&($||G.isDynamicPattern(h))){let D=h.match(/^([^\*\?\(\)\|\[\]\s]+)\//),I=D&&!/[\*\?\(\)\|\[\]]/.test(D[1])?R.resolve(x,D[1]):x,d=await S(I,L,x);try{let w=h.replace(/^\.\//,"");w=w.replace(/\.\*\/(\\.|[^\/])/g,".*$1"),!w.startsWith("^")&&!w.startsWith(".*")&&(w=`.*${w}`);let B=new RegExp(w.endsWith("$")?w:`${w}$`,"i");l=d.filter(T=>{let _=T.relativePath.replace(/\\/g,"/");return B.test(_)})}catch{l=[]}}else l=C.map(D=>({fullPath:R.resolve(x,D),relativePath:D}))}}else{let h=e.replace(/[\/\\]+$/,""),b=R.resolve(x,h);try{let p=await M.stat(b);if(p.isDirectory())m="dir",l=await S(b,L,x);else if(p.isFile())m="file",l.push({fullPath:b,relativePath:R.relative(x,b)});else return`ERROR: Path is neither a file nor a directory: ${e}`}catch{return`ERROR: Path not found: ${e}`}}}else l=await S(x,L);let U=l.map(async c=>{try{let y=await M.readFile(c.fullPath,"utf-8");if(y.includes("\0"))return[];let v=y.split(/\r?\n/),h=[];for(let p=0;p<v.length;p++)(z?v[p].toLowerCase().includes(t.toLowerCase())||tt(v[p],t):o?g&&g.test(v[p]):P&&P.test(v[p])||g&&g.test(v[p]))&&h.push({line:p+1,content:v[p].trim()});return h.length===0?null:{path:c.relativePath.replace(/\\/g,"/"),matches:h}}catch{return[]}}),X=await Promise.all(U),W=[],E=0;for(let c of X){if(!c||!c.matches)continue;if(E>=F)break;let y=F-E,v=c.matches.slice(0,y);W.push({path:c.path,matches:v}),E+=v.length}typeof global.gc=="function"&&global.gc();let k=z?"(fuzzy mode)":u?"(regex mode)":o?"(keyword mode)":"(standard mode)";if(W.length===0){let c=m==="file"?` in '${e}'`:m==="dir"||m==="glob"?` in '${e}'`:". Try to specify files",y=m==="dir"?"[DIR]":m==="glob"?"[GLOB]":"";return`${y}${y?" ":""}Found 0 matches of '${t}'${c}${k?` ${k}`:""}`}let j=k?` ${k}`:"",V=`${W.length} file${W.length===1?"":"s"}`,N=`${E} match${E===1?"":"es"}`,A;m==="file"?A=`Found ${N} of '${t}' in '${e}'${j}:`:m==="dir"||m==="glob"?A=`Found ${N} of '${t}' in '${e}' across ${V}${j}:`:A=`Found ${N} of '${t}' across ${V}${j}:`;let K=m==="dir"?"[DIR]":m==="glob"?"[GLOB]":"",O=`${K}${K?" ":""}${A}
4
-
5
- `;for(let c of W){O+=`${c.path}
6
- `;for(let y of c.matches)O+=` ${y.line}: ${y.content}
7
- `;O+=`
8
- `}return O.trimEnd()}catch(l){return`ERROR: ${l.message}`}};export{ct as search_keyword};
@@ -1 +0,0 @@
1
- import{l as a,m as b}from"./chunk-AAPXJU65.js";import"./chunk-SIINYZWE.js";import"./chunk-FDNLMLIM.js";export{a as loadSettings,b as saveSettings};
@@ -1,13 +0,0 @@
1
- import{g as h,h as m,i as R}from"./chunk-ZSVBC2ZI.js";import{a as F}from"./chunk-KFM2OZWJ.js";import{l as g}from"./chunk-AAPXJU65.js";import"./chunk-SIINYZWE.js";import"./chunk-FDNLMLIM.js";import{a as $}from"./chunk-Y5JU726N.js";import c from"fs";import M from"path";var v=async(w,S={})=>{let n=$(w),t=n.path;if(!t)return'ERROR: Missing "path" argument for PatchFile.';let{patchPairs:o,allowMultiple:C,error:p}=h(n);if(p)return`ERROR: ${p}`;if(o.length===0)return"ERROR: No valid replacement pairs found. Use searchContent1, newContent1, etc.";let E=n.allowMultiple!==void 0?n.allowMultiple===!0||String(n.allowMultiple).toLowerCase()==="true":C,i=M.resolve(process.cwd(),t);try{if(!c.existsSync(i))return`ERROR: File [${t}] does not exist. Use WriteFile instead.`;let e=S.forcedContent||c.readFileSync(i,"utf8");e.startsWith("\uFEFF")&&(e=e.slice(1));let s=e.replace(/\r\n/g,`
2
- `).replace(/\r/g,`
3
- `),{content:u,results:l}=m(s,o,{allowMultiple:E}),a=l.filter(r=>!r.success),f=l.filter(r=>r.success);if(f.length===0)return`ERROR: Patch Failed to apply to [${t}].
4
- ${a.map(r=>` \u2022 ${r.error}`).join(`
5
- `)}`;await F.recordFileChange(i,s),c.writeFileSync(i,u,"utf8");let{systemSettings:y}=await g(),d=R(s,u,l,12,y?.compressToolResults);return a.length>0?`SUCCESS: File [${t}] updated with some blocks failed. [${f.length}/${o.length}] blocks applied.
6
-
7
- Failures:
8
- ${a.map(r=>` \u2022 ${r.error}`).join(`
9
- `)}
10
-
11
- ${d}`:`SUCCESS: File [${t}] updated. [${l.length}/${o.length}] blocks applied.
12
-
13
- ${d}`}catch(e){let s=e instanceof Error?e.message:String(e);return`ERROR: Failed to update file [${t}]: ${s}`}};export{v as update_file};
@@ -1 +0,0 @@
1
- import{a,b}from"./chunk-AZGFDR6K.js";import"./chunk-WKHYRBBK.js";import"./chunk-AAPXJU65.js";import"./chunk-SIINYZWE.js";import"./chunk-FDNLMLIM.js";export{b as openUsageDashboard,a as startUsageServer};
@@ -1 +0,0 @@
1
- import{a}from"./chunk-X3ZZM2GL.js";import"./chunk-FDNLMLIM.js";import"./chunk-Y5JU726N.js";export{a as view_file};