instantjob-recruiter-client
Version:
a set of tools for creating an instantjob recruiter react client
127 lines (88 loc) • 4.69 kB
JavaScript
'use strict';
Object.defineProperty(exports, "__esModule", {
value: true
});
var _taggedTemplateLiteral2 = require('babel-runtime/helpers/taggedTemplateLiteral');
var _taggedTemplateLiteral3 = _interopRequireDefault(_taggedTemplateLiteral2);
var _getPrototypeOf = require('babel-runtime/core-js/object/get-prototype-of');
var _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf);
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 _templateObject = (0, _taggedTemplateLiteral3.default)(['\n flex-shrink: 0;\n display: flex;\n align-items: stretch;\n height: 50px;\n background-color: ', ';\n'], ['\n flex-shrink: 0;\n display: flex;\n align-items: stretch;\n height: 50px;\n background-color: ', ';\n']),
_templateObject2 = (0, _taggedTemplateLiteral3.default)(['\n flex-shrink: 0;\n display: flex;\n align-items: center;\n'], ['\n flex-shrink: 0;\n display: flex;\n align-items: center;\n']),
_templateObject3 = (0, _taggedTemplateLiteral3.default)(['\n flex: 1;\n display: flex;\n justify-content: center;\n align-items: stretch;\n'], ['\n flex: 1;\n display: flex;\n justify-content: center;\n align-items: stretch;\n']),
_templateObject4 = (0, _taggedTemplateLiteral3.default)(['\n display: flex;\n color: white;\n align-items: center;\n border: solid 3px transparent;\n text-transform: uppercase;\n margin: 0 30px;\n ', '\n &:hover {\n opacity: 1;\n }\n ', '\n'], ['\n display: flex;\n color: white;\n align-items: center;\n border: solid 3px transparent;\n text-transform: uppercase;\n margin: 0 30px;\n ', '\n &:hover {\n opacity: 1;\n }\n ', '\n']);
var _react = require('react');
var _react2 = _interopRequireDefault(_react);
var _reactRouter = require('react-router');
var _styledComponents = require('styled-components');
var _styledComponents2 = _interopRequireDefault(_styledComponents);
var _make_tabs_with_routes = require('./make_tabs_with_routes');
var _make_tabs_with_routes2 = _interopRequireDefault(_make_tabs_with_routes);
var _auto_bind = require('common/auto_bind');
var _auto_bind2 = _interopRequireDefault(_auto_bind);
var _styles = require('common/styles');
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var Tabbar = function (_Component) {
(0, _inherits3.default)(Tabbar, _Component);
function Tabbar(props) {
(0, _classCallCheck3.default)(this, Tabbar);
var _this = (0, _possibleConstructorReturn3.default)(this, (Tabbar.__proto__ || (0, _getPrototypeOf2.default)(Tabbar)).call(this, props));
_this.defaultProps = {
children: []
};
(0, _auto_bind2.default)(_this);
return _this;
}
(0, _createClass3.default)(Tabbar, [{
key: 'render_tab',
value: function render_tab(_ref, index) {
var label = _ref.label,
active = _ref.active,
onClick = _ref.onClick;
return _react2.default.createElement(
Tab,
{ key: index, onClick: onClick, active: active },
label
);
}
}, {
key: 'render',
value: function render() {
var _props = this.props,
tabs = _props.children,
header = _props.header,
className = _props.className;
return _react2.default.createElement(
Container,
{ className: className },
header ? _react2.default.createElement(
Header,
null,
header
) : null,
_react2.default.createElement(
Tabs,
null,
tabs.map(this.render_tab)
)
);
}
}]);
return Tabbar;
}(_react.Component);
Tabbar.make_tabs_with_routes = _make_tabs_with_routes2.default;
exports.default = Tabbar;
var Container = _styledComponents2.default.div(_templateObject, (0, _styles.color)('primary', 'light'));
var Header = _styledComponents2.default.div(_templateObject2);
var Tabs = _styledComponents2.default.div(_templateObject3);
var Tab = _styledComponents2.default.div(_templateObject4, _styles.link, function (_ref2) {
var active = _ref2.active;
return active ? 'border-bottom-color: ' + (0, _styles.color)('action') + '; ' : 'opacity: 0.7;';
});