1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- "use strict";
-
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
-
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
-
- exports.__esModule = true;
- exports.useAccordionToggle = useAccordionToggle;
- exports.default = void 0;
-
- var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
-
- var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
-
- var _react = _interopRequireWildcard(require("react"));
-
- var _SelectableContext = _interopRequireDefault(require("./SelectableContext"));
-
- var _AccordionContext = _interopRequireDefault(require("./AccordionContext"));
-
- function useAccordionToggle(eventKey, onClick) {
- var contextEventKey = (0, _react.useContext)(_AccordionContext.default);
- var onSelect = (0, _react.useContext)(_SelectableContext.default);
- return function (e) {
- /*
- Compare the event key in context with the given event key.
- If they are the same, then collapse the component.
- */
- var eventKeyPassed = eventKey === contextEventKey ? null : eventKey;
- onSelect(eventKeyPassed, e);
- if (onClick) onClick(e);
- };
- }
-
- var AccordionToggle = _react.default.forwardRef(function (_ref, ref) {
- var _ref$as = _ref.as,
- Component = _ref$as === void 0 ? 'button' : _ref$as,
- children = _ref.children,
- eventKey = _ref.eventKey,
- onClick = _ref.onClick,
- props = (0, _objectWithoutPropertiesLoose2.default)(_ref, ["as", "children", "eventKey", "onClick"]);
- var accordionOnClick = useAccordionToggle(eventKey, onClick);
- return _react.default.createElement(Component, (0, _extends2.default)({
- ref: ref,
- onClick: accordionOnClick
- }, props), children);
- });
-
- var _default = AccordionToggle;
- exports.default = _default;
|