n8n-editor-ui 2.43.0 → 2.43.2

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 (271) hide show
  1. package/dist/assets/{AddDataTableModal--ZSsG_1_.js → AddDataTableModal-DsUoSrDS.js} +1 -1
  2. package/dist/assets/{AgentApprovalSelector-BNIYOsWg.js → AgentApprovalSelector-CDJwq4LJ.js} +1 -1
  3. package/dist/assets/{AgentBuilderView-DWidH0Vc.js → AgentBuilderView-BnxrMGZr.js} +1 -1
  4. package/dist/assets/{AgentBuilderView-CIPUC6V8.js → AgentBuilderView-Bq68drFB.js} +1 -1
  5. package/dist/assets/{AgentConfirmationModal-CKp1zkWi.js → AgentConfirmationModal-toYb5ZY7.js} +1 -1
  6. package/dist/assets/{AgentDescriptionModal-B3mACqje.js → AgentDescriptionModal-D091G-UN.js} +1 -1
  7. package/dist/assets/{AgentDuplicateModal-AVAzp-HQ.js → AgentDuplicateModal-CFW6cI7v.js} +1 -1
  8. package/dist/assets/{AgentEditorModal-BoVUtbsT.js → AgentEditorModal-GZZqZzMV.js} +1 -1
  9. package/dist/assets/{AgentJsonImportModal-DqynObKI.js → AgentJsonImportModal-Ce5hHEyK.js} +1 -1
  10. package/dist/assets/{AgentModal-BDJHHrPO.js → AgentModal-CAAx90zg.js} +1 -1
  11. package/dist/assets/{AgentModalMultiStep-Gg_izCfk.js → AgentModalMultiStep-De70rzxr.js} +1 -1
  12. package/dist/assets/{AgentPreviewButton-DaoocjLO.js → AgentPreviewButton-BNiOUiqN.js} +1 -1
  13. package/dist/assets/{AgentPreviewDock-DQgAmCSb.js → AgentPreviewDock-C1U-2pEe.js} +1 -1
  14. package/dist/assets/{AgentSessionTimelineView-rYLbRdOC.js → AgentSessionTimelineView-BG3CnF7X.js} +1 -1
  15. package/dist/assets/{AgentSessionsListView-qjir9pNf.js → AgentSessionsListView-BsVSAtg9.js} +1 -1
  16. package/dist/assets/{AgentSessionsListView-DrqwnuMj.js → AgentSessionsListView-C109CTeA.js} +1 -1
  17. package/dist/assets/{AgentSkillModal-PWeOFwtL.js → AgentSkillModal-D6QnUuHH.js} +1 -1
  18. package/dist/assets/{AgentSubAgentsModal-CAOTMeQ3.js → AgentSubAgentsModal-PnFBHABs.js} +1 -1
  19. package/dist/assets/{AgentTaskModal-BorwHKxw.js → AgentTaskModal-CIAtQ6iJ.js} +1 -1
  20. package/dist/assets/{AgentToolConfigForm-CD7Jr8XR.js → AgentToolConfigForm-BvvloWOM.js} +1 -1
  21. package/dist/assets/{AgentToolConfigModal-l7KOFz-m.js → AgentToolConfigModal-DcE8zrGN.js} +1 -1
  22. package/dist/assets/{AgentToolsConnectionModalWrapper-DtGyS7ie.js → AgentToolsConnectionModalWrapper-DXLm6y-c.js} +1 -1
  23. package/dist/assets/{AgentVectorStoresModal-Ba4JCEZR.js → AgentVectorStoresModal-DZKfiz5F.js} +1 -1
  24. package/dist/assets/{AgentView-DA31VsLa.js → AgentView-ltFid2WR.js} +1 -1
  25. package/dist/assets/{AgentsListView-BPAiU7uE.js → AgentsListView-CdyjYJyV.js} +1 -1
  26. package/dist/assets/{AnimatedSpinner-8js8Rn2-.js → AnimatedSpinner-fThGBMPb.js} +1 -1
  27. package/dist/assets/{AnnotationTagsDropdown.ee-DMKrMeSU.js → AnnotationTagsDropdown.ee-Djy0p6HI.js} +1 -1
  28. package/dist/assets/{AppSidebar-2KTfI_we.js → AppSidebar-DirKAZYp.js} +1 -1
  29. package/dist/assets/{AuthLayout-CSm_xc-3.js → AuthLayout-CdVldKjk.js} +1 -1
  30. package/dist/assets/{AuthView-CvEwxkL5.js → AuthView-DN_luWrv.js} +1 -1
  31. package/dist/assets/{BrowserUseSetupContent-DMpaLFEd.js → BrowserUseSetupContent-BYObjaz3.js} +1 -1
  32. package/dist/assets/{BrowserUseSetupModal-DVrY6A_c.js → BrowserUseSetupModal-GGrq34Ov.js} +1 -1
  33. package/dist/assets/{ChangePasswordModal-DJtGodMc.js → ChangePasswordModal-DgL9-Zug.js} +1 -1
  34. package/dist/assets/{ChangePasswordView-D4TxD7Jx.js → ChangePasswordView-3i8MsPn3.js} +1 -1
  35. package/dist/assets/{ChatAgentAvatar-DTDakSoL.js → ChatAgentAvatar-u1eWK_Dy.js} +1 -1
  36. package/dist/assets/{ChatFile-BbWg-xB4.js → ChatFile-DSYw0Sgz.js} +1 -1
  37. package/dist/assets/{ChatGreetings-CLkJaflO.js → ChatGreetings-D2tKyB7b.js} +1 -1
  38. package/dist/assets/{ChatHistoryDropdownTrigger-D9-gFgMy.js → ChatHistoryDropdownTrigger-Bxo8UJAq.js} +1 -1
  39. package/dist/assets/{ChatLayout-kPhpkDqE.js → ChatLayout-8bpq2nF-.js} +1 -1
  40. package/dist/assets/{ChatLayout-BlQwrial.js → ChatLayout-B5zjBw-m.js} +1 -1
  41. package/dist/assets/{ChatMarkdownChunk-Bevi-BA8.js → ChatMarkdownChunk-CPN2PT3Q.js} +1 -1
  42. package/dist/assets/{ChatPersonalAgentsView-CeC-Lte2.js → ChatPersonalAgentsView-CdlanU6N.js} +1 -1
  43. package/dist/assets/{ChatView-B-b4AT9j.js → ChatView-BbUy9BSx.js} +1 -1
  44. package/dist/assets/{ChatWorkflowAgentsView-ByJvgOnA.js → ChatWorkflowAgentsView-DfJQkOcF.js} +1 -1
  45. package/dist/assets/{CollectionParameter-Cr0EseLp.js → CollectionParameter-CmrFWw94.js} +1 -1
  46. package/dist/assets/{CompareCollectionView-BHZpmVrQ.js → CompareCollectionView-D0C_OzIJ.js} +1 -1
  47. package/dist/assets/{ComputerUseSetupContent-DkSxkHya.js → ComputerUseSetupContent-fdfS74L1.js} +1 -1
  48. package/dist/assets/{ComputerUseSetupModal-DJ-oCmIh.js → ComputerUseSetupModal-CzSqzZ1a.js} +1 -1
  49. package/dist/assets/{ConfirmEmailChangeView-DGgnuEe8.js → ConfirmEmailChangeView-DYGXOFfQ.js} +1 -1
  50. package/dist/assets/{ConfirmPasswordModal-h1-lW63q.js → ConfirmPasswordModal-Bj1QSiOZ.js} +1 -1
  51. package/dist/assets/{ConnectionTracker-Ca5z-MR1.js → ConnectionTracker-Cuf_hw--.js} +1 -1
  52. package/dist/assets/{CredentialSelectorModal-TAlEcSrF.js → CredentialSelectorModal-CoZu6lOG.js} +1 -1
  53. package/dist/assets/{CredentialsView-Dei6NSQ4.js → CredentialsView-DKyGnDbh.js} +1 -1
  54. package/dist/assets/{DataTableActions-DHvry1qx.js → DataTableActions-CQ4HHamb.js} +1 -1
  55. package/dist/assets/{DataTableDetailsView-Aay8ffth.js → DataTableDetailsView-BbhLCz85.js} +1 -1
  56. package/dist/assets/{DataTableTable-DohVIW1T.js → DataTableTable-CBf-W7dU.js} +1 -1
  57. package/dist/assets/{DataTableView-DORve-Ad.js → DataTableView-BTpr0swJ.js} +1 -1
  58. package/dist/assets/{DefaultLayout-DyhOwpm-.js → DefaultLayout-DRNbDi0M.js} +1 -1
  59. package/dist/assets/{DeleteInstanceRoleModal-RDsaGtYs.js → DeleteInstanceRoleModal-DioJ_SOw.js} +1 -1
  60. package/dist/assets/{DemoDiffView-Dp5NgTvZ.js → DemoDiffView-D_DANoeD.js} +1 -1
  61. package/dist/assets/{DemoLayout-BbcdPlkY.js → DemoLayout-32QkHX60.js} +1 -1
  62. package/dist/assets/{DependencyPill-DZsMOj1h.js → DependencyPill--ZPH7IQy.js} +1 -1
  63. package/dist/assets/{EmptySharedSectionActionBox-WHSZwtLl.js → EmptySharedSectionActionBox-DF3hemad.js} +1 -1
  64. package/dist/assets/{EntityNotFound--7h3tc9k.js → EntityNotFound-YERa6D2Q.js} +1 -1
  65. package/dist/assets/{EntityUnAuthorised-Cg2JN-UQ.js → EntityUnAuthorised-BWHmgBs7.js} +1 -1
  66. package/dist/assets/{ErrorView-C69hqa6F.js → ErrorView-CLSE5Gfp.js} +1 -1
  67. package/dist/assets/{EvalCollectionsListView-BT4cKQnk.js → EvalCollectionsListView-BmS9Xoy_.js} +1 -1
  68. package/dist/assets/{EvaluationsListSwitcher-BvW6Ojyw.js → EvaluationsListSwitcher-CbOP9YMC.js} +2 -2
  69. package/dist/assets/{EvaluationsPaywall-Bkx0ZiU6.js → EvaluationsPaywall-DLnxoCE6.js} +1 -1
  70. package/dist/assets/{EvaluationsRootView-BUpPlkpD.js → EvaluationsRootView-NWoT2DSK.js} +1 -1
  71. package/dist/assets/{ExecutionsTime-B_rDHGBZ.js → ExecutionsTime-k2RueyxQ.js} +1 -1
  72. package/dist/assets/{ExecutionsView-Czquqjw9.js → ExecutionsView-BVTmkPgV.js} +1 -1
  73. package/dist/assets/{ExposeAllWorkflowsToMcpModal-Sh0CRI8d.js → ExposeAllWorkflowsToMcpModal-BPLUMJkF.js} +1 -1
  74. package/dist/assets/{FixedCollectionParameter-Da24dMya.js → FixedCollectionParameter-BIjuBq8r.js} +1 -1
  75. package/dist/assets/{FolderBreadcrumbs-DqJUYWhq.js → FolderBreadcrumbs-HcLH2Cqp.js} +1 -1
  76. package/dist/assets/{ForgotMyPasswordView-CitJADmi.js → ForgotMyPasswordView-v5kCtVM_.js} +1 -1
  77. package/dist/assets/{GroupedMetricChart-PopI-1sa.js → GroupedMetricChart-DMTW78C7.js} +1 -1
  78. package/dist/assets/{ImpactTag-oQQN274r.js → ImpactTag-BicwtBxr.js} +1 -1
  79. package/dist/assets/{InsightsChartAverageRuntime-DetlJQYX.js → InsightsChartAverageRuntime-LO2v0K89.js} +1 -1
  80. package/dist/assets/{InsightsChartFailed-CWWy62tE.js → InsightsChartFailed-mLBZQuda.js} +1 -1
  81. package/dist/assets/{InsightsChartFailureRate-C-YAi7d0.js → InsightsChartFailureRate-Bl0BrnOZ.js} +1 -1
  82. package/dist/assets/{InsightsChartTimeSaved-B28j_jC0.js → InsightsChartTimeSaved-DZ-Xd2vD.js} +1 -1
  83. package/dist/assets/{InsightsChartTotal-Br6uV6jt.js → InsightsChartTotal-DqIYfX_v.js} +1 -1
  84. package/dist/assets/{InsightsDashboard-B4UqrevT.js → InsightsDashboard-CD5-eT13.js} +2 -2
  85. package/dist/assets/{InsightsPaywall-n4R5mXLS.js → InsightsPaywall-DcKc_bPi.js} +1 -1
  86. package/dist/assets/{InsightsSummary-DKN03YB9.js → InsightsSummary-CMntudjE.js} +1 -1
  87. package/dist/assets/{InsightsTableWorkflows-wWu4oMfY.js → InsightsTableWorkflows-BXV6sZm0.js} +2 -2
  88. package/dist/assets/{InstanceAiEmptyView-DMrumcL4.js → InstanceAiEmptyView-C1NsHRKK.js} +1 -1
  89. package/dist/assets/{InstanceAiLayout-C-ByHHR5.js → InstanceAiLayout-Dp-u5lkW.js} +1 -1
  90. package/dist/assets/{InstanceAiThreadView-aEunPcYH.js → InstanceAiThreadView-DIiRfwS0.js} +1 -1
  91. package/dist/assets/{InstanceAiThreadView-DXtovMT0.css → InstanceAiThreadView-DPjdtu8S.css} +1 -1
  92. package/dist/assets/{InstanceAiThreadsView-BR4n21I5.js → InstanceAiThreadsView-CIm1TaW0.js} +1 -1
  93. package/dist/assets/{InstanceAiToolsConnectionModalWrapper-ABH3CA-r.js → InstanceAiToolsConnectionModalWrapper-CJ0CcsNm.js} +1 -1
  94. package/dist/assets/{InstanceAiView-DLoCy20b.js → InstanceAiView-CuPCIn23.js} +1 -1
  95. package/dist/assets/{InstanceRoleView-ArdehQIt.js → InstanceRoleView-Br91paRR.js} +1 -1
  96. package/dist/assets/{LimitedModeNotice-BA_imeaR.js → LimitedModeNotice-CseyNh6_.js} +1 -1
  97. package/dist/assets/{LogsOverviewRow-Br0h-OAf.js → LogsOverviewRow-BKaN7WVe.js} +1 -1
  98. package/dist/assets/{MCPOnboardingModal-DffhDB_9.js → MCPOnboardingModal-Beet23uN.js} +1 -1
  99. package/dist/assets/{MainHeader-BNmeI8nN.js → MainHeader-CbsYmQO9.js} +1 -1
  100. package/dist/assets/{MainSidebarHeader-D4-NIKMK.js → MainSidebarHeader-BVHkB0Mt.js} +1 -1
  101. package/dist/assets/{McpClientLogoCards-CWBkwvw9.js → McpClientLogoCards-huht-O44.js} +1 -1
  102. package/dist/assets/{McpJsonNudgeModal-bDQW-7mc.js → McpJsonNudgeModal-CMXzXAjX.js} +1 -1
  103. package/dist/assets/{McpRegistrySuggestionFooter-DXk6Ym5-.js → McpRegistrySuggestionFooter-oC_PtPAU.js} +1 -1
  104. package/dist/assets/{MfaSetupModal-CgvMR6oo.js → MfaSetupModal-gOiExwef.js} +1 -1
  105. package/dist/assets/{MigrationRuleDetail-CbDJJulT.js → MigrationRuleDetail-DnnmUkok.js} +1 -1
  106. package/dist/assets/{MigrationRules-BL16_rFU.js → MigrationRules-ghetKn_h.js} +1 -1
  107. package/dist/assets/{ModelByIdSelectorModal-CUB_48Y4.js → ModelByIdSelectorModal-Dgvu-doQ.js} +1 -1
  108. package/dist/assets/{NodeCreation-BqZLPYhb.js → NodeCreation-C-V87uiy.js} +2 -2
  109. package/dist/assets/{NodeCreator-C9OIpUsf.js → NodeCreator-C01fsz4F.js} +1 -1
  110. package/dist/assets/{NodeDetailsView-DvFTieW0.js → NodeDetailsView-0_kadJPk.js} +1 -1
  111. package/dist/assets/{NodeToolSettingsContent-DHauyIKe.js → NodeToolSettingsContent-DBb1q-U_.js} +1 -1
  112. package/dist/assets/{NodeView-DHYhKaPw.js → NodeView-D-g7mvj_.js} +2 -2
  113. package/dist/assets/{NodeView-Cb2VKOf-.js → NodeView-W9bKBeDX.js} +1 -1
  114. package/dist/assets/{OAuthConsentView-CY-qBf7U.js → OAuthConsentView-BiJYpeEB.js} +1 -1
  115. package/dist/assets/{PageViewLayout-LxCX5JfK.js → PageViewLayout-BO4kzKLv.js} +1 -1
  116. package/dist/assets/{ProjectBreadcrumb-Ba5qEd9k.js → ProjectBreadcrumb-K7uuhi_w.js} +1 -1
  117. package/dist/assets/{ProjectFilter-Db6CXuX7.js → ProjectFilter-B1AKy76X.js} +1 -1
  118. package/dist/assets/{ProjectHeader-0mYjakiY.js → ProjectHeader-Ba9xlaLr.js} +1 -1
  119. package/dist/assets/{ProjectRoleView-CknpUkxg.js → ProjectRoleView-Cc9RDUxz.js} +1 -1
  120. package/dist/assets/{ProjectSettings-xrxemQen.js → ProjectSettings-DTPKEWfZ.js} +1 -1
  121. package/dist/assets/{ProjectVariables-oc7a6cFw.js → ProjectVariables-DXUfDRA4.js} +1 -1
  122. package/dist/assets/{PromotionSelectModal-AKeAcCOf.js → PromotionSelectModal-BvDTaHkH.js} +1 -1
  123. package/dist/assets/{PromotionsSettingsView-BjHM3T06.js → PromotionsSettingsView-yZUgGKQE.js} +1 -1
  124. package/dist/assets/{PromptMfaCodeModal-Cf3PvY2U.js → PromptMfaCodeModal-DjBIuOru.js} +1 -1
  125. package/dist/assets/{ProviderSettingsModal-COHE7j29.js → ProviderSettingsModal-BM5dgvc0.js} +1 -1
  126. package/dist/assets/{PublicationIndicator-BFjc7evZ.js → PublicationIndicator-cwoMzxR8.js} +1 -1
  127. package/dist/assets/{ResolversView-2BLbXyM1.js → ResolversView-C5qr8rLS.js} +1 -1
  128. package/dist/assets/{ResourceCenterView-BV4BbO4R.js → ResourceCenterView-9YcsXdws.js} +1 -1
  129. package/dist/assets/{ResourceFiltersDropdown-DrnKSqn3.js → ResourceFiltersDropdown-yPatnpnh.js} +1 -1
  130. package/dist/assets/{ResourcesListEmptyState-U8VCDiQD.js → ResourcesListEmptyState-BRLv2aUh.js} +1 -1
  131. package/dist/assets/{ResourcesListLayout-CBX-9suN.js → ResourcesListLayout-CPW5pa-s.js} +1 -1
  132. package/dist/assets/{RoleSelectDropdown-DAs6V3cH.js → RoleSelectDropdown-DM3Q3oyi.js} +1 -1
  133. package/dist/assets/{RolesView-D_Twhga9.js → RolesView-0DvjAuvE.js} +1 -1
  134. package/dist/assets/{RunDataHtml-Bqpw-BFg.js → RunDataHtml-CicN4-Ph.js} +1 -1
  135. package/dist/assets/{RunDataJson-DZmZaO5n.js → RunDataJson-C_y0f7eS.js} +2 -2
  136. package/dist/assets/{RunDataJsonActions-CGxMXDgK.js → RunDataJsonActions--eLtjkMb.js} +1 -1
  137. package/dist/assets/{RunDataParsedAiContent-B049VZ8F.js → RunDataParsedAiContent-CT1hUBzB.js} +1 -1
  138. package/dist/assets/{RunDataParsedAiContent-CjH177d7.js → RunDataParsedAiContent-CwwngMYH.js} +1 -1
  139. package/dist/assets/{RunDataSearch-5sXfx_K9.js → RunDataSearch-BV2ITKwY.js} +1 -1
  140. package/dist/assets/{RunDataTable-WWvYtVkq.js → RunDataTable-BAQrJZt3.js} +1 -1
  141. package/dist/assets/{SamlOnboarding-CFWQLy_c.js → SamlOnboarding-DOrYe_oa.js} +1 -1
  142. package/dist/assets/{SandboxSettingsRow-DVnjj9Gv.js → SandboxSettingsRow-etV3ptED.js} +1 -1
  143. package/dist/assets/{SecuritySettings-CrAGJaXc.js → SecuritySettings-23Zwpl3E.js} +1 -1
  144. package/dist/assets/{SettingsAIView-D4nwNKcM.js → SettingsAIView-D-hzk3Z-.js} +1 -1
  145. package/dist/assets/{SettingsAgentsView-We9cvSof.js → SettingsAgentsView-CVLke9WA.js} +1 -1
  146. package/dist/assets/{SettingsAiGatewayView-Btkq43a7.js → SettingsAiGatewayView-2NARavHE.js} +1 -1
  147. package/dist/assets/{SettingsApiView-f9Ar5nO3.js → SettingsApiView-aCf_zd7j.js} +1 -1
  148. package/dist/assets/{SettingsChatHubView-D98chyUY.js → SettingsChatHubView-Mjp2_d6I.js} +1 -1
  149. package/dist/assets/{SettingsCommunityNodesView-CLienPbJ.js → SettingsCommunityNodesView-C0eIHw5H.js} +1 -1
  150. package/dist/assets/{SettingsContextView-DzteQOJm.js → SettingsContextView-Cx-RFFjr.js} +1 -1
  151. package/dist/assets/{SettingsEncryptionKeys-RQuR-Bdv.js → SettingsEncryptionKeys-Cs4OE4E6.js} +1 -1
  152. package/dist/assets/{SettingsExternalSecrets-j5XUK7sv.js → SettingsExternalSecrets-DgXly5k7.js} +1 -1
  153. package/dist/assets/{SettingsInstanceAiView-1B0cAqJi.js → SettingsInstanceAiView-C8_V538y.js} +1 -1
  154. package/dist/assets/{SettingsLayout-B1U2Mf_I.js → SettingsLayout-BhYNnR4F.js} +1 -1
  155. package/dist/assets/{SettingsLdapView-B5maqLyz.js → SettingsLdapView-BNHEEovb.js} +1 -1
  156. package/dist/assets/{SettingsLogStreamingView-BTm75bJZ.js → SettingsLogStreamingView-DwfTxc8M.js} +1 -1
  157. package/dist/assets/{SettingsMCPAgentsView-Du34d8pB.js → SettingsMCPAgentsView-DJWOxmPp.js} +1 -1
  158. package/dist/assets/{SettingsMCPClientsView-IhndYljN.js → SettingsMCPClientsView-DuFlLcTD.js} +1 -1
  159. package/dist/assets/{SettingsMCPView-BIOQdEX6.js → SettingsMCPView-B-3fLrHN.js} +1 -1
  160. package/dist/assets/{SettingsMCPWorkflowsView-D61dL1Yy.js → SettingsMCPWorkflowsView-BkLXPEzA.js} +1 -1
  161. package/dist/assets/{SettingsOpenTelemetryView-BjCSjfff.js → SettingsOpenTelemetryView-C1GevMSV.js} +1 -1
  162. package/dist/assets/{SettingsPersonalView-DFcBTJpE.js → SettingsPersonalView-pVcQs6Eg.js} +1 -1
  163. package/dist/assets/{SettingsPreferencesView-BtdoIKES.js → SettingsPreferencesView-9BH10jjY.js} +1 -1
  164. package/dist/assets/{SettingsSecretsProviders.ee-BI7_JUFt.js → SettingsSecretsProviders.ee-Qsg9POhj.js} +1 -1
  165. package/dist/assets/{SettingsSourceControl-CHef2bSf.js → SettingsSourceControl-BO4wFxTs.js} +1 -1
  166. package/dist/assets/{SettingsSso-B_btsLKn.js → SettingsSso-CTytmnZG.js} +1 -1
  167. package/dist/assets/{SettingsUsageAndPlan-Bcu_jG48.js → SettingsUsageAndPlan-CFuzn2c0.js} +1 -1
  168. package/dist/assets/{SettingsUsersView-CRU6pfBA.js → SettingsUsersView-Zocnty4p.js} +1 -1
  169. package/dist/assets/{SetupView-Cb_yiFl4.js → SetupView-DMr3a34z.js} +1 -1
  170. package/dist/assets/{SetupWorkflowCredentialsButton-Dsvsc3QH.js → SetupWorkflowCredentialsButton-CZJEIggF.js} +1 -1
  171. package/dist/assets/{SetupWorkflowFromTemplateView-DNqPrJZ6.js → SetupWorkflowFromTemplateView-CBk1X0jA.js} +1 -1
  172. package/dist/assets/{SigninView-zAiy26s4.js → SigninView-_7WPVufb.js} +1 -1
  173. package/dist/assets/{SignoutView-ClpZ1Q7i.js → SignoutView-DutFpncK.js} +1 -1
  174. package/dist/assets/{SignupView-W4JIUEGT.js → SignupView-C69cB7eV.js} +1 -1
  175. package/dist/assets/{SkeletonAgentCard-Dmah3Wre.js → SkeletonAgentCard-8BO3eQ61.js} +1 -1
  176. package/dist/assets/{TemplateList-DpaevSOY.js → TemplateList-DWEkgD7s.js} +1 -1
  177. package/dist/assets/{TemplatesCollectionView-BXv6-Qxg.js → TemplatesCollectionView-B_ywkKOp.js} +1 -1
  178. package/dist/assets/{TemplatesSearchView-B2x8WfQ4.js → TemplatesSearchView-Ddb652Rl.js} +1 -1
  179. package/dist/assets/{TemplatesView-BX0e5g5J.js → TemplatesView-Bz6NkHGE.js} +1 -1
  180. package/dist/assets/{TemplatesWorkflowView-CESblyso.js → TemplatesWorkflowView-BgJUUnhY.js} +1 -1
  181. package/dist/assets/{TestRunDetailView-CS_Iq1nM.js → TestRunDetailView-CdJkQSXY.js} +1 -1
  182. package/dist/assets/{ToolIcon-CZd4mqj3.js → ToolIcon-DSZZ3Ya6.js} +1 -1
  183. package/dist/assets/{ToolSettingsModal-BkqojVIt.js → ToolSettingsModal-BLbkz-u8.js} +1 -1
  184. package/dist/assets/{ToolsConnectionModal-CZYFyK9G.js → ToolsConnectionModal-DDQwznCY.js} +1 -1
  185. package/dist/assets/{ToolsManagerModal-1XO8gN4-.js → ToolsManagerModal-2VXJK2rN.js} +1 -1
  186. package/dist/assets/{ToolsSelector-BvQSPzdm.js → ToolsSelector-2bQmCqKH.js} +1 -1
  187. package/dist/assets/{TrialIntroModal-CukXZyAP.js → TrialIntroModal-Cvtc1B4V.js} +1 -1
  188. package/dist/assets/{VirtualSchema-CB9VieG6.js → VirtualSchema-BOL8_gSZ.js} +1 -1
  189. package/dist/assets/{WorkerView-PVoqRGs0.js → WorkerView-D5VdVUlW.js} +1 -1
  190. package/dist/assets/{WorkflowExecutionsInfoAccordion-BwSDQbOk.js → WorkflowExecutionsInfoAccordion-CrSd6Lsr.js} +1 -1
  191. package/dist/assets/{WorkflowExecutionsLandingPage-BX-DBUbQ.js → WorkflowExecutionsLandingPage-CCczALvO.js} +1 -1
  192. package/dist/assets/{WorkflowExecutionsPreview-DAYwrvqW.js → WorkflowExecutionsPreview-Dal2qydZ.js} +1 -1
  193. package/dist/assets/{WorkflowExecutionsView-JP2tdyJp.js → WorkflowExecutionsView-CJemWC1X.js} +1 -1
  194. package/dist/assets/{WorkflowHistory-Bpsivymd.js → WorkflowHistory-BpR5gLpC.js} +1 -1
  195. package/dist/assets/{WorkflowLayout-DcJBYH8V.js → WorkflowLayout-BtDNstA3.js} +1 -1
  196. package/dist/assets/{WorkflowOnboardingView-C4a9NJtV.js → WorkflowOnboardingView-BWW69mX5.js} +1 -1
  197. package/dist/assets/{WorkflowPreviewHost-CNSbBHPX.js → WorkflowPreviewHost-B2AIG4jp.js} +1 -1
  198. package/dist/assets/{WorkflowReviewRequestsView-CzbgupGU.js → WorkflowReviewRequestsView-BVbJtJZA.js} +1 -1
  199. package/dist/assets/{WorkflowsView-DD7uEiJc.js → WorkflowsView-CSTquleP.js} +1 -1
  200. package/dist/assets/{aiTemplatesStarterCollection.store-CAuHAjO3.js → aiTemplatesStarterCollection.store-CdwgrGYT.js} +1 -1
  201. package/dist/assets/{app-Cb14aX4e.js → app-BVFAtyJy.js} +81 -81
  202. package/dist/assets/{app-_LvaFVcp.css → app-Q4jiTus4.css} +1 -1
  203. package/dist/assets/{auth.eventBus-DfxRdxEG.js → auth.eventBus-eEh1iUWy.js} +1 -1
  204. package/dist/assets/{context.store-BZAvcG1O.js → context.store-C00XnCsV.js} +1 -1
  205. package/dist/assets/{dist-HVKGaHnN.js → dist-B8T26DZu.js} +1 -1
  206. package/dist/assets/{en-CD1hD7m-.js → en-CkuumMTY.js} +1 -1
  207. package/dist/assets/{expression-runtime-stub-BrwN7DWZ.js → expression-runtime-stub-C5YD6e4G.js} +1 -1
  208. package/dist/assets/{index-Qp1anPqW.js → index-BNebzjMU.js} +1 -1
  209. package/dist/assets/{insights.store-DrDSh40Z.js → insights.store-BJL6SX7b.js} +1 -1
  210. package/dist/assets/{insights.store-B7iJLc5F.js → insights.store-DB0a2966.js} +1 -1
  211. package/dist/assets/{insights.utils-B_F6PtYz.js → insights.utils-BPQ6WKRw.js} +1 -1
  212. package/dist/assets/{instanceAi.store-2MLRJP5U.js → instanceAi.store-DBy-yPsM.js} +1 -1
  213. package/dist/assets/{instanceAiComputerUse.telemetry-DUdMYQlP.js → instanceAiComputerUse.telemetry-D8WGdO0n.js} +1 -1
  214. package/dist/assets/{instanceAiMcp.store-CT_N2VZ-.js → instanceAiMcp.store-RiqFCoSh.js} +1 -1
  215. package/dist/assets/{instanceAiMcp.store-DYjFWTlB.js → instanceAiMcp.store-fgw96Ewv.js} +1 -1
  216. package/dist/assets/{instanceAiSetup.telemetry-DzmOFUJ2.js → instanceAiSetup.telemetry-DOxIpEPR.js} +1 -1
  217. package/dist/assets/{instanceRoleScopes-X1GLvaXZ.js → instanceRoleScopes-BrE5CUek.js} +1 -1
  218. package/dist/assets/{mcp.store-CBpcGM7-.js → mcp.store-KEzA_YWQ.js} +1 -1
  219. package/dist/assets/{postMessageUtils-Q1JVHcz_.js → postMessageUtils-Bv0n4NE1.js} +1 -1
  220. package/dist/assets/{projectRoleScopes-MxdOb1KF.js → projectRoleScopes-BrYAn3c_.js} +1 -1
  221. package/dist/assets/{promotions.api-CRbBbJs2.js → promotions.api-B-3a00Ey.js} +1 -1
  222. package/dist/assets/{promotions.eventBus-DoylFIQA.js → promotions.eventBus-BiL7IxSM.js} +1 -1
  223. package/dist/assets/{promotionsSettings.api-CBk3jszj.js → promotionsSettings.api-BKUsWMPa.js} +1 -1
  224. package/dist/assets/{pushConnection.store-CiLdYeae.js → pushConnection.store-CbHJTVjP.js} +1 -1
  225. package/dist/assets/{readyToRun.store-BAWaovPu.js → readyToRun.store-sxBCkg6x.js} +1 -1
  226. package/dist/assets/{readyToRunWorkflows.store-DaMKBqkV.js → readyToRunWorkflows.store-B8h0ZjQc.js} +1 -1
  227. package/dist/assets/{resourceCenter.store-Br65A5lz.js → resourceCenter.store-CGfJlzjD.js} +1 -1
  228. package/dist/assets/{src-CwPu9Moj.js → src-BuzGQUHG.js} +1 -1
  229. package/dist/assets/{src-CBy18xK5.js → src-DZUhsMmp.js} +1 -1
  230. package/dist/assets/{surfaceMcpToNewCloudUsers.store-BBAl7mfy.js → surfaceMcpToNewCloudUsers.store-BSSXg93Z.js} +1 -1
  231. package/dist/assets/{templateActions-CYwJvFrt.js → templateActions-RQtm3M_-.js} +1 -1
  232. package/dist/assets/{thread-title-DcvunPCO.js → thread-title-DfCP3zlu.js} +1 -1
  233. package/dist/assets/{toolIcons-K71G9198.js → toolIcons-Djf4J2jh.js} +1 -1
  234. package/dist/assets/{useActivityDetection-DvED8pCy.js → useActivityDetection-CZBqBSk7.js} +1 -1
  235. package/dist/assets/{useAgentConfirmationModal-CdARRoOp.js → useAgentConfirmationModal-r05E7QEg.js} +1 -1
  236. package/dist/assets/{useAgentPublish-dfD5TL8d.js → useAgentPublish-BF1hyOY_.js} +1 -1
  237. package/dist/assets/{useBuilderStreamingGuard-BXaFP2Ml.js → useBuilderStreamingGuard-LP6we9qd.js} +1 -1
  238. package/dist/assets/{useCustomAgent-CfY2EG0H.js → useCustomAgent-CYs81F54.js} +1 -1
  239. package/dist/assets/{useDependencyMenu-CM_Rq2jA.js → useDependencyMenu-CVMO8vJ5.js} +1 -1
  240. package/dist/assets/{useEvalCollectionsFlag-c4CO7B9t.js → useEvalCollectionsFlag-DjKTove_.js} +1 -1
  241. package/dist/assets/{useEvaluationsLicense-BXrRrJqu.js → useEvaluationsLicense-CSCdT5jN.js} +1 -1
  242. package/dist/assets/{useExecutionData-BSlw6yg6.js → useExecutionData-C9H1Esaf.js} +1 -1
  243. package/dist/assets/{useExecutionDebugging-HavCVT_F.js → useExecutionDebugging-Bwj4Qc6R.js} +1 -1
  244. package/dist/assets/{useExposeAllWorkflowsToMcpOffer-BkI9Onp0.js → useExposeAllWorkflowsToMcpOffer-CULqe2xh.js} +1 -1
  245. package/dist/assets/{useExtensionDirectConnect-BvQsGI1g.js → useExtensionDirectConnect-DFRUqeEG.js} +1 -1
  246. package/dist/assets/{useFileDrop-CNNiPAkt.js → useFileDrop-BPaRx_c_.js} +1 -1
  247. package/dist/assets/{useImportCurlCommand-C9EP-LtH.js → useImportCurlCommand-B56tD5QC.js} +1 -1
  248. package/dist/assets/{useInstanceAiConfiguration-l8jNmxhr.js → useInstanceAiConfiguration-CQOp345D.js} +1 -1
  249. package/dist/assets/{useInstanceAiThreadHistory-DNMUrC0a.js → useInstanceAiThreadHistory-Dmjvpn77.js} +1 -1
  250. package/dist/assets/{useInstancePromotionConnection-C7sbWPxI.js → useInstancePromotionConnection-0grHaFnh.js} +1 -1
  251. package/dist/assets/{useIsAssistantAtMentionsEnabled-ChSmZUsB.js → useIsAssistantAtMentionsEnabled-DqSMMHMF.js} +1 -1
  252. package/dist/assets/{useLogsTreeExpand-CRjJQfkY.js → useLogsTreeExpand-B5wzyUkg.js} +1 -1
  253. package/dist/assets/{useMcpJsonNudgeEligibility-DQ8EEU16.js → useMcpJsonNudgeEligibility-BEQ2d73y.js} +1 -1
  254. package/dist/assets/{useMcpJsonNudgeTrigger-CmVQ59VK.js → useMcpJsonNudgeTrigger-B6yDjzbf.js} +1 -1
  255. package/dist/assets/{useOAuthClientRevoke-CowEns4y.js → useOAuthClientRevoke-C959u-rM.js} +1 -1
  256. package/dist/assets/{usePostMessageHandler-D-LpaMQW.js → usePostMessageHandler-Cb02dgRX.js} +2 -2
  257. package/dist/assets/{usePushConnection-DlURCN61.js → usePushConnection-B055R8DZ.js} +1 -1
  258. package/dist/assets/{usePushConnection-K3KCEkMw.js → usePushConnection-CJjgAmZF.js} +1 -1
  259. package/dist/assets/{useRestrictedNodeWarning-BX7EK0Uj.js → useRestrictedNodeWarning-DSZazmqQ.js} +1 -1
  260. package/dist/assets/{useRoleEditorForm-CVeYC7LC.js → useRoleEditorForm-H3kq0M6s.js} +1 -1
  261. package/dist/assets/{useSecretsProvidersList.ee-D3g6UJdy.js → useSecretsProvidersList.ee-DWm1H7r7.js} +1 -1
  262. package/dist/assets/{useSettingsItems-CDhtw_rt.js → useSettingsItems-uGGyjxhk.js} +1 -1
  263. package/dist/assets/{useSidebarLayout-BBo0biIJ.js → useSidebarLayout-BZfNOpj0.js} +1 -1
  264. package/dist/assets/{useWorkflowEvaluationState-BFKDKAyU.js → useWorkflowEvaluationState-B5DI1iC2.js} +1 -1
  265. package/dist/assets/{useWorkflowInitialization-8WxYL6JM.js → useWorkflowInitialization-JHArISh1.js} +1 -1
  266. package/dist/assets/{useWorkflowsEmptyState-DygSWCo6.js → useWorkflowsEmptyState-DS_Y94U2.js} +1 -1
  267. package/dist/assets/{userRoleProvisioning.store-McCCNrSp.js → userRoleProvisioning.store-DB5UP7FM.js} +1 -1
  268. package/dist/assets/{vector-stores-CqfK6vCw.js → vector-stores-CJYNH9Qq.js} +1 -1
  269. package/dist/assets/{workflowReviews.utils-7eZBLWoN.js → workflowReviews.utils-CA0Uci-b.js} +1 -1
  270. package/dist/index.html +3 -3
  271. package/package.json +1 -1
