summaryrefslogtreecommitdiff
path: root/apps/web/src/services/storage/components/storage-persistence-dialog.tsx
blob: 4544ef1dc189878101fa8aea274062ec192fb3b9 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
"use client";

import { Button } from "@/components/ui/button";
import {
	Dialog,
	DialogBody,
	DialogContent,
	DialogFooter,
	DialogHeader,
	DialogTitle,
} from "@/components/ui/dialog";
import { useStoragePersistence } from "@/services/storage/use-storage-persistence";

export function StoragePersistenceDialog() {
	const { showDialog, onConfirm, onDismiss } = useStoragePersistence();

	return (
		<Dialog open={showDialog} onOpenChange={(open) => !open && onDismiss()}>
			<DialogContent className="sm:max-w-md">
				<DialogHeader>
					<DialogTitle>Don't lose your projects</DialogTitle>
				</DialogHeader>
				<DialogBody>
					<p className="text-base text-muted-foreground">
						Your browser can automatically delete your projects when storage
						runs low.
					</p>
					<p className="text-base text-muted-foreground">
						Allow OpenCut to protect them?
					</p>
				</DialogBody>
				<DialogFooter>
					<Button variant="outline" onClick={onDismiss}>
						Not now
					</Button>
					<Button onClick={onConfirm}>Allow</Button>
				</DialogFooter>
			</DialogContent>
		</Dialog>
	);
}