UNPKG

@talend/react-components

Version:
77 lines (75 loc) 2.41 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = exports.DISPLAY_MODE = void 0; var _propTypes = _interopRequireDefault(require("prop-types")); var _react = require("react"); var _reactI18next = require("react-i18next"); var _Icon = _interopRequireDefault(require("../../Icon")); var _constants = _interopRequireDefault(require("../../constants")); var _translate = _interopRequireDefault(require("../../translate")); var _theme = require("../../theme"); var _CellBooleanModule = _interopRequireDefault(require("./CellBoolean.module.scss")); var _jsxRuntime = require("react/jsx-runtime"); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } const css = (0, _theme.getTheme)(_CellBooleanModule.default); const DISPLAY_MODE = exports.DISPLAY_MODE = { TEXT: 'TEXT', ICON: 'ICON' }; /** * Cell renderer that displays a boolean */ class CellBoolean extends _react.Component { shouldComponentUpdate(nextProps) { return this.props.cellData !== nextProps.cellData; } render() { const { cellData, t, columnData } = this.props; if (columnData.displayMode === DISPLAY_MODE.ICON) { if (cellData) { return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", { className: css('cell-boolean-container'), children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Icon.default, { name: "talend-check-circle", title: t('CAD_LIST_MANDATORY_REQUIRED', { defaultValue: 'Required' }) }) }); } return null; } if (cellData === true) { return t('BOOLEAN_VALUE_TRUE', { defaultValue: 'Yes' }); } else if (cellData === false) { return t('BOOLEAN_VALUE_FALSE', { defaultValue: 'No' }); } return null; } } CellBoolean.displayName = 'VirtualizedList(CellBoolean)'; CellBoolean.propTypes = { cellData: _propTypes.default.bool, t: _propTypes.default.func, columnData: _propTypes.default.shape({ displayMode: _propTypes.default.oneOf(Object.values(DISPLAY_MODE)) }).isRequired }; CellBoolean.defaultProps = { t: (0, _translate.default)(), columnData: { displayMode: DISPLAY_MODE.TEXT } }; var _default = exports.default = (0, _reactI18next.withTranslation)(_constants.default)(CellBoolean); //# sourceMappingURL=CellBoolean.component.js.map