1 | import _extends from "@babel/runtime/helpers/esm/extends";
|
2 | import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
|
3 | import classNames from 'classnames';
|
4 | import isRequiredForA11y from 'prop-types-extra/lib/isRequiredForA11y';
|
5 | import React from 'react';
|
6 | import { useDropdownToggle } from 'react-overlays/DropdownToggle';
|
7 | import useMergedRefs from '@restart/hooks/useMergedRefs';
|
8 | import Button from './Button';
|
9 | import { useBootstrapPrefix } from './ThemeProvider';
|
10 | import useWrappedRefWithWarning from './useWrappedRefWithWarning';
|
11 | var DropdownToggle = React.forwardRef(function (_ref, ref) {
|
12 | var bsPrefix = _ref.bsPrefix,
|
13 | split = _ref.split,
|
14 | className = _ref.className,
|
15 | childBsPrefix = _ref.childBsPrefix,
|
16 | _ref$as = _ref.as,
|
17 | Component = _ref$as === void 0 ? Button : _ref$as,
|
18 | props = _objectWithoutPropertiesLoose(_ref, ["bsPrefix", "split", "className", "childBsPrefix", "as"]);
|
19 |
|
20 | var prefix = useBootstrapPrefix(bsPrefix, 'dropdown-toggle');
|
21 |
|
22 | if (childBsPrefix !== undefined) {
|
23 | props.bsPrefix = childBsPrefix;
|
24 | }
|
25 |
|
26 | var _useDropdownToggle = useDropdownToggle(),
|
27 | toggleProps = _useDropdownToggle[0],
|
28 | toggle = _useDropdownToggle[1].toggle;
|
29 |
|
30 | toggleProps.ref = useMergedRefs(toggleProps.ref, useWrappedRefWithWarning(ref, 'DropdownToggle'));
|
31 |
|
32 |
|
33 | return React.createElement(Component, _extends({
|
34 | onClick: toggle,
|
35 | className: classNames(className, prefix, split && prefix + "-split")
|
36 | }, toggleProps, props));
|
37 | });
|
38 | DropdownToggle.displayName = 'DropdownToggle';
|
39 | export default DropdownToggle; |
\ | No newline at end of file |