UNPKG

react-dyn-tabs

Version:
28 lines 1.37 kB
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); } import React from 'react'; import { ApiContext, ForceUpdateContext } from '../context.js'; import PropTypes from 'prop-types'; var TabComponent = function TabComponent(deps, props) { React.useContext(ForceUpdateContext); var api = React.useContext(ApiContext); var _deps = deps(api), tabPropsManager = _deps.tabPropsManager, tabInnerPropsManager = _deps.tabInnerPropsManager, closeIconPropsManager = _deps.closeIconPropsManager; var id = props.id, selectedTabID = props.selectedTabID, TabInnerComponent = api.getOption('tabComponent'), tabObj = api.getTab(id), clkHandler = function clkHandler(e) { api.eventHandlerFactory({ e: e, id: id }); }; return /*#__PURE__*/React.createElement("li", _extends({}, tabPropsManager(props), { onClick: function onClick(e) { clkHandler(e); } }), /*#__PURE__*/React.createElement(TabInnerComponent, tabInnerPropsManager(props), tabObj.title), tabObj.closable ? /*#__PURE__*/React.createElement("span", closeIconPropsManager(), "\xD7") : null); }; export default TabComponent;