@runeya/runeya 2.0.13 → 2.0.16
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 +236 -15
- package/agent/index.js.map +1 -1
- package/agent-manager-7IDZTNVZ-HVRWIXYW.js +8 -0
- package/{chunk-AJW7LDO5.js → chunk-AHOJAT74.js} +9 -3
- package/chunk-AHOJAT74.js.map +1 -0
- package/{dist-HGCFHXO4.js → dist-P3HYK2SI.js} +334 -92
- package/dist-P3HYK2SI.js.map +1 -0
- package/index.js +1 -1
- package/package.json +1 -1
- package/web/assets/{AddressBar.vue-B6BOLYmO.js → AddressBar.vue-BZnGu8vW.js} +1 -1
- package/web/assets/{AgentScalarChatInterface.vue-DKSmjtvV.js → AgentScalarChatInterface.vue-QkKS0oIt.js} +1 -1
- package/web/assets/{AgentTerminalPage-BZ6jaRAs.js → AgentTerminalPage-CfI3DoEO.js} +1 -1
- package/web/assets/AiChatPage-C_j-aspS.js +1 -0
- package/web/assets/{AppLayout-B7-y0tBI.css → AppLayout-Cf8sRK63.css} +1 -1
- package/web/assets/{AppLayout-DnMCPCO8.js → AppLayout-CgU4s6lb.js} +1 -1
- package/web/assets/{AuditPage-CTdEvLE-.js → AuditPage-C42BeKr5.js} +1 -1
- package/web/assets/{CodeInput.vue-Sp2dM8hl.js → CodeInput.vue-BGBOdacc.js} +1 -1
- package/web/assets/{Collection.vue-CdPjaC9d.js → Collection.vue-Vub9L9if.js} +1 -1
- package/web/assets/{CollectionAuthentication.vue-DMPykUah.js → CollectionAuthentication.vue-DMa9nYTH.js} +1 -1
- package/web/assets/CollectionCookies.vue-Dr_bErXS.js +1 -0
- package/web/assets/{CollectionEnvironment.vue-DKab6xJJ.js → CollectionEnvironment.vue-CcS_RH1F.js} +1 -1
- package/web/assets/{CollectionOverview.vue-DlODh8Vk.js → CollectionOverview.vue-Cm3m-3IA.js} +1 -1
- package/web/assets/CollectionScripts.vue-DwfCDW_N.js +1 -0
- package/web/assets/{CollectionServers.vue-Br-QackN.js → CollectionServers.vue-CDU7RCJI.js} +1 -1
- package/web/assets/{CollectionSettings.vue-Cm6NQbDm.js → CollectionSettings.vue-QApKyKpx.js} +1 -1
- package/web/assets/CollectionSync.vue-2mc6W9Vb.js +1 -0
- package/web/assets/{CommandActionInput.vue-CZ3-rqSL.js → CommandActionInput.vue-CSydiKjM.js} +1 -1
- package/web/assets/{Cookies.vue-Duz-a-ga.js → Cookies.vue-2UMujX_l.js} +1 -1
- package/web/assets/DashboardPage-CSkUCQHY.css +1 -0
- package/web/assets/DashboardPage-Dt5zSm2a.js +1 -0
- package/web/assets/{DataTable.vue-Dorr-r7J.js → DataTable.vue-BKb6QQRz.js} +1 -1
- package/web/assets/{DataTableCheckbox.vue-CATn-YYp.js → DataTableCheckbox.vue-DC2n-xeZ.js} +1 -1
- package/web/assets/{DataTableHeader.vue-C3SUSaR8.js → DataTableHeader.vue-Cbolg5AE.js} +1 -1
- package/web/assets/{DataTableInput.vue-_06pwPUA.js → DataTableInput.vue-DoVPLXed.js} +1 -1
- package/web/assets/{DeleteSidebarListElement.vue-DoqRnMXx.js → DeleteSidebarListElement.vue-Br-Lvh7k.js} +1 -1
- package/web/assets/{EditSidebarListElement.vue-BqTw6Tho.js → EditSidebarListElement.vue-BVJ4wsTf.js} +1 -1
- package/web/assets/{EditorIcon-CbpIT0A1.js → EditorIcon-D3F3QHD_.js} +1 -1
- package/web/assets/{EmptyState.vue-Bur5L0a4.js → EmptyState.vue-DMCTVrXN.js} +1 -1
- package/web/assets/{Environment.vue-C50lH9cP.js → Environment.vue-CEBYjegx.js} +1 -1
- package/web/assets/{EnvironmentForm-BDfzXuHx.js → EnvironmentForm-D9pUNi_S.js} +1 -1
- package/web/assets/{EnvironmentFormPage-CLylRN6B.js → EnvironmentFormPage-BQwHvpiH.js} +1 -1
- package/web/assets/{EnvironmentListPage-DlUT6LnX.js → EnvironmentListPage-BEX6YTjm.js} +1 -1
- package/web/assets/{EnvironmentModal.vue-Dz5CArRX.js → EnvironmentModal.vue-Bipjnu_F.js} +1 -1
- package/web/assets/{EnvironmentSelector-DHoYUCTH.js → EnvironmentSelector-BsLO-o9W.js} +1 -1
- package/web/assets/{Form.vue-BzZCMgN1.js → Form.vue-CwujTuIH.js} +1 -1
- package/web/assets/{IconSelector.vue-BCmeqlrs.js → IconSelector.vue-xGa1snoB.js} +1 -1
- package/web/assets/KanbanBoardPage-CS0DFaYQ.js +2 -0
- package/web/assets/KanbanBoardPage-GHv836NO.css +1 -0
- package/web/assets/{KanbanListPage-BLdNz80q.js → KanbanListPage-BlycDa8i.js} +1 -1
- package/web/assets/{LaunchProjectPage-DjRA2D3h.js → LaunchProjectPage-CQPXVRR8.js} +1 -1
- package/web/assets/{LaunchServicesPage-CKaGcu3z.js → LaunchServicesPage-DIc47d5w.js} +1 -1
- package/web/assets/{LogViewer-CtX_6uFM.js → LogViewer-D-j9SP-8.js} +1 -1
- package/web/assets/{ProcessControls-BY-_9zo7.js → ProcessControls-D3MHr6vJ.js} +1 -1
- package/web/assets/{ProcessDetailPage-Bqis1qMA.js → ProcessDetailPage-DArVdn5O.js} +1 -1
- package/web/assets/{ProcessMetrics-DQybvwcA.js → ProcessMetrics-tRbudcTQ.js} +1 -1
- package/web/assets/{ProjectDetailPage-FBPonwd5.js → ProjectDetailPage-DQWbqmra.js} +1 -1
- package/web/assets/{ProjectListPage-xwlVXN8A.js → ProjectListPage-BArhG94f.js} +1 -1
- package/web/assets/{RandomJobTestPage-0pqne-FD.js → RandomJobTestPage-cx0kQXnf.js} +1 -1
- package/web/assets/{Request.vue-Db4XEPKt.js → Request.vue-B9DoYtI8.js} +1 -1
- package/web/assets/{RequestAuth.vue-CK1A6ySt.js → RequestAuth.vue-CqHxzl6g.js} +1 -1
- package/web/assets/{RequestRoot.vue-BLF0GGT5.js → RequestRoot.vue-C28ISMld.js} +1 -1
- package/web/assets/{ScalarAsciiArt.vue-BPdUsXWj.js → ScalarAsciiArt.vue-BYd0f-av.js} +1 -1
- package/web/assets/{ScalarIconEyeSlash.vue-BBDBShRO.js → ScalarIconEyeSlash.vue-Ct2ktTXq.js} +1 -1
- package/web/assets/{ScalarIconTrash.vue-Tpr15aNY.js → ScalarIconTrash.vue-DQO_gQ8s.js} +1 -1
- package/web/assets/{ScenarioEditorPage-DNuo-2Gi.js → ScenarioEditorPage-DP06DP64.js} +1 -1
- package/web/assets/{ServerVariablesForm.vue-XLQ145gw.js → ServerVariablesForm.vue-D11m7aiX.js} +1 -1
- package/web/assets/{ServiceControlsBar-CCTGcA1t.js → ServiceControlsBar-DMq83CtH.js} +1 -1
- package/web/assets/{ServiceDetailPage-BELECRic.css → ServiceDetailPage-BngfQIAo.css} +1 -1
- package/web/assets/ServiceDetailPage-Cn1MTG_u.js +2 -0
- package/web/assets/{ServiceFormPage-F3boRKs-.js → ServiceFormPage-CyIValC5.js} +1 -1
- package/web/assets/{Settings.vue-D_1yQu6i.js → Settings.vue-CCeUjK5z.js} +1 -1
- package/web/assets/{SettingsPage-CgJN_IL7.css → SettingsPage-BhGoaUHP.css} +1 -1
- package/web/assets/SettingsPage-LVnvVA93.js +225 -0
- package/web/assets/{SetupKeyPage-BcaSoLjU.js → SetupKeyPage-DOxR0hTs.js} +1 -1
- package/web/assets/{SetupPage-mCVAKLtm.js → SetupPage-DTQqk8IW.js} +1 -1
- package/web/assets/{Sidebar.vue-De4YlW0c.js → Sidebar.vue-BLpHEfAt.js} +1 -1
- package/web/assets/{SidebarButton.vue-CctYiTRp.js → SidebarButton.vue-CNMSjNtm.js} +1 -1
- package/web/assets/{SidebarListElement.vue-Cv7jUZIM.js → SidebarListElement.vue-DSsy6NQT.js} +1 -1
- package/web/assets/TiptapEditor-DzMKh7Iq.css +1 -0
- package/web/assets/TiptapEditor-TuQki585.js +181 -0
- package/web/assets/{UnlockPage-BSpzyZnd.js → UnlockPage-D4x8qq_i.js} +1 -1
- package/web/assets/{VariablesTable-Dn3IvplD.js → VariablesTable-BP8KuwPI.js} +1 -1
- package/web/assets/{ViewLayout.vue-fiagi8zc.js → ViewLayout.vue-Dui_p5J4.js} +1 -1
- package/web/assets/{ViewLayoutContent.vue-BehGrsED.js → ViewLayoutContent.vue-CZRQTJFb.js} +1 -1
- package/web/assets/{ViewLayoutSection.vue-D4icCgQI.js → ViewLayoutSection.vue-C87DZ2QU.js} +1 -1
- package/web/assets/WikiPage-BrgnqOvx.js +1 -0
- package/web/assets/WikiView-CMF4PzXp.css +1 -0
- package/web/assets/WikiView-Decl55xY.js +1 -0
- package/web/assets/{active-entities-CkBGjwu9.js → active-entities-DEkfqGrE.js} +1 -1
- package/web/assets/{api-reference-D1EfYtPj.js → api-reference-DP5iGzGP.js} +1 -1
- package/web/assets/{autocomplete-CjBHTJWh.js → autocomplete-DcAAfn0y.js} +1 -1
- package/web/assets/{card-CsmU2iiY.js → card-DyK4dvjg.js} +1 -1
- package/web/assets/{checkbox-B5XZqi1U.js → checkbox-Csn61_gJ.js} +1 -1
- package/web/assets/{chip-C4pSomPm.js → chip-DkjFl7f-.js} +1 -1
- package/web/assets/{column-CR3Hix4J.js → column-DyznW54C.js} +1 -1
- package/web/assets/{core-CtGUajLi.js → core-BXP8Yp-2.js} +1 -1
- package/web/assets/{cssMode-nuznbveH.js → cssMode-C9nCeku9.js} +1 -1
- package/web/assets/{dist--ZlcDulO.js → dist-DKLcX5kd.js} +1 -1
- package/web/assets/{dist-DH_zJr7W.js → dist-DM4_kDGf.js} +1 -1
- package/web/assets/{dist-WjGUyWSO.js → dist-DOfPSpzL.js} +1 -1
- package/web/assets/{dist-CXkMrHNP.js → dist-zqENM1-W.js} +1 -1
- package/web/assets/{divider-CnJlD7qO.js → divider-BJQexqne.js} +1 -1
- package/web/assets/{fieldset-D9zY6R6s.js → fieldset-BPm9DkKy.js} +1 -1
- package/web/assets/{freemarker2-Bw43sOne.js → freemarker2-BaJGEPal.js} +1 -1
- package/web/assets/{handlebars-C8qgW7u6.js → handlebars-BQFn9RdQ.js} +1 -1
- package/web/assets/{html-Dy9PKnkr.js → html-Cr5a-EYz.js} +1 -1
- package/web/assets/{htmlMode-o8EU0tqo.js → htmlMode-CC9GYLNa.js} +1 -1
- package/web/assets/{index-CIcE6DNv.js → index-CV_lCcKm.js} +5 -5
- package/web/assets/{javascript-CuRngcUR.js → javascript-mDqsZBlu.js} +1 -1
- package/web/assets/{jsonMode-CsUIxwQq.js → jsonMode-B54JAo3i.js} +1 -1
- package/web/assets/{keyboard-DhkINir5.js → keyboard-BALpgxzI.js} +1 -1
- package/web/assets/{lib-E9M4L9vE.js → lib-CbGVmNqI.js} +1 -1
- package/web/assets/{library-BXoSag-V.js → library-DL2YIihE.js} +1 -1
- package/web/assets/{liquid-CraMnqaK.js → liquid-DiGHjG_L.js} +1 -1
- package/web/assets/{mdx-DPSW5q1A.js → mdx-D6dV5_Hg.js} +1 -1
- package/web/assets/{mediaTypes-DDACekzr.js → mediaTypes-97PR9Ryv.js} +1 -1
- package/web/assets/{message-DKOCajc6.js → message-CkvY1zpy.js} +1 -1
- package/web/assets/{minus-CtlH9Syh.js → minus-Cz1A1nRX.js} +1 -1
- package/web/assets/{multiselect-sshNnjnF.js → multiselect-Cg_IvTVL.js} +1 -1
- package/web/assets/{password-Dv9g39jb.js → password-DnBPksM5.js} +1 -1
- package/web/assets/{plus-CG5Ui-l-.js → plus-DLza1kmt.js} +1 -1
- package/web/assets/{pretty-ms-D2BVTeMx.js → pretty-ms-CFs2lDEt.js} +1 -1
- package/web/assets/process.store-DOZqELYx.js +1 -0
- package/web/assets/{project.store-CVbXSH5d.js → project.store-1ZxiIOdG.js} +1 -1
- package/web/assets/{python-BLq8fVkV.js → python-CBOkbLwS.js} +1 -1
- package/web/assets/{radiobutton-Bz_ltBfM.js → radiobutton-Bzj_cgKU.js} +1 -1
- package/web/assets/{razor-CVrBU-Fk.js → razor-DbhB_XzZ.js} +1 -1
- package/web/assets/router-BXlVOZht.js +1 -0
- package/web/assets/{settings.store-vM-8jbAF.js → settings.store-Qq6Gc2CT.js} +1 -1
- package/web/assets/{store-CTKZgNiD.js → store-Cuguy-ft.js} +1 -1
- package/web/assets/{tabpanel-DaZzgdrv.js → tabpanel-BkIDALQ8.js} +1 -1
- package/web/assets/trpc-BFwMZelk.js +1 -0
- package/web/assets/{tsMode-DO5zEzzD.js → tsMode-B48YcNcc.js} +1 -1
- package/web/assets/{typescript-Do-K_3Jj.js → typescript-DNe7mq9Z.js} +1 -1
- package/web/assets/{urls-BlVUwVFM.js → urls-Bhy-NKbg.js} +1 -1
- package/web/assets/{use-tree-walker-xoEX554A.js → use-tree-walker-DGf54lqT.js} +1 -1
- package/web/assets/useAiChatDrawer-C-QgDgQO.js +1 -0
- package/web/assets/{useClipboard-B3J6cGK-.js → useClipboard-Ba0ZMSjV.js} +1 -1
- package/web/assets/{useLayout-DHrumlpr.js → useLayout-CmsWxVhO.js} +1 -1
- package/web/assets/{usePluginManager-BEbBxZnF.js → usePluginManager-DBLyufEz.js} +1 -1
- package/web/assets/{useSidebar-BCBwVF2x.js → useSidebar-BWKBo0y4.js} +1 -1
- package/web/assets/{vue-router-CuFIegGa.js → vue-router-By6H_4a-.js} +1 -1
- package/web/assets/{xml-BolCsFLY.js → xml-zVv61nBe.js} +1 -1
- package/web/assets/{yaml-5iZTkCV3.js → yaml-DJ0ncxUH.js} +1 -1
- package/web/index.html +1 -1
- package/agent-manager-3DHUF2DC-KN6O7WSA.js +0 -8
- package/chunk-AJW7LDO5.js.map +0 -1
- package/dist-HGCFHXO4.js.map +0 -1
- package/web/assets/AiChatPage-C1r42kX7.js +0 -1
- package/web/assets/CollectionCookies.vue-DqNgVtd-.js +0 -1
- package/web/assets/CollectionScripts.vue-B2gkfo4d.js +0 -1
- package/web/assets/CollectionSync.vue-bB7sdahP.js +0 -1
- package/web/assets/DashboardPage-gZJ4_s8T.css +0 -1
- package/web/assets/DashboardPage-hIc9wP_Q.js +0 -1
- package/web/assets/KanbanBoardPage-DoXgFMvo.js +0 -141
- package/web/assets/KanbanBoardPage-hqNojI5j.css +0 -1
- package/web/assets/ServiceDetailPage-UVg73scN.js +0 -2
- package/web/assets/SettingsPage-Cg78lQZF.js +0 -225
- package/web/assets/process.store-CutdTiYB.js +0 -1
- package/web/assets/router-CuxdGfLF.js +0 -1
- package/web/assets/trpc-BIjF6nTt.js +0 -1
- package/web/assets/useAiChatDrawer-BJugMTj0.js +0 -1
- /package/{agent-manager-3DHUF2DC-KN6O7WSA.js.map → agent-manager-7IDZTNVZ-HVRWIXYW.js.map} +0 -0
- /package/web/assets/{_plugin-vue_export-helper-C08BWUE4.js → _plugin-vue_export-helper-BVSTY9ge.js} +0 -0
- /package/web/assets/{abap-BMPR0rjj.js → abap-DktqfXDx.js} +0 -0
- /package/web/assets/{apex-DYC4uYYf.js → apex-C84w8VGC.js} +0 -0
- /package/web/assets/{azcli-GZlxEjpa.js → azcli-Cs5iRzPw.js} +0 -0
- /package/web/assets/{base64-VLYHbiMn.js → base64-CG47Jc3Y.js} +0 -0
- /package/web/assets/{bat-Cv8OxItG.js → bat-Bxztgnvx.js} +0 -0
- /package/web/assets/{bicep-CuCbE6Ue.js → bicep-EmTmx6Fy.js} +0 -0
- /package/web/assets/{cameligo-BEPX3585.js → cameligo-DZYk6cOD.js} +0 -0
- /package/web/assets/{clojure--6rbXIPY.js → clojure-QYeZgX63.js} +0 -0
- /package/web/assets/{coffee-ByvVcDGX.js → coffee-DP64XG_I.js} +0 -0
- /package/web/assets/{cpp-CECtPnZp.js → cpp-Dz6-l8vs.js} +0 -0
- /package/web/assets/{csharp-DyYyZ8UX.js → csharp-CcVGRY-t.js} +0 -0
- /package/web/assets/{csp-B9apvcI9.js → csp-Cqpt0M-R.js} +0 -0
- /package/web/assets/{css-CfdBNbB0.js → css-BEjT2o3U.js} +0 -0
- /package/web/assets/{cypher-BPqQq4XX.js → cypher-CFsKHT39.js} +0 -0
- /package/web/assets/{dart-BLToxiYU.js → dart-Dd8xW03D.js} +0 -0
- /package/web/assets/{dist-COg0nRYK.js → dist-BPIMeATj.js} +0 -0
- /package/web/assets/{dockerfile-CKo5jN7V.js → dockerfile-MHoTmcM0.js} +0 -0
- /package/web/assets/{ecl-qo8pi1Ty.js → ecl-DDOk3_u-.js} +0 -0
- /package/web/assets/{elixir-Dv1YAMPJ.js → elixir-BrvvYQkl.js} +0 -0
- /package/web/assets/{flow9-BKTKs1nN.js → flow9-Desf9xEz.js} +0 -0
- /package/web/assets/{fsharp-BPoxgmtD.js → fsharp-B8Icgpa6.js} +0 -0
- /package/web/assets/{go-DgJ-2ryf.js → go-Do5MIzaM.js} +0 -0
- /package/web/assets/{graphql-YTK8zpFe.js → graphql-CiG6oX7b.js} +0 -0
- /package/web/assets/{hcl-tYOvwaJ3.js → hcl-C-xKM4WW.js} +0 -0
- /package/web/assets/{ini-BTZ3lNbM.js → ini-DXIR0OjP.js} +0 -0
- /package/web/assets/{java-boRe0CIQ.js → java-Dy8EfEt9.js} +0 -0
- /package/web/assets/{julia-K6BtoWYX.js → julia-DkrFX1s_.js} +0 -0
- /package/web/assets/{kotlin-CglG00z4.js → kotlin-Dar7GDKm.js} +0 -0
- /package/web/assets/{less-DlnIYk4g.js → less-DzP6DgzU.js} +0 -0
- /package/web/assets/{lexon-D4aKXJ0J.js → lexon-DptP6qTd.js} +0 -0
- /package/web/assets/{lua-DeQCQ0IN.js → lua-CCVwtOWf.js} +0 -0
- /package/web/assets/{m3-yCjRJP_i.js → m3-DrEvvio5.js} +0 -0
- /package/web/assets/{markdown-C2IT79AR.js → markdown-ruxuCKkk.js} +0 -0
- /package/web/assets/{mips-BAnhwv_D.js → mips-BQqMOsEB.js} +0 -0
- /package/web/assets/{msdax-D1jHDTih.js → msdax-phO8WA3n.js} +0 -0
- /package/web/assets/{mysql-CTJU-jL7.js → mysql-CTdeo58Q.js} +0 -0
- /package/web/assets/{objective-c-CwxzUA28.js → objective-c-jhQ0iM6X.js} +0 -0
- /package/web/assets/{pascal-DpSQp86i.js → pascal-C8SkzMHp.js} +0 -0
- /package/web/assets/{pascaligo-C4F0Gc12.js → pascaligo-ArPaQLGJ.js} +0 -0
- /package/web/assets/{perl-87HvGh3u.js → perl-DdJtSHIR.js} +0 -0
- /package/web/assets/{pgsql-DUB3YVHd.js → pgsql-DzJ8nWb2.js} +0 -0
- /package/web/assets/{php-gpgbnwXh.js → php-CCjtAB9z.js} +0 -0
- /package/web/assets/{pla-9VH1h0qA.js → pla-BcEbmw3g.js} +0 -0
- /package/web/assets/{postiats-DYNil0RB.js → postiats-Fpcus-uJ.js} +0 -0
- /package/web/assets/{powerquery-Cyj_QMWN.js → powerquery-Cu-9g7NG.js} +0 -0
- /package/web/assets/{powershell-BxsWzjwy.js → powershell-DO2fUGfn.js} +0 -0
- /package/web/assets/{protobuf-CpB35fc2.js → protobuf-DQup7qRj.js} +0 -0
- /package/web/assets/{pug-CQ3BHXrf.js → pug-Duim2NdD.js} +0 -0
- /package/web/assets/{qsharp-hvdiA16n.js → qsharp-CytI7IVT.js} +0 -0
- /package/web/assets/{r-BcpSD-1e.js → r-DZINbLk_.js} +0 -0
- /package/web/assets/{redis-B2JGUU7L.js → redis-Bf0SVuM0.js} +0 -0
- /package/web/assets/{redshift-DtV7K8A1.js → redshift-oHIhn4rc.js} +0 -0
- /package/web/assets/{restructuredtext-avYcqBCA.js → restructuredtext-B3n-oeH1.js} +0 -0
- /package/web/assets/{ruby-B75_Tp8C.js → ruby-DXTCv0Dq.js} +0 -0
- /package/web/assets/{rust-CHon-ZXH.js → rust-BM9bjpGj.js} +0 -0
- /package/web/assets/{sb-iehvyQKY.js → sb-BU8bPS70.js} +0 -0
- /package/web/assets/{scala-LBw1ennX.js → scala-BP9uGS4X.js} +0 -0
- /package/web/assets/{scheme-BRK_sKgt.js → scheme-rmkEHrlu.js} +0 -0
- /package/web/assets/{scss-CzbUsG5V.js → scss-BtCDKYlG.js} +0 -0
- /package/web/assets/{shell-DdtWj1FH.js → shell-CG1BTV1P.js} +0 -0
- /package/web/assets/{solidity-CBYPsj6K.js → solidity-DAYsr878.js} +0 -0
- /package/web/assets/{sophia-BAmZLhFu.js → sophia-DLSOk_-J.js} +0 -0
- /package/web/assets/{sparql-DzxQz_25.js → sparql-C_sea8Qf.js} +0 -0
- /package/web/assets/{sql-CtZa8xg5.js → sql-zI2PRpPJ.js} +0 -0
- /package/web/assets/{st-3yAXYt2f.js → st-VM0k3m2K.js} +0 -0
- /package/web/assets/{swift-nwo4k0Qx.js → swift-DAxKPUqq.js} +0 -0
- /package/web/assets/{systemverilog-38mUSYaO.js → systemverilog-D3gk_LvQ.js} +0 -0
- /package/web/assets/{tcl-DfkL3MZ2.js → tcl-YQSEIPQI.js} +0 -0
- /package/web/assets/{twig-C2_DTvv-.js → twig-Bt5uw3P4.js} +0 -0
- /package/web/assets/{typespec-Dn7A_7aO.js → typespec-CF_qDuWb.js} +0 -0
- /package/web/assets/{vb-ByZEqbuQ.js → vb-DERgblZJ.js} +0 -0
- /package/web/assets/{w3c-keyname-CXRaQfIQ.js → w3c-keyname-B0Po4pAC.js} +0 -0
- /package/web/assets/{wgsl-BqCLRRs9.js → wgsl-BrfJ-tM_.js} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
import{Bi as e,Ca as t,Ea as n,Hi as r,Ui as i,Yi as a,_i as o,ai as s,di as c,fi as l,ka as u,li as d,mi as f,ra as p,ui as m,yi as h}from"./index-
|
|
1
|
+
import{Bi as e,Ca as t,Ea as n,Hi as r,Ui as i,Yi as a,_i as o,ai as s,di as c,fi as l,ka as u,li as d,mi as f,ra as p,ui as m,yi as h}from"./index-CV_lCcKm.js";import{V as g}from"./dist-DKLcX5kd.js";import{t as _}from"./active-entities-DEkfqGrE.js";import{t as v}from"./ViewLayoutSection.vue-C87DZ2QU.js";import{n as y,t as b}from"./DataTable.vue-BKb6QQRz.js";import{t as x}from"./DataTableInput.vue-DoVPLXed.js";var S={key:0},C={class:`flex flex-1 flex-col gap-1.5`},w=[`for`],T={class:`centered-y bg-b-2 flex-center absolute right-1 z-1 rounded px-1 py-0.5`},E=h({__name:`Form`,props:{title:{},options:{},data:{},onUpdate:{type:Function}},setup(h){let{activeEnvVariables:E,activeEnvironment:D,activeWorkspace:O}=_(),k=a();return(a,_)=>(e(),m(v,{class:`last:rounded-b-lg`},f({default:p(()=>[d(`div`,C,[Object.keys(h.data).length>0&&t(O)?(e(),m(b,{key:0,columns:[``],class:`rounded-b-lg`},{default:p(()=>[(e(!0),l(s,null,r(h.options,(r,i)=>(e(),m(y,{key:i,class:n({"border-t":i===0})},{default:p(()=>[o(x,{class:`pr-9`,lineWrapping:``,id:t(k),envVariables:t(E),environment:t(D),modelValue:h.data[r.key]??``,placeholder:r.placeholder,workspace:t(O),"onUpdate:modelValue":e=>h.onUpdate(r.key,e)},f({default:p(()=>[d(`label`,{for:t(k)},u(r.label),9,w)]),_:2},[r.key===`description`?{name:`icon`,fn:p(()=>[d(`div`,T,[o(t(g),{icon:`Markdown`,size:`lg`})])]),key:`0`}:void 0]),1032,[`id`,`envVariables`,`environment`,`modelValue`,`placeholder`,`workspace`,`onUpdate:modelValue`])]),_:2},1032,[`class`]))),128))]),_:1})):c(``,!0)])]),_:2},[h.title||a.$slots.title?{name:`title`,fn:p(()=>[h.title?(e(),l(`span`,S,u(h.title),1)):i(a.$slots,`title`,{key:1})]),key:`0`}:void 0]),1024))}});export{E as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{$i as e,Bi as t,Ca as n,Hi as r,Ii as i,Ri as a,Si as o,Ui as s,Vi as c,_i as l,ai as u,ci as d,fi as f,gi as p,ha as m,ka as h,li as g,ra as _,ui as v,va as y,wi as b,yi as x}from"./index-
|
|
1
|
+
import{$i as e,Bi as t,Ca as n,Hi as r,Ii as i,Ri as a,Si as o,Ui as s,Vi as c,_i as l,ai as u,ci as d,fi as f,gi as p,ha as m,ka as h,li as g,ra as _,ui as v,va as y,wi as b,yi as x}from"./index-CV_lCcKm.js";import{O as S}from"./dist-DKLcX5kd.js";import{a as C,c as w,n as T,r as E,s as D,t as O}from"./keyboard-BALpgxzI.js";import{a as k,i as A,n as j,r as M,t as N,u as P}from"./use-tree-walker-DGf54lqT.js";import{n as F,t as I}from"./library-DL2YIihE.js";function L(e,t,n){let r=m(n?.value),i=d(()=>e.value!==void 0);return[d(()=>i.value?e.value:r.value),function(e){return i.value||(r.value=e),t?.(e)}]}var R=(e=>(e[e.None=1]=`None`,e[e.Focusable=2]=`Focusable`,e[e.Hidden=4]=`Hidden`,e))(R||{}),z=x({name:`Hidden`,props:{as:{type:[Object,String],default:`div`},features:{type:Number,default:1}},setup(e,{slots:t,attrs:n}){return()=>{let{features:r,...i}=e;return T({ourProps:{"aria-hidden":(r&2)==2?!0:i[`aria-hidden`]??void 0,hidden:(r&4)==4?!0:void 0,style:{position:`fixed`,top:1,left:1,width:1,height:0,padding:0,margin:-1,overflow:`hidden`,clip:`rect(0, 0, 0, 0)`,whiteSpace:`nowrap`,borderWidth:`0`,...(r&4)==4&&(r&2)!=2&&{display:`none`}}},theirProps:i,slot:{},attrs:n,slots:t,name:`Hidden`})}}});function B(e={},t=null,n=[]){for(let[r,i]of Object.entries(e))H(n,V(t,r),i);return n}function V(e,t){return e?e+`[`+t+`]`:t}function H(e,t,n){if(Array.isArray(n))for(let[r,i]of n.entries())H(e,V(t,r.toString()),i);else n instanceof Date?e.push([t,n.toISOString()]):typeof n==`boolean`?e.push([t,n?`1`:`0`]):typeof n==`string`?e.push([t,n]):typeof n==`number`?e.push([t,`${n}`]):n==null?e.push([t,``]):B(n,t,e)}function U(e){var t;let n=e?.form??e.closest(`form`);if(n){for(let t of n.elements)if(t!==e&&(t.tagName===`INPUT`&&t.type===`submit`||t.tagName===`BUTTON`&&t.type===`submit`||t.nodeName===`INPUT`&&t.type===`image`)){t.click();return}(t=n.requestSubmit)==null||t.call(n)}}var W=Symbol(`DescriptionContext`);function G(){let e=b(W,null);if(e===null)throw Error(`Missing parent`);return e}function K({slot:e=m({}),name:t=`Description`,props:n={}}={}){let r=m([]);function i(e){return r.value.push(e),()=>{let t=r.value.indexOf(e);t!==-1&&r.value.splice(t,1)}}return c(W,{register:i,slot:e,name:t,props:n}),d(()=>r.value.length>0?r.value.join(` `):void 0)}x({name:`Description`,props:{as:{type:[Object,String],default:`p`},id:{type:String,default:null}},setup(e,{attrs:t,slots:r}){let o=e.id??`headlessui-description-${w()}`,s=G();return i(()=>a(s.register(o))),()=>{let{name:i=`Description`,slot:a=m({}),props:c={}}=s,{...l}=e;return T({ourProps:{...Object.entries(c).reduce((e,[t,r])=>Object.assign(e,{[t]:n(r)}),{}),id:o},theirProps:l,slot:a.value,attrs:t,slots:r,name:i})}}});var q=Symbol(`LabelContext`);function J(){let e=b(q,null);if(e===null){let e=Error(`You used a <Label /> component, but it is not inside a parent.`);throw Error.captureStackTrace&&Error.captureStackTrace(e,J),e}return e}function Y({slot:e={},name:t=`Label`,props:n={}}={}){let r=m([]);function i(e){return r.value.push(e),()=>{let t=r.value.indexOf(e);t!==-1&&r.value.splice(t,1)}}return c(q,{register:i,slot:e,name:t,props:n}),d(()=>r.value.length>0?r.value.join(` `):void 0)}var X=x({name:`Label`,props:{as:{type:[Object,String],default:`label`},passive:{type:[Boolean],default:!1},id:{type:String,default:null}},setup(e,{slots:t,attrs:r}){let o=e.id??`headlessui-label-${w()}`,s=J();return i(()=>a(s.register(o))),()=>{let{name:i=`Label`,slot:a={},props:c={}}=s,{passive:l,...u}=e,d={...Object.entries(c).reduce((e,[t,r])=>Object.assign(e,{[t]:n(r)}),{}),id:o};return l&&(delete d.onClick,delete d.htmlFor,delete u.onClick),T({ourProps:d,theirProps:u,slot:a,attrs:r,slots:t,name:i})}}});function ee(e,t){return e===t}var Z=Symbol(`RadioGroupContext`);function Q(e){let t=b(Z,null);if(t===null){let t=Error(`<${e} /> is missing a parent <RadioGroup /> component.`);throw Error.captureStackTrace&&Error.captureStackTrace(t,Q),t}return t}var te=x({name:`RadioGroup`,emits:{"update:modelValue":e=>!0},props:{as:{type:[Object,String],default:`div`},disabled:{type:[Boolean],default:!1},by:{type:[String,Function],default:()=>ee},modelValue:{type:[Object,String,Number,Boolean],default:void 0},defaultValue:{type:[Object,String,Number,Boolean],default:void 0},form:{type:String,optional:!0},name:{type:String,optional:!0},id:{type:String,default:null}},inheritAttrs:!1,setup(t,{emit:n,attrs:r,slots:a,expose:s}){let l=t.id??`headlessui-radiogroup-${w()}`,f=m(null),p=m([]),h=Y({name:`RadioGroupLabel`}),g=K({name:`RadioGroupDescription`});s({el:f,$el:f});let[_,v]=L(d(()=>t.modelValue),e=>n(`update:modelValue`,e),d(()=>t.defaultValue)),b={options:p,value:_,disabled:d(()=>t.disabled),firstOption:d(()=>p.value.find(e=>!e.propsRef.disabled)),containsCheckedOption:d(()=>p.value.some(e=>b.compare(y(e.propsRef.value),y(t.modelValue)))),compare(e,n){if(typeof t.by==`string`){let r=t.by;return e?.[r]===n?.[r]}return t.by(e,n)},change(e){if(t.disabled||b.compare(y(_.value),y(e)))return!1;let n=p.value.find(t=>b.compare(y(t.propsRef.value),y(e)))?.propsRef;return n!=null&&n.disabled?!1:(v(e),!0)},registerOption(e){p.value.push(e),p.value=M(p.value,e=>e.element)},unregisterOption(e){let t=p.value.findIndex(t=>t.id===e);t!==-1&&p.value.splice(t,1)}};c(Z,b),N({container:d(()=>D(f)),accept(e){return e.getAttribute(`role`)===`radio`?NodeFilter.FILTER_REJECT:e.hasAttribute(`role`)?NodeFilter.FILTER_SKIP:NodeFilter.FILTER_ACCEPT},walk(e){e.setAttribute(`role`,`none`)}});function x(e){if(!f.value||!f.value.contains(e.target))return;let t=p.value.filter(e=>e.propsRef.disabled===!1).map(e=>e.element);switch(e.key){case O.Enter:U(e.currentTarget);break;case O.ArrowLeft:case O.ArrowUp:if(e.preventDefault(),e.stopPropagation(),A(t,j.Previous|j.WrapAround)===k.Success){let e=p.value.find(e=>e.element===P(f)?.activeElement);e&&b.change(e.propsRef.value)}break;case O.ArrowRight:case O.ArrowDown:if(e.preventDefault(),e.stopPropagation(),A(t,j.Next|j.WrapAround)===k.Success){let e=p.value.find(e=>e.element===P(e.element)?.activeElement);e&&b.change(e.propsRef.value)}break;case O.Space:{e.preventDefault(),e.stopPropagation();let t=p.value.find(e=>e.element===P(e.element)?.activeElement);t&&b.change(t.propsRef.value)}break}}let S=d(()=>D(f)?.closest(`form`));return i(()=>{e([S],()=>{if(!S.value||t.defaultValue===void 0)return;function e(){b.change(t.defaultValue)}return S.value.addEventListener(`reset`,e),()=>{var t;(t=S.value)==null||t.removeEventListener(`reset`,e)}},{immediate:!0})}),()=>{let{disabled:e,name:n,form:i,...s}=t,c={ref:f,id:l,role:`radiogroup`,"aria-labelledby":h.value,"aria-describedby":g.value,onKeydown:x};return o(u,[...n!=null&&_.value!=null?B({[n]:_.value}).map(([t,n])=>o(z,E({features:R.Hidden,key:t,as:`input`,type:`hidden`,hidden:!0,readOnly:!0,form:i,disabled:e,name:t,value:n}))):[],T({ourProps:c,theirProps:{...r,...C(s,[`modelValue`,`defaultValue`,`by`])},slot:{},attrs:r,slots:a,name:`RadioGroup`})])}}}),ne=(e=>(e[e.Empty=1]=`Empty`,e[e.Active=2]=`Active`,e))(ne||{}),re=x({name:`RadioGroupOption`,props:{as:{type:[Object,String],default:`div`},value:{type:[Object,String,Number,Boolean]},disabled:{type:Boolean,default:!1},id:{type:String,default:null}},setup(e,{attrs:t,slots:n,expose:r}){let o=e.id??`headlessui-radiogroup-option-${w()}`,s=Q(`RadioGroupOption`),c=Y({name:`RadioGroupLabel`}),l=K({name:`RadioGroupDescription`}),u=m(null),f=d(()=>({value:e.value,disabled:e.disabled})),p=m(1);r({el:u,$el:u});let h=d(()=>D(u));i(()=>s.registerOption({id:o,element:h,propsRef:f})),a(()=>s.unregisterOption(o));let g=d(()=>s.firstOption.value?.id===o),_=d(()=>s.disabled.value||e.disabled),v=d(()=>s.compare(y(s.value.value),y(e.value))),b=d(()=>_.value?-1:v.value||!s.containsCheckedOption.value&&g.value?0:-1);function x(){var t;s.change(e.value)&&(p.value|=2,(t=D(u))==null||t.focus())}function S(){p.value|=2}function C(){p.value&=-3}return()=>{let{value:r,disabled:i,...a}=e,s={checked:v.value,disabled:_.value,active:!!(p.value&2)};return T({ourProps:{id:o,ref:u,role:`radio`,"aria-checked":v.value?`true`:`false`,"aria-labelledby":c.value,"aria-describedby":l.value,"aria-disabled":_.value?!0:void 0,tabIndex:b.value,onClick:_.value?void 0:x,onFocus:_.value?void 0:S,onBlur:_.value?void 0:C},theirProps:a,slot:s,attrs:t,slots:n,name:`RadioGroupOption`})}}}),$=X,ie={class:`flex text-sm`},ae={class:`bg-b-1 custom-scroll grid w-dvw max-w-[420px] auto-rows-[32px] grid-cols-[repeat(auto-fill,minmax(32px,1fr))] content-between justify-between rounded border p-1`},oe=x({__name:`IconSelector`,props:{modelValue:{},placement:{}},emits:[`update:modelValue`],setup(e,{emit:i}){let a=e,o=i,c=d({get:()=>a.modelValue,set:e=>o(`update:modelValue`,e)});return(i,a)=>(t(),v(n(S),{class:`bg-b-2 rounded`,focus:``,placement:e.placement??`bottom`},{popover:_(({close:e})=>[l(n(te),{modelValue:c.value,"onUpdate:modelValue":a[0]||=e=>c.value=e,class:`flex flex-col`},{default:_(()=>[g(`div`,ie,[l(n($),{class:`text-c-2 px-1 py-1`},{default:_(()=>[s(i.$slots,`title`,{},()=>[a[1]||=p(`Select an icon`,-1)])]),_:3})]),g(`ul`,ae,[(t(!0),f(u,null,r(n(F),r=>(t(),v(n(re),{key:r.src,as:`li`,class:`text-c-3 hover:text-c-2 hover:bg-b-2 ui-checked:bg-b-3 ui-active:bg-b-2 flex cursor-pointer items-center justify-center rounded p-2`,value:r.src,onClick:e},{default:_(()=>[l(n($),{class:`sr-only`},{default:_(()=>[p(h(r.src.replaceAll(`-`,` `))+` Icon `,1)]),_:2},1024),l(n(I),{class:`stroke-[1.5]`,src:r.src},null,8,[`src`])]),_:2},1032,[`value`,`onClick`]))),128))])]),_:2},1032,[`modelValue`])]),default:_(()=>[s(i.$slots,`default`)]),_:3},8,[`placement`]))}});export{oe as t};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/trpc-BFwMZelk.js","assets/index-CV_lCcKm.js","assets/index-9i25DNQ4.css"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{$i as e,$r as t,Bi as n,Bn as r,Ca as i,Cn as a,D as o,Dn as s,E as ee,Ea as c,Gi as te,Gr as ne,Hi as l,Ii as re,L as ie,P as ae,Ri as oe,Tn as u,Wn as se,Wr as ce,Yn as le,Yt as ue,_i as d,ai as f,bn as de,ci as fe,di as p,fi as m,gi as h,ha as g,ia as _,ka as v,ki as pe,l as me,li as y,ni as b,nn as x,ra as S,ri as C,rn as he,u as ge,ui as _e,vn as ve,yi as ye,zn as be}from"./index-CV_lCcKm.js";import{a as xe,i as Se,n as Ce,r as we,t as Te}from"./tabpanel-BkIDALQ8.js";import{t as Ee}from"./uuid-H0yY5A03.js";import{t as De}from"./TiptapEditor-TuQki585.js";import"./w3c-keyname-B0Po4pAC.js";const Oe=ce(`kanban-queue`,()=>{let e=g({items:[],running:[],maxConcurrent:1}),t=null;async function n(){t||=x.kanbanQueue.onChanged.subscribe(void 0,{onData(t){e.value=t}})}function r(){t?.unsubscribe(),t=null}function i(t,n){return e.value.items.some(e=>e.boardId===t&&e.cardId===n)||e.value.running.some(e=>e.boardId===t&&e.cardId===n)}function a(t,n){let r=e.value.items.find(e=>e.boardId===t&&e.cardId===n);return r?r.id:e.value.running.find(e=>e.boardId===t&&e.cardId===n)?.id??null}async function o(e){await x.kanbanQueue.add.mutate(e)}async function s(e){await x.kanbanQueue.addColumn.mutate(e)}async function ee(e){await x.kanbanQueue.remove.mutate({itemId:e})}async function c(){await x.kanbanQueue.stopAll.mutate()}async function te(e){await x.kanbanQueue.setMaxConcurrent.mutate({max:e})}return{state:e,init:n,destroy:r,isCardInQueue:i,getCardQueueItemId:a,addCard:o,addColumn:s,removeItem:ee,stopAll:c,setMaxConcurrent:te}});var ke={key:0,class:`kb`},Ae={class:`kb-header`},je={class:`kb-header__title`},Me={class:`kb-header__search`},Ne={key:0,class:`kb-header__saving`},Pe={class:`kb-board`},Fe=[`data-col-id`,`onDragstart`,`onDragover`,`onDragleave`,`onDrop`,`onTouchstart`],Ie={class:`kb-col__header`},Le=[`value`,`onBlur`],Re={class:`kb-col__header-right`},ze={class:`kb-col__count`},Be={class:`kb-col__cards`},Ve=[`data-card-id`,`onDragstart`,`onDragover`,`onTouchstart`,`onClick`],He={class:`kb-card__top`},Ue={class:`kb-card__title`},We={class:`kb-card__actions`},Ge=[`onClick`],Ke=[`onClick`],qe={key:0,class:`kb-card__badges`},Je={key:0,class:`pi pi-align-left`},Ye={key:1,class:`kb-card__img-badge`},Xe={key:2,class:`kb-card__ai-badge kb-card__ai-badge--streaming`},Ze={key:3,class:`kb-card__ai-badge kb-card__ai-badge--unread`},Qe={key:0,class:`kb-col__empty`},$e=[`onClick`],et={class:`kb-add-col`},tt={key:0,class:`kb-add-col__form`},nt={class:`kb-add-col__actions`},rt={key:0,class:`kb-dialog`},it={class:`kb-dialog__edit-content`},at={class:`kb-dialog__field`},ot={class:`kb-dialog__label`},st={class:`kb-dialog__field`},ct={class:`kb-dialog__label`},lt={class:`kb-dialog__field`},ut={class:`kb-dialog__label`},dt={key:0,class:`kb-dialog__images`},ft=[`src`],pt=[`onClick`],mt={class:`kb-dialog__upload`},ht={class:`kb-dialog__actions-zone`},gt={class:`kb-dialog__label`},_t={class:`kb-dialog__actions-buttons`},vt={class:`kb-dialog__danger-zone`},yt={class:`kb-comments`},bt={class:`kb-comments__input`},xt={key:0,class:`kb-comments__empty`},St={key:1,class:`kb-comments__list`},Ct=[`onClick`],wt={class:`kb-comments__avatar`},Tt={class:`kb-comments__body`},Et={class:`kb-comments__meta`},Dt={class:`kb-comments__author`},Ot={class:`kb-comments__time`},kt=[`innerHTML`],At={class:`kb-history`},jt={key:0,class:`kb-history__empty`},Mt={key:1,class:`kb-history__timeline`},Nt=[`onClick`],Pt={class:`kb-history__icon`},Ft={class:`kb-history__body`},It={class:`kb-history__label`},Lt={key:0,class:`pi pi-external-link`,style:{"font-size":`0.625rem`,"margin-left":`0.25rem`}},Rt={key:0,class:`kb-history__detail`},zt={class:`kb-history__time`},Bt={class:`kb-dialog__footer`},Vt={class:`kb-populate`},Ht={class:`kb-populate__hint`},Ut={class:`kb-dialog__footer`},Wt={key:0,class:`kb-queue-panel`},Gt={class:`kb-queue-panel__header`},Kt={class:`kb-queue-panel__title`},qt={class:`kb-queue-panel__concurrency`},Jt={class:`kb-queue-panel__concurrency-label`},Yt={class:`kb-queue-panel__concurrency-ctrl`},Xt={key:0,class:`kb-queue-panel__section`},Zt={class:`kb-queue-panel__section-title`},Qt={class:`kb-queue-item__title`},$t={key:1,class:`kb-queue-panel__section`},en={class:`kb-queue-panel__section-title`},tn={class:`kb-queue-item__title`},nn={key:2,class:`kb-queue-panel__empty`},rn={class:`kb-queue-panel__footer`},an={class:`kb-queue-col-dialog`},on={class:`kb-queue-col-dialog__field`},sn=[`disabled`],cn=[`disabled`],ln={class:`kb-queue-col-dialog__field`},un={value:``},dn=[`value`],fn={class:`kb-dialog__footer`},pn=400,mn=8,hn=60,gn=12,_n=a(ye({__name:`KanbanBoardPage`,props:{id:{}},setup(a){function ce(e){return ee.sanitize(o.parse(e,{async:!1}))}let{t:x}=le(),ye=se(),_n=g(null),vn=g(`edit`),w=g(``),T=ie(),{claudeCodeAvailable:yn,codexAvailable:bn,providers:xn}=ne(T),E=ue();re(()=>{T.init()});let D=g(!1),Sn=g(null),Cn=``,wn=null;function Tn(){return{kanbanBoardId:k.value?.id,kanbanCardId:wn?.card.id}}function En(e,t,n){if(!k.value||!wn)return;let{colId:r,card:i}=wn,a=k.value.columns.find(e=>e.id===r);if(!a)return;let o=a.cards.find(e=>e.id===i.id);o&&(o.history=[...o.history??[],{type:t,timestamp:new Date().toISOString(),detail:n??e}],Y())}function Dn(){let e=P.value;_r();let t=F.value||e?.card.title||``,n=I.value||e?.card.markdown||``;Cn=n?`${t}\n\n${n}`:t,wn=e?{...e}:null,D.value=!0}function On(e,t,n){D.value=!1,Sn.value?.showScenarioDialog(e,Cn,t,n??void 0)}async function kn(e,t){D.value=!1,await An(e===`keep`?void 0:e,t??void 0)}async function An(e,t){let n=Cn,r=await T.createConversation({title:`Kanban: ${F.value||`Card`}`,runner:e,providerId:t,...Tn()});r&&En(r.id,`conversation_started`),P.value=null,n?E.openWithKanbanContext(n):E.open()}async function jn(e,t,n,r){let i=t||Cn,a=await T.createConversation({scenarioId:e,scenarioInput:i,title:`Kanban: ${F.value||`Card`}`,...Tn()});if(i&&a){let t=n!==`keep`||r.trim()?{...n===`keep`?{}:{runnerOverride:n},...r.trim()?{modelOverride:r.trim()}:{}}:void 0;T.startScenarioRun(a.id,e,i,void 0,t),En(a.id,`scenario_started`,`Scenario run — ${a.id}`)}P.value=null,E.open()}let Mn=fe(()=>P.value?(P.value.card.history??[]).filter(e=>e.type===`comment`):[]);function Nn(){if(!P.value||!w.value.trim())return;let e=P.value.card,t=T.activeConversation?.id;e.history=[...e.history??[],{type:`comment`,timestamp:new Date().toISOString(),detail:w.value.trim(),author:`user`,...t?{conversationId:t}:{}}],w.value=``,Y()}let Pn=new Set([`conversation_started`,`scenario_started`]);function Fn(e){return e.type===`comment`?!!e.conversationId:Pn.has(e.type)&&!!e.detail}function In(e){if(!Fn(e))return;let t;t=e.type===`comment`?e.conversationId:e.detail.includes(` — `)?e.detail.split(` — `).pop():e.detail,T.selectConversation(t),P.value=null,E.open()}function Ln(e,t,n){e.history=[...e.history??[],{type:t,timestamp:new Date().toISOString(),detail:n}]}function Rn(e){return k.value?.columns.find(t=>t.id===e)?.title??`Unknown`}let zn={created:`pi pi-plus-circle`,edited:`pi pi-pencil`,moved:`pi pi-arrow-right-arrow-left`,image_added:`pi pi-image`,image_removed:`pi pi-trash`,title_changed:`pi pi-tag`,conversation_started:`pi pi-comments`,scenario_started:`pi pi-sitemap`,comment:`pi pi-comment`},Bn=fe(()=>({created:x(`kanban.board.history.events.created`),edited:x(`kanban.board.history.events.edited`),moved:x(`kanban.board.history.events.moved`),image_added:x(`kanban.board.history.events.image_added`),image_removed:x(`kanban.board.history.events.image_removed`),title_changed:x(`kanban.board.history.events.title_changed`),conversation_started:x(`kanban.board.history.events.conversation_started`),scenario_started:x(`kanban.board.history.events.scenario_started`),comment:x(`kanban.board.history.events.comment`)}));function Vn(e){let t=new Date(e);return t.toLocaleDateString(void 0,{day:`numeric`,month:`short`,year:`numeric`})+` `+t.toLocaleTimeString(void 0,{hour:`2-digit`,minute:`2-digit`})}let Hn=a,Un=r(),Wn=be(),O=me(),k=g(null),A=g(!1),j=g(``),M=g(!1),N=g(``),P=g(null),F=g(``),I=g(``),L=g([]),R=g(null),z=g(null),B=g(null),V=g(`after`),H=g(null),U=g(null),Gn=g(`after`),W=Oe(),Kn=g(!1),G=g(!1),qn=g(``),Jn=g(``),Yn=g(``),Xn=g([]);re(async()=>{W.init();try{let{trpc:e}=await he(async()=>{let{trpc:e}=await import(`./trpc-BFwMZelk.js`);return{trpc:e}},__vite__mapDeps([0,1,2]));Xn.value=(await e.scenario.list.query()).map(e=>({id:e.id,name:e.name}))}catch{}}),oe(()=>W.destroy());function Zn(e){qn.value=e,Jn.value=``,Yn.value=``,G.value=!0}async function Qn(){k.value&&(await W.addColumn({boardId:k.value.id,columnId:qn.value,runner:Jn.value||void 0,scenarioId:Yn.value||void 0}),G.value=!1)}async function $n(e){if(!k.value)return;let t=W.getCardQueueItemId(k.value.id,e.id);t?await W.removeItem(t):await W.addCard({boardId:k.value.id,cardId:e.id})}let K=g(!1),q=g(!1),J=g(``);async function er(e,t){if(!k.value||!J.value.trim())return;let n=J.value.trim(),r=await T.createConversation({title:`Kanban populate: ${k.value.name.slice(0,30)}`,runner:e,providerId:t,kanbanBoardId:k.value.id});if(q.value=!1,J.value=``,r){if(e===`claude-code`){E.openWithPopulateContext(n);return}E.openPopulate(),await pe(),T.send(n,()=>{})}}async function tr(e,t,n){if(!k.value||!J.value.trim())return;let r=J.value.trim(),i=await T.createConversation({title:`Kanban populate: ${k.value.name.slice(0,30)}`,scenarioId:e,scenarioInput:r,...t===`keep`?{}:{runner:t},...n?{providerId:n}:{},kanbanBoardId:k.value.id});q.value=!1,J.value=``,i&&(T.startScenarioRun(i.id,e,r,void 0,t===`keep`?void 0:{runnerOverride:t}),E.open())}function nr(){J.value=``,K.value=!0}function rr(){J.value.trim()&&(K.value=!1,T.fetchProviders(),T.checkCliAvailability(),q.value=!0)}async function ir(e,t){await er(e===`keep`?void 0:e,t??void 0)}async function ar(e,t,n){await tr(e,t,n)}re(async()=>{let e=await O.fetchOne(Hn.id);if(!e){Un.push(`/kanban`);return}k.value={...e},O.subscribeToChanges();let t=Wn.query.card;if(t){for(let n of e.columns){let e=n.cards.find(e=>e.id===t);if(e){mr(n.id,e);break}}Un.replace({query:{...Wn.query,card:void 0}})}}),oe(()=>{O.unsubscribeFromChanges()}),e(()=>O.boards.find(e=>e.id===Hn.id),e=>{e&&!A.value&&(k.value={...e})});let or=fe(()=>k.value?[...k.value.columns].sort((e,t)=>e.order-t.order).map(e=>({...e,cards:[...e.cards].sort((e,t)=>e.order-t.order)})):[]),sr=fe(()=>{let e=N.value.trim().toLowerCase();return e?or.value.map(t=>({...t,cards:t.cards.filter(t=>t.title.toLowerCase().includes(e)||t.markdown&&t.markdown.toLowerCase().includes(e))})):or.value}),cr=null;function Y(){k.value&&(cr&&clearTimeout(cr),cr=setTimeout(async()=>{if(!(!k.value||A.value)){A.value=!0;try{let e=await O.update(k.value.id,{columns:k.value.columns});e&&(k.value={...e})}finally{A.value=!1}}},300))}function lr(){if(!k.value||!j.value.trim())return;let e={id:Ee(),title:j.value.trim(),order:k.value.columns.length,cards:[]};k.value.columns=[...k.value.columns,e],j.value=``,M.value=!1,Y()}function ur(e){if(!k.value)return;let t=k.value.columns.find(t=>t.id===e);ye.require({message:x(`kanban.board.column.confirmDeleteMessage`,{title:t?.title??``,count:t?.cards.length??0}),header:x(`kanban.board.column.confirmDeleteHeader`),icon:`pi pi-trash`,acceptClass:`p-button-danger`,accept:()=>{k.value&&(k.value.columns=k.value.columns.filter(t=>t.id!==e),Y())}})}function dr(e,t){!k.value||!t.trim()||(k.value.columns=k.value.columns.map(n=>n.id===e?{...n,title:t.trim()}:n),Y())}function fr(e){if(!k.value)return;let t=k.value.columns.find(t=>t.id===e);if(!t)return;let n=new Date().toISOString();mr(e,{id:Ee(),title:x(`kanban.board.card.defaultTitle`),markdown:``,images:[],order:t.cards.length,history:[{type:`created`,timestamp:n,detail:x(`kanban.board.card.inColumn`,{name:Rn(e)})}],createdAt:n,updatedAt:n})}function pr(e){return!e||/^<[a-z][\s\S]*>/i.test(e.trim())?e:o.parse(e,{async:!1})}function mr(e,t){P.value={colId:e,card:{...t,history:[...t.history??[]]}},F.value=t.title,I.value=pr(t.markdown),L.value=[...t.images],vn.value=`edit`}function hr(e){return(e.history??[]).filter(e=>e.type===`conversation_started`||e.type===`scenario_started`).map(e=>{let t=e.detail??``;return t.includes(` — `)?t.split(` — `).pop():t}).filter(Boolean)}function gr(e){if(W.state.running.some(t=>t.cardId===e.id))return`streaming`;if(W.state.items.some(t=>t.cardId===e.id))return`unread`;let t=hr(e);return t.some(e=>T.streamingConvIds.has(e))?`streaming`:t.some(e=>T.unreadConvIds.has(e))?`unread`:null}e(vn,e=>{(e===`comments`||e===`history`)&&P.value&&hr(P.value.card).forEach(e=>T.markRead(e))});function _r(){if(!k.value||!P.value)return;let{colId:e,card:t}=P.value,n=F.value||x(`kanban.board.card.untitled`),r=[...t.history??[]];n!==t.title&&t.title!==x(`kanban.board.card.defaultTitle`)&&r.push({type:`title_changed`,timestamp:new Date().toISOString(),detail:`"${t.title}" → "${n}"`}),I.value!==t.markdown&&r.push({type:`edited`,timestamp:new Date().toISOString()});let i=L.value.length-t.images.length;i>0?r.push({type:`image_added`,timestamp:new Date().toISOString(),detail:`${i} image(s) added`}):i<0&&r.push({type:`image_removed`,timestamp:new Date().toISOString(),detail:`${Math.abs(i)} image(s) removed`});let a={...t,title:n,markdown:I.value,images:L.value,history:r,updatedAt:new Date().toISOString()};k.value.columns=k.value.columns.map(t=>t.id===e?t.cards.find(e=>e.id===a.id)?{...t,cards:t.cards.map(e=>e.id===a.id?a:e)}:{...t,cards:[...t.cards,a]}:t),P.value=null,Y()}function vr(e,t){if(!k.value)return;let n=k.value.columns.find(t=>t.id===e)?.cards.find(e=>e.id===t);ye.require({message:x(`kanban.board.editor.confirmDeleteMessage`,{title:n?.title??``}),header:x(`kanban.board.editor.confirmDeleteHeader`),icon:`pi pi-trash`,acceptClass:`p-button-danger`,accept:()=>{k.value&&(k.value.columns=k.value.columns.map(n=>n.id===e?{...n,cards:n.cards.filter(e=>e.id!==t)}:n),P.value=null,Y())}})}function yr(e){let t=e.target;if(t.files){for(let e of Array.from(t.files)){if(!e.type.startsWith(`image/`)||e.size>5*1024*1024)continue;let t=new FileReader;t.onload=()=>{typeof t.result==`string`&&(L.value=[...L.value,t.result],_n.value?.insertImage(t.result))},t.readAsDataURL(e)}t.value=``}}function br(e){ye.require({message:x(`kanban.board.editor.confirmRemoveImageMessage`),header:x(`kanban.board.editor.confirmRemoveImageHeader`),icon:`pi pi-trash`,acceptClass:`p-button-danger`,accept:()=>{L.value=L.value.filter((t,n)=>n!==e)}})}let X=g(null),Z=g(null),Q=g(!1),$=null,xr=null,Sr=null;function Cr(e,t){$&&cancelAnimationFrame($);let n=document.querySelector(`.kb-board`),r=()=>{let i=!1;if(n){let t=n.getBoundingClientRect();e<t.left+hn&&n.scrollLeft>0?(n.scrollLeft-=gn,i=!0):e>t.right-hn&&n.scrollLeft<n.scrollWidth-n.clientWidth&&(n.scrollLeft+=gn,i=!0)}Z.value&&(Z.value.style.display=`none`);let a=document.elementFromPoint(e,t);if(Z.value&&(Z.value.style.display=``),a){let e=a.closest(`.kb-col__cards`);if(e){let n=e.getBoundingClientRect();t<n.top+hn&&e.scrollTop>0?(e.scrollTop-=gn,i=!0):t>n.bottom-hn&&e.scrollTop<e.scrollHeight-e.clientHeight&&(e.scrollTop+=gn,i=!0)}}$=i&&Q.value?requestAnimationFrame(r):null};$=requestAnimationFrame(r)}function wr(){$&&=(cancelAnimationFrame($),null)}function Tr(){xr&&=(clearTimeout(xr),null),Sr=null}function Er(){if(!Sr)return;let{type:e,colId:t,cardId:n,el:r}=Sr;X.value=e,Q.value=!0,e===`card`&&n?(R.value={colId:t,cardId:n},H.value=null):(H.value=t,R.value=null),navigator.vibrate&&navigator.vibrate(30);let i=e===`card`?r.closest(`.kb-card`):r.closest(`.kb-col`);if(i){let e=i.cloneNode(!0);e.style.cssText=`position:fixed;pointer-events:none;z-index:9999;opacity:0.8;width:${i.getBoundingClientRect().width}px;transform:rotate(2deg);`,document.body.appendChild(e),Z.value=e}Sr=null}function Dr(e,t,n,r){Tr();let i=e.touches[0],a=i.clientX,o=i.clientY;Sr={type:t,colId:n,cardId:r,el:e.target};let s=e=>{let t=e.touches[0],n=t.clientX-a,r=t.clientY-o;Math.sqrt(n*n+r*r)>mn&&(Tr(),document.removeEventListener(`touchmove`,s))};document.addEventListener(`touchmove`,s,{passive:!0}),xr=setTimeout(()=>{document.removeEventListener(`touchmove`,s),Er()},pn)}function Or(e){if(!Q.value)return;e.preventDefault();let t=e.touches[0];Z.value&&(Z.value.style.left=`${t.clientX-40}px`,Z.value.style.top=`${t.clientY-20}px`),Cr(t.clientX,t.clientY),Z.value&&(Z.value.style.display=`none`);let n=document.elementFromPoint(t.clientX,t.clientY);if(Z.value&&(Z.value.style.display=``),n){if(X.value===`card`){let e=n.closest(`.kb-card`),r=n.closest(`.kb-col`);if(e&&r){let n=e.dataset.cardId||``,i=r.dataset.colId||``;if(n&&i){z.value=i,B.value=n;let r=e.getBoundingClientRect();V.value=t.clientY-r.top<r.height/2?`before`:`after`}}else if(r){let e=r.dataset.colId||``;e&&(z.value=e,B.value=null)}}else if(X.value===`column`){let e=n.closest(`.kb-col`);if(e){let n=e.dataset.colId||``;if(n&&n!==H.value){U.value=n;let r=e.getBoundingClientRect();Gn.value=t.clientX-r.left<r.width/2?`before`:`after`}}}}}function kr(){Tr(),wr(),Z.value&&=(Z.value.remove(),null),Q.value&&(X.value===`card`&&z.value?Nr(z.value):X.value===`column`&&U.value&&Rr(U.value)),X.value=null,Q.value=!1,jr()}function Ar(e,t,n){R.value={colId:t,cardId:n},H.value=null,e.dataTransfer&&(e.dataTransfer.effectAllowed=`move`,e.dataTransfer.setData(`type`,`card`))}function jr(){R.value=null,z.value=null,B.value=null,H.value=null,U.value=null}function Mr(e,t,n){if(!R.value)return;e.preventDefault(),e.stopPropagation(),e.dataTransfer&&(e.dataTransfer.dropEffect=`move`),z.value=t,B.value=n;let r=e.currentTarget.getBoundingClientRect();V.value=e.clientY-r.top<r.height/2?`before`:`after`}function Nr(e){if(!k.value)return;if(H.value){Rr(e);return}if(!R.value)return;let{colId:t,cardId:n}=R.value,r=Rn(t),i=Rn(e),a=null;if(k.value.columns=k.value.columns.map(e=>e.id===t?(a=e.cards.find(e=>e.id===n)??null,{...e,cards:e.cards.filter(e=>e.id!==n)}):e),a){let n={...a};t!==e&&Ln(n,`moved`,`"${r}" → "${i}"`),k.value.columns=k.value.columns.map(t=>{if(t.id!==e)return t;let r=[...t.cards].sort((e,t)=>e.order-t.order),i=r.length;if(B.value){let e=r.findIndex(e=>e.id===B.value);e!==-1&&(i=V.value===`before`?e:e+1)}return r.splice(i,0,n),{...t,cards:r.map((e,t)=>({...e,order:t}))}})}R.value=null,z.value=null,B.value=null,Y()}function Pr(e,t){!R.value&&!H.value||(e.preventDefault(),e.dataTransfer&&(e.dataTransfer.dropEffect=`move`),R.value&&(z.value=t,B.value=null))}function Fr(e){z.value===e&&(z.value=null)}function Ir(e,t){H.value=t,R.value=null,e.dataTransfer&&(e.dataTransfer.effectAllowed=`move`,e.dataTransfer.setData(`type`,`column`))}function Lr(e,t){if(!H.value||H.value===t)return;e.preventDefault(),e.stopPropagation(),e.dataTransfer&&(e.dataTransfer.dropEffect=`move`),U.value=t;let n=e.currentTarget.getBoundingClientRect();Gn.value=e.clientX-n.left<n.width/2?`before`:`after`}function Rr(e){if(!k.value||!H.value||H.value===e){H.value=null,U.value=null;return}let t=[...k.value.columns].sort((e,t)=>e.order-t.order),n=t.findIndex(e=>e.id===H.value),r=t.splice(n,1)[0],i=t.findIndex(t=>t.id===e),a=Gn.value===`before`?i:i+1;t.splice(a,0,r),k.value.columns=t.map((e,t)=>({...e,order:t})),H.value=null,U.value=null,Y()}return(e,r)=>{let a=te(`tooltip`);return k.value?(n(),m(`div`,ke,[y(`header`,Ae,[d(i(s),{icon:`pi pi-arrow-left`,text:``,rounded:``,size:`small`,onClick:r[0]||=e=>i(Un).push(`/kanban`)}),y(`h1`,je,v(k.value.name),1),d(i(s),{label:i(x)(`kanban.board.aiPopulate`),icon:`pi pi-sparkles`,severity:`secondary`,outlined:``,size:`small`,onClick:nr},null,8,[`label`]),d(i(s),{label:i(x)(`kanban.board.queue.panelHeader`),icon:`pi pi-list`,severity:`secondary`,outlined:``,size:`small`,badge:i(W).state.items.length+i(W).state.running.length>0?String(i(W).state.items.length+i(W).state.running.length):void 0,"badge-severity":`warn`,onClick:r[1]||=e=>Kn.value=!Kn.value},null,8,[`label`,`badge`]),y(`span`,Me,[r[32]||=y(`i`,{class:`pi pi-search`},null,-1),d(i(de),{modelValue:N.value,"onUpdate:modelValue":r[2]||=e=>N.value=e,placeholder:i(x)(`kanban.board.searchPlaceholder`),size:`small`,class:`kb-header__search-input`},null,8,[`modelValue`,`placeholder`]),N.value?(n(),_e(i(s),{key:0,icon:`pi pi-times`,text:``,rounded:``,size:`small`,onClick:r[3]||=e=>N.value=``})):p(``,!0)]),A.value?(n(),m(`span`,Ne,[r[33]||=y(`i`,{class:`pi pi-spin pi-spinner`,style:{"font-size":`0.75rem`}},null,-1),h(` `+v(i(x)(`kanban.board.saving`)),1)])):p(``,!0)]),y(`div`,Pe,[(n(!0),m(f,null,l(sr.value,e=>(n(),m(`div`,{key:e.id,class:c([`kb-col`,{"kb-col--dragover":z.value===e.id&&!!R.value,"kb-col--dragging":H.value===e.id,"kb-col--col-drop-before":U.value===e.id&&Gn.value===`before`,"kb-col--col-drop-after":U.value===e.id&&Gn.value===`after`}]),"data-col-id":e.id,draggable:`true`,onDragstart:t=>Ir(t,e.id),onDragover:t=>{Lr(t,e.id),Pr(t,e.id)},onDragleave:t=>Fr(e.id),onDrop:C(t=>Nr(e.id),[`prevent`]),onDragend:jr,onTouchstart:t=>Dr(t,`column`,e.id),onTouchmove:Or,onTouchend:kr,onContextmenu:r[7]||=C(()=>{},[`prevent`])},[y(`div`,Ie,[y(`input`,{class:`kb-col__title`,value:e.title,onBlur:t=>dr(e.id,t.target.value),onKeyup:r[4]||=b(e=>e.target.blur(),[`enter`]),onMousedown:r[5]||=C(()=>{},[`stop`]),draggable:`false`},null,40,Le),y(`div`,Re,[_(d(i(s),{icon:`pi pi-list`,text:``,rounded:``,size:`small`,onClick:C(t=>Zn(e.id),[`stop`])},null,8,[`onClick`]),[[a,i(x)(`kanban.board.queue.addColumnTooltip`),void 0,{bottom:!0}]]),_(d(i(s),{icon:`pi pi-trash`,text:``,rounded:``,size:`small`,severity:`danger`,onClick:t=>ur(e.id)},null,8,[`onClick`]),[[a,i(x)(`kanban.board.column.deleteTooltip`),void 0,{bottom:!0}]]),y(`span`,ze,v(e.cards.length),1)])]),y(`div`,Be,[(n(!0),m(f,null,l(e.cards,t=>(n(),m(`div`,{key:t.id,class:c([`kb-card`,{"kb-card--drop-before":B.value===t.id&&V.value===`before`,"kb-card--drop-after":B.value===t.id&&V.value===`after`}]),"data-card-id":t.id,draggable:`true`,onDragstart:C(n=>Ar(n,e.id,t.id),[`stop`]),onDragover:n=>Mr(n,e.id,t.id),onDragend:jr,onTouchstart:C(n=>Dr(n,`card`,e.id,t.id),[`stop`]),onTouchmove:Or,onTouchend:kr,onContextmenu:r[6]||=C(()=>{},[`prevent`]),onClick:n=>mr(e.id,t)},[y(`div`,He,[y(`span`,Ue,v(t.title),1),y(`div`,We,[_((n(),m(`button`,{class:c([`kb-card__queue-btn`,{"kb-card__queue-btn--active":k.value&&i(W).isCardInQueue(k.value.id,t.id)}]),onClick:C(e=>$n(t),[`stop`])},[...r[34]||=[y(`i`,{class:`pi pi-list`},null,-1)]],10,Ge)),[[a,k.value&&i(W).isCardInQueue(k.value.id,t.id)?i(x)(`kanban.board.queue.tooltipInQueue`):i(x)(`kanban.board.queue.tooltip`),void 0,{bottom:!0}]]),_((n(),m(`button`,{class:`kb-card__delete`,onClick:C(n=>vr(e.id,t.id),[`stop`])},[...r[35]||=[y(`i`,{class:`pi pi-times`},null,-1)]],8,Ke)),[[a,i(x)(`kanban.board.card.deleteTooltip`),void 0,{bottom:!0}]])])]),t.markdown||t.images.length||gr(t)?(n(),m(`div`,qe,[t.markdown?(n(),m(`i`,Je)):p(``,!0),t.images.length?(n(),m(`span`,Ye,[r[36]||=y(`i`,{class:`pi pi-image`},null,-1),h(` `+v(t.images.length),1)])):p(``,!0),gr(t)===`streaming`?_((n(),m(`span`,Xe,null,512)),[[a,i(x)(`kanban.board.aiStatus.streaming`),void 0,{bottom:!0}]]):gr(t)===`unread`?_((n(),m(`span`,Ze,null,512)),[[a,i(x)(`kanban.board.aiStatus.unread`),void 0,{bottom:!0}]]):p(``,!0)])):p(``,!0)],42,Ve))),128)),e.cards.length===0?(n(),m(`div`,Qe,v(i(x)(`kanban.board.column.dropZone`)),1)):p(``,!0)]),y(`button`,{class:`kb-col__add-card`,onClick:t=>fr(e.id)},[r[37]||=y(`i`,{class:`pi pi-plus`},null,-1),h(` `+v(i(x)(`kanban.board.column.addCard`)),1)],8,$e)],42,Fe))),128)),y(`div`,et,[M.value?(n(),m(`div`,tt,[d(i(de),{modelValue:j.value,"onUpdate:modelValue":r[8]||=e=>j.value=e,placeholder:i(x)(`kanban.board.column.titlePlaceholder`),autofocus:``,onKeyup:[b(lr,[`enter`]),r[9]||=b(e=>M.value=!1,[`escape`])],class:`w-full`},null,8,[`modelValue`,`placeholder`]),y(`div`,nt,[d(i(s),{label:i(x)(`kanban.board.addColumnButton`),size:`small`,onClick:lr,disabled:!j.value.trim()},null,8,[`label`,`disabled`]),d(i(s),{icon:`pi pi-times`,text:``,size:`small`,onClick:r[10]||=e=>M.value=!1})])])):(n(),m(`button`,{key:1,class:`kb-add-col__trigger`,onClick:r[11]||=e=>M.value=!0},[r[38]||=y(`i`,{class:`pi pi-plus`},null,-1),h(` `+v(i(x)(`kanban.board.addColumn`)),1)]))])]),d(i(u),{visible:!!P.value,header:i(x)(`kanban.board.editor.header`),modal:!0,style:{width:`750px`},breakpoints:{"800px":`95vw`},"onUpdate:visible":r[18]||=e=>{e||(P.value=null)}},{footer:S(()=>[y(`div`,Bt,[d(i(s),{label:i(x)(`actions.cancel`),text:``,onClick:r[17]||=e=>P.value=null},null,8,[`label`]),d(i(s),{label:i(x)(`actions.save`),icon:`pi pi-check`,onClick:_r},null,8,[`label`])])]),default:S(()=>[P.value?(n(),m(`div`,rt,[d(i(xe),{value:vn.value,"onUpdate:value":r[16]||=e=>vn.value=e},{default:S(()=>[d(i(Se),null,{default:S(()=>[d(i(we),{value:`edit`},{default:S(()=>[r[39]||=y(`i`,{class:`pi pi-pencil`,style:{"margin-right":`0.375rem`}},null,-1),h(v(i(x)(`kanban.board.editor.tabs.edit`)),1)]),_:1}),d(i(we),{value:`comments`},{default:S(()=>[r[40]||=y(`i`,{class:`pi pi-comments`,style:{"margin-right":`0.375rem`}},null,-1),h(v(i(x)(`kanban.board.editor.tabs.comments`,{count:Mn.value.length})),1)]),_:1}),d(i(we),{value:`history`},{default:S(()=>[r[41]||=y(`i`,{class:`pi pi-history`,style:{"margin-right":`0.375rem`}},null,-1),h(v(i(x)(`kanban.board.editor.tabs.history`,{count:P.value.card.history?.length??0})),1)]),_:1})]),_:1}),d(i(Ce),null,{default:S(()=>[d(i(Te),{value:`edit`},{default:S(()=>[y(`div`,it,[y(`div`,at,[y(`label`,ot,v(i(x)(`kanban.board.editor.titleLabel`)),1),d(i(de),{modelValue:F.value,"onUpdate:modelValue":r[12]||=e=>F.value=e,autofocus:``,onKeyup:b(_r,[`enter`])},null,8,[`modelValue`])]),y(`div`,st,[y(`label`,ct,v(i(x)(`kanban.board.editor.contentLabel`)),1),d(De,{ref_key:`tiptapRef`,ref:_n,modelValue:I.value,"onUpdate:modelValue":r[13]||=e=>I.value=e,placeholder:i(x)(`kanban.board.editor.contentPlaceholder`)},null,8,[`modelValue`,`placeholder`])]),y(`div`,lt,[y(`label`,ut,v(i(x)(`kanban.board.editor.imagesLabel`)),1),L.value.length?(n(),m(`div`,dt,[(n(!0),m(f,null,l(L.value,(e,t)=>(n(),m(`div`,{key:t,class:`kb-dialog__thumb`},[y(`img`,{src:e,alt:`attachment`},null,8,ft),y(`button`,{class:`kb-dialog__thumb-remove`,onClick:e=>br(t)},[...r[42]||=[y(`i`,{class:`pi pi-times`},null,-1)]],8,pt)]))),128))])):p(``,!0),y(`label`,mt,[r[43]||=y(`i`,{class:`pi pi-upload`},null,-1),h(` `+v(i(x)(`kanban.board.editor.attachImage`))+` `,1),y(`input`,{type:`file`,accept:`image/*`,multiple:``,onChange:yr},null,32)])]),y(`div`,ht,[y(`label`,gt,v(i(x)(`kanban.board.editor.actionsLabel`)),1),y(`div`,_t,[d(i(s),{label:i(x)(`kanban.board.editor.launchAi`),icon:`pi pi-sparkles`,severity:`secondary`,outlined:``,size:`small`,onClick:Dn},null,8,[`label`])])]),y(`div`,vt,[d(i(s),{label:i(x)(`kanban.board.editor.deleteCard`),icon:`pi pi-trash`,severity:`danger`,text:``,size:`small`,onClick:r[14]||=e=>vr(P.value.colId,P.value.card.id)},null,8,[`label`])])])]),_:1}),d(i(Te),{value:`comments`},{default:S(()=>[y(`div`,yt,[y(`div`,bt,[d(i(de),{modelValue:w.value,"onUpdate:modelValue":r[15]||=e=>w.value=e,placeholder:i(x)(`kanban.board.comments.placeholder`),class:`w-full`,onKeyup:b(Nn,[`enter`])},null,8,[`modelValue`,`placeholder`]),d(i(s),{icon:`pi pi-send`,size:`small`,disabled:!w.value.trim(),onClick:Nn},null,8,[`disabled`])]),Mn.value.length?(n(),m(`div`,St,[(n(!0),m(f,null,l([...Mn.value].reverse(),(e,t)=>(n(),m(`div`,{key:t,class:c([`kb-comments__item`,{"kb-comments__item--ai":e.author===`ai`,"kb-comments__item--clickable":!!e.conversationId}]),onClick:t=>e.conversationId&&In(e)},[y(`div`,wt,[y(`i`,{class:c(e.author===`ai`?`pi pi-sparkles`:`pi pi-user`)},null,2)]),y(`div`,Tt,[y(`div`,Et,[y(`span`,Dt,v(e.author===`ai`?i(x)(`kanban.board.comments.authorAi`):i(x)(`kanban.board.comments.authorYou`)),1),y(`span`,Ot,v(Vn(e.timestamp)),1)]),y(`div`,{class:`kb-comments__text kb-comments__text--markdown`,innerHTML:ce(e.detail)},null,8,kt)])],10,Ct))),128))])):(n(),m(`div`,xt,[r[44]||=y(`i`,{class:`pi pi-comments`},null,-1),y(`span`,null,v(i(x)(`kanban.board.comments.empty`)),1)]))])]),_:1}),d(i(Te),{value:`history`},{default:S(()=>[y(`div`,At,[P.value.card.history?.length?(n(),m(`div`,Mt,[(n(!0),m(f,null,l([...P.value.card.history].reverse(),(e,t)=>(n(),m(`div`,{key:t,class:c([`kb-history__item`,{"kb-history__item--clickable":Fn(e)}]),onClick:t=>Fn(e)&&In(e)},[y(`div`,Pt,[y(`i`,{class:c(zn[e.type])},null,2)]),y(`div`,Ft,[y(`span`,It,[h(v(Bn.value[e.type])+` `,1),Fn(e)?(n(),m(`i`,Lt)):p(``,!0)]),e.detail?(n(),m(`span`,Rt,v(e.detail),1)):p(``,!0),y(`span`,zt,v(Vn(e.timestamp)),1)])],10,Nt))),128))])):(n(),m(`div`,jt,[r[45]||=y(`i`,{class:`pi pi-clock`},null,-1),y(`span`,null,v(i(x)(`kanban.board.history.empty`)),1)]))])]),_:1})]),_:1})]),_:1},8,[`value`])])):p(``,!0)]),_:1},8,[`visible`,`header`]),d(i(u),{visible:D.value,header:i(x)(`kanban.board.launchAiDialog.header`),modal:!0,style:{width:`700px`,maxHeight:`80vh`},breakpoints:{"800px":`95vw`},"onUpdate:visible":r[19]||=e=>{e||(D.value=!1)},pt:{content:{style:`overflow-y:auto`}}},{default:S(()=>[d(ae,{compact:``,onSelectScenario:On,onSkip:kn})]),_:1},8,[`visible`,`header`]),d(ge,{ref_key:`launchModalsRef`,ref:Sn,onConfirmScenarioStart:jn},null,512),d(i(u),{visible:K.value,header:i(x)(`kanban.board.populateDialog.header`),modal:!0,style:{width:`550px`},breakpoints:{"600px":`95vw`},"onUpdate:visible":r[22]||=e=>{e||(K.value=!1)}},{footer:S(()=>[y(`div`,Ut,[d(i(s),{label:i(x)(`actions.cancel`),text:``,onClick:r[21]||=e=>K.value=!1},null,8,[`label`]),d(i(s),{label:i(x)(`kanban.board.populateDialog.generate`),icon:`pi pi-sparkles`,onClick:rr,disabled:!J.value.trim()},null,8,[`label`,`disabled`])])]),default:S(()=>[y(`div`,Vt,[y(`p`,Ht,v(i(x)(`kanban.board.populateDialog.hint`)),1),d(i(ve),{modelValue:J.value,"onUpdate:modelValue":r[20]||=e=>J.value=e,placeholder:i(x)(`kanban.board.populateDialog.placeholder`),autoResize:!0,rows:`4`,class:`w-full`,onKeydown:[b(C(rr,[`ctrl`]),[`enter`]),b(C(rr,[`meta`]),[`enter`])]},null,8,[`modelValue`,`placeholder`,`onKeydown`])])]),_:1},8,[`visible`,`header`]),d(i(u),{visible:q.value,header:i(x)(`kanban.board.populateDialog.header`),modal:!0,style:{width:`700px`,maxHeight:`80vh`},breakpoints:{"800px":`95vw`},"onUpdate:visible":r[23]||=e=>{e||(q.value=!1)},pt:{content:{style:`overflow-y:auto`}}},{default:S(()=>[d(ae,{compact:``,onSelectScenario:ar,onSkip:ir})]),_:1},8,[`visible`,`header`]),Kn.value?(n(),m(`div`,Wt,[y(`div`,Gt,[y(`span`,Kt,v(i(x)(`kanban.board.queue.panelHeader`)),1),d(i(s),{icon:`pi pi-times`,text:``,rounded:``,size:`small`,onClick:r[24]||=e=>Kn.value=!1})]),y(`div`,qt,[y(`label`,Jt,v(i(x)(`kanban.board.queue.concurrency`)),1),y(`div`,Yt,[d(i(s),{icon:`pi pi-minus`,text:``,rounded:``,size:`small`,disabled:i(W).state.maxConcurrent<=1,onClick:r[25]||=e=>i(W).setMaxConcurrent(i(W).state.maxConcurrent-1)},null,8,[`disabled`]),y(`span`,null,v(i(W).state.maxConcurrent),1),d(i(s),{icon:`pi pi-plus`,text:``,rounded:``,size:`small`,onClick:r[26]||=e=>i(W).setMaxConcurrent(i(W).state.maxConcurrent+1)})])]),i(W).state.running.length>0?(n(),m(`div`,Xt,[y(`div`,Zt,v(i(x)(`kanban.board.queue.runningSection`,{count:i(W).state.running.length})),1),(n(!0),m(f,null,l(i(W).state.running.filter(e=>e.boardId===k.value?.id),e=>(n(),m(`div`,{key:e.id,class:`kb-queue-item kb-queue-item--running`},[r[46]||=y(`i`,{class:`pi pi-spin pi-spinner`},null,-1),y(`span`,Qt,v(k.value?.columns.flatMap(e=>e.cards).find(t=>t.id===e.cardId)?.title??e.cardId),1),d(i(s),{icon:`pi pi-stop`,text:``,rounded:``,size:`small`,severity:`danger`,onClick:t=>i(W).removeItem(e.id)},null,8,[`onClick`])]))),128))])):p(``,!0),i(W).state.items.length>0?(n(),m(`div`,$t,[y(`div`,en,v(i(x)(`kanban.board.queue.waitingSection`,{count:i(W).state.items.length})),1),(n(!0),m(f,null,l(i(W).state.items.filter(e=>e.boardId===k.value?.id),e=>(n(),m(`div`,{key:e.id,class:`kb-queue-item`},[r[47]||=y(`i`,{class:`pi pi-clock`},null,-1),y(`span`,tn,v(k.value?.columns.flatMap(e=>e.cards).find(t=>t.id===e.cardId)?.title??e.cardId),1),d(i(s),{icon:`pi pi-times`,text:``,rounded:``,size:`small`,onClick:t=>i(W).removeItem(e.id)},null,8,[`onClick`])]))),128))])):p(``,!0),i(W).state.items.length===0&&i(W).state.running.length===0?(n(),m(`div`,nn,v(i(x)(`kanban.board.queue.empty`)),1)):p(``,!0),y(`div`,rn,[d(i(s),{label:i(x)(`kanban.board.queue.stopAll`),icon:`pi pi-stop`,severity:`danger`,text:``,size:`small`,disabled:i(W).state.items.length===0&&i(W).state.running.length===0,onClick:r[27]||=e=>i(W).stopAll()},null,8,[`label`,`disabled`])])])):p(``,!0),d(i(u),{visible:G.value,header:i(x)(`kanban.board.queue.addColumnDialog.header`),modal:!0,style:{width:`420px`},"onUpdate:visible":r[31]||=e=>{e||(G.value=!1)}},{footer:S(()=>[y(`div`,fn,[d(i(s),{label:i(x)(`actions.cancel`),text:``,onClick:r[30]||=e=>G.value=!1},null,8,[`label`]),d(i(s),{label:i(x)(`kanban.board.queue.addColumnDialog.confirm`),icon:`pi pi-list`,onClick:Qn},null,8,[`label`])])]),default:S(()=>[y(`div`,an,[y(`div`,on,[y(`label`,null,v(i(x)(`kanban.board.queue.addColumnDialog.runner`)),1),_(y(`select`,{"onUpdate:modelValue":r[28]||=e=>Jn.value=e,class:`kb-queue-col-dialog__select`},[r[48]||=y(`option`,{value:``},`Auto`,-1),y(`option`,{value:`claude-code`,disabled:!i(yn)},`Claude Code`+v(i(yn)?``:` (non installé)`),9,sn),y(`option`,{value:`codex`,disabled:!i(bn)},`Codex`+v(i(bn)?``:` (non installé)`),9,cn)],512),[[t,Jn.value]])]),y(`div`,ln,[y(`label`,null,v(i(x)(`kanban.board.queue.addColumnDialog.scenario`)),1),_(y(`select`,{"onUpdate:modelValue":r[29]||=e=>Yn.value=e,class:`kb-queue-col-dialog__select`},[y(`option`,un,v(i(x)(`kanban.board.queue.addColumnDialog.noScenario`)),1),(n(!0),m(f,null,l(Xn.value,e=>(n(),m(`option`,{key:e.id,value:e.id},v(e.name),9,dn))),128))],512),[[t,Yn.value]])])])]),_:1},8,[`visible`,`header`])])):p(``,!0)}}}),[[`__scopeId`,`data-v-fbef5c3d`]]);export{_n as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.kb[data-v-fbef5c3d]{flex-direction:column;height:100%;display:flex;overflow:hidden}.kb-header[data-v-fbef5c3d]{border-bottom:1px solid var(--p-content-border-color);background:var(--p-surface-0);flex-shrink:0;align-items:center;gap:.5rem;padding:.625rem 1rem;display:flex}.kb-header__title[data-v-fbef5c3d]{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;margin:0;font-size:1.125rem;font-weight:600;overflow:hidden}.kb-header__search[data-v-fbef5c3d]{flex-shrink:0;align-items:center;gap:.375rem;display:flex}.kb-header__search-input[data-v-fbef5c3d]{width:180px}.kb-header__saving[data-v-fbef5c3d]{color:var(--p-text-muted-color);flex-shrink:0;align-items:center;gap:.375rem;font-size:.75rem;display:flex}.kb-board[data-v-fbef5c3d]{flex:1;align-items:flex-start;gap:.75rem;padding:1rem;display:flex;overflow:auto hidden}.kb-col[data-v-fbef5c3d]{background:var(--p-surface-100);-webkit-touch-callout:none;-webkit-user-select:none;touch-action:pan-x pan-y;border:2px solid #0000;border-radius:10px;flex-direction:column;flex-shrink:0;width:300px;max-height:100%;transition:border-color .15s;display:flex}.kb-col--dragover[data-v-fbef5c3d]{border-color:var(--p-primary-color);background:color-mix(in srgb, var(--p-primary-color) 5%, var(--p-surface-100))}.kb-col__header[data-v-fbef5c3d]{justify-content:space-between;align-items:center;gap:.5rem;padding:.625rem .75rem .5rem;display:flex}.kb-col__header-right[data-v-fbef5c3d]{flex-shrink:0;align-items:center;gap:.25rem;display:flex}.kb-col__header-right[data-v-fbef5c3d] .p-button{opacity:0;transition:opacity .15s}.kb-col:hover .kb-col__header-right[data-v-fbef5c3d] .p-button{opacity:1}.kb-col__title[data-v-fbef5c3d]{min-width:0;color:inherit;background:0 0;border:1px solid #0000;border-radius:4px;outline:none;flex:1;padding:.25rem .375rem;font-size:.875rem;font-weight:600;transition:all .15s}.kb-col__title[data-v-fbef5c3d]:hover{border-color:var(--p-content-border-color)}.kb-col__title[data-v-fbef5c3d]:focus{background:var(--p-surface-0);border-color:var(--p-primary-color);box-shadow:0 0 0 1px var(--p-primary-color)}.kb-col__count[data-v-fbef5c3d]{color:var(--p-text-muted-color);background:var(--p-surface-200);border-radius:10px;flex-shrink:0;padding:.125rem .5rem;font-size:.6875rem;font-weight:600;line-height:1.2}.kb-col__cards[data-v-fbef5c3d]{flex-direction:column;flex:1;gap:.375rem;min-height:40px;padding:0 .5rem;display:flex;overflow-y:auto}.kb-col__empty[data-v-fbef5c3d]{text-align:center;color:var(--p-text-muted-color);border:1px dashed var(--p-content-border-color);border-radius:6px;margin:.25rem 0;padding:1.5rem .75rem;font-size:.8125rem}.kb-card[data-v-fbef5c3d]{background:var(--p-surface-0);border:1px solid var(--p-content-border-color);cursor:grab;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;touch-action:pan-y;border-radius:6px;padding:.5rem .625rem;transition:box-shadow .15s,transform .1s}.kb-card[data-v-fbef5c3d]:hover{border-color:var(--p-primary-200,var(--p-content-border-color));box-shadow:0 2px 8px #00000014}.kb-card[data-v-fbef5c3d]:active{cursor:grabbing;transform:rotate(1deg)}.kb-card--drop-before[data-v-fbef5c3d]{border-top:2px solid var(--p-primary-color);margin-top:-1px}.kb-card--drop-after[data-v-fbef5c3d]{border-bottom:2px solid var(--p-primary-color);margin-bottom:-1px}.kb-col--dragging[data-v-fbef5c3d]{opacity:.5}.kb-col--col-drop-before[data-v-fbef5c3d]{border-left:3px solid var(--p-primary-color)}.kb-col--col-drop-after[data-v-fbef5c3d]{border-right:3px solid var(--p-primary-color)}.kb-card__top[data-v-fbef5c3d]{align-items:flex-start;gap:.25rem;display:flex}.kb-card__title[data-v-fbef5c3d]{min-width:0;color:var(--p-text-color);word-break:break-word;flex:1;font-size:.8125rem;line-height:1.4}.kb-card__delete[data-v-fbef5c3d]{width:20px;height:20px;color:var(--p-text-muted-color);cursor:pointer;opacity:0;background:0 0;border:none;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;font-size:.625rem;transition:opacity .15s,background .15s,color .15s;display:flex}.kb-card:hover .kb-card__delete[data-v-fbef5c3d]{opacity:1}.kb-card__delete[data-v-fbef5c3d]:hover{background:var(--p-red-50,#ef44441a);color:var(--p-red-500,#ef4444)}.kb-card__badges[data-v-fbef5c3d]{color:var(--p-text-muted-color);align-items:center;gap:.5rem;margin-top:.375rem;font-size:.6875rem;display:flex}.kb-card__img-badge[data-v-fbef5c3d]{align-items:center;gap:.2rem;display:inline-flex}.kb-card__ai-badge[data-v-fbef5c3d]{border-radius:50%;flex-shrink:0;width:8px;height:8px}.kb-card__ai-badge--streaming[data-v-fbef5c3d]{background:var(--p-yellow-500,#eab308);animation:1s ease-in-out infinite badge-blink-fbef5c3d}.kb-card__ai-badge--unread[data-v-fbef5c3d]{background:var(--p-green-500,#22c55e)}@keyframes badge-blink-fbef5c3d{0%,to{opacity:1}50%{opacity:.25}}.kb-col__add-card[data-v-fbef5c3d]{color:var(--p-text-muted-color);cursor:pointer;background:0 0;border:none;border-radius:6px;align-items:center;gap:.375rem;margin:.25rem .5rem .5rem;padding:.5rem .75rem;font-size:.8125rem;transition:all .15s;display:flex}.kb-col__add-card[data-v-fbef5c3d]:hover{background:var(--p-surface-200);color:var(--p-text-color)}.kb-add-col[data-v-fbef5c3d]{flex-shrink:0;width:300px}.kb-add-col__trigger[data-v-fbef5c3d]{background:var(--p-surface-100);border:1px dashed var(--p-content-border-color);width:100%;color:var(--p-text-muted-color);cursor:pointer;border-radius:10px;align-items:center;gap:.5rem;padding:.75rem 1rem;font-size:.875rem;transition:all .15s;display:flex}.kb-add-col__trigger[data-v-fbef5c3d]:hover{background:var(--p-surface-200);border-color:var(--p-primary-color);color:var(--p-primary-color)}.kb-add-col__form[data-v-fbef5c3d]{background:var(--p-surface-100);border-radius:10px;padding:.75rem}.kb-add-col__actions[data-v-fbef5c3d]{gap:.5rem;margin-top:.5rem;display:flex}.kb-dialog[data-v-fbef5c3d]{flex-direction:column;gap:1rem;display:flex}.kb-dialog__field[data-v-fbef5c3d]{flex-direction:column;gap:.375rem;display:flex}.kb-dialog__field[data-v-fbef5c3d] .p-inputtext,.kb-dialog__field[data-v-fbef5c3d] .p-textarea{width:100%}.kb-dialog__label[data-v-fbef5c3d]{color:var(--p-text-muted-color);font-size:.8125rem;font-weight:500}.kb-dialog__images[data-v-fbef5c3d]{flex-wrap:wrap;gap:.5rem;display:flex}.kb-dialog__thumb[data-v-fbef5c3d]{border:1px solid var(--p-content-border-color);border-radius:6px;width:110px;height:80px;position:relative;overflow:hidden}.kb-dialog__thumb img[data-v-fbef5c3d]{object-fit:cover;width:100%;height:100%;display:block}.kb-dialog__thumb-remove[data-v-fbef5c3d]{color:#fff;cursor:pointer;background:#0009;border:none;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-size:.625rem;transition:background .15s;display:flex;position:absolute;top:4px;right:4px}.kb-dialog__thumb-remove[data-v-fbef5c3d]:hover{background:var(--p-red-500,#ef4444)}.kb-dialog__upload[data-v-fbef5c3d]{cursor:pointer;color:var(--p-primary-color);align-items:center;gap:.375rem;padding:.375rem 0;font-size:.8125rem;transition:opacity .15s;display:inline-flex}.kb-dialog__upload[data-v-fbef5c3d]:hover{opacity:.8}.kb-dialog__upload input[data-v-fbef5c3d]{display:none}.kb-dialog__actions-zone[data-v-fbef5c3d]{border-top:1px solid var(--p-content-border-color);flex-direction:column;gap:.375rem;padding-top:.75rem;display:flex}.kb-dialog__actions-buttons[data-v-fbef5c3d]{flex-wrap:wrap;gap:.5rem;display:flex}.kb-dialog__danger-zone[data-v-fbef5c3d]{border-top:1px solid var(--p-content-border-color);padding-top:.75rem}.kb-dialog__footer[data-v-fbef5c3d]{justify-content:flex-end;gap:.5rem;display:flex}.kb-dialog__edit-content[data-v-fbef5c3d]{flex-direction:column;gap:1rem;padding-top:.5rem;display:flex}.kb-history[data-v-fbef5c3d]{padding:.5rem 0}.kb-history__empty[data-v-fbef5c3d]{color:var(--p-text-muted-color);flex-direction:column;align-items:center;gap:.5rem;padding:2.5rem 1rem;font-size:.875rem;display:flex}.kb-history__empty i[data-v-fbef5c3d]{opacity:.5;font-size:1.5rem}.kb-history__timeline[data-v-fbef5c3d]{flex-direction:column;padding-left:1.75rem;display:flex;position:relative}.kb-history__timeline[data-v-fbef5c3d]:before{content:"";background:var(--p-content-border-color);border-radius:1px;width:2px;position:absolute;top:.5rem;bottom:.5rem;left:.6875rem}.kb-history__item[data-v-fbef5c3d]{align-items:flex-start;gap:.75rem;padding:.5rem 0;display:flex;position:relative}.kb-history__item--clickable[data-v-fbef5c3d]{cursor:pointer;border-radius:6px;margin:0 -.375rem;padding:.5rem .375rem;transition:background .15s}.kb-history__item--clickable[data-v-fbef5c3d]:hover{background:var(--p-surface-100)}.kb-history__item--clickable:hover .kb-history__label[data-v-fbef5c3d]{color:var(--p-primary-color)}.kb-history__icon[data-v-fbef5c3d]{background:var(--p-surface-0);border:2px solid var(--p-content-border-color);z-index:1;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;display:flex;position:absolute;top:.5rem;left:-1.75rem}.kb-history__icon i[data-v-fbef5c3d]{color:var(--p-text-muted-color);font-size:.625rem}.kb-history__body[data-v-fbef5c3d]{flex-direction:column;gap:.125rem;min-width:0;display:flex}.kb-history__label[data-v-fbef5c3d]{color:var(--p-text-color);font-size:.8125rem;font-weight:500}.kb-history__detail[data-v-fbef5c3d]{color:var(--p-text-muted-color);word-break:break-word;font-size:.75rem}.kb-history__time[data-v-fbef5c3d]{color:var(--p-text-muted-color);opacity:.7;font-size:.6875rem}.kb-comments[data-v-fbef5c3d]{flex-direction:column;gap:1rem;display:flex}.kb-comments__input[data-v-fbef5c3d]{align-items:center;gap:.5rem;display:flex}.kb-comments__empty[data-v-fbef5c3d]{color:var(--p-text-muted-color);flex-direction:column;align-items:center;gap:.5rem;padding:2rem 0;font-size:.875rem;display:flex}.kb-comments__empty i[data-v-fbef5c3d]{opacity:.5;font-size:1.5rem}.kb-comments__list[data-v-fbef5c3d]{flex-direction:column;gap:.75rem;display:flex}.kb-comments__item[data-v-fbef5c3d]{background:var(--p-surface-50);border-radius:8px;align-items:flex-start;gap:.625rem;padding:.625rem .75rem;display:flex}.kb-comments__item--ai[data-v-fbef5c3d]{background:var(--p-primary-50,rgba(var(--p-primary-500), .06));border-left:3px solid var(--p-primary-color)}.kb-comments__item--clickable[data-v-fbef5c3d]{cursor:pointer;transition:background .15s,box-shadow .15s}.kb-comments__item--clickable[data-v-fbef5c3d]:hover{background:var(--p-surface-100);box-shadow:0 0 0 2px var(--p-primary-color)}.kb-comments__avatar[data-v-fbef5c3d]{background:var(--p-surface-200);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;display:flex}.kb-comments__item--ai .kb-comments__avatar[data-v-fbef5c3d]{background:var(--p-primary-100,rgba(var(--p-primary-500), .15));color:var(--p-primary-color)}.kb-comments__avatar i[data-v-fbef5c3d]{font-size:.75rem}.kb-comments__body[data-v-fbef5c3d]{flex-direction:column;flex:1;gap:.25rem;min-width:0;display:flex}.kb-comments__meta[data-v-fbef5c3d]{align-items:center;gap:.5rem;display:flex}.kb-comments__author[data-v-fbef5c3d]{color:var(--p-text-color);font-size:.8125rem;font-weight:600}.kb-comments__time[data-v-fbef5c3d]{color:var(--p-text-muted-color);font-size:.6875rem}.kb-comments__text[data-v-fbef5c3d]{color:var(--p-text-color);word-break:break-word;white-space:pre-wrap;font-size:.8125rem;line-height:1.5}.kb-comments__text--markdown[data-v-fbef5c3d]{white-space:normal}.kb-comments__text--markdown[data-v-fbef5c3d] p{margin:0 0 .25em}.kb-comments__text--markdown[data-v-fbef5c3d] p:last-child{margin-bottom:0}.kb-comments__text--markdown[data-v-fbef5c3d] h1,.kb-comments__text--markdown[data-v-fbef5c3d] h2,.kb-comments__text--markdown[data-v-fbef5c3d] h3{margin:.4em 0 .15em;font-weight:700}.kb-comments__text--markdown[data-v-fbef5c3d] ul,.kb-comments__text--markdown[data-v-fbef5c3d] ol{margin:.2em 0;padding-left:1.4em}.kb-comments__text--markdown[data-v-fbef5c3d] li{margin-bottom:.1em}.kb-comments__text--markdown[data-v-fbef5c3d] code{background:var(--p-content-hover-background);border-radius:4px;padding:.1em .35em;font-family:ui-monospace,monospace;font-size:.85em}.kb-comments__text--markdown[data-v-fbef5c3d] pre{background:color-mix(in srgb, var(--p-content-background) 60%, #000 40%);border-radius:6px;margin:.4em 0;padding:.6em .8em;overflow-x:auto}.kb-comments__text--markdown[data-v-fbef5c3d] pre code{background:0 0;padding:0}.kb-comments__text--markdown[data-v-fbef5c3d] blockquote{border-left:3px solid var(--p-primary-color);color:var(--p-text-muted-color);margin:.4em 0;padding:.2em .6em;font-style:italic}.kb-comments__text--markdown[data-v-fbef5c3d] a{color:var(--p-primary-color);text-decoration:underline}.kb-populate[data-v-fbef5c3d]{flex-direction:column;gap:.75rem;display:flex}.kb-populate__hint[data-v-fbef5c3d]{color:var(--p-text-muted-color);margin:0;font-size:.8125rem;line-height:1.5}.kb-populate__provider-section[data-v-fbef5c3d]{flex-direction:column;gap:.4rem;display:flex}.kb-populate__provider-label[data-v-fbef5c3d]{text-transform:uppercase;letter-spacing:.05em;opacity:.45;font-size:.75rem;font-weight:600}.kb-populate__provider-grid[data-v-fbef5c3d]{flex-wrap:wrap;gap:.5rem;display:flex}.kb-populate__provider-card[data-v-fbef5c3d]{border:1px solid var(--p-surface-200);cursor:pointer;background:var(--p-surface-0);border-radius:6px;align-items:center;gap:.4rem;padding:.4rem .75rem;font-size:.8rem;transition:border-color .15s;display:flex}.kb-populate__provider-card[data-v-fbef5c3d]:hover{border-color:var(--p-primary-color)}.kb-populate__provider-card--active[data-v-fbef5c3d]{border-color:var(--p-primary-color);background:color-mix(in srgb, var(--p-primary-color) 8%, var(--p-surface-0));font-weight:600}.kb-card__actions[data-v-fbef5c3d]{flex-shrink:0;align-items:center;gap:.125rem;display:flex}.kb-card__queue-btn[data-v-fbef5c3d]{width:20px;height:20px;color:var(--p-text-muted-color);cursor:pointer;opacity:0;background:0 0;border:none;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;font-size:.625rem;transition:opacity .15s,background .15s,color .15s;display:flex}.kb-card:hover .kb-card__queue-btn[data-v-fbef5c3d]{opacity:1}.kb-card__queue-btn--active[data-v-fbef5c3d]{opacity:1!important;color:var(--p-primary-color)!important}.kb-card__queue-btn[data-v-fbef5c3d]:hover{background:var(--p-primary-50,#6366f11a);color:var(--p-primary-color)}.kb-queue-panel[data-v-fbef5c3d]{background:var(--p-surface-0);border-left:1px solid var(--p-content-border-color);z-index:100;flex-direction:column;width:320px;height:100%;display:flex;position:fixed;top:0;right:0;box-shadow:-4px 0 16px #0000001a}.kb-queue-panel__header[data-v-fbef5c3d]{border-bottom:1px solid var(--p-content-border-color);flex-shrink:0;justify-content:space-between;align-items:center;padding:.75rem 1rem;display:flex}.kb-queue-panel__title[data-v-fbef5c3d]{font-size:.9375rem;font-weight:600}.kb-queue-panel__concurrency[data-v-fbef5c3d]{border-bottom:1px solid var(--p-content-border-color);flex-shrink:0;justify-content:space-between;align-items:center;padding:.625rem 1rem;display:flex}.kb-queue-panel__concurrency-label[data-v-fbef5c3d]{color:var(--p-text-muted-color);font-size:.8125rem}.kb-queue-panel__concurrency-ctrl[data-v-fbef5c3d]{align-items:center;gap:.5rem;font-size:.875rem;font-weight:600;display:flex}.kb-queue-panel__section[data-v-fbef5c3d]{padding:.75rem 1rem 0}.kb-queue-panel__section-title[data-v-fbef5c3d]{text-transform:uppercase;letter-spacing:.05em;color:var(--p-text-muted-color);margin-bottom:.5rem;font-size:.75rem;font-weight:600}.kb-queue-item[data-v-fbef5c3d]{background:var(--p-surface-100);border-radius:6px;align-items:center;gap:.5rem;margin-bottom:.375rem;padding:.375rem .5rem;font-size:.8125rem;display:flex}.kb-queue-item--running[data-v-fbef5c3d]{background:color-mix(in srgb, var(--p-primary-color) 8%, var(--p-surface-0));border:1px solid color-mix(in srgb, var(--p-primary-color) 20%, transparent)}.kb-queue-item__title[data-v-fbef5c3d]{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.kb-queue-panel__empty[data-v-fbef5c3d]{color:var(--p-text-muted-color);flex:1;justify-content:center;align-items:center;font-size:.875rem;display:flex}.kb-queue-panel__footer[data-v-fbef5c3d]{border-top:1px solid var(--p-content-border-color);flex-shrink:0;padding:.75rem 1rem}.kb-queue-col-dialog[data-v-fbef5c3d]{flex-direction:column;gap:1rem;display:flex}.kb-queue-col-dialog__field[data-v-fbef5c3d]{flex-direction:column;gap:.375rem;display:flex}.kb-queue-col-dialog__field label[data-v-fbef5c3d]{color:var(--p-text-muted-color);font-size:.8125rem;font-weight:500}.kb-queue-col-dialog__select[data-v-fbef5c3d]{border:1px solid var(--p-content-border-color);background:var(--p-surface-0);width:100%;color:var(--p-text-color);cursor:pointer;border-radius:6px;outline:none;padding:.5rem .75rem;font-size:.875rem}.kb-queue-col-dialog__select[data-v-fbef5c3d]:focus{border-color:var(--p-primary-color);box-shadow:0 0 0 1px var(--p-primary-color)}
|
|
@@ -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,bn as p,di as m,fi as h,gi as g,ha as _,ia as v,ka as y,l as b,li as x,ni as S,ra as C,ri as w,ui as T,vn 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,bn as p,di as m,fi as h,gi as g,ha as _,ia as v,ka as y,l as b,li as x,ni as S,ra as C,ri as w,ui as T,vn as E,yi as D}from"./index-CV_lCcKm.js";import{t as O}from"./card-DyK4dvjg.js";import{a as k,i as A,n as j,r as M,t as N}from"./tabpanel-BkIDALQ8.js";var ee={class:`kanban-list-page`},te={class:`page-header`},P={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=b(),K=l(),q=_(!1),J=_(``),Y=_(``),X=_(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(),h(`div`,ee,[x(`div`,te,[x(`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(()=>[g(y(n(D)(`kanban.list.tabs.active`)),1)]),_:1}),d(n(M),{value:`archived`},{default:C(()=>[g(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(),h(`div`,P,y(n(D)(`kanban.list.empty`)),1)):m(``,!0),x(`div`,F,[(e(!0),h(f,null,o(n(G).activeBoards,t=>(e(),T(n(O),{key:t.id,class:`board-card`,onClick:e=>n(W).push(`/kanban/${t.id}`)},{title:C(()=>[g(y(t.name),1)]),subtitle:C(()=>[g(y(n(D)(`kanban.list.columns`,{count:t.columns.length})),1)]),content:C(()=>[t.description?(e(),h(`p`,I,y(t.description),1)):m(``,!0)]),footer:C(()=>[x(`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`]),v(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(),h(`div`,L,y(n(D)(`kanban.list.archivedEmpty`)),1)):m(``,!0),x(`div`,R,[(e(!0),h(f,null,o(n(G).archivedBoards,t=>(e(),T(n(O),{key:t.id,class:`board-card archived`},{title:C(()=>[g(y(t.name),1)]),content:C(()=>[t.description?(e(),h(`p`,z,y(t.description),1)):m(``,!0)]),footer:C(()=>[x(`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(()=>[x(`div`,B,[x(`label`,null,y(n(D)(`common.name`)),1),d(n(p),{modelValue:J.value,"onUpdate:modelValue":r[3]||=e=>J.value=e,autofocus:``,class:`w-full`,onKeyup:S(Z,[`enter`])},null,8,[`modelValue`])]),x(`div`,V,[x(`label`,null,y(n(D)(`common.description`)),1),d(n(E),{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(),h(f,{key:0},[x(`div`,H,[x(`label`,null,y(n(D)(`common.name`)),1),d(n(p),{modelValue:X.value.name,"onUpdate:modelValue":r[7]||=e=>X.value.name=e,class:`w-full`,onKeyup:S(Q,[`enter`])},null,8,[`modelValue`])]),x(`div`,U,[x(`label`,null,y(n(D)(`common.description`)),1),d(n(E),{modelValue:X.value.description,"onUpdate:modelValue":r[8]||=e=>X.value.description=e,rows:`3`,class:`w-full`},null,8,[`modelValue`])])],64)):m(``,!0)]),_:1},8,[`visible`,`header`])])}}}),[[`__scopeId`,`data-v-9777433e`]]);export{W as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{Bi as e,Bn as t,Ca as n,Cn as r,Dn as i,Ea as a,Hi as o,Ii as s,T as c,Yn as l,Zt as u,_i as d,ai as f,fi as p,gi as m,ha as h,ka as g,li as _,ra as v,ui as y,yi as b}from"./index-
|
|
1
|
+
import{Bi as e,Bn as t,Ca as n,Cn as r,Dn as i,Ea as a,Hi as o,Ii as s,T as c,Yn as l,Zt as u,_i as d,ai as f,fi as p,gi as m,ha as h,ka as g,li as _,ra as v,ui as y,yi as b}from"./index-CV_lCcKm.js";import{t as x}from"./project.store-1ZxiIOdG.js";import{t as S}from"./card-DyK4dvjg.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=r(b({__name:`LaunchProjectPage`,setup(r){let b=t(),N=x(),P=u(),{t:F}=l(),I=h(null),L=h(!0);s(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(t,r)=>(e(),p(`div`,C,[_(`div`,w,[_(`div`,T,[r[0]||=_(`h1`,{class:`launch-title`},`Runeya`,-1),_(`p`,E,g(n(F)(`launchProject.subtitle`)),1)]),_(`h2`,D,g(n(F)(`launchProject.selectProject`)),1),L.value?(e(),p(`div`,O,[d(n(c),{style:{width:`48px`,height:`48px`}})])):n(N).projects.length===0?(e(),p(f,{key:1},[_(`p`,k,g(n(F)(`launchProject.noProjects`)),1),d(n(i),{label:n(F)(`launchProject.goToDashboard`),icon:`pi pi-arrow-right`,"icon-pos":`right`,class:`launch-action`,onClick:B},null,8,[`label`])],64)):(e(),p(f,{key:2},[_(`div`,A,[(e(!0),p(f,null,o(n(N).projects,t=>(e(),y(n(S),{key:t.id,class:a([`project-card`,{selected:I.value===t.id}]),onClick:e=>R(t.id)},{title:v(()=>[m(g(t.name),1)]),content:v(()=>[_(`p`,j,g(t.description||n(F)(`launchProject.noDescription`)),1),_(`span`,M,g(n(F)(`launchProject.serviceCount`,t.serviceIds.length)),1)]),_:2},1032,[`class`,`onClick`]))),128))]),d(n(i),{label:n(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{Bi as e,Bn as t,Ca as n,Cn as r,Dn as i,F as a,Gn as o,Hi as ee,Ii as te,R as ne,Ri as s,T as c,Yn as re,Zt as l,_i as u,a as d,ai as f,bn as ie,ci as p,di as m,fi as h,gi as ae,ha as g,ka as _,li as v,ra as y,ui as b,yi as x,yn as oe,z as se}from"./index-
|
|
1
|
+
import{Bi as e,Bn as t,Ca as n,Cn as r,Dn as i,F as a,Gn as o,Hi as ee,Ii as te,R as ne,Ri as s,T as c,Yn as re,Zt as l,_i as u,a as d,ai as f,bn as ie,ci as p,di as m,fi as h,gi as ae,ha as g,ka as _,li as v,ra as y,ui as b,yi as x,yn as oe,z as se}from"./index-CV_lCcKm.js";import{t as ce}from"./project.store-1ZxiIOdG.js";import{t as le}from"./checkbox-Csn61_gJ.js";import{t as S}from"./message-CkvY1zpy.js";var C={class:`launch-page`,"data-testid":`page-content`},w={class:`launch-container launch-container--wide`},T={class:`launch-branding`},E={class:`launch-subtitle`},D={class:`launch-header`},O={class:`launch-heading`},k={key:0,class:`launch-project-name`},A={key:0,class:`launch-loading`},j={class:`empty-message`},M={class:`services-toolbar`},N={class:`service-list`},P={class:`service-info`},F={class:`service-name`},I={class:`service-command`},ue={class:`launch-actions`},L=r(x({__name:`LaunchServicesPage`,setup(r){let x=t(),L=o(),{t:R}=re(),z=l(),B=ce(),V=ne(),H=a(),U=d(),W=g(!0),G=g(!1),K=g([]),q=g(``),J=z.activeProjectId,Y=p(()=>J?B.getById(J):null),X=p(()=>Y.value?V.getByIds(Y.value.serviceIds):[]),de=p(()=>{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=p(()=>X.value.length===0?!1:X.value.every(e=>K.value.includes(e.id))),Q=p(()=>H.connectedAgents.length>0);te(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))}}),s(()=>{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(se(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(t,r)=>(e(),h(`div`,C,[v(`div`,w,[v(`div`,T,[r[2]||=v(`h1`,{class:`launch-title`},`Runeya`,-1),v(`p`,E,_(n(R)(`launchServices.subtitle`)),1)]),v(`div`,D,[u(n(i),{icon:`pi pi-arrow-left`,text:``,severity:`secondary`,onClick:me}),v(`div`,null,[v(`h2`,O,_(n(R)(`launchServices.selectServices`)),1),Y.value?(e(),h(`p`,k,_(Y.value.name),1)):m(``,!0)])]),W.value?(e(),h(`div`,A,[u(n(c),{style:{width:`48px`,height:`48px`}})])):X.value.length===0?(e(),h(f,{key:1},[v(`p`,j,_(n(R)(`launchServices.noServices`)),1),u(n(i),{label:n(R)(`launchServices.skip`),icon:`pi pi-arrow-right`,"icon-pos":`right`,class:`launch-action`,onClick:$},null,8,[`label`])],64)):(e(),h(f,{key:2},[Q.value?m(``,!0):(e(),b(n(S),{key:0,severity:`warn`,closable:!1,class:`launch-warning`},{default:y(()=>[ae(_(n(R)(`launchServices.noAgents`)),1)]),_:1})),v(`div`,M,[u(n(ie),{modelValue:q.value,"onUpdate:modelValue":r[0]||=e=>q.value=e,placeholder:n(R)(`launchServices.filter`),class:`services-search`},null,8,[`modelValue`,`placeholder`]),u(n(i),{label:Z.value?n(R)(`launchServices.deselectAll`):n(R)(`launchServices.selectAll`),text:``,size:`small`,onClick:fe},null,8,[`label`])]),v(`div`,N,[(e(!0),h(f,null,ee(de.value,t=>(e(),h(`label`,{key:t.id,class:`service-item`},[u(n(le),{modelValue:K.value,"onUpdate:modelValue":r[1]||=e=>K.value=e,value:t.id},null,8,[`modelValue`,`value`]),v(`div`,P,[v(`span`,F,_(t.name),1),v(`span`,I,_((t.commands??[]).map(e=>e.label||e.command).join(`, `)||n(R)(`launchServices.noCommands`)),1)]),u(n(oe),{value:t.runner,severity:`info`,class:`service-runner`},null,8,[`value`])]))),128))]),v(`div`,ue,[u(n(i),{label:n(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`]),u(n(i),{label:n(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,Bi as n,Ca as r,Cn as i,Dn as a,E as o,Ea as s,H as c,Hi as l,Ii as u,Ki as d,Kr as f,L as p,Oa as m,Oi as h,P as g,Ri as _,Sa as v,T as y,Ti as b,Tn as x,Ui as S,V as C,Wi as w,Yn as ee,Yt as T,_i as E,ai as D,bn as O,ci as k,di as A,fi as j,gi as M,ha as N,ia as te,ka as P,ki as F,li as I,ni as L,ra as R,ri as z,ti as ne,u as re,ui as B,un as V,yi as H}from"./index-CIcE6DNv.js";import{t as ie}from"./multiselect-sshNnjnF.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 r=t,i=N(e.data.depth<e.maxDepth),a=()=>{i.value=!i.value},o=e=>{r(`selected`,{key:e.key,value:e.value,path:e.path})},c=e=>r(`selected`,e),u=k(()=>({"chevron-arrow":!0,opened:i.value})),p=k(()=>({"value-key":!0,"can-select":e.canSelect})),h=k(()=>{let{length:t,type:n}=e.data;return t===void 0?``:ce(t,n===1)}),g=k(()=>JSON.stringify(e.data.value)),_=e=>se(e.key),v=e=>oe(e);return(t,r)=>{let y=w(`JsonTreeViewItem`,!0);return n(),j(`div`,ue,[e.data.type===0||e.data.type===1?(n(),j(D,{key:0},[I(`button`,{class:`data-key`,type:`button`,"aria-expanded":i.value,onClick:z(a,[`stop`])},[I(`div`,{class:s(u.value),"aria-hidden":`true`},null,2),I(`span`,null,P(e.data.key)+`:`,1),I(`span`,G,P(h.value),1)],8,de),E(f,{name:`expand`},{default:R(()=>[te(I(`div`,null,[(n(!0),j(D,null,l(e.data.children,t=>(n(),B(y,{key:_(t),data:t,"max-depth":e.maxDepth,"can-select":e.canSelect,onSelected:c},null,8,[`data`,`max-depth`,`can-select`]))),128))],512),[[ne,i.value]])]),_:1})],64)):A(``,!0),e.data.type===2?(n(),B(d(e.canSelect?`button`:`div`),{key:1,class:s(p.value),type:e.canSelect?`button`:null,tabindex:e.canSelect?0:null,onClick:r[0]||=t=>e.canSelect?o(e.data):null,onKeyup:[r[1]||=L(t=>e.canSelect?o(e.data):null,[`enter`]),r[2]||=L(z(t=>e.canSelect?o(e.data):null,[`prevent`]),[`space`])]},{default:R(()=>[I(`span`,K,P(e.data.key)+`:`,1),I(`span`,{style:m({color:v(e.data.value)})},P(g.value),5)]),_:1},40,[`class`,`type`,`tabindex`])):A(``,!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 r=t,i=e=>r(`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=k(()=>u(e.json,e.rootKey));return(t,r)=>(n(),B(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=i(H({__name:`LogCard`,props:{icon:{},title:{},color:{},badge:{},muted:{type:Boolean},defaultCollapsed:{type:Boolean},lastLine:{}},setup(e){let t=e,i=N(!t.defaultCollapsed),a=N(!!t.defaultCollapsed),c=N(!!t.defaultCollapsed);function l(){i.value?(i.value=!1,setTimeout(()=>{a.value=!0,c.value=!0},ve)):(a.value=!1,c.value=!1,setTimeout(()=>{i.value=!0},ye))}return(t,u)=>(n(),j(`div`,{class:s([`log-card`,{"log-card--muted":e.muted,"log-card--open":!c.value}])},[I(`div`,{class:`log-card__header`,style:m({background:e.color}),onClick:l},[I(`span`,me,P(e.icon),1),I(`span`,{class:`log-card__title`,innerHTML:r(o).sanitize(e.title)},null,8,J),e.badge?(n(),j(`span`,he,P(e.badge),1)):A(``,!0),t.$slots.default?(n(),j(`span`,{key:1,class:s([`log-card__chevron`,{"log-card__chevron--open":!c.value}])},[...u[0]||=[I(`svg`,{width:`8`,height:`8`,viewBox:`0 0 8 8`,fill:`currentColor`},[I(`polygon`,{points:`0,0 8,4 0,8`})],-1)]],2)):A(``,!0)],4),t.$slots.default?(n(),j(D,{key:0},[E(f,{name:`dots`},{default:R(()=>[a.value?(n(),j(`div`,{key:0,class:`log-card__preview`,style:m({borderLeftColor:e.color})},[e.lastLine?(n(),j(`span`,{key:0,class:`log-card__last-line`,innerHTML:r(o).sanitize(e.lastLine)},null,8,ge)):(n(),j(D,{key:1},[u[1]||=I(`span`,{class:`log-card__dot`},null,-1),u[2]||=I(`span`,{class:`log-card__dot`},null,-1),u[3]||=I(`span`,{class:`log-card__dot`},null,-1)],64))],4)):A(``,!0)]),_:1}),I(`div`,{class:s([`log-card__grid`,{"log-card__grid--open":i.value}])},[I(`div`,_e,[I(`div`,{class:`log-card__body`,style:m({borderLeftColor:e.color})},[S(t.$slots,`default`,{},void 0,!0)],4)])],2)],64)):A(``,!0)],2))}}),[[`__scopeId`,`data-v-9028b0a2`]]),X={key:5},be=[`title`],xe=[`innerHTML`],Se=i(H({__name:`LogLine`,props:{log:{}},emits:[`click`],setup(e,{emit:t}){let i=e,a=t;function s(){let e=window.getSelection();e&&e.toString().length>0||a(`click`,i.log)}let c={debug:`#c72bd4`,info:`#a3a3a3`,warn:`#f59e0b`,error:`#ef4444`,fatal:`#ef4444`},l=k(()=>c[i.log.level]??`#a3a3a3`),u=k(()=>i.log.logCard?.state===`self`?i.log.logCard.type:null);function d(e){return e.metadata!=null&&Object.keys(e.metadata).length>0}function f(e){if(!e.metadata)return``;try{return JSON.stringify(e.metadata,null,2)}catch{return String(e.metadata)}}function p(e){return JSON.stringify(e.json)}return(t,a)=>(n(),j(`div`,null,[u.value===`command-start`?(n(),B(Y,{key:0,icon:`⌗`,title:e.log.logCard.header,color:`#3b82f6`,onClick:s},{default:R(()=>[M(P(e.log.message),1)]),_:1},8,[`title`])):u.value===`command-fail`?(n(),B(Y,{key:1,icon:`⌗`,title:e.log.logCard.header,color:`#ef4444`,badge:`✗ ${e.log.message}`,onClick:s},null,8,[`title`,`badge`])):u.value===`system-warn`?(n(),B(Y,{key:2,icon:`⚠`,title:e.log.logCard.header,color:`#ef4444`,badge:e.log.message,onClick:s},null,8,[`title`,`badge`])):u.value===`json`?(n(),B(Y,{key:3,icon:`</>`,title:e.log.logCard.header,color:l.value},{default:R(()=>[I(`div`,{onClick:a[0]||=z(()=>{},[`stop`])},[E(r(pe),{json:p(i.log),maxDepth:2},null,8,[`json`])])]),_:1},8,[`title`,`color`])):e.log.json?(n(),B(Y,{key:4,icon:`</>`,title:`JSON`,color:l.value,onClick:s},{default:R(()=>[I(`div`,{onClick:a[1]||=z(()=>{},[`stop`])},[E(r(pe),{json:p(i.log),maxDepth:2},null,8,[`json`])])]),_:1},8,[`color`])):(n(),j(`div`,X,[I(`div`,{class:`log-line`,"data-testid":`log-message`,style:m({boxShadow:`inset 3px 0 0 0 ${l.value}`}),title:d(i.log)?f(i.log):void 0,onClick:s},[I(`span`,{class:`log-message`,innerHTML:r(o).sanitize(i.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=i(H({__name:`LogFilter`,props:{modelValue:{}},emits:[`update:modelValue`],setup(t,{emit:i}){let{t:o}=ee(),u=t,d=i,f={debug:`#c72bd4`,info:`#a3a3a3`,warn:`#f59e0b`,error:`#ef4444`,fatal:`#ef4444`},p=c.map(e=>({label:e.charAt(0).toUpperCase()+e.slice(1),value:e,color:f[e]??`#a3a3a3`})),h=N([...u.modelValue.levels]),g=N([...u.modelValue.filters]),v=!1;e(h,e=>{v||d(`update:modelValue`,{levels:e,filters:g.value})}),e(()=>u.modelValue,e=>{v=!0,h.value=[...e.levels],g.value=[...e.filters],F(()=>{v=!1})});let y=N(null),b=N(``),x=N(`include`),S=N(!1),C=N(``);function w(e){y.value?.toggle(e)}function T(){y.value?.hide()}function k(e){try{return new RegExp(e),!0}catch(e){return C.value=e instanceof Error?e.message:`Invalid regex`,!1}}function te(){let e=b.value.trim();e&&(C.value=``,!(S.value&&!k(e))&&(g.value=[...g.value,{id:`${Date.now()}-${Math.random()}`,pattern:e,type:x.value,isRegex:S.value}],b.value=``,d(`update:modelValue`,{levels:h.value,filters:g.value}),T()))}function L(e){e.key===`Enter`&&(e.preventDefault(),te()),e.key===`Escape`&&T()}function z(){C.value=``}function ne(e){g.value=g.value.filter(t=>t.id!==e),d(`update:modelValue`,{levels:h.value,filters:g.value})}function re(){h.value=[...c],g.value=[],d(`update:modelValue`,{levels:[...c],filters:[]})}return _(()=>{}),(e,t)=>(n(),j(`div`,Ce,[I(`div`,we,[E(r(ie),{modelValue:h.value,"onUpdate:modelValue":t[0]||=e=>h.value=e,options:r(p),"option-label":`label`,"option-value":`value`,placeholder:r(o)(`logFilter.levelsPlaceholder`),class:`log-filter__levels`,"max-selected-labels":3,display:`chip`},{option:R(({option:e})=>[I(`div`,Te,[I(`span`,{class:`log-filter__level-dot`,style:m({backgroundColor:e.color})},null,4),M(` `+P(e.label),1)])]),chip:R(({value:e})=>[I(`div`,Ee,[I(`span`,{class:`log-filter__level-dot`,style:m({backgroundColor:f[e]})},null,4),M(` `+P(e.charAt(0).toUpperCase()+e.slice(1)),1)])]),_:1},8,[`modelValue`,`options`,`placeholder`]),E(r(a),{icon:`pi pi-filter`,label:r(o)(`logFilter.addFilter`),size:`small`,severity:`secondary`,badge:g.value.length>0?String(g.value.length):void 0,"badge-severity":`contrast`,onClick:w},null,8,[`label`,`badge`]),g.value.length>0||h.value.length<r(c).length?(n(),B(r(a),{key:0,icon:`pi pi-filter-slash`,text:``,rounded:``,size:`small`,severity:`secondary`,"aria-label":r(o)(`logFilter.clearAll`),title:r(o)(`logFilter.clearAll`),onClick:re},null,8,[`aria-label`,`title`])):A(``,!0)]),g.value.length>0?(n(),j(`div`,De,[(n(!0),j(D,null,l(g.value,e=>(n(),j(`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}`},[I(`span`,ke,P(e.type===`include`?`+`:`−`),1),e.isRegex?(n(),j(`span`,Ae,`.*`)):A(``,!0),I(`span`,je,P(e.pattern),1),I(`button`,{class:`log-filter__badge-remove`,"aria-label":r(o)(`logFilter.removeFilter`),onClick:t=>ne(e.id)},[...t[5]||=[I(`i`,{class:`pi pi-times`,style:{"font-size":`0.6rem`}},null,-1)]],8,Me)],10,Oe))),128))])):A(``,!0),E(r(V),{ref_key:`popoverRef`,ref:y},{default:R(()=>[I(`div`,Ne,[I(`p`,Pe,P(r(o)(`logFilter.newFilter`)),1),I(`div`,Fe,[I(`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]||=I(`i`,{class:`pi pi-plus`},null,-1),M(` `+P(r(o)(`logFilter.include`)),1)],2),I(`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]||=I(`i`,{class:`pi pi-minus`},null,-1),M(` `+P(r(o)(`logFilter.exclude`)),1)],2)]),I(`div`,Ie,[I(`label`,Le,P(r(o)(`logFilter.regex`)),1),I(`button`,{class:s([`log-filter__regex-toggle`,S.value&&`log-filter__regex-toggle--on`]),onClick:t[3]||=e=>{S.value=!S.value,C.value=``}},` .* `,2)]),I(`div`,Re,[E(r(O),{modelValue:b.value,"onUpdate:modelValue":t[4]||=e=>b.value=e,placeholder:S.value?r(o)(`logFilter.regexPlaceholder`):r(o)(`logFilter.filterPlaceholder`),class:`log-filter__popover-input`,invalid:!!C.value,autofocus:``,onInput:z,onKeydown:L},null,8,[`modelValue`,`placeholder`,`invalid`]),C.value?(n(),j(`p`,ze,P(C.value),1)):A(``,!0)]),I(`div`,Be,[E(r(a),{label:r(o)(`logFilter.add`),icon:`pi pi-check`,size:`small`,disabled:!b.value.trim(),onClick:te},null,8,[`label`,`disabled`]),E(r(a),{label:r(o)(`logFilter.cancel`),size:`small`,severity:`secondary`,text:``,onClick:T},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,C=(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]),w=()=>$e(y,y.l),ee=(e,t)=>{let n=$e(y,e)-d;return t?w()-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=C(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:ee,k:T,j:()=>y.l,N:()=>l,B:()=>p!==0,T:()=>s,q:()=>c,M:w,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<=w()&&(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]:ee(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=C(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=N(),r=k((()=>t.L.value&&t.W.O(t.D,t.K))),i=k((()=>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`),E(s,h({ref:n,style:d},u),typeof(f=e)==`function`||Object.prototype.toString.call(f)===`[object Object]`&&!b(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=N(),c=ot(t.data.length,t.itemSize,t.ssrCount,t.cache,!t.itemSize),l=((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=N(c.m());c.R(1,(()=>{f.value=c.m()})),c.R(4,(()=>{n(`scroll`,c.N())})),c.R(8,(()=>{n(`scrollEnd`)}));let p=k((e=>{f.value;let n=c.v(t.bufferSize);return e&&mt(e,n)?e:n})),m=k((()=>f.value&&c.B())),h=k((()=>f.value&&c.M()));return u((()=>{a=!1;let e=s.value,n=requestAnimationFrame((()=>{let n=t=>{l.te(t),d.oe(e,t)};t.scrollRef?n(t.scrollRef):n(e.parentElement)}));_((()=>{cancelAnimationFrame(n)}))})),_((()=>{c.p(),l.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,u=d.ne(),g=[],_=e=>{let r=i.default({item:t.data[e],index:e});return E(ft,{key:pt(r,e),L:f,W:c,Y:l.re,D:e,X:r,U:o,K:u,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 E(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(v=g)==`function`||Object.prototype.toString.call(v)===`[object Object]`&&!b(v)?g:{default:()=>[g],_:2},8,[`style`]);var v}}}),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=N();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 E(`div`,{style:{display:i?`inline-block`:`block`,[i?`overflowX`:`overflowY`]:`auto`,contain:`strict`,width:`100%`,height:`100%`}},[E(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]`&&!b(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=i(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(i,{emit:o}){let s=i,d=o,{t:f}=ee(),m=[10,50,100,200,500,1e3,2e3,5e3,1e4],h=N(500),_=N({levels:[...c],filters:[]}),b=N(!0),S=N(null),C=N(!1),w=N(!1),O=N(0),L;function z(e){let t=0;for(let n of e)n.hidden&&!n.logCard&&t++;return t}function ne(e){if(L===void 0)return null;for(let t=e.length-1;t>=0;t--)if(e[t].id===L)return e.slice(t+1);return null}function V(e){let t=e.length>h.value?e.slice(e.length-h.value):e;L=t[t.length-1]?.id,G.value=z(t),de(t),b.value&&F(()=>F(J))}function H(e){e.length!==0&&(L=e[e.length-1].id,G.value+=z(e),ue(e,se(),W.value),W.value.length>h.value?W.value=W.value.slice(W.value.length-h.value):v(W),b.value&&F(J))}function ie(){if(O.value===0)return;O.value=0;let e=s.logs,t=ne(e);t===null?V(e):H(t)}e(()=>s.logs,e=>{if(e.length===0){L=void 0,O.value=0,G.value=0,de([]);return}if(!b.value){let t=ne(e);O.value=t===null?e.length:t.length;return}if(L===void 0){V(e);return}let t=ne(e);t===null?V(e):H(t)},{deep:!1}),u(()=>{s.logs.length>0&&V(s.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(_.value.levels),filterAll:_.value.levels.length>=c.length,includes:_.value.filters.filter(e=>e.type===`include`),excludes:_.value.filters.filter(e=>e.type===`exclude`),hidden:C.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=N([]),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([_,C,h],()=>{V(s.logs)});let G=N(0),K=N(null),q=N(null);e(()=>s.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=k(()=>{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(){!S.value||W.value.length===0||(pe=Date.now()+Mt,S.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,!S.value)return;let n=S.value.scrollSize-e-S.value.viewportSize;b.value?t&&n>1&&(b.value=!1):n<=1&&(b.value=!0,ie(),F(J))}function ge(){b.value=!b.value,b.value&&(ie(),F(J))}u(()=>{b.value&&F(J)});function _e(e){_.value=e}function ve(e){d(`log-click`,e)}let ye=N(null),X=N(!1),be=p(),{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,Bi as n,Ca as r,Cn as i,Dn as a,E as o,Ea as s,H as c,Hi as l,Ii as u,Ki as d,Kr as f,L as p,Oa as m,Oi as h,P as g,Ri as _,Sa as v,T as y,Ti as b,Tn as x,Ui as S,V as C,Wi as w,Yn as ee,Yt as T,_i as E,ai as D,bn as O,ci as k,di as A,fi as j,gi as M,ha as N,ia as te,ka as P,ki as F,li as I,ni as L,ra as R,ri as z,ti as ne,u as re,ui as B,un as V,yi as H}from"./index-CV_lCcKm.js";import{t as ie}from"./multiselect-Cg_IvTVL.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 r=t,i=N(e.data.depth<e.maxDepth),a=()=>{i.value=!i.value},o=e=>{r(`selected`,{key:e.key,value:e.value,path:e.path})},c=e=>r(`selected`,e),u=k(()=>({"chevron-arrow":!0,opened:i.value})),p=k(()=>({"value-key":!0,"can-select":e.canSelect})),h=k(()=>{let{length:t,type:n}=e.data;return t===void 0?``:ce(t,n===1)}),g=k(()=>JSON.stringify(e.data.value)),_=e=>se(e.key),v=e=>oe(e);return(t,r)=>{let y=w(`JsonTreeViewItem`,!0);return n(),j(`div`,ue,[e.data.type===0||e.data.type===1?(n(),j(D,{key:0},[I(`button`,{class:`data-key`,type:`button`,"aria-expanded":i.value,onClick:z(a,[`stop`])},[I(`div`,{class:s(u.value),"aria-hidden":`true`},null,2),I(`span`,null,P(e.data.key)+`:`,1),I(`span`,G,P(h.value),1)],8,de),E(f,{name:`expand`},{default:R(()=>[te(I(`div`,null,[(n(!0),j(D,null,l(e.data.children,t=>(n(),B(y,{key:_(t),data:t,"max-depth":e.maxDepth,"can-select":e.canSelect,onSelected:c},null,8,[`data`,`max-depth`,`can-select`]))),128))],512),[[ne,i.value]])]),_:1})],64)):A(``,!0),e.data.type===2?(n(),B(d(e.canSelect?`button`:`div`),{key:1,class:s(p.value),type:e.canSelect?`button`:null,tabindex:e.canSelect?0:null,onClick:r[0]||=t=>e.canSelect?o(e.data):null,onKeyup:[r[1]||=L(t=>e.canSelect?o(e.data):null,[`enter`]),r[2]||=L(z(t=>e.canSelect?o(e.data):null,[`prevent`]),[`space`])]},{default:R(()=>[I(`span`,K,P(e.data.key)+`:`,1),I(`span`,{style:m({color:v(e.data.value)})},P(g.value),5)]),_:1},40,[`class`,`type`,`tabindex`])):A(``,!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 r=t,i=e=>r(`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=k(()=>u(e.json,e.rootKey));return(t,r)=>(n(),B(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=i(H({__name:`LogCard`,props:{icon:{},title:{},color:{},badge:{},muted:{type:Boolean},defaultCollapsed:{type:Boolean},lastLine:{}},setup(e){let t=e,i=N(!t.defaultCollapsed),a=N(!!t.defaultCollapsed),c=N(!!t.defaultCollapsed);function l(){i.value?(i.value=!1,setTimeout(()=>{a.value=!0,c.value=!0},ve)):(a.value=!1,c.value=!1,setTimeout(()=>{i.value=!0},ye))}return(t,u)=>(n(),j(`div`,{class:s([`log-card`,{"log-card--muted":e.muted,"log-card--open":!c.value}])},[I(`div`,{class:`log-card__header`,style:m({background:e.color}),onClick:l},[I(`span`,me,P(e.icon),1),I(`span`,{class:`log-card__title`,innerHTML:r(o).sanitize(e.title)},null,8,J),e.badge?(n(),j(`span`,he,P(e.badge),1)):A(``,!0),t.$slots.default?(n(),j(`span`,{key:1,class:s([`log-card__chevron`,{"log-card__chevron--open":!c.value}])},[...u[0]||=[I(`svg`,{width:`8`,height:`8`,viewBox:`0 0 8 8`,fill:`currentColor`},[I(`polygon`,{points:`0,0 8,4 0,8`})],-1)]],2)):A(``,!0)],4),t.$slots.default?(n(),j(D,{key:0},[E(f,{name:`dots`},{default:R(()=>[a.value?(n(),j(`div`,{key:0,class:`log-card__preview`,style:m({borderLeftColor:e.color})},[e.lastLine?(n(),j(`span`,{key:0,class:`log-card__last-line`,innerHTML:r(o).sanitize(e.lastLine)},null,8,ge)):(n(),j(D,{key:1},[u[1]||=I(`span`,{class:`log-card__dot`},null,-1),u[2]||=I(`span`,{class:`log-card__dot`},null,-1),u[3]||=I(`span`,{class:`log-card__dot`},null,-1)],64))],4)):A(``,!0)]),_:1}),I(`div`,{class:s([`log-card__grid`,{"log-card__grid--open":i.value}])},[I(`div`,_e,[I(`div`,{class:`log-card__body`,style:m({borderLeftColor:e.color})},[S(t.$slots,`default`,{},void 0,!0)],4)])],2)],64)):A(``,!0)],2))}}),[[`__scopeId`,`data-v-9028b0a2`]]),X={key:5},be=[`title`],xe=[`innerHTML`],Se=i(H({__name:`LogLine`,props:{log:{}},emits:[`click`],setup(e,{emit:t}){let i=e,a=t;function s(){let e=window.getSelection();e&&e.toString().length>0||a(`click`,i.log)}let c={debug:`#c72bd4`,info:`#a3a3a3`,warn:`#f59e0b`,error:`#ef4444`,fatal:`#ef4444`},l=k(()=>c[i.log.level]??`#a3a3a3`),u=k(()=>i.log.logCard?.state===`self`?i.log.logCard.type:null);function d(e){return e.metadata!=null&&Object.keys(e.metadata).length>0}function f(e){if(!e.metadata)return``;try{return JSON.stringify(e.metadata,null,2)}catch{return String(e.metadata)}}function p(e){return JSON.stringify(e.json)}return(t,a)=>(n(),j(`div`,null,[u.value===`command-start`?(n(),B(Y,{key:0,icon:`⌗`,title:e.log.logCard.header,color:`#3b82f6`,onClick:s},{default:R(()=>[M(P(e.log.message),1)]),_:1},8,[`title`])):u.value===`command-fail`?(n(),B(Y,{key:1,icon:`⌗`,title:e.log.logCard.header,color:`#ef4444`,badge:`✗ ${e.log.message}`,onClick:s},null,8,[`title`,`badge`])):u.value===`system-warn`?(n(),B(Y,{key:2,icon:`⚠`,title:e.log.logCard.header,color:`#ef4444`,badge:e.log.message,onClick:s},null,8,[`title`,`badge`])):u.value===`json`?(n(),B(Y,{key:3,icon:`</>`,title:e.log.logCard.header,color:l.value},{default:R(()=>[I(`div`,{onClick:a[0]||=z(()=>{},[`stop`])},[E(r(pe),{json:p(i.log),maxDepth:2},null,8,[`json`])])]),_:1},8,[`title`,`color`])):e.log.json?(n(),B(Y,{key:4,icon:`</>`,title:`JSON`,color:l.value,onClick:s},{default:R(()=>[I(`div`,{onClick:a[1]||=z(()=>{},[`stop`])},[E(r(pe),{json:p(i.log),maxDepth:2},null,8,[`json`])])]),_:1},8,[`color`])):(n(),j(`div`,X,[I(`div`,{class:`log-line`,"data-testid":`log-message`,style:m({boxShadow:`inset 3px 0 0 0 ${l.value}`}),title:d(i.log)?f(i.log):void 0,onClick:s},[I(`span`,{class:`log-message`,innerHTML:r(o).sanitize(i.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=i(H({__name:`LogFilter`,props:{modelValue:{}},emits:[`update:modelValue`],setup(t,{emit:i}){let{t:o}=ee(),u=t,d=i,f={debug:`#c72bd4`,info:`#a3a3a3`,warn:`#f59e0b`,error:`#ef4444`,fatal:`#ef4444`},p=c.map(e=>({label:e.charAt(0).toUpperCase()+e.slice(1),value:e,color:f[e]??`#a3a3a3`})),h=N([...u.modelValue.levels]),g=N([...u.modelValue.filters]),v=!1;e(h,e=>{v||d(`update:modelValue`,{levels:e,filters:g.value})}),e(()=>u.modelValue,e=>{v=!0,h.value=[...e.levels],g.value=[...e.filters],F(()=>{v=!1})});let y=N(null),b=N(``),x=N(`include`),S=N(!1),C=N(``);function w(e){y.value?.toggle(e)}function T(){y.value?.hide()}function k(e){try{return new RegExp(e),!0}catch(e){return C.value=e instanceof Error?e.message:`Invalid regex`,!1}}function te(){let e=b.value.trim();e&&(C.value=``,!(S.value&&!k(e))&&(g.value=[...g.value,{id:`${Date.now()}-${Math.random()}`,pattern:e,type:x.value,isRegex:S.value}],b.value=``,d(`update:modelValue`,{levels:h.value,filters:g.value}),T()))}function L(e){e.key===`Enter`&&(e.preventDefault(),te()),e.key===`Escape`&&T()}function z(){C.value=``}function ne(e){g.value=g.value.filter(t=>t.id!==e),d(`update:modelValue`,{levels:h.value,filters:g.value})}function re(){h.value=[...c],g.value=[],d(`update:modelValue`,{levels:[...c],filters:[]})}return _(()=>{}),(e,t)=>(n(),j(`div`,Ce,[I(`div`,we,[E(r(ie),{modelValue:h.value,"onUpdate:modelValue":t[0]||=e=>h.value=e,options:r(p),"option-label":`label`,"option-value":`value`,placeholder:r(o)(`logFilter.levelsPlaceholder`),class:`log-filter__levels`,"max-selected-labels":3,display:`chip`},{option:R(({option:e})=>[I(`div`,Te,[I(`span`,{class:`log-filter__level-dot`,style:m({backgroundColor:e.color})},null,4),M(` `+P(e.label),1)])]),chip:R(({value:e})=>[I(`div`,Ee,[I(`span`,{class:`log-filter__level-dot`,style:m({backgroundColor:f[e]})},null,4),M(` `+P(e.charAt(0).toUpperCase()+e.slice(1)),1)])]),_:1},8,[`modelValue`,`options`,`placeholder`]),E(r(a),{icon:`pi pi-filter`,label:r(o)(`logFilter.addFilter`),size:`small`,severity:`secondary`,badge:g.value.length>0?String(g.value.length):void 0,"badge-severity":`contrast`,onClick:w},null,8,[`label`,`badge`]),g.value.length>0||h.value.length<r(c).length?(n(),B(r(a),{key:0,icon:`pi pi-filter-slash`,text:``,rounded:``,size:`small`,severity:`secondary`,"aria-label":r(o)(`logFilter.clearAll`),title:r(o)(`logFilter.clearAll`),onClick:re},null,8,[`aria-label`,`title`])):A(``,!0)]),g.value.length>0?(n(),j(`div`,De,[(n(!0),j(D,null,l(g.value,e=>(n(),j(`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}`},[I(`span`,ke,P(e.type===`include`?`+`:`−`),1),e.isRegex?(n(),j(`span`,Ae,`.*`)):A(``,!0),I(`span`,je,P(e.pattern),1),I(`button`,{class:`log-filter__badge-remove`,"aria-label":r(o)(`logFilter.removeFilter`),onClick:t=>ne(e.id)},[...t[5]||=[I(`i`,{class:`pi pi-times`,style:{"font-size":`0.6rem`}},null,-1)]],8,Me)],10,Oe))),128))])):A(``,!0),E(r(V),{ref_key:`popoverRef`,ref:y},{default:R(()=>[I(`div`,Ne,[I(`p`,Pe,P(r(o)(`logFilter.newFilter`)),1),I(`div`,Fe,[I(`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]||=I(`i`,{class:`pi pi-plus`},null,-1),M(` `+P(r(o)(`logFilter.include`)),1)],2),I(`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]||=I(`i`,{class:`pi pi-minus`},null,-1),M(` `+P(r(o)(`logFilter.exclude`)),1)],2)]),I(`div`,Ie,[I(`label`,Le,P(r(o)(`logFilter.regex`)),1),I(`button`,{class:s([`log-filter__regex-toggle`,S.value&&`log-filter__regex-toggle--on`]),onClick:t[3]||=e=>{S.value=!S.value,C.value=``}},` .* `,2)]),I(`div`,Re,[E(r(O),{modelValue:b.value,"onUpdate:modelValue":t[4]||=e=>b.value=e,placeholder:S.value?r(o)(`logFilter.regexPlaceholder`):r(o)(`logFilter.filterPlaceholder`),class:`log-filter__popover-input`,invalid:!!C.value,autofocus:``,onInput:z,onKeydown:L},null,8,[`modelValue`,`placeholder`,`invalid`]),C.value?(n(),j(`p`,ze,P(C.value),1)):A(``,!0)]),I(`div`,Be,[E(r(a),{label:r(o)(`logFilter.add`),icon:`pi pi-check`,size:`small`,disabled:!b.value.trim(),onClick:te},null,8,[`label`,`disabled`]),E(r(a),{label:r(o)(`logFilter.cancel`),size:`small`,severity:`secondary`,text:``,onClick:T},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,C=(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]),w=()=>$e(y,y.l),ee=(e,t)=>{let n=$e(y,e)-d;return t?w()-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=C(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:ee,k:T,j:()=>y.l,N:()=>l,B:()=>p!==0,T:()=>s,q:()=>c,M:w,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<=w()&&(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]:ee(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=C(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=N(),r=k((()=>t.L.value&&t.W.O(t.D,t.K))),i=k((()=>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`),E(s,h({ref:n,style:d},u),typeof(f=e)==`function`||Object.prototype.toString.call(f)===`[object Object]`&&!b(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=N(),c=ot(t.data.length,t.itemSize,t.ssrCount,t.cache,!t.itemSize),l=((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=N(c.m());c.R(1,(()=>{f.value=c.m()})),c.R(4,(()=>{n(`scroll`,c.N())})),c.R(8,(()=>{n(`scrollEnd`)}));let p=k((e=>{f.value;let n=c.v(t.bufferSize);return e&&mt(e,n)?e:n})),m=k((()=>f.value&&c.B())),h=k((()=>f.value&&c.M()));return u((()=>{a=!1;let e=s.value,n=requestAnimationFrame((()=>{let n=t=>{l.te(t),d.oe(e,t)};t.scrollRef?n(t.scrollRef):n(e.parentElement)}));_((()=>{cancelAnimationFrame(n)}))})),_((()=>{c.p(),l.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,u=d.ne(),g=[],_=e=>{let r=i.default({item:t.data[e],index:e});return E(ft,{key:pt(r,e),L:f,W:c,Y:l.re,D:e,X:r,U:o,K:u,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 E(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(v=g)==`function`||Object.prototype.toString.call(v)===`[object Object]`&&!b(v)?g:{default:()=>[g],_:2},8,[`style`]);var v}}}),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=N();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 E(`div`,{style:{display:i?`inline-block`:`block`,[i?`overflowX`:`overflowY`]:`auto`,contain:`strict`,width:`100%`,height:`100%`}},[E(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]`&&!b(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=i(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(i,{emit:o}){let s=i,d=o,{t:f}=ee(),m=[10,50,100,200,500,1e3,2e3,5e3,1e4],h=N(500),_=N({levels:[...c],filters:[]}),b=N(!0),S=N(null),C=N(!1),w=N(!1),O=N(0),L;function z(e){let t=0;for(let n of e)n.hidden&&!n.logCard&&t++;return t}function ne(e){if(L===void 0)return null;for(let t=e.length-1;t>=0;t--)if(e[t].id===L)return e.slice(t+1);return null}function V(e){let t=e.length>h.value?e.slice(e.length-h.value):e;L=t[t.length-1]?.id,G.value=z(t),de(t),b.value&&F(()=>F(J))}function H(e){e.length!==0&&(L=e[e.length-1].id,G.value+=z(e),ue(e,se(),W.value),W.value.length>h.value?W.value=W.value.slice(W.value.length-h.value):v(W),b.value&&F(J))}function ie(){if(O.value===0)return;O.value=0;let e=s.logs,t=ne(e);t===null?V(e):H(t)}e(()=>s.logs,e=>{if(e.length===0){L=void 0,O.value=0,G.value=0,de([]);return}if(!b.value){let t=ne(e);O.value=t===null?e.length:t.length;return}if(L===void 0){V(e);return}let t=ne(e);t===null?V(e):H(t)},{deep:!1}),u(()=>{s.logs.length>0&&V(s.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(_.value.levels),filterAll:_.value.levels.length>=c.length,includes:_.value.filters.filter(e=>e.type===`include`),excludes:_.value.filters.filter(e=>e.type===`exclude`),hidden:C.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=N([]),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([_,C,h],()=>{V(s.logs)});let G=N(0),K=N(null),q=N(null);e(()=>s.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=k(()=>{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(){!S.value||W.value.length===0||(pe=Date.now()+Mt,S.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,!S.value)return;let n=S.value.scrollSize-e-S.value.viewportSize;b.value?t&&n>1&&(b.value=!1):n<=1&&(b.value=!0,ie(),F(J))}function ge(){b.value=!b.value,b.value&&(ie(),F(J))}u(()=>{b.value&&F(J)});function _e(e){_.value=e}function ve(e){d(`log-click`,e)}let ye=N(null),X=N(!1),be=p(),{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 s.serviceLabel?`Service: ${s.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,o)=>(n(),j(`div`,_t,[I(`div`,vt,[E(Ve,{"model-value":_.value,"onUpdate:modelValue":_e},null,8,[`model-value`]),I(`div`,yt,[!w.value&&G.value>0?(n(),B(r(a),{key:0,icon:C.value?`pi pi-eye`:`pi pi-eye-slash`,severity:C.value?`warn`:`secondary`,text:``,rounded:``,size:`small`,"aria-label":C.value?r(f)(`logViewer.showingHidden`):r(f)(`logViewer.hiddenFiltered`),title:r(f)(`logViewer.hiddenLogsToggle`,{n:G.value}),onClick:o[0]||=e=>C.value=!C.value},null,8,[`icon`,`severity`,`aria-label`,`title`])):A(``,!0),I(`span`,bt,[M(P(w.value?s.logs.length:W.value.length)+` / `,1),te(I(`select`,{"onUpdate:modelValue":o[1]||=e=>h.value=e,class:`log-viewer__limit-select`,title:r(f)(`logViewer.maxLines`)},[(n(),j(D,null,l(m,e=>I(`option`,{key:e,value:e},P(e),9,St)),64))],8,xt),[[t,h.value,void 0,{number:!0}]])]),s.showStats&&fe.value!==null?(n(),j(`span`,{key:1,class:`log-viewer__stats`,title:r(f)(`logViewer.timeSpan`)},`⏱ `+P(fe.value),9,Ct)):A(``,!0),s.showStats&&s.receivedPerSec!==void 0?(n(),j(`span`,{key:2,class:`log-viewer__stats`,title:r(f)(`logViewer.throughput`)},`↓`+P(s.receivedPerSec)+`/s · ⬡`+P(s.flushedPerSec)+`/s`,9,wt)):A(``,!0),E(r(a),{icon:w.value?`pi pi-code`:`pi pi-align-left`,severity:w.value?`warn`:`secondary`,text:``,rounded:``,size:`small`,"aria-label":w.value?r(f)(`logViewer.simpleModeOn`):r(f)(`logViewer.simpleModeOff`),title:r(f)(`logViewer.toggleSimple`),onClick:o[2]||=e=>w.value=!w.value},null,8,[`icon`,`severity`,`aria-label`,`title`]),E(r(a),{icon:`pi pi-microchip-ai`,severity:`secondary`,text:``,rounded:``,size:`small`,"aria-label":r(f)(`logViewer.sendToAi`),title:r(f)(`logViewer.sendToAiTitle`),onClick:Ee},null,8,[`aria-label`,`title`]),I(`div`,Tt,[E(r(a),{icon:b.value?`pi pi-pause`:`pi pi-arrow-down`,severity:b.value?`success`:`secondary`,text:``,rounded:``,size:`small`,"aria-label":b.value?r(f)(`logViewer.autoScrollOn`):r(f)(`logViewer.autoScrollOff`),title:b.value?r(f)(`logViewer.live`):r(f)(`logViewer.paused`),onClick:ge},null,8,[`icon`,`severity`,`aria-label`,`title`]),!b.value&&O.value>0?(n(),j(`span`,{key:0,class:`log-viewer__waiting-badge`,title:r(f)(`logViewer.waitingLogs`,{n:O.value})},P(O.value>999?`999+`:O.value),9,Et)):A(``,!0)])])]),i.loading&&s.logs.length===0?(n(),j(`div`,Dt,[E(r(y),{style:{width:`2rem`,height:`2rem`}}),I(`span`,null,P(r(f)(`logViewer.loading`)),1)])):W.value.length===0?(n(),j(`div`,Ot,P(r(f)(`logViewer.empty`)),1)):w.value?(n(),B(r(gt),{key:2,ref_key:`listRef`,ref:S,data:s.logs,class:`log-viewer__scroll`,onScroll:he},{default:R(({item:e})=>[I(`span`,kt,P(e.raw),1)]),_:1},8,[`data`])):(n(),B(r(gt),{key:3,ref_key:`listRef`,ref:S,data:W.value,class:`log-viewer__scroll`,onScroll:he},{default:R(({item:e,index:t})=>[Ne(t)?(n(),j(`div`,At,[o[4]||=I(`span`,{class:`log-viewer__time-separator-line`},null,-1),I(`span`,jt,P(Pe(Me(e))),1),o[5]||=I(`span`,{class:`log-viewer__time-separator-line`},null,-1)])):A(``,!0),e._type===`card`?(n(),B(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:R(()=>[(n(!0),j(D,null,l(e.body,e=>(n(),B(Se,{key:e.id,log:e,onClick:ve},null,8,[`log`]))),128))]),_:2},1032,[`title`,`default-collapsed`,`last-line`])):(n(),B(Se,{key:2,log:e,onClick:ve},null,8,[`log`]))]),_:1},8,[`data`])),E(r(x),{visible:X.value,header:r(f)(`kanban.board.launchAiDialog.header`),modal:!0,style:{width:`700px`,maxHeight:`80vh`},breakpoints:{"800px":`95vw`},"onUpdate:visible":o[3]||=e=>{e||(X.value=!1)},pt:{content:{style:`overflow-y:auto`}}},{default:R(()=>[E(g,{compact:``,onSelectScenario:De,onSkip:Oe})]),_:1},8,[`visible`,`header`]),E(re,{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-CV_lCcKm.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{Bi as e,Bn as t,Ca as n,Cn as r,Dn as i,F as ee,Ii as a,Ri as te,T as ne,Yn as re,_i as o,ai as ie,ci as s,di as c,fi as l,ha as u,ka as d,li as f,nn as p,ui as ae,yi as m,yn as oe}from"./index-
|
|
1
|
+
import{Bi as e,Bn as t,Ca as n,Cn as r,Dn as i,F as ee,Ii as a,Ri as te,T as ne,Yn as re,_i as o,ai as ie,ci as s,di as c,fi as l,ha as u,ka as d,li as f,nn as p,ui as ae,yi as m,yn as oe}from"./index-CV_lCcKm.js";import{t as se}from"./ProcessControls-D3MHr6vJ.js";import{n as h,t as ce}from"./ProcessMetrics-tRbudcTQ.js";import{t as le}from"./LogViewer-D-j9SP-8.js";var ue={class:`process-detail`},de={key:0,class:`process-detail__loading`},fe={key:1,class:`process-detail__error`},pe={class:`process-detail__header`},me={class:`process-detail__header-left`},g={class:`process-detail__title`},_={class:`process-detail__id`},v={key:0,class:`process-detail__metrics`},y={class:`section-title`},b={key:1,class:`process-detail__metrics-skeleton`},x={class:`metric-skeleton`},S={class:`metric-skeleton`},C={class:`process-detail__info`},w={class:`info-grid`},T={key:0,class:`info-item`},E={class:`info-label`},D={class:`info-value`},O={key:1,class:`info-item`},k={class:`info-label`},A={class:`info-value`},j={class:`info-item`},M={class:`info-label`},N={class:`info-value`},P={key:2,class:`info-item`},F={class:`info-label`},I={class:`info-value`},L={key:3,class:`info-item`},R={class:`info-label`},he={class:`info-value`},ge={class:`process-detail__logs`},_e={class:`section-title`},ve={class:`process-detail__log-container`},z=r(m({__name:`ProcessDetailPage`,props:{agentId:{},processId:{}},setup(r){let m=r,z=t(),{t:B}=re(),ye=ee(),be=s(()=>V.value?.agentId?ye.agents.find(e=>e.config.id===V.value.agentId)?.config.name??V.value.agentId:null),V=u(null),H=u([]),U=u(null),W=u(!1),G=u(!0),K=u(!0),q=u(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=s(()=>Z[V.value?.state??`stopped`]??Z.stopped);async function $(){try{V.value=await p.process.get.query({agentId:m.agentId,id:m.processId})}catch(e){q.value=e instanceof Error?e.message:`Failed to load process`}}async function xe(){K.value=!0;try{H.value=await p.process.logs.query({agentId:m.agentId,processId:m.processId})}catch{}finally{K.value=!1}}async function Se(){W.value=!0;try{U.value=await p.process.metrics.query({agentId:m.agentId,processId:m.processId})}catch{}finally{W.value=!1}}function Ce(){let e=p.process.onLog.subscribe({agentId:m.agentId,processId:m.processId},{onData(e){H.value=[...H.value,e],H.value.length>1e4&&(H.value=H.value.slice(H.value.length-1e4))}});J=()=>e.unsubscribe()}function we(){let e=p.process.onStatus.subscribe({agentId:m.agentId,processId:m.processId},{onData(e){V.value=e}});Y=()=>e.unsubscribe()}function Te(){let e=p.process.onMetrics.subscribe({agentId:m.agentId,processId:m.processId},{onData(e){U.value=e}});X=()=>e.unsubscribe()}function Ee(){$()}return a(async()=>{G.value=!0,await Promise.all([$(),xe(),Se()]),G.value=!1,Ce(),we(),Te()}),te(()=>{J?.(),Y?.(),X?.()}),(t,r)=>(e(),l(`div`,ue,[G.value?(e(),l(`div`,de,[o(n(ne),{style:{width:`3rem`,height:`3rem`}}),f(`span`,null,d(n(B)(`processDetail.loading`)),1)])):q.value?(e(),l(`div`,fe,[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),o(n(i),{label:n(B)(`processDetail.goBack`),icon:`pi pi-arrow-left`,severity:`secondary`,onClick:r[0]||=e=>n(z).back()},null,8,[`label`])])):V.value?(e(),l(ie,{key:2},[f(`div`,pe,[f(`div`,me,[o(n(i),{icon:`pi pi-arrow-left`,text:``,rounded:``,severity:`secondary`,"aria-label":n(B)(`processDetail.goBack`),onClick:r[1]||=e=>n(z).back()},null,8,[`aria-label`]),f(`div`,g,[f(`h1`,null,d(V.value.serviceId),1),f(`span`,_,d(V.value.id),1)]),o(n(oe),{value:V.value.state,severity:Q.value.severity,icon:Q.value.icon},null,8,[`value`,`severity`,`icon`])]),o(se,{"agent-id":m.agentId,"process-id":m.processId,state:V.value.state,onAction:Ee},null,8,[`agent-id`,`process-id`,`state`])]),U.value||W.value?(e(),l(`section`,v,[f(`h2`,y,d(n(B)(`processDetail.metrics`)),1),U.value?(e(),ae(ce,{key:0,cpu:U.value.cpu,memory:U.value.memory},null,8,[`cpu`,`memory`])):(e(),l(`div`,b,[f(`div`,x,[o(n(h),{width:`4rem`,height:`0.75rem`,class:`mb-2`}),o(n(h),{width:`3rem`,height:`1.75rem`,class:`mb-3`}),o(n(h),{width:`100%`,height:`6px`,"border-radius":`4px`})]),f(`div`,S,[o(n(h),{width:`4rem`,height:`0.75rem`,class:`mb-2`}),o(n(h),{width:`3rem`,height:`1.75rem`,class:`mb-3`}),o(n(h),{width:`6rem`,height:`0.65rem`})])]))])):c(``,!0),f(`section`,C,[f(`div`,w,[V.value.pid?(e(),l(`div`,T,[f(`span`,E,d(n(B)(`processDetail.pid`)),1),f(`span`,D,d(V.value.pid),1)])):c(``,!0),V.value.agentId?(e(),l(`div`,O,[f(`span`,k,d(n(B)(`processDetail.agent`)),1),f(`span`,A,d(be.value),1)])):c(``,!0),f(`div`,j,[f(`span`,M,d(n(B)(`processDetail.restarts`)),1),f(`span`,N,d(V.value.restartCount),1)]),V.value.startedAt?(e(),l(`div`,P,[f(`span`,F,d(n(B)(`processDetail.started`)),1),f(`span`,I,d(new Date(V.value.startedAt).toLocaleString()),1)])):c(``,!0),V.value.exitCode==null?c(``,!0):(e(),l(`div`,L,[f(`span`,R,d(n(B)(`processDetail.exitCode`)),1),f(`span`,he,d(V.value.exitCode),1)]))])]),f(`section`,ge,[f(`h2`,_e,d(n(B)(`processDetail.logs`)),1),f(`div`,ve,[o(le,{logs:H.value,loading:K.value,"service-label":V.value?.serviceId},null,8,[`logs`,`loading`,`service-label`])])])],64)):c(``,!0)]))}}),[[`__scopeId`,`data-v-9599e2e1`]]);export{z as default};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{Bi as e,Ca as t,Cn as n,Fn as r,Mr as i,O as a,Oa as o,Oi as s,Xn as c,Yn as l,_i as u,ci as d,fi as f,ka as p,li as m,yi as h}from"./index-
|
|
1
|
+
import{Bi as e,Ca as t,Cn as n,Fn as r,Mr as i,O as a,Oa as o,Oi as s,Xn as c,Yn as l,_i as u,ci as d,fi as f,ka as p,li as m,yi as h}from"./index-CV_lCcKm.js";var g=c.extend({name:`skeleton`,style:`
|
|
2
2
|
.p-skeleton {
|
|
3
3
|
display: block;
|
|
4
4
|
overflow: hidden;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{$i as e,B as t,Bi as n,Bn as r,Ca as i,Cn as a,Dn as o,F as ee,Gi as te,Gn as ne,Ii as re,Ln as ie,R as ae,T as oe,Tn as se,Wn as ce,Yn as le,Zt as ue,_i as s,a as de,ai as c,bn as l,ci as u,di as d,dn as fe,fi as f,gi as p,ha as m,hn as pe,ia as h,ka as g,li as _,mn as me,ni as v,nn as y,ra as b,ui as x,yi as S,yn as C,z as w,zn as he}from"./index-CIcE6DNv.js";import{t as ge}from"./project.store-CVbXSH5d.js";import{t as _e}from"./EnvironmentSelector-DHoYUCTH.js";import{n as ve,t as T}from"./column-CR3Hix4J.js";import{t as ye}from"./card-CsmU2iiY.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(S({__name:`ProjectDetailPage`,props:{projectId:{}},setup(a){let S=a,{t:D}=le(),O=r();he();let k=ne(),A=ce(),j=ge(),M=ae(),ze=ee(),N=de(),Be=ue(),Ve=t(),P=m(null),F=m(!0),I=m(!1),L=m(!1),R=m(!1),z=m(``),B=m(``),V=m({}),H=m(``),U=m(!1),W=m(``),G=m(!1),K=u(()=>P.value?P.value.serviceIds.map(e=>M.services.find(t=>t.id===e)).filter(e=>!!e):[]),He=u(()=>{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=u(()=>P.value?.activeEnvironmentId??null),q=u(()=>{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:w(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:w(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:w(e),life:5e3})}finally{let{[e.id]:t,...n}=V.value;V.value=n}}async function X(){F.value=!0;try{P.value=await y.project.get.query({id:S.projectId}),Be.setActiveProject(S.projectId),await Ve.fetchAll(S.projectId)}catch(e){k.add({severity:`error`,summary:`Error`,detail:w(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 y.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:w(e),life:5e3})}finally{I.value=!1}}}async function Q(){if(P.value){I.value=!0;try{P.value=await y.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:w(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:w(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 y.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:w(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 y.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:w(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 y.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:w(e),life:5e3})}}return re(async()=>{await Promise.all([X(),M.fetchAll(),ze.fetchAll(),N.fetchAll()])}),e(()=>S.projectId,()=>{X()}),(e,t)=>{let r=te(`tooltip`);return n(),f(`div`,be,[F.value?(n(),f(`div`,xe,[s(i(oe))])):P.value?(n(),f(c,{key:2},[_(`div`,Ce,[s(i(o),{icon:`pi pi-arrow-left`,severity:`secondary`,text:``,rounded:``,onClick:t[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:t[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(),f(`div`,Oe,[s(i(l),{modelValue:z.value,"onUpdate:modelValue":t[3]||=e=>z.value=e,autofocus:``,class:`edit-input`,onKeyup:[v(Z,[`enter`]),t[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:t[5]||=e=>L.value=!1})])):(n(),f(`div`,{key:1,class:`info-value clickable`,onClick:Ye},[p(g(P.value.name)+` `,1),t[16]||=_(`i`,{class:`pi pi-pencil edit-icon`},null,-1)]))]),_(`div`,ke,[_(`span`,Ae,g(i(D)(`common.description`)),1),R.value?(n(),f(`div`,je,[s(i(l),{modelValue:B.value,"onUpdate:modelValue":t[6]||=e=>B.value=e,autofocus:``,class:`edit-input`,onKeyup:[v(Q,[`enter`]),t[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:t[8]||=e=>R.value=!1})])):(n(),f(`div`,{key:1,class:`info-value clickable`,onClick:Xe},[p(g(P.value.description||i(D)(`projectDetail.noDescription`))+` `,1),t[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(pe),null,{default:b(()=>[s(i(me),{class:`pi pi-search`}),s(i(l),{modelValue:H.value,"onUpdate:modelValue":t[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:t[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:t[11]||=e=>i(O).push({name:`service-create`,query:{projectId:P.value.id}})},null,8,[`label`])])]),K.value.length>0?(n(),x(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(()=>[p(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(C),{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})=>[p(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(),x(i(C),{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(),f(`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(),x(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`])),[[r,i(D)(`actions.start`),void 0,{top:!0}]]):d(``,!0),J(e.id)&&Ge(J(e.id).state)?(n(),f(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`]),[[r,i(D)(`actions.stop`),void 0,{top:!0}]]),Ke(J(e.id).state)?h((n(),x(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`])),[[r,i(D)(`actions.restart`),void 0,{top:!0}]]):d(``,!0)],64)):d(``,!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`]),[[r,i(D)(`projectDetail.removeFromProject`),void 0,{top:!0}]])])]),_:1},8,[`header`])]),_:1},8,[`value`])):(n(),f(`div`,Le,[_(`p`,null,g(i(D)(`projectDetail.noServices`)),1)]))]),s(i(se),{visible:U.value,"onUpdate:visible":t[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:t[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(fe),{modelValue:W.value,"onUpdate:modelValue":t[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(),f(`div`,Se,[t[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:t[0]||=e=>i(O).push({name:`projects`})},null,8,[`label`])]))])}}}),[[`__scopeId`,`data-v-750c4854`]]);export{D as default};
|
|
1
|
+
import{$i as e,B as t,Bi as n,Bn as r,Ca as i,Cn as a,Dn as o,F as ee,Gi as te,Gn as ne,Ii as re,Ln as ie,R as ae,T as oe,Tn as se,Wn as ce,Yn as le,Zt as ue,_i as s,a as de,ai as c,bn as l,ci as u,di as d,dn as fe,fi as f,gi as p,ha as m,hn as pe,ia as h,ka as g,li as _,mn as me,ni as v,nn as y,ra as b,ui as x,yi as S,yn as C,z as w,zn as he}from"./index-CV_lCcKm.js";import{t as ge}from"./project.store-1ZxiIOdG.js";import{t as _e}from"./EnvironmentSelector-BsLO-o9W.js";import{n as ve,t as T}from"./column-DyznW54C.js";import{t as ye}from"./card-DyK4dvjg.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(S({__name:`ProjectDetailPage`,props:{projectId:{}},setup(a){let S=a,{t:D}=le(),O=r();he();let k=ne(),A=ce(),j=ge(),M=ae(),ze=ee(),N=de(),Be=ue(),Ve=t(),P=m(null),F=m(!0),I=m(!1),L=m(!1),R=m(!1),z=m(``),B=m(``),V=m({}),H=m(``),U=m(!1),W=m(``),G=m(!1),K=u(()=>P.value?P.value.serviceIds.map(e=>M.services.find(t=>t.id===e)).filter(e=>!!e):[]),He=u(()=>{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=u(()=>P.value?.activeEnvironmentId??null),q=u(()=>{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:w(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:w(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:w(e),life:5e3})}finally{let{[e.id]:t,...n}=V.value;V.value=n}}async function X(){F.value=!0;try{P.value=await y.project.get.query({id:S.projectId}),Be.setActiveProject(S.projectId),await Ve.fetchAll(S.projectId)}catch(e){k.add({severity:`error`,summary:`Error`,detail:w(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 y.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:w(e),life:5e3})}finally{I.value=!1}}}async function Q(){if(P.value){I.value=!0;try{P.value=await y.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:w(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:w(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 y.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:w(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 y.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:w(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 y.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:w(e),life:5e3})}}return re(async()=>{await Promise.all([X(),M.fetchAll(),ze.fetchAll(),N.fetchAll()])}),e(()=>S.projectId,()=>{X()}),(e,t)=>{let r=te(`tooltip`);return n(),f(`div`,be,[F.value?(n(),f(`div`,xe,[s(i(oe))])):P.value?(n(),f(c,{key:2},[_(`div`,Ce,[s(i(o),{icon:`pi pi-arrow-left`,severity:`secondary`,text:``,rounded:``,onClick:t[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:t[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(),f(`div`,Oe,[s(i(l),{modelValue:z.value,"onUpdate:modelValue":t[3]||=e=>z.value=e,autofocus:``,class:`edit-input`,onKeyup:[v(Z,[`enter`]),t[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:t[5]||=e=>L.value=!1})])):(n(),f(`div`,{key:1,class:`info-value clickable`,onClick:Ye},[p(g(P.value.name)+` `,1),t[16]||=_(`i`,{class:`pi pi-pencil edit-icon`},null,-1)]))]),_(`div`,ke,[_(`span`,Ae,g(i(D)(`common.description`)),1),R.value?(n(),f(`div`,je,[s(i(l),{modelValue:B.value,"onUpdate:modelValue":t[6]||=e=>B.value=e,autofocus:``,class:`edit-input`,onKeyup:[v(Q,[`enter`]),t[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:t[8]||=e=>R.value=!1})])):(n(),f(`div`,{key:1,class:`info-value clickable`,onClick:Xe},[p(g(P.value.description||i(D)(`projectDetail.noDescription`))+` `,1),t[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(pe),null,{default:b(()=>[s(i(me),{class:`pi pi-search`}),s(i(l),{modelValue:H.value,"onUpdate:modelValue":t[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:t[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:t[11]||=e=>i(O).push({name:`service-create`,query:{projectId:P.value.id}})},null,8,[`label`])])]),K.value.length>0?(n(),x(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(()=>[p(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(C),{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})=>[p(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(),x(i(C),{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(),f(`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(),x(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`])),[[r,i(D)(`actions.start`),void 0,{top:!0}]]):d(``,!0),J(e.id)&&Ge(J(e.id).state)?(n(),f(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`]),[[r,i(D)(`actions.stop`),void 0,{top:!0}]]),Ke(J(e.id).state)?h((n(),x(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`])),[[r,i(D)(`actions.restart`),void 0,{top:!0}]]):d(``,!0)],64)):d(``,!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`]),[[r,i(D)(`projectDetail.removeFromProject`),void 0,{top:!0}]])])]),_:1},8,[`header`])]),_:1},8,[`value`])):(n(),f(`div`,Le,[_(`p`,null,g(i(D)(`projectDetail.noServices`)),1)]))]),s(i(se),{visible:U.value,"onUpdate:visible":t[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:t[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(fe),{modelValue:W.value,"onUpdate:modelValue":t[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(),f(`div`,Se,[t[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:t[0]||=e=>i(O).push({name:`projects`})},null,8,[`label`])]))])}}}),[[`__scopeId`,`data-v-750c4854`]]);export{D as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{Bi as e,Bn as t,Ca as n,Cn as r,Dn as i,Gn as a,Hi as o,Ii as s,On as c,T as l,Tn as u,Yn as d,Zt as f,_i as p,ai as m,bn as h,ci as g,di as _,fi as v,gi as y,ha as b,ka as x,li as S,ni as C,nn as w,ra as T,ui as E,yi as D,z as ee}from"./index-
|
|
1
|
+
import{Bi as e,Bn as t,Ca as n,Cn as r,Dn as i,Gn as a,Hi as o,Ii as s,On as c,T as l,Tn as u,Yn as d,Zt as f,_i as p,ai as m,bn as h,ci as g,di as _,fi as v,gi as y,ha as b,ka as x,li as S,ni as C,nn as w,ra as T,ui as E,yi as D,z as ee}from"./index-CV_lCcKm.js";import{t as O}from"./project.store-1ZxiIOdG.js";import{t as k}from"./card-DyK4dvjg.js";var A={class:`card-title-row`},j={class:`card-title`},M={class:`card-description`},N={class:`card-meta`},P={class:`meta-item`},F=r(D({__name:`ProjectCard`,props:{project:{}},emits:[`click`],setup(t,{emit:r}){let i=r;function a(e,t){return!e||e.length<=t?e||``:e.slice(0,t)+`...`}return(r,o)=>(e(),E(n(k),{class:`project-card`,onClick:o[0]||=e=>i(`click`)},{title:T(()=>[S(`div`,A,[S(`span`,j,x(t.project.name),1),p(n(c),{value:t.project.serviceIds.length,severity:`info`},null,8,[`value`])])]),content:T(()=>[S(`p`,M,x(a(t.project.description??``,120)),1),S(`div`,N,[S(`span`,P,[o[1]||=S(`i`,{class:`pi pi-box`},null,-1),y(` `+x(t.project.serviceIds.length)+` service`+x(t.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=r(D({__name:`ProjectListPage`,setup(r){let{t:c}=d(),y=t(),D=a(),k=O(),A=f(),j=b(``),M=b(!1),N=b(!1),P=b({name:``,description:``}),X=g(()=>{let e=j.value.toLowerCase().trim();return e?k.projects.filter(t=>t.name.toLowerCase().includes(e)||(t.description??``).toLowerCase().includes(e)):k.projects});s(()=>{k.fetchAll()});function Z(e){A.setActiveProject(e.id),y.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 w.project.create.mutate({name:P.value.name.trim(),description:P.value.description.trim()||void 0});D.add({severity:`success`,summary:c(`projectList.created`),detail:c(`projectList.createdDetail`,{name:e.name}),life:3e3}),M.value=!1,await k.fetchAll(),y.push({name:`project-detail`,params:{projectId:e.id}})}catch(e){D.add({severity:`error`,summary:c(`projectList.error`),detail:ee(e)??c(`projectList.failedToCreate`),life:5e3})}finally{N.value=!1}}}return(t,r)=>(e(),v(`div`,I,[S(`div`,L,[S(`h1`,null,x(n(c)(`projectList.title`)),1),p(n(i),{label:n(c)(`projectList.newProject`),icon:`pi pi-plus`,onClick:Q},null,8,[`label`])]),S(`div`,R,[S(`span`,z,[r[6]||=S(`i`,{class:`pi pi-search`},null,-1),p(n(h),{modelValue:j.value,"onUpdate:modelValue":r[0]||=e=>j.value=e,placeholder:n(c)(`projectList.searchPlaceholder`),class:`search-input`},null,8,[`modelValue`,`placeholder`])])]),n(k).loading?(e(),v(`div`,B,[p(n(l))])):n(k).error?(e(),v(`div`,V,[r[7]||=S(`i`,{class:`pi pi-exclamation-triangle`},null,-1),S(`p`,null,x(n(k).error),1),p(n(i),{label:n(c)(`projectList.retry`),icon:`pi pi-refresh`,severity:`secondary`,onClick:r[1]||=e=>n(k).fetchAll()},null,8,[`label`])])):X.value.length===0?(e(),v(`div`,H,[r[8]||=S(`i`,{class:`pi pi-folder-open empty-icon`},null,-1),j.value?(e(),v(`p`,U,x(n(c)(`projectList.noMatchProjects`,{query:j.value})),1)):(e(),v(`p`,W,x(n(c)(`projectList.noProjects`)),1)),j.value?_(``,!0):(e(),E(n(i),{key:2,label:n(c)(`projectList.createProject`),icon:`pi pi-plus`,onClick:Q},null,8,[`label`]))])):(e(),v(`div`,G,[(e(!0),v(m,null,o(X.value,t=>(e(),E(F,{key:t.id,project:t,"data-testid":`project-row-link`,onClick:e=>Z(t)},null,8,[`project`,`onClick`]))),128))])),p(n(u),{visible:M.value,"onUpdate:visible":r[5]||=e=>M.value=e,header:n(c)(`projectList.newProject`),style:{width:`480px`},modal:``,closable:!N.value},{footer:T(()=>[p(n(i),{label:n(c)(`projectList.cancel`),severity:`secondary`,text:``,disabled:N.value,onClick:r[4]||=e=>M.value=!1},null,8,[`label`,`disabled`]),p(n(i),{label:n(c)(`projectList.create`),icon:`pi pi-check`,loading:N.value,disabled:!P.value.name.trim(),onClick:$},null,8,[`label`,`loading`,`disabled`])]),default:T(()=>[S(`div`,K,[S(`label`,q,x(n(c)(`projectList.nameLabel`)),1),p(n(h),{id:`project-name`,modelValue:P.value.name,"onUpdate:modelValue":r[2]||=e=>P.value.name=e,placeholder:n(c)(`projectList.namePlaceholder`),class:`w-full`,autofocus:``,onKeyup:C($,[`enter`])},null,8,[`modelValue`,`placeholder`])]),S(`div`,J,[S(`label`,Y,x(n(c)(`projectList.descriptionLabel`)),1),p(n(h),{id:`project-desc`,modelValue:P.value.description,"onUpdate:modelValue":r[3]||=e=>P.value.description=e,placeholder:n(c)(`projectList.descriptionPlaceholder`),class:`w-full`,onKeyup:C($,[`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,ka as u,ki as d,li as f,nn 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,ka as u,ki as d,li as f,nn as p,yi as m}from"./index-CV_lCcKm.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(),d(()=>{w.value&&(w.value.scrollTop=w.value.scrollHeight)})}function O(){T?.unsubscribe(),T=null}function k(e){O(),T=p.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 p.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 p.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 p.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]||=f(`header`,{class:`random-job-test__header`},[f(`h1`,null,`Random Job Test`),f(`p`,null,`Click start to launch a server job and stream Math.random() values in real time.`)],-1),f(`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})]),f(`div`,_,[f(`span`,null,[i[0]||=f(`strong`,null,`Job ID:`,-1),c(` `+u(m.value??`none`),1)]),f(`span`,null,[i[1]||=f(`strong`,null,`Status:`,-1),c(` `+u(S.value?`running`:`idle`),1)]),f(`span`,null,[i[2]||=f(`strong`,null,`Lines:`,-1),c(` `+u(C.value.length),1)])]),f(`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,u(C.value.join(`
|
|
2
2
|
`)),1))],512)]))}}),[[`__scopeId`,`data-v-96a75827`]]);export{S as default};
|