@braineet/ui
Version:
Braineet design system
35 lines (34 loc) • 1.17 kB
JavaScript
;
exports.__esModule = true;
exports.default = void 0;
var _react = _interopRequireDefault(require("react"));
var _components = require("./components");
var _context = require("./context");
var _jsxRuntime = require("react/jsx-runtime");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var Accordion = function Accordion(_ref) {
var children = _ref.children,
allowMultiple = _ref.allowMultiple,
index = _ref.index;
var c = _react.default.Children.toArray(children).filter(Boolean);
var items = _react.default.Children.map(c, function (child, i) {
return /*#__PURE__*/_react.default.cloneElement(child, {
index: i + 1
});
});
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_context.AccordionProvider, {
allowMultiple: allowMultiple,
index: index,
children: items
});
};
Accordion.defaultProps = {
allowMultiple: false,
children: []
};
Accordion.Item = _components.AccordionItem;
Accordion.Button = _components.AccordionButton;
Accordion.Icon = _components.AccordionIcon;
Accordion.Panel = _components.AccordionPanel;
var _default = Accordion;
exports.default = _default;