@runeya/runeya 2.0.72 → 2.0.73

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 (203) hide show
  1. package/agent/index.js +6 -1
  2. package/agent/index.js.map +1 -1
  3. package/agent-manager-LBV3CVHB.js +7 -0
  4. package/{chunk-HPYBAUAH.js → chunk-OTJQEK4D.js} +7 -2
  5. package/{chunk-HPYBAUAH.js.map → chunk-OTJQEK4D.js.map} +1 -1
  6. package/index.js +1 -1
  7. package/package.json +1 -1
  8. package/{src-53OQNM27.js → src-MY5W5AYS.js} +71 -49
  9. package/src-MY5W5AYS.js.map +1 -0
  10. package/web/assets/{AgentScalarChatInterface.vue-DdIfThmp.js → AgentScalarChatInterface.vue-369U2Skl.js} +1 -1
  11. package/web/assets/{AgentTerminalPage-v9fFc2Kd.js → AgentTerminalPage-RHehuR0e.js} +1 -1
  12. package/web/assets/AiChatPage-BbgFeCu5.js +1 -0
  13. package/web/assets/{AppLayout-CLzy-QOZ.js → AppLayout-CvEbrCSS.js} +1 -1
  14. package/web/assets/{AuditPage-DgJIcr0c.js → AuditPage-BRBcRwff.js} +1 -1
  15. package/web/assets/CloudAccountPage-C9Y4zQYc.js +1 -0
  16. package/web/assets/{CloudAccountPage-DGtKCmXL.js → CloudAccountPage-DmDrYdSX.js} +1 -1
  17. package/web/assets/{CloudMessagingPage-Bql34zJU.js → CloudMessagingPage-j2dztUz1.js} +1 -1
  18. package/web/assets/{DashboardPage-BSvJxrcT.js → DashboardPage-DbgOaKaI.js} +1 -1
  19. package/web/assets/{DirectoryPickerDialog-BfLLfUQy.js → DirectoryPickerDialog-B5a7tO0P.js} +1 -1
  20. package/web/assets/{EditorIcon-BbilRWLq.js → EditorIcon-C32poOg-.js} +1 -1
  21. package/web/assets/{EnvironmentForm-BIHXK18r.js → EnvironmentForm-CjnghPBi.js} +1 -1
  22. package/web/assets/{EnvironmentFormPage-oLAwLJ1b.js → EnvironmentFormPage-VkOp77jY.js} +1 -1
  23. package/web/assets/{EnvironmentListPage-tJfB0q_E.js → EnvironmentListPage-GkrefCj6.js} +1 -1
  24. package/web/assets/KanbanBoardPage-CCl8dmwn.css +1 -0
  25. package/web/assets/{KanbanBoardPage-DpyYe6jx.js → KanbanBoardPage-CkrXazSk.js} +3 -3
  26. package/web/assets/{KanbanListPage-DjXWjWgU.js → KanbanListPage-CtC0GWl8.js} +1 -1
  27. package/web/assets/{LaunchProjectPage-Bqgsa2z1.js → LaunchProjectPage-Zx3L-5pP.js} +1 -1
  28. package/web/assets/{LaunchServicesPage-BCNDSuuN.js → LaunchServicesPage-Du56bNpD.js} +1 -1
  29. package/web/assets/{LogViewer-gTNzyao0.js → LogViewer-CusYWOVz.js} +1 -1
  30. package/web/assets/{OrgKeyPrompt-BdNV_cve.js → OrgKeyPrompt-BhsICoTI.js} +1 -1
  31. package/web/assets/{ProcessControls-BzMrd-2c.js → ProcessControls-CNrbnTpl.js} +1 -1
  32. package/web/assets/{ProcessDetailPage-Rg5zyPYJ.js → ProcessDetailPage-h8RXTZkW.js} +1 -1
  33. package/web/assets/{ProcessMetrics-hZWAa3gi.js → ProcessMetrics-B6Zf110f.js} +1 -1
  34. package/web/assets/{ProjectDetailPage-NbxG6AIr.js → ProjectDetailPage-B_fowFne.js} +1 -1
  35. package/web/assets/{ProjectListPage-COMYMVbr.js → ProjectListPage-DA9HaZW1.js} +1 -1
  36. package/web/assets/{RandomJobTestPage-DTK2RLln.js → RandomJobTestPage-BlKmN8WR.js} +1 -1
  37. package/web/assets/{ScenarioEditorPage-DIx_Nzbh.js → ScenarioEditorPage-DxmF9C9y.js} +1 -1
  38. package/web/assets/{SendToChatDialog-BAalryU3.js → SendToChatDialog-CKDis_oY.js} +1 -1
  39. package/web/assets/{ServiceControlsBar-CgR8yFZb.js → ServiceControlsBar-DqWOWB8l.js} +1 -1
  40. package/web/assets/{ServiceDetailPage-Cvqftndf.js → ServiceDetailPage-D4w7i_m0.js} +1 -1
  41. package/web/assets/{ServiceFormPage-CGgCwNM3.js → ServiceFormPage-D9EeSeKX.js} +1 -1
  42. package/web/assets/{SettingsPage-Dx5xoAS7.js → SettingsPage-1zz5wMpp.js} +4 -4
  43. package/web/assets/{UnlockPage-Dlp8kXD-.js → UnlockPage-C4b4tv9Z.js} +1 -1
  44. package/web/assets/{VariablesTable-Dr1C6hg4.js → VariablesTable-BQW0OS3C.js} +1 -1
  45. package/web/assets/{VaultMigrationPage-1zZCTKgS.js → VaultMigrationPage-B24yEz24.js} +1 -1
  46. package/web/assets/{VersionBadge-BiLjqi8I.js → VersionBadge-AuIQKahq.js} +1 -1
  47. package/web/assets/WikiPage-YnXchmy7.js +1 -0
  48. package/web/assets/{WikiView-CGQrkGH4.js → WikiView-B4FOcZxi.js} +1 -1
  49. package/web/assets/{add-scalar-classes-ChVyhgpT.js → add-scalar-classes-Bb4tLm0z.js} +3 -3
  50. package/web/assets/auth-errors-CtC8HAvD.js +1 -0
  51. package/web/assets/{autocomplete-wqj_ORBH.js → autocomplete-LUb8fDRi.js} +1 -1
  52. package/web/assets/{basic-shape-diamond.svg-CWwnQ30s.js → basic-shape-diamond.svg-CCzIrujg.js} +1 -1
  53. package/web/assets/{basic-shape-hexagon.svg-C9JMDUIK.js → basic-shape-hexagon.svg-DdSh-N2z.js} +1 -1
  54. package/web/assets/{basic-shape-primary-circle-ellipse-round.svg-Do0Ewbp-.js → basic-shape-primary-circle-ellipse-round.svg-DsMpzYdr.js} +1 -1
  55. package/web/assets/{basic-shape-primary-square-rectangle.svg-CRq767cD.js → basic-shape-primary-square-rectangle.svg-S5aiKynO.js} +1 -1
  56. package/web/assets/{basic-shape-shield.svg-BuxJBs70.js → basic-shape-shield.svg-06mLN5Kq.js} +1 -1
  57. package/web/assets/{browser-BhZAIVa8.js → browser-B6kPJYkH.js} +1 -1
  58. package/web/assets/{browser-BEEW2obM.js → browser-CvGRE98D.js} +1 -1
  59. package/web/assets/{card-C1iS2wAN.js → card-DQ-7UOQt.js} +1 -1
  60. package/web/assets/{checkbox-CCU9xze9.js → checkbox-CIizqAL5.js} +1 -1
  61. package/web/assets/{chip-DsJBorBp.js → chip-CKY-cFPm.js} +1 -1
  62. package/web/assets/{client-BFK39Zab.js → client-Cem5gxc3.js} +1 -1
  63. package/web/assets/{cloud-chat.store-D39vo5xT.js → cloud-chat.store-JxTqY8hH.js} +1 -1
  64. package/web/assets/{cloud-session-B7G8xhKC.js → cloud-session-BsgS9t9u.js} +1 -1
  65. package/web/assets/{column-CPU5Jg0n.js → column-C1iIQeFS.js} +1 -1
  66. package/web/assets/{computer-device-desktop-monitor.svg-XWEWhL0y.js → computer-device-desktop-monitor.svg-pZKLXVEO.js} +1 -1
  67. package/web/assets/{computer-device-desktop.svg-COkZClBv.js → computer-device-desktop.svg-CPuJoG2N.js} +1 -1
  68. package/web/assets/{computer-device-laptop.svg-C4EfJUqO.js → computer-device-laptop.svg-B2lqbpvX.js} +1 -1
  69. package/web/assets/{computer-device-mobile-phone-android-samsung-back.svg-Bb2_2tyI.js → computer-device-mobile-phone-android-samsung-back.svg-C91mPbw_.js} +1 -1
  70. package/web/assets/{computer-device-mobile-phone-android-samsung.svg-CEUhXP7K.js → computer-device-mobile-phone-android-samsung.svg-CgjjMhRB.js} +1 -1
  71. package/web/assets/{computer-device-mobile-phone-iphone-x-back.svg-B3rxizbE.js → computer-device-mobile-phone-iphone-x-back.svg-DdpW-odT.js} +1 -1
  72. package/web/assets/{computer-device-mobile-phone-iphone-x.svg-BSKpZFCN.js → computer-device-mobile-phone-iphone-x.svg-B_qWFdEx.js} +1 -1
  73. package/web/assets/{computer-device-mobile-tablet-touch.svg-CZvb3YX2.js → computer-device-mobile-tablet-touch.svg-BzehkLNH.js} +1 -1
  74. package/web/assets/{computer-device-mobile-tablet.svg-BM4_YZYi.js → computer-device-mobile-tablet.svg-rkDIg0TG.js} +1 -1
  75. package/web/assets/{computer-device-network-ethernet-cat6.svg-CK0v-Rjf.js → computer-device-network-ethernet-cat6.svg-B-d_wrR_.js} +1 -1
  76. package/web/assets/{computer-device-network-lan-www.svg-DvhO71Lq.js → computer-device-network-lan-www.svg-TIELALfm.js} +1 -1
  77. package/web/assets/{computer-device-network-wifi-connection.svg--olUYsgv.js → computer-device-network-wifi-connection.svg-DbXW3PhA.js} +1 -1
  78. package/web/assets/{computer-device-network-wifi-router.svg-D5HKSWTi.js → computer-device-network-wifi-router.svg-D_35yOXc.js} +1 -1
  79. package/web/assets/{cssMode-CTjKNOiX.js → cssMode-B7e_eNPV.js} +1 -1
  80. package/web/assets/{divider-VFAPax5_.js → divider-BHKktSGp.js} +1 -1
  81. package/web/assets/{docx-preview-gNYLz3FX.js → docx-preview-DlxCg_6l.js} +1 -1
  82. package/web/assets/{ecology-science-erlenmeyer-flask.svg-THkDG-tj.js → ecology-science-erlenmeyer-flask.svg-Dl6fsl4J.js} +1 -1
  83. package/web/assets/{fieldset-DZGy449H.js → fieldset-De5JS2HC.js} +1 -1
  84. package/web/assets/{freemarker2-CNSvFpVF.js → freemarker2-BZ1pmGPV.js} +1 -1
  85. package/web/assets/{handlebars-BeRu48NI.js → handlebars-DQnFd9h7.js} +1 -1
  86. package/web/assets/{html-DrTiGPjE.js → html-C0efjIn9.js} +1 -1
  87. package/web/assets/{htmlMode-DpbDpbjK.js → htmlMode-ChFMbKcf.js} +1 -1
  88. package/web/assets/{image-flash-lightning.svg-DrkyfdIV.js → image-flash-lightning.svg-B7e5E2Qw.js} +1 -1
  89. package/web/assets/{image-picture-flower.svg-BqFj1xcR.js → image-picture-flower.svg-Cw1CZ_Iv.js} +1 -1
  90. package/web/assets/{index-y5bguEQB.js → index-nY5cynKj.js} +5 -5
  91. package/web/assets/{interface-alert-exclamation-diamond.svg-B40BfW6d.js → interface-alert-exclamation-diamond.svg-BSUXkUin.js} +1 -1
  92. package/web/assets/{interface-alert-exclamation-triangle-warning.svg-DeIlksL4.js → interface-alert-exclamation-triangle-warning.svg-BYqq_OZy.js} +1 -1
  93. package/web/assets/{interface-alert-information-circle.svg-SwVdV-Z6.js → interface-alert-information-circle.svg-BhCupwNF.js} +1 -1
  94. package/web/assets/{interface-award-crown.svg-DZHf0EHC.js → interface-award-crown.svg-BSbmsgu7.js} +1 -1
  95. package/web/assets/{interface-bookmark.svg-DBEqa-8W.js → interface-bookmark-tag.svg-C9Tj2VKg.js} +1 -1
  96. package/web/assets/{interface-bookmark-tag.svg-CiaV2Cjo.js → interface-bookmark.svg-DImT79em.js} +1 -1
  97. package/web/assets/{interface-calendar-date-one.svg-C_afKyyz.js → interface-calendar-date-one.svg-emGvRYfy.js} +1 -1
  98. package/web/assets/{interface-content-book-open-pages.svg-D5d9ilSu.js → interface-content-book-open-pages.svg-DZvD8n9A.js} +1 -1
  99. package/web/assets/{interface-content-book-page.svg-B6hlaLP5.js → interface-content-book-page.svg--RPY0ONx.js} +1 -1
  100. package/web/assets/{interface-content-file.svg-COWMwejF.js → interface-content-file.svg-BhkPpAIG.js} +1 -1
  101. package/web/assets/interface-content-folder.svg-DNkHJfTi.js +1 -0
  102. package/web/assets/{interface-content-folder.svg-K7DTqQH-.js → interface-content-folder.svg-_Qz96t7R.js} +1 -1
  103. package/web/assets/{interface-copy-clipboard.svg-BFQ6eajI.js → interface-copy-clipboard.svg-DBVvMdKB.js} +1 -1
  104. package/web/assets/{interface-edit-attachment.svg-B-LsB4cM.js → interface-edit-attachment.svg-Bq9IjtmQ.js} +1 -1
  105. package/web/assets/{interface-edit-binocular.svg-CnVjKyrn.js → interface-edit-binocular.svg-BFUljAkg.js} +1 -1
  106. package/web/assets/{interface-edit-magic-wand.svg-CUY6vVJT.js → interface-edit-magic-wand.svg-DSWYEf6V.js} +1 -1
  107. package/web/assets/{interface-edit-tool-paint-roller.svg-B1tSdIxN.js → interface-edit-tool-paint-roller.svg-iMYCD-Af.js} +1 -1
  108. package/web/assets/{interface-edit-tool-pencil.svg-BHFULT75.js → interface-edit-tool-pencil.svg-D7jUKckt.js} +1 -1
  109. package/web/assets/{interface-favorite-award.svg-CcOLoF8I.js → interface-favorite-award.svg-CLCdfKlW.js} +1 -1
  110. package/web/assets/{interface-favorite-flag.svg-CAW6LmLW.js → interface-favorite-flag.svg-CMNediEx.js} +1 -1
  111. package/web/assets/{interface-favorite-heart.svg-BEz4zlNs.js → interface-favorite-heart.svg-9AfGidiX.js} +1 -1
  112. package/web/assets/{interface-favorite-star.svg-DKFuvYge.js → interface-favorite-star.svg-DD76FDcq.js} +1 -1
  113. package/web/assets/{interface-favorite-stars-sparkles.svg-BfzccoPz.js → interface-favorite-stars-sparkles.svg-DZmc8XpZ.js} +1 -1
  114. package/web/assets/{interface-hierarchy-flowchart.svg-BT8QX161.js → interface-hierarchy-flowchart.svg-DbdQ6BrN.js} +1 -1
  115. package/web/assets/{interface-home-house.svg-B264pTPi.js → interface-home-house.svg-BIWYFqhm.js} +1 -1
  116. package/web/assets/{interface-hyperlink.svg-DhUgNKkr.js → interface-hyperlink.svg-CknF1YxB.js} +1 -1
  117. package/web/assets/{interface-lighting-brightness.svg-CPKb40uB.js → interface-lighting-brightness.svg-B3Svsmp0.js} +1 -1
  118. package/web/assets/{interface-lock-closed.svg-CvXhgCtt.js → interface-lock-closed.svg-CTmwhMsF.js} +1 -1
  119. package/web/assets/{interface-lock-open-unlock.svg-B0PMKRhP.js → interface-lock-open-unlock.svg-BSC0HJE5.js} +1 -1
  120. package/web/assets/{interface-login-key.svg-DJUm3vhg.js → interface-login-key.svg-CmPadurO.js} +1 -1
  121. package/web/assets/{interface-search.svg-ByW98ez_.js → interface-search.svg-BbWqGsiC.js} +1 -1
  122. package/web/assets/{interface-setting-cog.svg-DYOmJ9It.js → interface-setting-cog.svg-D336jNxR.js} +1 -1
  123. package/web/assets/{interface-share-megaphone-bullhorn.svg-YOCUHa3i.js → interface-share-megaphone-bullhorn.svg-BEPIq-yB.js} +1 -1
  124. package/web/assets/{interface-share-rocket.svg-C5kj5dSu.js → interface-share-rocket.svg-bi0Fp7B7.js} +1 -1
  125. package/web/assets/{interface-share-satellite.svg-C0svPxG6.js → interface-share-satellite.svg-DZ-FBSOP.js} +1 -1
  126. package/web/assets/{interface-share-space-ship.svg-8Nw02n1Q.js → interface-share-space-ship.svg-CL8kfexn.js} +1 -1
  127. package/web/assets/{interface-share.svg-eDW294tn.js → interface-share.svg-B4NzC8MW.js} +1 -1
  128. package/web/assets/{interface-signal-square.svg-CxB5mcJQ.js → interface-signal-square.svg-Do9HNC1g.js} +1 -1
  129. package/web/assets/{interface-time-clock-circle.svg-CEnlQi79.js → interface-time-clock-circle.svg-BiwVEBFE.js} +1 -1
  130. package/web/assets/{interface-time-hour-glass.svg-qL3_s19Q.js → interface-time-hour-glass.svg-Bj4400VR.js} +1 -1
  131. package/web/assets/{interface-users-multiple.svg-Cz2iA33z.js → interface-users-multiple.svg-wf0xHt7S.js} +1 -1
  132. package/web/assets/{interface-weather-moon.svg-BoT9GUK_.js → interface-weather-moon.svg-CHq44y1K.js} +1 -1
  133. package/web/assets/{javascript-DWdA0-HW.js → javascript-C5gAX9Ho.js} +1 -1
  134. package/web/assets/{jsonMode-DxGrVlm0.js → jsonMode-Cah11eZC.js} +1 -1
  135. package/web/assets/{liquid-COqLk0mR.js → liquid-CS5lfWiD.js} +1 -1
  136. package/web/assets/{lspLanguageFeatures--0hj1ZV4.js → lspLanguageFeatures-DrQCZerv.js} +1 -1
  137. package/web/assets/{mail-chat-bubble-square.svg-eiKzTBOv.js → mail-chat-bubble-square.svg-Bn4lLCAH.js} +1 -1
  138. package/web/assets/{mail-send-email-paper-airplane.svg-CCI77Gk8.js → mail-send-email-paper-airplane.svg-0dbuhy9s.js} +1 -1
  139. package/web/assets/{mail-send-envelope.svg-ChM5k_N7.js → mail-send-envelope.svg-D7MrBGJp.js} +1 -1
  140. package/web/assets/{mdx-CwXNREAO.js → mdx-B4jzso3k.js} +1 -1
  141. package/web/assets/{message-CSxReshg.js → message-DnHiYCym.js} +1 -1
  142. package/web/assets/{minus-Cg0lH8Mn.js → minus-BbLiFqfk.js} +1 -1
  143. package/web/assets/modal-BVB2xBJ_.js +1 -0
  144. package/web/assets/{modal-ix4Amfqv.js → modal-dKcYqKht.js} +1 -1
  145. package/web/assets/{money-cashier-receipt.svg-WMIW7vxg.js → money-cashier-receipt.svg-C3G7AK7q.js} +1 -1
  146. package/web/assets/{money-currency-dollar-pay.svg-qTcGSVX2.js → money-currency-dollar-pay.svg-DCj0-yon.js} +1 -1
  147. package/web/assets/{money-graph-arrow-increase.svg-B-TQKOW-.js → money-graph-arrow-increase.svg-DxdQlcuf.js} +1 -1
  148. package/web/assets/{money-graph-bar-chart-increase.svg-CWCIjQcI.js → money-graph-bar-chart-increase.svg-Cm-WIBNr.js} +1 -1
  149. package/web/assets/{multiselect-C7U34xql.js → multiselect-C8IBJ6lu.js} +1 -1
  150. package/web/assets/{nature-ecology-leaf.svg-CL26IBv2.js → nature-ecology-leaf.svg-BDz3LTpd.js} +1 -1
  151. package/web/assets/{password-ZOY0bqV1.js → password-DEuFV3TX.js} +1 -1
  152. package/web/assets/{phone-telephone.svg-BhzxDLVX.js → phone-telephone.svg-DRL7_jEB.js} +1 -1
  153. package/web/assets/{plus-DsBv8bgd.js → plus-CdxO2Yq9.js} +1 -1
  154. package/web/assets/process.store-CauAk_PY.js +1 -0
  155. package/web/assets/{programming-bug.svg-CBNm3E3F.js → programming-bug.svg-BDftmfZl.js} +1 -1
  156. package/web/assets/{programming-cloud.svg-BrVRbl9B.js → programming-cloud.svg-i-GCH3f4.js} +1 -1
  157. package/web/assets/{programming-computer-database-server.svg-LQp6n-du.js → programming-computer-database-server.svg-CC2MM4RA.js} +1 -1
  158. package/web/assets/{programming-computer-database.svg-CSbhcIMU.js → programming-computer-database.svg-CwD3IE7b.js} +1 -1
  159. package/web/assets/{programming-module-four-layout.svg-DYEAcL2j.js → programming-module-four-layout.svg-L5WQW7eZ.js} +1 -1
  160. package/web/assets/{programming-module-three.svg-CCQXCU-e.js → programming-module-three.svg-BqKxUh2a.js} +1 -1
  161. package/web/assets/{programming-module.svg-Chrmf7k4.js → programming-module.svg-B5HGxk_5.js} +1 -1
  162. package/web/assets/{programming-script-code.svg-DPhhp3IW.js → programming-script-code.svg-C6b1t67U.js} +1 -1
  163. package/web/assets/{python-B7ePhfsS.js → python-PWdcATjU.js} +1 -1
  164. package/web/assets/{razor-ChpzroOv.js → razor-D2OFUF9W.js} +1 -1
  165. package/web/assets/router-WC51nlcm.js +1 -0
  166. package/web/assets/settings-scope-CIL2r-x6.js +1 -0
  167. package/web/assets/{settings.store-B31_cRNl.js → settings.store-Cx63DJSu.js} +1 -1
  168. package/web/assets/{shopping-cart.svg-bmefzlOu.js → shopping-cart.svg-C4eUOPuW.js} +1 -1
  169. package/web/assets/{shopping-gift-present.svg-aUOleva0.js → shopping-gift-present.svg-DWR1Ue0b.js} +1 -1
  170. package/web/assets/{shopping-shipping-box-parcel-package.svg-BLsRP4dg.js → shopping-shipping-box-parcel-package.svg-vIUMJCzM.js} +1 -1
  171. package/web/assets/{src-Dt37H-VN.js → src-CG6NRFnq.js} +1 -1
  172. package/web/assets/{src-BPSr9dU2.js → src-D3B9QT3f.js} +1 -1
  173. package/web/assets/{tabpanel-DZQ_g__B.js → tabpanel-Dt8wxAUn.js} +1 -1
  174. package/web/assets/{tag-new-circle.svg-kTMMMv-0.js → tag-new-circle.svg-CrLYLp-g.js} +1 -1
  175. package/web/assets/{toggleswitch-BWXDXl37.js → toggleswitch-DXNKoD3W.js} +1 -1
  176. package/web/assets/{travel-map-earth-globe.svg-BdQmz8_b.js → travel-map-earth-globe.svg-CbJkEfGx.js} +1 -1
  177. package/web/assets/trpc-BTkvhuSo.js +1 -0
  178. package/web/assets/{tsMode-arHIUQbZ.js → tsMode-BWnOhIDG.js} +1 -1
  179. package/web/assets/{typescript-Ds9kgbPd.js → typescript-Ca6d0Xpt.js} +1 -1
  180. package/web/assets/useAiChatDrawer-DbiVGX1A.js +1 -0
  181. package/web/assets/useCloudOrg-CYZgY69j.css +1 -0
  182. package/web/assets/useCloudOrg-JI0t8ZfS.js +97 -0
  183. package/web/assets/{useProjectCatalog-BbSaTBSS.js → useProjectCatalog-T9HoUKsV.js} +1 -1
  184. package/web/assets/{xml-CO56TgpZ.js → xml-DJnU4yP8.js} +1 -1
  185. package/web/assets/{yaml-DueFV2-x.js → yaml-DJC6BhFp.js} +1 -1
  186. package/web/index.html +1 -1
  187. package/agent-manager-YDLSYZE3.js +0 -7
  188. package/src-53OQNM27.js.map +0 -1
  189. package/web/assets/AiChatPage-BvrKlLxc.js +0 -1
  190. package/web/assets/CloudAccountPage-CoJV3YCA.js +0 -1
  191. package/web/assets/KanbanBoardPage-JjjS4BfO.css +0 -1
  192. package/web/assets/WikiPage-B51w0xOX.js +0 -1
  193. package/web/assets/auth-errors-BdfA61wA.js +0 -1
  194. package/web/assets/interface-content-folder.svg-BCIUgpD4.js +0 -1
  195. package/web/assets/modal-D3dkRJqD.js +0 -1
  196. package/web/assets/process.store-DPp7dk63.js +0 -1
  197. package/web/assets/router-Df972Ysi.js +0 -1
  198. package/web/assets/settings-scope-CC3oHq2H.js +0 -1
  199. package/web/assets/trpc-aSS7b3jh.js +0 -1
  200. package/web/assets/useAiChatDrawer-C1xrMtLl.js +0 -1
  201. package/web/assets/useCloudOrg-BdpqnN19.css +0 -1
  202. package/web/assets/useCloudOrg-BexK510D.js +0 -97
  203. /package/{agent-manager-YDLSYZE3.js.map → agent-manager-LBV3CVHB.js.map} +0 -0
