diff options
author | Jaz Volpert <ericvolp12@gmail.com> | 2024-10-04 14:28:52 -0700 |
---|---|---|
committer | Jaz Volpert <ericvolp12@gmail.com> | 2024-10-04 14:28:52 -0700 |
commit | 5f3c4c60dbf2232a76ddb591f0eb51359443113a (patch) | |
tree | e9308f1e3d3cc75d9ed3abd15d5e5183a5b62ef7 /src/components/Typography.tsx | |
parent | 0d99b8b0550084ef55f294b33ef5e12608fd5035 (diff) | |
parent | 3fb14d184a84cb892c751338c9aea625f5767a47 (diff) | |
download | voidsky-5f3c4c60dbf2232a76ddb591f0eb51359443113a.tar.zst |
Merge branch 'main' into static_asset_cdn
Diffstat (limited to 'src/components/Typography.tsx')
-rw-r--r-- | src/components/Typography.tsx | 31 |
1 files changed, 19 insertions, 12 deletions
diff --git a/src/components/Typography.tsx b/src/components/Typography.tsx index 501e23872..19eba35fb 100644 --- a/src/components/Typography.tsx +++ b/src/components/Typography.tsx @@ -53,11 +53,14 @@ export function childIsString( ) } -export function renderChildrenWithEmoji(children: StringChild) { +export function renderChildrenWithEmoji( + children: StringChild, + props: Omit<TextProps, 'children'> = {}, +) { const normalized = Array.isArray(children) ? children : [children] return ( - <UITextView> + <UITextView {...props}> {normalized.map(child => { if (typeof child !== 'string') return child @@ -68,10 +71,12 @@ export function renderChildrenWithEmoji(children: StringChild) { } return child.split(EMOJI).map((stringPart, index) => ( - <UITextView key={index}> + <UITextView key={index} {...props}> {stringPart} {emojis[index] ? ( - <UITextView style={{color: 'black', fontFamily: 'System'}}> + <UITextView + {...props} + style={[props?.style, {color: 'black', fontFamily: 'System'}]}> {emojis[index]} </UITextView> ) : null} @@ -163,15 +168,17 @@ export function Text({ } } + const shared = { + uiTextView: true, + selectable, + style: s, + dataSet: Object.assign({tooltip: title}, dataSet || {}), + ...rest, + } + return ( - <UITextView - selectable={selectable} - uiTextView - style={s} - {...rest} - // @ts-ignore - dataSet={Object.assign({tooltip: title}, dataSet || {})}> - {isIOS && emoji ? renderChildrenWithEmoji(children) : children} + <UITextView {...shared}> + {isIOS && emoji ? renderChildrenWithEmoji(children, shared) : children} </UITextView> ) } |