rsuite
Version:
A suite of react components
49 lines (36 loc) • 2.29 kB
JavaScript
;
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
exports.__esModule = true;
exports.default = exports.pickTriggerPropKeys = exports.omitTriggerPropKeys = void 0;
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
var _react = _interopRequireWildcard(require("react"));
var _pick = _interopRequireDefault(require("lodash/pick"));
var _OverlayTrigger = _interopRequireDefault(require("../Overlay/OverlayTrigger"));
var _utils = require("../utils");
var _CustomProvider = require("../CustomProvider");
var omitTriggerPropKeys = ['onEntered', 'onExited', 'onEnter', 'onEntering', 'onExit', 'onExiting', 'open', 'defaultOpen', 'onHide', 'container', 'containerPadding', 'preventOverflow'];
exports.omitTriggerPropKeys = omitTriggerPropKeys;
var pickTriggerPropKeys = [].concat(omitTriggerPropKeys, ['disabled', 'plaintext', 'readOnly', 'loading']);
exports.pickTriggerPropKeys = pickTriggerPropKeys;
var PickerToggleTrigger = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
var pickerProps = props.pickerProps,
speaker = props.speaker,
placement = props.placement,
_props$trigger = props.trigger,
trigger = _props$trigger === void 0 ? 'click' : _props$trigger,
rest = (0, _objectWithoutPropertiesLoose2.default)(props, ["pickerProps", "speaker", "placement", "trigger"]);
var pickerTriggerProps = (0, _pick.default)(pickerProps, pickTriggerPropKeys);
var context = (0, _react.useContext)(_CustomProvider.CustomContext);
return /*#__PURE__*/_react.default.createElement(_OverlayTrigger.default, (0, _extends2.default)({}, rest, pickerTriggerProps, {
disabled: pickerTriggerProps.disabled || pickerTriggerProps.loading,
ref: ref,
trigger: trigger,
placement: (0, _utils.placementPolyfill)(placement, context === null || context === void 0 ? void 0 : context.rtl),
speaker: speaker
}));
});
PickerToggleTrigger.displayName = 'PickerToggleTrigger';
var _default = PickerToggleTrigger;
exports.default = _default;