import { useMemo } from "react"; import { resolveMobileCodeSurface, type ResolvedMobileCodeSurface,} from "../../../lib/appearancePreferences";import { createNativeReviewDiffStyle } from "../../review/nativeReviewDiffAdapter";import { createNativeSourceStyle } from "../../files/nativeSourceFileAdapter";import { useAppearancePreferences } from "./AppearancePreferencesProvider"; export function useAppearanceCodeSurface(): { readonly codeSurface: ResolvedMobileCodeSurface; readonly codeWordBreak: boolean; readonly nativeSourceStyle: ReturnType<typeof createNativeSourceStyle>; readonly nativeReviewDiffStyle: ReturnType<typeof createNativeReviewDiffStyle>;} { const { appearance } = useAppearancePreferences(); const codeSurface = useMemo( () => resolveMobileCodeSurface(appearance.codeFontSize), [appearance.codeFontSize], ); const nativeSourceStyle = useMemo(() => createNativeSourceStyle(codeSurface), [codeSurface]); const nativeReviewDiffStyle = useMemo( () => createNativeReviewDiffStyle(codeSurface), [codeSurface], ); return { codeSurface, codeWordBreak: appearance.codeWordBreak, nativeSourceStyle, nativeReviewDiffStyle, };}
import { useMemo } from "react";
import {
resolveMobileCodeSurface,
type ResolvedMobileCodeSurface,
} from "../../../lib/appearancePreferences";
import { createNativeReviewDiffStyle } from "../../review/nativeReviewDiffAdapter";
import { createNativeSourceStyle } from "../../files/nativeSourceFileAdapter";
import { useAppearancePreferences } from "./AppearancePreferencesProvider";
export function useAppearanceCodeSurface(): {
readonly codeSurface: ResolvedMobileCodeSurface;
readonly codeWordBreak: boolean;
readonly nativeSourceStyle: ReturnType<typeof createNativeSourceStyle>;
readonly nativeReviewDiffStyle: ReturnType<typeof createNativeReviewDiffStyle>;
} {
const { appearance } = useAppearancePreferences();
const codeSurface = useMemo(
() => resolveMobileCodeSurface(appearance.codeFontSize),
[appearance.codeFontSize],
);
const nativeSourceStyle = useMemo(() => createNativeSourceStyle(codeSurface), [codeSurface]);
const nativeReviewDiffStyle = useMemo(
() => createNativeReviewDiffStyle(codeSurface),
[codeSurface],
);
return {
codeSurface,
codeWordBreak: appearance.codeWordBreak,
nativeSourceStyle,
nativeReviewDiffStyle,
};
}