@runeya/runeya 2.0.10 → 2.0.13
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 +434 -28
- package/agent/index.js.map +1 -1
- package/agent-manager-3DHUF2DC-KN6O7WSA.js +8 -0
- package/{chunk-DODGBBTE.js → chunk-AJW7LDO5.js} +28 -8
- package/chunk-AJW7LDO5.js.map +1 -0
- package/{dist-HZBWBT6S.js → dist-HGCFHXO4.js} +1308 -408
- package/dist-HGCFHXO4.js.map +1 -0
- package/index.js +5 -1
- package/index.js.map +1 -1
- package/mcp-server/index.js +139 -1
- package/mcp-server/index.js.map +1 -1
- package/package.json +1 -1
- package/web/assets/{AddressBar.vue-D_8vQPIF.js → AddressBar.vue-B6BOLYmO.js} +1 -1
- package/web/assets/AgentScalarChatInterface.vue-DKSmjtvV.js +13 -0
- package/web/assets/AgentTerminalPage-BZ6jaRAs.js +1 -0
- package/web/assets/AgentTerminalPage-anYDkj7H.css +1 -0
- package/web/assets/AiChatPage-C1r42kX7.js +1 -0
- package/web/assets/AppLayout-B7-y0tBI.css +1 -0
- package/web/assets/AppLayout-DnMCPCO8.js +1 -0
- package/web/assets/AuditPage-CTdEvLE-.js +1 -0
- package/web/assets/{CodeInput.vue-nIhSM0FX.js → CodeInput.vue-Sp2dM8hl.js} +1 -1
- package/web/assets/{Collection.vue-CkwnxBu4.js → Collection.vue-CdPjaC9d.js} +1 -1
- package/web/assets/{CollectionAuthentication.vue-CiZinGpr.js → CollectionAuthentication.vue-DMPykUah.js} +1 -1
- package/web/assets/CollectionCookies.vue-DqNgVtd-.js +1 -0
- package/web/assets/{CollectionEnvironment.vue-3bWtuG1B.js → CollectionEnvironment.vue-DKab6xJJ.js} +1 -1
- package/web/assets/{CollectionOverview.vue-BheZFfD3.js → CollectionOverview.vue-DlODh8Vk.js} +1 -1
- package/web/assets/CollectionScripts.vue-B2gkfo4d.js +1 -0
- package/web/assets/{CollectionServers.vue-Ja8mYDaK.js → CollectionServers.vue-Br-QackN.js} +1 -1
- package/web/assets/{CollectionSettings.vue-DOB9JUg8.js → CollectionSettings.vue-Cm6NQbDm.js} +1 -1
- package/web/assets/CollectionSync.vue-bB7sdahP.js +1 -0
- package/web/assets/{CommandActionInput.vue-BBijVqe7.js → CommandActionInput.vue-CZ3-rqSL.js} +1 -1
- package/web/assets/{Cookies.vue-DgVzSolJ.js → Cookies.vue-Duz-a-ga.js} +1 -1
- package/web/assets/DashboardPage-hIc9wP_Q.js +1 -0
- package/web/assets/{DataTable.vue-DXTWz2Vi.js → DataTable.vue-Dorr-r7J.js} +1 -1
- package/web/assets/{DataTableCheckbox.vue-BA5yHmxd.js → DataTableCheckbox.vue-CATn-YYp.js} +1 -1
- package/web/assets/{DataTableHeader.vue-U2le7KBO.js → DataTableHeader.vue-C3SUSaR8.js} +1 -1
- package/web/assets/{DataTableInput.vue-DpeNUUXc.js → DataTableInput.vue-_06pwPUA.js} +1 -1
- package/web/assets/{DeleteSidebarListElement.vue-C2SV2geU.js → DeleteSidebarListElement.vue-DoqRnMXx.js} +1 -1
- package/web/assets/{EditSidebarListElement.vue-DvvYjTMO.js → EditSidebarListElement.vue-BqTw6Tho.js} +1 -1
- package/web/assets/{EditorIcon-BPEaZrXC.js → EditorIcon-CbpIT0A1.js} +1 -1
- package/web/assets/{EmptyState.vue-Be8_w2rR.js → EmptyState.vue-Bur5L0a4.js} +1 -1
- package/web/assets/{Environment.vue-D0PdeVIp.js → Environment.vue-C50lH9cP.js} +1 -1
- package/web/assets/{EnvironmentForm-Dm3dFrSU.js → EnvironmentForm-BDfzXuHx.js} +2 -2
- package/web/assets/EnvironmentFormPage-CLylRN6B.js +1 -0
- package/web/assets/EnvironmentListPage-DlUT6LnX.js +1 -0
- package/web/assets/{EnvironmentModal.vue-Bssf0U5X.js → EnvironmentModal.vue-Dz5CArRX.js} +1 -1
- package/web/assets/EnvironmentSelector-DHoYUCTH.js +1 -0
- package/web/assets/{Form.vue-Dv4a31zh.js → Form.vue-BzZCMgN1.js} +1 -1
- package/web/assets/{IconSelector.vue-BsYvff6K.js → IconSelector.vue-BCmeqlrs.js} +1 -1
- package/web/assets/KanbanBoardPage-DoXgFMvo.js +141 -0
- package/web/assets/{KanbanBoardPage-7nOYpwHn.css → KanbanBoardPage-hqNojI5j.css} +1 -1
- package/web/assets/KanbanListPage-BLdNz80q.js +1 -0
- package/web/assets/LaunchProjectPage-DjRA2D3h.js +1 -0
- package/web/assets/LaunchServicesPage-CKaGcu3z.js +1 -0
- package/web/assets/LogViewer-CtX_6uFM.js +3 -0
- package/web/assets/{ProcessControls-DfFxf6jZ.js → ProcessControls-BY-_9zo7.js} +1 -1
- package/web/assets/ProcessDetailPage-Bqis1qMA.js +1 -0
- package/web/assets/{ProcessMetrics-CLa8mdh2.js → ProcessMetrics-DQybvwcA.js} +2 -2
- package/web/assets/ProjectDetailPage-FBPonwd5.js +1 -0
- package/web/assets/ProjectListPage-xwlVXN8A.js +1 -0
- package/web/assets/{RandomJobTestPage-D2OB5pqD.js → RandomJobTestPage-0pqne-FD.js} +1 -1
- package/web/assets/{Request.vue-DHQd9eyp.js → Request.vue-Db4XEPKt.js} +1 -1
- package/web/assets/{RequestAuth.vue-CEVOgzEk.js → RequestAuth.vue-CK1A6ySt.js} +1 -1
- package/web/assets/RequestRoot.vue-BLF0GGT5.js +19 -0
- package/web/assets/{ScalarAsciiArt.vue-CyYmv9BB.js → ScalarAsciiArt.vue-BPdUsXWj.js} +1 -1
- package/web/assets/{ScalarIconEyeSlash.vue-qR90sHHe.js → ScalarIconEyeSlash.vue-BBDBShRO.js} +1 -1
- package/web/assets/{ScalarIconTrash.vue-Ll6Zw6_W.js → ScalarIconTrash.vue-Tpr15aNY.js} +1 -1
- package/web/assets/ScenarioEditorPage-DNuo-2Gi.js +14 -0
- package/web/assets/{ServerVariablesForm.vue-D9sjD4AT.js → ServerVariablesForm.vue-XLQ145gw.js} +1 -1
- package/web/assets/ServiceControlsBar-CCTGcA1t.js +1 -0
- package/web/assets/{ServiceDetailPage-znbWajpt.css → ServiceDetailPage-BELECRic.css} +1 -1
- package/web/assets/ServiceDetailPage-UVg73scN.js +2 -0
- package/web/assets/ServiceFormPage-F3boRKs-.js +1 -0
- package/web/assets/{Settings.vue-DWPIjz57.js → Settings.vue-D_1yQu6i.js} +1 -1
- package/web/assets/SettingsPage-Cg78lQZF.js +225 -0
- package/web/assets/SetupKeyPage-BcaSoLjU.js +1 -0
- package/web/assets/SetupPage-mCVAKLtm.js +1 -0
- package/web/assets/{Sidebar.vue-DVHNacfA.js → Sidebar.vue-De4YlW0c.js} +1 -1
- package/web/assets/{SidebarButton.vue-C4QDgSym.js → SidebarButton.vue-CctYiTRp.js} +1 -1
- package/web/assets/{SidebarListElement.vue-Ch1aI_Bz.js → SidebarListElement.vue-Cv7jUZIM.js} +1 -1
- package/web/assets/UnlockPage-BSpzyZnd.js +1 -0
- package/web/assets/VariablesTable-Dn3IvplD.js +1 -0
- package/web/assets/{VariablesTable-BtdK5olT.css → VariablesTable-W4rxlL35.css} +1 -1
- package/web/assets/{ViewLayout.vue-svdAMKVP.js → ViewLayout.vue-fiagi8zc.js} +1 -1
- package/web/assets/{ViewLayoutContent.vue-CAixUN8B.js → ViewLayoutContent.vue-BehGrsED.js} +1 -1
- package/web/assets/{ViewLayoutSection.vue-C9VAyihF.js → ViewLayoutSection.vue-D4icCgQI.js} +1 -1
- package/web/assets/{active-entities-Dpd4ny38.js → active-entities-CkBGjwu9.js} +1 -1
- package/web/assets/api-reference-D1EfYtPj.js +1 -0
- package/web/assets/{autocomplete-Do-EC8XW.js → autocomplete-CjBHTJWh.js} +4 -4
- package/web/assets/{card-CeTOcGyS.js → card-CsmU2iiY.js} +1 -1
- package/web/assets/{checkbox-C2hHZbMO.js → checkbox-B5XZqi1U.js} +3 -3
- package/web/assets/{chip-CD3EONN7.js → chip-C4pSomPm.js} +1 -1
- package/web/assets/column-CR3Hix4J.js +763 -0
- package/web/assets/{core-Dq8cnTTd.js → core-CtGUajLi.js} +1 -1
- package/web/assets/cssMode-nuznbveH.js +4 -0
- package/web/assets/{dist-CQoPOD_o.js → dist--ZlcDulO.js} +11 -11
- package/web/assets/{dist-BmCpMB7W.js → dist-CXkMrHNP.js} +1 -1
- package/web/assets/{dist-US_vG96F.js → dist-DH_zJr7W.js} +1 -1
- package/web/assets/{dist-CiBpb7F_.js → dist-WjGUyWSO.js} +1 -1
- package/web/assets/{divider-C7F2jaMI.js → divider-CnJlD7qO.js} +1 -1
- package/web/assets/{fieldset-kJDAoVaz.js → fieldset-D9zY6R6s.js} +1 -1
- package/web/assets/{freemarker2-qyf3DfQl.js → freemarker2-Bw43sOne.js} +1 -1
- package/web/assets/handlebars-C8qgW7u6.js +1 -0
- package/web/assets/html-Dy9PKnkr.js +1 -0
- package/web/assets/htmlMode-o8EU0tqo.js +4 -0
- package/web/assets/index-9i25DNQ4.css +1 -0
- package/web/assets/index-CIcE6DNv.js +4308 -0
- package/web/assets/{javascript-Nwj2LVeE.js → javascript-CuRngcUR.js} +1 -1
- package/web/assets/{jsonMode-xQ2R28Fq.js → jsonMode-CsUIxwQq.js} +1 -1
- package/web/assets/{keyboard-CidI6qyD.js → keyboard-DhkINir5.js} +1 -1
- package/web/assets/{lib-Bpt_o5V9.js → lib-E9M4L9vE.js} +1 -1
- package/web/assets/{library-CcEqwrWR.js → library-BXoSag-V.js} +1 -1
- package/web/assets/liquid-CraMnqaK.js +1 -0
- package/web/assets/mdx-DPSW5q1A.js +1 -0
- package/web/assets/{mediaTypes-pLZCmXiT.js → mediaTypes-DDACekzr.js} +1 -1
- package/web/assets/{message-B6M86BRU.js → message-DKOCajc6.js} +1 -1
- package/web/assets/{minus-wesZvWq4.js → minus-CtlH9Syh.js} +1 -1
- package/web/assets/{multiselect-CHEmtEFg.js → multiselect-sshNnjnF.js} +3 -3
- package/web/assets/{password-ISam7EYg.js → password-Dv9g39jb.js} +4 -4
- package/web/assets/{plus-BBMmFC_c.js → plus-CG5Ui-l-.js} +6 -6
- package/web/assets/{pretty-ms-Bj2IaA2r.js → pretty-ms-D2BVTeMx.js} +1 -1
- package/web/assets/process.store-CutdTiYB.js +1 -0
- package/web/assets/project.store-CVbXSH5d.js +1 -0
- package/web/assets/python-BLq8fVkV.js +1 -0
- package/web/assets/{radiobutton-DwoOAEAF.js → radiobutton-Bz_ltBfM.js} +2 -2
- package/web/assets/razor-CVrBU-Fk.js +1 -0
- package/web/assets/router-CuxdGfLF.js +1 -0
- package/web/assets/{settings.store-BGScNTnu.js → settings.store-vM-8jbAF.js} +1 -1
- package/web/assets/store-CTKZgNiD.js +1840 -0
- package/web/assets/{tabpanel-DBInUEl5.js → tabpanel-DaZzgdrv.js} +3 -3
- package/web/assets/trpc-BIjF6nTt.js +1 -0
- package/web/assets/{tsMode-C7uad5vV.js → tsMode-DO5zEzzD.js} +1 -1
- package/web/assets/typescript-Do-K_3Jj.js +1 -0
- package/web/assets/{urls-BuNgEu0U.js → urls-BlVUwVFM.js} +1 -1
- package/web/assets/{use-tree-walker-CJHEPXgB.js → use-tree-walker-xoEX554A.js} +1 -1
- package/web/assets/useAiChatDrawer-BJugMTj0.js +1 -0
- package/web/assets/{useClipboard-DtO-z5Ls.js → useClipboard-B3J6cGK-.js} +1 -1
- package/web/assets/{useLayout-D-FCdkqa.js → useLayout-DHrumlpr.js} +1 -1
- package/web/assets/{usePluginManager-CPTBi3rk.js → usePluginManager-BEbBxZnF.js} +1 -1
- package/web/assets/{useSidebar-BoK12gD1.js → useSidebar-BCBwVF2x.js} +1 -1
- package/web/assets/{vue-router-DSROI5EH.js → vue-router-CuFIegGa.js} +1 -1
- package/web/assets/xml-BolCsFLY.js +1 -0
- package/web/assets/yaml-5iZTkCV3.js +1 -0
- package/web/index.html +2 -2
- package/agent-manager-A4E5CXFT-6PJDFN7J.js +0 -8
- package/chunk-DODGBBTE.js.map +0 -1
- package/dist-HZBWBT6S.js.map +0 -1
- package/web/assets/AgentScalarChatInterface.vue-Be-LbA03.js +0 -13
- package/web/assets/AgentTerminalPage-BZmmd1H1.js +0 -36
- package/web/assets/AgentTerminalPage-EX_n6P3x.css +0 -1
- package/web/assets/AiChatPage-kTk6yC6d.js +0 -1
- package/web/assets/AppLayout-CDtyYNWp.css +0 -1
- package/web/assets/AppLayout-jbNML_m4.js +0 -1
- package/web/assets/AuditPage-S4kDjrZ5.js +0 -1
- package/web/assets/CollectionCookies.vue-BLEJqAhX.js +0 -1
- package/web/assets/CollectionScripts.vue-CsY6tWxk.js +0 -1
- package/web/assets/CollectionSync.vue-B-uKwdTU.js +0 -1
- package/web/assets/DashboardPage-BwZPpURp.js +0 -1
- package/web/assets/EnvironmentFormPage-ByVELlly.js +0 -1
- package/web/assets/EnvironmentListPage-DvaTK4NF.js +0 -1
- package/web/assets/EnvironmentSelector-4kpQpg5e.js +0 -1
- package/web/assets/KanbanBoardPage-7rLK-ucb.js +0 -141
- package/web/assets/KanbanListPage-Dn35VrDc.js +0 -1
- package/web/assets/LaunchProjectPage-Byemtd9C.js +0 -1
- package/web/assets/LaunchServicesPage-CHiV6T5Y.js +0 -1
- package/web/assets/LogViewer-KtrKiUZw.js +0 -3
- package/web/assets/ProcessDetailPage-BOI85Xo7.js +0 -1
- package/web/assets/ProjectDetailPage-CTEt0DSq.js +0 -1
- package/web/assets/ProjectListPage-BrTIxp9K.js +0 -1
- package/web/assets/RequestRoot.vue-BEtC7IEP.js +0 -19
- package/web/assets/ScenarioEditorPage-xCx9aW1X.js +0 -14
- package/web/assets/ServiceControlsBar-DKYIgScL.js +0 -1
- package/web/assets/ServiceDetailPage-B5qBCc9A.js +0 -2
- package/web/assets/ServiceFormPage-BNpWmyj_.js +0 -1
- package/web/assets/SettingsPage-C5lWJT0Z.js +0 -225
- package/web/assets/SetupKeyPage-BiqO4PQr.js +0 -1
- package/web/assets/SetupPage-FEUuQSQ2.js +0 -1
- package/web/assets/UnlockPage-Dhg0hoP-.js +0 -1
- package/web/assets/VariablesTable-DFJHJ9DF.js +0 -1
- package/web/assets/api-reference-C9jD1TQ9.js +0 -1
- package/web/assets/column-xfOef4Rh.js +0 -763
- package/web/assets/cssMode-BzsFOrHs.js +0 -4
- package/web/assets/editor.store-Dzhoqquh.js +0 -1
- package/web/assets/handlebars-Dt_j38Ok.js +0 -1
- package/web/assets/html-BM6JBSDe.js +0 -1
- package/web/assets/htmlMode-BWrj-eTf.js +0 -4
- package/web/assets/index-DXutsd9M.css +0 -1
- package/web/assets/index-Dviyssba.js +0 -4220
- package/web/assets/liquid-CNc1r-Ln.js +0 -1
- package/web/assets/mdx-D5yTipSh.js +0 -1
- package/web/assets/process.store-cvjJzD3H.js +0 -1
- package/web/assets/project.store-C94-7i6c.js +0 -1
- package/web/assets/python-BOLsEvIQ.js +0 -1
- package/web/assets/razor-JsBDv4HY.js +0 -1
- package/web/assets/router-BgHCboHx.js +0 -1
- package/web/assets/store-a88gBDkh.js +0 -1840
- package/web/assets/tag-CQlI4fJK.js +0 -54
- package/web/assets/trpc-CgAubgRH.js +0 -1
- package/web/assets/typescript-C2IozRX9.js +0 -1
- package/web/assets/useAiChatDrawer-D6TRHaNu.js +0 -1
- package/web/assets/xml-DtJwg-5S.js +0 -1
- package/web/assets/yaml-sPGHMYDm.js +0 -1
- /package/{agent-manager-A4E5CXFT-6PJDFN7J.js.map → agent-manager-3DHUF2DC-KN6O7WSA.js.map} +0 -0
- /package/web/assets/{_plugin-vue_export-helper-BVSTY9ge.js → _plugin-vue_export-helper-C08BWUE4.js} +0 -0
- /package/web/assets/{abap-BF8nUS5p.js → abap-BMPR0rjj.js} +0 -0
- /package/web/assets/{apex-Bbj_Fak2.js → apex-DYC4uYYf.js} +0 -0
- /package/web/assets/{azcli-B8w3JS7J.js → azcli-GZlxEjpa.js} +0 -0
- /package/web/assets/{base64-CG47Jc3Y.js → base64-VLYHbiMn.js} +0 -0
- /package/web/assets/{bat-CaNuqacB.js → bat-Cv8OxItG.js} +0 -0
- /package/web/assets/{bicep-DAvnLugW.js → bicep-CuCbE6Ue.js} +0 -0
- /package/web/assets/{cameligo-BlI8LCmP.js → cameligo-BEPX3585.js} +0 -0
- /package/web/assets/{clojure-CxxhrBQl.js → clojure--6rbXIPY.js} +0 -0
- /package/web/assets/{coffee-SkbnTBhO.js → coffee-ByvVcDGX.js} +0 -0
- /package/web/assets/{cpp-Dm2HJxj0.js → cpp-CECtPnZp.js} +0 -0
- /package/web/assets/{csharp-BOGHPGcq.js → csharp-DyYyZ8UX.js} +0 -0
- /package/web/assets/{csp-CMA_7tOs.js → csp-B9apvcI9.js} +0 -0
- /package/web/assets/{css-DU8LSGcn.js → css-CfdBNbB0.js} +0 -0
- /package/web/assets/{cypher-BZPsEDmT.js → cypher-BPqQq4XX.js} +0 -0
- /package/web/assets/{dart-C1tIJhFk.js → dart-BLToxiYU.js} +0 -0
- /package/web/assets/{dist-BPIMeATj.js → dist-COg0nRYK.js} +0 -0
- /package/web/assets/{dockerfile-z4dmGi5q.js → dockerfile-CKo5jN7V.js} +0 -0
- /package/web/assets/{ecl-Rv9JwhOI.js → ecl-qo8pi1Ty.js} +0 -0
- /package/web/assets/{elixir-DL6xFSed.js → elixir-Dv1YAMPJ.js} +0 -0
- /package/web/assets/{flow9-DFZ52-2d.js → flow9-BKTKs1nN.js} +0 -0
- /package/web/assets/{fsharp-RvVOB9Dm.js → fsharp-BPoxgmtD.js} +0 -0
- /package/web/assets/{go-B2USMDMv.js → go-DgJ-2ryf.js} +0 -0
- /package/web/assets/{graphql-CsHpCYeJ.js → graphql-YTK8zpFe.js} +0 -0
- /package/web/assets/{hcl-CK021J-J.js → hcl-tYOvwaJ3.js} +0 -0
- /package/web/assets/{ini-v1EoSUxR.js → ini-BTZ3lNbM.js} +0 -0
- /package/web/assets/{java-CUXpSPxY.js → java-boRe0CIQ.js} +0 -0
- /package/web/assets/{julia-DwKveiZg.js → julia-K6BtoWYX.js} +0 -0
- /package/web/assets/{kotlin-SsG_4ZBt.js → kotlin-CglG00z4.js} +0 -0
- /package/web/assets/{less-BviquM8A.js → less-DlnIYk4g.js} +0 -0
- /package/web/assets/{lexon-C8G_qWst.js → lexon-D4aKXJ0J.js} +0 -0
- /package/web/assets/{lua-xqYje_o5.js → lua-DeQCQ0IN.js} +0 -0
- /package/web/assets/{m3-B5PetinG.js → m3-yCjRJP_i.js} +0 -0
- /package/web/assets/{markdown-BksexNux.js → markdown-C2IT79AR.js} +0 -0
- /package/web/assets/{mips-DKSTezUQ.js → mips-BAnhwv_D.js} +0 -0
- /package/web/assets/{msdax-SeFNE86e.js → msdax-D1jHDTih.js} +0 -0
- /package/web/assets/{mysql-5TQWJDdB.js → mysql-CTJU-jL7.js} +0 -0
- /package/web/assets/{objective-c-DeaYl08g.js → objective-c-CwxzUA28.js} +0 -0
- /package/web/assets/{pascal-CGBtIfZg.js → pascal-DpSQp86i.js} +0 -0
- /package/web/assets/{pascaligo-B85wuk0w.js → pascaligo-C4F0Gc12.js} +0 -0
- /package/web/assets/{perl-Bl61zsEQ.js → perl-87HvGh3u.js} +0 -0
- /package/web/assets/{pgsql-KgXv5Cq7.js → pgsql-DUB3YVHd.js} +0 -0
- /package/web/assets/{php-KRRf0kxu.js → php-gpgbnwXh.js} +0 -0
- /package/web/assets/{pla-CFpO6lSz.js → pla-9VH1h0qA.js} +0 -0
- /package/web/assets/{postiats-B0jQ-DXO.js → postiats-DYNil0RB.js} +0 -0
- /package/web/assets/{powerquery-T9Ge5xUx.js → powerquery-Cyj_QMWN.js} +0 -0
- /package/web/assets/{powershell-rmYjKoE4.js → powershell-BxsWzjwy.js} +0 -0
- /package/web/assets/{protobuf-B--9ME3E.js → protobuf-CpB35fc2.js} +0 -0
- /package/web/assets/{pug-y0-ppnAV.js → pug-CQ3BHXrf.js} +0 -0
- /package/web/assets/{qsharp-DobgOAC8.js → qsharp-hvdiA16n.js} +0 -0
- /package/web/assets/{r-BHQZIThn.js → r-BcpSD-1e.js} +0 -0
- /package/web/assets/{redis-DMHMVIni.js → redis-B2JGUU7L.js} +0 -0
- /package/web/assets/{redshift-ilRjY5HF.js → redshift-DtV7K8A1.js} +0 -0
- /package/web/assets/{restructuredtext-jr4YYJbv.js → restructuredtext-avYcqBCA.js} +0 -0
- /package/web/assets/{ruby-D-h_0NIs.js → ruby-B75_Tp8C.js} +0 -0
- /package/web/assets/{rust-VxeTSQU2.js → rust-CHon-ZXH.js} +0 -0
- /package/web/assets/{sb-BlhKufrP.js → sb-iehvyQKY.js} +0 -0
- /package/web/assets/{scala-IAk6nSCU.js → scala-LBw1ennX.js} +0 -0
- /package/web/assets/{scheme-Dggdm5LS.js → scheme-BRK_sKgt.js} +0 -0
- /package/web/assets/{scss-Bzj9Cp1q.js → scss-CzbUsG5V.js} +0 -0
- /package/web/assets/{shell-CSwYJdGJ.js → shell-DdtWj1FH.js} +0 -0
- /package/web/assets/{solidity-DnWqIXnk.js → solidity-CBYPsj6K.js} +0 -0
- /package/web/assets/{sophia-ClaYC_5N.js → sophia-BAmZLhFu.js} +0 -0
- /package/web/assets/{sparql-CfjIZAcz.js → sparql-DzxQz_25.js} +0 -0
- /package/web/assets/{sql-DxdJ7snd.js → sql-CtZa8xg5.js} +0 -0
- /package/web/assets/{st-DJgQE1uj.js → st-3yAXYt2f.js} +0 -0
- /package/web/assets/{swift-5cz3wIvv.js → swift-nwo4k0Qx.js} +0 -0
- /package/web/assets/{systemverilog-C8-7QuIt.js → systemverilog-38mUSYaO.js} +0 -0
- /package/web/assets/{tcl-C99u42o5.js → tcl-DfkL3MZ2.js} +0 -0
- /package/web/assets/{twig-Cv9kOcBK.js → twig-C2_DTvv-.js} +0 -0
- /package/web/assets/{typespec-DF1s-ehc.js → typespec-Dn7A_7aO.js} +0 -0
- /package/web/assets/{uuid-6HQMUkhT.js → uuid-H0yY5A03.js} +0 -0
- /package/web/assets/{vb-4mpz9ITX.js → vb-ByZEqbuQ.js} +0 -0
- /package/web/assets/{w3c-keyname-emj7Fjc1.js → w3c-keyname-CXRaQfIQ.js} +0 -0
- /package/web/assets/{wgsl-xExw6Z08.js → wgsl-BqCLRRs9.js} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
.tt[data-v-bf6df0d6]{border:1px solid var(--p-content-border-color);border-radius:var(--p-border-radius,6px);background:var(--p-surface-0);overflow:hidden}.tt-toolbar[data-v-bf6df0d6]{background:var(--p-surface-50);border-bottom:1px solid var(--p-content-border-color);flex-wrap:wrap;align-items:center;gap:2px;padding:.375rem .5rem;display:flex}.tt-toolbar__group[data-v-bf6df0d6]{align-items:center;gap:1px;display:flex}.tt-toolbar__sep[data-v-bf6df0d6]{background:var(--p-content-border-color);width:1px;height:18px;margin:0 .25rem}.tt-btn[data-v-bf6df0d6]{min-width:28px;height:28px;color:var(--p-text-muted-color);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:0 .375rem;font-size:.75rem;font-weight:600;transition:all .1s;display:flex}.tt-btn[data-v-bf6df0d6]:hover:not(:disabled){background:var(--p-surface-200);color:var(--p-text-color)}.tt-btn--active[data-v-bf6df0d6]{background:var(--p-primary-100,var(--p-surface-200));color:var(--p-primary-color)}.tt-btn[data-v-bf6df0d6]:disabled{opacity:.3;cursor:default}.tt-content[data-v-bf6df0d6]{min-height:200px;max-height:400px;overflow-y:auto}.tt-content .tiptap{min-height:200px;color:var(--p-text-color);outline:none;padding:.75rem 1rem;font-size:.875rem;line-height:1.6}.tt-content .tiptap>:first-child{margin-top:0}.tt-content .tiptap>:last-child{margin-bottom:0}.tt-content .tiptap p.is-editor-empty:first-child:before{content:attr(data-placeholder);float:left;color:var(--p-text-muted-color);pointer-events:none;height:0;font-style:italic}.tt-content .tiptap p{margin:.5em 0;line-height:1.6}.tt-content .tiptap h1{margin:1.25rem 0 .5rem;font-size:1.5rem;font-weight:700;line-height:1.3}.tt-content .tiptap h2{margin:1rem 0 .375rem;font-size:1.25rem;font-weight:600;line-height:1.35}.tt-content .tiptap h3{margin:.875rem 0 .375rem;font-size:1.1rem;font-weight:600;line-height:1.4}.tt-content .tiptap ul{margin:.5rem 0;padding-left:1.5rem;list-style-type:disc}.tt-content .tiptap ol{margin:.5rem 0;padding-left:1.5rem;list-style-type:decimal}.tt-content .tiptap li{margin:.25rem 0;display:list-item}.tt-content .tiptap li p{margin:0}.tt-content .tiptap ul ul,.tt-content .tiptap ol ul{list-style-type:circle}.tt-content .tiptap ul ul ul,.tt-content .tiptap ol ul ul{list-style-type:square}.tt-content .tiptap ul[data-type=taskList]{margin:.5rem 0;padding-left:0;list-style:none}.tt-content .tiptap ul[data-type=taskList] li{align-items:flex-start;gap:.5rem;margin:.25rem 0;display:flex}.tt-content .tiptap ul[data-type=taskList] li>label{cursor:pointer;flex-shrink:0;margin-top:.15rem}.tt-content .tiptap ul[data-type=taskList] li>label input[type=checkbox]{cursor:pointer;width:16px;height:16px;accent-color:var(--p-primary-color)}.tt-content .tiptap ul[data-type=taskList] li>div{flex:1;min-width:0}.tt-content .tiptap blockquote{border-left:3px solid var(--p-primary-color);color:var(--p-text-muted-color);margin:.75rem 0;padding:.25rem 0 .25rem 1rem;font-style:italic}.tt-content .tiptap blockquote p{margin:.25em 0}.tt-content .tiptap code{background:var(--p-surface-100);color:var(--p-text-color);border:1px solid var(--p-content-border-color);border-radius:4px;padding:.15rem .4rem;font-family:SF Mono,Monaco,Menlo,Ubuntu Mono,Consolas,monospace;font-size:.8125rem}.tt-content .tiptap pre{background:var(--p-surface-900,#1e1e1e);color:var(--p-surface-0,#d4d4d4);border-radius:6px;margin:.75rem 0;padding:.75rem 1rem;font-family:SF Mono,Monaco,Menlo,Ubuntu Mono,Consolas,monospace;font-size:.8125rem;line-height:1.6;overflow-x:auto}.tt-content .tiptap pre code{color:inherit;font-size:inherit;background:0 0;border:none;border-radius:0;padding:0}.tt-content .tiptap hr{border:none;border-top:2px solid var(--p-content-border-color);margin:1.25rem 0}.tt-content .tiptap a,.tt-content .tiptap .tt-link{color:var(--p-primary-color);text-underline-offset:2px;cursor:pointer;text-decoration:underline}.tt-content .tiptap a:hover{opacity:.8}.tt-content .tiptap img{border-radius:6px;max-width:100%;height:auto;margin:.5rem 0;display:block}.tt-content .tiptap mark{background:var(--p-yellow-100,#fef08a);-webkit-box-decoration-break:clone;box-decoration-break:clone;border-radius:2px;padding:.0625rem .1875rem}.tt-content .tiptap strong{font-weight:700}.tt-content .tiptap em{font-style:italic}.tt-content .tiptap s{text-decoration:line-through}.tt-content .tiptap u{text-decoration:underline}.kb[data-v-9991ce20]{flex-direction:column;height:100%;display:flex;overflow:hidden}.kb-header[data-v-9991ce20]{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-9991ce20]{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-9991ce20]{flex-shrink:0;align-items:center;gap:.375rem;display:flex}.kb-header__search-input[data-v-9991ce20]{width:180px}.kb-header__saving[data-v-9991ce20]{color:var(--p-text-muted-color);flex-shrink:0;align-items:center;gap:.375rem;font-size:.75rem;display:flex}.kb-board[data-v-9991ce20]{flex:1;align-items:flex-start;gap:.75rem;padding:1rem;display:flex;overflow:auto hidden}.kb-col[data-v-9991ce20]{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-9991ce20]{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-9991ce20]{justify-content:space-between;align-items:center;gap:.5rem;padding:.625rem .75rem .5rem;display:flex}.kb-col__header-right[data-v-9991ce20]{flex-shrink:0;align-items:center;gap:.25rem;display:flex}.kb-col__header-right[data-v-9991ce20] .p-button{opacity:0;transition:opacity .15s}.kb-col:hover .kb-col__header-right[data-v-9991ce20] .p-button{opacity:1}.kb-col__title[data-v-9991ce20]{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-9991ce20]:hover{border-color:var(--p-content-border-color)}.kb-col__title[data-v-9991ce20]: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-9991ce20]{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-9991ce20]{flex-direction:column;flex:1;gap:.375rem;min-height:40px;padding:0 .5rem;display:flex;overflow-y:auto}.kb-col__empty[data-v-9991ce20]{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-9991ce20]{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-9991ce20]:hover{border-color:var(--p-primary-200,var(--p-content-border-color));box-shadow:0 2px 8px #00000014}.kb-card[data-v-9991ce20]:active{cursor:grabbing;transform:rotate(1deg)}.kb-card--drop-before[data-v-9991ce20]{border-top:2px solid var(--p-primary-color);margin-top:-1px}.kb-card--drop-after[data-v-9991ce20]{border-bottom:2px solid var(--p-primary-color);margin-bottom:-1px}.kb-col--dragging[data-v-9991ce20]{opacity:.5}.kb-col--col-drop-before[data-v-9991ce20]{border-left:3px solid var(--p-primary-color)}.kb-col--col-drop-after[data-v-9991ce20]{border-right:3px solid var(--p-primary-color)}.kb-card__top[data-v-9991ce20]{align-items:flex-start;gap:.25rem;display:flex}.kb-card__title[data-v-9991ce20]{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-9991ce20]{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-9991ce20]{opacity:1}.kb-card__delete[data-v-9991ce20]:hover{background:var(--p-red-50,#ef44441a);color:var(--p-red-500,#ef4444)}.kb-card__badges[data-v-9991ce20]{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-9991ce20]{align-items:center;gap:.2rem;display:inline-flex}.kb-card__ai-badge[data-v-9991ce20]{border-radius:50%;flex-shrink:0;width:8px;height:8px}.kb-card__ai-badge--streaming[data-v-9991ce20]{background:var(--p-yellow-500,#eab308);animation:1s ease-in-out infinite badge-blink-9991ce20}.kb-card__ai-badge--unread[data-v-9991ce20]{background:var(--p-green-500,#22c55e)}@keyframes badge-blink-9991ce20{0%,to{opacity:1}50%{opacity:.25}}.kb-col__add-card[data-v-9991ce20]{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-9991ce20]:hover{background:var(--p-surface-200);color:var(--p-text-color)}.kb-add-col[data-v-9991ce20]{flex-shrink:0;width:300px}.kb-add-col__trigger[data-v-9991ce20]{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-9991ce20]:hover{background:var(--p-surface-200);border-color:var(--p-primary-color);color:var(--p-primary-color)}.kb-add-col__form[data-v-9991ce20]{background:var(--p-surface-100);border-radius:10px;padding:.75rem}.kb-add-col__actions[data-v-9991ce20]{gap:.5rem;margin-top:.5rem;display:flex}.kb-dialog[data-v-9991ce20]{flex-direction:column;gap:1rem;display:flex}.kb-dialog__field[data-v-9991ce20]{flex-direction:column;gap:.375rem;display:flex}.kb-dialog__field[data-v-9991ce20] .p-inputtext,.kb-dialog__field[data-v-9991ce20] .p-textarea{width:100%}.kb-dialog__label[data-v-9991ce20]{color:var(--p-text-muted-color);font-size:.8125rem;font-weight:500}.kb-dialog__images[data-v-9991ce20]{flex-wrap:wrap;gap:.5rem;display:flex}.kb-dialog__thumb[data-v-9991ce20]{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-9991ce20]{object-fit:cover;width:100%;height:100%;display:block}.kb-dialog__thumb-remove[data-v-9991ce20]{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-9991ce20]:hover{background:var(--p-red-500,#ef4444)}.kb-dialog__upload[data-v-9991ce20]{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-9991ce20]:hover{opacity:.8}.kb-dialog__upload input[data-v-9991ce20]{display:none}.kb-dialog__actions-zone[data-v-9991ce20]{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-9991ce20]{flex-wrap:wrap;gap:.5rem;display:flex}.kb-dialog__danger-zone[data-v-9991ce20]{border-top:1px solid var(--p-content-border-color);padding-top:.75rem}.kb-dialog__footer[data-v-9991ce20]{justify-content:flex-end;gap:.5rem;display:flex}.kb-dialog__edit-content[data-v-9991ce20]{flex-direction:column;gap:1rem;padding-top:.5rem;display:flex}.kb-history[data-v-9991ce20]{padding:.5rem 0}.kb-history__empty[data-v-9991ce20]{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-9991ce20]{opacity:.5;font-size:1.5rem}.kb-history__timeline[data-v-9991ce20]{flex-direction:column;padding-left:1.75rem;display:flex;position:relative}.kb-history__timeline[data-v-9991ce20]: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-9991ce20]{align-items:flex-start;gap:.75rem;padding:.5rem 0;display:flex;position:relative}.kb-history__item--clickable[data-v-9991ce20]{cursor:pointer;border-radius:6px;margin:0 -.375rem;padding:.5rem .375rem;transition:background .15s}.kb-history__item--clickable[data-v-9991ce20]:hover{background:var(--p-surface-100)}.kb-history__item--clickable:hover .kb-history__label[data-v-9991ce20]{color:var(--p-primary-color)}.kb-history__icon[data-v-9991ce20]{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-9991ce20]{color:var(--p-text-muted-color);font-size:.625rem}.kb-history__body[data-v-9991ce20]{flex-direction:column;gap:.125rem;min-width:0;display:flex}.kb-history__label[data-v-9991ce20]{color:var(--p-text-color);font-size:.8125rem;font-weight:500}.kb-history__detail[data-v-9991ce20]{color:var(--p-text-muted-color);word-break:break-word;font-size:.75rem}.kb-history__time[data-v-9991ce20]{color:var(--p-text-muted-color);opacity:.7;font-size:.6875rem}.kb-comments[data-v-9991ce20]{flex-direction:column;gap:1rem;display:flex}.kb-comments__input[data-v-9991ce20]{align-items:center;gap:.5rem;display:flex}.kb-comments__empty[data-v-9991ce20]{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-9991ce20]{opacity:.5;font-size:1.5rem}.kb-comments__list[data-v-9991ce20]{flex-direction:column;gap:.75rem;display:flex}.kb-comments__item[data-v-9991ce20]{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-9991ce20]{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-9991ce20]{cursor:pointer;transition:background .15s,box-shadow .15s}.kb-comments__item--clickable[data-v-9991ce20]:hover{background:var(--p-surface-100);box-shadow:0 0 0 2px var(--p-primary-color)}.kb-comments__avatar[data-v-9991ce20]{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-9991ce20]{background:var(--p-primary-100,rgba(var(--p-primary-500), .15));color:var(--p-primary-color)}.kb-comments__avatar i[data-v-9991ce20]{font-size:.75rem}.kb-comments__body[data-v-9991ce20]{flex-direction:column;flex:1;gap:.25rem;min-width:0;display:flex}.kb-comments__meta[data-v-9991ce20]{align-items:center;gap:.5rem;display:flex}.kb-comments__author[data-v-9991ce20]{color:var(--p-text-color);font-size:.8125rem;font-weight:600}.kb-comments__time[data-v-9991ce20]{color:var(--p-text-muted-color);font-size:.6875rem}.kb-comments__text[data-v-9991ce20]{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-9991ce20]{white-space:normal}.kb-comments__text--markdown[data-v-9991ce20] p{margin:0 0 .25em}.kb-comments__text--markdown[data-v-9991ce20] p:last-child{margin-bottom:0}.kb-comments__text--markdown[data-v-9991ce20] h1,.kb-comments__text--markdown[data-v-9991ce20] h2,.kb-comments__text--markdown[data-v-9991ce20] h3{margin:.4em 0 .15em;font-weight:700}.kb-comments__text--markdown[data-v-9991ce20] ul,.kb-comments__text--markdown[data-v-9991ce20] ol{margin:.2em 0;padding-left:1.4em}.kb-comments__text--markdown[data-v-9991ce20] li{margin-bottom:.1em}.kb-comments__text--markdown[data-v-9991ce20] 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-9991ce20] 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-9991ce20] pre code{background:0 0;padding:0}.kb-comments__text--markdown[data-v-9991ce20] 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-9991ce20] a{color:var(--p-primary-color);text-decoration:underline}.kb-populate[data-v-9991ce20]{flex-direction:column;gap:.75rem;display:flex}.kb-populate__hint[data-v-9991ce20]{color:var(--p-text-muted-color);margin:0;font-size:.8125rem;line-height:1.5}.kb-populate__provider-section[data-v-9991ce20]{flex-direction:column;gap:.4rem;display:flex}.kb-populate__provider-label[data-v-9991ce20]{text-transform:uppercase;letter-spacing:.05em;opacity:.45;font-size:.75rem;font-weight:600}.kb-populate__provider-grid[data-v-9991ce20]{flex-wrap:wrap;gap:.5rem;display:flex}.kb-populate__provider-card[data-v-9991ce20]{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-9991ce20]:hover{border-color:var(--p-primary-color)}.kb-populate__provider-card--active[data-v-9991ce20]{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-9991ce20]{flex-shrink:0;align-items:center;gap:.125rem;display:flex}.kb-card__queue-btn[data-v-9991ce20]{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-9991ce20]{opacity:1}.kb-card__queue-btn--active[data-v-9991ce20]{opacity:1!important;color:var(--p-primary-color)!important}.kb-card__queue-btn[data-v-9991ce20]:hover{background:var(--p-primary-50,#6366f11a);color:var(--p-primary-color)}.kb-queue-panel[data-v-9991ce20]{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-9991ce20]{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-9991ce20]{font-size:.9375rem;font-weight:600}.kb-queue-panel__concurrency[data-v-9991ce20]{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-9991ce20]{color:var(--p-text-muted-color);font-size:.8125rem}.kb-queue-panel__concurrency-ctrl[data-v-9991ce20]{align-items:center;gap:.5rem;font-size:.875rem;font-weight:600;display:flex}.kb-queue-panel__section[data-v-9991ce20]{padding:.75rem 1rem 0}.kb-queue-panel__section-title[data-v-9991ce20]{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-9991ce20]{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-9991ce20]{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-9991ce20]{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.kb-queue-panel__empty[data-v-9991ce20]{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-9991ce20]{border-top:1px solid var(--p-content-border-color);flex-shrink:0;padding:.75rem 1rem}.kb-queue-col-dialog[data-v-9991ce20]{flex-direction:column;gap:1rem;display:flex}.kb-queue-col-dialog__field[data-v-9991ce20]{flex-direction:column;gap:.375rem;display:flex}.kb-queue-col-dialog__field label[data-v-9991ce20]{color:var(--p-text-muted-color);font-size:.8125rem;font-weight:500}.kb-queue-col-dialog__select[data-v-9991ce20]{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-9991ce20]:focus{border-color:var(--p-primary-color);box-shadow:0 0 0 1px var(--p-primary-color)}
|
|
1
|
+
.tt[data-v-bf6df0d6]{border:1px solid var(--p-content-border-color);border-radius:var(--p-border-radius,6px);background:var(--p-surface-0);overflow:hidden}.tt-toolbar[data-v-bf6df0d6]{background:var(--p-surface-50);border-bottom:1px solid var(--p-content-border-color);flex-wrap:wrap;align-items:center;gap:2px;padding:.375rem .5rem;display:flex}.tt-toolbar__group[data-v-bf6df0d6]{align-items:center;gap:1px;display:flex}.tt-toolbar__sep[data-v-bf6df0d6]{background:var(--p-content-border-color);width:1px;height:18px;margin:0 .25rem}.tt-btn[data-v-bf6df0d6]{min-width:28px;height:28px;color:var(--p-text-muted-color);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:0 .375rem;font-size:.75rem;font-weight:600;transition:all .1s;display:flex}.tt-btn[data-v-bf6df0d6]:hover:not(:disabled){background:var(--p-surface-200);color:var(--p-text-color)}.tt-btn--active[data-v-bf6df0d6]{background:var(--p-primary-100,var(--p-surface-200));color:var(--p-primary-color)}.tt-btn[data-v-bf6df0d6]:disabled{opacity:.3;cursor:default}.tt-content[data-v-bf6df0d6]{min-height:200px;max-height:400px;overflow-y:auto}.tt-content .tiptap{min-height:200px;color:var(--p-text-color);outline:none;padding:.75rem 1rem;font-size:.875rem;line-height:1.6}.tt-content .tiptap>:first-child{margin-top:0}.tt-content .tiptap>:last-child{margin-bottom:0}.tt-content .tiptap p.is-editor-empty:first-child:before{content:attr(data-placeholder);float:left;color:var(--p-text-muted-color);pointer-events:none;height:0;font-style:italic}.tt-content .tiptap p{margin:.5em 0;line-height:1.6}.tt-content .tiptap h1{margin:1.25rem 0 .5rem;font-size:1.5rem;font-weight:700;line-height:1.3}.tt-content .tiptap h2{margin:1rem 0 .375rem;font-size:1.25rem;font-weight:600;line-height:1.35}.tt-content .tiptap h3{margin:.875rem 0 .375rem;font-size:1.1rem;font-weight:600;line-height:1.4}.tt-content .tiptap ul{margin:.5rem 0;padding-left:1.5rem;list-style-type:disc}.tt-content .tiptap ol{margin:.5rem 0;padding-left:1.5rem;list-style-type:decimal}.tt-content .tiptap li{margin:.25rem 0;display:list-item}.tt-content .tiptap li p{margin:0}.tt-content .tiptap ul ul,.tt-content .tiptap ol ul{list-style-type:circle}.tt-content .tiptap ul ul ul,.tt-content .tiptap ol ul ul{list-style-type:square}.tt-content .tiptap ul[data-type=taskList]{margin:.5rem 0;padding-left:0;list-style:none}.tt-content .tiptap ul[data-type=taskList] li{align-items:flex-start;gap:.5rem;margin:.25rem 0;display:flex}.tt-content .tiptap ul[data-type=taskList] li>label{cursor:pointer;flex-shrink:0;margin-top:.15rem}.tt-content .tiptap ul[data-type=taskList] li>label input[type=checkbox]{cursor:pointer;width:16px;height:16px;accent-color:var(--p-primary-color)}.tt-content .tiptap ul[data-type=taskList] li>div{flex:1;min-width:0}.tt-content .tiptap blockquote{border-left:3px solid var(--p-primary-color);color:var(--p-text-muted-color);margin:.75rem 0;padding:.25rem 0 .25rem 1rem;font-style:italic}.tt-content .tiptap blockquote p{margin:.25em 0}.tt-content .tiptap code{background:var(--p-surface-100);color:var(--p-text-color);border:1px solid var(--p-content-border-color);border-radius:4px;padding:.15rem .4rem;font-family:SF Mono,Monaco,Menlo,Ubuntu Mono,Consolas,monospace;font-size:.8125rem}.tt-content .tiptap pre{background:var(--p-surface-900,#1e1e1e);color:var(--p-surface-0,#d4d4d4);border-radius:6px;margin:.75rem 0;padding:.75rem 1rem;font-family:SF Mono,Monaco,Menlo,Ubuntu Mono,Consolas,monospace;font-size:.8125rem;line-height:1.6;overflow-x:auto}.tt-content .tiptap pre code{color:inherit;font-size:inherit;background:0 0;border:none;border-radius:0;padding:0}.tt-content .tiptap hr{border:none;border-top:2px solid var(--p-content-border-color);margin:1.25rem 0}.tt-content .tiptap a,.tt-content .tiptap .tt-link{color:var(--p-primary-color);text-underline-offset:2px;cursor:pointer;text-decoration:underline}.tt-content .tiptap a:hover{opacity:.8}.tt-content .tiptap img{border-radius:6px;max-width:100%;height:auto;margin:.5rem 0;display:block}.tt-content .tiptap mark{background:var(--p-yellow-100,#fef08a);-webkit-box-decoration-break:clone;box-decoration-break:clone;border-radius:2px;padding:.0625rem .1875rem}.tt-content .tiptap strong{font-weight:700}.tt-content .tiptap em{font-style:italic}.tt-content .tiptap s{text-decoration:line-through}.tt-content .tiptap u{text-decoration:underline}.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)}
|
|
@@ -0,0 +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-CIcE6DNv.js";import{t as O}from"./card-CsmU2iiY.js";import{a as k,i as A,n as j,r as M,t as N}from"./tabpanel-DaZzgdrv.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};
|
|
@@ -0,0 +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-CIcE6DNv.js";import{t as x}from"./project.store-CVbXSH5d.js";import{t as S}from"./card-CsmU2iiY.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};
|
|
@@ -0,0 +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-CIcE6DNv.js";import{t as ce}from"./project.store-CVbXSH5d.js";import{t as le}from"./checkbox-B5XZqi1U.js";import{t as S}from"./message-DKOCajc6.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};
|
|
@@ -0,0 +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(`
|
|
2
|
+
`):`[${e.level}] ${e.message}`).join(`
|
|
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-CIcE6DNv.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};
|
|
@@ -0,0 +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-CIcE6DNv.js";import{t as se}from"./ProcessControls-BY-_9zo7.js";import{n as h,t as ce}from"./ProcessMetrics-DQybvwcA.js";import{t as le}from"./LogViewer-CtX_6uFM.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,
|
|
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-CIcE6DNv.js";var g=c.extend({name:`skeleton`,style:`
|
|
2
2
|
.p-skeleton {
|
|
3
3
|
display: block;
|
|
4
4
|
overflow: hidden;
|
|
@@ -48,4 +48,4 @@ import{Bi as e,Ca as t,Cn as n,F as r,Fn as i,Mr as a,Oa as o,Oi as s,Xn as c,Yn
|
|
|
48
48
|
transform: translateX(-100%);
|
|
49
49
|
}
|
|
50
50
|
}
|
|
51
|
-
`,classes:{root:function(e){var t=e.props;return[`p-skeleton p-component`,{"p-skeleton-circle":t.shape===`circle`,"p-skeleton-animation-none":t.animation===`none`}]}},inlineStyles:{root:{position:`relative`}}}),_={name:`BaseSkeleton`,extends:
|
|
51
|
+
`,classes:{root:function(e){var t=e.props;return[`p-skeleton p-component`,{"p-skeleton-circle":t.shape===`circle`,"p-skeleton-animation-none":t.animation===`none`}]}},inlineStyles:{root:{position:`relative`}}}),_={name:`BaseSkeleton`,extends:r,props:{shape:{type:String,default:`rectangle`},size:{type:String,default:null},width:{type:String,default:`100%`},height:{type:String,default:`1rem`},borderRadius:{type:String,default:null},animation:{type:String,default:`wave`}},style:g,provide:function(){return{$pcSkeleton:this,$parentInstance:this}}};function v(e){"@babel/helpers - typeof";return v=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},v(e)}function y(e,t,n){return(t=b(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function b(e){var t=x(e,`string`);return v(t)==`symbol`?t:t+``}function x(e,t){if(v(e)!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(v(r)!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}var S={name:`Skeleton`,extends:_,inheritAttrs:!1,computed:{containerStyle:function(){return this.size?{width:this.size,height:this.size,borderRadius:this.borderRadius}:{width:this.width,height:this.height,borderRadius:this.borderRadius}},dataP:function(){return i(y({},this.shape,this.shape))}}},C=[`data-p`];function w(t,n,r,i,a,o){return e(),f(`div`,s({class:t.cx(`root`),style:[t.sx(`root`),o.containerStyle],"aria-hidden":`true`},t.ptmi(`root`),{"data-p":o.dataP}),null,16,C)}S.render=w;var T={class:`process-metrics`},E={class:`metric-card`},D={class:`metric-card__header`},O={class:`metric-card__label`},k={class:`metric-card__value`},A={class:`metric-card`},j={class:`metric-card__header`},M={class:`metric-card__label`},N={class:`metric-card__value`},P={class:`metric-card__sub`},F=n(h({__name:`ProcessMetrics`,props:{cpu:{},memory:{}},setup(n){let r=n,{t:i}=l();function s(e){return e<1024?`${e} B`:e<1024*1024?`${(e/1024).toFixed(1)} KB`:e<1024*1024*1024?`${(e/(1024*1024)).toFixed(1)} MB`:`${(e/(1024*1024*1024)).toFixed(2)} GB`}let c=d(()=>Math.min(Math.round(r.cpu*100)/100,100)),h=d(()=>s(r.memory)),g=d(()=>r.cpu>=80?`#ef4444`:r.cpu>=50?`#f59e0b`:`#22c55e`);return(n,s)=>(e(),f(`div`,T,[m(`div`,E,[m(`div`,D,[s[0]||=m(`i`,{class:`pi pi-microchip`},null,-1),m(`span`,O,p(t(i)(`processMetrics.cpu`)),1)]),m(`div`,k,p(c.value)+`%`,1),u(t(a),{value:c.value,"show-value":!1,class:`metric-card__bar`,style:o({"--p-progressbar-value-background":g.value})},null,8,[`value`,`style`])]),m(`div`,A,[m(`div`,j,[s[1]||=m(`i`,{class:`pi pi-database`},null,-1),m(`span`,M,p(t(i)(`processMetrics.memory`)),1)]),m(`div`,N,p(h.value),1),m(`div`,P,p(t(i)(`processMetrics.bytes`,{count:r.memory.toLocaleString()})),1)])]))}}),[[`__scopeId`,`data-v-28e6b1ac`]]);export{S as n,F as t};
|
|
@@ -0,0 +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};
|
|
@@ -0,0 +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-CIcE6DNv.js";import{t as O}from"./project.store-CVbXSH5d.js";import{t as k}from"./card-CsmU2iiY.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,
|
|
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-CIcE6DNv.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};
|