n8n-editor-ui 2.42.1 → 2.42.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.
- package/dist/assets/{AddDataTableModal-BmklC_cm.js → AddDataTableModal-BzNAfg7z.js} +1 -1
- package/dist/assets/{AgentApprovalSelector-DSrdgSrV.js → AgentApprovalSelector-L7RBiARN.js} +1 -1
- package/dist/assets/{AgentBuilderView-EdMQfEGj.js → AgentBuilderView-D5Qqi4b4.js} +1 -1
- package/dist/assets/{AgentBuilderView-aTgYup0_.js → AgentBuilderView-D8eoe_bB.js} +3 -3
- package/dist/assets/{AgentConfirmationModal-Oi0qHQtG.js → AgentConfirmationModal-DzMRUVMk.js} +1 -1
- package/dist/assets/{AgentDuplicateModal-XMLXMoSD.js → AgentDuplicateModal-Drlk2LO5.js} +1 -1
- package/dist/assets/{AgentEditorModal-LCuODBys.js → AgentEditorModal-DYocuAZS.js} +1 -1
- package/dist/assets/{AgentJsonImportModal-CuUAFL_S.js → AgentJsonImportModal-DglF6EUF.js} +1 -1
- package/dist/assets/{AgentModal-ChRqzJLA.js → AgentModal-Cu547i3f.js} +1 -1
- package/dist/assets/{AgentModalMultiStep-BAbMGlVb.js → AgentModalMultiStep-T6rauy0x.js} +1 -1
- package/dist/assets/{AgentPreviewButton-CD-RGp7h.js → AgentPreviewButton-BbZrPGO2.js} +1 -1
- package/dist/assets/{AgentPreviewDock-DCAK7zHR.js → AgentPreviewDock-BW1Ev1CW.js} +1 -1
- package/dist/assets/{AgentSessionTimelineView-BbkCtnT4.js → AgentSessionTimelineView-DGW9EeTx.js} +1 -1
- package/dist/assets/{AgentSessionsListView-CFOUUrlM.js → AgentSessionsListView--TQFOKAw.js} +1 -1
- package/dist/assets/{AgentSessionsListView-CZSMG8v8.js → AgentSessionsListView-CO_EMy5U.js} +1 -1
- package/dist/assets/{AgentSkillModal-C7Mf6tXR.js → AgentSkillModal-C5BvnRMa.js} +1 -1
- package/dist/assets/{AgentSubAgentsModal-DMBMPZNF.js → AgentSubAgentsModal-BOz0cTWJ.js} +1 -1
- package/dist/assets/{AgentTaskModal-DjSvWZ7j.js → AgentTaskModal-UyY36R8O.js} +1 -1
- package/dist/assets/{AgentToolConfigForm-t9oQsmbN.js → AgentToolConfigForm-BDyXIs_v.js} +1 -1
- package/dist/assets/{AgentToolConfigModal-B1gaSHAp.js → AgentToolConfigModal-DBeBxt_4.js} +1 -1
- package/dist/assets/{AgentToolsConnectionModalWrapper-Bx6moOoc.js → AgentToolsConnectionModalWrapper-DH0dwp1p.js} +1 -1
- package/dist/assets/{AgentVectorStoresModal-cgxOOqr7.js → AgentVectorStoresModal-D9Rf-BbD.js} +1 -1
- package/dist/assets/{AgentView-CXdBnlmO.js → AgentView-8EjS92Sv.js} +1 -1
- package/dist/assets/{AgentsListView-BEtd0J_K.js → AgentsListView-DJ87JTDv.js} +1 -1
- package/dist/assets/{AnimatedSpinner-B0Aw6-ZV.js → AnimatedSpinner-CTvo7f8p.js} +1 -1
- package/dist/assets/{AnnotationTagsDropdown.ee-B25LS1iZ.js → AnnotationTagsDropdown.ee-DC_vLEiM.js} +1 -1
- package/dist/assets/{AppSidebar-B33Swdl-.js → AppSidebar-CP4R7JFy.js} +1 -1
- package/dist/assets/{AuthLayout-C7ANv7X9.js → AuthLayout-DKY7ThiF.js} +1 -1
- package/dist/assets/{AuthView-DL4bT4kE.js → AuthView-B-DTublD.js} +1 -1
- package/dist/assets/{BrowserUseSetupContent-B6rvdriH.js → BrowserUseSetupContent-CWnc9MZU.js} +1 -1
- package/dist/assets/{BrowserUseSetupModal-CjZNAcxU.js → BrowserUseSetupModal-gTa8XcXQ.js} +1 -1
- package/dist/assets/{ChangePasswordModal-BIP63kin.js → ChangePasswordModal-BFgyQQay.js} +1 -1
- package/dist/assets/{ChangePasswordView-CL482Plh.js → ChangePasswordView-BPuR1Ib1.js} +1 -1
- package/dist/assets/{ChatAgentAvatar-D6YZTYgl.js → ChatAgentAvatar-Cr2vOjv8.js} +1 -1
- package/dist/assets/{ChatFile-CsRUSYlm.js → ChatFile-Cryc51uF.js} +1 -1
- package/dist/assets/{ChatGreetings-BEVw-Gg5.js → ChatGreetings-A7U3Q1ru.js} +1 -1
- package/dist/assets/{ChatLayout-fqA8xN67.js → ChatLayout-BTmrgVI9.js} +1 -1
- package/dist/assets/{ChatLayout-ueLnF4v9.js → ChatLayout-B_wkf9IU.js} +1 -1
- package/dist/assets/{ChatMarkdownChunk-DjKKXOlB.js → ChatMarkdownChunk-BvL94wcv.js} +1 -1
- package/dist/assets/{ChatPersonalAgentsView-B_WFitcC.js → ChatPersonalAgentsView-D8cFDhmK.js} +1 -1
- package/dist/assets/{ChatView-DmtJ7Wf4.js → ChatView-B3D7uYeM.js} +1 -1
- package/dist/assets/{ChatWorkflowAgentsView-DkTmhfg6.js → ChatWorkflowAgentsView-kfUHeL0j.js} +1 -1
- package/dist/assets/{CollectionParameter-DgNQ8Auu.js → CollectionParameter-BCzsluYk.js} +1 -1
- package/dist/assets/{CompareCollectionView-CTGsKGGG.js → CompareCollectionView-Cz1B9fJM.js} +1 -1
- package/dist/assets/{ComputerUseSetupContent-hlMG4Cy3.js → ComputerUseSetupContent-CTrbaYgY.js} +1 -1
- package/dist/assets/{ComputerUseSetupModal-GZ9vAar4.js → ComputerUseSetupModal-C0udZp_v.js} +1 -1
- package/dist/assets/{ConfirmEmailChangeView-CU7B2uMl.js → ConfirmEmailChangeView-qdmaVE6f.js} +1 -1
- package/dist/assets/{ConfirmPasswordModal-DMsxaIuN.js → ConfirmPasswordModal-BSNRo3QN.js} +1 -1
- package/dist/assets/{ConnectionTracker-DFLiWBC4.js → ConnectionTracker-CIwdw9XE.js} +1 -1
- package/dist/assets/{CredentialSelectorModal-CATT8CPv.js → CredentialSelectorModal-Ce2hUv71.js} +1 -1
- package/dist/assets/{CredentialsView-Dte7IWGY.js → CredentialsView-B8UMbmf0.js} +1 -1
- package/dist/assets/{DataTableActions-BB_WG1X1.js → DataTableActions-G2jeW5fP.js} +1 -1
- package/dist/assets/{DataTableDetailsView-Bxdegl4c.js → DataTableDetailsView-BWrwQQeH.js} +1 -1
- package/dist/assets/{DataTableTable-X4RntWkT.js → DataTableTable-CZMSstKe.js} +1 -1
- package/dist/assets/{DataTableView-BCHw4cOs.js → DataTableView-C2gPPpYF.js} +1 -1
- package/dist/assets/{DefaultLayout-CLCs3ZQF.js → DefaultLayout-D6bDCePd.js} +1 -1
- package/dist/assets/{DeleteInstanceRoleModal-K5UQSf5H.js → DeleteInstanceRoleModal-Bb9PAXJ1.js} +1 -1
- package/dist/assets/{DemoDiffView-Ddzi8eIZ.js → DemoDiffView-Dc-Zk8pN.js} +1 -1
- package/dist/assets/{DemoLayout-Clrg0dSq.js → DemoLayout-CKBNGDL4.js} +1 -1
- package/dist/assets/{DependencyPill-DOeeA1tB.js → DependencyPill-D437KJuG.js} +1 -1
- package/dist/assets/{EmptySharedSectionActionBox-CNYlMN2O.js → EmptySharedSectionActionBox-B10Ldgv9.js} +1 -1
- package/dist/assets/{EntityNotFound-BaS2LtHV.js → EntityNotFound-Br4Z5eDq.js} +1 -1
- package/dist/assets/{EntityUnAuthorised-a-RlBPmc.js → EntityUnAuthorised-y999jv5H.js} +1 -1
- package/dist/assets/{ErrorView-DT2Xc-Cc.js → ErrorView-TroEkwTd.js} +1 -1
- package/dist/assets/{EvalCollectionsListView-C5mKbtBP.js → EvalCollectionsListView-DX42UzyI.js} +1 -1
- package/dist/assets/{EvaluationsListSwitcher-Dmq7A1xm.js → EvaluationsListSwitcher-Cmr4vVC6.js} +2 -2
- package/dist/assets/{EvaluationsPaywall-DKdQcTVp.js → EvaluationsPaywall-DQyicyLf.js} +1 -1
- package/dist/assets/{EvaluationsRootView-dwIva_EQ.js → EvaluationsRootView-CHaCl4Ia.js} +1 -1
- package/dist/assets/{ExecutionsTime-hx6xoilA.js → ExecutionsTime-D0U9mfE7.js} +1 -1
- package/dist/assets/{ExecutionsView-DWOVOXI2.js → ExecutionsView-DDJwzfzM.js} +1 -1
- package/dist/assets/{ExposeAllWorkflowsToMcpModal-BarsXi8u.js → ExposeAllWorkflowsToMcpModal-DGmhuB37.js} +1 -1
- package/dist/assets/{FixedCollectionParameter-DFq8iDyb.js → FixedCollectionParameter-CRd1OMN5.js} +1 -1
- package/dist/assets/{FolderBreadcrumbs-BcmiLd-R.js → FolderBreadcrumbs-sZzq3XUq.js} +1 -1
- package/dist/assets/{ForgotMyPasswordView-Dc1Ok6yq.js → ForgotMyPasswordView-CY4DiFRe.js} +1 -1
- package/dist/assets/{GroupedMetricChart-C3aPmFBg.js → GroupedMetricChart-DKnnCFmZ.js} +1 -1
- package/dist/assets/{InsightsChartAverageRuntime-z4AmvlXW.js → InsightsChartAverageRuntime-D95FRXle.js} +1 -1
- package/dist/assets/{InsightsChartFailed-DSmQdUL-.js → InsightsChartFailed-CbKy50TE.js} +1 -1
- package/dist/assets/{InsightsChartFailureRate-BCkZ70Za.js → InsightsChartFailureRate-DVg62y8Z.js} +1 -1
- package/dist/assets/{InsightsChartTimeSaved-BxnKK3Dg.js → InsightsChartTimeSaved-C-xc0fU5.js} +1 -1
- package/dist/assets/{InsightsChartTotal-BOMnFr6E.js → InsightsChartTotal-ytKqzs-d.js} +1 -1
- package/dist/assets/{InsightsDashboard-BPbfXzhW.js → InsightsDashboard-CTTkNXXv.js} +2 -2
- package/dist/assets/{InsightsPaywall-CRcRrSny.js → InsightsPaywall-DU5NRugx.js} +1 -1
- package/dist/assets/{InsightsSummary-CQbk0gEv.js → InsightsSummary-Nnuc_edM.js} +1 -1
- package/dist/assets/{InsightsTableWorkflows-C6MS-h_C.js → InsightsTableWorkflows-BG5eAHVs.js} +2 -2
- package/dist/assets/{InstanceAiEmptyView-CnyaQdI8.js → InstanceAiEmptyView-BNNtVuWV.js} +1 -1
- package/dist/assets/{InstanceAiLayout-CFDSkxNK.js → InstanceAiLayout-BOSAosCC.js} +1 -1
- package/dist/assets/{InstanceAiOnboardingWizard-cnhC-gNx.js → InstanceAiOnboardingWizard-Cy9gJP5W.js} +1 -1
- package/dist/assets/{InstanceAiThreadView-CWJoAJ0v.js → InstanceAiThreadView-EnH6W-rr.js} +1 -1
- package/dist/assets/{InstanceAiThreadsView-BypYwE33.js → InstanceAiThreadsView-DOTua7Pl.js} +1 -1
- package/dist/assets/{InstanceAiToolsConnectionModalWrapper-CUKzX9Ax.js → InstanceAiToolsConnectionModalWrapper-AbV2_Epo.js} +1 -1
- package/dist/assets/{InstanceAiView-Ce9aY10N.js → InstanceAiView-P5bXNdTs.js} +1 -1
- package/dist/assets/{InstanceRoleView-VZMlAtS0.js → InstanceRoleView-X5fojl7Q.js} +1 -1
- package/dist/assets/{LogsOverviewRow-DBMviOQa.js → LogsOverviewRow-CmmPGQP8.js} +1 -1
- package/dist/assets/{MCPOnboardingModal-DoMCMDSf.js → MCPOnboardingModal-Bocp40gP.js} +1 -1
- package/dist/assets/{MainHeader-BCczeasG.js → MainHeader-jhUuJZLB.js} +1 -1
- package/dist/assets/{MainSidebarHeader-Ccbs1l7q.js → MainSidebarHeader-DOK6DGos.js} +1 -1
- package/dist/assets/{McpClientLogoCards-CiJ2p0pG.js → McpClientLogoCards-BmM5J9Rx.js} +1 -1
- package/dist/assets/{McpJsonNudgeModal-Bqo0XEsi.js → McpJsonNudgeModal-sYOTMVcG.js} +1 -1
- package/dist/assets/{McpRegistrySuggestionFooter-Bs2oS3IH.js → McpRegistrySuggestionFooter-BXKKdEJs.js} +1 -1
- package/dist/assets/{MfaSetupModal--x-Anmln.js → MfaSetupModal-Chll-YQU.js} +1 -1
- package/dist/assets/{MigrationRuleDetail-C6oN_2WR.js → MigrationRuleDetail-CbeqzML_.js} +1 -1
- package/dist/assets/{MigrationRules-j6zedmLG.js → MigrationRules-JvOkx_GZ.js} +1 -1
- package/dist/assets/{ModelByIdSelectorModal-BcMG1wZy.js → ModelByIdSelectorModal-BH6NVsMz.js} +1 -1
- package/dist/assets/{NodeCreation-Iyjp7x_I.js → NodeCreation-BCtiN2Ss.js} +2 -2
- package/dist/assets/{NodeCreator-CHiYCnnQ.js → NodeCreator-Cf8v-P6M.js} +1 -1
- package/dist/assets/{NodeDetailsView-dxsT2c_o.js → NodeDetailsView-BaVQeJXW.js} +1 -1
- package/dist/assets/{NodeToolSettingsContent-CTszRDXW.js → NodeToolSettingsContent-CYm6ACxZ.js} +1 -1
- package/dist/assets/{NodeView-1iut-db2.js → NodeView-C1KEbbiK.js} +2 -2
- package/dist/assets/{NodeView-Cw9T3NOc.js → NodeView-DgwON1WW.js} +1 -1
- package/dist/assets/{OAuthConsentView-BYKkworR.js → OAuthConsentView-Dk-2c6QJ.js} +1 -1
- package/dist/assets/{PageViewLayout-Dy0Kn6cp.js → PageViewLayout-D9UCadz4.js} +1 -1
- package/dist/assets/{ProjectBreadcrumb-XjjIxZIL.js → ProjectBreadcrumb-DlzouRdK.js} +1 -1
- package/dist/assets/{ProjectFilter-CPj3gCkR.js → ProjectFilter-CSrk-EFJ.js} +1 -1
- package/dist/assets/{ProjectHeader-BZQpypks.js → ProjectHeader-CkcbjQmz.js} +1 -1
- package/dist/assets/{ProjectRoleView-BjicJ69a.js → ProjectRoleView-D53LZv6P.js} +1 -1
- package/dist/assets/{ProjectSettings-Cp1snmUC.js → ProjectSettings-CtcIM_0t.js} +1 -1
- package/dist/assets/{ProjectVariables-6etXPzaz.js → ProjectVariables-BnS33iUZ.js} +1 -1
- package/dist/assets/{PromotionSelectModal-a2ZjWi6x.js → PromotionSelectModal-cIFNoCWd.js} +1 -1
- package/dist/assets/{PromotionsSettingsView-BuFeVB82.js → PromotionsSettingsView-NBP1vwgV.js} +1 -1
- package/dist/assets/{PromptMfaCodeModal-DzldJ7jt.js → PromptMfaCodeModal-BzhMnIz8.js} +1 -1
- package/dist/assets/{ProviderSettingsModal-DX4YeUSt.js → ProviderSettingsModal-BPeGLlJE.js} +1 -1
- package/dist/assets/{PublicationIndicator-BwP55qRp.js → PublicationIndicator-DLfHu8s-.js} +1 -1
- package/dist/assets/{ResolversView-CJbgTJuZ.js → ResolversView-Bo6q-4Sf.js} +1 -1
- package/dist/assets/{ResourceCenterView-CFuNJv5k.js → ResourceCenterView-5vn1_9oL.js} +1 -1
- package/dist/assets/{ResourceFiltersDropdown-_z8gYMfx.js → ResourceFiltersDropdown-pL5NoAqS.js} +1 -1
- package/dist/assets/{ResourcesListEmptyState-CFcV2AWv.js → ResourcesListEmptyState-C5vQ-LI9.js} +1 -1
- package/dist/assets/{ResourcesListLayout-CRT3aihl.js → ResourcesListLayout-K_jbq4UU.js} +1 -1
- package/dist/assets/{RoleSelectDropdown-BlGLQvpV.js → RoleSelectDropdown-DZcidfgO.js} +1 -1
- package/dist/assets/{RolesView-CqUyvhhE.js → RolesView-BPgm8fNY.js} +1 -1
- package/dist/assets/{RunDataHtml-BlyW2-h-.js → RunDataHtml-DZUyMkQ5.js} +1 -1
- package/dist/assets/{RunDataJson-CLLdqm5V.js → RunDataJson-CIChzH0h.js} +2 -2
- package/dist/assets/{RunDataJsonActions-09LK-_Or.js → RunDataJsonActions-BVi0VzZ6.js} +1 -1
- package/dist/assets/{RunDataParsedAiContent-pT8SEnak.js → RunDataParsedAiContent-CVT-B880.js} +1 -1
- package/dist/assets/{RunDataParsedAiContent-Bf2-1S8h.js → RunDataParsedAiContent-Y2ecB_kD.js} +1 -1
- package/dist/assets/{RunDataSearch-BEAn62tb.js → RunDataSearch-DBIbZ0s2.js} +1 -1
- package/dist/assets/{RunDataTable-DzATI_zR.js → RunDataTable-zL2Tuuku.js} +1 -1
- package/dist/assets/{SamlOnboarding-DHyWAr_C.js → SamlOnboarding-CHtvnOAB.js} +1 -1
- package/dist/assets/{SecuritySettings-DI0VjiLS.js → SecuritySettings-BfW6wyei.js} +1 -1
- package/dist/assets/{SettingsAIView-DXnL9lQj.js → SettingsAIView-COSt0wf0.js} +1 -1
- package/dist/assets/{SettingsAiGatewayView-BemIztvk.js → SettingsAiGatewayView-B--xOQeS.js} +1 -1
- package/dist/assets/{SettingsApiView-BK_rH8YM.js → SettingsApiView-BPiPBo5q.js} +1 -1
- package/dist/assets/{SettingsChatHubView-CwvXNnJI.js → SettingsChatHubView-CV4FVKHC.js} +1 -1
- package/dist/assets/{SettingsCommunityNodesView-BQxdpw2e.js → SettingsCommunityNodesView-2OEnRW5g.js} +1 -1
- package/dist/assets/{SettingsContextView-Cxz_8f47.js → SettingsContextView-kPhltK13.js} +1 -1
- package/dist/assets/{SettingsEncryptionKeys-DkbbsI_A.js → SettingsEncryptionKeys-QvzWM4h_.js} +1 -1
- package/dist/assets/{SettingsExternalSecrets-zEQsrndx.js → SettingsExternalSecrets-BaO6hDTH.js} +1 -1
- package/dist/assets/{SettingsInstanceAiView-PTzp84xx.js → SettingsInstanceAiView-BouHR9Di.js} +1 -1
- package/dist/assets/{SettingsLayout-Bwp8Cgkj.js → SettingsLayout-bwvw2BYY.js} +1 -1
- package/dist/assets/{SettingsLdapView-wWwRtkO1.js → SettingsLdapView-BORnqMKs.js} +1 -1
- package/dist/assets/{SettingsLogStreamingView-CZYdsMzp.js → SettingsLogStreamingView-CxbgoxdD.js} +1 -1
- package/dist/assets/{SettingsMCPAgentsView-BEO89K1d.js → SettingsMCPAgentsView-CDFiLNpC.js} +1 -1
- package/dist/assets/{SettingsMCPClientsView-BSkyyyiR.js → SettingsMCPClientsView-B5RNnVAz.js} +1 -1
- package/dist/assets/{SettingsMCPView-CG9afKY5.js → SettingsMCPView-DgtmFBeJ.js} +1 -1
- package/dist/assets/{SettingsMCPWorkflowsView-CS3NJK0O.js → SettingsMCPWorkflowsView-DQz28qol.js} +1 -1
- package/dist/assets/{SettingsOpenTelemetryView-fLK4_oQx.js → SettingsOpenTelemetryView-C7o90Ihu.js} +1 -1
- package/dist/assets/{SettingsPersonalView-B9VoSZc_.js → SettingsPersonalView-CIPIAi9d.js} +1 -1
- package/dist/assets/{SettingsPreferencesView-mvebabfo.js → SettingsPreferencesView-CAdwHSw6.js} +1 -1
- package/dist/assets/{SettingsSecretsProviders.ee-CXHSobj8.js → SettingsSecretsProviders.ee-BJyYqeZ-.js} +1 -1
- package/dist/assets/{SettingsSourceControl-CtdIS4la.js → SettingsSourceControl-CRpWxNbm.js} +1 -1
- package/dist/assets/{SettingsSso-D1Stih94.js → SettingsSso-Cvhnx-ye.js} +1 -1
- package/dist/assets/{SettingsUsageAndPlan-B7yJ5Fgp.js → SettingsUsageAndPlan-CqRMKHfn.js} +1 -1
- package/dist/assets/{SettingsUsersView-D25_E50w.js → SettingsUsersView-DprEq4Ow.js} +1 -1
- package/dist/assets/{SetupView-C4WhT8VO.js → SetupView-cRNRIIkn.js} +1 -1
- package/dist/assets/{SetupWorkflowCredentialsButton-3UQq0pVY.js → SetupWorkflowCredentialsButton-BvTti5_D.js} +1 -1
- package/dist/assets/{SetupWorkflowFromTemplateView-VAzwMKH-.js → SetupWorkflowFromTemplateView-Dc4nldGr.js} +1 -1
- package/dist/assets/{SeverityTag-BT86-Sgv.js → SeverityTag-CXocDPrt.js} +1 -1
- package/dist/assets/{SigninView-BW7Z2tLP.js → SigninView-DrCAuQsL.js} +1 -1
- package/dist/assets/{SignoutView-CFdaaitd.js → SignoutView-CxBXZeCb.js} +1 -1
- package/dist/assets/{SignupView-D3mNfPgc.js → SignupView-IsYZ4KW3.js} +1 -1
- package/dist/assets/{SkeletonAgentCard-BPn1lcBp.js → SkeletonAgentCard-eQdJ7ZJs.js} +1 -1
- package/dist/assets/{TemplateList-lXDaYpnI.js → TemplateList-CXjvLGlY.js} +1 -1
- package/dist/assets/{TemplatesCollectionView-oza-4SpK.js → TemplatesCollectionView-CAXpTr5w.js} +1 -1
- package/dist/assets/{TemplatesSearchView-BpP3COYz.js → TemplatesSearchView-D0EKgskr.js} +1 -1
- package/dist/assets/{TemplatesView-B1-OIAJS.js → TemplatesView-ChHhgL9v.js} +1 -1
- package/dist/assets/{TemplatesWorkflowView-B5CrrVba.js → TemplatesWorkflowView-DCQCEgYa.js} +1 -1
- package/dist/assets/{TestRunDetailView-CqcCDA0r.js → TestRunDetailView-YYqaZeNI.js} +1 -1
- package/dist/assets/{ToolIcon-CN3WBb1s.js → ToolIcon-D0EEyaW5.js} +1 -1
- package/dist/assets/{ToolSettingsModal-BO_ygE-L.js → ToolSettingsModal-BBWfmEP-.js} +1 -1
- package/dist/assets/{ToolsConnectionModal-BIbjC-x5.js → ToolsConnectionModal-DbOOJSyM.js} +1 -1
- package/dist/assets/{ToolsManagerModal-v74sywWR.js → ToolsManagerModal-CiTYEsWY.js} +1 -1
- package/dist/assets/{ToolsSelector-Dxu6cPFo.js → ToolsSelector-D_J2QO4w.js} +1 -1
- package/dist/assets/{TrialIntroModal-Bqjl_NY1.js → TrialIntroModal-BpYqr8XX.js} +1 -1
- package/dist/assets/{VirtualSchema-BbjYEYYY.js → VirtualSchema-CbtNWL-X.js} +1 -1
- package/dist/assets/{WorkerView-D-tVctej.js → WorkerView-BEhEd0Ih.js} +1 -1
- package/dist/assets/{WorkflowBuilderUnavailableNotice-BSZQfekL.js → WorkflowBuilderUnavailableNotice-BwOrfqba.js} +1 -1
- package/dist/assets/{WorkflowExecutionsInfoAccordion-T1-wOd-T.js → WorkflowExecutionsInfoAccordion-gB5nnYyo.js} +1 -1
- package/dist/assets/{WorkflowExecutionsLandingPage-CEWqVTR4.js → WorkflowExecutionsLandingPage-Cv-jHNUv.js} +1 -1
- package/dist/assets/{WorkflowExecutionsPreview-MIknNdCw.js → WorkflowExecutionsPreview-DlrA7X3Q.js} +1 -1
- package/dist/assets/{WorkflowExecutionsView-P_xYO0bU.js → WorkflowExecutionsView-CO0OuFls.js} +1 -1
- package/dist/assets/{WorkflowHistory-C_z-Eg5u.js → WorkflowHistory-BDhQgsdm.js} +1 -1
- package/dist/assets/{WorkflowLayout-Vl7DA0VE.js → WorkflowLayout-B0cdcZAS.js} +1 -1
- package/dist/assets/{WorkflowOnboardingView-C0D57vXi.js → WorkflowOnboardingView-_rZevqyC.js} +1 -1
- package/dist/assets/{WorkflowPreviewHost-BBMQVotO.js → WorkflowPreviewHost-g8a_pMtD.js} +1 -1
- package/dist/assets/{WorkflowReviewRequestsView-HoEdLk1B.js → WorkflowReviewRequestsView-bYFNr5BJ.js} +1 -1
- package/dist/assets/{WorkflowsView-Dq2l3Uh1.js → WorkflowsView-CJBwrCCr.js} +1 -1
- package/dist/assets/{aiTemplatesStarterCollection.store-B_oXIg4a.js → aiTemplatesStarterCollection.store-DWJdUw1p.js} +1 -1
- package/dist/assets/{app-DVNMq1uL.js → app-D5iNDcFq.js} +14 -14
- package/dist/assets/{auth.eventBus-DPRbeEZK.js → auth.eventBus-NvURC3TH.js} +1 -1
- package/dist/assets/{clients.utils-DqijbFuh.js → clients.utils-EntJ7PAu.js} +1 -1
- package/dist/assets/{constants-vqWKfCye.js → constants-CBSK5Fg0.js} +1 -1
- package/dist/assets/{context.store-CPo1JDqB.js → context.store-Y6JMw38V.js} +1 -1
- package/dist/assets/{dist-Y7iUL5pT.js → dist-DHIs7lNH.js} +1 -1
- package/dist/assets/{en-BtnISMkU.js → en-LTNNP_BI.js} +1 -1
- package/dist/assets/{expression-runtime-stub-CEzXQGwI.js → expression-runtime-stub-CWIuUiPS.js} +1 -1
- package/dist/assets/{index-CClxMuo4.js → index-B1ohgJH3.js} +1 -1
- package/dist/assets/{insights.store-5bDCBYwf.js → insights.store-BG6EODoT.js} +1 -1
- package/dist/assets/{insights.store-C57C6rVT.js → insights.store-eVBZMv0v.js} +1 -1
- package/dist/assets/{insights.utils-D1hfWojs.js → insights.utils-CmMRndHT.js} +1 -1
- package/dist/assets/{instanceAi.store-CyOQECDS.js → instanceAi.store-CnehbyHu.js} +1 -1
- package/dist/assets/{instanceAiComputerUse.telemetry-l3PSklHA.js → instanceAiComputerUse.telemetry-CVpMMdju.js} +1 -1
- package/dist/assets/{instanceAiMcp.store-DkHqCPo7.js → instanceAiMcp.store-BCm6p-Ci.js} +1 -1
- package/dist/assets/{instanceAiMcp.store-D3hNroou.js → instanceAiMcp.store-Lji7Lcvg.js} +1 -1
- package/dist/assets/{instanceRoleScopes-DHTI4Kk5.js → instanceRoleScopes-D897OQQF.js} +1 -1
- package/dist/assets/{mcp.store-DBUsU60x.js → mcp.store-C-GDdn5R.js} +1 -1
- package/dist/assets/{postMessageUtils-Do_5spX4.js → postMessageUtils-CRI0Bw-q.js} +1 -1
- package/dist/assets/{projectRoleScopes-CMVTXcv3.js → projectRoleScopes-Div4LfSO.js} +1 -1
- package/dist/assets/{promotions.api-8oLcRMjJ.js → promotions.api-DaY0YinB.js} +1 -1
- package/dist/assets/{promotions.eventBus-Jcp-leEN.js → promotions.eventBus-BuEzB9T1.js} +1 -1
- package/dist/assets/{promotionsSettings.api-Dzr7obq-.js → promotionsSettings.api-D_GnxB_m.js} +1 -1
- package/dist/assets/{pushConnection.store-DM600MZi.js → pushConnection.store-DwKgMZKl.js} +1 -1
- package/dist/assets/{readyToRun.store-UKxYbyuO.js → readyToRun.store-Bd-_vQmA.js} +1 -1
- package/dist/assets/{readyToRunWorkflows.store-Qd2bhBxk.js → readyToRunWorkflows.store-gwznpOEh.js} +1 -1
- package/dist/assets/{resourceCenter.store-Dsxq0jrU.js → resourceCenter.store-CNwR6nUF.js} +1 -1
- package/dist/assets/{src-C5K9p_b1.js → src-BJsGS0qQ.js} +1 -1
- package/dist/assets/{src-BqAC6H6y.js → src-Cs8NRkVY.js} +1 -1
- package/dist/assets/{surfaceMcpToNewCloudUsers.store-C3nfbqlG.js → surfaceMcpToNewCloudUsers.store-BasAA_18.js} +1 -1
- package/dist/assets/{templateActions-Ct8dcNLE.js → templateActions-CUqx8zeK.js} +1 -1
- package/dist/assets/{thread-title-D0P5fwGs.js → thread-title-BAuiF61d.js} +1 -1
- package/dist/assets/{toolIcons-DZAhuVsr.js → toolIcons-pCcdHq7j.js} +1 -1
- package/dist/assets/{useActivityDetection-n09S498G.js → useActivityDetection-CGvbgOFC.js} +1 -1
- package/dist/assets/{useAgentConfirmationModal-DPPWT2nR.js → useAgentConfirmationModal-BnRPm5hJ.js} +1 -1
- package/dist/assets/{useAgentPublish-Cz8ycooW.js → useAgentPublish-DfVc47jk.js} +1 -1
- package/dist/assets/{useBuilderStreamingGuard-l4jWfYtd.js → useBuilderStreamingGuard-BDnIKHsc.js} +1 -1
- package/dist/assets/{useCustomAgent-Dksvxh2O.js → useCustomAgent-DEhxDEtJ.js} +1 -1
- package/dist/assets/{useDependencyMenu-jrOa7EOr.js → useDependencyMenu-BvTTdwr2.js} +1 -1
- package/dist/assets/{useEvalCollectionsFlag-BzQpvVTI.js → useEvalCollectionsFlag-BcXDg5uD.js} +1 -1
- package/dist/assets/{useEvaluationsLicense-CQhNLcSC.js → useEvaluationsLicense-BXGUa9dO.js} +1 -1
- package/dist/assets/{useExecutionData-Cy2NZqk9.js → useExecutionData-DjK1sCOA.js} +1 -1
- package/dist/assets/{useExecutionDebugging-B7rYCCod.js → useExecutionDebugging-Fgb-DIB0.js} +1 -1
- package/dist/assets/{useExposeAllWorkflowsToMcpOffer-Z9nZ9s7e.js → useExposeAllWorkflowsToMcpOffer-bVgKEisx.js} +1 -1
- package/dist/assets/{useExtensionDirectConnect-DY6RARCE.js → useExtensionDirectConnect-BIR9RceL.js} +1 -1
- package/dist/assets/{useFileDrop-DYMBrshR.js → useFileDrop-DWPt37GY.js} +1 -1
- package/dist/assets/{useImportCurlCommand-DYs98poy.js → useImportCurlCommand-DRNFHW4x.js} +1 -1
- package/dist/assets/{useInstanceAiThreadHistory-BL9JZMI8.js → useInstanceAiThreadHistory-CtHT6eCk.js} +1 -1
- package/dist/assets/{useInstancePromotionConnection-D9P6vZjR.js → useInstancePromotionConnection-DzotPtQb.js} +1 -1
- package/dist/assets/{useIsAssistantAtMentionsEnabled-C-inOoT5.js → useIsAssistantAtMentionsEnabled-FtGNvPGE.js} +1 -1
- package/dist/assets/{useLogsTreeExpand-CjQ070he.js → useLogsTreeExpand-DMGFKyvB.js} +1 -1
- package/dist/assets/{useMcpJsonNudgeEligibility-BErkBdsf.js → useMcpJsonNudgeEligibility-sZKBSjKe.js} +1 -1
- package/dist/assets/{useMcpJsonNudgeTrigger-BLadZQdx.js → useMcpJsonNudgeTrigger-CNo-6dP5.js} +1 -1
- package/dist/assets/{useOAuthClientRevoke-CLm4qwSi.js → useOAuthClientRevoke-DK28dTia.js} +1 -1
- package/dist/assets/{usePostMessageHandler-Bq9fo7db.js → usePostMessageHandler-Cw2HRrwC.js} +2 -2
- package/dist/assets/{usePushConnection-yOBZuYdK.js → usePushConnection-CYkBZGUS.js} +1 -1
- package/dist/assets/{usePushConnection-DhRtwDMc.js → usePushConnection-No0fkOJf.js} +1 -1
- package/dist/assets/{useRoleEditorForm-Dvo64W6Y.js → useRoleEditorForm-BxGy9qIa.js} +1 -1
- package/dist/assets/{useSecretsProvidersList.ee-DxqomjmN.js → useSecretsProvidersList.ee-ij71kpmd.js} +1 -1
- package/dist/assets/{useSettingsItems-Heurw80q.js → useSettingsItems-rjZ06Ko6.js} +1 -1
- package/dist/assets/{useSidebarLayout-BZxOA2sf.js → useSidebarLayout-BrBe7TIq.js} +1 -1
- package/dist/assets/{useWorkflowEvaluationState-DAZHBTN4.js → useWorkflowEvaluationState-7cI9tSGE.js} +1 -1
- package/dist/assets/{useWorkflowInitialization-Bf6qzxGp.js → useWorkflowInitialization-BAuBSCQw.js} +1 -1
- package/dist/assets/{useWorkflowsEmptyState-CKp_4nSH.js → useWorkflowsEmptyState-D-9OJ0jv.js} +1 -1
- package/dist/assets/{userRoleProvisioning.store-BTNUdACd.js → userRoleProvisioning.store-zvL6jl_u.js} +1 -1
- package/dist/assets/{vector-stores-DSScmK71.js → vector-stores-Df1YUd3a.js} +1 -1
- package/dist/assets/{workflowReviews.utils-CmT9Nkpv.js → workflowReviews.utils-BeDPhvPz.js} +1 -1
- package/dist/index.html +2 -2
- 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]=`2971262e-16c5-4391-8adc-3cb6e1d4d69e`,e._sentryDebugIdIdentifier=`sentry-dbid-2971262e-16c5-4391-8adc-3cb6e1d4d69e`)})()}catch{}import{t as e}from"./NodeView-
|
|
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]=`2971262e-16c5-4391-8adc-3cb6e1d4d69e`,e._sentryDebugIdIdentifier=`sentry-dbid-2971262e-16c5-4391-8adc-3cb6e1d4d69e`)})()}catch{}import{t as e}from"./NodeView-C1KEbbiK.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]=`527e63fe-5587-4526-875f-3a2b78a17caa`,e._sentryDebugIdIdentifier=`sentry-dbid-527e63fe-5587-4526-875f-3a2b78a17caa`)})()}catch{}import{Ad as e,Af as t,Cd as n,Dd as r,Ed as i,Kd as a,Nd as o,Sf as s,Td as c,Yd as l,Zf as u,bd as ee,cf as d,jd as f,np as p,po as m,qd as te,tf as ne,uf as h,wd as g}from"./vendor-BBKxcFox.js";import{$C as _,$l as v,Ax as y,BS as b,B_ as x,GC as S,I_ as re,O as ie,TC as ae,W_ as C,aC as w,cv as T,cw as E,ew as D,id as O,lC as k,ov as A,qC as oe,qS as se,rw as j}from"./app-DVNMq1uL.js";import{r as M}from"./clients.utils-DqijbFuh.js";async function N(e){return await T(e,`GET`,`/consent/details`)}async function P(e,t,n){return await T(e,`POST`,`/consent/approve`,{approved:t,scopes:n})}var F=m(y.CONSENT,()=>{let e=s(null),t=s(!1),n=s(null),r=s(null),i=C(),a=0;return{fetchConsentDetails:async()=>{let o=++a;t.value=!0,n.value=null,r.value=null;try{let t=await N(i.restApiContext);return o===a&&(e.value=t),e.value}catch(e){throw o===a&&(e instanceof A&&e.httpStatusCode===422?r.value=`resource_unavailable`:e instanceof A&&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 P(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}}),I={viewBox:`0 0 64 8`,preserveAspectRatio:`none`},L=o({__name:`OAuthConsentView`,setup(o){let m=F(),y=E(),C=O(),T=re(),A=x(),j=s(!1),N=s(!1),P=s(!1),L=s(!1),R=s([]),z=!0;te(()=>{z=!1});let B=n(()=>m.error),V=n(()=>m.isLoading),H=n(()=>m.errorCode===`resource_unavailable`?y.baseText(`oauth.consentView.error.resourceUnavailable`):m.errorCode===`forbidden`?y.baseText(`oauth.consentView.error.insufficientScope`):m.error),U=n(()=>{let e=m.consentDetails;return e&&!e.autoApproved?e:null}),W=n(()=>U.value?.resourceName),G=n(()=>m.consentDetails?.uiHints),K=n(()=>M(U.value?.clientName??``).icon),q=n(()=>y.baseText(`oauth.consentView.firstParty.type.${U.value?.uiHints?.consentType??`default`}`)),J=n(()=>U.value?.scopes??[]),Y=n(()=>J.value.length>0),X=n(()=>!!U.value?.redirectUri&&!U.value?.isFirstParty),Z=n(()=>Y.value&&R.value.length===0),Q=n(()=>V.value||B.value!==null||!U.value||X.value&&!L.value||Z.value),$=n(()=>Z.value?y.baseText(`oauth.consentView.allowDisabled.noScopes`):X.value&&!L.value?y.baseText(`oauth.consentView.allowDisabled.trust`):null);d(()=>U.value?.redirectUri,()=>{L.value=!1}),d(J,e=>{let t=U.value?.previousScopes??[];R.value=t.length>0?t:[...e]},{immediate:!0});let ce=async()=>{try{let e=await m.approveConsent(!0,Y.value?R.value:void 0);A.track(`User approved MCP consent`,{client_name:U.value?.clientName,selected_scopes:R.value,selected_scopes_count:R.value.length,all_scopes_selected:R.value.length===J.value.length}),j.value=!0,window.location.href=e.redirectUrl}catch(e){T.showError(e,y.baseText(`oauth.consentView.error.allow`))}},le=async()=>{try{await m.approveConsent(!1),A.track(`User denied MCP consent`,{client_name:U.value?.clientName}),window.location.href=window.BASE_PATH??`/`}catch(e){T.showError(e,y.baseText(`oauth.consentView.error.deny`))}},ue=()=>{window.location.href=window.BASE_PATH??`/`};return a(async()=>{C.set(y.baseText(`oauth.consentView.title`));try{let e=await m.fetchConsentDetails();if(!z)return;if(P.value=!0,e?.autoApproved&&e.redirectUrl){N.value=!0,window.location.href=e.redirectUrl;return}A.track(`User viewed MCP consent screen`,{client_name:U.value?.clientName,available_scopes_count:J.value.length})}catch(e){if(!z)return;T.showError(e,y.baseText(`oauth.consentView.error.fetchDetails`))}}),(n,a)=>(l(),r(`div`,{class:u(n.$style.overlay)},[g(`div`,{class:u(n.$style[`consent-dialog`])},[g(`header`,{class:u(n.$style.header)},[g(`div`,{class:u(n.$style.logo)},[G.value?.icon?(l(),c(t(D),{key:0,icon:G.value.icon,size:`large`,color:`text-dark`},null,8,[`icon`])):K.value?(l(),c(ne(K.value),{key:1,class:u(n.$style[`brand-icon`])},null,8,[`class`])):P.value||B.value?(l(),c(t(D),{key:2,icon:`mcp`,size:`large`,color:`text-dark`})):i(``,!0)],2),g(`span`,{class:u(n.$style.connector),"aria-hidden":`true`},[(l(),r(`svg`,I,[g(`line`,{class:u(n.$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)])),g(`span`,{class:u(n.$style.badge)},[f(t(D),{class:u(n.$style[`badge-spinner`]),icon:`loader-circle`,size:`large`},null,8,[`class`])],2)],2),g(`div`,{class:u(n.$style.logo)},[f(t(se),{size:`small`,collapsed:!0,"release-channel":`stable`})],2)],2),j.value?(l(),r(`div`,{key:0,class:u(n.$style.success),"data-test-id":`consent-success-screen`},[f(t(k),{tag:`h2`,size:`large`,bold:!0},{default:h(()=>[e(p(t(y).baseText(`oauth.consentView.success.title`)),1)]),_:1}),f(t(S),{color:`text-base`},{default:h(()=>[e(p(t(y).baseText(`oauth.consentView.success.description`)),1)]),_:1})],2)):B.value?(l(),r(`div`,{key:1,class:u(n.$style.content),"data-test-id":`consent-error`},[f(t(k),{tag:`h2`,size:`large`,bold:!0},{default:h(()=>[e(p(t(y).baseText(`oauth.consentView.error.heading`)),1)]),_:1}),f(t(b),{theme:`danger`,"data-test-id":`consent-error-notice`,content:H.value??``},null,8,[`content`])],2)):N.value||!P.value?(l(),r(`div`,{key:2,class:u(n.$style.content),"data-test-id":`consent-loading`},null,2)):(l(),r(`div`,{key:3,class:u(n.$style.content),"data-test-id":`consent-content`},[U.value?.isFirstParty?(l(),c(t(k),{key:0,tag:`h2`,size:`large`,bold:!0},{default:h(()=>[e(p(t(y).baseText(`oauth.consentView.firstParty.heading`,{interpolate:{resourceName:W.value??``}})),1)]),_:1})):W.value?(l(),c(t(k),{key:1,tag:`h2`,size:`large`,bold:!0},{default:h(()=>[e(p(t(y).baseText(`oauth.consentView.headingWithWorkflow`,{interpolate:{clientName:U.value?.clientName??``,resourceName:W.value}})),1)]),_:1})):(l(),c(t(k),{key:2,tag:`h2`,size:`large`,bold:!0},{default:h(()=>[e(p(t(y).baseText(`oauth.consentView.heading`,{interpolate:{clientName:U.value?.clientName??``}})),1)]),_:1})),g(`div`,{class:u(n.$style[`text-content`])},[U.value?.isFirstParty?(l(),c(t(S),{key:0,color:`text-base`,size:`medium`},{default:h(()=>[e(p(t(y).baseText(`oauth.consentView.firstParty.description`,{interpolate:{resourceType:q.value}})),1)]),_:1})):W.value?(l(),c(t(S),{key:1,color:`text-base`,size:`medium`},{default:h(()=>[e(p(t(y).baseText(`oauth.consentView.descriptionWithWorkflow`,{interpolate:{clientName:U.value?.clientName??``}})),1)]),_:1})):Y.value?(l(),c(t(S),{key:2,color:`text-base`,size:`medium`},{default:h(()=>[e(p(t(y).baseText(`oauth.consentView.scopes.description`,{interpolate:{clientName:U.value?.clientName??``}})),1)]),_:1})):(l(),c(t(S),{key:3,color:`text-base`,size:`medium`},{default:h(()=>[e(p(t(y).baseText(`oauth.consentView.description`,{interpolate:{clientName:U.value?.clientName??``}})),1)]),_:1})),Y.value?(l(),c(v,{key:4,modelValue:R.value,"onUpdate:modelValue":a[0]||=e=>R.value=e,"available-scopes":J.value,groups:t(ie),"scope-tools":U.value?.scopeTools,"i18n-key-prefix":`oauth.consentView.scopes`,"root-test-id":`consent-scopes`},null,8,[`modelValue`,`available-scopes`,`groups`,`scope-tools`])):W.value?i(``,!0):(l(),r(`ul`,{key:5,class:u(n.$style[`permission-list`])},[g(`li`,null,p(t(y).baseText(`oauth.consentView.action.listWorkflows`)),1),g(`li`,null,p(t(y).baseText(`oauth.consentView.action.workflowDetails`)),1),g(`li`,null,p(t(y).baseText(`oauth.consentView.action.executeWorkflows`)),1),g(`li`,null,p(t(y).baseText(`oauth.consentView.action.executionDetails`)),1),g(`li`,null,p(t(y).baseText(`oauth.consentView.action.createUpdateWorkflows`)),1),g(`li`,null,p(t(y).baseText(`oauth.consentView.action.createDataTables`)),1),g(`li`,null,p(t(y).baseText(`oauth.consentView.action.searchProjectsAndFolders`)),1)],2))],2)],2)),!j.value&&!N.value&&(B.value||P.value)?(l(),r(`footer`,{key:4,class:u(n.$style.footer)},[!B.value&&X.value?(l(),r(`div`,{key:0,class:u(n.$style.divided)},[f(t(ae),{theme:`secondary`,iconless:!0,class:u(n.$style[`redirect-note`]),"data-test-id":`consent-redirect-warning`},{default:h(()=>[g(`span`,{class:u(n.$style[`redirect-note-title`])},p(t(y).baseText(`oauth.consentView.redirectWarning.title`)),3),g(`code`,{class:u(n.$style[`redirect-url`]),"data-test-id":`consent-redirect-uri`},p(U.value?.redirectUri),3)]),_:1},8,[`class`])],2)):i(``,!0),g(`div`,{class:u([n.$style[`footer-actions`],n.$style.divided])},[!B.value&&X.value?(l(),c(t(w),{key:0,modelValue:L.value,"onUpdate:modelValue":a[1]||=e=>L.value=e,class:u(n.$style[`trust-confirm`]),label:t(y).baseText(`oauth.consentView.redirectWarning.confirm`),"data-test-id":`consent-redirect-confirm`},null,8,[`modelValue`,`class`,`label`])):i(``,!0),g(`div`,{class:u(n.$style[`button-group`])},[B.value?(l(),c(t(_),{key:0,variant:`solid`,"data-test-id":`consent-close-button`,size:`large`,onClick:ue},{default:h(()=>[e(p(t(y).baseText(`generic.close`)),1)]),_:1})):(l(),r(ee,{key:1},[f(t(_),{variant:`outline`,"data-test-id":`consent-deny-button`,size:`large`,loading:V.value,disabled:V.value,onClick:le},{default:h(()=>[e(p(t(y).baseText(`generic.deny`)),1)]),_:1},8,[`loading`,`disabled`]),f(t(oe),{disabled:!Q.value||!$.value},{content:h(()=>[e(p($.value),1)]),default:h(()=>[f(t(_),{variant:`solid`,"data-test-id":`consent-allow-button`,size:`large`,loading:V.value,disabled:Q.value,onClick:ce},{default:h(()=>[e(p(t(y).baseText(`oauth.consentView.allow`)),1)]),_:1},8,[`loading`,`disabled`])]),_:1},8,[`disabled`])],64))],2)],2)],2)):i(``,!0)],2)],2))}}),R=`_overlay_fngd8_1`,z=`_header_fngd8_31`,B=`_logo_fngd8_38`,V=`_connector_fngd8_58`,H=`_badge_fngd8_85`,U=`_content_fngd8_118`,W=`_success_fngd8_124`,G=`_footer_fngd8_153`,K=`_divided_fngd8_152`,q=j(L,[[`__cssModules`,{$style:{overlay:R,"consent-dialog":`_consent-dialog_fngd8_14`,header:z,logo:B,"brand-icon":`_brand-icon_fngd8_53`,connector:V,"connector-line":`_connector-line_fngd8_75`,"mcp-connector-dash":`_mcp-connector-dash_fngd8_1`,badge:H,"badge-spinner":`_badge-spinner_fngd8_102`,"mcp-connector-spin":`_mcp-connector-spin_fngd8_1`,content:U,success:W,"text-content":`_text-content_fngd8_133`,"permission-list":`_permission-list_fngd8_139`,footer:G,divided:K,"redirect-note":`_redirect-note_fngd8_171`,"redirect-note-title":`_redirect-note-title_fngd8_179`,"redirect-url":`_redirect-url_fngd8_180`,"footer-actions":`_footer-actions_fngd8_194`,"button-group":`_button-group_fngd8_203`,"trust-confirm":`_trust-confirm_fngd8_212`}}]]);export{q 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]=`527e63fe-5587-4526-875f-3a2b78a17caa`,e._sentryDebugIdIdentifier=`sentry-dbid-527e63fe-5587-4526-875f-3a2b78a17caa`)})()}catch{}import{Ad as e,Af as t,Cd as n,Dd as r,Ed as i,Kd as a,Nd as o,Sf as s,Td as c,Yd as l,Zf as u,bd as ee,cf as d,jd as f,np as p,po as m,qd as te,tf as ne,uf as h,wd as g}from"./vendor-BBKxcFox.js";import{$C as _,$l as v,Ax as y,BS as b,B_ as x,GC as S,I_ as re,O as ie,TC as ae,W_ as C,aC as w,cv as T,cw as E,ew as D,id as O,lC as k,ov as A,qC as oe,qS as se,rw as j}from"./app-D5iNDcFq.js";import{r as M}from"./clients.utils-EntJ7PAu.js";async function N(e){return await T(e,`GET`,`/consent/details`)}async function P(e,t,n){return await T(e,`POST`,`/consent/approve`,{approved:t,scopes:n})}var F=m(y.CONSENT,()=>{let e=s(null),t=s(!1),n=s(null),r=s(null),i=C(),a=0;return{fetchConsentDetails:async()=>{let o=++a;t.value=!0,n.value=null,r.value=null;try{let t=await N(i.restApiContext);return o===a&&(e.value=t),e.value}catch(e){throw o===a&&(e instanceof A&&e.httpStatusCode===422?r.value=`resource_unavailable`:e instanceof A&&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 P(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}}),I={viewBox:`0 0 64 8`,preserveAspectRatio:`none`},L=o({__name:`OAuthConsentView`,setup(o){let m=F(),y=E(),C=O(),T=re(),A=x(),j=s(!1),N=s(!1),P=s(!1),L=s(!1),R=s([]),z=!0;te(()=>{z=!1});let B=n(()=>m.error),V=n(()=>m.isLoading),H=n(()=>m.errorCode===`resource_unavailable`?y.baseText(`oauth.consentView.error.resourceUnavailable`):m.errorCode===`forbidden`?y.baseText(`oauth.consentView.error.insufficientScope`):m.error),U=n(()=>{let e=m.consentDetails;return e&&!e.autoApproved?e:null}),W=n(()=>U.value?.resourceName),G=n(()=>m.consentDetails?.uiHints),K=n(()=>M(U.value?.clientName??``).icon),q=n(()=>y.baseText(`oauth.consentView.firstParty.type.${U.value?.uiHints?.consentType??`default`}`)),J=n(()=>U.value?.scopes??[]),Y=n(()=>J.value.length>0),X=n(()=>!!U.value?.redirectUri&&!U.value?.isFirstParty),Z=n(()=>Y.value&&R.value.length===0),Q=n(()=>V.value||B.value!==null||!U.value||X.value&&!L.value||Z.value),$=n(()=>Z.value?y.baseText(`oauth.consentView.allowDisabled.noScopes`):X.value&&!L.value?y.baseText(`oauth.consentView.allowDisabled.trust`):null);d(()=>U.value?.redirectUri,()=>{L.value=!1}),d(J,e=>{let t=U.value?.previousScopes??[];R.value=t.length>0?t:[...e]},{immediate:!0});let ce=async()=>{try{let e=await m.approveConsent(!0,Y.value?R.value:void 0);A.track(`User approved MCP consent`,{client_name:U.value?.clientName,selected_scopes:R.value,selected_scopes_count:R.value.length,all_scopes_selected:R.value.length===J.value.length}),j.value=!0,window.location.href=e.redirectUrl}catch(e){T.showError(e,y.baseText(`oauth.consentView.error.allow`))}},le=async()=>{try{await m.approveConsent(!1),A.track(`User denied MCP consent`,{client_name:U.value?.clientName}),window.location.href=window.BASE_PATH??`/`}catch(e){T.showError(e,y.baseText(`oauth.consentView.error.deny`))}},ue=()=>{window.location.href=window.BASE_PATH??`/`};return a(async()=>{C.set(y.baseText(`oauth.consentView.title`));try{let e=await m.fetchConsentDetails();if(!z)return;if(P.value=!0,e?.autoApproved&&e.redirectUrl){N.value=!0,window.location.href=e.redirectUrl;return}A.track(`User viewed MCP consent screen`,{client_name:U.value?.clientName,available_scopes_count:J.value.length})}catch(e){if(!z)return;T.showError(e,y.baseText(`oauth.consentView.error.fetchDetails`))}}),(n,a)=>(l(),r(`div`,{class:u(n.$style.overlay)},[g(`div`,{class:u(n.$style[`consent-dialog`])},[g(`header`,{class:u(n.$style.header)},[g(`div`,{class:u(n.$style.logo)},[G.value?.icon?(l(),c(t(D),{key:0,icon:G.value.icon,size:`large`,color:`text-dark`},null,8,[`icon`])):K.value?(l(),c(ne(K.value),{key:1,class:u(n.$style[`brand-icon`])},null,8,[`class`])):P.value||B.value?(l(),c(t(D),{key:2,icon:`mcp`,size:`large`,color:`text-dark`})):i(``,!0)],2),g(`span`,{class:u(n.$style.connector),"aria-hidden":`true`},[(l(),r(`svg`,I,[g(`line`,{class:u(n.$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)])),g(`span`,{class:u(n.$style.badge)},[f(t(D),{class:u(n.$style[`badge-spinner`]),icon:`loader-circle`,size:`large`},null,8,[`class`])],2)],2),g(`div`,{class:u(n.$style.logo)},[f(t(se),{size:`small`,collapsed:!0,"release-channel":`stable`})],2)],2),j.value?(l(),r(`div`,{key:0,class:u(n.$style.success),"data-test-id":`consent-success-screen`},[f(t(k),{tag:`h2`,size:`large`,bold:!0},{default:h(()=>[e(p(t(y).baseText(`oauth.consentView.success.title`)),1)]),_:1}),f(t(S),{color:`text-base`},{default:h(()=>[e(p(t(y).baseText(`oauth.consentView.success.description`)),1)]),_:1})],2)):B.value?(l(),r(`div`,{key:1,class:u(n.$style.content),"data-test-id":`consent-error`},[f(t(k),{tag:`h2`,size:`large`,bold:!0},{default:h(()=>[e(p(t(y).baseText(`oauth.consentView.error.heading`)),1)]),_:1}),f(t(b),{theme:`danger`,"data-test-id":`consent-error-notice`,content:H.value??``},null,8,[`content`])],2)):N.value||!P.value?(l(),r(`div`,{key:2,class:u(n.$style.content),"data-test-id":`consent-loading`},null,2)):(l(),r(`div`,{key:3,class:u(n.$style.content),"data-test-id":`consent-content`},[U.value?.isFirstParty?(l(),c(t(k),{key:0,tag:`h2`,size:`large`,bold:!0},{default:h(()=>[e(p(t(y).baseText(`oauth.consentView.firstParty.heading`,{interpolate:{resourceName:W.value??``}})),1)]),_:1})):W.value?(l(),c(t(k),{key:1,tag:`h2`,size:`large`,bold:!0},{default:h(()=>[e(p(t(y).baseText(`oauth.consentView.headingWithWorkflow`,{interpolate:{clientName:U.value?.clientName??``,resourceName:W.value}})),1)]),_:1})):(l(),c(t(k),{key:2,tag:`h2`,size:`large`,bold:!0},{default:h(()=>[e(p(t(y).baseText(`oauth.consentView.heading`,{interpolate:{clientName:U.value?.clientName??``}})),1)]),_:1})),g(`div`,{class:u(n.$style[`text-content`])},[U.value?.isFirstParty?(l(),c(t(S),{key:0,color:`text-base`,size:`medium`},{default:h(()=>[e(p(t(y).baseText(`oauth.consentView.firstParty.description`,{interpolate:{resourceType:q.value}})),1)]),_:1})):W.value?(l(),c(t(S),{key:1,color:`text-base`,size:`medium`},{default:h(()=>[e(p(t(y).baseText(`oauth.consentView.descriptionWithWorkflow`,{interpolate:{clientName:U.value?.clientName??``}})),1)]),_:1})):Y.value?(l(),c(t(S),{key:2,color:`text-base`,size:`medium`},{default:h(()=>[e(p(t(y).baseText(`oauth.consentView.scopes.description`,{interpolate:{clientName:U.value?.clientName??``}})),1)]),_:1})):(l(),c(t(S),{key:3,color:`text-base`,size:`medium`},{default:h(()=>[e(p(t(y).baseText(`oauth.consentView.description`,{interpolate:{clientName:U.value?.clientName??``}})),1)]),_:1})),Y.value?(l(),c(v,{key:4,modelValue:R.value,"onUpdate:modelValue":a[0]||=e=>R.value=e,"available-scopes":J.value,groups:t(ie),"scope-tools":U.value?.scopeTools,"i18n-key-prefix":`oauth.consentView.scopes`,"root-test-id":`consent-scopes`},null,8,[`modelValue`,`available-scopes`,`groups`,`scope-tools`])):W.value?i(``,!0):(l(),r(`ul`,{key:5,class:u(n.$style[`permission-list`])},[g(`li`,null,p(t(y).baseText(`oauth.consentView.action.listWorkflows`)),1),g(`li`,null,p(t(y).baseText(`oauth.consentView.action.workflowDetails`)),1),g(`li`,null,p(t(y).baseText(`oauth.consentView.action.executeWorkflows`)),1),g(`li`,null,p(t(y).baseText(`oauth.consentView.action.executionDetails`)),1),g(`li`,null,p(t(y).baseText(`oauth.consentView.action.createUpdateWorkflows`)),1),g(`li`,null,p(t(y).baseText(`oauth.consentView.action.createDataTables`)),1),g(`li`,null,p(t(y).baseText(`oauth.consentView.action.searchProjectsAndFolders`)),1)],2))],2)],2)),!j.value&&!N.value&&(B.value||P.value)?(l(),r(`footer`,{key:4,class:u(n.$style.footer)},[!B.value&&X.value?(l(),r(`div`,{key:0,class:u(n.$style.divided)},[f(t(ae),{theme:`secondary`,iconless:!0,class:u(n.$style[`redirect-note`]),"data-test-id":`consent-redirect-warning`},{default:h(()=>[g(`span`,{class:u(n.$style[`redirect-note-title`])},p(t(y).baseText(`oauth.consentView.redirectWarning.title`)),3),g(`code`,{class:u(n.$style[`redirect-url`]),"data-test-id":`consent-redirect-uri`},p(U.value?.redirectUri),3)]),_:1},8,[`class`])],2)):i(``,!0),g(`div`,{class:u([n.$style[`footer-actions`],n.$style.divided])},[!B.value&&X.value?(l(),c(t(w),{key:0,modelValue:L.value,"onUpdate:modelValue":a[1]||=e=>L.value=e,class:u(n.$style[`trust-confirm`]),label:t(y).baseText(`oauth.consentView.redirectWarning.confirm`),"data-test-id":`consent-redirect-confirm`},null,8,[`modelValue`,`class`,`label`])):i(``,!0),g(`div`,{class:u(n.$style[`button-group`])},[B.value?(l(),c(t(_),{key:0,variant:`solid`,"data-test-id":`consent-close-button`,size:`large`,onClick:ue},{default:h(()=>[e(p(t(y).baseText(`generic.close`)),1)]),_:1})):(l(),r(ee,{key:1},[f(t(_),{variant:`outline`,"data-test-id":`consent-deny-button`,size:`large`,loading:V.value,disabled:V.value,onClick:le},{default:h(()=>[e(p(t(y).baseText(`generic.deny`)),1)]),_:1},8,[`loading`,`disabled`]),f(t(oe),{disabled:!Q.value||!$.value},{content:h(()=>[e(p($.value),1)]),default:h(()=>[f(t(_),{variant:`solid`,"data-test-id":`consent-allow-button`,size:`large`,loading:V.value,disabled:Q.value,onClick:ce},{default:h(()=>[e(p(t(y).baseText(`oauth.consentView.allow`)),1)]),_:1},8,[`loading`,`disabled`])]),_:1},8,[`disabled`])],64))],2)],2)],2)):i(``,!0)],2)],2))}}),R=`_overlay_fngd8_1`,z=`_header_fngd8_31`,B=`_logo_fngd8_38`,V=`_connector_fngd8_58`,H=`_badge_fngd8_85`,U=`_content_fngd8_118`,W=`_success_fngd8_124`,G=`_footer_fngd8_153`,K=`_divided_fngd8_152`,q=j(L,[[`__cssModules`,{$style:{overlay:R,"consent-dialog":`_consent-dialog_fngd8_14`,header:z,logo:B,"brand-icon":`_brand-icon_fngd8_53`,connector:V,"connector-line":`_connector-line_fngd8_75`,"mcp-connector-dash":`_mcp-connector-dash_fngd8_1`,badge:H,"badge-spinner":`_badge-spinner_fngd8_102`,"mcp-connector-spin":`_mcp-connector-spin_fngd8_1`,content:U,success:W,"text-content":`_text-content_fngd8_133`,"permission-list":`_permission-list_fngd8_139`,footer:G,divided:K,"redirect-note":`_redirect-note_fngd8_171`,"redirect-note-title":`_redirect-note-title_fngd8_179`,"redirect-url":`_redirect-url_fngd8_180`,"footer-actions":`_footer-actions_fngd8_194`,"button-group":`_button-group_fngd8_203`,"trust-confirm":`_trust-confirm_fngd8_212`}}]]);export{q 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]=`41248f0f-94e3-43f5-b08b-b200ff42e695`,e._sentryDebugIdIdentifier=`sentry-dbid-41248f0f-94e3-43f5-b08b-b200ff42e695`)})()}catch{}import{Dd as e,Nd as t,Qd as n,Yd as r,Zf as i,wd as a}from"./vendor-BBKxcFox.js";import{rw as o}from"./app-
|
|
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]=`41248f0f-94e3-43f5-b08b-b200ff42e695`,e._sentryDebugIdIdentifier=`sentry-dbid-41248f0f-94e3-43f5-b08b-b200ff42e695`)})()}catch{}import{Dd as e,Nd as t,Qd as n,Yd as r,Zf as i,wd as a}from"./vendor-BBKxcFox.js";import{rw as o}from"./app-D5iNDcFq.js";var s=o(t({__name:`PageViewLayout`,props:{fullWidth:{type:Boolean,default:!1}},setup(t){return(o,s)=>(r(),e(`div`,{class:i([o.$style.wrapper,t.fullWidth?o.$style.fullWidth:``])},[n(o.$slots,`header`),a(`main`,{class:i(o.$style.content)},[n(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]=`10362a61-4f54-4b00-9584-fcbdd3d4b6e8`,e._sentryDebugIdIdentifier=`sentry-dbid-10362a61-4f54-4b00-9584-fcbdd3d4b6e8`)})()}catch{}import{Ad as e,Af as t,Cd as n,Dd as r,Nd as i,Yd as a,Zf as o,jd as s,np as c,uf as l}from"./vendor-BBKxcFox.js";import{Cf as u,GC as d,Ic as f,Ux as p,cw as m,rC as h,rw as g}from"./app-
|
|
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]=`10362a61-4f54-4b00-9584-fcbdd3d4b6e8`,e._sentryDebugIdIdentifier=`sentry-dbid-10362a61-4f54-4b00-9584-fcbdd3d4b6e8`)})()}catch{}import{Ad as e,Af as t,Cd as n,Dd as r,Nd as i,Yd as a,Zf as o,jd as s,np as c,uf as l}from"./vendor-BBKxcFox.js";import{Cf as u,GC as d,Ic as f,Ux as p,cw as m,rC as h,rw as g}from"./app-D5iNDcFq.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:g}){let _=i,v=g,y=m(),b=n(()=>_.icon?_.icon:_.isShared?{type:`icon`,value:`share`}:_.currentProject?.type===u.Personal?{type:`icon`,value:`user`}:_.currentProject?.name?p(_.currentProject.icon)?_.currentProject.icon:{type:`icon`,value:`layers`}:{type:`icon`,value:`house`}),x=n(()=>_.isShared?y.baseText(`projects.menu.shared`):_.currentProject?.type===u.Personal?y.baseText(`projects.menu.personal`):_.currentProject?.name),S=n(()=>_.isShared?`/shared`:_.currentProject?`/projects/${_.currentProject.id}`:`/home`),C=()=>{v(`projectHover`)},w=()=>{_.isDragging&&v(`projectDrop`)};return(n,u)=>(a(),r(`div`,{class:o({[n.$style[`home-project`]]:!0,[n.$style.dragging]:i.isDragging}),"data-test-id":`home-project`,"data-droppable":``,onMouseenter:C,onMouseup:u[0]||=e=>i.isDragging?w():null},[s(t(h),{to:S.value,class:o([n.$style[`project-link`]])},{default:l(()=>[s(f,{icon:b.value,"border-less":!0,size:`mini`,title:x.value},null,8,[`icon`,`title`]),s(t(d),{size:`medium`,color:`text-base`,class:o(n.$style[`project-label`]),title:x.value},{default:l(()=>[e(c(x.value),1)]),_:1},8,[`class`,`title`])]),_:1},8,[`to`,`class`])],34))}}),v=`_dragging_1a0u6_6`,y=g(_,[[`__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]=`3a3c5aed-2352-4f71-9fae-02ed9dc3baa4`,e._sentryDebugIdIdentifier=`sentry-dbid-3a3c5aed-2352-4f71-9fae-02ed9dc3baa4`)})()}catch{}import{Af as e,Bd as t,Nd as n,Sf as r,Td as i,Ud as a,Yd as o,Zf as s,cf as c,if as l}from"./vendor-BBKxcFox.js";import{Do as u,_f as d,cw as f,gf as p}from"./app-
|
|
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]=`3a3c5aed-2352-4f71-9fae-02ed9dc3baa4`,e._sentryDebugIdIdentifier=`sentry-dbid-3a3c5aed-2352-4f71-9fae-02ed9dc3baa4`)})()}catch{}import{Af as e,Bd as t,Nd as n,Sf as r,Td as i,Ud as a,Yd as o,Zf as s,cf as c,if as l}from"./vendor-BBKxcFox.js";import{Do as u,_f as d,cw as f,gf as p}from"./app-D5iNDcFq.js";var m=n({inheritAttrs:!1,__name:`ProjectFilter`,props:t({placeholder:{},size:{}},{modelValue:{required:!0},modelModifiers:{}}),emits:[`update:modelValue`],setup(t){let n=l(t,`modelValue`),m=f(),h=d(),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 c(n,e=>{if(!e){y.value=null;return}y.value?.id!==e.id&&(y.value=b(e.id))},{immediate:!0}),c(y,e=>{let t=e?{id:e.id}:null;t?.id!==n.value?.id&&(n.value=t)}),a(async()=>{h.globalProjectPermissions.list||await h.getAvailableProjects(),n.value&&!y.value&&(y.value=b(n.value.id))}),(n,r)=>(o(),i(u,{modelValue:y.value,"onUpdate:modelValue":r[0]||=e=>y.value=e,class:s(n.$attrs.class),"search-fn":e(g),"filter-fn":v,placeholder:t.placeholder,"empty-options-text":e(m).baseText(`projects.sharing.noMatchingProjects`),size:t.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]=`3a472e81-d431-4362-81a4-7b558e34cf2d`,e._sentryDebugIdIdentifier=`sentry-dbid-3a472e81-d431-4362-81a4-7b558e34cf2d`)})()}catch{}import{Ad as e,Af as t,Cd as n,Dd as r,Ed as i,Kd as a,Nd as o,Pu as s,Qd as c,Sf as l,Td as u,Tu as d,Vd as f,Wd as p,Yd as m,Zf as h,as as g,cf as _,is as v,jd as y,np as b,of as x,uf as S,wd as C,yd as w}from"./vendor-BBKxcFox.js";import{$C as T,B_ as ee,Cf as E,GC as D,Gi as O,H_ as te,Ic as ne,Ir as k,L_ as A,NC as j,Pp as re,QC as M,Rr as ie,Sp as ae,U_ as N,Ux as P,W_ as F,_f as I,b_ as L,cw as R,ew as z,gS as B,kh as oe,lC as se,m as ce,p as V,qC as le,rC as H,rw as U,vf as ue,xy as W,yf as de}from"./app-DVNMq1uL.js";import{t as G}from"./promotions.eventBus-Jcp-leEN.js";import{i as fe,t as K}from"./readyToRun.store-UKxYbyuO.js";import{t as pe}from"./useLatestFetch-BqC-A0c3.js";import{n as q}from"./useInstancePromotionConnection-D9P6vZjR.js";import{t as J}from"./promotions.api-8oLcRMjJ.js";function me(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 he(e,t){return e.map(e=>me(e,t))}var ge=o({__name:`ProjectTabs`,props:{showSettings:{type:Boolean,default:!1},showExecutions:{type:Boolean,default:!0},pageType:{default:`project`},additionalTabs:{default:()=>[]}},setup(e){let r=e,i=R(),a=v(),o=I(),s=ee(),c=l(``),d=n(()=>c.value?String(c.value):``),f=n(()=>Array.isArray(a?.params?.projectId)?a.params.projectId[0]:a?.params?.projectId),p=n(()=>o.currentProject?.type===E.Public),h=()=>f.value?{workflows:{name:A.PROJECTS_WORKFLOWS,params:{projectId:f.value}},credentials:{name:A.PROJECTS_CREDENTIALS,params:{projectId:f.value}},executions:{name:A.PROJECTS_EXECUTIONS,params:{projectId:f.value}},variables:{name:A.PROJECTS_VARIABLES,params:{projectId:f.value}}}:r.pageType===`shared`?{workflows:{name:A.SHARED_WORKFLOWS},credentials:{name:A.SHARED_CREDENTIALS},executions:{name:A.NOT_FOUND},variables:{name:A.NOT_FOUND}}:{workflows:{name:A.WORKFLOWS},credentials:{name:A.CREDENTIALS},executions:{name:A.EXECUTIONS},variables:{name:A.HOME_VARIABLES}},g=(e,t,n)=>({label:i.baseText(e),value:n[t].name,to:n[t]}),y=n(()=>{let e=h(),t=[g(`mainSidebar.workflows`,`workflows`,e),g(`mainSidebar.credentials`,`credentials`,e)];if(r.showExecutions&&t.push(g(`mainSidebar.executions`,`executions`,e)),(r.pageType===`overview`||r.pageType===`project`&&!p.value)&&t.push(g(`mainSidebar.variables`,`variables`,e)),r.additionalTabs?.length){let e=he(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:A.PROJECT_SETTINGS,to:{name:A.PROJECT_SETTINGS,params:{projectId:f.value}}}),t});_(()=>a?.name,()=>{c.value=a.name===A.PROJECTS_FOLDERS?A.PROJECTS_WORKFLOWS:a.name},{immediate:!0});function b(e){c.value===`variables`&&s.track(`User clicked project variables tab`,{project_id:f.value}),c.value=e}return(e,n)=>(m(),u(t(B),{"model-value":d.value,options:y.value,"data-test-id":`project-tabs`,"onUpdate:modelValue":b},null,8,[`model-value`,`options`]))}}),_e=U(o({__name:`ProjectCreateResource`,props:{actions:{},disabled:{type:Boolean},variant:{}},emits:[`action`],setup(e,{expose:n,emit:i}){let a=i,o=x(`actionToggleRef`);return n({openActionToggle:e=>o.value?.openActionToggle(e)}),(n,i)=>(m(),r(`div`,{class:h([n.$style.buttonGroup])},[c(n.$slots,`default`),y(t(j),{ref_key:`actionToggleRef`,ref:o,"data-test-id":`add-resource`,actions:e.actions,placement:`bottom-end`,teleported:!1,onAction:i[0]||=e=>a(`action`,e)},{default:S(()=>[y(t(M),{disabled:e.disabled,class:h([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`}}]]),ve=(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)+`...`},ye=o({__name:`ReadyToRunButton`,props:{hasActiveCallouts:{type:Boolean}},setup(r){let a=r,o=v(),s=R(),c=fe(),l=I(),d=de(),f=O(),p=K(),h=n(()=>W(l.currentProject?.scopes??l.personalProject?.scopes)),g=n(()=>p.getButtonVisibility(f.totalWorkflowCount>0,h.value.workflow.create,d.preferences.branchReadOnly)&&!a.hasActiveCallouts),_=async()=>{let e=c.isOverviewSubPage?l.personalProject?.id:o.params.projectId;try{await p.claimCreditsAndOpenWorkflow(`button`,o.params.folderId,e)}catch{}};return(n,r)=>g.value?(m(),u(t(T),{key:0,variant:`subtle`,"data-test-id":`ready-to-run-button`,icon:`zap`,loading:t(p).claimingCredits,disabled:t(d).preferences.branchReadOnly||t(p).claimingCredits,onClick:_},{default:S(()=>[e(b(t(s).baseText(`workflows.empty.readyToRun`)),1)]),_:1},8,[`loading`,`disabled`])):i(``,!0)}});function Y(e,t,n){let r=F(),{next:i}=pe(),a=l(0),o=l(!1);async function s(){let s=i(),c=e.value;if(a.value=0,o.value=!1,!(!n.value||!c))try{let{changes:e}=await J(r.restApiContext,c,t);s()&&(a.value=e.length)}catch{s()&&(o.value=!0)}}return _([e,n],s,{immediate:!0}),{count:a,failed:o,refetch:s}}var be=U(o({__name:`PromotionBanners`,setup(o){let s=R(),c=g(),l=ae(),u=te(),d=I(),{isEnabled:f}=ce(),v=n(()=>d.currentProject?.id),x=n(()=>d.currentProject?.type===E.Team),C=n(()=>W(d.currentProject?.scopes).project),w=n(()=>W(u.currentUser?.globalScopes).gitConnection),{connection:T,hasPromoteConfig:ee,hasApplyConfig:O,load:ne}=q(),k=n(()=>x.value&&f.value&&!!C.value.export&&!!w.value.list&&(!!w.value.push||!!w.value.pull)),j=n(()=>k.value&&ee.value&&!!w.value.push),re=n(()=>k.value&&O.value&&!!w.value.pull);_([k,v],async([e])=>{e&&await ne()},{immediate:!0});let{count:M,refetch:ie}=Y(v,`promote`,j),{count:N,failed:P,refetch:F}=Y(v,`apply`,re);async function L({projectId:e,project:t}){t&&d.currentProjectId===e&&d.setCurrentProject(t),await Promise.all([ie(),F()])}async function B({projectId:e}){d.currentProjectId===e&&await c.replace({name:A.HOMEPAGE})}a(()=>{G.on(`applied`,L),G.on(`projectRemoved`,B)}),p(()=>{G.off(`applied`,L),G.off(`projectRemoved`,B)});let oe=n(()=>M.value===1?s.baseText(`promotions.banner.singleChangeAvailable`):s.baseText(`promotions.banner.changesAvailable`,{interpolate:{count:String(M.value)}})),se=n(()=>P.value?s.baseText(`promotions.banner.incoming.error`):N.value===1?s.baseText(`promotions.banner.incoming.singleChangeAvailable`):s.baseText(`promotions.banner.incoming.changesAvailable`,{interpolate:{count:String(N.value)}}));function le(){v.value&&l.openModalWithData({name:V,data:{projectId:v.value,direction:`promote`}})}function U(){let e=T.value?.configs.apply;!v.value||!T.value||!e||l.openModalWithData({name:V,data:{projectId:v.value,direction:`apply`,apply:{connectionId:T.value.id,configId:e.id,branchName:e.settings.branchName}}})}return(n,a)=>(m(),r(`div`,null,[j.value&&t(M)>0?(m(),r(`div`,{key:0,class:h(n.$style.banner),"data-test-id":`promotion-banner`},[y(t(z),{icon:`upload`,size:`small`}),y(t(D),{size:`small`},{default:S(()=>[e(b(oe.value),1)]),_:1}),y(t(H),{size:`small`,"data-test-id":`promotion-banner-link`,onClick:le},{default:S(()=>[e(b(t(s).baseText(`promotions.banner.viewChanges`)),1)]),_:1})],2)):i(``,!0),re.value&&(t(N)>0||t(P))?(m(),r(`div`,{key:1,class:h(n.$style.banner),"data-test-id":`promotion-incoming-banner`},[y(t(z),{icon:t(P)?`triangle-alert`:`download`,size:`small`},null,8,[`icon`]),y(t(D),{size:`small`},{default:S(()=>[e(b(se.value),1)]),_:1}),y(t(H),{size:`small`,"data-test-id":`promotion-incoming-banner-link`,onClick:U},{default:S(()=>[e(b(t(s).baseText(`promotions.banner.viewChanges`)),1)]),_:1})],2)):i(``,!0)]))}}),[[`__cssModules`,{$style:{banner:`_banner_k33wq_1`}}]]),xe={style:{display:`flex`,gap:`var(--spacing--xs)`,"align-items":`center`}},Se=U(o({__name:`ProjectHeader`,props:{hasActiveCallouts:{type:Boolean},mainButton:{}},emits:[`createFolder`],setup(a,{emit:o}){let p=v(),_=g(),x=R(),O=I(),j=de(),F=N(),z=ae(),B=ee(),{createAgent:ce}=k(),V=te(),H=ue(),U=n(()=>O.currentProject?.id),G=n(()=>O.currentProject?.type===E.Team),K=n(()=>U.value?H.isFavorite(U.value,`project`):!1);async function pe(){U.value&&await H.toggleFavorite(U.value,`project`)}let q=fe(),J=a,me=o,he=n(()=>O.currentProject?.type===E.Personal?{type:`icon`,value:`user`}:O.currentProject?.name?P(O.currentProject.icon)?O.currentProject.icon:{type:`icon`,value:`layers`}:{type:`icon`,value:`house`}),Y=n(()=>O.currentProject??O.personalProject),{canCreate:Se}=ie(()=>Y.value?.id),Ce=n(()=>Y.value?.type===E.Personal),we=n(()=>O.currentProject?O.currentProject.type===E.Personal?x.baseText(`projects.menu.personal`):O.currentProject.name:q.isSharedSubPage?x.baseText(`projects.header.shared.title`):q.isOverviewSubPage?x.baseText(`projects.menu.overview`):Ce.value?x.baseText(`projects.menu.personal`):null),Te=n(()=>W(O.currentProject?.scopes).project),Ee=n(()=>W(O.currentProject?.scopes).projectVariable),De=n(()=>W(V.currentUser?.globalScopes).variable),Oe=n(()=>W(O.currentProject?.scopes).externalSecretsProvider),ke=n(()=>!!p?.params?.projectId&&(!!Te.value.update||!!Te.value.manageMembers||!!Oe.value.read)&&O.currentProject?.type===E.Team),Ae=n(()=>F.isFoldersFeatureEnabled&&[A.PROJECTS_WORKFLOWS,A.PROJECTS_FOLDERS].includes(p.name)),je=n(()=>q.isSharedSubPage?`shared`:q.isOverviewSubPage?`overview`:`project`),Me=n(()=>{let e=z.moduleTabs[je.value];return Object.keys(e).filter(F.isModuleActive).flatMap(t=>e[t])}),X={WORKFLOW:`workflow`,CREDENTIAL:`credential`,FOLDER:`folder`,DATA_TABLE:`dataTable`,VARIABLE:`variable`,AGENT:`agent`},Ne=n(()=>({value:X.WORKFLOW,label:x.baseText(`projects.header.create.workflow`),icon:j.preferences.branchReadOnly?`lock`:void 0,size:`mini`,disabled:j.preferences.branchReadOnly||!W(Y.value?.scopes).workflow.create})),Pe=n(()=>({value:X.CREDENTIAL,label:x.baseText(`projects.header.create.credential`),icon:j.preferences.branchReadOnly?`lock`:void 0,size:`mini`,disabled:j.preferences.branchReadOnly||!W(Y.value?.scopes).credential.create})),Fe=n(()=>({value:X.DATA_TABLE,label:x.baseText(`dataTable.add.button.label`),icon:j.preferences.branchReadOnly?`lock`:void 0,size:`mini`,disabled:j.preferences.branchReadOnly||!W(Y.value?.scopes)?.dataTable?.create})),Ie=n(()=>({value:X.VARIABLE,label:x.baseText(`variables.add.button.label`),icon:j.preferences.branchReadOnly?`lock`:void 0,size:`mini`,disabled:j.preferences.branchReadOnly||!F.isEnterpriseFeatureEnabled[L.Variables]||!Ee.value.create&&!De.value.create})),Le=n(()=>({value:X.AGENT,label:x.baseText(`projects.header.create.agent`),size:`mini`,disabled:!Se.value})),Z=n(()=>J.mainButton===X.AGENT&&!F.isModuleActive(`agents`)?X.WORKFLOW:J.mainButton??X.WORKFLOW),Re=n(()=>{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=n(()=>{let e=[];return Z.value!==X.WORKFLOW&&e.push({value:X.WORKFLOW,label:x.baseText(`projects.header.create.workflow`),disabled:j.preferences.branchReadOnly||!W(Y.value?.scopes).workflow.create}),Z.value!==X.CREDENTIAL&&e.push({value:X.CREDENTIAL,label:x.baseText(`projects.header.create.credential`),disabled:j.preferences.branchReadOnly||!W(Y.value?.scopes).credential.create}),Z.value!==X.VARIABLE&&F.isEnterpriseFeatureEnabled[L.Variables]&&e.push({value:X.VARIABLE,label:x.baseText(`variables.add.button.label`),disabled:j.preferences.branchReadOnly||!W(Y.value?.scopes).projectVariable.create}),Ae.value&&e.push({value:X.FOLDER,label:x.baseText(`projects.header.create.folder`),disabled:j.preferences.branchReadOnly||!W(Y.value?.scopes).folder.create}),F.isDataTableFeatureEnabled&&Z.value!==X.DATA_TABLE&&e.push({value:X.DATA_TABLE,label:x.baseText(`dataTable.add.button.label`),disabled:j.preferences.branchReadOnly||!W(Y.value?.scopes)?.dataTable?.create}),F.isModuleActive(`agents`)&&Z.value!==X.AGENT&&e.push({value:X.AGENT,label:x.baseText(`projects.header.create.agent`),disabled:!Se.value}),e}),Be=n(()=>!q.isOverviewSubPage&&!q.isSharedSubPage&&!Ce.value);function Ve(e){return[A.PROJECTS_CREDENTIALS,A.CREDENTIALS,A.SHARED_CREDENTIALS].includes(e)}function He(e){return[A.PROJECTS_WORKFLOWS,A.WORKFLOWS,A.SHARED_WORKFLOWS,A.PROJECTS_FOLDERS].includes(e)}function Ue(e){if(Ve(e))return`credentials_list`;if(He(e))return`workflow_list`}let We={[X.WORKFLOW]:e=>{_.push({name:A.NEW_WORKFLOW,query:{projectId:e,parentFolderId:p.params.folderId,uiContext:Ue(p.name?.toString()??``)}})},[X.CREDENTIAL]:e=>{_.push({name:A.PROJECTS_CREDENTIALS,params:{projectId:e,credentialId:`create`},query:{uiContext:Ue(p.name?.toString()??``)}})},[X.FOLDER]:()=>{me(`createFolder`)},[X.DATA_TABLE]:e=>{_.push({name:oe,params:{projectId:e,new:`new`}})},[X.VARIABLE]:()=>{z.openModalWithData({name:re,data:{mode:`new`}}),B.track(`User clicked header add variable button`)},[X.AGENT]:(e,t)=>{ce(t,e)}},Ge=n(()=>q.isSharedSubPage?x.baseText(`projects.header.shared.subtitle`):q.isOverviewSubPage?x.baseText(F.isDataTableFeatureEnabled?`projects.header.overview.subtitleWithDataTables`:`projects.header.overview.subtitle`):Ce.value?x.baseText(F.isDataTableFeatureEnabled?`projects.header.personal.subtitleWithDataTables`:`projects.header.personal.subtitle`):null),Q=n(()=>q.isProjectsSubPage?O.currentProject?.description:null),Ke=n(()=>K.value?`star-filled`:`star`),$=l(null),{width:qe}=d($),Je=l(null),{width:Ye}=d(Je),Xe=l(null);s($,()=>{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=n(()=>{if(!Q.value)return``;let e=qe.value-Ye.value,t=Xe.value??14;return ve(Q.value,e,t)}),Qe=(e,t)=>{let n=We[e];Y.value&&n(Y.value.id,t)};return(n,a)=>(m(),r(`div`,null,[C(`div`,{ref_key:`projectHeaderRef`,ref:$,class:h(n.$style.projectHeader)},[C(`div`,{class:h(n.$style.projectDetails)},[Be.value?(m(),u(ne,{key:0,icon:he.value,"border-less":!0,size:`medium`},null,8,[`icon`])):i(``,!0),C(`div`,{class:h(n.$style.headerActions)},[we.value?(m(),u(t(se),{key:0,bold:``,tag:`h2`,size:`xlarge`,"data-test-id":`project-name`},{default:S(()=>[e(b(we.value),1)]),_:1})):i(``,!0),Ge.value?(m(),u(t(D),{key:1,color:`text-light`,"data-test-id":`project-subtitle`},{default:S(()=>[e(b(Ge.value),1)]),_:1})):Q.value?(m(),r(`div`,{key:2,class:h(n.$style.projectDescriptionWrapper)},[y(t(D),{color:`text-light`,"data-test-id":`project-subtitle`},{default:S(()=>[e(b(Ze.value||Q.value),1)]),_:1}),Ze.value?(m(),r(`div`,{key:0,class:h(n.$style.tooltip)},[y(t(D),{color:`text-light`},{default:S(()=>[e(b(Q.value),1)]),_:1})],2)):i(``,!0)],2)):i(``,!0)],2),G.value?(m(),u(t(M),{key:1,class:h([n.$style.favoriteBtn,K.value&&n.$style.favoriteBtnActive]),icon:Ke.value,"aria-label":t(x).baseText(K.value?`favorites.remove`:`favorites.add`),variant:`ghost`,size:`medium`,"data-test-id":`project-favorite-btn`,onClick:w(pe,[`stop`])},null,8,[`class`,`icon`,`aria-label`])):i(``,!0)],2),t(p).name===t(A).PROJECT_SETTINGS?i(``,!0):(m(),r(`div`,{key:0,ref_key:`headerActionsRef`,ref:Je,class:h([n.$style.headerActions])},[y(t(le),{disabled:!t(j).preferences.branchReadOnly,content:t(x).baseText(`readOnlyEnv.cantAdd.any`)},{default:S(()=>[C(`div`,xe,[y(ye,{"has-active-callouts":J.hasActiveCallouts},null,8,[`has-active-callouts`]),y(_e,{"data-test-id":`add-resource-buttons`,actions:ze.value,disabled:t(j).preferences.branchReadOnly,onAction:a[1]||=e=>Qe(e,`dropdown`)},{default:S(()=>[y(t(T),f({"data-test-id":`add-resource-${Z.value}`},Re.value,{size:`medium`,onClick:a[0]||=e=>Qe(Z.value,`button`)}),null,16,[`data-test-id`])]),_:1},8,[`actions`,`disabled`])])]),_:1},8,[`disabled`,`content`])],2))],2),c(n.$slots,`default`),C(`div`,{class:h(n.$style.actions)},[y(ge,{"page-type":je.value,"show-executions":!t(q).isSharedSubPage,"show-settings":ke.value,"additional-tabs":Me.value},null,8,[`page-type`,`show-executions`,`show-settings`,`additional-tabs`])],2),y(be)]))}}),[[`__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{Se 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]=`3a472e81-d431-4362-81a4-7b558e34cf2d`,e._sentryDebugIdIdentifier=`sentry-dbid-3a472e81-d431-4362-81a4-7b558e34cf2d`)})()}catch{}import{Ad as e,Af as t,Cd as n,Dd as r,Ed as i,Kd as a,Nd as o,Pu as s,Qd as c,Sf as l,Td as u,Tu as d,Vd as f,Wd as p,Yd as m,Zf as h,as as g,cf as _,is as v,jd as y,np as b,of as x,uf as S,wd as C,yd as w}from"./vendor-BBKxcFox.js";import{$C as T,B_ as ee,Cf as E,GC as D,Gi as O,H_ as te,Ic as ne,Ir as k,L_ as A,NC as j,Pp as re,QC as M,Rr as ie,Sp as ae,U_ as N,Ux as P,W_ as F,_f as I,b_ as L,cw as R,ew as z,gS as B,kh as oe,lC as se,m as ce,p as V,qC as le,rC as H,rw as U,vf as ue,xy as W,yf as de}from"./app-D5iNDcFq.js";import{t as G}from"./promotions.eventBus-BuEzB9T1.js";import{i as fe,t as K}from"./readyToRun.store-Bd-_vQmA.js";import{t as pe}from"./useLatestFetch-BqC-A0c3.js";import{n as q}from"./useInstancePromotionConnection-DzotPtQb.js";import{t as J}from"./promotions.api-DaY0YinB.js";function me(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 he(e,t){return e.map(e=>me(e,t))}var ge=o({__name:`ProjectTabs`,props:{showSettings:{type:Boolean,default:!1},showExecutions:{type:Boolean,default:!0},pageType:{default:`project`},additionalTabs:{default:()=>[]}},setup(e){let r=e,i=R(),a=v(),o=I(),s=ee(),c=l(``),d=n(()=>c.value?String(c.value):``),f=n(()=>Array.isArray(a?.params?.projectId)?a.params.projectId[0]:a?.params?.projectId),p=n(()=>o.currentProject?.type===E.Public),h=()=>f.value?{workflows:{name:A.PROJECTS_WORKFLOWS,params:{projectId:f.value}},credentials:{name:A.PROJECTS_CREDENTIALS,params:{projectId:f.value}},executions:{name:A.PROJECTS_EXECUTIONS,params:{projectId:f.value}},variables:{name:A.PROJECTS_VARIABLES,params:{projectId:f.value}}}:r.pageType===`shared`?{workflows:{name:A.SHARED_WORKFLOWS},credentials:{name:A.SHARED_CREDENTIALS},executions:{name:A.NOT_FOUND},variables:{name:A.NOT_FOUND}}:{workflows:{name:A.WORKFLOWS},credentials:{name:A.CREDENTIALS},executions:{name:A.EXECUTIONS},variables:{name:A.HOME_VARIABLES}},g=(e,t,n)=>({label:i.baseText(e),value:n[t].name,to:n[t]}),y=n(()=>{let e=h(),t=[g(`mainSidebar.workflows`,`workflows`,e),g(`mainSidebar.credentials`,`credentials`,e)];if(r.showExecutions&&t.push(g(`mainSidebar.executions`,`executions`,e)),(r.pageType===`overview`||r.pageType===`project`&&!p.value)&&t.push(g(`mainSidebar.variables`,`variables`,e)),r.additionalTabs?.length){let e=he(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:A.PROJECT_SETTINGS,to:{name:A.PROJECT_SETTINGS,params:{projectId:f.value}}}),t});_(()=>a?.name,()=>{c.value=a.name===A.PROJECTS_FOLDERS?A.PROJECTS_WORKFLOWS:a.name},{immediate:!0});function b(e){c.value===`variables`&&s.track(`User clicked project variables tab`,{project_id:f.value}),c.value=e}return(e,n)=>(m(),u(t(B),{"model-value":d.value,options:y.value,"data-test-id":`project-tabs`,"onUpdate:modelValue":b},null,8,[`model-value`,`options`]))}}),_e=U(o({__name:`ProjectCreateResource`,props:{actions:{},disabled:{type:Boolean},variant:{}},emits:[`action`],setup(e,{expose:n,emit:i}){let a=i,o=x(`actionToggleRef`);return n({openActionToggle:e=>o.value?.openActionToggle(e)}),(n,i)=>(m(),r(`div`,{class:h([n.$style.buttonGroup])},[c(n.$slots,`default`),y(t(j),{ref_key:`actionToggleRef`,ref:o,"data-test-id":`add-resource`,actions:e.actions,placement:`bottom-end`,teleported:!1,onAction:i[0]||=e=>a(`action`,e)},{default:S(()=>[y(t(M),{disabled:e.disabled,class:h([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`}}]]),ve=(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)+`...`},ye=o({__name:`ReadyToRunButton`,props:{hasActiveCallouts:{type:Boolean}},setup(r){let a=r,o=v(),s=R(),c=fe(),l=I(),d=de(),f=O(),p=K(),h=n(()=>W(l.currentProject?.scopes??l.personalProject?.scopes)),g=n(()=>p.getButtonVisibility(f.totalWorkflowCount>0,h.value.workflow.create,d.preferences.branchReadOnly)&&!a.hasActiveCallouts),_=async()=>{let e=c.isOverviewSubPage?l.personalProject?.id:o.params.projectId;try{await p.claimCreditsAndOpenWorkflow(`button`,o.params.folderId,e)}catch{}};return(n,r)=>g.value?(m(),u(t(T),{key:0,variant:`subtle`,"data-test-id":`ready-to-run-button`,icon:`zap`,loading:t(p).claimingCredits,disabled:t(d).preferences.branchReadOnly||t(p).claimingCredits,onClick:_},{default:S(()=>[e(b(t(s).baseText(`workflows.empty.readyToRun`)),1)]),_:1},8,[`loading`,`disabled`])):i(``,!0)}});function Y(e,t,n){let r=F(),{next:i}=pe(),a=l(0),o=l(!1);async function s(){let s=i(),c=e.value;if(a.value=0,o.value=!1,!(!n.value||!c))try{let{changes:e}=await J(r.restApiContext,c,t);s()&&(a.value=e.length)}catch{s()&&(o.value=!0)}}return _([e,n],s,{immediate:!0}),{count:a,failed:o,refetch:s}}var be=U(o({__name:`PromotionBanners`,setup(o){let s=R(),c=g(),l=ae(),u=te(),d=I(),{isEnabled:f}=ce(),v=n(()=>d.currentProject?.id),x=n(()=>d.currentProject?.type===E.Team),C=n(()=>W(d.currentProject?.scopes).project),w=n(()=>W(u.currentUser?.globalScopes).gitConnection),{connection:T,hasPromoteConfig:ee,hasApplyConfig:O,load:ne}=q(),k=n(()=>x.value&&f.value&&!!C.value.export&&!!w.value.list&&(!!w.value.push||!!w.value.pull)),j=n(()=>k.value&&ee.value&&!!w.value.push),re=n(()=>k.value&&O.value&&!!w.value.pull);_([k,v],async([e])=>{e&&await ne()},{immediate:!0});let{count:M,refetch:ie}=Y(v,`promote`,j),{count:N,failed:P,refetch:F}=Y(v,`apply`,re);async function L({projectId:e,project:t}){t&&d.currentProjectId===e&&d.setCurrentProject(t),await Promise.all([ie(),F()])}async function B({projectId:e}){d.currentProjectId===e&&await c.replace({name:A.HOMEPAGE})}a(()=>{G.on(`applied`,L),G.on(`projectRemoved`,B)}),p(()=>{G.off(`applied`,L),G.off(`projectRemoved`,B)});let oe=n(()=>M.value===1?s.baseText(`promotions.banner.singleChangeAvailable`):s.baseText(`promotions.banner.changesAvailable`,{interpolate:{count:String(M.value)}})),se=n(()=>P.value?s.baseText(`promotions.banner.incoming.error`):N.value===1?s.baseText(`promotions.banner.incoming.singleChangeAvailable`):s.baseText(`promotions.banner.incoming.changesAvailable`,{interpolate:{count:String(N.value)}}));function le(){v.value&&l.openModalWithData({name:V,data:{projectId:v.value,direction:`promote`}})}function U(){let e=T.value?.configs.apply;!v.value||!T.value||!e||l.openModalWithData({name:V,data:{projectId:v.value,direction:`apply`,apply:{connectionId:T.value.id,configId:e.id,branchName:e.settings.branchName}}})}return(n,a)=>(m(),r(`div`,null,[j.value&&t(M)>0?(m(),r(`div`,{key:0,class:h(n.$style.banner),"data-test-id":`promotion-banner`},[y(t(z),{icon:`upload`,size:`small`}),y(t(D),{size:`small`},{default:S(()=>[e(b(oe.value),1)]),_:1}),y(t(H),{size:`small`,"data-test-id":`promotion-banner-link`,onClick:le},{default:S(()=>[e(b(t(s).baseText(`promotions.banner.viewChanges`)),1)]),_:1})],2)):i(``,!0),re.value&&(t(N)>0||t(P))?(m(),r(`div`,{key:1,class:h(n.$style.banner),"data-test-id":`promotion-incoming-banner`},[y(t(z),{icon:t(P)?`triangle-alert`:`download`,size:`small`},null,8,[`icon`]),y(t(D),{size:`small`},{default:S(()=>[e(b(se.value),1)]),_:1}),y(t(H),{size:`small`,"data-test-id":`promotion-incoming-banner-link`,onClick:U},{default:S(()=>[e(b(t(s).baseText(`promotions.banner.viewChanges`)),1)]),_:1})],2)):i(``,!0)]))}}),[[`__cssModules`,{$style:{banner:`_banner_k33wq_1`}}]]),xe={style:{display:`flex`,gap:`var(--spacing--xs)`,"align-items":`center`}},Se=U(o({__name:`ProjectHeader`,props:{hasActiveCallouts:{type:Boolean},mainButton:{}},emits:[`createFolder`],setup(a,{emit:o}){let p=v(),_=g(),x=R(),O=I(),j=de(),F=N(),z=ae(),B=ee(),{createAgent:ce}=k(),V=te(),H=ue(),U=n(()=>O.currentProject?.id),G=n(()=>O.currentProject?.type===E.Team),K=n(()=>U.value?H.isFavorite(U.value,`project`):!1);async function pe(){U.value&&await H.toggleFavorite(U.value,`project`)}let q=fe(),J=a,me=o,he=n(()=>O.currentProject?.type===E.Personal?{type:`icon`,value:`user`}:O.currentProject?.name?P(O.currentProject.icon)?O.currentProject.icon:{type:`icon`,value:`layers`}:{type:`icon`,value:`house`}),Y=n(()=>O.currentProject??O.personalProject),{canCreate:Se}=ie(()=>Y.value?.id),Ce=n(()=>Y.value?.type===E.Personal),we=n(()=>O.currentProject?O.currentProject.type===E.Personal?x.baseText(`projects.menu.personal`):O.currentProject.name:q.isSharedSubPage?x.baseText(`projects.header.shared.title`):q.isOverviewSubPage?x.baseText(`projects.menu.overview`):Ce.value?x.baseText(`projects.menu.personal`):null),Te=n(()=>W(O.currentProject?.scopes).project),Ee=n(()=>W(O.currentProject?.scopes).projectVariable),De=n(()=>W(V.currentUser?.globalScopes).variable),Oe=n(()=>W(O.currentProject?.scopes).externalSecretsProvider),ke=n(()=>!!p?.params?.projectId&&(!!Te.value.update||!!Te.value.manageMembers||!!Oe.value.read)&&O.currentProject?.type===E.Team),Ae=n(()=>F.isFoldersFeatureEnabled&&[A.PROJECTS_WORKFLOWS,A.PROJECTS_FOLDERS].includes(p.name)),je=n(()=>q.isSharedSubPage?`shared`:q.isOverviewSubPage?`overview`:`project`),Me=n(()=>{let e=z.moduleTabs[je.value];return Object.keys(e).filter(F.isModuleActive).flatMap(t=>e[t])}),X={WORKFLOW:`workflow`,CREDENTIAL:`credential`,FOLDER:`folder`,DATA_TABLE:`dataTable`,VARIABLE:`variable`,AGENT:`agent`},Ne=n(()=>({value:X.WORKFLOW,label:x.baseText(`projects.header.create.workflow`),icon:j.preferences.branchReadOnly?`lock`:void 0,size:`mini`,disabled:j.preferences.branchReadOnly||!W(Y.value?.scopes).workflow.create})),Pe=n(()=>({value:X.CREDENTIAL,label:x.baseText(`projects.header.create.credential`),icon:j.preferences.branchReadOnly?`lock`:void 0,size:`mini`,disabled:j.preferences.branchReadOnly||!W(Y.value?.scopes).credential.create})),Fe=n(()=>({value:X.DATA_TABLE,label:x.baseText(`dataTable.add.button.label`),icon:j.preferences.branchReadOnly?`lock`:void 0,size:`mini`,disabled:j.preferences.branchReadOnly||!W(Y.value?.scopes)?.dataTable?.create})),Ie=n(()=>({value:X.VARIABLE,label:x.baseText(`variables.add.button.label`),icon:j.preferences.branchReadOnly?`lock`:void 0,size:`mini`,disabled:j.preferences.branchReadOnly||!F.isEnterpriseFeatureEnabled[L.Variables]||!Ee.value.create&&!De.value.create})),Le=n(()=>({value:X.AGENT,label:x.baseText(`projects.header.create.agent`),size:`mini`,disabled:!Se.value})),Z=n(()=>J.mainButton===X.AGENT&&!F.isModuleActive(`agents`)?X.WORKFLOW:J.mainButton??X.WORKFLOW),Re=n(()=>{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=n(()=>{let e=[];return Z.value!==X.WORKFLOW&&e.push({value:X.WORKFLOW,label:x.baseText(`projects.header.create.workflow`),disabled:j.preferences.branchReadOnly||!W(Y.value?.scopes).workflow.create}),Z.value!==X.CREDENTIAL&&e.push({value:X.CREDENTIAL,label:x.baseText(`projects.header.create.credential`),disabled:j.preferences.branchReadOnly||!W(Y.value?.scopes).credential.create}),Z.value!==X.VARIABLE&&F.isEnterpriseFeatureEnabled[L.Variables]&&e.push({value:X.VARIABLE,label:x.baseText(`variables.add.button.label`),disabled:j.preferences.branchReadOnly||!W(Y.value?.scopes).projectVariable.create}),Ae.value&&e.push({value:X.FOLDER,label:x.baseText(`projects.header.create.folder`),disabled:j.preferences.branchReadOnly||!W(Y.value?.scopes).folder.create}),F.isDataTableFeatureEnabled&&Z.value!==X.DATA_TABLE&&e.push({value:X.DATA_TABLE,label:x.baseText(`dataTable.add.button.label`),disabled:j.preferences.branchReadOnly||!W(Y.value?.scopes)?.dataTable?.create}),F.isModuleActive(`agents`)&&Z.value!==X.AGENT&&e.push({value:X.AGENT,label:x.baseText(`projects.header.create.agent`),disabled:!Se.value}),e}),Be=n(()=>!q.isOverviewSubPage&&!q.isSharedSubPage&&!Ce.value);function Ve(e){return[A.PROJECTS_CREDENTIALS,A.CREDENTIALS,A.SHARED_CREDENTIALS].includes(e)}function He(e){return[A.PROJECTS_WORKFLOWS,A.WORKFLOWS,A.SHARED_WORKFLOWS,A.PROJECTS_FOLDERS].includes(e)}function Ue(e){if(Ve(e))return`credentials_list`;if(He(e))return`workflow_list`}let We={[X.WORKFLOW]:e=>{_.push({name:A.NEW_WORKFLOW,query:{projectId:e,parentFolderId:p.params.folderId,uiContext:Ue(p.name?.toString()??``)}})},[X.CREDENTIAL]:e=>{_.push({name:A.PROJECTS_CREDENTIALS,params:{projectId:e,credentialId:`create`},query:{uiContext:Ue(p.name?.toString()??``)}})},[X.FOLDER]:()=>{me(`createFolder`)},[X.DATA_TABLE]:e=>{_.push({name:oe,params:{projectId:e,new:`new`}})},[X.VARIABLE]:()=>{z.openModalWithData({name:re,data:{mode:`new`}}),B.track(`User clicked header add variable button`)},[X.AGENT]:(e,t)=>{ce(t,e)}},Ge=n(()=>q.isSharedSubPage?x.baseText(`projects.header.shared.subtitle`):q.isOverviewSubPage?x.baseText(F.isDataTableFeatureEnabled?`projects.header.overview.subtitleWithDataTables`:`projects.header.overview.subtitle`):Ce.value?x.baseText(F.isDataTableFeatureEnabled?`projects.header.personal.subtitleWithDataTables`:`projects.header.personal.subtitle`):null),Q=n(()=>q.isProjectsSubPage?O.currentProject?.description:null),Ke=n(()=>K.value?`star-filled`:`star`),$=l(null),{width:qe}=d($),Je=l(null),{width:Ye}=d(Je),Xe=l(null);s($,()=>{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=n(()=>{if(!Q.value)return``;let e=qe.value-Ye.value,t=Xe.value??14;return ve(Q.value,e,t)}),Qe=(e,t)=>{let n=We[e];Y.value&&n(Y.value.id,t)};return(n,a)=>(m(),r(`div`,null,[C(`div`,{ref_key:`projectHeaderRef`,ref:$,class:h(n.$style.projectHeader)},[C(`div`,{class:h(n.$style.projectDetails)},[Be.value?(m(),u(ne,{key:0,icon:he.value,"border-less":!0,size:`medium`},null,8,[`icon`])):i(``,!0),C(`div`,{class:h(n.$style.headerActions)},[we.value?(m(),u(t(se),{key:0,bold:``,tag:`h2`,size:`xlarge`,"data-test-id":`project-name`},{default:S(()=>[e(b(we.value),1)]),_:1})):i(``,!0),Ge.value?(m(),u(t(D),{key:1,color:`text-light`,"data-test-id":`project-subtitle`},{default:S(()=>[e(b(Ge.value),1)]),_:1})):Q.value?(m(),r(`div`,{key:2,class:h(n.$style.projectDescriptionWrapper)},[y(t(D),{color:`text-light`,"data-test-id":`project-subtitle`},{default:S(()=>[e(b(Ze.value||Q.value),1)]),_:1}),Ze.value?(m(),r(`div`,{key:0,class:h(n.$style.tooltip)},[y(t(D),{color:`text-light`},{default:S(()=>[e(b(Q.value),1)]),_:1})],2)):i(``,!0)],2)):i(``,!0)],2),G.value?(m(),u(t(M),{key:1,class:h([n.$style.favoriteBtn,K.value&&n.$style.favoriteBtnActive]),icon:Ke.value,"aria-label":t(x).baseText(K.value?`favorites.remove`:`favorites.add`),variant:`ghost`,size:`medium`,"data-test-id":`project-favorite-btn`,onClick:w(pe,[`stop`])},null,8,[`class`,`icon`,`aria-label`])):i(``,!0)],2),t(p).name===t(A).PROJECT_SETTINGS?i(``,!0):(m(),r(`div`,{key:0,ref_key:`headerActionsRef`,ref:Je,class:h([n.$style.headerActions])},[y(t(le),{disabled:!t(j).preferences.branchReadOnly,content:t(x).baseText(`readOnlyEnv.cantAdd.any`)},{default:S(()=>[C(`div`,xe,[y(ye,{"has-active-callouts":J.hasActiveCallouts},null,8,[`has-active-callouts`]),y(_e,{"data-test-id":`add-resource-buttons`,actions:ze.value,disabled:t(j).preferences.branchReadOnly,onAction:a[1]||=e=>Qe(e,`dropdown`)},{default:S(()=>[y(t(T),f({"data-test-id":`add-resource-${Z.value}`},Re.value,{size:`medium`,onClick:a[0]||=e=>Qe(Z.value,`button`)}),null,16,[`data-test-id`])]),_:1},8,[`actions`,`disabled`])])]),_:1},8,[`disabled`,`content`])],2))],2),c(n.$slots,`default`),C(`div`,{class:h(n.$style.actions)},[y(ge,{"page-type":je.value,"show-executions":!t(q).isSharedSubPage,"show-settings":ke.value,"additional-tabs":Me.value},null,8,[`page-type`,`show-executions`,`show-settings`,`additional-tabs`])],2),y(be)]))}}),[[`__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{Se 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]=`5b3d8ce2-9d85-4ebc-874c-be3d82b9c81c`,e._sentryDebugIdIdentifier=`sentry-dbid-5b3d8ce2-9d85-4ebc-874c-be3d82b9c81c`)})()}catch{}import{o as e}from"./rolldown-runtime-BobR2NKB.js";import{Ad as t,Af as n,Cd as r,Dd as i,Ed as a,Jo as o,Nd as s,Sf as c,Td as l,Tf as u,Yd as d,Zd as f,Zf as p,Zo as m,_d as h,_f as g,as as _,bd as v,cf as y,df as b,is as x,jd as S,np as C,uf as w,vu as T,wd as E}from"./vendor-BBKxcFox.js";import{$C as D,B_ as O,Eo as k,GC as A,Gx as j,I_ as M,Jx as N,Kx as P,L_ as F,Lx as I,U_ as L,cw as R,dC as z,dg as ee,gS as te,iS as B,lC as ne,nC as re,qC as ie,qx as V,rw as H,wy as U,zC as W}from"./app-DVNMq1uL.js";import{a as G,n as K,t as ae}from"./projectRoleScopes-CMVTXcv3.js";import{n as oe,t as se}from"./useRoleEditorForm-Dvo64W6Y.js";var q=e(o(),1),J=H(s({__name:`RoleProjectMembersModal`,props:{open:{type:Boolean},roleSlug:{},projectId:{},projectName:{}},emits:[`update:open`],setup(e,{emit:a}){let o=e,s=a,u=k(),m=R(),h=_(),g=c({members:[]}),b=c(!1);y(()=>o.open,async e=>{if(e){b.value=!0;try{g.value=await u.fetchRoleProjectMembers(o.roleSlug,o.projectId)}finally{b.value=!1}}},{immediate:!0});let x=r(()=>{let e=[...u.roles.global,...u.roles.project,...u.roles.credential,...u.roles.workflow];return new Map(e.map(e=>[e.slug,e.displayName]))});function T(e){return x.value.get(e)??e}function O(){s(`update:open`,!1),h.push({name:F.PROJECT_SETTINGS,params:{projectId:o.projectId}})}return(r,a)=>(d(),l(n(P),{open:e.open,size:`medium`,"onUpdate:open":a[1]||=e=>s(`update:open`,e)},{default:w(()=>[S(n(N),null,{default:w(()=>[S(n(V),null,{default:w(()=>[t(C(n(m).baseText(`projectRoles.assignments.membersModal.title`,{interpolate:{projectName:e.projectName}})),1)]),_:1})]),_:1}),E(`div`,{class:p(r.$style.content)},[b.value?(d(),l(n(W),{key:0,rows:3})):(d(),i(`div`,{key:1,class:p(r.$style.memberList)},[(d(!0),i(v,null,f(g.value.members,e=>(d(),i(`div`,{key:e.userId,class:p(r.$style.memberRow)},[S(n(B),{"first-name":e.firstName,"last-name":e.lastName,email:e.email},null,8,[`first-name`,`last-name`,`email`]),S(n(A),{class:p(r.$style.roleLabel),color:`text-light`,size:`small`},{default:w(()=>[t(C(T(e.role)),1)]),_:2},1032,[`class`])],2))),128))],2))],2),S(n(j),null,{default:w(()=>[S(n(D),{variant:`subtle`,onClick:a[0]||=e=>s(`update:open`,!1)},{default:w(()=>[t(C(n(m).baseText(`projectRoles.assignments.membersModal.cancel`)),1)]),_:1}),S(n(D),{onClick:O},{default:w(()=>[t(C(n(m).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`}}]]),Y=[`onClick`],ce=H(s({__name:`RoleAssignmentsTab`,props:{roleSlug:{}},setup(e){let o=e,s=k(),u=R(),{state:h,isLoading:g,execute:_}=T(async()=>await s.fetchRoleAssignments(o.roleSlug),{projects:[],totalProjects:0});y(()=>o.roleSlug,async()=>await _());let b=c(!1),x=c(null),D=c(`memberCount`),O=c(`desc`),j=r(()=>h.value.totalProjects-h.value.projects.length),M=r(()=>[...h.value.projects].sort((e,t)=>{let n=0;return n=D.value===`projectName`?e.projectName.localeCompare(t.projectName):D.value===`memberCount`?e.memberCount-t.memberCount:(e.lastAssigned??``).localeCompare(t.lastAssigned??``),O.value===`desc`?-n:n}));function N(e){D.value===e?O.value=O.value===`asc`?`desc`:`asc`:(D.value=e,O.value=e===`memberCount`?`desc`:`asc`)}function P(e){return D.value===e?O.value===`asc`?` ↑`:` ↓`:``}function I(e){x.value=e,b.value=!0}function L(e){return e?(0,q.default)(new Date(e),`mmm dS, yyyy`):`—`}return(r,o)=>(d(),i(`div`,{class:p(r.$style.container)},[n(g)?(d(),l(n(W),{key:0,rows:3})):n(h).projects.length===0?(d(),i(`div`,{key:1,class:p(r.$style.emptyState)},[S(n(A),{color:`text-light`},{default:w(()=>[t(C(j.value>0?n(u).baseText(`projectRoles.assignments.restrictedEmptyState`,{adjustToNumber:j.value,interpolate:{count:j.value}}):n(u).baseText(`projectRoles.assignments.emptyState`)),1)]),_:1})],2)):(d(),i(v,{key:2},[j.value>0?(d(),l(n(A),{key:0,class:p(r.$style.restrictedNotice),color:`text-light`,size:`small`,tag:`p`},{default:w(()=>[t(C(n(u).baseText(`projectRoles.assignments.restrictedNotice`,{interpolate:{count:n(h).projects.length,total:n(h).totalProjects}})),1)]),_:1},8,[`class`])):a(``,!0),S(n(z),null,{default:w(()=>[E(`thead`,null,[E(`tr`,null,[E(`th`,{class:p(r.$style.sortableHeader),onClick:o[0]||=e=>N(`projectName`)},C(n(u).baseText(`projectRoles.assignments.projectColumn`))+C(P(`projectName`)),3),E(`th`,{class:p([r.$style.alignRight,r.$style.sortableHeader]),onClick:o[1]||=e=>N(`memberCount`)},C(n(u).baseText(`projectRoles.assignments.membersColumn`))+C(P(`memberCount`)),3),E(`th`,{class:p(r.$style.sortableHeader),onClick:o[2]||=e=>N(`lastAssigned`)},C(n(u).baseText(`projectRoles.assignments.lastAssignedColumn`))+C(P(`lastAssigned`)),3)])]),E(`tbody`,null,[(d(!0),i(v,null,f(M.value,e=>(d(),i(`tr`,{key:e.projectId},[E(`td`,null,[S(n(m),{to:{name:n(F).PROJECTS_WORKFLOWS,params:{projectId:e.projectId}},class:p(r.$style.projectLink)},{default:w(()=>[t(C(e.projectName),1)]),_:2},1032,[`to`,`class`])]),E(`td`,{class:p(r.$style.alignRight)},[E(`button`,{class:p(r.$style.memberCountButton),onClick:t=>I(e)},C(e.memberCount),11,Y)],2),E(`td`,null,C(L(e.lastAssigned)),1)]))),128))])]),_:1})],64)),x.value?(d(),l(J,{key:3,open:b.value,"role-slug":e.roleSlug,"project-id":x.value.projectId,"project-name":x.value.projectName,"onUpdate:open":o[3]||=e=>b.value=e},null,8,[`open`,`role-slug`,`project-id`,`project-name`])):a(``,!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`}}]]),le={key:0,class:`mb-l`},ue={style:{flex:`1`}},de={key:1,class:`mt-xl`},X=H(s({__name:`ProjectRoleView`,props:{roleSlug:{}},setup(e){let o=k(),s=x(),c=_(),{showError:m,showMessage:y}=M(),T=R(),j=I(),N=O(),P=L(),z=e,{activeTab:B,tabOptions:V,form:H,isLoading:q,initialState:J,isReadOnly:Y,isNew:X,showEditButtons:fe,showCreateButton:pe,hasUnsavedChanges:me,displayNameValidationRules:he,submitted:ge,validateOnSubmit:_e,resetForm:ve}=se({roleSlug:()=>z.roleSlug,viewRoute:F.PROJECT_ROLE_VIEW,defaultScopes:()=>structuredClone(u(o.processedProjectRoles.find(e=>e.slug===`project:viewer`)?.scopes??[])),filterScopes:e=>e.filter(e=>U.project.has(e)),fetchError:`Error fetching role`}),Z=r(()=>s.query.from===F.PROJECT_SETTINGS),ye=r(()=>Z.value?T.baseText(`projectRoles.backToProjectSettings`):T.baseText(`projectRoles.backToProjectRoles`)),be=()=>{Z.value?c.back():c.push({name:F.PROJECT_ROLES_SETTINGS})},xe=r(()=>P.moduleSettings[`external-secrets`]?.roleBasedAccess?K:K.filter(e=>e!==`externalSecretsProvider`&&e!==`externalSecret`)),Se=ae;function Q(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`)){Q(e.replace(`:read`,`:listProject`));return}if(e.endsWith(`:read`)&&Q(e.replace(`:read`,`:list`)),e===`workflow:execute`&&n&&(H.value.scopes.includes(`workflow:read`)||Q(`workflow:read`)),e===`workflow:read`&&!n&&H.value.scopes.includes(`workflow:execute`)&&Q(`workflow:execute`),e===`workflow:read`&&(n&&!H.value.scopes.includes(`execution:read`)&&Q(`execution:read`),n||(H.value.scopes.includes(`execution:read`)&&Q(`execution:read`),H.value.scopes.includes(`execution:delete`)&&Q(`execution:delete`))),e===`execution:delete`&&n&&!H.value.scopes.includes(`workflow:read`)&&Q(`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 Ce(){if(_e(`projectRoles.action.create.error`))try{let e=await o.createRole({...H.value,scopes:G(H.value.scopes),description:H.value.description??void 0,roleType:`project`});return o.fetchRoles(),N.track(`User successfully created new role`,{role_id:e.slug,role_name:e.displayName,role_type:`project`,permissions:e.scopes}),c.replace({name:F.PROJECT_ROLE_SETTINGS,params:{roleSlug:e.slug}}),y({type:`success`,message:T.baseText(`projectRoles.action.create.success`)}),J.value=structuredClone(e),e}catch(e){m(e,T.baseText(`projectRoles.action.create.error`));return}}async function we(e){return e?await j.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`)})===ee:!0}async function Te(e){if(await we(J?.value?.usedByUsers))try{let t=await o.updateRole(e,{...H.value,scopes:G(H.value.scopes),description:H.value.description??void 0});return o.fetchRoles(),N.track(`User updated role`,{role_id:t.slug,role_name:t.displayName,role_type:`project`,permissions_from:J.value?.scopes,permissions_to:t.scopes}),J.value=structuredClone(t),y({type:`success`,message:T.baseText(`projectRoles.action.update.success`)}),t}catch(e){m(e,T.baseText(`projectRoles.action.update.error`));return}}async function Ee(){z.roleSlug?await Te(z.roleSlug):await Ce()}function $(e){let t=o.processedProjectRoles.find(t=>t.slug===e);t&&(H.value.scopes=structuredClone(u(t.scopes)).filter(e=>U.project.has(e)))}async function De(){if(J?.value&&await j.confirm(T.baseText(`roles.action.delete.text`,{interpolate:{roleName:J.value.displayName}}),T.baseText(`roles.action.delete.title`,{interpolate:{roleName:J.value.displayName}}),{type:`warning`,confirmButtonText:T.baseText(`roles.action.delete`),cancelButtonText:T.baseText(`roles.action.cancel`)})===`confirm`){N.track(`User clicked delete role`,{role_id:J.value.slug,role_name:J.value.displayName,permissions:J.value?.scopes});try{await o.deleteRole(J.value.slug);let e=o.roles.project.findIndex(e=>e.slug===J.value?.slug);e!==-1&&o.roles.project.splice(e,1),y({title:T.baseText(`roles.action.delete.success`),type:`success`}),N.track(`User successfully deleted role`,{role_id:J.value.slug,role_name:J.value.displayName,permissions:J.value?.scopes}),c.back()}catch(e){m(e,T.baseText(`roles.action.delete.error`));return}}}let Oe=r(()=>({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(r,o)=>(d(),l(oe,{"display-name":n(H).displayName,"onUpdate:displayName":o[5]||=e=>n(H).displayName=e,description:n(H).description,"onUpdate:description":o[6]||=e=>n(H).description=e,"is-new":n(X),"is-read-only":n(Y),"show-edit-buttons":n(fe),"show-create-button":n(pe),"has-unsaved-changes":n(me),"back-button-text":ye.value,labels:Oe.value,"display-name-validation-rules":n(he),"show-display-name-error":n(ge),onBack:be,onSave:Ee,onDiscard:o[7]||=e=>n(ve)(n(J)),onCreate:Ee},{default:w(()=>[e.roleSlug?(d(),i(`div`,le,[S(n(te),{modelValue:n(B),"onUpdate:modelValue":o[0]||=e=>g(B)?B.value=e:null,options:n(V)},null,8,[`modelValue`,`options`])])):a(``,!0),b(E(`div`,null,[n(Y)?a(``,!0):(d(),i(v,{key:0},[S(n(A),{color:`text-light`,class:`mb-2xs`,tag:`p`},{default:w(()=>[t(C(n(T).baseText(`projectRoles.preset`)),1)]),_:1}),E(`div`,{class:p([`mb-s`,r.$style.presetsContainer])},[S(n(D),{variant:`subtle`,onClick:o[1]||=e=>$(`project:admin`)},{default:w(()=>[t(C(n(T).baseText(`projectRoles.admin`)),1)]),_:1}),S(n(D),{variant:`subtle`,onClick:o[2]||=e=>$(`project:editor`)},{default:w(()=>[t(C(n(T).baseText(`projectRoles.editor`)),1)]),_:1}),S(n(D),{variant:`subtle`,onClick:o[3]||=e=>$(`project:viewer`)},{default:w(()=>[t(C(n(T).baseText(`projectRoles.viewer`)),1)]),_:1})],2)],64)),E(`div`,{class:p(r.$style.cardContainer)},[(d(!0),i(v,null,f(xe.value,e=>(d(),i(`div`,{key:e,class:p([`mb-s mt-s`,r.$style.card])},[E(`div`,{class:p(r.$style.cardTitle)},C(n(T).baseText(`projectRoles.type.${e}`)),3),E(`div`,ue,[n(q)?(d(),l(n(W),{key:0,rows:n(Se)[e].length,"shrink-last":!1},null,8,[`rows`])):(d(!0),i(v,{key:1},f(n(Se)[e],e=>(d(),i(`div`,{key:e,class:`mb-2xs`},[S(n(ie),{content:n(T).baseText(`projectRoles.${e}.tooltip`),placement:`right`,enterable:!1,"show-after":250},{default:w(()=>[S(n(re),{"data-test-id":`scope-checkbox-${e}`,"model-value":n(H).scopes.includes(e),label:n(T).baseText(`projectRoles.${e}`),"validate-on-blur":``,type:`checkbox`,class:p(r.$style.checkbox),disabled:n(Y)||e===`execution:read`,"onUpdate:modelValue":()=>Q(e)},null,8,[`data-test-id`,`model-value`,`label`,`class`,`disabled`,`onUpdate:modelValue`])]),_:2},1032,[`content`])]))),128))])],2))),128))],2),e.roleSlug&&!n(Y)?(d(),i(`div`,de,[S(n(ne),{tag:`h2`,class:`mb-2xs`,size:`large`},{default:w(()=>[t(C(n(T).baseText(`projectRoles.dangerZone`)),1)]),_:1}),S(n(A),{tag:`p`,class:`mb-s`},{default:w(()=>[n(J)?.usedByProjects?(d(),i(v,{key:0},[t(C(n(T).baseText(`projectRoles.action.delete.useWarning.before`))+` `,1),E(`a`,{class:p(r.$style.assignmentsLink),onClick:o[4]||=e=>B.value=`assignments`},C(n(T).baseText(`projectRoles.action.delete.useWarning.linkText`,{adjustToNumber:n(J).usedByProjects,interpolate:{count:n(J).usedByProjects}})),3),t(`. `+C(n(T).baseText(`projectRoles.action.delete.useWarning.after`)),1)],64)):(d(),i(v,{key:1},[t(C(n(T).baseText(`projectRoles.action.delete.warning`)),1)],64))]),_:1}),S(n(D),{variant:`destructive`,disabled:!!n(J)?.usedByProjects,onClick:De},{default:w(()=>[t(C(n(T).baseText(`projectRoles.action.delete.button`)),1)]),_:1},8,[`disabled`])])):a(``,!0)],512),[[h,!e.roleSlug||n(B)===`permissions`]]),e.roleSlug&&n(B)===`assignments`?(d(),l(ce,{key:1,"role-slug":e.roleSlug},null,8,[`role-slug`])):a(``,!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{X 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]=`5b3d8ce2-9d85-4ebc-874c-be3d82b9c81c`,e._sentryDebugIdIdentifier=`sentry-dbid-5b3d8ce2-9d85-4ebc-874c-be3d82b9c81c`)})()}catch{}import{o as e}from"./rolldown-runtime-BobR2NKB.js";import{Ad as t,Af as n,Cd as r,Dd as i,Ed as a,Jo as o,Nd as s,Sf as c,Td as l,Tf as u,Yd as d,Zd as f,Zf as p,Zo as m,_d as h,_f as g,as as _,bd as v,cf as y,df as b,is as x,jd as S,np as C,uf as w,vu as T,wd as E}from"./vendor-BBKxcFox.js";import{$C as D,B_ as O,Eo as k,GC as A,Gx as j,I_ as M,Jx as N,Kx as P,L_ as F,Lx as I,U_ as L,cw as R,dC as z,dg as ee,gS as te,iS as B,lC as ne,nC as re,qC as ie,qx as V,rw as H,wy as U,zC as W}from"./app-D5iNDcFq.js";import{a as G,n as K,t as ae}from"./projectRoleScopes-Div4LfSO.js";import{n as oe,t as se}from"./useRoleEditorForm-BxGy9qIa.js";var q=e(o(),1),J=H(s({__name:`RoleProjectMembersModal`,props:{open:{type:Boolean},roleSlug:{},projectId:{},projectName:{}},emits:[`update:open`],setup(e,{emit:a}){let o=e,s=a,u=k(),m=R(),h=_(),g=c({members:[]}),b=c(!1);y(()=>o.open,async e=>{if(e){b.value=!0;try{g.value=await u.fetchRoleProjectMembers(o.roleSlug,o.projectId)}finally{b.value=!1}}},{immediate:!0});let x=r(()=>{let e=[...u.roles.global,...u.roles.project,...u.roles.credential,...u.roles.workflow];return new Map(e.map(e=>[e.slug,e.displayName]))});function T(e){return x.value.get(e)??e}function O(){s(`update:open`,!1),h.push({name:F.PROJECT_SETTINGS,params:{projectId:o.projectId}})}return(r,a)=>(d(),l(n(P),{open:e.open,size:`medium`,"onUpdate:open":a[1]||=e=>s(`update:open`,e)},{default:w(()=>[S(n(N),null,{default:w(()=>[S(n(V),null,{default:w(()=>[t(C(n(m).baseText(`projectRoles.assignments.membersModal.title`,{interpolate:{projectName:e.projectName}})),1)]),_:1})]),_:1}),E(`div`,{class:p(r.$style.content)},[b.value?(d(),l(n(W),{key:0,rows:3})):(d(),i(`div`,{key:1,class:p(r.$style.memberList)},[(d(!0),i(v,null,f(g.value.members,e=>(d(),i(`div`,{key:e.userId,class:p(r.$style.memberRow)},[S(n(B),{"first-name":e.firstName,"last-name":e.lastName,email:e.email},null,8,[`first-name`,`last-name`,`email`]),S(n(A),{class:p(r.$style.roleLabel),color:`text-light`,size:`small`},{default:w(()=>[t(C(T(e.role)),1)]),_:2},1032,[`class`])],2))),128))],2))],2),S(n(j),null,{default:w(()=>[S(n(D),{variant:`subtle`,onClick:a[0]||=e=>s(`update:open`,!1)},{default:w(()=>[t(C(n(m).baseText(`projectRoles.assignments.membersModal.cancel`)),1)]),_:1}),S(n(D),{onClick:O},{default:w(()=>[t(C(n(m).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`}}]]),Y=[`onClick`],ce=H(s({__name:`RoleAssignmentsTab`,props:{roleSlug:{}},setup(e){let o=e,s=k(),u=R(),{state:h,isLoading:g,execute:_}=T(async()=>await s.fetchRoleAssignments(o.roleSlug),{projects:[],totalProjects:0});y(()=>o.roleSlug,async()=>await _());let b=c(!1),x=c(null),D=c(`memberCount`),O=c(`desc`),j=r(()=>h.value.totalProjects-h.value.projects.length),M=r(()=>[...h.value.projects].sort((e,t)=>{let n=0;return n=D.value===`projectName`?e.projectName.localeCompare(t.projectName):D.value===`memberCount`?e.memberCount-t.memberCount:(e.lastAssigned??``).localeCompare(t.lastAssigned??``),O.value===`desc`?-n:n}));function N(e){D.value===e?O.value=O.value===`asc`?`desc`:`asc`:(D.value=e,O.value=e===`memberCount`?`desc`:`asc`)}function P(e){return D.value===e?O.value===`asc`?` ↑`:` ↓`:``}function I(e){x.value=e,b.value=!0}function L(e){return e?(0,q.default)(new Date(e),`mmm dS, yyyy`):`—`}return(r,o)=>(d(),i(`div`,{class:p(r.$style.container)},[n(g)?(d(),l(n(W),{key:0,rows:3})):n(h).projects.length===0?(d(),i(`div`,{key:1,class:p(r.$style.emptyState)},[S(n(A),{color:`text-light`},{default:w(()=>[t(C(j.value>0?n(u).baseText(`projectRoles.assignments.restrictedEmptyState`,{adjustToNumber:j.value,interpolate:{count:j.value}}):n(u).baseText(`projectRoles.assignments.emptyState`)),1)]),_:1})],2)):(d(),i(v,{key:2},[j.value>0?(d(),l(n(A),{key:0,class:p(r.$style.restrictedNotice),color:`text-light`,size:`small`,tag:`p`},{default:w(()=>[t(C(n(u).baseText(`projectRoles.assignments.restrictedNotice`,{interpolate:{count:n(h).projects.length,total:n(h).totalProjects}})),1)]),_:1},8,[`class`])):a(``,!0),S(n(z),null,{default:w(()=>[E(`thead`,null,[E(`tr`,null,[E(`th`,{class:p(r.$style.sortableHeader),onClick:o[0]||=e=>N(`projectName`)},C(n(u).baseText(`projectRoles.assignments.projectColumn`))+C(P(`projectName`)),3),E(`th`,{class:p([r.$style.alignRight,r.$style.sortableHeader]),onClick:o[1]||=e=>N(`memberCount`)},C(n(u).baseText(`projectRoles.assignments.membersColumn`))+C(P(`memberCount`)),3),E(`th`,{class:p(r.$style.sortableHeader),onClick:o[2]||=e=>N(`lastAssigned`)},C(n(u).baseText(`projectRoles.assignments.lastAssignedColumn`))+C(P(`lastAssigned`)),3)])]),E(`tbody`,null,[(d(!0),i(v,null,f(M.value,e=>(d(),i(`tr`,{key:e.projectId},[E(`td`,null,[S(n(m),{to:{name:n(F).PROJECTS_WORKFLOWS,params:{projectId:e.projectId}},class:p(r.$style.projectLink)},{default:w(()=>[t(C(e.projectName),1)]),_:2},1032,[`to`,`class`])]),E(`td`,{class:p(r.$style.alignRight)},[E(`button`,{class:p(r.$style.memberCountButton),onClick:t=>I(e)},C(e.memberCount),11,Y)],2),E(`td`,null,C(L(e.lastAssigned)),1)]))),128))])]),_:1})],64)),x.value?(d(),l(J,{key:3,open:b.value,"role-slug":e.roleSlug,"project-id":x.value.projectId,"project-name":x.value.projectName,"onUpdate:open":o[3]||=e=>b.value=e},null,8,[`open`,`role-slug`,`project-id`,`project-name`])):a(``,!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`}}]]),le={key:0,class:`mb-l`},ue={style:{flex:`1`}},de={key:1,class:`mt-xl`},X=H(s({__name:`ProjectRoleView`,props:{roleSlug:{}},setup(e){let o=k(),s=x(),c=_(),{showError:m,showMessage:y}=M(),T=R(),j=I(),N=O(),P=L(),z=e,{activeTab:B,tabOptions:V,form:H,isLoading:q,initialState:J,isReadOnly:Y,isNew:X,showEditButtons:fe,showCreateButton:pe,hasUnsavedChanges:me,displayNameValidationRules:he,submitted:ge,validateOnSubmit:_e,resetForm:ve}=se({roleSlug:()=>z.roleSlug,viewRoute:F.PROJECT_ROLE_VIEW,defaultScopes:()=>structuredClone(u(o.processedProjectRoles.find(e=>e.slug===`project:viewer`)?.scopes??[])),filterScopes:e=>e.filter(e=>U.project.has(e)),fetchError:`Error fetching role`}),Z=r(()=>s.query.from===F.PROJECT_SETTINGS),ye=r(()=>Z.value?T.baseText(`projectRoles.backToProjectSettings`):T.baseText(`projectRoles.backToProjectRoles`)),be=()=>{Z.value?c.back():c.push({name:F.PROJECT_ROLES_SETTINGS})},xe=r(()=>P.moduleSettings[`external-secrets`]?.roleBasedAccess?K:K.filter(e=>e!==`externalSecretsProvider`&&e!==`externalSecret`)),Se=ae;function Q(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`)){Q(e.replace(`:read`,`:listProject`));return}if(e.endsWith(`:read`)&&Q(e.replace(`:read`,`:list`)),e===`workflow:execute`&&n&&(H.value.scopes.includes(`workflow:read`)||Q(`workflow:read`)),e===`workflow:read`&&!n&&H.value.scopes.includes(`workflow:execute`)&&Q(`workflow:execute`),e===`workflow:read`&&(n&&!H.value.scopes.includes(`execution:read`)&&Q(`execution:read`),n||(H.value.scopes.includes(`execution:read`)&&Q(`execution:read`),H.value.scopes.includes(`execution:delete`)&&Q(`execution:delete`))),e===`execution:delete`&&n&&!H.value.scopes.includes(`workflow:read`)&&Q(`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 Ce(){if(_e(`projectRoles.action.create.error`))try{let e=await o.createRole({...H.value,scopes:G(H.value.scopes),description:H.value.description??void 0,roleType:`project`});return o.fetchRoles(),N.track(`User successfully created new role`,{role_id:e.slug,role_name:e.displayName,role_type:`project`,permissions:e.scopes}),c.replace({name:F.PROJECT_ROLE_SETTINGS,params:{roleSlug:e.slug}}),y({type:`success`,message:T.baseText(`projectRoles.action.create.success`)}),J.value=structuredClone(e),e}catch(e){m(e,T.baseText(`projectRoles.action.create.error`));return}}async function we(e){return e?await j.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`)})===ee:!0}async function Te(e){if(await we(J?.value?.usedByUsers))try{let t=await o.updateRole(e,{...H.value,scopes:G(H.value.scopes),description:H.value.description??void 0});return o.fetchRoles(),N.track(`User updated role`,{role_id:t.slug,role_name:t.displayName,role_type:`project`,permissions_from:J.value?.scopes,permissions_to:t.scopes}),J.value=structuredClone(t),y({type:`success`,message:T.baseText(`projectRoles.action.update.success`)}),t}catch(e){m(e,T.baseText(`projectRoles.action.update.error`));return}}async function Ee(){z.roleSlug?await Te(z.roleSlug):await Ce()}function $(e){let t=o.processedProjectRoles.find(t=>t.slug===e);t&&(H.value.scopes=structuredClone(u(t.scopes)).filter(e=>U.project.has(e)))}async function De(){if(J?.value&&await j.confirm(T.baseText(`roles.action.delete.text`,{interpolate:{roleName:J.value.displayName}}),T.baseText(`roles.action.delete.title`,{interpolate:{roleName:J.value.displayName}}),{type:`warning`,confirmButtonText:T.baseText(`roles.action.delete`),cancelButtonText:T.baseText(`roles.action.cancel`)})===`confirm`){N.track(`User clicked delete role`,{role_id:J.value.slug,role_name:J.value.displayName,permissions:J.value?.scopes});try{await o.deleteRole(J.value.slug);let e=o.roles.project.findIndex(e=>e.slug===J.value?.slug);e!==-1&&o.roles.project.splice(e,1),y({title:T.baseText(`roles.action.delete.success`),type:`success`}),N.track(`User successfully deleted role`,{role_id:J.value.slug,role_name:J.value.displayName,permissions:J.value?.scopes}),c.back()}catch(e){m(e,T.baseText(`roles.action.delete.error`));return}}}let Oe=r(()=>({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(r,o)=>(d(),l(oe,{"display-name":n(H).displayName,"onUpdate:displayName":o[5]||=e=>n(H).displayName=e,description:n(H).description,"onUpdate:description":o[6]||=e=>n(H).description=e,"is-new":n(X),"is-read-only":n(Y),"show-edit-buttons":n(fe),"show-create-button":n(pe),"has-unsaved-changes":n(me),"back-button-text":ye.value,labels:Oe.value,"display-name-validation-rules":n(he),"show-display-name-error":n(ge),onBack:be,onSave:Ee,onDiscard:o[7]||=e=>n(ve)(n(J)),onCreate:Ee},{default:w(()=>[e.roleSlug?(d(),i(`div`,le,[S(n(te),{modelValue:n(B),"onUpdate:modelValue":o[0]||=e=>g(B)?B.value=e:null,options:n(V)},null,8,[`modelValue`,`options`])])):a(``,!0),b(E(`div`,null,[n(Y)?a(``,!0):(d(),i(v,{key:0},[S(n(A),{color:`text-light`,class:`mb-2xs`,tag:`p`},{default:w(()=>[t(C(n(T).baseText(`projectRoles.preset`)),1)]),_:1}),E(`div`,{class:p([`mb-s`,r.$style.presetsContainer])},[S(n(D),{variant:`subtle`,onClick:o[1]||=e=>$(`project:admin`)},{default:w(()=>[t(C(n(T).baseText(`projectRoles.admin`)),1)]),_:1}),S(n(D),{variant:`subtle`,onClick:o[2]||=e=>$(`project:editor`)},{default:w(()=>[t(C(n(T).baseText(`projectRoles.editor`)),1)]),_:1}),S(n(D),{variant:`subtle`,onClick:o[3]||=e=>$(`project:viewer`)},{default:w(()=>[t(C(n(T).baseText(`projectRoles.viewer`)),1)]),_:1})],2)],64)),E(`div`,{class:p(r.$style.cardContainer)},[(d(!0),i(v,null,f(xe.value,e=>(d(),i(`div`,{key:e,class:p([`mb-s mt-s`,r.$style.card])},[E(`div`,{class:p(r.$style.cardTitle)},C(n(T).baseText(`projectRoles.type.${e}`)),3),E(`div`,ue,[n(q)?(d(),l(n(W),{key:0,rows:n(Se)[e].length,"shrink-last":!1},null,8,[`rows`])):(d(!0),i(v,{key:1},f(n(Se)[e],e=>(d(),i(`div`,{key:e,class:`mb-2xs`},[S(n(ie),{content:n(T).baseText(`projectRoles.${e}.tooltip`),placement:`right`,enterable:!1,"show-after":250},{default:w(()=>[S(n(re),{"data-test-id":`scope-checkbox-${e}`,"model-value":n(H).scopes.includes(e),label:n(T).baseText(`projectRoles.${e}`),"validate-on-blur":``,type:`checkbox`,class:p(r.$style.checkbox),disabled:n(Y)||e===`execution:read`,"onUpdate:modelValue":()=>Q(e)},null,8,[`data-test-id`,`model-value`,`label`,`class`,`disabled`,`onUpdate:modelValue`])]),_:2},1032,[`content`])]))),128))])],2))),128))],2),e.roleSlug&&!n(Y)?(d(),i(`div`,de,[S(n(ne),{tag:`h2`,class:`mb-2xs`,size:`large`},{default:w(()=>[t(C(n(T).baseText(`projectRoles.dangerZone`)),1)]),_:1}),S(n(A),{tag:`p`,class:`mb-s`},{default:w(()=>[n(J)?.usedByProjects?(d(),i(v,{key:0},[t(C(n(T).baseText(`projectRoles.action.delete.useWarning.before`))+` `,1),E(`a`,{class:p(r.$style.assignmentsLink),onClick:o[4]||=e=>B.value=`assignments`},C(n(T).baseText(`projectRoles.action.delete.useWarning.linkText`,{adjustToNumber:n(J).usedByProjects,interpolate:{count:n(J).usedByProjects}})),3),t(`. `+C(n(T).baseText(`projectRoles.action.delete.useWarning.after`)),1)],64)):(d(),i(v,{key:1},[t(C(n(T).baseText(`projectRoles.action.delete.warning`)),1)],64))]),_:1}),S(n(D),{variant:`destructive`,disabled:!!n(J)?.usedByProjects,onClick:De},{default:w(()=>[t(C(n(T).baseText(`projectRoles.action.delete.button`)),1)]),_:1},8,[`disabled`])])):a(``,!0)],512),[[h,!e.roleSlug||n(B)===`permissions`]]),e.roleSlug&&n(B)===`assignments`?(d(),l(ce,{key:1,"role-slug":e.roleSlug},null,8,[`role-slug`])):a(``,!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{X 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]=`f85905f2-83ad-47a0-a7c1-109fbf338201`,e._sentryDebugIdIdentifier=`sentry-dbid-f85905f2-83ad-47a0-a7c1-109fbf338201`)})()}catch{}import"./rolldown-runtime-BobR2NKB.js";import{$u as e,Ad as t,Af as n,Bd as r,Cd as i,Dd as a,Ed as o,Fd as s,Fs as c,Hd as l,Kd as u,Nd as d,Os as f,Qf as p,Sf as m,Td as h,Ud as g,Yd as _,Zd as v,Zf as y,as as b,bd as x,bf as S,cf as C,if as w,jd as T,np as E,od as D,uf as O,wd as k,yd as A}from"./vendor-BBKxcFox.js";import{$C as j,$x as ee,AC as te,B_ as M,Do as N,E_ as P,Eo as F,GC as I,H_ as ne,I_ as re,Kb as ie,L_ as ae,Li as L,Lp as oe,NC as R,QC as z,Sp as se,U_ as ce,Ux as le,ZC as B,_f as ue,bf as de,cC as V,cu as H,cw as U,ew as W,fC as G,fg as fe,gf as pe,hC as K,iC as q,iS as J,id as me,jm as Y,lC as X,nC as he,nS as ge,qC as Z,rw as Q,tS as _e,um as ve,up as ye,xf as be,xy as xe,z_ as Se}from"./app-DVNMq1uL.js";import{t as Ce}from"./ProjectHeader-BZQpypks.js";import{t as $}from"./RoleSelectDropdown-BlGLQvpV.js";import{t as we}from"./useSecretsProvidersList.ee-DxqomjmN.js";var Te={key:1},Ee={class:`pt-l`},De=Q(d({__name:`ProjectDeleteDialog`,props:r({currentProject:{},searchFn:{type:Function},resourceCounts:{}},{modelValue:{type:Boolean},modelModifiers:{}}),emits:r([`confirmDelete`],[`update:modelValue`]),setup(e,{emit:r}){let s=e,l=w(e,`modelValue`),u=i(()=>s.searchFn??pe()),d=e=>e.id!==s.currentProject?.id,p=r,g=U(),v=m(null),b=m(null),x=m(``),S=i(()=>s.resourceCounts.credentials+s.resourceCounts.workflows+s.resourceCounts.dataTables>0),C=i(()=>{let e=g.baseText(`projects.settings.delete.question.wipe.placeholder`);return!S.value||b.value===`transfer`&&!!v.value||b.value===`wipe`&&x.value===e}),D=()=>{C.value&&(b.value===`wipe`&&(v.value=null),p(`confirmDelete`,v.value?.id))};return(e,r)=>(_(),h(n(f),{modelValue:l.value,"onUpdate:modelValue":r[4]||=e=>l.value=e,title:n(g).baseText(`projects.settings.delete.title`,{interpolate:{projectName:s.currentProject?.name??``}}),width:`650`,"append-to":`#${n(Y)}`},{footer:O(()=>[T(n(j),{variant:`destructive`,type:`button`,disabled:!C.value,"data-test-id":`project-settings-delete-confirm-button`,onClick:A(D,[`stop`,`prevent`])},{default:O(()=>[t(E(n(g).baseText(`projects.settings.danger.deleteProject`)),1)]),_:1},8,[`disabled`])]),default:O(()=>[S.value?S.value?(_(),a(`div`,Te,[T(n(I),{color:`text-base`},{default:O(()=>[t(E(n(g).baseText(`projects.settings.delete.message`)),1)]),_:1}),k(`div`,Ee,[T(n(c),{"model-value":b.value??``,label:`transfer`,class:`mb-s`,"onUpdate:modelValue":r[0]||=e=>b.value=`transfer`},{default:O(()=>[T(n(I),{color:`text-dark`},{default:O(()=>[t(E(n(g).baseText(`projects.settings.delete.question.transfer.label`)),1)]),_:1})]),_:1},8,[`model-value`]),b.value===`transfer`?(_(),a(`div`,{key:0,class:y(e.$style.operation)},[T(n(I),{color:`text-dark`},{default:O(()=>[t(E(n(g).baseText(`projects.settings.delete.question.transfer.title`)),1)]),_:1}),T(N,{modelValue:v.value,"onUpdate:modelValue":r[1]||=e=>v.value=e,class:`pt-2xs`,"search-fn":u.value,"filter-fn":d,"empty-options-text":n(g).baseText(`projects.sharing.noMatchingProjects`)},null,8,[`modelValue`,`search-fn`,`empty-options-text`])],2)):o(``,!0),T(n(c),{"model-value":b.value??``,label:`wipe`,class:`mb-s`,"onUpdate:modelValue":r[2]||=e=>b.value=`wipe`},{default:O(()=>[T(n(I),{color:`text-dark`},{default:O(()=>[t(E(n(g).baseText(`projects.settings.delete.question.wipe.label`)),1)]),_:1})]),_:1},8,[`model-value`]),b.value===`wipe`?(_(),a(`div`,{key:1,class:y(e.$style.operation)},[T(n(q),{label:n(g).baseText(`projects.settings.delete.question.wipe.title`)},{default:O(()=>[T(n(B),{modelValue:x.value,"onUpdate:modelValue":r[3]||=e=>x.value=e,"data-test-id":`project-delete-confirm-input`,placeholder:n(g).baseText(`projects.settings.delete.question.wipe.placeholder`)},null,8,[`modelValue`,`placeholder`])]),_:1},8,[`label`])],2)):o(``,!0)])])):o(``,!0):(_(),h(n(I),{key:0,color:`text-base`},{default:O(()=>[t(E(n(g).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=Q(d({__name:`ProjectRoleUpgradeDialog`,props:r({limit:{},planName:{}},{modelValue:{type:Boolean},modelModifiers:{}}),emits:[`update:modelValue`],setup(e){let r=e,i=w(e,`modelValue`),a=H(),o=U(),s=async()=>{await a.goToUpgrade(`rbac`,`upgrade-rbac`),i.value=!1};return(e,a)=>(_(),h(n(f),{modelValue:i.value,"onUpdate:modelValue":a[1]||=e=>i.value=e,title:n(o).baseText(`projects.settings.role.upgrade.title`),width:`500`,"append-to":`#${n(Y)}`},{footer:O(()=>[k(`div`,{class:y(e.$style.footer)},[T(n(j),{variant:`subtle`,"native-type":`button`,onClick:a[0]||=e=>i.value=!1},{default:O(()=>[t(E(n(o).baseText(`generic.cancel`)),1)]),_:1}),T(n(j),{variant:`solid`,"native-type":`button`,onClick:s},{default:O(()=>[t(E(n(o).baseText(`projects.create.limitReached.link`)),1)]),_:1})],2)]),default:O(()=>[k(`div`,Oe,[T(n(D),{keypath:`projects.settings.role.upgrade.message`,scope:`global`},{planName:O(()=>[t(E(r.planName),1)]),limit:O(()=>[t(E(n(o).baseText(`projects.create.limit`,{adjustToNumber:r.limit,interpolate:{count:String(r.limit)}})),1)]),_:1})])]),_:1},8,[`modelValue`,`title`,`append-to`]))}}),[[`__cssModules`,{$style:{footer:`_footer_149jx_1`}}]]),Ae=[`aria-label`],je=Q(d({__name:`ProjectMembersAccessCell`,props:{data:{},projectRoles:{}},setup(e){let t=e,r=U(),a=i(()=>r.baseText(`projects.settings.table.access.full`)),o=i(()=>t.projectRoles.find(e=>e.slug===t.data.role)?.displayName),s=i(()=>{let e=[r.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(r.baseText(`projects.settings.table.access.tooltip.storedRole`,{interpolate:{projectRole:o.value}})),e.join(` `)});return(e,t)=>(_(),h(n(Z),{placement:`top`,"show-after":300,content:s.value},{default:O(()=>[k(`span`,{class:y(e.$style.label),tabindex:`0`,"aria-label":`${a.value}. ${s.value}`,"data-test-id":`project-member-access-label`},[k(`span`,{class:y(e.$style.text)},E(a.value),3),T(n(W),{icon:`info`,size:`small`,color:`text-light`,class:y(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=d({__name:`ProjectMembersActionsCell`,props:{data:{},actions:{}},emits:[`action`],setup(e,{emit:t}){let r=e,i=t,a=e=>{i(`action`,{action:e,userId:r.data.id})};return(e,t)=>r.actions.length>0?(_(),h(n(R),{key:0,placement:`bottom`,actions:r.actions,theme:`dark`,onAction:a},null,8,[`actions`])):o(``,!0)}}),Ne={key:1},Pe=d({__name:`ProjectMembersRoleCell`,props:{data:{},roles:{}},emits:[`update:role`,`show-role-upgrade-dialog`],setup(e,{emit:t}){let r=e,o=t,s=ce(),c=i(()=>r.roles.find(e=>e.slug===r.data.role)),l=i(()=>r.data.role!==`project:personalOwner`),u=i(()=>s.isCustomRolesFeatureEnabled),d=i(()=>de([`rbac`],{rbac:{scope:`role:manage`}})),f=i(()=>r.roles.filter(e=>e.systemRole)),p=i(()=>r.roles.filter(e=>!e.systemRole)),m=e=>{o(`update:role`,{role:e,userId:r.data.id})};return(t,r)=>l.value?(_(),h($,{key:0,"system-roles":f.value,"custom-roles":p.value,"current-role":e.data.role,"has-custom-roles-license":u.value,"can-manage-roles":d.value,"add-custom-role-route-name":n(ae).PROJECT_NEW_ROLE,"test-id":`project-member-role-dropdown`,"onUpdate:role":m,onSystemRoleUpgradeNeeded:r[0]||=e=>o(`show-role-upgrade-dialog`)},null,8,[`system-roles`,`custom-roles`,`current-role`,`has-custom-roles-license`,`can-manage-roles`,`add-custom-role-route-name`])):(_(),a(`span`,Ne,E(c.value?.displayName),1))}}),Fe={class:`pt-xs pb-xs`},Ie=d({__name:`ProjectMembersTable`,props:r({data:{},loading:{type:Boolean},currentUserId:{},projectRoles:{},actions:{},canEditRole:{type:Boolean}},{tableOptions:{default:()=>({page:0,itemsPerPage:10,sortBy:[]})},tableOptionsModifiers:{}}),emits:r([`update:options`,`update:role`,`show-role-upgrade-dialog`,`action`],[`update:tableOptions`]),setup(e,{emit:r}){let o=U(),c=e,l=r,u=w(e,`tableOptions`),d=i(()=>c.data.items),f=m([{title:o.baseText(`projects.settings.table.header.user`),key:`name`,width:400,disableSort:!0,value:e=>e},{title:o.baseText(`projects.settings.table.header.role`),key:`role`,width:200,disableSort:!0},{title:``,key:`actions`,align:`end`,width:46,disableSort:!0,value(){}}]),g=e=>!e.alwaysHasAccess&&e.id!==c.currentUserId&&c.canEditRole,v=({role:e,userId:t})=>{l(`update:role`,{role:e,userId:t})},y=e=>e.alwaysHasAccess||e.id===c.currentUserId||e.role===`project:personalOwner`?[]:(c.actions??[]).filter(t=>t.guard?.(e)??!0);return(r,i)=>(_(),a(`div`,null,[T(n(ee),{"sort-by":u.value.sortBy,"onUpdate:sortBy":i[2]||=e=>u.value.sortBy=e,page:u.value.page,"onUpdate:page":i[3]||=e=>u.value.page=e,"items-per-page":u.value.itemsPerPage,"onUpdate:itemsPerPage":i[4]||=e=>u.value.itemsPerPage=e,headers:f.value,items:d.value,"items-length":e.data.count,loading:e.loading,"page-sizes":[10,25,50],"onUpdate:options":i[5]||=e=>l(`update:options`,e)},{"item.name":O(({value:e})=>[k(`div`,Fe,[T(n(J),p(s(e)),null,16)])]),"item.role":O(({item:e})=>[g(e)?(_(),h(Pe,{key:0,data:e,roles:c.projectRoles,"onUpdate:role":v,onShowRoleUpgradeDialog:i[0]||=e=>l(`show-role-upgrade-dialog`)},null,8,[`data`,`roles`])):e.alwaysHasAccess?(_(),h(je,{key:1,data:e,"project-roles":c.projectRoles},null,8,[`data`,`project-roles`])):(_(),h(n(I),{key:2,color:`text-dark`},{default:O(()=>[t(E(c.projectRoles.find(t=>t.slug===e.role)?.displayName??e.role),1)]),_:2},1024))]),"item.actions":O(({item:e})=>[T(Me,{data:e,actions:y(e),onAction:i[1]||=e=>r.$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=Q(d({__name:`ProjectExternalSecrets`,setup(e,{expose:r}){let s=U(),c=re(),l=b(),u=ue(),d=se(),f=be(),p=ce(),g=we(),w=L(u.currentProjectId),D=m([]),A=S({}),te=m(!1),M=m(``),N=m(new Set),P=m(0),F=m(5),ne=i(()=>p.moduleSettings[`external-secrets`]?.forProjects??!1),ie=i(()=>u.currentProject?.scopes?.includes(`externalSecretsProvider:list`)??!1),oe=i(()=>u.currentProject?.scopes?.includes(`externalSecretsProvider:create`)??!1),R=i(()=>f.hasScope(`externalSecretsProvider:create`)),le=i(()=>ne.value&&ie.value),de=i(()=>D.value.length>0?null:R.value?g.activeProviders.value.length>0?`instance-admin-no-project-providers`:`project-admin-no-providers`:oe.value?`project-admin-no-providers`:null),H=i(()=>{let e=de.value;return e?{"instance-admin-no-project-providers":{heading:s.baseText(`projects.settings.externalSecrets.emptyState.heading`),description:s.baseText(`projects.settings.externalSecrets.emptyState.instanceAdmin.noProjectProviders.description`),buttonText:s.baseText(`projects.settings.externalSecrets.button.shareSecretsStore`),buttonAction:ye,testId:`external-secrets-empty-state-no-project-providers`},"project-admin-no-providers":{heading:s.baseText(`projects.settings.externalSecrets.emptyState.heading`),description:s.baseText(`projects.settings.externalSecrets.emptyState.projectAdmin.description`),buttonText:s.baseText(`projects.settings.externalSecrets.button.addSecretsStore`),buttonAction:ve,testId:`external-secrets-empty-state-project-admin`}}[e]:null}),G=i(()=>[...D.value].sort((e,t)=>e.name.localeCompare(t.name))),pe=i(()=>{if(!M.value.trim())return G.value;let e=M.value.toLowerCase();return G.value.filter(t=>t.name.toLowerCase().includes(e)?!0:(A[t.name]??[]).some(t=>t.name.toLowerCase().includes(e)))}),K=i(()=>{let e=P.value*F.value,t=e+F.value;return pe.value.slice(e,t)});function q(e){let t=A[e]??[],n=M.value.trim().toLowerCase();return n?t.filter(t=>t.name.toLowerCase().includes(n)||e.toLowerCase().includes(n)):t}let J=i(()=>K.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?q(e.name):[]}})),me=i(()=>[{title:s.baseText(`projects.settings.externalSecrets.table.header.secretName`),key:`connectionName`,disableSort:!0,resize:!1,value:e=>e.connectionName}]);async function Y(e){if(A[e]?.length)return;let{secrets:t}=await w.getConnection(e);A[e]=t??[]}async function he(){await Promise.all(K.value.filter(e=>e.secretsCount>0).map(async e=>await Y(e.name)))}async function ge(){if(!(!u.currentProjectId||!ie.value||!ne.value)){te.value=!0;try{D.value=await u.getProjectSecretProviders(u.currentProjectId),await he()}catch(e){c.showError(e,s.baseText(`projects.settings.externalSecrets.load.error`))}finally{te.value=!1}}}function Z(e){N.value.has(e)?N.value.delete(e):N.value.add(e)}function Q(e,t=`connection`){let n=g.activeProviders.value.map(e=>e.name);d.openModalWithData({name:fe,data:{activeTab:t,providerKey:e,providerTypes:g.providerTypes.value,existingProviderNames:n,projectId:u.currentProjectId,onClose:async()=>{await ge()}}})}function _e(e){Q(e,`connection`)}function ve(){oe.value&&Q()}function ye(){l.push({name:ae.EXTERNAL_SECRETS_SETTINGS})}return C(M,()=>{P.value=0}),C([P,F],async()=>{await he()}),C([()=>u.currentProjectId,le],async([e,t])=>{e&&t&&await ge()},{immediate:!0}),C(le,async e=>{e&&(await Promise.allSettled([g.fetchProviderTypes(),g.fetchActiveConnections()]),R.value&&await u.getAllProjects())},{immediate:!0}),r({fetchProjectSecretConnections:ge}),(e,r)=>le.value?(_(),a(`fieldset`,Le,[k(`h3`,Re,[k(`label`,ze,E(n(s).baseText(`projects.settings.externalSecrets`)),1)]),H.value?(_(),h(n(V),{key:0,"data-test-id":H.value.testId,description:`yes`},{description:O(()=>[T(n(X),{tag:`h3`,size:`small`,class:`mb-2xs`},{default:O(()=>[t(E(H.value.heading),1)]),_:1}),T(n(I),{size:`small`,color:`text-base`,class:y(e.$style.description)},{default:O(()=>[t(E(H.value.description),1)]),_:1},8,[`class`])]),additionalContent:O(()=>[T(n(j),{variant:`ghost`,size:`xsmall`,class:`mr-2xs`,element:`a`,href:n(s).baseText(`settings.externalSecrets.docs`),target:`_blank`,"data-test-id":`secrets-provider-connections-learn-more`},{default:O(()=>[t(E(n(s).baseText(`generic.learnMore`))+` `,1),T(n(W),{icon:`arrow-up-right`})]),_:1},8,[`href`]),T(n(j),{variant:`subtle`,size:`xsmall`,"data-test-id":`${de.value}-button`,onClick:H.value.buttonAction},{default:O(()=>[t(E(H.value.buttonText),1)]),_:1},8,[`data-test-id`,`onClick`])]),_:1},8,[`data-test-id`])):D.value.length>0?(_(),a(`div`,{key:1,class:y(e.$style.secretProvidersContainer)},[k(`div`,{class:y(e.$style.actionsContainer)},[k(`div`,{class:y(e.$style.searchContainer)},[T(n(B),{modelValue:M.value,"onUpdate:modelValue":r[0]||=e=>M.value=e,placeholder:n(s).baseText(`projects.settings.externalSecrets.search.placeholder`),clearable:``,"data-test-id":`secrets-providers-search`,size:`small`},{prefix:O(()=>[T(n(W),{icon:`search`})]),_:1},8,[`modelValue`,`placeholder`])],2),oe.value?(_(),h(n(j),{key:0,variant:`outline`,size:`small`,"data-test-id":`external-secrets-add-button`,onClick:ve},{default:O(()=>[t(E(n(s).baseText(`projects.settings.externalSecrets.button.addSecretsStore`)),1)]),_:1})):o(``,!0)],2),T(n(ee),{page:P.value,"onUpdate:page":r[1]||=e=>P.value=e,"items-per-page":F.value,"onUpdate:itemsPerPage":r[2]||=e=>F.value=e,headers:me.value,items:J.value,"items-length":pe.value.length,loading:te.value,"page-sizes":[5,10,25,50],"row-props":()=>({class:e.$style.groupHeaderRow}),"data-test-id":`external-secrets-table`},{item:O(({item:r})=>[k(`tr`,{class:y(e.$style.groupHeaderRow)},[k(`td`,{class:y(e.$style.groupHeaderCell)},[k(`div`,{class:y(e.$style.groupHeaderContent)},[T(n(z),{variant:`ghost`,icon:r.isExpanded?`chevron-down`:`chevron-right`,class:y(e.$style.expandButton),disabled:r.secretsCount===0,title:r.isExpanded?n(s).baseText(`projects.settings.externalSecrets.collapse`):n(s).baseText(`projects.settings.externalSecrets.expand`),"data-test-id":`external-secrets-expand-button`,onClick:e=>Z(r.connectionName)},null,8,[`icon`,`class`,`disabled`,`title`,`onClick`]),T(n(I),{class:y(e.$style.connectionLink),bold:``,onClick:e=>_e(r.connectionName)},{default:O(()=>[t(E(r.connectionName),1)]),_:2},1032,[`class`,`onClick`]),T(n(I),{color:`text-light`,size:`small`},{default:O(()=>[t(E(r.secretsCount===1?n(s).baseText(`settings.secretsProviderConnections.oneSecret`):n(s).baseText(`settings.secretsProviderConnections.secrets`,{interpolate:{count:r.secretsCount.toString()}})),1)]),_:2},1024)],2)],2)],2),r.isExpanded&&r.secrets.length>0?(_(),a(`tr`,Be,[k(`td`,{class:y(e.$style.secretsCell)},[k(`div`,{class:y(e.$style.secretsList)},[(_(!0),a(x,null,v(r.secrets,t=>(_(),a(`div`,{key:t.name,class:y(e.$style.secretRow)},[k(`span`,null,[k(`code`,{class:y(e.$style.secretName)},E(t.name),3)])],2))),128))],2)],2)])):o(``,!0)]),_:1},8,[`page`,`items-per-page`,`headers`,`items`,`items-length`,`loading`,`row-props`])],2)):o(``,!0)])):o(``,!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=Q(d({__name:`ProjectSettingsCustomTelemetryTags`,props:{modelValue:{}},emits:[`update:modelValue`,`validate`],setup(e,{expose:r,emit:s}){let c=e,l=s,u=U(),d=m(c.modelValue.map(()=>!1));C(()=>c.modelValue.length,e=>{e<d.value.length&&(d.value=d.value.slice(0,e))});let f=i(()=>{let e=new Set;return c.modelValue.map(t=>{let n=t.key.trim();return n?e.has(n)?u.baseText(`projects.settings.customSpanAttributes.error.duplicateKey`):(e.add(n),null):u.baseText(`projects.settings.customSpanAttributes.error.emptyKey`)})});C(i(()=>f.value.some(e=>e!==null)),e=>l(`validate`,!e),{immediate:!0});function p(){d.value=c.modelValue.map(()=>!1)}function h(e){d.value[e]=!0}function g(){l(`update:modelValue`,[...c.modelValue,{key:``,value:``}]),d.value.push(!1)}function b(e){l(`update:modelValue`,c.modelValue.filter((t,n)=>n!==e)),d.value.splice(e,1)}function S(e,t,n){l(`update:modelValue`,c.modelValue.map((r,i)=>i===e?{...r,[t]:n}:r))}return r({resetTouched:p}),(r,i)=>(_(),a(`div`,null,[T(n(I),{size:`small`,class:`mb-s`,tag:`p`},{default:O(()=>[t(E(n(u).baseText(`projects.settings.customSpanAttributes.description`))+` `,1),k(`a`,{class:y(r.$style.docsLink),href:`https://docs.n8n.io/hosting/logging-monitoring/opentelemetry/`,target:`_blank`},[t(E(n(u).baseText(`projects.settings.customSpanAttributes.docsLink`)),1),T(n(W),{icon:`arrow-up-right`,size:`xsmall`})],2)]),_:1}),(_(!0),a(x,null,v(e.modelValue,(e,t)=>(_(),a(`div`,{key:t,class:y(r.$style.telemetryTagContainer)},[k(`div`,{class:y(r.$style.telemetryTagRow)},[T(n(q),{label:t===0?n(u).baseText(`projects.settings.customSpanAttributes.key.label`):void 0,size:`small`},{default:O(()=>[T(n(B),{"model-value":e.key,placeholder:n(u).baseText(`projects.settings.customSpanAttributes.key.placeholder`),"aria-label":n(u).baseText(`projects.settings.customSpanAttributes.key.label`),"data-test-id":`project-telemetry-tag-key`,"onUpdate:modelValue":e=>S(t,`key`,e),onBlur:e=>h(t)},null,8,[`model-value`,`placeholder`,`aria-label`,`onUpdate:modelValue`,`onBlur`])]),_:2},1032,[`label`]),T(n(q),{label:t===0?n(u).baseText(`projects.settings.customSpanAttributes.value.label`):void 0,size:`small`},{default:O(()=>[T(n(B),{"model-value":e.value,placeholder:n(u).baseText(`projects.settings.customSpanAttributes.value.placeholder`),"aria-label":n(u).baseText(`projects.settings.customSpanAttributes.value.label`),"data-test-id":`project-telemetry-tag-value`,"onUpdate:modelValue":e=>S(t,`value`,e)},null,8,[`model-value`,`placeholder`,`aria-label`,`onUpdate:modelValue`])]),_:2},1032,[`label`]),T(n(j),{icon:`trash-2`,variant:`ghost`,size:`small`,"native-type":`button`,title:n(u).baseText(`projects.settings.customSpanAttributes.remove`),"aria-label":n(u).baseText(`projects.settings.customSpanAttributes.remove`),"data-test-id":`project-telemetry-tag-remove`,onClick:A(e=>b(t),[`stop`,`prevent`])},null,8,[`title`,`aria-label`,`onClick`])],2),d.value[t]&&f.value[t]?(_(),a(`span`,{key:0,class:y(r.$style.tagErrorMessage),"data-test-id":`project-telemetry-tag-key-error`},E(f.value[t]),3)):o(``,!0)],2))),128)),T(n(j),{icon:`plus`,variant:`subtle`,"native-type":`button`,class:`mt-2xs`,"data-test-id":`project-telemetry-tag-add`,onClick:A(g,[`stop`,`prevent`])},{default:O(()=>[t(E(n(u).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=Q(d({__name:`ProjectWorkerPoolsSection`,props:{defaultPool:{},availablePools:{},disabled:{type:Boolean}},emits:[`update:defaultPool`],setup(e,{emit:r}){let i=U(),o=e,s=r,c=e=>{s(`update:defaultPool`,e===``?``:e)};return(e,r)=>(_(),a(`fieldset`,Ue,[k(`h3`,null,[k(`label`,We,E(n(i).baseText(`projects.settings.workerPools.title`)),1)]),T(n(G),{id:`projectDefaultPool`,"model-value":o.defaultPool??``,disabled:o.disabled,class:y(e.$style.input),"data-test-id":`project-default-pool-input`,"onUpdate:modelValue":c},{default:O(()=>[T(n(K),{label:n(i).baseText(`projects.settings.workerPools.defaultQueue`),value:``},null,8,[`label`]),(_(!0),a(x,null,v(o.availablePools,e=>(_(),h(n(K),{key:e,label:e,value:e},null,8,[`label`,`value`]))),128))]),_:1},8,[`model-value`,`disabled`,`class`]),T(n(I),{color:`text-light`,size:`small`,class:y(e.$style.help)},{default:O(()=>[t(E(n(i).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=Q(d({__name:`ProjectSettings`,setup(r){let s=ne(),c=U(),d=ue(),f=F(),p=Se(),v=ce(),S=re(),w=b(),D=M(),ee=me(),N=i(()=>!!xe(d.currentProject?.scopes).project.update),L=i(()=>!!xe(d.currentProject?.scopes).project.manageMembers),R=e=>{S.showError(e,c.baseText(`projects.settings.save.error.title`))},z=m(!1),se=m(!1),V=m(!1),H=m(!1),G=m(!0),fe=m(!0),pe=i(()=>H.value&&G.value&&fe.value),K=m({credentials:-1,dataTables:-1,workflows:-1}),q=m({name:``,description:``,relations:[],customTelemetryTags:[],defaultPool:null}),J=m(!1),Y=m(null),X=m({...oe}),Z=m(``),Q=m({page:0,itemsPerPage:10,sortBy:[]}),be=m(``),$=m([]),we=m(!1),Te=i(()=>de([`rbac`],{rbac:{scope:`user:list`}})||L.value),Ee=i(()=>new Map((d.currentProject?.implicitMembers??[]).map(e=>[e.id,e]))),Oe=i(()=>$.value.filter(e=>!(q.value.relations||[]).find(t=>t.id===e.id)&&!Ee.value.has(e.id))),Ae=i(()=>f.processedProjectRoles.find(e=>e.licensed)?.slug),je=i(()=>bt.value||!L.value?[]:[{label:c.baseText(`projects.settings.table.row.removeUser`),value:`remove`,guard:e=>e.id!==s.currentUser?.id&&e.role!==`project:personalOwner`}]),Me=async e=>{if(!d.currentProject||!s.usersById[e])return;let t=Ae.value;if(t){q.value.relations.find(t=>t.id===e)||q.value.relations.push({id:e,role:t});try{J.value=!0,await d.addMember(d.currentProject.id,{userId:e,role:t}),S.showMessage({type:`success`,title:c.baseText(`projects.settings.member.added.title`)}),D.track(`User added member to project`,{project_id:d.currentProject.id,target_user_id:e,role:t})}catch(t){q.value.relations=q.value.relations.filter(t=>t.id!==e),R(t)}}},Ne=async({userId:e,role:t})=>{if(!d.currentProject)return;let n=q.value.relations.findIndex(t=>t.id===e);if(n===-1)return;let r=q.value.relations[n].role;q.value.relations[n].role=t;try{J.value=!0,await d.updateMemberRole(d.currentProject.id,e,t),f.fetchRoles(),S.showMessage({type:`success`,title:c.baseText(`projects.settings.memberRole.updated.title`)}),D.track(`User changed member role on project`,{project_id:d.currentProject.id,target_user_id:e,role:t})}catch(e){q.value.relations[n].role=r,S.showError(e,c.baseText(`projects.settings.memberRole.update.error.title`))}},Pe=()=>{V.value=!0},Fe=m(null);async function Le(e){let t=d.currentProject;if(!t)return;let n=q.value.relations.findIndex(t=>t.id===e);if(n===-1)return;let r=q.value.relations.splice(n,1)[0];if(t.relations.some(t=>t.id===e))try{J.value=!0,await d.removeMember(t.id,e),S.showMessage({type:`success`,title:c.baseText(`projects.settings.member.removed.title`)}),D.track(`User removed member from project`,{project_id:t.id,target_user_id:e})}catch(e){q.value.relations.splice(n,0,r),R(e)}}let Re=async({action:e,userId:t})=>{switch(e){case`remove`:await Le(t);break;default:break}},ze=()=>{q.value.relations=d.currentProject?.relations?ie(d.currentProject.relations):[],q.value.name=d.currentProject?.name??``,q.value.description=d.currentProject?.description??``,q.value.customTelemetryTags=d.currentProject?.customTelemetryTags?ie(d.currentProject.customTelemetryTags):[],Fe.value?.resetTouched(),q.value.defaultPool=d.currentProjectPoolSettings?.defaultPool??null},Be=()=>{let e=d.currentProjectPoolSettings?.defaultPool||null;return(q.value.defaultPool||null)!==e},Ue=()=>{ze(),V.value=!1},We=()=>{let e={};return d.currentProject?(q.value.name!==d.currentProject.name&&(e.name=q.value.name??``),q.value.description!==d.currentProject.description&&(e.description=q.value.description??``),q.value.relations.length!==d.currentProject.relations.length&&(e.memberAdded=q.value.relations.filter(e=>!d.currentProject?.relations.find(t=>t.id===e.id)),e.memberRemoved=d.currentProject.relations.filter(e=>!q.value.relations.find(t=>t.id===e.id))),e.role=q.value.relations.filter(t=>d.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=d.currentProject?.id;e.name&&D.track(`User changed project name`,{project_id:t,name:e.name}),e.memberAdded?.forEach(e=>{D.track(`User added member to project`,{project_id:t,target_user_id:e.id,role:e.role})}),e.memberRemoved?.forEach(e=>{D.track(`User removed member from project`,{project_id:t,target_user_id:e.id})}),e.role?.forEach(e=>{D.track(`User changed member role on project`,{project_id:t,target_user_id:e.id,role:e.role})})},tt=async()=>{if(d.currentProject)try{let e=d.currentProject.id,t=[];t.push(d.updateProject(e,{name:q.value.name??``,description:q.value.description??``,...v.isOtelCustomSpanAttributesEnabled?{customTelemetryTags:q.value.customTelemetryTags}:{}})),st.value&&Be()&&t.push(d.updateCurrentProjectPoolSettings(e,{defaultPool:q.value.defaultPool??``})),await Promise.all(t),V.value=!1}catch(e){throw R(e),e}},nt=async()=>{if(V.value)try{await tt(),et(We()),S.showMessage({title:c.baseText(`projects.settings.save.successful.title`,{interpolate:{projectName:q.value.name??``}}),type:`success`})}catch{}},rt=async()=>{d.currentProjectId&&(K.value=await d.getResourceCounts(d.currentProjectId)),z.value=!0},it=async e=>{try{if(d.currentProject){let t=d.currentProject?.name??``;await d.deleteProject(d.currentProject.id,e),await w.push({name:ae.HOMEPAGE}),S.showMessage({title:c.baseText(`projects.settings.delete.successful.title`,{interpolate:{projectName:t}}),type:`success`}),z.value=!0}}catch(e){S.showError(e,c.baseText(`projects.settings.delete.error.title`))}},at=()=>{q.value.name===c.baseText(`projects.settings.newProjectName`)&&(Y.value?.inputRef?.focus(),Y.value?.inputRef?.select())},ot=async()=>{if(d.currentProject)try{await d.updateProject(d.currentProject.id,{icon:X.value}),S.showMessage({title:c.baseText(`projects.settings.icon.update.successful.title`),type:`success`})}catch(e){R(e)}},st=i(()=>v.isWorkerPoolsEnabled),ct=()=>{q.value.defaultPool=d.currentProjectPoolSettings?.defaultPool??null};C(()=>d.currentProject,async()=>{if(J.value){J.value=!1;return}ze(),await l(),at(),d.currentProject?.icon&&le(d.currentProject.icon)&&(X.value=d.currentProject.icon);let e=d.currentProjectId;N.value&&e&&st.value&&await d.fetchProjectPoolSettings(e).catch(()=>{}).finally(ct)},{immediate:!0});let lt=i(()=>{let e=Ee.value,t=s.currentUser?.id,n=q.value.relations.map(n=>{let r=s.usersById[n.id],i=ye(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:s.usersById[i.id]?.isPendingUser??!1,isCurrentUser:i.id===t,alwaysHasAccess:!0,instanceRole:i.globalRole});return n}),ut=i(()=>{if(!Z.value.trim())return lt.value;let e=Z.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=i(()=>{let e=d.currentProject?.creatorId,t=s.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=i(()=>{let{page:e,itemsPerPage:t}=Q.value,n=e*t;return{items:ft.value.slice(n,n+t),count:ft.value.length}});C(()=>ft.value.length,e=>{let{page:t,itemsPerPage:n}=Q.value;t>0&&t*n>=e&&(Q.value.page=Math.max(0,Math.ceil(e/n)-1))});let mt=i(()=>lt.value.length>=$e);C(mt,e=>{!e&&Z.value&&(Z.value=``)});let ht=e(()=>{Q.value.page=0},ve(P.INPUT.SEARCH)),gt=e=>{Z.value=e,ht()},_t=e=>{Q.value=e},vt=async e=>{be.value=e,we.value=!0;try{let t=d.currentProject?.id;if(!t){$.value=[];return}let n={};e.trim()&&(n.fullText=e),Te.value||(n.projectId=t),await s.fetchUsers({take:50,filter:n}),e.trim()?$.value=s.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=s.allUsers}catch(e){S.showError(e,c.baseText(`projects.settings.users.search.error`))}finally{we.value=!1}},yt=e(vt,ve(P.INPUT.SEARCH));g(async()=>{L.value&&await vt(``)});let bt=i(()=>d.currentProject?.rolesManaged??!1);return u(async()=>{ee.set(c.baseText(`projects.settings`)),!(!N.value&&!L.value)&&(at(),await f.fetchRoles())}),(e,r)=>(_(),a(`div`,{class:y(e.$style.projectSettings),"data-test-id":`project-settings-container`},[k(`div`,{class:y(e.$style.header)},[T(Ce),N.value?(_(),a(`div`,{key:0,class:y(e.$style.headerRow)},[T(n(I),{tag:`h1`,size:`xlarge`,class:`pt-xs pb-m`},{default:O(()=>[t(E(n(c).baseText(`projects.settings.info`)),1)]),_:1}),k(`div`,{class:y(e.$style.headerButtons)},[T(n(j),{variant:`subtle`,"native-type":`button`,disabled:!V.value,class:`mr-2xs`,"data-test-id":`project-settings-cancel-button`,onClick:A(Ue,[`stop`,`prevent`])},{default:O(()=>[t(E(n(c).baseText(`projects.settings.button.cancel`)),1)]),_:1},8,[`disabled`]),T(n(j),{disabled:!pe.value||!V.value,variant:`solid`,"data-test-id":`project-settings-save-button`,onClick:A(nt,[`stop`,`prevent`])},{default:O(()=>[t(E(n(c).baseText(`projects.settings.button.save`)),1)]),_:1},8,[`disabled`])],2)],2)):o(``,!0)],2),k(`form`,{onSubmit:A(nt,[`prevent`])},[N.value?(_(),a(x,{key:0},[k(`fieldset`,null,[k(`label`,Ke,E(n(c).baseText(`projects.settings.name`)),1),k(`div`,{class:y(e.$style.projectName)},[T(n(_e),{modelValue:X.value,"onUpdate:modelValue":[r[0]||=e=>X.value=e,ot],"button-tooltip":n(c).baseText(`projects.settings.iconPicker.button.tooltip`),"show-color-picker":``},null,8,[`modelValue`,`button-tooltip`]),T(n(he),{id:`projectName`,ref_key:`nameInput`,ref:Y,modelValue:q.value.name,"onUpdate:modelValue":r[1]||=e=>q.value.name=e,label:``,type:`text`,name:`name`,required:``,"data-test-id":`project-settings-name-input`,class:y(e.$style.projectNameInput),onEnter:nt,onInput:Pe,onValidate:r[2]||=e=>H.value=e},null,8,[`modelValue`,`class`])],2)]),k(`fieldset`,null,[k(`label`,qe,E(n(c).baseText(`projects.settings.description`)),1),T(n(he),{id:`projectDescription`,modelValue:q.value.description,"onUpdate:modelValue":r[3]||=e=>q.value.description=e,label:``,name:`description`,type:`textarea`,maxlength:512,autosize:!0,"data-test-id":`project-settings-description-input`,class:y(e.$style.projectDescriptionInput),onEnter:nt,onInput:Pe,onValidate:r[4]||=e=>G.value=e},null,8,[`modelValue`,`class`])])],64)):o(``,!0),T(Ve,{class:y(e.$style.externalSecrets)},null,8,[`class`]),N.value||L.value?(_(),a(`fieldset`,Je,[k(`h3`,null,[k(`label`,Ye,E(n(c).baseText(`projects.settings.projectMembers`)),1)]),k(`div`,{class:y([e.$style.membersInputRow,`mb-s`])},[T(n(ge),{id:`projectMembers`,class:y(e.$style.userSelect),size:`large`,users:Oe.value,"current-user-id":n(s).currentUser?.id,placeholder:n(c).baseText(`workflows.shareModal.select.placeholder`),"data-test-id":`project-members-select`,remote:``,"remote-method":n(yt),loading:we.value,disabled:bt.value||!L.value,"onUpdate:modelValue":Me},{prefix:O(()=>[T(n(W),{icon:`search`})]),_:1},8,[`class`,`users`,`current-user-id`,`placeholder`,`remote-method`,`loading`,`disabled`]),mt.value?(_(),h(n(B),{key:0,class:y(e.$style.search),"model-value":Z.value,placeholder:n(c).baseText(`projects.settings.members.search.placeholder`),clearable:``,"data-test-id":`project-members-search`,"onUpdate:modelValue":gt},{prefix:O(()=>[T(n(W),{icon:`search`})]),_:1},8,[`class`,`model-value`,`placeholder`])):o(``,!0)],2),bt.value?(_(),a(`div`,Xe,[T(n(te),{type:`info`,title:n(c).baseText(`settings.projectRolesManaged.description`)},null,8,[`title`])])):o(``,!0),lt.value.length>0?(_(),a(`div`,{key:1,class:y(e.$style.membersTableContainer)},[T(Ie,{"table-options":Q.value,"onUpdate:tableOptions":r[5]||=e=>Q.value=e,"data-test-id":`project-members-table`,data:pt.value,"current-user-id":n(s).currentUser?.id,"project-roles":n(f).processedProjectRoles,actions:je.value,"can-edit-role":!bt.value&&L.value,"onUpdate:options":_t,"onUpdate:role":Ne,onShowRoleUpgradeDialog:r[6]||=e=>se.value=!0,onAction:Re},null,8,[`table-options`,`data`,`current-user-id`,`project-roles`,`actions`,`can-edit-role`])],2)):o(``,!0)])):o(``,!0),N.value?(_(),a(x,{key:2},[n(v).isOtelCustomSpanAttributesEnabled?(_(),a(`fieldset`,Ze,[k(`h3`,null,[k(`label`,null,E(n(c).baseText(`projects.settings.customSpanAttributes.label`)),1)]),T(He,{ref_key:`telemetryTagsRef`,ref:Fe,modelValue:q.value.customTelemetryTags,"onUpdate:modelValue":[r[7]||=e=>q.value.customTelemetryTags=e,Pe],onValidate:r[8]||=e=>fe.value=e},null,8,[`modelValue`])])):o(``,!0),st.value?(_(),h(Ge,{key:1,"default-pool":q.value.defaultPool,"available-pools":n(d).currentProjectPoolSettings?.availablePools??[],"onUpdate:defaultPool":r[9]||=e=>{q.value.defaultPool=e,Pe()}},null,8,[`default-pool`,`available-pools`])):o(``,!0),k(`fieldset`,null,[k(`h3`,Qe,E(n(c).baseText(`projects.settings.danger.title`)),1),k(`small`,{class:y(e.$style.danger)},E(n(c).baseText(`projects.settings.danger.message`)),3),T(n(j),{variant:`subtle`,size:`large`,"native-type":`button`,"data-test-id":`project-settings-delete-button`,onClick:A(rt,[`stop`,`prevent`])},{default:O(()=>[t(E(n(c).baseText(`projects.settings.danger.deleteProject`)),1)]),_:1})])],64)):o(``,!0)],32),T(De,{modelValue:z.value,"onUpdate:modelValue":r[10]||=e=>z.value=e,"current-project":n(d).currentProject,"resource-counts":K.value,onConfirmDelete:it},null,8,[`modelValue`,`current-project`,`resource-counts`]),T(ke,{modelValue:se.value,"onUpdate:modelValue":r[11]||=e=>se.value=e,limit:n(d).teamProjectsLimit,"plan-name":n(p).currentPlanData?.displayName},null,8,[`modelValue`,`limit`,`plan-name`])],2))}}),[[`__cssModules`,{$style:{projectSettings:`_projectSettings_i54mg_1`,header:`_header_i54mg_25`,headerRow:`_headerRow_i54mg_31`,headerButtons:`_headerButtons_i54mg_38`,upgrade:`_upgrade_i54mg_44`,externalSecrets:`_externalSecrets_i54mg_48`,membersInputRow:`_membersInputRow_i54mg_53`,membersTableContainer:`_membersTableContainer_i54mg_61`,search:`_search_i54mg_65`,projectName:`_projectName_i54mg_70`,projectNameInput:`_projectNameInput_i54mg_75`,projectDescriptionInput:`_projectDescriptionInput_i54mg_79`,userSelect:`_userSelect_i54mg_80`,danger:`_danger_i54mg_90`}}]]);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]=`f85905f2-83ad-47a0-a7c1-109fbf338201`,e._sentryDebugIdIdentifier=`sentry-dbid-f85905f2-83ad-47a0-a7c1-109fbf338201`)})()}catch{}import"./rolldown-runtime-BobR2NKB.js";import{$u as e,Ad as t,Af as n,Bd as r,Cd as i,Dd as a,Ed as o,Fd as s,Fs as c,Hd as l,Kd as u,Nd as d,Os as f,Qf as p,Sf as m,Td as h,Ud as g,Yd as _,Zd as v,Zf as y,as as b,bd as x,bf as S,cf as C,if as w,jd as T,np as E,od as D,uf as O,wd as k,yd as A}from"./vendor-BBKxcFox.js";import{$C as j,$x as ee,AC as te,B_ as M,Do as N,E_ as P,Eo as F,GC as I,H_ as ne,I_ as re,Kb as ie,L_ as ae,Li as L,Lp as oe,NC as R,QC as z,Sp as se,U_ as ce,Ux as le,ZC as B,_f as ue,bf as de,cC as V,cu as H,cw as U,ew as W,fC as G,fg as fe,gf as pe,hC as K,iC as q,iS as J,id as me,jm as Y,lC as X,nC as he,nS as ge,qC as Z,rw as Q,tS as _e,um as ve,up as ye,xf as be,xy as xe,z_ as Se}from"./app-D5iNDcFq.js";import{t as Ce}from"./ProjectHeader-CkcbjQmz.js";import{t as $}from"./RoleSelectDropdown-DZcidfgO.js";import{t as we}from"./useSecretsProvidersList.ee-ij71kpmd.js";var Te={key:1},Ee={class:`pt-l`},De=Q(d({__name:`ProjectDeleteDialog`,props:r({currentProject:{},searchFn:{type:Function},resourceCounts:{}},{modelValue:{type:Boolean},modelModifiers:{}}),emits:r([`confirmDelete`],[`update:modelValue`]),setup(e,{emit:r}){let s=e,l=w(e,`modelValue`),u=i(()=>s.searchFn??pe()),d=e=>e.id!==s.currentProject?.id,p=r,g=U(),v=m(null),b=m(null),x=m(``),S=i(()=>s.resourceCounts.credentials+s.resourceCounts.workflows+s.resourceCounts.dataTables>0),C=i(()=>{let e=g.baseText(`projects.settings.delete.question.wipe.placeholder`);return!S.value||b.value===`transfer`&&!!v.value||b.value===`wipe`&&x.value===e}),D=()=>{C.value&&(b.value===`wipe`&&(v.value=null),p(`confirmDelete`,v.value?.id))};return(e,r)=>(_(),h(n(f),{modelValue:l.value,"onUpdate:modelValue":r[4]||=e=>l.value=e,title:n(g).baseText(`projects.settings.delete.title`,{interpolate:{projectName:s.currentProject?.name??``}}),width:`650`,"append-to":`#${n(Y)}`},{footer:O(()=>[T(n(j),{variant:`destructive`,type:`button`,disabled:!C.value,"data-test-id":`project-settings-delete-confirm-button`,onClick:A(D,[`stop`,`prevent`])},{default:O(()=>[t(E(n(g).baseText(`projects.settings.danger.deleteProject`)),1)]),_:1},8,[`disabled`])]),default:O(()=>[S.value?S.value?(_(),a(`div`,Te,[T(n(I),{color:`text-base`},{default:O(()=>[t(E(n(g).baseText(`projects.settings.delete.message`)),1)]),_:1}),k(`div`,Ee,[T(n(c),{"model-value":b.value??``,label:`transfer`,class:`mb-s`,"onUpdate:modelValue":r[0]||=e=>b.value=`transfer`},{default:O(()=>[T(n(I),{color:`text-dark`},{default:O(()=>[t(E(n(g).baseText(`projects.settings.delete.question.transfer.label`)),1)]),_:1})]),_:1},8,[`model-value`]),b.value===`transfer`?(_(),a(`div`,{key:0,class:y(e.$style.operation)},[T(n(I),{color:`text-dark`},{default:O(()=>[t(E(n(g).baseText(`projects.settings.delete.question.transfer.title`)),1)]),_:1}),T(N,{modelValue:v.value,"onUpdate:modelValue":r[1]||=e=>v.value=e,class:`pt-2xs`,"search-fn":u.value,"filter-fn":d,"empty-options-text":n(g).baseText(`projects.sharing.noMatchingProjects`)},null,8,[`modelValue`,`search-fn`,`empty-options-text`])],2)):o(``,!0),T(n(c),{"model-value":b.value??``,label:`wipe`,class:`mb-s`,"onUpdate:modelValue":r[2]||=e=>b.value=`wipe`},{default:O(()=>[T(n(I),{color:`text-dark`},{default:O(()=>[t(E(n(g).baseText(`projects.settings.delete.question.wipe.label`)),1)]),_:1})]),_:1},8,[`model-value`]),b.value===`wipe`?(_(),a(`div`,{key:1,class:y(e.$style.operation)},[T(n(q),{label:n(g).baseText(`projects.settings.delete.question.wipe.title`)},{default:O(()=>[T(n(B),{modelValue:x.value,"onUpdate:modelValue":r[3]||=e=>x.value=e,"data-test-id":`project-delete-confirm-input`,placeholder:n(g).baseText(`projects.settings.delete.question.wipe.placeholder`)},null,8,[`modelValue`,`placeholder`])]),_:1},8,[`label`])],2)):o(``,!0)])])):o(``,!0):(_(),h(n(I),{key:0,color:`text-base`},{default:O(()=>[t(E(n(g).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=Q(d({__name:`ProjectRoleUpgradeDialog`,props:r({limit:{},planName:{}},{modelValue:{type:Boolean},modelModifiers:{}}),emits:[`update:modelValue`],setup(e){let r=e,i=w(e,`modelValue`),a=H(),o=U(),s=async()=>{await a.goToUpgrade(`rbac`,`upgrade-rbac`),i.value=!1};return(e,a)=>(_(),h(n(f),{modelValue:i.value,"onUpdate:modelValue":a[1]||=e=>i.value=e,title:n(o).baseText(`projects.settings.role.upgrade.title`),width:`500`,"append-to":`#${n(Y)}`},{footer:O(()=>[k(`div`,{class:y(e.$style.footer)},[T(n(j),{variant:`subtle`,"native-type":`button`,onClick:a[0]||=e=>i.value=!1},{default:O(()=>[t(E(n(o).baseText(`generic.cancel`)),1)]),_:1}),T(n(j),{variant:`solid`,"native-type":`button`,onClick:s},{default:O(()=>[t(E(n(o).baseText(`projects.create.limitReached.link`)),1)]),_:1})],2)]),default:O(()=>[k(`div`,Oe,[T(n(D),{keypath:`projects.settings.role.upgrade.message`,scope:`global`},{planName:O(()=>[t(E(r.planName),1)]),limit:O(()=>[t(E(n(o).baseText(`projects.create.limit`,{adjustToNumber:r.limit,interpolate:{count:String(r.limit)}})),1)]),_:1})])]),_:1},8,[`modelValue`,`title`,`append-to`]))}}),[[`__cssModules`,{$style:{footer:`_footer_149jx_1`}}]]),Ae=[`aria-label`],je=Q(d({__name:`ProjectMembersAccessCell`,props:{data:{},projectRoles:{}},setup(e){let t=e,r=U(),a=i(()=>r.baseText(`projects.settings.table.access.full`)),o=i(()=>t.projectRoles.find(e=>e.slug===t.data.role)?.displayName),s=i(()=>{let e=[r.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(r.baseText(`projects.settings.table.access.tooltip.storedRole`,{interpolate:{projectRole:o.value}})),e.join(` `)});return(e,t)=>(_(),h(n(Z),{placement:`top`,"show-after":300,content:s.value},{default:O(()=>[k(`span`,{class:y(e.$style.label),tabindex:`0`,"aria-label":`${a.value}. ${s.value}`,"data-test-id":`project-member-access-label`},[k(`span`,{class:y(e.$style.text)},E(a.value),3),T(n(W),{icon:`info`,size:`small`,color:`text-light`,class:y(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=d({__name:`ProjectMembersActionsCell`,props:{data:{},actions:{}},emits:[`action`],setup(e,{emit:t}){let r=e,i=t,a=e=>{i(`action`,{action:e,userId:r.data.id})};return(e,t)=>r.actions.length>0?(_(),h(n(R),{key:0,placement:`bottom`,actions:r.actions,theme:`dark`,onAction:a},null,8,[`actions`])):o(``,!0)}}),Ne={key:1},Pe=d({__name:`ProjectMembersRoleCell`,props:{data:{},roles:{}},emits:[`update:role`,`show-role-upgrade-dialog`],setup(e,{emit:t}){let r=e,o=t,s=ce(),c=i(()=>r.roles.find(e=>e.slug===r.data.role)),l=i(()=>r.data.role!==`project:personalOwner`),u=i(()=>s.isCustomRolesFeatureEnabled),d=i(()=>de([`rbac`],{rbac:{scope:`role:manage`}})),f=i(()=>r.roles.filter(e=>e.systemRole)),p=i(()=>r.roles.filter(e=>!e.systemRole)),m=e=>{o(`update:role`,{role:e,userId:r.data.id})};return(t,r)=>l.value?(_(),h($,{key:0,"system-roles":f.value,"custom-roles":p.value,"current-role":e.data.role,"has-custom-roles-license":u.value,"can-manage-roles":d.value,"add-custom-role-route-name":n(ae).PROJECT_NEW_ROLE,"test-id":`project-member-role-dropdown`,"onUpdate:role":m,onSystemRoleUpgradeNeeded:r[0]||=e=>o(`show-role-upgrade-dialog`)},null,8,[`system-roles`,`custom-roles`,`current-role`,`has-custom-roles-license`,`can-manage-roles`,`add-custom-role-route-name`])):(_(),a(`span`,Ne,E(c.value?.displayName),1))}}),Fe={class:`pt-xs pb-xs`},Ie=d({__name:`ProjectMembersTable`,props:r({data:{},loading:{type:Boolean},currentUserId:{},projectRoles:{},actions:{},canEditRole:{type:Boolean}},{tableOptions:{default:()=>({page:0,itemsPerPage:10,sortBy:[]})},tableOptionsModifiers:{}}),emits:r([`update:options`,`update:role`,`show-role-upgrade-dialog`,`action`],[`update:tableOptions`]),setup(e,{emit:r}){let o=U(),c=e,l=r,u=w(e,`tableOptions`),d=i(()=>c.data.items),f=m([{title:o.baseText(`projects.settings.table.header.user`),key:`name`,width:400,disableSort:!0,value:e=>e},{title:o.baseText(`projects.settings.table.header.role`),key:`role`,width:200,disableSort:!0},{title:``,key:`actions`,align:`end`,width:46,disableSort:!0,value(){}}]),g=e=>!e.alwaysHasAccess&&e.id!==c.currentUserId&&c.canEditRole,v=({role:e,userId:t})=>{l(`update:role`,{role:e,userId:t})},y=e=>e.alwaysHasAccess||e.id===c.currentUserId||e.role===`project:personalOwner`?[]:(c.actions??[]).filter(t=>t.guard?.(e)??!0);return(r,i)=>(_(),a(`div`,null,[T(n(ee),{"sort-by":u.value.sortBy,"onUpdate:sortBy":i[2]||=e=>u.value.sortBy=e,page:u.value.page,"onUpdate:page":i[3]||=e=>u.value.page=e,"items-per-page":u.value.itemsPerPage,"onUpdate:itemsPerPage":i[4]||=e=>u.value.itemsPerPage=e,headers:f.value,items:d.value,"items-length":e.data.count,loading:e.loading,"page-sizes":[10,25,50],"onUpdate:options":i[5]||=e=>l(`update:options`,e)},{"item.name":O(({value:e})=>[k(`div`,Fe,[T(n(J),p(s(e)),null,16)])]),"item.role":O(({item:e})=>[g(e)?(_(),h(Pe,{key:0,data:e,roles:c.projectRoles,"onUpdate:role":v,onShowRoleUpgradeDialog:i[0]||=e=>l(`show-role-upgrade-dialog`)},null,8,[`data`,`roles`])):e.alwaysHasAccess?(_(),h(je,{key:1,data:e,"project-roles":c.projectRoles},null,8,[`data`,`project-roles`])):(_(),h(n(I),{key:2,color:`text-dark`},{default:O(()=>[t(E(c.projectRoles.find(t=>t.slug===e.role)?.displayName??e.role),1)]),_:2},1024))]),"item.actions":O(({item:e})=>[T(Me,{data:e,actions:y(e),onAction:i[1]||=e=>r.$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=Q(d({__name:`ProjectExternalSecrets`,setup(e,{expose:r}){let s=U(),c=re(),l=b(),u=ue(),d=se(),f=be(),p=ce(),g=we(),w=L(u.currentProjectId),D=m([]),A=S({}),te=m(!1),M=m(``),N=m(new Set),P=m(0),F=m(5),ne=i(()=>p.moduleSettings[`external-secrets`]?.forProjects??!1),ie=i(()=>u.currentProject?.scopes?.includes(`externalSecretsProvider:list`)??!1),oe=i(()=>u.currentProject?.scopes?.includes(`externalSecretsProvider:create`)??!1),R=i(()=>f.hasScope(`externalSecretsProvider:create`)),le=i(()=>ne.value&&ie.value),de=i(()=>D.value.length>0?null:R.value?g.activeProviders.value.length>0?`instance-admin-no-project-providers`:`project-admin-no-providers`:oe.value?`project-admin-no-providers`:null),H=i(()=>{let e=de.value;return e?{"instance-admin-no-project-providers":{heading:s.baseText(`projects.settings.externalSecrets.emptyState.heading`),description:s.baseText(`projects.settings.externalSecrets.emptyState.instanceAdmin.noProjectProviders.description`),buttonText:s.baseText(`projects.settings.externalSecrets.button.shareSecretsStore`),buttonAction:ye,testId:`external-secrets-empty-state-no-project-providers`},"project-admin-no-providers":{heading:s.baseText(`projects.settings.externalSecrets.emptyState.heading`),description:s.baseText(`projects.settings.externalSecrets.emptyState.projectAdmin.description`),buttonText:s.baseText(`projects.settings.externalSecrets.button.addSecretsStore`),buttonAction:ve,testId:`external-secrets-empty-state-project-admin`}}[e]:null}),G=i(()=>[...D.value].sort((e,t)=>e.name.localeCompare(t.name))),pe=i(()=>{if(!M.value.trim())return G.value;let e=M.value.toLowerCase();return G.value.filter(t=>t.name.toLowerCase().includes(e)?!0:(A[t.name]??[]).some(t=>t.name.toLowerCase().includes(e)))}),K=i(()=>{let e=P.value*F.value,t=e+F.value;return pe.value.slice(e,t)});function q(e){let t=A[e]??[],n=M.value.trim().toLowerCase();return n?t.filter(t=>t.name.toLowerCase().includes(n)||e.toLowerCase().includes(n)):t}let J=i(()=>K.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?q(e.name):[]}})),me=i(()=>[{title:s.baseText(`projects.settings.externalSecrets.table.header.secretName`),key:`connectionName`,disableSort:!0,resize:!1,value:e=>e.connectionName}]);async function Y(e){if(A[e]?.length)return;let{secrets:t}=await w.getConnection(e);A[e]=t??[]}async function he(){await Promise.all(K.value.filter(e=>e.secretsCount>0).map(async e=>await Y(e.name)))}async function ge(){if(!(!u.currentProjectId||!ie.value||!ne.value)){te.value=!0;try{D.value=await u.getProjectSecretProviders(u.currentProjectId),await he()}catch(e){c.showError(e,s.baseText(`projects.settings.externalSecrets.load.error`))}finally{te.value=!1}}}function Z(e){N.value.has(e)?N.value.delete(e):N.value.add(e)}function Q(e,t=`connection`){let n=g.activeProviders.value.map(e=>e.name);d.openModalWithData({name:fe,data:{activeTab:t,providerKey:e,providerTypes:g.providerTypes.value,existingProviderNames:n,projectId:u.currentProjectId,onClose:async()=>{await ge()}}})}function _e(e){Q(e,`connection`)}function ve(){oe.value&&Q()}function ye(){l.push({name:ae.EXTERNAL_SECRETS_SETTINGS})}return C(M,()=>{P.value=0}),C([P,F],async()=>{await he()}),C([()=>u.currentProjectId,le],async([e,t])=>{e&&t&&await ge()},{immediate:!0}),C(le,async e=>{e&&(await Promise.allSettled([g.fetchProviderTypes(),g.fetchActiveConnections()]),R.value&&await u.getAllProjects())},{immediate:!0}),r({fetchProjectSecretConnections:ge}),(e,r)=>le.value?(_(),a(`fieldset`,Le,[k(`h3`,Re,[k(`label`,ze,E(n(s).baseText(`projects.settings.externalSecrets`)),1)]),H.value?(_(),h(n(V),{key:0,"data-test-id":H.value.testId,description:`yes`},{description:O(()=>[T(n(X),{tag:`h3`,size:`small`,class:`mb-2xs`},{default:O(()=>[t(E(H.value.heading),1)]),_:1}),T(n(I),{size:`small`,color:`text-base`,class:y(e.$style.description)},{default:O(()=>[t(E(H.value.description),1)]),_:1},8,[`class`])]),additionalContent:O(()=>[T(n(j),{variant:`ghost`,size:`xsmall`,class:`mr-2xs`,element:`a`,href:n(s).baseText(`settings.externalSecrets.docs`),target:`_blank`,"data-test-id":`secrets-provider-connections-learn-more`},{default:O(()=>[t(E(n(s).baseText(`generic.learnMore`))+` `,1),T(n(W),{icon:`arrow-up-right`})]),_:1},8,[`href`]),T(n(j),{variant:`subtle`,size:`xsmall`,"data-test-id":`${de.value}-button`,onClick:H.value.buttonAction},{default:O(()=>[t(E(H.value.buttonText),1)]),_:1},8,[`data-test-id`,`onClick`])]),_:1},8,[`data-test-id`])):D.value.length>0?(_(),a(`div`,{key:1,class:y(e.$style.secretProvidersContainer)},[k(`div`,{class:y(e.$style.actionsContainer)},[k(`div`,{class:y(e.$style.searchContainer)},[T(n(B),{modelValue:M.value,"onUpdate:modelValue":r[0]||=e=>M.value=e,placeholder:n(s).baseText(`projects.settings.externalSecrets.search.placeholder`),clearable:``,"data-test-id":`secrets-providers-search`,size:`small`},{prefix:O(()=>[T(n(W),{icon:`search`})]),_:1},8,[`modelValue`,`placeholder`])],2),oe.value?(_(),h(n(j),{key:0,variant:`outline`,size:`small`,"data-test-id":`external-secrets-add-button`,onClick:ve},{default:O(()=>[t(E(n(s).baseText(`projects.settings.externalSecrets.button.addSecretsStore`)),1)]),_:1})):o(``,!0)],2),T(n(ee),{page:P.value,"onUpdate:page":r[1]||=e=>P.value=e,"items-per-page":F.value,"onUpdate:itemsPerPage":r[2]||=e=>F.value=e,headers:me.value,items:J.value,"items-length":pe.value.length,loading:te.value,"page-sizes":[5,10,25,50],"row-props":()=>({class:e.$style.groupHeaderRow}),"data-test-id":`external-secrets-table`},{item:O(({item:r})=>[k(`tr`,{class:y(e.$style.groupHeaderRow)},[k(`td`,{class:y(e.$style.groupHeaderCell)},[k(`div`,{class:y(e.$style.groupHeaderContent)},[T(n(z),{variant:`ghost`,icon:r.isExpanded?`chevron-down`:`chevron-right`,class:y(e.$style.expandButton),disabled:r.secretsCount===0,title:r.isExpanded?n(s).baseText(`projects.settings.externalSecrets.collapse`):n(s).baseText(`projects.settings.externalSecrets.expand`),"data-test-id":`external-secrets-expand-button`,onClick:e=>Z(r.connectionName)},null,8,[`icon`,`class`,`disabled`,`title`,`onClick`]),T(n(I),{class:y(e.$style.connectionLink),bold:``,onClick:e=>_e(r.connectionName)},{default:O(()=>[t(E(r.connectionName),1)]),_:2},1032,[`class`,`onClick`]),T(n(I),{color:`text-light`,size:`small`},{default:O(()=>[t(E(r.secretsCount===1?n(s).baseText(`settings.secretsProviderConnections.oneSecret`):n(s).baseText(`settings.secretsProviderConnections.secrets`,{interpolate:{count:r.secretsCount.toString()}})),1)]),_:2},1024)],2)],2)],2),r.isExpanded&&r.secrets.length>0?(_(),a(`tr`,Be,[k(`td`,{class:y(e.$style.secretsCell)},[k(`div`,{class:y(e.$style.secretsList)},[(_(!0),a(x,null,v(r.secrets,t=>(_(),a(`div`,{key:t.name,class:y(e.$style.secretRow)},[k(`span`,null,[k(`code`,{class:y(e.$style.secretName)},E(t.name),3)])],2))),128))],2)],2)])):o(``,!0)]),_:1},8,[`page`,`items-per-page`,`headers`,`items`,`items-length`,`loading`,`row-props`])],2)):o(``,!0)])):o(``,!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=Q(d({__name:`ProjectSettingsCustomTelemetryTags`,props:{modelValue:{}},emits:[`update:modelValue`,`validate`],setup(e,{expose:r,emit:s}){let c=e,l=s,u=U(),d=m(c.modelValue.map(()=>!1));C(()=>c.modelValue.length,e=>{e<d.value.length&&(d.value=d.value.slice(0,e))});let f=i(()=>{let e=new Set;return c.modelValue.map(t=>{let n=t.key.trim();return n?e.has(n)?u.baseText(`projects.settings.customSpanAttributes.error.duplicateKey`):(e.add(n),null):u.baseText(`projects.settings.customSpanAttributes.error.emptyKey`)})});C(i(()=>f.value.some(e=>e!==null)),e=>l(`validate`,!e),{immediate:!0});function p(){d.value=c.modelValue.map(()=>!1)}function h(e){d.value[e]=!0}function g(){l(`update:modelValue`,[...c.modelValue,{key:``,value:``}]),d.value.push(!1)}function b(e){l(`update:modelValue`,c.modelValue.filter((t,n)=>n!==e)),d.value.splice(e,1)}function S(e,t,n){l(`update:modelValue`,c.modelValue.map((r,i)=>i===e?{...r,[t]:n}:r))}return r({resetTouched:p}),(r,i)=>(_(),a(`div`,null,[T(n(I),{size:`small`,class:`mb-s`,tag:`p`},{default:O(()=>[t(E(n(u).baseText(`projects.settings.customSpanAttributes.description`))+` `,1),k(`a`,{class:y(r.$style.docsLink),href:`https://docs.n8n.io/hosting/logging-monitoring/opentelemetry/`,target:`_blank`},[t(E(n(u).baseText(`projects.settings.customSpanAttributes.docsLink`)),1),T(n(W),{icon:`arrow-up-right`,size:`xsmall`})],2)]),_:1}),(_(!0),a(x,null,v(e.modelValue,(e,t)=>(_(),a(`div`,{key:t,class:y(r.$style.telemetryTagContainer)},[k(`div`,{class:y(r.$style.telemetryTagRow)},[T(n(q),{label:t===0?n(u).baseText(`projects.settings.customSpanAttributes.key.label`):void 0,size:`small`},{default:O(()=>[T(n(B),{"model-value":e.key,placeholder:n(u).baseText(`projects.settings.customSpanAttributes.key.placeholder`),"aria-label":n(u).baseText(`projects.settings.customSpanAttributes.key.label`),"data-test-id":`project-telemetry-tag-key`,"onUpdate:modelValue":e=>S(t,`key`,e),onBlur:e=>h(t)},null,8,[`model-value`,`placeholder`,`aria-label`,`onUpdate:modelValue`,`onBlur`])]),_:2},1032,[`label`]),T(n(q),{label:t===0?n(u).baseText(`projects.settings.customSpanAttributes.value.label`):void 0,size:`small`},{default:O(()=>[T(n(B),{"model-value":e.value,placeholder:n(u).baseText(`projects.settings.customSpanAttributes.value.placeholder`),"aria-label":n(u).baseText(`projects.settings.customSpanAttributes.value.label`),"data-test-id":`project-telemetry-tag-value`,"onUpdate:modelValue":e=>S(t,`value`,e)},null,8,[`model-value`,`placeholder`,`aria-label`,`onUpdate:modelValue`])]),_:2},1032,[`label`]),T(n(j),{icon:`trash-2`,variant:`ghost`,size:`small`,"native-type":`button`,title:n(u).baseText(`projects.settings.customSpanAttributes.remove`),"aria-label":n(u).baseText(`projects.settings.customSpanAttributes.remove`),"data-test-id":`project-telemetry-tag-remove`,onClick:A(e=>b(t),[`stop`,`prevent`])},null,8,[`title`,`aria-label`,`onClick`])],2),d.value[t]&&f.value[t]?(_(),a(`span`,{key:0,class:y(r.$style.tagErrorMessage),"data-test-id":`project-telemetry-tag-key-error`},E(f.value[t]),3)):o(``,!0)],2))),128)),T(n(j),{icon:`plus`,variant:`subtle`,"native-type":`button`,class:`mt-2xs`,"data-test-id":`project-telemetry-tag-add`,onClick:A(g,[`stop`,`prevent`])},{default:O(()=>[t(E(n(u).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=Q(d({__name:`ProjectWorkerPoolsSection`,props:{defaultPool:{},availablePools:{},disabled:{type:Boolean}},emits:[`update:defaultPool`],setup(e,{emit:r}){let i=U(),o=e,s=r,c=e=>{s(`update:defaultPool`,e===``?``:e)};return(e,r)=>(_(),a(`fieldset`,Ue,[k(`h3`,null,[k(`label`,We,E(n(i).baseText(`projects.settings.workerPools.title`)),1)]),T(n(G),{id:`projectDefaultPool`,"model-value":o.defaultPool??``,disabled:o.disabled,class:y(e.$style.input),"data-test-id":`project-default-pool-input`,"onUpdate:modelValue":c},{default:O(()=>[T(n(K),{label:n(i).baseText(`projects.settings.workerPools.defaultQueue`),value:``},null,8,[`label`]),(_(!0),a(x,null,v(o.availablePools,e=>(_(),h(n(K),{key:e,label:e,value:e},null,8,[`label`,`value`]))),128))]),_:1},8,[`model-value`,`disabled`,`class`]),T(n(I),{color:`text-light`,size:`small`,class:y(e.$style.help)},{default:O(()=>[t(E(n(i).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=Q(d({__name:`ProjectSettings`,setup(r){let s=ne(),c=U(),d=ue(),f=F(),p=Se(),v=ce(),S=re(),w=b(),D=M(),ee=me(),N=i(()=>!!xe(d.currentProject?.scopes).project.update),L=i(()=>!!xe(d.currentProject?.scopes).project.manageMembers),R=e=>{S.showError(e,c.baseText(`projects.settings.save.error.title`))},z=m(!1),se=m(!1),V=m(!1),H=m(!1),G=m(!0),fe=m(!0),pe=i(()=>H.value&&G.value&&fe.value),K=m({credentials:-1,dataTables:-1,workflows:-1}),q=m({name:``,description:``,relations:[],customTelemetryTags:[],defaultPool:null}),J=m(!1),Y=m(null),X=m({...oe}),Z=m(``),Q=m({page:0,itemsPerPage:10,sortBy:[]}),be=m(``),$=m([]),we=m(!1),Te=i(()=>de([`rbac`],{rbac:{scope:`user:list`}})||L.value),Ee=i(()=>new Map((d.currentProject?.implicitMembers??[]).map(e=>[e.id,e]))),Oe=i(()=>$.value.filter(e=>!(q.value.relations||[]).find(t=>t.id===e.id)&&!Ee.value.has(e.id))),Ae=i(()=>f.processedProjectRoles.find(e=>e.licensed)?.slug),je=i(()=>bt.value||!L.value?[]:[{label:c.baseText(`projects.settings.table.row.removeUser`),value:`remove`,guard:e=>e.id!==s.currentUser?.id&&e.role!==`project:personalOwner`}]),Me=async e=>{if(!d.currentProject||!s.usersById[e])return;let t=Ae.value;if(t){q.value.relations.find(t=>t.id===e)||q.value.relations.push({id:e,role:t});try{J.value=!0,await d.addMember(d.currentProject.id,{userId:e,role:t}),S.showMessage({type:`success`,title:c.baseText(`projects.settings.member.added.title`)}),D.track(`User added member to project`,{project_id:d.currentProject.id,target_user_id:e,role:t})}catch(t){q.value.relations=q.value.relations.filter(t=>t.id!==e),R(t)}}},Ne=async({userId:e,role:t})=>{if(!d.currentProject)return;let n=q.value.relations.findIndex(t=>t.id===e);if(n===-1)return;let r=q.value.relations[n].role;q.value.relations[n].role=t;try{J.value=!0,await d.updateMemberRole(d.currentProject.id,e,t),f.fetchRoles(),S.showMessage({type:`success`,title:c.baseText(`projects.settings.memberRole.updated.title`)}),D.track(`User changed member role on project`,{project_id:d.currentProject.id,target_user_id:e,role:t})}catch(e){q.value.relations[n].role=r,S.showError(e,c.baseText(`projects.settings.memberRole.update.error.title`))}},Pe=()=>{V.value=!0},Fe=m(null);async function Le(e){let t=d.currentProject;if(!t)return;let n=q.value.relations.findIndex(t=>t.id===e);if(n===-1)return;let r=q.value.relations.splice(n,1)[0];if(t.relations.some(t=>t.id===e))try{J.value=!0,await d.removeMember(t.id,e),S.showMessage({type:`success`,title:c.baseText(`projects.settings.member.removed.title`)}),D.track(`User removed member from project`,{project_id:t.id,target_user_id:e})}catch(e){q.value.relations.splice(n,0,r),R(e)}}let Re=async({action:e,userId:t})=>{switch(e){case`remove`:await Le(t);break;default:break}},ze=()=>{q.value.relations=d.currentProject?.relations?ie(d.currentProject.relations):[],q.value.name=d.currentProject?.name??``,q.value.description=d.currentProject?.description??``,q.value.customTelemetryTags=d.currentProject?.customTelemetryTags?ie(d.currentProject.customTelemetryTags):[],Fe.value?.resetTouched(),q.value.defaultPool=d.currentProjectPoolSettings?.defaultPool??null},Be=()=>{let e=d.currentProjectPoolSettings?.defaultPool||null;return(q.value.defaultPool||null)!==e},Ue=()=>{ze(),V.value=!1},We=()=>{let e={};return d.currentProject?(q.value.name!==d.currentProject.name&&(e.name=q.value.name??``),q.value.description!==d.currentProject.description&&(e.description=q.value.description??``),q.value.relations.length!==d.currentProject.relations.length&&(e.memberAdded=q.value.relations.filter(e=>!d.currentProject?.relations.find(t=>t.id===e.id)),e.memberRemoved=d.currentProject.relations.filter(e=>!q.value.relations.find(t=>t.id===e.id))),e.role=q.value.relations.filter(t=>d.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=d.currentProject?.id;e.name&&D.track(`User changed project name`,{project_id:t,name:e.name}),e.memberAdded?.forEach(e=>{D.track(`User added member to project`,{project_id:t,target_user_id:e.id,role:e.role})}),e.memberRemoved?.forEach(e=>{D.track(`User removed member from project`,{project_id:t,target_user_id:e.id})}),e.role?.forEach(e=>{D.track(`User changed member role on project`,{project_id:t,target_user_id:e.id,role:e.role})})},tt=async()=>{if(d.currentProject)try{let e=d.currentProject.id,t=[];t.push(d.updateProject(e,{name:q.value.name??``,description:q.value.description??``,...v.isOtelCustomSpanAttributesEnabled?{customTelemetryTags:q.value.customTelemetryTags}:{}})),st.value&&Be()&&t.push(d.updateCurrentProjectPoolSettings(e,{defaultPool:q.value.defaultPool??``})),await Promise.all(t),V.value=!1}catch(e){throw R(e),e}},nt=async()=>{if(V.value)try{await tt(),et(We()),S.showMessage({title:c.baseText(`projects.settings.save.successful.title`,{interpolate:{projectName:q.value.name??``}}),type:`success`})}catch{}},rt=async()=>{d.currentProjectId&&(K.value=await d.getResourceCounts(d.currentProjectId)),z.value=!0},it=async e=>{try{if(d.currentProject){let t=d.currentProject?.name??``;await d.deleteProject(d.currentProject.id,e),await w.push({name:ae.HOMEPAGE}),S.showMessage({title:c.baseText(`projects.settings.delete.successful.title`,{interpolate:{projectName:t}}),type:`success`}),z.value=!0}}catch(e){S.showError(e,c.baseText(`projects.settings.delete.error.title`))}},at=()=>{q.value.name===c.baseText(`projects.settings.newProjectName`)&&(Y.value?.inputRef?.focus(),Y.value?.inputRef?.select())},ot=async()=>{if(d.currentProject)try{await d.updateProject(d.currentProject.id,{icon:X.value}),S.showMessage({title:c.baseText(`projects.settings.icon.update.successful.title`),type:`success`})}catch(e){R(e)}},st=i(()=>v.isWorkerPoolsEnabled),ct=()=>{q.value.defaultPool=d.currentProjectPoolSettings?.defaultPool??null};C(()=>d.currentProject,async()=>{if(J.value){J.value=!1;return}ze(),await l(),at(),d.currentProject?.icon&&le(d.currentProject.icon)&&(X.value=d.currentProject.icon);let e=d.currentProjectId;N.value&&e&&st.value&&await d.fetchProjectPoolSettings(e).catch(()=>{}).finally(ct)},{immediate:!0});let lt=i(()=>{let e=Ee.value,t=s.currentUser?.id,n=q.value.relations.map(n=>{let r=s.usersById[n.id],i=ye(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:s.usersById[i.id]?.isPendingUser??!1,isCurrentUser:i.id===t,alwaysHasAccess:!0,instanceRole:i.globalRole});return n}),ut=i(()=>{if(!Z.value.trim())return lt.value;let e=Z.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=i(()=>{let e=d.currentProject?.creatorId,t=s.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=i(()=>{let{page:e,itemsPerPage:t}=Q.value,n=e*t;return{items:ft.value.slice(n,n+t),count:ft.value.length}});C(()=>ft.value.length,e=>{let{page:t,itemsPerPage:n}=Q.value;t>0&&t*n>=e&&(Q.value.page=Math.max(0,Math.ceil(e/n)-1))});let mt=i(()=>lt.value.length>=$e);C(mt,e=>{!e&&Z.value&&(Z.value=``)});let ht=e(()=>{Q.value.page=0},ve(P.INPUT.SEARCH)),gt=e=>{Z.value=e,ht()},_t=e=>{Q.value=e},vt=async e=>{be.value=e,we.value=!0;try{let t=d.currentProject?.id;if(!t){$.value=[];return}let n={};e.trim()&&(n.fullText=e),Te.value||(n.projectId=t),await s.fetchUsers({take:50,filter:n}),e.trim()?$.value=s.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=s.allUsers}catch(e){S.showError(e,c.baseText(`projects.settings.users.search.error`))}finally{we.value=!1}},yt=e(vt,ve(P.INPUT.SEARCH));g(async()=>{L.value&&await vt(``)});let bt=i(()=>d.currentProject?.rolesManaged??!1);return u(async()=>{ee.set(c.baseText(`projects.settings`)),!(!N.value&&!L.value)&&(at(),await f.fetchRoles())}),(e,r)=>(_(),a(`div`,{class:y(e.$style.projectSettings),"data-test-id":`project-settings-container`},[k(`div`,{class:y(e.$style.header)},[T(Ce),N.value?(_(),a(`div`,{key:0,class:y(e.$style.headerRow)},[T(n(I),{tag:`h1`,size:`xlarge`,class:`pt-xs pb-m`},{default:O(()=>[t(E(n(c).baseText(`projects.settings.info`)),1)]),_:1}),k(`div`,{class:y(e.$style.headerButtons)},[T(n(j),{variant:`subtle`,"native-type":`button`,disabled:!V.value,class:`mr-2xs`,"data-test-id":`project-settings-cancel-button`,onClick:A(Ue,[`stop`,`prevent`])},{default:O(()=>[t(E(n(c).baseText(`projects.settings.button.cancel`)),1)]),_:1},8,[`disabled`]),T(n(j),{disabled:!pe.value||!V.value,variant:`solid`,"data-test-id":`project-settings-save-button`,onClick:A(nt,[`stop`,`prevent`])},{default:O(()=>[t(E(n(c).baseText(`projects.settings.button.save`)),1)]),_:1},8,[`disabled`])],2)],2)):o(``,!0)],2),k(`form`,{onSubmit:A(nt,[`prevent`])},[N.value?(_(),a(x,{key:0},[k(`fieldset`,null,[k(`label`,Ke,E(n(c).baseText(`projects.settings.name`)),1),k(`div`,{class:y(e.$style.projectName)},[T(n(_e),{modelValue:X.value,"onUpdate:modelValue":[r[0]||=e=>X.value=e,ot],"button-tooltip":n(c).baseText(`projects.settings.iconPicker.button.tooltip`),"show-color-picker":``},null,8,[`modelValue`,`button-tooltip`]),T(n(he),{id:`projectName`,ref_key:`nameInput`,ref:Y,modelValue:q.value.name,"onUpdate:modelValue":r[1]||=e=>q.value.name=e,label:``,type:`text`,name:`name`,required:``,"data-test-id":`project-settings-name-input`,class:y(e.$style.projectNameInput),onEnter:nt,onInput:Pe,onValidate:r[2]||=e=>H.value=e},null,8,[`modelValue`,`class`])],2)]),k(`fieldset`,null,[k(`label`,qe,E(n(c).baseText(`projects.settings.description`)),1),T(n(he),{id:`projectDescription`,modelValue:q.value.description,"onUpdate:modelValue":r[3]||=e=>q.value.description=e,label:``,name:`description`,type:`textarea`,maxlength:512,autosize:!0,"data-test-id":`project-settings-description-input`,class:y(e.$style.projectDescriptionInput),onEnter:nt,onInput:Pe,onValidate:r[4]||=e=>G.value=e},null,8,[`modelValue`,`class`])])],64)):o(``,!0),T(Ve,{class:y(e.$style.externalSecrets)},null,8,[`class`]),N.value||L.value?(_(),a(`fieldset`,Je,[k(`h3`,null,[k(`label`,Ye,E(n(c).baseText(`projects.settings.projectMembers`)),1)]),k(`div`,{class:y([e.$style.membersInputRow,`mb-s`])},[T(n(ge),{id:`projectMembers`,class:y(e.$style.userSelect),size:`large`,users:Oe.value,"current-user-id":n(s).currentUser?.id,placeholder:n(c).baseText(`workflows.shareModal.select.placeholder`),"data-test-id":`project-members-select`,remote:``,"remote-method":n(yt),loading:we.value,disabled:bt.value||!L.value,"onUpdate:modelValue":Me},{prefix:O(()=>[T(n(W),{icon:`search`})]),_:1},8,[`class`,`users`,`current-user-id`,`placeholder`,`remote-method`,`loading`,`disabled`]),mt.value?(_(),h(n(B),{key:0,class:y(e.$style.search),"model-value":Z.value,placeholder:n(c).baseText(`projects.settings.members.search.placeholder`),clearable:``,"data-test-id":`project-members-search`,"onUpdate:modelValue":gt},{prefix:O(()=>[T(n(W),{icon:`search`})]),_:1},8,[`class`,`model-value`,`placeholder`])):o(``,!0)],2),bt.value?(_(),a(`div`,Xe,[T(n(te),{type:`info`,title:n(c).baseText(`settings.projectRolesManaged.description`)},null,8,[`title`])])):o(``,!0),lt.value.length>0?(_(),a(`div`,{key:1,class:y(e.$style.membersTableContainer)},[T(Ie,{"table-options":Q.value,"onUpdate:tableOptions":r[5]||=e=>Q.value=e,"data-test-id":`project-members-table`,data:pt.value,"current-user-id":n(s).currentUser?.id,"project-roles":n(f).processedProjectRoles,actions:je.value,"can-edit-role":!bt.value&&L.value,"onUpdate:options":_t,"onUpdate:role":Ne,onShowRoleUpgradeDialog:r[6]||=e=>se.value=!0,onAction:Re},null,8,[`table-options`,`data`,`current-user-id`,`project-roles`,`actions`,`can-edit-role`])],2)):o(``,!0)])):o(``,!0),N.value?(_(),a(x,{key:2},[n(v).isOtelCustomSpanAttributesEnabled?(_(),a(`fieldset`,Ze,[k(`h3`,null,[k(`label`,null,E(n(c).baseText(`projects.settings.customSpanAttributes.label`)),1)]),T(He,{ref_key:`telemetryTagsRef`,ref:Fe,modelValue:q.value.customTelemetryTags,"onUpdate:modelValue":[r[7]||=e=>q.value.customTelemetryTags=e,Pe],onValidate:r[8]||=e=>fe.value=e},null,8,[`modelValue`])])):o(``,!0),st.value?(_(),h(Ge,{key:1,"default-pool":q.value.defaultPool,"available-pools":n(d).currentProjectPoolSettings?.availablePools??[],"onUpdate:defaultPool":r[9]||=e=>{q.value.defaultPool=e,Pe()}},null,8,[`default-pool`,`available-pools`])):o(``,!0),k(`fieldset`,null,[k(`h3`,Qe,E(n(c).baseText(`projects.settings.danger.title`)),1),k(`small`,{class:y(e.$style.danger)},E(n(c).baseText(`projects.settings.danger.message`)),3),T(n(j),{variant:`subtle`,size:`large`,"native-type":`button`,"data-test-id":`project-settings-delete-button`,onClick:A(rt,[`stop`,`prevent`])},{default:O(()=>[t(E(n(c).baseText(`projects.settings.danger.deleteProject`)),1)]),_:1})])],64)):o(``,!0)],32),T(De,{modelValue:z.value,"onUpdate:modelValue":r[10]||=e=>z.value=e,"current-project":n(d).currentProject,"resource-counts":K.value,onConfirmDelete:it},null,8,[`modelValue`,`current-project`,`resource-counts`]),T(ke,{modelValue:se.value,"onUpdate:modelValue":r[11]||=e=>se.value=e,limit:n(d).teamProjectsLimit,"plan-name":n(p).currentPlanData?.displayName},null,8,[`modelValue`,`limit`,`plan-name`])],2))}}),[[`__cssModules`,{$style:{projectSettings:`_projectSettings_i54mg_1`,header:`_header_i54mg_25`,headerRow:`_headerRow_i54mg_31`,headerButtons:`_headerButtons_i54mg_38`,upgrade:`_upgrade_i54mg_44`,externalSecrets:`_externalSecrets_i54mg_48`,membersInputRow:`_membersInputRow_i54mg_53`,membersTableContainer:`_membersTableContainer_i54mg_61`,search:`_search_i54mg_65`,projectName:`_projectName_i54mg_70`,projectNameInput:`_projectNameInput_i54mg_75`,projectDescriptionInput:`_projectDescriptionInput_i54mg_79`,userSelect:`_userSelect_i54mg_80`,danger:`_danger_i54mg_90`}}]]);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]=`85163f4f-015d-430f-81ba-19894d05e074`,e._sentryDebugIdIdentifier=`sentry-dbid-85163f4f-015d-430f-81ba-19894d05e074`)})()}catch{}import{o as e}from"./rolldown-runtime-BobR2NKB.js";import{Ad as t,Af as n,Cd as r,Dd as i,Ed as a,Kd as o,Nd as s,Od as c,Qf as l,Sf as ee,Td as u,Vd as d,Yd as f,Zd as te,Zf as p,as as ne,bd as re,df as ie,ef as ae,is as m,jd as h,np as g,of as _,uf as v,vu as oe,wd as y}from"./vendor-BBKxcFox.js";import{$C as b,BC as x,B_ as se,GC as S,H_ as ce,I_ as C,Lx as le,Pp as w,Sp as ue,U_ as de,_f as fe,_p as T,aC as E,b_ as pe,cC as D,cu as me,cw as O,ew as k,fC as he,hC as ge,iC as A,id as _e,pf as ve,qC as j,rC as ye,rw as M,tu as N,xy as P,yf as be}from"./app-DVNMq1uL.js";import{i as xe}from"./readyToRun.store-UKxYbyuO.js";import{t as Se}from"./ResourcesListLayout-CRT3aihl.js";import{t as Ce}from"./ProjectHeader-BZQpypks.js";import{t as we}from"./insights.store-5bDCBYwf.js";import{t as Te}from"./InsightsSummary-CQbk0gEv.js";import"./src-BqAC6H6y.js";import{t as F}from"./pickBy-i7zxYSQc.js";var Ee=e(F(),1),De=M(s({__name:`VariablesUsageBadge`,props:{name:{}},setup(e){let i=O(),a=N(),{showMessage:o}=C(),s=e,c=r(()=>`$vars.${s.name}`),l=()=>{a.copy(c.value),o({title:i.baseText(`variables.row.usage.copiedToClipboard`),type:`success`})};return(e,r)=>(f(),u(n(j),{placement:`top`},{content:v(()=>[t(g(n(i).baseText(`variables.row.usage.copyToClipboard`)),1)]),default:v(()=>[y(`span`,{class:`usageSyntax`,onClick:l},g(c.value),1)]),_:1}))}}),[[`__scopeId`,`data-v-ce74e568`]]),Oe={class:`mb-s`},ke={key:0,class:`mb-s`},Ae={"data-test-id":`variables-row`},je={key:0},Me={key:0},Ne={class:`scope-badge`,style:{display:`flex`,"align-items":`center`,gap:`4px`}},Pe={key:1,align:`right`},Fe={class:`action-buttons`},Ie={key:0,class:`mt-xs`},I=M(s({__name:`ProjectVariables`,setup(e){let s=de(),M=ve(),N=ce(),F=ue(),I=se(),L=O(),Le=le(),Re=be(),R=m(),ze=ne(),z=we(),Be=xe(),B=fe(),Ve=_(`layoutRef`),{showError:He,showMessage:Ue}=C(),V=R.params.projectId,H=r(()=>P(N.currentUser?.globalScopes).variable),U=r(()=>P(B.currentProject?.scopes).projectVariable),{isLoading:We,execute:Ge}=oe(M.fetchAllVariables,[],{immediate:!0}),W=r(()=>s.isEnterpriseFeatureEnabled[pe.Variables]),Ke=()=>{F.openModalWithData({name:w,data:{mode:`new`}}),I.track(`User clicked add variable button`)},qe=e=>{F.openModalWithData({name:w,data:{mode:`edit`,variable:e}})},Je=r(()=>M.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=r(()=>M.variables.filter(e=>!e.project)),K=r(()=>W.value&&(H.value.create??U.value.create)),Ye=r(()=>{let e=[{id:0,path:`name`,label:L.baseText(`variables.table.key`),classes:[`variables-key-column`]},{id:1,path:`value`,label:L.baseText(`variables.table.value`),classes:[`variables-value-column`]},{id:2,path:`usage`,label:L.baseText(`variables.table.usage`),classes:[`variables-usage-column`]}];return V||e.push({id:3,path:`project`,label:L.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 Le.confirm(L.baseText(`variables.modals.deleteConfirm.message`,{interpolate:{name:e.key}}),L.baseText(`variables.modals.deleteConfirm.title`),{confirmButtonText:L.baseText(`variables.modals.deleteConfirm.confirmButton`),cancelButtonText:L.baseText(`variables.modals.deleteConfirm.cancelButton`)})!==`confirm`)return;await M.deleteVariable({id:e.id,value:e.value,key:e.key}),Ue({title:L.baseText(`variables.delete.successful.message`,{interpolate:{variableName:e.key}}),type:`success`})}catch(e){He(e,L.baseText(`variables.errors.delete`))}},q=e=>{ze.replace({query:(0,Ee.default)(e)})},J=ee({...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(!T(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=r(()=>{let e=[{value:`global`,label:L.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=r(()=>X.value.find(e=>e.value===J.value.projectId)?.icon??{type:`icon`,value:`database`});function et(){me().goToUpgrade(`variables`,`upgrade-variables`)}function Q(e){return e.key}Re.$onAction(({name:e,after:t})=>{e===`pullWorkfolder`&&t&&t(()=>{Ge()})});let $=r(()=>({heading:L.baseText(F.contextBasedTranslationKeys.variables.unavailable.title),description:L.baseText(F.contextBasedTranslationKeys.variables.unavailable.description),buttonText:L.baseText(F.contextBasedTranslationKeys.variables.unavailable.button),buttonType:`secondary`,"onClick:button":et,"data-test-id":`unavailable-resources-list`}));return o(()=>{_e().set(L.baseText(`variables.heading`))}),(e,r)=>{let o=ae(`n8n-truncate`);return f(),u(Se,{ref_key:`layoutRef`,ref:Ve,filters:J.value,"onUpdate:filters":[r[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:n(We),"onUpdate:search":Ze,"onClick:add":Ke},c({header:v(()=>[h(Ce,{"main-button":`variable`},{default:v(()=>[n(Be).isOverviewSubPage&&n(z).isSummaryEnabled?(f(),u(n(Te),{key:0,loading:n(z).weeklySummary.isLoading,summary:n(z).weeklySummary.state,"time-range":`week`},null,8,[`loading`,`summary`])):a(``,!0)]),_:1})]),filters:v(({setKeyValue:o})=>[y(`div`,Oe,[h(n(A),{label:n(L).baseText(`credentials.filters.status`),bold:!1,size:`small`,color:`text-base`,class:`mb-3xs`},null,8,[`label`]),h(n(E),{label:`Value missing`,"data-test-id":`variable-filter-incomplete`,"model-value":J.value.incomplete,"onUpdate:modelValue":e=>o(`incomplete`,e)},null,8,[`model-value`,`onUpdate:modelValue`])]),n(V)?a(``,!0):(f(),i(`div`,ke,[h(n(A),{label:n(L).baseText(`forms.resourceFiltersDropdown.owner`),bold:!1,size:`small`,color:`text-base`,class:`mb-3xs`},null,8,[`label`]),h(n(he),{modelValue:J.value.projectId,"onUpdate:modelValue":[r[0]||=e=>J.value.projectId=e,e=>o(`projectId`,e)],size:`large`,filterable:``,"data-test-id":`variable-modal-scope-select`},{prefix:v(()=>[Z.value?.type===`emoji`?(f(),u(n(S),{key:0,class:p(e.$style.menuItemEmoji)},{default:v(()=>[t(g(Z.value?.value),1)]),_:1},8,[`class`])):Z.value?.value?(f(),u(n(k),{key:1,icon:Z.value.value},null,8,[`icon`])):a(``,!0)]),default:v(()=>[(f(!0),i(re,null,te(X.value,r=>(f(),u(n(ge),{key:r.value||`global`,value:r.value,label:r.label,class:p({[e.$style.globalOption]:r.value===`global`})},{default:v(()=>[y(`div`,{class:p(e.$style.optionContent)},[r.icon&&r.icon?.type===`emoji`?(f(),u(n(S),{key:0,class:p(e.$style.menuItemEmoji)},{default:v(()=>[t(g(r.icon.value),1)]),_:2},1032,[`class`])):r.icon?.value?(f(),u(n(k),{key:1,icon:r.icon.value},null,8,[`icon`])):a(``,!0),y(`span`,null,g(r.label),1)],2)]),_:2},1032,[`value`,`label`,`class`]))),128))]),_:1},8,[`modelValue`,`onUpdate:modelValue`])]))]),default:v(({data:e})=>[y(`tr`,Ae,[y(`td`,null,g(e.key),1),y(`td`,null,[e.value?ie((f(),i(`span`,je,null,512)),[[o,e.value,`20`]]):(f(),u(n(x),{key:1,variant:`warning`},{default:v(()=>[...r[2]||=[t(` Value missing `,-1)]]),_:1}))]),y(`td`,null,[e.key?(f(),u(De,{key:0,name:e.key},null,8,[`name`])):a(``,!0)]),n(V)?a(``,!0):(f(),i(`td`,Me,[h(n(x),null,{default:v(()=>[y(`div`,Ne,[e.project?(f(),u(n(k),{key:0,icon:`layers`})):a(``,!0),t(` `+g(e.project?.name??n(L).baseText(`variables.table.scope.global`)),1)])]),_:2},1024)])),W.value?(f(),i(`td`,Pe,[y(`div`,Fe,[h(n(j),{disabled:H.value.update??U.value.update,placement:`top`},{content:v(()=>[t(g(n(L).baseText(`variables.row.button.edit.onlyRoleCanEdit`)),1)]),default:v(()=>[h(n(b),{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:v(()=>[t(g(n(L).baseText(`variables.row.button.edit`)),1)]),_:1},8,[`disabled`,`onClick`])]),_:2},1032,[`disabled`]),h(n(j),{disabled:H.value.delete??U.value.delete,placement:`top`},{content:v(()=>[t(g(n(L).baseText(`variables.row.button.delete.onlyRoleCanDelete`)),1)]),default:v(()=>[h(n(b),{variant:`subtle`,size:`small`,"data-test-id":`variable-row-delete-button`,disabled:!(H.value.delete??U.value.delete),onClick:t=>Xe(e)},{default:v(()=>[t(g(n(L).baseText(`variables.row.button.delete`)),1)]),_:1},8,[`disabled`,`onClick`])]),_:2},1032,[`disabled`])])])):a(``,!0)])]),postdata:v(()=>[n(V)&&G.value.length?(f(),i(`div`,Ie,[n(V)?(f(),u(n(S),{key:0,size:`small`},{default:v(()=>[h(n(ye),{href:`/home/variables`,theme:`text`,size:`small`},{default:v(()=>[t(g(G.value.length)+` global variables `,1)]),_:1}),r[3]||=t(` available in this project `,-1)]),_:1})):a(``,!0)])):a(``,!0)]),_:2},[W.value?void 0:{name:`preamble`,fn:v(()=>[h(n(D),d({class:`mb-m`},$.value),null,16)]),key:`0`},!W.value||W.value&&!K.value?{name:`empty`,fn:v(()=>[W.value?K.value?a(``,!0):(f(),u(n(D),{key:1,"data-test-id":`cannot-create-variables`,heading:n(L).baseText(`variables.empty.notAllowedToCreate.heading`,{interpolate:{name:n(N).currentUser?.firstName??``}}),description:n(L).baseText(`variables.empty.notAllowedToCreate.description`)},null,8,[`heading`,`description`])):(f(),u(n(D),l(d({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{I 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]=`85163f4f-015d-430f-81ba-19894d05e074`,e._sentryDebugIdIdentifier=`sentry-dbid-85163f4f-015d-430f-81ba-19894d05e074`)})()}catch{}import{o as e}from"./rolldown-runtime-BobR2NKB.js";import{Ad as t,Af as n,Cd as r,Dd as i,Ed as a,Kd as o,Nd as s,Od as c,Qf as l,Sf as ee,Td as u,Vd as d,Yd as f,Zd as te,Zf as p,as as ne,bd as re,df as ie,ef as ae,is as m,jd as h,np as g,of as _,uf as v,vu as oe,wd as y}from"./vendor-BBKxcFox.js";import{$C as b,BC as x,B_ as se,GC as S,H_ as ce,I_ as C,Lx as le,Pp as w,Sp as ue,U_ as de,_f as fe,_p as T,aC as E,b_ as pe,cC as D,cu as me,cw as O,ew as k,fC as he,hC as ge,iC as A,id as _e,pf as ve,qC as j,rC as ye,rw as M,tu as N,xy as P,yf as be}from"./app-D5iNDcFq.js";import{i as xe}from"./readyToRun.store-Bd-_vQmA.js";import{t as Se}from"./ResourcesListLayout-K_jbq4UU.js";import{t as Ce}from"./ProjectHeader-CkcbjQmz.js";import{t as we}from"./insights.store-BG6EODoT.js";import{t as Te}from"./InsightsSummary-Nnuc_edM.js";import"./src-Cs8NRkVY.js";import{t as F}from"./pickBy-i7zxYSQc.js";var Ee=e(F(),1),De=M(s({__name:`VariablesUsageBadge`,props:{name:{}},setup(e){let i=O(),a=N(),{showMessage:o}=C(),s=e,c=r(()=>`$vars.${s.name}`),l=()=>{a.copy(c.value),o({title:i.baseText(`variables.row.usage.copiedToClipboard`),type:`success`})};return(e,r)=>(f(),u(n(j),{placement:`top`},{content:v(()=>[t(g(n(i).baseText(`variables.row.usage.copyToClipboard`)),1)]),default:v(()=>[y(`span`,{class:`usageSyntax`,onClick:l},g(c.value),1)]),_:1}))}}),[[`__scopeId`,`data-v-ce74e568`]]),Oe={class:`mb-s`},ke={key:0,class:`mb-s`},Ae={"data-test-id":`variables-row`},je={key:0},Me={key:0},Ne={class:`scope-badge`,style:{display:`flex`,"align-items":`center`,gap:`4px`}},Pe={key:1,align:`right`},Fe={class:`action-buttons`},Ie={key:0,class:`mt-xs`},I=M(s({__name:`ProjectVariables`,setup(e){let s=de(),M=ve(),N=ce(),F=ue(),I=se(),L=O(),Le=le(),Re=be(),R=m(),ze=ne(),z=we(),Be=xe(),B=fe(),Ve=_(`layoutRef`),{showError:He,showMessage:Ue}=C(),V=R.params.projectId,H=r(()=>P(N.currentUser?.globalScopes).variable),U=r(()=>P(B.currentProject?.scopes).projectVariable),{isLoading:We,execute:Ge}=oe(M.fetchAllVariables,[],{immediate:!0}),W=r(()=>s.isEnterpriseFeatureEnabled[pe.Variables]),Ke=()=>{F.openModalWithData({name:w,data:{mode:`new`}}),I.track(`User clicked add variable button`)},qe=e=>{F.openModalWithData({name:w,data:{mode:`edit`,variable:e}})},Je=r(()=>M.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=r(()=>M.variables.filter(e=>!e.project)),K=r(()=>W.value&&(H.value.create??U.value.create)),Ye=r(()=>{let e=[{id:0,path:`name`,label:L.baseText(`variables.table.key`),classes:[`variables-key-column`]},{id:1,path:`value`,label:L.baseText(`variables.table.value`),classes:[`variables-value-column`]},{id:2,path:`usage`,label:L.baseText(`variables.table.usage`),classes:[`variables-usage-column`]}];return V||e.push({id:3,path:`project`,label:L.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 Le.confirm(L.baseText(`variables.modals.deleteConfirm.message`,{interpolate:{name:e.key}}),L.baseText(`variables.modals.deleteConfirm.title`),{confirmButtonText:L.baseText(`variables.modals.deleteConfirm.confirmButton`),cancelButtonText:L.baseText(`variables.modals.deleteConfirm.cancelButton`)})!==`confirm`)return;await M.deleteVariable({id:e.id,value:e.value,key:e.key}),Ue({title:L.baseText(`variables.delete.successful.message`,{interpolate:{variableName:e.key}}),type:`success`})}catch(e){He(e,L.baseText(`variables.errors.delete`))}},q=e=>{ze.replace({query:(0,Ee.default)(e)})},J=ee({...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(!T(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=r(()=>{let e=[{value:`global`,label:L.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=r(()=>X.value.find(e=>e.value===J.value.projectId)?.icon??{type:`icon`,value:`database`});function et(){me().goToUpgrade(`variables`,`upgrade-variables`)}function Q(e){return e.key}Re.$onAction(({name:e,after:t})=>{e===`pullWorkfolder`&&t&&t(()=>{Ge()})});let $=r(()=>({heading:L.baseText(F.contextBasedTranslationKeys.variables.unavailable.title),description:L.baseText(F.contextBasedTranslationKeys.variables.unavailable.description),buttonText:L.baseText(F.contextBasedTranslationKeys.variables.unavailable.button),buttonType:`secondary`,"onClick:button":et,"data-test-id":`unavailable-resources-list`}));return o(()=>{_e().set(L.baseText(`variables.heading`))}),(e,r)=>{let o=ae(`n8n-truncate`);return f(),u(Se,{ref_key:`layoutRef`,ref:Ve,filters:J.value,"onUpdate:filters":[r[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:n(We),"onUpdate:search":Ze,"onClick:add":Ke},c({header:v(()=>[h(Ce,{"main-button":`variable`},{default:v(()=>[n(Be).isOverviewSubPage&&n(z).isSummaryEnabled?(f(),u(n(Te),{key:0,loading:n(z).weeklySummary.isLoading,summary:n(z).weeklySummary.state,"time-range":`week`},null,8,[`loading`,`summary`])):a(``,!0)]),_:1})]),filters:v(({setKeyValue:o})=>[y(`div`,Oe,[h(n(A),{label:n(L).baseText(`credentials.filters.status`),bold:!1,size:`small`,color:`text-base`,class:`mb-3xs`},null,8,[`label`]),h(n(E),{label:`Value missing`,"data-test-id":`variable-filter-incomplete`,"model-value":J.value.incomplete,"onUpdate:modelValue":e=>o(`incomplete`,e)},null,8,[`model-value`,`onUpdate:modelValue`])]),n(V)?a(``,!0):(f(),i(`div`,ke,[h(n(A),{label:n(L).baseText(`forms.resourceFiltersDropdown.owner`),bold:!1,size:`small`,color:`text-base`,class:`mb-3xs`},null,8,[`label`]),h(n(he),{modelValue:J.value.projectId,"onUpdate:modelValue":[r[0]||=e=>J.value.projectId=e,e=>o(`projectId`,e)],size:`large`,filterable:``,"data-test-id":`variable-modal-scope-select`},{prefix:v(()=>[Z.value?.type===`emoji`?(f(),u(n(S),{key:0,class:p(e.$style.menuItemEmoji)},{default:v(()=>[t(g(Z.value?.value),1)]),_:1},8,[`class`])):Z.value?.value?(f(),u(n(k),{key:1,icon:Z.value.value},null,8,[`icon`])):a(``,!0)]),default:v(()=>[(f(!0),i(re,null,te(X.value,r=>(f(),u(n(ge),{key:r.value||`global`,value:r.value,label:r.label,class:p({[e.$style.globalOption]:r.value===`global`})},{default:v(()=>[y(`div`,{class:p(e.$style.optionContent)},[r.icon&&r.icon?.type===`emoji`?(f(),u(n(S),{key:0,class:p(e.$style.menuItemEmoji)},{default:v(()=>[t(g(r.icon.value),1)]),_:2},1032,[`class`])):r.icon?.value?(f(),u(n(k),{key:1,icon:r.icon.value},null,8,[`icon`])):a(``,!0),y(`span`,null,g(r.label),1)],2)]),_:2},1032,[`value`,`label`,`class`]))),128))]),_:1},8,[`modelValue`,`onUpdate:modelValue`])]))]),default:v(({data:e})=>[y(`tr`,Ae,[y(`td`,null,g(e.key),1),y(`td`,null,[e.value?ie((f(),i(`span`,je,null,512)),[[o,e.value,`20`]]):(f(),u(n(x),{key:1,variant:`warning`},{default:v(()=>[...r[2]||=[t(` Value missing `,-1)]]),_:1}))]),y(`td`,null,[e.key?(f(),u(De,{key:0,name:e.key},null,8,[`name`])):a(``,!0)]),n(V)?a(``,!0):(f(),i(`td`,Me,[h(n(x),null,{default:v(()=>[y(`div`,Ne,[e.project?(f(),u(n(k),{key:0,icon:`layers`})):a(``,!0),t(` `+g(e.project?.name??n(L).baseText(`variables.table.scope.global`)),1)])]),_:2},1024)])),W.value?(f(),i(`td`,Pe,[y(`div`,Fe,[h(n(j),{disabled:H.value.update??U.value.update,placement:`top`},{content:v(()=>[t(g(n(L).baseText(`variables.row.button.edit.onlyRoleCanEdit`)),1)]),default:v(()=>[h(n(b),{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:v(()=>[t(g(n(L).baseText(`variables.row.button.edit`)),1)]),_:1},8,[`disabled`,`onClick`])]),_:2},1032,[`disabled`]),h(n(j),{disabled:H.value.delete??U.value.delete,placement:`top`},{content:v(()=>[t(g(n(L).baseText(`variables.row.button.delete.onlyRoleCanDelete`)),1)]),default:v(()=>[h(n(b),{variant:`subtle`,size:`small`,"data-test-id":`variable-row-delete-button`,disabled:!(H.value.delete??U.value.delete),onClick:t=>Xe(e)},{default:v(()=>[t(g(n(L).baseText(`variables.row.button.delete`)),1)]),_:1},8,[`disabled`,`onClick`])]),_:2},1032,[`disabled`])])])):a(``,!0)])]),postdata:v(()=>[n(V)&&G.value.length?(f(),i(`div`,Ie,[n(V)?(f(),u(n(S),{key:0,size:`small`},{default:v(()=>[h(n(ye),{href:`/home/variables`,theme:`text`,size:`small`},{default:v(()=>[t(g(G.value.length)+` global variables `,1)]),_:1}),r[3]||=t(` available in this project `,-1)]),_:1})):a(``,!0)])):a(``,!0)]),_:2},[W.value?void 0:{name:`preamble`,fn:v(()=>[h(n(D),d({class:`mb-m`},$.value),null,16)]),key:`0`},!W.value||W.value&&!K.value?{name:`empty`,fn:v(()=>[W.value?K.value?a(``,!0):(f(),u(n(D),{key:1,"data-test-id":`cannot-create-variables`,heading:n(L).baseText(`variables.empty.notAllowedToCreate.heading`,{interpolate:{name:n(N).currentUser?.firstName??``}}),description:n(L).baseText(`variables.empty.notAllowedToCreate.description`)},null,8,[`heading`,`description`])):(f(),u(n(D),l(d({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{I as default};
|