@@ -1 +1 @@
1
- try{(function(){var e=typeof window<`u`?window:typeof global<`u`?global:typeof globalThis<`u`?globalThis:typeof self<`u`?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]=`f4c9cdac-1c23-4f12-b705-ce743b884b80`,e._sentryDebugIdIdentifier=`sentry-dbid-f4c9cdac-1c23-4f12-b705-ce743b884b80`)})()}catch{}import{t as e}from"./NodeView-DHYhKaPw.js";export{e as default};
1
+ try{(function(){var e=typeof window<`u`?window:typeof global<`u`?global:typeof globalThis<`u`?globalThis:typeof self<`u`?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]=`f4c9cdac-1c23-4f12-b705-ce743b884b80`,e._sentryDebugIdIdentifier=`sentry-dbid-f4c9cdac-1c23-4f12-b705-ce743b884b80`)})()}catch{}import{t as e}from"./NodeView-D-g7mvj_.js";export{e as default};
@@ -1 +1 @@
1
- try{(function(){var e=typeof window<`u`?window:typeof global<`u`?global:typeof globalThis<`u`?globalThis:typeof self<`u`?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]=`d0ea4b70-3b18-416c-9b36-818abf368289`,e._sentryDebugIdIdentifier=`sentry-dbid-d0ea4b70-3b18-416c-9b36-818abf368289`)})()}catch{}import{Ad as e,Bd as t,Bf as n,Fd as r,Id as i,Ld as a,Mf as o,Nd as s,Pd as c,Ud as l,Vd as u,af as d,bf as f,fp as p,mo as m,nf as ee,rf as te,sp as h,vf as g}from"./vendor-BCjXakEm.js";import{Cw as _,J_ as ne,OC as v,Ow as y,Q_ as b,WC as x,aC as S,bv as C,bw as w,dw as T,fC as E,k as D,nv as O,pu as k,pw as A,qx as j,vd as M,vv as N,wC as P,yw as F}from"./app-Cb14aX4e.js";async function I(e){return await C(e,`GET`,`/consent/details`)}async function L(e,t,n){return await C(e,`POST`,`/consent/approve`,{approved:t,scopes:n})}var re=m(j.CONSENT,()=>{let e=o(null),t=o(!1),n=o(null),r=o(null),i=O(),a=0;return{fetchConsentDetails:async()=>{let o=++a;t.value=!0,n.value=null,r.value=null;try{let t=await I(i.restApiContext);return o===a&&(e.value=t),e.value}catch(e){throw o===a&&(e instanceof N&&e.httpStatusCode===422?r.value=`resource_unavailable`:e instanceof N&&e.httpStatusCode===403&&(r.value=`forbidden`),n.value=e instanceof Error?e.message:`Failed to load consent details`),e}finally{o===a&&(t.value=!1)}},approveConsent:async(e,r)=>{t.value=!0,n.value=null;try{return await L(i.restApiContext,e,r)}catch(e){throw n.value=e instanceof Error?e.message:`Failed to process consent`,e}finally{t.value=!1}},resetState:()=>{e.value=null,t.value=!1,n.value=null,r.value=null},consentDetails:e,isLoading:t,error:n,errorCode:r}}),ie={viewBox:`0 0 64 8`,preserveAspectRatio:`none`},R=l({__name:`OAuthConsentView`,setup(l){let m=re(),_=y(),C=M(),O=ne(),j=b(),N=o(!1),I=o(!1),L=o(!1),R=o(!1),z=o([]),B=!0;te(()=>{B=!1});let V=s(()=>m.error),H=s(()=>m.isLoading),U=s(()=>m.errorCode===`resource_unavailable`?_.baseText(`oauth.consentView.error.resourceUnavailable`):m.errorCode===`forbidden`?_.baseText(`oauth.consentView.error.insufficientScope`):m.error),W=s(()=>{let e=m.consentDetails;return e&&!e.autoApproved?e:null}),G=s(()=>W.value?.resourceName),K=s(()=>m.consentDetails?.uiHints),q=s(()=>_.baseText(`oauth.consentView.firstParty.type.${W.value?.uiHints?.consentType??`default`}`)),J=s(()=>W.value?.scopes??[]),Y=s(()=>J.value.length>0),X=s(()=>!!W.value?.redirectUri&&!W.value?.isFirstParty),Z=s(()=>Y.value&&z.value.length===0),Q=s(()=>H.value||V.value!==null||!W.value||X.value&&!R.value||Z.value),$=s(()=>Z.value?_.baseText(`oauth.consentView.allowDisabled.noScopes`):X.value&&!R.value?_.baseText(`oauth.consentView.allowDisabled.trust`):null);g(()=>W.value?.redirectUri,()=>{R.value=!1}),g(J,e=>{let t=W.value?.previousScopes??[];z.value=t.length>0?t:[...e]},{immediate:!0});let ae=async()=>{try{let e=await m.approveConsent(!0,Y.value?z.value:void 0);j.track(`User approved MCP consent`,{client_name:W.value?.clientName,selected_scopes:z.value,selected_scopes_count:z.value.length,all_scopes_selected:z.value.length===J.value.length}),N.value=!0,window.location.href=e.redirectUrl}catch(e){O.showError(e,_.baseText(`oauth.consentView.error.allow`))}},oe=async()=>{try{await m.approveConsent(!1),j.track(`User denied MCP consent`,{client_name:W.value?.clientName}),window.location.href=window.BASE_PATH??`/`}catch(e){O.showError(e,_.baseText(`oauth.consentView.error.deny`))}},se=()=>{window.location.href=window.BASE_PATH??`/`};return ee(async()=>{C.set(_.baseText(`oauth.consentView.title`));try{let e=await m.fetchConsentDetails();if(!B)return;if(L.value=!0,e?.autoApproved&&e.redirectUrl){I.value=!0,window.location.href=e.redirectUrl;return}j.track(`User viewed MCP consent screen`,{client_name:W.value?.clientName,available_scopes_count:J.value.length})}catch(e){if(!B)return;O.showError(e,_.baseText(`oauth.consentView.error.fetchDetails`))}}),(o,s)=>(d(),a(`div`,{class:h(o.$style.overlay)},[c(`div`,{class:h(o.$style[`consent-dialog`])},[c(`header`,{class:h(o.$style.header)},[c(`div`,{class:h(o.$style.logo)},[K.value?.icon?(d(),r(n(w),{key:0,icon:K.value.icon,size:`large`,color:`text-dark`,"data-test-id":`consent-client-icon`},null,8,[`icon`])):L.value||V.value?(d(),r(n(w),{key:1,icon:`mcp`,size:`large`,color:`text-dark`,"data-test-id":`consent-client-icon`})):i(``,!0)],2),c(`span`,{class:h(o.$style.connector),"aria-hidden":`true`},[(d(),a(`svg`,ie,[c(`line`,{class:h(o.$style[`connector-line`]),x1:`0`,y1:`4`,x2:`64`,y2:`4`,stroke:`currentColor`,"stroke-width":`1.5`,"stroke-linecap":`round`,"stroke-dasharray":`2 5`},null,2)])),c(`span`,{class:h(o.$style.badge)},[u(n(w),{class:h(o.$style[`badge-spinner`]),icon:`loader-circle`,size:`large`},null,8,[`class`])],2)],2),c(`div`,{class:h(o.$style.logo)},[u(n(E),{size:`small`,collapsed:!0,"release-channel":`stable`})],2)],2),N.value?(d(),a(`div`,{key:0,class:h(o.$style.success),"data-test-id":`consent-success-screen`},[u(n(v),{tag:`h2`,size:`large`,bold:!0},{default:f(()=>[t(p(n(_).baseText(`oauth.consentView.success.title`)),1)]),_:1}),u(n(T),{color:`text-base`},{default:f(()=>[t(p(n(_).baseText(`oauth.consentView.success.description`)),1)]),_:1})],2)):V.value?(d(),a(`div`,{key:1,class:h(o.$style.content),"data-test-id":`consent-error`},[u(n(v),{tag:`h2`,size:`large`,bold:!0},{default:f(()=>[t(p(n(_).baseText(`oauth.consentView.error.heading`)),1)]),_:1}),u(n(S),{theme:`danger`,"data-test-id":`consent-error-notice`,content:U.value??``},null,8,[`content`])],2)):I.value||!L.value?(d(),a(`div`,{key:2,class:h(o.$style.content),"data-test-id":`consent-loading`},null,2)):(d(),a(`div`,{key:3,class:h(o.$style.content),"data-test-id":`consent-content`},[W.value?.isFirstParty?(d(),r(n(v),{key:0,tag:`h2`,size:`large`,bold:!0},{default:f(()=>[t(p(n(_).baseText(`oauth.consentView.firstParty.heading`,{interpolate:{resourceName:G.value??``}})),1)]),_:1})):G.value?(d(),r(n(v),{key:1,tag:`h2`,size:`large`,bold:!0},{default:f(()=>[t(p(n(_).baseText(`oauth.consentView.headingWithWorkflow`,{interpolate:{clientName:W.value?.clientName??``,resourceName:G.value}})),1)]),_:1})):(d(),r(n(v),{key:2,tag:`h2`,size:`large`,bold:!0},{default:f(()=>[t(p(n(_).baseText(`oauth.consentView.heading`,{interpolate:{clientName:W.value?.clientName??``}})),1)]),_:1})),c(`div`,{class:h(o.$style[`text-content`])},[W.value?.isFirstParty?(d(),r(n(T),{key:0,color:`text-base`,size:`medium`},{default:f(()=>[t(p(n(_).baseText(`oauth.consentView.firstParty.description`,{interpolate:{resourceType:q.value}})),1)]),_:1})):G.value?(d(),r(n(T),{key:1,color:`text-base`,size:`medium`},{default:f(()=>[t(p(n(_).baseText(`oauth.consentView.descriptionWithWorkflow`,{interpolate:{clientName:W.value?.clientName??``}})),1)]),_:1})):Y.value?(d(),r(n(T),{key:2,color:`text-base`,size:`medium`},{default:f(()=>[t(p(n(_).baseText(`oauth.consentView.scopes.description`,{interpolate:{clientName:W.value?.clientName??``}})),1)]),_:1})):(d(),r(n(T),{key:3,color:`text-base`,size:`medium`},{default:f(()=>[t(p(n(_).baseText(`oauth.consentView.description`,{interpolate:{clientName:W.value?.clientName??``}})),1)]),_:1})),Y.value?(d(),r(k,{key:4,modelValue:z.value,"onUpdate:modelValue":s[0]||=e=>z.value=e,"available-scopes":J.value,groups:n(D),"scope-tools":W.value?.scopeTools,"i18n-key-prefix":`oauth.consentView.scopes`,"root-test-id":`consent-scopes`},null,8,[`modelValue`,`available-scopes`,`groups`,`scope-tools`])):G.value?i(``,!0):(d(),a(`ul`,{key:5,class:h(o.$style[`permission-list`])},[c(`li`,null,p(n(_).baseText(`oauth.consentView.action.listWorkflows`)),1),c(`li`,null,p(n(_).baseText(`oauth.consentView.action.workflowDetails`)),1),c(`li`,null,p(n(_).baseText(`oauth.consentView.action.executeWorkflows`)),1),c(`li`,null,p(n(_).baseText(`oauth.consentView.action.executionDetails`)),1),c(`li`,null,p(n(_).baseText(`oauth.consentView.action.createUpdateWorkflows`)),1),c(`li`,null,p(n(_).baseText(`oauth.consentView.action.createDataTables`)),1),c(`li`,null,p(n(_).baseText(`oauth.consentView.action.searchProjectsAndFolders`)),1)],2))],2)],2)),!N.value&&!I.value&&(V.value||L.value)?(d(),a(`footer`,{key:4,class:h(o.$style.footer)},[!V.value&&X.value?(d(),a(`div`,{key:0,class:h(o.$style.divided)},[u(n(x),{theme:`secondary`,iconless:!0,class:h(o.$style[`redirect-note`]),"data-test-id":`consent-redirect-warning`},{default:f(()=>[c(`span`,{class:h(o.$style[`redirect-note-title`])},p(n(_).baseText(`oauth.consentView.redirectWarning.title`)),3),c(`code`,{class:h(o.$style[`redirect-url`]),"data-test-id":`consent-redirect-uri`},p(W.value?.redirectUri),3)]),_:1},8,[`class`])],2)):i(``,!0),c(`div`,{class:h([o.$style[`footer-actions`],o.$style.divided])},[!V.value&&X.value?(d(),r(n(P),{key:0,modelValue:R.value,"onUpdate:modelValue":s[1]||=e=>R.value=e,class:h(o.$style[`trust-confirm`]),label:n(_).baseText(`oauth.consentView.redirectWarning.confirm`),"data-test-id":`consent-redirect-confirm`},null,8,[`modelValue`,`class`,`label`])):i(``,!0),c(`div`,{class:h(o.$style[`button-group`])},[V.value?(d(),r(n(F),{key:0,variant:`solid`,"data-test-id":`consent-close-button`,size:`large`,onClick:se},{default:f(()=>[t(p(n(_).baseText(`generic.close`)),1)]),_:1})):(d(),a(e,{key:1},[u(n(F),{variant:`outline`,"data-test-id":`consent-deny-button`,size:`large`,loading:H.value,disabled:H.value,onClick:oe},{default:f(()=>[t(p(n(_).baseText(`generic.deny`)),1)]),_:1},8,[`loading`,`disabled`]),u(n(A),{disabled:!Q.value||!$.value},{content:f(()=>[t(p($.value),1)]),default:f(()=>[u(n(F),{variant:`solid`,"data-test-id":`consent-allow-button`,size:`large`,loading:H.value,disabled:Q.value,onClick:ae},{default:f(()=>[t(p(n(_).baseText(`oauth.consentView.allow`)),1)]),_:1},8,[`loading`,`disabled`])]),_:1},8,[`disabled`])],64))],2)],2)],2)):i(``,!0)],2)],2))}}),z=`_overlay_12b84_1`,B=`_header_12b84_31`,V=`_logo_12b84_38`,H=`_connector_12b84_52`,U=`_badge_12b84_79`,W=`_content_12b84_112`,G=`_success_12b84_118`,K=`_footer_12b84_147`,q=`_divided_12b84_146`,J=_(R,[[`__cssModules`,{$style:{overlay:z,"consent-dialog":`_consent-dialog_12b84_14`,header:B,logo:V,connector:H,"connector-line":`_connector-line_12b84_69`,"mcp-connector-dash":`_mcp-connector-dash_12b84_1`,badge:U,"badge-spinner":`_badge-spinner_12b84_96`,"mcp-connector-spin":`_mcp-connector-spin_12b84_1`,content:W,success:G,"text-content":`_text-content_12b84_127`,"permission-list":`_permission-list_12b84_133`,footer:K,divided:q,"redirect-note":`_redirect-note_12b84_165`,"redirect-note-title":`_redirect-note-title_12b84_173`,"redirect-url":`_redirect-url_12b84_174`,"footer-actions":`_footer-actions_12b84_188`,"button-group":`_button-group_12b84_197`,"trust-confirm":`_trust-confirm_12b84_206`}}]]);export{J as default};
1
+ try{(function(){var e=typeof window<`u`?window:typeof global<`u`?global:typeof globalThis<`u`?globalThis:typeof self<`u`?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]=`d0ea4b70-3b18-416c-9b36-818abf368289`,e._sentryDebugIdIdentifier=`sentry-dbid-d0ea4b70-3b18-416c-9b36-818abf368289`)})()}catch{}import{Ad as e,Bd as t,Bf as n,Fd as r,Id as i,Ld as a,Mf as o,Nd as s,Pd as c,Ud as l,Vd as u,af as d,bf as f,fp as p,mo as m,nf as ee,rf as te,sp as h,vf as g}from"./vendor-BCjXakEm.js";import{Cw as _,J_ as ne,OC as v,Ow as y,Q_ as b,WC as x,aC as S,bv as C,bw as w,dw as T,fC as E,k as D,nv as O,pu as k,pw as A,qx as j,vd as M,vv as N,wC as P,yw as F}from"./app-BVFAtyJy.js";async function I(e){return await C(e,`GET`,`/consent/details`)}async function L(e,t,n){return await C(e,`POST`,`/consent/approve`,{approved:t,scopes:n})}var re=m(j.CONSENT,()=>{let e=o(null),t=o(!1),n=o(null),r=o(null),i=O(),a=0;return{fetchConsentDetails:async()=>{let o=++a;t.value=!0,n.value=null,r.value=null;try{let t=await I(i.restApiContext);return o===a&&(e.value=t),e.value}catch(e){throw o===a&&(e instanceof N&&e.httpStatusCode===422?r.value=`resource_unavailable`:e instanceof N&&e.httpStatusCode===403&&(r.value=`forbidden`),n.value=e instanceof Error?e.message:`Failed to load consent details`),e}finally{o===a&&(t.value=!1)}},approveConsent:async(e,r)=>{t.value=!0,n.value=null;try{return await L(i.restApiContext,e,r)}catch(e){throw n.value=e instanceof Error?e.message:`Failed to process consent`,e}finally{t.value=!1}},resetState:()=>{e.value=null,t.value=!1,n.value=null,r.value=null},consentDetails:e,isLoading:t,error:n,errorCode:r}}),ie={viewBox:`0 0 64 8`,preserveAspectRatio:`none`},R=l({__name:`OAuthConsentView`,setup(l){let m=re(),_=y(),C=M(),O=ne(),j=b(),N=o(!1),I=o(!1),L=o(!1),R=o(!1),z=o([]),B=!0;te(()=>{B=!1});let V=s(()=>m.error),H=s(()=>m.isLoading),U=s(()=>m.errorCode===`resource_unavailable`?_.baseText(`oauth.consentView.error.resourceUnavailable`):m.errorCode===`forbidden`?_.baseText(`oauth.consentView.error.insufficientScope`):m.error),W=s(()=>{let e=m.consentDetails;return e&&!e.autoApproved?e:null}),G=s(()=>W.value?.resourceName),K=s(()=>m.consentDetails?.uiHints),q=s(()=>_.baseText(`oauth.consentView.firstParty.type.${W.value?.uiHints?.consentType??`default`}`)),J=s(()=>W.value?.scopes??[]),Y=s(()=>J.value.length>0),X=s(()=>!!W.value?.redirectUri&&!W.value?.isFirstParty),Z=s(()=>Y.value&&z.value.length===0),Q=s(()=>H.value||V.value!==null||!W.value||X.value&&!R.value||Z.value),$=s(()=>Z.value?_.baseText(`oauth.consentView.allowDisabled.noScopes`):X.value&&!R.value?_.baseText(`oauth.consentView.allowDisabled.trust`):null);g(()=>W.value?.redirectUri,()=>{R.value=!1}),g(J,e=>{let t=W.value?.previousScopes??[];z.value=t.length>0?t:[...e]},{immediate:!0});let ae=async()=>{try{let e=await m.approveConsent(!0,Y.value?z.value:void 0);j.track(`User approved MCP consent`,{client_name:W.value?.clientName,selected_scopes:z.value,selected_scopes_count:z.value.length,all_scopes_selected:z.value.length===J.value.length}),N.value=!0,window.location.href=e.redirectUrl}catch(e){O.showError(e,_.baseText(`oauth.consentView.error.allow`))}},oe=async()=>{try{await m.approveConsent(!1),j.track(`User denied MCP consent`,{client_name:W.value?.clientName}),window.location.href=window.BASE_PATH??`/`}catch(e){O.showError(e,_.baseText(`oauth.consentView.error.deny`))}},se=()=>{window.location.href=window.BASE_PATH??`/`};return ee(async()=>{C.set(_.baseText(`oauth.consentView.title`));try{let e=await m.fetchConsentDetails();if(!B)return;if(L.value=!0,e?.autoApproved&&e.redirectUrl){I.value=!0,window.location.href=e.redirectUrl;return}j.track(`User viewed MCP consent screen`,{client_name:W.value?.clientName,available_scopes_count:J.value.length})}catch(e){if(!B)return;O.showError(e,_.baseText(`oauth.consentView.error.fetchDetails`))}}),(o,s)=>(d(),a(`div`,{class:h(o.$style.overlay)},[c(`div`,{class:h(o.$style[`consent-dialog`])},[c(`header`,{class:h(o.$style.header)},[c(`div`,{class:h(o.$style.logo)},[K.value?.icon?(d(),r(n(w),{key:0,icon:K.value.icon,size:`large`,color:`text-dark`,"data-test-id":`consent-client-icon`},null,8,[`icon`])):L.value||V.value?(d(),r(n(w),{key:1,icon:`mcp`,size:`large`,color:`text-dark`,"data-test-id":`consent-client-icon`})):i(``,!0)],2),c(`span`,{class:h(o.$style.connector),"aria-hidden":`true`},[(d(),a(`svg`,ie,[c(`line`,{class:h(o.$style[`connector-line`]),x1:`0`,y1:`4`,x2:`64`,y2:`4`,stroke:`currentColor`,"stroke-width":`1.5`,"stroke-linecap":`round`,"stroke-dasharray":`2 5`},null,2)])),c(`span`,{class:h(o.$style.badge)},[u(n(w),{class:h(o.$style[`badge-spinner`]),icon:`loader-circle`,size:`large`},null,8,[`class`])],2)],2),c(`div`,{class:h(o.$style.logo)},[u(n(E),{size:`small`,collapsed:!0,"release-channel":`stable`})],2)],2),N.value?(d(),a(`div`,{key:0,class:h(o.$style.success),"data-test-id":`consent-success-screen`},[u(n(v),{tag:`h2`,size:`large`,bold:!0},{default:f(()=>[t(p(n(_).baseText(`oauth.consentView.success.title`)),1)]),_:1}),u(n(T),{color:`text-base`},{default:f(()=>[t(p(n(_).baseText(`oauth.consentView.success.description`)),1)]),_:1})],2)):V.value?(d(),a(`div`,{key:1,class:h(o.$style.content),"data-test-id":`consent-error`},[u(n(v),{tag:`h2`,size:`large`,bold:!0},{default:f(()=>[t(p(n(_).baseText(`oauth.consentView.error.heading`)),1)]),_:1}),u(n(S),{theme:`danger`,"data-test-id":`consent-error-notice`,content:U.value??``},null,8,[`content`])],2)):I.value||!L.value?(d(),a(`div`,{key:2,class:h(o.$style.content),"data-test-id":`consent-loading`},null,2)):(d(),a(`div`,{key:3,class:h(o.$style.content),"data-test-id":`consent-content`},[W.value?.isFirstParty?(d(),r(n(v),{key:0,tag:`h2`,size:`large`,bold:!0},{default:f(()=>[t(p(n(_).baseText(`oauth.consentView.firstParty.heading`,{interpolate:{resourceName:G.value??``}})),1)]),_:1})):G.value?(d(),r(n(v),{key:1,tag:`h2`,size:`large`,bold:!0},{default:f(()=>[t(p(n(_).baseText(`oauth.consentView.headingWithWorkflow`,{interpolate:{clientName:W.value?.clientName??``,resourceName:G.value}})),1)]),_:1})):(d(),r(n(v),{key:2,tag:`h2`,size:`large`,bold:!0},{default:f(()=>[t(p(n(_).baseText(`oauth.consentView.heading`,{interpolate:{clientName:W.value?.clientName??``}})),1)]),_:1})),c(`div`,{class:h(o.$style[`text-content`])},[W.value?.isFirstParty?(d(),r(n(T),{key:0,color:`text-base`,size:`medium`},{default:f(()=>[t(p(n(_).baseText(`oauth.consentView.firstParty.description`,{interpolate:{resourceType:q.value}})),1)]),_:1})):G.value?(d(),r(n(T),{key:1,color:`text-base`,size:`medium`},{default:f(()=>[t(p(n(_).baseText(`oauth.consentView.descriptionWithWorkflow`,{interpolate:{clientName:W.value?.clientName??``}})),1)]),_:1})):Y.value?(d(),r(n(T),{key:2,color:`text-base`,size:`medium`},{default:f(()=>[t(p(n(_).baseText(`oauth.consentView.scopes.description`,{interpolate:{clientName:W.value?.clientName??``}})),1)]),_:1})):(d(),r(n(T),{key:3,color:`text-base`,size:`medium`},{default:f(()=>[t(p(n(_).baseText(`oauth.consentView.description`,{interpolate:{clientName:W.value?.clientName??``}})),1)]),_:1})),Y.value?(d(),r(k,{key:4,modelValue:z.value,"onUpdate:modelValue":s[0]||=e=>z.value=e,"available-scopes":J.value,groups:n(D),"scope-tools":W.value?.scopeTools,"i18n-key-prefix":`oauth.consentView.scopes`,"root-test-id":`consent-scopes`},null,8,[`modelValue`,`available-scopes`,`groups`,`scope-tools`])):G.value?i(``,!0):(d(),a(`ul`,{key:5,class:h(o.$style[`permission-list`])},[c(`li`,null,p(n(_).baseText(`oauth.consentView.action.listWorkflows`)),1),c(`li`,null,p(n(_).baseText(`oauth.consentView.action.workflowDetails`)),1),c(`li`,null,p(n(_).baseText(`oauth.consentView.action.executeWorkflows`)),1),c(`li`,null,p(n(_).baseText(`oauth.consentView.action.executionDetails`)),1),c(`li`,null,p(n(_).baseText(`oauth.consentView.action.createUpdateWorkflows`)),1),c(`li`,null,p(n(_).baseText(`oauth.consentView.action.createDataTables`)),1),c(`li`,null,p(n(_).baseText(`oauth.consentView.action.searchProjectsAndFolders`)),1)],2))],2)],2)),!N.value&&!I.value&&(V.value||L.value)?(d(),a(`footer`,{key:4,class:h(o.$style.footer)},[!V.value&&X.value?(d(),a(`div`,{key:0,class:h(o.$style.divided)},[u(n(x),{theme:`secondary`,iconless:!0,class:h(o.$style[`redirect-note`]),"data-test-id":`consent-redirect-warning`},{default:f(()=>[c(`span`,{class:h(o.$style[`redirect-note-title`])},p(n(_).baseText(`oauth.consentView.redirectWarning.title`)),3),c(`code`,{class:h(o.$style[`redirect-url`]),"data-test-id":`consent-redirect-uri`},p(W.value?.redirectUri),3)]),_:1},8,[`class`])],2)):i(``,!0),c(`div`,{class:h([o.$style[`footer-actions`],o.$style.divided])},[!V.value&&X.value?(d(),r(n(P),{key:0,modelValue:R.value,"onUpdate:modelValue":s[1]||=e=>R.value=e,class:h(o.$style[`trust-confirm`]),label:n(_).baseText(`oauth.consentView.redirectWarning.confirm`),"data-test-id":`consent-redirect-confirm`},null,8,[`modelValue`,`class`,`label`])):i(``,!0),c(`div`,{class:h(o.$style[`button-group`])},[V.value?(d(),r(n(F),{key:0,variant:`solid`,"data-test-id":`consent-close-button`,size:`large`,onClick:se},{default:f(()=>[t(p(n(_).baseText(`generic.close`)),1)]),_:1})):(d(),a(e,{key:1},[u(n(F),{variant:`outline`,"data-test-id":`consent-deny-button`,size:`large`,loading:H.value,disabled:H.value,onClick:oe},{default:f(()=>[t(p(n(_).baseText(`generic.deny`)),1)]),_:1},8,[`loading`,`disabled`]),u(n(A),{disabled:!Q.value||!$.value},{content:f(()=>[t(p($.value),1)]),default:f(()=>[u(n(F),{variant:`solid`,"data-test-id":`consent-allow-button`,size:`large`,loading:H.value,disabled:Q.value,onClick:ae},{default:f(()=>[t(p(n(_).baseText(`oauth.consentView.allow`)),1)]),_:1},8,[`loading`,`disabled`])]),_:1},8,[`disabled`])],64))],2)],2)],2)):i(``,!0)],2)],2))}}),z=`_overlay_12b84_1`,B=`_header_12b84_31`,V=`_logo_12b84_38`,H=`_connector_12b84_52`,U=`_badge_12b84_79`,W=`_content_12b84_112`,G=`_success_12b84_118`,K=`_footer_12b84_147`,q=`_divided_12b84_146`,J=_(R,[[`__cssModules`,{$style:{overlay:z,"consent-dialog":`_consent-dialog_12b84_14`,header:B,logo:V,connector:H,"connector-line":`_connector-line_12b84_69`,"mcp-connector-dash":`_mcp-connector-dash_12b84_1`,badge:U,"badge-spinner":`_badge-spinner_12b84_96`,"mcp-connector-spin":`_mcp-connector-spin_12b84_1`,content:W,success:G,"text-content":`_text-content_12b84_127`,"permission-list":`_permission-list_12b84_133`,footer:K,divided:q,"redirect-note":`_redirect-note_12b84_165`,"redirect-note-title":`_redirect-note-title_12b84_173`,"redirect-url":`_redirect-url_12b84_174`,"footer-actions":`_footer-actions_12b84_188`,"button-group":`_button-group_12b84_197`,"trust-confirm":`_trust-confirm_12b84_206`}}]]);export{J as default};
@@ -1 +1 @@
1
- try{(function(){var e=typeof window<`u`?window:typeof global<`u`?global:typeof globalThis<`u`?globalThis:typeof self<`u`?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]=`d9031134-43ee-4ad7-8760-a8c28477038e`,e._sentryDebugIdIdentifier=`sentry-dbid-d9031134-43ee-4ad7-8760-a8c28477038e`)})()}catch{}import{Ld as e,Pd as t,Ud as n,af as r,cf as i,sp as a}from"./vendor-BCjXakEm.js";import{Cw as o}from"./app-Cb14aX4e.js";var s=o(n({__name:`PageViewLayout`,props:{fullWidth:{type:Boolean,default:!1}},setup(n){return(o,s)=>(r(),e(`div`,{class:a([o.$style.wrapper,n.fullWidth?o.$style.fullWidth:``])},[i(o.$slots,`header`),t(`main`,{class:a(o.$style.content)},[i(o.$slots,`default`)],2)],2))}}),[[`__cssModules`,{$style:{wrapper:`_wrapper_172vb_113`,fullWidth:`_fullWidth_172vb_129`,content:`_content_172vb_134`}}]]);export{s as t};
1
+ try{(function(){var e=typeof window<`u`?window:typeof global<`u`?global:typeof globalThis<`u`?globalThis:typeof self<`u`?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]=`d9031134-43ee-4ad7-8760-a8c28477038e`,e._sentryDebugIdIdentifier=`sentry-dbid-d9031134-43ee-4ad7-8760-a8c28477038e`)})()}catch{}import{Ld as e,Pd as t,Ud as n,af as r,cf as i,sp as a}from"./vendor-BCjXakEm.js";import{Cw as o}from"./app-BVFAtyJy.js";var s=o(n({__name:`PageViewLayout`,props:{fullWidth:{type:Boolean,default:!1}},setup(n){return(o,s)=>(r(),e(`div`,{class:a([o.$style.wrapper,n.fullWidth?o.$style.fullWidth:``])},[i(o.$slots,`header`),t(`main`,{class:a(o.$style.content)},[i(o.$slots,`default`)],2)],2))}}),[[`__cssModules`,{$style:{wrapper:`_wrapper_172vb_113`,fullWidth:`_fullWidth_172vb_129`,content:`_content_172vb_134`}}]]);export{s as t};
@@ -1 +1 @@
1
- try{(function(){var e=typeof window<`u`?window:typeof global<`u`?global:typeof globalThis<`u`?globalThis:typeof self<`u`?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]=`6a483101-da12-4b6d-970d-0d6d6734cb55`,e._sentryDebugIdIdentifier=`sentry-dbid-6a483101-da12-4b6d-970d-0d6d6734cb55`)})()}catch{}import{Bd as e,Bf as t,Ld as n,Nd as r,Ud as i,Vd as a,af as o,bf as s,fp as c,sp as l}from"./vendor-BCjXakEm.js";import{$c as u,Cw as d,If as f,Ow as p,SC as m,dw as h,oS as g}from"./app-Cb14aX4e.js";var _=i({__name:`ProjectBreadcrumb`,props:{currentProject:{default:void 0},isDragging:{type:Boolean,default:!1},isShared:{type:Boolean,default:!1},icon:{default:void 0}},emits:[`projectHover`,`projectDrop`],setup(i,{emit:d}){let _=i,v=d,y=p(),b=r(()=>_.icon?_.icon:_.isShared?{type:`icon`,value:`share`}:_.currentProject?.type===f.Personal?{type:`icon`,value:`user`}:_.currentProject?.name?g(_.currentProject.icon)?_.currentProject.icon:{type:`icon`,value:`layers`}:{type:`icon`,value:`house`}),x=r(()=>_.isShared?y.baseText(`projects.menu.shared`):_.currentProject?.type===f.Personal?y.baseText(`projects.menu.personal`):_.currentProject?.name),S=r(()=>_.isShared?`/shared`:_.currentProject?`/projects/${_.currentProject.id}`:`/home`),C=()=>{v(`projectHover`)},w=()=>{_.isDragging&&v(`projectDrop`)};return(r,d)=>(o(),n(`div`,{class:l({[r.$style[`home-project`]]:!0,[r.$style.dragging]:i.isDragging}),"data-test-id":`home-project`,"data-droppable":``,onMouseenter:C,onMouseup:d[0]||=e=>i.isDragging?w():null},[a(t(m),{to:S.value,class:l([r.$style[`project-link`]])},{default:s(()=>[a(u,{icon:b.value,"border-less":!0,size:`mini`,title:x.value},null,8,[`icon`,`title`]),a(t(h),{size:`medium`,color:`text-base`,class:l(r.$style[`project-label`]),title:x.value},{default:s(()=>[e(c(x.value),1)]),_:1},8,[`class`,`title`])]),_:1},8,[`to`,`class`])],34))}}),v=`_dragging_1a0u6_6`,y=d(_,[[`__cssModules`,{$style:{"home-project":`_home-project_1a0u6_1`,dragging:v,"project-link":`_project-link_1a0u6_19`,"project-label":`_project-label_1a0u6_25`}}]]);export{y as t};
1
+ try{(function(){var e=typeof window<`u`?window:typeof global<`u`?global:typeof globalThis<`u`?globalThis:typeof self<`u`?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]=`6a483101-da12-4b6d-970d-0d6d6734cb55`,e._sentryDebugIdIdentifier=`sentry-dbid-6a483101-da12-4b6d-970d-0d6d6734cb55`)})()}catch{}import{Bd as e,Bf as t,Ld as n,Nd as r,Ud as i,Vd as a,af as o,bf as s,fp as c,sp as l}from"./vendor-BCjXakEm.js";import{$c as u,Cw as d,If as f,Ow as p,SC as m,dw as h,oS as g}from"./app-BVFAtyJy.js";var _=i({__name:`ProjectBreadcrumb`,props:{currentProject:{default:void 0},isDragging:{type:Boolean,default:!1},isShared:{type:Boolean,default:!1},icon:{default:void 0}},emits:[`projectHover`,`projectDrop`],setup(i,{emit:d}){let _=i,v=d,y=p(),b=r(()=>_.icon?_.icon:_.isShared?{type:`icon`,value:`share`}:_.currentProject?.type===f.Personal?{type:`icon`,value:`user`}:_.currentProject?.name?g(_.currentProject.icon)?_.currentProject.icon:{type:`icon`,value:`layers`}:{type:`icon`,value:`house`}),x=r(()=>_.isShared?y.baseText(`projects.menu.shared`):_.currentProject?.type===f.Personal?y.baseText(`projects.menu.personal`):_.currentProject?.name),S=r(()=>_.isShared?`/shared`:_.currentProject?`/projects/${_.currentProject.id}`:`/home`),C=()=>{v(`projectHover`)},w=()=>{_.isDragging&&v(`projectDrop`)};return(r,d)=>(o(),n(`div`,{class:l({[r.$style[`home-project`]]:!0,[r.$style.dragging]:i.isDragging}),"data-test-id":`home-project`,"data-droppable":``,onMouseenter:C,onMouseup:d[0]||=e=>i.isDragging?w():null},[a(t(m),{to:S.value,class:l([r.$style[`project-link`]])},{default:s(()=>[a(u,{icon:b.value,"border-less":!0,size:`mini`,title:x.value},null,8,[`icon`,`title`]),a(t(h),{size:`medium`,color:`text-base`,class:l(r.$style[`project-label`]),title:x.value},{default:s(()=>[e(c(x.value),1)]),_:1},8,[`class`,`title`])]),_:1},8,[`to`,`class`])],34))}}),v=`_dragging_1a0u6_6`,y=d(_,[[`__cssModules`,{$style:{"home-project":`_home-project_1a0u6_1`,dragging:v,"project-link":`_project-link_1a0u6_19`,"project-label":`_project-label_1a0u6_25`}}]]);export{y as t};
@@ -1 +1 @@
1
- try{(function(){var e=typeof window<`u`?window:typeof global<`u`?global:typeof globalThis<`u`?globalThis:typeof self<`u`?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]=`820af469-680f-40e8-873d-427f6949dc3a`,e._sentryDebugIdIdentifier=`sentry-dbid-820af469-680f-40e8-873d-427f6949dc3a`)})()}catch{}import{$d as e,Bf as t,Fd as n,Mf as r,Ud as i,Xd as a,af as o,mf as s,sp as c,vf as l}from"./vendor-BCjXakEm.js";import{Af as u,Ow as d,Po as f,kf as p}from"./app-Cb14aX4e.js";var m=i({inheritAttrs:!1,__name:`ProjectFilter`,props:a({placeholder:{},size:{}},{modelValue:{required:!0},modelModifiers:{}}),emits:[`update:modelValue`],setup(i){let a=s(i,`modelValue`),m=d(),h=u(),g=p(),_=/^<([A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,})>$/,v=e=>!!e.name&&!_.test(e.name.trim()),y=r(null),b=e=>[...h.availableProjects,...h.myProjects].find(t=>t.id===e)??null;return l(a,e=>{if(!e){y.value=null;return}y.value?.id!==e.id&&(y.value=b(e.id))},{immediate:!0}),l(y,e=>{let t=e?{id:e.id}:null;t?.id!==a.value?.id&&(a.value=t)}),e(async()=>{h.globalProjectPermissions.list||await h.getAvailableProjects(),a.value&&!y.value&&(y.value=b(a.value.id))}),(e,r)=>(o(),n(f,{modelValue:y.value,"onUpdate:modelValue":r[0]||=e=>y.value=e,class:c(e.$attrs.class),"search-fn":t(g),"filter-fn":v,placeholder:i.placeholder,"empty-options-text":t(m).baseText(`projects.sharing.noMatchingProjects`),size:i.size,clearable:``,onClear:r[1]||=e=>y.value=null},null,8,[`modelValue`,`class`,`search-fn`,`placeholder`,`empty-options-text`,`size`]))}});export{m as default};
1
+ try{(function(){var e=typeof window<`u`?window:typeof global<`u`?global:typeof globalThis<`u`?globalThis:typeof self<`u`?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]=`820af469-680f-40e8-873d-427f6949dc3a`,e._sentryDebugIdIdentifier=`sentry-dbid-820af469-680f-40e8-873d-427f6949dc3a`)})()}catch{}import{$d as e,Bf as t,Fd as n,Mf as r,Ud as i,Xd as a,af as o,mf as s,sp as c,vf as l}from"./vendor-BCjXakEm.js";import{Af as u,Ow as d,Po as f,kf as p}from"./app-BVFAtyJy.js";var m=i({inheritAttrs:!1,__name:`ProjectFilter`,props:a({placeholder:{},size:{}},{modelValue:{required:!0},modelModifiers:{}}),emits:[`update:modelValue`],setup(i){let a=s(i,`modelValue`),m=d(),h=u(),g=p(),_=/^<([A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,})>$/,v=e=>!!e.name&&!_.test(e.name.trim()),y=r(null),b=e=>[...h.availableProjects,...h.myProjects].find(t=>t.id===e)??null;return l(a,e=>{if(!e){y.value=null;return}y.value?.id!==e.id&&(y.value=b(e.id))},{immediate:!0}),l(y,e=>{let t=e?{id:e.id}:null;t?.id!==a.value?.id&&(a.value=t)}),e(async()=>{h.globalProjectPermissions.list||await h.getAvailableProjects(),a.value&&!y.value&&(y.value=b(a.value.id))}),(e,r)=>(o(),n(f,{modelValue:y.value,"onUpdate:modelValue":r[0]||=e=>y.value=e,class:c(e.$attrs.class),"search-fn":t(g),"filter-fn":v,placeholder:i.placeholder,"empty-options-text":t(m).baseText(`projects.sharing.noMatchingProjects`),size:i.size,clearable:``,onClear:r[1]||=e=>y.value=null},null,8,[`modelValue`,`class`,`search-fn`,`placeholder`,`empty-options-text`,`size`]))}});export{m as default};
@@ -1 +1 @@
1
- try{(function(){var e=typeof window<`u`?window:typeof global<`u`?global:typeof globalThis<`u`?globalThis:typeof self<`u`?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]=`94e3ca9a-744f-4c73-921a-efd9a870ef66`,e._sentryDebugIdIdentifier=`sentry-dbid-94e3ca9a-744f-4c73-921a-efd9a870ef66`)})()}catch{}import{Bd as e,Bf as t,Fd as n,Id as r,Ld as i,Mf as a,Nd as o,Pd as s,Pu as c,Ud as l,Vd as u,Wu as d,Zd as f,af as p,as as m,bf as h,cf as g,ef as _,fp as v,gf as y,kd as b,nf as x,os as ee,sp as S,vf as C}from"./vendor-BCjXakEm.js";import{$C as w,$c as te,Af as T,Cw as E,Fp as ne,Gr as re,If as D,M_ as O,Mf as k,My as A,OC as ie,Ow as j,PS as M,Q_ as N,SC as P,Ur as F,Y_ as I,Zi as L,bw as ae,dw as R,ev as oe,jf as se,m as ce,nv as z,oS as le,p as B,pw as V,qp as ue,tv as de,vw as H,yw as U,zh as fe}from"./app-Cb14aX4e.js";import{t as W}from"./promotions.eventBus-DoylFIQA.js";import{i as pe,t as G}from"./readyToRun.store-BAWaovPu.js";import{t as me}from"./useLatestFetch-Dh02VuBH.js";import{n as K}from"./useInstancePromotionConnection-C7sbWPxI.js";import{t as q}from"./promotions.api-CRbBbJs2.js";function he(e,t){if(!e.dynamicRoute)return e;let n={name:e.dynamicRoute.name};e.dynamicRoute.includeProjectId&&t&&(n.params={projectId:t});let{dynamicRoute:r,...i}=e;return{...i,to:n}}function ge(e,t){return e.map(e=>he(e,t))}var _e=l({__name:`ProjectTabs`,props:{showSettings:{type:Boolean,default:!1},showExecutions:{type:Boolean,default:!0},pageType:{default:`project`},additionalTabs:{default:()=>[]}},setup(e){let r=e,i=j(),s=m(),c=T(),l=N(),u=a(``),d=o(()=>u.value?String(u.value):``),f=o(()=>Array.isArray(s?.params?.projectId)?s.params.projectId[0]:s?.params?.projectId),h=o(()=>c.currentProject?.type===D.Public),g=()=>f.value?{workflows:{name:I.PROJECTS_WORKFLOWS,params:{projectId:f.value}},credentials:{name:I.PROJECTS_CREDENTIALS,params:{projectId:f.value}},executions:{name:I.PROJECTS_EXECUTIONS,params:{projectId:f.value}},variables:{name:I.PROJECTS_VARIABLES,params:{projectId:f.value}}}:r.pageType===`shared`?{workflows:{name:I.SHARED_WORKFLOWS},credentials:{name:I.SHARED_CREDENTIALS},executions:{name:I.NOT_FOUND},variables:{name:I.NOT_FOUND}}:{workflows:{name:I.WORKFLOWS},credentials:{name:I.CREDENTIALS},executions:{name:I.EXECUTIONS},variables:{name:I.HOME_VARIABLES}},_=(e,t,n)=>({label:i.baseText(e),value:n[t].name,to:n[t]}),v=o(()=>{let e=g(),t=[_(`mainSidebar.workflows`,`workflows`,e),_(`mainSidebar.credentials`,`credentials`,e)];if(r.showExecutions&&t.push(_(`mainSidebar.executions`,`executions`,e)),(r.pageType===`overview`||r.pageType===`project`&&!h.value)&&t.push(_(`mainSidebar.variables`,`variables`,e)),r.additionalTabs?.length){let e=ge(r.additionalTabs,f.value);for(let n of e){let{insertAfter:e,...r}=n,i=e?t.findIndex(t=>t.value===e):-1;i===-1?t.push(r):t.splice(i+1,0,r)}}return r.showSettings&&t.push({label:i.baseText(`projects.settings`),value:I.PROJECT_SETTINGS,to:{name:I.PROJECT_SETTINGS,params:{projectId:f.value}}}),t});C(()=>s?.name,()=>{u.value=s.name===I.PROJECTS_FOLDERS?I.PROJECTS_WORKFLOWS:s.name},{immediate:!0});function y(e){u.value===`variables`&&l.track(`User clicked project variables tab`,{project_id:f.value}),u.value=e}return(e,r)=>(p(),n(t(M),{"model-value":d.value,options:v.value,"data-test-id":`project-tabs`,"onUpdate:modelValue":y},null,8,[`model-value`,`options`]))}}),ve=E(l({__name:`ProjectCreateResource`,props:{actions:{},disabled:{type:Boolean},variant:{}},emits:[`action`],setup(e,{expose:n,emit:r}){let a=r,o=y(`actionToggleRef`);return n({openActionToggle:e=>o.value?.openActionToggle(e)}),(n,r)=>(p(),i(`div`,{class:S([n.$style.buttonGroup])},[g(n.$slots,`default`),u(t(w),{ref_key:`actionToggleRef`,ref:o,"data-test-id":`add-resource`,actions:e.actions,placement:`bottom-end`,teleported:!1,onAction:r[0]||=e=>a(`action`,e)},{default:h(()=>[u(t(H),{disabled:e.disabled,class:S([n.$style.buttonGroupDropdown]),icon:`chevron-down`,variant:e.variant??`solid`},null,8,[`disabled`,`class`,`variant`])]),_:1},8,[`actions`])],2))}}),[[`__cssModules`,{$style:{buttonGroup:`_buttonGroup_s7s71_1`,buttonGroupDropdown:`_buttonGroupDropdown_s7s71_12`}}]]),ye=(e,t,n)=>{if(!e||t<=0)return``;let r=.55*n,i=Math.floor(t/r);if(e.length<=i)return``;let a=e.slice(0,i),o=a.lastIndexOf(` `);return a.slice(0,o===-1?i:o)+`...`},be=l({__name:`ReadyToRunButton`,props:{hasActiveCallouts:{type:Boolean}},setup(i){let a=i,s=m(),c=j(),l=pe(),u=T(),d=k(),f=L(),g=G(),_=o(()=>A(u.currentProject?.scopes??u.personalProject?.scopes)),y=o(()=>g.getButtonVisibility(f.totalWorkflowCount>0,_.value.workflow.create,d.preferences.branchReadOnly)&&!a.hasActiveCallouts),b=async()=>{let e=l.isOverviewSubPage?u.personalProject?.id:s.params.projectId;try{await g.claimCreditsAndOpenWorkflow(`button`,s.params.folderId,e)}catch{}};return(i,a)=>y.value?(p(),n(t(U),{key:0,variant:`subtle`,"data-test-id":`ready-to-run-button`,icon:`zap`,loading:t(g).claimingCredits,disabled:t(d).preferences.branchReadOnly||t(g).claimingCredits,onClick:b},{default:h(()=>[e(v(t(c).baseText(`workflows.empty.readyToRun`)),1)]),_:1},8,[`loading`,`disabled`])):r(``,!0)}});function J(e,t,n){let r=z(),{next:i}=me(),o=a(0),s=a(!1);async function c(){let a=i(),c=e.value;if(o.value=0,s.value=!1,!(!n.value||!c))try{let{changes:e}=await q(r.restApiContext,c,t);a()&&(o.value=e.length)}catch{a()&&(s.value=!0)}}return C([e,n],c,{immediate:!0}),{count:o,failed:s,refetch:c}}var xe=E(l({__name:`PromotionBanners`,setup(n){let a=j(),s=ee(),c=ne(),l=oe(),d=T(),{isEnabled:f}=ce(),m=o(()=>d.currentProject?.id),g=o(()=>d.currentProject?.type===D.Team),y=o(()=>A(d.currentProject?.scopes).project),b=o(()=>A(l.currentUser?.globalScopes).gitConnection),{connection:w,hasPromoteConfig:te,hasApplyConfig:E,load:re}=K(),O=o(()=>g.value&&f.value&&!!y.value.export&&!!b.value.list&&(!!b.value.push||!!b.value.pull)),k=o(()=>O.value&&te.value&&!!b.value.push),ie=o(()=>O.value&&E.value&&!!b.value.pull);C([O,m],async([e])=>{e&&await re()},{immediate:!0});let{count:M,refetch:N}=J(m,`promote`,k),{count:F,failed:L,refetch:se}=J(m,`apply`,ie);async function z({projectId:e,project:t}){t&&d.currentProjectId===e&&d.setCurrentProject(t),await Promise.all([N(),se()])}async function le({projectId:e}){d.currentProjectId===e&&await N()}async function V({projectId:e}){d.currentProjectId===e&&await s.replace({name:I.HOMEPAGE})}x(()=>{W.on(`applied`,z),W.on(`promoted`,le),W.on(`projectRemoved`,V)}),_(()=>{W.off(`applied`,z),W.off(`promoted`,le),W.off(`projectRemoved`,V)});let ue=o(()=>M.value===1?a.baseText(`promotions.banner.singleChangeAvailable`):a.baseText(`promotions.banner.changesAvailable`,{interpolate:{count:String(M.value)}})),de=o(()=>L.value?a.baseText(`promotions.banner.incoming.error`):F.value===1?a.baseText(`promotions.banner.incoming.singleChangeAvailable`):a.baseText(`promotions.banner.incoming.changesAvailable`,{interpolate:{count:String(F.value)}}));function H(){m.value&&c.openModalWithData({name:B,data:{projectId:m.value,direction:`promote`}})}function U(){let e=w.value?.configs.apply;!m.value||!w.value||!e||c.openModalWithData({name:B,data:{projectId:m.value,direction:`apply`,apply:{connectionId:w.value.id,configId:e.id,branchName:e.settings.branchName}}})}return(n,o)=>(p(),i(`div`,null,[k.value&&t(M)>0?(p(),i(`div`,{key:0,class:S(n.$style.banner),"data-test-id":`promotion-banner`},[u(t(ae),{icon:`upload`,size:`small`}),u(t(R),{size:`small`},{default:h(()=>[e(v(ue.value),1)]),_:1}),u(t(P),{size:`small`,"data-test-id":`promotion-banner-link`,onClick:H},{default:h(()=>[e(v(t(a).baseText(`promotions.banner.viewChanges`)),1)]),_:1})],2)):r(``,!0),ie.value&&(t(F)>0||t(L))?(p(),i(`div`,{key:1,class:S(n.$style.banner),"data-test-id":`promotion-incoming-banner`},[u(t(ae),{icon:t(L)?`triangle-alert`:`download`,size:`small`},null,8,[`icon`]),u(t(R),{size:`small`},{default:h(()=>[e(v(de.value),1)]),_:1}),u(t(P),{size:`small`,"data-test-id":`promotion-incoming-banner-link`,onClick:U},{default:h(()=>[e(v(t(a).baseText(`promotions.banner.viewChanges`)),1)]),_:1})],2)):r(``,!0)]))}}),[[`__cssModules`,{$style:{banner:`_banner_k33wq_1`}}]]),Se={style:{display:`flex`,gap:`var(--spacing--xs)`,"align-items":`center`}},Y=E(l({__name:`ProjectHeader`,props:{hasActiveCallouts:{type:Boolean},mainButton:{}},emits:[`createFolder`],setup(l,{emit:_}){let y=m(),x=ee(),C=j(),w=T(),E=k(),M=de(),P=ne(),L=N(),{createAgent:ae}=F(),ce=oe(),z=se(),B=o(()=>w.currentProject?.id),W=o(()=>w.currentProject?.type===D.Team),G=o(()=>B.value?z.isFavorite(B.value,`project`):!1);async function me(){B.value&&await z.toggleFavorite(B.value,`project`)}let K=pe(),q=l,he=_,ge=o(()=>w.currentProject?.type===D.Personal?{type:`icon`,value:`user`}:w.currentProject?.name?le(w.currentProject.icon)?w.currentProject.icon:{type:`icon`,value:`layers`}:{type:`icon`,value:`house`}),J=o(()=>w.currentProject??w.personalProject),{canCreate:Y}=re(()=>J.value?.id),Ce=o(()=>J.value?.type===D.Personal),we=o(()=>w.currentProject?w.currentProject.type===D.Personal?C.baseText(`projects.menu.personal`):w.currentProject.name:K.isSharedSubPage?C.baseText(`projects.header.shared.title`):K.isOverviewSubPage?C.baseText(`projects.menu.overview`):Ce.value?C.baseText(`projects.menu.personal`):null),Te=o(()=>A(w.currentProject?.scopes).project),Ee=o(()=>A(w.currentProject?.scopes).projectVariable),De=o(()=>A(ce.currentUser?.globalScopes).variable),Oe=o(()=>A(w.currentProject?.scopes).externalSecretsProvider),ke=o(()=>!!y?.params?.projectId&&(!!Te.value.update||!!Te.value.manageMembers||!!Oe.value.read)&&w.currentProject?.type===D.Team),Ae=o(()=>M.isFoldersFeatureEnabled&&[I.PROJECTS_WORKFLOWS,I.PROJECTS_FOLDERS].includes(y.name)),je=o(()=>K.isSharedSubPage?`shared`:K.isOverviewSubPage?`overview`:`project`),Me=o(()=>{let e=P.moduleTabs[je.value];return Object.keys(e).filter(e=>M.isModuleActive(e)&&(e!==`agents`||M.isAgentsEnabled)).flatMap(t=>e[t])}),X={WORKFLOW:`workflow`,CREDENTIAL:`credential`,FOLDER:`folder`,DATA_TABLE:`dataTable`,VARIABLE:`variable`,AGENT:`agent`},Ne=o(()=>({value:X.WORKFLOW,label:C.baseText(`projects.header.create.workflow`),icon:E.preferences.branchReadOnly?`lock`:void 0,size:`mini`,disabled:E.preferences.branchReadOnly||!A(J.value?.scopes).workflow.create})),Pe=o(()=>({value:X.CREDENTIAL,label:C.baseText(`projects.header.create.credential`),icon:E.preferences.branchReadOnly?`lock`:void 0,size:`mini`,disabled:E.preferences.branchReadOnly||!A(J.value?.scopes).credential.create})),Fe=o(()=>({value:X.DATA_TABLE,label:C.baseText(`dataTable.add.button.label`),icon:E.preferences.branchReadOnly?`lock`:void 0,size:`mini`,disabled:E.preferences.branchReadOnly||!A(J.value?.scopes)?.dataTable?.create})),Ie=o(()=>({value:X.VARIABLE,label:C.baseText(`variables.add.button.label`),icon:E.preferences.branchReadOnly?`lock`:void 0,size:`mini`,disabled:E.preferences.branchReadOnly||!M.isEnterpriseFeatureEnabled[O.Variables]||!Ee.value.create&&!De.value.create})),Le=o(()=>({value:X.AGENT,label:C.baseText(`projects.header.create.agent`),size:`mini`,disabled:!Y.value})),Z=o(()=>q.mainButton===X.AGENT&&!M.isAgentsEnabled?X.WORKFLOW:q.mainButton??X.WORKFLOW),Re=o(()=>{switch(Z.value){case X.CREDENTIAL:return Pe.value;case X.DATA_TABLE:return Fe.value;case X.VARIABLE:return Ie.value;case X.AGENT:return Le.value;case X.WORKFLOW:default:return Ne.value}}),ze=o(()=>{let e=[];return Z.value!==X.WORKFLOW&&e.push({value:X.WORKFLOW,label:C.baseText(`projects.header.create.workflow`),disabled:E.preferences.branchReadOnly||!A(J.value?.scopes).workflow.create}),Z.value!==X.CREDENTIAL&&e.push({value:X.CREDENTIAL,label:C.baseText(`projects.header.create.credential`),disabled:E.preferences.branchReadOnly||!A(J.value?.scopes).credential.create}),Z.value!==X.VARIABLE&&M.isEnterpriseFeatureEnabled[O.Variables]&&e.push({value:X.VARIABLE,label:C.baseText(`variables.add.button.label`),disabled:E.preferences.branchReadOnly||!A(J.value?.scopes).projectVariable.create}),Ae.value&&e.push({value:X.FOLDER,label:C.baseText(`projects.header.create.folder`),disabled:E.preferences.branchReadOnly||!A(J.value?.scopes).folder.create}),M.isDataTableFeatureEnabled&&Z.value!==X.DATA_TABLE&&e.push({value:X.DATA_TABLE,label:C.baseText(`dataTable.add.button.label`),disabled:E.preferences.branchReadOnly||!A(J.value?.scopes)?.dataTable?.create}),M.isAgentsEnabled&&Z.value!==X.AGENT&&e.push({value:X.AGENT,label:C.baseText(`projects.header.create.agent`),disabled:!Y.value}),e}),Be=o(()=>!K.isOverviewSubPage&&!K.isSharedSubPage&&!Ce.value);function Ve(e){return[I.PROJECTS_CREDENTIALS,I.CREDENTIALS,I.SHARED_CREDENTIALS].includes(e)}function He(e){return[I.PROJECTS_WORKFLOWS,I.WORKFLOWS,I.SHARED_WORKFLOWS,I.PROJECTS_FOLDERS].includes(e)}function Ue(e){if(Ve(e))return`credentials_list`;if(He(e))return`workflow_list`}let We={[X.WORKFLOW]:e=>{x.push({name:I.NEW_WORKFLOW,query:{projectId:e,parentFolderId:y.params.folderId,uiContext:Ue(y.name?.toString()??``)}})},[X.CREDENTIAL]:e=>{x.push({name:I.PROJECTS_CREDENTIALS,params:{projectId:e,credentialId:`create`},query:{uiContext:Ue(y.name?.toString()??``)}})},[X.FOLDER]:()=>{he(`createFolder`)},[X.DATA_TABLE]:e=>{x.push({name:fe,params:{projectId:e,new:`new`}})},[X.VARIABLE]:()=>{P.openModalWithData({name:ue,data:{mode:`new`}}),L.track(`User clicked header add variable button`)},[X.AGENT]:(e,t)=>{ae(t,e)}},Ge=o(()=>K.isSharedSubPage?C.baseText(`projects.header.shared.subtitle`):K.isOverviewSubPage?C.baseText(M.isDataTableFeatureEnabled?`projects.header.overview.subtitleWithDataTables`:`projects.header.overview.subtitle`):Ce.value?C.baseText(M.isDataTableFeatureEnabled?`projects.header.personal.subtitleWithDataTables`:`projects.header.personal.subtitle`):null),Q=o(()=>K.isProjectsSubPage?w.currentProject?.description:null),Ke=o(()=>G.value?`star-filled`:`star`),$=a(null),{width:qe}=c($),Je=a(null),{width:Ye}=c(Je),Xe=a(null);d($,()=>{if(!$.value)return;let e=$.value.querySelector(`span[data-test-id="project-subtitle"]`);if(e){let t=window.getComputedStyle(e);Xe.value=parseFloat(t.fontSize)}});let Ze=o(()=>{if(!Q.value)return``;let e=qe.value-Ye.value,t=Xe.value??14;return ye(Q.value,e,t)}),Qe=(e,t)=>{let n=We[e];J.value&&n(J.value.id,t)};return(a,o)=>(p(),i(`div`,null,[s(`div`,{ref_key:`projectHeaderRef`,ref:$,class:S(a.$style.projectHeader)},[s(`div`,{class:S(a.$style.projectDetails)},[Be.value?(p(),n(te,{key:0,icon:ge.value,"border-less":!0,size:`medium`},null,8,[`icon`])):r(``,!0),s(`div`,{class:S(a.$style.headerActions)},[we.value?(p(),n(t(ie),{key:0,bold:``,tag:`h2`,size:`xlarge`,"data-test-id":`project-name`},{default:h(()=>[e(v(we.value),1)]),_:1})):r(``,!0),Ge.value?(p(),n(t(R),{key:1,color:`text-light`,"data-test-id":`project-subtitle`},{default:h(()=>[e(v(Ge.value),1)]),_:1})):Q.value?(p(),i(`div`,{key:2,class:S(a.$style.projectDescriptionWrapper)},[u(t(R),{color:`text-light`,"data-test-id":`project-subtitle`},{default:h(()=>[e(v(Ze.value||Q.value),1)]),_:1}),Ze.value?(p(),i(`div`,{key:0,class:S(a.$style.tooltip)},[u(t(R),{color:`text-light`},{default:h(()=>[e(v(Q.value),1)]),_:1})],2)):r(``,!0)],2)):r(``,!0)],2),W.value?(p(),n(t(H),{key:1,class:S([a.$style.favoriteBtn,G.value&&a.$style.favoriteBtnActive]),icon:Ke.value,"aria-label":t(C).baseText(G.value?`favorites.remove`:`favorites.add`),variant:`ghost`,size:`medium`,"data-test-id":`project-favorite-btn`,onClick:b(me,[`stop`])},null,8,[`class`,`icon`,`aria-label`])):r(``,!0)],2),t(y).name===t(I).PROJECT_SETTINGS?r(``,!0):(p(),i(`div`,{key:0,ref_key:`headerActionsRef`,ref:Je,class:S([a.$style.headerActions])},[u(t(V),{disabled:!t(E).preferences.branchReadOnly,content:t(C).baseText(`readOnlyEnv.cantAdd.any`)},{default:h(()=>[s(`div`,Se,[u(be,{"has-active-callouts":q.hasActiveCallouts},null,8,[`has-active-callouts`]),u(ve,{"data-test-id":`add-resource-buttons`,actions:ze.value,disabled:t(E).preferences.branchReadOnly,onAction:o[1]||=e=>Qe(e,`dropdown`)},{default:h(()=>[u(t(U),f({"data-test-id":`add-resource-${Z.value}`},Re.value,{size:`medium`,onClick:o[0]||=e=>Qe(Z.value,`button`)}),null,16,[`data-test-id`])]),_:1},8,[`actions`,`disabled`])])]),_:1},8,[`disabled`,`content`])],2))],2),g(a.$slots,`default`),s(`div`,{class:S(a.$style.actions)},[u(_e,{"page-type":je.value,"show-executions":!t(K).isSharedSubPage,"show-settings":ke.value,"additional-tabs":Me.value},null,8,[`page-type`,`show-executions`,`show-settings`,`additional-tabs`])],2),u(xe)]))}}),[[`__cssModules`,{$style:{projectHeader:`_projectHeader_19xx4_113`,projectDetails:`_projectDetails_19xx4_120`,actions:`_actions_19xx4_125`,projectDescriptionWrapper:`_projectDescriptionWrapper_19xx4_129`,tooltip:`_tooltip_19xx4_133`,favoriteBtn:`_favoriteBtn_19xx4_150`,favoriteBtnActive:`_favoriteBtnActive_19xx4_157`,headerActions:`_headerActions_19xx4_171`}}]]);export{Y as t};
1
+ try{(function(){var e=typeof window<`u`?window:typeof global<`u`?global:typeof globalThis<`u`?globalThis:typeof self<`u`?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]=`94e3ca9a-744f-4c73-921a-efd9a870ef66`,e._sentryDebugIdIdentifier=`sentry-dbid-94e3ca9a-744f-4c73-921a-efd9a870ef66`)})()}catch{}import{Bd as e,Bf as t,Fd as n,Id as r,Ld as i,Mf as a,Nd as o,Pd as s,Pu as c,Ud as l,Vd as u,Wu as d,Zd as f,af as p,as as m,bf as h,cf as g,ef as _,fp as v,gf as y,kd as b,nf as x,os as ee,sp as S,vf as C}from"./vendor-BCjXakEm.js";import{$C as w,$c as te,Af as T,Cw as E,Fp as ne,Gr as re,If as D,M_ as O,Mf as k,My as A,OC as ie,Ow as j,PS as M,Q_ as N,SC as P,Ur as F,Y_ as I,Zi as L,bw as ae,dw as R,ev as oe,jf as se,m as ce,nv as z,oS as le,p as B,pw as V,qp as ue,tv as de,vw as H,yw as U,zh as fe}from"./app-BVFAtyJy.js";import{t as W}from"./promotions.eventBus-BiL7IxSM.js";import{i as pe,t as G}from"./readyToRun.store-sxBCkg6x.js";import{t as me}from"./useLatestFetch-Dh02VuBH.js";import{n as K}from"./useInstancePromotionConnection-0grHaFnh.js";import{t as q}from"./promotions.api-B-3a00Ey.js";function he(e,t){if(!e.dynamicRoute)return e;let n={name:e.dynamicRoute.name};e.dynamicRoute.includeProjectId&&t&&(n.params={projectId:t});let{dynamicRoute:r,...i}=e;return{...i,to:n}}function ge(e,t){return e.map(e=>he(e,t))}var _e=l({__name:`ProjectTabs`,props:{showSettings:{type:Boolean,default:!1},showExecutions:{type:Boolean,default:!0},pageType:{default:`project`},additionalTabs:{default:()=>[]}},setup(e){let r=e,i=j(),s=m(),c=T(),l=N(),u=a(``),d=o(()=>u.value?String(u.value):``),f=o(()=>Array.isArray(s?.params?.projectId)?s.params.projectId[0]:s?.params?.projectId),h=o(()=>c.currentProject?.type===D.Public),g=()=>f.value?{workflows:{name:I.PROJECTS_WORKFLOWS,params:{projectId:f.value}},credentials:{name:I.PROJECTS_CREDENTIALS,params:{projectId:f.value}},executions:{name:I.PROJECTS_EXECUTIONS,params:{projectId:f.value}},variables:{name:I.PROJECTS_VARIABLES,params:{projectId:f.value}}}:r.pageType===`shared`?{workflows:{name:I.SHARED_WORKFLOWS},credentials:{name:I.SHARED_CREDENTIALS},executions:{name:I.NOT_FOUND},variables:{name:I.NOT_FOUND}}:{workflows:{name:I.WORKFLOWS},credentials:{name:I.CREDENTIALS},executions:{name:I.EXECUTIONS},variables:{name:I.HOME_VARIABLES}},_=(e,t,n)=>({label:i.baseText(e),value:n[t].name,to:n[t]}),v=o(()=>{let e=g(),t=[_(`mainSidebar.workflows`,`workflows`,e),_(`mainSidebar.credentials`,`credentials`,e)];if(r.showExecutions&&t.push(_(`mainSidebar.executions`,`executions`,e)),(r.pageType===`overview`||r.pageType===`project`&&!h.value)&&t.push(_(`mainSidebar.variables`,`variables`,e)),r.additionalTabs?.length){let e=ge(r.additionalTabs,f.value);for(let n of e){let{insertAfter:e,...r}=n,i=e?t.findIndex(t=>t.value===e):-1;i===-1?t.push(r):t.splice(i+1,0,r)}}return r.showSettings&&t.push({label:i.baseText(`projects.settings`),value:I.PROJECT_SETTINGS,to:{name:I.PROJECT_SETTINGS,params:{projectId:f.value}}}),t});C(()=>s?.name,()=>{u.value=s.name===I.PROJECTS_FOLDERS?I.PROJECTS_WORKFLOWS:s.name},{immediate:!0});function y(e){u.value===`variables`&&l.track(`User clicked project variables tab`,{project_id:f.value}),u.value=e}return(e,r)=>(p(),n(t(M),{"model-value":d.value,options:v.value,"data-test-id":`project-tabs`,"onUpdate:modelValue":y},null,8,[`model-value`,`options`]))}}),ve=E(l({__name:`ProjectCreateResource`,props:{actions:{},disabled:{type:Boolean},variant:{}},emits:[`action`],setup(e,{expose:n,emit:r}){let a=r,o=y(`actionToggleRef`);return n({openActionToggle:e=>o.value?.openActionToggle(e)}),(n,r)=>(p(),i(`div`,{class:S([n.$style.buttonGroup])},[g(n.$slots,`default`),u(t(w),{ref_key:`actionToggleRef`,ref:o,"data-test-id":`add-resource`,actions:e.actions,placement:`bottom-end`,teleported:!1,onAction:r[0]||=e=>a(`action`,e)},{default:h(()=>[u(t(H),{disabled:e.disabled,class:S([n.$style.buttonGroupDropdown]),icon:`chevron-down`,variant:e.variant??`solid`},null,8,[`disabled`,`class`,`variant`])]),_:1},8,[`actions`])],2))}}),[[`__cssModules`,{$style:{buttonGroup:`_buttonGroup_s7s71_1`,buttonGroupDropdown:`_buttonGroupDropdown_s7s71_12`}}]]),ye=(e,t,n)=>{if(!e||t<=0)return``;let r=.55*n,i=Math.floor(t/r);if(e.length<=i)return``;let a=e.slice(0,i),o=a.lastIndexOf(` `);return a.slice(0,o===-1?i:o)+`...`},be=l({__name:`ReadyToRunButton`,props:{hasActiveCallouts:{type:Boolean}},setup(i){let a=i,s=m(),c=j(),l=pe(),u=T(),d=k(),f=L(),g=G(),_=o(()=>A(u.currentProject?.scopes??u.personalProject?.scopes)),y=o(()=>g.getButtonVisibility(f.totalWorkflowCount>0,_.value.workflow.create,d.preferences.branchReadOnly)&&!a.hasActiveCallouts),b=async()=>{let e=l.isOverviewSubPage?u.personalProject?.id:s.params.projectId;try{await g.claimCreditsAndOpenWorkflow(`button`,s.params.folderId,e)}catch{}};return(i,a)=>y.value?(p(),n(t(U),{key:0,variant:`subtle`,"data-test-id":`ready-to-run-button`,icon:`zap`,loading:t(g).claimingCredits,disabled:t(d).preferences.branchReadOnly||t(g).claimingCredits,onClick:b},{default:h(()=>[e(v(t(c).baseText(`workflows.empty.readyToRun`)),1)]),_:1},8,[`loading`,`disabled`])):r(``,!0)}});function J(e,t,n){let r=z(),{next:i}=me(),o=a(0),s=a(!1);async function c(){let a=i(),c=e.value;if(o.value=0,s.value=!1,!(!n.value||!c))try{let{changes:e}=await q(r.restApiContext,c,t);a()&&(o.value=e.length)}catch{a()&&(s.value=!0)}}return C([e,n],c,{immediate:!0}),{count:o,failed:s,refetch:c}}var xe=E(l({__name:`PromotionBanners`,setup(n){let a=j(),s=ee(),c=ne(),l=oe(),d=T(),{isEnabled:f}=ce(),m=o(()=>d.currentProject?.id),g=o(()=>d.currentProject?.type===D.Team),y=o(()=>A(d.currentProject?.scopes).project),b=o(()=>A(l.currentUser?.globalScopes).gitConnection),{connection:w,hasPromoteConfig:te,hasApplyConfig:E,load:re}=K(),O=o(()=>g.value&&f.value&&!!y.value.export&&!!b.value.list&&(!!b.value.push||!!b.value.pull)),k=o(()=>O.value&&te.value&&!!b.value.push),ie=o(()=>O.value&&E.value&&!!b.value.pull);C([O,m],async([e])=>{e&&await re()},{immediate:!0});let{count:M,refetch:N}=J(m,`promote`,k),{count:F,failed:L,refetch:se}=J(m,`apply`,ie);async function z({projectId:e,project:t}){t&&d.currentProjectId===e&&d.setCurrentProject(t),await Promise.all([N(),se()])}async function le({projectId:e}){d.currentProjectId===e&&await N()}async function V({projectId:e}){d.currentProjectId===e&&await s.replace({name:I.HOMEPAGE})}x(()=>{W.on(`applied`,z),W.on(`promoted`,le),W.on(`projectRemoved`,V)}),_(()=>{W.off(`applied`,z),W.off(`promoted`,le),W.off(`projectRemoved`,V)});let ue=o(()=>M.value===1?a.baseText(`promotions.banner.singleChangeAvailable`):a.baseText(`promotions.banner.changesAvailable`,{interpolate:{count:String(M.value)}})),de=o(()=>L.value?a.baseText(`promotions.banner.incoming.error`):F.value===1?a.baseText(`promotions.banner.incoming.singleChangeAvailable`):a.baseText(`promotions.banner.incoming.changesAvailable`,{interpolate:{count:String(F.value)}}));function H(){m.value&&c.openModalWithData({name:B,data:{projectId:m.value,direction:`promote`}})}function U(){let e=w.value?.configs.apply;!m.value||!w.value||!e||c.openModalWithData({name:B,data:{projectId:m.value,direction:`apply`,apply:{connectionId:w.value.id,configId:e.id,branchName:e.settings.branchName}}})}return(n,o)=>(p(),i(`div`,null,[k.value&&t(M)>0?(p(),i(`div`,{key:0,class:S(n.$style.banner),"data-test-id":`promotion-banner`},[u(t(ae),{icon:`upload`,size:`small`}),u(t(R),{size:`small`},{default:h(()=>[e(v(ue.value),1)]),_:1}),u(t(P),{size:`small`,"data-test-id":`promotion-banner-link`,onClick:H},{default:h(()=>[e(v(t(a).baseText(`promotions.banner.viewChanges`)),1)]),_:1})],2)):r(``,!0),ie.value&&(t(F)>0||t(L))?(p(),i(`div`,{key:1,class:S(n.$style.banner),"data-test-id":`promotion-incoming-banner`},[u(t(ae),{icon:t(L)?`triangle-alert`:`download`,size:`small`},null,8,[`icon`]),u(t(R),{size:`small`},{default:h(()=>[e(v(de.value),1)]),_:1}),u(t(P),{size:`small`,"data-test-id":`promotion-incoming-banner-link`,onClick:U},{default:h(()=>[e(v(t(a).baseText(`promotions.banner.viewChanges`)),1)]),_:1})],2)):r(``,!0)]))}}),[[`__cssModules`,{$style:{banner:`_banner_k33wq_1`}}]]),Se={style:{display:`flex`,gap:`var(--spacing--xs)`,"align-items":`center`}},Y=E(l({__name:`ProjectHeader`,props:{hasActiveCallouts:{type:Boolean},mainButton:{}},emits:[`createFolder`],setup(l,{emit:_}){let y=m(),x=ee(),C=j(),w=T(),E=k(),M=de(),P=ne(),L=N(),{createAgent:ae}=F(),ce=oe(),z=se(),B=o(()=>w.currentProject?.id),W=o(()=>w.currentProject?.type===D.Team),G=o(()=>B.value?z.isFavorite(B.value,`project`):!1);async function me(){B.value&&await z.toggleFavorite(B.value,`project`)}let K=pe(),q=l,he=_,ge=o(()=>w.currentProject?.type===D.Personal?{type:`icon`,value:`user`}:w.currentProject?.name?le(w.currentProject.icon)?w.currentProject.icon:{type:`icon`,value:`layers`}:{type:`icon`,value:`house`}),J=o(()=>w.currentProject??w.personalProject),{canCreate:Y}=re(()=>J.value?.id),Ce=o(()=>J.value?.type===D.Personal),we=o(()=>w.currentProject?w.currentProject.type===D.Personal?C.baseText(`projects.menu.personal`):w.currentProject.name:K.isSharedSubPage?C.baseText(`projects.header.shared.title`):K.isOverviewSubPage?C.baseText(`projects.menu.overview`):Ce.value?C.baseText(`projects.menu.personal`):null),Te=o(()=>A(w.currentProject?.scopes).project),Ee=o(()=>A(w.currentProject?.scopes).projectVariable),De=o(()=>A(ce.currentUser?.globalScopes).variable),Oe=o(()=>A(w.currentProject?.scopes).externalSecretsProvider),ke=o(()=>!!y?.params?.projectId&&(!!Te.value.update||!!Te.value.manageMembers||!!Oe.value.read)&&w.currentProject?.type===D.Team),Ae=o(()=>M.isFoldersFeatureEnabled&&[I.PROJECTS_WORKFLOWS,I.PROJECTS_FOLDERS].includes(y.name)),je=o(()=>K.isSharedSubPage?`shared`:K.isOverviewSubPage?`overview`:`project`),Me=o(()=>{let e=P.moduleTabs[je.value];return Object.keys(e).filter(e=>M.isModuleActive(e)&&(e!==`agents`||M.isAgentsEnabled)).flatMap(t=>e[t])}),X={WORKFLOW:`workflow`,CREDENTIAL:`credential`,FOLDER:`folder`,DATA_TABLE:`dataTable`,VARIABLE:`variable`,AGENT:`agent`},Ne=o(()=>({value:X.WORKFLOW,label:C.baseText(`projects.header.create.workflow`),icon:E.preferences.branchReadOnly?`lock`:void 0,size:`mini`,disabled:E.preferences.branchReadOnly||!A(J.value?.scopes).workflow.create})),Pe=o(()=>({value:X.CREDENTIAL,label:C.baseText(`projects.header.create.credential`),icon:E.preferences.branchReadOnly?`lock`:void 0,size:`mini`,disabled:E.preferences.branchReadOnly||!A(J.value?.scopes).credential.create})),Fe=o(()=>({value:X.DATA_TABLE,label:C.baseText(`dataTable.add.button.label`),icon:E.preferences.branchReadOnly?`lock`:void 0,size:`mini`,disabled:E.preferences.branchReadOnly||!A(J.value?.scopes)?.dataTable?.create})),Ie=o(()=>({value:X.VARIABLE,label:C.baseText(`variables.add.button.label`),icon:E.preferences.branchReadOnly?`lock`:void 0,size:`mini`,disabled:E.preferences.branchReadOnly||!M.isEnterpriseFeatureEnabled[O.Variables]||!Ee.value.create&&!De.value.create})),Le=o(()=>({value:X.AGENT,label:C.baseText(`projects.header.create.agent`),size:`mini`,disabled:!Y.value})),Z=o(()=>q.mainButton===X.AGENT&&!M.isAgentsEnabled?X.WORKFLOW:q.mainButton??X.WORKFLOW),Re=o(()=>{switch(Z.value){case X.CREDENTIAL:return Pe.value;case X.DATA_TABLE:return Fe.value;case X.VARIABLE:return Ie.value;case X.AGENT:return Le.value;case X.WORKFLOW:default:return Ne.value}}),ze=o(()=>{let e=[];return Z.value!==X.WORKFLOW&&e.push({value:X.WORKFLOW,label:C.baseText(`projects.header.create.workflow`),disabled:E.preferences.branchReadOnly||!A(J.value?.scopes).workflow.create}),Z.value!==X.CREDENTIAL&&e.push({value:X.CREDENTIAL,label:C.baseText(`projects.header.create.credential`),disabled:E.preferences.branchReadOnly||!A(J.value?.scopes).credential.create}),Z.value!==X.VARIABLE&&M.isEnterpriseFeatureEnabled[O.Variables]&&e.push({value:X.VARIABLE,label:C.baseText(`variables.add.button.label`),disabled:E.preferences.branchReadOnly||!A(J.value?.scopes).projectVariable.create}),Ae.value&&e.push({value:X.FOLDER,label:C.baseText(`projects.header.create.folder`),disabled:E.preferences.branchReadOnly||!A(J.value?.scopes).folder.create}),M.isDataTableFeatureEnabled&&Z.value!==X.DATA_TABLE&&e.push({value:X.DATA_TABLE,label:C.baseText(`dataTable.add.button.label`),disabled:E.preferences.branchReadOnly||!A(J.value?.scopes)?.dataTable?.create}),M.isAgentsEnabled&&Z.value!==X.AGENT&&e.push({value:X.AGENT,label:C.baseText(`projects.header.create.agent`),disabled:!Y.value}),e}),Be=o(()=>!K.isOverviewSubPage&&!K.isSharedSubPage&&!Ce.value);function Ve(e){return[I.PROJECTS_CREDENTIALS,I.CREDENTIALS,I.SHARED_CREDENTIALS].includes(e)}function He(e){return[I.PROJECTS_WORKFLOWS,I.WORKFLOWS,I.SHARED_WORKFLOWS,I.PROJECTS_FOLDERS].includes(e)}function Ue(e){if(Ve(e))return`credentials_list`;if(He(e))return`workflow_list`}let We={[X.WORKFLOW]:e=>{x.push({name:I.NEW_WORKFLOW,query:{projectId:e,parentFolderId:y.params.folderId,uiContext:Ue(y.name?.toString()??``)}})},[X.CREDENTIAL]:e=>{x.push({name:I.PROJECTS_CREDENTIALS,params:{projectId:e,credentialId:`create`},query:{uiContext:Ue(y.name?.toString()??``)}})},[X.FOLDER]:()=>{he(`createFolder`)},[X.DATA_TABLE]:e=>{x.push({name:fe,params:{projectId:e,new:`new`}})},[X.VARIABLE]:()=>{P.openModalWithData({name:ue,data:{mode:`new`}}),L.track(`User clicked header add variable button`)},[X.AGENT]:(e,t)=>{ae(t,e)}},Ge=o(()=>K.isSharedSubPage?C.baseText(`projects.header.shared.subtitle`):K.isOverviewSubPage?C.baseText(M.isDataTableFeatureEnabled?`projects.header.overview.subtitleWithDataTables`:`projects.header.overview.subtitle`):Ce.value?C.baseText(M.isDataTableFeatureEnabled?`projects.header.personal.subtitleWithDataTables`:`projects.header.personal.subtitle`):null),Q=o(()=>K.isProjectsSubPage?w.currentProject?.description:null),Ke=o(()=>G.value?`star-filled`:`star`),$=a(null),{width:qe}=c($),Je=a(null),{width:Ye}=c(Je),Xe=a(null);d($,()=>{if(!$.value)return;let e=$.value.querySelector(`span[data-test-id="project-subtitle"]`);if(e){let t=window.getComputedStyle(e);Xe.value=parseFloat(t.fontSize)}});let Ze=o(()=>{if(!Q.value)return``;let e=qe.value-Ye.value,t=Xe.value??14;return ye(Q.value,e,t)}),Qe=(e,t)=>{let n=We[e];J.value&&n(J.value.id,t)};return(a,o)=>(p(),i(`div`,null,[s(`div`,{ref_key:`projectHeaderRef`,ref:$,class:S(a.$style.projectHeader)},[s(`div`,{class:S(a.$style.projectDetails)},[Be.value?(p(),n(te,{key:0,icon:ge.value,"border-less":!0,size:`medium`},null,8,[`icon`])):r(``,!0),s(`div`,{class:S(a.$style.headerActions)},[we.value?(p(),n(t(ie),{key:0,bold:``,tag:`h2`,size:`xlarge`,"data-test-id":`project-name`},{default:h(()=>[e(v(we.value),1)]),_:1})):r(``,!0),Ge.value?(p(),n(t(R),{key:1,color:`text-light`,"data-test-id":`project-subtitle`},{default:h(()=>[e(v(Ge.value),1)]),_:1})):Q.value?(p(),i(`div`,{key:2,class:S(a.$style.projectDescriptionWrapper)},[u(t(R),{color:`text-light`,"data-test-id":`project-subtitle`},{default:h(()=>[e(v(Ze.value||Q.value),1)]),_:1}),Ze.value?(p(),i(`div`,{key:0,class:S(a.$style.tooltip)},[u(t(R),{color:`text-light`},{default:h(()=>[e(v(Q.value),1)]),_:1})],2)):r(``,!0)],2)):r(``,!0)],2),W.value?(p(),n(t(H),{key:1,class:S([a.$style.favoriteBtn,G.value&&a.$style.favoriteBtnActive]),icon:Ke.value,"aria-label":t(C).baseText(G.value?`favorites.remove`:`favorites.add`),variant:`ghost`,size:`medium`,"data-test-id":`project-favorite-btn`,onClick:b(me,[`stop`])},null,8,[`class`,`icon`,`aria-label`])):r(``,!0)],2),t(y).name===t(I).PROJECT_SETTINGS?r(``,!0):(p(),i(`div`,{key:0,ref_key:`headerActionsRef`,ref:Je,class:S([a.$style.headerActions])},[u(t(V),{disabled:!t(E).preferences.branchReadOnly,content:t(C).baseText(`readOnlyEnv.cantAdd.any`)},{default:h(()=>[s(`div`,Se,[u(be,{"has-active-callouts":q.hasActiveCallouts},null,8,[`has-active-callouts`]),u(ve,{"data-test-id":`add-resource-buttons`,actions:ze.value,disabled:t(E).preferences.branchReadOnly,onAction:o[1]||=e=>Qe(e,`dropdown`)},{default:h(()=>[u(t(U),f({"data-test-id":`add-resource-${Z.value}`},Re.value,{size:`medium`,onClick:o[0]||=e=>Qe(Z.value,`button`)}),null,16,[`data-test-id`])]),_:1},8,[`actions`,`disabled`])])]),_:1},8,[`disabled`,`content`])],2))],2),g(a.$slots,`default`),s(`div`,{class:S(a.$style.actions)},[u(_e,{"page-type":je.value,"show-executions":!t(K).isSharedSubPage,"show-settings":ke.value,"additional-tabs":Me.value},null,8,[`page-type`,`show-executions`,`show-settings`,`additional-tabs`])],2),u(xe)]))}}),[[`__cssModules`,{$style:{projectHeader:`_projectHeader_19xx4_113`,projectDetails:`_projectDetails_19xx4_120`,actions:`_actions_19xx4_125`,projectDescriptionWrapper:`_projectDescriptionWrapper_19xx4_129`,tooltip:`_tooltip_19xx4_133`,favoriteBtn:`_favoriteBtn_19xx4_150`,favoriteBtnActive:`_favoriteBtnActive_19xx4_157`,headerActions:`_headerActions_19xx4_171`}}]]);export{Y as t};
@@ -1 +1 @@
1
- try{(function(){var e=typeof window<`u`?window:typeof global<`u`?global:typeof globalThis<`u`?globalThis:typeof self<`u`?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]=`d4914552-f564-45f2-9df4-674f228d4495`,e._sentryDebugIdIdentifier=`sentry-dbid-d4914552-f564-45f2-9df4-674f228d4495`)})()}catch{}import{o as e}from"./rolldown-runtime-BobR2NKB.js";import{Ad as t,Bd as n,Bf as r,Dd as i,Df as a,Du as o,Fd as s,Ff as c,Id as l,Ld as u,Mf as d,Nd as f,Pd as p,Qo as m,Ud as h,Vd as g,Yo as _,af as v,as as y,bf as b,fp as x,os as S,sf as C,sp as w,vf as T,xf as E}from"./vendor-BCjXakEm.js";import{AC as D,Cw as O,Fy as k,J_ as A,No as j,OC as ee,Ow as M,PS as N,Q_ as P,Sg as F,Y_ as I,aw as L,cS as R,dS as z,dw as B,eS as te,lS as V,pw as ne,tv as re,uS as ie,xC as ae,xS as H,yw as U}from"./app-Cb14aX4e.js";import{a as W,n as G,t as oe}from"./projectRoleScopes-MxdOb1KF.js";import{n as se,t as ce}from"./useRoleEditorForm-CVeYC7LC.js";var K=e(_(),1),q=O(h({__name:`RoleProjectMembersModal`,props:{open:{type:Boolean},roleSlug:{},projectId:{},projectName:{}},emits:[`update:open`],setup(e,{emit:i}){let a=e,o=i,c=j(),l=M(),m=S(),h=d({members:[]}),_=d(!1);T(()=>a.open,async e=>{if(e){_.value=!0;try{h.value=await c.fetchRoleProjectMembers(a.roleSlug,a.projectId)}finally{_.value=!1}}},{immediate:!0});let y=f(()=>{let e=[...c.roles.global,...c.roles.project,...c.roles.credential,...c.roles.workflow];return new Map(e.map(e=>[e.slug,e.displayName]))});function E(e){return y.value.get(e)??e}function D(){o(`update:open`,!1),m.push({name:I.PROJECT_SETTINGS,params:{projectId:a.projectId}})}return(i,a)=>(v(),s(r(V),{open:e.open,size:`medium`,"onUpdate:open":a[1]||=e=>o(`update:open`,e)},{default:b(()=>[g(r(z),null,{default:b(()=>[g(r(ie),null,{default:b(()=>[n(x(r(l).baseText(`projectRoles.assignments.membersModal.title`,{interpolate:{projectName:e.projectName}})),1)]),_:1})]),_:1}),p(`div`,{class:w(i.$style.content)},[_.value?(v(),s(r(L),{key:0,rows:3})):(v(),u(`div`,{key:1,class:w(i.$style.memberList)},[(v(!0),u(t,null,C(h.value.members,e=>(v(),u(`div`,{key:e.userId,class:w(i.$style.memberRow)},[g(r(H),{"first-name":e.firstName,"last-name":e.lastName,email:e.email},null,8,[`first-name`,`last-name`,`email`]),g(r(B),{class:w(i.$style.roleLabel),color:`text-light`,size:`small`},{default:b(()=>[n(x(E(e.role)),1)]),_:2},1032,[`class`])],2))),128))],2))],2),g(r(R),null,{default:b(()=>[g(r(U),{variant:`subtle`,onClick:a[0]||=e=>o(`update:open`,!1)},{default:b(()=>[n(x(r(l).baseText(`projectRoles.assignments.membersModal.cancel`)),1)]),_:1}),g(r(U),{onClick:D},{default:b(()=>[n(x(r(l).baseText(`projectRoles.assignments.membersModal.manageMembers`)),1)]),_:1})]),_:1})]),_:1},8,[`open`]))}}),[[`__cssModules`,{$style:{content:`_content_bm3ht_2`,memberList:`_memberList_bm3ht_8`,memberRow:`_memberRow_bm3ht_13`,roleLabel:`_roleLabel_bm3ht_25`}}]]),J=[`onClick`],le=O(h({__name:`RoleAssignmentsTab`,props:{roleSlug:{}},setup(e){let i=e,a=j(),c=M(),{state:h,isLoading:_,execute:y}=o(async()=>await a.fetchRoleAssignments(i.roleSlug),{projects:[],totalProjects:0});T(()=>i.roleSlug,async()=>await y());let S=d(!1),E=d(null),O=d(`memberCount`),k=d(`desc`),A=f(()=>h.value.totalProjects-h.value.projects.length),ee=f(()=>[...h.value.projects].sort((e,t)=>{let n=0;return n=O.value===`projectName`?e.projectName.localeCompare(t.projectName):O.value===`memberCount`?e.memberCount-t.memberCount:(e.lastAssigned??``).localeCompare(t.lastAssigned??``),k.value===`desc`?-n:n}));function N(e){O.value===e?k.value=k.value===`asc`?`desc`:`asc`:(O.value=e,k.value=e===`memberCount`?`desc`:`asc`)}function P(e){return O.value===e?k.value===`asc`?` ↑`:` ↓`:``}function F(e){E.value=e,S.value=!0}function R(e){return e?(0,K.default)(new Date(e),`mmm dS, yyyy`):`—`}return(i,a)=>(v(),u(`div`,{class:w(i.$style.container)},[r(_)?(v(),s(r(L),{key:0,rows:3})):r(h).projects.length===0?(v(),u(`div`,{key:1,class:w(i.$style.emptyState)},[g(r(B),{color:`text-light`},{default:b(()=>[n(x(A.value>0?r(c).baseText(`projectRoles.assignments.restrictedEmptyState`,{adjustToNumber:A.value,interpolate:{count:A.value}}):r(c).baseText(`projectRoles.assignments.emptyState`)),1)]),_:1})],2)):(v(),u(t,{key:2},[A.value>0?(v(),s(r(B),{key:0,class:w(i.$style.restrictedNotice),color:`text-light`,size:`small`,tag:`p`},{default:b(()=>[n(x(r(c).baseText(`projectRoles.assignments.restrictedNotice`,{interpolate:{count:r(h).projects.length,total:r(h).totalProjects}})),1)]),_:1},8,[`class`])):l(``,!0),g(r(D),null,{default:b(()=>[p(`thead`,null,[p(`tr`,null,[p(`th`,{class:w(i.$style.sortableHeader),onClick:a[0]||=e=>N(`projectName`)},x(r(c).baseText(`projectRoles.assignments.projectColumn`))+x(P(`projectName`)),3),p(`th`,{class:w([i.$style.alignRight,i.$style.sortableHeader]),onClick:a[1]||=e=>N(`memberCount`)},x(r(c).baseText(`projectRoles.assignments.membersColumn`))+x(P(`memberCount`)),3),p(`th`,{class:w(i.$style.sortableHeader),onClick:a[2]||=e=>N(`lastAssigned`)},x(r(c).baseText(`projectRoles.assignments.lastAssignedColumn`))+x(P(`lastAssigned`)),3)])]),p(`tbody`,null,[(v(!0),u(t,null,C(ee.value,e=>(v(),u(`tr`,{key:e.projectId},[p(`td`,null,[g(r(m),{to:{name:r(I).PROJECTS_WORKFLOWS,params:{projectId:e.projectId}},class:w(i.$style.projectLink)},{default:b(()=>[n(x(e.projectName),1)]),_:2},1032,[`to`,`class`])]),p(`td`,{class:w(i.$style.alignRight)},[p(`button`,{class:w(i.$style.memberCountButton),onClick:t=>F(e)},x(e.memberCount),11,J)],2),p(`td`,null,x(R(e.lastAssigned)),1)]))),128))])]),_:1})],64)),E.value?(v(),s(q,{key:3,open:S.value,"role-slug":e.roleSlug,"project-id":E.value.projectId,"project-name":E.value.projectName,"onUpdate:open":a[3]||=e=>S.value=e},null,8,[`open`,`role-slug`,`project-id`,`project-name`])):l(``,!0)],2))}}),[[`__cssModules`,{$style:{container:`_container_s1egh_2`,emptyState:`_emptyState_s1egh_6`,restrictedNotice:`_restrictedNotice_s1egh_11`,alignRight:`_alignRight_s1egh_15`,sortableHeader:`_sortableHeader_s1egh_19`,projectLink:`_projectLink_s1egh_24`,memberCountButton:`_memberCountButton_s1egh_33`}}]]),ue={key:0,class:`mb-l`},de={style:{flex:`1`}},fe={key:1,class:`mt-xl`},Y=O(h({__name:`ProjectRoleView`,props:{roleSlug:{}},setup(e){let o=j(),d=y(),m=S(),{showError:h,showMessage:_}=A(),T=M(),D=te(),O=P(),R=re(),z=e,{activeTab:V,tabOptions:ie,form:H,isLoading:K,initialState:q,isReadOnly:J,isNew:Y,showEditButtons:pe,showCreateButton:me,hasUnsavedChanges:he,displayNameValidationRules:ge,submitted:_e,validateOnSubmit:ve,resetForm:ye}=ce({roleSlug:()=>z.roleSlug,viewRoute:I.PROJECT_ROLE_VIEW,defaultScopes:()=>structuredClone(c(o.processedProjectRoles.find(e=>e.slug===`project:viewer`)?.scopes??[])),filterScopes:e=>e.filter(e=>k.project.has(e)),fetchError:`Error fetching role`}),X=f(()=>d.query.from===I.PROJECT_SETTINGS),be=f(()=>X.value?T.baseText(`projectRoles.backToProjectSettings`):T.baseText(`projectRoles.backToProjectRoles`)),xe=()=>{X.value?m.back():m.push({name:I.PROJECT_ROLES_SETTINGS})},Se=f(()=>R.moduleSettings[`external-secrets`]?.roleBasedAccess?G:G.filter(e=>e!==`externalSecretsProvider`&&e!==`externalSecret`)),Ce=oe;function Z(e){let t=H.value.scopes.indexOf(e),n=t===-1;if(t===-1?H.value.scopes.push(e):H.value.scopes.splice(t,1),e.startsWith(`dataTable:`)&&e.endsWith(`:read`)){Z(e.replace(`:read`,`:listProject`));return}if(e.endsWith(`:read`)&&Z(e.replace(`:read`,`:list`)),e===`workflow:execute`&&n&&(H.value.scopes.includes(`workflow:read`)||Z(`workflow:read`)),e===`workflow:read`&&!n&&H.value.scopes.includes(`workflow:execute`)&&Z(`workflow:execute`),e===`workflow:read`&&(n&&!H.value.scopes.includes(`execution:read`)&&Z(`execution:read`),n||(H.value.scopes.includes(`execution:read`)&&Z(`execution:read`),H.value.scopes.includes(`execution:delete`)&&Z(`execution:delete`))),e===`execution:delete`&&n&&!H.value.scopes.includes(`workflow:read`)&&Z(`workflow:read`),e===`workflow:publish`){if(n&&!H.value.scopes.includes(`workflow:unpublish`))H.value.scopes.push(`workflow:unpublish`);else if(!n){let e=H.value.scopes.indexOf(`workflow:unpublish`);e!==-1&&H.value.scopes.splice(e,1)}}}async function we(){if(ve(`projectRoles.action.create.error`))try{let e=await o.createRole({...H.value,scopes:W(H.value.scopes),description:H.value.description??void 0,roleType:`project`});return o.fetchRoles(),O.track(`User successfully created new role`,{role_id:e.slug,role_name:e.displayName,role_type:`project`,permissions:e.scopes}),m.replace({name:I.PROJECT_ROLE_SETTINGS,params:{roleSlug:e.slug}}),_({type:`success`,message:T.baseText(`projectRoles.action.create.success`)}),q.value=structuredClone(e),e}catch(e){h(e,T.baseText(`projectRoles.action.create.error`));return}}async function Te(e){return e?await D.confirm(T.baseText(`projectRoles.action.update.text`,{interpolate:{count:e}}),T.baseText(`projectRoles.action.update.title`,{interpolate:{count:e}}),{type:`warning`,confirmButtonText:T.baseText(`projectRoles.action.update`),cancelButtonText:T.baseText(`roles.action.cancel`)})===F:!0}async function Ee(e){if(await Te(q?.value?.usedByUsers))try{let t=await o.updateRole(e,{...H.value,scopes:W(H.value.scopes),description:H.value.description??void 0});return o.fetchRoles(),O.track(`User updated role`,{role_id:t.slug,role_name:t.displayName,role_type:`project`,permissions_from:q.value?.scopes,permissions_to:t.scopes}),q.value=structuredClone(t),_({type:`success`,message:T.baseText(`projectRoles.action.update.success`)}),t}catch(e){h(e,T.baseText(`projectRoles.action.update.error`));return}}async function Q(){z.roleSlug?await Ee(z.roleSlug):await we()}function $(e){let t=o.processedProjectRoles.find(t=>t.slug===e);t&&(H.value.scopes=structuredClone(c(t.scopes)).filter(e=>k.project.has(e)))}async function De(){if(q?.value&&await D.confirm(T.baseText(`roles.action.delete.text`,{interpolate:{roleName:q.value.displayName}}),T.baseText(`roles.action.delete.title`,{interpolate:{roleName:q.value.displayName}}),{type:`warning`,confirmButtonText:T.baseText(`roles.action.delete`),cancelButtonText:T.baseText(`roles.action.cancel`)})===`confirm`){O.track(`User clicked delete role`,{role_id:q.value.slug,role_name:q.value.displayName,permissions:q.value?.scopes});try{await o.deleteRole(q.value.slug);let e=o.roles.project.findIndex(e=>e.slug===q.value?.slug);e!==-1&&o.roles.project.splice(e,1),_({title:T.baseText(`roles.action.delete.success`),type:`success`}),O.track(`User successfully deleted role`,{role_id:q.value.slug,role_name:q.value.displayName,permissions:q.value?.scopes}),m.back()}catch(e){h(e,T.baseText(`roles.action.delete.error`));return}}}let Oe=f(()=>({newRoleTitle:T.baseText(`projectRoles.newRole`),roleName:T.baseText(`projectRoles.roleName`),description:T.baseText(`projectRoles.description`),optional:T.baseText(`projectRoles.optional`),systemRoleNotEditable:T.baseText(`projectRoles.systemRoleNotEditable`),discardChanges:T.baseText(`projectRoles.discardChanges`),save:T.baseText(`projectRoles.save`),create:T.baseText(`projectRoles.create`)}));return(o,c)=>(v(),s(se,{"display-name":r(H).displayName,"onUpdate:displayName":c[5]||=e=>r(H).displayName=e,description:r(H).description,"onUpdate:description":c[6]||=e=>r(H).description=e,"is-new":r(Y),"is-read-only":r(J),"show-edit-buttons":r(pe),"show-create-button":r(me),"has-unsaved-changes":r(he),"back-button-text":be.value,labels:Oe.value,"display-name-validation-rules":r(ge),"show-display-name-error":r(_e),onBack:xe,onSave:Q,onDiscard:c[7]||=e=>r(ye)(r(q)),onCreate:Q},{default:b(()=>[e.roleSlug?(v(),u(`div`,ue,[g(r(N),{modelValue:r(V),"onUpdate:modelValue":c[0]||=e=>a(V)?V.value=e:null,options:r(ie)},null,8,[`modelValue`,`options`])])):l(``,!0),E(p(`div`,null,[r(J)?l(``,!0):(v(),u(t,{key:0},[g(r(B),{color:`text-light`,class:`mb-2xs`,tag:`p`},{default:b(()=>[n(x(r(T).baseText(`projectRoles.preset`)),1)]),_:1}),p(`div`,{class:w([`mb-s`,o.$style.presetsContainer])},[g(r(U),{variant:`subtle`,onClick:c[1]||=e=>$(`project:admin`)},{default:b(()=>[n(x(r(T).baseText(`projectRoles.admin`)),1)]),_:1}),g(r(U),{variant:`subtle`,onClick:c[2]||=e=>$(`project:editor`)},{default:b(()=>[n(x(r(T).baseText(`projectRoles.editor`)),1)]),_:1}),g(r(U),{variant:`subtle`,onClick:c[3]||=e=>$(`project:viewer`)},{default:b(()=>[n(x(r(T).baseText(`projectRoles.viewer`)),1)]),_:1})],2)],64)),p(`div`,{class:w(o.$style.cardContainer)},[(v(!0),u(t,null,C(Se.value,e=>(v(),u(`div`,{key:e,class:w([`mb-s mt-s`,o.$style.card])},[p(`div`,{class:w(o.$style.cardTitle)},x(r(T).baseText(`projectRoles.type.${e}`)),3),p(`div`,de,[r(K)?(v(),s(r(L),{key:0,rows:r(Ce)[e].length,"shrink-last":!1},null,8,[`rows`])):(v(!0),u(t,{key:1},C(r(Ce)[e],e=>(v(),u(`div`,{key:e,class:`mb-2xs`},[g(r(ne),{content:r(T).baseText(`projectRoles.${e}.tooltip`),placement:`right`,enterable:!1,"show-after":250},{default:b(()=>[g(r(ae),{"data-test-id":`scope-checkbox-${e}`,"model-value":r(H).scopes.includes(e),label:r(T).baseText(`projectRoles.${e}`),"validate-on-blur":``,type:`checkbox`,class:w(o.$style.checkbox),disabled:r(J)||e===`execution:read`,"onUpdate:modelValue":()=>Z(e)},null,8,[`data-test-id`,`model-value`,`label`,`class`,`disabled`,`onUpdate:modelValue`])]),_:2},1032,[`content`])]))),128))])],2))),128))],2),e.roleSlug&&!r(J)?(v(),u(`div`,fe,[g(r(ee),{tag:`h2`,class:`mb-2xs`,size:`large`},{default:b(()=>[n(x(r(T).baseText(`projectRoles.dangerZone`)),1)]),_:1}),g(r(B),{tag:`p`,class:`mb-s`},{default:b(()=>[r(q)?.usedByProjects?(v(),u(t,{key:0},[n(x(r(T).baseText(`projectRoles.action.delete.useWarning.before`))+` `,1),p(`a`,{class:w(o.$style.assignmentsLink),onClick:c[4]||=e=>V.value=`assignments`},x(r(T).baseText(`projectRoles.action.delete.useWarning.linkText`,{adjustToNumber:r(q).usedByProjects,interpolate:{count:r(q).usedByProjects}})),3),n(`. `+x(r(T).baseText(`projectRoles.action.delete.useWarning.after`)),1)],64)):(v(),u(t,{key:1},[n(x(r(T).baseText(`projectRoles.action.delete.warning`)),1)],64))]),_:1}),g(r(U),{variant:`destructive`,disabled:!!r(q)?.usedByProjects,onClick:De},{default:b(()=>[n(x(r(T).baseText(`projectRoles.action.delete.button`)),1)]),_:1},8,[`disabled`])])):l(``,!0)],512),[[i,!e.roleSlug||r(V)===`permissions`]]),e.roleSlug&&r(V)===`assignments`?(v(),s(le,{key:1,"role-slug":e.roleSlug},null,8,[`role-slug`])):l(``,!0)]),_:1},8,[`display-name`,`description`,`is-new`,`is-read-only`,`show-edit-buttons`,`show-create-button`,`has-unsaved-changes`,`back-button-text`,`labels`,`display-name-validation-rules`,`show-display-name-error`]))}}),[[`__cssModules`,{$style:{cardContainer:`_cardContainer_1gh3t_2`,card:`_card_1gh3t_2`,cardTitle:`_cardTitle_1gh3t_21`,presetsContainer:`_presetsContainer_1gh3t_25`,checkbox:`_checkbox_1gh3t_30`,assignmentsLink:`_assignmentsLink_1gh3t_38`}}]]);export{Y as default};
1
+ try{(function(){var e=typeof window<`u`?window:typeof global<`u`?global:typeof globalThis<`u`?globalThis:typeof self<`u`?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]=`d4914552-f564-45f2-9df4-674f228d4495`,e._sentryDebugIdIdentifier=`sentry-dbid-d4914552-f564-45f2-9df4-674f228d4495`)})()}catch{}import{o as e}from"./rolldown-runtime-BobR2NKB.js";import{Ad as t,Bd as n,Bf as r,Dd as i,Df as a,Du as o,Fd as s,Ff as c,Id as l,Ld as u,Mf as d,Nd as f,Pd as p,Qo as m,Ud as h,Vd as g,Yo as _,af as v,as as y,bf as b,fp as x,os as S,sf as C,sp as w,vf as T,xf as E}from"./vendor-BCjXakEm.js";import{AC as D,Cw as O,Fy as k,J_ as A,No as j,OC as ee,Ow as M,PS as N,Q_ as P,Sg as F,Y_ as I,aw as L,cS as R,dS as z,dw as B,eS as te,lS as V,pw as ne,tv as re,uS as ie,xC as ae,xS as H,yw as U}from"./app-BVFAtyJy.js";import{a as W,n as G,t as oe}from"./projectRoleScopes-BrYAn3c_.js";import{n as se,t as ce}from"./useRoleEditorForm-H3kq0M6s.js";var K=e(_(),1),q=O(h({__name:`RoleProjectMembersModal`,props:{open:{type:Boolean},roleSlug:{},projectId:{},projectName:{}},emits:[`update:open`],setup(e,{emit:i}){let a=e,o=i,c=j(),l=M(),m=S(),h=d({members:[]}),_=d(!1);T(()=>a.open,async e=>{if(e){_.value=!0;try{h.value=await c.fetchRoleProjectMembers(a.roleSlug,a.projectId)}finally{_.value=!1}}},{immediate:!0});let y=f(()=>{let e=[...c.roles.global,...c.roles.project,...c.roles.credential,...c.roles.workflow];return new Map(e.map(e=>[e.slug,e.displayName]))});function E(e){return y.value.get(e)??e}function D(){o(`update:open`,!1),m.push({name:I.PROJECT_SETTINGS,params:{projectId:a.projectId}})}return(i,a)=>(v(),s(r(V),{open:e.open,size:`medium`,"onUpdate:open":a[1]||=e=>o(`update:open`,e)},{default:b(()=>[g(r(z),null,{default:b(()=>[g(r(ie),null,{default:b(()=>[n(x(r(l).baseText(`projectRoles.assignments.membersModal.title`,{interpolate:{projectName:e.projectName}})),1)]),_:1})]),_:1}),p(`div`,{class:w(i.$style.content)},[_.value?(v(),s(r(L),{key:0,rows:3})):(v(),u(`div`,{key:1,class:w(i.$style.memberList)},[(v(!0),u(t,null,C(h.value.members,e=>(v(),u(`div`,{key:e.userId,class:w(i.$style.memberRow)},[g(r(H),{"first-name":e.firstName,"last-name":e.lastName,email:e.email},null,8,[`first-name`,`last-name`,`email`]),g(r(B),{class:w(i.$style.roleLabel),color:`text-light`,size:`small`},{default:b(()=>[n(x(E(e.role)),1)]),_:2},1032,[`class`])],2))),128))],2))],2),g(r(R),null,{default:b(()=>[g(r(U),{variant:`subtle`,onClick:a[0]||=e=>o(`update:open`,!1)},{default:b(()=>[n(x(r(l).baseText(`projectRoles.assignments.membersModal.cancel`)),1)]),_:1}),g(r(U),{onClick:D},{default:b(()=>[n(x(r(l).baseText(`projectRoles.assignments.membersModal.manageMembers`)),1)]),_:1})]),_:1})]),_:1},8,[`open`]))}}),[[`__cssModules`,{$style:{content:`_content_bm3ht_2`,memberList:`_memberList_bm3ht_8`,memberRow:`_memberRow_bm3ht_13`,roleLabel:`_roleLabel_bm3ht_25`}}]]),J=[`onClick`],le=O(h({__name:`RoleAssignmentsTab`,props:{roleSlug:{}},setup(e){let i=e,a=j(),c=M(),{state:h,isLoading:_,execute:y}=o(async()=>await a.fetchRoleAssignments(i.roleSlug),{projects:[],totalProjects:0});T(()=>i.roleSlug,async()=>await y());let S=d(!1),E=d(null),O=d(`memberCount`),k=d(`desc`),A=f(()=>h.value.totalProjects-h.value.projects.length),ee=f(()=>[...h.value.projects].sort((e,t)=>{let n=0;return n=O.value===`projectName`?e.projectName.localeCompare(t.projectName):O.value===`memberCount`?e.memberCount-t.memberCount:(e.lastAssigned??``).localeCompare(t.lastAssigned??``),k.value===`desc`?-n:n}));function N(e){O.value===e?k.value=k.value===`asc`?`desc`:`asc`:(O.value=e,k.value=e===`memberCount`?`desc`:`asc`)}function P(e){return O.value===e?k.value===`asc`?` ↑`:` ↓`:``}function F(e){E.value=e,S.value=!0}function R(e){return e?(0,K.default)(new Date(e),`mmm dS, yyyy`):`—`}return(i,a)=>(v(),u(`div`,{class:w(i.$style.container)},[r(_)?(v(),s(r(L),{key:0,rows:3})):r(h).projects.length===0?(v(),u(`div`,{key:1,class:w(i.$style.emptyState)},[g(r(B),{color:`text-light`},{default:b(()=>[n(x(A.value>0?r(c).baseText(`projectRoles.assignments.restrictedEmptyState`,{adjustToNumber:A.value,interpolate:{count:A.value}}):r(c).baseText(`projectRoles.assignments.emptyState`)),1)]),_:1})],2)):(v(),u(t,{key:2},[A.value>0?(v(),s(r(B),{key:0,class:w(i.$style.restrictedNotice),color:`text-light`,size:`small`,tag:`p`},{default:b(()=>[n(x(r(c).baseText(`projectRoles.assignments.restrictedNotice`,{interpolate:{count:r(h).projects.length,total:r(h).totalProjects}})),1)]),_:1},8,[`class`])):l(``,!0),g(r(D),null,{default:b(()=>[p(`thead`,null,[p(`tr`,null,[p(`th`,{class:w(i.$style.sortableHeader),onClick:a[0]||=e=>N(`projectName`)},x(r(c).baseText(`projectRoles.assignments.projectColumn`))+x(P(`projectName`)),3),p(`th`,{class:w([i.$style.alignRight,i.$style.sortableHeader]),onClick:a[1]||=e=>N(`memberCount`)},x(r(c).baseText(`projectRoles.assignments.membersColumn`))+x(P(`memberCount`)),3),p(`th`,{class:w(i.$style.sortableHeader),onClick:a[2]||=e=>N(`lastAssigned`)},x(r(c).baseText(`projectRoles.assignments.lastAssignedColumn`))+x(P(`lastAssigned`)),3)])]),p(`tbody`,null,[(v(!0),u(t,null,C(ee.value,e=>(v(),u(`tr`,{key:e.projectId},[p(`td`,null,[g(r(m),{to:{name:r(I).PROJECTS_WORKFLOWS,params:{projectId:e.projectId}},class:w(i.$style.projectLink)},{default:b(()=>[n(x(e.projectName),1)]),_:2},1032,[`to`,`class`])]),p(`td`,{class:w(i.$style.alignRight)},[p(`button`,{class:w(i.$style.memberCountButton),onClick:t=>F(e)},x(e.memberCount),11,J)],2),p(`td`,null,x(R(e.lastAssigned)),1)]))),128))])]),_:1})],64)),E.value?(v(),s(q,{key:3,open:S.value,"role-slug":e.roleSlug,"project-id":E.value.projectId,"project-name":E.value.projectName,"onUpdate:open":a[3]||=e=>S.value=e},null,8,[`open`,`role-slug`,`project-id`,`project-name`])):l(``,!0)],2))}}),[[`__cssModules`,{$style:{container:`_container_s1egh_2`,emptyState:`_emptyState_s1egh_6`,restrictedNotice:`_restrictedNotice_s1egh_11`,alignRight:`_alignRight_s1egh_15`,sortableHeader:`_sortableHeader_s1egh_19`,projectLink:`_projectLink_s1egh_24`,memberCountButton:`_memberCountButton_s1egh_33`}}]]),ue={key:0,class:`mb-l`},de={style:{flex:`1`}},fe={key:1,class:`mt-xl`},Y=O(h({__name:`ProjectRoleView`,props:{roleSlug:{}},setup(e){let o=j(),d=y(),m=S(),{showError:h,showMessage:_}=A(),T=M(),D=te(),O=P(),R=re(),z=e,{activeTab:V,tabOptions:ie,form:H,isLoading:K,initialState:q,isReadOnly:J,isNew:Y,showEditButtons:pe,showCreateButton:me,hasUnsavedChanges:he,displayNameValidationRules:ge,submitted:_e,validateOnSubmit:ve,resetForm:ye}=ce({roleSlug:()=>z.roleSlug,viewRoute:I.PROJECT_ROLE_VIEW,defaultScopes:()=>structuredClone(c(o.processedProjectRoles.find(e=>e.slug===`project:viewer`)?.scopes??[])),filterScopes:e=>e.filter(e=>k.project.has(e)),fetchError:`Error fetching role`}),X=f(()=>d.query.from===I.PROJECT_SETTINGS),be=f(()=>X.value?T.baseText(`projectRoles.backToProjectSettings`):T.baseText(`projectRoles.backToProjectRoles`)),xe=()=>{X.value?m.back():m.push({name:I.PROJECT_ROLES_SETTINGS})},Se=f(()=>R.moduleSettings[`external-secrets`]?.roleBasedAccess?G:G.filter(e=>e!==`externalSecretsProvider`&&e!==`externalSecret`)),Ce=oe;function Z(e){let t=H.value.scopes.indexOf(e),n=t===-1;if(t===-1?H.value.scopes.push(e):H.value.scopes.splice(t,1),e.startsWith(`dataTable:`)&&e.endsWith(`:read`)){Z(e.replace(`:read`,`:listProject`));return}if(e.endsWith(`:read`)&&Z(e.replace(`:read`,`:list`)),e===`workflow:execute`&&n&&(H.value.scopes.includes(`workflow:read`)||Z(`workflow:read`)),e===`workflow:read`&&!n&&H.value.scopes.includes(`workflow:execute`)&&Z(`workflow:execute`),e===`workflow:read`&&(n&&!H.value.scopes.includes(`execution:read`)&&Z(`execution:read`),n||(H.value.scopes.includes(`execution:read`)&&Z(`execution:read`),H.value.scopes.includes(`execution:delete`)&&Z(`execution:delete`))),e===`execution:delete`&&n&&!H.value.scopes.includes(`workflow:read`)&&Z(`workflow:read`),e===`workflow:publish`){if(n&&!H.value.scopes.includes(`workflow:unpublish`))H.value.scopes.push(`workflow:unpublish`);else if(!n){let e=H.value.scopes.indexOf(`workflow:unpublish`);e!==-1&&H.value.scopes.splice(e,1)}}}async function we(){if(ve(`projectRoles.action.create.error`))try{let e=await o.createRole({...H.value,scopes:W(H.value.scopes),description:H.value.description??void 0,roleType:`project`});return o.fetchRoles(),O.track(`User successfully created new role`,{role_id:e.slug,role_name:e.displayName,role_type:`project`,permissions:e.scopes}),m.replace({name:I.PROJECT_ROLE_SETTINGS,params:{roleSlug:e.slug}}),_({type:`success`,message:T.baseText(`projectRoles.action.create.success`)}),q.value=structuredClone(e),e}catch(e){h(e,T.baseText(`projectRoles.action.create.error`));return}}async function Te(e){return e?await D.confirm(T.baseText(`projectRoles.action.update.text`,{interpolate:{count:e}}),T.baseText(`projectRoles.action.update.title`,{interpolate:{count:e}}),{type:`warning`,confirmButtonText:T.baseText(`projectRoles.action.update`),cancelButtonText:T.baseText(`roles.action.cancel`)})===F:!0}async function Ee(e){if(await Te(q?.value?.usedByUsers))try{let t=await o.updateRole(e,{...H.value,scopes:W(H.value.scopes),description:H.value.description??void 0});return o.fetchRoles(),O.track(`User updated role`,{role_id:t.slug,role_name:t.displayName,role_type:`project`,permissions_from:q.value?.scopes,permissions_to:t.scopes}),q.value=structuredClone(t),_({type:`success`,message:T.baseText(`projectRoles.action.update.success`)}),t}catch(e){h(e,T.baseText(`projectRoles.action.update.error`));return}}async function Q(){z.roleSlug?await Ee(z.roleSlug):await we()}function $(e){let t=o.processedProjectRoles.find(t=>t.slug===e);t&&(H.value.scopes=structuredClone(c(t.scopes)).filter(e=>k.project.has(e)))}async function De(){if(q?.value&&await D.confirm(T.baseText(`roles.action.delete.text`,{interpolate:{roleName:q.value.displayName}}),T.baseText(`roles.action.delete.title`,{interpolate:{roleName:q.value.displayName}}),{type:`warning`,confirmButtonText:T.baseText(`roles.action.delete`),cancelButtonText:T.baseText(`roles.action.cancel`)})===`confirm`){O.track(`User clicked delete role`,{role_id:q.value.slug,role_name:q.value.displayName,permissions:q.value?.scopes});try{await o.deleteRole(q.value.slug);let e=o.roles.project.findIndex(e=>e.slug===q.value?.slug);e!==-1&&o.roles.project.splice(e,1),_({title:T.baseText(`roles.action.delete.success`),type:`success`}),O.track(`User successfully deleted role`,{role_id:q.value.slug,role_name:q.value.displayName,permissions:q.value?.scopes}),m.back()}catch(e){h(e,T.baseText(`roles.action.delete.error`));return}}}let Oe=f(()=>({newRoleTitle:T.baseText(`projectRoles.newRole`),roleName:T.baseText(`projectRoles.roleName`),description:T.baseText(`projectRoles.description`),optional:T.baseText(`projectRoles.optional`),systemRoleNotEditable:T.baseText(`projectRoles.systemRoleNotEditable`),discardChanges:T.baseText(`projectRoles.discardChanges`),save:T.baseText(`projectRoles.save`),create:T.baseText(`projectRoles.create`)}));return(o,c)=>(v(),s(se,{"display-name":r(H).displayName,"onUpdate:displayName":c[5]||=e=>r(H).displayName=e,description:r(H).description,"onUpdate:description":c[6]||=e=>r(H).description=e,"is-new":r(Y),"is-read-only":r(J),"show-edit-buttons":r(pe),"show-create-button":r(me),"has-unsaved-changes":r(he),"back-button-text":be.value,labels:Oe.value,"display-name-validation-rules":r(ge),"show-display-name-error":r(_e),onBack:xe,onSave:Q,onDiscard:c[7]||=e=>r(ye)(r(q)),onCreate:Q},{default:b(()=>[e.roleSlug?(v(),u(`div`,ue,[g(r(N),{modelValue:r(V),"onUpdate:modelValue":c[0]||=e=>a(V)?V.value=e:null,options:r(ie)},null,8,[`modelValue`,`options`])])):l(``,!0),E(p(`div`,null,[r(J)?l(``,!0):(v(),u(t,{key:0},[g(r(B),{color:`text-light`,class:`mb-2xs`,tag:`p`},{default:b(()=>[n(x(r(T).baseText(`projectRoles.preset`)),1)]),_:1}),p(`div`,{class:w([`mb-s`,o.$style.presetsContainer])},[g(r(U),{variant:`subtle`,onClick:c[1]||=e=>$(`project:admin`)},{default:b(()=>[n(x(r(T).baseText(`projectRoles.admin`)),1)]),_:1}),g(r(U),{variant:`subtle`,onClick:c[2]||=e=>$(`project:editor`)},{default:b(()=>[n(x(r(T).baseText(`projectRoles.editor`)),1)]),_:1}),g(r(U),{variant:`subtle`,onClick:c[3]||=e=>$(`project:viewer`)},{default:b(()=>[n(x(r(T).baseText(`projectRoles.viewer`)),1)]),_:1})],2)],64)),p(`div`,{class:w(o.$style.cardContainer)},[(v(!0),u(t,null,C(Se.value,e=>(v(),u(`div`,{key:e,class:w([`mb-s mt-s`,o.$style.card])},[p(`div`,{class:w(o.$style.cardTitle)},x(r(T).baseText(`projectRoles.type.${e}`)),3),p(`div`,de,[r(K)?(v(),s(r(L),{key:0,rows:r(Ce)[e].length,"shrink-last":!1},null,8,[`rows`])):(v(!0),u(t,{key:1},C(r(Ce)[e],e=>(v(),u(`div`,{key:e,class:`mb-2xs`},[g(r(ne),{content:r(T).baseText(`projectRoles.${e}.tooltip`),placement:`right`,enterable:!1,"show-after":250},{default:b(()=>[g(r(ae),{"data-test-id":`scope-checkbox-${e}`,"model-value":r(H).scopes.includes(e),label:r(T).baseText(`projectRoles.${e}`),"validate-on-blur":``,type:`checkbox`,class:w(o.$style.checkbox),disabled:r(J)||e===`execution:read`,"onUpdate:modelValue":()=>Z(e)},null,8,[`data-test-id`,`model-value`,`label`,`class`,`disabled`,`onUpdate:modelValue`])]),_:2},1032,[`content`])]))),128))])],2))),128))],2),e.roleSlug&&!r(J)?(v(),u(`div`,fe,[g(r(ee),{tag:`h2`,class:`mb-2xs`,size:`large`},{default:b(()=>[n(x(r(T).baseText(`projectRoles.dangerZone`)),1)]),_:1}),g(r(B),{tag:`p`,class:`mb-s`},{default:b(()=>[r(q)?.usedByProjects?(v(),u(t,{key:0},[n(x(r(T).baseText(`projectRoles.action.delete.useWarning.before`))+` `,1),p(`a`,{class:w(o.$style.assignmentsLink),onClick:c[4]||=e=>V.value=`assignments`},x(r(T).baseText(`projectRoles.action.delete.useWarning.linkText`,{adjustToNumber:r(q).usedByProjects,interpolate:{count:r(q).usedByProjects}})),3),n(`. `+x(r(T).baseText(`projectRoles.action.delete.useWarning.after`)),1)],64)):(v(),u(t,{key:1},[n(x(r(T).baseText(`projectRoles.action.delete.warning`)),1)],64))]),_:1}),g(r(U),{variant:`destructive`,disabled:!!r(q)?.usedByProjects,onClick:De},{default:b(()=>[n(x(r(T).baseText(`projectRoles.action.delete.button`)),1)]),_:1},8,[`disabled`])])):l(``,!0)],512),[[i,!e.roleSlug||r(V)===`permissions`]]),e.roleSlug&&r(V)===`assignments`?(v(),s(le,{key:1,"role-slug":e.roleSlug},null,8,[`role-slug`])):l(``,!0)]),_:1},8,[`display-name`,`description`,`is-new`,`is-read-only`,`show-edit-buttons`,`show-create-button`,`has-unsaved-changes`,`back-button-text`,`labels`,`display-name-validation-rules`,`show-display-name-error`]))}}),[[`__cssModules`,{$style:{cardContainer:`_cardContainer_1gh3t_2`,card:`_card_1gh3t_2`,cardTitle:`_cardTitle_1gh3t_21`,presetsContainer:`_presetsContainer_1gh3t_25`,checkbox:`_checkbox_1gh3t_30`,assignmentsLink:`_assignmentsLink_1gh3t_38`}}]]);export{Y as default};
@@ -1 +1 @@
1
- try{(function(){var e=typeof window<`u`?window:typeof global<`u`?global:typeof globalThis<`u`?globalThis:typeof self<`u`?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]=`a7f3b766-cb35-44a6-8756-0dc6dd1f2a7c`,e._sentryDebugIdIdentifier=`sentry-dbid-a7f3b766-cb35-44a6-8756-0dc6dd1f2a7c`)})()}catch{}import"./rolldown-runtime-BobR2NKB.js";import{$d as e,Ad as t,Af as n,Bd as r,Bf as i,Fd as a,Gd as o,Id as s,Is as c,Ld as l,Mf as u,Nd as d,Pd as f,Qd as p,Ud as m,Vd as h,Xd as g,af as _,bf as v,cp as y,fp as b,gd as x,kd as S,ks as C,ld as w,mf as T,nf as E,os as D,sf as O,sp as k,vf as A}from"./vendor-BCjXakEm.js";import{$C as ee,Af as te,CC as j,Cg as M,Cm as N,Cp as P,Cw as F,DC as I,Fp as ne,J_ as re,My as ie,Nf as ae,No as oe,OC as L,Ow as R,PC as z,Pf as se,Po as B,Q_ as ce,R_ as V,Su as le,Ui as ue,Wm as H,XC as de,Xp as fe,Y_ as pe,Z_ as me,_w as U,bw as W,dw as G,ev as he,gS as K,jC as q,kf as J,lx as Y,oS as ge,pw as X,tv as _e,vS as ve,vd as ye,vw as Z,xC as be,xS as xe,yS as Se,yw as Q}from"./app-Cb14aX4e.js";import{t as Ce}from"./ProjectHeader-0mYjakiY.js";import{t as $}from"./RoleSelectDropdown-DAs6V3cH.js";import{t as we}from"./useSecretsProvidersList.ee-D3g6UJdy.js";var Te={key:1},Ee={class:`pt-l`},De=F(m({__name:`ProjectDeleteDialog`,props:g({currentProject:{},searchFn:{type:Function},resourceCounts:{}},{modelValue:{type:Boolean},modelModifiers:{}}),emits:g([`confirmDelete`],[`update:modelValue`]),setup(e,{emit:t}){let n=e,o=T(e,`modelValue`),p=d(()=>n.searchFn??J()),m=e=>e.id!==n.currentProject?.id,g=t,y=R(),x=u(null),w=u(null),E=u(``),D=d(()=>n.resourceCounts.credentials+n.resourceCounts.workflows+n.resourceCounts.dataTables>0),O=d(()=>{let e=y.baseText(`projects.settings.delete.question.wipe.placeholder`);return!D.value||w.value===`transfer`&&!!x.value||w.value===`wipe`&&E.value===e}),A=()=>{O.value&&(w.value===`wipe`&&(x.value=null),g(`confirmDelete`,x.value?.id))};return(e,t)=>(_(),a(i(C),{modelValue:o.value,"onUpdate:modelValue":t[4]||=e=>o.value=e,title:i(y).baseText(`projects.settings.delete.title`,{interpolate:{projectName:n.currentProject?.name??``}}),width:`650`,"append-to":`#${i(H)}`},{footer:v(()=>[h(i(Q),{variant:`destructive`,type:`button`,disabled:!O.value,"data-test-id":`project-settings-delete-confirm-button`,onClick:S(A,[`stop`,`prevent`])},{default:v(()=>[r(b(i(y).baseText(`projects.settings.danger.deleteProject`)),1)]),_:1},8,[`disabled`])]),default:v(()=>[D.value?D.value?(_(),l(`div`,Te,[h(i(G),{color:`text-base`},{default:v(()=>[r(b(i(y).baseText(`projects.settings.delete.message`)),1)]),_:1}),f(`div`,Ee,[h(i(c),{"model-value":w.value??``,label:`transfer`,class:`mb-s`,"onUpdate:modelValue":t[0]||=e=>w.value=`transfer`},{default:v(()=>[h(i(G),{color:`text-dark`},{default:v(()=>[r(b(i(y).baseText(`projects.settings.delete.question.transfer.label`)),1)]),_:1})]),_:1},8,[`model-value`]),w.value===`transfer`?(_(),l(`div`,{key:0,class:k(e.$style.operation)},[h(i(G),{color:`text-dark`},{default:v(()=>[r(b(i(y).baseText(`projects.settings.delete.question.transfer.title`)),1)]),_:1}),h(B,{modelValue:x.value,"onUpdate:modelValue":t[1]||=e=>x.value=e,class:`pt-2xs`,"search-fn":p.value,"filter-fn":m,"empty-options-text":i(y).baseText(`projects.sharing.noMatchingProjects`)},null,8,[`modelValue`,`search-fn`,`empty-options-text`])],2)):s(``,!0),h(i(c),{"model-value":w.value??``,label:`wipe`,class:`mb-s`,"onUpdate:modelValue":t[2]||=e=>w.value=`wipe`},{default:v(()=>[h(i(G),{color:`text-dark`},{default:v(()=>[r(b(i(y).baseText(`projects.settings.delete.question.wipe.label`)),1)]),_:1})]),_:1},8,[`model-value`]),w.value===`wipe`?(_(),l(`div`,{key:1,class:k(e.$style.operation)},[h(i(j),{label:i(y).baseText(`projects.settings.delete.question.wipe.title`)},{default:v(()=>[h(i(U),{modelValue:E.value,"onUpdate:modelValue":t[3]||=e=>E.value=e,"data-test-id":`project-delete-confirm-input`,placeholder:i(y).baseText(`projects.settings.delete.question.wipe.placeholder`)},null,8,[`modelValue`,`placeholder`])]),_:1},8,[`label`])],2)):s(``,!0)])])):s(``,!0):(_(),a(i(G),{key:0,color:`text-base`},{default:v(()=>[r(b(i(y).baseText(`projects.settings.delete.message.empty`)),1)]),_:1}))]),_:1},8,[`modelValue`,`title`,`append-to`]))}}),[[`__cssModules`,{$style:{operation:`_operation_1ohxk_1`}}]]),Oe={class:`pt-l`},ke=F(m({__name:`ProjectRoleUpgradeDialog`,props:g({limit:{},planName:{}},{modelValue:{type:Boolean},modelModifiers:{}}),emits:[`update:modelValue`],setup(e){let t=e,n=T(e,`modelValue`),o=le(),s=R(),c=async()=>{await o.goToUpgrade(`rbac`,`upgrade-rbac`),n.value=!1};return(e,o)=>(_(),a(i(C),{modelValue:n.value,"onUpdate:modelValue":o[1]||=e=>n.value=e,title:i(s).baseText(`projects.settings.role.upgrade.title`),width:`500`,"append-to":`#${i(H)}`},{footer:v(()=>[f(`div`,{class:k(e.$style.footer)},[h(i(Q),{variant:`subtle`,"native-type":`button`,onClick:o[0]||=e=>n.value=!1},{default:v(()=>[r(b(i(s).baseText(`generic.cancel`)),1)]),_:1}),h(i(Q),{variant:`solid`,"native-type":`button`,onClick:c},{default:v(()=>[r(b(i(s).baseText(`projects.create.limitReached.link`)),1)]),_:1})],2)]),default:v(()=>[f(`div`,Oe,[h(i(x),{keypath:`projects.settings.role.upgrade.message`,scope:`global`},{planName:v(()=>[r(b(t.planName),1)]),limit:v(()=>[r(b(i(s).baseText(`projects.create.limit`,{adjustToNumber:t.limit,interpolate:{count:String(t.limit)}})),1)]),_:1})])]),_:1},8,[`modelValue`,`title`,`append-to`]))}}),[[`__cssModules`,{$style:{footer:`_footer_149jx_1`}}]]),Ae=[`aria-label`],je=F(m({__name:`ProjectMembersAccessCell`,props:{data:{},projectRoles:{}},setup(e){let t=e,n=R(),r=d(()=>n.baseText(`projects.settings.table.access.full`)),o=d(()=>t.projectRoles.find(e=>e.slug===t.data.role)?.displayName),s=d(()=>{let e=[n.baseText(`projects.settings.table.access.tooltip.full`,{interpolate:{name:t.data.firstName||t.data.email||``,role:t.data.instanceRole?.displayName??``}})];return o.value&&e.push(n.baseText(`projects.settings.table.access.tooltip.storedRole`,{interpolate:{projectRole:o.value}})),e.join(` `)});return(e,t)=>(_(),a(i(X),{placement:`top`,"show-after":300,content:s.value},{default:v(()=>[f(`span`,{class:k(e.$style.label),tabindex:`0`,"aria-label":`${r.value}. ${s.value}`,"data-test-id":`project-member-access-label`},[f(`span`,{class:k(e.$style.text)},b(r.value),3),h(i(W),{icon:`info`,size:`small`,color:`text-light`,class:k(e.$style.icon)},null,8,[`class`])],10,Ae)]),_:1},8,[`content`]))}}),[[`__cssModules`,{$style:{label:`_label_1myfd_1`,text:`_text_1myfd_16`,icon:`_icon_1myfd_22`}}]]),Me=m({__name:`ProjectMembersActionsCell`,props:{data:{},actions:{}},emits:[`action`],setup(e,{emit:t}){let n=e,r=t,o=e=>{r(`action`,{action:e,userId:n.data.id})};return(e,t)=>n.actions.length>0?(_(),a(i(ee),{key:0,placement:`bottom`,actions:n.actions,theme:`dark`,onAction:o},null,8,[`actions`])):s(``,!0)}}),Ne={key:1},Pe=m({__name:`ProjectMembersRoleCell`,props:{data:{},roles:{}},emits:[`update:role`,`show-role-upgrade-dialog`],setup(e,{emit:t}){let n=e,r=t,o=_e(),s=d(()=>n.roles.find(e=>e.slug===n.data.role)),c=d(()=>n.data.role!==`project:personalOwner`),u=d(()=>o.isCustomRolesFeatureEnabled),f=d(()=>ae([`rbac`],{rbac:{scope:`role:manage`}})),p=d(()=>n.roles.filter(e=>e.systemRole)),m=d(()=>n.roles.filter(e=>!e.systemRole)),h=e=>{r(`update:role`,{role:e,userId:n.data.id})};return(t,n)=>c.value?(_(),a($,{key:0,"system-roles":p.value,"custom-roles":m.value,"current-role":e.data.role,"has-custom-roles-license":u.value,"can-manage-roles":f.value,"add-custom-role-route-name":i(pe).PROJECT_NEW_ROLE,"test-id":`project-member-role-dropdown`,"onUpdate:role":h,onSystemRoleUpgradeNeeded:n[0]||=e=>r(`show-role-upgrade-dialog`)},null,8,[`system-roles`,`custom-roles`,`current-role`,`has-custom-roles-license`,`can-manage-roles`,`add-custom-role-route-name`])):(_(),l(`span`,Ne,b(s.value?.displayName),1))}}),Fe={class:`pt-xs pb-xs`},Ie=m({__name:`ProjectMembersTable`,props:g({data:{},loading:{type:Boolean},currentUserId:{},projectRoles:{},actions:{},canEditRole:{type:Boolean}},{tableOptions:{default:()=>({page:0,itemsPerPage:10,sortBy:[]})},tableOptionsModifiers:{}}),emits:g([`update:options`,`update:role`,`show-role-upgrade-dialog`,`action`],[`update:tableOptions`]),setup(e,{emit:t}){let n=R(),s=e,c=t,p=T(e,`tableOptions`),m=d(()=>s.data.items),g=u([{title:n.baseText(`projects.settings.table.header.user`),key:`name`,width:400,disableSort:!0,value:e=>e},{title:n.baseText(`projects.settings.table.header.role`),key:`role`,width:200,disableSort:!0},{title:``,key:`actions`,align:`end`,width:46,disableSort:!0,value(){}}]),x=e=>!e.alwaysHasAccess&&e.id!==s.currentUserId&&s.canEditRole,S=({role:e,userId:t})=>{c(`update:role`,{role:e,userId:t})},C=e=>e.alwaysHasAccess||e.id===s.currentUserId||e.role===`project:personalOwner`?[]:(s.actions??[]).filter(t=>t.guard?.(e)??!0);return(t,n)=>(_(),l(`div`,null,[h(i(K),{"sort-by":p.value.sortBy,"onUpdate:sortBy":n[2]||=e=>p.value.sortBy=e,page:p.value.page,"onUpdate:page":n[3]||=e=>p.value.page=e,"items-per-page":p.value.itemsPerPage,"onUpdate:itemsPerPage":n[4]||=e=>p.value.itemsPerPage=e,headers:g.value,items:m.value,"items-length":e.data.count,loading:e.loading,"page-sizes":[10,25,50],"onUpdate:options":n[5]||=e=>c(`update:options`,e)},{"item.name":v(({value:e})=>[f(`div`,Fe,[h(i(xe),y(o(e)),null,16)])]),"item.role":v(({item:e})=>[x(e)?(_(),a(Pe,{key:0,data:e,roles:s.projectRoles,"onUpdate:role":S,onShowRoleUpgradeDialog:n[0]||=e=>c(`show-role-upgrade-dialog`)},null,8,[`data`,`roles`])):e.alwaysHasAccess?(_(),a(je,{key:1,data:e,"project-roles":s.projectRoles},null,8,[`data`,`project-roles`])):(_(),a(i(G),{key:2,color:`text-dark`},{default:v(()=>[r(b(s.projectRoles.find(t=>t.slug===e.role)?.displayName??e.role),1)]),_:2},1024))]),"item.actions":v(({item:e})=>[h(Me,{data:e,actions:C(e),onAction:n[1]||=e=>t.$emit(`action`,e)},null,8,[`data`,`actions`])]),_:2},1032,[`sort-by`,`page`,`items-per-page`,`headers`,`items`,`items-length`,`loading`])]))}}),Le={key:0,"data-test-id":`external-secrets-section`},Re={class:`mb-s`},ze={for:`projectExternalSecrets`},Be={key:0},Ve=F(m({__name:`ProjectExternalSecrets`,setup(e,{expose:o}){let c=R(),p=re(),m=D(),g=te(),y=ne(),x=se(),S=_e(),C=we(),w=ue(g.currentProjectId),T=u([]),E=n({}),ee=u(!1),j=u(``),N=u(new Set),P=u(0),F=u(5),ie=d(()=>S.moduleSettings[`external-secrets`]?.forProjects??!1),ae=d(()=>g.currentProject?.scopes?.includes(`externalSecretsProvider:list`)??!1),oe=d(()=>g.currentProject?.scopes?.includes(`externalSecretsProvider:create`)??!1),z=d(()=>x.hasScope(`externalSecretsProvider:create`)),B=d(()=>ie.value&&ae.value),ce=d(()=>T.value.length>0?null:z.value?C.activeProviders.value.length>0?`instance-admin-no-project-providers`:`project-admin-no-providers`:oe.value?`project-admin-no-providers`:null),V=d(()=>{let e=ce.value;return e?{"instance-admin-no-project-providers":{heading:c.baseText(`projects.settings.externalSecrets.emptyState.heading`),description:c.baseText(`projects.settings.externalSecrets.emptyState.instanceAdmin.noProjectProviders.description`),buttonText:c.baseText(`projects.settings.externalSecrets.button.shareSecretsStore`),buttonAction:be,testId:`external-secrets-empty-state-no-project-providers`},"project-admin-no-providers":{heading:c.baseText(`projects.settings.externalSecrets.emptyState.heading`),description:c.baseText(`projects.settings.externalSecrets.emptyState.projectAdmin.description`),buttonText:c.baseText(`projects.settings.externalSecrets.button.addSecretsStore`),buttonAction:ye,testId:`external-secrets-empty-state-project-admin`}}[e]:null}),le=d(()=>[...T.value].sort((e,t)=>e.name.localeCompare(t.name))),H=d(()=>{if(!j.value.trim())return le.value;let e=j.value.toLowerCase();return le.value.filter(t=>t.name.toLowerCase().includes(e)?!0:(E[t.name]??[]).some(t=>t.name.toLowerCase().includes(e)))}),de=d(()=>{let e=P.value*F.value,t=e+F.value;return H.value.slice(e,t)});function fe(e){let t=E[e]??[],n=j.value.trim().toLowerCase();return n?t.filter(t=>t.name.toLowerCase().includes(n)||e.toLowerCase().includes(n)):t}let me=d(()=>de.value.map(e=>{let t=N.value.has(e.name);return{id:`header-${e.name}`,connectionName:e.name,secretsCount:e.secretsCount,isExpanded:t,secrets:t?fe(e.name):[]}})),he=d(()=>[{title:c.baseText(`projects.settings.externalSecrets.table.header.secretName`),key:`connectionName`,disableSort:!0,resize:!1,value:e=>e.connectionName}]);async function q(e){if(E[e]?.length)return;let{secrets:t}=await w.getConnection(e);E[e]=t??[]}async function J(){await Promise.all(de.value.filter(e=>e.secretsCount>0).map(async e=>await q(e.name)))}async function Y(){if(!(!g.currentProjectId||!ae.value||!ie.value)){ee.value=!0;try{T.value=await g.getProjectSecretProviders(g.currentProjectId),await J()}catch(e){p.showError(e,c.baseText(`projects.settings.externalSecrets.load.error`))}finally{ee.value=!1}}}function ge(e){N.value.has(e)?N.value.delete(e):N.value.add(e)}function X(e,t=`connection`){let n=C.activeProviders.value.map(e=>e.name);y.openModalWithData({name:M,data:{activeTab:t,providerKey:e,providerTypes:C.providerTypes.value,existingProviderNames:n,projectId:g.currentProjectId,onClose:async()=>{await Y()}}})}function ve(e){X(e,`connection`)}function ye(){oe.value&&X()}function be(){m.push({name:pe.EXTERNAL_SECRETS_SETTINGS})}return A(j,()=>{P.value=0}),A([P,F],async()=>{await J()}),A([()=>g.currentProjectId,B],async([e,t])=>{e&&t&&await Y()},{immediate:!0}),A(B,async e=>{e&&(await Promise.allSettled([C.fetchProviderTypes(),C.fetchActiveConnections()]),z.value&&await g.getAllProjects())},{immediate:!0}),o({fetchProjectSecretConnections:Y}),(e,n)=>B.value?(_(),l(`fieldset`,Le,[f(`h3`,Re,[f(`label`,ze,b(i(c).baseText(`projects.settings.externalSecrets`)),1)]),V.value?(_(),a(i(I),{key:0,"data-test-id":V.value.testId,description:`yes`},{description:v(()=>[h(i(L),{tag:`h3`,size:`small`,class:`mb-2xs`},{default:v(()=>[r(b(V.value.heading),1)]),_:1}),h(i(G),{size:`small`,color:`text-base`,class:k(e.$style.description)},{default:v(()=>[r(b(V.value.description),1)]),_:1},8,[`class`])]),additionalContent:v(()=>[h(i(Q),{variant:`ghost`,size:`xsmall`,class:`mr-2xs`,element:`a`,href:i(c).baseText(`settings.externalSecrets.docs`),target:`_blank`,"data-test-id":`secrets-provider-connections-learn-more`},{default:v(()=>[r(b(i(c).baseText(`generic.learnMore`))+` `,1),h(i(W),{icon:`arrow-up-right`})]),_:1},8,[`href`]),h(i(Q),{variant:`subtle`,size:`xsmall`,"data-test-id":`${ce.value}-button`,onClick:V.value.buttonAction},{default:v(()=>[r(b(V.value.buttonText),1)]),_:1},8,[`data-test-id`,`onClick`])]),_:1},8,[`data-test-id`])):T.value.length>0?(_(),l(`div`,{key:1,class:k(e.$style.secretProvidersContainer)},[f(`div`,{class:k(e.$style.actionsContainer)},[f(`div`,{class:k(e.$style.searchContainer)},[h(i(U),{modelValue:j.value,"onUpdate:modelValue":n[0]||=e=>j.value=e,placeholder:i(c).baseText(`projects.settings.externalSecrets.search.placeholder`),clearable:``,"data-test-id":`secrets-providers-search`},{prefix:v(()=>[h(i(W),{icon:`search`})]),_:1},8,[`modelValue`,`placeholder`])],2),oe.value?(_(),a(i(Q),{key:0,variant:`outline`,size:`large`,"data-test-id":`external-secrets-add-button`,onClick:ye},{default:v(()=>[r(b(i(c).baseText(`projects.settings.externalSecrets.button.addSecretsStore`)),1)]),_:1})):s(``,!0)],2),h(i(K),{page:P.value,"onUpdate:page":n[1]||=e=>P.value=e,"items-per-page":F.value,"onUpdate:itemsPerPage":n[2]||=e=>F.value=e,headers:he.value,items:me.value,"items-length":H.value.length,loading:ee.value,"page-sizes":[5,10,25,50],"row-props":()=>({class:e.$style.groupHeaderRow}),"data-test-id":`external-secrets-table`},{item:v(({item:n})=>[f(`tr`,{class:k(e.$style.groupHeaderRow)},[f(`td`,{class:k(e.$style.groupHeaderCell)},[f(`div`,{class:k(e.$style.groupHeaderContent)},[h(i(Z),{variant:`ghost`,icon:n.isExpanded?`chevron-down`:`chevron-right`,class:k(e.$style.expandButton),disabled:n.secretsCount===0,title:n.isExpanded?i(c).baseText(`projects.settings.externalSecrets.collapse`):i(c).baseText(`projects.settings.externalSecrets.expand`),"data-test-id":`external-secrets-expand-button`,onClick:e=>ge(n.connectionName)},null,8,[`icon`,`class`,`disabled`,`title`,`onClick`]),h(i(G),{class:k(e.$style.connectionLink),bold:``,onClick:e=>ve(n.connectionName)},{default:v(()=>[r(b(n.connectionName),1)]),_:2},1032,[`class`,`onClick`]),h(i(G),{color:`text-light`,size:`small`},{default:v(()=>[r(b(n.secretsCount===1?i(c).baseText(`settings.secretsProviderConnections.oneSecret`):i(c).baseText(`settings.secretsProviderConnections.secrets`,{interpolate:{count:n.secretsCount.toString()}})),1)]),_:2},1024)],2)],2)],2),n.isExpanded&&n.secrets.length>0?(_(),l(`tr`,Be,[f(`td`,{class:k(e.$style.secretsCell)},[f(`div`,{class:k(e.$style.secretsList)},[(_(!0),l(t,null,O(n.secrets,t=>(_(),l(`div`,{key:t.name,class:k(e.$style.secretRow)},[f(`span`,null,[f(`code`,{class:k(e.$style.secretName)},b(t.name),3)])],2))),128))],2)],2)])):s(``,!0)]),_:1},8,[`page`,`items-per-page`,`headers`,`items`,`items-length`,`loading`,`row-props`])],2)):s(``,!0)])):s(``,!0)}}),[[`__cssModules`,{$style:{description:`_description_a1205_1`,secretProvidersContainer:`_secretProvidersContainer_a1205_6`,actionsContainer:`_actionsContainer_a1205_12`,searchContainer:`_searchContainer_a1205_17`,groupHeaderRow:`_groupHeaderRow_a1205_22`,groupHeaderCell:`_groupHeaderCell_a1205_29`,secretsCell:`_secretsCell_a1205_41`,secretsList:`_secretsList_a1205_45`,secretRow:`_secretRow_a1205_50`,groupHeaderContent:`_groupHeaderContent_a1205_65`,expandButton:`_expandButton_a1205_74`,secretName:`_secretName_a1205_88`,connectionLink:`_connectionLink_a1205_95`}}]]),He=F(m({__name:`ProjectSettingsCustomTelemetryTags`,props:{modelValue:{}},emits:[`update:modelValue`,`validate`],setup(e,{expose:n,emit:a}){let o=e,c=a,p=R(),m=u(o.modelValue.map(()=>!1));A(()=>o.modelValue.length,e=>{e<m.value.length&&(m.value=m.value.slice(0,e))});let g=d(()=>{let e=new Set;return o.modelValue.map(t=>{let n=t.key.trim();return n?e.has(n)?p.baseText(`projects.settings.customSpanAttributes.error.duplicateKey`):(e.add(n),null):p.baseText(`projects.settings.customSpanAttributes.error.emptyKey`)})});A(d(()=>g.value.some(e=>e!==null)),e=>c(`validate`,!e),{immediate:!0});function y(){m.value=o.modelValue.map(()=>!1)}function x(e){m.value[e]=!0}function C(){c(`update:modelValue`,[...o.modelValue,{key:``,value:``}]),m.value.push(!1)}function w(e){c(`update:modelValue`,o.modelValue.filter((t,n)=>n!==e)),m.value.splice(e,1)}function T(e,t,n){c(`update:modelValue`,o.modelValue.map((r,i)=>i===e?{...r,[t]:n}:r))}return n({resetTouched:y}),(n,a)=>(_(),l(`div`,null,[h(i(G),{size:`small`,class:`mb-s`,tag:`p`},{default:v(()=>[r(b(i(p).baseText(`projects.settings.customSpanAttributes.description`))+` `,1),f(`a`,{class:k(n.$style.docsLink),href:`https://docs.n8n.io/hosting/logging-monitoring/opentelemetry/`,target:`_blank`},[r(b(i(p).baseText(`projects.settings.customSpanAttributes.docsLink`)),1),h(i(W),{icon:`arrow-up-right`,size:`xsmall`})],2)]),_:1}),(_(!0),l(t,null,O(e.modelValue,(e,t)=>(_(),l(`div`,{key:t,class:k(n.$style.telemetryTagContainer)},[f(`div`,{class:k(n.$style.telemetryTagRow)},[h(i(j),{label:t===0?i(p).baseText(`projects.settings.customSpanAttributes.key.label`):void 0,size:`small`},{default:v(()=>[h(i(U),{"model-value":e.key,placeholder:i(p).baseText(`projects.settings.customSpanAttributes.key.placeholder`),"aria-label":i(p).baseText(`projects.settings.customSpanAttributes.key.label`),"data-test-id":`project-telemetry-tag-key`,"onUpdate:modelValue":e=>T(t,`key`,e),onBlur:e=>x(t)},null,8,[`model-value`,`placeholder`,`aria-label`,`onUpdate:modelValue`,`onBlur`])]),_:2},1032,[`label`]),h(i(j),{label:t===0?i(p).baseText(`projects.settings.customSpanAttributes.value.label`):void 0,size:`small`},{default:v(()=>[h(i(U),{"model-value":e.value,placeholder:i(p).baseText(`projects.settings.customSpanAttributes.value.placeholder`),"aria-label":i(p).baseText(`projects.settings.customSpanAttributes.value.label`),"data-test-id":`project-telemetry-tag-value`,"onUpdate:modelValue":e=>T(t,`value`,e)},null,8,[`model-value`,`placeholder`,`aria-label`,`onUpdate:modelValue`])]),_:2},1032,[`label`]),h(i(Q),{icon:`trash-2`,variant:`ghost`,size:`small`,"native-type":`button`,title:i(p).baseText(`projects.settings.customSpanAttributes.remove`),"aria-label":i(p).baseText(`projects.settings.customSpanAttributes.remove`),"data-test-id":`project-telemetry-tag-remove`,onClick:S(e=>w(t),[`stop`,`prevent`])},null,8,[`title`,`aria-label`,`onClick`])],2),m.value[t]&&g.value[t]?(_(),l(`span`,{key:0,class:k(n.$style.tagErrorMessage),"data-test-id":`project-telemetry-tag-key-error`},b(g.value[t]),3)):s(``,!0)],2))),128)),h(i(Q),{icon:`plus`,variant:`subtle`,"native-type":`button`,class:`mt-2xs`,"data-test-id":`project-telemetry-tag-add`,onClick:S(C,[`stop`,`prevent`])},{default:v(()=>[r(b(i(p).baseText(`projects.settings.customSpanAttributes.add`)),1)]),_:1})]))}}),[[`__cssModules`,{$style:{telemetryTagContainer:`_telemetryTagContainer_152r7_1`,telemetryTagRow:`_telemetryTagRow_152r7_6`,tagErrorMessage:`_tagErrorMessage_152r7_12`,docsLink:`_docsLink_152r7_19`}}]]),Ue={class:`project-worker-pools`,"data-test-id":`project-worker-pools-section`},We={for:`projectDefaultPool`},Ge=F(m({__name:`ProjectWorkerPoolsSection`,props:{defaultPool:{},availablePools:{},disabled:{type:Boolean}},emits:[`update:defaultPool`],setup(e,{emit:n}){let o=R(),s=e,c=n,u=e=>{c(`update:defaultPool`,e===``?``:e)};return(e,n)=>(_(),l(`fieldset`,Ue,[f(`h3`,null,[f(`label`,We,b(i(o).baseText(`projects.settings.workerPools.title`)),1)]),h(i(q),{id:`projectDefaultPool`,"model-value":s.defaultPool??``,disabled:s.disabled,class:k(e.$style.input),"data-test-id":`project-default-pool-input`,"onUpdate:modelValue":u},{default:v(()=>[h(i(z),{label:i(o).baseText(`projects.settings.workerPools.defaultQueue`),value:``},null,8,[`label`]),(_(!0),l(t,null,O(s.availablePools,e=>(_(),a(i(z),{key:e,label:e,value:e},null,8,[`label`,`value`]))),128))]),_:1},8,[`model-value`,`disabled`,`class`]),h(i(G),{color:`text-light`,size:`small`,class:k(e.$style.help)},{default:v(()=>[r(b(i(o).baseText(`projects.settings.workerPools.help`)),1)]),_:1},8,[`class`])]))}}),[[`__cssModules`,{$style:{input:`_input_1oor6_1`,help:`_help_1oor6_5`}}]]),Ke={for:`projectName`},qe={for:`projectDescription`},Je={key:1,id:`projectMembers`},Ye={for:`projectMembers`},Xe={key:0,class:`mb-m`,"data-test-id":`project-roles-managed-notice`},Ze={key:0},Qe={class:`mb-m`},$e=10,et=F(m({__name:`ProjectSettings`,setup(n){let o=he(),c=R(),m=te(),g=oe(),y=me(),x=_e(),C=re(),T=D(),O=ce(),ee=ye(),j=d(()=>!!ie(m.currentProject?.scopes).project.update),M=d(()=>!!ie(m.currentProject?.scopes).project.manageMembers),F=e=>{C.showError(e,c.baseText(`projects.settings.save.error.title`))},I=u(!1),ne=u(!1),L=u(!1),z=u(!1),se=u(!0),B=u(!0),le=d(()=>z.value&&se.value&&B.value),ue=u({credentials:-1,dataTables:-1,workflows:-1}),H=u({name:``,description:``,relations:[],customTelemetryTags:[],defaultPool:null}),K=u(!1),q=u(null),J=u({...fe}),X=u(``),Z=u({page:0,itemsPerPage:10,sortBy:[]}),xe=u(``),$=u([]),we=u(!1),Te=d(()=>ae([`rbac`],{rbac:{scope:`user:list`}})||M.value),Ee=d(()=>new Map((m.currentProject?.implicitMembers??[]).map(e=>[e.id,e]))),Oe=d(()=>$.value.filter(e=>!(H.value.relations||[]).find(t=>t.id===e.id)&&!Ee.value.has(e.id))),Ae=d(()=>g.processedProjectRoles.find(e=>e.licensed)?.slug),je=d(()=>bt.value||!M.value?[]:[{label:c.baseText(`projects.settings.table.row.removeUser`),value:`remove`,guard:e=>e.id!==o.currentUser?.id&&e.role!==`project:personalOwner`}]),Me=async e=>{if(!m.currentProject||!o.usersById[e])return;let t=Ae.value;if(t){H.value.relations.find(t=>t.id===e)||H.value.relations.push({id:e,role:t});try{K.value=!0,await m.addMember(m.currentProject.id,{userId:e,role:t}),C.showMessage({type:`success`,title:c.baseText(`projects.settings.member.added.title`)}),O.track(`User added member to project`,{project_id:m.currentProject.id,target_user_id:e,role:t})}catch(t){H.value.relations=H.value.relations.filter(t=>t.id!==e),F(t)}}},Ne=async({userId:e,role:t})=>{if(!m.currentProject)return;let n=H.value.relations.findIndex(t=>t.id===e);if(n===-1)return;let r=H.value.relations[n].role;H.value.relations[n].role=t;try{K.value=!0,await m.updateMemberRole(m.currentProject.id,e,t),g.fetchRoles(),C.showMessage({type:`success`,title:c.baseText(`projects.settings.memberRole.updated.title`)}),O.track(`User changed member role on project`,{project_id:m.currentProject.id,target_user_id:e,role:t})}catch(e){H.value.relations[n].role=r,C.showError(e,c.baseText(`projects.settings.memberRole.update.error.title`))}},Pe=()=>{L.value=!0},Fe=u(null);async function Le(e){let t=m.currentProject;if(!t)return;let n=H.value.relations.findIndex(t=>t.id===e);if(n===-1)return;let r=H.value.relations.splice(n,1)[0];if(t.relations.some(t=>t.id===e))try{K.value=!0,await m.removeMember(t.id,e),C.showMessage({type:`success`,title:c.baseText(`projects.settings.member.removed.title`)}),O.track(`User removed member from project`,{project_id:t.id,target_user_id:e})}catch(e){H.value.relations.splice(n,0,r),F(e)}}let Re=async({action:e,userId:t})=>{switch(e){case`remove`:await Le(t);break;default:break}},ze=()=>{H.value.relations=m.currentProject?.relations?Y(m.currentProject.relations):[],H.value.name=m.currentProject?.name??``,H.value.description=m.currentProject?.description??``,H.value.customTelemetryTags=m.currentProject?.customTelemetryTags?Y(m.currentProject.customTelemetryTags):[],Fe.value?.resetTouched(),H.value.defaultPool=m.currentProjectPoolSettings?.defaultPool??null},Be=()=>{let e=m.currentProjectPoolSettings?.defaultPool||null;return(H.value.defaultPool||null)!==e},Ue=()=>{ze(),L.value=!1},We=()=>{let e={};return m.currentProject?(H.value.name!==m.currentProject.name&&(e.name=H.value.name??``),H.value.description!==m.currentProject.description&&(e.description=H.value.description??``),H.value.relations.length!==m.currentProject.relations.length&&(e.memberAdded=H.value.relations.filter(e=>!m.currentProject?.relations.find(t=>t.id===e.id)),e.memberRemoved=m.currentProject.relations.filter(e=>!H.value.relations.find(t=>t.id===e.id))),e.role=H.value.relations.filter(t=>m.currentProject?.relations.find(e=>e.id===t.id)?.role!==t.role&&!e.memberAdded?.find(e=>e.id===t.id)),e):e},et=e=>{let t=m.currentProject?.id;e.name&&O.track(`User changed project name`,{project_id:t,name:e.name}),e.memberAdded?.forEach(e=>{O.track(`User added member to project`,{project_id:t,target_user_id:e.id,role:e.role})}),e.memberRemoved?.forEach(e=>{O.track(`User removed member from project`,{project_id:t,target_user_id:e.id})}),e.role?.forEach(e=>{O.track(`User changed member role on project`,{project_id:t,target_user_id:e.id,role:e.role})})},tt=async()=>{if(m.currentProject)try{let e=m.currentProject.id,t=[];t.push(m.updateProject(e,{name:H.value.name??``,description:H.value.description??``,...x.isOtelCustomSpanAttributesEnabled?{customTelemetryTags:H.value.customTelemetryTags}:{}})),st.value&&Be()&&t.push(m.updateCurrentProjectPoolSettings(e,{defaultPool:H.value.defaultPool??``})),await Promise.all(t),L.value=!1}catch(e){throw F(e),e}},nt=async()=>{if(L.value)try{await tt(),et(We()),C.showMessage({title:c.baseText(`projects.settings.save.successful.title`,{interpolate:{projectName:H.value.name??``}}),type:`success`})}catch{}},rt=async()=>{m.currentProjectId&&(ue.value=await m.getResourceCounts(m.currentProjectId)),I.value=!0},it=async e=>{try{if(m.currentProject){let t=m.currentProject?.name??``;await m.deleteProject(m.currentProject.id,e),await T.push({name:pe.HOMEPAGE}),C.showMessage({title:c.baseText(`projects.settings.delete.successful.title`,{interpolate:{projectName:t}}),type:`success`}),I.value=!0}}catch(e){C.showError(e,c.baseText(`projects.settings.delete.error.title`))}},at=()=>{H.value.name===c.baseText(`projects.settings.newProjectName`)&&(q.value?.inputRef?.focus(),q.value?.inputRef?.select())},ot=async()=>{if(m.currentProject)try{await m.updateProject(m.currentProject.id,{icon:J.value}),C.showMessage({title:c.baseText(`projects.settings.icon.update.successful.title`),type:`success`})}catch(e){F(e)}},st=d(()=>x.isWorkerPoolsEnabled),ct=()=>{H.value.defaultPool=m.currentProjectPoolSettings?.defaultPool??null};A(()=>m.currentProject,async()=>{if(K.value){K.value=!1;return}ze(),await p(),at(),m.currentProject?.icon&&ge(m.currentProject.icon)&&(J.value=m.currentProject.icon);let e=m.currentProjectId;j.value&&e&&st.value&&await m.fetchProjectPoolSettings(e).catch(()=>{}).finally(ct)},{immediate:!0});let lt=d(()=>{let e=Ee.value,t=o.currentUser?.id,n=H.value.relations.map(n=>{let r=o.usersById[n.id],i=P(n.role)?n.role:`project:viewer`,a=e.get(n.id);return{...r,...n,role:i,firstName:n?.firstName??r?.firstName??null,lastName:n?.lastName??r?.lastName??null,email:n?.email??r?.email??null,isCurrentUser:n.id===t,...a&&{alwaysHasAccess:!0,instanceRole:a.globalRole}}}),r=new Set(n.map(e=>e.id));for(let i of e.values())r.has(i.id)||n.push({id:i.id,firstName:i.firstName??null,lastName:i.lastName??null,email:i.email??null,role:i.globalRole.slug,isPendingUser:o.usersById[i.id]?.isPendingUser??!1,isCurrentUser:i.id===t,alwaysHasAccess:!0,instanceRole:i.globalRole});return n}),ut=d(()=>{if(!X.value.trim())return lt.value;let e=X.value.toLowerCase();return lt.value.filter(t=>{let n=`${t.firstName??``} ${t.lastName??``}`.toLowerCase(),r=(t.email??``).toLowerCase();return n.includes(e)||r.includes(e)})}),dt=e=>`${e.firstName??``} ${e.lastName??``}`.trim()||(e.email??``),ft=d(()=>{let e=m.currentProject?.creatorId,t=o.currentUser?.id,n=n=>e&&n.id===e?0:n.id===t?1:2;return[...ut.value].sort((e,t)=>n(e)-n(t)||dt(e).localeCompare(dt(t),void 0,{sensitivity:`base`}))}),pt=d(()=>{let{page:e,itemsPerPage:t}=Z.value,n=e*t;return{items:ft.value.slice(n,n+t),count:ft.value.length}});A(()=>ft.value.length,e=>{let{page:t,itemsPerPage:n}=Z.value;t>0&&t*n>=e&&(Z.value.page=Math.max(0,Math.ceil(e/n)-1))});let mt=d(()=>lt.value.length>=$e);A(mt,e=>{!e&&X.value&&(X.value=``)});let ht=w(()=>{Z.value.page=0},N(V.INPUT.SEARCH)),gt=e=>{X.value=e,ht()},_t=e=>{Z.value=e},vt=async e=>{xe.value=e,we.value=!0;try{let t=m.currentProject?.id;if(!t){$.value=[];return}let n={};e.trim()&&(n.fullText=e),Te.value||(n.projectId=t),await o.fetchUsers({take:50,filter:n}),e.trim()?$.value=o.allUsers.filter(t=>{let n=e.toLowerCase(),r=`${t.firstName??``} ${t.lastName??``}`.toLowerCase(),i=(t.email??``).toLowerCase();return r.includes(n)||i.includes(n)}):$.value=o.allUsers}catch(e){C.showError(e,c.baseText(`projects.settings.users.search.error`))}finally{we.value=!1}},yt=w(vt,N(V.INPUT.SEARCH));e(async()=>{M.value&&await vt(``)});let bt=d(()=>m.currentProject?.rolesManaged??!1);return E(async()=>{ee.set(c.baseText(`projects.settings`)),!(!j.value&&!M.value)&&(at(),await g.fetchRoles())}),(e,n)=>(_(),l(`div`,{class:k(e.$style.projectSettings),"data-test-id":`project-settings-container`},[f(`div`,{class:k(e.$style.header)},[h(Ce),j.value?(_(),l(`div`,{key:0,class:k(e.$style.headerRow)},[h(i(G),{tag:`h1`,size:`xlarge`,class:`pt-xs pb-m`},{default:v(()=>[r(b(i(c).baseText(`projects.settings.info`)),1)]),_:1}),f(`div`,{class:k(e.$style.headerButtons)},[h(i(Q),{variant:`subtle`,"native-type":`button`,disabled:!L.value,class:`mr-2xs`,"data-test-id":`project-settings-cancel-button`,onClick:S(Ue,[`stop`,`prevent`])},{default:v(()=>[r(b(i(c).baseText(`projects.settings.button.cancel`)),1)]),_:1},8,[`disabled`]),h(i(Q),{disabled:!le.value||!L.value,variant:`solid`,"data-test-id":`project-settings-save-button`,onClick:S(nt,[`stop`,`prevent`])},{default:v(()=>[r(b(i(c).baseText(`projects.settings.button.save`)),1)]),_:1},8,[`disabled`])],2)],2)):s(``,!0)],2),f(`form`,{onSubmit:S(nt,[`prevent`])},[j.value?(_(),l(t,{key:0},[f(`fieldset`,null,[f(`label`,Ke,b(i(c).baseText(`projects.settings.name`)),1),f(`div`,{class:k(e.$style.projectName)},[h(i(ve),{modelValue:J.value,"onUpdate:modelValue":[n[0]||=e=>J.value=e,ot],"button-tooltip":i(c).baseText(`projects.settings.iconPicker.button.tooltip`),"show-color-picker":``},null,8,[`modelValue`,`button-tooltip`]),h(i(be),{id:`projectName`,ref_key:`nameInput`,ref:q,modelValue:H.value.name,"onUpdate:modelValue":n[1]||=e=>H.value.name=e,label:``,type:`text`,name:`name`,required:``,"data-test-id":`project-settings-name-input`,class:k(e.$style.projectNameInput),onEnter:nt,onInput:Pe,onValidate:n[2]||=e=>z.value=e},null,8,[`modelValue`,`class`])],2)]),f(`fieldset`,null,[f(`label`,qe,b(i(c).baseText(`projects.settings.description`)),1),h(i(be),{id:`projectDescription`,modelValue:H.value.description,"onUpdate:modelValue":n[3]||=e=>H.value.description=e,label:``,name:`description`,type:`textarea`,maxlength:512,autosize:!0,"data-test-id":`project-settings-description-input`,class:k(e.$style.projectDescriptionInput),onEnter:nt,onInput:Pe,onValidate:n[4]||=e=>se.value=e},null,8,[`modelValue`,`class`])])],64)):s(``,!0),h(Ve,{class:k(e.$style.externalSecrets)},null,8,[`class`]),j.value||M.value?(_(),l(`fieldset`,Je,[f(`h3`,null,[f(`label`,Ye,b(i(c).baseText(`projects.settings.projectMembers`)),1)]),f(`div`,{class:k([e.$style.membersInputRow,`mb-s`])},[h(i(Se),{id:`projectMembers`,class:k(e.$style.userSelect),size:`large`,users:Oe.value,"current-user-id":i(o).currentUser?.id,placeholder:i(c).baseText(`workflows.shareModal.select.placeholder`),"data-test-id":`project-members-select`,remote:``,"remote-method":i(yt),loading:we.value,disabled:bt.value||!M.value,"onUpdate:modelValue":Me},{prefix:v(()=>[h(i(W),{icon:`search`})]),_:1},8,[`class`,`users`,`current-user-id`,`placeholder`,`remote-method`,`loading`,`disabled`]),mt.value?(_(),a(i(U),{key:0,class:k(e.$style.search),"model-value":X.value,placeholder:i(c).baseText(`projects.settings.members.search.placeholder`),clearable:``,"data-test-id":`project-members-search`,"onUpdate:modelValue":gt},{prefix:v(()=>[h(i(W),{icon:`search`})]),_:1},8,[`class`,`model-value`,`placeholder`])):s(``,!0)],2),bt.value?(_(),l(`div`,Xe,[h(i(de),{type:`info`,title:i(c).baseText(`settings.projectRolesManaged.description`)},null,8,[`title`])])):s(``,!0),lt.value.length>0?(_(),l(`div`,{key:1,class:k(e.$style.membersTableContainer)},[h(Ie,{"table-options":Z.value,"onUpdate:tableOptions":n[5]||=e=>Z.value=e,"data-test-id":`project-members-table`,data:pt.value,"current-user-id":i(o).currentUser?.id,"project-roles":i(g).processedProjectRoles,actions:je.value,"can-edit-role":!bt.value&&M.value,"onUpdate:options":_t,"onUpdate:role":Ne,onShowRoleUpgradeDialog:n[6]||=e=>ne.value=!0,onAction:Re},null,8,[`table-options`,`data`,`current-user-id`,`project-roles`,`actions`,`can-edit-role`])],2)):s(``,!0)])):s(``,!0),j.value?(_(),l(t,{key:2},[i(x).isOtelCustomSpanAttributesEnabled?(_(),l(`fieldset`,Ze,[f(`h3`,null,[f(`label`,null,b(i(c).baseText(`projects.settings.customSpanAttributes.label`)),1)]),h(He,{ref_key:`telemetryTagsRef`,ref:Fe,modelValue:H.value.customTelemetryTags,"onUpdate:modelValue":[n[7]||=e=>H.value.customTelemetryTags=e,Pe],onValidate:n[8]||=e=>B.value=e},null,8,[`modelValue`])])):s(``,!0),st.value?(_(),a(Ge,{key:1,"default-pool":H.value.defaultPool,"available-pools":i(m).currentProjectPoolSettings?.availablePools??[],"onUpdate:defaultPool":n[9]||=e=>{H.value.defaultPool=e,Pe()}},null,8,[`default-pool`,`available-pools`])):s(``,!0),f(`fieldset`,null,[f(`h3`,Qe,b(i(c).baseText(`projects.settings.danger.title`)),1),f(`small`,{class:k(e.$style.danger)},b(i(c).baseText(`projects.settings.danger.message`)),3),h(i(Q),{variant:`subtle`,size:`large`,"native-type":`button`,"data-test-id":`project-settings-delete-button`,onClick:S(rt,[`stop`,`prevent`])},{default:v(()=>[r(b(i(c).baseText(`projects.settings.danger.deleteProject`)),1)]),_:1})])],64)):s(``,!0)],32),h(De,{modelValue:I.value,"onUpdate:modelValue":n[10]||=e=>I.value=e,"current-project":i(m).currentProject,"resource-counts":ue.value,onConfirmDelete:it},null,8,[`modelValue`,`current-project`,`resource-counts`]),h(ke,{modelValue:ne.value,"onUpdate:modelValue":n[11]||=e=>ne.value=e,limit:i(m).teamProjectsLimit,"plan-name":i(y).currentPlanData?.displayName},null,8,[`modelValue`,`limit`,`plan-name`])],2))}}),[[`__cssModules`,{$style:{projectSettings:`_projectSettings_qlzrv_1`,header:`_header_qlzrv_25`,headerRow:`_headerRow_qlzrv_31`,headerButtons:`_headerButtons_qlzrv_38`,upgrade:`_upgrade_qlzrv_44`,externalSecrets:`_externalSecrets_qlzrv_48`,membersInputRow:`_membersInputRow_qlzrv_53`,membersTableContainer:`_membersTableContainer_qlzrv_61`,search:`_search_qlzrv_65`,projectName:`_projectName_qlzrv_70`,projectNameInput:`_projectNameInput_qlzrv_75`,projectDescriptionInput:`_projectDescriptionInput_qlzrv_79`,userSelect:`_userSelect_qlzrv_80`,danger:`_danger_qlzrv_99`}}]]);export{et as default};
1
+ try{(function(){var e=typeof window<`u`?window:typeof global<`u`?global:typeof globalThis<`u`?globalThis:typeof self<`u`?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]=`a7f3b766-cb35-44a6-8756-0dc6dd1f2a7c`,e._sentryDebugIdIdentifier=`sentry-dbid-a7f3b766-cb35-44a6-8756-0dc6dd1f2a7c`)})()}catch{}import"./rolldown-runtime-BobR2NKB.js";import{$d as e,Ad as t,Af as n,Bd as r,Bf as i,Fd as a,Gd as o,Id as s,Is as c,Ld as l,Mf as u,Nd as d,Pd as f,Qd as p,Ud as m,Vd as h,Xd as g,af as _,bf as v,cp as y,fp as b,gd as x,kd as S,ks as C,ld as w,mf as T,nf as E,os as D,sf as O,sp as k,vf as A}from"./vendor-BCjXakEm.js";import{$C as ee,Af as te,CC as j,Cg as M,Cm as N,Cp as P,Cw as F,DC as I,Fp as ne,J_ as re,My as ie,Nf as ae,No as oe,OC as L,Ow as R,PC as z,Pf as se,Po as B,Q_ as ce,R_ as V,Su as le,Ui as ue,Wm as H,XC as de,Xp as fe,Y_ as pe,Z_ as me,_w as U,bw as W,dw as G,ev as he,gS as K,jC as q,kf as J,lx as Y,oS as ge,pw as X,tv as _e,vS as ve,vd as ye,vw as Z,xC as be,xS as xe,yS as Se,yw as Q}from"./app-BVFAtyJy.js";import{t as Ce}from"./ProjectHeader-Ba9xlaLr.js";import{t as $}from"./RoleSelectDropdown-DM3Q3oyi.js";import{t as we}from"./useSecretsProvidersList.ee-DWm1H7r7.js";var Te={key:1},Ee={class:`pt-l`},De=F(m({__name:`ProjectDeleteDialog`,props:g({currentProject:{},searchFn:{type:Function},resourceCounts:{}},{modelValue:{type:Boolean},modelModifiers:{}}),emits:g([`confirmDelete`],[`update:modelValue`]),setup(e,{emit:t}){let n=e,o=T(e,`modelValue`),p=d(()=>n.searchFn??J()),m=e=>e.id!==n.currentProject?.id,g=t,y=R(),x=u(null),w=u(null),E=u(``),D=d(()=>n.resourceCounts.credentials+n.resourceCounts.workflows+n.resourceCounts.dataTables>0),O=d(()=>{let e=y.baseText(`projects.settings.delete.question.wipe.placeholder`);return!D.value||w.value===`transfer`&&!!x.value||w.value===`wipe`&&E.value===e}),A=()=>{O.value&&(w.value===`wipe`&&(x.value=null),g(`confirmDelete`,x.value?.id))};return(e,t)=>(_(),a(i(C),{modelValue:o.value,"onUpdate:modelValue":t[4]||=e=>o.value=e,title:i(y).baseText(`projects.settings.delete.title`,{interpolate:{projectName:n.currentProject?.name??``}}),width:`650`,"append-to":`#${i(H)}`},{footer:v(()=>[h(i(Q),{variant:`destructive`,type:`button`,disabled:!O.value,"data-test-id":`project-settings-delete-confirm-button`,onClick:S(A,[`stop`,`prevent`])},{default:v(()=>[r(b(i(y).baseText(`projects.settings.danger.deleteProject`)),1)]),_:1},8,[`disabled`])]),default:v(()=>[D.value?D.value?(_(),l(`div`,Te,[h(i(G),{color:`text-base`},{default:v(()=>[r(b(i(y).baseText(`projects.settings.delete.message`)),1)]),_:1}),f(`div`,Ee,[h(i(c),{"model-value":w.value??``,label:`transfer`,class:`mb-s`,"onUpdate:modelValue":t[0]||=e=>w.value=`transfer`},{default:v(()=>[h(i(G),{color:`text-dark`},{default:v(()=>[r(b(i(y).baseText(`projects.settings.delete.question.transfer.label`)),1)]),_:1})]),_:1},8,[`model-value`]),w.value===`transfer`?(_(),l(`div`,{key:0,class:k(e.$style.operation)},[h(i(G),{color:`text-dark`},{default:v(()=>[r(b(i(y).baseText(`projects.settings.delete.question.transfer.title`)),1)]),_:1}),h(B,{modelValue:x.value,"onUpdate:modelValue":t[1]||=e=>x.value=e,class:`pt-2xs`,"search-fn":p.value,"filter-fn":m,"empty-options-text":i(y).baseText(`projects.sharing.noMatchingProjects`)},null,8,[`modelValue`,`search-fn`,`empty-options-text`])],2)):s(``,!0),h(i(c),{"model-value":w.value??``,label:`wipe`,class:`mb-s`,"onUpdate:modelValue":t[2]||=e=>w.value=`wipe`},{default:v(()=>[h(i(G),{color:`text-dark`},{default:v(()=>[r(b(i(y).baseText(`projects.settings.delete.question.wipe.label`)),1)]),_:1})]),_:1},8,[`model-value`]),w.value===`wipe`?(_(),l(`div`,{key:1,class:k(e.$style.operation)},[h(i(j),{label:i(y).baseText(`projects.settings.delete.question.wipe.title`)},{default:v(()=>[h(i(U),{modelValue:E.value,"onUpdate:modelValue":t[3]||=e=>E.value=e,"data-test-id":`project-delete-confirm-input`,placeholder:i(y).baseText(`projects.settings.delete.question.wipe.placeholder`)},null,8,[`modelValue`,`placeholder`])]),_:1},8,[`label`])],2)):s(``,!0)])])):s(``,!0):(_(),a(i(G),{key:0,color:`text-base`},{default:v(()=>[r(b(i(y).baseText(`projects.settings.delete.message.empty`)),1)]),_:1}))]),_:1},8,[`modelValue`,`title`,`append-to`]))}}),[[`__cssModules`,{$style:{operation:`_operation_1ohxk_1`}}]]),Oe={class:`pt-l`},ke=F(m({__name:`ProjectRoleUpgradeDialog`,props:g({limit:{},planName:{}},{modelValue:{type:Boolean},modelModifiers:{}}),emits:[`update:modelValue`],setup(e){let t=e,n=T(e,`modelValue`),o=le(),s=R(),c=async()=>{await o.goToUpgrade(`rbac`,`upgrade-rbac`),n.value=!1};return(e,o)=>(_(),a(i(C),{modelValue:n.value,"onUpdate:modelValue":o[1]||=e=>n.value=e,title:i(s).baseText(`projects.settings.role.upgrade.title`),width:`500`,"append-to":`#${i(H)}`},{footer:v(()=>[f(`div`,{class:k(e.$style.footer)},[h(i(Q),{variant:`subtle`,"native-type":`button`,onClick:o[0]||=e=>n.value=!1},{default:v(()=>[r(b(i(s).baseText(`generic.cancel`)),1)]),_:1}),h(i(Q),{variant:`solid`,"native-type":`button`,onClick:c},{default:v(()=>[r(b(i(s).baseText(`projects.create.limitReached.link`)),1)]),_:1})],2)]),default:v(()=>[f(`div`,Oe,[h(i(x),{keypath:`projects.settings.role.upgrade.message`,scope:`global`},{planName:v(()=>[r(b(t.planName),1)]),limit:v(()=>[r(b(i(s).baseText(`projects.create.limit`,{adjustToNumber:t.limit,interpolate:{count:String(t.limit)}})),1)]),_:1})])]),_:1},8,[`modelValue`,`title`,`append-to`]))}}),[[`__cssModules`,{$style:{footer:`_footer_149jx_1`}}]]),Ae=[`aria-label`],je=F(m({__name:`ProjectMembersAccessCell`,props:{data:{},projectRoles:{}},setup(e){let t=e,n=R(),r=d(()=>n.baseText(`projects.settings.table.access.full`)),o=d(()=>t.projectRoles.find(e=>e.slug===t.data.role)?.displayName),s=d(()=>{let e=[n.baseText(`projects.settings.table.access.tooltip.full`,{interpolate:{name:t.data.firstName||t.data.email||``,role:t.data.instanceRole?.displayName??``}})];return o.value&&e.push(n.baseText(`projects.settings.table.access.tooltip.storedRole`,{interpolate:{projectRole:o.value}})),e.join(` `)});return(e,t)=>(_(),a(i(X),{placement:`top`,"show-after":300,content:s.value},{default:v(()=>[f(`span`,{class:k(e.$style.label),tabindex:`0`,"aria-label":`${r.value}. ${s.value}`,"data-test-id":`project-member-access-label`},[f(`span`,{class:k(e.$style.text)},b(r.value),3),h(i(W),{icon:`info`,size:`small`,color:`text-light`,class:k(e.$style.icon)},null,8,[`class`])],10,Ae)]),_:1},8,[`content`]))}}),[[`__cssModules`,{$style:{label:`_label_1myfd_1`,text:`_text_1myfd_16`,icon:`_icon_1myfd_22`}}]]),Me=m({__name:`ProjectMembersActionsCell`,props:{data:{},actions:{}},emits:[`action`],setup(e,{emit:t}){let n=e,r=t,o=e=>{r(`action`,{action:e,userId:n.data.id})};return(e,t)=>n.actions.length>0?(_(),a(i(ee),{key:0,placement:`bottom`,actions:n.actions,theme:`dark`,onAction:o},null,8,[`actions`])):s(``,!0)}}),Ne={key:1},Pe=m({__name:`ProjectMembersRoleCell`,props:{data:{},roles:{}},emits:[`update:role`,`show-role-upgrade-dialog`],setup(e,{emit:t}){let n=e,r=t,o=_e(),s=d(()=>n.roles.find(e=>e.slug===n.data.role)),c=d(()=>n.data.role!==`project:personalOwner`),u=d(()=>o.isCustomRolesFeatureEnabled),f=d(()=>ae([`rbac`],{rbac:{scope:`role:manage`}})),p=d(()=>n.roles.filter(e=>e.systemRole)),m=d(()=>n.roles.filter(e=>!e.systemRole)),h=e=>{r(`update:role`,{role:e,userId:n.data.id})};return(t,n)=>c.value?(_(),a($,{key:0,"system-roles":p.value,"custom-roles":m.value,"current-role":e.data.role,"has-custom-roles-license":u.value,"can-manage-roles":f.value,"add-custom-role-route-name":i(pe).PROJECT_NEW_ROLE,"test-id":`project-member-role-dropdown`,"onUpdate:role":h,onSystemRoleUpgradeNeeded:n[0]||=e=>r(`show-role-upgrade-dialog`)},null,8,[`system-roles`,`custom-roles`,`current-role`,`has-custom-roles-license`,`can-manage-roles`,`add-custom-role-route-name`])):(_(),l(`span`,Ne,b(s.value?.displayName),1))}}),Fe={class:`pt-xs pb-xs`},Ie=m({__name:`ProjectMembersTable`,props:g({data:{},loading:{type:Boolean},currentUserId:{},projectRoles:{},actions:{},canEditRole:{type:Boolean}},{tableOptions:{default:()=>({page:0,itemsPerPage:10,sortBy:[]})},tableOptionsModifiers:{}}),emits:g([`update:options`,`update:role`,`show-role-upgrade-dialog`,`action`],[`update:tableOptions`]),setup(e,{emit:t}){let n=R(),s=e,c=t,p=T(e,`tableOptions`),m=d(()=>s.data.items),g=u([{title:n.baseText(`projects.settings.table.header.user`),key:`name`,width:400,disableSort:!0,value:e=>e},{title:n.baseText(`projects.settings.table.header.role`),key:`role`,width:200,disableSort:!0},{title:``,key:`actions`,align:`end`,width:46,disableSort:!0,value(){}}]),x=e=>!e.alwaysHasAccess&&e.id!==s.currentUserId&&s.canEditRole,S=({role:e,userId:t})=>{c(`update:role`,{role:e,userId:t})},C=e=>e.alwaysHasAccess||e.id===s.currentUserId||e.role===`project:personalOwner`?[]:(s.actions??[]).filter(t=>t.guard?.(e)??!0);return(t,n)=>(_(),l(`div`,null,[h(i(K),{"sort-by":p.value.sortBy,"onUpdate:sortBy":n[2]||=e=>p.value.sortBy=e,page:p.value.page,"onUpdate:page":n[3]||=e=>p.value.page=e,"items-per-page":p.value.itemsPerPage,"onUpdate:itemsPerPage":n[4]||=e=>p.value.itemsPerPage=e,headers:g.value,items:m.value,"items-length":e.data.count,loading:e.loading,"page-sizes":[10,25,50],"onUpdate:options":n[5]||=e=>c(`update:options`,e)},{"item.name":v(({value:e})=>[f(`div`,Fe,[h(i(xe),y(o(e)),null,16)])]),"item.role":v(({item:e})=>[x(e)?(_(),a(Pe,{key:0,data:e,roles:s.projectRoles,"onUpdate:role":S,onShowRoleUpgradeDialog:n[0]||=e=>c(`show-role-upgrade-dialog`)},null,8,[`data`,`roles`])):e.alwaysHasAccess?(_(),a(je,{key:1,data:e,"project-roles":s.projectRoles},null,8,[`data`,`project-roles`])):(_(),a(i(G),{key:2,color:`text-dark`},{default:v(()=>[r(b(s.projectRoles.find(t=>t.slug===e.role)?.displayName??e.role),1)]),_:2},1024))]),"item.actions":v(({item:e})=>[h(Me,{data:e,actions:C(e),onAction:n[1]||=e=>t.$emit(`action`,e)},null,8,[`data`,`actions`])]),_:2},1032,[`sort-by`,`page`,`items-per-page`,`headers`,`items`,`items-length`,`loading`])]))}}),Le={key:0,"data-test-id":`external-secrets-section`},Re={class:`mb-s`},ze={for:`projectExternalSecrets`},Be={key:0},Ve=F(m({__name:`ProjectExternalSecrets`,setup(e,{expose:o}){let c=R(),p=re(),m=D(),g=te(),y=ne(),x=se(),S=_e(),C=we(),w=ue(g.currentProjectId),T=u([]),E=n({}),ee=u(!1),j=u(``),N=u(new Set),P=u(0),F=u(5),ie=d(()=>S.moduleSettings[`external-secrets`]?.forProjects??!1),ae=d(()=>g.currentProject?.scopes?.includes(`externalSecretsProvider:list`)??!1),oe=d(()=>g.currentProject?.scopes?.includes(`externalSecretsProvider:create`)??!1),z=d(()=>x.hasScope(`externalSecretsProvider:create`)),B=d(()=>ie.value&&ae.value),ce=d(()=>T.value.length>0?null:z.value?C.activeProviders.value.length>0?`instance-admin-no-project-providers`:`project-admin-no-providers`:oe.value?`project-admin-no-providers`:null),V=d(()=>{let e=ce.value;return e?{"instance-admin-no-project-providers":{heading:c.baseText(`projects.settings.externalSecrets.emptyState.heading`),description:c.baseText(`projects.settings.externalSecrets.emptyState.instanceAdmin.noProjectProviders.description`),buttonText:c.baseText(`projects.settings.externalSecrets.button.shareSecretsStore`),buttonAction:be,testId:`external-secrets-empty-state-no-project-providers`},"project-admin-no-providers":{heading:c.baseText(`projects.settings.externalSecrets.emptyState.heading`),description:c.baseText(`projects.settings.externalSecrets.emptyState.projectAdmin.description`),buttonText:c.baseText(`projects.settings.externalSecrets.button.addSecretsStore`),buttonAction:ye,testId:`external-secrets-empty-state-project-admin`}}[e]:null}),le=d(()=>[...T.value].sort((e,t)=>e.name.localeCompare(t.name))),H=d(()=>{if(!j.value.trim())return le.value;let e=j.value.toLowerCase();return le.value.filter(t=>t.name.toLowerCase().includes(e)?!0:(E[t.name]??[]).some(t=>t.name.toLowerCase().includes(e)))}),de=d(()=>{let e=P.value*F.value,t=e+F.value;return H.value.slice(e,t)});function fe(e){let t=E[e]??[],n=j.value.trim().toLowerCase();return n?t.filter(t=>t.name.toLowerCase().includes(n)||e.toLowerCase().includes(n)):t}let me=d(()=>de.value.map(e=>{let t=N.value.has(e.name);return{id:`header-${e.name}`,connectionName:e.name,secretsCount:e.secretsCount,isExpanded:t,secrets:t?fe(e.name):[]}})),he=d(()=>[{title:c.baseText(`projects.settings.externalSecrets.table.header.secretName`),key:`connectionName`,disableSort:!0,resize:!1,value:e=>e.connectionName}]);async function q(e){if(E[e]?.length)return;let{secrets:t}=await w.getConnection(e);E[e]=t??[]}async function J(){await Promise.all(de.value.filter(e=>e.secretsCount>0).map(async e=>await q(e.name)))}async function Y(){if(!(!g.currentProjectId||!ae.value||!ie.value)){ee.value=!0;try{T.value=await g.getProjectSecretProviders(g.currentProjectId),await J()}catch(e){p.showError(e,c.baseText(`projects.settings.externalSecrets.load.error`))}finally{ee.value=!1}}}function ge(e){N.value.has(e)?N.value.delete(e):N.value.add(e)}function X(e,t=`connection`){let n=C.activeProviders.value.map(e=>e.name);y.openModalWithData({name:M,data:{activeTab:t,providerKey:e,providerTypes:C.providerTypes.value,existingProviderNames:n,projectId:g.currentProjectId,onClose:async()=>{await Y()}}})}function ve(e){X(e,`connection`)}function ye(){oe.value&&X()}function be(){m.push({name:pe.EXTERNAL_SECRETS_SETTINGS})}return A(j,()=>{P.value=0}),A([P,F],async()=>{await J()}),A([()=>g.currentProjectId,B],async([e,t])=>{e&&t&&await Y()},{immediate:!0}),A(B,async e=>{e&&(await Promise.allSettled([C.fetchProviderTypes(),C.fetchActiveConnections()]),z.value&&await g.getAllProjects())},{immediate:!0}),o({fetchProjectSecretConnections:Y}),(e,n)=>B.value?(_(),l(`fieldset`,Le,[f(`h3`,Re,[f(`label`,ze,b(i(c).baseText(`projects.settings.externalSecrets`)),1)]),V.value?(_(),a(i(I),{key:0,"data-test-id":V.value.testId,description:`yes`},{description:v(()=>[h(i(L),{tag:`h3`,size:`small`,class:`mb-2xs`},{default:v(()=>[r(b(V.value.heading),1)]),_:1}),h(i(G),{size:`small`,color:`text-base`,class:k(e.$style.description)},{default:v(()=>[r(b(V.value.description),1)]),_:1},8,[`class`])]),additionalContent:v(()=>[h(i(Q),{variant:`ghost`,size:`xsmall`,class:`mr-2xs`,element:`a`,href:i(c).baseText(`settings.externalSecrets.docs`),target:`_blank`,"data-test-id":`secrets-provider-connections-learn-more`},{default:v(()=>[r(b(i(c).baseText(`generic.learnMore`))+` `,1),h(i(W),{icon:`arrow-up-right`})]),_:1},8,[`href`]),h(i(Q),{variant:`subtle`,size:`xsmall`,"data-test-id":`${ce.value}-button`,onClick:V.value.buttonAction},{default:v(()=>[r(b(V.value.buttonText),1)]),_:1},8,[`data-test-id`,`onClick`])]),_:1},8,[`data-test-id`])):T.value.length>0?(_(),l(`div`,{key:1,class:k(e.$style.secretProvidersContainer)},[f(`div`,{class:k(e.$style.actionsContainer)},[f(`div`,{class:k(e.$style.searchContainer)},[h(i(U),{modelValue:j.value,"onUpdate:modelValue":n[0]||=e=>j.value=e,placeholder:i(c).baseText(`projects.settings.externalSecrets.search.placeholder`),clearable:``,"data-test-id":`secrets-providers-search`},{prefix:v(()=>[h(i(W),{icon:`search`})]),_:1},8,[`modelValue`,`placeholder`])],2),oe.value?(_(),a(i(Q),{key:0,variant:`outline`,size:`large`,"data-test-id":`external-secrets-add-button`,onClick:ye},{default:v(()=>[r(b(i(c).baseText(`projects.settings.externalSecrets.button.addSecretsStore`)),1)]),_:1})):s(``,!0)],2),h(i(K),{page:P.value,"onUpdate:page":n[1]||=e=>P.value=e,"items-per-page":F.value,"onUpdate:itemsPerPage":n[2]||=e=>F.value=e,headers:he.value,items:me.value,"items-length":H.value.length,loading:ee.value,"page-sizes":[5,10,25,50],"row-props":()=>({class:e.$style.groupHeaderRow}),"data-test-id":`external-secrets-table`},{item:v(({item:n})=>[f(`tr`,{class:k(e.$style.groupHeaderRow)},[f(`td`,{class:k(e.$style.groupHeaderCell)},[f(`div`,{class:k(e.$style.groupHeaderContent)},[h(i(Z),{variant:`ghost`,icon:n.isExpanded?`chevron-down`:`chevron-right`,class:k(e.$style.expandButton),disabled:n.secretsCount===0,title:n.isExpanded?i(c).baseText(`projects.settings.externalSecrets.collapse`):i(c).baseText(`projects.settings.externalSecrets.expand`),"data-test-id":`external-secrets-expand-button`,onClick:e=>ge(n.connectionName)},null,8,[`icon`,`class`,`disabled`,`title`,`onClick`]),h(i(G),{class:k(e.$style.connectionLink),bold:``,onClick:e=>ve(n.connectionName)},{default:v(()=>[r(b(n.connectionName),1)]),_:2},1032,[`class`,`onClick`]),h(i(G),{color:`text-light`,size:`small`},{default:v(()=>[r(b(n.secretsCount===1?i(c).baseText(`settings.secretsProviderConnections.oneSecret`):i(c).baseText(`settings.secretsProviderConnections.secrets`,{interpolate:{count:n.secretsCount.toString()}})),1)]),_:2},1024)],2)],2)],2),n.isExpanded&&n.secrets.length>0?(_(),l(`tr`,Be,[f(`td`,{class:k(e.$style.secretsCell)},[f(`div`,{class:k(e.$style.secretsList)},[(_(!0),l(t,null,O(n.secrets,t=>(_(),l(`div`,{key:t.name,class:k(e.$style.secretRow)},[f(`span`,null,[f(`code`,{class:k(e.$style.secretName)},b(t.name),3)])],2))),128))],2)],2)])):s(``,!0)]),_:1},8,[`page`,`items-per-page`,`headers`,`items`,`items-length`,`loading`,`row-props`])],2)):s(``,!0)])):s(``,!0)}}),[[`__cssModules`,{$style:{description:`_description_a1205_1`,secretProvidersContainer:`_secretProvidersContainer_a1205_6`,actionsContainer:`_actionsContainer_a1205_12`,searchContainer:`_searchContainer_a1205_17`,groupHeaderRow:`_groupHeaderRow_a1205_22`,groupHeaderCell:`_groupHeaderCell_a1205_29`,secretsCell:`_secretsCell_a1205_41`,secretsList:`_secretsList_a1205_45`,secretRow:`_secretRow_a1205_50`,groupHeaderContent:`_groupHeaderContent_a1205_65`,expandButton:`_expandButton_a1205_74`,secretName:`_secretName_a1205_88`,connectionLink:`_connectionLink_a1205_95`}}]]),He=F(m({__name:`ProjectSettingsCustomTelemetryTags`,props:{modelValue:{}},emits:[`update:modelValue`,`validate`],setup(e,{expose:n,emit:a}){let o=e,c=a,p=R(),m=u(o.modelValue.map(()=>!1));A(()=>o.modelValue.length,e=>{e<m.value.length&&(m.value=m.value.slice(0,e))});let g=d(()=>{let e=new Set;return o.modelValue.map(t=>{let n=t.key.trim();return n?e.has(n)?p.baseText(`projects.settings.customSpanAttributes.error.duplicateKey`):(e.add(n),null):p.baseText(`projects.settings.customSpanAttributes.error.emptyKey`)})});A(d(()=>g.value.some(e=>e!==null)),e=>c(`validate`,!e),{immediate:!0});function y(){m.value=o.modelValue.map(()=>!1)}function x(e){m.value[e]=!0}function C(){c(`update:modelValue`,[...o.modelValue,{key:``,value:``}]),m.value.push(!1)}function w(e){c(`update:modelValue`,o.modelValue.filter((t,n)=>n!==e)),m.value.splice(e,1)}function T(e,t,n){c(`update:modelValue`,o.modelValue.map((r,i)=>i===e?{...r,[t]:n}:r))}return n({resetTouched:y}),(n,a)=>(_(),l(`div`,null,[h(i(G),{size:`small`,class:`mb-s`,tag:`p`},{default:v(()=>[r(b(i(p).baseText(`projects.settings.customSpanAttributes.description`))+` `,1),f(`a`,{class:k(n.$style.docsLink),href:`https://docs.n8n.io/hosting/logging-monitoring/opentelemetry/`,target:`_blank`},[r(b(i(p).baseText(`projects.settings.customSpanAttributes.docsLink`)),1),h(i(W),{icon:`arrow-up-right`,size:`xsmall`})],2)]),_:1}),(_(!0),l(t,null,O(e.modelValue,(e,t)=>(_(),l(`div`,{key:t,class:k(n.$style.telemetryTagContainer)},[f(`div`,{class:k(n.$style.telemetryTagRow)},[h(i(j),{label:t===0?i(p).baseText(`projects.settings.customSpanAttributes.key.label`):void 0,size:`small`},{default:v(()=>[h(i(U),{"model-value":e.key,placeholder:i(p).baseText(`projects.settings.customSpanAttributes.key.placeholder`),"aria-label":i(p).baseText(`projects.settings.customSpanAttributes.key.label`),"data-test-id":`project-telemetry-tag-key`,"onUpdate:modelValue":e=>T(t,`key`,e),onBlur:e=>x(t)},null,8,[`model-value`,`placeholder`,`aria-label`,`onUpdate:modelValue`,`onBlur`])]),_:2},1032,[`label`]),h(i(j),{label:t===0?i(p).baseText(`projects.settings.customSpanAttributes.value.label`):void 0,size:`small`},{default:v(()=>[h(i(U),{"model-value":e.value,placeholder:i(p).baseText(`projects.settings.customSpanAttributes.value.placeholder`),"aria-label":i(p).baseText(`projects.settings.customSpanAttributes.value.label`),"data-test-id":`project-telemetry-tag-value`,"onUpdate:modelValue":e=>T(t,`value`,e)},null,8,[`model-value`,`placeholder`,`aria-label`,`onUpdate:modelValue`])]),_:2},1032,[`label`]),h(i(Q),{icon:`trash-2`,variant:`ghost`,size:`small`,"native-type":`button`,title:i(p).baseText(`projects.settings.customSpanAttributes.remove`),"aria-label":i(p).baseText(`projects.settings.customSpanAttributes.remove`),"data-test-id":`project-telemetry-tag-remove`,onClick:S(e=>w(t),[`stop`,`prevent`])},null,8,[`title`,`aria-label`,`onClick`])],2),m.value[t]&&g.value[t]?(_(),l(`span`,{key:0,class:k(n.$style.tagErrorMessage),"data-test-id":`project-telemetry-tag-key-error`},b(g.value[t]),3)):s(``,!0)],2))),128)),h(i(Q),{icon:`plus`,variant:`subtle`,"native-type":`button`,class:`mt-2xs`,"data-test-id":`project-telemetry-tag-add`,onClick:S(C,[`stop`,`prevent`])},{default:v(()=>[r(b(i(p).baseText(`projects.settings.customSpanAttributes.add`)),1)]),_:1})]))}}),[[`__cssModules`,{$style:{telemetryTagContainer:`_telemetryTagContainer_152r7_1`,telemetryTagRow:`_telemetryTagRow_152r7_6`,tagErrorMessage:`_tagErrorMessage_152r7_12`,docsLink:`_docsLink_152r7_19`}}]]),Ue={class:`project-worker-pools`,"data-test-id":`project-worker-pools-section`},We={for:`projectDefaultPool`},Ge=F(m({__name:`ProjectWorkerPoolsSection`,props:{defaultPool:{},availablePools:{},disabled:{type:Boolean}},emits:[`update:defaultPool`],setup(e,{emit:n}){let o=R(),s=e,c=n,u=e=>{c(`update:defaultPool`,e===``?``:e)};return(e,n)=>(_(),l(`fieldset`,Ue,[f(`h3`,null,[f(`label`,We,b(i(o).baseText(`projects.settings.workerPools.title`)),1)]),h(i(q),{id:`projectDefaultPool`,"model-value":s.defaultPool??``,disabled:s.disabled,class:k(e.$style.input),"data-test-id":`project-default-pool-input`,"onUpdate:modelValue":u},{default:v(()=>[h(i(z),{label:i(o).baseText(`projects.settings.workerPools.defaultQueue`),value:``},null,8,[`label`]),(_(!0),l(t,null,O(s.availablePools,e=>(_(),a(i(z),{key:e,label:e,value:e},null,8,[`label`,`value`]))),128))]),_:1},8,[`model-value`,`disabled`,`class`]),h(i(G),{color:`text-light`,size:`small`,class:k(e.$style.help)},{default:v(()=>[r(b(i(o).baseText(`projects.settings.workerPools.help`)),1)]),_:1},8,[`class`])]))}}),[[`__cssModules`,{$style:{input:`_input_1oor6_1`,help:`_help_1oor6_5`}}]]),Ke={for:`projectName`},qe={for:`projectDescription`},Je={key:1,id:`projectMembers`},Ye={for:`projectMembers`},Xe={key:0,class:`mb-m`,"data-test-id":`project-roles-managed-notice`},Ze={key:0},Qe={class:`mb-m`},$e=10,et=F(m({__name:`ProjectSettings`,setup(n){let o=he(),c=R(),m=te(),g=oe(),y=me(),x=_e(),C=re(),T=D(),O=ce(),ee=ye(),j=d(()=>!!ie(m.currentProject?.scopes).project.update),M=d(()=>!!ie(m.currentProject?.scopes).project.manageMembers),F=e=>{C.showError(e,c.baseText(`projects.settings.save.error.title`))},I=u(!1),ne=u(!1),L=u(!1),z=u(!1),se=u(!0),B=u(!0),le=d(()=>z.value&&se.value&&B.value),ue=u({credentials:-1,dataTables:-1,workflows:-1}),H=u({name:``,description:``,relations:[],customTelemetryTags:[],defaultPool:null}),K=u(!1),q=u(null),J=u({...fe}),X=u(``),Z=u({page:0,itemsPerPage:10,sortBy:[]}),xe=u(``),$=u([]),we=u(!1),Te=d(()=>ae([`rbac`],{rbac:{scope:`user:list`}})||M.value),Ee=d(()=>new Map((m.currentProject?.implicitMembers??[]).map(e=>[e.id,e]))),Oe=d(()=>$.value.filter(e=>!(H.value.relations||[]).find(t=>t.id===e.id)&&!Ee.value.has(e.id))),Ae=d(()=>g.processedProjectRoles.find(e=>e.licensed)?.slug),je=d(()=>bt.value||!M.value?[]:[{label:c.baseText(`projects.settings.table.row.removeUser`),value:`remove`,guard:e=>e.id!==o.currentUser?.id&&e.role!==`project:personalOwner`}]),Me=async e=>{if(!m.currentProject||!o.usersById[e])return;let t=Ae.value;if(t){H.value.relations.find(t=>t.id===e)||H.value.relations.push({id:e,role:t});try{K.value=!0,await m.addMember(m.currentProject.id,{userId:e,role:t}),C.showMessage({type:`success`,title:c.baseText(`projects.settings.member.added.title`)}),O.track(`User added member to project`,{project_id:m.currentProject.id,target_user_id:e,role:t})}catch(t){H.value.relations=H.value.relations.filter(t=>t.id!==e),F(t)}}},Ne=async({userId:e,role:t})=>{if(!m.currentProject)return;let n=H.value.relations.findIndex(t=>t.id===e);if(n===-1)return;let r=H.value.relations[n].role;H.value.relations[n].role=t;try{K.value=!0,await m.updateMemberRole(m.currentProject.id,e,t),g.fetchRoles(),C.showMessage({type:`success`,title:c.baseText(`projects.settings.memberRole.updated.title`)}),O.track(`User changed member role on project`,{project_id:m.currentProject.id,target_user_id:e,role:t})}catch(e){H.value.relations[n].role=r,C.showError(e,c.baseText(`projects.settings.memberRole.update.error.title`))}},Pe=()=>{L.value=!0},Fe=u(null);async function Le(e){let t=m.currentProject;if(!t)return;let n=H.value.relations.findIndex(t=>t.id===e);if(n===-1)return;let r=H.value.relations.splice(n,1)[0];if(t.relations.some(t=>t.id===e))try{K.value=!0,await m.removeMember(t.id,e),C.showMessage({type:`success`,title:c.baseText(`projects.settings.member.removed.title`)}),O.track(`User removed member from project`,{project_id:t.id,target_user_id:e})}catch(e){H.value.relations.splice(n,0,r),F(e)}}let Re=async({action:e,userId:t})=>{switch(e){case`remove`:await Le(t);break;default:break}},ze=()=>{H.value.relations=m.currentProject?.relations?Y(m.currentProject.relations):[],H.value.name=m.currentProject?.name??``,H.value.description=m.currentProject?.description??``,H.value.customTelemetryTags=m.currentProject?.customTelemetryTags?Y(m.currentProject.customTelemetryTags):[],Fe.value?.resetTouched(),H.value.defaultPool=m.currentProjectPoolSettings?.defaultPool??null},Be=()=>{let e=m.currentProjectPoolSettings?.defaultPool||null;return(H.value.defaultPool||null)!==e},Ue=()=>{ze(),L.value=!1},We=()=>{let e={};return m.currentProject?(H.value.name!==m.currentProject.name&&(e.name=H.value.name??``),H.value.description!==m.currentProject.description&&(e.description=H.value.description??``),H.value.relations.length!==m.currentProject.relations.length&&(e.memberAdded=H.value.relations.filter(e=>!m.currentProject?.relations.find(t=>t.id===e.id)),e.memberRemoved=m.currentProject.relations.filter(e=>!H.value.relations.find(t=>t.id===e.id))),e.role=H.value.relations.filter(t=>m.currentProject?.relations.find(e=>e.id===t.id)?.role!==t.role&&!e.memberAdded?.find(e=>e.id===t.id)),e):e},et=e=>{let t=m.currentProject?.id;e.name&&O.track(`User changed project name`,{project_id:t,name:e.name}),e.memberAdded?.forEach(e=>{O.track(`User added member to project`,{project_id:t,target_user_id:e.id,role:e.role})}),e.memberRemoved?.forEach(e=>{O.track(`User removed member from project`,{project_id:t,target_user_id:e.id})}),e.role?.forEach(e=>{O.track(`User changed member role on project`,{project_id:t,target_user_id:e.id,role:e.role})})},tt=async()=>{if(m.currentProject)try{let e=m.currentProject.id,t=[];t.push(m.updateProject(e,{name:H.value.name??``,description:H.value.description??``,...x.isOtelCustomSpanAttributesEnabled?{customTelemetryTags:H.value.customTelemetryTags}:{}})),st.value&&Be()&&t.push(m.updateCurrentProjectPoolSettings(e,{defaultPool:H.value.defaultPool??``})),await Promise.all(t),L.value=!1}catch(e){throw F(e),e}},nt=async()=>{if(L.value)try{await tt(),et(We()),C.showMessage({title:c.baseText(`projects.settings.save.successful.title`,{interpolate:{projectName:H.value.name??``}}),type:`success`})}catch{}},rt=async()=>{m.currentProjectId&&(ue.value=await m.getResourceCounts(m.currentProjectId)),I.value=!0},it=async e=>{try{if(m.currentProject){let t=m.currentProject?.name??``;await m.deleteProject(m.currentProject.id,e),await T.push({name:pe.HOMEPAGE}),C.showMessage({title:c.baseText(`projects.settings.delete.successful.title`,{interpolate:{projectName:t}}),type:`success`}),I.value=!0}}catch(e){C.showError(e,c.baseText(`projects.settings.delete.error.title`))}},at=()=>{H.value.name===c.baseText(`projects.settings.newProjectName`)&&(q.value?.inputRef?.focus(),q.value?.inputRef?.select())},ot=async()=>{if(m.currentProject)try{await m.updateProject(m.currentProject.id,{icon:J.value}),C.showMessage({title:c.baseText(`projects.settings.icon.update.successful.title`),type:`success`})}catch(e){F(e)}},st=d(()=>x.isWorkerPoolsEnabled),ct=()=>{H.value.defaultPool=m.currentProjectPoolSettings?.defaultPool??null};A(()=>m.currentProject,async()=>{if(K.value){K.value=!1;return}ze(),await p(),at(),m.currentProject?.icon&&ge(m.currentProject.icon)&&(J.value=m.currentProject.icon);let e=m.currentProjectId;j.value&&e&&st.value&&await m.fetchProjectPoolSettings(e).catch(()=>{}).finally(ct)},{immediate:!0});let lt=d(()=>{let e=Ee.value,t=o.currentUser?.id,n=H.value.relations.map(n=>{let r=o.usersById[n.id],i=P(n.role)?n.role:`project:viewer`,a=e.get(n.id);return{...r,...n,role:i,firstName:n?.firstName??r?.firstName??null,lastName:n?.lastName??r?.lastName??null,email:n?.email??r?.email??null,isCurrentUser:n.id===t,...a&&{alwaysHasAccess:!0,instanceRole:a.globalRole}}}),r=new Set(n.map(e=>e.id));for(let i of e.values())r.has(i.id)||n.push({id:i.id,firstName:i.firstName??null,lastName:i.lastName??null,email:i.email??null,role:i.globalRole.slug,isPendingUser:o.usersById[i.id]?.isPendingUser??!1,isCurrentUser:i.id===t,alwaysHasAccess:!0,instanceRole:i.globalRole});return n}),ut=d(()=>{if(!X.value.trim())return lt.value;let e=X.value.toLowerCase();return lt.value.filter(t=>{let n=`${t.firstName??``} ${t.lastName??``}`.toLowerCase(),r=(t.email??``).toLowerCase();return n.includes(e)||r.includes(e)})}),dt=e=>`${e.firstName??``} ${e.lastName??``}`.trim()||(e.email??``),ft=d(()=>{let e=m.currentProject?.creatorId,t=o.currentUser?.id,n=n=>e&&n.id===e?0:n.id===t?1:2;return[...ut.value].sort((e,t)=>n(e)-n(t)||dt(e).localeCompare(dt(t),void 0,{sensitivity:`base`}))}),pt=d(()=>{let{page:e,itemsPerPage:t}=Z.value,n=e*t;return{items:ft.value.slice(n,n+t),count:ft.value.length}});A(()=>ft.value.length,e=>{let{page:t,itemsPerPage:n}=Z.value;t>0&&t*n>=e&&(Z.value.page=Math.max(0,Math.ceil(e/n)-1))});let mt=d(()=>lt.value.length>=$e);A(mt,e=>{!e&&X.value&&(X.value=``)});let ht=w(()=>{Z.value.page=0},N(V.INPUT.SEARCH)),gt=e=>{X.value=e,ht()},_t=e=>{Z.value=e},vt=async e=>{xe.value=e,we.value=!0;try{let t=m.currentProject?.id;if(!t){$.value=[];return}let n={};e.trim()&&(n.fullText=e),Te.value||(n.projectId=t),await o.fetchUsers({take:50,filter:n}),e.trim()?$.value=o.allUsers.filter(t=>{let n=e.toLowerCase(),r=`${t.firstName??``} ${t.lastName??``}`.toLowerCase(),i=(t.email??``).toLowerCase();return r.includes(n)||i.includes(n)}):$.value=o.allUsers}catch(e){C.showError(e,c.baseText(`projects.settings.users.search.error`))}finally{we.value=!1}},yt=w(vt,N(V.INPUT.SEARCH));e(async()=>{M.value&&await vt(``)});let bt=d(()=>m.currentProject?.rolesManaged??!1);return E(async()=>{ee.set(c.baseText(`projects.settings`)),!(!j.value&&!M.value)&&(at(),await g.fetchRoles())}),(e,n)=>(_(),l(`div`,{class:k(e.$style.projectSettings),"data-test-id":`project-settings-container`},[f(`div`,{class:k(e.$style.header)},[h(Ce),j.value?(_(),l(`div`,{key:0,class:k(e.$style.headerRow)},[h(i(G),{tag:`h1`,size:`xlarge`,class:`pt-xs pb-m`},{default:v(()=>[r(b(i(c).baseText(`projects.settings.info`)),1)]),_:1}),f(`div`,{class:k(e.$style.headerButtons)},[h(i(Q),{variant:`subtle`,"native-type":`button`,disabled:!L.value,class:`mr-2xs`,"data-test-id":`project-settings-cancel-button`,onClick:S(Ue,[`stop`,`prevent`])},{default:v(()=>[r(b(i(c).baseText(`projects.settings.button.cancel`)),1)]),_:1},8,[`disabled`]),h(i(Q),{disabled:!le.value||!L.value,variant:`solid`,"data-test-id":`project-settings-save-button`,onClick:S(nt,[`stop`,`prevent`])},{default:v(()=>[r(b(i(c).baseText(`projects.settings.button.save`)),1)]),_:1},8,[`disabled`])],2)],2)):s(``,!0)],2),f(`form`,{onSubmit:S(nt,[`prevent`])},[j.value?(_(),l(t,{key:0},[f(`fieldset`,null,[f(`label`,Ke,b(i(c).baseText(`projects.settings.name`)),1),f(`div`,{class:k(e.$style.projectName)},[h(i(ve),{modelValue:J.value,"onUpdate:modelValue":[n[0]||=e=>J.value=e,ot],"button-tooltip":i(c).baseText(`projects.settings.iconPicker.button.tooltip`),"show-color-picker":``},null,8,[`modelValue`,`button-tooltip`]),h(i(be),{id:`projectName`,ref_key:`nameInput`,ref:q,modelValue:H.value.name,"onUpdate:modelValue":n[1]||=e=>H.value.name=e,label:``,type:`text`,name:`name`,required:``,"data-test-id":`project-settings-name-input`,class:k(e.$style.projectNameInput),onEnter:nt,onInput:Pe,onValidate:n[2]||=e=>z.value=e},null,8,[`modelValue`,`class`])],2)]),f(`fieldset`,null,[f(`label`,qe,b(i(c).baseText(`projects.settings.description`)),1),h(i(be),{id:`projectDescription`,modelValue:H.value.description,"onUpdate:modelValue":n[3]||=e=>H.value.description=e,label:``,name:`description`,type:`textarea`,maxlength:512,autosize:!0,"data-test-id":`project-settings-description-input`,class:k(e.$style.projectDescriptionInput),onEnter:nt,onInput:Pe,onValidate:n[4]||=e=>se.value=e},null,8,[`modelValue`,`class`])])],64)):s(``,!0),h(Ve,{class:k(e.$style.externalSecrets)},null,8,[`class`]),j.value||M.value?(_(),l(`fieldset`,Je,[f(`h3`,null,[f(`label`,Ye,b(i(c).baseText(`projects.settings.projectMembers`)),1)]),f(`div`,{class:k([e.$style.membersInputRow,`mb-s`])},[h(i(Se),{id:`projectMembers`,class:k(e.$style.userSelect),size:`large`,users:Oe.value,"current-user-id":i(o).currentUser?.id,placeholder:i(c).baseText(`workflows.shareModal.select.placeholder`),"data-test-id":`project-members-select`,remote:``,"remote-method":i(yt),loading:we.value,disabled:bt.value||!M.value,"onUpdate:modelValue":Me},{prefix:v(()=>[h(i(W),{icon:`search`})]),_:1},8,[`class`,`users`,`current-user-id`,`placeholder`,`remote-method`,`loading`,`disabled`]),mt.value?(_(),a(i(U),{key:0,class:k(e.$style.search),"model-value":X.value,placeholder:i(c).baseText(`projects.settings.members.search.placeholder`),clearable:``,"data-test-id":`project-members-search`,"onUpdate:modelValue":gt},{prefix:v(()=>[h(i(W),{icon:`search`})]),_:1},8,[`class`,`model-value`,`placeholder`])):s(``,!0)],2),bt.value?(_(),l(`div`,Xe,[h(i(de),{type:`info`,title:i(c).baseText(`settings.projectRolesManaged.description`)},null,8,[`title`])])):s(``,!0),lt.value.length>0?(_(),l(`div`,{key:1,class:k(e.$style.membersTableContainer)},[h(Ie,{"table-options":Z.value,"onUpdate:tableOptions":n[5]||=e=>Z.value=e,"data-test-id":`project-members-table`,data:pt.value,"current-user-id":i(o).currentUser?.id,"project-roles":i(g).processedProjectRoles,actions:je.value,"can-edit-role":!bt.value&&M.value,"onUpdate:options":_t,"onUpdate:role":Ne,onShowRoleUpgradeDialog:n[6]||=e=>ne.value=!0,onAction:Re},null,8,[`table-options`,`data`,`current-user-id`,`project-roles`,`actions`,`can-edit-role`])],2)):s(``,!0)])):s(``,!0),j.value?(_(),l(t,{key:2},[i(x).isOtelCustomSpanAttributesEnabled?(_(),l(`fieldset`,Ze,[f(`h3`,null,[f(`label`,null,b(i(c).baseText(`projects.settings.customSpanAttributes.label`)),1)]),h(He,{ref_key:`telemetryTagsRef`,ref:Fe,modelValue:H.value.customTelemetryTags,"onUpdate:modelValue":[n[7]||=e=>H.value.customTelemetryTags=e,Pe],onValidate:n[8]||=e=>B.value=e},null,8,[`modelValue`])])):s(``,!0),st.value?(_(),a(Ge,{key:1,"default-pool":H.value.defaultPool,"available-pools":i(m).currentProjectPoolSettings?.availablePools??[],"onUpdate:defaultPool":n[9]||=e=>{H.value.defaultPool=e,Pe()}},null,8,[`default-pool`,`available-pools`])):s(``,!0),f(`fieldset`,null,[f(`h3`,Qe,b(i(c).baseText(`projects.settings.danger.title`)),1),f(`small`,{class:k(e.$style.danger)},b(i(c).baseText(`projects.settings.danger.message`)),3),h(i(Q),{variant:`subtle`,size:`large`,"native-type":`button`,"data-test-id":`project-settings-delete-button`,onClick:S(rt,[`stop`,`prevent`])},{default:v(()=>[r(b(i(c).baseText(`projects.settings.danger.deleteProject`)),1)]),_:1})])],64)):s(``,!0)],32),h(De,{modelValue:I.value,"onUpdate:modelValue":n[10]||=e=>I.value=e,"current-project":i(m).currentProject,"resource-counts":ue.value,onConfirmDelete:it},null,8,[`modelValue`,`current-project`,`resource-counts`]),h(ke,{modelValue:ne.value,"onUpdate:modelValue":n[11]||=e=>ne.value=e,limit:i(m).teamProjectsLimit,"plan-name":i(y).currentPlanData?.displayName},null,8,[`modelValue`,`limit`,`plan-name`])],2))}}),[[`__cssModules`,{$style:{projectSettings:`_projectSettings_qlzrv_1`,header:`_header_qlzrv_25`,headerRow:`_headerRow_qlzrv_31`,headerButtons:`_headerButtons_qlzrv_38`,upgrade:`_upgrade_qlzrv_44`,externalSecrets:`_externalSecrets_qlzrv_48`,membersInputRow:`_membersInputRow_qlzrv_53`,membersTableContainer:`_membersTableContainer_qlzrv_61`,search:`_search_qlzrv_65`,projectName:`_projectName_qlzrv_70`,projectNameInput:`_projectNameInput_qlzrv_75`,projectDescriptionInput:`_projectDescriptionInput_qlzrv_79`,userSelect:`_userSelect_qlzrv_80`,danger:`_danger_qlzrv_99`}}]]);export{et as default};
@@ -1 +1 @@
1
- try{(function(){var e=typeof window<`u`?window:typeof global<`u`?global:typeof globalThis<`u`?globalThis:typeof self<`u`?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]=`a92de530-2862-40cd-a61f-5049ef361593`,e._sentryDebugIdIdentifier=`sentry-dbid-a92de530-2862-40cd-a61f-5049ef361593`)})()}catch{}import{o as e}from"./rolldown-runtime-BobR2NKB.js";import{Ad as t,Bd as n,Bf as r,Du as i,Fd as a,Id as o,Ld as s,Mf as c,Nd as l,Pd as u,Rd as d,Ud as f,Vd as p,Zd as m,af as h,as as ee,bf as g,cp as te,fp as _,gf as ne,nf as re,os as ie,sf as ae,sp as v,uf as oe,xf as se}from"./vendor-BCjXakEm.js";import{Af as ce,Ap as le,CC as y,Cw as b,DC as x,Ef as ue,Fp as de,J_ as S,M_ as fe,Mf as pe,My as C,Ow as w,PC as me,Q_ as he,SC as ge,Su as _e,bw as T,dw as E,eS as ve,ev as ye,hu as D,jC as be,ow as O,pw as k,qp as A,tv as xe,vd as j,wC as M,yw as N}from"./app-Cb14aX4e.js";import{i as Se}from"./readyToRun.store-BAWaovPu.js";import{t as Ce}from"./ResourcesListLayout-CBX-9suN.js";import{t as we}from"./ProjectHeader-0mYjakiY.js";import{t as Te}from"./insights.store-B7iJLc5F.js";import{t as Ee}from"./InsightsSummary-DKN03YB9.js";import"./src-CwPu9Moj.js";import{t as P}from"./pickBy-CgLpc-5Y.js";var De=e(P(),1),Oe=b(f({__name:`VariablesUsageBadge`,props:{name:{}},setup(e){let t=w(),i=D(),{showMessage:o}=S(),s=e,c=l(()=>`$vars.${s.name}`),d=()=>{i.copy(c.value),o({title:t.baseText(`variables.row.usage.copiedToClipboard`),type:`success`})};return(e,i)=>(h(),a(r(k),{placement:`top`},{content:g(()=>[n(_(r(t).baseText(`variables.row.usage.copyToClipboard`)),1)]),default:g(()=>[u(`span`,{class:`usageSyntax`,onClick:d},_(c.value),1)]),_:1}))}}),[[`__scopeId`,`data-v-ce74e568`]]),ke={class:`mb-s`},Ae={key:0,class:`mb-s`},je={"data-test-id":`variables-row`},Me={key:0},Ne={key:0},Pe={class:`scope-badge`,style:{display:`flex`,"align-items":`center`,gap:`4px`}},Fe={key:1,align:`right`},Ie={class:`action-buttons`},Le={key:0,class:`mt-xs`},F=b(f({__name:`ProjectVariables`,setup(e){let f=xe(),b=ue(),D=ye(),P=de(),F=he(),I=w(),L=ve(),Re=pe(),R=ee(),ze=ie(),z=Te(),Be=Se(),B=ce(),Ve=ne(`layoutRef`),{showError:He,showMessage:Ue}=S(),V=R.params.projectId,H=l(()=>C(D.currentUser?.globalScopes).variable),U=l(()=>C(B.currentProject?.scopes).projectVariable),{isLoading:We,execute:Ge}=i(b.fetchAllVariables,[],{immediate:!0}),W=l(()=>f.isEnterpriseFeatureEnabled[fe.Variables]),Ke=()=>{P.openModalWithData({name:A,data:{mode:`new`}}),F.track(`User clicked add variable button`)},qe=e=>{P.openModalWithData({name:A,data:{mode:`edit`,variable:e}})},Je=l(()=>b.variables.filter(e=>!V||e.project?.id===V).map(e=>({resourceType:`variable`,id:e.id,name:e.key,key:e.key,value:e.value,project:e.project}))),G=l(()=>b.variables.filter(e=>!e.project)),K=l(()=>W.value&&(H.value.create??U.value.create)),Ye=l(()=>{let e=[{id:0,path:`name`,label:I.baseText(`variables.table.key`),classes:[`variables-key-column`]},{id:1,path:`value`,label:I.baseText(`variables.table.value`),classes:[`variables-value-column`]},{id:2,path:`usage`,label:I.baseText(`variables.table.usage`),classes:[`variables-usage-column`]}];return V||e.push({id:3,path:`project`,label:I.baseText(`variables.table.scope`),classes:[`variables-scope-column`]}),W.value?e.concat({id:4,path:`actions`,label:``,classes:[`variables-actions-column`]}):e}),Xe=async e=>{try{if(await L.confirm(I.baseText(`variables.modals.deleteConfirm.message`,{interpolate:{name:e.key}}),I.baseText(`variables.modals.deleteConfirm.title`),{confirmButtonText:I.baseText(`variables.modals.deleteConfirm.confirmButton`),cancelButtonText:I.baseText(`variables.modals.deleteConfirm.cancelButton`)})!==`confirm`)return;await b.deleteVariable({id:e.id,value:e.value,key:e.key}),Ue({title:I.baseText(`variables.delete.successful.message`,{interpolate:{variableName:e.key}}),type:`success`})}catch(e){He(e,I.baseText(`variables.errors.delete`))}},q=e=>{ze.replace({query:(0,De.default)(e)})},J=c({...R.query,incomplete:R.query.incomplete?.toString()===`true`,projectId:R.query.projectId?.toString()||``}),Ze=e=>{q({...J.value,search:e})},Qe=(e,t,n)=>{if(!le(e))return!1;let r=t;return r.incomplete&&(n&&=!e.value),r.projectId&&(r.projectId===`global`?n&&=!e.project:n&&=e.project?.id===r.projectId),n},Y=(e,t,n)=>n===`asc`?Q(e).trim().localeCompare(Q(t).trim()):Q(t).trim().localeCompare(Q(e).trim()),$e={nameAsc:(e,t)=>Y(e,t,`asc`),nameDesc:(e,t)=>Y(e,t,`desc`)},X=l(()=>{let e=[{value:`global`,label:I.baseText(`variables.modal.scope.global`),icon:{type:`icon`,value:`database`}}];return e.push(...B.availableProjects.filter(e=>e.type!==`personal`).map(e=>{let t=e.icon??{type:`icon`,value:`layer-group`};return{value:e.id,label:e.name??e.id,icon:t}})),e}),Z=l(()=>X.value.find(e=>e.value===J.value.projectId)?.icon??{type:`icon`,value:`database`});function et(){_e().goToUpgrade(`variables`,`upgrade-variables`)}function Q(e){return e.key}Re.$onAction(({name:e,after:t})=>{e===`pullWorkfolder`&&t&&t(()=>{Ge()})});let $=l(()=>({heading:I.baseText(P.contextBasedTranslationKeys.variables.unavailable.title),description:I.baseText(P.contextBasedTranslationKeys.variables.unavailable.description),buttonText:I.baseText(P.contextBasedTranslationKeys.variables.unavailable.button),buttonType:`secondary`,"onClick:button":et,"data-test-id":`unavailable-resources-list`}));return re(()=>{j().set(I.baseText(`variables.heading`))}),(e,i)=>{let c=oe(`n8n-truncate`);return h(),a(Ce,{ref_key:`layoutRef`,ref:Ve,filters:J.value,"onUpdate:filters":[i[1]||=e=>J.value=e,q],"resource-key":`variables`,disabled:!W.value,resources:Je.value,"additional-filters-handler":Qe,shareable:!1,"display-name":Q,"sort-fns":$e,"sort-options":[`nameAsc`,`nameDesc`],type:`datatable`,"type-props":{columns:Ye.value},loading:r(We),"onUpdate:search":Ze,"onClick:add":Ke},d({header:g(()=>[p(we,{"main-button":`variable`},{default:g(()=>[r(Be).isOverviewSubPage&&r(z).isSummaryEnabled?(h(),a(r(Ee),{key:0,loading:r(z).weeklySummary.isLoading,summary:r(z).weeklySummary.state,"time-range":`week`},null,8,[`loading`,`summary`])):o(``,!0)]),_:1})]),filters:g(({setKeyValue:c})=>[u(`div`,ke,[p(r(y),{label:r(I).baseText(`credentials.filters.status`),bold:!1,size:`small`,color:`text-base`,class:`mb-3xs`},null,8,[`label`]),p(r(M),{label:`Value missing`,"data-test-id":`variable-filter-incomplete`,"model-value":J.value.incomplete,"onUpdate:modelValue":e=>c(`incomplete`,e)},null,8,[`model-value`,`onUpdate:modelValue`])]),r(V)?o(``,!0):(h(),s(`div`,Ae,[p(r(y),{label:r(I).baseText(`forms.resourceFiltersDropdown.owner`),bold:!1,size:`small`,color:`text-base`,class:`mb-3xs`},null,8,[`label`]),p(r(be),{modelValue:J.value.projectId,"onUpdate:modelValue":[i[0]||=e=>J.value.projectId=e,e=>c(`projectId`,e)],size:`large`,filterable:``,"data-test-id":`variable-modal-scope-select`},{prefix:g(()=>[Z.value?.type===`emoji`?(h(),a(r(E),{key:0,class:v(e.$style.menuItemEmoji)},{default:g(()=>[n(_(Z.value?.value),1)]),_:1},8,[`class`])):Z.value?.value?(h(),a(r(T),{key:1,icon:Z.value.value},null,8,[`icon`])):o(``,!0)]),default:g(()=>[(h(!0),s(t,null,ae(X.value,t=>(h(),a(r(me),{key:t.value||`global`,value:t.value,label:t.label,class:v({[e.$style.globalOption]:t.value===`global`})},{default:g(()=>[u(`div`,{class:v(e.$style.optionContent)},[t.icon&&t.icon?.type===`emoji`?(h(),a(r(E),{key:0,class:v(e.$style.menuItemEmoji)},{default:g(()=>[n(_(t.icon.value),1)]),_:2},1032,[`class`])):t.icon?.value?(h(),a(r(T),{key:1,icon:t.icon.value},null,8,[`icon`])):o(``,!0),u(`span`,null,_(t.label),1)],2)]),_:2},1032,[`value`,`label`,`class`]))),128))]),_:1},8,[`modelValue`,`onUpdate:modelValue`])]))]),default:g(({data:e})=>[u(`tr`,je,[u(`td`,null,_(e.key),1),u(`td`,null,[e.value?se((h(),s(`span`,Me,null,512)),[[c,e.value,`20`]]):(h(),a(r(O),{key:1,variant:`warning`},{default:g(()=>[...i[2]||=[n(` Value missing `,-1)]]),_:1}))]),u(`td`,null,[e.key?(h(),a(Oe,{key:0,name:e.key},null,8,[`name`])):o(``,!0)]),r(V)?o(``,!0):(h(),s(`td`,Ne,[p(r(O),null,{default:g(()=>[u(`div`,Pe,[e.project?(h(),a(r(T),{key:0,icon:`layers`})):o(``,!0),n(` `+_(e.project?.name??r(I).baseText(`variables.table.scope.global`)),1)])]),_:2},1024)])),W.value?(h(),s(`td`,Fe,[u(`div`,Ie,[p(r(k),{disabled:H.value.update??U.value.update,placement:`top`},{content:g(()=>[n(_(r(I).baseText(`variables.row.button.edit.onlyRoleCanEdit`)),1)]),default:g(()=>[p(r(N),{variant:`subtle`,size:`small`,"data-test-id":`variable-row-edit-button`,class:`mr-xs`,disabled:!(H.value.update??U.value.update),onClick:t=>qe(e)},{default:g(()=>[n(_(r(I).baseText(`variables.row.button.edit`)),1)]),_:1},8,[`disabled`,`onClick`])]),_:2},1032,[`disabled`]),p(r(k),{disabled:H.value.delete??U.value.delete,placement:`top`},{content:g(()=>[n(_(r(I).baseText(`variables.row.button.delete.onlyRoleCanDelete`)),1)]),default:g(()=>[p(r(N),{variant:`subtle`,size:`small`,"data-test-id":`variable-row-delete-button`,disabled:!(H.value.delete??U.value.delete),onClick:t=>Xe(e)},{default:g(()=>[n(_(r(I).baseText(`variables.row.button.delete`)),1)]),_:1},8,[`disabled`,`onClick`])]),_:2},1032,[`disabled`])])])):o(``,!0)])]),postdata:g(()=>[r(V)&&G.value.length?(h(),s(`div`,Le,[r(V)?(h(),a(r(E),{key:0,size:`small`},{default:g(()=>[p(r(ge),{href:`/home/variables`,theme:`text`,size:`small`},{default:g(()=>[n(_(G.value.length)+` global variables `,1)]),_:1}),i[3]||=n(` available in this project `,-1)]),_:1})):o(``,!0)])):o(``,!0)]),_:2},[W.value?void 0:{name:`preamble`,fn:g(()=>[p(r(x),m({class:`mb-m`},$.value),null,16)]),key:`0`},!W.value||W.value&&!K.value?{name:`empty`,fn:g(()=>[W.value?K.value?o(``,!0):(h(),a(r(x),{key:1,"data-test-id":`cannot-create-variables`,heading:r(I).baseText(`variables.empty.notAllowedToCreate.heading`,{interpolate:{name:r(D).currentUser?.firstName??``}}),description:r(I).baseText(`variables.empty.notAllowedToCreate.description`)},null,8,[`heading`,`description`])):(h(),a(r(x),te(m({key:0},$.value)),null,16))]),key:`1`}:void 0]),1032,[`filters`,`disabled`,`resources`,`type-props`,`loading`])}}}),[[`__cssModules`,{$style:{optionContent:`_optionContent_5otes_1`,menuItemEmoji:`_menuItemEmoji_5otes_7`,globalOption:`_globalOption_5otes_12`}}],[`__scopeId`,`data-v-281fc901`]]);export{F as default};
1
+ try{(function(){var e=typeof window<`u`?window:typeof global<`u`?global:typeof globalThis<`u`?globalThis:typeof self<`u`?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]=`a92de530-2862-40cd-a61f-5049ef361593`,e._sentryDebugIdIdentifier=`sentry-dbid-a92de530-2862-40cd-a61f-5049ef361593`)})()}catch{}import{o as e}from"./rolldown-runtime-BobR2NKB.js";import{Ad as t,Bd as n,Bf as r,Du as i,Fd as a,Id as o,Ld as s,Mf as c,Nd as l,Pd as u,Rd as d,Ud as f,Vd as p,Zd as m,af as h,as as ee,bf as g,cp as te,fp as _,gf as ne,nf as re,os as ie,sf as ae,sp as v,uf as oe,xf as se}from"./vendor-BCjXakEm.js";import{Af as ce,Ap as le,CC as y,Cw as b,DC as x,Ef as ue,Fp as de,J_ as S,M_ as fe,Mf as pe,My as C,Ow as w,PC as me,Q_ as he,SC as ge,Su as _e,bw as T,dw as E,eS as ve,ev as ye,hu as D,jC as be,ow as O,pw as k,qp as A,tv as xe,vd as j,wC as M,yw as N}from"./app-BVFAtyJy.js";import{i as Se}from"./readyToRun.store-sxBCkg6x.js";import{t as Ce}from"./ResourcesListLayout-CPW5pa-s.js";import{t as we}from"./ProjectHeader-Ba9xlaLr.js";import{t as Te}from"./insights.store-DB0a2966.js";import{t as Ee}from"./InsightsSummary-CMntudjE.js";import"./src-BuzGQUHG.js";import{t as P}from"./pickBy-CgLpc-5Y.js";var De=e(P(),1),Oe=b(f({__name:`VariablesUsageBadge`,props:{name:{}},setup(e){let t=w(),i=D(),{showMessage:o}=S(),s=e,c=l(()=>`$vars.${s.name}`),d=()=>{i.copy(c.value),o({title:t.baseText(`variables.row.usage.copiedToClipboard`),type:`success`})};return(e,i)=>(h(),a(r(k),{placement:`top`},{content:g(()=>[n(_(r(t).baseText(`variables.row.usage.copyToClipboard`)),1)]),default:g(()=>[u(`span`,{class:`usageSyntax`,onClick:d},_(c.value),1)]),_:1}))}}),[[`__scopeId`,`data-v-ce74e568`]]),ke={class:`mb-s`},Ae={key:0,class:`mb-s`},je={"data-test-id":`variables-row`},Me={key:0},Ne={key:0},Pe={class:`scope-badge`,style:{display:`flex`,"align-items":`center`,gap:`4px`}},Fe={key:1,align:`right`},Ie={class:`action-buttons`},Le={key:0,class:`mt-xs`},F=b(f({__name:`ProjectVariables`,setup(e){let f=xe(),b=ue(),D=ye(),P=de(),F=he(),I=w(),L=ve(),Re=pe(),R=ee(),ze=ie(),z=Te(),Be=Se(),B=ce(),Ve=ne(`layoutRef`),{showError:He,showMessage:Ue}=S(),V=R.params.projectId,H=l(()=>C(D.currentUser?.globalScopes).variable),U=l(()=>C(B.currentProject?.scopes).projectVariable),{isLoading:We,execute:Ge}=i(b.fetchAllVariables,[],{immediate:!0}),W=l(()=>f.isEnterpriseFeatureEnabled[fe.Variables]),Ke=()=>{P.openModalWithData({name:A,data:{mode:`new`}}),F.track(`User clicked add variable button`)},qe=e=>{P.openModalWithData({name:A,data:{mode:`edit`,variable:e}})},Je=l(()=>b.variables.filter(e=>!V||e.project?.id===V).map(e=>({resourceType:`variable`,id:e.id,name:e.key,key:e.key,value:e.value,project:e.project}))),G=l(()=>b.variables.filter(e=>!e.project)),K=l(()=>W.value&&(H.value.create??U.value.create)),Ye=l(()=>{let e=[{id:0,path:`name`,label:I.baseText(`variables.table.key`),classes:[`variables-key-column`]},{id:1,path:`value`,label:I.baseText(`variables.table.value`),classes:[`variables-value-column`]},{id:2,path:`usage`,label:I.baseText(`variables.table.usage`),classes:[`variables-usage-column`]}];return V||e.push({id:3,path:`project`,label:I.baseText(`variables.table.scope`),classes:[`variables-scope-column`]}),W.value?e.concat({id:4,path:`actions`,label:``,classes:[`variables-actions-column`]}):e}),Xe=async e=>{try{if(await L.confirm(I.baseText(`variables.modals.deleteConfirm.message`,{interpolate:{name:e.key}}),I.baseText(`variables.modals.deleteConfirm.title`),{confirmButtonText:I.baseText(`variables.modals.deleteConfirm.confirmButton`),cancelButtonText:I.baseText(`variables.modals.deleteConfirm.cancelButton`)})!==`confirm`)return;await b.deleteVariable({id:e.id,value:e.value,key:e.key}),Ue({title:I.baseText(`variables.delete.successful.message`,{interpolate:{variableName:e.key}}),type:`success`})}catch(e){He(e,I.baseText(`variables.errors.delete`))}},q=e=>{ze.replace({query:(0,De.default)(e)})},J=c({...R.query,incomplete:R.query.incomplete?.toString()===`true`,projectId:R.query.projectId?.toString()||``}),Ze=e=>{q({...J.value,search:e})},Qe=(e,t,n)=>{if(!le(e))return!1;let r=t;return r.incomplete&&(n&&=!e.value),r.projectId&&(r.projectId===`global`?n&&=!e.project:n&&=e.project?.id===r.projectId),n},Y=(e,t,n)=>n===`asc`?Q(e).trim().localeCompare(Q(t).trim()):Q(t).trim().localeCompare(Q(e).trim()),$e={nameAsc:(e,t)=>Y(e,t,`asc`),nameDesc:(e,t)=>Y(e,t,`desc`)},X=l(()=>{let e=[{value:`global`,label:I.baseText(`variables.modal.scope.global`),icon:{type:`icon`,value:`database`}}];return e.push(...B.availableProjects.filter(e=>e.type!==`personal`).map(e=>{let t=e.icon??{type:`icon`,value:`layer-group`};return{value:e.id,label:e.name??e.id,icon:t}})),e}),Z=l(()=>X.value.find(e=>e.value===J.value.projectId)?.icon??{type:`icon`,value:`database`});function et(){_e().goToUpgrade(`variables`,`upgrade-variables`)}function Q(e){return e.key}Re.$onAction(({name:e,after:t})=>{e===`pullWorkfolder`&&t&&t(()=>{Ge()})});let $=l(()=>({heading:I.baseText(P.contextBasedTranslationKeys.variables.unavailable.title),description:I.baseText(P.contextBasedTranslationKeys.variables.unavailable.description),buttonText:I.baseText(P.contextBasedTranslationKeys.variables.unavailable.button),buttonType:`secondary`,"onClick:button":et,"data-test-id":`unavailable-resources-list`}));return re(()=>{j().set(I.baseText(`variables.heading`))}),(e,i)=>{let c=oe(`n8n-truncate`);return h(),a(Ce,{ref_key:`layoutRef`,ref:Ve,filters:J.value,"onUpdate:filters":[i[1]||=e=>J.value=e,q],"resource-key":`variables`,disabled:!W.value,resources:Je.value,"additional-filters-handler":Qe,shareable:!1,"display-name":Q,"sort-fns":$e,"sort-options":[`nameAsc`,`nameDesc`],type:`datatable`,"type-props":{columns:Ye.value},loading:r(We),"onUpdate:search":Ze,"onClick:add":Ke},d({header:g(()=>[p(we,{"main-button":`variable`},{default:g(()=>[r(Be).isOverviewSubPage&&r(z).isSummaryEnabled?(h(),a(r(Ee),{key:0,loading:r(z).weeklySummary.isLoading,summary:r(z).weeklySummary.state,"time-range":`week`},null,8,[`loading`,`summary`])):o(``,!0)]),_:1})]),filters:g(({setKeyValue:c})=>[u(`div`,ke,[p(r(y),{label:r(I).baseText(`credentials.filters.status`),bold:!1,size:`small`,color:`text-base`,class:`mb-3xs`},null,8,[`label`]),p(r(M),{label:`Value missing`,"data-test-id":`variable-filter-incomplete`,"model-value":J.value.incomplete,"onUpdate:modelValue":e=>c(`incomplete`,e)},null,8,[`model-value`,`onUpdate:modelValue`])]),r(V)?o(``,!0):(h(),s(`div`,Ae,[p(r(y),{label:r(I).baseText(`forms.resourceFiltersDropdown.owner`),bold:!1,size:`small`,color:`text-base`,class:`mb-3xs`},null,8,[`label`]),p(r(be),{modelValue:J.value.projectId,"onUpdate:modelValue":[i[0]||=e=>J.value.projectId=e,e=>c(`projectId`,e)],size:`large`,filterable:``,"data-test-id":`variable-modal-scope-select`},{prefix:g(()=>[Z.value?.type===`emoji`?(h(),a(r(E),{key:0,class:v(e.$style.menuItemEmoji)},{default:g(()=>[n(_(Z.value?.value),1)]),_:1},8,[`class`])):Z.value?.value?(h(),a(r(T),{key:1,icon:Z.value.value},null,8,[`icon`])):o(``,!0)]),default:g(()=>[(h(!0),s(t,null,ae(X.value,t=>(h(),a(r(me),{key:t.value||`global`,value:t.value,label:t.label,class:v({[e.$style.globalOption]:t.value===`global`})},{default:g(()=>[u(`div`,{class:v(e.$style.optionContent)},[t.icon&&t.icon?.type===`emoji`?(h(),a(r(E),{key:0,class:v(e.$style.menuItemEmoji)},{default:g(()=>[n(_(t.icon.value),1)]),_:2},1032,[`class`])):t.icon?.value?(h(),a(r(T),{key:1,icon:t.icon.value},null,8,[`icon`])):o(``,!0),u(`span`,null,_(t.label),1)],2)]),_:2},1032,[`value`,`label`,`class`]))),128))]),_:1},8,[`modelValue`,`onUpdate:modelValue`])]))]),default:g(({data:e})=>[u(`tr`,je,[u(`td`,null,_(e.key),1),u(`td`,null,[e.value?se((h(),s(`span`,Me,null,512)),[[c,e.value,`20`]]):(h(),a(r(O),{key:1,variant:`warning`},{default:g(()=>[...i[2]||=[n(` Value missing `,-1)]]),_:1}))]),u(`td`,null,[e.key?(h(),a(Oe,{key:0,name:e.key},null,8,[`name`])):o(``,!0)]),r(V)?o(``,!0):(h(),s(`td`,Ne,[p(r(O),null,{default:g(()=>[u(`div`,Pe,[e.project?(h(),a(r(T),{key:0,icon:`layers`})):o(``,!0),n(` `+_(e.project?.name??r(I).baseText(`variables.table.scope.global`)),1)])]),_:2},1024)])),W.value?(h(),s(`td`,Fe,[u(`div`,Ie,[p(r(k),{disabled:H.value.update??U.value.update,placement:`top`},{content:g(()=>[n(_(r(I).baseText(`variables.row.button.edit.onlyRoleCanEdit`)),1)]),default:g(()=>[p(r(N),{variant:`subtle`,size:`small`,"data-test-id":`variable-row-edit-button`,class:`mr-xs`,disabled:!(H.value.update??U.value.update),onClick:t=>qe(e)},{default:g(()=>[n(_(r(I).baseText(`variables.row.button.edit`)),1)]),_:1},8,[`disabled`,`onClick`])]),_:2},1032,[`disabled`]),p(r(k),{disabled:H.value.delete??U.value.delete,placement:`top`},{content:g(()=>[n(_(r(I).baseText(`variables.row.button.delete.onlyRoleCanDelete`)),1)]),default:g(()=>[p(r(N),{variant:`subtle`,size:`small`,"data-test-id":`variable-row-delete-button`,disabled:!(H.value.delete??U.value.delete),onClick:t=>Xe(e)},{default:g(()=>[n(_(r(I).baseText(`variables.row.button.delete`)),1)]),_:1},8,[`disabled`,`onClick`])]),_:2},1032,[`disabled`])])])):o(``,!0)])]),postdata:g(()=>[r(V)&&G.value.length?(h(),s(`div`,Le,[r(V)?(h(),a(r(E),{key:0,size:`small`},{default:g(()=>[p(r(ge),{href:`/home/variables`,theme:`text`,size:`small`},{default:g(()=>[n(_(G.value.length)+` global variables `,1)]),_:1}),i[3]||=n(` available in this project `,-1)]),_:1})):o(``,!0)])):o(``,!0)]),_:2},[W.value?void 0:{name:`preamble`,fn:g(()=>[p(r(x),m({class:`mb-m`},$.value),null,16)]),key:`0`},!W.value||W.value&&!K.value?{name:`empty`,fn:g(()=>[W.value?K.value?o(``,!0):(h(),a(r(x),{key:1,"data-test-id":`cannot-create-variables`,heading:r(I).baseText(`variables.empty.notAllowedToCreate.heading`,{interpolate:{name:r(D).currentUser?.firstName??``}}),description:r(I).baseText(`variables.empty.notAllowedToCreate.description`)},null,8,[`heading`,`description`])):(h(),a(r(x),te(m({key:0},$.value)),null,16))]),key:`1`}:void 0]),1032,[`filters`,`disabled`,`resources`,`type-props`,`loading`])}}}),[[`__cssModules`,{$style:{optionContent:`_optionContent_5otes_1`,menuItemEmoji:`_menuItemEmoji_5otes_7`,globalOption:`_globalOption_5otes_12`}}],[`__scopeId`,`data-v-281fc901`]]);export{F as default};