authorgravatar for julius0216@outlook.comJulius Marminge <julius0216@outlook.com> 2026-02-28 15:15:20-08:00
committergravatar for jmarminge@gmail.comJulius Marminge <jmarminge@gmail.com> 2026-02-28 15:17:03-08:00
log206eb6a785283f6d8f79d122d5f69ee37aef660d
tree32c46f0d29f9af55cb9b35503aad4c85aaca7293
parentde9ec2bc7383f3dfc63c776bd475e8eb25a19feb

even better


5 files changed, 14 insertions(+), 13 deletions(-)

apps/web/src/components/ChatMarkdown.tsx+1-1
......@@ -20,7 +20,7 @@ import {
2020import type { Components } from "react-markdown";
2121import ReactMarkdown from "react-markdown";
2222import remarkGfm from "remark-gfm";
23import { resolveDiffThemeName, type DiffThemeName } from "../lib/diffThemes";
23import { resolveDiffThemeName, type DiffThemeName } from "../lib/diffRendering";
2424import { fnv1a32 } from "../lib/diffRendering";
2525import { LRUCache } from "../lib/lruCache";
2626import { useTheme } from "../hooks/useTheme";
apps/web/src/components/DiffPanel.tsx+1-1
......@@ -11,7 +11,7 @@ import { parseDiffRouteSearch, stripDiffSearchParams } from "../diffRouteSearch"
1111import { isElectron } from "../env";
1212import { useTheme } from "../hooks/useTheme";
1313import { buildPatchCacheKey } from "../lib/diffRendering";
14import { resolveDiffThemeName } from "../lib/diffThemes";
14import { resolveDiffThemeName } from "../lib/diffRendering";
1515import { useTurnDiffSummaries } from "../hooks/useTurnDiffSummaries";
1616import { useStore } from "../store";
1717import { ToggleGroup, Toggle } from "./ui/toggle-group";
apps/web/src/components/DiffWorkerPoolProvider.tsx+1-1
......@@ -2,7 +2,7 @@ import { WorkerPoolContextProvider, useWorkerPool } from "@pierre/diffs/react";
22import DiffsWorker from "@pierre/diffs/worker/worker.js?worker";
33import { useEffect, useMemo, type ReactNode } from "react";
44import { useTheme } from "../hooks/useTheme";
5import { resolveDiffThemeName, type DiffThemeName } from "../lib/diffThemes";
5import { resolveDiffThemeName, type DiffThemeName } from "../lib/diffRendering";
66
77function DiffWorkerThemeSync({ themeName }: { themeName: DiffThemeName }) {
88 const workerPool = useWorkerPool();
apps/web/src/lib/diffRendering.ts+11
......@@ -1,3 +1,14 @@
1export const DIFF_THEME_NAMES = {
2 light: "pierre-light",
3 dark: "pierre-dark",
4} as const;
5
6export type DiffThemeName = (typeof DIFF_THEME_NAMES)[keyof typeof DIFF_THEME_NAMES];
7
8export function resolveDiffThemeName(theme: "light" | "dark"): DiffThemeName {
9 return theme === "dark" ? DIFF_THEME_NAMES.dark : DIFF_THEME_NAMES.light;
10}
11
112const FNV_OFFSET_BASIS_32 = 0x811c9dc5;
213const FNV_PRIME_32 = 0x01000193;
314const SECONDARY_HASH_SEED = 0x9e3779b9;
apps/web/src/lib/diffThemes.ts deleted-10
......@@ -1,10 +0,0 @@
1export const DIFF_THEME_NAMES = {
2 light: "pierre-light",
3 dark: "pierre-dark",
4} as const;
5
6export type DiffThemeName = (typeof DIFF_THEME_NAMES)[keyof typeof DIFF_THEME_NAMES];
7
8export function resolveDiffThemeName(theme: "light" | "dark"): DiffThemeName {
9 return theme === "dark" ? DIFF_THEME_NAMES.dark : DIFF_THEME_NAMES.light;
10}