1 line
5.6 KiB
JavaScript
1 line
5.6 KiB
JavaScript
|
|
import{t as e}from"./useQuery-Hj7E43Q9.js";import{t}from"./file-DlDBClxy.js";import{t as n}from"./folder-input-lYe4JQ9T.js";import{t as r}from"./folder-DDlXKK_x.js";import{B as i,Qt as a,R as o,Tt as s,Vn as c,Zt as l,ct as u,fn as d,ht as f,ln as p,qn as m,rn as h,st as g,wt as _,yn as v,z as y,zn as b}from"./index-CjPx3lfT.js";import{t as x}from"./directory-breadcrumb-BIvEu5Qr.js";import{n as S,r as C,t as w}from"./data-table-B1a8BMaf.js";import{t as T}from"./pagination-DP8LewWY.js";import{a as E,i as D,n as O,o as k,r as A,s as j,t as M}from"./dialog-ITi__DUr.js";var N=d(`move-right`,[[`path`,{d:`M18 8L22 12L18 16`,key:`1r0oui`}],[`path`,{d:`M2 12H22`,key:`1m8cig`}]]);const P=e=>{let{mutateAsync:t,isPending:n}=v({mutationFn:_,...e||{}});return{move:e=>{p.promise(t(e),{loading:`移动中`,success:`移动成功`})},moveIsPending:n}};var F=m(c(),1),I=m(b(),1);function L(e){return[{accessorKey:`fileName`,header:`目录名`,size:200,cell:({row:t})=>(0,I.jsxs)(`div`,{className:h(`w-full flex items-center gap-1 break-all`,`cursor-pointer hover:underline hover:text-primary group`),onClick:()=>{e(t==null?void 0:t.original)},children:[(0,I.jsx)(r,{size:18,className:`text-amber-500 group-hover:hidden`}),(0,I.jsx)(n,{size:18,className:`text-amber-500 group-hover:block hidden`}),(0,I.jsx)(`span`,{children:t.getValue(`fileName`)})]})}]}function R({open:t,setOpen:n,data:s,refetch:c,params:d}){var p,m;let[h,g]=(0,F.useState)({}),[_,v]=(0,F.useState)([]),[b,D]=(0,F.useState)(0),[R,z]=(0,F.useState)({pageIndex:0,pageSize:10}),B=e({queryKey:[`moveFiles`,R,b,d],queryFn:()=>f({...d,parentId:b||0,pageSize:R.pageSize,pageNo:R.pageIndex+1,fileType:u.DIRECTORY}).then(e=>e.data),enabled:t}),V=S({data:(0,F.useMemo)(()=>{var e;return(B==null||(e=B.data)==null||(e=e.entityList)==null?void 0:e.filter(e=>e.id!==(s==null?void 0:s.id)))||[]},[B,s]),columns:L(e=>{D(e.id),V.setPageIndex(0),v(t=>[...t,e]),V.resetRowSelection()}),getCoreRowModel:C(),manualPagination:!1,rowCount:(B==null||(p=B.data)==null?void 0:p.totalCount)||0,pageCount:(B==null||(m=B.data)==null?void 0:m.pageCount)||0,onPaginationChange:z,autoResetPageIndex:!1,onRowSelectionChange:g,state:{pagination:R,rowSelection:h}}),H=e=>{D(e==null?void 0:e.id),V.setPageIndex(0),v(t=>{let n=t.findIndex(t=>t.id===(e==null?void 0:e.id));return n>-1?[...t.slice(0,n+1)]:[]}),V.resetRowSelection()},U=()=>{D(0),V.setPageIndex(0),v([]),V.resetRowSelection()},{move:W,moveIsPending:G}=P({onSuccess:()=>{c==null||c(),n(!1)}}),K=()=>{W({...s,parentId:b})};(0,F.useEffect)(()=>{t&&U()},[t]);let q=(0,F.useMemo)(()=>_==null?void 0:_[(_==null?void 0:_.length)-1],[_]);return(0,I.jsx)(M,{open:t,onOpenChange:n,children:(0,I.jsxs)(A,{className:`w-[680px]`,children:[(0,I.jsx)(k,{children:(0,I.jsx)(j,{children:(s==null?void 0:s.fileType)===u.DIRECTORY?`移动目录`:`移动文件`})}),(0,I.jsxs)(`div`,{className:`overflow-hidden space-y-2`,children:[(0,I.jsx)(x,{directorys:_,onChangeDirectorys:H}),(0,I.jsxs)(`div`,{className:`max-h-[400px] overflow-y-auto relative border rounded-lg`,children:[(0,I.jsx)(w,{table:V,query:B}),(0,I.jsx)(T,{table:V,simple:!0,className:`p-2 justify-end sticky bottom-0 left-0 right-0 z-10 bg-white`})]})]}),(0,I.jsxs)(`div`,{className:`flex items-center gap-2 text-sm overflow-hidden`,children:[(0,I.jsx)(`span`,{className:`flex-1 overflow-hidden text-primary clamp-1 truncate p-2 rounded-lg bg-gray-100`,children:s==null?void 0:s.fileName}),(0,I.jsx)(N,{size:16,className:`flex-none`}),(0,I.jsxs)(`span`,{className:`flex-1 overflow-hidden text-amber-500 clamp-1 truncate inline-flex items-center gap-1 p-2 rounded-lg bg-gray-100`,children:[(0,I.jsx)(r,{size:16,className:`flex-none `}),(q==null?void 0:q.fileName)||`根目录`]})]}),(0,I.jsxs)(o,{className:`!bg-amber-50 !border-amber-200`,children:[(0,I.jsxs)(i,{children:[`您确定要将`,(s==null?void 0:s.fileType)===u.DIRECTORY?`目录`:`文件`,`移动到该目录下吗?`]}),(0,I.jsx)(y,{children:`如果是目录,则目录下的所有文件和子目录都会被移动`})]}),(0,I.jsxs)(E,{children:[(0,I.jsx)(O,{asChild:!0,children:(0,I.jsx)(a,{var
|