@@ -10,12 +10,12 @@ import { createStyles, TextStyleSheet } from "@lib/ui/styles";
1010import { NavigationNative , tokens } from "@metro/common" ;
1111import { Button , Card , IconButton , Stack , Text } from "@metro/common/components" ;
1212import { findByProps } from "@metro" ;
13+ import { useMemo , useState } from "react" ;
1314import { PixelRatio , View } from "react-native" ;
1415import { WebView } from "react-native-webview" ;
1516import previewHtml from "./preview.html" ;
1617
1718import FontEditor from "./FontEditor" ;
18- import { useMemo , useState } from "react" ;
1919
2020const { useToken } = lazyDestructure ( ( ) => findByProps ( "useToken" ) ) ;
2121
@@ -36,12 +36,13 @@ function FontPreview({ font }: { font: FontDefinition; }) {
3636 const { fontFamily : fontFamilyList , fontSize } = TextStyleSheet [ "text-md/medium" ] ;
3737 const fontFamily = fontFamilyList ! . split ( / , / g) [ 0 ] ;
3838
39- const props = {
39+ const props = useMemo ( ( ) => ( {
4040 family : font . main [ fontFamily ] ,
4141 size : fontSize ! * PixelRatio . getFontScale ( ) ,
4242 color : TEXT_DEFAULT ,
43- text : "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua."
44- } ;
43+ text :
44+ "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua." ,
45+ } ) , [ font . main , fontFamily , fontSize , TEXT_DEFAULT ] ) ;
4546
4647 return < View style = { { width : "100%" , height : 64 } } >
4748 < WebView
0 commit comments