diff --git a/src/native-stack/views/FontProcessor.expo.tsx b/src/native-stack/views/FontProcessor.expo.tsx deleted file mode 100644 index 6c64e2339..000000000 --- a/src/native-stack/views/FontProcessor.expo.tsx +++ /dev/null @@ -1,9 +0,0 @@ -// @ts-ignore this file extension is parsed only in managed workflow, so `expo-font` should be always available there -// eslint-disable-next-line import/no-unresolved -import { processFontFamily } from 'expo-font'; - -export function processFonts( - fontFamilies: (string | undefined)[] -): (string | undefined)[] { - return fontFamilies.map((fontFamily) => processFontFamily(fontFamily)); -} diff --git a/src/native-stack/views/FontProcessor.tsx b/src/native-stack/views/FontProcessor.tsx index 59d2dc355..00e221514 100644 --- a/src/native-stack/views/FontProcessor.tsx +++ b/src/native-stack/views/FontProcessor.tsx @@ -1,6 +1,13 @@ -// do nothing outside of expo +// @ts-ignore: No declaration available +import ReactNativeStyleAttributes from 'react-native/Libraries/Components/View/ReactNativeStyleAttributes'; + export function processFonts( fontFamilies: (string | undefined)[] ): (string | undefined)[] { + // @ts-ignore: React Native types are incorrect here and don't consider fontFamily a style value + const fontFamilyProcessor = ReactNativeStyleAttributes.fontFamily?.process; + if (typeof fontFamilyProcessor === 'function') { + return fontFamilies.map(fontFamilyProcessor); + } return fontFamilies; }