@runeya/runeya 2.0.21 → 2.0.24

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.
Files changed (321) hide show
  1. package/agent/index.js +103 -9
  2. package/agent/index.js.map +1 -1
  3. package/agent-manager-2P4THUVA.js +7 -0
  4. package/{chunk-PUNE7P6S.js → chunk-Y2R42AXQ.js} +848 -561
  5. package/chunk-Y2R42AXQ.js.map +1 -0
  6. package/index.js +92 -43
  7. package/index.js.map +1 -1
  8. package/package.json +1 -1
  9. package/{src-K32WI425.js → src-EGBDYHL5.js} +1540 -1119
  10. package/src-EGBDYHL5.js.map +1 -0
  11. package/web/assets/AgentScalarChatInterface.vue-Bk_cXx74.js +13 -0
  12. package/web/assets/AgentTerminalPage-DqXrABlh.js +1 -0
  13. package/web/assets/AiChatPage-B3P7qefE.js +1 -0
  14. package/web/assets/AppLayout-B2e7K0cZ.js +1 -0
  15. package/web/assets/{AuditPage-CUdrFc3C.js → AuditPage-B55qp9MV.js} +1 -1
  16. package/web/assets/{CloudAccountPage-am6AxJRB.js → CloudAccountPage-CGyW79m_.js} +1 -1
  17. package/web/assets/CloudAccountPage-DTity1N0.js +1 -0
  18. package/web/assets/CloudMessagingPage-7RQRbAOB.js +2 -0
  19. package/web/assets/CloudMessagingPage-BUnfNsBz.css +1 -0
  20. package/web/assets/{DashboardPage-pA2caWR9.js → DashboardPage-CwmCbP3t.js} +1 -1
  21. package/web/assets/{EditorIcon-C9E8hRyM.js → EditorIcon-BaldhaS8.js} +1 -1
  22. package/web/assets/{EnvironmentForm-XKpxQ-45.js → EnvironmentForm-Da52SUx4.js} +2 -2
  23. package/web/assets/EnvironmentFormPage-Bab5iOWS.js +1 -0
  24. package/web/assets/EnvironmentListPage-O1fIWq-g.js +1 -0
  25. package/web/assets/EnvironmentSelector-BWzLYssP.js +1 -0
  26. package/web/assets/KanbanBoardPage-BOMHKLHX.css +1 -0
  27. package/web/assets/KanbanBoardPage-BvtIaHqG.js +4 -0
  28. package/web/assets/KanbanListPage-BoNcgR3h.css +1 -0
  29. package/web/assets/KanbanListPage-Cv_QJF00.js +1 -0
  30. package/web/assets/LaunchProjectPage-uB7iIMG1.js +1 -0
  31. package/web/assets/{LaunchServicesPage-CViec72c.js → LaunchServicesPage-1ZN1JYqH.js} +1 -1
  32. package/web/assets/LogViewer-BJxpIK11.js +3 -0
  33. package/web/assets/{ProcessControls-D97-A3dI.js → ProcessControls-C2EYsD-P.js} +1 -1
  34. package/web/assets/ProcessDetailPage-DdOfegjU.js +1 -0
  35. package/web/assets/{ProcessMetrics-CNJ30_ef.js → ProcessMetrics-DpDxpUpO.js} +2 -2
  36. package/web/assets/ProjectDetailPage-DtwRjTew.js +1 -0
  37. package/web/assets/ProjectListPage-D9SUNEFu.js +1 -0
  38. package/web/assets/{RandomJobTestPage-CnY2f-qz.js → RandomJobTestPage-OoAk9WAJ.js} +1 -1
  39. package/web/assets/{ScenarioEditorPage-CBZp7Q34.css → ScenarioEditorPage-GmFIXPDj.css} +1 -1
  40. package/web/assets/ScenarioEditorPage-LhEs4hjS.js +14 -0
  41. package/web/assets/SendToChatDialog-CZWy1K4A.js +1 -0
  42. package/web/assets/ServiceControlsBar-CU6b2KBJ.js +1 -0
  43. package/web/assets/{ServiceDetailPage-DhE1LYrn.css → ServiceDetailPage-BvoD3SB6.css} +1 -1
  44. package/web/assets/ServiceDetailPage-CSaPyV_v.js +2 -0
  45. package/web/assets/ServiceFormPage-D9NFCmmW.js +1 -0
  46. package/web/assets/SettingsPage-BMclTDLy.css +1 -0
  47. package/web/assets/SettingsPage-DXlBFfBq.js +2062 -0
  48. package/web/assets/{SetupPage-CzabsTON.js → SetupPage-dqqf_M_p.js} +1 -1
  49. package/web/assets/UnlockPage-ClEawxOC.css +1 -0
  50. package/web/assets/UnlockPage-DjjpY02d.js +1 -0
  51. package/web/assets/VariablesTable-B4h9eNC_.css +1 -0
  52. package/web/assets/VariablesTable-BFgRnjza.js +1 -0
  53. package/web/assets/{VersionBadge-DUE17MrD.js → VersionBadge-ToW3NGSQ.js} +1 -1
  54. package/web/assets/WikiPage-Djisdsae.js +1 -0
  55. package/web/assets/{WikiView-CUBKfTT-.css → WikiView-CaUVD3f1.css} +1 -1
  56. package/web/assets/WikiView-CiATkY8l.js +1 -0
  57. package/web/assets/{add-scalar-classes-Cfh7_IWy.js → add-scalar-classes-DGwycuRW.js} +3 -3
  58. package/web/assets/auth-errors-DEObS1lG.js +1 -0
  59. package/web/assets/{autocomplete-CrWQ5zMj.js → autocomplete-DP0sGong.js} +1 -1
  60. package/web/assets/{basic-shape-diamond.svg-pjhwN4JT.js → basic-shape-diamond.svg-B0FzUXGN.js} +1 -1
  61. package/web/assets/{basic-shape-hexagon.svg-D0yEDOCC.js → basic-shape-hexagon.svg-BuI9rv44.js} +1 -1
  62. package/web/assets/{basic-shape-primary-circle-ellipse-round.svg-DvZ7CdgE.js → basic-shape-primary-circle-ellipse-round.svg-C0WlStV7.js} +1 -1
  63. package/web/assets/{basic-shape-primary-square-rectangle.svg-ChB1hiGR.js → basic-shape-primary-square-rectangle.svg-ByMGtNMn.js} +1 -1
  64. package/web/assets/{basic-shape-shield.svg-Bxrmr3jg.js → basic-shape-shield.svg-h6znjRmZ.js} +1 -1
  65. package/web/assets/{browser-C2YmKQw8.js → browser-DJeF2lho.js} +1 -1
  66. package/web/assets/{browser-CvQ_J2u9.js → browser-oekISqUb.js} +1 -1
  67. package/web/assets/{card-CpyeL2dI.js → card-B7-be48x.js} +1 -1
  68. package/web/assets/{checkbox-DWNV_RaS.js → checkbox-DDSZK_Pi.js} +1 -1
  69. package/web/assets/{chip-8cRcc2L3.js → chip-BVSQ-56q.js} +1 -1
  70. package/web/assets/{client-DNj6VDDb.js → client-DWfGqqLr.js} +1 -1
  71. package/web/assets/cloud-chat.store-BLFChRpl.js +1 -0
  72. package/web/assets/cloud-client-GmxBhiFl.js +1 -0
  73. package/web/assets/{column-DtLr_xcq.js → column-BHRqZfnh.js} +7 -7
  74. package/web/assets/{computer-device-desktop-monitor.svg-CLGySxTI.js → computer-device-desktop-monitor.svg-CL9XulYR.js} +1 -1
  75. package/web/assets/{computer-device-desktop.svg-DJ9n7_Sq.js → computer-device-desktop.svg-CKWeVTzO.js} +1 -1
  76. package/web/assets/{computer-device-laptop.svg-k6zcRWN4.js → computer-device-laptop.svg-wAkdRlEi.js} +1 -1
  77. package/web/assets/{computer-device-mobile-phone-android-samsung-back.svg-pwKHMzIK.js → computer-device-mobile-phone-android-samsung-back.svg-DOahzxu1.js} +1 -1
  78. package/web/assets/{computer-device-mobile-phone-android-samsung.svg-CR796QT_.js → computer-device-mobile-phone-android-samsung.svg-FBZO3WLS.js} +1 -1
  79. package/web/assets/{computer-device-mobile-phone-iphone-x-back.svg-CY2r7WXK.js → computer-device-mobile-phone-iphone-x-back.svg-CCLknBWv.js} +1 -1
  80. package/web/assets/{computer-device-mobile-phone-iphone-x.svg-BHISnTWX.js → computer-device-mobile-phone-iphone-x.svg-CWdT8wN4.js} +1 -1
  81. package/web/assets/{computer-device-mobile-tablet-touch.svg-DQqDUvnk.js → computer-device-mobile-tablet-touch.svg-Bx1A6qUQ.js} +1 -1
  82. package/web/assets/{computer-device-mobile-tablet.svg-4Ab5vdIo.js → computer-device-mobile-tablet.svg-JpmP6yqf.js} +1 -1
  83. package/web/assets/{computer-device-network-ethernet-cat6.svg-DJf04S68.js → computer-device-network-ethernet-cat6.svg-D6WFbLbI.js} +1 -1
  84. package/web/assets/{computer-device-network-lan-www.svg-CaETgcOJ.js → computer-device-network-lan-www.svg-U8NMAi5b.js} +1 -1
  85. package/web/assets/{computer-device-network-wifi-connection.svg-PndfmFuy.js → computer-device-network-wifi-connection.svg-FuRBLyH4.js} +1 -1
  86. package/web/assets/{computer-device-network-wifi-router.svg-CBLwEbOV.js → computer-device-network-wifi-router.svg-BMzCP2Aw.js} +1 -1
  87. package/web/assets/{cssMode-RVPpAuHz.js → cssMode--4DE_809.js} +1 -1
  88. package/web/assets/{divider-CYFRNVal.js → divider-hPOrl1Iy.js} +1 -1
  89. package/web/assets/{ecology-science-erlenmeyer-flask.svg-BYXK2uKa.js → ecology-science-erlenmeyer-flask.svg-Bnte5Nm-.js} +1 -1
  90. package/web/assets/{fieldset-BCXBPIiB.js → fieldset-BSwilV-Y.js} +1 -1
  91. package/web/assets/{freemarker2-B6guP0jO.js → freemarker2-DUNAk_0P.js} +1 -1
  92. package/web/assets/{handlebars-BxlL79LN.js → handlebars-CoM2DS_1.js} +1 -1
  93. package/web/assets/{html-Dr0M60O0.js → html-CgEDNZ_R.js} +1 -1
  94. package/web/assets/{htmlMode-B63yAhXq.js → htmlMode-QDDBWVzd.js} +1 -1
  95. package/web/assets/{image-flash-lightning.svg-DVtJFd09.js → image-flash-lightning.svg-ZIxta1IB.js} +1 -1
  96. package/web/assets/{image-picture-flower.svg-BaBdyWt-.js → image-picture-flower.svg-BXxhgW1Q.js} +1 -1
  97. package/web/assets/{index-BTYNCNK0.js → index-Dl-HyfHx.js} +244 -244
  98. package/web/assets/{index-DS4VL_1S.css → index-gKo3WNkm.css} +1 -1
  99. package/web/assets/{interface-alert-exclamation-diamond.svg-BQYncN9j.js → interface-alert-exclamation-diamond.svg-bVfL6jBy.js} +1 -1
  100. package/web/assets/{interface-alert-exclamation-triangle-warning.svg-BvQxARpD.js → interface-alert-exclamation-triangle-warning.svg-BrapXyrc.js} +1 -1
  101. package/web/assets/{interface-alert-information-circle.svg-BbiwUtTt.js → interface-alert-information-circle.svg--W3bUw5n.js} +1 -1
  102. package/web/assets/{interface-award-crown.svg-BJs2BJ9S.js → interface-award-crown.svg-CBbbHFIN.js} +1 -1
  103. package/web/assets/{interface-bookmark.svg-WUL572zM.js → interface-bookmark-tag.svg-C4_v-zTY.js} +1 -1
  104. package/web/assets/{interface-bookmark-tag.svg-huwK9o4X.js → interface-bookmark.svg-CIY69-iu.js} +1 -1
  105. package/web/assets/{interface-calendar-date-one.svg-CEkOALKM.js → interface-calendar-date-one.svg-CD7WxblA.js} +1 -1
  106. package/web/assets/{interface-content-book-open-pages.svg-CDxvdidz.js → interface-content-book-open-pages.svg-BamW-eNv.js} +1 -1
  107. package/web/assets/{interface-content-book-page.svg-ROxK9a-V.js → interface-content-book-page.svg-CpHhLWQE.js} +1 -1
  108. package/web/assets/{interface-content-file.svg-69XGQGxu.js → interface-content-file.svg-BmqLN3iR.js} +1 -1
  109. package/web/assets/interface-content-folder.svg-B2phMZXd.js +1 -0
  110. package/web/assets/{interface-content-folder.svg-BjXgivIz.js → interface-content-folder.svg-ffbcORbT.js} +1 -1
  111. package/web/assets/{interface-copy-clipboard.svg-BAAZ1QLS.js → interface-copy-clipboard.svg-MdbbmqXS.js} +1 -1
  112. package/web/assets/{interface-edit-attachment.svg-BCmyBBsd.js → interface-edit-attachment.svg-DtAVj6tp.js} +1 -1
  113. package/web/assets/{interface-edit-binocular.svg-BI3JPE3j.js → interface-edit-binocular.svg-DfT11Y7N.js} +1 -1
  114. package/web/assets/{interface-edit-magic-wand.svg-DhECH5yw.js → interface-edit-magic-wand.svg-D4mLRHJs.js} +1 -1
  115. package/web/assets/{interface-edit-tool-paint-roller.svg-0-Os9Flg.js → interface-edit-tool-paint-roller.svg-Cxa7Ct4C.js} +1 -1
  116. package/web/assets/{interface-edit-tool-pencil.svg-CM5UI5Rv.js → interface-edit-tool-pencil.svg-IRM3BHKY.js} +1 -1
  117. package/web/assets/{interface-favorite-award.svg-BZNkuFiE.js → interface-favorite-award.svg-CLGZ65SX.js} +1 -1
  118. package/web/assets/{interface-favorite-flag.svg-CeHd37SC.js → interface-favorite-flag.svg-ju-VMCAF.js} +1 -1
  119. package/web/assets/{interface-favorite-heart.svg-D5dJ4sOz.js → interface-favorite-heart.svg-DsWpztN8.js} +1 -1
  120. package/web/assets/{interface-favorite-star.svg-B7YeWzmv.js → interface-favorite-star.svg-CCPUYvBO.js} +1 -1
  121. package/web/assets/{interface-favorite-stars-sparkles.svg-BwqCtLSB.js → interface-favorite-stars-sparkles.svg-nf2ra-Mg.js} +1 -1
  122. package/web/assets/{interface-hierarchy-flowchart.svg-q70-KJ80.js → interface-hierarchy-flowchart.svg-CPrjsUHp.js} +1 -1
  123. package/web/assets/{interface-home-house.svg-CUco1zSk.js → interface-home-house.svg-DyWL4dgs.js} +1 -1
  124. package/web/assets/{interface-hyperlink.svg-D6Z-QbxJ.js → interface-hyperlink.svg-DgjI4lGJ.js} +1 -1
  125. package/web/assets/{interface-lighting-brightness.svg-DDJ8wIbt.js → interface-lighting-brightness.svg-BhomgGV0.js} +1 -1
  126. package/web/assets/{interface-lock-closed.svg-1GuN2t9d.js → interface-lock-closed.svg-CDDGuaUG.js} +1 -1
  127. package/web/assets/{interface-lock-open-unlock.svg-CmSL9GCo.js → interface-lock-open-unlock.svg-DxOzefwC.js} +1 -1
  128. package/web/assets/{interface-login-key.svg-Cnur4uLY.js → interface-login-key.svg-CLs728UT.js} +1 -1
  129. package/web/assets/{interface-search.svg-3TqtroIY.js → interface-search.svg-CSE2bUM-.js} +1 -1
  130. package/web/assets/{interface-setting-cog.svg-B7nRfZ1y.js → interface-setting-cog.svg-SfBQ-E_y.js} +1 -1
  131. package/web/assets/{interface-share-megaphone-bullhorn.svg-DraAk4oI.js → interface-share-megaphone-bullhorn.svg-Cg9QEbsW.js} +1 -1
  132. package/web/assets/{interface-share-rocket.svg-CGRtk6J4.js → interface-share-rocket.svg-V9fWt6R5.js} +1 -1
  133. package/web/assets/{interface-share-satellite.svg-COo3kZqu.js → interface-share-satellite.svg-BoAJlAy3.js} +1 -1
  134. package/web/assets/{interface-share-space-ship.svg-iYhfpKY2.js → interface-share-space-ship.svg-CWoqBiZI.js} +1 -1
  135. package/web/assets/{interface-share.svg-BqVe3lWw.js → interface-share.svg-DW6AG6rC.js} +1 -1
  136. package/web/assets/{interface-signal-square.svg-DmGT2kio.js → interface-signal-square.svg-DktTeL2e.js} +1 -1
  137. package/web/assets/{interface-time-clock-circle.svg-Djt_VZVX.js → interface-time-clock-circle.svg-BBnimglQ.js} +1 -1
  138. package/web/assets/{interface-time-hour-glass.svg-DxZVLqJ6.js → interface-time-hour-glass.svg-WNSRow4o.js} +1 -1
  139. package/web/assets/{interface-users-multiple.svg-n8dIXu9r.js → interface-users-multiple.svg-DoeSSDNX.js} +1 -1
  140. package/web/assets/{interface-weather-moon.svg-CExHl6HQ.js → interface-weather-moon.svg-BzUq31T3.js} +1 -1
  141. package/web/assets/{javascript-6lVkE6gP.js → javascript-CDsgZK6E.js} +1 -1
  142. package/web/assets/{jsonMode-CySg6s8T.js → jsonMode-BOQojnkz.js} +1 -1
  143. package/web/assets/{liquid-DSLZY9bf.js → liquid-CT8_Ig_a.js} +1 -1
  144. package/web/assets/{lspLanguageFeatures-C6Gb5-pg.js → lspLanguageFeatures-BW3wbtds.js} +1 -1
  145. package/web/assets/{mail-chat-bubble-square.svg-BqpIkvR_.js → mail-chat-bubble-square.svg-BB3D-jS5.js} +1 -1
  146. package/web/assets/{mail-send-email-paper-airplane.svg-DUkiRZ1x.js → mail-send-email-paper-airplane.svg-BGUFNdDy.js} +1 -1
  147. package/web/assets/{mail-send-envelope.svg-DjjLaPUo.js → mail-send-envelope.svg-CiEf_X3v.js} +1 -1
  148. package/web/assets/{mdx-DuCKQZ3-.js → mdx-BzJqzXG7.js} +1 -1
  149. package/web/assets/{message-CJ-X_z47.js → message-DQfiz3F1.js} +1 -1
  150. package/web/assets/{minus-RXlNS6-g.js → minus-Bh-ngAnz.js} +1 -1
  151. package/web/assets/modal-B6tgGww3.js +1 -0
  152. package/web/assets/{modal-DfNn2ioJ.js → modal-BH8tCrqE.js} +1 -1
  153. package/web/assets/{money-cashier-receipt.svg-CUzOL6J5.js → money-cashier-receipt.svg-nbLywLCi.js} +1 -1
  154. package/web/assets/{money-currency-dollar-pay.svg-CQY_KC9b.js → money-currency-dollar-pay.svg-HtpV_93j.js} +1 -1
  155. package/web/assets/{money-graph-arrow-increase.svg-BDu5i5aF.js → money-graph-arrow-increase.svg-BG4s2n8-.js} +1 -1
  156. package/web/assets/{money-graph-bar-chart-increase.svg-xBlBZYiv.js → money-graph-bar-chart-increase.svg-7ivMfz5M.js} +1 -1
  157. package/web/assets/{multiselect-BbY8SFyO.js → multiselect-CE72JxFr.js} +1 -1
  158. package/web/assets/{nature-ecology-leaf.svg-C_T6wTIZ.js → nature-ecology-leaf.svg-D60IfAE-.js} +1 -1
  159. package/web/assets/{password-B_pKmF_I.js → password-CZ-A_ePM.js} +1 -1
  160. package/web/assets/{phone-telephone.svg-DzUP7zCx.js → phone-telephone.svg-B0OCaSQr.js} +1 -1
  161. package/web/assets/{plus-DfsTcd_H.js → plus-DZy8IO4Z.js} +1 -1
  162. package/web/assets/process.store-XR7BoPqt.js +1 -0
  163. package/web/assets/{programming-bug.svg-C1NvPH7_.js → programming-bug.svg-DDZ7-1a6.js} +1 -1
  164. package/web/assets/{programming-cloud.svg-hVwd5xzu.js → programming-cloud.svg-BZHqbFE1.js} +1 -1
  165. package/web/assets/{programming-computer-database-server.svg-DXvcm62E.js → programming-computer-database-server.svg-CPK0axOF.js} +1 -1
  166. package/web/assets/{programming-computer-database.svg-w2w_GH3u.js → programming-computer-database.svg-Dat_iKWZ.js} +1 -1
  167. package/web/assets/{programming-module-four-layout.svg-DLcwogv0.js → programming-module-four-layout.svg-DYTRTKmF.js} +1 -1
  168. package/web/assets/{programming-module-three.svg-Cfjjs8tf.js → programming-module-three.svg-CU563xPB.js} +1 -1
  169. package/web/assets/{programming-module.svg-ChyMdD4E.js → programming-module.svg-DdRe2d3E.js} +1 -1
  170. package/web/assets/{programming-script-code.svg-D8N99_E3.js → programming-script-code.svg-D5dDzg1B.js} +1 -1
  171. package/web/assets/{python-BT-UPVMQ.js → python-C0tzbgs4.js} +1 -1
  172. package/web/assets/{radiobutton-C9iiy1zq.js → radiobutton-BYEniO96.js} +1 -1
  173. package/web/assets/{razor-DKUraACi.js → razor-BNCtUdbo.js} +1 -1
  174. package/web/assets/router-BpJBXGio.js +1 -0
  175. package/web/assets/{settings.store-PSHvWAzl.js → settings.store-hW2r6ht2.js} +1 -1
  176. package/web/assets/{shopping-cart.svg-C_kTBKvf.js → shopping-cart.svg-yNDOoxiE.js} +1 -1
  177. package/web/assets/{shopping-gift-present.svg-DIfbUecw.js → shopping-gift-present.svg-ZAFtf911.js} +1 -1
  178. package/web/assets/{shopping-shipping-box-parcel-package.svg-DgeqoYij.js → shopping-shipping-box-parcel-package.svg-C_128hOx.js} +1 -1
  179. package/web/assets/{TiptapEditor-CI1pNNDH.js → src-BTZHXzoT.js} +78 -78
  180. package/web/assets/src-CmzYYWZd.css +1 -0
  181. package/web/assets/src-DtlOQm4K.js +1 -0
  182. package/web/assets/src-ZfecJkW9.css +1 -0
  183. package/web/assets/{tabpanel-tgozju6m.js → tabpanel-BiifLLS6.js} +2 -2
  184. package/web/assets/{tag-new-circle.svg-yzrCIErB.js → tag-new-circle.svg-0OOws8vC.js} +1 -1
  185. package/web/assets/{travel-map-earth-globe.svg-C9CMICQQ.js → travel-map-earth-globe.svg-CvwB8JlN.js} +1 -1
  186. package/web/assets/trpc-D0HTyuMG.js +1 -0
  187. package/web/assets/{tsMode-gblCXC3w.js → tsMode-CadFFP73.js} +1 -1
  188. package/web/assets/{typescript-DeVzlCKf.js → typescript-TsqAe_2a.js} +1 -1
  189. package/web/assets/useAiChatDrawer-2ELNp1KU.js +1 -0
  190. package/web/assets/useCloudOrg-BAtUa48Z.css +1 -0
  191. package/web/assets/useCloudOrg-DuypVndp.js +1 -0
  192. package/web/assets/{xml-UwUjH4rq.js → xml-bgdRCuvM.js} +1 -1
  193. package/web/assets/{yaml-DSs0npSB.js → yaml-BRUv0H85.js} +1 -1
  194. package/web/index.html +2 -2
  195. package/agent-manager-QPZUYLJA.js +0 -8
  196. package/chunk-LZWBXYUE.js +0 -354
  197. package/chunk-LZWBXYUE.js.map +0 -1
  198. package/chunk-PUNE7P6S.js.map +0 -1
  199. package/chunk-Q4N37KNN.js +0 -202
  200. package/chunk-Q4N37KNN.js.map +0 -1
  201. package/kanban-commands-53WWMCHQ.js +0 -14
  202. package/kanban-commands-53WWMCHQ.js.map +0 -1
  203. package/src-K32WI425.js.map +0 -1
  204. package/web/assets/AgentScalarChatInterface.vue-S7bbKRqw.js +0 -13
  205. package/web/assets/AgentTerminalPage-c0fCTCzP.js +0 -1
  206. package/web/assets/AiChatPage-B-kfiUI-.js +0 -1
  207. package/web/assets/AppLayout-COTo6zQf.js +0 -1
  208. package/web/assets/CloudAccountPage-H1QGj9tJ.js +0 -1
  209. package/web/assets/CloudMessagingPage-BEtd8B8B.js +0 -2
  210. package/web/assets/CloudMessagingPage-sgMxCh6j.css +0 -1
  211. package/web/assets/EnvironmentFormPage-DMpiq3Zx.js +0 -1
  212. package/web/assets/EnvironmentListPage-C21qJ3iw.js +0 -1
  213. package/web/assets/EnvironmentSelector-Be9yMkjY.js +0 -1
  214. package/web/assets/KanbanBoardPage-CyUTDl_W.css +0 -1
  215. package/web/assets/KanbanBoardPage-SNCSxTz7.js +0 -4
  216. package/web/assets/KanbanListPage-B3JpbFlv.css +0 -1
  217. package/web/assets/KanbanListPage-D-kgPmxI.js +0 -1
  218. package/web/assets/LaunchProjectPage-BbNDYePE.js +0 -1
  219. package/web/assets/LogViewer-CHyPfODD.js +0 -3
  220. package/web/assets/ProcessDetailPage-BlQJDM-W.js +0 -1
  221. package/web/assets/ProjectDetailPage-DdRYMfcl.js +0 -1
  222. package/web/assets/ProjectListPage-BDLXGuEj.js +0 -1
  223. package/web/assets/ScenarioEditorPage-CFNTrVlY.js +0 -14
  224. package/web/assets/SendToChatDialog-BJjY1MAh.css +0 -1
  225. package/web/assets/SendToChatDialog-CtGhyaOw.js +0 -1
  226. package/web/assets/ServiceControlsBar-m_AQmRiR.js +0 -1
  227. package/web/assets/ServiceDetailPage-RCl6IsBs.js +0 -2
  228. package/web/assets/ServiceFormPage-CIJ-tFub.js +0 -1
  229. package/web/assets/SettingsPage-CPF7w35a.css +0 -1
  230. package/web/assets/SettingsPage-tK-RiJrj.js +0 -2062
  231. package/web/assets/SetupKeyPage-CzB_AMfr.js +0 -1
  232. package/web/assets/SetupKeyPage-DoY1Ua1s.css +0 -1
  233. package/web/assets/TiptapEditor-bdEPMd-W.css +0 -1
  234. package/web/assets/UnlockPage-DWM5symg.js +0 -1
  235. package/web/assets/UnlockPage-EZOi-H7d.css +0 -1
  236. package/web/assets/VariablesTable-Bkv0MOKi.css +0 -1
  237. package/web/assets/VariablesTable-DoNJ4OIn.js +0 -1
  238. package/web/assets/WikiPage-COdO-49s.js +0 -1
  239. package/web/assets/WikiView-BS9HHroX.js +0 -1
  240. package/web/assets/auth-errors-D-uOLmKt.js +0 -1
  241. package/web/assets/cloud-chat.store-DHiYOkkN.js +0 -1
  242. package/web/assets/cloud-client-COpvz58o.js +0 -1
  243. package/web/assets/interface-content-folder.svg-Bijbx45w.js +0 -1
  244. package/web/assets/modal-BvVbc_6u.js +0 -1
  245. package/web/assets/process.store-BLMSPw2l.js +0 -1
  246. package/web/assets/router-DBNATEGs.js +0 -1
  247. package/web/assets/trpc-3qbDCsqO.js +0 -1
  248. package/web/assets/useAiChatDrawer-BtC-0qN-.js +0 -1
  249. /package/{agent-manager-QPZUYLJA.js.map → agent-manager-2P4THUVA.js.map} +0 -0
  250. /package/web/assets/{abap-lJFTLuI6.js → abap-DMmvWZUy.js} +0 -0
  251. /package/web/assets/{apex-Bp0KWav8.js → apex-D89PiTzU.js} +0 -0
  252. /package/web/assets/{azcli-DBOe7Uvy.js → azcli-ChnjTTA5.js} +0 -0
  253. /package/web/assets/{bat-Dk_NT_by.js → bat-uLzQ_FhK.js} +0 -0
  254. /package/web/assets/{bicep-B07Mrlc7.js → bicep-CMOK7Q1v.js} +0 -0
  255. /package/web/assets/{cameligo-DL5eNXGn.js → cameligo-D1AyojFH.js} +0 -0
  256. /package/web/assets/{clojure-BzV2Yqu_.js → clojure-D9JoUgXn.js} +0 -0
  257. /package/web/assets/{coffee-Bjlj5hmf.js → coffee-D-5sSToL.js} +0 -0
  258. /package/web/assets/{cpp-C9oth5qz.js → cpp-BqT_t_y9.js} +0 -0
  259. /package/web/assets/{csharp-HyGd049S.js → csharp-CuToYI91.js} +0 -0
  260. /package/web/assets/{csp-DjCDOBuX.js → csp-CffcxvlO.js} +0 -0
  261. /package/web/assets/{css-DIL8RTJ3.js → css-CUD0biQW.js} +0 -0
  262. /package/web/assets/{cypher-DX1zPXL5.js → cypher-ByyWL_9U.js} +0 -0
  263. /package/web/assets/{dart-BBQZd_ZZ.js → dart-B__ipcUn.js} +0 -0
  264. /package/web/assets/{dockerfile-Cj0CaWYx.js → dockerfile-DS-_8bWw.js} +0 -0
  265. /package/web/assets/{ecl-BjmWCTJg.js → ecl-DWsNCBUj.js} +0 -0
  266. /package/web/assets/{elixir-3uWoEjXX.js → elixir-OfjEy-3g.js} +0 -0
  267. /package/web/assets/{flow9-D4r739e9.js → flow9-BPX22hxS.js} +0 -0
  268. /package/web/assets/{fsharp-B3ycAx5T.js → fsharp-CVJcfIUn.js} +0 -0
  269. /package/web/assets/{go-DFHBjfCl.js → go-CfRHZ3yg.js} +0 -0
  270. /package/web/assets/{graphql-DBjIbM_e.js → graphql-BZaO3ttK.js} +0 -0
  271. /package/web/assets/{hcl-Buu_1Hsp.js → hcl-BF9-qUku.js} +0 -0
  272. /package/web/assets/{ini-CgzZhgz_.js → ini-BUvw6xhr.js} +0 -0
  273. /package/web/assets/{java-BczDO0q5.js → java-BZ5BNd2x.js} +0 -0
  274. /package/web/assets/{julia-B142kn-7.js → julia-DN38cgYT.js} +0 -0
  275. /package/web/assets/{kotlin-42XMP7p1.js → kotlin-CjEJKT8q.js} +0 -0
  276. /package/web/assets/{less-BCIsKRqU.js → less-DMEH_Nwq.js} +0 -0
  277. /package/web/assets/{lexon-DTDOH1dQ.js → lexon-CKQUX8Ov.js} +0 -0
  278. /package/web/assets/{lua-BrH-CeNs.js → lua-CuWjKLJ0.js} +0 -0
  279. /package/web/assets/{m3-D-eUeHOI.js → m3-CEp1bVrM.js} +0 -0
  280. /package/web/assets/{markdown-DwpSjZTn.js → markdown-DxtQ_puq.js} +0 -0
  281. /package/web/assets/{mips-DoGTrjVk.js → mips-Dx7qydpO.js} +0 -0
  282. /package/web/assets/{msdax-CQ8McnjQ.js → msdax-DpNCaSiO.js} +0 -0
  283. /package/web/assets/{mysql-Cj3do0ZO.js → mysql-C3xsBDPP.js} +0 -0
  284. /package/web/assets/{objective-c-BZbR8TG8.js → objective-c-BbaVHCX1.js} +0 -0
  285. /package/web/assets/{pascal-23PRDHRq.js → pascal-sDju2faq.js} +0 -0
  286. /package/web/assets/{pascaligo-CxasKTLJ.js → pascaligo-ChCdOH6b.js} +0 -0
  287. /package/web/assets/{perl-Dhxz2Lhx.js → perl-BCgLFj01.js} +0 -0
  288. /package/web/assets/{pgsql-BIbUy7yD.js → pgsql-DtKby69f.js} +0 -0
  289. /package/web/assets/{php-B5qS9qgM.js → php-NYvR17Qb.js} +0 -0
  290. /package/web/assets/{pla-Bolz9fha.js → pla-gSg-RBG0.js} +0 -0
  291. /package/web/assets/{postiats-Ba6dE5lj.js → postiats-BQxHyDfy.js} +0 -0
  292. /package/web/assets/{powerquery-2jW3ONgo.js → powerquery-DzDmbVZN.js} +0 -0
  293. /package/web/assets/{powershell-CMfBIiJp.js → powershell-yy4Q5BEQ.js} +0 -0
  294. /package/web/assets/{protobuf-BpaquOUj.js → protobuf-B_hIk9q0.js} +0 -0
  295. /package/web/assets/{pug-cBG82Ydz.js → pug-CdeEb1ft.js} +0 -0
  296. /package/web/assets/{qsharp-DtqL8Lmt.js → qsharp-CiSquEgT.js} +0 -0
  297. /package/web/assets/{r-CKLew4sj.js → r-D1Ocz1x4.js} +0 -0
  298. /package/web/assets/{redis-BdDxRU-N.js → redis-D42Y12yz.js} +0 -0
  299. /package/web/assets/{redshift-X4a4MlqW.js → redshift-CS62MYfG.js} +0 -0
  300. /package/web/assets/{restructuredtext-LA4Fv05h.js → restructuredtext-CKFSMEXw.js} +0 -0
  301. /package/web/assets/{ruby-CibE_WVM.js → ruby-C4gTaeU3.js} +0 -0
  302. /package/web/assets/{rust-BK6RsiL0.js → rust-C_f2AiHQ.js} +0 -0
  303. /package/web/assets/{sb-BnCCt0Qj.js → sb-CdNdpP1r.js} +0 -0
  304. /package/web/assets/{scala-oaBDrVqj.js → scala-N4EWaFTL.js} +0 -0
  305. /package/web/assets/{scheme-C-wkLC01.js → scheme-CttIARxx.js} +0 -0
  306. /package/web/assets/{scss-BceVGOJY.js → scss-v0wtbxaE.js} +0 -0
  307. /package/web/assets/{shell-CxhBAFA5.js → shell-BJdEWXbc.js} +0 -0
  308. /package/web/assets/{solidity-D9sXgTfx.js → solidity-DKDa59zZ.js} +0 -0
  309. /package/web/assets/{sophia-C4VBhIEM.js → sophia--Kw-vDpr.js} +0 -0
  310. /package/web/assets/{sparql-DbsK2s9y.js → sparql-BI8jS9Pc.js} +0 -0
  311. /package/web/assets/{sql-CuGfE0wH.js → sql-Dz6z--6O.js} +0 -0
  312. /package/web/assets/{st-rB6Bqb2h.js → st-CT8D05gv.js} +0 -0
  313. /package/web/assets/{swift-BtHGe_4T.js → swift-Ayb3KzWx.js} +0 -0
  314. /package/web/assets/{systemverilog-CgKnzwU4.js → systemverilog-BtWJM9O5.js} +0 -0
  315. /package/web/assets/{tcl-DyqQWf87.js → tcl-BJvUWpbV.js} +0 -0
  316. /package/web/assets/{twig-C980XO5P.js → twig-c3YaBCU6.js} +0 -0
  317. /package/web/assets/{typespec-CVmA80px.js → typespec-gFCWLBoZ.js} +0 -0
  318. /package/web/assets/{uuid-2Kb5PDpq.js → uuid-B3B8HIK9.js} +0 -0
  319. /package/web/assets/{vb-rdNQv5VQ.js → vb-CVtfWXV2.js} +0 -0
  320. /package/web/assets/{w3c-keyname-B2B-WOb1.js → w3c-keyname-nn0G3QC2.js} +0 -0
  321. /package/web/assets/{wgsl-64oVbimL.js → wgsl-C_huaGQy.js} +0 -0
