diff options
| author | Maze Winther <mazewinther@gmail.com> | 2026-04-20 11:31:17 +0200 |
|---|---|---|
| committer | Maze Winther <mazewinther@gmail.com> | 2026-04-20 11:31:17 +0200 |
| commit | 3e89d2998588f8e35c524e523ba2ee853f0f6475 (patch) | |
| tree | 57221f96c1259b3b07e3ddf8c1adefc502b9d8eb /apps/web/src/hooks/use-font-atlas.ts | |
| parent | 729d10592f4e802f91c555c309ff3ba4b119f843 (diff) | |
| download | opencut-3e89d2998588f8e35c524e523ba2ee853f0f6475.tar.gz | |
refactor: restructure files to their domains, new preview overlay system, and dep graph
Diffstat (limited to 'apps/web/src/hooks/use-font-atlas.ts')
| -rw-r--r-- | apps/web/src/hooks/use-font-atlas.ts | 53 |
1 files changed, 0 insertions, 53 deletions
diff --git a/apps/web/src/hooks/use-font-atlas.ts b/apps/web/src/hooks/use-font-atlas.ts deleted file mode 100644 index aa48f3b4..00000000 --- a/apps/web/src/hooks/use-font-atlas.ts +++ /dev/null @@ -1,53 +0,0 @@ -import { useState, useMemo, useCallback, useEffect } from "react";
-import {
- getCachedFontAtlas,
- loadFontAtlas,
- clearFontAtlasCache,
-} from "@/lib/fonts/google-fonts";
-import type { FontAtlas } from "@/lib/fonts/types";
-import { SYSTEM_FONTS } from "@/lib/fonts/system-fonts";
-
-type Status = "idle" | "loading" | "error";
-
-export function useFontAtlas({ open }: { open: boolean }) {
- const [atlas, setAtlas] = useState<FontAtlas | null>(() =>
- getCachedFontAtlas(),
- );
- const [status, setStatus] = useState<Status>(() =>
- getCachedFontAtlas() ? "idle" : "loading",
- );
-
- useEffect(() => {
- if (!open || atlas) return;
-
- setStatus("loading");
- loadFontAtlas().then((data) => {
- if (data) {
- setAtlas(data);
- setStatus("idle");
- } else {
- setStatus("error");
- }
- });
- }, [open, atlas]);
-
- const retry = useCallback(() => {
- clearFontAtlasCache();
- setStatus("loading");
- loadFontAtlas().then((data) => {
- if (data) {
- setAtlas(data);
- setStatus("idle");
- } else {
- setStatus("error");
- }
- });
- }, []);
-
- const fontNames = useMemo(() => {
- if (!atlas) return [];
- return [...Object.keys(atlas.fonts), ...SYSTEM_FONTS].sort();
- }, [atlas]);
-
- return { atlas, status, fontNames, retry };
-}
|
