import React, { FunctionComponent, useState, ReactNode } from "react"; import style from "./style.module.css"; export interface TabItem { label: string icon?: string render: () => ReactNode } export interface TabsProps { class?: string items: TabItem[] } const Tabs: FunctionComponent = ({ items, ...props }) => { const [ selectedTabIndex, setSelectedTabIndex ] = useState(0); const onTabClick = (tabIndex: number) => { setSelectedTabIndex(tabIndex); }; const selectedTab = items[selectedTabIndex]; return (
{ selectedTab.render() }
); }; export default Tabs;