Files
spacedrive/interface/app/$libraryId/settings/node/libraries/DeleteDialog.tsx
Utku 63afacbc54 Mobile Analytics and some changes (#667)
* update contributing & environment-setup

* fix pods deployment target to 13.0

* Track app screen changes with plausible

* Don't track onboarding

* remove platformType from usePlausibleEvent

* submit custom plausible events
2023-04-04 05:41:09 +00:00

46 lines
1.2 KiB
TypeScript

import { useQueryClient } from '@tanstack/react-query';
import { useBridgeMutation, usePlausibleEvent, useTelemetryState } from '@sd/client';
import { Dialog, UseDialogProps, useDialog } from '@sd/ui';
import { forms } from '@sd/ui';
import { usePlatform } from '~/util/Platform';
const { useZodForm, z } = forms;
interface Props extends UseDialogProps {
libraryUuid: string;
}
export default function DeleteLibraryDialog(props: Props) {
const dialog = useDialog(props);
const submitPlausibleEvent = usePlausibleEvent();
const queryClient = useQueryClient();
const deleteLib = useBridgeMutation('library.delete', {
onSuccess: () => {
queryClient.invalidateQueries(['library.list']);
submitPlausibleEvent({
event: {
type: 'libraryDelete'
}
});
}
});
const form = useZodForm({ schema: z.object({}) });
const onSubmit = form.handleSubmit(() => deleteLib.mutateAsync(props.libraryUuid));
return (
<Dialog
form={form}
onSubmit={onSubmit}
dialog={dialog}
title="Delete Library"
description="Deleting a library will permanently the database, the files themselves will not be deleted."
ctaDanger
ctaLabel="Delete"
/>
);
}