@runeya/runeya 2.0.74 → 2.0.75

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 (204) hide show
  1. package/agent/index.js.map +1 -1
  2. package/agent-manager-DM6C7BTF.js +7 -0
  3. package/{chunk-JRXAQNAC.js → chunk-E2SU5RSO.js} +10 -2
  4. package/{chunk-JRXAQNAC.js.map → chunk-E2SU5RSO.js.map} +1 -1
  5. package/index.js +1 -1
  6. package/package.json +1 -1
  7. package/{src-YG67XURV.js → src-MEMRUBM6.js} +6 -6
  8. package/src-MEMRUBM6.js.map +1 -0
  9. package/web/assets/{AgentScalarChatInterface.vue-CHi2dFEc.js → AgentScalarChatInterface.vue-CbsV-wvF.js} +1 -1
  10. package/web/assets/{AgentTerminalPage-BvdfOTep.js → AgentTerminalPage-CFX_cNje.js} +1 -1
  11. package/web/assets/AiChatPage-aNp-79bj.js +1 -0
  12. package/web/assets/AppLayout-C8SJH7E2.js +1 -0
  13. package/web/assets/{AppLayout-Cvn5Nj7U.css → AppLayout-Dvr7plrF.css} +1 -1
  14. package/web/assets/{AuditPage-EqCcRjr9.js → AuditPage-mPkN9IPs.js} +1 -1
  15. package/web/assets/CloudAccountPage--8gMHEov.js +1 -0
  16. package/web/assets/{CloudAccountPage-BUjzLwjW.js → CloudAccountPage-DwfKS8Ui.js} +1 -1
  17. package/web/assets/{CloudMessagingPage-BrZRNxlZ.js → CloudMessagingPage-BZda9W4V.js} +1 -1
  18. package/web/assets/{DashboardPage-B6MhaCCj.js → DashboardPage-BYoHvCSW.js} +1 -1
  19. package/web/assets/{DirectoryPickerDialog-3m0wiBWG.js → DirectoryPickerDialog-GjBksDRF.js} +1 -1
  20. package/web/assets/{EditorIcon-DVd7Gn4R.js → EditorIcon-BGndPLGm.js} +1 -1
  21. package/web/assets/{EnvironmentForm-CbYQ53vB.js → EnvironmentForm-5X5MccdS.js} +1 -1
  22. package/web/assets/{EnvironmentFormPage-mnSwPbUr.js → EnvironmentFormPage-pWcZotB8.js} +1 -1
  23. package/web/assets/{EnvironmentListPage-kFhmundZ.js → EnvironmentListPage-D1u5GOUq.js} +1 -1
  24. package/web/assets/{KanbanBoardPage-cgbSqPnz.js → KanbanBoardPage-B61sIHjE.js} +3 -3
  25. package/web/assets/{KanbanListPage-D4xaJzdt.js → KanbanListPage-Dsg1wA9V.js} +1 -1
  26. package/web/assets/{LaunchProjectPage-Boxl4Dja.js → LaunchProjectPage-BzLfT9xo.js} +1 -1
  27. package/web/assets/{LaunchServicesPage-D-FjI4AR.js → LaunchServicesPage-DxRtzyc-.js} +1 -1
  28. package/web/assets/{LogViewer-Dy7SyJwf.js → LogViewer-DCTx3ncv.js} +1 -1
  29. package/web/assets/{OrgKeyPrompt-Ctjsqp3s.js → OrgKeyPrompt-DGVXqIwV.js} +1 -1
  30. package/web/assets/{ProcessControls-DMG-C-9V.js → ProcessControls-CKHLGdip.js} +1 -1
  31. package/web/assets/{ProcessDetailPage-CroZuFui.js → ProcessDetailPage-BTcbsw0H.js} +1 -1
  32. package/web/assets/{ProcessMetrics-QAK1AZsb.js → ProcessMetrics-B0mOAjpt.js} +1 -1
  33. package/web/assets/{ProjectDetailPage-CvHH1DfL.js → ProjectDetailPage-Do50Toy3.js} +1 -1
  34. package/web/assets/{ProjectListPage-DAXodWJP.js → ProjectListPage-FhR5Gkub.js} +1 -1
  35. package/web/assets/{RandomJobTestPage-DZ_xOlfL.js → RandomJobTestPage-CT1XUQ7l.js} +1 -1
  36. package/web/assets/{ScenarioEditorPage-CODJ_St4.js → ScenarioEditorPage-CAZ18fLj.js} +1 -1
  37. package/web/assets/{SendToChatDialog-DhVM2ESX.js → SendToChatDialog-3VcAeiLB.js} +1 -1
  38. package/web/assets/ServiceControlsBar-DMibK9Gk.js +1 -0
  39. package/web/assets/{ServiceDetailPage-Di9SzpJw.css → ServiceDetailPage-DVOQdgmZ.css} +1 -1
  40. package/web/assets/ServiceDetailPage-DzTdnnmK.js +2 -0
  41. package/web/assets/{ServiceFormPage-MDqY-U7o.js → ServiceFormPage-C3Av0wu_.js} +1 -1
  42. package/web/assets/SettingsPage-Cb4cXWBn.js +2063 -0
  43. package/web/assets/{SettingsPage-CKRCL18-.css → SettingsPage-CeFOjH68.css} +1 -1
  44. package/web/assets/{UnlockPage-Blh0YpJC.js → UnlockPage-Cj9f3u9P.js} +1 -1
  45. package/web/assets/{VariablesTable-BTAp4k6f.js → VariablesTable-_m1LCIc1.js} +1 -1
  46. package/web/assets/{VaultMigrationPage-B7TK6Yjh.js → VaultMigrationPage-4-aYgpPb.js} +1 -1
  47. package/web/assets/{VersionBadge-Buin8AuA.js → VersionBadge-D-5Wk-zP.js} +1 -1
  48. package/web/assets/WikiPage-Dr0BjWqx.js +1 -0
  49. package/web/assets/{WikiView-BgCUaLa6.js → WikiView-Zx8Prvim.js} +1 -1
  50. package/web/assets/{add-scalar-classes-CKwuR5ZQ.js → add-scalar-classes-Bj8wq_Hs.js} +3 -3
  51. package/web/assets/auth-errors-C98TqTeb.js +1 -0
  52. package/web/assets/{autocomplete-0aIbUwlr.js → autocomplete-CGdex9-e.js} +1 -1
  53. package/web/assets/{basic-shape-diamond.svg-BTTsBN8v.js → basic-shape-diamond.svg-qeeRnNFT.js} +1 -1
  54. package/web/assets/{basic-shape-hexagon.svg-CbALgV8W.js → basic-shape-hexagon.svg-CIlKhfGT.js} +1 -1
  55. package/web/assets/{basic-shape-primary-circle-ellipse-round.svg-CM2Rc-Vc.js → basic-shape-primary-circle-ellipse-round.svg-BqolxHsi.js} +1 -1
  56. package/web/assets/{basic-shape-primary-square-rectangle.svg-CQ1KoMjn.js → basic-shape-primary-square-rectangle.svg-CpdZYdXX.js} +1 -1
  57. package/web/assets/{basic-shape-shield.svg-1lqFtlO8.js → basic-shape-shield.svg-Dxhs7gEl.js} +1 -1
  58. package/web/assets/{browser-W4YisEmh.js → browser-DN1U-HwX.js} +1 -1
  59. package/web/assets/{browser-BhYmZa45.js → browser-I2oYlD2i.js} +1 -1
  60. package/web/assets/{card-CLPFpENW.js → card-DtzNVDSZ.js} +1 -1
  61. package/web/assets/{checkbox-xXts-zyO.js → checkbox-GeePBqgX.js} +1 -1
  62. package/web/assets/{chip-BDaJibPj.js → chip-BHIwNcot.js} +1 -1
  63. package/web/assets/{client-B0jAuhqn.js → client-BDHmFNrH.js} +1 -1
  64. package/web/assets/{cloud-chat.store-B4mu3u7F.js → cloud-chat.store-B20ZLeeR.js} +1 -1
  65. package/web/assets/{cloud-session-CPlXmpSe.js → cloud-session-BjfhcCqc.js} +1 -1
  66. package/web/assets/{column-grBnjbWs.js → column-DXHLG_CF.js} +1 -1
  67. package/web/assets/{computer-device-desktop-monitor.svg-BixhDvwl.js → computer-device-desktop-monitor.svg-cgtj7qaG.js} +1 -1
  68. package/web/assets/{computer-device-desktop.svg-ZmA0L2qL.js → computer-device-desktop.svg-CtASuIzj.js} +1 -1
  69. package/web/assets/{computer-device-laptop.svg-BbdJBfg2.js → computer-device-laptop.svg-Bgrj-X1s.js} +1 -1
  70. package/web/assets/{computer-device-mobile-phone-android-samsung-back.svg-BzFWE61G.js → computer-device-mobile-phone-android-samsung-back.svg-BdGuG_w_.js} +1 -1
  71. package/web/assets/{computer-device-mobile-phone-android-samsung.svg-BDtiMsFX.js → computer-device-mobile-phone-android-samsung.svg-BRGfdLz4.js} +1 -1
  72. package/web/assets/{computer-device-mobile-phone-iphone-x-back.svg-DM6YheEO.js → computer-device-mobile-phone-iphone-x-back.svg-AqEKxnYo.js} +1 -1
  73. package/web/assets/{computer-device-mobile-phone-iphone-x.svg-Bp3jERFh.js → computer-device-mobile-phone-iphone-x.svg-DWFt-koa.js} +1 -1
  74. package/web/assets/{computer-device-mobile-tablet-touch.svg-CFlGkb9z.js → computer-device-mobile-tablet-touch.svg-DJ52OpYh.js} +1 -1
  75. package/web/assets/{computer-device-mobile-tablet.svg-BZBxeC6-.js → computer-device-mobile-tablet.svg-Ce_rWOZi.js} +1 -1
  76. package/web/assets/{computer-device-network-ethernet-cat6.svg-Cx3VdpRS.js → computer-device-network-ethernet-cat6.svg-DB9SlCtA.js} +1 -1
  77. package/web/assets/{computer-device-network-lan-www.svg-kpYR7ArK.js → computer-device-network-lan-www.svg-lHja183-.js} +1 -1
  78. package/web/assets/{computer-device-network-wifi-connection.svg-CWV3wPXN.js → computer-device-network-wifi-connection.svg-B1zLcvJN.js} +1 -1
  79. package/web/assets/{computer-device-network-wifi-router.svg-CzE7DHvd.js → computer-device-network-wifi-router.svg-Drrwd9xP.js} +1 -1
  80. package/web/assets/{cssMode-COP0Vc--.js → cssMode-D9jO-uTl.js} +1 -1
  81. package/web/assets/{divider-BgzI-Lls.js → divider-B0vBDWbW.js} +1 -1
  82. package/web/assets/{docx-preview-D9Nq99G-.js → docx-preview-BTpCoAAq.js} +1 -1
  83. package/web/assets/{ecology-science-erlenmeyer-flask.svg-Dvg9Ooy-.js → ecology-science-erlenmeyer-flask.svg--ysD_96O.js} +1 -1
  84. package/web/assets/{fieldset-DkMAzSHT.js → fieldset-BFb-WHon.js} +1 -1
  85. package/web/assets/{freemarker2-BF912KBd.js → freemarker2-DnkPMk4B.js} +1 -1
  86. package/web/assets/{handlebars-CDz6xiAj.js → handlebars-Dsj_qiK6.js} +1 -1
  87. package/web/assets/{html-DdlTee49.js → html-t_OlpWku.js} +1 -1
  88. package/web/assets/{htmlMode-BKPtJJGG.js → htmlMode-DRcQv-pv.js} +1 -1
  89. package/web/assets/{image-flash-lightning.svg-_KHhUck_.js → image-flash-lightning.svg-6f9kbrTL.js} +1 -1
  90. package/web/assets/{image-picture-flower.svg-xYdaJTim.js → image-picture-flower.svg-i7zms3Ho.js} +1 -1
  91. package/web/assets/{index-K7kdEsBo.js → index-GxI3bOA0.js} +73 -73
  92. package/web/assets/{interface-alert-exclamation-diamond.svg-DfMcMOwb.js → interface-alert-exclamation-diamond.svg-DqUMmCtJ.js} +1 -1
  93. package/web/assets/{interface-alert-exclamation-triangle-warning.svg-HFqVNBE9.js → interface-alert-exclamation-triangle-warning.svg-DzDl1xOr.js} +1 -1
  94. package/web/assets/{interface-alert-information-circle.svg-CUOqF7qS.js → interface-alert-information-circle.svg-DmCgkGPM.js} +1 -1
  95. package/web/assets/{interface-award-crown.svg-6s7F0fMR.js → interface-award-crown.svg-C9Fbg_RB.js} +1 -1
  96. package/web/assets/{interface-bookmark.svg-CFJIMfN-.js → interface-bookmark-tag.svg-3gViLsvg.js} +1 -1
  97. package/web/assets/{interface-bookmark-tag.svg-BCyK266t.js → interface-bookmark.svg-MqIoLfKE.js} +1 -1
  98. package/web/assets/{interface-calendar-date-one.svg-DZDWCn7W.js → interface-calendar-date-one.svg-B9sbfbL9.js} +1 -1
  99. package/web/assets/{interface-content-book-open-pages.svg-DV_U01L-.js → interface-content-book-open-pages.svg-1vSNOl7u.js} +1 -1
  100. package/web/assets/{interface-content-book-page.svg-DITAHjsW.js → interface-content-book-page.svg-DIEM6xdS.js} +1 -1
  101. package/web/assets/{interface-content-file.svg-CeQU8wpF.js → interface-content-file.svg-7VSdTCse.js} +1 -1
  102. package/web/assets/{interface-content-folder.svg-CUNjtwrk.js → interface-content-folder.svg-9g1Oeyk0.js} +1 -1
  103. package/web/assets/interface-content-folder.svg-CAHYAOYi.js +1 -0
  104. package/web/assets/{interface-copy-clipboard.svg-Cpw5aWsC.js → interface-copy-clipboard.svg-aMsLLdqD.js} +1 -1
  105. package/web/assets/{interface-edit-attachment.svg-CfC-IGjI.js → interface-edit-attachment.svg-CVDpgAHo.js} +1 -1
  106. package/web/assets/{interface-edit-binocular.svg-CjYGcQSJ.js → interface-edit-binocular.svg-DCXRjTEQ.js} +1 -1
  107. package/web/assets/{interface-edit-magic-wand.svg-Wdc1CXnn.js → interface-edit-magic-wand.svg-CDrPrWdl.js} +1 -1
  108. package/web/assets/{interface-edit-tool-paint-roller.svg-BfODeBzt.js → interface-edit-tool-paint-roller.svg-UvpUIvX7.js} +1 -1
  109. package/web/assets/{interface-edit-tool-pencil.svg-D4KkDVej.js → interface-edit-tool-pencil.svg-vPXMlfGL.js} +1 -1
  110. package/web/assets/{interface-favorite-award.svg-rFwxYUIH.js → interface-favorite-award.svg-CZOrIvmM.js} +1 -1
  111. package/web/assets/{interface-favorite-flag.svg-B3aO74D4.js → interface-favorite-flag.svg-CP5RiVtW.js} +1 -1
  112. package/web/assets/{interface-favorite-heart.svg-DnLWhJhp.js → interface-favorite-heart.svg-B9yhOFXg.js} +1 -1
  113. package/web/assets/{interface-favorite-star.svg-B1bTAfnw.js → interface-favorite-star.svg-B5Iv-JuP.js} +1 -1
  114. package/web/assets/{interface-favorite-stars-sparkles.svg-Ze10JKoz.js → interface-favorite-stars-sparkles.svg-Cipb48vc.js} +1 -1
  115. package/web/assets/{interface-hierarchy-flowchart.svg-DvhnI7vM.js → interface-hierarchy-flowchart.svg-BCEm8EoC.js} +1 -1
  116. package/web/assets/{interface-home-house.svg-TpFO9U15.js → interface-home-house.svg-Bh5-1B_X.js} +1 -1
  117. package/web/assets/{interface-hyperlink.svg-B6PjuMyj.js → interface-hyperlink.svg-DmOAt5ZG.js} +1 -1
  118. package/web/assets/{interface-lighting-brightness.svg-CFNb3F8V.js → interface-lighting-brightness.svg-DhHJhRaa.js} +1 -1
  119. package/web/assets/{interface-lock-closed.svg-CRzdSCj5.js → interface-lock-closed.svg-CDyidwZF.js} +1 -1
  120. package/web/assets/{interface-lock-open-unlock.svg-o1dtCc6U.js → interface-lock-open-unlock.svg-Y-4_5Lj-.js} +1 -1
  121. package/web/assets/{interface-login-key.svg-BCRY7fi7.js → interface-login-key.svg-C8M65861.js} +1 -1
  122. package/web/assets/{interface-search.svg-CSd_UAHp.js → interface-search.svg-gkEckiep.js} +1 -1
  123. package/web/assets/{interface-setting-cog.svg-BiAFMqpv.js → interface-setting-cog.svg-B42Ru0QR.js} +1 -1
  124. package/web/assets/{interface-share-megaphone-bullhorn.svg-Bg6Nrrba.js → interface-share-megaphone-bullhorn.svg-BXgemPpH.js} +1 -1
  125. package/web/assets/{interface-share-rocket.svg-BueJTjIT.js → interface-share-rocket.svg-BpCNXSJv.js} +1 -1
  126. package/web/assets/{interface-share-satellite.svg-BPXIZysE.js → interface-share-satellite.svg-UqTKwPgB.js} +1 -1
  127. package/web/assets/{interface-share-space-ship.svg-Tpmu2ZQs.js → interface-share-space-ship.svg-LjpxJCju.js} +1 -1
  128. package/web/assets/{interface-share.svg-DZ7feWlJ.js → interface-share.svg-aTfbQymz.js} +1 -1
  129. package/web/assets/{interface-signal-square.svg-CHVwe1pi.js → interface-signal-square.svg-BV84IA7I.js} +1 -1
  130. package/web/assets/{interface-time-clock-circle.svg-DtUcGfFi.js → interface-time-clock-circle.svg-B9p8ScHG.js} +1 -1
  131. package/web/assets/{interface-time-hour-glass.svg-BNWEgOHt.js → interface-time-hour-glass.svg-4jjplFkz.js} +1 -1
  132. package/web/assets/{interface-users-multiple.svg-C1Pry5nR.js → interface-users-multiple.svg-D4nN3V4C.js} +1 -1
  133. package/web/assets/{interface-weather-moon.svg-DQx-1A-h.js → interface-weather-moon.svg-DyfDXGyQ.js} +1 -1
  134. package/web/assets/{javascript-CsXL5DT8.js → javascript-DxiQ5ZFe.js} +1 -1
  135. package/web/assets/{jsonMode-DvB3zo30.js → jsonMode-R5AgiRt8.js} +1 -1
  136. package/web/assets/{liquid-DI2z9alR.js → liquid-BPHysTNM.js} +1 -1
  137. package/web/assets/{lspLanguageFeatures-CMc4rLCM.js → lspLanguageFeatures-DVsCw49O.js} +1 -1
  138. package/web/assets/{mail-chat-bubble-square.svg-DN92EruI.js → mail-chat-bubble-square.svg-Bgj_m98i.js} +1 -1
  139. package/web/assets/{mail-send-email-paper-airplane.svg-DOaMqGHu.js → mail-send-email-paper-airplane.svg-Cmgs5A9c.js} +1 -1
  140. package/web/assets/{mail-send-envelope.svg-Co6AFlQX.js → mail-send-envelope.svg-DXtZA2de.js} +1 -1
  141. package/web/assets/{mdx-CGWf38OI.js → mdx-BmXvPH9O.js} +1 -1
  142. package/web/assets/{message-VrL-0XTF.js → message-DUmeTDJC.js} +1 -1
  143. package/web/assets/{minus-BjZ21L72.js → minus-_526hTAz.js} +1 -1
  144. package/web/assets/{modal-C6s7wXuj.js → modal-DWnz3LAY.js} +1 -1
  145. package/web/assets/modal-SaIxK3oE.js +1 -0
  146. package/web/assets/{money-cashier-receipt.svg-8Qup-ZSr.js → money-cashier-receipt.svg-BKLBvJ6k.js} +1 -1
  147. package/web/assets/{money-currency-dollar-pay.svg-CIlSYSGr.js → money-currency-dollar-pay.svg-Dy__wPDu.js} +1 -1
  148. package/web/assets/{money-graph-arrow-increase.svg-CYJyq294.js → money-graph-arrow-increase.svg-CY6efGa2.js} +1 -1
  149. package/web/assets/{money-graph-bar-chart-increase.svg-BV2pC3vV.js → money-graph-bar-chart-increase.svg-DeWwVE-h.js} +1 -1
  150. package/web/assets/{multiselect-CTA4uR0f.js → multiselect-sCEC4UBn.js} +1 -1
  151. package/web/assets/{nature-ecology-leaf.svg-Dqy1XkxJ.js → nature-ecology-leaf.svg-CiA8xWzT.js} +1 -1
  152. package/web/assets/{password-IByxJqSm.js → password-BjWenHiO.js} +1 -1
  153. package/web/assets/{phone-telephone.svg-QvU-I7Ej.js → phone-telephone.svg-DFkp7qtJ.js} +1 -1
  154. package/web/assets/{plus-TqzBK0F-.js → plus-CM2XaJYz.js} +1 -1
  155. package/web/assets/process.store-BdrVU3j7.js +1 -0
  156. package/web/assets/{programming-bug.svg-DEh0hIKm.js → programming-bug.svg-iTd4z5Bn.js} +1 -1
  157. package/web/assets/{programming-cloud.svg-B8v1xLPM.js → programming-cloud.svg-BhZ7wR70.js} +1 -1
  158. package/web/assets/{programming-computer-database-server.svg-B38-gJMV.js → programming-computer-database-server.svg-CNFgEADa.js} +1 -1
  159. package/web/assets/{programming-computer-database.svg-CSc_uTaq.js → programming-computer-database.svg-BLUoB0S3.js} +1 -1
  160. package/web/assets/{programming-module-four-layout.svg-Ct8e9N9z.js → programming-module-four-layout.svg---ShQt1c.js} +1 -1
  161. package/web/assets/{programming-module-three.svg-Cramtamu.js → programming-module-three.svg-Q915QePI.js} +1 -1
  162. package/web/assets/{programming-module.svg-_oZsSiMg.js → programming-module.svg-DGlB0gXU.js} +1 -1
  163. package/web/assets/{programming-script-code.svg-B57Dfv3U.js → programming-script-code.svg-BXqoqM0a.js} +1 -1
  164. package/web/assets/{python-CIgmiyeD.js → python-Bkcdd-GB.js} +1 -1
  165. package/web/assets/{razor-CwnddCBj.js → razor-Dgss4zhv.js} +1 -1
  166. package/web/assets/router-CkyZcpB5.js +1 -0
  167. package/web/assets/settings-scope-UnTi3EI6.js +1 -0
  168. package/web/assets/{settings.store-CPMOmi7H.js → settings.store-Bd6azayI.js} +1 -1
  169. package/web/assets/{shopping-cart.svg-9Veqyy-9.js → shopping-cart.svg-DFzDn0s3.js} +1 -1
  170. package/web/assets/{shopping-gift-present.svg-Dlo3w3e8.js → shopping-gift-present.svg-CzoIs_fz.js} +1 -1
  171. package/web/assets/{shopping-shipping-box-parcel-package.svg-BM0DDqiS.js → shopping-shipping-box-parcel-package.svg-K83gZueW.js} +1 -1
  172. package/web/assets/{src-C-LFb604.js → src-Bn8iaJpP.js} +1 -1
  173. package/web/assets/{src-9tSFXHt7.js → src-CrlKkUl0.js} +1 -1
  174. package/web/assets/{tabpanel-BlB9Tamb.js → tabpanel-B8p6e6cv.js} +1 -1
  175. package/web/assets/{tag-new-circle.svg-A1eYtb-i.js → tag-new-circle.svg-BgOrOZ_K.js} +1 -1
  176. package/web/assets/{toggleswitch-BNzkwtak.js → toggleswitch-BKr-TR6_.js} +1 -1
  177. package/web/assets/{travel-map-earth-globe.svg-DrGjwD_E.js → travel-map-earth-globe.svg-DZQQPdM1.js} +1 -1
  178. package/web/assets/trpc-CPHyoQZL.js +1 -0
  179. package/web/assets/{tsMode-D4XC6YIE.js → tsMode-BO9AVz77.js} +1 -1
  180. package/web/assets/{typescript-Dk_am5Bh.js → typescript-BVxNZ4YH.js} +1 -1
  181. package/web/assets/useAiChatDrawer-tj6s1XKR.js +1 -0
  182. package/web/assets/{useCloudOrg-Dg-9Fo9B.js → useCloudOrg-CXnReqbv.js} +3 -3
  183. package/web/assets/{useProjectCatalog-uQxqbSkg.js → useProjectCatalog-Cw3YywvF.js} +1 -1
  184. package/web/assets/{xml-CzMMYFkm.js → xml-Bv9vIo84.js} +1 -1
  185. package/web/assets/{yaml-U-6eR_c5.js → yaml-Brrhr_WI.js} +1 -1
  186. package/web/index.html +1 -1
  187. package/agent-manager-L35E7FWI.js +0 -7
  188. package/src-YG67XURV.js.map +0 -1
  189. package/web/assets/AiChatPage-DJ03I6Lb.js +0 -1
  190. package/web/assets/AppLayout-DLhk2bQj.js +0 -1
  191. package/web/assets/CloudAccountPage-CNxUzrAO.js +0 -1
  192. package/web/assets/ServiceControlsBar-DdvYd2xI.js +0 -1
  193. package/web/assets/ServiceDetailPage-BJRGB4fq.js +0 -2
  194. package/web/assets/SettingsPage-CeUT68wE.js +0 -2063
  195. package/web/assets/WikiPage-CJ-rNfud.js +0 -1
  196. package/web/assets/auth-errors-BSQODFsD.js +0 -1
  197. package/web/assets/interface-content-folder.svg-BCjROcNE.js +0 -1
  198. package/web/assets/modal-8HVVBuyS.js +0 -1
  199. package/web/assets/process.store-BvO7PchE.js +0 -1
  200. package/web/assets/router-Bh1D7DgU.js +0 -1
  201. package/web/assets/settings-scope-Doez2KD1.js +0 -1
  202. package/web/assets/trpc-sPb5TcJm.js +0 -1
  203. package/web/assets/useAiChatDrawer-CR-1uKnl.js +0 -1
  204. /package/{agent-manager-L35E7FWI.js.map → agent-manager-DM6C7BTF.js.map} +0 -0