@@ -1 +1 @@
1
- import{$i as e,$r as t,$t as n,Da as r,Gt as i,Ii as a,Mi as ee,Nn as o,Pn as s,Qt as c,Ti as l,Un as te,Yt as u,Zt as d,_n as f,ai as p,c as m,ci as h,fi as g,hi as _,ii as v,l as y,oa as b,oi as x,pi as S,pn as C,si as w,ti as T,u as ne,va as E,xn as D}from"./index-y5bguEQB.js";import{t as O}from"./message-CSxReshg.js";import{t as k}from"./password-ZOY0bqV1.js";import{t as A}from"./card-C1iS2wAN.js";import{t as j}from"./VersionBadge-BiLjqi8I.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=f(_({__name:`UnlockPage`,setup(f){let _=s(),V=o(),{t:H}=te(),U=y(),W=ne(),G=E(``),K=E(``),q=E(``),J=E(!1),Y=E(null),X=E(null);function Z(){l(()=>{(X.value?.$el?.querySelector(`input`))?.focus()})}let Q=v(()=>Y.value?.state===`setup`);ee(async()=>{Z();try{Y.value=await u(),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 c(G.value,t)}else e=await n(G.value);d(e),await m({loadPreferences:()=>W.loadPreferences(),initTrpcWs:i,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 u()).legacyVault){await _.push({name:`migrate-vault`});return}}catch{}let e=V.query.redirect;e&&e.startsWith(`/`)?await _.push(e):await _.push({name:`launch-project`})}return(n,i)=>(a(),h(`div`,M,[S(r(A),{class:`unlock-card`},{header:e(()=>[p(`div`,N,[p(`h1`,P,b(Q.value?r(H)(`unlockPage.titleSetup`):r(H)(`unlockPage.titleLocked`)),1),p(`p`,F,[Q.value&&Y.value?.isLegacyMigration?(a(),h(T,{key:0},[g(b(r(H)(`unlockPage.subtitleLegacyMigration`)),1)],64)):Q.value&&Y.value?.hasVerifyFile?(a(),h(T,{key:1},[g(b(r(H)(`unlockPage.subtitleHasVerifyFile`)),1)],64)):Q.value?(a(),h(T,{key:2},[g(b(r(H)(`unlockPage.subtitleSetup`)),1)],64)):(a(),h(T,{key:3},[g(b(r(H)(`unlockPage.subtitleUnlock`)),1)],64))])])]),content:e(()=>[p(`form`,{onSubmit:t(re,[`prevent`]),class:`unlock-form`},[p(`div`,I,[p(`label`,L,b(r(H)(`unlockPage.masterPasswordLabel`)),1),S(r(k),{ref_key:`passwordRef`,ref:X,id:`masterPassword`,"data-testid":`master-password-input`,modelValue:G.value,"onUpdate:modelValue":i[0]||=e=>G.value=e,feedback:Q.value,toggleMask:``,fluid:``,disabled:J.value,autocomplete:Q.value?`new-password`:`current-password`,placeholder:r(H)(`unlockPage.masterPasswordPlaceholder`)},null,8,[`modelValue`,`feedback`,`disabled`,`autocomplete`,`placeholder`])]),Q.value&&Y.value?.hasVerifyFile&&!Y.value?.isLegacyMigration?(a(),h(`div`,R,[p(`label`,z,b(r(H)(`unlockPage.encryptionKeyLabel`)),1),S(r(C),{id:`encryptionKey`,"data-testid":`encryption-key-input`,modelValue:K.value,"onUpdate:modelValue":i[1]||=e=>K.value=e,fluid:``,disabled:J.value,placeholder:r(H)(`unlockPage.encryptionKeyPlaceholder`),autocomplete:`off`},null,8,[`modelValue`,`disabled`,`placeholder`]),p(`small`,B,b(r(H)(`unlockPage.encryptionKeyHelp`)),1)])):w(``,!0),q.value?(a(),x(r(O),{key:1,severity:`error`,closable:!1,"data-testid":`unlock-error`},{default:e(()=>[g(b(q.value),1)]),_:1})):w(``,!0),Q.value?(a(),x(r(O),{key:2,severity:`info`,closable:!1,class:`machine-warning`},{default:e(()=>[g(b(r(H)(`unlockPage.machineWarning`)),1)]),_:1})):w(``,!0),S(r(D),{type:`submit`,"data-testid":`unlock-submit-btn`,label:J.value?r(H)(`unlockPage.pleaseWait`):Q.value?r(H)(`unlockPage.configure`):r(H)(`unlockPage.unlock`),disabled:J.value||!G.value,loading:J.value,fluid:``},null,8,[`label`,`disabled`,`loading`])],32)]),_:1}),S(j)]))}}),[[`__scopeId`,`data-v-173e2585`]]);export{V as default};
1
+ import{$i as e,$r as t,$t as n,Da as r,Gt as i,Ii as a,Mi as ee,Nn as o,Pn as s,Qt as c,Ti as l,Un as te,Yt as u,Zt as d,_n as f,ai as p,c as m,ci as h,fi as g,hi as _,ii as v,l as y,oa as b,oi as x,pi as S,pn as C,si as w,ti as T,u as ne,va as E,xn as D}from"./index-nY5cynKj.js";import{t as O}from"./message-DnHiYCym.js";import{t as k}from"./password-DEuFV3TX.js";import{t as A}from"./card-DQ-7UOQt.js";import{t as j}from"./VersionBadge-AuIQKahq.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=f(_({__name:`UnlockPage`,setup(f){let _=s(),V=o(),{t:H}=te(),U=y(),W=ne(),G=E(``),K=E(``),q=E(``),J=E(!1),Y=E(null),X=E(null);function Z(){l(()=>{(X.value?.$el?.querySelector(`input`))?.focus()})}let Q=v(()=>Y.value?.state===`setup`);ee(async()=>{Z();try{Y.value=await u(),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 c(G.value,t)}else e=await n(G.value);d(e),await m({loadPreferences:()=>W.loadPreferences(),initTrpcWs:i,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 u()).legacyVault){await _.push({name:`migrate-vault`});return}}catch{}let e=V.query.redirect;e&&e.startsWith(`/`)?await _.push(e):await _.push({name:`launch-project`})}return(n,i)=>(a(),h(`div`,M,[S(r(A),{class:`unlock-card`},{header:e(()=>[p(`div`,N,[p(`h1`,P,b(Q.value?r(H)(`unlockPage.titleSetup`):r(H)(`unlockPage.titleLocked`)),1),p(`p`,F,[Q.value&&Y.value?.isLegacyMigration?(a(),h(T,{key:0},[g(b(r(H)(`unlockPage.subtitleLegacyMigration`)),1)],64)):Q.value&&Y.value?.hasVerifyFile?(a(),h(T,{key:1},[g(b(r(H)(`unlockPage.subtitleHasVerifyFile`)),1)],64)):Q.value?(a(),h(T,{key:2},[g(b(r(H)(`unlockPage.subtitleSetup`)),1)],64)):(a(),h(T,{key:3},[g(b(r(H)(`unlockPage.subtitleUnlock`)),1)],64))])])]),content:e(()=>[p(`form`,{onSubmit:t(re,[`prevent`]),class:`unlock-form`},[p(`div`,I,[p(`label`,L,b(r(H)(`unlockPage.masterPasswordLabel`)),1),S(r(k),{ref_key:`passwordRef`,ref:X,id:`masterPassword`,"data-testid":`master-password-input`,modelValue:G.value,"onUpdate:modelValue":i[0]||=e=>G.value=e,feedback:Q.value,toggleMask:``,fluid:``,disabled:J.value,autocomplete:Q.value?`new-password`:`current-password`,placeholder:r(H)(`unlockPage.masterPasswordPlaceholder`)},null,8,[`modelValue`,`feedback`,`disabled`,`autocomplete`,`placeholder`])]),Q.value&&Y.value?.hasVerifyFile&&!Y.value?.isLegacyMigration?(a(),h(`div`,R,[p(`label`,z,b(r(H)(`unlockPage.encryptionKeyLabel`)),1),S(r(C),{id:`encryptionKey`,"data-testid":`encryption-key-input`,modelValue:K.value,"onUpdate:modelValue":i[1]||=e=>K.value=e,fluid:``,disabled:J.value,placeholder:r(H)(`unlockPage.encryptionKeyPlaceholder`),autocomplete:`off`},null,8,[`modelValue`,`disabled`,`placeholder`]),p(`small`,B,b(r(H)(`unlockPage.encryptionKeyHelp`)),1)])):w(``,!0),q.value?(a(),x(r(O),{key:1,severity:`error`,closable:!1,"data-testid":`unlock-error`},{default:e(()=>[g(b(q.value),1)]),_:1})):w(``,!0),Q.value?(a(),x(r(O),{key:2,severity:`info`,closable:!1,class:`machine-warning`},{default:e(()=>[g(b(r(H)(`unlockPage.machineWarning`)),1)]),_:1})):w(``,!0),S(r(D),{type:`submit`,"data-testid":`unlock-submit-btn`,label:J.value?r(H)(`unlockPage.pleaseWait`):Q.value?r(H)(`unlockPage.configure`):r(H)(`unlockPage.unlock`),disabled:J.value||!G.value,loading:J.value,fluid:``},null,8,[`label`,`disabled`,`loading`])],32)]),_:1}),S(j)]))}}),[[`__scopeId`,`data-v-173e2585`]]);export{V as default};
@@ -1 +1 @@
1
- import{$i as e,$r as t,Da as n,Ii as r,Ji as i,Mi as a,Mt as ee,Oi as o,Ri as te,Ti as s,Un as ne,Yi as c,_n as l,aa as u,ai as d,ci as f,fi as re,fn as p,hi as m,ii as h,oa as g,oi as _,pi as v,pn as y,ra as b,si as x,ti as S,va as C,xn as ie,yn as w,zn as ae}from"./index-y5bguEQB.js";import{t as T}from"./message-CSxReshg.js";import{t as oe}from"./uuid-FpfcaBnR.js";import{n as se,t as E}from"./column-CPU5Jg0n.js";import{t as ce}from"./toggleswitch-BWXDXl37.js";import{t as le}from"./autocomplete-wqj_ORBH.js";var D={key:0,class:`env-badge`},O={class:`env-badge__name`},ue=l(m({__name:`EnvironmentBadge`,props:{environmentId:{}},setup(e){let t=e,n=ee(),i=h(()=>n.getById(t.environmentId));function a(e){if(e)return e.startsWith(`#`)?e:`#${e}`}return(e,t)=>i.value?(r(),f(`span`,D,[d(`span`,{class:`env-badge__swatch`,style:u({backgroundColor:a(i.value.bgColor)||a(i.value.color)||`var(--p-primary-color)`})},null,4),d(`span`,O,g(i.value.name),1)])):x(``,!0)}}),[[`__scopeId`,`data-v-b70e647b`]]),k={class:`key-row`},A={class:`expansion-field expansion-field--key`},de=[`for`],fe={key:2,class:`value-display`},pe={key:0,class:`expansion-field expansion-field--toggle`},me={class:`expansion-label`,for:`varrow-secret`},he={key:1,class:`expansion-field expansion-field--toggle`},ge=[`title`],_e={key:2,class:`key-row-delete`},ve={key:0,class:`not-secret-warning`},ye={class:`expansion-section`},j={class:`section-title`},be={class:`section-fields`},xe={class:`expansion-field expansion-field--prepost`},M={class:`expansion-label`,for:`varrow-prefix`},N={key:1,class:`value-display`},Se={class:`expansion-field expansion-field--value`},Ce=[`for`],P={key:0,class:`secret-input-wrap`},F=[`disabled`],I=[`title`],we={key:1,class:`value-display value-display--with-actions`},Te={key:0,class:`value-actions`},Ee={key:0},L={key:1},De={class:`expansion-field expansion-field--prepost`},R={class:`expansion-label`,for:`varrow-suffix`},Oe={key:1,class:`value-display`},z={key:0,class:`preview-value`},ke={key:0,class:`prepost-part prepost-part--pre`},Ae={key:1,class:`prepost-part prepost-part--interpolation`},je={class:`prepost-part--value prepost-resolved-inline`},Me=[`title`],Ne={key:2,class:`prepost-part prepost-part--value`},Pe={key:3,class:`prepost-part prepost-part--post`},Fe={key:1,class:`expansion-section`},Ie={class:`section-header`},Le={class:`section-title`},Re={class:`section-fields`},ze={class:`expansion-field expansion-field--prepost`},Be={class:`expansion-label`,for:`varrow-override-prefix`},Ve={class:`expansion-field expansion-field--value`},B=[`for`],He={key:0,class:`secret-input-wrap`},Ue=[`disabled`],We=[`title`],Ge={class:`expansion-field expansion-field--prepost`},Ke={class:`expansion-label`,for:`varrow-override-suffix`},qe={key:1,class:`override-view`},Je={key:0,class:`value-display--with-actions`},Ye={class:`value-actions`},Xe={key:0,class:`override-value-masked`},Ze={key:1,class:`override-value`},Qe={key:1,class:`override-value`},$e={key:1,class:`override-empty`},et={key:0,class:`preview-value preview-value--override`},tt={key:0,class:`prepost-part prepost-part--pre`},nt={key:1,class:`prepost-part prepost-part--interpolation`},rt={key:0,class:`prepost-part--value prepost-resolved-inline`},it={key:2,class:`prepost-part prepost-part--value`},at={key:3,class:`prepost-part prepost-part--post`},ot=l(m({__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:()=>({})},isPending:{type:Boolean,default:!1}},emits:[`deleted`,`saved`,`autocomplete-search`,`override-changed`,`edit-source`],setup(e,{emit:i}){let o=/^\{\{(.+)\}\}$/,te=/^\{\{environment\.(.+)\}\}$/,s=e,l=i,u=ee(),m=ae(),{t:w}=ne(),T=C(!1),oe=C(!1),se=C(!1),E=C(!1),D=C(!1),O=C(null);function ue(e,t){navigator.clipboard.writeText(t),O.value=e,setTimeout(()=>{O.value===e&&(O.value=null)},1500)}let ot=h(()=>u.getById(s.environmentId)?.variables?.[s.variableId]),V=C(``),H=C(``),U=C(``),W=C(``),G=C(!1),st=C(!1),ct=h(()=>Z(H.value)),K=h(()=>G.value&&!ct.value);function lt(){let e=ot.value;V.value=e?.key??``,H.value=e?.value?.value??``,U.value=e?.value?.pre??``,W.value=e?.value?.post??``,G.value=e?.value?.isSecret??!1,st.value=e?.value?.injectIntoAi??!1}a(lt),c(ot,(e,t)=>{!t&&e&&lt()});let q=h(()=>s.overrides[s.variableId]??null),J=C(``),Y=C(``),X=C(``);function ut(){let e=q.value;J.value=e?.pre??``,Y.value=e?.value??``,X.value=e?.post??``}a(ut),c(q,ut);function Z(e){return o.test(e)}function Q(e){let t=e.match(o);return t?t[1].replace(/^environment\./,``):e}function dt(e){let t=e.match(te);return t?s.resolvedEnv[t[1]]??null:null}function ft(e){let t=e.value;V.value=t,H.value=`{{environment.${t}}}`,G.value=!1;let n=s.autocompleteMeta?.[t];n&&(U.value=n.pre,W.value=n.post),$()}async function $(){if(T.value)return;let e=V.value.trim();if(e){T.value=!0;try{await u.upsertVariable(s.environmentId,s.variableId,{key:e,value:{value:H.value,pre:U.value,post:W.value,isSecret:K.value,injectIntoAi:st.value}}),s.isPending&&l(`saved`)}catch(e){m.add({severity:`error`,summary:w(`common.error`),detail:e.message??w(`variableRowEditor.saveError`),life:4e3})}finally{T.value=!1}}}async function pt(){if(s.isPending){l(`deleted`);return}T.value=!0;try{q.value&&await u.removeOverride(s.variableId),await u.removeVariable(s.environmentId,s.variableId),l(`deleted`)}catch(e){m.add({severity:`error`,summary:w(`common.error`),detail:e.message??w(`variableRowEditor.deleteError`),life:4e3})}finally{T.value=!1}}async function mt(){let e=J.value||Y.value||X.value;try{if(!e){q.value&&(await u.removeOverride(s.variableId),l(`override-changed`));return}await u.setOverride(s.variableId,{value:{value:Y.value,pre:J.value,post:X.value,isSecret:K.value}}),l(`override-changed`)}catch(e){m.add({severity:`error`,summary:w(`common.error`),detail:e.message??w(`variableRowEditor.overrideError`),life:4e3})}}async function ht(){try{await u.removeOverride(s.variableId),l(`override-changed`)}catch(e){m.add({severity:`error`,summary:w(`common.error`),detail:e.message??w(`variableRowEditor.clearOverrideError`),life:4e3})}}function gt(e){let t=e.relatedTarget;(!t||!e.currentTarget.contains(t))&&$()}return(i,a)=>(r(),f(`div`,{class:`expansion-form`,onFocusout:gt},[d(`div`,k,[d(`div`,A,[d(`label`,{class:`expansion-label`,for:e.editable&&e.autocompleteEnabled?`varrow-key-ac`:`varrow-key-input`},g(n(w)(`common.key`)),9,de),e.editable&&e.autocompleteEnabled?(r(),_(n(le),{key:0,"input-id":`varrow-key-ac`,modelValue:V.value,"onUpdate:modelValue":a[0]||=e=>V.value=e,suggestions:e.autocompleteSuggestions,placeholder:n(w)(`variableRowEditor.variableNamePlaceholder`),class:`w-full`,disabled:e.disabled,onComplete:a[1]||=e=>l(`autocomplete-search`,e.query),onItemSelect:ft,onBlur:$},null,8,[`modelValue`,`suggestions`,`placeholder`,`disabled`])):e.editable?(r(),_(n(y),{key:1,id:`varrow-key-input`,modelValue:V.value,"onUpdate:modelValue":a[2]||=e=>V.value=e,placeholder:n(w)(`variableRowEditor.variableNamePlaceholder`),class:`w-full`,disabled:e.disabled,onBlur:$},null,8,[`modelValue`,`placeholder`,`disabled`])):(r(),f(`code`,fe,g(V.value),1))]),e.editable&&!ct.value?(r(),f(`div`,pe,[d(`label`,me,g(n(w)(`variableRowEditor.secret`)),1),v(n(ce),{"input-id":`varrow-secret`,modelValue:G.value,"onUpdate:modelValue":[a[3]||=e=>G.value=e,$],disabled:e.disabled},null,8,[`modelValue`,`disabled`])])):x(``,!0),e.editable?(r(),f(`div`,he,[d(`label`,{class:`expansion-label`,for:`varrow-injectai`,title:n(w)(`variableRowEditor.injectIntoAiHint`)},g(n(w)(`variableRowEditor.injectIntoAi`)),9,ge),v(n(ce),{"input-id":`varrow-injectai`,modelValue:st.value,"onUpdate:modelValue":[a[4]||=e=>st.value=e,$],disabled:e.disabled},null,8,[`modelValue`,`disabled`])])):x(``,!0),e.showDelete&&e.editable?(r(),f(`div`,_e,[v(n(ie),{icon:`pi pi-trash`,severity:`danger`,text:``,rounded:``,size:`small`,disabled:e.disabled||T.value,onClick:pt},null,8,[`disabled`])])):x(``,!0)]),e.editable&&!G.value&&!Z(H.value)?(r(),f(`div`,ve,[a[26]||=d(`i`,{class:`pi pi-info-circle`},null,-1),d(`span`,null,g(n(w)(`variableRowEditor.notSecretWarning`)),1)])):x(``,!0),d(`div`,ye,[d(`div`,j,g(n(w)(`variableRowEditor.value`)),1),d(`div`,be,[d(`div`,xe,[d(`label`,M,g(n(w)(`variableRowEditor.prefix`)),1),e.editable?(r(),_(n(y),{key:0,id:`varrow-prefix`,modelValue:U.value,"onUpdate:modelValue":a[5]||=e=>U.value=e,placeholder:n(w)(`variableRowEditor.prefixPlaceholder`),class:`w-full`,disabled:e.disabled,onBlur:$},null,8,[`modelValue`,`placeholder`,`disabled`])):(r(),f(`code`,N,g(U.value||`—`),1))]),d(`div`,Se,[d(`label`,{class:`expansion-label`,for:K.value?`varrow-value-secret`:`varrow-value-plain`},g(n(w)(`variableRowEditor.value`)),9,Ce),e.editable?(r(),f(S,{key:0},[K.value?(r(),f(`div`,P,[v(n(y),{id:`varrow-value-secret`,modelValue:H.value,"onUpdate:modelValue":a[6]||=e=>H.value=e,type:E.value?`text`:`password`,placeholder:n(w)(`variableRowEditor.valuePlaceholder`),class:`w-full`,disabled:e.disabled,onBlur:$},null,8,[`modelValue`,`type`,`placeholder`,`disabled`]),d(`button`,{type:`button`,class:`secret-toggle`,disabled:e.disabled,onClick:a[7]||=e=>E.value=!E.value,tabindex:`-1`},[d(`i`,{class:b(E.value?`pi pi-eye-slash`:`pi pi-eye`)},null,2)],8,F)])):Z(H.value)&&!oe.value?(r(),f(`span`,{key:1,class:`interpolation-badge`,title:H.value,onClick:a[8]||=e=>oe.value=!0},[v(n(p),{severity:`secondary`,value:Q(H.value)},null,8,[`value`]),a[27]||=d(`i`,{class:`pi pi-pencil interpolation-edit-icon`},null,-1)],8,I)):(r(),_(n(y),{key:2,id:`varrow-value-plain`,modelValue:H.value,"onUpdate:modelValue":a[9]||=e=>H.value=e,placeholder:n(w)(`variableRowEditor.valuePlaceholder`),class:`w-full`,disabled:e.disabled,onFocus:a[10]||=e=>oe.value=!0,onBlur:a[11]||=e=>{oe.value=!1,$()}},null,8,[`modelValue`,`placeholder`,`disabled`]))],64)):(r(),f(`span`,we,[H.value?(r(),f(`span`,Te,[K.value?(r(),f(`i`,{key:0,class:b([E.value?`pi pi-eye-slash`:`pi pi-eye`,`action-icon`]),onClick:a[12]||=e=>E.value=!E.value},null,2)):x(``,!0),d(`i`,{class:b([O.value===`val`?`pi pi-check`:`pi pi-copy`,`action-icon`]),onClick:a[13]||=e=>ue(`val`,U.value+H.value+W.value)},null,2)])):x(``,!0),Z(H.value)?(r(),_(n(p),{key:1,severity:`secondary`,value:Q(H.value)},null,8,[`value`])):K.value?(r(),f(S,{key:2},[E.value?(r(),f(`span`,L,g(H.value),1)):(r(),f(`span`,Ee,`***`))],64)):(r(),f(S,{key:3},[re(g(H.value),1)],64))]))]),d(`div`,De,[d(`label`,R,g(n(w)(`variableRowEditor.suffix`)),1),e.editable?(r(),_(n(y),{key:0,id:`varrow-suffix`,modelValue:W.value,"onUpdate:modelValue":a[14]||=e=>W.value=e,placeholder:n(w)(`variableRowEditor.suffixPlaceholder`),class:`w-full`,disabled:e.disabled,onBlur:$},null,8,[`modelValue`,`placeholder`,`disabled`])):(r(),f(`code`,Oe,g(W.value||`—`),1))])]),K.value?x(``,!0):(r(),f(`code`,z,[U.value?(r(),f(`span`,ke,g(U.value),1)):x(``,!0),Z(H.value)?(r(),f(`span`,Ae,[dt(H.value)==null?(r(),f(S,{key:1},[v(n(p),{severity:`secondary`,value:Q(H.value),style:{"font-size":`0.7rem`}},null,8,[`value`]),a[28]||=d(`span`,{class:`prepost-unresolved`},`(?)`,-1)],64)):(r(),f(S,{key:0},[d(`span`,je,g(dt(H.value)),1),e.canEditSource?(r(),f(`i`,{key:0,class:`pi pi-pencil edit-source-icon`,title:n(w)(`variablesTable.editParentTitle`),onClick:a[15]||=t(e=>l(`edit-source`),[`stop`])},null,8,Me)):x(``,!0)],64))])):(r(),f(`span`,Ne,g(H.value||`…`),1)),W.value?(r(),f(`span`,Pe,g(W.value),1)):x(``,!0)]))]),e.showOverrides&&V.value?.trim()?(r(),f(`div`,Fe,[d(`div`,Ie,[d(`div`,Le,g(n(w)(`variableRowEditor.localOverride`)),1),e.editable&&q.value?(r(),_(n(ie),{key:0,icon:`pi pi-times`,text:``,rounded:``,size:`small`,severity:`danger`,title:n(w)(`variableRowEditor.clearOverride`),disabled:e.disabled,onClick:ht},null,8,[`title`,`disabled`])):x(``,!0)]),d(`div`,Re,[e.editable?(r(),f(S,{key:0},[d(`div`,ze,[d(`label`,Be,g(n(w)(`variableRowEditor.prefix`)),1),v(n(y),{id:`varrow-override-prefix`,modelValue:J.value,"onUpdate:modelValue":a[16]||=e=>J.value=e,placeholder:n(w)(`variableRowEditor.prefixPlaceholder`),class:`w-full`,disabled:e.disabled,onBlur:mt},null,8,[`modelValue`,`placeholder`,`disabled`])]),d(`div`,Ve,[d(`label`,{class:`expansion-label`,for:K.value?`varrow-override-value-secret`:`varrow-override-value-plain`},g(n(w)(`variableRowEditor.value`)),9,B),K.value?(r(),f(`div`,He,[v(n(y),{id:`varrow-override-value-secret`,modelValue:Y.value,"onUpdate:modelValue":a[17]||=e=>Y.value=e,type:D.value?`text`:`password`,placeholder:n(w)(`variableRowEditor.overrideValuePlaceholder`),class:`w-full`,disabled:e.disabled,onBlur:mt},null,8,[`modelValue`,`type`,`placeholder`,`disabled`]),d(`button`,{type:`button`,class:`secret-toggle`,disabled:e.disabled,onClick:a[18]||=e=>D.value=!D.value,tabindex:`-1`},[d(`i`,{class:b(D.value?`pi pi-eye-slash`:`pi pi-eye`)},null,2)],8,Ue)])):Z(Y.value)&&!se.value?(r(),f(`span`,{key:1,class:`interpolation-badge`,title:Y.value,onClick:a[19]||=e=>se.value=!0},[v(n(p),{severity:`secondary`,value:Q(Y.value)},null,8,[`value`]),a[29]||=d(`i`,{class:`pi pi-pencil interpolation-edit-icon`},null,-1)],8,We)):(r(),_(n(y),{key:2,id:`varrow-override-value-plain`,modelValue:Y.value,"onUpdate:modelValue":a[20]||=e=>Y.value=e,placeholder:n(w)(`variableRowEditor.overrideValuePlaceholder`),class:`w-full`,disabled:e.disabled,onFocus:a[21]||=e=>se.value=!0,onBlur:a[22]||=e=>{se.value=!1,mt()}},null,8,[`modelValue`,`placeholder`,`disabled`]))]),d(`div`,Ge,[d(`label`,Ke,g(n(w)(`variableRowEditor.suffix`)),1),v(n(y),{id:`varrow-override-suffix`,modelValue:X.value,"onUpdate:modelValue":a[23]||=e=>X.value=e,placeholder:n(w)(`variableRowEditor.suffixPlaceholder`),class:`w-full`,disabled:e.disabled,onBlur:mt},null,8,[`modelValue`,`placeholder`,`disabled`])])],64)):(r(),f(`div`,qe,[q.value?(r(),f(`span`,Je,[d(`span`,Ye,[K.value||q.value.isSecret?(r(),f(`i`,{key:0,class:b([D.value?`pi pi-eye-slash`:`pi pi-eye`,`action-icon`]),onClick:a[24]||=e=>D.value=!D.value},null,2)):x(``,!0),d(`i`,{class:b([O.value===`ovr`?`pi pi-check`:`pi pi-copy`,`action-icon`]),onClick:a[25]||=e=>ue(`ovr`,q.value.pre+q.value.value+q.value.post)},null,2)]),K.value||q.value.isSecret?(r(),f(S,{key:0},[D.value?(r(),f(`code`,Ze,g(q.value.pre)+g(q.value.value)+g(q.value.post),1)):(r(),f(`span`,Xe,`***`))],64)):(r(),f(`code`,Qe,g(q.value.pre)+g(q.value.value)+g(q.value.post),1))])):(r(),f(`span`,$e,`—`))]))]),e.editable&&!K.value&&(J.value||Y.value||X.value)?(r(),f(`code`,et,[J.value?(r(),f(`span`,tt,g(J.value),1)):x(``,!0),Z(Y.value)?(r(),f(`span`,nt,[dt(Y.value)==null?(r(),f(S,{key:1},[v(n(p),{severity:`secondary`,value:Q(Y.value),style:{"font-size":`0.7rem`}},null,8,[`value`]),a[30]||=d(`span`,{class:`prepost-unresolved`},`(?)`,-1)],64)):(r(),f(`span`,rt,g(dt(Y.value)),1))])):(r(),f(`span`,it,g(Y.value||`…`),1)),X.value?(r(),f(`span`,at,g(X.value),1)):x(``,!0)])):x(``,!0)])):x(``,!0)],32))}}),[[`__scopeId`,`data-v-2a3078f4`]]),V={class:`table-toolbar`},H={key:0,class:`overrides-filter`},U={for:`overrides-filter`},W={class:`text-center py-4 text-gray-500`},G={class:`row-key-cell`},st={class:`row-key-line`},ct={class:`row-key`},K=[`title`],lt=[`title`],q={key:1,class:`resolved-from-line`},J={class:`row-value`},Y=[`title`,`onClick`],X=[`title`,`onClick`],ut={key:1,class:`value-levels`},Z={class:`resolved-level`},Q={key:0,class:`secret-mask`},dt=[`title`],ft={key:0,class:`secret-mask`},$=[`title`],pt=[`title`],mt={key:6,class:`empty-value`},ht={key:0,class:`override-indicator`},gt=[`title`,`onClick`],_t=[`title`,`onClick`],vt={key:0,class:`override-value-masked`},yt=[`title`],bt=[`title`],xt={key:0,class:`parent-edit`},St={class:`parent-edit__field`},Ct={class:`parent-edit__label`,for:`parent-edit-value`},wt={class:`parent-edit__usages`},Tt={class:`parent-edit__usages-title`},Et={key:0,class:`parent-edit__usages-loading`},Dt={key:0,class:`parent-edit__usage-list`},Ot={class:`parent-edit__usage-env`},kt={key:0,class:`parent-edit__usage-svc`},At={key:1,class:`parent-edit__usages-empty`},jt=40,Mt=200,Nt=24,Pt=l(m({__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(c,{emit:l}){let u=/^\{\{(.+)\}\}$/,m=/^\{\{environment\.(.+)\}\}$/,le={"service.HOST_LAN":`(agent LAN IP)`},D=c,O=l,{t:k}=ne(),A=ee(),de=h(()=>Object.keys(D.sources).length>0),fe=h(()=>Object.keys(D.resolvedEnv).length>0),pe=i(`rootRef`),me=C(null),he=h(()=>D.scrollHeight===`auto`?me.value??`460px`:D.scrollHeight);function ge(){if(D.scrollHeight!==`auto`)return;let e=pe.value;if(!e)return;let t=(e.querySelector(`.p-datatable-table-container`)??e).getBoundingClientRect().top,n=window.innerHeight-t-Nt;me.value=`${Math.max(Mt,Math.round(n))}px`}let _e=null;a(()=>{s(ge),window.addEventListener(`resize`,ge),typeof ResizeObserver<`u`&&pe.value&&(_e=new ResizeObserver(()=>ge()),_e.observe(document.body))}),o(()=>{window.removeEventListener(`resize`,ge),_e?.disconnect(),_e=null});let ve=C(``),ye=C(!1),j=C({});async function be(){if(D.showOverrides)try{let e=await A.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}}j.value=t}catch{}}a(be);let xe=h(()=>A.getById(D.environmentId));function M(e){return xe.value?.variables?.[e]}let N=C([]),Se=h(()=>{let e=Object.keys(xe.value?.variables??{}).map(e=>({variableId:e})),t=new Set(e.map(e=>e.variableId)),n=N.value.filter(e=>!t.has(e)).map(e=>({variableId:e}));return[...e,...n]}),Ce=i(`tableRef`),P=C({}),F=C([]),I=C(new Set);function we(e){let t=new Set(I.value);t.has(e)?t.delete(e):t.add(e),I.value=t}let Te=C(null);function Ee(e,t){navigator.clipboard.writeText(t),Te.value=e,setTimeout(()=>{Te.value===e&&(Te.value=null)},1500)}function L(e){let t=M(e);if(!t)return``;let n=t.value?.value??``;return B(n)?Ue(n)??n:(t.value?.pre??``)+n+(t.value?.post??``)}let De=ae(),R=C(null),Oe=C(!1),z=C(!1),ke=C(!1),Ae=0,je=C([]);async function Me(e){let t=D.sources[e]?.resolvedFrom,n=M(e)?.value?.value??``;if(!t||!n)return;let r=He(n),i=A.getById(t.environmentId),a=Object.entries(i?.variables??{}).find(([,e])=>e.key===r);if(!a){De.add({severity:`warn`,summary:k(`variablesTable.editParentNotFound`),life:4e3});return}let[ee,o]=a;R.value={key:r,environmentId:t.environmentId,environmentName:t.environmentName,variableId:ee,value:o.value?.value??``,pre:o.value?.pre??``,post:o.value?.post??``,isSecret:o.value?.isSecret??!1,injectIntoAi:o.value?.injectIntoAi??!1},je.value=[],Oe.value=!0,Ne(r,t.environmentId)}async function Ne(e,t){let n=++Ae;ke.value=!0;try{let r=A.currentProjectId;if(!r)return;let i=await A.keyUsages(r,e,t);if(n!==Ae)return;je.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===Ae&&(je.value=[])}finally{n===Ae&&(ke.value=!1)}}async function Pe(){let e=R.value;if(e){z.value=!0;try{await A.upsertVariable(e.environmentId,e.variableId,{key:e.key,value:{value:e.value,pre:e.pre,post:e.post,isSecret:e.isSecret,injectIntoAi:e.injectIntoAi}}),Oe.value=!1,O(`variables-changed`)}catch(e){De.add({severity:`error`,summary:k(`common.error`),detail:e.message,life:4e3})}finally{z.value=!1}}}function Fe(e){let t=j.value[e];return t?t.pre+t.value+t.post:``}let Ie=h(()=>{let e=[...Se.value];if(ye.value&&(e=e.filter(e=>!!j.value[e.variableId])),ve.value.trim()){let t=ve.value.toLowerCase();e=e.filter(e=>{let n=M(e.variableId);if(!n)return!1;if(n.key.toLowerCase().includes(t)||(n.value?.value??``).toLowerCase().includes(t))return!0;let r=j.value[e.variableId];return!!(r&&r.value.toLowerCase().includes(t))})}return F.value.length>0?e.sort((e,t)=>{let n=F.value.indexOf(e.variableId),r=F.value.indexOf(t.variableId);return n===-1?1:r===-1?-1:n-r}):e.sort((e,t)=>{let n=M(e.variableId)?.key??``,r=M(t.variableId)?.key??``;return n?r?n.localeCompare(r):-1:1}),e});function Le(e){let t=e.data.variableId;P.value[t]?(P.value={},F.value=[],Re(t)):(F.value=Ie.value.map(e=>e.variableId),P.value={[t]:!0})}function Re(e){s(()=>{let t=Ce.value?.$el;if(!t)return;let n=Ie.value.findIndex(t=>t.variableId===e);n<0||t.querySelectorAll(`tbody tr[data-p-index]`)[n]?.scrollIntoView({block:`nearest`,behavior:`smooth`})})}function ze(e){N.value=N.value.filter(t=>t!==e),P.value[e]&&(P.value={},F.value=[])}function Be(e){N.value=N.value.filter(t=>t!==e)}function Ve(){let e=oe();N.value=[...N.value,e],F.value=[...Se.value.map(e=>e.variableId),e],s(()=>{P.value={[e]:!0},s(()=>{let e=document.querySelector(`.variables-expand-table .p-datatable-row-expansion:last-of-type`);e&&e.scrollIntoView({block:`nearest`,behavior:`smooth`})})})}function B(e){return u.test(e)}function He(e){let t=e.match(u);return t?t[1].replace(/^(?:environment|service)\./,``):e}function Ue(e){let t=e.match(m);if(t)return D.resolvedEnv[t[1]]??null;let n=e.match(u);if(n){let e={...le,...D.serviceBuiltins};if(n[1]in e)return e[n[1]]}return null}function We(e){return e.length<=jt?e:e.substring(0,jt)+`…`}return(i,a)=>(r(),f(S,null,[d(`div`,{ref_key:`rootRef`,ref:pe,class:`variables-table`},[d(`div`,V,[v(n(y),{modelValue:ve.value,"onUpdate:modelValue":a[0]||=e=>ve.value=e,placeholder:`Search variables...`,class:`search-input`,size:`small`},null,8,[`modelValue`]),c.showOverrides?(r(),f(`div`,H,[v(n(ce),{modelValue:ye.value,"onUpdate:modelValue":a[1]||=e=>ye.value=e,"input-id":`overrides-filter`},null,8,[`modelValue`]),d(`label`,U,g(n(k)(`variablesTable.overriddenOnly`)),1)])):x(``,!0)]),v(n(se),{ref_key:`tableRef`,ref:Ce,"expanded-rows":P.value,"onUpdate:expandedRows":a[5]||=e=>P.value=e,value:Ie.value,"data-key":`variableId`,class:`p-datatable-sm variables-expand-table`,scrollable:``,"scroll-height":he.value,onRowClick:Le},{empty:e(()=>[d(`div`,W,g(c.showAddButton?n(k)(`variablesTable.empty`):n(k)(`variablesTable.emptyReadonly`)),1)]),expansion:e(({data:e})=>[v(ot,{"environment-id":c.environmentId,"variable-id":e.variableId,overrides:j.value,editable:c.editable,"show-overrides":c.showOverrides,"show-delete":c.showDelete,"show-override-badge":c.showOverrideBadge,disabled:c.disabled,"resolved-env":c.resolvedEnv,"autocomplete-enabled":c.autocompleteEnabled,"autocomplete-suggestions":c.autocompleteSuggestions,"autocomplete-meta":c.autocompleteMeta,"is-pending":N.value.includes(e.variableId),onDeleted:t=>ze(e.variableId),onSaved:t=>Be(e.variableId),onAutocompleteSearch:a[4]||=e=>O(`autocomplete-search`,e),onOverrideChanged:be,"can-edit-source":!!c.sources[e.variableId]?.resolvedFrom,onEditSource:t=>Me(e.variableId)},null,8,[`environment-id`,`variable-id`,`overrides`,`editable`,`show-overrides`,`show-delete`,`show-override-badge`,`disabled`,`resolved-env`,`autocomplete-enabled`,`autocomplete-suggestions`,`autocomplete-meta`,`is-pending`,`onDeleted`,`onSaved`,`can-edit-source`,`onEditSource`])]),default:e(()=>[v(n(E),{expander:``,style:{width:`2.5rem`}}),v(n(E),{field:`variableId`,header:n(k)(`common.key`)},{body:e(({data:e})=>[d(`div`,G,[d(`span`,st,[d(`code`,ct,g(M(e.variableId)?.key||`(new variable)`),1),c.sources[e.variableId]?.overriddenBy?(r(),f(`span`,{key:0,class:`overridden-badge overridden-badge--local`,title:n(k)(`variablesTable.localOverrideTooltip`,{env:c.sources[e.variableId].overriddenBy.environmentName})},[a[9]||=d(`i`,{class:`pi pi-desktop`},null,-1),re(` `+g(n(k)(`variablesTable.localOverride`)),1)],8,K)):c.showOverrideBadge&&c.sources[e.variableId]?.overridden&&!B(M(e.variableId)?.value?.value??``)?(r(),f(`span`,{key:1,class:`overridden-badge`,title:n(k)(`variablesTable.overrideTooltip`)},[a[10]||=d(`i`,{class:`pi pi-exclamation-triangle`},null,-1),re(` `+g(n(k)(`variablesTable.override`)),1)],8,lt)):x(``,!0)]),de.value&&c.sources[e.variableId]?(r(),_(ue,{key:0,"environment-id":c.sources[e.variableId].environmentId,class:`source-badge`},null,8,[`environment-id`])):x(``,!0),de.value&&c.sources[e.variableId]?.resolvedFrom?(r(),f(`span`,q,[a[11]||=d(`i`,{class:`pi pi-arrow-right resolved-from-arrow`},null,-1),v(ue,{"environment-id":c.sources[e.variableId].resolvedFrom.environmentId,class:`source-badge`},null,8,[`environment-id`])])):x(``,!0)])]),_:1},8,[`header`]),v(n(E),{header:n(k)(`common.value`)},{body:e(({data:e})=>[d(`span`,J,[L(e.variableId)?(r(),f(`span`,{key:0,class:`value-actions`,onClick:a[2]||=t(()=>{},[`stop`])},[M(e.variableId)?.value?.isSecret?(r(),f(`i`,{key:0,class:b([I.value.has(e.variableId)?`pi pi-eye-slash`:`pi pi-eye`,`action-icon`]),title:n(k)(`variablesTable.reveal`),onClick:t=>we(e.variableId)},null,10,Y)):x(``,!0),d(`i`,{class:b([Te.value===e.variableId?`pi pi-check`:`pi pi-copy`,`action-icon`]),title:n(k)(`actions.copy`),onClick:t=>Ee(e.variableId,L(e.variableId))},null,10,X)])):x(``,!0),B(M(e.variableId)?.value?.value??``)&&Ue(M(e.variableId)?.value?.value??``)!=null?(r(),f(`span`,ut,[v(n(p),{severity:`secondary`,value:He(M(e.variableId)?.value?.value??``),class:`interpolation-hint-tag`},null,8,[`value`]),d(`span`,Z,[M(e.variableId)?.value?.isSecret&&!I.value.has(e.variableId)?(r(),f(`span`,Q,`***`)):(r(),f(`code`,{key:1,class:`resolved-final`,title:Ue(M(e.variableId)?.value?.value??``)},g(We(Ue(M(e.variableId)?.value?.value??``))),9,dt))])])):B(M(e.variableId)?.value?.value??``)&&fe.value&&Ue(M(e.variableId)?.value?.value??``)==null?(r(),f(S,{key:2},[a[12]||=d(`i`,{class:`pi pi-exclamation-triangle unresolved-icon`},null,-1),v(n(p),{severity:`secondary`,value:He(M(e.variableId)?.value?.value??``)},null,8,[`value`]),a[13]||=d(`span`,{class:`unresolved-msg`},`Variable not found in this environment`,-1)],64)):B(M(e.variableId)?.value?.value??``)?(r(),_(n(p),{key:3,severity:`secondary`,value:He(M(e.variableId)?.value?.value??``)},null,8,[`value`])):M(e.variableId)?.value?.isSecret?(r(),f(S,{key:4},[I.value.has(e.variableId)?(r(),f(`code`,{key:1,title:L(e.variableId)},g(We(L(e.variableId))),9,$)):(r(),f(`span`,ft,`***`))],64)):M(e.variableId)?.value?.value||M(e.variableId)?.value?.pre||M(e.variableId)?.value?.post?(r(),f(`code`,{key:5,title:L(e.variableId)},g(We(L(e.variableId))),9,pt)):(r(),f(`span`,mt,`(empty)`))]),c.showOverrides&&!B(M(e.variableId)?.value?.value??``)&&j.value[e.variableId]?(r(),f(`span`,ht,[a[14]||=d(`i`,{class:`pi pi-arrow-right`,style:{"font-size":`0.7rem`}},null,-1),d(`span`,{class:`value-actions`,onClick:a[3]||=t(()=>{},[`stop`])},[M(e.variableId)?.value?.isSecret||j.value[e.variableId].isSecret?(r(),f(`i`,{key:0,class:b([I.value.has(`ovr:`+e.variableId)?`pi pi-eye-slash`:`pi pi-eye`,`action-icon`]),title:n(k)(`variablesTable.reveal`),onClick:t=>we(`ovr:`+e.variableId)},null,10,gt)):x(``,!0),d(`i`,{class:b([Te.value===`ovr:`+e.variableId?`pi pi-check`:`pi pi-copy`,`action-icon`]),title:n(k)(`actions.copy`),onClick:t=>Ee(`ovr:`+e.variableId,Fe(e.variableId))},null,10,_t)]),M(e.variableId)?.value?.isSecret||j.value[e.variableId].isSecret?(r(),f(S,{key:0},[I.value.has(`ovr:`+e.variableId)?(r(),f(`code`,{key:1,class:`override-value`,title:Fe(e.variableId)},g(We(Fe(e.variableId))),9,yt)):(r(),f(`span`,vt,`***`))],64)):(r(),f(`code`,{key:1,class:`override-value`,title:Fe(e.variableId)},g(We(Fe(e.variableId))),9,bt))])):x(``,!0)]),_:1},8,[`header`])]),_:1},8,[`expanded-rows`,`value`,`scroll-height`]),c.showAddButton?(r(),_(n(ie),{key:0,type:`button`,label:n(k)(`variablesTable.addVariable`),icon:`pi pi-plus`,text:``,disabled:c.disabled,class:`mt-3`,onClick:Ve},null,8,[`label`,`disabled`])):x(``,!0)],512),v(n(w),{visible:Oe.value,"onUpdate:visible":a[8]||=e=>Oe.value=e,modal:``,header:n(k)(`variablesTable.editParentHeader`),style:{width:`38rem`,maxWidth:`95vw`}},{footer:e(()=>[v(n(ie),{label:n(k)(`common.cancel`),text:``,disabled:z.value,onClick:a[7]||=e=>Oe.value=!1},null,8,[`label`,`disabled`]),v(n(ie),{label:n(k)(`variablesTable.editParentConfirm`),severity:`warn`,loading:z.value,onClick:Pe},null,8,[`label`,`loading`])]),default:e(()=>[R.value?(r(),f(`div`,xt,[v(n(T),{severity:`warn`,closable:!1,class:`parent-edit__warning`},{default:e(()=>[re(g(n(k)(`variablesTable.editParentWarning`,{key:R.value.key,env:R.value.environmentName})),1)]),_:1}),d(`div`,St,[d(`label`,Ct,g(n(k)(`common.value`)),1),v(n(y),{id:`parent-edit-value`,modelValue:R.value.value,"onUpdate:modelValue":a[6]||=e=>R.value.value=e,class:`w-full`,disabled:z.value},null,8,[`modelValue`,`disabled`])]),d(`div`,wt,[d(`div`,Tt,[a[15]||=d(`i`,{class:`pi pi-sitemap`},null,-1),re(` `+g(n(k)(`variablesTable.editParentImpact`)),1)]),ke.value?(r(),f(`div`,Et,[a[16]||=d(`i`,{class:`pi pi-spin pi-spinner`},null,-1),d(`span`,null,g(n(k)(`variablesTable.editParentLoading`)),1)])):(r(),f(S,{key:1},[je.value.length?(r(),f(`ul`,Dt,[(r(!0),f(S,null,te(je.value,(e,t)=>(r(),f(`li`,{key:t},[v(n(p),{severity:e.kind===`references`?`info`:`secondary`,value:e.kind===`references`?e.viaKey:e.kind===`inherits`?n(k)(`variablesTable.editParentInherits`):n(k)(`variablesTable.editParentDefines`)},null,8,[`severity`,`value`]),d(`span`,Ot,g(e.environmentName),1),e.serviceName?(r(),f(`span`,kt,g(e.serviceName),1)):x(``,!0)]))),128))])):(r(),f(`div`,At,g(n(k)(`variablesTable.editParentNoUsage`)),1))],64))])])):x(``,!0)]),_:1},8,[`visible`,`header`])],64))}}),[[`__scopeId`,`data-v-5af35db0`]]);export{ue as n,Pt as t};
1
+ import{$i as e,$r as t,Da as n,Ii as r,Ji as i,Mi as a,Mt as ee,Oi as o,Ri as te,Ti as s,Un as ne,Yi as c,_n as l,aa as u,ai as d,ci as f,fi as re,fn as p,hi as m,ii as h,oa as g,oi as _,pi as v,pn as y,ra as b,si as x,ti as S,va as C,xn as ie,yn as w,zn as ae}from"./index-nY5cynKj.js";import{t as T}from"./message-DnHiYCym.js";import{t as oe}from"./uuid-FpfcaBnR.js";import{n as se,t as E}from"./column-C1iIQeFS.js";import{t as ce}from"./toggleswitch-DXNKoD3W.js";import{t as le}from"./autocomplete-LUb8fDRi.js";var D={key:0,class:`env-badge`},O={class:`env-badge__name`},ue=l(m({__name:`EnvironmentBadge`,props:{environmentId:{}},setup(e){let t=e,n=ee(),i=h(()=>n.getById(t.environmentId));function a(e){if(e)return e.startsWith(`#`)?e:`#${e}`}return(e,t)=>i.value?(r(),f(`span`,D,[d(`span`,{class:`env-badge__swatch`,style:u({backgroundColor:a(i.value.bgColor)||a(i.value.color)||`var(--p-primary-color)`})},null,4),d(`span`,O,g(i.value.name),1)])):x(``,!0)}}),[[`__scopeId`,`data-v-b70e647b`]]),k={class:`key-row`},A={class:`expansion-field expansion-field--key`},de=[`for`],fe={key:2,class:`value-display`},pe={key:0,class:`expansion-field expansion-field--toggle`},me={class:`expansion-label`,for:`varrow-secret`},he={key:1,class:`expansion-field expansion-field--toggle`},ge=[`title`],_e={key:2,class:`key-row-delete`},ve={key:0,class:`not-secret-warning`},ye={class:`expansion-section`},j={class:`section-title`},be={class:`section-fields`},xe={class:`expansion-field expansion-field--prepost`},M={class:`expansion-label`,for:`varrow-prefix`},N={key:1,class:`value-display`},Se={class:`expansion-field expansion-field--value`},Ce=[`for`],P={key:0,class:`secret-input-wrap`},F=[`disabled`],I=[`title`],we={key:1,class:`value-display value-display--with-actions`},Te={key:0,class:`value-actions`},Ee={key:0},L={key:1},De={class:`expansion-field expansion-field--prepost`},R={class:`expansion-label`,for:`varrow-suffix`},Oe={key:1,class:`value-display`},z={key:0,class:`preview-value`},ke={key:0,class:`prepost-part prepost-part--pre`},Ae={key:1,class:`prepost-part prepost-part--interpolation`},je={class:`prepost-part--value prepost-resolved-inline`},Me=[`title`],Ne={key:2,class:`prepost-part prepost-part--value`},Pe={key:3,class:`prepost-part prepost-part--post`},Fe={key:1,class:`expansion-section`},Ie={class:`section-header`},Le={class:`section-title`},Re={class:`section-fields`},ze={class:`expansion-field expansion-field--prepost`},Be={class:`expansion-label`,for:`varrow-override-prefix`},Ve={class:`expansion-field expansion-field--value`},B=[`for`],He={key:0,class:`secret-input-wrap`},Ue=[`disabled`],We=[`title`],Ge={class:`expansion-field expansion-field--prepost`},Ke={class:`expansion-label`,for:`varrow-override-suffix`},qe={key:1,class:`override-view`},Je={key:0,class:`value-display--with-actions`},Ye={class:`value-actions`},Xe={key:0,class:`override-value-masked`},Ze={key:1,class:`override-value`},Qe={key:1,class:`override-value`},$e={key:1,class:`override-empty`},et={key:0,class:`preview-value preview-value--override`},tt={key:0,class:`prepost-part prepost-part--pre`},nt={key:1,class:`prepost-part prepost-part--interpolation`},rt={key:0,class:`prepost-part--value prepost-resolved-inline`},it={key:2,class:`prepost-part prepost-part--value`},at={key:3,class:`prepost-part prepost-part--post`},ot=l(m({__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:()=>({})},isPending:{type:Boolean,default:!1}},emits:[`deleted`,`saved`,`autocomplete-search`,`override-changed`,`edit-source`],setup(e,{emit:i}){let o=/^\{\{(.+)\}\}$/,te=/^\{\{environment\.(.+)\}\}$/,s=e,l=i,u=ee(),m=ae(),{t:w}=ne(),T=C(!1),oe=C(!1),se=C(!1),E=C(!1),D=C(!1),O=C(null);function ue(e,t){navigator.clipboard.writeText(t),O.value=e,setTimeout(()=>{O.value===e&&(O.value=null)},1500)}let ot=h(()=>u.getById(s.environmentId)?.variables?.[s.variableId]),V=C(``),H=C(``),U=C(``),W=C(``),G=C(!1),st=C(!1),ct=h(()=>Z(H.value)),K=h(()=>G.value&&!ct.value);function lt(){let e=ot.value;V.value=e?.key??``,H.value=e?.value?.value??``,U.value=e?.value?.pre??``,W.value=e?.value?.post??``,G.value=e?.value?.isSecret??!1,st.value=e?.value?.injectIntoAi??!1}a(lt),c(ot,(e,t)=>{!t&&e&&lt()});let q=h(()=>s.overrides[s.variableId]??null),J=C(``),Y=C(``),X=C(``);function ut(){let e=q.value;J.value=e?.pre??``,Y.value=e?.value??``,X.value=e?.post??``}a(ut),c(q,ut);function Z(e){return o.test(e)}function Q(e){let t=e.match(o);return t?t[1].replace(/^environment\./,``):e}function dt(e){let t=e.match(te);return t?s.resolvedEnv[t[1]]??null:null}function ft(e){let t=e.value;V.value=t,H.value=`{{environment.${t}}}`,G.value=!1;let n=s.autocompleteMeta?.[t];n&&(U.value=n.pre,W.value=n.post),$()}async function $(){if(T.value)return;let e=V.value.trim();if(e){T.value=!0;try{await u.upsertVariable(s.environmentId,s.variableId,{key:e,value:{value:H.value,pre:U.value,post:W.value,isSecret:K.value,injectIntoAi:st.value}}),s.isPending&&l(`saved`)}catch(e){m.add({severity:`error`,summary:w(`common.error`),detail:e.message??w(`variableRowEditor.saveError`),life:4e3})}finally{T.value=!1}}}async function pt(){if(s.isPending){l(`deleted`);return}T.value=!0;try{q.value&&await u.removeOverride(s.variableId),await u.removeVariable(s.environmentId,s.variableId),l(`deleted`)}catch(e){m.add({severity:`error`,summary:w(`common.error`),detail:e.message??w(`variableRowEditor.deleteError`),life:4e3})}finally{T.value=!1}}async function mt(){let e=J.value||Y.value||X.value;try{if(!e){q.value&&(await u.removeOverride(s.variableId),l(`override-changed`));return}await u.setOverride(s.variableId,{value:{value:Y.value,pre:J.value,post:X.value,isSecret:K.value}}),l(`override-changed`)}catch(e){m.add({severity:`error`,summary:w(`common.error`),detail:e.message??w(`variableRowEditor.overrideError`),life:4e3})}}async function ht(){try{await u.removeOverride(s.variableId),l(`override-changed`)}catch(e){m.add({severity:`error`,summary:w(`common.error`),detail:e.message??w(`variableRowEditor.clearOverrideError`),life:4e3})}}function gt(e){let t=e.relatedTarget;(!t||!e.currentTarget.contains(t))&&$()}return(i,a)=>(r(),f(`div`,{class:`expansion-form`,onFocusout:gt},[d(`div`,k,[d(`div`,A,[d(`label`,{class:`expansion-label`,for:e.editable&&e.autocompleteEnabled?`varrow-key-ac`:`varrow-key-input`},g(n(w)(`common.key`)),9,de),e.editable&&e.autocompleteEnabled?(r(),_(n(le),{key:0,"input-id":`varrow-key-ac`,modelValue:V.value,"onUpdate:modelValue":a[0]||=e=>V.value=e,suggestions:e.autocompleteSuggestions,placeholder:n(w)(`variableRowEditor.variableNamePlaceholder`),class:`w-full`,disabled:e.disabled,onComplete:a[1]||=e=>l(`autocomplete-search`,e.query),onItemSelect:ft,onBlur:$},null,8,[`modelValue`,`suggestions`,`placeholder`,`disabled`])):e.editable?(r(),_(n(y),{key:1,id:`varrow-key-input`,modelValue:V.value,"onUpdate:modelValue":a[2]||=e=>V.value=e,placeholder:n(w)(`variableRowEditor.variableNamePlaceholder`),class:`w-full`,disabled:e.disabled,onBlur:$},null,8,[`modelValue`,`placeholder`,`disabled`])):(r(),f(`code`,fe,g(V.value),1))]),e.editable&&!ct.value?(r(),f(`div`,pe,[d(`label`,me,g(n(w)(`variableRowEditor.secret`)),1),v(n(ce),{"input-id":`varrow-secret`,modelValue:G.value,"onUpdate:modelValue":[a[3]||=e=>G.value=e,$],disabled:e.disabled},null,8,[`modelValue`,`disabled`])])):x(``,!0),e.editable?(r(),f(`div`,he,[d(`label`,{class:`expansion-label`,for:`varrow-injectai`,title:n(w)(`variableRowEditor.injectIntoAiHint`)},g(n(w)(`variableRowEditor.injectIntoAi`)),9,ge),v(n(ce),{"input-id":`varrow-injectai`,modelValue:st.value,"onUpdate:modelValue":[a[4]||=e=>st.value=e,$],disabled:e.disabled},null,8,[`modelValue`,`disabled`])])):x(``,!0),e.showDelete&&e.editable?(r(),f(`div`,_e,[v(n(ie),{icon:`pi pi-trash`,severity:`danger`,text:``,rounded:``,size:`small`,disabled:e.disabled||T.value,onClick:pt},null,8,[`disabled`])])):x(``,!0)]),e.editable&&!G.value&&!Z(H.value)?(r(),f(`div`,ve,[a[26]||=d(`i`,{class:`pi pi-info-circle`},null,-1),d(`span`,null,g(n(w)(`variableRowEditor.notSecretWarning`)),1)])):x(``,!0),d(`div`,ye,[d(`div`,j,g(n(w)(`variableRowEditor.value`)),1),d(`div`,be,[d(`div`,xe,[d(`label`,M,g(n(w)(`variableRowEditor.prefix`)),1),e.editable?(r(),_(n(y),{key:0,id:`varrow-prefix`,modelValue:U.value,"onUpdate:modelValue":a[5]||=e=>U.value=e,placeholder:n(w)(`variableRowEditor.prefixPlaceholder`),class:`w-full`,disabled:e.disabled,onBlur:$},null,8,[`modelValue`,`placeholder`,`disabled`])):(r(),f(`code`,N,g(U.value||`—`),1))]),d(`div`,Se,[d(`label`,{class:`expansion-label`,for:K.value?`varrow-value-secret`:`varrow-value-plain`},g(n(w)(`variableRowEditor.value`)),9,Ce),e.editable?(r(),f(S,{key:0},[K.value?(r(),f(`div`,P,[v(n(y),{id:`varrow-value-secret`,modelValue:H.value,"onUpdate:modelValue":a[6]||=e=>H.value=e,type:E.value?`text`:`password`,placeholder:n(w)(`variableRowEditor.valuePlaceholder`),class:`w-full`,disabled:e.disabled,onBlur:$},null,8,[`modelValue`,`type`,`placeholder`,`disabled`]),d(`button`,{type:`button`,class:`secret-toggle`,disabled:e.disabled,onClick:a[7]||=e=>E.value=!E.value,tabindex:`-1`},[d(`i`,{class:b(E.value?`pi pi-eye-slash`:`pi pi-eye`)},null,2)],8,F)])):Z(H.value)&&!oe.value?(r(),f(`span`,{key:1,class:`interpolation-badge`,title:H.value,onClick:a[8]||=e=>oe.value=!0},[v(n(p),{severity:`secondary`,value:Q(H.value)},null,8,[`value`]),a[27]||=d(`i`,{class:`pi pi-pencil interpolation-edit-icon`},null,-1)],8,I)):(r(),_(n(y),{key:2,id:`varrow-value-plain`,modelValue:H.value,"onUpdate:modelValue":a[9]||=e=>H.value=e,placeholder:n(w)(`variableRowEditor.valuePlaceholder`),class:`w-full`,disabled:e.disabled,onFocus:a[10]||=e=>oe.value=!0,onBlur:a[11]||=e=>{oe.value=!1,$()}},null,8,[`modelValue`,`placeholder`,`disabled`]))],64)):(r(),f(`span`,we,[H.value?(r(),f(`span`,Te,[K.value?(r(),f(`i`,{key:0,class:b([E.value?`pi pi-eye-slash`:`pi pi-eye`,`action-icon`]),onClick:a[12]||=e=>E.value=!E.value},null,2)):x(``,!0),d(`i`,{class:b([O.value===`val`?`pi pi-check`:`pi pi-copy`,`action-icon`]),onClick:a[13]||=e=>ue(`val`,U.value+H.value+W.value)},null,2)])):x(``,!0),Z(H.value)?(r(),_(n(p),{key:1,severity:`secondary`,value:Q(H.value)},null,8,[`value`])):K.value?(r(),f(S,{key:2},[E.value?(r(),f(`span`,L,g(H.value),1)):(r(),f(`span`,Ee,`***`))],64)):(r(),f(S,{key:3},[re(g(H.value),1)],64))]))]),d(`div`,De,[d(`label`,R,g(n(w)(`variableRowEditor.suffix`)),1),e.editable?(r(),_(n(y),{key:0,id:`varrow-suffix`,modelValue:W.value,"onUpdate:modelValue":a[14]||=e=>W.value=e,placeholder:n(w)(`variableRowEditor.suffixPlaceholder`),class:`w-full`,disabled:e.disabled,onBlur:$},null,8,[`modelValue`,`placeholder`,`disabled`])):(r(),f(`code`,Oe,g(W.value||`—`),1))])]),K.value?x(``,!0):(r(),f(`code`,z,[U.value?(r(),f(`span`,ke,g(U.value),1)):x(``,!0),Z(H.value)?(r(),f(`span`,Ae,[dt(H.value)==null?(r(),f(S,{key:1},[v(n(p),{severity:`secondary`,value:Q(H.value),style:{"font-size":`0.7rem`}},null,8,[`value`]),a[28]||=d(`span`,{class:`prepost-unresolved`},`(?)`,-1)],64)):(r(),f(S,{key:0},[d(`span`,je,g(dt(H.value)),1),e.canEditSource?(r(),f(`i`,{key:0,class:`pi pi-pencil edit-source-icon`,title:n(w)(`variablesTable.editParentTitle`),onClick:a[15]||=t(e=>l(`edit-source`),[`stop`])},null,8,Me)):x(``,!0)],64))])):(r(),f(`span`,Ne,g(H.value||`…`),1)),W.value?(r(),f(`span`,Pe,g(W.value),1)):x(``,!0)]))]),e.showOverrides&&V.value?.trim()?(r(),f(`div`,Fe,[d(`div`,Ie,[d(`div`,Le,g(n(w)(`variableRowEditor.localOverride`)),1),e.editable&&q.value?(r(),_(n(ie),{key:0,icon:`pi pi-times`,text:``,rounded:``,size:`small`,severity:`danger`,title:n(w)(`variableRowEditor.clearOverride`),disabled:e.disabled,onClick:ht},null,8,[`title`,`disabled`])):x(``,!0)]),d(`div`,Re,[e.editable?(r(),f(S,{key:0},[d(`div`,ze,[d(`label`,Be,g(n(w)(`variableRowEditor.prefix`)),1),v(n(y),{id:`varrow-override-prefix`,modelValue:J.value,"onUpdate:modelValue":a[16]||=e=>J.value=e,placeholder:n(w)(`variableRowEditor.prefixPlaceholder`),class:`w-full`,disabled:e.disabled,onBlur:mt},null,8,[`modelValue`,`placeholder`,`disabled`])]),d(`div`,Ve,[d(`label`,{class:`expansion-label`,for:K.value?`varrow-override-value-secret`:`varrow-override-value-plain`},g(n(w)(`variableRowEditor.value`)),9,B),K.value?(r(),f(`div`,He,[v(n(y),{id:`varrow-override-value-secret`,modelValue:Y.value,"onUpdate:modelValue":a[17]||=e=>Y.value=e,type:D.value?`text`:`password`,placeholder:n(w)(`variableRowEditor.overrideValuePlaceholder`),class:`w-full`,disabled:e.disabled,onBlur:mt},null,8,[`modelValue`,`type`,`placeholder`,`disabled`]),d(`button`,{type:`button`,class:`secret-toggle`,disabled:e.disabled,onClick:a[18]||=e=>D.value=!D.value,tabindex:`-1`},[d(`i`,{class:b(D.value?`pi pi-eye-slash`:`pi pi-eye`)},null,2)],8,Ue)])):Z(Y.value)&&!se.value?(r(),f(`span`,{key:1,class:`interpolation-badge`,title:Y.value,onClick:a[19]||=e=>se.value=!0},[v(n(p),{severity:`secondary`,value:Q(Y.value)},null,8,[`value`]),a[29]||=d(`i`,{class:`pi pi-pencil interpolation-edit-icon`},null,-1)],8,We)):(r(),_(n(y),{key:2,id:`varrow-override-value-plain`,modelValue:Y.value,"onUpdate:modelValue":a[20]||=e=>Y.value=e,placeholder:n(w)(`variableRowEditor.overrideValuePlaceholder`),class:`w-full`,disabled:e.disabled,onFocus:a[21]||=e=>se.value=!0,onBlur:a[22]||=e=>{se.value=!1,mt()}},null,8,[`modelValue`,`placeholder`,`disabled`]))]),d(`div`,Ge,[d(`label`,Ke,g(n(w)(`variableRowEditor.suffix`)),1),v(n(y),{id:`varrow-override-suffix`,modelValue:X.value,"onUpdate:modelValue":a[23]||=e=>X.value=e,placeholder:n(w)(`variableRowEditor.suffixPlaceholder`),class:`w-full`,disabled:e.disabled,onBlur:mt},null,8,[`modelValue`,`placeholder`,`disabled`])])],64)):(r(),f(`div`,qe,[q.value?(r(),f(`span`,Je,[d(`span`,Ye,[K.value||q.value.isSecret?(r(),f(`i`,{key:0,class:b([D.value?`pi pi-eye-slash`:`pi pi-eye`,`action-icon`]),onClick:a[24]||=e=>D.value=!D.value},null,2)):x(``,!0),d(`i`,{class:b([O.value===`ovr`?`pi pi-check`:`pi pi-copy`,`action-icon`]),onClick:a[25]||=e=>ue(`ovr`,q.value.pre+q.value.value+q.value.post)},null,2)]),K.value||q.value.isSecret?(r(),f(S,{key:0},[D.value?(r(),f(`code`,Ze,g(q.value.pre)+g(q.value.value)+g(q.value.post),1)):(r(),f(`span`,Xe,`***`))],64)):(r(),f(`code`,Qe,g(q.value.pre)+g(q.value.value)+g(q.value.post),1))])):(r(),f(`span`,$e,`—`))]))]),e.editable&&!K.value&&(J.value||Y.value||X.value)?(r(),f(`code`,et,[J.value?(r(),f(`span`,tt,g(J.value),1)):x(``,!0),Z(Y.value)?(r(),f(`span`,nt,[dt(Y.value)==null?(r(),f(S,{key:1},[v(n(p),{severity:`secondary`,value:Q(Y.value),style:{"font-size":`0.7rem`}},null,8,[`value`]),a[30]||=d(`span`,{class:`prepost-unresolved`},`(?)`,-1)],64)):(r(),f(`span`,rt,g(dt(Y.value)),1))])):(r(),f(`span`,it,g(Y.value||`…`),1)),X.value?(r(),f(`span`,at,g(X.value),1)):x(``,!0)])):x(``,!0)])):x(``,!0)],32))}}),[[`__scopeId`,`data-v-2a3078f4`]]),V={class:`table-toolbar`},H={key:0,class:`overrides-filter`},U={for:`overrides-filter`},W={class:`text-center py-4 text-gray-500`},G={class:`row-key-cell`},st={class:`row-key-line`},ct={class:`row-key`},K=[`title`],lt=[`title`],q={key:1,class:`resolved-from-line`},J={class:`row-value`},Y=[`title`,`onClick`],X=[`title`,`onClick`],ut={key:1,class:`value-levels`},Z={class:`resolved-level`},Q={key:0,class:`secret-mask`},dt=[`title`],ft={key:0,class:`secret-mask`},$=[`title`],pt=[`title`],mt={key:6,class:`empty-value`},ht={key:0,class:`override-indicator`},gt=[`title`,`onClick`],_t=[`title`,`onClick`],vt={key:0,class:`override-value-masked`},yt=[`title`],bt=[`title`],xt={key:0,class:`parent-edit`},St={class:`parent-edit__field`},Ct={class:`parent-edit__label`,for:`parent-edit-value`},wt={class:`parent-edit__usages`},Tt={class:`parent-edit__usages-title`},Et={key:0,class:`parent-edit__usages-loading`},Dt={key:0,class:`parent-edit__usage-list`},Ot={class:`parent-edit__usage-env`},kt={key:0,class:`parent-edit__usage-svc`},At={key:1,class:`parent-edit__usages-empty`},jt=40,Mt=200,Nt=24,Pt=l(m({__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(c,{emit:l}){let u=/^\{\{(.+)\}\}$/,m=/^\{\{environment\.(.+)\}\}$/,le={"service.HOST_LAN":`(agent LAN IP)`},D=c,O=l,{t:k}=ne(),A=ee(),de=h(()=>Object.keys(D.sources).length>0),fe=h(()=>Object.keys(D.resolvedEnv).length>0),pe=i(`rootRef`),me=C(null),he=h(()=>D.scrollHeight===`auto`?me.value??`460px`:D.scrollHeight);function ge(){if(D.scrollHeight!==`auto`)return;let e=pe.value;if(!e)return;let t=(e.querySelector(`.p-datatable-table-container`)??e).getBoundingClientRect().top,n=window.innerHeight-t-Nt;me.value=`${Math.max(Mt,Math.round(n))}px`}let _e=null;a(()=>{s(ge),window.addEventListener(`resize`,ge),typeof ResizeObserver<`u`&&pe.value&&(_e=new ResizeObserver(()=>ge()),_e.observe(document.body))}),o(()=>{window.removeEventListener(`resize`,ge),_e?.disconnect(),_e=null});let ve=C(``),ye=C(!1),j=C({});async function be(){if(D.showOverrides)try{let e=await A.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}}j.value=t}catch{}}a(be);let xe=h(()=>A.getById(D.environmentId));function M(e){return xe.value?.variables?.[e]}let N=C([]),Se=h(()=>{let e=Object.keys(xe.value?.variables??{}).map(e=>({variableId:e})),t=new Set(e.map(e=>e.variableId)),n=N.value.filter(e=>!t.has(e)).map(e=>({variableId:e}));return[...e,...n]}),Ce=i(`tableRef`),P=C({}),F=C([]),I=C(new Set);function we(e){let t=new Set(I.value);t.has(e)?t.delete(e):t.add(e),I.value=t}let Te=C(null);function Ee(e,t){navigator.clipboard.writeText(t),Te.value=e,setTimeout(()=>{Te.value===e&&(Te.value=null)},1500)}function L(e){let t=M(e);if(!t)return``;let n=t.value?.value??``;return B(n)?Ue(n)??n:(t.value?.pre??``)+n+(t.value?.post??``)}let De=ae(),R=C(null),Oe=C(!1),z=C(!1),ke=C(!1),Ae=0,je=C([]);async function Me(e){let t=D.sources[e]?.resolvedFrom,n=M(e)?.value?.value??``;if(!t||!n)return;let r=He(n),i=A.getById(t.environmentId),a=Object.entries(i?.variables??{}).find(([,e])=>e.key===r);if(!a){De.add({severity:`warn`,summary:k(`variablesTable.editParentNotFound`),life:4e3});return}let[ee,o]=a;R.value={key:r,environmentId:t.environmentId,environmentName:t.environmentName,variableId:ee,value:o.value?.value??``,pre:o.value?.pre??``,post:o.value?.post??``,isSecret:o.value?.isSecret??!1,injectIntoAi:o.value?.injectIntoAi??!1},je.value=[],Oe.value=!0,Ne(r,t.environmentId)}async function Ne(e,t){let n=++Ae;ke.value=!0;try{let r=A.currentProjectId;if(!r)return;let i=await A.keyUsages(r,e,t);if(n!==Ae)return;je.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===Ae&&(je.value=[])}finally{n===Ae&&(ke.value=!1)}}async function Pe(){let e=R.value;if(e){z.value=!0;try{await A.upsertVariable(e.environmentId,e.variableId,{key:e.key,value:{value:e.value,pre:e.pre,post:e.post,isSecret:e.isSecret,injectIntoAi:e.injectIntoAi}}),Oe.value=!1,O(`variables-changed`)}catch(e){De.add({severity:`error`,summary:k(`common.error`),detail:e.message,life:4e3})}finally{z.value=!1}}}function Fe(e){let t=j.value[e];return t?t.pre+t.value+t.post:``}let Ie=h(()=>{let e=[...Se.value];if(ye.value&&(e=e.filter(e=>!!j.value[e.variableId])),ve.value.trim()){let t=ve.value.toLowerCase();e=e.filter(e=>{let n=M(e.variableId);if(!n)return!1;if(n.key.toLowerCase().includes(t)||(n.value?.value??``).toLowerCase().includes(t))return!0;let r=j.value[e.variableId];return!!(r&&r.value.toLowerCase().includes(t))})}return F.value.length>0?e.sort((e,t)=>{let n=F.value.indexOf(e.variableId),r=F.value.indexOf(t.variableId);return n===-1?1:r===-1?-1:n-r}):e.sort((e,t)=>{let n=M(e.variableId)?.key??``,r=M(t.variableId)?.key??``;return n?r?n.localeCompare(r):-1:1}),e});function Le(e){let t=e.data.variableId;P.value[t]?(P.value={},F.value=[],Re(t)):(F.value=Ie.value.map(e=>e.variableId),P.value={[t]:!0})}function Re(e){s(()=>{let t=Ce.value?.$el;if(!t)return;let n=Ie.value.findIndex(t=>t.variableId===e);n<0||t.querySelectorAll(`tbody tr[data-p-index]`)[n]?.scrollIntoView({block:`nearest`,behavior:`smooth`})})}function ze(e){N.value=N.value.filter(t=>t!==e),P.value[e]&&(P.value={},F.value=[])}function Be(e){N.value=N.value.filter(t=>t!==e)}function Ve(){let e=oe();N.value=[...N.value,e],F.value=[...Se.value.map(e=>e.variableId),e],s(()=>{P.value={[e]:!0},s(()=>{let e=document.querySelector(`.variables-expand-table .p-datatable-row-expansion:last-of-type`);e&&e.scrollIntoView({block:`nearest`,behavior:`smooth`})})})}function B(e){return u.test(e)}function He(e){let t=e.match(u);return t?t[1].replace(/^(?:environment|service)\./,``):e}function Ue(e){let t=e.match(m);if(t)return D.resolvedEnv[t[1]]??null;let n=e.match(u);if(n){let e={...le,...D.serviceBuiltins};if(n[1]in e)return e[n[1]]}return null}function We(e){return e.length<=jt?e:e.substring(0,jt)+`…`}return(i,a)=>(r(),f(S,null,[d(`div`,{ref_key:`rootRef`,ref:pe,class:`variables-table`},[d(`div`,V,[v(n(y),{modelValue:ve.value,"onUpdate:modelValue":a[0]||=e=>ve.value=e,placeholder:`Search variables...`,class:`search-input`,size:`small`},null,8,[`modelValue`]),c.showOverrides?(r(),f(`div`,H,[v(n(ce),{modelValue:ye.value,"onUpdate:modelValue":a[1]||=e=>ye.value=e,"input-id":`overrides-filter`},null,8,[`modelValue`]),d(`label`,U,g(n(k)(`variablesTable.overriddenOnly`)),1)])):x(``,!0)]),v(n(se),{ref_key:`tableRef`,ref:Ce,"expanded-rows":P.value,"onUpdate:expandedRows":a[5]||=e=>P.value=e,value:Ie.value,"data-key":`variableId`,class:`p-datatable-sm variables-expand-table`,scrollable:``,"scroll-height":he.value,onRowClick:Le},{empty:e(()=>[d(`div`,W,g(c.showAddButton?n(k)(`variablesTable.empty`):n(k)(`variablesTable.emptyReadonly`)),1)]),expansion:e(({data:e})=>[v(ot,{"environment-id":c.environmentId,"variable-id":e.variableId,overrides:j.value,editable:c.editable,"show-overrides":c.showOverrides,"show-delete":c.showDelete,"show-override-badge":c.showOverrideBadge,disabled:c.disabled,"resolved-env":c.resolvedEnv,"autocomplete-enabled":c.autocompleteEnabled,"autocomplete-suggestions":c.autocompleteSuggestions,"autocomplete-meta":c.autocompleteMeta,"is-pending":N.value.includes(e.variableId),onDeleted:t=>ze(e.variableId),onSaved:t=>Be(e.variableId),onAutocompleteSearch:a[4]||=e=>O(`autocomplete-search`,e),onOverrideChanged:be,"can-edit-source":!!c.sources[e.variableId]?.resolvedFrom,onEditSource:t=>Me(e.variableId)},null,8,[`environment-id`,`variable-id`,`overrides`,`editable`,`show-overrides`,`show-delete`,`show-override-badge`,`disabled`,`resolved-env`,`autocomplete-enabled`,`autocomplete-suggestions`,`autocomplete-meta`,`is-pending`,`onDeleted`,`onSaved`,`can-edit-source`,`onEditSource`])]),default:e(()=>[v(n(E),{expander:``,style:{width:`2.5rem`}}),v(n(E),{field:`variableId`,header:n(k)(`common.key`)},{body:e(({data:e})=>[d(`div`,G,[d(`span`,st,[d(`code`,ct,g(M(e.variableId)?.key||`(new variable)`),1),c.sources[e.variableId]?.overriddenBy?(r(),f(`span`,{key:0,class:`overridden-badge overridden-badge--local`,title:n(k)(`variablesTable.localOverrideTooltip`,{env:c.sources[e.variableId].overriddenBy.environmentName})},[a[9]||=d(`i`,{class:`pi pi-desktop`},null,-1),re(` `+g(n(k)(`variablesTable.localOverride`)),1)],8,K)):c.showOverrideBadge&&c.sources[e.variableId]?.overridden&&!B(M(e.variableId)?.value?.value??``)?(r(),f(`span`,{key:1,class:`overridden-badge`,title:n(k)(`variablesTable.overrideTooltip`)},[a[10]||=d(`i`,{class:`pi pi-exclamation-triangle`},null,-1),re(` `+g(n(k)(`variablesTable.override`)),1)],8,lt)):x(``,!0)]),de.value&&c.sources[e.variableId]?(r(),_(ue,{key:0,"environment-id":c.sources[e.variableId].environmentId,class:`source-badge`},null,8,[`environment-id`])):x(``,!0),de.value&&c.sources[e.variableId]?.resolvedFrom?(r(),f(`span`,q,[a[11]||=d(`i`,{class:`pi pi-arrow-right resolved-from-arrow`},null,-1),v(ue,{"environment-id":c.sources[e.variableId].resolvedFrom.environmentId,class:`source-badge`},null,8,[`environment-id`])])):x(``,!0)])]),_:1},8,[`header`]),v(n(E),{header:n(k)(`common.value`)},{body:e(({data:e})=>[d(`span`,J,[L(e.variableId)?(r(),f(`span`,{key:0,class:`value-actions`,onClick:a[2]||=t(()=>{},[`stop`])},[M(e.variableId)?.value?.isSecret?(r(),f(`i`,{key:0,class:b([I.value.has(e.variableId)?`pi pi-eye-slash`:`pi pi-eye`,`action-icon`]),title:n(k)(`variablesTable.reveal`),onClick:t=>we(e.variableId)},null,10,Y)):x(``,!0),d(`i`,{class:b([Te.value===e.variableId?`pi pi-check`:`pi pi-copy`,`action-icon`]),title:n(k)(`actions.copy`),onClick:t=>Ee(e.variableId,L(e.variableId))},null,10,X)])):x(``,!0),B(M(e.variableId)?.value?.value??``)&&Ue(M(e.variableId)?.value?.value??``)!=null?(r(),f(`span`,ut,[v(n(p),{severity:`secondary`,value:He(M(e.variableId)?.value?.value??``),class:`interpolation-hint-tag`},null,8,[`value`]),d(`span`,Z,[M(e.variableId)?.value?.isSecret&&!I.value.has(e.variableId)?(r(),f(`span`,Q,`***`)):(r(),f(`code`,{key:1,class:`resolved-final`,title:Ue(M(e.variableId)?.value?.value??``)},g(We(Ue(M(e.variableId)?.value?.value??``))),9,dt))])])):B(M(e.variableId)?.value?.value??``)&&fe.value&&Ue(M(e.variableId)?.value?.value??``)==null?(r(),f(S,{key:2},[a[12]||=d(`i`,{class:`pi pi-exclamation-triangle unresolved-icon`},null,-1),v(n(p),{severity:`secondary`,value:He(M(e.variableId)?.value?.value??``)},null,8,[`value`]),a[13]||=d(`span`,{class:`unresolved-msg`},`Variable not found in this environment`,-1)],64)):B(M(e.variableId)?.value?.value??``)?(r(),_(n(p),{key:3,severity:`secondary`,value:He(M(e.variableId)?.value?.value??``)},null,8,[`value`])):M(e.variableId)?.value?.isSecret?(r(),f(S,{key:4},[I.value.has(e.variableId)?(r(),f(`code`,{key:1,title:L(e.variableId)},g(We(L(e.variableId))),9,$)):(r(),f(`span`,ft,`***`))],64)):M(e.variableId)?.value?.value||M(e.variableId)?.value?.pre||M(e.variableId)?.value?.post?(r(),f(`code`,{key:5,title:L(e.variableId)},g(We(L(e.variableId))),9,pt)):(r(),f(`span`,mt,`(empty)`))]),c.showOverrides&&!B(M(e.variableId)?.value?.value??``)&&j.value[e.variableId]?(r(),f(`span`,ht,[a[14]||=d(`i`,{class:`pi pi-arrow-right`,style:{"font-size":`0.7rem`}},null,-1),d(`span`,{class:`value-actions`,onClick:a[3]||=t(()=>{},[`stop`])},[M(e.variableId)?.value?.isSecret||j.value[e.variableId].isSecret?(r(),f(`i`,{key:0,class:b([I.value.has(`ovr:`+e.variableId)?`pi pi-eye-slash`:`pi pi-eye`,`action-icon`]),title:n(k)(`variablesTable.reveal`),onClick:t=>we(`ovr:`+e.variableId)},null,10,gt)):x(``,!0),d(`i`,{class:b([Te.value===`ovr:`+e.variableId?`pi pi-check`:`pi pi-copy`,`action-icon`]),title:n(k)(`actions.copy`),onClick:t=>Ee(`ovr:`+e.variableId,Fe(e.variableId))},null,10,_t)]),M(e.variableId)?.value?.isSecret||j.value[e.variableId].isSecret?(r(),f(S,{key:0},[I.value.has(`ovr:`+e.variableId)?(r(),f(`code`,{key:1,class:`override-value`,title:Fe(e.variableId)},g(We(Fe(e.variableId))),9,yt)):(r(),f(`span`,vt,`***`))],64)):(r(),f(`code`,{key:1,class:`override-value`,title:Fe(e.variableId)},g(We(Fe(e.variableId))),9,bt))])):x(``,!0)]),_:1},8,[`header`])]),_:1},8,[`expanded-rows`,`value`,`scroll-height`]),c.showAddButton?(r(),_(n(ie),{key:0,type:`button`,label:n(k)(`variablesTable.addVariable`),icon:`pi pi-plus`,text:``,disabled:c.disabled,class:`mt-3`,onClick:Ve},null,8,[`label`,`disabled`])):x(``,!0)],512),v(n(w),{visible:Oe.value,"onUpdate:visible":a[8]||=e=>Oe.value=e,modal:``,header:n(k)(`variablesTable.editParentHeader`),style:{width:`38rem`,maxWidth:`95vw`}},{footer:e(()=>[v(n(ie),{label:n(k)(`common.cancel`),text:``,disabled:z.value,onClick:a[7]||=e=>Oe.value=!1},null,8,[`label`,`disabled`]),v(n(ie),{label:n(k)(`variablesTable.editParentConfirm`),severity:`warn`,loading:z.value,onClick:Pe},null,8,[`label`,`loading`])]),default:e(()=>[R.value?(r(),f(`div`,xt,[v(n(T),{severity:`warn`,closable:!1,class:`parent-edit__warning`},{default:e(()=>[re(g(n(k)(`variablesTable.editParentWarning`,{key:R.value.key,env:R.value.environmentName})),1)]),_:1}),d(`div`,St,[d(`label`,Ct,g(n(k)(`common.value`)),1),v(n(y),{id:`parent-edit-value`,modelValue:R.value.value,"onUpdate:modelValue":a[6]||=e=>R.value.value=e,class:`w-full`,disabled:z.value},null,8,[`modelValue`,`disabled`])]),d(`div`,wt,[d(`div`,Tt,[a[15]||=d(`i`,{class:`pi pi-sitemap`},null,-1),re(` `+g(n(k)(`variablesTable.editParentImpact`)),1)]),ke.value?(r(),f(`div`,Et,[a[16]||=d(`i`,{class:`pi pi-spin pi-spinner`},null,-1),d(`span`,null,g(n(k)(`variablesTable.editParentLoading`)),1)])):(r(),f(S,{key:1},[je.value.length?(r(),f(`ul`,Dt,[(r(!0),f(S,null,te(je.value,(e,t)=>(r(),f(`li`,{key:t},[v(n(p),{severity:e.kind===`references`?`info`:`secondary`,value:e.kind===`references`?e.viaKey:e.kind===`inherits`?n(k)(`variablesTable.editParentInherits`):n(k)(`variablesTable.editParentDefines`)},null,8,[`severity`,`value`]),d(`span`,Ot,g(e.environmentName),1),e.serviceName?(r(),f(`span`,kt,g(e.serviceName),1)):x(``,!0)]))),128))])):(r(),f(`div`,At,g(n(k)(`variablesTable.editParentNoUsage`)),1))],64))])])):x(``,!0)]),_:1},8,[`visible`,`header`])],64))}}),[[`__scopeId`,`data-v-5af35db0`]]);export{ue as n,Pt as t};
@@ -1 +1 @@
1
- import{$i as e,$r as t,Da as n,Ii as r,Mi as i,Nt as a,Pn as o,Ri as s,Un as c,Yt as l,_n as u,ai as d,ci as f,en as p,fi as m,hi as h,oa as g,oi as _,pi as v,si as y,ti as b,va as x,xn as S}from"./index-y5bguEQB.js";import{t as C}from"./message-CSxReshg.js";import{t as w}from"./password-ZOY0bqV1.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=u(h({__name:`VaultMigrationPage`,setup(u){let h=o(),{t:F}=c(),I=x(null),L=x(``),R=x(!1),z=x(``),B=x(null);i(async()=>{try{I.value=(await l()).legacyVault??null,I.value||await h.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 p(L.value),L.value=``}catch(e){z.value=a(e)??F(`vaultMigration.failed`)}finally{R.value=!1}}}async function H(){await h.replace({name:`launch-project`})}return(i,a)=>(r(),f(`div`,T,[d(`div`,E,[d(`h1`,D,g(n(F)(`vaultMigration.title`)),1),B.value?(r(),f(b,{key:1},[v(n(C),{severity:`success`,closable:!1,"data-testid":`vault-migration-done`},{default:e(()=>[m(g(n(F)(`vaultMigration.done`)),1)]),_:1}),d(`ul`,j,[(r(!0),f(b,null,s(B.value.rekeyed,e=>(r(),f(`li`,{key:e.file},g(n(F)(`vaultMigration.rekeyed`,{file:e.file,count:e.values})),1))),128)),B.value.moved.length?(r(),f(`li`,M,g(n(F)(`vaultMigration.moved`,{files:B.value.moved.join(`, `)})),1)):y(``,!0),B.value.skipped.length?(r(),f(`li`,N,g(n(F)(`vaultMigration.skipped`,{files:B.value.skipped.join(`, `)})),1)):y(``,!0)]),d(`p`,P,[m(g(n(F)(`vaultMigration.backupKept`))+` `,1),d(`code`,null,g(B.value.backupDir),1)]),v(n(S),{"data-testid":`vault-migration-continue`,label:n(F)(`vaultMigration.continue`),onClick:H},null,8,[`label`])],64)):(r(),f(b,{key:0},[d(`p`,O,g(n(F)(`vaultMigration.lead`)),1),d(`p`,k,[d(`code`,null,g(I.value),1)]),v(n(C),{severity:`info`,closable:!1,class:`migration-note`},{default:e(()=>[m(g(n(F)(`vaultMigration.backupNote`)),1)]),_:1}),d(`form`,{class:`migration-form`,onSubmit:t(V,[`prevent`])},[d(`label`,A,g(n(F)(`vaultMigration.oldPasswordLabel`)),1),v(n(w),{id:`legacyMasterPassword`,modelValue:L.value,"onUpdate:modelValue":a[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(),_(n(C),{key:0,severity:`error`,closable:!1,"data-testid":`vault-migration-error`},{default:e(()=>[m(g(z.value),1)]),_:1})):y(``,!0),v(n(S),{type:`submit`,"data-testid":`vault-migration-submit`,label:R.value?n(F)(`vaultMigration.migrating`):n(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{$i as e,$r as t,Da as n,Ii as r,Mi as i,Nt as a,Pn as o,Ri as s,Un as c,Yt as l,_n as u,ai as d,ci as f,en as p,fi as m,hi as h,oa as g,oi as _,pi as v,si as y,ti as b,va as x,xn as S}from"./index-nY5cynKj.js";import{t as C}from"./message-DnHiYCym.js";import{t as w}from"./password-DEuFV3TX.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=u(h({__name:`VaultMigrationPage`,setup(u){let h=o(),{t:F}=c(),I=x(null),L=x(``),R=x(!1),z=x(``),B=x(null);i(async()=>{try{I.value=(await l()).legacyVault??null,I.value||await h.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 p(L.value),L.value=``}catch(e){z.value=a(e)??F(`vaultMigration.failed`)}finally{R.value=!1}}}async function H(){await h.replace({name:`launch-project`})}return(i,a)=>(r(),f(`div`,T,[d(`div`,E,[d(`h1`,D,g(n(F)(`vaultMigration.title`)),1),B.value?(r(),f(b,{key:1},[v(n(C),{severity:`success`,closable:!1,"data-testid":`vault-migration-done`},{default:e(()=>[m(g(n(F)(`vaultMigration.done`)),1)]),_:1}),d(`ul`,j,[(r(!0),f(b,null,s(B.value.rekeyed,e=>(r(),f(`li`,{key:e.file},g(n(F)(`vaultMigration.rekeyed`,{file:e.file,count:e.values})),1))),128)),B.value.moved.length?(r(),f(`li`,M,g(n(F)(`vaultMigration.moved`,{files:B.value.moved.join(`, `)})),1)):y(``,!0),B.value.skipped.length?(r(),f(`li`,N,g(n(F)(`vaultMigration.skipped`,{files:B.value.skipped.join(`, `)})),1)):y(``,!0)]),d(`p`,P,[m(g(n(F)(`vaultMigration.backupKept`))+` `,1),d(`code`,null,g(B.value.backupDir),1)]),v(n(S),{"data-testid":`vault-migration-continue`,label:n(F)(`vaultMigration.continue`),onClick:H},null,8,[`label`])],64)):(r(),f(b,{key:0},[d(`p`,O,g(n(F)(`vaultMigration.lead`)),1),d(`p`,k,[d(`code`,null,g(I.value),1)]),v(n(C),{severity:`info`,closable:!1,class:`migration-note`},{default:e(()=>[m(g(n(F)(`vaultMigration.backupNote`)),1)]),_:1}),d(`form`,{class:`migration-form`,onSubmit:t(V,[`prevent`])},[d(`label`,A,g(n(F)(`vaultMigration.oldPasswordLabel`)),1),v(n(w),{id:`legacyMasterPassword`,modelValue:L.value,"onUpdate:modelValue":a[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(),_(n(C),{key:0,severity:`error`,closable:!1,"data-testid":`vault-migration-error`},{default:e(()=>[m(g(z.value),1)]),_:1})):y(``,!0),v(n(S),{type:`submit`,"data-testid":`vault-migration-submit`,label:R.value?n(F)(`vaultMigration.migrating`):n(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{Ii as e,Mi as t,_n as n,ci as r,hi as i,oa as a,qt as o,si as s,va as c}from"./index-y5bguEQB.js";var l={key:0,class:`version-badge`,"data-testid":`version-badge`},u=n(i({__name:`VersionBadge`,setup(n){let i=c(``);return t(()=>{o.health.check.query().then(e=>{i.value=e.version}).catch(()=>{})}),(t,n)=>i.value?(e(),r(`span`,l,`v`+a(i.value),1)):s(``,!0)}}),[[`__scopeId`,`data-v-61dd6b89`]]);export{u as t};
1
+ import{Ii as e,Mi as t,_n as n,ci as r,hi as i,oa as a,qt as o,si as s,va as c}from"./index-nY5cynKj.js";var l={key:0,class:`version-badge`,"data-testid":`version-badge`},u=n(i({__name:`VersionBadge`,setup(n){let i=c(``);return t(()=>{o.health.check.query().then(e=>{i.value=e.version}).catch(()=>{})}),(t,n)=>i.value?(e(),r(`span`,l,`v`+a(i.value),1)):s(``,!0)}}),[[`__scopeId`,`data-v-61dd6b89`]]);export{u as t};
@@ -0,0 +1 @@
1
+ import{Ii as e,hi as t,oi as n}from"./index-nY5cynKj.js";import"./src-D3B9QT3f.js";import"./w3c-keyname-2TLn3EjF.js";import{t as r}from"./WikiView-B4FOcZxi.js";var i=t({__name:`WikiPage`,setup(t){return(t,i)=>(e(),n(r,{scope:`global`}))}});export{i as default};
@@ -1 +1 @@
1
- import{$i as e,$r as t,Bi as n,Da as r,Ii as i,Mi as a,Oi as o,Pn as s,Qr as c,Ri as l,Rn as ee,Yi as u,_n as d,ai as f,ci as p,fi as m,hi as h,ii as g,oa as _,oi as te,pi as v,pn as y,qt as b,ra as x,si as S,ti as C,va as w,xn as T,yn as ne}from"./index-y5bguEQB.js";import{t as re}from"./src-BPSr9dU2.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=h({__name:`FsNode`,props:{entry:{},selectedPath:{},expanded:{},editable:{type:Boolean}},emits:[`toggle`,`select`,`create-child`,`rename`,`delete`],setup(e,{emit:r}){let a=e,o=r,s=g(()=>a.entry.type===`dir`&&a.expanded.has(a.entry.path)),c=g(()=>a.entry.type===`file`&&a.selectedPath===a.entry.path);return(r,a)=>{let ee=n(`FsNode`,!0);return i(),p(`div`,E,[f(`div`,{class:x([`fs-node__row`,{"fs-node__row--selected":c.value}])},[e.entry.type===`dir`?(i(),p(`button`,{key:0,class:`fs-node__main`,title:e.entry.path,onClick:a[0]||=t=>o(`toggle`,e.entry.path)},[f(`i`,{class:x(`pi ${s.value?`pi-chevron-down`:`pi-chevron-right`} fs-node__caret`)},null,2),f(`i`,{class:x(`pi ${s.value?`pi-folder-open`:`pi-folder`} fs-node__icon fs-node__icon--folder`)},null,2),f(`span`,O,_(e.entry.name),1)],8,D)):(i(),p(`button`,{key:1,class:`fs-node__main`,title:e.entry.path,onClick:a[1]||=t=>o(`select`,e.entry.path)},[a[11]||=f(`span`,{class:`fs-node__caret-spacer`},null,-1),a[12]||=f(`i`,{class:`pi pi-file fs-node__icon`},null,-1),f(`span`,A,_(e.entry.name),1)],8,k)),e.editable?(i(),p(`div`,j,[e.entry.type===`dir`?(i(),p(`button`,{key:0,class:`fs-node__action`,title:`Nouveau fichier`,onClick:a[2]||=t(t=>o(`create-child`,e.entry.path,`file`),[`stop`])},[...a[13]||=[f(`i`,{class:`pi pi-file-plus`},null,-1)]])):S(``,!0),e.entry.type===`dir`?(i(),p(`button`,{key:1,class:`fs-node__action`,title:`Nouveau dossier`,onClick:a[3]||=t(t=>o(`create-child`,e.entry.path,`dir`),[`stop`])},[...a[14]||=[f(`i`,{class:`pi pi-folder-plus`},null,-1)]])):S(``,!0),f(`button`,{class:`fs-node__action`,title:`Renommer`,onClick:a[4]||=t(t=>o(`rename`,e.entry.path,e.entry.type===`dir`),[`stop`])},[...a[15]||=[f(`i`,{class:`pi pi-pencil`},null,-1)]]),f(`button`,{class:`fs-node__action fs-node__action--danger`,title:`Supprimer`,onClick:a[5]||=t(t=>o(`delete`,e.entry.path,e.entry.type===`dir`),[`stop`])},[...a[16]||=[f(`i`,{class:`pi pi-trash`},null,-1)]])])):S(``,!0)],2),e.entry.type===`dir`&&s.value?(i(),p(`ul`,M,[(i(!0),p(C,null,l(e.entry.children,t=>(i(),p(`li`,{key:t.path},[v(ee,{entry:t,"selected-path":e.selectedPath,expanded:e.expanded,editable:e.editable,onToggle:a[6]||=e=>o(`toggle`,e),onSelect:a[7]||=e=>o(`select`,e),onCreateChild:a[8]||=(e,t)=>o(`create-child`,e,t),onRename:a[9]||=(e,t)=>o(`rename`,e,t),onDelete:a[10]||=(e,t)=>o(`delete`,e,t)},null,8,[`entry`,`selected-path`,`expanded`,`editable`])]))),128))])):S(``,!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=d(h({__name:`WikiView`,props:{scope:{}},setup(n){let d=s(),h=n,E=ee(),D=w(``),O=w([]),k=w(!1),A=w(null),j=w(!1),M=w(null),N=w(!1),P=w(new Set),F=w(null),I=w(``),L=w(!1),R=w(!1),z=w(!1),B=null,V=``,Fe=w(null),H=w(!1),U=w(``),W=w({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=g(()=>{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=g(()=>{let e=U.value.trim().toLowerCase();return Re.value.filter(e=>e.path!==F.value).filter(t=>!e||t.path.toLowerCase().includes(e))});async function K(){k.value=!0,A.value=null,j.value=!1,M.value=null;try{let e=await b.wiki.list.query({scope:h.scope});D.value=e.root,O.value=e.entries}catch(e){let t=e.message;if(/Aucun dossier de docs|globalDocsPath|docsPath|Aucun cwd/i.test(t))j.value=!0;else{let e=t.match(/Dossier introuvable:\s*(.+)$/);e?M.value=e[1].trim():A.value=t}}finally{k.value=!1}}async function Be(){N.value=!0;try{await b.wiki.ensureRoot.mutate({scope:h.scope}),M.value=null,await K()}catch(e){A.value=e.message}finally{N.value=!1}}let q=g(()=>h.scope===`global`),Ve=g(()=>h.scope.startsWith(`service:`)),He=g(()=>Ve.value?h.scope.slice(8):null);function Ue(){q.value?d.push({name:`settings`,query:{section:`general`}}):He.value&&d.push(`/services/${He.value}/config?configTab=general`)}function We(e){P.value.has(e)?P.value.delete(e):P.value.add(e),P.value=new Set(P.value)}async function J(e){X(),z.value=!1,F.value=e,L.value=!0,I.value=``;try{let t=await b.wiki.read.query({scope:h.scope,path:e});I.value=t.content,V=t.content;let n=e.split(`/`);for(n.pop();n.length;)P.value.add(n.join(`/`)),n.pop();P.value=new Set(P.value)}catch(e){A.value=e.message}finally{L.value=!1}}function Ge(){B&&clearTimeout(B),B=setTimeout(()=>{Y()},800)}async function Y(){if(!F.value||I.value===V)return;let e=F.value,t=I.value;R.value=!0;try{await b.wiki.write.mutate({scope:h.scope,path:e,content:t}),V=t}catch(e){A.value=e.message}finally{R.value=!1}}function X(){B&&(clearTimeout(B),B=null,Y())}u(I,()=>{F.value&&z.value&&Ge()});function Ke(){z.value?(X(),z.value=!1):z.value=!0}async function Z(e,t){let n=await Ie({title:t===`file`?`Nouveau fichier`:`Nouveau dossier`,label:t===`file`?`Nom du fichier (sans extension)`:`Nom du dossier`,initialValue:t===`file`?`nouveau`:`nouveau-dossier`});if(!n)return;let r=n.trim().replace(/[^A-Za-z0-9_./-]/g,`-`);if(!r)return;let i=t===`file`&&!/\.(md|markdown)$/i.test(r)?`${r}.md`:r,a=e?`${e}/${i}`:i;try{t===`file`?(await b.wiki.createFile.mutate({scope:h.scope,path:a}),await K(),J(a)):(await b.wiki.createDir.mutate({scope:h.scope,path:a}),P.value.add(a),P.value=new Set(P.value),await K())}catch(e){A.value=e.message}}async function qe(e,t){let n=e.split(`/`),r=n[n.length-1],i=await Ie({title:`Renommer`,label:`Nouveau nom`,initialValue:r});if(!i||i===r)return;let a=i.trim().replace(/[^A-Za-z0-9_./-]/g,`-`);if(!a)return;let o=!t&&!/\.(md|markdown)$/i.test(a)?`${a}.md`:a;n[n.length-1]=o;let s=n.join(`/`);try{await b.wiki.rename.mutate({scope:h.scope,fromPath:e,toPath:s}),F.value===e&&(F.value=s),await K()}catch(e){A.value=e.message}}function Je(e,t){E.require({message:`Supprimer "${e}" ${t?`(et tout son contenu)`:``} ?`,header:`Confirmation`,icon:`pi pi-exclamation-triangle`,rejectProps:{label:`Annuler`,severity:`secondary`,outlined:!0},acceptProps:{label:`Supprimer`,severity:`danger`},accept:async()=>{try{await b.wiki.delete.mutate({scope:h.scope,path:e}),(F.value===e||t&&F.value?.startsWith(e+`/`))&&(F.value=null,I.value=``),await K()}catch(e){A.value=e.message}}})}function Ye(){U.value=``,H.value=!0}function Xe(e){let t=Ze(F.value??``,e.path);Fe.value?.insertWikiLink?.(t,e.name.replace(/\.(md|markdown)$/i,``)),H.value=!1}function Ze(e,t){let n=e.split(`/`);n.pop();let r=t.split(`/`),i=0;for(;i<n.length&&i<r.length-1&&n[i]===r[i];)i++;let a=n.length-i,o=r.slice(i);return(a===0?`./`:`../`.repeat(a))+o.join(`/`)}function Qe(e){if(e.startsWith(`http://`)||e.startsWith(`https://`)||e.startsWith(`mailto:`)){window.open(e,`_blank`,`noopener,noreferrer`);return}if(e.startsWith(`#`)||!/\.(md|markdown)(#|\?|$)/i.test(e))return;let t=e.split(`#`)[0].split(`?`)[0],n=$e(F.value??``,t);Re.value.some(e=>e.path===n)?J(n):A.value=`Fichier introuvable: ${n}`}function $e(e,t){if(t.startsWith(`/`))return t.replace(/^\/+/,``);let n=e.includes(`/`)?e.slice(0,e.lastIndexOf(`/`)).split(`/`).filter(Boolean):[];for(let e of t.split(`/`))e===``||e===`.`||(e===`..`?n.pop():n.push(e));return n.join(`/`)}function Q(){F.value&&J(F.value)}function $(){document.visibilityState===`visible`&&Q()}return u(()=>h.scope,()=>{F.value=null,I.value=``,O.value=[],K()}),a(()=>{K(),window.addEventListener(`focus`,Q),document.addEventListener(`visibilitychange`,$)}),o(()=>{X(),window.removeEventListener(`focus`,Q),document.removeEventListener(`visibilitychange`,$)}),(n,a)=>M.value?(i(),p(`div`,ae,[a[8]||=f(`i`,{class:`pi pi-folder-open wiki__not-configured-icon`},null,-1),a[9]||=f(`h2`,null,`Le dossier de documentation n'existe pas encore`,-1),f(`p`,null,[a[7]||=m(` Chemin attendu : `,-1),f(`code`,null,_(M.value),1)]),v(r(T),{icon:`pi pi-plus`,label:`Créer le dossier`,loading:N.value,onClick:Be},null,8,[`loading`])])):j.value?(i(),p(`div`,oe,[a[11]||=f(`i`,{class:`pi pi-cog wiki__not-configured-icon`},null,-1),f(`h2`,null,_(q.value?`Wiki global non configuré`:`Documentation du service non configurée`),1),q.value?(i(),p(`p`,se,` Le wiki global a besoin d'un chemin absolu vers un dossier sur disque pour fonctionner. `)):(i(),p(`p`,ce,[...a[10]||=[m(` Ce service n'a pas de `,-1),f(`code`,null,`cwd`,-1),m(` ni de `,-1),f(`code`,null,`docsPath`,-1),m(` renseigné. `,-1)]])),v(r(T),{icon:`pi pi-arrow-right`,label:q.value?`Configurer le wiki global`:`Configurer le service`,onClick:Ue},null,8,[`label`])])):(i(),p(`div`,le,[f(`aside`,ue,[f(`div`,de,[f(`span`,{class:`wiki__sidebar-title`,title:D.value},_(D.value||`Pages`),9,fe),f(`div`,pe,[v(r(T),{icon:`pi pi-folder-plus`,size:`small`,text:``,rounded:``,title:`Nouveau dossier racine`,onClick:a[0]||=e=>Z(``,`dir`)}),v(r(T),{icon:`pi pi-file-plus`,size:`small`,text:``,rounded:``,title:`Nouveau fichier racine`,onClick:a[1]||=e=>Z(``,`file`)}),v(r(T),{icon:`pi pi-refresh`,size:`small`,text:``,rounded:``,title:`Rafraîchir`,onClick:K})])]),k.value?(i(),p(`div`,me,`Chargement…`)):A.value?(i(),p(`div`,he,_(A.value),1)):O.value.length===0?(i(),p(`div`,ge,` Aucun fichier. Utilisez les boutons en haut pour créer un fichier ou un dossier. `)):(i(),p(`ul`,_e,[(i(!0),p(C,null,l(O.value,e=>(i(),p(`li`,{key:e.path},[v(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))]))]),f(`section`,ve,[F.value?(i(),p(C,{key:0},[f(`div`,ye,[a[16]||=f(`i`,{class:`pi pi-file wiki__title-icon`},null,-1),f(`span`,be,_(F.value),1),z.value?(i(),p(`span`,xe,[R.value?(i(),p(`span`,Se,[...a[12]||=[f(`i`,{class:`pi pi-spin pi-spinner`},null,-1),m(` Sauvegarde…`,-1)]])):I.value===r(V)?(i(),p(`span`,we,[...a[14]||=[f(`i`,{class:`pi pi-check`},null,-1),m(` Sauvegardé`,-1)]])):(i(),p(`span`,Ce,[...a[13]||=[f(`i`,{class:`pi pi-circle-fill wiki__status-pending`},null,-1),m(` Modifié`,-1)]]))])):(i(),p(`span`,Te,[...a[15]||=[f(`i`,{class:`pi pi-eye`},null,-1),m(` Lecture seule `,-1)]])),v(r(T),{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`]),v(r(T),{icon:`pi pi-refresh`,size:`small`,text:``,rounded:``,title:`Recharger depuis le disque`,loading:L.value,onClick:Q},null,8,[`loading`])]),z.value?(i(),p(`div`,Ee,[v(r(T),{icon:`pi pi-link`,label:`Lier un fichier`,size:`small`,text:``,onClick:Ye})])):S(``,!0),L.value?(i(),p(`div`,De,`Chargement du fichier…`)):(i(),te(r(re),{key:2,ref_key:`editorRef`,ref:Fe,modelValue:I.value,"onUpdate:modelValue":a[2]||=e=>I.value=e,markdown:``,editable:z.value,class:x([`wiki__editor`,{"wiki__editor--readonly":!z.value}]),placeholder:`Écrivez le contenu de la page…`,onLinkClick:Qe},null,8,[`modelValue`,`editable`,`class`]))],64)):(i(),p(`div`,Oe,[...a[17]||=[f(`i`,{class:`pi pi-book wiki__placeholder-icon`},null,-1),f(`p`,null,`Sélectionnez un fichier ou créez-en un nouveau.`,-1)]]))]),v(r(ne),{visible:W.value.open,"onUpdate:visible":a[4]||=e=>W.value.open=e,header:W.value.title,modal:``,style:{width:`420px`},"close-on-escape":!0,onHide:G},{footer:e(()=>[v(r(T),{label:`Annuler`,severity:`secondary`,outlined:``,size:`small`,onClick:G}),v(r(T),{label:`OK`,size:`small`,disabled:!W.value.value.trim(),onClick:Le},null,8,[`disabled`])]),default:e(()=>[f(`div`,ke,[f(`label`,Ae,_(W.value.label),1),v(r(y),{id:`wiki-prompt-input`,modelValue:W.value.value,"onUpdate:modelValue":a[3]||=e=>W.value.value=e,class:`wiki__prompt-input`,placeholder:W.value.placeholder,autofocus:``,onKeydown:[c(t(Le,[`prevent`]),[`enter`]),c(G,[`escape`])]},null,8,[`modelValue`,`placeholder`,`onKeydown`])])]),_:1},8,[`visible`,`header`]),v(r(ne),{visible:H.value,"onUpdate:visible":a[6]||=e=>H.value=e,header:`Insérer un lien vers un fichier`,modal:``,style:{width:`500px`}},{default:e(()=>[v(r(y),{modelValue:U.value,"onUpdate:modelValue":a[5]||=e=>U.value=e,placeholder:`Rechercher un fichier…`,class:`wiki__link-search`,autofocus:``},null,8,[`modelValue`]),f(`div`,je,[(i(!0),p(C,null,l(ze.value,e=>(i(),p(`button`,{key:e.path,class:`wiki__link-item`,onClick:t=>Xe(e)},[a[18]||=f(`i`,{class:`pi pi-file`},null,-1),f(`span`,Ne,_(e.path),1)],8,Me))),128)),ze.value.length===0?(i(),p(`div`,Pe,` Aucun fichier disponible. `)):S(``,!0)])]),_:1},8,[`visible`])]))}}),[[`__scopeId`,`data-v-10f9637d`]]);export{N as t};
1
+ import{$i as e,$r as t,Bi as n,Da as r,Ii as i,Mi as a,Oi as o,Pn as s,Qr as c,Ri as l,Rn as ee,Yi as u,_n as d,ai as f,ci as p,fi as m,hi as h,ii as g,oa as _,oi as te,pi as v,pn as y,qt as b,ra as x,si as S,ti as C,va as w,xn as T,yn as ne}from"./index-nY5cynKj.js";import{t as re}from"./src-D3B9QT3f.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=h({__name:`FsNode`,props:{entry:{},selectedPath:{},expanded:{},editable:{type:Boolean}},emits:[`toggle`,`select`,`create-child`,`rename`,`delete`],setup(e,{emit:r}){let a=e,o=r,s=g(()=>a.entry.type===`dir`&&a.expanded.has(a.entry.path)),c=g(()=>a.entry.type===`file`&&a.selectedPath===a.entry.path);return(r,a)=>{let ee=n(`FsNode`,!0);return i(),p(`div`,E,[f(`div`,{class:x([`fs-node__row`,{"fs-node__row--selected":c.value}])},[e.entry.type===`dir`?(i(),p(`button`,{key:0,class:`fs-node__main`,title:e.entry.path,onClick:a[0]||=t=>o(`toggle`,e.entry.path)},[f(`i`,{class:x(`pi ${s.value?`pi-chevron-down`:`pi-chevron-right`} fs-node__caret`)},null,2),f(`i`,{class:x(`pi ${s.value?`pi-folder-open`:`pi-folder`} fs-node__icon fs-node__icon--folder`)},null,2),f(`span`,O,_(e.entry.name),1)],8,D)):(i(),p(`button`,{key:1,class:`fs-node__main`,title:e.entry.path,onClick:a[1]||=t=>o(`select`,e.entry.path)},[a[11]||=f(`span`,{class:`fs-node__caret-spacer`},null,-1),a[12]||=f(`i`,{class:`pi pi-file fs-node__icon`},null,-1),f(`span`,A,_(e.entry.name),1)],8,k)),e.editable?(i(),p(`div`,j,[e.entry.type===`dir`?(i(),p(`button`,{key:0,class:`fs-node__action`,title:`Nouveau fichier`,onClick:a[2]||=t(t=>o(`create-child`,e.entry.path,`file`),[`stop`])},[...a[13]||=[f(`i`,{class:`pi pi-file-plus`},null,-1)]])):S(``,!0),e.entry.type===`dir`?(i(),p(`button`,{key:1,class:`fs-node__action`,title:`Nouveau dossier`,onClick:a[3]||=t(t=>o(`create-child`,e.entry.path,`dir`),[`stop`])},[...a[14]||=[f(`i`,{class:`pi pi-folder-plus`},null,-1)]])):S(``,!0),f(`button`,{class:`fs-node__action`,title:`Renommer`,onClick:a[4]||=t(t=>o(`rename`,e.entry.path,e.entry.type===`dir`),[`stop`])},[...a[15]||=[f(`i`,{class:`pi pi-pencil`},null,-1)]]),f(`button`,{class:`fs-node__action fs-node__action--danger`,title:`Supprimer`,onClick:a[5]||=t(t=>o(`delete`,e.entry.path,e.entry.type===`dir`),[`stop`])},[...a[16]||=[f(`i`,{class:`pi pi-trash`},null,-1)]])])):S(``,!0)],2),e.entry.type===`dir`&&s.value?(i(),p(`ul`,M,[(i(!0),p(C,null,l(e.entry.children,t=>(i(),p(`li`,{key:t.path},[v(ee,{entry:t,"selected-path":e.selectedPath,expanded:e.expanded,editable:e.editable,onToggle:a[6]||=e=>o(`toggle`,e),onSelect:a[7]||=e=>o(`select`,e),onCreateChild:a[8]||=(e,t)=>o(`create-child`,e,t),onRename:a[9]||=(e,t)=>o(`rename`,e,t),onDelete:a[10]||=(e,t)=>o(`delete`,e,t)},null,8,[`entry`,`selected-path`,`expanded`,`editable`])]))),128))])):S(``,!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=d(h({__name:`WikiView`,props:{scope:{}},setup(n){let d=s(),h=n,E=ee(),D=w(``),O=w([]),k=w(!1),A=w(null),j=w(!1),M=w(null),N=w(!1),P=w(new Set),F=w(null),I=w(``),L=w(!1),R=w(!1),z=w(!1),B=null,V=``,Fe=w(null),H=w(!1),U=w(``),W=w({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=g(()=>{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=g(()=>{let e=U.value.trim().toLowerCase();return Re.value.filter(e=>e.path!==F.value).filter(t=>!e||t.path.toLowerCase().includes(e))});async function K(){k.value=!0,A.value=null,j.value=!1,M.value=null;try{let e=await b.wiki.list.query({scope:h.scope});D.value=e.root,O.value=e.entries}catch(e){let t=e.message;if(/Aucun dossier de docs|globalDocsPath|docsPath|Aucun cwd/i.test(t))j.value=!0;else{let e=t.match(/Dossier introuvable:\s*(.+)$/);e?M.value=e[1].trim():A.value=t}}finally{k.value=!1}}async function Be(){N.value=!0;try{await b.wiki.ensureRoot.mutate({scope:h.scope}),M.value=null,await K()}catch(e){A.value=e.message}finally{N.value=!1}}let q=g(()=>h.scope===`global`),Ve=g(()=>h.scope.startsWith(`service:`)),He=g(()=>Ve.value?h.scope.slice(8):null);function Ue(){q.value?d.push({name:`settings`,query:{section:`general`}}):He.value&&d.push(`/services/${He.value}/config?configTab=general`)}function We(e){P.value.has(e)?P.value.delete(e):P.value.add(e),P.value=new Set(P.value)}async function J(e){X(),z.value=!1,F.value=e,L.value=!0,I.value=``;try{let t=await b.wiki.read.query({scope:h.scope,path:e});I.value=t.content,V=t.content;let n=e.split(`/`);for(n.pop();n.length;)P.value.add(n.join(`/`)),n.pop();P.value=new Set(P.value)}catch(e){A.value=e.message}finally{L.value=!1}}function Ge(){B&&clearTimeout(B),B=setTimeout(()=>{Y()},800)}async function Y(){if(!F.value||I.value===V)return;let e=F.value,t=I.value;R.value=!0;try{await b.wiki.write.mutate({scope:h.scope,path:e,content:t}),V=t}catch(e){A.value=e.message}finally{R.value=!1}}function X(){B&&(clearTimeout(B),B=null,Y())}u(I,()=>{F.value&&z.value&&Ge()});function Ke(){z.value?(X(),z.value=!1):z.value=!0}async function Z(e,t){let n=await Ie({title:t===`file`?`Nouveau fichier`:`Nouveau dossier`,label:t===`file`?`Nom du fichier (sans extension)`:`Nom du dossier`,initialValue:t===`file`?`nouveau`:`nouveau-dossier`});if(!n)return;let r=n.trim().replace(/[^A-Za-z0-9_./-]/g,`-`);if(!r)return;let i=t===`file`&&!/\.(md|markdown)$/i.test(r)?`${r}.md`:r,a=e?`${e}/${i}`:i;try{t===`file`?(await b.wiki.createFile.mutate({scope:h.scope,path:a}),await K(),J(a)):(await b.wiki.createDir.mutate({scope:h.scope,path:a}),P.value.add(a),P.value=new Set(P.value),await K())}catch(e){A.value=e.message}}async function qe(e,t){let n=e.split(`/`),r=n[n.length-1],i=await Ie({title:`Renommer`,label:`Nouveau nom`,initialValue:r});if(!i||i===r)return;let a=i.trim().replace(/[^A-Za-z0-9_./-]/g,`-`);if(!a)return;let o=!t&&!/\.(md|markdown)$/i.test(a)?`${a}.md`:a;n[n.length-1]=o;let s=n.join(`/`);try{await b.wiki.rename.mutate({scope:h.scope,fromPath:e,toPath:s}),F.value===e&&(F.value=s),await K()}catch(e){A.value=e.message}}function Je(e,t){E.require({message:`Supprimer "${e}" ${t?`(et tout son contenu)`:``} ?`,header:`Confirmation`,icon:`pi pi-exclamation-triangle`,rejectProps:{label:`Annuler`,severity:`secondary`,outlined:!0},acceptProps:{label:`Supprimer`,severity:`danger`},accept:async()=>{try{await b.wiki.delete.mutate({scope:h.scope,path:e}),(F.value===e||t&&F.value?.startsWith(e+`/`))&&(F.value=null,I.value=``),await K()}catch(e){A.value=e.message}}})}function Ye(){U.value=``,H.value=!0}function Xe(e){let t=Ze(F.value??``,e.path);Fe.value?.insertWikiLink?.(t,e.name.replace(/\.(md|markdown)$/i,``)),H.value=!1}function Ze(e,t){let n=e.split(`/`);n.pop();let r=t.split(`/`),i=0;for(;i<n.length&&i<r.length-1&&n[i]===r[i];)i++;let a=n.length-i,o=r.slice(i);return(a===0?`./`:`../`.repeat(a))+o.join(`/`)}function Qe(e){if(e.startsWith(`http://`)||e.startsWith(`https://`)||e.startsWith(`mailto:`)){window.open(e,`_blank`,`noopener,noreferrer`);return}if(e.startsWith(`#`)||!/\.(md|markdown)(#|\?|$)/i.test(e))return;let t=e.split(`#`)[0].split(`?`)[0],n=$e(F.value??``,t);Re.value.some(e=>e.path===n)?J(n):A.value=`Fichier introuvable: ${n}`}function $e(e,t){if(t.startsWith(`/`))return t.replace(/^\/+/,``);let n=e.includes(`/`)?e.slice(0,e.lastIndexOf(`/`)).split(`/`).filter(Boolean):[];for(let e of t.split(`/`))e===``||e===`.`||(e===`..`?n.pop():n.push(e));return n.join(`/`)}function Q(){F.value&&J(F.value)}function $(){document.visibilityState===`visible`&&Q()}return u(()=>h.scope,()=>{F.value=null,I.value=``,O.value=[],K()}),a(()=>{K(),window.addEventListener(`focus`,Q),document.addEventListener(`visibilitychange`,$)}),o(()=>{X(),window.removeEventListener(`focus`,Q),document.removeEventListener(`visibilitychange`,$)}),(n,a)=>M.value?(i(),p(`div`,ae,[a[8]||=f(`i`,{class:`pi pi-folder-open wiki__not-configured-icon`},null,-1),a[9]||=f(`h2`,null,`Le dossier de documentation n'existe pas encore`,-1),f(`p`,null,[a[7]||=m(` Chemin attendu : `,-1),f(`code`,null,_(M.value),1)]),v(r(T),{icon:`pi pi-plus`,label:`Créer le dossier`,loading:N.value,onClick:Be},null,8,[`loading`])])):j.value?(i(),p(`div`,oe,[a[11]||=f(`i`,{class:`pi pi-cog wiki__not-configured-icon`},null,-1),f(`h2`,null,_(q.value?`Wiki global non configuré`:`Documentation du service non configurée`),1),q.value?(i(),p(`p`,se,` Le wiki global a besoin d'un chemin absolu vers un dossier sur disque pour fonctionner. `)):(i(),p(`p`,ce,[...a[10]||=[m(` Ce service n'a pas de `,-1),f(`code`,null,`cwd`,-1),m(` ni de `,-1),f(`code`,null,`docsPath`,-1),m(` renseigné. `,-1)]])),v(r(T),{icon:`pi pi-arrow-right`,label:q.value?`Configurer le wiki global`:`Configurer le service`,onClick:Ue},null,8,[`label`])])):(i(),p(`div`,le,[f(`aside`,ue,[f(`div`,de,[f(`span`,{class:`wiki__sidebar-title`,title:D.value},_(D.value||`Pages`),9,fe),f(`div`,pe,[v(r(T),{icon:`pi pi-folder-plus`,size:`small`,text:``,rounded:``,title:`Nouveau dossier racine`,onClick:a[0]||=e=>Z(``,`dir`)}),v(r(T),{icon:`pi pi-file-plus`,size:`small`,text:``,rounded:``,title:`Nouveau fichier racine`,onClick:a[1]||=e=>Z(``,`file`)}),v(r(T),{icon:`pi pi-refresh`,size:`small`,text:``,rounded:``,title:`Rafraîchir`,onClick:K})])]),k.value?(i(),p(`div`,me,`Chargement…`)):A.value?(i(),p(`div`,he,_(A.value),1)):O.value.length===0?(i(),p(`div`,ge,` Aucun fichier. Utilisez les boutons en haut pour créer un fichier ou un dossier. `)):(i(),p(`ul`,_e,[(i(!0),p(C,null,l(O.value,e=>(i(),p(`li`,{key:e.path},[v(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))]))]),f(`section`,ve,[F.value?(i(),p(C,{key:0},[f(`div`,ye,[a[16]||=f(`i`,{class:`pi pi-file wiki__title-icon`},null,-1),f(`span`,be,_(F.value),1),z.value?(i(),p(`span`,xe,[R.value?(i(),p(`span`,Se,[...a[12]||=[f(`i`,{class:`pi pi-spin pi-spinner`},null,-1),m(` Sauvegarde…`,-1)]])):I.value===r(V)?(i(),p(`span`,we,[...a[14]||=[f(`i`,{class:`pi pi-check`},null,-1),m(` Sauvegardé`,-1)]])):(i(),p(`span`,Ce,[...a[13]||=[f(`i`,{class:`pi pi-circle-fill wiki__status-pending`},null,-1),m(` Modifié`,-1)]]))])):(i(),p(`span`,Te,[...a[15]||=[f(`i`,{class:`pi pi-eye`},null,-1),m(` Lecture seule `,-1)]])),v(r(T),{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`]),v(r(T),{icon:`pi pi-refresh`,size:`small`,text:``,rounded:``,title:`Recharger depuis le disque`,loading:L.value,onClick:Q},null,8,[`loading`])]),z.value?(i(),p(`div`,Ee,[v(r(T),{icon:`pi pi-link`,label:`Lier un fichier`,size:`small`,text:``,onClick:Ye})])):S(``,!0),L.value?(i(),p(`div`,De,`Chargement du fichier…`)):(i(),te(r(re),{key:2,ref_key:`editorRef`,ref:Fe,modelValue:I.value,"onUpdate:modelValue":a[2]||=e=>I.value=e,markdown:``,editable:z.value,class:x([`wiki__editor`,{"wiki__editor--readonly":!z.value}]),placeholder:`Écrivez le contenu de la page…`,onLinkClick:Qe},null,8,[`modelValue`,`editable`,`class`]))],64)):(i(),p(`div`,Oe,[...a[17]||=[f(`i`,{class:`pi pi-book wiki__placeholder-icon`},null,-1),f(`p`,null,`Sélectionnez un fichier ou créez-en un nouveau.`,-1)]]))]),v(r(ne),{visible:W.value.open,"onUpdate:visible":a[4]||=e=>W.value.open=e,header:W.value.title,modal:``,style:{width:`420px`},"close-on-escape":!0,onHide:G},{footer:e(()=>[v(r(T),{label:`Annuler`,severity:`secondary`,outlined:``,size:`small`,onClick:G}),v(r(T),{label:`OK`,size:`small`,disabled:!W.value.value.trim(),onClick:Le},null,8,[`disabled`])]),default:e(()=>[f(`div`,ke,[f(`label`,Ae,_(W.value.label),1),v(r(y),{id:`wiki-prompt-input`,modelValue:W.value.value,"onUpdate:modelValue":a[3]||=e=>W.value.value=e,class:`wiki__prompt-input`,placeholder:W.value.placeholder,autofocus:``,onKeydown:[c(t(Le,[`prevent`]),[`enter`]),c(G,[`escape`])]},null,8,[`modelValue`,`placeholder`,`onKeydown`])])]),_:1},8,[`visible`,`header`]),v(r(ne),{visible:H.value,"onUpdate:visible":a[6]||=e=>H.value=e,header:`Insérer un lien vers un fichier`,modal:``,style:{width:`500px`}},{default:e(()=>[v(r(y),{modelValue:U.value,"onUpdate:modelValue":a[5]||=e=>U.value=e,placeholder:`Rechercher un fichier…`,class:`wiki__link-search`,autofocus:``},null,8,[`modelValue`]),f(`div`,je,[(i(!0),p(C,null,l(ze.value,e=>(i(),p(`button`,{key:e.path,class:`wiki__link-item`,onClick:t=>Xe(e)},[a[18]||=f(`i`,{class:`pi pi-file`},null,-1),f(`span`,Ne,_(e.path),1)],8,Me))),128)),ze.value.length===0?(i(),p(`div`,Pe,` Aucun fichier disponible. `)):S(``,!0)])]),_:1},8,[`visible`])]))}}),[[`__scopeId`,`data-v-10f9637d`]]);export{N as t};