hive-am 1.5.0 → 1.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +32 -1
- package/README.md +5 -4
- package/package.json +1 -1
- package/server/dist/connections/format.js +26 -0
- package/server/dist/connections/index.js +2 -0
- package/server/dist/connections/manager.js +3 -3
- package/server/dist/connections/router.js +42 -12
- package/server/dist/connections/secrets.js +1 -1
- package/server/dist/connections/slack.js +488 -0
- package/server/dist/connections/store.js +2 -0
- package/server/dist/db/migrations.js +12 -0
- package/server/dist/db.js +15 -3
- package/server/dist/dispatches.js +126 -0
- package/server/dist/http/routes/orchestration.js +13 -2
- package/server/dist/http/validate.js +22 -2
- package/server/dist/index.js +2 -0
- package/server/dist/instructions.js +1 -1
- package/server/dist/retention.js +4 -2
- package/server/dist/runtime.js +17 -6
- package/server/dist/services/connections.js +18 -3
- package/server/dist/skills/defaults.js +6 -4
- package/server/dist/watch.js +1 -1
- package/server/mcp/dispatch.mjs +48 -5
- package/web/.next/BUILD_ID +1 -1
- package/web/.next/app-build-manifest.json +91 -75
- package/web/.next/app-path-routes-manifest.json +5 -5
- package/web/.next/build-manifest.json +2 -2
- package/web/.next/prerender-manifest.json +61 -61
- package/web/.next/server/app/_not-found/page.js +2 -2
- package/web/.next/server/app/_not-found/page.js.nft.json +1 -1
- package/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/_not-found.html +1 -1
- package/web/.next/server/app/_not-found.rsc +3 -3
- package/web/.next/server/app/agents/[id]/page.js +4 -4
- package/web/.next/server/app/agents/[id]/page.js.nft.json +1 -1
- package/web/.next/server/app/agents/[id]/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/agents/page.js +2 -2
- package/web/.next/server/app/agents/page.js.nft.json +1 -1
- package/web/.next/server/app/agents/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/agents.html +1 -1
- package/web/.next/server/app/agents.rsc +21 -18
- package/web/.next/server/app/chat/page.js +2 -2
- package/web/.next/server/app/chat/page.js.nft.json +1 -1
- package/web/.next/server/app/chat/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/chat.html +1 -1
- package/web/.next/server/app/chat.rsc +4 -4
- package/web/.next/server/app/connections/page.js +2 -2
- package/web/.next/server/app/connections/page.js.nft.json +1 -1
- package/web/.next/server/app/connections/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/connections.html +1 -1
- package/web/.next/server/app/connections.rsc +4 -4
- package/web/.next/server/app/index.html +1 -1
- package/web/.next/server/app/index.rsc +4 -4
- package/web/.next/server/app/page.js +2 -2
- package/web/.next/server/app/page.js.nft.json +1 -1
- package/web/.next/server/app/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/relations/page.js +2 -2
- package/web/.next/server/app/relations/page.js.nft.json +1 -1
- package/web/.next/server/app/relations/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/relations.html +1 -1
- package/web/.next/server/app/relations.rsc +4 -4
- package/web/.next/server/app/resources/[id]/page.js +2 -2
- package/web/.next/server/app/resources/[id]/page.js.nft.json +1 -1
- package/web/.next/server/app/resources/[id]/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/resources/page.js +2 -2
- package/web/.next/server/app/resources/page.js.nft.json +1 -1
- package/web/.next/server/app/resources/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/resources.html +1 -1
- package/web/.next/server/app/resources.rsc +4 -4
- package/web/.next/server/app/schedules/page.js +2 -2
- package/web/.next/server/app/schedules/page.js.nft.json +1 -1
- package/web/.next/server/app/schedules/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/schedules.html +1 -1
- package/web/.next/server/app/schedules.rsc +4 -4
- package/web/.next/server/app/sessions/page.js +2 -2
- package/web/.next/server/app/sessions/page.js.nft.json +1 -1
- package/web/.next/server/app/sessions/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/sessions.html +1 -1
- package/web/.next/server/app/sessions.rsc +4 -4
- package/web/.next/server/app/skills/page.js +2 -2
- package/web/.next/server/app/skills/page.js.nft.json +1 -1
- package/web/.next/server/app/skills/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/skills.html +1 -1
- package/web/.next/server/app/skills.rsc +4 -4
- package/web/.next/server/app/types/page.js +2 -2
- package/web/.next/server/app/types/page.js.nft.json +1 -1
- package/web/.next/server/app/types/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/types.html +1 -1
- package/web/.next/server/app/types.rsc +4 -4
- package/web/.next/server/app-paths-manifest.json +5 -5
- package/web/.next/server/chunks/{505.js → 111.js} +1 -1
- package/web/.next/server/chunks/143.js +1 -1
- package/web/.next/server/chunks/716.js +2 -2
- package/web/.next/server/chunks/741.js +2 -0
- package/web/.next/server/chunks/837.js +1 -0
- package/web/.next/server/chunks/{435.js → 939.js} +3 -3
- package/web/.next/server/chunks/944.js +1 -0
- package/web/.next/server/pages/404.html +1 -1
- package/web/.next/server/pages/500.html +1 -1
- package/web/.next/server/server-reference-manifest.json +1 -1
- package/web/.next/static/chunks/162-68ba190086f5ad39.js +1 -0
- package/web/.next/static/chunks/214-35b88db02113ae02.js +1 -0
- package/web/.next/static/chunks/281-a855bf409ef9eebd.js +1 -0
- package/web/.next/static/chunks/350-bdf6b8994a28f2b4.js +1 -0
- package/web/.next/static/chunks/491-196bcb3dd11bb460.js +1 -0
- package/web/.next/static/chunks/517-8f2db464d10a4624.js +1 -0
- package/web/.next/static/chunks/{586-f7017d585a84738d.js → 586-4f67b823df060b46.js} +1 -1
- package/web/.next/static/chunks/{587-5b511f5f93910180.js → 587-3c53d91a1c4f99d6.js} +1 -1
- package/web/.next/static/chunks/642-dc874c8caf203ee1.js +1 -0
- package/web/.next/static/chunks/771-db19da9b1a24820c.js +1 -0
- package/web/.next/static/chunks/928-09d4a58e977641dc.js +1 -0
- package/web/.next/static/chunks/app/agents/[id]/page-9f191f25a366b26b.js +1 -0
- package/web/.next/static/chunks/app/agents/layout-71dd98d696935e29.js +1 -0
- package/web/.next/static/chunks/app/connections/page-b0ea2eae62cef74e.js +1 -0
- package/web/.next/static/chunks/app/layout-cb5af29b0742c513.js +1 -0
- package/web/.next/static/chunks/app/page-5e547e87de23d9fa.js +1 -0
- package/web/.next/static/chunks/app/resources/[id]/page-1e2afddcb1f04884.js +1 -0
- package/web/.next/static/chunks/app/resources/{page-61cccd8fdcc2f6c8.js → page-195b0af83b8ace0d.js} +1 -1
- package/web/.next/static/chunks/app/sessions/{page-85638705fdc18174.js → page-f5a98ec3eaffd7a6.js} +1 -1
- package/web/.next/static/chunks/app/types/page-c4c2b2217c4667e8.js +1 -0
- package/web/.next/static/css/f5438d03b796884e.css +1 -0
- package/web/.next/trace +30 -30
- package/web/.next/types/routes.d.ts +2 -1
- package/web/.next/types/validator.ts +9 -0
- package/web/.next/server/chunks/274.js +0 -1
- package/web/.next/server/chunks/612.js +0 -1
- package/web/.next/static/chunks/107-77dd87cc2ca4f941.js +0 -1
- package/web/.next/static/chunks/281-30e32d932b8b5a75.js +0 -1
- package/web/.next/static/chunks/350-0fe82e622e7a670f.js +0 -1
- package/web/.next/static/chunks/391-18768499e741112e.js +0 -1
- package/web/.next/static/chunks/517-b3b1c9044d2ef23c.js +0 -1
- package/web/.next/static/chunks/656-f3cc78328603241a.js +0 -1
- package/web/.next/static/chunks/705-ce86175dea00e6a9.js +0 -1
- package/web/.next/static/chunks/app/agents/[id]/page-638e12ba3cb813c3.js +0 -1
- package/web/.next/static/chunks/app/connections/page-06bd2d7d9495126a.js +0 -1
- package/web/.next/static/chunks/app/layout-fad968a635f9a4b3.js +0 -1
- package/web/.next/static/chunks/app/page-0062ebc30322b1ae.js +0 -1
- package/web/.next/static/chunks/app/resources/[id]/page-fc494e85b01e8cb7.js +0 -1
- package/web/.next/static/chunks/app/types/page-8e25f503bdcd72ad.js +0 -1
- package/web/.next/static/css/dfcaa19a8d46e60d.css +0 -1
- /package/web/.next/static/{UDA414PFPu9ZROltNmjbX → gqk-RaeJBRWW1cWGRixT2}/_buildManifest.js +0 -0
- /package/web/.next/static/{UDA414PFPu9ZROltNmjbX → gqk-RaeJBRWW1cWGRixT2}/_ssgManifest.js +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[350],{10969:(e,l,t)=>{t.d(l,{Dm:()=>J,Kt:()=>I,Qh:()=>k,WQ:()=>z,q0:()=>F});var s=t(94799),n=t(34023),o=t(72705),r=t(494),a=t(87454),i=t(66477),c=t(4713),d=t(92720),u=t(38950),m=t(97541),p=t(52687),h=t(19431),x=t(90124),j=t(32219),f=t(58311),b=t(84616),y=t(62716),g=t(55267),v=t(5503),w=t(79278),N=t(79141),T=t(56072),_=t(69654);let k=(0,n.createContext)(null),A=e=>e.replace(/^\/home\/[^/]+/,"~");function z(e){let{text:l,label:t,compact:a=!1}=e,{t:i}=(0,_.s9)();null!=t||(t=i("common.copy"));let[c,d]=(0,n.useState)(!1);return(0,s.jsxs)("button",{type:"button",className:"copybtn ".concat(a?"compact":""),"aria-label":t,title:t,onClick:e=>{var t;e.preventDefault(),e.stopPropagation(),null==(t=navigator.clipboard)||t.writeText(l).then(()=>{d(!0),setTimeout(()=>d(!1),1200)}).catch(()=>void 0)},children:[c?(0,s.jsx)(o.A,{size:13}):(0,s.jsx)(r.A,{size:13}),a?null:c?i("common.copied"):t]})}let S=e=>"string"==typeof e?e:null==e?"":JSON.stringify(e),O=function(e){for(var l=arguments.length,t=Array(l>1?l-1:0),s=1;s<l;s++)t[s-1]=arguments[s];for(let l of t)if((null==e?void 0:e[l])!=null&&""!==e[l])return e[l]};function C(e){let{oldText:l,newText:t}=e;return(0,s.jsxs)("div",{className:"diff",children:[l.split("\n").map((e,l)=>(0,s.jsxs)("div",{className:"del",children:[(0,s.jsx)("b",{children:"−"}),e]},"o"+l)),t.split("\n").map((e,l)=>(0,s.jsxs)("div",{className:"add",children:[(0,s.jsx)("b",{children:"+"}),e]},"n"+l))]})}function W(e){let{rows:l}=e;return(0,s.jsx)("dl",{className:"kv",children:l.filter(e=>{let[,l]=e;return void 0!==l&&""!==l&&null!==l}).map(e=>{let[l,t]=e;return(0,s.jsxs)("div",{children:[(0,s.jsx)("dt",{children:l}),(0,s.jsx)("dd",{children:t})]},l)})})}function F(e){var l,t,n,o,r,N;let k,F=e.input&&"object"==typeof e.input?e.input:{},J=e.name,E=/^mcp__([^_]+(?:_[^_]+)*)__(.+)$/.exec(J),P=(E?E[2]:J).toLowerCase().replace(/[^a-z]/g,""),q="string"==typeof F.code?/tools\.hive\.channel_reply\(\s*\{\s*text\s*:\s*("(?:[^"\\]|\\.)*")/.exec(F.code):null;if(q)try{k=JSON.parse(q[1])}catch(e){}if(P.endsWith("channelreply")||void 0!==k){let e=null!=k?k:S(F.text);return{icon:(0,s.jsx)(a.A,{size:14}),label:(0,_.Tl)("tool.channelReply"),summary:e.replace(/\s+/g," ").slice(0,140),body:(0,s.jsx)("pre",{className:"codebox pre-wrap",children:e})}}let I="string"==typeof F.code?/tools\.hive\.skill_read\(\s*\{\s*name\s*:\s*("(?:[^"\\]|\\.)*")/.exec(F.code):null;if(P.endsWith("skillread")||I){let e=S(F.name);if(I)try{e=JSON.parse(I[1])}catch(e){}return{icon:(0,s.jsx)(i.A,{size:14}),label:(0,_.Tl)("tool.skillRead"),summary:e,body:null}}let $="string"==typeof F.code?/tools\.hive\.channel_send_file\(\s*\{\s*path\s*:\s*("(?:[^"\\]|\\.)*")/.exec(F.code):null;if(P.endsWith("channelsendfile")||$){let e=S(F.path);if($)try{e=JSON.parse($[1])}catch(e){}let l=S(F.caption);return{icon:(0,s.jsx)(c.A,{size:14}),label:(0,_.Tl)("tool.channelSendFile"),summary:e.replace(/^.*[\\/]/,""),body:(0,s.jsx)(W,{rows:[[(0,_.Tl)("tool.k.path"),(0,s.jsx)("span",{className:"mono",children:e},"p")],...l?[[(0,_.Tl)("tool.k.caption"),(0,s.jsx)("span",{children:l},"c")]]:[]]})}}let D="string"==typeof F.code?/tools\.hive\.channel_mute\(\s*\{\s*muted\s*:\s*(true|false)/.exec(F.code):null;if(P.endsWith("channelmute")||D){let e=D?"true"===D[1]:!1!==F.muted;return{icon:e?(0,s.jsx)(d.A,{size:14}):(0,s.jsx)(u.A,{size:14}),label:(0,_.Tl)(e?"tool.channelMute":"tool.channelUnmute"),summary:"",body:null}}if((null==E?void 0:E[1])==="hive"&&"dispatch"===E[2])return{icon:(0,s.jsx)(m.A,{size:14}),label:(0,_.Tl)("tool.delegate"),summary:"".concat(S(F.agent),": ").concat(S(F.task).slice(0,90)),body:(0,s.jsx)(W,{rows:[[(0,_.Tl)("tool.k.subagent"),(0,s.jsx)("b",{children:S(F.agent)},"a")],[(0,_.Tl)("tool.k.task"),(0,s.jsx)("span",{className:"pre-wrap",children:S(F.task)},"t")]]})};if((null==E?void 0:E[1])==="hive")return{icon:(0,s.jsx)(m.A,{size:14}),label:(0,_.Tl)("tool.roster"),summary:"",body:null};if(["bash","shell","executebash","execute","run","runcommand","command"].includes(P)||F.command&&P.includes("bash")){let e=S(O(F,"command","cmd","code","script"));return{icon:(0,s.jsx)(p.A,{size:14}),label:(0,_.Tl)("tool.shell"),kind:"shell",command:e,summary:e,body:(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)("div",{className:"cmdhead",children:[(0,s.jsx)("span",{className:"eyebrow",children:(0,_.Tl)("tool.command")}),(0,s.jsx)(z,{text:e,label:(0,_.Tl)("tool.copyCommand")})]}),(0,s.jsxs)("pre",{className:"cmd",children:[(0,s.jsx)("span",{className:"prompt",children:"$"})," ",e]}),F.description&&(0,s.jsx)("p",{className:"hint",style:{margin:"2px 0 0"},children:S(F.description)}),(0,s.jsx)(W,{rows:[[(0,_.Tl)("tool.k.tool"),(0,s.jsx)("code",{children:J},"n")],[(0,_.Tl)("tool.k.workdir"),F.cwd||F.workdir?(0,s.jsx)("code",{children:A(S(null!=(l=F.cwd)?l:F.workdir))},"c"):""],[(0,_.Tl)("tool.k.timeout"),F.timeout?(0,T.nc)(Number(F.timeout)):""],[(0,_.Tl)("tool.k.background"),F.run_in_background?(0,_.Tl)("common.yes"):""]]})]})}}if(["read","fsread","view","cat"].includes(P)){let e=S(O(F,"file_path","filePath","path","file"));return{icon:(0,s.jsx)(h.A,{size:14}),label:(0,_.Tl)("tool.read"),summary:A(e)||S(F.operations?JSON.stringify(F.operations).slice(0,80):""),body:(0,s.jsx)(W,{rows:[[(0,_.Tl)("tool.k.path"),(0,s.jsx)("code",{children:e},"p")],[(0,_.Tl)("tool.k.offset"),S(null!=(t=F.offset)?t:"")],[(0,_.Tl)("tool.k.limit"),S(null!=(n=F.limit)?n:"")]]})}}if(["write","fswrite","create","writefile"].includes(P)){let e=S(O(F,"file_path","filePath","path")),l=S(O(F,"content","file_text","text"));return{icon:(0,s.jsx)(x.A,{size:14}),label:(0,_.Tl)("tool.write"),summary:(0,_.Tl)("tool.writeSummary",{path:A(e),count:l.split("\n").length}),body:(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(W,{rows:[[(0,_.Tl)("tool.k.path"),(0,s.jsx)("code",{children:e},"p")]]}),(0,s.jsxs)("pre",{className:"codebox",children:[l.slice(0,4e3),l.length>4e3?"\n…":""]})]})}}if(["edit","strreplace","strreplaceeditor","patch","replace"].includes(P)){let e=S(O(F,"file_path","filePath","path"));return{icon:(0,s.jsx)(j.A,{size:14}),label:(0,_.Tl)("tool.edit"),summary:A(e),body:(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(W,{rows:[[(0,_.Tl)("tool.k.path"),(0,s.jsx)("code",{children:e},"p")],[(0,_.Tl)("tool.k.replaceAll"),F.replace_all?(0,_.Tl)("common.yes"):""]]}),(0,s.jsx)(C,{oldText:S(O(F,"old_string","oldString","old_str")),newText:S(O(F,"new_string","newString","new_str"))})]})}}if("multiedit"===P&&Array.isArray(F.edits)){let e=S(F.file_path);return{icon:(0,s.jsx)(j.A,{size:14}),label:(0,_.Tl)("tool.edit"),summary:(0,_.Tl)("tool.editSummary",{path:A(e),count:F.edits.length}),body:(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(W,{rows:[[(0,_.Tl)("tool.k.path"),(0,s.jsx)("code",{children:e},"p")]]}),F.edits.map((e,l)=>(0,s.jsx)(C,{oldText:S(e.old_string),newText:S(e.new_string)},l))]})}}if(["grep","glob","search","find","ls","list","codesearch"].includes(P)){let e=S(O(F,"pattern","query","glob","path"));return{icon:(0,s.jsx)(f.A,{size:14}),label:J.charAt(0).toUpperCase()+J.slice(1),summary:e,body:(0,s.jsx)(W,{rows:Object.entries(F).map(e=>{let[l,t]=e;return[l,(0,s.jsx)("code",{children:S(t)},l)]})})}}if(["webfetch","websearch","fetch","browser"].includes(P)){let e=S(O(F,"url","query"));return{icon:(0,s.jsx)(b.A,{size:14}),label:J,summary:e,body:(0,s.jsx)(W,{rows:Object.entries(F).map(e=>{let[l,t]=e;return[l,(0,s.jsx)("span",{className:"pre-wrap",children:S(t)},l)]})})}}if(["task","agent","subagent"].includes(P))return{icon:(0,s.jsx)(y.A,{size:14}),label:(0,_.Tl)("tool.subagent"),summary:S(O(F,"description","subagent_type")),body:(0,s.jsx)(W,{rows:[[(0,_.Tl)("tool.k.type"),S(null!=(o=F.subagent_type)?o:"")],[(0,_.Tl)("tool.k.description"),S(null!=(r=F.description)?r:"")],[(0,_.Tl)("tool.k.prompt"),(0,s.jsx)("span",{className:"pre-wrap",children:S(null!=(N=F.prompt)?N:"").slice(0,1500)},"p")]]})};if("todowrite"===P&&Array.isArray(F.todos)){let e=F.todos.filter(e=>"completed"===e.status).length;return{icon:(0,s.jsx)(g.A,{size:14}),label:(0,_.Tl)("tool.plan"),summary:(0,_.Tl)("tool.planSummary",{done:e,total:F.todos.length}),body:(0,s.jsx)("ul",{className:"todos",children:F.todos.map((e,l)=>(0,s.jsxs)("li",{"data-s":e.status,children:[(0,s.jsx)("i",{}),S(e.content)]},l))})}}if((null==E?void 0:E[1])==="claude-in-chrome"){let e=S(F.action),l=S(O(F,"url","query","text","ref","value"))||(Array.isArray(F.coordinate)?F.coordinate.join(", "):""),t="navigate"===P||"tabscreatemcp"===P||"tabscontextmcp"===P||"tabsclosemcp"===P,n=(0,_.Tl)("navigate"===P?"tool.chrome.navigate":"tabscreatemcp"===P?"tool.chrome.tabNew":"tabsclosemcp"===P?"tool.chrome.tabClose":P.startsWith("tabs")?"tool.chrome.tabs":"computer"===P?"tool.chrome.act":"readpage"===P||"getpagetext"===P?"tool.chrome.read":"find"===P?"tool.chrome.find":"forminput"===P?"tool.chrome.form":"javascripttool"===P?"tool.chrome.js":"tool.chrome.other");return{icon:t?(0,s.jsx)(b.A,{size:14}):(0,s.jsx)(v.A,{size:14}),label:n,summary:["computer"===P||"javascripttool"===P?e.replace(/_/g," "):"",l].filter(Boolean).join(" \xb7 ").slice(0,140),body:Object.keys(F).some(e=>"tabId"!==e)?(0,s.jsx)(W,{rows:Object.entries(F).filter(e=>{let[l]=e;return"tabId"!==l}).map(e=>{let[l,t]=e;return[l,(0,s.jsx)("span",{className:"pre-wrap",children:S(t)},l)]})}):null}}let M=Object.entries(F);return{icon:(0,s.jsx)(w.A,{size:14}),label:E?"".concat(E[1]," \xb7 ").concat(E[2]):J,summary:M.length?S(M[0][1]).slice(0,100):"",body:M.length?(0,s.jsx)("pre",{className:"codebox",children:JSON.stringify(F,null,2)}):null}}function J(e){var l,t,o,r;let{tool:a,streaming:i}=e,{t:c}=(0,_.s9)(),d=F(a),u=void 0!==a.output,m=!u&&!!i,[,p]=(0,n.useState)(0);(0,n.useEffect)(()=>{if(!m)return;let e=setInterval(()=>p(e=>e+1),500);return()=>clearInterval(e)},[m]);let h=null!=(t=a.durationMs)?t:m&&a.startedAt?Date.now()-a.startedAt:void 0,x=null!=(o=a.output)?o:"",j=x?x.split("\n").length:0,f="shell"===d.kind&&u?null==(l=/(?:^|\n)Exit code:?\s*(-?\d+)/i.exec(x))?void 0:l[1]:void 0,b=(0,n.useContext)(k),[y,g]=(0,n.useState)(!1);return(0,n.useEffect)(()=>{null!==b&&g(b)},[b]),(0,s.jsxs)("details",{className:"fold tool ".concat("shell"===d.kind?"is-shell":""," ").concat(a.error?"err":""," ").concat(m?"running":""),open:y,onToggle:e=>g(e.currentTarget.open),children:[(0,s.jsxs)("summary",{children:[(0,s.jsx)("span",{className:"tico",children:d.icon}),(0,s.jsx)("b",{className:"tlabel",children:d.label}),(0,s.jsxs)("span",{className:"tsum mono",title:null!=(r=d.command)?r:d.summary,children:["shell"===d.kind&&(0,s.jsx)("span",{className:"prompt",children:"$ "}),d.summary]}),(0,s.jsxs)("span",{className:"tmeta",children:[void 0!==f&&"0"!==f&&(0,s.jsx)("span",{className:"tbad",children:c("tool.exit",{code:f})}),a.error&&void 0===f&&(0,s.jsx)("span",{className:"tbad",children:c("tool.failed")}),u&&!a.error&&j>0&&(0,s.jsx)("span",{children:c("tool.lines",{count:j})}),void 0!==h&&(0,s.jsx)("span",{className:m?"live":"",children:(0,T.nc)(h)}),m&&(0,s.jsx)("i",{className:"dot run"})]}),(0,s.jsx)(N.A,{size:14,className:"chev"})]}),(0,s.jsxs)("div",{className:"tbody",children:[d.body,u&&(0,s.jsxs)("div",{className:"tout",children:[(0,s.jsxs)("div",{className:"cmdhead",children:[(0,s.jsx)("span",{className:"eyebrow",children:c("tool.output")}),x&&(0,s.jsx)(z,{text:x,label:c("tool.copyOutput")})]}),(0,s.jsx)("pre",{children:x?x.length>12e3?x.slice(0,12e3)+"\n".concat(c("tool.truncated")):x:c("tool.noOutput")})]})]})]})}let E=["write","fswrite","create","writefile"],P=["edit","strreplace","strreplaceeditor","patch","replace","multiedit"],q=e=>"string"==typeof e&&e?e.split("\n").length:0;function I(e){let{blocks:l}=e,{t}=(0,_.s9)(),n=function(e){let l=new Map;for(let i of e){var t,s,n,o,r,a;if("tool"!==i.type||i.error)continue;let e=i.input&&"object"==typeof i.input?i.input:{},c=(null!=(s=null==(t=/^mcp__.+?__(.+)$/.exec(i.name))?void 0:t[1])?s:i.name).toLowerCase().replace(/[^a-z]/g,""),d=E.includes(c);if(!d&&!P.includes(c))continue;let u=S(O(e,"file_path","filePath","path"));if(!u)continue;let m=Array.isArray(e.edits)?e.edits:[e],p=d?q(O(e,"content","file_text","text")):m.reduce((e,l)=>e+q(O(l,"new_string","newString","new_str")),0),h=d?0:m.reduce((e,l)=>e+q(O(l,"old_string","oldString","old_str")),0),x=l.get(u),j=[...null!=(n=null==x?void 0:x.hunks)?n:[]];if(!d)for(let e of m)j.push({old:S(O(e,"old_string","oldString","old_str")),new:S(O(e,"new_string","newString","new_str"))});l.set(u,{path:u,created:null!=(o=null==x?void 0:x.created)&&o||d,added:(null!=(r=null==x?void 0:x.added)?r:0)+p,removed:(null!=(a=null==x?void 0:x.removed)?a:0)+h,hunks:j,content:d?S(O(e,"content","file_text","text")):null==x?void 0:x.content})}return[...l.values()]}(l);return n.length?(0,s.jsxs)("details",{className:"fold changed",open:n.length<=5,children:[(0,s.jsxs)("summary",{children:[(0,s.jsx)(j.A,{size:14}),t("chat.changedFiles",{count:n.length}),(0,s.jsx)(N.A,{size:14,className:"chev"})]}),(0,s.jsx)("div",{className:"cf-list",children:n.map(e=>(0,s.jsxs)("details",{className:"cf-file",children:[(0,s.jsxs)("summary",{children:[(0,s.jsx)(N.A,{size:12,className:"chev"}),(0,s.jsx)("code",{title:e.path,children:A(e.path)}),(0,s.jsxs)("span",{className:"cf-meta",children:[e.created&&(0,s.jsx)("em",{children:t("chat.fileWritten")}),e.added>0&&(0,s.jsxs)("span",{className:"cf-add",children:["+",e.added]}),e.removed>0&&(0,s.jsxs)("span",{className:"cf-del",children:["−",e.removed]})]})]}),(0,s.jsxs)("div",{className:"cf-body",children:[e.hunks.map((e,l)=>(0,s.jsx)(C,{oldText:e.old,newText:e.new},l)),void 0!==e.content&&0===e.hunks.length&&(0,s.jsxs)("pre",{className:"codebox",children:[e.content.slice(0,6e3),e.content.length>6e3?"\n…":""]})]})]},e.path))})]}):null}}}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[391],{494:(e,a,t)=>{t.d(a,{A:()=>y});let y=(0,t(74955).A)("Copy",[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]])},2432:(e,a,t)=>{t.d(a,{A:()=>y});let y=(0,t(74955).A)("Lock",[["rect",{width:"18",height:"11",x:"3",y:"11",rx:"2",ry:"2",key:"1w4ew1"}],["path",{d:"M7 11V7a5 5 0 0 1 10 0v4",key:"fwvmzm"}]])},3492:(e,a,t)=>{t.d(a,{A:()=>y});let y=(0,t(74955).A)("Heading2",[["path",{d:"M4 12h8",key:"17cfdx"}],["path",{d:"M4 18V6",key:"1rz3zl"}],["path",{d:"M12 18V6",key:"zqpxq5"}],["path",{d:"M21 18h-4c0-4 4-3 4-6 0-1.5-2-2.5-4-1",key:"9jr5yi"}]])},4713:(e,a,t)=>{t.d(a,{A:()=>y});let y=(0,t(74955).A)("Paperclip",[["path",{d:"M13.234 20.252 21 12.3",key:"1cbrk9"}],["path",{d:"m16 6-8.414 8.586a2 2 0 0 0 0 2.828 2 2 0 0 0 2.828 0l8.414-8.586a4 4 0 0 0 0-5.656 4 4 0 0 0-5.656 0l-8.415 8.585a6 6 0 1 0 8.486 8.486",key:"1pkts6"}]])},5503:(e,a,t)=>{t.d(a,{A:()=>y});let y=(0,t(74955).A)("MousePointerClick",[["path",{d:"M14 4.1 12 6",key:"ita8i4"}],["path",{d:"m5.1 8-2.9-.8",key:"1go3kf"}],["path",{d:"m6 12-1.9 2",key:"mnht97"}],["path",{d:"M7.2 2.2 8 5.1",key:"1cfko1"}],["path",{d:"M9.037 9.69a.498.498 0 0 1 .653-.653l11 4.5a.5.5 0 0 1-.074.949l-4.349 1.041a1 1 0 0 0-.74.739l-1.04 4.35a.5.5 0 0 1-.95.074z",key:"s0h3yz"}]])},6673:(e,a,t)=>{t.d(a,{A:()=>y});let y=(0,t(74955).A)("RotateCw",[["path",{d:"M21 12a9 9 0 1 1-9-9c2.52 0 4.93 1 6.74 2.74L21 8",key:"1p45f6"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}]])},7991:(e,a,t)=>{t.d(a,{A:()=>y});let y=(0,t(74955).A)("ExternalLink",[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"M10 14 21 3",key:"gplh6r"}],["path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6",key:"a6xqqp"}]])},19431:(e,a,t)=>{t.d(a,{A:()=>y});let y=(0,t(74955).A)("FileText",[["path",{d:"M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z",key:"1rqfz7"}],["path",{d:"M14 2v4a2 2 0 0 0 2 2h4",key:"tnqrlb"}],["path",{d:"M10 9H8",key:"b1mrlr"}],["path",{d:"M16 13H8",key:"t4e002"}],["path",{d:"M16 17H8",key:"z1uh3a"}]])},20555:(e,a,t)=>{t.d(a,{A:()=>y});let y=(0,t(74955).A)("ListOrdered",[["path",{d:"M10 12h11",key:"6m4ad9"}],["path",{d:"M10 18h11",key:"11hvi2"}],["path",{d:"M10 6h11",key:"c7qv1k"}],["path",{d:"M4 10h2",key:"16xx2s"}],["path",{d:"M4 6h1v4",key:"cnovpq"}],["path",{d:"M6 18H4c0-1 2-2 2-3s-1-1.5-2-1",key:"m9a95d"}]])},26701:(e,a,t)=>{t.d(a,{A:()=>y});let y=(0,t(74955).A)("Users",[["path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2",key:"1yyitq"}],["circle",{cx:"9",cy:"7",r:"4",key:"nufk8"}],["path",{d:"M22 21v-2a4 4 0 0 0-3-3.87",key:"kshegd"}],["path",{d:"M16 3.13a4 4 0 0 1 0 7.75",key:"1da9ce"}]])},29416:(e,a,t)=>{t.d(a,{A:()=>y});let y=(0,t(74955).A)("Server",[["rect",{width:"20",height:"8",x:"2",y:"2",rx:"2",ry:"2",key:"ngkwjq"}],["rect",{width:"20",height:"8",x:"2",y:"14",rx:"2",ry:"2",key:"iecqi9"}],["line",{x1:"6",x2:"6.01",y1:"6",y2:"6",key:"16zg32"}],["line",{x1:"6",x2:"6.01",y1:"18",y2:"18",key:"nzw8ys"}]])},32219:(e,a,t)=>{t.d(a,{A:()=>y});let y=(0,t(74955).A)("FilePen",[["path",{d:"M12.5 22H18a2 2 0 0 0 2-2V7l-5-5H6a2 2 0 0 0-2 2v9.5",key:"1couwa"}],["path",{d:"M14 2v4a2 2 0 0 0 2 2h4",key:"tnqrlb"}],["path",{d:"M13.378 15.626a1 1 0 1 0-3.004-3.004l-5.01 5.012a2 2 0 0 0-.506.854l-.837 2.87a.5.5 0 0 0 .62.62l2.87-.837a2 2 0 0 0 .854-.506z",key:"1y4qbx"}]])},32335:(e,a,t)=>{t.d(a,{A:()=>y});let y=(0,t(74955).A)("LockOpen",[["rect",{width:"18",height:"11",x:"3",y:"11",rx:"2",ry:"2",key:"1w4ew1"}],["path",{d:"M7 11V7a5 5 0 0 1 9.9-1",key:"1mm8w8"}]])},33691:(e,a,t)=>{t.d(a,{A:()=>y});let y=(0,t(74955).A)("UserPlus",[["path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2",key:"1yyitq"}],["circle",{cx:"9",cy:"7",r:"4",key:"nufk8"}],["line",{x1:"19",x2:"19",y1:"8",y2:"14",key:"1bvyxn"}],["line",{x1:"22",x2:"16",y1:"11",y2:"11",key:"1shjgl"}]])},34978:(e,a,t)=>{t.d(a,{A:()=>y});let y=(0,t(74955).A)("Container",[["path",{d:"M22 7.7c0-.6-.4-1.2-.8-1.5l-6.3-3.9a1.72 1.72 0 0 0-1.7 0l-10.3 6c-.5.2-.9.8-.9 1.4v6.6c0 .5.4 1.2.8 1.5l6.3 3.9a1.72 1.72 0 0 0 1.7 0l10.3-6c.5-.3.9-1 .9-1.5Z",key:"1t2lqe"}],["path",{d:"M10 21.9V14L2.1 9.1",key:"o7czzq"}],["path",{d:"m10 14 11.9-6.9",key:"zm5e20"}],["path",{d:"M14 19.8v-8.1",key:"159ecu"}],["path",{d:"M18 17.5V9.4",key:"11uown"}]])},38950:(e,a,t)=>{t.d(a,{A:()=>y});let y=(0,t(74955).A)("Volume2",[["path",{d:"M11 4.702a.705.705 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z",key:"uqj9uw"}],["path",{d:"M16 9a5 5 0 0 1 0 6",key:"1q6k2b"}],["path",{d:"M19.364 18.364a9 9 0 0 0 0-12.728",key:"ijwkga"}]])},47405:(e,a,t)=>{t.d(a,{A:()=>y});let y=(0,t(74955).A)("Play",[["polygon",{points:"6 3 20 12 6 21 6 3",key:"1oa8hb"}]])},52263:(e,a,t)=>{t.d(a,{A:()=>y});let y=(0,t(74955).A)("List",[["path",{d:"M3 12h.01",key:"nlz23k"}],["path",{d:"M3 18h.01",key:"1tta3j"}],["path",{d:"M3 6h.01",key:"1rqtza"}],["path",{d:"M8 12h13",key:"1za7za"}],["path",{d:"M8 18h13",key:"1lx6n3"}],["path",{d:"M8 6h13",key:"ik3vkj"}]])},52687:(e,a,t)=>{t.d(a,{A:()=>y});let y=(0,t(74955).A)("Terminal",[["polyline",{points:"4 17 10 11 4 5",key:"akl6gq"}],["line",{x1:"12",x2:"20",y1:"19",y2:"19",key:"q2wloq"}]])},55267:(e,a,t)=>{t.d(a,{A:()=>y});let y=(0,t(74955).A)("ListChecks",[["path",{d:"m3 17 2 2 4-4",key:"1jhpwq"}],["path",{d:"m3 7 2 2 4-4",key:"1obspn"}],["path",{d:"M13 6h8",key:"15sg57"}],["path",{d:"M13 12h8",key:"h98zly"}],["path",{d:"M13 18h8",key:"oe0vm4"}]])},55712:(e,a,t)=>{t.d(a,{A:()=>y});let y=(0,t(74955).A)("Link2",[["path",{d:"M9 17H7A5 5 0 0 1 7 7h2",key:"8i5ue5"}],["path",{d:"M15 7h2a5 5 0 1 1 0 10h-2",key:"1b9ql8"}],["line",{x1:"8",x2:"16",y1:"12",y2:"12",key:"1jonct"}]])},55838:(e,a,t)=>{t.d(a,{A:()=>y});let y=(0,t(74955).A)("Code",[["polyline",{points:"16 18 22 12 16 6",key:"z7tu5w"}],["polyline",{points:"8 6 2 12 8 18",key:"1eg1df"}]])},62716:(e,a,t)=>{t.d(a,{A:()=>y});let y=(0,t(74955).A)("Bot",[["path",{d:"M12 8V4H8",key:"hb8ula"}],["rect",{width:"16",height:"12",x:"4",y:"8",rx:"2",key:"enze0r"}],["path",{d:"M2 14h2",key:"vft8re"}],["path",{d:"M20 14h2",key:"4cs60a"}],["path",{d:"M15 13v2",key:"1xurst"}],["path",{d:"M9 13v2",key:"rq6x2g"}]])},64883:(e,a,t)=>{t.d(a,{A:()=>y});let y=(0,t(74955).A)("Eraser",[["path",{d:"m7 21-4.3-4.3c-1-1-1-2.5 0-3.4l9.6-9.6c1-1 2.5-1 3.4 0l5.6 5.6c1 1 1 2.5 0 3.4L13 21",key:"182aya"}],["path",{d:"M22 21H7",key:"t4ddhn"}],["path",{d:"m5 11 9 9",key:"1mo9qw"}]])},66477:(e,a,t)=>{t.d(a,{A:()=>y});let y=(0,t(74955).A)("BookOpen",[["path",{d:"M12 7v14",key:"1akyts"}],["path",{d:"M3 18a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h5a4 4 0 0 1 4 4 4 4 0 0 1 4-4h5a1 1 0 0 1 1 1v13a1 1 0 0 1-1 1h-6a3 3 0 0 0-3 3 3 3 0 0 0-3-3z",key:"ruj8y"}]])},66654:(e,a,t)=>{t.d(a,{A:()=>y});let y=(0,t(74955).A)("Pencil",[["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z",key:"1a8usu"}],["path",{d:"m15 5 4 4",key:"1mk7zo"}]])},66826:(e,a,t)=>{t.d(a,{A:()=>y});let y=(0,t(74955).A)("Database",[["ellipse",{cx:"12",cy:"5",rx:"9",ry:"3",key:"msslwz"}],["path",{d:"M3 5V19A9 3 0 0 0 21 19V5",key:"1wlel7"}],["path",{d:"M3 12A9 3 0 0 0 21 12",key:"mv7ke4"}]])},70283:(e,a,t)=>{t.d(a,{A:()=>y});let y=(0,t(74955).A)("SquareTerminal",[["path",{d:"m7 11 2-2-2-2",key:"1lz0vl"}],["path",{d:"M11 13h4",key:"1p7l4v"}],["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",ry:"2",key:"1m3agn"}]])},71529:(e,a,t)=>{t.d(a,{A:()=>y});let y=(0,t(74955).A)("Minus",[["path",{d:"M5 12h14",key:"1ays0h"}]])},73784:(e,a,t)=>{t.d(a,{A:()=>y});let y=(0,t(74955).A)("Boxes",[["path",{d:"M2.97 12.92A2 2 0 0 0 2 14.63v3.24a2 2 0 0 0 .97 1.71l3 1.8a2 2 0 0 0 2.06 0L12 19v-5.5l-5-3-4.03 2.42Z",key:"lc1i9w"}],["path",{d:"m7 16.5-4.74-2.85",key:"1o9zyk"}],["path",{d:"m7 16.5 5-3",key:"va8pkn"}],["path",{d:"M7 16.5v5.17",key:"jnp8gn"}],["path",{d:"M12 13.5V19l3.97 2.38a2 2 0 0 0 2.06 0l3-1.8a2 2 0 0 0 .97-1.71v-3.24a2 2 0 0 0-.97-1.71L17 10.5l-5 3Z",key:"8zsnat"}],["path",{d:"m17 16.5-5-3",key:"8arw3v"}],["path",{d:"m17 16.5 4.74-2.85",key:"8rfmw"}],["path",{d:"M17 16.5v5.17",key:"k6z78m"}],["path",{d:"M7.97 4.42A2 2 0 0 0 7 6.13v4.37l5 3 5-3V6.13a2 2 0 0 0-.97-1.71l-3-1.8a2 2 0 0 0-2.06 0l-3 1.8Z",key:"1xygjf"}],["path",{d:"M12 8 7.26 5.15",key:"1vbdud"}],["path",{d:"m12 8 4.74-2.85",key:"3rx089"}],["path",{d:"M12 13.5V8",key:"1io7kd"}]])},73885:(e,a,t)=>{t.d(a,{A:()=>y});let y=(0,t(74955).A)("PlugZap",[["path",{d:"M6.3 20.3a2.4 2.4 0 0 0 3.4 0L12 18l-6-6-2.3 2.3a2.4 2.4 0 0 0 0 3.4Z",key:"goz73y"}],["path",{d:"m2 22 3-3",key:"19mgm9"}],["path",{d:"M7.5 13.5 10 11",key:"7xgeeb"}],["path",{d:"M10.5 16.5 13 14",key:"10btkg"}],["path",{d:"m18 3-4 4h6l-4 4",key:"16psg9"}]])},77841:(e,a,t)=>{t.d(a,{A:()=>y});let y=(0,t(74955).A)("Settings2",[["path",{d:"M20 7h-9",key:"3s1dr2"}],["path",{d:"M14 17H5",key:"gfn3mx"}],["circle",{cx:"17",cy:"17",r:"3",key:"18b49y"}],["circle",{cx:"7",cy:"7",r:"3",key:"dfmy0x"}]])},79141:(e,a,t)=>{t.d(a,{A:()=>y});let y=(0,t(74955).A)("ChevronRight",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]])},79278:(e,a,t)=>{t.d(a,{A:()=>y});let y=(0,t(74955).A)("Wrench",[["path",{d:"M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.77-3.77a6 6 0 0 1-7.94 7.94l-6.91 6.91a2.12 2.12 0 0 1-3-3l6.91-6.91a6 6 0 0 1 7.94-7.94l-3.76 3.76z",key:"cbrjhi"}]])},83372:(e,a,t)=>{t.d(a,{A:()=>y});let y=(0,t(74955).A)("Square",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}]])},84616:(e,a,t)=>{t.d(a,{A:()=>y});let y=(0,t(74955).A)("Globe",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20",key:"13o1zl"}],["path",{d:"M2 12h20",key:"9i4pu4"}]])},87454:(e,a,t)=>{t.d(a,{A:()=>y});let y=(0,t(74955).A)("MessageSquare",[["path",{d:"M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z",key:"1lielz"}]])},89075:(e,a,t)=>{t.d(a,{A:()=>y});let y=(0,t(74955).A)("RefreshCw",[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]])},90124:(e,a,t)=>{t.d(a,{A:()=>y});let y=(0,t(74955).A)("FilePlus",[["path",{d:"M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z",key:"1rqfz7"}],["path",{d:"M14 2v4a2 2 0 0 0 2 2h4",key:"tnqrlb"}],["path",{d:"M9 15h6",key:"cctwl0"}],["path",{d:"M12 18v-6",key:"17g6i2"}]])},91833:(e,a,t)=>{t.d(a,{A:()=>y});let y=(0,t(74955).A)("Quote",[["path",{d:"M16 3a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2 1 1 0 0 1 1 1v1a2 2 0 0 1-2 2 1 1 0 0 0-1 1v2a1 1 0 0 0 1 1 6 6 0 0 0 6-6V5a2 2 0 0 0-2-2z",key:"rib7q0"}],["path",{d:"M5 3a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2 1 1 0 0 1 1 1v1a2 2 0 0 1-2 2 1 1 0 0 0-1 1v2a1 1 0 0 0 1 1 6 6 0 0 0 6-6V5a2 2 0 0 0-2-2z",key:"1ymkrd"}]])},92720:(e,a,t)=>{t.d(a,{A:()=>y});let y=(0,t(74955).A)("VolumeX",[["path",{d:"M11 4.702a.705.705 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z",key:"uqj9uw"}],["line",{x1:"22",x2:"16",y1:"9",y2:"15",key:"1ewh16"}],["line",{x1:"16",x2:"22",y1:"9",y2:"15",key:"5ykzw1"}]])},92947:(e,a,t)=>{t.d(a,{A:()=>y});let y=(0,t(74955).A)("Plus",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]])},97356:(e,a,t)=>{t.d(a,{A:()=>y});let y=(0,t(74955).A)("Trash2",[["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M19 6v14c0 1-1 2-2 2H7c-1 0-2-1-2-2V6",key:"4alrt4"}],["path",{d:"M8 6V4c0-1 1-2 2-2h4c1 0 2 1 2 2v2",key:"v07s0e"}],["line",{x1:"10",x2:"10",y1:"11",y2:"17",key:"1uufr5"}],["line",{x1:"14",x2:"14",y1:"11",y2:"17",key:"xtxkd"}]])},97541:(e,a,t)=>{t.d(a,{A:()=>y});let y=(0,t(74955).A)("Waypoints",[["circle",{cx:"12",cy:"4.5",r:"2.5",key:"r5ysbb"}],["path",{d:"m10.2 6.3-3.9 3.9",key:"1nzqf6"}],["circle",{cx:"4.5",cy:"12",r:"2.5",key:"jydg6v"}],["path",{d:"M7 12h10",key:"b7w52i"}],["circle",{cx:"19.5",cy:"12",r:"2.5",key:"1piiel"}],["path",{d:"m13.8 17.7 3.9-3.9",key:"1wyg1y"}],["circle",{cx:"12",cy:"19.5",r:"2.5",key:"13o1pw"}]])},98148:(e,a,t)=>{t.d(a,{A:()=>y});let y=(0,t(74955).A)("Bold",[["path",{d:"M6 12h9a4 4 0 0 1 0 8H7a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1h7a4 4 0 0 1 0 8",key:"mg9rjx"}]])},98392:(e,a,t)=>{t.d(a,{A:()=>y});let y=(0,t(74955).A)("ArrowDownToLine",[["path",{d:"M12 17V3",key:"1cwfxf"}],["path",{d:"m6 11 6 6 6-6",key:"12ii2o"}],["path",{d:"M19 21H5",key:"150jfl"}]])},98938:(e,a,t)=>{t.d(a,{A:()=>y});let y=(0,t(74955).A)("CodeXml",[["path",{d:"m18 16 4-4-4-4",key:"1inbqp"}],["path",{d:"m6 8-4 4 4 4",key:"15zrgr"}],["path",{d:"m14.5 4-5 16",key:"e7oirm"}]])},99579:(e,a,t)=>{t.d(a,{A:()=>y});let y=(0,t(74955).A)("Italic",[["line",{x1:"19",x2:"10",y1:"4",y2:"4",key:"15jd3p"}],["line",{x1:"14",x2:"5",y1:"20",y2:"20",key:"bu0au3"}],["line",{x1:"15",x2:"9",y1:"4",y2:"20",key:"uljnxc"}]])}}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[517],{1517:(e,n,l)=>{l.d(n,{bC:()=>f,pU:()=>h,tJ:()=>p});var s=l(94799),r=l(34023),t=l(43624),i=l(10804),o=l(5300),a=l(48538),c=l(73506),d=l(3749),m=l(47890),u=l(69654);let p="default-objects",h="default-databases";function f(e){var n,l;let{onClose:f,onCreated:v,presetTypeId:b,presetColonyId:g,presetObjectId:j,manager:x=!1}=e,{t:k}=(0,u.s9)(),{types:y,agents:w,refresh:_,colonies:C,objects:N}=(0,a.q5)(),A=(0,i.dj)(),D=(0,t.useRouter)(),[S,E]=(0,r.useState)(b||x?"form":"type"),[q,z]=(0,r.useState)(()=>{var e;let n={...(0,o.WU)(y.find(e=>e.id===b)),colony_id:null!=g?g:null,object_ids:j?[j]:[]},l=(null==(e=N.find(e=>e.id===j))?void 0:e.kind)==="database"?h:p;return x?{...n,description:k(l===h?"obj.manager.description.db":"obj.manager.description"),permission:"acceptEdits",skill_ids:[...new Set([...n.skill_ids,l])],skill_loads:{...n.skill_loads,[l]:"always"}}:n}),[F,L]=(0,r.useState)(()=>JSON.stringify(q)),M=e=>{z(e),L(JSON.stringify(e)),E("form")},O=(0,r.useRef)(!1),T=JSON.stringify(q)!==F;(0,c.h)(T&&!O.current);let[P,R]=(0,r.useState)(!1),[U,K]=(0,r.useState)(!1),[H,B]=(0,r.useState)(!1),I=(0,o.tf)(q,w,void 0,C),W=async()=>{if(B(!0),!Object.keys(I).length){K(!0);try{let{object_ids:e,...n}=q,l=await d.FH.post("/agents",n);e.length&&await d.FH.put("/agents/".concat(l.id,"/resources"),{object_ids:e}).catch(e=>A(e instanceof Error?e.message:"","err")),await _(["agents","colonies","objects"]),A(k("newAgent.created",{name:l.name})),O.current=!0,null==v||v(l.id),f(),D.push("/agents/".concat(l.id))}catch(e){A(e instanceof Error?e.message:k("newAgent.failed"),"err"),K(!1)}}};return"type"===S?(0,s.jsx)(i._s,{title:k("newAgent.title"),subtitle:k("newAgent.pickType"),onClose:f,children:(0,s.jsxs)("div",{className:"col gap-m",children:[y.map(e=>(0,s.jsxs)("button",{className:"card card-pad row gap-l cx-typecard",onClick:()=>{M({...(0,o.WU)(e),colony_id:null!=g?g:null,object_ids:j?[j]:[]})},children:[(0,s.jsx)(i._h,{color:m.xq[e.provider].color,queen:"orchestrator"===e.role,label:e.name.slice(0,2).toUpperCase()}),(0,s.jsxs)("div",{className:"grow",children:[(0,s.jsx)("b",{className:"cx-pick-title",children:e.name}),(0,s.jsx)("div",{className:"muted small",children:e.description||k("newAgent.typeFallback",{role:k("role.".concat(e.role)),provider:m.xq[e.provider].label})})]}),(0,s.jsx)("span",{className:"chip",children:m.xq[e.provider].short})]},e.id)),(0,s.jsxs)("button",{className:"card card-pad row gap-l cx-typecard blank",onClick:()=>{M({...(0,o.WU)(),colony_id:null!=g?g:null,object_ids:j?[j]:[]})},children:[(0,s.jsx)(i._h,{color:"var(--muted)",label:"+"}),(0,s.jsxs)("div",{className:"grow",children:[(0,s.jsx)("b",{className:"cx-pick-title",children:k("newAgent.blank")}),(0,s.jsx)("div",{className:"muted small",children:k("newAgent.blankHint")})]})]})]})},"type"):(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(i._s,{title:k("newAgent.title"),subtitle:x?k("obj.manager.subtitle"):q.type_id?k("newAgent.fromType",{name:null!=(l=null==(n=y.find(e=>e.id===q.type_id))?void 0:n.name)?l:""}):k("newAgent.blank"),onClose:()=>{!T||O.current?f():R(!0)},footer:(0,s.jsxs)(s.Fragment,{children:[!b&&!x&&(0,s.jsx)("button",{className:"btn ghost",onClick:()=>E("type"),children:k("common.back")}),(0,s.jsx)("button",{className:"btn primary",disabled:U,onClick:W,children:U?k("newAgent.creating"):k("newAgent.create")})]}),children:(0,s.jsx)(o.SU,{draft:q,onChange:z,errors:H?I:{},focusName:!0})},"form"),P&&(0,s.jsx)(i.TM,{danger:!0,title:k("fa.unsaved.title"),body:k("fa.unsaved.body"),confirmLabel:k("fa.unsaved.discard"),cancelLabel:k("fa.unsaved.keep"),onClose:()=>R(!1),onConfirm:f})]})}},5300:(e,n,l)=>{l.d(n,{SU:()=>j,TN:()=>v,WU:()=>f,tf:()=>g});var s=l(94799),r=l(34023),t=l(12646),i=l(69654),o=l(56072),a=l(10804),c=l(48538),d=l(22214),m=l(47890),u=l(28941),p=l(7708),h=l(52974);let f=e=>{var n,l,s,r,t,i,o,a,c,d;return{name:"",description:null!=(n=null==e?void 0:e.description)?n:"",role:null!=(l=null==e?void 0:e.role)?l:"worker",provider:null!=(s=null==e?void 0:e.provider)?s:"claude",model:null!=(r=null==e?void 0:e.model)?r:"",effort:null!=(t=null==e?void 0:e.effort)?t:"",system_prompt:null!=(i=null==e?void 0:e.system_prompt)?i:"",permission:null!=(o=null==e?void 0:e.permission)?o:"acceptEdits",cwd:"",skill_ids:null!=(a=null==e?void 0:e.skill_ids)?a:[],skill_loads:null!=(c=null==e?void 0:e.skill_loads)?c:{},worker_ids:[],type_id:null!=(d=null==e?void 0:e.id)?d:null,colony_id:null,overrides:[],browser:!1,object_ids:[]}},v=function(e){var n;let l=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];return{name:e.name,description:e.description,role:e.role,provider:e.provider,model:e.model,effort:null!=(n=e.effort)?n:"",system_prompt:e.system_prompt,permission:e.permission,cwd:e.cwd,skill_ids:e.skill_ids,skill_loads:e.skill_loads,worker_ids:e.worker_ids,type_id:e.type_id,colony_id:e.colony_id,overrides:e.overrides,browser:e.browser,object_ids:l}},b=(e,n,l)=>!!n&&n.inherit[l]&&!e.overrides.includes(l);function g(e,n,l){let s=arguments.length>3&&void 0!==arguments[3]?arguments[3]:[],r={};e.name.trim()?n.some(n=>n.id!==l&&n.name.toLowerCase()===e.name.trim().toLowerCase())&&(r.name=(0,i.Tl)("form.err.nameTaken")):r.name=(0,i.Tl)("form.err.name");let t=s.find(n=>n.id===e.colony_id);return e.cwd.trim()||b(e,t,"cwd")&&(null==t?void 0:t.cwd)||(r.cwd=(0,i.Tl)("form.err.folder")),r}function j(e){var n;let{draft:l,onChange:f,errors:v,selfId:g,showType:j=!0,focusName:k=!1}=e,{t:y}=(0,i.s9)(),{skills:w,providers:_,agents:C,types:N,colonies:A,connections:D,objects:S}=(0,c.q5)(),E=(0,r.useMemo)(()=>S.filter(e=>h.Gn.includes(e.kind)).map(e=>{var n,l,s,r;return{id:e.id,label:e.name,hint:e.manager_id&&e.manager_id!==g?y("form.resources.taken",{name:null!=(s=null==(n=C.find(n=>n.id===e.manager_id))?void 0:n.name)?s:""}):null!=(r=null==(l=A.find(n=>n.id===e.colony_id))?void 0:l.name)?r:y("common.noColony")}}),[S,C,A,g,y]),q=(0,r.useMemo)(()=>D.filter(e=>e.agent_id===g&&e.enabled),[D,g]),z=A.find(e=>e.id===l.colony_id),F=e=>b(l,z,e),L=(e,n)=>f({...l,overrides:n?l.overrides.filter(n=>n!==e):[...new Set([...l.overrides,e])]}),M=(e,n)=>f({...l,[e]:n}),O=(0,r.useMemo)(()=>C.filter(e=>e.id!==g&&"worker"===e.role),[C,g]),T=N.find(e=>e.id===l.type_id);return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(a.D0,{label:y("form.name"),error:v.name,hint:y("form.name.hint"),children:(0,s.jsx)("input",{className:"input",value:l.name,onChange:e=>M("name",e.target.value),placeholder:y("form.name.placeholder"),"data-autofocus":k?"":void 0})}),(0,s.jsx)(a.D0,{label:y("form.purpose"),hint:y("form.purpose.hint"),children:(0,s.jsx)("input",{className:"input",value:l.description,onChange:e=>M("description",e.target.value),placeholder:y("form.purpose.placeholder")})}),(0,s.jsxs)(a.D0,{label:y("form.role"),children:[(0,s.jsx)(a.$q,{value:l.role,onChange:e=>M("role",e),options:[{id:"worker",label:y("role.worker")},{id:"orchestrator",label:y("role.orchestrator")}]}),(0,s.jsx)("span",{className:"hint",children:"orchestrator"===l.role?y("form.role.orchestratorHint"):y("form.role.workerHint")})]}),j&&T&&(0,s.jsx)("p",{className:"hint m0",children:y("form.basedOn",{name:T.name})}),(0,s.jsx)(a.D0,{label:y("form.colony"),hint:y("form.colony.hint"),children:(0,s.jsxs)("select",{className:"select",value:null!=(n=l.colony_id)?n:"",onChange:e=>f({...l,colony_id:e.target.value||null,overrides:[]}),children:[(0,s.jsx)("option",{value:"",children:y("common.noColony")}),A.map(e=>(0,s.jsx)("option",{value:e.id,children:e.name},e.id))]})}),(0,s.jsx)(a.D0,{label:y("form.provider"),children:(0,s.jsx)(a.YO,{value:l.provider,onChange:e=>f({...l,provider:e,model:"",effort:"",browser:"claude"===e&&l.browser}),providers:_})}),(0,s.jsx)(a.CD,{provider:l.provider,value:l.model,onChange:e=>M("model",e)}),(0,s.jsx)(a.xA,{provider:l.provider,model:l.model,value:l.effort,onChange:e=>M("effort",e)}),"claude"===l.provider&&(0,s.jsx)(p.Tl,{checked:l.browser,onChange:e=>M("browser",e),label:y("form.browser"),hint:y("form.browser.hint")}),z&&z.inherit.permission&&(0,s.jsx)(x,{colony:z,on:F("permission"),onChange:e=>L("permission",e),label:y("inherit.permissions"),value:(0,m.Ck)(z.permission)}),!F("permission")&&(0,s.jsx)(a.en,{value:l.permission,onChange:e=>M("permission",e),locked:q.length?["plan"]:[]}),q.length>0&&(0,s.jsxs)("p",{className:"hint m0",children:[(0,s.jsxs)("b",{children:[y("form.connections"),":"]})," ",y("form.connections.hint",{names:q.map(e=>e.name).join(", ")})]}),z&&z.inherit.cwd&&z.cwd&&(0,s.jsx)(x,{colony:z,on:F("cwd"),onChange:e=>L("cwd",e),label:y("field.folder"),value:(0,m._1)(z.cwd),mono:!0}),!(F("cwd")&&(null==z?void 0:z.cwd))&&(0,s.jsx)(a.dR,{value:l.cwd,onChange:e=>M("cwd",e),error:v.cwd}),z&&z.inherit.prompt&&z.system_prompt.trim()&&(0,s.jsx)(x,{colony:z,on:F("prompt"),onChange:e=>L("prompt",e),label:y("inherit.context"),value:"".concat(z.system_prompt.trim().slice(0,90)).concat(z.system_prompt.trim().length>90?"…":""),note:y("inherit.context.note")}),(0,s.jsx)(a.D0,{label:F("prompt")||(null==z?void 0:z.system_prompt)?y("form.ownPrompt"):y("form.systemPrompt"),hint:y("form.promptHint",{count:l.system_prompt.length,n:(0,o._E)(l.system_prompt.length)}),children:(0,s.jsx)(t.n,{value:l.system_prompt,onChange:e=>M("system_prompt",e),placeholder:y("form.prompt.placeholder"),defaultView:"write",minHeight:220})}),z&&z.inherit.skills&&z.skill_ids.length>0&&(0,s.jsx)(x,{colony:z,on:F("skills"),onChange:e=>L("skills",e),label:y("inherit.skills"),value:z.skill_ids.map(e=>{var n;return null==(n=w.find(n=>n.id===e))?void 0:n.name}).filter(Boolean).join(", "),note:y("inherit.skills.note")}),(0,s.jsx)(a.D0,{label:y("form.skills"),hint:y("form.skills.hint"),children:(0,s.jsx)(a.kV,{skills:w,value:l.skill_ids,loads:l.skill_loads,onChange:(e,n)=>f({...l,skill_ids:e,skill_loads:n})})}),E.length>0&&(0,s.jsx)(a.D0,{label:y("form.resources"),hint:y("form.resources.hint"),children:(0,s.jsx)(u.c,{multi:!0,options:E,value:l.object_ids,onChange:e=>f({...l,object_ids:e}),placeholder:y("form.resources.placeholder"),empty:y("form.resources.empty"),ariaLabel:y("form.resources")})}),"orchestrator"===l.role&&(0,s.jsx)(a.D0,{label:y("form.team"),hint:y("form.team.hint"),children:O.length?(0,s.jsx)(d.C,{items:O.map(e=>({id:e.id,name:e.name,note:e.description||e.provider})),value:l.worker_ids,onChange:e=>M("worker_ids",e)}):(0,s.jsx)("p",{className:"hint",children:y("form.team.empty")})})]})}function x(e){let{colony:n,on:l,onChange:r,label:t,value:o,note:a,mono:c}=e,{t:d}=(0,i.s9)();return(0,s.jsxs)("label",{className:"inherit-row ".concat(l?"on":""),children:[(0,s.jsx)("input",{type:"checkbox",checked:l,onChange:e=>r(e.target.checked)}),(0,s.jsxs)("span",{className:"grow",children:[(0,s.jsxs)("b",{children:[t," ",(0,s.jsx)("span",{className:"muted fw-500",children:d("inherit.from")})," ",(0,s.jsx)("i",{className:"cdot",style:{background:n.color||"var(--honey)"}}),n.name]}),(0,s.jsx)("span",{className:"inh-val ".concat(c?"mono":""),children:o||"—"}),a&&(0,s.jsx)("span",{className:"hint",children:a})]}),(0,s.jsx)("span",{className:"inh-state",children:d(l?"inherit.following":"inherit.own")})]})}},12646:(e,n,l)=>{l.d(n,{n:()=>_});var s=l(94799),r=l(34023),t=l(6458),i=l(53983),o=l(3492),a=l(98148),c=l(99579),d=l(55838),m=l(98938),u=l(52263),p=l(20555),h=l(91833),f=l(55712),v=l(71529),b=l(69654);function g(e,n,l,s){let r=arguments.length>4&&void 0!==arguments[4]?arguments[4]:s,t=arguments.length>5&&void 0!==arguments[5]?arguments[5]:"",i=e.slice(n,l)||t;return e.slice(n-s.length,n)===s&&e.slice(l,l+r.length)===r&&n!==l?{value:e.slice(0,n-s.length)+i+e.slice(l+r.length),start:n-s.length,end:l-s.length}:{value:e.slice(0,n)+s+i+r+e.slice(l),start:n+s.length,end:n+s.length+i.length}}function j(e,n,l,s,r){let t=e.lastIndexOf("\n",n-1)+1,i=e.indexOf("\n",l),o=-1===i?e.length:i,a=e.slice(t,o).split("\n"),c=a.every(e=>r.test(e)),d=a.map((e,n)=>c?e.replace(r,""):s(n)+e.replace(r,"")).join("\n");return{value:e.slice(0,t)+d+e.slice(o),start:t,end:t+d.length}}let x=/^\s*[-*+] (\[[ x]\] )?/,k=/^\s*\d+\. /,y=/^#{1,6} /,w=/^> ?/;function _(e){let{value:n,onChange:l,placeholder:_,defaultView:C="split",minHeight:N=340,fill:A=!1}=e,{t:D}=(0,b.s9)(),S=(0,r.useRef)(null),[E,q]=(0,r.useState)(C),z=e=>{let n=S.current;if(!n)return;let s=e(n.value,n.selectionStart,n.selectionEnd);l(s.value),requestAnimationFrame(()=>{n.focus(),n.setSelectionRange(s.start,s.end)})},F=[{id:"h",icon:(0,s.jsx)(o.A,{size:15}),label:D("md.heading"),run:()=>z((e,n,l)=>j(e,n,l,()=>"## ",y))},{id:"b",icon:(0,s.jsx)(a.A,{size:15}),label:D("md.bold"),keys:"B",run:()=>z((e,n,l)=>g(e,n,l,"**","**",D("md.boldPh")))},{id:"i",icon:(0,s.jsx)(c.A,{size:15}),label:D("md.italic"),keys:"I",run:()=>z((e,n,l)=>g(e,n,l,"*","*",D("md.italicPh")))},{id:"c",icon:(0,s.jsx)(d.A,{size:15}),label:D("md.code"),run:()=>z((e,n,l)=>g(e,n,l,"`","`","code"))},{id:"cb",icon:(0,s.jsx)(m.A,{size:15}),label:D("md.codeBlock"),run:()=>z((e,n,l)=>g(e,n,l,"\n```\n","\n```\n","code"))},{id:"ul",icon:(0,s.jsx)(u.A,{size:15}),label:D("md.bullets"),run:()=>z((e,n,l)=>j(e,n,l,()=>"- ",x))},{id:"ol",icon:(0,s.jsx)(p.A,{size:15}),label:D("md.numbered"),run:()=>z((e,n,l)=>j(e,n,l,e=>"".concat(e+1,". "),k))},{id:"q",icon:(0,s.jsx)(h.A,{size:15}),label:D("md.quote"),run:()=>z((e,n,l)=>j(e,n,l,()=>"> ",w))},{id:"l",icon:(0,s.jsx)(f.A,{size:15}),label:D("md.link"),keys:"K",run:()=>z((e,n,l)=>{let s=e.slice(n,l)||D("md.linkPh"),r="[".concat(s,"](https://)");return{value:e.slice(0,n)+r+e.slice(l),start:n+s.length+3,end:n+s.length+11}})},{id:"hr",icon:(0,s.jsx)(v.A,{size:15}),label:D("md.rule"),run:()=>z((e,n,l)=>({value:e.slice(0,n)+"\n\n---\n\n"+e.slice(l),start:n+7,end:n+7}))}],L=n.trim()?n.trim().split(/\s+/).length:0;return(0,s.jsxs)("div",{className:"mde".concat(A?" fill":""),children:[(0,s.jsxs)("div",{className:"mde-bar",role:"toolbar","aria-label":D("md.toolbar"),children:[F.map(e=>(0,s.jsx)("button",{type:"button",className:"mde-btn",title:e.keys?"".concat(e.label," (Ctrl+").concat(e.keys,")"):e.label,"aria-label":e.label,onMouseDown:e=>e.preventDefault(),onClick:e.run,disabled:"preview"===E,children:e.icon},e.id)),(0,s.jsx)("span",{className:"grow"}),(0,s.jsx)("div",{className:"mde-views",role:"group",children:["write","split","preview"].map(e=>(0,s.jsx)("button",{type:"button",className:E===e?"on":"","aria-pressed":E===e,onClick:()=>q(e),children:D("md.view.".concat(e))},e))})]}),(0,s.jsxs)("div",{className:"mde-body v-".concat(E),style:{minHeight:N},children:["preview"!==E&&(0,s.jsx)("textarea",{ref:S,className:"mde-text mono",style:{minHeight:N},value:n,onChange:e=>l(e.target.value),onKeyDown:e=>{let n=e.currentTarget;if(e.ctrlKey||e.metaKey){let n=F.find(n=>n.keys&&n.keys.toLowerCase()===e.key.toLowerCase());if(n){e.preventDefault(),n.run();return}}if("Tab"===e.key){e.preventDefault(),z((n,l,s)=>{if(l===s&&!e.shiftKey)return{value:n.slice(0,l)+" "+n.slice(s),start:l+2,end:l+2};let r=n.lastIndexOf("\n",l-1)+1,t=n.indexOf("\n",s),i=-1===t?n.length:t,o=n.slice(r,i).split("\n").map(n=>e.shiftKey?n.replace(/^ {1,2}/,""):" "+n).join("\n");return{value:n.slice(0,r)+o+n.slice(i),start:r,end:r+o.length}});return}if("Enter"===e.key&&!e.shiftKey&&n.selectionStart===n.selectionEnd){let s=n.value,r=n.selectionStart,t=s.lastIndexOf("\n",r-1)+1,i=s.slice(t,r),o=/^(\s*)([-*+] (?:\[[ x]\] )?|(\d+)\. )(.*)$/.exec(i);if(!o)return;if(e.preventDefault(),!o[4]){l(s.slice(0,t)+s.slice(r)),requestAnimationFrame(()=>n.setSelectionRange(t,t));return}let a=o[3]?"".concat(o[1]).concat(Number(o[3])+1,". "):o[1]+o[2].replace("[x]","[ ]");l(s.slice(0,r)+"\n"+a+s.slice(r)),requestAnimationFrame(()=>{let e=r+1+a.length;n.setSelectionRange(e,e)})}},placeholder:_,spellCheck:!1}),"write"!==E&&(0,s.jsx)("div",{className:"mde-prev md",children:(0,s.jsx)(t.oz,{remarkPlugins:[i.A],children:n||D("skills.previewEmpty")})})]}),(0,s.jsxs)("div",{className:"mde-foot muted",children:[D("md.stats",{words:L,chars:n.length})," \xb7 ",D("md.tips")]})]})}},22214:(e,n,l)=>{l.d(n,{C:()=>t});var s=l(94799),r=l(72705);function t(e){let{items:n,value:l,onChange:t}=e;return(0,s.jsx)("div",{className:"skillpick",children:n.map(e=>{let n=l.includes(e.id);return(0,s.jsxs)("button",{type:"button",className:"skillrow","aria-pressed":n,onClick:()=>t(n?l.filter(n=>n!==e.id):[...l,e.id]),children:[(0,s.jsx)("span",{className:"check",children:n&&(0,s.jsx)(r.A,{size:13,strokeWidth:3})}),(0,s.jsxs)("span",{children:[(0,s.jsx)("b",{className:"fw-600",children:e.name}),(0,s.jsx)("span",{className:"hint hint-block",children:e.note})]})]},e.id)})})}},28941:(e,n,l)=>{l.d(n,{c:()=>a});var s=l(94799),r=l(34023),t=l(70665),i=l(21018),o=l(48539);function a(e){let{options:n,value:l,onChange:a,multi:c=!1,inline:d=!1,placeholder:m,empty:u,ariaLabel:p,autoFocus:h=!1}=e,[f,v]=(0,r.useState)(""),[b,g]=(0,r.useState)(!1),[j,x]=(0,r.useState)(0),k=(0,r.useRef)(null),y=(0,r.useRef)(null);(0,i.s)(b,k,()=>g(!1));let w=l.map(e=>n.find(n=>n.id===e)).filter(e=>!!e),_=(0,r.useMemo)(()=>{let e=f.trim().toLowerCase();return n.filter(n=>{var s;return!l.includes(n.id)&&(!e||"".concat(n.label," ").concat(null!=(s=n.hint)?s:"").toLowerCase().includes(e))}).slice(0,50)},[n,l,f]);(0,r.useEffect)(()=>{x(0)},[f,b]);let C=e=>{var n;a(c?[...l,e.id]:[e.id]),v(""),g(c),c&&(null==(n=y.current)||n.focus())},N=e=>{a(l.filter(n=>n!==e)),requestAnimationFrame(()=>{var e;return null==(e=y.current)?void 0:e.focus()})},A=!c&&w.length>0,D=b&&!A&&(_.length>0||!!u),S=(0,o.B)(D,j,_.length);return(0,s.jsxs)("div",{className:"sg ps ".concat(d?"ps-inline":""),ref:k,children:[(0,s.jsxs)("div",{className:"ps-box input ".concat(b?"open":""),onClick:()=>{if(!A){var e;g(!0),null==(e=y.current)||e.focus()}},children:[w.map(e=>(0,s.jsxs)("span",{className:"chip ps-chip",children:[e.label,(0,s.jsx)("button",{type:"button",onClick:n=>{n.stopPropagation(),N(e.id)},"aria-label":"\xd7 ".concat(e.label),children:(0,s.jsx)(t.A,{size:12})})]},e.id)),!A&&(0,s.jsx)("input",{ref:y,className:"ps-input",value:f,placeholder:w.length?"":m,"aria-label":p,autoComplete:"off",spellCheck:!1,autoFocus:h,...S.input,onFocus:()=>g(!0),onChange:e=>{v(e.target.value),g(!0)},onKeyDown:e=>{"ArrowDown"===e.key?(e.preventDefault(),g(!0),x(e=>Math.min(_.length-1,e+1))):"ArrowUp"===e.key?(e.preventDefault(),x(e=>Math.max(0,e-1))):"Enter"===e.key&&b&&_[j]?(e.preventDefault(),C(_[j])):"Escape"===e.key&&b?(e.stopPropagation(),g(!1)):"Backspace"===e.key&&!f&&w.length&&N(w[w.length-1].id)}})]}),D&&(0,s.jsxs)("ul",{className:"sg-list",...S.listProps,children:[0===_.length&&(0,s.jsx)("li",{className:"sg-empty",children:u}),_.map((e,n)=>(0,s.jsx)("li",{...S.optionProps(n),children:(0,s.jsxs)("button",{type:"button",className:"sg-opt ".concat(n===j?"hi":""),onMouseDown:e=>e.preventDefault(),onMouseEnter:()=>x(n),onClick:()=>C(e),children:[(0,s.jsx)("span",{className:"nm",children:e.label}),e.hint&&(0,s.jsx)("span",{className:"hint",children:e.hint})]})},e.id))]})]})}},52974:(e,n,l)=>{l.d(n,{Gn:()=>d,ID:()=>m,no:()=>c});var s=l(94799),r=l(34023),t=l(69654),i=l(48538),o=l(10804),a=l(28941);let c=["server","docker","cluster"],d=[...c,"database"];function m(e){let{value:n,onChange:l,kind:c}=e,{t:d}=(0,t.s9)(),{agents:m,colonies:u}=(0,i.o0)(),p=(0,r.useMemo)(()=>m.map(e=>{var n,l;return{id:e.id,label:e.name,hint:null!=(l=null==(n=u.find(n=>n.id===e.colony_id))?void 0:n.name)?l:d("common.noColony")}}),[m,u,d]);return(0,s.jsx)(o.D0,{label:d("obj.manager.label"),hint:"database"===c?n?d("obj.manager.hint.set.db"):d("obj.manager.hint.none.db"):n?d("obj.manager.hint.set"):d("obj.manager.hint.none"),children:(0,s.jsx)(a.c,{options:p,value:n?[n]:[],onChange:e=>{var n;return l(null!=(n=e[0])?n:"")},placeholder:d("obj.manager.placeholder"),empty:d("obj.manager.empty"),ariaLabel:d("obj.manager.label")})})}},73506:(e,n,l)=>{l.d(n,{h:()=>r});var s=l(34023);function r(e){(0,s.useEffect)(()=>{if(!e)return;let n=e=>{e.preventDefault(),e.returnValue=""};return window.addEventListener("beforeunload",n),()=>window.removeEventListener("beforeunload",n)},[e])}}}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[656],{8089:(e,s,t)=>{t.d(s,{A:()=>n});let n=(0,t(74955).A)("Hammer",[["path",{d:"m15 12-8.373 8.373a1 1 0 1 1-3-3L12 9",key:"eefl8a"}],["path",{d:"m18 15 4-4",key:"16gjal"}],["path",{d:"m21.5 11.5-1.914-1.914A2 2 0 0 1 19 8.172V7l-2.26-2.26a6 6 0 0 0-4.202-1.756L9 2.96l.92.82A6.18 6.18 0 0 1 12 8.4V10l2 2h1.172a2 2 0 0 1 1.414.586L18.5 14.5",key:"b7pghm"}]])},17395:(e,s,t)=>{t.d(s,{A:()=>n});let n=(0,t(74955).A)("Pause",[["rect",{x:"14",y:"4",width:"4",height:"16",rx:"1",key:"zuxfzm"}],["rect",{x:"6",y:"4",width:"4",height:"16",rx:"1",key:"1okwgv"}]])},33974:(e,s,t)=>{t.d(s,{A:()=>n});let n=(0,t(74955).A)("PanelLeftOpen",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M9 3v18",key:"fh3hqa"}],["path",{d:"m14 9 3 3-3 3",key:"8010ee"}]])},38656:(e,s,t)=>{t.d(s,{D:()=>s4});var n=t(94799),a=t(34023),l=t(83372),r=t(6673),i=t(82683),c=t(74955);let o=(0,c.A)("RefreshCcw",[["path",{d:"M21 12a9 9 0 0 0-9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"14sxne"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}],["path",{d:"M3 12a9 9 0 0 0 9 9 9.75 9.75 0 0 0 6.74-2.74L21 16",key:"1hlbsb"}],["path",{d:"M16 16h5v5",key:"ccwih5"}]]);var d=t(8089),h=t(59959),m=t(73885),u=t(47405),x=t(3749),j=t(69654),p=t(48538),b=t(10804),v=t(61748),g=t(74988),f=t(31606),w=t(41463),N=t.n(w),y=t(33974),k=t(78330),C=t(92947),S=t(95587);function A(e){let{activeId:s,collapsed:t=!1,onToggle:l}=e,{t:r}=(0,j.s9)(),{objects:i,colonies:c}=(0,p.o0)(),[o,d]=(0,a.useState)(""),[h,m]=(0,a.useState)(!1),u=(0,a.useMemo)(()=>{let e=e=>!o||"".concat(e.name," ").concat(e.kind).toLowerCase().includes(o.toLowerCase()),s=c.map(s=>({key:s.id,name:s.name,color:s.color||"var(--honey)",items:i.filter(t=>t.colony_id===s.id&&e(t))}));return s.push({key:"free",name:r("obj.noColony"),color:null,items:i.filter(s=>(!s.colony_id||!c.some(e=>e.id===s.colony_id))&&e(s))}),s.filter(e=>e.items.length)},[i,c,o,r]),x=l&&(0,n.jsx)("button",{className:"btn ghost icon sm",onClick:l,"aria-label":t?r("ow.expand"):r("ow.collapse"),title:t?r("ow.expand"):r("ow.collapse"),"aria-expanded":!t,children:t?(0,n.jsx)(y.A,{size:17}):(0,n.jsx)(k.A,{size:17})});return t?(0,n.jsxs)("aside",{className:"switcher mini","aria-label":r("nav.objects"),children:[(0,n.jsxs)("div",{className:"switcher-head",children:[x,(0,n.jsx)("button",{className:"btn ghost icon sm",onClick:()=>m(!0),"aria-label":r("obj.new"),title:r("obj.new"),children:(0,n.jsx)(C.A,{size:16})})]}),(0,n.jsx)("div",{className:"switcher-list",children:u.map(e=>(0,n.jsxs)("div",{className:"mini-group",children:[(0,n.jsx)("div",{className:"mini-sep",title:"".concat(e.name," \xb7 ").concat(e.items.length),style:e.color?{"--c":e.color}:void 0}),e.items.map(e=>{let{icon:t,color:a}=g.Nd[e.kind];return(0,n.jsx)(N(),{href:"/resources/".concat(e.id),className:"sw-item mini","aria-current":e.id===s?"page":void 0,"aria-label":e.name,title:"".concat(e.name,": ").concat(r("obj.status.".concat(e.state.status))),children:(0,n.jsxs)("span",{className:"sw-av",children:[(0,n.jsx)("span",{className:"obj-ico sm",style:{"--c":a},children:(0,n.jsx)(t,{size:17})}),(0,n.jsx)(f.md,{status:e.state.status,className:"sw-dot"})]})},e.id)})]},e.key))}),h&&(0,n.jsx)(S.X,{onClose:()=>m(!1)})]}):(0,n.jsxs)("aside",{className:"switcher","aria-label":r("nav.objects"),children:[(0,n.jsxs)("div",{className:"switcher-head",children:[(0,n.jsxs)("div",{className:"row",children:[(0,n.jsx)("b",{className:"grow sw-title",children:r("nav.objects")}),x,(0,n.jsx)("button",{className:"btn ghost icon sm",onClick:()=>m(!0),"aria-label":r("obj.new"),title:r("obj.new"),children:(0,n.jsx)(C.A,{size:16})})]}),(0,n.jsx)(b.DO,{value:o,onChange:d,placeholder:r("ow.find"),label:r("ow.find")})]}),(0,n.jsxs)("div",{className:"switcher-list",children:[0===u.length&&(0,n.jsx)("p",{className:"muted small sw-none",children:o?r("ow.noMatch",{query:o}):r("ow.empty.body")}),u.map(e=>(0,n.jsxs)("div",{children:[(0,n.jsxs)("div",{className:"switcher-group",children:[e.color&&(0,n.jsx)("i",{className:"cdot",style:{background:e.color}}),e.name,(0,n.jsx)("span",{children:e.items.length})]}),e.items.map(e=>{let{icon:t,color:a}=g.Nd[e.kind];return(0,n.jsxs)(N(),{href:"/resources/".concat(e.id),className:"sw-item","aria-current":e.id===s?"page":void 0,children:[(0,n.jsx)("span",{className:"sw-av",children:(0,n.jsx)("span",{className:"obj-ico sm",style:{"--c":a},children:(0,n.jsx)(t,{size:17})})}),(0,n.jsxs)("span",{className:"sw-body",children:[(0,n.jsx)("span",{className:"sw-top",children:(0,n.jsx)("b",{children:e.name})}),(0,n.jsxs)("span",{className:"sw-sub",children:[(0,n.jsx)(f.md,{status:e.state.status})," ",r("obj.status.".concat(e.state.status)),e.state.detail?" \xb7 ".concat((0,g.HS)(r,e.state.detail)):""]}),(0,n.jsx)("span",{className:"sw-meta",children:r("obj.kind.".concat(e.kind))})]})]},e.id)})]},e.key))]}),h&&(0,n.jsx)(S.X,{onClose:()=>m(!1)})]})}var E=t(37064);let z=/\u001b\[[0-9;?]*[ -/]*[@-~]/g;function F(e){let{max:s=8e5,pollMs:t=1e3,paused:n=!1}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},[l,r]=(0,a.useState)({text:null,dropped:0}),i=(0,a.useRef)(""),c=(0,a.useRef)(0);(0,a.useEffect)(()=>{r({text:null,dropped:0}),i.current="",c.current++},[e]),(0,a.useEffect)(()=>{if(n)return;let a=!1,l,o=c.current,d=async()=>{try{let t=i.current?"after=".concat(encodeURIComponent(i.current)):"tail=2000",n=await x.FH.get("/objects/".concat(e,"/logs?").concat(t));if(a||o!==c.current)return;i.current=n.cursor||i.current;let l=n.text.replace(z,"");r(e=>{var t;if(!l&&!n.reset)return e;let a=n.reset?"":null!=(t=e.text)?t:"",r=l?!a||a.endsWith("\n")||l.startsWith("\n")?a+l:"".concat(a,"\n").concat(l):a;if(r.length<=s)return{text:r,dropped:n.reset?0:e.dropped};let i=r.length-s,c=r.slice(0,i);return{text:r.slice(i),dropped:(n.reset?0:e.dropped)+c.split("\n").length-1}})}catch(e){}a||(l=setTimeout(d,t))};return d(),()=>{a=!0,clearTimeout(l)}},[e,n,s,t]);let o=(0,a.useCallback)(()=>r(e=>({text:"",dropped:e.dropped+(e.text?e.text.split("\n").length:0)})),[]);return{text:l.text,dropped:l.dropped,clear:o}}var L=t(47890),q=t(56072);function O(e){let{values:s,max:t,color:a="var(--honey)",height:l=36}=e,r=null!=t?t:Math.max(1,...s);if(s.length<2)return(0,n.jsx)("svg",{className:"spark",width:"100%",height:l,viewBox:"0 0 ".concat(160," ").concat(l),preserveAspectRatio:"none","aria-hidden":!0});let i=s.map((e,t)=>"".concat((t/(s.length-1)*160).toFixed(1),",").concat((l-2-Math.min(e,r)/r*(l-4)).toFixed(1)));return(0,n.jsxs)("svg",{className:"spark",width:"100%",height:l,viewBox:"0 0 ".concat(160," ").concat(l),preserveAspectRatio:"none","aria-hidden":!0,children:[(0,n.jsx)("polygon",{points:"0,".concat(l," ").concat(i.join(" ")," ").concat(160,",").concat(l),fill:a,opacity:".14"}),(0,n.jsx)("polyline",{points:i.join(" "),fill:"none",stroke:a,strokeWidth:"1.6",vectorEffect:"non-scaling-stroke"})]})}var T=t(75014),M=t(50703),R=t(12349),H=t(79141),I=t(91496),D=t(7991),U=t(70665),B=t(41435),$=t(43624),W=t(19431),P=t(70283),J=t(42162),_=t(58960),K=t(7168);let V=/pass|secret|token|api[_-]?key|auth|credential|private/i;function G(e){let{objectId:s,service:t,title:l,onClose:r}=e,{t:i}=(0,j.s9)(),c=(0,J.n)(),[o,d]=(0,a.useState)(null),[h,m]=(0,a.useState)(""),[u,p]=(0,a.useState)(!1);(0,a.useEffect)(()=>{x.FH.get("/objects/".concat(s,"/inspect").concat(t?"?service=".concat(encodeURIComponent(t)):"")).then(d).catch(e=>m(e instanceof Error?e.message:"error"))},[s,t]);let v=e=>e&&!e.startsWith("0001")?(0,q.v7)(Date.parse(e)):"—";return(0,n.jsx)(b.aF,{title:l,onClose:r,wide:!0,children:h?(0,n.jsx)("p",{className:"gx-note err res-m0",children:h}):o?(0,n.jsxs)(n.Fragment,{children:[(0,n.jsxs)("div",{className:"row gap-s",children:[(0,n.jsxs)("span",{className:"muted small grow mono",children:[o.name," \xb7 ",o.id]}),"running"===o.status&&(0,n.jsxs)("button",{className:"btn sm",onClick:()=>{c.openTerminal({objectId:s,service:t}),r()},children:[(0,n.jsx)(P.A,{size:14}),i("svc.shell")]})]}),(0,n.jsxs)("section",{className:"sd-sec",children:[(0,n.jsx)("div",{className:"eyebrow",children:i("svc.d.general")}),(0,n.jsxs)("dl",{className:"sd-kv",children:[(0,n.jsx)("dt",{children:i("ow.d.image")}),(0,n.jsx)("dd",{className:"mono",children:o.image}),(0,n.jsx)("dt",{children:i("svc.col.status")}),(0,n.jsx)("dd",{children:o.status}),(0,n.jsx)("dt",{children:i("ow.d.created")}),(0,n.jsx)("dd",{children:v(o.created)}),(0,n.jsx)("dt",{children:i("svc.d.started")}),(0,n.jsx)("dd",{children:v(o.started)}),(0,n.jsx)("dt",{children:i("ow.d.restart")}),(0,n.jsxs)("dd",{children:[o.restartPolicy,o.restarts?" \xb7 ".concat(i("ow.d.restarts"),": ").concat(o.restarts):""]}),o.entrypoint&&(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("dt",{children:"Entrypoint"}),(0,n.jsx)("dd",{className:"mono",children:o.entrypoint})]}),o.command&&(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("dt",{children:i("ow.d.command")}),(0,n.jsx)("dd",{className:"mono",children:o.command})]}),o.workdir&&(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("dt",{children:i("svc.d.workdir")}),(0,n.jsx)("dd",{className:"mono",children:o.workdir})]}),o.user&&(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("dt",{children:i("svc.d.user")}),(0,n.jsx)("dd",{className:"mono",children:o.user})]})]})]}),o.health&&(0,n.jsxs)("section",{className:"sd-sec",children:[(0,n.jsxs)("div",{className:"eyebrow",children:[i("ow.d.health")," \xb7 ",o.health.status]}),0===o.health.log.length?(0,n.jsx)("p",{className:"muted small res-m0",children:"—"}):(0,n.jsx)("table",{className:"sd-table",children:(0,n.jsx)("tbody",{children:o.health.log.map((e,s)=>(0,n.jsxs)("tr",{children:[(0,n.jsx)("td",{className:"mono",children:e.exit}),(0,n.jsx)("td",{className:"muted",children:v(e.at)}),(0,n.jsx)("td",{className:"mono",children:e.output.trim()})]},s))})})]}),(0,n.jsxs)("section",{className:"sd-sec",children:[(0,n.jsxs)("div",{className:"row gap-s",children:[(0,n.jsxs)("div",{className:"eyebrow grow",children:[i("of.env")," \xb7 ",o.env.length]}),(0,n.jsxs)("button",{className:"btn ghost sm",onClick:()=>p(e=>!e),children:[u?(0,n.jsx)(_.A,{size:14}):(0,n.jsx)(K.A,{size:14}),i("iv.reveal")]})]}),0===o.env.length?(0,n.jsx)("p",{className:"muted small res-m0",children:"—"}):(0,n.jsx)("table",{className:"sd-table",children:(0,n.jsx)("tbody",{children:o.env.map(e=>(0,n.jsxs)("tr",{children:[(0,n.jsx)("td",{className:"mono",children:(0,n.jsx)("b",{children:e.name})}),(0,n.jsx)("td",{className:"mono",children:V.test(e.name)&&!u?"••••••••":e.value})]},e.name))})})]}),(0,n.jsxs)("section",{className:"sd-sec",children:[(0,n.jsx)("div",{className:"eyebrow",children:i("ow.d.ports")}),0===o.ports.length?(0,n.jsx)("p",{className:"muted small res-m0",children:"—"}):(0,n.jsx)("table",{className:"sd-table",children:(0,n.jsx)("tbody",{children:o.ports.map((e,s)=>(0,n.jsxs)("tr",{children:[(0,n.jsx)("td",{className:"mono",children:e.container}),(0,n.jsx)("td",{className:"mono",children:e.host?(0,n.jsxs)("a",{href:"http://localhost:".concat(e.host),target:"_blank",rel:"noreferrer",children:["localhost:",e.host]}):(0,n.jsx)("span",{className:"muted",children:i("svc.d.unpublished")})})]},s))})})]}),(0,n.jsxs)("section",{className:"sd-sec",children:[(0,n.jsxs)("div",{className:"eyebrow",children:[i("svc.d.mounts")," \xb7 ",o.mounts.length]}),0===o.mounts.length?(0,n.jsx)("p",{className:"muted small res-m0",children:"—"}):(0,n.jsxs)("table",{className:"sd-table",children:[(0,n.jsx)("thead",{children:(0,n.jsxs)("tr",{children:[(0,n.jsx)("th",{children:i("svc.d.source")}),(0,n.jsx)("th",{children:i("svc.d.dest")}),(0,n.jsx)("th",{})]})}),(0,n.jsx)("tbody",{children:o.mounts.map((e,s)=>(0,n.jsxs)("tr",{children:[(0,n.jsx)("td",{className:"mono",children:e.source}),(0,n.jsx)("td",{className:"mono",children:e.destination}),(0,n.jsxs)("td",{className:"muted",children:[e.type,e.rw?"":" \xb7 ro"]})]},s))})]})]}),(0,n.jsxs)("section",{className:"sd-sec",children:[(0,n.jsxs)("div",{className:"eyebrow",children:[i("ow.d.network")," \xb7 ",o.networks.length]}),0===o.networks.length?(0,n.jsx)("p",{className:"muted small res-m0",children:"—"}):(0,n.jsxs)("table",{className:"sd-table",children:[(0,n.jsx)("thead",{children:(0,n.jsxs)("tr",{children:[(0,n.jsx)("th",{children:i("obj.f.name")}),(0,n.jsx)("th",{children:"IP"}),(0,n.jsx)("th",{children:"Gateway"}),(0,n.jsx)("th",{children:"Aliases"})]})}),(0,n.jsx)("tbody",{children:o.networks.map(e=>(0,n.jsxs)("tr",{children:[(0,n.jsx)("td",{className:"mono",children:e.name}),(0,n.jsx)("td",{className:"mono",children:e.ip}),(0,n.jsx)("td",{className:"mono",children:e.gateway}),(0,n.jsx)("td",{className:"mono",children:e.aliases.join(", ")})]},e.name))})]})]})]}):(0,n.jsx)("p",{className:"gx-note",children:i("git.loading")})})}function X(e){let{ports:s}=e,t=s.split(",").map(e=>e.trim()).filter(Boolean);return t.length?(0,n.jsx)("span",{className:"svc-ports",children:t.map(e=>{var s;let t=null==(s=/^(\d+)(?:->|→)/.exec(e))?void 0:s[1];return t?(0,n.jsx)("a",{className:"mono",href:"http://localhost:".concat(t),target:"_blank",rel:"noreferrer",title:"http://localhost:".concat(t),children:e},e):(0,n.jsx)("span",{className:"mono",children:e},e)})}):(0,n.jsx)("span",{className:"muted",children:"—"})}function Z(e){let{objectId:s,services:t,onLogs:c,onChanged:h}=e,{t:m}=(0,j.s9)(),p=(0,b.dj)(),v=(0,J.n)(),[g,w]=(0,a.useState)(null),[N,y]=(0,a.useState)(null),k=async(e,t)=>{w("".concat(e,":").concat(t));try{await x.FH.post("/objects/".concat(s,"/service"),{service:e,action:t}),h()}catch(e){p("".concat(m("obj.act.failed",{action:m("obj.act.".concat(t))}),": ").concat(e instanceof Error?e.message:""),"err")}finally{w(null)}};return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsxs)("table",{className:"cm-table svc",children:[(0,n.jsx)("thead",{children:(0,n.jsxs)("tr",{children:[(0,n.jsx)("th",{children:m("svc.col.name")}),(0,n.jsx)("th",{children:m("svc.col.image")}),(0,n.jsx)("th",{children:m("svc.col.status")}),(0,n.jsx)("th",{children:m("svc.col.ports")}),(0,n.jsx)("th",{className:"num",children:m("ow.cpu")}),(0,n.jsx)("th",{className:"num",children:m("ow.mem")}),(0,n.jsx)("th",{})]})}),(0,n.jsx)("tbody",{children:t.map(e=>{let t="running"===e.state||"restarting"===e.state;return(0,n.jsxs)("tr",{children:[(0,n.jsx)("td",{children:(0,n.jsxs)("span",{className:"row gap-s",children:[(0,n.jsx)(f.md,{status:"running"===e.state?/unhealthy/i.test(e.health)?"error":/starting/i.test(e.health)?"starting":"running":"exited"===e.state||"dead"===e.state?"error":"restarting"===e.state?"starting":"stopped"}),(0,n.jsxs)("span",{className:"svc-name",children:[(0,n.jsx)("b",{children:e.name}),(0,n.jsx)("small",{className:"mono muted",children:e.container})]})]})}),(0,n.jsx)("td",{className:"mono small svc-img",title:e.image,children:e.image||"—"}),(0,n.jsxs)("td",{children:[(0,n.jsxs)("span",{className:"small",children:[e.state,e.health?" \xb7 ".concat(e.health):""]}),(0,n.jsx)("div",{className:"muted small",children:e.status})]}),(0,n.jsx)("td",{children:(0,n.jsx)(X,{ports:e.ports})}),(0,n.jsx)("td",{className:"num mono small",children:null!==e.cpu?"".concat(e.cpu,"%"):"—"}),(0,n.jsx)("td",{className:"num mono small",children:null!==e.memBytes?(0,q.zi)(e.memBytes):"—"}),(0,n.jsxs)("td",{className:"cm-act",children:[t?(0,n.jsx)("button",{className:"btn ghost icon sm",disabled:!!g,onClick:()=>void k(e.name,"stop"),"aria-label":m("obj.act.stop"),title:m("obj.act.stop"),children:(0,n.jsx)(l.A,{size:14})}):(0,n.jsx)("button",{className:"btn ghost icon sm",disabled:!!g,onClick:()=>void k(e.name,"start"),"aria-label":m("obj.act.start"),title:m("obj.act.start"),children:(0,n.jsx)(u.A,{size:14})}),(0,n.jsx)("button",{className:"btn ghost icon sm",disabled:!!g,onClick:()=>void k(e.name,"restart"),"aria-label":m("obj.act.restart"),title:m("obj.act.restart"),children:(0,n.jsx)(r.A,{size:14})}),(0,n.jsx)(B.W1,{label:m("svc.more"),icon:(0,n.jsx)(I.A,{size:15}),iconOnly:!0,children:a=>(0,n.jsxs)(n.Fragment,{children:[c&&(0,n.jsx)(B.Dr,{icon:(0,n.jsx)(W.A,{size:15}),onClick:()=>{a(),c(e.name)},children:m("svc.logs.short")}),(0,n.jsx)(B.Dr,{icon:(0,n.jsx)(P.A,{size:15}),disabled:!t,hint:t?void 0:m("svc.needsRunning"),onClick:()=>{a(),v.openTerminal({objectId:s,service:e.name})},children:m("svc.shell")}),(0,n.jsx)(B.Dr,{icon:(0,n.jsx)(i.A,{size:15}),onClick:()=>{a(),y(e.name)},children:m("svc.inspect")}),(0,n.jsx)(B.MU,{}),(0,n.jsx)(B.Dr,{icon:(0,n.jsx)(o,{size:15}),danger:!0,hint:m("svc.recreate.hint"),onClick:()=>{a(),k(e.name,"recreate")},children:m("svc.recreate")}),(0,n.jsx)(B.Dr,{icon:(0,n.jsx)(d.A,{size:15}),hint:m("svc.rebuild.hint"),onClick:()=>{a(),k(e.name,"rebuild")},children:m("svc.rebuild")})]})})]})]},e.name)})})]}),N&&(0,n.jsx)(G,{objectId:s,service:N,title:N,onClose:()=>y(null)})]})}function Q(e,s){var t,n,a,l,r,i;if("server"===e.kind)return e.config.start;let c=e.config;return"compose"===c.mode?"".concat((0,L._1)(null!=(t=c.file)?t:"")).concat((null==s?void 0:s.services)?" \xb7 ".concat(null!=(n=s.info.running)?n:0,"/").concat(null!=(a=s.info.services)?a:0):""):String(null!=(i=null!=(r=null!=(l=null==s?void 0:s.info.image)?l:c.image)?r:c.container)?i:"")}function Y(e){let{cluster:s}=e,{t}=(0,j.s9)(),{objects:i,refresh:c}=(0,p.o0)(),o=(0,b.dj)(),d=(0,$.useRouter)(),[h,m]=(0,a.useState)(null),[v,w]=(0,a.useState)(new Set),y=s.config.members,k=y.map(e=>i.find(s=>s.id===e)).filter(e=>!!e),{stats:S,reload:A}=function(e){let[s,t]=(0,a.useState)({}),[n,l]=(0,a.useState)(0),r=e.map(e=>"".concat(e.id,":").concat(e.state.status)).join(",");return(0,a.useEffect)(()=>{let s=!1,n,a=async()=>{let l=e.filter(e=>"cluster"!==e.kind&&"http"!==e.kind),r=await Promise.all(l.map(e=>x.FH.get("/objects/".concat(e.id,"/stats")).then(s=>[e.id,s]).catch(()=>null)));!s&&(t(Object.fromEntries(r.filter(e=>!!e))),e.some(e=>"running"===e.state.status||"starting"===e.state.status)&&(n=setTimeout(a,5e3)))};return a(),()=>{s=!0,clearTimeout(n)}},[r,n]),{stats:s,reload:()=>l(e=>e+1)}}(k),E=i.filter(e=>{var t,n;return("server"===e.kind||"docker"===e.kind)&&(null!=(t=e.colony_id)?t:null)===(null!=(n=s.colony_id)?n:null)&&!y.includes(e.id)}),z=async e=>{m("members");try{await x.FH.patch("/objects/".concat(s.id),{config:{members:e}}),await c(["objects"])}catch(e){o(e instanceof Error?e.message:t("edit.saveFailed"),"err")}finally{m(null)}},F=(e,s)=>{let t=[...y],n=e+s;n<0||n>=t.length||([t[e],t[n]]=[t[n],t[e]],z(t))},O=async(e,s)=>{m("".concat(e.id,":").concat(s));try{await x.FH.post("/objects/".concat(e.id,"/action"),{action:s})}catch(e){o("".concat(t("obj.act.failed",{action:t("obj.act.".concat(s))}),": ").concat(e instanceof Error?e.message:""),"err")}finally{m(null),A()}};return(0,n.jsxs)("div",{className:"cm",children:[0===k.length?(0,n.jsx)("p",{className:"muted",children:t("cl.none")}):(0,n.jsxs)("table",{className:"cm-table cm-tree",children:[(0,n.jsx)("thead",{children:(0,n.jsxs)("tr",{children:[(0,n.jsx)("th",{children:t("cl.order")}),(0,n.jsx)("th",{children:t("obj.f.name")}),(0,n.jsx)("th",{children:t("svc.col.runs")}),(0,n.jsx)("th",{children:t("ow.state")}),(0,n.jsx)("th",{className:"num",children:t("ow.cpu")}),(0,n.jsx)("th",{className:"num",children:t("ow.mem")}),(0,n.jsx)("th",{})]})}),(0,n.jsx)("tbody",{children:k.map((e,s)=>{let{icon:i,color:c}=g.Nd[e.kind],o="running"===e.state.status||"starting"===e.state.status,m=S[e.id],x=null==m?void 0:m.services,j=v.has(e.id);return(0,n.jsxs)(a.Fragment,{children:[(0,n.jsxs)("tr",{children:[(0,n.jsxs)("td",{className:"cm-ord",children:[(0,n.jsx)("span",{className:"ord",children:s+1}),(0,n.jsx)("button",{className:"btn ghost icon sm",disabled:0===s||!!h,onClick:()=>F(s,-1),"aria-label":t("cl.up"),title:t("cl.up"),children:(0,n.jsx)(T.A,{size:14})}),(0,n.jsx)("button",{className:"btn ghost icon sm",disabled:s===k.length-1||!!h,onClick:()=>F(s,1),"aria-label":t("cl.down"),title:t("cl.down"),children:(0,n.jsx)(M.A,{size:14})})]}),(0,n.jsx)("td",{children:(0,n.jsxs)("span",{className:"row gap-s",children:[x&&x.length>0?(0,n.jsx)("button",{className:"cm-chev",onClick:()=>{let s;return s=e.id,w(e=>{let t=new Set(e);return t.has(s)?t.delete(s):t.add(s),t})},"aria-expanded":j,"aria-label":j?t("svc.collapse"):t("svc.expand"),title:j?t("svc.collapse"):t("svc.expand"),children:j?(0,n.jsx)(R.A,{size:15}):(0,n.jsx)(H.A,{size:15})}):(0,n.jsx)("span",{style:{width:20}}),(0,n.jsxs)(N(),{href:"/resources/".concat(e.id),className:"cm-name",children:[(0,n.jsx)(i,{size:15,style:{color:c}}),(0,n.jsx)("b",{children:e.name})]})]})}),(0,n.jsx)("td",{className:"mono small svc-img",title:Q(e,m),children:Q(e,m)||"—"}),(0,n.jsxs)("td",{children:[(0,n.jsxs)("span",{className:"row gap-s small",children:[(0,n.jsx)(f.md,{status:e.state.status}),t("obj.status.".concat(e.state.status))]}),(0,n.jsx)("span",{className:"muted small",children:[(0,g.HS)(t,e.state.detail),e.state.since&&o?t("obj.since",{time:(0,L.KN)(e.state.since)}):""].filter(Boolean).join(" \xb7 ")})]}),(0,n.jsx)("td",{className:"num mono small",children:(null==m?void 0:m.cpu)!=null?"".concat(m.cpu,"%"):"—"}),(0,n.jsx)("td",{className:"num mono small",children:(null==m?void 0:m.memBytes)!=null?(0,q.zi)(m.memBytes):"—"}),(0,n.jsxs)("td",{className:"cm-act",children:[o?(0,n.jsx)("button",{className:"btn ghost icon sm",disabled:!!h,onClick:()=>void O(e,"stop"),"aria-label":t("obj.act.stop"),title:t("obj.act.stop"),children:(0,n.jsx)(l.A,{size:14})}):(0,n.jsx)("button",{className:"btn ghost icon sm",disabled:!!h,onClick:()=>void O(e,"start"),"aria-label":t("obj.act.start"),title:t("obj.act.start"),children:(0,n.jsx)(u.A,{size:14})}),(0,n.jsx)("button",{className:"btn ghost icon sm",disabled:!!h,onClick:()=>void O(e,"restart"),"aria-label":t("obj.act.restart"),title:t("obj.act.restart"),children:(0,n.jsx)(r.A,{size:14})}),(0,n.jsx)(B.W1,{label:t("svc.more"),icon:(0,n.jsx)(I.A,{size:15}),iconOnly:!0,children:s=>(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(B.Dr,{icon:(0,n.jsx)(D.A,{size:15}),onClick:()=>{s(),d.push("/resources/".concat(e.id))},children:t("cl.open")}),(0,n.jsx)(B.MU,{}),(0,n.jsx)(B.Dr,{icon:(0,n.jsx)(U.A,{size:15}),danger:!0,hint:t("cl.remove.hint"),disabled:!!h,onClick:()=>{s(),z(y.filter(s=>s!==e.id))},children:t("cl.remove")})]})})]})]}),j&&x&&(0,n.jsx)("tr",{className:"cm-sub",children:(0,n.jsx)("td",{colSpan:7,children:(0,n.jsx)(Z,{objectId:e.id,services:x,onChanged:A})})})]},e.id)})})]}),(0,n.jsx)("p",{className:"muted small",style:{margin:"8px 0"},children:t("cl.startOrder")}),E.length>0&&(0,n.jsxs)("div",{className:"row gap-s",children:[(0,n.jsx)(C.A,{size:15,className:"muted"}),(0,n.jsxs)("select",{className:"select",style:{width:"auto"},value:"",onChange:e=>e.target.value&&void z([...y,e.target.value]),"aria-label":t("cl.add"),children:[(0,n.jsxs)("option",{value:"",children:[t("cl.add"),"…"]}),E.map(e=>(0,n.jsx)("option",{value:e.id,children:e.name},e.id))]})]})]})}let ee=e=>{let{k:s,v:t}=e;return(0,n.jsxs)("div",{className:"ov-row",children:[(0,n.jsx)("dt",{children:s}),(0,n.jsx)("dd",{children:t})]})};function es(e){var s,t,l,r,i,c,o,d,m,u,p,b,v;let{object:w,onSeeLogs:N}=e,{t:y}=(0,j.s9)(),{stats:k,cpu:C,mem:S,live:A,reload:z}=function(e){let[s,t]=(0,a.useState)(null),[n,l]=(0,a.useState)([]),[r,i]=(0,a.useState)([]),c="running"===e.state.status||"starting"===e.state.status,[o,d]=(0,a.useState)(0);return(0,a.useEffect)(()=>{if("server"!==e.kind&&"docker"!==e.kind)return;0===o&&(t(null),l([]),i([]));let s=!1,n,a=async()=>{try{let n=await x.FH.get("/objects/".concat(e.id,"/stats"));if(s)return;t(n),null!==n.cpu&&l(e=>[...e,n.cpu].slice(-60)),null!==n.memBytes&&i(e=>[...e,n.memBytes].slice(-60))}catch(e){}!s&&c&&(n=setTimeout(a,3e3))};return a(),()=>{s=!0,clearTimeout(n)}},[e.id,e.kind,c,o]),{stats:s,cpu:n,mem:r,live:c,reload:()=>d(e=>e+1)}}(w),[,T]=(0,a.useState)(0);(0,E.n)(()=>T(e=>e+1),1e3,{enabled:A,immediate:!1});let{text:M}=F(w.id,{max:4e4,pollMs:2e3}),R=(0,a.useMemo)(()=>(null!=M?M:"").split("\n").filter(e=>e.trim()).slice(-14).join("\n"),[M]),H=null!=(t=null==k?void 0:k.info)?t:{},I=w.state,D=y("ow.d.none"),U=[];if("server"===w.kind){let e=w.config;U.push([y("ow.d.command"),(0,n.jsx)("code",{className:"mono",children:e.start},"c")],[y("ow.d.folder"),(0,n.jsx)("code",{className:"mono",title:e.cwd,children:(0,L._1)(e.cwd)},"f")]),e.port&&U.push([y("ow.d.port"),e.port]),e.stop&&U.push([y("ow.d.stop"),(0,n.jsx)("code",{className:"mono",children:e.stop},"s")]),U.push([y("ow.d.restart"),e.restart&&"no"!==e.restart?"".concat(y("always"===e.restart?"obj.sup.restart.always":"obj.sup.restart.fail")," (").concat(null!=(l=e.maxRestarts)?l:5,")"):y("obj.sup.restart.no")]),U.push([y("ow.d.health"),e.health?"".concat(e.health.kind.toUpperCase(),": ").concat(e.health.target):D]),I.pid&&U.push(["PID",I.pid])}else if("docker"===w.kind){let e=w.config;U.push([y("ow.d.mode"),y("obj.mode.".concat(e.mode))]),"compose"===e.mode?U.push([y("ow.d.compose"),(0,n.jsx)("code",{className:"mono",title:e.file,children:(0,L._1)(null!=(r=e.file)?r:"")},"f")],[y("ow.d.services"),"".concat(null!=(i=H.running)?i:0,"/").concat(null!=(c=H.services)?c:0)]):(U.push([y("ow.d.container"),(0,n.jsx)("code",{className:"mono",children:"existing"===e.mode?e.container:"hive-am-".concat(w.id.slice(0,8))},"n")]),(H.image||e.image)&&U.push([y("ow.d.image"),(0,n.jsx)("code",{className:"mono",children:String(null!=(m=H.image)?m:e.image)},"i")]),(H.ports||(null==(o=e.ports)?void 0:o.length))&&U.push([y("ow.d.ports"),String(null!=(u=H.ports)?u:null==(d=e.ports)?void 0:d.join(", "))]),(H.network||e.network)&&U.push([y("ow.d.network"),String(null!=(p=H.network)?p:e.network)]),H.restartPolicy&&U.push([y("ow.d.restart"),String(H.restartPolicy)]),void 0!==H.restarts&&null!==H.restarts&&U.push([y("ow.d.restarts"),String(H.restarts)]),H.memoryLimit&&U.push([y("ow.d.memLimit"),(0,q.zi)(Number(H.memoryLimit))]),H.cpuLimit&&U.push([y("ow.d.cpuLimit"),String(H.cpuLimit)]),H.created&&U.push([y("ow.d.created"),(0,L.KN)(Number(H.created))]))}return(0,n.jsxs)("div",{className:"ov",children:[(0,n.jsxs)("div",{className:"ov-grid",children:[(0,n.jsxs)("section",{className:"ov-card",children:[(0,n.jsx)("div",{className:"eyebrow",children:y("ow.state")}),(0,n.jsxs)("div",{className:"ov-big",children:[(0,n.jsx)(f.md,{status:I.status,className:"lg"}),y("obj.status.".concat(I.status))]}),I.detail&&(0,n.jsx)("p",{className:"muted small",style:{margin:0},children:(0,g.HS)(y,I.detail)}),I.since&&A&&(0,n.jsxs)("p",{className:"small",style:{margin:0},children:[y("ow.uptime")," ",(0,n.jsx)("b",{children:(e=>{let s=Math.max(0,Math.floor(e/1e3)),t=Math.floor(s/86400),n=Math.floor(s%86400/3600),a=Math.floor(s%3600/60);return t?"".concat(t,"d ").concat(n,"h"):n?"".concat(n,"h ").concat(a,"m"):a?"".concat(a,"m ").concat(s%60,"s"):"".concat(s,"s")})(Date.now()-I.since)})]})]}),("server"===w.kind||"docker"===w.kind)&&(0,n.jsxs)("section",{className:"ov-card",children:[(0,n.jsx)("div",{className:"eyebrow",children:y("ow.usage")}),A||(null==k?void 0:k.cpu)!==null?(0,n.jsxs)(n.Fragment,{children:[(0,n.jsxs)("div",{className:"ov-meter",children:[(0,n.jsx)("span",{children:y("ow.cpu")}),(0,n.jsx)("b",{children:(null==k?void 0:k.cpu)!==null&&(null==k?void 0:k.cpu)!==void 0?"".concat(k.cpu,"%"):"—"})]}),(0,n.jsx)(O,{values:C,color:"var(--p-opencode)"}),(0,n.jsxs)("div",{className:"ov-meter",children:[(0,n.jsx)("span",{children:y("ow.mem")}),(0,n.jsx)("b",{children:(null==k?void 0:k.memBytes)!=null?"".concat((0,q.zi)(k.memBytes)).concat(k.memLimitBytes?" / ".concat((0,q.zi)(k.memLimitBytes)):""):"—"})]}),(0,n.jsx)(O,{values:S,color:"var(--ok)"}),(0,n.jsxs)("dl",{className:"ov-dl",children:[(null==k?void 0:k.pids)!=null&&(0,n.jsx)(ee,{k:y("ow.procs"),v:k.pids}),(null==k?void 0:k.net)&&(0,n.jsx)(ee,{k:y("ow.net"),v:k.net}),(null==k?void 0:k.block)&&(0,n.jsx)(ee,{k:y("ow.block"),v:k.block})]})]}):(0,n.jsx)("p",{className:"muted small",style:{margin:0},children:y("ow.noUsage")})]}),U.length>0&&(0,n.jsxs)("section",{className:"ov-card",children:[(0,n.jsx)("div",{className:"eyebrow",children:y("ow.info")}),(0,n.jsx)("dl",{className:"ov-dl",children:U.map((e,s)=>{let[t,a]=e;return(0,n.jsx)(ee,{k:t,v:a},s)})})]})]}),"docker"===w.kind&&"compose"===w.config.mode&&(0,n.jsxs)("section",{className:"ov-card wide",children:[(0,n.jsxs)("div",{className:"eyebrow",children:[y("ow.d.services"),(null==k||null==(s=k.services)?void 0:s.length)?" \xb7 ".concat(null!=(b=H.running)?b:0,"/").concat(null!=(v=H.services)?v:0):""]}),null===k?(0,n.jsxs)("p",{className:"muted small ov-empty",children:[(0,n.jsx)(h.A,{size:14,className:"spin"})," ",y("ow.svc.loading")]}):k.services&&k.services.length>0?(0,n.jsx)(Z,{objectId:w.id,services:k.services,onLogs:e=>N("".concat(e,"-")),onChanged:z}):(0,n.jsx)("p",{className:"muted small ov-empty",children:y(A?"ow.svc.none":"ow.svc.stopped")})]}),"cluster"===w.kind&&(0,n.jsxs)("section",{className:"ov-card wide",children:[(0,n.jsx)("div",{className:"eyebrow",children:y("cl.members")}),(0,n.jsx)(Y,{cluster:w})]}),(0,n.jsxs)("section",{className:"ov-card wide grow",children:[(0,n.jsxs)("div",{className:"row",children:[(0,n.jsx)("div",{className:"eyebrow grow",children:y("ow.recent")}),(0,n.jsx)("button",{className:"btn ghost sm",onClick:()=>N(),children:y("ow.seeLogs")})]}),(0,n.jsx)("pre",{className:"ov-log mono",children:null===M?y("git.loading"):R||y("obj.logs.empty")})]})]})}var et=t(97356),en=t(52974),ea=t(9217);function el(e){let{object:s}=e,{t}=(0,j.s9)(),{refresh:l}=(0,p.o0)(),r=(0,b.dj)(),i=(0,$.useRouter)(),c=(0,a.useMemo)(()=>(0,ea.QJ)(s),[s.updated_at,s.id]),{d:o,set:d,setD:h}=(0,ea.Te)(()=>c),[m,u]=(0,a.useState)(""),[v,g]=(0,a.useState)(!1),[f,w]=(0,a.useState)(!1),[N,y]=(0,a.useState)(null);(0,a.useEffect)(()=>{"http"===s.kind&&x.FH.get("/objects/".concat(s.id,"/http")).then(y).catch(()=>void 0)},[s.id,s.kind]);let k=JSON.stringify(o)!==JSON.stringify(c),C="running"===s.state.status||"starting"===s.state.status,S="server"===s.kind||"docker"===s.kind||"cluster"===s.kind,A=async function(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];if(!o.name.trim())return void u(t("obj.err.name"));g(!0),u("");try{await x.FH.patch("/objects/".concat(s.id),{name:o.name.trim(),colony_id:o.colony_id||null,config:(0,ea.qP)(o)}),o.manager!==c.manager&&en.Gn.includes(s.kind)&&await x.FH.put("/objects/".concat(s.id,"/manager"),{agent_id:o.manager||null}),await l(["objects","agents"]),e&&await x.FH.post("/objects/".concat(s.id,"/action"),{action:"restart"}).catch(e=>r(e instanceof Error?e.message:"","err")),r(t("obj.saved"))}catch(e){u(e instanceof Error?e.message:t("edit.saveFailed"))}finally{g(!1)}},E=async()=>{await x.FH.del("/objects/".concat(s.id)),await l(["objects"]),r(t("obj.deleted")),i.push("/resources")};return(0,n.jsxs)("div",{className:"oc",children:[(0,n.jsx)("div",{className:"oc-body",children:(0,n.jsx)("div",{className:"oc-form",children:(0,n.jsx)(ea.Bh,{objectId:s.id,d:o,set:d,setD:h,scan:N,error:m})})}),(0,n.jsxs)("div",{className:"savebar oc-bar",children:[(0,n.jsxs)("span",{className:"muted small grow",children:[k?t("ow.cfg.dirty"):t("ow.cfg.saved"),k&&S?" \xb7 ".concat(C?t("ow.cfg.appliesRunning"):t("ow.cfg.applies")):""]}),(0,n.jsxs)("button",{className:"btn danger",onClick:()=>w(!0),children:[(0,n.jsx)(et.A,{size:15}),t("common.delete")]}),(0,n.jsx)("button",{className:"btn ghost",disabled:!k||v,onClick:()=>{h(()=>c),u("")},children:t("ow.cfg.discard")}),S&&C&&(0,n.jsx)("button",{className:"btn",disabled:!k||v,onClick:()=>void A(!0),children:t("ow.cfg.saveRestart")}),(0,n.jsx)("button",{className:"btn primary",disabled:!k||v,onClick:()=>void A(),children:t("ow.cfg.save")})]}),f&&(0,n.jsx)(b.TM,{title:t("obj.delete.title",{name:s.name}),confirmLabel:t("obj.delete"),danger:!0,onConfirm:E,onClose:()=>w(!1),body:"server"===s.kind?t("obj.delete.server"):"docker"===s.kind?t("obj.delete.".concat(s.config.mode)):t("obj.delete.".concat(s.kind))})]})}var er=t(58311);let ei=(0,c.A)("WrapText",[["line",{x1:"3",x2:"21",y1:"6",y2:"6",key:"4m8b97"}],["path",{d:"M3 12h15a3 3 0 1 1 0 6h-4",key:"1cl7v7"}],["polyline",{points:"16 16 14 18 16 20",key:"1jznyi"}],["line",{x1:"3",x2:"10",y1:"18",y2:"18",key:"1h33wv"}]]),ec=(0,c.A)("ZoomOut",[["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}],["line",{x1:"21",x2:"16.65",y1:"21",y2:"16.65",key:"13gj7c"}],["line",{x1:"8",x2:"14",y1:"11",y2:"11",key:"durymu"}]]),eo=(0,c.A)("ZoomIn",[["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}],["line",{x1:"21",x2:"16.65",y1:"21",y2:"16.65",key:"13gj7c"}],["line",{x1:"11",x2:"11",y1:"8",y2:"14",key:"1vmskp"}],["line",{x1:"8",x2:"14",y1:"11",y2:"11",key:"durymu"}]]);var ed=t(17395),eh=t(64883),em=t(494);let eu=(0,c.A)("Download",[["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["polyline",{points:"7 10 12 15 17 10",key:"2ggqvy"}],["line",{x1:"12",x2:"12",y1:"15",y2:"3",key:"1vk2je"}]]);var ex=t(98392);let ej=/\b(error|fatal|exception|panic|fail(ed|ure)?|traceback)\b/i,ep=/\b(warn(ing)?|deprecated)\b/i;function eb(e){let{id:s,members:t,initialFilter:l}=e,{t:r}=(0,j.s9)(),[i,c]=(0,a.useState)(!1),{text:o,dropped:d,clear:h}=F(s,{paused:i}),[m,x]=(0,a.useState)(null!=l?l:""),p=(0,a.useDeferredValue)(m),[b,v]=(0,a.useState)(!!l),[g,f]=(0,a.useState)(!0),[w,N]=(0,a.useState)(!0),[y,k]=(0,a.useState)(12.5),[C,S]=(0,a.useState)(new Set),A=(0,a.useRef)(null);(0,a.useEffect)(()=>{try{let e=Number(localStorage.getItem("hive-am.logsize"));e>=10&&e<=20&&k(e)}catch(e){}},[]);let E=e=>k(s=>{let t=Math.max(10,Math.min(20,s+e));try{localStorage.setItem("hive-am.logsize",String(t))}catch(e){}return t}),z=(0,a.useMemo)(()=>o?o.split("\n"):[],[o]),q=(0,a.useMemo)(()=>{let e=p.trim().toLowerCase(),s=[];for(let n=0;n<z.length;n++){let a=z[n],l=t?/^\[([^\]]+)\] /.exec(a):null;!(l&&C.has(l[1]))&&(!b||!e||a.toLowerCase().includes(e))&&s.push({line:a,idx:d+n,member:null==l?void 0:l[1]})}return s},[z,p,b,C,t,d]),O=q.length>2e3?q.slice(q.length-2e3):q,T=(0,a.useMemo)(()=>{let e=new Map;for(let s of O){let t=Math.floor(s.idx/50),n=e.get(t);n?n.push(s):e.set(t,[s])}return[...e]},[O]),M=(0,a.useMemo)(()=>{let e=p.trim().toLowerCase();return e?q.filter(s=>s.line.toLowerCase().includes(e)).length:0},[q,p]);return(0,a.useEffect)(()=>{let e=A.current;e&&g&&(e.scrollTop=e.scrollHeight)},[O,g]),(0,n.jsxs)("div",{className:"lp",children:[(0,n.jsxs)("div",{className:"lp-bar",children:[(0,n.jsxs)("div",{className:"search lp-search",children:[(0,n.jsx)(er.A,{size:14}),(0,n.jsx)("input",{className:"input",placeholder:r("lp.search"),value:m,onChange:e=>x(e.target.value),"aria-label":r("lp.search")}),M>0&&(0,n.jsx)("span",{className:"lp-hits",children:r("lp.matches",{count:M})})]}),(0,n.jsxs)("label",{className:"row gap-s small",children:[(0,n.jsx)("input",{type:"checkbox",checked:b,onChange:e=>v(e.target.checked)}),r("lp.only")]}),(0,n.jsx)("span",{className:"grow"}),(0,n.jsx)("button",{className:"btn ghost icon sm ".concat(w?"on":""),"aria-pressed":w,onClick:()=>N(e=>!e),"aria-label":r("lp.wrap"),title:r("lp.wrap"),children:(0,n.jsx)(ei,{size:15})}),(0,n.jsx)("button",{className:"btn ghost icon sm",onClick:()=>E(-1),"aria-label":r("lp.smaller"),title:r("lp.smaller"),children:(0,n.jsx)(ec,{size:15})}),(0,n.jsx)("button",{className:"btn ghost icon sm",onClick:()=>E(1),"aria-label":r("lp.larger"),title:r("lp.larger"),children:(0,n.jsx)(eo,{size:15})}),(0,n.jsx)("button",{className:"btn ghost icon sm ".concat(i?"on":""),"aria-pressed":i,onClick:()=>c(e=>!e),"aria-label":r(i?"lp.resume":"lp.pause"),title:r(i?"lp.resume":"lp.pause"),children:i?(0,n.jsx)(u.A,{size:15}):(0,n.jsx)(ed.A,{size:15})}),(0,n.jsx)("button",{className:"btn ghost icon sm",onClick:h,"aria-label":r("lp.clear"),title:r("lp.clear"),children:(0,n.jsx)(eh.A,{size:15})}),(0,n.jsx)("button",{className:"btn ghost icon sm",onClick:()=>{var e;null==(e=navigator.clipboard)||e.writeText(z.join("\n"))},"aria-label":r("lp.copy"),title:r("lp.copy"),children:(0,n.jsx)(em.A,{size:15})}),(0,n.jsx)("button",{className:"btn ghost icon sm",onClick:()=>{let e=document.createElement("a");e.href=URL.createObjectURL(new Blob([z.join("\n")],{type:"text/plain"})),e.download="".concat(s.slice(0,8),"-").concat(new Date().toISOString().slice(0,19).replace(/[:T]/g,"-"),".log"),e.click(),setTimeout(()=>URL.revokeObjectURL(e.href),4e3)},"aria-label":r("lp.download"),title:r("lp.download"),children:(0,n.jsx)(eu,{size:15})})]}),t&&t.length>0&&(0,n.jsx)("div",{className:"lp-chips",children:t.map((e,s)=>(0,n.jsx)("button",{className:"lp-chip ".concat(C.has(e)?"off":""),style:{"--c":L.hg[s%L.hg.length]},"aria-pressed":!C.has(e),onClick:()=>S(s=>{let t=new Set(s);return t.has(e)?t.delete(e):t.add(e),t}),children:e},e))}),(0,n.jsx)("div",{className:"lp-body mono ".concat(w?"wrap":""),ref:A,onScroll:()=>{let e=A.current;if(!e)return;let s=e.scrollHeight-e.scrollTop-e.clientHeight<40;!s&&g?f(!1):s&&!g&&f(!0)},tabIndex:0,style:{fontSize:y},children:null===o?(0,n.jsx)("p",{className:"muted",children:r("git.loading")}):0===O.length?(0,n.jsx)("p",{className:"muted",children:r("obj.logs.empty")}):T.map(e=>{let[s,a]=e;return(0,n.jsx)(eg,{rows:a,members:t,needle:p.trim()},s)})}),(0,n.jsxs)("div",{className:"lp-foot muted small",children:[(0,n.jsxs)("span",{children:[r("lp.lines",{count:q.length}),q.length>2e3?" \xb7 ".concat(r("lp.shown",{count:2e3})):"",i?" \xb7 ".concat(r("lp.paused")):""]}),!g&&(0,n.jsxs)("button",{className:"btn sm",onClick:()=>{f(!0);let e=A.current;e&&(e.scrollTop=e.scrollHeight)},children:[(0,n.jsx)(ex.A,{size:14}),r("lp.follow")]})]})]})}function ev(e){let{line:s,member:t,mi:l,needle:r}=e,i=ej.test(s)?"err":ep.test(s)?"warn":"",c=t&&l>=0?s.slice(t.length+3):s,o=!1,d=[];if(r){let e=c.toLowerCase(),s=r.toLowerCase(),t=0,a=0;for(let l=e.indexOf(s);l>=0;l=e.indexOf(s,t))o=!0,d.push(c.slice(t,l),(0,n.jsx)("mark",{children:c.slice(l,l+r.length)},a++)),t=l+r.length;d.push(c.slice(t))}let h=r?d.map((e,s)=>(0,n.jsx)(a.Fragment,{children:e},s)):c;return(0,n.jsx)("div",{className:"lp-row ".concat(i," ").concat(o?"hit":""),style:l>=0?{"--c":L.hg[l%L.hg.length]}:void 0,children:t&&l>=0?(0,n.jsxs)(n.Fragment,{children:[(0,n.jsxs)("b",{className:"lp-src",children:["[",t,"]"]}),h]}):h})}let eg=(0,a.memo)(function(e){let{rows:s,members:t,needle:a}=e;return(0,n.jsx)(n.Fragment,{children:s.map(e=>{var s;return(0,n.jsx)(ev,{line:e.line,member:e.member,mi:e.member&&null!=(s=null==t?void 0:t.indexOf(e.member))?s:-1,needle:a},e.idx)})})},(e,s)=>e.needle===s.needle&&e.members===s.members&&e.rows.length===s.rows.length&&e.rows.every((e,t)=>e.idx===s.rows[t].idx&&e.line===s.rows[t].line));var ef=t(20422);function ew(e){let{list:s,children:t,gap:a=!1,listWidth:l}=e;return(0,n.jsxs)("div",{className:"msd ".concat(a?"msd-gap":""),style:l?{"--msd-list":l}:void 0,children:[s,t]})}let eN=(e,s)=>x.FH.get("/objects/".concat(e,"/http/file?file=").concat(encodeURIComponent(s))).then(e=>e.content),ey=(e,s,t)=>x.FH.put("/objects/".concat(e,"/http/file"),{file:s,content:t});async function ek(e,s,t){await ey(e,s,t(await eN(e,s)))}function eC(e){let s=["### ".concat(e.name.trim()||"".concat(e.method," request")),"".concat(e.method," ").concat(e.url.trim()),...e.headers.filter(e=>e.name.trim()).map(e=>"".concat(e.name.trim(),": ").concat(e.value))];return e.body.trim()&&s.push("",e.body.replace(/\s+$/,"")),s.join("\n")}function eS(e,s){let t=s;for(;t<e.length&&/^\s+[?&]/.test(e[t]);)t++;let n=t;for(;t<e.length&&e[t].trim()&&!/^#{3,}/.test(e[t].trim());)t++;return{first:n,end:t}}function eA(e,s,t,n){let a=e.split("\n"),{first:l,end:r}=eS(a,s),i=a.slice(l,r).findIndex(e=>e.split(":")[0].trim().toLowerCase()===t.toLowerCase());return i>=0?null===n?a.splice(l+i,1):a[l+i]="".concat(t,": ").concat(n):null!==n&&a.splice(r,0,"".concat(t,": ").concat(n)),a.join("\n")}function eE(e,s,t){let n=e.split("\n"),{first:a,end:l}=eS(n,s),r=n.slice(a,l).find(e=>e.split(":")[0].trim().toLowerCase()===t.toLowerCase());return void 0===r?void 0:r.slice(r.indexOf(":")+1).trim()}let ez={status:["=","!=","2xx","<",">"],time:["<",">"],header:["exists","=","contains"],body:["exists","=","!=","contains",">","<"],text:["contains"]},eF="// hive-am:asserts ",eL=e=>/^-?\d+(\.\d+)?$/.test(e.trim())||/^(true|false|null)$/.test(e.trim())?e.trim():JSON.stringify(e);function eq(e,s){let t=s;for(;t<e.length&&!/^#{3,}/.test(e[t].trim());)t++;return{start:s-1,end:t}}let eO=["GET","POST","PUT","PATCH","DELETE","HEAD","OPTIONS"],eT="\0new";function eM(e){var s,t;let{objectId:l,files:r,defaultFile:i,onClose:c,onCreated:o}=e,{t:d}=(0,j.s9)(),[h,m]=(0,a.useState)("form"),[u,p]=(0,a.useState)(i&&r.some(e=>e.relFile===i)?i:null!=(t=null==(s=r[0])?void 0:s.relFile)?t:eT),[v,g]=(0,a.useState)("requests.http"),[f,w]=(0,a.useState)({name:"",method:"GET",url:"{{host}}/",headers:[],body:""}),[N,y]=(0,a.useState)(""),[k,C]=(0,a.useState)(""),[S,A]=(0,a.useState)(""),[E,z]=(0,a.useState)(!1),F=async()=>{if(!f.url.trim())return void A(d("hw2.new.needUrl"));z(!0),A("");try{let e={...f,headers:N.split("\n").map(e=>{let s=e.indexOf(":");return s>0?{name:e.slice(0,s).trim(),value:e.slice(s+1).trim()}:{name:"",value:""}}).filter(e=>e.name)};if(u===eT){let s,t=v.trim();await (s="".concat(eC(e),"\n"),x.FH.post("/objects/".concat(l,"/http/file"),{file:t,content:s})),o(t)}else await ek(l,u,s=>(function(e,s){let t=e.replace(/\s+$/,"");return"".concat(t).concat(t?"\n\n":"").concat(eC(s),"\n")})(s,e)),o(u)}catch(e){A(e instanceof Error?e.message:"error")}finally{z(!1)}};return(0,n.jsx)(b.aF,{title:d("hw2.new.title"),onClose:c,children:(0,n.jsxs)("div",{className:"stack",children:[(0,n.jsx)(b.$q,{value:h,onChange:m,options:[{id:"form",label:d("hw2.new.form")},{id:"curl",label:d("hw2.new.curl")}]}),"curl"===h?(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(b.D0,{label:d("hw2.new.curl"),hint:d("hw2.new.curlHint"),children:(0,n.jsx)("textarea",{className:"input mono",rows:7,value:k,onChange:e=>C(e.target.value),placeholder:"curl -X POST 'https://…' -H 'Content-Type: application/json' -d '{…}'",autoFocus:!0})}),(0,n.jsxs)("div",{className:"row gap-s",children:[(0,n.jsx)("span",{className:"grow"}),(0,n.jsx)("button",{className:"btn primary",disabled:!k.trim(),onClick:()=>{try{let e=function(e){let s=function(e){let s=[],t="",n=!1,a=e.replace(/\\\r?\n/g," ").replace(/\^\r?\n/g," ");for(let e=0;e<a.length;e++){let r=a[e];if("'"===r){n=!0;let s=a.indexOf("'",e+1),l=s<0?a.length:s;t+=a.slice(e+1,l),e=l;continue}if('"'===r){for(n=!0,e++;e<a.length&&'"'!==a[e];e++)"\\"===a[e]&&e+1<a.length&&/["\\$`]/.test(a[e+1])&&e++,t+=a[e];continue}if("$"===r&&"'"===a[e+1]){for(n=!0,e+=2;e<a.length&&"'"!==a[e];e++)if("\\"===a[e]&&e+1<a.length){var l;t+=null!=(l=({n:"\n",t:" ",r:"\r","'":"'","\\":"\\"})[a[++e]])?l:a[e]}else t+=a[e];continue}if("\\"===r&&e+1<a.length){n=!0,t+=a[++e];continue}if(/\s/.test(r)){n&&(s.push(t),t="",n=!1);continue}n=!0,t+=r}return n&&s.push(t),s}(e.trim());"curl"===s[0]&&s.shift();let t="",n="",a,l=[],r=[],i="",c=!1,o=!1;for(let e=0;e<s.length;e++){let a=s[e],d=()=>{var t;return null!=(t=s[++e])?t:""},h=RegExp("^(--[\\w-]+)=(.*)$","s").exec(a),m=h?h[1]:a,u=()=>h?h[2]:d();if("-X"===m||"--request"===m)t=u().toUpperCase();else if("-H"===m||"--header"===m){let e=u(),s=e.indexOf(":");s>0&&l.push({name:e.slice(0,s).trim(),value:e.slice(s+1).trim()})}else["-d","--data","--data-raw","--data-binary","--data-ascii","--data-urlencode"].includes(m)?r.push(u()):"-u"===m||"--user"===m?i=u():"-b"===m||"--cookie"===m?l.push({name:"Cookie",value:u()}):"-A"===m||"--user-agent"===m?l.push({name:"User-Agent",value:u()}):"-e"===m||"--referer"===m?l.push({name:"Referer",value:u()}):"--url"===m?n=u():"-F"===m||"--form"===m?(c=!0,r.push(u())):"-G"===m||"--get"===m?o=!0:"-I"===m||"--head"===m?t="HEAD":["-o","--output","-m","--max-time","--connect-timeout","-w","--write-out","--proxy","-x","--cacert","--cert","--key","-E"].includes(m)?h||d():a.startsWith("-")||n||(n=a)}if(!n)throw Error("No URL found in the command");if(r.length&&(a=r.join("&")),i&&l.push({name:"Authorization",value:"Basic ".concat(i.replace(":"," "))}),o&&a&&(n+=(n.includes("?")?"&":"?")+a,a=void 0),t||(t=void 0===a||c?"GET":"POST"),c)throw Error("multipart forms (-F) are not supported yet");let d="";try{let e=new URL(n);d="".concat(t," ").concat(e.pathname)}catch(e){d="".concat(t," request")}return void 0===a||l.some(e=>"content-type"===e.name.toLowerCase())||l.push({name:"Content-Type",value:/^\s*[[{]/.test(a)?"application/json":"application/x-www-form-urlencoded"}),{name:d,method:t,url:n,headers:l,body:null!=a?a:""}}(k);w(e),y(e.headers.map(e=>"".concat(e.name,": ").concat(e.value)).join("\n")),m("form"),A("")}catch(e){A(e instanceof Error?e.message:"error")}},children:d("hw2.new.parse")})]})]}):(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(b.D0,{label:d("hw2.new.file"),children:(0,n.jsxs)("div",{className:"row gap-s",children:[(0,n.jsxs)("select",{className:"select",value:u,onChange:e=>p(e.target.value),style:{flex:1},children:[r.map(e=>(0,n.jsx)("option",{value:e.relFile,children:e.relFile},e.relFile)),(0,n.jsx)("option",{value:eT,children:d("hw2.new.newFile")})]}),u===eT&&(0,n.jsx)("input",{className:"input mono",value:v,onChange:e=>g(e.target.value),"aria-label":d("hw2.new.file"),style:{flex:1}})]})}),(0,n.jsx)(b.D0,{label:d("obj.f.name"),children:(0,n.jsx)("input",{className:"input",value:f.name,onChange:e=>w({...f,name:e.target.value}),placeholder:"login",autoFocus:!0})}),(0,n.jsxs)("div",{className:"row gap-s",children:[(0,n.jsx)("select",{className:"select",style:{width:120},value:f.method,onChange:e=>w({...f,method:e.target.value}),"aria-label":"Method",children:eO.map(e=>(0,n.jsx)("option",{children:e},e))}),(0,n.jsx)("input",{className:"input mono",style:{flex:1},value:f.url,onChange:e=>w({...f,url:e.target.value}),placeholder:"{{host}}/path","aria-label":"URL"})]}),(0,n.jsx)(b.D0,{label:d("http.headers"),hint:d("hw2.new.headersHint"),children:(0,n.jsx)("textarea",{className:"input mono",rows:3,value:N,onChange:e=>y(e.target.value),placeholder:"Content-Type: application/json"})}),(0,n.jsx)(b.D0,{label:d("http.requestBody"),children:(0,n.jsx)("textarea",{className:"input mono",rows:4,value:f.body,onChange:e=>w({...f,body:e.target.value})})}),(0,n.jsxs)("div",{className:"row gap-s",children:[(0,n.jsx)("button",{className:"btn ghost",onClick:()=>m("curl"),children:d("hw2.new.curl")}),(0,n.jsx)("span",{className:"grow"}),(0,n.jsx)("button",{className:"btn",onClick:c,children:d("hw2.cancel")}),(0,n.jsx)("button",{className:"btn primary",disabled:E,onClick:()=>void F(),children:d("hw2.new.add")})]})]}),S&&(0,n.jsx)("p",{className:"gx-note err",style:{margin:0},children:S})]})})}let eR=(0,c.A)("Upload",[["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["polyline",{points:"17 8 12 3 7 8",key:"t8dd8p"}],["line",{x1:"12",x2:"12",y1:"3",y2:"15",key:"widbto"}]]);var eH=t(37165);function eI(e){let{objectId:s,file:t,env:r,onClose:i,onDone:c}=e,{t:o}=(0,j.s9)(),[d,h]=(0,a.useState)(""),[m,p]=(0,a.useState)(!1),[v,g]=(0,a.useState)(""),[f,w]=(0,a.useState)([]),[N,y]=(0,a.useState)(!1),k=(0,a.useRef)(!1),C=null,S="";if(d.trim())try{(C=function(e){var s,t,n,a;let l=e.trim();if(!l)throw Error("No data");if(l.startsWith("[")||l.startsWith("{")){let e=JSON.parse(l),s=Array.isArray(e)?e:[e];if(!s.every(e=>e&&"object"==typeof e&&!Array.isArray(e)))throw Error("A JSON array of objects is expected");let t=[...new Set(s.flatMap(e=>Object.keys(e)))];return{columns:t,rows:s.map(e=>Object.fromEntries(t.map(s=>[s,void 0===e[s]||null===e[s]?"":"object"==typeof e[s]?JSON.stringify(e[s]):String(e[s])])))}}let r=l.split(/\r?\n/,1)[0],i=(null!=(n=null==(s=r.match(/;/g))?void 0:s.length)?n:0)>(null!=(a=null==(t=r.match(/,/g))?void 0:t.length)?a:0)?";":r.includes(" ")&&!r.includes(",")?" ":",",c=[],o=[],d="",h=!1;for(let e=0;e<l.length;e++){let s=l[e];if(h){'"'===s?'"'===l[e+1]?(d+='"',e++):h=!1:d+=s;continue}'"'===s?h=!0:s===i?(o.push(d),d=""):"\n"===s||"\r"===s?("\r"===s&&"\n"===l[e+1]&&e++,o.push(d),d="",o.some(e=>""!==e)&&c.push(o),o=[]):d+=s}o.push(d),o.some(e=>""!==e)&&c.push(o);let m=c[0].map(e=>e.trim());if(m.some(e=>!/^[A-Za-z_][\w.-]{0,80}$/.test(e)))throw Error("The first line must be the variable names (letters, numbers, _ . -)");return{columns:m,rows:c.slice(1).map(e=>Object.fromEntries(m.map((s,t)=>{var n;return[s,null!=(n=e[t])?n:""]})))}}(d)).rows.length>200&&(S=o("hw2.batch.tooMany",{max:200}),C=null)}catch(e){S=e instanceof Error?e.message:"error"}let A=async()=>{if(!C)return;g(""),w([]),y(!0),k.current=!1;let e=C.columns,n=[];try{for(let a of C.rows){if(k.current)break;for(let t of e)await x.FH.post("/objects/".concat(s,"/http/session"),{name:t,value:a[t]});let l=[],i=!1;for(let e of t.requests){if(k.current||i&&m){l.push({ok:!1,tests:"",error:o("hw2.batch.skipped")});continue}try{let n=await x.FH.post("/objects/".concat(s,"/http/run"),{file:t.relFile,index:e.index,env:r||void 0}),a=n.tests.filter(e=>!e.passed).length+ +!!n.scriptError,c=n.status<400&&0===a;c||(i=!0),l.push({status:n.status,ok:c,tests:n.tests.length?"".concat(n.tests.length-n.tests.filter(e=>!e.passed).length,"/").concat(n.tests.length):""})}catch(e){i=!0,l.push({ok:!1,tests:"",error:e instanceof Error?e.message:"error"})}}n.push(l),w([...n])}}catch(e){g(e instanceof Error?e.message:"error")}finally{for(let t of e)await x.FH.del("/objects/".concat(s,"/http/session?name=").concat(encodeURIComponent(t))).catch(()=>void 0);y(!1),c()}},E=f.filter(e=>e.every(e=>e.ok)).length;return(0,n.jsx)(b.aF,{title:o("hw2.batch.title",{file:t.relFile}),onClose:()=>{k.current=!0,i()},children:(0,n.jsxs)("div",{className:"stack",children:[(0,n.jsxs)("div",{className:"field",children:[(0,n.jsxs)("div",{className:"row gap-s",children:[(0,n.jsx)("label",{className:"label",htmlFor:"batch-data",children:o("hw2.batch.data")}),(0,n.jsx)(eH.B,{size:"sm",label:o("common.help"),title:o("hw2.help.how"),children:o("hw2.batch.hint")})]}),(0,n.jsx)("textarea",{id:"batch-data",className:"input mono",rows:6,value:d,onChange:e=>h(e.target.value),placeholder:"user,passwd\nana,s3cret\nluis,otra",spellCheck:!1,disabled:N}),(0,n.jsx)("span",{className:"muted small",children:o("hw2.batch.format")})]}),(0,n.jsxs)("div",{className:"row gap-s wrap",children:[(0,n.jsxs)("label",{className:"btn sm",children:[(0,n.jsx)(eR,{size:14}),o("hw2.batch.file"),(0,n.jsx)("input",{type:"file",accept:".csv,.json,.txt,text/csv,application/json",hidden:!0,onChange:e=>{var s,t;(t=null==(s=e.target.files)?void 0:s[0])&&t.text().then(h)}})]}),(0,n.jsx)(b.Tl,{checked:m,onChange:p,label:o("hw2.batch.stopRow")}),(0,n.jsx)("span",{className:"grow"}),C&&(0,n.jsx)("span",{className:"muted small",children:o("hw2.batch.rows",{rows:C.rows.length,cols:C.columns.join(", ")})}),N?(0,n.jsxs)("button",{className:"btn",onClick:()=>{k.current=!0},children:[(0,n.jsx)(l.A,{size:14}),o("hw2.batch.stop")]}):(0,n.jsxs)("button",{className:"btn primary",disabled:!C||!C.rows.length,onClick:()=>void A(),children:[(0,n.jsx)(u.A,{size:14}),o("hw2.batch.run")]})]}),S&&(0,n.jsx)("p",{className:"gx-note err",style:{margin:0},children:S}),v&&(0,n.jsx)("p",{className:"gx-note err",style:{margin:0},children:v}),f.length>0&&C&&(0,n.jsxs)(n.Fragment,{children:[(0,n.jsxs)("p",{className:"small",style:{margin:0},children:[(0,n.jsx)("b",{children:o("hw2.batch.summary",{ok:E,total:f.length})}),N?" …":""]}),(0,n.jsx)("div",{style:{overflow:"auto",maxHeight:280},children:(0,n.jsxs)("table",{className:"cm-table",children:[(0,n.jsx)("thead",{children:(0,n.jsxs)("tr",{children:[(0,n.jsx)("th",{children:"#"}),C.columns.slice(0,2).map(e=>(0,n.jsx)("th",{children:e},e)),t.requests.map(e=>(0,n.jsx)("th",{title:e.name,children:e.name.slice(0,18)},e.id))]})}),(0,n.jsx)("tbody",{children:f.map((e,s)=>(0,n.jsxs)("tr",{children:[(0,n.jsx)("td",{children:s+1}),C.columns.slice(0,2).map(e=>(0,n.jsx)("td",{className:"mono small",children:C.rows[s][e]},e)),e.map((e,s)=>{var t;return(0,n.jsx)("td",{title:null!=(t=e.error)?t:"",children:(0,n.jsxs)("span",{className:"hr-st ".concat(e.ok?"ok":"err"),children:[e.error?"—":e.status,e.tests?" \xb7 ".concat(e.tests):""]})},s)})]},s))})]})})]})]})})}let eD=e=>{try{return JSON.parse(e)}catch(e){return}},eU="default",eB=e=>"GET"===e?"get":"POST"===e?"post":"DELETE"===e?"del":"PUT"===e||"PATCH"===e?"put":"other",e$=e=>e>=200&&e<300?"ok":e>=300&&e<400?"warn":"err",eW=e=>e?e.run?(e=>!!(null==e?void 0:e.run)&&(e.run.tests.some(e=>!e.passed)||!!e.run.scriptError))(e)?"err":e$(e.run.status):"err":"";function eP(e){if(/json/i.test(e.contentType)||/^\s*[[{]/.test(e.body))try{return JSON.stringify(JSON.parse(e.body),null,2)}catch(e){}return e.body}var eJ=t(72705);function e_(e){let{value:s,refBase:t}=e;return(0,n.jsx)("div",{className:"jt mono",children:(0,n.jsx)(eK,{k:null,v:s,path:"$",refBase:t,depth:0})})}function eK(e){let{k:s,v:t,path:l,refBase:r,depth:i}=e,{t:c}=(0,j.s9)(),o=null!==t&&"object"==typeof t,[d,h]=(0,a.useState)(i<2),[m,u]=(0,a.useState)(!1),x=null===s?null:(0,n.jsxs)("span",{className:"jt-k",children:["number"==typeof s?s:JSON.stringify(s),(0,n.jsx)("i",{children:": "})]}),p=(0,n.jsx)("button",{type:"button",className:"jt-copy",onClick:()=>{var e;let s=r?"{{".concat(r,".").concat(l,"}}"):"string"==typeof t?t:JSON.stringify(t);null==(e=navigator.clipboard)||e.writeText(s),u(!0),setTimeout(()=>u(!1),1200)},title:c(r?"hw2.copyRef":"iv.copy"),"aria-label":c(r?"hw2.copyRef":"iv.copy"),children:m?c("hw2.copied"):(0,n.jsx)(em.A,{size:11})});if(!o){let e="string"==typeof t?"jt-s":"number"==typeof t?"jt-n":"jt-b";return(0,n.jsxs)("div",{className:"jt-row",children:[x,(0,n.jsx)("span",{className:e,children:"string"==typeof t?JSON.stringify(t.length>160?"".concat(t.slice(0,160),"…"):t):String(t)}),p]})}let b=Array.isArray(t)?t.map((e,s)=>[s,e]):Object.entries(t),v=Array.isArray(t);return(0,n.jsxs)("div",{children:[(0,n.jsxs)("div",{className:"jt-row",children:[(0,n.jsx)("button",{type:"button",className:"jt-fold",onClick:()=>h(e=>!e),"aria-expanded":d,children:d?(0,n.jsx)(R.A,{size:12}):(0,n.jsx)(H.A,{size:12})}),x,(0,n.jsx)("span",{className:"jt-p",children:v?"[":"{"}),!d&&(0,n.jsxs)("span",{className:"muted",children:[" ",b.length," ","…"," "]}),!d&&(0,n.jsx)("span",{className:"jt-p",children:v?"]":"}"}),p]}),d&&(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("div",{className:"jt-kids",children:b.map(e=>{let[s,t]=e;return(0,n.jsx)(eK,{k:s,v:t,path:v?"".concat(l,"[").concat(s,"]"):/^[A-Za-z_]\w*$/.test(String(s))?"".concat(l,".").concat(s):"".concat(l,'["').concat(s,'"]'),refBase:r,depth:i+1},String(s))})}),(0,n.jsx)("div",{className:"jt-row",children:(0,n.jsx)("span",{className:"jt-p",children:v?"]":"}"})})]})]})}let eV=e=>{var s,t;let n=null!=(t=null==(s=e.run)?void 0:s.body)?t:"";try{return JSON.stringify(JSON.parse(n),null,2)}catch(e){return n}};function eG(e){var s,t,l,r;let{before:i,after:c}=e,{t:o}=(0,j.s9)(),d=(0,a.useMemo)(()=>(function(e,s){if(e.length*s.length>4e6)return[...e.map(e=>({t:"-",s:e})),...s.map(e=>({t:"+",s:e}))];let t=e.length,n=s.length,a=Array.from({length:t+1},()=>new Uint32Array(n+1));for(let l=t-1;l>=0;l--)for(let t=n-1;t>=0;t--)a[l][t]=e[l]===s[t]?a[l+1][t+1]+1:Math.max(a[l+1][t],a[l][t+1]);let l=[],r=0,i=0;for(;r<t&&i<n;)e[r]===s[i]?(l.push({t:" ",s:e[r]}),r++,i++):a[r+1][i]>=a[r][i+1]?l.push({t:"-",s:e[r++]}):l.push({t:"+",s:s[i++]});for(;r<t;)l.push({t:"-",s:e[r++]});for(;i<n;)l.push({t:"+",s:s[i++]});return l})(eV(i).split("\n"),eV(c).split("\n")),[i,c]),h=Object.fromEntries((null!=(l=null==(s=i.run)?void 0:s.headers)?l:[]).map(e=>[e.name.toLowerCase(),e.value])),m=Object.fromEntries((null!=(r=null==(t=c.run)?void 0:t.headers)?r:[]).map(e=>[e.name.toLowerCase(),e.value])),u=/^(date|age|etag|x-request-id|x-correlation-id|set-cookie|server-timing|content-length)$/,x=[...new Set([...Object.keys(h),...Object.keys(m)])].filter(e=>h[e]!==m[e]&&!u.test(e)),p=d.filter(e=>" "!==e.t).length,b=[],v=[],g=()=>{v.length>8?b.push(...v.slice(0,3),{fold:v.length-6},...v.slice(-3)):b.push(...v),v=[]};for(let e of d)" "===e.t?v.push(e):(g(),b.push(e));g();let f=e=>e.run?"".concat(e.run.status," \xb7 ").concat(e.run.durationMs," ms \xb7 ").concat((0,q.zi)(e.run.size)):o("hw2.diff.error");return(0,n.jsxs)("div",{className:"rd",children:[(0,n.jsxs)("div",{className:"rd-head",children:[(0,n.jsxs)("div",{children:[(0,n.jsxs)("span",{className:"muted small",children:[o("hw2.diff.before")," \xb7 ",(0,q.Xd)(i.at)]}),(0,n.jsx)("div",{className:"mono",children:f(i)})]}),(0,n.jsxs)("div",{children:[(0,n.jsxs)("span",{className:"muted small",children:[o("hw2.diff.after")," \xb7 ",(0,q.Xd)(c.at)]}),(0,n.jsx)("div",{className:"mono",children:f(c)})]})]}),x.length>0&&(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("div",{className:"eyebrow",children:o("http.headers")}),(0,n.jsx)("div",{className:"rd-hdrs mono small",children:x.map(e=>(0,n.jsxs)("div",{children:[(0,n.jsx)("b",{children:e}),": ",void 0!==h[e]&&(0,n.jsx)("span",{className:"rd-del",children:h[e]})," ",void 0!==m[e]&&(0,n.jsx)("span",{className:"rd-add",children:m[e]})]},e))})]}),(0,n.jsxs)("div",{className:"eyebrow",style:{marginTop:10},children:[o("hw2.diff.body")," \xb7 ",0===p?o("hw2.diff.same"):o("hw2.diff.lines",{count:p})]}),(0,n.jsx)("div",{className:"rd-body mono",children:b.map((e,s)=>"fold"in e?(0,n.jsx)("div",{className:"rd-fold",children:o("hw2.diff.fold",{count:e.fold})},s):(0,n.jsxs)("div",{className:"rd-l ".concat("+"===e.t?"add":"-"===e.t?"del":""),children:[(0,n.jsx)("span",{children:e.t}),e.s||"\xa0"]},s))})]})}function eX(e){let{ws:s}=e,{t}=(0,j.s9)(),{kept:a,adding:l,setAdding:r,newName:i,setNewName:c,newValue:o,setNewValue:d,setValue:h,forget:m,setConfirm:u}=s;return(0,n.jsxs)("div",{className:"hw-session-body hw-session-pad",children:[(0,n.jsxs)("div",{className:"row gap-s",children:[(0,n.jsx)("b",{children:t("hw.session")}),(0,n.jsx)(eH.B,{size:"sm",label:t("common.help"),title:t("hw2.help.how"),children:t("hw.session.hint")})]}),0===a.length&&!l&&(0,n.jsx)("p",{className:"muted small res-m0",children:t("hw.session.empty")}),a.map(e=>{let[s,a]=e;return(0,n.jsxs)("div",{className:"hw-kv",children:[(0,n.jsx)("code",{className:"mono",title:s,children:s}),(0,n.jsx)("span",{className:"mono val",title:a,children:a}),(0,n.jsx)("button",{className:"btn ghost icon sm",onClick:()=>void m(s),"aria-label":t("hw.session.forget"),title:t("hw.session.forget"),children:(0,n.jsx)(U.A,{size:13})})]},s)}),l?(0,n.jsxs)("div",{className:"hw-kv-add",children:[(0,n.jsx)("input",{className:"input mono",placeholder:t("hw.session.name"),value:i,onChange:e=>c(e.target.value),"aria-label":t("hw.session.name")}),(0,n.jsx)("input",{className:"input mono",placeholder:t("hw.session.value"),value:o,onChange:e=>d(e.target.value),onKeyDown:e=>{"Enter"===e.key&&h()},"aria-label":t("hw.session.value")}),(0,n.jsx)("button",{className:"btn primary icon sm",onClick:h,"aria-label":t("hw.session.add"),children:(0,n.jsx)(eJ.A,{size:14})}),(0,n.jsx)("button",{className:"btn ghost icon sm",onClick:()=>r(!1),"aria-label":t("common.cancel"),children:(0,n.jsx)(U.A,{size:14})})]}):(0,n.jsxs)("div",{className:"row gap-s mt-s",children:[(0,n.jsxs)("button",{className:"btn sm",onClick:()=>r(!0),children:[(0,n.jsx)(C.A,{size:13}),t("hw.session.add")]}),a.length>0&&(0,n.jsxs)("button",{className:"btn ghost sm",onClick:()=>u("session"),children:[(0,n.jsx)(et.A,{size:13}),t("hw.session.clear")]})]})]})}function eZ(e){let{ws:s}=e,{t}=(0,j.s9)(),{o:a,confirm:l,setConfirm:r,setHist:i,setHistSel:c,setSession:o}=s;return l&&(0,n.jsx)(b.TM,{title:t("history"===l?"hw2.history.clear":"hw.session.clear"),confirmLabel:t("history"===l?"hw2.history.clear":"hw.session.clear"),danger:!0,body:t("history"===l?"rs.confirm.history":"rs.confirm.session"),onClose:()=>r(null),onConfirm:()=>"history"===l?x.FH.del("/objects/".concat(a.id,"/http/history")).then(()=>{i([]),c(null)}):x.FH.del("/objects/".concat(a.id,"/http/session")).then(o)})}function eQ(e){var s,t,a,l;let{ws:r,scan:i,onGoRequests:c}=e,{t:o}=(0,j.s9)(),{hist:d,histSel:h,setHistSel:m,cmp:u,setCmp:x,setConfirm:p,setFile:b,setSel:v,setTab:g}=r,f=null!=(a=d.find(e=>e.n===h))?a:null,w=(null==f?void 0:f.run)?eD(f.run.body):void 0,N=e=>{var s;return null==(s=i.files.find(s=>s.relFile===e.file))?void 0:s.requests[e.index]},y=f?d.find(e=>e.n<f.n&&e.file===f.file&&e.index===f.index&&e.run):void 0,k="prev"===u?y:"number"==typeof u?d.find(e=>e.n===u):void 0;return(0,n.jsxs)(ew,{list:(0,n.jsxs)("aside",{className:"hw-list",children:[(0,n.jsxs)("div",{className:"hw-env",children:[(0,n.jsx)("b",{className:"grow",children:o("hw2.history")}),d.length>0&&(0,n.jsxs)("button",{className:"btn ghost sm",onClick:()=>p("history"),children:[(0,n.jsx)(et.A,{size:13}),o("hw2.history.clear")]})]}),(0,n.jsxs)("div",{className:"hr-reqs",children:[0===d.length&&(0,n.jsx)("p",{className:"gx-note",children:o("hw2.history.empty")}),d.map(e=>(0,n.jsxs)("button",{className:"hr-req ".concat(h===e.n?"sel":""),onClick:()=>{m(e.n),x(null)},children:[(0,n.jsx)("span",{className:"hr-m ".concat(eB(e.method||"GET")),children:e.method||"?"}),(0,n.jsx)("span",{className:"nm",children:e.name}),(0,n.jsx)("span",{className:"muted small",children:(0,q.v7)(e.at)}),(0,n.jsx)("i",{className:"hr-dot ".concat(e.run?e.run.tests.some(e=>!e.passed)||e.run.scriptError?"err":e$(e.run.status):"err"),title:e.run?String(e.run.status):e.error})]},e.n))]})]}),children:[(0,n.jsxs)("section",{className:"hr-detail hw-scroll",children:[f&&(0,n.jsxs)("div",{className:"hr-pre",children:[(0,n.jsxs)("div",{className:"row gap-s wrap res-mb",children:[(0,n.jsx)("span",{className:"hr-m ".concat(eB(f.method||"GET")),children:f.method}),(0,n.jsx)("code",{className:"mono grow hw-wrap",children:null!=(l=null==(s=f.run)?void 0:s.request.url)?l:f.name}),f.run&&(0,n.jsxs)(n.Fragment,{children:[(0,n.jsxs)("b",{className:"hr-st ".concat(e$(f.run.status)),children:[f.run.status," ",f.run.statusText]}),(0,n.jsxs)("span",{className:"muted small",children:[o("http.time",{ms:f.run.durationMs})," \xb7 ",(0,q.zi)(f.run.size)]})]}),N(f)&&(0,n.jsx)("button",{className:"btn sm",onClick:()=>{b(f.file),v(N(f)),g("body"),null==c||c()},children:o("hw2.history.open")})]}),(0,n.jsxs)("div",{className:"row gap-s wrap small res-mb",children:[(0,n.jsxs)("span",{className:"muted",children:[f.file,f.env?" \xb7 ".concat(f.env):""]}),(0,n.jsx)("span",{className:"grow"}),(0,n.jsxs)("select",{className:"select hw-cmp",value:String(null!=u?u:""),onChange:e=>x(""===e.target.value?null:"prev"===e.target.value?"prev":Number(e.target.value)),"aria-label":o("hw2.diff.with"),children:[(0,n.jsx)("option",{value:"",children:o("hw2.diff.with")}),(0,n.jsx)("option",{value:"prev",disabled:!y,children:o("hw2.diff.prev")}),d.filter(e=>e.n!==f.n&&e.run).map(e=>(0,n.jsxs)("option",{value:e.n,children:[e.name," \xb7 ",(0,q.Xd)(e.at)," \xb7 ",e.run.status]},e.n))]})]}),"prev"===u&&!y&&(0,n.jsx)("p",{className:"muted small",children:o("hw2.diff.noPrev")}),k&&f.run&&k.run?k.at<=f.at?(0,n.jsx)(eG,{before:k,after:f}):(0,n.jsx)(eG,{before:f,after:k}):(0,n.jsxs)(n.Fragment,{children:[f.error&&(0,n.jsx)("div",{className:"gx-banner err hw-pre",children:f.error}),f.run&&f.run.tests.map((e,s)=>(0,n.jsxs)("div",{className:"hw-test ".concat(e.passed?"ok":"err"),children:[e.passed?(0,n.jsx)(eJ.A,{size:14}):(0,n.jsx)(U.A,{size:14}),(0,n.jsx)("b",{children:e.name}),e.message&&(0,n.jsxs)("span",{className:"muted",children:[": ",e.message]})]},s)),f.run&&!f.run.binary&&f.run.body&&(void 0!==w?(0,n.jsx)(e_,{value:w,refBase:(null==(t=N(f))?void 0:t.named)?"".concat(N(f).named,".response.body"):void 0}):(0,n.jsx)("pre",{children:eP(f.run)}))]})]}),(0,n.jsx)(eX,{ws:r})]}),(0,n.jsx)(eZ,{ws:r})]})}var eY=t(89075),e0=t(25661),e1=t(55267);let e2=(0,c.A)("KeyRound",[["path",{d:"M2.586 17.414A2 2 0 0 0 2 18.828V21a1 1 0 0 0 1 1h3a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h1a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h.172a2 2 0 0 0 1.414-.586l.814-.814a6.5 6.5 0 1 0-4-4z",key:"1s6t7t"}],["circle",{cx:"16.5",cy:"7.5",r:".5",fill:"currentColor",key:"w0ekpg"}]]);function e4(e){let{ws:s,scan:t,onOpenVars:a}=e,{t:l}=(0,j.s9)(),{env:r,setEnv:i,q:c,setQ:o,file:d,setFile:h,sel:m,setSel:u,open:x,setOpen:p,results:v,busy:g,setTab:f,setCreating:w,load:N,loadSession:y,files:k,summary:S,runFile:A}=s;return(0,n.jsxs)("aside",{className:"hw-list",children:[(0,n.jsxs)("div",{className:"hw-env",children:[(0,n.jsxs)("label",{className:"row gap-s small grow",children:[(0,n.jsx)("span",{className:"muted",children:l("http.env")}),(0,n.jsxs)("select",{className:"select hw-envsel",value:r,onChange:e=>i(e.target.value),children:[(0,n.jsx)("option",{value:"",children:l("http.noEnv")}),t.environments.map(e=>(0,n.jsx)("option",{value:e,children:e},e))]})]}),(0,n.jsx)("button",{className:"btn ghost icon sm",onClick:()=>w(!0),"aria-label":l("hw2.new.title"),title:l("hw2.new.title"),children:(0,n.jsx)(C.A,{size:15})}),(0,n.jsx)("button",{className:"btn ghost icon sm",onClick:()=>{N(),y()},"aria-label":l("http.rescan"),title:l("http.rescan"),children:(0,n.jsx)(eY.A,{size:15})})]}),0===t.envFiles.length&&0===t.environments.length&&(0,n.jsxs)("p",{className:"muted small hw-hint",children:[l("hw.noEnvFile")," ",(0,n.jsx)("button",{className:"btn sm",onClick:a,children:l("hw.editVars")})]}),(0,n.jsx)("div",{className:"gx-filter",children:(0,n.jsx)(b.DO,{value:c,onChange:o,placeholder:l("http.search"),label:l("http.search")})}),(0,n.jsxs)("div",{className:"hr-reqs",children:[0===k.length&&(0,n.jsx)("p",{className:"gx-note",children:t.files.length?l("ow.noMatch",{query:c}):l("http.empty")}),k.map(e=>{var s;let t=x.has(e.relFile)||!!c;return(0,n.jsxs)("div",{children:[(0,n.jsxs)("div",{className:"hw-file ".concat(d!==e.relFile||m?"":"sel"),children:[(0,n.jsxs)("button",{className:"hw-fbtn",onClick:()=>{h(e.relFile),u(null),p(s=>{let t=new Set(s);return t.has(e.relFile)?t.delete(e.relFile):t.add(e.relFile),t})},children:[t?(0,n.jsx)(R.A,{size:14}):(0,n.jsx)(H.A,{size:14}),(0,n.jsx)(e0.A,{size:14,className:"muted"}),(0,n.jsx)("span",{className:"mono nm",title:e.relFile,children:e.relFile}),(0,n.jsx)("span",{className:"muted small",children:null!=(s=S(e))?s:e.requests.length})]}),(0,n.jsx)("button",{className:"btn ghost icon sm",disabled:!!g,onClick:()=>void A(e),"aria-label":l("http.runFile"),title:l("http.runFile"),children:(0,n.jsx)(e1.A,{size:15})})]}),t&&e.requests.map(s=>{let t=v[s.id],a=eW(t);return(0,n.jsxs)("button",{className:"hr-req hr-req-sub ".concat((null==m?void 0:m.id)===s.id?"sel":""),onClick:()=>{h(e.relFile),u(s),f("body")},children:[(0,n.jsx)("span",{className:"hr-m ".concat(eB(s.method)),children:s.method}),(0,n.jsx)("span",{className:"nm",children:s.name}),s.script&&(0,n.jsx)(e2,{size:12,className:"muted","aria-label":l("hw.script")}),g===s.id?(0,n.jsx)("span",{className:"muted small",children:"…"}):a?(0,n.jsx)("i",{className:"hr-dot ".concat(a),title:(null==t?void 0:t.run)?"".concat(t.run.status).concat(t.run.tests.length?" \xb7 ".concat(l("hw.tests.count",{ok:t.run.tests.filter(e=>e.passed).length,total:t.run.tests.length})):""):null==t?void 0:t.error}):null]},s.id)})]},e.relFile)}),t.truncated&&(0,n.jsx)("p",{className:"gx-note",children:l("http.truncatedFiles")})]})]})}var e3=t(48180);let e5=[{key:"tools",formats:[["curl","cURL"],["wget","wget"],["httpie","HTTPie"],["powershell","PowerShell"]]},{key:"langs",formats:[["fetch","JavaScript (fetch)"],["axios","Node (axios)"],["python","Python (requests)"],["go","Go"],["php","PHP (cURL)"],["java","Java (HttpClient)"],["csharp","C# (HttpClient)"],["ruby","Ruby (net/http)"],["rust","Rust (reqwest)"]]},{key:"raw",formats:[["http","HTTP"]]}];function e9(e){let{objectId:s,file:t,index:l,env:r}=e,{t:i}=(0,j.s9)(),[c,o]=(0,a.useState)(!1),[d,h]=(0,a.useState)(null),[m,u]=(0,a.useState)(""),p=async e=>{u("");try{let n=await x.FH.get("/objects/".concat(s,"/http/export?file=").concat(encodeURIComponent(t),"&index=").concat(l,"&format=").concat(e).concat(r?"&env=".concat(encodeURIComponent(r)):"").concat(c?"&redact=1":""));await navigator.clipboard.writeText(n.text),h(e),setTimeout(()=>h(null),1500),n.unresolved.length&&u(i("hw2.copyAs.unresolved",{names:n.unresolved.map(e=>"{{".concat(e,"}}")).join(", ")}))}catch(e){u(e instanceof Error?e.message:"error")}};return(0,n.jsx)(B.W1,{label:i("hw2.copyAs"),icon:(0,n.jsx)(em.A,{size:14}),children:()=>(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(B.iz,{checked:c,onChange:o,hint:i("hw2.copyAs.redact.hint"),children:i("hw2.copyAs.redact")}),(0,n.jsx)(B.MU,{}),e5.map(e=>(0,n.jsx)(B.rX,{label:i("hw2.copyAs.g.".concat(e.key)),children:e.formats.map(e=>{let[s,t]=e;return(0,n.jsx)(B.Dr,{icon:d===s?(0,n.jsx)(eJ.A,{size:15}):void 0,onClick:()=>void p(s),children:t},s)})},e.key)),m&&(0,n.jsx)("p",{className:"muted small menu-note",children:m})]})})}function e7(e){let{text:s}=e;return(0,n.jsx)(n.Fragment,{children:s.split(/(\{\{[^}]+\}\})/g).map((e,s)=>e.startsWith("{{")?(0,n.jsx)("span",{className:"hr-var",children:e},s):e)})}var e6=t(10969);let e8=e=>Array.isArray(e)?e:e&&"object"==typeof e?Object.values(e):[],se=(e,s,t)=>"=="===s?e===t||String(e)===String(t):"!="===s?e!==t&&String(e)!==String(t):">"===s?Number(e)>Number(t):"<"===s?Number(e)<Number(t):">="===s?Number(e)>=Number(t):Number(e)<=Number(t);var ss=t(66654);let st={session:"sess",file:"file",envfile:"env",hive:"hive",response:"resp",dynamic:"dyn",missing:"miss"};function sn(e,s,t){let n="$shared"===t?e("iv.shared"):t;return e("iv.source.".concat(s),{from:"envfile"===s||"hive"===s?n:t})}function sa(e){let{vars:s,onSet:t,onForget:l,onRun:r,compact:i=!1}=e,{t:c}=(0,j.s9)(),[o,d]=(0,a.useState)(""),[h,m]=(0,a.useState)(!1),[u,x]=(0,a.useState)({}),[p,b]=(0,a.useState)(null),[v,g]=(0,a.useState)(""),f=(0,a.useMemo)(()=>s.filter(e=>{var s;return(!h||"missing"===e.source)&&(!o||e.name.toLowerCase().includes(o.toLowerCase())||(null!=(s=e.value)?s:"").toLowerCase().includes(o.toLowerCase()))}),[s,o,h]),w=s.filter(e=>"missing"===e.source).length,N=()=>{p&&(null==t||t(p,v)),b(null)};return(0,n.jsxs)("div",{className:"ivt",children:[!i&&(0,n.jsxs)("div",{className:"ivt-bar",children:[(0,n.jsxs)("div",{className:"search",children:[(0,n.jsx)(er.A,{size:14}),(0,n.jsx)("input",{className:"input",placeholder:c("iv.filter"),value:o,onChange:e=>d(e.target.value),"aria-label":c("iv.filter")})]}),w>0&&(0,n.jsxs)("label",{className:"row gap-s small",children:[(0,n.jsx)("input",{type:"checkbox",checked:h,onChange:e=>m(e.target.checked)}),c("iv.onlyMissing")," \xb7 ",w]})]}),0===f.length?(0,n.jsx)("p",{className:"muted small",style:{margin:8},children:c("iv.empty")}):(0,n.jsxs)("table",{className:"ivt-table",children:[(0,n.jsx)("thead",{children:(0,n.jsxs)("tr",{children:[(0,n.jsx)("th",{children:c("iv.col.name")}),(0,n.jsx)("th",{children:c("iv.col.value")}),(0,n.jsx)("th",{children:c("iv.col.source")}),!i&&(0,n.jsx)("th",{children:c("iv.col.used")}),(0,n.jsx)("th",{})]})}),(0,n.jsx)("tbody",{children:f.map(e=>{var s,a;let o=e.secret&&!u[e.name];return(0,n.jsxs)("tr",{className:"ivt-row ".concat("missing"===e.source?"miss":""),children:[(0,n.jsx)("td",{children:(0,n.jsx)("code",{className:"mono ivt-name",children:e.name.replace(/^\$/,"$")})}),(0,n.jsx)("td",{className:"ivt-val",children:p===e.name?(0,n.jsxs)("span",{className:"row gap-s",children:[(0,n.jsx)("input",{className:"input mono",autoFocus:!0,value:v,placeholder:c("hw.session.value"),onChange:e=>g(e.target.value),onKeyDown:e=>{"Enter"===e.key&&N(),"Escape"===e.key&&b(null)}}),(0,n.jsx)("button",{className:"btn primary icon sm",onClick:N,"aria-label":c("iv.save"),children:(0,n.jsx)(eJ.A,{size:14})}),(0,n.jsx)("button",{className:"btn ghost icon sm",onClick:()=>b(null),"aria-label":c("hw2.cancel"),children:(0,n.jsx)(U.A,{size:14})})]}):"missing"===e.source?(0,n.jsx)("span",{className:"muted",children:"—"}):"dynamic"===e.source?(0,n.jsx)("span",{className:"muted small",children:c("iv.generated")}):e.hidden?(0,n.jsxs)("span",{className:"muted small",title:c("iv.hidden"),children:["•••••• ",(0,n.jsxs)("i",{children:["(",c("iv.hidden"),")"]})]}):(0,n.jsx)("span",{className:"mono ivt-text",title:o?void 0:null!=(a=e.value)?a:"",children:o?"••••••••":e.value})}),(0,n.jsxs)("td",{children:[(0,n.jsx)("span",{className:"ivt-src ".concat(st[e.source]),children:sn(c,e.source,e.from)}),e.overridden.length>0&&(0,n.jsx)("div",{className:"ivt-over",children:e.overridden.map((s,t)=>(0,n.jsxs)("div",{className:"small",children:[(0,n.jsx)("b",{children:sn(c,s.source,s.from)})," ",c("iv.alsoDefines"),null!==s.value&&(0,n.jsxs)(n.Fragment,{children:[" ",(0,n.jsx)("code",{className:"mono",children:s.value})]})," — ",c("iv.winsOver",{who:sn(c,e.source,e.from)})]},t))}),"missing"===e.source&&(null==(s=e.hint)?void 0:s.startsWith("run:"))&&r&&(0,n.jsx)("button",{className:"btn sm",style:{marginTop:4},onClick:()=>r(e.hint.slice(4)),children:c("iv.run",{name:e.hint.slice(4)})})]}),!i&&(0,n.jsx)("td",{className:"muted small",children:e.usedBy||""}),(0,n.jsxs)("td",{className:"ivt-act",children:[e.secret&&null!==e.value&&!e.hidden&&(0,n.jsx)("button",{className:"btn ghost icon sm",onClick:()=>x(s=>({...s,[e.name]:!s[e.name]})),"aria-label":c("iv.reveal"),title:c("iv.reveal"),children:u[e.name]?(0,n.jsx)(_.A,{size:14}):(0,n.jsx)(K.A,{size:14})}),t&&"dynamic"!==e.source&&"response"!==e.source&&!e.name.includes(".")&&p!==e.name&&(0,n.jsx)("button",{className:"btn ghost icon sm",onClick:()=>{var s;b(e.name),g("session"!==e.source&&e.secret?"":null!=(s=e.value)?s:"")},"aria-label":c("iv.override"),title:"".concat(c("iv.override"),". ").concat(c("iv.override.hint")),children:(0,n.jsx)(ss.A,{size:14})}),l&&"session"===e.source&&(0,n.jsx)("button",{className:"btn ghost icon sm",onClick:()=>l(e.name),"aria-label":c("iv.forget"),title:c("iv.forget"),children:(0,n.jsx)(U.A,{size:14})})]})]},e.name)})})]})]})}let sl=(0,c.A)("Save",[["path",{d:"M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z",key:"1c8476"}],["path",{d:"M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7",key:"1ydtos"}],["path",{d:"M7 3v4a1 1 0 0 0 1 1h7",key:"t51u73"}]]),sr=["status","time","header","body","text"],si=new Set(["exists","2xx"]);function sc(e){let{objectId:s,file:t,line:l,onSaved:r}=e,{t:i}=(0,j.s9)(),c=(0,b.dj)(),[o,d]=(0,a.useState)([]),[h,m]=(0,a.useState)("[]"),[u,x]=(0,a.useState)(!1),[p,v]=(0,a.useState)("");(0,a.useEffect)(()=>{let e=!0;return eN(s,t).then(s=>{if(!e)return;let t=function(e,s){let t=e.split("\n"),{start:n,end:a}=eq(t,s),l=t.slice(n,a).findIndex(e=>e.startsWith(eF));if(l<0)return[];try{let e=JSON.parse(t[n+l].slice(eF.length));return Array.isArray(e)?e:[]}catch(e){return[]}}(s,l);d(t),m(JSON.stringify(t))}).catch(()=>void 0),()=>{e=!1}},[s,t,l]);let g=JSON.stringify(o)!==h,f=(e,s)=>d(t=>t.map((t,n)=>n===e?{...t,...s}:t)),w=async()=>{x(!0),v("");try{let e=o.filter(e=>{var s;return"status"===e.k||"time"===e.k||"header"!==e.k&&"body"!==e.k||!!(null==(s=e.name)?void 0:s.trim())});await ek(s,t,s=>(function(e,s,t){let n=e.split("\n"),{start:a,end:l}=eq(n,s),r=n.slice(a,l).findIndex(e=>e.startsWith(eF)),i=t.length?(function(e){let s=JSON.stringify(e).replace(/%\}/g,"%\\u007d"),t=e.map(e=>{let{label:s,cond:t}=function(e){var s,t,n,a;let l=null!=(s=e.v)?s:"";if("status"===e.k)return"2xx"===e.op?{label:"status is 2xx",cond:"response.status >= 200 && response.status < 300"}:{label:"status ".concat(e.op," ").concat(l),cond:"response.status ".concat("="===e.op?"==":e.op," ").concat(eL(l))};if("time"===e.k)return{label:"time ".concat(e.op," ").concat(l," ms"),cond:"response.time ".concat(e.op," ").concat(Number(l)||0)};if("header"===e.k){let s="response.headers.valueOf(".concat(JSON.stringify((null!=(t=e.name)?t:"").toLowerCase()),")");return"exists"===e.op?{label:"header ".concat(e.name," exists"),cond:"".concat(s," !== undefined")}:"contains"===e.op?{label:"header ".concat(e.name," contains ").concat(l),cond:"".concat(s," !== undefined && ").concat(s,".includes(").concat(JSON.stringify(l),")")}:{label:"header ".concat(e.name," = ").concat(l),cond:"".concat(s," == ").concat(eL(l))}}if("text"===e.k)return{label:"answer contains ".concat(l),cond:"response.text.includes(".concat(JSON.stringify(l),")")};let r=function(e){var s,t,n;let a=e.trim().replace(/^\$\.?/,""),l="response.body";for(let e of a.matchAll(/\[(\d+)\]|\["([^"]+)"\]|\.?([^.[\]]+)/g))l+=void 0!==e[1]?"[".concat(e[1],"]"):/^[A-Za-z_]\w*$/.test(null!=(s=e[2])?s:e[3])?".".concat(null!=(t=e[2])?t:e[3]):"[".concat(JSON.stringify(null!=(n=e[2])?n:e[3]),"]");return l}(null!=(n=e.name)?n:"$"),i=null!=(a=e.name)?a:"$";return"exists"===e.op?{label:"".concat(i," exists"),cond:"".concat(r," !== undefined && ").concat(r," !== null")}:"contains"===e.op?{label:"".concat(i," contains ").concat(l),cond:"String(".concat(r,").includes(").concat(JSON.stringify(l),")")}:{label:"".concat(i," ").concat(e.op," ").concat(l),cond:"".concat(r," ").concat("="===e.op?"==":e.op," ").concat(eL(l))}}(e);return"client.test(".concat(JSON.stringify(s),", function () { client.assert(").concat(t,", ").concat(JSON.stringify("expected ".concat(s)),"); });")});return["> {%","".concat(eF).concat(s),...t,"%}"].join("\n")})(t).split("\n"):[];if(r>=0){let e=a+r,s=e;for(;s<l&&!n[s].trim().endsWith("%}");)s++;return e>a&&"> {%"===n[e-1].trim()&&e--,!i.length&&e>a&&!n[e-1].trim()&&e--,n.splice(e,s-e+1,...i),n.join("\n")}if(!i.length)return e;let c=l;for(;c>a+1&&!n[c-1].trim();)c--;return n.splice(c,0,"",...i),n.join("\n")})(s,l,e)),d(e),m(JSON.stringify(e)),c(i("hw2.saved")),r()}catch(e){v(e instanceof Error?e.message:"error")}finally{x(!1)}};return(0,n.jsxs)("div",{className:"ae",children:[(0,n.jsxs)("div",{className:"row gap-s",children:[(0,n.jsx)("b",{children:i("hw2.assert.title")}),(0,n.jsx)(eH.B,{size:"sm",label:i("common.help"),title:i("hw2.help.how"),children:i("hw2.assert.hint")}),(0,n.jsx)("span",{className:"grow"}),(0,n.jsxs)("button",{className:"btn sm",onClick:()=>d(e=>[...e,{k:"status",op:"2xx"}]),children:[(0,n.jsx)(C.A,{size:13}),i("hw2.assert.add")]}),(0,n.jsxs)("button",{className:"btn primary sm",disabled:!g||u,onClick:()=>void w(),children:[(0,n.jsx)(sl,{size:13}),i("hw2.assert.save")]})]}),(0,n.jsx)("div",{style:{height:8}}),o.map((e,s)=>{var t,a;return(0,n.jsxs)("div",{className:"ae-row",children:[(0,n.jsx)("select",{className:"select",value:e.k,onChange:e=>{let t=e.target.value;f(s,{k:t,op:ez[t][0],name:void 0,v:""})},"aria-label":i("hw2.assert.kind"),children:sr.map(e=>(0,n.jsx)("option",{value:e,children:i("hw2.assert.k.".concat(e))},e))}),("header"===e.k||"body"===e.k)&&(0,n.jsx)("input",{className:"input mono",value:null!=(t=e.name)?t:"",placeholder:"header"===e.k?"Content-Type":"$.data.id",onChange:e=>f(s,{name:e.target.value}),"aria-label":i("obj.f.name")}),(0,n.jsx)("select",{className:"select",value:e.op,onChange:e=>f(s,{op:e.target.value}),"aria-label":i("hw2.assert.op"),children:ez[e.k].map(e=>(0,n.jsx)("option",{value:e,children:"exists"===e?i("hw2.assert.exists"):"2xx"===e?i("hw2.assert.ok"):"contains"===e?i("hw2.assert.contains"):e},e))}),!si.has(e.op)&&(0,n.jsx)("input",{className:"input mono",value:null!=(a=e.v)?a:"",placeholder:"time"===e.k?"ms":i("hw.session.value"),onChange:e=>f(s,{v:e.target.value}),"aria-label":i("hw.session.value")}),(0,n.jsx)("button",{className:"btn ghost icon sm",onClick:()=>d(e=>e.filter((e,t)=>t!==s)),"aria-label":i("hw2.assert.remove"),children:(0,n.jsx)(U.A,{size:14})})]},s)}),p&&(0,n.jsx)("p",{className:"gx-note err",children:p})]})}let so=["X-Api-Key","Api-Key","X-Auth-Token"];function sd(e){let{objectId:s,file:t,lines:l,onSaved:r}=e,{t:i}=(0,j.s9)(),c=(0,b.dj)(),o=l[0],[d,h]=(0,a.useState)("none"),[m,u]=(0,a.useState)(""),[x,p]=(0,a.useState)(""),[v,g]=(0,a.useState)(""),[f,w]=(0,a.useState)("X-Api-Key"),[N,y]=(0,a.useState)(""),[k,C]=(0,a.useState)(!1),[S,A]=(0,a.useState)(!1),[E,z]=(0,a.useState)("");(0,a.useEffect)(()=>{eN(s,t).then(e=>{var s,t,n;let a=eE(e,o,"Authorization"),l=so.find(s=>void 0!==eE(e,o,s));if(a&&/^Bearer\s/i.test(a))h("bearer"),u(a.replace(/^Bearer\s+/i,""));else if(a&&/^Basic\s/i.test(a)){let e=/^Basic\s+(\S+?)(?:\s+|:)(.+)$/i.exec(a);h("basic"),p(null!=(s=null==e?void 0:e[1])?s:""),g(null!=(t=null==e?void 0:e[2])?t:"")}else l?(h("apikey"),w(l),y(null!=(n=eE(e,o,l))?n:"")):h("none")}).catch(()=>void 0)},[s,t,o]);let F=async()=>{A(!0),z("");try{await ek(s,t,e=>{let s=e;for(let e of(k?[...l]:[o]).sort((e,s)=>s-e)){for(let t of["Authorization",...so])s=eA(s,e,t,null);"bearer"===d?s=eA(s,e,"Authorization","Bearer ".concat(m)):"basic"===d?s=eA(s,e,"Authorization","Basic ".concat(x," ").concat(v)):"apikey"===d&&(s=eA(s,e,f.trim()||"X-Api-Key",N))}return s}),c(i("hw2.saved")),r()}catch(e){z(e instanceof Error?e.message:"error")}finally{A(!1)}};return(0,n.jsxs)("div",{className:"hr-form",style:{maxWidth:600},children:[(0,n.jsxs)("div",{className:"row gap-s",style:{marginBottom:12},children:[(0,n.jsx)("b",{className:"grow",children:i("hw2.tab.auth")}),(0,n.jsx)(eH.B,{size:"sm",align:"end",label:i("common.help"),title:i("hw2.help.how"),children:i("hw2.auth.hint")})]}),(0,n.jsxs)("div",{className:"stack",children:[(0,n.jsxs)("select",{className:"select",value:d,onChange:e=>h(e.target.value),"aria-label":i("hw2.auth.type"),children:[(0,n.jsx)("option",{value:"none",children:i("hw2.auth.none")}),(0,n.jsx)("option",{value:"bearer",children:"Bearer token"}),(0,n.jsx)("option",{value:"basic",children:"Basic"}),(0,n.jsx)("option",{value:"apikey",children:"API key"})]}),"bearer"===d&&(0,n.jsx)("input",{className:"input mono",value:m,placeholder:"{{token}}",onChange:e=>u(e.target.value),"aria-label":"Token"}),"basic"===d&&(0,n.jsxs)("div",{className:"row gap-s",children:[(0,n.jsx)("input",{className:"input mono",style:{flex:1},value:x,placeholder:"{{user}}",onChange:e=>p(e.target.value),"aria-label":i("hw2.auth.user")}),(0,n.jsx)("input",{className:"input mono",style:{flex:1},value:v,placeholder:"{{passwd}}",onChange:e=>g(e.target.value),"aria-label":i("hw2.auth.pass")})]}),"apikey"===d&&(0,n.jsxs)("div",{className:"row gap-s",children:[(0,n.jsx)("input",{className:"input mono",style:{flex:1},value:f,onChange:e=>w(e.target.value),"aria-label":i("hw2.auth.header")}),(0,n.jsx)("input",{className:"input mono",style:{flex:2},value:N,placeholder:"{{apiKey}}",onChange:e=>y(e.target.value),"aria-label":i("hw.session.value")})]}),l.length>1&&(0,n.jsx)(b.Tl,{checked:k,onChange:C,label:i("hw2.auth.all",{count:l.length})}),(0,n.jsx)("div",{className:"row gap-s",children:(0,n.jsx)("button",{className:"btn primary",disabled:S,onClick:()=>void F(),children:i("hw2.auth.apply")})}),E&&(0,n.jsx)("p",{className:"gx-note err",style:{margin:0},children:E})]})]})}function sh(e){var s,t,a,l,r,i,c;let{ws:o,scan:d,sel:h}=e,{t:m}=(0,j.s9)(),{o:u,tab:x,insp:p,res:v,fileOf:g,load:f,forget:w,setVar:N,runNamed:y,testsOf:k,bodyView:C,setBodyView:S,bodyFilter:A,setBodyFilter:E}=o;return"auth"===x?(0,n.jsx)(sd,{objectId:u.id,file:null!=(a=g.current.get(h.id))?a:"",lines:(null!=(l=null==(s=d.files.find(e=>e.relFile===g.current.get(h.id)))?void 0:s.requests)?l:[h]).map(e=>e.line).reduce((e,s)=>s===h.line?[s,...e]:[...e,s],[]),onSaved:f}):"vars"===x?(0,n.jsx)("div",{className:"hr-pre",children:p?(0,n.jsx)(sa,{vars:p.vars,onSet:N,onForget:e=>void w(e),onRun:y}):(0,n.jsx)("p",{className:"muted",children:m("git.loading")})}):"request"===x?(0,n.jsxs)("div",{className:"hr-pre",children:[!(null==v?void 0:v.run)&&(null==p?void 0:p.preview)?(0,n.jsxs)(n.Fragment,{children:[(0,n.jsxs)("div",{className:"row gap-s small res-mb",children:[(0,n.jsx)("b",{children:m("hw2.resolved")}),p.preview.unresolved.length>0&&(0,n.jsx)("span",{className:"chip warn",children:m("hw2.unresolved",{count:p.preview.unresolved.length})})]}),(0,n.jsxs)("div",{className:"mono",children:[(0,n.jsx)("b",{children:p.preview.method})," ",(0,n.jsx)(e7,{text:p.preview.url})]}),p.preview.headers.map((e,s)=>(0,n.jsxs)("div",{children:[(0,n.jsx)("b",{children:e.name}),": ",(0,n.jsx)(e7,{text:e.value})]},s)),void 0!==p.preview.body&&(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("div",{className:"eyebrow hw-eb",children:m("http.requestBody")}),(0,n.jsx)("pre",{children:(0,n.jsx)(e7,{text:p.preview.body})})]})]}):null,(null==v?void 0:v.run)&&(0,n.jsx)("div",{className:"muted small res-mb",children:m("hw2.resolved")}),(null==v?void 0:v.run)&&(0,n.jsxs)("div",{className:"mono",children:[(0,n.jsx)("b",{children:v.run.request.method})," ",v.run.request.url]}),(null==v?void 0:v.run)&&v.run.request.headers.map((e,s)=>(0,n.jsxs)("div",{children:[(0,n.jsx)("b",{children:e.name}),": ",e.value]},s)),(null==v?void 0:v.run)?null:!(null==p?void 0:p.preview)&&h.headers.map((e,s)=>(0,n.jsxs)("div",{children:[(0,n.jsx)("b",{children:e.name}),": ",(null==v?void 0:v.run)?e.value:(0,n.jsx)(e7,{text:e.value})]},s)),(null==v?void 0:v.run)&&void 0!==v.run.request.body&&(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("div",{className:"eyebrow hw-eb",children:m("http.requestBody")}),(0,n.jsx)("pre",{children:(0,n.jsx)(e7,{text:null!=(i=null!=(r=null==v||null==(t=v.run)?void 0:t.request.body)?r:h.body)?i:""})})]}),h.script&&(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("div",{className:"eyebrow hw-eb",children:m("hw.script")}),(0,n.jsx)("p",{className:"muted small hw-hint2",children:m("hw.script.hint")}),(0,n.jsx)("pre",{children:h.script.trim()})]})]}):"tests"===x?(0,n.jsxs)("div",{className:"hr-form",children:[(0,n.jsx)(sc,{objectId:u.id,file:null!=(c=g.current.get(h.id))?c:"",line:h.line,onSaved:f}),(0,n.jsx)("div",{className:"eyebrow hw-eb2",children:m("hw.tests")}),(0,n.jsx)("div",{className:"hr-pre res-p0",children:(null==v?void 0:v.run)?0===k(v).length&&0===v.run.logs.length?(0,n.jsx)("p",{className:"muted",children:m("hw.tests.none")}):(0,n.jsxs)(n.Fragment,{children:[k(v).map((e,s)=>(0,n.jsxs)("div",{className:"hw-test ".concat(e.passed?"ok":"err"),children:[e.passed?(0,n.jsx)(eJ.A,{size:14}):(0,n.jsx)(U.A,{size:14}),(0,n.jsx)("b",{children:e.name}),e.message&&(0,n.jsxs)("span",{className:"muted",children:[": ",e.message]})]},s)),v.run.logs.length>0&&(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("div",{className:"eyebrow hw-eb",children:m("hw.console")}),(0,n.jsx)("pre",{children:v.run.logs.join("\n")})]})]}):(0,n.jsx)("p",{className:"muted",children:m("http.noResponse")})})]}):v?v.error?(0,n.jsx)("div",{className:"gx-banner err hw-pre hw-m16",children:v.error}):"headers"===x?(0,n.jsx)("div",{className:"hr-pre",children:v.run.headers.map((e,s)=>(0,n.jsxs)("div",{children:[(0,n.jsx)("b",{children:e.name}),": ",e.value]},s))}):(0,n.jsxs)("div",{className:"hr-pre",children:[v.run.truncated&&(0,n.jsx)("div",{className:"gx-banner",children:m("http.truncated")}),v.run.binary?(0,n.jsx)("p",{className:"muted",children:m("http.binary",{type:v.run.contentType||"?",size:(0,q.zi)(v.run.size)})}):v.run.body?(()=>{let e=eD(v.run.body),s=A.trim(),t=s.startsWith("$"),a=null,l="";if(t&&void 0!==e)try{a=function(e,s){let t=[e];for(let e of function(e){let s=e.trim();if(!s.startsWith("$"))throw Error("A path starts with $");let t=[],n=1;for(;n<s.length;){if(s.startsWith("..",n)){let e=/^\.\.([\w$-]+)/.exec(s.slice(n));if(!e)throw Error("Expected a name after ..");t.push({k:"deep",v:e[1]}),n+=e[0].length;continue}if("."===s[n]){var a;let e=/^\.(\*|[\w$-]+)/.exec(s.slice(n));if(!e)throw Error('Unexpected "'.concat(null!=(a=s[n+1])?a:"",'" after the dot'));t.push("*"===e[1]?{k:"all"}:{k:"key",v:e[1]}),n+=e[0].length;continue}if("["===s[n]){let e,a=s.indexOf("]",n);if(a<0)throw Error("A [ is not closed");let l=s.slice(n+1,a).trim();if("*"===l)t.push({k:"all"});else if(/^-?\d+$/.test(l))t.push({k:"idx",v:Number(l)});else if(e=/^(['"])(.*)\1$/.exec(l))t.push({k:"key",v:e[2]});else if(e=/^\?\(\s*@((?:\.[\w$-]+)*)\s*(==|!=|>=|<=|>|<)\s*(.+?)\s*\)$/.exec(l)){let s=e[3];try{s=JSON.parse(e[3].replace(/^'(.*)'$/,'"$1"'))}catch(e){}t.push({k:"filter",path:e[1],op:e[2],v:s})}else throw Error("Cannot read [".concat(l,"]"));n=a+1;continue}throw Error('Unexpected "'.concat(s[n],'"'))}return t}(s)){let s=[];for(let n of t)if("key"===e.k)n&&"object"==typeof n&&!Array.isArray(n)&&e.v in n&&s.push(n[e.v]);else if("idx"===e.k){if(Array.isArray(n)){let t=n[e.v<0?n.length+e.v:e.v];void 0!==t&&s.push(t)}}else if("all"===e.k)s.push(...e8(n));else if("deep"===e.k)!function e(s,t,n){for(let a of(s&&"object"==typeof s&&!Array.isArray(s)&&t in s&&n.push(s[t]),e8(s)))e(a,t,n)}(n,e.v,s);else for(let t of e8(n)){let n=t;for(let s of e.path.split(".").filter(Boolean))n=n&&"object"==typeof n?n[s]:void 0;void 0!==n&&se(n,e.op,e.v)&&s.push(t)}t=s}return t}(e,s)}catch(e){l=e instanceof Error?e.message:"error"}let r=eP(v.run),i=s&&!t?r.split("\n").map((e,s)=>({l:e,n:s+1})).filter(e=>e.l.toLowerCase().includes(s.toLowerCase())):null;return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsxs)("div",{className:"row gap-s",children:[(0,n.jsx)(b.DO,{className:"grow",value:A,onChange:E,placeholder:m("hw2.filter.placeholder"),label:m("hw2.filter")}),void 0!==e&&(0,n.jsx)(b.$q,{value:C,onChange:S,options:[{id:"tree",label:m("hw2.tree")},{id:"text",label:m("hw2.text")}]}),(0,n.jsx)(e6.WQ,{text:a?JSON.stringify(1===a.length?a[0]:a,null,2):v.run.body})]}),l&&(0,n.jsx)("p",{className:"gx-note err hw-my6",children:l}),t&&void 0===e&&(0,n.jsx)("p",{className:"muted small",children:m("hw2.noJson")}),a?0===a.length?(0,n.jsx)("p",{className:"muted small",children:m("hw2.filter.none")}):(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("p",{className:"muted small hw-my6",children:m("hw2.filter.count",{count:a.length})}),"tree"===C?(0,n.jsx)(e_,{value:1===a.length?a[0]:a}):(0,n.jsx)("pre",{children:JSON.stringify(1===a.length?a[0]:a,null,2)})]}):i?0===i.length?(0,n.jsx)("p",{className:"muted small",children:m("hw2.filter.none")}):(0,n.jsx)("pre",{children:i.map(e=>"".concat(String(e.n).padStart(4)," ").concat(e.l)).join("\n")}):void 0!==e&&"tree"===C?(0,n.jsxs)(n.Fragment,{children:[!h.named&&(0,n.jsx)("p",{className:"muted small",children:m("hw2.copyRef.need")}),(0,n.jsx)(e_,{value:e,refBase:h.named?"".concat(h.named,".response.body"):void 0})]}):(0,n.jsx)("pre",{children:r})]})})():(0,n.jsx)("p",{className:"muted",children:m("http.emptyBody")})]}):(0,n.jsx)("p",{className:"gx-note",children:m("http.noResponse")})}function sm(e){var s,t,a;let{ws:l,scan:r,onOpenVars:i}=e,{t:c}=(0,j.s9)(),{o,env:d,sel:h,setSel:m,busy:x,missing:p,needsRun:v,tab:g,setTab:f,insp:w,note:N,fileOf:y,byName:k,run:C,res:S,testsOf:A}=l;return h?(0,n.jsxs)(n.Fragment,{children:[(0,n.jsxs)("div",{className:"hr-reqhead",children:[(0,n.jsx)("span",{className:"hr-m ".concat(eB(h.method)),children:h.method}),(0,n.jsx)("code",{className:"hr-url grow",children:(0,n.jsx)(e7,{text:h.url})}),(0,n.jsx)(e9,{objectId:o.id,file:null!=(a=y.current.get(h.id))?a:"",index:h.index,env:d}),(0,n.jsxs)("button",{className:"btn primary sm",disabled:!!x||p.length>0,onClick:()=>void C(h),title:"Ctrl+Enter",children:[(0,n.jsx)(u.A,{size:14}),x===h.id?c("http.running"):c("http.run")]})]}),h.refs.length>0&&(0,n.jsx)("div",{className:"gx-banner",children:c("hw.uses",{names:h.refs.map(e=>"“".concat(e,"”")).join(", ")})}),p.length>0&&(0,n.jsxs)("div",{className:"gx-banner row gap-s wrap",children:[(0,n.jsx)(e3.A,{size:15}),(0,n.jsxs)("span",{className:"grow",children:[c("http.missing",{names:p.map(e=>"{{".concat(e,"}}")).join(", ")}),v.length?"":". ".concat(c("http.missing.hint"))]}),v.map(e=>k.current.get(e)&&(0,n.jsx)("button",{className:"btn sm",disabled:!!x,onClick:()=>{let s=k.current.get(e);m(s),C(s)},children:c("hw.needsRun",{name:e})},e)),!v.length&&(0,n.jsx)("button",{className:"btn sm",onClick:i,children:c("hw.editVars")})]}),N&&(0,n.jsx)("div",{className:"gx-banner",children:N}),(0,n.jsxs)("div",{className:"row gap-s hw-bar",children:[(0,n.jsx)(b.$q,{value:g,onChange:f,options:[{id:"body",label:c("http.body")},{id:"headers",label:"".concat(c("http.headers")).concat((null==S?void 0:S.run)?" \xb7 ".concat(S.run.headers.length):"")},{id:"tests",label:"".concat(c("hw.tests")).concat(A(S).length?" \xb7 ".concat(A(S).filter(e=>e.passed).length,"/").concat(A(S).length):"")},{id:"request",label:c("http.request")},{id:"vars",label:"".concat(c("hw2.tab.vars")).concat((null==w?void 0:w.vars.length)?" \xb7 ".concat(w.vars.length):"")},{id:"auth",label:c("hw2.tab.auth")}]}),(0,n.jsx)("span",{className:"grow"}),(null==S?void 0:S.run)&&(0,n.jsxs)("span",{className:"row gap-s small",children:[S.run.set.length>0&&(0,n.jsx)("span",{className:"chip",title:S.run.set.join(", "),children:c("hw.kept",{names:S.run.set.join(", ")})}),(0,n.jsxs)("b",{className:"hr-st ".concat(e$(S.run.status)),children:[S.run.status," ",S.run.statusText]}),(0,n.jsxs)("span",{className:"muted",children:[c("http.time",{ms:S.run.durationMs})," \xb7 ",(0,q.zi)(S.run.size)]})]})]}),(null==S||null==(s=S.run)?void 0:s.scriptError)&&(0,n.jsx)("div",{className:"gx-banner err",children:c("hw.script.error",{error:S.run.scriptError})}),(null==S||null==(t=S.run)?void 0:t.scriptFile)&&(0,n.jsx)("div",{className:"gx-banner",children:c("hw.script.file",{file:S.run.scriptFile})}),(0,n.jsx)("div",{className:"hr-out",children:(0,n.jsx)(sh,{ws:l,scan:r,sel:h})})]}):null}var su=t(96213);let sx=["GET","POST","PUT","PATCH","DELETE","HEAD","OPTIONS"],sj=["Accept","Accept-Language","Authorization","Cache-Control","Content-Type","Cookie","If-None-Match","Origin","Referer","User-Agent","X-Api-Key","X-Requested-With"],sp=["application/json","application/x-www-form-urlencoded","application/xml","text/plain","text/html","multipart/form-data"],sb=["$uuid","$timestamp","$isoTimestamp","$randomInt"];function sv(e,s){let t=getComputedStyle(e),n=document.createElement("div");for(let e of["fontFamily","fontSize","lineHeight","letterSpacing","tabSize","paddingTop","paddingLeft","paddingRight","paddingBottom","borderTopWidth","borderLeftWidth","borderRightWidth","boxSizing"])n.style[e]=t[e];n.style.cssText+=";position:absolute;visibility:hidden;white-space:pre;top:0;left:0;width:"+e.clientWidth+"px",n.textContent=e.value.slice(0,s);let a=document.createElement("span");a.textContent="",n.appendChild(a),document.body.appendChild(n);let l=a.offsetLeft,r=a.offsetTop;return document.body.removeChild(n),{x:l-e.scrollLeft,y:r-e.scrollTop}}function sg(e){var s,t,l,r;let{value:i,onChange:c,onSave:o,vars:d,named:h}=e,m=(0,a.useRef)(null),[u,x]=(0,a.useState)(null),[j,p]=(0,a.useState)(0),[b,v]=(0,a.useState)({x:0,y:0}),g=(0,a.useMemo)(()=>d,[d]),f=(e,s)=>{let t=function(e,s,t,n){let a=e.lastIndexOf("\n",s-1)+1,l=e.slice(a,s),r=e.slice(0,a).split("\n"),i=/\{\{([\w.$-]*)$/.exec(l);if(i){let e=i[1].toLowerCase(),a=s-i[1].length,l=[...t.filter(e=>!e.name.includes(".response.")&&!e.name.startsWith("$")).map(e=>{var s;return{label:e.name,insert:"".concat(e.name,"}}"),hint:"missing"===e.source?"—":e.secret||e.hidden?"••••":(null!=(s=e.value)?s:"").slice(0,30)}}),...n.map(e=>({label:"".concat(e,".response.body."),insert:"".concat(e,".response.body."),hint:"answer"})),...sb.map(e=>({label:e,insert:"".concat(e,"}}"),hint:"generated"}))].filter(s=>s.label.toLowerCase().includes(e)&&s.label.toLowerCase()!==e).slice(0,12);return l.length?{items:l,from:a,to:s}:null}let c=/^(content-type|accept)\s*:\s*([\w/+.-]*)$/i.exec(l);if(c){let e=c[2].toLowerCase(),t=sp.filter(s=>s.includes(e)&&s!==e).map(e=>({label:e,insert:e}));return t.length?{items:t,from:s-c[2].length,to:s}:null}let o=/^([A-Za-z-]+)$/.exec(l);if(o){var d;let e=(null!=(d=r[r.length-2])?d:"").trim(),t=!e||/^#{3,}/.test(e)||e.startsWith("#")||e.startsWith("//"),n=!!e&&!t&&!/^\{|^\[|^</.test(e)&&!e.endsWith("%}"),l=o[1].toLowerCase();if(t){let e=sx.filter(e=>e.toLowerCase().startsWith(l)&&e.toLowerCase()!==l).map(e=>({label:e,insert:"".concat(e," ")}));return e.length?{items:e,from:a,to:s}:null}if(n){let e=sj.filter(e=>e.toLowerCase().startsWith(l)&&e.toLowerCase()!==l).map(e=>({label:e,insert:"".concat(e,": ")}));return e.length?{items:e,from:a,to:s}:null}}let h=/^#\s*@?(\w*)$/.exec(l);if(h&&h[0].length>1){let e=h[1].toLowerCase();if("name".startsWith(e)&&"name"!==e)return{items:[{label:"# @name",insert:"# @name ",hint:"name the request to use its answer"}],from:a,to:s}}return null}(e,s,g,h);if(x(t),p(0),t&&m.current){let e=sv(m.current,s);v({x:Math.min(e.x,Math.max(0,m.current.clientWidth-260)),y:e.y})}},w=e=>{if(!u||!m.current)return;c(i.slice(0,u.from)+e.insert+i.slice(u.to)),x(null);let s=u.from+e.insert.length;requestAnimationFrame(()=>{var e,t;null==(e=m.current)||e.focus(),null==(t=m.current)||t.setSelectionRange(s,s)})};return(0,n.jsxs)("div",{className:"se",children:[(0,n.jsx)(su.B,{value:i,path:"requests.http",areaRef:m,onChange:e=>{c(e);let s=m.current;s&&requestAnimationFrame(()=>f(e,s.selectionStart))},onClick:()=>x(null),onBlur:()=>setTimeout(()=>x(null),120),onKeyDown:e=>{if((e.ctrlKey||e.metaKey)&&"s"===e.key){e.preventDefault(),o();return}if((e.ctrlKey||e.metaKey)&&" "===e.key){e.preventDefault(),f(i,e.currentTarget.selectionStart);return}u&&("ArrowDown"===e.key?(e.preventDefault(),p(e=>(e+1)%u.items.length)):"ArrowUp"===e.key?(e.preventDefault(),p(e=>(e-1+u.items.length)%u.items.length)):"Enter"===e.key||"Tab"===e.key?(e.preventDefault(),w(u.items[j])):"Escape"===e.key&&(e.preventDefault(),x(null)))}}),u&&(0,n.jsx)("ul",{className:"se-pop",role:"listbox",style:{left:b.x+16,...b.y>(null!=(l=null==(s=m.current)?void 0:s.clientHeight)?l:400)-30*u.items.length-50?{bottom:(null!=(r=null==(t=m.current)?void 0:t.clientHeight)?r:0)-b.y-8}:{top:b.y+34}},children:u.items.map((e,s)=>(0,n.jsxs)("li",{role:"option","aria-selected":s===j,className:s===j?"on":"",onMouseDown:s=>{s.preventDefault(),w(e)},children:[(0,n.jsx)("span",{className:"mono",children:e.label}),e.hint&&(0,n.jsx)("i",{children:e.hint})]},e.label))})]})}var sf=t(78060),sw=t(39696);function sN(e){let{objectId:s,file:t,vars:l,onRun:r,status:i,onSaved:c}=e,{t:o}=(0,j.s9)(),d=(0,b.dj)(),h=(0,sw.Wx)(),[m,x]=(0,a.useState)(null),[p,v]=(0,a.useState)(null),[g,f]=(0,a.useState)(""),[w,N]=(0,a.useState)(!1);(0,a.useEffect)(()=>{x(null),v(null),f(""),eN(s,t.relFile).then(x).catch(e=>f(e instanceof Error?e.message:""))},[s,t.relFile]);let y=(0,a.useMemo)(()=>new Map(l.map(e=>[e.name,e])),[l]),k=(0,a.useMemo)(()=>new Map(t.requests.map(e=>[e.line,e.index])),[t]),C=async()=>{if(null!==p){N(!0),f("");try{await ey(s,t.relFile,p),x(p),v(null),d(o("hw2.saved")),c()}catch(e){f(e instanceof Error?e.message:"")}finally{N(!1)}}},S=e=>{let s=e.split(/(\{\{[^}]+\}\})/g);return(0,n.jsx)(n.Fragment,{children:s.map((e,s)=>{if(!e.startsWith("{{"))return(0,n.jsx)(a.Fragment,{children:e},s);let t=e.slice(2,-2).trim(),l=y.get(t);return(0,n.jsx)("span",{className:"hs-var ".concat(l?st[l.source]:"miss"),title:(e=>{var s;let t=y.get(e);if(!t)return"";let n=t.hidden?o("iv.hidden"):"missing"===t.source?"—":"dynamic"===t.source?o("iv.generated"):t.secret?"••••••••":null!=(s=t.value)?s:"";return"".concat(e," = ").concat(n,"\n").concat(sn(o,t.source,t.from))})(t),children:e},s)})})};if(g&&null===m)return(0,n.jsx)("p",{className:"gx-note err",style:{padding:16},children:g});if(null===m)return(0,n.jsx)("p",{className:"gx-note",children:o("git.loading")});let A=(null!=p?p:m).split("\n");return(0,n.jsxs)("div",{className:"hs gx","data-gx-theme":h.theme,style:{"--g-tab":h.tabSize},children:[(0,n.jsxs)("div",{className:"hs-bar",children:[(0,n.jsx)("span",{className:"muted small",children:null!==p?o("hw2.dirty"):""}),(0,n.jsx)(eH.B,{size:"sm",label:o("common.help"),title:o("hw2.help.file"),children:o("hw2.fileHint")}),(0,n.jsx)("span",{className:"grow"}),(0,n.jsx)(sf.i,{compact:!0}),null===p?(0,n.jsxs)("button",{className:"btn sm",onClick:()=>v(m),children:[(0,n.jsx)(ss.A,{size:14}),o("hw2.edit")]}):(0,n.jsxs)(n.Fragment,{children:[(0,n.jsxs)("button",{className:"btn ghost sm",onClick:()=>{v(null),f("")},children:[(0,n.jsx)(U.A,{size:14}),o("hw2.cancel")]}),(0,n.jsxs)("button",{className:"btn primary sm",disabled:w||p===m,onClick:()=>void C(),children:[(0,n.jsx)(sl,{size:14}),o("hw2.save")]})]})]}),g&&(0,n.jsx)("div",{className:"gx-banner err",children:g}),null!==p?(0,n.jsx)(sg,{value:p,onChange:v,onSave:()=>void C(),vars:l,named:t.requests.map(e=>e.named).filter(e=>!!e)}):(0,n.jsx)("div",{className:"hs-view mono",children:A.map((e,s)=>{let t=k.get(s+1),a=void 0!==t?i[t]:void 0;return(0,n.jsxs)("div",{className:"hs-line ".concat(/^#{3,}/.test(e.trim())?"sep":""),children:[(0,n.jsx)("span",{className:"hs-gutter",children:void 0!==t?(0,n.jsx)("button",{className:"hs-run ".concat(null!=a?a:""),onClick:()=>r(t),"aria-label":o("hw2.runHere"),title:o("hw2.runHere"),children:(0,n.jsx)(u.A,{size:11})}):null}),(0,n.jsx)("span",{className:"hs-no",children:s+1}),(0,n.jsx)("span",{className:"hs-text",children:(e=>{if(/^#{3,}/.test(e.trim()))return(0,n.jsx)("span",{className:"hljs-section",children:e});if(/^\s*(#|\/\/)/.test(e))return(0,n.jsx)("span",{className:"hljs-comment",children:e});let s=/^(@[\w.-]+)(\s*=.*)$/.exec(e);if(s)return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("span",{className:"hljs-attr",children:s[1]}),S(s[2])]});let t=/^(GET|POST|PUT|PATCH|DELETE|HEAD|OPTIONS)(\s.*)$/.exec(e);if(t)return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("span",{className:"hljs-keyword",children:t[1]}),S(t[2])]});let a=/^([A-Za-z][\w-]*)(:.*)$/.exec(e);return a?(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("span",{className:"hljs-attr",children:a[1]}),S(a[2])]}):S(e)})(e)||"\xa0"})]},s)})})]})}let sy=(0,c.A)("Table2",[["path",{d:"M9 3H5a2 2 0 0 0-2 2v4m6-6h10a2 2 0 0 1 2 2v4M9 3v18m0 0h10a2 2 0 0 0 2-2V9M9 21H5a2 2 0 0 1-2-2V9m0 0h18",key:"gugj83"}]]),sk=(0,c.A)("Package",[["path",{d:"M11 21.73a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73z",key:"1a0edw"}],["path",{d:"M12 22V12",key:"d0xqtd"}],["path",{d:"m3.3 7 7.703 4.734a2 2 0 0 0 1.994 0L20.7 7",key:"yx3hmr"}],["path",{d:"m7.5 4.27 9 5.15",key:"1c824w"}]]);function sC(e){let{objectId:s,file:t,onBatch:l,stopOnFail:r,onStopOnFail:i}=e,{t:c}=(0,j.s9)(),o=(0,b.dj)(),[d,h]=(0,a.useState)(!1),m=async(e,n)=>{try{let a=await x.FH.get("/objects/".concat(s,"/http/docs?format=").concat(e).concat(d?"":"&file=".concat(encodeURIComponent(t)))),l=URL.createObjectURL(new Blob([a.content],{type:a.mime})),r=document.createElement("a");r.href=l,r.download=a.filename,r.click(),setTimeout(()=>URL.revokeObjectURL(l),1e3),n(),o(c("hw2.export.done",{name:a.filename}))}catch(e){o(e instanceof Error?e.message:"error")}};return(0,n.jsx)(B.W1,{label:c("svc.more"),icon:(0,n.jsx)(I.A,{size:14}),children:e=>(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(B.Dr,{icon:(0,n.jsx)(sy,{size:15}),hint:c("hw2.batch.hint.short"),onClick:()=>{e(),l()},children:c("hw2.batch.open")}),(0,n.jsx)(B.iz,{checked:r,onChange:i,hint:c("hw2.stopOnFail.hint"),children:c("hw.stopOnFail")}),(0,n.jsx)(B.MU,{}),(0,n.jsxs)(B.rX,{label:c("hw2.export"),children:[(0,n.jsx)(B.Dr,{icon:(0,n.jsx)(W.A,{size:15}),onClick:()=>void m("markdown",e),children:c("hw2.export.md")}),(0,n.jsx)(B.Dr,{icon:(0,n.jsx)(sk,{size:15}),onClick:()=>void m("postman",e),children:c("hw2.export.postman")}),(0,n.jsx)(B.iz,{checked:d,onChange:h,children:c("hw2.export.all")})]})]})})}function sS(e){var s;let{ws:t,picked:a}=e,{t:l}=(0,j.s9)(),{o:r,busy:i,runFile:c,setBatch:o,stopOnFail:d,setStopOnFail:h,fileInsp:m,fileTab:u,setFileTab:x,note:p,setVar:v,forget:g,runNamed:f,statusByIndex:w,load:N,refreshInsp:y,setSel:k,setTab:C,run:S,results:A,testsOf:E}=t;return(0,n.jsxs)("div",{className:"hw-file-view",children:[(0,n.jsxs)("div",{className:"hw-fhead",children:[(0,n.jsx)(e0.A,{size:20,className:"muted"}),(0,n.jsxs)("div",{className:"grow res-minw0",children:[(0,n.jsx)("h3",{className:"mono",title:a.relFile,children:a.relFile}),(0,n.jsxs)("p",{className:"muted small res-m0",children:[l("hw.fileInfo",{count:a.requests.length}),m?" \xb7 ".concat(l("hw2.vars.count",{count:m.vars.length})):""]})]}),(0,n.jsxs)("button",{className:"btn primary sm",disabled:!!i,onClick:()=>void c(a),children:[(0,n.jsx)(e1.A,{size:14}),l("http.runFile")]}),(0,n.jsx)(sC,{objectId:r.id,file:a.relFile,onBatch:()=>o(!0),stopOnFail:d,onStopOnFail:h})]}),(0,n.jsx)(b.$q,{value:u,onChange:x,options:[{id:"requests",label:"".concat(l("hw2.tab.requests")," \xb7 ").concat(a.requests.length)},{id:"vars",label:"".concat(l("hw2.tab.vars")).concat((null==m?void 0:m.vars.length)?" \xb7 ".concat(m.vars.length):"")},{id:"source",label:l("hw2.tab.source")}]}),p&&(0,n.jsx)("div",{className:"gx-banner",children:p}),"vars"===u?m?(0,n.jsx)(sa,{vars:m.vars,onSet:v,onForget:e=>void g(e),onRun:f}):(0,n.jsx)("p",{className:"muted",children:l("git.loading")}):"source"===u?(0,n.jsx)("div",{className:"hw-src",children:(0,n.jsx)(sN,{objectId:r.id,file:a,vars:null!=(s=null==m?void 0:m.vars)?s:[],status:w(a),onSaved:()=>{N(),y()},onRun:e=>{let s=a.requests.find(s=>s.index===e);s&&(k(s),C("body"),S(s))}})}):(0,n.jsxs)("table",{className:"cm-table",children:[(0,n.jsx)("thead",{children:(0,n.jsxs)("tr",{children:[(0,n.jsx)("th",{}),(0,n.jsx)("th",{children:l("obj.f.name")}),(0,n.jsx)("th",{children:l("hw.fileTests")}),(0,n.jsx)("th",{children:l("hw.lastRun")})]})}),(0,n.jsx)("tbody",{children:a.requests.map(e=>{let s=A[e.id],t=E(s);return(0,n.jsxs)("tr",{className:"hw-trow",onClick:()=>{k(e),C("body")},children:[(0,n.jsx)("td",{children:(0,n.jsx)("span",{className:"hr-m ".concat(eB(e.method)),children:e.method})}),(0,n.jsxs)("td",{children:[(0,n.jsx)("b",{children:e.name}),(0,n.jsx)("div",{className:"muted small mono hw-url",children:(0,n.jsx)(e7,{text:e.url})})]}),(0,n.jsx)("td",{children:t.length?(0,n.jsxs)("span",{className:"hr-st ".concat(t.every(e=>e.passed)?"ok":"err"),children:[t.filter(e=>e.passed).length,"/",t.length]}):(0,n.jsx)("span",{className:"muted small",children:"—"})}),(0,n.jsx)("td",{children:s?s.run?(0,n.jsxs)("span",{className:"hr-st ".concat(eW(s)),children:[(0,n.jsx)("b",{children:s.run.status})," ",(0,n.jsxs)("span",{className:"muted",children:[s.run.durationMs," ms"]})]}):(0,n.jsx)("span",{className:"hr-st err",title:s.error,children:"error"}):(0,n.jsx)("span",{className:"muted small",children:l("hw.notRun")})})]},e.id)})})]})]})}function sA(e){let{object:s,onOpenVars:t,pane:l="requests",onGoRequests:r}=e,{t:i}=(0,j.s9)(),c=function(e){var s,t;let{t:n}=(0,j.s9)(),{refresh:l}=(0,p.o0)(),[r,i]=(0,a.useState)(null),[c,o]=(0,a.useState)(""),[d,h]=(0,a.useState)(null!=(s=e.config.env)?s:""),[m,u]=(0,a.useState)(""),[b,v]=(0,a.useState)(null),[g,f]=(0,a.useState)(null),[w,N]=(0,a.useState)(new Set),[y,k]=(0,a.useState)({}),[C,S]=(0,a.useState)(null),[A,E]=(0,a.useState)([]),[z,F]=(0,a.useState)([]),[L,q]=(0,a.useState)("body"),[O,T]=(0,a.useState)("requests"),[M,R]=(0,a.useState)("tree"),[H,I]=(0,a.useState)(""),[D,U]=(0,a.useState)(null),[B,$]=(0,a.useState)(null),[W,P]=(0,a.useState)(null),[J,_]=(0,a.useState)(!1),[K,V]=(0,a.useState)(!1),[G,X]=(0,a.useState)([]),[Z,Q]=(0,a.useState)(null),[Y,ee]=(0,a.useState)(null),es=(0,a.useCallback)(()=>x.FH.get("/objects/".concat(e.id,"/http/history")).then(X).catch(()=>void 0),[e.id]);(0,a.useEffect)(()=>{es()},[es]);let[et,en]=(0,a.useState)({globals:{},responses:[]}),[ea,el]=(0,a.useState)(!1),[er,ei]=(0,a.useState)(""),[ec,eo]=(0,a.useState)(null),ed=(0,a.useRef)(new Map),eh=(0,a.useRef)(new Map),em=(0,a.useCallback)(()=>x.FH.get("/objects/".concat(e.id,"/http/session")).then(en).catch(()=>void 0),[e.id]),eu=(0,a.useCallback)(()=>{o(""),x.FH.get("/objects/".concat(e.id,"/http")).then(s=>{var t;i(s),ed.current=new Map(s.files.flatMap(e=>e.requests.map(s=>[s.id,e.relFile]))),eh.current=new Map(s.files.flatMap(e=>e.requests.filter(e=>e.named).map(e=>[e.named,e]))),v(e=>{var t,n;return e&&s.files.some(s=>s.relFile===e)?e:null!=(n=null==(t=s.files[0])?void 0:t.relFile)?n:null}),N(e=>e.size?e:new Set(s.files.slice(0,1).map(e=>e.relFile))),f(e=>{var t;return e&&ed.current.has(e.id)&&null!=(t=s.files.flatMap(e=>e.requests).find(s=>s.id===e.id))?t:null});let n=null!=(t=e.config.env)?t:"";h(e=>{var t;return e&&s.environments.includes(e)?e:n&&s.environments.includes(n)?n:null!=(t=s.environments[0])?t:""})}).catch(e=>o(e instanceof Error?e.message:n("git.loadError")))},[e.id,e.updated_at]);(0,a.useEffect)(()=>{eu(),em()},[eu,em]);let ex=(0,a.useCallback)(()=>{var s;if(!g){E([]),F([]);return}x.FH.get("/objects/".concat(e.id,"/http/describe?file=").concat(encodeURIComponent(null!=(s=ed.current.get(g.id))?s:""),"&index=").concat(g.index).concat(d?"&env=".concat(encodeURIComponent(d)):"")).then(e=>{var s;E(e.missing),F(null!=(s=e.needsRun)?s:[])}).catch(()=>{E([]),F([])})},[e.id,e.updated_at,null==g?void 0:g.id,d]);(0,a.useEffect)(()=>{ex()},[ex,et]);let ej=(0,a.useCallback)((s,t)=>x.FH.get("/objects/".concat(e.id,"/http/variables?").concat([s?"file=".concat(encodeURIComponent(s)):"",void 0!==t?"index=".concat(t):"",d?"env=".concat(encodeURIComponent(d)):""].filter(Boolean).join("&"))),[e.id,d]),ep=(0,a.useCallback)(()=>{g?ej(ed.current.get(g.id),g.index).then(U).catch(()=>U(null)):U(null),b&&ej(b).then($).catch(()=>$(null))},[ej,null==g?void 0:g.id,b]);(0,a.useEffect)(()=>{ep()},[ep,et,e.updated_at]);let eb=(0,a.useCallback)(async s=>{let t,n=ed.current.get(s.id);if(!n)return{error:"",at:Date.now()};S(s.id);try{t={run:await x.FH.post("/objects/".concat(e.id,"/http/run"),{file:n,index:s.index,env:d||void 0}),at:Date.now()}}catch(e){t={error:e instanceof Error?e.message:"error",at:Date.now()}}return k(e=>({...e,[s.id]:t})),S(null),es(),em(),t},[e.id,d,em,es]),ev=async e=>{for(let s of(ei(""),e.requests)){f(s);let e=await eb(s);if(ea&&"err"===eW(e)){ei(n("hw.stopped",{name:s.name}));break}}};(0,a.useEffect)(()=>{let e=e=>{(e.ctrlKey||e.metaKey)&&"Enter"===e.key&&g&&!C&&(e.preventDefault(),eb(g))};return window.addEventListener("keydown",e),()=>window.removeEventListener("keydown",e)},[g,C,eb]);let eg=(0,a.useMemo)(()=>{var e;return(null!=(e=null==r?void 0:r.files)?e:[]).map(e=>({...e,requests:e.requests.filter(s=>!m||"".concat(s.name," ").concat(s.url," ").concat(s.method).toLowerCase().includes(m.toLowerCase())||e.relFile.toLowerCase().includes(m.toLowerCase()))})).filter(e=>e.requests.length)},[r,m]),ef=null!=(t=null==r?void 0:r.files.find(e=>e.relFile===b))?t:null,ew=g?y[g.id]:void 0,[eN,ey]=(0,a.useState)(""),[ek,eC]=(0,a.useState)(""),[eS,eA]=(0,a.useState)(!1),eE=Object.entries(et.globals);return{o:e,scan:r,err:c,env:d,setEnv:h,q:m,setQ:u,file:b,setFile:v,sel:g,setSel:f,open:w,setOpen:N,results:y,busy:C,missing:A,needsRun:z,tab:L,setTab:q,fileTab:O,setFileTab:T,bodyView:M,setBodyView:R,bodyFilter:H,setBodyFilter:I,insp:D,fileInsp:B,creating:J,setCreating:_,batch:K,setBatch:V,hist:G,setHist:X,histSel:Z,setHistSel:Q,cmp:Y,setCmp:ee,loadHistory:es,loadSession:em,session:et,setSession:en,stopOnFail:ea,setStopOnFail:el,note:er,confirm:ec,setConfirm:eo,fileOf:ed,byName:eh,load:eu,run:eb,runFile:ev,refreshInsp:ep,files:eg,picked:ef,res:ew,summary:e=>{let s=e.requests.filter(e=>y[e.id]);return s.length?"".concat(s.filter(e=>"ok"===eW(y[e.id])).length,"/").concat(e.requests.length):null},testsOf:e=>{var s,t;return null!=(t=null==e||null==(s=e.run)?void 0:s.tests)?t:[]},forget:s=>x.FH.del("/objects/".concat(e.id,"/http/session").concat(s?"?name=".concat(encodeURIComponent(s)):"")).then(en).catch(()=>void 0),newName:eN,setNewName:ey,newValue:ek,setNewValue:eC,adding:eS,setAdding:eA,setValue:()=>{var s,t;let n=eN.trim();if(!n)return;let a=e.config,r={...null!=(s=a.variables)?s:{}};r[eU]={...null!=(t=r[eU])?t:{},[n]:{value:ek}},x.FH.patch("/objects/".concat(e.id),{config:{folder:a.folder,env:a.env,variables:r}}).then(()=>(ey(""),eC(""),eA(!1),h(eU),l(["objects"]))).catch(()=>void 0)},kept:eE,setVar:(s,t)=>x.FH.post("/objects/".concat(e.id,"/http/session"),{name:s,value:t}).then(en).catch(()=>void 0),runNamed:e=>{let s=eh.current.get(e);if(s){var t;v(null!=(t=ed.current.get(s.id))?t:b),f(s),q("body"),eb(s)}},statusByIndex:e=>Object.fromEntries(e.requests.map(e=>[e.index,eW(y[e.id])]))}}(s),{scan:o,err:d,env:h,file:m,setFile:u,sel:b,setSel:v,picked:g,batch:f,setBatch:w,creating:N,setCreating:y,setFileTab:k,setOpen:C,load:S,loadSession:A,loadHistory:E}=c;return d?(0,n.jsx)("p",{className:"gx-note err hw-pad",children:d}):o?"history"===l?(0,n.jsx)(eQ,{ws:c,scan:o,onGoRequests:r}):(0,n.jsxs)(ew,{list:(0,n.jsx)(e4,{ws:c,scan:o,onOpenVars:t}),children:[(0,n.jsx)("section",{className:"hr-detail",children:b?(0,n.jsx)(sm,{ws:c,scan:o,onOpenVars:t}):g?(0,n.jsx)(sS,{ws:c,picked:g}):(0,n.jsx)("div",{className:"gx-empty",children:(0,n.jsx)("p",{children:i("hw.pickFile")})})}),f&&g&&(0,n.jsx)(eI,{objectId:s.id,file:g,env:h,onClose:()=>w(!1),onDone:()=>{A(),E()}}),N&&(0,n.jsx)(eM,{objectId:s.id,files:o.files,defaultFile:m,onClose:()=>y(!1),onCreated:e=>{y(!1),u(e),v(null),k("source"),C(s=>new Set(s).add(e)),S()}}),(0,n.jsx)(eZ,{ws:c})]}):(0,n.jsx)("p",{className:"gx-note",children:i("git.loading")})}var sE=t(13460);function sz(e){let{object:s}=e,{t}=(0,j.s9)(),{refresh:l}=(0,p.o0)(),r=(0,b.dj)(),i=s.config,c=(0,a.useMemo)(()=>{var e;return null!=(e=i.variables)?e:{}},[s.updated_at]),[o,d]=(0,a.useState)(c),[h,m]=(0,a.useState)(null),[u,v]=(0,a.useState)(!1),[g,f]=(0,a.useState)("");(0,a.useEffect)(()=>{x.FH.get("/objects/".concat(s.id,"/http")).then(m).catch(()=>void 0)},[s.id,s.updated_at]);let w=JSON.stringify(o)!==JSON.stringify(c),N=async()=>{v(!0),f("");try{await x.FH.patch("/objects/".concat(s.id),{config:{folder:i.folder,env:i.env,variables:Object.keys(o).length?o:void 0}}),await l(["objects"]),r(t("obj.saved"))}catch(e){f(e instanceof Error?e.message:t("edit.saveFailed"))}finally{v(!1)}};return(0,n.jsxs)("div",{className:"oc",children:[(0,n.jsxs)("div",{className:"oc-form",children:[(0,n.jsx)(sE.W,{value:o,onChange:d,fileEnvs:h?Object.keys(h.fileVars).filter(e=>"$shared"!==e):[],fileVars:null==h?void 0:h.fileVars,used:null==h?void 0:h.used,fileDefined:null==h?void 0:h.fileDefined,setBy:null==h?void 0:h.setBy}),g&&(0,n.jsx)("p",{className:"gx-note err",children:g})]}),(0,n.jsxs)("div",{className:"savebar oc-bar",children:[(0,n.jsx)("span",{className:"muted small grow",children:w?t("ow.cfg.dirty"):t("ow.cfg.saved")}),(0,n.jsx)("button",{className:"btn ghost",disabled:!w||u,onClick:()=>d(c),children:t("ow.cfg.discard")}),(0,n.jsx)("button",{className:"btn primary",disabled:!w||u,onClick:()=>void N(),children:t("ow.cfg.save")})]})]})}let sF=["SELECT","FROM","WHERE","AND","OR","NOT","IN","IS NULL","IS NOT NULL","LIKE","BETWEEN","EXISTS","JOIN","INNER JOIN","LEFT JOIN","RIGHT JOIN","FULL JOIN","CROSS JOIN","ON","USING","GROUP BY","ORDER BY","HAVING","LIMIT","OFFSET","DISTINCT","AS","ASC","DESC","UNION","UNION ALL","CASE","WHEN","THEN","ELSE","END","COUNT","SUM","AVG","MIN","MAX","COALESCE","CAST","INSERT INTO","VALUES","UPDATE","SET","DELETE FROM","CREATE TABLE","ALTER TABLE","DROP TABLE","NULL","TRUE","FALSE","WITH","TOP"],sL=new Set(["where","on","join","inner","left","right","full","cross","group","order","limit","set","values","using","union","having","offset","natural","outer","select","and","or"]),sq={mysql:"mysql",postgresql:"postgresql",sqlite:"sqlite",mssql:"transactsql"};async function sO(e,s){var n;let{format:a}=await t.e(701).then(t.bind(t,38701));return a(e,{language:null!=(n=sq[s])?n:"sql",keywordCase:"upper",tabWidth:2,linesBetweenQueries:1})}let sT=e=>e.replace(/^["`[]|["`\]]$/g,""),sM=/^[a-z_][a-z0-9_$]*$/,sR=(e,s)=>sM.test(s)?s:"mysql"===e?"`".concat(s,"`"):"mssql"===e?"[".concat(s,"]"):'"'.concat(s,'"'),sH=new Set(["public","dbo","main"]);function sI(e,s){let t=[],n=/\b(?:from|join|update|into)\s+((?:["`[]?[\w$]+["`\]]?\.)?["`[]?[\w$]+["`\]]?)(?:\s+(?:as\s+)?([A-Za-z_]\w*))?/gi;for(let a=n.exec(e);a;a=n.exec(e)){let e=a[1].split(".").map(sT),n=e[e.length-1].toLowerCase(),l=e.length>1?e[0].toLowerCase():"",r=s.find(e=>e.name.toLowerCase()===n&&(!l||e.schema.toLowerCase()===l));if(!r)continue;let i=a[2]&&!sL.has(a[2].toLowerCase())?a[2]:void 0;t.push({table:r,alias:i})}return t}let sD=(e,s)=>+!e.toLowerCase().startsWith(s),sU=(e,s)=>"mysql"===e?"`".concat(s.replace(/`/g,"``"),"`"):"mssql"===e?"[".concat(s.replace(/]/g,"]]"),"]"):'"'.concat(s.replace(/"/g,'""'),'"'),sB=e=>{let s=null==e?"":String(e);return/[",\n\r]/.test(s)?'"'.concat(s.replace(/"/g,'""'),'"'):s},s$=e=>[e.columns.map(e=>sB(e.name)).join(","),...e.rows.map(e=>e.map(sB).join(","))].join("\n");var sW=t(2432),sP=t(32335);let sJ=(0,c.A)("AlignLeft",[["path",{d:"M15 12H3",key:"6jk70r"}],["path",{d:"M17 18H3",key:"1amg6g"}],["path",{d:"M21 6H3",key:"1jwq7v"}]]),s_=(0,c.A)("BookMarked",[["path",{d:"M10 2v8l3-3 3 3V2",key:"sqw3rj"}],["path",{d:"M4 19.5v-15A2.5 2.5 0 0 1 6.5 2H19a1 1 0 0 1 1 1v18a1 1 0 0 1-1 1H6.5a1 1 0 0 1 0-5H20",key:"k3hazp"}]]);function sK(e){var s,t;let{value:l,onChange:r,areaRef:i,ctx:c,label:o,onKeyDown:d}=e,[h,m]=(0,a.useState)(null),[u,x]=(0,a.useState)(0),[j,p]=(0,a.useState)({x:0,y:0}),b=(0,a.useRef)(c);b.current=c;let v=function(e,s){let t=arguments.length>2&&void 0!==arguments[2]&&arguments[2],n=function(e,s,t){var n,a,l,r,i;let c=arguments.length>3&&void 0!==arguments[3]&&arguments[3],o=null!=(l=null==(n=t.schema)?void 0:n.engine)?l:"postgresql",d=null!=(r=null==(a=t.schema)?void 0:a.tables)?r:[],h=e.slice(0,s),m=/[\w$]*$/.exec(h)[0],u=s-m.length,x=h.slice(0,u),j=h.lastIndexOf("\n")+1;if(/--/.test(h.slice(j))||(h.split("'").length-1)%2==1||h.lastIndexOf("/*")>h.lastIndexOf("*/"))return null;let p=m.toLowerCase(),b=e.slice(Math.max(e.lastIndexOf(";",s-1)+1,0),(()=>{let t=e.indexOf(";",s);return t<0?e.length:t})()),v=/(["`[]?[\w$]+["`\]]?)\.$/.exec(x),g=e=>{let t=e.filter(e=>!p||e.label.toLowerCase().includes(p)&&e.label.toLowerCase()!==p).sort((e,s)=>sD(e.label,p)-sD(s.label,p)).slice(0,14);return t.length?{items:t,from:u,to:s}:null};if(v){let e=sT(v[1]).toLowerCase(),s=d.filter(s=>s.schema.toLowerCase()===e);if(s.length)return g(s.map(e=>({label:e.name,insert:sR(o,e.name),hint:"view"===e.type?"view":"table"})));let n=sI(b,d).find(s=>{var t;return(null!=(t=s.alias)?t:"").toLowerCase()===e||s.table.name.toLowerCase()===e});if(!n)return null;let a=t.cols(n.table);return a?g(a.map(e=>({label:e,insert:sR(o,e),hint:n.table.name}))):(t.need(n.table),null)}if(!m&&!c)return null;let f=/\b(from|join|update|into|table)\s+$/i.test(x),w=e=>({label:e.name,insert:"sqlite"===o||"mysql"===o||sH.has(e.schema)?sR(o,e.name):"".concat(sR(o,e.schema),".").concat(sR(o,e.name)),hint:"sqlite"===o||"mysql"===o||sH.has(e.schema)?"view"===e.type?"view":void 0:e.schema}),N=[...new Set(d.map(e=>e.schema))].filter(e=>"sqlite"!==o&&"mysql"!==o&&d.some(s=>s.schema===e)),y=[];if(!f)for(let e of sI(b,d)){let s=t.cols(e.table);if(!s){t.need(e.table);continue}for(let t of s)y.some(e=>e.label===t)||y.push({label:t,insert:sR(o,t),hint:null!=(i=e.alias)?i:e.table.name})}for(let e of d)y.push(w(e));for(let e of N)y.push({label:e,insert:sR(o,e),hint:"schema"});if(!f){let e=""!==m&&m===m.toLowerCase();for(let s of sF)y.push({label:e?s.toLowerCase():s,insert:"".concat(e?s.toLowerCase():s," "),hint:"SQL"})}return g(y)}(e,s,b.current,t);m(n),x(0);let a=i.current;if(n&&a){let e=sv(a,s);p({x:Math.min(e.x,Math.max(0,a.clientWidth-260)),y:e.y})}},g=e=>{let s=i.current;if(!h||!s)return;r(l.slice(0,h.from)+e.insert+l.slice(h.to)),m(null);let t=h.from+e.insert.length;requestAnimationFrame(()=>{s.focus(),s.setSelectionRange(t,t)})},f=null!=(t=null==(s=i.current)?void 0:s.clientHeight)?t:400;return(0,n.jsxs)("div",{className:"se",children:[(0,n.jsx)(su.B,{value:l,path:"query.sql",areaRef:i,label:o,onChange:e=>{r(e);let s=i.current;s&&requestAnimationFrame(()=>v(e,s.selectionStart))},onClick:()=>m(null),onBlur:()=>setTimeout(()=>m(null),120),onKeyDown:e=>{if(d(e),!e.defaultPrevented){if((e.ctrlKey||e.metaKey)&&" "===e.key){e.preventDefault(),v(l,e.currentTarget.selectionStart,!0);return}h&&("ArrowDown"===e.key?(e.preventDefault(),x(e=>(e+1)%h.items.length)):"ArrowUp"===e.key?(e.preventDefault(),x(e=>(e-1+h.items.length)%h.items.length)):"Enter"===e.key||"Tab"===e.key?(e.preventDefault(),g(h.items[u])):"Escape"===e.key&&(e.preventDefault(),m(null)))}}}),h&&(0,n.jsx)("ul",{className:"se-pop",role:"listbox",style:{left:j.x+16,...j.y>f-30*h.items.length-50?{bottom:f-j.y-8}:{top:j.y+34}},children:h.items.map((e,s)=>(0,n.jsxs)("li",{role:"option","aria-selected":s===u,className:s===u?"on":"",onMouseDown:s=>{s.preventDefault(),g(e)},children:[(0,n.jsx)("span",{className:"mono",children:e.label}),e.hint&&(0,n.jsx)("i",{children:e.hint})]},"".concat(e.label,"-").concat(s)))})]})}function sV(e){var s;let{result:t}=e,{t:l}=(0,j.s9)(),r=(0,b.dj)(),[i,c]=(0,a.useState)(500);(0,a.useEffect)(()=>c(500),[t]);let o=e=>{var s;null==(s=navigator.clipboard)||s.writeText(e),r(l("db.copied"))},d=0===t.columns.length;return(0,n.jsxs)("div",{className:"dbr",children:[(0,n.jsxs)("div",{className:"dbr-bar small",children:[(0,n.jsx)("b",{children:d?l("db.result.affected",{count:null!=(s=t.affected)?s:0}):l("db.result.rows",{count:t.rows.length})}),(0,n.jsxs)("span",{className:"muted",children:["\xb7 ",t.ms," ms"]}),t.truncated&&(0,n.jsx)("span",{className:"db-trunc",children:l("db.result.truncated",{count:t.rows.length})}),(0,n.jsx)("span",{className:"grow"}),!d&&(0,n.jsxs)(n.Fragment,{children:[(0,n.jsxs)("button",{className:"btn ghost sm",onClick:()=>o(s$(t)),children:[(0,n.jsx)(em.A,{size:13}),"CSV"]}),(0,n.jsxs)("button",{className:"btn ghost sm",onClick:()=>o(JSON.stringify(t.rows.map(e=>Object.fromEntries(t.columns.map((s,t)=>[s.name,e[t]]))),null,2)),children:[(0,n.jsx)(em.A,{size:13}),"JSON"]}),(0,n.jsxs)("button",{className:"btn ghost sm",onClick:()=>{let e=document.createElement("a");e.href=URL.createObjectURL(new Blob([s$(t)],{type:"text/csv"})),e.download="query-".concat(new Date().toISOString().slice(0,19).replace(/[:T]/g,"-"),".csv"),e.click(),setTimeout(()=>URL.revokeObjectURL(e.href),2e3)},children:[(0,n.jsx)(eu,{size:13}),l("db.download")]})]})]}),d?null:0===t.rows.length?(0,n.jsx)("p",{className:"muted small db-note",children:l("db.result.empty")}):(0,n.jsxs)("div",{className:"dbr-scroll",children:[(0,n.jsxs)("table",{className:"dbr-table",children:[(0,n.jsx)("thead",{children:(0,n.jsxs)("tr",{children:[(0,n.jsx)("th",{className:"n",children:"#"}),t.columns.map((e,s)=>{var a;return(0,n.jsx)("th",{className:"number"==typeof(null==(a=t.rows.find(e=>null!==e[s]))?void 0:a[s])?"num":"",children:e.name},s)})]})}),(0,n.jsx)("tbody",{children:t.rows.slice(0,i).map((e,s)=>(0,n.jsxs)("tr",{children:[(0,n.jsx)("td",{className:"n",children:s+1}),e.map((e,s)=>(0,n.jsx)("td",{className:"number"==typeof e?"num":"",title:"string"==typeof e&&e.length>40?e:void 0,children:null===e?(0,n.jsx)("i",{className:"db-null",children:"NULL"}):String(e)},s))]},s))})]}),t.rows.length>i&&(0,n.jsx)("button",{className:"btn sm dbr-more",onClick:()=>c(e=>e+500),children:l("db.result.more",{count:Math.min(500,t.rows.length-i)})})]})]})}function sG(e){let{cfg:s}=e,{t}=(0,j.s9)();return!1!==s.readOnly?(0,n.jsxs)("span",{className:"db-badge ro",title:t("db.readonly.on"),children:[(0,n.jsx)(sW.A,{size:12}),t("db.readonly.badge")]}):(0,n.jsxs)("span",{className:"db-badge rw",title:t("db.readonly.off"),children:[(0,n.jsx)(sP.A,{size:12}),t("db.write.badge")]})}function sX(e){var s,t;let{o:a,sql:l,setSql:r,area:i,run:c,format:o,ctx:d,busy:m,result:x,error:p,schema:b,database:v,setDatabase:g,saved:f,onSave:w,onUse:N,onManage:y}=e,{t:k}=(0,j.s9)(),C=(0,sw.Wx)(),S=a.config,A=null!=(s=null==b?void 0:b.databases)?s:[];return(0,n.jsxs)("div",{className:"dbq",children:[(0,n.jsxs)("div",{className:"dbq-bar",children:[(0,n.jsxs)("button",{className:"btn primary sm",disabled:m||!l.trim(),onClick:c,title:"Ctrl/⌘ + Enter",children:[m?(0,n.jsx)(h.A,{size:14,className:"spin"}):(0,n.jsx)(u.A,{size:14}),m?k("db.running"):k("db.run")]}),(0,n.jsxs)("button",{className:"btn sm",disabled:!l.trim(),onClick:w,children:[(0,n.jsx)(sl,{size:14}),k("db.save")]}),(0,n.jsxs)("button",{className:"btn sm",disabled:!l.trim(),onClick:o,title:k("db.format.hint"),children:[(0,n.jsx)(sJ,{size:14}),k("db.format")]}),(0,n.jsx)(B.W1,{label:k("db.saved"),icon:(0,n.jsx)(s_,{size:14}),children:e=>(0,n.jsxs)(n.Fragment,{children:[0===f.length?(0,n.jsx)("p",{className:"muted small db-menu-none",children:k("db.saved.none")}):(0,n.jsx)(B.rX,{label:k("db.saved.title"),children:f.map(s=>(0,n.jsx)(B.Dr,{hint:s.sql.replace(/\s+/g," ").slice(0,70),onClick:()=>{e(),N(s.sql,s.database)},children:s.name},s.id))}),(0,n.jsx)(B.MU,{}),(0,n.jsx)(B.Dr,{icon:(0,n.jsx)(ss.A,{size:14}),onClick:()=>{e(),y()},children:k("db.saved.manage")})]})}),A.length>1&&(0,n.jsx)("select",{className:"select db-pick",value:null!=(t=null!=v?v:null==b?void 0:b.database)?t:"",onChange:e=>g(e.target.value),"aria-label":k("db.database.pick"),title:k("db.database.pick"),children:A.map(e=>(0,n.jsx)("option",{value:e,children:e},e))}),(0,n.jsx)("span",{className:"grow"}),(0,n.jsx)(sG,{cfg:S}),(0,n.jsxs)(eH.B,{size:"sm",align:"end",label:k("common.help"),title:k("db.help.title"),children:[(0,n.jsx)("p",{children:k("db.help.1")}),(0,n.jsx)("p",{children:k("db.help.2")}),(0,n.jsx)("p",{children:k("db.help.3")}),(0,n.jsx)("p",{children:k("db.help.4")})]}),(0,n.jsx)(sf.i,{compact:!0})]}),(0,n.jsx)("div",{className:"db-ed gx","data-gx-theme":C.theme,style:{"--g-tab":C.tabSize},children:(0,n.jsx)(sK,{value:l,onChange:r,areaRef:i,ctx:d,label:k("db.editor"),onKeyDown:e=>{(e.ctrlKey||e.metaKey)&&"Enter"===e.key?(e.preventDefault(),c()):e.altKey&&e.shiftKey&&"f"===e.key.toLowerCase()&&(e.preventDefault(),o())}})}),(0,n.jsx)("div",{className:"dbq-res",children:!m||x||p?p?(0,n.jsx)("div",{className:"gx-note err db-err",children:p}):x?(0,n.jsx)(sV,{result:x}):(0,n.jsx)("p",{className:"muted small db-note",children:k("db.result.none")}):(0,n.jsxs)("p",{className:"muted small db-note",children:[(0,n.jsx)(h.A,{size:14,className:"spin"})," ",k("db.running")]})})]})}let sZ=(0,c.A)("ChevronsDownUp",[["path",{d:"m7 20 5-5 5 5",key:"13a0gw"}],["path",{d:"m7 4 5 5 5-5",key:"1kwcof"}]]),sQ=(0,c.A)("ChevronsUpDown",[["path",{d:"m7 15 5 5 5-5",key:"1hf1tw"}],["path",{d:"m7 9 5-5 5 5",key:"sgt6xg"}]]);function sY(e){var s;let{o:t,schema:l,err:r,loading:i,onReload:c,database:o,setDatabase:d,onOpen:m}=e,{t:p}=(0,j.s9)(),v=(0,b.dj)(),[g,f]=(0,a.useState)(""),[w,N]=(0,a.useState)({}),[y,k]=(0,a.useState)(null),[C,S]=(0,a.useState)(null),[A,E]=(0,a.useState)(""),z=null!=(s=null==l?void 0:l.databases)?s:[],F=null!=o?o:null==l?void 0:l.database;(0,a.useEffect)(()=>{y&&(S(null),E(""),x.FH.get("/objects/".concat(t.id,"/db/columns?schema=").concat(encodeURIComponent(y.schema),"&table=").concat(encodeURIComponent(y.name)).concat(F&&l&&"sqlite"!==l.engine?"&database=".concat(encodeURIComponent(F)):"")).then(S).catch(e=>E(e instanceof Error?e.message:"")))},[y,t.id,F,l]);let L=(0,a.useMemo)(()=>{var e,s;let t=g.trim().toLowerCase(),n=new Map;for(let a of null!=(e=null==l?void 0:l.tables)?e:[])(!t||a.name.toLowerCase().includes(t))&&(null!=(s=n.get(a.schema))?s:n.set(a.schema,[]).get(a.schema)).push(a);return[...n]},[l,g]),O=1===L.length,T=(0,a.useMemo)(()=>{var e;return[...new Set((null!=(e=null==l?void 0:l.tables)?e:[]).map(e=>e.schema))]},[l]),M=T.every(e=>!1!==w[e]);return(0,n.jsx)(ew,{gap:!0,list:(0,n.jsxs)("aside",{className:"dbs-list",children:[(0,n.jsxs)("div",{className:"dbs-head",children:[z.length>1&&(0,n.jsx)("select",{className:"select",value:null!=F?F:"",onChange:e=>{k(null),d(e.target.value)},"aria-label":p("db.database.pick"),children:z.map(e=>(0,n.jsx)("option",{value:e,children:e},e))}),(0,n.jsxs)("div",{className:"dbs-tools",children:[(0,n.jsx)(b.DO,{className:"grow",value:g,onChange:f,placeholder:p("db.schema.filter"),label:p("db.schema.filter")}),T.length>1&&(0,n.jsx)("button",{className:"btn ghost icon sm",onClick:()=>{let e;return e=!M,N(Object.fromEntries(T.map(s=>[s,e])))},"aria-label":M?p("db.schema.collapseAll"):p("db.schema.expandAll"),title:M?p("db.schema.collapseAll"):p("db.schema.expandAll"),children:M?(0,n.jsx)(sZ,{size:14}):(0,n.jsx)(sQ,{size:14})}),(0,n.jsx)("button",{className:"btn ghost icon sm",onClick:c,"aria-label":p("db.schema.refresh"),title:p("db.schema.refresh"),children:(0,n.jsx)(eY.A,{size:14,className:i?"spin":""})})]})]}),(0,n.jsx)("div",{className:"dbs-tree",children:r?(0,n.jsx)("p",{className:"gx-note err",children:r}):!l&&i?(0,n.jsxs)("p",{className:"muted small db-note",children:[(0,n.jsx)(h.A,{size:14,className:"spin"})," ",p("db.schema.loading")]}):0===L.length?(0,n.jsx)("p",{className:"muted small db-note",children:p("db.schema.empty")}):L.map(e=>{let[s,t]=e;return(0,n.jsxs)("div",{children:[!O&&(0,n.jsxs)("button",{className:"dbs-group",onClick:()=>N(e=>({...e,[s]:!1===e[s]})),children:[!1===w[s]?(0,n.jsx)(H.A,{size:14}):(0,n.jsx)(R.A,{size:14}),s,(0,n.jsx)("span",{className:"muted",children:t.length})]}),(O||!1!==w[s])&&t.map(e=>(0,n.jsxs)("button",{className:"dbs-table ".concat((null==y?void 0:y.schema)===e.schema&&y.name===e.name?"on":""),onClick:()=>k(e),onDoubleClick:()=>m(e),children:["view"===e.type?(0,n.jsx)(K.A,{size:14}):(0,n.jsx)(sy,{size:14}),(0,n.jsx)("span",{className:"nm",children:e.name}),void 0!==e.rows&&(0,n.jsxs)("span",{className:"muted",children:["≈",(0,q._E)(e.rows)]})]},"".concat(e.schema,".").concat(e.name)))]},s)})})]}),children:(0,n.jsx)("section",{className:"dbs-detail",children:y?(0,n.jsxs)(n.Fragment,{children:[(0,n.jsxs)("div",{className:"row gap-s wrap",children:[(0,n.jsxs)("h3",{className:"mono res-m0",children:["main"!==y.schema&&(null==l?void 0:l.engine)!=="mysql"?"".concat(y.schema,"."):"",y.name]}),(0,n.jsxs)("span",{className:"muted small",children:["view"===y.type?p("db.schema.view"):p("db.schema.table"),void 0!==y.rows?" \xb7 ".concat(p("db.rows.est",{count:(0,q._E)(y.rows)})):""]}),(0,n.jsx)("span",{className:"grow"}),(0,n.jsxs)("button",{className:"btn primary sm",onClick:()=>m(y),children:[(0,n.jsx)(u.A,{size:14}),p("db.select100")]}),(0,n.jsxs)("button",{className:"btn sm",onClick:()=>{var e;null==(e=navigator.clipboard)||e.writeText(y.name),v(p("db.copied"))},children:[(0,n.jsx)(em.A,{size:14}),p("db.copyName")]})]}),A?(0,n.jsx)("p",{className:"gx-note err",children:A}):C?(0,n.jsxs)("table",{className:"dbr-table dbs-cols",children:[(0,n.jsx)("thead",{children:(0,n.jsxs)("tr",{children:[(0,n.jsx)("th",{children:p("db.col.name")}),(0,n.jsx)("th",{children:p("db.col.type")}),(0,n.jsx)("th",{children:p("db.col.null")}),(0,n.jsx)("th",{children:p("db.col.key")}),(0,n.jsx)("th",{children:p("db.col.default")})]})}),(0,n.jsx)("tbody",{children:C.map(e=>{var s;return(0,n.jsxs)("tr",{children:[(0,n.jsx)("td",{className:"mono",children:e.name}),(0,n.jsx)("td",{className:"mono",children:e.type}),(0,n.jsx)("td",{children:e.nullable?p("db.yes"):(0,n.jsx)("b",{children:p("db.no")})}),(0,n.jsx)("td",{children:e.key?(0,n.jsx)("span",{className:"db-key",children:e.key}):""}),(0,n.jsx)("td",{className:"mono",children:null!=(s=e.default)?s:(0,n.jsx)("i",{className:"db-null",children:"NULL"})})]},e.name)})})]}):(0,n.jsxs)("p",{className:"muted small db-note",children:[(0,n.jsx)(h.A,{size:14,className:"spin"})," ",p("db.schema.loading")]})]}):(0,n.jsx)("p",{className:"muted db-note",children:p("db.schema.pick")})})})}function s0(e){let{onClose:s,onSave:t,title:l,initial:r=""}=e,{t:i}=(0,j.s9)(),[c,o]=(0,a.useState)(r);return(0,n.jsxs)(b.aF,{title:null!=l?l:i("db.save"),onClose:s,children:[(0,n.jsxs)("div",{className:"field",children:[(0,n.jsx)("label",{children:i("db.saved.name")}),(0,n.jsx)("input",{className:"input",autoFocus:!0,value:c,onChange:e=>o(e.target.value),onKeyDown:e=>{"Enter"===e.key&&c.trim()&&t(c.trim())}})]}),(0,n.jsxs)("div",{className:"row res-end",children:[(0,n.jsx)("button",{className:"btn ghost",onClick:s,children:i("common.cancel")}),(0,n.jsx)("button",{className:"btn primary",disabled:!c.trim(),onClick:()=>t(c.trim()),children:i(l?"common.saveChanges":"db.save")})]})]})}function s1(e){let{o:s,hist:t,saved:l,sql:r,database:i,onUse:c,onChanged:o}=e,{t:d}=(0,j.s9)(),h=(0,b.dj)(),[m,u]=(0,a.useState)(null),[p,v]=(0,a.useState)(null),g=e=>h(e instanceof Error?e.message:"","err"),f=async()=>{try{await x.FH.del("/objects/".concat(s.id,"/db/history")),o()}catch(e){g(e)}},w=async e=>{await x.FH.del("/objects/".concat(s.id,"/db/saved/").concat(e)),o()},N=async(e,t,n)=>{try{await x.FH.patch("/objects/".concat(s.id,"/db/saved/").concat(e),t),n&&h(n),o()}catch(e){g(e)}};return(0,n.jsxs)("div",{className:"dbh",children:[(0,n.jsxs)("section",{children:[(0,n.jsx)("div",{className:"row gap-s",children:(0,n.jsx)("h3",{className:"grow",children:d("db.saved.title")})}),0===l.length?(0,n.jsx)("p",{className:"muted small",children:d("db.saved.none")}):l.map(e=>(0,n.jsxs)("div",{className:"dbh-row",children:[(0,n.jsxs)("button",{className:"dbh-main",onClick:()=>c(e.sql,e.database),title:d("db.saved.use"),children:[(0,n.jsx)("b",{children:e.name}),(0,n.jsx)("code",{className:"mono",title:e.sql,children:e.sql.trim().slice(0,600)})]}),(0,n.jsx)("button",{className:"btn ghost icon sm",onClick:()=>u(e),"aria-label":d("db.saved.rename"),title:d("db.saved.rename"),children:(0,n.jsx)(ss.A,{size:14})}),(0,n.jsx)("button",{className:"btn ghost icon sm",disabled:!r.trim()||r===e.sql,onClick:()=>void N(e.id,{sql:r,database:null!=i?i:""},d("db.saved.updated")),"aria-label":d("db.saved.replace"),title:d("db.saved.replace"),children:(0,n.jsx)(sl,{size:14})}),(0,n.jsx)("button",{className:"btn ghost icon sm",onClick:()=>v(e),"aria-label":d("db.delete"),title:d("db.delete"),children:(0,n.jsx)(et.A,{size:14})})]},e.id))]}),(0,n.jsxs)("section",{children:[(0,n.jsxs)("div",{className:"row gap-s",children:[(0,n.jsx)("h3",{className:"grow",children:d("db.hist.title")}),t&&t.length>0&&(0,n.jsxs)("button",{className:"btn ghost sm",onClick:()=>void f(),children:[(0,n.jsx)(et.A,{size:14}),d("db.hist.clear")]})]}),null===t?(0,n.jsx)("p",{className:"muted small",children:d("git.loading")}):0===t.length?(0,n.jsx)("p",{className:"muted small",children:d("db.hist.empty")}):t.map(e=>{var s;return(0,n.jsx)("div",{className:"dbh-row",children:(0,n.jsxs)("button",{className:"dbh-main",onClick:()=>c(e.sql,e.database),title:e.error,children:[(0,n.jsxs)("span",{className:"row gap-s small",children:[(0,n.jsx)("i",{className:"dot ".concat(e.ok?"ok":"err")}),(0,n.jsx)("span",{className:"muted",children:(0,L.KN)(e.at)}),e.ok?(0,n.jsxs)("span",{className:"muted",children:["\xb7 ",void 0!==e.rows?d("db.result.rows",{count:e.rows}):d("db.result.affected",{count:null!=(s=e.affected)?s:0})," \xb7 ",e.ms," ms"]}):(0,n.jsx)("span",{className:"db-bad",children:e.error})]}),(0,n.jsx)("code",{className:"mono",title:e.error?void 0:e.sql,children:e.sql.trim().slice(0,600)})]})},e.n)})]}),m&&(0,n.jsx)(s0,{title:d("db.saved.rename"),initial:m.name,onClose:()=>u(null),onSave:e=>{u(null),N(m.id,{name:e},d("db.saved.updated"))}}),p&&(0,n.jsx)(b.TM,{title:d("db.saved.delete.title",{name:p.name}),body:d("db.saved.delete.body"),confirmLabel:d("db.delete"),danger:!0,onConfirm:()=>w(p.id),onClose:()=>v(null)})]})}function s2(e){let{object:s,pane:t,onPane:l}=e,{t:r}=(0,j.s9)(),i=(0,b.dj)(),c=s.config,o="hive-am.dbq.".concat(s.id),[d,h]=(0,a.useState)(""),[m,u]=(0,a.useState)(void 0),[p,v]=(0,a.useState)(!1),[g,f]=(0,a.useState)(null),[w,N]=(0,a.useState)(""),[y,k]=(0,a.useState)(null),[C,S]=(0,a.useState)(""),[A,E]=(0,a.useState)(!1),[z,F]=(0,a.useState)([]),[L,q]=(0,a.useState)(null),[O,T]=(0,a.useState)(!1),M=(0,a.useRef)(null),R=(0,a.useRef)(new Map),[,H]=(0,a.useState)(0),I=e=>"".concat(null!=m?m:"","|").concat(e.schema,".").concat(e.name),D=(0,a.useMemo)(()=>({schema:y,cols:e=>{let s=R.current.get(I(e));return Array.isArray(s)?s:void 0},need:e=>{let t=I(e);if(R.current.has(t))return;R.current.set(t,"loading");let n=null!=m?m:null==y?void 0:y.database;x.FH.get("/objects/".concat(s.id,"/db/columns?schema=").concat(encodeURIComponent(e.schema),"&table=").concat(encodeURIComponent(e.name)).concat(n&&y&&"sqlite"!==y.engine?"&database=".concat(encodeURIComponent(n)):"")).then(e=>R.current.set(t,e.map(e=>e.name))).catch(()=>R.current.delete(t)).finally(()=>H(e=>e+1))}}),[y,m,s.id]);(0,a.useEffect)(()=>{R.current.clear()},[s.id,s.updated_at,m]);let U=(0,a.useRef)(null);(0,a.useEffect)(()=>{try{var e;h(null!=(e=localStorage.getItem(o))?e:"")}catch(e){}},[o]);let B=e=>{h(e);try{localStorage.setItem(o,e)}catch(e){}},$=(0,a.useCallback)(async e=>{E(!0),S("");try{let t=await x.FH.get("/objects/".concat(s.id,"/db/schema").concat(e?"?database=".concat(encodeURIComponent(e)):""));k(t)}catch(e){S(e instanceof Error?e.message:"")}finally{E(!1)}},[s.id]),W=(0,a.useCallback)(()=>{x.FH.get("/objects/".concat(s.id,"/db/history")).then(q).catch(()=>q([])),x.FH.get("/objects/".concat(s.id,"/db/saved")).then(F).catch(()=>void 0)},[s.id]);(0,a.useEffect)(()=>{$(m)},[$,m,s.updated_at]),(0,a.useEffect)(()=>{W()},[W]);let P=async e=>{let t=M.current,n=t&&t.selectionEnd>t.selectionStart?d.slice(t.selectionStart,t.selectionEnd):d,a=(null!=e?e:n).trim();if(a&&!p){v(!0),N("");try{let e=await x.FH.post("/objects/".concat(s.id,"/db/query"),{sql:a,database:m});f(e)}catch(e){f(null),N(e instanceof Error?e.message:"")}finally{v(!1),W()}}},J=(e,s)=>{let t=d.trimEnd(),n=t?"".concat(t,"\n\n"):"";B(n+e),U.current={from:n.length,to:n.length+e.length},void 0!==s&&u(s),l("query")};(0,a.useEffect)(()=>{let e=U.current,s=M.current;e&&s&&"query"===t&&(U.current=null,requestAnimationFrame(()=>{s.focus(),s.setSelectionRange(e.from,e.to),s.scrollTop=s.scrollHeight}))});let _=async()=>{let e=M.current,s=e&&e.selectionEnd>e.selectionStart;try{var t,n;if(s&&e){let s=await sO(d.slice(e.selectionStart,e.selectionEnd),null!=(n=null==y?void 0:y.engine)?n:c.engine);B(d.slice(0,e.selectionStart)+s+d.slice(e.selectionEnd))}else B(await sO(d,null!=(t=null==y?void 0:y.engine)?t:c.engine))}catch(e){i(r("db.format.fail",{error:e instanceof Error?e.message.split("\n")[0]:""}),"err")}},K=async e=>{try{await x.FH.post("/objects/".concat(s.id,"/db/saved"),{name:e,sql:d,database:m}),i(r("db.saved.done")),W()}catch(e){i(e instanceof Error?e.message:"","err")}};return(0,n.jsxs)("div",{className:"dbw",children:["query"===t&&(0,n.jsx)(sX,{o:s,sql:d,setSql:B,area:M,run:()=>void P(),format:()=>void _(),ctx:D,busy:p,result:g,error:w,schema:y,database:m,setDatabase:u,saved:z,onSave:()=>T(!0),onUse:J,onManage:()=>l("history")}),"schema"===t&&(0,n.jsx)(sY,{o:s,schema:y,err:C,loading:A,onReload:()=>void $(m),database:m,setDatabase:u,onOpen:e=>{var s;let t=function(e,s){let t="sqlite"===e?sU(e,s.name):"".concat(sU(e,s.schema),".").concat(sU(e,s.name));return"mssql"===e?"SELECT TOP 100 * FROM ".concat(t):"SELECT * FROM ".concat(t," LIMIT 100")}(null!=(s=null==y?void 0:y.engine)?s:c.engine,e);B(t),l("query"),P(t)}}),"history"===t&&(0,n.jsx)(s1,{o:s,hist:L,saved:z,sql:d,database:m,onUse:J,onChanged:W}),O&&(0,n.jsx)(s0,{onClose:()=>T(!1),onSave:e=>{T(!1),K(e)}})]})}function s4(e){let{id:s}=e,{t}=(0,j.s9)(),{objects:l,ready:r,objects:i,error:c,retry:o}=(0,p.o0)(),d=s?l.find(e=>e.id===s):void 0,[h,m]=(0,a.useState)(!1);(0,a.useLayoutEffect)(()=>{try{m("1"===localStorage.getItem("hive-obj-switcher-collapsed"))}catch(e){}},[]);let[u,x]=(0,a.useState)(!1);return(0,n.jsxs)("div",{className:"ws ".concat(h?"sw-collapsed":""," ").concat(u?"sw-anim":""),children:[(0,n.jsx)(A,{activeId:s,collapsed:h,onToggle:()=>{x(!0),m(e=>{try{localStorage.setItem("hive-obj-switcher-collapsed",e?"0":"1")}catch(e){}return!e})}}),!r&&c?(0,n.jsx)("section",{className:"ws-chat",children:(0,n.jsx)("div",{className:"ow-pad",children:(0,n.jsx)(b.lZ,{kind:"err",children:(0,n.jsxs)("div",{className:"row gap-s wrap",children:[(0,n.jsx)("span",{className:"grow",children:c}),(0,n.jsx)("button",{className:"btn sm",onClick:()=>void o(),children:t("rs.retry")})]})})})}):s||r?s?d?(0,n.jsx)(s3,{object:d},d.id):(0,n.jsx)("section",{className:"ws-chat",children:(0,n.jsx)("div",{className:"ow-pad",children:r?(0,n.jsx)(b.pp,{title:t("ow.gone")}):(0,n.jsx)(b.pp,{title:t("git.loading")})})}):(0,n.jsx)("section",{className:"ws-chat",children:(0,n.jsx)("div",{className:"ow-pad",children:(0,n.jsx)(b.pp,{title:t(i.length?"ow.pick":"ow.empty.title"),body:i.length?void 0:t("ow.empty.body")})})}):(0,n.jsx)("section",{className:"ws-chat"})]})}function s3(e){let{object:s}=e,{t}=(0,j.s9)(),c=(0,b.dj)(),w="http"===s.kind?["requests","history","vars","config"]:"database"===s.kind?["query","schema","history","config"]:["summary","logs","config"],[N,y]=(0,v.Z)("tab",w[0]),k=w.includes(N)?N:w[0],[C,S]=(0,a.useState)(""),[A,E]=(0,a.useState)(!1),[z,F]=(0,a.useState)(!1),[L,q]=(0,a.useState)(null),{icon:O,color:T}=g.Nd[s.kind],M=s.state.status,R="running"===M||"starting"===M,H=async e=>{q(e);try{await x.FH.post("/objects/".concat(s.id,"/action"),{action:e})}catch(s){c("".concat(t("obj.act.failed",{action:t("obj.act.".concat(e))}),": ").concat(s instanceof Error?s.message:""),"err")}finally{q(null)}},I=async()=>{q("test");try{let e=await x.FH.post("/object-db/test",{id:s.id,config:s.config});c("".concat(t("db.test.ok")," \xb7 ").concat(e.version," \xb7 ").concat(e.ms," ms"))}catch(e){c(e instanceof Error?e.message:"","err")}finally{q(null)}},D="cluster"===s.kind,U=D?s.config.members:[],{objects:B}=(0,p.o0)(),$=U.map(e=>{var s,t;return null!=(t=null==(s=B.find(s=>s.id===e))?void 0:s.name)?t:""}).filter(Boolean),W="server"===s.kind||"docker"===s.kind&&"compose"!==s.config.mode,P="docker"===s.kind?s.config:null,J=[];"http"!==s.kind&&"database"!==s.kind&&(J.push({id:"stop",label:t(D?"obj.act.stopAll":"obj.act.stop"),icon:(0,n.jsx)(l.A,{size:14}),disabled:!!L||!R&&"error"!==M,onClick:()=>void H("stop")}),J.push({id:"restart",label:t(D?"obj.act.restartAll":"obj.act.restart"),icon:(0,n.jsx)(r.A,{size:14}),disabled:!!L,onClick:()=>void H("restart")})),P&&"container"===P.mode&&J.push({id:"inspect",label:t("svc.inspect"),icon:(0,n.jsx)(i.A,{size:14}),onClick:()=>E(!0)}),P&&"existing"!==P.mode&&J.push({id:"recreate",label:t("obj.act.recreate"),icon:(0,n.jsx)(o,{size:14}),danger:!0,hint:t("svc.recreate.hint"),disabled:!!L,onClick:()=>F(!0)}),P&&"compose"===P.mode&&J.push({id:"rebuild",label:t("obj.act.rebuild"),icon:(0,n.jsx)(d.A,{size:14}),hint:t("svc.rebuild.hint"),disabled:!!L,onClick:()=>void H("rebuild")});let _=(0,n.jsxs)(n.Fragment,{children:["database"===s.kind&&(0,n.jsxs)("button",{className:"btn sm",disabled:!!L,onClick:()=>void I(),children:["test"===L?(0,n.jsx)(h.A,{size:14,className:"spin"}):(0,n.jsx)(m.A,{size:14}),t("db.test")]}),"http"!==s.kind&&"database"!==s.kind&&(0,n.jsxs)("button",{className:"btn primary sm",disabled:!!L||(D?"running"===M:R),onClick:()=>void H("start"),children:[(0,n.jsx)(u.A,{size:14}),t(D?"obj.act.startAll":"obj.act.start")]}),W&&(0,n.jsx)(ef.N,{spec:{objectId:s.id},title:"server"===s.kind?t("dock.here"):t("dock.shell")})]});return(0,n.jsxs)("section",{className:"ws-chat",children:[(0,n.jsx)(b.DS,{back:{href:"/",label:t("ow.back")},avatar:(0,n.jsx)("span",{className:"obj-ico",style:{"--c":T},children:(0,n.jsx)(O,{size:22})}),title:s.name,meta:(0,n.jsxs)(n.Fragment,{children:[(0,n.jsxs)("span",{className:"ostatus ".concat(g.Wy[M]),children:[(0,n.jsx)(f.md,{status:M}),t("obj.status.".concat(M))]}),(0,n.jsx)("span",{children:t("obj.kind.".concat(s.kind))}),s.state.detail&&(0,n.jsx)("span",{children:(0,g.HS)(t,s.state.detail)})]}),primary:_,actions:J}),(0,n.jsx)(b.tU,{idPrefix:"ow",label:t("rs.tabs"),value:k,onChange:e=>{"logs"===e&&S(""),y(e)},tabs:w.map(e=>({id:e,label:t("ow.tab.".concat(e))}))}),(0,n.jsx)("div",{className:"ow-body ".concat("logs"===k||"requests"===k||"history"===k||"query"===k||"schema"===k?"full":""),children:(0,n.jsxs)(b.Kp,{id:k,value:k,idPrefix:"ow",children:["summary"===k&&(0,n.jsx)(es,{object:s,onSeeLogs:e=>{S(null!=e?e:""),y("logs")}}),"logs"===k&&(0,n.jsx)(eb,{id:s.id,members:D?$:void 0,initialFilter:C||void 0},C),"config"===k&&(0,n.jsx)(el,{object:s}),"database"===s.kind&&("query"===k||"schema"===k||"history"===k)&&(0,n.jsx)(s2,{object:s,pane:k,onPane:y}),"http"===s.kind&&("requests"===k||"history"===k)&&(0,n.jsx)(sA,{object:s,pane:k,onOpenVars:()=>y("vars"),onGoRequests:()=>y("requests")}),"vars"===k&&(0,n.jsx)(sz,{object:s})]})}),A&&(0,n.jsx)(G,{objectId:s.id,title:s.name,onClose:()=>E(!1)}),z&&(0,n.jsx)(b.TM,{title:t("rs.recreate.title",{name:s.name}),body:t("svc.recreate.hint"),confirmLabel:t("obj.act.recreate"),danger:!0,onConfirm:()=>H("recreate"),onClose:()=>F(!1)})]})}},50703:(e,s,t)=>{t.d(s,{A:()=>n});let n=(0,t(74955).A)("ArrowDown",[["path",{d:"M12 5v14",key:"s699le"}],["path",{d:"m19 12-7 7-7-7",key:"1idqje"}]])},75014:(e,s,t)=>{t.d(s,{A:()=>n});let n=(0,t(74955).A)("ArrowUp",[["path",{d:"m5 12 7-7 7 7",key:"hav0vg"}],["path",{d:"M12 19V5",key:"x0mq9r"}]])},78330:(e,s,t)=>{t.d(s,{A:()=>n});let n=(0,t(74955).A)("PanelLeftClose",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M9 3v18",key:"fh3hqa"}],["path",{d:"m16 15-3-3 3-3",key:"14y99z"}]])}}]);
|