1
0
mirror of https://github.com/tooot-app/app synced 2025-02-12 01:40:44 +01:00

Force all tex to have both font size and line height

https://github.com/facebook/react-native/issues/19193 describes the issue. But https://github.com/facebook/react-native/issues/19193#issuecomment-467852112 suggestion does not look well with PingFang and English
This commit is contained in:
Zhiyuan Zheng 2020-12-29 00:21:05 +01:00
parent 83b725b58d
commit 4f0621bbff
No known key found for this signature in database
GPG Key ID: 078A93AB607D85E0
39 changed files with 110 additions and 121 deletions

View File

@ -7,6 +7,7 @@ import ThemeManager from '@utils/styles/ThemeManager'
import chalk from 'chalk' import chalk from 'chalk'
import * as SplashScreen from 'expo-splash-screen' import * as SplashScreen from 'expo-splash-screen'
import React, { useCallback, useEffect, useState } from 'react' import React, { useCallback, useEffect, useState } from 'react'
import { Platform, Text } from 'react-native'
import { enableScreens } from 'react-native-screens' import { enableScreens } from 'react-native-screens'
import { onlineManager, QueryClient, QueryClientProvider } from 'react-query' import { onlineManager, QueryClient, QueryClientProvider } from 'react-query'
import { Provider } from 'react-redux' import { Provider } from 'react-redux'

View File

@ -57,7 +57,7 @@ const styles = StyleSheet.create({
borderRadius: 100 borderRadius: 100
}, },
text: { text: {
fontSize: StyleConstants.Font.Size.M ...StyleConstants.FontStyle.M
} }
}) })

View File

@ -93,7 +93,7 @@ const styles = StyleSheet.create({
borderRadius: 100 borderRadius: 100
}, },
text: { text: {
fontSize: StyleConstants.Font.Size.M ...StyleConstants.FontStyle.M
} }
}) })

View File

@ -24,7 +24,7 @@ const styles = StyleSheet.create({
paddingBottom: StyleConstants.Spacing.S paddingBottom: StyleConstants.Spacing.S
}, },
text: { text: {
fontSize: StyleConstants.Font.Size.S, ...StyleConstants.FontStyle.S,
fontWeight: StyleConstants.Font.Weight.Bold fontWeight: StyleConstants.Font.Weight.Bold
} }
}) })

View File

