UNPKG

pouncejs

Version:

A collection of UI components from Panther labs

44 lines (33 loc) 1.48 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); exports.__esModule = true; exports.default = exports.TabList = void 0; var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")); var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose")); var _react = _interopRequireDefault(require("react")); var _tabs = require("@reach/tabs"); var _Flex = _interopRequireDefault(require("../Flex")); var TabList = /*#__PURE__*/_react.default.forwardRef(function TabList(_ref, ref) { var children = _ref.children, rest = (0, _objectWithoutPropertiesLoose2.default)(_ref, ["children"]); var _useTabsContext = (0, _tabs.useTabsContext)(), focusedIndex = _useTabsContext.focusedIndex, selectedIndex = _useTabsContext.selectedIndex; return ( /*#__PURE__*/ // @ts-ignore Typing is wrong on @reach-ui, allowing only div | undefined for `as` _react.default.createElement(_tabs.TabList, (0, _extends2.default)({ as: _Flex.default, ref: ref, flexWrap: "wrap" }, rest), _react.default.Children.toArray(children).map(function (child, index) { return /*#__PURE__*/_react.default.cloneElement(child, { isSelected: selectedIndex === index, isFocused: focusedIndex === index }); })) ); }); exports.TabList = TabList; var _default = TabList; exports.default = _default;