UnisKB/static/chat/assets/index-Dq8PyW6P.js

2 lines
13 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

import{bk as De,cZ as xe,bj as ue,ay as Pe,aA as Ae,b7 as Se,aB as u,be as ke,b8 as C,c_ as ae,bZ as ie,bY as V,b_ as w,c0 as z,br as Te,aD as n,aE as c,bf as X,aI as _,aJ as P,bn as A,bW as ce,aF as y,aG as a,aK as K,bm as Y,aH as d,bg as be,bh as ge,c$ as Ue,c1 as Ve,d0 as we,ce as Ce,bd as Ke,aC as q,bs as ze,bX as re,bt as Ge,bo as Fe}from"./chat-u6cKkSMp.js";import{l as je}from"./permission-api-BCzde5j1.js";import"./workspace--1HHfS5D.js";const se="/workspace",He=(S,p,O,k,D)=>ue(`${se}/${S}/user_resource_permission/user/${p}/resource/${O}`,k,D),Be=(S,p,O,k,D)=>De(`${se}/${S}/user_resource_permission/user/${p}/resource/${O}`,k,{},D),Je=(S,p)=>ue(`${se}/${S}/user_list`,void 0,p),Ze=(S,p)=>ue(`${se}/${S}/user_member`,void 0,p),qe=(S,p,O,k)=>p=="MODEL"?Promise.resolve(xe.success([{id:"default",name:"根目录",desc:null,parent_id:null,children:[]}])):ue(`${se}/${S}/${p}/folder`,O,k),Ee={getResourceAuthorization:He,putResourceAuthorization:Be,getUserList:Je,getUserMember:Ze,getSystemFolder:qe},Xe={class:"permission-setting p-24 flex"},Ye={class:"resource-authorization__table"},Qe={class:"mb-16"},et={class:"flex-between mb-16"},tt={class:"flex-between complex-search"},ot={style:{"vertical-align":"sub"}},st=["src"],lt=["innerHTML"],nt={class:"color-text-primary lighter"},at={class:"dialog-footer mt-24"},it=Pe({__name:"PermissionTable",props:{data:{},type:{},getData:{type:Function}},emits:["submitPermissions"],setup(S,{expose:p,emit:O}){const{model:k}=Ae(),D=Se(),v=S,G=O,x=u([]),Q=u(!0);ke(()=>v.data,e=>{var t,l;e&&e.length>0&&Q.value&&(x.value=((t=v.data)==null?void 0:t.length)>0?[(l=v.data[0])==null?void 0:l.id]:[],Q.value=!1)},{immediate:!0});const N=C(()=>({rootFolder:ae(!0,!0),folder:ae(!0,!1),resource:ae(!1,!1)})),F=e=>{const t=e.resource_type==="folder";return t&&e.folder_id===null?N.value.rootFolder:t?N.value.folder:N.value.resource},de=C(()=>b.value.some(e=>e.resource_type==="folder"&&e.folder_id==null)?N.value.rootFolder:b.value.some(e=>e.resource_type==="folder")?N.value.folder:N.value.resource),le=u({APPLICATION:new ie([V.ADMIN,V.WORKSPACE_MANAGE],[w.APPLICATION_WORKSPACE_USER_RESOURCE_PERMISSION_EDIT,w.APPLICATION_WORKSPACE_USER_RESOURCE_PERMISSION_EDIT.getWorkspacePermissionWorkspaceManageRole],[],"OR"),KNOWLEDGE:new ie([V.ADMIN,V.WORKSPACE_MANAGE],[w.KNOWLEDGE_WORKSPACE_USER_RESOURCE_PERMISSION_EDIT,w.KNOWLEDGE_WORKSPACE_USER_RESOURCE_PERMISSION_EDIT.getWorkspacePermissionWorkspaceManageRole],[],"OR"),TOOL:new ie([V.ADMIN,V.WORKSPACE_MANAGE],[w.TOOL_WORKSPACE_USER_RESOURCE_PERMISSION_EDIT,w.TOOL_WORKSPACE_USER_RESOURCE_PERMISSION_EDIT.getWorkspacePermissionWorkspaceManageRole],[],"OR"),MODEL:new ie([V.ADMIN,V.WORKSPACE_MANAGE],[w.MODEL_WORKSPACE_USER_RESOURCE_PERMISSION_EDIT,w.MODEL_WORKSPACE_USER_RESOURCE_PERMISSION_EDIT.getWorkspacePermissionWorkspaceManageRole],[],"OR")}),pe=C(()=>v.type===z.KNOWLEDGE),me=C(()=>v.type===z.APPLICATION),H=C(()=>v.type===z.TOOL),ee=C(()=>v.type===z.MODEL),B=u(),L=u("name"),I=u({name:"",permission:void 0}),te=()=>{I.value={name:"",permission:void 0}},U=()=>{const e=I.value.name||"",t=I.value.permission??[];if(!e&&(!t||t.length===0))return v.data;const l=(R,T,$)=>{if(!R||R.length===0)return[];const M=[];for(const m of R){const J={...m};let Z=!1;L.value==="name"?Z=m.name.toLowerCase().includes(T.toLowerCase()):L.value==="permission"&&(Z=m.permission&&$.includes(m.permission));let oe=[];m.children&&m.children.length>0&&(oe=l(m.children,T,$)),(Z||oe.length>0)&&(J.children=oe,M.push(J))}return M};return l(v.data,e,t)},_e=C(()=>U()),b=u([]),j={},s=e=>{b.value=e},r=(e,t)=>{t.resource_type==="folder"?e.some(l=>l.id==t.id)?b.value=e:(j[t.id]===void 0&&(j[t.id]=0),j[t.id]%2==0?(we([t]).filter(l=>l.id!=t.id).forEach(l=>{var R;b.value.some(T=>l.id==T.id)&&((R=B.value)==null||R.toggleRowSelection(l,!0))}),b.value=B.value.getSelectionRows()):b.value=e,j[t.id]=j[t.id]+1):b.value=e},i=u(!1),g=u("");function h(){b.value.length!==0&&(i.value=!0)}function E(){if(b.value.length===0||!g.value)return;const e=b.value.map(t=>({target_id:t.id,permission:g.value}));G("submitPermissions",e),f()}function f(){var e;i.value=!1,g.value="",b.value=[],(e=B.value)==null||e.clearSelection()}function fe(e,t){const l=[{target_id:t.id,permission:e}],R=(T,$,M)=>{if(!T||T.length===0)return[];for(const m of T){const J=m.permission=="NOT_AUTH"&&$.includes(m.id);m.children&&m.children.length>0&&!J&&R(m.children,$,M),m.permission=="NOT_AUTH"&&$.includes(m.id)&&($.push(m.folder_id),M.push({target_id:m.id,permission:"VIEW"}))}return M};["VIEW","MANAGE","ROLE"].includes(e)&&R(v.data,[t.folder_id],l),G("submitPermissions",l)}const ne=u([]);function ve(){k.asyncGetProvider().then(e=>{ne.value=e==null?void 0:e.data})}const he=C(()=>e=>{var t;return(t=ne.value.find(l=>l.provider===e.icon))==null?void 0:t.icon});return Te(()=>{ee.value&&ve()}),p({searchForm:I,searchType:L}),(e,t)=>{var Ie,Re;const l=n("el-button"),R=n("el-option"),T=n("el-select"),$=n("el-input"),M=n("el-table-column"),m=n("AppIcon"),J=n("KnowledgeIcon"),Z=n("el-avatar"),oe=n("LogoIcon"),Ne=n("ToolIcon"),ye=n("el-radio"),Oe=n("el-radio-group"),Me=n("app-table"),We=n("el-text"),Le=n("el-dialog");return c(),X("div",Xe,[_("div",Ye,[_("h4",Qe,P(e.$t("views.system.resourceAuthorization.permissionSetting")),1),_("div",et,[A(ce)(le.value[((Ie=A(D).meta)==null?void 0:Ie.resource)||"APPLICATION"],"OR")?(c(),y(l,{key:0,type:"primary",disabled:b.value.length===0,onClick:h},{default:a(()=>[K(P(e.$t("views.system.resourceAuthorization.setting.configure")),1)]),_:1},8,["disabled"])):Y("",!0),_("div",tt,[d(T,{class:"complex-search__left",modelValue:L.value,"onUpdate:modelValue":t[0]||(t[0]=o=>L.value=o),style:{width:"80px"},onChange:te},{default:a(()=>[d(R,{label:e.$t("common.name"),value:"name"},null,8,["label"]),d(R,{label:e.$t("views.model.modelForm.permissionType.label"),value:"permission"},null,8,["label"])]),_:1},8,["modelValue"]),L.value==="name"?(c(),y($,{key:0,modelValue:I.value.name,"onUpdate:modelValue":t[1]||(t[1]=o=>I.value.name=o),placeholder:e.$t("common.searchBar.placeholder"),style:{width:"220px"},clearable:""},null,8,["modelValue","placeholder"])):L.value==="permission"?(c(),y(T,{key:1,modelValue:I.value.permission,"onUpdate:modelValue":t[2]||(t[2]=o=>I.value.permission=o),filterable:"",clearable:"",multiple:"","reserve-keyword":!1,"collapse-tags":"","collapse-tags-tooltip":"",style:{width:"220px"}},{default:a(()=>[(c(!0),X(be,null,ge(A(ae)(),(o,W)=>(c(),y(R,{key:W,label:o.label,value:o.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])):Y("",!0)])]),d(Me,{ref_key:"multipleTableRef",ref:B,class:"mt-16",data:_e.value,onSelect:r,onSelectAll:s,maxTableHeight:260,"row-key":o=>o.id,style:{"min-width":"600px"},"expand-row-keys":x.value,"default-expand-all":I.value.name||((Re=I.value.permission)==null?void 0:Re.length)>0,"show-overflow-tooltip":""},{default:a(()=>[d(M,{type:"selection",width:"55","reserve-selection":!0}),d(M,{prop:"name",label:e.$t("common.name")},{default:a(({row:o})=>[_("span",ot,[o.resource_type==="folder"?(c(),y(m,{key:0,iconName:"app-folder",style:{"font-size":"20px"}})):pe.value?(c(),y(J,{key:1,size:20,type:o.icon},null,8,["type"])):A(Ue)(o==null?void 0:o.icon)&&!ee.value?(c(),y(Z,{key:2,style:{background:"none"},shape:"square",size:20},{default:a(()=>[_("img",{src:A(Ve)(o==null?void 0:o.icon),alt:""},null,8,st)]),_:2},1024)):me.value?(c(),y(oe,{key:3,height:"20px"})):H.value?(c(),y(Ne,{key:4,size:20,type:o==null?void 0:o.tool_type},null,8,["type"])):ee.value?(c(),X("span",{key:5,style:{width:"20px",height:"20px",display:"inline-block"},innerHTML:he.value(o)},null,8,lt)):Y("",!0)]),K(" "+P(o==null?void 0:o.name),1)]),_:1},8,["label"]),d(M,{label:e.$t("views.model.modelForm.permissionType.label"),align:"left"},{default:a(({row:o})=>[d(Oe,{modelValue:o.permission,"onUpdate:modelValue":W=>o.permission=W,onChange:W=>fe(W,o)},{default:a(()=>[(c(!0),X(be,null,ge(F(o),(W,$e)=>(c(),y(ye,{key:$e,value:W.value,class:"mr-16"},{default:a(()=>[K(P(W.label),1)]),_:2},1032,["value"]))),128))]),_:2},1032,["modelValue","onUpdate:modelValue","onChange"])]),_:1},8,["label"])]),_:1},8,["data","row-key","expand-row-keys","default-expand-all"])]),d(Le,{modelValue:i.value,"onUpdate:modelValue":t[4]||(t[4]=o=>i.value=o),title:e.$t("views.system.resourceAuthorization.setting.configure"),"destroy-on-close":"",onClose:f},{footer:a(()=>[_("div",at,[d(l,{onClick:f},{default:a(()=>[K(P(e.$t("common.cancel")),1)]),_:1}),d(l,{type:"primary",onClick:E},{default:a(()=>[K(P(e.$t("common.confirm")),1)]),_:1})])]),default:a(()=>[d(Oe,{modelValue:g.value,"onUpdate:modelValue":t[3]||(t[3]=o=>g.value=o),class:"radio-block"},{default:a(()=>[(c(!0),X(be,null,ge(de.value,(o,W)=>(c(),y(ye,{key:W,value:o.value,class:"mr-16"},{default:a(()=>[_("p",nt,P(o.label),1),d(We,{class:"color-secondary lighter"},{default:a(()=>[K(P(o.desc),1)]),_:2},1024)]),_:2},1032,["value"]))),128))]),_:1},8,["modelValue"])]),_:1},8,["modelValue","title"])])}}}),rt=Ce(it,[["__scopeId","data-v-d2b26443"]]),ct={class:"resource-authorization p-16-24"},ut={class:"flex align-center mb-16"},dt={class:"ml-4 color-text-primary"},pt={class:"flex"},mt={class:"resource-authorization__left border-r"},_t={class:"p-24 pb-0"},ft={class:"mb-12"},vt={class:"list-height-left"},ht={class:"p-8-16"},bt={class:"flex-between"},gt={class:"flex"},Et=["title"],yt=Pe({__name:"index",setup(S){const p=Se(),{user:O}=Ae(),k=u(!1),D=u(!1),v=u([]),G=u([]),x=u(""),Q=u(""),N=u(""),F=u([]),de=Ke([{label:q("views.knowledge.title"),type:z.KNOWLEDGE},{label:q("views.application.title"),type:z.APPLICATION},{label:q("views.tool.title"),type:z.TOOL},{label:q("views.model.title"),type:z.MODEL}]),le=C(()=>{const s=p.path.lastIndexOf("/"),r=p.path.substring(s+1).toUpperCase();return de.filter(i=>i.type===r)[0]});ke(N,s=>{s?G.value=v.value.filter(r=>r.nick_name.toLowerCase().includes(s.toLowerCase())):G.value=v.value});function pe(s){var i;const r=U.value||O.getWorkspaceId()||"default";Ee.putResourceAuthorization(r,x.value,((i=p.meta)==null?void 0:i.resource)||"APPLICATION",s,D).then(()=>{Fe(q("common.submitSuccess")),H()})}const me=u(),H=()=>{var i;const s=U.value||O.getWorkspaceId()||"default",r={};Ee.getResourceAuthorization(s,x.value,((i=p.meta)==null?void 0:i.resource)||"APPLICATION",r,D).then(g=>{var E;(((E=p.meta)==null?void 0:E.resource)||"APPLICATION")==="MODEL"?F.value=g.data||[]:F.value=g.data.map(f=>!f.folder_id&&f.permission==="NOT_AUTH"?{...f,permission:"VIEW"}:f)||[]})},ee=(s,r)=>{if(!s||s.length===0)return[];const i=JSON.parse(JSON.stringify(s)),g=Object.fromEntries(i.map(h=>[h.id,h]));for(let h=0;h<s.length;h++){const E=i[h];if(E.children||(E.children=[]),E[r]){const f=g[E[r]];f&&(f.children||(f.children=[]),f.children.push(E))}}return i.filter(h=>!h[r])},B=C(()=>{var r;return(((r=p.meta)==null?void 0:r.resource)||"APPLICATION")==="MODEL"?F.value:ee(F.value,"folder_id")});function L(s){x.value=s.id,Q.value=s.type,H()}function I(s){const r=U.value||O.getWorkspaceId()||"default";Ee.getUserMember(r,k).then(i=>{var g,h,E,f;v.value=i.data,G.value=i.data,v.value.length>0?(x.value=(h=(g=v.value)==null?void 0:g[0])==null?void 0:h.id,Q.value=(f=(E=v.value)==null?void 0:E[0])==null?void 0:f.type,H()):F.value=[]})}const te=u([]),U=u(""),_e=C(()=>te.value.find(s=>s.id==U.value));async function b(){const s=await je("workspace").getSystemWorkspaceList(k);te.value=s.data,U.value=O.getWorkspaceId()||"default"}function j(s){U.value=s.id,I()}return Te(()=>{O.isEE()&&b(),I()}),(s,r)=>{const i=n("el-breadcrumb-item"),g=n("el-breadcrumb"),h=n("el-divider"),E=n("WorkspaceDropdown"),f=n("el-input"),fe=n("el-text"),ne=n("common-list"),ve=n("el-scrollbar"),he=n("el-card"),e=ze("loading");return c(),X("div",ct,[_("div",ut,[d(g,{"separator-icon":"ArrowRight"},{default:a(()=>[d(i,null,{default:a(()=>[K(P(A(q)("views.system.resourceAuthorization.title")),1)]),_:1}),d(i,null,{default:a(()=>[_("h5",dt,P(le.value.label),1)]),_:1})]),_:1}),A(ce)(A(re).IS_EE,"OR")?(c(),y(h,{key:0,class:"ml-24",direction:"vertical"})):Y("",!0),A(ce)(A(re).IS_EE,"OR")?(c(),y(E,{key:1,data:te.value,currentWorkspace:_e.value,onChangeWorkspace:j},null,8,["data","currentWorkspace"])):Y("",!0)]),d(he,{style:{"--el-card-padding":"0",height:"calc(100vh - 140px)"}},{default:a(()=>[_("div",pt,[_("div",mt,[_("div",_t,[_("h4",ft,P(s.$t("views.system.resourceAuthorization.member")),1),d(f,{modelValue:N.value,"onUpdate:modelValue":r[0]||(r[0]=t=>N.value=t),placeholder:s.$t("common.search"),"prefix-icon":"Search",clearable:""},null,8,["modelValue","placeholder"])]),_("div",vt,[d(ve,null,{default:a(()=>[_("div",ht,[Ge((c(),y(ne,{data:G.value,onClick:L,"default-active":x.value},{default:a(({row:t})=>[_("div",bt,[_("div",gt,[_("span",{class:"mr-8 ellipsis-1",title:t.nick_name},P(t.nick_name),9,Et),A(ce)([A(re).IS_EE,A(re).IS_PE],"OR")?(c(),y(fe,{key:0,class:"color-input-placeholder ellipsis-1",title:t.roles.join("")},{default:a(()=>{var l;return[K("("+P((l=t.roles)==null?void 0:l.join(""))+")",1)]}),_:2},1032,["title"])):Y("",!0)])])]),_:1},8,["data","default-active"])),[[e,k.value]])])]),_:1})])]),d(rt,{data:B.value,type:le.value.type,ref_key:"PermissionTableRef",ref:me,getData:H,onSubmitPermissions:pe},null,8,["data","type"])])]),_:1})])}}}),Pt=Ce(yt,[["__scopeId","data-v-67bc9bb0"]]);export{Pt as default};