@runeya/runeya 2.0.3 → 2.0.5
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/agent/index.js +12 -0
- package/agent/index.js.map +1 -1
- package/agent-manager-UP3PJ35X-LO6B3XKF.js +8 -0
- package/{chunk-PVUDD5DD.js → chunk-BSPKMRKW.js} +5 -2
- package/{chunk-PVUDD5DD.js.map → chunk-BSPKMRKW.js.map} +1 -1
- package/{dist-KSETQNTN.js → dist-6LF3EWHR.js} +4 -4
- package/index.js +1 -1
- package/package.json +1 -1
- package/web/assets/{AddressBar.vue-BKDjFQEO.js → AddressBar.vue-BOHUxRhN.js} +1 -1
- package/web/assets/{AgentPage-BgJ6Oumo.js → AgentPage-DFHxsu-9.js} +1 -1
- package/web/assets/{AgentScalarChatInterface.vue-C__iUL1Z.js → AgentScalarChatInterface.vue-Cxxiyyj8.js} +1 -1
- package/web/assets/{AgentTerminalPage-10MrzYed.js → AgentTerminalPage-D-T5emEl.js} +1 -1
- package/web/assets/AiChatPage-C81mFvv5.js +1 -0
- package/web/assets/{ApiDocsPage-BLR94Cpt.js → ApiDocsPage-CMGvcGEJ.js} +3 -3
- package/web/assets/{AppLayout-CDmZkp4X.js → AppLayout-D10vX1fo.js} +1 -1
- package/web/assets/{AuditPage-DmzLNZum.js → AuditPage-DZiwogoY.js} +1 -1
- package/web/assets/{CodeInput.vue-DESnqXGT.js → CodeInput.vue-8aNMYCYM.js} +1 -1
- package/web/assets/{Collection.vue-DsMsUTvq.js → Collection.vue-N8zZa4pa.js} +1 -1
- package/web/assets/{CollectionAuthentication.vue-CMRcgbVh.js → CollectionAuthentication.vue-cJOxjafo.js} +1 -1
- package/web/assets/CollectionCookies.vue-DrFQqbwv.js +1 -0
- package/web/assets/{CollectionEnvironment.vue-1tFpk-iW.js → CollectionEnvironment.vue-DWPTZ8qx.js} +1 -1
- package/web/assets/{CollectionOverview.vue-ClKgsIxR.js → CollectionOverview.vue-1Qf130d5.js} +1 -1
- package/web/assets/CollectionScripts.vue-DhcFFz80.js +1 -0
- package/web/assets/{CollectionServers.vue-DQQoH4jS.js → CollectionServers.vue-h7E03W0v.js} +1 -1
- package/web/assets/{CollectionSettings.vue-BNccb6p7.js → CollectionSettings.vue-CFrOwl7U.js} +1 -1
- package/web/assets/CollectionSync.vue-PV_tIrJS.js +1 -0
- package/web/assets/{CommandActionInput.vue-B3M0qimk.js → CommandActionInput.vue-L7AcEf6T.js} +1 -1
- package/web/assets/{Cookies.vue-Dm17xLaC.js → Cookies.vue-_P19OjMm.js} +1 -1
- package/web/assets/{DashboardPage-jcsHhPai.js → DashboardPage-BUDWnuJT.js} +1 -1
- package/web/assets/{DataTable.vue-zdywGoM2.js → DataTable.vue-DYVeGQPP.js} +1 -1
- package/web/assets/{DataTableCheckbox.vue-CclkBKvE.js → DataTableCheckbox.vue-n2xCTJj1.js} +1 -1
- package/web/assets/{DataTableHeader.vue-CeoLy43w.js → DataTableHeader.vue-ByesjY2f.js} +1 -1
- package/web/assets/{DataTableInput.vue-3ERbFJoE.js → DataTableInput.vue-uPpuKzrX.js} +1 -1
- package/web/assets/{DeleteSidebarListElement.vue-3UGiyFzi.js → DeleteSidebarListElement.vue-CBIb58rU.js} +1 -1
- package/web/assets/{EditSidebarListElement.vue-CCE5jAED.js → EditSidebarListElement.vue-DqTVSZtI.js} +1 -1
- package/web/assets/{EditorIcon-C2ppEtfo.js → EditorIcon-B70ii4EM.js} +1 -1
- package/web/assets/{EmptyState.vue-DlGCQP8X.js → EmptyState.vue-CcnWPtfW.js} +1 -1
- package/web/assets/{Environment.vue-B9fCQn_o.js → Environment.vue-Cgx06nkH.js} +1 -1
- package/web/assets/{EnvironmentForm-B6sX-gjz.js → EnvironmentForm-iBZzqZKd.js} +1 -1
- package/web/assets/{EnvironmentFormPage-LkjLL2Tx.js → EnvironmentFormPage-YVxAAreT.js} +1 -1
- package/web/assets/{EnvironmentListPage-DJrq-bw9.js → EnvironmentListPage-CHYDJ_c-.js} +1 -1
- package/web/assets/{EnvironmentModal.vue-CGuZ2LaE.js → EnvironmentModal.vue-BJNYZuPC.js} +1 -1
- package/web/assets/{EnvironmentSelector-BLJiz2gj.js → EnvironmentSelector-BZn_taec.js} +1 -1
- package/web/assets/{Form.vue-Cv791OrG.js → Form.vue-NLXFw40d.js} +1 -1
- package/web/assets/{IconSelector.vue-fCHQhHMO.js → IconSelector.vue-Ykh6DAln.js} +1 -1
- package/web/assets/{KanbanBoardPage-DhSVHsG8.js → KanbanBoardPage-gtXv0ZhK.js} +3 -3
- package/web/assets/{KanbanListPage-BeViEJtv.js → KanbanListPage-DMNSYO_o.js} +1 -1
- package/web/assets/{LaunchProjectPage-CIGYCxFP.js → LaunchProjectPage-DSyBuhky.js} +1 -1
- package/web/assets/{LaunchServicesPage-D0j30OXl.js → LaunchServicesPage-CiGkiqwE.js} +1 -1
- package/web/assets/{LogViewer-CXdJvW0h.js → LogViewer-DBVkaZnm.js} +1 -1
- package/web/assets/{ProcessControls-DL7EynVq.js → ProcessControls-Cya4eb3d.js} +1 -1
- package/web/assets/{ProcessDetailPage-DrFtEQIB.js → ProcessDetailPage-8ypC6zkc.js} +1 -1
- package/web/assets/{ProcessMetrics-DI_OfGVK.js → ProcessMetrics-CxRgbaUS.js} +1 -1
- package/web/assets/{ProjectDetailPage-BbTkdOjA.js → ProjectDetailPage-a1lTAjKP.js} +1 -1
- package/web/assets/{ProjectListPage-D5AjQ76w.js → ProjectListPage-Dewqu8Dm.js} +1 -1
- package/web/assets/{RandomJobTestPage-BqA1OISu.js → RandomJobTestPage-E6mevkqw.js} +1 -1
- package/web/assets/{Request.vue-DZqQbBpT.js → Request.vue-DQPTi6ur.js} +1 -1
- package/web/assets/{RequestAuth.vue-D_xgg-Np.js → RequestAuth.vue-DV5nNO3f.js} +1 -1
- package/web/assets/{RequestRoot.vue-BNteZz7y.js → RequestRoot.vue-DKlASKU5.js} +1 -1
- package/web/assets/{ScalarAsciiArt.vue-Bq6jHX7k.js → ScalarAsciiArt.vue-mk9jZSKh.js} +1 -1
- package/web/assets/{ScalarIconEyeSlash.vue-BmXqf-BS.js → ScalarIconEyeSlash.vue-DWKhR_BX.js} +1 -1
- package/web/assets/{ScalarIconTrash.vue-B6zURvRt.js → ScalarIconTrash.vue-CtSwrO5S.js} +1 -1
- package/web/assets/{ScenarioEditorPage-C6ezD0zR.js → ScenarioEditorPage-DogHTbNU.js} +1 -1
- package/web/assets/{ServerVariablesForm.vue-DNmYrfHr.js → ServerVariablesForm.vue-DYmWiAuz.js} +1 -1
- package/web/assets/{ServiceControlsBar-IQttXg13.js → ServiceControlsBar-B8Sm6p9E.js} +1 -1
- package/web/assets/{ServiceDetailPage-KU1gvCBw.js → ServiceDetailPage-DpWLccOg.js} +1 -1
- package/web/assets/{ServiceFormPage-DJjK3iWz.js → ServiceFormPage-DQbOgtB3.js} +1 -1
- package/web/assets/{Settings.vue-DKVhG7ed.js → Settings.vue-buoYkM3l.js} +1 -1
- package/web/assets/{SettingsPage-B_3jbuRH.js → SettingsPage-CCjZq5jP.js} +1 -1
- package/web/assets/{SetupKeyPage-CuqL0je4.js → SetupKeyPage-BdSpJPDR.js} +1 -1
- package/web/assets/{SetupPage-66SJwdOq.js → SetupPage-BsWaVllB.js} +1 -1
- package/web/assets/{Sidebar.vue-Bi6nDDuM.js → Sidebar.vue-DntMEn5m.js} +1 -1
- package/web/assets/{SidebarButton.vue-DXlFKFt7.js → SidebarButton.vue-DTin2zI2.js} +1 -1
- package/web/assets/{SidebarListElement.vue-RCpzoEDa.js → SidebarListElement.vue-zlfRLuE5.js} +1 -1
- package/web/assets/{UnlockPage-DOJwyaIc.js → UnlockPage-CmwRV1XA.js} +1 -1
- package/web/assets/{VariablesTable-DKZDozPX.js → VariablesTable-C8lxLV1V.js} +1 -1
- package/web/assets/{ViewLayout.vue-CA3dFsBE.js → ViewLayout.vue-C7w_U_o6.js} +1 -1
- package/web/assets/{ViewLayoutContent.vue-D0ZyDMeg.js → ViewLayoutContent.vue-CAXM5eIo.js} +1 -1
- package/web/assets/{ViewLayoutSection.vue-2zO572AC.js → ViewLayoutSection.vue-BzJIsja7.js} +1 -1
- package/web/assets/{active-entities-y4R6TMSt.js → active-entities-C2TbBQeI.js} +1 -1
- package/web/assets/{api-reference-BxlRg4qR.js → api-reference-BJkGMKQj.js} +1 -1
- package/web/assets/{autocomplete-6qBTCyf6.js → autocomplete-CxPmwkcZ.js} +1 -1
- package/web/assets/{card-CCBkP2P8.js → card-D5_gGGD-.js} +1 -1
- package/web/assets/{checkbox-C1esDvCD.js → checkbox-C0sXsL9e.js} +1 -1
- package/web/assets/{chip-DEYEeW-F.js → chip-rnk9_cKV.js} +1 -1
- package/web/assets/{column-aK2I8PaJ.js → column-ChvIrUdH.js} +1 -1
- package/web/assets/{core-CGdWGCUX.js → core-wYvkV3-A.js} +1 -1
- package/web/assets/{cssMode-DpoqIkov.js → cssMode-DdlczEni.js} +1 -1
- package/web/assets/{dist-BFf6fIdo.js → dist-BHh6fQzR.js} +1 -1
- package/web/assets/{dist-wmfsxjxc.js → dist-DBBhfLmf.js} +1 -1
- package/web/assets/{dist-Cu0IbGNw.js → dist-DeOvPbza.js} +1 -1
- package/web/assets/{dist-BpDjOvWf.js → dist-ZJ37S89a.js} +1 -1
- package/web/assets/{divider-Bk4Brbv7.js → divider-D6L7p-FU.js} +1 -1
- package/web/assets/{editor.store-BF8_S543.js → editor.store-CWtgIxvE.js} +1 -1
- package/web/assets/{fieldset-DA1GYALV.js → fieldset-CiwzR0un.js} +1 -1
- package/web/assets/{freemarker2-C0SgSEQX.js → freemarker2-_wLEdPSz.js} +1 -1
- package/web/assets/{handlebars-DgMfQd2U.js → handlebars-66zKrSAk.js} +1 -1
- package/web/assets/{html-XhTY3nJ1.js → html-oM24gnvF.js} +1 -1
- package/web/assets/{htmlMode-a8Q5--J-.js → htmlMode-D65_fKu-.js} +1 -1
- package/web/assets/{index-DtgzVYQA.js → index-D5xJxOo2.js} +5 -5
- package/web/assets/index-Pqvy10Qz.css +1 -0
- package/web/assets/{javascript-CF3GRA6J.js → javascript-D-njx6Yh.js} +1 -1
- package/web/assets/{jsonMode-BVI1ty1E.js → jsonMode-bqHogKpM.js} +1 -1
- package/web/assets/{keyboard-C-kSRd_7.js → keyboard-BzTLpobK.js} +1 -1
- package/web/assets/{lib-Byz6Xoc7.js → lib-CPo2W-Kx.js} +1 -1
- package/web/assets/{library-yLls1gid.js → library-DmdL5Pgv.js} +1 -1
- package/web/assets/{liquid-BTUbnx76.js → liquid-BDL70fhI.js} +1 -1
- package/web/assets/{mdx-CT9JRVqk.js → mdx-Bo_N_Jd-.js} +1 -1
- package/web/assets/{mediaTypes-C2O-9mqw.js → mediaTypes-Cnm-r_sv.js} +1 -1
- package/web/assets/{message-BP6E2kB3.js → message-gtjFpAbc.js} +1 -1
- package/web/assets/{minus-l3m1t2VR.js → minus-C5Lsl7Wp.js} +1 -1
- package/web/assets/{multiselect-Dx1fcUSk.js → multiselect-BlmCsiSW.js} +1 -1
- package/web/assets/{password-DrgM_4MT.js → password-RYOg4soC.js} +1 -1
- package/web/assets/{plus-Dz5uLOsa.js → plus-C52I3-BN.js} +1 -1
- package/web/assets/{pretty-ms-BlzIQVgC.js → pretty-ms-BBvjfSt1.js} +1 -1
- package/web/assets/process.store-3BOses3z.js +1 -0
- package/web/assets/{project.store-IkiJVnHi.js → project.store-emr8mjg8.js} +1 -1
- package/web/assets/{python-D-ygMaD7.js → python-D1UXSNgK.js} +1 -1
- package/web/assets/{radiobutton-BF_JCgK5.js → radiobutton-B0t-WlKP.js} +1 -1
- package/web/assets/{razor-Cj7iiXRp.js → razor-Bd4GOtMe.js} +1 -1
- package/web/assets/router-DHhyM3YQ.js +1 -0
- package/web/assets/{settings.store-DlrIalG7.js → settings.store-CDr0Mia7.js} +1 -1
- package/web/assets/{store-DIQ5cnJB.js → store-CZKREOuj.js} +1 -1
- package/web/assets/{tabpanel-BFvptblG.js → tabpanel-geoVG-sX.js} +1 -1
- package/web/assets/{tag-Bg6HzaCD.js → tag-Dv5CaUPa.js} +1 -1
- package/web/assets/{toggleswitch-COqZTyfv.js → toggleswitch-DNzwv4Lc.js} +1 -1
- package/web/assets/trpc-B-vyi6vd.js +1 -0
- package/web/assets/{tsMode-IV67jT9w.js → tsMode-BkM4CkKr.js} +1 -1
- package/web/assets/{typescript-Bx9S0mR5.js → typescript-CUKl0qxN.js} +1 -1
- package/web/assets/{urls-D-5DkVsl.js → urls-BqL-MrG5.js} +1 -1
- package/web/assets/{use-tree-walker-Xi56Kyhe.js → use-tree-walker-E64HILpa.js} +1 -1
- package/web/assets/useAiChatDrawer-uS6dsG6x.js +1 -0
- package/web/assets/{useClipboard-CQwV_ErZ.js → useClipboard-Bep2crMO.js} +1 -1
- package/web/assets/{useLayout-CtomPxVB.js → useLayout-F9XKAPPL.js} +1 -1
- package/web/assets/{usePluginManager-B0LLVYIo.js → usePluginManager-yL67GqCi.js} +1 -1
- package/web/assets/{useSidebar-lFxMzh7T.js → useSidebar-DVRRagIa.js} +1 -1
- package/web/assets/{vue-router-DyWP0jFg.js → vue-router-uE6ClrN-.js} +1 -1
- package/web/assets/{xml-Chbr5k8r.js → xml-DMOW2yTg.js} +1 -1
- package/web/assets/{yaml-W-9gxiit.js → yaml-D2q3K0ZL.js} +1 -1
- package/web/index.html +2 -2
- package/agent-manager-RDBYJ3IY-G7IRVN2S.js +0 -8
- package/web/assets/AiChatPage-DHXHJArt.js +0 -1
- package/web/assets/CollectionCookies.vue-giwIx9Oo.js +0 -1
- package/web/assets/CollectionScripts.vue-CfmQLF4T.js +0 -1
- package/web/assets/CollectionSync.vue-Cvrk773s.js +0 -1
- package/web/assets/index-BRDI9Dib.css +0 -1
- package/web/assets/process.store-Bt4k1TZl.js +0 -1
- package/web/assets/router-DcgtzWsZ.js +0 -1
- package/web/assets/trpc-tQqsDgwJ.js +0 -1
- package/web/assets/useAiChatDrawer-CaLJAha9.js +0 -1
- /package/{agent-manager-RDBYJ3IY-G7IRVN2S.js.map → agent-manager-UP3PJ35X-LO6B3XKF.js.map} +0 -0
- /package/{dist-KSETQNTN.js.map → dist-6LF3EWHR.js.map} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
import{Bi as e,Bn as t,Ca as n,Cn as r,Dn as i,Gi as a,Hi as o,Ii as s,Tn as c,Wn as l,Yn as u,_i as d,ai as f,di as p,fi as m,gi as h,ha as g,ia as _,j as v,ka as y,li as b,ni as x,q as S,ra as C,ri as w,u as T,ui as E,yi as D}from"./index-
|
|
1
|
+
import{Bi as e,Bn as t,Ca as n,Cn as r,Dn as i,Gi as a,Hi as o,Ii as s,Tn as c,Wn as l,Yn as u,_i as d,ai as f,di as p,fi as m,gi as h,ha as g,ia as _,j as v,ka as y,li as b,ni as x,q as S,ra as C,ri as w,u as T,ui as E,yi as D}from"./index-D5xJxOo2.js";import{t as O}from"./card-D5_gGGD-.js";import{a as k,i as A,n as j,r as M,t as N}from"./tabpanel-geoVG-sX.js";var P={class:`kanban-list-page`},ee={class:`page-header`},te={key:0,class:`empty-state`},F={class:`board-grid`},I={key:0,class:`board-desc`},L={key:0,class:`empty-state`},R={class:`board-grid`},z={key:0,class:`board-desc`},B={class:`dialog-field`},V={class:`dialog-field`},H={class:`dialog-field`},U={class:`dialog-field`},W=r(D({__name:`KanbanListPage`,setup(r){let{t:D}=u(),W=t(),G=T(),K=l(),q=g(!1),J=g(``),Y=g(``),X=g(null);s(()=>G.fetchAll());async function Z(){if(!J.value.trim())return;let e=await G.create({name:J.value.trim(),description:Y.value.trim()});e&&(q.value=!1,J.value=``,Y.value=``,W.push(`/kanban/${e.id}`))}async function Q(){X.value&&=(await G.update(X.value.id,{name:X.value.name,description:X.value.description}),null)}function $(e,t){K.require({message:D(`kanban.list.dialogs.confirmDeleteMessage`,{name:t}),header:D(`kanban.list.dialogs.confirmDeleteHeader`),icon:`pi pi-trash`,acceptClass:`p-button-danger`,accept:()=>G.remove(e)})}return(t,r)=>{let s=a(`tooltip`);return e(),m(`div`,P,[b(`div`,ee,[b(`h1`,null,y(n(D)(`kanban.list.title`)),1),d(n(i),{label:n(D)(`kanban.list.dialogs.newBoard`),icon:`pi pi-plus`,onClick:r[0]||=e=>q.value=!0},null,8,[`label`])]),d(n(k),{value:`active`},{default:C(()=>[d(n(A),null,{default:C(()=>[d(n(M),{value:`active`},{default:C(()=>[h(y(n(D)(`kanban.list.tabs.active`)),1)]),_:1}),d(n(M),{value:`archived`},{default:C(()=>[h(y(n(D)(`kanban.list.tabs.archived`,{count:n(G).archivedBoards.length})),1)]),_:1})]),_:1}),d(n(j),null,{default:C(()=>[d(n(N),{value:`active`},{default:C(()=>[n(G).activeBoards.length===0?(e(),m(`div`,te,y(n(D)(`kanban.list.empty`)),1)):p(``,!0),b(`div`,F,[(e(!0),m(f,null,o(n(G).activeBoards,t=>(e(),E(n(O),{key:t.id,class:`board-card`,onClick:e=>n(W).push(`/kanban/${t.id}`)},{title:C(()=>[h(y(t.name),1)]),subtitle:C(()=>[h(y(n(D)(`kanban.list.columns`,{count:t.columns.length})),1)]),content:C(()=>[t.description?(e(),m(`p`,I,y(t.description),1)):p(``,!0)]),footer:C(()=>[b(`div`,{class:`board-actions`,onClick:r[1]||=w(()=>{},[`stop`])},[d(n(i),{icon:`pi pi-pencil`,text:``,size:`small`,onClick:e=>X.value={id:t.id,name:t.name,description:t.description}},null,8,[`onClick`]),_(d(n(i),{icon:`pi pi-inbox`,text:``,size:`small`,severity:`secondary`,onClick:e=>n(G).archive(t.id)},null,8,[`onClick`]),[[s,n(D)(`kanban.list.archive`)]]),d(n(i),{icon:`pi pi-trash`,text:``,size:`small`,severity:`danger`,onClick:e=>$(t.id,t.name)},null,8,[`onClick`])])]),_:2},1032,[`onClick`]))),128))])]),_:1}),d(n(N),{value:`archived`},{default:C(()=>[n(G).archivedBoards.length===0?(e(),m(`div`,L,y(n(D)(`kanban.list.archivedEmpty`)),1)):p(``,!0),b(`div`,R,[(e(!0),m(f,null,o(n(G).archivedBoards,t=>(e(),E(n(O),{key:t.id,class:`board-card archived`},{title:C(()=>[h(y(t.name),1)]),content:C(()=>[t.description?(e(),m(`p`,z,y(t.description),1)):p(``,!0)]),footer:C(()=>[b(`div`,{class:`board-actions`,onClick:r[2]||=w(()=>{},[`stop`])},[d(n(i),{label:n(D)(`kanban.list.restore`),icon:`pi pi-replay`,text:``,size:`small`,onClick:e=>n(G).unarchive(t.id)},null,8,[`label`,`onClick`]),d(n(i),{icon:`pi pi-trash`,text:``,size:`small`,severity:`danger`,onClick:e=>$(t.id,t.name)},null,8,[`onClick`])])]),_:2},1024))),128))])]),_:1})]),_:1})]),_:1}),d(n(c),{visible:q.value,"onUpdate:visible":r[6]||=e=>q.value=e,header:n(D)(`kanban.list.dialogs.newBoard`),modal:!0,style:{width:`450px`}},{footer:C(()=>[d(n(i),{label:n(D)(`actions.cancel`),text:``,onClick:r[5]||=e=>q.value=!1},null,8,[`label`]),d(n(i),{label:n(D)(`actions.create`),icon:`pi pi-check`,disabled:!J.value.trim(),onClick:Z},null,8,[`label`,`disabled`])]),default:C(()=>[b(`div`,B,[b(`label`,null,y(n(D)(`common.name`)),1),d(n(S),{modelValue:J.value,"onUpdate:modelValue":r[3]||=e=>J.value=e,autofocus:``,class:`w-full`,onKeyup:x(Z,[`enter`])},null,8,[`modelValue`])]),b(`div`,V,[b(`label`,null,y(n(D)(`common.description`)),1),d(n(v),{modelValue:Y.value,"onUpdate:modelValue":r[4]||=e=>Y.value=e,rows:`3`,class:`w-full`},null,8,[`modelValue`])])]),_:1},8,[`visible`,`header`]),d(n(c),{visible:!!X.value,header:n(D)(`kanban.list.dialogs.editBoard`),modal:!0,style:{width:`450px`},"onUpdate:visible":r[10]||=e=>{e||(X.value=null)}},{footer:C(()=>[d(n(i),{label:n(D)(`actions.cancel`),text:``,onClick:r[9]||=e=>X.value=null},null,8,[`label`]),d(n(i),{label:n(D)(`actions.save`),icon:`pi pi-check`,onClick:Q},null,8,[`label`])]),default:C(()=>[X.value?(e(),m(f,{key:0},[b(`div`,H,[b(`label`,null,y(n(D)(`common.name`)),1),d(n(S),{modelValue:X.value.name,"onUpdate:modelValue":r[7]||=e=>X.value.name=e,class:`w-full`,onKeyup:x(Q,[`enter`])},null,8,[`modelValue`])]),b(`div`,U,[b(`label`,null,y(n(D)(`common.description`)),1),d(n(v),{modelValue:X.value.description,"onUpdate:modelValue":r[8]||=e=>X.value.description=e,rows:`3`,class:`w-full`},null,8,[`modelValue`])])],64)):p(``,!0)]),_:1},8,[`visible`,`header`])])}}}),[[`__scopeId`,`data-v-9777433e`]]);export{W as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{A as e,Bi as t,Bn as n,Ca as r,Cn as i,Dn as a,Ea as o,Hi as s,Ii as c,Yn as l,_i as u,ai as d,fi as f,gi as p,ha as m,ka as h,li as g,ra as _,s as v,ui as y,yi as b}from"./index-
|
|
1
|
+
import{A as e,Bi as t,Bn as n,Ca as r,Cn as i,Dn as a,Ea as o,Hi as s,Ii as c,Yn as l,_i as u,ai as d,fi as f,gi as p,ha as m,ka as h,li as g,ra as _,s as v,ui as y,yi as b}from"./index-D5xJxOo2.js";import{t as x}from"./project.store-emr8mjg8.js";import{t as S}from"./card-D5_gGGD-.js";var C={class:`launch-page`,"data-testid":`page-content`},w={class:`launch-container`},T={class:`launch-branding`},E={class:`launch-subtitle`},D={class:`launch-heading`},O={key:0,class:`launch-loading`},k={class:`empty-message`},A={class:`project-list`},j={class:`project-description`},M={class:`project-service-count`},N=i(b({__name:`LaunchProjectPage`,setup(i){let b=n(),N=x(),P=v(),{t:F}=l(),I=m(null),L=m(!0);c(async()=>{await N.fetchAll(),L.value=!1;let e=N.projects;if(e.length===1){P.setActiveProject(e[0].id),b.replace(`/launch/services`);return}let t=P.getLastProjectId();t&&e.some(e=>e.id===t)&&(I.value=t)});function R(e){I.value=e}function z(){I.value&&(P.setActiveProject(I.value),b.push(`/launch/services`))}function B(){P.completeLaunch(),b.push(`/`)}return(n,i)=>(t(),f(`div`,C,[g(`div`,w,[g(`div`,T,[i[0]||=g(`h1`,{class:`launch-title`},`Runeya`,-1),g(`p`,E,h(r(F)(`launchProject.subtitle`)),1)]),g(`h2`,D,h(r(F)(`launchProject.selectProject`)),1),L.value?(t(),f(`div`,O,[u(r(e),{style:{width:`48px`,height:`48px`}})])):r(N).projects.length===0?(t(),f(d,{key:1},[g(`p`,k,h(r(F)(`launchProject.noProjects`)),1),u(r(a),{label:r(F)(`launchProject.goToDashboard`),icon:`pi pi-arrow-right`,"icon-pos":`right`,class:`launch-action`,onClick:B},null,8,[`label`])],64)):(t(),f(d,{key:2},[g(`div`,A,[(t(!0),f(d,null,s(r(N).projects,e=>(t(),y(r(S),{key:e.id,class:o([`project-card`,{selected:I.value===e.id}]),onClick:t=>R(e.id)},{title:_(()=>[p(h(e.name),1)]),content:_(()=>[g(`p`,j,h(e.description||r(F)(`launchProject.noDescription`)),1),g(`span`,M,h(r(F)(`launchProject.serviceCount`,e.serviceIds.length)),1)]),_:2},1032,[`class`,`onClick`]))),128))]),u(r(a),{label:r(F)(`launchProject.continue`),icon:`pi pi-arrow-right`,"icon-pos":`right`,disabled:!I.value,class:`launch-action`,onClick:z},null,8,[`label`,`disabled`])],64))])]))}}),[[`__scopeId`,`data-v-865637ec`]]);export{N as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{A as e,Bi as t,Bn as n,Ca as r,Cn as i,Dn as a,Gn as ee,H as o,Hi as s,Ii as c,Ri as te,Yn as ne,_i as l,a as u,ai as d,ci as f,di as p,fi as m,gi as re,ha as h,ka as g,li as _,nt as ie,q as ae,ra as v,rt as y,s as oe,ui as b,yi as x}from"./index-
|
|
1
|
+
import{A as e,Bi as t,Bn as n,Ca as r,Cn as i,Dn as a,Gn as ee,H as o,Hi as s,Ii as c,Ri as te,Yn as ne,_i as l,a as u,ai as d,ci as f,di as p,fi as m,gi as re,ha as h,ka as g,li as _,nt as ie,q as ae,ra as v,rt as y,s as oe,ui as b,yi as x}from"./index-D5xJxOo2.js";import{t as se}from"./project.store-emr8mjg8.js";import{t as ce}from"./tag-Dv5CaUPa.js";import{t as le}from"./checkbox-C0sXsL9e.js";import{t as ue}from"./message-gtjFpAbc.js";var S={class:`launch-page`,"data-testid":`page-content`},C={class:`launch-container launch-container--wide`},w={class:`launch-branding`},T={class:`launch-subtitle`},E={class:`launch-header`},D={class:`launch-heading`},O={key:0,class:`launch-project-name`},k={key:0,class:`launch-loading`},A={class:`empty-message`},j={class:`services-toolbar`},M={class:`service-list`},N={class:`service-info`},P={class:`service-name`},F={class:`service-command`},I={class:`launch-actions`},L=i(x({__name:`LaunchServicesPage`,setup(i){let x=n(),L=ee(),{t:R}=ne(),z=oe(),B=se(),V=ie(),H=o(),U=u(),W=h(!0),G=h(!1),K=h([]),q=h(``),J=z.activeProjectId,Y=f(()=>J?B.getById(J):null),X=f(()=>Y.value?V.getByIds(Y.value.serviceIds):[]),de=f(()=>{if(!q.value)return X.value;let e=q.value.toLowerCase();return X.value.filter(t=>t.name.toLowerCase().includes(e)||(t.commands??[]).some(t=>t.command.toLowerCase().includes(e)))}),Z=f(()=>X.value.length===0?!1:X.value.every(e=>K.value.includes(e.id))),Q=f(()=>H.connectedAgents.length>0);c(async()=>{if(!J){x.replace(`/launch/project`);return}if(await Promise.all([B.fetchAll(),V.fetchAll(),H.fetchAll()]),H.subscribeStatus(),W.value=!1,Y.value){let e=z.getSavedSelection(J),t=new Set(Y.value.serviceIds);K.value=e.filter(e=>t.has(e))}}),te(()=>{H.unsubscribeStatus()});function fe(){Z.value?K.value=[]:K.value=X.value.map(e=>e.id)}async function pe(){if(!J||K.value.length===0)return;z.saveSelection(J,K.value),z.completeLaunch(),x.push(`/`);let e=[];await Promise.all(K.value.map(async t=>{let n=V.services.find(e=>e.id===t);if(!n){e.push(`Service ${t} not found`);return}try{await U.start(n.agentId,n.id)}catch(n){e.push(y(n)??`Failed to launch service ${t}`)}})),e.length>0&&L.add({severity:`warn`,summary:R(`launchServices.someServicesFailed`),detail:e.join(`; `),life:5e3})}function $(){J&&z.saveSelection(J,K.value),z.completeLaunch(),x.push(`/`)}function me(){x.push(`/launch/project`)}return(n,i)=>(t(),m(`div`,S,[_(`div`,C,[_(`div`,w,[i[2]||=_(`h1`,{class:`launch-title`},`Runeya`,-1),_(`p`,T,g(r(R)(`launchServices.subtitle`)),1)]),_(`div`,E,[l(r(a),{icon:`pi pi-arrow-left`,text:``,severity:`secondary`,onClick:me}),_(`div`,null,[_(`h2`,D,g(r(R)(`launchServices.selectServices`)),1),Y.value?(t(),m(`p`,O,g(Y.value.name),1)):p(``,!0)])]),W.value?(t(),m(`div`,k,[l(r(e),{style:{width:`48px`,height:`48px`}})])):X.value.length===0?(t(),m(d,{key:1},[_(`p`,A,g(r(R)(`launchServices.noServices`)),1),l(r(a),{label:r(R)(`launchServices.skip`),icon:`pi pi-arrow-right`,"icon-pos":`right`,class:`launch-action`,onClick:$},null,8,[`label`])],64)):(t(),m(d,{key:2},[Q.value?p(``,!0):(t(),b(r(ue),{key:0,severity:`warn`,closable:!1,class:`launch-warning`},{default:v(()=>[re(g(r(R)(`launchServices.noAgents`)),1)]),_:1})),_(`div`,j,[l(r(ae),{modelValue:q.value,"onUpdate:modelValue":i[0]||=e=>q.value=e,placeholder:r(R)(`launchServices.filter`),class:`services-search`},null,8,[`modelValue`,`placeholder`]),l(r(a),{label:Z.value?r(R)(`launchServices.deselectAll`):r(R)(`launchServices.selectAll`),text:``,size:`small`,onClick:fe},null,8,[`label`])]),_(`div`,M,[(t(!0),m(d,null,s(de.value,e=>(t(),m(`label`,{key:e.id,class:`service-item`},[l(r(le),{modelValue:K.value,"onUpdate:modelValue":i[1]||=e=>K.value=e,value:e.id},null,8,[`modelValue`,`value`]),_(`div`,N,[_(`span`,P,g(e.name),1),_(`span`,F,g((e.commands??[]).map(e=>e.label||e.command).join(`, `)||r(R)(`launchServices.noCommands`)),1)]),l(r(ce),{value:e.runner,severity:`info`,class:`service-runner`},null,8,[`value`])]))),128))]),_(`div`,I,[l(r(a),{label:r(R)(`launchServices.launch`),icon:`pi pi-play`,loading:G.value,disabled:K.value.length===0||!Q.value,class:`launch-action`,onClick:pe},null,8,[`label`,`loading`,`disabled`]),l(r(a),{label:r(R)(`launchServices.skip`),severity:`secondary`,text:``,disabled:G.value,class:`launch-action`,onClick:$},null,8,[`label`,`disabled`])])],64))])]))}}),[[`__scopeId`,`data-v-4fa3742c`]]);export{L as default};
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import{$i as e,$r as t,A as n,Bi as r,Ca as i,Cn as a,Dn as o,Ea as s,Hi as c,Ii as l,Ki as u,Kr as d,M as f,Oa as p,Oi as m,P as h,Ri as g,Sa as _,Ti as v,Tn as y,Ui as b,V as x,Wi as S,Yn as ee,_i as C,ai as w,at as T,ci as E,d as D,di as O,et as te,fi as k,gi as A,ha as j,ia as ne,ka as M,ki as N,li as P,ni as F,ot as I,q as re,ra as L,ri as R,st as z,ti as B,ui as V,yi as H}from"./index-DtgzVYQA.js";import{t as ie}from"./multiselect-Dx1fcUSk.js";var U=e=>Array.isArray(e),ae=e=>typeof e==`object`&&!!e&&!Array.isArray(e),oe=e=>e===null?`var(--jtv-null-color)`:{string:`var(--jtv-string-color)`,number:`var(--jtv-number-color)`,boolean:`var(--jtv-boolean-color)`}[typeof e]??`var(--jtv-valueKey-color)`,se=e=>{let t=Number(e);return Number.isNaN(t)?`"${e}":`:`${e}":`},ce=(e,t)=>e===1?`${e} ${t?`element`:`property`}`:`${e} ${t?`elements`:`properties`}`,W=(e,t,n,r=!1)=>n?r?`${e}${t}[${t}].`:`${e}${t}.`:e,le=(e,t,n)=>n?`${e}${t}`:e.slice(0,-1),ue={class:`json-view-item`},de=[`aria-expanded`],G={class:`properties`},K={class:`value-key`},q=(e=>(e[e.OBJECT=0]=`OBJECT`,e[e.ARRAY=1]=`ARRAY`,e[e.VALUE=2]=`VALUE`,e))(q||{}),fe=H({name:`JsonTreeViewItem`,__name:`JsonTreeViewItem`,props:{data:{},maxDepth:{default:1},canSelect:{type:Boolean,default:!1}},emits:[`selected`],setup(e,{emit:t}){let n=t,i=j(e.data.depth<e.maxDepth),a=()=>{i.value=!i.value},o=e=>{n(`selected`,{key:e.key,value:e.value,path:e.path})},l=e=>n(`selected`,e),f=E(()=>({"chevron-arrow":!0,opened:i.value})),m=E(()=>({"value-key":!0,"can-select":e.canSelect})),h=E(()=>{let{length:t,type:n}=e.data;return t===void 0?``:ce(t,n===1)}),g=E(()=>JSON.stringify(e.data.value)),_=e=>se(e.key),v=e=>oe(e);return(t,n)=>{let y=S(`JsonTreeViewItem`,!0);return r(),k(`div`,ue,[e.data.type===0||e.data.type===1?(r(),k(w,{key:0},[P(`button`,{class:`data-key`,type:`button`,"aria-expanded":i.value,onClick:R(a,[`stop`])},[P(`div`,{class:s(f.value),"aria-hidden":`true`},null,2),P(`span`,null,M(e.data.key)+`:`,1),P(`span`,G,M(h.value),1)],8,de),C(d,{name:`expand`},{default:L(()=>[ne(P(`div`,null,[(r(!0),k(w,null,c(e.data.children,t=>(r(),V(y,{key:_(t),data:t,"max-depth":e.maxDepth,"can-select":e.canSelect,onSelected:l},null,8,[`data`,`max-depth`,`can-select`]))),128))],512),[[B,i.value]])]),_:1})],64)):O(``,!0),e.data.type===2?(r(),V(u(e.canSelect?`button`:`div`),{key:1,class:s(m.value),type:e.canSelect?`button`:null,tabindex:e.canSelect?0:null,onClick:n[0]||=t=>e.canSelect?o(e.data):null,onKeyup:[n[1]||=F(t=>e.canSelect?o(e.data):null,[`enter`]),n[2]||=F(R(t=>e.canSelect?o(e.data):null,[`prevent`]),[`space`])]},{default:L(()=>[P(`span`,K,M(e.data.key)+`:`,1),P(`span`,{style:p({color:v(e.data.value)})},M(g.value),5)]),_:1},40,[`class`,`type`,`tabindex`])):O(``,!0)])}}}),pe=((e,t)=>{let n=e.__vccOpts||e;for(let[e,r]of t)n[e]=r;return n})(H({name:`JsonTreeView`,__name:`JsonTreeView`,props:{json:{},rootKey:{default:`/`},maxDepth:{default:1},colorScheme:{default:`light`}},emits:[`selected`],setup(e,{emit:t}){let n=t,i=e=>n(`selected`,e),a=(e,t,n,r,i)=>{let a=t.map((t,a)=>l(a.toString(),t,n+1,W(r,e,i,!0),!1));return{key:e,type:q.ARRAY,depth:n,path:r,length:a.length,children:a}},o=(e,t,n,r,i)=>{let a=Object.entries(t).map(([t,a])=>l(t,a,n+1,W(r,e,i),!0));return{key:e,type:q.OBJECT,depth:n,path:r,length:a.length,children:a}},c=(e,t,n,r,i)=>({key:e,type:q.VALUE,path:le(r,e,i),depth:n,value:t}),l=(e,t,n,r,i)=>U(t)?a(e,t,n,r,i):ae(t)?o(e,t,n,r,i):c(e,t,n,r,i),u=(e,t)=>{try{let n=JSON.parse(e);return ae(n)||U(n)?l(t,n,0,``,!0):c(t,n,0,``,!0)}catch{return c(t,e,0,``,!0)}},d=E(()=>u(e.json,e.rootKey));return(t,n)=>(r(),V(fe,{class:s([`root-item`,{dark:e.colorScheme===`dark`}]),data:d.value,"max-depth":e.maxDepth,onSelected:i},null,8,[`class`,`data`,`max-depth`]))}}),[[`__scopeId`,`data-v-9f840ee1`]]),me={class:`log-card__icon`},J=[`innerHTML`],he={key:0,class:`log-card__badge`},ge=[`innerHTML`],_e={class:`log-card__clip`},ve=320,ye=150,Y=a(H({__name:`LogCard`,props:{icon:{},title:{},color:{},badge:{},muted:{type:Boolean},defaultCollapsed:{type:Boolean},lastLine:{}},setup(e){let t=e,n=j(!t.defaultCollapsed),a=j(!!t.defaultCollapsed),o=j(!!t.defaultCollapsed);function c(){n.value?(n.value=!1,setTimeout(()=>{a.value=!0,o.value=!0},ve)):(a.value=!1,o.value=!1,setTimeout(()=>{n.value=!0},ye))}return(t,l)=>(r(),k(`div`,{class:s([`log-card`,{"log-card--muted":e.muted,"log-card--open":!o.value}])},[P(`div`,{class:`log-card__header`,style:p({background:e.color}),onClick:c},[P(`span`,me,M(e.icon),1),P(`span`,{class:`log-card__title`,innerHTML:i(f).sanitize(e.title)},null,8,J),e.badge?(r(),k(`span`,he,M(e.badge),1)):O(``,!0),t.$slots.default?(r(),k(`span`,{key:1,class:s([`log-card__chevron`,{"log-card__chevron--open":!o.value}])},[...l[0]||=[P(`svg`,{width:`8`,height:`8`,viewBox:`0 0 8 8`,fill:`currentColor`},[P(`polygon`,{points:`0,0 8,4 0,8`})],-1)]],2)):O(``,!0)],4),t.$slots.default?(r(),k(w,{key:0},[C(d,{name:`dots`},{default:L(()=>[a.value?(r(),k(`div`,{key:0,class:`log-card__preview`,style:p({borderLeftColor:e.color})},[e.lastLine?(r(),k(`span`,{key:0,class:`log-card__last-line`,innerHTML:i(f).sanitize(e.lastLine)},null,8,ge)):(r(),k(w,{key:1},[l[1]||=P(`span`,{class:`log-card__dot`},null,-1),l[2]||=P(`span`,{class:`log-card__dot`},null,-1),l[3]||=P(`span`,{class:`log-card__dot`},null,-1)],64))],4)):O(``,!0)]),_:1}),P(`div`,{class:s([`log-card__grid`,{"log-card__grid--open":n.value}])},[P(`div`,_e,[P(`div`,{class:`log-card__body`,style:p({borderLeftColor:e.color})},[b(t.$slots,`default`,{},void 0,!0)],4)])],2)],64)):O(``,!0)],2))}}),[[`__scopeId`,`data-v-9028b0a2`]]),X={key:5},be=[`title`],xe=[`innerHTML`],Se=a(H({__name:`LogLine`,props:{log:{}},emits:[`click`],setup(e,{emit:t}){let n=e,a=t;function o(){let e=window.getSelection();e&&e.toString().length>0||a(`click`,n.log)}let s={debug:`#c72bd4`,info:`#a3a3a3`,warn:`#f59e0b`,error:`#ef4444`,fatal:`#ef4444`},c=E(()=>s[n.log.level]??`#a3a3a3`),l=E(()=>n.log.logCard?.state===`self`?n.log.logCard.type:null);function u(e){return e.metadata!=null&&Object.keys(e.metadata).length>0}function d(e){if(!e.metadata)return``;try{return JSON.stringify(e.metadata,null,2)}catch{return String(e.metadata)}}function m(e){return JSON.stringify(e.json)}return(t,a)=>(r(),k(`div`,null,[l.value===`command-start`?(r(),V(Y,{key:0,icon:`⌗`,title:e.log.logCard.header,color:`#3b82f6`,onClick:o},{default:L(()=>[A(M(e.log.message),1)]),_:1},8,[`title`])):l.value===`command-fail`?(r(),V(Y,{key:1,icon:`⌗`,title:e.log.logCard.header,color:`#ef4444`,badge:`✗ ${e.log.message}`,onClick:o},null,8,[`title`,`badge`])):l.value===`system-warn`?(r(),V(Y,{key:2,icon:`⚠`,title:e.log.logCard.header,color:`#ef4444`,badge:e.log.message,onClick:o},null,8,[`title`,`badge`])):l.value===`json`?(r(),V(Y,{key:3,icon:`</>`,title:e.log.logCard.header,color:c.value},{default:L(()=>[P(`div`,{onClick:a[0]||=R(()=>{},[`stop`])},[C(i(pe),{json:m(n.log),maxDepth:2},null,8,[`json`])])]),_:1},8,[`title`,`color`])):e.log.json?(r(),V(Y,{key:4,icon:`</>`,title:`JSON`,color:c.value,onClick:o},{default:L(()=>[P(`div`,{onClick:a[1]||=R(()=>{},[`stop`])},[C(i(pe),{json:m(n.log),maxDepth:2},null,8,[`json`])])]),_:1},8,[`color`])):(r(),k(`div`,X,[P(`div`,{class:`log-line`,"data-testid":`log-message`,style:p({boxShadow:`inset 3px 0 0 0 ${c.value}`}),title:u(n.log)?d(n.log):void 0,onClick:o},[P(`span`,{class:`log-message`,innerHTML:i(f).sanitize(n.log.message)},null,8,xe)],12,be)]))]))}}),[[`__scopeId`,`data-v-9d8a1243`]]),Ce={class:`log-filter`},we={class:`log-filter__row`},Te={class:`log-filter__level-option`},Ee={class:`log-filter__level-chip`},De={key:0,class:`log-filter__badges`},Oe=[`title`],ke={class:`log-filter__badge-type`},Ae={key:0,class:`log-filter__badge-flag`},je={class:`log-filter__badge-pattern`},Me=[`aria-label`,`onClick`],Ne={class:`log-filter__popover`},Pe={class:`log-filter__popover-title`},Fe={class:`log-filter__popover-row`},Ie={class:`log-filter__popover-row log-filter__popover-row--between`},Le={class:`log-filter__popover-label`},Re={class:`log-filter__popover-input-wrap`},ze={key:0,class:`log-filter__popover-error`},Be={class:`log-filter__popover-actions`},Ve=a(H({__name:`LogFilter`,props:{modelValue:{}},emits:[`update:modelValue`],setup(t,{emit:n}){let{t:a}=ee(),l=t,u=n,d={debug:`#c72bd4`,info:`#a3a3a3`,warn:`#f59e0b`,error:`#ef4444`,fatal:`#ef4444`},f=z.map(e=>({label:e.charAt(0).toUpperCase()+e.slice(1),value:e,color:d[e]??`#a3a3a3`})),m=j([...l.modelValue.levels]),_=j([...l.modelValue.filters]),v=!1;e(m,e=>{v||u(`update:modelValue`,{levels:e,filters:_.value})}),e(()=>l.modelValue,e=>{v=!0,m.value=[...e.levels],_.value=[...e.filters],N(()=>{v=!1})});let y=j(null),b=j(``),x=j(`include`),S=j(!1),T=j(``);function E(e){y.value?.toggle(e)}function D(){y.value?.hide()}function te(e){try{return new RegExp(e),!0}catch(e){return T.value=e instanceof Error?e.message:`Invalid regex`,!1}}function ne(){let e=b.value.trim();e&&(T.value=``,!(S.value&&!te(e))&&(_.value=[..._.value,{id:`${Date.now()}-${Math.random()}`,pattern:e,type:x.value,isRegex:S.value}],b.value=``,u(`update:modelValue`,{levels:m.value,filters:_.value}),D()))}function F(e){e.key===`Enter`&&(e.preventDefault(),ne()),e.key===`Escape`&&D()}function I(){T.value=``}function R(e){_.value=_.value.filter(t=>t.id!==e),u(`update:modelValue`,{levels:m.value,filters:_.value})}function B(){m.value=[...z],_.value=[],u(`update:modelValue`,{levels:[...z],filters:[]})}return g(()=>{}),(e,t)=>(r(),k(`div`,Ce,[P(`div`,we,[C(i(ie),{modelValue:m.value,"onUpdate:modelValue":t[0]||=e=>m.value=e,options:i(f),"option-label":`label`,"option-value":`value`,placeholder:i(a)(`logFilter.levelsPlaceholder`),class:`log-filter__levels`,"max-selected-labels":3,display:`chip`},{option:L(({option:e})=>[P(`div`,Te,[P(`span`,{class:`log-filter__level-dot`,style:p({backgroundColor:e.color})},null,4),A(` `+M(e.label),1)])]),chip:L(({value:e})=>[P(`div`,Ee,[P(`span`,{class:`log-filter__level-dot`,style:p({backgroundColor:d[e]})},null,4),A(` `+M(e.charAt(0).toUpperCase()+e.slice(1)),1)])]),_:1},8,[`modelValue`,`options`,`placeholder`]),C(i(o),{icon:`pi pi-filter`,label:i(a)(`logFilter.addFilter`),size:`small`,severity:`secondary`,badge:_.value.length>0?String(_.value.length):void 0,"badge-severity":`contrast`,onClick:E},null,8,[`label`,`badge`]),_.value.length>0||m.value.length<i(z).length?(r(),V(i(o),{key:0,icon:`pi pi-filter-slash`,text:``,rounded:``,size:`small`,severity:`secondary`,"aria-label":i(a)(`logFilter.clearAll`),title:i(a)(`logFilter.clearAll`),onClick:B},null,8,[`aria-label`,`title`])):O(``,!0)]),_.value.length>0?(r(),k(`div`,De,[(r(!0),k(w,null,c(_.value,e=>(r(),k(`span`,{key:e.id,class:s([`log-filter__badge`,e.type===`include`?`log-filter__badge--include`:`log-filter__badge--exclude`]),title:`${e.type} · ${e.isRegex?`regex`:`text`}: ${e.pattern}`},[P(`span`,ke,M(e.type===`include`?`+`:`−`),1),e.isRegex?(r(),k(`span`,Ae,`.*`)):O(``,!0),P(`span`,je,M(e.pattern),1),P(`button`,{class:`log-filter__badge-remove`,"aria-label":i(a)(`logFilter.removeFilter`),onClick:t=>R(e.id)},[...t[5]||=[P(`i`,{class:`pi pi-times`,style:{"font-size":`0.6rem`}},null,-1)]],8,Me)],10,Oe))),128))])):O(``,!0),C(i(h),{ref_key:`popoverRef`,ref:y},{default:L(()=>[P(`div`,Ne,[P(`p`,Pe,M(i(a)(`logFilter.newFilter`)),1),P(`div`,Fe,[P(`button`,{class:s([`log-filter__type-btn`,x.value===`include`&&`log-filter__type-btn--active-include`]),onClick:t[1]||=e=>x.value=`include`},[t[6]||=P(`i`,{class:`pi pi-plus`},null,-1),A(` `+M(i(a)(`logFilter.include`)),1)],2),P(`button`,{class:s([`log-filter__type-btn`,x.value===`exclude`&&`log-filter__type-btn--active-exclude`]),onClick:t[2]||=e=>x.value=`exclude`},[t[7]||=P(`i`,{class:`pi pi-minus`},null,-1),A(` `+M(i(a)(`logFilter.exclude`)),1)],2)]),P(`div`,Ie,[P(`label`,Le,M(i(a)(`logFilter.regex`)),1),P(`button`,{class:s([`log-filter__regex-toggle`,S.value&&`log-filter__regex-toggle--on`]),onClick:t[3]||=e=>{S.value=!S.value,T.value=``}},` .* `,2)]),P(`div`,Re,[C(i(re),{modelValue:b.value,"onUpdate:modelValue":t[4]||=e=>b.value=e,placeholder:S.value?i(a)(`logFilter.regexPlaceholder`):i(a)(`logFilter.filterPlaceholder`),class:`log-filter__popover-input`,invalid:!!T.value,autofocus:``,onInput:I,onKeydown:F},null,8,[`modelValue`,`placeholder`,`invalid`]),T.value?(r(),k(`p`,ze,M(T.value),1)):O(``,!0)]),P(`div`,Be,[C(i(o),{label:i(a)(`logFilter.add`),icon:`pi pi-check`,size:`small`,disabled:!b.value.trim(),onClick:ne},null,8,[`label`,`disabled`]),C(i(o),{label:i(a)(`logFilter.cancel`),size:`small`,severity:`secondary`,text:``,onClick:D},null,8,[`label`])])])]),_:1},512)]))}}),[[`__scopeId`,`data-v-7d8d6ac3`]]),He=null,{min:Z,max:Q,abs:Ue,floor:We}=Math,Ge=(e,t,n)=>Z(n,Q(t,e)),Ke=e=>[...e].sort(((e,t)=>e-t)),qe=typeof queueMicrotask==`function`?queueMicrotask:e=>{Promise.resolve().then(e)},Je=()=>{let e;return[new Promise((t=>{e=t})),e]},Ye=e=>{let t;return()=>(e&&=(t=e(),void 0),t)},Xe=(e,t,n)=>{let r=n?`unshift`:`push`;for(let n=0;n<t;n++)e[r](-1);return e},Ze=(e,t)=>{let n=e.t[t];return n===-1?e.o:n},Qe=(e,t,n)=>{let r=e.t[t]===-1;return e.t[t]=n,e.i=Z(t,e.i),r},$e=(e,t)=>{if(!e.l)return 0;if(e.i>=t)return e.u[t];e.i<0&&(e.u[0]=0,e.i=0);let n=e.i,r=e.u[n];for(;n<t;)r+=Ze(e,n),e.u[++n]=r;return e.i=t,r},$=(e,t,n=0,r=e.l-1)=>{let i=n;for(;n<=r;){let a=We((n+r)/2);$e(e,a)<=t?(i=a,n=a+1):r=a-1}return Ge(i,0,e.l-1)},et=(e,t,n)=>{let r=t-e.l;return e.i=n?-1:Z(t-1,e.i),e.l=t,r>0?(Xe(e.u,r),Xe(e.t,r,n),e.o*r):(e.u.splice(r),(n?e.t.splice(0,-r):e.t.splice(r)).reduce(((t,n)=>t-(n===-1?e.o:n)),0))},tt=e=>e.documentElement,nt=e=>e.ownerDocument,rt=e=>e.defaultView,it=Ye((()=>!!/iP(hone|od|ad)/.test(navigator.userAgent)||navigator.platform===`MacIntel`&&navigator.maxTouchPoints>0)),at=Ye((()=>`scrollBehavior`in tt(document).style)),ot=(e,t=40,n=0,r,i=!1)=>{let a=!!n,o=1,s=0,c=0,l=0,u=0,d=0,f=0,p=0,m=0,h=He,g=[0,a?Q(n-1,0):-1],_=0,v=!1,y=((e,t,n)=>({o:t,t:n?Xe(n.slice(0,Z(e,n.length)),Q(0,e-n.length)):Xe([],e),l:e,i:-1,u:Xe([],e+1)}))(e,r?r[1]:t,r&&r[0]),b=new Set,x=()=>l-c,S=()=>x()+d+u,ee=(e,t)=>((e,t,n,r)=>{if(r=Z(r,e.l-1),$e(e,r)<=t){let i=$(e,n,r);return[$(e,t,r,i),i]}{let i=$(e,t,void 0,r);return[i,$(e,n,i)]}})(y,e,t,g[0]),C=()=>$e(y,y.l),w=(e,t)=>{let n=$e(y,e)-d;return t?C()-n-T(e):n},T=e=>Ze(y,e),E=(e,t=-1)=>y.t[e]===t,D=e=>{e&&(it()&&p!==0||h&&m===1?d+=e:u+=e)};return{p:()=>{b.clear()},m:()=>o,h:()=>(e=>[e.t.slice(),e.o])(y),v:(e=200)=>{if(!v||a)return g;let t,n;if(f)[t,n]=g;else{let r=Q(0,S()),a=r+s;i||(e=Q(0,e),p!==1&&(r-=e),p!==2&&(a+=e)),[t,n]=g=ee(Q(0,r),Q(0,a)),h&&(t=Z(t,h[0]),n=Q(n,h[1]))}return[Q(t,0),Z(n,y.l-1)]},S:e=>$(y,e-c),I:E,O:w,k:T,j:()=>y.l,N:()=>l,B:()=>p!==0,T:()=>s,q:()=>c,M:C,P:()=>(f=u,u=0,[f,m===2]),R:(e,t)=>{let n=[e,t];return b.add(n),()=>{b.delete(n)}},A:(e,t)=>{let n,r,g=0;switch(e){case 1:{if(t===l&&m===0)break;let e=f;f=0;let n=t-l,i=Ue(n);e&&i<Ue(e)+1||m!==0||(p=n<0?2:1),a&&=!1,l=t,g=4;let o=x();o>=-s&&o<=C()&&(g+=1,r=i>s);break}case 2:g=8,p!==0&&(n=!0,g+=1),p=0,m=0,h=He;break;case 3:{let e=t.filter((([e,t])=>!E(e,t)));if(!e.length)break;D(e.reduce(((e,[t,n])=>((m===2||(h&&m===1?t<h[0]:w(t+(p===0&&m===0?1:0))<x()))&&(e+=n-T(t)),e)),0));for(let[t,n]of e){let e=T(t),r=Qe(y,t,n);i&&(_+=r?n:n-e)}i&&s&&_>s&&(D(((e,t)=>{let n=0,r=[];e.t.forEach(((e,i)=>{e!==-1&&(r.push(e),i<t&&n++)})),e.i=-1;let i=Ke(r),a=i.length,o=a/2|0,s=a%2==0?(i[o-1]+i[o])/2:i[o],c=e.o;return((e.o=s)-c)*Q(t-n,0)})(y,$(y,S()))),i=!1),g=3,r=!0;break}case 4:s!==t&&(s||(v=r=!0),s=t,g=3);break;case 5:t[1]?(D(et(y,t[0],!0)),m=2,g=1):(et(y,t[0]),g=1);break;case 6:c=t;break;case 7:m=1;break;case 8:h=ee(t,t+s),g=1}g&&(o=1+(2147483647&o),n&&d&&(u+=d,d=0),b.forEach((([e,t])=>{g&e&&t(r)})))}}},st=setTimeout,ct=(e,t)=>t?-e:e,lt=(e,t,n,r,i,a)=>{let o=Date.now,s=0,c=!1,l=!1,u=!1,d=!1,f=(()=>{let t,n=()=>{t!=He&&clearTimeout(t)},r=()=>{n(),t=st((()=>{t=He,(()=>{if(c||l)return c=!1,void f();u=!1,e.A(2)})()}),150)};return r.C=n,r})(),p=()=>{s=o(),u&&(d=!0),a&&e.A(6,a()),e.A(1,r()),f()},m=t=>{if(c||!e.B()||t.ctrlKey)return;let r=o()-s;150>r&&50<r&&(n?t.deltaX:t.deltaY)&&(c=!0)},h=()=>{l=!0,u=d=!1},g=()=>{l=!1,it()&&(u=!0)};return t.addEventListener(`scroll`,p),t.addEventListener(`wheel`,m,{passive:!0}),t.addEventListener(`touchstart`,h,{passive:!0}),t.addEventListener(`touchend`,g,{passive:!0}),{H:()=>{t.removeEventListener(`scroll`,p),t.removeEventListener(`wheel`,m),t.removeEventListener(`touchstart`,h),t.removeEventListener(`touchend`,g),f.C()},V:()=>{let[t,n]=e.P();t&&(i(t,n,d),d=!1,n&&e.T()>e.M()&&e.A(1,r()))}}},ut=(e,t,n)=>{let r;return[async(i,a)=>{if(!await t())return;r&&r();let o=()=>{let[t,n]=Je();return r=()=>{n(!1)},e.T()&&st(r,150),[t,e.R(2,(()=>{n(!0)}))]};if(a&&at())e.A(8,i()),qe((async()=>{for(;;){let t=!0;for(let[n,r]=e.v();n<=r;n++)if(e.I(n)){t=!1;break}if(t)break;let[n,r]=o();try{if(!await n)return}finally{r()}}e.A(7),n(i(),a)}));else for(;;){let[t,r]=o();try{if(e.A(7),n(i()),!await t)return}finally{r()}}},()=>{r&&r()}]},dt=e=>{let t;return{F(n){(t||=new(rt(nt(n))).ResizeObserver(e)).observe(n)},J(e){t.unobserve(e)},H(){t&&t.disconnect()}}},ft=H({props:{L:{type:Object,required:!0},W:{type:Object,required:!0},X:{type:Object,required:!0},Y:{type:Function,required:!0},D:{type:Number,required:!0},U:{type:Boolean},G:{type:Boolean},K:{type:Boolean},Z:{type:String,required:!0},ee:Object},setup(t){let n=j(),r=E((()=>t.L.value&&t.W.O(t.D,t.K))),i=E((()=>t.L.value&&t.W.I(t.D)));return e((()=>n.value&&t.D),((e,r,i)=>{i(t.Y(n.value,t.D))}),{flush:`post`}),()=>{let{X:e,U:a,G:o,Z:s}=t,c=i.value,{style:l,...u}=t.ee??{},d={contain:`layout style`,position:c&&o?void 0:`absolute`,[a?`height`:`width`]:`100%`,[a?`top`:`left`]:`0px`,[a?`left`:`top`]:r.value+`px`,visibility:!c||o?void 0:`hidden`,...l};return a&&(d.display=`inline-flex`),C(s,m({ref:n,style:d},u),typeof(f=e)==`function`||Object.prototype.toString.call(f)===`[object Object]`&&!v(f)?e:{default:()=>[e],_:2},16,[`style`]);var f}}}),pt=(e,t)=>{if(e.length===1){let t=e[0].key;if(t!=null)return t}return`_`+t},mt=(e,t)=>e[0]===t[0]&&e[1]===t[1],ht=H({props:{data:{type:Array,required:!0},bufferSize:Number,itemSize:Number,shift:Boolean,horizontal:Boolean,startMargin:{type:Number,default:0},ssrCount:Number,scrollRef:Object,as:{type:String,default:`div`},item:{type:String,default:`div`},itemProps:Function,keepMounted:Array,cache:Object},emits:[`scroll`,`scrollEnd`],setup(t,{emit:n,expose:r,slots:i}){let a=!!t.ssrCount,o=t.horizontal,s=j(),c=ot(t.data.length,t.itemSize,t.ssrCount,t.cache,!t.itemSize),u=((e,t)=>{let n,r=t?`width`:`height`,i=new WeakMap,a=dt((t=>{let a=[];for(let{target:o,contentRect:s}of t)if(o.offsetParent)if(o===n)e.A(4,s[r]);else{let e=i.get(o);e!=He&&a.push([e,s[r]])}a.length&&e.A(3,a)}));return{te(e){a.F(n=e)},re:(e,t)=>(i.set(e,t),a.F(e),()=>{i.delete(e),a.J(e)}),p:a.H}})(c,o),d=((e,t)=>{let n,r,i=Je(),a=!1,o=t?`scrollLeft`:`scrollTop`,s=t?`overflowX`:`overflowY`,[c,l]=ut(e,(()=>i[0]),((e,r)=>{e=ct(e,a),r?n.scrollTo({[t?`left`:`top`]:e,behavior:`smooth`}):n[o]=e}));return{oe(c,u){n=u,t&&(a=getComputedStyle(u).direction===`rtl`),r=lt(e,u,t,(()=>ct(u[o],a)),((t,n,r)=>{if(r){let e=u.style,t=e[s];e[s]=`hidden`,st((()=>{e[s]=t}))}u[o]=ct(e.N()+t,a),n&&l()})),i[1](!0)},p(){r&&r.H(),i[1](!1),i=Je()},ne:()=>a,se(e){c((()=>e))},ie(t){t+=e.N(),c((()=>t))},le(t,{align:n,smooth:r,offset:i=0}={}){if(t=Ge(t,0,e.j()-1),n===`nearest`){let r=e.O(t),i=e.N();if(r<i)n=`start`;else{if(!(r+e.k(t)>i+e.T()))return;n=`end`}}c((()=>i+e.q()+e.O(t)+(n===`end`?e.k(t)-e.T():n===`center`?(e.k(t)-e.T())/2:0)),r)},ce:()=>{r&&r.V()}}})(c,o),f=j(c.m());c.R(1,(()=>{f.value=c.m()})),c.R(4,(()=>{n(`scroll`,c.N())})),c.R(8,(()=>{n(`scrollEnd`)}));let p=E((e=>{f.value;let n=c.v(t.bufferSize);return e&&mt(e,n)?e:n})),m=E((()=>f.value&&c.B())),h=E((()=>f.value&&c.M()));return l((()=>{a=!1;let e=s.value,n=requestAnimationFrame((()=>{let n=t=>{u.te(t),d.oe(e,t)};t.scrollRef?n(t.scrollRef):n(e.parentElement)}));g((()=>{cancelAnimationFrame(n)}))})),g((()=>{c.p(),u.p(),d.p()})),e((()=>t.data.length),(e=>{c.A(5,[e,t.shift])})),e((()=>t.startMargin),(e=>{c.A(6,e)}),{immediate:!0}),e([f],(()=>{d.ce()}),{flush:`post`}),r({get cache(){return c.h()},get scrollOffset(){return c.N()},get scrollSize(){return(e=>Q(e.M(),e.T()))(c)},get viewportSize(){return c.T()},findItemIndex:c.S,getItemOffset:c.O,getItemSize:c.k,scrollToIndex:d.le,scrollTo:d.se,scrollBy:d.ie}),()=>{let e=t.as,n=t.item,r=h.value,l=d.ne(),g=[],_=e=>{let r=i.default({item:t.data[e],index:e});return C(ft,{key:pt(r,e),L:f,W:c,Y:u.re,D:e,X:r,U:o,K:l,G:a,Z:n,ee:t.itemProps?.call(t,{item:t.data[e],index:e})},null,8,[`L`,`W`,`Y`,`D`,`X`,`U`,`K`,`G`,`Z`,`ee`])};if(t.keepMounted){let e=new Set(t.keepMounted);for(let[t,n]=p.value;t<=n;t++)e.add(t);Ke([...e]).forEach((e=>{g.push(_(e))}))}else for(let[e,t]=p.value;e<=t;e++)g.push(_(e));return C(e,{ref:s,style:{contain:`size style`,overflowAnchor:`none`,flex:`none`,position:`relative`,width:o?r+`px`:`100%`,height:o?`100%`:r+`px`,pointerEvents:m.value?`none`:void 0}},typeof(y=g)==`function`||Object.prototype.toString.call(y)===`[object Object]`&&!v(y)?g:{default:()=>[g],_:2},8,[`style`]);var y}}}),gt=H({props:{data:{type:Array,required:!0},bufferSize:Number,itemSize:Number,shift:Boolean,horizontal:Boolean,ssrCount:Number,itemProps:Function,keepMounted:Array,cache:Object},emits:[`scroll`,`scrollEnd`],setup(e,{emit:t,expose:n,slots:r}){let i=e.horizontal,a=e=>{t(`scroll`,e)},o=()=>{t(`scrollEnd`)},s=j();return n({get cache(){return s.value.cache},get scrollOffset(){return s.value.scrollOffset},get scrollSize(){return s.value.scrollSize},get viewportSize(){return s.value.viewportSize},findItemIndex:(...e)=>s.value.findItemIndex(...e),getItemOffset:(...e)=>s.value.getItemOffset(...e),getItemSize:(...e)=>s.value.getItemSize(...e),scrollToIndex:(...e)=>s.value.scrollToIndex(...e),scrollTo:(...e)=>s.value.scrollTo(...e),scrollBy:(...e)=>s.value.scrollBy(...e)}),()=>{return C(`div`,{style:{display:i?`inline-block`:`block`,[i?`overflowX`:`overflowY`]:`auto`,contain:`strict`,width:`100%`,height:`100%`}},[C(ht,{ref:s,data:e.data,bufferSize:e.bufferSize,itemSize:e.itemSize,itemProps:e.itemProps,shift:e.shift,ssrCount:e.ssrCount,horizontal:i,keepMounted:e.keepMounted,cache:e.cache,onScroll:a,onScrollEnd:o},(t=r,typeof t==`function`||Object.prototype.toString.call(t)===`[object Object]`&&!v(t)?r:{default:()=>[r],_:2}),8,[`data`,`bufferSize`,`itemSize`,`itemProps`,`shift`,`ssrCount`,`horizontal`,`keepMounted`,`cache`,`onScroll`,`onScrollEnd`])],4);var t}}});Array,Number,Number,Boolean,Boolean,String,String,Object;var _t={class:`log-viewer`},vt={class:`log-viewer__toolbar`},yt={class:`log-viewer__toolbar-right`},bt={class:`log-viewer__count`},xt=[`title`],St=[`value`],Ct=[`title`],wt=[`title`],Tt={class:`log-viewer__pin-wrap`},Et=[`title`],Dt={key:0,class:`log-viewer__loading`},Ot={key:1,class:`log-viewer__scroll log-viewer__empty`},kt={class:`log-viewer__simple-line`},At={key:0,class:`log-viewer__time-separator`},jt={class:`log-viewer__time-separator-label`},Mt=150,Nt=2e3,Pt=a(H({__name:`LogViewer`,props:{logs:{},loading:{type:Boolean,default:!1},receivedPerSec:{default:void 0},flushedPerSec:{default:void 0},processStartedAt:{default:void 0},showStats:{type:Boolean,default:!1},serviceLabel:{default:void 0}},emits:[`filter-change`,`log-click`],setup(a,{emit:s}){let u=a,d=s,{t:f}=ee(),p=[10,50,100,200,500,1e3,2e3,5e3,1e4],m=j(500),h=j({levels:[...z],filters:[]}),g=j(!0),v=j(null),b=j(!1),S=j(!1),F=j(0),I;function re(e){let t=0;for(let n of e)n.hidden&&!n.logCard&&t++;return t}function R(e){if(I===void 0)return null;for(let t=e.length-1;t>=0;t--)if(e[t].id===I)return e.slice(t+1);return null}function B(e){let t=e.length>m.value?e.slice(e.length-m.value):e;I=t[t.length-1]?.id,G.value=re(t),de(t),g.value&&N(()=>N(J))}function H(e){e.length!==0&&(I=e[e.length-1].id,G.value+=re(e),ue(e,se(),W.value),W.value.length>m.value?W.value=W.value.slice(W.value.length-m.value):_(W),g.value&&N(J))}function ie(){if(F.value===0)return;F.value=0;let e=u.logs,t=R(e);t===null?B(e):H(t)}e(()=>u.logs,e=>{if(e.length===0){I=void 0,F.value=0,G.value=0,de([]);return}if(!g.value){let t=R(e);F.value=t===null?e.length:t.length;return}if(I===void 0){B(e);return}let t=R(e);t===null?B(e):H(t)},{deep:!1}),l(()=>{u.logs.length>0&&B(u.logs)});let U=new WeakMap;function ae(e){if(U.has(e))return U.get(e);try{let t=new RegExp(e.pattern,`i`);return U.set(e,t),t}catch{return U.set(e,null),null}}function oe(e,t){if(e.isRegex){let n=ae(e);return n?n.test(t):!1}return t.toLowerCase().includes(e.pattern.toLowerCase())}function se(){return{levelSet:new Set(h.value.levels),filterAll:h.value.levels.length>=z.length,includes:h.value.filters.filter(e=>e.type===`include`),excludes:h.value.filters.filter(e=>e.type===`exclude`),hidden:b.value}}function ce(e,t){return!(!t.hidden&&e.hidden||!t.filterAll&&!t.levelSet.has(e.level)||t.includes.length>0&&!t.includes.some(t=>oe(t,e.message))||t.excludes.some(t=>oe(t,e.message)))}let W=j([]),le=new Map;function ue(e,t,n){for(let r of e){let e=r.logCard;if(e){if(e.state===`self`){ce(r,t)&&n.push({...r,_type:`log`});continue}if(e.state===`open`){let t={_type:`card`,id:e.id,type:e.type,header:e.header,collapsable:e.collapsable??!0,defaultCollapsed:e.collapsed??!1,body:[]};le.set(e.id,t),n.push(t);continue}if(e.state===`close`){le.delete(e.id);continue}let i=le.get(e.id);i&&ce(r,t)&&i.body.push(r);continue}ce(r,t)&&n.push({...r,_type:`log`})}}function de(e){le=new Map;let t=se(),n=[];ue(e,t,n),W.value=n}e([h,b,m],()=>{B(u.logs)});let G=j(0),K=j(null),q=j(null);e(()=>u.logs,e=>{if(e.length===0){K.value=null,q.value=null;return}let t=Date.now();K.value===null&&(K.value=t),q.value=t});let fe=E(()=>{if(K.value===null||q.value===null)return null;let e=q.value-K.value;return e<=0?null:e<1e3?`${e}ms`:e<6e4?`${(e/1e3).toFixed(1)}s`:e<36e5?`${Math.floor(e/6e4)}m ${Math.floor(e%6e4/1e3)}s`:`${Math.floor(e/36e5)}h ${Math.floor(e%36e5/6e4)}m`}),pe=0,me=0;function J(){!v.value||W.value.length===0||(pe=Date.now()+Mt,v.value.scrollToIndex(W.value.length-1,{align:`end`}))}function he(e){let t=e<me;if(!t&&Date.now()<pe){me=e;return}if(me=e,!v.value)return;let n=v.value.scrollSize-e-v.value.viewportSize;g.value?t&&n>1&&(g.value=!1):n<=1&&(g.value=!0,ie(),N(J))}function ge(){g.value=!g.value,g.value&&(ie(),N(J))}l(()=>{g.value&&N(J)});function _e(e){h.value=e}function ve(e){d(`log-click`,e)}let ye=j(null),X=j(!1),be=te(),{openWithContext:xe}=T(),Ce=``;function we(){let e=window.getSelection();return e&&e.toString().trim()?e.toString().trim():``}function Te(){return W.value.map(e=>e._type===`card`?e.body.map(e=>`[${e.level}] ${e.message}`).join(`
|
|
1
|
+
import{$i as e,$r as t,A as n,Bi as r,Ca as i,Cn as a,Dn as o,Ea as s,Hi as c,Ii as l,Ki as u,Kr as d,M as f,Oa as p,Oi as m,P as h,Ri as g,Sa as _,Ti as v,Tn as y,Ui as b,V as x,Wi as S,Yn as ee,_i as C,ai as w,at as T,ci as E,d as D,di as O,et as te,fi as k,gi as A,ha as j,ia as ne,ka as M,ki as N,li as P,ni as F,ot as I,q as re,ra as L,ri as R,st as z,ti as B,ui as V,yi as H}from"./index-D5xJxOo2.js";import{t as ie}from"./multiselect-BlmCsiSW.js";var U=e=>Array.isArray(e),ae=e=>typeof e==`object`&&!!e&&!Array.isArray(e),oe=e=>e===null?`var(--jtv-null-color)`:{string:`var(--jtv-string-color)`,number:`var(--jtv-number-color)`,boolean:`var(--jtv-boolean-color)`}[typeof e]??`var(--jtv-valueKey-color)`,se=e=>{let t=Number(e);return Number.isNaN(t)?`"${e}":`:`${e}":`},ce=(e,t)=>e===1?`${e} ${t?`element`:`property`}`:`${e} ${t?`elements`:`properties`}`,W=(e,t,n,r=!1)=>n?r?`${e}${t}[${t}].`:`${e}${t}.`:e,le=(e,t,n)=>n?`${e}${t}`:e.slice(0,-1),ue={class:`json-view-item`},de=[`aria-expanded`],G={class:`properties`},K={class:`value-key`},q=(e=>(e[e.OBJECT=0]=`OBJECT`,e[e.ARRAY=1]=`ARRAY`,e[e.VALUE=2]=`VALUE`,e))(q||{}),fe=H({name:`JsonTreeViewItem`,__name:`JsonTreeViewItem`,props:{data:{},maxDepth:{default:1},canSelect:{type:Boolean,default:!1}},emits:[`selected`],setup(e,{emit:t}){let n=t,i=j(e.data.depth<e.maxDepth),a=()=>{i.value=!i.value},o=e=>{n(`selected`,{key:e.key,value:e.value,path:e.path})},l=e=>n(`selected`,e),f=E(()=>({"chevron-arrow":!0,opened:i.value})),m=E(()=>({"value-key":!0,"can-select":e.canSelect})),h=E(()=>{let{length:t,type:n}=e.data;return t===void 0?``:ce(t,n===1)}),g=E(()=>JSON.stringify(e.data.value)),_=e=>se(e.key),v=e=>oe(e);return(t,n)=>{let y=S(`JsonTreeViewItem`,!0);return r(),k(`div`,ue,[e.data.type===0||e.data.type===1?(r(),k(w,{key:0},[P(`button`,{class:`data-key`,type:`button`,"aria-expanded":i.value,onClick:R(a,[`stop`])},[P(`div`,{class:s(f.value),"aria-hidden":`true`},null,2),P(`span`,null,M(e.data.key)+`:`,1),P(`span`,G,M(h.value),1)],8,de),C(d,{name:`expand`},{default:L(()=>[ne(P(`div`,null,[(r(!0),k(w,null,c(e.data.children,t=>(r(),V(y,{key:_(t),data:t,"max-depth":e.maxDepth,"can-select":e.canSelect,onSelected:l},null,8,[`data`,`max-depth`,`can-select`]))),128))],512),[[B,i.value]])]),_:1})],64)):O(``,!0),e.data.type===2?(r(),V(u(e.canSelect?`button`:`div`),{key:1,class:s(m.value),type:e.canSelect?`button`:null,tabindex:e.canSelect?0:null,onClick:n[0]||=t=>e.canSelect?o(e.data):null,onKeyup:[n[1]||=F(t=>e.canSelect?o(e.data):null,[`enter`]),n[2]||=F(R(t=>e.canSelect?o(e.data):null,[`prevent`]),[`space`])]},{default:L(()=>[P(`span`,K,M(e.data.key)+`:`,1),P(`span`,{style:p({color:v(e.data.value)})},M(g.value),5)]),_:1},40,[`class`,`type`,`tabindex`])):O(``,!0)])}}}),pe=((e,t)=>{let n=e.__vccOpts||e;for(let[e,r]of t)n[e]=r;return n})(H({name:`JsonTreeView`,__name:`JsonTreeView`,props:{json:{},rootKey:{default:`/`},maxDepth:{default:1},colorScheme:{default:`light`}},emits:[`selected`],setup(e,{emit:t}){let n=t,i=e=>n(`selected`,e),a=(e,t,n,r,i)=>{let a=t.map((t,a)=>l(a.toString(),t,n+1,W(r,e,i,!0),!1));return{key:e,type:q.ARRAY,depth:n,path:r,length:a.length,children:a}},o=(e,t,n,r,i)=>{let a=Object.entries(t).map(([t,a])=>l(t,a,n+1,W(r,e,i),!0));return{key:e,type:q.OBJECT,depth:n,path:r,length:a.length,children:a}},c=(e,t,n,r,i)=>({key:e,type:q.VALUE,path:le(r,e,i),depth:n,value:t}),l=(e,t,n,r,i)=>U(t)?a(e,t,n,r,i):ae(t)?o(e,t,n,r,i):c(e,t,n,r,i),u=(e,t)=>{try{let n=JSON.parse(e);return ae(n)||U(n)?l(t,n,0,``,!0):c(t,n,0,``,!0)}catch{return c(t,e,0,``,!0)}},d=E(()=>u(e.json,e.rootKey));return(t,n)=>(r(),V(fe,{class:s([`root-item`,{dark:e.colorScheme===`dark`}]),data:d.value,"max-depth":e.maxDepth,onSelected:i},null,8,[`class`,`data`,`max-depth`]))}}),[[`__scopeId`,`data-v-9f840ee1`]]),me={class:`log-card__icon`},J=[`innerHTML`],he={key:0,class:`log-card__badge`},ge=[`innerHTML`],_e={class:`log-card__clip`},ve=320,ye=150,Y=a(H({__name:`LogCard`,props:{icon:{},title:{},color:{},badge:{},muted:{type:Boolean},defaultCollapsed:{type:Boolean},lastLine:{}},setup(e){let t=e,n=j(!t.defaultCollapsed),a=j(!!t.defaultCollapsed),o=j(!!t.defaultCollapsed);function c(){n.value?(n.value=!1,setTimeout(()=>{a.value=!0,o.value=!0},ve)):(a.value=!1,o.value=!1,setTimeout(()=>{n.value=!0},ye))}return(t,l)=>(r(),k(`div`,{class:s([`log-card`,{"log-card--muted":e.muted,"log-card--open":!o.value}])},[P(`div`,{class:`log-card__header`,style:p({background:e.color}),onClick:c},[P(`span`,me,M(e.icon),1),P(`span`,{class:`log-card__title`,innerHTML:i(f).sanitize(e.title)},null,8,J),e.badge?(r(),k(`span`,he,M(e.badge),1)):O(``,!0),t.$slots.default?(r(),k(`span`,{key:1,class:s([`log-card__chevron`,{"log-card__chevron--open":!o.value}])},[...l[0]||=[P(`svg`,{width:`8`,height:`8`,viewBox:`0 0 8 8`,fill:`currentColor`},[P(`polygon`,{points:`0,0 8,4 0,8`})],-1)]],2)):O(``,!0)],4),t.$slots.default?(r(),k(w,{key:0},[C(d,{name:`dots`},{default:L(()=>[a.value?(r(),k(`div`,{key:0,class:`log-card__preview`,style:p({borderLeftColor:e.color})},[e.lastLine?(r(),k(`span`,{key:0,class:`log-card__last-line`,innerHTML:i(f).sanitize(e.lastLine)},null,8,ge)):(r(),k(w,{key:1},[l[1]||=P(`span`,{class:`log-card__dot`},null,-1),l[2]||=P(`span`,{class:`log-card__dot`},null,-1),l[3]||=P(`span`,{class:`log-card__dot`},null,-1)],64))],4)):O(``,!0)]),_:1}),P(`div`,{class:s([`log-card__grid`,{"log-card__grid--open":n.value}])},[P(`div`,_e,[P(`div`,{class:`log-card__body`,style:p({borderLeftColor:e.color})},[b(t.$slots,`default`,{},void 0,!0)],4)])],2)],64)):O(``,!0)],2))}}),[[`__scopeId`,`data-v-9028b0a2`]]),X={key:5},be=[`title`],xe=[`innerHTML`],Se=a(H({__name:`LogLine`,props:{log:{}},emits:[`click`],setup(e,{emit:t}){let n=e,a=t;function o(){let e=window.getSelection();e&&e.toString().length>0||a(`click`,n.log)}let s={debug:`#c72bd4`,info:`#a3a3a3`,warn:`#f59e0b`,error:`#ef4444`,fatal:`#ef4444`},c=E(()=>s[n.log.level]??`#a3a3a3`),l=E(()=>n.log.logCard?.state===`self`?n.log.logCard.type:null);function u(e){return e.metadata!=null&&Object.keys(e.metadata).length>0}function d(e){if(!e.metadata)return``;try{return JSON.stringify(e.metadata,null,2)}catch{return String(e.metadata)}}function m(e){return JSON.stringify(e.json)}return(t,a)=>(r(),k(`div`,null,[l.value===`command-start`?(r(),V(Y,{key:0,icon:`⌗`,title:e.log.logCard.header,color:`#3b82f6`,onClick:o},{default:L(()=>[A(M(e.log.message),1)]),_:1},8,[`title`])):l.value===`command-fail`?(r(),V(Y,{key:1,icon:`⌗`,title:e.log.logCard.header,color:`#ef4444`,badge:`✗ ${e.log.message}`,onClick:o},null,8,[`title`,`badge`])):l.value===`system-warn`?(r(),V(Y,{key:2,icon:`⚠`,title:e.log.logCard.header,color:`#ef4444`,badge:e.log.message,onClick:o},null,8,[`title`,`badge`])):l.value===`json`?(r(),V(Y,{key:3,icon:`</>`,title:e.log.logCard.header,color:c.value},{default:L(()=>[P(`div`,{onClick:a[0]||=R(()=>{},[`stop`])},[C(i(pe),{json:m(n.log),maxDepth:2},null,8,[`json`])])]),_:1},8,[`title`,`color`])):e.log.json?(r(),V(Y,{key:4,icon:`</>`,title:`JSON`,color:c.value,onClick:o},{default:L(()=>[P(`div`,{onClick:a[1]||=R(()=>{},[`stop`])},[C(i(pe),{json:m(n.log),maxDepth:2},null,8,[`json`])])]),_:1},8,[`color`])):(r(),k(`div`,X,[P(`div`,{class:`log-line`,"data-testid":`log-message`,style:p({boxShadow:`inset 3px 0 0 0 ${c.value}`}),title:u(n.log)?d(n.log):void 0,onClick:o},[P(`span`,{class:`log-message`,innerHTML:i(f).sanitize(n.log.message)},null,8,xe)],12,be)]))]))}}),[[`__scopeId`,`data-v-9d8a1243`]]),Ce={class:`log-filter`},we={class:`log-filter__row`},Te={class:`log-filter__level-option`},Ee={class:`log-filter__level-chip`},De={key:0,class:`log-filter__badges`},Oe=[`title`],ke={class:`log-filter__badge-type`},Ae={key:0,class:`log-filter__badge-flag`},je={class:`log-filter__badge-pattern`},Me=[`aria-label`,`onClick`],Ne={class:`log-filter__popover`},Pe={class:`log-filter__popover-title`},Fe={class:`log-filter__popover-row`},Ie={class:`log-filter__popover-row log-filter__popover-row--between`},Le={class:`log-filter__popover-label`},Re={class:`log-filter__popover-input-wrap`},ze={key:0,class:`log-filter__popover-error`},Be={class:`log-filter__popover-actions`},Ve=a(H({__name:`LogFilter`,props:{modelValue:{}},emits:[`update:modelValue`],setup(t,{emit:n}){let{t:a}=ee(),l=t,u=n,d={debug:`#c72bd4`,info:`#a3a3a3`,warn:`#f59e0b`,error:`#ef4444`,fatal:`#ef4444`},f=z.map(e=>({label:e.charAt(0).toUpperCase()+e.slice(1),value:e,color:d[e]??`#a3a3a3`})),m=j([...l.modelValue.levels]),_=j([...l.modelValue.filters]),v=!1;e(m,e=>{v||u(`update:modelValue`,{levels:e,filters:_.value})}),e(()=>l.modelValue,e=>{v=!0,m.value=[...e.levels],_.value=[...e.filters],N(()=>{v=!1})});let y=j(null),b=j(``),x=j(`include`),S=j(!1),T=j(``);function E(e){y.value?.toggle(e)}function D(){y.value?.hide()}function te(e){try{return new RegExp(e),!0}catch(e){return T.value=e instanceof Error?e.message:`Invalid regex`,!1}}function ne(){let e=b.value.trim();e&&(T.value=``,!(S.value&&!te(e))&&(_.value=[..._.value,{id:`${Date.now()}-${Math.random()}`,pattern:e,type:x.value,isRegex:S.value}],b.value=``,u(`update:modelValue`,{levels:m.value,filters:_.value}),D()))}function F(e){e.key===`Enter`&&(e.preventDefault(),ne()),e.key===`Escape`&&D()}function I(){T.value=``}function R(e){_.value=_.value.filter(t=>t.id!==e),u(`update:modelValue`,{levels:m.value,filters:_.value})}function B(){m.value=[...z],_.value=[],u(`update:modelValue`,{levels:[...z],filters:[]})}return g(()=>{}),(e,t)=>(r(),k(`div`,Ce,[P(`div`,we,[C(i(ie),{modelValue:m.value,"onUpdate:modelValue":t[0]||=e=>m.value=e,options:i(f),"option-label":`label`,"option-value":`value`,placeholder:i(a)(`logFilter.levelsPlaceholder`),class:`log-filter__levels`,"max-selected-labels":3,display:`chip`},{option:L(({option:e})=>[P(`div`,Te,[P(`span`,{class:`log-filter__level-dot`,style:p({backgroundColor:e.color})},null,4),A(` `+M(e.label),1)])]),chip:L(({value:e})=>[P(`div`,Ee,[P(`span`,{class:`log-filter__level-dot`,style:p({backgroundColor:d[e]})},null,4),A(` `+M(e.charAt(0).toUpperCase()+e.slice(1)),1)])]),_:1},8,[`modelValue`,`options`,`placeholder`]),C(i(o),{icon:`pi pi-filter`,label:i(a)(`logFilter.addFilter`),size:`small`,severity:`secondary`,badge:_.value.length>0?String(_.value.length):void 0,"badge-severity":`contrast`,onClick:E},null,8,[`label`,`badge`]),_.value.length>0||m.value.length<i(z).length?(r(),V(i(o),{key:0,icon:`pi pi-filter-slash`,text:``,rounded:``,size:`small`,severity:`secondary`,"aria-label":i(a)(`logFilter.clearAll`),title:i(a)(`logFilter.clearAll`),onClick:B},null,8,[`aria-label`,`title`])):O(``,!0)]),_.value.length>0?(r(),k(`div`,De,[(r(!0),k(w,null,c(_.value,e=>(r(),k(`span`,{key:e.id,class:s([`log-filter__badge`,e.type===`include`?`log-filter__badge--include`:`log-filter__badge--exclude`]),title:`${e.type} · ${e.isRegex?`regex`:`text`}: ${e.pattern}`},[P(`span`,ke,M(e.type===`include`?`+`:`−`),1),e.isRegex?(r(),k(`span`,Ae,`.*`)):O(``,!0),P(`span`,je,M(e.pattern),1),P(`button`,{class:`log-filter__badge-remove`,"aria-label":i(a)(`logFilter.removeFilter`),onClick:t=>R(e.id)},[...t[5]||=[P(`i`,{class:`pi pi-times`,style:{"font-size":`0.6rem`}},null,-1)]],8,Me)],10,Oe))),128))])):O(``,!0),C(i(h),{ref_key:`popoverRef`,ref:y},{default:L(()=>[P(`div`,Ne,[P(`p`,Pe,M(i(a)(`logFilter.newFilter`)),1),P(`div`,Fe,[P(`button`,{class:s([`log-filter__type-btn`,x.value===`include`&&`log-filter__type-btn--active-include`]),onClick:t[1]||=e=>x.value=`include`},[t[6]||=P(`i`,{class:`pi pi-plus`},null,-1),A(` `+M(i(a)(`logFilter.include`)),1)],2),P(`button`,{class:s([`log-filter__type-btn`,x.value===`exclude`&&`log-filter__type-btn--active-exclude`]),onClick:t[2]||=e=>x.value=`exclude`},[t[7]||=P(`i`,{class:`pi pi-minus`},null,-1),A(` `+M(i(a)(`logFilter.exclude`)),1)],2)]),P(`div`,Ie,[P(`label`,Le,M(i(a)(`logFilter.regex`)),1),P(`button`,{class:s([`log-filter__regex-toggle`,S.value&&`log-filter__regex-toggle--on`]),onClick:t[3]||=e=>{S.value=!S.value,T.value=``}},` .* `,2)]),P(`div`,Re,[C(i(re),{modelValue:b.value,"onUpdate:modelValue":t[4]||=e=>b.value=e,placeholder:S.value?i(a)(`logFilter.regexPlaceholder`):i(a)(`logFilter.filterPlaceholder`),class:`log-filter__popover-input`,invalid:!!T.value,autofocus:``,onInput:I,onKeydown:F},null,8,[`modelValue`,`placeholder`,`invalid`]),T.value?(r(),k(`p`,ze,M(T.value),1)):O(``,!0)]),P(`div`,Be,[C(i(o),{label:i(a)(`logFilter.add`),icon:`pi pi-check`,size:`small`,disabled:!b.value.trim(),onClick:ne},null,8,[`label`,`disabled`]),C(i(o),{label:i(a)(`logFilter.cancel`),size:`small`,severity:`secondary`,text:``,onClick:D},null,8,[`label`])])])]),_:1},512)]))}}),[[`__scopeId`,`data-v-7d8d6ac3`]]),He=null,{min:Z,max:Q,abs:Ue,floor:We}=Math,Ge=(e,t,n)=>Z(n,Q(t,e)),Ke=e=>[...e].sort(((e,t)=>e-t)),qe=typeof queueMicrotask==`function`?queueMicrotask:e=>{Promise.resolve().then(e)},Je=()=>{let e;return[new Promise((t=>{e=t})),e]},Ye=e=>{let t;return()=>(e&&=(t=e(),void 0),t)},Xe=(e,t,n)=>{let r=n?`unshift`:`push`;for(let n=0;n<t;n++)e[r](-1);return e},Ze=(e,t)=>{let n=e.t[t];return n===-1?e.o:n},Qe=(e,t,n)=>{let r=e.t[t]===-1;return e.t[t]=n,e.i=Z(t,e.i),r},$e=(e,t)=>{if(!e.l)return 0;if(e.i>=t)return e.u[t];e.i<0&&(e.u[0]=0,e.i=0);let n=e.i,r=e.u[n];for(;n<t;)r+=Ze(e,n),e.u[++n]=r;return e.i=t,r},$=(e,t,n=0,r=e.l-1)=>{let i=n;for(;n<=r;){let a=We((n+r)/2);$e(e,a)<=t?(i=a,n=a+1):r=a-1}return Ge(i,0,e.l-1)},et=(e,t,n)=>{let r=t-e.l;return e.i=n?-1:Z(t-1,e.i),e.l=t,r>0?(Xe(e.u,r),Xe(e.t,r,n),e.o*r):(e.u.splice(r),(n?e.t.splice(0,-r):e.t.splice(r)).reduce(((t,n)=>t-(n===-1?e.o:n)),0))},tt=e=>e.documentElement,nt=e=>e.ownerDocument,rt=e=>e.defaultView,it=Ye((()=>!!/iP(hone|od|ad)/.test(navigator.userAgent)||navigator.platform===`MacIntel`&&navigator.maxTouchPoints>0)),at=Ye((()=>`scrollBehavior`in tt(document).style)),ot=(e,t=40,n=0,r,i=!1)=>{let a=!!n,o=1,s=0,c=0,l=0,u=0,d=0,f=0,p=0,m=0,h=He,g=[0,a?Q(n-1,0):-1],_=0,v=!1,y=((e,t,n)=>({o:t,t:n?Xe(n.slice(0,Z(e,n.length)),Q(0,e-n.length)):Xe([],e),l:e,i:-1,u:Xe([],e+1)}))(e,r?r[1]:t,r&&r[0]),b=new Set,x=()=>l-c,S=()=>x()+d+u,ee=(e,t)=>((e,t,n,r)=>{if(r=Z(r,e.l-1),$e(e,r)<=t){let i=$(e,n,r);return[$(e,t,r,i),i]}{let i=$(e,t,void 0,r);return[i,$(e,n,i)]}})(y,e,t,g[0]),C=()=>$e(y,y.l),w=(e,t)=>{let n=$e(y,e)-d;return t?C()-n-T(e):n},T=e=>Ze(y,e),E=(e,t=-1)=>y.t[e]===t,D=e=>{e&&(it()&&p!==0||h&&m===1?d+=e:u+=e)};return{p:()=>{b.clear()},m:()=>o,h:()=>(e=>[e.t.slice(),e.o])(y),v:(e=200)=>{if(!v||a)return g;let t,n;if(f)[t,n]=g;else{let r=Q(0,S()),a=r+s;i||(e=Q(0,e),p!==1&&(r-=e),p!==2&&(a+=e)),[t,n]=g=ee(Q(0,r),Q(0,a)),h&&(t=Z(t,h[0]),n=Q(n,h[1]))}return[Q(t,0),Z(n,y.l-1)]},S:e=>$(y,e-c),I:E,O:w,k:T,j:()=>y.l,N:()=>l,B:()=>p!==0,T:()=>s,q:()=>c,M:C,P:()=>(f=u,u=0,[f,m===2]),R:(e,t)=>{let n=[e,t];return b.add(n),()=>{b.delete(n)}},A:(e,t)=>{let n,r,g=0;switch(e){case 1:{if(t===l&&m===0)break;let e=f;f=0;let n=t-l,i=Ue(n);e&&i<Ue(e)+1||m!==0||(p=n<0?2:1),a&&=!1,l=t,g=4;let o=x();o>=-s&&o<=C()&&(g+=1,r=i>s);break}case 2:g=8,p!==0&&(n=!0,g+=1),p=0,m=0,h=He;break;case 3:{let e=t.filter((([e,t])=>!E(e,t)));if(!e.length)break;D(e.reduce(((e,[t,n])=>((m===2||(h&&m===1?t<h[0]:w(t+(p===0&&m===0?1:0))<x()))&&(e+=n-T(t)),e)),0));for(let[t,n]of e){let e=T(t),r=Qe(y,t,n);i&&(_+=r?n:n-e)}i&&s&&_>s&&(D(((e,t)=>{let n=0,r=[];e.t.forEach(((e,i)=>{e!==-1&&(r.push(e),i<t&&n++)})),e.i=-1;let i=Ke(r),a=i.length,o=a/2|0,s=a%2==0?(i[o-1]+i[o])/2:i[o],c=e.o;return((e.o=s)-c)*Q(t-n,0)})(y,$(y,S()))),i=!1),g=3,r=!0;break}case 4:s!==t&&(s||(v=r=!0),s=t,g=3);break;case 5:t[1]?(D(et(y,t[0],!0)),m=2,g=1):(et(y,t[0]),g=1);break;case 6:c=t;break;case 7:m=1;break;case 8:h=ee(t,t+s),g=1}g&&(o=1+(2147483647&o),n&&d&&(u+=d,d=0),b.forEach((([e,t])=>{g&e&&t(r)})))}}},st=setTimeout,ct=(e,t)=>t?-e:e,lt=(e,t,n,r,i,a)=>{let o=Date.now,s=0,c=!1,l=!1,u=!1,d=!1,f=(()=>{let t,n=()=>{t!=He&&clearTimeout(t)},r=()=>{n(),t=st((()=>{t=He,(()=>{if(c||l)return c=!1,void f();u=!1,e.A(2)})()}),150)};return r.C=n,r})(),p=()=>{s=o(),u&&(d=!0),a&&e.A(6,a()),e.A(1,r()),f()},m=t=>{if(c||!e.B()||t.ctrlKey)return;let r=o()-s;150>r&&50<r&&(n?t.deltaX:t.deltaY)&&(c=!0)},h=()=>{l=!0,u=d=!1},g=()=>{l=!1,it()&&(u=!0)};return t.addEventListener(`scroll`,p),t.addEventListener(`wheel`,m,{passive:!0}),t.addEventListener(`touchstart`,h,{passive:!0}),t.addEventListener(`touchend`,g,{passive:!0}),{H:()=>{t.removeEventListener(`scroll`,p),t.removeEventListener(`wheel`,m),t.removeEventListener(`touchstart`,h),t.removeEventListener(`touchend`,g),f.C()},V:()=>{let[t,n]=e.P();t&&(i(t,n,d),d=!1,n&&e.T()>e.M()&&e.A(1,r()))}}},ut=(e,t,n)=>{let r;return[async(i,a)=>{if(!await t())return;r&&r();let o=()=>{let[t,n]=Je();return r=()=>{n(!1)},e.T()&&st(r,150),[t,e.R(2,(()=>{n(!0)}))]};if(a&&at())e.A(8,i()),qe((async()=>{for(;;){let t=!0;for(let[n,r]=e.v();n<=r;n++)if(e.I(n)){t=!1;break}if(t)break;let[n,r]=o();try{if(!await n)return}finally{r()}}e.A(7),n(i(),a)}));else for(;;){let[t,r]=o();try{if(e.A(7),n(i()),!await t)return}finally{r()}}},()=>{r&&r()}]},dt=e=>{let t;return{F(n){(t||=new(rt(nt(n))).ResizeObserver(e)).observe(n)},J(e){t.unobserve(e)},H(){t&&t.disconnect()}}},ft=H({props:{L:{type:Object,required:!0},W:{type:Object,required:!0},X:{type:Object,required:!0},Y:{type:Function,required:!0},D:{type:Number,required:!0},U:{type:Boolean},G:{type:Boolean},K:{type:Boolean},Z:{type:String,required:!0},ee:Object},setup(t){let n=j(),r=E((()=>t.L.value&&t.W.O(t.D,t.K))),i=E((()=>t.L.value&&t.W.I(t.D)));return e((()=>n.value&&t.D),((e,r,i)=>{i(t.Y(n.value,t.D))}),{flush:`post`}),()=>{let{X:e,U:a,G:o,Z:s}=t,c=i.value,{style:l,...u}=t.ee??{},d={contain:`layout style`,position:c&&o?void 0:`absolute`,[a?`height`:`width`]:`100%`,[a?`top`:`left`]:`0px`,[a?`left`:`top`]:r.value+`px`,visibility:!c||o?void 0:`hidden`,...l};return a&&(d.display=`inline-flex`),C(s,m({ref:n,style:d},u),typeof(f=e)==`function`||Object.prototype.toString.call(f)===`[object Object]`&&!v(f)?e:{default:()=>[e],_:2},16,[`style`]);var f}}}),pt=(e,t)=>{if(e.length===1){let t=e[0].key;if(t!=null)return t}return`_`+t},mt=(e,t)=>e[0]===t[0]&&e[1]===t[1],ht=H({props:{data:{type:Array,required:!0},bufferSize:Number,itemSize:Number,shift:Boolean,horizontal:Boolean,startMargin:{type:Number,default:0},ssrCount:Number,scrollRef:Object,as:{type:String,default:`div`},item:{type:String,default:`div`},itemProps:Function,keepMounted:Array,cache:Object},emits:[`scroll`,`scrollEnd`],setup(t,{emit:n,expose:r,slots:i}){let a=!!t.ssrCount,o=t.horizontal,s=j(),c=ot(t.data.length,t.itemSize,t.ssrCount,t.cache,!t.itemSize),u=((e,t)=>{let n,r=t?`width`:`height`,i=new WeakMap,a=dt((t=>{let a=[];for(let{target:o,contentRect:s}of t)if(o.offsetParent)if(o===n)e.A(4,s[r]);else{let e=i.get(o);e!=He&&a.push([e,s[r]])}a.length&&e.A(3,a)}));return{te(e){a.F(n=e)},re:(e,t)=>(i.set(e,t),a.F(e),()=>{i.delete(e),a.J(e)}),p:a.H}})(c,o),d=((e,t)=>{let n,r,i=Je(),a=!1,o=t?`scrollLeft`:`scrollTop`,s=t?`overflowX`:`overflowY`,[c,l]=ut(e,(()=>i[0]),((e,r)=>{e=ct(e,a),r?n.scrollTo({[t?`left`:`top`]:e,behavior:`smooth`}):n[o]=e}));return{oe(c,u){n=u,t&&(a=getComputedStyle(u).direction===`rtl`),r=lt(e,u,t,(()=>ct(u[o],a)),((t,n,r)=>{if(r){let e=u.style,t=e[s];e[s]=`hidden`,st((()=>{e[s]=t}))}u[o]=ct(e.N()+t,a),n&&l()})),i[1](!0)},p(){r&&r.H(),i[1](!1),i=Je()},ne:()=>a,se(e){c((()=>e))},ie(t){t+=e.N(),c((()=>t))},le(t,{align:n,smooth:r,offset:i=0}={}){if(t=Ge(t,0,e.j()-1),n===`nearest`){let r=e.O(t),i=e.N();if(r<i)n=`start`;else{if(!(r+e.k(t)>i+e.T()))return;n=`end`}}c((()=>i+e.q()+e.O(t)+(n===`end`?e.k(t)-e.T():n===`center`?(e.k(t)-e.T())/2:0)),r)},ce:()=>{r&&r.V()}}})(c,o),f=j(c.m());c.R(1,(()=>{f.value=c.m()})),c.R(4,(()=>{n(`scroll`,c.N())})),c.R(8,(()=>{n(`scrollEnd`)}));let p=E((e=>{f.value;let n=c.v(t.bufferSize);return e&&mt(e,n)?e:n})),m=E((()=>f.value&&c.B())),h=E((()=>f.value&&c.M()));return l((()=>{a=!1;let e=s.value,n=requestAnimationFrame((()=>{let n=t=>{u.te(t),d.oe(e,t)};t.scrollRef?n(t.scrollRef):n(e.parentElement)}));g((()=>{cancelAnimationFrame(n)}))})),g((()=>{c.p(),u.p(),d.p()})),e((()=>t.data.length),(e=>{c.A(5,[e,t.shift])})),e((()=>t.startMargin),(e=>{c.A(6,e)}),{immediate:!0}),e([f],(()=>{d.ce()}),{flush:`post`}),r({get cache(){return c.h()},get scrollOffset(){return c.N()},get scrollSize(){return(e=>Q(e.M(),e.T()))(c)},get viewportSize(){return c.T()},findItemIndex:c.S,getItemOffset:c.O,getItemSize:c.k,scrollToIndex:d.le,scrollTo:d.se,scrollBy:d.ie}),()=>{let e=t.as,n=t.item,r=h.value,l=d.ne(),g=[],_=e=>{let r=i.default({item:t.data[e],index:e});return C(ft,{key:pt(r,e),L:f,W:c,Y:u.re,D:e,X:r,U:o,K:l,G:a,Z:n,ee:t.itemProps?.call(t,{item:t.data[e],index:e})},null,8,[`L`,`W`,`Y`,`D`,`X`,`U`,`K`,`G`,`Z`,`ee`])};if(t.keepMounted){let e=new Set(t.keepMounted);for(let[t,n]=p.value;t<=n;t++)e.add(t);Ke([...e]).forEach((e=>{g.push(_(e))}))}else for(let[e,t]=p.value;e<=t;e++)g.push(_(e));return C(e,{ref:s,style:{contain:`size style`,overflowAnchor:`none`,flex:`none`,position:`relative`,width:o?r+`px`:`100%`,height:o?`100%`:r+`px`,pointerEvents:m.value?`none`:void 0}},typeof(y=g)==`function`||Object.prototype.toString.call(y)===`[object Object]`&&!v(y)?g:{default:()=>[g],_:2},8,[`style`]);var y}}}),gt=H({props:{data:{type:Array,required:!0},bufferSize:Number,itemSize:Number,shift:Boolean,horizontal:Boolean,ssrCount:Number,itemProps:Function,keepMounted:Array,cache:Object},emits:[`scroll`,`scrollEnd`],setup(e,{emit:t,expose:n,slots:r}){let i=e.horizontal,a=e=>{t(`scroll`,e)},o=()=>{t(`scrollEnd`)},s=j();return n({get cache(){return s.value.cache},get scrollOffset(){return s.value.scrollOffset},get scrollSize(){return s.value.scrollSize},get viewportSize(){return s.value.viewportSize},findItemIndex:(...e)=>s.value.findItemIndex(...e),getItemOffset:(...e)=>s.value.getItemOffset(...e),getItemSize:(...e)=>s.value.getItemSize(...e),scrollToIndex:(...e)=>s.value.scrollToIndex(...e),scrollTo:(...e)=>s.value.scrollTo(...e),scrollBy:(...e)=>s.value.scrollBy(...e)}),()=>{return C(`div`,{style:{display:i?`inline-block`:`block`,[i?`overflowX`:`overflowY`]:`auto`,contain:`strict`,width:`100%`,height:`100%`}},[C(ht,{ref:s,data:e.data,bufferSize:e.bufferSize,itemSize:e.itemSize,itemProps:e.itemProps,shift:e.shift,ssrCount:e.ssrCount,horizontal:i,keepMounted:e.keepMounted,cache:e.cache,onScroll:a,onScrollEnd:o},(t=r,typeof t==`function`||Object.prototype.toString.call(t)===`[object Object]`&&!v(t)?r:{default:()=>[r],_:2}),8,[`data`,`bufferSize`,`itemSize`,`itemProps`,`shift`,`ssrCount`,`horizontal`,`keepMounted`,`cache`,`onScroll`,`onScrollEnd`])],4);var t}}});Array,Number,Number,Boolean,Boolean,String,String,Object;var _t={class:`log-viewer`},vt={class:`log-viewer__toolbar`},yt={class:`log-viewer__toolbar-right`},bt={class:`log-viewer__count`},xt=[`title`],St=[`value`],Ct=[`title`],wt=[`title`],Tt={class:`log-viewer__pin-wrap`},Et=[`title`],Dt={key:0,class:`log-viewer__loading`},Ot={key:1,class:`log-viewer__scroll log-viewer__empty`},kt={class:`log-viewer__simple-line`},At={key:0,class:`log-viewer__time-separator`},jt={class:`log-viewer__time-separator-label`},Mt=150,Nt=2e3,Pt=a(H({__name:`LogViewer`,props:{logs:{},loading:{type:Boolean,default:!1},receivedPerSec:{default:void 0},flushedPerSec:{default:void 0},processStartedAt:{default:void 0},showStats:{type:Boolean,default:!1},serviceLabel:{default:void 0}},emits:[`filter-change`,`log-click`],setup(a,{emit:s}){let u=a,d=s,{t:f}=ee(),p=[10,50,100,200,500,1e3,2e3,5e3,1e4],m=j(500),h=j({levels:[...z],filters:[]}),g=j(!0),v=j(null),b=j(!1),S=j(!1),F=j(0),I;function re(e){let t=0;for(let n of e)n.hidden&&!n.logCard&&t++;return t}function R(e){if(I===void 0)return null;for(let t=e.length-1;t>=0;t--)if(e[t].id===I)return e.slice(t+1);return null}function B(e){let t=e.length>m.value?e.slice(e.length-m.value):e;I=t[t.length-1]?.id,G.value=re(t),de(t),g.value&&N(()=>N(J))}function H(e){e.length!==0&&(I=e[e.length-1].id,G.value+=re(e),ue(e,se(),W.value),W.value.length>m.value?W.value=W.value.slice(W.value.length-m.value):_(W),g.value&&N(J))}function ie(){if(F.value===0)return;F.value=0;let e=u.logs,t=R(e);t===null?B(e):H(t)}e(()=>u.logs,e=>{if(e.length===0){I=void 0,F.value=0,G.value=0,de([]);return}if(!g.value){let t=R(e);F.value=t===null?e.length:t.length;return}if(I===void 0){B(e);return}let t=R(e);t===null?B(e):H(t)},{deep:!1}),l(()=>{u.logs.length>0&&B(u.logs)});let U=new WeakMap;function ae(e){if(U.has(e))return U.get(e);try{let t=new RegExp(e.pattern,`i`);return U.set(e,t),t}catch{return U.set(e,null),null}}function oe(e,t){if(e.isRegex){let n=ae(e);return n?n.test(t):!1}return t.toLowerCase().includes(e.pattern.toLowerCase())}function se(){return{levelSet:new Set(h.value.levels),filterAll:h.value.levels.length>=z.length,includes:h.value.filters.filter(e=>e.type===`include`),excludes:h.value.filters.filter(e=>e.type===`exclude`),hidden:b.value}}function ce(e,t){return!(!t.hidden&&e.hidden||!t.filterAll&&!t.levelSet.has(e.level)||t.includes.length>0&&!t.includes.some(t=>oe(t,e.message))||t.excludes.some(t=>oe(t,e.message)))}let W=j([]),le=new Map;function ue(e,t,n){for(let r of e){let e=r.logCard;if(e){if(e.state===`self`){ce(r,t)&&n.push({...r,_type:`log`});continue}if(e.state===`open`){let t={_type:`card`,id:e.id,type:e.type,header:e.header,collapsable:e.collapsable??!0,defaultCollapsed:e.collapsed??!1,body:[]};le.set(e.id,t),n.push(t);continue}if(e.state===`close`){le.delete(e.id);continue}let i=le.get(e.id);i&&ce(r,t)&&i.body.push(r);continue}ce(r,t)&&n.push({...r,_type:`log`})}}function de(e){le=new Map;let t=se(),n=[];ue(e,t,n),W.value=n}e([h,b,m],()=>{B(u.logs)});let G=j(0),K=j(null),q=j(null);e(()=>u.logs,e=>{if(e.length===0){K.value=null,q.value=null;return}let t=Date.now();K.value===null&&(K.value=t),q.value=t});let fe=E(()=>{if(K.value===null||q.value===null)return null;let e=q.value-K.value;return e<=0?null:e<1e3?`${e}ms`:e<6e4?`${(e/1e3).toFixed(1)}s`:e<36e5?`${Math.floor(e/6e4)}m ${Math.floor(e%6e4/1e3)}s`:`${Math.floor(e/36e5)}h ${Math.floor(e%36e5/6e4)}m`}),pe=0,me=0;function J(){!v.value||W.value.length===0||(pe=Date.now()+Mt,v.value.scrollToIndex(W.value.length-1,{align:`end`}))}function he(e){let t=e<me;if(!t&&Date.now()<pe){me=e;return}if(me=e,!v.value)return;let n=v.value.scrollSize-e-v.value.viewportSize;g.value?t&&n>1&&(g.value=!1):n<=1&&(g.value=!0,ie(),N(J))}function ge(){g.value=!g.value,g.value&&(ie(),N(J))}l(()=>{g.value&&N(J)});function _e(e){h.value=e}function ve(e){d(`log-click`,e)}let ye=j(null),X=j(!1),be=te(),{openWithContext:xe}=T(),Ce=``;function we(){let e=window.getSelection();return e&&e.toString().trim()?e.toString().trim():``}function Te(){return W.value.map(e=>e._type===`card`?e.body.map(e=>`[${e.level}] ${e.message}`).join(`
|
|
2
2
|
`):`[${e.level}] ${e.message}`).join(`
|
|
3
3
|
`)}function Ee(){Ce=we(),X.value=!0}function De(e,t,n){X.value=!1,ye.value?.showScenarioDialog(e,void 0,t,n??void 0)}async function Oe(e,t){X.value=!1,await Ae(e===`keep`?void 0:e,t??void 0)}function ke(){let e=Ce||Te();return u.serviceLabel?`Service: ${u.serviceLabel}\n\n${e}`:e}async function Ae(e,t){let n=ke();n.trim()&&(await be.createConversation({runner:e,providerId:t}),xe({text:n,label:f(`logViewer.logsContext`),icon:`pi-list`}))}async function je(e,t,n,r){let i=ke(),a=t||i,o=await be.createConversation({scenarioId:e,scenarioInput:a});if(a&&o){let t=n!==`keep`||r.trim()?{...n===`keep`?{}:{runnerOverride:n},...r.trim()?{modelOverride:r.trim()}:{}}:void 0;be.startScenarioRun(o.id,e,a,void 0,t)}xe({text:i,label:f(`logViewer.logsContext`),icon:`pi-list`})}function Me(e){return e._type===`card`?e.body[0]?.timestamp??``:e.timestamp}function Ne(e){if(e===0)return!0;let t=W.value[e-1],n=W.value[e];return new Date(Me(n)).getTime()-new Date(Me(t)).getTime()>Nt}function Pe(e){return new Date(e).toLocaleString()}return(e,s)=>(r(),k(`div`,_t,[P(`div`,vt,[C(Ve,{"model-value":h.value,"onUpdate:modelValue":_e},null,8,[`model-value`]),P(`div`,yt,[!S.value&&G.value>0?(r(),V(i(o),{key:0,icon:b.value?`pi pi-eye`:`pi pi-eye-slash`,severity:b.value?`warn`:`secondary`,text:``,rounded:``,size:`small`,"aria-label":b.value?i(f)(`logViewer.showingHidden`):i(f)(`logViewer.hiddenFiltered`),title:i(f)(`logViewer.hiddenLogsToggle`,{n:G.value}),onClick:s[0]||=e=>b.value=!b.value},null,8,[`icon`,`severity`,`aria-label`,`title`])):O(``,!0),P(`span`,bt,[A(M(S.value?u.logs.length:W.value.length)+` / `,1),ne(P(`select`,{"onUpdate:modelValue":s[1]||=e=>m.value=e,class:`log-viewer__limit-select`,title:i(f)(`logViewer.maxLines`)},[(r(),k(w,null,c(p,e=>P(`option`,{key:e,value:e},M(e),9,St)),64))],8,xt),[[t,m.value,void 0,{number:!0}]])]),u.showStats&&fe.value!==null?(r(),k(`span`,{key:1,class:`log-viewer__stats`,title:i(f)(`logViewer.timeSpan`)},`⏱ `+M(fe.value),9,Ct)):O(``,!0),u.showStats&&u.receivedPerSec!==void 0?(r(),k(`span`,{key:2,class:`log-viewer__stats`,title:i(f)(`logViewer.throughput`)},`↓`+M(u.receivedPerSec)+`/s · ⬡`+M(u.flushedPerSec)+`/s`,9,wt)):O(``,!0),C(i(o),{icon:S.value?`pi pi-code`:`pi pi-align-left`,severity:S.value?`warn`:`secondary`,text:``,rounded:``,size:`small`,"aria-label":S.value?i(f)(`logViewer.simpleModeOn`):i(f)(`logViewer.simpleModeOff`),title:i(f)(`logViewer.toggleSimple`),onClick:s[2]||=e=>S.value=!S.value},null,8,[`icon`,`severity`,`aria-label`,`title`]),C(i(o),{icon:`pi pi-microchip-ai`,severity:`secondary`,text:``,rounded:``,size:`small`,"aria-label":i(f)(`logViewer.sendToAi`),title:i(f)(`logViewer.sendToAiTitle`),onClick:Ee},null,8,[`aria-label`,`title`]),P(`div`,Tt,[C(i(o),{icon:g.value?`pi pi-pause`:`pi pi-arrow-down`,severity:g.value?`success`:`secondary`,text:``,rounded:``,size:`small`,"aria-label":g.value?i(f)(`logViewer.autoScrollOn`):i(f)(`logViewer.autoScrollOff`),title:g.value?i(f)(`logViewer.live`):i(f)(`logViewer.paused`),onClick:ge},null,8,[`icon`,`severity`,`aria-label`,`title`]),!g.value&&F.value>0?(r(),k(`span`,{key:0,class:`log-viewer__waiting-badge`,title:i(f)(`logViewer.waitingLogs`,{n:F.value})},M(F.value>999?`999+`:F.value),9,Et)):O(``,!0)])])]),a.loading&&u.logs.length===0?(r(),k(`div`,Dt,[C(i(n),{style:{width:`2rem`,height:`2rem`}}),P(`span`,null,M(i(f)(`logViewer.loading`)),1)])):W.value.length===0?(r(),k(`div`,Ot,M(i(f)(`logViewer.empty`)),1)):S.value?(r(),V(i(gt),{key:2,ref_key:`listRef`,ref:v,data:u.logs,class:`log-viewer__scroll`,onScroll:he},{default:L(({item:e})=>[P(`span`,kt,M(e.raw),1)]),_:1},8,[`data`])):(r(),V(i(gt),{key:3,ref_key:`listRef`,ref:v,data:W.value,class:`log-viewer__scroll`,onScroll:he},{default:L(({item:e,index:t})=>[Ne(t)?(r(),k(`div`,At,[s[4]||=P(`span`,{class:`log-viewer__time-separator-line`},null,-1),P(`span`,jt,M(Pe(Me(e))),1),s[5]||=P(`span`,{class:`log-viewer__time-separator-line`},null,-1)])):O(``,!0),e._type===`card`?(r(),V(Y,{key:1,icon:`🐋`,title:e.header,color:`#1d4ed8`,"default-collapsed":e.defaultCollapsed,"last-line":e.body.length>0?e.body[e.body.length-1].message:void 0},{default:L(()=>[(r(!0),k(w,null,c(e.body,e=>(r(),V(Se,{key:e.id,log:e,onClick:ve},null,8,[`log`]))),128))]),_:2},1032,[`title`,`default-collapsed`,`last-line`])):(r(),V(Se,{key:2,log:e,onClick:ve},null,8,[`log`]))]),_:1},8,[`data`])),C(i(y),{visible:X.value,header:i(f)(`kanban.board.launchAiDialog.header`),modal:!0,style:{width:`700px`,maxHeight:`80vh`},breakpoints:{"800px":`95vw`},"onUpdate:visible":s[3]||=e=>{e||(X.value=!1)},pt:{content:{style:`overflow-y:auto`}}},{default:L(()=>[C(x,{compact:``,onSelectScenario:De,onSkip:Oe})]),_:1},8,[`visible`,`header`]),C(D,{ref_key:`aiModalsRef`,ref:ye,onConfirmScenarioStart:je},null,512)]))}}),[[`__scopeId`,`data-v-12b34550`]]);export{Pt as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{Bi as e,Ca as t,Cn as n,Dn as r,Gn as i,Yn as a,_i as o,a as s,ai as c,di as l,fi as u,ha as d,ui as f,yi as p}from"./index-
|
|
1
|
+
import{Bi as e,Ca as t,Cn as n,Dn as r,Gn as i,Yn as a,_i as o,a as s,ai as c,di as l,fi as u,ha as d,ui as f,yi as p}from"./index-D5xJxOo2.js";var m={class:`process-controls`},h=n(p({__name:`ProcessControls`,props:{agentId:{},processId:{},state:{}},emits:[`action`],setup(n,{emit:p}){let h=n,g=p,_=i(),v=s(),{t:y}=a(),b=d(null),x=e=>e===`stopped`||e===`errored`,S=e=>e===`running`||e===`starting`,C=e=>e===`running`;async function w(){b.value=`start`;try{await v.start(h.agentId,h.processId)}catch(e){_.add({severity:`error`,summary:y(`processControls.startFailed`),detail:e.message??y(`processControls.startServiceFailed`),life:5e3})}finally{b.value=null,g(`action`,`start`)}}async function T(){b.value=`stop`;try{await v.stop(h.agentId,h.processId)}catch(e){_.add({severity:`error`,summary:y(`processControls.stopFailed`),detail:e.message??y(`processControls.stopServiceFailed`),life:5e3})}finally{b.value=null,g(`action`,`stop`)}}async function E(){b.value=`restart`;try{await v.restart(h.agentId,h.processId)}catch(e){_.add({severity:`error`,summary:y(`processControls.restartFailed`),detail:e.message??y(`processControls.restartServiceFailed`),life:5e3})}finally{b.value=null,g(`action`,`restart`)}}return(n,i)=>(e(),u(`div`,m,[x(h.state)?(e(),f(t(r),{key:0,icon:`pi pi-play`,label:t(y)(`actions.start`),severity:`success`,size:`small`,"data-testid":`process-start-btn`,disabled:b.value!==null,loading:b.value===`start`,onClick:w},null,8,[`label`,`disabled`,`loading`])):l(``,!0),S(h.state)?(e(),u(c,{key:1},[o(t(r),{icon:`pi pi-stop`,label:t(y)(`actions.stop`),severity:`danger`,size:`small`,disabled:b.value!==null,loading:b.value===`stop`,onClick:T},null,8,[`label`,`disabled`,`loading`]),C(h.state)?(e(),f(t(r),{key:0,icon:`pi pi-refresh`,label:t(y)(`actions.restart`),severity:`warn`,size:`small`,disabled:b.value!==null,loading:b.value===`restart`,onClick:E},null,8,[`label`,`disabled`,`loading`])):l(``,!0)],64)):l(``,!0)]))}}),[[`__scopeId`,`data-v-ba4ca59c`]]);export{h as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{A as e,Bi as t,Bn as ee,Ca as n,Cn as r,Dn as i,H as te,Ii as ne,Ri as re,Yn as ie,_i as a,ai as ae,ci as o,di as s,fi as c,ha as l,hn as u,ka as d,li as f,yi as p}from"./index-
|
|
1
|
+
import{A as e,Bi as t,Bn as ee,Ca as n,Cn as r,Dn as i,H as te,Ii as ne,Ri as re,Yn as ie,_i as a,ai as ae,ci as o,di as s,fi as c,ha as l,hn as u,ka as d,li as f,yi as p}from"./index-D5xJxOo2.js";import{t as oe}from"./tag-Dv5CaUPa.js";import{t as m}from"./ProcessControls-Cya4eb3d.js";import{t as h}from"./ProcessMetrics-CxRgbaUS.js";import{t as g}from"./LogViewer-DBVkaZnm.js";var _={class:`process-detail`},se={key:0,class:`process-detail__loading`},ce={key:1,class:`process-detail__error`},le={class:`process-detail__header`},ue={class:`process-detail__header-left`},de={class:`process-detail__title`},v={class:`process-detail__id`},y={key:0,class:`process-detail__metrics`},b={class:`section-title`},x={class:`process-detail__info`},S={class:`info-grid`},C={key:0,class:`info-item`},w={class:`info-label`},T={class:`info-value`},E={key:1,class:`info-item`},D={class:`info-label`},O={class:`info-value`},k={class:`info-item`},A={class:`info-label`},j={class:`info-value`},M={key:2,class:`info-item`},N={class:`info-label`},P={class:`info-value`},F={key:3,class:`info-item`},I={class:`info-label`},fe={class:`info-value`},L={class:`process-detail__logs`},R={class:`section-title`},z={class:`process-detail__log-container`},B=r(p({__name:`ProcessDetailPage`,props:{agentId:{},processId:{}},setup(r){let p=r,B=ee(),{t:V}=ie(),pe=te(),me=o(()=>H.value?.agentId?pe.agents.find(e=>e.config.id===H.value.agentId)?.config.name??H.value.agentId:null),H=l(null),U=l([]),W=l(null),G=l(!0),K=l(!0),q=l(null),J=null,Y=null,X=null,Z={running:{severity:`success`,icon:`pi pi-check-circle`},stopped:{severity:`secondary`,icon:`pi pi-stop-circle`},errored:{severity:`danger`,icon:`pi pi-times-circle`},starting:{severity:`warn`,icon:`pi pi-spin pi-spinner`}},Q=o(()=>Z[H.value?.state??`stopped`]??Z.stopped);async function $(){try{H.value=await u.process.get.query({agentId:p.agentId,id:p.processId})}catch(e){q.value=e instanceof Error?e.message:`Failed to load process`}}async function he(){K.value=!0;try{U.value=await u.process.logs.query({agentId:p.agentId,processId:p.processId})}catch{}finally{K.value=!1}}async function ge(){try{W.value=await u.process.metrics.query({agentId:p.agentId,processId:p.processId})}catch{}}function _e(){let e=u.process.onLog.subscribe({agentId:p.agentId,processId:p.processId},{onData(e){U.value=[...U.value,e],U.value.length>1e4&&(U.value=U.value.slice(U.value.length-1e4))}});J=()=>e.unsubscribe()}function ve(){let e=u.process.onStatus.subscribe({agentId:p.agentId,processId:p.processId},{onData(e){H.value=e}});Y=()=>e.unsubscribe()}function ye(){let e=u.process.onMetrics.subscribe({agentId:p.agentId,processId:p.processId},{onData(e){W.value=e}});X=()=>e.unsubscribe()}function be(){$()}return ne(async()=>{G.value=!0,await Promise.all([$(),he(),ge()]),G.value=!1,_e(),ve(),ye()}),re(()=>{J?.(),Y?.(),X?.()}),(ee,r)=>(t(),c(`div`,_,[G.value?(t(),c(`div`,se,[a(n(e),{style:{width:`3rem`,height:`3rem`}}),f(`span`,null,d(n(V)(`processDetail.loading`)),1)])):q.value?(t(),c(`div`,ce,[r[2]||=f(`i`,{class:`pi pi-exclamation-triangle`,style:{"font-size":`2rem`,color:`var(--p-red-500)`}},null,-1),f(`p`,null,d(q.value),1),a(n(i),{label:n(V)(`processDetail.goBack`),icon:`pi pi-arrow-left`,severity:`secondary`,onClick:r[0]||=e=>n(B).back()},null,8,[`label`])])):H.value?(t(),c(ae,{key:2},[f(`div`,le,[f(`div`,ue,[a(n(i),{icon:`pi pi-arrow-left`,text:``,rounded:``,severity:`secondary`,"aria-label":n(V)(`processDetail.goBack`),onClick:r[1]||=e=>n(B).back()},null,8,[`aria-label`]),f(`div`,de,[f(`h1`,null,d(H.value.serviceId),1),f(`span`,v,d(H.value.id),1)]),a(n(oe),{value:H.value.state,severity:Q.value.severity,icon:Q.value.icon},null,8,[`value`,`severity`,`icon`])]),a(m,{"agent-id":p.agentId,"process-id":p.processId,state:H.value.state,onAction:be},null,8,[`agent-id`,`process-id`,`state`])]),W.value?(t(),c(`section`,y,[f(`h2`,b,d(n(V)(`processDetail.metrics`)),1),a(h,{cpu:W.value.cpu,memory:W.value.memory},null,8,[`cpu`,`memory`])])):s(``,!0),f(`section`,x,[f(`div`,S,[H.value.pid?(t(),c(`div`,C,[f(`span`,w,d(n(V)(`processDetail.pid`)),1),f(`span`,T,d(H.value.pid),1)])):s(``,!0),H.value.agentId?(t(),c(`div`,E,[f(`span`,D,d(n(V)(`processDetail.agent`)),1),f(`span`,O,d(me.value),1)])):s(``,!0),f(`div`,k,[f(`span`,A,d(n(V)(`processDetail.restarts`)),1),f(`span`,j,d(H.value.restartCount),1)]),H.value.startedAt?(t(),c(`div`,M,[f(`span`,N,d(n(V)(`processDetail.started`)),1),f(`span`,P,d(new Date(H.value.startedAt).toLocaleString()),1)])):s(``,!0),H.value.exitCode==null?s(``,!0):(t(),c(`div`,F,[f(`span`,I,d(n(V)(`processDetail.exitCode`)),1),f(`span`,fe,d(H.value.exitCode),1)]))])]),f(`section`,L,[f(`h2`,R,d(n(V)(`processDetail.logs`)),1),f(`div`,z,[a(g,{logs:U.value,loading:K.value,"service-label":H.value?.serviceId},null,8,[`logs`,`loading`,`service-label`])])])],64)):s(``,!0)]))}}),[[`__scopeId`,`data-v-0b67eba4`]]);export{B as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{Bi as e,Ca as t,Cn as n,F as r,Oa as i,Yn as a,_i as o,ci as s,fi as c,ka as l,li as u,yi as d}from"./index-
|
|
1
|
+
import{Bi as e,Ca as t,Cn as n,F as r,Oa as i,Yn as a,_i as o,ci as s,fi as c,ka as l,li as u,yi as d}from"./index-D5xJxOo2.js";var f={class:`process-metrics`},p={class:`metric-card`},m={class:`metric-card__header`},h={class:`metric-card__label`},g={class:`metric-card__value`},_={class:`metric-card`},v={class:`metric-card__header`},y={class:`metric-card__label`},b={class:`metric-card__value`},x={class:`metric-card__sub`},S=n(d({__name:`ProcessMetrics`,props:{cpu:{},memory:{}},setup(n){let d=n,{t:S}=a();function C(e){return e<1024?`${e} B`:e<1024*1024?`${(e/1024).toFixed(1)} KB`:e<1024*1024*1024?`${(e/(1024*1024)).toFixed(1)} MB`:`${(e/(1024*1024*1024)).toFixed(2)} GB`}let w=s(()=>Math.min(Math.round(d.cpu*100)/100,100)),T=s(()=>C(d.memory)),E=s(()=>d.cpu>=80?`#ef4444`:d.cpu>=50?`#f59e0b`:`#22c55e`);return(n,a)=>(e(),c(`div`,f,[u(`div`,p,[u(`div`,m,[a[0]||=u(`i`,{class:`pi pi-microchip`},null,-1),u(`span`,h,l(t(S)(`processMetrics.cpu`)),1)]),u(`div`,g,l(w.value)+`%`,1),o(t(r),{value:w.value,"show-value":!1,class:`metric-card__bar`,style:i({"--p-progressbar-value-background":E.value})},null,8,[`value`,`style`])]),u(`div`,_,[u(`div`,v,[a[1]||=u(`i`,{class:`pi pi-database`},null,-1),u(`span`,y,l(t(S)(`processMetrics.memory`)),1)]),u(`div`,b,l(T.value),1),u(`div`,x,l(t(S)(`processMetrics.bytes`,{count:d.memory.toLocaleString()})),1)])]))}}),[[`__scopeId`,`data-v-28e6b1ac`]]);export{S as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{$i as e,A as t,Bi as n,Bn as r,Ca as i,Cn as a,Dn as o,Gi as ee,Gn as te,H as ne,Ii as re,Ln as ie,Tn as ae,W as oe,Wn as se,X as ce,Yn as le,Z as ue,_i as s,a as de,ai as c,ci as l,di as u,fi as d,gi as f,ha as p,hn as m,ia as h,it as fe,ka as g,li as _,ni as v,nt as pe,q as y,ra as b,rt as x,s as me,ui as S,yi as C,zn as he}from"./index-DtgzVYQA.js";import{t as ge}from"./project.store-IkiJVnHi.js";import{t as w}from"./tag-Bg6HzaCD.js";import{t as _e}from"./EnvironmentSelector-BLJiz2gj.js";import{n as ve,t as T}from"./column-aK2I8PaJ.js";import{t as ye}from"./card-CCBkP2P8.js";var be={class:`project-detail-page`},xe={key:0,class:`loading-container`},Se={key:1,class:`error-container`},Ce={class:`page-header`},we={class:`page-title`},Te={class:`env-selector-bar`,"data-testid":`env-selector`},Ee={class:`info-grid`},De={class:`info-field`},E={class:`info-label`},Oe={key:0,class:`inline-edit`},ke={class:`info-field`},Ae={class:`info-label`},je={key:0,class:`inline-edit`},Me={class:`section`},Ne={class:`section-header`},Pe={class:`section-actions`},Fe={key:1,class:`text-muted`},Ie={class:`table-actions`},Le={key:1,class:`empty-section`},Re={class:`form-group`},D=a(C({__name:`ProjectDetailPage`,props:{projectId:{}},setup(a){let C=a,{t:D}=le(),O=r();he();let k=te(),A=se(),j=ge(),M=pe(),ze=ne(),N=de(),Be=me(),Ve=fe(),P=p(null),F=p(!0),I=p(!1),L=p(!1),R=p(!1),z=p(``),B=p(``),V=p({}),H=p(``),U=p(!1),W=p(``),G=p(!1),K=l(()=>P.value?P.value.serviceIds.map(e=>M.services.find(t=>t.id===e)).filter(e=>!!e):[]),He=l(()=>{let e=H.value.trim().toLowerCase();return e?K.value.filter(t=>t.name.toLowerCase().includes(e)||t.runner?.toLowerCase().includes(e)||t.command?.toLowerCase().includes(e)):K.value}),Ue=l(()=>P.value?.activeEnvironmentId??null),q=l(()=>{if(!P.value)return[];let e=new Set(P.value.serviceIds);return M.services.filter(t=>!e.has(t.id))});function J(e){let t=N.getByService(e);return t.length>0?t[0]:null}function We(e){return e===`stopped`||e===`errored`}function Ge(e){return e===`running`||e===`starting`}function Ke(e){return e===`running`}async function qe(e){V.value={...V.value,[e.id]:`start`};try{await N.start(e.agentId,e.id)}catch(e){k.add({severity:`error`,summary:D(`projectDetail.startFailed`),detail:x(e),life:5e3})}finally{let{[e.id]:t,...n}=V.value;V.value=n}}async function Je(e){V.value={...V.value,[e.id]:`stop`};try{await N.stop(e.agentId,e.id)}catch(e){k.add({severity:`error`,summary:D(`projectDetail.stopFailed`),detail:x(e),life:5e3})}finally{let{[e.id]:t,...n}=V.value;V.value=n}}async function Y(e){V.value={...V.value,[e.id]:`restart`};try{await N.restart(e.agentId,e.id)}catch(e){k.add({severity:`error`,summary:D(`projectDetail.restartFailed`),detail:x(e),life:5e3})}finally{let{[e.id]:t,...n}=V.value;V.value=n}}async function X(){F.value=!0;try{P.value=await m.project.get.query({id:C.projectId}),Be.setActiveProject(C.projectId),await Ve.fetchAll(C.projectId)}catch(e){k.add({severity:`error`,summary:`Error`,detail:x(e)??D(`projectDetail.failedToLoad`),life:5e3}),P.value=null}finally{F.value=!1}}function Ye(){z.value=P.value?.name??``,L.value=!0}function Xe(){B.value=P.value?.description??``,R.value=!0}async function Z(){if(!(!P.value||!z.value.trim())){I.value=!0;try{P.value=await m.project.update.mutate({id:P.value.id,name:z.value.trim()}),L.value=!1,k.add({severity:`success`,summary:D(`projectDetail.nameUpdated`),life:2e3})}catch(e){k.add({severity:`error`,summary:`Error`,detail:x(e),life:5e3})}finally{I.value=!1}}}async function Q(){if(P.value){I.value=!0;try{P.value=await m.project.update.mutate({id:P.value.id,description:B.value.trim()}),R.value=!1,k.add({severity:`success`,summary:D(`projectDetail.descriptionUpdated`),life:2e3})}catch(e){k.add({severity:`error`,summary:`Error`,detail:x(e),life:5e3})}finally{I.value=!1}}}async function Ze(e){P.value&&(K.value.filter(e=>!!e.id).length>0?A.require({message:D(`projectDetail.switchEnvMsg`),header:D(`projectDetail.switchEnvTitle`),icon:`pi pi-exclamation-triangle`,rejectLabel:D(`projectDetail.switchEnvCancel`),acceptLabel:D(`projectDetail.switchEnvConfirm`),accept:()=>$(e)}):await $(e))}async function $(e){if(P.value){I.value=!0;try{let t=await j.setActiveEnvironment(P.value.id,e);t&&(P.value=t),k.add({severity:`success`,summary:D(`projectDetail.envSwitched`),detail:D(`projectDetail.envSwitchedDesc`),life:3e3})}catch(e){console.error(`Failed to switch environment:`,e),k.add({severity:`error`,summary:`Error`,detail:x(e)??`Failed to switch environment`,life:5e3})}finally{I.value=!1}}}async function Qe(){if(!(!P.value||!W.value)){G.value=!0;try{P.value=await m.project.addService.mutate({projectId:P.value.id,serviceId:W.value}),U.value=!1,W.value=``,k.add({severity:`success`,summary:D(`projectDetail.serviceAdded`),life:2e3})}catch(e){k.add({severity:`error`,summary:`Error`,detail:x(e),life:5e3})}finally{G.value=!1}}}function $e(e,t){A.require({message:`Remove "${t}" from this project?`,header:D(`projectDetail.removeServiceTitle`),icon:`pi pi-exclamation-triangle`,rejectLabel:D(`projectDetail.removeServiceCancel`),acceptLabel:D(`projectDetail.removeServiceConfirm`),acceptClass:`p-button-danger`,accept:()=>et(e)})}async function et(e){if(P.value)try{P.value=await m.project.removeService.mutate({projectId:P.value.id,serviceId:e}),k.add({severity:`success`,summary:D(`projectDetail.serviceRemoved`),life:2e3})}catch(e){k.add({severity:`error`,summary:`Error`,detail:x(e),life:5e3})}}function tt(){P.value&&A.require({message:`Are you sure you want to delete "${P.value.name}"? This action cannot be undone.`,header:D(`projectDetail.deleteProjectTitle`),icon:`pi pi-trash`,rejectLabel:D(`projectDetail.deleteProjectCancel`),acceptLabel:D(`projectDetail.deleteProjectConfirm`),acceptClass:`p-button-danger`,accept:nt})}async function nt(){if(P.value)try{await m.project.delete.mutate({id:P.value.id}),k.add({severity:`success`,summary:D(`projectDetail.projectDeleted`),life:2e3}),await j.fetchAll(),O.push({name:`projects`})}catch(e){k.add({severity:`error`,summary:`Error`,detail:x(e),life:5e3})}}return re(async()=>{await Promise.all([X(),M.fetchAll(),ze.fetchAll(),N.fetchAll()])}),e(()=>C.projectId,()=>{X()}),(e,r)=>{let a=ee(`tooltip`);return n(),d(`div`,be,[F.value?(n(),d(`div`,xe,[s(i(t))])):P.value?(n(),d(c,{key:2},[_(`div`,Ce,[s(i(o),{icon:`pi pi-arrow-left`,severity:`secondary`,text:``,rounded:``,onClick:r[1]||=e=>i(O).push({name:`projects`})}),_(`h1`,we,g(i(D)(`projectDetail.title`)),1),s(i(o),{label:i(D)(`projectDetail.deleteProjectTitle`),icon:`pi pi-trash`,severity:`danger`,text:``,onClick:tt},null,8,[`label`])]),_(`div`,Te,[s(_e,{"model-value":Ue.value,"onUpdate:modelValue":Ze},null,8,[`model-value`]),s(i(o),{label:i(D)(`projectDetail.manageEnvironments`),icon:`pi pi-cog`,severity:`secondary`,outlined:``,onClick:r[2]||=e=>i(O).push({name:`environments`,params:{projectId:P.value.id}})},null,8,[`label`])]),s(i(ye),{class:`info-card`},{content:b(()=>[_(`div`,Ee,[_(`div`,De,[_(`span`,E,g(i(D)(`common.name`)),1),L.value?(n(),d(`div`,Oe,[s(i(y),{modelValue:z.value,"onUpdate:modelValue":r[3]||=e=>z.value=e,autofocus:``,class:`edit-input`,onKeyup:[v(Z,[`enter`]),r[4]||=v(e=>L.value=!1,[`escape`])]},null,8,[`modelValue`]),s(i(o),{icon:`pi pi-check`,text:``,rounded:``,size:`small`,loading:I.value,onClick:Z},null,8,[`loading`]),s(i(o),{icon:`pi pi-times`,text:``,rounded:``,size:`small`,severity:`secondary`,onClick:r[5]||=e=>L.value=!1})])):(n(),d(`div`,{key:1,class:`info-value clickable`,onClick:Ye},[f(g(P.value.name)+` `,1),r[16]||=_(`i`,{class:`pi pi-pencil edit-icon`},null,-1)]))]),_(`div`,ke,[_(`span`,Ae,g(i(D)(`common.description`)),1),R.value?(n(),d(`div`,je,[s(i(y),{modelValue:B.value,"onUpdate:modelValue":r[6]||=e=>B.value=e,autofocus:``,class:`edit-input`,onKeyup:[v(Q,[`enter`]),r[7]||=v(e=>R.value=!1,[`escape`])]},null,8,[`modelValue`]),s(i(o),{icon:`pi pi-check`,text:``,rounded:``,size:`small`,loading:I.value,onClick:Q},null,8,[`loading`]),s(i(o),{icon:`pi pi-times`,text:``,rounded:``,size:`small`,severity:`secondary`,onClick:r[8]||=e=>R.value=!1})])):(n(),d(`div`,{key:1,class:`info-value clickable`,onClick:Xe},[f(g(P.value.description||i(D)(`projectDetail.noDescription`))+` `,1),r[17]||=_(`i`,{class:`pi pi-pencil edit-icon`},null,-1)]))])])]),_:1}),_(`div`,Me,[_(`div`,Ne,[_(`h2`,null,g(i(D)(`projectDetail.services`)),1),_(`div`,Pe,[s(i(ue),null,{default:b(()=>[s(i(ce),{class:`pi pi-search`}),s(i(y),{modelValue:H.value,"onUpdate:modelValue":r[9]||=e=>H.value=e,placeholder:i(D)(`projectDetail.searchServices`),size:`small`},null,8,[`modelValue`,`placeholder`])]),_:1}),s(i(o),{label:i(D)(`projectDetail.addExisting`),icon:`pi pi-plus`,severity:`secondary`,size:`small`,disabled:q.value.length===0,onClick:r[10]||=e=>U.value=!0},null,8,[`label`,`disabled`]),s(i(o),{label:i(D)(`projectDetail.createNew`),icon:`pi pi-plus-circle`,size:`small`,onClick:r[11]||=e=>i(O).push({name:`service-create`,query:{projectId:P.value.id}})},null,8,[`label`])])]),K.value.length>0?(n(),S(i(ve),{key:0,value:He.value,stripedRows:``,size:`small`,paginator:!0,rows:10,"rows-per-page-options":[5,10,20],class:`services-table`},{default:b(()=>[s(i(T),{field:`name`,header:i(D)(`projectDetail.nameColumn`)},{body:b(({data:e})=>[s(i(ie),{to:{name:`service-detail`,params:{id:e.id}},class:`service-name`,"data-testid":`service-row-link`},{default:b(()=>[f(g(e.name),1)]),_:2},1032,[`to`])]),_:1},8,[`header`]),s(i(T),{field:`runner`,header:i(D)(`projectDetail.runnerColumn`),style:{width:`80px`}},{body:b(({data:e})=>[s(i(w),{value:e.runner,severity:e.runner===`docker`?`warn`:`info`},null,8,[`value`,`severity`])]),_:1},8,[`header`]),s(i(T),{field:`ports`,header:i(D)(`projectDetail.portsColumn`),style:{width:`100px`}},{body:b(({data:e})=>[f(g(e.ports?.length?e.ports.join(`, `):`-`),1)]),_:1},8,[`header`]),s(i(T),{header:i(D)(`common.status`),style:{width:`70px`}},{body:b(({data:e})=>[J(e.id)?(n(),S(i(w),{key:0,value:J(e.id).state,severity:J(e.id).state===`running`?`success`:J(e.id).state===`errored`?`danger`:`secondary`},null,8,[`value`,`severity`])):(n(),d(`span`,Fe,`-`))]),_:1},8,[`header`]),s(i(T),{header:i(D)(`projectDetail.actionsColumn`),style:{width:`130px`}},{body:b(({data:e})=>[_(`div`,Ie,[!J(e.id)||We(J(e.id).state)?h((n(),S(i(o),{key:0,icon:`pi pi-play`,severity:`success`,text:``,rounded:``,size:`small`,disabled:!!V.value[e.id],loading:V.value[e.id]===`start`,onClick:t=>qe(e)},null,8,[`disabled`,`loading`,`onClick`])),[[a,i(D)(`actions.start`),void 0,{top:!0}]]):u(``,!0),J(e.id)&&Ge(J(e.id).state)?(n(),d(c,{key:1},[h(s(i(o),{icon:`pi pi-stop`,severity:`danger`,text:``,rounded:``,size:`small`,disabled:!!V.value[e.id],loading:V.value[e.id]===`stop`,onClick:t=>Je(e)},null,8,[`disabled`,`loading`,`onClick`]),[[a,i(D)(`actions.stop`),void 0,{top:!0}]]),Ke(J(e.id).state)?h((n(),S(i(o),{key:0,icon:`pi pi-refresh`,severity:`warn`,text:``,rounded:``,size:`small`,disabled:!!V.value[e.id],loading:V.value[e.id]===`restart`,onClick:t=>Y(e)},null,8,[`disabled`,`loading`,`onClick`])),[[a,i(D)(`actions.restart`),void 0,{top:!0}]]):u(``,!0)],64)):u(``,!0),h(s(i(o),{icon:`pi pi-minus-circle`,severity:`secondary`,text:``,rounded:``,size:`small`,onClick:t=>$e(e.id,e.name)},null,8,[`onClick`]),[[a,i(D)(`projectDetail.removeFromProject`),void 0,{top:!0}]])])]),_:1},8,[`header`])]),_:1},8,[`value`])):(n(),d(`div`,Le,[_(`p`,null,g(i(D)(`projectDetail.noServices`)),1)]))]),s(i(ae),{visible:U.value,"onUpdate:visible":r[14]||=e=>U.value=e,header:i(D)(`projectDetail.addExistingService`),style:{width:`450px`},modal:``,closable:!G.value},{footer:b(()=>[s(i(o),{label:i(D)(`actions.cancel`),severity:`secondary`,text:``,disabled:G.value,onClick:r[13]||=e=>U.value=!1},null,8,[`label`,`disabled`]),s(i(o),{label:i(D)(`actions.add`),icon:`pi pi-plus`,loading:G.value,disabled:!W.value,onClick:Qe},null,8,[`label`,`loading`,`disabled`])]),default:b(()=>[_(`div`,Re,[_(`label`,null,g(i(D)(`projectDetail.selectService`)),1),s(i(oe),{modelValue:W.value,"onUpdate:modelValue":r[12]||=e=>W.value=e,options:q.value,optionLabel:`name`,optionValue:`id`,placeholder:i(D)(`projectDetail.chooseServicePlaceholder`),class:`w-full`},null,8,[`modelValue`,`options`,`placeholder`])])]),_:1},8,[`visible`,`header`,`closable`])],64)):(n(),d(`div`,Se,[r[15]||=_(`i`,{class:`pi pi-exclamation-triangle`,style:{"font-size":`2rem`}},null,-1),_(`p`,null,g(i(D)(`projectDetail.notFound`)),1),s(i(o),{label:i(D)(`projectDetail.backToProjects`),icon:`pi pi-arrow-left`,onClick:r[0]||=e=>i(O).push({name:`projects`})},null,8,[`label`])]))])}}}),[[`__scopeId`,`data-v-750c4854`]]);export{D as default};
|
|
1
|
+
import{$i as e,A as t,Bi as n,Bn as r,Ca as i,Cn as a,Dn as o,Gi as ee,Gn as te,H as ne,Ii as re,Ln as ie,Tn as ae,W as oe,Wn as se,X as ce,Yn as le,Z as ue,_i as s,a as de,ai as c,ci as l,di as u,fi as d,gi as f,ha as p,hn as m,ia as h,it as fe,ka as g,li as _,ni as v,nt as pe,q as y,ra as b,rt as x,s as me,ui as S,yi as C,zn as he}from"./index-D5xJxOo2.js";import{t as ge}from"./project.store-emr8mjg8.js";import{t as w}from"./tag-Dv5CaUPa.js";import{t as _e}from"./EnvironmentSelector-BZn_taec.js";import{n as ve,t as T}from"./column-ChvIrUdH.js";import{t as ye}from"./card-D5_gGGD-.js";var be={class:`project-detail-page`},xe={key:0,class:`loading-container`},Se={key:1,class:`error-container`},Ce={class:`page-header`},we={class:`page-title`},Te={class:`env-selector-bar`,"data-testid":`env-selector`},Ee={class:`info-grid`},De={class:`info-field`},E={class:`info-label`},Oe={key:0,class:`inline-edit`},ke={class:`info-field`},Ae={class:`info-label`},je={key:0,class:`inline-edit`},Me={class:`section`},Ne={class:`section-header`},Pe={class:`section-actions`},Fe={key:1,class:`text-muted`},Ie={class:`table-actions`},Le={key:1,class:`empty-section`},Re={class:`form-group`},D=a(C({__name:`ProjectDetailPage`,props:{projectId:{}},setup(a){let C=a,{t:D}=le(),O=r();he();let k=te(),A=se(),j=ge(),M=pe(),ze=ne(),N=de(),Be=me(),Ve=fe(),P=p(null),F=p(!0),I=p(!1),L=p(!1),R=p(!1),z=p(``),B=p(``),V=p({}),H=p(``),U=p(!1),W=p(``),G=p(!1),K=l(()=>P.value?P.value.serviceIds.map(e=>M.services.find(t=>t.id===e)).filter(e=>!!e):[]),He=l(()=>{let e=H.value.trim().toLowerCase();return e?K.value.filter(t=>t.name.toLowerCase().includes(e)||t.runner?.toLowerCase().includes(e)||t.command?.toLowerCase().includes(e)):K.value}),Ue=l(()=>P.value?.activeEnvironmentId??null),q=l(()=>{if(!P.value)return[];let e=new Set(P.value.serviceIds);return M.services.filter(t=>!e.has(t.id))});function J(e){let t=N.getByService(e);return t.length>0?t[0]:null}function We(e){return e===`stopped`||e===`errored`}function Ge(e){return e===`running`||e===`starting`}function Ke(e){return e===`running`}async function qe(e){V.value={...V.value,[e.id]:`start`};try{await N.start(e.agentId,e.id)}catch(e){k.add({severity:`error`,summary:D(`projectDetail.startFailed`),detail:x(e),life:5e3})}finally{let{[e.id]:t,...n}=V.value;V.value=n}}async function Je(e){V.value={...V.value,[e.id]:`stop`};try{await N.stop(e.agentId,e.id)}catch(e){k.add({severity:`error`,summary:D(`projectDetail.stopFailed`),detail:x(e),life:5e3})}finally{let{[e.id]:t,...n}=V.value;V.value=n}}async function Y(e){V.value={...V.value,[e.id]:`restart`};try{await N.restart(e.agentId,e.id)}catch(e){k.add({severity:`error`,summary:D(`projectDetail.restartFailed`),detail:x(e),life:5e3})}finally{let{[e.id]:t,...n}=V.value;V.value=n}}async function X(){F.value=!0;try{P.value=await m.project.get.query({id:C.projectId}),Be.setActiveProject(C.projectId),await Ve.fetchAll(C.projectId)}catch(e){k.add({severity:`error`,summary:`Error`,detail:x(e)??D(`projectDetail.failedToLoad`),life:5e3}),P.value=null}finally{F.value=!1}}function Ye(){z.value=P.value?.name??``,L.value=!0}function Xe(){B.value=P.value?.description??``,R.value=!0}async function Z(){if(!(!P.value||!z.value.trim())){I.value=!0;try{P.value=await m.project.update.mutate({id:P.value.id,name:z.value.trim()}),L.value=!1,k.add({severity:`success`,summary:D(`projectDetail.nameUpdated`),life:2e3})}catch(e){k.add({severity:`error`,summary:`Error`,detail:x(e),life:5e3})}finally{I.value=!1}}}async function Q(){if(P.value){I.value=!0;try{P.value=await m.project.update.mutate({id:P.value.id,description:B.value.trim()}),R.value=!1,k.add({severity:`success`,summary:D(`projectDetail.descriptionUpdated`),life:2e3})}catch(e){k.add({severity:`error`,summary:`Error`,detail:x(e),life:5e3})}finally{I.value=!1}}}async function Ze(e){P.value&&(K.value.filter(e=>!!e.id).length>0?A.require({message:D(`projectDetail.switchEnvMsg`),header:D(`projectDetail.switchEnvTitle`),icon:`pi pi-exclamation-triangle`,rejectLabel:D(`projectDetail.switchEnvCancel`),acceptLabel:D(`projectDetail.switchEnvConfirm`),accept:()=>$(e)}):await $(e))}async function $(e){if(P.value){I.value=!0;try{let t=await j.setActiveEnvironment(P.value.id,e);t&&(P.value=t),k.add({severity:`success`,summary:D(`projectDetail.envSwitched`),detail:D(`projectDetail.envSwitchedDesc`),life:3e3})}catch(e){console.error(`Failed to switch environment:`,e),k.add({severity:`error`,summary:`Error`,detail:x(e)??`Failed to switch environment`,life:5e3})}finally{I.value=!1}}}async function Qe(){if(!(!P.value||!W.value)){G.value=!0;try{P.value=await m.project.addService.mutate({projectId:P.value.id,serviceId:W.value}),U.value=!1,W.value=``,k.add({severity:`success`,summary:D(`projectDetail.serviceAdded`),life:2e3})}catch(e){k.add({severity:`error`,summary:`Error`,detail:x(e),life:5e3})}finally{G.value=!1}}}function $e(e,t){A.require({message:`Remove "${t}" from this project?`,header:D(`projectDetail.removeServiceTitle`),icon:`pi pi-exclamation-triangle`,rejectLabel:D(`projectDetail.removeServiceCancel`),acceptLabel:D(`projectDetail.removeServiceConfirm`),acceptClass:`p-button-danger`,accept:()=>et(e)})}async function et(e){if(P.value)try{P.value=await m.project.removeService.mutate({projectId:P.value.id,serviceId:e}),k.add({severity:`success`,summary:D(`projectDetail.serviceRemoved`),life:2e3})}catch(e){k.add({severity:`error`,summary:`Error`,detail:x(e),life:5e3})}}function tt(){P.value&&A.require({message:`Are you sure you want to delete "${P.value.name}"? This action cannot be undone.`,header:D(`projectDetail.deleteProjectTitle`),icon:`pi pi-trash`,rejectLabel:D(`projectDetail.deleteProjectCancel`),acceptLabel:D(`projectDetail.deleteProjectConfirm`),acceptClass:`p-button-danger`,accept:nt})}async function nt(){if(P.value)try{await m.project.delete.mutate({id:P.value.id}),k.add({severity:`success`,summary:D(`projectDetail.projectDeleted`),life:2e3}),await j.fetchAll(),O.push({name:`projects`})}catch(e){k.add({severity:`error`,summary:`Error`,detail:x(e),life:5e3})}}return re(async()=>{await Promise.all([X(),M.fetchAll(),ze.fetchAll(),N.fetchAll()])}),e(()=>C.projectId,()=>{X()}),(e,r)=>{let a=ee(`tooltip`);return n(),d(`div`,be,[F.value?(n(),d(`div`,xe,[s(i(t))])):P.value?(n(),d(c,{key:2},[_(`div`,Ce,[s(i(o),{icon:`pi pi-arrow-left`,severity:`secondary`,text:``,rounded:``,onClick:r[1]||=e=>i(O).push({name:`projects`})}),_(`h1`,we,g(i(D)(`projectDetail.title`)),1),s(i(o),{label:i(D)(`projectDetail.deleteProjectTitle`),icon:`pi pi-trash`,severity:`danger`,text:``,onClick:tt},null,8,[`label`])]),_(`div`,Te,[s(_e,{"model-value":Ue.value,"onUpdate:modelValue":Ze},null,8,[`model-value`]),s(i(o),{label:i(D)(`projectDetail.manageEnvironments`),icon:`pi pi-cog`,severity:`secondary`,outlined:``,onClick:r[2]||=e=>i(O).push({name:`environments`,params:{projectId:P.value.id}})},null,8,[`label`])]),s(i(ye),{class:`info-card`},{content:b(()=>[_(`div`,Ee,[_(`div`,De,[_(`span`,E,g(i(D)(`common.name`)),1),L.value?(n(),d(`div`,Oe,[s(i(y),{modelValue:z.value,"onUpdate:modelValue":r[3]||=e=>z.value=e,autofocus:``,class:`edit-input`,onKeyup:[v(Z,[`enter`]),r[4]||=v(e=>L.value=!1,[`escape`])]},null,8,[`modelValue`]),s(i(o),{icon:`pi pi-check`,text:``,rounded:``,size:`small`,loading:I.value,onClick:Z},null,8,[`loading`]),s(i(o),{icon:`pi pi-times`,text:``,rounded:``,size:`small`,severity:`secondary`,onClick:r[5]||=e=>L.value=!1})])):(n(),d(`div`,{key:1,class:`info-value clickable`,onClick:Ye},[f(g(P.value.name)+` `,1),r[16]||=_(`i`,{class:`pi pi-pencil edit-icon`},null,-1)]))]),_(`div`,ke,[_(`span`,Ae,g(i(D)(`common.description`)),1),R.value?(n(),d(`div`,je,[s(i(y),{modelValue:B.value,"onUpdate:modelValue":r[6]||=e=>B.value=e,autofocus:``,class:`edit-input`,onKeyup:[v(Q,[`enter`]),r[7]||=v(e=>R.value=!1,[`escape`])]},null,8,[`modelValue`]),s(i(o),{icon:`pi pi-check`,text:``,rounded:``,size:`small`,loading:I.value,onClick:Q},null,8,[`loading`]),s(i(o),{icon:`pi pi-times`,text:``,rounded:``,size:`small`,severity:`secondary`,onClick:r[8]||=e=>R.value=!1})])):(n(),d(`div`,{key:1,class:`info-value clickable`,onClick:Xe},[f(g(P.value.description||i(D)(`projectDetail.noDescription`))+` `,1),r[17]||=_(`i`,{class:`pi pi-pencil edit-icon`},null,-1)]))])])]),_:1}),_(`div`,Me,[_(`div`,Ne,[_(`h2`,null,g(i(D)(`projectDetail.services`)),1),_(`div`,Pe,[s(i(ue),null,{default:b(()=>[s(i(ce),{class:`pi pi-search`}),s(i(y),{modelValue:H.value,"onUpdate:modelValue":r[9]||=e=>H.value=e,placeholder:i(D)(`projectDetail.searchServices`),size:`small`},null,8,[`modelValue`,`placeholder`])]),_:1}),s(i(o),{label:i(D)(`projectDetail.addExisting`),icon:`pi pi-plus`,severity:`secondary`,size:`small`,disabled:q.value.length===0,onClick:r[10]||=e=>U.value=!0},null,8,[`label`,`disabled`]),s(i(o),{label:i(D)(`projectDetail.createNew`),icon:`pi pi-plus-circle`,size:`small`,onClick:r[11]||=e=>i(O).push({name:`service-create`,query:{projectId:P.value.id}})},null,8,[`label`])])]),K.value.length>0?(n(),S(i(ve),{key:0,value:He.value,stripedRows:``,size:`small`,paginator:!0,rows:10,"rows-per-page-options":[5,10,20],class:`services-table`},{default:b(()=>[s(i(T),{field:`name`,header:i(D)(`projectDetail.nameColumn`)},{body:b(({data:e})=>[s(i(ie),{to:{name:`service-detail`,params:{id:e.id}},class:`service-name`,"data-testid":`service-row-link`},{default:b(()=>[f(g(e.name),1)]),_:2},1032,[`to`])]),_:1},8,[`header`]),s(i(T),{field:`runner`,header:i(D)(`projectDetail.runnerColumn`),style:{width:`80px`}},{body:b(({data:e})=>[s(i(w),{value:e.runner,severity:e.runner===`docker`?`warn`:`info`},null,8,[`value`,`severity`])]),_:1},8,[`header`]),s(i(T),{field:`ports`,header:i(D)(`projectDetail.portsColumn`),style:{width:`100px`}},{body:b(({data:e})=>[f(g(e.ports?.length?e.ports.join(`, `):`-`),1)]),_:1},8,[`header`]),s(i(T),{header:i(D)(`common.status`),style:{width:`70px`}},{body:b(({data:e})=>[J(e.id)?(n(),S(i(w),{key:0,value:J(e.id).state,severity:J(e.id).state===`running`?`success`:J(e.id).state===`errored`?`danger`:`secondary`},null,8,[`value`,`severity`])):(n(),d(`span`,Fe,`-`))]),_:1},8,[`header`]),s(i(T),{header:i(D)(`projectDetail.actionsColumn`),style:{width:`130px`}},{body:b(({data:e})=>[_(`div`,Ie,[!J(e.id)||We(J(e.id).state)?h((n(),S(i(o),{key:0,icon:`pi pi-play`,severity:`success`,text:``,rounded:``,size:`small`,disabled:!!V.value[e.id],loading:V.value[e.id]===`start`,onClick:t=>qe(e)},null,8,[`disabled`,`loading`,`onClick`])),[[a,i(D)(`actions.start`),void 0,{top:!0}]]):u(``,!0),J(e.id)&&Ge(J(e.id).state)?(n(),d(c,{key:1},[h(s(i(o),{icon:`pi pi-stop`,severity:`danger`,text:``,rounded:``,size:`small`,disabled:!!V.value[e.id],loading:V.value[e.id]===`stop`,onClick:t=>Je(e)},null,8,[`disabled`,`loading`,`onClick`]),[[a,i(D)(`actions.stop`),void 0,{top:!0}]]),Ke(J(e.id).state)?h((n(),S(i(o),{key:0,icon:`pi pi-refresh`,severity:`warn`,text:``,rounded:``,size:`small`,disabled:!!V.value[e.id],loading:V.value[e.id]===`restart`,onClick:t=>Y(e)},null,8,[`disabled`,`loading`,`onClick`])),[[a,i(D)(`actions.restart`),void 0,{top:!0}]]):u(``,!0)],64)):u(``,!0),h(s(i(o),{icon:`pi pi-minus-circle`,severity:`secondary`,text:``,rounded:``,size:`small`,onClick:t=>$e(e.id,e.name)},null,8,[`onClick`]),[[a,i(D)(`projectDetail.removeFromProject`),void 0,{top:!0}]])])]),_:1},8,[`header`])]),_:1},8,[`value`])):(n(),d(`div`,Le,[_(`p`,null,g(i(D)(`projectDetail.noServices`)),1)]))]),s(i(ae),{visible:U.value,"onUpdate:visible":r[14]||=e=>U.value=e,header:i(D)(`projectDetail.addExistingService`),style:{width:`450px`},modal:``,closable:!G.value},{footer:b(()=>[s(i(o),{label:i(D)(`actions.cancel`),severity:`secondary`,text:``,disabled:G.value,onClick:r[13]||=e=>U.value=!1},null,8,[`label`,`disabled`]),s(i(o),{label:i(D)(`actions.add`),icon:`pi pi-plus`,loading:G.value,disabled:!W.value,onClick:Qe},null,8,[`label`,`loading`,`disabled`])]),default:b(()=>[_(`div`,Re,[_(`label`,null,g(i(D)(`projectDetail.selectService`)),1),s(i(oe),{modelValue:W.value,"onUpdate:modelValue":r[12]||=e=>W.value=e,options:q.value,optionLabel:`name`,optionValue:`id`,placeholder:i(D)(`projectDetail.chooseServicePlaceholder`),class:`w-full`},null,8,[`modelValue`,`options`,`placeholder`])])]),_:1},8,[`visible`,`header`,`closable`])],64)):(n(),d(`div`,Se,[r[15]||=_(`i`,{class:`pi pi-exclamation-triangle`,style:{"font-size":`2rem`}},null,-1),_(`p`,null,g(i(D)(`projectDetail.notFound`)),1),s(i(o),{label:i(D)(`projectDetail.backToProjects`),icon:`pi pi-arrow-left`,onClick:r[0]||=e=>i(O).push({name:`projects`})},null,8,[`label`])]))])}}}),[[`__scopeId`,`data-v-750c4854`]]);export{D as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{A as e,Bi as t,Bn as n,Ca as r,Cn as i,Dn as a,Gn as o,Hi as s,Ii as c,On as l,Tn as u,Yn as d,_i as f,ai as p,ci as m,di as h,fi as g,gi as _,ha as v,hn as ee,ka as y,li as b,ni as x,q as S,ra as C,rt as w,s as T,ui as E,yi as D}from"./index-
|
|
1
|
+
import{A as e,Bi as t,Bn as n,Ca as r,Cn as i,Dn as a,Gn as o,Hi as s,Ii as c,On as l,Tn as u,Yn as d,_i as f,ai as p,ci as m,di as h,fi as g,gi as _,ha as v,hn as ee,ka as y,li as b,ni as x,q as S,ra as C,rt as w,s as T,ui as E,yi as D}from"./index-D5xJxOo2.js";import{t as O}from"./project.store-emr8mjg8.js";import{t as k}from"./card-D5_gGGD-.js";var A={class:`card-title-row`},j={class:`card-title`},M={class:`card-description`},N={class:`card-meta`},P={class:`meta-item`},F=i(D({__name:`ProjectCard`,props:{project:{}},emits:[`click`],setup(e,{emit:n}){let i=n;function a(e,t){return!e||e.length<=t?e||``:e.slice(0,t)+`...`}return(n,o)=>(t(),E(r(k),{class:`project-card`,onClick:o[0]||=e=>i(`click`)},{title:C(()=>[b(`div`,A,[b(`span`,j,y(e.project.name),1),f(r(l),{value:e.project.serviceIds.length,severity:`info`},null,8,[`value`])])]),content:C(()=>[b(`p`,M,y(a(e.project.description??``,120)),1),b(`div`,N,[b(`span`,P,[o[1]||=b(`i`,{class:`pi pi-box`},null,-1),_(` `+y(e.project.serviceIds.length)+` service`+y(e.project.serviceIds.length===1?``:`s`),1)])])]),_:1}))}}),[[`__scopeId`,`data-v-8a0b8178`]]),I={class:`project-list-page`},L={class:`page-header`},R={class:`search-bar`},z={class:`p-input-icon-left search-input-wrapper`},B={key:0,class:`loading-container`},V={key:1,class:`error-container`},H={key:2,class:`empty-container`},U={key:0},W={key:1},G={key:3,class:`project-grid`},K={class:`form-group`},q={for:`project-name`},J={class:`form-group`},Y={for:`project-desc`},X=i(D({__name:`ProjectListPage`,setup(i){let{t:l}=d(),_=n(),D=o(),k=O(),A=T(),j=v(``),M=v(!1),N=v(!1),P=v({name:``,description:``}),X=m(()=>{let e=j.value.toLowerCase().trim();return e?k.projects.filter(t=>t.name.toLowerCase().includes(e)||(t.description??``).toLowerCase().includes(e)):k.projects});c(()=>{k.fetchAll()});function Z(e){A.setActiveProject(e.id),_.push({name:`project-detail`,params:{projectId:e.id}})}function Q(){P.value={name:``,description:``},M.value=!0}async function $(){if(P.value.name.trim()){N.value=!0;try{let e=await ee.project.create.mutate({name:P.value.name.trim(),description:P.value.description.trim()||void 0});D.add({severity:`success`,summary:l(`projectList.created`),detail:l(`projectList.createdDetail`,{name:e.name}),life:3e3}),M.value=!1,await k.fetchAll(),_.push({name:`project-detail`,params:{projectId:e.id}})}catch(e){D.add({severity:`error`,summary:l(`projectList.error`),detail:w(e)??l(`projectList.failedToCreate`),life:5e3})}finally{N.value=!1}}}return(n,i)=>(t(),g(`div`,I,[b(`div`,L,[b(`h1`,null,y(r(l)(`projectList.title`)),1),f(r(a),{label:r(l)(`projectList.newProject`),icon:`pi pi-plus`,onClick:Q},null,8,[`label`])]),b(`div`,R,[b(`span`,z,[i[6]||=b(`i`,{class:`pi pi-search`},null,-1),f(r(S),{modelValue:j.value,"onUpdate:modelValue":i[0]||=e=>j.value=e,placeholder:r(l)(`projectList.searchPlaceholder`),class:`search-input`},null,8,[`modelValue`,`placeholder`])])]),r(k).loading?(t(),g(`div`,B,[f(r(e))])):r(k).error?(t(),g(`div`,V,[i[7]||=b(`i`,{class:`pi pi-exclamation-triangle`},null,-1),b(`p`,null,y(r(k).error),1),f(r(a),{label:r(l)(`projectList.retry`),icon:`pi pi-refresh`,severity:`secondary`,onClick:i[1]||=e=>r(k).fetchAll()},null,8,[`label`])])):X.value.length===0?(t(),g(`div`,H,[i[8]||=b(`i`,{class:`pi pi-folder-open empty-icon`},null,-1),j.value?(t(),g(`p`,U,y(r(l)(`projectList.noMatchProjects`,{query:j.value})),1)):(t(),g(`p`,W,y(r(l)(`projectList.noProjects`)),1)),j.value?h(``,!0):(t(),E(r(a),{key:2,label:r(l)(`projectList.createProject`),icon:`pi pi-plus`,onClick:Q},null,8,[`label`]))])):(t(),g(`div`,G,[(t(!0),g(p,null,s(X.value,e=>(t(),E(F,{key:e.id,project:e,"data-testid":`project-row-link`,onClick:t=>Z(e)},null,8,[`project`,`onClick`]))),128))])),f(r(u),{visible:M.value,"onUpdate:visible":i[5]||=e=>M.value=e,header:r(l)(`projectList.newProject`),style:{width:`480px`},modal:``,closable:!N.value},{footer:C(()=>[f(r(a),{label:r(l)(`projectList.cancel`),severity:`secondary`,text:``,disabled:N.value,onClick:i[4]||=e=>M.value=!1},null,8,[`label`,`disabled`]),f(r(a),{label:r(l)(`projectList.create`),icon:`pi pi-check`,loading:N.value,disabled:!P.value.name.trim(),onClick:$},null,8,[`label`,`loading`,`disabled`])]),default:C(()=>[b(`div`,K,[b(`label`,q,y(r(l)(`projectList.nameLabel`)),1),f(r(S),{id:`project-name`,modelValue:P.value.name,"onUpdate:modelValue":i[2]||=e=>P.value.name=e,placeholder:r(l)(`projectList.namePlaceholder`),class:`w-full`,autofocus:``,onKeyup:x($,[`enter`])},null,8,[`modelValue`,`placeholder`])]),b(`div`,J,[b(`label`,Y,y(r(l)(`projectList.descriptionLabel`)),1),f(r(S),{id:`project-desc`,modelValue:P.value.description,"onUpdate:modelValue":i[3]||=e=>P.value.description=e,placeholder:r(l)(`projectList.descriptionPlaceholder`),class:`w-full`,onKeyup:x($,[`enter`])},null,8,[`modelValue`,`placeholder`])])]),_:1},8,[`visible`,`header`,`closable`])]))}}),[[`__scopeId`,`data-v-0e09c7cb`]]);export{X as default};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{Bi as e,Ca as t,Cn as n,Dn as r,Ii as i,Ri as a,_i as o,fi as s,gi as c,ha as l,hn as u,ka as d,ki as f,li as p,yi as m}from"./index-
|
|
1
|
+
import{Bi as e,Ca as t,Cn as n,Dn as r,Ii as i,Ri as a,_i as o,fi as s,gi as c,ha as l,hn as u,ka as d,ki as f,li as p,yi as m}from"./index-D5xJxOo2.js";var h={class:`random-job-test`},g={class:`random-job-test__actions`},_={class:`random-job-test__meta`},v={key:0,class:`random-job-test__empty`},y={key:1},b=`runeya:random-job-test:job-id`,x=`runeya:random-job-test:logs`,S=n(m({__name:`RandomJobTestPage`,setup(n){let m=l(null),S=l(!1),C=l([]),w=l(null),T=null;function E(){m.value?sessionStorage.setItem(b,m.value):sessionStorage.removeItem(b),sessionStorage.setItem(x,JSON.stringify(C.value))}function D(e){C.value=[...C.value,e],C.value.length>2e3&&(C.value=C.value.slice(C.value.length-2e3)),E(),f(()=>{w.value&&(w.value.scrollTop=w.value.scrollHeight)})}function O(){T?.unsubscribe(),T=null}function k(e){O(),T=u.debug.streamRandomJob.subscribe({jobId:e},{onData(e){e.type===`tick`?D(`[${new Date(e.at).toLocaleTimeString()}] #${e.index} -> ${e.value.toFixed(8)}`):(D(`[${new Date(e.at).toLocaleTimeString()}] done: ${e.reason}`),S.value=!1,m.value=null,E())},onError(e){D(`[sub] error: ${e.message}`),S.value=!1,E()},onComplete(){D(`[sub] complete`),S.value=!1,E()}}),D(`[sub] started for job ${e}`)}async function A(){if(S.value)return;C.value=[],E();let e=await u.debug.startRandomJob.mutate({intervalMs:300,maxTicks:1e3});m.value=e.jobId,S.value=!0,E(),D(`[job] started id=${e.jobId}, intervalMs=${e.intervalMs}, maxTicks=${e.maxTicks}`),k(e.jobId)}async function j(){if(m.value)try{await u.debug.stopRandomJob.mutate({jobId:m.value}),D(`[job] stop requested id=${m.value}`),S.value=!1,m.value=null,E()}catch(e){D(`[job] stop error: ${e.message}`)}}function M(){C.value=[],E()}return i(async()=>{let e=sessionStorage.getItem(x);if(e)try{let t=JSON.parse(e);Array.isArray(t)&&(C.value=t)}catch{}let t=sessionStorage.getItem(b);if(t){m.value=t;try{let e=await u.debug.randomJobStatus.query({jobId:t});S.value=e.running,E(),e.running?(D(`[job] reconnected id=${t}, tick=${e.tick}`),k(t)):(D(`[job] previous job ended (id=${t})`),m.value=null,E())}catch{S.value=!1,m.value=null,D(`[job] previous job not found`),E()}}}),a(()=>{O()}),(n,i)=>(e(),s(`div`,h,[i[3]||=p(`header`,{class:`random-job-test__header`},[p(`h1`,null,`Random Job Test`),p(`p`,null,`Click start to launch a server job and stream Math.random() values in real time.`)],-1),p(`div`,g,[o(t(r),{label:`Start job`,icon:`pi pi-play`,disabled:S.value,onClick:A},null,8,[`disabled`]),o(t(r),{label:`Stop`,icon:`pi pi-stop`,severity:`danger`,disabled:!S.value,onClick:j},null,8,[`disabled`]),o(t(r),{label:`Clear logs`,icon:`pi pi-trash`,severity:`secondary`,outlined:``,onClick:M})]),p(`div`,_,[p(`span`,null,[i[0]||=p(`strong`,null,`Job ID:`,-1),c(` `+d(m.value??`none`),1)]),p(`span`,null,[i[1]||=p(`strong`,null,`Status:`,-1),c(` `+d(S.value?`running`:`idle`),1)]),p(`span`,null,[i[2]||=p(`strong`,null,`Lines:`,-1),c(` `+d(C.value.length),1)])]),p(`section`,{ref_key:`logsEl`,ref:w,class:`random-job-test__logs`,"aria-live":`polite`},[C.value.length===0?(e(),s(`div`,v,`No logs yet.`)):(e(),s(`pre`,y,d(C.value.join(`
|
|
2
2
|
`)),1))],512)]))}}),[[`__scopeId`,`data-v-96a75827`]]);export{S as default};
|