UNPKG

n8n-editor-ui

Version:

Workflow Editor UI for n8n

2 lines 10.8 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]=`eef6b71f-66bd-4c17-a0b1-520e0709c220`,e._sentryDebugIdIdentifier=`sentry-dbid-eef6b71f-66bd-4c17-a0b1-520e0709c220`)})()}catch{}import{$ as e,A as t,C as n,E as r,Ft as i,N as a,O as o,S as s,Sn as c,T as l,W as u,Wt as d,X as f,_ as p,_n as m,at as h,gt as g,h as _,it as v,j as y,pt as b,rt as x,w as S,yn as C,yt as w}from"./vue.runtime.esm-bundler-C3C09Zii.js";import{at as T}from"./core-Bz5WjPxS.js";import{A as E,H as D,Mi as O,Mt as k,Qi as A,Xi as j,ct as ee,ji as M,lt as N,m as P}from"./src-XqE2yCpG.js";import{t as F}from"./_plugin-vue_export-helper-CIL7EULb.js";import{Ln as I,Pn as L,fr as R,it as z}from"./users.store-xP93bV7X.js";import{n as B,r as V,t as H}from"./MainSidebarHeader-DOaN30Rh.js";import{t as U}from"./BaseLayout-YhvjbE97.js";import{Qo as W}from"./constants-DuQbSl-q.js";import{t as te}from"./KeyboardShortcutTooltip-D-xXdXqr.js";import{a as G,c as K,l as q,n as J}from"./constants-BVzsnVB6.js";import{t as Y}from"./useKeybindings-HxiGjy_j.js";import{t as X}from"./chat.store-mz4IZJ73.js";import{T as Z,m as ne}from"./fileUtils-D6dhtxVJ.js";import{t as re}from"./useSettingsItems-CLwnDZ79.js";import{t as ie}from"./ChatAgentAvatar-DKWX_rQ_.js";var ae=F(a({__name:`ChatSidebarLink`,props:{active:{type:Boolean,default:!1},to:{},label:{},title:{},menuItems:{default:()=>[]},icon:{},compact:{type:Boolean}},emits:[`actionSelect`,`click`],setup(n,{emit:i}){let a=i;return(i,o)=>{let s=h(`RouterLink`);return e(),r(`div`,{class:m([i.$style.menuItem,{[i.$style.active]:n.active}])},[i.$slots.default?v(i.$slots,`default`,{key:0}):(e(),r(p,{key:1},[y(s,{to:n.to,class:m([i.$style.menuItemLink,{[i.$style.compact]:n.compact}]),title:n.title,onClick:o[0]||=e=>a(`click`,e)},{default:w(()=>[v(i.$slots,`icon`,{},()=>[n.icon?(e(),S(d(A),{key:0,size:`large`,icon:n.icon},null,8,[`icon`])):l(``,!0)]),n.compact?l(``,!0):(e(),r(`div`,{key:0,class:m(i.$style.textContainer)},[y(d(j),{class:m(i.$style.label),size:`small`,color:`text-light`},{default:w(()=>[t(c(n.label),1)]),_:1},8,[`class`]),y(d(j),{class:m(i.$style.title),size:`medium`,color:`text-dark`},{default:w(()=>[t(c(n.title),1)]),_:1},8,[`class`])],2))]),_:3},8,[`to`,`class`,`title`]),!n.compact&&n.menuItems.length>0?(e(),S(d(k),{key:0,items:n.menuItems,class:m(i.$style.actionDropdown),placement:`bottom-start`,onSelect:o[1]||=e=>a(`actionSelect`,e),onClick:o[2]||=_(()=>{},[`stop`])},{activator:w(()=>[y(d(O),{variant:`ghost`,icon:`ellipsis-vertical`,class:m(i.$style.actionDropdownTrigger)},null,8,[`class`])]),_:1},8,[`items`,`class`])):l(``,!0)],64))],2)}}}),[[`__cssModules`,{$style:{menuItem:`_menuItem_1mhhm_125`,active:`_active_1mhhm_131`,menuItemLink:`_menuItemLink_1mhhm_135`,compact:`_compact_1mhhm_147`,textContainer:`_textContainer_1mhhm_154`,label:`_label_1mhhm_160`,title:`_title_1mhhm_169`,actionDropdown:`_actionDropdown_1mhhm_178`,actionDropdownTrigger:`_actionDropdownTrigger_1mhhm_189`}}]]),oe=F(a({__name:`ChatSessionMenuItem`,props:{session:{},isRenaming:{type:Boolean},active:{type:Boolean},compact:{type:Boolean}},emits:[`startRename`,`cancelRename`,`confirmRename`,`delete`],setup(t,{emit:n}){let r=n,a=b(`input`),c=i(``),l=X(),f=T(),p=s(()=>{let e=Z(t.session);return e?l.getAgent(e,{name:t.session.agentName,icon:t.session.agentIcon}):null}),h=s(()=>[{id:`rename`,label:f.baseText(`chatHub.session.actions.rename`),icon:`pencil`},{id:`delete`,label:f.baseText(`chatHub.session.actions.delete`),icon:`trash-2`}]);function _(e){e===`rename`?(c.value=t.session.title,r(`startRename`,t.session.id)):e===`delete`&&r(`delete`,t.session.id)}function v(){let e=c.value.trim();e&&e!==t.session.title?r(`confirmRename`,t.session.id,e):r(`cancelRename`)}function x(e){if(e.key===`Escape`){r(`cancelRename`);return}e.key===`Enter`&&!e.isComposing&&v()}return g(()=>t.isRenaming,async e=>{e?(c.value=t.session.title,await u(),a.value?.focus(),a.value?.select()):c.value=``},{immediate:!0}),(n,r)=>(e(),S(ae,{to:{name:d(J),params:{id:t.session.id}},active:t.active,compact:t.compact,"menu-items":h.value,label:t.session.agentName,title:t.session.title,onActionSelect:_},o({icon:w(()=>[y(ie,{agent:p.value,size:`sm`,class:m(n.$style.avatar)},null,8,[`agent`,`class`])]),_:2},[t.isRenaming?{name:`default`,fn:w(()=>[y(d(M),{ref_key:`input`,ref:a,modelValue:c.value,"onUpdate:modelValue":r[0]||=e=>c.value=e,size:`large`,onBlur:v,onKeydown:x},null,8,[`modelValue`])]),key:`0`}:void 0]),1032,[`to`,`active`,`compact`,`menu-items`,`label`,`title`]))}}),[[`__cssModules`,{$style:{avatar:`_avatar_1006s_125`}}]]),se={skeletonItem:`_skeletonItem_rwi4t_125`,skeletonAvatar:`_skeletonAvatar_rwi4t_134`,skeletonText:`_skeletonText_rwi4t_135`,"skeleton-pulse":`_skeleton-pulse_rwi4t_1`},Q={};function ce(t,i){return e(),r(`div`,{class:m(t.$style.skeletonItem)},[n(`div`,{class:m(t.$style.skeletonAvatar)},null,2),n(`div`,{class:m(t.$style.skeletonText)},null,2)],2)}var $=F(Q,[[`render`,ce],[`__cssModules`,{$style:se}]]),le=F(a({__name:`ChatSidebarContent`,props:{isCollapsed:{type:Boolean}},setup(a){let o=ee(),u=N(),h=X(),g=L(),_=I(),v=z(),b=R(),C=s(()=>h.sessionsReady&&v.allCredentialTypes.length>0),E=T(),O=i(),k=s(()=>typeof o.params.id==`string`?o.params.id:void 0),A=s(()=>ne((h.sessions.ids??[]).reduce((e,t)=>{let n=h.sessions.byId[t];return n&&n.type!==`manual`&&e.push(n),e},[]))),M=s(()=>({id:`new-chat`,label:E.baseText(`chatHub.sidebar.link.newChat`),icon:`plus`,route:{to:{name:K,force:!0}}})),F=s(()=>({id:`personal-agents`,label:E.baseText(`chatHub.sidebar.link.personalAgents`),icon:`message-square`,route:{to:{name:G}}})),B=s(()=>({id:`workflow-agents`,label:E.baseText(`chatHub.sidebar.link.workflowAgents`),icon:`robot`,route:{to:{name:q}}}));function V(e){O.value=e}function H(){O.value=void 0}async function U(e,t){try{await h.renameSession(e,t),O.value=void 0}catch(e){g.showError(e,E.baseText(`chatHub.session.updateTitle.error`))}}async function W(e){if(await _.confirm(E.baseText(`chatHub.session.delete.confirm.message`),E.baseText(`chatHub.session.delete.confirm.title`),{confirmButtonText:E.baseText(`chatHub.session.delete.confirm.button`),cancelButtonText:E.baseText(`chatHub.session.delete.cancel.button`)})===`confirm`)try{await h.deleteSession(e),g.showMessage({type:`success`,title:E.baseText(`chatHub.session.delete.success`)}),e===k.value&&u.push({name:K})}catch(e){g.showError(e,E.baseText(`chatHub.session.delete.error`))}}function J(){b.track(`User clicked new chat button`,{source:`chat_hub`})}return f(()=>{h.fetchSessions(!0,{minLoadingTime:250,type:`production`})}),(i,s)=>(e(),r(`div`,{class:m(i.$style.component)},[n(`div`,{class:m({[i.$style.links]:!0,[i.$style.collapsed]:a.isCollapsed})},[y(te,{placement:`right`,label:d(E).baseText(`chatHub.sidebar.link.newChat`),"show-after":500,shortcut:{keys:[`o`],metaKey:!0,shiftKey:!0}},{default:w(()=>[y(d(D),{item:M.value,compact:a.isCollapsed,active:d(o).name===d(K),onClick:J},null,8,[`item`,`compact`,`active`])]),_:1},8,[`label`]),y(d(D),{item:F.value,compact:a.isCollapsed,active:d(o).name===d(G)},null,8,[`item`,`compact`,`active`]),y(d(D),{item:B.value,compact:a.isCollapsed,active:d(o).name===d(q)},null,8,[`item`,`compact`,`active`])],2),y(d(P),{"as-child":``,type:`scroll`},{default:w(()=>[n(`div`,{class:m([i.$style.historySections,{[i.$style.collapsed]:a.isCollapsed}]),"data-test-id":`chat-conversation-list`},[C.value?(e(!0),r(p,{key:1},x(A.value,(n,o)=>(e(),r(`div`,{key:n.group,class:m(i.$style.group)},[a.isCollapsed?l(``,!0):(e(),S(d(j),{key:0,class:m(i.$style.groupHeader),size:`small`,bold:``,color:`text-light`},{default:w(()=>[t(c(n.group),1)]),_:2},1032,[`class`])),(e(!0),r(p,null,x(n.sessions,t=>(e(),S(oe,{key:t.id,session:t,compact:a.isCollapsed,active:k.value===t.id,"is-renaming":O.value===t.id,onStartRename:V,onCancelRename:H,onConfirmRename:U,onDelete:W},null,8,[`session`,`compact`,`active`,`is-renaming`]))),128)),o===A.value.length-1&&d(h).sessions.hasMore&&!d(h).sessionsLoading?(e(),S(d(D),{key:1,item:{id:`load-more-sessions`,label:d(E).baseText(`chatHub.sidebar.loadMoreSessions`),icon:`circle-ellipsis`},compact:a.isCollapsed,onClick:s[0]||=()=>d(h).fetchMoreSessions({minLoadingTime:250})},null,8,[`item`,`compact`])):l(``,!0),o===A.value.length-1&&d(h).sessionsLoading?(e(),r(p,{key:2},x(10,e=>y($,{key:e})),64)):l(``,!0)],2))),128)):(e(),r(`div`,{key:0,class:m(i.$style.group)},[(e(),r(p,null,x(10,e=>y($,{key:`loading-${e}`})),64))],2))],2)]),_:1})],2))}}),[[`__cssModules`,{$style:{logoContainer:`_logoContainer_1vnf8_125`,component:`_component_1vnf8_131`,header:`_header_1vnf8_137`,logo:`_logo_1vnf8_125`,links:`_links_1vnf8_153`,collapsed:`_collapsed_1vnf8_158`,historySections:`_historySections_1vnf8_162`,group:`_group_1vnf8_172`,groupHeader:`_groupHeader_1vnf8_178`,loading:`_loading_1vnf8_182`,empty:`_empty_1vnf8_183`}}]]),ue=F(a({__name:`ChatSidebar`,setup(t){let r=T(),i=N(),{isCollapsed:a,sidebarWidth:o,onResizeStart:c,onResize:l,onResizeEnd:f,toggleCollapse:p}=V();function h(e){e.stopPropagation(),u(()=>{let e=new KeyboardEvent(`keydown`,{key:`k`,code:`KeyK`,metaKey:!0,bubbles:!0,cancelable:!0});document.dispatchEvent(e)})}let{settingsItems:g}=re(),_=s(()=>[{id:`settings`,label:r.baseText(`mainSidebar.settings`),icon:`settings`,available:!0,children:g.value}]),v=s(()=>_.value.filter(e=>e.available!==!1));Y({bracketleft:()=>p()});let b=()=>{i.push({name:W.SIGNOUT})};return(t,r)=>(e(),S(d(E),{id:`side-menu`,class:m({[t.$style.sideMenu]:!0,[t.$style.sideMenuCollapsed]:d(a)}),width:d(o),style:C({width:`${d(o)}px`}),"supported-directions":[`right`],"min-width":200,"max-width":500,"grid-size":8,onResizestart:d(c),onResize:d(l),onResizeend:d(f)},{default:w(()=>[y(H,{"hide-create":``,"is-collapsed":d(a),onCollapse:d(p),onOpenCommandBar:h},null,8,[`is-collapsed`,`onCollapse`]),y(d(P),{"as-child":``},{default:w(()=>[n(`div`,{class:m(t.$style.scrollArea)},[y(le,{"is-collapsed":d(a)},null,8,[`is-collapsed`]),y(B,{items:v.value,"is-collapsed":d(a),onLogout:b},null,8,[`items`,`is-collapsed`])],2)]),_:1})]),_:1},8,[`class`,`width`,`style`,`onResizestart`,`onResize`,`onResizeend`]))}}),[[`__cssModules`,{$style:{sideMenu:`_sideMenu_nzvda_125`,sideMenuCollapsed:`_sideMenuCollapsed_nzvda_133`,scrollArea:`_scrollArea_nzvda_138`}}]]),de=a({__name:`ChatLayout`,setup(t){return(t,n)=>{let r=h(`RouterView`);return e(),S(U,null,{sidebar:w(()=>[y(ue)]),default:w(()=>[y(r)]),_:1})}}});export{de as default}; //# sourceMappingURL=ChatLayout-DM7QDd0l.js.map