UNPKG

instantjob-recruiter-client

Version:

a set of tools for creating an instantjob recruiter react client

134 lines (99 loc) 4.16 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); var _toConsumableArray2 = require('babel-runtime/helpers/toConsumableArray'); var _toConsumableArray3 = _interopRequireDefault(_toConsumableArray2); 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 _react = require('react'); var _react2 = _interopRequireDefault(_react); var _bind = require('classnames/bind'); var _bind2 = _interopRequireDefault(_bind); var _fields_table = require('components/fields_table'); var _fields_table2 = _interopRequireDefault(_fields_table); var _button = require('components/utils/button'); var _button2 = _interopRequireDefault(_button); var _store = require('common/store'); var _store2 = _interopRequireDefault(_store); var _auto_bind = require('common/auto_bind'); var _auto_bind2 = _interopRequireDefault(_auto_bind); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } var cx = _bind2.default.bind(require('../styles/fields_settings.scss')); var FieldsSettings = function (_Component) { (0, _inherits3.default)(FieldsSettings, _Component); function FieldsSettings(props) { (0, _classCallCheck3.default)(this, FieldsSettings); var _this = (0, _possibleConstructorReturn3.default)(this, (FieldsSettings.__proto__ || (0, _getPrototypeOf2.default)(FieldsSettings)).call(this, props)); (0, _auto_bind2.default)(_this); return _this; } (0, _createClass3.default)(FieldsSettings, [{ key: 'render_table', value: function render_table(_ref, index) { var header = _ref.header, fields = _ref.fields, children = _ref.children, actions = _ref.actions; var options = this.props.options; return _react2.default.createElement( 'div', { key: index, className: cx('fields-settings__fields') }, _react2.default.createElement( 'div', { className: cx('fields-settings__fields-header') }, _react2.default.createElement( 'span', null, header ), actions ), fields ? _react2.default.createElement(_fields_table2.default, { fields: fields, options: options }) : null, children ); } }, { key: 'render', value: function render() { var _props = this.props, title = _props.title, fields = _props.fields, instant_job_fields = _props.instant_job_fields, children = _props.children, create_field = _props.create_field; return _react2.default.createElement( 'div', { className: cx('fields-settings') }, _react2.default.createElement( 'div', { className: cx('fields-settings__header') }, _react2.default.createElement( 'div', { className: cx('fields-settings__header-title') }, title ), _react2.default.createElement( _button2.default, { onClick: create_field }, 'Cr\xE9er un nouveau champ' ) ), [{ header: "Champs personnalisables", fields: fields }, instant_job_fields && { header: "Champs InstantJob", fields: instant_job_fields }].concat((0, _toConsumableArray3.default)(children || [])).filter(Boolean).map(this.render_table) ); } }]); return FieldsSettings; }(_react.Component); FieldsSettings.defaultProps = { options: [] }; exports.default = FieldsSettings;