🐛 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(
async (id: string, parentId: string) => {
async (id: string | string[], parentId: string) => {
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 getQuota();
} catch (e) {
@@ -41,7 +41,7 @@ const ConfirmDeleteModalContent = ({ items }: { items: DriveItem[] }) => {
const [loading, setLoading] = useState(false);
const [state, setState] = useRecoilState(ConfirmDeleteModalAtom);
const [, setSelected] = useRecoilState(DriveItemSelectedList);
const { viewId } = RouterServices.getStateFromRoute();
const { dirId, viewId } = RouterServices.getStateFromRoute();
useEffect(() => {
refresh(items[0].id);
@@ -65,9 +65,8 @@ const ConfirmDeleteModalContent = ({ items }: { items: DriveItem[] }) => {
loading={loading}
onClick={async () => {
setLoading(true);
for (const item of items) {
await remove(item.id, viewId || "");
}
const ids = items.map((item) => item.id);
await remove(ids, dirId || viewId || "");
setLoading(false);
setSelected({});
setState({ ...state, open: false });