UNPKG

n8n-editor-ui

Version:

Workflow Editor UI for n8n

2 lines 13.9 kB
(function(){try{var e=typeof window<`u`?window:typeof global<`u`?global:typeof globalThis<`u`?globalThis:typeof self<`u`?self:{};e.SENTRY_RELEASE={id:`n8n@2.16.1`}}catch{}})();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]=`86af8926-1ff1-4a17-935b-2c941584b0a3`,e._sentryDebugIdIdentifier=`sentry-dbid-86af8926-1ff1-4a17-935b-2c941584b0a3`)})()}catch{}import{$ as e,A as t,C as n,E as r,Ft as i,N as a,Nt as o,S as s,Sn as c,T as l,Wt as u,X as d,_n as f,gt as p,j as m,w as h,yt as g}from"./vue.runtime.esm-bundler-C3C09Zii.js";import{at as ee,ot as _}from"./core-Bz5WjPxS.js";import{Di as te,Ji as v,Pi as y,R as b,Yi as x,Zi as S,dt as C,et as w,yt as ne}from"./src-XqE2yCpG.js";import{t as T}from"./_plugin-vue_export-helper-CIL7EULb.js";import{Ln as re,Pn as E,Rt as D,dr as O,oi as k}from"./users.store-xP93bV7X.js";import"./constants-DuQbSl-q.js";import{t as A}from"./usePageRedirectionHelper-CC6sh9o0.js";import{t as j}from"./CopyInput-Diu7JJOl.js";var M={key:0,"data-test-id":`source-control-content-licensed`},N=[`href`],P={for:`connectionType`},F={for:`repoUrl`},I={for:`httpsUsername`},L={for:`httpsPassword`},R=[`href`],z={key:5,"data-test-id":`source-control-connected-content`},B=[`href`],V=T(a({__name:`SettingsSourceControl`,setup(a){let T=ee(),V=k(),H=A(),U=E(),W=re(),G=D(),K=O(),q=i(!1),J=i(`ssh`),Y=i(``),X=i(``),ie=s(()=>V.preferences.branches.map(e=>({value:e,label:e}))),ae=[{value:`ssh`,label:`SSH`},{value:`https`,label:`HTTPS`}],oe=async()=>{K.startLoading(),K.setLoadingText(T.baseText(`settings.sourceControl.loading.connecting`));try{let e={repositoryUrl:V.preferences.repositoryUrl,connectionType:J.value};J.value===`https`&&(e.httpsUsername=Y.value,e.httpsPassword=X.value),await V.savePreferences(e),await V.getBranches(),q.value=!0,U.showMessage({title:T.baseText(`settings.sourceControl.toast.connected.title`),message:T.baseText(`settings.sourceControl.toast.connected.message`),type:`success`})}catch(e){U.showError(e,T.baseText(`settings.sourceControl.toast.connected.error`))}K.stopLoading()},se=async()=>{try{await W.confirm(T.baseText(`settings.sourceControl.modals.disconnect.message`),T.baseText(`settings.sourceControl.modals.disconnect.title`),{confirmButtonText:T.baseText(`settings.sourceControl.modals.disconnect.confirm`),cancelButtonText:T.baseText(`settings.sourceControl.modals.disconnect.cancel`)})===`confirm`&&(K.startLoading(),await V.disconnect(!0),q.value=!1,Y.value=``,X.value=``,U.showMessage({title:T.baseText(`settings.sourceControl.toast.disconnected.title`),message:T.baseText(`settings.sourceControl.toast.disconnected.message`),type:`success`}))}catch(e){U.showError(e,T.baseText(`settings.sourceControl.toast.disconnected.error`))}K.stopLoading()},ce=async()=>{K.startLoading();try{await V.updatePreferences({branchName:V.preferences.branchName,branchReadOnly:V.preferences.branchReadOnly,branchColor:V.preferences.branchColor}),U.showMessage({title:T.baseText(`settings.sourceControl.saved.title`),type:`success`})}catch(e){U.showError(e,T.baseText(`settings.sourceControl.saved.error`))}K.stopLoading()},le=e=>{e!==V.preferences.branchName&&(V.preferences.branchName=e)},ue=()=>{H.goToUpgrade(`source-control`,`upgrade-source-control`)},de=async()=>{await V.getPreferences(),V.preferences.connected&&(q.value=!0,J.value=V.preferences.connectionType||`ssh`,V.getBranches())};d(async()=>{G.set(T.baseText(`settings.sourceControl.title`)),V.isEnterpriseSourceControlEnabled&&await de()});let Z=o({repoUrl:!1,keyGeneratorType:!1,httpsUsername:!1,httpsPassword:!1});function Q(e,t){Z[e]=t}let fe=s(()=>{let e=[{name:`REQUIRED`}];return J.value===`ssh`?e.push({name:`MATCH_REGEX`,config:{regex:/^(?:git@|ssh:\/\/git@|[\w.-]+@)(?:[\w.-]+|\[[0-9a-fA-F:]+])(?::\d+)?[:\/][\w\-~.]+(?:\/[\w\-~.]+)*(?:\.git)?(?:\/.*)?$/,message:T.baseText(`settings.sourceControl.repoUrlInvalid`)}}):e.push({name:`MATCH_REGEX`,config:{regex:/^https:\/\/.+$/,message:T.baseText(`settings.sourceControl.enterValidHttpsUrl`)}}),e}),pe=[{name:`REQUIRED`}],$=[{name:`REQUIRED`}],me=s(()=>J.value===`ssh`?Z.repoUrl:Z.repoUrl&&Z.httpsUsername&&Z.httpsPassword),he=[{name:`REQUIRED`}];async function ge(){try{await W.confirm(T.baseText(`settings.sourceControl.modals.refreshSshKey.message`),T.baseText(`settings.sourceControl.modals.refreshSshKey.title`),{confirmButtonText:T.baseText(`settings.sourceControl.modals.refreshSshKey.confirm`),cancelButtonText:T.baseText(`settings.sourceControl.modals.refreshSshKey.cancel`)})===`confirm`&&(await V.generateKeyPair(V.preferences.keyGeneratorType),U.showMessage({title:T.baseText(`settings.sourceControl.refreshSshKey.successful.title`),type:`success`}))}catch(e){U.showError(e,T.baseText(`settings.sourceControl.refreshSshKey.error.title`))}}let _e=async()=>{try{await V.getBranches(),U.showMessage({title:T.baseText(`settings.sourceControl.refreshBranches.success`),type:`success`})}catch(e){U.showError(e,T.baseText(`settings.sourceControl.refreshBranches.error`))}},ve=e=>{let t=e;t!==V.preferences.keyGeneratorType&&(V.preferences.keyGeneratorType=t)};return p(J,()=>{Z.repoUrl=!1,Z.httpsUsername=!1,Z.httpsPassword=!1,q.value||(V.preferences.repositoryUrl=``)}),(i,a)=>(e(),r(`div`,null,[m(u(v),{size:`2xlarge`,tag:`h1`},{default:g(()=>[t(c(u(T).baseText(`settings.sourceControl.title`)),1)]),_:1}),u(V).isEnterpriseSourceControlEnabled?(e(),r(`div`,M,[m(u(x),{theme:`secondary`,icon:`info`,class:`mt-2xl mb-l`},{default:g(()=>[m(u(_),{keypath:`settings.sourceControl.description`,tag:`span`,scope:`global`},{link:g(()=>[n(`a`,{href:u(T).baseText(`settings.sourceControl.docs.url`),target:`_blank`},c(u(T).baseText(`settings.sourceControl.description.link`)),9,N)]),_:1})]),_:1}),m(u(v),{size:`xlarge`,tag:`h2`,class:`mb-s`},{default:g(()=>[t(c(u(T).baseText(`settings.sourceControl.gitConfig`)),1)]),_:1}),q.value?l(``,!0):(e(),r(`div`,{key:0,class:f(i.$style.group)},[n(`label`,P,c(u(T).baseText(`settings.sourceControl.connectionType`)),1),m(u(w),{id:`connectionType`,modelValue:J.value,"onUpdate:modelValue":a[0]||=e=>J.value=e,label:``,type:`select`,name:`connectionType`,options:ae,"data-test-id":`source-control-connection-type-select`},null,8,[`modelValue`])],2)),n(`div`,{class:f(i.$style.group)},[n(`label`,F,c(J.value===`ssh`?u(T).baseText(`settings.sourceControl.sshRepoUrl`):u(T).baseText(`settings.sourceControl.httpsRepoUrl`)),1),n(`div`,{class:f(i.$style.groupFlex)},[m(u(w),{id:`repoUrl`,modelValue:u(V).preferences.repositoryUrl,"onUpdate:modelValue":a[1]||=e=>u(V).preferences.repositoryUrl=e,label:``,class:`ml-0`,name:`repoUrl`,"validate-on-blur":``,"validation-rules":fe.value,disabled:q.value,placeholder:J.value===`ssh`?u(T).baseText(`settings.sourceControl.sshRepoUrlPlaceholder`):u(T).baseText(`settings.sourceControl.httpsRepoUrlPlaceholder`),onValidate:a[2]||=e=>Q(`repoUrl`,e)},null,8,[`modelValue`,`validation-rules`,`disabled`,`placeholder`]),q.value?(e(),h(u(S),{key:0,variant:`subtle`,class:f(i.$style.disconnectButton),size:`large`,icon:`trash-2`,"data-test-id":`source-control-disconnect-button`,onClick:se},{default:g(()=>[t(c(u(T).baseText(`settings.sourceControl.button.disconnect`)),1)]),_:1},8,[`class`])):l(``,!0)],2),!q.value&&J.value===`ssh`?(e(),h(u(b),{key:0,type:`info`,class:`mt-s`},{default:g(()=>[t(c(u(T).baseText(`settings.sourceControl.sshFormatNotice`)),1)]),_:1})):l(``,!0),!q.value&&J.value===`https`?(e(),h(u(b),{key:1,type:`info`,class:`mt-s`},{default:g(()=>[t(c(u(T).baseText(`settings.sourceControl.httpsFormatNotice`)),1)]),_:1})):l(``,!0)],2),J.value===`https`&&!q.value?(e(),r(`div`,{key:1,class:f(i.$style.group)},[n(`label`,I,c(u(T).baseText(`settings.sourceControl.httpsUsername`)),1),m(u(w),{id:`httpsUsername`,modelValue:Y.value,"onUpdate:modelValue":a[3]||=e=>Y.value=e,label:``,name:`httpsUsername`,type:`text`,"validate-on-blur":``,"validation-rules":$,placeholder:u(T).baseText(`settings.sourceControl.httpsUsernamePlaceholder`),onValidate:a[4]||=e=>Q(`httpsUsername`,e)},null,8,[`modelValue`,`placeholder`])],2)):l(``,!0),J.value===`https`&&!q.value?(e(),r(`div`,{key:2,class:f(i.$style.group)},[n(`label`,L,c(u(T).baseText(`settings.sourceControl.httpsPersonalAccessToken`)),1),m(u(w),{id:`httpsPassword`,modelValue:X.value,"onUpdate:modelValue":a[5]||=e=>X.value=e,label:``,name:`httpsPassword`,type:`password`,"validate-on-blur":``,"validation-rules":$,placeholder:u(T).baseText(`settings.sourceControl.httpsPersonalAccessTokenPlaceholder`),onValidate:a[6]||=e=>Q(`httpsPassword`,e)},null,8,[`modelValue`,`placeholder`]),m(u(b),{type:`warning`,class:`mt-s`},{default:g(()=>[m(u(_),{keypath:`settings.sourceControl.httpsWarningNotice`,tag:`span`,scope:`global`},{strong:g(()=>[n(`strong`,null,c(u(T).baseText(`settings.sourceControl.httpsWarningNotice.strong`)),1)]),repo:g(()=>[...a[11]||=[n(`code`,null,`repo`,-1)]]),publicRepo:g(()=>[...a[12]||=[n(`code`,null,`public_repo`,-1)]]),_:1})]),_:1})],2)):l(``,!0),J.value===`ssh`&&u(V).preferences.publicKey?(e(),r(`div`,{key:3,class:f(i.$style.group)},[n(`label`,null,c(u(T).baseText(`settings.sourceControl.sshKey`)),1),n(`div`,{class:f({[i.$style.sshInput]:!q.value})},[q.value?l(``,!0):(e(),h(u(w),{key:0,id:`keyGeneratorType`,class:f(i.$style.sshKeyTypeSelect),label:``,type:`select`,name:`keyGeneratorType`,"data-test-id":`source-control-ssh-key-type-select`,"validate-on-blur":``,"validation-rules":pe,options:u(V).sshKeyTypesWithLabel,"model-value":u(V).preferences.keyGeneratorType,onValidate:a[7]||=e=>Q(`keyGeneratorType`,e),"onUpdate:modelValue":ve},null,8,[`class`,`options`,`model-value`])),m(j,{class:f(i.$style.copyInput),collapse:``,size:`medium`,value:u(V).preferences.publicKey,"copy-button-text":u(T).baseText(`generic.clickToCopy`)},null,8,[`class`,`value`,`copy-button-text`]),q.value?l(``,!0):(e(),h(u(S),{key:1,variant:`subtle`,size:`large`,icon:`refresh-cw`,"data-test-id":`source-control-refresh-ssh-key-button`,onClick:ge},{default:g(()=>[t(c(u(T).baseText(`settings.sourceControl.refreshSshKey`)),1)]),_:1}))],2),m(u(b),{type:`info`,class:`mt-s`},{default:g(()=>[m(u(_),{keypath:`settings.sourceControl.sshKeyDescription`,tag:`span`,scope:`global`},{link:g(()=>[n(`a`,{href:u(T).baseText(`settings.sourceControl.docs.setup.ssh.url`),target:`_blank`},c(u(T).baseText(`settings.sourceControl.sshKeyDescriptionLink`)),9,R)]),_:1})]),_:1})],2)):l(``,!0),q.value?l(``,!0):(e(),h(u(S),{key:4,size:`large`,disabled:!me.value,class:f(i.$style.connect),"data-test-id":`source-control-connect-button`,onClick:oe},{default:g(()=>[t(c(u(T).baseText(`settings.sourceControl.button.connect`)),1)]),_:1},8,[`disabled`,`class`])),q.value?(e(),r(`div`,z,[n(`div`,{class:f(i.$style.group)},[a[13]||=n(`hr`,null,null,-1),m(u(v),{size:`xlarge`,tag:`h2`,class:`mb-s`},{default:g(()=>[t(c(u(T).baseText(`settings.sourceControl.instanceSettings`)),1)]),_:1}),n(`label`,null,c(u(T).baseText(`settings.sourceControl.branches`)),1),n(`div`,{class:f(i.$style.branchSelection)},[m(u(w),{id:`branchName`,label:``,type:`select`,name:`branchName`,class:`mb-s`,"data-test-id":`source-control-branch-select`,"validate-on-blur":``,"validation-rules":he,options:ie.value,"model-value":u(V).preferences.branchName,onValidate:a[8]||=e=>Q(`branchName`,e),"onUpdate:modelValue":le},null,8,[`options`,`model-value`]),m(u(te),{placement:`top`},{content:g(()=>[n(`span`,null,c(u(T).baseText(`settings.sourceControl.refreshBranches.tooltip`)),1)]),default:g(()=>[m(u(S),{variant:`subtle`,iconOnly:``,size:`xlarge`,icon:`refresh-cw`,"aria-label":u(T).baseText(`generic.refresh`),"data-test-id":`source-control-refresh-branches-button`,class:f(i.$style.refreshBranches),onClick:_e},null,8,[`aria-label`,`class`])]),_:1})],2),m(u(C),{modelValue:u(V).preferences.branchReadOnly,"onUpdate:modelValue":a[9]||=e=>u(V).preferences.branchReadOnly=e,class:f(i.$style.readOnly),"data-test-id":`source-control-read-only-checkbox`},{label:g(()=>[m(u(_),{keypath:`settings.sourceControl.protected`,tag:`span`,scope:`global`},{bold:g(()=>[n(`strong`,null,c(u(T).baseText(`settings.sourceControl.protected.bold`)),1)]),_:1})]),_:1},8,[`modelValue`,`class`])],2),n(`div`,{class:f(i.$style.group)},[n(`label`,null,c(u(T).baseText(`settings.sourceControl.color`)),1),n(`div`,null,[m(u(ne),{modelValue:u(V).preferences.branchColor,"onUpdate:modelValue":a[10]||=e=>u(V).preferences.branchColor=e,size:`small`},null,8,[`modelValue`])])],2),n(`div`,{class:f([i.$style.group,`pt-s`])},[m(u(S),{size:`large`,disabled:!u(V).preferences.branchName,"data-test-id":`source-control-save-settings-button`,onClick:ce},{default:g(()=>[t(c(u(T).baseText(`settings.sourceControl.button.save`)),1)]),_:1},8,[`disabled`])],2)])):l(``,!0)])):(e(),h(u(y),{key:1,"data-test-id":`source-control-content-unlicensed`,class:f(i.$style.actionBox),description:u(T).baseText(`settings.sourceControl.actionBox.description`),"button-text":u(T).baseText(`settings.sourceControl.actionBox.buttonText`),"onClick:button":ue},{heading:g(()=>[n(`span`,null,c(u(T).baseText(`settings.sourceControl.actionBox.title`)),1)]),description:g(()=>[t(c(u(T).baseText(`settings.sourceControl.actionBox.description`))+` `,1),n(`a`,{href:u(T).baseText(`settings.sourceControl.docs.url`),target:`_blank`},c(u(T).baseText(`settings.sourceControl.actionBox.description.link`)),9,B)]),_:1},8,[`class`,`description`,`button-text`]))]))}}),[[`__cssModules`,{$style:{group:`_group_o0gi6_125`,readOnly:`_readOnly_o0gi6_146`,groupFlex:`_groupFlex_o0gi6_150`,connect:`_connect_o0gi6_164`,disconnectButton:`_disconnectButton_o0gi6_168`,actionBox:`_actionBox_o0gi6_173`,sshInput:`_sshInput_o0gi6_177`,copyInput:`_copyInput_o0gi6_188`,sshKeyTypeSelect:`_sshKeyTypeSelect_o0gi6_192`,branchSelection:`_branchSelection_o0gi6_200`,refreshBranches:`_refreshBranches_o0gi6_209`}}]]);export{V as default}; //# sourceMappingURL=SettingsSourceControl-Dye0gb1P.js.map