Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
*/
activeKey: PropTypes.any,
/**
* Navigation style
*/
bsStyle: PropTypes.oneOf(['tabs', 'pills']),
/**
* Sets a default animation strategy. Use `false` to disable, `true`
* to enable the default `` animation, or a react-transition-group
* v2 `` component.
*/
animation: PropTypes.oneOfType([PropTypes.bool, elementType]),
id: requiredForA11y(
PropTypes.oneOfType([PropTypes.string, PropTypes.number])
),
/**
* Callback fired when a Tab is selected.
*
* ```js
* function (
* Any eventKey,
* SyntheticEvent event?
* )
* ```
*
* @controllable activeKey
*/
onSelect: PropTypes.func,
import Button from './Button';
import { useBootstrapPrefix } from './ThemeProvider';
import useWrappedRefWithWarning from './useWrappedRefWithWarning';
const propTypes = {
/**
* @default 'dropdown-toggle'
*/
bsPrefix: PropTypes.string,
/**
* An html id attribute, necessary for assistive technologies, such as screen readers.
* @type {string|number}
* @required
*/
id: isRequiredForA11y(PropTypes.any),
split: PropTypes.bool,
as: PropTypes.elementType,
/**
* to passthrough to the underlying button or whatever from DropdownButton
* @private
*/
childBsPrefix: PropTypes.string,
};
const DropdownToggle = React.forwardRef(
(
{
bsPrefix,
import PropTypes from 'prop-types';
import isRequiredForA11y from 'prop-types-extra/lib/isRequiredForA11y';
import { createBootstrapComponent } from './ThemeProvider';
const propTypes = {
/**
* @default 'popover'
*/
bsPrefix: PropTypes.string,
/**
* An html id attribute, necessary for accessibility
* @type {string|number}
* @required
*/
id: isRequiredForA11y(
PropTypes.oneOfType([PropTypes.string, PropTypes.number]),
),
/**
* Sets the direction the Popover is positioned towards.
*
* > This is generally provided by the `Overlay` component positioning the popover
*/
placement: PropTypes.oneOf([
'auto-start',
'auto',
'auto-end',
'top-start',
'top',
'top-end',
'right-start',
const TOGGLE_ROLE = DropdownToggle.defaultProps.bsRole;
const MENU_ROLE = DropdownMenu.defaultProps.bsRole;
const propTypes = {
/**
* The menu will open above the dropdown button, instead of below it.
*/
dropup: PropTypes.bool,
/**
* An html id attribute, necessary for assistive technologies, such as screen readers.
* @type {string|number}
* @required
*/
id: isRequiredForA11y(
PropTypes.oneOfType([PropTypes.string, PropTypes.number])
),
componentClass: elementType,
/**
* The children of a Dropdown may be a `` or a ``.
* @type {node}
*/
children: all(
requiredRoles(TOGGLE_ROLE, MENU_ROLE),
exclusiveRoles(MENU_ROLE)
),
/**
* Whether or not component is disabled.
import PropTypes from 'prop-types';
import isRequiredForA11y from 'prop-types-extra/lib/isRequiredForA11y';
import { createBootstrapComponent } from './ThemeProvider';
const propTypes = {
/**
* @default 'tooltip'
*/
bsPrefix: PropTypes.string,
/**
* An html id attribute, necessary for accessibility
* @type {string|number}
* @required
*/
id: isRequiredForA11y(
PropTypes.oneOfType([PropTypes.string, PropTypes.number]),
),
/**
* Sets the direction the Tooltip is positioned towards.
*
* > This is generally provided by the `Overlay` component positioning the tooltip
*/
placement: PropTypes.oneOf([
'auto-start',
'auto',
'auto-end',
'top-start',
'top',
'top-end',
'right-start',