@talend/react-faceted-search
Version:
104 lines (102 loc) • 3.19 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.BadgeSlider = void 0;
var _react = require("react");
var _propTypes = _interopRequireDefault(require("prop-types"));
var _BadgeFaceted = require("../BadgeFaceted");
var _BadgeSliderForm = require("./BadgeSliderForm.component");
var _facetedSearch = require("../../facetedSearch.propTypes");
var _reactComponents = require("@talend/react-components");
var _jsxRuntime = require("react/jsx-runtime");
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
const createDefaultOperators = t => [{
label: t('FACETED_SEARCH_EQUAL', {
defaultValue: 'Equal'
}),
name: 'equals',
iconName: 'equal'
}, {
label: t('FACETED_SEARCH_GREATHER_THAN', {
defaultValue: 'Greater than'
}),
name: 'GreaterThan',
iconName: 'greater-than'
}, {
label: t('FACETED_SEARCH_LESS_THAN', {
defaultValue: 'Less than'
}),
name: 'LessThan',
iconName: 'less-than'
}];
const BadgeSlider = ({
id,
initialOperatorOpened,
initialValueOpened,
label,
operator,
operators,
size,
t,
value,
category,
defaultValue = 0,
unit = '',
displayType,
...rest
}) => {
const currentOperators = (0, _react.useMemo)(() => operators || createDefaultOperators(t), [operators, t]);
const currentOperator = operator || currentOperators[0];
const numericValue = value != null ? value : defaultValue;
const labelValue = numericValue != null && `${numericValue}${unit}`;
const badgeTextId = `${id}-badge-slider`;
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_BadgeFaceted.BadgeFaceted, {
badgeId: id,
displayType: displayType,
id: badgeTextId,
initialOperatorOpened: initialOperatorOpened,
initialValueOpened: initialValueOpened,
labelCategory: label,
labelValue: labelValue,
operator: currentOperator,
operators: currentOperators,
size: size,
t: t,
value: value || defaultValue,
children: ({
onSubmitBadge,
onChangeValue,
badgeValue
}) => /*#__PURE__*/(0, _jsxRuntime.jsx)(_BadgeSliderForm.BadgeSliderForm, {
id: badgeTextId,
onChange: onChangeValue,
onSubmit: onSubmitBadge,
operator: currentOperator,
value: badgeValue,
defaultValue: defaultValue,
feature: category || label,
unit: unit,
t: t,
...rest
})
});
};
exports.BadgeSlider = BadgeSlider;
BadgeSlider.propTypes = {
id: _propTypes.default.string.isRequired,
initialOperatorOpened: _propTypes.default.bool,
initialValueOpened: _propTypes.default.bool,
label: _propTypes.default.string.isRequired,
operator: _facetedSearch.operatorPropTypes,
operators: _facetedSearch.operatorsPropTypes,
size: _propTypes.default.oneOf(Object.values(_reactComponents.Badge.SIZES)),
t: _propTypes.default.func.isRequired,
value: _propTypes.default.number,
category: _propTypes.default.string,
defaultValue: _propTypes.default.number,
unit: _propTypes.default.string,
displayType: _propTypes.default.oneOf(Object.values(_reactComponents.Badge.TYPES))
};
// eslint-disable-next-line import/prefer-default-export
//# sourceMappingURL=BadgeSlider.component.js.map