@talend/react-faceted-search
Version:
79 lines (77 loc) • 2.89 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.BadgeOperatorOverlay = void 0;
var _classnames = _interopRequireDefault(require("classnames"));
var _propTypes = _interopRequireDefault(require("prop-types"));
var _facetedSearch = require("../../facetedSearch.propTypes");
var _BadgeOverlay = require("../BadgeOverlay");
var _BadgeOperatorPopover = require("./BadgeOperatorPopover.component");
var _BadgeOperatorModule = _interopRequireDefault(require("./BadgeOperator.module.scss"));
var _reactComponents = require("@talend/react-components");
var _jsxRuntime = require("react/jsx-runtime");
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
const BadgeOperatorOverlay = ({
id,
onClick,
onChangeOverlay,
onHideOverlay,
opened,
operatorIconName,
operatorLabel,
operators,
readOnly,
size
}) => {
/**
* Trigger the callback passed in props
* @param {function} setOverlayOpened callback used to open / close the overlay
*/
const onClickRow = setOverlayOpened => (event, name) => {
if (onClick) {
onClick(event, name, setOverlayOpened);
}
};
const onHide = event => {
if (onHideOverlay) {
onHideOverlay(event);
}
};
return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
className: (0, _classnames.default)(_BadgeOperatorModule.default['tc-badge-operator'], {
[_BadgeOperatorModule.default['tc-badge-operator-small']]: _reactComponents.Badge.SIZES.small === size,
[_BadgeOperatorModule.default['tc-badge-operator-large']]: _reactComponents.Badge.SIZES.large === size
}),
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_BadgeOverlay.BadgeOverlay, {
className: _BadgeOperatorModule.default['tc-badge-operator-button'],
iconName: operatorIconName,
id: `${id}-operator`,
label: operatorLabel,
onChange: onChangeOverlay,
onHide: onHide,
opened: opened,
readOnly: readOnly,
children: setOverlayOpened => /*#__PURE__*/(0, _jsxRuntime.jsx)(_BadgeOperatorPopover.BadgeOperatorPopover, {
id: `${id}-operator`,
operators: operators,
onClick: onClickRow(setOverlayOpened)
})
})
});
};
exports.BadgeOperatorOverlay = BadgeOperatorOverlay;
BadgeOperatorOverlay.propTypes = {
id: _propTypes.default.string.isRequired,
onClick: _propTypes.default.func,
onChangeOverlay: _propTypes.default.func,
onHideOverlay: _propTypes.default.func,
opened: _propTypes.default.bool,
operatorIconName: _propTypes.default.string,
operatorLabel: _propTypes.default.string,
operators: _facetedSearch.operatorsPropTypes.isRequired,
readOnly: _propTypes.default.bool,
size: _propTypes.default.oneOf(Object.values(_reactComponents.Badge.SIZES))
};
// eslint-disable-next-line import/prefer-default-export
//# sourceMappingURL=BadgeOperatorOverlay.component.js.map