@talend/react-components
Version:
Set of react components.
77 lines (75 loc) • 2.41 kB
JavaScript
;
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