UNPKG

artwork-react-native

Version:

artwork design master for react-native

149 lines (123 loc) 5.38 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); var _extends2 = require('babel-runtime/helpers/extends'); var _extends3 = _interopRequireDefault(_extends2); var _classCallCheck2 = require('babel-runtime/helpers/classCallCheck'); var _classCallCheck3 = _interopRequireDefault(_classCallCheck2); var _createClass2 = require('babel-runtime/helpers/createClass'); var _createClass3 = _interopRequireDefault(_createClass2); var _possibleConstructorReturn2 = require('babel-runtime/helpers/possibleConstructorReturn'); var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2); var _inherits2 = require('babel-runtime/helpers/inherits'); var _inherits3 = _interopRequireDefault(_inherits2); var _react = require('react'); var _react2 = _interopRequireDefault(_react); var _reactNative = require('react-native'); var _style = require('./style'); var _style2 = _interopRequireDefault(_style); var _flex = require('../flex'); var _flex2 = _interopRequireDefault(_flex); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; } var __rest = undefined && undefined.__rest || function (s, e) { var t = {}; for (var p in s) { if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p]; }if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { if (e.indexOf(p[i]) < 0) t[p[i]] = s[p[i]]; }return t; }; var NavBarStyles = _reactNative.StyleSheet.create(_style2['default']); var NavBar = function (_React$Component) { (0, _inherits3['default'])(NavBar, _React$Component); function NavBar(props) { (0, _classCallCheck3['default'])(this, NavBar); return (0, _possibleConstructorReturn3['default'])(this, (NavBar.__proto__ || Object.getPrototypeOf(NavBar)).call(this, props)); } (0, _createClass3['default'])(NavBar, [{ key: 'render', value: function render() { var _a = this.props, children = _a.children, style = _a.style, hideNav = _a.hideNav, icon = _a.icon, leftContent = _a.leftContent, onLeftPressed = _a.onLeftPressed, rightContent = _a.rightContent, restProps = __rest(_a, ["children", "style", "hideNav", "icon", "leftContent", "onLeftPressed", "rightContent"]); if (hideNav == true) { return null; } var statusBar = !this.props.statusBar.hidden ? _react2['default'].createElement( _reactNative.View, { style: NavBarStyles.statusBar }, _react2['default'].createElement(_reactNative.StatusBar, (0, _extends3['default'])({}, this.props.statusBar, { barStyle: this.props.statusBar.barStyle })) ) : null; var leftDom = null; var rightDom = null; if (leftContent) { var content = typeof leftContent === 'function' ? leftContent() : leftContent; if (typeof content === 'string') { content = _react2['default'].createElement( _reactNative.Text, { style: NavBarStyles.text }, content ); } leftDom = content; } if (rightContent) { var _content = typeof rightContent === 'function' ? rightContent() : rightContent; if (typeof _content === 'string') { _content = _react2['default'].createElement( _reactNative.Text, { style: NavBarStyles.text }, _content ); } rightDom = _content; } return _react2['default'].createElement( _reactNative.View, (0, _extends3['default'])({ style: [NavBarStyles.wrapper, style] }, restProps), statusBar, _react2['default'].createElement( _flex2['default'], { style: NavBarStyles.navBar }, _react2['default'].createElement( _flex2['default'].Item, { style: NavBarStyles.left, onPress: onLeftPressed }, leftDom ), _react2['default'].createElement( _reactNative.View, { style: NavBarStyles.title }, children ), _react2['default'].createElement( _reactNative.View, { style: NavBarStyles.right }, rightDom ) ) ); } }]); return NavBar; }(_react2['default'].Component); exports['default'] = NavBar; NavBar.defaultProps = { statusBar: { barStyle: 'dark-content', hidden: false, translucent: false, animated: false }, hideNav: false, icon: {}, leftContent: null, onLeftPressed: function onLeftPressed() {}, rightContent: null };