Files
spacedrive/interface/app/$libraryId/Explorer/FilePath/DeleteDialog.tsx
Brendan Allan 795bb18d18 [ENG-1007] Per-page onboarding forms (#1256)
* useMultiZodForm

* fix imports

* handle obStore.data undefined

---------

Co-authored-by: Utku <74243531+utkubakir@users.noreply.github.com>
2023-08-29 10:58:39 +00:00

40 lines
1.0 KiB
TypeScript

import { useLibraryMutation, useZodForm } from '@sd/client';
import { CheckBox, Dialog, Tooltip, UseDialogProps, useDialog } from '@sd/ui';
interface Props extends UseDialogProps {
locationId: number;
pathIds: number[];
}
export default (props: Props) => {
const deleteFile = useLibraryMutation('files.deleteFiles');
const form = useZodForm();
return (
<Dialog
form={form}
onSubmit={form.handleSubmit(() =>
deleteFile.mutateAsync({
location_id: props.locationId,
file_path_ids: props.pathIds
})
)}
dialog={useDialog(props)}
title="Delete a file"
description="Warning: This will delete your file forever, we don't have a trash can yet..."
loading={deleteFile.isLoading}
ctaLabel="Delete"
ctaDanger
className="w-[200px]"
>
<Tooltip label="Coming soon">
<div className="flex items-center pt-2 opacity-50">
<CheckBox disabled className="!mt-0" />
<p className="text-sm text-ink-dull">Delete all matching files</p>
</div>
</Tooltip>
</Dialog>
);
};