mirror of https://github.com/abpframework/abp.git
101 changed files with 1192 additions and 5417 deletions
@ -0,0 +1,4 @@ |
|||||
|
{ |
||||
|
"12bb71342c6255bbf50437ec8f4441c083f47cdb74bd89160c15e4f43e52a1cb": true, |
||||
|
"40b842e832070c58deac6aa9e08fa459302ee3f9da492c7e77d93d2fbf4a56fd": true |
||||
|
} |
||||
@ -1,39 +1,101 @@ |
|||||
import { Ionicons } from '@expo/vector-icons'; |
import { NavigationContainer } from '@react-navigation/native'; |
||||
import * as Font from 'expo-font'; |
import { createNativeStackNavigator } from '@react-navigation/native-stack'; |
||||
import { StyleProvider } from 'native-base'; |
import i18n from 'i18n-js'; |
||||
import React, { useEffect, useState } from 'react'; |
import { NativeBaseProvider } from 'native-base'; |
||||
|
import React, { useEffect, useMemo, useState } from 'react'; |
||||
import { enableScreens } from 'react-native-screens'; |
import { enableScreens } from 'react-native-screens'; |
||||
import { Provider } from 'react-redux'; |
import { Provider } from 'react-redux'; |
||||
import { PersistGate } from 'redux-persist/integration/react'; |
import { PersistGate } from 'redux-persist/integration/react'; |
||||
import AppContainer from './src/components/AppContainer/AppContainer'; |
import { getEnvVars } from './Environment'; |
||||
|
import Loading from './src/components/Loading/Loading'; |
||||
|
import { LocalizationContext } from './src/contexts/LocalizationContext'; |
||||
import { initAPIInterceptor } from './src/interceptors/APIInterceptor'; |
import { initAPIInterceptor } from './src/interceptors/APIInterceptor'; |
||||
|
import AuthNavigator from './src/navigators/AuthNavigator'; |
||||
|
import DrawerNavigator from './src/navigators/DrawerNavigator'; |
||||
import { persistor, store } from './src/store'; |
import { persistor, store } from './src/store'; |
||||
import getTheme from './src/theme/components'; |
import AppActions from './src/store/actions/AppActions'; |
||||
import { activeTheme } from './src/theme/variables'; |
import PersistentStorageActions from './src/store/actions/PersistentStorageActions'; |
||||
|
import { createLanguageSelector } from './src/store/selectors/AppSelectors'; |
||||
|
import { createTokenSelector } from './src/store/selectors/PersistentStorageSelectors'; |
||||
|
import { connectToRedux } from './src/utils/ReduxConnect'; |
||||
|
import { isTokenValid } from './src/utils/TokenUtils'; |
||||
|
|
||||
|
const Stack = createNativeStackNavigator(); |
||||
|
|
||||
|
const { localization } = getEnvVars(); |
||||
|
|
||||
|
i18n.defaultSeparator = '::'; |
||||
|
|
||||
|
const cloneT = i18n.t; |
||||
|
i18n.t = (key, ...args) => { |
||||
|
if (key.slice(0, 2) === '::') { |
||||
|
key = localization.defaultResourceName + key; |
||||
|
} |
||||
|
return cloneT(key, ...args); |
||||
|
}; |
||||
|
|
||||
enableScreens(); |
enableScreens(); |
||||
initAPIInterceptor(store); |
initAPIInterceptor(store); |
||||
|
|
||||
export default function App() { |
export default function App() { |
||||
|
const language = createLanguageSelector()(store.getState()); |
||||
const [isReady, setIsReady] = useState(false); |
const [isReady, setIsReady] = useState(false); |
||||
|
|
||||
|
const localizationContextValue = useMemo( |
||||
|
() => ({ |
||||
|
t: i18n.t, |
||||
|
locale: (language || {}).cultureName, |
||||
|
}), |
||||
|
[language] |
||||
|
); |
||||
|
|
||||
useEffect(() => { |
useEffect(() => { |
||||
Font.loadAsync({ |
store.dispatch( |
||||
Roboto: require('native-base/Fonts/Roboto.ttf'), |
AppActions.fetchAppConfigAsync({ |
||||
Roboto_medium: require('native-base/Fonts/Roboto_medium.ttf'), |
callback: () => setIsReady(true), |
||||
...Ionicons.font, |
showLoading: true, |
||||
}).then(() => setIsReady(true)); |
}) |
||||
|
); |
||||
}, []); |
}, []); |
||||
|
|
||||
return ( |
return ( |
||||
<Provider store={store}> |
<NavigationContainer> |
||||
<PersistGate loading={null} persistor={persistor}> |
<Provider store={store}> |
||||
{isReady ? ( |
<PersistGate loading={null} persistor={persistor}> |
||||
<StyleProvider style={getTheme(activeTheme)}> |
<NativeBaseProvider> |
||||
<AppContainer /> |
{isReady ? ( |
||||
</StyleProvider> |
<LocalizationContext.Provider value={localizationContextValue}> |
||||
) : null} |
<ConnectedAppContainer /> |
||||
</PersistGate> |
</LocalizationContext.Provider> |
||||
</Provider> |
) : null} |
||||
|
<Loading /> |
||||
|
</NativeBaseProvider> |
||||
|
</PersistGate> |
||||
|
</Provider> |
||||
|
</NavigationContainer> |
||||
); |
); |
||||
} |
} |
||||
|
|
||||
|
function AppContainer({token, setToken}) { |
||||
|
const isValid = useMemo(() => isTokenValid(token), [token]); |
||||
|
|
||||
|
useEffect(() => { |
||||
|
if (!isValid && token && token.access_token) { |
||||
|
setToken({}) |
||||
|
} |
||||
|
}, [isValid]); |
||||
|
|
||||
|
|
||||
|
return isValid ? <DrawerNavigator /> : <AuthNavigator /> |
||||
|
} |
||||
|
|
||||
|
|
||||
|
const ConnectedAppContainer = connectToRedux({ |
||||
|
component: AppContainer, |
||||
|
stateProps: (state) => ({ |
||||
|
token: createTokenSelector()(state), |
||||
|
}), |
||||
|
dispatchProps: { |
||||
|
setToken: PersistentStorageActions.setToken, |
||||
|
}, |
||||
|
}); |
||||
|
|||||
|
After Width: | Height: | Size: 17 KiB |
@ -1,64 +1,43 @@ |
|||||
{ |
{ |
||||
|
"name": "myprojectname", |
||||
|
"version": "1.0.0", |
||||
"main": "node_modules/expo/AppEntry.js", |
"main": "node_modules/expo/AppEntry.js", |
||||
"scripts": { |
"scripts": { |
||||
"start": "expo start", |
"start": "expo start", |
||||
"android": "expo start --android", |
"android": "expo start --android", |
||||
"ios": "expo start --ios", |
"ios": "expo start --ios", |
||||
"web": "expo start --web", |
"web": "expo start --web", |
||||
"eject": "expo eject", |
"eject": "expo eject" |
||||
"lint": "eslint *.js **/*.js", |
|
||||
"lint:fix": "yarn lint --fix" |
|
||||
}, |
}, |
||||
"dependencies": { |
"dependencies": { |
||||
"@expo/vector-icons": "^10.2.1", |
"@react-native-async-storage/async-storage": "~1.15.0", |
||||
"@react-native-async-storage/async-storage": "^1.13.2", |
"@react-navigation/drawer": "^6.1.8", |
||||
"@react-native-community/masked-view": "0.1.10", |
"@react-navigation/native": "^6.0.6", |
||||
"@react-navigation/drawer": "^5.11.3", |
"@react-navigation/native-stack": "^6.2.5", |
||||
"@react-navigation/native": "^5.8.9", |
"@reduxjs/toolkit": "^1.7.1", |
||||
"@react-navigation/stack": "^5.12.6", |
"axios": "^0.24.0", |
||||
"@reduxjs/toolkit": "^1.4.0", |
"expo": "~44.0.0", |
||||
"axios": "^0.21.0", |
"expo-status-bar": "~1.2.0", |
||||
"color": "^3.1.3", |
"formik": "^2.2.9", |
||||
"expo": "~39.0.4", |
|
||||
"expo-constants": "~9.2.0", |
|
||||
"expo-font": "~8.3.0", |
|
||||
"expo-status-bar": "~1.0.2", |
|
||||
"formik": "^2.2.5", |
|
||||
"i18n-js": "^3.8.0", |
"i18n-js": "^3.8.0", |
||||
"lodash": "^4.17.20", |
"native-base": "^3.3.1", |
||||
"native-base": "2.13.14", |
"prop-types": "^15.8.1", |
||||
"prop-types": "^15.7.2", |
|
||||
"react": "17.0.1", |
"react": "17.0.1", |
||||
"react-dom": "17.0.1", |
"react-dom": "17.0.1", |
||||
"react-native": "https://github.com/expo/react-native/archive/sdk-39.0.4.tar.gz", |
"react-native": "0.64.3", |
||||
"react-native-gesture-handler": "~1.7.0 ", |
"react-native-gesture-handler": "~2.1.0", |
||||
"react-native-reanimated": "~1.13.2", |
"react-native-reanimated": "~2.3.1", |
||||
"react-native-safe-area-context": "3.1.4", |
"react-native-safe-area-context": "3.3.2", |
||||
"react-native-safe-area-view": "^1.1.1", |
"react-native-screens": "~3.10.1", |
||||
"react-native-screens": "~2.10.1", |
"react-native-svg": "12.1.1", |
||||
"react-native-web": "~0.14.8", |
"react-native-web": "0.17.1", |
||||
"react-redux": "^7.2.2", |
"react-redux": "^7.2.6", |
||||
"redux-persist": "^6.0.0", |
"redux-persist": "^6.0.0", |
||||
"redux-saga": "^1.1.3", |
"redux-saga": "^1.1.3", |
||||
"reselect": "^4.0.0", |
"yup": "^0.32.11" |
||||
"yup": "^0.29.3" |
|
||||
}, |
}, |
||||
"devDependencies": { |
"devDependencies": { |
||||
"@babel/core": "~7.12.3", |
"@babel/core": "^7.12.9" |
||||
"@types/i18n-js": "^3.0.3", |
|
||||
"@types/react": "~16.9.56", |
|
||||
"@types/react-native": "~0.63.35", |
|
||||
"@types/react-redux": "^7.1.11", |
|
||||
"@types/yup": "^0.29.9", |
|
||||
"babel-eslint": "~10.1.0", |
|
||||
"babel-preset-expo": "~8.3.0", |
|
||||
"eslint": "^7.13.0", |
|
||||
"eslint-config-airbnb": "^18.2.1", |
|
||||
"eslint-config-prettier": "^6.15.0", |
|
||||
"eslint-plugin-import": "^2.22.1", |
|
||||
"eslint-plugin-jsx-a11y": "^6.4.1", |
|
||||
"eslint-plugin-react": "^7.21.5", |
|
||||
"prettier": "^2.1.2" |
|
||||
}, |
}, |
||||
"private": true |
"private": true |
||||
} |
} |
||||
|
|||||
@ -0,0 +1,7 @@ |
|||||
|
import api from './API'; |
||||
|
|
||||
|
export function getErrorRateStatistics(params = {}) { |
||||
|
return api |
||||
|
.get('/api/audit-logging/audit-logs/statistics/error-rate', { params }) |
||||
|
.then(({ data }) => data); |
||||
|
} |
||||
@ -0,0 +1,16 @@ |
|||||
|
import { Ionicons } from '@expo/vector-icons'; |
||||
|
import { Icon } from 'native-base'; |
||||
|
import React from 'react'; |
||||
|
|
||||
|
export default function AddIcon({ onPress, ...iconProps }) { |
||||
|
return ( |
||||
|
<Icon |
||||
|
onPress={onPress} |
||||
|
as={Ionicons} |
||||
|
name={'add'} |
||||
|
size="7" |
||||
|
marginRight={-2} |
||||
|
{...iconProps} |
||||
|
/> |
||||
|
); |
||||
|
} |
||||
@ -1,88 +0,0 @@ |
|||||
import { NavigationContainer } from '@react-navigation/native'; |
|
||||
import i18n from 'i18n-js'; |
|
||||
import { Root } from 'native-base'; |
|
||||
import PropTypes from 'prop-types'; |
|
||||
import React, { useEffect, useMemo } from 'react'; |
|
||||
import { Platform, StatusBar } from 'react-native'; |
|
||||
import { getEnvVars } from '../../../Environment'; |
|
||||
import { LocalizationContext } from '../../contexts/LocalizationContext'; |
|
||||
import AuthNavigator from '../../navigators/AuthNavigator'; |
|
||||
import DrawerNavigator from '../../navigators/DrawerNavigator'; |
|
||||
import AppActions from '../../store/actions/AppActions'; |
|
||||
import PersistentStorageActions from '../../store/actions/PersistentStorageActions'; |
|
||||
import { createLanguageSelector } from '../../store/selectors/AppSelectors'; |
|
||||
import { createTokenSelector } from '../../store/selectors/PersistentStorageSelectors'; |
|
||||
import { connectToRedux } from '../../utils/ReduxConnect'; |
|
||||
import { isTokenValid } from '../../utils/TokenUtils'; |
|
||||
import Loading from '../Loading/Loading'; |
|
||||
|
|
||||
const { localization } = getEnvVars(); |
|
||||
|
|
||||
i18n.defaultSeparator = '::'; |
|
||||
|
|
||||
const cloneT = i18n.t; |
|
||||
i18n.t = (key, ...args) => { |
|
||||
if (key.slice(0, 2) === '::') { |
|
||||
key = localization.defaultResourceName + key; |
|
||||
} |
|
||||
return cloneT(key, ...args); |
|
||||
}; |
|
||||
|
|
||||
function AppContainer({ language, fetchAppConfig, token, setToken }) { |
|
||||
const platform = Platform.OS; |
|
||||
|
|
||||
const localizationContext = useMemo( |
|
||||
() => ({ |
|
||||
t: i18n.t, |
|
||||
locale: (language || {}).cultureName, |
|
||||
}), |
|
||||
[language], |
|
||||
); |
|
||||
|
|
||||
const isValid = useMemo(() => isTokenValid(token), [token]); |
|
||||
|
|
||||
useEffect(() => { |
|
||||
if (!isValid && token && token.access_token) { |
|
||||
setToken({}); |
|
||||
} |
|
||||
}, [isValid]); |
|
||||
|
|
||||
useEffect(() => { |
|
||||
fetchAppConfig(); |
|
||||
}, []); |
|
||||
|
|
||||
return ( |
|
||||
<> |
|
||||
<StatusBar barStyle={platform === 'ios' ? 'dark-content' : 'light-content'} /> |
|
||||
<Root> |
|
||||
{language ? ( |
|
||||
<LocalizationContext.Provider value={localizationContext}> |
|
||||
<NavigationContainer> |
|
||||
{isValid ? <DrawerNavigator /> : <AuthNavigator />} |
|
||||
</NavigationContainer> |
|
||||
</LocalizationContext.Provider> |
|
||||
) : null} |
|
||||
</Root> |
|
||||
<Loading /> |
|
||||
</> |
|
||||
); |
|
||||
} |
|
||||
|
|
||||
AppContainer.propTypes = { |
|
||||
language: PropTypes.object, |
|
||||
token: PropTypes.object.isRequired, |
|
||||
fetchAppConfig: PropTypes.func.isRequired, |
|
||||
setToken: PropTypes.func.isRequired, |
|
||||
}; |
|
||||
|
|
||||
export default connectToRedux({ |
|
||||
component: AppContainer, |
|
||||
stateProps: state => ({ |
|
||||
language: createLanguageSelector()(state), |
|
||||
token: createTokenSelector()(state), |
|
||||
}), |
|
||||
dispatchProps: { |
|
||||
fetchAppConfig: AppActions.fetchAppConfigAsync, |
|
||||
setToken: PersistentStorageActions.setToken, |
|
||||
}, |
|
||||
}); |
|
||||
@ -0,0 +1 @@ |
|||||
|
export { default as FormButtons } from './FormButtons'; |
||||
@ -0,0 +1,17 @@ |
|||||
|
import { Ionicons } from '@expo/vector-icons'; |
||||
|
import { Icon } from 'native-base'; |
||||
|
import React from 'react'; |
||||
|
import { Platform } from 'react-native'; |
||||
|
|
||||
|
export default function HamburgerIcon({ navigation, ...iconProps }) { |
||||
|
return ( |
||||
|
<Icon |
||||
|
onPress={() => navigation.openDrawer()} |
||||
|
as={Ionicons} |
||||
|
name={Platform.OS ? 'ios-menu' : 'md-menu'} |
||||
|
size="8" |
||||
|
marginLeft={2} |
||||
|
{...iconProps} |
||||
|
/> |
||||
|
); |
||||
|
} |
||||
@ -1,19 +0,0 @@ |
|||||
import React from 'react'; |
|
||||
import { TouchableOpacity } from 'react-native'; |
|
||||
import { Icon } from 'native-base'; |
|
||||
import PropTypes from 'prop-types'; |
|
||||
|
|
||||
function MenuIcon({ onPress, iconName = 'menu' }) { |
|
||||
return ( |
|
||||
<TouchableOpacity onPress={onPress}> |
|
||||
<Icon navElement name={iconName} /> |
|
||||
</TouchableOpacity> |
|
||||
); |
|
||||
} |
|
||||
|
|
||||
MenuIcon.propTypes = { |
|
||||
onPress: PropTypes.func.isRequired, |
|
||||
iconName: PropTypes.string, |
|
||||
}; |
|
||||
|
|
||||
export default MenuIcon; |
|
||||
@ -1,18 +1,16 @@ |
|||||
import i18n from 'i18n-js'; |
import i18n from 'i18n-js'; |
||||
import { connectStyle } from 'native-base'; |
|
||||
import React, { forwardRef } from 'react'; |
import React, { forwardRef } from 'react'; |
||||
import { Text } from 'react-native'; |
import { Text } from 'react-native'; |
||||
|
|
||||
const ValidationMessage = ({ children, ...props }) => |
const ValidationMessage = ({ children, ...props }) => |
||||
children ? <Text {...props}>{i18n.t(children)}</Text> : null; |
children ? <Text style={styles} {...props}>{i18n.t(children)}</Text> : null; |
||||
|
|
||||
const styles = { |
const styles = { |
||||
fontSize: 12, |
fontSize: 12, |
||||
marginHorizontal: 10, |
marginTop: 3, |
||||
marginTop: -5, |
|
||||
color: '#ed2f2f', |
color: '#ed2f2f', |
||||
}; |
}; |
||||
|
|
||||
const Forwarded = forwardRef((props, ref) => <ValidationMessage {...props} forwardedRef={ref} />); |
const Forwarded = forwardRef((props, ref) => <ValidationMessage {...props} forwardedRef={ref} />); |
||||
|
|
||||
export default connectStyle('ABP.ValidationMessage', styles)(Forwarded); |
export default Forwarded |
||||
|
|||||
@ -1,20 +1,43 @@ |
|||||
import React from 'react'; |
|
||||
import { createDrawerNavigator } from '@react-navigation/drawer'; |
import { createDrawerNavigator } from '@react-navigation/drawer'; |
||||
|
import React from 'react'; |
||||
|
import DrawerContent from '../components/DrawerContent/DrawerContent'; |
||||
|
import HamburgerIcon from '../components/HamburgerIcon/HamburgerIcon'; |
||||
|
import { LocalizationContext } from '../contexts/LocalizationContext'; |
||||
import HomeStackNavigator from './HomeNavigator'; |
import HomeStackNavigator from './HomeNavigator'; |
||||
import SettingsStackNavigator from './SettingsNavigator'; |
import SettingsStackNavigator from './SettingsNavigator'; |
||||
import UsersStackNavigator from './UsersNavigator'; |
|
||||
import TenantsStackNavigator from './TenantsNavigator'; |
import TenantsStackNavigator from './TenantsNavigator'; |
||||
import DrawerContent from '../components/DrawerContent/DrawerContent'; |
import UsersStackNavigator from './UsersNavigator'; |
||||
|
|
||||
const Drawer = createDrawerNavigator(); |
const Drawer = createDrawerNavigator(); |
||||
|
|
||||
export default function DrawerNavigator() { |
export default function DrawerNavigator() { |
||||
|
const { t } = React.useContext(LocalizationContext); |
||||
|
|
||||
return ( |
return ( |
||||
<Drawer.Navigator initialRouteName="Home" drawerContent={DrawerContent}> |
<Drawer.Navigator initialRouteName="Home" drawerContent={DrawerContent}> |
||||
<Drawer.Screen name="Home" component={HomeStackNavigator} /> |
<Drawer.Screen |
||||
<Drawer.Screen name="Users" component={UsersStackNavigator} /> |
name="HomeStack" |
||||
<Drawer.Screen name="Tenants" component={TenantsStackNavigator} /> |
component={HomeStackNavigator} |
||||
<Drawer.Screen name="Settings" component={SettingsStackNavigator} /> |
options={({ navigation }) => ({ |
||||
|
title: t('::Menu:Home'), |
||||
|
headerLeft: () => <HamburgerIcon navigation={navigation} />, |
||||
|
})} |
||||
|
/> |
||||
|
<Drawer.Screen |
||||
|
name="TenantsStack" |
||||
|
component={TenantsStackNavigator} |
||||
|
options={{ header: () => null }} |
||||
|
/> |
||||
|
<Drawer.Screen |
||||
|
name="UsersStack" |
||||
|
component={UsersStackNavigator} |
||||
|
options={{ header: () => null }} |
||||
|
/> |
||||
|
<Drawer.Screen |
||||
|
name="SettingsStack" |
||||
|
component={SettingsStackNavigator} |
||||
|
options={{ header: () => null }} |
||||
|
/> |
||||
</Drawer.Navigator> |
</Drawer.Navigator> |
||||
); |
); |
||||
} |
} |
||||
|
|||||
@ -1,39 +0,0 @@ |
|||||
// @flow
|
|
||||
|
|
||||
import variable from '../variables/Platform'; |
|
||||
import { PLATFORM } from '../variables/CommonColor'; |
|
||||
|
|
||||
export default (variables /* : * */ = variable) => { |
|
||||
const badgeTheme = { |
|
||||
'.primary': { |
|
||||
backgroundColor: variables.buttonPrimaryBg, |
|
||||
}, |
|
||||
'.warning': { |
|
||||
backgroundColor: variables.buttonWarningBg, |
|
||||
}, |
|
||||
'.info': { |
|
||||
backgroundColor: variables.buttonInfoBg, |
|
||||
}, |
|
||||
'.success': { |
|
||||
backgroundColor: variables.buttonSuccessBg, |
|
||||
}, |
|
||||
'.danger': { |
|
||||
backgroundColor: variables.buttonDangerBg, |
|
||||
}, |
|
||||
'NativeBase.Text': { |
|
||||
color: variables.badgeColor, |
|
||||
fontSize: variables.fontSizeBase, |
|
||||
lineHeight: variables.lineHeight - 1, |
|
||||
textAlign: 'center', |
|
||||
paddingHorizontal: 3, |
|
||||
}, |
|
||||
backgroundColor: variables.badgeBg, |
|
||||
padding: variables.badgePadding, |
|
||||
paddingHorizontal: 6, |
|
||||
alignSelf: 'flex-start', |
|
||||
justifyContent: variables.platform === PLATFORM.IOS ? 'center' : undefined, |
|
||||
borderRadius: 13.5, |
|
||||
height: 27, |
|
||||
}; |
|
||||
return badgeTheme; |
|
||||
}; |
|
||||
@ -1,11 +0,0 @@ |
|||||
// @flow
|
|
||||
|
|
||||
export default () => { |
|
||||
const bodyTheme = { |
|
||||
flex: 1, |
|
||||
alignItems: 'center', |
|
||||
alignSelf: 'center', |
|
||||
}; |
|
||||
|
|
||||
return bodyTheme; |
|
||||
}; |
|
||||
@ -1,384 +0,0 @@ |
|||||
// @flow
|
|
||||
|
|
||||
import variable from '../variables/Platform'; |
|
||||
import { PLATFORM } from '../variables/CommonColor'; |
|
||||
|
|
||||
export default (variables /* : * */ = variable) => { |
|
||||
const { platformStyle } = variables; |
|
||||
const { platform } = variables; |
|
||||
const darkCommon = { |
|
||||
'NativeBase.Text': { |
|
||||
color: variables.brandDark, |
|
||||
}, |
|
||||
'NativeBase.Icon': { |
|
||||
color: variables.brandDark, |
|
||||
}, |
|
||||
'NativeBase.IconNB': { |
|
||||
color: variables.brandDark, |
|
||||
}, |
|
||||
}; |
|
||||
const lightCommon = { |
|
||||
'NativeBase.Text': { |
|
||||
color: variables.brandLight, |
|
||||
}, |
|
||||
'NativeBase.Icon': { |
|
||||
color: variables.brandLight, |
|
||||
}, |
|
||||
'NativeBase.IconNB': { |
|
||||
color: variables.brandLight, |
|
||||
}, |
|
||||
}; |
|
||||
const primaryCommon = { |
|
||||
'NativeBase.Text': { |
|
||||
color: variables.buttonPrimaryBg, |
|
||||
}, |
|
||||
'NativeBase.Icon': { |
|
||||
color: variables.buttonPrimaryBg, |
|
||||
}, |
|
||||
'NativeBase.IconNB': { |
|
||||
color: variables.buttonPrimaryBg, |
|
||||
}, |
|
||||
}; |
|
||||
const successCommon = { |
|
||||
'NativeBase.Text': { |
|
||||
color: variables.buttonSuccessBg, |
|
||||
}, |
|
||||
'NativeBase.Icon': { |
|
||||
color: variables.buttonSuccessBg, |
|
||||
}, |
|
||||
'NativeBase.IconNB': { |
|
||||
color: variables.buttonSuccessBg, |
|
||||
}, |
|
||||
}; |
|
||||
const infoCommon = { |
|
||||
'NativeBase.Text': { |
|
||||
color: variables.buttonInfoBg, |
|
||||
}, |
|
||||
'NativeBase.Icon': { |
|
||||
color: variables.buttonInfoBg, |
|
||||
}, |
|
||||
'NativeBase.IconNB': { |
|
||||
color: variables.buttonInfoBg, |
|
||||
}, |
|
||||
}; |
|
||||
const warningCommon = { |
|
||||
'NativeBase.Text': { |
|
||||
color: variables.buttonWarningBg, |
|
||||
}, |
|
||||
'NativeBase.Icon': { |
|
||||
color: variables.buttonWarningBg, |
|
||||
}, |
|
||||
'NativeBase.IconNB': { |
|
||||
color: variables.buttonWarningBg, |
|
||||
}, |
|
||||
}; |
|
||||
const dangerCommon = { |
|
||||
'NativeBase.Text': { |
|
||||
color: variables.buttonDangerBg, |
|
||||
}, |
|
||||
'NativeBase.Icon': { |
|
||||
color: variables.buttonDangerBg, |
|
||||
}, |
|
||||
'NativeBase.IconNB': { |
|
||||
color: variables.buttonDangerBg, |
|
||||
}, |
|
||||
}; |
|
||||
const buttonTheme = { |
|
||||
'.disabled': { |
|
||||
'.transparent': { |
|
||||
backgroundColor: 'transparent', |
|
||||
'NativeBase.Text': { |
|
||||
color: variables.buttonDisabledBg, |
|
||||
}, |
|
||||
'NativeBase.Icon': { |
|
||||
color: variables.buttonDisabledBg, |
|
||||
}, |
|
||||
'NativeBase.IconNB': { |
|
||||
color: variables.buttonDisabledBg, |
|
||||
}, |
|
||||
}, |
|
||||
'NativeBase.Icon': { |
|
||||
color: variables.brandLight, |
|
||||
}, |
|
||||
'NativeBase.IconNB': { |
|
||||
color: variables.brandLight, |
|
||||
}, |
|
||||
backgroundColor: variables.buttonDisabledBg, |
|
||||
}, |
|
||||
'.bordered': { |
|
||||
'.dark': { |
|
||||
...darkCommon, |
|
||||
backgroundColor: 'transparent', |
|
||||
borderColor: variables.brandDark, |
|
||||
borderWidth: variables.borderWidth * 2, |
|
||||
}, |
|
||||
'.light': { |
|
||||
...lightCommon, |
|
||||
backgroundColor: 'transparent', |
|
||||
borderColor: variables.brandLight, |
|
||||
borderWidth: variables.borderWidth * 2, |
|
||||
}, |
|
||||
'.primary': { |
|
||||
...primaryCommon, |
|
||||
backgroundColor: 'transparent', |
|
||||
borderColor: variables.buttonPrimaryBg, |
|
||||
borderWidth: variables.borderWidth * 2, |
|
||||
}, |
|
||||
'.success': { |
|
||||
...successCommon, |
|
||||
backgroundColor: 'transparent', |
|
||||
borderColor: variables.buttonSuccessBg, |
|
||||
borderWidth: variables.borderWidth * 2, |
|
||||
}, |
|
||||
'.info': { |
|
||||
...infoCommon, |
|
||||
backgroundColor: 'transparent', |
|
||||
borderColor: variables.buttonInfoBg, |
|
||||
borderWidth: variables.borderWidth * 2, |
|
||||
}, |
|
||||
'.warning': { |
|
||||
...warningCommon, |
|
||||
backgroundColor: 'transparent', |
|
||||
borderColor: variables.buttonWarningBg, |
|
||||
borderWidth: variables.borderWidth * 2, |
|
||||
}, |
|
||||
'.danger': { |
|
||||
...dangerCommon, |
|
||||
backgroundColor: 'transparent', |
|
||||
borderColor: variables.buttonDangerBg, |
|
||||
borderWidth: variables.borderWidth * 2, |
|
||||
}, |
|
||||
'.disabled': { |
|
||||
backgroundColor: 'transparent', |
|
||||
borderColor: variables.buttonDisabledBg, |
|
||||
borderWidth: variables.borderWidth * 2, |
|
||||
'NativeBase.Text': { |
|
||||
color: variables.buttonDisabledBg, |
|
||||
}, |
|
||||
}, |
|
||||
...primaryCommon, |
|
||||
borderWidth: variables.borderWidth * 2, |
|
||||
elevation: null, |
|
||||
shadowColor: null, |
|
||||
shadowOffset: null, |
|
||||
shadowOpacity: null, |
|
||||
shadowRadius: null, |
|
||||
backgroundColor: 'transparent', |
|
||||
}, |
|
||||
|
|
||||
'.dark': { |
|
||||
'.bordered': { |
|
||||
...darkCommon, |
|
||||
}, |
|
||||
backgroundColor: variables.brandDark, |
|
||||
}, |
|
||||
'.light': { |
|
||||
'.transparent': { |
|
||||
...lightCommon, |
|
||||
backgroundColor: 'transparent', |
|
||||
}, |
|
||||
'.bordered': { |
|
||||
...lightCommon, |
|
||||
}, |
|
||||
...darkCommon, |
|
||||
backgroundColor: variables.brandLight, |
|
||||
}, |
|
||||
|
|
||||
'.primary': { |
|
||||
'.bordered': { |
|
||||
...primaryCommon, |
|
||||
}, |
|
||||
backgroundColor: variables.buttonPrimaryBg, |
|
||||
}, |
|
||||
|
|
||||
'.success': { |
|
||||
'.bordered': { |
|
||||
...successCommon, |
|
||||
}, |
|
||||
backgroundColor: variables.buttonSuccessBg, |
|
||||
}, |
|
||||
|
|
||||
'.info': { |
|
||||
'.bordered': { |
|
||||
...infoCommon, |
|
||||
}, |
|
||||
backgroundColor: variables.buttonInfoBg, |
|
||||
}, |
|
||||
|
|
||||
'.warning': { |
|
||||
'.bordered': { |
|
||||
...warningCommon, |
|
||||
}, |
|
||||
backgroundColor: variables.buttonWarningBg, |
|
||||
}, |
|
||||
|
|
||||
'.danger': { |
|
||||
'.bordered': { |
|
||||
...dangerCommon, |
|
||||
}, |
|
||||
backgroundColor: variables.buttonDangerBg, |
|
||||
}, |
|
||||
|
|
||||
'.block': { |
|
||||
justifyContent: 'center', |
|
||||
alignSelf: 'stretch', |
|
||||
}, |
|
||||
|
|
||||
'.full': { |
|
||||
justifyContent: 'center', |
|
||||
alignSelf: 'stretch', |
|
||||
borderRadius: 0, |
|
||||
}, |
|
||||
|
|
||||
'.rounded': { |
|
||||
borderRadius: variables.borderRadiusLarge, |
|
||||
}, |
|
||||
|
|
||||
'.transparent': { |
|
||||
backgroundColor: 'transparent', |
|
||||
elevation: 0, |
|
||||
shadowColor: null, |
|
||||
shadowOffset: null, |
|
||||
shadowRadius: null, |
|
||||
shadowOpacity: null, |
|
||||
...primaryCommon, |
|
||||
'.dark': { |
|
||||
...darkCommon, |
|
||||
}, |
|
||||
'.danger': { |
|
||||
...dangerCommon, |
|
||||
}, |
|
||||
'.warning': { |
|
||||
...warningCommon, |
|
||||
}, |
|
||||
'.info': { |
|
||||
...infoCommon, |
|
||||
}, |
|
||||
'.primary': { |
|
||||
...primaryCommon, |
|
||||
}, |
|
||||
'.success': { |
|
||||
...successCommon, |
|
||||
}, |
|
||||
'.light': { |
|
||||
...lightCommon, |
|
||||
}, |
|
||||
'.disabled': { |
|
||||
backgroundColor: 'transparent', |
|
||||
borderColor: variables.buttonDisabledBg, |
|
||||
borderWidth: variables.borderWidth * 2, |
|
||||
'NativeBase.Text': { |
|
||||
color: variables.buttonDisabledBg, |
|
||||
}, |
|
||||
'NativeBase.Icon': { |
|
||||
color: variables.buttonDisabledBg, |
|
||||
}, |
|
||||
'NativeBase.IconNB': { |
|
||||
color: variables.buttonDisabledBg, |
|
||||
}, |
|
||||
}, |
|
||||
}, |
|
||||
|
|
||||
'.small': { |
|
||||
height: 30, |
|
||||
'NativeBase.Text': { |
|
||||
fontSize: 14, |
|
||||
}, |
|
||||
'NativeBase.Icon': { |
|
||||
fontSize: 20, |
|
||||
paddingTop: 0, |
|
||||
}, |
|
||||
'NativeBase.IconNB': { |
|
||||
fontSize: 20, |
|
||||
paddingTop: 0, |
|
||||
}, |
|
||||
}, |
|
||||
|
|
||||
'.large': { |
|
||||
height: 60, |
|
||||
'NativeBase.Text': { |
|
||||
fontSize: 22, |
|
||||
}, |
|
||||
}, |
|
||||
|
|
||||
'.capitalize': {}, |
|
||||
|
|
||||
'.vertical': { |
|
||||
flexDirection: 'column', |
|
||||
height: null, |
|
||||
}, |
|
||||
|
|
||||
'NativeBase.Text': { |
|
||||
fontFamily: variables.buttonFontFamily, |
|
||||
marginLeft: 0, |
|
||||
marginRight: 0, |
|
||||
color: variables.inverseTextColor, |
|
||||
fontSize: variables.buttonTextSize, |
|
||||
paddingHorizontal: 16, |
|
||||
backgroundColor: 'transparent', |
|
||||
}, |
|
||||
|
|
||||
'NativeBase.Icon': { |
|
||||
color: variables.inverseTextColor, |
|
||||
fontSize: 24, |
|
||||
marginHorizontal: 16, |
|
||||
paddingTop: platform === PLATFORM.IOS ? 2 : undefined, |
|
||||
}, |
|
||||
'NativeBase.IconNB': { |
|
||||
color: variables.inverseTextColor, |
|
||||
fontSize: 24, |
|
||||
marginHorizontal: 16, |
|
||||
paddingTop: platform === PLATFORM.IOS ? 2 : undefined, |
|
||||
}, |
|
||||
|
|
||||
'.iconLeft': { |
|
||||
'NativeBase.Text': { |
|
||||
marginLeft: 0, |
|
||||
}, |
|
||||
'NativeBase.IconNB': { |
|
||||
marginRight: 0, |
|
||||
marginLeft: 16, |
|
||||
}, |
|
||||
'NativeBase.Icon': { |
|
||||
marginRight: 0, |
|
||||
marginLeft: 16, |
|
||||
}, |
|
||||
}, |
|
||||
'.iconRight': { |
|
||||
'NativeBase.Text': { |
|
||||
marginRight: 0, |
|
||||
}, |
|
||||
'NativeBase.IconNB': { |
|
||||
marginLeft: 0, |
|
||||
marginRight: 16, |
|
||||
}, |
|
||||
'NativeBase.Icon': { |
|
||||
marginLeft: 0, |
|
||||
marginRight: 16, |
|
||||
}, |
|
||||
}, |
|
||||
'.picker': { |
|
||||
'NativeBase.Text': { |
|
||||
'.note': { |
|
||||
fontSize: 16, |
|
||||
lineHeight: null, |
|
||||
}, |
|
||||
}, |
|
||||
}, |
|
||||
paddingVertical: variables.buttonPadding, |
|
||||
backgroundColor: variables.buttonPrimaryBg, |
|
||||
borderRadius: variables.borderRadiusBase, |
|
||||
borderColor: variables.buttonPrimaryBg, |
|
||||
borderWidth: null, |
|
||||
height: 45, |
|
||||
flexDirection: 'row', |
|
||||
elevation: 2, |
|
||||
shadowColor: platformStyle === PLATFORM.MATERIAL ? variables.brandDark : undefined, |
|
||||
shadowOffset: platformStyle === PLATFORM.MATERIAL ? { width: 0, height: 2 } : undefined, |
|
||||
shadowOpacity: platformStyle === PLATFORM.MATERIAL ? 0.2 : undefined, |
|
||||
shadowRadius: platformStyle === PLATFORM.MATERIAL ? 1.2 : undefined, |
|
||||
alignItems: 'center', |
|
||||
justifyContent: 'space-between', |
|
||||
}; |
|
||||
return buttonTheme; |
|
||||
}; |
|
||||
@ -1,37 +0,0 @@ |
|||||
// @flow
|
|
||||
|
|
||||
import variable from '../variables/Platform'; |
|
||||
|
|
||||
export default (variables /* : * */ = variable) => { |
|
||||
const cardTheme = { |
|
||||
'.transparent': { |
|
||||
shadowColor: null, |
|
||||
shadowOffset: null, |
|
||||
shadowOpacity: null, |
|
||||
shadowRadius: null, |
|
||||
elevation: null, |
|
||||
backgroundColor: 'transparent', |
|
||||
borderWidth: 0, |
|
||||
}, |
|
||||
'.noShadow': { |
|
||||
shadowColor: null, |
|
||||
shadowOffset: null, |
|
||||
shadowOpacity: null, |
|
||||
elevation: null, |
|
||||
}, |
|
||||
marginVertical: 5, |
|
||||
marginHorizontal: 2, |
|
||||
borderWidth: variables.borderWidth, |
|
||||
borderRadius: variables.cardBorderRadius, |
|
||||
borderColor: variables.cardBorderColor, |
|
||||
flexWrap: 'nowrap', |
|
||||
backgroundColor: variables.cardDefaultBg, |
|
||||
shadowColor: '#000', |
|
||||
shadowOffset: { width: 0, height: 2 }, |
|
||||
shadowOpacity: 0.1, |
|
||||
shadowRadius: 1.5, |
|
||||
elevation: 3, |
|
||||
}; |
|
||||
|
|
||||
return cardTheme; |
|
||||
}; |
|
||||
@ -1,198 +0,0 @@ |
|||||
// @flow
|
|
||||
|
|
||||
import { StyleSheet } from 'react-native'; |
|
||||
|
|
||||
import variable from '../variables/Platform'; |
|
||||
import { PLATFORM } from '../variables/CommonColor'; |
|
||||
|
|
||||
export default (variables /* : * */ = variable) => { |
|
||||
const { platform } = variables; |
|
||||
const transparentBtnCommon = { |
|
||||
'NativeBase.Text': { |
|
||||
fontSize: variables.DefaultFontSize - 3, |
|
||||
color: variables.sTabBarActiveTextColor, |
|
||||
}, |
|
||||
'NativeBase.Icon': { |
|
||||
fontSize: variables.iconFontSize - 10, |
|
||||
color: variables.sTabBarActiveTextColor, |
|
||||
marginHorizontal: null, |
|
||||
}, |
|
||||
'NativeBase.IconNB': { |
|
||||
fontSize: variables.iconFontSize - 10, |
|
||||
color: variables.sTabBarActiveTextColor, |
|
||||
}, |
|
||||
paddingVertical: null, |
|
||||
paddingHorizontal: null, |
|
||||
}; |
|
||||
|
|
||||
const cardItemTheme = { |
|
||||
'NativeBase.Left': { |
|
||||
'NativeBase.Body': { |
|
||||
'NativeBase.Text': { |
|
||||
'.note': { |
|
||||
color: variables.listNoteColor, |
|
||||
fontWeight: '400', |
|
||||
marginRight: 20, |
|
||||
}, |
|
||||
}, |
|
||||
flex: 1, |
|
||||
marginLeft: 10, |
|
||||
alignItems: null, |
|
||||
}, |
|
||||
'NativeBase.Icon': { |
|
||||
fontSize: variables.iconFontSize, |
|
||||
}, |
|
||||
'NativeBase.IconNB': { |
|
||||
fontSize: variables.iconFontSize, |
|
||||
}, |
|
||||
'NativeBase.Text': { |
|
||||
marginLeft: 10, |
|
||||
alignSelf: 'center', |
|
||||
}, |
|
||||
'NativeBase.Button': { |
|
||||
'.transparent': { |
|
||||
...transparentBtnCommon, |
|
||||
paddingRight: variables.cardItemPadding + 5, |
|
||||
}, |
|
||||
}, |
|
||||
flex: 1, |
|
||||
flexDirection: 'row', |
|
||||
alignItems: 'center', |
|
||||
}, |
|
||||
'.content': { |
|
||||
'NativeBase.Text': { |
|
||||
color: platform === PLATFORM.IOS ? '#555' : '#222', |
|
||||
fontSize: variables.DefaultFontSize - 2, |
|
||||
}, |
|
||||
}, |
|
||||
'.cardBody': { |
|
||||
padding: -5, |
|
||||
'NativeBase.Text': { |
|
||||
marginTop: 5, |
|
||||
}, |
|
||||
}, |
|
||||
'NativeBase.Body': { |
|
||||
'NativeBase.Text': { |
|
||||
'.note': { |
|
||||
color: variables.listNoteColor, |
|
||||
fontWeight: '200', |
|
||||
marginRight: 20, |
|
||||
}, |
|
||||
}, |
|
||||
'NativeBase.Button': { |
|
||||
'.transparent': { |
|
||||
...transparentBtnCommon, |
|
||||
paddingRight: variables.cardItemPadding + 5, |
|
||||
alignSelf: 'stretch', |
|
||||
}, |
|
||||
}, |
|
||||
flex: 1, |
|
||||
alignSelf: 'stretch', |
|
||||
alignItems: 'flex-start', |
|
||||
}, |
|
||||
'NativeBase.Right': { |
|
||||
'NativeBase.Badge': { |
|
||||
alignSelf: null, |
|
||||
}, |
|
||||
'NativeBase.Button': { |
|
||||
'.transparent': { |
|
||||
...transparentBtnCommon, |
|
||||
}, |
|
||||
alignSelf: null, |
|
||||
}, |
|
||||
'NativeBase.Icon': { |
|
||||
alignSelf: null, |
|
||||
fontSize: variables.iconFontSize - 8, |
|
||||
color: variables.cardBorderColor, |
|
||||
}, |
|
||||
'NativeBase.IconNB': { |
|
||||
alignSelf: null, |
|
||||
fontSize: variables.iconFontSize - 8, |
|
||||
color: variables.cardBorderColor, |
|
||||
}, |
|
||||
'NativeBase.Text': { |
|
||||
fontSize: variables.DefaultFontSize - 1, |
|
||||
alignSelf: null, |
|
||||
}, |
|
||||
'NativeBase.Thumbnail': { |
|
||||
alignSelf: null, |
|
||||
}, |
|
||||
'NativeBase.Image': { |
|
||||
alignSelf: null, |
|
||||
}, |
|
||||
'NativeBase.Radio': { |
|
||||
alignSelf: null, |
|
||||
}, |
|
||||
'NativeBase.Checkbox': { |
|
||||
alignSelf: null, |
|
||||
}, |
|
||||
'NativeBase.Switch': { |
|
||||
alignSelf: null, |
|
||||
}, |
|
||||
flex: 0.8, |
|
||||
}, |
|
||||
'.header': { |
|
||||
'NativeBase.Text': { |
|
||||
fontSize: 16, |
|
||||
fontWeight: platform === PLATFORM.IOS ? '600' : '500', |
|
||||
}, |
|
||||
'.bordered': { |
|
||||
'NativeBase.Text': { |
|
||||
color: variables.brandPrimary, |
|
||||
fontWeight: platform === PLATFORM.IOS ? '600' : '500', |
|
||||
}, |
|
||||
borderBottomWidth: variables.borderWidth, |
|
||||
}, |
|
||||
borderBottomWidth: null, |
|
||||
paddingVertical: variables.cardItemPadding + 5, |
|
||||
}, |
|
||||
'.footer': { |
|
||||
'NativeBase.Text': { |
|
||||
fontSize: 16, |
|
||||
fontWeight: platform === PLATFORM.IOS ? '600' : '500', |
|
||||
}, |
|
||||
'.bordered': { |
|
||||
'NativeBase.Text': { |
|
||||
color: variables.brandPrimary, |
|
||||
fontWeight: platform === PLATFORM.IOS ? '600' : '500', |
|
||||
}, |
|
||||
borderTopWidth: variables.borderWidth, |
|
||||
}, |
|
||||
borderBottomWidth: null, |
|
||||
}, |
|
||||
'NativeBase.Text': { |
|
||||
'.note': { |
|
||||
color: variables.listNoteColor, |
|
||||
fontWeight: '200', |
|
||||
}, |
|
||||
}, |
|
||||
'NativeBase.Icon': { |
|
||||
width: variables.iconFontSize + 5, |
|
||||
fontSize: variables.iconFontSize - 2, |
|
||||
}, |
|
||||
'NativeBase.IconNB': { |
|
||||
width: variables.iconFontSize + 5, |
|
||||
fontSize: variables.iconFontSize - 2, |
|
||||
}, |
|
||||
'.bordered': { |
|
||||
borderBottomWidth: StyleSheet.hairlineWidth, |
|
||||
borderColor: variables.cardBorderColor, |
|
||||
}, |
|
||||
'.first': { |
|
||||
borderTopLeftRadius: variables.cardBorderRadius, |
|
||||
borderTopRightRadius: variables.cardBorderRadius, |
|
||||
}, |
|
||||
'.last': { |
|
||||
borderBottomLeftRadius: variables.cardBorderRadius, |
|
||||
borderBottomRightRadius: variables.cardBorderRadius, |
|
||||
}, |
|
||||
flexDirection: 'row', |
|
||||
alignItems: 'center', |
|
||||
borderRadius: variables.cardBorderRadius, |
|
||||
padding: variables.cardItemPadding + 5, |
|
||||
paddingVertical: variables.cardItemPadding, |
|
||||
backgroundColor: variables.cardDefaultBg, |
|
||||
}; |
|
||||
|
|
||||
return cardItemTheme; |
|
||||
}; |
|
||||
@ -1,38 +0,0 @@ |
|||||
// @flow
|
|
||||
|
|
||||
import variable from '../variables/Platform'; |
|
||||
|
|
||||
export default (variables /* : * */ = variable) => { |
|
||||
const checkBoxTheme = { |
|
||||
'.checked': { |
|
||||
'NativeBase.Icon': { |
|
||||
color: variables.checkboxTickColor, |
|
||||
}, |
|
||||
'NativeBase.IconNB': { |
|
||||
color: variables.checkboxTickColor, |
|
||||
}, |
|
||||
}, |
|
||||
'NativeBase.Icon': { |
|
||||
color: 'transparent', |
|
||||
lineHeight: variables.CheckboxIconSize, |
|
||||
marginTop: variables.CheckboxIconMarginTop, |
|
||||
fontSize: variables.CheckboxFontSize, |
|
||||
}, |
|
||||
'NativeBase.IconNB': { |
|
||||
color: 'transparent', |
|
||||
lineHeight: variables.CheckboxIconSize, |
|
||||
marginTop: variables.CheckboxIconMarginTop, |
|
||||
fontSize: variables.CheckboxFontSize, |
|
||||
}, |
|
||||
borderRadius: variables.CheckboxRadius, |
|
||||
overflow: 'hidden', |
|
||||
width: variables.checkboxSize, |
|
||||
height: variables.checkboxSize, |
|
||||
borderWidth: variables.CheckboxBorderWidth, |
|
||||
paddingLeft: variables.CheckboxPaddingLeft - 1, |
|
||||
paddingBottom: variables.CheckboxPaddingBottom, |
|
||||
left: 10, |
|
||||
}; |
|
||||
|
|
||||
return checkBoxTheme; |
|
||||
}; |
|
||||
@ -1,17 +0,0 @@ |
|||||
// @flow
|
|
||||
|
|
||||
import { Platform, Dimensions } from 'react-native'; |
|
||||
|
|
||||
import variable from '../variables/Platform'; |
|
||||
import { PLATFORM } from '../variables/CommonColor'; |
|
||||
|
|
||||
const deviceHeight = Dimensions.get('window').height; |
|
||||
export default (variables /* : * */ = variable) => { |
|
||||
const theme = { |
|
||||
flex: 1, |
|
||||
height: Platform.OS === PLATFORM.IOS ? deviceHeight : deviceHeight - 20, |
|
||||
backgroundColor: variables.containerBgColor, |
|
||||
}; |
|
||||
|
|
||||
return theme; |
|
||||
}; |
|
||||
@ -1,14 +0,0 @@ |
|||||
// @flow
|
|
||||
|
|
||||
export default () => { |
|
||||
const contentTheme = { |
|
||||
flex: 1, |
|
||||
backgroundColor: 'transparent', |
|
||||
'NativeBase.Segment': { |
|
||||
borderWidth: 0, |
|
||||
backgroundColor: 'transparent', |
|
||||
}, |
|
||||
}; |
|
||||
|
|
||||
return contentTheme; |
|
||||
}; |
|
||||
@ -1,25 +0,0 @@ |
|||||
// @flow
|
|
||||
|
|
||||
export default () => { |
|
||||
const fabTheme = { |
|
||||
'NativeBase.Button': { |
|
||||
alignItems: 'center', |
|
||||
padding: null, |
|
||||
justifyContent: 'center', |
|
||||
'NativeBase.Icon': { |
|
||||
alignSelf: 'center', |
|
||||
fontSize: 20, |
|
||||
marginLeft: 0, |
|
||||
marginRight: 0, |
|
||||
}, |
|
||||
'NativeBase.IconNB': { |
|
||||
alignSelf: 'center', |
|
||||
fontSize: 20, |
|
||||
marginLeft: 0, |
|
||||
marginRight: 0, |
|
||||
}, |
|
||||
}, |
|
||||
}; |
|
||||
|
|
||||
return fabTheme; |
|
||||
}; |
|
||||
@ -1,117 +0,0 @@ |
|||||
// @flow
|
|
||||
|
|
||||
import variable from '../variables/Platform'; |
|
||||
import { PLATFORM } from '../variables/CommonColor'; |
|
||||
|
|
||||
export default (variables /* : * */ = variable) => { |
|
||||
const { platformStyle } = variables; |
|
||||
const { platform } = variables; |
|
||||
|
|
||||
const iconCommon = { |
|
||||
'NativeBase.Icon': { |
|
||||
color: variables.tabBarActiveTextColor, |
|
||||
}, |
|
||||
}; |
|
||||
const iconNBCommon = { |
|
||||
'NativeBase.IconNB': { |
|
||||
color: variables.tabBarActiveTextColor, |
|
||||
}, |
|
||||
}; |
|
||||
const textCommon = { |
|
||||
'NativeBase.Text': { |
|
||||
color: variables.tabBarActiveTextColor, |
|
||||
}, |
|
||||
}; |
|
||||
const footerTheme = { |
|
||||
'NativeBase.Left': { |
|
||||
'NativeBase.Button': { |
|
||||
'.transparent': { |
|
||||
backgroundColor: 'transparent', |
|
||||
borderColor: null, |
|
||||
elevation: 0, |
|
||||
shadowColor: null, |
|
||||
shadowOffset: null, |
|
||||
shadowRadius: null, |
|
||||
shadowOpacity: null, |
|
||||
...iconCommon, |
|
||||
...iconNBCommon, |
|
||||
...textCommon, |
|
||||
}, |
|
||||
alignSelf: null, |
|
||||
...iconCommon, |
|
||||
...iconNBCommon, |
|
||||
// ...textCommon
|
|
||||
}, |
|
||||
flex: 1, |
|
||||
alignSelf: 'center', |
|
||||
alignItems: 'flex-start', |
|
||||
}, |
|
||||
'NativeBase.Body': { |
|
||||
flex: 1, |
|
||||
alignItems: 'center', |
|
||||
alignSelf: 'center', |
|
||||
flexDirection: 'row', |
|
||||
'NativeBase.Button': { |
|
||||
alignSelf: 'center', |
|
||||
'.transparent': { |
|
||||
backgroundColor: 'transparent', |
|
||||
borderColor: null, |
|
||||
elevation: 0, |
|
||||
shadowColor: null, |
|
||||
shadowOffset: null, |
|
||||
shadowRadius: null, |
|
||||
shadowOpacity: null, |
|
||||
...iconCommon, |
|
||||
...iconNBCommon, |
|
||||
...textCommon, |
|
||||
}, |
|
||||
'.full': { |
|
||||
height: variables.footerHeight, |
|
||||
paddingBottom: variables.footerPaddingBottom, |
|
||||
flex: 1, |
|
||||
}, |
|
||||
...iconCommon, |
|
||||
...iconNBCommon, |
|
||||
// ...textCommon
|
|
||||
}, |
|
||||
}, |
|
||||
'NativeBase.Right': { |
|
||||
'NativeBase.Button': { |
|
||||
'.transparent': { |
|
||||
backgroundColor: 'transparent', |
|
||||
borderColor: null, |
|
||||
elevation: 0, |
|
||||
shadowColor: null, |
|
||||
shadowOffset: null, |
|
||||
shadowRadius: null, |
|
||||
shadowOpacity: null, |
|
||||
...iconCommon, |
|
||||
...iconNBCommon, |
|
||||
...textCommon, |
|
||||
}, |
|
||||
alignSelf: null, |
|
||||
...iconCommon, |
|
||||
...iconNBCommon, |
|
||||
// ...textCommon
|
|
||||
}, |
|
||||
flex: 1, |
|
||||
alignSelf: 'center', |
|
||||
alignItems: 'flex-end', |
|
||||
}, |
|
||||
backgroundColor: variables.footerDefaultBg, |
|
||||
flexDirection: 'row', |
|
||||
justifyContent: 'center', |
|
||||
borderTopWidth: |
|
||||
platform === PLATFORM.IOS && platformStyle !== PLATFORM.MATERIAL |
|
||||
? variables.borderWidth |
|
||||
: undefined, |
|
||||
borderColor: |
|
||||
platform === PLATFORM.IOS && platformStyle !== PLATFORM.MATERIAL ? '#cbcbcb' : undefined, |
|
||||
height: variables.footerHeight, |
|
||||
paddingBottom: variables.footerPaddingBottom, |
|
||||
elevation: 3, |
|
||||
left: 0, |
|
||||
right: 0, |
|
||||
}; |
|
||||
return footerTheme; |
|
||||
}; |
|
||||
@ -1,78 +0,0 @@ |
|||||
// @flow
|
|
||||
|
|
||||
import { Platform } from 'react-native'; |
|
||||
|
|
||||
import variable from '../variables/Platform'; |
|
||||
import { PLATFORM } from '../variables/CommonColor'; |
|
||||
|
|
||||
export default (variables /* : * */ = variable) => { |
|
||||
const { platform } = variables; |
|
||||
|
|
||||
const footerTabTheme = { |
|
||||
'NativeBase.Button': { |
|
||||
'.active': { |
|
||||
'NativeBase.Text': { |
|
||||
color: variables.tabBarActiveTextColor, |
|
||||
fontSize: variables.tabBarTextSize, |
|
||||
lineHeight: 16, |
|
||||
}, |
|
||||
'NativeBase.Icon': { |
|
||||
color: variables.tabBarActiveTextColor, |
|
||||
}, |
|
||||
'NativeBase.IconNB': { |
|
||||
color: variables.tabBarActiveTextColor, |
|
||||
}, |
|
||||
backgroundColor: variables.tabActiveBgColor, |
|
||||
}, |
|
||||
flexDirection: null, |
|
||||
backgroundColor: 'transparent', |
|
||||
borderColor: null, |
|
||||
elevation: 0, |
|
||||
shadowColor: null, |
|
||||
shadowOffset: null, |
|
||||
shadowRadius: null, |
|
||||
shadowOpacity: null, |
|
||||
alignSelf: 'center', |
|
||||
flex: 1, |
|
||||
height: variables.footerHeight, |
|
||||
justifyContent: 'center', |
|
||||
'.badge': { |
|
||||
'NativeBase.Badge': { |
|
||||
'NativeBase.Text': { |
|
||||
fontSize: 11, |
|
||||
fontWeight: platform === PLATFORM.IOS ? '600' : undefined, |
|
||||
lineHeight: 14, |
|
||||
}, |
|
||||
top: -3, |
|
||||
alignSelf: 'center', |
|
||||
left: 10, |
|
||||
zIndex: 99, |
|
||||
height: 18, |
|
||||
padding: 1.7, |
|
||||
paddingHorizontal: 3, |
|
||||
}, |
|
||||
'NativeBase.Icon': { |
|
||||
marginTop: -18, |
|
||||
}, |
|
||||
}, |
|
||||
'NativeBase.Icon': { |
|
||||
color: variables.tabBarTextColor, |
|
||||
}, |
|
||||
'NativeBase.IconNB': { |
|
||||
color: variables.tabBarTextColor, |
|
||||
}, |
|
||||
'NativeBase.Text': { |
|
||||
color: variables.tabBarTextColor, |
|
||||
fontSize: variables.tabBarTextSize, |
|
||||
lineHeight: 16, |
|
||||
}, |
|
||||
}, |
|
||||
backgroundColor: Platform.OS === PLATFORM.ANDROID ? variables.footerDefaultBg : undefined, |
|
||||
flexDirection: 'row', |
|
||||
justifyContent: 'space-between', |
|
||||
flex: 1, |
|
||||
alignSelf: 'stretch', |
|
||||
}; |
|
||||
|
|
||||
return footerTabTheme; |
|
||||
}; |
|
||||
@ -1,86 +0,0 @@ |
|||||
// @flow
|
|
||||
|
|
||||
export default () => { |
|
||||
const theme = { |
|
||||
'NativeBase.Item': { |
|
||||
'.fixedLabel': { |
|
||||
'NativeBase.Label': { |
|
||||
paddingLeft: null, |
|
||||
}, |
|
||||
marginLeft: 15, |
|
||||
}, |
|
||||
'.inlineLabel': { |
|
||||
'NativeBase.Label': { |
|
||||
paddingLeft: null, |
|
||||
}, |
|
||||
marginLeft: 15, |
|
||||
}, |
|
||||
'.placeholderLabel': { |
|
||||
'NativeBase.Input': {}, |
|
||||
}, |
|
||||
'.stackedLabel': { |
|
||||
'NativeBase.Label': { |
|
||||
top: 5, |
|
||||
paddingLeft: null, |
|
||||
}, |
|
||||
'NativeBase.Input': { |
|
||||
paddingLeft: null, |
|
||||
marginLeft: null, |
|
||||
}, |
|
||||
'NativeBase.Icon': { |
|
||||
marginTop: 36, |
|
||||
}, |
|
||||
marginLeft: 15, |
|
||||
}, |
|
||||
'.floatingLabel': { |
|
||||
'NativeBase.Input': { |
|
||||
paddingLeft: null, |
|
||||
top: 10, |
|
||||
marginLeft: null, |
|
||||
}, |
|
||||
'NativeBase.Label': { |
|
||||
left: 0, |
|
||||
top: 6, |
|
||||
}, |
|
||||
'NativeBase.Icon': { |
|
||||
top: 6, |
|
||||
}, |
|
||||
marginTop: 15, |
|
||||
marginLeft: 15, |
|
||||
}, |
|
||||
'.regular': { |
|
||||
'NativeBase.Label': { |
|
||||
left: 0, |
|
||||
}, |
|
||||
marginLeft: 0, |
|
||||
}, |
|
||||
'.rounded': { |
|
||||
'NativeBase.Label': { |
|
||||
left: 0, |
|
||||
}, |
|
||||
marginLeft: 0, |
|
||||
}, |
|
||||
'.underline': { |
|
||||
'NativeBase.Label': { |
|
||||
left: 0, |
|
||||
top: 0, |
|
||||
position: 'relative', |
|
||||
}, |
|
||||
'NativeBase.Input': { |
|
||||
left: -15, |
|
||||
}, |
|
||||
marginLeft: 15, |
|
||||
}, |
|
||||
'.last': { |
|
||||
marginLeft: 0, |
|
||||
paddingLeft: 15, |
|
||||
}, |
|
||||
'NativeBase.Label': { |
|
||||
paddingRight: 5, |
|
||||
}, |
|
||||
marginLeft: 15, |
|
||||
}, |
|
||||
}; |
|
||||
|
|
||||
return theme; |
|
||||
}; |
|
||||
@ -1,13 +0,0 @@ |
|||||
// @flow
|
|
||||
|
|
||||
import variable from '../variables/Platform'; |
|
||||
|
|
||||
export default (variables /* : * */ = variable) => { |
|
||||
const h1Theme = { |
|
||||
color: variables.textColor, |
|
||||
fontSize: variables.fontSizeH1, |
|
||||
lineHeight: variables.lineHeightH1, |
|
||||
}; |
|
||||
|
|
||||
return h1Theme; |
|
||||
}; |
|
||||
@ -1,13 +0,0 @@ |
|||||
// @flow
|
|
||||
|
|
||||
import variable from '../variables/Platform'; |
|
||||
|
|
||||
export default (variables /* : * */ = variable) => { |
|
||||
const h2Theme = { |
|
||||
color: variables.textColor, |
|
||||
fontSize: variables.fontSizeH2, |
|
||||
lineHeight: variables.lineHeightH2, |
|
||||
}; |
|
||||
|
|
||||
return h2Theme; |
|
||||
}; |
|
||||
@ -1,13 +0,0 @@ |
|||||
// @flow
|
|
||||
|
|
||||
import variable from '../variables/Platform'; |
|
||||
|
|
||||
export default (variables /* : * */ = variable) => { |
|
||||
const h3Theme = { |
|
||||
color: variables.textColor, |
|
||||
fontSize: variables.fontSizeH3, |
|
||||
lineHeight: variables.lineHeightH3, |
|
||||
}; |
|
||||
|
|
||||
return h3Theme; |
|
||||
}; |
|
||||
@ -1,389 +0,0 @@ |
|||||
// @flow
|
|
||||
|
|
||||
import { PixelRatio, StatusBar } from 'react-native'; |
|
||||
|
|
||||
import variable from '../variables/Platform'; |
|
||||
import { PLATFORM } from '../variables/CommonColor'; |
|
||||
|
|
||||
export default (variables /* : * */ = variable) => { |
|
||||
const { platformStyle } = variables; |
|
||||
const { platform } = variables; |
|
||||
|
|
||||
const headerTheme = { |
|
||||
'.span': { |
|
||||
height: 128, |
|
||||
'NativeBase.Left': { |
|
||||
alignSelf: 'flex-start', |
|
||||
}, |
|
||||
'NativeBase.Body': { |
|
||||
alignSelf: 'flex-end', |
|
||||
alignItems: 'flex-start', |
|
||||
justifyContent: 'center', |
|
||||
paddingBottom: 26, |
|
||||
}, |
|
||||
'NativeBase.Right': { |
|
||||
alignSelf: 'flex-start', |
|
||||
}, |
|
||||
}, |
|
||||
'.hasSubtitle': { |
|
||||
'NativeBase.Body': { |
|
||||
'NativeBase.Title': { |
|
||||
fontSize: variables.titleFontSize - 2, |
|
||||
fontFamily: variables.titleFontfamily, |
|
||||
textAlign: 'center', |
|
||||
fontWeight: '500', |
|
||||
paddingBottom: 3, |
|
||||
}, |
|
||||
'NativeBase.Subtitle': { |
|
||||
fontSize: variables.subTitleFontSize, |
|
||||
fontFamily: variables.titleFontfamily, |
|
||||
color: variables.subtitleColor, |
|
||||
textAlign: 'center', |
|
||||
}, |
|
||||
}, |
|
||||
}, |
|
||||
'.transparent': { |
|
||||
backgroundColor: 'transparent', |
|
||||
borderBottomColor: 'transparent', |
|
||||
elevation: 0, |
|
||||
shadowColor: null, |
|
||||
shadowOffset: null, |
|
||||
shadowRadius: null, |
|
||||
shadowOpacity: null, |
|
||||
paddingTop: platform === PLATFORM.ANDROID ? StatusBar.currentHeight : undefined, |
|
||||
height: |
|
||||
platform === PLATFORM.ANDROID |
|
||||
? variables.toolbarHeight + StatusBar.currentHeight |
|
||||
: variables.toolbarHeight, |
|
||||
}, |
|
||||
'.noShadow': { |
|
||||
elevation: 0, |
|
||||
shadowColor: null, |
|
||||
shadowOffset: null, |
|
||||
shadowRadius: null, |
|
||||
shadowOpacity: null, |
|
||||
}, |
|
||||
'.hasTabs': { |
|
||||
elevation: 0, |
|
||||
shadowColor: null, |
|
||||
shadowOffset: null, |
|
||||
shadowRadius: null, |
|
||||
shadowOpacity: null, |
|
||||
borderBottomWidth: null, |
|
||||
}, |
|
||||
'.hasSegment': { |
|
||||
elevation: 0, |
|
||||
shadowColor: null, |
|
||||
shadowOffset: null, |
|
||||
shadowRadius: null, |
|
||||
shadowOpacity: null, |
|
||||
borderBottomWidth: null, |
|
||||
'NativeBase.Left': { |
|
||||
flex: 0.3, |
|
||||
}, |
|
||||
'NativeBase.Right': { |
|
||||
flex: 0.3, |
|
||||
}, |
|
||||
'NativeBase.Body': { |
|
||||
flex: 1, |
|
||||
'NativeBase.Segment': { |
|
||||
marginRight: 0, |
|
||||
alignSelf: 'center', |
|
||||
'NativeBase.Button': { |
|
||||
paddingLeft: 0, |
|
||||
paddingRight: 0, |
|
||||
}, |
|
||||
}, |
|
||||
}, |
|
||||
}, |
|
||||
'.noLeft': { |
|
||||
'NativeBase.Left': { |
|
||||
width: platform === PLATFORM.IOS ? undefined : 0, |
|
||||
flex: platform === PLATFORM.IOS ? 1 : 0, |
|
||||
}, |
|
||||
'NativeBase.Body': { |
|
||||
'NativeBase.Title': { |
|
||||
paddingLeft: platform === PLATFORM.IOS ? undefined : 10, |
|
||||
}, |
|
||||
'NativeBase.Subtitle': { |
|
||||
paddingLeft: platform === PLATFORM.IOS ? undefined : 10, |
|
||||
}, |
|
||||
}, |
|
||||
}, |
|
||||
'NativeBase.Button': { |
|
||||
justifyContent: 'center', |
|
||||
alignSelf: 'center', |
|
||||
alignItems: 'center', |
|
||||
'.transparent': { |
|
||||
'NativeBase.Text': { |
|
||||
color: variables.toolbarBtnTextColor, |
|
||||
fontWeight: '600', |
|
||||
}, |
|
||||
'NativeBase.Icon': { |
|
||||
color: variables.toolbarBtnColor, |
|
||||
}, |
|
||||
'NativeBase.IconNB': { |
|
||||
color: variables.toolbarBtnColor, |
|
||||
}, |
|
||||
paddingHorizontal: variables.buttonPadding, |
|
||||
}, |
|
||||
paddingHorizontal: 15, |
|
||||
}, |
|
||||
'.searchBar': { |
|
||||
'NativeBase.Item': { |
|
||||
'NativeBase.Icon': { |
|
||||
backgroundColor: 'transparent', |
|
||||
color: variables.dropdownLinkColor, |
|
||||
fontSize: variables.toolbarSearchIconSize, |
|
||||
alignItems: 'center', |
|
||||
marginTop: 2, |
|
||||
paddingRight: 10, |
|
||||
paddingLeft: 10, |
|
||||
}, |
|
||||
'NativeBase.IconNB': { |
|
||||
backgroundColor: 'transparent', |
|
||||
color: null, |
|
||||
alignSelf: 'center', |
|
||||
}, |
|
||||
'NativeBase.Input': { |
|
||||
alignSelf: 'center', |
|
||||
lineHeight: null, |
|
||||
height: variables.searchBarInputHeight, |
|
||||
}, |
|
||||
alignSelf: 'center', |
|
||||
alignItems: 'center', |
|
||||
justifyContent: 'flex-start', |
|
||||
flex: 1, |
|
||||
height: variables.searchBarHeight, |
|
||||
borderColor: 'transparent', |
|
||||
backgroundColor: variables.toolbarInputColor, |
|
||||
}, |
|
||||
'NativeBase.Button': { |
|
||||
'.transparent': { |
|
||||
'NativeBase.Text': { |
|
||||
fontWeight: '500', |
|
||||
}, |
|
||||
paddingHorizontal: null, |
|
||||
paddingLeft: platform === PLATFORM.IOS ? 10 : null, |
|
||||
}, |
|
||||
paddingHorizontal: platform === PLATFORM.IOS ? undefined : null, |
|
||||
width: platform === PLATFORM.IOS ? undefined : 0, |
|
||||
height: platform === PLATFORM.IOS ? undefined : 0, |
|
||||
}, |
|
||||
}, |
|
||||
'.rounded': { |
|
||||
'NativeBase.Item': { |
|
||||
borderRadius: platform === PLATFORM.IOS && platformStyle !== PLATFORM.MATERIAL ? 25 : 3, |
|
||||
}, |
|
||||
}, |
|
||||
'NativeBase.Left': { |
|
||||
'NativeBase.Button': { |
|
||||
'.hasText': { |
|
||||
marginLeft: -10, |
|
||||
height: 30, |
|
||||
'NativeBase.Icon': { |
|
||||
color: variables.toolbarBtnColor, |
|
||||
fontSize: variables.iconHeaderSize, |
|
||||
marginTop: 2, |
|
||||
marginRight: 5, |
|
||||
marginLeft: 2, |
|
||||
}, |
|
||||
'NativeBase.Text': { |
|
||||
color: variables.toolbarBtnTextColor, |
|
||||
fontSize: platform === PLATFORM.IOS ? 17 : 0, |
|
||||
marginLeft: 7, |
|
||||
lineHeight: 19.5, |
|
||||
}, |
|
||||
'NativeBase.IconNB': { |
|
||||
color: variables.toolbarBtnColor, |
|
||||
fontSize: variables.iconHeaderSize, |
|
||||
marginTop: 2, |
|
||||
marginRight: 5, |
|
||||
marginLeft: 2, |
|
||||
}, |
|
||||
}, |
|
||||
'.transparent': { |
|
||||
marginLeft: platform === PLATFORM.IOS && platformStyle !== PLATFORM.MATERIAL ? -3 : 0, |
|
||||
'NativeBase.Icon': { |
|
||||
color: variables.toolbarBtnColor, |
|
||||
fontSize: |
|
||||
platform === PLATFORM.IOS && variables.platformStyle !== PLATFORM.MATERIAL |
|
||||
? variables.iconHeaderSize + 1 |
|
||||
: variables.iconHeaderSize, |
|
||||
marginTop: 0, |
|
||||
marginRight: 2, |
|
||||
marginLeft: 1, |
|
||||
paddingTop: 1, |
|
||||
}, |
|
||||
'NativeBase.IconNB': { |
|
||||
color: variables.toolbarBtnColor, |
|
||||
fontSize: |
|
||||
platform === PLATFORM.IOS && variables.platformStyle !== PLATFORM.MATERIAL |
|
||||
? variables.iconHeaderSize + 1 |
|
||||
: variables.iconHeaderSize - 2, |
|
||||
marginTop: 0, |
|
||||
marginRight: 2, |
|
||||
marginLeft: 1, |
|
||||
paddingTop: 1, |
|
||||
}, |
|
||||
'NativeBase.Text': { |
|
||||
color: variables.toolbarBtnTextColor, |
|
||||
fontSize: platform === PLATFORM.IOS ? 17 : 0, |
|
||||
top: platform === PLATFORM.IOS ? 1 : -1.5, |
|
||||
paddingLeft: platform === PLATFORM.IOS && platformStyle !== PLATFORM.MATERIAL ? 2 : 5, |
|
||||
paddingRight: |
|
||||
platform === PLATFORM.IOS && platformStyle !== PLATFORM.MATERIAL ? undefined : 10, |
|
||||
}, |
|
||||
backgroundColor: 'transparent', |
|
||||
borderColor: null, |
|
||||
elevation: 0, |
|
||||
shadowColor: null, |
|
||||
shadowOffset: null, |
|
||||
shadowRadius: null, |
|
||||
shadowOpacity: null, |
|
||||
}, |
|
||||
'NativeBase.Icon': { |
|
||||
color: variables.toolbarBtnColor, |
|
||||
}, |
|
||||
'NativeBase.IconNB': { |
|
||||
color: variables.toolbarBtnColor, |
|
||||
}, |
|
||||
alignSelf: null, |
|
||||
paddingRight: variables.buttonPadding, |
|
||||
paddingLeft: platform === PLATFORM.IOS && platformStyle !== PLATFORM.MATERIAL ? 4 : 8, |
|
||||
}, |
|
||||
flex: platform === PLATFORM.IOS && platformStyle !== PLATFORM.MATERIAL ? 1 : 0.4, |
|
||||
alignSelf: 'center', |
|
||||
alignItems: 'flex-start', |
|
||||
}, |
|
||||
'NativeBase.Body': { |
|
||||
flex: 1, |
|
||||
alignItems: |
|
||||
platform === PLATFORM.IOS && platformStyle !== PLATFORM.MATERIAL ? 'center' : 'flex-start', |
|
||||
alignSelf: 'center', |
|
||||
'NativeBase.Segment': { |
|
||||
borderWidth: 0, |
|
||||
alignSelf: 'flex-end', |
|
||||
marginRight: platform === PLATFORM.IOS ? -40 : -55, |
|
||||
}, |
|
||||
'NativeBase.Button': { |
|
||||
alignSelf: 'center', |
|
||||
'.transparent': { |
|
||||
backgroundColor: 'transparent', |
|
||||
}, |
|
||||
'NativeBase.Icon': { |
|
||||
color: variables.toolbarBtnColor, |
|
||||
}, |
|
||||
'NativeBase.IconNB': { |
|
||||
color: variables.toolbarBtnColor, |
|
||||
}, |
|
||||
'NativeBase.Text': { |
|
||||
color: variables.inverseTextColor, |
|
||||
backgroundColor: 'transparent', |
|
||||
}, |
|
||||
}, |
|
||||
}, |
|
||||
'NativeBase.Right': { |
|
||||
'NativeBase.Button': { |
|
||||
'.hasText': { |
|
||||
height: 30, |
|
||||
'NativeBase.Icon': { |
|
||||
color: variables.toolbarBtnColor, |
|
||||
fontSize: variables.iconHeaderSize - 2, |
|
||||
marginTop: 2, |
|
||||
marginRight: 2, |
|
||||
marginLeft: 5, |
|
||||
}, |
|
||||
'NativeBase.Text': { |
|
||||
color: variables.toolbarBtnTextColor, |
|
||||
fontSize: platform === PLATFORM.IOS ? 17 : 14, |
|
||||
lineHeight: 19.5, |
|
||||
}, |
|
||||
'NativeBase.IconNB': { |
|
||||
color: variables.toolbarBtnColor, |
|
||||
fontSize: variables.iconHeaderSize - 2, |
|
||||
marginTop: 2, |
|
||||
marginRight: 2, |
|
||||
marginLeft: 5, |
|
||||
}, |
|
||||
}, |
|
||||
'.transparent': { |
|
||||
marginRight: platform === PLATFORM.IOS ? -9 : -5, |
|
||||
paddingLeft: 15, |
|
||||
paddingRight: 12, |
|
||||
paddingHorizontal: 15, |
|
||||
borderRadius: 50, |
|
||||
'NativeBase.Icon': { |
|
||||
color: variables.toolbarBtnColor, |
|
||||
fontSize: variables.iconHeaderSize - 2, |
|
||||
marginTop: 0, |
|
||||
marginLeft: 2, |
|
||||
marginRight: 0, |
|
||||
// paddingTop: 0
|
|
||||
}, |
|
||||
'NativeBase.IconNB': { |
|
||||
color: variables.toolbarBtnColor, |
|
||||
fontSize: variables.iconHeaderSize - 2, |
|
||||
marginTop: 0, |
|
||||
marginLeft: 2, |
|
||||
marginRight: 0, |
|
||||
// paddingTop: 0
|
|
||||
}, |
|
||||
'NativeBase.Text': { |
|
||||
color: variables.toolbarBtnTextColor, |
|
||||
fontSize: platform === PLATFORM.IOS ? 17 : 14, |
|
||||
top: platform === PLATFORM.IOS ? 1 : -1.5, |
|
||||
paddingRight: |
|
||||
platform === PLATFORM.IOS && variables.platformStyle !== PLATFORM.MATERIAL |
|
||||
? 0 |
|
||||
: undefined, |
|
||||
}, |
|
||||
backgroundColor: 'transparent', |
|
||||
borderColor: null, |
|
||||
elevation: 0, |
|
||||
shadowColor: null, |
|
||||
shadowOffset: null, |
|
||||
shadowRadius: null, |
|
||||
shadowOpacity: null, |
|
||||
}, |
|
||||
'NativeBase.Icon': { |
|
||||
color: variables.toolbarBtnColor, |
|
||||
}, |
|
||||
'NativeBase.IconNB': { |
|
||||
color: variables.toolbarBtnColor, |
|
||||
}, |
|
||||
alignSelf: null, |
|
||||
paddingHorizontal: variables.buttonPadding, |
|
||||
}, |
|
||||
flex: 1, |
|
||||
alignSelf: 'center', |
|
||||
alignItems: 'flex-end', |
|
||||
flexDirection: 'row', |
|
||||
justifyContent: 'flex-end', |
|
||||
}, |
|
||||
backgroundColor: variables.toolbarDefaultBg, |
|
||||
flexDirection: 'row', |
|
||||
// paddingHorizontal: 10,
|
|
||||
paddingLeft: |
|
||||
platform === PLATFORM.IOS && variables.platformStyle !== PLATFORM.MATERIAL ? 6 : 10, |
|
||||
paddingRight: 10, |
|
||||
justifyContent: 'center', |
|
||||
paddingTop: platform === PLATFORM.IOS ? 18 : 0, |
|
||||
borderBottomWidth: platform === PLATFORM.IOS ? 1 / PixelRatio.getPixelSizeForLayoutSize(1) : 0, |
|
||||
borderBottomColor: variables.toolbarDefaultBorder, |
|
||||
height: |
|
||||
variables.platform === PLATFORM.IOS && variables.platformStyle === PLATFORM.MATERIAL |
|
||||
? variables.toolbarHeight + 10 |
|
||||
: variables.toolbarHeight, |
|
||||
elevation: 3, |
|
||||
shadowColor: platformStyle === PLATFORM.MATERIAL ? '#000' : undefined, |
|
||||
shadowOffset: platformStyle === PLATFORM.MATERIAL ? { width: 0, height: 2 } : undefined, |
|
||||
shadowOpacity: platformStyle === PLATFORM.MATERIAL ? 0.2 : undefined, |
|
||||
shadowRadius: platformStyle === PLATFORM.MATERIAL ? 1.2 : undefined, |
|
||||
top: 0, |
|
||||
left: 0, |
|
||||
right: 0, |
|
||||
}; |
|
||||
|
|
||||
return headerTheme; |
|
||||
}; |
|
||||
@ -1,12 +0,0 @@ |
|||||
// @flow
|
|
||||
|
|
||||
import variable from '../variables/Platform'; |
|
||||
|
|
||||
export default (variables /* : * */ = variable) => { |
|
||||
const iconTheme = { |
|
||||
fontSize: variables.iconFontSize, |
|
||||
color: variable.textColor, |
|
||||
}; |
|
||||
|
|
||||
return iconTheme; |
|
||||
}; |
|
||||
@ -1,19 +0,0 @@ |
|||||
// @flow
|
|
||||
|
|
||||
import variable from '../variables/Platform'; |
|
||||
|
|
||||
export default (variables /* : * */ = variable) => { |
|
||||
const inputTheme = { |
|
||||
'.multiline': { |
|
||||
height: null, |
|
||||
}, |
|
||||
height: variables.inputHeightBase, |
|
||||
color: variables.inputColor, |
|
||||
paddingLeft: 5, |
|
||||
paddingRight: 5, |
|
||||
flex: 1, |
|
||||
fontSize: variables.inputFontSize, |
|
||||
}; |
|
||||
|
|
||||
return inputTheme; |
|
||||
}; |
|
||||
@ -1,132 +0,0 @@ |
|||||
// @flow
|
|
||||
|
|
||||
import variable from '../variables/Platform'; |
|
||||
|
|
||||
export default (variables /* : * */ = variable) => { |
|
||||
const inputGroupTheme = { |
|
||||
'NativeBase.Icon': { |
|
||||
fontSize: 24, |
|
||||
color: variables.sTabBarActiveTextColor, |
|
||||
paddingHorizontal: 5, |
|
||||
}, |
|
||||
'NativeBase.IconNB': { |
|
||||
fontSize: 24, |
|
||||
color: variables.sTabBarActiveTextColor, |
|
||||
paddingHorizontal: 5, |
|
||||
}, |
|
||||
'NativeBase.Input': { |
|
||||
height: variables.inputHeightBase, |
|
||||
color: variables.inputColor, |
|
||||
paddingLeft: 5, |
|
||||
paddingRight: 5, |
|
||||
flex: 1, |
|
||||
fontSize: variables.inputFontSize, |
|
||||
lineHeight: variables.inputLineHeight, |
|
||||
}, |
|
||||
'.underline': { |
|
||||
'.success': { |
|
||||
borderColor: variables.inputSuccessBorderColor, |
|
||||
}, |
|
||||
'.error': { |
|
||||
borderColor: variables.inputErrorBorderColor, |
|
||||
}, |
|
||||
paddingLeft: 5, |
|
||||
borderWidth: variables.borderWidth, |
|
||||
borderTopWidth: 0, |
|
||||
borderRightWidth: 0, |
|
||||
borderLeftWidth: 0, |
|
||||
borderColor: variables.inputBorderColor, |
|
||||
}, |
|
||||
'.regular': { |
|
||||
'.success': { |
|
||||
borderColor: variables.inputSuccessBorderColor, |
|
||||
}, |
|
||||
'.error': { |
|
||||
borderColor: variables.inputErrorBorderColor, |
|
||||
}, |
|
||||
paddingLeft: 5, |
|
||||
borderWidth: variables.borderWidth, |
|
||||
borderColor: variables.inputBorderColor, |
|
||||
}, |
|
||||
'.rounded': { |
|
||||
'.success': { |
|
||||
borderColor: variables.inputSuccessBorderColor, |
|
||||
}, |
|
||||
'.error': { |
|
||||
borderColor: variables.inputErrorBorderColor, |
|
||||
}, |
|
||||
paddingLeft: 5, |
|
||||
borderWidth: variables.borderWidth, |
|
||||
borderRadius: variables.inputGroupRoundedBorderRadius, |
|
||||
borderColor: variables.inputBorderColor, |
|
||||
}, |
|
||||
|
|
||||
'.success': { |
|
||||
'NativeBase.Icon': { |
|
||||
color: variables.inputSuccessBorderColor, |
|
||||
}, |
|
||||
'NativeBase.IconNB': { |
|
||||
color: variables.inputSuccessBorderColor, |
|
||||
}, |
|
||||
'.rounded': { |
|
||||
borderRadius: 30, |
|
||||
borderColor: variables.inputSuccessBorderColor, |
|
||||
}, |
|
||||
'.regular': { |
|
||||
borderColor: variables.inputSuccessBorderColor, |
|
||||
}, |
|
||||
'.underline': { |
|
||||
borderWidth: variables.borderWidth, |
|
||||
borderTopWidth: 0, |
|
||||
borderRightWidth: 0, |
|
||||
borderLeftWidth: 0, |
|
||||
borderColor: variables.inputSuccessBorderColor, |
|
||||
}, |
|
||||
borderColor: variables.inputSuccessBorderColor, |
|
||||
}, |
|
||||
|
|
||||
'.error': { |
|
||||
'NativeBase.Icon': { |
|
||||
color: variables.inputErrorBorderColor, |
|
||||
}, |
|
||||
'NativeBase.IconNB': { |
|
||||
color: variables.inputErrorBorderColor, |
|
||||
}, |
|
||||
'.rounded': { |
|
||||
borderRadius: 30, |
|
||||
borderColor: variables.inputErrorBorderColor, |
|
||||
}, |
|
||||
'.regular': { |
|
||||
borderColor: variables.inputErrorBorderColor, |
|
||||
}, |
|
||||
'.underline': { |
|
||||
borderWidth: variables.borderWidth, |
|
||||
borderTopWidth: 0, |
|
||||
borderRightWidth: 0, |
|
||||
borderLeftWidth: 0, |
|
||||
borderColor: variables.inputErrorBorderColor, |
|
||||
}, |
|
||||
borderColor: variables.inputErrorBorderColor, |
|
||||
}, |
|
||||
'.disabled': { |
|
||||
'NativeBase.Icon': { |
|
||||
color: '#384850', |
|
||||
}, |
|
||||
'NativeBase.IconNB': { |
|
||||
color: '#384850', |
|
||||
}, |
|
||||
}, |
|
||||
|
|
||||
paddingLeft: 5, |
|
||||
borderWidth: variables.borderWidth, |
|
||||
borderTopWidth: 0, |
|
||||
borderRightWidth: 0, |
|
||||
borderLeftWidth: 0, |
|
||||
borderColor: variables.inputBorderColor, |
|
||||
backgroundColor: 'transparent', |
|
||||
flexDirection: 'row', |
|
||||
alignItems: 'center', |
|
||||
}; |
|
||||
|
|
||||
return inputGroupTheme; |
|
||||
}; |
|
||||
@ -1,241 +0,0 @@ |
|||||
// @flow
|
|
||||
|
|
||||
import { Platform } from 'react-native'; |
|
||||
|
|
||||
import variable from '../variables/Platform'; |
|
||||
import { PLATFORM } from '../variables/CommonColor'; |
|
||||
|
|
||||
export default (variables /* : * */ = variable) => { |
|
||||
const itemTheme = { |
|
||||
'.floatingLabel': { |
|
||||
'NativeBase.Input': { |
|
||||
height: 50, |
|
||||
top: 8, |
|
||||
paddingTop: 3, |
|
||||
paddingBottom: 7, |
|
||||
'.multiline': { |
|
||||
minHeight: variables.inputHeightBase, |
|
||||
paddingTop: Platform.OS === PLATFORM.IOS ? 10 : 3, |
|
||||
paddingBottom: Platform.OS === PLATFORM.IOS ? 14 : 10, |
|
||||
}, |
|
||||
}, |
|
||||
'NativeBase.Label': { |
|
||||
paddingTop: 5, |
|
||||
}, |
|
||||
'NativeBase.Icon': { |
|
||||
top: 6, |
|
||||
paddingTop: 8, |
|
||||
}, |
|
||||
'NativeBase.IconNB': { |
|
||||
top: 6, |
|
||||
paddingTop: 8, |
|
||||
}, |
|
||||
}, |
|
||||
'.fixedLabel': { |
|
||||
'NativeBase.Label': { |
|
||||
position: null, |
|
||||
top: null, |
|
||||
left: null, |
|
||||
right: null, |
|
||||
flex: 1, |
|
||||
height: null, |
|
||||
width: null, |
|
||||
fontSize: variables.inputFontSize, |
|
||||
}, |
|
||||
'NativeBase.Input': { |
|
||||
flex: 2, |
|
||||
fontSize: variables.inputFontSize, |
|
||||
}, |
|
||||
}, |
|
||||
'.stackedLabel': { |
|
||||
'NativeBase.Label': { |
|
||||
position: null, |
|
||||
top: null, |
|
||||
left: null, |
|
||||
right: null, |
|
||||
paddingTop: 5, |
|
||||
alignSelf: 'flex-start', |
|
||||
fontSize: variables.inputFontSize - 2, |
|
||||
}, |
|
||||
'NativeBase.Icon': { |
|
||||
marginTop: 36, |
|
||||
}, |
|
||||
'NativeBase.Input': { |
|
||||
alignSelf: Platform.OS === PLATFORM.IOS ? 'stretch' : 'flex-start', |
|
||||
flex: 1, |
|
||||
width: Platform.OS === PLATFORM.IOS ? null : variables.deviceWidth - 25, |
|
||||
fontSize: variables.inputFontSize, |
|
||||
lineHeight: variables.inputLineHeight - 6, |
|
||||
'.secureTextEntry': { |
|
||||
fontSize: variables.inputFontSize, |
|
||||
}, |
|
||||
'.multiline': { |
|
||||
paddingTop: Platform.OS === PLATFORM.IOS ? 9 : undefined, |
|
||||
paddingBottom: Platform.OS === PLATFORM.IOS ? 9 : undefined, |
|
||||
}, |
|
||||
}, |
|
||||
flexDirection: null, |
|
||||
minHeight: variables.inputHeightBase + 15, |
|
||||
}, |
|
||||
'.inlineLabel': { |
|
||||
'NativeBase.Label': { |
|
||||
position: null, |
|
||||
top: null, |
|
||||
left: null, |
|
||||
right: null, |
|
||||
paddingRight: 20, |
|
||||
height: null, |
|
||||
width: null, |
|
||||
fontSize: variables.inputFontSize, |
|
||||
}, |
|
||||
'NativeBase.Input': { |
|
||||
paddingLeft: 5, |
|
||||
fontSize: variables.inputFontSize, |
|
||||
}, |
|
||||
flexDirection: 'row', |
|
||||
}, |
|
||||
'NativeBase.Label': { |
|
||||
fontSize: variables.inputFontSize, |
|
||||
color: variables.inputColorPlaceholder, |
|
||||
paddingRight: 5, |
|
||||
}, |
|
||||
'NativeBase.Icon': { |
|
||||
fontSize: 24, |
|
||||
paddingRight: 8, |
|
||||
}, |
|
||||
'NativeBase.IconNB': { |
|
||||
fontSize: 24, |
|
||||
paddingRight: 8, |
|
||||
}, |
|
||||
'NativeBase.Input': { |
|
||||
'.multiline': { |
|
||||
height: null, |
|
||||
}, |
|
||||
height: variables.inputHeightBase, |
|
||||
color: variables.inputColor, |
|
||||
flex: 1, |
|
||||
top: Platform.OS === PLATFORM.IOS ? 1.5 : undefined, |
|
||||
fontSize: variables.inputFontSize, |
|
||||
}, |
|
||||
'.underline': { |
|
||||
'NativeBase.Input': { |
|
||||
paddingLeft: 15, |
|
||||
}, |
|
||||
'.success': { |
|
||||
borderColor: variables.inputSuccessBorderColor, |
|
||||
}, |
|
||||
'.error': { |
|
||||
borderColor: variables.inputErrorBorderColor, |
|
||||
}, |
|
||||
borderWidth: variables.borderWidth * 2, |
|
||||
borderTopWidth: 0, |
|
||||
borderRightWidth: 0, |
|
||||
borderLeftWidth: 0, |
|
||||
borderColor: variables.inputBorderColor, |
|
||||
}, |
|
||||
'.regular': { |
|
||||
'NativeBase.Input': { |
|
||||
paddingLeft: 8, |
|
||||
}, |
|
||||
'NativeBase.Icon': { |
|
||||
paddingLeft: 10, |
|
||||
}, |
|
||||
'.success': { |
|
||||
borderColor: variables.inputSuccessBorderColor, |
|
||||
}, |
|
||||
'.error': { |
|
||||
borderColor: variables.inputErrorBorderColor, |
|
||||
}, |
|
||||
borderWidth: variables.borderWidth * 2, |
|
||||
borderColor: variables.inputBorderColor, |
|
||||
}, |
|
||||
'.rounded': { |
|
||||
'NativeBase.Input': { |
|
||||
paddingLeft: 8, |
|
||||
}, |
|
||||
'NativeBase.Icon': { |
|
||||
paddingLeft: 10, |
|
||||
}, |
|
||||
'.success': { |
|
||||
borderColor: variables.inputSuccessBorderColor, |
|
||||
}, |
|
||||
'.error': { |
|
||||
borderColor: variables.inputErrorBorderColor, |
|
||||
}, |
|
||||
borderWidth: variables.borderWidth * 2, |
|
||||
borderRadius: 30, |
|
||||
borderColor: variables.inputBorderColor, |
|
||||
}, |
|
||||
|
|
||||
'.success': { |
|
||||
'NativeBase.Icon': { |
|
||||
color: variables.inputSuccessBorderColor, |
|
||||
}, |
|
||||
'NativeBase.IconNB': { |
|
||||
color: variables.inputSuccessBorderColor, |
|
||||
}, |
|
||||
'.rounded': { |
|
||||
borderRadius: 30, |
|
||||
borderColor: variables.inputSuccessBorderColor, |
|
||||
}, |
|
||||
'.regular': { |
|
||||
borderColor: variables.inputSuccessBorderColor, |
|
||||
}, |
|
||||
'.underline': { |
|
||||
borderWidth: variables.borderWidth * 2, |
|
||||
borderTopWidth: 0, |
|
||||
borderRightWidth: 0, |
|
||||
borderLeftWidth: 0, |
|
||||
borderColor: variables.inputSuccessBorderColor, |
|
||||
}, |
|
||||
borderColor: variables.inputSuccessBorderColor, |
|
||||
}, |
|
||||
|
|
||||
'.error': { |
|
||||
'NativeBase.Icon': { |
|
||||
color: variables.inputErrorBorderColor, |
|
||||
}, |
|
||||
'NativeBase.IconNB': { |
|
||||
color: variables.inputErrorBorderColor, |
|
||||
}, |
|
||||
'.rounded': { |
|
||||
borderRadius: 30, |
|
||||
borderColor: variables.inputErrorBorderColor, |
|
||||
}, |
|
||||
'.regular': { |
|
||||
borderColor: variables.inputErrorBorderColor, |
|
||||
}, |
|
||||
'.underline': { |
|
||||
borderWidth: variables.borderWidth * 2, |
|
||||
borderTopWidth: 0, |
|
||||
borderRightWidth: 0, |
|
||||
borderLeftWidth: 0, |
|
||||
borderColor: variables.inputErrorBorderColor, |
|
||||
}, |
|
||||
borderColor: variables.inputErrorBorderColor, |
|
||||
}, |
|
||||
'.disabled': { |
|
||||
'NativeBase.Icon': { |
|
||||
color: '#384850', |
|
||||
}, |
|
||||
'NativeBase.IconNB': { |
|
||||
color: '#384850', |
|
||||
}, |
|
||||
}, |
|
||||
'.picker': { |
|
||||
marginLeft: 0, |
|
||||
}, |
|
||||
|
|
||||
borderWidth: variables.borderWidth * 2, |
|
||||
borderTopWidth: 0, |
|
||||
borderRightWidth: 0, |
|
||||
borderLeftWidth: 0, |
|
||||
borderColor: variables.inputBorderColor, |
|
||||
backgroundColor: 'transparent', |
|
||||
flexDirection: 'row', |
|
||||
alignItems: 'center', |
|
||||
marginLeft: 2, |
|
||||
}; |
|
||||
|
|
||||
return itemTheme; |
|
||||
}; |
|
||||
@ -1,15 +0,0 @@ |
|||||
// @flow
|
|
||||
|
|
||||
export default () => { |
|
||||
const labelTheme = { |
|
||||
'.focused': { |
|
||||
width: 0, |
|
||||
}, |
|
||||
'.textPrimary': { |
|
||||
color: 'gray', |
|
||||
}, |
|
||||
fontSize: 17, |
|
||||
}; |
|
||||
|
|
||||
return labelTheme; |
|
||||
}; |
|
||||
@ -1,11 +0,0 @@ |
|||||
// @flow
|
|
||||
|
|
||||
export default () => { |
|
||||
const leftTheme = { |
|
||||
flex: 1, |
|
||||
alignSelf: 'center', |
|
||||
alignItems: 'flex-start', |
|
||||
}; |
|
||||
|
|
||||
return leftTheme; |
|
||||
}; |
|
||||
@ -1,441 +0,0 @@ |
|||||
// @flow
|
|
||||
|
|
||||
import { Platform, PixelRatio } from 'react-native'; |
|
||||
|
|
||||
import pickerTheme from './Picker'; |
|
||||
import variable from '../variables/Platform'; |
|
||||
import { PLATFORM } from '../variables/CommonColor'; |
|
||||
|
|
||||
export default (variables /* : * */ = variable) => { |
|
||||
const { platform } = variables; |
|
||||
const selectedStyle = { |
|
||||
'NativeBase.Text': { |
|
||||
color: variables.listItemSelected, |
|
||||
}, |
|
||||
'NativeBase.Icon': { |
|
||||
color: variables.listItemSelected, |
|
||||
}, |
|
||||
}; |
|
||||
|
|
||||
const listItemTheme = { |
|
||||
'NativeBase.InputGroup': { |
|
||||
'NativeBase.Icon': { |
|
||||
paddingRight: 5, |
|
||||
}, |
|
||||
'NativeBase.IconNB': { |
|
||||
paddingRight: 5, |
|
||||
}, |
|
||||
'NativeBase.Input': { |
|
||||
paddingHorizontal: 5, |
|
||||
}, |
|
||||
flex: 1, |
|
||||
borderWidth: null, |
|
||||
margin: -10, |
|
||||
borderBottomColor: 'transparent', |
|
||||
}, |
|
||||
'.searchBar': { |
|
||||
'NativeBase.Item': { |
|
||||
'NativeBase.Icon': { |
|
||||
backgroundColor: 'transparent', |
|
||||
color: variables.dropdownLinkColor, |
|
||||
fontSize: |
|
||||
platform === PLATFORM.IOS ? variables.iconFontSize - 10 : variables.iconFontSize - 5, |
|
||||
alignItems: 'center', |
|
||||
marginTop: 2, |
|
||||
paddingRight: 8, |
|
||||
}, |
|
||||
'NativeBase.IconNB': { |
|
||||
backgroundColor: 'transparent', |
|
||||
color: null, |
|
||||
alignSelf: 'center', |
|
||||
}, |
|
||||
'NativeBase.Input': { |
|
||||
alignSelf: 'center', |
|
||||
}, |
|
||||
alignSelf: 'center', |
|
||||
alignItems: 'center', |
|
||||
justifyContent: 'flex-start', |
|
||||
flex: 1, |
|
||||
height: platform === PLATFORM.IOS ? 30 : 40, |
|
||||
borderColor: 'transparent', |
|
||||
backgroundColor: '#fff', |
|
||||
borderRadius: 5, |
|
||||
}, |
|
||||
'NativeBase.Button': { |
|
||||
'.transparent': { |
|
||||
'NativeBase.Text': { |
|
||||
fontWeight: '500', |
|
||||
}, |
|
||||
paddingHorizontal: null, |
|
||||
paddingLeft: platform === PLATFORM.IOS ? 10 : null, |
|
||||
}, |
|
||||
paddingHorizontal: platform === PLATFORM.IOS ? undefined : null, |
|
||||
width: platform === PLATFORM.IOS ? undefined : 0, |
|
||||
height: platform === PLATFORM.IOS ? undefined : 0, |
|
||||
}, |
|
||||
backgroundColor: variables.toolbarInputColor, |
|
||||
padding: 10, |
|
||||
marginLeft: null, |
|
||||
}, |
|
||||
'NativeBase.CheckBox': { |
|
||||
marginLeft: -10, |
|
||||
marginRight: 10, |
|
||||
}, |
|
||||
'.first': { |
|
||||
'.itemHeader': { |
|
||||
paddingTop: variables.listItemPadding + 3, |
|
||||
}, |
|
||||
}, |
|
||||
'.itemHeader': { |
|
||||
'.first': { |
|
||||
paddingTop: variables.listItemPadding + 3, |
|
||||
}, |
|
||||
borderBottomWidth: platform === PLATFORM.IOS ? variables.borderWidth : null, |
|
||||
marginLeft: null, |
|
||||
padding: variables.listItemPadding, |
|
||||
paddingLeft: variables.listItemPadding + 5, |
|
||||
paddingTop: platform === PLATFORM.IOS ? variables.listItemPadding + 25 : undefined, |
|
||||
paddingBottom: platform === PLATFORM.ANDROID ? variables.listItemPadding + 20 : undefined, |
|
||||
flexDirection: 'row', |
|
||||
borderColor: variables.listBorderColor, |
|
||||
'NativeBase.Text': { |
|
||||
fontSize: 14, |
|
||||
color: platform === PLATFORM.IOS ? undefined : variables.listNoteColor, |
|
||||
}, |
|
||||
}, |
|
||||
'.itemDivider': { |
|
||||
borderBottomWidth: null, |
|
||||
marginLeft: null, |
|
||||
padding: variables.listItemPadding, |
|
||||
paddingLeft: variables.listItemPadding + 5, |
|
||||
backgroundColor: variables.listDividerBg, |
|
||||
flexDirection: 'row', |
|
||||
borderColor: variables.listBorderColor, |
|
||||
}, |
|
||||
'.selected': { |
|
||||
'NativeBase.Left': { |
|
||||
...selectedStyle, |
|
||||
}, |
|
||||
'NativeBase.Body': { |
|
||||
...selectedStyle, |
|
||||
}, |
|
||||
'NativeBase.Right': { |
|
||||
...selectedStyle, |
|
||||
}, |
|
||||
...selectedStyle, |
|
||||
}, |
|
||||
'NativeBase.Left': { |
|
||||
'NativeBase.Body': { |
|
||||
'NativeBase.Text': { |
|
||||
'.note': { |
|
||||
color: variables.listNoteColor, |
|
||||
fontWeight: '200', |
|
||||
}, |
|
||||
fontWeight: '600', |
|
||||
}, |
|
||||
marginLeft: 10, |
|
||||
alignItems: null, |
|
||||
alignSelf: null, |
|
||||
}, |
|
||||
'NativeBase.Icon': { |
|
||||
width: variables.iconFontSize - 10, |
|
||||
fontSize: variables.iconFontSize - 10, |
|
||||
}, |
|
||||
'NativeBase.IconNB': { |
|
||||
width: variables.iconFontSize - 10, |
|
||||
fontSize: variables.iconFontSize - 10, |
|
||||
}, |
|
||||
'NativeBase.Text': { |
|
||||
alignSelf: 'center', |
|
||||
}, |
|
||||
flexDirection: 'row', |
|
||||
}, |
|
||||
'NativeBase.Body': { |
|
||||
'NativeBase.Text': { |
|
||||
marginHorizontal: variables.listItemPadding, |
|
||||
'.note': { |
|
||||
color: variables.listNoteColor, |
|
||||
fontWeight: '200', |
|
||||
}, |
|
||||
}, |
|
||||
alignSelf: null, |
|
||||
alignItems: null, |
|
||||
}, |
|
||||
'NativeBase.Right': { |
|
||||
'NativeBase.Badge': { |
|
||||
alignSelf: null, |
|
||||
}, |
|
||||
'NativeBase.PickerNB': { |
|
||||
'NativeBase.Button': { |
|
||||
marginRight: -15, |
|
||||
'NativeBase.Text': { |
|
||||
color: variables.topTabBarActiveTextColor, |
|
||||
}, |
|
||||
}, |
|
||||
}, |
|
||||
'NativeBase.Button': { |
|
||||
alignSelf: null, |
|
||||
'.transparent': { |
|
||||
'NativeBase.Text': { |
|
||||
color: variables.topTabBarActiveTextColor, |
|
||||
}, |
|
||||
}, |
|
||||
}, |
|
||||
'NativeBase.Icon': { |
|
||||
alignSelf: null, |
|
||||
fontSize: variables.iconFontSize - 8, |
|
||||
color: '#c9c8cd', |
|
||||
}, |
|
||||
'NativeBase.IconNB': { |
|
||||
alignSelf: null, |
|
||||
fontSize: variables.iconFontSize - 8, |
|
||||
color: '#c9c8cd', |
|
||||
}, |
|
||||
'NativeBase.Text': { |
|
||||
'.note': { |
|
||||
color: variables.listNoteColor, |
|
||||
fontWeight: '200', |
|
||||
}, |
|
||||
alignSelf: null, |
|
||||
}, |
|
||||
'NativeBase.Thumbnail': { |
|
||||
alignSelf: null, |
|
||||
}, |
|
||||
'NativeBase.Image': { |
|
||||
alignSelf: null, |
|
||||
}, |
|
||||
'NativeBase.Radio': { |
|
||||
alignSelf: null, |
|
||||
}, |
|
||||
'NativeBase.Checkbox': { |
|
||||
alignSelf: null, |
|
||||
}, |
|
||||
'NativeBase.Switch': { |
|
||||
alignSelf: null, |
|
||||
}, |
|
||||
padding: null, |
|
||||
flex: 0.28, |
|
||||
}, |
|
||||
'NativeBase.Text': { |
|
||||
'.note': { |
|
||||
color: variables.listNoteColor, |
|
||||
fontWeight: '200', |
|
||||
}, |
|
||||
alignSelf: 'center', |
|
||||
}, |
|
||||
'.last': { |
|
||||
marginLeft: -(variables.listItemPadding + 5), |
|
||||
paddingLeft: (variables.listItemPadding + 5) * 2, |
|
||||
top: 1, |
|
||||
}, |
|
||||
'.avatar': { |
|
||||
'NativeBase.Left': { |
|
||||
flex: 0, |
|
||||
alignSelf: 'flex-start', |
|
||||
paddingTop: 14, |
|
||||
}, |
|
||||
'NativeBase.Body': { |
|
||||
'NativeBase.Text': { |
|
||||
marginLeft: null, |
|
||||
}, |
|
||||
flex: 1, |
|
||||
paddingVertical: variables.listItemPadding, |
|
||||
borderBottomWidth: variables.borderWidth, |
|
||||
borderColor: variables.listBorderColor, |
|
||||
marginLeft: variables.listItemPadding + 5, |
|
||||
}, |
|
||||
'NativeBase.Right': { |
|
||||
'NativeBase.Text': { |
|
||||
'.note': { |
|
||||
fontSize: variables.noteFontSize - 2, |
|
||||
}, |
|
||||
}, |
|
||||
flex: 0, |
|
||||
paddingRight: variables.listItemPadding + 5, |
|
||||
alignSelf: 'stretch', |
|
||||
paddingVertical: variables.listItemPadding, |
|
||||
borderBottomWidth: variables.borderWidth, |
|
||||
borderColor: variables.listBorderColor, |
|
||||
}, |
|
||||
'.noBorder': { |
|
||||
'NativeBase.Body': { |
|
||||
borderBottomWidth: null, |
|
||||
}, |
|
||||
'NativeBase.Right': { |
|
||||
borderBottomWidth: null, |
|
||||
}, |
|
||||
}, |
|
||||
borderBottomWidth: null, |
|
||||
paddingVertical: null, |
|
||||
paddingRight: null, |
|
||||
}, |
|
||||
'.thumbnail': { |
|
||||
'NativeBase.Left': { |
|
||||
flex: 0, |
|
||||
}, |
|
||||
'NativeBase.Body': { |
|
||||
'NativeBase.Text': { |
|
||||
marginLeft: null, |
|
||||
}, |
|
||||
flex: 1, |
|
||||
paddingVertical: variables.listItemPadding + 8, |
|
||||
borderBottomWidth: variables.borderWidth, |
|
||||
borderColor: variables.listBorderColor, |
|
||||
marginLeft: variables.listItemPadding + 5, |
|
||||
}, |
|
||||
'NativeBase.Right': { |
|
||||
'NativeBase.Button': { |
|
||||
'.transparent': { |
|
||||
'NativeBase.Text': { |
|
||||
fontSize: variables.listNoteSize, |
|
||||
color: variables.sTabBarActiveTextColor, |
|
||||
}, |
|
||||
}, |
|
||||
height: null, |
|
||||
}, |
|
||||
flex: 0, |
|
||||
justifyContent: 'center', |
|
||||
alignSelf: 'stretch', |
|
||||
paddingRight: variables.listItemPadding + 5, |
|
||||
paddingVertical: variables.listItemPadding + 5, |
|
||||
borderBottomWidth: variables.borderWidth, |
|
||||
borderColor: variables.listBorderColor, |
|
||||
}, |
|
||||
'.noBorder': { |
|
||||
'NativeBase.Body': { |
|
||||
borderBottomWidth: null, |
|
||||
}, |
|
||||
'NativeBase.Right': { |
|
||||
borderBottomWidth: null, |
|
||||
}, |
|
||||
}, |
|
||||
borderBottomWidth: null, |
|
||||
paddingVertical: null, |
|
||||
paddingRight: null, |
|
||||
}, |
|
||||
'.icon': { |
|
||||
'.last': { |
|
||||
'NativeBase.Body': { |
|
||||
borderBottomWidth: null, |
|
||||
}, |
|
||||
'NativeBase.Right': { |
|
||||
borderBottomWidth: null, |
|
||||
}, |
|
||||
borderBottomWidth: variables.borderWidth, |
|
||||
borderColor: variables.listBorderColor, |
|
||||
}, |
|
||||
'NativeBase.Left': { |
|
||||
'NativeBase.Button': { |
|
||||
'NativeBase.IconNB': { |
|
||||
marginHorizontal: null, |
|
||||
fontSize: variables.iconFontSize - 5, |
|
||||
}, |
|
||||
'NativeBase.Icon': { |
|
||||
marginHorizontal: null, |
|
||||
fontSize: variables.iconFontSize - 8, |
|
||||
}, |
|
||||
alignSelf: 'center', |
|
||||
height: 29, |
|
||||
width: 29, |
|
||||
borderRadius: 6, |
|
||||
paddingVertical: null, |
|
||||
paddingHorizontal: null, |
|
||||
alignItems: 'center', |
|
||||
justifyContent: 'center', |
|
||||
}, |
|
||||
'NativeBase.Icon': { |
|
||||
width: variables.iconFontSize - 5, |
|
||||
fontSize: variables.iconFontSize - 2, |
|
||||
}, |
|
||||
'NativeBase.IconNB': { |
|
||||
width: variables.iconFontSize - 5, |
|
||||
fontSize: variables.iconFontSize - 2, |
|
||||
}, |
|
||||
paddingRight: variables.listItemPadding + 5, |
|
||||
flex: 0, |
|
||||
height: 44, |
|
||||
justifyContent: 'center', |
|
||||
alignItems: 'center', |
|
||||
}, |
|
||||
'NativeBase.Body': { |
|
||||
'NativeBase.Text': { |
|
||||
marginLeft: null, |
|
||||
fontSize: 17, |
|
||||
}, |
|
||||
flex: 1, |
|
||||
height: 44, |
|
||||
justifyContent: 'center', |
|
||||
borderBottomWidth: 1 / PixelRatio.getPixelSizeForLayoutSize(1), |
|
||||
borderColor: variables.listBorderColor, |
|
||||
}, |
|
||||
'NativeBase.Right': { |
|
||||
'NativeBase.Text': { |
|
||||
textAlign: 'center', |
|
||||
color: '#8F8E95', |
|
||||
fontSize: 17, |
|
||||
}, |
|
||||
'NativeBase.IconNB': { |
|
||||
color: '#C8C7CC', |
|
||||
fontSize: variables.iconFontSize - 10, |
|
||||
alignSelf: 'center', |
|
||||
paddingLeft: 10, |
|
||||
paddingTop: 3, |
|
||||
}, |
|
||||
'NativeBase.Icon': { |
|
||||
color: '#C8C7CC', |
|
||||
fontSize: variables.iconFontSize - 10, |
|
||||
alignSelf: 'center', |
|
||||
paddingLeft: 10, |
|
||||
paddingTop: 3, |
|
||||
}, |
|
||||
'NativeBase.Switch': { |
|
||||
marginRight: Platform.OS === PLATFORM.IOS ? undefined : -5, |
|
||||
alignSelf: null, |
|
||||
}, |
|
||||
'NativeBase.PickerNB': { |
|
||||
...pickerTheme(), |
|
||||
}, |
|
||||
flexDirection: 'row', |
|
||||
alignItems: 'center', |
|
||||
flex: 0, |
|
||||
alignSelf: 'stretch', |
|
||||
height: 44, |
|
||||
justifyContent: 'flex-end', |
|
||||
borderBottomWidth: 1 / PixelRatio.getPixelSizeForLayoutSize(1), |
|
||||
borderColor: variables.listBorderColor, |
|
||||
paddingRight: variables.listItemPadding + 5, |
|
||||
}, |
|
||||
'.noBorder': { |
|
||||
'NativeBase.Body': { |
|
||||
borderBottomWidth: null, |
|
||||
}, |
|
||||
'NativeBase.Right': { |
|
||||
borderBottomWidth: null, |
|
||||
}, |
|
||||
}, |
|
||||
borderBottomWidth: null, |
|
||||
paddingVertical: null, |
|
||||
paddingRight: null, |
|
||||
height: 44, |
|
||||
justifyContent: 'center', |
|
||||
}, |
|
||||
'.noBorder': { |
|
||||
borderBottomWidth: null, |
|
||||
}, |
|
||||
'.noIndent': { |
|
||||
marginLeft: null, |
|
||||
padding: variables.listItemPadding, |
|
||||
paddingLeft: variables.listItemPadding + 6, |
|
||||
}, |
|
||||
alignItems: 'center', |
|
||||
flexDirection: 'row', |
|
||||
paddingRight: variables.listItemPadding + 6, |
|
||||
paddingVertical: variables.listItemPadding + 3, |
|
||||
marginLeft: variables.listItemPadding + 6, |
|
||||
borderBottomWidth: 1 / PixelRatio.getPixelSizeForLayoutSize(1), |
|
||||
backgroundColor: variables.listBg, |
|
||||
borderColor: variables.listBorderColor, |
|
||||
}; |
|
||||
|
|
||||
return listItemTheme; |
|
||||
}; |
|
||||
@ -1,14 +0,0 @@ |
|||||
// @flow
|
|
||||
|
|
||||
export default () => { |
|
||||
const pickerTheme = { |
|
||||
'.note': { |
|
||||
color: '#8F8E95', |
|
||||
}, |
|
||||
// width: 90,
|
|
||||
marginRight: -4, |
|
||||
flexGrow: 1, |
|
||||
}; |
|
||||
|
|
||||
return pickerTheme; |
|
||||
}; |
|
||||
@ -1,7 +0,0 @@ |
|||||
// @flow
|
|
||||
|
|
||||
export default () => { |
|
||||
const pickerTheme = {}; |
|
||||
|
|
||||
return pickerTheme; |
|
||||
}; |
|
||||
@ -1,14 +0,0 @@ |
|||||
// @flow
|
|
||||
|
|
||||
export default () => { |
|
||||
const pickerTheme = { |
|
||||
'.note': { |
|
||||
color: '#8F8E95', |
|
||||
}, |
|
||||
// width: 90,
|
|
||||
marginRight: -4, |
|
||||
flexGrow: 1, |
|
||||
}; |
|
||||
|
|
||||
return pickerTheme; |
|
||||
}; |
|
||||
@ -1,26 +0,0 @@ |
|||||
// @flow
|
|
||||
|
|
||||
import { Platform } from 'react-native'; |
|
||||
|
|
||||
import variable from '../variables/Platform'; |
|
||||
import { PLATFORM } from '../variables/CommonColor'; |
|
||||
|
|
||||
export default (variables /* : * */ = variable) => { |
|
||||
const radioTheme = { |
|
||||
'.selected': { |
|
||||
'NativeBase.IconNB': { |
|
||||
color: |
|
||||
Platform.OS === PLATFORM.IOS ? variables.radioColor : variables.radioSelectedColorAndroid, |
|
||||
lineHeight: Platform.OS === PLATFORM.IOS ? 25 : variables.radioBtnLineHeight, |
|
||||
height: Platform.OS === PLATFORM.IOS ? 20 : undefined, |
|
||||
}, |
|
||||
}, |
|
||||
'NativeBase.IconNB': { |
|
||||
color: Platform.OS === PLATFORM.IOS ? 'transparent' : undefined, |
|
||||
lineHeight: Platform.OS === PLATFORM.IOS ? undefined : variables.radioBtnLineHeight, |
|
||||
fontSize: Platform.OS === PLATFORM.IOS ? undefined : variables.radioBtnSize, |
|
||||
}, |
|
||||
}; |
|
||||
|
|
||||
return radioTheme; |
|
||||
}; |
|
||||
@ -1,14 +0,0 @@ |
|||||
// @flow
|
|
||||
|
|
||||
export default () => { |
|
||||
const rightTheme = { |
|
||||
'NativeBase.Button': { |
|
||||
alignSelf: null, |
|
||||
}, |
|
||||
flex: 1, |
|
||||
alignSelf: 'center', |
|
||||
alignItems: 'flex-end', |
|
||||
}; |
|
||||
|
|
||||
return rightTheme; |
|
||||
}; |
|
||||
@ -1,57 +0,0 @@ |
|||||
// @flow
|
|
||||
|
|
||||
import variable from '../variables/Platform'; |
|
||||
import { PLATFORM } from '../variables/CommonColor'; |
|
||||
|
|
||||
export default (variables /* : * */ = variable) => { |
|
||||
const { platform } = variables; |
|
||||
|
|
||||
const segmentTheme = { |
|
||||
height: 45, |
|
||||
borderColor: variables.segmentBorderColorMain, |
|
||||
flexDirection: 'row', |
|
||||
justifyContent: 'center', |
|
||||
backgroundColor: variables.segmentBackgroundColor, |
|
||||
'NativeBase.Button': { |
|
||||
alignSelf: 'center', |
|
||||
borderRadius: 0, |
|
||||
paddingTop: 3, |
|
||||
paddingBottom: 3, |
|
||||
height: 30, |
|
||||
backgroundColor: 'transparent', |
|
||||
borderWidth: 1, |
|
||||
borderLeftWidth: 0, |
|
||||
borderColor: variables.segmentBorderColor, |
|
||||
elevation: 0, |
|
||||
'.active': { |
|
||||
backgroundColor: variables.segmentActiveBackgroundColor, |
|
||||
'NativeBase.Text': { |
|
||||
color: variables.segmentActiveTextColor, |
|
||||
}, |
|
||||
'NativeBase.Icon': { |
|
||||
color: variables.segmentActiveTextColor, |
|
||||
}, |
|
||||
}, |
|
||||
'.first': { |
|
||||
borderTopLeftRadius: platform === PLATFORM.IOS ? 5 : undefined, |
|
||||
borderBottomLeftRadius: platform === PLATFORM.IOS ? 5 : undefined, |
|
||||
borderLeftWidth: 1, |
|
||||
}, |
|
||||
'.last': { |
|
||||
borderTopRightRadius: platform === PLATFORM.IOS ? 5 : undefined, |
|
||||
borderBottomRightRadius: platform === PLATFORM.IOS ? 5 : undefined, |
|
||||
}, |
|
||||
'NativeBase.Text': { |
|
||||
color: variables.segmentTextColor, |
|
||||
fontSize: 14, |
|
||||
}, |
|
||||
'NativeBase.Icon': { |
|
||||
fontSize: 22, |
|
||||
paddingTop: 0, |
|
||||
color: variables.segmentTextColor, |
|
||||
}, |
|
||||
}, |
|
||||
}; |
|
||||
|
|
||||
return segmentTheme; |
|
||||
}; |
|
||||
@ -1,49 +0,0 @@ |
|||||
// @flow
|
|
||||
|
|
||||
import variable from '../variables/Platform'; |
|
||||
|
|
||||
export default (variables /* : * */ = variable) => { |
|
||||
const theme = { |
|
||||
'.group': { |
|
||||
height: 50, |
|
||||
paddingVertical: variables.listItemPadding - 8, |
|
||||
paddingTop: variables.listItemPadding + 12, |
|
||||
'.bordered': { |
|
||||
height: 50, |
|
||||
paddingVertical: variables.listItemPadding - 8, |
|
||||
paddingTop: variables.listItemPadding + 12, |
|
||||
}, |
|
||||
}, |
|
||||
'.bordered': { |
|
||||
'.noTopBorder': { |
|
||||
borderTopWidth: 0, |
|
||||
}, |
|
||||
'.noBottomBorder': { |
|
||||
borderBottomWidth: 0, |
|
||||
}, |
|
||||
height: 35, |
|
||||
paddingTop: variables.listItemPadding + 2, |
|
||||
paddingBottom: variables.listItemPadding, |
|
||||
borderBottomWidth: variables.borderWidth, |
|
||||
borderTopWidth: variables.borderWidth, |
|
||||
borderColor: variables.listBorderColor, |
|
||||
}, |
|
||||
'NativeBase.Text': { |
|
||||
fontSize: variables.tabBarTextSize - 2, |
|
||||
color: '#777', |
|
||||
}, |
|
||||
'.noTopBorder': { |
|
||||
borderTopWidth: 0, |
|
||||
}, |
|
||||
'.noBottomBorder': { |
|
||||
borderBottomWidth: 0, |
|
||||
}, |
|
||||
height: 38, |
|
||||
backgroundColor: '#F0EFF5', |
|
||||
flex: 1, |
|
||||
justifyContent: 'center', |
|
||||
paddingLeft: variables.listItemPadding + 5, |
|
||||
}; |
|
||||
|
|
||||
return theme; |
|
||||
}; |
|
||||
@ -1,9 +0,0 @@ |
|||||
// @flow
|
|
||||
|
|
||||
export default () => { |
|
||||
const spinnerTheme = { |
|
||||
height: 80, |
|
||||
}; |
|
||||
|
|
||||
return spinnerTheme; |
|
||||
}; |
|
||||
@ -1,19 +0,0 @@ |
|||||
// @flow
|
|
||||
|
|
||||
import { Platform } from 'react-native'; |
|
||||
|
|
||||
import variable from '../variables/Platform'; |
|
||||
import { PLATFORM } from '../variables/CommonColor'; |
|
||||
|
|
||||
export default (variables /* : * */ = variable) => { |
|
||||
const subtitleTheme = { |
|
||||
fontSize: variables.subTitleFontSize, |
|
||||
fontFamily: variables.titleFontfamily, |
|
||||
color: variables.subtitleColor, |
|
||||
textAlign: 'center', |
|
||||
paddingLeft: Platform.OS === PLATFORM.IOS ? 4 : 0, |
|
||||
marginLeft: Platform.OS === PLATFORM.IOS ? undefined : -3, |
|
||||
}; |
|
||||
|
|
||||
return subtitleTheme; |
|
||||
}; |
|
||||
@ -1,46 +0,0 @@ |
|||||
// @flow
|
|
||||
|
|
||||
export default () => { |
|
||||
const swipeRowTheme = { |
|
||||
'NativeBase.ListItem': { |
|
||||
'.list': { |
|
||||
backgroundColor: '#FFF', |
|
||||
}, |
|
||||
marginLeft: 0, |
|
||||
}, |
|
||||
'NativeBase.Left': { |
|
||||
flex: 0, |
|
||||
alignSelf: null, |
|
||||
alignItems: null, |
|
||||
'NativeBase.Button': { |
|
||||
flex: 1, |
|
||||
alignItems: 'center', |
|
||||
justifyContent: 'center', |
|
||||
alignSelf: 'stretch', |
|
||||
borderRadius: 0, |
|
||||
}, |
|
||||
}, |
|
||||
'NativeBase.Right': { |
|
||||
flex: 0, |
|
||||
alignSelf: null, |
|
||||
alignItems: null, |
|
||||
'NativeBase.Button': { |
|
||||
flex: 1, |
|
||||
alignItems: 'center', |
|
||||
justifyContent: 'center', |
|
||||
alignSelf: 'stretch', |
|
||||
borderRadius: 0, |
|
||||
}, |
|
||||
}, |
|
||||
'NativeBase.Button': { |
|
||||
flex: 1, |
|
||||
height: null, |
|
||||
alignItems: 'center', |
|
||||
justifyContent: 'center', |
|
||||
alignSelf: 'stretch', |
|
||||
borderRadius: 0, |
|
||||
}, |
|
||||
}; |
|
||||
|
|
||||
return swipeRowTheme; |
|
||||
}; |
|
||||
@ -1,9 +0,0 @@ |
|||||
// @flow
|
|
||||
|
|
||||
export default () => { |
|
||||
const switchTheme = { |
|
||||
marginVertical: -5, |
|
||||
}; |
|
||||
|
|
||||
return switchTheme; |
|
||||
}; |
|
||||
@ -1,10 +0,0 @@ |
|||||
// @flow
|
|
||||
|
|
||||
export default () => { |
|
||||
const tabTheme = { |
|
||||
flex: 1, |
|
||||
backgroundColor: '#FFF', |
|
||||
}; |
|
||||
|
|
||||
return tabTheme; |
|
||||
}; |
|
||||
@ -1,57 +0,0 @@ |
|||||
// @flow
|
|
||||
|
|
||||
import variable from '../variables/Platform'; |
|
||||
|
|
||||
export default (variables /* : * */ = variable) => { |
|
||||
const tabBarTheme = { |
|
||||
'.tabIcon': { |
|
||||
height: undefined, |
|
||||
}, |
|
||||
'.vertical': { |
|
||||
height: 60, |
|
||||
}, |
|
||||
'NativeBase.Button': { |
|
||||
'.transparent': { |
|
||||
'NativeBase.Text': { |
|
||||
fontSize: variables.tabFontSize, |
|
||||
color: variables.sTabBarActiveTextColor, |
|
||||
fontWeight: '400', |
|
||||
}, |
|
||||
'NativeBase.IconNB': { |
|
||||
color: variables.sTabBarActiveTextColor, |
|
||||
}, |
|
||||
}, |
|
||||
'NativeBase.IconNB': { |
|
||||
color: variables.sTabBarActiveTextColor, |
|
||||
}, |
|
||||
'NativeBase.Text': { |
|
||||
fontSize: variables.tabFontSize, |
|
||||
color: variables.sTabBarActiveTextColor, |
|
||||
fontWeight: '400', |
|
||||
}, |
|
||||
'.isTabActive': { |
|
||||
'NativeBase.Text': { |
|
||||
fontWeight: '900', |
|
||||
}, |
|
||||
}, |
|
||||
flex: 1, |
|
||||
alignSelf: 'stretch', |
|
||||
alignItems: 'center', |
|
||||
justifyContent: 'center', |
|
||||
borderRadius: null, |
|
||||
borderBottomColor: 'transparent', |
|
||||
backgroundColor: variables.tabBgColor, |
|
||||
}, |
|
||||
height: 45, |
|
||||
flexDirection: 'row', |
|
||||
justifyContent: 'space-around', |
|
||||
borderWidth: 1, |
|
||||
borderTopWidth: 0, |
|
||||
borderLeftWidth: 0, |
|
||||
borderRightWidth: 0, |
|
||||
borderBottomColor: '#ccc', |
|
||||
backgroundColor: variables.tabBgColor, |
|
||||
}; |
|
||||
|
|
||||
return tabBarTheme; |
|
||||
}; |
|
||||
@ -1,25 +0,0 @@ |
|||||
// @flow
|
|
||||
|
|
||||
import { Platform } from 'react-native'; |
|
||||
|
|
||||
import variable from '../variables/Platform'; |
|
||||
import { PLATFORM } from '../variables/CommonColor'; |
|
||||
|
|
||||
export default (variables /* : * */ = variable) => { |
|
||||
const { platformStyle } = variables; |
|
||||
|
|
||||
const tabContainerTheme = { |
|
||||
elevation: 3, |
|
||||
height: 50, |
|
||||
flexDirection: 'row', |
|
||||
shadowColor: platformStyle === PLATFORM.MATERIAL ? '#000' : undefined, |
|
||||
shadowOffset: platformStyle === PLATFORM.MATERIAL ? { width: 0, height: 2 } : undefined, |
|
||||
shadowOpacity: platformStyle === PLATFORM.MATERIAL ? 0.2 : undefined, |
|
||||
shadowRadius: platformStyle === PLATFORM.MATERIAL ? 1.2 : undefined, |
|
||||
justifyContent: 'space-around', |
|
||||
borderBottomWidth: Platform.OS === PLATFORM.IOS ? variables.borderWidth : 0, |
|
||||
borderColor: variables.topTabBarBorderColor, |
|
||||
}; |
|
||||
|
|
||||
return tabContainerTheme; |
|
||||
}; |
|
||||
@ -1,40 +0,0 @@ |
|||||
// @flow
|
|
||||
|
|
||||
import variable from '../variables/Platform'; |
|
||||
import { PLATFORM } from '../variables/CommonColor'; |
|
||||
|
|
||||
export default (variables /* : * */ = variable) => { |
|
||||
const { platform } = variables; |
|
||||
|
|
||||
const tabHeadingTheme = { |
|
||||
flexDirection: 'row', |
|
||||
backgroundColor: variables.tabDefaultBg, |
|
||||
flex: 1, |
|
||||
alignItems: 'center', |
|
||||
justifyContent: 'center', |
|
||||
'.scrollable': { |
|
||||
paddingHorizontal: 20, |
|
||||
flex: platform === PLATFORM.ANDROID ? 0 : 1, |
|
||||
minWidth: platform === PLATFORM.ANDROID ? undefined : 60, |
|
||||
}, |
|
||||
'NativeBase.Text': { |
|
||||
color: variables.topTabBarTextColor, |
|
||||
marginHorizontal: 7, |
|
||||
}, |
|
||||
'NativeBase.Icon': { |
|
||||
color: variables.topTabBarTextColor, |
|
||||
fontSize: platform === PLATFORM.IOS ? 26 : undefined, |
|
||||
}, |
|
||||
'.active': { |
|
||||
'NativeBase.Text': { |
|
||||
color: variables.topTabBarActiveTextColor, |
|
||||
fontWeight: '600', |
|
||||
}, |
|
||||
'NativeBase.Icon': { |
|
||||
color: variables.topTabBarActiveTextColor, |
|
||||
}, |
|
||||
}, |
|
||||
}; |
|
||||
|
|
||||
return tabHeadingTheme; |
|
||||
}; |
|
||||
@ -1,20 +0,0 @@ |
|||||
// @flow
|
|
||||
|
|
||||
import variable from '../variables/Platform'; |
|
||||
|
|
||||
export default (variables /* : * */ = variable) => { |
|
||||
const textTheme = { |
|
||||
fontSize: variables.DefaultFontSize, |
|
||||
fontFamily: variables.fontFamily, |
|
||||
color: variables.textColor, |
|
||||
'.note': { |
|
||||
color: '#a7a7a7', |
|
||||
fontSize: variables.noteFontSize, |
|
||||
}, |
|
||||
'.textPrimary': { |
|
||||
color: '#333', |
|
||||
}, |
|
||||
}; |
|
||||
|
|
||||
return textTheme; |
|
||||
}; |
|
||||
@ -1,25 +0,0 @@ |
|||||
// @flow
|
|
||||
|
|
||||
import variable from '../variables/Platform'; |
|
||||
|
|
||||
export default (variables /* : * */ = variable) => { |
|
||||
const textAreaTheme = { |
|
||||
'.underline': { |
|
||||
borderBottomWidth: variables.borderWidth, |
|
||||
marginTop: 5, |
|
||||
borderColor: variables.inputBorderColor, |
|
||||
}, |
|
||||
'.bordered': { |
|
||||
borderWidth: 1, |
|
||||
marginTop: 5, |
|
||||
borderColor: variables.inputBorderColor, |
|
||||
}, |
|
||||
color: variables.textColor, |
|
||||
paddingLeft: 10, |
|
||||
paddingRight: 5, |
|
||||
fontSize: 15, |
|
||||
textAlignVertical: 'top', |
|
||||
}; |
|
||||
|
|
||||
return textAreaTheme; |
|
||||
}; |
|
||||
@ -1,40 +0,0 @@ |
|||||
// @flow
|
|
||||
|
|
||||
export default () => { |
|
||||
const thumbnailTheme = { |
|
||||
'.square': { |
|
||||
borderRadius: 0, |
|
||||
'.small': { |
|
||||
width: 36, |
|
||||
height: 36, |
|
||||
borderRadius: 0, |
|
||||
}, |
|
||||
'.large': { |
|
||||
width: 80, |
|
||||
height: 80, |
|
||||
borderRadius: 0, |
|
||||
}, |
|
||||
}, |
|
||||
'.small': { |
|
||||
width: 36, |
|
||||
height: 36, |
|
||||
borderRadius: 18, |
|
||||
'.square': { |
|
||||
borderRadius: 0, |
|
||||
}, |
|
||||
}, |
|
||||
'.large': { |
|
||||
width: 80, |
|
||||
height: 80, |
|
||||
borderRadius: 40, |
|
||||
'.square': { |
|
||||
borderRadius: 0, |
|
||||
}, |
|
||||
}, |
|
||||
width: 56, |
|
||||
height: 56, |
|
||||
borderRadius: 28, |
|
||||
}; |
|
||||
|
|
||||
return thumbnailTheme; |
|
||||
}; |
|
||||
@ -1,21 +0,0 @@ |
|||||
// @flow
|
|
||||
|
|
||||
import { Platform } from 'react-native'; |
|
||||
|
|
||||
import variable from '../variables/Platform'; |
|
||||
import { PLATFORM } from '../variables/CommonColor'; |
|
||||
|
|
||||
export default (variables /* : * */ = variable) => { |
|
||||
const titleTheme = { |
|
||||
fontSize: variables.titleFontSize, |
|
||||
fontFamily: variables.titleFontfamily, |
|
||||
color: variables.titleFontColor, |
|
||||
fontWeight: Platform.OS === PLATFORM.IOS ? '700' : undefined, |
|
||||
textAlign: 'center', |
|
||||
paddingLeft: Platform.OS === PLATFORM.IOS ? 4 : 0, |
|
||||
marginLeft: Platform.OS === PLATFORM.IOS ? undefined : -3, |
|
||||
paddingTop: 1, |
|
||||
}; |
|
||||
|
|
||||
return titleTheme; |
|
||||
}; |
|
||||
@ -1,41 +0,0 @@ |
|||||
// @flow
|
|
||||
|
|
||||
import variable from '../variables/Platform'; |
|
||||
import { PLATFORM } from '../variables/CommonColor'; |
|
||||
|
|
||||
export default (variables /* : * */ = variable) => { |
|
||||
const { platform } = variables; |
|
||||
|
|
||||
const toastTheme = { |
|
||||
'.danger': { |
|
||||
backgroundColor: variables.brandDanger, |
|
||||
}, |
|
||||
'.warning': { |
|
||||
backgroundColor: variables.brandWarning, |
|
||||
}, |
|
||||
'.success': { |
|
||||
backgroundColor: variables.brandSuccess, |
|
||||
}, |
|
||||
backgroundColor: 'rgba(0,0,0,0.8)', |
|
||||
borderRadius: platform === PLATFORM.IOS ? 5 : 0, |
|
||||
flexDirection: 'row', |
|
||||
justifyContent: 'space-between', |
|
||||
alignItems: 'center', |
|
||||
padding: 10, |
|
||||
minHeight: 50, |
|
||||
'NativeBase.Text': { |
|
||||
color: '#fff', |
|
||||
flex: 1, |
|
||||
}, |
|
||||
'NativeBase.Button': { |
|
||||
backgroundColor: 'transparent', |
|
||||
height: 30, |
|
||||
elevation: 0, |
|
||||
'NativeBase.Text': { |
|
||||
fontSize: 14, |
|
||||
}, |
|
||||
}, |
|
||||
}; |
|
||||
|
|
||||
return toastTheme; |
|
||||
}; |
|
||||
@ -1,13 +0,0 @@ |
|||||
// @flow
|
|
||||
|
|
||||
import variable from '../variables/Platform'; |
|
||||
|
|
||||
export default (variables /* : * */ = variable) => { |
|
||||
const viewTheme = { |
|
||||
'.padder': { |
|
||||
padding: variables.contentPadding, |
|
||||
}, |
|
||||
}; |
|
||||
|
|
||||
return viewTheme; |
|
||||
}; |
|
||||
@ -1,247 +0,0 @@ |
|||||
/* eslint-disable no-param-reassign */ |
|
||||
// @flow
|
|
||||
|
|
||||
import _ from 'lodash'; |
|
||||
|
|
||||
import bodyTheme from './Body'; |
|
||||
import leftTheme from './Left'; |
|
||||
import rightTheme from './Right'; |
|
||||
import headerTheme from './Header'; |
|
||||
import switchTheme from './Switch'; |
|
||||
import thumbnailTheme from './Thumbnail'; |
|
||||
import containerTheme from './Container'; |
|
||||
import contentTheme from './Content'; |
|
||||
import buttonTheme from './Button'; |
|
||||
import titleTheme from './Title'; |
|
||||
import subtitleTheme from './Subtitle'; |
|
||||
import inputGroupTheme from './InputGroup'; |
|
||||
import badgeTheme from './Badge'; |
|
||||
import checkBoxTheme from './CheckBox'; |
|
||||
import cardTheme from './Card'; |
|
||||
import radioTheme from './Radio'; |
|
||||
import h3Theme from './H3'; |
|
||||
import h2Theme from './H2'; |
|
||||
import h1Theme from './H1'; |
|
||||
import footerTheme from './Footer'; |
|
||||
import footerTabTheme from './FooterTab'; |
|
||||
import fabTheme from './Fab'; |
|
||||
import itemTheme from './Item'; |
|
||||
import labelTheme from './Label'; |
|
||||
import textAreaTheme from './Textarea'; |
|
||||
import textTheme from './Text'; |
|
||||
import toastTheme from './Toast'; |
|
||||
import tabTheme from './Tab'; |
|
||||
import tabBarTheme from './TabBar'; |
|
||||
import tabContainerTheme from './TabContainer'; |
|
||||
import viewTheme from './View'; |
|
||||
import tabHeadingTheme from './TabHeading'; |
|
||||
import iconTheme from './Icon'; |
|
||||
import inputTheme from './Input'; |
|
||||
import swipeRowTheme from './SwipeRow'; |
|
||||
import segmentTheme from './Segment'; |
|
||||
import spinnerTheme from './Spinner'; |
|
||||
import cardItemTheme from './CardItem'; |
|
||||
import listItemTheme from './ListItem'; |
|
||||
import formTheme from './Form'; |
|
||||
import separatorTheme from './Separator'; |
|
||||
import pickerTheme from './Picker'; |
|
||||
import variable from '../variables/Platform'; |
|
||||
import getOverrides from '../overrides'; |
|
||||
|
|
||||
export default (variables /* : * */ = variable) => { |
|
||||
const theme = { |
|
||||
variables, |
|
||||
'NativeBase.Left': { |
|
||||
...leftTheme(variables), |
|
||||
}, |
|
||||
'NativeBase.Right': { |
|
||||
...rightTheme(variables), |
|
||||
}, |
|
||||
'NativeBase.Body': { |
|
||||
...bodyTheme(variables), |
|
||||
}, |
|
||||
|
|
||||
'NativeBase.Header': { |
|
||||
...headerTheme(variables), |
|
||||
}, |
|
||||
|
|
||||
'NativeBase.Button': { |
|
||||
...buttonTheme(variables), |
|
||||
}, |
|
||||
|
|
||||
'NativeBase.Title': { |
|
||||
...titleTheme(variables), |
|
||||
}, |
|
||||
'NativeBase.Subtitle': { |
|
||||
...subtitleTheme(variables), |
|
||||
}, |
|
||||
|
|
||||
'NativeBase.InputGroup': { |
|
||||
...inputGroupTheme(variables), |
|
||||
}, |
|
||||
|
|
||||
'NativeBase.Input': { |
|
||||
...inputTheme(variables), |
|
||||
}, |
|
||||
|
|
||||
'NativeBase.Badge': { |
|
||||
...badgeTheme(variables), |
|
||||
}, |
|
||||
|
|
||||
'NativeBase.CheckBox': { |
|
||||
...checkBoxTheme(variables), |
|
||||
}, |
|
||||
|
|
||||
'NativeBase.Radio': { |
|
||||
...radioTheme(variables), |
|
||||
}, |
|
||||
|
|
||||
'NativeBase.Card': { |
|
||||
...cardTheme(variables), |
|
||||
}, |
|
||||
|
|
||||
'NativeBase.CardItem': { |
|
||||
...cardItemTheme(variables), |
|
||||
}, |
|
||||
|
|
||||
'NativeBase.Toast': { |
|
||||
...toastTheme(variables), |
|
||||
}, |
|
||||
|
|
||||
'NativeBase.H1': { |
|
||||
...h1Theme(variables), |
|
||||
}, |
|
||||
'NativeBase.H2': { |
|
||||
...h2Theme(variables), |
|
||||
}, |
|
||||
'NativeBase.H3': { |
|
||||
...h3Theme(variables), |
|
||||
}, |
|
||||
'NativeBase.Form': { |
|
||||
...formTheme(variables), |
|
||||
}, |
|
||||
|
|
||||
'NativeBase.Container': { |
|
||||
...containerTheme(variables), |
|
||||
}, |
|
||||
'NativeBase.Content': { |
|
||||
...contentTheme(variables), |
|
||||
}, |
|
||||
|
|
||||
'NativeBase.Footer': { |
|
||||
...footerTheme(variables), |
|
||||
}, |
|
||||
|
|
||||
'NativeBase.Tabs': { |
|
||||
flex: 1, |
|
||||
}, |
|
||||
|
|
||||
'NativeBase.FooterTab': { |
|
||||
...footerTabTheme(variables), |
|
||||
}, |
|
||||
|
|
||||
'NativeBase.ListItem': { |
|
||||
...listItemTheme(variables), |
|
||||
}, |
|
||||
|
|
||||
'NativeBase.ListItem1': { |
|
||||
...listItemTheme(variables), |
|
||||
}, |
|
||||
|
|
||||
'NativeBase.Icon': { |
|
||||
...iconTheme(variables), |
|
||||
}, |
|
||||
'NativeBase.IconNB': { |
|
||||
...iconTheme(variables), |
|
||||
}, |
|
||||
'NativeBase.Text': { |
|
||||
...textTheme(variables), |
|
||||
}, |
|
||||
'NativeBase.Spinner': { |
|
||||
...spinnerTheme(variables), |
|
||||
}, |
|
||||
|
|
||||
'NativeBase.Fab': { |
|
||||
...fabTheme(variables), |
|
||||
}, |
|
||||
|
|
||||
'NativeBase.Item': { |
|
||||
...itemTheme(variables), |
|
||||
}, |
|
||||
|
|
||||
'NativeBase.Label': { |
|
||||
...labelTheme(variables), |
|
||||
}, |
|
||||
|
|
||||
'NativeBase.Textarea': { |
|
||||
...textAreaTheme(variables), |
|
||||
}, |
|
||||
|
|
||||
'NativeBase.PickerNB': { |
|
||||
...pickerTheme(variables), |
|
||||
'NativeBase.Button': { |
|
||||
'NativeBase.Text': {}, |
|
||||
}, |
|
||||
}, |
|
||||
|
|
||||
'NativeBase.Tab': { |
|
||||
...tabTheme(variables), |
|
||||
}, |
|
||||
|
|
||||
'NativeBase.Segment': { |
|
||||
...segmentTheme(variables), |
|
||||
}, |
|
||||
|
|
||||
'NativeBase.TabBar': { |
|
||||
...tabBarTheme(variables), |
|
||||
}, |
|
||||
'NativeBase.ViewNB': { |
|
||||
...viewTheme(variables), |
|
||||
}, |
|
||||
'NativeBase.TabHeading': { |
|
||||
...tabHeadingTheme(variables), |
|
||||
}, |
|
||||
'NativeBase.TabContainer': { |
|
||||
...tabContainerTheme(variables), |
|
||||
}, |
|
||||
'NativeBase.Switch': { |
|
||||
...switchTheme(variables), |
|
||||
}, |
|
||||
'NativeBase.Separator': { |
|
||||
...separatorTheme(variables), |
|
||||
}, |
|
||||
'NativeBase.SwipeRow': { |
|
||||
...swipeRowTheme(variables), |
|
||||
}, |
|
||||
'NativeBase.Thumbnail': { |
|
||||
...thumbnailTheme(variables), |
|
||||
}, |
|
||||
...getOverrides(variables), |
|
||||
}; |
|
||||
|
|
||||
const cssifyTheme = (grandparent, parent, parentKey) => { |
|
||||
_.forEach(parent, (style, styleName) => { |
|
||||
if (styleName.indexOf('.') === 0 && parentKey && parentKey.indexOf('.') === 0) { |
|
||||
if (grandparent) { |
|
||||
if (!grandparent[styleName]) { |
|
||||
grandparent[styleName] = {}; |
|
||||
} else { |
|
||||
grandparent[styleName][parentKey] = style; |
|
||||
} |
|
||||
} |
|
||||
} |
|
||||
if ( |
|
||||
style && |
|
||||
typeof style === 'object' && |
|
||||
styleName !== 'fontVariant' && |
|
||||
styleName !== 'transform' |
|
||||
) { |
|
||||
cssifyTheme(parent, style, styleName); |
|
||||
} |
|
||||
}); |
|
||||
}; |
|
||||
|
|
||||
cssifyTheme(null, theme, null); |
|
||||
|
|
||||
return theme; |
|
||||
}; |
|
||||
@ -1,20 +0,0 @@ |
|||||
// @flow
|
|
||||
import buttonTheme from '../components/Button'; |
|
||||
|
|
||||
export default variables => { |
|
||||
const buttonOverrides = { |
|
||||
...buttonTheme(variables), |
|
||||
'.abpButton': { |
|
||||
display: 'flex', |
|
||||
justifyContent: 'center', |
|
||||
borderRadius: 15, |
|
||||
width: '100%', |
|
||||
'NativeBase.Text': { |
|
||||
fontWeight: '600', |
|
||||
textTransform: 'uppercase', |
|
||||
}, |
|
||||
}, |
|
||||
}; |
|
||||
|
|
||||
return buttonOverrides; |
|
||||
}; |
|
||||
@ -1,14 +0,0 @@ |
|||||
// @flow
|
|
||||
import contentTheme from '../components/Content'; |
|
||||
|
|
||||
export default variables => { |
|
||||
const override = { |
|
||||
...contentTheme(variables), |
|
||||
backgroundColor: '#f8f8f8', |
|
||||
'.px20': { |
|
||||
paddingHorizontal: 20, |
|
||||
}, |
|
||||
}; |
|
||||
|
|
||||
return override; |
|
||||
}; |
|
||||
@ -1,35 +0,0 @@ |
|||||
// @flow
|
|
||||
import iconTheme from '../components/Icon'; |
|
||||
|
|
||||
export default variables => { |
|
||||
const iconOverrides = { |
|
||||
...iconTheme(variables), |
|
||||
'.primary': { |
|
||||
color: variables.brandPrimary, |
|
||||
}, |
|
||||
'.success': { |
|
||||
color: variables.brandSuccess, |
|
||||
}, |
|
||||
'.info': { |
|
||||
color: variables.brandInfo, |
|
||||
}, |
|
||||
'.danger': { |
|
||||
color: variables.brandDanger, |
|
||||
}, |
|
||||
'.warning': { |
|
||||
color: variables.brandWarning, |
|
||||
}, |
|
||||
'.dark': { |
|
||||
color: variables.brandDark, |
|
||||
}, |
|
||||
'.light': { |
|
||||
color: variables.brandLight, |
|
||||
}, |
|
||||
'.navElement': { |
|
||||
marginHorizontal: 15, |
|
||||
fontSize: 35, |
|
||||
}, |
|
||||
}; |
|
||||
|
|
||||
return iconOverrides; |
|
||||
}; |
|
||||
@ -1,21 +0,0 @@ |
|||||
import inputTheme from '../components/Input'; |
|
||||
|
|
||||
export default variables => { |
|
||||
const inputOverrides = { |
|
||||
...inputTheme(variables), |
|
||||
'.abpInput': { |
|
||||
paddingVertical: 0, |
|
||||
paddingHorizontal: 20, |
|
||||
borderWidth: 1, |
|
||||
borderColor: '#e6e6e6', |
|
||||
borderRadius: 15, |
|
||||
width: '100%', |
|
||||
height: 40, |
|
||||
backgroundColor: '#fff', |
|
||||
color: '#000', |
|
||||
lineHeight: 22, |
|
||||
}, |
|
||||
}; |
|
||||
|
|
||||
return inputOverrides; |
|
||||
}; |
|
||||
@ -1,19 +0,0 @@ |
|||||
// @flow
|
|
||||
import inputGroupTheme from '../components/InputGroup'; |
|
||||
|
|
||||
export default variables => { |
|
||||
const inputGroupOverrides = { |
|
||||
...inputGroupTheme(variables), |
|
||||
'.abpInputGroup': { |
|
||||
display: 'flex', |
|
||||
flexDirection: 'column', |
|
||||
justifyContent: 'center', |
|
||||
padding: 0, |
|
||||
marginVertical: 10, |
|
||||
borderBottomWidth: 0, |
|
||||
height: 60, |
|
||||
}, |
|
||||
}; |
|
||||
|
|
||||
return inputGroupOverrides; |
|
||||
}; |
|
||||
@ -1,24 +0,0 @@ |
|||||
import itemTheme from '../components/Item'; |
|
||||
|
|
||||
export default variables => { |
|
||||
const itemOverrides = { |
|
||||
...itemTheme(variables), |
|
||||
'.abpInput': { |
|
||||
paddingVertical: 0, |
|
||||
paddingHorizontal: 5, |
|
||||
borderTopWidth: 1, |
|
||||
borderRightWidth: 1, |
|
||||
borderBottomWidth: 1, |
|
||||
borderLeftWidth: 1, |
|
||||
borderWidth: 1, |
|
||||
borderColor: '#e6e6e6', |
|
||||
borderRadius: 15, |
|
||||
width: '100%', |
|
||||
height: 40, |
|
||||
backgroundColor: '#fff', |
|
||||
color: '#000', |
|
||||
}, |
|
||||
}; |
|
||||
|
|
||||
return itemOverrides; |
|
||||
}; |
|
||||
@ -1,18 +0,0 @@ |
|||||
// @flow
|
|
||||
import labelTheme from '../components/Label'; |
|
||||
|
|
||||
export default variables => { |
|
||||
const labelOverrides = { |
|
||||
...labelTheme(variables), |
|
||||
'.abpLabel': { |
|
||||
alignSelf: 'flex-start', |
|
||||
marginBottom: 5, |
|
||||
color: '#8F8F8F', |
|
||||
fontWeight: '600', |
|
||||
fontSize: 13, |
|
||||
textTransform: 'uppercase', |
|
||||
}, |
|
||||
}; |
|
||||
|
|
||||
return labelOverrides; |
|
||||
}; |
|
||||
@ -1,31 +0,0 @@ |
|||||
// @flow
|
|
||||
import textTheme from '../components/Text'; |
|
||||
|
|
||||
export default variables => { |
|
||||
const textOverrides = { |
|
||||
...textTheme(variables), |
|
||||
'.primary': { |
|
||||
color: variables.brandPrimary, |
|
||||
}, |
|
||||
'.success': { |
|
||||
color: variables.brandSuccess, |
|
||||
}, |
|
||||
'.info': { |
|
||||
color: variables.brandInfo, |
|
||||
}, |
|
||||
'.danger': { |
|
||||
color: variables.brandDanger, |
|
||||
}, |
|
||||
'.warning': { |
|
||||
color: variables.brandWarning, |
|
||||
}, |
|
||||
'.dark': { |
|
||||
color: variables.brandDark, |
|
||||
}, |
|
||||
'.light': { |
|
||||
color: variables.brandLight, |
|
||||
}, |
|
||||
}; |
|
||||
|
|
||||
return textOverrides; |
|
||||
}; |
|
||||
@ -1,39 +0,0 @@ |
|||||
import textTheme from './Text'; |
|
||||
import iconTheme from './Icon'; |
|
||||
import inputTheme from './Input'; |
|
||||
import inputGroupTheme from './InputGroup'; |
|
||||
import labelTheme from './Label'; |
|
||||
import buttonTheme from './Button'; |
|
||||
import contentTheme from './Content'; |
|
||||
import itemTheme from './Item'; |
|
||||
|
|
||||
export default variables => { |
|
||||
const theme = { |
|
||||
'NativeBase.Text': { |
|
||||
...textTheme(variables), |
|
||||
}, |
|
||||
'NativeBase.Icon': { |
|
||||
...iconTheme(variables), |
|
||||
}, |
|
||||
'NativeBase.Input': { |
|
||||
...inputTheme(variables), |
|
||||
}, |
|
||||
'NativeBase.InputGroup': { |
|
||||
...inputGroupTheme(variables), |
|
||||
}, |
|
||||
'NativeBase.Label': { |
|
||||
...labelTheme(variables), |
|
||||
}, |
|
||||
'NativeBase.Button': { |
|
||||
...buttonTheme(variables), |
|
||||
}, |
|
||||
'NativeBase.Content': { |
|
||||
...contentTheme(variables), |
|
||||
}, |
|
||||
'NativeBase.Item': { |
|
||||
...itemTheme(variables), |
|
||||
}, |
|
||||
}; |
|
||||
|
|
||||
return theme; |
|
||||
}; |
|
||||
@ -1,304 +0,0 @@ |
|||||
import color from 'color'; |
|
||||
import { Platform, Dimensions, PixelRatio } from 'react-native'; |
|
||||
|
|
||||
export const PLATFORM = { |
|
||||
ANDROID: 'android', |
|
||||
IOS: 'ios', |
|
||||
MATERIAL: 'material', |
|
||||
WEB: 'web', |
|
||||
}; |
|
||||
|
|
||||
const deviceHeight = Dimensions.get('window').height; |
|
||||
const deviceWidth = Dimensions.get('window').width; |
|
||||
const platform = Platform.OS; |
|
||||
const platformStyle = undefined; |
|
||||
const isIphoneX = |
|
||||
platform === PLATFORM.IOS && |
|
||||
(deviceHeight === 812 || deviceWidth === 812 || deviceHeight === 896 || deviceWidth === 896); |
|
||||
|
|
||||
export default { |
|
||||
platformStyle, |
|
||||
platform, |
|
||||
|
|
||||
// Accordion
|
|
||||
headerStyle: '#edebed', |
|
||||
iconStyle: '#000', |
|
||||
contentStyle: '#f5f4f5', |
|
||||
expandedIconStyle: '#000', |
|
||||
accordionBorderColor: '#d3d3d3', |
|
||||
|
|
||||
// ActionSheet
|
|
||||
elevation: 4, |
|
||||
containerTouchableBackgroundColor: 'rgba(0,0,0,0.4)', |
|
||||
innerTouchableBackgroundColor: '#fff', |
|
||||
listItemHeight: 50, |
|
||||
listItemBorderColor: 'transparent', |
|
||||
marginHorizontal: -15, |
|
||||
marginLeft: 14, |
|
||||
marginTop: 15, |
|
||||
minHeight: 56, |
|
||||
padding: 15, |
|
||||
touchableTextColor: '#757575', |
|
||||
|
|
||||
// Android
|
|
||||
androidRipple: true, |
|
||||
androidRippleColor: 'rgba(256, 256, 256, 0.3)', |
|
||||
androidRippleColorDark: 'rgba(0, 0, 0, 0.15)', |
|
||||
buttonUppercaseAndroidText: true, |
|
||||
|
|
||||
// Badge
|
|
||||
badgeBg: '#ED1727', |
|
||||
badgeColor: '#fff', |
|
||||
badgePadding: platform === PLATFORM.IOS ? 3 : 0, |
|
||||
|
|
||||
// Button
|
|
||||
buttonFontFamily: platform === PLATFORM.IOS ? 'System' : 'Roboto_medium', |
|
||||
buttonDisabledBg: '#b5b5b5', |
|
||||
buttonPadding: 6, |
|
||||
get buttonPrimaryBg() { |
|
||||
return this.brandPrimary; |
|
||||
}, |
|
||||
get buttonPrimaryColor() { |
|
||||
return this.inverseTextColor; |
|
||||
}, |
|
||||
get buttonInfoBg() { |
|
||||
return this.brandInfo; |
|
||||
}, |
|
||||
get buttonInfoColor() { |
|
||||
return this.inverseTextColor; |
|
||||
}, |
|
||||
get buttonSuccessBg() { |
|
||||
return this.brandSuccess; |
|
||||
}, |
|
||||
get buttonSuccessColor() { |
|
||||
return this.inverseTextColor; |
|
||||
}, |
|
||||
get buttonDangerBg() { |
|
||||
return this.brandDanger; |
|
||||
}, |
|
||||
get buttonDangerColor() { |
|
||||
return this.inverseTextColor; |
|
||||
}, |
|
||||
get buttonWarningBg() { |
|
||||
return this.brandWarning; |
|
||||
}, |
|
||||
get buttonWarningColor() { |
|
||||
return this.inverseTextColor; |
|
||||
}, |
|
||||
get buttonTextSize() { |
|
||||
return platform === PLATFORM.IOS ? this.fontSizeBase * 1.1 : this.fontSizeBase - 1; |
|
||||
}, |
|
||||
get buttonTextSizeLarge() { |
|
||||
return this.fontSizeBase * 1.5; |
|
||||
}, |
|
||||
get buttonTextSizeSmall() { |
|
||||
return this.fontSizeBase * 0.8; |
|
||||
}, |
|
||||
get borderRadiusLarge() { |
|
||||
return this.fontSizeBase * 3.8; |
|
||||
}, |
|
||||
get iconSizeLarge() { |
|
||||
return this.iconFontSize * 1.5; |
|
||||
}, |
|
||||
get iconSizeSmall() { |
|
||||
return this.iconFontSize * 0.6; |
|
||||
}, |
|
||||
|
|
||||
// Card
|
|
||||
cardDefaultBg: '#fff', |
|
||||
cardBorderColor: '#ccc', |
|
||||
cardBorderRadius: 2, |
|
||||
cardItemPadding: platform === PLATFORM.IOS ? 10 : 12, |
|
||||
|
|
||||
// CheckBox
|
|
||||
CheckboxRadius: platform === PLATFORM.IOS ? 13 : 0, |
|
||||
CheckboxBorderWidth: platform === PLATFORM.IOS ? 1 : 2, |
|
||||
CheckboxPaddingLeft: platform === PLATFORM.IOS ? 4 : 2, |
|
||||
CheckboxPaddingBottom: platform === PLATFORM.IOS ? 0 : 5, |
|
||||
CheckboxIconSize: platform === PLATFORM.IOS ? 21 : 16, |
|
||||
CheckboxIconMarginTop: platform === PLATFORM.IOS ? undefined : 1, |
|
||||
CheckboxFontSize: platform === PLATFORM.IOS ? 23 / 0.9 : 17, |
|
||||
checkboxBgColor: '#039BE5', |
|
||||
checkboxSize: 20, |
|
||||
checkboxTickColor: '#fff', |
|
||||
|
|
||||
// Color
|
|
||||
brandPrimary: platform === PLATFORM.IOS ? '#007aff' : '#3F51B5', |
|
||||
brandInfo: '#62B1F6', |
|
||||
brandSuccess: '#5cb85c', |
|
||||
brandDanger: '#d9534f', |
|
||||
brandWarning: '#f0ad4e', |
|
||||
brandDark: '#000', |
|
||||
brandLight: '#f4f4f4', |
|
||||
|
|
||||
// Container
|
|
||||
containerBgColor: '#fff', |
|
||||
|
|
||||
// Date Picker
|
|
||||
datePickerTextColor: '#000', |
|
||||
datePickerBg: 'transparent', |
|
||||
|
|
||||
// FAB
|
|
||||
fabWidth: 56, |
|
||||
|
|
||||
// Font
|
|
||||
DefaultFontSize: 16, |
|
||||
fontFamily: platform === PLATFORM.IOS ? 'System' : 'Roboto', |
|
||||
fontSizeBase: 15, |
|
||||
get fontSizeH1() { |
|
||||
return this.fontSizeBase * 1.8; |
|
||||
}, |
|
||||
get fontSizeH2() { |
|
||||
return this.fontSizeBase * 1.6; |
|
||||
}, |
|
||||
get fontSizeH3() { |
|
||||
return this.fontSizeBase * 1.4; |
|
||||
}, |
|
||||
|
|
||||
// Footer
|
|
||||
footerHeight: 55, |
|
||||
footerDefaultBg: platform === PLATFORM.IOS ? '#F8F8F8' : '#3F51B5', |
|
||||
footerPaddingBottom: 0, |
|
||||
|
|
||||
// FooterTab
|
|
||||
tabBarTextColor: platform === PLATFORM.IOS ? '#737373' : '#bfc6ea', |
|
||||
tabBarTextSize: platform === PLATFORM.IOS ? 14 : 11, |
|
||||
activeTab: platform === PLATFORM.IOS ? '#007aff' : '#fff', |
|
||||
sTabBarActiveTextColor: '#007aff', |
|
||||
tabBarActiveTextColor: platform === PLATFORM.IOS ? '#2874F0' : '#fff', |
|
||||
tabActiveBgColor: platform === PLATFORM.IOS ? '#cde1f9' : '#3F51B5', |
|
||||
|
|
||||
// Header
|
|
||||
toolbarBtnColor: platform === PLATFORM.IOS ? '#007aff' : '#fff', |
|
||||
toolbarDefaultBg: platform === PLATFORM.IOS ? '#F8F8F8' : '#3F51B5', |
|
||||
toolbarHeight: platform === PLATFORM.IOS ? 64 : 56, |
|
||||
toolbarSearchIconSize: platform === PLATFORM.IOS ? 20 : 23, |
|
||||
toolbarInputColor: platform === PLATFORM.IOS ? '#CECDD2' : '#fff', |
|
||||
searchBarHeight: platform === PLATFORM.IOS ? 30 : 40, |
|
||||
searchBarInputHeight: platform === PLATFORM.IOS ? 30 : 50, |
|
||||
toolbarBtnTextColor: platform === PLATFORM.IOS ? '#007aff' : '#fff', |
|
||||
iosStatusbar: 'dark-content', |
|
||||
toolbarDefaultBorder: platform === PLATFORM.IOS ? '#a7a6ab' : '#3F51B5', |
|
||||
get statusBarColor() { |
|
||||
return color(this.toolbarDefaultBg) |
|
||||
.darken(0.2) |
|
||||
.hex(); |
|
||||
}, |
|
||||
get darkenHeader() { |
|
||||
return color(this.tabBgColor) |
|
||||
.darken(0.03) |
|
||||
.hex(); |
|
||||
}, |
|
||||
|
|
||||
// Icon
|
|
||||
iconFamily: 'Ionicons', |
|
||||
iconFontSize: platform === PLATFORM.IOS ? 30 : 28, |
|
||||
iconHeaderSize: platform === PLATFORM.IOS ? 33 : 24, |
|
||||
|
|
||||
// InputGroup
|
|
||||
inputFontSize: 17, |
|
||||
inputBorderColor: '#D9D5DC', |
|
||||
inputSuccessBorderColor: '#2b8339', |
|
||||
inputErrorBorderColor: '#ed2f2f', |
|
||||
inputHeightBase: 50, |
|
||||
get inputColor() { |
|
||||
return this.textColor; |
|
||||
}, |
|
||||
get inputColorPlaceholder() { |
|
||||
return '#575757'; |
|
||||
}, |
|
||||
|
|
||||
// Line Height
|
|
||||
buttonLineHeight: 19, |
|
||||
lineHeightH1: 32, |
|
||||
lineHeightH2: 27, |
|
||||
lineHeightH3: 22, |
|
||||
lineHeight: platform === PLATFORM.IOS ? 20 : 24, |
|
||||
|
|
||||
// List
|
|
||||
listBg: 'transparent', |
|
||||
listBorderColor: '#c9c9c9', |
|
||||
listDividerBg: '#f4f4f4', |
|
||||
listBtnUnderlayColor: '#DDD', |
|
||||
listItemPadding: platform === PLATFORM.IOS ? 10 : 12, |
|
||||
listNoteColor: '#808080', |
|
||||
listNoteSize: 13, |
|
||||
listItemSelected: platform === PLATFORM.IOS ? '#007aff' : '#3F51B5', |
|
||||
|
|
||||
// Progress Bar
|
|
||||
defaultProgressColor: '#E4202D', |
|
||||
inverseProgressColor: '#1A191B', |
|
||||
|
|
||||
// Radio Button
|
|
||||
radioBtnSize: platform === PLATFORM.IOS ? 25 : 23, |
|
||||
radioSelectedColorAndroid: '#3F51B5', |
|
||||
radioBtnLineHeight: platform === PLATFORM.IOS ? 29 : 24, |
|
||||
get radioColor() { |
|
||||
return this.brandPrimary; |
|
||||
}, |
|
||||
|
|
||||
// Segment
|
|
||||
segmentBackgroundColor: platform === PLATFORM.IOS ? '#F8F8F8' : '#3F51B5', |
|
||||
segmentActiveBackgroundColor: platform === PLATFORM.IOS ? '#007aff' : '#fff', |
|
||||
segmentTextColor: platform === PLATFORM.IOS ? '#007aff' : '#fff', |
|
||||
segmentActiveTextColor: platform === PLATFORM.IOS ? '#fff' : '#3F51B5', |
|
||||
segmentBorderColor: platform === PLATFORM.IOS ? '#007aff' : '#fff', |
|
||||
segmentBorderColorMain: platform === PLATFORM.IOS ? '#a7a6ab' : '#3F51B5', |
|
||||
|
|
||||
// Spinner
|
|
||||
defaultSpinnerColor: '#45D56E', |
|
||||
inverseSpinnerColor: '#1A191B', |
|
||||
|
|
||||
// Tab
|
|
||||
tabDefaultBg: platform === PLATFORM.IOS ? '#F8F8F8' : '#3F51B5', |
|
||||
topTabBarTextColor: platform === PLATFORM.IOS ? '#6b6b6b' : '#b3c7f9', |
|
||||
topTabBarActiveTextColor: platform === PLATFORM.IOS ? '#007aff' : '#fff', |
|
||||
topTabBarBorderColor: platform === PLATFORM.IOS ? '#a7a6ab' : '#fff', |
|
||||
topTabBarActiveBorderColor: platform === PLATFORM.IOS ? '#007aff' : '#fff', |
|
||||
|
|
||||
// Tabs
|
|
||||
tabBgColor: '#F8F8F8', |
|
||||
tabFontSize: 15, |
|
||||
|
|
||||
// Text
|
|
||||
textColor: '#000', |
|
||||
inverseTextColor: '#fff', |
|
||||
noteFontSize: 14, |
|
||||
get defaultTextColor() { |
|
||||
return this.textColor; |
|
||||
}, |
|
||||
|
|
||||
// Title
|
|
||||
titleFontfamily: platform === PLATFORM.IOS ? 'System' : 'Roboto_medium', |
|
||||
titleFontSize: platform === PLATFORM.IOS ? 17 : 19, |
|
||||
subTitleFontSize: platform === PLATFORM.IOS ? 11 : 14, |
|
||||
subtitleColor: platform === PLATFORM.IOS ? '#000' : '#fff', |
|
||||
titleFontColor: platform === PLATFORM.IOS ? '#000' : '#fff', |
|
||||
|
|
||||
// Other
|
|
||||
borderRadiusBase: platform === PLATFORM.IOS ? 5 : 2, |
|
||||
borderWidth: 1 / PixelRatio.getPixelSizeForLayoutSize(1), |
|
||||
contentPadding: 10, |
|
||||
dropdownLinkColor: '#414142', |
|
||||
inputLineHeight: 24, |
|
||||
deviceWidth, |
|
||||
deviceHeight, |
|
||||
isIphoneX, |
|
||||
inputGroupRoundedBorderRadius: 30, |
|
||||
|
|
||||
// iPhoneX SafeArea
|
|
||||
Inset: { |
|
||||
portrait: { |
|
||||
topInset: 24, |
|
||||
leftInset: 0, |
|
||||
rightInset: 0, |
|
||||
bottomInset: 34, |
|
||||
}, |
|
||||
landscape: { |
|
||||
topInset: 0, |
|
||||
leftInset: 44, |
|
||||
rightInset: 44, |
|
||||
bottomInset: 21, |
|
||||
}, |
|
||||
}, |
|
||||
}; |
|
||||
@ -1,299 +0,0 @@ |
|||||
import color from 'color'; |
|
||||
import { Platform, Dimensions, PixelRatio } from 'react-native'; |
|
||||
|
|
||||
import { PLATFORM } from './CommonColor'; |
|
||||
|
|
||||
const deviceHeight = Dimensions.get('window').height; |
|
||||
const deviceWidth = Dimensions.get('window').width; |
|
||||
const platform = Platform.OS; |
|
||||
const platformStyle = PLATFORM.MATERIAL; |
|
||||
const isIphoneX = |
|
||||
platform === PLATFORM.IOS && |
|
||||
(deviceHeight === 812 || deviceWidth === 812 || deviceHeight === 896 || deviceWidth === 896); |
|
||||
|
|
||||
export default { |
|
||||
platformStyle, |
|
||||
platform, |
|
||||
|
|
||||
// Accordion
|
|
||||
headerStyle: '#edebed', |
|
||||
iconStyle: '#000', |
|
||||
contentStyle: '#f5f4f5', |
|
||||
expandedIconStyle: '#000', |
|
||||
accordionBorderColor: '#d3d3d3', |
|
||||
|
|
||||
// ActionSheet
|
|
||||
elevation: 4, |
|
||||
containerTouchableBackgroundColor: 'rgba(0,0,0,0.4)', |
|
||||
innerTouchableBackgroundColor: '#fff', |
|
||||
listItemHeight: 50, |
|
||||
listItemBorderColor: 'transparent', |
|
||||
marginHorizontal: -15, |
|
||||
marginLeft: 14, |
|
||||
marginTop: 15, |
|
||||
minHeight: 56, |
|
||||
padding: 15, |
|
||||
touchableTextColor: '#757575', |
|
||||
|
|
||||
// Android
|
|
||||
androidRipple: true, |
|
||||
androidRippleColor: 'rgba(256, 256, 256, 0.3)', |
|
||||
androidRippleColorDark: 'rgba(0, 0, 0, 0.15)', |
|
||||
buttonUppercaseAndroidText: true, |
|
||||
|
|
||||
// Badge
|
|
||||
badgeBg: '#ED1727', |
|
||||
badgeColor: '#fff', |
|
||||
badgePadding: 0, |
|
||||
|
|
||||
// Button
|
|
||||
buttonFontFamily: 'Roboto', |
|
||||
buttonDisabledBg: '#b5b5b5', |
|
||||
buttonPadding: 6, |
|
||||
get buttonPrimaryBg() { |
|
||||
return this.brandPrimary; |
|
||||
}, |
|
||||
get buttonPrimaryColor() { |
|
||||
return this.inverseTextColor; |
|
||||
}, |
|
||||
get buttonInfoBg() { |
|
||||
return this.brandInfo; |
|
||||
}, |
|
||||
get buttonInfoColor() { |
|
||||
return this.inverseTextColor; |
|
||||
}, |
|
||||
get buttonSuccessBg() { |
|
||||
return this.brandSuccess; |
|
||||
}, |
|
||||
get buttonSuccessColor() { |
|
||||
return this.inverseTextColor; |
|
||||
}, |
|
||||
get buttonDangerBg() { |
|
||||
return this.brandDanger; |
|
||||
}, |
|
||||
get buttonDangerColor() { |
|
||||
return this.inverseTextColor; |
|
||||
}, |
|
||||
get buttonWarningBg() { |
|
||||
return this.brandWarning; |
|
||||
}, |
|
||||
get buttonWarningColor() { |
|
||||
return this.inverseTextColor; |
|
||||
}, |
|
||||
get buttonTextSize() { |
|
||||
return this.fontSizeBase - 1; |
|
||||
}, |
|
||||
get buttonTextSizeLarge() { |
|
||||
return this.fontSizeBase * 1.5; |
|
||||
}, |
|
||||
get buttonTextSizeSmall() { |
|
||||
return this.fontSizeBase * 0.8; |
|
||||
}, |
|
||||
get borderRadiusLarge() { |
|
||||
return this.fontSizeBase * 3.8; |
|
||||
}, |
|
||||
get iconSizeLarge() { |
|
||||
return this.iconFontSize * 1.5; |
|
||||
}, |
|
||||
get iconSizeSmall() { |
|
||||
return this.iconFontSize * 0.6; |
|
||||
}, |
|
||||
|
|
||||
// Card
|
|
||||
cardDefaultBg: '#fff', |
|
||||
cardBorderColor: '#ccc', |
|
||||
cardBorderRadius: 2, |
|
||||
cardItemPadding: platform === PLATFORM.IOS ? 10 : 12, |
|
||||
|
|
||||
// CheckBox
|
|
||||
CheckboxRadius: 0, |
|
||||
CheckboxBorderWidth: 2, |
|
||||
CheckboxPaddingLeft: 2, |
|
||||
CheckboxPaddingBottom: 5, |
|
||||
CheckboxIconSize: 16, |
|
||||
CheckboxIconMarginTop: 1, |
|
||||
CheckboxFontSize: 17, |
|
||||
checkboxBgColor: '#039BE5', |
|
||||
checkboxSize: 20, |
|
||||
checkboxTickColor: '#fff', |
|
||||
|
|
||||
// Color
|
|
||||
brandPrimary: '#3F51B5', |
|
||||
brandInfo: '#62B1F6', |
|
||||
brandSuccess: '#5cb85c', |
|
||||
brandDanger: '#d9534f', |
|
||||
brandWarning: '#f0ad4e', |
|
||||
brandDark: '#000', |
|
||||
brandLight: '#f4f4f4', |
|
||||
|
|
||||
// Container
|
|
||||
containerBgColor: '#fff', |
|
||||
|
|
||||
// Date Picker
|
|
||||
datePickerTextColor: '#000', |
|
||||
datePickerBg: 'transparent', |
|
||||
|
|
||||
// FAB
|
|
||||
fabWidth: 56, |
|
||||
|
|
||||
// Font
|
|
||||
DefaultFontSize: 16, |
|
||||
fontFamily: 'Roboto', |
|
||||
fontSizeBase: 15, |
|
||||
get fontSizeH1() { |
|
||||
return this.fontSizeBase * 1.8; |
|
||||
}, |
|
||||
get fontSizeH2() { |
|
||||
return this.fontSizeBase * 1.6; |
|
||||
}, |
|
||||
get fontSizeH3() { |
|
||||
return this.fontSizeBase * 1.4; |
|
||||
}, |
|
||||
|
|
||||
// Footer
|
|
||||
footerHeight: 55, |
|
||||
footerDefaultBg: '#3F51B5', |
|
||||
footerPaddingBottom: 0, |
|
||||
|
|
||||
// FooterTab
|
|
||||
tabBarTextColor: '#bfc6ea', |
|
||||
tabBarTextSize: 11, |
|
||||
activeTab: '#fff', |
|
||||
sTabBarActiveTextColor: '#007aff', |
|
||||
tabBarActiveTextColor: '#fff', |
|
||||
tabActiveBgColor: '#3F51B5', |
|
||||
|
|
||||
// Header
|
|
||||
toolbarBtnColor: '#fff', |
|
||||
toolbarDefaultBg: '#3F51B5', |
|
||||
toolbarHeight: 56, |
|
||||
toolbarSearchIconSize: 23, |
|
||||
toolbarInputColor: '#fff', |
|
||||
searchBarHeight: platform === PLATFORM.IOS ? 30 : 40, |
|
||||
searchBarInputHeight: platform === PLATFORM.IOS ? 40 : 50, |
|
||||
toolbarBtnTextColor: '#fff', |
|
||||
toolbarDefaultBorder: '#3F51B5', |
|
||||
iosStatusbar: 'light-content', |
|
||||
get statusBarColor() { |
|
||||
return color(this.toolbarDefaultBg) |
|
||||
.darken(0.2) |
|
||||
.hex(); |
|
||||
}, |
|
||||
get darkenHeader() { |
|
||||
return color(this.tabBgColor) |
|
||||
.darken(0.03) |
|
||||
.hex(); |
|
||||
}, |
|
||||
|
|
||||
// Icon
|
|
||||
iconFamily: 'Ionicons', |
|
||||
iconFontSize: 28, |
|
||||
iconHeaderSize: 24, |
|
||||
|
|
||||
// InputGroup
|
|
||||
inputFontSize: 17, |
|
||||
inputBorderColor: '#D9D5DC', |
|
||||
inputSuccessBorderColor: '#2b8339', |
|
||||
inputErrorBorderColor: '#ed2f2f', |
|
||||
inputHeightBase: 50, |
|
||||
get inputColor() { |
|
||||
return this.textColor; |
|
||||
}, |
|
||||
get inputColorPlaceholder() { |
|
||||
return '#575757'; |
|
||||
}, |
|
||||
|
|
||||
// Line Height
|
|
||||
buttonLineHeight: 19, |
|
||||
lineHeightH1: 32, |
|
||||
lineHeightH2: 27, |
|
||||
lineHeightH3: 22, |
|
||||
lineHeight: 24, |
|
||||
|
|
||||
// List
|
|
||||
listBg: 'transparent', |
|
||||
listBorderColor: '#c9c9c9', |
|
||||
listDividerBg: '#f4f4f4', |
|
||||
listBtnUnderlayColor: '#DDD', |
|
||||
listItemPadding: 12, |
|
||||
listNoteColor: '#808080', |
|
||||
listNoteSize: 13, |
|
||||
listItemSelected: '#3F51B5', |
|
||||
|
|
||||
// Progress Bar
|
|
||||
defaultProgressColor: '#E4202D', |
|
||||
inverseProgressColor: '#1A191B', |
|
||||
|
|
||||
// Radio Button
|
|
||||
radioBtnSize: 23, |
|
||||
radioSelectedColorAndroid: '#3F51B5', |
|
||||
radioBtnLineHeight: 24, |
|
||||
get radioColor() { |
|
||||
return this.brandPrimary; |
|
||||
}, |
|
||||
|
|
||||
// Segment
|
|
||||
segmentBackgroundColor: '#3F51B5', |
|
||||
segmentActiveBackgroundColor: '#fff', |
|
||||
segmentTextColor: '#fff', |
|
||||
segmentActiveTextColor: '#3F51B5', |
|
||||
segmentBorderColor: '#fff', |
|
||||
segmentBorderColorMain: '#3F51B5', |
|
||||
|
|
||||
// Spinner
|
|
||||
defaultSpinnerColor: '#45D56E', |
|
||||
inverseSpinnerColor: '#1A191B', |
|
||||
|
|
||||
// Tab
|
|
||||
tabDefaultBg: '#3F51B5', |
|
||||
topTabBarTextColor: '#b3c7f9', |
|
||||
topTabBarActiveTextColor: '#fff', |
|
||||
topTabBarBorderColor: '#fff', |
|
||||
topTabBarActiveBorderColor: '#fff', |
|
||||
|
|
||||
// Tabs
|
|
||||
tabBgColor: '#F8F8F8', |
|
||||
tabFontSize: 15, |
|
||||
|
|
||||
// Text
|
|
||||
textColor: '#000', |
|
||||
inverseTextColor: '#fff', |
|
||||
noteFontSize: 14, |
|
||||
get defaultTextColor() { |
|
||||
return this.textColor; |
|
||||
}, |
|
||||
|
|
||||
// Title
|
|
||||
titleFontfamily: 'Roboto', |
|
||||
titleFontSize: 19, |
|
||||
subTitleFontSize: 14, |
|
||||
subtitleColor: '#FFF', |
|
||||
titleFontColor: '#FFF', |
|
||||
|
|
||||
// Other
|
|
||||
borderRadiusBase: 2, |
|
||||
borderWidth: 1 / PixelRatio.getPixelSizeForLayoutSize(1), |
|
||||
contentPadding: 10, |
|
||||
dropdownLinkColor: '#414142', |
|
||||
inputLineHeight: 24, |
|
||||
deviceWidth, |
|
||||
deviceHeight, |
|
||||
isIphoneX, |
|
||||
inputGroupRoundedBorderRadius: 30, |
|
||||
|
|
||||
// iPhoneX SafeArea
|
|
||||
Inset: { |
|
||||
portrait: { |
|
||||
topInset: 24, |
|
||||
leftInset: 0, |
|
||||
rightInset: 0, |
|
||||
bottomInset: 34, |
|
||||
}, |
|
||||
landscape: { |
|
||||
topInset: 0, |
|
||||
leftInset: 44, |
|
||||
rightInset: 44, |
|
||||
bottomInset: 21, |
|
||||
}, |
|
||||
}, |
|
||||
}; |
|
||||
@ -1,333 +0,0 @@ |
|||||
// @flow
|
|
||||
|
|
||||
import color from 'color'; |
|
||||
import { Platform, Dimensions, PixelRatio } from 'react-native'; |
|
||||
|
|
||||
import { PLATFORM } from './CommonColor'; |
|
||||
|
|
||||
const deviceHeight = Dimensions.get('window').height; |
|
||||
const deviceWidth = Dimensions.get('window').width; |
|
||||
const platform = Platform.OS; |
|
||||
const platformStyle = undefined; |
|
||||
const isIphoneX = |
|
||||
platform === PLATFORM.IOS && |
|
||||
(deviceHeight === 812 || deviceWidth === 812 || deviceHeight === 896 || deviceWidth === 896); |
|
||||
|
|
||||
export default { |
|
||||
platformStyle, |
|
||||
platform, |
|
||||
|
|
||||
// Accordion
|
|
||||
accordionBorderColor: '#d3d3d3', |
|
||||
accordionContentPadding: 10, |
|
||||
accordionIconFontSize: 18, |
|
||||
contentStyle: '#f5f4f5', |
|
||||
expandedIconStyle: '#000', |
|
||||
headerStyle: '#edebed', |
|
||||
iconStyle: '#000', |
|
||||
|
|
||||
// ActionSheet
|
|
||||
elevation: 4, |
|
||||
containerTouchableBackgroundColor: 'rgba(0,0,0,0.4)', |
|
||||
innerTouchableBackgroundColor: '#fff', |
|
||||
listItemHeight: 50, |
|
||||
listItemBorderColor: 'transparent', |
|
||||
marginHorizontal: -15, |
|
||||
marginLeft: 14, |
|
||||
marginTop: 15, |
|
||||
minHeight: 56, |
|
||||
padding: 15, |
|
||||
touchableTextColor: '#757575', |
|
||||
|
|
||||
// Android
|
|
||||
androidRipple: true, |
|
||||
androidRippleColor: 'rgba(256, 256, 256, 0.3)', |
|
||||
androidRippleColorDark: 'rgba(0, 0, 0, 0.15)', |
|
||||
buttonUppercaseAndroidText: true, |
|
||||
|
|
||||
// Badge
|
|
||||
badgeBg: '#ED1727', |
|
||||
badgeColor: '#fff', |
|
||||
badgePadding: platform === PLATFORM.IOS ? 3 : 0, |
|
||||
|
|
||||
// Button
|
|
||||
buttonFontFamily: platform === PLATFORM.IOS ? 'System' : 'Roboto_medium', |
|
||||
buttonDisabledBg: '#b5b5b5', |
|
||||
buttonPadding: 6, |
|
||||
buttonDefaultActiveOpacity: 0.5, |
|
||||
buttonDefaultFlex: 1, |
|
||||
buttonDefaultBorderRadius: 2, |
|
||||
buttonDefaultBorderWidth: 1, |
|
||||
get buttonPrimaryBg() { |
|
||||
return this.brandPrimary; |
|
||||
}, |
|
||||
get buttonPrimaryColor() { |
|
||||
return this.inverseTextColor; |
|
||||
}, |
|
||||
get buttonInfoBg() { |
|
||||
return this.brandInfo; |
|
||||
}, |
|
||||
get buttonInfoColor() { |
|
||||
return this.inverseTextColor; |
|
||||
}, |
|
||||
get buttonSuccessBg() { |
|
||||
return this.brandSuccess; |
|
||||
}, |
|
||||
get buttonSuccessColor() { |
|
||||
return this.inverseTextColor; |
|
||||
}, |
|
||||
get buttonDangerBg() { |
|
||||
return this.brandDanger; |
|
||||
}, |
|
||||
get buttonDangerColor() { |
|
||||
return this.inverseTextColor; |
|
||||
}, |
|
||||
get buttonWarningBg() { |
|
||||
return this.brandWarning; |
|
||||
}, |
|
||||
get buttonWarningColor() { |
|
||||
return this.inverseTextColor; |
|
||||
}, |
|
||||
get buttonTextSize() { |
|
||||
return platform === PLATFORM.IOS ? this.fontSizeBase * 1.1 : this.fontSizeBase - 1; |
|
||||
}, |
|
||||
get buttonTextSizeLarge() { |
|
||||
return this.fontSizeBase * 1.5; |
|
||||
}, |
|
||||
get buttonTextSizeSmall() { |
|
||||
return this.fontSizeBase * 0.8; |
|
||||
}, |
|
||||
get borderRadiusLarge() { |
|
||||
return this.fontSizeBase * 3.8; |
|
||||
}, |
|
||||
get iconSizeLarge() { |
|
||||
return this.iconFontSize * 1.5; |
|
||||
}, |
|
||||
get iconSizeSmall() { |
|
||||
return this.iconFontSize * 0.6; |
|
||||
}, |
|
||||
|
|
||||
// Card
|
|
||||
cardDefaultBg: '#fff', |
|
||||
cardBorderColor: '#ccc', |
|
||||
cardBorderRadius: 2, |
|
||||
cardItemPadding: platform === PLATFORM.IOS ? 10 : 12, |
|
||||
|
|
||||
// CheckBox
|
|
||||
CheckboxRadius: platform === PLATFORM.IOS ? 13 : 0, |
|
||||
CheckboxBorderWidth: platform === PLATFORM.IOS ? 1 : 2, |
|
||||
CheckboxPaddingLeft: platform === PLATFORM.IOS ? 4 : 2, |
|
||||
CheckboxPaddingBottom: platform === PLATFORM.IOS ? 0 : 5, |
|
||||
CheckboxIconSize: platform === PLATFORM.IOS ? 21 : 16, |
|
||||
CheckboxIconMarginTop: platform === PLATFORM.IOS ? undefined : 1, |
|
||||
CheckboxFontSize: platform === PLATFORM.IOS ? 23 / 0.9 : 17, |
|
||||
get checkboxBgColor() { |
|
||||
return this.brandPrimary; |
|
||||
}, |
|
||||
checkboxSize: 20, |
|
||||
checkboxTickColor: '#fff', |
|
||||
checkboxDefaultColor: 'transparent', |
|
||||
checkboxTextShadowRadius: 0, |
|
||||
|
|
||||
// Color
|
|
||||
brandPrimary: '#38003c', |
|
||||
brandInfo: '#54B9F1', |
|
||||
brandSuccess: '#42B87F', |
|
||||
brandDanger: '#A83232', |
|
||||
brandWarning: '#FFC42E', |
|
||||
brandDark: '#2A2A2A', |
|
||||
brandLight: '#E8E8E8', |
|
||||
|
|
||||
// Container
|
|
||||
containerBgColor: '#fff', |
|
||||
|
|
||||
// Date Picker
|
|
||||
datePickerFlex: 1, |
|
||||
datePickerPadding: 10, |
|
||||
datePickerTextColor: '#000', |
|
||||
datePickerBg: 'transparent', |
|
||||
|
|
||||
// FAB
|
|
||||
fabBackgroundColor: 'blue', |
|
||||
fabBorderRadius: 28, |
|
||||
fabBottom: 0, |
|
||||
fabButtonBorderRadius: 20, |
|
||||
fabButtonHeight: 40, |
|
||||
fabButtonLeft: 7, |
|
||||
fabButtonMarginBottom: 10, |
|
||||
fabContainerBottom: 20, |
|
||||
fabDefaultPosition: 20, |
|
||||
fabElevation: 4, |
|
||||
fabIconColor: '#fff', |
|
||||
fabIconSize: 24, |
|
||||
fabShadowColor: '#000', |
|
||||
fabShadowOffsetHeight: 2, |
|
||||
fabShadowOffsetWidth: 0, |
|
||||
fabShadowOpacity: 0.4, |
|
||||
fabShadowRadius: 2, |
|
||||
fabWidth: 56, |
|
||||
|
|
||||
// Font
|
|
||||
DefaultFontSize: 16, |
|
||||
fontFamily: platform === PLATFORM.IOS ? 'System' : 'Roboto', |
|
||||
fontSizeBase: 15, |
|
||||
get fontSizeH1() { |
|
||||
return this.fontSizeBase * 1.8; |
|
||||
}, |
|
||||
get fontSizeH2() { |
|
||||
return this.fontSizeBase * 1.6; |
|
||||
}, |
|
||||
get fontSizeH3() { |
|
||||
return this.fontSizeBase * 1.4; |
|
||||
}, |
|
||||
|
|
||||
// Footer
|
|
||||
footerHeight: 55, |
|
||||
footerDefaultBg: platform === PLATFORM.IOS ? '#F8F8F8' : '#3F51B5', |
|
||||
footerPaddingBottom: 0, |
|
||||
|
|
||||
// FooterTab
|
|
||||
tabBarTextColor: platform === PLATFORM.IOS ? '#6b6b6b' : '#b3c7f9', |
|
||||
tabBarTextSize: platform === PLATFORM.IOS ? 14 : 11, |
|
||||
activeTab: platform === PLATFORM.IOS ? '#007aff' : '#fff', |
|
||||
sTabBarActiveTextColor: '#007aff', |
|
||||
tabBarActiveTextColor: platform === PLATFORM.IOS ? '#007aff' : '#fff', |
|
||||
tabActiveBgColor: platform === PLATFORM.IOS ? '#cde1f9' : '#3F51B5', |
|
||||
|
|
||||
// Header
|
|
||||
toolbarBtnColor: platform === PLATFORM.IOS ? '#007aff' : '#fff', |
|
||||
toolbarDefaultBg: platform === PLATFORM.IOS ? '#F8F8F8' : '#3F51B5', |
|
||||
toolbarHeight: platform === PLATFORM.IOS ? 64 : 56, |
|
||||
toolbarSearchIconSize: platform === PLATFORM.IOS ? 20 : 23, |
|
||||
toolbarInputColor: platform === PLATFORM.IOS ? '#CECDD2' : '#fff', |
|
||||
searchBarHeight: platform === PLATFORM.IOS ? 30 : 40, |
|
||||
searchBarInputHeight: platform === PLATFORM.IOS ? 30 : 50, |
|
||||
toolbarBtnTextColor: platform === PLATFORM.IOS ? '#007aff' : '#fff', |
|
||||
toolbarDefaultBorder: platform === PLATFORM.IOS ? '#a7a6ab' : '#3F51B5', |
|
||||
iosStatusbar: 'light-content', |
|
||||
get statusBarColor() { |
|
||||
return color(this.toolbarDefaultBg) |
|
||||
.darken(0.2) |
|
||||
.hex(); |
|
||||
}, |
|
||||
get darkenHeader() { |
|
||||
return color(this.tabBgColor) |
|
||||
.darken(0.03) |
|
||||
.hex(); |
|
||||
}, |
|
||||
|
|
||||
// Icon
|
|
||||
iconFamily: 'Ionicons', |
|
||||
iconFontSize: platform === PLATFORM.IOS ? 30 : 28, |
|
||||
iconHeaderSize: platform === PLATFORM.IOS ? 33 : 24, |
|
||||
|
|
||||
// InputGroup
|
|
||||
inputFontSize: 17, |
|
||||
inputBorderColor: '#D9D5DC', |
|
||||
inputSuccessBorderColor: '#2b8339', |
|
||||
inputErrorBorderColor: '#ed2f2f', |
|
||||
inputHeightBase: 50, |
|
||||
get inputColor() { |
|
||||
return this.textColor; |
|
||||
}, |
|
||||
get inputColorPlaceholder() { |
|
||||
return '#575757'; |
|
||||
}, |
|
||||
|
|
||||
// Line Height
|
|
||||
buttonLineHeight: 19, |
|
||||
lineHeightH1: 32, |
|
||||
lineHeightH2: 27, |
|
||||
lineHeightH3: 22, |
|
||||
lineHeight: platform === PLATFORM.IOS ? 20 : 24, |
|
||||
listItemSelected: platform === PLATFORM.IOS ? '#007aff' : '#3F51B5', |
|
||||
|
|
||||
// List
|
|
||||
listBg: 'transparent', |
|
||||
listBorderColor: '#c9c9c9', |
|
||||
listDividerBg: '#f4f4f4', |
|
||||
listBtnUnderlayColor: '#DDD', |
|
||||
listItemPadding: platform === PLATFORM.IOS ? 10 : 12, |
|
||||
listNoteColor: '#808080', |
|
||||
listNoteSize: 13, |
|
||||
|
|
||||
// Progress Bar
|
|
||||
defaultProgressColor: '#E4202D', |
|
||||
inverseProgressColor: '#1A191B', |
|
||||
|
|
||||
// Radio Button
|
|
||||
radioBtnSize: platform === PLATFORM.IOS ? 25 : 23, |
|
||||
radioSelectedColorAndroid: '#3F51B5', |
|
||||
radioBtnLineHeight: platform === PLATFORM.IOS ? 29 : 24, |
|
||||
get radioColor() { |
|
||||
return this.brandPrimary; |
|
||||
}, |
|
||||
|
|
||||
// Segment
|
|
||||
segmentBackgroundColor: '#f8f8f8', |
|
||||
segmentActiveBackgroundColor: platform === PLATFORM.IOS ? '#007aff' : '#fff', |
|
||||
segmentTextColor: '#333', |
|
||||
segmentActiveTextColor: '#fff', |
|
||||
get segmentBorderColor() { |
|
||||
return this.brandPrimary; |
|
||||
}, |
|
||||
segmentBorderColorMain: platform === PLATFORM.IOS ? '#a7a6ab' : '#3F51B5', |
|
||||
|
|
||||
// Spinner
|
|
||||
defaultSpinnerColor: '#45D56E', |
|
||||
inverseSpinnerColor: '#1A191B', |
|
||||
|
|
||||
// Tab
|
|
||||
tabBarDisabledTextColor: '#BDBDBD', |
|
||||
tabDefaultBg: platform === PLATFORM.IOS ? '#F8F8F8' : '#3F51B5', |
|
||||
topTabBarTextColor: platform === PLATFORM.IOS ? '#6b6b6b' : '#b3c7f9', |
|
||||
topTabBarActiveTextColor: platform === PLATFORM.IOS ? '#007aff' : '#fff', |
|
||||
topTabBarBorderColor: platform === PLATFORM.IOS ? '#a7a6ab' : '#fff', |
|
||||
topTabBarActiveBorderColor: platform === PLATFORM.IOS ? '#007aff' : '#fff', |
|
||||
|
|
||||
// Tabs
|
|
||||
tabBgColor: '#F8F8F8', |
|
||||
tabFontSize: 15, |
|
||||
|
|
||||
// Text
|
|
||||
textColor: '#000', |
|
||||
inverseTextColor: '#fff', |
|
||||
noteFontSize: 14, |
|
||||
get defaultTextColor() { |
|
||||
return this.textColor; |
|
||||
}, |
|
||||
|
|
||||
// Title
|
|
||||
titleFontfamily: platform === PLATFORM.IOS ? 'System' : 'Roboto_medium', |
|
||||
titleFontSize: platform === PLATFORM.IOS ? 17 : 19, |
|
||||
subTitleFontSize: platform === PLATFORM.IOS ? 11 : 14, |
|
||||
subtitleColor: platform === PLATFORM.IOS ? '#8e8e93' : '#FFF', |
|
||||
titleFontColor: platform === PLATFORM.IOS ? '#000' : '#FFF', |
|
||||
|
|
||||
// Other
|
|
||||
borderRadiusBase: platform === PLATFORM.IOS ? 5 : 2, |
|
||||
borderWidth: 1 / PixelRatio.getPixelSizeForLayoutSize(1), |
|
||||
contentPadding: 10, |
|
||||
dropdownLinkColor: '#414142', |
|
||||
inputLineHeight: 24, |
|
||||
deviceWidth, |
|
||||
deviceHeight, |
|
||||
isIphoneX, |
|
||||
inputGroupRoundedBorderRadius: 30, |
|
||||
|
|
||||
// iPhoneX SafeArea
|
|
||||
Inset: { |
|
||||
portrait: { |
|
||||
topInset: 24, |
|
||||
leftInset: 0, |
|
||||
rightInset: 0, |
|
||||
bottomInset: 34, |
|
||||
}, |
|
||||
landscape: { |
|
||||
topInset: 0, |
|
||||
leftInset: 44, |
|
||||
rightInset: 44, |
|
||||
bottomInset: 21, |
|
||||
}, |
|
||||
}, |
|
||||
}; |
|
||||
Some files were not shown because too many files changed in this diff
Loading…
Reference in new issue