@runeya/runeya 2.0.122 → 2.0.124
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-manager-BSPEFZKZ.js → agent-manager-FZFFWISA.js} +3 -3
- package/{chat-SE5GIT4B.js → chat-JIJQ7IJS.js} +6 -6
- package/{chunk-XTLQOYLT.js → chunk-4PN7QBNM.js} +58 -6
- package/chunk-4PN7QBNM.js.map +1 -0
- package/{chunk-BVBK2WII.js → chunk-GKK3ACWB.js} +16 -11
- package/chunk-GKK3ACWB.js.map +1 -0
- package/{chunk-VNLIA5PV.js → chunk-H22YLVQE.js} +11 -6
- package/chunk-H22YLVQE.js.map +1 -0
- package/{chunk-GL7WA5K3.js → chunk-HK5QNU6P.js} +28 -3
- package/chunk-HK5QNU6P.js.map +1 -0
- package/{chunk-NIU3CN5A.js → chunk-N3ZI35SC.js} +2 -2
- package/{companion-HEJHC3UR.js → companion-OZODV5BR.js} +4 -4
- package/index.js +3 -3
- package/package.json +1 -1
- package/{settings-manager-4GAINSJO.js → settings-manager-MAVD4GAS.js} +3 -3
- package/{src-YUVA6WCM.js → src-SGSG2RSF.js} +98 -18
- package/src-SGSG2RSF.js.map +1 -0
- package/web/assets/{AgentScalarChatInterface.vue-DrcrJYKe.js → AgentScalarChatInterface.vue-Bv7WQetq.js} +1 -1
- package/web/assets/{AgentTerminalPage-BonnuSSS.js → AgentTerminalPage-CMA5oI2T.js} +1 -1
- package/web/assets/AiChatPage-C0Ho1rG3.js +1 -0
- package/web/assets/{AppLayout-DRTTSl7g.js → AppLayout-DBKRAp0R.js} +1 -1
- package/web/assets/{AuditPage-CBWGaY0D.js → AuditPage-fZVhSJlE.js} +1 -1
- package/web/assets/CloudAccountPage-2LiTQCKr.js +1 -0
- package/web/assets/{CloudAccountPage-DvbOBtHJ.js → CloudAccountPage-CunPTy1b.js} +1 -1
- package/web/assets/{CloudMessagingPage-BB-_RdEk.js → CloudMessagingPage-DWciFn32.js} +1 -1
- package/web/assets/{DashboardPage-MdYRjTwv.js → DashboardPage-3psdQljM.js} +1 -1
- package/web/assets/{DirectoryPickerDialog-DROtNZ9T.js → DirectoryPickerDialog-DiiAUQKg.js} +1 -1
- package/web/assets/{EditorIcon-LCl9V_-a.js → EditorIcon-BZyy2C12.js} +1 -1
- package/web/assets/{EnvironmentForm-BUadxutb.js → EnvironmentForm-MRC8U5op.js} +1 -1
- package/web/assets/{EnvironmentFormPage-Do3NwXL5.js → EnvironmentFormPage-gd8fGS8P.js} +1 -1
- package/web/assets/{EnvironmentListPage-DiG8nF1p.js → EnvironmentListPage-DgbclvZs.js} +1 -1
- package/web/assets/{KanbanBoardPage-_QCZ2A2f.js → KanbanBoardPage-BBT0gqjT.js} +3 -3
- package/web/assets/{KanbanListPage-nyfKMn50.js → KanbanListPage-CidIQgAq.js} +1 -1
- package/web/assets/{LaunchProjectPage-VHAUZ-cq.js → LaunchProjectPage-DBtkrI-A.js} +1 -1
- package/web/assets/{LaunchServicesPage-CRv2zJxH.js → LaunchServicesPage-DdmfVxYL.js} +1 -1
- package/web/assets/{LogViewer-DcoQF_33.js → LogViewer-CvDPgFjq.js} +1 -1
- package/web/assets/{OrgKeyPrompt-X9hHtpi9.js → OrgKeyPrompt-D3RmJEtb.js} +1 -1
- package/web/assets/{ProcessControls-PKQWukd7.js → ProcessControls-neMxqIY_.js} +1 -1
- package/web/assets/{ProcessDetailPage-DhFoi4DT.js → ProcessDetailPage-Dj0L8Jz0.js} +1 -1
- package/web/assets/{ProcessMetrics-CMewzyxA.js → ProcessMetrics-Bb7yNIVd.js} +1 -1
- package/web/assets/{RandomJobTestPage-CErdKP1K.js → RandomJobTestPage-ohHAOaio.js} +1 -1
- package/web/assets/{ScenarioEditorPage-CpRlfU3g.js → ScenarioEditorPage-BIcmG3wo.js} +1 -1
- package/web/assets/{SendToChatDialog-DIp62wvw.js → SendToChatDialog-oi4KFAVq.js} +1 -1
- package/web/assets/{ServiceControlsBar-Bk4M-tKR.js → ServiceControlsBar-GgoPszoH.js} +1 -1
- package/web/assets/{ServiceDetailPage-BxAZTqFu.js → ServiceDetailPage-CIDlO0iu.js} +1 -1
- package/web/assets/ServiceFormPage-Q_M2GgKE.css +1 -0
- package/web/assets/ServiceFormPage-p3AUhHLN.js +1 -0
- package/web/assets/{SettingsPage-Dx1eYZKP.js → SettingsPage-B_heumvd.js} +4 -4
- package/web/assets/{UnlockPage-CgynzFN3.js → UnlockPage-nz_1VQWy.js} +1 -1
- package/web/assets/{VaultMigrationPage-Cw--n60U.js → VaultMigrationPage-B_nZC8Cc.js} +1 -1
- package/web/assets/{VersionBadge-Ct-qYNDF.js → VersionBadge-DJJK7bgD.js} +1 -1
- package/web/assets/WikiPage-DiCUjWEu.js +1 -0
- package/web/assets/{WikiView-Izg2SvGt.js → WikiView-vYMnLt41.js} +1 -1
- package/web/assets/{add-scalar-classes-BP_OZa5m.js → add-scalar-classes-_7NDhIUO.js} +3 -3
- package/web/assets/{autocomplete-DMfvn4sK.js → autocomplete-BTMTTAk9.js} +1 -1
- package/web/assets/{basic-shape-diamond.svg-B5H1r2bp.js → basic-shape-diamond.svg-CZQG7mdB.js} +1 -1
- package/web/assets/{basic-shape-hexagon.svg-CYAjKF0z.js → basic-shape-hexagon.svg-BnLoXUmj.js} +1 -1
- package/web/assets/{basic-shape-primary-circle-ellipse-round.svg-CgleCAf-.js → basic-shape-primary-circle-ellipse-round.svg-DDU6pRYe.js} +1 -1
- package/web/assets/{basic-shape-primary-square-rectangle.svg-1Oa48Hhs.js → basic-shape-primary-square-rectangle.svg-Dq_Zdck2.js} +1 -1
- package/web/assets/{basic-shape-shield.svg-F6dZwVUJ.js → basic-shape-shield.svg-DbFCxPmO.js} +1 -1
- package/web/assets/{browser-D3KJ0m2n.js → browser-CTYk99RA.js} +1 -1
- package/web/assets/{browser-CmPAWcJ7.js → browser-DowFjZcI.js} +1 -1
- package/web/assets/{card-Ciw7uU90.js → card-R4Q2Qr9t.js} +1 -1
- package/web/assets/{checkbox-BCCx0Nu6.js → checkbox-CfoV-T17.js} +1 -1
- package/web/assets/{chip-JRh6DXig.js → chip-V3vhLdcF.js} +1 -1
- package/web/assets/{client-BIlYBe0s.js → client-DHQNUKOx.js} +1 -1
- package/web/assets/{cloud-chat.store-BUYi4kYT.js → cloud-chat.store-CaSRn8Mg.js} +1 -1
- package/web/assets/cloud-client-CzGojtBl.js +1 -0
- package/web/assets/{cloud-session-CZWto5y3.js → cloud-session-D71P4F3g.js} +2 -2
- package/web/assets/cloud-session-DlLnrwVQ.js +1 -0
- package/web/assets/{column-DSBHw97f.js → column-CjJa3tsz.js} +1 -1
- package/web/assets/{computer-device-desktop-monitor.svg-D7wu2cQ4.js → computer-device-desktop-monitor.svg-CRLfD7-U.js} +1 -1
- package/web/assets/{computer-device-desktop.svg-BtVwjOEG.js → computer-device-desktop.svg-CGKq4iih.js} +1 -1
- package/web/assets/{computer-device-laptop.svg-f3tFeUHj.js → computer-device-laptop.svg-bmeM_RDO.js} +1 -1
- package/web/assets/{computer-device-mobile-phone-android-samsung-back.svg-CmJcGkrL.js → computer-device-mobile-phone-android-samsung-back.svg-CFwMSjoP.js} +1 -1
- package/web/assets/{computer-device-mobile-phone-android-samsung.svg-C2ke6Sbg.js → computer-device-mobile-phone-android-samsung.svg-iIOhGZVY.js} +1 -1
- package/web/assets/{computer-device-mobile-phone-iphone-x-back.svg-DxMqUXKE.js → computer-device-mobile-phone-iphone-x-back.svg-CLqnsMnT.js} +1 -1
- package/web/assets/{computer-device-mobile-phone-iphone-x.svg-DkbKlrh8.js → computer-device-mobile-phone-iphone-x.svg-XECS9ZDX.js} +1 -1
- package/web/assets/{computer-device-mobile-tablet-touch.svg-DP0uXMda.js → computer-device-mobile-tablet-touch.svg-CUR9IhGB.js} +1 -1
- package/web/assets/{computer-device-mobile-tablet.svg-C064ZFQm.js → computer-device-mobile-tablet.svg-BJGisjBt.js} +1 -1
- package/web/assets/{computer-device-network-ethernet-cat6.svg-Dwzl7zBN.js → computer-device-network-ethernet-cat6.svg-DzgiswAZ.js} +1 -1
- package/web/assets/{computer-device-network-lan-www.svg-BgErom5w.js → computer-device-network-lan-www.svg-Dr1frFpv.js} +1 -1
- package/web/assets/{computer-device-network-wifi-connection.svg-ByqNsV6y.js → computer-device-network-wifi-connection.svg-DSj6qxT1.js} +1 -1
- package/web/assets/{computer-device-network-wifi-router.svg-AySGITbi.js → computer-device-network-wifi-router.svg-8lGzw_-s.js} +1 -1
- package/web/assets/{cssMode-BqrZ4SB-.js → cssMode-sBjZEJAf.js} +1 -1
- package/web/assets/{divider-BswZTb8q.js → divider-p4BForJk.js} +1 -1
- package/web/assets/{docx-preview-t_oOha_C.js → docx-preview-D-bfEEBT.js} +1 -1
- package/web/assets/{ecology-science-erlenmeyer-flask.svg-Keg4ZY0z.js → ecology-science-erlenmeyer-flask.svg-DhxVJRJ1.js} +1 -1
- package/web/assets/{fieldset-DaWy9FsL.js → fieldset-CCZ1tJUm.js} +1 -1
- package/web/assets/{freemarker2-Br0kiufp.js → freemarker2-C8iPD1fo.js} +1 -1
- package/web/assets/{handlebars-BrATzKUL.js → handlebars-BbBZAhwL.js} +1 -1
- package/web/assets/{html-LWTJcTM2.js → html-BQ_SV3Jd.js} +1 -1
- package/web/assets/{htmlMode-A23pWfMP.js → htmlMode-DReHoZFB.js} +1 -1
- package/web/assets/{image-flash-lightning.svg-uQfoT6Ex.js → image-flash-lightning.svg-DbKHX2c2.js} +1 -1
- package/web/assets/{image-picture-flower.svg-XxD1bCHC.js → image-picture-flower.svg-CEpqP8le.js} +1 -1
- package/web/assets/{index-e5dmzMc-.js → index-PMr5ScNs.js} +4 -4
- package/web/assets/{interface-alert-exclamation-diamond.svg-gQAlkILu.js → interface-alert-exclamation-diamond.svg-CoNNtahD.js} +1 -1
- package/web/assets/{interface-alert-exclamation-triangle-warning.svg-Ga2rsl6o.js → interface-alert-exclamation-triangle-warning.svg-BHa7AW0u.js} +1 -1
- package/web/assets/{interface-alert-information-circle.svg-BS0N2R1M.js → interface-alert-information-circle.svg-CpRzO-l8.js} +1 -1
- package/web/assets/{interface-award-crown.svg-CtLbK4Gl.js → interface-award-crown.svg-BFOXAZFu.js} +1 -1
- package/web/assets/{interface-bookmark.svg-Clt6TTov.js → interface-bookmark-tag.svg-DpZGlSV4.js} +1 -1
- package/web/assets/{interface-bookmark-tag.svg-Dfd6eXAX.js → interface-bookmark.svg-DulnuoPg.js} +1 -1
- package/web/assets/{interface-calendar-date-one.svg-BmFNLrzR.js → interface-calendar-date-one.svg-CWQHbXWQ.js} +1 -1
- package/web/assets/{interface-content-book-open-pages.svg-u8kJbc3N.js → interface-content-book-open-pages.svg-BH97UDUJ.js} +1 -1
- package/web/assets/{interface-content-book-page.svg-Csk8d0R8.js → interface-content-book-page.svg-DmnJkpeN.js} +1 -1
- package/web/assets/{interface-content-file.svg-DIoD1UhJ.js → interface-content-file.svg-DkouOQzj.js} +1 -1
- package/web/assets/interface-content-folder.svg-BLBb2W1v.js +1 -0
- package/web/assets/{interface-content-folder.svg-ipO7hYM2.js → interface-content-folder.svg-DK2esxIw.js} +1 -1
- package/web/assets/{interface-copy-clipboard.svg-BaK2fHKS.js → interface-copy-clipboard.svg-DuwyZprv.js} +1 -1
- package/web/assets/{interface-edit-attachment.svg-CrpyP6c6.js → interface-edit-attachment.svg-C4lXPh7a.js} +1 -1
- package/web/assets/{interface-edit-binocular.svg-Cw-YeqUQ.js → interface-edit-binocular.svg-CuA4f4ED.js} +1 -1
- package/web/assets/{interface-edit-magic-wand.svg-BPa49t_4.js → interface-edit-magic-wand.svg-D-Cc4zpI.js} +1 -1
- package/web/assets/{interface-edit-tool-paint-roller.svg-Cfag7vxY.js → interface-edit-tool-paint-roller.svg-MtAeMQ6k.js} +1 -1
- package/web/assets/{interface-edit-tool-pencil.svg-BNAmX0d_.js → interface-edit-tool-pencil.svg-ZAP8C3Sw.js} +1 -1
- package/web/assets/{interface-favorite-award.svg-CIMvocAv.js → interface-favorite-award.svg-DRZh5var.js} +1 -1
- package/web/assets/{interface-favorite-flag.svg-8C3GXK06.js → interface-favorite-flag.svg-Dy0qBZak.js} +1 -1
- package/web/assets/{interface-favorite-heart.svg-CEU_IALn.js → interface-favorite-heart.svg-Cjxi5AEp.js} +1 -1
- package/web/assets/{interface-favorite-star.svg-Bs0RUtgk.js → interface-favorite-star.svg-B1OPbNTd.js} +1 -1
- package/web/assets/{interface-favorite-stars-sparkles.svg-CZYZ5qkH.js → interface-favorite-stars-sparkles.svg-CvnZTUkf.js} +1 -1
- package/web/assets/{interface-hierarchy-flowchart.svg-DOgEXHV2.js → interface-hierarchy-flowchart.svg-GGCH0pvQ.js} +1 -1
- package/web/assets/{interface-home-house.svg-lDERGk8q.js → interface-home-house.svg-DB_dC7eo.js} +1 -1
- package/web/assets/{interface-hyperlink.svg-CAZrs64U.js → interface-hyperlink.svg-LlMqAHmb.js} +1 -1
- package/web/assets/{interface-lighting-brightness.svg-CVANBB7i.js → interface-lighting-brightness.svg-DutEgNfQ.js} +1 -1
- package/web/assets/{interface-lock-closed.svg-qDLyceL-.js → interface-lock-closed.svg-DteyBWrL.js} +1 -1
- package/web/assets/{interface-lock-open-unlock.svg-Bc-cq6eU.js → interface-lock-open-unlock.svg-D2g-W1Mn.js} +1 -1
- package/web/assets/{interface-login-key.svg-D6wZBYEi.js → interface-login-key.svg-Dk1JjhYH.js} +1 -1
- package/web/assets/{interface-search.svg-BVM6kkvA.js → interface-search.svg-CDHAdhLc.js} +1 -1
- package/web/assets/{interface-setting-cog.svg-uJYqlmKx.js → interface-setting-cog.svg-BXKxgm-B.js} +1 -1
- package/web/assets/{interface-share-megaphone-bullhorn.svg-CgBVBu7Z.js → interface-share-megaphone-bullhorn.svg-Fq3c3_sE.js} +1 -1
- package/web/assets/{interface-share-rocket.svg-C1iCXMlX.js → interface-share-rocket.svg-BBIuiQ8_.js} +1 -1
- package/web/assets/{interface-share-satellite.svg-uH-Cvq9d.js → interface-share-satellite.svg-LZRzoY-Y.js} +1 -1
- package/web/assets/{interface-share-space-ship.svg-81lauyV5.js → interface-share-space-ship.svg-C6EewxDh.js} +1 -1
- package/web/assets/{interface-share.svg-DO85t-F0.js → interface-share.svg-Bj60UW_t.js} +1 -1
- package/web/assets/{interface-signal-square.svg-CFAni6lY.js → interface-signal-square.svg-wJGg3ZJ7.js} +1 -1
- package/web/assets/{interface-time-clock-circle.svg-BUQfluh7.js → interface-time-clock-circle.svg-C2Ki_bgh.js} +1 -1
- package/web/assets/{interface-time-hour-glass.svg-BAZDU-C5.js → interface-time-hour-glass.svg-BeaTe2YW.js} +1 -1
- package/web/assets/{interface-users-multiple.svg-Bj0AvF2-.js → interface-users-multiple.svg-ZNPhOLEJ.js} +1 -1
- package/web/assets/{interface-weather-moon.svg-Cxz-5thD.js → interface-weather-moon.svg-CzOxK1E2.js} +1 -1
- package/web/assets/{javascript-CuP68vN5.js → javascript-CV2jmATe.js} +1 -1
- package/web/assets/{jsonMode-CdGjze9r.js → jsonMode-BpNATOZn.js} +1 -1
- package/web/assets/{liquid-fJJZPdJb.js → liquid-Bkbhlfu6.js} +1 -1
- package/web/assets/{lspLanguageFeatures-YzzH9q9a.js → lspLanguageFeatures-BIiCr6WR.js} +1 -1
- package/web/assets/{mail-chat-bubble-square.svg-DY1-sN8v.js → mail-chat-bubble-square.svg-B-R9ItyG.js} +1 -1
- package/web/assets/{mail-send-email-paper-airplane.svg-6zVEUG2-.js → mail-send-email-paper-airplane.svg-F4sC3JuQ.js} +1 -1
- package/web/assets/{mail-send-envelope.svg-DNpA7Auy.js → mail-send-envelope.svg-BaE9bGol.js} +1 -1
- package/web/assets/{mdx-CphM-wvX.js → mdx-CsTzsRLc.js} +1 -1
- package/web/assets/{minus-DD84SZSh.js → minus-CsIPqtIl.js} +1 -1
- package/web/assets/modal-B_0-h4nC.js +1 -0
- package/web/assets/{modal-CKGM8Wb3.js → modal-KwmdNF_4.js} +1 -1
- package/web/assets/{money-cashier-receipt.svg-ChxLUMT0.js → money-cashier-receipt.svg-C8rqn3qa.js} +1 -1
- package/web/assets/{money-currency-dollar-pay.svg-CcPdfv1E.js → money-currency-dollar-pay.svg-BW5dnMxx.js} +1 -1
- package/web/assets/{money-graph-arrow-increase.svg-BsmXO8yM.js → money-graph-arrow-increase.svg-fHNc8kor.js} +1 -1
- package/web/assets/{money-graph-bar-chart-increase.svg-QVk3zD8i.js → money-graph-bar-chart-increase.svg-65H_xZ15.js} +1 -1
- package/web/assets/{multiselect-3cR58mLz.js → multiselect-Z0owdrkn.js} +1 -1
- package/web/assets/{nature-ecology-leaf.svg-nzup63P6.js → nature-ecology-leaf.svg-BIZVZEYz.js} +1 -1
- package/web/assets/{password-CCYLOu-C.js → password-Be5EVCzq.js} +1 -1
- package/web/assets/{phone-telephone.svg-BLtgdZw-.js → phone-telephone.svg-B1dHjXge.js} +1 -1
- package/web/assets/{plus-jk73RdzY.js → plus-BY4yX4ZS.js} +1 -1
- package/web/assets/process.store-B-PvNJQb.js +1 -0
- package/web/assets/{programming-bug.svg-BCN6lOn1.js → programming-bug.svg-DJHBIgCF.js} +1 -1
- package/web/assets/{programming-cloud.svg-DHNBRNkQ.js → programming-cloud.svg-26MWe8cC.js} +1 -1
- package/web/assets/{programming-computer-database-server.svg-C4DheEbm.js → programming-computer-database-server.svg-Dy7gdMab.js} +1 -1
- package/web/assets/{programming-computer-database.svg-cD2w2ZZ6.js → programming-computer-database.svg-3HsFit56.js} +1 -1
- package/web/assets/{programming-module-four-layout.svg-D6_P2rTG.js → programming-module-four-layout.svg-CLumiwsC.js} +1 -1
- package/web/assets/{programming-module-three.svg-Dc076Z_f.js → programming-module-three.svg-3DvVSvY_.js} +1 -1
- package/web/assets/{programming-module.svg-D0c9akII.js → programming-module.svg-CgtgW8TW.js} +1 -1
- package/web/assets/{programming-script-code.svg-BrT3KZQe.js → programming-script-code.svg-DdeXzy2-.js} +1 -1
- package/web/assets/project-launch.store-DtFeb4vv.js +1 -0
- package/web/assets/project.store-DcaBpnnB.js +1 -0
- package/web/assets/{python-DMw-TRDY.js → python-YqWM3LFr.js} +1 -1
- package/web/assets/{radiobutton-CnoEo0qc.js → radiobutton-Pm1c37Fw.js} +1 -1
- package/web/assets/{razor-BTS4Lk96.js → razor-BtNiyC__.js} +1 -1
- package/web/assets/router-DnVYXVMw.js +1 -0
- package/web/assets/settings-scope-DR8NUZr5.js +1 -0
- package/web/assets/{settings.store-DeGpnclr.js → settings.store-CniuNQ3t.js} +1 -1
- package/web/assets/{shopping-cart.svg-pvFNKXP_.js → shopping-cart.svg-ejbEU5yG.js} +1 -1
- package/web/assets/{shopping-gift-present.svg-PYJ4_vdS.js → shopping-gift-present.svg-RLuyvmga.js} +1 -1
- package/web/assets/{shopping-shipping-box-parcel-package.svg-KMRd9Rmg.js → shopping-shipping-box-parcel-package.svg-0GduEUbl.js} +1 -1
- package/web/assets/{src-NXursDRf.js → src-BS3JGGS_.js} +1 -1
- package/web/assets/{src-BsadAol0.js → src-BzZzroPd.js} +3 -3
- package/web/assets/{tabpanel-CKudNnqo.js → tabpanel-CssLXh-h.js} +1 -1
- package/web/assets/{tag-new-circle.svg-Bf83DYRq.js → tag-new-circle.svg-CEdgH15R.js} +1 -1
- package/web/assets/theme-C7HVmgEO.js +1 -0
- package/web/assets/{toggleswitch-Cv0supU2.js → toggleswitch-CEiGEBl3.js} +1 -1
- package/web/assets/{travel-map-earth-globe.svg-WxnFDzEH.js → travel-map-earth-globe.svg-Dmwx1Lus.js} +1 -1
- package/web/assets/trpc-C6zILEMh.js +1 -0
- package/web/assets/{tsMode-CfruLmor.js → tsMode-DpPT4F6s.js} +1 -1
- package/web/assets/{typescript-BvsjNfHT.js → typescript-DoO0syM1.js} +1 -1
- package/web/assets/useAiChatDrawer-CnrYG1GW.js +1 -0
- package/web/assets/{useCloudOrg-B0o8vN4e.js → useCloudOrg-DWmP9gqs.js} +1 -1
- package/web/assets/{useEnvVarAutocomplete-DJMTIim7.js → useEnvVarAutocomplete-Dkx7Cn9l.js} +1 -1
- package/web/assets/{useProjectCatalog-B6GXBDDA.js → useProjectCatalog-Cu3VZu2F.js} +1 -1
- package/web/assets/{useProjectCloudOrg-BwLsTiz0.js → useProjectCloudOrg-CG7seJKu.js} +1 -1
- package/web/assets/{useServiceUrlHost-CE4Qoy-J.js → useServiceUrlHost-ADKWqhx0.js} +1 -1
- package/web/assets/{xml-BTID20Kj.js → xml-FoCdWVvH.js} +1 -1
- package/web/assets/{yaml-BtOf_8je.js → yaml-CgRsanOy.js} +1 -1
- package/web/index.html +1 -1
- package/chunk-BVBK2WII.js.map +0 -1
- package/chunk-GL7WA5K3.js.map +0 -1
- package/chunk-VNLIA5PV.js.map +0 -1
- package/chunk-XTLQOYLT.js.map +0 -1
- package/src-YUVA6WCM.js.map +0 -1
- package/web/assets/AiChatPage-DzTc9-iH.js +0 -1
- package/web/assets/CloudAccountPage-DTrPLz-p.js +0 -1
- package/web/assets/ServiceFormPage-B8jcMT3b.css +0 -1
- package/web/assets/ServiceFormPage-Dr_e9QMM.js +0 -1
- package/web/assets/WikiPage-D7N7nA2O.js +0 -1
- package/web/assets/cloud-client-CujRC6FF.js +0 -1
- package/web/assets/cloud-session-CSIV9Uvx.js +0 -1
- package/web/assets/interface-content-folder.svg-BPZbNQNK.js +0 -1
- package/web/assets/modal-Dd5rzDUd.js +0 -1
- package/web/assets/process.store-jsfEBwiA.js +0 -1
- package/web/assets/project-launch.store-Bp7vasUu.js +0 -1
- package/web/assets/project.store-DuZriz9o.js +0 -1
- package/web/assets/router-BU2tqcBm.js +0 -1
- package/web/assets/settings-scope-Bg_X1n_Y.js +0 -1
- package/web/assets/theme-D6M00FyZ.js +0 -1
- package/web/assets/trpc-mWVODCs2.js +0 -1
- package/web/assets/useAiChatDrawer-vNey6IKe.js +0 -1
- /package/{agent-manager-BSPEFZKZ.js.map → agent-manager-FZFFWISA.js.map} +0 -0
- /package/{chat-SE5GIT4B.js.map → chat-JIJQ7IJS.js.map} +0 -0
- /package/{chunk-NIU3CN5A.js.map → chunk-N3ZI35SC.js.map} +0 -0
- /package/{companion-HEJHC3UR.js.map → companion-OZODV5BR.js.map} +0 -0
- /package/{settings-manager-4GAINSJO.js.map → settings-manager-MAVD4GAS.js.map} +0 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{Aa as e,B as t,Ca as n,Ea as r,En as i,Fa as a,Fi as o,G as s,Gi as c,H as l,Hi as u,Ht as d,Ia as f,Ii as p,In as m,J as h,Jt as g,K as _,Li as v,Na as y,Oi as b,Pa as x,Pi as S,Qa as C,Ri as w,Ta as T,U as ee,Ui as E,V as D,W as te,Xi as ne,Y as re,Yn as O,Zn as k,_a as ie,_i as ae,ba as oe,ca as se,cn as ce,dt as le,ea as A,fa as j,ft as ue,ha as M,hn as de,hr as fe,ji as pe,jt as me,ka as N,ki as he,lr as ge,ma as _e,mn as ve,no as P,pa as ye,q as be,qa as F,qi as xe,qn as Se,ta as Ce,ua as we,ur as Te,va as Ee,vi as De,vt as Oe,yr as ke,yt as Ae,z as je,zt as Me}from"./index-e5dmzMc-.js";import{t as Ne}from"./uuid--pMuF47W.js";import{t as Pe}from"./checkbox-BCCx0Nu6.js";import{t as Fe}from"./multiselect-3cR58mLz.js";var Ie={name:`ControlButton`,compatConfig:{MODE:3}},Le=(e,t)=>{let n=e.__vccOpts||e;for(let[e,r]of t)n[e]=r;return n},I={type:`button`,class:`vue-flow__controls-button`};function L(e,t,n,r,i,a){return j(),w(`button`,I,[M(e.$slots,`default`)])}var Re=Le(Ie,[[`render`,L]]),ze={xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 32 32`},Be=[o(`path`,{d:`M32 18.133H18.133V32h-4.266V18.133H0v-4.266h13.867V0h4.266v13.867H32z`},null,-1)];function Ve(e,t){return j(),w(`svg`,ze,Be)}var R={render:Ve},He={xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 32 5`},Ue=[o(`path`,{d:`M0 0h32v4.2H0z`},null,-1)];function We(e,t){return j(),w(`svg`,He,Ue)}var Ge={render:We},Ke={xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 32 30`},qe=[o(`path`,{d:`M3.692 4.63c0-.53.4-.938.939-.938h5.215V0H4.708C2.13 0 0 2.054 0 4.63v5.216h3.692V4.631zM27.354 0h-5.2v3.692h5.17c.53 0 .984.4.984.939v5.215H32V4.631A4.624 4.624 0 0 0 27.354 0zm.954 24.83c0 .532-.4.94-.939.94h-5.215v3.768h5.215c2.577 0 4.631-2.13 4.631-4.707v-5.139h-3.692v5.139zm-23.677.94a.919.919 0 0 1-.939-.94v-5.138H0v5.139c0 2.577 2.13 4.707 4.708 4.707h5.138V25.77H4.631z`},null,-1)];function Je(e,t){return j(),w(`svg`,Ke,qe)}var Ye={render:Je},Xe={xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 25 32`},Ze=[o(`path`,{d:`M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0 8 0 4.571 3.429 4.571 7.619v3.048H3.048A3.056 3.056 0 0 0 0 13.714v15.238A3.056 3.056 0 0 0 3.048 32h18.285a3.056 3.056 0 0 0 3.048-3.048V13.714a3.056 3.056 0 0 0-3.048-3.047zM12.19 24.533a3.056 3.056 0 0 1-3.047-3.047 3.056 3.056 0 0 1 3.047-3.048 3.056 3.056 0 0 1 3.048 3.048 3.056 3.056 0 0 1-3.048 3.047zm4.724-13.866H7.467V7.619c0-2.59 2.133-4.724 4.723-4.724 2.591 0 4.724 2.133 4.724 4.724v3.048z`},null,-1)];function Qe(e,t){return j(),w(`svg`,Xe,Ze)}var $e={render:Qe},z={xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 25 32`},B=[o(`path`,{d:`M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0c-4.114 1.828-1.37 2.133.305 2.438 1.676.305 4.42 2.59 4.42 5.181v3.048H3.047A3.056 3.056 0 0 0 0 13.714v15.238A3.056 3.056 0 0 0 3.048 32h18.285a3.056 3.056 0 0 0 3.048-3.048V13.714a3.056 3.056 0 0 0-3.048-3.047zM12.19 24.533a3.056 3.056 0 0 1-3.047-3.047 3.056 3.056 0 0 1 3.047-3.048 3.056 3.056 0 0 1 3.048 3.048 3.056 3.056 0 0 1-3.048 3.047z`},null,-1)];function V(e,t){return j(),w(`svg`,z,B)}var H={render:V},et=c({name:`Controls`,compatConfig:{MODE:3},props:{showZoom:{type:Boolean,default:!0},showFitView:{type:Boolean,default:!0},showInteractive:{type:Boolean,default:!0},fitViewParams:{},position:{default:()=>D.BottomLeft}},emits:[`zoomIn`,`zoomOut`,`fitView`,`interactionChange`],setup(e,{emit:t}){let{nodesDraggable:n,nodesConnectable:r,elementsSelectable:i,setInteractive:a,zoomIn:o,zoomOut:s,fitView:c,viewport:u,minZoom:d,maxZoom:f}=h(),m=C(()=>n.value||r.value||i.value),g=C(()=>u.value.zoom<=d.value),_=C(()=>u.value.zoom>=f.value);function y(){o(),t(`zoomIn`)}function b(){s(),t(`zoomOut`)}function x(){c(e.fitViewParams),t(`fitView`)}function S(){a(!m.value),t(`interactionChange`,!m.value)}return(e,t)=>(j(),p(P(l),{class:`vue-flow__controls`,position:e.position},{default:N(()=>[M(e.$slots,`top`),e.showZoom?(j(),w(pe,{key:0},[M(e.$slots,`control-zoom-in`,{},()=>[E(Re,{class:`vue-flow__controls-zoomin`,disabled:_.value,onClick:y},{default:N(()=>[M(e.$slots,`icon-zoom-in`,{},()=>[(j(),p(Ee(P(R))))])]),_:3},8,[`disabled`])]),M(e.$slots,`control-zoom-out`,{},()=>[E(Re,{class:`vue-flow__controls-zoomout`,disabled:g.value,onClick:b},{default:N(()=>[M(e.$slots,`icon-zoom-out`,{},()=>[(j(),p(Ee(P(Ge))))])]),_:3},8,[`disabled`])])],64)):v(``,!0),e.showFitView?M(e.$slots,`control-fit-view`,{key:1},()=>[E(Re,{class:`vue-flow__controls-fitview`,onClick:x},{default:N(()=>[M(e.$slots,`icon-fit-view`,{},()=>[(j(),p(Ee(P(Ye))))])]),_:3})]):v(``,!0),e.showInteractive?M(e.$slots,`control-interactive`,{key:2},()=>[e.showInteractive?(j(),p(Re,{key:0,class:`vue-flow__controls-interactive`,onClick:S},{default:N(()=>[m.value?M(e.$slots,`icon-unlock`,{key:0},()=>[(j(),p(Ee(P(H))))]):v(``,!0),m.value?v(``,!0):M(e.$slots,`icon-lock`,{key:1},()=>[(j(),p(Ee(P($e))))])]),_:3})):v(``,!0)]):v(``,!0),M(e.$slots,`default`)]),_:3},8,[`position`]))}}),tt={value:()=>{}};function U(){for(var e=0,t=arguments.length,n={},r;e<t;++e){if(!(r=arguments[e]+``)||r in n||/[\s.]/.test(r))throw Error(`illegal type: `+r);n[r]=[]}return new nt(n)}function nt(e){this._=e}function rt(e,t){return e.trim().split(/^|\s+/).map(function(e){var n=``,r=e.indexOf(`.`);if(r>=0&&(n=e.slice(r+1),e=e.slice(0,r)),e&&!t.hasOwnProperty(e))throw Error(`unknown type: `+e);return{type:e,name:n}})}nt.prototype=U.prototype={constructor:nt,on:function(e,t){var n=this._,r=rt(e+``,n),i,a=-1,o=r.length;if(arguments.length<2){for(;++a<o;)if((i=(e=r[a]).type)&&(i=it(n[i],e.name)))return i;return}if(t!=null&&typeof t!=`function`)throw Error(`invalid callback: `+t);for(;++a<o;)if(i=(e=r[a]).type)n[i]=at(n[i],e.name,t);else if(t==null)for(i in n)n[i]=at(n[i],e.name,null);return this},copy:function(){var e={},t=this._;for(var n in t)e[n]=t[n].slice();return new nt(e)},call:function(e,t){if((i=arguments.length-2)>0)for(var n=Array(i),r=0,i,a;r<i;++r)n[r]=arguments[r+2];if(!this._.hasOwnProperty(e))throw Error(`unknown type: `+e);for(a=this._[e],r=0,i=a.length;r<i;++r)a[r].value.apply(t,n)},apply:function(e,t,n){if(!this._.hasOwnProperty(e))throw Error(`unknown type: `+e);for(var r=this._[e],i=0,a=r.length;i<a;++i)r[i].value.apply(t,n)}};function it(e,t){for(var n=0,r=e.length,i;n<r;++n)if((i=e[n]).name===t)return i.value}function at(e,t,n){for(var r=0,i=e.length;r<i;++r)if(e[r].name===t){e[r]=tt,e=e.slice(0,r).concat(e.slice(r+1));break}return n!=null&&e.push({name:t,value:n}),e}var ot=`http://www.w3.org/1999/xhtml`,st={svg:`http://www.w3.org/2000/svg`,xhtml:ot,xlink:`http://www.w3.org/1999/xlink`,xml:`http://www.w3.org/XML/1998/namespace`,xmlns:`http://www.w3.org/2000/xmlns/`};function ct(e){var t=e+=``,n=t.indexOf(`:`);return n>=0&&(t=e.slice(0,n))!==`xmlns`&&(e=e.slice(n+1)),st.hasOwnProperty(t)?{space:st[t],local:e}:e}function lt(e){return function(){var t=this.ownerDocument,n=this.namespaceURI;return n===ot&&t.documentElement.namespaceURI===ot?t.createElement(e):t.createElementNS(n,e)}}function ut(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}function dt(e){var t=ct(e);return(t.local?ut:lt)(t)}function ft(){}function pt(e){return e==null?ft:function(){return this.querySelector(e)}}function mt(e){typeof e!=`function`&&(e=pt(e));for(var t=this._groups,n=t.length,r=Array(n),i=0;i<n;++i)for(var a=t[i],o=a.length,s=r[i]=Array(o),c,l,u=0;u<o;++u)(c=a[u])&&(l=e.call(c,c.__data__,u,a))&&(`__data__`in c&&(l.__data__=c.__data__),s[u]=l);return new q(r,this._parents)}function ht(e){return e==null?[]:Array.isArray(e)?e:Array.from(e)}function gt(){return[]}function _t(e){return e==null?gt:function(){return this.querySelectorAll(e)}}function vt(e){return function(){return ht(e.apply(this,arguments))}}function yt(e){e=typeof e==`function`?vt(e):_t(e);for(var t=this._groups,n=t.length,r=[],i=[],a=0;a<n;++a)for(var o=t[a],s=o.length,c,l=0;l<s;++l)(c=o[l])&&(r.push(e.call(c,c.__data__,l,o)),i.push(c));return new q(r,i)}function bt(e){return function(){return this.matches(e)}}function xt(e){return function(t){return t.matches(e)}}var St=Array.prototype.find;function Ct(e){return function(){return St.call(this.children,e)}}function W(){return this.firstElementChild}function wt(e){return this.select(e==null?W:Ct(typeof e==`function`?e:xt(e)))}var Tt=Array.prototype.filter;function G(){return Array.from(this.children)}function Et(e){return function(){return Tt.call(this.children,e)}}function Dt(e){return this.selectAll(e==null?G:Et(typeof e==`function`?e:xt(e)))}function Ot(e){typeof e!=`function`&&(e=bt(e));for(var t=this._groups,n=t.length,r=Array(n),i=0;i<n;++i)for(var a=t[i],o=a.length,s=r[i]=[],c,l=0;l<o;++l)(c=a[l])&&e.call(c,c.__data__,l,a)&&s.push(c);return new q(r,this._parents)}function kt(e){return Array(e.length)}function At(){return new q(this._enter||this._groups.map(kt),this._parents)}function jt(e,t){this.ownerDocument=e.ownerDocument,this.namespaceURI=e.namespaceURI,this._next=null,this._parent=e,this.__data__=t}jt.prototype={constructor:jt,appendChild:function(e){return this._parent.insertBefore(e,this._next)},insertBefore:function(e,t){return this._parent.insertBefore(e,t)},querySelector:function(e){return this._parent.querySelector(e)},querySelectorAll:function(e){return this._parent.querySelectorAll(e)}};function Mt(e){return function(){return e}}function Nt(e,t,n,r,i,a){for(var o=0,s,c=t.length,l=a.length;o<l;++o)(s=t[o])?(s.__data__=a[o],r[o]=s):n[o]=new jt(e,a[o]);for(;o<c;++o)(s=t[o])&&(i[o]=s)}function Pt(e,t,n,r,i,a,o){var s,c,l=new Map,u=t.length,d=a.length,f=Array(u),p;for(s=0;s<u;++s)(c=t[s])&&(f[s]=p=o.call(c,c.__data__,s,t)+``,l.has(p)?i[s]=c:l.set(p,c));for(s=0;s<d;++s)p=o.call(e,a[s],s,a)+``,(c=l.get(p))?(r[s]=c,c.__data__=a[s],l.delete(p)):n[s]=new jt(e,a[s]);for(s=0;s<u;++s)(c=t[s])&&l.get(f[s])===c&&(i[s]=c)}function Ft(e){return e.__data__}function It(e,t){if(!arguments.length)return Array.from(this,Ft);var n=t?Pt:Nt,r=this._parents,i=this._groups;typeof e!=`function`&&(e=Mt(e));for(var a=i.length,o=Array(a),s=Array(a),c=Array(a),l=0;l<a;++l){var u=r[l],d=i[l],f=d.length,p=Lt(e.call(u,u&&u.__data__,l,r)),m=p.length,h=s[l]=Array(m),g=o[l]=Array(m);n(u,d,h,g,c[l]=Array(f),p,t);for(var _=0,v=0,y,b;_<m;++_)if(y=h[_]){for(_>=v&&(v=_+1);!(b=g[v])&&++v<m;);y._next=b||null}}return o=new q(o,r),o._enter=s,o._exit=c,o}function Lt(e){return typeof e==`object`&&`length`in e?e:Array.from(e)}function Rt(){return new q(this._exit||this._groups.map(kt),this._parents)}function zt(e,t,n){var r=this.enter(),i=this,a=this.exit();return typeof e==`function`?(r=e(r),r&&=r.selection()):r=r.append(e+``),t!=null&&(i=t(i),i&&=i.selection()),n==null?a.remove():n(a),r&&i?r.merge(i).order():i}function Bt(e){for(var t=e.selection?e.selection():e,n=this._groups,r=t._groups,i=n.length,a=r.length,o=Math.min(i,a),s=Array(i),c=0;c<o;++c)for(var l=n[c],u=r[c],d=l.length,f=s[c]=Array(d),p,m=0;m<d;++m)(p=l[m]||u[m])&&(f[m]=p);for(;c<i;++c)s[c]=n[c];return new q(s,this._parents)}function K(){for(var e=this._groups,t=-1,n=e.length;++t<n;)for(var r=e[t],i=r.length-1,a=r[i],o;--i>=0;)(o=r[i])&&(a&&o.compareDocumentPosition(a)^4&&a.parentNode.insertBefore(o,a),a=o);return this}function Vt(e){e||=Ht;function t(t,n){return t&&n?e(t.__data__,n.__data__):!t-!n}for(var n=this._groups,r=n.length,i=Array(r),a=0;a<r;++a){for(var o=n[a],s=o.length,c=i[a]=Array(s),l,u=0;u<s;++u)(l=o[u])&&(c[u]=l);c.sort(t)}return new q(i,this._parents).order()}function Ht(e,t){return e<t?-1:e>t?1:e>=t?0:NaN}function Ut(){var e=arguments[0];return arguments[0]=this,e.apply(null,arguments),this}function Wt(){return Array.from(this)}function Gt(){for(var e=this._groups,t=0,n=e.length;t<n;++t)for(var r=e[t],i=0,a=r.length;i<a;++i){var o=r[i];if(o)return o}return null}function Kt(){let e=0;for(let t of this)++e;return e}function qt(){return!this.node()}function Jt(e){for(var t=this._groups,n=0,r=t.length;n<r;++n)for(var i=t[n],a=0,o=i.length,s;a<o;++a)(s=i[a])&&e.call(s,s.__data__,a,i);return this}function Yt(e){return function(){this.removeAttribute(e)}}function Xt(e){return function(){this.removeAttributeNS(e.space,e.local)}}function Zt(e,t){return function(){this.setAttribute(e,t)}}function Qt(e,t){return function(){this.setAttributeNS(e.space,e.local,t)}}function $t(e,t){return function(){var n=t.apply(this,arguments);n==null?this.removeAttribute(e):this.setAttribute(e,n)}}function en(e,t){return function(){var n=t.apply(this,arguments);n==null?this.removeAttributeNS(e.space,e.local):this.setAttributeNS(e.space,e.local,n)}}function tn(e,t){var n=ct(e);if(arguments.length<2){var r=this.node();return n.local?r.getAttributeNS(n.space,n.local):r.getAttribute(n)}return this.each((t==null?n.local?Xt:Yt:typeof t==`function`?n.local?en:$t:n.local?Qt:Zt)(n,t))}function nn(e){return e.ownerDocument&&e.ownerDocument.defaultView||e.document&&e||e.defaultView}function rn(e){return function(){this.style.removeProperty(e)}}function an(e,t,n){return function(){this.style.setProperty(e,t,n)}}function on(e,t,n){return function(){var r=t.apply(this,arguments);r==null?this.style.removeProperty(e):this.style.setProperty(e,r,n)}}function sn(e,t,n){return arguments.length>1?this.each((t==null?rn:typeof t==`function`?on:an)(e,t,n??``)):cn(this.node(),e)}function cn(e,t){return e.style.getPropertyValue(t)||nn(e).getComputedStyle(e,null).getPropertyValue(t)}function ln(e){return function(){delete this[e]}}function un(e,t){return function(){this[e]=t}}function dn(e,t){return function(){var n=t.apply(this,arguments);n==null?delete this[e]:this[e]=n}}function fn(e,t){return arguments.length>1?this.each((t==null?ln:typeof t==`function`?dn:un)(e,t)):this.node()[e]}function pn(e){return e.trim().split(/^|\s+/)}function mn(e){return e.classList||new hn(e)}function hn(e){this._node=e,this._names=pn(e.getAttribute(`class`)||``)}hn.prototype={add:function(e){this._names.indexOf(e)<0&&(this._names.push(e),this._node.setAttribute(`class`,this._names.join(` `)))},remove:function(e){var t=this._names.indexOf(e);t>=0&&(this._names.splice(t,1),this._node.setAttribute(`class`,this._names.join(` `)))},contains:function(e){return this._names.indexOf(e)>=0}};function gn(e,t){for(var n=mn(e),r=-1,i=t.length;++r<i;)n.add(t[r])}function _n(e,t){for(var n=mn(e),r=-1,i=t.length;++r<i;)n.remove(t[r])}function vn(e){return function(){gn(this,e)}}function yn(e){return function(){_n(this,e)}}function bn(e,t){return function(){(t.apply(this,arguments)?gn:_n)(this,e)}}function xn(e,t){var n=pn(e+``);if(arguments.length<2){for(var r=mn(this.node()),i=-1,a=n.length;++i<a;)if(!r.contains(n[i]))return!1;return!0}return this.each((typeof t==`function`?bn:t?vn:yn)(n,t))}function Sn(){this.textContent=``}function Cn(e){return function(){this.textContent=e}}function wn(e){return function(){this.textContent=e.apply(this,arguments)??``}}function Tn(e){return arguments.length?this.each(e==null?Sn:(typeof e==`function`?wn:Cn)(e)):this.node().textContent}function En(){this.innerHTML=``}function Dn(e){return function(){this.innerHTML=e}}function On(e){return function(){this.innerHTML=e.apply(this,arguments)??``}}function kn(e){return arguments.length?this.each(e==null?En:(typeof e==`function`?On:Dn)(e)):this.node().innerHTML}function An(){this.nextSibling&&this.parentNode.appendChild(this)}function jn(){return this.each(An)}function Mn(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function Nn(){return this.each(Mn)}function Pn(e){var t=typeof e==`function`?e:dt(e);return this.select(function(){return this.appendChild(t.apply(this,arguments))})}function Fn(){return null}function In(e,t){var n=typeof e==`function`?e:dt(e),r=t==null?Fn:typeof t==`function`?t:pt(t);return this.select(function(){return this.insertBefore(n.apply(this,arguments),r.apply(this,arguments)||null)})}function Ln(){var e=this.parentNode;e&&e.removeChild(this)}function Rn(){return this.each(Ln)}function zn(){var e=this.cloneNode(!1),t=this.parentNode;return t?t.insertBefore(e,this.nextSibling):e}function Bn(){var e=this.cloneNode(!0),t=this.parentNode;return t?t.insertBefore(e,this.nextSibling):e}function Vn(e){return this.select(e?Bn:zn)}function Hn(e){return arguments.length?this.property(`__data__`,e):this.node().__data__}function Un(e){return function(t){e.call(this,t,this.__data__)}}function Wn(e){return e.trim().split(/^|\s+/).map(function(e){var t=``,n=e.indexOf(`.`);return n>=0&&(t=e.slice(n+1),e=e.slice(0,n)),{type:e,name:t}})}function Gn(e){return function(){var t=this.__on;if(t){for(var n=0,r=-1,i=t.length,a;n<i;++n)a=t[n],(!e.type||a.type===e.type)&&a.name===e.name?this.removeEventListener(a.type,a.listener,a.options):t[++r]=a;++r?t.length=r:delete this.__on}}}function Kn(e,t,n){return function(){var r=this.__on,i,a=Un(t);if(r){for(var o=0,s=r.length;o<s;++o)if((i=r[o]).type===e.type&&i.name===e.name){this.removeEventListener(i.type,i.listener,i.options),this.addEventListener(i.type,i.listener=a,i.options=n),i.value=t;return}}this.addEventListener(e.type,a,n),i={type:e.type,name:e.name,value:t,listener:a,options:n},r?r.push(i):this.__on=[i]}}function qn(e,t,n){var r=Wn(e+``),i,a=r.length,o;if(arguments.length<2){var s=this.node().__on;if(s){for(var c=0,l=s.length,u;c<l;++c)for(i=0,u=s[c];i<a;++i)if((o=r[i]).type===u.type&&o.name===u.name)return u.value}return}for(s=t?Kn:Gn,i=0;i<a;++i)this.each(s(r[i],t,n));return this}function Jn(e,t,n){var r=nn(e),i=r.CustomEvent;typeof i==`function`?i=new i(t,n):(i=r.document.createEvent(`Event`),n?(i.initEvent(t,n.bubbles,n.cancelable),i.detail=n.detail):i.initEvent(t,!1,!1)),e.dispatchEvent(i)}function Yn(e,t){return function(){return Jn(this,e,t)}}function Xn(e,t){return function(){return Jn(this,e,t.apply(this,arguments))}}function Zn(e,t){return this.each((typeof t==`function`?Xn:Yn)(e,t))}function*Qn(){for(var e=this._groups,t=0,n=e.length;t<n;++t)for(var r=e[t],i=0,a=r.length,o;i<a;++i)(o=r[i])&&(yield o)}var $n=[null];function q(e,t){this._groups=e,this._parents=t}function er(){return new q([[document.documentElement]],$n)}function tr(){return this}q.prototype=er.prototype={constructor:q,select:mt,selectAll:yt,selectChild:wt,selectChildren:Dt,filter:Ot,data:It,enter:At,exit:Rt,join:zt,merge:Bt,selection:tr,order:K,sort:Vt,call:Ut,nodes:Wt,node:Gt,size:Kt,empty:qt,each:Jt,attr:tn,style:sn,property:fn,classed:xn,text:Tn,html:kn,raise:jn,lower:Nn,append:Pn,insert:In,remove:Rn,clone:Vn,datum:Hn,on:qn,dispatch:Zn,[Symbol.iterator]:Qn};function nr(e){return typeof e==`string`?new q([[document.querySelector(e)]],[document.documentElement]):new q([[e]],$n)}function rr(e){let t;for(;t=e.sourceEvent;)e=t;return e}function ir(e,t){if(e=rr(e),t===void 0&&(t=e.currentTarget),t){var n=t.ownerSVGElement||t;if(n.createSVGPoint){var r=n.createSVGPoint();return r.x=e.clientX,r.y=e.clientY,r=r.matrixTransform(t.getScreenCTM().inverse()),[r.x,r.y]}if(t.getBoundingClientRect){var i=t.getBoundingClientRect();return[e.clientX-i.left-t.clientLeft,e.clientY-i.top-t.clientTop]}}return[e.pageX,e.pageY]}var ar={capture:!0,passive:!1};function or(e){e.preventDefault(),e.stopImmediatePropagation()}function sr(e){var t=e.document.documentElement,n=nr(e).on(`dragstart.drag`,or,ar);`onselectstart`in t?n.on(`selectstart.drag`,or,ar):(t.__noselect=t.style.MozUserSelect,t.style.MozUserSelect=`none`)}function cr(e,t){var n=e.document.documentElement,r=nr(e).on(`dragstart.drag`,null);t&&(r.on(`click.drag`,or,ar),setTimeout(function(){r.on(`click.drag`,null)},0)),`onselectstart`in n?r.on(`selectstart.drag`,null):(n.style.MozUserSelect=n.__noselect,delete n.__noselect)}function lr(e,t,n){e.prototype=t.prototype=n,n.constructor=e}function ur(e,t){var n=Object.create(e.prototype);for(var r in t)n[r]=t[r];return n}function dr(){}var fr=.7,pr=1/fr,mr=`\\s*([+-]?\\d+)\\s*`,hr=`\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*`,J=`\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*`,gr=/^#([0-9a-f]{3,8})$/,_r=RegExp(`^rgb\\(${mr},${mr},${mr}\\)$`),vr=RegExp(`^rgb\\(${J},${J},${J}\\)$`),yr=RegExp(`^rgba\\(${mr},${mr},${mr},${hr}\\)$`),br=RegExp(`^rgba\\(${J},${J},${J},${hr}\\)$`),xr=RegExp(`^hsl\\(${hr},${J},${J}\\)$`),Sr=RegExp(`^hsla\\(${hr},${J},${J},${hr}\\)$`),Cr={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};lr(dr,Or,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:wr,formatHex:wr,formatHex8:Tr,formatHsl:Er,formatRgb:Dr,toString:Dr});function wr(){return this.rgb().formatHex()}function Tr(){return this.rgb().formatHex8()}function Er(){return Br(this).formatHsl()}function Dr(){return this.rgb().formatRgb()}function Or(e){var t,n;return e=(e+``).trim().toLowerCase(),(t=gr.exec(e))?(n=t[1].length,t=parseInt(t[1],16),n===6?kr(t):n===3?new Y(t>>8&15|t>>4&240,t>>4&15|t&240,(t&15)<<4|t&15,1):n===8?Ar(t>>24&255,t>>16&255,t>>8&255,(t&255)/255):n===4?Ar(t>>12&15|t>>8&240,t>>8&15|t>>4&240,t>>4&15|t&240,((t&15)<<4|t&15)/255):null):(t=_r.exec(e))?new Y(t[1],t[2],t[3],1):(t=vr.exec(e))?new Y(t[1]*255/100,t[2]*255/100,t[3]*255/100,1):(t=yr.exec(e))?Ar(t[1],t[2],t[3],t[4]):(t=br.exec(e))?Ar(t[1]*255/100,t[2]*255/100,t[3]*255/100,t[4]):(t=xr.exec(e))?zr(t[1],t[2]/100,t[3]/100,1):(t=Sr.exec(e))?zr(t[1],t[2]/100,t[3]/100,t[4]):Cr.hasOwnProperty(e)?kr(Cr[e]):e===`transparent`?new Y(NaN,NaN,NaN,0):null}function kr(e){return new Y(e>>16&255,e>>8&255,e&255,1)}function Ar(e,t,n,r){return r<=0&&(e=t=n=NaN),new Y(e,t,n,r)}function jr(e){return e instanceof dr||(e=Or(e)),e?(e=e.rgb(),new Y(e.r,e.g,e.b,e.opacity)):new Y}function Mr(e,t,n,r){return arguments.length===1?jr(e):new Y(e,t,n,r??1)}function Y(e,t,n,r){this.r=+e,this.g=+t,this.b=+n,this.opacity=+r}lr(Y,Mr,ur(dr,{brighter(e){return e=e==null?pr:pr**+e,new Y(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?fr:fr**+e,new Y(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new Y(Lr(this.r),Lr(this.g),Lr(this.b),Ir(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:Nr,formatHex:Nr,formatHex8:Pr,formatRgb:Fr,toString:Fr}));function Nr(){return`#${Rr(this.r)}${Rr(this.g)}${Rr(this.b)}`}function Pr(){return`#${Rr(this.r)}${Rr(this.g)}${Rr(this.b)}${Rr((isNaN(this.opacity)?1:this.opacity)*255)}`}function Fr(){let e=Ir(this.opacity);return`${e===1?`rgb(`:`rgba(`}${Lr(this.r)}, ${Lr(this.g)}, ${Lr(this.b)}${e===1?`)`:`, ${e})`}`}function Ir(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function Lr(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function Rr(e){return e=Lr(e),(e<16?`0`:``)+e.toString(16)}function zr(e,t,n,r){return r<=0?e=t=n=NaN:n<=0||n>=1?e=t=NaN:t<=0&&(e=NaN),new X(e,t,n,r)}function Br(e){if(e instanceof X)return new X(e.h,e.s,e.l,e.opacity);if(e instanceof dr||(e=Or(e)),!e)return new X;if(e instanceof X)return e;e=e.rgb();var t=e.r/255,n=e.g/255,r=e.b/255,i=Math.min(t,n,r),a=Math.max(t,n,r),o=NaN,s=a-i,c=(a+i)/2;return s?(o=t===a?(n-r)/s+(n<r)*6:n===a?(r-t)/s+2:(t-n)/s+4,s/=c<.5?a+i:2-a-i,o*=60):s=c>0&&c<1?0:o,new X(o,s,c,e.opacity)}function Vr(e,t,n,r){return arguments.length===1?Br(e):new X(e,t,n,r??1)}function X(e,t,n,r){this.h=+e,this.s=+t,this.l=+n,this.opacity=+r}lr(X,Vr,ur(dr,{brighter(e){return e=e==null?pr:pr**+e,new X(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?fr:fr**+e,new X(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,t=isNaN(e)||isNaN(this.s)?0:this.s,n=this.l,r=n+(n<.5?n:1-n)*t,i=2*n-r;return new Y(Wr(e>=240?e-240:e+120,i,r),Wr(e,i,r),Wr(e<120?e+240:e-120,i,r),this.opacity)},clamp(){return new X(Hr(this.h),Ur(this.s),Ur(this.l),Ir(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){let e=Ir(this.opacity);return`${e===1?`hsl(`:`hsla(`}${Hr(this.h)}, ${Ur(this.s)*100}%, ${Ur(this.l)*100}%${e===1?`)`:`, ${e})`}`}}));function Hr(e){return e=(e||0)%360,e<0?e+360:e}function Ur(e){return Math.max(0,Math.min(1,e||0))}function Wr(e,t,n){return(e<60?t+(n-t)*e/60:e<180?n:e<240?t+(n-t)*(240-e)/60:t)*255}var Gr=e=>()=>e;function Kr(e,t){return function(n){return e+n*t}}function qr(e,t,n){return e**=+n,t=t**+n-e,n=1/n,function(r){return(e+r*t)**+n}}function Jr(e){return(e=+e)==1?Yr:function(t,n){return n-t?qr(t,n,e):Gr(isNaN(t)?n:t)}}function Yr(e,t){var n=t-e;return n?Kr(e,n):Gr(isNaN(e)?t:e)}var Xr=function e(t){var n=Jr(t);function r(e,t){var r=n((e=Mr(e)).r,(t=Mr(t)).r),i=n(e.g,t.g),a=n(e.b,t.b),o=Yr(e.opacity,t.opacity);return function(t){return e.r=r(t),e.g=i(t),e.b=a(t),e.opacity=o(t),e+``}}return r.gamma=e,r}(1);function Zr(e,t){return e=+e,t=+t,function(n){return e*(1-n)+t*n}}var Qr=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,$r=new RegExp(Qr.source,`g`);function ei(e){return function(){return e}}function ti(e){return function(t){return e(t)+``}}function ni(e,t){var n=Qr.lastIndex=$r.lastIndex=0,r,i,a,o=-1,s=[],c=[];for(e+=``,t+=``;(r=Qr.exec(e))&&(i=$r.exec(t));)(a=i.index)>n&&(a=t.slice(n,a),s[o]?s[o]+=a:s[++o]=a),(r=r[0])===(i=i[0])?s[o]?s[o]+=i:s[++o]=i:(s[++o]=null,c.push({i:o,x:Zr(r,i)})),n=$r.lastIndex;return n<t.length&&(a=t.slice(n),s[o]?s[o]+=a:s[++o]=a),s.length<2?c[0]?ti(c[0].x):ei(t):(t=c.length,function(e){for(var n=0,r;n<t;++n)s[(r=c[n]).i]=r.x(e);return s.join(``)})}var ri=180/Math.PI,ii={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function ai(e,t,n,r,i,a){var o,s,c;return(o=Math.sqrt(e*e+t*t))&&(e/=o,t/=o),(c=e*n+t*r)&&(n-=e*c,r-=t*c),(s=Math.sqrt(n*n+r*r))&&(n/=s,r/=s,c/=s),e*r<t*n&&(e=-e,t=-t,c=-c,o=-o),{translateX:i,translateY:a,rotate:Math.atan2(t,e)*ri,skewX:Math.atan(c)*ri,scaleX:o,scaleY:s}}var oi;function si(e){let t=new(typeof DOMMatrix==`function`?DOMMatrix:WebKitCSSMatrix)(e+``);return t.isIdentity?ii:ai(t.a,t.b,t.c,t.d,t.e,t.f)}function ci(e){return e==null||(oi||=document.createElementNS(`http://www.w3.org/2000/svg`,`g`),oi.setAttribute(`transform`,e),!(e=oi.transform.baseVal.consolidate()))?ii:(e=e.matrix,ai(e.a,e.b,e.c,e.d,e.e,e.f))}function li(e,t,n,r){function i(e){return e.length?e.pop()+` `:``}function a(e,r,i,a,o,s){if(e!==i||r!==a){var c=o.push(`translate(`,null,t,null,n);s.push({i:c-4,x:Zr(e,i)},{i:c-2,x:Zr(r,a)})}else (i||a)&&o.push(`translate(`+i+t+a+n)}function o(e,t,n,a){e===t?t&&n.push(i(n)+`rotate(`+t+r):(e-t>180?t+=360:t-e>180&&(e+=360),a.push({i:n.push(i(n)+`rotate(`,null,r)-2,x:Zr(e,t)}))}function s(e,t,n,a){e===t?t&&n.push(i(n)+`skewX(`+t+r):a.push({i:n.push(i(n)+`skewX(`,null,r)-2,x:Zr(e,t)})}function c(e,t,n,r,a,o){if(e!==n||t!==r){var s=a.push(i(a)+`scale(`,null,`,`,null,`)`);o.push({i:s-4,x:Zr(e,n)},{i:s-2,x:Zr(t,r)})}else (n!==1||r!==1)&&a.push(i(a)+`scale(`+n+`,`+r+`)`)}return function(t,n){var r=[],i=[];return t=e(t),n=e(n),a(t.translateX,t.translateY,n.translateX,n.translateY,r,i),o(t.rotate,n.rotate,r,i),s(t.skewX,n.skewX,r,i),c(t.scaleX,t.scaleY,n.scaleX,n.scaleY,r,i),t=n=null,function(e){for(var t=-1,n=i.length,a;++t<n;)r[(a=i[t]).i]=a.x(e);return r.join(``)}}}var ui=li(si,`px, `,`px)`,`deg)`),di=li(ci,`, `,`)`,`)`),fi=1e-12;function pi(e){return((e=Math.exp(e))+1/e)/2}function mi(e){return((e=Math.exp(e))-1/e)/2}function hi(e){return((e=Math.exp(2*e))-1)/(e+1)}var gi=function e(t,n,r){function i(e,i){var a=e[0],o=e[1],s=e[2],c=i[0],l=i[1],u=i[2],d=c-a,f=l-o,p=d*d+f*f,m,h;if(p<fi)h=Math.log(u/s)/t,m=function(e){return[a+e*d,o+e*f,s*Math.exp(t*e*h)]};else{var g=Math.sqrt(p),_=(u*u-s*s+r*p)/(2*s*n*g),v=(u*u-s*s-r*p)/(2*u*n*g),y=Math.log(Math.sqrt(_*_+1)-_);h=(Math.log(Math.sqrt(v*v+1)-v)-y)/t,m=function(e){var r=e*h,i=pi(y),c=s/(n*g)*(i*hi(t*r+y)-mi(y));return[a+c*d,o+c*f,s*i/pi(t*r+y)]}}return m.duration=h*1e3*t/Math.SQRT2,m}return i.rho=function(t){var n=Math.max(.001,+t),r=n*n;return e(n,r,r*r)},i}(Math.SQRT2,2,4),_i=0,vi=0,yi=0,bi=1e3,xi,Si,Ci=0,wi=0,Ti=0,Ei=typeof performance==`object`&&performance.now?performance:Date,Di=typeof window==`object`&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(e){setTimeout(e,17)};function Oi(){return wi||=(Di(ki),Ei.now()+Ti)}function ki(){wi=0}function Ai(){this._call=this._time=this._next=null}Ai.prototype=ji.prototype={constructor:Ai,restart:function(e,t,n){if(typeof e!=`function`)throw TypeError(`callback is not a function`);n=(n==null?Oi():+n)+(t==null?0:+t),!this._next&&Si!==this&&(Si?Si._next=this:xi=this,Si=this),this._call=e,this._time=n,Ii()},stop:function(){this._call&&(this._call=null,this._time=1/0,Ii())}};function ji(e,t,n){var r=new Ai;return r.restart(e,t,n),r}function Mi(){Oi(),++_i;for(var e=xi,t;e;)(t=wi-e._time)>=0&&e._call.call(void 0,t),e=e._next;--_i}function Ni(){wi=(Ci=Ei.now())+Ti,_i=vi=0;try{Mi()}finally{_i=0,Fi(),wi=0}}function Pi(){var e=Ei.now(),t=e-Ci;t>bi&&(Ti-=t,Ci=e)}function Fi(){for(var e,t=xi,n,r=1/0;t;)t._call?(r>t._time&&(r=t._time),e=t,t=t._next):(n=t._next,t._next=null,t=e?e._next=n:xi=n);Si=e,Ii(r)}function Ii(e){_i||(vi&&=clearTimeout(vi),e-wi>24?(e<1/0&&(vi=setTimeout(Ni,e-Ei.now()-Ti)),yi&&=clearInterval(yi)):(yi||=(Ci=Ei.now(),setInterval(Pi,bi)),_i=1,Di(Ni)))}function Li(e,t,n){var r=new Ai;return t=t==null?0:+t,r.restart(n=>{r.stop(),e(n+t)},t,n),r}var Ri=U(`start`,`end`,`cancel`,`interrupt`),zi=[],Bi=0,Vi=1,Hi=2,Ui=3,Wi=4,Gi=5,Ki=6;function qi(e,t,n,r,i,a){var o=e.__transition;if(!o)e.__transition={};else if(n in o)return;Yi(e,n,{name:t,index:r,group:i,on:Ri,tween:zi,time:a.time,delay:a.delay,duration:a.duration,ease:a.ease,timer:null,state:Bi})}function Ji(e,t){var n=Q(e,t);if(n.state>Bi)throw Error(`too late; already scheduled`);return n}function Z(e,t){var n=Q(e,t);if(n.state>Ui)throw Error(`too late; already running`);return n}function Q(e,t){var n=e.__transition;if(!n||!(n=n[t]))throw Error(`transition not found`);return n}function Yi(e,t,n){var r=e.__transition,i;r[t]=n,n.timer=ji(a,0,n.time);function a(e){n.state=Vi,n.timer.restart(o,n.delay,n.time),n.delay<=e&&o(e-n.delay)}function o(a){var l,u,d,f;if(n.state!==Vi)return c();for(l in r)if(f=r[l],f.name===n.name){if(f.state===Ui)return Li(o);f.state===Wi?(f.state=Ki,f.timer.stop(),f.on.call(`interrupt`,e,e.__data__,f.index,f.group),delete r[l]):+l<t&&(f.state=Ki,f.timer.stop(),f.on.call(`cancel`,e,e.__data__,f.index,f.group),delete r[l])}if(Li(function(){n.state===Ui&&(n.state=Wi,n.timer.restart(s,n.delay,n.time),s(a))}),n.state=Hi,n.on.call(`start`,e,e.__data__,n.index,n.group),n.state===Hi){for(n.state=Ui,i=Array(d=n.tween.length),l=0,u=-1;l<d;++l)(f=n.tween[l].value.call(e,e.__data__,n.index,n.group))&&(i[++u]=f);i.length=u+1}}function s(t){for(var r=t<n.duration?n.ease.call(null,t/n.duration):(n.timer.restart(c),n.state=Gi,1),a=-1,o=i.length;++a<o;)i[a].call(e,r);n.state===Gi&&(n.on.call(`end`,e,e.__data__,n.index,n.group),c())}function c(){for(var i in n.state=Ki,n.timer.stop(),delete r[t],r)return;delete e.__transition}}function Xi(e,t){var n=e.__transition,r,i,a=!0,o;if(n){for(o in t=t==null?null:t+``,n){if((r=n[o]).name!==t){a=!1;continue}i=r.state>Hi&&r.state<Gi,r.state=Ki,r.timer.stop(),r.on.call(i?`interrupt`:`cancel`,e,e.__data__,r.index,r.group),delete n[o]}a&&delete e.__transition}}function Zi(e){return this.each(function(){Xi(this,e)})}function Qi(e,t){var n,r;return function(){var i=Z(this,e),a=i.tween;if(a!==n){r=n=a;for(var o=0,s=r.length;o<s;++o)if(r[o].name===t){r=r.slice(),r.splice(o,1);break}}i.tween=r}}function $i(e,t,n){var r,i;if(typeof n!=`function`)throw Error();return function(){var a=Z(this,e),o=a.tween;if(o!==r){i=(r=o).slice();for(var s={name:t,value:n},c=0,l=i.length;c<l;++c)if(i[c].name===t){i[c]=s;break}c===l&&i.push(s)}a.tween=i}}function ea(e,t){var n=this._id;if(e+=``,arguments.length<2){for(var r=Q(this.node(),n).tween,i=0,a=r.length,o;i<a;++i)if((o=r[i]).name===e)return o.value;return null}return this.each((t==null?Qi:$i)(n,e,t))}function ta(e,t,n){var r=e._id;return e.each(function(){var e=Z(this,r);(e.value||={})[t]=n.apply(this,arguments)}),function(e){return Q(e,r).value[t]}}function na(e,t){var n;return(typeof t==`number`?Zr:t instanceof Or?Xr:(n=Or(t))?(t=n,Xr):ni)(e,t)}function ra(e){return function(){this.removeAttribute(e)}}function ia(e){return function(){this.removeAttributeNS(e.space,e.local)}}function aa(e,t,n){var r,i=n+``,a;return function(){var o=this.getAttribute(e);return o===i?null:o===r?a:a=t(r=o,n)}}function oa(e,t,n){var r,i=n+``,a;return function(){var o=this.getAttributeNS(e.space,e.local);return o===i?null:o===r?a:a=t(r=o,n)}}function sa(e,t,n){var r,i,a;return function(){var o,s=n(this),c;return s==null?void this.removeAttribute(e):(o=this.getAttribute(e),c=s+``,o===c?null:o===r&&c===i?a:(i=c,a=t(r=o,s)))}}function ca(e,t,n){var r,i,a;return function(){var o,s=n(this),c;return s==null?void this.removeAttributeNS(e.space,e.local):(o=this.getAttributeNS(e.space,e.local),c=s+``,o===c?null:o===r&&c===i?a:(i=c,a=t(r=o,s)))}}function la(e,t){var n=ct(e),r=n===`transform`?di:na;return this.attrTween(e,typeof t==`function`?(n.local?ca:sa)(n,r,ta(this,`attr.`+e,t)):t==null?(n.local?ia:ra)(n):(n.local?oa:aa)(n,r,t))}function ua(e,t){return function(n){this.setAttribute(e,t.call(this,n))}}function da(e,t){return function(n){this.setAttributeNS(e.space,e.local,t.call(this,n))}}function fa(e,t){var n,r;function i(){var i=t.apply(this,arguments);return i!==r&&(n=(r=i)&&da(e,i)),n}return i._value=t,i}function pa(e,t){var n,r;function i(){var i=t.apply(this,arguments);return i!==r&&(n=(r=i)&&ua(e,i)),n}return i._value=t,i}function ma(e,t){var n=`attr.`+e;if(arguments.length<2)return(n=this.tween(n))&&n._value;if(t==null)return this.tween(n,null);if(typeof t!=`function`)throw Error();var r=ct(e);return this.tween(n,(r.local?fa:pa)(r,t))}function ha(e,t){return function(){Ji(this,e).delay=+t.apply(this,arguments)}}function ga(e,t){return t=+t,function(){Ji(this,e).delay=t}}function _a(e){var t=this._id;return arguments.length?this.each((typeof e==`function`?ha:ga)(t,e)):Q(this.node(),t).delay}function va(e,t){return function(){Z(this,e).duration=+t.apply(this,arguments)}}function ya(e,t){return t=+t,function(){Z(this,e).duration=t}}function ba(e){var t=this._id;return arguments.length?this.each((typeof e==`function`?va:ya)(t,e)):Q(this.node(),t).duration}function xa(e,t){if(typeof t!=`function`)throw Error();return function(){Z(this,e).ease=t}}function Sa(e){var t=this._id;return arguments.length?this.each(xa(t,e)):Q(this.node(),t).ease}function Ca(e,t){return function(){var n=t.apply(this,arguments);if(typeof n!=`function`)throw Error();Z(this,e).ease=n}}function wa(e){if(typeof e!=`function`)throw Error();return this.each(Ca(this._id,e))}function Ta(e){typeof e!=`function`&&(e=bt(e));for(var t=this._groups,n=t.length,r=Array(n),i=0;i<n;++i)for(var a=t[i],o=a.length,s=r[i]=[],c,l=0;l<o;++l)(c=a[l])&&e.call(c,c.__data__,l,a)&&s.push(c);return new eo(r,this._parents,this._name,this._id)}function Ea(e){if(e._id!==this._id)throw Error();for(var t=this._groups,n=e._groups,r=t.length,i=n.length,a=Math.min(r,i),o=Array(r),s=0;s<a;++s)for(var c=t[s],l=n[s],u=c.length,d=o[s]=Array(u),f,p=0;p<u;++p)(f=c[p]||l[p])&&(d[p]=f);for(;s<r;++s)o[s]=t[s];return new eo(o,this._parents,this._name,this._id)}function Da(e){return(e+``).trim().split(/^|\s+/).every(function(e){var t=e.indexOf(`.`);return t>=0&&(e=e.slice(0,t)),!e||e===`start`})}function Oa(e,t,n){var r,i,a=Da(t)?Ji:Z;return function(){var o=a(this,e),s=o.on;s!==r&&(i=(r=s).copy()).on(t,n),o.on=i}}function ka(e,t){var n=this._id;return arguments.length<2?Q(this.node(),n).on.on(e):this.each(Oa(n,e,t))}function Aa(e){return function(){var t=this.parentNode;for(var n in this.__transition)if(+n!==e)return;t&&t.removeChild(this)}}function ja(){return this.on(`end.remove`,Aa(this._id))}function Ma(e){var t=this._name,n=this._id;typeof e!=`function`&&(e=pt(e));for(var r=this._groups,i=r.length,a=Array(i),o=0;o<i;++o)for(var s=r[o],c=s.length,l=a[o]=Array(c),u,d,f=0;f<c;++f)(u=s[f])&&(d=e.call(u,u.__data__,f,s))&&(`__data__`in u&&(d.__data__=u.__data__),l[f]=d,qi(l[f],t,n,f,l,Q(u,n)));return new eo(a,this._parents,t,n)}function Na(e){var t=this._name,n=this._id;typeof e!=`function`&&(e=_t(e));for(var r=this._groups,i=r.length,a=[],o=[],s=0;s<i;++s)for(var c=r[s],l=c.length,u,d=0;d<l;++d)if(u=c[d]){for(var f=e.call(u,u.__data__,d,c),p,m=Q(u,n),h=0,g=f.length;h<g;++h)(p=f[h])&&qi(p,t,n,h,f,m);a.push(f),o.push(u)}return new eo(a,o,t,n)}var Pa=er.prototype.constructor;function Fa(){return new Pa(this._groups,this._parents)}function Ia(e,t){var n,r,i;return function(){var a=cn(this,e),o=(this.style.removeProperty(e),cn(this,e));return a===o?null:a===n&&o===r?i:i=t(n=a,r=o)}}function La(e){return function(){this.style.removeProperty(e)}}function Ra(e,t,n){var r,i=n+``,a;return function(){var o=cn(this,e);return o===i?null:o===r?a:a=t(r=o,n)}}function za(e,t,n){var r,i,a;return function(){var o=cn(this,e),s=n(this),c=s+``;return s??(c=s=(this.style.removeProperty(e),cn(this,e))),o===c?null:o===r&&c===i?a:(i=c,a=t(r=o,s))}}function Ba(e,t){var n,r,i,a=`style.`+t,o=`end.`+a,s;return function(){var c=Z(this,e),l=c.on,u=c.value[a]==null?s||=La(t):void 0;(l!==n||i!==u)&&(r=(n=l).copy()).on(o,i=u),c.on=r}}function Va(e,t,n){var r=(e+=``)==`transform`?ui:na;return t==null?this.styleTween(e,Ia(e,r)).on(`end.style.`+e,La(e)):typeof t==`function`?this.styleTween(e,za(e,r,ta(this,`style.`+e,t))).each(Ba(this._id,e)):this.styleTween(e,Ra(e,r,t),n).on(`end.style.`+e,null)}function Ha(e,t,n){return function(r){this.style.setProperty(e,t.call(this,r),n)}}function Ua(e,t,n){var r,i;function a(){var a=t.apply(this,arguments);return a!==i&&(r=(i=a)&&Ha(e,a,n)),r}return a._value=t,a}function Wa(e,t,n){var r=`style.`+(e+=``);if(arguments.length<2)return(r=this.tween(r))&&r._value;if(t==null)return this.tween(r,null);if(typeof t!=`function`)throw Error();return this.tween(r,Ua(e,t,n??``))}function Ga(e){return function(){this.textContent=e}}function Ka(e){return function(){this.textContent=e(this)??``}}function qa(e){return this.tween(`text`,typeof e==`function`?Ka(ta(this,`text`,e)):Ga(e==null?``:e+``))}function Ja(e){return function(t){this.textContent=e.call(this,t)}}function Ya(e){var t,n;function r(){var r=e.apply(this,arguments);return r!==n&&(t=(n=r)&&Ja(r)),t}return r._value=e,r}function Xa(e){var t=`text`;if(arguments.length<1)return(t=this.tween(t))&&t._value;if(e==null)return this.tween(t,null);if(typeof e!=`function`)throw Error();return this.tween(t,Ya(e))}function Za(){for(var e=this._name,t=this._id,n=to(),r=this._groups,i=r.length,a=0;a<i;++a)for(var o=r[a],s=o.length,c,l=0;l<s;++l)if(c=o[l]){var u=Q(c,t);qi(c,e,n,l,o,{time:u.time+u.delay+u.duration,delay:0,duration:u.duration,ease:u.ease})}return new eo(r,this._parents,e,n)}function Qa(){var e,t,n=this,r=n._id,i=n.size();return new Promise(function(a,o){var s={value:o},c={value:function(){--i===0&&a()}};n.each(function(){var n=Z(this,r),i=n.on;i!==e&&(t=(e=i).copy(),t._.cancel.push(s),t._.interrupt.push(s),t._.end.push(c)),n.on=t}),i===0&&a()})}var $a=0;function eo(e,t,n,r){this._groups=e,this._parents=t,this._name=n,this._id=r}function to(){return++$a}var no=er.prototype;eo.prototype={constructor:eo,select:Ma,selectAll:Na,selectChild:no.selectChild,selectChildren:no.selectChildren,filter:Ta,merge:Ea,selection:Fa,transition:Za,call:no.call,nodes:no.nodes,node:no.node,size:no.size,empty:no.empty,each:no.each,on:ka,attr:la,attrTween:ma,style:Va,styleTween:Wa,text:qa,textTween:Xa,remove:ja,tween:ea,delay:_a,duration:ba,ease:Sa,easeVarying:wa,end:Qa,[Symbol.iterator]:no[Symbol.iterator]};function ro(e){return((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2}var io={time:null,delay:0,duration:250,ease:ro};function ao(e,t){for(var n;!(n=e.__transition)||!(n=n[t]);)if(!(e=e.parentNode))throw Error(`transition ${t} not found`);return n}function oo(e){var t,n;e instanceof eo?(t=e._id,e=e._name):(t=to(),(n=io).time=Oi(),e=e==null?null:e+``);for(var r=this._groups,i=r.length,a=0;a<i;++a)for(var o=r[a],s=o.length,c,l=0;l<s;++l)(c=o[l])&&qi(c,e,t,l,o,n||ao(c,t));return new eo(r,this._parents,e,t)}er.prototype.interrupt=Zi,er.prototype.transition=oo;var so=e=>()=>e;function co(e,{sourceEvent:t,target:n,transform:r,dispatch:i}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:t,enumerable:!0,configurable:!0},target:{value:n,enumerable:!0,configurable:!0},transform:{value:r,enumerable:!0,configurable:!0},_:{value:i}})}function lo(e,t,n){this.k=e,this.x=t,this.y=n}lo.prototype={constructor:lo,scale:function(e){return e===1?this:new lo(this.k*e,this.x,this.y)},translate:function(e,t){return e===0&t===0?this:new lo(this.k,this.x+this.k*e,this.y+this.k*t)},apply:function(e){return[e[0]*this.k+this.x,e[1]*this.k+this.y]},applyX:function(e){return e*this.k+this.x},applyY:function(e){return e*this.k+this.y},invert:function(e){return[(e[0]-this.x)/this.k,(e[1]-this.y)/this.k]},invertX:function(e){return(e-this.x)/this.k},invertY:function(e){return(e-this.y)/this.k},rescaleX:function(e){return e.copy().domain(e.range().map(this.invertX,this).map(e.invert,e))},rescaleY:function(e){return e.copy().domain(e.range().map(this.invertY,this).map(e.invert,e))},toString:function(){return`translate(`+this.x+`,`+this.y+`) scale(`+this.k+`)`}};var uo=new lo(1,0,0);lo.prototype;function fo(e){e.stopImmediatePropagation()}function po(e){e.preventDefault(),e.stopImmediatePropagation()}function mo(e){return(!e.ctrlKey||e.type===`wheel`)&&!e.button}function ho(){var e=this;return e instanceof SVGElement?(e=e.ownerSVGElement||e,e.hasAttribute(`viewBox`)?(e=e.viewBox.baseVal,[[e.x,e.y],[e.x+e.width,e.y+e.height]]):[[0,0],[e.width.baseVal.value,e.height.baseVal.value]]):[[0,0],[e.clientWidth,e.clientHeight]]}function go(){return this.__zoom||uo}function _o(e){return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*(e.ctrlKey?10:1)}function vo(){return navigator.maxTouchPoints||`ontouchstart`in this}function yo(e,t,n){var r=e.invertX(t[0][0])-n[0][0],i=e.invertX(t[1][0])-n[1][0],a=e.invertY(t[0][1])-n[0][1],o=e.invertY(t[1][1])-n[1][1];return e.translate(i>r?(r+i)/2:Math.min(0,r)||Math.max(0,i),o>a?(a+o)/2:Math.min(0,a)||Math.max(0,o))}function bo(){var e=mo,t=ho,n=yo,r=_o,i=vo,a=[0,1/0],o=[[-1/0,-1/0],[1/0,1/0]],s=250,c=gi,l=U(`start`,`zoom`,`end`),u,d,f,p=500,m=150,h=0,g=10;function _(e){e.property(`__zoom`,go).on(`wheel.zoom`,w,{passive:!1}).on(`mousedown.zoom`,T).on(`dblclick.zoom`,ee).filter(i).on(`touchstart.zoom`,E).on(`touchmove.zoom`,D).on(`touchend.zoom touchcancel.zoom`,te).style(`-webkit-tap-highlight-color`,`rgba(0,0,0,0)`)}_.transform=function(e,t,n,r){var i=e.selection?e.selection():e;i.property(`__zoom`,go),e===i?i.interrupt().each(function(){S(this,arguments).event(r).start().zoom(null,typeof t==`function`?t.apply(this,arguments):t).end()}):x(e,t,n,r)},_.scaleBy=function(e,t,n,r){_.scaleTo(e,function(){return this.__zoom.k*(typeof t==`function`?t.apply(this,arguments):t)},n,r)},_.scaleTo=function(e,r,i,a){_.transform(e,function(){var e=t.apply(this,arguments),a=this.__zoom,s=i==null?b(e):typeof i==`function`?i.apply(this,arguments):i,c=a.invert(s),l=typeof r==`function`?r.apply(this,arguments):r;return n(y(v(a,l),s,c),e,o)},i,a)},_.translateBy=function(e,r,i,a){_.transform(e,function(){return n(this.__zoom.translate(typeof r==`function`?r.apply(this,arguments):r,typeof i==`function`?i.apply(this,arguments):i),t.apply(this,arguments),o)},null,a)},_.translateTo=function(e,r,i,a,s){_.transform(e,function(){var e=t.apply(this,arguments),s=this.__zoom,c=a==null?b(e):typeof a==`function`?a.apply(this,arguments):a;return n(uo.translate(c[0],c[1]).scale(s.k).translate(typeof r==`function`?-r.apply(this,arguments):-r,typeof i==`function`?-i.apply(this,arguments):-i),e,o)},a,s)};function v(e,t){return t=Math.max(a[0],Math.min(a[1],t)),t===e.k?e:new lo(t,e.x,e.y)}function y(e,t,n){var r=t[0]-n[0]*e.k,i=t[1]-n[1]*e.k;return r===e.x&&i===e.y?e:new lo(e.k,r,i)}function b(e){return[(+e[0][0]+ +e[1][0])/2,(+e[0][1]+ +e[1][1])/2]}function x(e,n,r,i){e.on(`start.zoom`,function(){S(this,arguments).event(i).start()}).on(`interrupt.zoom end.zoom`,function(){S(this,arguments).event(i).end()}).tween(`zoom`,function(){var e=this,a=arguments,o=S(e,a).event(i),s=t.apply(e,a),l=r==null?b(s):typeof r==`function`?r.apply(e,a):r,u=Math.max(s[1][0]-s[0][0],s[1][1]-s[0][1]),d=e.__zoom,f=typeof n==`function`?n.apply(e,a):n,p=c(d.invert(l).concat(u/d.k),f.invert(l).concat(u/f.k));return function(e){if(e===1)e=f;else{var t=p(e),n=u/t[2];e=new lo(n,l[0]-t[0]*n,l[1]-t[1]*n)}o.zoom(null,e)}})}function S(e,t,n){return!n&&e.__zooming||new C(e,t)}function C(e,n){this.that=e,this.args=n,this.active=0,this.sourceEvent=null,this.extent=t.apply(e,n),this.taps=0}C.prototype={event:function(e){return e&&(this.sourceEvent=e),this},start:function(){return++this.active===1&&(this.that.__zooming=this,this.emit(`start`)),this},zoom:function(e,t){return this.mouse&&e!==`mouse`&&(this.mouse[1]=t.invert(this.mouse[0])),this.touch0&&e!==`touch`&&(this.touch0[1]=t.invert(this.touch0[0])),this.touch1&&e!==`touch`&&(this.touch1[1]=t.invert(this.touch1[0])),this.that.__zoom=t,this.emit(`zoom`),this},end:function(){return--this.active===0&&(delete this.that.__zooming,this.emit(`end`)),this},emit:function(e){var t=nr(this.that).datum();l.call(e,this.that,new co(e,{sourceEvent:this.sourceEvent,target:_,type:e,transform:this.that.__zoom,dispatch:l}),t)}};function w(t,...i){if(!e.apply(this,arguments))return;var s=S(this,i).event(t),c=this.__zoom,l=Math.max(a[0],Math.min(a[1],c.k*2**r.apply(this,arguments))),u=ir(t);if(s.wheel)(s.mouse[0][0]!==u[0]||s.mouse[0][1]!==u[1])&&(s.mouse[1]=c.invert(s.mouse[0]=u)),clearTimeout(s.wheel);else if(c.k===l)return;else s.mouse=[u,c.invert(u)],Xi(this),s.start();po(t),s.wheel=setTimeout(d,m),s.zoom(`mouse`,n(y(v(c,l),s.mouse[0],s.mouse[1]),s.extent,o));function d(){s.wheel=null,s.end()}}function T(t,...r){if(f||!e.apply(this,arguments))return;var i=t.currentTarget,a=S(this,r,!0).event(t),s=nr(t.view).on(`mousemove.zoom`,d,!0).on(`mouseup.zoom`,p,!0),c=ir(t,i),l=t.clientX,u=t.clientY;sr(t.view),fo(t),a.mouse=[c,this.__zoom.invert(c)],Xi(this),a.start();function d(e){if(po(e),!a.moved){var t=e.clientX-l,r=e.clientY-u;a.moved=t*t+r*r>h}a.event(e).zoom(`mouse`,n(y(a.that.__zoom,a.mouse[0]=ir(e,i),a.mouse[1]),a.extent,o))}function p(e){s.on(`mousemove.zoom mouseup.zoom`,null),cr(e.view,a.moved),po(e),a.event(e).end()}}function ee(r,...i){if(e.apply(this,arguments)){var a=this.__zoom,c=ir(r.changedTouches?r.changedTouches[0]:r,this),l=a.invert(c),u=a.k*(r.shiftKey?.5:2),d=n(y(v(a,u),c,l),t.apply(this,i),o);po(r),s>0?nr(this).transition().duration(s).call(x,d,c,r):nr(this).call(_.transform,d,c,r)}}function E(t,...n){if(e.apply(this,arguments)){var r=t.touches,i=r.length,a=S(this,n,t.changedTouches.length===i).event(t),o,s,c,l;for(fo(t),s=0;s<i;++s)c=r[s],l=ir(c,this),l=[l,this.__zoom.invert(l),c.identifier],a.touch0?!a.touch1&&a.touch0[2]!==l[2]&&(a.touch1=l,a.taps=0):(a.touch0=l,o=!0,a.taps=1+!!u);u&&=clearTimeout(u),o&&(a.taps<2&&(d=l[0],u=setTimeout(function(){u=null},p)),Xi(this),a.start())}}function D(e,...t){if(this.__zooming){var r=S(this,t).event(e),i=e.changedTouches,a=i.length,s,c,l,u;for(po(e),s=0;s<a;++s)c=i[s],l=ir(c,this),r.touch0&&r.touch0[2]===c.identifier?r.touch0[0]=l:r.touch1&&r.touch1[2]===c.identifier&&(r.touch1[0]=l);if(c=r.that.__zoom,r.touch1){var d=r.touch0[0],f=r.touch0[1],p=r.touch1[0],m=r.touch1[1],h=(h=p[0]-d[0])*h+(h=p[1]-d[1])*h,g=(g=m[0]-f[0])*g+(g=m[1]-f[1])*g;c=v(c,Math.sqrt(h/g)),l=[(d[0]+p[0])/2,(d[1]+p[1])/2],u=[(f[0]+m[0])/2,(f[1]+m[1])/2]}else if(r.touch0)l=r.touch0[0],u=r.touch0[1];else return;r.zoom(`touch`,n(y(c,l,u),r.extent,o))}}function te(e,...t){if(this.__zooming){var n=S(this,t).event(e),r=e.changedTouches,i=r.length,a,o;for(fo(e),f&&clearTimeout(f),f=setTimeout(function(){f=null},p),a=0;a<i;++a)o=r[a],n.touch0&&n.touch0[2]===o.identifier?delete n.touch0:n.touch1&&n.touch1[2]===o.identifier&&delete n.touch1;if(n.touch1&&!n.touch0&&(n.touch0=n.touch1,delete n.touch1),n.touch0)n.touch0[1]=this.__zoom.invert(n.touch0[0]);else if(n.end(),n.taps===2&&(o=ir(o,this),Math.hypot(d[0]-o[0],d[1]-o[1])<g)){var s=nr(this).on(`dblclick.zoom`);s&&s.apply(this,arguments)}}}return _.wheelDelta=function(e){return arguments.length?(r=typeof e==`function`?e:so(+e),_):r},_.filter=function(t){return arguments.length?(e=typeof t==`function`?t:so(!!t),_):e},_.touchable=function(e){return arguments.length?(i=typeof e==`function`?e:so(!!e),_):i},_.extent=function(e){return arguments.length?(t=typeof e==`function`?e:so([[+e[0][0],+e[0][1]],[+e[1][0],+e[1][1]]]),_):t},_.scaleExtent=function(e){return arguments.length?(a[0]=+e[0],a[1]=+e[1],_):[a[0],a[1]]},_.translateExtent=function(e){return arguments.length?(o[0][0]=+e[0][0],o[1][0]=+e[1][0],o[0][1]=+e[0][1],o[1][1]=+e[1][1],_):[[o[0][0],o[0][1]],[o[1][0],o[1][1]]]},_.constrain=function(e){return arguments.length?(n=e,_):n},_.duration=function(e){return arguments.length?(s=+e,_):s},_.interpolate=function(e){return arguments.length?(c=e,_):c},_.on=function(){var e=l.on.apply(l,arguments);return e===l?_:e},_.clickDistance=function(e){return arguments.length?(h=(e=+e)*e,_):Math.sqrt(h)},_.tapDistance=function(e){return arguments.length?(g=+e,_):g},_}var xo=Symbol(`MiniMapSlots`),So=[`id`,`x`,`y`,`rx`,`ry`,`width`,`height`,`fill`,`stroke`,`stroke-width`,`shape-rendering`],Co=c({name:`MiniMapNode`,compatConfig:{MODE:3},inheritAttrs:!1,props:{id:{},type:{},selected:{type:Boolean},dragging:{type:Boolean},position:{},dimensions:{},borderRadius:{},color:{},shapeRendering:{},strokeColor:{},strokeWidth:{},hidden:{type:Boolean}},emits:[`click`,`dblclick`,`mouseenter`,`mousemove`,`mouseleave`],setup(e,{emit:t}){let n=e,r=ne(xo),i=oe(),a=C(()=>i.style??{});function o(e){t(`click`,e)}function s(e){t(`dblclick`,e)}function c(e){t(`mouseenter`,e)}function l(e){t(`mousemove`,e)}function u(e){t(`mouseleave`,e)}return(e,t)=>!e.hidden&&e.dimensions.width!==0&&e.dimensions.height!==0?(j(),w(pe,{key:0},[P(r)[`node-${n.type}`]?(j(),p(Ee(P(r)[`node-${n.type}`]),x(A({key:0},{...n,...e.$attrs})),null,16)):(j(),w(`rect`,A({key:1,id:e.id},e.$attrs,{class:[`vue-flow__minimap-node`,{selected:e.selected,dragging:e.dragging}],x:e.position.x,y:e.position.y,rx:e.borderRadius,ry:e.borderRadius,width:e.dimensions.width,height:e.dimensions.height,fill:e.color||a.value.background||a.value.backgroundColor,stroke:e.strokeColor,"stroke-width":e.strokeWidth,"shape-rendering":e.shapeRendering,onClick:o,onDblclick:s,onMouseenter:c,onMousemove:l,onMouseleave:u}),null,16,So))],64)):v(``,!0)}}),wo=[`width`,`height`,`viewBox`,`aria-labelledby`],To=[`id`],Eo=[`d`,`fill`,`stroke`,`stroke-width`],Do=c({name:`MiniMap`,compatConfig:{MODE:3},props:{nodeColor:{type:[String,Function],default:`#e2e2e2`},nodeStrokeColor:{type:[String,Function],default:`transparent`},nodeClassName:{type:[String,Function]},nodeBorderRadius:{default:5},nodeStrokeWidth:{default:2},maskColor:{default:`rgb(240, 240, 240, 0.6)`},maskStrokeColor:{default:`none`},maskStrokeWidth:{default:1},position:{default:`bottom-right`},pannable:{type:Boolean,default:!1},zoomable:{type:Boolean,default:!1},width:{},height:{},ariaLabel:{default:`Vue Flow mini map`},inversePan:{type:Boolean,default:!1},zoomStep:{default:1},offsetScale:{default:5},maskBorderRadius:{default:0}},emits:[`click`,`nodeClick`,`nodeDblclick`,`nodeMouseenter`,`nodeMousemove`,`nodeMouseleave`],setup(e,{emit:t}){let i=n(),c=oe(),{id:u,edges:d,viewport:m,translateExtent:g,dimensions:b,emits:x,d3Selection:T,d3Zoom:ee,getNodesInitialized:E}=h(),D=F();ye(xo,i);let ne=C(()=>e.width??c.style?.width??200),O=C(()=>e.height??c.style?.height??150),k=typeof window>`u`||window.chrome?`crispEdges`:`geometricPrecision`,ie=S(()=>typeof e.nodeColor==`string`?()=>e.nodeColor:e.nodeColor),ae=S(()=>typeof e.nodeStrokeColor==`string`?()=>e.nodeStrokeColor:e.nodeStrokeColor),se=S(()=>typeof e.nodeClassName==`string`?()=>e.nodeClassName:typeof e.nodeClassName==`function`?e.nodeClassName:()=>``),ce=S(()=>_(E.value.filter(e=>!e.hidden))),le=S(()=>({x:-m.value.x/m.value.zoom,y:-m.value.y/m.value.zoom,width:b.value.width/m.value.zoom,height:b.value.height/m.value.zoom})),A=S(()=>E.value&&E.value.length?te(ce.value,le.value):le.value),ue=S(()=>{let e=A.value.width/ne.value,t=A.value.height/O.value;return Math.max(e,t)}),M=S(()=>{let t=ue.value*ne.value,n=ue.value*O.value,r=e.offsetScale*ue.value;return{offset:r,x:A.value.x-(t-A.value.width)/2-r,y:A.value.y-(n-A.value.height)/2-r,width:t+r*2,height:n+r*2}}),de=S(()=>!M.value.x||!M.value.y?``:`
|
|
1
|
+
import{Aa as e,B as t,Ca as n,Ea as r,En as i,Fa as a,Fi as o,G as s,Gi as c,H as l,Hi as u,Ht as d,Ia as f,Ii as p,In as m,J as h,Jt as g,K as _,Li as v,Na as y,Oi as b,Pa as x,Pi as S,Qa as C,Ri as w,Ta as T,U as ee,Ui as E,V as D,W as te,Xi as ne,Y as re,Yn as O,Zn as k,_a as ie,_i as ae,ba as oe,ca as se,cn as ce,dt as le,ea as A,fa as j,ft as ue,ha as M,hn as de,hr as fe,ji as pe,jt as me,ka as N,ki as he,lr as ge,ma as _e,mn as ve,no as P,pa as ye,q as be,qa as F,qi as xe,qn as Se,ta as Ce,ua as we,ur as Te,va as Ee,vi as De,vt as Oe,yr as ke,yt as Ae,z as je,zt as Me}from"./index-PMr5ScNs.js";import{t as Ne}from"./uuid--pMuF47W.js";import{t as Pe}from"./checkbox-CfoV-T17.js";import{t as Fe}from"./multiselect-Z0owdrkn.js";var Ie={name:`ControlButton`,compatConfig:{MODE:3}},Le=(e,t)=>{let n=e.__vccOpts||e;for(let[e,r]of t)n[e]=r;return n},I={type:`button`,class:`vue-flow__controls-button`};function L(e,t,n,r,i,a){return j(),w(`button`,I,[M(e.$slots,`default`)])}var Re=Le(Ie,[[`render`,L]]),ze={xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 32 32`},Be=[o(`path`,{d:`M32 18.133H18.133V32h-4.266V18.133H0v-4.266h13.867V0h4.266v13.867H32z`},null,-1)];function Ve(e,t){return j(),w(`svg`,ze,Be)}var R={render:Ve},He={xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 32 5`},Ue=[o(`path`,{d:`M0 0h32v4.2H0z`},null,-1)];function We(e,t){return j(),w(`svg`,He,Ue)}var Ge={render:We},Ke={xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 32 30`},qe=[o(`path`,{d:`M3.692 4.63c0-.53.4-.938.939-.938h5.215V0H4.708C2.13 0 0 2.054 0 4.63v5.216h3.692V4.631zM27.354 0h-5.2v3.692h5.17c.53 0 .984.4.984.939v5.215H32V4.631A4.624 4.624 0 0 0 27.354 0zm.954 24.83c0 .532-.4.94-.939.94h-5.215v3.768h5.215c2.577 0 4.631-2.13 4.631-4.707v-5.139h-3.692v5.139zm-23.677.94a.919.919 0 0 1-.939-.94v-5.138H0v5.139c0 2.577 2.13 4.707 4.708 4.707h5.138V25.77H4.631z`},null,-1)];function Je(e,t){return j(),w(`svg`,Ke,qe)}var Ye={render:Je},Xe={xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 25 32`},Ze=[o(`path`,{d:`M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0 8 0 4.571 3.429 4.571 7.619v3.048H3.048A3.056 3.056 0 0 0 0 13.714v15.238A3.056 3.056 0 0 0 3.048 32h18.285a3.056 3.056 0 0 0 3.048-3.048V13.714a3.056 3.056 0 0 0-3.048-3.047zM12.19 24.533a3.056 3.056 0 0 1-3.047-3.047 3.056 3.056 0 0 1 3.047-3.048 3.056 3.056 0 0 1 3.048 3.048 3.056 3.056 0 0 1-3.048 3.047zm4.724-13.866H7.467V7.619c0-2.59 2.133-4.724 4.723-4.724 2.591 0 4.724 2.133 4.724 4.724v3.048z`},null,-1)];function Qe(e,t){return j(),w(`svg`,Xe,Ze)}var $e={render:Qe},z={xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 25 32`},B=[o(`path`,{d:`M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0c-4.114 1.828-1.37 2.133.305 2.438 1.676.305 4.42 2.59 4.42 5.181v3.048H3.047A3.056 3.056 0 0 0 0 13.714v15.238A3.056 3.056 0 0 0 3.048 32h18.285a3.056 3.056 0 0 0 3.048-3.048V13.714a3.056 3.056 0 0 0-3.048-3.047zM12.19 24.533a3.056 3.056 0 0 1-3.047-3.047 3.056 3.056 0 0 1 3.047-3.048 3.056 3.056 0 0 1 3.048 3.048 3.056 3.056 0 0 1-3.048 3.047z`},null,-1)];function V(e,t){return j(),w(`svg`,z,B)}var H={render:V},et=c({name:`Controls`,compatConfig:{MODE:3},props:{showZoom:{type:Boolean,default:!0},showFitView:{type:Boolean,default:!0},showInteractive:{type:Boolean,default:!0},fitViewParams:{},position:{default:()=>D.BottomLeft}},emits:[`zoomIn`,`zoomOut`,`fitView`,`interactionChange`],setup(e,{emit:t}){let{nodesDraggable:n,nodesConnectable:r,elementsSelectable:i,setInteractive:a,zoomIn:o,zoomOut:s,fitView:c,viewport:u,minZoom:d,maxZoom:f}=h(),m=C(()=>n.value||r.value||i.value),g=C(()=>u.value.zoom<=d.value),_=C(()=>u.value.zoom>=f.value);function y(){o(),t(`zoomIn`)}function b(){s(),t(`zoomOut`)}function x(){c(e.fitViewParams),t(`fitView`)}function S(){a(!m.value),t(`interactionChange`,!m.value)}return(e,t)=>(j(),p(P(l),{class:`vue-flow__controls`,position:e.position},{default:N(()=>[M(e.$slots,`top`),e.showZoom?(j(),w(pe,{key:0},[M(e.$slots,`control-zoom-in`,{},()=>[E(Re,{class:`vue-flow__controls-zoomin`,disabled:_.value,onClick:y},{default:N(()=>[M(e.$slots,`icon-zoom-in`,{},()=>[(j(),p(Ee(P(R))))])]),_:3},8,[`disabled`])]),M(e.$slots,`control-zoom-out`,{},()=>[E(Re,{class:`vue-flow__controls-zoomout`,disabled:g.value,onClick:b},{default:N(()=>[M(e.$slots,`icon-zoom-out`,{},()=>[(j(),p(Ee(P(Ge))))])]),_:3},8,[`disabled`])])],64)):v(``,!0),e.showFitView?M(e.$slots,`control-fit-view`,{key:1},()=>[E(Re,{class:`vue-flow__controls-fitview`,onClick:x},{default:N(()=>[M(e.$slots,`icon-fit-view`,{},()=>[(j(),p(Ee(P(Ye))))])]),_:3})]):v(``,!0),e.showInteractive?M(e.$slots,`control-interactive`,{key:2},()=>[e.showInteractive?(j(),p(Re,{key:0,class:`vue-flow__controls-interactive`,onClick:S},{default:N(()=>[m.value?M(e.$slots,`icon-unlock`,{key:0},()=>[(j(),p(Ee(P(H))))]):v(``,!0),m.value?v(``,!0):M(e.$slots,`icon-lock`,{key:1},()=>[(j(),p(Ee(P($e))))])]),_:3})):v(``,!0)]):v(``,!0),M(e.$slots,`default`)]),_:3},8,[`position`]))}}),tt={value:()=>{}};function U(){for(var e=0,t=arguments.length,n={},r;e<t;++e){if(!(r=arguments[e]+``)||r in n||/[\s.]/.test(r))throw Error(`illegal type: `+r);n[r]=[]}return new nt(n)}function nt(e){this._=e}function rt(e,t){return e.trim().split(/^|\s+/).map(function(e){var n=``,r=e.indexOf(`.`);if(r>=0&&(n=e.slice(r+1),e=e.slice(0,r)),e&&!t.hasOwnProperty(e))throw Error(`unknown type: `+e);return{type:e,name:n}})}nt.prototype=U.prototype={constructor:nt,on:function(e,t){var n=this._,r=rt(e+``,n),i,a=-1,o=r.length;if(arguments.length<2){for(;++a<o;)if((i=(e=r[a]).type)&&(i=it(n[i],e.name)))return i;return}if(t!=null&&typeof t!=`function`)throw Error(`invalid callback: `+t);for(;++a<o;)if(i=(e=r[a]).type)n[i]=at(n[i],e.name,t);else if(t==null)for(i in n)n[i]=at(n[i],e.name,null);return this},copy:function(){var e={},t=this._;for(var n in t)e[n]=t[n].slice();return new nt(e)},call:function(e,t){if((i=arguments.length-2)>0)for(var n=Array(i),r=0,i,a;r<i;++r)n[r]=arguments[r+2];if(!this._.hasOwnProperty(e))throw Error(`unknown type: `+e);for(a=this._[e],r=0,i=a.length;r<i;++r)a[r].value.apply(t,n)},apply:function(e,t,n){if(!this._.hasOwnProperty(e))throw Error(`unknown type: `+e);for(var r=this._[e],i=0,a=r.length;i<a;++i)r[i].value.apply(t,n)}};function it(e,t){for(var n=0,r=e.length,i;n<r;++n)if((i=e[n]).name===t)return i.value}function at(e,t,n){for(var r=0,i=e.length;r<i;++r)if(e[r].name===t){e[r]=tt,e=e.slice(0,r).concat(e.slice(r+1));break}return n!=null&&e.push({name:t,value:n}),e}var ot=`http://www.w3.org/1999/xhtml`,st={svg:`http://www.w3.org/2000/svg`,xhtml:ot,xlink:`http://www.w3.org/1999/xlink`,xml:`http://www.w3.org/XML/1998/namespace`,xmlns:`http://www.w3.org/2000/xmlns/`};function ct(e){var t=e+=``,n=t.indexOf(`:`);return n>=0&&(t=e.slice(0,n))!==`xmlns`&&(e=e.slice(n+1)),st.hasOwnProperty(t)?{space:st[t],local:e}:e}function lt(e){return function(){var t=this.ownerDocument,n=this.namespaceURI;return n===ot&&t.documentElement.namespaceURI===ot?t.createElement(e):t.createElementNS(n,e)}}function ut(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}function dt(e){var t=ct(e);return(t.local?ut:lt)(t)}function ft(){}function pt(e){return e==null?ft:function(){return this.querySelector(e)}}function mt(e){typeof e!=`function`&&(e=pt(e));for(var t=this._groups,n=t.length,r=Array(n),i=0;i<n;++i)for(var a=t[i],o=a.length,s=r[i]=Array(o),c,l,u=0;u<o;++u)(c=a[u])&&(l=e.call(c,c.__data__,u,a))&&(`__data__`in c&&(l.__data__=c.__data__),s[u]=l);return new q(r,this._parents)}function ht(e){return e==null?[]:Array.isArray(e)?e:Array.from(e)}function gt(){return[]}function _t(e){return e==null?gt:function(){return this.querySelectorAll(e)}}function vt(e){return function(){return ht(e.apply(this,arguments))}}function yt(e){e=typeof e==`function`?vt(e):_t(e);for(var t=this._groups,n=t.length,r=[],i=[],a=0;a<n;++a)for(var o=t[a],s=o.length,c,l=0;l<s;++l)(c=o[l])&&(r.push(e.call(c,c.__data__,l,o)),i.push(c));return new q(r,i)}function bt(e){return function(){return this.matches(e)}}function xt(e){return function(t){return t.matches(e)}}var St=Array.prototype.find;function Ct(e){return function(){return St.call(this.children,e)}}function W(){return this.firstElementChild}function wt(e){return this.select(e==null?W:Ct(typeof e==`function`?e:xt(e)))}var Tt=Array.prototype.filter;function G(){return Array.from(this.children)}function Et(e){return function(){return Tt.call(this.children,e)}}function Dt(e){return this.selectAll(e==null?G:Et(typeof e==`function`?e:xt(e)))}function Ot(e){typeof e!=`function`&&(e=bt(e));for(var t=this._groups,n=t.length,r=Array(n),i=0;i<n;++i)for(var a=t[i],o=a.length,s=r[i]=[],c,l=0;l<o;++l)(c=a[l])&&e.call(c,c.__data__,l,a)&&s.push(c);return new q(r,this._parents)}function kt(e){return Array(e.length)}function At(){return new q(this._enter||this._groups.map(kt),this._parents)}function jt(e,t){this.ownerDocument=e.ownerDocument,this.namespaceURI=e.namespaceURI,this._next=null,this._parent=e,this.__data__=t}jt.prototype={constructor:jt,appendChild:function(e){return this._parent.insertBefore(e,this._next)},insertBefore:function(e,t){return this._parent.insertBefore(e,t)},querySelector:function(e){return this._parent.querySelector(e)},querySelectorAll:function(e){return this._parent.querySelectorAll(e)}};function Mt(e){return function(){return e}}function Nt(e,t,n,r,i,a){for(var o=0,s,c=t.length,l=a.length;o<l;++o)(s=t[o])?(s.__data__=a[o],r[o]=s):n[o]=new jt(e,a[o]);for(;o<c;++o)(s=t[o])&&(i[o]=s)}function Pt(e,t,n,r,i,a,o){var s,c,l=new Map,u=t.length,d=a.length,f=Array(u),p;for(s=0;s<u;++s)(c=t[s])&&(f[s]=p=o.call(c,c.__data__,s,t)+``,l.has(p)?i[s]=c:l.set(p,c));for(s=0;s<d;++s)p=o.call(e,a[s],s,a)+``,(c=l.get(p))?(r[s]=c,c.__data__=a[s],l.delete(p)):n[s]=new jt(e,a[s]);for(s=0;s<u;++s)(c=t[s])&&l.get(f[s])===c&&(i[s]=c)}function Ft(e){return e.__data__}function It(e,t){if(!arguments.length)return Array.from(this,Ft);var n=t?Pt:Nt,r=this._parents,i=this._groups;typeof e!=`function`&&(e=Mt(e));for(var a=i.length,o=Array(a),s=Array(a),c=Array(a),l=0;l<a;++l){var u=r[l],d=i[l],f=d.length,p=Lt(e.call(u,u&&u.__data__,l,r)),m=p.length,h=s[l]=Array(m),g=o[l]=Array(m);n(u,d,h,g,c[l]=Array(f),p,t);for(var _=0,v=0,y,b;_<m;++_)if(y=h[_]){for(_>=v&&(v=_+1);!(b=g[v])&&++v<m;);y._next=b||null}}return o=new q(o,r),o._enter=s,o._exit=c,o}function Lt(e){return typeof e==`object`&&`length`in e?e:Array.from(e)}function Rt(){return new q(this._exit||this._groups.map(kt),this._parents)}function zt(e,t,n){var r=this.enter(),i=this,a=this.exit();return typeof e==`function`?(r=e(r),r&&=r.selection()):r=r.append(e+``),t!=null&&(i=t(i),i&&=i.selection()),n==null?a.remove():n(a),r&&i?r.merge(i).order():i}function Bt(e){for(var t=e.selection?e.selection():e,n=this._groups,r=t._groups,i=n.length,a=r.length,o=Math.min(i,a),s=Array(i),c=0;c<o;++c)for(var l=n[c],u=r[c],d=l.length,f=s[c]=Array(d),p,m=0;m<d;++m)(p=l[m]||u[m])&&(f[m]=p);for(;c<i;++c)s[c]=n[c];return new q(s,this._parents)}function K(){for(var e=this._groups,t=-1,n=e.length;++t<n;)for(var r=e[t],i=r.length-1,a=r[i],o;--i>=0;)(o=r[i])&&(a&&o.compareDocumentPosition(a)^4&&a.parentNode.insertBefore(o,a),a=o);return this}function Vt(e){e||=Ht;function t(t,n){return t&&n?e(t.__data__,n.__data__):!t-!n}for(var n=this._groups,r=n.length,i=Array(r),a=0;a<r;++a){for(var o=n[a],s=o.length,c=i[a]=Array(s),l,u=0;u<s;++u)(l=o[u])&&(c[u]=l);c.sort(t)}return new q(i,this._parents).order()}function Ht(e,t){return e<t?-1:e>t?1:e>=t?0:NaN}function Ut(){var e=arguments[0];return arguments[0]=this,e.apply(null,arguments),this}function Wt(){return Array.from(this)}function Gt(){for(var e=this._groups,t=0,n=e.length;t<n;++t)for(var r=e[t],i=0,a=r.length;i<a;++i){var o=r[i];if(o)return o}return null}function Kt(){let e=0;for(let t of this)++e;return e}function qt(){return!this.node()}function Jt(e){for(var t=this._groups,n=0,r=t.length;n<r;++n)for(var i=t[n],a=0,o=i.length,s;a<o;++a)(s=i[a])&&e.call(s,s.__data__,a,i);return this}function Yt(e){return function(){this.removeAttribute(e)}}function Xt(e){return function(){this.removeAttributeNS(e.space,e.local)}}function Zt(e,t){return function(){this.setAttribute(e,t)}}function Qt(e,t){return function(){this.setAttributeNS(e.space,e.local,t)}}function $t(e,t){return function(){var n=t.apply(this,arguments);n==null?this.removeAttribute(e):this.setAttribute(e,n)}}function en(e,t){return function(){var n=t.apply(this,arguments);n==null?this.removeAttributeNS(e.space,e.local):this.setAttributeNS(e.space,e.local,n)}}function tn(e,t){var n=ct(e);if(arguments.length<2){var r=this.node();return n.local?r.getAttributeNS(n.space,n.local):r.getAttribute(n)}return this.each((t==null?n.local?Xt:Yt:typeof t==`function`?n.local?en:$t:n.local?Qt:Zt)(n,t))}function nn(e){return e.ownerDocument&&e.ownerDocument.defaultView||e.document&&e||e.defaultView}function rn(e){return function(){this.style.removeProperty(e)}}function an(e,t,n){return function(){this.style.setProperty(e,t,n)}}function on(e,t,n){return function(){var r=t.apply(this,arguments);r==null?this.style.removeProperty(e):this.style.setProperty(e,r,n)}}function sn(e,t,n){return arguments.length>1?this.each((t==null?rn:typeof t==`function`?on:an)(e,t,n??``)):cn(this.node(),e)}function cn(e,t){return e.style.getPropertyValue(t)||nn(e).getComputedStyle(e,null).getPropertyValue(t)}function ln(e){return function(){delete this[e]}}function un(e,t){return function(){this[e]=t}}function dn(e,t){return function(){var n=t.apply(this,arguments);n==null?delete this[e]:this[e]=n}}function fn(e,t){return arguments.length>1?this.each((t==null?ln:typeof t==`function`?dn:un)(e,t)):this.node()[e]}function pn(e){return e.trim().split(/^|\s+/)}function mn(e){return e.classList||new hn(e)}function hn(e){this._node=e,this._names=pn(e.getAttribute(`class`)||``)}hn.prototype={add:function(e){this._names.indexOf(e)<0&&(this._names.push(e),this._node.setAttribute(`class`,this._names.join(` `)))},remove:function(e){var t=this._names.indexOf(e);t>=0&&(this._names.splice(t,1),this._node.setAttribute(`class`,this._names.join(` `)))},contains:function(e){return this._names.indexOf(e)>=0}};function gn(e,t){for(var n=mn(e),r=-1,i=t.length;++r<i;)n.add(t[r])}function _n(e,t){for(var n=mn(e),r=-1,i=t.length;++r<i;)n.remove(t[r])}function vn(e){return function(){gn(this,e)}}function yn(e){return function(){_n(this,e)}}function bn(e,t){return function(){(t.apply(this,arguments)?gn:_n)(this,e)}}function xn(e,t){var n=pn(e+``);if(arguments.length<2){for(var r=mn(this.node()),i=-1,a=n.length;++i<a;)if(!r.contains(n[i]))return!1;return!0}return this.each((typeof t==`function`?bn:t?vn:yn)(n,t))}function Sn(){this.textContent=``}function Cn(e){return function(){this.textContent=e}}function wn(e){return function(){this.textContent=e.apply(this,arguments)??``}}function Tn(e){return arguments.length?this.each(e==null?Sn:(typeof e==`function`?wn:Cn)(e)):this.node().textContent}function En(){this.innerHTML=``}function Dn(e){return function(){this.innerHTML=e}}function On(e){return function(){this.innerHTML=e.apply(this,arguments)??``}}function kn(e){return arguments.length?this.each(e==null?En:(typeof e==`function`?On:Dn)(e)):this.node().innerHTML}function An(){this.nextSibling&&this.parentNode.appendChild(this)}function jn(){return this.each(An)}function Mn(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function Nn(){return this.each(Mn)}function Pn(e){var t=typeof e==`function`?e:dt(e);return this.select(function(){return this.appendChild(t.apply(this,arguments))})}function Fn(){return null}function In(e,t){var n=typeof e==`function`?e:dt(e),r=t==null?Fn:typeof t==`function`?t:pt(t);return this.select(function(){return this.insertBefore(n.apply(this,arguments),r.apply(this,arguments)||null)})}function Ln(){var e=this.parentNode;e&&e.removeChild(this)}function Rn(){return this.each(Ln)}function zn(){var e=this.cloneNode(!1),t=this.parentNode;return t?t.insertBefore(e,this.nextSibling):e}function Bn(){var e=this.cloneNode(!0),t=this.parentNode;return t?t.insertBefore(e,this.nextSibling):e}function Vn(e){return this.select(e?Bn:zn)}function Hn(e){return arguments.length?this.property(`__data__`,e):this.node().__data__}function Un(e){return function(t){e.call(this,t,this.__data__)}}function Wn(e){return e.trim().split(/^|\s+/).map(function(e){var t=``,n=e.indexOf(`.`);return n>=0&&(t=e.slice(n+1),e=e.slice(0,n)),{type:e,name:t}})}function Gn(e){return function(){var t=this.__on;if(t){for(var n=0,r=-1,i=t.length,a;n<i;++n)a=t[n],(!e.type||a.type===e.type)&&a.name===e.name?this.removeEventListener(a.type,a.listener,a.options):t[++r]=a;++r?t.length=r:delete this.__on}}}function Kn(e,t,n){return function(){var r=this.__on,i,a=Un(t);if(r){for(var o=0,s=r.length;o<s;++o)if((i=r[o]).type===e.type&&i.name===e.name){this.removeEventListener(i.type,i.listener,i.options),this.addEventListener(i.type,i.listener=a,i.options=n),i.value=t;return}}this.addEventListener(e.type,a,n),i={type:e.type,name:e.name,value:t,listener:a,options:n},r?r.push(i):this.__on=[i]}}function qn(e,t,n){var r=Wn(e+``),i,a=r.length,o;if(arguments.length<2){var s=this.node().__on;if(s){for(var c=0,l=s.length,u;c<l;++c)for(i=0,u=s[c];i<a;++i)if((o=r[i]).type===u.type&&o.name===u.name)return u.value}return}for(s=t?Kn:Gn,i=0;i<a;++i)this.each(s(r[i],t,n));return this}function Jn(e,t,n){var r=nn(e),i=r.CustomEvent;typeof i==`function`?i=new i(t,n):(i=r.document.createEvent(`Event`),n?(i.initEvent(t,n.bubbles,n.cancelable),i.detail=n.detail):i.initEvent(t,!1,!1)),e.dispatchEvent(i)}function Yn(e,t){return function(){return Jn(this,e,t)}}function Xn(e,t){return function(){return Jn(this,e,t.apply(this,arguments))}}function Zn(e,t){return this.each((typeof t==`function`?Xn:Yn)(e,t))}function*Qn(){for(var e=this._groups,t=0,n=e.length;t<n;++t)for(var r=e[t],i=0,a=r.length,o;i<a;++i)(o=r[i])&&(yield o)}var $n=[null];function q(e,t){this._groups=e,this._parents=t}function er(){return new q([[document.documentElement]],$n)}function tr(){return this}q.prototype=er.prototype={constructor:q,select:mt,selectAll:yt,selectChild:wt,selectChildren:Dt,filter:Ot,data:It,enter:At,exit:Rt,join:zt,merge:Bt,selection:tr,order:K,sort:Vt,call:Ut,nodes:Wt,node:Gt,size:Kt,empty:qt,each:Jt,attr:tn,style:sn,property:fn,classed:xn,text:Tn,html:kn,raise:jn,lower:Nn,append:Pn,insert:In,remove:Rn,clone:Vn,datum:Hn,on:qn,dispatch:Zn,[Symbol.iterator]:Qn};function nr(e){return typeof e==`string`?new q([[document.querySelector(e)]],[document.documentElement]):new q([[e]],$n)}function rr(e){let t;for(;t=e.sourceEvent;)e=t;return e}function ir(e,t){if(e=rr(e),t===void 0&&(t=e.currentTarget),t){var n=t.ownerSVGElement||t;if(n.createSVGPoint){var r=n.createSVGPoint();return r.x=e.clientX,r.y=e.clientY,r=r.matrixTransform(t.getScreenCTM().inverse()),[r.x,r.y]}if(t.getBoundingClientRect){var i=t.getBoundingClientRect();return[e.clientX-i.left-t.clientLeft,e.clientY-i.top-t.clientTop]}}return[e.pageX,e.pageY]}var ar={capture:!0,passive:!1};function or(e){e.preventDefault(),e.stopImmediatePropagation()}function sr(e){var t=e.document.documentElement,n=nr(e).on(`dragstart.drag`,or,ar);`onselectstart`in t?n.on(`selectstart.drag`,or,ar):(t.__noselect=t.style.MozUserSelect,t.style.MozUserSelect=`none`)}function cr(e,t){var n=e.document.documentElement,r=nr(e).on(`dragstart.drag`,null);t&&(r.on(`click.drag`,or,ar),setTimeout(function(){r.on(`click.drag`,null)},0)),`onselectstart`in n?r.on(`selectstart.drag`,null):(n.style.MozUserSelect=n.__noselect,delete n.__noselect)}function lr(e,t,n){e.prototype=t.prototype=n,n.constructor=e}function ur(e,t){var n=Object.create(e.prototype);for(var r in t)n[r]=t[r];return n}function dr(){}var fr=.7,pr=1/fr,mr=`\\s*([+-]?\\d+)\\s*`,hr=`\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*`,J=`\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*`,gr=/^#([0-9a-f]{3,8})$/,_r=RegExp(`^rgb\\(${mr},${mr},${mr}\\)$`),vr=RegExp(`^rgb\\(${J},${J},${J}\\)$`),yr=RegExp(`^rgba\\(${mr},${mr},${mr},${hr}\\)$`),br=RegExp(`^rgba\\(${J},${J},${J},${hr}\\)$`),xr=RegExp(`^hsl\\(${hr},${J},${J}\\)$`),Sr=RegExp(`^hsla\\(${hr},${J},${J},${hr}\\)$`),Cr={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};lr(dr,Or,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:wr,formatHex:wr,formatHex8:Tr,formatHsl:Er,formatRgb:Dr,toString:Dr});function wr(){return this.rgb().formatHex()}function Tr(){return this.rgb().formatHex8()}function Er(){return Br(this).formatHsl()}function Dr(){return this.rgb().formatRgb()}function Or(e){var t,n;return e=(e+``).trim().toLowerCase(),(t=gr.exec(e))?(n=t[1].length,t=parseInt(t[1],16),n===6?kr(t):n===3?new Y(t>>8&15|t>>4&240,t>>4&15|t&240,(t&15)<<4|t&15,1):n===8?Ar(t>>24&255,t>>16&255,t>>8&255,(t&255)/255):n===4?Ar(t>>12&15|t>>8&240,t>>8&15|t>>4&240,t>>4&15|t&240,((t&15)<<4|t&15)/255):null):(t=_r.exec(e))?new Y(t[1],t[2],t[3],1):(t=vr.exec(e))?new Y(t[1]*255/100,t[2]*255/100,t[3]*255/100,1):(t=yr.exec(e))?Ar(t[1],t[2],t[3],t[4]):(t=br.exec(e))?Ar(t[1]*255/100,t[2]*255/100,t[3]*255/100,t[4]):(t=xr.exec(e))?zr(t[1],t[2]/100,t[3]/100,1):(t=Sr.exec(e))?zr(t[1],t[2]/100,t[3]/100,t[4]):Cr.hasOwnProperty(e)?kr(Cr[e]):e===`transparent`?new Y(NaN,NaN,NaN,0):null}function kr(e){return new Y(e>>16&255,e>>8&255,e&255,1)}function Ar(e,t,n,r){return r<=0&&(e=t=n=NaN),new Y(e,t,n,r)}function jr(e){return e instanceof dr||(e=Or(e)),e?(e=e.rgb(),new Y(e.r,e.g,e.b,e.opacity)):new Y}function Mr(e,t,n,r){return arguments.length===1?jr(e):new Y(e,t,n,r??1)}function Y(e,t,n,r){this.r=+e,this.g=+t,this.b=+n,this.opacity=+r}lr(Y,Mr,ur(dr,{brighter(e){return e=e==null?pr:pr**+e,new Y(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?fr:fr**+e,new Y(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new Y(Lr(this.r),Lr(this.g),Lr(this.b),Ir(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:Nr,formatHex:Nr,formatHex8:Pr,formatRgb:Fr,toString:Fr}));function Nr(){return`#${Rr(this.r)}${Rr(this.g)}${Rr(this.b)}`}function Pr(){return`#${Rr(this.r)}${Rr(this.g)}${Rr(this.b)}${Rr((isNaN(this.opacity)?1:this.opacity)*255)}`}function Fr(){let e=Ir(this.opacity);return`${e===1?`rgb(`:`rgba(`}${Lr(this.r)}, ${Lr(this.g)}, ${Lr(this.b)}${e===1?`)`:`, ${e})`}`}function Ir(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function Lr(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function Rr(e){return e=Lr(e),(e<16?`0`:``)+e.toString(16)}function zr(e,t,n,r){return r<=0?e=t=n=NaN:n<=0||n>=1?e=t=NaN:t<=0&&(e=NaN),new X(e,t,n,r)}function Br(e){if(e instanceof X)return new X(e.h,e.s,e.l,e.opacity);if(e instanceof dr||(e=Or(e)),!e)return new X;if(e instanceof X)return e;e=e.rgb();var t=e.r/255,n=e.g/255,r=e.b/255,i=Math.min(t,n,r),a=Math.max(t,n,r),o=NaN,s=a-i,c=(a+i)/2;return s?(o=t===a?(n-r)/s+(n<r)*6:n===a?(r-t)/s+2:(t-n)/s+4,s/=c<.5?a+i:2-a-i,o*=60):s=c>0&&c<1?0:o,new X(o,s,c,e.opacity)}function Vr(e,t,n,r){return arguments.length===1?Br(e):new X(e,t,n,r??1)}function X(e,t,n,r){this.h=+e,this.s=+t,this.l=+n,this.opacity=+r}lr(X,Vr,ur(dr,{brighter(e){return e=e==null?pr:pr**+e,new X(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?fr:fr**+e,new X(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,t=isNaN(e)||isNaN(this.s)?0:this.s,n=this.l,r=n+(n<.5?n:1-n)*t,i=2*n-r;return new Y(Wr(e>=240?e-240:e+120,i,r),Wr(e,i,r),Wr(e<120?e+240:e-120,i,r),this.opacity)},clamp(){return new X(Hr(this.h),Ur(this.s),Ur(this.l),Ir(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){let e=Ir(this.opacity);return`${e===1?`hsl(`:`hsla(`}${Hr(this.h)}, ${Ur(this.s)*100}%, ${Ur(this.l)*100}%${e===1?`)`:`, ${e})`}`}}));function Hr(e){return e=(e||0)%360,e<0?e+360:e}function Ur(e){return Math.max(0,Math.min(1,e||0))}function Wr(e,t,n){return(e<60?t+(n-t)*e/60:e<180?n:e<240?t+(n-t)*(240-e)/60:t)*255}var Gr=e=>()=>e;function Kr(e,t){return function(n){return e+n*t}}function qr(e,t,n){return e**=+n,t=t**+n-e,n=1/n,function(r){return(e+r*t)**+n}}function Jr(e){return(e=+e)==1?Yr:function(t,n){return n-t?qr(t,n,e):Gr(isNaN(t)?n:t)}}function Yr(e,t){var n=t-e;return n?Kr(e,n):Gr(isNaN(e)?t:e)}var Xr=function e(t){var n=Jr(t);function r(e,t){var r=n((e=Mr(e)).r,(t=Mr(t)).r),i=n(e.g,t.g),a=n(e.b,t.b),o=Yr(e.opacity,t.opacity);return function(t){return e.r=r(t),e.g=i(t),e.b=a(t),e.opacity=o(t),e+``}}return r.gamma=e,r}(1);function Zr(e,t){return e=+e,t=+t,function(n){return e*(1-n)+t*n}}var Qr=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,$r=new RegExp(Qr.source,`g`);function ei(e){return function(){return e}}function ti(e){return function(t){return e(t)+``}}function ni(e,t){var n=Qr.lastIndex=$r.lastIndex=0,r,i,a,o=-1,s=[],c=[];for(e+=``,t+=``;(r=Qr.exec(e))&&(i=$r.exec(t));)(a=i.index)>n&&(a=t.slice(n,a),s[o]?s[o]+=a:s[++o]=a),(r=r[0])===(i=i[0])?s[o]?s[o]+=i:s[++o]=i:(s[++o]=null,c.push({i:o,x:Zr(r,i)})),n=$r.lastIndex;return n<t.length&&(a=t.slice(n),s[o]?s[o]+=a:s[++o]=a),s.length<2?c[0]?ti(c[0].x):ei(t):(t=c.length,function(e){for(var n=0,r;n<t;++n)s[(r=c[n]).i]=r.x(e);return s.join(``)})}var ri=180/Math.PI,ii={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function ai(e,t,n,r,i,a){var o,s,c;return(o=Math.sqrt(e*e+t*t))&&(e/=o,t/=o),(c=e*n+t*r)&&(n-=e*c,r-=t*c),(s=Math.sqrt(n*n+r*r))&&(n/=s,r/=s,c/=s),e*r<t*n&&(e=-e,t=-t,c=-c,o=-o),{translateX:i,translateY:a,rotate:Math.atan2(t,e)*ri,skewX:Math.atan(c)*ri,scaleX:o,scaleY:s}}var oi;function si(e){let t=new(typeof DOMMatrix==`function`?DOMMatrix:WebKitCSSMatrix)(e+``);return t.isIdentity?ii:ai(t.a,t.b,t.c,t.d,t.e,t.f)}function ci(e){return e==null||(oi||=document.createElementNS(`http://www.w3.org/2000/svg`,`g`),oi.setAttribute(`transform`,e),!(e=oi.transform.baseVal.consolidate()))?ii:(e=e.matrix,ai(e.a,e.b,e.c,e.d,e.e,e.f))}function li(e,t,n,r){function i(e){return e.length?e.pop()+` `:``}function a(e,r,i,a,o,s){if(e!==i||r!==a){var c=o.push(`translate(`,null,t,null,n);s.push({i:c-4,x:Zr(e,i)},{i:c-2,x:Zr(r,a)})}else (i||a)&&o.push(`translate(`+i+t+a+n)}function o(e,t,n,a){e===t?t&&n.push(i(n)+`rotate(`+t+r):(e-t>180?t+=360:t-e>180&&(e+=360),a.push({i:n.push(i(n)+`rotate(`,null,r)-2,x:Zr(e,t)}))}function s(e,t,n,a){e===t?t&&n.push(i(n)+`skewX(`+t+r):a.push({i:n.push(i(n)+`skewX(`,null,r)-2,x:Zr(e,t)})}function c(e,t,n,r,a,o){if(e!==n||t!==r){var s=a.push(i(a)+`scale(`,null,`,`,null,`)`);o.push({i:s-4,x:Zr(e,n)},{i:s-2,x:Zr(t,r)})}else (n!==1||r!==1)&&a.push(i(a)+`scale(`+n+`,`+r+`)`)}return function(t,n){var r=[],i=[];return t=e(t),n=e(n),a(t.translateX,t.translateY,n.translateX,n.translateY,r,i),o(t.rotate,n.rotate,r,i),s(t.skewX,n.skewX,r,i),c(t.scaleX,t.scaleY,n.scaleX,n.scaleY,r,i),t=n=null,function(e){for(var t=-1,n=i.length,a;++t<n;)r[(a=i[t]).i]=a.x(e);return r.join(``)}}}var ui=li(si,`px, `,`px)`,`deg)`),di=li(ci,`, `,`)`,`)`),fi=1e-12;function pi(e){return((e=Math.exp(e))+1/e)/2}function mi(e){return((e=Math.exp(e))-1/e)/2}function hi(e){return((e=Math.exp(2*e))-1)/(e+1)}var gi=function e(t,n,r){function i(e,i){var a=e[0],o=e[1],s=e[2],c=i[0],l=i[1],u=i[2],d=c-a,f=l-o,p=d*d+f*f,m,h;if(p<fi)h=Math.log(u/s)/t,m=function(e){return[a+e*d,o+e*f,s*Math.exp(t*e*h)]};else{var g=Math.sqrt(p),_=(u*u-s*s+r*p)/(2*s*n*g),v=(u*u-s*s-r*p)/(2*u*n*g),y=Math.log(Math.sqrt(_*_+1)-_);h=(Math.log(Math.sqrt(v*v+1)-v)-y)/t,m=function(e){var r=e*h,i=pi(y),c=s/(n*g)*(i*hi(t*r+y)-mi(y));return[a+c*d,o+c*f,s*i/pi(t*r+y)]}}return m.duration=h*1e3*t/Math.SQRT2,m}return i.rho=function(t){var n=Math.max(.001,+t),r=n*n;return e(n,r,r*r)},i}(Math.SQRT2,2,4),_i=0,vi=0,yi=0,bi=1e3,xi,Si,Ci=0,wi=0,Ti=0,Ei=typeof performance==`object`&&performance.now?performance:Date,Di=typeof window==`object`&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(e){setTimeout(e,17)};function Oi(){return wi||=(Di(ki),Ei.now()+Ti)}function ki(){wi=0}function Ai(){this._call=this._time=this._next=null}Ai.prototype=ji.prototype={constructor:Ai,restart:function(e,t,n){if(typeof e!=`function`)throw TypeError(`callback is not a function`);n=(n==null?Oi():+n)+(t==null?0:+t),!this._next&&Si!==this&&(Si?Si._next=this:xi=this,Si=this),this._call=e,this._time=n,Ii()},stop:function(){this._call&&(this._call=null,this._time=1/0,Ii())}};function ji(e,t,n){var r=new Ai;return r.restart(e,t,n),r}function Mi(){Oi(),++_i;for(var e=xi,t;e;)(t=wi-e._time)>=0&&e._call.call(void 0,t),e=e._next;--_i}function Ni(){wi=(Ci=Ei.now())+Ti,_i=vi=0;try{Mi()}finally{_i=0,Fi(),wi=0}}function Pi(){var e=Ei.now(),t=e-Ci;t>bi&&(Ti-=t,Ci=e)}function Fi(){for(var e,t=xi,n,r=1/0;t;)t._call?(r>t._time&&(r=t._time),e=t,t=t._next):(n=t._next,t._next=null,t=e?e._next=n:xi=n);Si=e,Ii(r)}function Ii(e){_i||(vi&&=clearTimeout(vi),e-wi>24?(e<1/0&&(vi=setTimeout(Ni,e-Ei.now()-Ti)),yi&&=clearInterval(yi)):(yi||=(Ci=Ei.now(),setInterval(Pi,bi)),_i=1,Di(Ni)))}function Li(e,t,n){var r=new Ai;return t=t==null?0:+t,r.restart(n=>{r.stop(),e(n+t)},t,n),r}var Ri=U(`start`,`end`,`cancel`,`interrupt`),zi=[],Bi=0,Vi=1,Hi=2,Ui=3,Wi=4,Gi=5,Ki=6;function qi(e,t,n,r,i,a){var o=e.__transition;if(!o)e.__transition={};else if(n in o)return;Yi(e,n,{name:t,index:r,group:i,on:Ri,tween:zi,time:a.time,delay:a.delay,duration:a.duration,ease:a.ease,timer:null,state:Bi})}function Ji(e,t){var n=Q(e,t);if(n.state>Bi)throw Error(`too late; already scheduled`);return n}function Z(e,t){var n=Q(e,t);if(n.state>Ui)throw Error(`too late; already running`);return n}function Q(e,t){var n=e.__transition;if(!n||!(n=n[t]))throw Error(`transition not found`);return n}function Yi(e,t,n){var r=e.__transition,i;r[t]=n,n.timer=ji(a,0,n.time);function a(e){n.state=Vi,n.timer.restart(o,n.delay,n.time),n.delay<=e&&o(e-n.delay)}function o(a){var l,u,d,f;if(n.state!==Vi)return c();for(l in r)if(f=r[l],f.name===n.name){if(f.state===Ui)return Li(o);f.state===Wi?(f.state=Ki,f.timer.stop(),f.on.call(`interrupt`,e,e.__data__,f.index,f.group),delete r[l]):+l<t&&(f.state=Ki,f.timer.stop(),f.on.call(`cancel`,e,e.__data__,f.index,f.group),delete r[l])}if(Li(function(){n.state===Ui&&(n.state=Wi,n.timer.restart(s,n.delay,n.time),s(a))}),n.state=Hi,n.on.call(`start`,e,e.__data__,n.index,n.group),n.state===Hi){for(n.state=Ui,i=Array(d=n.tween.length),l=0,u=-1;l<d;++l)(f=n.tween[l].value.call(e,e.__data__,n.index,n.group))&&(i[++u]=f);i.length=u+1}}function s(t){for(var r=t<n.duration?n.ease.call(null,t/n.duration):(n.timer.restart(c),n.state=Gi,1),a=-1,o=i.length;++a<o;)i[a].call(e,r);n.state===Gi&&(n.on.call(`end`,e,e.__data__,n.index,n.group),c())}function c(){for(var i in n.state=Ki,n.timer.stop(),delete r[t],r)return;delete e.__transition}}function Xi(e,t){var n=e.__transition,r,i,a=!0,o;if(n){for(o in t=t==null?null:t+``,n){if((r=n[o]).name!==t){a=!1;continue}i=r.state>Hi&&r.state<Gi,r.state=Ki,r.timer.stop(),r.on.call(i?`interrupt`:`cancel`,e,e.__data__,r.index,r.group),delete n[o]}a&&delete e.__transition}}function Zi(e){return this.each(function(){Xi(this,e)})}function Qi(e,t){var n,r;return function(){var i=Z(this,e),a=i.tween;if(a!==n){r=n=a;for(var o=0,s=r.length;o<s;++o)if(r[o].name===t){r=r.slice(),r.splice(o,1);break}}i.tween=r}}function $i(e,t,n){var r,i;if(typeof n!=`function`)throw Error();return function(){var a=Z(this,e),o=a.tween;if(o!==r){i=(r=o).slice();for(var s={name:t,value:n},c=0,l=i.length;c<l;++c)if(i[c].name===t){i[c]=s;break}c===l&&i.push(s)}a.tween=i}}function ea(e,t){var n=this._id;if(e+=``,arguments.length<2){for(var r=Q(this.node(),n).tween,i=0,a=r.length,o;i<a;++i)if((o=r[i]).name===e)return o.value;return null}return this.each((t==null?Qi:$i)(n,e,t))}function ta(e,t,n){var r=e._id;return e.each(function(){var e=Z(this,r);(e.value||={})[t]=n.apply(this,arguments)}),function(e){return Q(e,r).value[t]}}function na(e,t){var n;return(typeof t==`number`?Zr:t instanceof Or?Xr:(n=Or(t))?(t=n,Xr):ni)(e,t)}function ra(e){return function(){this.removeAttribute(e)}}function ia(e){return function(){this.removeAttributeNS(e.space,e.local)}}function aa(e,t,n){var r,i=n+``,a;return function(){var o=this.getAttribute(e);return o===i?null:o===r?a:a=t(r=o,n)}}function oa(e,t,n){var r,i=n+``,a;return function(){var o=this.getAttributeNS(e.space,e.local);return o===i?null:o===r?a:a=t(r=o,n)}}function sa(e,t,n){var r,i,a;return function(){var o,s=n(this),c;return s==null?void this.removeAttribute(e):(o=this.getAttribute(e),c=s+``,o===c?null:o===r&&c===i?a:(i=c,a=t(r=o,s)))}}function ca(e,t,n){var r,i,a;return function(){var o,s=n(this),c;return s==null?void this.removeAttributeNS(e.space,e.local):(o=this.getAttributeNS(e.space,e.local),c=s+``,o===c?null:o===r&&c===i?a:(i=c,a=t(r=o,s)))}}function la(e,t){var n=ct(e),r=n===`transform`?di:na;return this.attrTween(e,typeof t==`function`?(n.local?ca:sa)(n,r,ta(this,`attr.`+e,t)):t==null?(n.local?ia:ra)(n):(n.local?oa:aa)(n,r,t))}function ua(e,t){return function(n){this.setAttribute(e,t.call(this,n))}}function da(e,t){return function(n){this.setAttributeNS(e.space,e.local,t.call(this,n))}}function fa(e,t){var n,r;function i(){var i=t.apply(this,arguments);return i!==r&&(n=(r=i)&&da(e,i)),n}return i._value=t,i}function pa(e,t){var n,r;function i(){var i=t.apply(this,arguments);return i!==r&&(n=(r=i)&&ua(e,i)),n}return i._value=t,i}function ma(e,t){var n=`attr.`+e;if(arguments.length<2)return(n=this.tween(n))&&n._value;if(t==null)return this.tween(n,null);if(typeof t!=`function`)throw Error();var r=ct(e);return this.tween(n,(r.local?fa:pa)(r,t))}function ha(e,t){return function(){Ji(this,e).delay=+t.apply(this,arguments)}}function ga(e,t){return t=+t,function(){Ji(this,e).delay=t}}function _a(e){var t=this._id;return arguments.length?this.each((typeof e==`function`?ha:ga)(t,e)):Q(this.node(),t).delay}function va(e,t){return function(){Z(this,e).duration=+t.apply(this,arguments)}}function ya(e,t){return t=+t,function(){Z(this,e).duration=t}}function ba(e){var t=this._id;return arguments.length?this.each((typeof e==`function`?va:ya)(t,e)):Q(this.node(),t).duration}function xa(e,t){if(typeof t!=`function`)throw Error();return function(){Z(this,e).ease=t}}function Sa(e){var t=this._id;return arguments.length?this.each(xa(t,e)):Q(this.node(),t).ease}function Ca(e,t){return function(){var n=t.apply(this,arguments);if(typeof n!=`function`)throw Error();Z(this,e).ease=n}}function wa(e){if(typeof e!=`function`)throw Error();return this.each(Ca(this._id,e))}function Ta(e){typeof e!=`function`&&(e=bt(e));for(var t=this._groups,n=t.length,r=Array(n),i=0;i<n;++i)for(var a=t[i],o=a.length,s=r[i]=[],c,l=0;l<o;++l)(c=a[l])&&e.call(c,c.__data__,l,a)&&s.push(c);return new eo(r,this._parents,this._name,this._id)}function Ea(e){if(e._id!==this._id)throw Error();for(var t=this._groups,n=e._groups,r=t.length,i=n.length,a=Math.min(r,i),o=Array(r),s=0;s<a;++s)for(var c=t[s],l=n[s],u=c.length,d=o[s]=Array(u),f,p=0;p<u;++p)(f=c[p]||l[p])&&(d[p]=f);for(;s<r;++s)o[s]=t[s];return new eo(o,this._parents,this._name,this._id)}function Da(e){return(e+``).trim().split(/^|\s+/).every(function(e){var t=e.indexOf(`.`);return t>=0&&(e=e.slice(0,t)),!e||e===`start`})}function Oa(e,t,n){var r,i,a=Da(t)?Ji:Z;return function(){var o=a(this,e),s=o.on;s!==r&&(i=(r=s).copy()).on(t,n),o.on=i}}function ka(e,t){var n=this._id;return arguments.length<2?Q(this.node(),n).on.on(e):this.each(Oa(n,e,t))}function Aa(e){return function(){var t=this.parentNode;for(var n in this.__transition)if(+n!==e)return;t&&t.removeChild(this)}}function ja(){return this.on(`end.remove`,Aa(this._id))}function Ma(e){var t=this._name,n=this._id;typeof e!=`function`&&(e=pt(e));for(var r=this._groups,i=r.length,a=Array(i),o=0;o<i;++o)for(var s=r[o],c=s.length,l=a[o]=Array(c),u,d,f=0;f<c;++f)(u=s[f])&&(d=e.call(u,u.__data__,f,s))&&(`__data__`in u&&(d.__data__=u.__data__),l[f]=d,qi(l[f],t,n,f,l,Q(u,n)));return new eo(a,this._parents,t,n)}function Na(e){var t=this._name,n=this._id;typeof e!=`function`&&(e=_t(e));for(var r=this._groups,i=r.length,a=[],o=[],s=0;s<i;++s)for(var c=r[s],l=c.length,u,d=0;d<l;++d)if(u=c[d]){for(var f=e.call(u,u.__data__,d,c),p,m=Q(u,n),h=0,g=f.length;h<g;++h)(p=f[h])&&qi(p,t,n,h,f,m);a.push(f),o.push(u)}return new eo(a,o,t,n)}var Pa=er.prototype.constructor;function Fa(){return new Pa(this._groups,this._parents)}function Ia(e,t){var n,r,i;return function(){var a=cn(this,e),o=(this.style.removeProperty(e),cn(this,e));return a===o?null:a===n&&o===r?i:i=t(n=a,r=o)}}function La(e){return function(){this.style.removeProperty(e)}}function Ra(e,t,n){var r,i=n+``,a;return function(){var o=cn(this,e);return o===i?null:o===r?a:a=t(r=o,n)}}function za(e,t,n){var r,i,a;return function(){var o=cn(this,e),s=n(this),c=s+``;return s??(c=s=(this.style.removeProperty(e),cn(this,e))),o===c?null:o===r&&c===i?a:(i=c,a=t(r=o,s))}}function Ba(e,t){var n,r,i,a=`style.`+t,o=`end.`+a,s;return function(){var c=Z(this,e),l=c.on,u=c.value[a]==null?s||=La(t):void 0;(l!==n||i!==u)&&(r=(n=l).copy()).on(o,i=u),c.on=r}}function Va(e,t,n){var r=(e+=``)==`transform`?ui:na;return t==null?this.styleTween(e,Ia(e,r)).on(`end.style.`+e,La(e)):typeof t==`function`?this.styleTween(e,za(e,r,ta(this,`style.`+e,t))).each(Ba(this._id,e)):this.styleTween(e,Ra(e,r,t),n).on(`end.style.`+e,null)}function Ha(e,t,n){return function(r){this.style.setProperty(e,t.call(this,r),n)}}function Ua(e,t,n){var r,i;function a(){var a=t.apply(this,arguments);return a!==i&&(r=(i=a)&&Ha(e,a,n)),r}return a._value=t,a}function Wa(e,t,n){var r=`style.`+(e+=``);if(arguments.length<2)return(r=this.tween(r))&&r._value;if(t==null)return this.tween(r,null);if(typeof t!=`function`)throw Error();return this.tween(r,Ua(e,t,n??``))}function Ga(e){return function(){this.textContent=e}}function Ka(e){return function(){this.textContent=e(this)??``}}function qa(e){return this.tween(`text`,typeof e==`function`?Ka(ta(this,`text`,e)):Ga(e==null?``:e+``))}function Ja(e){return function(t){this.textContent=e.call(this,t)}}function Ya(e){var t,n;function r(){var r=e.apply(this,arguments);return r!==n&&(t=(n=r)&&Ja(r)),t}return r._value=e,r}function Xa(e){var t=`text`;if(arguments.length<1)return(t=this.tween(t))&&t._value;if(e==null)return this.tween(t,null);if(typeof e!=`function`)throw Error();return this.tween(t,Ya(e))}function Za(){for(var e=this._name,t=this._id,n=to(),r=this._groups,i=r.length,a=0;a<i;++a)for(var o=r[a],s=o.length,c,l=0;l<s;++l)if(c=o[l]){var u=Q(c,t);qi(c,e,n,l,o,{time:u.time+u.delay+u.duration,delay:0,duration:u.duration,ease:u.ease})}return new eo(r,this._parents,e,n)}function Qa(){var e,t,n=this,r=n._id,i=n.size();return new Promise(function(a,o){var s={value:o},c={value:function(){--i===0&&a()}};n.each(function(){var n=Z(this,r),i=n.on;i!==e&&(t=(e=i).copy(),t._.cancel.push(s),t._.interrupt.push(s),t._.end.push(c)),n.on=t}),i===0&&a()})}var $a=0;function eo(e,t,n,r){this._groups=e,this._parents=t,this._name=n,this._id=r}function to(){return++$a}var no=er.prototype;eo.prototype={constructor:eo,select:Ma,selectAll:Na,selectChild:no.selectChild,selectChildren:no.selectChildren,filter:Ta,merge:Ea,selection:Fa,transition:Za,call:no.call,nodes:no.nodes,node:no.node,size:no.size,empty:no.empty,each:no.each,on:ka,attr:la,attrTween:ma,style:Va,styleTween:Wa,text:qa,textTween:Xa,remove:ja,tween:ea,delay:_a,duration:ba,ease:Sa,easeVarying:wa,end:Qa,[Symbol.iterator]:no[Symbol.iterator]};function ro(e){return((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2}var io={time:null,delay:0,duration:250,ease:ro};function ao(e,t){for(var n;!(n=e.__transition)||!(n=n[t]);)if(!(e=e.parentNode))throw Error(`transition ${t} not found`);return n}function oo(e){var t,n;e instanceof eo?(t=e._id,e=e._name):(t=to(),(n=io).time=Oi(),e=e==null?null:e+``);for(var r=this._groups,i=r.length,a=0;a<i;++a)for(var o=r[a],s=o.length,c,l=0;l<s;++l)(c=o[l])&&qi(c,e,t,l,o,n||ao(c,t));return new eo(r,this._parents,e,t)}er.prototype.interrupt=Zi,er.prototype.transition=oo;var so=e=>()=>e;function co(e,{sourceEvent:t,target:n,transform:r,dispatch:i}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:t,enumerable:!0,configurable:!0},target:{value:n,enumerable:!0,configurable:!0},transform:{value:r,enumerable:!0,configurable:!0},_:{value:i}})}function lo(e,t,n){this.k=e,this.x=t,this.y=n}lo.prototype={constructor:lo,scale:function(e){return e===1?this:new lo(this.k*e,this.x,this.y)},translate:function(e,t){return e===0&t===0?this:new lo(this.k,this.x+this.k*e,this.y+this.k*t)},apply:function(e){return[e[0]*this.k+this.x,e[1]*this.k+this.y]},applyX:function(e){return e*this.k+this.x},applyY:function(e){return e*this.k+this.y},invert:function(e){return[(e[0]-this.x)/this.k,(e[1]-this.y)/this.k]},invertX:function(e){return(e-this.x)/this.k},invertY:function(e){return(e-this.y)/this.k},rescaleX:function(e){return e.copy().domain(e.range().map(this.invertX,this).map(e.invert,e))},rescaleY:function(e){return e.copy().domain(e.range().map(this.invertY,this).map(e.invert,e))},toString:function(){return`translate(`+this.x+`,`+this.y+`) scale(`+this.k+`)`}};var uo=new lo(1,0,0);lo.prototype;function fo(e){e.stopImmediatePropagation()}function po(e){e.preventDefault(),e.stopImmediatePropagation()}function mo(e){return(!e.ctrlKey||e.type===`wheel`)&&!e.button}function ho(){var e=this;return e instanceof SVGElement?(e=e.ownerSVGElement||e,e.hasAttribute(`viewBox`)?(e=e.viewBox.baseVal,[[e.x,e.y],[e.x+e.width,e.y+e.height]]):[[0,0],[e.width.baseVal.value,e.height.baseVal.value]]):[[0,0],[e.clientWidth,e.clientHeight]]}function go(){return this.__zoom||uo}function _o(e){return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*(e.ctrlKey?10:1)}function vo(){return navigator.maxTouchPoints||`ontouchstart`in this}function yo(e,t,n){var r=e.invertX(t[0][0])-n[0][0],i=e.invertX(t[1][0])-n[1][0],a=e.invertY(t[0][1])-n[0][1],o=e.invertY(t[1][1])-n[1][1];return e.translate(i>r?(r+i)/2:Math.min(0,r)||Math.max(0,i),o>a?(a+o)/2:Math.min(0,a)||Math.max(0,o))}function bo(){var e=mo,t=ho,n=yo,r=_o,i=vo,a=[0,1/0],o=[[-1/0,-1/0],[1/0,1/0]],s=250,c=gi,l=U(`start`,`zoom`,`end`),u,d,f,p=500,m=150,h=0,g=10;function _(e){e.property(`__zoom`,go).on(`wheel.zoom`,w,{passive:!1}).on(`mousedown.zoom`,T).on(`dblclick.zoom`,ee).filter(i).on(`touchstart.zoom`,E).on(`touchmove.zoom`,D).on(`touchend.zoom touchcancel.zoom`,te).style(`-webkit-tap-highlight-color`,`rgba(0,0,0,0)`)}_.transform=function(e,t,n,r){var i=e.selection?e.selection():e;i.property(`__zoom`,go),e===i?i.interrupt().each(function(){S(this,arguments).event(r).start().zoom(null,typeof t==`function`?t.apply(this,arguments):t).end()}):x(e,t,n,r)},_.scaleBy=function(e,t,n,r){_.scaleTo(e,function(){return this.__zoom.k*(typeof t==`function`?t.apply(this,arguments):t)},n,r)},_.scaleTo=function(e,r,i,a){_.transform(e,function(){var e=t.apply(this,arguments),a=this.__zoom,s=i==null?b(e):typeof i==`function`?i.apply(this,arguments):i,c=a.invert(s),l=typeof r==`function`?r.apply(this,arguments):r;return n(y(v(a,l),s,c),e,o)},i,a)},_.translateBy=function(e,r,i,a){_.transform(e,function(){return n(this.__zoom.translate(typeof r==`function`?r.apply(this,arguments):r,typeof i==`function`?i.apply(this,arguments):i),t.apply(this,arguments),o)},null,a)},_.translateTo=function(e,r,i,a,s){_.transform(e,function(){var e=t.apply(this,arguments),s=this.__zoom,c=a==null?b(e):typeof a==`function`?a.apply(this,arguments):a;return n(uo.translate(c[0],c[1]).scale(s.k).translate(typeof r==`function`?-r.apply(this,arguments):-r,typeof i==`function`?-i.apply(this,arguments):-i),e,o)},a,s)};function v(e,t){return t=Math.max(a[0],Math.min(a[1],t)),t===e.k?e:new lo(t,e.x,e.y)}function y(e,t,n){var r=t[0]-n[0]*e.k,i=t[1]-n[1]*e.k;return r===e.x&&i===e.y?e:new lo(e.k,r,i)}function b(e){return[(+e[0][0]+ +e[1][0])/2,(+e[0][1]+ +e[1][1])/2]}function x(e,n,r,i){e.on(`start.zoom`,function(){S(this,arguments).event(i).start()}).on(`interrupt.zoom end.zoom`,function(){S(this,arguments).event(i).end()}).tween(`zoom`,function(){var e=this,a=arguments,o=S(e,a).event(i),s=t.apply(e,a),l=r==null?b(s):typeof r==`function`?r.apply(e,a):r,u=Math.max(s[1][0]-s[0][0],s[1][1]-s[0][1]),d=e.__zoom,f=typeof n==`function`?n.apply(e,a):n,p=c(d.invert(l).concat(u/d.k),f.invert(l).concat(u/f.k));return function(e){if(e===1)e=f;else{var t=p(e),n=u/t[2];e=new lo(n,l[0]-t[0]*n,l[1]-t[1]*n)}o.zoom(null,e)}})}function S(e,t,n){return!n&&e.__zooming||new C(e,t)}function C(e,n){this.that=e,this.args=n,this.active=0,this.sourceEvent=null,this.extent=t.apply(e,n),this.taps=0}C.prototype={event:function(e){return e&&(this.sourceEvent=e),this},start:function(){return++this.active===1&&(this.that.__zooming=this,this.emit(`start`)),this},zoom:function(e,t){return this.mouse&&e!==`mouse`&&(this.mouse[1]=t.invert(this.mouse[0])),this.touch0&&e!==`touch`&&(this.touch0[1]=t.invert(this.touch0[0])),this.touch1&&e!==`touch`&&(this.touch1[1]=t.invert(this.touch1[0])),this.that.__zoom=t,this.emit(`zoom`),this},end:function(){return--this.active===0&&(delete this.that.__zooming,this.emit(`end`)),this},emit:function(e){var t=nr(this.that).datum();l.call(e,this.that,new co(e,{sourceEvent:this.sourceEvent,target:_,type:e,transform:this.that.__zoom,dispatch:l}),t)}};function w(t,...i){if(!e.apply(this,arguments))return;var s=S(this,i).event(t),c=this.__zoom,l=Math.max(a[0],Math.min(a[1],c.k*2**r.apply(this,arguments))),u=ir(t);if(s.wheel)(s.mouse[0][0]!==u[0]||s.mouse[0][1]!==u[1])&&(s.mouse[1]=c.invert(s.mouse[0]=u)),clearTimeout(s.wheel);else if(c.k===l)return;else s.mouse=[u,c.invert(u)],Xi(this),s.start();po(t),s.wheel=setTimeout(d,m),s.zoom(`mouse`,n(y(v(c,l),s.mouse[0],s.mouse[1]),s.extent,o));function d(){s.wheel=null,s.end()}}function T(t,...r){if(f||!e.apply(this,arguments))return;var i=t.currentTarget,a=S(this,r,!0).event(t),s=nr(t.view).on(`mousemove.zoom`,d,!0).on(`mouseup.zoom`,p,!0),c=ir(t,i),l=t.clientX,u=t.clientY;sr(t.view),fo(t),a.mouse=[c,this.__zoom.invert(c)],Xi(this),a.start();function d(e){if(po(e),!a.moved){var t=e.clientX-l,r=e.clientY-u;a.moved=t*t+r*r>h}a.event(e).zoom(`mouse`,n(y(a.that.__zoom,a.mouse[0]=ir(e,i),a.mouse[1]),a.extent,o))}function p(e){s.on(`mousemove.zoom mouseup.zoom`,null),cr(e.view,a.moved),po(e),a.event(e).end()}}function ee(r,...i){if(e.apply(this,arguments)){var a=this.__zoom,c=ir(r.changedTouches?r.changedTouches[0]:r,this),l=a.invert(c),u=a.k*(r.shiftKey?.5:2),d=n(y(v(a,u),c,l),t.apply(this,i),o);po(r),s>0?nr(this).transition().duration(s).call(x,d,c,r):nr(this).call(_.transform,d,c,r)}}function E(t,...n){if(e.apply(this,arguments)){var r=t.touches,i=r.length,a=S(this,n,t.changedTouches.length===i).event(t),o,s,c,l;for(fo(t),s=0;s<i;++s)c=r[s],l=ir(c,this),l=[l,this.__zoom.invert(l),c.identifier],a.touch0?!a.touch1&&a.touch0[2]!==l[2]&&(a.touch1=l,a.taps=0):(a.touch0=l,o=!0,a.taps=1+!!u);u&&=clearTimeout(u),o&&(a.taps<2&&(d=l[0],u=setTimeout(function(){u=null},p)),Xi(this),a.start())}}function D(e,...t){if(this.__zooming){var r=S(this,t).event(e),i=e.changedTouches,a=i.length,s,c,l,u;for(po(e),s=0;s<a;++s)c=i[s],l=ir(c,this),r.touch0&&r.touch0[2]===c.identifier?r.touch0[0]=l:r.touch1&&r.touch1[2]===c.identifier&&(r.touch1[0]=l);if(c=r.that.__zoom,r.touch1){var d=r.touch0[0],f=r.touch0[1],p=r.touch1[0],m=r.touch1[1],h=(h=p[0]-d[0])*h+(h=p[1]-d[1])*h,g=(g=m[0]-f[0])*g+(g=m[1]-f[1])*g;c=v(c,Math.sqrt(h/g)),l=[(d[0]+p[0])/2,(d[1]+p[1])/2],u=[(f[0]+m[0])/2,(f[1]+m[1])/2]}else if(r.touch0)l=r.touch0[0],u=r.touch0[1];else return;r.zoom(`touch`,n(y(c,l,u),r.extent,o))}}function te(e,...t){if(this.__zooming){var n=S(this,t).event(e),r=e.changedTouches,i=r.length,a,o;for(fo(e),f&&clearTimeout(f),f=setTimeout(function(){f=null},p),a=0;a<i;++a)o=r[a],n.touch0&&n.touch0[2]===o.identifier?delete n.touch0:n.touch1&&n.touch1[2]===o.identifier&&delete n.touch1;if(n.touch1&&!n.touch0&&(n.touch0=n.touch1,delete n.touch1),n.touch0)n.touch0[1]=this.__zoom.invert(n.touch0[0]);else if(n.end(),n.taps===2&&(o=ir(o,this),Math.hypot(d[0]-o[0],d[1]-o[1])<g)){var s=nr(this).on(`dblclick.zoom`);s&&s.apply(this,arguments)}}}return _.wheelDelta=function(e){return arguments.length?(r=typeof e==`function`?e:so(+e),_):r},_.filter=function(t){return arguments.length?(e=typeof t==`function`?t:so(!!t),_):e},_.touchable=function(e){return arguments.length?(i=typeof e==`function`?e:so(!!e),_):i},_.extent=function(e){return arguments.length?(t=typeof e==`function`?e:so([[+e[0][0],+e[0][1]],[+e[1][0],+e[1][1]]]),_):t},_.scaleExtent=function(e){return arguments.length?(a[0]=+e[0],a[1]=+e[1],_):[a[0],a[1]]},_.translateExtent=function(e){return arguments.length?(o[0][0]=+e[0][0],o[1][0]=+e[1][0],o[0][1]=+e[0][1],o[1][1]=+e[1][1],_):[[o[0][0],o[0][1]],[o[1][0],o[1][1]]]},_.constrain=function(e){return arguments.length?(n=e,_):n},_.duration=function(e){return arguments.length?(s=+e,_):s},_.interpolate=function(e){return arguments.length?(c=e,_):c},_.on=function(){var e=l.on.apply(l,arguments);return e===l?_:e},_.clickDistance=function(e){return arguments.length?(h=(e=+e)*e,_):Math.sqrt(h)},_.tapDistance=function(e){return arguments.length?(g=+e,_):g},_}var xo=Symbol(`MiniMapSlots`),So=[`id`,`x`,`y`,`rx`,`ry`,`width`,`height`,`fill`,`stroke`,`stroke-width`,`shape-rendering`],Co=c({name:`MiniMapNode`,compatConfig:{MODE:3},inheritAttrs:!1,props:{id:{},type:{},selected:{type:Boolean},dragging:{type:Boolean},position:{},dimensions:{},borderRadius:{},color:{},shapeRendering:{},strokeColor:{},strokeWidth:{},hidden:{type:Boolean}},emits:[`click`,`dblclick`,`mouseenter`,`mousemove`,`mouseleave`],setup(e,{emit:t}){let n=e,r=ne(xo),i=oe(),a=C(()=>i.style??{});function o(e){t(`click`,e)}function s(e){t(`dblclick`,e)}function c(e){t(`mouseenter`,e)}function l(e){t(`mousemove`,e)}function u(e){t(`mouseleave`,e)}return(e,t)=>!e.hidden&&e.dimensions.width!==0&&e.dimensions.height!==0?(j(),w(pe,{key:0},[P(r)[`node-${n.type}`]?(j(),p(Ee(P(r)[`node-${n.type}`]),x(A({key:0},{...n,...e.$attrs})),null,16)):(j(),w(`rect`,A({key:1,id:e.id},e.$attrs,{class:[`vue-flow__minimap-node`,{selected:e.selected,dragging:e.dragging}],x:e.position.x,y:e.position.y,rx:e.borderRadius,ry:e.borderRadius,width:e.dimensions.width,height:e.dimensions.height,fill:e.color||a.value.background||a.value.backgroundColor,stroke:e.strokeColor,"stroke-width":e.strokeWidth,"shape-rendering":e.shapeRendering,onClick:o,onDblclick:s,onMouseenter:c,onMousemove:l,onMouseleave:u}),null,16,So))],64)):v(``,!0)}}),wo=[`width`,`height`,`viewBox`,`aria-labelledby`],To=[`id`],Eo=[`d`,`fill`,`stroke`,`stroke-width`],Do=c({name:`MiniMap`,compatConfig:{MODE:3},props:{nodeColor:{type:[String,Function],default:`#e2e2e2`},nodeStrokeColor:{type:[String,Function],default:`transparent`},nodeClassName:{type:[String,Function]},nodeBorderRadius:{default:5},nodeStrokeWidth:{default:2},maskColor:{default:`rgb(240, 240, 240, 0.6)`},maskStrokeColor:{default:`none`},maskStrokeWidth:{default:1},position:{default:`bottom-right`},pannable:{type:Boolean,default:!1},zoomable:{type:Boolean,default:!1},width:{},height:{},ariaLabel:{default:`Vue Flow mini map`},inversePan:{type:Boolean,default:!1},zoomStep:{default:1},offsetScale:{default:5},maskBorderRadius:{default:0}},emits:[`click`,`nodeClick`,`nodeDblclick`,`nodeMouseenter`,`nodeMousemove`,`nodeMouseleave`],setup(e,{emit:t}){let i=n(),c=oe(),{id:u,edges:d,viewport:m,translateExtent:g,dimensions:b,emits:x,d3Selection:T,d3Zoom:ee,getNodesInitialized:E}=h(),D=F();ye(xo,i);let ne=C(()=>e.width??c.style?.width??200),O=C(()=>e.height??c.style?.height??150),k=typeof window>`u`||window.chrome?`crispEdges`:`geometricPrecision`,ie=S(()=>typeof e.nodeColor==`string`?()=>e.nodeColor:e.nodeColor),ae=S(()=>typeof e.nodeStrokeColor==`string`?()=>e.nodeStrokeColor:e.nodeStrokeColor),se=S(()=>typeof e.nodeClassName==`string`?()=>e.nodeClassName:typeof e.nodeClassName==`function`?e.nodeClassName:()=>``),ce=S(()=>_(E.value.filter(e=>!e.hidden))),le=S(()=>({x:-m.value.x/m.value.zoom,y:-m.value.y/m.value.zoom,width:b.value.width/m.value.zoom,height:b.value.height/m.value.zoom})),A=S(()=>E.value&&E.value.length?te(ce.value,le.value):le.value),ue=S(()=>{let e=A.value.width/ne.value,t=A.value.height/O.value;return Math.max(e,t)}),M=S(()=>{let t=ue.value*ne.value,n=ue.value*O.value,r=e.offsetScale*ue.value;return{offset:r,x:A.value.x-(t-A.value.width)/2-r,y:A.value.y-(n-A.value.height)/2-r,width:t+r*2,height:n+r*2}}),de=S(()=>!M.value.x||!M.value.y?``:`
|
|
2
2
|
M${M.value.x-M.value.offset},${M.value.y-M.value.offset}
|
|
3
3
|
h${M.value.width+M.value.offset*2}
|
|
4
4
|
v${M.value.height+M.value.offset*2}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{Gi as e,Ii as t,fa as n,hr as r,no as i,qa as a,y as o,yr as s}from"./index-
|
|
1
|
+
import{Gi as e,Ii as t,fa as n,hr as r,no as i,qa as a,y as o,yr as s}from"./index-PMr5ScNs.js";import{t as c}from"./src-BS3JGGS_.js";import{t as l}from"./useProjectCloudOrg-CG7seJKu.js";var u=e({__name:`SendToChatDialog`,setup(e,{expose:u}){let{t:d}=s(),f=r(),{orgId:p,cloudUser:m}=l(),h=a(null);function g(e,t){return t?d(`sendToChat.${e}`,t):d(`sendToChat.${e}`)}function _(){f.add({severity:`success`,summary:d(`sendToChat.sent`),life:2500})}function v(e){p.value&&h.value?.open(e)}return u({open:v}),(e,r)=>(n(),t(i(c),{ref_key:`dialogRef`,ref:h,client:i(o),t:g,"current-user-id":i(m)?.id,"org-id":i(p),"lock-organization":``,onSent:_},null,8,[`client`,`current-user-id`,`org-id`]))}});export{u as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{Fi as e,Gi as t,Pi as n,Ri as r,Tn as i,Ui as a,c as o,fa as s,no as c,qn as l,ut as u,yr as d}from"./index-
|
|
1
|
+
import{Fi as e,Gi as t,Pi as n,Ri as r,Tn as i,Ui as a,c as o,fa as s,no as c,qn as l,ut as u,yr as d}from"./index-PMr5ScNs.js";import{t as f}from"./ProcessControls-neMxqIY_.js";var p={class:`service-controls-bar`},m={class:`service-controls-bar__left`},h={class:`service-controls-bar__right`},g=l(t({__name:`ServiceControlsBar`,props:{service:{},processes:{}},setup(t){let l=t,g=n(()=>o(l.processes)),_=n(()=>g.value?g.value.state:`stopped`),{t:v}=d(),y=u(),b=n(()=>{let e=l.service.effectiveAgentId;return e?y.getById(e)?.config.name??e:null}),x=n(()=>{switch(_.value){case`running`:return`success`;case`starting`:return`warn`;case`errored`:return`danger`;default:return`secondary`}});return(n,o)=>(s(),r(`div`,p,[e(`div`,m,[a(c(i),{value:_.value,severity:x.value,class:`service-controls-bar__tag`},null,8,[`value`,`severity`]),a(c(i),{value:b.value??c(v)(`serviceHeader.noAgent`),severity:b.value?`secondary`:`warn`,icon:`pi pi-server`,class:`service-controls-bar__tag`},null,8,[`value`,`severity`])]),e(`div`,h,[a(f,{"agent-id":g.value?.agentId??t.service.agentId??``,"process-id":g.value?.id??t.service.id,state:g.value?.state??`stopped`},null,8,[`agent-id`,`process-id`,`state`])])]))}}),[[`__scopeId`,`data-v-381d0967`]]);export{g as t};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{Aa as e,En as t,Et as n,Fi as r,Fn as i,Gi as a,Hi as o,Ia as s,Ii as c,In as l,Jn as u,Li as d,Mn as f,Na as p,Oi as m,Pi as h,Qt as g,R as _,Ri as v,Ta as y,Tn as b,Ui as x,Wn as S,Xt as C,Yn as w,Zn as T,Zt as E,_t as D,at as O,bt as k,ca as A,cn as j,ct as M,f as N,fa as P,hr as ee,ht as F,it as I,ji as L,jn as te,ka as R,ki as z,lr as ne,ma as B,mn as V,mr as re,no as H,nt as ie,pt as U,qa as W,qn as G,qt as K,rt as ae,sr as oe,ta as se,ua as q,ur as ce,ut as le,vn as ue,wi as de,wt as fe,yn as J,yr as Y}from"./index-e5dmzMc-.js";import"./cloud-session-CZWto5y3.js";import"./src-NXursDRf.js";import"./useServiceUrlHost-CE4Qoy-J.js";import"./ProcessControls-PKQWukd7.js";import{t as pe}from"./ServiceControlsBar-Bk4M-tKR.js";import{t as me}from"./uuid--pMuF47W.js";import{n as he,t as ge}from"./column-DSBHw97f.js";import{n as X}from"./plus-jk73RdzY.js";import{t as _e}from"./checkbox-BCCx0Nu6.js";import"./useProjectCloudOrg-BwLsTiz0.js";import{t as Z}from"./toggleswitch-Cv0supU2.js";import{i as ve,n as ye,o as be,r as Q,t as $}from"./tabpanel-CKudNnqo.js";import{i as xe,n as Se,r as Ce,t as we}from"./useEnvVarAutocomplete-DJMTIim7.js";import{t as Te}from"./autocomplete-DMfvn4sK.js";import"./SendToChatDialog-DIp62wvw.js";import{n as Ee,t as De}from"./ProcessMetrics-CMewzyxA.js";import{t as Oe}from"./LogViewer-DcoQF_33.js";import{t as ke}from"./divider-BswZTb8q.js";import{t as Ae}from"./settings.store-DeGpnclr.js";import{t as je}from"./WikiView-Izg2SvGt.js";var Me={key:0,class:`log-details`},Ne={class:`log-details__section`},Pe={class:`log-details__label`},Fe={class:`log-details__value log-details__value--box`},Ie={class:`log-details__section`},Le={class:`log-details__label`},Re={class:`log-details__value log-details__value--box log-details__value--code`},ze={class:`log-details__section`},Be={class:`log-details__label`},Ve={class:`log-details__value log-details__value--box`},He={class:`log-details__process`},Ue={class:`log-details__section`},We={class:`log-details__label`},Ge={class:`log-details__value log-details__value--box`},Ke={key:0,class:`log-details__section`},qe={class:`log-details__label`},Je={class:`log-details__value log-details__value--box log-details__value--code`,"data-testid":`log-details-cwd`},Ye={class:`log-details__section`},Xe={class:`log-details__label`},Ze={class:`log-details__value log-details__value--box`},Qe={key:1,class:`log-details__section`},$e={class:`log-details__label`},et={class:`log-details__value log-details__value--box`},tt={key:2,class:`log-details__section`},nt={class:`log-details__label`},rt={class:`log-details__value log-details__value--box log-details__value--code`},it=G(a({__name:`LogDetailsDrawer`,props:{visible:{type:Boolean},log:{}},emits:[`update:visible`,`view-process`],setup(e,{emit:t}){let n=e,{t:i}=Y(),a=N(),o=t,l=h(()=>{if(!n.log)return``;let e=new Date(n.log.timestamp);return`${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,`0`)}-${String(e.getDate()).padStart(2,`0`)} ${String(e.getHours()).padStart(2,`0`)}:${String(e.getMinutes()).padStart(2,`0`)}:${String(e.getSeconds()).padStart(2,`0`)}`}),f=h(()=>n.log?n.log.level.charAt(0).toUpperCase()+n.log.level.slice(1):``),p=h(()=>!n.log||n.log.pid==null?i(`logDetails.notAvailable`):String(n.log.pid)),m=h(()=>n.log?a.getByService(n.log.processId)[0]?.cwd??null:null);function g(){n.log&&o(`view-process`,n.log.processId)}function _(){o(`update:visible`,!1)}return(t,n)=>(P(),c(H(u),{visible:e.visible,position:`right`,header:H(i)(`logDetails.header`),style:{width:`440px`},"onUpdate:visible":_},{default:R(()=>[e.log?(P(),v(`div`,Me,[r(`div`,Ne,[r(`div`,Pe,s(H(i)(`logDetails.type`)),1),r(`div`,Fe,s(f.value),1)]),r(`div`,Ie,[r(`div`,Le,s(H(i)(`logDetails.rawMessage`)),1),r(`div`,Re,s(e.log.raw),1)]),r(`div`,ze,[r(`div`,Be,s(H(i)(`logDetails.serviceId`)),1),r(`div`,Ve,[r(`div`,He,[r(`span`,null,s(e.log.processId),1),x(H(T),{label:H(i)(`logDetails.viewProcess`),icon:`pi pi-external-link`,size:`small`,outlined:``,onClick:g},null,8,[`label`])])])]),r(`div`,Ue,[r(`div`,We,s(H(i)(`logDetails.pid`)),1),r(`div`,Ge,s(p.value),1)]),m.value?(P(),v(`div`,Ke,[r(`div`,qe,s(H(i)(`logDetails.cwd`)),1),r(`div`,Je,s(m.value),1)])):d(``,!0),r(`div`,Ye,[r(`div`,Xe,s(H(i)(`logDetails.timestamp`)),1),r(`div`,Ze,s(l.value),1)]),e.log.stream?(P(),v(`div`,Qe,[r(`div`,$e,s(H(i)(`logDetails.stream`)),1),r(`div`,et,s(e.log.stream),1)])):d(``,!0),e.log.metadata&&Object.keys(e.log.metadata).length>0?(P(),v(`div`,tt,[r(`div`,nt,s(H(i)(`logDetails.metadata`)),1),r(`div`,rt,s(JSON.stringify(e.log.metadata,null,2)),1)])):d(``,!0)])):d(``,!0)]),_:1},8,[`visible`,`header`]))}}),[[`__scopeId`,`data-v-4e3f7abe`]]),at=500,ot=5,st=D;function ct(e){return e+Math.random()*e*.3}function lt(e,t){let n=W([]),r=W(!1),a=null,o=0,s=null,c=i(()=>{o=0,r.value||w()}),u=[],d=null,f=W(0),p=W(0),m=0,h=0,g=null;function _(){g||=setInterval(()=>{f.value=m,p.value=h,m=0,h=0},1e3)}function v(){g&&=(clearInterval(g),null),f.value=0,p.value=0,m=0,h=0}function b(){if(d=null,u.length===0)return;let e=u;u=[],h+=e.length;let t=[...n.value,...e];t.length>at&&(t=t.slice(t.length-at)),n.value=t}function x(){!e.value||!t.value||(r.value=!0,a=l.process.onLog.subscribe({agentId:e.value,processId:t.value},{onData(e){let t=e;if(o=0,S(`connected`),t.some(e=>e.__clearLogBuffer)){n.value=[],u=[];return}m+=t.length,u.push(...t),d===null&&(d=requestAnimationFrame(b))},onError(e){console.error(`[useLogStream] Subscription error:`,e.message),r.value=!1,a=null,C()}}))}function C(){if(o>=ot){console.warn(`[useLogStream] Max retries (${ot}) reached`),S(`disconnected`);return}S(`reconnecting`);let e=ct(st*2**o);o++,s=setTimeout(()=>{s=null,w()},e)}async function w(){if(!r.value&&!(!e.value||!t.value)){o=0;try{let r=await l.process.logs.query({agentId:e.value,processId:t.value});r.length>at&&(r=r.slice(r.length-at)),n.value=r,S(`connected`)}catch{}x()}}function T(){s&&=(clearTimeout(s),null),d!==null&&(cancelAnimationFrame(d),d=null),u=[],v(),a&&=(a.unsubscribe(),null),r.value=!1,o=0,n.value=[]}return y([e,t],([e,t],[n,i])=>{(e!==n||t!==i)&&(r.value&&T(),w())}),q(()=>{c(),T()}),{logs:n,isStreaming:r,start:w,stop:T,receivedPerSec:f,flushedPerSec:p,startStats:_,stopStats:v}}var ut={class:`service-terminal__toolbar`},dt={class:`service-terminal__toolbar-left`},ft={key:0,class:`pid-option`},pt={key:1,class:`pid-option`},mt={key:0,class:`pi pi-circle-fill pid-status-icon pid-status-icon--active`,style:{"margin-right":`0.5rem`}},ht={key:1,class:`pi pi-circle-fill pid-status-icon pid-status-icon--stopped`,style:{"margin-right":`0.5rem`}},gt={class:`pid-option`},_t={key:0,class:`pi pi-list`,style:{"margin-right":`0.5rem`}},vt=[`title`],yt=[`title`],bt={class:`service-terminal__toolbar-right`},xt={class:`service-terminal__content`,"data-testid":`service-terminal-content`},St={key:1,class:`service-terminal__shortcuts`},Ct={class:`service-terminal__command-input`},wt={class:`service-terminal__bottom`},Tt=`runeya_command_history_`,Et=50,Dt=G(a({__name:`ServiceTerminal`,props:{service:{},processes:{}},setup(e){let{t}=Y(),n=e,i=h(()=>n.processes.find(e=>e.state===`running`||e.state===`starting`)??n.processes[0]??null),a=h(()=>i.value?.agentId??``),o=h(()=>i.value?.id??``),u=ee(),{logs:f,isStreaming:m,start:g,stop:_,receivedPerSec:S,flushedPerSec:C,startStats:w,stopStats:E}=lt(a,o),D=W(!1);y(D,e=>{e?w():E()});function O(e){e.ctrlKey&&e.shiftKey&&(e.key===`*`||e.key===`µ`)&&(e.preventDefault(),D.value=!D.value)}let k=h(()=>{let e=new Map;return f.value.forEach(t=>{if(t.pid!=null){let r=e.get(t.pid);if(r)r.lastSeen=new Date(Math.max(r.lastSeen.getTime(),new Date(t.timestamp).getTime())),r.logCount++;else{let r=n.processes.find(e=>e.pid===t.pid&&(e.state===`running`||e.state===`starting`));e.set(t.pid,{pid:t.pid,lastSeen:new Date(t.timestamp),logCount:1,isActive:!!r})}}}),Array.from(e.values()).sort((e,t)=>t.lastSeen.getTime()-e.lastSeen.getTime())}),M=h(()=>$.value===`all`?f.value:f.value.filter(e=>e.pid===$.value)),N=h(()=>k.value.filter(e=>e.isActive).length),F=h(()=>{let e=[{label:t(`serviceTerminal.allProcesses`),value:`all`,badge:N.value>0?`${N.value} ${t(`serviceTerminal.active`)}`:void 0,isActive:void 0}];return k.value.forEach(({pid:t,logCount:n,isActive:r})=>{e.push({label:`PID: ${t}`,value:t,badge:`${n} logs`,isActive:r})}),e});h(()=>n.processes.filter(e=>e.state===`running`).length);async function I(){if(i.value)try{await l.process.clearLogBuffer.mutate({agentId:i.value.agentId,processId:i.value.id}),f.value=[]}catch(e){u.add({severity:`error`,summary:t(`serviceTerminal.error`),detail:e.message??t(`serviceTerminal.failedToClearLogs`),life:5e3})}}let te=h(()=>n.service.shortcuts??[]),z=W(new Set);async function ne(e){let r=i.value?.agentId??n.service.agentId,a=i.value?.id??n.service.id;if(!r){u.add({severity:`warn`,summary:t(`serviceTerminal.noAgent`),detail:t(`serviceTerminal.noAgentDesc`),life:3e3});return}if(z.value.has(e.id)){try{await l.process.cancelShortcut.mutate({agentId:r,processId:a,shortcutId:e.id})}catch{}return}z.value=new Set([...z.value,e.id]);try{await l.process.executeShortcut.mutate({agentId:r,processId:a,shortcut:e})}catch(e){u.add({severity:`error`,summary:t(`serviceTerminal.shortcutFailed`),detail:e.message??t(`serviceTerminal.shortcutFailed`),life:5e3})}finally{let t=new Set(z.value);t.delete(e.id),z.value=t}}let V=W(``),re=W(new Set),ie=h(()=>re.value.size>0),U=W(null),G=W([]),K=W(-1),ae=`ls,ls -la,ls -lh,pwd,echo,echo $PWD,cat,cat package.json,grep,find,find . -name,ps,ps aux,top,htop,df -h,du -sh,tail,tail -f,tail -n 100,head,head -n 20,wc -l,curl,wget,git status,git log,git diff,git branch,npm run,npm install,npm test,npm start,yarn,yarn install,yarn test,yarn build,docker ps,docker logs,docker exec,env,printenv,whoami,hostname,date,uptime`.split(`,`),oe=W([]);function ce(e){let t=e.query.toLowerCase().trim();if(!t||!V.value.trim()){oe.value=[];return}let n=[...G.value.slice().reverse(),...ae],r=new Set;oe.value=n.filter(e=>r.has(e)?!1:(r.add(e),e.toLowerCase().includes(t))).slice(0,10)}function le(){try{let e=localStorage.getItem(Tt+n.service.id);e&&(G.value=JSON.parse(e))}catch{G.value=[]}}function ue(){try{localStorage.setItem(Tt+n.service.id,JSON.stringify(G.value))}catch{}}function de(e){G.value[G.value.length-1]!==e&&(G.value=[...G.value,e],G.value.length>Et&&(G.value=G.value.slice(-Et)),ue())}async function fe(){let e=i.value?.agentId??n.service.agentId,t=i.value?.id??n.service.id;if(e)try{await l.process.cancelAdHocCommand.mutate({agentId:e,processId:t})}catch{}}async function J(){if(!V.value.trim())return;let e=i.value?.agentId??n.service.agentId,r=i.value?.id??n.service.id;if(!e){u.add({severity:`warn`,summary:t(`serviceTerminal.noAgent`),detail:t(`serviceTerminal.noAgentDesc`),life:3e3});return}let a=me(),o=V.value.trim();de(o),V.value=``,oe.value=[],K.value=-1,re.value=new Set([...re.value,a]);try{await l.process.executeAdHocCommand.mutate({agentId:e,processId:r,command:o,commandId:a})}catch(e){u.add({severity:`error`,summary:t(`serviceTerminal.commandFailed`),detail:e.message??t(`serviceTerminal.commandFailed`),life:5e3})}finally{let e=new Set(re.value);e.delete(a),re.value=e,se(()=>{document.querySelector(`.service-terminal__input`)?.focus()})}}function he(e){if(e.key===`Enter`&&!e.shiftKey){e.preventDefault(),J();return}if(e.key===`ArrowUp`){if(e.preventDefault(),G.value.length===0)return;K.value===-1?K.value=G.value.length-1:K.value>0&&K.value--,V.value=G.value[K.value]||``}else if(e.key===`ArrowDown`){if(e.preventDefault(),K.value===-1)return;K.value<G.value.length-1?(K.value++,V.value=G.value[K.value]||``):(K.value=-1,V.value=``)}}function ge(){if(f.value.length===0)return;let e=f.value.map(e=>`[${new Date(e.timestamp).toISOString()}] ${e.level.toUpperCase().padEnd(5)} ${e.message}`),t=new Blob([e.join(`
|
|
1
|
+
import{Aa as e,En as t,Et as n,Fi as r,Fn as i,Gi as a,Hi as o,Ia as s,Ii as c,In as l,Jn as u,Li as d,Mn as f,Na as p,Oi as m,Pi as h,Qt as g,R as _,Ri as v,Ta as y,Tn as b,Ui as x,Wn as S,Xt as C,Yn as w,Zn as T,Zt as E,_t as D,at as O,bt as k,ca as A,cn as j,ct as M,f as N,fa as P,hr as ee,ht as F,it as I,ji as L,jn as te,ka as R,ki as z,lr as ne,ma as B,mn as V,mr as re,no as H,nt as ie,pt as U,qa as W,qn as G,qt as K,rt as ae,sr as oe,ta as se,ua as q,ur as ce,ut as le,vn as ue,wi as de,wt as fe,yn as J,yr as Y}from"./index-PMr5ScNs.js";import"./cloud-session-D71P4F3g.js";import"./src-BS3JGGS_.js";import"./useServiceUrlHost-ADKWqhx0.js";import"./ProcessControls-neMxqIY_.js";import{t as pe}from"./ServiceControlsBar-GgoPszoH.js";import{t as me}from"./uuid--pMuF47W.js";import{n as he,t as ge}from"./column-CjJa3tsz.js";import{n as X}from"./plus-BY4yX4ZS.js";import{t as _e}from"./checkbox-CfoV-T17.js";import"./useProjectCloudOrg-CG7seJKu.js";import{t as Z}from"./toggleswitch-CEiGEBl3.js";import{i as ve,n as ye,o as be,r as Q,t as $}from"./tabpanel-CssLXh-h.js";import{i as xe,n as Se,r as Ce,t as we}from"./useEnvVarAutocomplete-Dkx7Cn9l.js";import{t as Te}from"./autocomplete-BTMTTAk9.js";import"./SendToChatDialog-oi4KFAVq.js";import{n as Ee,t as De}from"./ProcessMetrics-Bb7yNIVd.js";import{t as Oe}from"./LogViewer-CvDPgFjq.js";import{t as ke}from"./divider-p4BForJk.js";import{t as Ae}from"./settings.store-CniuNQ3t.js";import{t as je}from"./WikiView-vYMnLt41.js";var Me={key:0,class:`log-details`},Ne={class:`log-details__section`},Pe={class:`log-details__label`},Fe={class:`log-details__value log-details__value--box`},Ie={class:`log-details__section`},Le={class:`log-details__label`},Re={class:`log-details__value log-details__value--box log-details__value--code`},ze={class:`log-details__section`},Be={class:`log-details__label`},Ve={class:`log-details__value log-details__value--box`},He={class:`log-details__process`},Ue={class:`log-details__section`},We={class:`log-details__label`},Ge={class:`log-details__value log-details__value--box`},Ke={key:0,class:`log-details__section`},qe={class:`log-details__label`},Je={class:`log-details__value log-details__value--box log-details__value--code`,"data-testid":`log-details-cwd`},Ye={class:`log-details__section`},Xe={class:`log-details__label`},Ze={class:`log-details__value log-details__value--box`},Qe={key:1,class:`log-details__section`},$e={class:`log-details__label`},et={class:`log-details__value log-details__value--box`},tt={key:2,class:`log-details__section`},nt={class:`log-details__label`},rt={class:`log-details__value log-details__value--box log-details__value--code`},it=G(a({__name:`LogDetailsDrawer`,props:{visible:{type:Boolean},log:{}},emits:[`update:visible`,`view-process`],setup(e,{emit:t}){let n=e,{t:i}=Y(),a=N(),o=t,l=h(()=>{if(!n.log)return``;let e=new Date(n.log.timestamp);return`${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,`0`)}-${String(e.getDate()).padStart(2,`0`)} ${String(e.getHours()).padStart(2,`0`)}:${String(e.getMinutes()).padStart(2,`0`)}:${String(e.getSeconds()).padStart(2,`0`)}`}),f=h(()=>n.log?n.log.level.charAt(0).toUpperCase()+n.log.level.slice(1):``),p=h(()=>!n.log||n.log.pid==null?i(`logDetails.notAvailable`):String(n.log.pid)),m=h(()=>n.log?a.getByService(n.log.processId)[0]?.cwd??null:null);function g(){n.log&&o(`view-process`,n.log.processId)}function _(){o(`update:visible`,!1)}return(t,n)=>(P(),c(H(u),{visible:e.visible,position:`right`,header:H(i)(`logDetails.header`),style:{width:`440px`},"onUpdate:visible":_},{default:R(()=>[e.log?(P(),v(`div`,Me,[r(`div`,Ne,[r(`div`,Pe,s(H(i)(`logDetails.type`)),1),r(`div`,Fe,s(f.value),1)]),r(`div`,Ie,[r(`div`,Le,s(H(i)(`logDetails.rawMessage`)),1),r(`div`,Re,s(e.log.raw),1)]),r(`div`,ze,[r(`div`,Be,s(H(i)(`logDetails.serviceId`)),1),r(`div`,Ve,[r(`div`,He,[r(`span`,null,s(e.log.processId),1),x(H(T),{label:H(i)(`logDetails.viewProcess`),icon:`pi pi-external-link`,size:`small`,outlined:``,onClick:g},null,8,[`label`])])])]),r(`div`,Ue,[r(`div`,We,s(H(i)(`logDetails.pid`)),1),r(`div`,Ge,s(p.value),1)]),m.value?(P(),v(`div`,Ke,[r(`div`,qe,s(H(i)(`logDetails.cwd`)),1),r(`div`,Je,s(m.value),1)])):d(``,!0),r(`div`,Ye,[r(`div`,Xe,s(H(i)(`logDetails.timestamp`)),1),r(`div`,Ze,s(l.value),1)]),e.log.stream?(P(),v(`div`,Qe,[r(`div`,$e,s(H(i)(`logDetails.stream`)),1),r(`div`,et,s(e.log.stream),1)])):d(``,!0),e.log.metadata&&Object.keys(e.log.metadata).length>0?(P(),v(`div`,tt,[r(`div`,nt,s(H(i)(`logDetails.metadata`)),1),r(`div`,rt,s(JSON.stringify(e.log.metadata,null,2)),1)])):d(``,!0)])):d(``,!0)]),_:1},8,[`visible`,`header`]))}}),[[`__scopeId`,`data-v-4e3f7abe`]]),at=500,ot=5,st=D;function ct(e){return e+Math.random()*e*.3}function lt(e,t){let n=W([]),r=W(!1),a=null,o=0,s=null,c=i(()=>{o=0,r.value||w()}),u=[],d=null,f=W(0),p=W(0),m=0,h=0,g=null;function _(){g||=setInterval(()=>{f.value=m,p.value=h,m=0,h=0},1e3)}function v(){g&&=(clearInterval(g),null),f.value=0,p.value=0,m=0,h=0}function b(){if(d=null,u.length===0)return;let e=u;u=[],h+=e.length;let t=[...n.value,...e];t.length>at&&(t=t.slice(t.length-at)),n.value=t}function x(){!e.value||!t.value||(r.value=!0,a=l.process.onLog.subscribe({agentId:e.value,processId:t.value},{onData(e){let t=e;if(o=0,S(`connected`),t.some(e=>e.__clearLogBuffer)){n.value=[],u=[];return}m+=t.length,u.push(...t),d===null&&(d=requestAnimationFrame(b))},onError(e){console.error(`[useLogStream] Subscription error:`,e.message),r.value=!1,a=null,C()}}))}function C(){if(o>=ot){console.warn(`[useLogStream] Max retries (${ot}) reached`),S(`disconnected`);return}S(`reconnecting`);let e=ct(st*2**o);o++,s=setTimeout(()=>{s=null,w()},e)}async function w(){if(!r.value&&!(!e.value||!t.value)){o=0;try{let r=await l.process.logs.query({agentId:e.value,processId:t.value});r.length>at&&(r=r.slice(r.length-at)),n.value=r,S(`connected`)}catch{}x()}}function T(){s&&=(clearTimeout(s),null),d!==null&&(cancelAnimationFrame(d),d=null),u=[],v(),a&&=(a.unsubscribe(),null),r.value=!1,o=0,n.value=[]}return y([e,t],([e,t],[n,i])=>{(e!==n||t!==i)&&(r.value&&T(),w())}),q(()=>{c(),T()}),{logs:n,isStreaming:r,start:w,stop:T,receivedPerSec:f,flushedPerSec:p,startStats:_,stopStats:v}}var ut={class:`service-terminal__toolbar`},dt={class:`service-terminal__toolbar-left`},ft={key:0,class:`pid-option`},pt={key:1,class:`pid-option`},mt={key:0,class:`pi pi-circle-fill pid-status-icon pid-status-icon--active`,style:{"margin-right":`0.5rem`}},ht={key:1,class:`pi pi-circle-fill pid-status-icon pid-status-icon--stopped`,style:{"margin-right":`0.5rem`}},gt={class:`pid-option`},_t={key:0,class:`pi pi-list`,style:{"margin-right":`0.5rem`}},vt=[`title`],yt=[`title`],bt={class:`service-terminal__toolbar-right`},xt={class:`service-terminal__content`,"data-testid":`service-terminal-content`},St={key:1,class:`service-terminal__shortcuts`},Ct={class:`service-terminal__command-input`},wt={class:`service-terminal__bottom`},Tt=`runeya_command_history_`,Et=50,Dt=G(a({__name:`ServiceTerminal`,props:{service:{},processes:{}},setup(e){let{t}=Y(),n=e,i=h(()=>n.processes.find(e=>e.state===`running`||e.state===`starting`)??n.processes[0]??null),a=h(()=>i.value?.agentId??``),o=h(()=>i.value?.id??``),u=ee(),{logs:f,isStreaming:m,start:g,stop:_,receivedPerSec:S,flushedPerSec:C,startStats:w,stopStats:E}=lt(a,o),D=W(!1);y(D,e=>{e?w():E()});function O(e){e.ctrlKey&&e.shiftKey&&(e.key===`*`||e.key===`µ`)&&(e.preventDefault(),D.value=!D.value)}let k=h(()=>{let e=new Map;return f.value.forEach(t=>{if(t.pid!=null){let r=e.get(t.pid);if(r)r.lastSeen=new Date(Math.max(r.lastSeen.getTime(),new Date(t.timestamp).getTime())),r.logCount++;else{let r=n.processes.find(e=>e.pid===t.pid&&(e.state===`running`||e.state===`starting`));e.set(t.pid,{pid:t.pid,lastSeen:new Date(t.timestamp),logCount:1,isActive:!!r})}}}),Array.from(e.values()).sort((e,t)=>t.lastSeen.getTime()-e.lastSeen.getTime())}),M=h(()=>$.value===`all`?f.value:f.value.filter(e=>e.pid===$.value)),N=h(()=>k.value.filter(e=>e.isActive).length),F=h(()=>{let e=[{label:t(`serviceTerminal.allProcesses`),value:`all`,badge:N.value>0?`${N.value} ${t(`serviceTerminal.active`)}`:void 0,isActive:void 0}];return k.value.forEach(({pid:t,logCount:n,isActive:r})=>{e.push({label:`PID: ${t}`,value:t,badge:`${n} logs`,isActive:r})}),e});h(()=>n.processes.filter(e=>e.state===`running`).length);async function I(){if(i.value)try{await l.process.clearLogBuffer.mutate({agentId:i.value.agentId,processId:i.value.id}),f.value=[]}catch(e){u.add({severity:`error`,summary:t(`serviceTerminal.error`),detail:e.message??t(`serviceTerminal.failedToClearLogs`),life:5e3})}}let te=h(()=>n.service.shortcuts??[]),z=W(new Set);async function ne(e){let r=i.value?.agentId??n.service.agentId,a=i.value?.id??n.service.id;if(!r){u.add({severity:`warn`,summary:t(`serviceTerminal.noAgent`),detail:t(`serviceTerminal.noAgentDesc`),life:3e3});return}if(z.value.has(e.id)){try{await l.process.cancelShortcut.mutate({agentId:r,processId:a,shortcutId:e.id})}catch{}return}z.value=new Set([...z.value,e.id]);try{await l.process.executeShortcut.mutate({agentId:r,processId:a,shortcut:e})}catch(e){u.add({severity:`error`,summary:t(`serviceTerminal.shortcutFailed`),detail:e.message??t(`serviceTerminal.shortcutFailed`),life:5e3})}finally{let t=new Set(z.value);t.delete(e.id),z.value=t}}let V=W(``),re=W(new Set),ie=h(()=>re.value.size>0),U=W(null),G=W([]),K=W(-1),ae=`ls,ls -la,ls -lh,pwd,echo,echo $PWD,cat,cat package.json,grep,find,find . -name,ps,ps aux,top,htop,df -h,du -sh,tail,tail -f,tail -n 100,head,head -n 20,wc -l,curl,wget,git status,git log,git diff,git branch,npm run,npm install,npm test,npm start,yarn,yarn install,yarn test,yarn build,docker ps,docker logs,docker exec,env,printenv,whoami,hostname,date,uptime`.split(`,`),oe=W([]);function ce(e){let t=e.query.toLowerCase().trim();if(!t||!V.value.trim()){oe.value=[];return}let n=[...G.value.slice().reverse(),...ae],r=new Set;oe.value=n.filter(e=>r.has(e)?!1:(r.add(e),e.toLowerCase().includes(t))).slice(0,10)}function le(){try{let e=localStorage.getItem(Tt+n.service.id);e&&(G.value=JSON.parse(e))}catch{G.value=[]}}function ue(){try{localStorage.setItem(Tt+n.service.id,JSON.stringify(G.value))}catch{}}function de(e){G.value[G.value.length-1]!==e&&(G.value=[...G.value,e],G.value.length>Et&&(G.value=G.value.slice(-Et)),ue())}async function fe(){let e=i.value?.agentId??n.service.agentId,t=i.value?.id??n.service.id;if(e)try{await l.process.cancelAdHocCommand.mutate({agentId:e,processId:t})}catch{}}async function J(){if(!V.value.trim())return;let e=i.value?.agentId??n.service.agentId,r=i.value?.id??n.service.id;if(!e){u.add({severity:`warn`,summary:t(`serviceTerminal.noAgent`),detail:t(`serviceTerminal.noAgentDesc`),life:3e3});return}let a=me(),o=V.value.trim();de(o),V.value=``,oe.value=[],K.value=-1,re.value=new Set([...re.value,a]);try{await l.process.executeAdHocCommand.mutate({agentId:e,processId:r,command:o,commandId:a})}catch(e){u.add({severity:`error`,summary:t(`serviceTerminal.commandFailed`),detail:e.message??t(`serviceTerminal.commandFailed`),life:5e3})}finally{let e=new Set(re.value);e.delete(a),re.value=e,se(()=>{document.querySelector(`.service-terminal__input`)?.focus()})}}function he(e){if(e.key===`Enter`&&!e.shiftKey){e.preventDefault(),J();return}if(e.key===`ArrowUp`){if(e.preventDefault(),G.value.length===0)return;K.value===-1?K.value=G.value.length-1:K.value>0&&K.value--,V.value=G.value[K.value]||``}else if(e.key===`ArrowDown`){if(e.preventDefault(),K.value===-1)return;K.value<G.value.length-1?(K.value++,V.value=G.value[K.value]||``):(K.value=-1,V.value=``)}}function ge(){if(f.value.length===0)return;let e=f.value.map(e=>`[${new Date(e.timestamp).toISOString()}] ${e.level.toUpperCase().padEnd(5)} ${e.message}`),t=new Blob([e.join(`
|
|
2
2
|
`)],{type:`text/plain`}),r=URL.createObjectURL(t),i=document.createElement(`a`);i.href=r,i.download=`${n.service.name}-${new Date().toISOString().slice(0,19).replaceAll(`:`,`-`)}.log`,document.body.appendChild(i),i.click(),document.body.removeChild(i),URL.revokeObjectURL(r)}let X=W(0),_e=0,Z=null,ve=null;y(i,e=>{if(!(e&&(e.state===`running`||e.state===`starting`))){Z&&=(clearInterval(Z),null),ve=null,X.value=e?.uptime??0;return}let t=e.uptime??0;e.id!==ve&&(Z&&=(clearInterval(Z),null),ve=e.id,_e=e.startedAt?new Date(e.startedAt).getTime():Date.now()-t,X.value=Date.now()-_e,Z=setInterval(()=>{X.value=Date.now()-_e},1e3))},{immediate:!0});let ye=W(!0),be=W(null),Q=W(!1),$=W(`all`),xe=W(!1);function Se(){xe.value=!xe.value}A(()=>{le(),i.value&&g(),window.addEventListener(`keydown`,O)}),q(()=>{_(),window.removeEventListener(`keydown`,O),Z&&clearInterval(Z)});function Ce(e){let t=Math.floor(e/3600),n=Math.floor(e%3600/60),r=Math.floor(e%60);return`${t.toString().padStart(2,`0`)}:${n.toString().padStart(2,`0`)}:${r.toString().padStart(2,`0`)}`}function we(e){be.value=e,Q.value=!0}function Ee(e){Q.value=!1,u.add({severity:`info`,summary:`Process`,detail:`Process ID: ${e}`,life:3e3})}return(a,o)=>(P(),v(`div`,{class:p([`service-terminal`,{"service-terminal--fullscreen":xe.value}]),"data-testid":`service-terminal`},[xe.value?(P(),c(pe,{key:0,service:e.service,processes:e.processes},null,8,[`service`,`processes`])):d(``,!0),r(`div`,ut,[r(`div`,dt,[x(H(T),{label:H(t)(`serviceTerminal.logs`),severity:ye.value?`primary`:`secondary`,text:``,size:`small`,onClick:o[0]||=e=>ye.value=!0},null,8,[`label`,`severity`]),x(H(j),{modelValue:$.value,"onUpdate:modelValue":o[1]||=e=>$.value=e,options:F.value,"option-label":`label`,"option-value":`value`,class:`service-terminal__pid-selector`},{value:R(e=>[e.value===`all`?(P(),v(`div`,ft,[o[5]||=r(`i`,{class:`pi pi-list`,style:{"margin-right":`0.5rem`}},null,-1),r(`span`,null,s(H(t)(`serviceTerminal.allProcesses`)),1),N.value>0?(P(),c(H(b),{key:0,value:`${N.value} ${H(t)(`serviceTerminal.active`)}`,severity:`secondary`,class:`pid-badge`},null,8,[`value`])):d(``,!0)])):(P(),v(`div`,pt,[F.value.find(t=>t.value===e.value)?.isActive?(P(),v(`i`,mt)):(P(),v(`i`,ht)),r(`span`,null,`PID: `+s(e.value),1)]))]),option:R(e=>[r(`div`,gt,[e.option.value===`all`?(P(),v(`i`,_t)):e.option.isActive?(P(),v(`i`,{key:1,class:`pi pi-circle-fill pid-status-icon pid-status-icon--active`,title:H(t)(`serviceTerminal.running`)},null,8,vt)):(P(),v(`i`,{key:2,class:`pi pi-circle-fill pid-status-icon pid-status-icon--stopped`,title:H(t)(`serviceTerminal.stopped`)},null,8,yt)),r(`span`,null,s(e.option.label),1),e.option.badge?(P(),c(H(b),{key:3,value:e.option.badge,severity:`secondary`,class:`pid-badge`},null,8,[`value`])):d(``,!0)])]),_:1},8,[`modelValue`,`options`])]),r(`div`,bt,[x(H(T),{icon:xe.value?`pi pi-window-minimize`:`pi pi-window-maximize`,text:``,rounded:``,size:`small`,title:xe.value?H(t)(`serviceTerminal.exitFullscreen`):H(t)(`serviceTerminal.fullscreen`),onClick:Se},null,8,[`icon`,`title`]),x(H(T),{icon:`pi pi-download`,text:``,rounded:``,size:`small`,title:H(t)(`serviceTerminal.downloadLogs`),disabled:H(f).length===0,onClick:ge},null,8,[`title`,`disabled`]),x(H(T),{icon:`pi pi-trash`,text:``,rounded:``,size:`small`,title:H(t)(`serviceTerminal.clearLogs`),disabled:H(f).length===0,onClick:I},null,8,[`title`,`disabled`])])]),r(`div`,xt,[x(Oe,{logs:M.value,loading:!1,"received-per-sec":H(S),"flushed-per-sec":H(C),"show-stats":D.value,"service-label":n.service.label||n.service.name,onLogClick:we},null,8,[`logs`,`received-per-sec`,`flushed-per-sec`,`show-stats`,`service-label`])]),te.value.length>0?(P(),v(`div`,St,[(P(!0),v(L,null,B(te.value,e=>(P(),c(H(T),{key:e.id,label:e.label||e.command,"data-shortcut-id":e.id,class:`shortcut-badge`,icon:z.value.has(e.id)?`pi pi-stop`:`pi pi-play`,size:`small`,outlined:!z.value.has(e.id),severity:z.value.has(e.id)?`danger`:void 0,onClick:t=>ne(e)},null,8,[`label`,`data-shortcut-id`,`icon`,`outlined`,`severity`,`onClick`]))),128))])):d(``,!0),r(`div`,Ct,[o[6]||=r(`span`,{class:`service-terminal__prompt`,"data-testid":`terminal-prompt`},`>`,-1),x(H(Te),{ref_key:`adHocCommandInput`,ref:U,modelValue:V.value,"onUpdate:modelValue":o[2]||=e=>V.value=e,suggestions:oe.value,class:`service-terminal__autocomplete`,"input-class":`service-terminal__input`,placeholder:H(t)(`serviceTerminal.enterCommand`),"aria-label":H(t)(`serviceTerminal.enterCommand`),disabled:!(i.value?.agentId??n.service.agentId),"data-testid":`terminal-command-input`,onComplete:ce,onKeydown:he},null,8,[`modelValue`,`suggestions`,`placeholder`,`aria-label`,`disabled`]),x(H(T),{icon:ie.value?`pi pi-stop`:`pi pi-play`,severity:ie.value?`danger`:void 0,size:`small`,"data-testid":`terminal-run-btn`,disabled:!(i.value?.agentId??n.service.agentId)||!V.value.trim()&&!ie.value,onClick:o[3]||=e=>ie.value?fe():J()},null,8,[`icon`,`severity`,`disabled`])]),r(`div`,wt,[i.value?(P(),c(H(b),{key:0,icon:`pi pi-server`,value:i.value.agentId.slice(0,8),severity:`secondary`,class:`service-terminal__pill`},null,8,[`value`])):d(``,!0),e.service.cwd?(P(),c(H(b),{key:1,icon:`pi pi-folder`,value:e.service.cwd,severity:`secondary`,class:`service-terminal__pill`},null,8,[`value`])):d(``,!0),i.value&&(i.value.state===`running`||i.value.state===`starting`)?(P(),c(H(b),{key:2,icon:`pi pi-clock`,value:Ce(X.value/1e3),severity:`secondary`,class:`service-terminal__pill`},null,8,[`value`])):d(``,!0)]),x(it,{visible:Q.value,"onUpdate:visible":o[4]||=e=>Q.value=e,log:be.value,onViewProcess:Ee},null,8,[`visible`,`log`])],2))}}),[[`__scopeId`,`data-v-8ce2178d`]]),Ot=5,kt=D;function At(e){return e+Math.random()*e*.3}function jt(e,t){let n=W(null),r=W(!1),i=W(!1),a=null,o=0,s=null;async function c(){if(!r.value){i.value=!0;try{n.value=await l.process.metrics.query({agentId:e.value,processId:t.value})}catch(e){console.error(`Failed to fetch initial metrics:`,E(e))}finally{i.value=!1}u()}}function u(){r.value=!0,a=l.process.onMetrics.subscribe({agentId:e.value,processId:t.value},{onData(e){o=0,S(`connected`),n.value=e},onError(e){console.error(`Metrics stream error:`,e),r.value=!1,a=null,d()}})}function d(){if(o>=Ot){console.warn(`Metrics stream: max retries (${Ot}) reached, giving up`),S(`disconnected`);return}S(`reconnecting`);let e=At(kt*2**o);o++,s=setTimeout(()=>{s=null,u()},e)}function f(){s&&=(clearTimeout(s),null),a&&=(a.unsubscribe(),null),r.value=!1,o=0}return y([e,t],([e,t],[n,i])=>{(e!==n||t!==i)&&r.value&&(f(),c())}),q(()=>{f()}),{metrics:n,isStreaming:r,isLoading:i,start:c,stop:f}}var Mt={class:`service-metrics`,"data-testid":`service-metrics`},Nt={key:1,class:`service-metrics__skeleton`},Pt={class:`metric-skeleton`},Ft={class:`metric-skeleton`},It={key:2,class:`service-metrics__no-data`},Lt={key:1,class:`service-metrics__no-process`},Rt=G(a({__name:`ServiceMetrics`,props:{service:{},processes:{}},setup(e){let t=e,n=h(()=>t.processes.find(e=>e.state===`running`||e.state===`starting`)??t.processes[0]??null),i=h(()=>n.value?.agentId??``),a=h(()=>n.value?.id??``),{t:o}=Y(),{metrics:l,isLoading:u,start:d,stop:f}=jt(i,a);return A(()=>{n.value&&d()}),q(()=>{f()}),(e,t)=>(P(),v(`div`,Mt,[n.value?(P(),v(L,{key:0},[H(l)?(P(),c(De,{key:0,cpu:H(l).cpu,memory:H(l).memory},null,8,[`cpu`,`memory`])):H(u)?(P(),v(`div`,Nt,[r(`div`,Pt,[x(H(Ee),{width:`4rem`,height:`0.75rem`,class:`mb-2`}),x(H(Ee),{width:`3rem`,height:`1.75rem`,class:`mb-3`}),x(H(Ee),{width:`100%`,height:`6px`,"border-radius":`4px`})]),r(`div`,Ft,[x(H(Ee),{width:`4rem`,height:`0.75rem`,class:`mb-2`}),x(H(Ee),{width:`3rem`,height:`1.75rem`,class:`mb-3`}),x(H(Ee),{width:`6rem`,height:`0.65rem`})])])):(P(),v(`div`,It,s(H(o)(`serviceMetrics.noData`)),1))],64)):(P(),v(`div`,Lt,[t[0]||=r(`i`,{class:`pi pi-info-circle`},null,-1),r(`span`,null,s(H(o)(`serviceMetrics.notRunning`)),1)]))]))}}),[[`__scopeId`,`data-v-94f5993b`]]),zt=`runeya:debug`;function Bt(){if(typeof window>`u`)return null;let e=new URLSearchParams(window.location.search).get(`debug`);return e===`1`||e===`true`?!0:e===`0`||e===`false`?!1:null}var Vt=Bt();if(Vt!==null)try{localStorage.setItem(zt,String(Vt))}catch{}function Ht(){try{return localStorage.getItem(zt)===`true`}catch{return!1}}var Ut=W(Ht());function Wt(){function e(){Ut.value=!Ut.value;try{localStorage.setItem(zt,String(Ut.value))}catch{}}return{isDebug:Ut,toggle:e}}var Gt={class:`config-general`},Kt={class:`config-card`},qt={class:`config-card__header`},Jt={class:`config-card`},Yt={class:`config-card__header`},Xt={class:`config-card__hint`},Zt={class:`config-card`},Qt={class:`config-card`},$t={class:`config-card__header`},en={class:`config-card__hint`},tn={class:`config-card`},nn={class:`config-card__header`},rn={class:`config-card__hint`},an={class:`config-card`},on={class:`config-card__header`},sn={class:`config-card__hint`},cn={class:`config-card`},ln={class:`config-card__header`},un={class:`config-card__hint`},dn={class:`config-card`},fn={class:`config-card__header`},pn={class:`config-card__hint`},mn={class:`config-card`},hn={class:`config-card__header`},gn={class:`config-card__hint`},_n={class:`config-card__hint`},vn={class:`config-card`},yn={class:`config-card__header`},bn={class:`config-card__hint`},xn={class:`config-meta`},Sn={class:`config-card config-card--inline`},Cn={class:`config-card__header`},wn={class:`config-card config-card--inline`},Tn={class:`config-card__header`},En=150,Dn=G(a({__name:`ServiceConfigGeneral`,props:{service:{}},emits:[`save`],setup(e,{emit:n}){let{t:i}=Y(),a=U(),c=C(),l=W([]);function u(e){let t=e.query.trim().toLowerCase(),n=new Set(E.value.groups);l.value=S.value.filter(e=>!n.has(e)&&(!t||e.toLowerCase().includes(t)))}function d(e,t){let n=t.trim();if(n){if(e===`ports`){let e=Number(n);if(!Number.isInteger(e)||e<1||e>65535||E.value.ports.includes(String(e)))return;E.value.ports=[...E.value.ports,String(e)]}else{if(E.value.groups.includes(n))return;E.value.groups=[...E.value.groups,n]}N()}}function f(e){let t=e.target;d(`groups`,t.value),t.value=``,l.value=[]}function p(e,t){let n=e.target;!n||typeof n.value!=`string`||!n.value.trim()||setTimeout(()=>{d(t,n.value),n.value=``},En)}let g=e,_=n,b=h(()=>c.projects.find(e=>e.serviceIds.includes(g.service.id)&&(e.orgId??null)===(g.service.orgId??null))??null),S=h(()=>{let e=b.value;if(!e)return[];let t=new Set;for(let n of e.serviceIds)for(let e of a.getById(n)?.groups??[])t.add(e);return[...t].sort((e,t)=>e.localeCompare(t))});function w(e){return Object.entries(e??{}).map(([e,t])=>({key:e,value:t}))}let E=W({name:g.service.name,cwd:g.service.cwd??``,ports:(g.service.ports??[]).map(String),groups:[...g.service.groups??[]],description:g.service.description??``,docsPath:g.service.docsPath??``,url:g.service.url??``,openapiUrl:g.service.openapiUrl??``,gitRemote:g.service.git?.remote??``,gitHome:g.service.git?.home??``,autoRestart:g.service.autoRestart,clearLogsOnStart:g.service.clearLogsOnStart??!1}),D=W(w(g.service.meta));y(()=>g.service,e=>{E.value={name:e.name,cwd:e.cwd??``,ports:(e.ports??[]).map(String),groups:[...e.groups??[]],description:e.description??``,docsPath:e.docsPath??``,url:e.url??``,openapiUrl:e.openapiUrl??``,gitRemote:e.git?.remote??``,gitHome:e.git?.home??``,autoRestart:e.autoRestart,clearLogsOnStart:e.clearLogsOnStart??!1},D.value=w(e.meta)});function O(){D.value=[...D.value,{key:``,value:``}]}function k(e){D.value=D.value.filter((t,n)=>n!==e)}function A(e,t,n){D.value=D.value.map((r,i)=>i===e?{...r,[t]:n}:r)}function j(){let e={};for(let{key:t,value:n}of D.value){let r=t.trim();r&&(e[r]=n)}return{name:E.value.name,cwd:E.value.cwd||null,ports:E.value.ports.map(Number).filter(e=>e>0&&e<=65535),groups:E.value.groups,description:E.value.description,docsPath:E.value.docsPath??``,url:E.value.url,openapiUrl:E.value.openapiUrl,git:E.value.gitRemote||E.value.gitHome?{remote:E.value.gitRemote||void 0,home:E.value.gitHome||void 0}:null,autoRestart:E.value.autoRestart,clearLogsOnStart:E.value.clearLogsOnStart,meta:Object.keys(e).length>0?e:null}}let M=null;function N(){M&&clearTimeout(M),M=setTimeout(()=>{_(`save`,j()),M=null},150)}return(e,n)=>(P(),v(`div`,Gt,[r(`div`,Kt,[r(`div`,qt,[n[14]||=r(`i`,{class:`pi pi-tag`},null,-1),r(`span`,null,s(H(i)(`serviceConfigGeneral.name`)),1)]),x(H(t),{modelValue:E.value.name,"onUpdate:modelValue":n[0]||=e=>E.value.name=e,class:`config-card__input`,onBlur:N,onKeydown:m(z(N,[`prevent`]),[`enter`])},null,8,[`modelValue`,`onKeydown`])]),r(`div`,Jt,[r(`div`,Yt,[n[15]||=r(`i`,{class:`pi pi-folder`},null,-1),r(`span`,null,s(H(i)(`serviceConfigGeneral.workingDirectory`)),1)]),x(H(t),{modelValue:E.value.cwd,"onUpdate:modelValue":n[1]||=e=>E.value.cwd=e,class:`config-card__input`,placeholder:`.`,onBlur:N,onKeydown:m(z(N,[`prevent`]),[`enter`])},null,8,[`modelValue`,`onKeydown`]),r(`small`,Xt,s(H(i)(`serviceConfigGeneral.cwdHint`)),1)]),r(`div`,Zt,[n[16]||=r(`div`,{class:`config-card__header`},[r(`i`,{class:`pi pi-file-edit`}),r(`span`,null,`Dossier de documentation (wiki)`)],-1),x(H(t),{modelValue:E.value.docsPath,"onUpdate:modelValue":n[2]||=e=>E.value.docsPath=e,class:`config-card__input`,placeholder:`(défaut : même que cwd)`,onBlur:N,onKeydown:m(z(N,[`prevent`]),[`enter`])},null,8,[`modelValue`,`onKeydown`]),n[17]||=r(`small`,{class:`config-card__hint`},[o(` Chemin relatif au cwd du service (ex. `),r(`code`,null,`docs`),o(`) ou absolu. Si vide, utilise le cwd. `)],-1)]),r(`div`,Qt,[r(`div`,$t,[n[18]||=r(`i`,{class:`pi pi-globe`},null,-1),r(`span`,null,s(H(i)(`serviceConfigGeneral.ports`)),1)]),x(H(Te),{modelValue:E.value.ports,"onUpdate:modelValue":n[3]||=e=>E.value.ports=e,multiple:``,typeahead:!1,class:`config-card__input`,placeholder:H(i)(`serviceConfigGeneral.portsPlaceholder`),onChange:N,onBlur:n[4]||=e=>p(e,`ports`)},null,8,[`modelValue`,`placeholder`]),r(`small`,en,s(H(i)(`serviceConfigGeneral.portsHint`)),1)]),r(`div`,tn,[r(`div`,nn,[n[19]||=r(`i`,{class:`pi pi-th-large`},null,-1),r(`span`,null,s(H(i)(`serviceConfigGeneral.groups`)),1)]),x(H(Te),{modelValue:E.value.groups,"onUpdate:modelValue":n[5]||=e=>E.value.groups=e,multiple:``,suggestions:l.value,"complete-on-focus":!0,class:`config-card__input`,placeholder:H(i)(`serviceConfigGeneral.groupsPlaceholder`),onComplete:u,onChange:N,onKeydown:m(f,[`enter`]),onBlur:n[6]||=e=>p(e,`groups`)},null,8,[`modelValue`,`suggestions`,`placeholder`]),r(`small`,rn,s(H(i)(`serviceConfigGeneral.groupsHint`)),1)]),r(`div`,an,[r(`div`,on,[n[20]||=r(`i`,{class:`pi pi-info-circle`},null,-1),r(`span`,null,s(H(i)(`serviceConfigGeneral.description`)),1)]),x(H(V),{modelValue:E.value.description,"onUpdate:modelValue":n[7]||=e=>E.value.description=e,class:`config-card__input`,rows:2,onBlur:N},null,8,[`modelValue`]),r(`small`,sn,s(H(i)(`serviceConfigGeneral.descriptionHint`)),1)]),r(`div`,cn,[r(`div`,ln,[n[21]||=r(`i`,{class:`pi pi-external-link`},null,-1),r(`span`,null,s(H(i)(`serviceConfigGeneral.url`)),1)]),x(H(t),{modelValue:E.value.url,"onUpdate:modelValue":n[8]||=e=>E.value.url=e,class:`config-card__input`,placeholder:`https://...`,onBlur:N,onKeydown:m(z(N,[`prevent`]),[`enter`])},null,8,[`modelValue`,`onKeydown`]),r(`small`,un,s(H(i)(`serviceConfigGeneral.urlHint`)),1)]),r(`div`,dn,[r(`div`,fn,[n[22]||=r(`i`,{class:`pi pi-book`},null,-1),r(`span`,null,s(H(i)(`serviceConfigGeneral.openapiUrl`)),1)]),x(H(t),{modelValue:E.value.openapiUrl,"onUpdate:modelValue":n[9]||=e=>E.value.openapiUrl=e,class:`config-card__input`,placeholder:`https://.../swagger.json`,onBlur:N,onKeydown:m(z(N,[`prevent`]),[`enter`])},null,8,[`modelValue`,`onKeydown`]),r(`small`,pn,s(H(i)(`serviceConfigGeneral.openapiUrlHint`)),1)]),r(`div`,mn,[r(`div`,hn,[n[23]||=r(`i`,{class:`pi pi-github`},null,-1),r(`span`,null,s(H(i)(`serviceConfigGeneral.git`)),1)]),x(H(t),{modelValue:E.value.gitRemote,"onUpdate:modelValue":n[10]||=e=>E.value.gitRemote=e,class:`config-card__input`,placeholder:`git@github.com:org/repo.git`,onBlur:N,onKeydown:m(z(N,[`prevent`]),[`enter`])},null,8,[`modelValue`,`onKeydown`]),r(`small`,gn,s(H(i)(`serviceConfigGeneral.gitRemoteHint`)),1),x(H(t),{modelValue:E.value.gitHome,"onUpdate:modelValue":n[11]||=e=>E.value.gitHome=e,class:`config-card__input`,style:{"margin-top":`0.5rem`},placeholder:`https://github.com/org/repo`,onBlur:N,onKeydown:m(z(N,[`prevent`]),[`enter`])},null,8,[`modelValue`,`onKeydown`]),r(`small`,_n,s(H(i)(`serviceConfigGeneral.gitHomeHint`)),1)]),r(`div`,vn,[r(`div`,yn,[n[24]||=r(`i`,{class:`pi pi-hashtag`},null,-1),r(`span`,null,s(H(i)(`serviceConfigGeneral.meta`)),1)]),r(`small`,bn,s(H(i)(`serviceConfigGeneral.metaHint`)),1),r(`div`,xn,[(P(!0),v(L,null,B(D.value,(e,n)=>(P(),v(`div`,{key:n,class:`config-meta__row`},[x(H(t),{"model-value":e.key,placeholder:H(i)(`serviceConfigGeneral.metaKeyPlaceholder`),class:`config-meta__input`,"onUpdate:modelValue":e=>A(n,`key`,e),onBlur:N,onKeydown:m(z(N,[`prevent`]),[`enter`])},null,8,[`model-value`,`placeholder`,`onUpdate:modelValue`,`onKeydown`]),x(H(t),{"model-value":e.value,placeholder:H(i)(`serviceConfigGeneral.metaValuePlaceholder`),class:`config-meta__input config-meta__input--wide`,"onUpdate:modelValue":e=>A(n,`value`,e),onBlur:N,onKeydown:m(z(N,[`prevent`]),[`enter`])},null,8,[`model-value`,`placeholder`,`onUpdate:modelValue`,`onKeydown`]),x(H(T),{icon:`pi pi-trash`,severity:`danger`,text:``,rounded:``,size:`small`,onClick:()=>{k(n),N()}},null,8,[`onClick`])]))),128)),x(H(T),{label:H(i)(`serviceConfigGeneral.addEntry`),icon:`pi pi-plus`,severity:`secondary`,outlined:``,size:`small`,class:`config-meta__add`,onClick:O},null,8,[`label`])])]),r(`div`,Sn,[r(`div`,Cn,[n[25]||=r(`i`,{class:`pi pi-refresh`},null,-1),r(`span`,null,s(H(i)(`serviceConfigGeneral.autoRestart`)),1)]),x(H(Z),{modelValue:E.value.autoRestart,"onUpdate:modelValue":n[12]||=e=>E.value.autoRestart=e,onChange:N},null,8,[`modelValue`])]),r(`div`,wn,[r(`div`,Tn,[n[26]||=r(`i`,{class:`pi pi-trash`},null,-1),r(`span`,null,s(H(i)(`serviceConfigGeneral.clearLogs`)),1)]),x(H(Z),{modelValue:E.value.clearLogsOnStart,"onUpdate:modelValue":n[13]||=e=>E.value.clearLogsOnStart=e,onChange:N},null,8,[`modelValue`])])]))}}),[[`__scopeId`,`data-v-6fef6778`]]),On={class:`docker-config`},kn={class:`docker-config__section`},An={for:`docker-mode-image`,class:`docker-config__section-title`},jn={class:`docker-config__mode-toggle`},Mn={class:`docker-config__mode-option`},Nn={class:`docker-config__mode-option`},Pn={key:0,class:`docker-config__section`},Fn={for:`docker-image`,class:`docker-config__label`},In={class:`docker-config__section`},Ln={class:`docker-config__section`},Rn={for:`docker-build-context`,class:`docker-config__label`},zn={class:`docker-config__section`},Bn={for:`docker-add-build-arg`,class:`docker-config__label`},Vn={class:`docker-config__kv-list`},Hn={class:`docker-config__section`},Un={for:`docker-target-stage`,class:`docker-config__label`},Wn={class:`docker-config__section`},Gn={for:`docker-user`,class:`docker-config__section-title`},Kn={class:`docker-config__section`},qn={for:`docker-user`,class:`docker-config__label`},Jn={class:`docker-config__section`},Yn={for:`docker-network-mode`,class:`docker-config__label`},Xn={key:2,class:`docker-config__section`},Zn={for:`docker-add-port`,class:`docker-config__label`},Qn={class:`docker-config__list`},$n={class:`docker-config__section`},er={for:`docker-add-volume`,class:`docker-config__label`},tr={class:`docker-config__checkbox-row`},nr={for:`mountRootpath`,class:`docker-config__checkbox-label`},rr={class:`docker-config__list`},ir={class:`docker-config__section`},ar={class:`docker-config__checkbox-row`},or={for:`useNativeCommand`,class:`docker-config__checkbox-label`},sr={key:0,class:`docker-config__shell-row`},cr={for:`docker-native-shell`,class:`docker-config__label`},lr={class:`docker-config__hint`},ur={key:1,class:`docker-config__mode-toggle docker-config__mode-toggle--indented`},dr={class:`docker-config__mode-option`},fr={class:`docker-config__mode-option`},pr={class:`docker-config__section`},mr={for:`docker-entrypoint`,class:`docker-config__label`},hr={class:`docker-config__section`},gr={for:`docker-command`,class:`docker-config__label`},_r={class:`docker-config__section`},vr={for:`docker-add-bootstrap`,class:`docker-config__section-title`},yr={class:`docker-config__hint-inline`},br={class:`docker-config__bootstrap-row`},xr={class:`docker-config__bootstrap-field`},Sr=[`for`],Cr={class:`docker-config__bootstrap-field`},wr=[`for`],Tr={class:`docker-config__bootstrap-field docker-config__bootstrap-field--wide`},Er=[`for`],Dr={class:`docker-config__bootstrap-field`},Or=[`for`],kr={class:`docker-config__bootstrap-actions`},Ar={class:`docker-config__section`},jr=G(a({__name:`ServiceConfigDocker`,props:{service:{}},emits:[`save`],setup(n,{emit:i}){let{t:a}=Y(),c=n,l=i,u=c.service.dockerConfig??{},f=W(u.dockerfile?`build`:`image`),p=W(u.image??``),h=W(u.dockerfile??``),g=W(u.buildContext??``),y=W(Object.entries(u.buildArgs??{}).map(([e,t])=>({key:e,value:t}))),b=W(u.targetStage??``),S=W(u.networkMode??`host`),C=W([...u.ports??[]]),E=W([...u.volumes??[]]),D=W(u.mountRootpath??!1),O=W(u.entrypoint??``),k=W(u.command??``),A=W(u.user??``),M=W(u.useNativeCommand??!1),N=W(u.nativeCommandMode??`isolated`),ee=W(u.nativeShell??`sh`),F=[{label:`sh (POSIX)`,value:`sh`},{label:`bash`,value:`bash`},{label:`zsh`,value:`zsh`},{label:`ash (Alpine)`,value:`ash`}],I=W([...u.bootstrapCommands??[]]),te=W(!1),ne=[{label:`Host (--network host)`,value:`host`},{label:`Bridge`,value:`bridge`}];function V(){y.value=[...y.value,{key:``,value:``}]}function re(e){y.value=y.value.filter((t,n)=>n!==e)}function ie(e,t,n){y.value=y.value.map((r,i)=>i===e?{...r,[t]:n}:r)}function U(){C.value=[...C.value,``]}function G(e){C.value=C.value.filter((t,n)=>n!==e)}function K(e,t){C.value=C.value.map((n,r)=>r===e?t:n)}function ae(){E.value=[...E.value,``]}function oe(e){E.value=E.value.filter((t,n)=>n!==e)}function se(e,t){E.value=E.value.map((n,r)=>r===e?t:n)}function q(){I.value=[...I.value,{id:me(),label:`Bootstrap`,entrypoint:`/bin/sh`,command:`-c ""`,user:void 0}]}function ce(e){I.value=I.value.filter((t,n)=>n!==e)}function le(e,t,n){I.value=I.value.map((r,i)=>i===e?{...r,[t]:n===``?void 0:n}:r)}function ue(e,t){let n=[...I.value],r=e+t;r<0||r>=n.length||([n[e],n[r]]=[n[r],n[e]],I.value=n)}let fe=null;function J(){fe&&clearTimeout(fe),fe=setTimeout(()=>{let e={};for(let{key:t,value:n}of y.value)t.trim()&&(e[t.trim()]=n);l(`save`,{image:f.value===`image`&&p.value||void 0,dockerfile:f.value===`build`&&h.value||void 0,buildContext:g.value||void 0,buildArgs:e,targetStage:b.value||void 0,networkMode:S.value,ports:C.value.filter(Boolean),volumes:E.value.filter(Boolean),mountRootpath:D.value,entrypoint:O.value||void 0,command:k.value||void 0,user:A.value||void 0,useNativeCommand:M.value,nativeCommandMode:N.value,nativeShell:ee.value,bootstrapCommands:I.value}),fe=null},150)}function pe(e){ce(e),J()}function he(e,t){ue(e,t),J()}function ge(e){re(e),J()}function X(e){G(e),J()}function Z(e){oe(e),J()}return(n,i)=>(P(),v(`div`,On,[r(`div`,kn,[r(`label`,An,s(H(a)(`serviceConfigDocker.imageSource`)),1),r(`div`,jn,[r(`label`,Mn,[e(r(`input`,{id:`docker-mode-image`,"onUpdate:modelValue":i[0]||=e=>f.value=e,type:`radio`,value:`image`,class:`docker-config__radio`,onChange:J},null,544),[[de,f.value]]),o(` `+s(H(a)(`serviceConfigDocker.pullImage`)),1)]),r(`label`,Nn,[e(r(`input`,{"onUpdate:modelValue":i[1]||=e=>f.value=e,type:`radio`,value:`build`,class:`docker-config__radio`,onChange:J},null,544),[[de,f.value]]),o(` `+s(H(a)(`serviceConfigDocker.buildDockerfile`)),1)])])]),f.value===`image`?(P(),v(`div`,Pn,[r(`label`,Fn,s(H(a)(`serviceConfigDocker.image`)),1),x(H(t),{id:`docker-image`,modelValue:p.value,"onUpdate:modelValue":i[2]||=e=>p.value=e,placeholder:H(a)(`serviceConfigDocker.imagePlaceholder`),class:`docker-config__input`,onBlur:J,onKeydown:m(z(J,[`prevent`]),[`enter`])},null,8,[`modelValue`,`placeholder`,`onKeydown`])])):d(``,!0),f.value===`build`?(P(),v(L,{key:1},[r(`div`,In,[i[18]||=r(`label`,{for:`docker-dockerfile-btn`,class:`docker-config__label`},`Dockerfile`,-1),x(H(T),{id:`docker-dockerfile-btn`,label:H(a)(`serviceConfigDocker.editDockerfile`),icon:`pi pi-file-edit`,severity:`secondary`,outlined:``,size:`small`,onClick:i[3]||=e=>te.value=!0},null,8,[`label`]),x(H(w),{visible:te.value,"onUpdate:visible":i[6]||=e=>te.value=e,header:H(a)(`serviceConfigDocker.editDockerfile`),modal:``,style:{width:`800px`}},{footer:R(()=>[x(H(T),{label:H(a)(`serviceConfigDocker.closeDockerfile`),icon:`pi pi-times`,onClick:i[5]||=()=>{te.value=!1,J()}},null,8,[`label`])]),default:R(()=>[x(_,{modelValue:h.value,"onUpdate:modelValue":i[4]||=e=>h.value=e,language:`dockerfile`,style:{height:`400px`}},null,8,[`modelValue`])]),_:1},8,[`visible`,`header`])]),r(`div`,Ln,[r(`label`,Rn,s(H(a)(`serviceConfigDocker.buildContext`)),1),x(H(t),{id:`docker-build-context`,modelValue:g.value,"onUpdate:modelValue":i[7]||=e=>g.value=e,placeholder:`.`,class:`docker-config__input`,onBlur:J,onKeydown:m(z(J,[`prevent`]),[`enter`])},null,8,[`modelValue`,`onKeydown`])]),r(`div`,zn,[r(`label`,Bn,s(H(a)(`serviceConfigDocker.buildArgs`)),1),r(`div`,Vn,[(P(!0),v(L,null,B(y.value,(e,n)=>(P(),v(`div`,{key:n,class:`docker-config__kv-row`},[x(H(t),{"model-value":e.key,placeholder:H(a)(`serviceConfigDocker.argNamePlaceholder`),class:`docker-config__kv-input`,"onUpdate:modelValue":e=>ie(n,`key`,e),onBlur:J,onKeydown:m(z(J,[`prevent`]),[`enter`])},null,8,[`model-value`,`placeholder`,`onUpdate:modelValue`,`onKeydown`]),x(H(t),{"model-value":e.value,placeholder:H(a)(`serviceConfigDocker.argValuePlaceholder`),class:`docker-config__kv-input`,"onUpdate:modelValue":e=>ie(n,`value`,e),onBlur:J,onKeydown:m(z(J,[`prevent`]),[`enter`])},null,8,[`model-value`,`placeholder`,`onUpdate:modelValue`,`onKeydown`]),x(H(T),{icon:`pi pi-trash`,severity:`danger`,text:``,rounded:``,size:`small`,onClick:e=>ge(n)},null,8,[`onClick`])]))),128)),x(H(T),{id:`docker-add-build-arg`,label:H(a)(`serviceConfigDocker.addBuildArg`),icon:`pi pi-plus`,severity:`secondary`,outlined:``,size:`small`,onClick:V},null,8,[`label`])])]),r(`div`,Hn,[r(`label`,Un,s(H(a)(`serviceConfigDocker.targetStage`)),1),x(H(t),{id:`docker-target-stage`,modelValue:b.value,"onUpdate:modelValue":i[8]||=e=>b.value=e,placeholder:H(a)(`serviceConfigDocker.targetStagePlaceholder`),class:`docker-config__input`,onBlur:J,onKeydown:m(z(J,[`prevent`]),[`enter`])},null,8,[`modelValue`,`placeholder`,`onKeydown`])])],64)):d(``,!0),x(H(ke)),r(`div`,Wn,[r(`label`,Gn,s(H(a)(`serviceConfigDocker.runtimeConfig`)),1)]),r(`div`,Kn,[r(`label`,qn,s(H(a)(`serviceConfigDocker.userGroup`)),1),x(H(t),{id:`docker-user`,modelValue:A.value,"onUpdate:modelValue":i[9]||=e=>A.value=e,placeholder:H(a)(`serviceConfigDocker.userGroupHint`),class:`docker-config__input`,onBlur:J,onKeydown:m(z(J,[`prevent`]),[`enter`])},null,8,[`modelValue`,`placeholder`,`onKeydown`])]),r(`div`,Jn,[r(`label`,Yn,s(H(a)(`serviceConfigDocker.networkMode`)),1),x(H(j),{"input-id":`docker-network-mode`,modelValue:S.value,"onUpdate:modelValue":i[10]||=e=>S.value=e,options:ne,"option-label":`label`,"option-value":`value`,class:`docker-config__select`,onChange:J},null,8,[`modelValue`])]),S.value===`bridge`?(P(),v(`div`,Xn,[r(`label`,Zn,s(H(a)(`serviceConfigDocker.portMappings`)),1),r(`div`,Qn,[(P(!0),v(L,null,B(C.value,(e,n)=>(P(),v(`div`,{key:n,class:`docker-config__list-row`},[x(H(t),{"model-value":e,placeholder:H(a)(`serviceConfigDocker.portPlaceholder`),class:`docker-config__input`,"onUpdate:modelValue":e=>K(n,e),onBlur:J,onKeydown:m(z(J,[`prevent`]),[`enter`])},null,8,[`model-value`,`placeholder`,`onUpdate:modelValue`,`onKeydown`]),x(H(T),{icon:`pi pi-trash`,severity:`danger`,text:``,rounded:``,size:`small`,onClick:e=>X(n)},null,8,[`onClick`])]))),128)),x(H(T),{id:`docker-add-port`,label:H(a)(`serviceConfigDocker.addPort`),icon:`pi pi-plus`,severity:`secondary`,outlined:``,size:`small`,onClick:U},null,8,[`label`])])])):d(``,!0),r(`div`,$n,[r(`label`,er,s(H(a)(`serviceConfigDocker.volumes`)),1),r(`div`,tr,[x(H(_e),{modelValue:D.value,"onUpdate:modelValue":i[11]||=e=>D.value=e,binary:!0,"input-id":`mountRootpath`,onChange:J},null,8,[`modelValue`]),r(`label`,nr,s(H(a)(`serviceConfigDocker.autoMount`)),1)]),r(`div`,rr,[(P(!0),v(L,null,B(E.value,(e,n)=>(P(),v(`div`,{key:n,class:`docker-config__list-row`},[x(H(t),{"model-value":e,placeholder:H(a)(`serviceConfigDocker.volumePlaceholder`),class:`docker-config__input`,"onUpdate:modelValue":e=>se(n,e),onBlur:J,onKeydown:m(z(J,[`prevent`]),[`enter`])},null,8,[`model-value`,`placeholder`,`onUpdate:modelValue`,`onKeydown`]),x(H(T),{icon:`pi pi-trash`,severity:`danger`,text:``,rounded:``,size:`small`,onClick:e=>Z(n)},null,8,[`onClick`])]))),128)),x(H(T),{id:`docker-add-volume`,label:H(a)(`serviceConfigDocker.addVolume`),icon:`pi pi-plus`,severity:`secondary`,outlined:``,size:`small`,onClick:ae},null,8,[`label`])])]),x(H(ke)),r(`div`,ir,[r(`div`,ar,[x(H(_e),{modelValue:M.value,"onUpdate:modelValue":i[12]||=e=>M.value=e,binary:!0,"input-id":`useNativeCommand`,onChange:J},null,8,[`modelValue`]),r(`label`,or,s(H(a)(`serviceConfigDocker.runNative`)),1)]),i[21]||=r(`span`,{class:`docker-config__hint`},` When enabled, the service command is executed directly inside the container (ignores CMD override below). `,-1),M.value?(P(),v(`div`,sr,[r(`label`,cr,s(H(a)(`serviceConfigDocker.shell`)),1),x(H(j),{"input-id":`docker-native-shell`,modelValue:ee.value,"onUpdate:modelValue":i[13]||=e=>ee.value=e,options:F,"option-label":`label`,"option-value":`value`,class:`docker-config__select docker-config__select--small`,editable:``,placeholder:H(a)(`serviceConfigDocker.shellPlaceholder`),onChange:J},null,8,[`modelValue`,`placeholder`]),r(`span`,lr,[o(s(H(a)(`serviceConfigDocker.shellHint`))+` (`,1),i[19]||=r(`code`,null,`shell -c '...'`,-1),i[20]||=o(`)`,-1)])])):d(``,!0),M.value?(P(),v(`div`,ur,[r(`label`,dr,[e(r(`input`,{"onUpdate:modelValue":i[14]||=e=>N.value=e,type:`radio`,value:`isolated`,class:`docker-config__radio`,onChange:J},null,544),[[de,N.value]]),o(` `+s(H(a)(`serviceConfigDocker.isolated`)),1)]),r(`label`,fr,[e(r(`input`,{"onUpdate:modelValue":i[15]||=e=>N.value=e,type:`radio`,value:`shared`,class:`docker-config__radio`,onChange:J},null,544),[[de,N.value]]),o(` `+s(H(a)(`serviceConfigDocker.shared`)),1)])])):d(``,!0)]),M.value?d(``,!0):(P(),v(L,{key:3},[i[22]||=r(`div`,{class:`docker-config__section`},[r(`label`,{for:`docker-entrypoint`,class:`docker-config__section-title`},`Override`)],-1),r(`div`,pr,[r(`label`,mr,s(H(a)(`serviceConfigDocker.entrypoint`)),1),x(H(t),{id:`docker-entrypoint`,modelValue:O.value,"onUpdate:modelValue":i[16]||=e=>O.value=e,placeholder:H(a)(`serviceConfigDocker.entrypointPlaceholder`),class:`docker-config__input`,onBlur:J,onKeydown:m(z(J,[`prevent`]),[`enter`])},null,8,[`modelValue`,`placeholder`,`onKeydown`])]),r(`div`,hr,[r(`label`,gr,s(H(a)(`serviceConfigDocker.cmdOverride`)),1),x(H(t),{id:`docker-command`,modelValue:k.value,"onUpdate:modelValue":i[17]||=e=>k.value=e,placeholder:H(a)(`serviceConfigDocker.cmdPlaceholder`),class:`docker-config__input`,onBlur:J,onKeydown:m(z(J,[`prevent`]),[`enter`])},null,8,[`modelValue`,`placeholder`,`onKeydown`])])],64)),x(H(ke)),r(`div`,_r,[r(`label`,vr,[o(s(H(a)(`serviceConfigDocker.bootstrapCommands`))+` `,1),r(`span`,yr,` — `+s(H(a)(`serviceConfigDocker.bootstrapCommandsHint`)),1)])]),(P(!0),v(L,null,B(I.value,(e,n)=>(P(),v(`div`,{key:e.id,class:`docker-config__bootstrap-card`},[r(`div`,br,[r(`div`,xr,[r(`label`,{class:`docker-config__label`,for:`docker-bootstrap-label-${n}`},`Label`,8,Sr),x(H(t),{id:`docker-bootstrap-label-${n}`,"model-value":e.label,placeholder:H(a)(`serviceConfigDocker.bootstrapLabelPlaceholder`),class:`docker-config__input`,"onUpdate:modelValue":e=>le(n,`label`,e),onBlur:J,onKeydown:m(z(J,[`prevent`]),[`enter`])},null,8,[`id`,`model-value`,`placeholder`,`onUpdate:modelValue`,`onKeydown`])]),r(`div`,Cr,[r(`label`,{class:`docker-config__label`,for:`docker-bootstrap-entrypoint-${n}`},`Entrypoint`,8,wr),x(H(t),{id:`docker-bootstrap-entrypoint-${n}`,"model-value":e.entrypoint??``,placeholder:`/bin/sh`,class:`docker-config__input`,"onUpdate:modelValue":e=>le(n,`entrypoint`,e),onBlur:J,onKeydown:m(z(J,[`prevent`]),[`enter`])},null,8,[`id`,`model-value`,`onUpdate:modelValue`,`onKeydown`])]),r(`div`,Tr,[r(`label`,{class:`docker-config__label`,for:`docker-bootstrap-command-${n}`},`Command`,8,Er),x(H(t),{id:`docker-bootstrap-command-${n}`,"model-value":e.command,placeholder:`-c "npm install"`,class:`docker-config__input`,"onUpdate:modelValue":e=>le(n,`command`,e),onBlur:J,onKeydown:m(z(J,[`prevent`]),[`enter`])},null,8,[`id`,`model-value`,`onUpdate:modelValue`,`onKeydown`])]),r(`div`,Dr,[r(`label`,{class:`docker-config__label`,for:`docker-bootstrap-user-${n}`},`User:Group`,8,Or),x(H(t),{id:`docker-bootstrap-user-${n}`,"model-value":e.user??``,placeholder:H(a)(`serviceConfigDocker.userGroupHint`),class:`docker-config__input`,"onUpdate:modelValue":e=>le(n,`user`,e),onBlur:J,onKeydown:m(z(J,[`prevent`]),[`enter`])},null,8,[`id`,`model-value`,`placeholder`,`onUpdate:modelValue`,`onKeydown`])]),r(`div`,kr,[x(H(T),{icon:`pi pi-arrow-up`,text:``,rounded:``,size:`small`,disabled:n===0,onClick:e=>he(n,-1)},null,8,[`disabled`,`onClick`]),x(H(T),{icon:`pi pi-arrow-down`,text:``,rounded:``,size:`small`,disabled:n===I.value.length-1,onClick:e=>he(n,1)},null,8,[`disabled`,`onClick`]),x(H(T),{icon:`pi pi-times`,severity:`danger`,text:``,rounded:``,size:`small`,onClick:e=>pe(n)},null,8,[`onClick`])])])]))),128)),r(`div`,Ar,[x(H(T),{id:`docker-add-bootstrap`,label:H(a)(`serviceConfigDocker.addBootstrapCommand`),icon:`pi pi-plus`,severity:`secondary`,outlined:``,size:`small`,onClick:q},null,8,[`label`])])]))}}),[[`__scopeId`,`data-v-91c13548`]]),Mr={class:`config-commands`},Nr={class:`config-commands__execution`},Pr={class:`config-card config-card--execution`},Fr={class:`config-card__header`},Ir={class:`config-card__hint`},Lr={class:`config-card config-card--execution`},Rr={class:`config-card__header`},zr={key:0,class:`runner-option`},Br={class:`runner-option`},Vr={class:`config-commands__tab-content`},Hr={key:0,class:`config-commands__empty`},Ur={class:`config-commands__row`},Wr={class:`config-commands__field`},Gr=[`for`],Kr={class:`config-commands__field config-commands__field--wide`},qr=[`for`],Jr={class:`config-commands__field`},Yr=[`for`],Xr={class:`config-commands__actions-cell`},Zr={class:`config-commands__footer`},Qr={class:`config-commands__tab-content`},$r=`__inherit__`,ei=G(a({__name:`ServiceConfigCommands`,props:{service:{}},emits:[`save`,`dockerSave`],setup(e,{emit:n}){let i=e,a=n,{t:o}=Y(),c=le(),l=null,u=W({agentId:i.service.agentId??$r,runner:i.service.runner});y(()=>i.service,e=>{u.value={agentId:e.agentId??$r,runner:e.runner}});let f=h(()=>[{label:o(`serviceConfigCommands.native`),value:`native`,icon:`pi pi-desktop`},{label:o(`serviceConfigCommands.docker`),value:`docker`,icon:`pi pi-box`}]),g=h(()=>f.value.find(e=>e.value===u.value.runner)?.icon??`pi pi-box`),_=h(()=>[{label:o(`serviceForm.agentInherit`),value:$r},...c.agents.map(e=>({label:`${e.config.name} (${e.status.connected?o(`serviceConfigCommands.online`):o(`serviceConfigCommands.offline`)})`,value:e.config.id}))]),b=W([...i.service.commands??[]]);y(()=>i.service,e=>{l||(b.value=[...e.commands??[]])});function S(){b.value=[...b.value,{id:me(),label:``,command:``,cwd:void 0,shell:!0}]}function C(e){b.value=b.value.filter((t,n)=>n!==e)}function w(e,t,n){b.value=b.value.map((r,i)=>i===e?{...r,[t]:n===``?void 0:n}:r)}function E(){l&&clearTimeout(l),l=setTimeout(()=>{a(`save`,{agentId:u.value.agentId===$r?null:u.value.agentId||null,runner:u.value.runner,commands:b.value}),l=null},150)}function D(e){a(`dockerSave`,e)}function O(e){C(e),E()}return(n,i)=>(P(),v(`div`,Mr,[r(`div`,Nr,[r(`div`,Pr,[r(`div`,Fr,[i[2]||=r(`i`,{class:`pi pi-server`},null,-1),r(`span`,null,s(H(o)(`serviceConfigCommands.agent`)),1)]),x(H(j),{modelValue:u.value.agentId,"onUpdate:modelValue":i[0]||=e=>u.value.agentId=e,options:_.value,"option-label":`label`,"option-value":`value`,class:`config-card__input`,onChange:E},null,8,[`modelValue`,`options`]),r(`small`,Ir,s(H(o)(`serviceForm.agentHintEdit`)),1)]),r(`div`,Lr,[r(`div`,Rr,[r(`i`,{class:p(g.value)},null,2),r(`span`,null,s(H(o)(`serviceConfigCommands.runner`)),1)]),x(H(j),{modelValue:u.value.runner,"onUpdate:modelValue":i[1]||=e=>u.value.runner=e,options:f.value,"option-label":`label`,"option-value":`value`,class:`config-card__input`,onChange:E},{value:R(e=>[e.value?(P(),v(`div`,zr,[r(`i`,{class:p(f.value.find(t=>t.value===e.value)?.icon)},null,2),r(`span`,null,s(f.value.find(t=>t.value===e.value)?.label),1)])):d(``,!0)]),option:R(e=>[r(`div`,Br,[r(`i`,{class:p(e.option.icon)},null,2),r(`span`,null,s(e.option.label),1)])]),_:1},8,[`modelValue`,`options`])])]),x(H(be),{value:`0`},{default:R(()=>[x(H(ve),null,{default:R(()=>[x(H(Q),{value:`0`},{default:R(()=>[i[3]||=r(`i`,{class:`pi pi-desktop tab-icon`},null,-1),r(`span`,null,s(H(o)(`serviceConfigCommands.native`)),1)]),_:1}),x(H(Q),{value:`1`},{default:R(()=>[i[4]||=r(`i`,{class:`pi pi-box tab-icon`},null,-1),r(`span`,null,s(H(o)(`serviceConfigCommands.docker`)),1)]),_:1})]),_:1}),x(H(ye),null,{default:R(()=>[x(H($),{value:`0`},{default:R(()=>[r(`div`,Vr,[b.value.length===0?(P(),v(`div`,Hr,[r(`p`,null,s(H(o)(`serviceConfigCommands.noCommands`)),1)])):d(``,!0),(P(!0),v(L,null,B(b.value,(e,n)=>(P(),v(`div`,{key:e.id,class:`config-card`},[r(`div`,Ur,[r(`div`,Wr,[r(`label`,{class:`config-commands__label`,for:`cmd-label-${n}`},s(H(o)(`serviceConfigCommands.labelPlaceholder`)),9,Gr),x(H(t),{id:`cmd-label-${n}`,"model-value":e.label,placeholder:H(o)(`serviceConfigCommands.labelPlaceholder`),class:`config-card__input`,"onUpdate:modelValue":e=>w(n,`label`,e),onBlur:E,onKeydown:m(z(E,[`prevent`]),[`enter`])},null,8,[`id`,`model-value`,`placeholder`,`onUpdate:modelValue`,`onKeydown`])]),r(`div`,Kr,[r(`label`,{class:`config-commands__label`,for:`cmd-command-${n}`},s(H(o)(`serviceConfigCommands.commandPlaceholder`)),9,qr),x(H(t),{id:`cmd-command-${n}`,"model-value":e.command,placeholder:`e.g. npm start`,class:`config-card__input`,"onUpdate:modelValue":e=>w(n,`command`,e),onBlur:E,onKeydown:m(z(E,[`prevent`]),[`enter`])},null,8,[`id`,`model-value`,`onUpdate:modelValue`,`onKeydown`])]),r(`div`,Jr,[r(`label`,{class:`config-commands__label`,for:`cmd-cwd-${n}`},`Working Dir (optional)`,8,Yr),x(H(t),{id:`cmd-cwd-${n}`,"model-value":e.cwd??``,placeholder:H(o)(`serviceConfigCommands.cwdPlaceholder`),class:`config-card__input`,"onUpdate:modelValue":e=>w(n,`cwd`,e),onBlur:E,onKeydown:m(z(E,[`prevent`]),[`enter`])},null,8,[`id`,`model-value`,`placeholder`,`onUpdate:modelValue`,`onKeydown`])]),r(`div`,Xr,[x(H(T),{icon:`pi pi-trash`,severity:`danger`,text:``,rounded:``,size:`small`,onClick:e=>O(n)},null,8,[`onClick`])])])]))),128)),r(`div`,Zr,[x(H(T),{label:H(o)(`serviceConfigCommands.addCommand`),icon:`pi pi-plus`,severity:`secondary`,outlined:``,size:`small`,onClick:S},null,8,[`label`])])])]),_:1}),x(H($),{value:`1`},{default:R(()=>[r(`div`,Qr,[x(jr,{service:e.service,onSave:D},null,8,[`service`])])]),_:1})]),_:1})]),_:1})]))}}),[[`__scopeId`,`data-v-df297a71`]]),ti={class:`config-env`,"data-testid":`config-env`},ni={key:0,class:`active-env-display`},ri={class:`active-env-label`},ii={key:1,class:`inheritance-toggle`},ai={class:`inheritance-label`},oi={class:`inherited-header`},si={class:`inherited-row-key`},ci={class:`preview-key`},li={class:`value-row`},ui=[`onClick`],di=[`onClick`],fi={key:0,class:`secret-mask`},pi={key:1,class:`preview-value`},mi={class:`config-env__header`},hi={class:`config-env__title`},gi={class:`config-env__actions`},_i={key:3,class:`variables-view`},vi={key:0},yi={key:1,class:`empty-state`},bi={class:`inherited-header`},xi={class:`passthrough-info`},Si={class:`preview-key`},Ci={key:0,class:`preview-value`},wi={key:1,class:`passthrough-undefined`},Ti={key:4,class:`empty-state`},Ei={key:5,class:`empty-state`},Di={class:`editor-container`},Oi={key:0,class:`editor-env-banner`},ki={class:`editor-env-text`},Ai={class:`editor-section`,"data-testid":`variables-editor`},ji={key:0,class:`loading-container`},Mi={key:1,class:`preview-container`},Ni={class:`preview-info`},Pi={class:`preview-key`},Fi={class:`value-row`},Ii=[`onClick`],Li=[`onClick`],Ri={key:0,class:`secret-mask`},zi={key:1,class:`preview-value`},Bi=G(a({__name:`ServiceConfigEnv`,props:{service:{},projectId:{},activeEnvironmentId:{}},setup(e){let t=e,{t:i}=Y(),a=ee(),u=re(),f=ue(),m=C(),g=J(),_=N(),S=h(()=>m.getByRef({id:t.projectId,orgId:g.activeOrgId})?.activeEnvironmentId??null),E=h(()=>f.findServiceEnvironment(t.service.id,S.value??``)),D=W(!1),k=W(!1),j=W(!1),M=W(!1),F=W(null),L=W(null),{suggestions:ne,meta:B,search:V}=we(()=>L.value??F.value),U=W(new Set);function G(e){let t=new Set(U.value);t.has(e)?t.delete(e):t.add(e),U.value=t}let K=W(null);function oe(e,t){navigator.clipboard.writeText(t),K.value=e,setTimeout(()=>{K.value===e&&(K.value=null)},1500)}let se=W({}),q=W(!1),{values:ce,agentEntry:le,urlHost:de}=Se({projectId:()=>t.projectId,environmentId:()=>S.value,agentId:()=>t.service.agentId}),pe=h(()=>{let e={...ce.value};Object.assign(e,fe(t.service.ports)),e[`service.NAME`]=t.service.name,e[`service.ID`]=t.service.id,Object.assign(e,n(t.service,de.value)),t.service.url&&(e[`service.BASE_URL`]=t.service.url);let r=me(le.value?.status?.cwd,le.value?.status?.home);return r&&(e[`service.CWD`]=r),e});function me(e,n){let r=(t.service.resolvedCwd??t.service.cwd??``).trim();return r?r.startsWith(`~/`)&&n?n+r.slice(1):r.includes(`$`)?null:r.startsWith(`/`)||/^[A-Za-z]:[\\/]/.test(r)?r:null:e??null}let X=h(()=>le.value?.config.passthroughEnv??[]),_e=h(()=>X.value.length>0);async function ve(){if(!t.service.agentId||!_e.value){se.value={};return}q.value=!0;try{se.value=await l.agent.getPassthroughEnv.query({id:t.service.agentId})}catch{se.value={}}finally{q.value=!1}}let ye=h(()=>X.value.map(e=>({name:e,value:se.value[e]??null}))),be=h(()=>!E.value||!S.value?!0:E.value.parentIds?.includes(S.value)??!0);async function Q(e){if(!(!E.value||!S.value)){M.value=!0;try{await f.update({id:E.value.id,parentIds:e?[S.value]:[]}),await Ae()}catch(e){a.add({severity:`error`,summary:i(`serviceConfigEnv.error`),detail:e.message??i(`serviceConfigEnv.failedToUpdateInheritance`),life:5e3})}finally{M.value=!1}}}let $=h(()=>{let e=m.getByRef({id:t.projectId,orgId:g.activeOrgId});return e?.activeEnvironmentId?f.getById(e.activeEnvironmentId):null});function Te(e){return!e||typeof e!=`object`?[]:Object.entries(e).map(([e,t])=>({variableId:e,key:t.key||e,slot:{value:t.value?.value??``,pre:t.value?.pre??``,post:t.value?.post??``,isSecret:t.value?.isSecret??!1}}))}let Ee=h(()=>F.value?Te(F.value.variables):[]),De=h(()=>{if(!E.value||!F.value?.sources)return Ee.value;let e=E.value.id;return Ee.value.filter(t=>F.value.sources[t.variableId]?.environmentId===e)}),Oe=h(()=>{if(!E.value||!F.value?.sources)return[];let e=E.value.id;return Ee.value.filter(t=>F.value.sources[t.variableId]?.environmentId!==e)}),ke=h(()=>{if(!F.value?.sources)return{};let e={};for(let[t,n]of Object.entries(F.value.sources))e[t]={environmentId:n.environmentId,overridden:n.overridden,...n.resolvedFrom?{resolvedFrom:n.resolvedFrom}:{},...n.overriddenBy?{overriddenBy:n.overriddenBy}:{}};return e});async function Ae(){if(E.value)try{F.value=await f.resolve(E.value.id)}catch(e){console.error(`Failed to resolve environment:`,e)}}async function je(){if(S.value)try{L.value=await f.resolve(S.value)}catch{}}async function Me(){j.value=!0;try{await Fe(),await Ae(),k.value=!0}catch(e){a.add({severity:`error`,summary:i(`serviceConfigEnv.error`),detail:e.message??i(`serviceConfigEnv.failedToLoadPreview`),life:5e3})}finally{j.value=!1}}let Ne=h(()=>F.value?Object.entries(F.value.env).map(([e,t])=>({key:e,value:Object.entries(pe.value).reduce((e,[t,n])=>e.replaceAll(`{{${t}}}`,n),t)})):[]);function Pe(e,t){return t?`***`:e.length>50?e.substring(0,47)+`...`:e}async function Fe(){if(E.value)return E.value;if(!S.value)return null;let e=$.value;return e?(await f.create({name:`${t.service.name??t.service.id} — ${e.name}`,projectId:t.projectId,scope:`service`,reference:t.service.id,activateOn:S.value,parentIds:[S.value],variables:{}}),E.value):null}let Ie=h(()=>{let e=_.getByService(t.service.id);return e.length>0?e[0]:null}),Le=h(()=>{let e=Ie.value?.state;return e===`running`||e===`errored`});async function Re(){await Fe(),D.value=!0,await Promise.all([Ae(),je()])}function ze(){if(D.value=!1,!Le.value||!Ie.value)return;let e=Ie.value.state===`running`?`restart`:`start`,n=t.service.name||t.service.id;u.require({message:i(e===`restart`?`serviceConfigEnv.restartConfirmMsg`:`serviceConfigEnv.startConfirmMsg`,{name:n}),header:i(e===`restart`?`serviceConfigEnv.restartTitle`:`serviceConfigEnv.startTitle`),icon:`pi pi-refresh`,acceptLabel:i(e===`restart`?`serviceConfigEnv.restartTitle`:`actions.start`),rejectLabel:i(`serviceConfigEnv.notNow`),accept:async()=>{try{let n=t.service.agentId;if(!n)return;e===`restart`?(await _.restart(n,t.service.id),a.add({severity:`success`,summary:i(`serviceConfigEnv.serviceRestarted`),life:3e3})):(await _.start(n,t.service.id),a.add({severity:`success`,summary:i(`serviceConfigEnv.serviceStarted`),life:3e3}))}catch(t){a.add({severity:`error`,summary:i(`serviceConfigEnv.error`),detail:t.message??i(`serviceConfigEnv.failedToAction`,{action:e}),life:5e3})}}})}return y($,async e=>{e&&await Promise.all([Ae(),je()])}),y(()=>t.service.agentId,()=>{ve()}),A(async()=>{t.projectId&&await f.fetchAll(t.projectId),await Promise.all([Ae(),je(),ve()])}),(t,n)=>(P(),v(`div`,ti,[S.value?(P(),v(`div`,ni,[r(`span`,ri,s(H(i)(`serviceConfigEnv.activeEnvironment`)),1),x(xe,{"environment-id":S.value},null,8,[`environment-id`])])):d(``,!0),E.value&&$.value?(P(),v(`div`,ii,[x(H(Z),{"model-value":be.value,disabled:M.value,"onUpdate:modelValue":Q},null,8,[`model-value`,`disabled`]),r(`span`,ai,s(be.value?H(i)(`serviceConfigEnv.inheritsFrom`,{name:$.value.name}):H(i)(`serviceConfigEnv.isolated`,{name:$.value.name})),1)])):d(``,!0),Oe.value.length>0?(P(),c(H(ie),{key:2,class:`inherited-accordion`},{default:R(()=>[x(H(ae),{value:`inherited`},{default:R(()=>[x(H(I),null,{default:R(()=>[r(`span`,oi,[n[6]||=r(`i`,{class:`pi pi-arrow-down-left`},null,-1),o(` `+s(H(i)(`serviceConfigEnv.inheritedVars`))+` `,1),x(H(b),{value:String(Oe.value.length),severity:`secondary`,rounded:``},null,8,[`value`])])]),_:1}),x(H(O),null,{default:R(()=>[x(H(he),{value:Oe.value,size:`small`,"show-headers":!1},{default:R(()=>[x(H(ge),{style:{width:`35%`}},{body:R(({data:e})=>[r(`div`,si,[r(`code`,ci,s(e.key),1),ke.value[e.variableId]?(P(),c(xe,{key:0,"environment-id":ke.value[e.variableId].environmentId,class:`source-badge`},null,8,[`environment-id`])):d(``,!0)])]),_:1}),x(H(ge),{style:{width:`65%`}},{body:R(({data:e})=>[r(`span`,li,[r(`span`,{class:`value-actions`,onClick:n[0]||=z(()=>{},[`stop`])},[e.slot.isSecret?(P(),v(`i`,{key:0,class:p([U.value.has(e.variableId)?`pi pi-eye-slash`:`pi pi-eye`,`action-icon`]),onClick:t=>G(e.variableId)},null,10,ui)):d(``,!0),r(`i`,{class:p([K.value===e.variableId?`pi pi-check`:`pi pi-copy`,`action-icon`]),onClick:t=>oe(e.variableId,e.slot.pre+e.slot.value+e.slot.post)},null,10,di)]),e.slot.isSecret&&!U.value.has(e.variableId)?(P(),v(`span`,fi,`***`)):(P(),v(`code`,pi,s(e.slot.pre)+s(e.slot.value)+s(e.slot.post),1))])]),_:1})]),_:1},8,[`value`])]),_:1})]),_:1})]),_:1})):d(``,!0),r(`div`,mi,[r(`h3`,hi,s(H(i)(`serviceConfigEnv.envVars`)),1),r(`div`,gi,[x(H(T),{label:H(i)(`serviceConfigEnv.editVariables`),icon:`pi pi-pencil`,size:`small`,outlined:``,"data-testid":`env-edit-btn`,disabled:!S.value,onClick:Re},null,8,[`label`,`disabled`]),x(H(T),{label:H(i)(`serviceConfigEnv.preview`),icon:`pi pi-eye`,size:`small`,outlined:``,severity:`secondary`,loading:j.value,disabled:!S.value,"data-testid":`env-preview-btn`,onClick:Me},null,8,[`label`,`loading`,`disabled`])])]),E.value?(P(),v(`div`,_i,[De.value.length>0?(P(),v(`div`,vi,[x(Ce,{"environment-id":E.value.id,sources:ke.value,"resolved-env":{...L.value?.env??{},...F.value?.env??{}},"service-builtins":pe.value,editable:!1,"show-overrides":!0,"show-override-badge":!0,"show-delete":!1,"show-add-button":!1,onVariablesChanged:Ae},null,8,[`environment-id`,`sources`,`resolved-env`,`service-builtins`])])):(P(),v(`div`,yi,[r(`p`,null,s(H(i)(`serviceConfigEnv.noVarsConfigured`)),1)])),_e.value?(P(),c(H(ie),{key:2,class:`inherited-accordion`},{default:R(()=>[x(H(ae),{value:`passthrough`},{default:R(()=>[x(H(I),null,{default:R(()=>[r(`span`,bi,[n[7]||=r(`i`,{class:`pi pi-globe`},null,-1),o(` `+s(H(i)(`agentPage.passthrough.titleShort`))+` `,1),x(H(b),{value:String(X.value.length),severity:`secondary`,rounded:``},null,8,[`value`])])]),_:1}),x(H(O),null,{default:R(()=>[r(`p`,xi,s(H(i)(`serviceConfigEnv.passthroughInfo`)),1),q.value?(P(),c(H(te),{key:0,style:{width:`24px`,height:`24px`}})):(P(),c(H(he),{key:1,value:ye.value,stripedRows:``,size:`small`},{default:R(()=>[x(H(ge),{field:`name`,header:H(i)(`common.key`),style:{width:`35%`}},{body:R(({data:e})=>[r(`code`,Si,s(e.name),1)]),_:1},8,[`header`]),x(H(ge),{header:H(i)(`common.value`),style:{width:`65%`}},{body:R(({data:e})=>[e.value===null?(P(),v(`span`,wi,s(H(i)(`serviceConfigEnv.undefined`)),1)):(P(),v(`span`,Ci,s(e.value),1))]),_:1},8,[`header`])]),_:1},8,[`value`]))]),_:1})]),_:1})]),_:1})):d(``,!0)])):S.value?(P(),v(`div`,Ei,[r(`p`,null,s(H(i)(`serviceConfigEnv.noVarsConfigured`)),1)])):(P(),v(`div`,Ti,[r(`p`,null,s(H(i)(`serviceConfigEnv.noActiveEnv`)),1)])),x(H(w),{visible:D.value,header:H(i)(`serviceConfigEnv.editVarsHeader`),style:{width:`900px`},modal:``,"onUpdate:visible":n[2]||=e=>{e||ze()}},{footer:R(()=>[x(H(T),{label:H(i)(`actions.close`),icon:`pi pi-times`,onClick:n[1]||=e=>ze()},null,8,[`label`])]),default:R(()=>[r(`div`,Di,[S.value?(P(),v(`div`,Oi,[r(`span`,ki,s(H(i)(`serviceConfigEnv.editingVarsFor`,{name:e.service.name||e.service.id})),1),x(xe,{"environment-id":S.value},null,8,[`environment-id`])])):d(``,!0),r(`div`,Ai,[E.value?(P(),c(Ce,{key:0,"environment-id":E.value.id,editable:!0,sources:ke.value,"autocomplete-enabled":!0,"autocomplete-suggestions":H(ne),"autocomplete-meta":H(B),"resolved-env":{...L.value?.env??{},...F.value?.env??{}},"service-builtins":pe.value,"show-overrides":!0,onVariablesChanged:Ae,"show-delete":!0,"show-add-button":!0,onAutocompleteSearch:H(V)},null,8,[`environment-id`,`sources`,`autocomplete-suggestions`,`autocomplete-meta`,`resolved-env`,`service-builtins`,`onAutocompleteSearch`])):d(``,!0)])])]),_:1},8,[`visible`,`header`]),x(H(w),{visible:k.value,"onUpdate:visible":n[5]||=e=>k.value=e,header:H(i)(`serviceConfigEnv.previewHeader`),style:{width:`700px`},modal:``,"data-testid":`env-preview-dialog`},{footer:R(()=>[x(H(T),{label:H(i)(`actions.close`),icon:`pi pi-times`,onClick:n[4]||=e=>k.value=!1},null,8,[`label`])]),default:R(()=>[j.value?(P(),v(`div`,ji,[x(H(te))])):F.value?(P(),v(`div`,Mi,[r(`p`,Ni,s(H(i)(`serviceConfigEnv.injectedVarsInfo`)),1),x(H(he),{value:Ne.value,stripedRows:``,size:`small`,rows:15,paginator:Ne.value.length>15},{default:R(()=>[x(H(ge),{field:`key`,header:H(i)(`common.key`),style:{width:`35%`}},{body:R(({data:e})=>[r(`code`,Pi,s(e.key),1)]),_:1},8,[`header`]),x(H(ge),{header:H(i)(`common.value`),style:{width:`65%`}},{body:R(({data:e})=>[r(`span`,Fi,[r(`span`,{class:`value-actions`,onClick:n[3]||=z(()=>{},[`stop`])},[F.value.envSecrets.includes(e.key)?(P(),v(`i`,{key:0,class:p([U.value.has(`preview:`+e.key)?`pi pi-eye-slash`:`pi pi-eye`,`action-icon`]),onClick:t=>G(`preview:`+e.key)},null,10,Ii)):d(``,!0),r(`i`,{class:p([K.value===`preview:`+e.key?`pi pi-check`:`pi pi-copy`,`action-icon`]),onClick:t=>oe(`preview:`+e.key,e.value)},null,10,Li)]),F.value.envSecrets.includes(e.key)&&!U.value.has(`preview:`+e.key)?(P(),v(`span`,Ri,`***`)):(P(),v(`span`,zi,s(Pe(e.value,!1)),1))])]),_:1},8,[`header`])]),_:1},8,[`value`,`paginator`])])):d(``,!0)]),_:1},8,[`visible`,`header`])]))}}),[[`__scopeId`,`data-v-952c6d8e`]]),Vi={class:`config-health`},Hi={class:`config-card config-card--inline`},Ui={class:`config-card__header`},Wi={class:`config-card`},Gi={class:`config-card__header`},Ki={class:`config-card`},qi={class:`config-card__header`},Ji={class:`config-card`},Yi={class:`config-card__header`},Xi={class:`config-card`},Zi={class:`config-card__header`},Qi={key:1,class:`config-card`},$i={class:`config-card__header`},ea={class:`config-card__hint`},ta={class:`config-card`},na={class:`config-card__header`},ra={class:`config-card`},ia={class:`config-card__header`},aa={class:`config-card`},oa={class:`config-card__header`},sa={class:`config-card`},ca={class:`config-card__header`},la=G(a({__name:`ServiceConfigHealthCheck`,props:{service:{}},emits:[`save`],setup(e,{emit:n}){let i=e,a=n,{t:o}=Y(),c=W(!!i.service.healthCheck),l=W({type:i.service.healthCheck?.type??`http`,path:i.service.healthCheck?.path??`/health`,interval:i.service.healthCheck?.interval??3e4,timeout:i.service.healthCheck?.timeout??5e3,retries:i.service.healthCheck?.retries??3,method:i.service.healthCheck?.method??`GET`,expectedStatus:i.service.healthCheck?.expectedStatus??200,initialDelay:i.service.healthCheck?.initialDelay??5e3,command:i.service.healthCheck?.command??``}),u=[{label:`HTTP Request`,value:`http`},{label:`Command`,value:`command`}],f=[{label:`GET`,value:`GET`},{label:`HEAD`,value:`HEAD`},{label:`POST`,value:`POST`},{label:`PUT`,value:`PUT`}];y(()=>i.service,e=>{c.value=!!e.healthCheck,l.value={type:e.healthCheck?.type??`http`,path:e.healthCheck?.path??`/health`,interval:e.healthCheck?.interval??3e4,timeout:e.healthCheck?.timeout??5e3,retries:e.healthCheck?.retries??3,method:e.healthCheck?.method??`GET`,expectedStatus:e.healthCheck?.expectedStatus??200,initialDelay:e.healthCheck?.initialDelay??5e3,command:e.healthCheck?.command??``}});let p=null;function h(){p&&clearTimeout(p),p=setTimeout(()=>{if(!c.value)a(`save`,void 0);else{if(l.value.type===`http`&&!l.value.path?.trim()||l.value.type===`command`&&!l.value.command?.trim())return;a(`save`,{type:l.value.type,path:l.value.path,method:l.value.method,expectedStatus:l.value.expectedStatus,command:l.value.command||void 0,interval:l.value.interval,timeout:l.value.timeout,retries:l.value.retries,initialDelay:l.value.initialDelay})}p=null},150)}return(e,n)=>(P(),v(`div`,Vi,[r(`div`,Hi,[r(`div`,Ui,[n[10]||=r(`i`,{class:`pi pi-heart`},null,-1),r(`span`,null,s(H(o)(`serviceConfigHealthCheck.enable`)),1)]),x(H(Z),{modelValue:c.value,"onUpdate:modelValue":n[0]||=e=>c.value=e,onChange:h},null,8,[`modelValue`])]),c.value?(P(),v(L,{key:0},[r(`div`,Wi,[r(`div`,Gi,[n[11]||=r(`i`,{class:`pi pi-cog`},null,-1),r(`span`,null,s(H(o)(`serviceConfigHealthCheck.type`)),1)]),x(H(j),{modelValue:l.value.type,"onUpdate:modelValue":n[1]||=e=>l.value.type=e,options:u,"option-label":`label`,"option-value":`value`,class:`config-card__input`,onChange:h},null,8,[`modelValue`]),n[12]||=r(`small`,{class:`config-card__hint`},`HTTP checks a URL endpoint; Command runs a shell command (exit 0 = healthy)`,-1)]),l.value.type===`http`?(P(),v(L,{key:0},[r(`div`,Ki,[r(`div`,qi,[n[13]||=r(`i`,{class:`pi pi-link`},null,-1),r(`span`,null,s(H(o)(`serviceConfigHealthCheck.path`)),1)]),x(H(t),{modelValue:l.value.path,"onUpdate:modelValue":n[2]||=e=>l.value.path=e,class:`config-card__input`,placeholder:`/health`,onBlur:h,onKeydown:m(z(h,[`prevent`]),[`enter`])},null,8,[`modelValue`,`onKeydown`])]),r(`div`,Ji,[r(`div`,Yi,[n[14]||=r(`i`,{class:`pi pi-directions`},null,-1),r(`span`,null,s(H(o)(`serviceConfigHealthCheck.method`)),1)]),x(H(j),{modelValue:l.value.method,"onUpdate:modelValue":n[3]||=e=>l.value.method=e,options:f,"option-label":`label`,"option-value":`value`,class:`config-card__input`,onChange:h},null,8,[`modelValue`])]),r(`div`,Xi,[r(`div`,Zi,[n[15]||=r(`i`,{class:`pi pi-check-circle`},null,-1),r(`span`,null,s(H(o)(`serviceConfigHealthCheck.expectedStatus`)),1)]),x(H(X),{modelValue:l.value.expectedStatus,"onUpdate:modelValue":n[4]||=e=>l.value.expectedStatus=e,class:`config-card__input`,"use-grouping":!1,min:100,max:599,onBlur:h,onKeydown:m(z(h,[`prevent`]),[`enter`])},null,8,[`modelValue`,`onKeydown`]),n[16]||=r(`small`,{class:`config-card__hint`},`HTTP status code to expect (default 200)`,-1)])],64)):d(``,!0),l.value.type===`command`?(P(),v(`div`,Qi,[r(`div`,$i,[n[17]||=r(`i`,{class:`pi pi-code`},null,-1),r(`span`,null,s(H(o)(`serviceConfigHealthCheck.command`)),1)]),x(H(V),{modelValue:l.value.command,"onUpdate:modelValue":n[5]||=e=>l.value.command=e,class:`config-card__input`,rows:`2`,placeholder:`curl -sf http://localhost:3000/health`,"auto-resize":``,onBlur:h},null,8,[`modelValue`]),r(`small`,ea,s(H(o)(`serviceConfigHealthCheck.commandHint`)),1)])):d(``,!0),r(`div`,ta,[r(`div`,na,[n[18]||=r(`i`,{class:`pi pi-hourglass`},null,-1),r(`span`,null,s(H(o)(`serviceConfigHealthCheck.initialDelay`)),1)]),x(H(X),{modelValue:l.value.initialDelay,"onUpdate:modelValue":n[6]||=e=>l.value.initialDelay=e,class:`config-card__input`,"use-grouping":!1,min:0,onBlur:h,onKeydown:m(z(h,[`prevent`]),[`enter`])},null,8,[`modelValue`,`onKeydown`]),n[19]||=r(`small`,{class:`config-card__hint`},`Wait before first health check (ms)`,-1)]),r(`div`,ra,[r(`div`,ia,[n[20]||=r(`i`,{class:`pi pi-clock`},null,-1),r(`span`,null,s(H(o)(`serviceConfigHealthCheck.interval`)),1)]),x(H(X),{modelValue:l.value.interval,"onUpdate:modelValue":n[7]||=e=>l.value.interval=e,class:`config-card__input`,"use-grouping":!1,min:1e3,onBlur:h,onKeydown:m(z(h,[`prevent`]),[`enter`])},null,8,[`modelValue`,`onKeydown`])]),r(`div`,aa,[r(`div`,oa,[n[21]||=r(`i`,{class:`pi pi-stopwatch`},null,-1),r(`span`,null,s(H(o)(`serviceConfigHealthCheck.timeout`)),1)]),x(H(X),{modelValue:l.value.timeout,"onUpdate:modelValue":n[8]||=e=>l.value.timeout=e,class:`config-card__input`,"use-grouping":!1,min:500,onBlur:h,onKeydown:m(z(h,[`prevent`]),[`enter`])},null,8,[`modelValue`,`onKeydown`])]),r(`div`,sa,[r(`div`,ca,[n[22]||=r(`i`,{class:`pi pi-replay`},null,-1),r(`span`,null,s(H(o)(`serviceConfigHealthCheck.retries`)),1)]),x(H(X),{modelValue:l.value.retries,"onUpdate:modelValue":n[9]||=e=>l.value.retries=e,class:`config-card__input`,"use-grouping":!1,min:0,max:10,onBlur:h,onKeydown:m(z(h,[`prevent`]),[`enter`])},null,8,[`modelValue`,`onKeydown`])])],64)):d(``,!0)]))}}),[[`__scopeId`,`data-v-63e32039`]]),ua={class:`config-shortcuts`},da={key:0,class:`config-shortcuts__empty`},fa={class:`config-shortcuts__row`},pa={class:`config-shortcuts__field`},ma=[`for`],ha={class:`config-shortcuts__field config-shortcuts__field--wide`},ga=[`for`],_a={class:`config-shortcuts__field`},va=[`for`],ya={class:`config-shortcuts__actions-cell`},ba={class:`config-shortcuts__footer`},xa=G(a({__name:`ServiceConfigShortcuts`,props:{service:{}},emits:[`save`],setup(e,{emit:n}){let i=e,{t:a}=Y(),o=n,c=W([...i.service.shortcuts??[]]),l=null;y(()=>i.service,e=>{l||(c.value=[...e.shortcuts??[]])});function u(){c.value=[...c.value,{id:me(),label:``,command:``,cwd:void 0}]}function f(e){c.value=c.value.filter((t,n)=>n!==e)}function p(e,t,n){c.value=c.value.map((r,i)=>i===e?{...r,[t]:n||void 0}:r)}function h(){l&&clearTimeout(l),l=setTimeout(()=>{o(`save`,c.value),l=null},150)}function g(e){f(e),h()}return(e,n)=>(P(),v(`div`,ua,[c.value.length===0?(P(),v(`div`,da,[r(`p`,null,s(H(a)(`serviceConfigShortcuts.empty`)),1)])):d(``,!0),(P(!0),v(L,null,B(c.value,(e,n)=>(P(),v(`div`,{key:e.id,class:`config-card`},[r(`div`,fa,[r(`div`,pa,[r(`label`,{class:`config-shortcuts__label`,for:`shortcut-label-${n}`},s(H(a)(`serviceConfigShortcuts.label`)),9,ma),x(H(t),{id:`shortcut-label-${n}`,"model-value":e.label,placeholder:H(a)(`serviceConfigShortcuts.labelPlaceholder`),class:`config-card__input`,"data-testid":`shortcut-label-input`,"onUpdate:modelValue":e=>p(n,`label`,e),onBlur:h,onKeydown:m(z(h,[`prevent`]),[`enter`])},null,8,[`id`,`model-value`,`placeholder`,`onUpdate:modelValue`,`onKeydown`])]),r(`div`,ha,[r(`label`,{class:`config-shortcuts__label`,for:`shortcut-command-${n}`},s(H(a)(`serviceConfigShortcuts.command`)),9,ga),x(H(t),{id:`shortcut-command-${n}`,"model-value":e.command,placeholder:H(a)(`serviceConfigShortcuts.commandPlaceholder`),class:`config-card__input`,"data-testid":`shortcut-command-input`,"onUpdate:modelValue":e=>p(n,`command`,e),onBlur:h,onKeydown:m(z(h,[`prevent`]),[`enter`])},null,8,[`id`,`model-value`,`placeholder`,`onUpdate:modelValue`,`onKeydown`])]),r(`div`,_a,[r(`label`,{class:`config-shortcuts__label`,for:`shortcut-cwd-${n}`},s(H(a)(`serviceConfigShortcuts.workingDir`)),9,va),x(H(t),{id:`shortcut-cwd-${n}`,"model-value":e.cwd??``,placeholder:H(a)(`serviceConfigShortcuts.cwdPlaceholder`),class:`config-card__input`,"onUpdate:modelValue":e=>p(n,`cwd`,e),onBlur:h,onKeydown:m(z(h,[`prevent`]),[`enter`])},null,8,[`id`,`model-value`,`placeholder`,`onUpdate:modelValue`,`onKeydown`])]),r(`div`,ya,[x(H(T),{icon:`pi pi-trash`,severity:`danger`,text:``,rounded:``,size:`small`,onClick:e=>g(n)},null,8,[`onClick`])])])]))),128)),r(`div`,ba,[x(H(T),{label:H(a)(`serviceConfigShortcuts.addShortcut`),icon:`pi pi-plus`,severity:`secondary`,outlined:``,size:`small`,"data-testid":`add-shortcut-btn`,onClick:u},null,8,[`label`])])]))}}),[[`__scopeId`,`data-v-d6ecb989`]]),Sa={class:`config-log-parsers`},Ca={class:`config-card`},wa={class:`config-card__header`},Ta={class:`config-card__hint`},Ea={class:`config-card`},Da={class:`config-card__header`},Oa={class:`config-card__header-hint`},ka={class:`config-log-parsers__order`},Aa={class:`config-log-parsers__name`},ja={key:1,class:`config-log-parsers__empty`},Ma={class:`config-log-parsers__add-row`},Na={class:`config-log-parsers__footer`},Pa=G(a({__name:`ServiceConfigLogs`,props:{service:{}},emits:[`save`],setup(e,{emit:t}){let n=e,i=t,a=ce(),{t:l}=Y(),u=Ae(),f=W([...n.service.parserIds??[]]);y(()=>n.service,e=>{f.value=[...e.parserIds??[]]});let p=h(()=>[...u.parsers].filter(e=>e.enabled).sort((e,t)=>e.name.localeCompare(t.name))),m=h(()=>p.value.filter(e=>!f.value.includes(e.id))),g=W(f.value.map(e=>u.parsers.find(t=>t.id===e)).filter(e=>e!==void 0));y(f,e=>{let t=g.value.filter(t=>e.includes(t.id)),n=e.filter(e=>!t.find(t=>t.id===e)).map(e=>u.parsers.find(t=>t.id===e)).filter(e=>e!==void 0);g.value=[...t,...n]}),y(()=>u.parsers,()=>{g.value=f.value.map(e=>u.parsers.find(t=>t.id===e)).filter(e=>e!==void 0)});let _=W(null);function S(e){if(!e)return;let t=u.parsers.find(t=>t.id===e);t&&(f.value=[...f.value,e],g.value=[...g.value,t],_.value=null,E())}function C(e){f.value=f.value.filter(t=>t!==e),g.value=g.value.filter(t=>t.id!==e),E()}function w(){f.value=g.value.map(e=>e.id),E()}function E(){i(`save`,{parserIds:g.value.map(e=>e.id)})}return A(()=>{u.fetchParsers(),u.subscribeParsers()}),q(()=>{u.unsubscribeParsers()}),(e,t)=>(P(),v(`div`,Sa,[r(`div`,Ca,[r(`div`,wa,[t[3]||=r(`i`,{class:`pi pi-code`},null,-1),r(`span`,null,s(H(l)(`serviceConfigLogs.jsParsers`)),1)]),r(`small`,Ta,s(H(l)(`serviceConfigLogs.jsParsersHint`)),1)]),r(`div`,Ea,[r(`div`,Da,[t[4]||=r(`i`,{class:`pi pi-sort-alt`},null,-1),r(`span`,null,s(H(l)(`serviceConfigLogs.executionOrder`)),1),r(`small`,Oa,s(H(l)(`serviceConfigLogs.executionOrderHint`)),1)]),g.value.length>0?(P(),c(H(M),{key:0,modelValue:g.value,"onUpdate:modelValue":t[0]||=e=>g.value=e,animation:150,handle:`.drag-handle`,class:`config-log-parsers__drag-list`,"data-testid":`log-parsers-drag-list`,onEnd:w},{default:R(()=>[(P(!0),v(L,null,B(g.value,(e,n)=>(P(),v(`div`,{key:e.id,class:`config-log-parsers__drag-row`,"data-testid":`log-parsers-drag-row`},[t[5]||=r(`span`,{class:`drag-handle`,"data-testid":`drag-handle`},[r(`i`,{class:`pi pi-bars`})],-1),r(`span`,ka,s(n+1),1),r(`span`,Aa,s(e.name),1),e.builtin?(P(),c(H(b),{key:0,severity:`secondary`,class:`config-log-parsers__builtin-badge`},{default:R(()=>[o(s(H(l)(`serviceConfigLogs.builtin`)),1)]),_:1})):d(``,!0),e.enabled?d(``,!0):(P(),c(H(b),{key:1,severity:`warn`,class:`config-log-parsers__disabled-badge`},{default:R(()=>[o(s(H(l)(`serviceConfigLogs.disabled`)),1)]),_:1})),x(H(T),{icon:`pi pi-trash`,severity:`danger`,text:``,size:`small`,class:`config-log-parsers__delete`,onClick:t=>C(e.id)},null,8,[`onClick`])]))),128))]),_:1},8,[`modelValue`])):d(``,!0),g.value.length===0?(P(),v(`div`,ja,s(H(l)(`serviceConfigLogs.empty`)),1)):d(``,!0),r(`div`,Ma,[x(H(j),{modelValue:_.value,"onUpdate:modelValue":[t[1]||=e=>_.value=e,S],options:m.value,"option-label":`name`,"option-value":`id`,placeholder:H(l)(`serviceConfigLogs.addParser`),class:`config-log-parsers__add-select`,loading:H(u).loading,disabled:m.value.length===0},{option:R(({option:e})=>[r(`span`,null,s(e.name),1),e.builtin?(P(),c(H(b),{key:0,severity:`secondary`,class:`ml-2`,style:{"font-size":`0.65rem`,padding:`0.1rem 0.35rem`}},{default:R(()=>[o(s(H(l)(`serviceConfigLogs.builtin`)),1)]),_:1})):d(``,!0)]),_:1},8,[`modelValue`,`options`,`placeholder`,`loading`,`disabled`])])]),r(`div`,Na,[x(H(T),{label:H(l)(`serviceConfigLogs.manageParsers`),icon:`pi pi-cog`,severity:`secondary`,outlined:``,size:`small`,onClick:t[2]||=e=>H(a).push({name:`settings`,query:{section:`parsers`}})},null,8,[`label`])])]))}}),[[`__scopeId`,`data-v-73b711b6`]]),Fa={class:`config-log-sources`},Ia={class:`config-card`},La={class:`config-card__header`},Ra={class:`config-card__hint`},za={key:0,class:`config-card config-card--list`},Ba={class:`source-row__info`},Va={class:`source-row__type`},Ha={class:`source-row__label`},Ua={class:`source-row__actions`},Wa={key:1,class:`config-log-sources__empty`},Ga={class:`config-log-sources__footer`},Ka={class:`dialog-form`},qa={class:`dialog-form__field`},Ja={for:`lsrc-type`,class:`dialog-form__label`},Ya={class:`dialog-form__field`},Xa={for:`lsrc-path-file`,class:`dialog-form__label`},Za={class:`dialog-form__field`},Qa={for:`lsrc-encoding-file`,class:`dialog-form__label`},$a={class:`dialog-form__field dialog-form__field--row`},eo={for:`lsrc-startFromEnd-file`,class:`dialog-form__label`},to={class:`dialog-form__field dialog-form__field--row`},no={for:`lsrc-createIfNotExists-file`,class:`dialog-form__label`},ro={class:`dialog-form__field`},io={for:`lsrc-connectionString-mongo`,class:`dialog-form__label`},ao={class:`dialog-form__row`},oo={class:`dialog-form__field`},so={class:`dialog-form__field`},co={class:`dialog-form__row`},lo={class:`dialog-form__field`},uo={class:`dialog-form__field`},fo={class:`dialog-form__field`},po={class:`dialog-form__row`},mo={class:`dialog-form__field dialog-form__field--grow`},ho={class:`dialog-form__field dialog-form__field--port`},go={class:`dialog-form__row`},_o={class:`dialog-form__field`},vo={class:`dialog-form__field`},yo={class:`dialog-form__row`},bo={class:`dialog-form__field`},xo={class:`dialog-form__field`},So={class:`dialog-form__row`},Co={class:`dialog-form__field`},wo={class:`dialog-form__field`},To={class:`dialog-form__row`},Eo={class:`dialog-form__field`},Do={class:`dialog-form__field`},Oo={class:`dialog-form__field`},ko={key:3,class:`dialog-form__hint-block`},Ao=G(a({__name:`ServiceConfigLogSources`,props:{service:{}},emits:[`save`],setup(e,{emit:n}){let{t:i}=Y(),a=e,c=n,l=[{label:`Console (stdout/stderr)`,value:`console`,icon:`pi-terminal`},{label:`File`,value:`file`,icon:`pi-file`},{label:`MongoDB`,value:`mongo`,icon:`pi-database`},{label:`MySQL`,value:`mysql`,icon:`pi-database`}];function u(e){return e===`console`?{type:`console`}:e===`file`?{type:`file`,path:``,encoding:`utf-8`,startFromEnd:!0,createIfNotExists:!1}:e===`mongo`?{type:`mongo`,connectionString:``,database:``,collection:``,timestampField:`timestamp`,messageField:`message`}:{type:`mysql`,host:`localhost`,port:3306,user:``,password:``,database:``,table:``,timestampColumn:`created_at`,messageColumn:`message`,pollIntervalMs:2e3}}let f=W([...a.service.logSources??[]]);y(()=>a.service.logSources,e=>{f.value=[...e??[]]});let m=W(!1),h=W(null),g=W(u(`console`));function _(){h.value=null,g.value=u(`file`),m.value=!0}function b(e){h.value=e,g.value={...f.value[e]},m.value=!0}function S(e){g.value=u(e)}function C(){h.value===null?f.value=[...f.value,{...g.value}]:f.value=f.value.map((e,t)=>t===h.value?{...g.value}:e),m.value=!1,c(`save`,{logSources:f.value})}function E(e){f.value=f.value.filter((t,n)=>n!==e),c(`save`,{logSources:f.value})}function D(e){return e.type===`console`?`Console`:e.type===`file`?e.path||`(no path)`:e.type===`mongo`?e.database?`mongo/${e.database}/${e.collection}`:`(not configured)`:e.type===`mysql`?e.database?`mysql/${e.host}/${e.database}/${e.table}`:`(not configured)`:e.type}function O(e){return e===`console`?`pi-terminal`:e===`file`?`pi-file`:`pi-database`}return(e,n)=>(P(),v(`div`,Fa,[r(`div`,Ia,[r(`div`,La,[n[23]||=r(`i`,{class:`pi pi-inbox`},null,-1),r(`span`,null,s(H(i)(`serviceConfigLogSources.title`)),1)]),r(`small`,Ra,s(H(i)(`serviceConfigLogSources.hint`)),1)]),f.value.length>0?(P(),v(`div`,za,[(P(!0),v(L,null,B(f.value,(e,t)=>(P(),v(`div`,{key:t,class:`source-row`},[r(`i`,{class:p(`pi ${O(e.type)} source-row__icon`)},null,2),r(`div`,Ba,[r(`span`,Va,s(e.type),1),r(`span`,Ha,s(D(e)),1)]),r(`div`,Ua,[x(H(T),{icon:`pi pi-pencil`,text:``,size:`small`,severity:`secondary`,onClick:e=>b(t)},null,8,[`onClick`]),x(H(T),{icon:`pi pi-trash`,text:``,size:`small`,severity:`danger`,onClick:e=>E(t)},null,8,[`onClick`])])]))),128))])):(P(),v(`div`,Wa,[n[24]||=r(`i`,{class:`pi pi-inbox config-log-sources__empty-icon`},null,-1),r(`p`,null,s(H(i)(`serviceConfigLogSources.empty`)),1),r(`small`,null,s(H(i)(`serviceConfigLogSources.emptyHint`)),1)])),r(`div`,Ga,[x(H(T),{label:H(i)(`serviceConfigLogSources.addSource`),icon:`pi pi-plus`,size:`small`,onClick:_},null,8,[`label`])]),x(H(w),{visible:m.value,"onUpdate:visible":n[22]||=e=>m.value=e,header:h.value===null?H(i)(`serviceConfigLogSources.addDialog`):H(i)(`serviceConfigLogSources.editDialog`),modal:``,style:{width:`520px`}},{footer:R(()=>[x(H(T),{label:H(i)(`serviceConfigLogSources.cancel`),severity:`secondary`,outlined:``,onClick:n[21]||=e=>m.value=!1},null,8,[`label`]),x(H(T),{label:h.value===null?H(i)(`serviceConfigLogSources.add`):H(i)(`serviceConfigLogSources.save`),icon:`pi pi-check`,onClick:C},null,8,[`label`])]),default:R(()=>[r(`div`,Ka,[r(`div`,qa,[r(`label`,Ja,s(H(i)(`serviceConfigLogSources.type`)),1),x(H(j),{"input-id":`lsrc-type`,"model-value":g.value.type,options:l,"option-label":`label`,"option-value":`value`,class:`dialog-form__input`,"onUpdate:modelValue":S},null,8,[`model-value`])]),g.value.type===`file`?(P(),v(L,{key:0},[r(`div`,Ya,[r(`label`,Xa,[o(s(H(i)(`serviceConfigLogSources.path`))+` `,1),n[25]||=r(`span`,{class:`dialog-form__required`},`*`,-1)]),x(H(t),{id:`lsrc-path-file`,modelValue:g.value.path,"onUpdate:modelValue":n[0]||=e=>g.value.path=e,class:`dialog-form__input`,placeholder:`/var/log/app.log`},null,8,[`modelValue`])]),r(`div`,Za,[r(`label`,Qa,s(H(i)(`serviceConfigLogSources.encoding`)),1),x(H(t),{id:`lsrc-encoding-file`,modelValue:g.value.encoding,"onUpdate:modelValue":n[1]||=e=>g.value.encoding=e,class:`dialog-form__input`,placeholder:`utf-8`},null,8,[`modelValue`])]),r(`div`,$a,[r(`label`,eo,s(H(i)(`serviceConfigLogSources.startFromEnd`)),1),x(H(Z),{"input-id":`lsrc-startFromEnd-file`,modelValue:g.value.startFromEnd,"onUpdate:modelValue":n[2]||=e=>g.value.startFromEnd=e},null,8,[`modelValue`])]),r(`div`,to,[r(`label`,no,s(H(i)(`serviceConfigLogSources.createIfNotExists`)),1),x(H(Z),{"input-id":`lsrc-createIfNotExists-file`,modelValue:g.value.createIfNotExists,"onUpdate:modelValue":n[3]||=e=>g.value.createIfNotExists=e},null,8,[`modelValue`])])],64)):g.value.type===`mongo`?(P(),v(L,{key:1},[r(`div`,ro,[r(`label`,io,[o(s(H(i)(`serviceConfigLogSources.connectionString`))+` `,1),n[26]||=r(`span`,{class:`dialog-form__required`},`*`,-1)]),x(H(t),{id:`lsrc-connectionString-mongo`,modelValue:g.value.connectionString,"onUpdate:modelValue":n[4]||=e=>g.value.connectionString=e,class:`dialog-form__input`,placeholder:`mongodb://user:pass@host:27017`,type:`password`,autocomplete:`off`},null,8,[`modelValue`])]),r(`div`,ao,[r(`div`,oo,[n[27]||=r(`label`,{for:`lsrc-database-mongo`,class:`dialog-form__label`},[o(`Database `),r(`span`,{class:`dialog-form__required`},`*`)],-1),x(H(t),{id:`lsrc-database-mongo`,modelValue:g.value.database,"onUpdate:modelValue":n[5]||=e=>g.value.database=e,class:`dialog-form__input`,placeholder:`mydb`},null,8,[`modelValue`])]),r(`div`,so,[n[28]||=r(`label`,{for:`lsrc-collection-mongo`,class:`dialog-form__label`},[o(`Collection `),r(`span`,{class:`dialog-form__required`},`*`)],-1),x(H(t),{id:`lsrc-collection-mongo`,modelValue:g.value.collection,"onUpdate:modelValue":n[6]||=e=>g.value.collection=e,class:`dialog-form__input`,placeholder:`logs`},null,8,[`modelValue`])])]),r(`div`,co,[r(`div`,lo,[n[29]||=r(`label`,{for:`lsrc-timestampField-mongo`,class:`dialog-form__label`},`Timestamp field`,-1),x(H(t),{id:`lsrc-timestampField-mongo`,modelValue:g.value.timestampField,"onUpdate:modelValue":n[7]||=e=>g.value.timestampField=e,class:`dialog-form__input`,placeholder:`timestamp`},null,8,[`modelValue`])]),r(`div`,uo,[n[30]||=r(`label`,{for:`lsrc-messageField-mongo`,class:`dialog-form__label`},`Message field`,-1),x(H(t),{id:`lsrc-messageField-mongo`,modelValue:g.value.messageField,"onUpdate:modelValue":n[8]||=e=>g.value.messageField=e,class:`dialog-form__input`,placeholder:`message`},null,8,[`modelValue`])])]),r(`div`,fo,[n[31]||=r(`label`,{for:`lsrc-levelField-mongo`,class:`dialog-form__label`},[o(`Level field `),r(`span`,{class:`dialog-form__hint`},`(optional)`)],-1),x(H(t),{id:`lsrc-levelField-mongo`,modelValue:g.value.levelField,"onUpdate:modelValue":n[9]||=e=>g.value.levelField=e,class:`dialog-form__input`,placeholder:`level`},null,8,[`modelValue`])])],64)):g.value.type===`mysql`?(P(),v(L,{key:2},[r(`div`,po,[r(`div`,mo,[n[32]||=r(`label`,{for:`lsrc-host-mysql`,class:`dialog-form__label`},[o(`Host `),r(`span`,{class:`dialog-form__required`},`*`)],-1),x(H(t),{id:`lsrc-host-mysql`,modelValue:g.value.host,"onUpdate:modelValue":n[10]||=e=>g.value.host=e,class:`dialog-form__input`,placeholder:`localhost`},null,8,[`modelValue`])]),r(`div`,ho,[n[33]||=r(`label`,{for:`lsrc-port-mysql`,class:`dialog-form__label`},`Port`,-1),x(H(X),{"input-id":`lsrc-port-mysql`,modelValue:g.value.port,"onUpdate:modelValue":n[11]||=e=>g.value.port=e,min:1,max:65535,class:`dialog-form__input`},null,8,[`modelValue`])])]),r(`div`,go,[r(`div`,_o,[n[34]||=r(`label`,{for:`lsrc-user-mysql`,class:`dialog-form__label`},[o(`User `),r(`span`,{class:`dialog-form__required`},`*`)],-1),x(H(t),{id:`lsrc-user-mysql`,modelValue:g.value.user,"onUpdate:modelValue":n[12]||=e=>g.value.user=e,class:`dialog-form__input`,placeholder:`root`},null,8,[`modelValue`])]),r(`div`,vo,[n[35]||=r(`label`,{for:`lsrc-password-mysql`,class:`dialog-form__label`},`Password`,-1),x(H(t),{id:`lsrc-password-mysql`,modelValue:g.value.password,"onUpdate:modelValue":n[13]||=e=>g.value.password=e,class:`dialog-form__input`,type:`password`,autocomplete:`new-password`},null,8,[`modelValue`])])]),r(`div`,yo,[r(`div`,bo,[n[36]||=r(`label`,{for:`lsrc-database-mysql`,class:`dialog-form__label`},[o(`Database `),r(`span`,{class:`dialog-form__required`},`*`)],-1),x(H(t),{id:`lsrc-database-mysql`,modelValue:g.value.database,"onUpdate:modelValue":n[14]||=e=>g.value.database=e,class:`dialog-form__input`,placeholder:`app_db`},null,8,[`modelValue`])]),r(`div`,xo,[n[37]||=r(`label`,{for:`lsrc-table-mysql`,class:`dialog-form__label`},[o(`Table `),r(`span`,{class:`dialog-form__required`},`*`)],-1),x(H(t),{id:`lsrc-table-mysql`,modelValue:g.value.table,"onUpdate:modelValue":n[15]||=e=>g.value.table=e,class:`dialog-form__input`,placeholder:`logs`},null,8,[`modelValue`])])]),r(`div`,So,[r(`div`,Co,[n[38]||=r(`label`,{for:`lsrc-timestampColumn-mysql`,class:`dialog-form__label`},`Timestamp column`,-1),x(H(t),{id:`lsrc-timestampColumn-mysql`,modelValue:g.value.timestampColumn,"onUpdate:modelValue":n[16]||=e=>g.value.timestampColumn=e,class:`dialog-form__input`,placeholder:`created_at`},null,8,[`modelValue`])]),r(`div`,wo,[n[39]||=r(`label`,{for:`lsrc-messageColumn-mysql`,class:`dialog-form__label`},`Message column`,-1),x(H(t),{id:`lsrc-messageColumn-mysql`,modelValue:g.value.messageColumn,"onUpdate:modelValue":n[17]||=e=>g.value.messageColumn=e,class:`dialog-form__input`,placeholder:`message`},null,8,[`modelValue`])])]),r(`div`,To,[r(`div`,Eo,[n[40]||=r(`label`,{for:`lsrc-levelColumn-mysql`,class:`dialog-form__label`},[o(`Level column `),r(`span`,{class:`dialog-form__hint`},`(optional)`)],-1),x(H(t),{id:`lsrc-levelColumn-mysql`,modelValue:g.value.levelColumn,"onUpdate:modelValue":n[18]||=e=>g.value.levelColumn=e,class:`dialog-form__input`,placeholder:`level`},null,8,[`modelValue`])]),r(`div`,Do,[n[41]||=r(`label`,{for:`lsrc-pollIntervalMs-mysql`,class:`dialog-form__label`},`Poll interval (ms)`,-1),x(H(X),{"input-id":`lsrc-pollIntervalMs-mysql`,modelValue:g.value.pollIntervalMs,"onUpdate:modelValue":n[19]||=e=>g.value.pollIntervalMs=e,min:500,max:6e4,class:`dialog-form__input`},null,8,[`modelValue`])])]),r(`div`,Oo,[n[42]||=r(`label`,{for:`lsrc-query-mysql`,class:`dialog-form__label`},[o(`Custom query `),r(`span`,{class:`dialog-form__hint`},[o(`(optional, must include `),r(`code`,null,`WHERE … > ?`),o(`)`)])],-1),x(H(t),{id:`lsrc-query-mysql`,modelValue:g.value.query,"onUpdate:modelValue":n[20]||=e=>g.value.query=e,class:`dialog-form__input`,placeholder:`SELECT * FROM logs WHERE created_at > ? ORDER BY id ASC`},null,8,[`modelValue`])])],64)):g.value.type===`console`?(P(),v(`small`,ko,`The console source captures stdout/stderr and is always active. Adding it here has no effect unless you want to track it explicitly.`)):d(``,!0)])]),_:1},8,[`visible`,`header`])]))}}),[[`__scopeId`,`data-v-1ceb461a`]]),jo={class:`config-traefik`},Mo={class:`traefik-entry__fields`},No=G(a({__name:`ServiceConfigTraefik`,props:{service:{}},emits:[`save`],setup(e,{emit:n}){let i=e,a=n,s=W([...i.service.localUrls??[]]),u=W(null);A(async()=>{i.service.agentId&&(u.value=(await l.settings.getAgentTraefikConfig.query({agentId:i.service.agentId})).enabled)});let p=null;y(()=>i.service,e=>{p||(s.value=[...e.localUrls??[]])});function h(){s.value=[...s.value,{url:``,port:3e3}]}function g(e){s.value=s.value.filter((t,n)=>n!==e),b()}function _(e,t,n){s.value=s.value.map((r,i)=>i===e?{...r,[t]:n}:r)}function b(){p&&clearTimeout(p),p=setTimeout(()=>{a(`save`,{localUrls:s.value.filter(e=>e.url.trim())}),p=null},150)}return(e,n)=>(P(),v(`div`,jo,[u.value===!1?(P(),c(H(f),{key:0,severity:`warn`,closable:!1},{default:R(()=>[n[1]||=o(` Traefik n'est pas activé. Configurez-le dans `,-1),x(H(oe),{to:{name:`settings`,query:{section:`agents`}}},{default:R(()=>[...n[0]||=[o(`Paramètres → Agents`,-1)]]),_:1}),n[2]||=o(` (bouton Traefik sur la ligne de l'agent) pour que ces URLs soient actives. `,-1)]),_:1})):d(``,!0),(P(!0),v(L,null,B(s.value,(e,n)=>(P(),v(`div`,{key:n,class:`traefik-entry`},[r(`div`,Mo,[x(H(t),{"model-value":e.url,class:`traefik-entry__url`,placeholder:`mon-app.local.mondomaine.com`,"onUpdate:modelValue":e=>_(n,`url`,e),onBlur:b,onKeydown:m(z(b,[`prevent`]),[`enter`])},null,8,[`model-value`,`onUpdate:modelValue`,`onKeydown`]),x(H(X),{"model-value":e.port,class:`traefik-entry__port`,min:1,max:65535,"use-grouping":!1,placeholder:`3000`,"onUpdate:modelValue":e=>{_(n,`port`,e??3e3),b()}},null,8,[`model-value`,`onUpdate:modelValue`]),x(H(T),{icon:`pi pi-trash`,severity:`danger`,text:``,size:`small`,onClick:e=>g(n)},null,8,[`onClick`])])]))),128)),x(H(T),{icon:`pi pi-plus`,label:`Ajouter une URL`,size:`small`,outlined:``,onClick:h})]))}}),[[`__scopeId`,`data-v-a71f945b`]]),Po={class:`config-view`,"data-testid":`config-view`},Fo={class:`config-view__header`},Io={class:`config-view__title`},Lo={class:`config-view__actions`},Ro=G(a({__name:`ServiceConfigView`,props:{service:{},projectId:{}},emits:[`remove-service`],setup(e,{emit:t}){let n=e,i=t,{t:a}=Y(),o=U(),c=C(),l=J(),{isDebug:u}=Wt(),d=ne(),f=ce(),p=[`general`,`commands`,`shortcuts`,`env`,`health`,`log-parsers`,`log-sources`,`traefik`],m=h(()=>{let e=d.query.configTab;return p.includes(e)?e:`general`});function g(e){f.replace({query:{...d.query,configTab:e}})}let _=h(()=>c.getByRef({id:n.projectId,orgId:l.activeOrgId})?.activeEnvironmentId);async function y(e,t){await t()?u.value&&console.debug(`[autosave] ${e} saved`):console.error(`[autosave] ${e} failed:`,o.error??`Save failed`)}async function b(e){await y(`General`,()=>o.update(n.service.id,e))}async function S(e){await y(`Commands`,()=>o.update(n.service.id,e))}async function w(e){await y(`Health check`,()=>o.update(n.service.id,{healthCheck:e??null}))}async function E(e){await y(`Shortcuts`,()=>o.update(n.service.id,{shortcuts:e}))}async function D(e){await y(`Docker`,()=>o.update(n.service.id,{dockerConfig:e}))}async function O(e){await y(`Log parsers`,()=>o.update(n.service.id,e))}async function k(e){await y(`Log sources`,()=>o.update(n.service.id,e))}async function A(e){await y(`Traefik`,()=>o.update(n.service.id,e))}function j(){i(`remove-service`,n.service.id)}return(t,n)=>(P(),v(`div`,Po,[r(`div`,Fo,[r(`h2`,Io,s(H(a)(`serviceConfigView.title`)),1),r(`div`,Lo,[x(H(T),{label:H(a)(`serviceConfigView.remove`),icon:`pi pi-trash`,severity:`danger`,size:`small`,outlined:``,onClick:j},null,8,[`label`])])]),x(H(be),{value:m.value,class:`config-view__tabs`,"onUpdate:value":g},{default:R(()=>[x(H(ve),null,{default:R(()=>[x(H(Q),{value:`general`,"data-testid":`tab-config`},{default:R(()=>[n[0]||=r(`i`,{class:`pi pi-cog tab-icon`},null,-1),r(`span`,null,s(H(a)(`serviceConfigView.tabGeneral`)),1)]),_:1}),x(H(Q),{value:`commands`,"data-testid":`tab-commands`},{default:R(()=>[n[1]||=r(`i`,{class:`pi pi-code tab-icon`},null,-1),r(`span`,null,s(H(a)(`serviceConfigView.tabCommands`)),1)]),_:1}),x(H(Q),{value:`shortcuts`,"data-testid":`tab-shortcuts`},{default:R(()=>[n[2]||=r(`i`,{class:`pi pi-bolt tab-icon`},null,-1),r(`span`,null,s(H(a)(`serviceConfigView.tabShortcuts`)),1)]),_:1}),x(H(Q),{value:`env`,"data-testid":`tab-env`},{default:R(()=>[n[3]||=r(`i`,{class:`pi pi-database tab-icon`},null,-1),r(`span`,null,s(H(a)(`serviceConfigView.tabEnvironment`)),1)]),_:1}),x(H(Q),{value:`health`},{default:R(()=>[n[4]||=r(`i`,{class:`pi pi-heart tab-icon`},null,-1),r(`span`,null,s(H(a)(`serviceConfigView.tabHealthCheck`)),1)]),_:1}),x(H(Q),{value:`log-parsers`,"data-testid":`tab-log-parsers`},{default:R(()=>[n[5]||=r(`i`,{class:`pi pi-list tab-icon`},null,-1),r(`span`,null,s(H(a)(`serviceConfigView.tabLogParsers`)),1)]),_:1}),x(H(Q),{value:`log-sources`},{default:R(()=>[n[6]||=r(`i`,{class:`pi pi-inbox tab-icon`},null,-1),r(`span`,null,s(H(a)(`serviceConfigView.tabLogSources`)),1)]),_:1}),x(H(Q),{value:`traefik`},{default:R(()=>[...n[7]||=[r(`i`,{class:`pi pi-server tab-icon`},null,-1),r(`span`,null,`Traefik`,-1)]]),_:1})]),_:1}),x(H(ye),null,{default:R(()=>[x(H($),{value:`general`},{default:R(()=>[x(Dn,{service:e.service,onSave:b},null,8,[`service`])]),_:1}),x(H($),{value:`commands`},{default:R(()=>[x(ei,{service:e.service,onSave:S,onDockerSave:D},null,8,[`service`])]),_:1}),x(H($),{value:`shortcuts`,"data-testid":`tabpanel-shortcuts`},{default:R(()=>[x(xa,{service:e.service,onSave:E},null,8,[`service`])]),_:1}),x(H($),{value:`env`},{default:R(()=>[x(Bi,{service:e.service,"project-id":e.projectId,"active-environment-id":_.value},null,8,[`service`,`project-id`,`active-environment-id`])]),_:1}),x(H($),{value:`health`},{default:R(()=>[x(la,{service:e.service,onSave:w},null,8,[`service`])]),_:1}),x(H($),{value:`log-parsers`,"data-testid":`tabpanel-log-parsers`},{default:R(()=>[x(Pa,{service:e.service,onSave:O},null,8,[`service`])]),_:1}),x(H($),{value:`log-sources`},{default:R(()=>[x(Ao,{service:e.service,onSave:k},null,8,[`service`])]),_:1}),x(H($),{value:`traefik`},{default:R(()=>[x(No,{service:e.service,onSave:A},null,8,[`service`])]),_:1})]),_:1})]),_:1},8,[`value`])]))}}),[[`__scopeId`,`data-v-af965568`]]),zo={key:0,class:`service-detail`},Bo={key:1,class:`service-detail__not-found`},Vo={key:2,class:`service-detail__not-found`},Ho=G(a({__name:`ServiceDetailPage`,setup(e){let t=ne(),n=ce(),i=ee(),a=re(),{t:o}=Y(),l=U(),u=N(),f=C(),{setServiceContext:p}=g(),m=h(()=>t.params.id);y(m,e=>p(e),{immediate:!0}),q(()=>p(null));let _=h(()=>{let e=t.params.tab;return e===`terminal`||e===`metrics`||e===`config`||e===`git`||e===`wiki`?e:`terminal`}),b=W(null),x=W(!1),S=h(()=>l.getById(m.value)||(b.value?.id===m.value?b.value:null));y(m,async e=>{if(b.value=null,!(!e||l.getById(e))){x.value=!0;try{b.value=await l.fetchOne(e)}finally{x.value=!1}}},{immediate:!0});let w=h(()=>u.getByService(m.value)),T=h(()=>f.currentProject?.id??``);function E(e){let t=l.getById(e);a.require({message:o(`serviceDetail.deleteConfirmMessage`,{name:t?.name??e}),header:o(`serviceDetail.deleteConfirmHeader`),icon:`pi pi-exclamation-triangle`,rejectLabel:o(`actions.cancel`),acceptLabel:o(`actions.delete`),acceptProps:{severity:`danger`},accept:async()=>{await l.remove(e)&&(i.add({severity:`success`,summary:o(`serviceDetail.removed`),detail:o(`serviceDetail.deleted`),life:3e3}),n.push(`/`))}})}return(e,t)=>S.value?(P(),v(`div`,zo,[_.value===`terminal`?(P(),c(Dt,{key:`terminal-`+m.value,service:S.value,processes:w.value},null,8,[`service`,`processes`])):_.value===`metrics`?(P(),c(Rt,{key:`metrics-`+m.value,service:S.value,processes:w.value},null,8,[`service`,`processes`])):_.value===`config`?(P(),c(Ro,{key:`config-`+m.value,service:S.value,"project-id":T.value,onRemoveService:E},null,8,[`service`,`project-id`])):_.value===`git`?(P(),c(K,{key:`git-`+m.value,"service-id":m.value},null,8,[`service-id`])):_.value===`wiki`?(P(),c(je,{key:`wiki-`+m.value,scope:`service:${m.value}`},null,8,[`scope`])):d(``,!0)])):x.value?(P(),v(`div`,Bo)):(P(),v(`div`,Vo,[r(`p`,null,s(H(o)(`serviceDetail.notFound`)),1)]))}}),[[`__scopeId`,`data-v-e5220f62`]]);export{Ho as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.service-form-page[data-v-3efdfa72]{max-width:800px;margin:0 auto;padding:1.5rem}.page-header[data-v-3efdfa72]{align-items:center;gap:.5rem;margin-bottom:1.5rem;display:flex}.page-header h1[data-v-3efdfa72]{margin:0;font-size:1.5rem;font-weight:700}.restart-banner[data-v-3efdfa72]{background:var(--p-yellow-100,#fef3c7);border:1px solid var(--p-yellow-400,#f59e0b);color:var(--p-yellow-900,#78350f);border-radius:6px;align-items:center;gap:.75rem;margin-bottom:1rem;padding:.75rem 1rem;font-size:.9rem;display:flex}.restart-banner span[data-v-3efdfa72]{flex:1}.loading-container[data-v-3efdfa72]{justify-content:center;padding:3rem 0;display:flex}.service-form[data-v-3efdfa72]{flex-direction:column;gap:0;display:flex}.form-section[data-v-3efdfa72]{flex-direction:column;gap:1rem;display:flex}.section-header[data-v-3efdfa72]{justify-content:space-between;align-items:center;display:flex}.section-header h3[data-v-3efdfa72]{margin:0;font-size:1.05rem;font-weight:600}.form-row[data-v-3efdfa72]{align-items:flex-start;gap:1rem;display:flex}.flex-1[data-v-3efdfa72]{flex:1}.form-group[data-v-3efdfa72]{flex-direction:column;gap:.3rem;display:flex}.form-group label[data-v-3efdfa72]{font-size:.875rem;font-weight:500}.form-hint[data-v-3efdfa72]{color:var(--p-text-muted-color);font-size:.78rem}.switch-group[data-v-3efdfa72]{flex-direction:row;align-items:center;gap:.6rem}.switch-group label[data-v-3efdfa72]{font-weight:400}.w-full[data-v-3efdfa72]{width:100%}.empty-env[data-v-3efdfa72]{text-align:center;color:var(--p-text-muted-color);border:1px dashed var(--p-content-border-color);border-radius:6px;padding:.75rem}.env-row[data-v-3efdfa72]{align-items:center;gap:.5rem;display:flex}.env-key[data-v-3efdfa72]{width:200px;font-family:Fira Code,Cascadia Code,monospace;font-size:.85rem}.env-eq[data-v-3efdfa72]{color:var(--p-text-muted-color);font-weight:700}.env-value[data-v-3efdfa72]{flex:1;font-family:Fira Code,Cascadia Code,monospace;font-size:.85rem}.form-actions[data-v-3efdfa72]{justify-content:flex-end;gap:.5rem;padding-top:.5rem;display:flex}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{En as e,Fi as t,Ga as n,Gi as r,Ia as i,In as a,Li as o,Oi as s,Pi as c,Ri as l,Ui as u,Xt as ee,Zn as d,Zt as f,ca as te,cn as p,f as ne,fa as m,hr as re,ji as h,jn as ie,ka as ae,ki as g,lr as oe,ma as se,no as _,pt as ce,qa as v,qn as y,ur as le,ut as ue,yn as de,yr as fe}from"./index-PMr5ScNs.js";import{n as b}from"./plus-BY4yX4ZS.js";import{t as pe}from"./fieldset-CCZ1tJUm.js";import{t as me}from"./toggleswitch-CEiGEBl3.js";import{t as he}from"./autocomplete-BTMTTAk9.js";import{t as x}from"./divider-p4BForJk.js";var ge={class:`service-form-page`},_e={class:`page-header`},ve={key:0,class:`restart-banner`},ye={key:1,class:`loading-container`},be={class:`form-section`},S={class:`form-group`},C={for:`svc-project`},w={class:`form-hint`},T={class:`form-group`},E={for:`svc-agent`},D={class:`form-hint`},O={class:`form-group`},k={for:`svc-name`},A={class:`form-hint`},j={class:`form-actions`},M={class:`form-section`},N={class:`form-row`},xe={class:`form-group flex-1`},Se={for:`svc-name-edit`},Ce={class:`form-group`,style:{width:`160px`}},we={for:`svc-runner`},Te={class:`form-group`},Ee={for:`svc-agent-edit`},De={class:`form-hint`},Oe={class:`form-row`},ke={class:`form-group flex-1`},Ae={for:`svc-cwd`},je={class:`form-group`,style:{"min-width":`200px`}},Me={for:`svc-ports`},Ne={class:`form-group switch-group`},Pe={for:`svc-autorestart`},Fe={class:`form-section`},P={class:`section-header`},Ie={key:0,class:`empty-env`},Le={class:`form-group`},Re={for:`hc-path`},ze={class:`form-row`},Be={class:`form-group flex-1`},Ve={for:`hc-interval`},He={class:`form-group flex-1`},Ue={for:`hc-timeout`},We={class:`form-group flex-1`},Ge={for:`hc-retries`},F=`__inherit__`,I=y(r({__name:`ServiceFormPage`,props:{id:{}},setup(r){let y=r,I=le(),Ke=oe(),L=re(),R=ee(),z=ce(),B=ue(),V=de(),qe=ne(),{t:H}=fe(),U=c(()=>!!y.id),W=c(()=>Ke.query.projectId),G=v(!1),K=v(!1),q=v(null),J=v(null),Y=v(!1),X=n({projectId:``,agentId:F,name:``,cwd:``,ports:[],runner:`native`,autoRestart:!1,healthCheck:{enabled:!1,path:``,interval:3e4,timeout:5e3,retries:3}}),Z=v([]),Je=[{label:`Native`,value:`native`},{label:`Docker`,value:`docker`}],Ye=c(()=>R.projects.map(e=>({label:e.name,value:e.id}))),Q=c(()=>[{label:H(`serviceForm.agentInherit`),value:F},...B.agents.map(e=>({label:`${e.config.name} ${e.status.connected?`(Online)`:`(Offline)`}`,value:e.config.id}))]);function Xe(){Z.value=[...Z.value,{key:``,value:``,isSecret:!1}]}function Ze(e){Z.value=Z.value.filter((t,n)=>n!==e)}function Qe(){let e={},t=!1;for(let n of Z.value){let r=n.key.trim();r&&(e[r]={value:{value:n.value,pre:``,post:``,isSecret:n.isSecret}},t=!0)}return t?e:void 0}async function $e(){if(y.id){G.value=!0;try{let e=await a.service.get.query({id:y.id});X.agentId=e.agentId??F,X.name=e.name,X.cwd=e.cwd??``,X.ports=(e.ports??[]).map(String),X.runner=e.runner,X.autoRestart=e.autoRestart,e.healthCheck&&(X.healthCheck.enabled=!0,X.healthCheck.path=e.healthCheck.path,X.healthCheck.interval=e.healthCheck.interval,X.healthCheck.timeout=e.healthCheck.timeout,X.healthCheck.retries=e.healthCheck.retries),e.variables&&typeof e.variables==`object`&&Object.keys(e.variables).length>0&&(Z.value=Object.entries(e.variables).map(([e,t])=>{let n=t;return{key:e,value:n.value.value??``,isSecret:n.value.isSecret??!1}}))}catch(e){L.add({severity:`error`,summary:H(`serviceForm.error`),detail:f(e)??H(`serviceForm.failedToLoad`),life:5e3}),I.back()}finally{G.value=!1}}}async function $(){if(!(!U.value||!y.id||K.value||G.value)){if(!X.name.trim()){L.add({severity:`warn`,summary:H(`serviceForm.validation`),detail:H(`serviceForm.nameRequired`),life:3e3});return}K.value=!0;try{let e={agentId:X.agentId===F?null:X.agentId||null,name:X.name.trim(),cwd:X.cwd.trim()||void 0,ports:X.ports.map(Number).filter(e=>e>0&&e<=65535),runner:X.runner,autoRestart:X.autoRestart,variables:Qe(),healthCheck:X.healthCheck.enabled?{path:X.healthCheck.path,interval:X.healthCheck.interval,timeout:X.healthCheck.timeout,retries:X.healthCheck.retries}:void 0};(await a.service.update.mutate({id:y.id,...e}))?.stoppedForAgentChange?(q.value=e.agentId,J.value=y.id,L.add({severity:`warn`,summary:H(`serviceForm.saved`),detail:H(`serviceForm.agentChangedServiceStopped`),life:4e3})):L.add({severity:`success`,summary:H(`serviceForm.saved`),life:1500})}catch(e){L.add({severity:`error`,summary:H(`serviceForm.error`),detail:f(e)??H(`serviceForm.failedToSave`),life:5e3})}finally{K.value=!1}}}async function et(){if(!(!q.value||!J.value)){Y.value=!0;try{await qe.start(q.value,J.value),q.value=null,J.value=null,L.add({severity:`success`,summary:H(`serviceForm.restarted`),life:2e3})}catch(e){L.add({severity:`error`,summary:H(`serviceForm.error`),detail:f(e),life:5e3})}finally{Y.value=!1}}}async function tt(){if(!X.name.trim()){L.add({severity:`warn`,summary:H(`serviceForm.validation`),detail:H(`serviceForm.nameRequired`),life:3e3});return}if(!X.projectId){L.add({severity:`warn`,summary:H(`serviceForm.validation`),detail:H(`serviceForm.projectRequired`),life:3e3});return}K.value=!0;try{let e=R.getByRef({id:X.projectId,orgId:V.activeOrgId})??R.getById(X.projectId),t=await z.create({name:X.name.trim(),...X.agentId&&X.agentId!==F?{agentId:X.agentId}:{},projectId:X.projectId,orgId:e?.orgId??null});if(!t)throw Error(z.error??`Failed to create service`);await R.addService(e??{id:X.projectId},t.id),L.add({severity:`success`,summary:H(`serviceForm.serviceCreated`),detail:H(`serviceForm.configureAfterCreate`),life:3e3}),I.push({name:`service-detail`,params:{id:t.id,tab:`config`}})}catch(e){L.add({severity:`error`,summary:H(`serviceForm.error`),detail:f(e)??H(`serviceForm.failedToSave`),life:5e3})}finally{K.value=!1}}return te(async()=>{await Promise.all([R.fetchAll(),B.fetchAll()]),W.value?X.projectId=W.value:!X.projectId&&V.activeProjectId&&(X.projectId=V.activeProjectId),U.value&&await $e()}),(n,r)=>(m(),l(`div`,ge,[t(`div`,_e,[u(_(d),{icon:`pi pi-arrow-left`,severity:`secondary`,text:``,rounded:``,onClick:r[0]||=e=>_(I).back()}),t(`h1`,null,i(U.value?_(H)(`serviceForm.editTitle`):_(H)(`serviceForm.createTitle`)),1)]),J.value?(m(),l(`div`,ve,[t(`span`,null,i(_(H)(`serviceForm.agentChangedServiceStopped`)),1),u(_(d),{label:_(H)(`serviceForm.restartNow`),icon:`pi pi-play`,severity:`warning`,size:`small`,loading:Y.value,onClick:et},null,8,[`label`,`loading`]),u(_(d),{icon:`pi pi-times`,severity:`secondary`,text:``,rounded:``,size:`small`,onClick:r[1]||=e=>{J.value=null,q.value=null}})])):o(``,!0),G.value?(m(),l(`div`,ye,[u(_(ie))])):(m(),l(`form`,{key:2,class:`service-form`,onSubmit:g(tt,[`prevent`])},[U.value?(m(),l(h,{key:1},[t(`div`,M,[t(`div`,N,[t(`div`,xe,[t(`label`,Se,i(_(H)(`serviceForm.nameLabelShort`)),1),u(_(e),{id:`svc-name-edit`,modelValue:X.name,"onUpdate:modelValue":r[6]||=e=>X.name=e,placeholder:`my-service`,class:`w-full`,onBlur:$,onKeydown:s(g($,[`prevent`]),[`enter`])},null,8,[`modelValue`,`onKeydown`])]),t(`div`,Ce,[t(`label`,we,i(_(H)(`serviceForm.runnerLabel`)),1),u(_(p),{id:`svc-runner`,modelValue:X.runner,"onUpdate:modelValue":r[7]||=e=>X.runner=e,options:Je,optionLabel:`label`,optionValue:`value`,class:`w-full`,onChange:$},null,8,[`modelValue`])])]),t(`div`,Te,[t(`label`,Ee,i(_(H)(`serviceForm.agentLabel`)),1),u(_(p),{id:`svc-agent-edit`,modelValue:X.agentId,"onUpdate:modelValue":r[8]||=e=>X.agentId=e,options:Q.value,optionLabel:`label`,optionValue:`value`,class:`w-full`,onChange:$},null,8,[`modelValue`,`options`]),t(`small`,De,i(_(H)(`serviceForm.agentHintEdit`)),1)]),t(`div`,Oe,[t(`div`,ke,[t(`label`,Ae,i(_(H)(`serviceForm.cwdLabel`)),1),u(_(e),{id:`svc-cwd`,modelValue:X.cwd,"onUpdate:modelValue":r[9]||=e=>X.cwd=e,placeholder:`.`,class:`w-full`,onBlur:$,onKeydown:s(g($,[`prevent`]),[`enter`])},null,8,[`modelValue`,`onKeydown`])]),t(`div`,je,[t(`label`,Me,i(_(H)(`serviceForm.portsLabel`)),1),u(_(he),{inputId:`svc-ports`,modelValue:X.ports,"onUpdate:modelValue":r[10]||=e=>X.ports=e,multiple:``,typeahead:!1,placeholder:_(H)(`serviceForm.portsPlaceholder`),class:`w-full`,onChange:$},null,8,[`modelValue`,`placeholder`])])]),t(`div`,Ne,[u(_(me),{modelValue:X.autoRestart,"onUpdate:modelValue":r[11]||=e=>X.autoRestart=e,inputId:`svc-autorestart`,onChange:$},null,8,[`modelValue`]),t(`label`,Pe,i(_(H)(`serviceForm.autoRestart`)),1)])]),u(_(x)),t(`div`,Fe,[t(`div`,P,[t(`h3`,null,i(_(H)(`serviceForm.envVars`)),1),u(_(d),{label:_(H)(`serviceForm.addEnvVar`),icon:`pi pi-plus`,severity:`secondary`,size:`small`,onClick:Xe},null,8,[`label`])]),Z.value.length===0?(m(),l(`div`,Ie,[t(`small`,null,i(_(H)(`serviceForm.noEnvVars`)),1)])):o(``,!0),(m(!0),l(h,null,se(Z.value,(n,i)=>(m(),l(`div`,{key:i,class:`env-row`},[u(_(e),{modelValue:n.key,"onUpdate:modelValue":e=>n.key=e,placeholder:`KEY`,class:`env-key`,onBlur:$,onKeydown:s(g($,[`prevent`]),[`enter`])},null,8,[`modelValue`,`onUpdate:modelValue`,`onKeydown`]),r[17]||=t(`span`,{class:`env-eq`},`=`,-1),u(_(e),{modelValue:n.value,"onUpdate:modelValue":e=>n.value=e,placeholder:`value`,class:`env-value`,onBlur:$,onKeydown:s(g($,[`prevent`]),[`enter`])},null,8,[`modelValue`,`onUpdate:modelValue`,`onKeydown`]),u(_(d),{icon:`pi pi-trash`,severity:`danger`,text:``,rounded:``,size:`small`,onClick:()=>{Ze(i),$()}},null,8,[`onClick`])]))),128))]),u(_(x)),u(_(pe),{legend:_(H)(`serviceForm.healthCheck`),toggleable:!0,collapsed:!X.healthCheck.enabled,onToggle:r[16]||=e=>{X.healthCheck.enabled=!e.value,$()}},{default:ae(()=>[t(`div`,Le,[t(`label`,Re,i(_(H)(`serviceForm.healthCheckPath`)),1),u(_(e),{id:`hc-path`,modelValue:X.healthCheck.path,"onUpdate:modelValue":r[12]||=e=>X.healthCheck.path=e,placeholder:`/health`,class:`w-full`,onBlur:$,onKeydown:s(g($,[`prevent`]),[`enter`])},null,8,[`modelValue`,`onKeydown`])]),t(`div`,ze,[t(`div`,Be,[t(`label`,Ve,i(_(H)(`serviceForm.interval`)),1),u(_(b),{id:`hc-interval`,modelValue:X.healthCheck.interval,"onUpdate:modelValue":r[13]||=e=>X.healthCheck.interval=e,min:1e3,step:1e3,class:`w-full`,onBlur:$,onKeydown:s(g($,[`prevent`]),[`enter`])},null,8,[`modelValue`,`onKeydown`])]),t(`div`,He,[t(`label`,Ue,i(_(H)(`serviceForm.timeout`)),1),u(_(b),{id:`hc-timeout`,modelValue:X.healthCheck.timeout,"onUpdate:modelValue":r[14]||=e=>X.healthCheck.timeout=e,min:500,step:500,class:`w-full`,onBlur:$,onKeydown:s(g($,[`prevent`]),[`enter`])},null,8,[`modelValue`,`onKeydown`])]),t(`div`,We,[t(`label`,Ge,i(_(H)(`serviceForm.retries`)),1),u(_(b),{id:`hc-retries`,modelValue:X.healthCheck.retries,"onUpdate:modelValue":r[15]||=e=>X.healthCheck.retries=e,min:0,max:20,class:`w-full`,onBlur:$,onKeydown:s(g($,[`prevent`]),[`enter`])},null,8,[`modelValue`,`onKeydown`])])])]),_:1},8,[`legend`,`collapsed`]),u(_(x))],64)):(m(),l(h,{key:0},[t(`div`,be,[t(`div`,S,[t(`label`,C,i(_(H)(`serviceForm.projectLabel`)),1),u(_(p),{id:`svc-project`,modelValue:X.projectId,"onUpdate:modelValue":r[2]||=e=>X.projectId=e,options:Ye.value,optionLabel:`label`,optionValue:`value`,placeholder:_(H)(`serviceForm.projectPlaceholder`),class:`w-full`},null,8,[`modelValue`,`options`,`placeholder`]),t(`small`,w,i(_(H)(`serviceForm.projectHint`)),1)]),t(`div`,T,[t(`label`,E,i(_(H)(`serviceForm.agentLabel`)),1),u(_(p),{id:`svc-agent`,modelValue:X.agentId,"onUpdate:modelValue":r[3]||=e=>X.agentId=e,options:Q.value,optionLabel:`label`,optionValue:`value`,placeholder:_(H)(`serviceForm.agentInherit`),"show-clear":``,class:`w-full`},null,8,[`modelValue`,`options`,`placeholder`]),t(`small`,D,i(_(H)(`serviceForm.agentHint`)),1)]),t(`div`,O,[t(`label`,k,i(_(H)(`serviceForm.nameLabel`)),1),u(_(e),{id:`svc-name`,modelValue:X.name,"onUpdate:modelValue":r[4]||=e=>X.name=e,placeholder:`my-service`,class:`w-full`},null,8,[`modelValue`]),t(`small`,A,i(_(H)(`serviceForm.nameConfigHint`)),1)])]),u(_(x)),t(`div`,j,[u(_(d),{label:_(H)(`serviceForm.cancel`),severity:`secondary`,text:``,onClick:r[5]||=e=>_(I).back()},null,8,[`label`]),u(_(d),{label:_(H)(`serviceForm.create`),icon:`pi pi-check`,loading:K.value,type:`submit`},null,8,[`label`,`loading`])])],64))],32))]))}}),[[`__scopeId`,`data-v-3efdfa72`]]);export{I as default};
|