import { useMemo } from "react"; import { StyleSheet } from "react-native"; import { useAppTheme } from "@/contexts/ThemeContext"; import type { ThemeColors } from "@/lib/theme-palette"; /** StyleSheet factory that re-runs when light/dark palette changes. */ export function useThemedStyles>( factory: (colors: ThemeColors, isDark: boolean) => T, ): T { const { colors, isDark } = useAppTheme(); return useMemo(() => StyleSheet.create(factory(colors, isDark)), [colors, isDark]); }