From 3e89d2998588f8e35c524e523ba2ee853f0f6475 Mon Sep 17 00:00:00 2001 From: Maze Winther Date: Mon, 20 Apr 2026 11:31:17 +0200 Subject: refactor: restructure files to their domains, new preview overlay system, and dep graph --- apps/web/src/hooks/use-storage-persistence.ts | 45 --------------------------- 1 file changed, 45 deletions(-) delete mode 100644 apps/web/src/hooks/use-storage-persistence.ts (limited to 'apps/web/src/hooks/use-storage-persistence.ts') diff --git a/apps/web/src/hooks/use-storage-persistence.ts b/apps/web/src/hooks/use-storage-persistence.ts deleted file mode 100644 index a026b510..00000000 --- a/apps/web/src/hooks/use-storage-persistence.ts +++ /dev/null @@ -1,45 +0,0 @@ -"use client"; - -import { useEffect, useState } from "react"; - -const DISMISSED_KEY = "opencut-storage-persist-dismissed"; - -function isFirefox(): boolean { - return navigator.userAgent.toLowerCase().includes("firefox"); -} - -export function useStoragePersistence() { - const [showDialog, setShowDialog] = useState(false); - - useEffect(() => { - if (!navigator.storage?.persist) return; - - const run = async () => { - const alreadyPersisted = await navigator.storage.persisted(); - if (alreadyPersisted) return; - - const dismissed = localStorage.getItem(DISMISSED_KEY) === "true"; - if (dismissed) return; - - if (isFirefox()) { - setShowDialog(true); - } else { - await navigator.storage.persist(); - } - }; - - run(); - }, []); - - const onConfirm = async () => { - setShowDialog(false); - await navigator.storage.persist(); - }; - - const onDismiss = () => { - setShowDialog(false); - localStorage.setItem(DISMISSED_KEY, "true"); - }; - - return { showDialog, onConfirm, onDismiss }; -} -- cgit v1.3.1