joplin/ReactNativeClient/lib/components/base-screen.js

40 lines
820 B
JavaScript
Raw Normal View History

const React = require('react'); const Component = React.Component;
const { StyleSheet } = require('react-native');
const { globalStyle, themeStyle } = require('lib/components/global-style.js');
2017-07-14 18:49:14 +00:00
2017-07-31 20:03:12 +00:00
const styleObject_ = {
2017-07-14 18:49:14 +00:00
screen: {
flex: 1,
2017-07-21 21:40:02 +00:00
backgroundColor: globalStyle.backgroundColor,
2017-07-14 18:49:14 +00:00
},
2017-07-31 20:03:12 +00:00
};
const styles_ = StyleSheet.create(styleObject_);
2017-07-14 18:49:14 +00:00
2017-08-01 17:59:01 +00:00
let rootStyles_ = {};
2017-07-14 18:49:14 +00:00
class BaseScreenComponent extends React.Component {
styles() {
return styles_;
}
2017-07-31 20:03:12 +00:00
styleObject() {
return styleObject_;
}
2017-08-01 17:59:01 +00:00
rootStyle(themeId) {
const theme = themeStyle(themeId);
if (rootStyles_[themeId]) return rootStyles_[themeId];
rootStyles_[themeId] = StyleSheet.create({
root: {
flex: 1,
backgroundColor: theme.backgroundColor,
},
});
return rootStyles_[themeId];
}
2017-07-14 18:49:14 +00:00
}
2017-11-03 00:13:17 +00:00
module.exports = { BaseScreenComponent };