UNPKG

instantjob-recruiter-client

Version:

a set of tools for creating an instantjob recruiter react client

147 lines (126 loc) 4.26 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); var _objectWithoutProperties2 = require('babel-runtime/helpers/objectWithoutProperties'); var _objectWithoutProperties3 = _interopRequireDefault(_objectWithoutProperties2); var _extends2 = require('babel-runtime/helpers/extends'); var _extends3 = _interopRequireDefault(_extends2); var _react = require('react'); var _react2 = _interopRequireDefault(_react); var _bind = require('classnames/bind'); var _bind2 = _interopRequireDefault(_bind); var _md = require('react-icons/lib/md'); var _line_broken_text = require('../components/line_broken_text'); var _line_broken_text2 = _interopRequireDefault(_line_broken_text); var _calendar = require('../common/calendar'); var _missions = require('../common/missions'); var _utilities = require('../common/utilities'); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } var cx = _bind2.default.bind(require('../styles/user_mission.scss')); exports.default = function (_ref) { var id = _ref.id, events = _ref.events, workplace = _ref.workplace, fields = _ref.fields; return _react2.default.createElement( 'div', null, _react2.default.createElement( 'div', { className: cx('user-mission__events') }, _react2.default.createElement( 'div', { className: cx('user-mission__events-icon') }, _react2.default.createElement(_md.MdEvent, null) ), _react2.default.createElement( 'div', { className: cx('user-mission__events-periods') }, (0, _calendar.make_periods)(events).map(function (period) { return _react2.default.createElement( 'div', { key: period.events[0].id, className: cx('user-mission__events-periods-period') }, (0, _missions.mission_period)(period) ); }) ) ), workplace ? _react2.default.createElement( 'div', { className: cx('user-mission__place') }, _react2.default.createElement( 'div', { className: cx('user-mission__place-icon') }, _react2.default.createElement(_md.MdPlace, null) ), _react2.default.createElement( 'div', { className: cx('user-mission__place-label') }, _react2.default.createElement( 'div', { className: cx('user-mission__place-label-name') }, workplace.name ), _react2.default.createElement( 'div', { className: cx('user-mission__place-label-address', { 'user-mission__place-label-address-empty': !workplace.name && !workplace.address }) }, workplace.address || 'Non renseigné' ) ) ) : null, fields.map(function (field) { return _react2.default.createElement(Field, (0, _extends3.default)({ key: field.id }, field)); }) ); }; var Field = function Field(_ref2) { var name = _ref2.name, field = (0, _objectWithoutProperties3.default)(_ref2, ['name']); return _react2.default.createElement( 'div', { className: cx('user-mission__field') }, _react2.default.createElement( 'span', { className: cx('user-mission__field-name') }, name + ' : ' ), _react2.default.createElement(FieldContent, field) ); }; var FieldContent = function FieldContent(_ref3) { var category = _ref3.category, comment = _ref3.comment, selected_values = _ref3.selected_values, selected_value = _ref3.selected_value, empty = _ref3.empty; if (empty) { return _react2.default.createElement( 'span', { className: cx('user-mission__field-empty') }, 'Vide' ); } switch (category) { case 'comment': return _react2.default.createElement( _line_broken_text2.default, null, comment ); case 'non_exclusive': return _react2.default.createElement( 'span', null, (0, _utilities.human_join)(selected_values.map((0, _utilities.property_getter)('name'))) ); case 'exclusive': return _react2.default.createElement( 'span', null, selected_value.name ); default: return null; } };