neural-loom 0.2.56 → 0.2.57
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.next/BUILD_ID +1 -1
- package/.next/build-manifest.json +5 -5
- package/.next/cache/.previewinfo +1 -1
- package/.next/cache/.rscinfo +1 -1
- package/.next/cache/.tsbuildinfo +1 -1
- package/.next/diagnostics/route-bundle-stats.json +5 -5
- package/.next/fallback-build-manifest.json +3 -3
- package/.next/prerender-manifest.json +3 -3
- package/.next/server/app/_global-error/page/build-manifest.json +2 -2
- package/.next/server/app/_global-error.html +1 -1
- package/.next/server/app/_global-error.rsc +1 -1
- package/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/_not-found/page/build-manifest.json +2 -2
- package/.next/server/app/_not-found.html +1 -1
- package/.next/server/app/_not-found.rsc +1 -1
- package/.next/server/app/_not-found.segments/_full.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_index.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/index.html +1 -1
- package/.next/server/app/index.rsc +2 -2
- package/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
- package/.next/server/app/index.segments/_full.segment.rsc +2 -2
- package/.next/server/app/index.segments/_head.segment.rsc +1 -1
- package/.next/server/app/index.segments/_index.segment.rsc +1 -1
- package/.next/server/app/index.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/page/build-manifest.json +2 -2
- package/.next/server/app/page/react-loadable-manifest.json +2 -2
- package/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__0_o7_jj._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__0_o7_jj._.js.map +1 -1
- package/.next/server/middleware-build-manifest.js +5 -5
- package/.next/server/pages/404.html +1 -1
- package/.next/server/pages/500.html +1 -1
- package/.next/server/server-reference-manifest.js +1 -1
- package/.next/server/server-reference-manifest.json +1 -1
- package/.next/static/chunks/08o_~ynkkb9ph.js +31 -0
- package/.next/static/chunks/{0eidfx-s54367.js → 0gy2rolwxzjl8.js} +1 -1
- package/.next/static/chunks/0obzqbxd9niy0.js +1 -0
- package/.next/static/chunks/12m0vh2h637z4.js +1 -0
- package/.next/static/chunks/15b-kgkhsdb0s.js +11 -0
- package/.next/static/chunks/{turbopack-0.g.4cakdth0h.js → turbopack-06zh3hgrjcphg.js} +1 -1
- package/.next/trace +1 -1
- package/.next/trace-build +1 -1
- package/package.json +2 -1
- package/public/manifest.json +6 -2
- package/src/app/components/IdeLayout.tsx +98 -12
- package/.next/static/chunks/0ljspdd3cv1ft.js +0 -31
- package/.next/static/chunks/0st7_hghhyuv4.js +0 -1
- package/.next/static/chunks/162be8draqhn..js +0 -11
- /package/.next/static/{E5W0YoY_yEbo_xJeWaMEB → HoQA8gsbI6xeWQpFAPJZ9}/_buildManifest.js +0 -0
- /package/.next/static/{E5W0YoY_yEbo_xJeWaMEB → HoQA8gsbI6xeWQpFAPJZ9}/_clientMiddlewareManifest.js +0 -0
- /package/.next/static/{E5W0YoY_yEbo_xJeWaMEB → HoQA8gsbI6xeWQpFAPJZ9}/_ssgManifest.js +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,3839,e=>{"use strict";var t=e.i(43476),r=e.i(71645),o=e.i(70703),n=e.i(5991),i=e.i(54370);function a({content:e}){let o=(0,r.useMemo)(()=>{if(!e)return[];let t=e.split("\n"),r=[],o=null;for(let e=0;e<t.length;e++){let n=t[e];if(o&&"code"===o.type){n.trim().startsWith("```")?(r.push(o),o=null):o.content.push(n);continue}if(o&&"table"===o.type)if(n.trim().startsWith("|")){o.content.push(n);continue}else r.push(o),o=null;let i=n.trim();if(i.startsWith("```")){o&&r.push(o),o={type:"code",language:i.substring(3).trim(),content:[]};continue}if(/^(\s*[-*_]\s*){3,}$/.test(i)){o&&r.push(o),r.push({type:"hr"}),o=null;continue}let a=n.match(/^(#{1,6})\s+(.*)$/);if(a){o&&r.push(o),r.push({type:"h",level:a[1].length,content:a[2]}),o=null;continue}let l=n.match(/^>\s*(.*)$/);if(l){if(o)if("blockquote"===o.type){o.content.push(l[1]);continue}else r.push(o);o={type:"blockquote",content:[l[1]]};continue}let s=n.match(/^([-*+])\s+(.*)$/);if(s){if(o)if("ul"===o.type){o.content.push(s[2]);continue}else r.push(o);o={type:"ul",content:[s[2]]};continue}let d=n.match(/^(\d+)\.\s+(.*)$/);if(d){if(o)if("ol"===o.type){o.content.push(d[2]);continue}else r.push(o);o={type:"ol",content:[d[2]]};continue}if(i.startsWith("|")){o&&r.push(o),o={type:"table",content:[n]};continue}if(""===i){o&&(r.push(o),o=null);continue}o?"p"===o.type?o.content=o.content+" "+i:(r.push(o),o={type:"p",content:i}):o={type:"p",content:i}}return o&&r.push(o),r},[e]),n=0;function i(e){return function e(r){if(!r)return[];let o=r.match(/`(.*?)`/),i=r.match(/\*\*(.*?)\*\*/),a=r.match(/\*(.*?)\*/),l=r.match(/\[(.*?)\]\((.*?)\)/),s=[o?{index:o.index,type:"code",match:o}:null,i?{index:i.index,type:"bold",match:i}:null,a?{index:a.index,type:"italic",match:a}:null,l?{index:l.index,type:"link",match:l}:null].filter(Boolean);if(0===s.length)return[r];s.sort((e,t)=>e.index-t.index);let d=s[0],c=r.substring(0,d.index),p=d.match[0],u=r.substring(d.index+p.length),m=[];c&&m.push(c);let h=`inline-${d.type}-${n++}`;return"code"===d.type?m.push((0,t.jsx)("code",{style:y,children:d.match[1]},h)):"bold"===d.type?m.push((0,t.jsx)("strong",{style:{fontWeight:700,color:"var(--foreground)"},children:e(d.match[1])},h)):"italic"===d.type?m.push((0,t.jsx)("em",{style:{fontStyle:"italic"},children:e(d.match[1])},h)):"link"===d.type&&m.push((0,t.jsx)("a",{href:d.match[2],target:"_blank",rel:"noopener noreferrer",style:b,children:e(d.match[1])},h)),[...m,...e(u)]}(e)}return(0,t.jsx)("div",{style:s,children:o.map((e,r)=>{let o=`block-${e.type}-${r}`;switch(e.type){case"h":{let r=i(e.content);switch(e.level){case 1:return(0,t.jsx)("h1",{style:c,children:r},o);case 2:return(0,t.jsx)("h2",{style:p,children:r},o);case 3:return(0,t.jsx)("h3",{style:u,children:r},o);default:return(0,t.jsx)("h4",{style:m,children:r},o)}}case"code":{let r=e.content.join("\n");return(0,t.jsx)(l,{code:r,language:e.language||""},o)}case"blockquote":return(0,t.jsx)("blockquote",{style:z,children:e.content&&e.content.map((e,r)=>(0,t.jsx)("p",{style:{margin:"0.25rem 0"},children:i(e)},r))},o);case"ul":return(0,t.jsx)("ul",{style:h,children:e.content&&e.content.map((e,r)=>(0,t.jsxs)("li",{style:f,children:[(0,t.jsx)("span",{style:{marginRight:"0.5rem",color:"var(--accent)"},children:"•"}),(0,t.jsx)("div",{style:{flex:1},children:i(e)})]},r))},o);case"ol":return(0,t.jsx)("ol",{style:g,children:e.content&&e.content.map((e,r)=>(0,t.jsxs)("li",{style:f,children:[(0,t.jsxs)("span",{style:{marginRight:"0.5rem",color:"var(--accent)",fontWeight:600},children:[r+1,"."]}),(0,t.jsx)("div",{style:{flex:1},children:i(e)})]},r))},o);case"table":return function(e,r){let o=e.map(e=>e.split("|").map(e=>e.trim()).filter((e,t,r)=>t>0&&t<r.length-1));if(0===o.length)return null;let n=o[0],a=o.slice(1).filter(e=>!e.every(e=>e.startsWith("-")||""===e));return(0,t.jsx)("div",{style:v,children:(0,t.jsxs)("table",{style:j,children:[(0,t.jsx)("thead",{children:(0,t.jsx)("tr",{children:n.map((e,r)=>(0,t.jsx)("th",{style:C,children:i(e)},r))})}),(0,t.jsx)("tbody",{children:a.map((e,r)=>(0,t.jsx)("tr",{style:r%2==0?w:S,children:e.map((e,r)=>(0,t.jsx)("td",{style:k,children:i(e)},r))},r))})]})},r)}(e.content,o);case"hr":return(0,t.jsx)("hr",{style:x},o);case"p":return(0,t.jsx)("p",{style:d,children:i(e.content)},o);default:return null}})})}function l({code:e,language:o}){let[n,i]=(0,r.useState)(!1);return(0,t.jsxs)("div",{style:T,children:[(0,t.jsxs)("div",{style:R,children:[(0,t.jsx)("span",{children:o||"code"}),(0,t.jsx)("button",{onClick:()=>{navigator.clipboard.writeText(e),i(!0),setTimeout(()=>i(!1),2e3)},style:W,children:n?"Copied! ✓":"Copy"})]}),(0,t.jsx)("pre",{style:P,children:(0,t.jsx)("code",{children:e})})]})}let s={fontFamily:"var(--font-sans), sans-serif",color:"var(--foreground)",lineHeight:1.6,padding:"1.5rem",overflowY:"auto",height:"100%",backgroundColor:"#080c14",borderLeft:"1px solid var(--border)"},d={fontSize:"0.875rem",marginBottom:"1rem",color:"var(--foreground-muted, #94a3b8)"},c={fontSize:"1.5rem",fontWeight:700,margin:"1.5rem 0 1rem 0",paddingBottom:"0.3rem",borderBottom:"1px solid var(--border)",color:"var(--foreground)",background:"linear-gradient(135deg, #fff 0%, #a855f7 100%)",WebkitBackgroundClip:"text",WebkitTextFillColor:"transparent"},p={fontSize:"1.25rem",fontWeight:650,margin:"1.25rem 0 0.85rem 0",paddingBottom:"0.25rem",borderBottom:"1px solid var(--border)",color:"var(--foreground)"},u={fontSize:"1.05rem",fontWeight:600,margin:"1rem 0 0.75rem 0",color:"var(--foreground)"},m={fontSize:"0.925rem",fontWeight:600,margin:"0.85rem 0 0.5rem 0",color:"var(--foreground)"},h={listStyleType:"none",padding:0,margin:"0 0 1rem 0"},g={listStyleType:"none",padding:0,margin:"0 0 1rem 0"},f={display:"flex",alignItems:"flex-start",fontSize:"0.875rem",marginBottom:"0.375rem",color:"var(--foreground-muted, #94a3b8)"},x={border:"none",height:"1px",background:"linear-gradient(90deg, var(--border) 0%, rgba(255,255,255,0.05) 100%)",margin:"1.5rem 0"},y={fontFamily:"var(--font-mono), monospace",fontSize:"0.85em",backgroundColor:"rgba(255, 255, 255, 0.06)",border:"1px solid rgba(255, 255, 255, 0.08)",borderRadius:"4px",padding:"0.1rem 0.3rem",color:"#f87171"},b={color:"#60a5fa",textDecoration:"underline",fontWeight:500},v={width:"100%",overflowX:"auto",margin:"1rem 0",borderRadius:"8px",border:"1px solid var(--border)",backgroundColor:"rgba(255, 255, 255, 0.01)"},j={width:"100%",borderCollapse:"collapse",fontSize:"0.85rem"},C={backgroundColor:"rgba(255, 255, 255, 0.03)",borderBottom:"2px solid var(--border)",padding:"0.5rem 0.75rem",fontWeight:700,textAlign:"left",color:"var(--foreground)"},k={borderBottom:"1px solid var(--border)",padding:"0.5rem 0.75rem",color:"var(--foreground-muted, #94a3b8)"},w={backgroundColor:"rgba(255, 255, 255, 0.01)"},S={backgroundColor:"transparent"},z={borderLeft:"4px solid #a855f7",backgroundColor:"rgba(168, 85, 247, 0.03)",padding:"0.5rem 1rem",margin:"1rem 0",borderRadius:"4px",fontStyle:"italic",color:"var(--muted)"},T={margin:"1rem 0",borderRadius:"8px",border:"1px solid var(--border)",backgroundColor:"#05070a",overflow:"hidden"},R={display:"flex",justifyContent:"space-between",alignItems:"center",padding:"0.35rem 0.75rem",backgroundColor:"rgba(255, 255, 255, 0.02)",borderBottom:"1px solid var(--border)",fontSize:"0.7rem",color:"var(--muted)",textTransform:"uppercase",fontFamily:"var(--font-mono), monospace"},P={margin:0,padding:"1rem",overflowX:"auto",fontSize:"0.8rem",fontFamily:"var(--font-mono), monospace",lineHeight:1.5,color:"#e2e8f0"},W={background:"none",border:"1px solid var(--border)",borderRadius:"4px",padding:"2px 6px",color:"var(--muted)",cursor:"pointer",fontSize:"0.65rem",transition:"all 0.1s ease"};var I=e.i(66381);let L=(0,o.default)(()=>e.A(53096),{loadableGenerated:{modules:[67211]},ssr:!1}),E=e=>{e.editor.defineTheme("neural-loom-dark",{base:"vs-dark",inherit:!0,rules:[{token:"",foreground:"d4d4d4"},{token:"comment",foreground:"6a9955"},{token:"keyword",foreground:"c586c0"},{token:"string",foreground:"ce9178"},{token:"number",foreground:"b5cea8"},{token:"regexp",foreground:"d16969"},{token:"type",foreground:"4ec9b0"},{token:"class",foreground:"4ec9b0"},{token:"function",foreground:"dcdcaa"}],colors:{"editor.background":"#05070a","editor.foreground":"#d4d4d4","editorLineNumber.foreground":"#5a5a5a","editorLineNumber.activeForeground":"#c084fc","editor.lineHighlightBackground":"#0f131a","editor.selectionBackground":"#264f78","editorCursor.foreground":"#c084fc"}})},B={minimap:{enabled:!0},fontSize:13,lineNumbers:"on",wordWrap:"on",automaticLayout:!0,scrollBeyondLastLine:!1,tabSize:2},F=e=>"mock"===e?"🧪":e.includes("-docker")?"🐳":e.includes("-ssh")?"🌐":"💻",O={display:"flex",width:"100%",height:"100%",flex:1,minHeight:0,backgroundColor:"#05070a",border:"1px solid var(--border)",borderRadius:"12px",overflow:"hidden",boxShadow:"0 20px 25px -5px rgba(0, 0, 0, 0.6)"},M={width:"50px",backgroundColor:"#030406",borderRight:"1px solid var(--border)",display:"flex",flexDirection:"column",justifyContent:"space-between",alignItems:"center",padding:"0.75rem 0"},D={display:"flex",flexDirection:"column",width:"100%",gap:"0.5rem"},N={width:"100%",height:"45px",display:"flex",alignItems:"center",justifyContent:"center",cursor:"pointer",fontSize:"1.25rem",transition:"all 0.15s ease"},$={width:"300px",backgroundColor:"#080c14",borderRight:"1px solid var(--border)",display:"flex",flexDirection:"column",overflow:"hidden"},A={padding:"0.75rem 1rem",borderBottom:"1px solid var(--border)",display:"flex",alignItems:"center",justifyContent:"space-between",background:"rgba(255,255,255,0.02)"},U={flex:1,overflowY:"auto",padding:"0.75rem 0"},J={padding:"0.25rem 1rem",fontSize:"0.75rem",fontWeight:700,color:"var(--muted)",display:"flex",alignItems:"center",justifyContent:"space-between",textTransform:"uppercase",letterSpacing:"0.05em"},V={fontSize:"0.6rem",backgroundColor:"rgba(59, 130, 246, 0.1)",color:"#3b82f6",padding:"0.1rem 0.3rem",borderRadius:"3px",textTransform:"none",letterSpacing:"normal"},G={fontSize:"0.75rem",fontWeight:600,color:"var(--foreground)"},H={flex:1,display:"flex",flexDirection:"column",overflow:"hidden",backgroundColor:"#0b101b"},K={flex:1,display:"flex",flexDirection:"column",borderBottom:"1px solid var(--border)",overflow:"hidden"},_={height:"35px",backgroundColor:"#05070a",borderBottom:"1px solid var(--border)",display:"flex",alignItems:"center",justifyContent:"space-between",paddingRight:"0.75rem"},Y={display:"flex",height:"100%",overflowX:"auto"},q={padding:"0 1rem",height:"100%",display:"flex",alignItems:"center",gap:"0.75rem",fontSize:"0.75rem",borderRight:"1px solid var(--border)",borderBottom:"2px solid transparent",cursor:"pointer",transition:"all 0.15s ease",maxWidth:"150px"},X={fontSize:"0.65rem",color:"var(--muted)",cursor:"pointer",padding:"2px"},Q={color:"var(--primary)",fontSize:"0.65rem",marginLeft:"2px"},Z={padding:"0.25rem 0.5rem",borderRadius:"4px",border:"1px solid var(--border-focus)",backgroundColor:"rgba(16, 185, 129, 0.15)",color:"var(--success)",fontSize:"0.7rem",fontWeight:600},ee={flex:1,position:"relative",overflow:"hidden"},et={display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",height:"100%",color:"var(--muted)",textAlign:"center",padding:"2rem"},er={flex:1.4,backgroundColor:"#05070a",display:"flex",flexDirection:"column",overflow:"hidden"},eo={padding:"0.5rem 1rem",borderBottom:"1px solid var(--border)",display:"flex",alignItems:"center",justifyContent:"space-between",backgroundColor:"rgba(255,255,255,0.01)"},en={padding:"0.3rem 0.6rem",borderRadius:"4px",border:"1px solid var(--primary)",backgroundColor:"transparent",color:"var(--primary)",fontSize:"0.7rem",fontWeight:600,cursor:"pointer"},ei={padding:"0.3rem 0.6rem",borderRadius:"4px",border:"1px solid var(--success)",backgroundColor:"transparent",color:"var(--success)",fontSize:"0.7rem",fontWeight:600,cursor:"pointer"},ea={flex:1,overflow:"hidden"};function el({node:e,onSelect:o,onCreate:n,onRename:i,onDelete:a,isReadOnly:l=!1}){let[s,d]=(0,r.useState)(!1),[c,p]=(0,r.useState)(!1),u="directory"===e.type,m={padding:"0.25rem 0.5rem",display:"flex",alignItems:"center",justifyContent:"space-between",fontSize:"0.8rem",fontFamily:"var(--font-mono), monospace",cursor:"pointer",color:"var(--foreground)",borderRadius:"4px",transition:"background 0.1s ease",userSelect:"none",backgroundColor:c?"rgba(255, 255, 255, 0.05)":"transparent",minWidth:0,width:"100%"},h={display:"flex",alignItems:"center",gap:"0.375rem",flex:1,minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},g={display:c?"flex":"none",alignItems:"center",gap:"0.25rem",paddingLeft:"0.5rem",flexShrink:0},f={background:"none",border:"none",padding:"2px 4px",cursor:"pointer",fontSize:"0.75rem",color:"var(--muted)",borderRadius:"3px",transition:"all 0.1s ease"},x=(e,t)=>{e.stopPropagation(),t()};return u?(0,t.jsxs)("div",{children:[(0,t.jsxs)("div",{onClick:()=>d(!s),style:m,onMouseEnter:()=>p(!0),onMouseLeave:()=>p(!1),children:[(0,t.jsxs)("div",{style:h,children:[(0,t.jsx)("span",{style:{color:"#eab308"},children:s?"📂":"📁"}),(0,t.jsx)("span",{style:{fontWeight:600,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:e.name})]}),!l&&(0,t.jsxs)("div",{style:g,children:[(0,t.jsx)("button",{onClick:t=>x(t,()=>n(e.path,"file")),style:f,title:"New File inside...",onMouseEnter:e=>e.currentTarget.style.color="var(--success)",onMouseLeave:e=>e.currentTarget.style.color="var(--muted)",children:"📄+"}),(0,t.jsx)("button",{onClick:t=>x(t,()=>n(e.path,"directory")),style:f,title:"New Folder inside...",onMouseEnter:e=>e.currentTarget.style.color="var(--success)",onMouseLeave:e=>e.currentTarget.style.color="var(--muted)",children:"📁+"}),(0,t.jsx)("button",{onClick:t=>x(t,()=>i(e.path)),style:f,title:"Rename...",onMouseEnter:e=>e.currentTarget.style.color="var(--primary)",onMouseLeave:e=>e.currentTarget.style.color="var(--muted)",children:"✏️"}),(0,t.jsx)("button",{onClick:t=>x(t,()=>a(e.path)),style:f,title:"Delete Folder",onMouseEnter:e=>e.currentTarget.style.color="var(--danger)",onMouseLeave:e=>e.currentTarget.style.color="var(--muted)",children:"🗑️"})]})]}),s&&e.children&&(0,t.jsx)("div",{style:{paddingLeft:"10px",borderLeft:"1px solid rgba(255, 255, 255, 0.05)",marginLeft:"8px"},children:e.children.map(e=>(0,t.jsx)(el,{node:e,onSelect:o,onCreate:n,onRename:i,onDelete:a,isReadOnly:l},e.path))})]}):(0,t.jsxs)("div",{onClick:()=>o(e.path),style:m,onMouseEnter:()=>p(!0),onMouseLeave:()=>p(!1),children:[(0,t.jsxs)("div",{style:h,children:[(0,t.jsx)("span",{style:{color:"#3b82f6"},children:"📄"}),(0,t.jsx)("span",{style:{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:e.name})]}),!l&&(0,t.jsxs)("div",{style:g,children:[(0,t.jsx)("button",{onClick:t=>x(t,()=>i(e.path)),style:f,title:"Rename...",onMouseEnter:e=>e.currentTarget.style.color="var(--primary)",onMouseLeave:e=>e.currentTarget.style.color="var(--muted)",children:"✏️"}),(0,t.jsx)("button",{onClick:t=>x(t,()=>a(e.path)),style:f,title:"Delete File",onMouseEnter:e=>e.currentTarget.style.color="var(--danger)",onMouseLeave:e=>e.currentTarget.style.color="var(--muted)",children:"🗑️"})]})]})}let es={position:"fixed",top:0,left:0,right:0,bottom:0,backgroundColor:"rgba(0,0,0,0.7)",display:"flex",alignItems:"center",justifyContent:"center",zIndex:1e3,backdropFilter:"blur(4px)"},ed={width:"420px",backgroundColor:"#080c14",border:"1px solid var(--border)",borderRadius:"12px",padding:"1.5rem",boxShadow:"0 20px 25px -5px rgba(0, 0, 0, 0.8)"},ec={width:"100%",backgroundColor:"#05070a",border:"1px solid var(--border)",borderRadius:"6px",padding:"0.5rem 0.75rem",color:"#e2e8f0",fontSize:"0.85rem",outline:"none",marginBottom:"1.5rem",fontFamily:"var(--font-mono), monospace"},ep={display:"flex",justifyContent:"flex-end",gap:"0.75rem"},eu={backgroundColor:"transparent",border:"1px solid var(--border)",color:"var(--foreground)",padding:"0.5rem 1rem",borderRadius:"6px",fontSize:"0.8rem",fontWeight:600,cursor:"pointer"},em={backgroundColor:"var(--primary)",border:"none",color:"#ffffff",padding:"0.5rem 1rem",borderRadius:"6px",fontSize:"0.8rem",fontWeight:600,cursor:"pointer"},eh={background:"none",border:"none",color:"var(--muted)",cursor:"pointer",fontSize:"0.8rem",padding:"4px",borderRadius:"3px",transition:"all 0.1s ease"},eg={position:"fixed",top:0,left:0,right:0,bottom:0,backgroundColor:"rgba(0,0,0,0.5)",display:"flex",alignItems:"flex-start",justifyContent:"center",zIndex:1100,paddingTop:"5vh",backdropFilter:"blur(2px)"},ef={width:"600px",backgroundColor:"#080c14",border:"1px solid var(--border)",borderRadius:"8px",boxShadow:"0 10px 25px -5px rgba(0, 0, 0, 0.8)",display:"flex",flexDirection:"column",overflow:"hidden"},ex={width:"100%",backgroundColor:"#05070a",border:"none",borderBottom:"1px solid var(--border)",padding:"0.75rem 1rem",color:"#e2e8f0",fontSize:"0.9rem",outline:"none",fontFamily:"var(--font-mono), monospace"},ey={maxHeight:"300px",overflowY:"auto",padding:"0.25rem 0"},eb={display:"flex",alignItems:"center",padding:"0.5rem 1rem",cursor:"pointer",transition:"all 0.1s ease",justifyContent:"space-between"},ev={backgroundColor:"rgba(255,255,255,0.02)",border:"1px solid var(--border)",borderRadius:"6px",padding:"0.5rem 0.75rem",display:"flex",flexDirection:"column",gap:"0.25rem"},ej={fontSize:"0.6rem",color:"var(--muted)",textTransform:"uppercase"},eC={fontSize:"1.1rem",fontWeight:700,fontFamily:"var(--font-mono)"},ek={width:"100%",height:"6px",backgroundColor:"rgba(255,255,255,0.05)",borderRadius:"3px",overflow:"hidden"},ew={height:"100%",borderRadius:"3px",transition:"width 0.5s ease-out"},eS={padding:"0.35rem 1rem",borderBottom:"1px solid var(--border)",backgroundColor:"#030406",display:"flex",alignItems:"center",gap:"0.75rem",flexWrap:"nowrap",overflowX:"auto"},ez={padding:"0.15rem 0.45rem",borderRadius:"4px",border:"1px solid var(--border)",backgroundColor:"rgba(255,255,255,0.02)",color:"var(--muted)",fontSize:"0.7rem",fontFamily:"var(--font-mono)",fontWeight:600,cursor:"pointer",transition:"all 0.1s ease"},eT={backgroundColor:"#05070a",borderBottom:"1px solid var(--border)",padding:"0.25rem 0.75rem 0 0.75rem",display:"flex",alignItems:"center",justifyContent:"space-between"},eR={padding:"0.35rem 0.75rem",borderRadius:"6px 6px 0 0",border:"1px solid var(--border)",borderBottom:"none",display:"flex",alignItems:"center",gap:"0.5rem",cursor:"pointer",transition:"all 0.15s ease"},eP={display:"flex",alignItems:"center",backgroundColor:"rgba(0, 0, 0, 0.3)",border:"1px solid var(--border)",borderRadius:"6px",padding:"2px",marginRight:"0.5rem"},eW={padding:"0.2rem 0.5rem",borderRadius:"4px",border:"1px solid transparent",fontSize:"0.65rem",fontWeight:600,cursor:"pointer",transition:"all 0.15s ease",display:"flex",alignItems:"center",gap:"3px"};function eI({file:e,isStaged:o,onAction:n,onSelect:i,onIgnore:a,onDiscard:l}){let[s,d]=(0,r.useState)(!1),c="#eab308",p=o?e.indexStatus||"M":e.worktreeStatus||"M";return("??"===p||"?"===p)&&(c="#10b981"),"A"===p&&(c="#10b981"),"D"===p&&(c="#ef4444"),(0,t.jsxs)("div",{onClick:()=>i(e),onMouseEnter:()=>d(!0),onMouseLeave:()=>d(!1),style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"0.35rem 0.5rem",borderRadius:"4px",backgroundColor:"rgba(255,255,255,0.02)",cursor:"pointer",fontSize:"0.75rem",fontFamily:"var(--font-mono)",position:"relative"},children:[(0,t.jsx)("span",{style:{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",flex:1,marginRight:"0.5rem"},title:e.relativePath,children:e.name}),(0,t.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:"0.35rem"},children:[s&&(0,t.jsxs)("div",{style:{display:"flex",gap:"0.25rem"},children:[!o&&a&&(0,t.jsx)("button",{onClick:t=>{t.stopPropagation(),a(e.relativePath)},title:"Add to .gitignore",style:{background:"none",border:"none",cursor:"pointer",fontSize:"0.65rem",color:"var(--muted)",padding:"1px 4px",borderRadius:"3px",backgroundColor:"rgba(255,255,255,0.05)"},onMouseEnter:e=>e.currentTarget.style.color="var(--danger)",onMouseLeave:e=>e.currentTarget.style.color="var(--muted)",children:"🚫"}),!o&&l&&(0,t.jsx)("button",{onClick:t=>{t.stopPropagation(),l(e.relativePath)},title:"Discard changes",style:{background:"none",border:"none",cursor:"pointer",fontSize:"0.65rem",color:"var(--muted)",padding:"1px 4px",borderRadius:"3px",backgroundColor:"rgba(255,255,255,0.05)"},onMouseEnter:e=>e.currentTarget.style.color="var(--danger)",onMouseLeave:e=>e.currentTarget.style.color="var(--muted)",children:"🗑️"}),(0,t.jsx)("button",{onClick:t=>{t.stopPropagation(),n(e.relativePath)},title:o?"Unstage Change":"Stage Change",style:{background:"none",border:"none",cursor:"pointer",fontSize:"0.65rem",color:"var(--muted)",padding:"1px 4px",borderRadius:"3px",backgroundColor:"rgba(255,255,255,0.05)"},onMouseEnter:e=>e.currentTarget.style.color="var(--foreground)",onMouseLeave:e=>e.currentTarget.style.color="var(--muted)",children:o?"➖":"➕"})]}),(0,t.jsx)("span",{style:{fontSize:"0.6rem",padding:"0.1rem 0.3rem",borderRadius:"3px",backgroundColor:c+"22",color:c,fontWeight:700,width:"1.2rem",display:"inline-block",textAlign:"center"},children:p.substring(0,1)})]})]})}function eL({url:e}){let[o,n]=(0,r.useState)(e),[i,a]=(0,r.useState)(e),[l,s]=(0,r.useState)(0);(0,r.useEffect)(()=>{n(e),a(e)},[e]);let d=()=>{let e=o.trim();e&&!/^https?:\/\//i.test(e)&&(e="http://"+e),n(e),a(e)};return(0,t.jsxs)("div",{style:{display:"flex",flexDirection:"column",width:"100%",height:"100%",backgroundColor:"#0b101b"},children:[(0,t.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:"0.5rem",padding:"0.5rem",backgroundColor:"#05070a",borderBottom:"1px solid var(--border)"},children:[(0,t.jsx)("button",{onClick:()=>{s(e=>e+1)},title:"Hard Reload Frame",style:{background:"none",border:"1px solid var(--border)",borderRadius:"4px",color:"var(--muted)",cursor:"pointer",fontSize:"0.85rem",padding:"0.25rem 0.5rem",display:"flex",alignItems:"center",backgroundColor:"rgba(255,255,255,0.02)"},onMouseEnter:e=>e.currentTarget.style.color="var(--foreground)",onMouseLeave:e=>e.currentTarget.style.color="var(--muted)",children:"🔄"}),(0,t.jsx)("input",{type:"text",value:o,onChange:e=>n(e.target.value),onKeyDown:e=>{"Enter"===e.key&&d()},style:{flex:1,backgroundColor:"#080c14",border:"1px solid var(--border)",borderRadius:"4px",padding:"0.25rem 0.75rem",color:"#ffffff",fontSize:"0.8rem",outline:"none",fontFamily:"var(--font-mono), monospace"}}),(0,t.jsx)("button",{onClick:d,title:"Go to URL",style:{background:"none",border:"1px solid var(--border)",borderRadius:"4px",color:"var(--primary)",cursor:"pointer",fontSize:"0.8rem",padding:"0.25rem 0.5rem",display:"flex",alignItems:"center",backgroundColor:"rgba(255,255,255,0.02)"},children:"➔"}),(0,t.jsx)("button",{onClick:()=>{window.open(i,"_blank")},title:"Open in External Browser",style:{background:"none",border:"1px solid var(--border)",borderRadius:"4px",color:"var(--muted)",cursor:"pointer",fontSize:"0.85rem",padding:"0.25rem 0.5rem",display:"flex",alignItems:"center",backgroundColor:"rgba(255,255,255,0.02)"},onMouseEnter:e=>e.currentTarget.style.color="var(--foreground)",onMouseLeave:e=>e.currentTarget.style.color="var(--muted)",children:"🌐"})]}),(0,t.jsx)("div",{style:{flex:1,position:"relative",width:"100%",height:"100%",backgroundColor:"#ffffff"},children:(0,t.jsx)("iframe",{src:i,style:{width:"100%",height:"100%",border:"none",backgroundColor:"#ffffff"},sandbox:"allow-scripts allow-same-origin allow-popups allow-forms"},l)})]})}function eE({content:e,filePath:r}){let o=e.split(/\r?\n/),n=0,i=0,a=0,l=0,s=o.map(e=>{let t="normal",r=e,o=null,s=null;if(e.startsWith("diff --git")||e.startsWith("index ")||e.startsWith("--- ")||e.startsWith("+++ "))t="header";else if(e.startsWith("@@")){t="hunk";let r=e.match(/^@@\s+-(\d+)(?:,\d+)?\s+\+(\d+)(?:,\d+)?\s+@@/);r&&(n=parseInt(r[1],10),i=parseInt(r[2],10))}else e.startsWith("+")?(t="addition",r=e.substring(1),s=i++,a++):e.startsWith("-")?(t="deletion",r=e.substring(1),o=n++,l++):(t="normal",e.startsWith(" ")&&(r=e.substring(1)),n>0&&(o=n++),i>0&&(s=i++));return{type:t,content:r,oldNum:o,newNum:s,raw:e}});return(0,t.jsxs)("div",{style:{display:"flex",flexDirection:"column",height:"100%",backgroundColor:"#0b101b"},children:[(0,t.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"0.5rem 1rem",backgroundColor:"#05070a",borderBottom:"1px solid var(--border)"},children:[(0,t.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:"0.5rem"},children:[(0,t.jsx)("span",{style:{fontSize:"1rem"},children:"📄"}),(0,t.jsx)("span",{style:{fontWeight:600,fontSize:"0.85rem",color:"var(--foreground)",fontFamily:"var(--font-mono)"},children:r})]}),(0,t.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:"0.75rem",fontSize:"0.75rem"},children:[a>0&&(0,t.jsxs)("span",{style:{color:"#4ade80",backgroundColor:"rgba(74, 222, 128, 0.1)",padding:"0.15rem 0.4rem",borderRadius:"4px",fontWeight:600},children:["+",a," lines"]}),l>0&&(0,t.jsxs)("span",{style:{color:"#f87171",backgroundColor:"rgba(248, 113, 113, 0.1)",padding:"0.15rem 0.4rem",borderRadius:"4px",fontWeight:600},children:["-",l," lines"]}),(0,t.jsxs)("span",{style:{color:"var(--muted)"},children:[s.length," lines in diff"]})]})]}),(0,t.jsx)("div",{style:{flex:1,overflow:"auto",padding:"0.5rem 0"},children:(0,t.jsx)("table",{style:{width:"100%",borderCollapse:"collapse",fontFamily:"var(--font-mono), monospace",fontSize:"0.8rem",lineHeight:1.5},children:(0,t.jsx)("tbody",{children:s.map((e,r)=>{if("header"===e.type)return(0,t.jsx)("tr",{style:{backgroundColor:"rgba(255,255,255,0.02)"},children:(0,t.jsx)("td",{colSpan:4,style:{color:"var(--muted)",padding:"0.25rem 1rem",fontSize:"0.75rem",borderBottom:"1px solid rgba(255,255,255,0.03)"},children:e.raw})},r);if("hunk"===e.type)return(0,t.jsxs)("tr",{style:{backgroundColor:"rgba(96, 165, 250, 0.05)"},children:[(0,t.jsx)("td",{colSpan:2,style:{width:"80px",textAlign:"center",color:"rgba(96, 165, 250, 0.6)",borderRight:"1px solid rgba(96, 165, 250, 0.15)",userSelect:"none",padding:"0.25rem 0",fontSize:"0.7rem"},children:"@@"}),(0,t.jsx)("td",{style:{width:"25px",borderRight:"1px solid rgba(255, 255, 255, 0.05)"}}),(0,t.jsx)("td",{style:{color:"#60a5fa",padding:"0.25rem 1rem",fontStyle:"italic",fontSize:"0.75rem"},children:e.raw})]},r);let o="transparent",n="var(--foreground)",i=" ",a="transparent";return"addition"===e.type?(o="rgba(74, 222, 128, 0.08)",n="#4ade80",i="+",a="rgba(74, 222, 128, 0.4)"):"deletion"===e.type&&(o="rgba(248, 113, 113, 0.08)",n="#f87171",i="-",a="rgba(248, 113, 113, 0.4)"),(0,t.jsxs)("tr",{style:{backgroundColor:o},children:[(0,t.jsx)("td",{style:{width:"40px",textAlign:"right",paddingRight:"0.75rem",color:"var(--muted)",opacity:e.oldNum?.6:.2,userSelect:"none",borderRight:"1px solid rgba(255, 255, 255, 0.05)",fontSize:"0.75rem"},children:e.oldNum||""}),(0,t.jsx)("td",{style:{width:"40px",textAlign:"right",paddingRight:"0.75rem",color:"var(--muted)",opacity:e.newNum?.6:.2,userSelect:"none",borderRight:"1px solid rgba(255, 255, 255, 0.05)",fontSize:"0.75rem"},children:e.newNum||""}),(0,t.jsx)("td",{style:{width:"25px",textAlign:"center",color:a,userSelect:"none",fontWeight:"bold",fontSize:"0.85rem",borderRight:"1px solid rgba(255, 255, 255, 0.05)"},children:i}),(0,t.jsx)("td",{style:{paddingLeft:"0.75rem",color:n,whiteSpace:"pre-wrap",wordBreak:"break-all"},children:e.content})]},r)})})})})]})}let eB={width:"100%",minHeight:"60px",backgroundColor:"#05070a",border:"1px solid var(--border)",borderRadius:"6px",padding:"0.5rem",color:"#e2e8f0",fontSize:"0.75rem",resize:"vertical",outline:"none",fontFamily:"var(--font-sans), sans-serif"},eF={width:"100%",padding:"0.35rem",backgroundColor:"var(--primary)",border:"none",color:"#ffffff",borderRadius:"6px",fontSize:"0.75rem",fontWeight:600,cursor:"pointer",transition:"opacity 0.1s ease"},eO={background:"none",border:"1px solid var(--border)",borderRadius:"4px",padding:"2px 5px",cursor:"pointer",fontSize:"0.7rem",display:"flex",alignItems:"center",justifyContent:"center",backgroundColor:"rgba(255,255,255,0.02)"},eM={background:"none",border:"none",cursor:"pointer",fontSize:"0.65rem",color:"var(--muted)",padding:"2px 4px",borderRadius:"3px",display:"flex",alignItems:"center",justifyContent:"center"};e.s(["default",0,function({sessionId:e,workspaceRoot:o,scopedDirs:l,onClose:s,sessions:d,onSwitchSession:c,onRefreshSessions:p,wsPort:u=3001}){let m=JSON.stringify(l),h=d.find(t=>t.id===e),[g,f]=(0,r.useState)(null),[x,y]=(0,r.useState)([]),[b,v]=(0,r.useState)(!1),j=async t=>{try{let r=await fetch("/api/sessions/scope",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({sessionId:e,path:t,action:"add"})});if(r.ok)p&&p();else{let e=await r.json();alert(e.error||"Failed to add scoped folder.")}}catch(e){console.error(e),alert("Network error: failed to add scoped folder.")}},C=async t=>{try{let r=await fetch("/api/sessions/scope",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({sessionId:e,path:t,action:"remove"})});if(r.ok)p&&p();else{let e=await r.json();alert(e.error||"Failed to remove scoped folder.")}}catch(e){console.error(e),alert("Network error: failed to remove scoped folder.")}},[k,w]=(0,r.useState)({}),[S,z]=(0,r.useState)({}),T=k[e]||[],R=S[e]||null,P=(0,r.useCallback)(t=>{w(r=>{let o=r[e]||[],n="function"==typeof t?t(o):t;return{...r,[e]:n}})},[e]),W=(0,r.useCallback)(t=>{z(r=>({...r,[e]:t}))},[e]),[eD,eN]=(0,r.useState)("edit"),[e$,eA]=(0,r.useState)(!0),[eU,eJ]=(0,r.useState)("explorer"),[eV,eG]=(0,r.useState)("http://localhost:3000"),[eH,eK]=(0,r.useState)(!1),[e_,eY]=(0,r.useState)(300),[eq,eX]=(0,r.useState)(!1),[eQ,eZ]=(0,r.useState)(380),[e0,e5]=(0,r.useState)(!1),e1=(0,r.useCallback)(e=>{e.preventDefault(),eX(!0)},[]),e2=(0,r.useCallback)(e=>{e.preventDefault(),e5(!0)},[]);(0,r.useEffect)(()=>{let e=e=>{if(eq){let t=document.getElementById("loom-ide-container");if(t){let r=t.getBoundingClientRect(),o=e.clientX-r.left-50;o>150&&o<600&&eY(o)}}if(e0){let t=document.getElementById("loom-ide-container");if(t){let r=t.getBoundingClientRect(),o=r.bottom-e.clientY;o>100&&o<r.height-150&&eZ(o)}}},t=()=>{eX(!1),e5(!1)};return(eq||e0)&&(window.addEventListener("mousemove",e),window.addEventListener("mouseup",t),document.body.style.cursor=eq?"col-resize":"row-resize",document.body.style.userSelect="none"),()=>{window.removeEventListener("mousemove",e),window.removeEventListener("mouseup",t),document.body.style.cursor="",document.body.style.userSelect=""}},[eq,e0]);let[e7,e8]=(0,r.useState)([]),[e3,e4]=(0,r.useState)(!1),[e6,e9]=(0,r.useState)(!1),[te,tt]=(0,r.useState)(""),[tr,to]=(0,r.useState)({ahead:0,behind:0}),[tn,ti]=(0,r.useState)(""),[ta,tl]=(0,r.useState)(null),[ts,td]=(0,r.useState)(null),[tc,tp]=(0,r.useState)(""),[tu,tm]=(0,r.useState)([]),[th,tg]=(0,r.useState)(""),[tf,tx]=(0,r.useState)(""),[ty,tb]=(0,r.useState)(null),tv=(0,r.useCallback)(async()=>{await new Promise(e=>setTimeout(e,0)),e9(!0);try{let e=await fetch(`/api/git?action=status&root=${encodeURIComponent(o)}`);if(e.ok){let t=await e.json();t.success&&(e4(t.isGit),e8(t.files||[]),tt(t.branch||""),to({ahead:t.ahead||0,behind:t.behind||0}))}}catch(e){console.error("Failed to load git status:",e)}finally{e9(!1)}},[o]);(0,r.useEffect)(()=>{setTimeout(()=>{tv()},0);let e=setInterval(tv,5e3);return()=>clearInterval(e)},[tv]);let tj=async e=>{try{(await fetch("/api/git",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"stage",file:e,rootPath:o})})).ok&&await tv()}catch(e){console.error(e)}},tC=async e=>{try{(await fetch("/api/git",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"ignore",file:e,rootPath:o})})).ok&&await tv()}catch(e){console.error(e)}},tk=async e=>{if(confirm(`Are you sure you want to discard changes in "${e}"? This action cannot be undone.`))try{(await fetch("/api/git",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"discard",file:e,rootPath:o})})).ok&&await tv()}catch(e){console.error(e)}},tw=async()=>{try{(await fetch("/api/git",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"stage",rootPath:o})})).ok&&await tv()}catch(e){console.error(e)}},tS=async e=>{try{(await fetch("/api/git",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"unstage",file:e,rootPath:o})})).ok&&await tv()}catch(e){console.error(e)}},tz=async()=>{try{(await fetch("/api/git",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"unstage",rootPath:o})})).ok&&await tv()}catch(e){console.error(e)}},tT=async()=>{if(tn.trim())try{let e=await fetch("/api/git",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"commit",message:tn,rootPath:o})});if(e.ok)ti(""),await tv();else{let t=await e.json();alert(t.error||"Git commit failed")}}catch(e){console.error(e)}},tR=async()=>{try{let e=await fetch("/api/git",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"pull",rootPath:o})});if(e.ok){let t=await e.json();alert(t.output||"Git pull completed successfully."),await tv()}else{let t=await e.json();alert(t.error||"Git pull failed")}}catch(e){console.error(e)}},tP=async()=>{try{let e=await fetch("/api/git",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"push",rootPath:o})});if(e.ok){let t=await e.json();alert(t.output||"Git push completed successfully."),await tv()}else{let t=await e.json();alert(t.error||"Git push failed")}}catch(e){console.error(e)}},tW=async e=>{try{let t=await fetch(`/api/git?action=diff&file=${encodeURIComponent(e.relativePath)}&root=${encodeURIComponent(o)}`);if(t.ok){let r=await t.json();if(r.success){let t=`diff:${e.relativePath}`;T.some(e=>e.path===t)||P(o=>[...o,{name:`Diff: ${e.name}`,path:t,content:r.diff,isModified:!1}]),W(t)}}}catch(e){console.error(e)}};(0,r.useEffect)(()=>{let t=async()=>{try{let t=await fetch(`/api/sessions?id=${e}`);if(t.ok){let e=await t.json();tl(e)}}catch(e){console.error("Failed to fetch session status:",e)}};t();let r=setInterval(t,3e3);return()=>clearInterval(r)},[e]),(0,r.useEffect)(()=>{let t=async()=>{try{let t=await fetch(`/api/sessions/stats?id=${e}`);if(t.ok){let e=await t.json();td(e)}}catch(e){console.error("Failed to fetch container/process stats:",e)}};t();let r=setInterval(t,3e3);return()=>clearInterval(r)},[e]),(0,r.useEffect)(()=>{let e=localStorage.getItem("neural_loom_custom_commands");if(e)try{let t=JSON.parse(e);setTimeout(()=>{tm(t)},0)}catch{}},[]);let tI=e=>{tm(e),localStorage.setItem("neural_loom_custom_commands",JSON.stringify(e))},tL=async t=>{try{await fetch("/api/sessions/inject",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({id:e,command:t})})}catch(e){console.error("Failed to inject command:",e)}},tE=ta?.type?.includes("aider"),[tB,tF]=(0,r.useState)({type:null,targetPath:null,inputValue:"",error:null}),[tO,tM]=(0,r.useState)(!1),[tD,tN]=(0,r.useState)(""),[t$,tA]=(0,r.useState)([]),[tU,tJ]=(0,r.useState)(0),tV=(0,r.useCallback)(async()=>{await new Promise(e=>setTimeout(e,0)),eK(!0);try{let e=l&&l.length>0?`&scoped=${encodeURIComponent(l.join(","))}`:"",t=await fetch(`/api/files?action=list&root=${encodeURIComponent(o)}${e}`);if(t.ok){let e=await t.json();e.success&&(f(e.workspace),y(e.scoped||[]))}}catch(e){console.error("Failed to load file explorer:",e)}finally{eK(!1)}},[o,m]);(0,r.useEffect)(()=>{tV();let e=setInterval(()=>{tV()},3e3);return()=>clearInterval(e)},[tV]);let tG=(e,t)=>{tF({type:"file"===t?"create-file":"create-folder",targetPath:e,inputValue:"",error:null})},tH=e=>{let t=e.split(/[/\\]/).pop()||"";tF({type:"rename",targetPath:e,inputValue:t,error:null})},tK=e=>{tF({type:"delete",targetPath:e,inputValue:"",error:null})},t_=async e=>{if(e&&e.preventDefault(),tB.type&&tB.targetPath){tF(e=>({...e,error:null}));try{if("create-file"===tB.type||"create-folder"===tB.type){if(!tB.inputValue.trim())return void tF(e=>({...e,error:"Name cannot be empty"}));let e=`${tB.targetPath}/${tB.inputValue.trim()}`,t="create-file"===tB.type?"file":"directory",r=await fetch("/api/files",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"create",path:e,type:t})});if(r.ok){let o=await r.json();o.success?(tF({type:null,targetPath:null,inputValue:"",error:null}),await tV(),"file"===t&&await tq(e)):tF(e=>({...e,error:o.error||"Failed to create item"}))}else{let e=await r.json();tF(t=>({...t,error:e.error||"Failed to create item"}))}}if("rename"===tB.type){if(!tB.inputValue.trim())return void tF(e=>({...e,error:"Name cannot be empty"}));let e=tB.targetPath.replace(/\\/g,"/"),t=e.substring(0,e.lastIndexOf("/")),r=t?`${t}/${tB.inputValue.trim()}`:tB.inputValue.trim(),o=await fetch("/api/files",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"rename",oldPath:tB.targetPath,newPath:r})});if(o.ok){let e=await o.json();e.success?(P(e=>e.map(e=>e.path===tB.targetPath?{...e,path:r,name:tB.inputValue.trim()}:e)),R===tB.targetPath&&W(r),tF({type:null,targetPath:null,inputValue:"",error:null}),await tV()):tF(t=>({...t,error:e.error||"Failed to rename item"}))}else{let e=await o.json();tF(t=>({...t,error:e.error||"Failed to rename item"}))}}if("delete"===tB.type){let e=await fetch("/api/files",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"delete",path:tB.targetPath})});if(e.ok){let t=await e.json();t.success?(tX(tB.targetPath),tF({type:null,targetPath:null,inputValue:"",error:null}),await tV()):tF(e=>({...e,error:t.error||"Failed to delete item"}))}else{let t=await e.json();tF(e=>({...e,error:t.error||"Failed to delete item"}))}}}catch(e){console.error("File operation failed:",e),tF(e=>({...e,error:"An unexpected error occurred"}))}}},tY=(0,r.useCallback)(async()=>{try{let e=l&&l.length>0?`&scoped=${encodeURIComponent(l.join(","))}`:"",t=await fetch(`/api/files?action=flat_list&root=${encodeURIComponent(o)}${e}`);if(t.ok){let e=await t.json();e.success&&e.files&&tA(e.files)}}catch(e){console.error("Failed to load flat files list:",e)}},[o,m]);(0,r.useEffect)(()=>{tO&&setTimeout(()=>{tN(""),tJ(0),tY()},0)},[tO,tY]);let tq=async e=>{if(T.find(t=>t.path===e))return void W(e);try{let t=await fetch(`/api/files?action=read&path=${encodeURIComponent(e)}`);if(t.ok){let r=await t.json();if(r.success){let t={name:e.split(/[/\\]/).pop()||"Untitled",path:e,content:r.content,isModified:!1};P([...T,t]),W(e)}}}catch(t){console.error(`Failed to read file ${e}:`,t)}},tX=e=>{let t=T.filter(t=>t.path!==e);P(t),R===e&&W(t.length>0?t[t.length-1].path:null)},tQ=e=>{let t=e.trim();if(!t)return;let r=`browser:${t}`;T.find(e=>e.path===r)||P(e=>[...e,{name:`Browser: ${t.replace(/^https?:\/\//,"")}`,path:r,content:t,isModified:!1}]),W(r)},tZ=T.find(e=>e.path===R),t0=!!tZ&&tZ.path.toLowerCase().endsWith(".md"),t5=t0?eD:"edit",t1=e7.filter(e=>e.indexStatus&&" "!==e.indexStatus&&"?"!==e.indexStatus),t2=e7.filter(e=>e.worktreeStatus&&" "!==e.worktreeStatus||"??"===e.status),t7=e=>{R&&P(T.map(t=>t.path===R?{...t,content:e,isModified:!0}:t))},t8=(0,r.useCallback)(async()=>{if(!(!tZ||tZ.path.startsWith("diff:")||tZ.path.startsWith("browser:")))try{(await fetch("/api/files",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"write",path:tZ.path,content:tZ.content})})).ok&&P(e=>e.map(e=>e.path===R?{...e,isModified:!1}:e))}catch(e){console.error(`Failed to save file ${tZ.path}:`,e)}},[tZ,R,P]);(0,r.useEffect)(()=>{let e=e=>{(e.ctrlKey||e.metaKey)&&"s"===e.key&&(e.preventDefault(),t8()),(e.ctrlKey||e.metaKey)&&"p"===e.key&&(e.preventDefault(),tM(e=>!e))};return window.addEventListener("keydown",e),()=>window.removeEventListener("keydown",e)},[t8]);let t3=t$.filter(e=>e.name.toLowerCase().includes(tD.toLowerCase())||e.relativePath.toLowerCase().includes(tD.toLowerCase())).slice(0,10);return(0,t.jsxs)("div",{id:"loom-ide-container",style:O,children:[(0,t.jsxs)("div",{style:M,children:[(0,t.jsxs)("div",{style:D,children:[(0,t.jsx)("div",{onClick:()=>{"explorer"===eU?eA(!e$):(eJ("explorer"),eA(!0))},style:{...N,backgroundColor:"explorer"===eU&&e$?"rgba(255,255,255,0.08)":"transparent",borderLeft:"explorer"===eU&&e$?"2px solid var(--primary)":"2px solid transparent"},title:"File Explorer (Ctrl+P to search files)",children:"📁"}),(0,t.jsx)("div",{onClick:()=>{"git"===eU?eA(!e$):(eJ("git"),eA(!0))},style:{...N,backgroundColor:"git"===eU&&e$?"rgba(255,255,255,0.08)":"transparent",borderLeft:"git"===eU&&e$?"2px solid var(--primary)":"2px solid transparent"},title:"Source Control (Git Changes)",children:"🌿"}),(0,t.jsx)("div",{onClick:()=>{"analytics"===eU?eA(!e$):(eJ("analytics"),eA(!0))},style:{...N,backgroundColor:"analytics"===eU&&e$?"rgba(255,255,255,0.08)":"transparent",borderLeft:"analytics"===eU&&e$?"2px solid var(--primary)":"2px solid transparent"},title:"Token Usage & Cost Analytics",children:"📊"}),(0,t.jsx)("div",{onClick:()=>{"auditor"===eU?eA(!e$):(eJ("auditor"),eA(!0))},style:{...N,backgroundColor:"auditor"===eU&&e$?"rgba(255,255,255,0.08)":"transparent",borderLeft:"auditor"===eU&&e$?"2px solid var(--primary)":"2px solid transparent"},title:"Session Log Auditor & Search",children:"🔍"}),(0,t.jsx)("div",{onClick:()=>{"browser"===eU?eA(!e$):(eJ("browser"),eA(!0))},style:{...N,backgroundColor:"browser"===eU&&e$?"rgba(255,255,255,0.08)":"transparent",borderLeft:"browser"===eU&&e$?"2px solid var(--primary)":"2px solid transparent"},title:"Local Web Browser Test Preview",children:"🌐"}),(0,t.jsx)("div",{onClick:()=>{"database"===eU?eA(!e$):(eJ("database"),eA(!0))},style:{...N,backgroundColor:"database"===eU&&e$?"rgba(255,255,255,0.08)":"transparent",borderLeft:"database"===eU&&e$?"2px solid var(--primary)":"2px solid transparent"},title:"Database Explorer & SQL Client",children:"🗄️"})]}),(0,t.jsx)("div",{onClick:s,style:{...N,color:"var(--danger)",fontSize:"1rem"},title:"Exit Session Layout",children:"✖"})]}),e$&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("div",{style:{...$,width:`${e_}px`,borderRight:"none"},children:[(0,t.jsxs)("div",{style:A,children:[(0,t.jsxs)("span",{style:{fontWeight:700,fontSize:"0.75rem",textTransform:"uppercase",letterSpacing:"0.05em"},children:["explorer"===eU&&"Workspace Explorer","git"===eU&&"Source Control","analytics"===eU&&"Telemetry & Cost","auditor"===eU&&"Session Auditor","browser"===eU&&"Browser Preview","database"===eU&&"Database Explorer"]}),"explorer"===eU&&(0,t.jsxs)("div",{style:{display:"flex",gap:"0.25rem"},children:[g&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("button",{onClick:()=>tG(g.path,"file"),style:eh,title:"New File at Root...",children:"📄+"}),(0,t.jsx)("button",{onClick:()=>tG(g.path,"directory"),style:eh,title:"New Folder at Root...",children:"📁+"})]}),(0,t.jsx)("button",{onClick:tV,disabled:eH,style:eh,title:"Refresh tree",children:"🔄"})]}),"git"===eU&&(0,t.jsx)("button",{onClick:tv,disabled:e6,style:eh,title:"Refresh git status",children:"🔄"})]}),(0,t.jsxs)("div",{style:U,children:["explorer"===eU&&(0,t.jsxs)(t.Fragment,{children:[g?(0,t.jsxs)("div",{style:{marginBottom:"1.5rem"},children:[(0,t.jsxs)("div",{style:J,children:["💼 ",g.name," ",(0,t.jsx)("span",{style:V,title:g.path,children:"root"})]}),(0,t.jsx)("div",{style:{padding:"0.25rem 0.5rem"},children:g.tree.map(e=>(0,t.jsx)(el,{node:e,onSelect:tq,onCreate:tG,onRename:tH,onDelete:tK,isReadOnly:!1},e.path))})]}):(0,t.jsx)("div",{style:{padding:"1rem",color:"var(--muted)",fontSize:"0.8rem"},children:"Scanning Workspace directory..."}),(0,t.jsxs)("div",{children:[(0,t.jsxs)("div",{style:{...J,borderTop:"1px solid var(--border)",paddingTop:"1rem"},children:[(0,t.jsxs)("span",{children:["🔍 Scoped Folders (",x.length,")"]}),(0,t.jsx)("button",{onClick:()=>v(!0),style:eh,title:"Add Scoped Folder...",children:"➕"})]}),x.length>0?x.map(e=>(0,t.jsxs)("div",{style:{marginTop:"0.75rem",padding:"0 0.5rem"},children:[(0,t.jsxs)("div",{style:{...G,display:"flex",gap:"0.25rem",color:"#a855f7",fontSize:"0.75rem",fontWeight:700,padding:"0.25rem",justifyContent:"space-between",alignItems:"center"},title:e.path,children:[(0,t.jsxs)("span",{style:{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",flex:1},children:["🔗 ",e.name,"/"]}),(0,t.jsx)("button",{onClick:()=>C(e.path),style:{background:"none",border:"none",color:"var(--danger)",cursor:"pointer",fontSize:"0.75rem",padding:"0 0.25rem"},title:"Remove Scoped Folder",children:"✖"})]}),(0,t.jsx)("div",{style:{paddingLeft:"0.25rem"},children:e.tree.map(e=>(0,t.jsx)(el,{node:e,onSelect:tq,onCreate:tG,onRename:tH,onDelete:tK,isReadOnly:!0},e.path))})]},e.path)):(0,t.jsx)("div",{style:{padding:"0.5rem 1rem",color:"var(--muted)",fontSize:"0.75rem",fontStyle:"italic"},children:"No extra scoped folders. Click [+] to mount a folder."})]})]}),"git"===eU&&(0,t.jsxs)("div",{style:{display:"flex",flexDirection:"column",height:"100%",overflow:"hidden"},children:[(0,t.jsxs)("div",{style:{padding:"0.5rem 1rem",borderBottom:"1px solid var(--border)",display:"flex",alignItems:"center",justifyContent:"space-between",backgroundColor:"rgba(255,255,255,0.01)",flexShrink:0},children:[(0,t.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:"0.4rem",fontSize:"0.75rem",fontWeight:600,overflow:"hidden",whiteSpace:"nowrap",textOverflow:"ellipsis",flex:1},children:[(0,t.jsx)("span",{style:{color:"var(--primary)",flexShrink:0},children:"🌿"}),(0,t.jsx)("span",{style:{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},title:te,children:e3?te||"HEAD detached":"No Repository"})]}),e3&&(0,t.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:"0.35rem",flexShrink:0},children:[tr.ahead>0&&(0,t.jsxs)("span",{style:{fontSize:"0.65rem",color:"#10b981",fontWeight:700},title:"Commits ahead of remote",children:["↑",tr.ahead]}),tr.behind>0&&(0,t.jsxs)("span",{style:{fontSize:"0.65rem",color:"#ef4444",fontWeight:700},title:"Commits behind remote",children:["↓",tr.behind]}),(0,t.jsx)("button",{onClick:tR,title:"Pull changes",style:eO,onMouseEnter:e=>e.currentTarget.style.backgroundColor="rgba(255,255,255,0.08)",onMouseLeave:e=>e.currentTarget.style.backgroundColor="rgba(255,255,255,0.02)",children:"📥"}),(0,t.jsx)("button",{onClick:tP,title:"Push commits",style:eO,onMouseEnter:e=>e.currentTarget.style.backgroundColor="rgba(255,255,255,0.08)",onMouseLeave:e=>e.currentTarget.style.backgroundColor="rgba(255,255,255,0.02)",children:"📤"})]})]}),e3?(0,t.jsxs)("div",{style:{flex:1,overflowY:"auto",padding:"0.5rem 1rem",display:"flex",flexDirection:"column",gap:"1rem"},children:[(0,t.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:"0.4rem"},children:[(0,t.jsx)("textarea",{value:tn,onChange:e=>ti(e.target.value),placeholder:"Commit message (Ctrl+Enter to commit)...",style:eB,onKeyDown:e=>{"Enter"===e.key&&(e.ctrlKey||e.metaKey)&&(e.preventDefault(),tT())}}),(0,t.jsx)("button",{onClick:tT,disabled:0===e7.length,style:{...eF,opacity:e7.length>0?1:.5,cursor:e7.length>0?"pointer":"not-allowed"},children:"✓ Commit"})]}),t1.length>0&&(0,t.jsxs)("div",{children:[(0,t.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",marginBottom:"0.35rem"},children:[(0,t.jsxs)("span",{style:{fontSize:"0.7rem",fontWeight:700,textTransform:"uppercase",color:"var(--muted)"},children:["Staged Changes (",t1.length,")"]}),(0,t.jsx)("button",{onClick:()=>tz(),title:"Unstage All",style:eM,children:"➖"})]}),(0,t.jsx)("div",{style:{display:"flex",flexDirection:"column",gap:"0.25rem"},children:t1.map(e=>(0,t.jsx)(eI,{file:e,isStaged:!0,onAction:tS,onSelect:tW},e.relativePath))})]}),(0,t.jsxs)("div",{children:[(0,t.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",marginBottom:"0.35rem"},children:[(0,t.jsxs)("span",{style:{fontSize:"0.7rem",fontWeight:700,textTransform:"uppercase",color:"var(--muted)"},children:["Changes (",t2.length,")"]}),t2.length>0&&(0,t.jsx)("button",{onClick:()=>tw(),title:"Stage All",style:eM,children:"➕"})]}),0===t2.length&&0===t1.length?(0,t.jsx)("div",{style:{color:"var(--success)",fontSize:"0.75rem",padding:"0.5rem 0"},children:"✔ Workspace clean."}):0===t2.length?(0,t.jsx)("div",{style:{color:"var(--muted)",fontSize:"0.7rem",fontStyle:"italic",padding:"0.25rem 0"},children:"No unstaged changes."}):(0,t.jsx)("div",{style:{display:"flex",flexDirection:"column",gap:"0.25rem"},children:t2.map(e=>(0,t.jsx)(eI,{file:e,isStaged:!1,onAction:tj,onSelect:tW,onIgnore:tC,onDiscard:tk},e.relativePath))})]})]}):(0,t.jsx)("div",{style:{padding:"1rem",color:"var(--muted)",fontSize:"0.75rem",fontStyle:"italic"},children:"Not a git repository."})]}),"browser"===eU&&(0,t.jsxs)("div",{style:{padding:"1rem",display:"flex",flexDirection:"column",gap:"1rem"},children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{style:{fontSize:"0.7rem",fontWeight:700,textTransform:"uppercase",color:"var(--muted)",display:"block",marginBottom:"0.4rem"},children:"Url Address"}),(0,t.jsxs)("div",{style:{display:"flex",gap:"0.25rem"},children:[(0,t.jsx)("input",{type:"text",value:eV,onChange:e=>eG(e.target.value),placeholder:"http://localhost:3000",style:{flex:1,backgroundColor:"#05070a",border:"1px solid var(--border)",borderRadius:"4px",padding:"0.35rem 0.5rem",color:"#ffffff",fontSize:"0.75rem",outline:"none"},onKeyDown:e=>{"Enter"===e.key&&tQ(eV)}}),(0,t.jsx)("button",{onClick:()=>tQ(eV),style:{backgroundColor:"var(--primary)",border:"none",color:"#ffffff",padding:"0.35rem 0.75rem",borderRadius:"4px",fontSize:"0.75rem",fontWeight:600,cursor:"pointer"},children:"Go"})]})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{style:{fontSize:"0.7rem",fontWeight:700,textTransform:"uppercase",color:"var(--muted)",display:"block",marginBottom:"0.5rem"},children:"Quick Launch Ports"}),(0,t.jsx)("div",{style:{display:"flex",flexDirection:"column",gap:"0.35rem"},children:[{label:"Next.js App (3000)",url:"http://localhost:3000"},{label:"WebSocket Gateway (3001)",url:"http://localhost:3001"},{label:"Vite Server (5173)",url:"http://localhost:5173"}].map((e,r)=>(0,t.jsxs)("div",{onClick:()=>{eG(e.url),tQ(e.url)},style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"0.5rem 0.75rem",borderRadius:"4px",backgroundColor:"rgba(255,255,255,0.02)",border:"1px solid var(--border)",cursor:"pointer",fontSize:"0.75rem",transition:"all 0.15s ease"},onMouseEnter:e=>e.currentTarget.style.backgroundColor="rgba(255,255,255,0.06)",onMouseLeave:e=>e.currentTarget.style.backgroundColor="rgba(255,255,255,0.02)",children:[(0,t.jsx)("span",{style:{color:"var(--foreground)"},children:e.label}),(0,t.jsx)("span",{style:{color:"var(--primary)",fontSize:"0.8rem"},children:"🌐➔"})]},r))})]}),(0,t.jsxs)("div",{style:{marginTop:"auto",padding:"0.5rem",borderRadius:"6px",backgroundColor:"rgba(234, 179, 8, 0.05)",border:"1px solid rgba(234, 179, 8, 0.15)",fontSize:"0.65rem",color:"var(--muted)",lineHeight:"1.4"},children:[(0,t.jsx)("span",{style:{color:"#eab308",fontWeight:700},children:"⚠️ Iframe CSP Note"}),": Some public websites (e.g. Google, GitHub) block loading inside frames via security headers. Use this tab primarily to preview and debug local development webservers."]})]}),"analytics"===eU&&(0,t.jsxs)("div",{style:{padding:"0.5rem 1rem",display:"flex",flexDirection:"column",gap:"1.25rem"},children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("div",{style:{fontSize:"0.75rem",fontWeight:700,textTransform:"uppercase",color:"var(--muted)",marginBottom:"0.5rem"},children:"Token Usage"}),(0,t.jsxs)("div",{style:{display:"grid",gridTemplateColumns:"1fr 1fr",gap:"0.5rem"},children:[(0,t.jsxs)("div",{style:ev,children:[(0,t.jsx)("div",{style:ej,children:"Input"}),(0,t.jsx)("div",{style:eC,children:(ta?.tokenUsage?.input??0).toLocaleString()})]}),(0,t.jsxs)("div",{style:ev,children:[(0,t.jsx)("div",{style:ej,children:"Output"}),(0,t.jsx)("div",{style:eC,children:(ta?.tokenUsage?.output??0).toLocaleString()})]}),(0,t.jsxs)("div",{style:{...ev,gridColumn:"span 2"},children:[(0,t.jsx)("div",{style:ej,children:"Cost"}),(0,t.jsxs)("div",{style:{...eC,color:"#10b981",fontSize:"1.25rem"},children:["$",(ta?.tokenUsage?.cost??0).toFixed(4)]})]})]})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("div",{style:{fontSize:"0.75rem",fontWeight:700,textTransform:"uppercase",color:"var(--muted)",marginBottom:"0.5rem"},children:"Resource Telemetry"}),(0,t.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:"0.75rem"},children:[(0,t.jsxs)("div",{children:[(0,t.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",fontSize:"0.7rem",marginBottom:"0.25rem"},children:[(0,t.jsx)("span",{children:"CPU Usage"}),(0,t.jsx)("span",{style:{fontWeight:600,color:"var(--primary)"},children:ts?.cpu??"0.0%"})]}),(0,t.jsx)("div",{style:ek,children:(0,t.jsx)("div",{style:{...ew,width:ts?.cpu||"0%",backgroundColor:"var(--primary)"}})})]}),(0,t.jsxs)("div",{children:[(0,t.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",fontSize:"0.7rem",marginBottom:"0.25rem"},children:[(0,t.jsx)("span",{children:"Memory Usage"}),(0,t.jsx)("span",{style:{fontWeight:600,color:"#eab308"},children:ts?.memory??"0.0MiB"})]}),(0,t.jsx)("div",{style:ek,children:(0,t.jsx)("div",{style:{...ew,width:ts?.memoryPercent||"0%",backgroundColor:"#eab308"}})})]}),(0,t.jsx)("div",{style:{fontSize:"0.6rem",color:"var(--muted)",marginTop:"0.25rem",fontStyle:"italic"},children:ts?.type?.includes("docker")?"🐳 Docker container statistics":"💻 Local process statistics"})]})]})]}),"auditor"===eU&&(0,t.jsxs)("div",{style:{padding:"0.5rem 1rem",display:"flex",flexDirection:"column",gap:"1rem",height:"100%"},children:[(0,t.jsxs)("div",{style:{display:"flex",gap:"0.25rem"},children:[(0,t.jsx)("input",{type:"text",placeholder:"Search logs...",value:tc,onChange:e=>tp(e.target.value),style:{flex:1,backgroundColor:"#05070a",border:"1px solid var(--border)",borderRadius:"4px",padding:"0.25rem 0.5rem",color:"#ffffff",fontSize:"0.75rem",outline:"none"}}),(0,t.jsx)("button",{onClick:()=>{if(!ta?.logs)return;let t=new Blob([ta.logs.join("").replace(/\x1b\[[0-9;]*m/g,"")],{type:"text/plain;charset=utf-8"}),r=URL.createObjectURL(t),o=document.createElement("a");o.href=r,o.download=`session-${e}-logs.txt`,o.click(),URL.revokeObjectURL(r)},style:{backgroundColor:"rgba(59, 130, 246, 0.15)",border:"1px solid #3b82f6",color:"#3b82f6",padding:"0.25rem 0.5rem",borderRadius:"4px",fontSize:"0.7rem",fontWeight:600,cursor:"pointer"},children:"Export"})]}),(0,t.jsx)("div",{style:{height:"220px",overflowY:"auto",backgroundColor:"#05070a",border:"1px solid var(--border)",borderRadius:"6px",padding:"0.5rem",fontFamily:"var(--font-mono)",fontSize:"0.7rem",lineHeight:"1.4",whiteSpace:"pre-wrap",color:"#cbd5e1"},children:(()=>{if(!ta?.logs||0===ta.logs.length)return(0,t.jsx)("div",{style:{color:"var(--muted)",fontStyle:"italic",textAlign:"center"},children:"No logs captured."});let e=ta.logs.join("").replace(/\x1b\[[0-9;]*m/g,"").split(/\r?\n/),r=tc.trim()?e.filter(e=>e.toLowerCase().includes(tc.toLowerCase())):e;return 0===r.length?(0,t.jsx)("div",{style:{color:"var(--muted)",fontStyle:"italic",textAlign:"center"},children:"No matches."}):r.map((e,r)=>{if(!tc.trim())return(0,t.jsx)("div",{children:e},r);let o=e.split(RegExp(`(${tc})`,"gi"));return(0,t.jsx)("div",{children:o.map((e,r)=>e.toLowerCase()===tc.toLowerCase()?(0,t.jsx)("span",{style:{backgroundColor:"#eab308",color:"#000000",fontWeight:600},children:e},r):e)},r)})})()}),(0,t.jsxs)("div",{style:{borderTop:"1px solid var(--border)",paddingTop:"0.75rem"},children:[(0,t.jsx)("div",{style:{fontSize:"0.75rem",fontWeight:700,color:"var(--muted)",marginBottom:"0.5rem"},children:"Custom Buttons"}),(0,t.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:"0.35rem"},children:[(0,t.jsx)("input",{type:"text",placeholder:"Button Name (e.g. /undo)",value:th,onChange:e=>tg(e.target.value),style:{backgroundColor:"#05070a",border:"1px solid var(--border)",borderRadius:"4px",padding:"0.25rem 0.5rem",color:"#ffffff",fontSize:"0.7rem",outline:"none"}}),(0,t.jsx)("input",{type:"text",placeholder:"Injection Command",value:tf,onChange:e=>tx(e.target.value),style:{backgroundColor:"#05070a",border:"1px solid var(--border)",borderRadius:"4px",padding:"0.25rem 0.5rem",color:"#ffffff",fontSize:"0.7rem",outline:"none"}}),(0,t.jsx)("button",{onClick:()=>{th.trim()&&tf.trim()&&(tI([...tu,{name:th.trim(),command:tf.trim()}]),tg(""),tx(""))},style:{backgroundColor:"rgba(168, 85, 247, 0.15)",border:"1px solid #a855f7",color:"#c084fc",padding:"0.3rem",borderRadius:"4px",fontSize:"0.7rem",fontWeight:600,cursor:"pointer"},children:"+ Add Button"}),tu.length>0&&(0,t.jsx)("div",{style:{marginTop:"0.25rem",maxHeight:"60px",overflowY:"auto"},children:tu.map((e,r)=>(0,t.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",fontSize:"0.65rem",backgroundColor:"rgba(255,255,255,0.02)",padding:"0.1rem 0.25rem",borderRadius:"3px",marginTop:"0.15rem"},children:[(0,t.jsx)("span",{style:{color:"#c084fc"},children:e.name}),(0,t.jsx)("span",{onClick:()=>{tI(tu.filter((e,t)=>t!==r))},style:{color:"var(--danger)",cursor:"pointer"},children:"✖"})]},r))})]})]})]}),"database"===eU&&(0,t.jsx)(I.default,{workspaceRoot:o})]})]}),(0,t.jsx)("div",{onMouseDown:e1,style:{width:"4px",cursor:"col-resize",backgroundColor:eq?"var(--primary)":"var(--border)",transition:"background-color 0.15s ease",zIndex:10,alignSelf:"stretch"},onMouseEnter:e=>{eq||(e.currentTarget.style.backgroundColor="var(--border-focus)")},onMouseLeave:e=>{eq||(e.currentTarget.style.backgroundColor="var(--border)")},title:"Drag to resize sidebar"})]}),(0,t.jsxs)("div",{style:H,children:[(0,t.jsx)("div",{style:eT,children:(0,t.jsx)("div",{style:{display:"flex",gap:"0.25rem",overflowX:"auto"},children:d.map(r=>{let o=r.id===e,n="running"===r.status?"#10b981":"rgba(255,255,255,0.2)";return(0,t.jsxs)("div",{onClick:()=>{ty===r.id&&tb(null),c(r.id)},style:{...eR,backgroundColor:o?"#0b101b":"rgba(8,12,20,0.6)",borderColor:o?"var(--border-focus)":"var(--border)",color:o?"var(--foreground)":"var(--muted)"},children:[(0,t.jsx)("span",{style:{width:"6px",height:"6px",borderRadius:"50%",backgroundColor:n,display:"inline-block"}}),(0,t.jsx)("span",{style:{fontSize:"0.75rem",fontWeight:o?600:500},children:r.name}),(0,t.jsx)("span",{style:{fontSize:"0.6rem",color:"var(--muted)",backgroundColor:"rgba(255,255,255,0.05)",padding:"1px 4px",borderRadius:"3px"},children:r.type.replace("claude-","").replace("aider-","")}),"running"===r.status&&r.agentState&&(0,t.jsxs)("span",{style:{fontSize:"0.6rem",padding:"1px 4px",borderRadius:"3px",fontWeight:600,backgroundColor:"thinking"===r.agentState?"rgba(168, 85, 247, 0.2)":"needs-input"===r.agentState?"rgba(217, 119, 82, 0.2)":"complete"===r.agentState?"rgba(16, 185, 129, 0.2)":"rgba(255,255,255,0.05)",color:"thinking"===r.agentState?"#c084fc":"needs-input"===r.agentState?"#e0825f":"complete"===r.agentState?"#34d399":"var(--muted)",border:"thinking"===r.agentState?"1px solid rgba(168, 85, 247, 0.3)":"needs-input"===r.agentState?"1px solid rgba(217, 119, 82, 0.3)":"complete"===r.agentState?"1px solid rgba(16, 185, 129, 0.3)":"1px solid rgba(255,255,255,0.1)"},title:`Agent state: ${r.agentState}`,children:["thinking"===r.agentState&&`${F(r.type)} 💭 thinking`,"needs-input"===r.agentState&&`${F(r.type)} ⚠️ needs input`,"complete"===r.agentState&&`${F(r.type)} ✅ complete`,"idle"===r.agentState&&`${F(r.type)} 💤 idle`]})]},r.id)})})}),(0,t.jsxs)("div",{style:{...K,borderBottom:"none"},children:[(0,t.jsxs)("div",{style:_,children:[(0,t.jsx)("div",{style:Y,children:T.map(e=>(0,t.jsxs)("div",{style:{...q,backgroundColor:R===e.path?"#0b101b":"rgba(8,12,20,0.4)",borderColor:R===e.path?"var(--border-focus)":"transparent",color:R===e.path?"var(--foreground)":"var(--muted)"},onClick:()=>W(e.path),children:[(0,t.jsxs)("span",{style:{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:[e.name," ",e.isModified&&(0,t.jsx)("span",{style:Q,children:"●"})]}),(0,t.jsx)("span",{onClick:t=>{t.stopPropagation(),tX(e.path)},style:X,children:"✖"})]},e.path))}),tZ&&!tZ.path.startsWith("diff:")&&!tZ.path.startsWith("browser:")&&(0,t.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:"0.75rem"},children:[t0&&(0,t.jsxs)("div",{style:eP,children:[(0,t.jsx)("button",{onClick:()=>eN("edit"),style:{...eW,backgroundColor:"edit"===t5?"rgba(255,255,255,0.08)":"transparent",color:"edit"===t5?"var(--foreground)":"var(--muted)",borderColor:"edit"===t5?"var(--border-focus)":"transparent"},title:"Edit file",children:"✏️ Edit"}),(0,t.jsx)("button",{onClick:()=>eN("split"),style:{...eW,backgroundColor:"split"===t5?"rgba(255,255,255,0.08)":"transparent",color:"split"===t5?"var(--foreground)":"var(--muted)",borderColor:"split"===t5?"var(--border-focus)":"transparent"},title:"Split editor & preview",children:"🥞 Split"}),(0,t.jsx)("button",{onClick:()=>eN("preview"),style:{...eW,backgroundColor:"preview"===t5?"rgba(255,255,255,0.08)":"transparent",color:"preview"===t5?"var(--foreground)":"var(--muted)",borderColor:"preview"===t5?"var(--border-focus)":"transparent"},title:"Preview rendered document",children:"👁️ Preview"})]}),(0,t.jsx)("button",{onClick:t8,disabled:!tZ.isModified,style:{...Z,opacity:tZ.isModified?1:.5,cursor:tZ.isModified?"pointer":"not-allowed"},children:"💾 Save (Ctrl+S)"})]})]}),(0,t.jsx)("div",{style:ee,children:tZ?tZ.path.startsWith("browser:")?(0,t.jsx)(eL,{url:tZ.content}):tZ.path.startsWith("diff:")?(0,t.jsx)(eE,{content:tZ.content,filePath:tZ.path.substring(5)}):t0?"preview"===t5?(0,t.jsx)("div",{style:{height:"100%",overflow:"hidden"},children:(0,t.jsx)(a,{content:tZ.content})}):"split"===t5?(0,t.jsxs)("div",{style:{display:"flex",width:"100%",height:"100%",overflow:"hidden"},children:[(0,t.jsx)("div",{style:{flex:1,height:"100%"},children:(0,t.jsx)(L,{height:"100%",language:"markdown",theme:"neural-loom-dark",value:tZ.content,onChange:e=>t7(e||""),beforeMount:E,options:B,loading:(0,t.jsx)("div",{style:{padding:"1rem",color:"var(--muted)"},children:"Loading Editor..."})})}),(0,t.jsx)("div",{style:{flex:1,height:"100%",overflow:"hidden"},children:(0,t.jsx)(a,{content:tZ.content})})]}):(0,t.jsx)(L,{height:"100%",language:"markdown",theme:"neural-loom-dark",value:tZ.content,onChange:e=>t7(e||""),beforeMount:E,options:B,loading:(0,t.jsx)("div",{style:{padding:"1rem",color:"var(--muted)"},children:"Loading Editor..."})}):(0,t.jsx)(L,{height:"100%",language:(e=>{if(!e)return"plaintext";switch(e.split(".").pop()?.toLowerCase()){case"ts":case"tsx":return"typescript";case"js":case"jsx":return"javascript";case"json":return"json";case"css":return"css";case"md":return"markdown";case"html":return"html";case"sql":return"sql";case"py":return"python";case"sh":case"bash":return"shell";case"yaml":case"yml":return"yaml";default:return"plaintext"}})(tZ.path),theme:"neural-loom-dark",value:tZ.content,onChange:e=>t7(e||""),beforeMount:E,options:B,loading:(0,t.jsx)("div",{style:{padding:"1rem",color:"var(--muted)"},children:"Loading Editor..."})}):(0,t.jsxs)("div",{style:et,children:[(0,t.jsx)("div",{style:{fontSize:"2rem",marginBottom:"1rem"},children:"💻"}),(0,t.jsx)("h4",{style:{margin:0,fontWeight:600},children:"NeuralLoom Workspace Editor"}),(0,t.jsx)("p",{style:{margin:"0.5rem 0 0 0",color:"var(--muted)",fontSize:"0.8rem"},children:"Select files from the left explorer panel to view and edit. Use Ctrl+S to save changes."}),(0,t.jsxs)("p",{style:{margin:"0.5rem 0 0 0",color:"var(--muted)",fontSize:"0.75rem",fontStyle:"italic"},children:["Press ",(0,t.jsx)("kbd",{style:{background:"rgba(255,255,255,0.1)",padding:"2px 4px",borderRadius:"3px"},children:"Ctrl+P"})," to search files."]})]})})]}),(0,t.jsx)("div",{onMouseDown:e2,style:{height:"4px",cursor:"row-resize",backgroundColor:e0?"var(--primary)":"var(--border)",transition:"background-color 0.15s ease",zIndex:10,width:"100%"},onMouseEnter:e=>{e0||(e.currentTarget.style.backgroundColor="var(--border-focus)")},onMouseLeave:e=>{e0||(e.currentTarget.style.backgroundColor="var(--border)")},title:"Drag to resize console"}),(0,t.jsxs)("div",{style:{...er,flex:"none",height:`${eQ}px`},children:[(0,t.jsxs)("div",{style:eo,children:[(0,t.jsxs)("span",{style:{display:"flex",alignItems:"center",gap:"0.5rem",fontWeight:600,fontSize:"0.8rem"},children:["🖥️ Session Console Bridge ",ty&&"(Split View Active)"]}),(0,t.jsxs)("div",{style:{display:"flex",gap:"0.5rem",alignItems:"center"},children:[h?.status==="stopped"&&(0,t.jsx)("button",{onClick:async()=>{try{let t=await fetch("/api/sessions/start",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({id:e})});if(t.ok)p&&p();else{let e=await t.json();alert(e.error||"Failed to restart session.")}}catch(e){console.error("Failed to restart session:",e),alert("Network error: failed to restart session.")}},style:{padding:"0.3rem 0.6rem",borderRadius:"4px",border:"1px solid #eab308",backgroundColor:"rgba(234, 179, 8, 0.15)",color:"#eab308",fontSize:"0.7rem",fontWeight:600,cursor:"pointer",boxShadow:"0 0 8px rgba(234, 179, 8, 0.2)"},title:"Restart the stopped session process runner",children:"⚡ Restart Session"}),(0,t.jsxs)("select",{onChange:e=>{tb(e.target.value||null)},value:ty||"",style:{backgroundColor:"#080c14",border:"1px solid var(--border)",borderRadius:"4px",padding:"0.2rem 0.5rem",color:"var(--foreground)",fontSize:"0.7rem",outline:"none",cursor:"pointer"},children:[(0,t.jsx)("option",{value:"",children:"🖥️ Single Terminal"}),d.filter(t=>t.id!==e&&"running"===t.status).map(e=>(0,t.jsxs)("option",{value:e.id,children:["🖥️|🖥️ Split: ",e.name," (",e.agentState||"idle",")"]},e.id))]}),(0,t.jsx)("button",{onClick:async()=>{await fetch("/api/sessions/inject",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({id:e,command:"/ccc"})})},style:en,children:"🚀 Mount Context (/ccc)"}),(0,t.jsx)("button",{onClick:async()=>{await fetch("/api/sessions/inject",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({id:e,command:"/ccp"})})},style:ei,children:"⚡ Trigger Prompt (/ccp)"})]})]}),(0,t.jsxs)("div",{style:eS,children:[(0,t.jsx)("span",{style:{fontSize:"0.7rem",color:"var(--muted)",textTransform:"uppercase",letterSpacing:"0.05em",fontWeight:700},children:"Quick Commands:"}),(0,t.jsxs)("div",{style:{display:"flex",gap:"0.35rem",flexWrap:"wrap",alignItems:"center"},children:[tE?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("button",{onClick:()=>tL("/undo"),style:ez,title:"Aider: undo last commit",children:"/undo"}),(0,t.jsx)("button",{onClick:()=>tL("/diff"),style:ez,title:"Aider: show git diff",children:"/diff"}),(0,t.jsx)("button",{onClick:()=>tL("/commit"),style:ez,title:"Aider: commit edits",children:"/commit"}),(0,t.jsx)("button",{onClick:()=>tL("/test"),style:ez,title:"Aider: run tests",children:"/test"}),(0,t.jsx)("button",{onClick:()=>tL("/clear"),style:ez,title:"Clear terminal screen",children:"/clear"})]}):(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("button",{onClick:()=>tL("/compact"),style:ez,title:"Claude Code: compact history",children:"/compact"}),(0,t.jsx)("button",{onClick:()=>tL("/history"),style:ez,title:"Claude Code: view history",children:"/history"}),(0,t.jsx)("button",{onClick:()=>tL("/reset"),style:ez,title:"Claude Code: reset conversation",children:"/reset"}),(0,t.jsx)("button",{onClick:()=>tL("/help"),style:ez,title:"Claude Code: show help",children:"/help"})]}),tu.map((e,r)=>(0,t.jsx)("button",{onClick:()=>tL(e.command),style:{...ez,borderColor:"rgba(168, 85, 247, 0.4)",color:"#c084fc"},title:`Inject command: ${e.command}`,children:e.name},r))]})]}),(0,t.jsxs)("div",{style:{...ea,display:"flex",width:"100%"},children:[(0,t.jsx)("div",{style:{flex:1,height:"100%",borderRight:ty?"1px solid var(--border)":"none",overflow:"hidden"},children:(0,t.jsx)(n.default,{sessionId:e,height:"100%",wsPort:u})}),ty&&(0,t.jsxs)("div",{style:{flex:1,height:"100%",overflow:"hidden",display:"flex",flexDirection:"column"},children:[(0,t.jsxs)("div",{style:{padding:"0.25rem 0.5rem",backgroundColor:"#030406",fontSize:"0.7rem",borderBottom:"1px solid var(--border)",display:"flex",justifyContent:"space-between",alignItems:"center"},children:[(0,t.jsxs)("span",{style:{color:"#a855f7",fontWeight:600},children:["🔗 Focused PTY Connection: ",d.find(e=>e.id===ty)?.name]}),(0,t.jsx)("button",{onClick:()=>tb(null),style:{background:"none",border:"none",color:"var(--danger)",cursor:"pointer",fontSize:"0.7rem"},children:"Close Split ✖"})]}),(0,t.jsx)("div",{style:{flex:1,overflow:"hidden"},children:(0,t.jsx)(n.default,{sessionId:ty,height:"100%",wsPort:u})})]})]})]})]}),tB.type&&(0,t.jsx)("div",{style:es,children:(0,t.jsxs)("div",{style:ed,children:[(0,t.jsxs)("h3",{style:{margin:"0 0 1rem 0",fontSize:"1rem",fontWeight:600},children:["create-file"===tB.type&&"Create New File","create-folder"===tB.type&&"Create New Folder","rename"===tB.type&&"Rename Item","delete"===tB.type&&"Confirm Deletion"]}),tB.error&&(0,t.jsxs)("div",{style:{color:"var(--danger)",fontSize:"0.8rem",marginBottom:"1rem"},children:["⚠️ ",tB.error]}),"delete"!==tB.type?(0,t.jsxs)("form",{onSubmit:t_,children:[(0,t.jsxs)("div",{style:{marginBottom:"0.5rem",fontSize:"0.75rem",color:"var(--muted)",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},title:tB.targetPath||"",children:["Target: ",tB.targetPath]}),(0,t.jsx)("input",{type:"text",value:tB.inputValue,onChange:e=>tF({...tB,inputValue:e.target.value}),style:ec,autoFocus:!0,placeholder:"rename"===tB.type?"Enter new name":"Enter name"}),(0,t.jsxs)("div",{style:ep,children:[(0,t.jsx)("button",{type:"button",onClick:()=>tF({type:null,targetPath:null,inputValue:"",error:null}),style:eu,children:"Cancel"}),(0,t.jsx)("button",{type:"submit",style:em,children:"Submit"})]})]}):(0,t.jsxs)("div",{children:[(0,t.jsxs)("div",{style:{fontSize:"0.85rem",marginBottom:"1.5rem",color:"var(--muted)",overflowWrap:"break-word"},children:["Are you sure you want to delete this item? This action is permanent.",(0,t.jsx)("div",{style:{marginTop:"0.5rem",color:"#e2e8f0",fontFamily:"var(--font-mono)",fontSize:"0.75rem",background:"rgba(255,255,255,0.05)",padding:"0.5rem",borderRadius:"4px"},children:tB.targetPath})]}),(0,t.jsxs)("div",{style:ep,children:[(0,t.jsx)("button",{type:"button",onClick:()=>tF({type:null,targetPath:null,inputValue:"",error:null}),style:eu,children:"Cancel"}),(0,t.jsx)("button",{onClick:()=>t_(),style:{...em,backgroundColor:"var(--danger)"},children:"Delete Permanently"})]})]})]})}),tO&&(0,t.jsx)("div",{style:eg,onClick:()=>tM(!1),children:(0,t.jsxs)("div",{style:ef,onClick:e=>e.stopPropagation(),children:[(0,t.jsx)("input",{type:"text",value:tD,onChange:e=>{tN(e.target.value),tJ(0)},onKeyDown:e=>{"ArrowDown"===e.key?(e.preventDefault(),tJ(e=>(e+1)%Math.max(1,t3.length))):"ArrowUp"===e.key?(e.preventDefault(),tJ(e=>(e-1+t3.length)%Math.max(1,t3.length))):"Enter"===e.key?(e.preventDefault(),t3[tU]&&(tq(t3[tU].path),tM(!1))):"Escape"===e.key&&(e.preventDefault(),tM(!1))},placeholder:"Search files by name or path...",style:ex,autoFocus:!0}),(0,t.jsx)("div",{style:ey,children:t3.length>0?t3.map((e,r)=>(0,t.jsxs)("div",{onClick:()=>{tq(e.path),tM(!1)},style:{...eb,backgroundColor:r===tU?"rgba(168, 85, 247, 0.15)":"transparent",borderLeft:r===tU?"3px solid var(--primary)":"3px solid transparent"},children:[(0,t.jsx)("span",{style:{fontSize:"0.85rem",fontWeight:600},children:e.name}),(0,t.jsx)("span",{style:{fontSize:"0.7rem",color:"var(--muted)",marginLeft:"0.5rem",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:e.relativePath})]},e.path)):(0,t.jsx)("div",{style:{padding:"0.75rem 1rem",color:"var(--muted)",fontSize:"0.8rem",textAlign:"center"},children:"No matching files found"})}),(0,t.jsx)("div",{style:{padding:"0.5rem 1rem",borderTop:"1px solid var(--border)",fontSize:"0.65rem",color:"var(--muted)",textAlign:"right"},children:"Use ↑↓ to navigate, Enter to select, Esc to close"})]})}),b&&(0,t.jsx)(i.default,{title:"Add Scoped Directory",initialPath:o,onClose:()=>v(!1),onSelect:e=>{j(e),v(!1)}})]})}],3839)},97722,e=>{e.n(e.i(3839))}]);
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,67585,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"BailoutToCSR",{enumerable:!0,get:function(){return a}});let s=e.r(32061);function a({reason:e,children:t}){if("u"<typeof window)throw Object.defineProperty(new s.BailoutToCSRError(e),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});return t}},9885,(e,t,r)=>{"use strict";function s(e){return e.split("/").map(e=>encodeURIComponent(e)).join("/")}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"encodeURIPath",{enumerable:!0,get:function(){return s}})},52157,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"PreloadChunks",{enumerable:!0,get:function(){return i}});let s=e.r(43476),a=e.r(74080),n=e.r(63599),l=e.r(9885),o=e.r(43369);function i({moduleIds:e}){if("u">typeof window)return null;let t=n.workAsyncStorage.getStore();if(void 0===t)return null;let r=[];if(t.reactLoadableManifest&&e){let s=t.reactLoadableManifest;for(let t of e){if(!s[t])continue;let e=s[t].files;r.push(...e)}}if(0===r.length)return null;let d=(0,o.getAssetTokenQuery)();return(0,s.jsx)(s.Fragment,{children:r.map(e=>{let r=`${t.assetPrefix}/_next/${(0,l.encodeURIPath)(e)}${d}`;return e.endsWith(".css")?(0,s.jsx)("link",{precedence:"dynamic",href:r,rel:"stylesheet",as:"style",nonce:t.nonce},e):((0,a.preload)(r,{as:"script",fetchPriority:"low",nonce:t.nonce}),null)})})}},69093,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"default",{enumerable:!0,get:function(){return d}});let s=e.r(43476),a=e.r(71645),n=e.r(67585),l=e.r(52157);function o(e){return{default:e&&"default"in e?e.default:e}}let i={loader:()=>Promise.resolve(o(()=>null)),loading:null,ssr:!0},d=function(e){let t={...i,...e},r=(0,a.lazy)(()=>t.loader().then(o)),d=t.loading;function c(e){let o=d?(0,s.jsx)(d,{isLoading:!0,pastDelay:!0,error:null}):null,i=!t.ssr||!!t.loading,c=i?a.Suspense:a.Fragment,u=t.ssr?(0,s.jsxs)(s.Fragment,{children:["u"<typeof window?(0,s.jsx)(l.PreloadChunks,{moduleIds:t.modules}):null,(0,s.jsx)(r,{...e})]}):(0,s.jsx)(n.BailoutToCSR,{reason:"next/dynamic",children:(0,s.jsx)(r,{...e})});return(0,s.jsx)(c,{...i?{fallback:o}:{},children:u})}return c.displayName="LoadableComponent",c}},70703,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"default",{enumerable:!0,get:function(){return a}});let s=e.r(55682)._(e.r(69093));function a(e,t){let r={};"function"==typeof e&&(r.loader=e);let a={...r,...t};return(0,s.default)({...a,modules:a.loadableGenerated?.modules})}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},66381,e=>{"use strict";var t=e.i(43476),r=e.i(71645),s=e.i(74080);let a={display:"flex",height:"100%",width:"100%",backgroundColor:"#05070a",color:"#cbd5e1",fontSize:"0.875rem",minHeight:0},n={width:"280px",borderRight:"1px solid var(--border)",display:"flex",flexDirection:"column",minHeight:0,backgroundColor:"rgba(10, 15, 24, 0.4)",flexShrink:0},l={display:"flex",flexDirection:"column",padding:"1rem",minHeight:0},o={display:"flex",justifyContent:"space-between",alignItems:"center",marginBottom:"0.75rem"},i={fontWeight:700,letterSpacing:"0.05em",textTransform:"uppercase",fontSize:"0.75rem",color:"var(--muted)"},d={padding:"0.2rem 0.5rem",borderRadius:"4px",border:"1px solid var(--primary)",backgroundColor:"transparent",color:"var(--primary)",fontSize:"0.7rem",fontWeight:600,cursor:"pointer"},c={display:"flex",flexDirection:"column",gap:"0.4rem",overflowY:"auto",maxHeight:"220px"},u={fontSize:"0.65rem",fontWeight:600,color:"var(--muted)",marginTop:"0.5rem",marginBottom:"0.2rem",letterSpacing:"0.05em"},p={display:"flex",justifyContent:"space-between",alignItems:"center",padding:"0.5rem 0.6rem",borderRadius:"6px",backgroundColor:"rgba(255, 255, 255, 0.02)",border:"1px solid var(--border)",cursor:"pointer",transition:"all 0.2s ease"},m={backgroundColor:"rgba(109, 40, 217, 0.08)",border:"1px solid var(--border-focus)",boxShadow:"0 0 10px rgba(109, 40, 217, 0.1)"},h={display:"flex",flexDirection:"column",gap:"0.15rem",flex:1,minWidth:0},f={fontWeight:600,fontSize:"0.8rem",color:"#fff",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},g={fontSize:"0.7rem",color:"var(--muted)",textTransform:"uppercase"},x={background:"none",border:"none",color:"rgba(239, 68, 68, 0.4)",cursor:"pointer",fontSize:"0.75rem",padding:"0.25rem"},y={display:"flex",flexDirection:"column",gap:"0.25rem",overflowY:"auto",flex:1,minHeight:0},b={fontSize:"0.75rem",color:"var(--muted)",textAlign:"center",padding:"1rem 0"},j={display:"flex",flexDirection:"column"},v={display:"flex",alignItems:"center",padding:"0.35rem 0.5rem",borderRadius:"4px",cursor:"pointer",userSelect:"none",transition:"background 0.2s ease"},_={marginRight:"0.4rem",fontSize:"0.9rem"},w={flex:1,fontSize:"0.8rem",color:"#e2e8f0",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},k={fontSize:"0.6rem",color:"var(--muted)",marginLeft:"0.25rem"},S={display:"flex",flexDirection:"column",gap:"0.2rem",paddingLeft:"1.5rem",marginTop:"0.15rem",borderLeft:"1px dashed rgba(255,255,255,0.06)",marginLeft:"0.8rem",marginBottom:"0.25rem"},C={display:"flex",alignItems:"center",padding:"0.15rem 0.25rem",fontSize:"0.75rem"},N={marginRight:"0.3rem",fontSize:"0.7rem"},E={flex:1,color:"var(--muted)",overflow:"hidden",textOverflow:"ellipsis"},R={fontSize:"0.65rem",color:"rgba(109, 40, 217, 0.75)",fontFamily:"monospace",paddingLeft:"0.5rem"},L={flex:1,display:"flex",flexDirection:"column",minHeight:0,backgroundColor:"#05070a"},T={display:"flex",justifyContent:"space-between",alignItems:"center",padding:"0.75rem 1rem",borderBottom:"1px solid var(--border)",backgroundColor:"rgba(15, 23, 42, 0.3)",flexShrink:0},W={fontSize:"0.75rem",color:"var(--muted)"},P={fontSize:"0.8rem",fontWeight:600,color:"#fff",display:"flex",alignItems:"center",gap:"0.4rem"},O={padding:"0.1rem 0.4rem",borderRadius:"4px",backgroundColor:"rgba(234, 179, 8, 0.12)",color:"#eab308",fontSize:"0.65rem",fontWeight:700,border:"1px solid rgba(234, 179, 8, 0.2)"},I={padding:"0.4rem 0.9rem",borderRadius:"6px",border:"none",backgroundColor:"var(--primary)",color:"#fff",fontSize:"0.8rem",fontWeight:600,transition:"all 0.2s ease"},D={height:"180px",borderBottom:"1px solid var(--border)",position:"relative",flexShrink:0},q={width:"100%",height:"100%",backgroundColor:"#080c14",border:"none",resize:"none",color:"#e2e8f0",fontFamily:"monospace",fontSize:"0.85rem",padding:"1rem",outline:"none",lineHeight:"1.4"},A={flex:1,display:"flex",flexDirection:"column",minHeight:0,padding:"1rem"},z={padding:"1rem",borderRadius:"8px",backgroundColor:"rgba(239, 68, 68, 0.08)",border:"1px solid rgba(239, 68, 68, 0.2)",overflowY:"auto"},B={margin:0,fontFamily:"monospace",fontSize:"0.8rem",color:"#f87171",whiteSpace:"pre-wrap"},$={marginTop:"1rem",padding:"0.75rem",borderRadius:"6px",backgroundColor:"rgba(0, 0, 0, 0.3)",border:"1px solid var(--border)"},F={display:"block",padding:"0.5rem",backgroundColor:"#090d16",borderRadius:"4px",fontFamily:"monospace",fontSize:"0.8rem",color:"var(--primary)",border:"1px solid var(--border)"},M={display:"flex",flexDirection:"column",height:"100%",minHeight:0},U={display:"flex",justifyContent:"space-between",alignItems:"center",fontSize:"0.75rem",color:"var(--muted)",marginBottom:"0.5rem"},H={flex:1,overflow:"auto",border:"1px solid var(--border)",borderRadius:"6px"},G={width:"100%",borderCollapse:"collapse",fontFamily:"monospace",fontSize:"0.8rem"},Y={padding:"0.5rem 0.75rem",textAlign:"left",backgroundColor:"#0f172a",borderBottom:"1px solid var(--border)",color:"#94a3b8",fontWeight:600,position:"sticky",top:0,zIndex:1},J={padding:"0.4rem 0.75rem",borderBottom:"1px solid rgba(255, 255, 255, 0.03)",color:"#cbd5e1",whiteSpace:"nowrap"},Q={padding:"0.2rem 0.5rem",borderRadius:"4px",border:"1px solid var(--border)",backgroundColor:"rgba(255, 255, 255, 0.02)",color:"var(--muted)",fontSize:"0.7rem",fontWeight:600,cursor:"pointer",transition:"all 0.15s ease"},K={width:"100%",backgroundColor:"#070a12",border:"1px solid var(--border-focus)",borderRadius:"3px",color:"#fff",padding:"0.1rem 0.3rem",fontSize:"0.8rem",fontFamily:"monospace",outline:"none"},V={cursor:"pointer",transition:"all 0.15s ease"},X={backgroundColor:"transparent"},Z={backgroundColor:"rgba(255, 255, 255, 0.01)"},ee={flex:1,display:"flex",alignItems:"center",justifyContent:"center",color:"var(--muted)",fontSize:"0.8rem",textAlign:"center"},et={flex:1,display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",gap:"1rem"},er={width:"24px",height:"24px",border:"3px solid rgba(109, 40, 217, 0.15)",borderTop:"3px solid var(--primary)",borderRadius:"50%",animation:"spin 1s linear infinite"},es={width:"12px",height:"12px",border:"2px solid rgba(255, 255, 255, 0.1)",borderTop:"2px solid var(--muted)",borderRadius:"50%",animation:"spin 1s linear infinite"},ea={position:"fixed",top:0,left:0,right:0,bottom:0,backgroundColor:"rgba(0, 0, 0, 0.7)",display:"flex",alignItems:"center",justifyContent:"center",zIndex:999},en={width:"480px",backgroundColor:"#0d131f",borderRadius:"12px",border:"1px solid var(--border-focus)",padding:"1.5rem",boxShadow:"0 4px 24px rgba(0, 0, 0, 0.5)"},el={display:"flex",flexDirection:"column",gap:"0.35rem",marginBottom:"1rem"},eo={fontSize:"0.75rem",fontWeight:600,color:"var(--muted)"},ei={padding:"0.5rem",borderRadius:"6px",border:"1px solid var(--border)",backgroundColor:"#070a12",color:"#fff",outline:"none",fontSize:"0.8rem"},ed={padding:"0.5rem",borderRadius:"6px",border:"1px solid var(--border)",backgroundColor:"#070a12",color:"#fff",outline:"none",fontSize:"0.8rem"},ec={padding:"0.5rem",borderRadius:"6px",fontSize:"0.75rem",marginBottom:"1rem"},eu={display:"flex",justifyContent:"space-between",marginTop:"1.5rem"},ep={padding:"0.4rem 0.75rem",borderRadius:"6px",border:"1px solid var(--border)",backgroundColor:"transparent",color:"var(--muted)",fontSize:"0.75rem",fontWeight:600,cursor:"pointer"},em={padding:"0.4rem 0.75rem",borderRadius:"6px",border:"none",backgroundColor:"transparent",color:"var(--muted)",fontSize:"0.75rem",fontWeight:600,cursor:"pointer"},eh={padding:"0.4rem 0.75rem",borderRadius:"6px",border:"none",backgroundColor:"var(--primary)",color:"#fff",fontSize:"0.75rem",fontWeight:600,cursor:"pointer"};if("u">typeof document){let e=document.createElement("style");e.innerHTML=`
|
|
2
|
+
@keyframes spin {
|
|
3
|
+
0% { transform: rotate(0deg); }
|
|
4
|
+
100% { transform: rotate(360deg); }
|
|
5
|
+
}
|
|
6
|
+
.db-cell:hover {
|
|
7
|
+
background-color: rgba(255, 255, 255, 0.03) !important;
|
|
8
|
+
outline: 1px dashed rgba(255, 255, 255, 0.2);
|
|
9
|
+
}
|
|
10
|
+
`,document.head.appendChild(e)}e.s(["default",0,function({workspaceRoot:e}){let[ef,eg]=(0,r.useState)({global:[],workspace:[]}),[ex,ey]=(0,r.useState)(null),[eb,ej]=(0,r.useState)(!0),[ev,e_]=(0,r.useState)([]),[ew,ek]=(0,r.useState)(null),[eS,eC]=(0,r.useState)({}),[eN,eE]=(0,r.useState)(!1),[eR,eL]=(0,r.useState)("SELECT * FROM sqlite_master;"),[eT,eW]=(0,r.useState)(!1),[eP,eO]=(0,r.useState)(null),[eI,eD]=(0,r.useState)(null),[eq,eA]=(0,r.useState)(null),[ez,eB]=(0,r.useState)(null),[e$,eF]=(0,r.useState)(!1),[eM,eU]=(0,r.useState)(!1),[eH,eG]=(0,r.useState)({id:"",name:"",type:"sqlite",filepath:"./dev.db",host:"localhost",port:5432,database:"postgres",username:"postgres",password:"",ssl:!1,readOnly:!0}),[eY,eJ]=(0,r.useState)(!1),[eQ,eK]=(0,r.useState)(null),eV=async()=>{try{let t=await fetch(`/api/sql/connections?root=${encodeURIComponent(e)}`);if(t.ok){let e=await t.json();e.success&&(eg({global:e.global||[],workspace:e.workspace||[]}),ey(e.activeId),ej(e.isActiveGlobal))}}catch(e){console.error("Failed to load connection profiles:",e)}},eX=async()=>{if(!ex)return void e_([]);eE(!0);try{let t=await fetch(`/api/sql/schema?action=list_tables&root=${encodeURIComponent(e)}`);if(t.ok){let e=await t.json();e.success?(e_(e.tables||[]),eO(null)):eO(e.error||"Failed to load database schema.")}else{let e=await t.json();eO(e.error||"Failed to load database schema.")}}catch(e){console.error("Failed to load schema:",e)}finally{eE(!1)}},eZ=async t=>{if(eS[t])return void ek(ew===t?null:t);try{let r=await fetch(`/api/sql/schema?action=describe_table&table=${encodeURIComponent(t)}&root=${encodeURIComponent(e)}`);if(r.ok){let e=await r.json();e.success&&(eC(r=>({...r,[t]:e.columns})),ek(t))}}catch(e){console.error(`Failed to load columns for table ${t}:`,e)}};(0,r.useEffect)(()=>{eV()},[e]),(0,r.useEffect)(()=>{eX(),eD(null),ek(null),eC({});let e=eb?ef.global.find(e=>e.id===ex):ef.workspace.find(e=>e.id===ex);e&&("sqlite"===e.type?eL("SELECT name, type FROM sqlite_master WHERE type='table';"):"mssql"===e.type?eL("SELECT * FROM sys.tables;"):eL("SELECT * FROM information_schema.tables LIMIT 10;"))},[ex,eb,ef.global.length,ef.workspace.length]);let e0=async(t,r)=>{try{(await fetch("/api/sql/connections",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"set_active",profileId:t,isGlobal:r,root:e})})).ok&&(ey(t),ej(r))}catch(e){console.error("Failed to set active profile:",e)}},e1=async()=>{eK(null);try{let t=await fetch("/api/sql/connections",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"test",profile:eH,root:e})}),r=await t.json();r.success?eK({success:!0,message:"Connection test successful!"}):eK({success:!1,message:r.error||"Connection test failed."})}catch(e){eK({success:!1,message:e.message||"Failed to make test query."})}},e5=async t=>{if(t.preventDefault(),!eH.name||!eH.type)return;eJ(!0);let r=eH.id||`profile_${Math.random().toString(36).substring(7)}`,s={...eH,id:r,name:eH.name,type:eH.type};try{(await fetch("/api/sql/connections",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"save",profile:s,isGlobal:eM,root:e})})).ok&&(await eV(),eF(!1),ex||e0(r,eM))}catch(e){console.error("Failed to save profile:",e)}finally{eJ(!1)}},e2=async(t,r)=>{if(confirm("Are you sure you want to delete this connection profile?"))try{(await fetch("/api/sql/connections",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"delete",profileId:t,isGlobal:r,root:e})})).ok&&(await eV(),ex===t&&ey(null))}catch(e){console.error("Failed to delete connection profile:",e)}},e8=async(t,r,s,a)=>{if(e6?.readOnly)return void alert("Database connection is Read-Only. Updates are disabled.");let n=(e=>{let t=e.match(/from\s+([a-zA-Z0-9_\`"\[\]\.]+)/i);if(!t)return null;let r=t[1].trim(),s=(r=r.replace(/[\`"\[\]]/g,"")).split(".");return s[s.length-1]})(eR);if(!n)return void alert("Could not extract table name from query for inline edit. Please ensure your query includes 'FROM tableName'.");eB({rowIndex:t,field:r,status:"saving"});try{let a=eS[n];if(!a){let t=await fetch(`/api/sql/schema?action=describe_table&table=${encodeURIComponent(n)}&root=${encodeURIComponent(e)}`);if(t.ok){let e=await t.json();e.success&&e.columns&&(a=e.columns,eC(t=>({...t,[n]:e.columns})))}}if(!a)throw Error(`Could not load schema columns for table "${n}".`);let l=a.find(e=>e.isPrimaryKey);if(!l)throw Error(`Table "${n}" does not have a primary key. Inline editing requires a primary key.`);let o=eI?.rows[t];if(!o||!(l.name in o))throw Error(`Primary key column "${l.name}" was not returned in the query results. Please include it in your SELECT statement.`);let i=o[l.name],d=a.find(e=>e.name===r);if(!d)throw Error(`Column "${r}" was not found in schema columns.`);let c=e=>{let t=e.toLowerCase();return t.includes("int")||t.includes("decimal")||t.includes("numeric")||t.includes("float")||t.includes("double")||t.includes("real")},u="";if("NULL"===s.toUpperCase())u=`${r} = NULL`;else if(c(d.type)){if(""===s||isNaN(Number(s)))throw Error(`Value "${s}" is not a valid number for column "${r}".`);u=`${r} = ${s}`}else u=`${r} = '${s.replace(/'/g,"''")}'`;let p="";p=c(l.type)?`${l.name} = ${i}`:`${l.name} = '${String(i).replace(/'/g,"''")}'`;let m=`UPDATE ${n} SET ${u} WHERE ${p};`,h=await fetch("/api/sql/query",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({sql:m,root:e})}),f=await h.json();if(h.ok&&f.success){if(eI){let e=[...eI.rows],a=s;"NULL"===s.toUpperCase()?a=null:c(d.type)&&(a=Number(s)),e[t]={...e[t],[r]:a},eD({...eI,rows:e})}eB({rowIndex:t,field:r,status:"success"}),setTimeout(()=>eB(null),1500)}else throw Error(f.error||"Update database query failed.")}catch(e){eB({rowIndex:t,field:r,status:"error",message:e.message}),alert(`Inline Update Failed:
|
|
11
|
+
${e.message}`)}},e7=async()=>{if(eR.trim()&&ex){eW(!0),eO(null),eD(null);try{let t=await fetch("/api/sql/query",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({sql:eR.trim(),root:e})}),r=await t.json();t.ok&&r.success?(eD({rows:r.rows||[],fields:r.fields||[],durationMs:r.durationMs||0,affectedRows:r.affectedRows}),(eR.toLowerCase().includes("create table")||eR.toLowerCase().includes("drop table")||eR.toLowerCase().includes("alter table"))&&eX()):eO(r.error||"Failed to execute query.")}catch(e){eO(e.message||"An unexpected error occurred during execution.")}finally{eW(!1)}}},e6=eb?ef.global.find(e=>e.id===ex):ef.workspace.find(e=>e.id===ex);return(0,t.jsxs)("div",{style:a,children:[(0,t.jsxs)("div",{style:n,children:[(0,t.jsxs)("div",{style:l,children:[(0,t.jsxs)("div",{style:o,children:[(0,t.jsx)("span",{style:i,children:"Connections"}),(0,t.jsx)("button",{style:d,onClick:()=>{eK(null),eG({id:"",name:"",type:"sqlite",filepath:"./dev.db",host:"localhost",port:5432,database:"postgres",username:"postgres",password:"",ssl:!1,readOnly:!0}),eU(!1),eF(!0)},title:"Add Database Connection Profile",children:"➕ Add"})]}),(0,t.jsxs)("div",{style:c,children:[0===ef.global.length&&0===ef.workspace.length&&(0,t.jsx)("div",{style:b,children:"No connections configured. Add one to start."}),ef.workspace.length>0&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("div",{style:u,children:"WORKSPACE CONNECTIONS"}),ef.workspace.map(e=>(0,t.jsxs)("div",{style:{...p,...ex===e.id&&!eb?m:{}},onClick:()=>e0(e.id,!1),children:[(0,t.jsxs)("div",{style:h,children:[(0,t.jsxs)("span",{style:f,children:["📁 ",e.name]}),(0,t.jsx)("span",{style:g,children:e.type})]}),(0,t.jsx)("button",{style:x,onClick:t=>{t.stopPropagation(),e2(e.id,!1)},children:"✖"})]},e.id))]}),ef.global.length>0&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("div",{style:u,children:"GLOBAL CONNECTIONS"}),ef.global.map(e=>(0,t.jsxs)("div",{style:{...p,...ex===e.id&&eb?m:{}},onClick:()=>e0(e.id,!0),children:[(0,t.jsxs)("div",{style:h,children:[(0,t.jsxs)("span",{style:f,children:["🌐 ",e.name]}),(0,t.jsx)("span",{style:g,children:e.type})]}),(0,t.jsx)("button",{style:x,onClick:t=>{t.stopPropagation(),e2(e.id,!0)},children:"✖"})]},e.id))]})]})]}),(0,t.jsxs)("div",{style:{...l,flex:1,borderTop:"1px solid var(--border)"},children:[(0,t.jsxs)("div",{style:o,children:[(0,t.jsx)("span",{style:i,children:"Schema Tables"}),eN&&(0,t.jsx)("span",{style:es})]}),(0,t.jsxs)("div",{style:y,children:[!ex&&(0,t.jsx)("div",{style:b,children:"Select an active connection to view tables."}),ex&&0===ev.length&&!eN&&(0,t.jsx)("div",{style:b,children:"No tables found in database schema."}),ev.map(e=>(0,t.jsxs)("div",{style:j,children:[(0,t.jsxs)("div",{style:v,onClick:()=>eZ(e.name),children:[(0,t.jsx)("span",{style:_,children:"view"===e.type?"👁️":"📊"}),(0,t.jsx)("span",{style:w,children:e.name}),(0,t.jsx)("span",{style:k,children:ew===e.name?"▼":"▶"})]}),ew===e.name&&eS[e.name]&&(0,t.jsx)("div",{style:S,children:eS[e.name].map(e=>(0,t.jsxs)("div",{style:C,children:[(0,t.jsx)("span",{style:N,children:e.isPrimaryKey?"🔑":e.isForeignKey?"🔗":"▫"}),(0,t.jsx)("span",{style:E,title:e.type,children:e.name}),(0,t.jsx)("span",{style:R,children:e.type.toLowerCase().substring(0,12)})]},e.name))})]},e.name))]})]})]}),(0,t.jsxs)("div",{style:L,children:[(0,t.jsxs)("div",{style:T,children:[(0,t.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:"0.5rem"},children:[(0,t.jsx)("span",{style:W,children:"Active Connection:"}),e6?(0,t.jsxs)("span",{style:P,children:[eb?"🌐":"📁"," ",e6.name," (",e6.type,")",e6.readOnly&&(0,t.jsx)("span",{style:O,children:"Read-Only"})]}):(0,t.jsx)("span",{style:{...P,color:"var(--danger)"},children:"No Connection Selected"})]}),(0,t.jsx)("button",{style:{...I,opacity:!ex||eT?.6:1,cursor:!ex||eT?"not-allowed":"pointer"},onClick:e7,disabled:!ex||eT,children:eT?"⌛ Running...":"⚡ Execute Query (F5)"})]}),(0,t.jsx)("div",{style:D,children:(0,t.jsx)("textarea",{style:q,value:eR,onChange:e=>eL(e.target.value),placeholder:"Write your SQL query script here...",onKeyDown:e=>{("F5"===e.key||e.ctrlKey&&"Enter"===e.key)&&(e.preventDefault(),e7())}})}),(0,t.jsxs)("div",{style:A,children:[eP&&(0,t.jsxs)("div",{style:z,children:[(0,t.jsx)("h4",{style:{margin:"0 0 0.5rem 0",color:"var(--danger)"},children:"⚠️ Execution Error"}),(0,t.jsx)("pre",{style:B,children:eP}),eP.includes("not installed")&&(0,t.jsxs)("div",{style:$,children:[(0,t.jsx)("p",{style:{margin:"0 0 0.5rem 0"},children:"To resolve this, run this installer command in your workspace terminal:"}),(0,t.jsx)("code",{style:F,children:e6?.type==="sqlite"?"npm install better-sqlite3":e6?.type==="postgres"?"npm install pg":e6?.type==="mysql"?"npm install mysql2":"npm install mssql"})]})]}),eI&&(0,t.jsxs)("div",{style:M,children:[(0,t.jsxs)("div",{style:U,children:[(0,t.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:"0.5rem"},children:[(0,t.jsxs)("span",{children:["Query completed."," ",void 0!==eI.affectedRows?`Affected rows: ${eI.affectedRows}`:`Returned ${eI.rows.length} rows`]}),(0,t.jsxs)("span",{children:["Duration: ",eI.durationMs,"ms"]})]}),eI.rows.length>0&&(0,t.jsxs)("div",{style:{display:"flex",gap:"0.4rem"},children:[(0,t.jsx)("button",{onClick:()=>{if(eI&&0!==eI.rows.length)try{let e=eI.fields.join(","),t=eI.rows.map(e=>eI.fields.map(t=>{let r=e[t];if(null===r)return"NULL";let s=String(r);return s.includes(",")||s.includes('"')||s.includes("\n")||s.includes("\r")?`"${s.replace(/"/g,'""')}"`:s}).join(",")),r=[e,...t].join("\r\n"),s=new Blob([r],{type:"text/csv;charset=utf-8;"}),a=URL.createObjectURL(s),n=document.createElement("a");n.setAttribute("href",a),n.setAttribute("download",`query-results-${Date.now()}.csv`),document.body.appendChild(n),n.click(),document.body.removeChild(n)}catch(e){console.error("Export CSV failed:",e),alert("Failed to export as CSV")}},style:Q,children:"📥 Export CSV"}),(0,t.jsx)("button",{onClick:()=>{if(eI&&0!==eI.rows.length)try{let e=JSON.stringify(eI.rows,null,2),t=new Blob([e],{type:"application/json;charset=utf-8;"}),r=URL.createObjectURL(t),s=document.createElement("a");s.setAttribute("href",r),s.setAttribute("download",`query-results-${Date.now()}.json`),document.body.appendChild(s),s.click(),document.body.removeChild(s)}catch(e){console.error("Export JSON failed:",e),alert("Failed to export as JSON")}},style:Q,children:"📥 Export JSON"})]})]}),eI.rows.length>0?(0,t.jsx)("div",{style:H,children:(0,t.jsxs)("table",{style:G,children:[(0,t.jsx)("thead",{children:(0,t.jsx)("tr",{children:eI.fields.map(e=>(0,t.jsx)("th",{style:Y,children:e},e))})}),(0,t.jsx)("tbody",{children:eI.rows.map((e,r)=>(0,t.jsx)("tr",{style:r%2==0?X:Z,children:eI.fields.map(s=>{let a=eq&&eq.rowIndex===r&&eq.field===s,n=ez&&ez.rowIndex===r&&ez.field===s&&"saving"===ez.status,l=ez&&ez.rowIndex===r&&ez.field===s&&"success"===ez.status,o=ez&&ez.rowIndex===r&&ez.field===s&&"error"===ez.status,i={...J,...V};return n?i={...i,backgroundColor:"rgba(168, 85, 247, 0.15)"}:l?i={...i,backgroundColor:"rgba(16, 185, 129, 0.25)"}:o&&(i={...i,backgroundColor:"rgba(239, 68, 68, 0.25)"}),(0,t.jsx)("td",{style:i,onDoubleClick:()=>{e6?.readOnly?alert("Database connection is Read-Only. Editing is disabled."):eA({rowIndex:r,field:s,value:null===e[s]?"NULL":String(e[s])})},className:"db-cell",title:"Double click to edit cell",children:a?(0,t.jsx)("input",{style:K,value:eq.value,autoFocus:!0,onChange:e=>eA({...eq,value:e.target.value}),onKeyDown:async t=>{if("Enter"===t.key){t.preventDefault();let a=eq.value;eA(null),a!==(null===e[s]?"NULL":String(e[s]))&&await e8(r,s,a,e[s])}else"Escape"===t.key&&eA(null)},onBlur:async()=>{let t=eq.value;eA(null),t!==(null===e[s]?"NULL":String(e[s]))&&await e8(r,s,t,e[s])}}):null===e[s]?"NULL":"object"==typeof e[s]?JSON.stringify(e[s]):String(e[s])},s)})},r))})]})}):void 0===eI.affectedRows&&(0,t.jsx)("div",{style:ee,children:"Query executed successfully, but returned 0 results."})]}),!eP&&!eI&&!eT&&(0,t.jsx)("div",{style:ee,children:"Write a query script and click Execute to view table records."}),eT&&(0,t.jsxs)("div",{style:et,children:[(0,t.jsx)("span",{style:er}),(0,t.jsx)("span",{style:{color:"var(--muted)"},children:"Running database statement..."})]})]})]}),e$&&"u">typeof document&&(0,s.createPortal)((0,t.jsx)("div",{style:ea,children:(0,t.jsxs)("div",{style:en,children:[(0,t.jsxs)("h3",{style:{margin:"0 0 1rem 0",display:"flex",justifyContent:"space-between"},children:[(0,t.jsx)("span",{children:"🔌 Add Database Profile"}),(0,t.jsx)("span",{style:{cursor:"pointer"},onClick:()=>eF(!1),children:"✖"})]}),(0,t.jsxs)("form",{onSubmit:e5,children:[(0,t.jsxs)("div",{style:el,children:[(0,t.jsx)("label",{style:eo,children:"Profile Name"}),(0,t.jsx)("input",{style:ei,type:"text",required:!0,value:eH.name,onChange:e=>eG(t=>({...t,name:e.target.value})),placeholder:"e.g. Local Postgres, Dev SQLite"})]}),(0,t.jsxs)("div",{style:el,children:[(0,t.jsx)("label",{style:eo,children:"Scope Level"}),(0,t.jsxs)("div",{style:{display:"flex",gap:"1rem"},children:[(0,t.jsxs)("label",{style:{cursor:"pointer",display:"flex",alignItems:"center",gap:"0.25rem"},children:[(0,t.jsx)("input",{type:"radio",checked:!eM,onChange:()=>eU(!1)}),"Workspace Local"]}),(0,t.jsxs)("label",{style:{cursor:"pointer",display:"flex",alignItems:"center",gap:"0.25rem"},children:[(0,t.jsx)("input",{type:"radio",checked:eM,onChange:()=>eU(!0)}),"Global User Profile"]})]})]}),(0,t.jsxs)("div",{style:el,children:[(0,t.jsx)("label",{style:eo,children:"Database Type"}),(0,t.jsxs)("select",{style:ed,value:eH.type,onChange:e=>{let t=e.target.value,r=5432;"mysql"===t&&(r=3306),"mssql"===t&&(r=1433),eG(e=>({...e,type:t,filepath:"sqlite"===t?"./dev.db":void 0,port:"sqlite"!==t?r:void 0,database:"sqlite"===t?void 0:"mssql"===t?"master":"postgres"===t?"postgres":"",username:"sqlite"===t?void 0:"mssql"===t?"sa":"postgres"===t?"postgres":"root"}))},children:[(0,t.jsx)("option",{value:"sqlite",children:"SQLite (Local File)"}),(0,t.jsx)("option",{value:"postgres",children:"PostgreSQL"}),(0,t.jsx)("option",{value:"mysql",children:"MySQL"}),(0,t.jsx)("option",{value:"mssql",children:"Microsoft SQL Server"})]})]}),"sqlite"===eH.type?(0,t.jsxs)("div",{style:el,children:[(0,t.jsx)("label",{style:eo,children:"Database File Path"}),(0,t.jsx)("input",{style:ei,type:"text",required:!0,value:eH.filepath||"",onChange:e=>eG(t=>({...t,filepath:e.target.value})),placeholder:"Relative (e.g. ./data/dev.db) or Absolute path"})]}):(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("div",{style:{display:"flex",gap:"1rem"},children:[(0,t.jsxs)("div",{style:{...el,flex:3},children:[(0,t.jsx)("label",{style:eo,children:"Host IP Address"}),(0,t.jsx)("input",{style:ei,type:"text",required:!0,value:eH.host||"",onChange:e=>eG(t=>({...t,host:e.target.value})),placeholder:"localhost or IP"})]}),(0,t.jsxs)("div",{style:{...el,flex:1},children:[(0,t.jsx)("label",{style:eo,children:"Port"}),(0,t.jsx)("input",{style:ei,type:"number",required:!0,value:eH.port||0,onChange:e=>eG(t=>({...t,port:parseInt(e.target.value)}))})]})]}),(0,t.jsxs)("div",{style:el,children:[(0,t.jsx)("label",{style:eo,children:"Database Name"}),(0,t.jsx)("input",{style:ei,type:"text",required:!0,value:eH.database||"",onChange:e=>eG(t=>({...t,database:e.target.value}))})]}),(0,t.jsxs)("div",{style:{display:"flex",gap:"1rem"},children:[(0,t.jsxs)("div",{style:{...el,flex:1},children:[(0,t.jsx)("label",{style:eo,children:"Username"}),(0,t.jsx)("input",{style:ei,type:"text",required:!0,value:eH.username||"",onChange:e=>eG(t=>({...t,username:e.target.value}))})]}),(0,t.jsxs)("div",{style:{...el,flex:1},children:[(0,t.jsx)("label",{style:eo,children:"Password"}),(0,t.jsx)("input",{style:ei,type:"password",value:eH.password||"",onChange:e=>eG(t=>({...t,password:e.target.value}))})]})]}),("postgres"===eH.type||"mssql"===eH.type)&&(0,t.jsx)("div",{style:el,children:(0,t.jsxs)("label",{style:{cursor:"pointer",display:"flex",alignItems:"center",gap:"0.25rem"},children:[(0,t.jsx)("input",{type:"checkbox",checked:!!eH.ssl,onChange:e=>eG(t=>({...t,ssl:e.target.checked}))}),"Require SSL Secure Connection"]})})]}),(0,t.jsx)("div",{style:el,children:(0,t.jsxs)("label",{style:{cursor:"pointer",display:"flex",alignItems:"center",gap:"0.25rem"},children:[(0,t.jsx)("input",{type:"checkbox",checked:!!eH.readOnly,onChange:e=>eG(t=>({...t,readOnly:e.target.checked}))}),"Enforce Read-Only Connection (Disable mutations)"]})}),eQ&&(0,t.jsx)("div",{style:{...ec,backgroundColor:eQ.success?"rgba(16, 185, 129, 0.12)":"rgba(239, 68, 68, 0.12)",border:eQ.success?"1px solid var(--success)":"1px solid var(--danger)",color:eQ.success?"var(--success)":"var(--danger)"},children:eQ.message}),(0,t.jsxs)("div",{style:eu,children:[(0,t.jsx)("button",{type:"button",style:ep,onClick:e1,children:"🔍 Test Connection"}),(0,t.jsxs)("div",{style:{display:"flex",gap:"0.5rem"},children:[(0,t.jsx)("button",{type:"button",style:em,onClick:()=>eF(!1),children:"Cancel"}),(0,t.jsx)("button",{type:"submit",style:eh,disabled:eY,children:eY?"Saving...":"Save Profile"})]})]})]})]})}),document.body)]})}])},20897,e=>{e.v({activeBorder:"page-module___8aEwW__activeBorder",agentBadge:"page-module___8aEwW__agentBadge",agentCard:"page-module___8aEwW__agentCard",agentGrid:"page-module___8aEwW__agentGrid",agentHeader:"page-module___8aEwW__agentHeader",agentName:"page-module___8aEwW__agentName",agentStateBadge:"page-module___8aEwW__agentStateBadge",ansiCyan:"page-module___8aEwW__ansiCyan",ansiGreen:"page-module___8aEwW__ansiGreen",ansiMagenta:"page-module___8aEwW__ansiMagenta",ansiRed:"page-module___8aEwW__ansiRed",ansiYellow:"page-module___8aEwW__ansiYellow",cardBody:"page-module___8aEwW__cardBody",container:"page-module___8aEwW__container",containerActive:"page-module___8aEwW__containerActive",contextDetails:"page-module___8aEwW__contextDetails",contextItem:"page-module___8aEwW__contextItem",contextList:"page-module___8aEwW__contextList",contextMeta:"page-module___8aEwW__contextMeta",contextTitle:"page-module___8aEwW__contextTitle",dashboardGrid:"page-module___8aEwW__dashboardGrid",envGrid:"page-module___8aEwW__envGrid",envName:"page-module___8aEwW__envName",envRow:"page-module___8aEwW__envRow",envStatus:"page-module___8aEwW__envStatus",footer:"page-module___8aEwW__footer",header:"page-module___8aEwW__header",logoArea:"page-module___8aEwW__logoArea",mainPanel:"page-module___8aEwW__mainPanel",pulse:"page-module___8aEwW__pulse","pulse-attention":"page-module___8aEwW__pulse-attention","pulse-thinking":"page-module___8aEwW__pulse-thinking",pulseDot:"page-module___8aEwW__pulseDot",quickLaunchBtn:"page-module___8aEwW__quickLaunchBtn",sectionTitle:"page-module___8aEwW__sectionTitle",sidePanel:"page-module___8aEwW__sidePanel","state-complete":"page-module___8aEwW__state-complete","state-idle":"page-module___8aEwW__state-idle","state-needs-input":"page-module___8aEwW__state-needs-input","state-thinking":"page-module___8aEwW__state-thinking",statusIndicator:"page-module___8aEwW__statusIndicator",stoppedBadge:"page-module___8aEwW__stoppedBadge",subtitle:"page-module___8aEwW__subtitle",terminalContainer:"page-module___8aEwW__terminalContainer",terminalInput:"page-module___8aEwW__terminalInput",terminalInputArea:"page-module___8aEwW__terminalInputArea",terminalLine:"page-module___8aEwW__terminalLine",terminalSendBtn:"page-module___8aEwW__terminalSendBtn",title:"page-module___8aEwW__title"})},52683,e=>{"use strict";var t=e.i(43476),r=e.i(71645),s=e.i(70703),a=e.i(20897),n=e.i(66381);let l=e=>"mock"===e?"🧪":e.includes("-docker")?"🐳":e.includes("-ssh")?"🌐":"💻",o=(0,s.default)(()=>e.A(33779),{loadableGenerated:{modules:[37314]},ssr:!1,loading:()=>(0,t.jsx)("div",{style:{height:"400px",display:"flex",alignItems:"center",justifyContent:"center",backgroundColor:"#05070a",color:"var(--muted)",border:"1px solid var(--border)",borderBottomLeftRadius:"12px",borderBottomRightRadius:"12px"},children:(0,t.jsx)("span",{children:"Initializing terminal emulator..."})})}),i=(0,s.default)(()=>e.A(39429),{loadableGenerated:{modules:[1985]},ssr:!1,loading:()=>(0,t.jsx)("div",{style:{height:"280px",display:"flex",alignItems:"center",justifyContent:"center",backgroundColor:"var(--card)",border:"1px solid var(--border)",borderRadius:"12px",marginTop:"1.5rem"},children:(0,t.jsx)("span",{style:{color:"var(--muted)"},children:"Initializing prompt editor..."})})}),d=(0,s.default)(()=>e.A(56915),{loadableGenerated:{modules:[99026]},ssr:!1}),c=(0,s.default)(()=>e.A(78716),{loadableGenerated:{modules:[9949]},ssr:!1}),u=(0,s.default)(()=>e.A(33789),{loadableGenerated:{modules:[20032]},ssr:!1}),p=(0,s.default)(()=>e.A(78003),{loadableGenerated:{modules:[97722]},ssr:!1});e.s(["default",0,function(){let[e,s]=(0,r.useState)([]),[m,h]=(0,r.useState)(null),[f,g]=(0,r.useState)(!1),[x,y]=(0,r.useState)(!1),[b,j]=(0,r.useState)(!1),[v,_]=(0,r.useState)(!1),[w,k]=(0,r.useState)(!1),[S,C]=(0,r.useState)(!1),[N,E]=(0,r.useState)(""),[R,L]=(0,r.useState)(3001),[T,W]=(0,r.useState)("0.2.19"),[P,O]=(0,r.useState)(null),I=e.filter(e=>"workspace-terminal"!==e.id),D=e.find(e=>e.id===m),q=I.some(e=>("claude-docker"===e.type||"aider-docker"===e.type)&&"running"===e.status),A=I.some(e=>"claude-ssh"===e.type&&"running"===e.status),z=async()=>{try{let e=await fetch("/api/sessions"),t=await e.json();t.sessions&&s(t.sessions),t.wsPort&&L(t.wsPort),t.originalCwd&&E(t.originalCwd),t.version&&W(t.version)}catch(e){console.error("Failed to fetch sessions:",e)}},B=async()=>{try{let e=await fetch("/api/recents");if(e.ok){let t=await e.json();t.success&&t.recents&&t.recents.lastSession&&O(t.recents.lastSession)}}catch(e){console.error("Failed to fetch recents:",e)}};(0,r.useEffect)(()=>{(async()=>{await z(),await B()})(),"serviceWorker"in navigator&&navigator.serviceWorker.register("/sw.js").then(e=>console.log("Service Worker registered:",e.scope)).catch(e=>console.error("Service Worker registration failed:",e));let e=setInterval(z,4e3);return()=>clearInterval(e)},[]);let $=async(e,t,r,s)=>{g(!0);try{let a=t;a||("claude"===e?a="Claude Local":"claude-docker"===e?a="Claude Docker":"claude-ssh"===e?a="Claude SSH":"aider"===e?a="Aider Local":"aider-docker"===e?a="Aider Docker":"mock"===e&&(a="Mock Session"));let n={type:e,name:a,workspaceRoot:r,scopedDirs:s};if(("aider"===e||"aider-docker"===e)&&!r)try{let e=await fetch("/api/context/aider");if(e.ok){let t=await e.json();t.success&&t.config&&(n.workspaceRoot=t.config.workspaceRoot,n.scopedDirs=t.config.scopedDirs)}}catch(e){console.error("Failed to load aider configuration before launch:",e)}let l=await fetch("/api/sessions/launch",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(n)}),o=await l.json();o.success&&(await z(),h(o.session.id),O({type:e,name:a,workspaceRoot:r,scopedDirs:s}))}catch(e){console.error("Failed to launch session:",e)}finally{g(!1)}},F=async(e,t=!1)=>{try{let r=await fetch("/api/sessions/stop",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({id:e,delete:t})});(await r.json()).success&&(t&&m===e&&h(null),await z())}catch(e){console.error("Failed to stop session:",e)}};return(0,t.jsxs)("div",{className:`${a.default.container} ${D?a.default.containerActive:""}`,children:[(0,t.jsxs)("header",{className:a.default.header,children:[(0,t.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:"1.5rem"},children:[(0,t.jsx)("img",{src:"/logo.png",alt:"NeuralLoom Logo",style:{width:"160px",height:"160px",borderRadius:"16px",objectFit:"contain"}}),(0,t.jsxs)("div",{className:a.default.logoArea,children:[(0,t.jsx)("h1",{className:a.default.title,style:{margin:0,lineHeight:1.1},children:"NeuralLoom"}),(0,t.jsx)("span",{className:a.default.subtitle,children:"Unified AI Orchestrator & Context Bridge"})]})]}),(0,t.jsxs)("div",{className:a.default.statusIndicator,children:[(0,t.jsx)("span",{className:a.default.pulseDot}),(0,t.jsx)("span",{children:"Orchestrator Online"})]})]}),D?(0,t.jsx)("div",{style:{flex:1,minHeight:0,display:"flex",flexDirection:"column"},children:(0,t.jsx)(p,{sessionId:D.id,workspaceRoot:D.workspaceRoot||"",scopedDirs:D.scopedDirs||[],onClose:()=>h(null),sessions:e,onSwitchSession:e=>h(e),onRefreshSessions:z,wsPort:R})}):(0,t.jsxs)("div",{className:a.default.dashboardGrid,children:[(0,t.jsxs)("main",{className:a.default.mainPanel,children:[(0,t.jsxs)("section",{children:[(0,t.jsx)("h2",{className:a.default.sectionTitle,children:"Active AI Agents"}),0===I.length?(0,t.jsxs)("div",{className:"card",style:{padding:"3rem 1.5rem",textAlign:"center"},children:[(0,t.jsx)("p",{style:{color:"var(--muted)",marginBottom:"1.5rem"},children:"No active agent sessions in this workspace. Launch a Claude or Aider agent session to begin."}),(0,t.jsxs)("div",{style:{display:"flex",gap:"1rem",justifyContent:"center",flexWrap:"wrap"},children:[P&&(0,t.jsx)("button",{className:a.default.quickLaunchBtn,onClick:()=>{$(P.type,P.name,P.workspaceRoot,P.scopedDirs)},disabled:f,style:{background:"linear-gradient(135deg, hsl(38, 92%, 50%) 0%, hsl(0, 84%, 60%) 100%)",border:"none",maxWidth:"200px"},title:`Re-launch: ${P.name||P.type}`,children:"⚡ Re-launch Last Session"}),(0,t.jsx)("button",{className:a.default.quickLaunchBtn,onClick:()=>{C(!1),k(!0)},disabled:f,style:{background:"linear-gradient(135deg, hsl(262, 83%, 60%) 0%, hsl(195, 100%, 45%) 100%)",border:"none",maxWidth:"200px"},children:"Launch Claude PTY"}),(0,t.jsx)("button",{className:a.default.quickLaunchBtn,onClick:()=>{_(!1),j(!0)},disabled:f,style:{background:"linear-gradient(135deg, hsl(210, 80%, 45%) 0%, hsl(262, 80%, 55%) 100%)",border:"none",maxWidth:"200px"},children:"Launch Aider PTY"})]}),(0,t.jsxs)("div",{style:{marginTop:"1.5rem",fontSize:"0.75rem",color:"var(--muted)"},children:["Want to verify layout features first?"," ",(0,t.jsx)("span",{onClick:()=>$("mock"),style:{color:"var(--primary)",cursor:"pointer",textDecoration:"underline"},children:"Start simulated sandbox session"})]})]}):(0,t.jsx)("div",{className:a.default.agentGrid,children:I.map(e=>(0,t.jsxs)("div",{className:`${a.default.agentCard} card ${m===e.id?a.default.activeBorder:""}`,children:[(0,t.jsxs)("div",{className:a.default.agentHeader,children:[(0,t.jsx)("span",{className:a.default.agentName,children:e.name}),(0,t.jsxs)("div",{style:{display:"flex",gap:"0.35rem",alignItems:"center"},children:["running"===e.status&&e.agentState&&(0,t.jsxs)("span",{className:`${a.default.agentStateBadge} ${a.default["state-"+e.agentState]}`,children:["thinking"===e.agentState&&`${l(e.type)} 💭 thinking`,"needs-input"===e.agentState&&`${l(e.type)} ⚠️ needs input`,"complete"===e.agentState&&`${l(e.type)} ✅ complete`,"idle"===e.agentState&&`${l(e.type)} 💤 idle`]}),(0,t.jsx)("span",{className:`${a.default.agentBadge} ${"stopped"===e.status?a.default.stoppedBadge:""}`,children:e.status})]})]}),(0,t.jsxs)("div",{className:a.default.cardBody,children:[(0,t.jsxs)("p",{style:{fontSize:"0.825rem",color:"var(--muted)"},children:["ID: ",(0,t.jsx)("code",{style:{fontSize:"0.75rem"},children:e.id.substring(0,8)}),(0,t.jsx)("br",{}),"Type: ","claude"===e.type?"Claude Local PTY":"claude-docker"===e.type?"Claude Docker PTY":"claude-ssh"===e.type?"Claude SSH PTY":"aider"===e.type?"Aider Local PTY":"aider-docker"===e.type?"Aider Docker PTY":"mock"===e.type?"Simulated Mock PTY":"Unknown PTY",(0,t.jsx)("br",{}),"Logs: ",e.logsCount," captured lines"]}),(0,t.jsxs)("div",{style:{display:"flex",gap:"0.5rem",marginTop:"1rem"},children:["running"===e.status?(0,t.jsx)("button",{onClick:()=>F(e.id,!1),style:{flex:1,padding:"0.4rem 0.6rem",borderRadius:"6px",border:"1px solid var(--danger)",backgroundColor:"transparent",fontSize:"0.75rem",fontWeight:600,color:"var(--danger)"},children:"Stop"}):(0,t.jsx)("button",{onClick:()=>F(e.id,!0),style:{flex:1,padding:"0.4rem 0.6rem",borderRadius:"6px",border:"1px solid var(--border)",backgroundColor:"transparent",fontSize:"0.75rem",fontWeight:600,color:"var(--muted)"},children:"Delete"}),(0,t.jsx)("button",{onClick:()=>h(e.id),style:{flex:2,padding:"0.4rem 0.6rem",borderRadius:"6px",border:"none",backgroundColor:m===e.id?"var(--border-focus)":"var(--primary)",fontSize:"0.75rem",fontWeight:600,color:"#fff"},children:m===e.id?"Connected":"Open Session"})]})]})]},e.id))})]}),m&&"workspace-terminal"!==m&&(0,t.jsxs)("section",{className:"card",style:{display:"flex",flexDirection:"column",border:"1px solid var(--border-focus)"},children:[(0,t.jsxs)("div",{className:a.default.agentHeader,style:{justifyContent:"space-between",background:"rgba(109, 40, 217, 0.08)"},children:[(0,t.jsxs)("span",{style:{fontWeight:600,display:"flex",alignItems:"center",gap:"0.5rem"},children:["🖥️ Console Bridge — ",e.find(e=>e.id===m)?.name]}),(0,t.jsxs)("div",{style:{display:"flex",gap:"0.5rem",alignItems:"center"},children:[e.find(e=>e.id===m)?.status==="stopped"&&(0,t.jsx)("button",{onClick:async()=>{try{let e=await fetch("/api/sessions/start",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({id:m})});if(e.ok)await z();else{let t=await e.json();alert(t.error||"Failed to restart session.")}}catch(e){console.error("Failed to restart session:",e),alert("Network error: failed to restart session.")}},style:{padding:"0.2rem 0.5rem",borderRadius:"4px",border:"1px solid #eab308",backgroundColor:"rgba(234, 179, 8, 0.15)",color:"#eab308",fontSize:"0.7rem",fontWeight:600,cursor:"pointer",boxShadow:"0 0 8px rgba(234, 179, 8, 0.2)"},title:"Restart the stopped session process runner",children:"⚡ Restart Session"}),(0,t.jsx)("button",{onClick:()=>h(null),style:{border:"none",background:"none",color:"var(--muted)",cursor:"pointer",fontSize:"0.75rem"},children:"Close Panel ✖"})]})]}),(0,t.jsx)(o,{sessionId:m,wsPort:R})]}),(0,t.jsxs)("section",{children:[(0,t.jsx)("h2",{className:a.default.sectionTitle,children:"Workspace Shell Terminal"}),(0,t.jsxs)("div",{className:"card",style:{display:"flex",flexDirection:"column",border:"1px solid var(--border)",padding:0},children:[(0,t.jsxs)("div",{className:a.default.agentHeader,style:{justifyContent:"space-between",background:"rgba(255, 255, 255, 0.02)"},children:[(0,t.jsxs)("span",{style:{fontWeight:600,display:"flex",alignItems:"center",gap:"0.5rem",fontSize:"0.85rem"},children:["💻 Local Workspace Shell (CWD: ",N||"root",")"]}),(0,t.jsx)("span",{style:{fontSize:"0.7rem",color:"var(--muted)"},children:"Pre-configured environment"})]}),(0,t.jsx)(o,{sessionId:"workspace-terminal",height:"300px",wsPort:R})]})]}),(0,t.jsxs)("section",{style:{marginTop:"2rem"},children:[(0,t.jsx)("h2",{className:a.default.sectionTitle,children:"Shared Context Hub & Slash Commands"}),(0,t.jsxs)("div",{className:a.default.contextList,children:[(0,t.jsxs)("div",{className:`${a.default.contextItem} card`,children:[(0,t.jsxs)("div",{className:a.default.contextMeta,children:[(0,t.jsx)("span",{className:a.default.contextTitle,children:"Staged Context & System Rules (/ccc)"}),(0,t.jsx)("span",{className:a.default.contextDetails,children:"Compiles AGENTS.md guidelines and project files folder hierarchy map."})]}),(0,t.jsx)("button",{onClick:async()=>{m&&await fetch("/api/sessions/inject",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({id:m,command:"/ccc"})})},disabled:!m,style:{padding:"0.4rem 0.8rem",borderRadius:"6px",border:"1px solid var(--primary)",backgroundColor:"transparent",color:"var(--primary)",fontSize:"0.75rem",fontWeight:600,opacity:m?1:.5,cursor:m?"pointer":"not-allowed"},children:"🚀 Mount Context (/ccc)"})]}),(0,t.jsxs)("div",{className:`${a.default.contextItem} card`,children:[(0,t.jsxs)("div",{className:a.default.contextMeta,children:[(0,t.jsx)("span",{className:a.default.contextTitle,children:"Staged Developer Prompt (/ccp)"}),(0,t.jsx)("span",{className:a.default.contextDetails,children:"Executes instructions written in .ai/neural-loom/cprompt.md."})]}),(0,t.jsx)("button",{onClick:async()=>{m&&await fetch("/api/sessions/inject",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({id:m,command:"/ccp"})})},disabled:!m,style:{padding:"0.4rem 0.8rem",borderRadius:"6px",border:"1px solid var(--success)",backgroundColor:"transparent",color:"var(--success)",fontSize:"0.75rem",fontWeight:600,opacity:m?1:.5,cursor:m?"pointer":"not-allowed"},children:"⚡ Trigger Prompt (/ccp)"})]})]}),(0,t.jsx)(i,{})]}),(0,t.jsxs)("section",{style:{marginTop:"2rem"},children:[(0,t.jsx)("h2",{className:a.default.sectionTitle,children:"Built-in Database Explorer & SQL Client"}),(0,t.jsx)("div",{className:"card",style:{padding:0,overflow:"hidden",height:"480px",border:"1px solid var(--border)"},children:(0,t.jsx)(n.default,{workspaceRoot:N||""})})]})]}),(0,t.jsxs)("aside",{className:a.default.sidePanel,children:[(0,t.jsxs)("section",{children:[(0,t.jsx)("h2",{className:a.default.sectionTitle,children:"Execution Environments"}),(0,t.jsxs)("div",{className:a.default.envGrid,children:[(0,t.jsxs)("div",{className:a.default.envRow,children:[(0,t.jsx)("span",{className:a.default.envName,children:"💻 Local host OS"}),(0,t.jsx)("span",{className:a.default.envStatus,style:{color:"var(--success)"},children:"Active"})]}),(0,t.jsxs)("div",{className:a.default.envRow,style:{opacity:q?1:.6},children:[(0,t.jsx)("span",{className:a.default.envName,children:"🐳 Docker Sandbox"}),(0,t.jsx)("span",{className:a.default.envStatus,style:{color:q?"var(--success)":"var(--muted)"},children:q?"Active":"Not Mounted"})]}),(0,t.jsxs)("div",{className:a.default.envRow,style:{opacity:A?1:.6},children:[(0,t.jsx)("span",{className:a.default.envName,children:"🌐 Remote VM (SSH)"}),(0,t.jsx)("span",{className:a.default.envStatus,style:{color:A?"var(--success)":"var(--muted)"},children:A?"Active":"Disconnected"})]})]})]}),(0,t.jsxs)("section",{style:{display:"flex",flexDirection:"column",gap:"0.75rem"},children:[(0,t.jsxs)("button",{className:a.default.quickLaunchBtn,onClick:()=>{C(!1),k(!0)},disabled:f,style:{background:"linear-gradient(135deg, hsl(262, 83%, 60%) 0%, hsl(195, 100%, 45%) 100%)",border:"none"},children:[(0,t.jsx)("span",{children:"🤖"}),(0,t.jsx)("span",{children:"Launch Claude PTY"})]}),(0,t.jsxs)("button",{className:a.default.quickLaunchBtn,onClick:()=>{C(!0),k(!0)},disabled:f,style:{background:"linear-gradient(135deg, hsl(170, 72%, 40%) 0%, hsl(195, 100%, 40%) 100%)",border:"none"},children:[(0,t.jsx)("span",{children:"🐳"}),(0,t.jsx)("span",{children:"Launch Docker PTY"})]}),(0,t.jsxs)("button",{className:a.default.quickLaunchBtn,onClick:()=>y(!0),disabled:f,style:{background:"linear-gradient(135deg, hsl(38, 92%, 50%) 0%, hsl(0, 84%, 60%) 100%)",border:"none"},children:[(0,t.jsx)("span",{children:"🌐"}),(0,t.jsx)("span",{children:"Launch SSH PTY"})]}),(0,t.jsxs)("button",{className:a.default.quickLaunchBtn,onClick:()=>{_(!1),j(!0)},disabled:f,style:{background:"linear-gradient(135deg, hsl(210, 80%, 45%) 0%, hsl(262, 80%, 55%) 100%)",border:"none"},children:[(0,t.jsx)("span",{children:"🐍"}),(0,t.jsx)("span",{children:"Launch Aider PTY"})]}),(0,t.jsxs)("button",{className:a.default.quickLaunchBtn,onClick:()=>{_(!0),j(!0)},disabled:f,style:{background:"linear-gradient(135deg, hsl(195, 100%, 40%) 0%, hsl(262, 80%, 55%) 100%)",border:"none"},children:[(0,t.jsx)("span",{children:"🐳"}),(0,t.jsx)("span",{children:"Launch Aider Docker"})]})]}),(0,t.jsxs)("section",{className:"card",style:{padding:"1.5rem",display:"flex",flexDirection:"column",gap:"0.75rem"},children:[(0,t.jsx)("h3",{style:{fontSize:"1rem",fontWeight:700},children:"Quick Actions"}),(0,t.jsxs)("ul",{style:{listStyle:"none",fontSize:"0.875rem",display:"flex",flexDirection:"column",gap:"0.5rem",color:"var(--muted)"},children:[(0,t.jsxs)("li",{style:{display:"flex",justifyContent:"space-between"},children:[(0,t.jsx)("span",{children:"Configure global API Keys"}),(0,t.jsx)("span",{style:{color:"var(--primary)",cursor:"pointer"},children:"→"})]}),(0,t.jsxs)("li",{style:{display:"flex",justifyContent:"space-between"},children:[(0,t.jsx)("span",{children:"Edit rules templates"}),(0,t.jsx)("span",{style:{color:"var(--primary)",cursor:"pointer"},children:"→"})]}),(0,t.jsxs)("li",{style:{display:"flex",justifyContent:"space-between"},children:[(0,t.jsx)("span",{children:"Inspect process locks"}),(0,t.jsx)("span",{style:{color:"var(--primary)",cursor:"pointer"},children:"→"})]})]}),(0,t.jsxs)("div",{style:{marginTop:"1.2rem",textAlign:"center",fontSize:"0.72rem",color:"var(--muted)"},children:["Need to troubleshoot?"," ",(0,t.jsx)("span",{onClick:()=>$("mock"),style:{color:"var(--primary)",cursor:"pointer",textDecoration:"underline"},children:"Launch simulated playground sandbox"})]})]})]})]}),(0,t.jsxs)("footer",{className:a.default.footer,children:[(0,t.jsxs)("span",{children:["NeuralLoom v",T," — Experimental AI Orchestrator Bridge"]}),(0,t.jsxs)("span",{children:["Directory: ",N||"Loading..."]})]}),x&&(0,t.jsx)(d,{onClose:()=>y(!1),onConfirmLaunch:()=>{y(!1),$("claude-ssh")}}),b&&(0,t.jsx)(c,{onClose:()=>j(!1),isDocker:v,onConfirmLaunch:()=>{j(!1),$(v?"aider-docker":"aider")}}),w&&(0,t.jsx)(u,{onClose:()=>k(!1),isDocker:S,onConfirmLaunch:(e,t,r)=>{k(!1),$(S?"claude-docker":"claude",e,t,r)}})]})}])},33779,e=>{e.v(t=>Promise.all(["static/chunks/03g6xpslyid3~.js","static/chunks/0-vb7c~yrtpon.js","static/chunks/0ga14ztvrhau2.css"].map(t=>e.l(t))).then(()=>t(37314)))},39429,e=>{e.v(t=>Promise.all(["static/chunks/16w4~t4h7gk13.js"].map(t=>e.l(t))).then(()=>t(1985)))},56915,e=>{e.v(t=>Promise.all(["static/chunks/0lnobx4eh3~-_.js"].map(t=>e.l(t))).then(()=>t(99026)))},78716,e=>{e.v(t=>Promise.all(["static/chunks/0k2co3uj4w81_.js"].map(t=>e.l(t))).then(()=>t(9949)))},33789,e=>{e.v(t=>Promise.all(["static/chunks/076_b43_kienv.js"].map(t=>e.l(t))).then(()=>t(20032)))},78003,e=>{e.v(t=>Promise.all(["static/chunks/0gy2rolwxzjl8.js","static/chunks/0-vb7c~yrtpon.js","static/chunks/12m0vh2h637z4.js","static/chunks/0ga14ztvrhau2.css"].map(t=>e.l(t))).then(()=>t(97722)))}]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,{otherChunks:["static/chunks/0ljspdd3cv1ft.js","static/chunks/140ovxvjat1ch.js","static/chunks/07lhk_q6pmm3r.js"],runtimeModuleIds:[94553]}]),(()=>{let e;if(!Array.isArray(globalThis.TURBOPACK))return;let t="/_next/",r=function(){if(null!=self.TURBOPACK_ASSET_SUFFIX)return self.TURBOPACK_ASSET_SUFFIX;let e=document?.currentScript?.getAttribute?.("src")??"",t=e.indexOf("?");return t>=0?e.slice(t):""}(),n=["NEXT_DEPLOYMENT_ID","NEXT_CLIENT_ASSET_SUFFIX"];var o,l=((o=l||{})[o.Runtime=0]="Runtime",o[o.Parent=1]="Parent",o[o.Update=2]="Update",o);let i=new WeakMap;function s(e,t){this.m=e,this.e=t}let u=s.prototype,a=Object.prototype.hasOwnProperty,c="u">typeof Symbol&&Symbol.toStringTag;function f(e,t,r){a.call(e,t)||Object.defineProperty(e,t,r)}function p(e,t){let r=e[t];return r||(r=h(t),e[t]=r),r}function h(e){return{exports:{},error:void 0,id:e,namespaceObject:void 0}}function d(e,t){f(e,"__esModule",{value:!0}),c&&f(e,c,{value:"Module"});let r=0;for(;r<t.length;){let n=t[r++],o=t[r++];if("number"==typeof o)if(0===o)f(e,n,{value:t[r++],enumerable:!0,writable:!1});else throw Error(`unexpected tag: ${o}`);else"function"==typeof t[r]?f(e,n,{get:o,set:t[r++],enumerable:!0}):f(e,n,{get:o,enumerable:!0})}Object.seal(e)}function m(e,t){(null!=t?p(this.c,t):this.m).exports=e}u.s=function(e,t){let r,n;null!=t?n=(r=p(this.c,t)).exports:(r=this.m,n=this.e),r.namespaceObject=n,d(n,e)},u.j=function(e,t){var r,n;let o,l,s;null!=t?l=(o=p(this.c,t)).exports:(o=this.m,l=this.e);let u=(r=o,n=l,(s=i.get(r))||(i.set(r,s=[]),r.exports=r.namespaceObject=new Proxy(n,{get(e,t){if(a.call(e,t)||"default"===t||"__esModule"===t)return Reflect.get(e,t);for(let e of s){let r=Reflect.get(e,t);if(void 0!==r)return r}},ownKeys(e){let t=Reflect.ownKeys(e);for(let e of s)for(let r of Reflect.ownKeys(e))"default"===r||t.includes(r)||t.push(r);return t}})),s);"object"==typeof e&&null!==e&&u.push(e)},u.v=m,u.n=function(e,t){let r;(r=null!=t?p(this.c,t):this.m).exports=r.namespaceObject=e};let b=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,y=[null,b({}),b([]),b(b)];function g(e,t,r){let n=[],o=-1;for(let t=e;("object"==typeof t||"function"==typeof t)&&!y.includes(t);t=b(t))for(let r of Object.getOwnPropertyNames(t))n.push(r,function(e,t){return()=>e[t]}(e,r)),-1===o&&"default"===r&&(o=n.length-1);return r&&o>=0||(o>=0?n.splice(o,1,0,e):n.push("default",0,e)),d(t,n),t}function O(e){let t=B(e,this.m);if(t.namespaceObject)return t.namespaceObject;let r=t.exports;return t.namespaceObject=g(r,"function"==typeof r?function(...e){return r.apply(this,e)}:Object.create(null),r&&r.__esModule)}function w(e){let t=e.indexOf("#");-1!==t&&(e=e.substring(0,t));let r=e.indexOf("?");return -1!==r&&(e=e.substring(0,r)),e}function j(){let e,t;return{promise:new Promise((r,n)=>{t=n,e=r}),resolve:e,reject:t}}u.i=O,u.A=function(e){return this.r(e)(O.bind(this))},u.t="function"==typeof require?require:function(){throw Error("Unexpected use of runtime require")},u.r=function(e){return B(e,this.m).exports},u.f=function(e){function t(t){if(t=w(t),a.call(e,t))return e[t].module();let r=Error(`Cannot find module '${t}'`);throw r.code="MODULE_NOT_FOUND",r}return t.keys=()=>Object.keys(e),t.resolve=t=>{if(t=w(t),a.call(e,t))return e[t].id();let r=Error(`Cannot find module '${t}'`);throw r.code="MODULE_NOT_FOUND",r},t.import=async e=>await t(e),t};let k=Symbol("turbopack queues"),v=Symbol("turbopack exports"),U=Symbol("turbopack error");function C(e){e&&1!==e.status&&(e.status=1,e.forEach(e=>e.queueCount--),e.forEach(e=>e.queueCount--?e.queueCount++:e()))}u.a=function(e,t){let r=this.m,n=t?Object.assign([],{status:-1}):void 0,o=new Set,{resolve:l,reject:i,promise:s}=j(),u=Object.assign(s,{[v]:r.exports,[k]:e=>{n&&e(n),o.forEach(e),u.catch(()=>{})}}),a={get:()=>u,set(e){e!==u&&(u[v]=e)}};Object.defineProperty(r,"exports",a),Object.defineProperty(r,"namespaceObject",a),e(function(e){let t=e.map(e=>{if(null!==e&&"object"==typeof e){if(k in e)return e;if(null!=e&&"object"==typeof e&&"then"in e&&"function"==typeof e.then){let t=Object.assign([],{status:0}),r={[v]:{},[k]:e=>e(t)};return e.then(e=>{r[v]=e,C(t)},e=>{r[U]=e,C(t)}),r}}return{[v]:e,[k]:()=>{}}}),r=()=>t.map(e=>{if(e[U])throw e[U];return e[v]}),{promise:l,resolve:i}=j(),s=Object.assign(()=>i(r),{queueCount:0});function u(e){e!==n&&!o.has(e)&&(o.add(e),e&&0===e.status&&(s.queueCount++,e.push(s)))}return t.map(e=>e[k](u)),s.queueCount?l:r()},function(e){e?i(u[U]=e):l(u[v]),C(n)}),n&&-1===n.status&&(n.status=0)};let P=function(e){let t=new URL(e,"x:/"),r={};for(let e in t)r[e]=t[e];for(let t in r.href=e,r.pathname=e.replace(/[?#].*/,""),r.origin=r.protocol="",r.toString=r.toJSON=(...t)=>e,r)Object.defineProperty(this,t,{enumerable:!0,configurable:!0,value:r[t]})};function R(e,t){throw Error(`Invariant: ${t(e)}`)}P.prototype=URL.prototype,u.U=P,u.z=function(e){throw Error("dynamic usage of require is not supported")},u.g=globalThis;let S=s.prototype,$=new Map;u.M=$;let _=new Map,E=new Map;async function T(e,t,r){let n;if("string"==typeof r)return M(e,t,N(r));let o=r.included||[],l=o.map(e=>!!$.has(e)||_.get(e));if(l.length>0&&l.every(e=>e))return void await Promise.all(l);let i=r.moduleChunks||[],s=i.map(e=>E.get(e)).filter(e=>e);if(s.length>0){if(s.length===i.length)return void await Promise.all(s);let r=new Set;for(let e of i)E.has(e)||r.add(e);for(let n of r){let r=M(e,t,N(n));E.set(n,r),s.push(r)}n=Promise.all(s)}else{for(let o of(n=M(e,t,N(r.path)),i))E.has(o)||E.set(o,n)}for(let e of o)_.has(e)||_.set(e,n);await n}S.l=function(e){return T(l.Parent,this.m.id,e)};let A=Promise.resolve(void 0),x=new WeakMap;function M(t,r,n){let o=e.loadChunkCached(t,n),i=x.get(o);if(void 0===i){let e=x.set.bind(x,o,A);i=o.then(e).catch(e=>{let o;switch(t){case l.Runtime:o=`as a runtime dependency of chunk ${r}`;break;case l.Parent:o=`from module ${r}`;break;case l.Update:o="from an HMR update";break;default:R(t,e=>`Unknown source type: ${e}`)}let i=Error(`Failed to load chunk ${n} ${o}${e?`: ${e}`:""}`,e?{cause:e}:void 0);throw i.name="ChunkLoadError",i}),x.set(o,i)}return i}function N(e){return`${t}${e.split("/").map(e=>encodeURIComponent(e)).join("/")}${r}`}S.L=function(e){return M(l.Parent,this.m.id,e)},S.R=function(e){let t=this.r(e);return t?.default??t},S.P=function(e){return`/ROOT/${e??""}`},S.q=function(e,t){m.call(this,`${e}${r}`,t)},S.b=function(e,t,o,l){let i="SharedWorker"===e.name,s=[o.map(e=>N(e)).reverse(),r];for(let e of n)s.push(globalThis[e]);let u=new URL(N(t),location.origin),a=JSON.stringify(s);return i?u.searchParams.set("params",a):u.hash="#params="+encodeURIComponent(a),new e(u,l?{...l,type:void 0}:void 0)};let q=/\.js(?:\?[^#]*)?(?:#.*)?$/,K=/\.css(?:\?[^#]*)?(?:#.*)?$/;function L(e){return K.test(e)}u.w=function(t,r,n){return e.loadWebAssembly(l.Parent,this.m.id,t,r,n)},u.u=function(t,r){return e.loadWebAssemblyModule(l.Parent,this.m.id,t,r)};let I={};u.c=I;let B=(e,t)=>{let r=I[e];if(r){if(r.error)throw r.error;return r}return W(e,l.Parent,t.id)};function W(e,t,r){let n=$.get(e);if("function"!=typeof n)throw Error(function(e,t,r){let n;switch(t){case 0:n=`as a runtime entry of chunk ${r}`;break;case 1:n=`because it was required from module ${r}`;break;case 2:n="because of an HMR update";break;default:R(t,e=>`Unknown source type: ${e}`)}return`Module ${e} was instantiated ${n}, but the module factory is not available.`}(e,t,r));let o=h(e),l=o.exports;I[e]=o;let i=new s(o,l);try{n(i,o,l)}catch(e){throw o.error=e,e}return o.namespaceObject&&o.exports!==o.namespaceObject&&g(o.exports,o.namespaceObject),o}function F(t){let r,n=function(e){if("string"==typeof e)return e;if(e)return{src:e.getAttribute("src")};if("u">typeof TURBOPACK_NEXT_CHUNK_URLS)return{src:TURBOPACK_NEXT_CHUNK_URLS.pop()};throw Error("chunk path empty but not in a worker")}(t[0]);return 2===t.length?r=t[1]:(r=void 0,!function(e,t){let r=1;for(;r<e.length;){let n,o=r+1;for(;o<e.length&&"function"!=typeof e[o];)o++;if(o===e.length)throw Error("malformed chunk format, expected a factory function");let l=e[o];for(let l=r;l<o;l++){let r=e[l],o=t.get(r);if(o){n=o;break}}let i=n??l,s=!1;for(let n=r;n<o;n++){let r=e[n];t.has(r)||(s||(i===l&&Object.defineProperty(l,"name",{value:"module evaluation"}),s=!0),t.set(r,i))}r=o+1}}(t,$)),e.registerChunk(n,r)}let X=new Map;function D(e){let t=X.get(e);if(!t){let r,n;t={resolved:!1,loadingStarted:!1,promise:new Promise((e,t)=>{r=e,n=t}),resolve:()=>{t.resolved=!0,r()},reject:n},X.set(e,t)}return t}e={async registerChunk(e,r){let n=function(e){if("string"==typeof e)return e;let r=decodeURIComponent(e.src.replace(/[?#].*$/,""));return r.startsWith(t)?r.slice(t.length):r}(e);if(D("string"==typeof e?N(e):e.src).resolve(),null!=r){for(let e of r.otherChunks)D(N("string"==typeof e?e:e.path));if(await Promise.all(r.otherChunks.map(e=>T(l.Runtime,n,e))),r.runtimeModuleIds.length>0)for(let e of r.runtimeModuleIds)!function(e,t){let r=I[t];if(r){if(r.error)throw r.error;return}W(t,l.Runtime,e)}(n,e)}},loadChunkCached:(e,t)=>(function(e,t){let r=D(t);if(r.loadingStarted)return r.promise;if(e===l.Runtime)return r.loadingStarted=!0,L(t)&&r.resolve(),r.promise;if("function"==typeof importScripts)if(L(t));else if(q.test(t))self.TURBOPACK_NEXT_CHUNK_URLS.push(t),importScripts(t);else throw Error(`can't infer type of chunk from URL ${t} in worker`);else{let e=decodeURI(t);if(L(t))if(document.querySelectorAll(`link[rel=stylesheet][href="${t}"],link[rel=stylesheet][href^="${t}?"],link[rel=stylesheet][href="${e}"],link[rel=stylesheet][href^="${e}?"]`).length>0)r.resolve();else{let e=document.createElement("link");e.rel="stylesheet",e.href=t,e.onerror=()=>{r.reject()},e.onload=()=>{r.resolve()},document.head.appendChild(e)}else if(q.test(t)){let n=document.querySelectorAll(`script[src="${t}"],script[src^="${t}?"],script[src="${e}"],script[src^="${e}?"]`);if(n.length>0)for(let e of Array.from(n))e.addEventListener("error",()=>{r.reject()});else{let e=document.createElement("script");e.src=t,e.onerror=()=>{r.reject()},document.head.appendChild(e)}}else throw Error(`can't infer type of chunk from URL ${t}`)}return r.loadingStarted=!0,r.promise})(e,t),async loadWebAssembly(e,t,r,n,o){let l=fetch(N(r)),{instance:i}=await WebAssembly.instantiateStreaming(l,o);return i.exports},async loadWebAssemblyModule(e,t,r,n){let o=fetch(N(r));return await WebAssembly.compileStreaming(o)}};let H=globalThis.TURBOPACK;globalThis.TURBOPACK={push:F},H.forEach(F)})();
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,{otherChunks:["static/chunks/08o_~ynkkb9ph.js","static/chunks/140ovxvjat1ch.js","static/chunks/07lhk_q6pmm3r.js"],runtimeModuleIds:[94553]}]),(()=>{let e;if(!Array.isArray(globalThis.TURBOPACK))return;let t="/_next/",r=function(){if(null!=self.TURBOPACK_ASSET_SUFFIX)return self.TURBOPACK_ASSET_SUFFIX;let e=document?.currentScript?.getAttribute?.("src")??"",t=e.indexOf("?");return t>=0?e.slice(t):""}(),n=["NEXT_DEPLOYMENT_ID","NEXT_CLIENT_ASSET_SUFFIX"];var o,l=((o=l||{})[o.Runtime=0]="Runtime",o[o.Parent=1]="Parent",o[o.Update=2]="Update",o);let i=new WeakMap;function s(e,t){this.m=e,this.e=t}let u=s.prototype,a=Object.prototype.hasOwnProperty,c="u">typeof Symbol&&Symbol.toStringTag;function f(e,t,r){a.call(e,t)||Object.defineProperty(e,t,r)}function p(e,t){let r=e[t];return r||(r=h(t),e[t]=r),r}function h(e){return{exports:{},error:void 0,id:e,namespaceObject:void 0}}function d(e,t){f(e,"__esModule",{value:!0}),c&&f(e,c,{value:"Module"});let r=0;for(;r<t.length;){let n=t[r++],o=t[r++];if("number"==typeof o)if(0===o)f(e,n,{value:t[r++],enumerable:!0,writable:!1});else throw Error(`unexpected tag: ${o}`);else"function"==typeof t[r]?f(e,n,{get:o,set:t[r++],enumerable:!0}):f(e,n,{get:o,enumerable:!0})}Object.seal(e)}function m(e,t){(null!=t?p(this.c,t):this.m).exports=e}u.s=function(e,t){let r,n;null!=t?n=(r=p(this.c,t)).exports:(r=this.m,n=this.e),r.namespaceObject=n,d(n,e)},u.j=function(e,t){var r,n;let o,l,s;null!=t?l=(o=p(this.c,t)).exports:(o=this.m,l=this.e);let u=(r=o,n=l,(s=i.get(r))||(i.set(r,s=[]),r.exports=r.namespaceObject=new Proxy(n,{get(e,t){if(a.call(e,t)||"default"===t||"__esModule"===t)return Reflect.get(e,t);for(let e of s){let r=Reflect.get(e,t);if(void 0!==r)return r}},ownKeys(e){let t=Reflect.ownKeys(e);for(let e of s)for(let r of Reflect.ownKeys(e))"default"===r||t.includes(r)||t.push(r);return t}})),s);"object"==typeof e&&null!==e&&u.push(e)},u.v=m,u.n=function(e,t){let r;(r=null!=t?p(this.c,t):this.m).exports=r.namespaceObject=e};let b=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,y=[null,b({}),b([]),b(b)];function g(e,t,r){let n=[],o=-1;for(let t=e;("object"==typeof t||"function"==typeof t)&&!y.includes(t);t=b(t))for(let r of Object.getOwnPropertyNames(t))n.push(r,function(e,t){return()=>e[t]}(e,r)),-1===o&&"default"===r&&(o=n.length-1);return r&&o>=0||(o>=0?n.splice(o,1,0,e):n.push("default",0,e)),d(t,n),t}function O(e){let t=B(e,this.m);if(t.namespaceObject)return t.namespaceObject;let r=t.exports;return t.namespaceObject=g(r,"function"==typeof r?function(...e){return r.apply(this,e)}:Object.create(null),r&&r.__esModule)}function w(e){let t=e.indexOf("#");-1!==t&&(e=e.substring(0,t));let r=e.indexOf("?");return -1!==r&&(e=e.substring(0,r)),e}function k(){let e,t;return{promise:new Promise((r,n)=>{t=n,e=r}),resolve:e,reject:t}}u.i=O,u.A=function(e){return this.r(e)(O.bind(this))},u.t="function"==typeof require?require:function(){throw Error("Unexpected use of runtime require")},u.r=function(e){return B(e,this.m).exports},u.f=function(e){function t(t){if(t=w(t),a.call(e,t))return e[t].module();let r=Error(`Cannot find module '${t}'`);throw r.code="MODULE_NOT_FOUND",r}return t.keys=()=>Object.keys(e),t.resolve=t=>{if(t=w(t),a.call(e,t))return e[t].id();let r=Error(`Cannot find module '${t}'`);throw r.code="MODULE_NOT_FOUND",r},t.import=async e=>await t(e),t};let j=Symbol("turbopack queues"),v=Symbol("turbopack exports"),U=Symbol("turbopack error");function C(e){e&&1!==e.status&&(e.status=1,e.forEach(e=>e.queueCount--),e.forEach(e=>e.queueCount--?e.queueCount++:e()))}u.a=function(e,t){let r=this.m,n=t?Object.assign([],{status:-1}):void 0,o=new Set,{resolve:l,reject:i,promise:s}=k(),u=Object.assign(s,{[v]:r.exports,[j]:e=>{n&&e(n),o.forEach(e),u.catch(()=>{})}}),a={get:()=>u,set(e){e!==u&&(u[v]=e)}};Object.defineProperty(r,"exports",a),Object.defineProperty(r,"namespaceObject",a),e(function(e){let t=e.map(e=>{if(null!==e&&"object"==typeof e){if(j in e)return e;if(null!=e&&"object"==typeof e&&"then"in e&&"function"==typeof e.then){let t=Object.assign([],{status:0}),r={[v]:{},[j]:e=>e(t)};return e.then(e=>{r[v]=e,C(t)},e=>{r[U]=e,C(t)}),r}}return{[v]:e,[j]:()=>{}}}),r=()=>t.map(e=>{if(e[U])throw e[U];return e[v]}),{promise:l,resolve:i}=k(),s=Object.assign(()=>i(r),{queueCount:0});function u(e){e!==n&&!o.has(e)&&(o.add(e),e&&0===e.status&&(s.queueCount++,e.push(s)))}return t.map(e=>e[j](u)),s.queueCount?l:r()},function(e){e?i(u[U]=e):l(u[v]),C(n)}),n&&-1===n.status&&(n.status=0)};let P=function(e){let t=new URL(e,"x:/"),r={};for(let e in t)r[e]=t[e];for(let t in r.href=e,r.pathname=e.replace(/[?#].*/,""),r.origin=r.protocol="",r.toString=r.toJSON=(...t)=>e,r)Object.defineProperty(this,t,{enumerable:!0,configurable:!0,value:r[t]})};function R(e,t){throw Error(`Invariant: ${t(e)}`)}P.prototype=URL.prototype,u.U=P,u.z=function(e){throw Error("dynamic usage of require is not supported")},u.g=globalThis;let S=s.prototype,$=new Map;u.M=$;let _=new Map,E=new Map;async function T(e,t,r){let n;if("string"==typeof r)return M(e,t,N(r));let o=r.included||[],l=o.map(e=>!!$.has(e)||_.get(e));if(l.length>0&&l.every(e=>e))return void await Promise.all(l);let i=r.moduleChunks||[],s=i.map(e=>E.get(e)).filter(e=>e);if(s.length>0){if(s.length===i.length)return void await Promise.all(s);let r=new Set;for(let e of i)E.has(e)||r.add(e);for(let n of r){let r=M(e,t,N(n));E.set(n,r),s.push(r)}n=Promise.all(s)}else{for(let o of(n=M(e,t,N(r.path)),i))E.has(o)||E.set(o,n)}for(let e of o)_.has(e)||_.set(e,n);await n}S.l=function(e){return T(l.Parent,this.m.id,e)};let A=Promise.resolve(void 0),x=new WeakMap;function M(t,r,n){let o=e.loadChunkCached(t,n),i=x.get(o);if(void 0===i){let e=x.set.bind(x,o,A);i=o.then(e).catch(e=>{let o;switch(t){case l.Runtime:o=`as a runtime dependency of chunk ${r}`;break;case l.Parent:o=`from module ${r}`;break;case l.Update:o="from an HMR update";break;default:R(t,e=>`Unknown source type: ${e}`)}let i=Error(`Failed to load chunk ${n} ${o}${e?`: ${e}`:""}`,e?{cause:e}:void 0);throw i.name="ChunkLoadError",i}),x.set(o,i)}return i}function N(e){return`${t}${e.split("/").map(e=>encodeURIComponent(e)).join("/")}${r}`}S.L=function(e){return M(l.Parent,this.m.id,e)},S.R=function(e){let t=this.r(e);return t?.default??t},S.P=function(e){return`/ROOT/${e??""}`},S.q=function(e,t){m.call(this,`${e}${r}`,t)},S.b=function(e,t,o,l){let i="SharedWorker"===e.name,s=[o.map(e=>N(e)).reverse(),r];for(let e of n)s.push(globalThis[e]);let u=new URL(N(t),location.origin),a=JSON.stringify(s);return i?u.searchParams.set("params",a):u.hash="#params="+encodeURIComponent(a),new e(u,l?{...l,type:void 0}:void 0)};let q=/\.js(?:\?[^#]*)?(?:#.*)?$/,K=/\.css(?:\?[^#]*)?(?:#.*)?$/;function L(e){return K.test(e)}u.w=function(t,r,n){return e.loadWebAssembly(l.Parent,this.m.id,t,r,n)},u.u=function(t,r){return e.loadWebAssemblyModule(l.Parent,this.m.id,t,r)};let I={};u.c=I;let B=(e,t)=>{let r=I[e];if(r){if(r.error)throw r.error;return r}return W(e,l.Parent,t.id)};function W(e,t,r){let n=$.get(e);if("function"!=typeof n)throw Error(function(e,t,r){let n;switch(t){case 0:n=`as a runtime entry of chunk ${r}`;break;case 1:n=`because it was required from module ${r}`;break;case 2:n="because of an HMR update";break;default:R(t,e=>`Unknown source type: ${e}`)}return`Module ${e} was instantiated ${n}, but the module factory is not available.`}(e,t,r));let o=h(e),l=o.exports;I[e]=o;let i=new s(o,l);try{n(i,o,l)}catch(e){throw o.error=e,e}return o.namespaceObject&&o.exports!==o.namespaceObject&&g(o.exports,o.namespaceObject),o}function F(t){let r,n=function(e){if("string"==typeof e)return e;if(e)return{src:e.getAttribute("src")};if("u">typeof TURBOPACK_NEXT_CHUNK_URLS)return{src:TURBOPACK_NEXT_CHUNK_URLS.pop()};throw Error("chunk path empty but not in a worker")}(t[0]);return 2===t.length?r=t[1]:(r=void 0,!function(e,t){let r=1;for(;r<e.length;){let n,o=r+1;for(;o<e.length&&"function"!=typeof e[o];)o++;if(o===e.length)throw Error("malformed chunk format, expected a factory function");let l=e[o];for(let l=r;l<o;l++){let r=e[l],o=t.get(r);if(o){n=o;break}}let i=n??l,s=!1;for(let n=r;n<o;n++){let r=e[n];t.has(r)||(s||(i===l&&Object.defineProperty(l,"name",{value:"module evaluation"}),s=!0),t.set(r,i))}r=o+1}}(t,$)),e.registerChunk(n,r)}let X=new Map;function D(e){let t=X.get(e);if(!t){let r,n;t={resolved:!1,loadingStarted:!1,promise:new Promise((e,t)=>{r=e,n=t}),resolve:()=>{t.resolved=!0,r()},reject:n},X.set(e,t)}return t}e={async registerChunk(e,r){let n=function(e){if("string"==typeof e)return e;let r=decodeURIComponent(e.src.replace(/[?#].*$/,""));return r.startsWith(t)?r.slice(t.length):r}(e);if(D("string"==typeof e?N(e):e.src).resolve(),null!=r){for(let e of r.otherChunks)D(N("string"==typeof e?e:e.path));if(await Promise.all(r.otherChunks.map(e=>T(l.Runtime,n,e))),r.runtimeModuleIds.length>0)for(let e of r.runtimeModuleIds)!function(e,t){let r=I[t];if(r){if(r.error)throw r.error;return}W(t,l.Runtime,e)}(n,e)}},loadChunkCached:(e,t)=>(function(e,t){let r=D(t);if(r.loadingStarted)return r.promise;if(e===l.Runtime)return r.loadingStarted=!0,L(t)&&r.resolve(),r.promise;if("function"==typeof importScripts)if(L(t));else if(q.test(t))self.TURBOPACK_NEXT_CHUNK_URLS.push(t),importScripts(t);else throw Error(`can't infer type of chunk from URL ${t} in worker`);else{let e=decodeURI(t);if(L(t))if(document.querySelectorAll(`link[rel=stylesheet][href="${t}"],link[rel=stylesheet][href^="${t}?"],link[rel=stylesheet][href="${e}"],link[rel=stylesheet][href^="${e}?"]`).length>0)r.resolve();else{let e=document.createElement("link");e.rel="stylesheet",e.href=t,e.onerror=()=>{r.reject()},e.onload=()=>{r.resolve()},document.head.appendChild(e)}else if(q.test(t)){let n=document.querySelectorAll(`script[src="${t}"],script[src^="${t}?"],script[src="${e}"],script[src^="${e}?"]`);if(n.length>0)for(let e of Array.from(n))e.addEventListener("error",()=>{r.reject()});else{let e=document.createElement("script");e.src=t,e.onerror=()=>{r.reject()},document.head.appendChild(e)}}else throw Error(`can't infer type of chunk from URL ${t}`)}return r.loadingStarted=!0,r.promise})(e,t),async loadWebAssembly(e,t,r,n,o){let l=fetch(N(r)),{instance:i}=await WebAssembly.instantiateStreaming(l,o);return i.exports},async loadWebAssemblyModule(e,t,r,n){let o=fetch(N(r));return await WebAssembly.compileStreaming(o)}};let H=globalThis.TURBOPACK;globalThis.TURBOPACK={push:F},H.forEach(F)})();
|
package/.next/trace
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
[{"name":"generate-buildid","duration":288,"timestamp":39971402360,"id":4,"parentId":1,"tags":{},"startTime":1781956244883,"traceId":"8a2e3c5dd9c5b013"},{"name":"load-custom-routes","duration":346,"timestamp":39971402765,"id":5,"parentId":1,"tags":{},"startTime":1781956244883,"traceId":"8a2e3c5dd9c5b013"},{"name":"create-dist-dir","duration":2032,"timestamp":39971403141,"id":6,"parentId":1,"tags":{},"startTime":1781956244883,"traceId":"8a2e3c5dd9c5b013"},{"name":"clean","duration":547,"timestamp":39971406011,"id":7,"parentId":1,"tags":{},"startTime":1781956244886,"traceId":"8a2e3c5dd9c5b013"},{"name":"discover-routes","duration":5794,"timestamp":39971427795,"id":8,"parentId":1,"tags":{},"startTime":1781956244908,"traceId":"8a2e3c5dd9c5b013"},{"name":"create-root-mapping","duration":63,"timestamp":39971433636,"id":9,"parentId":1,"tags":{},"startTime":1781956244914,"traceId":"8a2e3c5dd9c5b013"},{"name":"generate-route-types","duration":17566,"timestamp":39971435113,"id":10,"parentId":1,"tags":{},"startTime":1781956244915,"traceId":"8a2e3c5dd9c5b013"},{"name":"public-dir-conflict-check","duration":85,"timestamp":39971452811,"id":11,"parentId":1,"tags":{},"startTime":1781956244933,"traceId":"8a2e3c5dd9c5b013"},{"name":"generate-routes-manifest","duration":2312,"timestamp":39971452992,"id":12,"parentId":1,"tags":{},"startTime":1781956244933,"traceId":"8a2e3c5dd9c5b013"},{"name":"run-turbopack","duration":2451066,"timestamp":39971462372,"id":14,"parentId":1,"tags":{},"startTime":1781956244943,"traceId":"8a2e3c5dd9c5b013"},{"name":"turbopack-build-events","duration":66,"timestamp":39971747062,"id":15,"parentId":1,"tags":{},"startTime":1781956245227,"traceId":"8a2e3c5dd9c5b013"},{"name":"run-typescript","duration":4323936,"timestamp":39973922331,"id":16,"parentId":1,"tags":{},"startTime":1781956247403,"traceId":"8a2e3c5dd9c5b013"},{"name":"generate-required-server-files","duration":1341,"timestamp":39978247188,"id":18,"parentId":1,"tags":{},"startTime":1781956251727,"traceId":"8a2e3c5dd9c5b013"},{"name":"check-static-error-page","duration":9577,"timestamp":39978402273,"id":20,"parentId":19,"tags":{},"startTime":1781956251882,"traceId":"8a2e3c5dd9c5b013"},{"name":"is-page-static","duration":684505,"timestamp":39978417102,"id":44,"parentId":22,"tags":{},"startTime":1781956251897,"traceId":"8a2e3c5dd9c5b013"},{"name":"check-page","duration":695443,"timestamp":39978406299,"id":22,"parentId":19,"tags":{"page":"/_global-error"},"startTime":1781956251886,"traceId":"8a2e3c5dd9c5b013"},{"name":"is-page-static","duration":833575,"timestamp":39978418915,"id":60,"parentId":38,"tags":{},"startTime":1781956251899,"traceId":"8a2e3c5dd9c5b013"},{"name":"check-page","duration":841789,"timestamp":39978410767,"id":38,"parentId":19,"tags":{"page":"/api/sql/connections"},"startTime":1781956251891,"traceId":"8a2e3c5dd9c5b013"},{"name":"is-page-static","duration":847018,"timestamp":39978417222,"id":46,"parentId":24,"tags":{},"startTime":1781956251897,"traceId":"8a2e3c5dd9c5b013"},{"name":"check-page","duration":857204,"timestamp":39978407091,"id":24,"parentId":19,"tags":{"page":"/api/context/claude"},"startTime":1781956251887,"traceId":"8a2e3c5dd9c5b013"},{"name":"is-page-static","duration":858456,"timestamp":39978418527,"id":55,"parentId":33,"tags":{},"startTime":1781956251899,"traceId":"8a2e3c5dd9c5b013"},{"name":"check-page","duration":867767,"timestamp":39978409272,"id":33,"parentId":19,"tags":{"page":"/api/sessions"},"startTime":1781956251889,"traceId":"8a2e3c5dd9c5b013"},{"name":"is-page-static","duration":862160,"timestamp":39978416836,"id":43,"parentId":21,"tags":{},"startTime":1781956251897,"traceId":"8a2e3c5dd9c5b013"},{"name":"check-page","duration":874621,"timestamp":39978404428,"id":21,"parentId":19,"tags":{"page":"/_not-found"},"startTime":1781956251885,"traceId":"8a2e3c5dd9c5b013"},{"name":"is-page-static","duration":860470,"timestamp":39978423532,"id":64,"parentId":42,"tags":{},"startTime":1781956251904,"traceId":"8a2e3c5dd9c5b013"},{"name":"check-page","duration":872529,"timestamp":39978411526,"id":42,"parentId":19,"tags":{"page":"/"},"startTime":1781956251892,"traceId":"8a2e3c5dd9c5b013"},{"name":"is-page-static","duration":875944,"timestamp":39978417296,"id":47,"parentId":25,"tags":{},"startTime":1781956251897,"traceId":"8a2e3c5dd9c5b013"},{"name":"check-page","duration":885978,"timestamp":39978407322,"id":25,"parentId":19,"tags":{"page":"/api/context"},"startTime":1781956251888,"traceId":"8a2e3c5dd9c5b013"},{"name":"is-page-static","duration":876848,"timestamp":39978417375,"id":48,"parentId":26,"tags":{},"startTime":1781956251898,"traceId":"8a2e3c5dd9c5b013"},{"name":"check-page","duration":886730,"timestamp":39978407550,"id":26,"parentId":19,"tags":{"page":"/api/context/ssh"},"startTime":1781956251888,"traceId":"8a2e3c5dd9c5b013"},{"name":"is-page-static","duration":880695,"timestamp":39978417591,"id":49,"parentId":27,"tags":{},"startTime":1781956251898,"traceId":"8a2e3c5dd9c5b013"},{"name":"check-page","duration":890584,"timestamp":39978407757,"id":27,"parentId":19,"tags":{"page":"/api/files"},"startTime":1781956251888,"traceId":"8a2e3c5dd9c5b013"},{"name":"is-page-static","duration":883160,"timestamp":39978419032,"id":63,"parentId":41,"tags":{},"startTime":1781956251899,"traceId":"8a2e3c5dd9c5b013"},{"name":"check-page","duration":890889,"timestamp":39978411351,"id":41,"parentId":19,"tags":{"page":"/api/sql/schema"},"startTime":1781956251892,"traceId":"8a2e3c5dd9c5b013"},{"name":"is-page-static","duration":885336,"timestamp":39978418465,"id":54,"parentId":32,"tags":{},"startTime":1781956251899,"traceId":"8a2e3c5dd9c5b013"},{"name":"check-page","duration":894814,"timestamp":39978409062,"id":32,"parentId":19,"tags":{"page":"/api/sessions/launch"},"startTime":1781956251889,"traceId":"8a2e3c5dd9c5b013"},{"name":"is-page-static","duration":892964,"timestamp":39978418390,"id":53,"parentId":31,"tags":{},"startTime":1781956251899,"traceId":"8a2e3c5dd9c5b013"},{"name":"check-page","duration":902543,"timestamp":39978408852,"id":31,"parentId":19,"tags":{"page":"/api/sessions/input"},"startTime":1781956251889,"traceId":"8a2e3c5dd9c5b013"},{"name":"is-page-static","duration":893786,"timestamp":39978417772,"id":50,"parentId":28,"tags":{},"startTime":1781956251898,"traceId":"8a2e3c5dd9c5b013"},{"name":"check-page","duration":903602,"timestamp":39978407984,"id":28,"parentId":19,"tags":{"page":"/api/git"},"startTime":1781956251888,"traceId":"8a2e3c5dd9c5b013"},{"name":"is-page-static","duration":893850,"timestamp":39978418235,"id":52,"parentId":30,"tags":{},"startTime":1781956251898,"traceId":"8a2e3c5dd9c5b013"},{"name":"check-page","duration":903520,"timestamp":39978408596,"id":30,"parentId":19,"tags":{"page":"/api/sessions/inject"},"startTime":1781956251889,"traceId":"8a2e3c5dd9c5b013"},{"name":"is-page-static","duration":894503,"timestamp":39978418999,"id":62,"parentId":40,"tags":{},"startTime":1781956251899,"traceId":"8a2e3c5dd9c5b013"},{"name":"check-page","duration":902379,"timestamp":39978411162,"id":40,"parentId":19,"tags":{"page":"/api/sql/query"},"startTime":1781956251891,"traceId":"8a2e3c5dd9c5b013"},{"name":"is-page-static","duration":898476,"timestamp":39978418955,"id":61,"parentId":39,"tags":{},"startTime":1781956251899,"traceId":"8a2e3c5dd9c5b013"},{"name":"check-page","duration":906522,"timestamp":39978410962,"id":39,"parentId":19,"tags":{"page":"/api/sql/mcp"},"startTime":1781956251891,"traceId":"8a2e3c5dd9c5b013"},{"name":"is-page-static","duration":905569,"timestamp":39978418805,"id":58,"parentId":36,"tags":{},"startTime":1781956251899,"traceId":"8a2e3c5dd9c5b013"},{"name":"check-page","duration":914131,"timestamp":39978410310,"id":36,"parentId":19,"tags":{"page":"/api/sessions/stats"},"startTime":1781956251891,"traceId":"8a2e3c5dd9c5b013"},{"name":"is-page-static","duration":907981,"timestamp":39978417889,"id":51,"parentId":29,"tags":{},"startTime":1781956251898,"traceId":"8a2e3c5dd9c5b013"},{"name":"check-page","duration":917619,"timestamp":39978408292,"id":29,"parentId":19,"tags":{"page":"/api/recents"},"startTime":1781956251888,"traceId":"8a2e3c5dd9c5b013"},{"name":"is-page-static","duration":914312,"timestamp":39978418867,"id":59,"parentId":37,"tags":{},"startTime":1781956251899,"traceId":"8a2e3c5dd9c5b013"},{"name":"check-page","duration":922669,"timestamp":39978410553,"id":37,"parentId":19,"tags":{"page":"/api/sessions/stop"},"startTime":1781956251891,"traceId":"8a2e3c5dd9c5b013"},{"name":"is-page-static","duration":915307,"timestamp":39978418730,"id":57,"parentId":35,"tags":{},"startTime":1781956251899,"traceId":"8a2e3c5dd9c5b013"},{"name":"check-page","duration":924196,"timestamp":39978409875,"id":35,"parentId":19,"tags":{"page":"/api/sessions/start"},"startTime":1781956251890,"traceId":"8a2e3c5dd9c5b013"},{"name":"is-page-static","duration":920202,"timestamp":39978417168,"id":45,"parentId":23,"tags":{},"startTime":1781956251897,"traceId":"8a2e3c5dd9c5b013"},{"name":"check-page","duration":930616,"timestamp":39978406797,"id":23,"parentId":19,"tags":{"page":"/api/context/aider"},"startTime":1781956251887,"traceId":"8a2e3c5dd9c5b013"},{"name":"is-page-static","duration":924778,"timestamp":39978418578,"id":56,"parentId":34,"tags":{},"startTime":1781956251899,"traceId":"8a2e3c5dd9c5b013"},{"name":"check-page","duration":933921,"timestamp":39978409480,"id":34,"parentId":19,"tags":{"page":"/api/sessions/scope"},"startTime":1781956251890,"traceId":"8a2e3c5dd9c5b013"},{"name":"static-check","duration":941865,"timestamp":39978401569,"id":19,"parentId":1,"tags":{},"startTime":1781956251882,"traceId":"8a2e3c5dd9c5b013"},{"name":"write-routes-manifest","duration":880,"timestamp":39979344521,"id":66,"parentId":1,"tags":{},"startTime":1781956252825,"traceId":"8a2e3c5dd9c5b013"},{"name":"load-dotenv","duration":41,"timestamp":39979361196,"id":69,"parentId":68,"tags":{},"startTime":1781956252841,"traceId":"8a2e3c5dd9c5b013"},{"name":"run-export-path-map","duration":394,"timestamp":39979366296,"id":70,"parentId":68,"tags":{},"startTime":1781956252846,"traceId":"8a2e3c5dd9c5b013"},{"name":"next-export","duration":672184,"timestamp":39979360237,"id":68,"parentId":1,"tags":{},"startTime":1781956252840,"traceId":"8a2e3c5dd9c5b013"},{"name":"move-exported-app-not-found-","duration":2070,"timestamp":39980034102,"id":71,"parentId":67,"tags":{},"startTime":1781956253514,"traceId":"8a2e3c5dd9c5b013"},{"name":"move-exported-app-global-error-","duration":1444,"timestamp":39980036282,"id":72,"parentId":67,"tags":{},"startTime":1781956253516,"traceId":"8a2e3c5dd9c5b013"},{"name":"static-generation","duration":691034,"timestamp":39979350041,"id":67,"parentId":1,"tags":{},"startTime":1781956252830,"traceId":"8a2e3c5dd9c5b013"},{"name":"write-routes-manifest","duration":797,"timestamp":39980041183,"id":73,"parentId":1,"tags":{},"startTime":1781956253521,"traceId":"8a2e3c5dd9c5b013"},{"name":"print-tree-view","duration":3731,"timestamp":39980057706,"id":74,"parentId":1,"tags":{},"startTime":1781956253538,"traceId":"8a2e3c5dd9c5b013"},{"name":"write-route-bundle-stats","duration":15432,"timestamp":39980061472,"id":75,"parentId":1,"tags":{},"startTime":1781956253542,"traceId":"8a2e3c5dd9c5b013"},{"name":"telemetry-flush","duration":168024,"timestamp":39980076938,"id":76,"parentId":1,"tags":{},"startTime":1781956253557,"traceId":"8a2e3c5dd9c5b013"},{"name":"next-build","duration":8890708,"timestamp":39971354278,"id":1,"tags":{"buildMode":"default","version":"16.2.6","bundler":"turbopack","has-custom-webpack-config":"false","use-build-worker":"true"},"startTime":1781956244834,"traceId":"8a2e3c5dd9c5b013"}]
|
|
1
|
+
[{"name":"generate-buildid","duration":276,"timestamp":42366483408,"id":4,"parentId":1,"tags":{},"startTime":1781958639964,"traceId":"ddc0cdba614495e5"},{"name":"load-custom-routes","duration":343,"timestamp":42366483802,"id":5,"parentId":1,"tags":{},"startTime":1781958639965,"traceId":"ddc0cdba614495e5"},{"name":"create-dist-dir","duration":684,"timestamp":42366484173,"id":6,"parentId":1,"tags":{},"startTime":1781958639965,"traceId":"ddc0cdba614495e5"},{"name":"clean","duration":630,"timestamp":42366487608,"id":7,"parentId":1,"tags":{},"startTime":1781958639968,"traceId":"ddc0cdba614495e5"},{"name":"discover-routes","duration":5764,"timestamp":42366511684,"id":8,"parentId":1,"tags":{},"startTime":1781958639993,"traceId":"ddc0cdba614495e5"},{"name":"create-root-mapping","duration":60,"timestamp":42366517496,"id":9,"parentId":1,"tags":{},"startTime":1781958639998,"traceId":"ddc0cdba614495e5"},{"name":"generate-route-types","duration":17113,"timestamp":42366518868,"id":10,"parentId":1,"tags":{},"startTime":1781958640000,"traceId":"ddc0cdba614495e5"},{"name":"public-dir-conflict-check","duration":101,"timestamp":42366536137,"id":11,"parentId":1,"tags":{},"startTime":1781958640017,"traceId":"ddc0cdba614495e5"},{"name":"generate-routes-manifest","duration":2735,"timestamp":42366536353,"id":12,"parentId":1,"tags":{},"startTime":1781958640017,"traceId":"ddc0cdba614495e5"},{"name":"run-turbopack","duration":2399315,"timestamp":42366546702,"id":14,"parentId":1,"tags":{},"startTime":1781958640028,"traceId":"ddc0cdba614495e5"},{"name":"turbopack-build-events","duration":66,"timestamp":42366855852,"id":15,"parentId":1,"tags":{},"startTime":1781958640337,"traceId":"ddc0cdba614495e5"},{"name":"run-typescript","duration":4604657,"timestamp":42368954689,"id":16,"parentId":1,"tags":{},"startTime":1781958642436,"traceId":"ddc0cdba614495e5"},{"name":"generate-required-server-files","duration":1523,"timestamp":42373560364,"id":18,"parentId":1,"tags":{},"startTime":1781958647041,"traceId":"ddc0cdba614495e5"},{"name":"check-static-error-page","duration":9647,"timestamp":42373723199,"id":20,"parentId":19,"tags":{},"startTime":1781958647204,"traceId":"ddc0cdba614495e5"},{"name":"is-page-static","duration":657768,"timestamp":42373738656,"id":44,"parentId":22,"tags":{},"startTime":1781958647220,"traceId":"ddc0cdba614495e5"},{"name":"check-page","duration":669326,"timestamp":42373727235,"id":22,"parentId":19,"tags":{"page":"/_global-error"},"startTime":1781958647208,"traceId":"ddc0cdba614495e5"},{"name":"is-page-static","duration":778531,"timestamp":42373738870,"id":46,"parentId":24,"tags":{},"startTime":1781958647220,"traceId":"ddc0cdba614495e5"},{"name":"check-page","duration":789493,"timestamp":42373727984,"id":24,"parentId":19,"tags":{"page":"/api/context/claude"},"startTime":1781958647209,"traceId":"ddc0cdba614495e5"},{"name":"is-page-static","duration":795030,"timestamp":42373739735,"id":51,"parentId":29,"tags":{},"startTime":1781958647221,"traceId":"ddc0cdba614495e5"},{"name":"check-page","duration":805620,"timestamp":42373729207,"id":29,"parentId":19,"tags":{"page":"/api/recents"},"startTime":1781958647210,"traceId":"ddc0cdba614495e5"},{"name":"is-page-static","duration":804413,"timestamp":42373738777,"id":45,"parentId":23,"tags":{},"startTime":1781958647220,"traceId":"ddc0cdba614495e5"},{"name":"check-page","duration":815536,"timestamp":42373727713,"id":23,"parentId":19,"tags":{"page":"/api/context/aider"},"startTime":1781958647209,"traceId":"ddc0cdba614495e5"},{"name":"is-page-static","duration":820214,"timestamp":42373739104,"id":47,"parentId":25,"tags":{},"startTime":1781958647220,"traceId":"ddc0cdba614495e5"},{"name":"check-page","duration":831165,"timestamp":42373728210,"id":25,"parentId":19,"tags":{"page":"/api/context"},"startTime":1781958647209,"traceId":"ddc0cdba614495e5"},{"name":"is-page-static","duration":820576,"timestamp":42373739492,"id":49,"parentId":27,"tags":{},"startTime":1781958647220,"traceId":"ddc0cdba614495e5"},{"name":"check-page","duration":831464,"timestamp":42373728656,"id":27,"parentId":19,"tags":{"page":"/api/files"},"startTime":1781958647210,"traceId":"ddc0cdba614495e5"},{"name":"is-page-static","duration":821994,"timestamp":42373738295,"id":43,"parentId":21,"tags":{},"startTime":1781958647219,"traceId":"ddc0cdba614495e5"},{"name":"check-page","duration":835183,"timestamp":42373725331,"id":21,"parentId":19,"tags":{"page":"/_not-found"},"startTime":1781958647206,"traceId":"ddc0cdba614495e5"},{"name":"is-page-static","duration":821934,"timestamp":42373739243,"id":48,"parentId":26,"tags":{},"startTime":1781958647220,"traceId":"ddc0cdba614495e5"},{"name":"check-page","duration":832782,"timestamp":42373728428,"id":26,"parentId":19,"tags":{"page":"/api/context/ssh"},"startTime":1781958647209,"traceId":"ddc0cdba614495e5"},{"name":"is-page-static","duration":823811,"timestamp":42373740564,"id":59,"parentId":37,"tags":{},"startTime":1781958647221,"traceId":"ddc0cdba614495e5"},{"name":"check-page","duration":832998,"timestamp":42373731432,"id":37,"parentId":19,"tags":{"page":"/api/sessions/stop"},"startTime":1781958647212,"traceId":"ddc0cdba614495e5"},{"name":"is-page-static","duration":824280,"timestamp":42373740416,"id":57,"parentId":35,"tags":{},"startTime":1781958647221,"traceId":"ddc0cdba614495e5"},{"name":"check-page","duration":834078,"timestamp":42373730653,"id":35,"parentId":19,"tags":{"page":"/api/sessions/start"},"startTime":1781958647212,"traceId":"ddc0cdba614495e5"},{"name":"is-page-static","duration":838674,"timestamp":42373739940,"id":52,"parentId":30,"tags":{},"startTime":1781958647221,"traceId":"ddc0cdba614495e5"},{"name":"check-page","duration":849224,"timestamp":42373729458,"id":30,"parentId":19,"tags":{"page":"/api/sessions/inject"},"startTime":1781958647210,"traceId":"ddc0cdba614495e5"},{"name":"is-page-static","duration":840418,"timestamp":42373740725,"id":63,"parentId":41,"tags":{},"startTime":1781958647222,"traceId":"ddc0cdba614495e5"},{"name":"check-page","duration":849092,"timestamp":42373732282,"id":41,"parentId":19,"tags":{"page":"/api/sql/schema"},"startTime":1781958647213,"traceId":"ddc0cdba614495e5"},{"name":"is-page-static","duration":842237,"timestamp":42373745220,"id":64,"parentId":42,"tags":{},"startTime":1781958647226,"traceId":"ddc0cdba614495e5"},{"name":"check-page","duration":855047,"timestamp":42373732465,"id":42,"parentId":19,"tags":{"page":"/"},"startTime":1781958647213,"traceId":"ddc0cdba614495e5"},{"name":"is-page-static","duration":847077,"timestamp":42373740691,"id":62,"parentId":40,"tags":{},"startTime":1781958647222,"traceId":"ddc0cdba614495e5"},{"name":"check-page","duration":855700,"timestamp":42373732102,"id":40,"parentId":19,"tags":{"page":"/api/sql/query"},"startTime":1781958647213,"traceId":"ddc0cdba614495e5"},{"name":"is-page-static","duration":850261,"timestamp":42373739625,"id":50,"parentId":28,"tags":{},"startTime":1781958647220,"traceId":"ddc0cdba614495e5"},{"name":"check-page","duration":861009,"timestamp":42373728922,"id":28,"parentId":19,"tags":{"page":"/api/git"},"startTime":1781958647210,"traceId":"ddc0cdba614495e5"},{"name":"is-page-static","duration":853837,"timestamp":42373740609,"id":60,"parentId":38,"tags":{},"startTime":1781958647221,"traceId":"ddc0cdba614495e5"},{"name":"check-page","duration":862818,"timestamp":42373731670,"id":38,"parentId":19,"tags":{"page":"/api/sql/connections"},"startTime":1781958647213,"traceId":"ddc0cdba614495e5"},{"name":"is-page-static","duration":854314,"timestamp":42373740509,"id":58,"parentId":36,"tags":{},"startTime":1781958647221,"traceId":"ddc0cdba614495e5"},{"name":"check-page","duration":863722,"timestamp":42373731160,"id":36,"parentId":19,"tags":{"page":"/api/sessions/stats"},"startTime":1781958647212,"traceId":"ddc0cdba614495e5"},{"name":"is-page-static","duration":858627,"timestamp":42373740655,"id":61,"parentId":39,"tags":{},"startTime":1781958647222,"traceId":"ddc0cdba614495e5"},{"name":"check-page","duration":867433,"timestamp":42373731895,"id":39,"parentId":19,"tags":{"page":"/api/sql/mcp"},"startTime":1781958647213,"traceId":"ddc0cdba614495e5"},{"name":"is-page-static","duration":862206,"timestamp":42373740070,"id":53,"parentId":31,"tags":{},"startTime":1781958647221,"traceId":"ddc0cdba614495e5"},{"name":"check-page","duration":872620,"timestamp":42373729699,"id":31,"parentId":19,"tags":{"page":"/api/sessions/input"},"startTime":1781958647211,"traceId":"ddc0cdba614495e5"},{"name":"is-page-static","duration":866018,"timestamp":42373740249,"id":56,"parentId":34,"tags":{},"startTime":1781958647221,"traceId":"ddc0cdba614495e5"},{"name":"check-page","duration":875970,"timestamp":42373730349,"id":34,"parentId":19,"tags":{"page":"/api/sessions/scope"},"startTime":1781958647211,"traceId":"ddc0cdba614495e5"},{"name":"is-page-static","duration":867618,"timestamp":42373740137,"id":54,"parentId":32,"tags":{},"startTime":1781958647221,"traceId":"ddc0cdba614495e5"},{"name":"check-page","duration":877866,"timestamp":42373729927,"id":32,"parentId":19,"tags":{"page":"/api/sessions/launch"},"startTime":1781958647211,"traceId":"ddc0cdba614495e5"},{"name":"is-page-static","duration":873789,"timestamp":42373740190,"id":55,"parentId":33,"tags":{},"startTime":1781958647221,"traceId":"ddc0cdba614495e5"},{"name":"check-page","duration":883875,"timestamp":42373730147,"id":33,"parentId":19,"tags":{"page":"/api/sessions"},"startTime":1781958647211,"traceId":"ddc0cdba614495e5"},{"name":"static-check","duration":891498,"timestamp":42373722545,"id":19,"parentId":1,"tags":{},"startTime":1781958647203,"traceId":"ddc0cdba614495e5"},{"name":"write-routes-manifest","duration":821,"timestamp":42374615209,"id":66,"parentId":1,"tags":{},"startTime":1781958648096,"traceId":"ddc0cdba614495e5"},{"name":"load-dotenv","duration":42,"timestamp":42374631706,"id":69,"parentId":68,"tags":{},"startTime":1781958648113,"traceId":"ddc0cdba614495e5"},{"name":"run-export-path-map","duration":414,"timestamp":42374636667,"id":70,"parentId":68,"tags":{},"startTime":1781958648118,"traceId":"ddc0cdba614495e5"},{"name":"next-export","duration":711126,"timestamp":42374630842,"id":68,"parentId":1,"tags":{},"startTime":1781958648112,"traceId":"ddc0cdba614495e5"},{"name":"move-exported-app-not-found-","duration":2313,"timestamp":42375343764,"id":71,"parentId":67,"tags":{},"startTime":1781958648825,"traceId":"ddc0cdba614495e5"},{"name":"move-exported-app-global-error-","duration":1480,"timestamp":42375346204,"id":72,"parentId":67,"tags":{},"startTime":1781958648827,"traceId":"ddc0cdba614495e5"},{"name":"static-generation","duration":730383,"timestamp":42374620865,"id":67,"parentId":1,"tags":{},"startTime":1781958648102,"traceId":"ddc0cdba614495e5"},{"name":"write-routes-manifest","duration":1127,"timestamp":42375351409,"id":73,"parentId":1,"tags":{},"startTime":1781958648832,"traceId":"ddc0cdba614495e5"},{"name":"print-tree-view","duration":3105,"timestamp":42375367503,"id":74,"parentId":1,"tags":{},"startTime":1781958648848,"traceId":"ddc0cdba614495e5"},{"name":"write-route-bundle-stats","duration":8830,"timestamp":42375370637,"id":75,"parentId":1,"tags":{},"startTime":1781958648851,"traceId":"ddc0cdba614495e5"},{"name":"telemetry-flush","duration":172002,"timestamp":42375379503,"id":76,"parentId":1,"tags":{},"startTime":1781958648860,"traceId":"ddc0cdba614495e5"},{"name":"next-build","duration":9117199,"timestamp":42366434330,"id":1,"tags":{"buildMode":"default","version":"16.2.6","bundler":"turbopack","has-custom-webpack-config":"false","use-build-worker":"true"},"startTime":1781958639915,"traceId":"ddc0cdba614495e5"}]
|
package/.next/trace-build
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
[{"name":"run-turbopack","duration":
|
|
1
|
+
[{"name":"run-turbopack","duration":2399315,"timestamp":42366546702,"id":14,"parentId":1,"tags":{},"startTime":1781958640028,"traceId":"ddc0cdba614495e5"},{"name":"turbopack-build-events","duration":66,"timestamp":42366855852,"id":15,"parentId":1,"tags":{},"startTime":1781958640337,"traceId":"ddc0cdba614495e5"},{"name":"run-typescript","duration":4604657,"timestamp":42368954689,"id":16,"parentId":1,"tags":{},"startTime":1781958642436,"traceId":"ddc0cdba614495e5"},{"name":"static-check","duration":891498,"timestamp":42373722545,"id":19,"parentId":1,"tags":{},"startTime":1781958647203,"traceId":"ddc0cdba614495e5"},{"name":"static-generation","duration":730383,"timestamp":42374620865,"id":67,"parentId":1,"tags":{},"startTime":1781958648102,"traceId":"ddc0cdba614495e5"},{"name":"telemetry-flush","duration":172002,"timestamp":42375379503,"id":76,"parentId":1,"tags":{},"startTime":1781958648860,"traceId":"ddc0cdba614495e5"},{"name":"next-build","duration":9117199,"timestamp":42366434330,"id":1,"tags":{"buildMode":"default","version":"16.2.6","bundler":"turbopack","has-custom-webpack-config":"false","use-build-worker":"true"},"startTime":1781958639915,"traceId":"ddc0cdba614495e5"}]
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "neural-loom",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.57",
|
|
4
4
|
"bin": {
|
|
5
5
|
"neural-loom": "./bin/cli.js"
|
|
6
6
|
},
|
|
@@ -20,6 +20,7 @@
|
|
|
20
20
|
"lint": "eslint"
|
|
21
21
|
},
|
|
22
22
|
"dependencies": {
|
|
23
|
+
"@monaco-editor/react": "^4.7.0",
|
|
23
24
|
"next": "16.2.6",
|
|
24
25
|
"node-pty": "^1.1.0",
|
|
25
26
|
"react": "19.2.4",
|
package/public/manifest.json
CHANGED
|
@@ -2,7 +2,9 @@
|
|
|
2
2
|
"name": "NeuralLoom",
|
|
3
3
|
"short_name": "NeuralLoom",
|
|
4
4
|
"description": "Unified AI Agent Orchestrator & Context Bridge",
|
|
5
|
+
"id": "neural-loom-pwa",
|
|
5
6
|
"start_url": "/",
|
|
7
|
+
"scope": "/",
|
|
6
8
|
"display": "standalone",
|
|
7
9
|
"orientation": "any",
|
|
8
10
|
"background_color": "#05070a",
|
|
@@ -11,12 +13,14 @@
|
|
|
11
13
|
{
|
|
12
14
|
"src": "/logo.png",
|
|
13
15
|
"sizes": "192x192",
|
|
14
|
-
"type": "image/png"
|
|
16
|
+
"type": "image/png",
|
|
17
|
+
"purpose": "any maskable"
|
|
15
18
|
},
|
|
16
19
|
{
|
|
17
20
|
"src": "/logo.png",
|
|
18
21
|
"sizes": "512x512",
|
|
19
|
-
"type": "image/png"
|
|
22
|
+
"type": "image/png",
|
|
23
|
+
"purpose": "any maskable"
|
|
20
24
|
}
|
|
21
25
|
]
|
|
22
26
|
}
|