@runeya/runeya 2.0.95 → 2.0.96
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 +4 -4
- package/agent/index.js.map +1 -1
- package/agent-manager-SNVPZNLC.js +8 -0
- package/{chat-LPMGV2VS.js → chat-N7Y4JE62.js} +6 -6
- package/{chunk-HX3ZIWHM.js → chunk-BHLCBARP.js} +2 -2
- package/{chunk-WAC56HS4.js → chunk-BV7A2N5C.js} +79 -32
- package/chunk-BV7A2N5C.js.map +1 -0
- package/{chunk-72LQC3YC.js → chunk-F3HKV5AU.js} +2 -2
- package/{chunk-3MJLS5UY.js → chunk-NDO5VFZY.js} +5 -5
- package/chunk-NDO5VFZY.js.map +1 -0
- package/{chunk-R23UUB5R.js → chunk-ZVUSEO5P.js} +45 -8
- package/chunk-ZVUSEO5P.js.map +1 -0
- package/{companion-VPYVGTRU.js → companion-ZYOHTSVL.js} +12 -4
- package/index.js +1 -1
- package/package.json +1 -1
- package/settings-manager-YHQ5YHUH.js +8 -0
- package/{src-NEPDGULO.js → src-4ZDCENPU.js} +14 -11
- package/src-4ZDCENPU.js.map +1 -0
- package/web/assets/{AgentScalarChatInterface.vue-DCnwgzWk.js → AgentScalarChatInterface.vue-Cg4DrH5-.js} +1 -1
- package/web/assets/{AgentTerminalPage-D6iEzvyz.js → AgentTerminalPage-ClgOOzjC.js} +1 -1
- package/web/assets/AiChatPage-CrqIi3zp.js +1 -0
- package/web/assets/{AppLayout-B2mreJVA.js → AppLayout-tfKCrE0A.js} +1 -1
- package/web/assets/{AuditPage-CSPHdf0m.js → AuditPage-BwjVcB_e.js} +1 -1
- package/web/assets/CloudAccountPage-DJMj6rlx.js +1 -0
- package/web/assets/{CloudAccountPage-C35O8Pcb.js → CloudAccountPage-YqD1oWcl.js} +1 -1
- package/web/assets/{CloudMessagingPage-5KYELXQI.js → CloudMessagingPage-CGAN3l_2.js} +1 -1
- package/web/assets/{DashboardPage-Dl9Sg1av.js → DashboardPage-uzdaeNvE.js} +1 -1
- package/web/assets/{DirectoryPickerDialog-DLL3-GoW.js → DirectoryPickerDialog-_nki96n0.js} +1 -1
- package/web/assets/{EditorIcon-CzgSjXLk.js → EditorIcon-CN5NnRuP.js} +1 -1
- package/web/assets/{EnvironmentForm-DmdDIJHv.js → EnvironmentForm-C3XYN-u_.js} +1 -1
- package/web/assets/{EnvironmentFormPage-CV7Uq6Ah.js → EnvironmentFormPage-DzpLGPiH.js} +1 -1
- package/web/assets/{EnvironmentListPage-Cfo9RA_g.js → EnvironmentListPage-C2EfOvUQ.js} +1 -1
- package/web/assets/KanbanBoardPage-BTvn4Oks.css +1 -0
- package/web/assets/KanbanBoardPage-D62-0_x0.js +4 -0
- package/web/assets/{KanbanListPage-CSAnUfp3.js → KanbanListPage-mgJfhVzZ.js} +1 -1
- package/web/assets/{LaunchProjectPage-vNUoulGP.js → LaunchProjectPage-CRL5enYT.js} +1 -1
- package/web/assets/{LaunchServicesPage-CkWZxZ-v.js → LaunchServicesPage-BaIi1u2l.js} +1 -1
- package/web/assets/{LogViewer-CW-bBjZF.js → LogViewer-CQmf3bkB.js} +1 -1
- package/web/assets/{OrgKeyPrompt-CHoMbQhn.js → OrgKeyPrompt-x919NFZU.js} +1 -1
- package/web/assets/{ProcessControls-WS6BjS5H.js → ProcessControls-Bxuzo9xu.js} +1 -1
- package/web/assets/{ProcessDetailPage-DEvZSNER.js → ProcessDetailPage-CM4gv6qW.js} +1 -1
- package/web/assets/{ProcessMetrics-DmhwoKrE.js → ProcessMetrics-B8ReKltW.js} +1 -1
- package/web/assets/{ProjectDetailPage-DanRrWb4.js → ProjectDetailPage-DiaanTyL.js} +1 -1
- package/web/assets/{ProjectListPage--l9HsQ9u.js → ProjectListPage-eq12Vdsi.js} +1 -1
- package/web/assets/{RandomJobTestPage-BMatxc2G.js → RandomJobTestPage-CJbdpqF0.js} +1 -1
- package/web/assets/{ScenarioEditorPage-D_rJyudb.js → ScenarioEditorPage-D8xmK-aZ.js} +1 -1
- package/web/assets/{SendToChatDialog-D-pDvIjD.js → SendToChatDialog-B0m5-H1l.js} +1 -1
- package/web/assets/{ServiceControlsBar-BSU25sZZ.js → ServiceControlsBar-BdT0XYtF.js} +1 -1
- package/web/assets/{ServiceDetailPage-B1oRlnId.js → ServiceDetailPage-DGojuDKp.js} +1 -1
- package/web/assets/{ServiceFormPage-D-DmI0fF.js → ServiceFormPage-6aPMUBjp.js} +1 -1
- package/web/assets/SettingsPage-DisZogYn.js +2063 -0
- package/web/assets/{SettingsPage-D6-jpORY.css → SettingsPage-GKnTN75s.css} +1 -1
- package/web/assets/{UnlockPage-BtunlGnX.js → UnlockPage-QEUvn5MU.js} +1 -1
- package/web/assets/{VariablesTable-D3HpHlKY.js → VariablesTable-B9UiC69p.js} +1 -1
- package/web/assets/{VaultMigrationPage-DrrFR1I-.js → VaultMigrationPage-BKammxdb.js} +1 -1
- package/web/assets/{VersionBadge-DqcS34oJ.js → VersionBadge-B5SmMtZS.js} +1 -1
- package/web/assets/WikiPage-ChtHYLsn.js +1 -0
- package/web/assets/{WikiView-BasNZv2A.js → WikiView-Brud4K4u.js} +1 -1
- package/web/assets/{add-scalar-classes-_PYrgVvq.js → add-scalar-classes-CF1ZlVmT.js} +3 -3
- package/web/assets/auth-errors-1gmtFIpl.js +1 -0
- package/web/assets/{autocomplete-B-t_B26t.js → autocomplete-eQhMihkm.js} +1 -1
- package/web/assets/{basic-shape-diamond.svg-BFWFQIZl.js → basic-shape-diamond.svg-B79z96pk.js} +1 -1
- package/web/assets/{basic-shape-hexagon.svg-CXsvZPky.js → basic-shape-hexagon.svg-DAlWXIQS.js} +1 -1
- package/web/assets/{basic-shape-primary-circle-ellipse-round.svg-BVg6oDS7.js → basic-shape-primary-circle-ellipse-round.svg-C5OZu4mS.js} +1 -1
- package/web/assets/{basic-shape-primary-square-rectangle.svg-jiLWQSQV.js → basic-shape-primary-square-rectangle.svg-BykiIk1Y.js} +1 -1
- package/web/assets/{basic-shape-shield.svg-CEybfnew.js → basic-shape-shield.svg-BVcBjIsG.js} +1 -1
- package/web/assets/{browser-BfO6Jws3.js → browser-2YDfpiMy.js} +1 -1
- package/web/assets/{browser-C7Qh0u0N.js → browser-BeUKu6QW.js} +1 -1
- package/web/assets/{card-CWgnvlKH.js → card-BAlWlIgX.js} +1 -1
- package/web/assets/{checkbox-CKzrAJQv.js → checkbox-CmaD3L1T.js} +1 -1
- package/web/assets/{chip-Bu5HllmO.js → chip-CRmYXa8f.js} +1 -1
- package/web/assets/{client-CM-a2QU7.js → client-Bv9-b6hD.js} +1 -1
- package/web/assets/{cloud-chat.store-Cjbzzy1s.js → cloud-chat.store-D9e_ZoEW.js} +1 -1
- package/web/assets/{cloud-session-Bs6siQ-Y.js → cloud-session-CfIHVKlU.js} +1 -1
- package/web/assets/{column-pXrOxKc1.js → column-C9854MaP.js} +1 -1
- package/web/assets/{computer-device-desktop-monitor.svg-DO-9EDqA.js → computer-device-desktop-monitor.svg-DgYmz8if.js} +1 -1
- package/web/assets/{computer-device-desktop.svg-U_EIk7jo.js → computer-device-desktop.svg-CN3hxMSt.js} +1 -1
- package/web/assets/{computer-device-laptop.svg-nvbz6sjk.js → computer-device-laptop.svg-LDsA7kc5.js} +1 -1
- package/web/assets/{computer-device-mobile-phone-android-samsung-back.svg-Cs34LunN.js → computer-device-mobile-phone-android-samsung-back.svg-BDfCASg6.js} +1 -1
- package/web/assets/{computer-device-mobile-phone-android-samsung.svg-CDJgG-4L.js → computer-device-mobile-phone-android-samsung.svg-BMMyDOdR.js} +1 -1
- package/web/assets/{computer-device-mobile-phone-iphone-x-back.svg-Du0pDh9L.js → computer-device-mobile-phone-iphone-x-back.svg-BMcE4PZg.js} +1 -1
- package/web/assets/{computer-device-mobile-phone-iphone-x.svg-CUgXFf2r.js → computer-device-mobile-phone-iphone-x.svg-DCaO9pra.js} +1 -1
- package/web/assets/{computer-device-mobile-tablet-touch.svg-CKdx-iUf.js → computer-device-mobile-tablet-touch.svg-CL-ZgWuC.js} +1 -1
- package/web/assets/{computer-device-mobile-tablet.svg-BTvPzs5h.js → computer-device-mobile-tablet.svg-DDOk54bt.js} +1 -1
- package/web/assets/{computer-device-network-ethernet-cat6.svg-Cway8Bfw.js → computer-device-network-ethernet-cat6.svg-BlCpBZ1-.js} +1 -1
- package/web/assets/{computer-device-network-lan-www.svg-iuTZVSKE.js → computer-device-network-lan-www.svg-BnDixCMz.js} +1 -1
- package/web/assets/{computer-device-network-wifi-connection.svg-DEemVGZq.js → computer-device-network-wifi-connection.svg-CVBp6RTa.js} +1 -1
- package/web/assets/{computer-device-network-wifi-router.svg-BH2ASeRD.js → computer-device-network-wifi-router.svg-DC_hG81D.js} +1 -1
- package/web/assets/{cssMode-BHBdzmoS.js → cssMode-CvjBWwcj.js} +1 -1
- package/web/assets/{divider-kwmULX2U.js → divider-DtkApHDJ.js} +1 -1
- package/web/assets/{docx-preview-CxXKUxi7.js → docx-preview-D-0_AO3N.js} +1 -1
- package/web/assets/{ecology-science-erlenmeyer-flask.svg-9yLzulSu.js → ecology-science-erlenmeyer-flask.svg-Dou8Xul9.js} +1 -1
- package/web/assets/{fieldset-DE0sJS29.js → fieldset-CaTLOGqs.js} +1 -1
- package/web/assets/{freemarker2-CpcoAmNk.js → freemarker2-DS7rB38N.js} +1 -1
- package/web/assets/{handlebars-D6DR-MoZ.js → handlebars-D_6N9S4t.js} +1 -1
- package/web/assets/{html-Dx3QwrZR.js → html-aq8_YJ2V.js} +1 -1
- package/web/assets/{htmlMode-KSJ_gFzK.js → htmlMode-CVlBX1og.js} +1 -1
- package/web/assets/{image-flash-lightning.svg-O9m-H64P.js → image-flash-lightning.svg-DIcyUXwz.js} +1 -1
- package/web/assets/{image-picture-flower.svg--rWVVuqu.js → image-picture-flower.svg-CZjlyM5Y.js} +1 -1
- package/web/assets/{index-B4UWj2Kz.css → index-BBYieFBt.css} +1 -1
- package/web/assets/{index-pLefgbhx.js → index-BPOeXMH7.js} +287 -287
- package/web/assets/{interface-alert-exclamation-diamond.svg-CVeV0ecY.js → interface-alert-exclamation-diamond.svg-yMZPAslx.js} +1 -1
- package/web/assets/{interface-alert-exclamation-triangle-warning.svg-MIboYRzH.js → interface-alert-exclamation-triangle-warning.svg-B-t1Ml9l.js} +1 -1
- package/web/assets/{interface-alert-information-circle.svg-BlkHMxfH.js → interface-alert-information-circle.svg-B8HdecEH.js} +1 -1
- package/web/assets/{interface-award-crown.svg-C_Z3sLuP.js → interface-award-crown.svg-DDbSGaEo.js} +1 -1
- package/web/assets/{interface-bookmark.svg-CVpTNe3u.js → interface-bookmark-tag.svg-C5dS6Wy_.js} +1 -1
- package/web/assets/{interface-bookmark-tag.svg-ClOZOhfV.js → interface-bookmark.svg-BZwwsorn.js} +1 -1
- package/web/assets/{interface-calendar-date-one.svg-BvG92AQi.js → interface-calendar-date-one.svg-B_lSSDJQ.js} +1 -1
- package/web/assets/{interface-content-book-open-pages.svg-aXXXkj7d.js → interface-content-book-open-pages.svg-CPjHk5dC.js} +1 -1
- package/web/assets/{interface-content-book-page.svg-BE0nQJw_.js → interface-content-book-page.svg-DLBNBM0O.js} +1 -1
- package/web/assets/{interface-content-file.svg-DYonyE7J.js → interface-content-file.svg-dZo-oryw.js} +1 -1
- package/web/assets/interface-content-folder.svg-CeaK9A2u.js +1 -0
- package/web/assets/{interface-content-folder.svg-DKc7vKrm.js → interface-content-folder.svg-D3PMAR0L.js} +1 -1
- package/web/assets/{interface-copy-clipboard.svg-sAixmHqz.js → interface-copy-clipboard.svg-hGQ6TIiI.js} +1 -1
- package/web/assets/{interface-edit-attachment.svg-DsSzCN6U.js → interface-edit-attachment.svg-r3GzouWU.js} +1 -1
- package/web/assets/{interface-edit-binocular.svg-Bheco9Gv.js → interface-edit-binocular.svg-Cfv2KJGW.js} +1 -1
- package/web/assets/{interface-edit-magic-wand.svg-C73TY2iI.js → interface-edit-magic-wand.svg-DgdmCAUF.js} +1 -1
- package/web/assets/{interface-edit-tool-paint-roller.svg-D2OSqY3g.js → interface-edit-tool-paint-roller.svg-D9b8KTHm.js} +1 -1
- package/web/assets/{interface-edit-tool-pencil.svg-CdY316cw.js → interface-edit-tool-pencil.svg-6EZF-4AD.js} +1 -1
- package/web/assets/{interface-favorite-award.svg-DfA-EhHI.js → interface-favorite-award.svg-CX7vjSmO.js} +1 -1
- package/web/assets/{interface-favorite-flag.svg-BnmSaveE.js → interface-favorite-flag.svg-Bf-5zzqB.js} +1 -1
- package/web/assets/{interface-favorite-heart.svg-28i7lMzG.js → interface-favorite-heart.svg-CuDUk_-U.js} +1 -1
- package/web/assets/{interface-favorite-star.svg-u8xOEB4S.js → interface-favorite-star.svg-jiT9sBTw.js} +1 -1
- package/web/assets/{interface-favorite-stars-sparkles.svg-D5UHf8ar.js → interface-favorite-stars-sparkles.svg-B14YHOWj.js} +1 -1
- package/web/assets/{interface-hierarchy-flowchart.svg-BmjWTh4K.js → interface-hierarchy-flowchart.svg-DxZmAHe8.js} +1 -1
- package/web/assets/{interface-home-house.svg-DJ5Ae65N.js → interface-home-house.svg-CPRm99Q5.js} +1 -1
- package/web/assets/{interface-hyperlink.svg-HdHKY_g6.js → interface-hyperlink.svg-CYpU8zdB.js} +1 -1
- package/web/assets/{interface-lighting-brightness.svg-BDELfqMb.js → interface-lighting-brightness.svg-Bm2pypGs.js} +1 -1
- package/web/assets/{interface-lock-closed.svg-BcDwDHkS.js → interface-lock-closed.svg-BJbzqDi9.js} +1 -1
- package/web/assets/{interface-lock-open-unlock.svg-DNESCRC1.js → interface-lock-open-unlock.svg-Be2miC-V.js} +1 -1
- package/web/assets/{interface-login-key.svg-BOEot3yk.js → interface-login-key.svg-BvPEKsKK.js} +1 -1
- package/web/assets/{interface-search.svg-CFsy7ant.js → interface-search.svg-CxqA1oOe.js} +1 -1
- package/web/assets/{interface-setting-cog.svg-B7Zk0iyr.js → interface-setting-cog.svg-RjIklwFA.js} +1 -1
- package/web/assets/{interface-share-megaphone-bullhorn.svg-DvG0IjMM.js → interface-share-megaphone-bullhorn.svg-CqesMCvG.js} +1 -1
- package/web/assets/{interface-share-rocket.svg-gvaeTB8G.js → interface-share-rocket.svg-Du5P2iVk.js} +1 -1
- package/web/assets/{interface-share-satellite.svg-B5pXJ0kU.js → interface-share-satellite.svg-BMzUK6ux.js} +1 -1
- package/web/assets/{interface-share-space-ship.svg-B0k0J-VQ.js → interface-share-space-ship.svg-BWpbb-zz.js} +1 -1
- package/web/assets/{interface-share.svg-ZDsCvjRe.js → interface-share.svg-C044g6pa.js} +1 -1
- package/web/assets/{interface-signal-square.svg-DBkJ1ire.js → interface-signal-square.svg-DypNLn80.js} +1 -1
- package/web/assets/{interface-time-clock-circle.svg-BheUirew.js → interface-time-clock-circle.svg-CRNvdPs5.js} +1 -1
- package/web/assets/{interface-time-hour-glass.svg-iORrebF8.js → interface-time-hour-glass.svg-BYTiCdVN.js} +1 -1
- package/web/assets/{interface-users-multiple.svg-DMqedSUQ.js → interface-users-multiple.svg-B0BO30tc.js} +1 -1
- package/web/assets/{interface-weather-moon.svg-DyPBHRw4.js → interface-weather-moon.svg-C9dWP7q-.js} +1 -1
- package/web/assets/{javascript-B1Y6a5s6.js → javascript-DCs9TLWg.js} +1 -1
- package/web/assets/{jsonMode-Vj2pUgcF.js → jsonMode-BE2uSFxY.js} +1 -1
- package/web/assets/{liquid-lb0ImGEW.js → liquid-BZjYukYL.js} +1 -1
- package/web/assets/{lspLanguageFeatures-sh8ggL5N.js → lspLanguageFeatures-4LyxjQPX.js} +1 -1
- package/web/assets/{mail-chat-bubble-square.svg-D_Lx6uBc.js → mail-chat-bubble-square.svg-CTGFukhv.js} +1 -1
- package/web/assets/{mail-send-email-paper-airplane.svg-B6FGKBZu.js → mail-send-email-paper-airplane.svg-DD-FZNCw.js} +1 -1
- package/web/assets/{mail-send-envelope.svg-Dtm4h_xw.js → mail-send-envelope.svg-AuHOjRAo.js} +1 -1
- package/web/assets/{mdx-BbFPcqiD.js → mdx-9unslLAn.js} +1 -1
- package/web/assets/{minus-Bxw18Xk6.js → minus-CHP_QK2B.js} +1 -1
- package/web/assets/modal-BTKNoQeE.js +1 -0
- package/web/assets/{modal-DLY8nKW-.js → modal-OQde8W0w.js} +1 -1
- package/web/assets/{money-cashier-receipt.svg-VpEb8Ewv.js → money-cashier-receipt.svg-B3aJCJ9h.js} +1 -1
- package/web/assets/{money-currency-dollar-pay.svg-vo8FP9z4.js → money-currency-dollar-pay.svg-xdKFuxOB.js} +1 -1
- package/web/assets/{money-graph-arrow-increase.svg-CNcLQGOf.js → money-graph-arrow-increase.svg-wWmaxtEW.js} +1 -1
- package/web/assets/{money-graph-bar-chart-increase.svg-BHAccBVA.js → money-graph-bar-chart-increase.svg-BEhoD6l7.js} +1 -1
- package/web/assets/{multiselect-Crs0miOE.js → multiselect-DtWF2AZf.js} +1 -1
- package/web/assets/{nature-ecology-leaf.svg-0y4pBUlD.js → nature-ecology-leaf.svg-DjdQrhs6.js} +1 -1
- package/web/assets/{password-TyT4zuky.js → password-CrFWhx7M.js} +1 -1
- package/web/assets/{phone-telephone.svg-BdWhV2vz.js → phone-telephone.svg-CLNYyQne.js} +1 -1
- package/web/assets/{plus-4Z2iFfO2.js → plus-DW-wbR7B.js} +1 -1
- package/web/assets/process.store-DrmMxxoc.js +1 -0
- package/web/assets/{programming-bug.svg-DXDJVNeQ.js → programming-bug.svg-MarViUOk.js} +1 -1
- package/web/assets/{programming-cloud.svg-qWtq6fXG.js → programming-cloud.svg-W3xHdUnB.js} +1 -1
- package/web/assets/{programming-computer-database-server.svg-DnlJHfH5.js → programming-computer-database-server.svg-CKehXNTl.js} +1 -1
- package/web/assets/{programming-computer-database.svg-Bl73TDXc.js → programming-computer-database.svg-gCA_mBCi.js} +1 -1
- package/web/assets/{programming-module-four-layout.svg-CGkj0OdH.js → programming-module-four-layout.svg-BqwwSEVQ.js} +1 -1
- package/web/assets/{programming-module-three.svg-Bsk_vaHc.js → programming-module-three.svg-DqwYgzpA.js} +1 -1
- package/web/assets/{programming-module.svg-D0Yng9wS.js → programming-module.svg-BV--KFzc.js} +1 -1
- package/web/assets/{programming-script-code.svg-DTHMCNnF.js → programming-script-code.svg-CBCpPkxq.js} +1 -1
- package/web/assets/{python-HImlMuYG.js → python-CCsqTZHL.js} +1 -1
- package/web/assets/{razor-CTFKddzv.js → razor-BRMeTt-k.js} +1 -1
- package/web/assets/router-CV1Vunn0.js +1 -0
- package/web/assets/settings-scope-BTe7KdSG.js +1 -0
- package/web/assets/{settings.store-CZ9jrl3S.js → settings.store-erZiUPuR.js} +1 -1
- package/web/assets/{shopping-cart.svg-Cx50mrFm.js → shopping-cart.svg-jc4kXbD3.js} +1 -1
- package/web/assets/{shopping-gift-present.svg-DGOO6qNg.js → shopping-gift-present.svg-Bqvvhp3D.js} +1 -1
- package/web/assets/{shopping-shipping-box-parcel-package.svg-C96i4g3q.js → shopping-shipping-box-parcel-package.svg-D2SgWwJp.js} +1 -1
- package/web/assets/{src-DRjytMUo.js → src-CeApk0FF.js} +1 -1
- package/web/assets/{src-DzMKqnGu.js → src-dSgRs0bd.js} +1 -1
- package/web/assets/{tabpanel-BW8I76pY.js → tabpanel-CeLflR6J.js} +1 -1
- package/web/assets/{tag-new-circle.svg-CV5DN0Db.js → tag-new-circle.svg-CkA4UdUB.js} +1 -1
- package/web/assets/{toggleswitch-D4Evlg2b.js → toggleswitch-DKBXnmzT.js} +1 -1
- package/web/assets/{travel-map-earth-globe.svg-CWvuO_Hb.js → travel-map-earth-globe.svg-kl6fMv7M.js} +1 -1
- package/web/assets/trpc-CgcMlFhM.js +1 -0
- package/web/assets/{tsMode-BqKPHyIc.js → tsMode-DA6ejbio.js} +1 -1
- package/web/assets/{typescript-Bme6ns4u.js → typescript-Bfy7_Fw8.js} +1 -1
- package/web/assets/useAiChatDrawer-DPZ2UftQ.js +1 -0
- package/web/assets/{useCloudOrg-D2LTbk-G.js → useCloudOrg-CsuqKLSU.js} +3 -3
- package/web/assets/{useProjectCatalog-nlAZuu5X.js → useProjectCatalog-4ks7Tpfb.js} +1 -1
- package/web/assets/{xml-zsImRVNc.js → xml-D5p3PPs0.js} +1 -1
- package/web/assets/{yaml-VubzWJpP.js → yaml-CzBSY9q-.js} +1 -1
- package/web/index.html +2 -2
- package/agent-manager-QQPKKLKY.js +0 -8
- package/chunk-3MJLS5UY.js.map +0 -1
- package/chunk-R23UUB5R.js.map +0 -1
- package/chunk-WAC56HS4.js.map +0 -1
- package/settings-manager-6FKHBLIV.js +0 -8
- package/src-NEPDGULO.js.map +0 -1
- package/web/assets/AiChatPage-DDr9XEv8.js +0 -1
- package/web/assets/CloudAccountPage-BAkTRH4E.js +0 -1
- package/web/assets/KanbanBoardPage-DL1WwMBP.js +0 -4
- package/web/assets/KanbanBoardPage-K07_QbUq.css +0 -1
- package/web/assets/SettingsPage-Bi72zdhb.js +0 -2063
- package/web/assets/WikiPage-BH8A-IB_.js +0 -1
- package/web/assets/auth-errors-CwswzwYV.js +0 -1
- package/web/assets/interface-content-folder.svg-FcNZvOjy.js +0 -1
- package/web/assets/modal-D-InjkVP.js +0 -1
- package/web/assets/process.store-DsGpeQnV.js +0 -1
- package/web/assets/router-DTzqrUba.js +0 -1
- package/web/assets/settings-scope-CdxhnRbI.js +0 -1
- package/web/assets/trpc-BbC62Ymt.js +0 -1
- package/web/assets/useAiChatDrawer-BG8t5Thc.js +0 -1
- /package/{agent-manager-QQPKKLKY.js.map → agent-manager-SNVPZNLC.js.map} +0 -0
- /package/{chat-LPMGV2VS.js.map → chat-N7Y4JE62.js.map} +0 -0
- /package/{chunk-HX3ZIWHM.js.map → chunk-BHLCBARP.js.map} +0 -0
- /package/{chunk-72LQC3YC.js.map → chunk-F3HKV5AU.js.map} +0 -0
- /package/{companion-VPYVGTRU.js.map → companion-ZYOHTSVL.js.map} +0 -0
- /package/{settings-manager-6FKHBLIV.js.map → settings-manager-YHQ5YHUH.js.map} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
.traefik-settings[data-v-d0288b5d]{box-sizing:border-box;flex-direction:column;gap:1rem;width:100%;min-width:0;display:flex}.traefik-settings[data-v-d0288b5d] input,.traefik-settings[data-v-d0288b5d] .p-inputtext,.traefik-settings[data-v-d0288b5d] .p-autocomplete,.traefik-settings[data-v-d0288b5d] .p-password{box-sizing:border-box;width:100%;max-width:100%}.traefik-row[data-v-d0288b5d]{justify-content:space-between;align-items:center;display:flex}.traefik-field[data-v-d0288b5d]{flex-direction:column;gap:.4rem;display:flex}.traefik-field label[data-v-d0288b5d]{font-size:.875rem;font-weight:500}.traefik-field small[data-v-d0288b5d]{color:var(--p-text-muted-color);font-size:.75rem}.credential-row[data-v-d0288b5d]{align-items:center;gap:.5rem;min-width:0;display:flex}.credential-key[data-v-d0288b5d]{flex:0 0 160px;min-width:0}.credential-value[data-v-d0288b5d]{flex:1;min-width:0}.credential-value[data-v-d0288b5d] .p-password,.credential-value[data-v-d0288b5d] .p-password input{width:100%}.traefik-ports[data-v-d0288b5d]{gap:1rem;display:flex}.traefik-field--small[data-v-d0288b5d]{flex:1}.hint-ok[data-v-d0288b5d]{color:var(--p-green-500);font-size:.8rem;font-weight:400}.traefik-actions[data-v-d0288b5d]{align-self:flex-end;gap:.5rem;display:flex}.traefik-renewal-notice[data-v-d0288b5d]{border-radius:var(--p-border-radius);background:color-mix(in srgb, var(--p-blue-500) 10%, transparent);border:1px solid color-mix(in srgb, var(--p-blue-500) 30%, transparent);color:var(--p-blue-300);align-items:flex-start;gap:.6rem;padding:.75rem;font-size:.875rem;display:flex}.traefik-validation[data-v-d0288b5d]{border:1px solid var(--p-content-border-color);border-radius:var(--p-border-radius);flex-direction:column;gap:.4rem;padding:.75rem;display:flex}.validation-item[data-v-d0288b5d]{align-items:center;gap:.5rem;font-size:.875rem;display:flex}.validation-item--ok[data-v-d0288b5d]{color:var(--p-green-500)}.validation-item--fail[data-v-d0288b5d]{color:var(--p-red-500)}.traefik-logs[data-v-d0288b5d],.traefik-config-files[data-v-d0288b5d]{border:1px solid var(--p-content-border-color);border-radius:var(--p-border-radius);overflow:hidden}.config-tabs[data-v-d0288b5d]{gap:.25rem;display:flex}.config-tab[data-v-d0288b5d]{border-radius:var(--p-border-radius);cursor:pointer;color:var(--p-text-muted-color);background:0 0;border:none;padding:.2rem .6rem;font-size:.8rem}.config-tab--active[data-v-d0288b5d]{background:var(--p-primary-color);color:var(--p-primary-contrast-color)}.traefik-logs-header[data-v-d0288b5d]{background:var(--p-content-hover-background);justify-content:space-between;align-items:center;padding:.4rem .75rem;font-size:.8rem;font-weight:600;display:flex}.logs-live[data-v-d0288b5d]{color:var(--p-green-400);font-size:.7rem;animation:1.2s ease-in-out infinite blink-d0288b5d}@keyframes blink-d0288b5d{0%,to{opacity:1}50%{opacity:.3}}.traefik-logs-content[data-v-d0288b5d]{white-space:pre-wrap;word-break:break-all;background:var(--p-surface-900,#1a1a1a);max-height:300px;color:var(--p-surface-100,#f0f0f0);margin:0;padding:.75rem;font-family:monospace;font-size:.75rem;overflow-y:auto}.traefik-dialog-layout[data-v-9ce779b4]{grid-template-columns:1fr 1fr;gap:1.5rem;min-height:0;display:grid}.traefik-dialog-left[data-v-9ce779b4]{min-width:0;max-height:80vh;padding-right:.5rem;overflow-y:auto}.traefik-dialog-right[data-v-9ce779b4]{flex-direction:column;gap:.5rem;min-width:0;max-height:80vh;display:flex}.fs-header[data-v-9ce779b4]{color:var(--p-text-muted-color);border-bottom:1px solid var(--p-content-border-color);justify-content:space-between;align-items:center;padding:.25rem 0;font-size:.75rem;font-weight:600;display:flex}.fs-tree[data-v-9ce779b4]{flex-direction:column;gap:1px;display:flex}.fs-entry[data-v-9ce779b4]{border-radius:var(--p-border-radius);cursor:pointer;text-align:left;color:var(--p-text-color);background:0 0;border:none;align-items:center;gap:.4rem;width:100%;padding:.3rem .5rem;font-size:.8rem;display:flex}.fs-entry[data-v-9ce779b4]:hover{background:var(--p-content-hover-background)}.fs-entry--active[data-v-9ce779b4]{background:color-mix(in srgb, var(--p-primary-color) 15%, transparent);color:var(--p-primary-color)}.fs-icon[data-v-9ce779b4]{opacity:.6;flex-shrink:0;font-size:.75rem}.fs-dir[data-v-9ce779b4]{opacity:.5;font-size:.7rem}.fs-name[data-v-9ce779b4]{font-weight:500}.fs-empty[data-v-9ce779b4]{color:var(--p-text-muted-color);padding:.5rem;font-size:.8rem;font-style:italic}.fs-content[data-v-9ce779b4]{white-space:pre-wrap;word-break:break-all;background:var(--p-surface-900,#1a1a1a);color:var(--p-surface-100,#f0f0f0);border-radius:var(--p-border-radius);border:1px solid var(--p-content-border-color);flex:1;margin:0;padding:.75rem;font-family:monospace;font-size:.72rem;overflow-y:auto}.agent-page[data-v-09072d16]{max-width:1200px;margin:0 auto;padding:1.5rem}.page-header[data-v-09072d16]{justify-content:space-between;align-items:center;margin-bottom:1.5rem;display:flex}.page-header h1[data-v-09072d16]{margin:0;font-size:1.75rem;font-weight:700}.loading-container[data-v-09072d16],.error-container[data-v-09072d16],.empty-container[data-v-09072d16]{color:var(--p-text-muted-color);flex-direction:column;align-items:center;gap:.75rem;padding:3rem 0;display:flex}.agent-name[data-v-09072d16]{align-items:center;gap:.5rem;font-weight:500;display:flex}.agent-url[data-v-09072d16]{background:var(--p-content-hover-background);border-radius:4px;padding:.15rem .4rem;font-family:Fira Code,Cascadia Code,monospace;font-size:.8rem}.runner-tags[data-v-09072d16]{flex-wrap:wrap;gap:.3rem;display:flex}.action-grid[data-v-09072d16]{grid-template-columns:repeat(2,auto);gap:0;width:fit-content;display:grid}@media (max-width:768px){[data-v-09072d16] .hide-on-mobile{display:none!important}[data-v-09072d16] .p-datatable-column-header-content{white-space:nowrap}.agent-url[data-v-09072d16]{word-break:break-all;white-space:normal}}.text-muted[data-v-09072d16]{color:var(--p-text-muted-color)}.form-group[data-v-09072d16]{margin-bottom:1rem}.form-group label[data-v-09072d16]{margin-bottom:.4rem;font-size:.875rem;font-weight:500;display:block}.form-hint[data-v-09072d16]{color:var(--p-text-muted-color);font-size:.78rem}.test-connection[data-v-09072d16]{align-items:center;gap:.75rem;display:flex}.w-full[data-v-09072d16]{width:100%}.passthrough-description[data-v-09072d16]{color:var(--p-text-muted-color);margin:0 0 1rem;font-size:.85rem;line-height:1.4}.passthrough-list[data-v-09072d16]{flex-direction:column;gap:.25rem;margin-bottom:.75rem;display:flex}.passthrough-item[data-v-09072d16]{background:var(--p-content-hover-background);border-radius:6px;justify-content:space-between;align-items:center;padding:.3rem .5rem;display:flex}.passthrough-item-info[data-v-09072d16]{align-items:center;gap:.4rem;min-width:0;display:flex;overflow:hidden}.passthrough-item code[data-v-09072d16]{flex-shrink:0;font-family:Fira Code,Cascadia Code,monospace;font-size:.85rem}.passthrough-value[data-v-09072d16]{color:var(--p-text-muted-color);text-overflow:ellipsis;white-space:nowrap;font-family:Fira Code,Cascadia Code,monospace;font-size:.8rem;overflow:hidden}.passthrough-undefined[data-v-09072d16]{color:var(--p-orange-500);font-size:.78rem;font-style:italic}.passthrough-unsaved[data-v-09072d16]{color:var(--p-text-muted-color);font-size:.78rem;font-style:italic}.passthrough-empty[data-v-09072d16]{margin-bottom:.75rem;font-size:.85rem}.passthrough-add[data-v-09072d16]{align-items:center;gap:.5rem;display:flex}.passthrough-add-input[data-v-09072d16]{flex:1}.passthrough-error[data-v-09072d16]{color:var(--p-red-500);margin-top:.25rem;font-size:.78rem;display:block}.api-keys-page[data-v-0d4e888e]{max-width:860px;padding:1.5rem}.api-keys-page__header[data-v-0d4e888e]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.api-keys-page__header h1[data-v-0d4e888e]{margin:0;font-size:1.5rem;font-weight:600}.api-keys-page__subtitle[data-v-0d4e888e]{color:var(--p-text-muted-color);flex:1;margin:0;font-size:.875rem}.api-keys-page__empty[data-v-0d4e888e]{color:var(--p-text-muted-color);padding:2rem 0;font-size:.9rem}.api-keys-card[data-v-0d4e888e]{max-width:680px}.api-keys-list[data-v-0d4e888e]{flex-direction:column;gap:.5rem;display:flex}.api-key-card[data-v-0d4e888e]{border:1px solid var(--p-content-border-color);border-radius:var(--p-border-radius);background:var(--p-content-background);padding:.5rem .75rem;position:relative}.api-key-card__body[data-v-0d4e888e]{min-width:0}.api-key-card__name[data-v-0d4e888e]{align-items:center;gap:.5rem;margin-bottom:.2rem;padding-right:5rem;font-weight:500;display:flex}.api-key-card__meta[data-v-0d4e888e]{color:var(--p-text-muted-color);margin-bottom:.4rem;font-size:.8rem}.api-key-card__url-row[data-v-0d4e888e]{align-items:center;gap:.4rem;display:flex}.api-key-card__url[data-v-0d4e888e]{min-width:0;color:var(--p-text-muted-color);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:.75rem;overflow:hidden}.api-key-card__actions[data-v-0d4e888e]{gap:.3rem;display:flex;position:absolute;top:.5rem;right:.5rem}.badge[data-v-0d4e888e]{text-transform:uppercase;border-radius:4px;padding:.1rem .4rem;font-size:.7rem;font-weight:600}.badge--info[data-v-0d4e888e]{background:var(--p-blue-100);color:var(--p-blue-700)}.api-key-form[data-v-0d4e888e]{background:var(--p-surface-card);border:1px solid var(--runeya-border);border-radius:10px;max-width:600px;padding:1.5rem}.api-key-form h2[data-v-0d4e888e]{margin:0 0 1.25rem;font-size:1.1rem}.form-field[data-v-0d4e888e]{margin-bottom:1.25rem}.form-field>label[data-v-0d4e888e]:first-child{margin-bottom:.5rem;font-size:.875rem;font-weight:600;display:block}.form-input[data-v-0d4e888e]{border:1px solid var(--runeya-border);background:var(--p-surface-ground);width:100%;color:var(--p-text-color);box-sizing:border-box;border-radius:6px;padding:.5rem .75rem;font-size:.9rem}.form-input[data-v-0d4e888e]:focus{border-color:var(--p-primary-color);outline:none}.form-select[data-v-0d4e888e]{border:1px solid var(--runeya-border);background:var(--p-surface-ground);width:100%;color:var(--p-text-muted-color);cursor:pointer;border-radius:6px;padding:.45rem .75rem;font-size:.875rem}.form-select--sm[data-v-0d4e888e]{width:auto;padding:.25rem .5rem;font-size:.8rem}.form-hint[data-v-0d4e888e]{color:var(--p-text-muted-color);margin-top:.4rem;font-size:.75rem}.radio-group[data-v-0d4e888e]{flex-direction:column;gap:.4rem;display:flex}.radio-label[data-v-0d4e888e]{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.5rem;font-size:.875rem;display:flex}.svc-list-container[data-v-0d4e888e]{border:1px solid var(--runeya-border);border-radius:8px;margin-bottom:.5rem;overflow:hidden}.svc-list-search[data-v-0d4e888e]{background:var(--p-surface-ground);border-bottom:1px solid var(--runeya-border);align-items:center;gap:.5rem;padding:.4rem .75rem;display:flex}.svc-list-search__icon[data-v-0d4e888e]{color:var(--p-text-muted-color);flex-shrink:0;font-size:.75rem}.svc-list-search__input[data-v-0d4e888e]{color:var(--p-text-color);background:0 0;border:none;outline:none;flex:1;font-size:.85rem}.svc-list-search__input[data-v-0d4e888e]::placeholder{color:var(--p-text-muted-color)}.svc-list-search__clear[data-v-0d4e888e]{cursor:pointer;color:var(--p-text-muted-color);background:0 0;border:none;align-items:center;padding:0;font-size:.75rem;display:flex}.svc-list-search__clear[data-v-0d4e888e]:hover{color:var(--p-text-color)}.svc-list-scroll[data-v-0d4e888e]{max-height:360px;overflow-y:auto}.svc-list-empty[data-v-0d4e888e]{margin:0;padding:.75rem}.svc-perm-row[data-v-0d4e888e]{border-bottom:1px solid var(--runeya-border);overflow:hidden}.svc-perm-row[data-v-0d4e888e]:last-child{border-bottom:none}.svc-perm-row__header[data-v-0d4e888e]{background:var(--p-surface-ground);border-bottom:1px solid var(--runeya-border);cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;padding:.4rem .75rem;display:flex}.svc-perm-row__header[data-v-0d4e888e]:hover{background:var(--runeya-sidebar-hover)}.svc-chevron[data-v-0d4e888e]{color:var(--p-text-muted-color);font-size:.7rem;transition:transform .15s}.svc-perm-summary[data-v-0d4e888e]{color:var(--p-text-muted-color);margin-left:.3rem;font-size:.75rem;font-weight:400}.svc-perm-row__name[data-v-0d4e888e]{align-items:center;gap:.4rem;font-size:.875rem;font-weight:600;display:flex}.svc-perm-row__actions[data-v-0d4e888e]{border-bottom:1px solid var(--runeya-border);flex-wrap:wrap;gap:.35rem;padding:.5rem .75rem;display:flex}.action-chip[data-v-0d4e888e]{border:1px solid var(--runeya-border);background:var(--p-surface-ground);color:var(--p-text-muted-color);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:20px;align-items:center;gap:.3rem;padding:.15rem .5rem;font-size:.78rem;transition:all .12s;display:inline-flex}.action-chip input[type=checkbox][data-v-0d4e888e]{display:none}.action-chip--on[data-v-0d4e888e]{background:var(--p-primary-color);color:var(--p-primary-contrast-color,#fff);border-color:var(--p-primary-color)}.action-chip--sub[data-v-0d4e888e]{opacity:.85;margin-left:.25rem;font-size:.72rem}.action-chip--sub.action-chip--on[data-v-0d4e888e]{background:var(--p-primary-400,var(--p-primary-color))}.svc-perm-row__envs[data-v-0d4e888e]{flex-direction:column;gap:.35rem;padding:.5rem .75rem;display:flex}.env-perm-row[data-v-0d4e888e]{flex-wrap:wrap;align-items:center;gap:.35rem;display:flex}.env-perm-row__name[data-v-0d4e888e]{color:var(--p-text-muted-color);align-items:center;gap:.3rem;min-width:8rem;font-size:.8rem;display:flex}.env-add-row[data-v-0d4e888e]{margin-top:.25rem}.svc-add-row[data-v-0d4e888e]{flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:.5rem;display:flex}.import-modal__body[data-v-0d4e888e]{flex-direction:column;gap:1rem;padding:.25rem 0;display:flex}.import-modal__desc[data-v-0d4e888e]{color:var(--p-text-muted-color);margin:0;font-size:.875rem}.import-section[data-v-0d4e888e]{flex-direction:column;gap:.4rem;display:flex}.import-section__label[data-v-0d4e888e]{color:var(--p-text-muted-color);text-transform:uppercase;letter-spacing:.04em;font-size:.8rem;font-weight:600}.form-actions[data-v-0d4e888e]{justify-content:space-between;align-items:center;gap:.75rem;margin-top:1.5rem;display:flex}.form-actions__right[data-v-0d4e888e]{gap:.75rem;display:flex}.btn--renew[data-v-0d4e888e]{color:var(--p-text-muted-color);font-size:.8rem}.btn--renew[data-v-0d4e888e]:hover:not(:disabled){color:var(--p-text-color)}.api-key-card__skill[data-v-0d4e888e]{margin-top:.6rem}.skill-toggle[data-v-0d4e888e]{color:var(--p-text-muted-color);gap:.35rem}.skill-toggle[data-v-0d4e888e]:hover{color:var(--p-text-color)}.skill-panel[data-v-0d4e888e]{border:1px solid var(--runeya-border);border-radius:6px;margin-top:.5rem;overflow:hidden}.skill-panel__tools[data-v-0d4e888e]{background:var(--p-surface-ground);border-bottom:1px solid var(--runeya-border);flex-wrap:wrap;gap:.35rem;padding:.5rem .75rem;display:flex}.skill-tool-btn[data-v-0d4e888e]{border:1px solid var(--runeya-border);color:var(--p-text-muted-color);cursor:pointer;background:0 0;border-radius:20px;padding:.2rem .6rem;font-size:.72rem;transition:all .12s}.skill-tool-btn[data-v-0d4e888e]:hover{background:var(--runeya-sidebar-hover);color:var(--p-text-color)}.skill-tool-btn--active[data-v-0d4e888e]{background:var(--p-primary-color);color:var(--p-primary-contrast-color,#fff);border-color:var(--p-primary-color)}.skill-panel__header[data-v-0d4e888e]{background:var(--p-surface-ground);border-bottom:1px solid var(--runeya-border);justify-content:space-between;align-items:center;padding:.4rem .75rem;display:flex}.skill-panel__btns[data-v-0d4e888e]{gap:.35rem;display:flex}.skill-panel__hint[data-v-0d4e888e]{color:var(--p-text-muted-color);font-size:.75rem}.skill-panel__code[data-v-0d4e888e]{white-space:pre-wrap;word-break:break-all;background:var(--p-surface-card);color:var(--p-text-color);max-height:260px;margin:0;padding:.75rem;font-size:.72rem;line-height:1.5;overflow-y:auto}.renew-modal__body[data-v-0d4e888e]{flex-direction:column;gap:.5rem;padding:.25rem 0;display:flex}.renew-modal__title[data-v-0d4e888e]{align-items:center;gap:.5rem;font-weight:600;display:flex}.renew-modal__title-icon[data-v-0d4e888e]{color:var(--p-orange-500,#f97316)}.renew-modal__body p[data-v-0d4e888e]{margin:0;font-size:.9rem;line-height:1.5}.btn[data-v-0d4e888e]{cursor:pointer;border:none;border-radius:6px;align-items:center;gap:.4rem;padding:.45rem .9rem;font-size:.875rem;font-weight:500;transition:all .15s;display:inline-flex}.btn[data-v-0d4e888e]:disabled{opacity:.5;cursor:not-allowed}.btn--primary[data-v-0d4e888e]{background:var(--p-primary-color);color:var(--p-primary-contrast-color,#fff)}.btn--primary[data-v-0d4e888e]:hover:not(:disabled){filter:brightness(1.1)}.btn--ghost[data-v-0d4e888e]{color:var(--p-text-color);border:1px solid var(--runeya-border);background:0 0}.btn--ghost[data-v-0d4e888e]:hover:not(:disabled){background:var(--runeya-sidebar-hover)}.btn--danger[data-v-0d4e888e]{color:var(--p-red-500,#ef4444);border:1px solid var(--runeya-border);background:0 0}.btn--danger[data-v-0d4e888e]:hover:not(:disabled){background:var(--p-red-50,#fef2f2)}.btn--sm[data-v-0d4e888e]{padding:.3rem .6rem;font-size:.8rem}.btn--xs[data-v-0d4e888e]{padding:.2rem .4rem;font-size:.75rem}.settings-card[data-v-2f65752a]{max-width:680px}.cloud-banner[data-v-2f65752a]{border:1px solid var(--p-primary-color);background:color-mix(in srgb, var(--p-primary-color) 8%, transparent);width:100%;max-width:680px;color:var(--p-text-color);cursor:pointer;text-align:left;font:inherit;border-radius:10px;align-items:center;gap:1rem;margin-bottom:1.25rem;padding:1rem 1.25rem;transition:background .15s,box-shadow .15s;display:flex}.cloud-banner[data-v-2f65752a]:hover{background:color-mix(in srgb, var(--p-primary-color) 14%, transparent);box-shadow:0 2px 10px color-mix(in srgb, var(--p-primary-color) 20%, transparent)}.cloud-banner__icon[data-v-2f65752a]{color:var(--p-primary-color);flex-shrink:0;font-size:1.75rem}.cloud-banner__text[data-v-2f65752a]{flex-direction:column;flex:1;gap:.15rem;min-width:0;display:flex}.cloud-banner__title[data-v-2f65752a]{font-size:1rem}.cloud-banner__desc[data-v-2f65752a]{color:var(--p-text-muted-color);font-size:.85rem}.cloud-banner__action[data-v-2f65752a]{color:var(--p-primary-color);white-space:nowrap;flex-shrink:0;align-items:center;gap:.4rem;font-weight:600;display:inline-flex}.setting-row[data-v-2f65752a]{border-bottom:1px solid var(--p-content-border-color);align-items:flex-start;gap:1rem;padding:.75rem 0;display:flex}.setting-row[data-v-2f65752a]:last-child{border-bottom:none}.setting-label[data-v-2f65752a]{width:140px;color:var(--p-text-muted-color);flex-shrink:0;padding-top:.25rem;font-size:.9rem;font-weight:600}.setting-value[data-v-2f65752a]{flex:1;align-items:center;gap:.5rem;display:flex}.path-value[data-v-2f65752a]{word-break:break-all;min-width:0;color:var(--p-text-color);flex:1;font-size:.85rem}.setting-input[data-v-2f65752a]{width:100%;max-width:400px}.setting-actions[data-v-2f65752a]{padding-top:1rem}.settings-card[data-v-409957ad]{max-width:680px}.notification-groups[data-v-409957ad]{flex-direction:column;gap:1rem;display:flex}.notification-group[data-v-409957ad]{border:1px solid var(--p-content-border-color);border-radius:var(--p-border-radius);background:color-mix(in srgb, var(--p-content-hover-background) 35%, transparent);padding:.9rem 1rem}.notification-group__header[data-v-409957ad]{justify-content:space-between;align-items:flex-start;gap:.75rem;margin-bottom:.35rem;display:flex}.notification-group__collapse-button[data-v-409957ad]{appearance:none;text-align:left;cursor:pointer;color:inherit;background:0 0;border:0;flex:1;margin:0;padding:0}.notification-group__title-wrap[data-v-409957ad]{align-items:center;gap:.45rem;display:flex}.notification-group__icon[data-v-409957ad]{color:var(--p-text-muted-color);font-size:.9rem}.notification-group__title[data-v-409957ad]{margin:0;font-size:.92rem;font-weight:700}.notification-group__chevron[data-v-409957ad]{color:var(--p-text-muted-color);margin-left:auto;font-size:.8rem}.notification-group__desc[data-v-409957ad]{color:var(--p-text-muted-color);margin:.2rem 0 0;font-size:.78rem}.notification-group__actions[data-v-409957ad]{flex-shrink:0}.notification-item[data-v-409957ad]{border-bottom:1px solid var(--p-content-border-color)}.notification-item[data-v-409957ad]:last-child,.notification-item .setting-row[data-v-409957ad]{border-bottom:none}.setting-row[data-v-409957ad]{border-bottom:1px solid var(--p-content-border-color);align-items:flex-start;gap:1rem;padding:.75rem 0;display:flex}.setting-row--toggle[data-v-409957ad]{align-items:center}.setting-label[data-v-409957ad]{color:var(--p-text-muted-color);font-size:.9rem;font-weight:600}.setting-label-group[data-v-409957ad]{flex:1;min-width:0}.setting-hint[data-v-409957ad]{color:var(--p-text-muted-color);margin-top:.2rem;font-size:.78rem;display:block}.notification-item__right[data-v-409957ad]{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.notification-item__services-toggle[data-v-409957ad]{appearance:none;border:1px solid var(--p-content-border-color);border-radius:var(--p-border-radius);cursor:pointer;color:var(--p-text-muted-color);background:0 0;align-items:center;gap:.3rem;padding:.2rem .45rem;font-size:.78rem;transition:background .15s,color .15s;display:flex}.notification-item__services-toggle[data-v-409957ad]:hover{background:var(--p-content-hover-background);color:var(--p-text-color)}.notification-item__services[data-v-409957ad]{border-top:1px dashed var(--p-content-border-color);flex-direction:column;gap:.4rem;padding:.5rem 0 .75rem 1rem;display:flex}.notification-item__services-empty[data-v-409957ad]{color:var(--p-text-muted-color);margin:0;font-size:.8rem}.notification-item__service-row[data-v-409957ad]{justify-content:space-between;align-items:center;padding:.25rem 0;display:flex}.notification-item__service-name[data-v-409957ad]{color:var(--p-text-color);font-size:.85rem}.security-cards[data-v-60a35acd]{flex-direction:column;gap:1rem;display:flex}.settings-card[data-v-60a35acd]{max-width:680px}.card-title[data-v-60a35acd]{align-items:center;gap:.5rem;display:flex}.card-desc[data-v-60a35acd]{color:var(--p-text-muted-color);margin:0 0 1rem;font-size:.85rem}.setting-row[data-v-60a35acd]{align-items:flex-start;gap:1rem;padding:.75rem 0;display:flex}.setting-label[data-v-60a35acd]{width:140px;color:var(--p-text-muted-color);flex-shrink:0;padding-top:.25rem;font-size:.9rem;font-weight:600}.org-block[data-v-60a35acd]{flex-direction:column;display:flex}.org-adopt[data-v-60a35acd]{flex-direction:column;gap:.5rem;margin-bottom:1rem;display:flex}.org-adopt__row[data-v-60a35acd]{align-items:center;gap:.5rem;max-width:560px;display:flex}.org-unreadable[data-v-60a35acd]{margin:0 0 .75rem;font-size:.8rem}.org-label[data-v-60a35acd]{flex-direction:column;gap:.15rem;display:flex}.org-id[data-v-60a35acd]{word-break:break-all;font-family:monospace;font-size:.8rem}.org-source[data-v-60a35acd]{font-size:.75rem;font-weight:400}.org-source--own[data-v-60a35acd]{color:var(--p-primary-color)}.org-source--locked[data-v-60a35acd]{color:var(--p-red-500)}.encryption-key-field[data-v-60a35acd]{flex:1;align-items:center;gap:.25rem;max-width:460px;display:flex}.encryption-key-input[data-v-60a35acd]{flex:1;font-family:monospace;font-size:.85rem}.settings-card[data-v-3e46f822]{max-width:680px}.card-title[data-v-3e46f822]{align-items:center;gap:.5rem;display:flex}.card-desc[data-v-3e46f822]{color:var(--p-text-muted-color);margin:0 0 1rem;font-size:.85rem}.setting-row[data-v-3e46f822]{align-items:flex-start;gap:1rem;padding:.75rem 0;display:flex}.setting-label[data-v-3e46f822]{width:140px;color:var(--p-text-muted-color);flex-shrink:0;padding-top:.25rem;font-size:.9rem;font-weight:600}.setting-input[data-v-3e46f822]{width:100%;max-width:400px}.editor-warning[data-v-3e46f822]{padding:.5rem 0}.editor-detected[data-v-3e46f822]{padding-top:.5rem}.editor-option[data-v-3e46f822]{align-items:center;gap:.5rem;display:flex}.hint[data-v-3e46f822]{color:var(--p-text-muted-color);font-size:.78rem}.parsers-scope[data-v-2f17c78c]{color:var(--p-text-muted-color);align-items:center;gap:.5rem;margin:0 0 1rem;font-size:.85rem;display:flex}[data-v-2f17c78c] .p-dialog-content{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.settings-card[data-v-2f17c78c]{max-width:680px}.card-desc[data-v-2f17c78c]{color:var(--p-text-muted-color);margin:0 0 1rem;font-size:.85rem}.parsers-loading[data-v-2f17c78c]{color:var(--p-text-muted-color);align-items:center;gap:.5rem;padding:1rem;font-size:.875rem;display:flex}.parsers-list[data-v-2f17c78c]{flex-direction:column;gap:.375rem;display:flex}.parsers-row[data-v-2f17c78c]{border:1px solid var(--p-content-border-color);border-radius:var(--p-border-radius);background:var(--p-content-background);align-items:center;gap:.75rem;padding:.5rem .75rem;display:flex}.parsers-name[data-v-2f17c78c]{flex-shrink:0;font-size:.875rem;font-weight:600}.parsers-desc-inline[data-v-2f17c78c]{color:var(--p-text-muted-color);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:.8rem;overflow:hidden}.parsers-icon--on[data-v-2f17c78c]{color:var(--p-green-500);justify-content:center;align-items:center;width:2rem;height:2rem;display:flex}.parsers-icon--off[data-v-2f17c78c]{color:var(--p-red-500);justify-content:center;align-items:center;width:2rem;height:2rem;display:flex}.parsers-actions[data-v-2f17c78c]{align-items:center;gap:.25rem;margin-left:auto;display:flex}.parsers-empty[data-v-2f17c78c]{text-align:center;color:var(--p-text-muted-color);padding:1.5rem;font-size:.875rem}.parser-dialog__layout[data-v-2f17c78c]{grid-template-columns:1fr 1fr;align-items:stretch;gap:1.25rem;height:100%;display:grid;overflow:hidden}@media (max-width:768px){.parser-dialog__layout[data-v-2f17c78c]{grid-template-columns:1fr;height:auto;overflow-y:auto}.dialog-form[data-v-2f17c78c]{height:auto;overflow:visible}.dialog-form__field--code[data-v-2f17c78c]{min-height:250px}.parser-sim[data-v-2f17c78c]{min-height:300px}.parser-sim__body[data-v-2f17c78c]{min-height:0}.parser-sim__col--output[data-v-2f17c78c]{min-height:150px}}.dialog-form[data-v-2f17c78c]{flex-direction:column;gap:1rem;height:100%;display:flex;overflow:auto}.dialog-form__field--code[data-v-2f17c78c]{flex:1;min-height:0}.dialog-form__field[data-v-2f17c78c]{flex-direction:column;gap:.375rem;display:flex}.dialog-form__label[data-v-2f17c78c]{color:var(--p-text-muted-color);align-items:center;gap:.5rem;font-size:.8125rem;font-weight:600;display:flex}.dialog-form__input[data-v-2f17c78c]{width:100%}.dialog-form__hint[data-v-2f17c78c]{color:var(--p-text-muted-color);font-size:.78rem}.dialog-form__hint code[data-v-2f17c78c]{background:var(--p-content-hover-background);border-radius:3px;padding:.125rem .375rem;font-family:Monaco,Menlo,monospace;font-size:.75rem}.dialog-form__switch[data-v-2f17c78c]{align-items:center;gap:.5rem;display:flex}.dialog-form__switch-label[data-v-2f17c78c]{color:var(--p-text-muted-color);font-size:.85rem}.dialog-form__templates[data-v-2f17c78c]{flex-direction:column;gap:.5rem;display:flex}.dialog-form__templates-label[data-v-2f17c78c]{color:var(--p-text-muted-color);text-transform:uppercase;letter-spacing:.04em;font-size:.75rem;font-weight:600}.dialog-form__templates-select[data-v-2f17c78c]{width:100%}.dialog-form__ai-btn[data-v-2f17c78c]{margin-left:auto}.tpl-option[data-v-2f17c78c]{align-items:center;gap:.75rem;display:flex}.tpl-option__icon[data-v-2f17c78c]{color:var(--p-primary-color);flex-shrink:0;font-size:.9rem}.tpl-option__body[data-v-2f17c78c]{flex-direction:column;gap:.1rem;display:flex}.tpl-option__name[data-v-2f17c78c]{color:var(--p-text-color);font-size:.8125rem;font-weight:600}.tpl-option__desc[data-v-2f17c78c]{color:var(--p-text-muted-color);font-size:.73rem}.parser-sim[data-v-2f17c78c]{border:1px solid var(--p-content-border-color);border-radius:var(--p-border-radius);flex-direction:column;height:100%;display:flex;overflow:hidden}.parser-sim__header[data-v-2f17c78c]{background:var(--p-surface-50,#00000008);border-bottom:1px solid var(--p-content-border-color);justify-content:space-between;align-items:center;padding:.5rem .75rem;font-size:.8125rem;display:flex}.parser-sim__title[data-v-2f17c78c]{align-items:center;gap:.4rem;font-weight:600;display:flex}.parser-sim__status[data-v-2f17c78c]{color:var(--p-text-muted-color);align-items:center;gap:.3rem;font-size:.75rem;display:flex}.parser-sim__body[data-v-2f17c78c]{flex-direction:column;flex:1;gap:0;min-height:0;display:flex}.parser-sim__col[data-v-2f17c78c]{flex-direction:column;gap:.25rem;padding:.6rem .75rem;display:flex}.parser-sim__col[data-v-2f17c78c]:first-child{border-bottom:1px solid var(--p-content-border-color)}.parser-sim__col-label[data-v-2f17c78c]{color:var(--p-text-muted-color);text-transform:uppercase;letter-spacing:.04em;margin-bottom:.25rem;font-size:.75rem;font-weight:600}.parser-sim__textarea[data-v-2f17c78c]{resize:vertical;width:100%;min-height:160px;font-family:var(--p-font-family-mono,monospace);border:1px solid var(--p-inputtext-border-color,var(--p-content-border-color));border-radius:var(--p-border-radius);background:var(--p-inputtext-background,var(--p-content-background));color:var(--p-inputtext-color,var(--p-text-color));outline:none;padding:.5rem;font-size:.8rem;line-height:1.5}.parser-sim__textarea[data-v-2f17c78c]:focus{border-color:var(--p-primary-color)}.parser-sim__error[data-v-2f17c78c]{color:var(--p-red-500,#ef4444);align-items:flex-start;gap:.4rem;padding:.5rem;font-size:.8rem;display:flex}.parser-sim__empty[data-v-2f17c78c]{color:var(--p-text-muted-color);padding:.5rem;font-size:.8rem;font-style:italic}.parser-sim__col--output[data-v-2f17c78c]{flex:1;min-height:0;overflow:hidden}.parser-sim__viewer[data-v-2f17c78c]{flex:1;height:100%;min-height:0}.parser-ai-prompt[data-v-2f17c78c]{flex-direction:column;gap:.75rem;display:flex}.parser-ai-prompt__desc[data-v-2f17c78c]{color:var(--p-text-muted-color);margin:0;font-size:.9rem}.parser-ai-prompt__input[data-v-2f17c78c]{resize:vertical;width:100%}.companion-settings[data-v-6d2bc9ed]{border-bottom:1px solid var(--p-surface-200);margin-bottom:1.25rem;padding-bottom:1.25rem}.companion-settings__title[data-v-6d2bc9ed]{align-items:center;gap:.4rem;margin:0 0 .25rem;font-size:.95rem;display:flex}.companion-settings__lead[data-v-6d2bc9ed]{color:var(--p-text-muted-color);margin:0 0 .75rem;font-size:.8rem}.companion-settings__row[data-v-6d2bc9ed]{align-items:center;gap:.75rem;padding:.4rem 0;display:flex}.companion-settings__row--stack[data-v-6d2bc9ed]{flex-wrap:wrap;justify-content:space-between}.companion-settings__label[data-v-6d2bc9ed]{font-size:.85rem}.companion-settings__hint[data-v-6d2bc9ed]{color:var(--p-text-muted-color);font-size:.75rem}.companion-settings__actions[data-v-6d2bc9ed]{gap:.25rem;display:flex}.companion-settings__editor[data-v-6d2bc9ed]{margin-top:.5rem}.companion-settings__textarea[data-v-6d2bc9ed]{width:100%;font-family:var(--font-mono,ui-monospace, monospace);font-size:.75rem}.providers-scope[data-v-6d2bc9ed]{color:var(--p-text-muted-color);align-items:center;gap:.4rem;margin:0 0 .9rem;font-size:.8rem;display:flex}.settings-card[data-v-6d2bc9ed]{max-width:680px}.providers-loading[data-v-6d2bc9ed],.providers-empty[data-v-6d2bc9ed]{color:var(--p-text-muted-color);align-items:center;gap:.5rem;padding:1rem;font-size:.875rem;display:flex}.ai-providers-list[data-v-6d2bc9ed]{flex-direction:column;gap:.5rem;display:flex}.ai-provider-row[data-v-6d2bc9ed]{border:1px solid var(--p-content-border-color);border-radius:var(--p-border-radius);background:var(--p-content-background);justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1rem;transition:border-color .15s;display:flex}.ai-provider-row--active[data-v-6d2bc9ed]{border-color:var(--p-primary-color);background:color-mix(in srgb, var(--p-primary-color) 5%, var(--p-content-background))}.ai-provider-info[data-v-6d2bc9ed]{flex-wrap:wrap;align-items:center;gap:.75rem;min-width:0;display:flex}.ai-provider-name[data-v-6d2bc9ed]{font-size:.875rem;font-weight:600}.ai-provider-type[data-v-6d2bc9ed]{color:var(--p-text-muted-color);font-size:.8125rem}.ai-provider-model[data-v-6d2bc9ed]{background:var(--p-content-hover-background);color:var(--p-text-muted-color);border-radius:4px;padding:.15rem .4rem;font-size:.75rem}.ai-provider-key[data-v-6d2bc9ed]{background:var(--p-content-hover-background);letter-spacing:.05em;border-radius:4px;padding:.15rem .4rem;font-size:.75rem}.ai-provider-actions[data-v-6d2bc9ed]{flex-shrink:0;align-items:center;gap:.25rem;display:flex}.ai-provider-badge[data-v-6d2bc9ed]{color:var(--p-primary-color);align-items:center;gap:.35rem;padding:.25rem .6rem;font-size:.8rem;font-weight:600;display:inline-flex}.dialog-form[data-v-6d2bc9ed]{flex-direction:column;gap:1rem;display:flex}.dialog-form__field[data-v-6d2bc9ed]{flex-direction:column;gap:.375rem;display:flex}.dialog-form__label[data-v-6d2bc9ed]{color:var(--p-text-muted-color);align-items:center;gap:.5rem;font-size:.8125rem;font-weight:600;display:flex}.dialog-form__input[data-v-6d2bc9ed]{width:100%}.ai-provider-info-block[data-v-6d2bc9ed]{background:color-mix(in srgb, var(--p-primary-color) 6%, var(--p-content-background));border:1px solid color-mix(in srgb, var(--p-primary-color) 25%, transparent);border-radius:var(--p-border-radius);flex-direction:column;gap:.5rem;padding:.75rem 1rem;display:flex}.ai-provider-info-block__text[data-v-6d2bc9ed]{color:var(--p-text-color);margin:0;font-size:.875rem;line-height:1.5}.ai-provider-info-block__link[data-v-6d2bc9ed]{color:var(--p-primary-color);align-items:center;gap:.35rem;font-size:.8125rem;font-weight:500;text-decoration:none;display:inline-flex}.ai-provider-info-block__link[data-v-6d2bc9ed]:hover{text-decoration:underline}.ai-provider-info-block__models[data-v-6d2bc9ed]{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.ai-provider-info-block__models-label[data-v-6d2bc9ed]{color:var(--p-text-muted-color);font-size:.75rem;font-weight:500}.ai-provider-info-block__model-tag[data-v-6d2bc9ed]{background:var(--p-content-hover-background);border:1px solid var(--p-content-border-color);color:var(--p-text-muted-color);border-radius:4px;padding:.1rem .4rem;font-size:.7rem}.settings-card[data-v-3faeb447]{max-width:680px}.scenario-list[data-v-3faeb447]{flex-direction:column;gap:.5rem;display:flex}.scenario-row[data-v-3faeb447]{border:1px solid var(--p-content-border-color);border-radius:var(--p-border-radius);background:var(--p-content-background);justify-content:space-between;align-items:center;gap:.75rem;padding:.5rem .75rem;display:flex}.scenario-info[data-v-3faeb447]{align-items:center;gap:.75rem;display:flex}.scenario-icon[data-v-3faeb447]{opacity:.7;font-size:1.1rem}.scenario-desc[data-v-3faeb447]{opacity:.6;margin-left:.5rem;font-size:.85rem}.scenario-meta[data-v-3faeb447]{opacity:.5;margin-top:.25rem;font-size:.8rem}.scenario-actions[data-v-3faeb447]{flex-shrink:0;gap:.25rem;display:flex}.scenario-empty[data-v-3faeb447]{text-align:center;opacity:.5;padding:1rem 0}.state[data-v-dcb0ce3b]{color:var(--p-text-muted-color);align-items:center;gap:.75rem;font-size:.88rem;display:flex}.settings-card[data-v-73b445c8]{max-width:680px}.setting-row[data-v-73b445c8]{border-bottom:1px solid var(--p-content-border-color);align-items:flex-start;gap:1rem;padding:.75rem 0;display:flex}.setting-row[data-v-73b445c8]:last-child{border-bottom:none}.setting-label[data-v-73b445c8]{width:140px;color:var(--p-text-muted-color);flex-shrink:0;padding-top:.25rem;font-size:.9rem;font-weight:600}.setting-value[data-v-73b445c8]{flex:1;align-items:center;gap:.5rem;display:flex}.card-title-row[data-v-73b445c8]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.diagnostics[data-v-d1059365]{flex-direction:column;gap:2rem;display:flex}.block__header[data-v-d1059365]{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.85rem;display:flex}.block__title[data-v-d1059365]{margin:0;font-size:1rem;font-weight:600}.block__desc[data-v-d1059365]{color:var(--p-text-muted-color);margin:.2rem 0 0;font-size:.85rem}.empty[data-v-d1059365]{text-align:center;color:var(--p-text-muted-color);margin:0;padding:1.2rem;font-size:.875rem}.instances[data-v-d1059365]{border:1px solid var(--p-content-border-color);border-radius:8px;margin:0;padding:0;list-style:none;overflow:hidden}.instance[data-v-d1059365]{border-bottom:1px solid var(--p-content-border-color);grid-template-columns:1fr auto;grid-template-areas:"main action""meta action";align-items:center;gap:.15rem 1rem;padding:.7rem .9rem;display:grid}.instance[data-v-d1059365]:last-child{border-bottom:0}.instance__main[data-v-d1059365]{grid-area:main;align-items:center;gap:.5rem;font-size:.9rem;font-weight:600;display:flex}.instance__port[data-v-d1059365]{align-items:center;gap:.4rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;display:flex}.instance__meta[data-v-d1059365]{color:var(--p-text-muted-color);flex-wrap:wrap;grid-area:meta;align-items:center;gap:.4rem;font-size:.78rem;display:flex}.instance__cwd[data-v-d1059365]{text-overflow:ellipsis;white-space:nowrap;max-width:24rem;overflow:hidden}.instance[data-v-d1059365] .p-button{grid-area:action}.instance__actions[data-v-d1059365]{grid-area:action;align-items:center;gap:.25rem;display:flex}.instance__actions[data-v-d1059365] .p-button{grid-area:auto}.tag[data-v-d1059365]{border-radius:999px;padding:.1rem .45rem;font-size:.7rem;font-weight:600}.tag--current[data-v-d1059365]{background:color-mix(in srgb, var(--p-primary-color) 16%, transparent);color:var(--p-primary-color)}.toolbar[data-v-d1059365]{flex-wrap:wrap;align-items:center;gap:.6rem;margin-bottom:.6rem;display:flex}.toolbar__source[data-v-d1059365]{min-width:9rem}.toolbar__search[data-v-d1059365]{flex:10rem;min-width:10rem}.toolbar__toggle[data-v-d1059365]{align-items:center;gap:.45rem;font-size:.85rem;display:flex}.toolbar__spacer[data-v-d1059365]{flex:auto}.toolbar__actions[data-v-d1059365]{flex:none;align-items:center;gap:.25rem;display:flex}.log[data-v-d1059365]{background:var(--p-content-background);border:1px solid var(--p-content-border-color);border-radius:8px;height:26rem;padding:.5rem 0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.78rem;line-height:1.55;overflow:auto}.log-line[data-v-d1059365]{white-space:pre-wrap;word-break:break-word;gap:.6rem;padding:.05rem .8rem;display:flex}.log-line--warn[data-v-d1059365]{background:color-mix(in srgb, var(--p-orange-500,#f59e0b) 9%, transparent)}.log-line--error[data-v-d1059365]{background:color-mix(in srgb, var(--p-red-500,#ef4444) 11%, transparent)}.log-line__time[data-v-d1059365]{color:var(--p-text-muted-color);opacity:.75;flex:none}.log-line__source[data-v-d1059365]{text-transform:uppercase;letter-spacing:.03em;flex:0 0 3.4rem;align-self:center;font-size:.68rem}.log-line__source--server[data-v-d1059365]{color:var(--p-primary-color)}.log-line__source--agent[data-v-d1059365]{color:var(--p-text-muted-color)}.log-line__text[data-v-d1059365]{flex:auto}.follow-hint[data-v-d1059365]{text-align:center;margin:.4rem 0 0}.api-docs[data-v-5c36e62a]{flex-direction:column;height:100%;display:flex;overflow:hidden}.api-docs__content[data-v-5c36e62a]{flex:1;min-height:0;overflow-y:auto}.api-docs__toolbar[data-v-5c36e62a]{background:var(--p-surface-card);border-bottom:1px solid var(--p-surface-border);flex-shrink:0;align-items:center;gap:.75rem;padding:.75rem 1rem;display:flex}.api-docs__toolbar-label[data-v-5c36e62a]{color:var(--p-text-muted-color);white-space:nowrap;font-size:.875rem;font-weight:500}.settings-page[data-v-f0a75b88]{flex-direction:column;height:100%;display:flex}.settings-layout[data-v-f0a75b88]{flex:1;gap:0;min-height:0;display:flex}.settings-nav[data-v-f0a75b88]{border-right:1px solid var(--p-content-border-color);flex-direction:column;flex-shrink:0;gap:.25rem;width:200px;padding:1.25rem 0;display:flex}.settings-nav__title[data-v-f0a75b88]{letter-spacing:.08em;text-transform:uppercase;color:var(--p-text-muted-color);padding:0 1rem .75rem;font-size:.7rem;font-weight:700}.settings-nav__list[data-v-f0a75b88]{flex-direction:column;gap:.125rem;margin:0;padding:0;list-style:none;display:flex}.settings-nav__item[data-v-f0a75b88]{cursor:pointer;color:var(--p-text-muted-color);-webkit-user-select:none;user-select:none;border-radius:6px;align-items:center;gap:.625rem;margin:0 .5rem;padding:.5rem 1rem;font-size:.875rem;transition:background .15s,color .15s;display:flex}.settings-nav__item[data-v-f0a75b88]:hover{background:var(--p-content-hover-background);color:var(--p-text-color)}.settings-nav__item--active[data-v-f0a75b88]{background:var(--p-primary-50,color-mix(in srgb, var(--p-primary-color) 10%, transparent));color:var(--p-primary-color);font-weight:600}.settings-nav__icon[data-v-f0a75b88]{flex-shrink:0;font-size:.875rem}.settings-content[data-v-f0a75b88]{flex:1;min-width:0;padding:1.5rem 2rem;overflow-y:auto}.settings-content--fullpage[data-v-f0a75b88]{flex-direction:column;min-height:0;padding:0;display:flex;overflow:hidden}.settings-content--fullpage[data-v-f0a75b88] .api-docs{flex:1;min-height:0}@media (max-width:640px){.settings-layout[data-v-f0a75b88]{flex-direction:column}.settings-nav[data-v-f0a75b88]{border-right:none;border-bottom:1px solid var(--p-content-border-color);flex-direction:row;align-items:center;width:100%;padding:.5rem 0;position:relative}.settings-nav__title[data-v-f0a75b88]{display:none}.settings-nav__list[data-v-f0a75b88]{scrollbar-width:none;flex-direction:row;flex:1;gap:0;padding:0 .25rem;overflow-x:auto}.settings-nav__list[data-v-f0a75b88]::-webkit-scrollbar{display:none}.settings-nav__item[data-v-f0a75b88]{white-space:nowrap;border-radius:6px;flex-direction:column;flex-shrink:0;gap:.25rem;margin:0;padding:.4rem .75rem;font-size:.7rem}.settings-nav__icon[data-v-f0a75b88]{font-size:1rem}.settings-nav__chevron[data-v-f0a75b88]{cursor:pointer;width:2rem;height:2rem;color:var(--p-text-muted-color);background:0 0;border:none;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;transition:background .15s,color .15s;display:flex}.settings-nav__chevron[data-v-f0a75b88]:hover{background:var(--p-content-hover-background);color:var(--p-text-color)}.settings-content[data-v-f0a75b88]{padding:1rem}}@media (min-width:641px){.settings-nav__chevron[data-v-f0a75b88]{display:none}}.section-header[data-v-f0a75b88]{margin-bottom:1.5rem}.section-header--has-actions[data-v-f0a75b88]{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.section-header__text[data-v-f0a75b88]{flex:1;min-width:0}.section-header__actions[data-v-f0a75b88]{flex-shrink:0;align-self:center}.section-title[data-v-f0a75b88]{margin:0 0 .25rem;font-size:1.25rem;font-weight:700}.section-desc[data-v-f0a75b88]{color:var(--p-text-muted-color);margin:0;font-size:.875rem}
|
|
1
|
+
.traefik-settings[data-v-d0288b5d]{box-sizing:border-box;flex-direction:column;gap:1rem;width:100%;min-width:0;display:flex}.traefik-settings[data-v-d0288b5d] input,.traefik-settings[data-v-d0288b5d] .p-inputtext,.traefik-settings[data-v-d0288b5d] .p-autocomplete,.traefik-settings[data-v-d0288b5d] .p-password{box-sizing:border-box;width:100%;max-width:100%}.traefik-row[data-v-d0288b5d]{justify-content:space-between;align-items:center;display:flex}.traefik-field[data-v-d0288b5d]{flex-direction:column;gap:.4rem;display:flex}.traefik-field label[data-v-d0288b5d]{font-size:.875rem;font-weight:500}.traefik-field small[data-v-d0288b5d]{color:var(--p-text-muted-color);font-size:.75rem}.credential-row[data-v-d0288b5d]{align-items:center;gap:.5rem;min-width:0;display:flex}.credential-key[data-v-d0288b5d]{flex:0 0 160px;min-width:0}.credential-value[data-v-d0288b5d]{flex:1;min-width:0}.credential-value[data-v-d0288b5d] .p-password,.credential-value[data-v-d0288b5d] .p-password input{width:100%}.traefik-ports[data-v-d0288b5d]{gap:1rem;display:flex}.traefik-field--small[data-v-d0288b5d]{flex:1}.hint-ok[data-v-d0288b5d]{color:var(--p-green-500);font-size:.8rem;font-weight:400}.traefik-actions[data-v-d0288b5d]{align-self:flex-end;gap:.5rem;display:flex}.traefik-renewal-notice[data-v-d0288b5d]{border-radius:var(--p-border-radius);background:color-mix(in srgb, var(--p-blue-500) 10%, transparent);border:1px solid color-mix(in srgb, var(--p-blue-500) 30%, transparent);color:var(--p-blue-300);align-items:flex-start;gap:.6rem;padding:.75rem;font-size:.875rem;display:flex}.traefik-validation[data-v-d0288b5d]{border:1px solid var(--p-content-border-color);border-radius:var(--p-border-radius);flex-direction:column;gap:.4rem;padding:.75rem;display:flex}.validation-item[data-v-d0288b5d]{align-items:center;gap:.5rem;font-size:.875rem;display:flex}.validation-item--ok[data-v-d0288b5d]{color:var(--p-green-500)}.validation-item--fail[data-v-d0288b5d]{color:var(--p-red-500)}.traefik-logs[data-v-d0288b5d],.traefik-config-files[data-v-d0288b5d]{border:1px solid var(--p-content-border-color);border-radius:var(--p-border-radius);overflow:hidden}.config-tabs[data-v-d0288b5d]{gap:.25rem;display:flex}.config-tab[data-v-d0288b5d]{border-radius:var(--p-border-radius);cursor:pointer;color:var(--p-text-muted-color);background:0 0;border:none;padding:.2rem .6rem;font-size:.8rem}.config-tab--active[data-v-d0288b5d]{background:var(--p-primary-color);color:var(--p-primary-contrast-color)}.traefik-logs-header[data-v-d0288b5d]{background:var(--p-content-hover-background);justify-content:space-between;align-items:center;padding:.4rem .75rem;font-size:.8rem;font-weight:600;display:flex}.logs-live[data-v-d0288b5d]{color:var(--p-green-400);font-size:.7rem;animation:1.2s ease-in-out infinite blink-d0288b5d}@keyframes blink-d0288b5d{0%,to{opacity:1}50%{opacity:.3}}.traefik-logs-content[data-v-d0288b5d]{white-space:pre-wrap;word-break:break-all;background:var(--p-surface-900,#1a1a1a);max-height:300px;color:var(--p-surface-100,#f0f0f0);margin:0;padding:.75rem;font-family:monospace;font-size:.75rem;overflow-y:auto}.traefik-dialog-layout[data-v-9ce779b4]{grid-template-columns:1fr 1fr;gap:1.5rem;min-height:0;display:grid}.traefik-dialog-left[data-v-9ce779b4]{min-width:0;max-height:80vh;padding-right:.5rem;overflow-y:auto}.traefik-dialog-right[data-v-9ce779b4]{flex-direction:column;gap:.5rem;min-width:0;max-height:80vh;display:flex}.fs-header[data-v-9ce779b4]{color:var(--p-text-muted-color);border-bottom:1px solid var(--p-content-border-color);justify-content:space-between;align-items:center;padding:.25rem 0;font-size:.75rem;font-weight:600;display:flex}.fs-tree[data-v-9ce779b4]{flex-direction:column;gap:1px;display:flex}.fs-entry[data-v-9ce779b4]{border-radius:var(--p-border-radius);cursor:pointer;text-align:left;color:var(--p-text-color);background:0 0;border:none;align-items:center;gap:.4rem;width:100%;padding:.3rem .5rem;font-size:.8rem;display:flex}.fs-entry[data-v-9ce779b4]:hover{background:var(--p-content-hover-background)}.fs-entry--active[data-v-9ce779b4]{background:color-mix(in srgb, var(--p-primary-color) 15%, transparent);color:var(--p-primary-color)}.fs-icon[data-v-9ce779b4]{opacity:.6;flex-shrink:0;font-size:.75rem}.fs-dir[data-v-9ce779b4]{opacity:.5;font-size:.7rem}.fs-name[data-v-9ce779b4]{font-weight:500}.fs-empty[data-v-9ce779b4]{color:var(--p-text-muted-color);padding:.5rem;font-size:.8rem;font-style:italic}.fs-content[data-v-9ce779b4]{white-space:pre-wrap;word-break:break-all;background:var(--p-surface-900,#1a1a1a);color:var(--p-surface-100,#f0f0f0);border-radius:var(--p-border-radius);border:1px solid var(--p-content-border-color);flex:1;margin:0;padding:.75rem;font-family:monospace;font-size:.72rem;overflow-y:auto}.agent-page[data-v-09072d16]{max-width:1200px;margin:0 auto;padding:1.5rem}.page-header[data-v-09072d16]{justify-content:space-between;align-items:center;margin-bottom:1.5rem;display:flex}.page-header h1[data-v-09072d16]{margin:0;font-size:1.75rem;font-weight:700}.loading-container[data-v-09072d16],.error-container[data-v-09072d16],.empty-container[data-v-09072d16]{color:var(--p-text-muted-color);flex-direction:column;align-items:center;gap:.75rem;padding:3rem 0;display:flex}.agent-name[data-v-09072d16]{align-items:center;gap:.5rem;font-weight:500;display:flex}.agent-url[data-v-09072d16]{background:var(--p-content-hover-background);border-radius:4px;padding:.15rem .4rem;font-family:Fira Code,Cascadia Code,monospace;font-size:.8rem}.runner-tags[data-v-09072d16]{flex-wrap:wrap;gap:.3rem;display:flex}.action-grid[data-v-09072d16]{grid-template-columns:repeat(2,auto);gap:0;width:fit-content;display:grid}@media (max-width:768px){[data-v-09072d16] .hide-on-mobile{display:none!important}[data-v-09072d16] .p-datatable-column-header-content{white-space:nowrap}.agent-url[data-v-09072d16]{word-break:break-all;white-space:normal}}.text-muted[data-v-09072d16]{color:var(--p-text-muted-color)}.form-group[data-v-09072d16]{margin-bottom:1rem}.form-group label[data-v-09072d16]{margin-bottom:.4rem;font-size:.875rem;font-weight:500;display:block}.form-hint[data-v-09072d16]{color:var(--p-text-muted-color);font-size:.78rem}.test-connection[data-v-09072d16]{align-items:center;gap:.75rem;display:flex}.w-full[data-v-09072d16]{width:100%}.passthrough-description[data-v-09072d16]{color:var(--p-text-muted-color);margin:0 0 1rem;font-size:.85rem;line-height:1.4}.passthrough-list[data-v-09072d16]{flex-direction:column;gap:.25rem;margin-bottom:.75rem;display:flex}.passthrough-item[data-v-09072d16]{background:var(--p-content-hover-background);border-radius:6px;justify-content:space-between;align-items:center;padding:.3rem .5rem;display:flex}.passthrough-item-info[data-v-09072d16]{align-items:center;gap:.4rem;min-width:0;display:flex;overflow:hidden}.passthrough-item code[data-v-09072d16]{flex-shrink:0;font-family:Fira Code,Cascadia Code,monospace;font-size:.85rem}.passthrough-value[data-v-09072d16]{color:var(--p-text-muted-color);text-overflow:ellipsis;white-space:nowrap;font-family:Fira Code,Cascadia Code,monospace;font-size:.8rem;overflow:hidden}.passthrough-undefined[data-v-09072d16]{color:var(--p-orange-500);font-size:.78rem;font-style:italic}.passthrough-unsaved[data-v-09072d16]{color:var(--p-text-muted-color);font-size:.78rem;font-style:italic}.passthrough-empty[data-v-09072d16]{margin-bottom:.75rem;font-size:.85rem}.passthrough-add[data-v-09072d16]{align-items:center;gap:.5rem;display:flex}.passthrough-add-input[data-v-09072d16]{flex:1}.passthrough-error[data-v-09072d16]{color:var(--p-red-500);margin-top:.25rem;font-size:.78rem;display:block}.api-keys-page[data-v-0d4e888e]{max-width:860px;padding:1.5rem}.api-keys-page__header[data-v-0d4e888e]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.api-keys-page__header h1[data-v-0d4e888e]{margin:0;font-size:1.5rem;font-weight:600}.api-keys-page__subtitle[data-v-0d4e888e]{color:var(--p-text-muted-color);flex:1;margin:0;font-size:.875rem}.api-keys-page__empty[data-v-0d4e888e]{color:var(--p-text-muted-color);padding:2rem 0;font-size:.9rem}.api-keys-card[data-v-0d4e888e]{max-width:680px}.api-keys-list[data-v-0d4e888e]{flex-direction:column;gap:.5rem;display:flex}.api-key-card[data-v-0d4e888e]{border:1px solid var(--p-content-border-color);border-radius:var(--p-border-radius);background:var(--p-content-background);padding:.5rem .75rem;position:relative}.api-key-card__body[data-v-0d4e888e]{min-width:0}.api-key-card__name[data-v-0d4e888e]{align-items:center;gap:.5rem;margin-bottom:.2rem;padding-right:5rem;font-weight:500;display:flex}.api-key-card__meta[data-v-0d4e888e]{color:var(--p-text-muted-color);margin-bottom:.4rem;font-size:.8rem}.api-key-card__url-row[data-v-0d4e888e]{align-items:center;gap:.4rem;display:flex}.api-key-card__url[data-v-0d4e888e]{min-width:0;color:var(--p-text-muted-color);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:.75rem;overflow:hidden}.api-key-card__actions[data-v-0d4e888e]{gap:.3rem;display:flex;position:absolute;top:.5rem;right:.5rem}.badge[data-v-0d4e888e]{text-transform:uppercase;border-radius:4px;padding:.1rem .4rem;font-size:.7rem;font-weight:600}.badge--info[data-v-0d4e888e]{background:var(--p-blue-100);color:var(--p-blue-700)}.api-key-form[data-v-0d4e888e]{background:var(--p-surface-card);border:1px solid var(--runeya-border);border-radius:10px;max-width:600px;padding:1.5rem}.api-key-form h2[data-v-0d4e888e]{margin:0 0 1.25rem;font-size:1.1rem}.form-field[data-v-0d4e888e]{margin-bottom:1.25rem}.form-field>label[data-v-0d4e888e]:first-child{margin-bottom:.5rem;font-size:.875rem;font-weight:600;display:block}.form-input[data-v-0d4e888e]{border:1px solid var(--runeya-border);background:var(--p-surface-ground);width:100%;color:var(--p-text-color);box-sizing:border-box;border-radius:6px;padding:.5rem .75rem;font-size:.9rem}.form-input[data-v-0d4e888e]:focus{border-color:var(--p-primary-color);outline:none}.form-select[data-v-0d4e888e]{border:1px solid var(--runeya-border);background:var(--p-surface-ground);width:100%;color:var(--p-text-muted-color);cursor:pointer;border-radius:6px;padding:.45rem .75rem;font-size:.875rem}.form-select--sm[data-v-0d4e888e]{width:auto;padding:.25rem .5rem;font-size:.8rem}.form-hint[data-v-0d4e888e]{color:var(--p-text-muted-color);margin-top:.4rem;font-size:.75rem}.radio-group[data-v-0d4e888e]{flex-direction:column;gap:.4rem;display:flex}.radio-label[data-v-0d4e888e]{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.5rem;font-size:.875rem;display:flex}.svc-list-container[data-v-0d4e888e]{border:1px solid var(--runeya-border);border-radius:8px;margin-bottom:.5rem;overflow:hidden}.svc-list-search[data-v-0d4e888e]{background:var(--p-surface-ground);border-bottom:1px solid var(--runeya-border);align-items:center;gap:.5rem;padding:.4rem .75rem;display:flex}.svc-list-search__icon[data-v-0d4e888e]{color:var(--p-text-muted-color);flex-shrink:0;font-size:.75rem}.svc-list-search__input[data-v-0d4e888e]{color:var(--p-text-color);background:0 0;border:none;outline:none;flex:1;font-size:.85rem}.svc-list-search__input[data-v-0d4e888e]::placeholder{color:var(--p-text-muted-color)}.svc-list-search__clear[data-v-0d4e888e]{cursor:pointer;color:var(--p-text-muted-color);background:0 0;border:none;align-items:center;padding:0;font-size:.75rem;display:flex}.svc-list-search__clear[data-v-0d4e888e]:hover{color:var(--p-text-color)}.svc-list-scroll[data-v-0d4e888e]{max-height:360px;overflow-y:auto}.svc-list-empty[data-v-0d4e888e]{margin:0;padding:.75rem}.svc-perm-row[data-v-0d4e888e]{border-bottom:1px solid var(--runeya-border);overflow:hidden}.svc-perm-row[data-v-0d4e888e]:last-child{border-bottom:none}.svc-perm-row__header[data-v-0d4e888e]{background:var(--p-surface-ground);border-bottom:1px solid var(--runeya-border);cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;padding:.4rem .75rem;display:flex}.svc-perm-row__header[data-v-0d4e888e]:hover{background:var(--runeya-sidebar-hover)}.svc-chevron[data-v-0d4e888e]{color:var(--p-text-muted-color);font-size:.7rem;transition:transform .15s}.svc-perm-summary[data-v-0d4e888e]{color:var(--p-text-muted-color);margin-left:.3rem;font-size:.75rem;font-weight:400}.svc-perm-row__name[data-v-0d4e888e]{align-items:center;gap:.4rem;font-size:.875rem;font-weight:600;display:flex}.svc-perm-row__actions[data-v-0d4e888e]{border-bottom:1px solid var(--runeya-border);flex-wrap:wrap;gap:.35rem;padding:.5rem .75rem;display:flex}.action-chip[data-v-0d4e888e]{border:1px solid var(--runeya-border);background:var(--p-surface-ground);color:var(--p-text-muted-color);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:20px;align-items:center;gap:.3rem;padding:.15rem .5rem;font-size:.78rem;transition:all .12s;display:inline-flex}.action-chip input[type=checkbox][data-v-0d4e888e]{display:none}.action-chip--on[data-v-0d4e888e]{background:var(--p-primary-color);color:var(--p-primary-contrast-color,#fff);border-color:var(--p-primary-color)}.action-chip--sub[data-v-0d4e888e]{opacity:.85;margin-left:.25rem;font-size:.72rem}.action-chip--sub.action-chip--on[data-v-0d4e888e]{background:var(--p-primary-400,var(--p-primary-color))}.svc-perm-row__envs[data-v-0d4e888e]{flex-direction:column;gap:.35rem;padding:.5rem .75rem;display:flex}.env-perm-row[data-v-0d4e888e]{flex-wrap:wrap;align-items:center;gap:.35rem;display:flex}.env-perm-row__name[data-v-0d4e888e]{color:var(--p-text-muted-color);align-items:center;gap:.3rem;min-width:8rem;font-size:.8rem;display:flex}.env-add-row[data-v-0d4e888e]{margin-top:.25rem}.svc-add-row[data-v-0d4e888e]{flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:.5rem;display:flex}.import-modal__body[data-v-0d4e888e]{flex-direction:column;gap:1rem;padding:.25rem 0;display:flex}.import-modal__desc[data-v-0d4e888e]{color:var(--p-text-muted-color);margin:0;font-size:.875rem}.import-section[data-v-0d4e888e]{flex-direction:column;gap:.4rem;display:flex}.import-section__label[data-v-0d4e888e]{color:var(--p-text-muted-color);text-transform:uppercase;letter-spacing:.04em;font-size:.8rem;font-weight:600}.form-actions[data-v-0d4e888e]{justify-content:space-between;align-items:center;gap:.75rem;margin-top:1.5rem;display:flex}.form-actions__right[data-v-0d4e888e]{gap:.75rem;display:flex}.btn--renew[data-v-0d4e888e]{color:var(--p-text-muted-color);font-size:.8rem}.btn--renew[data-v-0d4e888e]:hover:not(:disabled){color:var(--p-text-color)}.api-key-card__skill[data-v-0d4e888e]{margin-top:.6rem}.skill-toggle[data-v-0d4e888e]{color:var(--p-text-muted-color);gap:.35rem}.skill-toggle[data-v-0d4e888e]:hover{color:var(--p-text-color)}.skill-panel[data-v-0d4e888e]{border:1px solid var(--runeya-border);border-radius:6px;margin-top:.5rem;overflow:hidden}.skill-panel__tools[data-v-0d4e888e]{background:var(--p-surface-ground);border-bottom:1px solid var(--runeya-border);flex-wrap:wrap;gap:.35rem;padding:.5rem .75rem;display:flex}.skill-tool-btn[data-v-0d4e888e]{border:1px solid var(--runeya-border);color:var(--p-text-muted-color);cursor:pointer;background:0 0;border-radius:20px;padding:.2rem .6rem;font-size:.72rem;transition:all .12s}.skill-tool-btn[data-v-0d4e888e]:hover{background:var(--runeya-sidebar-hover);color:var(--p-text-color)}.skill-tool-btn--active[data-v-0d4e888e]{background:var(--p-primary-color);color:var(--p-primary-contrast-color,#fff);border-color:var(--p-primary-color)}.skill-panel__header[data-v-0d4e888e]{background:var(--p-surface-ground);border-bottom:1px solid var(--runeya-border);justify-content:space-between;align-items:center;padding:.4rem .75rem;display:flex}.skill-panel__btns[data-v-0d4e888e]{gap:.35rem;display:flex}.skill-panel__hint[data-v-0d4e888e]{color:var(--p-text-muted-color);font-size:.75rem}.skill-panel__code[data-v-0d4e888e]{white-space:pre-wrap;word-break:break-all;background:var(--p-surface-card);color:var(--p-text-color);max-height:260px;margin:0;padding:.75rem;font-size:.72rem;line-height:1.5;overflow-y:auto}.renew-modal__body[data-v-0d4e888e]{flex-direction:column;gap:.5rem;padding:.25rem 0;display:flex}.renew-modal__title[data-v-0d4e888e]{align-items:center;gap:.5rem;font-weight:600;display:flex}.renew-modal__title-icon[data-v-0d4e888e]{color:var(--p-orange-500,#f97316)}.renew-modal__body p[data-v-0d4e888e]{margin:0;font-size:.9rem;line-height:1.5}.btn[data-v-0d4e888e]{cursor:pointer;border:none;border-radius:6px;align-items:center;gap:.4rem;padding:.45rem .9rem;font-size:.875rem;font-weight:500;transition:all .15s;display:inline-flex}.btn[data-v-0d4e888e]:disabled{opacity:.5;cursor:not-allowed}.btn--primary[data-v-0d4e888e]{background:var(--p-primary-color);color:var(--p-primary-contrast-color,#fff)}.btn--primary[data-v-0d4e888e]:hover:not(:disabled){filter:brightness(1.1)}.btn--ghost[data-v-0d4e888e]{color:var(--p-text-color);border:1px solid var(--runeya-border);background:0 0}.btn--ghost[data-v-0d4e888e]:hover:not(:disabled){background:var(--runeya-sidebar-hover)}.btn--danger[data-v-0d4e888e]{color:var(--p-red-500,#ef4444);border:1px solid var(--runeya-border);background:0 0}.btn--danger[data-v-0d4e888e]:hover:not(:disabled){background:var(--p-red-50,#fef2f2)}.btn--sm[data-v-0d4e888e]{padding:.3rem .6rem;font-size:.8rem}.btn--xs[data-v-0d4e888e]{padding:.2rem .4rem;font-size:.75rem}.settings-card[data-v-2f65752a]{max-width:680px}.cloud-banner[data-v-2f65752a]{border:1px solid var(--p-primary-color);background:color-mix(in srgb, var(--p-primary-color) 8%, transparent);width:100%;max-width:680px;color:var(--p-text-color);cursor:pointer;text-align:left;font:inherit;border-radius:10px;align-items:center;gap:1rem;margin-bottom:1.25rem;padding:1rem 1.25rem;transition:background .15s,box-shadow .15s;display:flex}.cloud-banner[data-v-2f65752a]:hover{background:color-mix(in srgb, var(--p-primary-color) 14%, transparent);box-shadow:0 2px 10px color-mix(in srgb, var(--p-primary-color) 20%, transparent)}.cloud-banner__icon[data-v-2f65752a]{color:var(--p-primary-color);flex-shrink:0;font-size:1.75rem}.cloud-banner__text[data-v-2f65752a]{flex-direction:column;flex:1;gap:.15rem;min-width:0;display:flex}.cloud-banner__title[data-v-2f65752a]{font-size:1rem}.cloud-banner__desc[data-v-2f65752a]{color:var(--p-text-muted-color);font-size:.85rem}.cloud-banner__action[data-v-2f65752a]{color:var(--p-primary-color);white-space:nowrap;flex-shrink:0;align-items:center;gap:.4rem;font-weight:600;display:inline-flex}.setting-row[data-v-2f65752a]{border-bottom:1px solid var(--p-content-border-color);align-items:flex-start;gap:1rem;padding:.75rem 0;display:flex}.setting-row[data-v-2f65752a]:last-child{border-bottom:none}.setting-label[data-v-2f65752a]{width:140px;color:var(--p-text-muted-color);flex-shrink:0;padding-top:.25rem;font-size:.9rem;font-weight:600}.setting-value[data-v-2f65752a]{flex:1;align-items:center;gap:.5rem;display:flex}.path-value[data-v-2f65752a]{word-break:break-all;min-width:0;color:var(--p-text-color);flex:1;font-size:.85rem}.setting-input[data-v-2f65752a]{width:100%;max-width:400px}.setting-actions[data-v-2f65752a]{padding-top:1rem}.settings-card[data-v-409957ad]{max-width:680px}.notification-groups[data-v-409957ad]{flex-direction:column;gap:1rem;display:flex}.notification-group[data-v-409957ad]{border:1px solid var(--p-content-border-color);border-radius:var(--p-border-radius);background:color-mix(in srgb, var(--p-content-hover-background) 35%, transparent);padding:.9rem 1rem}.notification-group__header[data-v-409957ad]{justify-content:space-between;align-items:flex-start;gap:.75rem;margin-bottom:.35rem;display:flex}.notification-group__collapse-button[data-v-409957ad]{appearance:none;text-align:left;cursor:pointer;color:inherit;background:0 0;border:0;flex:1;margin:0;padding:0}.notification-group__title-wrap[data-v-409957ad]{align-items:center;gap:.45rem;display:flex}.notification-group__icon[data-v-409957ad]{color:var(--p-text-muted-color);font-size:.9rem}.notification-group__title[data-v-409957ad]{margin:0;font-size:.92rem;font-weight:700}.notification-group__chevron[data-v-409957ad]{color:var(--p-text-muted-color);margin-left:auto;font-size:.8rem}.notification-group__desc[data-v-409957ad]{color:var(--p-text-muted-color);margin:.2rem 0 0;font-size:.78rem}.notification-group__actions[data-v-409957ad]{flex-shrink:0}.notification-item[data-v-409957ad]{border-bottom:1px solid var(--p-content-border-color)}.notification-item[data-v-409957ad]:last-child,.notification-item .setting-row[data-v-409957ad]{border-bottom:none}.setting-row[data-v-409957ad]{border-bottom:1px solid var(--p-content-border-color);align-items:flex-start;gap:1rem;padding:.75rem 0;display:flex}.setting-row--toggle[data-v-409957ad]{align-items:center}.setting-label[data-v-409957ad]{color:var(--p-text-muted-color);font-size:.9rem;font-weight:600}.setting-label-group[data-v-409957ad]{flex:1;min-width:0}.setting-hint[data-v-409957ad]{color:var(--p-text-muted-color);margin-top:.2rem;font-size:.78rem;display:block}.notification-item__right[data-v-409957ad]{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.notification-item__services-toggle[data-v-409957ad]{appearance:none;border:1px solid var(--p-content-border-color);border-radius:var(--p-border-radius);cursor:pointer;color:var(--p-text-muted-color);background:0 0;align-items:center;gap:.3rem;padding:.2rem .45rem;font-size:.78rem;transition:background .15s,color .15s;display:flex}.notification-item__services-toggle[data-v-409957ad]:hover{background:var(--p-content-hover-background);color:var(--p-text-color)}.notification-item__services[data-v-409957ad]{border-top:1px dashed var(--p-content-border-color);flex-direction:column;gap:.4rem;padding:.5rem 0 .75rem 1rem;display:flex}.notification-item__services-empty[data-v-409957ad]{color:var(--p-text-muted-color);margin:0;font-size:.8rem}.notification-item__service-row[data-v-409957ad]{justify-content:space-between;align-items:center;padding:.25rem 0;display:flex}.notification-item__service-name[data-v-409957ad]{color:var(--p-text-color);font-size:.85rem}.security-cards[data-v-60a35acd]{flex-direction:column;gap:1rem;display:flex}.settings-card[data-v-60a35acd]{max-width:680px}.card-title[data-v-60a35acd]{align-items:center;gap:.5rem;display:flex}.card-desc[data-v-60a35acd]{color:var(--p-text-muted-color);margin:0 0 1rem;font-size:.85rem}.setting-row[data-v-60a35acd]{align-items:flex-start;gap:1rem;padding:.75rem 0;display:flex}.setting-label[data-v-60a35acd]{width:140px;color:var(--p-text-muted-color);flex-shrink:0;padding-top:.25rem;font-size:.9rem;font-weight:600}.org-block[data-v-60a35acd]{flex-direction:column;display:flex}.org-adopt[data-v-60a35acd]{flex-direction:column;gap:.5rem;margin-bottom:1rem;display:flex}.org-adopt__row[data-v-60a35acd]{align-items:center;gap:.5rem;max-width:560px;display:flex}.org-unreadable[data-v-60a35acd]{margin:0 0 .75rem;font-size:.8rem}.org-label[data-v-60a35acd]{flex-direction:column;gap:.15rem;display:flex}.org-id[data-v-60a35acd]{word-break:break-all;font-family:monospace;font-size:.8rem}.org-source[data-v-60a35acd]{font-size:.75rem;font-weight:400}.org-source--own[data-v-60a35acd]{color:var(--p-primary-color)}.org-source--locked[data-v-60a35acd]{color:var(--p-red-500)}.encryption-key-field[data-v-60a35acd]{flex:1;align-items:center;gap:.25rem;max-width:460px;display:flex}.encryption-key-input[data-v-60a35acd]{flex:1;font-family:monospace;font-size:.85rem}.settings-card[data-v-3e46f822]{max-width:680px}.card-title[data-v-3e46f822]{align-items:center;gap:.5rem;display:flex}.card-desc[data-v-3e46f822]{color:var(--p-text-muted-color);margin:0 0 1rem;font-size:.85rem}.setting-row[data-v-3e46f822]{align-items:flex-start;gap:1rem;padding:.75rem 0;display:flex}.setting-label[data-v-3e46f822]{width:140px;color:var(--p-text-muted-color);flex-shrink:0;padding-top:.25rem;font-size:.9rem;font-weight:600}.setting-input[data-v-3e46f822]{width:100%;max-width:400px}.editor-warning[data-v-3e46f822]{padding:.5rem 0}.editor-detected[data-v-3e46f822]{padding-top:.5rem}.editor-option[data-v-3e46f822]{align-items:center;gap:.5rem;display:flex}.hint[data-v-3e46f822]{color:var(--p-text-muted-color);font-size:.78rem}.parsers-scope[data-v-2f17c78c]{color:var(--p-text-muted-color);align-items:center;gap:.5rem;margin:0 0 1rem;font-size:.85rem;display:flex}[data-v-2f17c78c] .p-dialog-content{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.settings-card[data-v-2f17c78c]{max-width:680px}.card-desc[data-v-2f17c78c]{color:var(--p-text-muted-color);margin:0 0 1rem;font-size:.85rem}.parsers-loading[data-v-2f17c78c]{color:var(--p-text-muted-color);align-items:center;gap:.5rem;padding:1rem;font-size:.875rem;display:flex}.parsers-list[data-v-2f17c78c]{flex-direction:column;gap:.375rem;display:flex}.parsers-row[data-v-2f17c78c]{border:1px solid var(--p-content-border-color);border-radius:var(--p-border-radius);background:var(--p-content-background);align-items:center;gap:.75rem;padding:.5rem .75rem;display:flex}.parsers-name[data-v-2f17c78c]{flex-shrink:0;font-size:.875rem;font-weight:600}.parsers-desc-inline[data-v-2f17c78c]{color:var(--p-text-muted-color);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:.8rem;overflow:hidden}.parsers-icon--on[data-v-2f17c78c]{color:var(--p-green-500);justify-content:center;align-items:center;width:2rem;height:2rem;display:flex}.parsers-icon--off[data-v-2f17c78c]{color:var(--p-red-500);justify-content:center;align-items:center;width:2rem;height:2rem;display:flex}.parsers-actions[data-v-2f17c78c]{align-items:center;gap:.25rem;margin-left:auto;display:flex}.parsers-empty[data-v-2f17c78c]{text-align:center;color:var(--p-text-muted-color);padding:1.5rem;font-size:.875rem}.parser-dialog__layout[data-v-2f17c78c]{grid-template-columns:1fr 1fr;align-items:stretch;gap:1.25rem;height:100%;display:grid;overflow:hidden}@media (max-width:768px){.parser-dialog__layout[data-v-2f17c78c]{grid-template-columns:1fr;height:auto;overflow-y:auto}.dialog-form[data-v-2f17c78c]{height:auto;overflow:visible}.dialog-form__field--code[data-v-2f17c78c]{min-height:250px}.parser-sim[data-v-2f17c78c]{min-height:300px}.parser-sim__body[data-v-2f17c78c]{min-height:0}.parser-sim__col--output[data-v-2f17c78c]{min-height:150px}}.dialog-form[data-v-2f17c78c]{flex-direction:column;gap:1rem;height:100%;display:flex;overflow:auto}.dialog-form__field--code[data-v-2f17c78c]{flex:1;min-height:0}.dialog-form__field[data-v-2f17c78c]{flex-direction:column;gap:.375rem;display:flex}.dialog-form__label[data-v-2f17c78c]{color:var(--p-text-muted-color);align-items:center;gap:.5rem;font-size:.8125rem;font-weight:600;display:flex}.dialog-form__input[data-v-2f17c78c]{width:100%}.dialog-form__hint[data-v-2f17c78c]{color:var(--p-text-muted-color);font-size:.78rem}.dialog-form__hint code[data-v-2f17c78c]{background:var(--p-content-hover-background);border-radius:3px;padding:.125rem .375rem;font-family:Monaco,Menlo,monospace;font-size:.75rem}.dialog-form__switch[data-v-2f17c78c]{align-items:center;gap:.5rem;display:flex}.dialog-form__switch-label[data-v-2f17c78c]{color:var(--p-text-muted-color);font-size:.85rem}.dialog-form__templates[data-v-2f17c78c]{flex-direction:column;gap:.5rem;display:flex}.dialog-form__templates-label[data-v-2f17c78c]{color:var(--p-text-muted-color);text-transform:uppercase;letter-spacing:.04em;font-size:.75rem;font-weight:600}.dialog-form__templates-select[data-v-2f17c78c]{width:100%}.dialog-form__ai-btn[data-v-2f17c78c]{margin-left:auto}.tpl-option[data-v-2f17c78c]{align-items:center;gap:.75rem;display:flex}.tpl-option__icon[data-v-2f17c78c]{color:var(--p-primary-color);flex-shrink:0;font-size:.9rem}.tpl-option__body[data-v-2f17c78c]{flex-direction:column;gap:.1rem;display:flex}.tpl-option__name[data-v-2f17c78c]{color:var(--p-text-color);font-size:.8125rem;font-weight:600}.tpl-option__desc[data-v-2f17c78c]{color:var(--p-text-muted-color);font-size:.73rem}.parser-sim[data-v-2f17c78c]{border:1px solid var(--p-content-border-color);border-radius:var(--p-border-radius);flex-direction:column;height:100%;display:flex;overflow:hidden}.parser-sim__header[data-v-2f17c78c]{background:var(--p-surface-50,#00000008);border-bottom:1px solid var(--p-content-border-color);justify-content:space-between;align-items:center;padding:.5rem .75rem;font-size:.8125rem;display:flex}.parser-sim__title[data-v-2f17c78c]{align-items:center;gap:.4rem;font-weight:600;display:flex}.parser-sim__status[data-v-2f17c78c]{color:var(--p-text-muted-color);align-items:center;gap:.3rem;font-size:.75rem;display:flex}.parser-sim__body[data-v-2f17c78c]{flex-direction:column;flex:1;gap:0;min-height:0;display:flex}.parser-sim__col[data-v-2f17c78c]{flex-direction:column;gap:.25rem;padding:.6rem .75rem;display:flex}.parser-sim__col[data-v-2f17c78c]:first-child{border-bottom:1px solid var(--p-content-border-color)}.parser-sim__col-label[data-v-2f17c78c]{color:var(--p-text-muted-color);text-transform:uppercase;letter-spacing:.04em;margin-bottom:.25rem;font-size:.75rem;font-weight:600}.parser-sim__textarea[data-v-2f17c78c]{resize:vertical;width:100%;min-height:160px;font-family:var(--p-font-family-mono,monospace);border:1px solid var(--p-inputtext-border-color,var(--p-content-border-color));border-radius:var(--p-border-radius);background:var(--p-inputtext-background,var(--p-content-background));color:var(--p-inputtext-color,var(--p-text-color));outline:none;padding:.5rem;font-size:.8rem;line-height:1.5}.parser-sim__textarea[data-v-2f17c78c]:focus{border-color:var(--p-primary-color)}.parser-sim__error[data-v-2f17c78c]{color:var(--p-red-500,#ef4444);align-items:flex-start;gap:.4rem;padding:.5rem;font-size:.8rem;display:flex}.parser-sim__empty[data-v-2f17c78c]{color:var(--p-text-muted-color);padding:.5rem;font-size:.8rem;font-style:italic}.parser-sim__col--output[data-v-2f17c78c]{flex:1;min-height:0;overflow:hidden}.parser-sim__viewer[data-v-2f17c78c]{flex:1;height:100%;min-height:0}.parser-ai-prompt[data-v-2f17c78c]{flex-direction:column;gap:.75rem;display:flex}.parser-ai-prompt__desc[data-v-2f17c78c]{color:var(--p-text-muted-color);margin:0;font-size:.9rem}.parser-ai-prompt__input[data-v-2f17c78c]{resize:vertical;width:100%}.companion-settings[data-v-f53a328d]{border-bottom:1px solid var(--p-surface-200);margin-bottom:1.25rem;padding-bottom:1.25rem}.companion-settings__title[data-v-f53a328d]{align-items:center;gap:.4rem;margin:0 0 .25rem;font-size:.95rem;display:flex}.companion-settings__lead[data-v-f53a328d]{color:var(--p-text-muted-color);margin:0 0 .75rem;font-size:.8rem}.companion-settings__row[data-v-f53a328d]{align-items:center;gap:.75rem;padding:.4rem 0;display:flex}.companion-settings__row--stack[data-v-f53a328d]{flex-wrap:wrap;justify-content:space-between}.companion-settings__label[data-v-f53a328d]{font-size:.85rem}.companion-settings__hint[data-v-f53a328d]{color:var(--p-text-muted-color);font-size:.75rem}.companion-settings__actions[data-v-f53a328d]{gap:.25rem;display:flex}.companion-settings__editor[data-v-f53a328d]{margin-top:.5rem}.companion-settings__textarea[data-v-f53a328d]{width:100%;font-family:var(--font-mono,ui-monospace, monospace);font-size:.75rem}.providers-scope[data-v-f53a328d]{color:var(--p-text-muted-color);align-items:center;gap:.4rem;margin:0 0 .9rem;font-size:.8rem;display:flex}.settings-card[data-v-f53a328d]{max-width:680px}.providers-loading[data-v-f53a328d],.providers-empty[data-v-f53a328d]{color:var(--p-text-muted-color);align-items:center;gap:.5rem;padding:1rem;font-size:.875rem;display:flex}.ai-providers-list[data-v-f53a328d]{flex-direction:column;gap:.5rem;display:flex}.ai-provider-row[data-v-f53a328d]{border:1px solid var(--p-content-border-color);border-radius:var(--p-border-radius);background:var(--p-content-background);justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1rem;transition:border-color .15s;display:flex}.ai-provider-row--active[data-v-f53a328d]{border-color:var(--p-primary-color);background:color-mix(in srgb, var(--p-primary-color) 5%, var(--p-content-background))}.ai-provider-info[data-v-f53a328d]{flex-wrap:wrap;align-items:center;gap:.75rem;min-width:0;display:flex}.ai-provider-name[data-v-f53a328d]{font-size:.875rem;font-weight:600}.ai-provider-type[data-v-f53a328d]{color:var(--p-text-muted-color);font-size:.8125rem}.ai-provider-model[data-v-f53a328d]{background:var(--p-content-hover-background);color:var(--p-text-muted-color);border-radius:4px;padding:.15rem .4rem;font-size:.75rem}.ai-provider-key[data-v-f53a328d]{background:var(--p-content-hover-background);letter-spacing:.05em;border-radius:4px;padding:.15rem .4rem;font-size:.75rem}.ai-provider-actions[data-v-f53a328d]{flex-shrink:0;align-items:center;gap:.25rem;display:flex}.ai-provider-badge[data-v-f53a328d]{color:var(--p-primary-color);align-items:center;gap:.35rem;padding:.25rem .6rem;font-size:.8rem;font-weight:600;display:inline-flex}.dialog-form[data-v-f53a328d]{flex-direction:column;gap:1rem;display:flex}.dialog-form__field[data-v-f53a328d]{flex-direction:column;gap:.375rem;display:flex}.dialog-form__label[data-v-f53a328d]{color:var(--p-text-muted-color);align-items:center;gap:.5rem;font-size:.8125rem;font-weight:600;display:flex}.dialog-form__input[data-v-f53a328d]{width:100%}.ai-provider-info-block[data-v-f53a328d]{background:color-mix(in srgb, var(--p-primary-color) 6%, var(--p-content-background));border:1px solid color-mix(in srgb, var(--p-primary-color) 25%, transparent);border-radius:var(--p-border-radius);flex-direction:column;gap:.5rem;padding:.75rem 1rem;display:flex}.ai-provider-info-block__text[data-v-f53a328d]{color:var(--p-text-color);margin:0;font-size:.875rem;line-height:1.5}.ai-provider-info-block__link[data-v-f53a328d]{color:var(--p-primary-color);align-items:center;gap:.35rem;font-size:.8125rem;font-weight:500;text-decoration:none;display:inline-flex}.ai-provider-info-block__link[data-v-f53a328d]:hover{text-decoration:underline}.ai-provider-info-block__models[data-v-f53a328d]{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.ai-provider-info-block__models-label[data-v-f53a328d]{color:var(--p-text-muted-color);font-size:.75rem;font-weight:500}.ai-provider-info-block__model-tag[data-v-f53a328d]{background:var(--p-content-hover-background);border:1px solid var(--p-content-border-color);color:var(--p-text-muted-color);border-radius:4px;padding:.1rem .4rem;font-size:.7rem}.settings-card[data-v-3faeb447]{max-width:680px}.scenario-list[data-v-3faeb447]{flex-direction:column;gap:.5rem;display:flex}.scenario-row[data-v-3faeb447]{border:1px solid var(--p-content-border-color);border-radius:var(--p-border-radius);background:var(--p-content-background);justify-content:space-between;align-items:center;gap:.75rem;padding:.5rem .75rem;display:flex}.scenario-info[data-v-3faeb447]{align-items:center;gap:.75rem;display:flex}.scenario-icon[data-v-3faeb447]{opacity:.7;font-size:1.1rem}.scenario-desc[data-v-3faeb447]{opacity:.6;margin-left:.5rem;font-size:.85rem}.scenario-meta[data-v-3faeb447]{opacity:.5;margin-top:.25rem;font-size:.8rem}.scenario-actions[data-v-3faeb447]{flex-shrink:0;gap:.25rem;display:flex}.scenario-empty[data-v-3faeb447]{text-align:center;opacity:.5;padding:1rem 0}.state[data-v-dcb0ce3b]{color:var(--p-text-muted-color);align-items:center;gap:.75rem;font-size:.88rem;display:flex}.settings-card[data-v-73b445c8]{max-width:680px}.setting-row[data-v-73b445c8]{border-bottom:1px solid var(--p-content-border-color);align-items:flex-start;gap:1rem;padding:.75rem 0;display:flex}.setting-row[data-v-73b445c8]:last-child{border-bottom:none}.setting-label[data-v-73b445c8]{width:140px;color:var(--p-text-muted-color);flex-shrink:0;padding-top:.25rem;font-size:.9rem;font-weight:600}.setting-value[data-v-73b445c8]{flex:1;align-items:center;gap:.5rem;display:flex}.card-title-row[data-v-73b445c8]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.diagnostics[data-v-d1059365]{flex-direction:column;gap:2rem;display:flex}.block__header[data-v-d1059365]{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.85rem;display:flex}.block__title[data-v-d1059365]{margin:0;font-size:1rem;font-weight:600}.block__desc[data-v-d1059365]{color:var(--p-text-muted-color);margin:.2rem 0 0;font-size:.85rem}.empty[data-v-d1059365]{text-align:center;color:var(--p-text-muted-color);margin:0;padding:1.2rem;font-size:.875rem}.instances[data-v-d1059365]{border:1px solid var(--p-content-border-color);border-radius:8px;margin:0;padding:0;list-style:none;overflow:hidden}.instance[data-v-d1059365]{border-bottom:1px solid var(--p-content-border-color);grid-template-columns:1fr auto;grid-template-areas:"main action""meta action";align-items:center;gap:.15rem 1rem;padding:.7rem .9rem;display:grid}.instance[data-v-d1059365]:last-child{border-bottom:0}.instance__main[data-v-d1059365]{grid-area:main;align-items:center;gap:.5rem;font-size:.9rem;font-weight:600;display:flex}.instance__port[data-v-d1059365]{align-items:center;gap:.4rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;display:flex}.instance__meta[data-v-d1059365]{color:var(--p-text-muted-color);flex-wrap:wrap;grid-area:meta;align-items:center;gap:.4rem;font-size:.78rem;display:flex}.instance__cwd[data-v-d1059365]{text-overflow:ellipsis;white-space:nowrap;max-width:24rem;overflow:hidden}.instance[data-v-d1059365] .p-button{grid-area:action}.instance__actions[data-v-d1059365]{grid-area:action;align-items:center;gap:.25rem;display:flex}.instance__actions[data-v-d1059365] .p-button{grid-area:auto}.tag[data-v-d1059365]{border-radius:999px;padding:.1rem .45rem;font-size:.7rem;font-weight:600}.tag--current[data-v-d1059365]{background:color-mix(in srgb, var(--p-primary-color) 16%, transparent);color:var(--p-primary-color)}.toolbar[data-v-d1059365]{flex-wrap:wrap;align-items:center;gap:.6rem;margin-bottom:.6rem;display:flex}.toolbar__source[data-v-d1059365]{min-width:9rem}.toolbar__search[data-v-d1059365]{flex:10rem;min-width:10rem}.toolbar__toggle[data-v-d1059365]{align-items:center;gap:.45rem;font-size:.85rem;display:flex}.toolbar__spacer[data-v-d1059365]{flex:auto}.toolbar__actions[data-v-d1059365]{flex:none;align-items:center;gap:.25rem;display:flex}.log[data-v-d1059365]{background:var(--p-content-background);border:1px solid var(--p-content-border-color);border-radius:8px;height:26rem;padding:.5rem 0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.78rem;line-height:1.55;overflow:auto}.log-line[data-v-d1059365]{white-space:pre-wrap;word-break:break-word;gap:.6rem;padding:.05rem .8rem;display:flex}.log-line--warn[data-v-d1059365]{background:color-mix(in srgb, var(--p-orange-500,#f59e0b) 9%, transparent)}.log-line--error[data-v-d1059365]{background:color-mix(in srgb, var(--p-red-500,#ef4444) 11%, transparent)}.log-line__time[data-v-d1059365]{color:var(--p-text-muted-color);opacity:.75;flex:none}.log-line__source[data-v-d1059365]{text-transform:uppercase;letter-spacing:.03em;flex:0 0 3.4rem;align-self:center;font-size:.68rem}.log-line__source--server[data-v-d1059365]{color:var(--p-primary-color)}.log-line__source--agent[data-v-d1059365]{color:var(--p-text-muted-color)}.log-line__text[data-v-d1059365]{flex:auto}.follow-hint[data-v-d1059365]{text-align:center;margin:.4rem 0 0}.api-docs[data-v-5c36e62a]{flex-direction:column;height:100%;display:flex;overflow:hidden}.api-docs__content[data-v-5c36e62a]{flex:1;min-height:0;overflow-y:auto}.api-docs__toolbar[data-v-5c36e62a]{background:var(--p-surface-card);border-bottom:1px solid var(--p-surface-border);flex-shrink:0;align-items:center;gap:.75rem;padding:.75rem 1rem;display:flex}.api-docs__toolbar-label[data-v-5c36e62a]{color:var(--p-text-muted-color);white-space:nowrap;font-size:.875rem;font-weight:500}.settings-page[data-v-f0a75b88]{flex-direction:column;height:100%;display:flex}.settings-layout[data-v-f0a75b88]{flex:1;gap:0;min-height:0;display:flex}.settings-nav[data-v-f0a75b88]{border-right:1px solid var(--p-content-border-color);flex-direction:column;flex-shrink:0;gap:.25rem;width:200px;padding:1.25rem 0;display:flex}.settings-nav__title[data-v-f0a75b88]{letter-spacing:.08em;text-transform:uppercase;color:var(--p-text-muted-color);padding:0 1rem .75rem;font-size:.7rem;font-weight:700}.settings-nav__list[data-v-f0a75b88]{flex-direction:column;gap:.125rem;margin:0;padding:0;list-style:none;display:flex}.settings-nav__item[data-v-f0a75b88]{cursor:pointer;color:var(--p-text-muted-color);-webkit-user-select:none;user-select:none;border-radius:6px;align-items:center;gap:.625rem;margin:0 .5rem;padding:.5rem 1rem;font-size:.875rem;transition:background .15s,color .15s;display:flex}.settings-nav__item[data-v-f0a75b88]:hover{background:var(--p-content-hover-background);color:var(--p-text-color)}.settings-nav__item--active[data-v-f0a75b88]{background:var(--p-primary-50,color-mix(in srgb, var(--p-primary-color) 10%, transparent));color:var(--p-primary-color);font-weight:600}.settings-nav__icon[data-v-f0a75b88]{flex-shrink:0;font-size:.875rem}.settings-content[data-v-f0a75b88]{flex:1;min-width:0;padding:1.5rem 2rem;overflow-y:auto}.settings-content--fullpage[data-v-f0a75b88]{flex-direction:column;min-height:0;padding:0;display:flex;overflow:hidden}.settings-content--fullpage[data-v-f0a75b88] .api-docs{flex:1;min-height:0}@media (max-width:640px){.settings-layout[data-v-f0a75b88]{flex-direction:column}.settings-nav[data-v-f0a75b88]{border-right:none;border-bottom:1px solid var(--p-content-border-color);flex-direction:row;align-items:center;width:100%;padding:.5rem 0;position:relative}.settings-nav__title[data-v-f0a75b88]{display:none}.settings-nav__list[data-v-f0a75b88]{scrollbar-width:none;flex-direction:row;flex:1;gap:0;padding:0 .25rem;overflow-x:auto}.settings-nav__list[data-v-f0a75b88]::-webkit-scrollbar{display:none}.settings-nav__item[data-v-f0a75b88]{white-space:nowrap;border-radius:6px;flex-direction:column;flex-shrink:0;gap:.25rem;margin:0;padding:.4rem .75rem;font-size:.7rem}.settings-nav__icon[data-v-f0a75b88]{font-size:1rem}.settings-nav__chevron[data-v-f0a75b88]{cursor:pointer;width:2rem;height:2rem;color:var(--p-text-muted-color);background:0 0;border:none;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;transition:background .15s,color .15s;display:flex}.settings-nav__chevron[data-v-f0a75b88]:hover{background:var(--p-content-hover-background);color:var(--p-text-color)}.settings-content[data-v-f0a75b88]{padding:1rem}}@media (min-width:641px){.settings-nav__chevron[data-v-f0a75b88]{display:none}}.section-header[data-v-f0a75b88]{margin-bottom:1.5rem}.section-header--has-actions[data-v-f0a75b88]{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.section-header__text[data-v-f0a75b88]{flex:1;min-width:0}.section-header__actions[data-v-f0a75b88]{flex-shrink:0;align-self:center}.section-title[data-v-f0a75b88]{margin:0 0 .25rem;font-size:1.25rem;font-weight:700}.section-desc[data-v-f0a75b88]{color:var(--p-text-muted-color);margin:0;font-size:.875rem}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{Aa as e,Cn as t,Di as n,Gn as r,Ji as i,Li as ee,Mn as a,On as o,Sn as s,Ti as c,Wi as te,Wn as l,_i as u,bi as d,bn as f,c as p,da as m,di as h,er as g,gi as _,gn as v,l as y,mn as b,pi as x,s as S,sn as C,va as w,vi as T,wi as E,wn as ne,yi as D,za as O}from"./index-
|
|
1
|
+
import{Aa as e,Cn as t,Di as n,Gn as r,Ji as i,Li as ee,Mn as a,On as o,Sn as s,Ti as c,Wi as te,Wn as l,_i as u,bi as d,bn as f,c as p,da as m,di as h,er as g,gi as _,gn as v,l as y,mn as b,pi as x,s as S,sn as C,va as w,vi as T,wi as E,wn as ne,yi as D,za as O}from"./index-BPOeXMH7.js";import{t as k}from"./password-CrFWhx7M.js";import{t as A}from"./card-BAlWlIgX.js";import{t as j}from"./VersionBadge-B5SmMtZS.js";var M={class:`unlock-container`},N={class:`unlock-header`},P={class:`unlock-title`,"data-testid":`unlock-title`},F={class:`unlock-subtitle`},I={class:`field`},L={for:`masterPassword`},R={key:0,class:`field`},z={for:`encryptionKey`},B={class:`field-help`},V=o(n({__name:`UnlockPage`,setup(n){let o=r(),V=l(),{t:H}=g(),U=p(),W=y(),G=e(``),K=e(``),q=e(``),J=e(!1),Y=e(null),X=e(null);function Z(){ee(()=>{(X.value?.$el?.querySelector(`input`))?.focus()})}let Q=_(()=>Y.value?.state===`setup`);te(async()=>{Z();try{Y.value=await f(),Y.value.state===`unlocked`&&await $()}catch{q.value=H(`unlockPage.serverUnreachable`)}});async function re(){q.value=``,J.value=!0;try{let e;if(Y.value?.state===`setup`){let n=Y.value.hasVerifyFile&&!Y.value.isLegacyMigration&&K.value||void 0;e=await t(G.value,n)}else e=await ne(G.value);s(e),await S({loadPreferences:()=>W.loadPreferences(),initTrpcWs:v,startStatusStream:()=>U.startStatusStream()}),await $()}catch(e){q.value=e instanceof Error?e.message:H(`unlockPage.unknownError`),Z()}finally{J.value=!1}}async function $(){try{if((await f()).legacyVault){await o.push({name:`migrate-vault`});return}}catch{}let e=V.query.redirect;e&&e.startsWith(`/`)?await o.push(e):await o.push({name:`launch-project`})}return(e,t)=>(i(),d(`div`,M,[c(O(A),{class:`unlock-card`},{header:m(()=>[u(`div`,N,[u(`h1`,P,w(Q.value?O(H)(`unlockPage.titleSetup`):O(H)(`unlockPage.titleLocked`)),1),u(`p`,F,[Q.value&&Y.value?.isLegacyMigration?(i(),d(x,{key:0},[E(w(O(H)(`unlockPage.subtitleLegacyMigration`)),1)],64)):Q.value&&Y.value?.hasVerifyFile?(i(),d(x,{key:1},[E(w(O(H)(`unlockPage.subtitleHasVerifyFile`)),1)],64)):Q.value?(i(),d(x,{key:2},[E(w(O(H)(`unlockPage.subtitleSetup`)),1)],64)):(i(),d(x,{key:3},[E(w(O(H)(`unlockPage.subtitleUnlock`)),1)],64))])])]),content:m(()=>[u(`form`,{onSubmit:h(re,[`prevent`]),class:`unlock-form`},[u(`div`,I,[u(`label`,L,w(O(H)(`unlockPage.masterPasswordLabel`)),1),c(O(k),{ref_key:`passwordRef`,ref:X,id:`masterPassword`,"data-testid":`master-password-input`,modelValue:G.value,"onUpdate:modelValue":t[0]||=e=>G.value=e,feedback:Q.value,toggleMask:``,fluid:``,disabled:J.value,autocomplete:Q.value?`new-password`:`current-password`,placeholder:O(H)(`unlockPage.masterPasswordPlaceholder`)},null,8,[`modelValue`,`feedback`,`disabled`,`autocomplete`,`placeholder`])]),Q.value&&Y.value?.hasVerifyFile&&!Y.value?.isLegacyMigration?(i(),d(`div`,R,[u(`label`,z,w(O(H)(`unlockPage.encryptionKeyLabel`)),1),c(O(C),{id:`encryptionKey`,"data-testid":`encryption-key-input`,modelValue:K.value,"onUpdate:modelValue":t[1]||=e=>K.value=e,fluid:``,disabled:J.value,placeholder:O(H)(`unlockPage.encryptionKeyPlaceholder`),autocomplete:`off`},null,8,[`modelValue`,`disabled`,`placeholder`]),u(`small`,B,w(O(H)(`unlockPage.encryptionKeyHelp`)),1)])):D(``,!0),q.value?(i(),T(O(b),{key:1,severity:`error`,closable:!1,"data-testid":`unlock-error`},{default:m(()=>[E(w(q.value),1)]),_:1})):D(``,!0),Q.value?(i(),T(O(b),{key:2,severity:`info`,closable:!1,class:`machine-warning`},{default:m(()=>[E(w(O(H)(`unlockPage.machineWarning`)),1)]),_:1})):D(``,!0),c(O(a),{type:`submit`,"data-testid":`unlock-submit-btn`,label:J.value?O(H)(`unlockPage.pleaseWait`):Q.value?O(H)(`unlockPage.configure`):O(H)(`unlockPage.unlock`),disabled:J.value||!G.value,loading:J.value,fluid:``},null,8,[`label`,`disabled`,`loading`])],32)]),_:1}),c(j)]))}}),[[`__scopeId`,`data-v-321af300`]]);export{V as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{Aa as e,An as t,Bi as n,Di as r,Ji as i,Li as a,Mn as o,On as s,Rt as ee,Ti as c,Wi as l,Xi as te,Xn as ne,Zt as re,_a as u,_i as d,bi as f,da as p,di as ie,er as ae,gi as m,ha as h,mn as g,oa as _,on as v,pi as y,rt as oe,sa as se,sn as b,va as x,vi as S,wi as ce,yi as C,za as w}from"./index-pLefgbhx.js";import{t as T}from"./uuid-Q0SWZmaT.js";import{n as E,t as D}from"./column-pXrOxKc1.js";import{t as le}from"./toggleswitch-D4Evlg2b.js";import{t as O}from"./autocomplete-B-t_B26t.js";var k={key:0,class:`env-badge`},A={class:`env-badge__name`},j=s(r({__name:`EnvironmentBadge`,props:{environmentId:{}},setup(e){let t=e,n=ee(),r=m(()=>n.getById(t.environmentId));function a(e){if(e)return e.startsWith(`#`)?e:`#${e}`}return(e,t)=>r.value?(i(),f(`span`,k,[d(`span`,{class:`env-badge__swatch`,style:u({backgroundColor:a(r.value.bgColor)||a(r.value.color)||`var(--p-primary-color)`})},null,4),d(`span`,A,x(r.value.name),1)])):C(``,!0)}}),[[`__scopeId`,`data-v-b70e647b`]]),M={class:`ref-group`},ue={class:`ref-option`},de={key:0,class:`pi pi-lock ref-option-secret`},N={key:1,class:`ref-option-preview`},P=40,F=s(r({__name:`VariableRefInput`,props:{modelValue:{},inputId:{},placeholder:{default:``},disabled:{type:Boolean,default:!1},envKeys:{default:()=>[]},meta:{default:()=>({})},resolvedEnv:{default:()=>({})},serviceBuiltins:{default:()=>({})}},emits:[`update:modelValue`,`search`,`focus`,`blur`,`picked`],setup(t,{emit:n}){let r=/^\{\{(.+)\}\}$/,a=/\{\{([^}]*)$/,o=t,s=n,{t:ee}=ae(),l=e(``),te=e(``),ne=e([]);function re(){let e=l.value.toLowerCase(),t=Object.keys(o.serviceBuiltins).filter(t=>t.toLowerCase().includes(e)).map(e=>`{{${e}}}`),n=o.envKeys.map(e=>`{{environment.${e}}}`);return[...t.length?[{label:ee(`variableRefInput.groupBuiltins`),items:t}]:[],...n.length?[{label:ee(`variableRefInput.groupEnvironment`),items:n}]:[]]}function u(){ne.value=re()}se(()=>[o.envKeys,o.serviceBuiltins],u,{deep:!0});function ie(e){let t=e.match(r);return t?t[1].replace(/^environment\./,``):e}function m(e){let t=e.match(r);return!t||!t[1].startsWith(`environment.`)?!1:o.meta[t[1].slice(12)]?.isSecret??!1}function h(e){let t=e.match(r);if(!t)return null;let n=t[1];if(!n.startsWith(`environment.`)){let e=o.serviceBuiltins[n];return e?g(e):null}let i=n.slice(12),a=o.meta[i];if(!a||a.isSecret)return null;let s=o.resolvedEnv[i];return s?g(s):null}function g(e){return e.length>P?`${e.slice(0,P)}…`:e}function _(e){if(te.value=e.query,y)y=!1,l.value=``;else{let t=e.query.match(a);l.value=(t?t[1]:e.query).replace(/^(environment|service)\./,``).trim()}s(`search`,l.value),u()}let y=!1;function oe(){y=!0,s(`focus`)}function b(e){let t=te.value,n=t.lastIndexOf(`{{`);s(`update:modelValue`,n===-1?e:t.slice(0,n)+e),s(`picked`)}return(e,n)=>(i(),S(w(O),{"input-id":t.inputId,"model-value":t.modelValue,suggestions:ne.value,"option-group-label":`label`,"option-group-children":`items`,placeholder:t.placeholder,class:`w-full`,"complete-on-focus":``,disabled:t.disabled,"onUpdate:modelValue":n[0]||=e=>s(`update:modelValue`,e),onComplete:_,onItemSelect:n[1]||=e=>b(e.value),onFocus:oe,onBlur:n[2]||=e=>s(`blur`)},{optiongroup:p(({option:e})=>[d(`span`,M,x(e.label),1)]),option:p(({option:e})=>[d(`span`,ue,[c(w(v),{severity:`secondary`,value:ie(e)},null,8,[`value`]),m(e)?(i(),f(`i`,de)):h(e)?(i(),f(`span`,N,x(h(e)),1)):C(``,!0)])]),_:1},8,[`input-id`,`model-value`,`suggestions`,`placeholder`,`disabled`]))}}),[[`__scopeId`,`data-v-322f20cf`]]),fe={class:`key-row`},pe={class:`expansion-field expansion-field--key`},me=[`for`],he={key:2,class:`value-display`},I={key:0,class:`expansion-field expansion-field--toggle`},ge={class:`expansion-label`,for:`varrow-secret`},_e={key:1,class:`expansion-field expansion-field--toggle`},L=[`title`],R={key:2,class:`key-row-delete`},ve={key:0,class:`not-secret-warning`},ye={class:`expansion-section`},z={class:`section-title`},B={class:`section-fields`},V={class:`expansion-field expansion-field--prepost`},be={class:`expansion-label`,for:`varrow-prefix`},xe={key:2,class:`value-display`},Se={class:`expansion-field expansion-field--value`},H=[`for`],Ce=[`aria-label`],U={class:`value-help`},we={class:`value-help__title`},Te={class:`value-help__line`},Ee={class:`value-help__line value-help__line--muted`},De={class:`value-help__subtitle`},Oe={class:`value-help__builtins`},ke={class:`value-help__line value-help__line--muted`},Ae={key:0,class:`secret-input-wrap`},je=[`disabled`],Me=[`title`],Ne={key:1,class:`value-display value-display--with-actions`},Pe={key:0,class:`value-actions`},Fe={key:0},Ie={key:1},Le={class:`expansion-field expansion-field--prepost`},Re={class:`expansion-label`,for:`varrow-suffix`},ze={key:2,class:`value-display`},Be={key:0,class:`preview-value`},Ve={key:0,class:`prepost-part prepost-part--pre`},He={key:1,class:`prepost-part prepost-part--interpolation`},Ue={class:`prepost-part--value prepost-resolved-inline`},We=[`title`],Ge={key:2,class:`prepost-part prepost-part--value`},Ke={key:3,class:`prepost-part prepost-part--post`},qe={key:1,class:`expansion-section`},Je={class:`section-header`},Ye={class:`section-title`},Xe={class:`section-fields`},Ze={class:`expansion-field expansion-field--prepost`},Qe={class:`expansion-label`,for:`varrow-override-prefix`},$e={class:`expansion-field expansion-field--value`},et=[`for`],tt={key:0,class:`secret-input-wrap`},nt=[`disabled`],rt=[`title`],it={class:`expansion-field expansion-field--prepost`},at={class:`expansion-label`,for:`varrow-override-suffix`},ot={key:1,class:`override-view`},st={key:0,class:`value-display--with-actions`},ct={class:`value-actions`},lt={key:0,class:`override-value-masked`},ut={key:1,class:`override-value`},dt={key:1,class:`override-value`},ft={key:1,class:`override-empty`},pt={key:0,class:`preview-value preview-value--override`},mt={key:0,class:`prepost-part prepost-part--pre`},ht={key:1,class:`prepost-part prepost-part--interpolation`},gt={key:0,class:`prepost-part--value prepost-resolved-inline`},_t={key:2,class:`prepost-part prepost-part--value`},vt={key:3,class:`prepost-part prepost-part--post`},yt=`{{environment.KEY}}`,W=s(r({__name:`VariableRowEditor`,props:{environmentId:{},variableId:{},overrides:{},editable:{type:Boolean,default:!0},showOverrides:{type:Boolean,default:!1},canEditSource:{type:Boolean,default:!1},showDelete:{type:Boolean,default:!0},showOverrideBadge:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},resolvedEnv:{default:()=>({})},autocompleteEnabled:{type:Boolean,default:!1},autocompleteSuggestions:{default:()=>[]},autocompleteMeta:{default:()=>({})},serviceBuiltins:{default:()=>({})},isPending:{type:Boolean,default:!1}},emits:[`deleted`,`saved`,`autocomplete-search`,`override-changed`,`edit-source`],setup(t,{emit:n}){let r=/^\{\{(.+)\}\}$/,a=/^\{\{environment\.(.+)\}\}$/,s=t,u=n,g=ee(),_=ne(),{t:T}=ae(),E=e(!1),D=e(!1),k=e(!1),A=e(!1),j=e(!1),M=e(null);function ue(e,t){navigator.clipboard.writeText(t),M.value=e,setTimeout(()=>{M.value===e&&(M.value=null)},1500)}let de=m(()=>g.getById(s.environmentId)?.variables?.[s.variableId]),N=e(``),P=e(``),W=e(``),G=e(``),bt=e(!1),xt=e(!1),St=m(()=>Z(P.value)),K=m(()=>bt.value&&!St.value);function Ct(){let e=de.value;N.value=e?.key??``,P.value=e?.value?.value??``,W.value=e?.value?.pre??``,G.value=e?.value?.post??``,bt.value=e?.value?.isSecret??!1,xt.value=e?.value?.injectIntoAi??!1}l(Ct),se(de,(e,t)=>{!t&&e&&Ct()});let q=m(()=>s.overrides[s.variableId]??null),J=e(``),Y=e(``),X=e(``);function wt(){let e=q.value;J.value=e?.pre??``,Y.value=e?.value??``,X.value=e?.post??``}l(wt),se(q,wt);function Z(e){return r.test(e)}function Tt(e){let t=e.match(r);return t?t[1].replace(/^environment\./,``):e}function Et(e){return e.replace(/\{\{environment\.([^}]+)\}\}/g,(e,t)=>s.resolvedEnv[t]??e)}function Dt(e){let t=e.match(a);return t?s.resolvedEnv[t[1]]??null:null}function Ot(e){let t=e.value;N.value=t,P.value=`{{environment.${t}}}`,bt.value=!1;let n=s.autocompleteMeta?.[t];n&&(W.value=n.pre,G.value=n.post),Q()}let kt=e(null),At=m(()=>oe.map(e=>({ref:`{{${e.name}}}`,desc:T(`builtins.${e.descriptionKey}`)})));async function Q(){if(E.value)return;let e=N.value.trim();if(e){E.value=!0;try{await g.upsertVariable(s.environmentId,s.variableId,{key:e,value:{value:P.value,pre:W.value,post:G.value,isSecret:K.value,injectIntoAi:xt.value}}),s.isPending&&u(`saved`)}catch(e){_.add({severity:`error`,summary:T(`common.error`),detail:e.message??T(`variableRowEditor.saveError`),life:4e3})}finally{E.value=!1}}}async function jt(){if(s.isPending){u(`deleted`);return}E.value=!0;try{q.value&&await g.removeOverride(s.variableId),await g.removeVariable(s.environmentId,s.variableId),u(`deleted`)}catch(e){_.add({severity:`error`,summary:T(`common.error`),detail:e.message??T(`variableRowEditor.deleteError`),life:4e3})}finally{E.value=!1}}async function $(){let e=J.value||Y.value||X.value;try{if(!e){q.value&&(await g.removeOverride(s.variableId),u(`override-changed`));return}await g.setOverride(s.variableId,{value:{value:Y.value,pre:J.value,post:X.value,isSecret:K.value}}),u(`override-changed`)}catch(e){_.add({severity:`error`,summary:T(`common.error`),detail:e.message??T(`variableRowEditor.overrideError`),life:4e3})}}async function Mt(){try{await g.removeOverride(s.variableId),u(`override-changed`)}catch(e){_.add({severity:`error`,summary:T(`common.error`),detail:e.message??T(`variableRowEditor.clearOverrideError`),life:4e3})}}function Nt(e){let t=e.relatedTarget;(!t||!e.currentTarget.contains(t))&&Q()}return(e,n)=>(i(),f(`div`,{class:`expansion-form`,onFocusout:Nt},[d(`div`,fe,[d(`div`,pe,[d(`label`,{class:`expansion-label`,for:t.editable&&t.autocompleteEnabled?`varrow-key-ac`:`varrow-key-input`},x(w(T)(`common.key`)),9,me),t.editable&&t.autocompleteEnabled?(i(),S(w(O),{key:0,"input-id":`varrow-key-ac`,modelValue:N.value,"onUpdate:modelValue":n[0]||=e=>N.value=e,suggestions:t.autocompleteSuggestions,placeholder:w(T)(`variableRowEditor.variableNamePlaceholder`),class:`w-full`,disabled:t.disabled,onComplete:n[1]||=e=>u(`autocomplete-search`,e.query),onItemSelect:Ot,onBlur:Q},null,8,[`modelValue`,`suggestions`,`placeholder`,`disabled`])):t.editable?(i(),S(w(b),{key:1,id:`varrow-key-input`,modelValue:N.value,"onUpdate:modelValue":n[2]||=e=>N.value=e,placeholder:w(T)(`variableRowEditor.variableNamePlaceholder`),class:`w-full`,disabled:t.disabled,onBlur:Q},null,8,[`modelValue`,`placeholder`,`disabled`])):(i(),f(`code`,he,x(N.value),1))]),t.editable&&!St.value?(i(),f(`div`,I,[d(`label`,ge,x(w(T)(`variableRowEditor.secret`)),1),c(w(le),{"input-id":`varrow-secret`,modelValue:bt.value,"onUpdate:modelValue":[n[3]||=e=>bt.value=e,Q],disabled:t.disabled},null,8,[`modelValue`,`disabled`])])):C(``,!0),t.editable?(i(),f(`div`,_e,[d(`label`,{class:`expansion-label`,for:`varrow-injectai`,title:w(T)(`variableRowEditor.injectIntoAiHint`)},x(w(T)(`variableRowEditor.injectIntoAi`)),9,L),c(w(le),{"input-id":`varrow-injectai`,modelValue:xt.value,"onUpdate:modelValue":[n[4]||=e=>xt.value=e,Q],disabled:t.disabled},null,8,[`modelValue`,`disabled`])])):C(``,!0),t.showDelete&&t.editable?(i(),f(`div`,R,[c(w(o),{icon:`pi pi-trash`,severity:`danger`,text:``,rounded:``,size:`small`,disabled:t.disabled||E.value,onClick:jt},null,8,[`disabled`])])):C(``,!0)]),t.editable&&!bt.value&&!Z(P.value)?(i(),f(`div`,ve,[n[53]||=d(`i`,{class:`pi pi-info-circle`},null,-1),d(`span`,null,x(w(T)(`variableRowEditor.notSecretWarning`)),1)])):C(``,!0),d(`div`,ye,[d(`div`,z,x(w(T)(`variableRowEditor.value`)),1),d(`div`,B,[d(`div`,V,[d(`label`,be,x(w(T)(`variableRowEditor.prefix`)),1),t.editable&&t.autocompleteEnabled?(i(),S(F,{key:0,"input-id":`varrow-prefix`,modelValue:W.value,"onUpdate:modelValue":n[5]||=e=>W.value=e,placeholder:w(T)(`variableRowEditor.prefixPlaceholder`),"env-keys":t.autocompleteSuggestions,meta:t.autocompleteMeta,"resolved-env":t.resolvedEnv,"service-builtins":t.serviceBuiltins,disabled:t.disabled,onSearch:n[6]||=e=>u(`autocomplete-search`,e),onBlur:n[7]||=e=>Q(),onPicked:n[8]||=e=>Q()},null,8,[`modelValue`,`placeholder`,`env-keys`,`meta`,`resolved-env`,`service-builtins`,`disabled`])):t.editable?(i(),S(w(b),{key:1,id:`varrow-prefix`,modelValue:W.value,"onUpdate:modelValue":n[9]||=e=>W.value=e,placeholder:w(T)(`variableRowEditor.prefixPlaceholder`),class:`w-full`,disabled:t.disabled,onBlur:Q},null,8,[`modelValue`,`placeholder`,`disabled`])):(i(),f(`code`,xe,x(W.value||`—`),1))]),d(`div`,Se,[d(`label`,{class:`expansion-label`,for:K.value?`varrow-value-secret`:`varrow-value-plain`},[ce(x(w(T)(`variableRowEditor.value`))+` `,1),t.editable?(i(),f(`button`,{key:0,type:`button`,class:`value-help-btn`,"aria-label":w(T)(`variableRowEditor.helpTitle`),onClick:n[10]||=ie(e=>kt.value?.toggle(e),[`prevent`,`stop`])},[...n[54]||=[d(`i`,{class:`pi pi-info-circle`},null,-1)]],8,Ce)):C(``,!0)],8,H),c(w(re),{ref_key:`valueHelp`,ref:kt},{default:p(()=>[d(`div`,U,[d(`div`,we,x(w(T)(`variableRowEditor.helpTitle`)),1),d(`p`,Te,[ce(x(w(T)(`variableRowEditor.helpReference`))+` `,1),d(`code`,null,x(yt))]),d(`p`,Ee,x(w(T)(`variableRowEditor.helpAutocomplete`)),1),d(`div`,De,x(w(T)(`variableRowEditor.helpBuiltinsTitle`)),1),d(`ul`,Oe,[(i(!0),f(y,null,te(At.value,e=>(i(),f(`li`,{key:e.ref},[d(`code`,null,x(e.ref),1),d(`span`,null,x(e.desc),1)]))),128))]),d(`p`,ke,x(w(T)(`variableRowEditor.helpPrePost`)),1)])]),_:1},512),t.editable?(i(),f(y,{key:0},[K.value?(i(),f(`div`,Ae,[c(w(b),{id:`varrow-value-secret`,modelValue:P.value,"onUpdate:modelValue":n[11]||=e=>P.value=e,type:A.value?`text`:`password`,placeholder:w(T)(`variableRowEditor.valuePlaceholder`),class:`w-full`,disabled:t.disabled,onBlur:Q},null,8,[`modelValue`,`type`,`placeholder`,`disabled`]),d(`button`,{type:`button`,class:`secret-toggle`,disabled:t.disabled,onClick:n[12]||=e=>A.value=!A.value,tabindex:`-1`},[d(`i`,{class:h(A.value?`pi pi-eye-slash`:`pi pi-eye`)},null,2)],8,je)])):Z(P.value)&&!D.value?(i(),f(`span`,{key:1,class:`interpolation-badge`,title:P.value,onClick:n[13]||=e=>D.value=!0},[c(w(v),{severity:`secondary`,value:Tt(P.value)},null,8,[`value`]),n[55]||=d(`i`,{class:`pi pi-pencil interpolation-edit-icon`},null,-1)],8,Me)):t.autocompleteEnabled?(i(),S(F,{key:2,"input-id":`varrow-value-plain`,modelValue:P.value,"onUpdate:modelValue":n[14]||=e=>P.value=e,placeholder:w(T)(`variableRowEditor.valuePlaceholder`),"env-keys":t.autocompleteSuggestions,meta:t.autocompleteMeta,"resolved-env":t.resolvedEnv,"service-builtins":t.serviceBuiltins,disabled:t.disabled,onSearch:n[15]||=e=>u(`autocomplete-search`,e),onFocus:n[16]||=e=>D.value=!0,onBlur:n[17]||=e=>{D.value=!1,Q()},onPicked:n[18]||=e=>Q()},null,8,[`modelValue`,`placeholder`,`env-keys`,`meta`,`resolved-env`,`service-builtins`,`disabled`])):(i(),S(w(b),{key:3,id:`varrow-value-plain`,modelValue:P.value,"onUpdate:modelValue":n[19]||=e=>P.value=e,placeholder:w(T)(`variableRowEditor.valuePlaceholder`),class:`w-full`,disabled:t.disabled,onFocus:n[20]||=e=>D.value=!0,onBlur:n[21]||=e=>{D.value=!1,Q()}},null,8,[`modelValue`,`placeholder`,`disabled`]))],64)):(i(),f(`span`,Ne,[P.value?(i(),f(`span`,Pe,[K.value?(i(),f(`i`,{key:0,class:h([A.value?`pi pi-eye-slash`:`pi pi-eye`,`action-icon`]),onClick:n[22]||=e=>A.value=!A.value},null,2)):C(``,!0),d(`i`,{class:h([M.value===`val`?`pi pi-check`:`pi pi-copy`,`action-icon`]),onClick:n[23]||=e=>ue(`val`,W.value+P.value+G.value)},null,2)])):C(``,!0),Z(P.value)?(i(),S(w(v),{key:1,severity:`secondary`,value:Tt(P.value)},null,8,[`value`])):K.value?(i(),f(y,{key:2},[A.value?(i(),f(`span`,Ie,x(P.value),1)):(i(),f(`span`,Fe,`***`))],64)):(i(),f(y,{key:3},[ce(x(P.value),1)],64))]))]),d(`div`,Le,[d(`label`,Re,x(w(T)(`variableRowEditor.suffix`)),1),t.editable&&t.autocompleteEnabled?(i(),S(F,{key:0,"input-id":`varrow-suffix`,modelValue:G.value,"onUpdate:modelValue":n[24]||=e=>G.value=e,placeholder:w(T)(`variableRowEditor.suffixPlaceholder`),"env-keys":t.autocompleteSuggestions,meta:t.autocompleteMeta,"resolved-env":t.resolvedEnv,"service-builtins":t.serviceBuiltins,disabled:t.disabled,onSearch:n[25]||=e=>u(`autocomplete-search`,e),onBlur:n[26]||=e=>Q(),onPicked:n[27]||=e=>Q()},null,8,[`modelValue`,`placeholder`,`env-keys`,`meta`,`resolved-env`,`service-builtins`,`disabled`])):t.editable?(i(),S(w(b),{key:1,id:`varrow-suffix`,modelValue:G.value,"onUpdate:modelValue":n[28]||=e=>G.value=e,placeholder:w(T)(`variableRowEditor.suffixPlaceholder`),class:`w-full`,disabled:t.disabled,onBlur:Q},null,8,[`modelValue`,`placeholder`,`disabled`])):(i(),f(`code`,ze,x(G.value||`—`),1))])]),K.value?C(``,!0):(i(),f(`code`,Be,[W.value?(i(),f(`span`,Ve,x(Et(W.value)),1)):C(``,!0),Z(P.value)?(i(),f(`span`,He,[Dt(P.value)==null?(i(),f(y,{key:1},[c(w(v),{severity:`secondary`,value:Tt(P.value),style:{"font-size":`0.7rem`}},null,8,[`value`]),n[56]||=d(`span`,{class:`prepost-unresolved`},`(?)`,-1)],64)):(i(),f(y,{key:0},[d(`span`,Ue,x(Dt(P.value)),1),t.canEditSource?(i(),f(`i`,{key:0,class:`pi pi-pencil edit-source-icon`,title:w(T)(`variablesTable.editParentTitle`),onClick:n[29]||=ie(e=>u(`edit-source`),[`stop`])},null,8,We)):C(``,!0)],64))])):(i(),f(`span`,Ge,x(Et(P.value)||`…`),1)),G.value?(i(),f(`span`,Ke,x(Et(G.value)),1)):C(``,!0)]))]),t.showOverrides&&N.value?.trim()?(i(),f(`div`,qe,[d(`div`,Je,[d(`div`,Ye,x(w(T)(`variableRowEditor.localOverride`)),1),t.editable&&q.value?(i(),S(w(o),{key:0,icon:`pi pi-times`,text:``,rounded:``,size:`small`,severity:`danger`,title:w(T)(`variableRowEditor.clearOverride`),disabled:t.disabled,onClick:Mt},null,8,[`title`,`disabled`])):C(``,!0)]),d(`div`,Xe,[t.editable?(i(),f(y,{key:0},[d(`div`,Ze,[d(`label`,Qe,x(w(T)(`variableRowEditor.prefix`)),1),t.autocompleteEnabled?(i(),S(F,{key:0,"input-id":`varrow-override-prefix`,modelValue:J.value,"onUpdate:modelValue":n[30]||=e=>J.value=e,placeholder:w(T)(`variableRowEditor.prefixPlaceholder`),"env-keys":t.autocompleteSuggestions,meta:t.autocompleteMeta,"resolved-env":t.resolvedEnv,"service-builtins":t.serviceBuiltins,disabled:t.disabled,onSearch:n[31]||=e=>u(`autocomplete-search`,e),onBlur:n[32]||=e=>$(),onPicked:n[33]||=e=>$()},null,8,[`modelValue`,`placeholder`,`env-keys`,`meta`,`resolved-env`,`service-builtins`,`disabled`])):(i(),S(w(b),{key:1,id:`varrow-override-prefix`,modelValue:J.value,"onUpdate:modelValue":n[34]||=e=>J.value=e,placeholder:w(T)(`variableRowEditor.prefixPlaceholder`),class:`w-full`,disabled:t.disabled,onBlur:$},null,8,[`modelValue`,`placeholder`,`disabled`]))]),d(`div`,$e,[d(`label`,{class:`expansion-label`,for:K.value?`varrow-override-value-secret`:`varrow-override-value-plain`},x(w(T)(`variableRowEditor.value`)),9,et),K.value?(i(),f(`div`,tt,[c(w(b),{id:`varrow-override-value-secret`,modelValue:Y.value,"onUpdate:modelValue":n[35]||=e=>Y.value=e,type:j.value?`text`:`password`,placeholder:w(T)(`variableRowEditor.overrideValuePlaceholder`),class:`w-full`,disabled:t.disabled,onBlur:$},null,8,[`modelValue`,`type`,`placeholder`,`disabled`]),d(`button`,{type:`button`,class:`secret-toggle`,disabled:t.disabled,onClick:n[36]||=e=>j.value=!j.value,tabindex:`-1`},[d(`i`,{class:h(j.value?`pi pi-eye-slash`:`pi pi-eye`)},null,2)],8,nt)])):Z(Y.value)&&!k.value?(i(),f(`span`,{key:1,class:`interpolation-badge`,title:Y.value,onClick:n[37]||=e=>k.value=!0},[c(w(v),{severity:`secondary`,value:Tt(Y.value)},null,8,[`value`]),n[57]||=d(`i`,{class:`pi pi-pencil interpolation-edit-icon`},null,-1)],8,rt)):t.autocompleteEnabled?(i(),S(F,{key:2,"input-id":`varrow-override-value-plain`,modelValue:Y.value,"onUpdate:modelValue":n[38]||=e=>Y.value=e,placeholder:w(T)(`variableRowEditor.overrideValuePlaceholder`),"env-keys":t.autocompleteSuggestions,meta:t.autocompleteMeta,"resolved-env":t.resolvedEnv,"service-builtins":t.serviceBuiltins,disabled:t.disabled,onSearch:n[39]||=e=>u(`autocomplete-search`,e),onFocus:n[40]||=e=>k.value=!0,onBlur:n[41]||=e=>{k.value=!1,$()},onPicked:n[42]||=e=>$()},null,8,[`modelValue`,`placeholder`,`env-keys`,`meta`,`resolved-env`,`service-builtins`,`disabled`])):(i(),S(w(b),{key:3,id:`varrow-override-value-plain`,modelValue:Y.value,"onUpdate:modelValue":n[43]||=e=>Y.value=e,placeholder:w(T)(`variableRowEditor.overrideValuePlaceholder`),class:`w-full`,disabled:t.disabled,onFocus:n[44]||=e=>k.value=!0,onBlur:n[45]||=e=>{k.value=!1,$()}},null,8,[`modelValue`,`placeholder`,`disabled`]))]),d(`div`,it,[d(`label`,at,x(w(T)(`variableRowEditor.suffix`)),1),t.autocompleteEnabled?(i(),S(F,{key:0,"input-id":`varrow-override-suffix`,modelValue:X.value,"onUpdate:modelValue":n[46]||=e=>X.value=e,placeholder:w(T)(`variableRowEditor.suffixPlaceholder`),"env-keys":t.autocompleteSuggestions,meta:t.autocompleteMeta,"resolved-env":t.resolvedEnv,"service-builtins":t.serviceBuiltins,disabled:t.disabled,onSearch:n[47]||=e=>u(`autocomplete-search`,e),onBlur:n[48]||=e=>$(),onPicked:n[49]||=e=>$()},null,8,[`modelValue`,`placeholder`,`env-keys`,`meta`,`resolved-env`,`service-builtins`,`disabled`])):(i(),S(w(b),{key:1,id:`varrow-override-suffix`,modelValue:X.value,"onUpdate:modelValue":n[50]||=e=>X.value=e,placeholder:w(T)(`variableRowEditor.suffixPlaceholder`),class:`w-full`,disabled:t.disabled,onBlur:$},null,8,[`modelValue`,`placeholder`,`disabled`]))])],64)):(i(),f(`div`,ot,[q.value?(i(),f(`span`,st,[d(`span`,ct,[K.value||q.value.isSecret?(i(),f(`i`,{key:0,class:h([j.value?`pi pi-eye-slash`:`pi pi-eye`,`action-icon`]),onClick:n[51]||=e=>j.value=!j.value},null,2)):C(``,!0),d(`i`,{class:h([M.value===`ovr`?`pi pi-check`:`pi pi-copy`,`action-icon`]),onClick:n[52]||=e=>ue(`ovr`,q.value.pre+q.value.value+q.value.post)},null,2)]),K.value||q.value.isSecret?(i(),f(y,{key:0},[j.value?(i(),f(`code`,ut,x(q.value.pre)+x(q.value.value)+x(q.value.post),1)):(i(),f(`span`,lt,`***`))],64)):(i(),f(`code`,dt,x(q.value.pre)+x(q.value.value)+x(q.value.post),1))])):(i(),f(`span`,ft,`—`))]))]),t.editable&&!K.value&&(J.value||Y.value||X.value)?(i(),f(`code`,pt,[J.value?(i(),f(`span`,mt,x(Et(J.value)),1)):C(``,!0),Z(Y.value)?(i(),f(`span`,ht,[Dt(Y.value)==null?(i(),f(y,{key:1},[c(w(v),{severity:`secondary`,value:Tt(Y.value),style:{"font-size":`0.7rem`}},null,8,[`value`]),n[58]||=d(`span`,{class:`prepost-unresolved`},`(?)`,-1)],64)):(i(),f(`span`,gt,x(Dt(Y.value)),1))])):(i(),f(`span`,_t,x(Et(Y.value)||`…`),1)),X.value?(i(),f(`span`,vt,x(Et(X.value)),1)):C(``,!0)])):C(``,!0)])):C(``,!0)],32))}}),[[`__scopeId`,`data-v-73035c6d`]]),G={class:`table-toolbar`},bt={key:0,class:`overrides-filter`},xt={for:`overrides-filter`},St={class:`text-center py-4 text-gray-500`},K={class:`row-key-cell`},Ct={class:`row-key-line`},q={class:`row-key`},J=[`title`],Y=[`title`],X={key:1,class:`resolved-from-line`},wt={class:`row-value`},Z=[`title`,`onClick`],Tt=[`title`,`onClick`],Et={key:1,class:`value-levels`},Dt={class:`resolved-level`},Ot={key:0,class:`secret-mask`},kt=[`title`],At={key:0,class:`secret-mask`},Q=[`title`],jt=[`title`],$={key:6,class:`empty-value`},Mt={key:0,class:`override-indicator`},Nt=[`title`,`onClick`],Pt=[`title`,`onClick`],Ft={key:0,class:`override-value-masked`},It=[`title`],Lt=[`title`],Rt={key:0,class:`parent-edit`},zt={class:`parent-edit__field`},Bt={class:`parent-edit__label`,for:`parent-edit-value`},Vt={class:`parent-edit__usages`},Ht={class:`parent-edit__usages-title`},Ut={key:0,class:`parent-edit__usages-loading`},Wt={key:0,class:`parent-edit__usage-list`},Gt={class:`parent-edit__usage-env`},Kt={key:0,class:`parent-edit__usage-svc`},qt={key:1,class:`parent-edit__usages-empty`},Jt=40,Yt=200,Xt=24,Zt=s(r({__name:`VariablesTable`,props:{environmentId:{},resolvedEnv:{default:()=>({})},sources:{default:()=>({})},editable:{type:Boolean,default:!0},showOverrides:{type:Boolean,default:!1},showOverrideBadge:{type:Boolean,default:!1},showDelete:{type:Boolean,default:!0},showAddButton:{type:Boolean,default:!0},disabled:{type:Boolean,default:!1},autocompleteEnabled:{type:Boolean,default:!1},autocompleteSuggestions:{default:()=>[]},autocompleteMeta:{default:()=>({})},serviceBuiltins:{},scrollHeight:{default:`auto`}},emits:[`autocomplete-search`,`variables-changed`],setup(r,{emit:s}){let re=/^\{\{(.+)\}\}$/,u=/^\{\{environment\.(.+)\}\}$/,se=Object.fromEntries(oe.map(e=>[e.name,``])),O=r,k=s,{t:A}=ae(),M=ee(),ue=m(()=>Object.keys(O.sources).length>0),de=m(()=>Object.keys(O.resolvedEnv).length>0),N=_(`rootRef`),P=e(null),F=m(()=>O.scrollHeight===`auto`?P.value??`460px`:O.scrollHeight);function fe(){if(O.scrollHeight!==`auto`)return;let e=N.value;if(!e)return;let t=(e.querySelector(`.p-datatable-table-container`)??e).getBoundingClientRect().top,n=window.innerHeight-t-Xt;P.value=`${Math.max(Yt,Math.round(n))}px`}let pe=null;l(()=>{a(fe),window.addEventListener(`resize`,fe),typeof ResizeObserver<`u`&&N.value&&(pe=new ResizeObserver(()=>fe()),pe.observe(document.body))}),n(()=>{window.removeEventListener(`resize`,fe),pe?.disconnect(),pe=null});let me=e(``),he=e(!1),I=e({});async function ge(){if(O.showOverrides)try{let e=await M.getOverrides(),t={};for(let[n,r]of Object.entries(e)){let e=r;t[n]={value:e.value.value,pre:e.value.pre,post:e.value.post,isSecret:e.value.isSecret}}I.value=t}catch{}}l(ge);let _e=m(()=>M.getById(O.environmentId));function L(e){return _e.value?.variables?.[e]}let R=e([]),ve=m(()=>{let e=Object.keys(_e.value?.variables??{}).map(e=>({variableId:e})),t=new Set(e.map(e=>e.variableId)),n=R.value.filter(e=>!t.has(e)).map(e=>({variableId:e}));return[...e,...n]}),ye=_(`tableRef`),z=e({}),B=e([]),V=e(new Set);function be(e){let t=new Set(V.value);t.has(e)?t.delete(e):t.add(e),V.value=t}let xe=e(null);function Se(e,t){navigator.clipboard.writeText(t),xe.value=e,setTimeout(()=>{xe.value===e&&(xe.value=null)},1500)}function H(e){let t=L(e);if(!t)return``;let n=t.value?.value??``;return ze(n)?Ve(n)??n:(t.value?.pre??``)+n+(t.value?.post??``)}let Ce=ne(),U=e(null),we=e(!1),Te=e(!1),Ee=e(!1),De=0,Oe=e([]);async function ke(e){let t=O.sources[e]?.resolvedFrom,n=L(e)?.value?.value??``;if(!t||!n)return;let r=Be(n),i=M.getById(t.environmentId),a=Object.entries(i?.variables??{}).find(([,e])=>e.key===r);if(!a){Ce.add({severity:`warn`,summary:A(`variablesTable.editParentNotFound`),life:4e3});return}let[o,s]=a;U.value={key:r,environmentId:t.environmentId,environmentName:t.environmentName,variableId:o,value:s.value?.value??``,pre:s.value?.pre??``,post:s.value?.post??``,isSecret:s.value?.isSecret??!1,injectIntoAi:s.value?.injectIntoAi??!1},Oe.value=[],we.value=!0,Ae(r,t.environmentId)}async function Ae(e,t){let n=++De;Ee.value=!0;try{let r=M.currentProjectId;if(!r)return;let i=await M.keyUsages(r,e,t);if(n!==De)return;Oe.value=[...i.inheritedBy.map(e=>({kind:`inherits`,environmentName:e.environmentName,...e.serviceName?{serviceName:e.serviceName}:{}})),...i.definedIn.map(e=>({kind:`defines`,environmentName:e.environmentName,...e.serviceName?{serviceName:e.serviceName}:{}})),...i.referencedBy.map(e=>({kind:`references`,environmentName:e.environmentName,...e.serviceName?{serviceName:e.serviceName}:{},viaKey:e.key}))]}catch{n===De&&(Oe.value=[])}finally{n===De&&(Ee.value=!1)}}async function je(){let e=U.value;if(e){Te.value=!0;try{await M.upsertVariable(e.environmentId,e.variableId,{key:e.key,value:{value:e.value,pre:e.pre,post:e.post,isSecret:e.isSecret,injectIntoAi:e.injectIntoAi}}),we.value=!1,k(`variables-changed`)}catch(e){Ce.add({severity:`error`,summary:A(`common.error`),detail:e.message,life:4e3})}finally{Te.value=!1}}}function Me(e){let t=I.value[e];return t?t.pre+t.value+t.post:``}let Ne=m(()=>{let e=[...ve.value];if(he.value&&(e=e.filter(e=>!!I.value[e.variableId])),me.value.trim()){let t=me.value.toLowerCase();e=e.filter(e=>{let n=L(e.variableId);if(!n)return!1;if(n.key.toLowerCase().includes(t)||(n.value?.value??``).toLowerCase().includes(t))return!0;let r=I.value[e.variableId];return!!(r&&r.value.toLowerCase().includes(t))})}return B.value.length>0?e.sort((e,t)=>{let n=B.value.indexOf(e.variableId),r=B.value.indexOf(t.variableId);return n===-1?1:r===-1?-1:n-r}):e.sort((e,t)=>{let n=L(e.variableId)?.key??``,r=L(t.variableId)?.key??``;return n?r?n.localeCompare(r):-1:1}),e});function Pe(e){let t=e.data.variableId;z.value[t]?(z.value={},B.value=[],Fe(t)):(B.value=Ne.value.map(e=>e.variableId),z.value={[t]:!0})}function Fe(e){a(()=>{let t=ye.value?.$el;if(!t)return;let n=Ne.value.findIndex(t=>t.variableId===e);n<0||t.querySelectorAll(`tbody tr[data-p-index]`)[n]?.scrollIntoView({block:`nearest`,behavior:`smooth`})})}function Ie(e){R.value=R.value.filter(t=>t!==e),z.value[e]&&(z.value={},B.value=[])}function Le(e){R.value=R.value.filter(t=>t!==e)}function Re(){let e=T();R.value=[...R.value,e],B.value=[...ve.value.map(e=>e.variableId),e],a(()=>{z.value={[e]:!0},a(()=>{let e=document.querySelector(`.variables-expand-table .p-datatable-row-expansion:last-of-type`);e&&e.scrollIntoView({block:`nearest`,behavior:`smooth`})})})}function ze(e){return re.test(e)}function Be(e){let t=e.match(re);return t?t[1].replace(/^(?:environment|service)\./,``):e}function Ve(e){let t=e.match(u);if(t)return O.resolvedEnv[t[1]]??null;let n=e.match(re);if(n){let e={...se,...O.serviceBuiltins};if(e[n[1]])return e[n[1]]}return null}function He(e){return e.length<=Jt?e:e.substring(0,Jt)+`…`}return(e,n)=>(i(),f(y,null,[d(`div`,{ref_key:`rootRef`,ref:N,class:`variables-table`},[d(`div`,G,[c(w(b),{modelValue:me.value,"onUpdate:modelValue":n[0]||=e=>me.value=e,placeholder:`Search variables...`,class:`search-input`,size:`small`},null,8,[`modelValue`]),r.showOverrides?(i(),f(`div`,bt,[c(w(le),{modelValue:he.value,"onUpdate:modelValue":n[1]||=e=>he.value=e,"input-id":`overrides-filter`},null,8,[`modelValue`]),d(`label`,xt,x(w(A)(`variablesTable.overriddenOnly`)),1)])):C(``,!0)]),c(w(E),{ref_key:`tableRef`,ref:ye,"expanded-rows":z.value,"onUpdate:expandedRows":n[5]||=e=>z.value=e,value:Ne.value,"data-key":`variableId`,class:`p-datatable-sm variables-expand-table`,scrollable:``,"scroll-height":F.value,onRowClick:Pe},{empty:p(()=>[d(`div`,St,x(r.showAddButton?w(A)(`variablesTable.empty`):w(A)(`variablesTable.emptyReadonly`)),1)]),expansion:p(({data:e})=>[c(W,{"environment-id":r.environmentId,"variable-id":e.variableId,overrides:I.value,editable:r.editable,"show-overrides":r.showOverrides,"show-delete":r.showDelete,"show-override-badge":r.showOverrideBadge,disabled:r.disabled,"resolved-env":r.resolvedEnv,"autocomplete-enabled":r.autocompleteEnabled,"autocomplete-suggestions":r.autocompleteSuggestions,"autocomplete-meta":r.autocompleteMeta,"service-builtins":{...w(se),...r.serviceBuiltins},"is-pending":R.value.includes(e.variableId),onDeleted:t=>Ie(e.variableId),onSaved:t=>Le(e.variableId),onAutocompleteSearch:n[4]||=e=>k(`autocomplete-search`,e),onOverrideChanged:ge,"can-edit-source":!!r.sources[e.variableId]?.resolvedFrom,onEditSource:t=>ke(e.variableId)},null,8,[`environment-id`,`variable-id`,`overrides`,`editable`,`show-overrides`,`show-delete`,`show-override-badge`,`disabled`,`resolved-env`,`autocomplete-enabled`,`autocomplete-suggestions`,`autocomplete-meta`,`service-builtins`,`is-pending`,`onDeleted`,`onSaved`,`can-edit-source`,`onEditSource`])]),default:p(()=>[c(w(D),{expander:``,style:{width:`2.5rem`}}),c(w(D),{field:`variableId`,header:w(A)(`common.key`)},{body:p(({data:e})=>[d(`div`,K,[d(`span`,Ct,[d(`code`,q,x(L(e.variableId)?.key||`(new variable)`),1),r.sources[e.variableId]?.overriddenBy?(i(),f(`span`,{key:0,class:`overridden-badge overridden-badge--local`,title:w(A)(`variablesTable.localOverrideTooltip`,{env:r.sources[e.variableId].overriddenBy.environmentName})},[n[9]||=d(`i`,{class:`pi pi-desktop`},null,-1),ce(` `+x(w(A)(`variablesTable.localOverride`)),1)],8,J)):r.showOverrideBadge&&r.sources[e.variableId]?.overridden&&!ze(L(e.variableId)?.value?.value??``)?(i(),f(`span`,{key:1,class:`overridden-badge`,title:w(A)(`variablesTable.overrideTooltip`)},[n[10]||=d(`i`,{class:`pi pi-exclamation-triangle`},null,-1),ce(` `+x(w(A)(`variablesTable.override`)),1)],8,Y)):C(``,!0)]),ue.value&&r.sources[e.variableId]?(i(),S(j,{key:0,"environment-id":r.sources[e.variableId].environmentId,class:`source-badge`},null,8,[`environment-id`])):C(``,!0),ue.value&&r.sources[e.variableId]?.resolvedFrom?(i(),f(`span`,X,[n[11]||=d(`i`,{class:`pi pi-arrow-right resolved-from-arrow`},null,-1),c(j,{"environment-id":r.sources[e.variableId].resolvedFrom.environmentId,class:`source-badge`},null,8,[`environment-id`])])):C(``,!0)])]),_:1},8,[`header`]),c(w(D),{header:w(A)(`common.value`)},{body:p(({data:e})=>[d(`span`,wt,[H(e.variableId)?(i(),f(`span`,{key:0,class:`value-actions`,onClick:n[2]||=ie(()=>{},[`stop`])},[L(e.variableId)?.value?.isSecret?(i(),f(`i`,{key:0,class:h([V.value.has(e.variableId)?`pi pi-eye-slash`:`pi pi-eye`,`action-icon`]),title:w(A)(`variablesTable.reveal`),onClick:t=>be(e.variableId)},null,10,Z)):C(``,!0),d(`i`,{class:h([xe.value===e.variableId?`pi pi-check`:`pi pi-copy`,`action-icon`]),title:w(A)(`actions.copy`),onClick:t=>Se(e.variableId,H(e.variableId))},null,10,Tt)])):C(``,!0),ze(L(e.variableId)?.value?.value??``)&&Ve(L(e.variableId)?.value?.value??``)!=null?(i(),f(`span`,Et,[c(w(v),{severity:`secondary`,value:Be(L(e.variableId)?.value?.value??``),class:`interpolation-hint-tag`},null,8,[`value`]),d(`span`,Dt,[L(e.variableId)?.value?.isSecret&&!V.value.has(e.variableId)?(i(),f(`span`,Ot,`***`)):(i(),f(`code`,{key:1,class:`resolved-final`,title:Ve(L(e.variableId)?.value?.value??``)},x(He(Ve(L(e.variableId)?.value?.value??``))),9,kt))])])):ze(L(e.variableId)?.value?.value??``)&&de.value&&Ve(L(e.variableId)?.value?.value??``)==null?(i(),f(y,{key:2},[n[12]||=d(`i`,{class:`pi pi-exclamation-triangle unresolved-icon`},null,-1),c(w(v),{severity:`secondary`,value:Be(L(e.variableId)?.value?.value??``)},null,8,[`value`]),n[13]||=d(`span`,{class:`unresolved-msg`},`Variable not found in this environment`,-1)],64)):ze(L(e.variableId)?.value?.value??``)?(i(),S(w(v),{key:3,severity:`secondary`,value:Be(L(e.variableId)?.value?.value??``)},null,8,[`value`])):L(e.variableId)?.value?.isSecret?(i(),f(y,{key:4},[V.value.has(e.variableId)?(i(),f(`code`,{key:1,title:H(e.variableId)},x(He(H(e.variableId))),9,Q)):(i(),f(`span`,At,`***`))],64)):L(e.variableId)?.value?.value||L(e.variableId)?.value?.pre||L(e.variableId)?.value?.post?(i(),f(`code`,{key:5,title:H(e.variableId)},x(He(H(e.variableId))),9,jt)):(i(),f(`span`,$,`(empty)`))]),r.showOverrides&&!ze(L(e.variableId)?.value?.value??``)&&I.value[e.variableId]?(i(),f(`span`,Mt,[n[14]||=d(`i`,{class:`pi pi-arrow-right`,style:{"font-size":`0.7rem`}},null,-1),d(`span`,{class:`value-actions`,onClick:n[3]||=ie(()=>{},[`stop`])},[L(e.variableId)?.value?.isSecret||I.value[e.variableId].isSecret?(i(),f(`i`,{key:0,class:h([V.value.has(`ovr:`+e.variableId)?`pi pi-eye-slash`:`pi pi-eye`,`action-icon`]),title:w(A)(`variablesTable.reveal`),onClick:t=>be(`ovr:`+e.variableId)},null,10,Nt)):C(``,!0),d(`i`,{class:h([xe.value===`ovr:`+e.variableId?`pi pi-check`:`pi pi-copy`,`action-icon`]),title:w(A)(`actions.copy`),onClick:t=>Se(`ovr:`+e.variableId,Me(e.variableId))},null,10,Pt)]),L(e.variableId)?.value?.isSecret||I.value[e.variableId].isSecret?(i(),f(y,{key:0},[V.value.has(`ovr:`+e.variableId)?(i(),f(`code`,{key:1,class:`override-value`,title:Me(e.variableId)},x(He(Me(e.variableId))),9,It)):(i(),f(`span`,Ft,`***`))],64)):(i(),f(`code`,{key:1,class:`override-value`,title:Me(e.variableId)},x(He(Me(e.variableId))),9,Lt))])):C(``,!0)]),_:1},8,[`header`])]),_:1},8,[`expanded-rows`,`value`,`scroll-height`]),r.showAddButton?(i(),S(w(o),{key:0,type:`button`,label:w(A)(`variablesTable.addVariable`),icon:`pi pi-plus`,text:``,disabled:r.disabled,class:`mt-3`,onClick:Re},null,8,[`label`,`disabled`])):C(``,!0)],512),c(w(t),{visible:we.value,"onUpdate:visible":n[8]||=e=>we.value=e,modal:``,header:w(A)(`variablesTable.editParentHeader`),style:{width:`38rem`,maxWidth:`95vw`}},{footer:p(()=>[c(w(o),{label:w(A)(`actions.cancel`),text:``,disabled:Te.value,onClick:n[7]||=e=>we.value=!1},null,8,[`label`,`disabled`]),c(w(o),{label:w(A)(`variablesTable.editParentConfirm`),severity:`warn`,loading:Te.value,onClick:je},null,8,[`label`,`loading`])]),default:p(()=>[U.value?(i(),f(`div`,Rt,[c(w(g),{severity:`warn`,closable:!1,class:`parent-edit__warning`},{default:p(()=>[ce(x(w(A)(`variablesTable.editParentWarning`,{key:U.value.key,env:U.value.environmentName})),1)]),_:1}),d(`div`,zt,[d(`label`,Bt,x(w(A)(`common.value`)),1),c(w(b),{id:`parent-edit-value`,modelValue:U.value.value,"onUpdate:modelValue":n[6]||=e=>U.value.value=e,class:`w-full`,disabled:Te.value},null,8,[`modelValue`,`disabled`])]),d(`div`,Vt,[d(`div`,Ht,[n[15]||=d(`i`,{class:`pi pi-sitemap`},null,-1),ce(` `+x(w(A)(`variablesTable.editParentImpact`)),1)]),Ee.value?(i(),f(`div`,Ut,[n[16]||=d(`i`,{class:`pi pi-spin pi-spinner`},null,-1),d(`span`,null,x(w(A)(`variablesTable.editParentLoading`)),1)])):(i(),f(y,{key:1},[Oe.value.length?(i(),f(`ul`,Wt,[(i(!0),f(y,null,te(Oe.value,(e,t)=>(i(),f(`li`,{key:t},[c(w(v),{severity:e.kind===`references`?`info`:`secondary`,value:e.kind===`references`?e.viaKey:e.kind===`inherits`?w(A)(`variablesTable.editParentInherits`):w(A)(`variablesTable.editParentDefines`)},null,8,[`severity`,`value`]),d(`span`,Gt,x(e.environmentName),1),e.serviceName?(i(),f(`span`,Kt,x(e.serviceName),1)):C(``,!0)]))),128))])):(i(),f(`div`,qt,x(w(A)(`variablesTable.editParentNoUsage`)),1))],64))])])):C(``,!0)]),_:1},8,[`visible`,`header`])],64))}}),[[`__scopeId`,`data-v-78e9c98c`]]);export{j as n,Zt as t};
|
|
1
|
+
import{Aa as e,An as t,Bi as n,Di as r,Ji as i,Li as a,Mn as o,On as s,Rt as ee,Ti as c,Wi as l,Xi as te,Xn as ne,Zt as re,_a as u,_i as d,bi as f,da as p,di as ie,er as ae,gi as m,ha as h,mn as g,oa as _,on as v,pi as y,rt as oe,sa as se,sn as b,va as x,vi as S,wi as ce,yi as C,za as w}from"./index-BPOeXMH7.js";import{t as T}from"./uuid-Q0SWZmaT.js";import{n as E,t as D}from"./column-C9854MaP.js";import{t as le}from"./toggleswitch-DKBXnmzT.js";import{t as O}from"./autocomplete-eQhMihkm.js";var k={key:0,class:`env-badge`},A={class:`env-badge__name`},j=s(r({__name:`EnvironmentBadge`,props:{environmentId:{}},setup(e){let t=e,n=ee(),r=m(()=>n.getById(t.environmentId));function a(e){if(e)return e.startsWith(`#`)?e:`#${e}`}return(e,t)=>r.value?(i(),f(`span`,k,[d(`span`,{class:`env-badge__swatch`,style:u({backgroundColor:a(r.value.bgColor)||a(r.value.color)||`var(--p-primary-color)`})},null,4),d(`span`,A,x(r.value.name),1)])):C(``,!0)}}),[[`__scopeId`,`data-v-b70e647b`]]),M={class:`ref-group`},ue={class:`ref-option`},de={key:0,class:`pi pi-lock ref-option-secret`},N={key:1,class:`ref-option-preview`},P=40,F=s(r({__name:`VariableRefInput`,props:{modelValue:{},inputId:{},placeholder:{default:``},disabled:{type:Boolean,default:!1},envKeys:{default:()=>[]},meta:{default:()=>({})},resolvedEnv:{default:()=>({})},serviceBuiltins:{default:()=>({})}},emits:[`update:modelValue`,`search`,`focus`,`blur`,`picked`],setup(t,{emit:n}){let r=/^\{\{(.+)\}\}$/,a=/\{\{([^}]*)$/,o=t,s=n,{t:ee}=ae(),l=e(``),te=e(``),ne=e([]);function re(){let e=l.value.toLowerCase(),t=Object.keys(o.serviceBuiltins).filter(t=>t.toLowerCase().includes(e)).map(e=>`{{${e}}}`),n=o.envKeys.map(e=>`{{environment.${e}}}`);return[...t.length?[{label:ee(`variableRefInput.groupBuiltins`),items:t}]:[],...n.length?[{label:ee(`variableRefInput.groupEnvironment`),items:n}]:[]]}function u(){ne.value=re()}se(()=>[o.envKeys,o.serviceBuiltins],u,{deep:!0});function ie(e){let t=e.match(r);return t?t[1].replace(/^environment\./,``):e}function m(e){let t=e.match(r);return!t||!t[1].startsWith(`environment.`)?!1:o.meta[t[1].slice(12)]?.isSecret??!1}function h(e){let t=e.match(r);if(!t)return null;let n=t[1];if(!n.startsWith(`environment.`)){let e=o.serviceBuiltins[n];return e?g(e):null}let i=n.slice(12),a=o.meta[i];if(!a||a.isSecret)return null;let s=o.resolvedEnv[i];return s?g(s):null}function g(e){return e.length>P?`${e.slice(0,P)}…`:e}function _(e){if(te.value=e.query,y)y=!1,l.value=``;else{let t=e.query.match(a);l.value=(t?t[1]:e.query).replace(/^(environment|service)\./,``).trim()}s(`search`,l.value),u()}let y=!1;function oe(){y=!0,s(`focus`)}function b(e){let t=te.value,n=t.lastIndexOf(`{{`);s(`update:modelValue`,n===-1?e:t.slice(0,n)+e),s(`picked`)}return(e,n)=>(i(),S(w(O),{"input-id":t.inputId,"model-value":t.modelValue,suggestions:ne.value,"option-group-label":`label`,"option-group-children":`items`,placeholder:t.placeholder,class:`w-full`,"complete-on-focus":``,disabled:t.disabled,"onUpdate:modelValue":n[0]||=e=>s(`update:modelValue`,e),onComplete:_,onItemSelect:n[1]||=e=>b(e.value),onFocus:oe,onBlur:n[2]||=e=>s(`blur`)},{optiongroup:p(({option:e})=>[d(`span`,M,x(e.label),1)]),option:p(({option:e})=>[d(`span`,ue,[c(w(v),{severity:`secondary`,value:ie(e)},null,8,[`value`]),m(e)?(i(),f(`i`,de)):h(e)?(i(),f(`span`,N,x(h(e)),1)):C(``,!0)])]),_:1},8,[`input-id`,`model-value`,`suggestions`,`placeholder`,`disabled`]))}}),[[`__scopeId`,`data-v-322f20cf`]]),fe={class:`key-row`},pe={class:`expansion-field expansion-field--key`},me=[`for`],he={key:2,class:`value-display`},I={key:0,class:`expansion-field expansion-field--toggle`},ge={class:`expansion-label`,for:`varrow-secret`},_e={key:1,class:`expansion-field expansion-field--toggle`},L=[`title`],R={key:2,class:`key-row-delete`},ve={key:0,class:`not-secret-warning`},ye={class:`expansion-section`},z={class:`section-title`},B={class:`section-fields`},V={class:`expansion-field expansion-field--prepost`},be={class:`expansion-label`,for:`varrow-prefix`},xe={key:2,class:`value-display`},Se={class:`expansion-field expansion-field--value`},H=[`for`],Ce=[`aria-label`],U={class:`value-help`},we={class:`value-help__title`},Te={class:`value-help__line`},Ee={class:`value-help__line value-help__line--muted`},De={class:`value-help__subtitle`},Oe={class:`value-help__builtins`},ke={class:`value-help__line value-help__line--muted`},Ae={key:0,class:`secret-input-wrap`},je=[`disabled`],Me=[`title`],Ne={key:1,class:`value-display value-display--with-actions`},Pe={key:0,class:`value-actions`},Fe={key:0},Ie={key:1},Le={class:`expansion-field expansion-field--prepost`},Re={class:`expansion-label`,for:`varrow-suffix`},ze={key:2,class:`value-display`},Be={key:0,class:`preview-value`},Ve={key:0,class:`prepost-part prepost-part--pre`},He={key:1,class:`prepost-part prepost-part--interpolation`},Ue={class:`prepost-part--value prepost-resolved-inline`},We=[`title`],Ge={key:2,class:`prepost-part prepost-part--value`},Ke={key:3,class:`prepost-part prepost-part--post`},qe={key:1,class:`expansion-section`},Je={class:`section-header`},Ye={class:`section-title`},Xe={class:`section-fields`},Ze={class:`expansion-field expansion-field--prepost`},Qe={class:`expansion-label`,for:`varrow-override-prefix`},$e={class:`expansion-field expansion-field--value`},et=[`for`],tt={key:0,class:`secret-input-wrap`},nt=[`disabled`],rt=[`title`],it={class:`expansion-field expansion-field--prepost`},at={class:`expansion-label`,for:`varrow-override-suffix`},ot={key:1,class:`override-view`},st={key:0,class:`value-display--with-actions`},ct={class:`value-actions`},lt={key:0,class:`override-value-masked`},ut={key:1,class:`override-value`},dt={key:1,class:`override-value`},ft={key:1,class:`override-empty`},pt={key:0,class:`preview-value preview-value--override`},mt={key:0,class:`prepost-part prepost-part--pre`},ht={key:1,class:`prepost-part prepost-part--interpolation`},gt={key:0,class:`prepost-part--value prepost-resolved-inline`},_t={key:2,class:`prepost-part prepost-part--value`},vt={key:3,class:`prepost-part prepost-part--post`},yt=`{{environment.KEY}}`,W=s(r({__name:`VariableRowEditor`,props:{environmentId:{},variableId:{},overrides:{},editable:{type:Boolean,default:!0},showOverrides:{type:Boolean,default:!1},canEditSource:{type:Boolean,default:!1},showDelete:{type:Boolean,default:!0},showOverrideBadge:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},resolvedEnv:{default:()=>({})},autocompleteEnabled:{type:Boolean,default:!1},autocompleteSuggestions:{default:()=>[]},autocompleteMeta:{default:()=>({})},serviceBuiltins:{default:()=>({})},isPending:{type:Boolean,default:!1}},emits:[`deleted`,`saved`,`autocomplete-search`,`override-changed`,`edit-source`],setup(t,{emit:n}){let r=/^\{\{(.+)\}\}$/,a=/^\{\{environment\.(.+)\}\}$/,s=t,u=n,g=ee(),_=ne(),{t:T}=ae(),E=e(!1),D=e(!1),k=e(!1),A=e(!1),j=e(!1),M=e(null);function ue(e,t){navigator.clipboard.writeText(t),M.value=e,setTimeout(()=>{M.value===e&&(M.value=null)},1500)}let de=m(()=>g.getById(s.environmentId)?.variables?.[s.variableId]),N=e(``),P=e(``),W=e(``),G=e(``),bt=e(!1),xt=e(!1),St=m(()=>Z(P.value)),K=m(()=>bt.value&&!St.value);function Ct(){let e=de.value;N.value=e?.key??``,P.value=e?.value?.value??``,W.value=e?.value?.pre??``,G.value=e?.value?.post??``,bt.value=e?.value?.isSecret??!1,xt.value=e?.value?.injectIntoAi??!1}l(Ct),se(de,(e,t)=>{!t&&e&&Ct()});let q=m(()=>s.overrides[s.variableId]??null),J=e(``),Y=e(``),X=e(``);function wt(){let e=q.value;J.value=e?.pre??``,Y.value=e?.value??``,X.value=e?.post??``}l(wt),se(q,wt);function Z(e){return r.test(e)}function Tt(e){let t=e.match(r);return t?t[1].replace(/^environment\./,``):e}function Et(e){return e.replace(/\{\{environment\.([^}]+)\}\}/g,(e,t)=>s.resolvedEnv[t]??e)}function Dt(e){let t=e.match(a);return t?s.resolvedEnv[t[1]]??null:null}function Ot(e){let t=e.value;N.value=t,P.value=`{{environment.${t}}}`,bt.value=!1;let n=s.autocompleteMeta?.[t];n&&(W.value=n.pre,G.value=n.post),Q()}let kt=e(null),At=m(()=>oe.map(e=>({ref:`{{${e.name}}}`,desc:T(`builtins.${e.descriptionKey}`)})));async function Q(){if(E.value)return;let e=N.value.trim();if(e){E.value=!0;try{await g.upsertVariable(s.environmentId,s.variableId,{key:e,value:{value:P.value,pre:W.value,post:G.value,isSecret:K.value,injectIntoAi:xt.value}}),s.isPending&&u(`saved`)}catch(e){_.add({severity:`error`,summary:T(`common.error`),detail:e.message??T(`variableRowEditor.saveError`),life:4e3})}finally{E.value=!1}}}async function jt(){if(s.isPending){u(`deleted`);return}E.value=!0;try{q.value&&await g.removeOverride(s.variableId),await g.removeVariable(s.environmentId,s.variableId),u(`deleted`)}catch(e){_.add({severity:`error`,summary:T(`common.error`),detail:e.message??T(`variableRowEditor.deleteError`),life:4e3})}finally{E.value=!1}}async function $(){let e=J.value||Y.value||X.value;try{if(!e){q.value&&(await g.removeOverride(s.variableId),u(`override-changed`));return}await g.setOverride(s.variableId,{value:{value:Y.value,pre:J.value,post:X.value,isSecret:K.value}}),u(`override-changed`)}catch(e){_.add({severity:`error`,summary:T(`common.error`),detail:e.message??T(`variableRowEditor.overrideError`),life:4e3})}}async function Mt(){try{await g.removeOverride(s.variableId),u(`override-changed`)}catch(e){_.add({severity:`error`,summary:T(`common.error`),detail:e.message??T(`variableRowEditor.clearOverrideError`),life:4e3})}}function Nt(e){let t=e.relatedTarget;(!t||!e.currentTarget.contains(t))&&Q()}return(e,n)=>(i(),f(`div`,{class:`expansion-form`,onFocusout:Nt},[d(`div`,fe,[d(`div`,pe,[d(`label`,{class:`expansion-label`,for:t.editable&&t.autocompleteEnabled?`varrow-key-ac`:`varrow-key-input`},x(w(T)(`common.key`)),9,me),t.editable&&t.autocompleteEnabled?(i(),S(w(O),{key:0,"input-id":`varrow-key-ac`,modelValue:N.value,"onUpdate:modelValue":n[0]||=e=>N.value=e,suggestions:t.autocompleteSuggestions,placeholder:w(T)(`variableRowEditor.variableNamePlaceholder`),class:`w-full`,disabled:t.disabled,onComplete:n[1]||=e=>u(`autocomplete-search`,e.query),onItemSelect:Ot,onBlur:Q},null,8,[`modelValue`,`suggestions`,`placeholder`,`disabled`])):t.editable?(i(),S(w(b),{key:1,id:`varrow-key-input`,modelValue:N.value,"onUpdate:modelValue":n[2]||=e=>N.value=e,placeholder:w(T)(`variableRowEditor.variableNamePlaceholder`),class:`w-full`,disabled:t.disabled,onBlur:Q},null,8,[`modelValue`,`placeholder`,`disabled`])):(i(),f(`code`,he,x(N.value),1))]),t.editable&&!St.value?(i(),f(`div`,I,[d(`label`,ge,x(w(T)(`variableRowEditor.secret`)),1),c(w(le),{"input-id":`varrow-secret`,modelValue:bt.value,"onUpdate:modelValue":[n[3]||=e=>bt.value=e,Q],disabled:t.disabled},null,8,[`modelValue`,`disabled`])])):C(``,!0),t.editable?(i(),f(`div`,_e,[d(`label`,{class:`expansion-label`,for:`varrow-injectai`,title:w(T)(`variableRowEditor.injectIntoAiHint`)},x(w(T)(`variableRowEditor.injectIntoAi`)),9,L),c(w(le),{"input-id":`varrow-injectai`,modelValue:xt.value,"onUpdate:modelValue":[n[4]||=e=>xt.value=e,Q],disabled:t.disabled},null,8,[`modelValue`,`disabled`])])):C(``,!0),t.showDelete&&t.editable?(i(),f(`div`,R,[c(w(o),{icon:`pi pi-trash`,severity:`danger`,text:``,rounded:``,size:`small`,disabled:t.disabled||E.value,onClick:jt},null,8,[`disabled`])])):C(``,!0)]),t.editable&&!bt.value&&!Z(P.value)?(i(),f(`div`,ve,[n[53]||=d(`i`,{class:`pi pi-info-circle`},null,-1),d(`span`,null,x(w(T)(`variableRowEditor.notSecretWarning`)),1)])):C(``,!0),d(`div`,ye,[d(`div`,z,x(w(T)(`variableRowEditor.value`)),1),d(`div`,B,[d(`div`,V,[d(`label`,be,x(w(T)(`variableRowEditor.prefix`)),1),t.editable&&t.autocompleteEnabled?(i(),S(F,{key:0,"input-id":`varrow-prefix`,modelValue:W.value,"onUpdate:modelValue":n[5]||=e=>W.value=e,placeholder:w(T)(`variableRowEditor.prefixPlaceholder`),"env-keys":t.autocompleteSuggestions,meta:t.autocompleteMeta,"resolved-env":t.resolvedEnv,"service-builtins":t.serviceBuiltins,disabled:t.disabled,onSearch:n[6]||=e=>u(`autocomplete-search`,e),onBlur:n[7]||=e=>Q(),onPicked:n[8]||=e=>Q()},null,8,[`modelValue`,`placeholder`,`env-keys`,`meta`,`resolved-env`,`service-builtins`,`disabled`])):t.editable?(i(),S(w(b),{key:1,id:`varrow-prefix`,modelValue:W.value,"onUpdate:modelValue":n[9]||=e=>W.value=e,placeholder:w(T)(`variableRowEditor.prefixPlaceholder`),class:`w-full`,disabled:t.disabled,onBlur:Q},null,8,[`modelValue`,`placeholder`,`disabled`])):(i(),f(`code`,xe,x(W.value||`—`),1))]),d(`div`,Se,[d(`label`,{class:`expansion-label`,for:K.value?`varrow-value-secret`:`varrow-value-plain`},[ce(x(w(T)(`variableRowEditor.value`))+` `,1),t.editable?(i(),f(`button`,{key:0,type:`button`,class:`value-help-btn`,"aria-label":w(T)(`variableRowEditor.helpTitle`),onClick:n[10]||=ie(e=>kt.value?.toggle(e),[`prevent`,`stop`])},[...n[54]||=[d(`i`,{class:`pi pi-info-circle`},null,-1)]],8,Ce)):C(``,!0)],8,H),c(w(re),{ref_key:`valueHelp`,ref:kt},{default:p(()=>[d(`div`,U,[d(`div`,we,x(w(T)(`variableRowEditor.helpTitle`)),1),d(`p`,Te,[ce(x(w(T)(`variableRowEditor.helpReference`))+` `,1),d(`code`,null,x(yt))]),d(`p`,Ee,x(w(T)(`variableRowEditor.helpAutocomplete`)),1),d(`div`,De,x(w(T)(`variableRowEditor.helpBuiltinsTitle`)),1),d(`ul`,Oe,[(i(!0),f(y,null,te(At.value,e=>(i(),f(`li`,{key:e.ref},[d(`code`,null,x(e.ref),1),d(`span`,null,x(e.desc),1)]))),128))]),d(`p`,ke,x(w(T)(`variableRowEditor.helpPrePost`)),1)])]),_:1},512),t.editable?(i(),f(y,{key:0},[K.value?(i(),f(`div`,Ae,[c(w(b),{id:`varrow-value-secret`,modelValue:P.value,"onUpdate:modelValue":n[11]||=e=>P.value=e,type:A.value?`text`:`password`,placeholder:w(T)(`variableRowEditor.valuePlaceholder`),class:`w-full`,disabled:t.disabled,onBlur:Q},null,8,[`modelValue`,`type`,`placeholder`,`disabled`]),d(`button`,{type:`button`,class:`secret-toggle`,disabled:t.disabled,onClick:n[12]||=e=>A.value=!A.value,tabindex:`-1`},[d(`i`,{class:h(A.value?`pi pi-eye-slash`:`pi pi-eye`)},null,2)],8,je)])):Z(P.value)&&!D.value?(i(),f(`span`,{key:1,class:`interpolation-badge`,title:P.value,onClick:n[13]||=e=>D.value=!0},[c(w(v),{severity:`secondary`,value:Tt(P.value)},null,8,[`value`]),n[55]||=d(`i`,{class:`pi pi-pencil interpolation-edit-icon`},null,-1)],8,Me)):t.autocompleteEnabled?(i(),S(F,{key:2,"input-id":`varrow-value-plain`,modelValue:P.value,"onUpdate:modelValue":n[14]||=e=>P.value=e,placeholder:w(T)(`variableRowEditor.valuePlaceholder`),"env-keys":t.autocompleteSuggestions,meta:t.autocompleteMeta,"resolved-env":t.resolvedEnv,"service-builtins":t.serviceBuiltins,disabled:t.disabled,onSearch:n[15]||=e=>u(`autocomplete-search`,e),onFocus:n[16]||=e=>D.value=!0,onBlur:n[17]||=e=>{D.value=!1,Q()},onPicked:n[18]||=e=>Q()},null,8,[`modelValue`,`placeholder`,`env-keys`,`meta`,`resolved-env`,`service-builtins`,`disabled`])):(i(),S(w(b),{key:3,id:`varrow-value-plain`,modelValue:P.value,"onUpdate:modelValue":n[19]||=e=>P.value=e,placeholder:w(T)(`variableRowEditor.valuePlaceholder`),class:`w-full`,disabled:t.disabled,onFocus:n[20]||=e=>D.value=!0,onBlur:n[21]||=e=>{D.value=!1,Q()}},null,8,[`modelValue`,`placeholder`,`disabled`]))],64)):(i(),f(`span`,Ne,[P.value?(i(),f(`span`,Pe,[K.value?(i(),f(`i`,{key:0,class:h([A.value?`pi pi-eye-slash`:`pi pi-eye`,`action-icon`]),onClick:n[22]||=e=>A.value=!A.value},null,2)):C(``,!0),d(`i`,{class:h([M.value===`val`?`pi pi-check`:`pi pi-copy`,`action-icon`]),onClick:n[23]||=e=>ue(`val`,W.value+P.value+G.value)},null,2)])):C(``,!0),Z(P.value)?(i(),S(w(v),{key:1,severity:`secondary`,value:Tt(P.value)},null,8,[`value`])):K.value?(i(),f(y,{key:2},[A.value?(i(),f(`span`,Ie,x(P.value),1)):(i(),f(`span`,Fe,`***`))],64)):(i(),f(y,{key:3},[ce(x(P.value),1)],64))]))]),d(`div`,Le,[d(`label`,Re,x(w(T)(`variableRowEditor.suffix`)),1),t.editable&&t.autocompleteEnabled?(i(),S(F,{key:0,"input-id":`varrow-suffix`,modelValue:G.value,"onUpdate:modelValue":n[24]||=e=>G.value=e,placeholder:w(T)(`variableRowEditor.suffixPlaceholder`),"env-keys":t.autocompleteSuggestions,meta:t.autocompleteMeta,"resolved-env":t.resolvedEnv,"service-builtins":t.serviceBuiltins,disabled:t.disabled,onSearch:n[25]||=e=>u(`autocomplete-search`,e),onBlur:n[26]||=e=>Q(),onPicked:n[27]||=e=>Q()},null,8,[`modelValue`,`placeholder`,`env-keys`,`meta`,`resolved-env`,`service-builtins`,`disabled`])):t.editable?(i(),S(w(b),{key:1,id:`varrow-suffix`,modelValue:G.value,"onUpdate:modelValue":n[28]||=e=>G.value=e,placeholder:w(T)(`variableRowEditor.suffixPlaceholder`),class:`w-full`,disabled:t.disabled,onBlur:Q},null,8,[`modelValue`,`placeholder`,`disabled`])):(i(),f(`code`,ze,x(G.value||`—`),1))])]),K.value?C(``,!0):(i(),f(`code`,Be,[W.value?(i(),f(`span`,Ve,x(Et(W.value)),1)):C(``,!0),Z(P.value)?(i(),f(`span`,He,[Dt(P.value)==null?(i(),f(y,{key:1},[c(w(v),{severity:`secondary`,value:Tt(P.value),style:{"font-size":`0.7rem`}},null,8,[`value`]),n[56]||=d(`span`,{class:`prepost-unresolved`},`(?)`,-1)],64)):(i(),f(y,{key:0},[d(`span`,Ue,x(Dt(P.value)),1),t.canEditSource?(i(),f(`i`,{key:0,class:`pi pi-pencil edit-source-icon`,title:w(T)(`variablesTable.editParentTitle`),onClick:n[29]||=ie(e=>u(`edit-source`),[`stop`])},null,8,We)):C(``,!0)],64))])):(i(),f(`span`,Ge,x(Et(P.value)||`…`),1)),G.value?(i(),f(`span`,Ke,x(Et(G.value)),1)):C(``,!0)]))]),t.showOverrides&&N.value?.trim()?(i(),f(`div`,qe,[d(`div`,Je,[d(`div`,Ye,x(w(T)(`variableRowEditor.localOverride`)),1),t.editable&&q.value?(i(),S(w(o),{key:0,icon:`pi pi-times`,text:``,rounded:``,size:`small`,severity:`danger`,title:w(T)(`variableRowEditor.clearOverride`),disabled:t.disabled,onClick:Mt},null,8,[`title`,`disabled`])):C(``,!0)]),d(`div`,Xe,[t.editable?(i(),f(y,{key:0},[d(`div`,Ze,[d(`label`,Qe,x(w(T)(`variableRowEditor.prefix`)),1),t.autocompleteEnabled?(i(),S(F,{key:0,"input-id":`varrow-override-prefix`,modelValue:J.value,"onUpdate:modelValue":n[30]||=e=>J.value=e,placeholder:w(T)(`variableRowEditor.prefixPlaceholder`),"env-keys":t.autocompleteSuggestions,meta:t.autocompleteMeta,"resolved-env":t.resolvedEnv,"service-builtins":t.serviceBuiltins,disabled:t.disabled,onSearch:n[31]||=e=>u(`autocomplete-search`,e),onBlur:n[32]||=e=>$(),onPicked:n[33]||=e=>$()},null,8,[`modelValue`,`placeholder`,`env-keys`,`meta`,`resolved-env`,`service-builtins`,`disabled`])):(i(),S(w(b),{key:1,id:`varrow-override-prefix`,modelValue:J.value,"onUpdate:modelValue":n[34]||=e=>J.value=e,placeholder:w(T)(`variableRowEditor.prefixPlaceholder`),class:`w-full`,disabled:t.disabled,onBlur:$},null,8,[`modelValue`,`placeholder`,`disabled`]))]),d(`div`,$e,[d(`label`,{class:`expansion-label`,for:K.value?`varrow-override-value-secret`:`varrow-override-value-plain`},x(w(T)(`variableRowEditor.value`)),9,et),K.value?(i(),f(`div`,tt,[c(w(b),{id:`varrow-override-value-secret`,modelValue:Y.value,"onUpdate:modelValue":n[35]||=e=>Y.value=e,type:j.value?`text`:`password`,placeholder:w(T)(`variableRowEditor.overrideValuePlaceholder`),class:`w-full`,disabled:t.disabled,onBlur:$},null,8,[`modelValue`,`type`,`placeholder`,`disabled`]),d(`button`,{type:`button`,class:`secret-toggle`,disabled:t.disabled,onClick:n[36]||=e=>j.value=!j.value,tabindex:`-1`},[d(`i`,{class:h(j.value?`pi pi-eye-slash`:`pi pi-eye`)},null,2)],8,nt)])):Z(Y.value)&&!k.value?(i(),f(`span`,{key:1,class:`interpolation-badge`,title:Y.value,onClick:n[37]||=e=>k.value=!0},[c(w(v),{severity:`secondary`,value:Tt(Y.value)},null,8,[`value`]),n[57]||=d(`i`,{class:`pi pi-pencil interpolation-edit-icon`},null,-1)],8,rt)):t.autocompleteEnabled?(i(),S(F,{key:2,"input-id":`varrow-override-value-plain`,modelValue:Y.value,"onUpdate:modelValue":n[38]||=e=>Y.value=e,placeholder:w(T)(`variableRowEditor.overrideValuePlaceholder`),"env-keys":t.autocompleteSuggestions,meta:t.autocompleteMeta,"resolved-env":t.resolvedEnv,"service-builtins":t.serviceBuiltins,disabled:t.disabled,onSearch:n[39]||=e=>u(`autocomplete-search`,e),onFocus:n[40]||=e=>k.value=!0,onBlur:n[41]||=e=>{k.value=!1,$()},onPicked:n[42]||=e=>$()},null,8,[`modelValue`,`placeholder`,`env-keys`,`meta`,`resolved-env`,`service-builtins`,`disabled`])):(i(),S(w(b),{key:3,id:`varrow-override-value-plain`,modelValue:Y.value,"onUpdate:modelValue":n[43]||=e=>Y.value=e,placeholder:w(T)(`variableRowEditor.overrideValuePlaceholder`),class:`w-full`,disabled:t.disabled,onFocus:n[44]||=e=>k.value=!0,onBlur:n[45]||=e=>{k.value=!1,$()}},null,8,[`modelValue`,`placeholder`,`disabled`]))]),d(`div`,it,[d(`label`,at,x(w(T)(`variableRowEditor.suffix`)),1),t.autocompleteEnabled?(i(),S(F,{key:0,"input-id":`varrow-override-suffix`,modelValue:X.value,"onUpdate:modelValue":n[46]||=e=>X.value=e,placeholder:w(T)(`variableRowEditor.suffixPlaceholder`),"env-keys":t.autocompleteSuggestions,meta:t.autocompleteMeta,"resolved-env":t.resolvedEnv,"service-builtins":t.serviceBuiltins,disabled:t.disabled,onSearch:n[47]||=e=>u(`autocomplete-search`,e),onBlur:n[48]||=e=>$(),onPicked:n[49]||=e=>$()},null,8,[`modelValue`,`placeholder`,`env-keys`,`meta`,`resolved-env`,`service-builtins`,`disabled`])):(i(),S(w(b),{key:1,id:`varrow-override-suffix`,modelValue:X.value,"onUpdate:modelValue":n[50]||=e=>X.value=e,placeholder:w(T)(`variableRowEditor.suffixPlaceholder`),class:`w-full`,disabled:t.disabled,onBlur:$},null,8,[`modelValue`,`placeholder`,`disabled`]))])],64)):(i(),f(`div`,ot,[q.value?(i(),f(`span`,st,[d(`span`,ct,[K.value||q.value.isSecret?(i(),f(`i`,{key:0,class:h([j.value?`pi pi-eye-slash`:`pi pi-eye`,`action-icon`]),onClick:n[51]||=e=>j.value=!j.value},null,2)):C(``,!0),d(`i`,{class:h([M.value===`ovr`?`pi pi-check`:`pi pi-copy`,`action-icon`]),onClick:n[52]||=e=>ue(`ovr`,q.value.pre+q.value.value+q.value.post)},null,2)]),K.value||q.value.isSecret?(i(),f(y,{key:0},[j.value?(i(),f(`code`,ut,x(q.value.pre)+x(q.value.value)+x(q.value.post),1)):(i(),f(`span`,lt,`***`))],64)):(i(),f(`code`,dt,x(q.value.pre)+x(q.value.value)+x(q.value.post),1))])):(i(),f(`span`,ft,`—`))]))]),t.editable&&!K.value&&(J.value||Y.value||X.value)?(i(),f(`code`,pt,[J.value?(i(),f(`span`,mt,x(Et(J.value)),1)):C(``,!0),Z(Y.value)?(i(),f(`span`,ht,[Dt(Y.value)==null?(i(),f(y,{key:1},[c(w(v),{severity:`secondary`,value:Tt(Y.value),style:{"font-size":`0.7rem`}},null,8,[`value`]),n[58]||=d(`span`,{class:`prepost-unresolved`},`(?)`,-1)],64)):(i(),f(`span`,gt,x(Dt(Y.value)),1))])):(i(),f(`span`,_t,x(Et(Y.value)||`…`),1)),X.value?(i(),f(`span`,vt,x(Et(X.value)),1)):C(``,!0)])):C(``,!0)])):C(``,!0)],32))}}),[[`__scopeId`,`data-v-73035c6d`]]),G={class:`table-toolbar`},bt={key:0,class:`overrides-filter`},xt={for:`overrides-filter`},St={class:`text-center py-4 text-gray-500`},K={class:`row-key-cell`},Ct={class:`row-key-line`},q={class:`row-key`},J=[`title`],Y=[`title`],X={key:1,class:`resolved-from-line`},wt={class:`row-value`},Z=[`title`,`onClick`],Tt=[`title`,`onClick`],Et={key:1,class:`value-levels`},Dt={class:`resolved-level`},Ot={key:0,class:`secret-mask`},kt=[`title`],At={key:0,class:`secret-mask`},Q=[`title`],jt=[`title`],$={key:6,class:`empty-value`},Mt={key:0,class:`override-indicator`},Nt=[`title`,`onClick`],Pt=[`title`,`onClick`],Ft={key:0,class:`override-value-masked`},It=[`title`],Lt=[`title`],Rt={key:0,class:`parent-edit`},zt={class:`parent-edit__field`},Bt={class:`parent-edit__label`,for:`parent-edit-value`},Vt={class:`parent-edit__usages`},Ht={class:`parent-edit__usages-title`},Ut={key:0,class:`parent-edit__usages-loading`},Wt={key:0,class:`parent-edit__usage-list`},Gt={class:`parent-edit__usage-env`},Kt={key:0,class:`parent-edit__usage-svc`},qt={key:1,class:`parent-edit__usages-empty`},Jt=40,Yt=200,Xt=24,Zt=s(r({__name:`VariablesTable`,props:{environmentId:{},resolvedEnv:{default:()=>({})},sources:{default:()=>({})},editable:{type:Boolean,default:!0},showOverrides:{type:Boolean,default:!1},showOverrideBadge:{type:Boolean,default:!1},showDelete:{type:Boolean,default:!0},showAddButton:{type:Boolean,default:!0},disabled:{type:Boolean,default:!1},autocompleteEnabled:{type:Boolean,default:!1},autocompleteSuggestions:{default:()=>[]},autocompleteMeta:{default:()=>({})},serviceBuiltins:{},scrollHeight:{default:`auto`}},emits:[`autocomplete-search`,`variables-changed`],setup(r,{emit:s}){let re=/^\{\{(.+)\}\}$/,u=/^\{\{environment\.(.+)\}\}$/,se=Object.fromEntries(oe.map(e=>[e.name,``])),O=r,k=s,{t:A}=ae(),M=ee(),ue=m(()=>Object.keys(O.sources).length>0),de=m(()=>Object.keys(O.resolvedEnv).length>0),N=_(`rootRef`),P=e(null),F=m(()=>O.scrollHeight===`auto`?P.value??`460px`:O.scrollHeight);function fe(){if(O.scrollHeight!==`auto`)return;let e=N.value;if(!e)return;let t=(e.querySelector(`.p-datatable-table-container`)??e).getBoundingClientRect().top,n=window.innerHeight-t-Xt;P.value=`${Math.max(Yt,Math.round(n))}px`}let pe=null;l(()=>{a(fe),window.addEventListener(`resize`,fe),typeof ResizeObserver<`u`&&N.value&&(pe=new ResizeObserver(()=>fe()),pe.observe(document.body))}),n(()=>{window.removeEventListener(`resize`,fe),pe?.disconnect(),pe=null});let me=e(``),he=e(!1),I=e({});async function ge(){if(O.showOverrides)try{let e=await M.getOverrides(),t={};for(let[n,r]of Object.entries(e)){let e=r;t[n]={value:e.value.value,pre:e.value.pre,post:e.value.post,isSecret:e.value.isSecret}}I.value=t}catch{}}l(ge);let _e=m(()=>M.getById(O.environmentId));function L(e){return _e.value?.variables?.[e]}let R=e([]),ve=m(()=>{let e=Object.keys(_e.value?.variables??{}).map(e=>({variableId:e})),t=new Set(e.map(e=>e.variableId)),n=R.value.filter(e=>!t.has(e)).map(e=>({variableId:e}));return[...e,...n]}),ye=_(`tableRef`),z=e({}),B=e([]),V=e(new Set);function be(e){let t=new Set(V.value);t.has(e)?t.delete(e):t.add(e),V.value=t}let xe=e(null);function Se(e,t){navigator.clipboard.writeText(t),xe.value=e,setTimeout(()=>{xe.value===e&&(xe.value=null)},1500)}function H(e){let t=L(e);if(!t)return``;let n=t.value?.value??``;return ze(n)?Ve(n)??n:(t.value?.pre??``)+n+(t.value?.post??``)}let Ce=ne(),U=e(null),we=e(!1),Te=e(!1),Ee=e(!1),De=0,Oe=e([]);async function ke(e){let t=O.sources[e]?.resolvedFrom,n=L(e)?.value?.value??``;if(!t||!n)return;let r=Be(n),i=M.getById(t.environmentId),a=Object.entries(i?.variables??{}).find(([,e])=>e.key===r);if(!a){Ce.add({severity:`warn`,summary:A(`variablesTable.editParentNotFound`),life:4e3});return}let[o,s]=a;U.value={key:r,environmentId:t.environmentId,environmentName:t.environmentName,variableId:o,value:s.value?.value??``,pre:s.value?.pre??``,post:s.value?.post??``,isSecret:s.value?.isSecret??!1,injectIntoAi:s.value?.injectIntoAi??!1},Oe.value=[],we.value=!0,Ae(r,t.environmentId)}async function Ae(e,t){let n=++De;Ee.value=!0;try{let r=M.currentProjectId;if(!r)return;let i=await M.keyUsages(r,e,t);if(n!==De)return;Oe.value=[...i.inheritedBy.map(e=>({kind:`inherits`,environmentName:e.environmentName,...e.serviceName?{serviceName:e.serviceName}:{}})),...i.definedIn.map(e=>({kind:`defines`,environmentName:e.environmentName,...e.serviceName?{serviceName:e.serviceName}:{}})),...i.referencedBy.map(e=>({kind:`references`,environmentName:e.environmentName,...e.serviceName?{serviceName:e.serviceName}:{},viaKey:e.key}))]}catch{n===De&&(Oe.value=[])}finally{n===De&&(Ee.value=!1)}}async function je(){let e=U.value;if(e){Te.value=!0;try{await M.upsertVariable(e.environmentId,e.variableId,{key:e.key,value:{value:e.value,pre:e.pre,post:e.post,isSecret:e.isSecret,injectIntoAi:e.injectIntoAi}}),we.value=!1,k(`variables-changed`)}catch(e){Ce.add({severity:`error`,summary:A(`common.error`),detail:e.message,life:4e3})}finally{Te.value=!1}}}function Me(e){let t=I.value[e];return t?t.pre+t.value+t.post:``}let Ne=m(()=>{let e=[...ve.value];if(he.value&&(e=e.filter(e=>!!I.value[e.variableId])),me.value.trim()){let t=me.value.toLowerCase();e=e.filter(e=>{let n=L(e.variableId);if(!n)return!1;if(n.key.toLowerCase().includes(t)||(n.value?.value??``).toLowerCase().includes(t))return!0;let r=I.value[e.variableId];return!!(r&&r.value.toLowerCase().includes(t))})}return B.value.length>0?e.sort((e,t)=>{let n=B.value.indexOf(e.variableId),r=B.value.indexOf(t.variableId);return n===-1?1:r===-1?-1:n-r}):e.sort((e,t)=>{let n=L(e.variableId)?.key??``,r=L(t.variableId)?.key??``;return n?r?n.localeCompare(r):-1:1}),e});function Pe(e){let t=e.data.variableId;z.value[t]?(z.value={},B.value=[],Fe(t)):(B.value=Ne.value.map(e=>e.variableId),z.value={[t]:!0})}function Fe(e){a(()=>{let t=ye.value?.$el;if(!t)return;let n=Ne.value.findIndex(t=>t.variableId===e);n<0||t.querySelectorAll(`tbody tr[data-p-index]`)[n]?.scrollIntoView({block:`nearest`,behavior:`smooth`})})}function Ie(e){R.value=R.value.filter(t=>t!==e),z.value[e]&&(z.value={},B.value=[])}function Le(e){R.value=R.value.filter(t=>t!==e)}function Re(){let e=T();R.value=[...R.value,e],B.value=[...ve.value.map(e=>e.variableId),e],a(()=>{z.value={[e]:!0},a(()=>{let e=document.querySelector(`.variables-expand-table .p-datatable-row-expansion:last-of-type`);e&&e.scrollIntoView({block:`nearest`,behavior:`smooth`})})})}function ze(e){return re.test(e)}function Be(e){let t=e.match(re);return t?t[1].replace(/^(?:environment|service)\./,``):e}function Ve(e){let t=e.match(u);if(t)return O.resolvedEnv[t[1]]??null;let n=e.match(re);if(n){let e={...se,...O.serviceBuiltins};if(e[n[1]])return e[n[1]]}return null}function He(e){return e.length<=Jt?e:e.substring(0,Jt)+`…`}return(e,n)=>(i(),f(y,null,[d(`div`,{ref_key:`rootRef`,ref:N,class:`variables-table`},[d(`div`,G,[c(w(b),{modelValue:me.value,"onUpdate:modelValue":n[0]||=e=>me.value=e,placeholder:`Search variables...`,class:`search-input`,size:`small`},null,8,[`modelValue`]),r.showOverrides?(i(),f(`div`,bt,[c(w(le),{modelValue:he.value,"onUpdate:modelValue":n[1]||=e=>he.value=e,"input-id":`overrides-filter`},null,8,[`modelValue`]),d(`label`,xt,x(w(A)(`variablesTable.overriddenOnly`)),1)])):C(``,!0)]),c(w(E),{ref_key:`tableRef`,ref:ye,"expanded-rows":z.value,"onUpdate:expandedRows":n[5]||=e=>z.value=e,value:Ne.value,"data-key":`variableId`,class:`p-datatable-sm variables-expand-table`,scrollable:``,"scroll-height":F.value,onRowClick:Pe},{empty:p(()=>[d(`div`,St,x(r.showAddButton?w(A)(`variablesTable.empty`):w(A)(`variablesTable.emptyReadonly`)),1)]),expansion:p(({data:e})=>[c(W,{"environment-id":r.environmentId,"variable-id":e.variableId,overrides:I.value,editable:r.editable,"show-overrides":r.showOverrides,"show-delete":r.showDelete,"show-override-badge":r.showOverrideBadge,disabled:r.disabled,"resolved-env":r.resolvedEnv,"autocomplete-enabled":r.autocompleteEnabled,"autocomplete-suggestions":r.autocompleteSuggestions,"autocomplete-meta":r.autocompleteMeta,"service-builtins":{...w(se),...r.serviceBuiltins},"is-pending":R.value.includes(e.variableId),onDeleted:t=>Ie(e.variableId),onSaved:t=>Le(e.variableId),onAutocompleteSearch:n[4]||=e=>k(`autocomplete-search`,e),onOverrideChanged:ge,"can-edit-source":!!r.sources[e.variableId]?.resolvedFrom,onEditSource:t=>ke(e.variableId)},null,8,[`environment-id`,`variable-id`,`overrides`,`editable`,`show-overrides`,`show-delete`,`show-override-badge`,`disabled`,`resolved-env`,`autocomplete-enabled`,`autocomplete-suggestions`,`autocomplete-meta`,`service-builtins`,`is-pending`,`onDeleted`,`onSaved`,`can-edit-source`,`onEditSource`])]),default:p(()=>[c(w(D),{expander:``,style:{width:`2.5rem`}}),c(w(D),{field:`variableId`,header:w(A)(`common.key`)},{body:p(({data:e})=>[d(`div`,K,[d(`span`,Ct,[d(`code`,q,x(L(e.variableId)?.key||`(new variable)`),1),r.sources[e.variableId]?.overriddenBy?(i(),f(`span`,{key:0,class:`overridden-badge overridden-badge--local`,title:w(A)(`variablesTable.localOverrideTooltip`,{env:r.sources[e.variableId].overriddenBy.environmentName})},[n[9]||=d(`i`,{class:`pi pi-desktop`},null,-1),ce(` `+x(w(A)(`variablesTable.localOverride`)),1)],8,J)):r.showOverrideBadge&&r.sources[e.variableId]?.overridden&&!ze(L(e.variableId)?.value?.value??``)?(i(),f(`span`,{key:1,class:`overridden-badge`,title:w(A)(`variablesTable.overrideTooltip`)},[n[10]||=d(`i`,{class:`pi pi-exclamation-triangle`},null,-1),ce(` `+x(w(A)(`variablesTable.override`)),1)],8,Y)):C(``,!0)]),ue.value&&r.sources[e.variableId]?(i(),S(j,{key:0,"environment-id":r.sources[e.variableId].environmentId,class:`source-badge`},null,8,[`environment-id`])):C(``,!0),ue.value&&r.sources[e.variableId]?.resolvedFrom?(i(),f(`span`,X,[n[11]||=d(`i`,{class:`pi pi-arrow-right resolved-from-arrow`},null,-1),c(j,{"environment-id":r.sources[e.variableId].resolvedFrom.environmentId,class:`source-badge`},null,8,[`environment-id`])])):C(``,!0)])]),_:1},8,[`header`]),c(w(D),{header:w(A)(`common.value`)},{body:p(({data:e})=>[d(`span`,wt,[H(e.variableId)?(i(),f(`span`,{key:0,class:`value-actions`,onClick:n[2]||=ie(()=>{},[`stop`])},[L(e.variableId)?.value?.isSecret?(i(),f(`i`,{key:0,class:h([V.value.has(e.variableId)?`pi pi-eye-slash`:`pi pi-eye`,`action-icon`]),title:w(A)(`variablesTable.reveal`),onClick:t=>be(e.variableId)},null,10,Z)):C(``,!0),d(`i`,{class:h([xe.value===e.variableId?`pi pi-check`:`pi pi-copy`,`action-icon`]),title:w(A)(`actions.copy`),onClick:t=>Se(e.variableId,H(e.variableId))},null,10,Tt)])):C(``,!0),ze(L(e.variableId)?.value?.value??``)&&Ve(L(e.variableId)?.value?.value??``)!=null?(i(),f(`span`,Et,[c(w(v),{severity:`secondary`,value:Be(L(e.variableId)?.value?.value??``),class:`interpolation-hint-tag`},null,8,[`value`]),d(`span`,Dt,[L(e.variableId)?.value?.isSecret&&!V.value.has(e.variableId)?(i(),f(`span`,Ot,`***`)):(i(),f(`code`,{key:1,class:`resolved-final`,title:Ve(L(e.variableId)?.value?.value??``)},x(He(Ve(L(e.variableId)?.value?.value??``))),9,kt))])])):ze(L(e.variableId)?.value?.value??``)&&de.value&&Ve(L(e.variableId)?.value?.value??``)==null?(i(),f(y,{key:2},[n[12]||=d(`i`,{class:`pi pi-exclamation-triangle unresolved-icon`},null,-1),c(w(v),{severity:`secondary`,value:Be(L(e.variableId)?.value?.value??``)},null,8,[`value`]),n[13]||=d(`span`,{class:`unresolved-msg`},`Variable not found in this environment`,-1)],64)):ze(L(e.variableId)?.value?.value??``)?(i(),S(w(v),{key:3,severity:`secondary`,value:Be(L(e.variableId)?.value?.value??``)},null,8,[`value`])):L(e.variableId)?.value?.isSecret?(i(),f(y,{key:4},[V.value.has(e.variableId)?(i(),f(`code`,{key:1,title:H(e.variableId)},x(He(H(e.variableId))),9,Q)):(i(),f(`span`,At,`***`))],64)):L(e.variableId)?.value?.value||L(e.variableId)?.value?.pre||L(e.variableId)?.value?.post?(i(),f(`code`,{key:5,title:H(e.variableId)},x(He(H(e.variableId))),9,jt)):(i(),f(`span`,$,`(empty)`))]),r.showOverrides&&!ze(L(e.variableId)?.value?.value??``)&&I.value[e.variableId]?(i(),f(`span`,Mt,[n[14]||=d(`i`,{class:`pi pi-arrow-right`,style:{"font-size":`0.7rem`}},null,-1),d(`span`,{class:`value-actions`,onClick:n[3]||=ie(()=>{},[`stop`])},[L(e.variableId)?.value?.isSecret||I.value[e.variableId].isSecret?(i(),f(`i`,{key:0,class:h([V.value.has(`ovr:`+e.variableId)?`pi pi-eye-slash`:`pi pi-eye`,`action-icon`]),title:w(A)(`variablesTable.reveal`),onClick:t=>be(`ovr:`+e.variableId)},null,10,Nt)):C(``,!0),d(`i`,{class:h([xe.value===`ovr:`+e.variableId?`pi pi-check`:`pi pi-copy`,`action-icon`]),title:w(A)(`actions.copy`),onClick:t=>Se(`ovr:`+e.variableId,Me(e.variableId))},null,10,Pt)]),L(e.variableId)?.value?.isSecret||I.value[e.variableId].isSecret?(i(),f(y,{key:0},[V.value.has(`ovr:`+e.variableId)?(i(),f(`code`,{key:1,class:`override-value`,title:Me(e.variableId)},x(He(Me(e.variableId))),9,It)):(i(),f(`span`,Ft,`***`))],64)):(i(),f(`code`,{key:1,class:`override-value`,title:Me(e.variableId)},x(He(Me(e.variableId))),9,Lt))])):C(``,!0)]),_:1},8,[`header`])]),_:1},8,[`expanded-rows`,`value`,`scroll-height`]),r.showAddButton?(i(),S(w(o),{key:0,type:`button`,label:w(A)(`variablesTable.addVariable`),icon:`pi pi-plus`,text:``,disabled:r.disabled,class:`mt-3`,onClick:Re},null,8,[`label`,`disabled`])):C(``,!0)],512),c(w(t),{visible:we.value,"onUpdate:visible":n[8]||=e=>we.value=e,modal:``,header:w(A)(`variablesTable.editParentHeader`),style:{width:`38rem`,maxWidth:`95vw`}},{footer:p(()=>[c(w(o),{label:w(A)(`actions.cancel`),text:``,disabled:Te.value,onClick:n[7]||=e=>we.value=!1},null,8,[`label`,`disabled`]),c(w(o),{label:w(A)(`variablesTable.editParentConfirm`),severity:`warn`,loading:Te.value,onClick:je},null,8,[`label`,`loading`])]),default:p(()=>[U.value?(i(),f(`div`,Rt,[c(w(g),{severity:`warn`,closable:!1,class:`parent-edit__warning`},{default:p(()=>[ce(x(w(A)(`variablesTable.editParentWarning`,{key:U.value.key,env:U.value.environmentName})),1)]),_:1}),d(`div`,zt,[d(`label`,Bt,x(w(A)(`common.value`)),1),c(w(b),{id:`parent-edit-value`,modelValue:U.value.value,"onUpdate:modelValue":n[6]||=e=>U.value.value=e,class:`w-full`,disabled:Te.value},null,8,[`modelValue`,`disabled`])]),d(`div`,Vt,[d(`div`,Ht,[n[15]||=d(`i`,{class:`pi pi-sitemap`},null,-1),ce(` `+x(w(A)(`variablesTable.editParentImpact`)),1)]),Ee.value?(i(),f(`div`,Ut,[n[16]||=d(`i`,{class:`pi pi-spin pi-spinner`},null,-1),d(`span`,null,x(w(A)(`variablesTable.editParentLoading`)),1)])):(i(),f(y,{key:1},[Oe.value.length?(i(),f(`ul`,Wt,[(i(!0),f(y,null,te(Oe.value,(e,t)=>(i(),f(`li`,{key:t},[c(w(v),{severity:e.kind===`references`?`info`:`secondary`,value:e.kind===`references`?e.viaKey:e.kind===`inherits`?w(A)(`variablesTable.editParentInherits`):w(A)(`variablesTable.editParentDefines`)},null,8,[`severity`,`value`]),d(`span`,Gt,x(e.environmentName),1),e.serviceName?(i(),f(`span`,Kt,x(e.serviceName),1)):C(``,!0)]))),128))])):(i(),f(`div`,qt,x(w(A)(`variablesTable.editParentNoUsage`)),1))],64))])])):C(``,!0)]),_:1},8,[`visible`,`header`])],64))}}),[[`__scopeId`,`data-v-78e9c98c`]]);export{j as n,Zt as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{Aa as e,Di as t,Gn as n,Ji as r,Mn as i,On as a,Ti as o,Tn as s,Wi as c,Xi as l,_i as u,bi as d,bn as f,da as p,di as m,er as h,mn as g,pi as _,va as v,vi as y,wi as b,yi as x,za as S,zt as C}from"./index-
|
|
1
|
+
import{Aa as e,Di as t,Gn as n,Ji as r,Mn as i,On as a,Ti as o,Tn as s,Wi as c,Xi as l,_i as u,bi as d,bn as f,da as p,di as m,er as h,mn as g,pi as _,va as v,vi as y,wi as b,yi as x,za as S,zt as C}from"./index-BPOeXMH7.js";import{t as w}from"./password-CrFWhx7M.js";var T={class:`migration-page`,"data-testid":`page-content`},E={class:`migration-card`},D={class:`migration-title`,"data-testid":`vault-migration-title`},O={class:`migration-lead`},k={class:`migration-path`},A={for:`legacyMasterPassword`},j={class:`migration-report`},M={key:0},N={key:1,class:`migration-report__warn`},P={class:`migration-backup`},F=a(t({__name:`VaultMigrationPage`,setup(t){let a=n(),{t:F}=h(),I=e(null),L=e(``),R=e(!1),z=e(``),B=e(null);c(async()=>{try{I.value=(await f()).legacyVault??null,I.value||await a.replace({name:`launch-project`})}catch{z.value=F(`vaultMigration.statusError`)}});async function V(){if(L.value){R.value=!0,z.value=``;try{B.value=await s(L.value),L.value=``}catch(e){z.value=C(e)??F(`vaultMigration.failed`)}finally{R.value=!1}}}async function H(){await a.replace({name:`launch-project`})}return(e,t)=>(r(),d(`div`,T,[u(`div`,E,[u(`h1`,D,v(S(F)(`vaultMigration.title`)),1),B.value?(r(),d(_,{key:1},[o(S(g),{severity:`success`,closable:!1,"data-testid":`vault-migration-done`},{default:p(()=>[b(v(S(F)(`vaultMigration.done`)),1)]),_:1}),u(`ul`,j,[(r(!0),d(_,null,l(B.value.rekeyed,e=>(r(),d(`li`,{key:e.file},v(S(F)(`vaultMigration.rekeyed`,{file:e.file,count:e.values})),1))),128)),B.value.moved.length?(r(),d(`li`,M,v(S(F)(`vaultMigration.moved`,{files:B.value.moved.join(`, `)})),1)):x(``,!0),B.value.skipped.length?(r(),d(`li`,N,v(S(F)(`vaultMigration.skipped`,{files:B.value.skipped.join(`, `)})),1)):x(``,!0)]),u(`p`,P,[b(v(S(F)(`vaultMigration.backupKept`))+` `,1),u(`code`,null,v(B.value.backupDir),1)]),o(S(i),{"data-testid":`vault-migration-continue`,label:S(F)(`vaultMigration.continue`),onClick:H},null,8,[`label`])],64)):(r(),d(_,{key:0},[u(`p`,O,v(S(F)(`vaultMigration.lead`)),1),u(`p`,k,[u(`code`,null,v(I.value),1)]),o(S(g),{severity:`info`,closable:!1,class:`migration-note`},{default:p(()=>[b(v(S(F)(`vaultMigration.backupNote`)),1)]),_:1}),u(`form`,{class:`migration-form`,onSubmit:m(V,[`prevent`])},[u(`label`,A,v(S(F)(`vaultMigration.oldPasswordLabel`)),1),o(S(w),{id:`legacyMasterPassword`,modelValue:L.value,"onUpdate:modelValue":t[0]||=e=>L.value=e,"data-testid":`legacy-master-password-input`,feedback:!1,"toggle-mask":``,autocomplete:`current-password`,disabled:R.value,fluid:``},null,8,[`modelValue`,`disabled`]),z.value?(r(),y(S(g),{key:0,severity:`error`,closable:!1,"data-testid":`vault-migration-error`},{default:p(()=>[b(v(z.value),1)]),_:1})):x(``,!0),o(S(i),{type:`submit`,"data-testid":`vault-migration-submit`,label:R.value?S(F)(`vaultMigration.migrating`):S(F)(`vaultMigration.migrate`),loading:R.value,disabled:R.value||!L.value},null,8,[`label`,`loading`,`disabled`])],32)],64))])]))}}),[[`__scopeId`,`data-v-de8e80f8`]]);export{F as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{Aa as e,Di as t,Ji as n,On as r,Wi as i,bi as a,va as o,vn as s,yi as c}from"./index-
|
|
1
|
+
import{Aa as e,Di as t,Ji as n,On as r,Wi as i,bi as a,va as o,vn as s,yi as c}from"./index-BPOeXMH7.js";var l={key:0,class:`version-badge`,"data-testid":`version-badge`},u=r(t({__name:`VersionBadge`,setup(t){let r=e(``);return i(()=>{s.health.check.query().then(e=>{r.value=e.version}).catch(()=>{})}),(e,t)=>r.value?(n(),a(`span`,l,`v`+o(r.value),1)):c(``,!0)}}),[[`__scopeId`,`data-v-61dd6b89`]]);export{u as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{Di as e,Ji as t,vi as n}from"./index-BPOeXMH7.js";import"./src-dSgRs0bd.js";import"./w3c-keyname-9KQ-4XZl.js";import{t as r}from"./WikiView-Brud4K4u.js";var i=e({__name:`WikiPage`,setup(e){return(e,i)=>(t(),n(r,{scope:`global`}))}});export{i as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{Aa as e,An as t,Bi as n,Di as r,Gn as i,Ji as a,Mn as o,On as s,Qi as c,Ti as l,Wi as ee,Xi as u,Yn as te,_i as d,bi as f,da as p,di as m,gi as h,ha as g,pi as _,sa as v,sn as y,ui as b,va as x,vi as ne,vn as S,wi as C,yi as w,za as T}from"./index-pLefgbhx.js";import{t as re}from"./src-DzMKqnGu.js";var E={class:`fs-node`},D=[`title`],O={class:`fs-node__name`},k=[`title`],A={class:`fs-node__name`},j={key:2,class:`fs-node__actions`},M={key:0,class:`fs-node__children`},ie=r({__name:`FsNode`,props:{entry:{},selectedPath:{},expanded:{},editable:{type:Boolean}},emits:[`toggle`,`select`,`create-child`,`rename`,`delete`],setup(e,{emit:t}){let n=e,r=t,i=h(()=>n.entry.type===`dir`&&n.expanded.has(n.entry.path)),o=h(()=>n.entry.type===`file`&&n.selectedPath===n.entry.path);return(t,n)=>{let s=c(`FsNode`,!0);return a(),f(`div`,E,[d(`div`,{class:g([`fs-node__row`,{"fs-node__row--selected":o.value}])},[e.entry.type===`dir`?(a(),f(`button`,{key:0,class:`fs-node__main`,title:e.entry.path,onClick:n[0]||=t=>r(`toggle`,e.entry.path)},[d(`i`,{class:g(`pi ${i.value?`pi-chevron-down`:`pi-chevron-right`} fs-node__caret`)},null,2),d(`i`,{class:g(`pi ${i.value?`pi-folder-open`:`pi-folder`} fs-node__icon fs-node__icon--folder`)},null,2),d(`span`,O,x(e.entry.name),1)],8,D)):(a(),f(`button`,{key:1,class:`fs-node__main`,title:e.entry.path,onClick:n[1]||=t=>r(`select`,e.entry.path)},[n[11]||=d(`span`,{class:`fs-node__caret-spacer`},null,-1),n[12]||=d(`i`,{class:`pi pi-file fs-node__icon`},null,-1),d(`span`,A,x(e.entry.name),1)],8,k)),e.editable?(a(),f(`div`,j,[e.entry.type===`dir`?(a(),f(`button`,{key:0,class:`fs-node__action`,title:`Nouveau fichier`,onClick:n[2]||=m(t=>r(`create-child`,e.entry.path,`file`),[`stop`])},[...n[13]||=[d(`i`,{class:`pi pi-file-plus`},null,-1)]])):w(``,!0),e.entry.type===`dir`?(a(),f(`button`,{key:1,class:`fs-node__action`,title:`Nouveau dossier`,onClick:n[3]||=m(t=>r(`create-child`,e.entry.path,`dir`),[`stop`])},[...n[14]||=[d(`i`,{class:`pi pi-folder-plus`},null,-1)]])):w(``,!0),d(`button`,{class:`fs-node__action`,title:`Renommer`,onClick:n[4]||=m(t=>r(`rename`,e.entry.path,e.entry.type===`dir`),[`stop`])},[...n[15]||=[d(`i`,{class:`pi pi-pencil`},null,-1)]]),d(`button`,{class:`fs-node__action fs-node__action--danger`,title:`Supprimer`,onClick:n[5]||=m(t=>r(`delete`,e.entry.path,e.entry.type===`dir`),[`stop`])},[...n[16]||=[d(`i`,{class:`pi pi-trash`},null,-1)]])])):w(``,!0)],2),e.entry.type===`dir`&&i.value?(a(),f(`ul`,M,[(a(!0),f(_,null,u(e.entry.children,t=>(a(),f(`li`,{key:t.path},[l(s,{entry:t,"selected-path":e.selectedPath,expanded:e.expanded,editable:e.editable,onToggle:n[6]||=e=>r(`toggle`,e),onSelect:n[7]||=e=>r(`select`,e),onCreateChild:n[8]||=(e,t)=>r(`create-child`,e,t),onRename:n[9]||=(e,t)=>r(`rename`,e,t),onDelete:n[10]||=(e,t)=>r(`delete`,e,t)},null,8,[`entry`,`selected-path`,`expanded`,`editable`])]))),128))])):w(``,!0)])}}}),ae={key:0,class:`wiki__not-configured`},oe={key:1,class:`wiki__not-configured`},se={key:0},ce={key:1},le={key:2,class:`wiki`},ue={class:`wiki__sidebar`},de={class:`wiki__sidebar-header`},fe=[`title`],pe={class:`wiki__sidebar-actions`},me={key:0,class:`wiki__loading`},he={key:1,class:`wiki__error`},ge={key:2,class:`wiki__empty`},_e={key:3,class:`wiki__tree`},ve={class:`wiki__main`},ye={class:`wiki__title-row`},be={class:`wiki__title-path`},xe={key:0,class:`wiki__status`},Se={key:0},Ce={key:1},we={key:2,class:`wiki__status-saved`},Te={key:1,class:`wiki__status wiki__status-readonly`},Ee={key:0,class:`wiki__editor-actions`},De={key:1,class:`wiki__loading`},Oe={key:1,class:`wiki__placeholder`},ke={class:`wiki__prompt-body`},Ae={for:`wiki-prompt-input`,class:`wiki__prompt-label`},je={class:`wiki__link-list`},Me=[`onClick`],Ne={class:`wiki__link-path`},Pe={key:0,class:`wiki__link-empty`},N=s(r({__name:`WikiView`,props:{scope:{}},setup(r){let s=i(),c=r,E=te(),D=e(``),O=e([]),k=e(!1),A=e(null),j=e(!1),M=e(null),N=e(!1),P=e(new Set),F=e(null),I=e(``),L=e(!1),R=e(!1),z=e(!1),B=null,V=``,Fe=e(null),H=e(!1),U=e(``),W=e({open:!1,title:``,label:``,value:``,placeholder:``,resolve:null});function Ie(e){return new Promise(t=>{W.value={open:!0,title:e.title,label:e.label,value:e.initialValue??``,placeholder:e.placeholder??``,resolve:t}})}function Le(){let e=W.value.value.trim();W.value.resolve?.(e||null),W.value.open=!1}function G(){W.value.resolve?.(null),W.value.open=!1}let Re=h(()=>{let e=[],t=n=>{for(let r of n)r.type===`file`?e.push({path:r.path,name:r.name}):t(r.children)};return t(O.value),e}),ze=h(()=>{let e=U.value.trim().toLowerCase();return Re.value.filter(e=>e.path!==F.value).filter(t=>!e||t.path.toLowerCase().includes(e))});async function K(){k.value=!0,A.value=null,j.value=!1,M.value=null;try{let e=await S.wiki.list.query({scope:c.scope});D.value=e.root,O.value=e.entries}catch(e){let t=e.message;if(/Aucun dossier de docs|globalDocsPath|docsPath|Aucun cwd/i.test(t))j.value=!0;else{let e=t.match(/Dossier introuvable:\s*(.+)$/);e?M.value=e[1].trim():A.value=t}}finally{k.value=!1}}async function Be(){N.value=!0;try{await S.wiki.ensureRoot.mutate({scope:c.scope}),M.value=null,await K()}catch(e){A.value=e.message}finally{N.value=!1}}let q=h(()=>c.scope===`global`),Ve=h(()=>c.scope.startsWith(`service:`)),He=h(()=>Ve.value?c.scope.slice(8):null);function Ue(){q.value?s.push({name:`settings`,query:{section:`general`}}):He.value&&s.push(`/services/${He.value}/config?configTab=general`)}function We(e){P.value.has(e)?P.value.delete(e):P.value.add(e),P.value=new Set(P.value)}async function J(e){X(),z.value=!1,F.value=e,L.value=!0,I.value=``;try{let t=await S.wiki.read.query({scope:c.scope,path:e});I.value=t.content,V=t.content;let n=e.split(`/`);for(n.pop();n.length;)P.value.add(n.join(`/`)),n.pop();P.value=new Set(P.value)}catch(e){A.value=e.message}finally{L.value=!1}}function Ge(){B&&clearTimeout(B),B=setTimeout(()=>{Y()},800)}async function Y(){if(!F.value||I.value===V)return;let e=F.value,t=I.value;R.value=!0;try{await S.wiki.write.mutate({scope:c.scope,path:e,content:t}),V=t}catch(e){A.value=e.message}finally{R.value=!1}}function X(){B&&(clearTimeout(B),B=null,Y())}v(I,()=>{F.value&&z.value&&Ge()});function Ke(){z.value?(X(),z.value=!1):z.value=!0}async function Z(e,t){let n=await Ie({title:t===`file`?`Nouveau fichier`:`Nouveau dossier`,label:t===`file`?`Nom du fichier (sans extension)`:`Nom du dossier`,initialValue:t===`file`?`nouveau`:`nouveau-dossier`});if(!n)return;let r=n.trim().replace(/[^A-Za-z0-9_./-]/g,`-`);if(!r)return;let i=t===`file`&&!/\.(md|markdown)$/i.test(r)?`${r}.md`:r,a=e?`${e}/${i}`:i;try{t===`file`?(await S.wiki.createFile.mutate({scope:c.scope,path:a}),await K(),J(a)):(await S.wiki.createDir.mutate({scope:c.scope,path:a}),P.value.add(a),P.value=new Set(P.value),await K())}catch(e){A.value=e.message}}async function qe(e,t){let n=e.split(`/`),r=n[n.length-1],i=await Ie({title:`Renommer`,label:`Nouveau nom`,initialValue:r});if(!i||i===r)return;let a=i.trim().replace(/[^A-Za-z0-9_./-]/g,`-`);if(!a)return;let o=!t&&!/\.(md|markdown)$/i.test(a)?`${a}.md`:a;n[n.length-1]=o;let s=n.join(`/`);try{await S.wiki.rename.mutate({scope:c.scope,fromPath:e,toPath:s}),F.value===e&&(F.value=s),await K()}catch(e){A.value=e.message}}function Je(e,t){E.require({message:`Supprimer "${e}" ${t?`(et tout son contenu)`:``} ?`,header:`Confirmation`,icon:`pi pi-exclamation-triangle`,rejectProps:{label:`Annuler`,severity:`secondary`,outlined:!0},acceptProps:{label:`Supprimer`,severity:`danger`},accept:async()=>{try{await S.wiki.delete.mutate({scope:c.scope,path:e}),(F.value===e||t&&F.value?.startsWith(e+`/`))&&(F.value=null,I.value=``),await K()}catch(e){A.value=e.message}}})}function Ye(){U.value=``,H.value=!0}function Xe(e){let t=Ze(F.value??``,e.path);Fe.value?.insertWikiLink?.(t,e.name.replace(/\.(md|markdown)$/i,``)),H.value=!1}function Ze(e,t){let n=e.split(`/`);n.pop();let r=t.split(`/`),i=0;for(;i<n.length&&i<r.length-1&&n[i]===r[i];)i++;let a=n.length-i,o=r.slice(i);return(a===0?`./`:`../`.repeat(a))+o.join(`/`)}function Qe(e){if(e.startsWith(`http://`)||e.startsWith(`https://`)||e.startsWith(`mailto:`)){window.open(e,`_blank`,`noopener,noreferrer`);return}if(e.startsWith(`#`)||!/\.(md|markdown)(#|\?|$)/i.test(e))return;let t=e.split(`#`)[0].split(`?`)[0],n=$e(F.value??``,t);Re.value.some(e=>e.path===n)?J(n):A.value=`Fichier introuvable: ${n}`}function $e(e,t){if(t.startsWith(`/`))return t.replace(/^\/+/,``);let n=e.includes(`/`)?e.slice(0,e.lastIndexOf(`/`)).split(`/`).filter(Boolean):[];for(let e of t.split(`/`))e===``||e===`.`||(e===`..`?n.pop():n.push(e));return n.join(`/`)}function Q(){F.value&&J(F.value)}function $(){document.visibilityState===`visible`&&Q()}return v(()=>c.scope,()=>{F.value=null,I.value=``,O.value=[],K()}),ee(()=>{K(),window.addEventListener(`focus`,Q),document.addEventListener(`visibilitychange`,$)}),n(()=>{X(),window.removeEventListener(`focus`,Q),document.removeEventListener(`visibilitychange`,$)}),(e,n)=>M.value?(a(),f(`div`,ae,[n[8]||=d(`i`,{class:`pi pi-folder-open wiki__not-configured-icon`},null,-1),n[9]||=d(`h2`,null,`Le dossier de documentation n'existe pas encore`,-1),d(`p`,null,[n[7]||=C(` Chemin attendu : `,-1),d(`code`,null,x(M.value),1)]),l(T(o),{icon:`pi pi-plus`,label:`Créer le dossier`,loading:N.value,onClick:Be},null,8,[`loading`])])):j.value?(a(),f(`div`,oe,[n[11]||=d(`i`,{class:`pi pi-cog wiki__not-configured-icon`},null,-1),d(`h2`,null,x(q.value?`Wiki global non configuré`:`Documentation du service non configurée`),1),q.value?(a(),f(`p`,se,` Le wiki global a besoin d'un chemin absolu vers un dossier sur disque pour fonctionner. `)):(a(),f(`p`,ce,[...n[10]||=[C(` Ce service n'a pas de `,-1),d(`code`,null,`cwd`,-1),C(` ni de `,-1),d(`code`,null,`docsPath`,-1),C(` renseigné. `,-1)]])),l(T(o),{icon:`pi pi-arrow-right`,label:q.value?`Configurer le wiki global`:`Configurer le service`,onClick:Ue},null,8,[`label`])])):(a(),f(`div`,le,[d(`aside`,ue,[d(`div`,de,[d(`span`,{class:`wiki__sidebar-title`,title:D.value},x(D.value||`Pages`),9,fe),d(`div`,pe,[l(T(o),{icon:`pi pi-folder-plus`,size:`small`,text:``,rounded:``,title:`Nouveau dossier racine`,onClick:n[0]||=e=>Z(``,`dir`)}),l(T(o),{icon:`pi pi-file-plus`,size:`small`,text:``,rounded:``,title:`Nouveau fichier racine`,onClick:n[1]||=e=>Z(``,`file`)}),l(T(o),{icon:`pi pi-refresh`,size:`small`,text:``,rounded:``,title:`Rafraîchir`,onClick:K})])]),k.value?(a(),f(`div`,me,`Chargement…`)):A.value?(a(),f(`div`,he,x(A.value),1)):O.value.length===0?(a(),f(`div`,ge,` Aucun fichier. Utilisez les boutons en haut pour créer un fichier ou un dossier. `)):(a(),f(`ul`,_e,[(a(!0),f(_,null,u(O.value,e=>(a(),f(`li`,{key:e.path},[l(ie,{entry:e,"selected-path":F.value,expanded:P.value,editable:!0,onToggle:We,onSelect:J,onCreateChild:Z,onRename:qe,onDelete:Je},null,8,[`entry`,`selected-path`,`expanded`])]))),128))]))]),d(`section`,ve,[F.value?(a(),f(_,{key:0},[d(`div`,ye,[n[16]||=d(`i`,{class:`pi pi-file wiki__title-icon`},null,-1),d(`span`,be,x(F.value),1),z.value?(a(),f(`span`,xe,[R.value?(a(),f(`span`,Se,[...n[12]||=[d(`i`,{class:`pi pi-spin pi-spinner`},null,-1),C(` Sauvegarde…`,-1)]])):I.value===T(V)?(a(),f(`span`,we,[...n[14]||=[d(`i`,{class:`pi pi-check`},null,-1),C(` Sauvegardé`,-1)]])):(a(),f(`span`,Ce,[...n[13]||=[d(`i`,{class:`pi pi-circle-fill wiki__status-pending`},null,-1),C(` Modifié`,-1)]]))])):(a(),f(`span`,Te,[...n[15]||=[d(`i`,{class:`pi pi-eye`},null,-1),C(` Lecture seule `,-1)]])),l(T(o),{icon:z.value?`pi pi-check`:`pi pi-pencil`,label:z.value?`Terminer`:`Modifier`,size:`small`,severity:z.value?`success`:`secondary`,outlined:!z.value,onClick:Ke},null,8,[`icon`,`label`,`severity`,`outlined`]),l(T(o),{icon:`pi pi-refresh`,size:`small`,text:``,rounded:``,title:`Recharger depuis le disque`,loading:L.value,onClick:Q},null,8,[`loading`])]),z.value?(a(),f(`div`,Ee,[l(T(o),{icon:`pi pi-link`,label:`Lier un fichier`,size:`small`,text:``,onClick:Ye})])):w(``,!0),L.value?(a(),f(`div`,De,`Chargement du fichier…`)):(a(),ne(T(re),{key:2,ref_key:`editorRef`,ref:Fe,modelValue:I.value,"onUpdate:modelValue":n[2]||=e=>I.value=e,markdown:``,editable:z.value,class:g([`wiki__editor`,{"wiki__editor--readonly":!z.value}]),placeholder:`Écrivez le contenu de la page…`,onLinkClick:Qe},null,8,[`modelValue`,`editable`,`class`]))],64)):(a(),f(`div`,Oe,[...n[17]||=[d(`i`,{class:`pi pi-book wiki__placeholder-icon`},null,-1),d(`p`,null,`Sélectionnez un fichier ou créez-en un nouveau.`,-1)]]))]),l(T(t),{visible:W.value.open,"onUpdate:visible":n[4]||=e=>W.value.open=e,header:W.value.title,modal:``,style:{width:`420px`},"close-on-escape":!0,onHide:G},{footer:p(()=>[l(T(o),{label:`Annuler`,severity:`secondary`,outlined:``,size:`small`,onClick:G}),l(T(o),{label:`OK`,size:`small`,disabled:!W.value.value.trim(),onClick:Le},null,8,[`disabled`])]),default:p(()=>[d(`div`,ke,[d(`label`,Ae,x(W.value.label),1),l(T(y),{id:`wiki-prompt-input`,modelValue:W.value.value,"onUpdate:modelValue":n[3]||=e=>W.value.value=e,class:`wiki__prompt-input`,placeholder:W.value.placeholder,autofocus:``,onKeydown:[b(m(Le,[`prevent`]),[`enter`]),b(G,[`escape`])]},null,8,[`modelValue`,`placeholder`,`onKeydown`])])]),_:1},8,[`visible`,`header`]),l(T(t),{visible:H.value,"onUpdate:visible":n[6]||=e=>H.value=e,header:`Insérer un lien vers un fichier`,modal:``,style:{width:`500px`}},{default:p(()=>[l(T(y),{modelValue:U.value,"onUpdate:modelValue":n[5]||=e=>U.value=e,placeholder:`Rechercher un fichier…`,class:`wiki__link-search`,autofocus:``},null,8,[`modelValue`]),d(`div`,je,[(a(!0),f(_,null,u(ze.value,e=>(a(),f(`button`,{key:e.path,class:`wiki__link-item`,onClick:t=>Xe(e)},[n[18]||=d(`i`,{class:`pi pi-file`},null,-1),d(`span`,Ne,x(e.path),1)],8,Me))),128)),ze.value.length===0?(a(),f(`div`,Pe,` Aucun fichier disponible. `)):w(``,!0)])]),_:1},8,[`visible`])]))}}),[[`__scopeId`,`data-v-10f9637d`]]);export{N as t};
|
|
1
|
+
import{Aa as e,An as t,Bi as n,Di as r,Gn as i,Ji as a,Mn as o,On as s,Qi as c,Ti as l,Wi as ee,Xi as u,Yn as te,_i as d,bi as f,da as p,di as m,gi as h,ha as g,pi as _,sa as v,sn as y,ui as b,va as x,vi as ne,vn as S,wi as C,yi as w,za as T}from"./index-BPOeXMH7.js";import{t as re}from"./src-dSgRs0bd.js";var E={class:`fs-node`},D=[`title`],O={class:`fs-node__name`},k=[`title`],A={class:`fs-node__name`},j={key:2,class:`fs-node__actions`},M={key:0,class:`fs-node__children`},ie=r({__name:`FsNode`,props:{entry:{},selectedPath:{},expanded:{},editable:{type:Boolean}},emits:[`toggle`,`select`,`create-child`,`rename`,`delete`],setup(e,{emit:t}){let n=e,r=t,i=h(()=>n.entry.type===`dir`&&n.expanded.has(n.entry.path)),o=h(()=>n.entry.type===`file`&&n.selectedPath===n.entry.path);return(t,n)=>{let s=c(`FsNode`,!0);return a(),f(`div`,E,[d(`div`,{class:g([`fs-node__row`,{"fs-node__row--selected":o.value}])},[e.entry.type===`dir`?(a(),f(`button`,{key:0,class:`fs-node__main`,title:e.entry.path,onClick:n[0]||=t=>r(`toggle`,e.entry.path)},[d(`i`,{class:g(`pi ${i.value?`pi-chevron-down`:`pi-chevron-right`} fs-node__caret`)},null,2),d(`i`,{class:g(`pi ${i.value?`pi-folder-open`:`pi-folder`} fs-node__icon fs-node__icon--folder`)},null,2),d(`span`,O,x(e.entry.name),1)],8,D)):(a(),f(`button`,{key:1,class:`fs-node__main`,title:e.entry.path,onClick:n[1]||=t=>r(`select`,e.entry.path)},[n[11]||=d(`span`,{class:`fs-node__caret-spacer`},null,-1),n[12]||=d(`i`,{class:`pi pi-file fs-node__icon`},null,-1),d(`span`,A,x(e.entry.name),1)],8,k)),e.editable?(a(),f(`div`,j,[e.entry.type===`dir`?(a(),f(`button`,{key:0,class:`fs-node__action`,title:`Nouveau fichier`,onClick:n[2]||=m(t=>r(`create-child`,e.entry.path,`file`),[`stop`])},[...n[13]||=[d(`i`,{class:`pi pi-file-plus`},null,-1)]])):w(``,!0),e.entry.type===`dir`?(a(),f(`button`,{key:1,class:`fs-node__action`,title:`Nouveau dossier`,onClick:n[3]||=m(t=>r(`create-child`,e.entry.path,`dir`),[`stop`])},[...n[14]||=[d(`i`,{class:`pi pi-folder-plus`},null,-1)]])):w(``,!0),d(`button`,{class:`fs-node__action`,title:`Renommer`,onClick:n[4]||=m(t=>r(`rename`,e.entry.path,e.entry.type===`dir`),[`stop`])},[...n[15]||=[d(`i`,{class:`pi pi-pencil`},null,-1)]]),d(`button`,{class:`fs-node__action fs-node__action--danger`,title:`Supprimer`,onClick:n[5]||=m(t=>r(`delete`,e.entry.path,e.entry.type===`dir`),[`stop`])},[...n[16]||=[d(`i`,{class:`pi pi-trash`},null,-1)]])])):w(``,!0)],2),e.entry.type===`dir`&&i.value?(a(),f(`ul`,M,[(a(!0),f(_,null,u(e.entry.children,t=>(a(),f(`li`,{key:t.path},[l(s,{entry:t,"selected-path":e.selectedPath,expanded:e.expanded,editable:e.editable,onToggle:n[6]||=e=>r(`toggle`,e),onSelect:n[7]||=e=>r(`select`,e),onCreateChild:n[8]||=(e,t)=>r(`create-child`,e,t),onRename:n[9]||=(e,t)=>r(`rename`,e,t),onDelete:n[10]||=(e,t)=>r(`delete`,e,t)},null,8,[`entry`,`selected-path`,`expanded`,`editable`])]))),128))])):w(``,!0)])}}}),ae={key:0,class:`wiki__not-configured`},oe={key:1,class:`wiki__not-configured`},se={key:0},ce={key:1},le={key:2,class:`wiki`},ue={class:`wiki__sidebar`},de={class:`wiki__sidebar-header`},fe=[`title`],pe={class:`wiki__sidebar-actions`},me={key:0,class:`wiki__loading`},he={key:1,class:`wiki__error`},ge={key:2,class:`wiki__empty`},_e={key:3,class:`wiki__tree`},ve={class:`wiki__main`},ye={class:`wiki__title-row`},be={class:`wiki__title-path`},xe={key:0,class:`wiki__status`},Se={key:0},Ce={key:1},we={key:2,class:`wiki__status-saved`},Te={key:1,class:`wiki__status wiki__status-readonly`},Ee={key:0,class:`wiki__editor-actions`},De={key:1,class:`wiki__loading`},Oe={key:1,class:`wiki__placeholder`},ke={class:`wiki__prompt-body`},Ae={for:`wiki-prompt-input`,class:`wiki__prompt-label`},je={class:`wiki__link-list`},Me=[`onClick`],Ne={class:`wiki__link-path`},Pe={key:0,class:`wiki__link-empty`},N=s(r({__name:`WikiView`,props:{scope:{}},setup(r){let s=i(),c=r,E=te(),D=e(``),O=e([]),k=e(!1),A=e(null),j=e(!1),M=e(null),N=e(!1),P=e(new Set),F=e(null),I=e(``),L=e(!1),R=e(!1),z=e(!1),B=null,V=``,Fe=e(null),H=e(!1),U=e(``),W=e({open:!1,title:``,label:``,value:``,placeholder:``,resolve:null});function Ie(e){return new Promise(t=>{W.value={open:!0,title:e.title,label:e.label,value:e.initialValue??``,placeholder:e.placeholder??``,resolve:t}})}function Le(){let e=W.value.value.trim();W.value.resolve?.(e||null),W.value.open=!1}function G(){W.value.resolve?.(null),W.value.open=!1}let Re=h(()=>{let e=[],t=n=>{for(let r of n)r.type===`file`?e.push({path:r.path,name:r.name}):t(r.children)};return t(O.value),e}),ze=h(()=>{let e=U.value.trim().toLowerCase();return Re.value.filter(e=>e.path!==F.value).filter(t=>!e||t.path.toLowerCase().includes(e))});async function K(){k.value=!0,A.value=null,j.value=!1,M.value=null;try{let e=await S.wiki.list.query({scope:c.scope});D.value=e.root,O.value=e.entries}catch(e){let t=e.message;if(/Aucun dossier de docs|globalDocsPath|docsPath|Aucun cwd/i.test(t))j.value=!0;else{let e=t.match(/Dossier introuvable:\s*(.+)$/);e?M.value=e[1].trim():A.value=t}}finally{k.value=!1}}async function Be(){N.value=!0;try{await S.wiki.ensureRoot.mutate({scope:c.scope}),M.value=null,await K()}catch(e){A.value=e.message}finally{N.value=!1}}let q=h(()=>c.scope===`global`),Ve=h(()=>c.scope.startsWith(`service:`)),He=h(()=>Ve.value?c.scope.slice(8):null);function Ue(){q.value?s.push({name:`settings`,query:{section:`general`}}):He.value&&s.push(`/services/${He.value}/config?configTab=general`)}function We(e){P.value.has(e)?P.value.delete(e):P.value.add(e),P.value=new Set(P.value)}async function J(e){X(),z.value=!1,F.value=e,L.value=!0,I.value=``;try{let t=await S.wiki.read.query({scope:c.scope,path:e});I.value=t.content,V=t.content;let n=e.split(`/`);for(n.pop();n.length;)P.value.add(n.join(`/`)),n.pop();P.value=new Set(P.value)}catch(e){A.value=e.message}finally{L.value=!1}}function Ge(){B&&clearTimeout(B),B=setTimeout(()=>{Y()},800)}async function Y(){if(!F.value||I.value===V)return;let e=F.value,t=I.value;R.value=!0;try{await S.wiki.write.mutate({scope:c.scope,path:e,content:t}),V=t}catch(e){A.value=e.message}finally{R.value=!1}}function X(){B&&(clearTimeout(B),B=null,Y())}v(I,()=>{F.value&&z.value&&Ge()});function Ke(){z.value?(X(),z.value=!1):z.value=!0}async function Z(e,t){let n=await Ie({title:t===`file`?`Nouveau fichier`:`Nouveau dossier`,label:t===`file`?`Nom du fichier (sans extension)`:`Nom du dossier`,initialValue:t===`file`?`nouveau`:`nouveau-dossier`});if(!n)return;let r=n.trim().replace(/[^A-Za-z0-9_./-]/g,`-`);if(!r)return;let i=t===`file`&&!/\.(md|markdown)$/i.test(r)?`${r}.md`:r,a=e?`${e}/${i}`:i;try{t===`file`?(await S.wiki.createFile.mutate({scope:c.scope,path:a}),await K(),J(a)):(await S.wiki.createDir.mutate({scope:c.scope,path:a}),P.value.add(a),P.value=new Set(P.value),await K())}catch(e){A.value=e.message}}async function qe(e,t){let n=e.split(`/`),r=n[n.length-1],i=await Ie({title:`Renommer`,label:`Nouveau nom`,initialValue:r});if(!i||i===r)return;let a=i.trim().replace(/[^A-Za-z0-9_./-]/g,`-`);if(!a)return;let o=!t&&!/\.(md|markdown)$/i.test(a)?`${a}.md`:a;n[n.length-1]=o;let s=n.join(`/`);try{await S.wiki.rename.mutate({scope:c.scope,fromPath:e,toPath:s}),F.value===e&&(F.value=s),await K()}catch(e){A.value=e.message}}function Je(e,t){E.require({message:`Supprimer "${e}" ${t?`(et tout son contenu)`:``} ?`,header:`Confirmation`,icon:`pi pi-exclamation-triangle`,rejectProps:{label:`Annuler`,severity:`secondary`,outlined:!0},acceptProps:{label:`Supprimer`,severity:`danger`},accept:async()=>{try{await S.wiki.delete.mutate({scope:c.scope,path:e}),(F.value===e||t&&F.value?.startsWith(e+`/`))&&(F.value=null,I.value=``),await K()}catch(e){A.value=e.message}}})}function Ye(){U.value=``,H.value=!0}function Xe(e){let t=Ze(F.value??``,e.path);Fe.value?.insertWikiLink?.(t,e.name.replace(/\.(md|markdown)$/i,``)),H.value=!1}function Ze(e,t){let n=e.split(`/`);n.pop();let r=t.split(`/`),i=0;for(;i<n.length&&i<r.length-1&&n[i]===r[i];)i++;let a=n.length-i,o=r.slice(i);return(a===0?`./`:`../`.repeat(a))+o.join(`/`)}function Qe(e){if(e.startsWith(`http://`)||e.startsWith(`https://`)||e.startsWith(`mailto:`)){window.open(e,`_blank`,`noopener,noreferrer`);return}if(e.startsWith(`#`)||!/\.(md|markdown)(#|\?|$)/i.test(e))return;let t=e.split(`#`)[0].split(`?`)[0],n=$e(F.value??``,t);Re.value.some(e=>e.path===n)?J(n):A.value=`Fichier introuvable: ${n}`}function $e(e,t){if(t.startsWith(`/`))return t.replace(/^\/+/,``);let n=e.includes(`/`)?e.slice(0,e.lastIndexOf(`/`)).split(`/`).filter(Boolean):[];for(let e of t.split(`/`))e===``||e===`.`||(e===`..`?n.pop():n.push(e));return n.join(`/`)}function Q(){F.value&&J(F.value)}function $(){document.visibilityState===`visible`&&Q()}return v(()=>c.scope,()=>{F.value=null,I.value=``,O.value=[],K()}),ee(()=>{K(),window.addEventListener(`focus`,Q),document.addEventListener(`visibilitychange`,$)}),n(()=>{X(),window.removeEventListener(`focus`,Q),document.removeEventListener(`visibilitychange`,$)}),(e,n)=>M.value?(a(),f(`div`,ae,[n[8]||=d(`i`,{class:`pi pi-folder-open wiki__not-configured-icon`},null,-1),n[9]||=d(`h2`,null,`Le dossier de documentation n'existe pas encore`,-1),d(`p`,null,[n[7]||=C(` Chemin attendu : `,-1),d(`code`,null,x(M.value),1)]),l(T(o),{icon:`pi pi-plus`,label:`Créer le dossier`,loading:N.value,onClick:Be},null,8,[`loading`])])):j.value?(a(),f(`div`,oe,[n[11]||=d(`i`,{class:`pi pi-cog wiki__not-configured-icon`},null,-1),d(`h2`,null,x(q.value?`Wiki global non configuré`:`Documentation du service non configurée`),1),q.value?(a(),f(`p`,se,` Le wiki global a besoin d'un chemin absolu vers un dossier sur disque pour fonctionner. `)):(a(),f(`p`,ce,[...n[10]||=[C(` Ce service n'a pas de `,-1),d(`code`,null,`cwd`,-1),C(` ni de `,-1),d(`code`,null,`docsPath`,-1),C(` renseigné. `,-1)]])),l(T(o),{icon:`pi pi-arrow-right`,label:q.value?`Configurer le wiki global`:`Configurer le service`,onClick:Ue},null,8,[`label`])])):(a(),f(`div`,le,[d(`aside`,ue,[d(`div`,de,[d(`span`,{class:`wiki__sidebar-title`,title:D.value},x(D.value||`Pages`),9,fe),d(`div`,pe,[l(T(o),{icon:`pi pi-folder-plus`,size:`small`,text:``,rounded:``,title:`Nouveau dossier racine`,onClick:n[0]||=e=>Z(``,`dir`)}),l(T(o),{icon:`pi pi-file-plus`,size:`small`,text:``,rounded:``,title:`Nouveau fichier racine`,onClick:n[1]||=e=>Z(``,`file`)}),l(T(o),{icon:`pi pi-refresh`,size:`small`,text:``,rounded:``,title:`Rafraîchir`,onClick:K})])]),k.value?(a(),f(`div`,me,`Chargement…`)):A.value?(a(),f(`div`,he,x(A.value),1)):O.value.length===0?(a(),f(`div`,ge,` Aucun fichier. Utilisez les boutons en haut pour créer un fichier ou un dossier. `)):(a(),f(`ul`,_e,[(a(!0),f(_,null,u(O.value,e=>(a(),f(`li`,{key:e.path},[l(ie,{entry:e,"selected-path":F.value,expanded:P.value,editable:!0,onToggle:We,onSelect:J,onCreateChild:Z,onRename:qe,onDelete:Je},null,8,[`entry`,`selected-path`,`expanded`])]))),128))]))]),d(`section`,ve,[F.value?(a(),f(_,{key:0},[d(`div`,ye,[n[16]||=d(`i`,{class:`pi pi-file wiki__title-icon`},null,-1),d(`span`,be,x(F.value),1),z.value?(a(),f(`span`,xe,[R.value?(a(),f(`span`,Se,[...n[12]||=[d(`i`,{class:`pi pi-spin pi-spinner`},null,-1),C(` Sauvegarde…`,-1)]])):I.value===T(V)?(a(),f(`span`,we,[...n[14]||=[d(`i`,{class:`pi pi-check`},null,-1),C(` Sauvegardé`,-1)]])):(a(),f(`span`,Ce,[...n[13]||=[d(`i`,{class:`pi pi-circle-fill wiki__status-pending`},null,-1),C(` Modifié`,-1)]]))])):(a(),f(`span`,Te,[...n[15]||=[d(`i`,{class:`pi pi-eye`},null,-1),C(` Lecture seule `,-1)]])),l(T(o),{icon:z.value?`pi pi-check`:`pi pi-pencil`,label:z.value?`Terminer`:`Modifier`,size:`small`,severity:z.value?`success`:`secondary`,outlined:!z.value,onClick:Ke},null,8,[`icon`,`label`,`severity`,`outlined`]),l(T(o),{icon:`pi pi-refresh`,size:`small`,text:``,rounded:``,title:`Recharger depuis le disque`,loading:L.value,onClick:Q},null,8,[`loading`])]),z.value?(a(),f(`div`,Ee,[l(T(o),{icon:`pi pi-link`,label:`Lier un fichier`,size:`small`,text:``,onClick:Ye})])):w(``,!0),L.value?(a(),f(`div`,De,`Chargement du fichier…`)):(a(),ne(T(re),{key:2,ref_key:`editorRef`,ref:Fe,modelValue:I.value,"onUpdate:modelValue":n[2]||=e=>I.value=e,markdown:``,editable:z.value,class:g([`wiki__editor`,{"wiki__editor--readonly":!z.value}]),placeholder:`Écrivez le contenu de la page…`,onLinkClick:Qe},null,8,[`modelValue`,`editable`,`class`]))],64)):(a(),f(`div`,Oe,[...n[17]||=[d(`i`,{class:`pi pi-book wiki__placeholder-icon`},null,-1),d(`p`,null,`Sélectionnez un fichier ou créez-en un nouveau.`,-1)]]))]),l(T(t),{visible:W.value.open,"onUpdate:visible":n[4]||=e=>W.value.open=e,header:W.value.title,modal:``,style:{width:`420px`},"close-on-escape":!0,onHide:G},{footer:p(()=>[l(T(o),{label:`Annuler`,severity:`secondary`,outlined:``,size:`small`,onClick:G}),l(T(o),{label:`OK`,size:`small`,disabled:!W.value.value.trim(),onClick:Le},null,8,[`disabled`])]),default:p(()=>[d(`div`,ke,[d(`label`,Ae,x(W.value.label),1),l(T(y),{id:`wiki-prompt-input`,modelValue:W.value.value,"onUpdate:modelValue":n[3]||=e=>W.value.value=e,class:`wiki__prompt-input`,placeholder:W.value.placeholder,autofocus:``,onKeydown:[b(m(Le,[`prevent`]),[`enter`]),b(G,[`escape`])]},null,8,[`modelValue`,`placeholder`,`onKeydown`])])]),_:1},8,[`visible`,`header`]),l(T(t),{visible:H.value,"onUpdate:visible":n[6]||=e=>H.value=e,header:`Insérer un lien vers un fichier`,modal:``,style:{width:`500px`}},{default:p(()=>[l(T(y),{modelValue:U.value,"onUpdate:modelValue":n[5]||=e=>U.value=e,placeholder:`Rechercher un fichier…`,class:`wiki__link-search`,autofocus:``},null,8,[`modelValue`]),d(`div`,je,[(a(!0),f(_,null,u(ze.value,e=>(a(),f(`button`,{key:e.path,class:`wiki__link-item`,onClick:t=>Xe(e)},[n[18]||=d(`i`,{class:`pi pi-file`},null,-1),d(`span`,Ne,x(e.path),1)],8,Me))),128)),ze.value.length===0?(a(),f(`div`,Pe,` Aucun fichier disponible. `)):w(``,!0)])]),_:1},8,[`visible`])]))}}),[[`__scopeId`,`data-v-10f9637d`]]);export{N as t};
|