UNPKG

@coreui/react-pro

Version:

UI Components Library for React.js

26 lines (23 loc) 1.17 kB
import React, { createContext, forwardRef, useId, useState, useEffect } from 'react'; import PropTypes from 'prop-types'; import classNames from '../../node_modules/classnames/index.js'; var TabsContext = createContext({}); var CTabs = forwardRef(function (_a, ref) { var children = _a.children, activeItemKey = _a.activeItemKey, className = _a.className, onChange = _a.onChange; var id = useId(); var _b = useState(activeItemKey), _activeItemKey = _b[0], setActiveItemKey = _b[1]; useEffect(function () { _activeItemKey && onChange && onChange(_activeItemKey); }, [_activeItemKey]); return (React.createElement(TabsContext.Provider, { value: { _activeItemKey: _activeItemKey, setActiveItemKey: setActiveItemKey, id: id } }, React.createElement("div", { className: classNames('tabs', className), ref: ref }, children))); }); CTabs.propTypes = { activeItemKey: PropTypes.oneOfType([PropTypes.number, PropTypes.string]).isRequired, children: PropTypes.node, className: PropTypes.string, onChange: PropTypes.func, }; CTabs.displayName = 'CTabs'; export { CTabs, TabsContext }; //# sourceMappingURL=CTabs.js.map