🐛 Fix permanent trash delete (#629)

This commit is contained in:
Montassar Ghanmy
2024-07-24 16:01:42 +01:00
committed by GitHub
parent 123e6212fb
commit 9b99f3f354
2 changed files with 7 additions and 6 deletions
@@ -111,9 +111,11 @@ export const useDriveActions = () => {
); );
const remove = useCallback( const remove = useCallback(
async (id: string, parentId: string) => { async (id: string | string[], parentId: string) => {
try { try {
await DriveApiClient.remove(companyId, id); if (Array.isArray(id)) {
await Promise.all(id.map(i => DriveApiClient.remove(companyId, i)));
} else await DriveApiClient.remove(companyId, id);
await refresh(parentId || '', true); await refresh(parentId || '', true);
await getQuota(); await getQuota();
} catch (e) { } catch (e) {
@@ -41,7 +41,7 @@ const ConfirmDeleteModalContent = ({ items }: { items: DriveItem[] }) => {
const [loading, setLoading] = useState(false); const [loading, setLoading] = useState(false);
const [state, setState] = useRecoilState(ConfirmDeleteModalAtom); const [state, setState] = useRecoilState(ConfirmDeleteModalAtom);
const [, setSelected] = useRecoilState(DriveItemSelectedList); const [, setSelected] = useRecoilState(DriveItemSelectedList);
const { viewId } = RouterServices.getStateFromRoute(); const { dirId, viewId } = RouterServices.getStateFromRoute();
useEffect(() => { useEffect(() => {
refresh(items[0].id); refresh(items[0].id);
@@ -65,9 +65,8 @@ const ConfirmDeleteModalContent = ({ items }: { items: DriveItem[] }) => {
loading={loading} loading={loading}
onClick={async () => { onClick={async () => {
setLoading(true); setLoading(true);
for (const item of items) { const ids = items.map((item) => item.id);
await remove(item.id, viewId || ""); await remove(ids, dirId || viewId || "");
}
setLoading(false); setLoading(false);
setSelected({}); setSelected({});
setState({ ...state, open: false }); setState({ ...state, open: false });