@@ -0,0 +1 @@
1
+ import{Br as e,Jr as t,Jt as ee,Kr as n,Lr as r,O as te,Pr as ne,Qt as i,R as re,Rr as a,Vr as o,Zi as s,di as c,hi as l,hn as ie,jt as u,nn as d,oa as f,pi as ae,wn as oe,zi as p,zr as se}from"./index-Dl-HyfHx.js";import"./cloud-client-GmxBhiFl.js";import{t as ce}from"./ProcessControls-C2EYsD-P.js";import"./src-DtlOQm4K.js";import"./SendToChatDialog-CZWy1K4A.js";import{n as m,t as le}from"./ProcessMetrics-DpDxpUpO.js";import{t as ue}from"./LogViewer-BJxpIK11.js";var de={class:`process-detail`},fe={key:0,class:`process-detail__loading`},pe={key:1,class:`process-detail__error`},me={class:`process-detail__header`},h={class:`process-detail__header-left`},g={class:`process-detail__title`},_={class:`process-detail__id`},v={key:0,class:`process-detail__metrics`},y={class:`section-title`},b={key:1,class:`process-detail__metrics-skeleton`},x={class:`metric-skeleton`},S={class:`metric-skeleton`},C={class:`process-detail__info`},w={class:`info-grid`},T={key:0,class:`info-item`},E={class:`info-label`},D={class:`info-value`},O={key:1,class:`info-item`},k={class:`info-label`},A={class:`info-value`},j={class:`info-item`},M={class:`info-label`},N={class:`info-value`},P={key:2,class:`info-item`},F={class:`info-label`},I={class:`info-value`},L={key:3,class:`info-item`},R={class:`info-label`},he={class:`info-value`},ge={class:`process-detail__logs`},_e={class:`section-title`},ve={class:`process-detail__log-container`},z=i(t({__name:`ProcessDetailPage`,props:{agentId:{},processId:{}},setup(t){let i=t,z=ie(),{t:B}=oe(),ye=re(),be=r(()=>V.value?.agentId?ye.agents.find(e=>e.config.id===V.value.agentId)?.config.name??V.value.agentId:null),V=s(null),H=s([]),U=s(null),W=s(!1),G=s(!0),K=s(!0),q=s(null),J=null,Y=null,X=null,Z={running:{severity:`success`,icon:`pi pi-check-circle`},stopped:{severity:`secondary`,icon:`pi pi-stop-circle`},errored:{severity:`danger`,icon:`pi pi-times-circle`},starting:{severity:`warn`,icon:`pi pi-spin pi-spinner`}},Q=r(()=>Z[V.value?.state??`stopped`]??Z.stopped);async function $(){try{V.value=await u.process.get.query({agentId:i.agentId,id:i.processId})}catch(e){q.value=e instanceof Error?e.message:`Failed to load process`}}async function xe(){K.value=!0;try{H.value=await u.process.logs.query({agentId:i.agentId,processId:i.processId})}catch{}finally{K.value=!1}}async function Se(){W.value=!0;try{U.value=await u.process.metrics.query({agentId:i.agentId,processId:i.processId})}catch{}finally{W.value=!1}}function Ce(){let e=u.process.onLog.subscribe({agentId:i.agentId,processId:i.processId},{onData(e){H.value=[...H.value,e],H.value.length>1e4&&(H.value=H.value.slice(H.value.length-1e4))}});J=()=>e.unsubscribe()}function we(){let e=u.process.onStatus.subscribe({agentId:i.agentId,processId:i.processId},{onData(e){V.value=e}});Y=()=>e.unsubscribe()}function Te(){let e=u.process.onMetrics.subscribe({agentId:i.agentId,processId:i.processId},{onData(e){U.value=e}});X=()=>e.unsubscribe()}function Ee(){$()}return c(async()=>{G.value=!0,await Promise.all([$(),xe(),Se()]),G.value=!1,Ce(),we(),Te()}),ae(()=>{J?.(),Y?.(),X?.()}),(t,r)=>(l(),o(`div`,de,[G.value?(l(),o(`div`,fe,[n(f(te),{style:{width:`3rem`,height:`3rem`}}),a(`span`,null,p(f(B)(`processDetail.loading`)),1)])):q.value?(l(),o(`div`,pe,[r[2]||=a(`i`,{class:`pi pi-exclamation-triangle`,style:{"font-size":`2rem`,color:`var(--p-red-500)`}},null,-1),a(`p`,null,p(q.value),1),n(f(d),{label:f(B)(`processDetail.goBack`),icon:`pi pi-arrow-left`,severity:`secondary`,onClick:r[0]||=e=>f(z).back()},null,8,[`label`])])):V.value?(l(),o(ne,{key:2},[a(`div`,me,[a(`div`,h,[n(f(d),{icon:`pi pi-arrow-left`,text:``,rounded:``,severity:`secondary`,"aria-label":f(B)(`processDetail.goBack`),onClick:r[1]||=e=>f(z).back()},null,8,[`aria-label`]),a(`div`,g,[a(`h1`,null,p(V.value.serviceId),1),a(`span`,_,p(V.value.id),1)]),n(f(ee),{value:V.value.state,severity:Q.value.severity,icon:Q.value.icon},null,8,[`value`,`severity`,`icon`])]),n(ce,{"agent-id":i.agentId,"process-id":i.processId,state:V.value.state,onAction:Ee},null,8,[`agent-id`,`process-id`,`state`])]),U.value||W.value?(l(),o(`section`,v,[a(`h2`,y,p(f(B)(`processDetail.metrics`)),1),U.value?(l(),se(le,{key:0,cpu:U.value.cpu,memory:U.value.memory},null,8,[`cpu`,`memory`])):(l(),o(`div`,b,[a(`div`,x,[n(f(m),{width:`4rem`,height:`0.75rem`,class:`mb-2`}),n(f(m),{width:`3rem`,height:`1.75rem`,class:`mb-3`}),n(f(m),{width:`100%`,height:`6px`,"border-radius":`4px`})]),a(`div`,S,[n(f(m),{width:`4rem`,height:`0.75rem`,class:`mb-2`}),n(f(m),{width:`3rem`,height:`1.75rem`,class:`mb-3`}),n(f(m),{width:`6rem`,height:`0.65rem`})])]))])):e(``,!0),a(`section`,C,[a(`div`,w,[V.value.pid?(l(),o(`div`,T,[a(`span`,E,p(f(B)(`processDetail.pid`)),1),a(`span`,D,p(V.value.pid),1)])):e(``,!0),V.value.agentId?(l(),o(`div`,O,[a(`span`,k,p(f(B)(`processDetail.agent`)),1),a(`span`,A,p(be.value),1)])):e(``,!0),a(`div`,j,[a(`span`,M,p(f(B)(`processDetail.restarts`)),1),a(`span`,N,p(V.value.restartCount),1)]),V.value.startedAt?(l(),o(`div`,P,[a(`span`,F,p(f(B)(`processDetail.started`)),1),a(`span`,I,p(new Date(V.value.startedAt).toLocaleString()),1)])):e(``,!0),V.value.exitCode==null?e(``,!0):(l(),o(`div`,L,[a(`span`,R,p(f(B)(`processDetail.exitCode`)),1),a(`span`,he,p(V.value.exitCode),1)]))])]),a(`section`,ge,[a(`h2`,_e,p(f(B)(`processDetail.logs`)),1),a(`div`,ve,[n(ue,{logs:H.value,loading:K.value,"service-label":V.value?.serviceId},null,8,[`logs`,`loading`,`service-label`])])])],64)):e(``,!0)]))}}),[[`__scopeId`,`data-v-9599e2e1`]]);export{z as default};
@@ -1,4 +1,4 @@
1
- import{Jr as e,Kr as t,Lr as n,M as r,Qt as i,Ri as a,Rr as o,Tn as s,Vr as c,hi as l,oa as u,ri as d,sr as f,un as p,wn as m,zi as h}from"./index-BTYNCNK0.js";var g=s.extend({name:`skeleton`,style:`
1
+ import{Jr as e,Kr as t,Lr as n,Qt as r,Ri as i,Rr as a,Tn as o,Vr as s,hi as c,j as l,oa as u,ri as d,sr as f,un as p,wn as m,zi as h}from"./index-Dl-HyfHx.js";var g=o.extend({name:`skeleton`,style:`
2
2
  .p-skeleton {
3
3
  display: block;
4
4
  overflow: hidden;
@@ -48,4 +48,4 @@ import{Jr as e,Kr as t,Lr as n,M as r,Qt as i,Ri as a,Rr as o,Tn as s,Vr as c,hi
48
48
  transform: translateX(-100%);
49
49
  }
50
50
  }
51
- `,classes:{root:function(e){var t=e.props;return[`p-skeleton p-component`,{"p-skeleton-circle":t.shape===`circle`,"p-skeleton-animation-none":t.animation===`none`}]}},inlineStyles:{root:{position:`relative`}}}),_={name:`BaseSkeleton`,extends:p,props:{shape:{type:String,default:`rectangle`},size:{type:String,default:null},width:{type:String,default:`100%`},height:{type:String,default:`1rem`},borderRadius:{type:String,default:null},animation:{type:String,default:`wave`}},style:g,provide:function(){return{$pcSkeleton:this,$parentInstance:this}}};function v(e){"@babel/helpers - typeof";return v=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},v(e)}function y(e,t,n){return(t=b(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function b(e){var t=x(e,`string`);return v(t)==`symbol`?t:t+``}function x(e,t){if(v(e)!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(v(r)!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}var S={name:`Skeleton`,extends:_,inheritAttrs:!1,computed:{containerStyle:function(){return this.size?{width:this.size,height:this.size,borderRadius:this.borderRadius}:{width:this.width,height:this.height,borderRadius:this.borderRadius}},dataP:function(){return f(y({},this.shape,this.shape))}}},C=[`data-p`];function w(e,t,n,r,i,a){return l(),c(`div`,d({class:e.cx(`root`),style:[e.sx(`root`),a.containerStyle],"aria-hidden":`true`},e.ptmi(`root`),{"data-p":a.dataP}),null,16,C)}S.render=w;var T={class:`process-metrics`},E={class:`metric-card`},D={class:`metric-card__header`},O={class:`metric-card__label`},k={class:`metric-card__value`},A={class:`metric-card`},j={class:`metric-card__header`},M={class:`metric-card__label`},N={class:`metric-card__value`},P={class:`metric-card__sub`},F=i(e({__name:`ProcessMetrics`,props:{cpu:{},memory:{}},setup(e){let i=e,{t:s}=m();function d(e){return e<1024?`${e} B`:e<1024*1024?`${(e/1024).toFixed(1)} KB`:e<1024*1024*1024?`${(e/(1024*1024)).toFixed(1)} MB`:`${(e/(1024*1024*1024)).toFixed(2)} GB`}let f=n(()=>Math.min(Math.round(i.cpu*100)/100,100)),p=n(()=>d(i.memory)),g=n(()=>i.cpu>=80?`#ef4444`:i.cpu>=50?`#f59e0b`:`#22c55e`);return(e,n)=>(l(),c(`div`,T,[o(`div`,E,[o(`div`,D,[n[0]||=o(`i`,{class:`pi pi-microchip`},null,-1),o(`span`,O,h(u(s)(`processMetrics.cpu`)),1)]),o(`div`,k,h(f.value)+`%`,1),t(u(r),{value:f.value,"show-value":!1,class:`metric-card__bar`,style:a({"--p-progressbar-value-background":g.value})},null,8,[`value`,`style`])]),o(`div`,A,[o(`div`,j,[n[1]||=o(`i`,{class:`pi pi-database`},null,-1),o(`span`,M,h(u(s)(`processMetrics.memory`)),1)]),o(`div`,N,h(p.value),1),o(`div`,P,h(u(s)(`processMetrics.bytes`,{count:i.memory.toLocaleString()})),1)])]))}}),[[`__scopeId`,`data-v-28e6b1ac`]]);export{S as n,F as t};
51
+ `,classes:{root:function(e){var t=e.props;return[`p-skeleton p-component`,{"p-skeleton-circle":t.shape===`circle`,"p-skeleton-animation-none":t.animation===`none`}]}},inlineStyles:{root:{position:`relative`}}}),_={name:`BaseSkeleton`,extends:p,props:{shape:{type:String,default:`rectangle`},size:{type:String,default:null},width:{type:String,default:`100%`},height:{type:String,default:`1rem`},borderRadius:{type:String,default:null},animation:{type:String,default:`wave`}},style:g,provide:function(){return{$pcSkeleton:this,$parentInstance:this}}};function v(e){"@babel/helpers - typeof";return v=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},v(e)}function y(e,t,n){return(t=b(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function b(e){var t=x(e,`string`);return v(t)==`symbol`?t:t+``}function x(e,t){if(v(e)!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(v(r)!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}var S={name:`Skeleton`,extends:_,inheritAttrs:!1,computed:{containerStyle:function(){return this.size?{width:this.size,height:this.size,borderRadius:this.borderRadius}:{width:this.width,height:this.height,borderRadius:this.borderRadius}},dataP:function(){return f(y({},this.shape,this.shape))}}},C=[`data-p`];function w(e,t,n,r,i,a){return c(),s(`div`,d({class:e.cx(`root`),style:[e.sx(`root`),a.containerStyle],"aria-hidden":`true`},e.ptmi(`root`),{"data-p":a.dataP}),null,16,C)}S.render=w;var T={class:`process-metrics`},E={class:`metric-card`},D={class:`metric-card__header`},O={class:`metric-card__label`},k={class:`metric-card__value`},A={class:`metric-card`},j={class:`metric-card__header`},M={class:`metric-card__label`},N={class:`metric-card__value`},P={class:`metric-card__sub`},F=r(e({__name:`ProcessMetrics`,props:{cpu:{},memory:{}},setup(e){let r=e,{t:o}=m();function d(e){return e<1024?`${e} B`:e<1024*1024?`${(e/1024).toFixed(1)} KB`:e<1024*1024*1024?`${(e/(1024*1024)).toFixed(1)} MB`:`${(e/(1024*1024*1024)).toFixed(2)} GB`}let f=n(()=>Math.min(Math.round(r.cpu*100)/100,100)),p=n(()=>d(r.memory)),g=n(()=>r.cpu>=80?`#ef4444`:r.cpu>=50?`#f59e0b`:`#22c55e`);return(e,n)=>(c(),s(`div`,T,[a(`div`,E,[a(`div`,D,[n[0]||=a(`i`,{class:`pi pi-microchip`},null,-1),a(`span`,O,h(u(o)(`processMetrics.cpu`)),1)]),a(`div`,k,h(f.value)+`%`,1),t(u(l),{value:f.value,"show-value":!1,class:`metric-card__bar`,style:i({"--p-progressbar-value-background":g.value})},null,8,[`value`,`style`])]),a(`div`,A,[a(`div`,j,[n[1]||=a(`i`,{class:`pi pi-database`},null,-1),a(`span`,M,h(u(o)(`processMetrics.memory`)),1)]),a(`div`,N,h(p.value),1),a(`div`,P,h(u(o)(`processMetrics.bytes`,{count:r.memory.toLocaleString()})),1)])]))}}),[[`__scopeId`,`data-v-28e6b1ac`]]);export{S as n,F as t};
@@ -0,0 +1 @@
1
+ import{Br as e,Bt as t,Gr as n,H as ee,Jr as r,Jt as i,Kr as a,Lr as o,Mi as s,Ni as c,O as te,Oi as ne,Pr as l,Qt as u,R as re,Rr as d,U as f,Ut as ie,V as ae,Vr as p,W as oe,Wt as se,Yt as m,Zi as h,bi as ce,bn as le,bt as ue,c as de,di as fe,en as g,fn as pe,hi as _,hn as me,jr as v,jt as y,mn as he,nn as b,oa as x,t as ge,wn as _e,yn as ve,zi as S,zr as C}from"./index-Dl-HyfHx.js";import{n as w,s as ye,u as be}from"./cloud-client-GmxBhiFl.js";import{t as xe}from"./auth-errors-DEObS1lG.js";import{t as Se}from"./EnvironmentSelector-BWzLYssP.js";import{n as Ce,t as T}from"./column-BHRqZfnh.js";import{t as we}from"./message-DQfiz3F1.js";import{t as Te}from"./card-B7-be48x.js";var Ee={class:`project-detail-page`},De={key:0,class:`loading-container`},Oe={key:1,class:`error-container`},ke={class:`page-header`},Ae={class:`page-title`},je={class:`env-selector-bar`,"data-testid":`env-selector`},Me={class:`info-grid`},Ne={class:`info-field`},Pe={class:`info-label`},Fe={key:0,class:`inline-edit`},Ie={class:`info-field`},Le={class:`info-label`},Re={key:0,class:`inline-edit`},ze={class:`section`},Be={class:`section-header`},Ve={class:`section-actions`},He={key:1,class:`text-muted`},Ue={class:`table-actions`},We={key:1,class:`empty-section`},Ge={class:`form-group`},Ke={for:`projdetail-select-service`},qe={key:0,class:`cloud-dialog`},Je={key:1,class:`cloud-dialog`},Ye={key:0,class:`cloud-empty`},Xe={key:1,class:`field`},Ze={for:`cloud-org-select`},E=u(r({__name:`ProjectDetailPage`,props:{projectId:{}},setup(r){let u=r,{t:E}=_e(),D=me();he();let O=le(),k=ve(),A=ae(),j=ee(),Qe=re(),M=de(),$e=ue(),et=oe(),N=h(null),P=h(!0),F=h(!1),{user:I}=ye(),L=be(w,xe()),R=h(!1),z=h(null),B=h(!1),V=h(null);function tt(){V.value=null,z.value=N.value?.orgId??null,R.value=!0,I.value&&L.refresh()}async function nt(){if(!(!N.value||!z.value)){B.value=!0,V.value=null;try{let e=await y.project.export.query({id:N.value.id});if((await w.$fetch(`/project/push`,{method:`POST`,body:{organizationId:z.value,projectId:N.value.id,name:N.value.name,snapshot:e}})).error)throw Error(E(`projectDetail.cloud.pushFailed`));N.value=await y.project.update.mutate({id:N.value.id,orgId:z.value}),await y.cloudSync.link.mutate({orgId:z.value,cloudUrl:ge()}),O.add({severity:`success`,summary:E(`projectDetail.cloud.storedToast`),life:3e3}),R.value=!1}catch(e){V.value=f(e)}finally{B.value=!1}}}let H=h(!1),U=h(!1),W=h(``),G=h(``),K=h({}),q=h(``),J=h(!1),Y=h(``),X=h(!1),Z=o(()=>N.value?N.value.serviceIds.map(e=>j.services.find(t=>t.id===e)).filter(e=>!!e):[]),rt=o(()=>{let e=q.value.trim().toLowerCase();return e?Z.value.filter(t=>t.name.toLowerCase().includes(e)||t.runner?.toLowerCase().includes(e)||t.command?.toLowerCase().includes(e)):Z.value}),it=o(()=>N.value?.activeEnvironmentId??null),Q=o(()=>{if(!N.value)return[];let e=new Set(N.value.serviceIds);return j.services.filter(t=>!e.has(t.id))});function $(e){let t=M.getByService(e);return t.length>0?t[0]:null}function at(e){return e===`stopped`||e===`errored`}function ot(e){return e===`running`||e===`starting`}function st(e){return e===`running`}async function ct(e){K.value={...K.value,[e.id]:`start`};try{await M.start(e.agentId,e.id)}catch(e){O.add({severity:`error`,summary:E(`projectDetail.startFailed`),detail:f(e),life:5e3})}finally{let{[e.id]:t,...n}=K.value;K.value=n}}async function lt(e){K.value={...K.value,[e.id]:`stop`};try{await M.stop(e.agentId,e.id)}catch(e){O.add({severity:`error`,summary:E(`projectDetail.stopFailed`),detail:f(e),life:5e3})}finally{let{[e.id]:t,...n}=K.value;K.value=n}}async function ut(e){K.value={...K.value,[e.id]:`restart`};try{await M.restart(e.agentId,e.id)}catch(e){O.add({severity:`error`,summary:E(`projectDetail.restartFailed`),detail:f(e),life:5e3})}finally{let{[e.id]:t,...n}=K.value;K.value=n}}async function dt(){P.value=!0;try{N.value=await y.project.get.query({id:u.projectId}),$e.setActiveProject(u.projectId),await et.fetchAll(u.projectId)}catch(e){O.add({severity:`error`,summary:`Error`,detail:f(e)??E(`projectDetail.failedToLoad`),life:5e3}),N.value=null}finally{P.value=!1}}function ft(){W.value=N.value?.name??``,H.value=!0}function pt(){G.value=N.value?.description??``,U.value=!0}async function mt(){if(!(!N.value||!W.value.trim())){F.value=!0;try{N.value=await y.project.update.mutate({id:N.value.id,name:W.value.trim()}),H.value=!1,O.add({severity:`success`,summary:E(`projectDetail.nameUpdated`),life:2e3})}catch(e){O.add({severity:`error`,summary:`Error`,detail:f(e),life:5e3})}finally{F.value=!1}}}async function ht(){if(N.value){F.value=!0;try{N.value=await y.project.update.mutate({id:N.value.id,description:G.value.trim()}),U.value=!1,O.add({severity:`success`,summary:E(`projectDetail.descriptionUpdated`),life:2e3})}catch(e){O.add({severity:`error`,summary:`Error`,detail:f(e),life:5e3})}finally{F.value=!1}}}async function gt(e){N.value&&(Z.value.filter(e=>!!e.id).length>0?k.require({message:E(`projectDetail.switchEnvMsg`),header:E(`projectDetail.switchEnvTitle`),icon:`pi pi-exclamation-triangle`,rejectLabel:E(`projectDetail.switchEnvCancel`),acceptLabel:E(`projectDetail.switchEnvConfirm`),accept:()=>_t(e)}):await _t(e))}async function _t(e){if(N.value){F.value=!0;try{let t=await A.setActiveEnvironment(N.value.id,e);t&&(N.value=t),O.add({severity:`success`,summary:E(`projectDetail.envSwitched`),detail:E(`projectDetail.envSwitchedDesc`),life:3e3})}catch(e){console.error(`Failed to switch environment:`,e),O.add({severity:`error`,summary:`Error`,detail:f(e)??`Failed to switch environment`,life:5e3})}finally{F.value=!1}}}async function vt(){if(!(!N.value||!Y.value)){X.value=!0;try{N.value=await y.project.addService.mutate({projectId:N.value.id,serviceId:Y.value}),J.value=!1,Y.value=``,O.add({severity:`success`,summary:E(`projectDetail.serviceAdded`),life:2e3})}catch(e){O.add({severity:`error`,summary:`Error`,detail:f(e),life:5e3})}finally{X.value=!1}}}function yt(e,t){k.require({message:`Remove "${t}" from this project?`,header:E(`projectDetail.removeServiceTitle`),icon:`pi pi-exclamation-triangle`,rejectLabel:E(`projectDetail.removeServiceCancel`),acceptLabel:E(`projectDetail.removeServiceConfirm`),acceptClass:`p-button-danger`,accept:()=>bt(e)})}async function bt(e){if(N.value)try{N.value=await y.project.removeService.mutate({projectId:N.value.id,serviceId:e}),O.add({severity:`success`,summary:E(`projectDetail.serviceRemoved`),life:2e3})}catch(e){O.add({severity:`error`,summary:`Error`,detail:f(e),life:5e3})}}function xt(){N.value&&k.require({message:`Are you sure you want to delete "${N.value.name}"? This action cannot be undone.`,header:E(`projectDetail.deleteProjectTitle`),icon:`pi pi-trash`,rejectLabel:E(`projectDetail.deleteProjectCancel`),acceptLabel:E(`projectDetail.deleteProjectConfirm`),acceptClass:`p-button-danger`,accept:St})}async function St(){if(N.value)try{await y.project.delete.mutate({id:N.value.id}),O.add({severity:`success`,summary:E(`projectDetail.projectDeleted`),life:2e3}),await A.fetchAll(),D.push({name:`projects`})}catch(e){O.add({severity:`error`,summary:`Error`,detail:f(e),life:5e3})}}return fe(async()=>{await Promise.all([dt(),j.fetchAll(),Qe.fetchAll(),M.fetchAll()])}),ne(()=>u.projectId,()=>{dt()}),(ee,r)=>{let o=ce(`tooltip`);return _(),p(`div`,Ee,[P.value?(_(),p(`div`,De,[a(x(te))])):N.value?(_(),p(l,{key:2},[d(`div`,ke,[a(x(b),{icon:`pi pi-arrow-left`,severity:`secondary`,text:``,rounded:``,onClick:r[1]||=e=>x(D).push({name:`projects`})}),d(`h1`,Ae,S(x(E)(`projectDetail.title`)),1),N.value.orgId?(_(),C(x(i),{key:0,severity:`info`,icon:`pi pi-cloud`,value:x(E)(`projectDetail.cloud.stored`)},null,8,[`value`])):e(``,!0),a(x(b),{label:x(E)(`projectDetail.cloud.action`),icon:`pi pi-cloud-upload`,severity:`secondary`,outlined:``,onClick:tt},null,8,[`label`]),a(x(b),{label:x(E)(`projectDetail.deleteProjectTitle`),icon:`pi pi-trash`,severity:`danger`,text:``,onClick:xt},null,8,[`label`])]),d(`div`,je,[a(Se,{"model-value":it.value,"onUpdate:modelValue":gt},null,8,[`model-value`]),a(x(b),{label:x(E)(`projectDetail.manageEnvironments`),icon:`pi pi-cog`,severity:`secondary`,outlined:``,onClick:r[2]||=e=>x(D).push({name:`environments`,params:{projectId:N.value.id}})},null,8,[`label`])]),a(x(Te),{class:`info-card`},{content:s(()=>[d(`div`,Me,[d(`div`,Ne,[d(`span`,Pe,S(x(E)(`common.name`)),1),H.value?(_(),p(`div`,Fe,[a(x(m),{modelValue:W.value,"onUpdate:modelValue":r[3]||=e=>W.value=e,autofocus:``,class:`edit-input`,onKeyup:[v(mt,[`enter`]),r[4]||=v(e=>H.value=!1,[`escape`])]},null,8,[`modelValue`]),a(x(b),{icon:`pi pi-check`,text:``,rounded:``,size:`small`,loading:F.value,onClick:mt},null,8,[`loading`]),a(x(b),{icon:`pi pi-times`,text:``,rounded:``,size:`small`,severity:`secondary`,onClick:r[5]||=e=>H.value=!1})])):(_(),p(`div`,{key:1,class:`info-value clickable`,onClick:ft},[n(S(N.value.name)+` `,1),r[20]||=d(`i`,{class:`pi pi-pencil edit-icon`},null,-1)]))]),d(`div`,Ie,[d(`span`,Le,S(x(E)(`common.description`)),1),U.value?(_(),p(`div`,Re,[a(x(m),{modelValue:G.value,"onUpdate:modelValue":r[6]||=e=>G.value=e,autofocus:``,class:`edit-input`,onKeyup:[v(ht,[`enter`]),r[7]||=v(e=>U.value=!1,[`escape`])]},null,8,[`modelValue`]),a(x(b),{icon:`pi pi-check`,text:``,rounded:``,size:`small`,loading:F.value,onClick:ht},null,8,[`loading`]),a(x(b),{icon:`pi pi-times`,text:``,rounded:``,size:`small`,severity:`secondary`,onClick:r[8]||=e=>U.value=!1})])):(_(),p(`div`,{key:1,class:`info-value clickable`,onClick:pt},[n(S(N.value.description||x(E)(`projectDetail.noDescription`))+` `,1),r[21]||=d(`i`,{class:`pi pi-pencil edit-icon`},null,-1)]))])])]),_:1}),d(`div`,ze,[d(`div`,Be,[d(`h2`,null,S(x(E)(`projectDetail.services`)),1),d(`div`,Ve,[a(x(se),null,{default:s(()=>[a(x(ie),{class:`pi pi-search`}),a(x(m),{modelValue:q.value,"onUpdate:modelValue":r[9]||=e=>q.value=e,placeholder:x(E)(`projectDetail.searchServices`),size:`small`},null,8,[`modelValue`,`placeholder`])]),_:1}),a(x(b),{label:x(E)(`projectDetail.addExisting`),icon:`pi pi-plus`,severity:`secondary`,size:`small`,disabled:Q.value.length===0,onClick:r[10]||=e=>J.value=!0},null,8,[`label`,`disabled`]),a(x(b),{label:x(E)(`projectDetail.createNew`),icon:`pi pi-plus-circle`,size:`small`,onClick:r[11]||=e=>x(D).push({name:`service-create`,query:{projectId:N.value.id}})},null,8,[`label`])])]),Z.value.length>0?(_(),C(x(Ce),{key:0,value:rt.value,stripedRows:``,size:`small`,paginator:!0,rows:10,"rows-per-page-options":[5,10,20],class:`services-table`},{default:s(()=>[a(x(T),{field:`name`,header:x(E)(`projectDetail.nameColumn`)},{body:s(({data:e})=>[a(x(pe),{to:{name:`service-detail`,params:{id:e.id}},class:`service-name`,"data-testid":`service-row-link`},{default:s(()=>[n(S(e.name),1)]),_:2},1032,[`to`])]),_:1},8,[`header`]),a(x(T),{field:`runner`,header:x(E)(`projectDetail.runnerColumn`),style:{width:`80px`}},{body:s(({data:e})=>[a(x(i),{value:e.runner,severity:e.runner===`docker`?`warn`:`info`},null,8,[`value`,`severity`])]),_:1},8,[`header`]),a(x(T),{field:`ports`,header:x(E)(`projectDetail.portsColumn`),style:{width:`100px`}},{body:s(({data:e})=>[n(S(e.ports?.length?e.ports.join(`, `):`-`),1)]),_:1},8,[`header`]),a(x(T),{header:x(E)(`common.status`),style:{width:`70px`}},{body:s(({data:e})=>[$(e.id)?(_(),C(x(i),{key:0,value:$(e.id).state,severity:$(e.id).state===`running`?`success`:$(e.id).state===`errored`?`danger`:`secondary`},null,8,[`value`,`severity`])):(_(),p(`span`,He,`-`))]),_:1},8,[`header`]),a(x(T),{header:x(E)(`projectDetail.actionsColumn`),style:{width:`130px`}},{body:s(({data:t})=>[d(`div`,Ue,[!$(t.id)||at($(t.id).state)?c((_(),C(x(b),{key:0,icon:`pi pi-play`,severity:`success`,text:``,rounded:``,size:`small`,disabled:!!K.value[t.id],loading:K.value[t.id]===`start`,onClick:e=>ct(t)},null,8,[`disabled`,`loading`,`onClick`])),[[o,x(E)(`actions.start`),void 0,{top:!0}]]):e(``,!0),$(t.id)&&ot($(t.id).state)?(_(),p(l,{key:1},[c(a(x(b),{icon:`pi pi-stop`,severity:`danger`,text:``,rounded:``,size:`small`,disabled:!!K.value[t.id],loading:K.value[t.id]===`stop`,onClick:e=>lt(t)},null,8,[`disabled`,`loading`,`onClick`]),[[o,x(E)(`actions.stop`),void 0,{top:!0}]]),st($(t.id).state)?c((_(),C(x(b),{key:0,icon:`pi pi-refresh`,severity:`warn`,text:``,rounded:``,size:`small`,disabled:!!K.value[t.id],loading:K.value[t.id]===`restart`,onClick:e=>ut(t)},null,8,[`disabled`,`loading`,`onClick`])),[[o,x(E)(`actions.restart`),void 0,{top:!0}]]):e(``,!0)],64)):e(``,!0),c(a(x(b),{icon:`pi pi-minus-circle`,severity:`secondary`,text:``,rounded:``,size:`small`,onClick:e=>yt(t.id,t.name)},null,8,[`onClick`]),[[o,x(E)(`projectDetail.removeFromProject`),void 0,{top:!0}]])])]),_:1},8,[`header`])]),_:1},8,[`value`])):(_(),p(`div`,We,[d(`p`,null,S(x(E)(`projectDetail.noServices`)),1)]))]),a(x(g),{visible:J.value,"onUpdate:visible":r[14]||=e=>J.value=e,header:x(E)(`projectDetail.addExistingService`),style:{width:`450px`},modal:``,closable:!X.value},{footer:s(()=>[a(x(b),{label:x(E)(`actions.cancel`),severity:`secondary`,text:``,disabled:X.value,onClick:r[13]||=e=>J.value=!1},null,8,[`label`,`disabled`]),a(x(b),{label:x(E)(`actions.add`),icon:`pi pi-plus`,loading:X.value,disabled:!Y.value,onClick:vt},null,8,[`label`,`loading`,`disabled`])]),default:s(()=>[d(`div`,Ge,[d(`label`,Ke,S(x(E)(`projectDetail.selectService`)),1),a(x(t),{inputId:`projdetail-select-service`,modelValue:Y.value,"onUpdate:modelValue":r[12]||=e=>Y.value=e,options:Q.value,optionLabel:`name`,optionValue:`id`,placeholder:x(E)(`projectDetail.chooseServicePlaceholder`),class:`w-full`},null,8,[`modelValue`,`options`,`placeholder`])])]),_:1},8,[`visible`,`header`,`closable`]),a(x(g),{visible:R.value,"onUpdate:visible":r[18]||=e=>R.value=e,header:x(E)(`projectDetail.cloud.title`),modal:``,style:{width:`30rem`}},{footer:s(()=>[a(x(b),{label:x(E)(`actions.cancel`),severity:`secondary`,text:``,disabled:B.value,onClick:r[17]||=e=>R.value=!1},null,8,[`label`,`disabled`]),x(I)?(_(),C(x(b),{key:0,label:x(E)(`projectDetail.cloud.store`),icon:`pi pi-cloud-upload`,loading:B.value,disabled:!z.value,onClick:nt},null,8,[`label`,`loading`,`disabled`])):e(``,!0)]),default:s(()=>[x(I)?(_(),p(`div`,Je,[d(`p`,null,S(x(E)(`projectDetail.cloud.description`)),1),x(L).organizations.value.length?(_(),p(`div`,Xe,[d(`label`,Ze,S(x(E)(`projectDetail.cloud.orgLabel`)),1),a(x(t),{inputId:`cloud-org-select`,modelValue:z.value,"onUpdate:modelValue":r[16]||=e=>z.value=e,options:x(L).organizations.value,optionLabel:`name`,optionValue:`id`,placeholder:x(E)(`projectDetail.cloud.orgPlaceholder`),class:`w-full`},null,8,[`modelValue`,`options`,`placeholder`])])):(_(),p(`div`,Ye,S(x(E)(`projectDetail.cloud.noOrgs`)),1)),V.value?(_(),C(x(we),{key:2,severity:`error`,closable:!1},{default:s(()=>[n(S(V.value),1)]),_:1})):e(``,!0)])):(_(),p(`div`,qe,[d(`p`,null,S(x(E)(`projectDetail.cloud.notConnected`)),1),a(x(b),{label:x(E)(`projectDetail.cloud.goToAccount`),icon:`pi pi-user`,onClick:r[15]||=e=>x(D).push({name:`cloud-account`})},null,8,[`label`])]))]),_:1},8,[`visible`,`header`])],64)):(_(),p(`div`,Oe,[r[19]||=d(`i`,{class:`pi pi-exclamation-triangle`,style:{"font-size":`2rem`}},null,-1),d(`p`,null,S(x(E)(`projectDetail.notFound`)),1),a(x(b),{label:x(E)(`projectDetail.backToProjects`),icon:`pi pi-arrow-left`,onClick:r[0]||=e=>x(D).push({name:`projects`})},null,8,[`label`])]))])}}}),[[`__scopeId`,`data-v-5cd746e7`]]);export{E as default};
@@ -0,0 +1 @@
1
+ import{Br as e,Gr as t,Jr as n,Kr as r,Lr as i,Mi as a,O as o,Pr as s,Qt as c,Rr as l,U as u,V as ee,Vr as d,Yt as f,Zi as p,_i as m,bn as h,bt as g,di as _,en as v,hi as y,hn as b,jr as x,jt as S,nn as C,oa as w,rn as T,wn as E,zi as D,zr as O}from"./index-Dl-HyfHx.js";import{t as k}from"./card-B7-be48x.js";var A={class:`card-title-row`},j={class:`card-title`},M={class:`card-description`},N={class:`card-meta`},P={class:`meta-item`},F=c(n({__name:`ProjectCard`,props:{project:{}},emits:[`click`],setup(e,{emit:n}){let i=n;function o(e,t){return!e||e.length<=t?e||``:e.slice(0,t)+`...`}return(n,s)=>(y(),O(w(k),{class:`project-card`,onClick:s[0]||=e=>i(`click`)},{title:a(()=>[l(`div`,A,[l(`span`,j,D(e.project.name),1),r(w(T),{value:e.project.serviceIds.length,severity:`info`},null,8,[`value`])])]),content:a(()=>[l(`p`,M,D(o(e.project.description??``,120)),1),l(`div`,N,[l(`span`,P,[s[1]||=l(`i`,{class:`pi pi-box`},null,-1),t(` `+D(e.project.serviceIds.length)+` service`+D(e.project.serviceIds.length===1?``:`s`),1)])])]),_:1}))}}),[[`__scopeId`,`data-v-8a0b8178`]]),I={class:`project-list-page`},L={class:`page-header`},R={class:`search-bar`},z={class:`p-input-icon-left search-input-wrapper`},B={key:0,class:`loading-container`},V={key:1,class:`error-container`},H={key:2,class:`empty-container`},U={key:0},W={key:1},G={key:3,class:`project-grid`},K={class:`form-group`},q={for:`project-name`},J={class:`form-group`},Y={for:`project-desc`},X=c(n({__name:`ProjectListPage`,setup(t){let{t:n}=E(),c=b(),T=h(),k=ee(),A=g(),j=p(``),M=p(!1),N=p(!1),P=p({name:``,description:``}),X=i(()=>{let e=j.value.toLowerCase().trim();return e?k.projects.filter(t=>t.name.toLowerCase().includes(e)||(t.description??``).toLowerCase().includes(e)):k.projects});_(()=>{k.fetchAll()});function Z(e){A.setActiveProject(e.id),c.push({name:`project-detail`,params:{projectId:e.id}})}function Q(){P.value={name:``,description:``},M.value=!0}async function $(){if(P.value.name.trim()){N.value=!0;try{let e=await S.project.create.mutate({name:P.value.name.trim(),description:P.value.description.trim()||void 0});T.add({severity:`success`,summary:n(`projectList.created`),detail:n(`projectList.createdDetail`,{name:e.name}),life:3e3}),M.value=!1,await k.fetchAll(),c.push({name:`project-detail`,params:{projectId:e.id}})}catch(e){T.add({severity:`error`,summary:n(`projectList.error`),detail:u(e)??n(`projectList.failedToCreate`),life:5e3})}finally{N.value=!1}}}return(t,i)=>(y(),d(`div`,I,[l(`div`,L,[l(`h1`,null,D(w(n)(`projectList.title`)),1),r(w(C),{label:w(n)(`projectList.newProject`),icon:`pi pi-plus`,onClick:Q},null,8,[`label`])]),l(`div`,R,[l(`span`,z,[i[6]||=l(`i`,{class:`pi pi-search`},null,-1),r(w(f),{modelValue:j.value,"onUpdate:modelValue":i[0]||=e=>j.value=e,placeholder:w(n)(`projectList.searchPlaceholder`),class:`search-input`},null,8,[`modelValue`,`placeholder`])])]),w(k).loading?(y(),d(`div`,B,[r(w(o))])):w(k).error?(y(),d(`div`,V,[i[7]||=l(`i`,{class:`pi pi-exclamation-triangle`},null,-1),l(`p`,null,D(w(k).error),1),r(w(C),{label:w(n)(`projectList.retry`),icon:`pi pi-refresh`,severity:`secondary`,onClick:i[1]||=e=>w(k).fetchAll()},null,8,[`label`])])):X.value.length===0?(y(),d(`div`,H,[i[8]||=l(`i`,{class:`pi pi-folder-open empty-icon`},null,-1),j.value?(y(),d(`p`,U,D(w(n)(`projectList.noMatchProjects`,{query:j.value})),1)):(y(),d(`p`,W,D(w(n)(`projectList.noProjects`)),1)),j.value?e(``,!0):(y(),O(w(C),{key:2,label:w(n)(`projectList.createProject`),icon:`pi pi-plus`,onClick:Q},null,8,[`label`]))])):(y(),d(`div`,G,[(y(!0),d(s,null,m(X.value,e=>(y(),O(F,{key:e.id,project:e,"data-testid":`project-row-link`,onClick:t=>Z(e)},null,8,[`project`,`onClick`]))),128))])),r(w(v),{visible:M.value,"onUpdate:visible":i[5]||=e=>M.value=e,header:w(n)(`projectList.newProject`),style:{width:`480px`},modal:``,closable:!N.value},{footer:a(()=>[r(w(C),{label:w(n)(`projectList.cancel`),severity:`secondary`,text:``,disabled:N.value,onClick:i[4]||=e=>M.value=!1},null,8,[`label`,`disabled`]),r(w(C),{label:w(n)(`projectList.create`),icon:`pi pi-check`,loading:N.value,disabled:!P.value.name.trim(),onClick:$},null,8,[`label`,`loading`,`disabled`])]),default:a(()=>[l(`div`,K,[l(`label`,q,D(w(n)(`projectList.nameLabel`)),1),r(w(f),{id:`project-name`,modelValue:P.value.name,"onUpdate:modelValue":i[2]||=e=>P.value.name=e,placeholder:w(n)(`projectList.namePlaceholder`),class:`w-full`,autofocus:``,onKeyup:x($,[`enter`])},null,8,[`modelValue`,`placeholder`])]),l(`div`,J,[l(`label`,Y,D(w(n)(`projectList.descriptionLabel`)),1),r(w(f),{id:`project-desc`,modelValue:P.value.description,"onUpdate:modelValue":i[3]||=e=>P.value.description=e,placeholder:w(n)(`projectList.descriptionPlaceholder`),class:`w-full`,onKeyup:x($,[`enter`])},null,8,[`modelValue`,`placeholder`])])]),_:1},8,[`visible`,`header`,`closable`])]))}}),[[`__scopeId`,`data-v-0e09c7cb`]]);export{X as default};
@@ -1,2 +1,2 @@
1
- import{Gr as e,Jr as t,Kr as n,Qt as r,Rr as i,Vr as a,Zi as o,di as s,hi as c,ii as l,jt as u,nn as d,oa as f,pi as p,zi as m}from"./index-BTYNCNK0.js";var h={class:`random-job-test`},g={class:`random-job-test__actions`},_={class:`random-job-test__meta`},v={key:0,class:`random-job-test__empty`},y={key:1},b=`runeya:random-job-test:job-id`,x=`runeya:random-job-test:logs`,S=r(t({__name:`RandomJobTestPage`,setup(t){let r=o(null),S=o(!1),C=o([]),w=o(null),T=null;function E(){r.value?sessionStorage.setItem(b,r.value):sessionStorage.removeItem(b),sessionStorage.setItem(x,JSON.stringify(C.value))}function D(e){C.value=[...C.value,e],C.value.length>2e3&&(C.value=C.value.slice(C.value.length-2e3)),E(),l(()=>{w.value&&(w.value.scrollTop=w.value.scrollHeight)})}function O(){T?.unsubscribe(),T=null}function k(e){O(),T=u.debug.streamRandomJob.subscribe({jobId:e},{onData(e){e.type===`tick`?D(`[${new Date(e.at).toLocaleTimeString()}] #${e.index} -> ${e.value.toFixed(8)}`):(D(`[${new Date(e.at).toLocaleTimeString()}] done: ${e.reason}`),S.value=!1,r.value=null,E())},onError(e){D(`[sub] error: ${e.message}`),S.value=!1,E()},onComplete(){D(`[sub] complete`),S.value=!1,E()}}),D(`[sub] started for job ${e}`)}async function A(){if(S.value)return;C.value=[],E();let e=await u.debug.startRandomJob.mutate({intervalMs:300,maxTicks:1e3});r.value=e.jobId,S.value=!0,E(),D(`[job] started id=${e.jobId}, intervalMs=${e.intervalMs}, maxTicks=${e.maxTicks}`),k(e.jobId)}async function j(){if(r.value)try{await u.debug.stopRandomJob.mutate({jobId:r.value}),D(`[job] stop requested id=${r.value}`),S.value=!1,r.value=null,E()}catch(e){D(`[job] stop error: ${e.message}`)}}function M(){C.value=[],E()}return s(async()=>{let e=sessionStorage.getItem(x);if(e)try{let t=JSON.parse(e);Array.isArray(t)&&(C.value=t)}catch{}let t=sessionStorage.getItem(b);if(t){r.value=t;try{let e=await u.debug.randomJobStatus.query({jobId:t});S.value=e.running,E(),e.running?(D(`[job] reconnected id=${t}, tick=${e.tick}`),k(t)):(D(`[job] previous job ended (id=${t})`),r.value=null,E())}catch{S.value=!1,r.value=null,D(`[job] previous job not found`),E()}}}),p(()=>{O()}),(t,o)=>(c(),a(`div`,h,[o[3]||=i(`header`,{class:`random-job-test__header`},[i(`h1`,null,`Random Job Test`),i(`p`,null,`Click start to launch a server job and stream Math.random() values in real time.`)],-1),i(`div`,g,[n(f(d),{label:`Start job`,icon:`pi pi-play`,disabled:S.value,onClick:A},null,8,[`disabled`]),n(f(d),{label:`Stop`,icon:`pi pi-stop`,severity:`danger`,disabled:!S.value,onClick:j},null,8,[`disabled`]),n(f(d),{label:`Clear logs`,icon:`pi pi-trash`,severity:`secondary`,outlined:``,onClick:M})]),i(`div`,_,[i(`span`,null,[o[0]||=i(`strong`,null,`Job ID:`,-1),e(` `+m(r.value??`none`),1)]),i(`span`,null,[o[1]||=i(`strong`,null,`Status:`,-1),e(` `+m(S.value?`running`:`idle`),1)]),i(`span`,null,[o[2]||=i(`strong`,null,`Lines:`,-1),e(` `+m(C.value.length),1)])]),i(`section`,{ref_key:`logsEl`,ref:w,class:`random-job-test__logs`,"aria-live":`polite`},[C.value.length===0?(c(),a(`div`,v,`No logs yet.`)):(c(),a(`pre`,y,m(C.value.join(`
1
+ import{Gr as e,Jr as t,Kr as n,Qt as r,Rr as i,Vr as a,Zi as o,di as s,hi as c,ii as l,jt as u,nn as d,oa as f,pi as p,zi as m}from"./index-Dl-HyfHx.js";var h={class:`random-job-test`},g={class:`random-job-test__actions`},_={class:`random-job-test__meta`},v={key:0,class:`random-job-test__empty`},y={key:1},b=`runeya:random-job-test:job-id`,x=`runeya:random-job-test:logs`,S=r(t({__name:`RandomJobTestPage`,setup(t){let r=o(null),S=o(!1),C=o([]),w=o(null),T=null;function E(){r.value?sessionStorage.setItem(b,r.value):sessionStorage.removeItem(b),sessionStorage.setItem(x,JSON.stringify(C.value))}function D(e){C.value=[...C.value,e],C.value.length>2e3&&(C.value=C.value.slice(C.value.length-2e3)),E(),l(()=>{w.value&&(w.value.scrollTop=w.value.scrollHeight)})}function O(){T?.unsubscribe(),T=null}function k(e){O(),T=u.debug.streamRandomJob.subscribe({jobId:e},{onData(e){e.type===`tick`?D(`[${new Date(e.at).toLocaleTimeString()}] #${e.index} -> ${e.value.toFixed(8)}`):(D(`[${new Date(e.at).toLocaleTimeString()}] done: ${e.reason}`),S.value=!1,r.value=null,E())},onError(e){D(`[sub] error: ${e.message}`),S.value=!1,E()},onComplete(){D(`[sub] complete`),S.value=!1,E()}}),D(`[sub] started for job ${e}`)}async function A(){if(S.value)return;C.value=[],E();let e=await u.debug.startRandomJob.mutate({intervalMs:300,maxTicks:1e3});r.value=e.jobId,S.value=!0,E(),D(`[job] started id=${e.jobId}, intervalMs=${e.intervalMs}, maxTicks=${e.maxTicks}`),k(e.jobId)}async function j(){if(r.value)try{await u.debug.stopRandomJob.mutate({jobId:r.value}),D(`[job] stop requested id=${r.value}`),S.value=!1,r.value=null,E()}catch(e){D(`[job] stop error: ${e.message}`)}}function M(){C.value=[],E()}return s(async()=>{let e=sessionStorage.getItem(x);if(e)try{let t=JSON.parse(e);Array.isArray(t)&&(C.value=t)}catch{}let t=sessionStorage.getItem(b);if(t){r.value=t;try{let e=await u.debug.randomJobStatus.query({jobId:t});S.value=e.running,E(),e.running?(D(`[job] reconnected id=${t}, tick=${e.tick}`),k(t)):(D(`[job] previous job ended (id=${t})`),r.value=null,E())}catch{S.value=!1,r.value=null,D(`[job] previous job not found`),E()}}}),p(()=>{O()}),(t,o)=>(c(),a(`div`,h,[o[3]||=i(`header`,{class:`random-job-test__header`},[i(`h1`,null,`Random Job Test`),i(`p`,null,`Click start to launch a server job and stream Math.random() values in real time.`)],-1),i(`div`,g,[n(f(d),{label:`Start job`,icon:`pi pi-play`,disabled:S.value,onClick:A},null,8,[`disabled`]),n(f(d),{label:`Stop`,icon:`pi pi-stop`,severity:`danger`,disabled:!S.value,onClick:j},null,8,[`disabled`]),n(f(d),{label:`Clear logs`,icon:`pi pi-trash`,severity:`secondary`,outlined:``,onClick:M})]),i(`div`,_,[i(`span`,null,[o[0]||=i(`strong`,null,`Job ID:`,-1),e(` `+m(r.value??`none`),1)]),i(`span`,null,[o[1]||=i(`strong`,null,`Status:`,-1),e(` `+m(S.value?`running`:`idle`),1)]),i(`span`,null,[o[2]||=i(`strong`,null,`Lines:`,-1),e(` `+m(C.value.length),1)])]),i(`section`,{ref_key:`logsEl`,ref:w,class:`random-job-test__logs`,"aria-live":`polite`},[C.value.length===0?(c(),a(`div`,v,`No logs yet.`)):(c(),a(`pre`,y,m(C.value.join(`
2
2
  `)),1))],512)]))}}),[[`__scopeId`,`data-v-96a75827`]]);export{S as default};
@@ -1 +1 @@
1
- .vue-flow__controls{box-shadow:0 0 2px 1px #00000014}.vue-flow__controls-button{box-sizing:content-box;cursor:pointer;-webkit-user-select:none;user-select:none;background:#fefefe;border:none;border-bottom:1px solid #eee;justify-content:center;align-items:center;width:16px;height:16px;padding:5px;display:flex}.vue-flow__controls-button svg{width:100%;max-width:12px;max-height:12px}.vue-flow__controls-button:hover{background:#f4f4f4}.vue-flow__controls-button:disabled{pointer-events:none}.vue-flow__controls-button:disabled svg{fill-opacity:.4}.vue-flow__minimap{background-color:#fff}.vue-flow__minimap.pannable{cursor:grab}.vue-flow__minimap.dragging{cursor:grabbing}.vue-flow__minimap-mask.pannable{cursor:grab}.scenario-node-editor[data-v-d47fface]{flex-direction:column;flex:1;gap:.6rem;padding:1rem;display:flex;overflow-y:auto}.form-row[data-v-d47fface]{grid-template-columns:1fr 1fr;gap:.5rem;display:grid}.form-row>.form-group[data-v-d47fface]{min-width:0}.form-group[data-v-d47fface]{flex-direction:column;gap:.25rem;display:flex}.form-label[data-v-d47fface]{opacity:.55;text-transform:uppercase;letter-spacing:.06em;font-size:.72rem;font-weight:600}.inline-check[data-v-d47fface]{align-items:center;gap:.5rem;padding:.25rem 0;font-size:.85rem;display:flex}.form-note[data-v-d47fface]{opacity:.6;align-self:center;font-size:.75rem}.role-preview[data-v-d47fface]{background:var(--p-content-hover-background,#6366f10f);border:1px solid var(--p-content-border-color);border-radius:4px;padding:.5rem .6rem}.role-preview__label[data-v-d47fface]{text-transform:uppercase;letter-spacing:.05em;opacity:.5;font-size:.7rem;font-weight:600}.role-preview__text[data-v-d47fface]{opacity:.75;white-space:pre-wrap;margin:.25rem 0 0;font-size:.78rem;line-height:1.4}.scenario-editor[data-v-2607ef52]{flex-direction:column;height:100%;display:flex}.scenario-editor__toolbar[data-v-2607ef52]{border-bottom:1px solid var(--p-content-border-color);flex-direction:column;flex-shrink:0;display:flex}.scenario-editor__toolbar-row[data-v-2607ef52]{align-items:center;gap:.4rem;padding:.35rem 1rem;display:flex}.scenario-editor__toolbar-row--primary[data-v-2607ef52]{border-bottom:1px solid var(--p-content-border-color)}.scenario-editor__toolbar-row--secondary[data-v-2607ef52]{padding-top:.25rem;padding-bottom:.25rem}.scenario-editor__toolbar-sep[data-v-2607ef52]{background:var(--p-content-border-color);width:1px;height:16px;margin:0 .2rem}.scenario-editor__icon-input[data-v-2607ef52]{border:1px solid var(--p-surface-300);background:var(--p-surface-0);border-radius:4px;align-items:center;gap:.4rem;padding:0 .4rem;display:flex}.scenario-editor__name[data-v-2607ef52]{width:200px}.scenario-editor__desc[data-v-2607ef52]{width:220px;font-size:.9rem}.scenario-editor__traversal-select[data-v-2607ef52]{width:150px;font-size:.85rem}.scenario-editor__traversal-help[data-v-2607ef52]{opacity:.5;cursor:help;flex-shrink:0;font-size:.85rem}.scenario-editor__traversal-help[data-v-2607ef52]:hover{opacity:.9}.scenario-editor__leader[data-v-2607ef52]{width:160px}.scenario-editor__content[data-v-2607ef52]{flex:1;min-height:0;display:flex;position:relative;overflow:hidden}.scenario-editor__canvas[data-v-2607ef52]{flex:1;width:100%;height:100%;min-height:0;position:relative}.scenario-editor__panel--editor[data-v-2607ef52]{border-left:1px solid var(--p-content-border-color);background:var(--p-content-background);z-index:10;flex-direction:column;width:340px;display:flex;position:absolute;top:0;bottom:0;right:0;overflow:hidden;box-shadow:-4px 0 24px #0000004d}.detail-header[data-v-2607ef52]{border-bottom:1px solid var(--p-content-border-color);flex-shrink:0;align-items:center;gap:.6rem;padding:.75rem 1rem;display:flex}.detail-header__icon[data-v-2607ef52]{opacity:.7;font-size:.95rem}.detail-header__title[data-v-2607ef52]{font-size:.9rem;font-weight:600}.detail-header__close[data-v-2607ef52]{margin-left:auto}.detail-body[data-v-2607ef52]{flex-direction:column;flex:1;gap:.85rem;padding:1rem;display:flex;overflow-y:auto}.detail-field[data-v-2607ef52]{flex-direction:column;gap:.35rem;display:flex}.detail-label[data-v-2607ef52]{opacity:.55;text-transform:uppercase;letter-spacing:.06em;font-size:.72rem;font-weight:600}.detail-color-row[data-v-2607ef52]{align-items:center;gap:.5rem;display:flex}.detail-color-picker[data-v-2607ef52]{cursor:pointer;background:0 0;border:none;border-radius:4px;flex-shrink:0;width:32px;height:32px;padding:2px}.detail-color-text[data-v-2607ef52]{flex:1;font-family:monospace;font-size:.85rem}.detail-footer[data-v-2607ef52]{border-top:1px solid var(--p-content-border-color);flex-shrink:0;padding:.75rem 1rem}.add-node-form[data-v-2607ef52]{flex-direction:column;gap:.5rem;padding:.5rem 0 1rem;display:flex}.add-node-label[data-v-2607ef52]{font-size:.875rem;font-weight:600}.required[data-v-2607ef52]{color:var(--p-red-400)}.scenario-editor__ai-panel[data-v-2607ef52]{border-right:1px solid var(--p-content-border-color);flex-direction:column;flex-shrink:0;gap:.75rem;width:320px;padding:1rem;display:flex;overflow-y:auto}.scenario-editor__ai-panel-header[data-v-2607ef52]{align-items:center;gap:.5rem;font-size:.95rem;font-weight:600;display:flex}.scenario-editor__ai-provider[data-v-2607ef52]{flex-direction:column;gap:.4rem;display:flex}.scenario-editor__ai-provider-label[data-v-2607ef52]{opacity:.6;font-size:.8rem}.scenario-editor__ai-no-provider[data-v-2607ef52]{color:var(--p-orange-400);background:color-mix(in srgb, var(--p-orange-400) 8%, transparent);border:1px solid color-mix(in srgb, var(--p-orange-400) 25%, transparent);border-radius:4px;align-items:center;gap:.5rem;padding:.5rem .75rem;font-size:.82rem;display:flex}.scenario-editor__ai-textarea[data-v-2607ef52]{resize:vertical;width:100%}.scenario-editor__ai-btn[data-v-2607ef52]{width:100%}.scenario-editor__ai-hint[data-v-2607ef52]{opacity:.4;margin:0;font-size:.75rem}.scenario-editor__ai-stream[data-v-2607ef52]{background:var(--p-content-hover-background);border:1px solid var(--p-content-border-color);border-radius:4px;padding:.5rem}.scenario-editor__ai-stream-label[data-v-2607ef52]{opacity:.55;align-items:center;gap:.4rem;margin-bottom:.4rem;font-size:.78rem;display:flex}.scenario-editor__ai-stream-text[data-v-2607ef52]{opacity:.5;white-space:pre-wrap;word-break:break-all;max-height:180px;margin:0;font-size:.7rem;overflow-y:auto}.scenario-editor__ai-error[data-v-2607ef52]{color:var(--p-red-400);align-items:center;gap:.4rem;font-size:.82rem;display:flex}.export-json[data-v-2607ef52]{background:var(--p-content-hover-background);border:1px solid var(--p-content-border-color);white-space:pre-wrap;word-break:break-all;border-radius:4px;max-height:400px;padding:.75rem;font-size:.78rem;overflow-y:auto}.import-error[data-v-2607ef52]{color:var(--p-red-400);margin-top:.5rem;font-size:.82rem}.scenario-editor__toolbar-btn[data-v-2607ef52]{gap:.3rem;font-size:.78rem}.add-node-popover[data-v-2607ef52]{flex-direction:column;gap:.25rem;min-width:200px;padding:.25rem;display:flex}.add-node-popover__item[data-v-2607ef52]{cursor:pointer;color:var(--p-text-color);text-align:left;background:0 0;border:none;border-radius:4px;align-items:center;gap:.75rem;width:100%;padding:.6rem .75rem;transition:background .15s;display:flex}.add-node-popover__item[data-v-2607ef52]:hover{background:var(--p-content-hover-background)}.add-node-popover__item svg[data-v-2607ef52]{opacity:.7;flex-shrink:0}.add-node-popover__item-text[data-v-2607ef52]{flex-direction:column;gap:.1rem;display:flex}.add-node-popover__item-label[data-v-2607ef52]{font-size:.85rem;font-weight:600}.add-node-popover__item-desc[data-v-2607ef52]{opacity:.5;font-size:.75rem}.switch-dialog__intro{opacity:.8;margin:0 0 .75rem;font-size:.875rem}.switch-dialog__links{flex-direction:column;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.switch-dialog__links li{align-items:center;gap:.5rem;font-size:.85rem;display:flex}.switch-dialog__node{background:var(--p-content-hover-background);border:1px solid var(--p-content-border-color);border-radius:4px;padding:.15rem .4rem;font-family:monospace}.switch-dialog__arrow{opacity:.5;font-size:.7rem}.drawer-enter-active,.drawer-leave-active{transition:transform .22s cubic-bezier(.4,0,.2,1)}.drawer-enter-from,.drawer-leave-to{transform:translate(100%)}.scenario-flow-canvas .vue-flow__pane{background-color:#0b0c14;background-image:radial-gradient(circle,#6366f18c 1.5px,#0000 1.5px);background-size:28px 28px}.scenario-flow-canvas .vue-flow__background{background-color:#0b0c14}.scenario-flow-canvas .vue-flow__node-default{box-shadow:none!important;background:0 0!important;border:none!important;border-radius:0!important;padding:0!important}.scenario-flow-canvas .vue-flow__node-group{box-shadow:none!important;background:0 0!important;border:none!important;padding:0!important}.scenario-flow-canvas .vue-flow__edge-path{stroke:#6366f18c;stroke-width:2.5px;filter:drop-shadow(0 0 3px #6366f166)}.scenario-flow-canvas .vue-flow__edge.animated .vue-flow__edge-path{will-change:stroke-dashoffset;animation:1.2s linear infinite scenario-dash}@keyframes scenario-dash{0%{stroke-dashoffset:8px}to{stroke-dashoffset:0}}.scenario-flow-canvas .vue-flow__edge.selected:not(.edge--cycle) .vue-flow__edge-path{stroke:#a855f7!important;stroke-width:4px!important;filter:drop-shadow(0 0 8px #a855f7cc)!important}.scenario-flow-canvas .vue-flow__edge.edge--cycle .vue-flow__edge-path{stroke:#ef4444!important;stroke-width:3px!important;filter:drop-shadow(0 0 6px #ef4444b3)!important}.scenario-flow-canvas .vue-flow__connection-path{stroke:#6366f199;stroke-width:2px;stroke-dasharray:6 4}.scenario-flow-canvas .vue-flow__selection{background:#6366f10f;border:1px dashed #6366f180}
1
+ .vue-flow__controls{box-shadow:0 0 2px 1px #00000014}.vue-flow__controls-button{box-sizing:content-box;cursor:pointer;-webkit-user-select:none;user-select:none;background:#fefefe;border:none;border-bottom:1px solid #eee;justify-content:center;align-items:center;width:16px;height:16px;padding:5px;display:flex}.vue-flow__controls-button svg{width:100%;max-width:12px;max-height:12px}.vue-flow__controls-button:hover{background:#f4f4f4}.vue-flow__controls-button:disabled{pointer-events:none}.vue-flow__controls-button:disabled svg{fill-opacity:.4}.vue-flow__minimap{background-color:#fff}.vue-flow__minimap.pannable{cursor:grab}.vue-flow__minimap.dragging{cursor:grabbing}.vue-flow__minimap-mask.pannable{cursor:grab}.scenario-node-editor[data-v-d47fface]{flex-direction:column;flex:1;gap:.6rem;padding:1rem;display:flex;overflow-y:auto}.form-row[data-v-d47fface]{grid-template-columns:1fr 1fr;gap:.5rem;display:grid}.form-row>.form-group[data-v-d47fface]{min-width:0}.form-group[data-v-d47fface]{flex-direction:column;gap:.25rem;display:flex}.form-label[data-v-d47fface]{opacity:.55;text-transform:uppercase;letter-spacing:.06em;font-size:.72rem;font-weight:600}.inline-check[data-v-d47fface]{align-items:center;gap:.5rem;padding:.25rem 0;font-size:.85rem;display:flex}.form-note[data-v-d47fface]{opacity:.6;align-self:center;font-size:.75rem}.role-preview[data-v-d47fface]{background:var(--p-content-hover-background,#6366f10f);border:1px solid var(--p-content-border-color);border-radius:4px;padding:.5rem .6rem}.role-preview__label[data-v-d47fface]{text-transform:uppercase;letter-spacing:.05em;opacity:.5;font-size:.7rem;font-weight:600}.role-preview__text[data-v-d47fface]{opacity:.75;white-space:pre-wrap;margin:.25rem 0 0;font-size:.78rem;line-height:1.4}.scenario-editor[data-v-bd84df09]{flex-direction:column;height:100%;display:flex}.scenario-editor__toolbar[data-v-bd84df09]{border-bottom:1px solid var(--p-content-border-color);flex-direction:column;flex-shrink:0;display:flex}.scenario-editor__toolbar-row[data-v-bd84df09]{align-items:center;gap:.4rem;padding:.35rem 1rem;display:flex}.scenario-editor__toolbar-row--primary[data-v-bd84df09]{border-bottom:1px solid var(--p-content-border-color)}.scenario-editor__toolbar-row--secondary[data-v-bd84df09]{padding-top:.25rem;padding-bottom:.25rem}.scenario-editor__toolbar-sep[data-v-bd84df09]{background:var(--p-content-border-color);width:1px;height:16px;margin:0 .2rem}.scenario-editor__icon-input[data-v-bd84df09]{border:1px solid var(--p-surface-300);background:var(--p-surface-0);border-radius:4px;align-items:center;gap:.4rem;padding:0 .4rem;display:flex}.scenario-editor__name[data-v-bd84df09]{width:200px}.scenario-editor__desc[data-v-bd84df09]{width:220px;font-size:.9rem}.scenario-editor__traversal-select[data-v-bd84df09]{width:150px;font-size:.85rem}.scenario-editor__traversal-help[data-v-bd84df09]{opacity:.5;cursor:help;flex-shrink:0;font-size:.85rem}.scenario-editor__traversal-help[data-v-bd84df09]:hover{opacity:.9}.scenario-editor__leader[data-v-bd84df09]{width:160px}.scenario-editor__content[data-v-bd84df09]{flex:1;min-height:0;display:flex;position:relative;overflow:hidden}.scenario-editor__canvas[data-v-bd84df09]{flex:1;width:100%;height:100%;min-height:0;position:relative}.scenario-editor__panel--editor[data-v-bd84df09]{border-left:1px solid var(--p-content-border-color);background:var(--p-content-background);z-index:10;flex-direction:column;width:340px;display:flex;position:absolute;top:0;bottom:0;right:0;overflow:hidden;box-shadow:-4px 0 24px #0000004d}.detail-header[data-v-bd84df09]{border-bottom:1px solid var(--p-content-border-color);flex-shrink:0;align-items:center;gap:.6rem;padding:.75rem 1rem;display:flex}.detail-header__icon[data-v-bd84df09]{opacity:.7;font-size:.95rem}.detail-header__title[data-v-bd84df09]{font-size:.9rem;font-weight:600}.detail-header__close[data-v-bd84df09]{margin-left:auto}.detail-body[data-v-bd84df09]{flex-direction:column;flex:1;gap:.85rem;padding:1rem;display:flex;overflow-y:auto}.detail-field[data-v-bd84df09]{flex-direction:column;gap:.35rem;display:flex}.detail-label[data-v-bd84df09]{opacity:.55;text-transform:uppercase;letter-spacing:.06em;font-size:.72rem;font-weight:600}.detail-color-row[data-v-bd84df09]{align-items:center;gap:.5rem;display:flex}.detail-color-picker[data-v-bd84df09]{cursor:pointer;background:0 0;border:none;border-radius:4px;flex-shrink:0;width:32px;height:32px;padding:2px}.detail-color-text[data-v-bd84df09]{flex:1;font-family:monospace;font-size:.85rem}.detail-footer[data-v-bd84df09]{border-top:1px solid var(--p-content-border-color);flex-shrink:0;padding:.75rem 1rem}.add-node-form[data-v-bd84df09]{flex-direction:column;gap:.5rem;padding:.5rem 0 1rem;display:flex}.add-node-label[data-v-bd84df09]{font-size:.875rem;font-weight:600}.required[data-v-bd84df09]{color:var(--p-red-400)}.scenario-editor__ai-panel[data-v-bd84df09]{border-right:1px solid var(--p-content-border-color);flex-direction:column;flex-shrink:0;gap:.75rem;width:320px;padding:1rem;display:flex;overflow-y:auto}.scenario-editor__ai-panel-header[data-v-bd84df09]{align-items:center;gap:.5rem;font-size:.95rem;font-weight:600;display:flex}.scenario-editor__ai-provider[data-v-bd84df09]{flex-direction:column;gap:.4rem;display:flex}.scenario-editor__ai-provider-label[data-v-bd84df09]{opacity:.6;font-size:.8rem}.scenario-editor__ai-no-provider[data-v-bd84df09]{color:var(--p-orange-400);background:color-mix(in srgb, var(--p-orange-400) 8%, transparent);border:1px solid color-mix(in srgb, var(--p-orange-400) 25%, transparent);border-radius:4px;align-items:center;gap:.5rem;padding:.5rem .75rem;font-size:.82rem;display:flex}.scenario-editor__ai-textarea[data-v-bd84df09]{resize:vertical;width:100%}.scenario-editor__ai-btn[data-v-bd84df09]{width:100%}.scenario-editor__ai-hint[data-v-bd84df09]{opacity:.4;margin:0;font-size:.75rem}.scenario-editor__ai-stream[data-v-bd84df09]{background:var(--p-content-hover-background);border:1px solid var(--p-content-border-color);border-radius:4px;padding:.5rem}.scenario-editor__ai-stream-label[data-v-bd84df09]{opacity:.55;align-items:center;gap:.4rem;margin-bottom:.4rem;font-size:.78rem;display:flex}.scenario-editor__ai-stream-text[data-v-bd84df09]{opacity:.5;white-space:pre-wrap;word-break:break-all;max-height:180px;margin:0;font-size:.7rem;overflow-y:auto}.scenario-editor__ai-error[data-v-bd84df09]{color:var(--p-red-400);align-items:center;gap:.4rem;font-size:.82rem;display:flex}.export-json[data-v-bd84df09]{background:var(--p-content-hover-background);border:1px solid var(--p-content-border-color);white-space:pre-wrap;word-break:break-all;border-radius:4px;max-height:400px;padding:.75rem;font-size:.78rem;overflow-y:auto}.import-error[data-v-bd84df09]{color:var(--p-red-400);margin-top:.5rem;font-size:.82rem}.scenario-editor__toolbar-btn[data-v-bd84df09]{gap:.3rem;font-size:.78rem}.add-node-popover[data-v-bd84df09]{flex-direction:column;gap:.25rem;min-width:200px;padding:.25rem;display:flex}.add-node-popover__item[data-v-bd84df09]{cursor:pointer;color:var(--p-text-color);text-align:left;background:0 0;border:none;border-radius:4px;align-items:center;gap:.75rem;width:100%;padding:.6rem .75rem;transition:background .15s;display:flex}.add-node-popover__item[data-v-bd84df09]:hover{background:var(--p-content-hover-background)}.add-node-popover__item svg[data-v-bd84df09]{opacity:.7;flex-shrink:0}.add-node-popover__item-text[data-v-bd84df09]{flex-direction:column;gap:.1rem;display:flex}.add-node-popover__item-label[data-v-bd84df09]{font-size:.85rem;font-weight:600}.add-node-popover__item-desc[data-v-bd84df09]{opacity:.5;font-size:.75rem}.switch-dialog__intro{opacity:.8;margin:0 0 .75rem;font-size:.875rem}.switch-dialog__links{flex-direction:column;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.switch-dialog__links li{align-items:center;gap:.5rem;font-size:.85rem;display:flex}.switch-dialog__node{background:var(--p-content-hover-background);border:1px solid var(--p-content-border-color);border-radius:4px;padding:.15rem .4rem;font-family:monospace}.switch-dialog__arrow{opacity:.5;font-size:.7rem}.drawer-enter-active,.drawer-leave-active{transition:transform .22s cubic-bezier(.4,0,.2,1)}.drawer-enter-from,.drawer-leave-to{transform:translate(100%)}.scenario-flow-canvas .vue-flow__pane{background-color:#0b0c14;background-image:radial-gradient(circle,#6366f18c 1.5px,#0000 1.5px);background-size:28px 28px}.scenario-flow-canvas .vue-flow__background{background-color:#0b0c14}.scenario-flow-canvas .vue-flow__node-default{box-shadow:none!important;background:0 0!important;border:none!important;border-radius:0!important;padding:0!important}.scenario-flow-canvas .vue-flow__node-group{box-shadow:none!important;background:0 0!important;border:none!important;padding:0!important}.scenario-flow-canvas .vue-flow__edge-path{stroke:#6366f18c;stroke-width:2.5px;filter:drop-shadow(0 0 3px #6366f166)}.scenario-flow-canvas .vue-flow__edge.animated .vue-flow__edge-path{will-change:stroke-dashoffset;animation:1.2s linear infinite scenario-dash}@keyframes scenario-dash{0%{stroke-dashoffset:8px}to{stroke-dashoffset:0}}.scenario-flow-canvas .vue-flow__edge.selected:not(.edge--cycle) .vue-flow__edge-path{stroke:#a855f7!important;stroke-width:4px!important;filter:drop-shadow(0 0 8px #a855f7cc)!important}.scenario-flow-canvas .vue-flow__edge.edge--cycle .vue-flow__edge-path{stroke:#ef4444!important;stroke-width:3px!important;filter:drop-shadow(0 0 6px #ef4444b3)!important}.scenario-flow-canvas .vue-flow__connection-path{stroke:#6366f199;stroke-width:2px;stroke-dasharray:6 4}.scenario-flow-canvas .vue-flow__selection{background:#6366f10f;border:1px dashed #6366f180}
@@ -0,0 +1,14 @@
1
+ import{$r as e,B as t,Br as n,Bt as r,C as i,Ci as a,Ei as o,Gr as s,Ii as c,J as l,Jr as u,Kr as d,Li as f,Lr as p,Mi as m,Mr as h,Ni as g,Oi as _,Pr as v,Qt as y,Ri as b,Rr as x,S,Vr as C,Xr as ee,Y as te,Yt as w,Zi as T,_ as ne,_i as re,_t as ie,b as E,bi as ae,bn as oe,br as se,ct as ce,di as le,dt as D,en as O,et as ue,g as k,gi as de,h as fe,hi as A,hn as pe,ii as me,jr as he,jt as ge,ki as _e,m as ve,mn as ye,na as be,nn as j,oa as M,pi as xe,qt as Se,ri as Ce,v as we,vi as N,w as Te,wn as Ee,x as De,xi as Oe,xr as ke,y as Ae,z as je,zi as P,zr as F,zt as Me}from"./index-Dl-HyfHx.js";import{t as Ne}from"./checkbox-DDSZK_Pi.js";import{t as Pe}from"./multiselect-CE72JxFr.js";import{t as Fe}from"./uuid-B3B8HIK9.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 A(),C(`button`,I,[N(e.$slots,`default`)])}var Re=Le(Ie,[[`render`,L]]),ze={xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 32 32`},Be=[x(`path`,{d:`M32 18.133H18.133V32h-4.266V18.133H0v-4.266h13.867V0h4.266v13.867H32z`},null,-1)];function Ve(e,t){return A(),C(`svg`,ze,Be)}var R={render:Ve},He={xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 32 5`},Ue=[x(`path`,{d:`M0 0h32v4.2H0z`},null,-1)];function We(e,t){return A(),C(`svg`,He,Ue)}var Ge={render:We},Ke={xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 32 30`},qe=[x(`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 A(),C(`svg`,Ke,qe)}var Ye={render:Je},Xe={xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 25 32`},Ze=[x(`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 A(),C(`svg`,Xe,Ze)}var $e={render:Qe},z={xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 25 32`},B=[x(`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 A(),C(`svg`,z,B)}var H={render:V},et=u({name:`Controls`,compatConfig:{MODE:3},props:{showZoom:{type:Boolean,default:!0},showFitView:{type:Boolean,default:!0},showInteractive:{type:Boolean,default:!0},fitViewParams:{},position:{default:()=>k.BottomLeft}},emits:[`zoomIn`,`zoomOut`,`fitView`,`interactionChange`],setup(e,{emit:t}){let{nodesDraggable:r,nodesConnectable:a,elementsSelectable:o,setInteractive:s,zoomIn:c,zoomOut:l,fitView:u,viewport:f,minZoom:p,maxZoom:h}=i(),g=be(()=>r.value||a.value||o.value),_=be(()=>f.value.zoom<=p.value),y=be(()=>f.value.zoom>=h.value);function b(){c(),t(`zoomIn`)}function x(){l(),t(`zoomOut`)}function S(){u(e.fitViewParams),t(`fitView`)}function ee(){s(!g.value),t(`interactionChange`,!g.value)}return(e,t)=>(A(),F(M(ne),{class:`vue-flow__controls`,position:e.position},{default:m(()=>[N(e.$slots,`top`),e.showZoom?(A(),C(v,{key:0},[N(e.$slots,`control-zoom-in`,{},()=>[d(Re,{class:`vue-flow__controls-zoomin`,disabled:y.value,onClick:b},{default:m(()=>[N(e.$slots,`icon-zoom-in`,{},()=>[(A(),F(Oe(M(R))))])]),_:3},8,[`disabled`])]),N(e.$slots,`control-zoom-out`,{},()=>[d(Re,{class:`vue-flow__controls-zoomout`,disabled:_.value,onClick:x},{default:m(()=>[N(e.$slots,`icon-zoom-out`,{},()=>[(A(),F(Oe(M(Ge))))])]),_:3},8,[`disabled`])])],64)):n(``,!0),e.showFitView?N(e.$slots,`control-fit-view`,{key:1},()=>[d(Re,{class:`vue-flow__controls-fitview`,onClick:S},{default:m(()=>[N(e.$slots,`icon-fit-view`,{},()=>[(A(),F(Oe(M(Ye))))])]),_:3})]):n(``,!0),e.showInteractive?N(e.$slots,`control-interactive`,{key:2},()=>[e.showInteractive?(A(),F(Re,{key:0,class:`vue-flow__controls-interactive`,onClick:ee},{default:m(()=>[g.value?N(e.$slots,`icon-unlock`,{key:0},()=>[(A(),F(Oe(M(H))))]):n(``,!0),g.value?n(``,!0):N(e.$slots,`icon-lock`,{key:1},()=>[(A(),F(Oe(M($e))))])]),_:3})):n(``,!0)]):n(``,!0),N(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`,ee,{passive:!1}).on(`mousedown.zoom`,te).on(`dblclick.zoom`,w).filter(i).on(`touchstart.zoom`,T).on(`touchmove.zoom`,ne).on(`touchend.zoom touchcancel.zoom`,re).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 ee(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 te(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 w(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 T(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 ne(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 re(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=u({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(t,{emit:r}){let i=t,o=e(xo),s=a(),c=be(()=>s.style??{});function l(e){r(`click`,e)}function u(e){r(`dblclick`,e)}function d(e){r(`mouseenter`,e)}function p(e){r(`mousemove`,e)}function m(e){r(`mouseleave`,e)}return(e,t)=>!e.hidden&&e.dimensions.width!==0&&e.dimensions.height!==0?(A(),C(v,{key:0},[M(o)[`node-${i.type}`]?(A(),F(Oe(M(o)[`node-${i.type}`]),f(Ce({key:0},{...i,...e.$attrs})),null,16)):(A(),C(`rect`,Ce({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||c.value.background||c.value.backgroundColor,stroke:e.strokeColor,"stroke-width":e.strokeWidth,"shape-rendering":e.shapeRendering,onClick:l,onDblclick:u,onMouseenter:d,onMousemove:p,onMouseleave:m}),null,16,So))],64)):n(``,!0)}}),wo=[`width`,`height`,`viewBox`,`aria-labelledby`],To=[`id`],Eo=[`d`,`fill`,`stroke`,`stroke-width`],Do=u({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 r=o(),s=a(),{id:l,edges:u,viewport:d,translateExtent:f,dimensions:h,emits:g,d3Selection:_,d3Zoom:y,getNodesInitialized:ee}=i(),te=T();de(xo,r);let w=be(()=>e.width??s.style?.width??200),ie=be(()=>e.height??s.style?.height??150),ae=typeof window>`u`||window.chrome?`crispEdges`:`geometricPrecision`,oe=p(()=>typeof e.nodeColor==`string`?()=>e.nodeColor:e.nodeColor),se=p(()=>typeof e.nodeStrokeColor==`string`?()=>e.nodeStrokeColor:e.nodeStrokeColor),ce=p(()=>typeof e.nodeClassName==`string`?()=>e.nodeClassName:typeof e.nodeClassName==`function`?e.nodeClassName:()=>``),le=p(()=>De(ee.value.filter(e=>!e.hidden))),D=p(()=>({x:-d.value.x/d.value.zoom,y:-d.value.y/d.value.zoom,width:h.value.width/d.value.zoom,height:h.value.height/d.value.zoom})),O=p(()=>ee.value&&ee.value.length?Ae(le.value,D.value):D.value),ue=p(()=>{let e=O.value.width/w.value,t=O.value.height/ie.value;return Math.max(e,t)}),k=p(()=>{let t=ue.value*w.value,n=ue.value*ie.value,r=e.offsetScale*ue.value;return{offset:r,x:O.value.x-(t-O.value.width)/2-r,y:O.value.y-(n-O.value.height)/2-r,width:t+r*2,height:n+r*2}}),fe=p(()=>!k.value.x||!k.value.y?``:`
2
+ M${k.value.x-k.value.offset},${k.value.y-k.value.offset}
3
+ h${k.value.width+k.value.offset*2}
4
+ v${k.value.height+k.value.offset*2}
5
+ h${-k.value.width-k.value.offset*2}z
6
+ M${D.value.x+e.maskBorderRadius},${D.value.y}
7
+ h${D.value.width-2*e.maskBorderRadius}
8
+ a${e.maskBorderRadius},${e.maskBorderRadius} 0 0 1 ${e.maskBorderRadius},${e.maskBorderRadius}
9
+ v${D.value.height-2*e.maskBorderRadius}
10
+ a${e.maskBorderRadius},${e.maskBorderRadius} 0 0 1 -${e.maskBorderRadius},${e.maskBorderRadius}
11
+ h${-(D.value.width-2*e.maskBorderRadius)}
12
+ a${e.maskBorderRadius},${e.maskBorderRadius} 0 0 1 -${e.maskBorderRadius},-${e.maskBorderRadius}
13
+ v${-(D.value.height-2*e.maskBorderRadius)}
14
+ a${e.maskBorderRadius},${e.maskBorderRadius} 0 0 1 ${e.maskBorderRadius},-${e.maskBorderRadius}z`);_e(t=>{if(te.value){let n=nr(te.value),r=bo().wheelDelta(t=>Te(t)*(e.zoomStep/10)).on(`zoom`,e.pannable?t=>{if(t.sourceEvent.type!==`mousemove`||!_.value||!y.value)return;let n=ue.value*Math.max(1,d.value.zoom)*(e.inversePan?-1:1),r={x:d.value.x-t.sourceEvent.movementX*n,y:d.value.y-t.sourceEvent.movementY*n},i=[[0,0],[h.value.width,h.value.height]],a=uo.translate(r.x,r.y).scale(d.value.zoom),o=y.value.constrain()(a,i,f.value);y.value.transform(_.value,o)}:()=>{}).on(`zoom.wheel`,e.zoomable?t=>{if(t.sourceEvent.type!==`wheel`||!_.value||!y.value)return;let n=t.sourceEvent.ctrlKey&&S()?10:1,r=-t.sourceEvent.deltaY*(t.sourceEvent.deltaMode===1?.05:t.sourceEvent.deltaMode?1:.002)*e.zoomStep,i=d.value.zoom*2**(r*n);y.value.scaleTo(_.value,i)}:()=>{});n.call(r),t(()=>{n.on(`zoom`,null)})}},{flush:`post`});function pe(e){let[n,r]=ir(e);t(`click`,{event:e,position:{x:n,y:r}})}function me(e,n){let r={event:e,node:n,connectedEdges:E([n],u.value)};g.miniMapNodeClick(r),t(`nodeClick`,r)}function he(e,n){let r={event:e,node:n,connectedEdges:E([n],u.value)};g.miniMapNodeDoubleClick(r),t(`nodeDblclick`,r)}function ge(e,n){let r={event:e,node:n,connectedEdges:E([n],u.value)};g.miniMapNodeMouseEnter(r),t(`nodeMouseenter`,r)}function ve(e,n){let r={event:e,node:n,connectedEdges:E([n],u.value)};g.miniMapNodeMouseMove(r),t(`nodeMousemove`,r)}function ye(e,n){let r={event:e,node:n,connectedEdges:E([n],u.value)};g.miniMapNodeMouseLeave(r),t(`nodeMouseleave`,r)}return(e,t)=>(A(),F(M(ne),{position:e.position,class:c([`vue-flow__minimap`,{pannable:e.pannable,zoomable:e.zoomable}])},{default:m(()=>[(A(),C(`svg`,{ref_key:`el`,ref:te,width:w.value,height:ie.value,viewBox:[k.value.x,k.value.y,k.value.width,k.value.height].join(` `),role:`img`,"aria-labelledby":`vue-flow__minimap-${M(l)}`,onClick:pe},[e.ariaLabel?(A(),C(`title`,{key:0,id:`vue-flow__minimap-${M(l)}`},P(e.ariaLabel),9,To)):n(``,!0),(A(!0),C(v,null,re(M(ee),t=>(A(),F(Co,{id:t.id,key:t.id,f:``,position:t.computedPosition,dimensions:t.dimensions,selected:t.selected,dragging:t.dragging,style:b(t.style),class:c(ce.value(t)),color:oe.value(t),"border-radius":e.nodeBorderRadius,"stroke-color":se.value(t),"stroke-width":e.nodeStrokeWidth,"shape-rendering":M(ae),type:t.type,hidden:t.hidden,onClick:e=>me(e,t),onDblclick:e=>he(e,t),onMouseenter:e=>ge(e,t),onMousemove:e=>ve(e,t),onMouseleave:e=>ye(e,t)},null,8,[`id`,`position`,`dimensions`,`selected`,`dragging`,`style`,`class`,`color`,`border-radius`,`stroke-color`,`stroke-width`,`shape-rendering`,`type`,`hidden`,`onClick`,`onDblclick`,`onMouseenter`,`onMousemove`,`onMouseleave`]))),128)),x(`path`,{class:`vue-flow__minimap-mask`,d:fe.value,fill:e.maskColor,stroke:e.maskStrokeColor,"stroke-width":e.maskStrokeWidth,"fill-rule":`evenodd`},null,8,Eo)],8,wo))]),_:1},8,[`position`,`class`]))}}),Oo={group:`Group`,node:`Node`,role:`Role`,leader:`Leader`};function ko(e){let{locale:t}=Ee();function n(n){let r=(typeof e==`function`?e():e.value)?.labels?.[n];if(!r)return Oo[n];let i=t.value;return r[i]??r[i.split(`-`)[0]]??Oo[n]}return p(()=>({group:n(`group`),node:n(`node`),role:n(`role`),leader:n(`leader`)}))}var Ao={class:`scenario-node-editor`},jo={class:`form-row`},Mo={class:`form-group`},No={class:`form-label`,for:`scennode-label`},Po={key:0,class:`form-group`},Fo={class:`form-label`,for:`scennode-role`},Io={key:0,class:`role-preview`},Lo={class:`role-preview__label`},Ro={class:`role-preview__text`},zo={class:`form-row`},Bo={class:`form-group`},Vo={class:`form-label`,for:`scennode-group`},Ho={key:0,class:`form-group`},Uo={class:`form-label`,for:`scennode-parent`},Wo={class:`form-row`},Go={class:`form-group`},Ko={class:`form-label`,for:`scennode-aicli`},qo={class:`form-group`},Jo={class:`form-label`,for:`scennode-model`},Yo={key:1,class:`form-note`},Xo={class:`inline-check`},Zo={for:`canAddNode`},Qo={class:`inline-check`},$o={for:`injectParentOutputs`},es={key:0,class:`form-group`},ts={class:`form-label`,for:`scennode-ancestors`},ns={class:`inline-check`},rs={for:`isLeader`},is={class:`form-note`},as={key:2,class:`form-group`},os={class:`form-label`,for:`scennode-question`},ss={key:3,class:`form-group`},cs={class:`form-label`,for:`scennode-prompt`},ls=y(u({__name:`ScenarioNodeEditor`,props:{node:{},groups:{},nodes:{},leaderId:{},preset:{},traversalMode:{}},emits:[`update`,`delete`,`set-leader`],setup(e,{emit:i}){let a=e,{t:o}=Ee(),{claudeCodeAvailable:c,codexAvailable:l}=se(t()),u=i;function f(e){return e===`codex`?``:`sonnet`}let m=T({...a.node,aiCli:a.node.aiCli??`claude-code`,model:a.node.model??f(a.node.aiCli),injectParentOutputs:a.node.injectParentOutputs??!1,injectedAncestorIds:a.node.injectedAncestorIds??[]});function h(e){return{...e,aiCli:e.aiCli??`claude-code`,model:e.model??f(e.aiCli),injectParentOutputs:e.injectParentOutputs??!1,injectedAncestorIds:e.injectedAncestorIds??[]}}let g=h(a.node);_(()=>a.node,e=>{g=h(e),m.value=h(e)},{deep:!0}),_(m,e=>{let t={};e.label!==g.label&&(t.label=e.label),e.role!==g.role&&(t.role=e.role),e.groupId!==g.groupId&&(t.groupId=e.groupId),JSON.stringify(e.parentIds)!==JSON.stringify(g.parentIds)&&(t.parentIds=e.parentIds),e.prompt!==g.prompt&&(t.prompt=e.prompt),e.question!==g.question&&(t.question=e.question),e.canAddNode!==g.canAddNode&&(t.canAddNode=e.canAddNode),e.aiCli!==g.aiCli&&(t.aiCli=e.aiCli),e.model!==g.model&&(t.model=e.model),e.injectParentOutputs!==g.injectParentOutputs&&(t.injectParentOutputs=e.injectParentOutputs),JSON.stringify(e.injectedAncestorIds)!==JSON.stringify(g.injectedAncestorIds)&&(t.injectedAncestorIds=e.injectedAncestorIds),Object.keys(t).length>0&&u(`update`,t)},{deep:!0});let y=p(()=>a.preset?.roles.length?a.preset.roles.map(e=>({label:e.name,value:e.id})):[]),b=p(()=>[{label:`Claude Code${c.value?``:` — non installé`}`,value:`claude-code`,disabled:!c.value},{label:`Codex (OpenAI)${l.value?``:` — non installé`}`,value:`codex`,disabled:!l.value}]),S=p(()=>m.value.aiCli===`codex`?[]:[{label:o(`scenarioNodeEditor.modelHaiku`),value:`haiku`},{label:o(`scenarioNodeEditor.modelSonnet`),value:`sonnet`},{label:o(`scenarioNodeEditor.modelOpus`),value:`opus`}]);_(()=>m.value.aiCli,(e,t)=>{if(e===t)return;let n={"claude-code":`sonnet`,codex:``};m.value.model=n[e]??`sonnet`});let ee=p(()=>a.groups.map(e=>({label:e.name,value:e.id}))),te=p(()=>a.nodes.filter(e=>e.id!==a.node.id).map(e=>({label:e.label||e.id,value:e.id}))),ne=p(()=>a.traversalMode===`topological`);_(()=>m.value.parentIds,()=>{let e=new Map(a.nodes.map(e=>[e.id,e])),t=new Set,n=[...m.value.parentIds];for(;n.length>0;){let r=n.shift();if(!t.has(r)){t.add(r);let i=e.get(r);i&&n.push(...i.parentIds)}}m.value.injectedAncestorIds=(m.value.injectedAncestorIds??[]).filter(e=>t.has(e))});let re=p(()=>{let e=new Map(a.nodes.map(e=>[e.id,e])),t=new Set,n=[...a.node.parentIds??[]];for(;n.length>0;){let r=n.shift();if(!t.has(r)){t.add(r);let i=e.get(r);i&&n.push(...i.parentIds)}}return a.nodes.filter(e=>t.has(e.id)).map(e=>({label:e.label||e.id,value:e.id}))}),ie=p(()=>a.node.id===a.leaderId);p(()=>!ie.value);let E=p(()=>!ie.value),ae=ko(()=>a.preset),oe=p(()=>a.preset?.roles.find(e=>e.id===m.value.role));return(e,t)=>(A(),C(`div`,Ao,[x(`div`,jo,[x(`div`,Mo,[x(`label`,No,P(M(o)(`scenarioNodeEditor.label`)),1),d(M(w),{id:`scennode-label`,modelValue:m.value.label,"onUpdate:modelValue":t[0]||=e=>m.value.label=e,class:`w-full`,size:`small`,placeholder:`${M(ae).node} name`},null,8,[`modelValue`,`placeholder`])]),y.value.length?(A(),C(`div`,Po,[x(`label`,Fo,P(M(ae).role),1),d(M(r),{"input-id":`scennode-role`,modelValue:m.value.role,"onUpdate:modelValue":t[1]||=e=>m.value.role=e,options:y.value,"option-label":`label`,"option-value":`value`,class:`w-full`,size:`small`},null,8,[`modelValue`,`options`])])):n(``,!0)]),oe.value?.systemPrompt?(A(),C(`div`,Io,[x(`span`,Lo,P(M(o)(`scenarioNodeEditor.systemPrompt`)),1),x(`p`,Ro,P(oe.value.systemPrompt),1)])):n(``,!0),x(`div`,zo,[x(`div`,Bo,[x(`label`,Vo,P(M(ae).group),1),d(M(r),{"input-id":`scennode-group`,modelValue:m.value.groupId,"onUpdate:modelValue":t[2]||=e=>m.value.groupId=e,options:ee.value,"option-label":`label`,"option-value":`value`,placeholder:`Select a ${M(ae).group.toLowerCase()}`,class:`w-full`,size:`small`},null,8,[`modelValue`,`options`,`placeholder`])]),E.value?(A(),C(`div`,Ho,[x(`label`,Uo,P(M(o)(`scenarioNodeEditor.reportsTo`)),1),d(M(r),{"input-id":`scennode-parent`,"model-value":m.value.parentIds[0]??null,options:te.value,"option-label":`label`,"option-value":`value`,placeholder:M(o)(`scenarioNodeEditor.noParent`),"show-clear":!0,class:`w-full`,size:`small`,"onUpdate:modelValue":t[3]||=e=>{m.value.parentIds=e?[e,...m.value.parentIds.slice(1)]:m.value.parentIds.slice(1)}},null,8,[`model-value`,`options`,`placeholder`])])):n(``,!0)]),m.value.type===`ask`?n(``,!0):(A(),C(v,{key:1},[x(`div`,Wo,[x(`div`,Go,[x(`label`,Ko,P(M(o)(`scenarioNodeEditor.aiRunner`)),1),d(M(r),{"input-id":`scennode-aicli`,modelValue:m.value.aiCli,"onUpdate:modelValue":t[4]||=e=>m.value.aiCli=e,options:b.value,"option-label":`label`,"option-value":`value`,"option-disabled":`disabled`,class:`w-full`,size:`small`},null,8,[`modelValue`,`options`])]),x(`div`,qo,[x(`label`,Jo,P(M(o)(`scenarioNodeEditor.model`)),1),m.value.aiCli===`codex`?(A(),C(`small`,Yo,P(M(o)(`scenarioNodeEditor.modelAuto`)),1)):(A(),F(M(r),{key:0,"input-id":`scennode-model`,modelValue:m.value.model,"onUpdate:modelValue":t[5]||=e=>m.value.model=e,options:S.value,"option-label":`label`,"option-value":`value`,class:`w-full`,size:`small`},null,8,[`modelValue`,`options`]))])]),x(`div`,Xo,[d(M(Ne),{modelValue:m.value.canAddNode,"onUpdate:modelValue":t[6]||=e=>m.value.canAddNode=e,binary:``,"input-id":`canAddNode`},null,8,[`modelValue`]),x(`label`,Zo,P(M(o)(`scenarioNodeEditor.canSpawnNodes`)),1)]),ne.value&&!ie.value?(A(),C(v,{key:0},[x(`div`,Qo,[d(M(Ne),{modelValue:m.value.injectParentOutputs,"onUpdate:modelValue":t[7]||=e=>m.value.injectParentOutputs=e,binary:``,"input-id":`injectParentOutputs`},null,8,[`modelValue`]),x(`label`,$o,P(M(o)(`scenarioNodeEditor.injectParentOutputs`)),1)]),re.value.length>0?(A(),C(`div`,es,[x(`label`,ts,P(M(o)(`scenarioNodeEditor.injectedAncestorIds`)),1),d(M(Pe),{"input-id":`scennode-ancestors`,modelValue:m.value.injectedAncestorIds,"onUpdate:modelValue":t[8]||=e=>m.value.injectedAncestorIds=e,options:re.value,"option-label":`label`,"option-value":`value`,placeholder:M(o)(`scenarioNodeEditor.injectedAncestorIdsPlaceholder`),filter:``,class:`w-full`,size:`small`},null,8,[`modelValue`,`options`,`placeholder`])])):n(``,!0)],64)):n(``,!0)],64)),x(`div`,ns,[d(M(Ne),{"model-value":ie.value,binary:``,"input-id":`isLeader`,disabled:ie.value,"onUpdate:modelValue":t[9]||=e=>u(`set-leader`,a.node.id)},null,8,[`model-value`,`disabled`]),x(`label`,rs,[s(P(M(ae).leader)+` `,1),x(`span`,is,P(M(o)(`scenarioNodeEditor.entryPoint`)),1)])]),m.value.type===`ask`?(A(),C(`div`,as,[x(`label`,os,P(M(o)(`scenarioNodeEditor.question`)),1),d(M(Se),{id:`scennode-question`,modelValue:m.value.question,"onUpdate:modelValue":t[10]||=e=>m.value.question=e,rows:`4`,class:`w-full`,style:{resize:`none`},placeholder:M(o)(`scenarioNodeEditor.questionPlaceholder`)},null,8,[`modelValue`,`placeholder`])])):(A(),C(`div`,ss,[x(`label`,cs,P(M(o)(`scenarioNodeEditor.prompt`)),1),d(M(Se),{id:`scennode-prompt`,modelValue:m.value.prompt,"onUpdate:modelValue":t[11]||=e=>m.value.prompt=e,rows:`8`,class:`w-full`,style:{resize:`none`}},null,8,[`modelValue`])]))]))}}),[[`__scopeId`,`data-v-d47fface`]]),us={class:`scenario-editor`},ds={class:`scenario-editor__toolbar`},fs={class:`scenario-editor__toolbar-row scenario-editor__toolbar-row--primary`},ps={class:`scenario-editor__icon-input`},ms={class:`scenario-editor__toolbar-row scenario-editor__toolbar-row--secondary`},hs={class:`pi pi-question-circle scenario-editor__traversal-help`},gs={class:`add-node-popover`},_s={class:`add-node-popover__item-text`},vs={class:`add-node-popover__item-label`},ys={class:`add-node-popover__item-desc`},bs={class:`add-node-popover__item-text`},xs={class:`add-node-popover__item-label`},Ss={class:`add-node-popover__item-desc`},Cs={class:`scenario-editor__content`},ws={key:0,class:`scenario-editor__ai-panel`},Ts={class:`scenario-editor__ai-panel-header`},Es={key:0,class:`scenario-editor__ai-provider`},Ds={for:`scened-ai-provider`,class:`scenario-editor__ai-provider-label`},Os={key:1,class:`scenario-editor__ai-no-provider`},ks=[`innerHTML`],As={class:`scenario-editor__ai-hint`},js={key:2,class:`scenario-editor__ai-stream`},Ms={class:`scenario-editor__ai-stream-label`},Ns={key:0,class:`pi pi-spin pi-spinner`},Ps={key:1,class:`pi pi-check`,style:{color:`var(--p-green-500)`}},Fs={key:2,class:`pi pi-exclamation-triangle`,style:{color:`var(--p-orange-500)`}},Is={class:`scenario-editor__ai-stream-text`},Ls={key:3,class:`scenario-editor__ai-error`},Rs={key:0,class:`scenario-editor__panel scenario-editor__panel--editor`},zs={class:`detail-header`},Bs={class:`detail-header__title`},Vs={class:`detail-body`},Hs={class:`detail-field`},Us={for:`scened-group-name`,class:`detail-label`},Ws={class:`detail-field`},Gs={for:`scened-group-desc`,class:`detail-label`},Ks={class:`detail-field`},qs={for:`scened-group-color`,class:`detail-label`},Js={class:`detail-color-row`},Ys=[`value`],Xs={class:`detail-footer`},Zs={key:0,class:`detail-footer`},Qs={class:`switch-dialog__intro`},$s={class:`inline-check`,style:{"margin-top":`1rem`,gap:`0.6rem`}},ec={for:`dontShowAgain`,style:{"font-size":`0.85rem`,cursor:`pointer`}},tc={class:`switch-dialog__intro`},nc={class:`switch-dialog__intro`},rc={class:`switch-dialog__links`},ic={class:`switch-dialog__node`},ac={class:`switch-dialog__node`},oc={class:`add-node-form`},sc={for:`scened-add-node-group`,class:`add-node-label`},cc={class:`export-json`},lc={key:0,class:`import-error`},uc={style:{margin:`0 0 1rem`}},dc=`runeya:hierarchical-multi-parent-notice-dismissed`,fc=`scenario-flow`,pc=160,mc=48,$=24,hc=32,gc=60,_c=10,vc=y(u({__name:`ScenarioEditorPage`,setup(e){let{t}=Ee(),a=ye(),o=pe(),u=oe(),_=T(!1),y=T([]),b=T(localStorage.getItem(dc)===`true`),S=T(!1),ne=T(!1),E=je(),{setCenter:se,updateNode:k,getSelectedNodes:de,getSelectedEdges:_e,removeSelectedElements:be,fitView:N,viewport:Te}=i(fc);function De(e){if(e.key!==`Delete`&&e.key!==`Backspace`)return;let t=e.target;if(!(t.tagName===`INPUT`||t.tagName===`TEXTAREA`)){if(G.value){let e=G.value;for(let t of B.value){let n=t.parentIds.findIndex(n=>`e-${n}-${t.id}`===e);if(n!==-1){yt(t.id,{parentIds:t.parentIds.filter((e,t)=>t!==n)});break}}G.value=void 0;return}for(let e of de.value)z.value.some(t=>t.id===e.id)?ft(e.id):B.value.some(t=>t.id===e.id)&&vt(e.id)}}let Oe=p(()=>a.params.id),Ae=p(()=>!Oe.value),Pe=T(`New scenario`),Ie=T(``),Le=T(``),I=T(``),L=T(`hierarchical`),Re=T(void 0),ze=T(!1),Be=T([]),Ve=p(()=>Be.value.find(e=>e.id===Re.value)),R=ko(Ve),He=T();function Ue(e){He.value?.toggle(e)}function We(e){He.value?.hide(),mt(e)}async function Ge(){try{Be.value=await ge.scenario.listPresets.query()}catch{}}let Ke=T(!1),qe=T(void 0),Je=T(0);function Ye(e){Re.value=e;let t=Be.value.find(t=>t.id===e);t?.defaultTraversalMode&&(L.value=t.defaultTraversalMode),t?.initialData?(z.value=[...t.initialData.groups],B.value=[...t.initialData.nodes],I.value=t.initialData.leaderId,V.value=void 0,H.value=void 0):e||(z.value=[],B.value=[],I.value=``,V.value=void 0,H.value=void 0)}function Xe(){return B.value.length>0||z.value.length>0}function Ze(e){let t=e?Be.value.find(t=>t.id===e):void 0;(!e||t?.initialData)&&Xe()?(qe.value=e,Ke.value=!0):Ye(e)}function Qe(){Ke.value=!1,Ye(qe.value),qe.value=void 0}function $e(){Ke.value=!1,qe.value=void 0,Je.value++}let z=T([]),B=T([]),V=T(),H=T(),tt=T(!1),U=T(null),nt=T(`ai`),rt=p(()=>{let e=new Map;if(!V.value)return e;let t=V.value,n=B.value.find(e=>e.id===t);if(!n)return e;let r=B.value.filter(e=>(e.parentIds??[]).includes(t)||(n.parentIds??[]).includes(e.id)),i=new Map;for(let e of r){let t=e.groupId??null;i.has(t)||i.set(t,[]),i.get(t).push(e)}for(let t of i.values())t.length<=1||[...t].sort((e,t)=>e.position.x-t.position.x).forEach((t,n)=>e.set(t.id,-n*15));return e}),it=p(()=>{let e=V.value?(()=>{let e=V.value,t=B.value.find(t=>t.id===e),n=B.value.filter(n=>(n.parentIds??[]).includes(e)||(t?.parentIds??[]).includes(n.id)).map(e=>e.id);return new Set([e,...n])})():null,t=e?new Set(B.value.filter(t=>e.has(t.id)&&t.groupId).map(e=>e.groupId)):null,n=H.value??null,r=n?new Set(B.value.filter(e=>e.groupId===n).map(e=>e.id)):null,i=z.value.map(e=>{let r=t&&!t.has(e.id),i=n&&e.id!==n,a=r||i,o=n===e.id;return{id:e.id,type:`group`,position:e.position,zIndex:o?500:1,style:{width:`${e.width}px`,height:`${e.height}px`,opacity:a?`0.25`:`1`,transition:`opacity 0.15s ease`},data:{label:e.name,color:e.color??void 0},draggable:!0,selectable:!0}}),a=new Map;for(let e of B.value)for(let t of e.parentIds??[]){let n=at(e.id)<at(t),r=a.get(t)??{hasUp:!1,hasDown:!1};n?r.hasUp=!0:r.hasDown=!0,a.set(t,r)}let o=B.value.map(t=>{let n=a.get(t.id)??{hasUp:!1,hasDown:!1},i=rt.value.get(t.id)??0,o=e&&!e.has(t.id),s=r&&!r.has(t.id),c=o||s,l=r?.has(t.id);return{id:t.id,position:{x:t.position.x+i,y:t.position.y},zIndex:l?1500:1e3,style:c?{opacity:`0.25`,transition:`opacity 0.15s ease`}:{opacity:`1`,transition:`opacity 0.15s ease`},data:{label:t.label,isLeader:t.id===I.value,type:t.type,roleName:Ve.value?.roles.find(e=>e.id===t.role)?.name,showTopHandle:n.hasUp,showBottomHandle:n.hasDown||!n.hasUp},draggable:!0,selectable:!0,parentNode:t.groupId??void 0,extent:t.groupId?`parent`:void 0}});return[...i,...o]});function at(e){let t=B.value.find(t=>t.id===e);return t?t.groupId?(z.value.find(e=>e.id===t.groupId)?.position.y??0)+t.position.y:t.position.y:0}let ot=p(()=>{let e=new Map;for(let t of B.value)e.set(t.id,0);let t=new Map;for(let e of B.value)t.set(e.id,[]);for(let e of B.value)for(let n of e.parentIds??[])t.get(n)?.push(e.id);let n=new Set,r=[];function i(a){e.set(a,1),r.push(a);for(let o of t.get(a)??[])if(e.get(o)===1){let e=r.indexOf(o);for(let t=e;t<r.length-1;t++)n.add(`e-${r[t]}-${r[t+1]}`);n.add(`e-${a}-${o}`)}else e.get(o)===0&&i(o);r.pop(),e.set(a,2)}for(let t of B.value)e.get(t.id)===0&&i(t.id);return n}),st=p(()=>{let e=[],t=L.value===`topological`;for(let n of B.value)for(let r of n.parentIds??[]){let i=`e-${r}-${n.id}`,a=G.value===i,o=!G.value&&!!V.value&&(V.value===r||V.value===n.id),s=a||o,c=ot.value.has(i),l=at(n.id)<at(r),u=B.value.find(e=>e.id===r)?.groupId??null,d=n.groupId??null,f=!!H.value&&u!==H.value&&d!==H.value||V.value&&!G.value&&!s||G.value&&!a;e.push({id:i,source:r,target:n.id,sourceHandle:l?`source-top`:`source-bottom`,type:`step`,zIndex:c?700:s?600:500,class:c?`edge--cycle`:void 0,animated:t,style:{stroke:c?`rgb(239,68,68)`:s?`rgb(168,85,247)`:`rgba(99,102,241,0.55)`,strokeWidth:c||s?3:2.5,opacity:f?.15:1,...t?{strokeDasharray:`5,3`}:{}}})}return e});p(()=>B.value.map(e=>({id:e.id,label:e.label||e.id})));function ct(){let e={id:`group-${Fe().slice(0,8)}`,name:`Group ${z.value.length+1}`,position:{x:100*z.value.length,y:100*z.value.length},width:300,height:200};z.value=[...z.value,e]}let lt=T(!1),ut=T(null),dt=T(0);function ft(e){let t=B.value.filter(t=>t.groupId===e).length;if(t>0){ut.value=e,dt.value=t,lt.value=!0;return}pt(e)}function pt(e){let t=B.value.filter(t=>t.groupId===e).map(e=>e.id);B.value=B.value.filter(e=>!t.includes(e.id)).map(e=>({...e,parentIds:e.parentIds.filter(e=>!t.includes(e))})),z.value=z.value.filter(t=>t.id!==e),H.value===e&&(H.value=void 0),V.value&&t.includes(V.value)&&(V.value=void 0)}function mt(e=`ai`){if(!z.value.length){u.add({severity:`warn`,summary:t(`scenarioEditor.toast.noGroupsSummary`),detail:t(`scenarioEditor.toast.noGroupsDetail`),life:3e3});return}nt.value=e,U.value=z.value[0]?.id??null,tt.value=!0}function ht(e){if(!e)return{x:100,y:100};let t=B.value.filter(t=>t.groupId===e);if(t.length===0)return{x:$,y:hc+$};let n=t.reduce((e,t)=>e.position.y>t.position.y?e:t);return{x:n.position.x,y:n.position.y+mc+_c}}function gt(e){if(!e)return;let t=z.value.find(t=>t.id===e);if(!t)return;let n=B.value.filter(t=>t.groupId===e);if(n.length===0)return;let r=Math.max(...n.map(e=>e.position.y+mc)),i=Math.max(...n.map(e=>e.position.x+pc)),a=r+$,o=Math.max(t.width??200,i+$),s=(t.position.y??0)+(t.height??0),c=(t.position.y??0)+a-s;if(W(e,{width:o,height:a}),c>0)for(let t of z.value)t.id!==e&&(t.position.y??0)>=s&&W(t.id,{position:{x:t.position.x,y:(t.position.y??0)+c}})}function _t(){if(!U.value){u.add({severity:`warn`,summary:t(`scenarioEditor.toast.groupRequiredSummary`),detail:t(`scenarioEditor.toast.groupRequiredDetail`),life:3e3});return}let e=`node-${Fe().slice(0,8)}`,n={id:e,type:nt.value,parentIds:[],groupId:U.value,label:``,role:`other`,prompt:``,question:``,autoGenerated:!0,canAddNode:!1,aiCli:`claude-code`,model:`sonnet`,position:ht(U.value),injectParentOutputs:!1,injectedAncestorIds:[]};B.value=[...B.value,n],B.value.length===1&&(I.value=e),gt(U.value),tt.value=!1,V.value=e,me(()=>updateNodeInternals(B.value.map(e=>e.id)))}function vt(e){if(e===I.value){u.add({severity:`warn`,summary:t(`scenarioEditor.toast.leaderSummary`),detail:t(`scenarioEditor.toast.leaderDetail`),life:3e3});return}let n=new Set(B.value.filter(t=>t.parentIds[0]===e).map(e=>e.id));B.value=B.value.filter(t=>t.id!==e).map(e=>n.has(e.id)?{...e,parentId:I.value}:e),V.value===e&&(V.value=void 0)}function yt(e,t){B.value=B.value.map(n=>n.id===e?{...n,...t}:n);let n=B.value.find(t=>t.id===e);if(n&&(`label`in t&&k(e,{data:{label:n.label,isLeader:n.id===I.value}}),`groupId`in t)){let n={x:50,y:50};k(e,{parentNode:t.groupId??void 0,extent:t.groupId?`parent`:void 0,position:n}),B.value=B.value.map(t=>t.id===e?{...t,position:n}:t)}}function bt(e,t){W(e,{name:t}),k(e,{data:{label:t}})}function xt(e,t,n){}function St(e){for(let t of e)if(t.type===`remove`){let e=t.id?.split(`-`);if(!e||e.length<3)continue;for(let e of B.value){let n=e.parentIds??[],r=n.findIndex(n=>`e-${n}-${e.id}`===t.id);if(r!==-1){yt(e.id,{parentIds:n.filter((e,t)=>t!==r)});break}}}}function Ct(e){for(let t of e)t.type===`dimensions`&&t.dimensions&&z.value.find(e=>e.id===t.id)&&W(t.id,{width:t.dimensions.width,height:t.dimensions.height}),t.type===`position`&&t.position&&!t.dragging&&z.value.find(e=>e.id===t.id)&&W(t.id,{position:t.position}),t.type===`remove`&&B.value.some(e=>e.id===t.id)&&vt(t.id)}function W(e,t){z.value=z.value.map(n=>n.id===e?{...n,...t}:n)}function wt(e){let t=e.node.id,n=e.node.position,r=z.value.find(e=>e.id===t),i=B.value.find(e=>e.id===t);r?W(t,{position:n}):i&&(yt(t,{position:n}),Tt(t,n.y)),jt({refit:!1})}function Tt(e,t){let n=B.value.find(t=>t.id===e);if(!n)return;let r=n.parentIds[0]??null,i=new Set(B.value.filter(e=>(e.parentIds[0]??null)===r).map(e=>e.id));if(i.size<=1)return;let a=B.value.filter(e=>i.has(e.id)).sort((n,r)=>(n.id===e?t:n.position.y)-(r.id===e?t:r.position.y)),o=B.value.map((e,t)=>({n:e,i:t})).filter(({n:e})=>i.has(e.id)).map(({i:e})=>e),s=[...B.value];o.forEach((e,t)=>{s[e]=a[t]}),B.value=s}let G=T();function Et(e){let t=e.edge.id;G.value===t?(G.value=void 0,be({edges:[e.edge]})):G.value=t}function Dt(e){let t=e.node.id;G.value=void 0,z.value.some(e=>e.id===t)?H.value===t?(H.value=void 0,be({nodes:[e.node]})):(H.value=t,V.value=void 0):B.value.some(e=>e.id===t)&&(V.value===t?(V.value=void 0,be({nodes:[e.node]})):(V.value=t,H.value=void 0))}function Ot(e){let t=e.target,n=e.source;if(n===t)return;let r=B.value.find(e=>e.id===t);if(!r)return;let i=r.parentIds??[];i.includes(n)||(L.value===`hierarchical`?(yt(t,{parentIds:[n]}),i.length>0&&!b.value&&(ne.value=!1,S.value=!0)):yt(t,{parentIds:[...i,n]}),me(()=>jt({refit:!1})))}function kt(){ne.value&&(b.value=!0,localStorage.setItem(dc,`true`)),S.value=!1}function At(){B.value=B.value.map(e=>({...e,parentIds:e.parentIds.slice(0,1),injectParentOutputs:!1,injectedAncestorIds:[]}))}function jt({refit:e=!0}={}){let t=new Map;for(let e of B.value)t.set(e.id,[]);for(let e of B.value)e.parentIds[0]&&t.has(e.parentIds[0])&&t.get(e.parentIds[0]).push(e.id);let n=new Map,r=0,i;function a(e,o){let s=B.value.find(t=>t.id===e).groupId??null;s!==i&&(i!==void 0&&(r+=$),s!==null&&(r+=hc+$),i=s),n.set(e,{x:o*gc,y:r}),r+=mc+_c;for(let n of t.get(e)??[])a(n,o+1)}let o=B.value.filter(e=>e.parentIds.length===0),s=o.length>0?o.map(e=>e.id):[I.value];for(let e of s)a(e,0),r+=$+_c,i=void 0;for(let e of B.value){let t=n.get(e.id);t&&yt(e.id,{position:t})}for(let e of z.value){let t=B.value.filter(t=>t.groupId===e.id);if(t.length===0)continue;let r=t.map(e=>n.get(e.id)??e.position),i=Math.min(...r.map(e=>e.x))-$,a=Math.min(...r.map(e=>e.y))-$-hc,o=Math.max(...r.map(e=>e.x+pc))+$,s=Math.max(...r.map(e=>e.y+mc))+$;W(e.id,{position:{x:i,y:a},width:o-i,height:s-a});for(let e of t){let t=n.get(e.id);t&&yt(e.id,{position:{x:t.x-i,y:t.y-a}})}}e&&me(()=>N({includeHiddenNodes:!1,padding:.1,maxZoom:Te.value.zoom}))}function Mt(e){if(e===`hierarchical`){let e=B.value.filter(e=>e.parentIds.length>1).length;if(B.value.reduce((e,t)=>e+Math.max(0,t.parentIds.length-1),0),e>0){let e=new Map(B.value.map(e=>[e.id,e]));y.value=B.value.filter(e=>e.parentIds.length>1).flatMap(t=>t.parentIds.slice(1).map(n=>({from:e.get(n)?.label||n,to:t.label||t.id}))),_.value=!0;return}At()}L.value=e}function Nt(e){V.value&&yt(V.value,e)}function Pt(e){vt(e)}function Ft(){let e=new Set(B.value.map(e=>e.id));e.has(I.value)||(I.value=B.value[0]?.id??`leader`),B.value=B.value.map(t=>{if(t.id===I.value)return{...t,parentIds:[]};let n=(t.parentIds??[]).filter(t=>e.has(t));return n.length===0&&t.id!==I.value?{...t,parentIds:[I.value]}:n.length===(t.parentIds??[]).length?t:{...t,parentIds:n}})}async function It(){if(Ae.value)return;await E.fetchScenarios();let e=E.scenarios.find(e=>e.id===Oe.value);if(!e){u.add({severity:`error`,summary:t(`scenarioEditor.toast.notFoundSummary`),detail:t(`scenarioEditor.toast.notFoundDetail`),life:3e3}),o.push({name:`settings`,query:{section:`scenario`}});return}Pe.value=e.name,Ie.value=e.icon??``,Le.value=e.description??``,I.value=e.leaderId,L.value=e.traversalMode??`hierarchical`,Re.value=e.presetId,ze.value=e.isPublished??!1,z.value=[...e.groups],B.value=[...e.nodes]}async function Lt(){if(!Pe.value.trim()){u.add({severity:`warn`,summary:t(`scenarioEditor.toast.validationSummary`),detail:t(`scenarioEditor.toast.nameRequired`),life:3e3});return}if(!B.value.length){u.add({severity:`warn`,summary:t(`scenarioEditor.toast.validationSummary`),detail:t(`scenarioEditor.toast.nodeRequired`),life:3e3});return}if(!B.value.some(e=>e.id===I.value)){u.add({severity:`warn`,summary:t(`scenarioEditor.toast.validationSummary`),detail:t(`scenarioEditor.toast.leaderRequired`),life:3e3});return}Ft();let e={name:Pe.value.trim(),icon:Ie.value.trim()||void 0,description:Le.value.trim()||void 0,leaderId:I.value,traversalMode:L.value,presetId:Re.value,isPublished:ze.value,groups:z.value,nodes:B.value};try{if(Ae.value){let n=await E.createScenario(e);u.add({severity:`success`,summary:t(`scenarioEditor.toast.createdSummary`),detail:t(`scenarioEditor.toast.createdDetail`),life:2500}),o.replace({name:`scenario-edit`,params:{id:n.id}})}else await E.updateScenario(Oe.value,e),u.add({severity:`success`,summary:t(`scenarioEditor.toast.savedSummary`),detail:t(`scenarioEditor.toast.savedDetail`),life:2500})}catch(e){u.add({severity:`error`,summary:`Error`,detail:e.message,life:3500})}}function Rt(){o.push({name:`settings`,query:{section:`scenario`}})}let zt=T(!1),Bt=T(``),K=T(!1),Vt=T(``),Ht=T(``),Ut=T(1),Wt=T(null),Gt=T(null),Kt=ce({leaderId:D().max(128),groups:ue(l).max(100),nodes:ue(te).max(500)}),qt=T(null),Jt=null;function Yt(){!Bt.value.trim()||K.value||(Jt?.unsubscribe(),Vt.value=``,qt.value=null,Ht.value=``,K.value=!0,Jt=ge.scenario.streamGenerateWithAI.subscribe({prompt:Bt.value.trim(),providerId:Wt.value??void 0,model:Gt.value??void 0,current:z.value.length>0||B.value.length>0?{leaderId:I.value,groups:z.value,nodes:B.value}:void 0},{onData(e){if(e.type===`delta`)Vt.value+=e.text;else if(e.type===`done`){K.value=!1;let e=Vt.value.trim(),n=e.match(/```(?:json)?\s*([\s\S]*?)```/);n&&(e=n[1].trim());try{qt.value=Kt.parse(JSON.parse(e))}catch{Ht.value=t(`scenarioEditor.toast.invalidJson`)}}},onError(e){K.value=!1,Ht.value=e.message??`Unknown error`},onComplete(){K.value=!1}}))}function Xt(){if(!qt.value)return;let{leaderId:e,groups:n,nodes:r}=qt.value;I.value=e,z.value=n,B.value=r,qt.value=null,Vt.value=``,Bt.value=``,zt.value=!1,u.add({severity:`success`,summary:t(`scenarioEditor.toast.appliedSummary`),detail:t(`scenarioEditor.toast.appliedDetail`),life:3e3})}let Zt=T(!1),Qt=T(!1),$t=T(``),en=T(``),tn=p(()=>JSON.stringify({name:Pe.value,description:Le.value||void 0,leaderId:I.value,groups:z.value,nodes:B.value},null,2));async function nn(){await navigator.clipboard.writeText(tn.value),u.add({severity:`success`,summary:t(`scenarioEditor.toast.copiedSummary`),life:2e3})}let rn=ce({leaderId:D().max(128),groups:ue(l).max(100),nodes:ue(te).max(500),name:D().max(200).optional(),description:D().max(2e3).optional()});function an(){en.value=``;try{let e=rn.parse(JSON.parse($t.value));e.name&&(Pe.value=e.name),e.description&&(Le.value=e.description),I.value=e.leaderId,z.value=e.groups,B.value=e.nodes,Qt.value=!1,u.add({severity:`success`,summary:t(`scenarioEditor.toast.importedSummary`),life:2e3})}catch(e){en.value=e.message}}return xe(()=>{Jt?.unsubscribe()}),le(async()=>{await Promise.all([It(),Ge()])}),(e,i)=>{let a=ae(`tooltip`);return A(),C(v,null,[x(`div`,us,[x(`div`,ds,[x(`div`,fs,[d(M(j),{icon:`pi pi-arrow-left`,text:``,rounded:``,onClick:Rt}),g((A(),C(`div`,ps,[x(`i`,{class:c(Ie.value?`pi ${Ie.value}`:`pi pi-image`),style:{opacity:`0.5`}},null,2),d(M(w),{modelValue:Ie.value,"onUpdate:modelValue":i[0]||=e=>Ie.value=e,style:{width:`130px`,"font-size":`0.8rem`},placeholder:`pi-building`},null,8,[`modelValue`])])),[[a,`PrimeIcons class (ex: pi-building, pi-users)`,void 0,{bottom:!0}]]),d(M(w),{modelValue:Pe.value,"onUpdate:modelValue":i[1]||=e=>Pe.value=e,class:`scenario-editor__name`,placeholder:M(t)(`scenarioEditor.placeholderName`)},null,8,[`modelValue`,`placeholder`]),d(M(w),{modelValue:Le.value,"onUpdate:modelValue":i[2]||=e=>Le.value=e,class:`scenario-editor__desc`,placeholder:M(t)(`scenarioEditor.placeholderDescription`)},null,8,[`modelValue`,`placeholder`]),i[40]||=x(`div`,{style:{flex:`1`}},null,-1),g(d(M(j),{icon:ze.value?`pi pi-globe`:`pi pi-lock`,severity:ze.value?`success`:`secondary`,text:``,rounded:``,onClick:i[3]||=e=>ze.value=!ze.value},null,8,[`icon`,`severity`]),[[a,ze.value?M(t)(`scenarioEditor.tooltipUnpublish`):M(t)(`scenarioEditor.tooltipPublish`),void 0,{bottom:!0}]]),g(d(M(j),{icon:`pi pi-save`,onClick:Lt},null,512),[[a,M(t)(`scenarioEditor.tooltipSave`),void 0,{bottom:!0}]])]),x(`div`,ms,[Be.value.length>0?(A(),F(M(r),{key:Je.value,"model-value":Re.value,options:[{label:M(t)(`scenarioEditor.noPreset`),value:void 0},...Be.value.map(e=>({label:e.name,value:e.id}))],"option-label":`label`,"option-value":`value`,size:`small`,placeholder:M(t)(`scenarioEditor.noPreset`),class:`scenario-editor__preset-select`,"onUpdate:modelValue":Ze},null,8,[`model-value`,`options`,`placeholder`])):n(``,!0),d(M(r),{"model-value":L.value,options:[{label:M(t)(`scenarioEditor.traversalHierarchical`),value:`hierarchical`},{label:M(t)(`scenarioEditor.traversalTopological`),value:`topological`}],"option-label":`label`,"option-value":`value`,size:`small`,disabled:Ve.value!=null&&Ve.value.canChangeTraversalMode===!1,class:`scenario-editor__traversal-select`,"onUpdate:modelValue":Mt},null,8,[`model-value`,`options`,`disabled`]),g(x(`i`,hs,null,512),[[a,{value:M(t)(`scenarioEditor.traversalHelp`),escape:!1},void 0,{bottom:!0}]]),i[43]||=x(`div`,{class:`scenario-editor__toolbar-sep`},null,-1),g(d(M(j),{title:M(R).group,icon:`pi pi-plus`,text:``,size:`small`,severity:`secondary`,label:M(R).group,class:`scenario-editor__toolbar-btn`,onClick:ct},null,8,[`title`,`label`]),[[a,`${M(t)(`actions.add`)} ${M(R).group.toLowerCase()}`,void 0,{bottom:!0}]]),g(d(M(j),{title:M(R).node,icon:`pi pi-plus`,text:``,size:`small`,severity:`secondary`,label:M(R).node,class:`scenario-editor__toolbar-btn`,onClick:Ue},null,8,[`title`,`label`]),[[a,`${M(t)(`actions.add`)} ${M(R).node.toLowerCase()}`,void 0,{bottom:!0}]]),d(M(Me),{ref_key:`addNodePopover`,ref:He},{default:m(()=>[x(`div`,gs,[x(`button`,{class:`add-node-popover__item`,onClick:i[4]||=e=>We(`ai`)},[i[41]||=x(`i`,{class:`pi pi-microchip-ai`,style:{"font-size":`1.1rem`}},null,-1),x(`div`,_s,[x(`span`,vs,`AI `+P(M(R).node),1),x(`span`,ys,P(M(t)(`scenarioEditor.aiNodeDesc`)),1)])]),x(`button`,{class:`add-node-popover__item`,onClick:i[5]||=e=>We(`ask`)},[i[42]||=x(`i`,{class:`pi pi-comment`,style:{"font-size":`1.1rem`}},null,-1),x(`div`,bs,[x(`span`,xs,`Ask `+P(M(R).node),1),x(`span`,Ss,P(M(t)(`scenarioEditor.askNodeDesc`)),1)])])])]),_:1},512),i[44]||=x(`div`,{style:{flex:`1`}},null,-1),g(d(M(j),{icon:`pi pi-sitemap`,text:``,rounded:``,size:`small`,severity:`secondary`,onClick:jt},null,512),[[a,M(t)(`scenarioEditor.tooltipAutoLayout`),void 0,{bottom:!0}]]),g(d(M(j),{icon:`pi pi-upload`,text:``,rounded:``,size:`small`,severity:`secondary`,onClick:i[6]||=e=>{Qt.value=!0,$t.value=``,en.value=``}},null,512),[[a,M(t)(`scenarioEditor.tooltipImport`),void 0,{bottom:!0}]]),g(d(M(j),{icon:`pi pi-download`,text:``,rounded:``,size:`small`,severity:`secondary`,onClick:i[7]||=e=>Zt.value=!0},null,512),[[a,M(t)(`scenarioEditor.tooltipExport`),void 0,{bottom:!0}]]),g(d(M(j),{icon:`pi pi-sparkles`,text:``,rounded:``,size:`small`,severity:zt.value?`contrast`:`secondary`,onClick:i[8]||=e=>zt.value=!zt.value},null,8,[`severity`]),[[a,zt.value?M(t)(`scenarioEditor.tooltipCloseAI`):M(t)(`scenarioEditor.tooltipGenerateAI`),void 0,{bottom:!0}]])])]),x(`div`,Cs,[zt.value?(A(),C(`div`,ws,[x(`div`,Ts,[i[45]||=x(`i`,{class:`pi pi-sparkles`},null,-1),x(`span`,null,P(M(t)(`scenarioEditor.aiPanelTitle`)),1)]),Ut.value>0?(A(),C(`div`,Es,[x(`label`,Ds,P(M(t)(`scenarioEditor.aiProvider`)),1),d(ie,{"input-id":`scened-ai-provider`,modelValue:Wt.value,"onUpdate:modelValue":i[9]||=e=>Wt.value=e,model:Gt.value,"onUpdate:model":i[10]||=e=>Gt.value=e,"storage-key":`runeya.scenario.generateAi`,"hide-when-single":!1,placeholder:M(t)(`scenarioEditor.aiSelectProvider`),class:`w-full`,disabled:K.value,onLoaded:i[11]||=e=>Ut.value=e},null,8,[`modelValue`,`model`,`placeholder`,`disabled`])])):(A(),C(`div`,Os,[i[46]||=x(`i`,{class:`pi pi-exclamation-triangle`},null,-1),x(`span`,{innerHTML:M(t)(`scenarioEditor.aiNoProvider`)},null,8,ks)])),d(M(Se),{modelValue:Bt.value,"onUpdate:modelValue":i[12]||=e=>Bt.value=e,placeholder:M(t)(`scenarioEditor.aiPromptPlaceholder`),rows:4,class:`scenario-editor__ai-textarea`,disabled:K.value,onKeydown:he(h(Yt,[`ctrl`]),[`enter`])},null,8,[`modelValue`,`placeholder`,`disabled`,`onKeydown`]),d(M(j),{label:K.value?M(t)(`scenarioEditor.aiGenerating`):B.value.length>0?M(t)(`scenarioEditor.aiModify`):M(t)(`scenarioEditor.aiGenerate`),icon:`pi pi-sparkles`,loading:K.value,disabled:!Bt.value.trim(),class:`scenario-editor__ai-btn`,onClick:Yt},null,8,[`label`,`loading`,`disabled`]),x(`p`,As,P(M(t)(`scenarioEditor.aiHint`)),1),Vt.value||K.value?(A(),C(`div`,js,[x(`div`,Ms,[K.value?(A(),C(`i`,Ns)):qt.value?(A(),C(`i`,Ps)):(A(),C(`i`,Fs)),x(`span`,null,P(K.value?M(t)(`scenarioEditor.aiGenerating`):qt.value?M(t)(`scenarioEditor.aiValidJson`):M(t)(`scenarioEditor.aiRawResponse`)),1)]),x(`pre`,Is,P(Vt.value),1)])):n(``,!0),Ht.value?(A(),C(`div`,Ls,[i[47]||=x(`i`,{class:`pi pi-times-circle`},null,-1),s(` `+P(Ht.value),1)])):n(``,!0),qt.value?(A(),F(M(j),{key:4,label:M(t)(`scenarioEditor.aiApply`),icon:`pi pi-check`,severity:`success`,class:`scenario-editor__ai-btn`,onClick:Xt},null,8,[`label`])):n(``,!0)])):n(``,!0),x(`div`,{class:`scenario-editor__canvas`,tabindex:`0`,onKeydown:De},[d(M(we),{nodes:it.value,edges:st.value,"nodes-draggable":!0,"nodes-connectable":!0,"elements-selectable":!0,"delete-key-code":null,"fit-view-on-init":``,id:fc,class:`scenario-flow-canvas`,onNodeDragStop:wt,onNodeClick:Dt,onEdgeClick:Et,onPaneClick:i[13]||=e=>{V.value=void 0,H.value=void 0,G.value=void 0},onConnect:Ot,onNodesChange:Ct,onEdgesChange:St},{"node-default":m(e=>[d(ve,f(ee(e)),null,16)]),"node-group":m(e=>[d(fe,Ce(e,{onUpdateLabel:bt,onResizeEnd:xt,onRemove:ft}),null,16)]),default:m(()=>[d(M(et)),d(M(Do))]),_:1},8,[`nodes`,`edges`])],32),d(ke,{name:`drawer`},{default:m(()=>[H.value||V.value?(A(),C(`div`,Rs,[x(`div`,zs,[x(`i`,{class:c([H.value?`pi pi-users`:`pi pi-microchip-ai`,`detail-header__icon`])},null,2),x(`span`,Bs,P(H.value?M(R).group:M(R).node),1),d(M(j),{icon:`pi pi-times`,text:``,rounded:``,size:`small`,class:`detail-header__close`,onClick:i[14]||=e=>{H.value=void 0,V.value=void 0}})]),H.value&&z.value.find(e=>e.id===H.value)?(A(),C(v,{key:0},[x(`div`,Vs,[x(`div`,Hs,[x(`label`,Us,P(M(t)(`scenarioEditor.groupName`)),1),d(M(w),{id:`scened-group-name`,"model-value":z.value.find(e=>e.id===H.value).name,class:`w-full`,size:`small`,"onUpdate:modelValue":i[15]||=e=>W(H.value,{name:e})},null,8,[`model-value`])]),x(`div`,Ws,[x(`label`,Gs,P(M(t)(`scenarioEditor.groupDescription`)),1),d(M(Se),{id:`scened-group-desc`,"model-value":z.value.find(e=>e.id===H.value).description??``,class:`w-full`,placeholder:M(t)(`scenarioEditor.groupDescriptionPlaceholder`),rows:`3`,"auto-resize":``,style:{resize:`none`},"onUpdate:modelValue":i[16]||=e=>W(H.value,{description:e||void 0})},null,8,[`model-value`,`placeholder`])]),x(`div`,Ks,[x(`label`,qs,P(M(t)(`scenarioEditor.groupAccentColor`)),1),x(`div`,Js,[x(`input`,{id:`scened-group-color`,type:`color`,value:z.value.find(e=>e.id===H.value).color??`#6366f1`,class:`detail-color-picker`,onInput:i[17]||=e=>W(H.value,{color:e.target.value})},null,40,Ys),d(M(w),{"model-value":z.value.find(e=>e.id===H.value).color??``,placeholder:`#6366f1`,size:`small`,class:`detail-color-text`,"onUpdate:modelValue":i[18]||=e=>W(H.value,{color:e||void 0})},null,8,[`model-value`]),z.value.find(e=>e.id===H.value).color?g((A(),F(M(j),{key:0,icon:`pi pi-times`,text:``,rounded:``,size:`small`,severity:`secondary`,onClick:i[19]||=e=>W(H.value,{color:void 0})},null,512)),[[a,M(t)(`scenarioEditor.groupResetColor`)]]):n(``,!0)])])]),x(`div`,Xs,[d(M(j),{label:`${M(t)(`actions.delete`)} ${M(R).group.toLowerCase()}`,icon:`pi pi-trash`,severity:`danger`,outlined:``,size:`small`,class:`w-full`,onClick:i[20]||=e=>ft(H.value)},null,8,[`label`])])],64)):V.value&&B.value.find(e=>e.id===V.value)?(A(),C(v,{key:1},[(A(),F(ls,{key:V.value,node:B.value.find(e=>e.id===V.value),groups:z.value,nodes:B.value,"leader-id":I.value,preset:Ve.value,"traversal-mode":L.value,onUpdate:Nt,onDelete:Pt,onSetLeader:i[21]||=e=>I.value=e},null,8,[`node`,`groups`,`nodes`,`leader-id`,`preset`,`traversal-mode`])),V.value===I.value?n(``,!0):(A(),C(`div`,Zs,[d(M(j),{label:`${M(t)(`actions.delete`)} ${M(R).node.toLowerCase()}`,icon:`pi pi-trash`,severity:`danger`,outlined:``,size:`small`,class:`w-full`,onClick:i[22]||=e=>Pt(V.value)},null,8,[`label`])]))],64)):n(``,!0)])):n(``,!0)]),_:1})])]),d(M(O),{visible:S.value,"onUpdate:visible":i[24]||=e=>S.value=e,header:M(t)(`scenarioEditor.multiParentNoticeTitle`),modal:``,style:{width:`420px`}},{footer:m(()=>[d(M(j),{label:M(t)(`actions.ok`),onClick:kt},null,8,[`label`])]),default:m(()=>[x(`p`,Qs,P(M(t)(`scenarioEditor.multiParentNoticeMessage`)),1),x(`div`,$s,[d(M(Ne),{modelValue:ne.value,"onUpdate:modelValue":i[23]||=e=>ne.value=e,binary:``,"input-id":`dontShowAgain`},null,8,[`modelValue`]),x(`label`,ec,P(M(t)(`scenarioEditor.dontShowAgain`)),1)])]),_:1},8,[`visible`,`header`]),d(M(O),{visible:lt.value,"onUpdate:visible":i[27]||=e=>lt.value=e,header:M(t)(`scenarioEditor.deleteGroupTitle`),modal:``,style:{width:`380px`}},{footer:m(()=>[d(M(j),{label:M(t)(`actions.cancel`),text:``,onClick:i[25]||=e=>lt.value=!1},null,8,[`label`]),d(M(j),{label:M(t)(`actions.delete`),severity:`danger`,onClick:i[26]||=()=>{lt.value=!1,pt(ut.value)}},null,8,[`label`])]),default:m(()=>[x(`p`,tc,P(M(t)(`scenarioEditor.deleteGroupMessage`,{count:dt.value})),1)]),_:1},8,[`visible`,`header`]),d(M(O),{visible:_.value,"onUpdate:visible":i[30]||=e=>_.value=e,header:M(t)(`scenarioEditor.switchToHierarchicalTitle`),modal:``,style:{width:`400px`}},{footer:m(()=>[d(M(j),{label:M(t)(`actions.cancel`),text:``,onClick:i[28]||=e=>_.value=!1},null,8,[`label`]),d(M(j),{label:M(t)(`actions.confirm`),severity:`danger`,onClick:i[29]||=()=>{_.value=!1,L.value=`hierarchical`,At()}},null,8,[`label`])]),default:m(()=>[x(`p`,nc,P(M(t)(`scenarioEditor.switchToHierarchicalMessage`)),1),x(`ul`,rc,[(A(!0),C(v,null,re(y.value,e=>(A(),C(`li`,{key:`${e.from}-${e.to}`},[x(`span`,ic,P(e.from),1),i[48]||=x(`i`,{class:`pi pi-arrow-right switch-dialog__arrow`},null,-1),x(`span`,ac,P(e.to),1)]))),128))])]),_:1},8,[`visible`,`header`]),d(M(O),{visible:tt.value,"onUpdate:visible":i[33]||=e=>tt.value=e,header:nt.value===`ask`?`${M(t)(`actions.add`)} Ask ${M(R).node}`:`${M(t)(`actions.add`)} AI ${M(R).node}`,modal:``,style:{width:`360px`}},{footer:m(()=>[d(M(j),{label:M(t)(`actions.cancel`),severity:`secondary`,text:``,onClick:i[32]||=e=>tt.value=!1},null,8,[`label`]),d(M(j),{label:M(t)(`actions.add`),icon:`pi pi-user-plus`,disabled:!U.value,onClick:_t},null,8,[`label`,`disabled`])]),default:m(()=>[x(`div`,oc,[x(`label`,sc,[s(P(M(R).group)+` `,1),i[49]||=x(`span`,{class:`required`},`*`,-1)]),d(M(r),{"input-id":`scened-add-node-group`,modelValue:U.value,"onUpdate:modelValue":i[31]||=e=>U.value=e,options:z.value.map(e=>({label:e.name,value:e.id})),"option-label":`label`,"option-value":`value`,placeholder:`${M(t)(`actions.add`)} ${M(R).group.toLowerCase()}`,class:`w-full`},null,8,[`modelValue`,`options`,`placeholder`])])]),_:1},8,[`visible`,`header`]),d(M(O),{visible:Zt.value,"onUpdate:visible":i[35]||=e=>Zt.value=e,header:M(t)(`scenarioEditor.exportHeader`),modal:``,style:{width:`600px`}},{footer:m(()=>[d(M(j),{label:M(t)(`scenarioEditor.copyJson`),icon:`pi pi-copy`,onClick:nn},null,8,[`label`]),d(M(j),{label:M(t)(`actions.close`),severity:`secondary`,text:``,onClick:i[34]||=e=>Zt.value=!1},null,8,[`label`])]),default:m(()=>[x(`pre`,cc,P(tn.value),1)]),_:1},8,[`visible`,`header`]),d(M(O),{visible:Qt.value,"onUpdate:visible":i[38]||=e=>Qt.value=e,header:M(t)(`scenarioEditor.importHeader`),modal:``,style:{width:`600px`}},{footer:m(()=>[d(M(j),{label:M(t)(`actions.cancel`),severity:`secondary`,text:``,onClick:i[37]||=e=>Qt.value=!1},null,8,[`label`]),d(M(j),{label:M(t)(`actions.apply`),icon:`pi pi-check`,disabled:!$t.value.trim(),onClick:an},null,8,[`label`,`disabled`])]),default:m(()=>[d(M(Se),{modelValue:$t.value,"onUpdate:modelValue":i[36]||=e=>$t.value=e,rows:`12`,class:`w-full`,placeholder:M(t)(`scenarioEditor.importPlaceholder`)},null,8,[`modelValue`,`placeholder`]),en.value?(A(),C(`p`,lc,P(en.value),1)):n(``,!0)]),_:1},8,[`visible`,`header`]),d(M(O),{visible:Ke.value,"onUpdate:visible":i[39]||=e=>Ke.value=e,header:M(t)(`scenarioEditor.applyPresetHeader`),modal:``,style:{width:`400px`}},{footer:m(()=>[d(M(j),{label:M(t)(`actions.cancel`),severity:`secondary`,text:``,onClick:$e},null,8,[`label`]),d(M(j),{label:M(t)(`scenarioEditor.applyPresetConfirm`),icon:`pi pi-refresh`,severity:`warn`,onClick:Qe},null,8,[`label`])]),default:m(()=>[x(`p`,uc,P(M(t)(`scenarioEditor.applyPresetMessage`)),1)]),_:1},8,[`visible`,`header`])],64)}}}),[[`__scopeId`,`data-v-bd84df09`]]);export{vc as default};
@@ -0,0 +1 @@
1
+ import{Jr as e,Zi as t,bn as n,hi as r,oa as i,wn as a,zr as o}from"./index-Dl-HyfHx.js";import{n as s,s as c,u as l}from"./cloud-client-GmxBhiFl.js";import{t as u}from"./auth-errors-DEObS1lG.js";import{t as d}from"./src-DtlOQm4K.js";var f=e({__name:`SendToChatDialog`,setup(e,{expose:f}){let{t:p}=a(),m=n(),{user:h}=c(),g=l(s,u()),_=t(null);function v(e,t){return t?p(`sendToChat.${e}`,t):p(`sendToChat.${e}`)}function y(){m.add({severity:`success`,summary:p(`sendToChat.sent`),life:2500})}async function b(e){h.value&&await g.refresh(),_.value?.open(e)}return f({open:b}),(e,t)=>(r(),o(i(d),{ref_key:`dialogRef`,ref:_,client:i(s),t:v,"current-user-id":i(h)?.id,organizations:i(g).organizations.value,onSent:y},null,8,[`client`,`current-user-id`,`organizations`]))}});export{f as t};
@@ -0,0 +1 @@
1
+ import{Jr as e,Jt as t,Kr as n,Lr as r,Qt as i,R as a,Rr as o,Vr as s,hi as c,oa as l,wn as u}from"./index-Dl-HyfHx.js";import{t as d}from"./ProcessControls-C2EYsD-P.js";var f={class:`service-controls-bar`},p={class:`service-controls-bar__left`},m={class:`service-controls-bar__right`},h=i(e({__name:`ServiceControlsBar`,props:{service:{},processes:{}},setup(e){let i=e,h=r(()=>i.processes.find(e=>e.state===`running`||e.state===`starting`)??i.processes[0]??null),g=r(()=>h.value?h.value.state:`stopped`),{t:_}=u(),v=a(),y=r(()=>{let e=i.service.effectiveAgentId;return e?v.getById(e)?.config.name??e:null}),b=r(()=>{switch(g.value){case`running`:return`success`;case`starting`:return`warn`;case`errored`:return`danger`;default:return`secondary`}});return(r,i)=>(c(),s(`div`,f,[o(`div`,p,[n(l(t),{value:g.value,severity:b.value,class:`service-controls-bar__tag`},null,8,[`value`,`severity`]),n(l(t),{value:y.value??l(_)(`serviceHeader.noAgent`),severity:y.value?`secondary`:`warn`,icon:`pi pi-server`,class:`service-controls-bar__tag`},null,8,[`value`,`severity`])]),o(`div`,m,[n(d,{"agent-id":h.value?.agentId??e.service.agentId??``,"process-id":h.value?.id??e.service.id,state:h.value?.state??`stopped`},null,8,[`agent-id`,`process-id`,`state`])])]))}}),[[`__scopeId`,`data-v-541498f0`]]);export{h as t};
@@ -1 +1 @@
1
- .log-details[data-v-5781eb9d]{flex-direction:column;gap:1.5rem;display:flex}.log-details__section[data-v-5781eb9d]{flex-direction:column;gap:.5rem;display:flex}.log-details__label[data-v-5781eb9d]{text-transform:uppercase;color:var(--p-primary-color);letter-spacing:.05em;font-size:.75rem;font-weight:600}.log-details__value[data-v-5781eb9d]{color:var(--p-text-color);font-size:.875rem}.log-details__value--box[data-v-5781eb9d]{border-radius:var(--p-border-radius);border:1px solid var(--p-content-border-color);background:var(--p-surface-ground);padding:.75rem}.log-details__value--code[data-v-5781eb9d]{white-space:pre-wrap;word-break:break-word;font-family:JetBrains Mono,Fira Code,Consolas,monospace;font-size:.8125rem;line-height:1.5}.log-details__process[data-v-5781eb9d]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.log-details__process span[data-v-5781eb9d]{word-break:break-all;font-family:JetBrains Mono,Fira Code,Consolas,monospace;font-size:.8125rem}.service-terminal[data-v-8ce2178d]{flex-direction:column;height:100%;display:flex;overflow:hidden}.service-terminal--fullscreen[data-v-8ce2178d]{z-index:9999;background:var(--p-surface-ground);position:fixed;inset:0}.service-terminal__header[data-v-8ce2178d]{border-bottom:1px solid var(--p-content-border-color);background:var(--p-content-background);justify-content:space-between;align-items:center;padding:.75rem 1rem;display:flex}.service-terminal__header-left[data-v-8ce2178d]{align-items:center;gap:.625rem;display:flex}.service-terminal__name[data-v-8ce2178d]{color:var(--p-text-color);font-size:1rem;font-weight:600}.service-terminal__state-tag[data-v-8ce2178d]{font-size:.75rem}.service-terminal__header-right[data-v-8ce2178d]{align-items:center;gap:.5rem;display:flex}.service-terminal__toolbar[data-v-8ce2178d]{border-bottom:1px solid var(--p-content-border-color);background:var(--p-content-background);justify-content:space-between;align-items:center;padding:.25rem .5rem;display:flex}.service-terminal__toolbar-left[data-v-8ce2178d],.service-terminal__toolbar-right[data-v-8ce2178d]{align-items:center;gap:.25rem;display:flex}.service-terminal__content[data-v-8ce2178d]{flex:1;min-height:0;overflow:hidden}.service-terminal__shortcuts[data-v-8ce2178d]{border-top:1px solid var(--p-content-border-color);background:var(--p-content-background);flex-wrap:wrap;align-items:center;gap:.5rem;padding:.375rem 1rem;display:flex}.shortcut-badge[data-v-8ce2178d]{font-size:.75rem}.service-terminal__command-input[data-v-8ce2178d]{border-top:1px solid var(--p-content-border-color);background:var(--p-content-background);align-items:center;gap:.5rem;padding:.5rem 1rem;display:flex}.service-terminal__prompt[data-v-8ce2178d]{color:var(--p-primary-color);font-family:Courier New,monospace;font-size:1rem;font-weight:600;line-height:1}.service-terminal__autocomplete[data-v-8ce2178d]{flex:1}.service-terminal__autocomplete[data-v-8ce2178d] .p-autocomplete-input{width:100%}.service-terminal__input[data-v-8ce2178d]{color:var(--p-text-color);font-family:Courier New,monospace;font-size:.875rem;box-shadow:none!important;background:0 0!important;border:none!important;outline:none!important;padding:.5rem 0!important}.service-terminal__input[data-v-8ce2178d]::placeholder{color:var(--p-text-muted-color);font-style:italic}.service-terminal__input[data-v-8ce2178d]:disabled{opacity:.5;cursor:not-allowed}.service-terminal__bottom[data-v-8ce2178d]{border-top:1px solid var(--p-content-border-color);background:var(--p-content-background);flex-wrap:wrap;align-items:center;gap:.5rem;padding:.5rem 1rem;display:flex}.service-terminal__pill[data-v-8ce2178d]{text-overflow:ellipsis;max-width:200px;font-size:.75rem;overflow:hidden}.service-terminal__pid-selector[data-v-8ce2178d]{min-width:200px;font-size:.875rem}.pid-option[data-v-8ce2178d]{align-items:center;gap:.5rem;width:100%;display:flex}.pid-option span[data-v-8ce2178d]{flex:1}.pid-badge[data-v-8ce2178d]{margin-left:auto;font-size:.625rem}.pid-status-icon[data-v-8ce2178d]{margin-right:.5rem;font-size:.5rem}.pid-status-icon--active[data-v-8ce2178d]{color:#22c55e}.pid-status-icon--stopped[data-v-8ce2178d]{color:#94a3b8}.service-metrics[data-v-94f5993b]{flex-direction:column;height:100%;padding:1rem;display:flex;overflow-y:auto}.service-metrics__no-data[data-v-94f5993b],.service-metrics__no-process[data-v-94f5993b]{color:var(--p-text-muted-color);justify-content:center;align-items:center;gap:.5rem;padding:3rem;font-size:.9375rem;display:flex}.service-metrics__skeleton[data-v-94f5993b]{flex-wrap:wrap;gap:1rem;display:flex}.metric-skeleton[data-v-94f5993b]{border:1px solid var(--p-content-border-color);border-radius:var(--p-border-radius);background:var(--p-content-background);flex:1;min-width:160px;max-width:260px;padding:1rem}.config-general[data-v-e166143a]{flex-direction:column;gap:.75rem;display:flex}.config-card[data-v-e166143a]{border:1px solid var(--p-content-border-color);border-radius:var(--p-border-radius);background:var(--p-content-background);padding:.875rem 1rem}.config-card--inline[data-v-e166143a]{justify-content:space-between;align-items:center;display:flex}.config-card__header[data-v-e166143a]{color:var(--p-text-muted-color);align-items:center;gap:.5rem;margin-bottom:.5rem;font-size:.8125rem;font-weight:600;display:flex}.config-card--inline .config-card__header[data-v-e166143a]{margin-bottom:0}.config-card__input[data-v-e166143a]{width:100%}.config-card__hint[data-v-e166143a]{color:var(--p-text-muted-color);margin-top:.3rem;font-size:.78rem;display:block}.config-meta[data-v-e166143a]{flex-direction:column;gap:.5rem;margin-top:.75rem;display:flex}.config-meta__row[data-v-e166143a]{align-items:center;gap:.5rem;display:flex}.config-meta__input[data-v-e166143a]{flex:1}.config-meta__input--wide[data-v-e166143a]{flex:2}.config-meta__add[data-v-e166143a]{align-self:flex-start}.docker-config[data-v-36904478]{flex-direction:column;gap:.75rem;display:flex}.docker-config__section[data-v-36904478]{flex-direction:column;gap:.375rem;display:flex}.docker-config__section-title[data-v-36904478]{color:var(--p-text-color);font-size:.875rem;font-weight:600}.docker-config__label[data-v-36904478]{color:var(--p-text-muted-color);font-size:.75rem;font-weight:600}.docker-config__input[data-v-36904478]{width:100%;max-width:480px}.docker-config__select[data-v-36904478]{width:100%;max-width:320px}.docker-config__mode-toggle[data-v-36904478]{gap:1.5rem;display:flex}.docker-config__mode-toggle--indented[data-v-36904478]{flex-direction:column;gap:.375rem;margin-top:.5rem;padding-left:1.5rem}.docker-config__mode-option[data-v-36904478]{cursor:pointer;align-items:center;gap:.375rem;font-size:.875rem;display:flex}.docker-config__radio[data-v-36904478]{cursor:pointer}.docker-config__kv-list[data-v-36904478]{flex-direction:column;gap:.5rem;display:flex}.docker-config__kv-row[data-v-36904478]{align-items:center;gap:.5rem;display:flex}.docker-config__kv-input[data-v-36904478]{flex:1}.docker-config__list[data-v-36904478]{flex-direction:column;gap:.5rem;display:flex}.docker-config__list-row[data-v-36904478]{align-items:center;gap:.5rem;display:flex}.docker-config__checkbox-row[data-v-36904478]{align-items:center;gap:.5rem;margin-bottom:.25rem;display:flex}.docker-config__checkbox-label[data-v-36904478]{cursor:pointer;font-size:.875rem}.docker-config__hint[data-v-36904478]{color:var(--p-text-muted-color);margin-top:.125rem;font-size:.75rem}.docker-config__shell-row[data-v-36904478]{flex-wrap:wrap;align-items:center;gap:.75rem;margin-top:.25rem;padding-left:1.5rem;display:flex}.docker-config__shell-row .docker-config__label[data-v-36904478]{white-space:nowrap}.docker-config__shell-row .docker-config__hint[data-v-36904478]{margin-top:0}.docker-config__select--small[data-v-36904478]{max-width:180px}.docker-config__hint code[data-v-36904478]{font-family:monospace;font-size:.7rem}.docker-config__hint-inline[data-v-36904478]{color:var(--p-text-muted-color);font-size:.75rem;font-weight:400}.docker-config__bootstrap-card[data-v-36904478]{border:1px solid var(--p-content-border-color);border-radius:var(--p-border-radius);background:var(--p-content-background);padding:.75rem 1rem}.docker-config__bootstrap-row[data-v-36904478]{flex-wrap:wrap;align-items:flex-end;gap:.75rem;display:flex}.docker-config__bootstrap-field[data-v-36904478]{flex-direction:column;flex:1;gap:.25rem;min-width:120px;display:flex}.docker-config__bootstrap-field--wide[data-v-36904478]{flex:2;min-width:200px}.docker-config__bootstrap-actions[data-v-36904478]{align-items:center;gap:.125rem;padding-bottom:.125rem;display:flex}.config-commands[data-v-df297a71]{flex-direction:column;gap:.75rem;display:flex}.config-commands__tab-content[data-v-df297a71]{flex-direction:column;gap:.75rem;padding-top:.75rem;display:flex}.config-commands__empty[data-v-df297a71]{text-align:center;color:var(--p-text-muted-color);padding:1.5rem;font-size:.875rem}.config-card[data-v-df297a71]{border:1px solid var(--p-content-border-color);border-radius:var(--p-border-radius);background:var(--p-content-background);padding:.875rem 1rem}.config-card__input[data-v-df297a71]{width:100%}.config-commands__row[data-v-df297a71]{align-items:flex-end;gap:.75rem;display:flex}.config-commands__field[data-v-df297a71]{flex-direction:column;flex:1;gap:.25rem;display:flex}.config-commands__field--wide[data-v-df297a71]{flex:2}.config-commands__label[data-v-df297a71]{color:var(--p-text-muted-color);font-size:.75rem;font-weight:600}.config-commands__actions-cell[data-v-df297a71]{align-items:center;padding-bottom:.125rem;display:flex}.config-commands__footer[data-v-df297a71]{justify-content:space-between;align-items:center;padding-top:.5rem;display:flex}.tab-icon[data-v-df297a71]{margin-right:.4rem;font-size:.85rem}.config-commands__execution[data-v-df297a71]{flex-wrap:wrap;align-items:stretch;gap:.75rem;padding-bottom:.25rem;display:flex}.config-card--execution[data-v-df297a71]{flex-direction:column;flex:1;gap:.5rem;min-width:180px;display:flex}.config-card__header[data-v-df297a71]{align-items:center;gap:.5rem;font-size:.875rem;font-weight:600;display:flex}.config-card__hint[data-v-df297a71]{color:var(--p-text-muted-color);font-size:.78rem}.runner-option[data-v-df297a71]{align-items:center;gap:.5rem;display:flex}.config-env[data-v-a6a198b8]{flex-direction:column;gap:1rem;display:flex}.active-env-display[data-v-a6a198b8]{background:var(--p-content-hover-background);border-left:3px solid var(--p-primary-color);border-radius:4px;align-items:center;gap:.5rem;padding:.75rem 1rem;font-size:.875rem;display:flex}.active-env-label[data-v-a6a198b8]{color:var(--p-text-muted-color);font-weight:600}.inheritance-toggle[data-v-a6a198b8]{background:var(--p-content-hover-background);border:1px solid var(--p-content-border-color);border-radius:4px;align-items:center;gap:.75rem;padding:.6rem 1rem;font-size:.875rem;display:flex}.inheritance-label[data-v-a6a198b8]{color:var(--p-text-color)}.config-env__header[data-v-a6a198b8]{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.5rem;display:flex}.config-env__title[data-v-a6a198b8]{color:var(--p-text-color);flex:1;margin:0;font-size:1rem;font-weight:600}.config-env__actions[data-v-a6a198b8]{align-items:center;gap:.5rem;display:flex}.variables-view[data-v-a6a198b8]{flex-direction:column;gap:1rem;display:flex}.inherited-accordion[data-v-a6a198b8]{margin-top:.25rem}.inherited-header[data-v-a6a198b8]{color:var(--p-text-muted-color);align-items:center;gap:.5rem;font-size:.875rem;font-weight:600;display:inline-flex}.inherited-header .pi[data-v-a6a198b8]{font-size:.8rem}.empty-state[data-v-a6a198b8]{text-align:center;color:var(--p-text-muted-color);border:1px dashed var(--p-content-border-color);border-radius:4px;padding:2rem}.editor-container[data-v-a6a198b8]{flex-direction:column;gap:1rem;display:flex}.editor-env-banner[data-v-a6a198b8]{background:var(--p-content-hover-background);color:var(--p-text-color);border-radius:6px;align-items:center;gap:.4rem;padding:.65rem .85rem;font-size:.85rem;display:flex}.editor-env-text[data-v-a6a198b8]{margin-right:.15rem}.editor-section[data-v-a6a198b8]{flex-direction:column;gap:.75rem;display:flex}.preview-container[data-v-a6a198b8]{flex-direction:column;gap:1rem;display:flex}.preview-info[data-v-a6a198b8]{color:var(--p-text-muted-color);margin:0;font-size:.875rem;font-style:italic}.preview-key[data-v-a6a198b8]{color:var(--p-text-color);font-family:JetBrains Mono,Fira Code,monospace;font-size:.85rem;font-weight:600}.preview-value[data-v-a6a198b8]{color:var(--p-text-color);word-break:break-all;font-family:JetBrains Mono,Fira Code,monospace;font-size:.85rem}.loading-container[data-v-a6a198b8]{justify-content:center;padding:2rem;display:flex}[data-v-a6a198b8] .preview-container .p-datatable{margin-top:1rem}.passthrough-info[data-v-a6a198b8]{color:var(--p-text-muted-color);margin:0 0 .5rem;font-size:.8rem;font-style:italic}.passthrough-undefined[data-v-a6a198b8]{color:var(--p-orange-500);font-size:.85rem;font-style:italic}.inherited-row-key[data-v-a6a198b8]{flex-direction:column;gap:.2rem;display:flex}.source-badge[data-v-a6a198b8]{opacity:.7;font-size:.7rem}.secret-mask[data-v-a6a198b8]{color:var(--p-text-muted-color,#6b7280);font-size:.85rem;font-style:italic}.value-row[data-v-a6a198b8]{align-items:center;display:inline-flex}.value-actions[data-v-a6a198b8]{flex-shrink:0;align-items:center;gap:.2rem;margin-right:.4rem;display:inline-flex}.action-icon[data-v-a6a198b8]{color:var(--p-text-muted-color,#9ca3af);cursor:pointer;padding:.15rem;font-size:.75rem;transition:color .15s}.action-icon[data-v-a6a198b8]:hover{color:var(--p-text-color)}.action-icon.pi-check[data-v-a6a198b8]{color:var(--p-green-500,#22c55e)}.config-health[data-v-63e32039]{flex-direction:column;gap:.75rem;display:flex}.config-card[data-v-63e32039]{border:1px solid var(--p-content-border-color);border-radius:var(--p-border-radius);background:var(--p-content-background);padding:.875rem 1rem}.config-card--inline[data-v-63e32039]{justify-content:space-between;align-items:center;display:flex}.config-card__header[data-v-63e32039]{color:var(--p-text-muted-color);align-items:center;gap:.5rem;margin-bottom:.5rem;font-size:.8125rem;font-weight:600;display:flex}.config-card--inline .config-card__header[data-v-63e32039]{margin-bottom:0}.config-card__input[data-v-63e32039]{width:100%}.config-card__hint[data-v-63e32039]{color:var(--p-text-muted-color);margin-top:.25rem;font-size:.75rem;display:block}.config-shortcuts[data-v-d6ecb989]{flex-direction:column;gap:.75rem;display:flex}.config-shortcuts__empty[data-v-d6ecb989]{text-align:center;color:var(--p-text-muted-color);padding:1.5rem;font-size:.875rem}.config-card[data-v-d6ecb989]{border:1px solid var(--p-content-border-color);border-radius:var(--p-border-radius);background:var(--p-content-background);padding:.875rem 1rem}.config-card__input[data-v-d6ecb989]{width:100%}.config-shortcuts__row[data-v-d6ecb989]{align-items:flex-end;gap:.75rem;display:flex}.config-shortcuts__field[data-v-d6ecb989]{flex-direction:column;flex:1;gap:.25rem;display:flex}.config-shortcuts__field--wide[data-v-d6ecb989]{flex:2}.config-shortcuts__label[data-v-d6ecb989]{color:var(--p-text-muted-color);font-size:.75rem;font-weight:600}.config-shortcuts__actions-cell[data-v-d6ecb989]{align-items:center;padding-bottom:.125rem;display:flex}.config-shortcuts__footer[data-v-d6ecb989]{justify-content:space-between;align-items:center;padding-top:.5rem;display:flex}.config-log-parsers[data-v-2a8eb0c6]{flex-direction:column;gap:.75rem;display:flex}.config-card[data-v-2a8eb0c6]{border:1px solid var(--p-content-border-color);border-radius:var(--p-border-radius);background:var(--p-content-background);padding:.875rem 1rem}.config-card__header[data-v-2a8eb0c6]{color:var(--p-text-muted-color);align-items:center;gap:.5rem;margin-bottom:.5rem;font-size:.8125rem;font-weight:600;display:flex}.config-card__hint[data-v-2a8eb0c6]{color:var(--p-text-muted-color);margin-top:.3rem;font-size:.78rem;display:block}.config-card__header-hint[data-v-2a8eb0c6]{color:var(--p-text-muted-color);margin-left:auto;font-size:.75rem;font-weight:400}.config-log-parsers__drag-list[data-v-2a8eb0c6]{flex-direction:column;gap:.375rem;margin-top:.5rem;display:flex}.config-log-parsers__drag-row[data-v-2a8eb0c6]{border:1px solid var(--p-content-border-color);border-radius:var(--p-border-radius);background:var(--p-content-hover-background);-webkit-user-select:none;user-select:none;align-items:center;gap:.625rem;padding:.4rem .625rem;display:flex}.drag-handle[data-v-2a8eb0c6]{cursor:grab;color:var(--p-text-muted-color);flex-shrink:0}.drag-handle[data-v-2a8eb0c6]:active{cursor:grabbing}.config-log-parsers__order[data-v-2a8eb0c6]{text-align:center;width:1.25rem;color:var(--p-text-muted-color);flex-shrink:0;font-size:.75rem;font-weight:700}.config-log-parsers__name[data-v-2a8eb0c6]{flex:1;font-size:.875rem;font-weight:500}.config-log-parsers__delete[data-v-2a8eb0c6]{flex-shrink:0;margin-left:auto}.config-log-parsers__empty[data-v-2a8eb0c6]{color:var(--p-text-muted-color);padding:1rem 0 .5rem;font-size:.875rem}.config-log-parsers__add-row[data-v-2a8eb0c6]{border-top:1px solid var(--p-content-border-color);align-items:center;gap:.5rem;margin-top:.75rem;padding-top:.75rem;display:flex}.config-log-parsers__add-select[data-v-2a8eb0c6]{flex:1}.config-log-parsers__footer[data-v-2a8eb0c6]{justify-content:space-between;align-items:center;padding-top:.5rem;display:flex}.config-log-sources[data-v-1ceb461a]{flex-direction:column;gap:.75rem;display:flex}.config-card[data-v-1ceb461a]{border:1px solid var(--p-content-border-color);border-radius:var(--p-border-radius);background:var(--p-content-background);padding:.875rem 1rem}.config-card__header[data-v-1ceb461a]{color:var(--p-text-muted-color);align-items:center;gap:.5rem;margin-bottom:.5rem;font-size:.8125rem;font-weight:600;display:flex}.config-card__hint[data-v-1ceb461a]{color:var(--p-text-muted-color);margin-top:.3rem;font-size:.78rem;display:block}.config-card--list[data-v-1ceb461a]{flex-direction:column;gap:.375rem;padding:.5rem;display:flex}.source-row[data-v-1ceb461a]{border:1px solid var(--p-content-border-color);border-radius:var(--p-border-radius);background:var(--p-content-hover-background);align-items:center;gap:.75rem;padding:.5rem .625rem;display:flex}.source-row__icon[data-v-1ceb461a]{color:var(--p-text-muted-color);flex-shrink:0}.source-row__info[data-v-1ceb461a]{flex-direction:column;flex:1;gap:.125rem;min-width:0;display:flex}.source-row__type[data-v-1ceb461a]{text-transform:uppercase;color:var(--p-primary-color);letter-spacing:.04em;font-size:.7rem;font-weight:700}.source-row__label[data-v-1ceb461a]{color:var(--p-text-color);white-space:nowrap;text-overflow:ellipsis;font-size:.8125rem;overflow:hidden}.source-row__actions[data-v-1ceb461a]{flex-shrink:0;gap:.25rem;display:flex}.config-log-sources__empty[data-v-1ceb461a]{text-align:center;color:var(--p-text-muted-color);border:1px dashed var(--p-content-border-color);border-radius:var(--p-border-radius);padding:2rem;font-size:.875rem}.config-log-sources__empty-icon[data-v-1ceb461a]{opacity:.4;margin-bottom:.5rem;font-size:2rem;display:block}.config-log-sources__empty p[data-v-1ceb461a]{margin:0 0 .25rem}.config-log-sources__footer[data-v-1ceb461a]{justify-content:flex-end;padding-top:.25rem;display:flex}.dialog-form[data-v-1ceb461a]{flex-direction:column;gap:.875rem;padding-top:.25rem;display:flex}.dialog-form__row[data-v-1ceb461a]{gap:.75rem;display:flex}.dialog-form__row .dialog-form__field[data-v-1ceb461a]{flex:1}.dialog-form__field--port[data-v-1ceb461a]{flex:0 0 100px!important}.dialog-form__field--grow[data-v-1ceb461a]{flex:2!important}.dialog-form__field[data-v-1ceb461a]{flex-direction:column;gap:.3rem;display:flex}.dialog-form__field--row[data-v-1ceb461a]{flex-direction:row;justify-content:space-between;align-items:center}.dialog-form__label[data-v-1ceb461a]{color:var(--p-text-muted-color);font-size:.8rem;font-weight:600}.dialog-form__input[data-v-1ceb461a]{width:100%}.dialog-form__required[data-v-1ceb461a]{color:var(--p-red-500,#ef4444)}.dialog-form__hint[data-v-1ceb461a]{color:var(--p-text-muted-color);font-size:.75rem;font-weight:400}.dialog-form__hint-block[data-v-1ceb461a]{color:var(--p-text-muted-color);border-radius:var(--p-border-radius);background:var(--p-content-hover-background);padding:.5rem;font-size:.8rem;display:block}.config-traefik[data-v-f22ba351]{flex-direction:column;gap:.75rem;padding:1rem 0;display:flex}.traefik-entry[data-v-f22ba351]{align-items:center;gap:.5rem;min-width:0;display:flex}.traefik-entry__fields[data-v-f22ba351]{flex:1;align-items:center;gap:.5rem;min-width:0;display:flex}.traefik-entry__url[data-v-f22ba351]{flex:1;min-width:0}.traefik-entry__port[data-v-f22ba351]{flex:0 0 100px}.config-view[data-v-51a781dd]{flex-direction:column;height:100%;padding:1rem;display:flex;overflow-y:auto}.config-view__header[data-v-51a781dd]{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.config-view__title[data-v-51a781dd]{color:var(--p-text-color);margin:0;font-size:1.125rem;font-weight:600}.config-view__tabs[data-v-51a781dd]{flex:1}.tab-icon[data-v-51a781dd]{margin-right:.4rem;font-size:.85rem}.service-detail[data-v-e3e9fe7f]{height:100%}.service-detail__not-found[data-v-e3e9fe7f]{height:100%;color:var(--p-text-muted-color);justify-content:center;align-items:center;display:flex}
1
+ .log-details[data-v-5781eb9d]{flex-direction:column;gap:1.5rem;display:flex}.log-details__section[data-v-5781eb9d]{flex-direction:column;gap:.5rem;display:flex}.log-details__label[data-v-5781eb9d]{text-transform:uppercase;color:var(--p-primary-color);letter-spacing:.05em;font-size:.75rem;font-weight:600}.log-details__value[data-v-5781eb9d]{color:var(--p-text-color);font-size:.875rem}.log-details__value--box[data-v-5781eb9d]{border-radius:var(--p-border-radius);border:1px solid var(--p-content-border-color);background:var(--p-surface-ground);padding:.75rem}.log-details__value--code[data-v-5781eb9d]{white-space:pre-wrap;word-break:break-word;font-family:JetBrains Mono,Fira Code,Consolas,monospace;font-size:.8125rem;line-height:1.5}.log-details__process[data-v-5781eb9d]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.log-details__process span[data-v-5781eb9d]{word-break:break-all;font-family:JetBrains Mono,Fira Code,Consolas,monospace;font-size:.8125rem}.service-terminal[data-v-8ce2178d]{flex-direction:column;height:100%;display:flex;overflow:hidden}.service-terminal--fullscreen[data-v-8ce2178d]{z-index:9999;background:var(--p-surface-ground);position:fixed;inset:0}.service-terminal__header[data-v-8ce2178d]{border-bottom:1px solid var(--p-content-border-color);background:var(--p-content-background);justify-content:space-between;align-items:center;padding:.75rem 1rem;display:flex}.service-terminal__header-left[data-v-8ce2178d]{align-items:center;gap:.625rem;display:flex}.service-terminal__name[data-v-8ce2178d]{color:var(--p-text-color);font-size:1rem;font-weight:600}.service-terminal__state-tag[data-v-8ce2178d]{font-size:.75rem}.service-terminal__header-right[data-v-8ce2178d]{align-items:center;gap:.5rem;display:flex}.service-terminal__toolbar[data-v-8ce2178d]{border-bottom:1px solid var(--p-content-border-color);background:var(--p-content-background);justify-content:space-between;align-items:center;padding:.25rem .5rem;display:flex}.service-terminal__toolbar-left[data-v-8ce2178d],.service-terminal__toolbar-right[data-v-8ce2178d]{align-items:center;gap:.25rem;display:flex}.service-terminal__content[data-v-8ce2178d]{flex:1;min-height:0;overflow:hidden}.service-terminal__shortcuts[data-v-8ce2178d]{border-top:1px solid var(--p-content-border-color);background:var(--p-content-background);flex-wrap:wrap;align-items:center;gap:.5rem;padding:.375rem 1rem;display:flex}.shortcut-badge[data-v-8ce2178d]{font-size:.75rem}.service-terminal__command-input[data-v-8ce2178d]{border-top:1px solid var(--p-content-border-color);background:var(--p-content-background);align-items:center;gap:.5rem;padding:.5rem 1rem;display:flex}.service-terminal__prompt[data-v-8ce2178d]{color:var(--p-primary-color);font-family:Courier New,monospace;font-size:1rem;font-weight:600;line-height:1}.service-terminal__autocomplete[data-v-8ce2178d]{flex:1}.service-terminal__autocomplete[data-v-8ce2178d] .p-autocomplete-input{width:100%}.service-terminal__input[data-v-8ce2178d]{color:var(--p-text-color);font-family:Courier New,monospace;font-size:.875rem;box-shadow:none!important;background:0 0!important;border:none!important;outline:none!important;padding:.5rem 0!important}.service-terminal__input[data-v-8ce2178d]::placeholder{color:var(--p-text-muted-color);font-style:italic}.service-terminal__input[data-v-8ce2178d]:disabled{opacity:.5;cursor:not-allowed}.service-terminal__bottom[data-v-8ce2178d]{border-top:1px solid var(--p-content-border-color);background:var(--p-content-background);flex-wrap:wrap;align-items:center;gap:.5rem;padding:.5rem 1rem;display:flex}.service-terminal__pill[data-v-8ce2178d]{text-overflow:ellipsis;max-width:200px;font-size:.75rem;overflow:hidden}.service-terminal__pid-selector[data-v-8ce2178d]{min-width:200px;font-size:.875rem}.pid-option[data-v-8ce2178d]{align-items:center;gap:.5rem;width:100%;display:flex}.pid-option span[data-v-8ce2178d]{flex:1}.pid-badge[data-v-8ce2178d]{margin-left:auto;font-size:.625rem}.pid-status-icon[data-v-8ce2178d]{margin-right:.5rem;font-size:.5rem}.pid-status-icon--active[data-v-8ce2178d]{color:#22c55e}.pid-status-icon--stopped[data-v-8ce2178d]{color:#94a3b8}.service-metrics[data-v-94f5993b]{flex-direction:column;height:100%;padding:1rem;display:flex;overflow-y:auto}.service-metrics__no-data[data-v-94f5993b],.service-metrics__no-process[data-v-94f5993b]{color:var(--p-text-muted-color);justify-content:center;align-items:center;gap:.5rem;padding:3rem;font-size:.9375rem;display:flex}.service-metrics__skeleton[data-v-94f5993b]{flex-wrap:wrap;gap:1rem;display:flex}.metric-skeleton[data-v-94f5993b]{border:1px solid var(--p-content-border-color);border-radius:var(--p-border-radius);background:var(--p-content-background);flex:1;min-width:160px;max-width:260px;padding:1rem}.config-general[data-v-e166143a]{flex-direction:column;gap:.75rem;display:flex}.config-card[data-v-e166143a]{border:1px solid var(--p-content-border-color);border-radius:var(--p-border-radius);background:var(--p-content-background);padding:.875rem 1rem}.config-card--inline[data-v-e166143a]{justify-content:space-between;align-items:center;display:flex}.config-card__header[data-v-e166143a]{color:var(--p-text-muted-color);align-items:center;gap:.5rem;margin-bottom:.5rem;font-size:.8125rem;font-weight:600;display:flex}.config-card--inline .config-card__header[data-v-e166143a]{margin-bottom:0}.config-card__input[data-v-e166143a]{width:100%}.config-card__hint[data-v-e166143a]{color:var(--p-text-muted-color);margin-top:.3rem;font-size:.78rem;display:block}.config-meta[data-v-e166143a]{flex-direction:column;gap:.5rem;margin-top:.75rem;display:flex}.config-meta__row[data-v-e166143a]{align-items:center;gap:.5rem;display:flex}.config-meta__input[data-v-e166143a]{flex:1}.config-meta__input--wide[data-v-e166143a]{flex:2}.config-meta__add[data-v-e166143a]{align-self:flex-start}.docker-config[data-v-36904478]{flex-direction:column;gap:.75rem;display:flex}.docker-config__section[data-v-36904478]{flex-direction:column;gap:.375rem;display:flex}.docker-config__section-title[data-v-36904478]{color:var(--p-text-color);font-size:.875rem;font-weight:600}.docker-config__label[data-v-36904478]{color:var(--p-text-muted-color);font-size:.75rem;font-weight:600}.docker-config__input[data-v-36904478]{width:100%;max-width:480px}.docker-config__select[data-v-36904478]{width:100%;max-width:320px}.docker-config__mode-toggle[data-v-36904478]{gap:1.5rem;display:flex}.docker-config__mode-toggle--indented[data-v-36904478]{flex-direction:column;gap:.375rem;margin-top:.5rem;padding-left:1.5rem}.docker-config__mode-option[data-v-36904478]{cursor:pointer;align-items:center;gap:.375rem;font-size:.875rem;display:flex}.docker-config__radio[data-v-36904478]{cursor:pointer}.docker-config__kv-list[data-v-36904478]{flex-direction:column;gap:.5rem;display:flex}.docker-config__kv-row[data-v-36904478]{align-items:center;gap:.5rem;display:flex}.docker-config__kv-input[data-v-36904478]{flex:1}.docker-config__list[data-v-36904478]{flex-direction:column;gap:.5rem;display:flex}.docker-config__list-row[data-v-36904478]{align-items:center;gap:.5rem;display:flex}.docker-config__checkbox-row[data-v-36904478]{align-items:center;gap:.5rem;margin-bottom:.25rem;display:flex}.docker-config__checkbox-label[data-v-36904478]{cursor:pointer;font-size:.875rem}.docker-config__hint[data-v-36904478]{color:var(--p-text-muted-color);margin-top:.125rem;font-size:.75rem}.docker-config__shell-row[data-v-36904478]{flex-wrap:wrap;align-items:center;gap:.75rem;margin-top:.25rem;padding-left:1.5rem;display:flex}.docker-config__shell-row .docker-config__label[data-v-36904478]{white-space:nowrap}.docker-config__shell-row .docker-config__hint[data-v-36904478]{margin-top:0}.docker-config__select--small[data-v-36904478]{max-width:180px}.docker-config__hint code[data-v-36904478]{font-family:monospace;font-size:.7rem}.docker-config__hint-inline[data-v-36904478]{color:var(--p-text-muted-color);font-size:.75rem;font-weight:400}.docker-config__bootstrap-card[data-v-36904478]{border:1px solid var(--p-content-border-color);border-radius:var(--p-border-radius);background:var(--p-content-background);padding:.75rem 1rem}.docker-config__bootstrap-row[data-v-36904478]{flex-wrap:wrap;align-items:flex-end;gap:.75rem;display:flex}.docker-config__bootstrap-field[data-v-36904478]{flex-direction:column;flex:1;gap:.25rem;min-width:120px;display:flex}.docker-config__bootstrap-field--wide[data-v-36904478]{flex:2;min-width:200px}.docker-config__bootstrap-actions[data-v-36904478]{align-items:center;gap:.125rem;padding-bottom:.125rem;display:flex}.config-commands[data-v-df297a71]{flex-direction:column;gap:.75rem;display:flex}.config-commands__tab-content[data-v-df297a71]{flex-direction:column;gap:.75rem;padding-top:.75rem;display:flex}.config-commands__empty[data-v-df297a71]{text-align:center;color:var(--p-text-muted-color);padding:1.5rem;font-size:.875rem}.config-card[data-v-df297a71]{border:1px solid var(--p-content-border-color);border-radius:var(--p-border-radius);background:var(--p-content-background);padding:.875rem 1rem}.config-card__input[data-v-df297a71]{width:100%}.config-commands__row[data-v-df297a71]{align-items:flex-end;gap:.75rem;display:flex}.config-commands__field[data-v-df297a71]{flex-direction:column;flex:1;gap:.25rem;display:flex}.config-commands__field--wide[data-v-df297a71]{flex:2}.config-commands__label[data-v-df297a71]{color:var(--p-text-muted-color);font-size:.75rem;font-weight:600}.config-commands__actions-cell[data-v-df297a71]{align-items:center;padding-bottom:.125rem;display:flex}.config-commands__footer[data-v-df297a71]{justify-content:space-between;align-items:center;padding-top:.5rem;display:flex}.tab-icon[data-v-df297a71]{margin-right:.4rem;font-size:.85rem}.config-commands__execution[data-v-df297a71]{flex-wrap:wrap;align-items:stretch;gap:.75rem;padding-bottom:.25rem;display:flex}.config-card--execution[data-v-df297a71]{flex-direction:column;flex:1;gap:.5rem;min-width:180px;display:flex}.config-card__header[data-v-df297a71]{align-items:center;gap:.5rem;font-size:.875rem;font-weight:600;display:flex}.config-card__hint[data-v-df297a71]{color:var(--p-text-muted-color);font-size:.78rem}.runner-option[data-v-df297a71]{align-items:center;gap:.5rem;display:flex}.config-env[data-v-752c8dec]{flex-direction:column;gap:1rem;display:flex}.active-env-display[data-v-752c8dec]{background:var(--p-content-hover-background);border-left:3px solid var(--p-primary-color);border-radius:4px;align-items:center;gap:.5rem;padding:.75rem 1rem;font-size:.875rem;display:flex}.active-env-label[data-v-752c8dec]{color:var(--p-text-muted-color);font-weight:600}.inheritance-toggle[data-v-752c8dec]{background:var(--p-content-hover-background);border:1px solid var(--p-content-border-color);border-radius:4px;align-items:center;gap:.75rem;padding:.6rem 1rem;font-size:.875rem;display:flex}.inheritance-label[data-v-752c8dec]{color:var(--p-text-color)}.config-env__header[data-v-752c8dec]{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.5rem;display:flex}.config-env__title[data-v-752c8dec]{color:var(--p-text-color);flex:1;margin:0;font-size:1rem;font-weight:600}.config-env__actions[data-v-752c8dec]{align-items:center;gap:.5rem;display:flex}.variables-view[data-v-752c8dec]{flex-direction:column;gap:1rem;display:flex}.inherited-accordion[data-v-752c8dec]{margin-top:.25rem}.inherited-header[data-v-752c8dec]{color:var(--p-text-muted-color);align-items:center;gap:.5rem;font-size:.875rem;font-weight:600;display:inline-flex}.inherited-header .pi[data-v-752c8dec]{font-size:.8rem}.empty-state[data-v-752c8dec]{text-align:center;color:var(--p-text-muted-color);border:1px dashed var(--p-content-border-color);border-radius:4px;padding:2rem}.editor-container[data-v-752c8dec]{flex-direction:column;gap:1rem;display:flex}.editor-env-banner[data-v-752c8dec]{background:var(--p-content-hover-background);color:var(--p-text-color);border-radius:6px;align-items:center;gap:.4rem;padding:.65rem .85rem;font-size:.85rem;display:flex}.editor-env-text[data-v-752c8dec]{margin-right:.15rem}.editor-section[data-v-752c8dec]{flex-direction:column;gap:.75rem;display:flex}.preview-container[data-v-752c8dec]{flex-direction:column;gap:1rem;display:flex}.preview-info[data-v-752c8dec]{color:var(--p-text-muted-color);margin:0;font-size:.875rem;font-style:italic}.preview-key[data-v-752c8dec]{color:var(--p-text-color);font-family:JetBrains Mono,Fira Code,monospace;font-size:.85rem;font-weight:600}.preview-value[data-v-752c8dec]{color:var(--p-text-color);word-break:break-all;font-family:JetBrains Mono,Fira Code,monospace;font-size:.85rem}.loading-container[data-v-752c8dec]{justify-content:center;padding:2rem;display:flex}[data-v-752c8dec] .preview-container .p-datatable{margin-top:1rem}.passthrough-info[data-v-752c8dec]{color:var(--p-text-muted-color);margin:0 0 .5rem;font-size:.8rem;font-style:italic}.passthrough-undefined[data-v-752c8dec]{color:var(--p-orange-500);font-size:.85rem;font-style:italic}.inherited-row-key[data-v-752c8dec]{flex-direction:column;gap:.2rem;display:flex}.source-badge[data-v-752c8dec]{opacity:.7;font-size:.7rem}.secret-mask[data-v-752c8dec]{color:var(--p-text-muted-color,#6b7280);font-size:.85rem;font-style:italic}.value-row[data-v-752c8dec]{align-items:center;display:inline-flex}.value-actions[data-v-752c8dec]{flex-shrink:0;align-items:center;gap:.2rem;margin-right:.4rem;display:inline-flex}.action-icon[data-v-752c8dec]{color:var(--p-text-muted-color,#9ca3af);cursor:pointer;padding:.15rem;font-size:.75rem;transition:color .15s}.action-icon[data-v-752c8dec]:hover{color:var(--p-text-color)}.action-icon.pi-check[data-v-752c8dec]{color:var(--p-green-500,#22c55e)}.config-health[data-v-63e32039]{flex-direction:column;gap:.75rem;display:flex}.config-card[data-v-63e32039]{border:1px solid var(--p-content-border-color);border-radius:var(--p-border-radius);background:var(--p-content-background);padding:.875rem 1rem}.config-card--inline[data-v-63e32039]{justify-content:space-between;align-items:center;display:flex}.config-card__header[data-v-63e32039]{color:var(--p-text-muted-color);align-items:center;gap:.5rem;margin-bottom:.5rem;font-size:.8125rem;font-weight:600;display:flex}.config-card--inline .config-card__header[data-v-63e32039]{margin-bottom:0}.config-card__input[data-v-63e32039]{width:100%}.config-card__hint[data-v-63e32039]{color:var(--p-text-muted-color);margin-top:.25rem;font-size:.75rem;display:block}.config-shortcuts[data-v-d6ecb989]{flex-direction:column;gap:.75rem;display:flex}.config-shortcuts__empty[data-v-d6ecb989]{text-align:center;color:var(--p-text-muted-color);padding:1.5rem;font-size:.875rem}.config-card[data-v-d6ecb989]{border:1px solid var(--p-content-border-color);border-radius:var(--p-border-radius);background:var(--p-content-background);padding:.875rem 1rem}.config-card__input[data-v-d6ecb989]{width:100%}.config-shortcuts__row[data-v-d6ecb989]{align-items:flex-end;gap:.75rem;display:flex}.config-shortcuts__field[data-v-d6ecb989]{flex-direction:column;flex:1;gap:.25rem;display:flex}.config-shortcuts__field--wide[data-v-d6ecb989]{flex:2}.config-shortcuts__label[data-v-d6ecb989]{color:var(--p-text-muted-color);font-size:.75rem;font-weight:600}.config-shortcuts__actions-cell[data-v-d6ecb989]{align-items:center;padding-bottom:.125rem;display:flex}.config-shortcuts__footer[data-v-d6ecb989]{justify-content:space-between;align-items:center;padding-top:.5rem;display:flex}.config-log-parsers[data-v-2a8eb0c6]{flex-direction:column;gap:.75rem;display:flex}.config-card[data-v-2a8eb0c6]{border:1px solid var(--p-content-border-color);border-radius:var(--p-border-radius);background:var(--p-content-background);padding:.875rem 1rem}.config-card__header[data-v-2a8eb0c6]{color:var(--p-text-muted-color);align-items:center;gap:.5rem;margin-bottom:.5rem;font-size:.8125rem;font-weight:600;display:flex}.config-card__hint[data-v-2a8eb0c6]{color:var(--p-text-muted-color);margin-top:.3rem;font-size:.78rem;display:block}.config-card__header-hint[data-v-2a8eb0c6]{color:var(--p-text-muted-color);margin-left:auto;font-size:.75rem;font-weight:400}.config-log-parsers__drag-list[data-v-2a8eb0c6]{flex-direction:column;gap:.375rem;margin-top:.5rem;display:flex}.config-log-parsers__drag-row[data-v-2a8eb0c6]{border:1px solid var(--p-content-border-color);border-radius:var(--p-border-radius);background:var(--p-content-hover-background);-webkit-user-select:none;user-select:none;align-items:center;gap:.625rem;padding:.4rem .625rem;display:flex}.drag-handle[data-v-2a8eb0c6]{cursor:grab;color:var(--p-text-muted-color);flex-shrink:0}.drag-handle[data-v-2a8eb0c6]:active{cursor:grabbing}.config-log-parsers__order[data-v-2a8eb0c6]{text-align:center;width:1.25rem;color:var(--p-text-muted-color);flex-shrink:0;font-size:.75rem;font-weight:700}.config-log-parsers__name[data-v-2a8eb0c6]{flex:1;font-size:.875rem;font-weight:500}.config-log-parsers__delete[data-v-2a8eb0c6]{flex-shrink:0;margin-left:auto}.config-log-parsers__empty[data-v-2a8eb0c6]{color:var(--p-text-muted-color);padding:1rem 0 .5rem;font-size:.875rem}.config-log-parsers__add-row[data-v-2a8eb0c6]{border-top:1px solid var(--p-content-border-color);align-items:center;gap:.5rem;margin-top:.75rem;padding-top:.75rem;display:flex}.config-log-parsers__add-select[data-v-2a8eb0c6]{flex:1}.config-log-parsers__footer[data-v-2a8eb0c6]{justify-content:space-between;align-items:center;padding-top:.5rem;display:flex}.config-log-sources[data-v-1ceb461a]{flex-direction:column;gap:.75rem;display:flex}.config-card[data-v-1ceb461a]{border:1px solid var(--p-content-border-color);border-radius:var(--p-border-radius);background:var(--p-content-background);padding:.875rem 1rem}.config-card__header[data-v-1ceb461a]{color:var(--p-text-muted-color);align-items:center;gap:.5rem;margin-bottom:.5rem;font-size:.8125rem;font-weight:600;display:flex}.config-card__hint[data-v-1ceb461a]{color:var(--p-text-muted-color);margin-top:.3rem;font-size:.78rem;display:block}.config-card--list[data-v-1ceb461a]{flex-direction:column;gap:.375rem;padding:.5rem;display:flex}.source-row[data-v-1ceb461a]{border:1px solid var(--p-content-border-color);border-radius:var(--p-border-radius);background:var(--p-content-hover-background);align-items:center;gap:.75rem;padding:.5rem .625rem;display:flex}.source-row__icon[data-v-1ceb461a]{color:var(--p-text-muted-color);flex-shrink:0}.source-row__info[data-v-1ceb461a]{flex-direction:column;flex:1;gap:.125rem;min-width:0;display:flex}.source-row__type[data-v-1ceb461a]{text-transform:uppercase;color:var(--p-primary-color);letter-spacing:.04em;font-size:.7rem;font-weight:700}.source-row__label[data-v-1ceb461a]{color:var(--p-text-color);white-space:nowrap;text-overflow:ellipsis;font-size:.8125rem;overflow:hidden}.source-row__actions[data-v-1ceb461a]{flex-shrink:0;gap:.25rem;display:flex}.config-log-sources__empty[data-v-1ceb461a]{text-align:center;color:var(--p-text-muted-color);border:1px dashed var(--p-content-border-color);border-radius:var(--p-border-radius);padding:2rem;font-size:.875rem}.config-log-sources__empty-icon[data-v-1ceb461a]{opacity:.4;margin-bottom:.5rem;font-size:2rem;display:block}.config-log-sources__empty p[data-v-1ceb461a]{margin:0 0 .25rem}.config-log-sources__footer[data-v-1ceb461a]{justify-content:flex-end;padding-top:.25rem;display:flex}.dialog-form[data-v-1ceb461a]{flex-direction:column;gap:.875rem;padding-top:.25rem;display:flex}.dialog-form__row[data-v-1ceb461a]{gap:.75rem;display:flex}.dialog-form__row .dialog-form__field[data-v-1ceb461a]{flex:1}.dialog-form__field--port[data-v-1ceb461a]{flex:0 0 100px!important}.dialog-form__field--grow[data-v-1ceb461a]{flex:2!important}.dialog-form__field[data-v-1ceb461a]{flex-direction:column;gap:.3rem;display:flex}.dialog-form__field--row[data-v-1ceb461a]{flex-direction:row;justify-content:space-between;align-items:center}.dialog-form__label[data-v-1ceb461a]{color:var(--p-text-muted-color);font-size:.8rem;font-weight:600}.dialog-form__input[data-v-1ceb461a]{width:100%}.dialog-form__required[data-v-1ceb461a]{color:var(--p-red-500,#ef4444)}.dialog-form__hint[data-v-1ceb461a]{color:var(--p-text-muted-color);font-size:.75rem;font-weight:400}.dialog-form__hint-block[data-v-1ceb461a]{color:var(--p-text-muted-color);border-radius:var(--p-border-radius);background:var(--p-content-hover-background);padding:.5rem;font-size:.8rem;display:block}.config-traefik[data-v-a71f945b]{flex-direction:column;gap:.75rem;padding:1rem 0;display:flex}.traefik-entry[data-v-a71f945b]{align-items:center;gap:.5rem;min-width:0;display:flex}.traefik-entry__fields[data-v-a71f945b]{flex:1;align-items:center;gap:.5rem;min-width:0;display:flex}.traefik-entry__url[data-v-a71f945b]{flex:1;min-width:0}.traefik-entry__port[data-v-a71f945b]{flex:0 0 100px}.config-view[data-v-51a781dd]{flex-direction:column;height:100%;padding:1rem;display:flex;overflow-y:auto}.config-view__header[data-v-51a781dd]{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.config-view__title[data-v-51a781dd]{color:var(--p-text-color);margin:0;font-size:1.125rem;font-weight:600}.config-view__tabs[data-v-51a781dd]{flex:1}.tab-icon[data-v-51a781dd]{margin-right:.4rem;font-size:.85rem}.service-detail[data-v-e3e9fe7f]{height:100%}.service-detail__not-found[data-v-e3e9fe7f]{height:100%;color:var(--p-text-muted-color);justify-content:center;align-items:center;display:flex}