import { StyleSheet , TextStyle , ViewStyle } from 'react-native' ; import { config } from '../../constants/config' ; import { ResponsiveStyleSheet , ScaleByFactor } from '../../utils/responsive' ; export interface LearnScreenStyles { screen : ViewStyle ; top_container : ViewStyle ; button : ViewStyle ; button_text : TextStyle ; } export class LearnScreenResponsiveStyles extends ResponsiveStyleSheet < LearnScreenStyles > { public baseStyles ( scaleByFactor ) { return { screen : { flex : 1 , } , top_container : { paddingHorizontal : scaleByFactor ( 16 ) , paddingVertical : scaleByFactor ( 16 ) , flexDirection : 'row' , justifyContent : 'center' , alignItems : 'center' , borderBottomWidth : StyleSheet . hairlineWidth , } , button : { } , button_text : { textAlign : 'center' , fontWeight : 'bold' , fontSize : scaleByFactor ( 15 ) , } , } ; } public lightStyles ( ) { return { top_container : { borderBottomColor : config . styles . light . primaryBorderColor , } , button_text : { color : '#888' , } , } ; } public darkStyles ( ) { return { screen : { borderTopWidth : StyleSheet . hairlineWidth , borderTopColor : '#131313' , } , top_container : { borderBottomColor : config . styles . dark . primaryBorderColor , } , button_text : { color : '#aaa' , } , } ; } } export const learnScreenResponsiveStyles = new LearnScreenResponsiveStyles ( ) ;