n8n-editor-ui
Version:
Workflow Editor UI for n8n
2 lines • 15 kB
JavaScript
(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.13.4`}}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]=`c56aab88-b353-4743-9235-38f7cc019817`,e._sentryDebugIdIdentifier=`sentry-dbid-c56aab88-b353-4743-9235-38f7cc019817`)})()}catch{}import{$ as e,A as t,C as n,E as r,Ft as i,N as a,S as o,Sn as s,T as c,Wt as l,X as u,_ as d,_n as f,gt as p,j as m,rt as h,w as g,yt as _}from"./vue.runtime.esm-bundler-D9KLAxvJ.js";import{bt as v}from"./_MapCache-CUJwh2qp.js";import{$i as y,Et as b,Mi as x,Qi as S,Ri as C,Rt as w,Tt as T,Yi as E,Zi as D,_ as O,zt as k}from"./src-wni2AGA3.js";import{t as A}from"./_plugin-vue_export-helper-Dm3nT7Ps.js";import"./sanitize-html-my1ogl5v.js";import{As as j,Hr as M,Tr as N,at as P,en as F,jr as I,r as L,t as R,vn as z}from"./users.store-BHWXXawf.js";import{Kc as B,Xa as V,gi as H,li as U,pi as ee,ui as te}from"./constants-CIP7tKq1.js";import"./merge-BqvKZ38d.js";import{N as ne,r as re}from"./_baseOrderBy-CaKruttV.js";import"./dateformat-CYfyw486.js";import"./useDebounce-CTeIt-cH.js";import{t as W}from"./CredentialIcon-BKhP7Biv.js";import{t as G}from"./TimeAgo-B5--ltV7.js";import{b as ie,o as K,y as q}from"./constants-B7scOakb.js";import{t as J}from"./CredentialPicker-Cr8cHjM9.js";import{A as Y,n as X,r as ae,t as Z}from"./chat.store-Bg89IR0u.js";var Q={key:0},oe={key:1},$=4,se=A(a({__name:`ChatProvidersTable`,props:{settings:{},loading:{type:Boolean},disabled:{type:Boolean}},emits:[`editProvider`,`refresh`],setup(a,{emit:u}){let d=a,p=u,h=v(),y=i([{title:h.baseText(`settings.chatHub.providers.table.provider`),key:`provider`,width:120,disableSort:!0,value(){}},{title:h.baseText(`settings.chatHub.providers.table.models`),key:`models`,width:300,disableSort:!0,value(){}},{title:h.baseText(`settings.chatHub.providers.table.updatedAt`),key:`updatedAt`,disableSort:!0,width:80,value(){}},{title:``,key:`actions`,align:`end`,width:50,disableSort:!0,value(){}}]),b=o(()=>[{label:h.baseText(`settings.chatHub.providers.table.action.editProvider`),value:`editProvider`,disabled:d.disabled}]),T=o(()=>d.settings?Object.values(d.settings):[]),A=e=>e.enabled?e.allowedModels.length===0?h.baseText(`settings.chatHub.providers.table.models.allModels`):e.allowedModels.length>$?e.allowedModels.slice(0,$).map(e=>e.displayName).join(`, `)+h.baseText(`settings.chatHub.providers.table.models.more`,{interpolate:{count:e.allowedModels.length-$}}):e.allowedModels.map(e=>e.displayName).join(`, `):h.baseText(`settings.chatHub.providers.table.models.disabled`),j=(e,t)=>{switch(e){case`editProvider`:p(`editProvider`,t);break;default:break}};return(i,a)=>(e(),r(`div`,{class:f(i.$style.tableContainer)},[d.loading?(e(),r(`div`,Q,[m(l(k),{loading:d.loading,variant:`h1`,class:f(i.$style.header)},null,8,[`loading`,`class`]),m(l(k),{loading:d.loading,variant:`p`,rows:5,"shrink-last":!1},null,8,[`loading`])])):(e(),r(`div`,oe,[n(`div`,{class:f(i.$style.header)},[m(l(E),{size:`medium`,bold:!0},{default:_(()=>[t(s(l(h).baseText(`settings.chatHub.providers.table.title`)),1)]),_:1}),n(`div`,{class:f(i.$style.actions)},[m(l(x),{content:l(h).baseText(`settings.chatHub.providers.table.refresh.tooltip`)},{default:_(()=>[m(l(S),{variant:`subtle`,iconOnly:``,size:`small`,icon:`refresh-cw`,"aria-label":l(h).baseText(`generic.refresh`),onClick:a[0]||=e=>i.$emit(`refresh`)},null,8,[`aria-label`])]),_:1},8,[`content`])],2)],2),d.settings?(e(),g(l(O),{key:1,class:f(i.$style.chatProvidersTable),headers:y.value,items:T.value,"items-length":T.value.length},{"item.provider":_(({item:r})=>[n(`div`,{class:f(i.$style.providerCell)},[r.provider in l(U)?(e(),g(W,{key:0,"credential-type-name":l(U)[r.provider],size:16,class:f(i.$style.menuIcon)},null,8,[`credential-type-name`,`class`])):c(``,!0),m(l(D),{bold:``},{default:_(()=>[t(s(l(q)[r.provider]),1)]),_:2},1024)],2)]),"item.models":_(({item:n})=>[n.allowedModels?.length&&n.allowedModels?.length>$?(e(),g(l(x),{key:0,content:n.allowedModels?.map(e=>e.displayName).join(`, `)},{default:_(()=>[m(l(D),{color:n.enabled?`text-base`:`primary`},{default:_(()=>[t(s(A(n)),1)]),_:2},1032,[`color`])]),_:2},1032,[`content`])):(e(),g(l(D),{key:1,color:n.enabled?`text-base`:`primary`},{default:_(()=>[t(s(A(n)),1)]),_:2},1032,[`color`]))]),"item.updatedAt":_(({item:r})=>[n(`span`,null,[r.updatedAt?(e(),g(G,{key:0,date:r.updatedAt},null,8,[`date`])):(e(),g(l(D),{key:1},{default:_(()=>[...a[1]||=[t(`-`,-1)]]),_:1}))])]),"item.actions":_(({item:e})=>[m(l(w),{placement:`bottom`,actions:b.value,theme:`dark`,onAction:t=>j(t,e)},null,8,[`actions`,`onAction`])]),_:2},1032,[`class`,`headers`,`items`,`items-length`])):(e(),g(l(C),{key:0,heading:l(h).baseText(`settings.chatHub.providers.table.empty.title`),description:l(h).baseText(`settings.chatHub.providers.table.empty.description`)},null,8,[`heading`,`description`]))]))],2))}}),[[`__cssModules`,{$style:{tableContainer:`_tableContainer_1v1de_125`,actions:`_actions_1v1de_129`,header:`_header_1v1de_135`,chatProvidersTable:`_chatProvidersTable_1v1de_142`,menuIcon:`_menuIcon_1v1de_146`,providerCell:`_providerCell_1v1de_150`}}]]),ce=A(a({__name:`ChatSemanticSearchSettings`,setup(a){let c=v(),u=I(),S=re(),C=Z(),w=N(),O=F(),k=j(),{semanticSearchReadiness:A}=ne(C),M=i(V(X));function P(e){let t=!!e.vectorStore.credentialId,n=!!e.embeddingModel.credentialId;O.track(`User updated semantic search settings`,{vector_store_provider:e.vectorStore.provider,embedding_provider:e.embeddingModel.provider,vector_store_credential_entered:t,embedding_credential_entered:n,vector_store_credential_shared:t&&A.value.vectorStoreIssue!==`notShared`,embedding_credential_shared:n&&A.value.embeddingIssue!==`notShared`})}let L=o(()=>{let e=M.value.vectorStore.provider;return e?te[e]:void 0}),R=o(()=>ee.options.filter(e=>e in ae)),z=o(()=>{let e=A.value.vectorStoreIssue;return e?e===`unspecified`||e===`notFound`?c.baseText(`settings.chatHub.vectorStore.missing`):c.baseText(`settings.chatHub.vectorStore.notShared`):``}),B=o(()=>{let e=A.value.embeddingIssue;return e?e===`unspecified`||e===`notFound`?c.baseText(`settings.chatHub.embeddingModel.missing`):c.baseText(`settings.chatHub.embeddingModel.notShared`):``});async function W(e){if(e===M.value.vectorStore.provider||M.value.vectorStore.credentialId&&await u.confirm(c.baseText(`settings.chatHub.vectorStore.changeProvider.confirm.message`),c.baseText(`settings.chatHub.vectorStore.changeProvider.confirm.title`),{confirmButtonText:c.baseText(`settings.chatHub.vectorStore.changeProvider.confirm.button`),cancelButtonText:c.baseText(`generic.cancel`),type:`warning`})!==`confirm`)return;let t={...M.value,vectorStore:{provider:e,credentialId:null}};try{await Y(S.restApiContext,t),await k.getModuleSettings(),P(t),w.showMessage({type:`success`,title:c.baseText(`settings.chatHub.semanticSearch.save.success`)})}catch(e){w.showError(e,c.baseText(`settings.chatHub.vectorStore.save.error`))}}async function G(e){if(e===M.value.vectorStore.credentialId)return;let t={...M.value,vectorStore:{...M.value.vectorStore,credentialId:e}};try{await Y(S.restApiContext,t),await k.getModuleSettings(),P(t),w.showMessage({type:`success`,title:c.baseText(`settings.chatHub.semanticSearch.save.success`)})}catch(e){w.showError(e,c.baseText(`settings.chatHub.vectorStore.save.error`))}}async function K(e){if(e===M.value.embeddingModel.provider||M.value.embeddingModel.credentialId&&await u.confirm(c.baseText(`settings.chatHub.embeddingModel.changeProvider.confirm.message`),c.baseText(`settings.chatHub.embeddingModel.changeProvider.confirm.title`),{confirmButtonText:c.baseText(`settings.chatHub.embeddingModel.changeProvider.confirm.button`),cancelButtonText:c.baseText(`generic.cancel`),type:`warning`})!==`confirm`)return;let t={...M.value,embeddingModel:{provider:e,credentialId:null}};try{await Y(S.restApiContext,t),await k.getModuleSettings(),P(t),w.showMessage({type:`success`,title:c.baseText(`settings.chatHub.semanticSearch.save.success`)})}catch(e){w.showError(e,c.baseText(`settings.chatHub.embeddingModel.save.error`))}}async function Q(e){if(e===M.value.embeddingModel.credentialId)return;let t={...M.value,embeddingModel:{...M.value.embeddingModel,credentialId:e}};try{await Y(S.restApiContext,t),await k.getModuleSettings(),P(t),w.showMessage({type:`success`,title:c.baseText(`settings.chatHub.semanticSearch.save.success`)})}catch(e){w.showError(e,c.baseText(`settings.chatHub.embeddingModel.save.error`))}}return p(()=>k.moduleSettings[`chat-hub`]?.semanticSearch,e=>{M.value=e??V(X)},{immediate:!0}),(i,a)=>(e(),r(`div`,{class:f(i.$style.section)},[m(l(E),{size:`medium`,bold:!0,class:f(i.$style.sectionTitle)},{default:_(()=>[t(s(l(c).baseText(`settings.chatHub.semanticSearch.title`)),1)]),_:1},8,[`class`]),n(`div`,{class:f(i.$style.semanticSearchCard)},[n(`div`,{class:f(i.$style.semanticSearchRow)},[n(`div`,{class:f(i.$style.rowInfo)},[n(`div`,{class:f(i.$style.rowLabelRow)},[m(l(D),{bold:!0,tag:`span`,class:f(i.$style.rowLabel)},{default:_(()=>[t(s(l(c).baseText(`settings.chatHub.vectorStore.title`)),1)]),_:1},8,[`class`]),l(A).vectorStoreIssue?(e(),g(l(x),{key:0,content:z.value},{default:_(()=>[m(l(y),{icon:`triangle-alert`,class:f(i.$style.iconWarning),size:`large`},null,8,[`class`])]),_:1},8,[`content`])):(e(),g(l(y),{key:1,icon:`check`,class:f(i.$style.iconReady),size:`large`},null,8,[`class`]))],2),m(l(D),{color:`text-light`,size:`small`,tag:`span`,class:f(i.$style.rowDescription)},{default:_(()=>[t(s(l(c).baseText(`settings.chatHub.vectorStore.description`)),1)]),_:1},8,[`class`])],2),n(`div`,{class:f(i.$style.rowControls)},[n(`div`,{class:f(i.$style.labeledControl)},[m(l(D),{size:`small`,color:`text-light`,tag:`span`,class:f(i.$style.controlLabel)},{default:_(()=>[t(s(l(c).baseText(`settings.chatHub.label.provider`)),1)]),_:1},8,[`class`]),m(l(T),{"model-value":M.value.vectorStore.provider??l(H).options[0],size:`small`,"onUpdate:modelValue":W},{default:_(()=>[(e(!0),r(d,null,h(l(H).options,t=>(e(),g(l(b),{key:t,value:t,label:l(ie)[t]},null,8,[`value`,`label`]))),128))]),_:1},8,[`model-value`])],2),n(`div`,{class:f(i.$style.labeledControl)},[m(l(D),{size:`small`,color:`text-light`,tag:`span`,class:f(i.$style.controlLabel)},{default:_(()=>[t(s(l(c).baseText(`settings.chatHub.label.credential`)),1)]),_:1},8,[`class`]),m(J,{class:f(i.$style.credentialPicker),"app-name":``,"credential-type":L.value??``,"selected-credential-id":M.value.vectorStore.credentialId,"create-button-variant":`subtle`,onCredentialSelected:G,onCredentialDeleted:a[0]||=e=>G(null)},null,8,[`class`,`credential-type`,`selected-credential-id`])],2)],2)],2),n(`div`,{class:f([i.$style.semanticSearchRow,i.$style.semanticSearchRowBordered])},[n(`div`,{class:f(i.$style.rowInfo)},[n(`div`,{class:f(i.$style.rowLabelRow)},[m(l(D),{bold:!0,tag:`span`,class:f(i.$style.rowLabel)},{default:_(()=>[t(s(l(c).baseText(`settings.chatHub.embeddingModel.title`)),1)]),_:1},8,[`class`]),l(A).embeddingIssue?(e(),g(l(x),{key:0,content:B.value},{default:_(()=>[m(l(y),{icon:`triangle-alert`,class:f(i.$style.iconWarning),size:`large`},null,8,[`class`])]),_:1},8,[`content`])):(e(),g(l(y),{key:1,icon:`check`,class:f(i.$style.iconReady),size:`large`},null,8,[`class`]))],2),m(l(D),{color:`text-light`,size:`small`,tag:`span`,class:f(i.$style.rowDescription)},{default:_(()=>[t(s(l(c).baseText(`settings.chatHub.embeddingModel.description`)),1)]),_:1},8,[`class`])],2),n(`div`,{class:f(i.$style.rowControls)},[n(`div`,{class:f(i.$style.labeledControl)},[m(l(D),{size:`small`,color:`text-light`,tag:`span`,class:f(i.$style.controlLabel)},{default:_(()=>[t(s(l(c).baseText(`settings.chatHub.label.provider`)),1)]),_:1},8,[`class`]),m(l(T),{"model-value":M.value.embeddingModel.provider??R.value[0],size:`small`,class:f(i.$style.typeSelect),"onUpdate:modelValue":K},{default:_(()=>[(e(!0),r(d,null,h(R.value,t=>(e(),g(l(b),{key:t,value:t,label:l(q)[t]},null,8,[`value`,`label`]))),128))]),_:1},8,[`model-value`,`class`])],2),n(`div`,{class:f(i.$style.labeledControl)},[m(l(D),{size:`small`,color:`text-light`,tag:`span`,class:f(i.$style.controlLabel)},{default:_(()=>[t(s(l(c).baseText(`settings.chatHub.label.credential`)),1)]),_:1},8,[`class`]),m(J,{class:f(i.$style.credentialPicker),"app-name":``,"credential-type":M.value.embeddingModel.provider?l(U)[M.value.embeddingModel.provider]:``,"selected-credential-id":M.value.embeddingModel.credentialId,"create-button-variant":`subtle`,onCredentialSelected:Q,onCredentialDeleted:a[1]||=e=>Q(null)},null,8,[`class`,`credential-type`,`selected-credential-id`])],2)],2)],2)],2)],2))}}),[[`__cssModules`,{$style:{section:`_section_7hu11_125`,sectionTitle:`_sectionTitle_7hu11_131`,semanticSearchCard:`_semanticSearchCard_7hu11_135`,semanticSearchRow:`_semanticSearchRow_7hu11_141`,semanticSearchRowBordered:`_semanticSearchRowBordered_7hu11_148`,rowInfo:`_rowInfo_7hu11_152`,rowLabelRow:`_rowLabelRow_7hu11_159`,rowLabel:`_rowLabel_7hu11_159`,rowDescription:`_rowDescription_7hu11_169`,rowControls:`_rowControls_7hu11_173`,labeledControl:`_labeledControl_7hu11_180`,controlLabel:`_controlLabel_7hu11_186`,credentialPicker:`_credentialPicker_7hu11_190`,iconReady:`_iconReady_7hu11_194`,iconWarning:`_iconWarning_7hu11_198`}}]]),le=A(a({__name:`SettingsChatHubView`,setup(n){let i=v(),a=M(),d=o(()=>a.isVariantEnabled(B.name,B.variant)),p=N(),h=z(),y=Z(),b=R(),x=j(),S=P(),C=L(),w=F(),T=o(()=>b.isInstanceOwner),D=o(()=>b.isAdmin),O=o(()=>!T.value&&!D.value),k=async()=>{try{await y.fetchAllChatSettings()}catch(e){p.showError(e,i.baseText(`settings.chatHub.providers.fetching.error`))}};function A(e){C.openModalWithData({name:K,data:{provider:e.provider,disabled:O.value,onNewCredential:e=>{let t=U[e];w.track(`User opened Credential modal`,{credential_type:t,source:`chat_hub_settings`,new_credential:!0,workflow_id:null}),C.openNewCredential(t)},onConfirm:async e=>{try{await y.updateProviderSettings(e),p.showMessage({title:i.baseText(`settings.chatHub.providers.updated.success`),type:`success`}),await x.getModuleSettings()}catch(e){p.showError(e,i.baseText(`settings.chatHub.providers.updated.error`))}},onCancel:()=>{}}})}async function I(){await k()}return u(async()=>{h.set(i.baseText(`settings.chatHub`)),x.isChatFeatureEnabled&&await Promise.all([k(),S.fetchAllCredentials(),S.fetchCredentialTypes(!1)])}),(n,a)=>(e(),r(`div`,{class:f(n.$style.container)},[m(l(E),{size:`2xlarge`},{default:_(()=>[t(s(l(i).baseText(`settings.chatHub`)),1)]),_:1}),m(se,{"data-test-id":`chat-providers-table`,settings:l(y).settings,loading:l(y).settingsLoading,disabled:O.value,onEditProvider:A,onRefresh:I},null,8,[`settings`,`loading`,`disabled`]),d.value?(e(),g(ce,{key:0})):c(``,!0)],2))}}),[[`__cssModules`,{$style:{container:`_container_4yxsr_125`}}]]);export{le as default};
//# sourceMappingURL=SettingsChatHubView-Cnr6g4Qt.js.map