function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }

import React from "react";
import PropTypes from "prop-types";
import styles from "./Tab.module.css";
import TabContainerBehaviour, { TabBarBehaviour, TabBarNavLineBehaviour, TabContextBehaviour, TabPanelBehaviour, TabBehaviour, TabContentBehaviour } from "./TabContainer.behaviour";
import componentGroups from "../../docs-utils/componentGroups";
import componentCategories from "../../docs-utils/componentCategories";
import TabContainerSkeleton, { TabContext as TabContextSkeleton, TabBar as TabBarSkeleton, TabBarNavLine as TabBarNavLineSkeleton, Tab as TabSkeleton, TabContent as TabContentSkeleton, TabPanel as TabPanelSkeleton } from "./TabContainer.skeleton";
export default function TabContext(props) {
  return /*#__PURE__*/React.createElement(TabContextBehaviour, _extends({}, props, {
    renderComponent: TabContextSkeleton
  }));
}
export function TabContainer(props) {
  return /*#__PURE__*/React.createElement(TabContainerBehaviour, _extends({}, props, {
    renderComponent: TabContainerSkeleton
  }));
}
export function TabBar(props) {
  return /*#__PURE__*/React.createElement(TabBarBehaviour, _extends({}, props, {
    renderComponent: TabBarSkeleton
  }));
}
export function TabBarNavLine(props) {
  return /*#__PURE__*/React.createElement(TabBarNavLineBehaviour, _extends({}, props, {
    renderComponent: TabBarNavLineSkeleton
  }));
}
export function Tab(props) {
  return /*#__PURE__*/React.createElement(TabBehaviour, _extends({}, props, {
    renderComponent: TabSkeleton
  }));
}

if (false) {
  Tab.docs = {
    componentGroup: componentGroups.Components,
    folderName: componentCategories.UCL
  };
}

export function TabContent(props) {
  return /*#__PURE__*/React.createElement(TabContentBehaviour, _extends({}, props, {
    renderComponent: TabContentSkeleton
  }));
}
export function TabPanel(props) {
  return /*#__PURE__*/React.createElement(TabPanelBehaviour, _extends({}, props, {
    renderComponent: TabPanelSkeleton
  }));
}