@@ -1 +1 @@
1
- .traefik-settings[data-v-d0288b5d]{box-sizing:border-box;flex-direction:column;gap:1rem;width:100%;min-width:0;display:flex}.traefik-settings[data-v-d0288b5d] input,.traefik-settings[data-v-d0288b5d] .p-inputtext,.traefik-settings[data-v-d0288b5d] .p-autocomplete,.traefik-settings[data-v-d0288b5d] .p-password{box-sizing:border-box;width:100%;max-width:100%}.traefik-row[data-v-d0288b5d]{justify-content:space-between;align-items:center;display:flex}.traefik-field[data-v-d0288b5d]{flex-direction:column;gap:.4rem;display:flex}.traefik-field label[data-v-d0288b5d]{font-size:.875rem;font-weight:500}.traefik-field small[data-v-d0288b5d]{color:var(--p-text-muted-color);font-size:.75rem}.credential-row[data-v-d0288b5d]{align-items:center;gap:.5rem;min-width:0;display:flex}.credential-key[data-v-d0288b5d]{flex:0 0 160px;min-width:0}.credential-value[data-v-d0288b5d]{flex:1;min-width:0}.credential-value[data-v-d0288b5d] .p-password,.credential-value[data-v-d0288b5d] .p-password input{width:100%}.traefik-ports[data-v-d0288b5d]{gap:1rem;display:flex}.traefik-field--small[data-v-d0288b5d]{flex:1}.hint-ok[data-v-d0288b5d]{color:var(--p-green-500);font-size:.8rem;font-weight:400}.traefik-actions[data-v-d0288b5d]{align-self:flex-end;gap:.5rem;display:flex}.traefik-renewal-notice[data-v-d0288b5d]{border-radius:var(--p-border-radius);background:color-mix(in srgb, var(--p-blue-500) 10%, transparent);border:1px solid color-mix(in srgb, var(--p-blue-500) 30%, transparent);color:var(--p-blue-300);align-items:flex-start;gap:.6rem;padding:.75rem;font-size:.875rem;display:flex}.traefik-validation[data-v-d0288b5d]{border:1px solid var(--p-content-border-color);border-radius:var(--p-border-radius);flex-direction:column;gap:.4rem;padding:.75rem;display:flex}.validation-item[data-v-d0288b5d]{align-items:center;gap:.5rem;font-size:.875rem;display:flex}.validation-item--ok[data-v-d0288b5d]{color:var(--p-green-500)}.validation-item--fail[data-v-d0288b5d]{color:var(--p-red-500)}.traefik-logs[data-v-d0288b5d],.traefik-config-files[data-v-d0288b5d]{border:1px solid var(--p-content-border-color);border-radius:var(--p-border-radius);overflow:hidden}.config-tabs[data-v-d0288b5d]{gap:.25rem;display:flex}.config-tab[data-v-d0288b5d]{border-radius:var(--p-border-radius);cursor:pointer;color:var(--p-text-muted-color);background:0 0;border:none;padding:.2rem .6rem;font-size:.8rem}.config-tab--active[data-v-d0288b5d]{background:var(--p-primary-color);color:var(--p-primary-contrast-color)}.traefik-logs-header[data-v-d0288b5d]{background:var(--p-content-hover-background);justify-content:space-between;align-items:center;padding:.4rem .75rem;font-size:.8rem;font-weight:600;display:flex}.logs-live[data-v-d0288b5d]{color:var(--p-green-400);font-size:.7rem;animation:1.2s ease-in-out infinite blink-d0288b5d}@keyframes blink-d0288b5d{0%,to{opacity:1}50%{opacity:.3}}.traefik-logs-content[data-v-d0288b5d]{white-space:pre-wrap;word-break:break-all;background:var(--p-surface-900,#1a1a1a);max-height:300px;color:var(--p-surface-100,#f0f0f0);margin:0;padding:.75rem;font-family:monospace;font-size:.75rem;overflow-y:auto}.traefik-dialog-layout[data-v-9ce779b4]{grid-template-columns:1fr 1fr;gap:1.5rem;min-height:0;display:grid}.traefik-dialog-left[data-v-9ce779b4]{min-width:0;max-height:80vh;padding-right:.5rem;overflow-y:auto}.traefik-dialog-right[data-v-9ce779b4]{flex-direction:column;gap:.5rem;min-width:0;max-height:80vh;display:flex}.fs-header[data-v-9ce779b4]{color:var(--p-text-muted-color);border-bottom:1px solid var(--p-content-border-color);justify-content:space-between;align-items:center;padding:.25rem 0;font-size:.75rem;font-weight:600;display:flex}.fs-tree[data-v-9ce779b4]{flex-direction:column;gap:1px;display:flex}.fs-entry[data-v-9ce779b4]{border-radius:var(--p-border-radius);cursor:pointer;text-align:left;color:var(--p-text-color);background:0 0;border:none;align-items:center;gap:.4rem;width:100%;padding:.3rem .5rem;font-size:.8rem;display:flex}.fs-entry[data-v-9ce779b4]:hover{background:var(--p-content-hover-background)}.fs-entry--active[data-v-9ce779b4]{background:color-mix(in srgb, var(--p-primary-color) 15%, transparent);color:var(--p-primary-color)}.fs-icon[data-v-9ce779b4]{opacity:.6;flex-shrink:0;font-size:.75rem}.fs-dir[data-v-9ce779b4]{opacity:.5;font-size:.7rem}.fs-name[data-v-9ce779b4]{font-weight:500}.fs-empty[data-v-9ce779b4]{color:var(--p-text-muted-color);padding:.5rem;font-size:.8rem;font-style:italic}.fs-content[data-v-9ce779b4]{white-space:pre-wrap;word-break:break-all;background:var(--p-surface-900,#1a1a1a);color:var(--p-surface-100,#f0f0f0);border-radius:var(--p-border-radius);border:1px solid var(--p-content-border-color);flex:1;margin:0;padding:.75rem;font-family:monospace;font-size:.72rem;overflow-y:auto}.agent-page[data-v-09072d16]{max-width:1200px;margin:0 auto;padding:1.5rem}.page-header[data-v-09072d16]{justify-content:space-between;align-items:center;margin-bottom:1.5rem;display:flex}.page-header h1[data-v-09072d16]{margin:0;font-size:1.75rem;font-weight:700}.loading-container[data-v-09072d16],.error-container[data-v-09072d16],.empty-container[data-v-09072d16]{color:var(--p-text-muted-color);flex-direction:column;align-items:center;gap:.75rem;padding:3rem 0;display:flex}.agent-name[data-v-09072d16]{align-items:center;gap:.5rem;font-weight:500;display:flex}.agent-url[data-v-09072d16]{background:var(--p-content-hover-background);border-radius:4px;padding:.15rem .4rem;font-family:Fira Code,Cascadia Code,monospace;font-size:.8rem}.runner-tags[data-v-09072d16]{flex-wrap:wrap;gap:.3rem;display:flex}.action-grid[data-v-09072d16]{grid-template-columns:repeat(2,auto);gap:0;width:fit-content;display:grid}@media (max-width:768px){[data-v-09072d16] .hide-on-mobile{display:none!important}[data-v-09072d16] .p-datatable-column-header-content{white-space:nowrap}.agent-url[data-v-09072d16]{word-break:break-all;white-space:normal}}.text-muted[data-v-09072d16]{color:var(--p-text-muted-color)}.form-group[data-v-09072d16]{margin-bottom:1rem}.form-group label[data-v-09072d16]{margin-bottom:.4rem;font-size:.875rem;font-weight:500;display:block}.form-hint[data-v-09072d16]{color:var(--p-text-muted-color);font-size:.78rem}.test-connection[data-v-09072d16]{align-items:center;gap:.75rem;display:flex}.w-full[data-v-09072d16]{width:100%}.passthrough-description[data-v-09072d16]{color:var(--p-text-muted-color);margin:0 0 1rem;font-size:.85rem;line-height:1.4}.passthrough-list[data-v-09072d16]{flex-direction:column;gap:.25rem;margin-bottom:.75rem;display:flex}.passthrough-item[data-v-09072d16]{background:var(--p-content-hover-background);border-radius:6px;justify-content:space-between;align-items:center;padding:.3rem .5rem;display:flex}.passthrough-item-info[data-v-09072d16]{align-items:center;gap:.4rem;min-width:0;display:flex;overflow:hidden}.passthrough-item code[data-v-09072d16]{flex-shrink:0;font-family:Fira Code,Cascadia Code,monospace;font-size:.85rem}.passthrough-value[data-v-09072d16]{color:var(--p-text-muted-color);text-overflow:ellipsis;white-space:nowrap;font-family:Fira Code,Cascadia Code,monospace;font-size:.8rem;overflow:hidden}.passthrough-undefined[data-v-09072d16]{color:var(--p-orange-500);font-size:.78rem;font-style:italic}.passthrough-unsaved[data-v-09072d16]{color:var(--p-text-muted-color);font-size:.78rem;font-style:italic}.passthrough-empty[data-v-09072d16]{margin-bottom:.75rem;font-size:.85rem}.passthrough-add[data-v-09072d16]{align-items:center;gap:.5rem;display:flex}.passthrough-add-input[data-v-09072d16]{flex:1}.passthrough-error[data-v-09072d16]{color:var(--p-red-500);margin-top:.25rem;font-size:.78rem;display:block}.api-keys-page[data-v-0d4e888e]{max-width:860px;padding:1.5rem}.api-keys-page__header[data-v-0d4e888e]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.api-keys-page__header h1[data-v-0d4e888e]{margin:0;font-size:1.5rem;font-weight:600}.api-keys-page__subtitle[data-v-0d4e888e]{color:var(--p-text-muted-color);flex:1;margin:0;font-size:.875rem}.api-keys-page__empty[data-v-0d4e888e]{color:var(--p-text-muted-color);padding:2rem 0;font-size:.9rem}.api-keys-card[data-v-0d4e888e]{max-width:680px}.api-keys-list[data-v-0d4e888e]{flex-direction:column;gap:.5rem;display:flex}.api-key-card[data-v-0d4e888e]{border:1px solid var(--p-content-border-color);border-radius:var(--p-border-radius);background:var(--p-content-background);padding:.5rem .75rem;position:relative}.api-key-card__body[data-v-0d4e888e]{min-width:0}.api-key-card__name[data-v-0d4e888e]{align-items:center;gap:.5rem;margin-bottom:.2rem;padding-right:5rem;font-weight:500;display:flex}.api-key-card__meta[data-v-0d4e888e]{color:var(--p-text-muted-color);margin-bottom:.4rem;font-size:.8rem}.api-key-card__url-row[data-v-0d4e888e]{align-items:center;gap:.4rem;display:flex}.api-key-card__url[data-v-0d4e888e]{min-width:0;color:var(--p-text-muted-color);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:.75rem;overflow:hidden}.api-key-card__actions[data-v-0d4e888e]{gap:.3rem;display:flex;position:absolute;top:.5rem;right:.5rem}.badge[data-v-0d4e888e]{text-transform:uppercase;border-radius:4px;padding:.1rem .4rem;font-size:.7rem;font-weight:600}.badge--info[data-v-0d4e888e]{background:var(--p-blue-100);color:var(--p-blue-700)}.api-key-form[data-v-0d4e888e]{background:var(--p-surface-card);border:1px solid var(--runeya-border);border-radius:10px;max-width:600px;padding:1.5rem}.api-key-form h2[data-v-0d4e888e]{margin:0 0 1.25rem;font-size:1.1rem}.form-field[data-v-0d4e888e]{margin-bottom:1.25rem}.form-field>label[data-v-0d4e888e]:first-child{margin-bottom:.5rem;font-size:.875rem;font-weight:600;display:block}.form-input[data-v-0d4e888e]{border:1px solid var(--runeya-border);background:var(--p-surface-ground);width:100%;color:var(--p-text-color);box-sizing:border-box;border-radius:6px;padding:.5rem .75rem;font-size:.9rem}.form-input[data-v-0d4e888e]:focus{border-color:var(--p-primary-color);outline:none}.form-select[data-v-0d4e888e]{border:1px solid var(--runeya-border);background:var(--p-surface-ground);width:100%;color:var(--p-text-muted-color);cursor:pointer;border-radius:6px;padding:.45rem .75rem;font-size:.875rem}.form-select--sm[data-v-0d4e888e]{width:auto;padding:.25rem .5rem;font-size:.8rem}.form-hint[data-v-0d4e888e]{color:var(--p-text-muted-color);margin-top:.4rem;font-size:.75rem}.radio-group[data-v-0d4e888e]{flex-direction:column;gap:.4rem;display:flex}.radio-label[data-v-0d4e888e]{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.5rem;font-size:.875rem;display:flex}.svc-list-container[data-v-0d4e888e]{border:1px solid var(--runeya-border);border-radius:8px;margin-bottom:.5rem;overflow:hidden}.svc-list-search[data-v-0d4e888e]{background:var(--p-surface-ground);border-bottom:1px solid var(--runeya-border);align-items:center;gap:.5rem;padding:.4rem .75rem;display:flex}.svc-list-search__icon[data-v-0d4e888e]{color:var(--p-text-muted-color);flex-shrink:0;font-size:.75rem}.svc-list-search__input[data-v-0d4e888e]{color:var(--p-text-color);background:0 0;border:none;outline:none;flex:1;font-size:.85rem}.svc-list-search__input[data-v-0d4e888e]::placeholder{color:var(--p-text-muted-color)}.svc-list-search__clear[data-v-0d4e888e]{cursor:pointer;color:var(--p-text-muted-color);background:0 0;border:none;align-items:center;padding:0;font-size:.75rem;display:flex}.svc-list-search__clear[data-v-0d4e888e]:hover{color:var(--p-text-color)}.svc-list-scroll[data-v-0d4e888e]{max-height:360px;overflow-y:auto}.svc-list-empty[data-v-0d4e888e]{margin:0;padding:.75rem}.svc-perm-row[data-v-0d4e888e]{border-bottom:1px solid var(--runeya-border);overflow:hidden}.svc-perm-row[data-v-0d4e888e]:last-child{border-bottom:none}.svc-perm-row__header[data-v-0d4e888e]{background:var(--p-surface-ground);border-bottom:1px solid var(--runeya-border);cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;padding:.4rem .75rem;display:flex}.svc-perm-row__header[data-v-0d4e888e]:hover{background:var(--runeya-sidebar-hover)}.svc-chevron[data-v-0d4e888e]{color:var(--p-text-muted-color);font-size:.7rem;transition:transform .15s}.svc-perm-summary[data-v-0d4e888e]{color:var(--p-text-muted-color);margin-left:.3rem;font-size:.75rem;font-weight:400}.svc-perm-row__name[data-v-0d4e888e]{align-items:center;gap:.4rem;font-size:.875rem;font-weight:600;display:flex}.svc-perm-row__actions[data-v-0d4e888e]{border-bottom:1px solid var(--runeya-border);flex-wrap:wrap;gap:.35rem;padding:.5rem .75rem;display:flex}.action-chip[data-v-0d4e888e]{border:1px solid var(--runeya-border);background:var(--p-surface-ground);color:var(--p-text-muted-color);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:20px;align-items:center;gap:.3rem;padding:.15rem .5rem;font-size:.78rem;transition:all .12s;display:inline-flex}.action-chip input[type=checkbox][data-v-0d4e888e]{display:none}.action-chip--on[data-v-0d4e888e]{background:var(--p-primary-color);color:var(--p-primary-contrast-color,#fff);border-color:var(--p-primary-color)}.action-chip--sub[data-v-0d4e888e]{opacity:.85;margin-left:.25rem;font-size:.72rem}.action-chip--sub.action-chip--on[data-v-0d4e888e]{background:var(--p-primary-400,var(--p-primary-color))}.svc-perm-row__envs[data-v-0d4e888e]{flex-direction:column;gap:.35rem;padding:.5rem .75rem;display:flex}.env-perm-row[data-v-0d4e888e]{flex-wrap:wrap;align-items:center;gap:.35rem;display:flex}.env-perm-row__name[data-v-0d4e888e]{color:var(--p-text-muted-color);align-items:center;gap:.3rem;min-width:8rem;font-size:.8rem;display:flex}.env-add-row[data-v-0d4e888e]{margin-top:.25rem}.svc-add-row[data-v-0d4e888e]{flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:.5rem;display:flex}.import-modal__body[data-v-0d4e888e]{flex-direction:column;gap:1rem;padding:.25rem 0;display:flex}.import-modal__desc[data-v-0d4e888e]{color:var(--p-text-muted-color);margin:0;font-size:.875rem}.import-section[data-v-0d4e888e]{flex-direction:column;gap:.4rem;display:flex}.import-section__label[data-v-0d4e888e]{color:var(--p-text-muted-color);text-transform:uppercase;letter-spacing:.04em;font-size:.8rem;font-weight:600}.form-actions[data-v-0d4e888e]{justify-content:space-between;align-items:center;gap:.75rem;margin-top:1.5rem;display:flex}.form-actions__right[data-v-0d4e888e]{gap:.75rem;display:flex}.btn--renew[data-v-0d4e888e]{color:var(--p-text-muted-color);font-size:.8rem}.btn--renew[data-v-0d4e888e]:hover:not(:disabled){color:var(--p-text-color)}.api-key-card__skill[data-v-0d4e888e]{margin-top:.6rem}.skill-toggle[data-v-0d4e888e]{color:var(--p-text-muted-color);gap:.35rem}.skill-toggle[data-v-0d4e888e]:hover{color:var(--p-text-color)}.skill-panel[data-v-0d4e888e]{border:1px solid var(--runeya-border);border-radius:6px;margin-top:.5rem;overflow:hidden}.skill-panel__tools[data-v-0d4e888e]{background:var(--p-surface-ground);border-bottom:1px solid var(--runeya-border);flex-wrap:wrap;gap:.35rem;padding:.5rem .75rem;display:flex}.skill-tool-btn[data-v-0d4e888e]{border:1px solid var(--runeya-border);color:var(--p-text-muted-color);cursor:pointer;background:0 0;border-radius:20px;padding:.2rem .6rem;font-size:.72rem;transition:all .12s}.skill-tool-btn[data-v-0d4e888e]:hover{background:var(--runeya-sidebar-hover);color:var(--p-text-color)}.skill-tool-btn--active[data-v-0d4e888e]{background:var(--p-primary-color);color:var(--p-primary-contrast-color,#fff);border-color:var(--p-primary-color)}.skill-panel__header[data-v-0d4e888e]{background:var(--p-surface-ground);border-bottom:1px solid var(--runeya-border);justify-content:space-between;align-items:center;padding:.4rem .75rem;display:flex}.skill-panel__btns[data-v-0d4e888e]{gap:.35rem;display:flex}.skill-panel__hint[data-v-0d4e888e]{color:var(--p-text-muted-color);font-size:.75rem}.skill-panel__code[data-v-0d4e888e]{white-space:pre-wrap;word-break:break-all;background:var(--p-surface-card);color:var(--p-text-color);max-height:260px;margin:0;padding:.75rem;font-size:.72rem;line-height:1.5;overflow-y:auto}.renew-modal__body[data-v-0d4e888e]{flex-direction:column;gap:.5rem;padding:.25rem 0;display:flex}.renew-modal__title[data-v-0d4e888e]{align-items:center;gap:.5rem;font-weight:600;display:flex}.renew-modal__title-icon[data-v-0d4e888e]{color:var(--p-orange-500,#f97316)}.renew-modal__body p[data-v-0d4e888e]{margin:0;font-size:.9rem;line-height:1.5}.btn[data-v-0d4e888e]{cursor:pointer;border:none;border-radius:6px;align-items:center;gap:.4rem;padding:.45rem .9rem;font-size:.875rem;font-weight:500;transition:all .15s;display:inline-flex}.btn[data-v-0d4e888e]:disabled{opacity:.5;cursor:not-allowed}.btn--primary[data-v-0d4e888e]{background:var(--p-primary-color);color:var(--p-primary-contrast-color,#fff)}.btn--primary[data-v-0d4e888e]:hover:not(:disabled){filter:brightness(1.1)}.btn--ghost[data-v-0d4e888e]{color:var(--p-text-color);border:1px solid var(--runeya-border);background:0 0}.btn--ghost[data-v-0d4e888e]:hover:not(:disabled){background:var(--runeya-sidebar-hover)}.btn--danger[data-v-0d4e888e]{color:var(--p-red-500,#ef4444);border:1px solid var(--runeya-border);background:0 0}.btn--danger[data-v-0d4e888e]:hover:not(:disabled){background:var(--p-red-50,#fef2f2)}.btn--sm[data-v-0d4e888e]{padding:.3rem .6rem;font-size:.8rem}.btn--xs[data-v-0d4e888e]{padding:.2rem .4rem;font-size:.75rem}.settings-card[data-v-b50a2928]{max-width:680px}.cloud-banner[data-v-b50a2928]{border:1px solid var(--p-primary-color);background:color-mix(in srgb, var(--p-primary-color) 8%, transparent);width:100%;max-width:680px;color:var(--p-text-color);cursor:pointer;text-align:left;font:inherit;border-radius:10px;align-items:center;gap:1rem;margin-bottom:1.25rem;padding:1rem 1.25rem;transition:background .15s,box-shadow .15s;display:flex}.cloud-banner[data-v-b50a2928]:hover{background:color-mix(in srgb, var(--p-primary-color) 14%, transparent);box-shadow:0 2px 10px color-mix(in srgb, var(--p-primary-color) 20%, transparent)}.cloud-banner__icon[data-v-b50a2928]{color:var(--p-primary-color);flex-shrink:0;font-size:1.75rem}.cloud-banner__text[data-v-b50a2928]{flex-direction:column;flex:1;gap:.15rem;min-width:0;display:flex}.cloud-banner__title[data-v-b50a2928]{font-size:1rem}.cloud-banner__desc[data-v-b50a2928]{color:var(--p-text-muted-color);font-size:.85rem}.cloud-banner__action[data-v-b50a2928]{color:var(--p-primary-color);white-space:nowrap;flex-shrink:0;align-items:center;gap:.4rem;font-weight:600;display:inline-flex}.setting-row[data-v-b50a2928]{border-bottom:1px solid var(--p-content-border-color);align-items:flex-start;gap:1rem;padding:.75rem 0;display:flex}.setting-row[data-v-b50a2928]:last-child{border-bottom:none}.setting-label[data-v-b50a2928]{width:140px;color:var(--p-text-muted-color);flex-shrink:0;padding-top:.25rem;font-size:.9rem;font-weight:600}.setting-value[data-v-b50a2928]{flex:1;align-items:center;gap:.5rem;display:flex}.path-value[data-v-b50a2928]{word-break:break-all;min-width:0;color:var(--p-text-color);flex:1;font-size:.85rem}.setting-input[data-v-b50a2928]{width:100%;max-width:400px}.setting-actions[data-v-b50a2928]{padding-top:1rem}.settings-card[data-v-409957ad]{max-width:680px}.notification-groups[data-v-409957ad]{flex-direction:column;gap:1rem;display:flex}.notification-group[data-v-409957ad]{border:1px solid var(--p-content-border-color);border-radius:var(--p-border-radius);background:color-mix(in srgb, var(--p-content-hover-background) 35%, transparent);padding:.9rem 1rem}.notification-group__header[data-v-409957ad]{justify-content:space-between;align-items:flex-start;gap:.75rem;margin-bottom:.35rem;display:flex}.notification-group__collapse-button[data-v-409957ad]{appearance:none;text-align:left;cursor:pointer;color:inherit;background:0 0;border:0;flex:1;margin:0;padding:0}.notification-group__title-wrap[data-v-409957ad]{align-items:center;gap:.45rem;display:flex}.notification-group__icon[data-v-409957ad]{color:var(--p-text-muted-color);font-size:.9rem}.notification-group__title[data-v-409957ad]{margin:0;font-size:.92rem;font-weight:700}.notification-group__chevron[data-v-409957ad]{color:var(--p-text-muted-color);margin-left:auto;font-size:.8rem}.notification-group__desc[data-v-409957ad]{color:var(--p-text-muted-color);margin:.2rem 0 0;font-size:.78rem}.notification-group__actions[data-v-409957ad]{flex-shrink:0}.notification-item[data-v-409957ad]{border-bottom:1px solid var(--p-content-border-color)}.notification-item[data-v-409957ad]:last-child,.notification-item .setting-row[data-v-409957ad]{border-bottom:none}.setting-row[data-v-409957ad]{border-bottom:1px solid var(--p-content-border-color);align-items:flex-start;gap:1rem;padding:.75rem 0;display:flex}.setting-row--toggle[data-v-409957ad]{align-items:center}.setting-label[data-v-409957ad]{color:var(--p-text-muted-color);font-size:.9rem;font-weight:600}.setting-label-group[data-v-409957ad]{flex:1;min-width:0}.setting-hint[data-v-409957ad]{color:var(--p-text-muted-color);margin-top:.2rem;font-size:.78rem;display:block}.notification-item__right[data-v-409957ad]{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.notification-item__services-toggle[data-v-409957ad]{appearance:none;border:1px solid var(--p-content-border-color);border-radius:var(--p-border-radius);cursor:pointer;color:var(--p-text-muted-color);background:0 0;align-items:center;gap:.3rem;padding:.2rem .45rem;font-size:.78rem;transition:background .15s,color .15s;display:flex}.notification-item__services-toggle[data-v-409957ad]:hover{background:var(--p-content-hover-background);color:var(--p-text-color)}.notification-item__services[data-v-409957ad]{border-top:1px dashed var(--p-content-border-color);flex-direction:column;gap:.4rem;padding:.5rem 0 .75rem 1rem;display:flex}.notification-item__services-empty[data-v-409957ad]{color:var(--p-text-muted-color);margin:0;font-size:.8rem}.notification-item__service-row[data-v-409957ad]{justify-content:space-between;align-items:center;padding:.25rem 0;display:flex}.notification-item__service-name[data-v-409957ad]{color:var(--p-text-color);font-size:.85rem}.security-cards[data-v-8c67f03d]{flex-direction:column;gap:1rem;display:flex}.settings-card[data-v-8c67f03d]{max-width:680px}.card-title[data-v-8c67f03d]{align-items:center;gap:.5rem;display:flex}.card-desc[data-v-8c67f03d]{color:var(--p-text-muted-color);margin:0 0 1rem;font-size:.85rem}.setting-row[data-v-8c67f03d]{align-items:flex-start;gap:1rem;padding:.75rem 0;display:flex}.setting-label[data-v-8c67f03d]{width:140px;color:var(--p-text-muted-color);flex-shrink:0;padding-top:.25rem;font-size:.9rem;font-weight:600}.org-block[data-v-8c67f03d]{flex-direction:column;display:flex}.org-adopt[data-v-8c67f03d]{flex-direction:column;gap:.5rem;margin-bottom:1rem;display:flex}.org-adopt__row[data-v-8c67f03d]{align-items:center;gap:.5rem;max-width:560px;display:flex}.org-unreadable[data-v-8c67f03d]{margin:0 0 .75rem;font-size:.8rem}.org-label[data-v-8c67f03d]{flex-direction:column;gap:.15rem;display:flex}.org-id[data-v-8c67f03d]{word-break:break-all;font-family:monospace;font-size:.8rem}.org-source[data-v-8c67f03d]{font-size:.75rem;font-weight:400}.org-source--own[data-v-8c67f03d]{color:var(--p-primary-color)}.org-source--locked[data-v-8c67f03d]{color:var(--p-red-500)}.encryption-key-field[data-v-8c67f03d]{flex:1;align-items:center;gap:.25rem;max-width:460px;display:flex}.encryption-key-input[data-v-8c67f03d]{flex:1;font-family:monospace;font-size:.85rem}.settings-card[data-v-3e46f822]{max-width:680px}.card-title[data-v-3e46f822]{align-items:center;gap:.5rem;display:flex}.card-desc[data-v-3e46f822]{color:var(--p-text-muted-color);margin:0 0 1rem;font-size:.85rem}.setting-row[data-v-3e46f822]{align-items:flex-start;gap:1rem;padding:.75rem 0;display:flex}.setting-label[data-v-3e46f822]{width:140px;color:var(--p-text-muted-color);flex-shrink:0;padding-top:.25rem;font-size:.9rem;font-weight:600}.setting-input[data-v-3e46f822]{width:100%;max-width:400px}.editor-warning[data-v-3e46f822]{padding:.5rem 0}.editor-detected[data-v-3e46f822]{padding-top:.5rem}.editor-option[data-v-3e46f822]{align-items:center;gap:.5rem;display:flex}.hint[data-v-3e46f822]{color:var(--p-text-muted-color);font-size:.78rem}[data-v-2bbf2f63] .p-dialog-content{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.settings-card[data-v-2bbf2f63]{max-width:680px}.card-desc[data-v-2bbf2f63]{color:var(--p-text-muted-color);margin:0 0 1rem;font-size:.85rem}.parsers-loading[data-v-2bbf2f63]{color:var(--p-text-muted-color);align-items:center;gap:.5rem;padding:1rem;font-size:.875rem;display:flex}.parsers-list[data-v-2bbf2f63]{flex-direction:column;gap:.375rem;display:flex}.parsers-row[data-v-2bbf2f63]{border:1px solid var(--p-content-border-color);border-radius:var(--p-border-radius);background:var(--p-content-background);align-items:center;gap:.75rem;padding:.5rem .75rem;display:flex}.parsers-name[data-v-2bbf2f63]{flex-shrink:0;font-size:.875rem;font-weight:600}.parsers-desc-inline[data-v-2bbf2f63]{color:var(--p-text-muted-color);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:.8rem;overflow:hidden}.parsers-icon--on[data-v-2bbf2f63]{color:var(--p-green-500);justify-content:center;align-items:center;width:2rem;height:2rem;display:flex}.parsers-icon--off[data-v-2bbf2f63]{color:var(--p-red-500);justify-content:center;align-items:center;width:2rem;height:2rem;display:flex}.parsers-actions[data-v-2bbf2f63]{align-items:center;gap:.25rem;margin-left:auto;display:flex}.parsers-empty[data-v-2bbf2f63]{text-align:center;color:var(--p-text-muted-color);padding:1.5rem;font-size:.875rem}.parser-dialog__layout[data-v-2bbf2f63]{grid-template-columns:1fr 1fr;align-items:stretch;gap:1.25rem;height:100%;display:grid;overflow:hidden}@media (max-width:768px){.parser-dialog__layout[data-v-2bbf2f63]{grid-template-columns:1fr;height:auto;overflow-y:auto}.dialog-form[data-v-2bbf2f63]{height:auto;overflow:visible}.dialog-form__field--code[data-v-2bbf2f63]{min-height:250px}.parser-sim[data-v-2bbf2f63]{min-height:300px}.parser-sim__body[data-v-2bbf2f63]{min-height:0}.parser-sim__col--output[data-v-2bbf2f63]{min-height:150px}}.dialog-form[data-v-2bbf2f63]{flex-direction:column;gap:1rem;height:100%;display:flex;overflow:auto}.dialog-form__field--code[data-v-2bbf2f63]{flex:1;min-height:0}.dialog-form__field[data-v-2bbf2f63]{flex-direction:column;gap:.375rem;display:flex}.dialog-form__label[data-v-2bbf2f63]{color:var(--p-text-muted-color);align-items:center;gap:.5rem;font-size:.8125rem;font-weight:600;display:flex}.dialog-form__input[data-v-2bbf2f63]{width:100%}.dialog-form__hint[data-v-2bbf2f63]{color:var(--p-text-muted-color);font-size:.78rem}.dialog-form__hint code[data-v-2bbf2f63]{background:var(--p-content-hover-background);border-radius:3px;padding:.125rem .375rem;font-family:Monaco,Menlo,monospace;font-size:.75rem}.dialog-form__switch[data-v-2bbf2f63]{align-items:center;gap:.5rem;display:flex}.dialog-form__switch-label[data-v-2bbf2f63]{color:var(--p-text-muted-color);font-size:.85rem}.dialog-form__templates[data-v-2bbf2f63]{flex-direction:column;gap:.5rem;display:flex}.dialog-form__templates-label[data-v-2bbf2f63]{color:var(--p-text-muted-color);text-transform:uppercase;letter-spacing:.04em;font-size:.75rem;font-weight:600}.dialog-form__templates-select[data-v-2bbf2f63]{width:100%}.dialog-form__ai-btn[data-v-2bbf2f63]{margin-left:auto}.tpl-option[data-v-2bbf2f63]{align-items:center;gap:.75rem;display:flex}.tpl-option__icon[data-v-2bbf2f63]{color:var(--p-primary-color);flex-shrink:0;font-size:.9rem}.tpl-option__body[data-v-2bbf2f63]{flex-direction:column;gap:.1rem;display:flex}.tpl-option__name[data-v-2bbf2f63]{color:var(--p-text-color);font-size:.8125rem;font-weight:600}.tpl-option__desc[data-v-2bbf2f63]{color:var(--p-text-muted-color);font-size:.73rem}.parser-sim[data-v-2bbf2f63]{border:1px solid var(--p-content-border-color);border-radius:var(--p-border-radius);flex-direction:column;height:100%;display:flex;overflow:hidden}.parser-sim__header[data-v-2bbf2f63]{background:var(--p-surface-50,#00000008);border-bottom:1px solid var(--p-content-border-color);justify-content:space-between;align-items:center;padding:.5rem .75rem;font-size:.8125rem;display:flex}.parser-sim__title[data-v-2bbf2f63]{align-items:center;gap:.4rem;font-weight:600;display:flex}.parser-sim__status[data-v-2bbf2f63]{color:var(--p-text-muted-color);align-items:center;gap:.3rem;font-size:.75rem;display:flex}.parser-sim__body[data-v-2bbf2f63]{flex-direction:column;flex:1;gap:0;min-height:0;display:flex}.parser-sim__col[data-v-2bbf2f63]{flex-direction:column;gap:.25rem;padding:.6rem .75rem;display:flex}.parser-sim__col[data-v-2bbf2f63]:first-child{border-bottom:1px solid var(--p-content-border-color)}.parser-sim__col-label[data-v-2bbf2f63]{color:var(--p-text-muted-color);text-transform:uppercase;letter-spacing:.04em;margin-bottom:.25rem;font-size:.75rem;font-weight:600}.parser-sim__textarea[data-v-2bbf2f63]{resize:vertical;width:100%;min-height:160px;font-family:var(--p-font-family-mono,monospace);border:1px solid var(--p-inputtext-border-color,var(--p-content-border-color));border-radius:var(--p-border-radius);background:var(--p-inputtext-background,var(--p-content-background));color:var(--p-inputtext-color,var(--p-text-color));outline:none;padding:.5rem;font-size:.8rem;line-height:1.5}.parser-sim__textarea[data-v-2bbf2f63]:focus{border-color:var(--p-primary-color)}.parser-sim__error[data-v-2bbf2f63]{color:var(--p-red-500,#ef4444);align-items:flex-start;gap:.4rem;padding:.5rem;font-size:.8rem;display:flex}.parser-sim__empty[data-v-2bbf2f63]{color:var(--p-text-muted-color);padding:.5rem;font-size:.8rem;font-style:italic}.parser-sim__col--output[data-v-2bbf2f63]{flex:1;min-height:0;overflow:hidden}.parser-sim__viewer[data-v-2bbf2f63]{flex:1;height:100%;min-height:0}.parser-ai-prompt[data-v-2bbf2f63]{flex-direction:column;gap:.75rem;display:flex}.parser-ai-prompt__desc[data-v-2bbf2f63]{color:var(--p-text-muted-color);margin:0;font-size:.9rem}.parser-ai-prompt__input[data-v-2bbf2f63]{resize:vertical;width:100%}.providers-scope[data-v-ead30266]{color:var(--p-text-muted-color);align-items:center;gap:.4rem;margin:0 0 .9rem;font-size:.8rem;display:flex}.settings-card[data-v-ead30266]{max-width:680px}.providers-loading[data-v-ead30266],.providers-empty[data-v-ead30266]{color:var(--p-text-muted-color);align-items:center;gap:.5rem;padding:1rem;font-size:.875rem;display:flex}.ai-providers-list[data-v-ead30266]{flex-direction:column;gap:.5rem;display:flex}.ai-provider-row[data-v-ead30266]{border:1px solid var(--p-content-border-color);border-radius:var(--p-border-radius);background:var(--p-content-background);justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1rem;transition:border-color .15s;display:flex}.ai-provider-row--active[data-v-ead30266]{border-color:var(--p-primary-color);background:color-mix(in srgb, var(--p-primary-color) 5%, var(--p-content-background))}.ai-provider-info[data-v-ead30266]{flex-wrap:wrap;align-items:center;gap:.75rem;min-width:0;display:flex}.ai-provider-name[data-v-ead30266]{font-size:.875rem;font-weight:600}.ai-provider-type[data-v-ead30266]{color:var(--p-text-muted-color);font-size:.8125rem}.ai-provider-model[data-v-ead30266]{background:var(--p-content-hover-background);color:var(--p-text-muted-color);border-radius:4px;padding:.15rem .4rem;font-size:.75rem}.ai-provider-key[data-v-ead30266]{background:var(--p-content-hover-background);letter-spacing:.05em;border-radius:4px;padding:.15rem .4rem;font-size:.75rem}.ai-provider-actions[data-v-ead30266]{flex-shrink:0;align-items:center;gap:.25rem;display:flex}.ai-provider-badge[data-v-ead30266]{color:var(--p-primary-color);align-items:center;gap:.35rem;padding:.25rem .6rem;font-size:.8rem;font-weight:600;display:inline-flex}.dialog-form[data-v-ead30266]{flex-direction:column;gap:1rem;display:flex}.dialog-form__field[data-v-ead30266]{flex-direction:column;gap:.375rem;display:flex}.dialog-form__label[data-v-ead30266]{color:var(--p-text-muted-color);align-items:center;gap:.5rem;font-size:.8125rem;font-weight:600;display:flex}.dialog-form__input[data-v-ead30266]{width:100%}.ai-provider-info-block[data-v-ead30266]{background:color-mix(in srgb, var(--p-primary-color) 6%, var(--p-content-background));border:1px solid color-mix(in srgb, var(--p-primary-color) 25%, transparent);border-radius:var(--p-border-radius);flex-direction:column;gap:.5rem;padding:.75rem 1rem;display:flex}.ai-provider-info-block__text[data-v-ead30266]{color:var(--p-text-color);margin:0;font-size:.875rem;line-height:1.5}.ai-provider-info-block__link[data-v-ead30266]{color:var(--p-primary-color);align-items:center;gap:.35rem;font-size:.8125rem;font-weight:500;text-decoration:none;display:inline-flex}.ai-provider-info-block__link[data-v-ead30266]:hover{text-decoration:underline}.ai-provider-info-block__models[data-v-ead30266]{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.ai-provider-info-block__models-label[data-v-ead30266]{color:var(--p-text-muted-color);font-size:.75rem;font-weight:500}.ai-provider-info-block__model-tag[data-v-ead30266]{background:var(--p-content-hover-background);border:1px solid var(--p-content-border-color);color:var(--p-text-muted-color);border-radius:4px;padding:.1rem .4rem;font-size:.7rem}.settings-card[data-v-3faeb447]{max-width:680px}.scenario-list[data-v-3faeb447]{flex-direction:column;gap:.5rem;display:flex}.scenario-row[data-v-3faeb447]{border:1px solid var(--p-content-border-color);border-radius:var(--p-border-radius);background:var(--p-content-background);justify-content:space-between;align-items:center;gap:.75rem;padding:.5rem .75rem;display:flex}.scenario-info[data-v-3faeb447]{align-items:center;gap:.75rem;display:flex}.scenario-icon[data-v-3faeb447]{opacity:.7;font-size:1.1rem}.scenario-desc[data-v-3faeb447]{opacity:.6;margin-left:.5rem;font-size:.85rem}.scenario-meta[data-v-3faeb447]{opacity:.5;margin-top:.25rem;font-size:.8rem}.scenario-actions[data-v-3faeb447]{flex-shrink:0;gap:.25rem;display:flex}.scenario-empty[data-v-3faeb447]{text-align:center;opacity:.5;padding:1rem 0}.settings-card[data-v-73b445c8]{max-width:680px}.setting-row[data-v-73b445c8]{border-bottom:1px solid var(--p-content-border-color);align-items:flex-start;gap:1rem;padding:.75rem 0;display:flex}.setting-row[data-v-73b445c8]:last-child{border-bottom:none}.setting-label[data-v-73b445c8]{width:140px;color:var(--p-text-muted-color);flex-shrink:0;padding-top:.25rem;font-size:.9rem;font-weight:600}.setting-value[data-v-73b445c8]{flex:1;align-items:center;gap:.5rem;display:flex}.card-title-row[data-v-73b445c8]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.diagnostics[data-v-d1059365]{flex-direction:column;gap:2rem;display:flex}.block__header[data-v-d1059365]{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.85rem;display:flex}.block__title[data-v-d1059365]{margin:0;font-size:1rem;font-weight:600}.block__desc[data-v-d1059365]{color:var(--p-text-muted-color);margin:.2rem 0 0;font-size:.85rem}.empty[data-v-d1059365]{text-align:center;color:var(--p-text-muted-color);margin:0;padding:1.2rem;font-size:.875rem}.instances[data-v-d1059365]{border:1px solid var(--p-content-border-color);border-radius:8px;margin:0;padding:0;list-style:none;overflow:hidden}.instance[data-v-d1059365]{border-bottom:1px solid var(--p-content-border-color);grid-template-columns:1fr auto;grid-template-areas:"main action""meta action";align-items:center;gap:.15rem 1rem;padding:.7rem .9rem;display:grid}.instance[data-v-d1059365]:last-child{border-bottom:0}.instance__main[data-v-d1059365]{grid-area:main;align-items:center;gap:.5rem;font-size:.9rem;font-weight:600;display:flex}.instance__port[data-v-d1059365]{align-items:center;gap:.4rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;display:flex}.instance__meta[data-v-d1059365]{color:var(--p-text-muted-color);flex-wrap:wrap;grid-area:meta;align-items:center;gap:.4rem;font-size:.78rem;display:flex}.instance__cwd[data-v-d1059365]{text-overflow:ellipsis;white-space:nowrap;max-width:24rem;overflow:hidden}.instance[data-v-d1059365] .p-button{grid-area:action}.instance__actions[data-v-d1059365]{grid-area:action;align-items:center;gap:.25rem;display:flex}.instance__actions[data-v-d1059365] .p-button{grid-area:auto}.tag[data-v-d1059365]{border-radius:999px;padding:.1rem .45rem;font-size:.7rem;font-weight:600}.tag--current[data-v-d1059365]{background:color-mix(in srgb, var(--p-primary-color) 16%, transparent);color:var(--p-primary-color)}.toolbar[data-v-d1059365]{flex-wrap:wrap;align-items:center;gap:.6rem;margin-bottom:.6rem;display:flex}.toolbar__source[data-v-d1059365]{min-width:9rem}.toolbar__search[data-v-d1059365]{flex:10rem;min-width:10rem}.toolbar__toggle[data-v-d1059365]{align-items:center;gap:.45rem;font-size:.85rem;display:flex}.toolbar__spacer[data-v-d1059365]{flex:auto}.toolbar__actions[data-v-d1059365]{flex:none;align-items:center;gap:.25rem;display:flex}.log[data-v-d1059365]{background:var(--p-content-background);border:1px solid var(--p-content-border-color);border-radius:8px;height:26rem;padding:.5rem 0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.78rem;line-height:1.55;overflow:auto}.log-line[data-v-d1059365]{white-space:pre-wrap;word-break:break-word;gap:.6rem;padding:.05rem .8rem;display:flex}.log-line--warn[data-v-d1059365]{background:color-mix(in srgb, var(--p-orange-500,#f59e0b) 9%, transparent)}.log-line--error[data-v-d1059365]{background:color-mix(in srgb, var(--p-red-500,#ef4444) 11%, transparent)}.log-line__time[data-v-d1059365]{color:var(--p-text-muted-color);opacity:.75;flex:none}.log-line__source[data-v-d1059365]{text-transform:uppercase;letter-spacing:.03em;flex:0 0 3.4rem;align-self:center;font-size:.68rem}.log-line__source--server[data-v-d1059365]{color:var(--p-primary-color)}.log-line__source--agent[data-v-d1059365]{color:var(--p-text-muted-color)}.log-line__text[data-v-d1059365]{flex:auto}.follow-hint[data-v-d1059365]{text-align:center;margin:.4rem 0 0}.api-docs[data-v-5c36e62a]{flex-direction:column;height:100%;display:flex;overflow:hidden}.api-docs__content[data-v-5c36e62a]{flex:1;min-height:0;overflow-y:auto}.api-docs__toolbar[data-v-5c36e62a]{background:var(--p-surface-card);border-bottom:1px solid var(--p-surface-border);flex-shrink:0;align-items:center;gap:.75rem;padding:.75rem 1rem;display:flex}.api-docs__toolbar-label[data-v-5c36e62a]{color:var(--p-text-muted-color);white-space:nowrap;font-size:.875rem;font-weight:500}.settings-page[data-v-91a230ca]{flex-direction:column;height:100%;display:flex}.settings-layout[data-v-91a230ca]{flex:1;gap:0;min-height:0;display:flex}.settings-nav[data-v-91a230ca]{border-right:1px solid var(--p-content-border-color);flex-direction:column;flex-shrink:0;gap:.25rem;width:200px;padding:1.25rem 0;display:flex}.settings-nav__title[data-v-91a230ca]{letter-spacing:.08em;text-transform:uppercase;color:var(--p-text-muted-color);padding:0 1rem .75rem;font-size:.7rem;font-weight:700}.settings-nav__list[data-v-91a230ca]{flex-direction:column;gap:.125rem;margin:0;padding:0;list-style:none;display:flex}.settings-nav__item[data-v-91a230ca]{cursor:pointer;color:var(--p-text-muted-color);-webkit-user-select:none;user-select:none;border-radius:6px;align-items:center;gap:.625rem;margin:0 .5rem;padding:.5rem 1rem;font-size:.875rem;transition:background .15s,color .15s;display:flex}.settings-nav__item[data-v-91a230ca]:hover{background:var(--p-content-hover-background);color:var(--p-text-color)}.settings-nav__item--active[data-v-91a230ca]{background:var(--p-primary-50,color-mix(in srgb, var(--p-primary-color) 10%, transparent));color:var(--p-primary-color);font-weight:600}.settings-nav__icon[data-v-91a230ca]{flex-shrink:0;font-size:.875rem}.settings-content[data-v-91a230ca]{flex:1;min-width:0;padding:1.5rem 2rem;overflow-y:auto}.settings-content--fullpage[data-v-91a230ca]{flex-direction:column;min-height:0;padding:0;display:flex;overflow:hidden}.settings-content--fullpage[data-v-91a230ca] .api-docs{flex:1;min-height:0}@media (max-width:640px){.settings-layout[data-v-91a230ca]{flex-direction:column}.settings-nav[data-v-91a230ca]{border-right:none;border-bottom:1px solid var(--p-content-border-color);flex-direction:row;align-items:center;width:100%;padding:.5rem 0;position:relative}.settings-nav__title[data-v-91a230ca]{display:none}.settings-nav__list[data-v-91a230ca]{scrollbar-width:none;flex-direction:row;flex:1;gap:0;padding:0 .25rem;overflow-x:auto}.settings-nav__list[data-v-91a230ca]::-webkit-scrollbar{display:none}.settings-nav__item[data-v-91a230ca]{white-space:nowrap;border-radius:6px;flex-direction:column;flex-shrink:0;gap:.25rem;margin:0;padding:.4rem .75rem;font-size:.7rem}.settings-nav__icon[data-v-91a230ca]{font-size:1rem}.settings-nav__chevron[data-v-91a230ca]{cursor:pointer;width:2rem;height:2rem;color:var(--p-text-muted-color);background:0 0;border:none;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;transition:background .15s,color .15s;display:flex}.settings-nav__chevron[data-v-91a230ca]:hover{background:var(--p-content-hover-background);color:var(--p-text-color)}.settings-content[data-v-91a230ca]{padding:1rem}}@media (min-width:641px){.settings-nav__chevron[data-v-91a230ca]{display:none}}.section-header[data-v-91a230ca]{margin-bottom:1.5rem}.section-header--has-actions[data-v-91a230ca]{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.section-header__text[data-v-91a230ca]{flex:1;min-width:0}.section-header__actions[data-v-91a230ca]{flex-shrink:0;align-self:center}.section-title[data-v-91a230ca]{margin:0 0 .25rem;font-size:1.25rem;font-weight:700}.section-desc[data-v-91a230ca]{color:var(--p-text-muted-color);margin:0;font-size:.875rem}
1
+ .traefik-settings[data-v-d0288b5d]{box-sizing:border-box;flex-direction:column;gap:1rem;width:100%;min-width:0;display:flex}.traefik-settings[data-v-d0288b5d] input,.traefik-settings[data-v-d0288b5d] .p-inputtext,.traefik-settings[data-v-d0288b5d] .p-autocomplete,.traefik-settings[data-v-d0288b5d] .p-password{box-sizing:border-box;width:100%;max-width:100%}.traefik-row[data-v-d0288b5d]{justify-content:space-between;align-items:center;display:flex}.traefik-field[data-v-d0288b5d]{flex-direction:column;gap:.4rem;display:flex}.traefik-field label[data-v-d0288b5d]{font-size:.875rem;font-weight:500}.traefik-field small[data-v-d0288b5d]{color:var(--p-text-muted-color);font-size:.75rem}.credential-row[data-v-d0288b5d]{align-items:center;gap:.5rem;min-width:0;display:flex}.credential-key[data-v-d0288b5d]{flex:0 0 160px;min-width:0}.credential-value[data-v-d0288b5d]{flex:1;min-width:0}.credential-value[data-v-d0288b5d] .p-password,.credential-value[data-v-d0288b5d] .p-password input{width:100%}.traefik-ports[data-v-d0288b5d]{gap:1rem;display:flex}.traefik-field--small[data-v-d0288b5d]{flex:1}.hint-ok[data-v-d0288b5d]{color:var(--p-green-500);font-size:.8rem;font-weight:400}.traefik-actions[data-v-d0288b5d]{align-self:flex-end;gap:.5rem;display:flex}.traefik-renewal-notice[data-v-d0288b5d]{border-radius:var(--p-border-radius);background:color-mix(in srgb, var(--p-blue-500) 10%, transparent);border:1px solid color-mix(in srgb, var(--p-blue-500) 30%, transparent);color:var(--p-blue-300);align-items:flex-start;gap:.6rem;padding:.75rem;font-size:.875rem;display:flex}.traefik-validation[data-v-d0288b5d]{border:1px solid var(--p-content-border-color);border-radius:var(--p-border-radius);flex-direction:column;gap:.4rem;padding:.75rem;display:flex}.validation-item[data-v-d0288b5d]{align-items:center;gap:.5rem;font-size:.875rem;display:flex}.validation-item--ok[data-v-d0288b5d]{color:var(--p-green-500)}.validation-item--fail[data-v-d0288b5d]{color:var(--p-red-500)}.traefik-logs[data-v-d0288b5d],.traefik-config-files[data-v-d0288b5d]{border:1px solid var(--p-content-border-color);border-radius:var(--p-border-radius);overflow:hidden}.config-tabs[data-v-d0288b5d]{gap:.25rem;display:flex}.config-tab[data-v-d0288b5d]{border-radius:var(--p-border-radius);cursor:pointer;color:var(--p-text-muted-color);background:0 0;border:none;padding:.2rem .6rem;font-size:.8rem}.config-tab--active[data-v-d0288b5d]{background:var(--p-primary-color);color:var(--p-primary-contrast-color)}.traefik-logs-header[data-v-d0288b5d]{background:var(--p-content-hover-background);justify-content:space-between;align-items:center;padding:.4rem .75rem;font-size:.8rem;font-weight:600;display:flex}.logs-live[data-v-d0288b5d]{color:var(--p-green-400);font-size:.7rem;animation:1.2s ease-in-out infinite blink-d0288b5d}@keyframes blink-d0288b5d{0%,to{opacity:1}50%{opacity:.3}}.traefik-logs-content[data-v-d0288b5d]{white-space:pre-wrap;word-break:break-all;background:var(--p-surface-900,#1a1a1a);max-height:300px;color:var(--p-surface-100,#f0f0f0);margin:0;padding:.75rem;font-family:monospace;font-size:.75rem;overflow-y:auto}.traefik-dialog-layout[data-v-9ce779b4]{grid-template-columns:1fr 1fr;gap:1.5rem;min-height:0;display:grid}.traefik-dialog-left[data-v-9ce779b4]{min-width:0;max-height:80vh;padding-right:.5rem;overflow-y:auto}.traefik-dialog-right[data-v-9ce779b4]{flex-direction:column;gap:.5rem;min-width:0;max-height:80vh;display:flex}.fs-header[data-v-9ce779b4]{color:var(--p-text-muted-color);border-bottom:1px solid var(--p-content-border-color);justify-content:space-between;align-items:center;padding:.25rem 0;font-size:.75rem;font-weight:600;display:flex}.fs-tree[data-v-9ce779b4]{flex-direction:column;gap:1px;display:flex}.fs-entry[data-v-9ce779b4]{border-radius:var(--p-border-radius);cursor:pointer;text-align:left;color:var(--p-text-color);background:0 0;border:none;align-items:center;gap:.4rem;width:100%;padding:.3rem .5rem;font-size:.8rem;display:flex}.fs-entry[data-v-9ce779b4]:hover{background:var(--p-content-hover-background)}.fs-entry--active[data-v-9ce779b4]{background:color-mix(in srgb, var(--p-primary-color) 15%, transparent);color:var(--p-primary-color)}.fs-icon[data-v-9ce779b4]{opacity:.6;flex-shrink:0;font-size:.75rem}.fs-dir[data-v-9ce779b4]{opacity:.5;font-size:.7rem}.fs-name[data-v-9ce779b4]{font-weight:500}.fs-empty[data-v-9ce779b4]{color:var(--p-text-muted-color);padding:.5rem;font-size:.8rem;font-style:italic}.fs-content[data-v-9ce779b4]{white-space:pre-wrap;word-break:break-all;background:var(--p-surface-900,#1a1a1a);color:var(--p-surface-100,#f0f0f0);border-radius:var(--p-border-radius);border:1px solid var(--p-content-border-color);flex:1;margin:0;padding:.75rem;font-family:monospace;font-size:.72rem;overflow-y:auto}.agent-page[data-v-09072d16]{max-width:1200px;margin:0 auto;padding:1.5rem}.page-header[data-v-09072d16]{justify-content:space-between;align-items:center;margin-bottom:1.5rem;display:flex}.page-header h1[data-v-09072d16]{margin:0;font-size:1.75rem;font-weight:700}.loading-container[data-v-09072d16],.error-container[data-v-09072d16],.empty-container[data-v-09072d16]{color:var(--p-text-muted-color);flex-direction:column;align-items:center;gap:.75rem;padding:3rem 0;display:flex}.agent-name[data-v-09072d16]{align-items:center;gap:.5rem;font-weight:500;display:flex}.agent-url[data-v-09072d16]{background:var(--p-content-hover-background);border-radius:4px;padding:.15rem .4rem;font-family:Fira Code,Cascadia Code,monospace;font-size:.8rem}.runner-tags[data-v-09072d16]{flex-wrap:wrap;gap:.3rem;display:flex}.action-grid[data-v-09072d16]{grid-template-columns:repeat(2,auto);gap:0;width:fit-content;display:grid}@media (max-width:768px){[data-v-09072d16] .hide-on-mobile{display:none!important}[data-v-09072d16] .p-datatable-column-header-content{white-space:nowrap}.agent-url[data-v-09072d16]{word-break:break-all;white-space:normal}}.text-muted[data-v-09072d16]{color:var(--p-text-muted-color)}.form-group[data-v-09072d16]{margin-bottom:1rem}.form-group label[data-v-09072d16]{margin-bottom:.4rem;font-size:.875rem;font-weight:500;display:block}.form-hint[data-v-09072d16]{color:var(--p-text-muted-color);font-size:.78rem}.test-connection[data-v-09072d16]{align-items:center;gap:.75rem;display:flex}.w-full[data-v-09072d16]{width:100%}.passthrough-description[data-v-09072d16]{color:var(--p-text-muted-color);margin:0 0 1rem;font-size:.85rem;line-height:1.4}.passthrough-list[data-v-09072d16]{flex-direction:column;gap:.25rem;margin-bottom:.75rem;display:flex}.passthrough-item[data-v-09072d16]{background:var(--p-content-hover-background);border-radius:6px;justify-content:space-between;align-items:center;padding:.3rem .5rem;display:flex}.passthrough-item-info[data-v-09072d16]{align-items:center;gap:.4rem;min-width:0;display:flex;overflow:hidden}.passthrough-item code[data-v-09072d16]{flex-shrink:0;font-family:Fira Code,Cascadia Code,monospace;font-size:.85rem}.passthrough-value[data-v-09072d16]{color:var(--p-text-muted-color);text-overflow:ellipsis;white-space:nowrap;font-family:Fira Code,Cascadia Code,monospace;font-size:.8rem;overflow:hidden}.passthrough-undefined[data-v-09072d16]{color:var(--p-orange-500);font-size:.78rem;font-style:italic}.passthrough-unsaved[data-v-09072d16]{color:var(--p-text-muted-color);font-size:.78rem;font-style:italic}.passthrough-empty[data-v-09072d16]{margin-bottom:.75rem;font-size:.85rem}.passthrough-add[data-v-09072d16]{align-items:center;gap:.5rem;display:flex}.passthrough-add-input[data-v-09072d16]{flex:1}.passthrough-error[data-v-09072d16]{color:var(--p-red-500);margin-top:.25rem;font-size:.78rem;display:block}.api-keys-page[data-v-0d4e888e]{max-width:860px;padding:1.5rem}.api-keys-page__header[data-v-0d4e888e]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.api-keys-page__header h1[data-v-0d4e888e]{margin:0;font-size:1.5rem;font-weight:600}.api-keys-page__subtitle[data-v-0d4e888e]{color:var(--p-text-muted-color);flex:1;margin:0;font-size:.875rem}.api-keys-page__empty[data-v-0d4e888e]{color:var(--p-text-muted-color);padding:2rem 0;font-size:.9rem}.api-keys-card[data-v-0d4e888e]{max-width:680px}.api-keys-list[data-v-0d4e888e]{flex-direction:column;gap:.5rem;display:flex}.api-key-card[data-v-0d4e888e]{border:1px solid var(--p-content-border-color);border-radius:var(--p-border-radius);background:var(--p-content-background);padding:.5rem .75rem;position:relative}.api-key-card__body[data-v-0d4e888e]{min-width:0}.api-key-card__name[data-v-0d4e888e]{align-items:center;gap:.5rem;margin-bottom:.2rem;padding-right:5rem;font-weight:500;display:flex}.api-key-card__meta[data-v-0d4e888e]{color:var(--p-text-muted-color);margin-bottom:.4rem;font-size:.8rem}.api-key-card__url-row[data-v-0d4e888e]{align-items:center;gap:.4rem;display:flex}.api-key-card__url[data-v-0d4e888e]{min-width:0;color:var(--p-text-muted-color);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:.75rem;overflow:hidden}.api-key-card__actions[data-v-0d4e888e]{gap:.3rem;display:flex;position:absolute;top:.5rem;right:.5rem}.badge[data-v-0d4e888e]{text-transform:uppercase;border-radius:4px;padding:.1rem .4rem;font-size:.7rem;font-weight:600}.badge--info[data-v-0d4e888e]{background:var(--p-blue-100);color:var(--p-blue-700)}.api-key-form[data-v-0d4e888e]{background:var(--p-surface-card);border:1px solid var(--runeya-border);border-radius:10px;max-width:600px;padding:1.5rem}.api-key-form h2[data-v-0d4e888e]{margin:0 0 1.25rem;font-size:1.1rem}.form-field[data-v-0d4e888e]{margin-bottom:1.25rem}.form-field>label[data-v-0d4e888e]:first-child{margin-bottom:.5rem;font-size:.875rem;font-weight:600;display:block}.form-input[data-v-0d4e888e]{border:1px solid var(--runeya-border);background:var(--p-surface-ground);width:100%;color:var(--p-text-color);box-sizing:border-box;border-radius:6px;padding:.5rem .75rem;font-size:.9rem}.form-input[data-v-0d4e888e]:focus{border-color:var(--p-primary-color);outline:none}.form-select[data-v-0d4e888e]{border:1px solid var(--runeya-border);background:var(--p-surface-ground);width:100%;color:var(--p-text-muted-color);cursor:pointer;border-radius:6px;padding:.45rem .75rem;font-size:.875rem}.form-select--sm[data-v-0d4e888e]{width:auto;padding:.25rem .5rem;font-size:.8rem}.form-hint[data-v-0d4e888e]{color:var(--p-text-muted-color);margin-top:.4rem;font-size:.75rem}.radio-group[data-v-0d4e888e]{flex-direction:column;gap:.4rem;display:flex}.radio-label[data-v-0d4e888e]{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.5rem;font-size:.875rem;display:flex}.svc-list-container[data-v-0d4e888e]{border:1px solid var(--runeya-border);border-radius:8px;margin-bottom:.5rem;overflow:hidden}.svc-list-search[data-v-0d4e888e]{background:var(--p-surface-ground);border-bottom:1px solid var(--runeya-border);align-items:center;gap:.5rem;padding:.4rem .75rem;display:flex}.svc-list-search__icon[data-v-0d4e888e]{color:var(--p-text-muted-color);flex-shrink:0;font-size:.75rem}.svc-list-search__input[data-v-0d4e888e]{color:var(--p-text-color);background:0 0;border:none;outline:none;flex:1;font-size:.85rem}.svc-list-search__input[data-v-0d4e888e]::placeholder{color:var(--p-text-muted-color)}.svc-list-search__clear[data-v-0d4e888e]{cursor:pointer;color:var(--p-text-muted-color);background:0 0;border:none;align-items:center;padding:0;font-size:.75rem;display:flex}.svc-list-search__clear[data-v-0d4e888e]:hover{color:var(--p-text-color)}.svc-list-scroll[data-v-0d4e888e]{max-height:360px;overflow-y:auto}.svc-list-empty[data-v-0d4e888e]{margin:0;padding:.75rem}.svc-perm-row[data-v-0d4e888e]{border-bottom:1px solid var(--runeya-border);overflow:hidden}.svc-perm-row[data-v-0d4e888e]:last-child{border-bottom:none}.svc-perm-row__header[data-v-0d4e888e]{background:var(--p-surface-ground);border-bottom:1px solid var(--runeya-border);cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;padding:.4rem .75rem;display:flex}.svc-perm-row__header[data-v-0d4e888e]:hover{background:var(--runeya-sidebar-hover)}.svc-chevron[data-v-0d4e888e]{color:var(--p-text-muted-color);font-size:.7rem;transition:transform .15s}.svc-perm-summary[data-v-0d4e888e]{color:var(--p-text-muted-color);margin-left:.3rem;font-size:.75rem;font-weight:400}.svc-perm-row__name[data-v-0d4e888e]{align-items:center;gap:.4rem;font-size:.875rem;font-weight:600;display:flex}.svc-perm-row__actions[data-v-0d4e888e]{border-bottom:1px solid var(--runeya-border);flex-wrap:wrap;gap:.35rem;padding:.5rem .75rem;display:flex}.action-chip[data-v-0d4e888e]{border:1px solid var(--runeya-border);background:var(--p-surface-ground);color:var(--p-text-muted-color);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:20px;align-items:center;gap:.3rem;padding:.15rem .5rem;font-size:.78rem;transition:all .12s;display:inline-flex}.action-chip input[type=checkbox][data-v-0d4e888e]{display:none}.action-chip--on[data-v-0d4e888e]{background:var(--p-primary-color);color:var(--p-primary-contrast-color,#fff);border-color:var(--p-primary-color)}.action-chip--sub[data-v-0d4e888e]{opacity:.85;margin-left:.25rem;font-size:.72rem}.action-chip--sub.action-chip--on[data-v-0d4e888e]{background:var(--p-primary-400,var(--p-primary-color))}.svc-perm-row__envs[data-v-0d4e888e]{flex-direction:column;gap:.35rem;padding:.5rem .75rem;display:flex}.env-perm-row[data-v-0d4e888e]{flex-wrap:wrap;align-items:center;gap:.35rem;display:flex}.env-perm-row__name[data-v-0d4e888e]{color:var(--p-text-muted-color);align-items:center;gap:.3rem;min-width:8rem;font-size:.8rem;display:flex}.env-add-row[data-v-0d4e888e]{margin-top:.25rem}.svc-add-row[data-v-0d4e888e]{flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:.5rem;display:flex}.import-modal__body[data-v-0d4e888e]{flex-direction:column;gap:1rem;padding:.25rem 0;display:flex}.import-modal__desc[data-v-0d4e888e]{color:var(--p-text-muted-color);margin:0;font-size:.875rem}.import-section[data-v-0d4e888e]{flex-direction:column;gap:.4rem;display:flex}.import-section__label[data-v-0d4e888e]{color:var(--p-text-muted-color);text-transform:uppercase;letter-spacing:.04em;font-size:.8rem;font-weight:600}.form-actions[data-v-0d4e888e]{justify-content:space-between;align-items:center;gap:.75rem;margin-top:1.5rem;display:flex}.form-actions__right[data-v-0d4e888e]{gap:.75rem;display:flex}.btn--renew[data-v-0d4e888e]{color:var(--p-text-muted-color);font-size:.8rem}.btn--renew[data-v-0d4e888e]:hover:not(:disabled){color:var(--p-text-color)}.api-key-card__skill[data-v-0d4e888e]{margin-top:.6rem}.skill-toggle[data-v-0d4e888e]{color:var(--p-text-muted-color);gap:.35rem}.skill-toggle[data-v-0d4e888e]:hover{color:var(--p-text-color)}.skill-panel[data-v-0d4e888e]{border:1px solid var(--runeya-border);border-radius:6px;margin-top:.5rem;overflow:hidden}.skill-panel__tools[data-v-0d4e888e]{background:var(--p-surface-ground);border-bottom:1px solid var(--runeya-border);flex-wrap:wrap;gap:.35rem;padding:.5rem .75rem;display:flex}.skill-tool-btn[data-v-0d4e888e]{border:1px solid var(--runeya-border);color:var(--p-text-muted-color);cursor:pointer;background:0 0;border-radius:20px;padding:.2rem .6rem;font-size:.72rem;transition:all .12s}.skill-tool-btn[data-v-0d4e888e]:hover{background:var(--runeya-sidebar-hover);color:var(--p-text-color)}.skill-tool-btn--active[data-v-0d4e888e]{background:var(--p-primary-color);color:var(--p-primary-contrast-color,#fff);border-color:var(--p-primary-color)}.skill-panel__header[data-v-0d4e888e]{background:var(--p-surface-ground);border-bottom:1px solid var(--runeya-border);justify-content:space-between;align-items:center;padding:.4rem .75rem;display:flex}.skill-panel__btns[data-v-0d4e888e]{gap:.35rem;display:flex}.skill-panel__hint[data-v-0d4e888e]{color:var(--p-text-muted-color);font-size:.75rem}.skill-panel__code[data-v-0d4e888e]{white-space:pre-wrap;word-break:break-all;background:var(--p-surface-card);color:var(--p-text-color);max-height:260px;margin:0;padding:.75rem;font-size:.72rem;line-height:1.5;overflow-y:auto}.renew-modal__body[data-v-0d4e888e]{flex-direction:column;gap:.5rem;padding:.25rem 0;display:flex}.renew-modal__title[data-v-0d4e888e]{align-items:center;gap:.5rem;font-weight:600;display:flex}.renew-modal__title-icon[data-v-0d4e888e]{color:var(--p-orange-500,#f97316)}.renew-modal__body p[data-v-0d4e888e]{margin:0;font-size:.9rem;line-height:1.5}.btn[data-v-0d4e888e]{cursor:pointer;border:none;border-radius:6px;align-items:center;gap:.4rem;padding:.45rem .9rem;font-size:.875rem;font-weight:500;transition:all .15s;display:inline-flex}.btn[data-v-0d4e888e]:disabled{opacity:.5;cursor:not-allowed}.btn--primary[data-v-0d4e888e]{background:var(--p-primary-color);color:var(--p-primary-contrast-color,#fff)}.btn--primary[data-v-0d4e888e]:hover:not(:disabled){filter:brightness(1.1)}.btn--ghost[data-v-0d4e888e]{color:var(--p-text-color);border:1px solid var(--runeya-border);background:0 0}.btn--ghost[data-v-0d4e888e]:hover:not(:disabled){background:var(--runeya-sidebar-hover)}.btn--danger[data-v-0d4e888e]{color:var(--p-red-500,#ef4444);border:1px solid var(--runeya-border);background:0 0}.btn--danger[data-v-0d4e888e]:hover:not(:disabled){background:var(--p-red-50,#fef2f2)}.btn--sm[data-v-0d4e888e]{padding:.3rem .6rem;font-size:.8rem}.btn--xs[data-v-0d4e888e]{padding:.2rem .4rem;font-size:.75rem}.settings-card[data-v-2f65752a]{max-width:680px}.cloud-banner[data-v-2f65752a]{border:1px solid var(--p-primary-color);background:color-mix(in srgb, var(--p-primary-color) 8%, transparent);width:100%;max-width:680px;color:var(--p-text-color);cursor:pointer;text-align:left;font:inherit;border-radius:10px;align-items:center;gap:1rem;margin-bottom:1.25rem;padding:1rem 1.25rem;transition:background .15s,box-shadow .15s;display:flex}.cloud-banner[data-v-2f65752a]:hover{background:color-mix(in srgb, var(--p-primary-color) 14%, transparent);box-shadow:0 2px 10px color-mix(in srgb, var(--p-primary-color) 20%, transparent)}.cloud-banner__icon[data-v-2f65752a]{color:var(--p-primary-color);flex-shrink:0;font-size:1.75rem}.cloud-banner__text[data-v-2f65752a]{flex-direction:column;flex:1;gap:.15rem;min-width:0;display:flex}.cloud-banner__title[data-v-2f65752a]{font-size:1rem}.cloud-banner__desc[data-v-2f65752a]{color:var(--p-text-muted-color);font-size:.85rem}.cloud-banner__action[data-v-2f65752a]{color:var(--p-primary-color);white-space:nowrap;flex-shrink:0;align-items:center;gap:.4rem;font-weight:600;display:inline-flex}.setting-row[data-v-2f65752a]{border-bottom:1px solid var(--p-content-border-color);align-items:flex-start;gap:1rem;padding:.75rem 0;display:flex}.setting-row[data-v-2f65752a]:last-child{border-bottom:none}.setting-label[data-v-2f65752a]{width:140px;color:var(--p-text-muted-color);flex-shrink:0;padding-top:.25rem;font-size:.9rem;font-weight:600}.setting-value[data-v-2f65752a]{flex:1;align-items:center;gap:.5rem;display:flex}.path-value[data-v-2f65752a]{word-break:break-all;min-width:0;color:var(--p-text-color);flex:1;font-size:.85rem}.setting-input[data-v-2f65752a]{width:100%;max-width:400px}.setting-actions[data-v-2f65752a]{padding-top:1rem}.settings-card[data-v-409957ad]{max-width:680px}.notification-groups[data-v-409957ad]{flex-direction:column;gap:1rem;display:flex}.notification-group[data-v-409957ad]{border:1px solid var(--p-content-border-color);border-radius:var(--p-border-radius);background:color-mix(in srgb, var(--p-content-hover-background) 35%, transparent);padding:.9rem 1rem}.notification-group__header[data-v-409957ad]{justify-content:space-between;align-items:flex-start;gap:.75rem;margin-bottom:.35rem;display:flex}.notification-group__collapse-button[data-v-409957ad]{appearance:none;text-align:left;cursor:pointer;color:inherit;background:0 0;border:0;flex:1;margin:0;padding:0}.notification-group__title-wrap[data-v-409957ad]{align-items:center;gap:.45rem;display:flex}.notification-group__icon[data-v-409957ad]{color:var(--p-text-muted-color);font-size:.9rem}.notification-group__title[data-v-409957ad]{margin:0;font-size:.92rem;font-weight:700}.notification-group__chevron[data-v-409957ad]{color:var(--p-text-muted-color);margin-left:auto;font-size:.8rem}.notification-group__desc[data-v-409957ad]{color:var(--p-text-muted-color);margin:.2rem 0 0;font-size:.78rem}.notification-group__actions[data-v-409957ad]{flex-shrink:0}.notification-item[data-v-409957ad]{border-bottom:1px solid var(--p-content-border-color)}.notification-item[data-v-409957ad]:last-child,.notification-item .setting-row[data-v-409957ad]{border-bottom:none}.setting-row[data-v-409957ad]{border-bottom:1px solid var(--p-content-border-color);align-items:flex-start;gap:1rem;padding:.75rem 0;display:flex}.setting-row--toggle[data-v-409957ad]{align-items:center}.setting-label[data-v-409957ad]{color:var(--p-text-muted-color);font-size:.9rem;font-weight:600}.setting-label-group[data-v-409957ad]{flex:1;min-width:0}.setting-hint[data-v-409957ad]{color:var(--p-text-muted-color);margin-top:.2rem;font-size:.78rem;display:block}.notification-item__right[data-v-409957ad]{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.notification-item__services-toggle[data-v-409957ad]{appearance:none;border:1px solid var(--p-content-border-color);border-radius:var(--p-border-radius);cursor:pointer;color:var(--p-text-muted-color);background:0 0;align-items:center;gap:.3rem;padding:.2rem .45rem;font-size:.78rem;transition:background .15s,color .15s;display:flex}.notification-item__services-toggle[data-v-409957ad]:hover{background:var(--p-content-hover-background);color:var(--p-text-color)}.notification-item__services[data-v-409957ad]{border-top:1px dashed var(--p-content-border-color);flex-direction:column;gap:.4rem;padding:.5rem 0 .75rem 1rem;display:flex}.notification-item__services-empty[data-v-409957ad]{color:var(--p-text-muted-color);margin:0;font-size:.8rem}.notification-item__service-row[data-v-409957ad]{justify-content:space-between;align-items:center;padding:.25rem 0;display:flex}.notification-item__service-name[data-v-409957ad]{color:var(--p-text-color);font-size:.85rem}.security-cards[data-v-8c67f03d]{flex-direction:column;gap:1rem;display:flex}.settings-card[data-v-8c67f03d]{max-width:680px}.card-title[data-v-8c67f03d]{align-items:center;gap:.5rem;display:flex}.card-desc[data-v-8c67f03d]{color:var(--p-text-muted-color);margin:0 0 1rem;font-size:.85rem}.setting-row[data-v-8c67f03d]{align-items:flex-start;gap:1rem;padding:.75rem 0;display:flex}.setting-label[data-v-8c67f03d]{width:140px;color:var(--p-text-muted-color);flex-shrink:0;padding-top:.25rem;font-size:.9rem;font-weight:600}.org-block[data-v-8c67f03d]{flex-direction:column;display:flex}.org-adopt[data-v-8c67f03d]{flex-direction:column;gap:.5rem;margin-bottom:1rem;display:flex}.org-adopt__row[data-v-8c67f03d]{align-items:center;gap:.5rem;max-width:560px;display:flex}.org-unreadable[data-v-8c67f03d]{margin:0 0 .75rem;font-size:.8rem}.org-label[data-v-8c67f03d]{flex-direction:column;gap:.15rem;display:flex}.org-id[data-v-8c67f03d]{word-break:break-all;font-family:monospace;font-size:.8rem}.org-source[data-v-8c67f03d]{font-size:.75rem;font-weight:400}.org-source--own[data-v-8c67f03d]{color:var(--p-primary-color)}.org-source--locked[data-v-8c67f03d]{color:var(--p-red-500)}.encryption-key-field[data-v-8c67f03d]{flex:1;align-items:center;gap:.25rem;max-width:460px;display:flex}.encryption-key-input[data-v-8c67f03d]{flex:1;font-family:monospace;font-size:.85rem}.settings-card[data-v-3e46f822]{max-width:680px}.card-title[data-v-3e46f822]{align-items:center;gap:.5rem;display:flex}.card-desc[data-v-3e46f822]{color:var(--p-text-muted-color);margin:0 0 1rem;font-size:.85rem}.setting-row[data-v-3e46f822]{align-items:flex-start;gap:1rem;padding:.75rem 0;display:flex}.setting-label[data-v-3e46f822]{width:140px;color:var(--p-text-muted-color);flex-shrink:0;padding-top:.25rem;font-size:.9rem;font-weight:600}.setting-input[data-v-3e46f822]{width:100%;max-width:400px}.editor-warning[data-v-3e46f822]{padding:.5rem 0}.editor-detected[data-v-3e46f822]{padding-top:.5rem}.editor-option[data-v-3e46f822]{align-items:center;gap:.5rem;display:flex}.hint[data-v-3e46f822]{color:var(--p-text-muted-color);font-size:.78rem}[data-v-2bbf2f63] .p-dialog-content{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.settings-card[data-v-2bbf2f63]{max-width:680px}.card-desc[data-v-2bbf2f63]{color:var(--p-text-muted-color);margin:0 0 1rem;font-size:.85rem}.parsers-loading[data-v-2bbf2f63]{color:var(--p-text-muted-color);align-items:center;gap:.5rem;padding:1rem;font-size:.875rem;display:flex}.parsers-list[data-v-2bbf2f63]{flex-direction:column;gap:.375rem;display:flex}.parsers-row[data-v-2bbf2f63]{border:1px solid var(--p-content-border-color);border-radius:var(--p-border-radius);background:var(--p-content-background);align-items:center;gap:.75rem;padding:.5rem .75rem;display:flex}.parsers-name[data-v-2bbf2f63]{flex-shrink:0;font-size:.875rem;font-weight:600}.parsers-desc-inline[data-v-2bbf2f63]{color:var(--p-text-muted-color);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:.8rem;overflow:hidden}.parsers-icon--on[data-v-2bbf2f63]{color:var(--p-green-500);justify-content:center;align-items:center;width:2rem;height:2rem;display:flex}.parsers-icon--off[data-v-2bbf2f63]{color:var(--p-red-500);justify-content:center;align-items:center;width:2rem;height:2rem;display:flex}.parsers-actions[data-v-2bbf2f63]{align-items:center;gap:.25rem;margin-left:auto;display:flex}.parsers-empty[data-v-2bbf2f63]{text-align:center;color:var(--p-text-muted-color);padding:1.5rem;font-size:.875rem}.parser-dialog__layout[data-v-2bbf2f63]{grid-template-columns:1fr 1fr;align-items:stretch;gap:1.25rem;height:100%;display:grid;overflow:hidden}@media (max-width:768px){.parser-dialog__layout[data-v-2bbf2f63]{grid-template-columns:1fr;height:auto;overflow-y:auto}.dialog-form[data-v-2bbf2f63]{height:auto;overflow:visible}.dialog-form__field--code[data-v-2bbf2f63]{min-height:250px}.parser-sim[data-v-2bbf2f63]{min-height:300px}.parser-sim__body[data-v-2bbf2f63]{min-height:0}.parser-sim__col--output[data-v-2bbf2f63]{min-height:150px}}.dialog-form[data-v-2bbf2f63]{flex-direction:column;gap:1rem;height:100%;display:flex;overflow:auto}.dialog-form__field--code[data-v-2bbf2f63]{flex:1;min-height:0}.dialog-form__field[data-v-2bbf2f63]{flex-direction:column;gap:.375rem;display:flex}.dialog-form__label[data-v-2bbf2f63]{color:var(--p-text-muted-color);align-items:center;gap:.5rem;font-size:.8125rem;font-weight:600;display:flex}.dialog-form__input[data-v-2bbf2f63]{width:100%}.dialog-form__hint[data-v-2bbf2f63]{color:var(--p-text-muted-color);font-size:.78rem}.dialog-form__hint code[data-v-2bbf2f63]{background:var(--p-content-hover-background);border-radius:3px;padding:.125rem .375rem;font-family:Monaco,Menlo,monospace;font-size:.75rem}.dialog-form__switch[data-v-2bbf2f63]{align-items:center;gap:.5rem;display:flex}.dialog-form__switch-label[data-v-2bbf2f63]{color:var(--p-text-muted-color);font-size:.85rem}.dialog-form__templates[data-v-2bbf2f63]{flex-direction:column;gap:.5rem;display:flex}.dialog-form__templates-label[data-v-2bbf2f63]{color:var(--p-text-muted-color);text-transform:uppercase;letter-spacing:.04em;font-size:.75rem;font-weight:600}.dialog-form__templates-select[data-v-2bbf2f63]{width:100%}.dialog-form__ai-btn[data-v-2bbf2f63]{margin-left:auto}.tpl-option[data-v-2bbf2f63]{align-items:center;gap:.75rem;display:flex}.tpl-option__icon[data-v-2bbf2f63]{color:var(--p-primary-color);flex-shrink:0;font-size:.9rem}.tpl-option__body[data-v-2bbf2f63]{flex-direction:column;gap:.1rem;display:flex}.tpl-option__name[data-v-2bbf2f63]{color:var(--p-text-color);font-size:.8125rem;font-weight:600}.tpl-option__desc[data-v-2bbf2f63]{color:var(--p-text-muted-color);font-size:.73rem}.parser-sim[data-v-2bbf2f63]{border:1px solid var(--p-content-border-color);border-radius:var(--p-border-radius);flex-direction:column;height:100%;display:flex;overflow:hidden}.parser-sim__header[data-v-2bbf2f63]{background:var(--p-surface-50,#00000008);border-bottom:1px solid var(--p-content-border-color);justify-content:space-between;align-items:center;padding:.5rem .75rem;font-size:.8125rem;display:flex}.parser-sim__title[data-v-2bbf2f63]{align-items:center;gap:.4rem;font-weight:600;display:flex}.parser-sim__status[data-v-2bbf2f63]{color:var(--p-text-muted-color);align-items:center;gap:.3rem;font-size:.75rem;display:flex}.parser-sim__body[data-v-2bbf2f63]{flex-direction:column;flex:1;gap:0;min-height:0;display:flex}.parser-sim__col[data-v-2bbf2f63]{flex-direction:column;gap:.25rem;padding:.6rem .75rem;display:flex}.parser-sim__col[data-v-2bbf2f63]:first-child{border-bottom:1px solid var(--p-content-border-color)}.parser-sim__col-label[data-v-2bbf2f63]{color:var(--p-text-muted-color);text-transform:uppercase;letter-spacing:.04em;margin-bottom:.25rem;font-size:.75rem;font-weight:600}.parser-sim__textarea[data-v-2bbf2f63]{resize:vertical;width:100%;min-height:160px;font-family:var(--p-font-family-mono,monospace);border:1px solid var(--p-inputtext-border-color,var(--p-content-border-color));border-radius:var(--p-border-radius);background:var(--p-inputtext-background,var(--p-content-background));color:var(--p-inputtext-color,var(--p-text-color));outline:none;padding:.5rem;font-size:.8rem;line-height:1.5}.parser-sim__textarea[data-v-2bbf2f63]:focus{border-color:var(--p-primary-color)}.parser-sim__error[data-v-2bbf2f63]{color:var(--p-red-500,#ef4444);align-items:flex-start;gap:.4rem;padding:.5rem;font-size:.8rem;display:flex}.parser-sim__empty[data-v-2bbf2f63]{color:var(--p-text-muted-color);padding:.5rem;font-size:.8rem;font-style:italic}.parser-sim__col--output[data-v-2bbf2f63]{flex:1;min-height:0;overflow:hidden}.parser-sim__viewer[data-v-2bbf2f63]{flex:1;height:100%;min-height:0}.parser-ai-prompt[data-v-2bbf2f63]{flex-direction:column;gap:.75rem;display:flex}.parser-ai-prompt__desc[data-v-2bbf2f63]{color:var(--p-text-muted-color);margin:0;font-size:.9rem}.parser-ai-prompt__input[data-v-2bbf2f63]{resize:vertical;width:100%}.providers-scope[data-v-ead30266]{color:var(--p-text-muted-color);align-items:center;gap:.4rem;margin:0 0 .9rem;font-size:.8rem;display:flex}.settings-card[data-v-ead30266]{max-width:680px}.providers-loading[data-v-ead30266],.providers-empty[data-v-ead30266]{color:var(--p-text-muted-color);align-items:center;gap:.5rem;padding:1rem;font-size:.875rem;display:flex}.ai-providers-list[data-v-ead30266]{flex-direction:column;gap:.5rem;display:flex}.ai-provider-row[data-v-ead30266]{border:1px solid var(--p-content-border-color);border-radius:var(--p-border-radius);background:var(--p-content-background);justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1rem;transition:border-color .15s;display:flex}.ai-provider-row--active[data-v-ead30266]{border-color:var(--p-primary-color);background:color-mix(in srgb, var(--p-primary-color) 5%, var(--p-content-background))}.ai-provider-info[data-v-ead30266]{flex-wrap:wrap;align-items:center;gap:.75rem;min-width:0;display:flex}.ai-provider-name[data-v-ead30266]{font-size:.875rem;font-weight:600}.ai-provider-type[data-v-ead30266]{color:var(--p-text-muted-color);font-size:.8125rem}.ai-provider-model[data-v-ead30266]{background:var(--p-content-hover-background);color:var(--p-text-muted-color);border-radius:4px;padding:.15rem .4rem;font-size:.75rem}.ai-provider-key[data-v-ead30266]{background:var(--p-content-hover-background);letter-spacing:.05em;border-radius:4px;padding:.15rem .4rem;font-size:.75rem}.ai-provider-actions[data-v-ead30266]{flex-shrink:0;align-items:center;gap:.25rem;display:flex}.ai-provider-badge[data-v-ead30266]{color:var(--p-primary-color);align-items:center;gap:.35rem;padding:.25rem .6rem;font-size:.8rem;font-weight:600;display:inline-flex}.dialog-form[data-v-ead30266]{flex-direction:column;gap:1rem;display:flex}.dialog-form__field[data-v-ead30266]{flex-direction:column;gap:.375rem;display:flex}.dialog-form__label[data-v-ead30266]{color:var(--p-text-muted-color);align-items:center;gap:.5rem;font-size:.8125rem;font-weight:600;display:flex}.dialog-form__input[data-v-ead30266]{width:100%}.ai-provider-info-block[data-v-ead30266]{background:color-mix(in srgb, var(--p-primary-color) 6%, var(--p-content-background));border:1px solid color-mix(in srgb, var(--p-primary-color) 25%, transparent);border-radius:var(--p-border-radius);flex-direction:column;gap:.5rem;padding:.75rem 1rem;display:flex}.ai-provider-info-block__text[data-v-ead30266]{color:var(--p-text-color);margin:0;font-size:.875rem;line-height:1.5}.ai-provider-info-block__link[data-v-ead30266]{color:var(--p-primary-color);align-items:center;gap:.35rem;font-size:.8125rem;font-weight:500;text-decoration:none;display:inline-flex}.ai-provider-info-block__link[data-v-ead30266]:hover{text-decoration:underline}.ai-provider-info-block__models[data-v-ead30266]{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.ai-provider-info-block__models-label[data-v-ead30266]{color:var(--p-text-muted-color);font-size:.75rem;font-weight:500}.ai-provider-info-block__model-tag[data-v-ead30266]{background:var(--p-content-hover-background);border:1px solid var(--p-content-border-color);color:var(--p-text-muted-color);border-radius:4px;padding:.1rem .4rem;font-size:.7rem}.settings-card[data-v-3faeb447]{max-width:680px}.scenario-list[data-v-3faeb447]{flex-direction:column;gap:.5rem;display:flex}.scenario-row[data-v-3faeb447]{border:1px solid var(--p-content-border-color);border-radius:var(--p-border-radius);background:var(--p-content-background);justify-content:space-between;align-items:center;gap:.75rem;padding:.5rem .75rem;display:flex}.scenario-info[data-v-3faeb447]{align-items:center;gap:.75rem;display:flex}.scenario-icon[data-v-3faeb447]{opacity:.7;font-size:1.1rem}.scenario-desc[data-v-3faeb447]{opacity:.6;margin-left:.5rem;font-size:.85rem}.scenario-meta[data-v-3faeb447]{opacity:.5;margin-top:.25rem;font-size:.8rem}.scenario-actions[data-v-3faeb447]{flex-shrink:0;gap:.25rem;display:flex}.scenario-empty[data-v-3faeb447]{text-align:center;opacity:.5;padding:1rem 0}.settings-card[data-v-73b445c8]{max-width:680px}.setting-row[data-v-73b445c8]{border-bottom:1px solid var(--p-content-border-color);align-items:flex-start;gap:1rem;padding:.75rem 0;display:flex}.setting-row[data-v-73b445c8]:last-child{border-bottom:none}.setting-label[data-v-73b445c8]{width:140px;color:var(--p-text-muted-color);flex-shrink:0;padding-top:.25rem;font-size:.9rem;font-weight:600}.setting-value[data-v-73b445c8]{flex:1;align-items:center;gap:.5rem;display:flex}.card-title-row[data-v-73b445c8]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.diagnostics[data-v-d1059365]{flex-direction:column;gap:2rem;display:flex}.block__header[data-v-d1059365]{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.85rem;display:flex}.block__title[data-v-d1059365]{margin:0;font-size:1rem;font-weight:600}.block__desc[data-v-d1059365]{color:var(--p-text-muted-color);margin:.2rem 0 0;font-size:.85rem}.empty[data-v-d1059365]{text-align:center;color:var(--p-text-muted-color);margin:0;padding:1.2rem;font-size:.875rem}.instances[data-v-d1059365]{border:1px solid var(--p-content-border-color);border-radius:8px;margin:0;padding:0;list-style:none;overflow:hidden}.instance[data-v-d1059365]{border-bottom:1px solid var(--p-content-border-color);grid-template-columns:1fr auto;grid-template-areas:"main action""meta action";align-items:center;gap:.15rem 1rem;padding:.7rem .9rem;display:grid}.instance[data-v-d1059365]:last-child{border-bottom:0}.instance__main[data-v-d1059365]{grid-area:main;align-items:center;gap:.5rem;font-size:.9rem;font-weight:600;display:flex}.instance__port[data-v-d1059365]{align-items:center;gap:.4rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;display:flex}.instance__meta[data-v-d1059365]{color:var(--p-text-muted-color);flex-wrap:wrap;grid-area:meta;align-items:center;gap:.4rem;font-size:.78rem;display:flex}.instance__cwd[data-v-d1059365]{text-overflow:ellipsis;white-space:nowrap;max-width:24rem;overflow:hidden}.instance[data-v-d1059365] .p-button{grid-area:action}.instance__actions[data-v-d1059365]{grid-area:action;align-items:center;gap:.25rem;display:flex}.instance__actions[data-v-d1059365] .p-button{grid-area:auto}.tag[data-v-d1059365]{border-radius:999px;padding:.1rem .45rem;font-size:.7rem;font-weight:600}.tag--current[data-v-d1059365]{background:color-mix(in srgb, var(--p-primary-color) 16%, transparent);color:var(--p-primary-color)}.toolbar[data-v-d1059365]{flex-wrap:wrap;align-items:center;gap:.6rem;margin-bottom:.6rem;display:flex}.toolbar__source[data-v-d1059365]{min-width:9rem}.toolbar__search[data-v-d1059365]{flex:10rem;min-width:10rem}.toolbar__toggle[data-v-d1059365]{align-items:center;gap:.45rem;font-size:.85rem;display:flex}.toolbar__spacer[data-v-d1059365]{flex:auto}.toolbar__actions[data-v-d1059365]{flex:none;align-items:center;gap:.25rem;display:flex}.log[data-v-d1059365]{background:var(--p-content-background);border:1px solid var(--p-content-border-color);border-radius:8px;height:26rem;padding:.5rem 0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.78rem;line-height:1.55;overflow:auto}.log-line[data-v-d1059365]{white-space:pre-wrap;word-break:break-word;gap:.6rem;padding:.05rem .8rem;display:flex}.log-line--warn[data-v-d1059365]{background:color-mix(in srgb, var(--p-orange-500,#f59e0b) 9%, transparent)}.log-line--error[data-v-d1059365]{background:color-mix(in srgb, var(--p-red-500,#ef4444) 11%, transparent)}.log-line__time[data-v-d1059365]{color:var(--p-text-muted-color);opacity:.75;flex:none}.log-line__source[data-v-d1059365]{text-transform:uppercase;letter-spacing:.03em;flex:0 0 3.4rem;align-self:center;font-size:.68rem}.log-line__source--server[data-v-d1059365]{color:var(--p-primary-color)}.log-line__source--agent[data-v-d1059365]{color:var(--p-text-muted-color)}.log-line__text[data-v-d1059365]{flex:auto}.follow-hint[data-v-d1059365]{text-align:center;margin:.4rem 0 0}.api-docs[data-v-5c36e62a]{flex-direction:column;height:100%;display:flex;overflow:hidden}.api-docs__content[data-v-5c36e62a]{flex:1;min-height:0;overflow-y:auto}.api-docs__toolbar[data-v-5c36e62a]{background:var(--p-surface-card);border-bottom:1px solid var(--p-surface-border);flex-shrink:0;align-items:center;gap:.75rem;padding:.75rem 1rem;display:flex}.api-docs__toolbar-label[data-v-5c36e62a]{color:var(--p-text-muted-color);white-space:nowrap;font-size:.875rem;font-weight:500}.settings-page[data-v-91a230ca]{flex-direction:column;height:100%;display:flex}.settings-layout[data-v-91a230ca]{flex:1;gap:0;min-height:0;display:flex}.settings-nav[data-v-91a230ca]{border-right:1px solid var(--p-content-border-color);flex-direction:column;flex-shrink:0;gap:.25rem;width:200px;padding:1.25rem 0;display:flex}.settings-nav__title[data-v-91a230ca]{letter-spacing:.08em;text-transform:uppercase;color:var(--p-text-muted-color);padding:0 1rem .75rem;font-size:.7rem;font-weight:700}.settings-nav__list[data-v-91a230ca]{flex-direction:column;gap:.125rem;margin:0;padding:0;list-style:none;display:flex}.settings-nav__item[data-v-91a230ca]{cursor:pointer;color:var(--p-text-muted-color);-webkit-user-select:none;user-select:none;border-radius:6px;align-items:center;gap:.625rem;margin:0 .5rem;padding:.5rem 1rem;font-size:.875rem;transition:background .15s,color .15s;display:flex}.settings-nav__item[data-v-91a230ca]:hover{background:var(--p-content-hover-background);color:var(--p-text-color)}.settings-nav__item--active[data-v-91a230ca]{background:var(--p-primary-50,color-mix(in srgb, var(--p-primary-color) 10%, transparent));color:var(--p-primary-color);font-weight:600}.settings-nav__icon[data-v-91a230ca]{flex-shrink:0;font-size:.875rem}.settings-content[data-v-91a230ca]{flex:1;min-width:0;padding:1.5rem 2rem;overflow-y:auto}.settings-content--fullpage[data-v-91a230ca]{flex-direction:column;min-height:0;padding:0;display:flex;overflow:hidden}.settings-content--fullpage[data-v-91a230ca] .api-docs{flex:1;min-height:0}@media (max-width:640px){.settings-layout[data-v-91a230ca]{flex-direction:column}.settings-nav[data-v-91a230ca]{border-right:none;border-bottom:1px solid var(--p-content-border-color);flex-direction:row;align-items:center;width:100%;padding:.5rem 0;position:relative}.settings-nav__title[data-v-91a230ca]{display:none}.settings-nav__list[data-v-91a230ca]{scrollbar-width:none;flex-direction:row;flex:1;gap:0;padding:0 .25rem;overflow-x:auto}.settings-nav__list[data-v-91a230ca]::-webkit-scrollbar{display:none}.settings-nav__item[data-v-91a230ca]{white-space:nowrap;border-radius:6px;flex-direction:column;flex-shrink:0;gap:.25rem;margin:0;padding:.4rem .75rem;font-size:.7rem}.settings-nav__icon[data-v-91a230ca]{font-size:1rem}.settings-nav__chevron[data-v-91a230ca]{cursor:pointer;width:2rem;height:2rem;color:var(--p-text-muted-color);background:0 0;border:none;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;transition:background .15s,color .15s;display:flex}.settings-nav__chevron[data-v-91a230ca]:hover{background:var(--p-content-hover-background);color:var(--p-text-color)}.settings-content[data-v-91a230ca]{padding:1rem}}@media (min-width:641px){.settings-nav__chevron[data-v-91a230ca]{display:none}}.section-header[data-v-91a230ca]{margin-bottom:1.5rem}.section-header--has-actions[data-v-91a230ca]{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.section-header__text[data-v-91a230ca]{flex:1;min-width:0}.section-header__actions[data-v-91a230ca]{flex-shrink:0;align-self:center}.section-title[data-v-91a230ca]{margin:0 0 .25rem;font-size:1.25rem;font-weight:700}.section-desc[data-v-91a230ca]{color:var(--p-text-muted-color);margin:0;font-size:.875rem}
@@ -1 +1 @@
1
- import{Bn as e,Cn as t,Dn as n,Hi as r,Na as i,Ri as ee,Yn as a,Zt as o,aa as s,ai as te,an as c,c as l,di as u,fa as d,fi as f,in as p,ji as m,l as h,mi as g,pi as _,rn as v,si as y,tn as b,u as x,ui as S,vi as C,wa as w,xi as T,yi as E,yn as ne,zn as D}from"./index-K7kdEsBo.js";import{t as O}from"./message-VrL-0XTF.js";import{t as k}from"./password-IByxJqSm.js";import{t as A}from"./card-CLPFpENW.js";import{t as j}from"./VersionBadge-Buin8AuA.js";var M={class:`unlock-container`},N={class:`unlock-header`},P={class:`unlock-title`,"data-testid":`unlock-title`},F={class:`unlock-subtitle`},I={class:`field`},L={for:`masterPassword`},R={key:0,class:`field`},z={for:`encryptionKey`},B={class:`field-help`},V=t(T({__name:`UnlockPage`,setup(t){let T=e(),V=D(),{t:H}=a(),U=h(),W=x(),G=w(``),K=w(``),q=w(``),J=w(!1),Y=w(null),X=w(null);function Z(){m(()=>{(X.value?.$el?.querySelector(`input`))?.focus()})}let Q=S(()=>Y.value?.state===`setup`);ee(async()=>{Z();try{Y.value=await b(),Y.value.state===`unlocked`&&await $()}catch{q.value=H(`unlockPage.serverUnreachable`)}});async function re(){q.value=``,J.value=!0;try{let e;if(Y.value?.state===`setup`){let t=Y.value.hasVerifyFile&&!Y.value.isLegacyMigration&&K.value||void 0;e=await p(G.value,t)}else e=await c(G.value);v(e),await l({loadPreferences:()=>W.loadPreferences(),initTrpcWs:o,startStatusStream:()=>U.startStatusStream()}),await $()}catch(e){q.value=e instanceof Error?e.message:H(`unlockPage.unknownError`),Z()}finally{J.value=!1}}async function $(){try{if((await b()).legacyVault){await T.push({name:`migrate-vault`});return}}catch{}let e=V.query.redirect;e&&e.startsWith(`/`)?await T.push(e):await T.push({name:`launch-project`})}return(e,t)=>(r(),g(`div`,M,[E(i(A),{class:`unlock-card`},{header:s(()=>[u(`div`,N,[u(`h1`,P,d(Q.value?i(H)(`unlockPage.titleSetup`):i(H)(`unlockPage.titleLocked`)),1),u(`p`,F,[Q.value&&Y.value?.isLegacyMigration?(r(),g(y,{key:0},[C(d(i(H)(`unlockPage.subtitleLegacyMigration`)),1)],64)):Q.value&&Y.value?.hasVerifyFile?(r(),g(y,{key:1},[C(d(i(H)(`unlockPage.subtitleHasVerifyFile`)),1)],64)):Q.value?(r(),g(y,{key:2},[C(d(i(H)(`unlockPage.subtitleSetup`)),1)],64)):(r(),g(y,{key:3},[C(d(i(H)(`unlockPage.subtitleUnlock`)),1)],64))])])]),content:s(()=>[u(`form`,{onSubmit:te(re,[`prevent`]),class:`unlock-form`},[u(`div`,I,[u(`label`,L,d(i(H)(`unlockPage.masterPasswordLabel`)),1),E(i(k),{ref_key:`passwordRef`,ref:X,id:`masterPassword`,"data-testid":`master-password-input`,modelValue:G.value,"onUpdate:modelValue":t[0]||=e=>G.value=e,feedback:Q.value,toggleMask:``,fluid:``,disabled:J.value,autocomplete:Q.value?`new-password`:`current-password`,placeholder:i(H)(`unlockPage.masterPasswordPlaceholder`)},null,8,[`modelValue`,`feedback`,`disabled`,`autocomplete`,`placeholder`])]),Q.value&&Y.value?.hasVerifyFile&&!Y.value?.isLegacyMigration?(r(),g(`div`,R,[u(`label`,z,d(i(H)(`unlockPage.encryptionKeyLabel`)),1),E(i(ne),{id:`encryptionKey`,"data-testid":`encryption-key-input`,modelValue:K.value,"onUpdate:modelValue":t[1]||=e=>K.value=e,fluid:``,disabled:J.value,placeholder:i(H)(`unlockPage.encryptionKeyPlaceholder`),autocomplete:`off`},null,8,[`modelValue`,`disabled`,`placeholder`]),u(`small`,B,d(i(H)(`unlockPage.encryptionKeyHelp`)),1)])):_(``,!0),q.value?(r(),f(i(O),{key:1,severity:`error`,closable:!1,"data-testid":`unlock-error`},{default:s(()=>[C(d(q.value),1)]),_:1})):_(``,!0),Q.value?(r(),f(i(O),{key:2,severity:`info`,closable:!1,class:`machine-warning`},{default:s(()=>[C(d(i(H)(`unlockPage.machineWarning`)),1)]),_:1})):_(``,!0),E(i(n),{type:`submit`,"data-testid":`unlock-submit-btn`,label:J.value?i(H)(`unlockPage.pleaseWait`):Q.value?i(H)(`unlockPage.configure`):i(H)(`unlockPage.unlock`),disabled:J.value||!G.value,loading:J.value,fluid:``},null,8,[`label`,`disabled`,`loading`])],32)]),_:1}),E(j)]))}}),[[`__scopeId`,`data-v-173e2585`]]);export{V as default};
1
+ import{Bn as e,Cn as t,Dn as n,Hi as r,Na as i,Ri as ee,Yn as a,Zt as o,aa as s,ai as te,an as c,c as l,di as u,fa as d,fi as f,in as p,ji as m,l as h,mi as g,pi as _,rn as v,si as y,tn as b,u as x,ui as S,vi as C,wa as w,xi as T,yi as E,yn as ne,zn as D}from"./index-GxI3bOA0.js";import{t as O}from"./message-DUmeTDJC.js";import{t as k}from"./password-BjWenHiO.js";import{t as A}from"./card-DtzNVDSZ.js";import{t as j}from"./VersionBadge-D-5Wk-zP.js";var M={class:`unlock-container`},N={class:`unlock-header`},P={class:`unlock-title`,"data-testid":`unlock-title`},F={class:`unlock-subtitle`},I={class:`field`},L={for:`masterPassword`},R={key:0,class:`field`},z={for:`encryptionKey`},B={class:`field-help`},V=t(T({__name:`UnlockPage`,setup(t){let T=e(),V=D(),{t:H}=a(),U=h(),W=x(),G=w(``),K=w(``),q=w(``),J=w(!1),Y=w(null),X=w(null);function Z(){m(()=>{(X.value?.$el?.querySelector(`input`))?.focus()})}let Q=S(()=>Y.value?.state===`setup`);ee(async()=>{Z();try{Y.value=await b(),Y.value.state===`unlocked`&&await $()}catch{q.value=H(`unlockPage.serverUnreachable`)}});async function re(){q.value=``,J.value=!0;try{let e;if(Y.value?.state===`setup`){let t=Y.value.hasVerifyFile&&!Y.value.isLegacyMigration&&K.value||void 0;e=await p(G.value,t)}else e=await c(G.value);v(e),await l({loadPreferences:()=>W.loadPreferences(),initTrpcWs:o,startStatusStream:()=>U.startStatusStream()}),await $()}catch(e){q.value=e instanceof Error?e.message:H(`unlockPage.unknownError`),Z()}finally{J.value=!1}}async function $(){try{if((await b()).legacyVault){await T.push({name:`migrate-vault`});return}}catch{}let e=V.query.redirect;e&&e.startsWith(`/`)?await T.push(e):await T.push({name:`launch-project`})}return(e,t)=>(r(),g(`div`,M,[E(i(A),{class:`unlock-card`},{header:s(()=>[u(`div`,N,[u(`h1`,P,d(Q.value?i(H)(`unlockPage.titleSetup`):i(H)(`unlockPage.titleLocked`)),1),u(`p`,F,[Q.value&&Y.value?.isLegacyMigration?(r(),g(y,{key:0},[C(d(i(H)(`unlockPage.subtitleLegacyMigration`)),1)],64)):Q.value&&Y.value?.hasVerifyFile?(r(),g(y,{key:1},[C(d(i(H)(`unlockPage.subtitleHasVerifyFile`)),1)],64)):Q.value?(r(),g(y,{key:2},[C(d(i(H)(`unlockPage.subtitleSetup`)),1)],64)):(r(),g(y,{key:3},[C(d(i(H)(`unlockPage.subtitleUnlock`)),1)],64))])])]),content:s(()=>[u(`form`,{onSubmit:te(re,[`prevent`]),class:`unlock-form`},[u(`div`,I,[u(`label`,L,d(i(H)(`unlockPage.masterPasswordLabel`)),1),E(i(k),{ref_key:`passwordRef`,ref:X,id:`masterPassword`,"data-testid":`master-password-input`,modelValue:G.value,"onUpdate:modelValue":t[0]||=e=>G.value=e,feedback:Q.value,toggleMask:``,fluid:``,disabled:J.value,autocomplete:Q.value?`new-password`:`current-password`,placeholder:i(H)(`unlockPage.masterPasswordPlaceholder`)},null,8,[`modelValue`,`feedback`,`disabled`,`autocomplete`,`placeholder`])]),Q.value&&Y.value?.hasVerifyFile&&!Y.value?.isLegacyMigration?(r(),g(`div`,R,[u(`label`,z,d(i(H)(`unlockPage.encryptionKeyLabel`)),1),E(i(ne),{id:`encryptionKey`,"data-testid":`encryption-key-input`,modelValue:K.value,"onUpdate:modelValue":t[1]||=e=>K.value=e,fluid:``,disabled:J.value,placeholder:i(H)(`unlockPage.encryptionKeyPlaceholder`),autocomplete:`off`},null,8,[`modelValue`,`disabled`,`placeholder`]),u(`small`,B,d(i(H)(`unlockPage.encryptionKeyHelp`)),1)])):_(``,!0),q.value?(r(),f(i(O),{key:1,severity:`error`,closable:!1,"data-testid":`unlock-error`},{default:s(()=>[C(d(q.value),1)]),_:1})):_(``,!0),Q.value?(r(),f(i(O),{key:2,severity:`info`,closable:!1,class:`machine-warning`},{default:s(()=>[C(d(i(H)(`unlockPage.machineWarning`)),1)]),_:1})):_(``,!0),E(i(n),{type:`submit`,"data-testid":`unlock-submit-btn`,label:J.value?i(H)(`unlockPage.pleaseWait`):Q.value?i(H)(`unlockPage.configure`):i(H)(`unlockPage.unlock`),disabled:J.value||!G.value,loading:J.value,fluid:``},null,8,[`label`,`disabled`,`loading`])],32)]),_:1}),E(j)]))}}),[[`__scopeId`,`data-v-173e2585`]]);export{V as default};
@@ -1 +1 @@
1
- import{Cn as e,Dn as t,Gn as n,Hi as r,Na as i,Pi as a,Ri as o,Rt as s,Tn as ee,Wi as te,Yn as ne,aa as c,ai as re,da as ie,di as l,ea as u,fa as d,fi as f,ji as p,la as m,ln as ae,mi as h,pi as g,rt as oe,si as _,ta as se,ui as v,vi as y,vn as b,wa as x,xi as S,yi as C,yn as w}from"./index-K7kdEsBo.js";import{t as ce}from"./message-VrL-0XTF.js";import{t as T}from"./uuid-FpfcaBnR.js";import{n as E,t as D}from"./column-grBnjbWs.js";import{t as le}from"./toggleswitch-BNzkwtak.js";import{t as O}from"./autocomplete-0aIbUwlr.js";var k={key:0,class:`env-badge`},A={class:`env-badge__name`},j=e(S({__name:`EnvironmentBadge`,props:{environmentId:{}},setup(e){let t=e,n=s(),i=v(()=>n.getById(t.environmentId));function a(e){if(e)return e.startsWith(`#`)?e:`#${e}`}return(e,t)=>i.value?(r(),h(`span`,k,[l(`span`,{class:`env-badge__swatch`,style:ie({backgroundColor:a(i.value.bgColor)||a(i.value.color)||`var(--p-primary-color)`})},null,4),l(`span`,A,d(i.value.name),1)])):g(``,!0)}}),[[`__scopeId`,`data-v-b70e647b`]]),M={class:`ref-group`},ue={class:`ref-option`},de={key:0,class:`pi pi-lock ref-option-secret`},N={key:1,class:`ref-option-preview`},P=40,F=e(S({__name:`VariableRefInput`,props:{modelValue:{},inputId:{},placeholder:{default:``},disabled:{type:Boolean,default:!1},envKeys:{default:()=>[]},meta:{default:()=>({})},resolvedEnv:{default:()=>({})},serviceBuiltins:{default:()=>({})}},emits:[`update:modelValue`,`search`,`focus`,`blur`,`picked`],setup(e,{emit:t}){let n=/^\{\{(.+)\}\}$/,a=/\{\{([^}]*)$/,o=e,s=t,{t:ee}=ne(),te=x(``),re=x(``),ie=x([]);function u(){let e=te.value.toLowerCase(),t=Object.keys(o.serviceBuiltins).filter(t=>t.toLowerCase().includes(e)).map(e=>`{{${e}}}`),n=o.envKeys.map(e=>`{{environment.${e}}}`);return[...t.length?[{label:ee(`variableRefInput.groupBuiltins`),items:t}]:[],...n.length?[{label:ee(`variableRefInput.groupEnvironment`),items:n}]:[]]}function p(){ie.value=u()}se(()=>[o.envKeys,o.serviceBuiltins],p,{deep:!0});function m(e){let t=e.match(n);return t?t[1].replace(/^environment\./,``):e}function ae(e){let t=e.match(n);return!t||!t[1].startsWith(`environment.`)?!1:o.meta[t[1].slice(12)]?.isSecret??!1}function oe(e){let t=e.match(n);if(!t)return null;let r=t[1];if(!r.startsWith(`environment.`)){let e=o.serviceBuiltins[r];return e?_(e):null}let i=r.slice(12),a=o.meta[i];if(!a||a.isSecret)return null;let s=o.resolvedEnv[i];return s?_(s):null}function _(e){return e.length>P?`${e.slice(0,P)}…`:e}function v(e){if(re.value=e.query,y)y=!1,te.value=``;else{let t=e.query.match(a);te.value=(t?t[1]:e.query).replace(/^(environment|service)\./,``).trim()}s(`search`,te.value),p()}let y=!1;function S(){y=!0,s(`focus`)}function w(e){let t=re.value,n=t.lastIndexOf(`{{`);s(`update:modelValue`,n===-1?e:t.slice(0,n)+e),s(`picked`)}return(t,n)=>(r(),f(i(O),{"input-id":e.inputId,"model-value":e.modelValue,suggestions:ie.value,"option-group-label":`label`,"option-group-children":`items`,placeholder:e.placeholder,class:`w-full`,"complete-on-focus":``,disabled:e.disabled,"onUpdate:modelValue":n[0]||=e=>s(`update:modelValue`,e),onComplete:v,onItemSelect:n[1]||=e=>w(e.value),onFocus:S,onBlur:n[2]||=e=>s(`blur`)},{optiongroup:c(({option:e})=>[l(`span`,M,d(e.label),1)]),option:c(({option:e})=>[l(`span`,ue,[C(i(b),{severity:`secondary`,value:m(e)},null,8,[`value`]),ae(e)?(r(),h(`i`,de)):oe(e)?(r(),h(`span`,N,d(oe(e)),1)):g(``,!0)])]),_:1},8,[`input-id`,`model-value`,`suggestions`,`placeholder`,`disabled`]))}}),[[`__scopeId`,`data-v-322f20cf`]]),fe={class:`key-row`},pe={class:`expansion-field expansion-field--key`},me=[`for`],he={key:2,class:`value-display`},I={key:0,class:`expansion-field expansion-field--toggle`},ge={class:`expansion-label`,for:`varrow-secret`},_e={key:1,class:`expansion-field expansion-field--toggle`},L=[`title`],R={key:2,class:`key-row-delete`},ve={key:0,class:`not-secret-warning`},ye={class:`expansion-section`},z={class:`section-title`},B={class:`section-fields`},V={class:`expansion-field expansion-field--prepost`},be={class:`expansion-label`,for:`varrow-prefix`},xe={key:2,class:`value-display`},Se={class:`expansion-field expansion-field--value`},H=[`for`],Ce=[`aria-label`],U={class:`value-help`},we={class:`value-help__title`},Te={class:`value-help__line`},Ee={class:`value-help__line value-help__line--muted`},De={class:`value-help__subtitle`},Oe={class:`value-help__builtins`},ke={class:`value-help__line value-help__line--muted`},Ae={key:0,class:`secret-input-wrap`},je=[`disabled`],Me=[`title`],Ne={key:1,class:`value-display value-display--with-actions`},Pe={key:0,class:`value-actions`},Fe={key:0},Ie={key:1},Le={class:`expansion-field expansion-field--prepost`},Re={class:`expansion-label`,for:`varrow-suffix`},ze={key:2,class:`value-display`},Be={key:0,class:`preview-value`},Ve={key:0,class:`prepost-part prepost-part--pre`},He={key:1,class:`prepost-part prepost-part--interpolation`},Ue={class:`prepost-part--value prepost-resolved-inline`},We=[`title`],Ge={key:2,class:`prepost-part prepost-part--value`},Ke={key:3,class:`prepost-part prepost-part--post`},qe={key:1,class:`expansion-section`},Je={class:`section-header`},Ye={class:`section-title`},Xe={class:`section-fields`},Ze={class:`expansion-field expansion-field--prepost`},Qe={class:`expansion-label`,for:`varrow-override-prefix`},$e={class:`expansion-field expansion-field--value`},et=[`for`],tt={key:0,class:`secret-input-wrap`},nt=[`disabled`],rt=[`title`],it={class:`expansion-field expansion-field--prepost`},at={class:`expansion-label`,for:`varrow-override-suffix`},ot={key:1,class:`override-view`},st={key:0,class:`value-display--with-actions`},ct={class:`value-actions`},lt={key:0,class:`override-value-masked`},ut={key:1,class:`override-value`},dt={key:1,class:`override-value`},ft={key:1,class:`override-empty`},pt={key:0,class:`preview-value preview-value--override`},mt={key:0,class:`prepost-part prepost-part--pre`},ht={key:1,class:`prepost-part prepost-part--interpolation`},gt={key:0,class:`prepost-part--value prepost-resolved-inline`},_t={key:2,class:`prepost-part prepost-part--value`},vt={key:3,class:`prepost-part prepost-part--post`},yt=`{{environment.KEY}}`,W=e(S({__name:`VariableRowEditor`,props:{environmentId:{},variableId:{},overrides:{},editable:{type:Boolean,default:!0},showOverrides:{type:Boolean,default:!1},canEditSource:{type:Boolean,default:!1},showDelete:{type:Boolean,default:!0},showOverrideBadge:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},resolvedEnv:{default:()=>({})},autocompleteEnabled:{type:Boolean,default:!1},autocompleteSuggestions:{default:()=>[]},autocompleteMeta:{default:()=>({})},serviceBuiltins:{default:()=>({})},isPending:{type:Boolean,default:!1}},emits:[`deleted`,`saved`,`autocomplete-search`,`override-changed`,`edit-source`],setup(e,{emit:a}){let ee=/^\{\{(.+)\}\}$/,ie=/^\{\{environment\.(.+)\}\}$/,u=e,p=a,S=s(),ce=n(),{t:T}=ne(),E=x(!1),D=x(!1),k=x(!1),A=x(!1),j=x(!1),M=x(null);function ue(e,t){navigator.clipboard.writeText(t),M.value=e,setTimeout(()=>{M.value===e&&(M.value=null)},1500)}let de=v(()=>S.getById(u.environmentId)?.variables?.[u.variableId]),N=x(``),P=x(``),W=x(``),G=x(``),bt=x(!1),xt=x(!1),St=v(()=>Z(P.value)),K=v(()=>bt.value&&!St.value);function Ct(){let e=de.value;N.value=e?.key??``,P.value=e?.value?.value??``,W.value=e?.value?.pre??``,G.value=e?.value?.post??``,bt.value=e?.value?.isSecret??!1,xt.value=e?.value?.injectIntoAi??!1}o(Ct),se(de,(e,t)=>{!t&&e&&Ct()});let q=v(()=>u.overrides[u.variableId]??null),J=x(``),Y=x(``),X=x(``);function wt(){let e=q.value;J.value=e?.pre??``,Y.value=e?.value??``,X.value=e?.post??``}o(wt),se(q,wt);function Z(e){return ee.test(e)}function Tt(e){let t=e.match(ee);return t?t[1].replace(/^environment\./,``):e}function Et(e){return e.replace(/\{\{environment\.([^}]+)\}\}/g,(e,t)=>u.resolvedEnv[t]??e)}function Dt(e){let t=e.match(ie);return t?u.resolvedEnv[t[1]]??null:null}function Ot(e){let t=e.value;N.value=t,P.value=`{{environment.${t}}}`,bt.value=!1;let n=u.autocompleteMeta?.[t];n&&(W.value=n.pre,G.value=n.post),Q()}let kt=x(null),At=v(()=>oe.map(e=>({ref:`{{${e.name}}}`,desc:T(`builtins.${e.descriptionKey}`)})));async function Q(){if(E.value)return;let e=N.value.trim();if(e){E.value=!0;try{await S.upsertVariable(u.environmentId,u.variableId,{key:e,value:{value:P.value,pre:W.value,post:G.value,isSecret:K.value,injectIntoAi:xt.value}}),u.isPending&&p(`saved`)}catch(e){ce.add({severity:`error`,summary:T(`common.error`),detail:e.message??T(`variableRowEditor.saveError`),life:4e3})}finally{E.value=!1}}}async function jt(){if(u.isPending){p(`deleted`);return}E.value=!0;try{q.value&&await S.removeOverride(u.variableId),await S.removeVariable(u.environmentId,u.variableId),p(`deleted`)}catch(e){ce.add({severity:`error`,summary:T(`common.error`),detail:e.message??T(`variableRowEditor.deleteError`),life:4e3})}finally{E.value=!1}}async function $(){let e=J.value||Y.value||X.value;try{if(!e){q.value&&(await S.removeOverride(u.variableId),p(`override-changed`));return}await S.setOverride(u.variableId,{value:{value:Y.value,pre:J.value,post:X.value,isSecret:K.value}}),p(`override-changed`)}catch(e){ce.add({severity:`error`,summary:T(`common.error`),detail:e.message??T(`variableRowEditor.overrideError`),life:4e3})}}async function Mt(){try{await S.removeOverride(u.variableId),p(`override-changed`)}catch(e){ce.add({severity:`error`,summary:T(`common.error`),detail:e.message??T(`variableRowEditor.clearOverrideError`),life:4e3})}}function Nt(e){let t=e.relatedTarget;(!t||!e.currentTarget.contains(t))&&Q()}return(n,a)=>(r(),h(`div`,{class:`expansion-form`,onFocusout:Nt},[l(`div`,fe,[l(`div`,pe,[l(`label`,{class:`expansion-label`,for:e.editable&&e.autocompleteEnabled?`varrow-key-ac`:`varrow-key-input`},d(i(T)(`common.key`)),9,me),e.editable&&e.autocompleteEnabled?(r(),f(i(O),{key:0,"input-id":`varrow-key-ac`,modelValue:N.value,"onUpdate:modelValue":a[0]||=e=>N.value=e,suggestions:e.autocompleteSuggestions,placeholder:i(T)(`variableRowEditor.variableNamePlaceholder`),class:`w-full`,disabled:e.disabled,onComplete:a[1]||=e=>p(`autocomplete-search`,e.query),onItemSelect:Ot,onBlur:Q},null,8,[`modelValue`,`suggestions`,`placeholder`,`disabled`])):e.editable?(r(),f(i(w),{key:1,id:`varrow-key-input`,modelValue:N.value,"onUpdate:modelValue":a[2]||=e=>N.value=e,placeholder:i(T)(`variableRowEditor.variableNamePlaceholder`),class:`w-full`,disabled:e.disabled,onBlur:Q},null,8,[`modelValue`,`placeholder`,`disabled`])):(r(),h(`code`,he,d(N.value),1))]),e.editable&&!St.value?(r(),h(`div`,I,[l(`label`,ge,d(i(T)(`variableRowEditor.secret`)),1),C(i(le),{"input-id":`varrow-secret`,modelValue:bt.value,"onUpdate:modelValue":[a[3]||=e=>bt.value=e,Q],disabled:e.disabled},null,8,[`modelValue`,`disabled`])])):g(``,!0),e.editable?(r(),h(`div`,_e,[l(`label`,{class:`expansion-label`,for:`varrow-injectai`,title:i(T)(`variableRowEditor.injectIntoAiHint`)},d(i(T)(`variableRowEditor.injectIntoAi`)),9,L),C(i(le),{"input-id":`varrow-injectai`,modelValue:xt.value,"onUpdate:modelValue":[a[4]||=e=>xt.value=e,Q],disabled:e.disabled},null,8,[`modelValue`,`disabled`])])):g(``,!0),e.showDelete&&e.editable?(r(),h(`div`,R,[C(i(t),{icon:`pi pi-trash`,severity:`danger`,text:``,rounded:``,size:`small`,disabled:e.disabled||E.value,onClick:jt},null,8,[`disabled`])])):g(``,!0)]),e.editable&&!bt.value&&!Z(P.value)?(r(),h(`div`,ve,[a[53]||=l(`i`,{class:`pi pi-info-circle`},null,-1),l(`span`,null,d(i(T)(`variableRowEditor.notSecretWarning`)),1)])):g(``,!0),l(`div`,ye,[l(`div`,z,d(i(T)(`variableRowEditor.value`)),1),l(`div`,B,[l(`div`,V,[l(`label`,be,d(i(T)(`variableRowEditor.prefix`)),1),e.editable&&e.autocompleteEnabled?(r(),f(F,{key:0,"input-id":`varrow-prefix`,modelValue:W.value,"onUpdate:modelValue":a[5]||=e=>W.value=e,placeholder:i(T)(`variableRowEditor.prefixPlaceholder`),"env-keys":e.autocompleteSuggestions,meta:e.autocompleteMeta,"resolved-env":e.resolvedEnv,"service-builtins":e.serviceBuiltins,disabled:e.disabled,onSearch:a[6]||=e=>p(`autocomplete-search`,e),onBlur:a[7]||=e=>Q(),onPicked:a[8]||=e=>Q()},null,8,[`modelValue`,`placeholder`,`env-keys`,`meta`,`resolved-env`,`service-builtins`,`disabled`])):e.editable?(r(),f(i(w),{key:1,id:`varrow-prefix`,modelValue:W.value,"onUpdate:modelValue":a[9]||=e=>W.value=e,placeholder:i(T)(`variableRowEditor.prefixPlaceholder`),class:`w-full`,disabled:e.disabled,onBlur:Q},null,8,[`modelValue`,`placeholder`,`disabled`])):(r(),h(`code`,xe,d(W.value||`—`),1))]),l(`div`,Se,[l(`label`,{class:`expansion-label`,for:K.value?`varrow-value-secret`:`varrow-value-plain`},[y(d(i(T)(`variableRowEditor.value`))+` `,1),e.editable?(r(),h(`button`,{key:0,type:`button`,class:`value-help-btn`,"aria-label":i(T)(`variableRowEditor.helpTitle`),onClick:a[10]||=re(e=>kt.value?.toggle(e),[`prevent`,`stop`])},[...a[54]||=[l(`i`,{class:`pi pi-info-circle`},null,-1)]],8,Ce)):g(``,!0)],8,H),C(i(ae),{ref_key:`valueHelp`,ref:kt},{default:c(()=>[l(`div`,U,[l(`div`,we,d(i(T)(`variableRowEditor.helpTitle`)),1),l(`p`,Te,[y(d(i(T)(`variableRowEditor.helpReference`))+` `,1),l(`code`,null,d(yt))]),l(`p`,Ee,d(i(T)(`variableRowEditor.helpAutocomplete`)),1),l(`div`,De,d(i(T)(`variableRowEditor.helpBuiltinsTitle`)),1),l(`ul`,Oe,[(r(!0),h(_,null,te(At.value,e=>(r(),h(`li`,{key:e.ref},[l(`code`,null,d(e.ref),1),l(`span`,null,d(e.desc),1)]))),128))]),l(`p`,ke,d(i(T)(`variableRowEditor.helpPrePost`)),1)])]),_:1},512),e.editable?(r(),h(_,{key:0},[K.value?(r(),h(`div`,Ae,[C(i(w),{id:`varrow-value-secret`,modelValue:P.value,"onUpdate:modelValue":a[11]||=e=>P.value=e,type:A.value?`text`:`password`,placeholder:i(T)(`variableRowEditor.valuePlaceholder`),class:`w-full`,disabled:e.disabled,onBlur:Q},null,8,[`modelValue`,`type`,`placeholder`,`disabled`]),l(`button`,{type:`button`,class:`secret-toggle`,disabled:e.disabled,onClick:a[12]||=e=>A.value=!A.value,tabindex:`-1`},[l(`i`,{class:m(A.value?`pi pi-eye-slash`:`pi pi-eye`)},null,2)],8,je)])):Z(P.value)&&!D.value?(r(),h(`span`,{key:1,class:`interpolation-badge`,title:P.value,onClick:a[13]||=e=>D.value=!0},[C(i(b),{severity:`secondary`,value:Tt(P.value)},null,8,[`value`]),a[55]||=l(`i`,{class:`pi pi-pencil interpolation-edit-icon`},null,-1)],8,Me)):e.autocompleteEnabled?(r(),f(F,{key:2,"input-id":`varrow-value-plain`,modelValue:P.value,"onUpdate:modelValue":a[14]||=e=>P.value=e,placeholder:i(T)(`variableRowEditor.valuePlaceholder`),"env-keys":e.autocompleteSuggestions,meta:e.autocompleteMeta,"resolved-env":e.resolvedEnv,"service-builtins":e.serviceBuiltins,disabled:e.disabled,onSearch:a[15]||=e=>p(`autocomplete-search`,e),onFocus:a[16]||=e=>D.value=!0,onBlur:a[17]||=e=>{D.value=!1,Q()},onPicked:a[18]||=e=>Q()},null,8,[`modelValue`,`placeholder`,`env-keys`,`meta`,`resolved-env`,`service-builtins`,`disabled`])):(r(),f(i(w),{key:3,id:`varrow-value-plain`,modelValue:P.value,"onUpdate:modelValue":a[19]||=e=>P.value=e,placeholder:i(T)(`variableRowEditor.valuePlaceholder`),class:`w-full`,disabled:e.disabled,onFocus:a[20]||=e=>D.value=!0,onBlur:a[21]||=e=>{D.value=!1,Q()}},null,8,[`modelValue`,`placeholder`,`disabled`]))],64)):(r(),h(`span`,Ne,[P.value?(r(),h(`span`,Pe,[K.value?(r(),h(`i`,{key:0,class:m([A.value?`pi pi-eye-slash`:`pi pi-eye`,`action-icon`]),onClick:a[22]||=e=>A.value=!A.value},null,2)):g(``,!0),l(`i`,{class:m([M.value===`val`?`pi pi-check`:`pi pi-copy`,`action-icon`]),onClick:a[23]||=e=>ue(`val`,W.value+P.value+G.value)},null,2)])):g(``,!0),Z(P.value)?(r(),f(i(b),{key:1,severity:`secondary`,value:Tt(P.value)},null,8,[`value`])):K.value?(r(),h(_,{key:2},[A.value?(r(),h(`span`,Ie,d(P.value),1)):(r(),h(`span`,Fe,`***`))],64)):(r(),h(_,{key:3},[y(d(P.value),1)],64))]))]),l(`div`,Le,[l(`label`,Re,d(i(T)(`variableRowEditor.suffix`)),1),e.editable&&e.autocompleteEnabled?(r(),f(F,{key:0,"input-id":`varrow-suffix`,modelValue:G.value,"onUpdate:modelValue":a[24]||=e=>G.value=e,placeholder:i(T)(`variableRowEditor.suffixPlaceholder`),"env-keys":e.autocompleteSuggestions,meta:e.autocompleteMeta,"resolved-env":e.resolvedEnv,"service-builtins":e.serviceBuiltins,disabled:e.disabled,onSearch:a[25]||=e=>p(`autocomplete-search`,e),onBlur:a[26]||=e=>Q(),onPicked:a[27]||=e=>Q()},null,8,[`modelValue`,`placeholder`,`env-keys`,`meta`,`resolved-env`,`service-builtins`,`disabled`])):e.editable?(r(),f(i(w),{key:1,id:`varrow-suffix`,modelValue:G.value,"onUpdate:modelValue":a[28]||=e=>G.value=e,placeholder:i(T)(`variableRowEditor.suffixPlaceholder`),class:`w-full`,disabled:e.disabled,onBlur:Q},null,8,[`modelValue`,`placeholder`,`disabled`])):(r(),h(`code`,ze,d(G.value||`—`),1))])]),K.value?g(``,!0):(r(),h(`code`,Be,[W.value?(r(),h(`span`,Ve,d(Et(W.value)),1)):g(``,!0),Z(P.value)?(r(),h(`span`,He,[Dt(P.value)==null?(r(),h(_,{key:1},[C(i(b),{severity:`secondary`,value:Tt(P.value),style:{"font-size":`0.7rem`}},null,8,[`value`]),a[56]||=l(`span`,{class:`prepost-unresolved`},`(?)`,-1)],64)):(r(),h(_,{key:0},[l(`span`,Ue,d(Dt(P.value)),1),e.canEditSource?(r(),h(`i`,{key:0,class:`pi pi-pencil edit-source-icon`,title:i(T)(`variablesTable.editParentTitle`),onClick:a[29]||=re(e=>p(`edit-source`),[`stop`])},null,8,We)):g(``,!0)],64))])):(r(),h(`span`,Ge,d(Et(P.value)||`…`),1)),G.value?(r(),h(`span`,Ke,d(Et(G.value)),1)):g(``,!0)]))]),e.showOverrides&&N.value?.trim()?(r(),h(`div`,qe,[l(`div`,Je,[l(`div`,Ye,d(i(T)(`variableRowEditor.localOverride`)),1),e.editable&&q.value?(r(),f(i(t),{key:0,icon:`pi pi-times`,text:``,rounded:``,size:`small`,severity:`danger`,title:i(T)(`variableRowEditor.clearOverride`),disabled:e.disabled,onClick:Mt},null,8,[`title`,`disabled`])):g(``,!0)]),l(`div`,Xe,[e.editable?(r(),h(_,{key:0},[l(`div`,Ze,[l(`label`,Qe,d(i(T)(`variableRowEditor.prefix`)),1),e.autocompleteEnabled?(r(),f(F,{key:0,"input-id":`varrow-override-prefix`,modelValue:J.value,"onUpdate:modelValue":a[30]||=e=>J.value=e,placeholder:i(T)(`variableRowEditor.prefixPlaceholder`),"env-keys":e.autocompleteSuggestions,meta:e.autocompleteMeta,"resolved-env":e.resolvedEnv,"service-builtins":e.serviceBuiltins,disabled:e.disabled,onSearch:a[31]||=e=>p(`autocomplete-search`,e),onBlur:a[32]||=e=>$(),onPicked:a[33]||=e=>$()},null,8,[`modelValue`,`placeholder`,`env-keys`,`meta`,`resolved-env`,`service-builtins`,`disabled`])):(r(),f(i(w),{key:1,id:`varrow-override-prefix`,modelValue:J.value,"onUpdate:modelValue":a[34]||=e=>J.value=e,placeholder:i(T)(`variableRowEditor.prefixPlaceholder`),class:`w-full`,disabled:e.disabled,onBlur:$},null,8,[`modelValue`,`placeholder`,`disabled`]))]),l(`div`,$e,[l(`label`,{class:`expansion-label`,for:K.value?`varrow-override-value-secret`:`varrow-override-value-plain`},d(i(T)(`variableRowEditor.value`)),9,et),K.value?(r(),h(`div`,tt,[C(i(w),{id:`varrow-override-value-secret`,modelValue:Y.value,"onUpdate:modelValue":a[35]||=e=>Y.value=e,type:j.value?`text`:`password`,placeholder:i(T)(`variableRowEditor.overrideValuePlaceholder`),class:`w-full`,disabled:e.disabled,onBlur:$},null,8,[`modelValue`,`type`,`placeholder`,`disabled`]),l(`button`,{type:`button`,class:`secret-toggle`,disabled:e.disabled,onClick:a[36]||=e=>j.value=!j.value,tabindex:`-1`},[l(`i`,{class:m(j.value?`pi pi-eye-slash`:`pi pi-eye`)},null,2)],8,nt)])):Z(Y.value)&&!k.value?(r(),h(`span`,{key:1,class:`interpolation-badge`,title:Y.value,onClick:a[37]||=e=>k.value=!0},[C(i(b),{severity:`secondary`,value:Tt(Y.value)},null,8,[`value`]),a[57]||=l(`i`,{class:`pi pi-pencil interpolation-edit-icon`},null,-1)],8,rt)):e.autocompleteEnabled?(r(),f(F,{key:2,"input-id":`varrow-override-value-plain`,modelValue:Y.value,"onUpdate:modelValue":a[38]||=e=>Y.value=e,placeholder:i(T)(`variableRowEditor.overrideValuePlaceholder`),"env-keys":e.autocompleteSuggestions,meta:e.autocompleteMeta,"resolved-env":e.resolvedEnv,"service-builtins":e.serviceBuiltins,disabled:e.disabled,onSearch:a[39]||=e=>p(`autocomplete-search`,e),onFocus:a[40]||=e=>k.value=!0,onBlur:a[41]||=e=>{k.value=!1,$()},onPicked:a[42]||=e=>$()},null,8,[`modelValue`,`placeholder`,`env-keys`,`meta`,`resolved-env`,`service-builtins`,`disabled`])):(r(),f(i(w),{key:3,id:`varrow-override-value-plain`,modelValue:Y.value,"onUpdate:modelValue":a[43]||=e=>Y.value=e,placeholder:i(T)(`variableRowEditor.overrideValuePlaceholder`),class:`w-full`,disabled:e.disabled,onFocus:a[44]||=e=>k.value=!0,onBlur:a[45]||=e=>{k.value=!1,$()}},null,8,[`modelValue`,`placeholder`,`disabled`]))]),l(`div`,it,[l(`label`,at,d(i(T)(`variableRowEditor.suffix`)),1),e.autocompleteEnabled?(r(),f(F,{key:0,"input-id":`varrow-override-suffix`,modelValue:X.value,"onUpdate:modelValue":a[46]||=e=>X.value=e,placeholder:i(T)(`variableRowEditor.suffixPlaceholder`),"env-keys":e.autocompleteSuggestions,meta:e.autocompleteMeta,"resolved-env":e.resolvedEnv,"service-builtins":e.serviceBuiltins,disabled:e.disabled,onSearch:a[47]||=e=>p(`autocomplete-search`,e),onBlur:a[48]||=e=>$(),onPicked:a[49]||=e=>$()},null,8,[`modelValue`,`placeholder`,`env-keys`,`meta`,`resolved-env`,`service-builtins`,`disabled`])):(r(),f(i(w),{key:1,id:`varrow-override-suffix`,modelValue:X.value,"onUpdate:modelValue":a[50]||=e=>X.value=e,placeholder:i(T)(`variableRowEditor.suffixPlaceholder`),class:`w-full`,disabled:e.disabled,onBlur:$},null,8,[`modelValue`,`placeholder`,`disabled`]))])],64)):(r(),h(`div`,ot,[q.value?(r(),h(`span`,st,[l(`span`,ct,[K.value||q.value.isSecret?(r(),h(`i`,{key:0,class:m([j.value?`pi pi-eye-slash`:`pi pi-eye`,`action-icon`]),onClick:a[51]||=e=>j.value=!j.value},null,2)):g(``,!0),l(`i`,{class:m([M.value===`ovr`?`pi pi-check`:`pi pi-copy`,`action-icon`]),onClick:a[52]||=e=>ue(`ovr`,q.value.pre+q.value.value+q.value.post)},null,2)]),K.value||q.value.isSecret?(r(),h(_,{key:0},[j.value?(r(),h(`code`,ut,d(q.value.pre)+d(q.value.value)+d(q.value.post),1)):(r(),h(`span`,lt,`***`))],64)):(r(),h(`code`,dt,d(q.value.pre)+d(q.value.value)+d(q.value.post),1))])):(r(),h(`span`,ft,`—`))]))]),e.editable&&!K.value&&(J.value||Y.value||X.value)?(r(),h(`code`,pt,[J.value?(r(),h(`span`,mt,d(Et(J.value)),1)):g(``,!0),Z(Y.value)?(r(),h(`span`,ht,[Dt(Y.value)==null?(r(),h(_,{key:1},[C(i(b),{severity:`secondary`,value:Tt(Y.value),style:{"font-size":`0.7rem`}},null,8,[`value`]),a[58]||=l(`span`,{class:`prepost-unresolved`},`(?)`,-1)],64)):(r(),h(`span`,gt,d(Dt(Y.value)),1))])):(r(),h(`span`,_t,d(Et(Y.value)||`…`),1)),X.value?(r(),h(`span`,vt,d(Et(X.value)),1)):g(``,!0)])):g(``,!0)])):g(``,!0)],32))}}),[[`__scopeId`,`data-v-73035c6d`]]),G={class:`table-toolbar`},bt={key:0,class:`overrides-filter`},xt={for:`overrides-filter`},St={class:`text-center py-4 text-gray-500`},K={class:`row-key-cell`},Ct={class:`row-key-line`},q={class:`row-key`},J=[`title`],Y=[`title`],X={key:1,class:`resolved-from-line`},wt={class:`row-value`},Z=[`title`,`onClick`],Tt=[`title`,`onClick`],Et={key:1,class:`value-levels`},Dt={class:`resolved-level`},Ot={key:0,class:`secret-mask`},kt=[`title`],At={key:0,class:`secret-mask`},Q=[`title`],jt=[`title`],$={key:6,class:`empty-value`},Mt={key:0,class:`override-indicator`},Nt=[`title`,`onClick`],Pt=[`title`,`onClick`],Ft={key:0,class:`override-value-masked`},It=[`title`],Lt=[`title`],Rt={key:0,class:`parent-edit`},zt={class:`parent-edit__field`},Bt={class:`parent-edit__label`,for:`parent-edit-value`},Vt={class:`parent-edit__usages`},Ht={class:`parent-edit__usages-title`},Ut={key:0,class:`parent-edit__usages-loading`},Wt={key:0,class:`parent-edit__usage-list`},Gt={class:`parent-edit__usage-env`},Kt={key:0,class:`parent-edit__usage-svc`},qt={key:1,class:`parent-edit__usages-empty`},Jt=40,Yt=200,Xt=24,Zt=e(S({__name:`VariablesTable`,props:{environmentId:{},resolvedEnv:{default:()=>({})},sources:{default:()=>({})},editable:{type:Boolean,default:!0},showOverrides:{type:Boolean,default:!1},showOverrideBadge:{type:Boolean,default:!1},showDelete:{type:Boolean,default:!0},showAddButton:{type:Boolean,default:!0},disabled:{type:Boolean,default:!1},autocompleteEnabled:{type:Boolean,default:!1},autocompleteSuggestions:{default:()=>[]},autocompleteMeta:{default:()=>({})},serviceBuiltins:{},scrollHeight:{default:`auto`}},emits:[`autocomplete-search`,`variables-changed`],setup(e,{emit:ie}){let ae=/^\{\{(.+)\}\}$/,se=/^\{\{environment\.(.+)\}\}$/,S=Object.fromEntries(oe.map(e=>[e.name,``])),O=e,k=ie,{t:A}=ne(),M=s(),ue=v(()=>Object.keys(O.sources).length>0),de=v(()=>Object.keys(O.resolvedEnv).length>0),N=u(`rootRef`),P=x(null),F=v(()=>O.scrollHeight===`auto`?P.value??`460px`:O.scrollHeight);function fe(){if(O.scrollHeight!==`auto`)return;let e=N.value;if(!e)return;let t=(e.querySelector(`.p-datatable-table-container`)??e).getBoundingClientRect().top,n=window.innerHeight-t-Xt;P.value=`${Math.max(Yt,Math.round(n))}px`}let pe=null;o(()=>{p(fe),window.addEventListener(`resize`,fe),typeof ResizeObserver<`u`&&N.value&&(pe=new ResizeObserver(()=>fe()),pe.observe(document.body))}),a(()=>{window.removeEventListener(`resize`,fe),pe?.disconnect(),pe=null});let me=x(``),he=x(!1),I=x({});async function ge(){if(O.showOverrides)try{let e=await M.getOverrides(),t={};for(let[n,r]of Object.entries(e)){let e=r;t[n]={value:e.value.value,pre:e.value.pre,post:e.value.post,isSecret:e.value.isSecret}}I.value=t}catch{}}o(ge);let _e=v(()=>M.getById(O.environmentId));function L(e){return _e.value?.variables?.[e]}let R=x([]),ve=v(()=>{let e=Object.keys(_e.value?.variables??{}).map(e=>({variableId:e})),t=new Set(e.map(e=>e.variableId)),n=R.value.filter(e=>!t.has(e)).map(e=>({variableId:e}));return[...e,...n]}),ye=u(`tableRef`),z=x({}),B=x([]),V=x(new Set);function be(e){let t=new Set(V.value);t.has(e)?t.delete(e):t.add(e),V.value=t}let xe=x(null);function Se(e,t){navigator.clipboard.writeText(t),xe.value=e,setTimeout(()=>{xe.value===e&&(xe.value=null)},1500)}function H(e){let t=L(e);if(!t)return``;let n=t.value?.value??``;return ze(n)?Ve(n)??n:(t.value?.pre??``)+n+(t.value?.post??``)}let Ce=n(),U=x(null),we=x(!1),Te=x(!1),Ee=x(!1),De=0,Oe=x([]);async function ke(e){let t=O.sources[e]?.resolvedFrom,n=L(e)?.value?.value??``;if(!t||!n)return;let r=Be(n),i=M.getById(t.environmentId),a=Object.entries(i?.variables??{}).find(([,e])=>e.key===r);if(!a){Ce.add({severity:`warn`,summary:A(`variablesTable.editParentNotFound`),life:4e3});return}let[o,s]=a;U.value={key:r,environmentId:t.environmentId,environmentName:t.environmentName,variableId:o,value:s.value?.value??``,pre:s.value?.pre??``,post:s.value?.post??``,isSecret:s.value?.isSecret??!1,injectIntoAi:s.value?.injectIntoAi??!1},Oe.value=[],we.value=!0,Ae(r,t.environmentId)}async function Ae(e,t){let n=++De;Ee.value=!0;try{let r=M.currentProjectId;if(!r)return;let i=await M.keyUsages(r,e,t);if(n!==De)return;Oe.value=[...i.inheritedBy.map(e=>({kind:`inherits`,environmentName:e.environmentName,...e.serviceName?{serviceName:e.serviceName}:{}})),...i.definedIn.map(e=>({kind:`defines`,environmentName:e.environmentName,...e.serviceName?{serviceName:e.serviceName}:{}})),...i.referencedBy.map(e=>({kind:`references`,environmentName:e.environmentName,...e.serviceName?{serviceName:e.serviceName}:{},viaKey:e.key}))]}catch{n===De&&(Oe.value=[])}finally{n===De&&(Ee.value=!1)}}async function je(){let e=U.value;if(e){Te.value=!0;try{await M.upsertVariable(e.environmentId,e.variableId,{key:e.key,value:{value:e.value,pre:e.pre,post:e.post,isSecret:e.isSecret,injectIntoAi:e.injectIntoAi}}),we.value=!1,k(`variables-changed`)}catch(e){Ce.add({severity:`error`,summary:A(`common.error`),detail:e.message,life:4e3})}finally{Te.value=!1}}}function Me(e){let t=I.value[e];return t?t.pre+t.value+t.post:``}let Ne=v(()=>{let e=[...ve.value];if(he.value&&(e=e.filter(e=>!!I.value[e.variableId])),me.value.trim()){let t=me.value.toLowerCase();e=e.filter(e=>{let n=L(e.variableId);if(!n)return!1;if(n.key.toLowerCase().includes(t)||(n.value?.value??``).toLowerCase().includes(t))return!0;let r=I.value[e.variableId];return!!(r&&r.value.toLowerCase().includes(t))})}return B.value.length>0?e.sort((e,t)=>{let n=B.value.indexOf(e.variableId),r=B.value.indexOf(t.variableId);return n===-1?1:r===-1?-1:n-r}):e.sort((e,t)=>{let n=L(e.variableId)?.key??``,r=L(t.variableId)?.key??``;return n?r?n.localeCompare(r):-1:1}),e});function Pe(e){let t=e.data.variableId;z.value[t]?(z.value={},B.value=[],Fe(t)):(B.value=Ne.value.map(e=>e.variableId),z.value={[t]:!0})}function Fe(e){p(()=>{let t=ye.value?.$el;if(!t)return;let n=Ne.value.findIndex(t=>t.variableId===e);n<0||t.querySelectorAll(`tbody tr[data-p-index]`)[n]?.scrollIntoView({block:`nearest`,behavior:`smooth`})})}function Ie(e){R.value=R.value.filter(t=>t!==e),z.value[e]&&(z.value={},B.value=[])}function Le(e){R.value=R.value.filter(t=>t!==e)}function Re(){let e=T();R.value=[...R.value,e],B.value=[...ve.value.map(e=>e.variableId),e],p(()=>{z.value={[e]:!0},p(()=>{let e=document.querySelector(`.variables-expand-table .p-datatable-row-expansion:last-of-type`);e&&e.scrollIntoView({block:`nearest`,behavior:`smooth`})})})}function ze(e){return ae.test(e)}function Be(e){let t=e.match(ae);return t?t[1].replace(/^(?:environment|service)\./,``):e}function Ve(e){let t=e.match(se);if(t)return O.resolvedEnv[t[1]]??null;let n=e.match(ae);if(n){let e={...S,...O.serviceBuiltins};if(e[n[1]])return e[n[1]]}return null}function He(e){return e.length<=Jt?e:e.substring(0,Jt)+`…`}return(n,a)=>(r(),h(_,null,[l(`div`,{ref_key:`rootRef`,ref:N,class:`variables-table`},[l(`div`,G,[C(i(w),{modelValue:me.value,"onUpdate:modelValue":a[0]||=e=>me.value=e,placeholder:`Search variables...`,class:`search-input`,size:`small`},null,8,[`modelValue`]),e.showOverrides?(r(),h(`div`,bt,[C(i(le),{modelValue:he.value,"onUpdate:modelValue":a[1]||=e=>he.value=e,"input-id":`overrides-filter`},null,8,[`modelValue`]),l(`label`,xt,d(i(A)(`variablesTable.overriddenOnly`)),1)])):g(``,!0)]),C(i(E),{ref_key:`tableRef`,ref:ye,"expanded-rows":z.value,"onUpdate:expandedRows":a[5]||=e=>z.value=e,value:Ne.value,"data-key":`variableId`,class:`p-datatable-sm variables-expand-table`,scrollable:``,"scroll-height":F.value,onRowClick:Pe},{empty:c(()=>[l(`div`,St,d(e.showAddButton?i(A)(`variablesTable.empty`):i(A)(`variablesTable.emptyReadonly`)),1)]),expansion:c(({data:t})=>[C(W,{"environment-id":e.environmentId,"variable-id":t.variableId,overrides:I.value,editable:e.editable,"show-overrides":e.showOverrides,"show-delete":e.showDelete,"show-override-badge":e.showOverrideBadge,disabled:e.disabled,"resolved-env":e.resolvedEnv,"autocomplete-enabled":e.autocompleteEnabled,"autocomplete-suggestions":e.autocompleteSuggestions,"autocomplete-meta":e.autocompleteMeta,"service-builtins":{...i(S),...e.serviceBuiltins},"is-pending":R.value.includes(t.variableId),onDeleted:e=>Ie(t.variableId),onSaved:e=>Le(t.variableId),onAutocompleteSearch:a[4]||=e=>k(`autocomplete-search`,e),onOverrideChanged:ge,"can-edit-source":!!e.sources[t.variableId]?.resolvedFrom,onEditSource:e=>ke(t.variableId)},null,8,[`environment-id`,`variable-id`,`overrides`,`editable`,`show-overrides`,`show-delete`,`show-override-badge`,`disabled`,`resolved-env`,`autocomplete-enabled`,`autocomplete-suggestions`,`autocomplete-meta`,`service-builtins`,`is-pending`,`onDeleted`,`onSaved`,`can-edit-source`,`onEditSource`])]),default:c(()=>[C(i(D),{expander:``,style:{width:`2.5rem`}}),C(i(D),{field:`variableId`,header:i(A)(`common.key`)},{body:c(({data:t})=>[l(`div`,K,[l(`span`,Ct,[l(`code`,q,d(L(t.variableId)?.key||`(new variable)`),1),e.sources[t.variableId]?.overriddenBy?(r(),h(`span`,{key:0,class:`overridden-badge overridden-badge--local`,title:i(A)(`variablesTable.localOverrideTooltip`,{env:e.sources[t.variableId].overriddenBy.environmentName})},[a[9]||=l(`i`,{class:`pi pi-desktop`},null,-1),y(` `+d(i(A)(`variablesTable.localOverride`)),1)],8,J)):e.showOverrideBadge&&e.sources[t.variableId]?.overridden&&!ze(L(t.variableId)?.value?.value??``)?(r(),h(`span`,{key:1,class:`overridden-badge`,title:i(A)(`variablesTable.overrideTooltip`)},[a[10]||=l(`i`,{class:`pi pi-exclamation-triangle`},null,-1),y(` `+d(i(A)(`variablesTable.override`)),1)],8,Y)):g(``,!0)]),ue.value&&e.sources[t.variableId]?(r(),f(j,{key:0,"environment-id":e.sources[t.variableId].environmentId,class:`source-badge`},null,8,[`environment-id`])):g(``,!0),ue.value&&e.sources[t.variableId]?.resolvedFrom?(r(),h(`span`,X,[a[11]||=l(`i`,{class:`pi pi-arrow-right resolved-from-arrow`},null,-1),C(j,{"environment-id":e.sources[t.variableId].resolvedFrom.environmentId,class:`source-badge`},null,8,[`environment-id`])])):g(``,!0)])]),_:1},8,[`header`]),C(i(D),{header:i(A)(`common.value`)},{body:c(({data:t})=>[l(`span`,wt,[H(t.variableId)?(r(),h(`span`,{key:0,class:`value-actions`,onClick:a[2]||=re(()=>{},[`stop`])},[L(t.variableId)?.value?.isSecret?(r(),h(`i`,{key:0,class:m([V.value.has(t.variableId)?`pi pi-eye-slash`:`pi pi-eye`,`action-icon`]),title:i(A)(`variablesTable.reveal`),onClick:e=>be(t.variableId)},null,10,Z)):g(``,!0),l(`i`,{class:m([xe.value===t.variableId?`pi pi-check`:`pi pi-copy`,`action-icon`]),title:i(A)(`actions.copy`),onClick:e=>Se(t.variableId,H(t.variableId))},null,10,Tt)])):g(``,!0),ze(L(t.variableId)?.value?.value??``)&&Ve(L(t.variableId)?.value?.value??``)!=null?(r(),h(`span`,Et,[C(i(b),{severity:`secondary`,value:Be(L(t.variableId)?.value?.value??``),class:`interpolation-hint-tag`},null,8,[`value`]),l(`span`,Dt,[L(t.variableId)?.value?.isSecret&&!V.value.has(t.variableId)?(r(),h(`span`,Ot,`***`)):(r(),h(`code`,{key:1,class:`resolved-final`,title:Ve(L(t.variableId)?.value?.value??``)},d(He(Ve(L(t.variableId)?.value?.value??``))),9,kt))])])):ze(L(t.variableId)?.value?.value??``)&&de.value&&Ve(L(t.variableId)?.value?.value??``)==null?(r(),h(_,{key:2},[a[12]||=l(`i`,{class:`pi pi-exclamation-triangle unresolved-icon`},null,-1),C(i(b),{severity:`secondary`,value:Be(L(t.variableId)?.value?.value??``)},null,8,[`value`]),a[13]||=l(`span`,{class:`unresolved-msg`},`Variable not found in this environment`,-1)],64)):ze(L(t.variableId)?.value?.value??``)?(r(),f(i(b),{key:3,severity:`secondary`,value:Be(L(t.variableId)?.value?.value??``)},null,8,[`value`])):L(t.variableId)?.value?.isSecret?(r(),h(_,{key:4},[V.value.has(t.variableId)?(r(),h(`code`,{key:1,title:H(t.variableId)},d(He(H(t.variableId))),9,Q)):(r(),h(`span`,At,`***`))],64)):L(t.variableId)?.value?.value||L(t.variableId)?.value?.pre||L(t.variableId)?.value?.post?(r(),h(`code`,{key:5,title:H(t.variableId)},d(He(H(t.variableId))),9,jt)):(r(),h(`span`,$,`(empty)`))]),e.showOverrides&&!ze(L(t.variableId)?.value?.value??``)&&I.value[t.variableId]?(r(),h(`span`,Mt,[a[14]||=l(`i`,{class:`pi pi-arrow-right`,style:{"font-size":`0.7rem`}},null,-1),l(`span`,{class:`value-actions`,onClick:a[3]||=re(()=>{},[`stop`])},[L(t.variableId)?.value?.isSecret||I.value[t.variableId].isSecret?(r(),h(`i`,{key:0,class:m([V.value.has(`ovr:`+t.variableId)?`pi pi-eye-slash`:`pi pi-eye`,`action-icon`]),title:i(A)(`variablesTable.reveal`),onClick:e=>be(`ovr:`+t.variableId)},null,10,Nt)):g(``,!0),l(`i`,{class:m([xe.value===`ovr:`+t.variableId?`pi pi-check`:`pi pi-copy`,`action-icon`]),title:i(A)(`actions.copy`),onClick:e=>Se(`ovr:`+t.variableId,Me(t.variableId))},null,10,Pt)]),L(t.variableId)?.value?.isSecret||I.value[t.variableId].isSecret?(r(),h(_,{key:0},[V.value.has(`ovr:`+t.variableId)?(r(),h(`code`,{key:1,class:`override-value`,title:Me(t.variableId)},d(He(Me(t.variableId))),9,It)):(r(),h(`span`,Ft,`***`))],64)):(r(),h(`code`,{key:1,class:`override-value`,title:Me(t.variableId)},d(He(Me(t.variableId))),9,Lt))])):g(``,!0)]),_:1},8,[`header`])]),_:1},8,[`expanded-rows`,`value`,`scroll-height`]),e.showAddButton?(r(),f(i(t),{key:0,type:`button`,label:i(A)(`variablesTable.addVariable`),icon:`pi pi-plus`,text:``,disabled:e.disabled,class:`mt-3`,onClick:Re},null,8,[`label`,`disabled`])):g(``,!0)],512),C(i(ee),{visible:we.value,"onUpdate:visible":a[8]||=e=>we.value=e,modal:``,header:i(A)(`variablesTable.editParentHeader`),style:{width:`38rem`,maxWidth:`95vw`}},{footer:c(()=>[C(i(t),{label:i(A)(`actions.cancel`),text:``,disabled:Te.value,onClick:a[7]||=e=>we.value=!1},null,8,[`label`,`disabled`]),C(i(t),{label:i(A)(`variablesTable.editParentConfirm`),severity:`warn`,loading:Te.value,onClick:je},null,8,[`label`,`loading`])]),default:c(()=>[U.value?(r(),h(`div`,Rt,[C(i(ce),{severity:`warn`,closable:!1,class:`parent-edit__warning`},{default:c(()=>[y(d(i(A)(`variablesTable.editParentWarning`,{key:U.value.key,env:U.value.environmentName})),1)]),_:1}),l(`div`,zt,[l(`label`,Bt,d(i(A)(`common.value`)),1),C(i(w),{id:`parent-edit-value`,modelValue:U.value.value,"onUpdate:modelValue":a[6]||=e=>U.value.value=e,class:`w-full`,disabled:Te.value},null,8,[`modelValue`,`disabled`])]),l(`div`,Vt,[l(`div`,Ht,[a[15]||=l(`i`,{class:`pi pi-sitemap`},null,-1),y(` `+d(i(A)(`variablesTable.editParentImpact`)),1)]),Ee.value?(r(),h(`div`,Ut,[a[16]||=l(`i`,{class:`pi pi-spin pi-spinner`},null,-1),l(`span`,null,d(i(A)(`variablesTable.editParentLoading`)),1)])):(r(),h(_,{key:1},[Oe.value.length?(r(),h(`ul`,Wt,[(r(!0),h(_,null,te(Oe.value,(e,t)=>(r(),h(`li`,{key:t},[C(i(b),{severity:e.kind===`references`?`info`:`secondary`,value:e.kind===`references`?e.viaKey:e.kind===`inherits`?i(A)(`variablesTable.editParentInherits`):i(A)(`variablesTable.editParentDefines`)},null,8,[`severity`,`value`]),l(`span`,Gt,d(e.environmentName),1),e.serviceName?(r(),h(`span`,Kt,d(e.serviceName),1)):g(``,!0)]))),128))])):(r(),h(`div`,qt,d(i(A)(`variablesTable.editParentNoUsage`)),1))],64))])])):g(``,!0)]),_:1},8,[`visible`,`header`])],64))}}),[[`__scopeId`,`data-v-78e9c98c`]]);export{j as n,Zt as t};
1
+ import{Cn as e,Dn as t,Gn as n,Hi as r,Na as i,Pi as a,Ri as o,Rt as s,Tn as ee,Wi as te,Yn as ne,aa as c,ai as re,da as ie,di as l,ea as u,fa as d,fi as f,ji as p,la as m,ln as ae,mi as h,pi as g,rt as oe,si as _,ta as se,ui as v,vi as y,vn as b,wa as x,xi as S,yi as C,yn as w}from"./index-GxI3bOA0.js";import{t as ce}from"./message-DUmeTDJC.js";import{t as T}from"./uuid-FpfcaBnR.js";import{n as E,t as D}from"./column-DXHLG_CF.js";import{t as le}from"./toggleswitch-BKr-TR6_.js";import{t as O}from"./autocomplete-CGdex9-e.js";var k={key:0,class:`env-badge`},A={class:`env-badge__name`},j=e(S({__name:`EnvironmentBadge`,props:{environmentId:{}},setup(e){let t=e,n=s(),i=v(()=>n.getById(t.environmentId));function a(e){if(e)return e.startsWith(`#`)?e:`#${e}`}return(e,t)=>i.value?(r(),h(`span`,k,[l(`span`,{class:`env-badge__swatch`,style:ie({backgroundColor:a(i.value.bgColor)||a(i.value.color)||`var(--p-primary-color)`})},null,4),l(`span`,A,d(i.value.name),1)])):g(``,!0)}}),[[`__scopeId`,`data-v-b70e647b`]]),M={class:`ref-group`},ue={class:`ref-option`},de={key:0,class:`pi pi-lock ref-option-secret`},N={key:1,class:`ref-option-preview`},P=40,F=e(S({__name:`VariableRefInput`,props:{modelValue:{},inputId:{},placeholder:{default:``},disabled:{type:Boolean,default:!1},envKeys:{default:()=>[]},meta:{default:()=>({})},resolvedEnv:{default:()=>({})},serviceBuiltins:{default:()=>({})}},emits:[`update:modelValue`,`search`,`focus`,`blur`,`picked`],setup(e,{emit:t}){let n=/^\{\{(.+)\}\}$/,a=/\{\{([^}]*)$/,o=e,s=t,{t:ee}=ne(),te=x(``),re=x(``),ie=x([]);function u(){let e=te.value.toLowerCase(),t=Object.keys(o.serviceBuiltins).filter(t=>t.toLowerCase().includes(e)).map(e=>`{{${e}}}`),n=o.envKeys.map(e=>`{{environment.${e}}}`);return[...t.length?[{label:ee(`variableRefInput.groupBuiltins`),items:t}]:[],...n.length?[{label:ee(`variableRefInput.groupEnvironment`),items:n}]:[]]}function p(){ie.value=u()}se(()=>[o.envKeys,o.serviceBuiltins],p,{deep:!0});function m(e){let t=e.match(n);return t?t[1].replace(/^environment\./,``):e}function ae(e){let t=e.match(n);return!t||!t[1].startsWith(`environment.`)?!1:o.meta[t[1].slice(12)]?.isSecret??!1}function oe(e){let t=e.match(n);if(!t)return null;let r=t[1];if(!r.startsWith(`environment.`)){let e=o.serviceBuiltins[r];return e?_(e):null}let i=r.slice(12),a=o.meta[i];if(!a||a.isSecret)return null;let s=o.resolvedEnv[i];return s?_(s):null}function _(e){return e.length>P?`${e.slice(0,P)}…`:e}function v(e){if(re.value=e.query,y)y=!1,te.value=``;else{let t=e.query.match(a);te.value=(t?t[1]:e.query).replace(/^(environment|service)\./,``).trim()}s(`search`,te.value),p()}let y=!1;function S(){y=!0,s(`focus`)}function w(e){let t=re.value,n=t.lastIndexOf(`{{`);s(`update:modelValue`,n===-1?e:t.slice(0,n)+e),s(`picked`)}return(t,n)=>(r(),f(i(O),{"input-id":e.inputId,"model-value":e.modelValue,suggestions:ie.value,"option-group-label":`label`,"option-group-children":`items`,placeholder:e.placeholder,class:`w-full`,"complete-on-focus":``,disabled:e.disabled,"onUpdate:modelValue":n[0]||=e=>s(`update:modelValue`,e),onComplete:v,onItemSelect:n[1]||=e=>w(e.value),onFocus:S,onBlur:n[2]||=e=>s(`blur`)},{optiongroup:c(({option:e})=>[l(`span`,M,d(e.label),1)]),option:c(({option:e})=>[l(`span`,ue,[C(i(b),{severity:`secondary`,value:m(e)},null,8,[`value`]),ae(e)?(r(),h(`i`,de)):oe(e)?(r(),h(`span`,N,d(oe(e)),1)):g(``,!0)])]),_:1},8,[`input-id`,`model-value`,`suggestions`,`placeholder`,`disabled`]))}}),[[`__scopeId`,`data-v-322f20cf`]]),fe={class:`key-row`},pe={class:`expansion-field expansion-field--key`},me=[`for`],he={key:2,class:`value-display`},I={key:0,class:`expansion-field expansion-field--toggle`},ge={class:`expansion-label`,for:`varrow-secret`},_e={key:1,class:`expansion-field expansion-field--toggle`},L=[`title`],R={key:2,class:`key-row-delete`},ve={key:0,class:`not-secret-warning`},ye={class:`expansion-section`},z={class:`section-title`},B={class:`section-fields`},V={class:`expansion-field expansion-field--prepost`},be={class:`expansion-label`,for:`varrow-prefix`},xe={key:2,class:`value-display`},Se={class:`expansion-field expansion-field--value`},H=[`for`],Ce=[`aria-label`],U={class:`value-help`},we={class:`value-help__title`},Te={class:`value-help__line`},Ee={class:`value-help__line value-help__line--muted`},De={class:`value-help__subtitle`},Oe={class:`value-help__builtins`},ke={class:`value-help__line value-help__line--muted`},Ae={key:0,class:`secret-input-wrap`},je=[`disabled`],Me=[`title`],Ne={key:1,class:`value-display value-display--with-actions`},Pe={key:0,class:`value-actions`},Fe={key:0},Ie={key:1},Le={class:`expansion-field expansion-field--prepost`},Re={class:`expansion-label`,for:`varrow-suffix`},ze={key:2,class:`value-display`},Be={key:0,class:`preview-value`},Ve={key:0,class:`prepost-part prepost-part--pre`},He={key:1,class:`prepost-part prepost-part--interpolation`},Ue={class:`prepost-part--value prepost-resolved-inline`},We=[`title`],Ge={key:2,class:`prepost-part prepost-part--value`},Ke={key:3,class:`prepost-part prepost-part--post`},qe={key:1,class:`expansion-section`},Je={class:`section-header`},Ye={class:`section-title`},Xe={class:`section-fields`},Ze={class:`expansion-field expansion-field--prepost`},Qe={class:`expansion-label`,for:`varrow-override-prefix`},$e={class:`expansion-field expansion-field--value`},et=[`for`],tt={key:0,class:`secret-input-wrap`},nt=[`disabled`],rt=[`title`],it={class:`expansion-field expansion-field--prepost`},at={class:`expansion-label`,for:`varrow-override-suffix`},ot={key:1,class:`override-view`},st={key:0,class:`value-display--with-actions`},ct={class:`value-actions`},lt={key:0,class:`override-value-masked`},ut={key:1,class:`override-value`},dt={key:1,class:`override-value`},ft={key:1,class:`override-empty`},pt={key:0,class:`preview-value preview-value--override`},mt={key:0,class:`prepost-part prepost-part--pre`},ht={key:1,class:`prepost-part prepost-part--interpolation`},gt={key:0,class:`prepost-part--value prepost-resolved-inline`},_t={key:2,class:`prepost-part prepost-part--value`},vt={key:3,class:`prepost-part prepost-part--post`},yt=`{{environment.KEY}}`,W=e(S({__name:`VariableRowEditor`,props:{environmentId:{},variableId:{},overrides:{},editable:{type:Boolean,default:!0},showOverrides:{type:Boolean,default:!1},canEditSource:{type:Boolean,default:!1},showDelete:{type:Boolean,default:!0},showOverrideBadge:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},resolvedEnv:{default:()=>({})},autocompleteEnabled:{type:Boolean,default:!1},autocompleteSuggestions:{default:()=>[]},autocompleteMeta:{default:()=>({})},serviceBuiltins:{default:()=>({})},isPending:{type:Boolean,default:!1}},emits:[`deleted`,`saved`,`autocomplete-search`,`override-changed`,`edit-source`],setup(e,{emit:a}){let ee=/^\{\{(.+)\}\}$/,ie=/^\{\{environment\.(.+)\}\}$/,u=e,p=a,S=s(),ce=n(),{t:T}=ne(),E=x(!1),D=x(!1),k=x(!1),A=x(!1),j=x(!1),M=x(null);function ue(e,t){navigator.clipboard.writeText(t),M.value=e,setTimeout(()=>{M.value===e&&(M.value=null)},1500)}let de=v(()=>S.getById(u.environmentId)?.variables?.[u.variableId]),N=x(``),P=x(``),W=x(``),G=x(``),bt=x(!1),xt=x(!1),St=v(()=>Z(P.value)),K=v(()=>bt.value&&!St.value);function Ct(){let e=de.value;N.value=e?.key??``,P.value=e?.value?.value??``,W.value=e?.value?.pre??``,G.value=e?.value?.post??``,bt.value=e?.value?.isSecret??!1,xt.value=e?.value?.injectIntoAi??!1}o(Ct),se(de,(e,t)=>{!t&&e&&Ct()});let q=v(()=>u.overrides[u.variableId]??null),J=x(``),Y=x(``),X=x(``);function wt(){let e=q.value;J.value=e?.pre??``,Y.value=e?.value??``,X.value=e?.post??``}o(wt),se(q,wt);function Z(e){return ee.test(e)}function Tt(e){let t=e.match(ee);return t?t[1].replace(/^environment\./,``):e}function Et(e){return e.replace(/\{\{environment\.([^}]+)\}\}/g,(e,t)=>u.resolvedEnv[t]??e)}function Dt(e){let t=e.match(ie);return t?u.resolvedEnv[t[1]]??null:null}function Ot(e){let t=e.value;N.value=t,P.value=`{{environment.${t}}}`,bt.value=!1;let n=u.autocompleteMeta?.[t];n&&(W.value=n.pre,G.value=n.post),Q()}let kt=x(null),At=v(()=>oe.map(e=>({ref:`{{${e.name}}}`,desc:T(`builtins.${e.descriptionKey}`)})));async function Q(){if(E.value)return;let e=N.value.trim();if(e){E.value=!0;try{await S.upsertVariable(u.environmentId,u.variableId,{key:e,value:{value:P.value,pre:W.value,post:G.value,isSecret:K.value,injectIntoAi:xt.value}}),u.isPending&&p(`saved`)}catch(e){ce.add({severity:`error`,summary:T(`common.error`),detail:e.message??T(`variableRowEditor.saveError`),life:4e3})}finally{E.value=!1}}}async function jt(){if(u.isPending){p(`deleted`);return}E.value=!0;try{q.value&&await S.removeOverride(u.variableId),await S.removeVariable(u.environmentId,u.variableId),p(`deleted`)}catch(e){ce.add({severity:`error`,summary:T(`common.error`),detail:e.message??T(`variableRowEditor.deleteError`),life:4e3})}finally{E.value=!1}}async function $(){let e=J.value||Y.value||X.value;try{if(!e){q.value&&(await S.removeOverride(u.variableId),p(`override-changed`));return}await S.setOverride(u.variableId,{value:{value:Y.value,pre:J.value,post:X.value,isSecret:K.value}}),p(`override-changed`)}catch(e){ce.add({severity:`error`,summary:T(`common.error`),detail:e.message??T(`variableRowEditor.overrideError`),life:4e3})}}async function Mt(){try{await S.removeOverride(u.variableId),p(`override-changed`)}catch(e){ce.add({severity:`error`,summary:T(`common.error`),detail:e.message??T(`variableRowEditor.clearOverrideError`),life:4e3})}}function Nt(e){let t=e.relatedTarget;(!t||!e.currentTarget.contains(t))&&Q()}return(n,a)=>(r(),h(`div`,{class:`expansion-form`,onFocusout:Nt},[l(`div`,fe,[l(`div`,pe,[l(`label`,{class:`expansion-label`,for:e.editable&&e.autocompleteEnabled?`varrow-key-ac`:`varrow-key-input`},d(i(T)(`common.key`)),9,me),e.editable&&e.autocompleteEnabled?(r(),f(i(O),{key:0,"input-id":`varrow-key-ac`,modelValue:N.value,"onUpdate:modelValue":a[0]||=e=>N.value=e,suggestions:e.autocompleteSuggestions,placeholder:i(T)(`variableRowEditor.variableNamePlaceholder`),class:`w-full`,disabled:e.disabled,onComplete:a[1]||=e=>p(`autocomplete-search`,e.query),onItemSelect:Ot,onBlur:Q},null,8,[`modelValue`,`suggestions`,`placeholder`,`disabled`])):e.editable?(r(),f(i(w),{key:1,id:`varrow-key-input`,modelValue:N.value,"onUpdate:modelValue":a[2]||=e=>N.value=e,placeholder:i(T)(`variableRowEditor.variableNamePlaceholder`),class:`w-full`,disabled:e.disabled,onBlur:Q},null,8,[`modelValue`,`placeholder`,`disabled`])):(r(),h(`code`,he,d(N.value),1))]),e.editable&&!St.value?(r(),h(`div`,I,[l(`label`,ge,d(i(T)(`variableRowEditor.secret`)),1),C(i(le),{"input-id":`varrow-secret`,modelValue:bt.value,"onUpdate:modelValue":[a[3]||=e=>bt.value=e,Q],disabled:e.disabled},null,8,[`modelValue`,`disabled`])])):g(``,!0),e.editable?(r(),h(`div`,_e,[l(`label`,{class:`expansion-label`,for:`varrow-injectai`,title:i(T)(`variableRowEditor.injectIntoAiHint`)},d(i(T)(`variableRowEditor.injectIntoAi`)),9,L),C(i(le),{"input-id":`varrow-injectai`,modelValue:xt.value,"onUpdate:modelValue":[a[4]||=e=>xt.value=e,Q],disabled:e.disabled},null,8,[`modelValue`,`disabled`])])):g(``,!0),e.showDelete&&e.editable?(r(),h(`div`,R,[C(i(t),{icon:`pi pi-trash`,severity:`danger`,text:``,rounded:``,size:`small`,disabled:e.disabled||E.value,onClick:jt},null,8,[`disabled`])])):g(``,!0)]),e.editable&&!bt.value&&!Z(P.value)?(r(),h(`div`,ve,[a[53]||=l(`i`,{class:`pi pi-info-circle`},null,-1),l(`span`,null,d(i(T)(`variableRowEditor.notSecretWarning`)),1)])):g(``,!0),l(`div`,ye,[l(`div`,z,d(i(T)(`variableRowEditor.value`)),1),l(`div`,B,[l(`div`,V,[l(`label`,be,d(i(T)(`variableRowEditor.prefix`)),1),e.editable&&e.autocompleteEnabled?(r(),f(F,{key:0,"input-id":`varrow-prefix`,modelValue:W.value,"onUpdate:modelValue":a[5]||=e=>W.value=e,placeholder:i(T)(`variableRowEditor.prefixPlaceholder`),"env-keys":e.autocompleteSuggestions,meta:e.autocompleteMeta,"resolved-env":e.resolvedEnv,"service-builtins":e.serviceBuiltins,disabled:e.disabled,onSearch:a[6]||=e=>p(`autocomplete-search`,e),onBlur:a[7]||=e=>Q(),onPicked:a[8]||=e=>Q()},null,8,[`modelValue`,`placeholder`,`env-keys`,`meta`,`resolved-env`,`service-builtins`,`disabled`])):e.editable?(r(),f(i(w),{key:1,id:`varrow-prefix`,modelValue:W.value,"onUpdate:modelValue":a[9]||=e=>W.value=e,placeholder:i(T)(`variableRowEditor.prefixPlaceholder`),class:`w-full`,disabled:e.disabled,onBlur:Q},null,8,[`modelValue`,`placeholder`,`disabled`])):(r(),h(`code`,xe,d(W.value||`—`),1))]),l(`div`,Se,[l(`label`,{class:`expansion-label`,for:K.value?`varrow-value-secret`:`varrow-value-plain`},[y(d(i(T)(`variableRowEditor.value`))+` `,1),e.editable?(r(),h(`button`,{key:0,type:`button`,class:`value-help-btn`,"aria-label":i(T)(`variableRowEditor.helpTitle`),onClick:a[10]||=re(e=>kt.value?.toggle(e),[`prevent`,`stop`])},[...a[54]||=[l(`i`,{class:`pi pi-info-circle`},null,-1)]],8,Ce)):g(``,!0)],8,H),C(i(ae),{ref_key:`valueHelp`,ref:kt},{default:c(()=>[l(`div`,U,[l(`div`,we,d(i(T)(`variableRowEditor.helpTitle`)),1),l(`p`,Te,[y(d(i(T)(`variableRowEditor.helpReference`))+` `,1),l(`code`,null,d(yt))]),l(`p`,Ee,d(i(T)(`variableRowEditor.helpAutocomplete`)),1),l(`div`,De,d(i(T)(`variableRowEditor.helpBuiltinsTitle`)),1),l(`ul`,Oe,[(r(!0),h(_,null,te(At.value,e=>(r(),h(`li`,{key:e.ref},[l(`code`,null,d(e.ref),1),l(`span`,null,d(e.desc),1)]))),128))]),l(`p`,ke,d(i(T)(`variableRowEditor.helpPrePost`)),1)])]),_:1},512),e.editable?(r(),h(_,{key:0},[K.value?(r(),h(`div`,Ae,[C(i(w),{id:`varrow-value-secret`,modelValue:P.value,"onUpdate:modelValue":a[11]||=e=>P.value=e,type:A.value?`text`:`password`,placeholder:i(T)(`variableRowEditor.valuePlaceholder`),class:`w-full`,disabled:e.disabled,onBlur:Q},null,8,[`modelValue`,`type`,`placeholder`,`disabled`]),l(`button`,{type:`button`,class:`secret-toggle`,disabled:e.disabled,onClick:a[12]||=e=>A.value=!A.value,tabindex:`-1`},[l(`i`,{class:m(A.value?`pi pi-eye-slash`:`pi pi-eye`)},null,2)],8,je)])):Z(P.value)&&!D.value?(r(),h(`span`,{key:1,class:`interpolation-badge`,title:P.value,onClick:a[13]||=e=>D.value=!0},[C(i(b),{severity:`secondary`,value:Tt(P.value)},null,8,[`value`]),a[55]||=l(`i`,{class:`pi pi-pencil interpolation-edit-icon`},null,-1)],8,Me)):e.autocompleteEnabled?(r(),f(F,{key:2,"input-id":`varrow-value-plain`,modelValue:P.value,"onUpdate:modelValue":a[14]||=e=>P.value=e,placeholder:i(T)(`variableRowEditor.valuePlaceholder`),"env-keys":e.autocompleteSuggestions,meta:e.autocompleteMeta,"resolved-env":e.resolvedEnv,"service-builtins":e.serviceBuiltins,disabled:e.disabled,onSearch:a[15]||=e=>p(`autocomplete-search`,e),onFocus:a[16]||=e=>D.value=!0,onBlur:a[17]||=e=>{D.value=!1,Q()},onPicked:a[18]||=e=>Q()},null,8,[`modelValue`,`placeholder`,`env-keys`,`meta`,`resolved-env`,`service-builtins`,`disabled`])):(r(),f(i(w),{key:3,id:`varrow-value-plain`,modelValue:P.value,"onUpdate:modelValue":a[19]||=e=>P.value=e,placeholder:i(T)(`variableRowEditor.valuePlaceholder`),class:`w-full`,disabled:e.disabled,onFocus:a[20]||=e=>D.value=!0,onBlur:a[21]||=e=>{D.value=!1,Q()}},null,8,[`modelValue`,`placeholder`,`disabled`]))],64)):(r(),h(`span`,Ne,[P.value?(r(),h(`span`,Pe,[K.value?(r(),h(`i`,{key:0,class:m([A.value?`pi pi-eye-slash`:`pi pi-eye`,`action-icon`]),onClick:a[22]||=e=>A.value=!A.value},null,2)):g(``,!0),l(`i`,{class:m([M.value===`val`?`pi pi-check`:`pi pi-copy`,`action-icon`]),onClick:a[23]||=e=>ue(`val`,W.value+P.value+G.value)},null,2)])):g(``,!0),Z(P.value)?(r(),f(i(b),{key:1,severity:`secondary`,value:Tt(P.value)},null,8,[`value`])):K.value?(r(),h(_,{key:2},[A.value?(r(),h(`span`,Ie,d(P.value),1)):(r(),h(`span`,Fe,`***`))],64)):(r(),h(_,{key:3},[y(d(P.value),1)],64))]))]),l(`div`,Le,[l(`label`,Re,d(i(T)(`variableRowEditor.suffix`)),1),e.editable&&e.autocompleteEnabled?(r(),f(F,{key:0,"input-id":`varrow-suffix`,modelValue:G.value,"onUpdate:modelValue":a[24]||=e=>G.value=e,placeholder:i(T)(`variableRowEditor.suffixPlaceholder`),"env-keys":e.autocompleteSuggestions,meta:e.autocompleteMeta,"resolved-env":e.resolvedEnv,"service-builtins":e.serviceBuiltins,disabled:e.disabled,onSearch:a[25]||=e=>p(`autocomplete-search`,e),onBlur:a[26]||=e=>Q(),onPicked:a[27]||=e=>Q()},null,8,[`modelValue`,`placeholder`,`env-keys`,`meta`,`resolved-env`,`service-builtins`,`disabled`])):e.editable?(r(),f(i(w),{key:1,id:`varrow-suffix`,modelValue:G.value,"onUpdate:modelValue":a[28]||=e=>G.value=e,placeholder:i(T)(`variableRowEditor.suffixPlaceholder`),class:`w-full`,disabled:e.disabled,onBlur:Q},null,8,[`modelValue`,`placeholder`,`disabled`])):(r(),h(`code`,ze,d(G.value||`—`),1))])]),K.value?g(``,!0):(r(),h(`code`,Be,[W.value?(r(),h(`span`,Ve,d(Et(W.value)),1)):g(``,!0),Z(P.value)?(r(),h(`span`,He,[Dt(P.value)==null?(r(),h(_,{key:1},[C(i(b),{severity:`secondary`,value:Tt(P.value),style:{"font-size":`0.7rem`}},null,8,[`value`]),a[56]||=l(`span`,{class:`prepost-unresolved`},`(?)`,-1)],64)):(r(),h(_,{key:0},[l(`span`,Ue,d(Dt(P.value)),1),e.canEditSource?(r(),h(`i`,{key:0,class:`pi pi-pencil edit-source-icon`,title:i(T)(`variablesTable.editParentTitle`),onClick:a[29]||=re(e=>p(`edit-source`),[`stop`])},null,8,We)):g(``,!0)],64))])):(r(),h(`span`,Ge,d(Et(P.value)||`…`),1)),G.value?(r(),h(`span`,Ke,d(Et(G.value)),1)):g(``,!0)]))]),e.showOverrides&&N.value?.trim()?(r(),h(`div`,qe,[l(`div`,Je,[l(`div`,Ye,d(i(T)(`variableRowEditor.localOverride`)),1),e.editable&&q.value?(r(),f(i(t),{key:0,icon:`pi pi-times`,text:``,rounded:``,size:`small`,severity:`danger`,title:i(T)(`variableRowEditor.clearOverride`),disabled:e.disabled,onClick:Mt},null,8,[`title`,`disabled`])):g(``,!0)]),l(`div`,Xe,[e.editable?(r(),h(_,{key:0},[l(`div`,Ze,[l(`label`,Qe,d(i(T)(`variableRowEditor.prefix`)),1),e.autocompleteEnabled?(r(),f(F,{key:0,"input-id":`varrow-override-prefix`,modelValue:J.value,"onUpdate:modelValue":a[30]||=e=>J.value=e,placeholder:i(T)(`variableRowEditor.prefixPlaceholder`),"env-keys":e.autocompleteSuggestions,meta:e.autocompleteMeta,"resolved-env":e.resolvedEnv,"service-builtins":e.serviceBuiltins,disabled:e.disabled,onSearch:a[31]||=e=>p(`autocomplete-search`,e),onBlur:a[32]||=e=>$(),onPicked:a[33]||=e=>$()},null,8,[`modelValue`,`placeholder`,`env-keys`,`meta`,`resolved-env`,`service-builtins`,`disabled`])):(r(),f(i(w),{key:1,id:`varrow-override-prefix`,modelValue:J.value,"onUpdate:modelValue":a[34]||=e=>J.value=e,placeholder:i(T)(`variableRowEditor.prefixPlaceholder`),class:`w-full`,disabled:e.disabled,onBlur:$},null,8,[`modelValue`,`placeholder`,`disabled`]))]),l(`div`,$e,[l(`label`,{class:`expansion-label`,for:K.value?`varrow-override-value-secret`:`varrow-override-value-plain`},d(i(T)(`variableRowEditor.value`)),9,et),K.value?(r(),h(`div`,tt,[C(i(w),{id:`varrow-override-value-secret`,modelValue:Y.value,"onUpdate:modelValue":a[35]||=e=>Y.value=e,type:j.value?`text`:`password`,placeholder:i(T)(`variableRowEditor.overrideValuePlaceholder`),class:`w-full`,disabled:e.disabled,onBlur:$},null,8,[`modelValue`,`type`,`placeholder`,`disabled`]),l(`button`,{type:`button`,class:`secret-toggle`,disabled:e.disabled,onClick:a[36]||=e=>j.value=!j.value,tabindex:`-1`},[l(`i`,{class:m(j.value?`pi pi-eye-slash`:`pi pi-eye`)},null,2)],8,nt)])):Z(Y.value)&&!k.value?(r(),h(`span`,{key:1,class:`interpolation-badge`,title:Y.value,onClick:a[37]||=e=>k.value=!0},[C(i(b),{severity:`secondary`,value:Tt(Y.value)},null,8,[`value`]),a[57]||=l(`i`,{class:`pi pi-pencil interpolation-edit-icon`},null,-1)],8,rt)):e.autocompleteEnabled?(r(),f(F,{key:2,"input-id":`varrow-override-value-plain`,modelValue:Y.value,"onUpdate:modelValue":a[38]||=e=>Y.value=e,placeholder:i(T)(`variableRowEditor.overrideValuePlaceholder`),"env-keys":e.autocompleteSuggestions,meta:e.autocompleteMeta,"resolved-env":e.resolvedEnv,"service-builtins":e.serviceBuiltins,disabled:e.disabled,onSearch:a[39]||=e=>p(`autocomplete-search`,e),onFocus:a[40]||=e=>k.value=!0,onBlur:a[41]||=e=>{k.value=!1,$()},onPicked:a[42]||=e=>$()},null,8,[`modelValue`,`placeholder`,`env-keys`,`meta`,`resolved-env`,`service-builtins`,`disabled`])):(r(),f(i(w),{key:3,id:`varrow-override-value-plain`,modelValue:Y.value,"onUpdate:modelValue":a[43]||=e=>Y.value=e,placeholder:i(T)(`variableRowEditor.overrideValuePlaceholder`),class:`w-full`,disabled:e.disabled,onFocus:a[44]||=e=>k.value=!0,onBlur:a[45]||=e=>{k.value=!1,$()}},null,8,[`modelValue`,`placeholder`,`disabled`]))]),l(`div`,it,[l(`label`,at,d(i(T)(`variableRowEditor.suffix`)),1),e.autocompleteEnabled?(r(),f(F,{key:0,"input-id":`varrow-override-suffix`,modelValue:X.value,"onUpdate:modelValue":a[46]||=e=>X.value=e,placeholder:i(T)(`variableRowEditor.suffixPlaceholder`),"env-keys":e.autocompleteSuggestions,meta:e.autocompleteMeta,"resolved-env":e.resolvedEnv,"service-builtins":e.serviceBuiltins,disabled:e.disabled,onSearch:a[47]||=e=>p(`autocomplete-search`,e),onBlur:a[48]||=e=>$(),onPicked:a[49]||=e=>$()},null,8,[`modelValue`,`placeholder`,`env-keys`,`meta`,`resolved-env`,`service-builtins`,`disabled`])):(r(),f(i(w),{key:1,id:`varrow-override-suffix`,modelValue:X.value,"onUpdate:modelValue":a[50]||=e=>X.value=e,placeholder:i(T)(`variableRowEditor.suffixPlaceholder`),class:`w-full`,disabled:e.disabled,onBlur:$},null,8,[`modelValue`,`placeholder`,`disabled`]))])],64)):(r(),h(`div`,ot,[q.value?(r(),h(`span`,st,[l(`span`,ct,[K.value||q.value.isSecret?(r(),h(`i`,{key:0,class:m([j.value?`pi pi-eye-slash`:`pi pi-eye`,`action-icon`]),onClick:a[51]||=e=>j.value=!j.value},null,2)):g(``,!0),l(`i`,{class:m([M.value===`ovr`?`pi pi-check`:`pi pi-copy`,`action-icon`]),onClick:a[52]||=e=>ue(`ovr`,q.value.pre+q.value.value+q.value.post)},null,2)]),K.value||q.value.isSecret?(r(),h(_,{key:0},[j.value?(r(),h(`code`,ut,d(q.value.pre)+d(q.value.value)+d(q.value.post),1)):(r(),h(`span`,lt,`***`))],64)):(r(),h(`code`,dt,d(q.value.pre)+d(q.value.value)+d(q.value.post),1))])):(r(),h(`span`,ft,`—`))]))]),e.editable&&!K.value&&(J.value||Y.value||X.value)?(r(),h(`code`,pt,[J.value?(r(),h(`span`,mt,d(Et(J.value)),1)):g(``,!0),Z(Y.value)?(r(),h(`span`,ht,[Dt(Y.value)==null?(r(),h(_,{key:1},[C(i(b),{severity:`secondary`,value:Tt(Y.value),style:{"font-size":`0.7rem`}},null,8,[`value`]),a[58]||=l(`span`,{class:`prepost-unresolved`},`(?)`,-1)],64)):(r(),h(`span`,gt,d(Dt(Y.value)),1))])):(r(),h(`span`,_t,d(Et(Y.value)||`…`),1)),X.value?(r(),h(`span`,vt,d(Et(X.value)),1)):g(``,!0)])):g(``,!0)])):g(``,!0)],32))}}),[[`__scopeId`,`data-v-73035c6d`]]),G={class:`table-toolbar`},bt={key:0,class:`overrides-filter`},xt={for:`overrides-filter`},St={class:`text-center py-4 text-gray-500`},K={class:`row-key-cell`},Ct={class:`row-key-line`},q={class:`row-key`},J=[`title`],Y=[`title`],X={key:1,class:`resolved-from-line`},wt={class:`row-value`},Z=[`title`,`onClick`],Tt=[`title`,`onClick`],Et={key:1,class:`value-levels`},Dt={class:`resolved-level`},Ot={key:0,class:`secret-mask`},kt=[`title`],At={key:0,class:`secret-mask`},Q=[`title`],jt=[`title`],$={key:6,class:`empty-value`},Mt={key:0,class:`override-indicator`},Nt=[`title`,`onClick`],Pt=[`title`,`onClick`],Ft={key:0,class:`override-value-masked`},It=[`title`],Lt=[`title`],Rt={key:0,class:`parent-edit`},zt={class:`parent-edit__field`},Bt={class:`parent-edit__label`,for:`parent-edit-value`},Vt={class:`parent-edit__usages`},Ht={class:`parent-edit__usages-title`},Ut={key:0,class:`parent-edit__usages-loading`},Wt={key:0,class:`parent-edit__usage-list`},Gt={class:`parent-edit__usage-env`},Kt={key:0,class:`parent-edit__usage-svc`},qt={key:1,class:`parent-edit__usages-empty`},Jt=40,Yt=200,Xt=24,Zt=e(S({__name:`VariablesTable`,props:{environmentId:{},resolvedEnv:{default:()=>({})},sources:{default:()=>({})},editable:{type:Boolean,default:!0},showOverrides:{type:Boolean,default:!1},showOverrideBadge:{type:Boolean,default:!1},showDelete:{type:Boolean,default:!0},showAddButton:{type:Boolean,default:!0},disabled:{type:Boolean,default:!1},autocompleteEnabled:{type:Boolean,default:!1},autocompleteSuggestions:{default:()=>[]},autocompleteMeta:{default:()=>({})},serviceBuiltins:{},scrollHeight:{default:`auto`}},emits:[`autocomplete-search`,`variables-changed`],setup(e,{emit:ie}){let ae=/^\{\{(.+)\}\}$/,se=/^\{\{environment\.(.+)\}\}$/,S=Object.fromEntries(oe.map(e=>[e.name,``])),O=e,k=ie,{t:A}=ne(),M=s(),ue=v(()=>Object.keys(O.sources).length>0),de=v(()=>Object.keys(O.resolvedEnv).length>0),N=u(`rootRef`),P=x(null),F=v(()=>O.scrollHeight===`auto`?P.value??`460px`:O.scrollHeight);function fe(){if(O.scrollHeight!==`auto`)return;let e=N.value;if(!e)return;let t=(e.querySelector(`.p-datatable-table-container`)??e).getBoundingClientRect().top,n=window.innerHeight-t-Xt;P.value=`${Math.max(Yt,Math.round(n))}px`}let pe=null;o(()=>{p(fe),window.addEventListener(`resize`,fe),typeof ResizeObserver<`u`&&N.value&&(pe=new ResizeObserver(()=>fe()),pe.observe(document.body))}),a(()=>{window.removeEventListener(`resize`,fe),pe?.disconnect(),pe=null});let me=x(``),he=x(!1),I=x({});async function ge(){if(O.showOverrides)try{let e=await M.getOverrides(),t={};for(let[n,r]of Object.entries(e)){let e=r;t[n]={value:e.value.value,pre:e.value.pre,post:e.value.post,isSecret:e.value.isSecret}}I.value=t}catch{}}o(ge);let _e=v(()=>M.getById(O.environmentId));function L(e){return _e.value?.variables?.[e]}let R=x([]),ve=v(()=>{let e=Object.keys(_e.value?.variables??{}).map(e=>({variableId:e})),t=new Set(e.map(e=>e.variableId)),n=R.value.filter(e=>!t.has(e)).map(e=>({variableId:e}));return[...e,...n]}),ye=u(`tableRef`),z=x({}),B=x([]),V=x(new Set);function be(e){let t=new Set(V.value);t.has(e)?t.delete(e):t.add(e),V.value=t}let xe=x(null);function Se(e,t){navigator.clipboard.writeText(t),xe.value=e,setTimeout(()=>{xe.value===e&&(xe.value=null)},1500)}function H(e){let t=L(e);if(!t)return``;let n=t.value?.value??``;return ze(n)?Ve(n)??n:(t.value?.pre??``)+n+(t.value?.post??``)}let Ce=n(),U=x(null),we=x(!1),Te=x(!1),Ee=x(!1),De=0,Oe=x([]);async function ke(e){let t=O.sources[e]?.resolvedFrom,n=L(e)?.value?.value??``;if(!t||!n)return;let r=Be(n),i=M.getById(t.environmentId),a=Object.entries(i?.variables??{}).find(([,e])=>e.key===r);if(!a){Ce.add({severity:`warn`,summary:A(`variablesTable.editParentNotFound`),life:4e3});return}let[o,s]=a;U.value={key:r,environmentId:t.environmentId,environmentName:t.environmentName,variableId:o,value:s.value?.value??``,pre:s.value?.pre??``,post:s.value?.post??``,isSecret:s.value?.isSecret??!1,injectIntoAi:s.value?.injectIntoAi??!1},Oe.value=[],we.value=!0,Ae(r,t.environmentId)}async function Ae(e,t){let n=++De;Ee.value=!0;try{let r=M.currentProjectId;if(!r)return;let i=await M.keyUsages(r,e,t);if(n!==De)return;Oe.value=[...i.inheritedBy.map(e=>({kind:`inherits`,environmentName:e.environmentName,...e.serviceName?{serviceName:e.serviceName}:{}})),...i.definedIn.map(e=>({kind:`defines`,environmentName:e.environmentName,...e.serviceName?{serviceName:e.serviceName}:{}})),...i.referencedBy.map(e=>({kind:`references`,environmentName:e.environmentName,...e.serviceName?{serviceName:e.serviceName}:{},viaKey:e.key}))]}catch{n===De&&(Oe.value=[])}finally{n===De&&(Ee.value=!1)}}async function je(){let e=U.value;if(e){Te.value=!0;try{await M.upsertVariable(e.environmentId,e.variableId,{key:e.key,value:{value:e.value,pre:e.pre,post:e.post,isSecret:e.isSecret,injectIntoAi:e.injectIntoAi}}),we.value=!1,k(`variables-changed`)}catch(e){Ce.add({severity:`error`,summary:A(`common.error`),detail:e.message,life:4e3})}finally{Te.value=!1}}}function Me(e){let t=I.value[e];return t?t.pre+t.value+t.post:``}let Ne=v(()=>{let e=[...ve.value];if(he.value&&(e=e.filter(e=>!!I.value[e.variableId])),me.value.trim()){let t=me.value.toLowerCase();e=e.filter(e=>{let n=L(e.variableId);if(!n)return!1;if(n.key.toLowerCase().includes(t)||(n.value?.value??``).toLowerCase().includes(t))return!0;let r=I.value[e.variableId];return!!(r&&r.value.toLowerCase().includes(t))})}return B.value.length>0?e.sort((e,t)=>{let n=B.value.indexOf(e.variableId),r=B.value.indexOf(t.variableId);return n===-1?1:r===-1?-1:n-r}):e.sort((e,t)=>{let n=L(e.variableId)?.key??``,r=L(t.variableId)?.key??``;return n?r?n.localeCompare(r):-1:1}),e});function Pe(e){let t=e.data.variableId;z.value[t]?(z.value={},B.value=[],Fe(t)):(B.value=Ne.value.map(e=>e.variableId),z.value={[t]:!0})}function Fe(e){p(()=>{let t=ye.value?.$el;if(!t)return;let n=Ne.value.findIndex(t=>t.variableId===e);n<0||t.querySelectorAll(`tbody tr[data-p-index]`)[n]?.scrollIntoView({block:`nearest`,behavior:`smooth`})})}function Ie(e){R.value=R.value.filter(t=>t!==e),z.value[e]&&(z.value={},B.value=[])}function Le(e){R.value=R.value.filter(t=>t!==e)}function Re(){let e=T();R.value=[...R.value,e],B.value=[...ve.value.map(e=>e.variableId),e],p(()=>{z.value={[e]:!0},p(()=>{let e=document.querySelector(`.variables-expand-table .p-datatable-row-expansion:last-of-type`);e&&e.scrollIntoView({block:`nearest`,behavior:`smooth`})})})}function ze(e){return ae.test(e)}function Be(e){let t=e.match(ae);return t?t[1].replace(/^(?:environment|service)\./,``):e}function Ve(e){let t=e.match(se);if(t)return O.resolvedEnv[t[1]]??null;let n=e.match(ae);if(n){let e={...S,...O.serviceBuiltins};if(e[n[1]])return e[n[1]]}return null}function He(e){return e.length<=Jt?e:e.substring(0,Jt)+`…`}return(n,a)=>(r(),h(_,null,[l(`div`,{ref_key:`rootRef`,ref:N,class:`variables-table`},[l(`div`,G,[C(i(w),{modelValue:me.value,"onUpdate:modelValue":a[0]||=e=>me.value=e,placeholder:`Search variables...`,class:`search-input`,size:`small`},null,8,[`modelValue`]),e.showOverrides?(r(),h(`div`,bt,[C(i(le),{modelValue:he.value,"onUpdate:modelValue":a[1]||=e=>he.value=e,"input-id":`overrides-filter`},null,8,[`modelValue`]),l(`label`,xt,d(i(A)(`variablesTable.overriddenOnly`)),1)])):g(``,!0)]),C(i(E),{ref_key:`tableRef`,ref:ye,"expanded-rows":z.value,"onUpdate:expandedRows":a[5]||=e=>z.value=e,value:Ne.value,"data-key":`variableId`,class:`p-datatable-sm variables-expand-table`,scrollable:``,"scroll-height":F.value,onRowClick:Pe},{empty:c(()=>[l(`div`,St,d(e.showAddButton?i(A)(`variablesTable.empty`):i(A)(`variablesTable.emptyReadonly`)),1)]),expansion:c(({data:t})=>[C(W,{"environment-id":e.environmentId,"variable-id":t.variableId,overrides:I.value,editable:e.editable,"show-overrides":e.showOverrides,"show-delete":e.showDelete,"show-override-badge":e.showOverrideBadge,disabled:e.disabled,"resolved-env":e.resolvedEnv,"autocomplete-enabled":e.autocompleteEnabled,"autocomplete-suggestions":e.autocompleteSuggestions,"autocomplete-meta":e.autocompleteMeta,"service-builtins":{...i(S),...e.serviceBuiltins},"is-pending":R.value.includes(t.variableId),onDeleted:e=>Ie(t.variableId),onSaved:e=>Le(t.variableId),onAutocompleteSearch:a[4]||=e=>k(`autocomplete-search`,e),onOverrideChanged:ge,"can-edit-source":!!e.sources[t.variableId]?.resolvedFrom,onEditSource:e=>ke(t.variableId)},null,8,[`environment-id`,`variable-id`,`overrides`,`editable`,`show-overrides`,`show-delete`,`show-override-badge`,`disabled`,`resolved-env`,`autocomplete-enabled`,`autocomplete-suggestions`,`autocomplete-meta`,`service-builtins`,`is-pending`,`onDeleted`,`onSaved`,`can-edit-source`,`onEditSource`])]),default:c(()=>[C(i(D),{expander:``,style:{width:`2.5rem`}}),C(i(D),{field:`variableId`,header:i(A)(`common.key`)},{body:c(({data:t})=>[l(`div`,K,[l(`span`,Ct,[l(`code`,q,d(L(t.variableId)?.key||`(new variable)`),1),e.sources[t.variableId]?.overriddenBy?(r(),h(`span`,{key:0,class:`overridden-badge overridden-badge--local`,title:i(A)(`variablesTable.localOverrideTooltip`,{env:e.sources[t.variableId].overriddenBy.environmentName})},[a[9]||=l(`i`,{class:`pi pi-desktop`},null,-1),y(` `+d(i(A)(`variablesTable.localOverride`)),1)],8,J)):e.showOverrideBadge&&e.sources[t.variableId]?.overridden&&!ze(L(t.variableId)?.value?.value??``)?(r(),h(`span`,{key:1,class:`overridden-badge`,title:i(A)(`variablesTable.overrideTooltip`)},[a[10]||=l(`i`,{class:`pi pi-exclamation-triangle`},null,-1),y(` `+d(i(A)(`variablesTable.override`)),1)],8,Y)):g(``,!0)]),ue.value&&e.sources[t.variableId]?(r(),f(j,{key:0,"environment-id":e.sources[t.variableId].environmentId,class:`source-badge`},null,8,[`environment-id`])):g(``,!0),ue.value&&e.sources[t.variableId]?.resolvedFrom?(r(),h(`span`,X,[a[11]||=l(`i`,{class:`pi pi-arrow-right resolved-from-arrow`},null,-1),C(j,{"environment-id":e.sources[t.variableId].resolvedFrom.environmentId,class:`source-badge`},null,8,[`environment-id`])])):g(``,!0)])]),_:1},8,[`header`]),C(i(D),{header:i(A)(`common.value`)},{body:c(({data:t})=>[l(`span`,wt,[H(t.variableId)?(r(),h(`span`,{key:0,class:`value-actions`,onClick:a[2]||=re(()=>{},[`stop`])},[L(t.variableId)?.value?.isSecret?(r(),h(`i`,{key:0,class:m([V.value.has(t.variableId)?`pi pi-eye-slash`:`pi pi-eye`,`action-icon`]),title:i(A)(`variablesTable.reveal`),onClick:e=>be(t.variableId)},null,10,Z)):g(``,!0),l(`i`,{class:m([xe.value===t.variableId?`pi pi-check`:`pi pi-copy`,`action-icon`]),title:i(A)(`actions.copy`),onClick:e=>Se(t.variableId,H(t.variableId))},null,10,Tt)])):g(``,!0),ze(L(t.variableId)?.value?.value??``)&&Ve(L(t.variableId)?.value?.value??``)!=null?(r(),h(`span`,Et,[C(i(b),{severity:`secondary`,value:Be(L(t.variableId)?.value?.value??``),class:`interpolation-hint-tag`},null,8,[`value`]),l(`span`,Dt,[L(t.variableId)?.value?.isSecret&&!V.value.has(t.variableId)?(r(),h(`span`,Ot,`***`)):(r(),h(`code`,{key:1,class:`resolved-final`,title:Ve(L(t.variableId)?.value?.value??``)},d(He(Ve(L(t.variableId)?.value?.value??``))),9,kt))])])):ze(L(t.variableId)?.value?.value??``)&&de.value&&Ve(L(t.variableId)?.value?.value??``)==null?(r(),h(_,{key:2},[a[12]||=l(`i`,{class:`pi pi-exclamation-triangle unresolved-icon`},null,-1),C(i(b),{severity:`secondary`,value:Be(L(t.variableId)?.value?.value??``)},null,8,[`value`]),a[13]||=l(`span`,{class:`unresolved-msg`},`Variable not found in this environment`,-1)],64)):ze(L(t.variableId)?.value?.value??``)?(r(),f(i(b),{key:3,severity:`secondary`,value:Be(L(t.variableId)?.value?.value??``)},null,8,[`value`])):L(t.variableId)?.value?.isSecret?(r(),h(_,{key:4},[V.value.has(t.variableId)?(r(),h(`code`,{key:1,title:H(t.variableId)},d(He(H(t.variableId))),9,Q)):(r(),h(`span`,At,`***`))],64)):L(t.variableId)?.value?.value||L(t.variableId)?.value?.pre||L(t.variableId)?.value?.post?(r(),h(`code`,{key:5,title:H(t.variableId)},d(He(H(t.variableId))),9,jt)):(r(),h(`span`,$,`(empty)`))]),e.showOverrides&&!ze(L(t.variableId)?.value?.value??``)&&I.value[t.variableId]?(r(),h(`span`,Mt,[a[14]||=l(`i`,{class:`pi pi-arrow-right`,style:{"font-size":`0.7rem`}},null,-1),l(`span`,{class:`value-actions`,onClick:a[3]||=re(()=>{},[`stop`])},[L(t.variableId)?.value?.isSecret||I.value[t.variableId].isSecret?(r(),h(`i`,{key:0,class:m([V.value.has(`ovr:`+t.variableId)?`pi pi-eye-slash`:`pi pi-eye`,`action-icon`]),title:i(A)(`variablesTable.reveal`),onClick:e=>be(`ovr:`+t.variableId)},null,10,Nt)):g(``,!0),l(`i`,{class:m([xe.value===`ovr:`+t.variableId?`pi pi-check`:`pi pi-copy`,`action-icon`]),title:i(A)(`actions.copy`),onClick:e=>Se(`ovr:`+t.variableId,Me(t.variableId))},null,10,Pt)]),L(t.variableId)?.value?.isSecret||I.value[t.variableId].isSecret?(r(),h(_,{key:0},[V.value.has(`ovr:`+t.variableId)?(r(),h(`code`,{key:1,class:`override-value`,title:Me(t.variableId)},d(He(Me(t.variableId))),9,It)):(r(),h(`span`,Ft,`***`))],64)):(r(),h(`code`,{key:1,class:`override-value`,title:Me(t.variableId)},d(He(Me(t.variableId))),9,Lt))])):g(``,!0)]),_:1},8,[`header`])]),_:1},8,[`expanded-rows`,`value`,`scroll-height`]),e.showAddButton?(r(),f(i(t),{key:0,type:`button`,label:i(A)(`variablesTable.addVariable`),icon:`pi pi-plus`,text:``,disabled:e.disabled,class:`mt-3`,onClick:Re},null,8,[`label`,`disabled`])):g(``,!0)],512),C(i(ee),{visible:we.value,"onUpdate:visible":a[8]||=e=>we.value=e,modal:``,header:i(A)(`variablesTable.editParentHeader`),style:{width:`38rem`,maxWidth:`95vw`}},{footer:c(()=>[C(i(t),{label:i(A)(`actions.cancel`),text:``,disabled:Te.value,onClick:a[7]||=e=>we.value=!1},null,8,[`label`,`disabled`]),C(i(t),{label:i(A)(`variablesTable.editParentConfirm`),severity:`warn`,loading:Te.value,onClick:je},null,8,[`label`,`loading`])]),default:c(()=>[U.value?(r(),h(`div`,Rt,[C(i(ce),{severity:`warn`,closable:!1,class:`parent-edit__warning`},{default:c(()=>[y(d(i(A)(`variablesTable.editParentWarning`,{key:U.value.key,env:U.value.environmentName})),1)]),_:1}),l(`div`,zt,[l(`label`,Bt,d(i(A)(`common.value`)),1),C(i(w),{id:`parent-edit-value`,modelValue:U.value.value,"onUpdate:modelValue":a[6]||=e=>U.value.value=e,class:`w-full`,disabled:Te.value},null,8,[`modelValue`,`disabled`])]),l(`div`,Vt,[l(`div`,Ht,[a[15]||=l(`i`,{class:`pi pi-sitemap`},null,-1),y(` `+d(i(A)(`variablesTable.editParentImpact`)),1)]),Ee.value?(r(),h(`div`,Ut,[a[16]||=l(`i`,{class:`pi pi-spin pi-spinner`},null,-1),l(`span`,null,d(i(A)(`variablesTable.editParentLoading`)),1)])):(r(),h(_,{key:1},[Oe.value.length?(r(),h(`ul`,Wt,[(r(!0),h(_,null,te(Oe.value,(e,t)=>(r(),h(`li`,{key:t},[C(i(b),{severity:e.kind===`references`?`info`:`secondary`,value:e.kind===`references`?e.viaKey:e.kind===`inherits`?i(A)(`variablesTable.editParentInherits`):i(A)(`variablesTable.editParentDefines`)},null,8,[`severity`,`value`]),l(`span`,Gt,d(e.environmentName),1),e.serviceName?(r(),h(`span`,Kt,d(e.serviceName),1)):g(``,!0)]))),128))])):(r(),h(`div`,qt,d(i(A)(`variablesTable.editParentNoUsage`)),1))],64))])])):g(``,!0)]),_:1},8,[`visible`,`header`])],64))}}),[[`__scopeId`,`data-v-78e9c98c`]]);export{j as n,Zt as t};
@@ -1 +1 @@
1
- import{Bn as e,Cn as t,Dn as n,Hi as r,Na as i,Ri as a,Wi as o,Yn as s,aa as c,ai as l,di as u,fa as d,fi as f,mi as p,on as m,pi as h,si as g,tn as _,vi as v,wa as y,xi as b,yi as x,zt as S}from"./index-K7kdEsBo.js";import{t as C}from"./message-VrL-0XTF.js";import{t as w}from"./password-IByxJqSm.js";var T={class:`migration-page`,"data-testid":`page-content`},E={class:`migration-card`},D={class:`migration-title`,"data-testid":`vault-migration-title`},O={class:`migration-lead`},k={class:`migration-path`},A={for:`legacyMasterPassword`},j={class:`migration-report`},M={key:0},N={key:1,class:`migration-report__warn`},P={class:`migration-backup`},F=t(b({__name:`VaultMigrationPage`,setup(t){let b=e(),{t:F}=s(),I=y(null),L=y(``),R=y(!1),z=y(``),B=y(null);a(async()=>{try{I.value=(await _()).legacyVault??null,I.value||await b.replace({name:`launch-project`})}catch{z.value=F(`vaultMigration.statusError`)}});async function V(){if(L.value){R.value=!0,z.value=``;try{B.value=await m(L.value),L.value=``}catch(e){z.value=S(e)??F(`vaultMigration.failed`)}finally{R.value=!1}}}async function H(){await b.replace({name:`launch-project`})}return(e,t)=>(r(),p(`div`,T,[u(`div`,E,[u(`h1`,D,d(i(F)(`vaultMigration.title`)),1),B.value?(r(),p(g,{key:1},[x(i(C),{severity:`success`,closable:!1,"data-testid":`vault-migration-done`},{default:c(()=>[v(d(i(F)(`vaultMigration.done`)),1)]),_:1}),u(`ul`,j,[(r(!0),p(g,null,o(B.value.rekeyed,e=>(r(),p(`li`,{key:e.file},d(i(F)(`vaultMigration.rekeyed`,{file:e.file,count:e.values})),1))),128)),B.value.moved.length?(r(),p(`li`,M,d(i(F)(`vaultMigration.moved`,{files:B.value.moved.join(`, `)})),1)):h(``,!0),B.value.skipped.length?(r(),p(`li`,N,d(i(F)(`vaultMigration.skipped`,{files:B.value.skipped.join(`, `)})),1)):h(``,!0)]),u(`p`,P,[v(d(i(F)(`vaultMigration.backupKept`))+` `,1),u(`code`,null,d(B.value.backupDir),1)]),x(i(n),{"data-testid":`vault-migration-continue`,label:i(F)(`vaultMigration.continue`),onClick:H},null,8,[`label`])],64)):(r(),p(g,{key:0},[u(`p`,O,d(i(F)(`vaultMigration.lead`)),1),u(`p`,k,[u(`code`,null,d(I.value),1)]),x(i(C),{severity:`info`,closable:!1,class:`migration-note`},{default:c(()=>[v(d(i(F)(`vaultMigration.backupNote`)),1)]),_:1}),u(`form`,{class:`migration-form`,onSubmit:l(V,[`prevent`])},[u(`label`,A,d(i(F)(`vaultMigration.oldPasswordLabel`)),1),x(i(w),{id:`legacyMasterPassword`,modelValue:L.value,"onUpdate:modelValue":t[0]||=e=>L.value=e,"data-testid":`legacy-master-password-input`,feedback:!1,"toggle-mask":``,autocomplete:`current-password`,disabled:R.value,fluid:``},null,8,[`modelValue`,`disabled`]),z.value?(r(),f(i(C),{key:0,severity:`error`,closable:!1,"data-testid":`vault-migration-error`},{default:c(()=>[v(d(z.value),1)]),_:1})):h(``,!0),x(i(n),{type:`submit`,"data-testid":`vault-migration-submit`,label:R.value?i(F)(`vaultMigration.migrating`):i(F)(`vaultMigration.migrate`),loading:R.value,disabled:R.value||!L.value},null,8,[`label`,`loading`,`disabled`])],32)],64))])]))}}),[[`__scopeId`,`data-v-fb653095`]]);export{F as default};
1
+ import{Bn as e,Cn as t,Dn as n,Hi as r,Na as i,Ri as a,Wi as o,Yn as s,aa as c,ai as l,di as u,fa as d,fi as f,mi as p,on as m,pi as h,si as g,tn as _,vi as v,wa as y,xi as b,yi as x,zt as S}from"./index-GxI3bOA0.js";import{t as C}from"./message-DUmeTDJC.js";import{t as w}from"./password-BjWenHiO.js";var T={class:`migration-page`,"data-testid":`page-content`},E={class:`migration-card`},D={class:`migration-title`,"data-testid":`vault-migration-title`},O={class:`migration-lead`},k={class:`migration-path`},A={for:`legacyMasterPassword`},j={class:`migration-report`},M={key:0},N={key:1,class:`migration-report__warn`},P={class:`migration-backup`},F=t(b({__name:`VaultMigrationPage`,setup(t){let b=e(),{t:F}=s(),I=y(null),L=y(``),R=y(!1),z=y(``),B=y(null);a(async()=>{try{I.value=(await _()).legacyVault??null,I.value||await b.replace({name:`launch-project`})}catch{z.value=F(`vaultMigration.statusError`)}});async function V(){if(L.value){R.value=!0,z.value=``;try{B.value=await m(L.value),L.value=``}catch(e){z.value=S(e)??F(`vaultMigration.failed`)}finally{R.value=!1}}}async function H(){await b.replace({name:`launch-project`})}return(e,t)=>(r(),p(`div`,T,[u(`div`,E,[u(`h1`,D,d(i(F)(`vaultMigration.title`)),1),B.value?(r(),p(g,{key:1},[x(i(C),{severity:`success`,closable:!1,"data-testid":`vault-migration-done`},{default:c(()=>[v(d(i(F)(`vaultMigration.done`)),1)]),_:1}),u(`ul`,j,[(r(!0),p(g,null,o(B.value.rekeyed,e=>(r(),p(`li`,{key:e.file},d(i(F)(`vaultMigration.rekeyed`,{file:e.file,count:e.values})),1))),128)),B.value.moved.length?(r(),p(`li`,M,d(i(F)(`vaultMigration.moved`,{files:B.value.moved.join(`, `)})),1)):h(``,!0),B.value.skipped.length?(r(),p(`li`,N,d(i(F)(`vaultMigration.skipped`,{files:B.value.skipped.join(`, `)})),1)):h(``,!0)]),u(`p`,P,[v(d(i(F)(`vaultMigration.backupKept`))+` `,1),u(`code`,null,d(B.value.backupDir),1)]),x(i(n),{"data-testid":`vault-migration-continue`,label:i(F)(`vaultMigration.continue`),onClick:H},null,8,[`label`])],64)):(r(),p(g,{key:0},[u(`p`,O,d(i(F)(`vaultMigration.lead`)),1),u(`p`,k,[u(`code`,null,d(I.value),1)]),x(i(C),{severity:`info`,closable:!1,class:`migration-note`},{default:c(()=>[v(d(i(F)(`vaultMigration.backupNote`)),1)]),_:1}),u(`form`,{class:`migration-form`,onSubmit:l(V,[`prevent`])},[u(`label`,A,d(i(F)(`vaultMigration.oldPasswordLabel`)),1),x(i(w),{id:`legacyMasterPassword`,modelValue:L.value,"onUpdate:modelValue":t[0]||=e=>L.value=e,"data-testid":`legacy-master-password-input`,feedback:!1,"toggle-mask":``,autocomplete:`current-password`,disabled:R.value,fluid:``},null,8,[`modelValue`,`disabled`]),z.value?(r(),f(i(C),{key:0,severity:`error`,closable:!1,"data-testid":`vault-migration-error`},{default:c(()=>[v(d(z.value),1)]),_:1})):h(``,!0),x(i(n),{type:`submit`,"data-testid":`vault-migration-submit`,label:R.value?i(F)(`vaultMigration.migrating`):i(F)(`vaultMigration.migrate`),loading:R.value,disabled:R.value||!L.value},null,8,[`label`,`loading`,`disabled`])],32)],64))])]))}}),[[`__scopeId`,`data-v-fb653095`]]);export{F as default};
@@ -1 +1 @@
1
- import{$t as e,Cn as t,Hi as n,Ri as r,fa as i,mi as a,pi as o,wa as s,xi as c}from"./index-K7kdEsBo.js";var l={key:0,class:`version-badge`,"data-testid":`version-badge`},u=t(c({__name:`VersionBadge`,setup(t){let c=s(``);return r(()=>{e.health.check.query().then(e=>{c.value=e.version}).catch(()=>{})}),(e,t)=>c.value?(n(),a(`span`,l,`v`+i(c.value),1)):o(``,!0)}}),[[`__scopeId`,`data-v-61dd6b89`]]);export{u as t};
1
+ import{$t as e,Cn as t,Hi as n,Ri as r,fa as i,mi as a,pi as o,wa as s,xi as c}from"./index-GxI3bOA0.js";var l={key:0,class:`version-badge`,"data-testid":`version-badge`},u=t(c({__name:`VersionBadge`,setup(t){let c=s(``);return r(()=>{e.health.check.query().then(e=>{c.value=e.version}).catch(()=>{})}),(e,t)=>c.value?(n(),a(`span`,l,`v`+i(c.value),1)):o(``,!0)}}),[[`__scopeId`,`data-v-61dd6b89`]]);export{u as t};
@@ -0,0 +1 @@
1
+ import{Hi as e,fi as t,xi as n}from"./index-GxI3bOA0.js";import"./src-CrlKkUl0.js";import"./w3c-keyname-2TLn3EjF.js";import{t as r}from"./WikiView-Zx8Prvim.js";var i=n({__name:`WikiPage`,setup(n){return(n,i)=>(e(),t(r,{scope:`global`}))}});export{i as default};
@@ -1 +1 @@
1
- import{$t as e,Bn as t,Cn as n,Dn as r,Hi as i,Ki as a,Na as o,Pi as s,Ri as c,Tn as l,Wi as u,Wn as ee,aa as d,ai as f,di as p,fa as m,fi as te,ii as h,la as g,mi as _,pi as v,si as y,ta as b,ui as x,vi as S,wa as C,xi as w,yi as T,yn as ne}from"./index-K7kdEsBo.js";import{t as re}from"./src-9tSFXHt7.js";var E={class:`fs-node`},D=[`title`],O={class:`fs-node__name`},k=[`title`],A={class:`fs-node__name`},j={key:2,class:`fs-node__actions`},M={key:0,class:`fs-node__children`},ie=w({__name:`FsNode`,props:{entry:{},selectedPath:{},expanded:{},editable:{type:Boolean}},emits:[`toggle`,`select`,`create-child`,`rename`,`delete`],setup(e,{emit:t}){let n=e,r=t,o=x(()=>n.entry.type===`dir`&&n.expanded.has(n.entry.path)),s=x(()=>n.entry.type===`file`&&n.selectedPath===n.entry.path);return(t,n)=>{let c=a(`FsNode`,!0);return i(),_(`div`,E,[p(`div`,{class:g([`fs-node__row`,{"fs-node__row--selected":s.value}])},[e.entry.type===`dir`?(i(),_(`button`,{key:0,class:`fs-node__main`,title:e.entry.path,onClick:n[0]||=t=>r(`toggle`,e.entry.path)},[p(`i`,{class:g(`pi ${o.value?`pi-chevron-down`:`pi-chevron-right`} fs-node__caret`)},null,2),p(`i`,{class:g(`pi ${o.value?`pi-folder-open`:`pi-folder`} fs-node__icon fs-node__icon--folder`)},null,2),p(`span`,O,m(e.entry.name),1)],8,D)):(i(),_(`button`,{key:1,class:`fs-node__main`,title:e.entry.path,onClick:n[1]||=t=>r(`select`,e.entry.path)},[n[11]||=p(`span`,{class:`fs-node__caret-spacer`},null,-1),n[12]||=p(`i`,{class:`pi pi-file fs-node__icon`},null,-1),p(`span`,A,m(e.entry.name),1)],8,k)),e.editable?(i(),_(`div`,j,[e.entry.type===`dir`?(i(),_(`button`,{key:0,class:`fs-node__action`,title:`Nouveau fichier`,onClick:n[2]||=f(t=>r(`create-child`,e.entry.path,`file`),[`stop`])},[...n[13]||=[p(`i`,{class:`pi pi-file-plus`},null,-1)]])):v(``,!0),e.entry.type===`dir`?(i(),_(`button`,{key:1,class:`fs-node__action`,title:`Nouveau dossier`,onClick:n[3]||=f(t=>r(`create-child`,e.entry.path,`dir`),[`stop`])},[...n[14]||=[p(`i`,{class:`pi pi-folder-plus`},null,-1)]])):v(``,!0),p(`button`,{class:`fs-node__action`,title:`Renommer`,onClick:n[4]||=f(t=>r(`rename`,e.entry.path,e.entry.type===`dir`),[`stop`])},[...n[15]||=[p(`i`,{class:`pi pi-pencil`},null,-1)]]),p(`button`,{class:`fs-node__action fs-node__action--danger`,title:`Supprimer`,onClick:n[5]||=f(t=>r(`delete`,e.entry.path,e.entry.type===`dir`),[`stop`])},[...n[16]||=[p(`i`,{class:`pi pi-trash`},null,-1)]])])):v(``,!0)],2),e.entry.type===`dir`&&o.value?(i(),_(`ul`,M,[(i(!0),_(y,null,u(e.entry.children,t=>(i(),_(`li`,{key:t.path},[T(c,{entry:t,"selected-path":e.selectedPath,expanded:e.expanded,editable:e.editable,onToggle:n[6]||=e=>r(`toggle`,e),onSelect:n[7]||=e=>r(`select`,e),onCreateChild:n[8]||=(e,t)=>r(`create-child`,e,t),onRename:n[9]||=(e,t)=>r(`rename`,e,t),onDelete:n[10]||=(e,t)=>r(`delete`,e,t)},null,8,[`entry`,`selected-path`,`expanded`,`editable`])]))),128))])):v(``,!0)])}}}),ae={key:0,class:`wiki__not-configured`},oe={key:1,class:`wiki__not-configured`},se={key:0},ce={key:1},le={key:2,class:`wiki`},ue={class:`wiki__sidebar`},de={class:`wiki__sidebar-header`},fe=[`title`],pe={class:`wiki__sidebar-actions`},me={key:0,class:`wiki__loading`},he={key:1,class:`wiki__error`},ge={key:2,class:`wiki__empty`},_e={key:3,class:`wiki__tree`},ve={class:`wiki__main`},ye={class:`wiki__title-row`},be={class:`wiki__title-path`},xe={key:0,class:`wiki__status`},Se={key:0},Ce={key:1},we={key:2,class:`wiki__status-saved`},Te={key:1,class:`wiki__status wiki__status-readonly`},Ee={key:0,class:`wiki__editor-actions`},De={key:1,class:`wiki__loading`},Oe={key:1,class:`wiki__placeholder`},ke={class:`wiki__prompt-body`},Ae={for:`wiki-prompt-input`,class:`wiki__prompt-label`},je={class:`wiki__link-list`},Me=[`onClick`],Ne={class:`wiki__link-path`},Pe={key:0,class:`wiki__link-empty`},N=n(w({__name:`WikiView`,props:{scope:{}},setup(n){let a=t(),w=n,E=ee(),D=C(``),O=C([]),k=C(!1),A=C(null),j=C(!1),M=C(null),N=C(!1),P=C(new Set),F=C(null),I=C(``),L=C(!1),R=C(!1),z=C(!1),B=null,V=``,Fe=C(null),H=C(!1),U=C(``),W=C({open:!1,title:``,label:``,value:``,placeholder:``,resolve:null});function Ie(e){return new Promise(t=>{W.value={open:!0,title:e.title,label:e.label,value:e.initialValue??``,placeholder:e.placeholder??``,resolve:t}})}function Le(){let e=W.value.value.trim();W.value.resolve?.(e||null),W.value.open=!1}function G(){W.value.resolve?.(null),W.value.open=!1}let Re=x(()=>{let e=[],t=n=>{for(let r of n)r.type===`file`?e.push({path:r.path,name:r.name}):t(r.children)};return t(O.value),e}),ze=x(()=>{let e=U.value.trim().toLowerCase();return Re.value.filter(e=>e.path!==F.value).filter(t=>!e||t.path.toLowerCase().includes(e))});async function K(){k.value=!0,A.value=null,j.value=!1,M.value=null;try{let t=await e.wiki.list.query({scope:w.scope});D.value=t.root,O.value=t.entries}catch(e){let t=e.message;if(/Aucun dossier de docs|globalDocsPath|docsPath|Aucun cwd/i.test(t))j.value=!0;else{let e=t.match(/Dossier introuvable:\s*(.+)$/);e?M.value=e[1].trim():A.value=t}}finally{k.value=!1}}async function Be(){N.value=!0;try{await e.wiki.ensureRoot.mutate({scope:w.scope}),M.value=null,await K()}catch(e){A.value=e.message}finally{N.value=!1}}let q=x(()=>w.scope===`global`),Ve=x(()=>w.scope.startsWith(`service:`)),He=x(()=>Ve.value?w.scope.slice(8):null);function Ue(){q.value?a.push({name:`settings`,query:{section:`general`}}):He.value&&a.push(`/services/${He.value}/config?configTab=general`)}function We(e){P.value.has(e)?P.value.delete(e):P.value.add(e),P.value=new Set(P.value)}async function J(t){X(),z.value=!1,F.value=t,L.value=!0,I.value=``;try{let n=await e.wiki.read.query({scope:w.scope,path:t});I.value=n.content,V=n.content;let r=t.split(`/`);for(r.pop();r.length;)P.value.add(r.join(`/`)),r.pop();P.value=new Set(P.value)}catch(e){A.value=e.message}finally{L.value=!1}}function Ge(){B&&clearTimeout(B),B=setTimeout(()=>{Y()},800)}async function Y(){if(!F.value||I.value===V)return;let t=F.value,n=I.value;R.value=!0;try{await e.wiki.write.mutate({scope:w.scope,path:t,content:n}),V=n}catch(e){A.value=e.message}finally{R.value=!1}}function X(){B&&(clearTimeout(B),B=null,Y())}b(I,()=>{F.value&&z.value&&Ge()});function Ke(){z.value?(X(),z.value=!1):z.value=!0}async function Z(t,n){let r=await Ie({title:n===`file`?`Nouveau fichier`:`Nouveau dossier`,label:n===`file`?`Nom du fichier (sans extension)`:`Nom du dossier`,initialValue:n===`file`?`nouveau`:`nouveau-dossier`});if(!r)return;let i=r.trim().replace(/[^A-Za-z0-9_./-]/g,`-`);if(!i)return;let a=n===`file`&&!/\.(md|markdown)$/i.test(i)?`${i}.md`:i,o=t?`${t}/${a}`:a;try{n===`file`?(await e.wiki.createFile.mutate({scope:w.scope,path:o}),await K(),J(o)):(await e.wiki.createDir.mutate({scope:w.scope,path:o}),P.value.add(o),P.value=new Set(P.value),await K())}catch(e){A.value=e.message}}async function qe(t,n){let r=t.split(`/`),i=r[r.length-1],a=await Ie({title:`Renommer`,label:`Nouveau nom`,initialValue:i});if(!a||a===i)return;let o=a.trim().replace(/[^A-Za-z0-9_./-]/g,`-`);if(!o)return;let s=!n&&!/\.(md|markdown)$/i.test(o)?`${o}.md`:o;r[r.length-1]=s;let c=r.join(`/`);try{await e.wiki.rename.mutate({scope:w.scope,fromPath:t,toPath:c}),F.value===t&&(F.value=c),await K()}catch(e){A.value=e.message}}function Je(t,n){E.require({message:`Supprimer "${t}" ${n?`(et tout son contenu)`:``} ?`,header:`Confirmation`,icon:`pi pi-exclamation-triangle`,rejectProps:{label:`Annuler`,severity:`secondary`,outlined:!0},acceptProps:{label:`Supprimer`,severity:`danger`},accept:async()=>{try{await e.wiki.delete.mutate({scope:w.scope,path:t}),(F.value===t||n&&F.value?.startsWith(t+`/`))&&(F.value=null,I.value=``),await K()}catch(e){A.value=e.message}}})}function Ye(){U.value=``,H.value=!0}function Xe(e){let t=Ze(F.value??``,e.path);Fe.value?.insertWikiLink?.(t,e.name.replace(/\.(md|markdown)$/i,``)),H.value=!1}function Ze(e,t){let n=e.split(`/`);n.pop();let r=t.split(`/`),i=0;for(;i<n.length&&i<r.length-1&&n[i]===r[i];)i++;let a=n.length-i,o=r.slice(i);return(a===0?`./`:`../`.repeat(a))+o.join(`/`)}function Qe(e){if(e.startsWith(`http://`)||e.startsWith(`https://`)||e.startsWith(`mailto:`)){window.open(e,`_blank`,`noopener,noreferrer`);return}if(e.startsWith(`#`)||!/\.(md|markdown)(#|\?|$)/i.test(e))return;let t=e.split(`#`)[0].split(`?`)[0],n=$e(F.value??``,t);Re.value.some(e=>e.path===n)?J(n):A.value=`Fichier introuvable: ${n}`}function $e(e,t){if(t.startsWith(`/`))return t.replace(/^\/+/,``);let n=e.includes(`/`)?e.slice(0,e.lastIndexOf(`/`)).split(`/`).filter(Boolean):[];for(let e of t.split(`/`))e===``||e===`.`||(e===`..`?n.pop():n.push(e));return n.join(`/`)}function Q(){F.value&&J(F.value)}function $(){document.visibilityState===`visible`&&Q()}return b(()=>w.scope,()=>{F.value=null,I.value=``,O.value=[],K()}),c(()=>{K(),window.addEventListener(`focus`,Q),document.addEventListener(`visibilitychange`,$)}),s(()=>{X(),window.removeEventListener(`focus`,Q),document.removeEventListener(`visibilitychange`,$)}),(e,t)=>M.value?(i(),_(`div`,ae,[t[8]||=p(`i`,{class:`pi pi-folder-open wiki__not-configured-icon`},null,-1),t[9]||=p(`h2`,null,`Le dossier de documentation n'existe pas encore`,-1),p(`p`,null,[t[7]||=S(` Chemin attendu : `,-1),p(`code`,null,m(M.value),1)]),T(o(r),{icon:`pi pi-plus`,label:`Créer le dossier`,loading:N.value,onClick:Be},null,8,[`loading`])])):j.value?(i(),_(`div`,oe,[t[11]||=p(`i`,{class:`pi pi-cog wiki__not-configured-icon`},null,-1),p(`h2`,null,m(q.value?`Wiki global non configuré`:`Documentation du service non configurée`),1),q.value?(i(),_(`p`,se,` Le wiki global a besoin d'un chemin absolu vers un dossier sur disque pour fonctionner. `)):(i(),_(`p`,ce,[...t[10]||=[S(` Ce service n'a pas de `,-1),p(`code`,null,`cwd`,-1),S(` ni de `,-1),p(`code`,null,`docsPath`,-1),S(` renseigné. `,-1)]])),T(o(r),{icon:`pi pi-arrow-right`,label:q.value?`Configurer le wiki global`:`Configurer le service`,onClick:Ue},null,8,[`label`])])):(i(),_(`div`,le,[p(`aside`,ue,[p(`div`,de,[p(`span`,{class:`wiki__sidebar-title`,title:D.value},m(D.value||`Pages`),9,fe),p(`div`,pe,[T(o(r),{icon:`pi pi-folder-plus`,size:`small`,text:``,rounded:``,title:`Nouveau dossier racine`,onClick:t[0]||=e=>Z(``,`dir`)}),T(o(r),{icon:`pi pi-file-plus`,size:`small`,text:``,rounded:``,title:`Nouveau fichier racine`,onClick:t[1]||=e=>Z(``,`file`)}),T(o(r),{icon:`pi pi-refresh`,size:`small`,text:``,rounded:``,title:`Rafraîchir`,onClick:K})])]),k.value?(i(),_(`div`,me,`Chargement…`)):A.value?(i(),_(`div`,he,m(A.value),1)):O.value.length===0?(i(),_(`div`,ge,` Aucun fichier. Utilisez les boutons en haut pour créer un fichier ou un dossier. `)):(i(),_(`ul`,_e,[(i(!0),_(y,null,u(O.value,e=>(i(),_(`li`,{key:e.path},[T(ie,{entry:e,"selected-path":F.value,expanded:P.value,editable:!0,onToggle:We,onSelect:J,onCreateChild:Z,onRename:qe,onDelete:Je},null,8,[`entry`,`selected-path`,`expanded`])]))),128))]))]),p(`section`,ve,[F.value?(i(),_(y,{key:0},[p(`div`,ye,[t[16]||=p(`i`,{class:`pi pi-file wiki__title-icon`},null,-1),p(`span`,be,m(F.value),1),z.value?(i(),_(`span`,xe,[R.value?(i(),_(`span`,Se,[...t[12]||=[p(`i`,{class:`pi pi-spin pi-spinner`},null,-1),S(` Sauvegarde…`,-1)]])):I.value===o(V)?(i(),_(`span`,we,[...t[14]||=[p(`i`,{class:`pi pi-check`},null,-1),S(` Sauvegardé`,-1)]])):(i(),_(`span`,Ce,[...t[13]||=[p(`i`,{class:`pi pi-circle-fill wiki__status-pending`},null,-1),S(` Modifié`,-1)]]))])):(i(),_(`span`,Te,[...t[15]||=[p(`i`,{class:`pi pi-eye`},null,-1),S(` Lecture seule `,-1)]])),T(o(r),{icon:z.value?`pi pi-check`:`pi pi-pencil`,label:z.value?`Terminer`:`Modifier`,size:`small`,severity:z.value?`success`:`secondary`,outlined:!z.value,onClick:Ke},null,8,[`icon`,`label`,`severity`,`outlined`]),T(o(r),{icon:`pi pi-refresh`,size:`small`,text:``,rounded:``,title:`Recharger depuis le disque`,loading:L.value,onClick:Q},null,8,[`loading`])]),z.value?(i(),_(`div`,Ee,[T(o(r),{icon:`pi pi-link`,label:`Lier un fichier`,size:`small`,text:``,onClick:Ye})])):v(``,!0),L.value?(i(),_(`div`,De,`Chargement du fichier…`)):(i(),te(o(re),{key:2,ref_key:`editorRef`,ref:Fe,modelValue:I.value,"onUpdate:modelValue":t[2]||=e=>I.value=e,markdown:``,editable:z.value,class:g([`wiki__editor`,{"wiki__editor--readonly":!z.value}]),placeholder:`Écrivez le contenu de la page…`,onLinkClick:Qe},null,8,[`modelValue`,`editable`,`class`]))],64)):(i(),_(`div`,Oe,[...t[17]||=[p(`i`,{class:`pi pi-book wiki__placeholder-icon`},null,-1),p(`p`,null,`Sélectionnez un fichier ou créez-en un nouveau.`,-1)]]))]),T(o(l),{visible:W.value.open,"onUpdate:visible":t[4]||=e=>W.value.open=e,header:W.value.title,modal:``,style:{width:`420px`},"close-on-escape":!0,onHide:G},{footer:d(()=>[T(o(r),{label:`Annuler`,severity:`secondary`,outlined:``,size:`small`,onClick:G}),T(o(r),{label:`OK`,size:`small`,disabled:!W.value.value.trim(),onClick:Le},null,8,[`disabled`])]),default:d(()=>[p(`div`,ke,[p(`label`,Ae,m(W.value.label),1),T(o(ne),{id:`wiki-prompt-input`,modelValue:W.value.value,"onUpdate:modelValue":t[3]||=e=>W.value.value=e,class:`wiki__prompt-input`,placeholder:W.value.placeholder,autofocus:``,onKeydown:[h(f(Le,[`prevent`]),[`enter`]),h(G,[`escape`])]},null,8,[`modelValue`,`placeholder`,`onKeydown`])])]),_:1},8,[`visible`,`header`]),T(o(l),{visible:H.value,"onUpdate:visible":t[6]||=e=>H.value=e,header:`Insérer un lien vers un fichier`,modal:``,style:{width:`500px`}},{default:d(()=>[T(o(ne),{modelValue:U.value,"onUpdate:modelValue":t[5]||=e=>U.value=e,placeholder:`Rechercher un fichier…`,class:`wiki__link-search`,autofocus:``},null,8,[`modelValue`]),p(`div`,je,[(i(!0),_(y,null,u(ze.value,e=>(i(),_(`button`,{key:e.path,class:`wiki__link-item`,onClick:t=>Xe(e)},[t[18]||=p(`i`,{class:`pi pi-file`},null,-1),p(`span`,Ne,m(e.path),1)],8,Me))),128)),ze.value.length===0?(i(),_(`div`,Pe,` Aucun fichier disponible. `)):v(``,!0)])]),_:1},8,[`visible`])]))}}),[[`__scopeId`,`data-v-10f9637d`]]);export{N as t};
1
+ import{$t as e,Bn as t,Cn as n,Dn as r,Hi as i,Ki as a,Na as o,Pi as s,Ri as c,Tn as l,Wi as u,Wn as ee,aa as d,ai as f,di as p,fa as m,fi as te,ii as h,la as g,mi as _,pi as v,si as y,ta as b,ui as x,vi as S,wa as C,xi as w,yi as T,yn as ne}from"./index-GxI3bOA0.js";import{t as re}from"./src-CrlKkUl0.js";var E={class:`fs-node`},D=[`title`],O={class:`fs-node__name`},k=[`title`],A={class:`fs-node__name`},j={key:2,class:`fs-node__actions`},M={key:0,class:`fs-node__children`},ie=w({__name:`FsNode`,props:{entry:{},selectedPath:{},expanded:{},editable:{type:Boolean}},emits:[`toggle`,`select`,`create-child`,`rename`,`delete`],setup(e,{emit:t}){let n=e,r=t,o=x(()=>n.entry.type===`dir`&&n.expanded.has(n.entry.path)),s=x(()=>n.entry.type===`file`&&n.selectedPath===n.entry.path);return(t,n)=>{let c=a(`FsNode`,!0);return i(),_(`div`,E,[p(`div`,{class:g([`fs-node__row`,{"fs-node__row--selected":s.value}])},[e.entry.type===`dir`?(i(),_(`button`,{key:0,class:`fs-node__main`,title:e.entry.path,onClick:n[0]||=t=>r(`toggle`,e.entry.path)},[p(`i`,{class:g(`pi ${o.value?`pi-chevron-down`:`pi-chevron-right`} fs-node__caret`)},null,2),p(`i`,{class:g(`pi ${o.value?`pi-folder-open`:`pi-folder`} fs-node__icon fs-node__icon--folder`)},null,2),p(`span`,O,m(e.entry.name),1)],8,D)):(i(),_(`button`,{key:1,class:`fs-node__main`,title:e.entry.path,onClick:n[1]||=t=>r(`select`,e.entry.path)},[n[11]||=p(`span`,{class:`fs-node__caret-spacer`},null,-1),n[12]||=p(`i`,{class:`pi pi-file fs-node__icon`},null,-1),p(`span`,A,m(e.entry.name),1)],8,k)),e.editable?(i(),_(`div`,j,[e.entry.type===`dir`?(i(),_(`button`,{key:0,class:`fs-node__action`,title:`Nouveau fichier`,onClick:n[2]||=f(t=>r(`create-child`,e.entry.path,`file`),[`stop`])},[...n[13]||=[p(`i`,{class:`pi pi-file-plus`},null,-1)]])):v(``,!0),e.entry.type===`dir`?(i(),_(`button`,{key:1,class:`fs-node__action`,title:`Nouveau dossier`,onClick:n[3]||=f(t=>r(`create-child`,e.entry.path,`dir`),[`stop`])},[...n[14]||=[p(`i`,{class:`pi pi-folder-plus`},null,-1)]])):v(``,!0),p(`button`,{class:`fs-node__action`,title:`Renommer`,onClick:n[4]||=f(t=>r(`rename`,e.entry.path,e.entry.type===`dir`),[`stop`])},[...n[15]||=[p(`i`,{class:`pi pi-pencil`},null,-1)]]),p(`button`,{class:`fs-node__action fs-node__action--danger`,title:`Supprimer`,onClick:n[5]||=f(t=>r(`delete`,e.entry.path,e.entry.type===`dir`),[`stop`])},[...n[16]||=[p(`i`,{class:`pi pi-trash`},null,-1)]])])):v(``,!0)],2),e.entry.type===`dir`&&o.value?(i(),_(`ul`,M,[(i(!0),_(y,null,u(e.entry.children,t=>(i(),_(`li`,{key:t.path},[T(c,{entry:t,"selected-path":e.selectedPath,expanded:e.expanded,editable:e.editable,onToggle:n[6]||=e=>r(`toggle`,e),onSelect:n[7]||=e=>r(`select`,e),onCreateChild:n[8]||=(e,t)=>r(`create-child`,e,t),onRename:n[9]||=(e,t)=>r(`rename`,e,t),onDelete:n[10]||=(e,t)=>r(`delete`,e,t)},null,8,[`entry`,`selected-path`,`expanded`,`editable`])]))),128))])):v(``,!0)])}}}),ae={key:0,class:`wiki__not-configured`},oe={key:1,class:`wiki__not-configured`},se={key:0},ce={key:1},le={key:2,class:`wiki`},ue={class:`wiki__sidebar`},de={class:`wiki__sidebar-header`},fe=[`title`],pe={class:`wiki__sidebar-actions`},me={key:0,class:`wiki__loading`},he={key:1,class:`wiki__error`},ge={key:2,class:`wiki__empty`},_e={key:3,class:`wiki__tree`},ve={class:`wiki__main`},ye={class:`wiki__title-row`},be={class:`wiki__title-path`},xe={key:0,class:`wiki__status`},Se={key:0},Ce={key:1},we={key:2,class:`wiki__status-saved`},Te={key:1,class:`wiki__status wiki__status-readonly`},Ee={key:0,class:`wiki__editor-actions`},De={key:1,class:`wiki__loading`},Oe={key:1,class:`wiki__placeholder`},ke={class:`wiki__prompt-body`},Ae={for:`wiki-prompt-input`,class:`wiki__prompt-label`},je={class:`wiki__link-list`},Me=[`onClick`],Ne={class:`wiki__link-path`},Pe={key:0,class:`wiki__link-empty`},N=n(w({__name:`WikiView`,props:{scope:{}},setup(n){let a=t(),w=n,E=ee(),D=C(``),O=C([]),k=C(!1),A=C(null),j=C(!1),M=C(null),N=C(!1),P=C(new Set),F=C(null),I=C(``),L=C(!1),R=C(!1),z=C(!1),B=null,V=``,Fe=C(null),H=C(!1),U=C(``),W=C({open:!1,title:``,label:``,value:``,placeholder:``,resolve:null});function Ie(e){return new Promise(t=>{W.value={open:!0,title:e.title,label:e.label,value:e.initialValue??``,placeholder:e.placeholder??``,resolve:t}})}function Le(){let e=W.value.value.trim();W.value.resolve?.(e||null),W.value.open=!1}function G(){W.value.resolve?.(null),W.value.open=!1}let Re=x(()=>{let e=[],t=n=>{for(let r of n)r.type===`file`?e.push({path:r.path,name:r.name}):t(r.children)};return t(O.value),e}),ze=x(()=>{let e=U.value.trim().toLowerCase();return Re.value.filter(e=>e.path!==F.value).filter(t=>!e||t.path.toLowerCase().includes(e))});async function K(){k.value=!0,A.value=null,j.value=!1,M.value=null;try{let t=await e.wiki.list.query({scope:w.scope});D.value=t.root,O.value=t.entries}catch(e){let t=e.message;if(/Aucun dossier de docs|globalDocsPath|docsPath|Aucun cwd/i.test(t))j.value=!0;else{let e=t.match(/Dossier introuvable:\s*(.+)$/);e?M.value=e[1].trim():A.value=t}}finally{k.value=!1}}async function Be(){N.value=!0;try{await e.wiki.ensureRoot.mutate({scope:w.scope}),M.value=null,await K()}catch(e){A.value=e.message}finally{N.value=!1}}let q=x(()=>w.scope===`global`),Ve=x(()=>w.scope.startsWith(`service:`)),He=x(()=>Ve.value?w.scope.slice(8):null);function Ue(){q.value?a.push({name:`settings`,query:{section:`general`}}):He.value&&a.push(`/services/${He.value}/config?configTab=general`)}function We(e){P.value.has(e)?P.value.delete(e):P.value.add(e),P.value=new Set(P.value)}async function J(t){X(),z.value=!1,F.value=t,L.value=!0,I.value=``;try{let n=await e.wiki.read.query({scope:w.scope,path:t});I.value=n.content,V=n.content;let r=t.split(`/`);for(r.pop();r.length;)P.value.add(r.join(`/`)),r.pop();P.value=new Set(P.value)}catch(e){A.value=e.message}finally{L.value=!1}}function Ge(){B&&clearTimeout(B),B=setTimeout(()=>{Y()},800)}async function Y(){if(!F.value||I.value===V)return;let t=F.value,n=I.value;R.value=!0;try{await e.wiki.write.mutate({scope:w.scope,path:t,content:n}),V=n}catch(e){A.value=e.message}finally{R.value=!1}}function X(){B&&(clearTimeout(B),B=null,Y())}b(I,()=>{F.value&&z.value&&Ge()});function Ke(){z.value?(X(),z.value=!1):z.value=!0}async function Z(t,n){let r=await Ie({title:n===`file`?`Nouveau fichier`:`Nouveau dossier`,label:n===`file`?`Nom du fichier (sans extension)`:`Nom du dossier`,initialValue:n===`file`?`nouveau`:`nouveau-dossier`});if(!r)return;let i=r.trim().replace(/[^A-Za-z0-9_./-]/g,`-`);if(!i)return;let a=n===`file`&&!/\.(md|markdown)$/i.test(i)?`${i}.md`:i,o=t?`${t}/${a}`:a;try{n===`file`?(await e.wiki.createFile.mutate({scope:w.scope,path:o}),await K(),J(o)):(await e.wiki.createDir.mutate({scope:w.scope,path:o}),P.value.add(o),P.value=new Set(P.value),await K())}catch(e){A.value=e.message}}async function qe(t,n){let r=t.split(`/`),i=r[r.length-1],a=await Ie({title:`Renommer`,label:`Nouveau nom`,initialValue:i});if(!a||a===i)return;let o=a.trim().replace(/[^A-Za-z0-9_./-]/g,`-`);if(!o)return;let s=!n&&!/\.(md|markdown)$/i.test(o)?`${o}.md`:o;r[r.length-1]=s;let c=r.join(`/`);try{await e.wiki.rename.mutate({scope:w.scope,fromPath:t,toPath:c}),F.value===t&&(F.value=c),await K()}catch(e){A.value=e.message}}function Je(t,n){E.require({message:`Supprimer "${t}" ${n?`(et tout son contenu)`:``} ?`,header:`Confirmation`,icon:`pi pi-exclamation-triangle`,rejectProps:{label:`Annuler`,severity:`secondary`,outlined:!0},acceptProps:{label:`Supprimer`,severity:`danger`},accept:async()=>{try{await e.wiki.delete.mutate({scope:w.scope,path:t}),(F.value===t||n&&F.value?.startsWith(t+`/`))&&(F.value=null,I.value=``),await K()}catch(e){A.value=e.message}}})}function Ye(){U.value=``,H.value=!0}function Xe(e){let t=Ze(F.value??``,e.path);Fe.value?.insertWikiLink?.(t,e.name.replace(/\.(md|markdown)$/i,``)),H.value=!1}function Ze(e,t){let n=e.split(`/`);n.pop();let r=t.split(`/`),i=0;for(;i<n.length&&i<r.length-1&&n[i]===r[i];)i++;let a=n.length-i,o=r.slice(i);return(a===0?`./`:`../`.repeat(a))+o.join(`/`)}function Qe(e){if(e.startsWith(`http://`)||e.startsWith(`https://`)||e.startsWith(`mailto:`)){window.open(e,`_blank`,`noopener,noreferrer`);return}if(e.startsWith(`#`)||!/\.(md|markdown)(#|\?|$)/i.test(e))return;let t=e.split(`#`)[0].split(`?`)[0],n=$e(F.value??``,t);Re.value.some(e=>e.path===n)?J(n):A.value=`Fichier introuvable: ${n}`}function $e(e,t){if(t.startsWith(`/`))return t.replace(/^\/+/,``);let n=e.includes(`/`)?e.slice(0,e.lastIndexOf(`/`)).split(`/`).filter(Boolean):[];for(let e of t.split(`/`))e===``||e===`.`||(e===`..`?n.pop():n.push(e));return n.join(`/`)}function Q(){F.value&&J(F.value)}function $(){document.visibilityState===`visible`&&Q()}return b(()=>w.scope,()=>{F.value=null,I.value=``,O.value=[],K()}),c(()=>{K(),window.addEventListener(`focus`,Q),document.addEventListener(`visibilitychange`,$)}),s(()=>{X(),window.removeEventListener(`focus`,Q),document.removeEventListener(`visibilitychange`,$)}),(e,t)=>M.value?(i(),_(`div`,ae,[t[8]||=p(`i`,{class:`pi pi-folder-open wiki__not-configured-icon`},null,-1),t[9]||=p(`h2`,null,`Le dossier de documentation n'existe pas encore`,-1),p(`p`,null,[t[7]||=S(` Chemin attendu : `,-1),p(`code`,null,m(M.value),1)]),T(o(r),{icon:`pi pi-plus`,label:`Créer le dossier`,loading:N.value,onClick:Be},null,8,[`loading`])])):j.value?(i(),_(`div`,oe,[t[11]||=p(`i`,{class:`pi pi-cog wiki__not-configured-icon`},null,-1),p(`h2`,null,m(q.value?`Wiki global non configuré`:`Documentation du service non configurée`),1),q.value?(i(),_(`p`,se,` Le wiki global a besoin d'un chemin absolu vers un dossier sur disque pour fonctionner. `)):(i(),_(`p`,ce,[...t[10]||=[S(` Ce service n'a pas de `,-1),p(`code`,null,`cwd`,-1),S(` ni de `,-1),p(`code`,null,`docsPath`,-1),S(` renseigné. `,-1)]])),T(o(r),{icon:`pi pi-arrow-right`,label:q.value?`Configurer le wiki global`:`Configurer le service`,onClick:Ue},null,8,[`label`])])):(i(),_(`div`,le,[p(`aside`,ue,[p(`div`,de,[p(`span`,{class:`wiki__sidebar-title`,title:D.value},m(D.value||`Pages`),9,fe),p(`div`,pe,[T(o(r),{icon:`pi pi-folder-plus`,size:`small`,text:``,rounded:``,title:`Nouveau dossier racine`,onClick:t[0]||=e=>Z(``,`dir`)}),T(o(r),{icon:`pi pi-file-plus`,size:`small`,text:``,rounded:``,title:`Nouveau fichier racine`,onClick:t[1]||=e=>Z(``,`file`)}),T(o(r),{icon:`pi pi-refresh`,size:`small`,text:``,rounded:``,title:`Rafraîchir`,onClick:K})])]),k.value?(i(),_(`div`,me,`Chargement…`)):A.value?(i(),_(`div`,he,m(A.value),1)):O.value.length===0?(i(),_(`div`,ge,` Aucun fichier. Utilisez les boutons en haut pour créer un fichier ou un dossier. `)):(i(),_(`ul`,_e,[(i(!0),_(y,null,u(O.value,e=>(i(),_(`li`,{key:e.path},[T(ie,{entry:e,"selected-path":F.value,expanded:P.value,editable:!0,onToggle:We,onSelect:J,onCreateChild:Z,onRename:qe,onDelete:Je},null,8,[`entry`,`selected-path`,`expanded`])]))),128))]))]),p(`section`,ve,[F.value?(i(),_(y,{key:0},[p(`div`,ye,[t[16]||=p(`i`,{class:`pi pi-file wiki__title-icon`},null,-1),p(`span`,be,m(F.value),1),z.value?(i(),_(`span`,xe,[R.value?(i(),_(`span`,Se,[...t[12]||=[p(`i`,{class:`pi pi-spin pi-spinner`},null,-1),S(` Sauvegarde…`,-1)]])):I.value===o(V)?(i(),_(`span`,we,[...t[14]||=[p(`i`,{class:`pi pi-check`},null,-1),S(` Sauvegardé`,-1)]])):(i(),_(`span`,Ce,[...t[13]||=[p(`i`,{class:`pi pi-circle-fill wiki__status-pending`},null,-1),S(` Modifié`,-1)]]))])):(i(),_(`span`,Te,[...t[15]||=[p(`i`,{class:`pi pi-eye`},null,-1),S(` Lecture seule `,-1)]])),T(o(r),{icon:z.value?`pi pi-check`:`pi pi-pencil`,label:z.value?`Terminer`:`Modifier`,size:`small`,severity:z.value?`success`:`secondary`,outlined:!z.value,onClick:Ke},null,8,[`icon`,`label`,`severity`,`outlined`]),T(o(r),{icon:`pi pi-refresh`,size:`small`,text:``,rounded:``,title:`Recharger depuis le disque`,loading:L.value,onClick:Q},null,8,[`loading`])]),z.value?(i(),_(`div`,Ee,[T(o(r),{icon:`pi pi-link`,label:`Lier un fichier`,size:`small`,text:``,onClick:Ye})])):v(``,!0),L.value?(i(),_(`div`,De,`Chargement du fichier…`)):(i(),te(o(re),{key:2,ref_key:`editorRef`,ref:Fe,modelValue:I.value,"onUpdate:modelValue":t[2]||=e=>I.value=e,markdown:``,editable:z.value,class:g([`wiki__editor`,{"wiki__editor--readonly":!z.value}]),placeholder:`Écrivez le contenu de la page…`,onLinkClick:Qe},null,8,[`modelValue`,`editable`,`class`]))],64)):(i(),_(`div`,Oe,[...t[17]||=[p(`i`,{class:`pi pi-book wiki__placeholder-icon`},null,-1),p(`p`,null,`Sélectionnez un fichier ou créez-en un nouveau.`,-1)]]))]),T(o(l),{visible:W.value.open,"onUpdate:visible":t[4]||=e=>W.value.open=e,header:W.value.title,modal:``,style:{width:`420px`},"close-on-escape":!0,onHide:G},{footer:d(()=>[T(o(r),{label:`Annuler`,severity:`secondary`,outlined:``,size:`small`,onClick:G}),T(o(r),{label:`OK`,size:`small`,disabled:!W.value.value.trim(),onClick:Le},null,8,[`disabled`])]),default:d(()=>[p(`div`,ke,[p(`label`,Ae,m(W.value.label),1),T(o(ne),{id:`wiki-prompt-input`,modelValue:W.value.value,"onUpdate:modelValue":t[3]||=e=>W.value.value=e,class:`wiki__prompt-input`,placeholder:W.value.placeholder,autofocus:``,onKeydown:[h(f(Le,[`prevent`]),[`enter`]),h(G,[`escape`])]},null,8,[`modelValue`,`placeholder`,`onKeydown`])])]),_:1},8,[`visible`,`header`]),T(o(l),{visible:H.value,"onUpdate:visible":t[6]||=e=>H.value=e,header:`Insérer un lien vers un fichier`,modal:``,style:{width:`500px`}},{default:d(()=>[T(o(ne),{modelValue:U.value,"onUpdate:modelValue":t[5]||=e=>U.value=e,placeholder:`Rechercher un fichier…`,class:`wiki__link-search`,autofocus:``},null,8,[`modelValue`]),p(`div`,je,[(i(!0),_(y,null,u(ze.value,e=>(i(),_(`button`,{key:e.path,class:`wiki__link-item`,onClick:t=>Xe(e)},[t[18]||=p(`i`,{class:`pi pi-file`},null,-1),p(`span`,Ne,m(e.path),1)],8,Me))),128)),ze.value.length===0?(i(),_(`div`,Pe,` Aucun fichier disponible. `)):v(``,!0)])]),_:1},8,[`visible`])]))}}),[[`__scopeId`,`data-v-10f9637d`]]);export{N as t};