@ -133,10 +133,10 @@ const styles = StyleSheet.create({
}, },
text: { text: {
flex: 1, flex: 1,
fontSize: StyleConstants.Font.Size.M ...StyleConstants.FontStyle.M
}, },
content: { content: {
fontSize: StyleConstants.Font.Size.M ...StyleConstants.FontStyle.M
}, },
iconBack: { iconBack: {
marginLeft: 8 marginLeft: 8

View File

@ -40,7 +40,7 @@ const renderNode = ({
key={index} key={index}
style={{ style={{
color: theme.blue, color: theme.blue,
fontSize: StyleConstants.Font.Size[size] ...StyleConstants.FontStyle[size]
}} }}
onPress={() => { onPress={() => {
const tag = href.split(new RegExp(/\/tag\/(.*)|\/tags\/(.*)/)) const tag = href.split(new RegExp(/\/tag\/(.*)|\/tags\/(.*)/))
@ -59,7 +59,7 @@ const renderNode = ({
key={index} key={index}
style={{ style={{
color: theme.blue, color: theme.blue,
fontSize: StyleConstants.Font.Size[size] ...StyleConstants.FontStyle[size]
}} }}
onPress={() => { onPress={() => {
const username = href.split(new RegExp(/@(.*)/)) const username = href.split(new RegExp(/@(.*)/))
@ -79,13 +79,14 @@ const renderNode = ({
} else { } else {
const domain = href.split(new RegExp(/:\/\/(.[^\/]+)/)) const domain = href.split(new RegExp(/:\/\/(.[^\/]+)/))
const content = node.children && node.children[0].data const content = node.children && node.children[0].data
const shouldBeTag = tags && tags.filter(tag => `#${tag.name}` === content) const shouldBeTag =
tags && tags.filter(tag => `#${tag.name}` === content).length > 0
return ( return (
<Text <Text
key={index} key={index}
style={{ style={{
color: theme.blue, color: theme.blue,
fontSize: StyleConstants.Font.Size[size] ...StyleConstants.FontStyle[size]
}} }}
onPress={async () => onPress={async () =>
!shouldBeTag !shouldBeTag
@ -158,13 +159,9 @@ const ParseContent: React.FC<Props> = ({
const textComponent = useCallback(({ children }) => { const textComponent = useCallback(({ children }) => {
if (children) { if (children) {
return emojis ? ( return emojis ? (
<Emojis <Emojis content={children.toString()} emojis={emojis} size={size} />
content={children.toString()}
emojis={emojis}
size={StyleConstants.Font.Size[size]}
/>
) : ( ) : (
<Text>{children}</Text> <Text style={{ ...StyleConstants.FontStyle[size] }}>{children}</Text>
) )
} else { } else {
return null return null
@ -198,7 +195,7 @@ const ParseContent: React.FC<Props> = ({
return ( return (
<View> <View>
<Text <Text
style={{ lineHeight, color: theme.primary, overflow: 'hidden' }} style={{ color: theme.primary, overflow: 'hidden' }}
children={children} children={children}
numberOfLines={calNumberOfLines} numberOfLines={calNumberOfLines}
onLayout={({ nativeEvent }) => { onLayout={({ nativeEvent }) => {
@ -237,7 +234,7 @@ const ParseContent: React.FC<Props> = ({
<Text <Text
style={{ style={{
textAlign: 'center', textAlign: 'center',
fontSize: StyleConstants.Font.Size.S, ...StyleConstants.FontStyle.S,
color: theme.primary color: theme.primary
}} }}
> >

View File

@ -61,7 +61,7 @@ const styles = StyleSheet.create({
alignItems: 'center' alignItems: 'center'
}, },
error: { error: {
fontSize: StyleConstants.Font.Size.M, ...StyleConstants.FontStyle.M,
marginTop: StyleConstants.Spacing.S, marginTop: StyleConstants.Spacing.S,
marginBottom: StyleConstants.Spacing.L marginBottom: StyleConstants.Spacing.L
} }

View File

@ -90,7 +90,7 @@ const TimelineActioned: React.FC<Props> = ({
<Emojis <Emojis
content={content} content={content}
emojis={account.emojis} emojis={account.emojis}
size={StyleConstants.Font.Size.S} size='S'
/> />
) : ( ) : (
<Text>{content}</Text> <Text>{content}</Text>

View File

@ -194,7 +194,7 @@ const TimelineActions: React.FC<Props> = ({ queryKey, status, reblog }) => {
<Text <Text
style={{ style={{
color: theme.secondary, color: theme.secondary,
fontSize: StyleConstants.Font.Size.M, ...StyleConstants.FontStyle.M,
marginLeft: StyleConstants.Spacing.XS marginLeft: StyleConstants.Spacing.XS
}} }}
> >

View File

@ -152,7 +152,7 @@ const styles = StyleSheet.create({
borderRadius: 6 borderRadius: 6
}, },
sensitiveText: { sensitiveText: {
fontSize: StyleConstants.Font.Size.M ...StyleConstants.FontStyle.M
} }
}) })

View File

@ -57,7 +57,7 @@ const styles = StyleSheet.create({
alignItems: 'center' alignItems: 'center'
}, },
text: { text: {
fontSize: StyleConstants.Font.Size.S, ...StyleConstants.FontStyle.S,
textAlign: 'center', textAlign: 'center',
marginBottom: StyleConstants.Spacing.S marginBottom: StyleConstants.Spacing.S
} }

View File

@ -1,5 +1,5 @@
import React from 'react' import React from 'react'
import { Image, StyleSheet, Text, View } from 'react-native' import { Image, StyleSheet, Text } from 'react-native'
import { useTheme } from '@utils/styles/ThemeManager' import { useTheme } from '@utils/styles/ThemeManager'
import { StyleConstants } from '@utils/styles/constants' import { StyleConstants } from '@utils/styles/constants'
@ -8,7 +8,7 @@ const regexEmoji = new RegExp(/(:[a-z0-9_]+:)/)
export interface Props { export interface Props {
content: string content: string
emojis: Mastodon.Emoji[] emojis: Mastodon.Emoji[]
size: number size?: 'S' | 'M' | 'L'
fontBold?: boolean fontBold?: boolean
numberOfLines?: number numberOfLines?: number
} }
@ -16,22 +16,21 @@ export interface Props {
const Emojis: React.FC<Props> = ({ const Emojis: React.FC<Props> = ({
content, content,
emojis, emojis,
size, size = 'M',
fontBold = false, fontBold = false,
numberOfLines numberOfLines
}) => { }) => {
const { theme } = useTheme() const { theme } = useTheme()
const styles = StyleSheet.create({ const styles = StyleSheet.create({
text: { text: {
fontSize: size,
color: theme.primary, color: theme.primary,
...StyleConstants.FontStyle[size],
...(fontBold && { fontWeight: StyleConstants.Font.Weight.Bold }) ...(fontBold && { fontWeight: StyleConstants.Font.Weight.Bold })
}, },
image: { image: {
width: size, width: StyleConstants.Font.Size[size],
height: size, height: StyleConstants.Font.Size[size],
paddingTop: 1, marginBottom: -2 // hacking
marginBottom: -1
} }
}) })
@ -48,14 +47,12 @@ const Emojis: React.FC<Props> = ({
{emojiShortcode} {emojiShortcode}
</Text> </Text>
) : ( ) : (
<View key={i} style={styles.image}>
<Image <Image
key={i} key={i}
resizeMode='contain' resizeMode='contain'
source={{ uri: emojis[emojiIndex].url }} source={{ uri: emojis[emojiIndex].url }}
style={{ width: '100%', height: '100%' }} style={[styles.image]}
/> />
</View>
) )
} else { } else {
return str ? ( return str ? (
@ -71,4 +68,5 @@ const Emojis: React.FC<Props> = ({
) )
} }
export default React.memo(Emojis, () => true) // export default React.memo(Emojis, () => true)
export default Emojis

View File

@ -39,7 +39,7 @@ const styles = StyleSheet.create({
padding: StyleConstants.Spacing.M padding: StyleConstants.Spacing.M
}, },
text: { text: {
fontSize: StyleConstants.Font.Size.S, ...StyleConstants.FontStyle.S,
marginLeft: StyleConstants.Spacing.S marginLeft: StyleConstants.Spacing.S
} }
}) })

View File

@ -85,7 +85,7 @@ const HeaderConversation: React.FC<Props> = ({ queryKey, conversation }) => {
conversation.accounts[0].username conversation.accounts[0].username
} }
emojis={conversation.accounts[0].emojis} emojis={conversation.accounts[0].emojis}
size={StyleConstants.Font.Size.M} size='M'
fontBold={true} fontBold={true}
/> />
) : ( ) : (
@ -141,7 +141,7 @@ const styles = StyleSheet.create({
marginLeft: StyleConstants.Spacing.XS marginLeft: StyleConstants.Spacing.XS
}, },
nameWithoutEmoji: { nameWithoutEmoji: {
fontSize: StyleConstants.Font.Size.M, ...StyleConstants.FontStyle.M,
fontWeight: StyleConstants.Font.Weight.Bold fontWeight: StyleConstants.Font.Weight.Bold
}, },
meta: { meta: {
@ -151,7 +151,7 @@ const styles = StyleSheet.create({
marginBottom: StyleConstants.Spacing.S marginBottom: StyleConstants.Spacing.S
}, },
created_at: { created_at: {
fontSize: StyleConstants.Font.Size.S ...StyleConstants.FontStyle.S
}, },
unread: { unread: {
marginLeft: StyleConstants.Spacing.XS marginLeft: StyleConstants.Spacing.XS

View File

@ -68,12 +68,12 @@ const TimelineHeaderDefault: React.FC<Props> = ({
return ( return (
<View style={styles.base}> <View style={styles.base}>
<View style={queryKey ? { flexBasis: '80%' } : { flexBasis: '100%' }}> <View style={queryKey ? { flexBasis: '80%' } : { flexBasis: '100%' }}>
<View style={styles.name}> <View style={styles.nameAndAccount}>
{emojis?.length ? ( {emojis?.length ? (
<Emojis <Emojis
content={name} content={name}
emojis={emojis} emojis={emojis}
size={StyleConstants.Font.Size.M} size='M'
fontBold={true} fontBold={true}
/> />
) : ( ) : (
@ -168,11 +168,12 @@ const styles = StyleSheet.create({
nameAndMeta: { nameAndMeta: {
flexBasis: '80%' flexBasis: '80%'
}, },
name: { nameAndAccount: {
flexDirection: 'row' flexDirection: 'row',
alignItems: 'center'
}, },
nameWithoutEmoji: { nameWithoutEmoji: {
fontSize: StyleConstants.Font.Size.M, ...StyleConstants.FontStyle.M,
fontWeight: StyleConstants.Font.Weight.Bold fontWeight: StyleConstants.Font.Weight.Bold
}, },
account: { account: {
@ -186,13 +187,13 @@ const styles = StyleSheet.create({
marginBottom: StyleConstants.Spacing.S marginBottom: StyleConstants.Spacing.S
}, },
created_at: { created_at: {
fontSize: StyleConstants.Font.Size.S ...StyleConstants.FontStyle.S
}, },
visibility: { visibility: {
marginLeft: StyleConstants.Spacing.S marginLeft: StyleConstants.Spacing.S
}, },
application: { application: {
fontSize: StyleConstants.Font.Size.S, ...StyleConstants.FontStyle.S,
marginLeft: StyleConstants.Spacing.S marginLeft: StyleConstants.Spacing.S
}, },
action: { action: {

View File

@ -128,7 +128,7 @@ const TimelineHeaderNotification: React.FC<Props> = ({ notification }) => {
<Emojis <Emojis
content={name} content={name}
emojis={emojis} emojis={emojis}
size={StyleConstants.Font.Size.M} size='M'
fontBold={true} fontBold={true}
/> />
) : ( ) : (
@ -194,7 +194,7 @@ const styles = StyleSheet.create({
flexDirection: 'row' flexDirection: 'row'
}, },
nameWithoutEmoji: { nameWithoutEmoji: {
fontSize: StyleConstants.Font.Size.M, ...StyleConstants.FontStyle.M,
fontWeight: StyleConstants.Font.Weight.Bold fontWeight: StyleConstants.Font.Weight.Bold
}, },
account: { account: {
@ -208,13 +208,13 @@ const styles = StyleSheet.create({
marginBottom: StyleConstants.Spacing.S marginBottom: StyleConstants.Spacing.S
}, },
created_at: { created_at: {
fontSize: StyleConstants.Font.Size.S ...StyleConstants.FontStyle.S
}, },
visibility: { visibility: {
marginLeft: StyleConstants.Spacing.S marginLeft: StyleConstants.Spacing.S
}, },
application: { application: {
fontSize: StyleConstants.Font.Size.S, ...StyleConstants.FontStyle.S,
marginLeft: StyleConstants.Spacing.S marginLeft: StyleConstants.Spacing.S
}, },
relationship: { relationship: {

View File

@ -178,7 +178,7 @@ const TimelinePoll: React.FC<Props> = ({
<Emojis <Emojis
content={option.title} content={option.title}
emojis={poll.emojis} emojis={poll.emojis}
size={StyleConstants.Font.Size.M} size='M'
numberOfLines={2} numberOfLines={2}
/> />
</View> </View>
@ -238,7 +238,7 @@ const TimelinePoll: React.FC<Props> = ({
<Emojis <Emojis
content={option.title} content={option.title}
emojis={poll.emojis} emojis={poll.emojis}
size={StyleConstants.Font.Size.M} size='M'
numberOfLines={2} numberOfLines={2}
/> />
</View> </View>
@ -293,7 +293,7 @@ const styles = StyleSheet.create({
paddingRight: StyleConstants.Spacing.S paddingRight: StyleConstants.Spacing.S
}, },
percentage: { percentage: {
fontSize: StyleConstants.Font.Size.M ...StyleConstants.FontStyle.M
}, },
background: { background: {
height: StyleConstants.Spacing.XS, height: StyleConstants.Spacing.XS,
@ -313,10 +313,10 @@ const styles = StyleSheet.create({
marginRight: StyleConstants.Spacing.M marginRight: StyleConstants.Spacing.M
}, },
votes: { votes: {
fontSize: StyleConstants.Font.Size.S ...StyleConstants.FontStyle.S
}, },
expiration: { expiration: {
fontSize: StyleConstants.Font.Size.S ...StyleConstants.FontStyle.S
} }
}) })

View File

@ -111,10 +111,10 @@ const styles = StyleSheet.create({
marginLeft: StyleConstants.Spacing.S marginLeft: StyleConstants.Spacing.S
}, },
text1: { text1: {
fontSize: StyleConstants.Font.Size.M ...StyleConstants.FontStyle.M
}, },
text2: { text2: {
fontSize: StyleConstants.Font.Size.S, ...StyleConstants.FontStyle.S,
marginTop: StyleConstants.Spacing.S marginTop: StyleConstants.Spacing.S
} }
}) })

View File

@ -294,7 +294,7 @@ const styles = StyleSheet.create({
borderBottomWidth: 1, borderBottomWidth: 1,
paddingLeft: StyleConstants.Spacing.Global.PagePadding, paddingLeft: StyleConstants.Spacing.Global.PagePadding,
paddingRight: StyleConstants.Spacing.Global.PagePadding, paddingRight: StyleConstants.Spacing.Global.PagePadding,
fontSize: StyleConstants.Font.Size.M, ...StyleConstants.FontStyle.M,
marginRight: StyleConstants.Spacing.S marginRight: StyleConstants.Spacing.S
}, },
instanceInfo: { instanceInfo: {
@ -303,11 +303,11 @@ const styles = StyleSheet.create({
paddingRight: StyleConstants.Spacing.Global.PagePadding paddingRight: StyleConstants.Spacing.Global.PagePadding
}, },
instanceInfoHeader: { instanceInfoHeader: {
fontSize: StyleConstants.Font.Size.S, ...StyleConstants.FontStyle.S,
fontWeight: StyleConstants.Font.Weight.Bold, fontWeight: StyleConstants.Font.Weight.Bold,
marginBottom: StyleConstants.Spacing.XS marginBottom: StyleConstants.Spacing.XS
}, },
instanceInfoContent: { fontSize: StyleConstants.Font.Size.M }, instanceInfoContent: { ...StyleConstants.FontStyle.M },
instanceStats: { instanceStats: {
flex: 1, flex: 1,
flexDirection: 'row', flexDirection: 'row',
@ -320,7 +320,7 @@ const styles = StyleSheet.create({
flex: 1 flex: 1
}, },
disclaimer: { disclaimer: {
fontSize: StyleConstants.Font.Size.S, ...StyleConstants.FontStyle.S,
paddingLeft: StyleConstants.Spacing.Global.PagePadding, paddingLeft: StyleConstants.Spacing.Global.PagePadding,
paddingRight: StyleConstants.Spacing.Global.PagePadding, paddingRight: StyleConstants.Spacing.Global.PagePadding,
marginBottom: StyleConstants.Spacing.M marginBottom: StyleConstants.Spacing.M

View File

@ -147,7 +147,7 @@ const ScreenMeSettings: React.FC = () => {
const styles = StyleSheet.create({ const styles = StyleSheet.create({
version: { version: {
textAlign: 'center', textAlign: 'center',
fontSize: StyleConstants.Font.Size.S, ...StyleConstants.FontStyle.S,
marginTop: StyleConstants.Spacing.M marginTop: StyleConstants.Spacing.M
} }
}) })

View File

@ -31,7 +31,7 @@ const AccountInformationAccount = forwardRef<ShimmerPlaceholder, Props>(
<Text <Text
style={{ style={{
color: theme.secondary, color: theme.secondary,
fontSize: StyleConstants.Font.Size.M ...StyleConstants.FontStyle.M
}} }}
selectable selectable
> >

View File

@ -153,7 +153,7 @@ const styles = StyleSheet.create({
}, },
actionConversation: { marginRight: StyleConstants.Spacing.S }, actionConversation: { marginRight: StyleConstants.Spacing.S },
error: { error: {
fontSize: StyleConstants.Font.Size.S ...StyleConstants.FontStyle.S
} }
}) })

View File

@ -38,7 +38,7 @@ const AccountInformationCreated = forwardRef<ShimmerPlaceholder, Props>(
<Text <Text
style={{ style={{
color: theme.secondary, color: theme.secondary,
fontSize: StyleConstants.Font.Size.S ...StyleConstants.FontStyle.S
}} }}
> >
{t('content.created_at', { {t('content.created_at', {

View File

@ -33,14 +33,14 @@ const AccountInformationName = forwardRef<ShimmerPlaceholder, Props>(
<Emojis <Emojis
content={account?.display_name || account?.username} content={account?.display_name || account?.username}
emojis={account.emojis} emojis={account.emojis}
size={StyleConstants.Font.Size.L} size='L'
fontBold={true} fontBold={true}
/> />
) : ( ) : (
<Text <Text
style={{ style={{
color: theme.primary, color: theme.primary,
fontSize: StyleConstants.Font.Size.L, ...StyleConstants.FontStyle.L,
fontWeight: StyleConstants.Font.Weight.Bold fontWeight: StyleConstants.Font.Weight.Bold
}} }}
> >

View File

@ -88,7 +88,7 @@ const styles = StyleSheet.create({
justifyContent: 'space-between' justifyContent: 'space-between'
}, },
stat: { stat: {
fontSize: StyleConstants.Font.Size.S ...StyleConstants.FontStyle.S
} }
}) })

View File

@ -63,14 +63,14 @@ const AccountNav: React.FC<Props> = ({ accountState, scrollY, account }) => {
<Emojis <Emojis
content={account?.display_name || account?.username} content={account?.display_name || account?.username}
emojis={account.emojis} emojis={account.emojis}
size={StyleConstants.Font.Size.L} size='L'
fontBold={true} fontBold={true}
/> />
) : ( ) : (
<Text <Text
style={{ style={{
color: theme.primary, color: theme.primary,
fontSize: StyleConstants.Font.Size.L, ...StyleConstants.FontStyle.L,
fontWeight: StyleConstants.Font.Weight.Bold fontWeight: StyleConstants.Font.Weight.Bold
}} }}
> >

View File

@ -238,7 +238,7 @@ const styles = StyleSheet.create({
alignItems: 'center' alignItems: 'center'
}, },
headerText: { headerText: {
fontSize: StyleConstants.Font.Size.M * 1.5, ...StyleConstants.FontStyle.L,
fontWeight: StyleConstants.Font.Weight.Bold fontWeight: StyleConstants.Font.Weight.Bold
}, },
announcementContainer: { announcementContainer: {
@ -247,7 +247,7 @@ const styles = StyleSheet.create({
justifyContent: 'center' justifyContent: 'center'
}, },
published: { published: {
fontSize: StyleConstants.Font.Size.S, ...StyleConstants.FontStyle.S,
marginBottom: StyleConstants.Spacing.S marginBottom: StyleConstants.Spacing.S
}, },
pressable: { ...StyleSheet.absoluteFillObject }, pressable: { ...StyleSheet.absoluteFillObject },
@ -280,10 +280,10 @@ const styles = StyleSheet.create({
height: StyleConstants.Font.LineHeight.M height: StyleConstants.Font.LineHeight.M
}, },
reactionText: { reactionText: {
fontSize: StyleConstants.Font.Size.M ...StyleConstants.FontStyle.M,
}, },
reactionCount: { reactionCount: {
fontSize: StyleConstants.Font.Size.S, ...StyleConstants.FontStyle.S,
marginLeft: StyleConstants.Spacing.S marginLeft: StyleConstants.Spacing.S
}, },
indicators: { indicators: {

View File

@ -611,7 +611,7 @@ const Compose: React.FC<Props> = ({ route: { params }, navigation }) => {
const styles = StyleSheet.create({ const styles = StyleSheet.create({
count: { count: {
textAlign: 'center', textAlign: 'center',
fontSize: StyleConstants.Font.Size.M ...StyleConstants.FontStyle.M
} }
}) })

View File

@ -196,7 +196,7 @@ const styles = StyleSheet.create({
}, },
count: { count: {
textAlign: 'center', textAlign: 'center',
fontSize: StyleConstants.Font.Size.M, ...StyleConstants.FontStyle.M,
fontWeight: StyleConstants.Font.Weight.Bold fontWeight: StyleConstants.Font.Weight.Bold
} }
}) })

View File

@ -209,7 +209,7 @@ const styles = StyleSheet.create({
marginLeft: StyleConstants.Spacing.Global.PagePadding marginLeft: StyleConstants.Spacing.Global.PagePadding
}, },
sensitiveText: { sensitiveText: {
fontSize: StyleConstants.Font.Size.M, ...StyleConstants.FontStyle.M,
marginLeft: StyleConstants.Spacing.S marginLeft: StyleConstants.Spacing.S
}, },
imageContainer: { imageContainer: {
@ -226,7 +226,7 @@ const styles = StyleSheet.create({
bottom: bottom:
StyleConstants.Spacing.Global.PagePadding + StyleConstants.Spacing.S, StyleConstants.Spacing.Global.PagePadding + StyleConstants.Spacing.S,
left: StyleConstants.Spacing.Global.PagePadding + StyleConstants.Spacing.S, left: StyleConstants.Spacing.Global.PagePadding + StyleConstants.Spacing.S,
fontSize: StyleConstants.Font.Size.S, ...StyleConstants.FontStyle.S,
paddingLeft: StyleConstants.Spacing.S, paddingLeft: StyleConstants.Spacing.S,
paddingRight: StyleConstants.Spacing.S, paddingRight: StyleConstants.Spacing.S,
paddingTop: StyleConstants.Spacing.XS, paddingTop: StyleConstants.Spacing.XS,

View File

@ -328,17 +328,17 @@ const ComposeEditAttachment: React.FC<Props> = ({
const styles = StyleSheet.create({ const styles = StyleSheet.create({
imageFocusText: { imageFocusText: {
fontSize: StyleConstants.Font.Size.M, ...StyleConstants.FontStyle.M,
padding: StyleConstants.Spacing.Global.PagePadding padding: StyleConstants.Spacing.Global.PagePadding
}, },
altTextContainer: { padding: StyleConstants.Spacing.Global.PagePadding }, altTextContainer: { padding: StyleConstants.Spacing.Global.PagePadding },
altTextInputHeading: { altTextInputHeading: {
fontSize: StyleConstants.Font.Size.M, ...StyleConstants.FontStyle.M,
fontWeight: StyleConstants.Font.Weight.Bold fontWeight: StyleConstants.Font.Weight.Bold
}, },
altTextInput: { altTextInput: {
height: 200, height: 200,
fontSize: StyleConstants.Font.Size.M, ...StyleConstants.FontStyle.M,
marginTop: StyleConstants.Spacing.M, marginTop: StyleConstants.Spacing.M,
marginBottom: StyleConstants.Spacing.S, marginBottom: StyleConstants.Spacing.S,
padding: StyleConstants.Spacing.Global.PagePadding, padding: StyleConstants.Spacing.Global.PagePadding,
@ -348,7 +348,7 @@ const styles = StyleSheet.create({
altTextLength: { altTextLength: {
textAlign: 'right', textAlign: 'right',
marginRight: StyleConstants.Spacing.S, marginRight: StyleConstants.Spacing.S,
fontSize: StyleConstants.Font.Size.S, ...StyleConstants.FontStyle.S,
marginBottom: StyleConstants.Spacing.M marginBottom: StyleConstants.Spacing.M
} }
}) })

View File

@ -89,7 +89,7 @@ const styles = StyleSheet.create({
group: { group: {
position: 'absolute', position: 'absolute',
left: StyleConstants.Spacing.L, left: StyleConstants.Spacing.L,
fontSize: StyleConstants.Font.Size.S ...StyleConstants.FontStyle.S
}, },
emojis: { emojis: {
flex: 1, flex: 1,

View File

@ -172,7 +172,7 @@ const styles = StyleSheet.create({
padding: StyleConstants.Spacing.S, padding: StyleConstants.Spacing.S,
borderWidth: StyleSheet.hairlineWidth, borderWidth: StyleSheet.hairlineWidth,
borderRadius: 6, borderRadius: 6,
fontSize: StyleConstants.Font.Size.M, ...StyleConstants.FontStyle.M,
marginLeft: StyleConstants.Spacing.S marginLeft: StyleConstants.Spacing.S
}, },
controlAmount: { controlAmount: {

View File

@ -73,7 +73,7 @@ const ListItem = React.memo(
<Emojis <Emojis
content={item.display_name || item.username} content={item.display_name || item.username}
emojis={item.emojis} emojis={item.emojis}
size={StyleConstants.Font.Size.S} size='S'
/> />
) : ( ) : (
item.display_name || item.username item.display_name || item.username
@ -229,12 +229,12 @@ const styles = StyleSheet.create({
borderRadius: StyleConstants.Avatar.M borderRadius: StyleConstants.Avatar.M
}, },
accountName: { accountName: {
fontSize: StyleConstants.Font.Size.S, ...StyleConstants.FontStyle.S,
fontWeight: StyleConstants.Font.Weight.Bold, fontWeight: StyleConstants.Font.Weight.Bold,
marginBottom: StyleConstants.Spacing.XS marginBottom: StyleConstants.Spacing.XS
}, },
accountAccount: { accountAccount: {
fontSize: StyleConstants.Font.Size.S ...StyleConstants.FontStyle.S
}, },
hashtag: { hashtag: {
flex: 1, flex: 1,
@ -245,7 +245,7 @@ const styles = StyleSheet.create({
borderBottomWidth: StyleSheet.hairlineWidth borderBottomWidth: StyleSheet.hairlineWidth
}, },
hashtagText: { hashtagText: {
fontSize: StyleConstants.Font.Size.S, ...StyleConstants.FontStyle.S,
fontWeight: StyleConstants.Font.Weight.Bold, fontWeight: StyleConstants.Font.Weight.Bold,
marginBottom: StyleConstants.Spacing.XS marginBottom: StyleConstants.Spacing.XS
}, },

View File

@ -58,7 +58,7 @@ const ComposeSpoilerInput: React.FC = () => {
const styles = StyleSheet.create({ const styles = StyleSheet.create({
spoilerInput: { spoilerInput: {
fontSize: StyleConstants.Font.Size.M, ...StyleConstants.FontStyle.M,
marginTop: StyleConstants.Spacing.S, marginTop: StyleConstants.Spacing.S,
paddingBottom: StyleConstants.Spacing.M, paddingBottom: StyleConstants.Spacing.M,
marginLeft: StyleConstants.Spacing.Global.PagePadding, marginLeft: StyleConstants.Spacing.Global.PagePadding,

View File

@ -58,12 +58,11 @@ const ComposeTextInput: React.FC = () => {
const styles = StyleSheet.create({ const styles = StyleSheet.create({
textInput: { textInput: {
fontSize: StyleConstants.Font.Size.M, ...StyleConstants.FontStyle.M,
marginTop: StyleConstants.Spacing.S, marginTop: StyleConstants.Spacing.S,
paddingBottom: StyleConstants.Spacing.M, paddingBottom: StyleConstants.Spacing.M,
marginLeft: StyleConstants.Spacing.Global.PagePadding, marginLeft: StyleConstants.Spacing.Global.PagePadding,
marginRight: StyleConstants.Spacing.Global.PagePadding marginRight: StyleConstants.Spacing.Global.PagePadding
// borderBottomWidth: 0.5
} }
}) })

View File

@ -123,7 +123,7 @@ const ScreenSharedImagesViewer: React.FC<Props> = ({
const styles = StyleSheet.create({ const styles = StyleSheet.create({
headerCenter: { headerCenter: {
color: 'white', color: 'white',
fontSize: StyleConstants.Font.Size.M ...StyleConstants.FontStyle.M
} }
}) })

View File

@ -177,7 +177,7 @@ const ScreenSharedSearch: React.FC = () => {
<Emojis <Emojis
content={item.display_name || item.username} content={item.display_name || item.username}
emojis={item.emojis} emojis={item.emojis}
size={StyleConstants.Font.Size.S} size='S'
fontBold={true} fontBold={true}
/> />
) : ( ) : (
@ -233,7 +233,7 @@ const ScreenSharedSearch: React.FC = () => {
<Emojis <Emojis
content={item.account.display_name || item.account.username} content={item.account.display_name || item.account.username}
emojis={item.account.emojis} emojis={item.account.emojis}
size={StyleConstants.Font.Size.S} size='S'
fontBold={true} fontBold={true}
/> />
) : ( ) : (
@ -352,7 +352,7 @@ const styles = StyleSheet.create({
textInput: { textInput: {
flex: 1, flex: 1,
padding: StyleConstants.Spacing.S, padding: StyleConstants.Spacing.S,
fontSize: StyleConstants.Font.Size.M, ...StyleConstants.FontStyle.M,
marginRight: StyleConstants.Spacing.S marginRight: StyleConstants.Spacing.S
}, },
@ -364,7 +364,7 @@ const styles = StyleSheet.create({
StyleConstants.Spacing.S StyleConstants.Spacing.S
}, },
loading: { flex: 1, alignItems: 'center' }, loading: { flex: 1, alignItems: 'center' },
emptyFontSize: { fontSize: StyleConstants.Font.Size.S }, emptyFontSize: { ...StyleConstants.FontStyle.S },
emptyFontBold: { emptyFontBold: {
fontWeight: StyleConstants.Font.Weight.Bold fontWeight: StyleConstants.Font.Weight.Bold
}, },
@ -379,7 +379,7 @@ const styles = StyleSheet.create({
borderBottomWidth: StyleSheet.hairlineWidth borderBottomWidth: StyleSheet.hairlineWidth
}, },
sectionHeaderText: { sectionHeaderText: {
fontSize: StyleConstants.Font.Size.M, ...StyleConstants.FontStyle.M,
fontWeight: StyleConstants.Font.Weight.Bold, fontWeight: StyleConstants.Font.Weight.Bold,
textAlign: 'center' textAlign: 'center'
}, },
@ -387,7 +387,7 @@ const styles = StyleSheet.create({
padding: StyleConstants.Spacing.S padding: StyleConstants.Spacing.S
}, },
sectionFooterText: { sectionFooterText: {
fontSize: StyleConstants.Font.Size.S, ...StyleConstants.FontStyle.S,
textAlign: 'center' textAlign: 'center'
}, },
itemDefault: { itemDefault: {
@ -406,12 +406,12 @@ const styles = StyleSheet.create({
marginRight: StyleConstants.Spacing.S marginRight: StyleConstants.Spacing.S
}, },
nameWithoutEmoji: { nameWithoutEmoji: {
fontSize: StyleConstants.Font.Size.S, ...StyleConstants.FontStyle.S,
fontWeight: StyleConstants.Font.Weight.Bold fontWeight: StyleConstants.Font.Weight.Bold
}, },
itemAccountAcct: { marginTop: StyleConstants.Spacing.XS }, itemAccountAcct: { marginTop: StyleConstants.Spacing.XS },
itemHashtag: { itemHashtag: {
fontSize: StyleConstants.Font.Size.M ...StyleConstants.FontStyle.M
}, },
itemStatus: { itemStatus: {
marginTop: StyleConstants.Spacing.S marginTop: StyleConstants.Spacing.S

View File

@ -2,15 +2,14 @@ const Base = 4
export const StyleConstants = { export const StyleConstants = {
Font: { Font: {
Size: { Size: { S: 14, M: 16, L: 18 },
S: 14, LineHeight: { S: 16, M: 20, L: 24 },
M: 16, Weight: { Bold: '600' as '600' }
L: 18
}, },
LineHeight: { M: 20, L: 24 }, FontStyle: {
Weight: { S: { fontSize: 14, lineHeight: 16 },
Bold: '600' as '600' M: { fontSize: 16, lineHeight: 20 },
} L: { fontSize: 20, lineHeight: 24 }
}, },
Spacing: { Spacing: {
@ -19,14 +18,8 @@ export const StyleConstants = {
M: Base * 4, M: Base * 4,
L: Base * 6, L: Base * 6,
XL: Base * 10, XL: Base * 10,
Global: { Global: { PagePadding: Base * 4 }
PagePadding: Base * 4
}
}, },
Avatar: { Avatar: { S: 36, M: 52, L: 104 }
S: 36,
M: 52,
L: 104
}
} }