import { Tabs, Tab } from '@material-ui/core'; import { useEffect } from 'react'; import { useHistory, useParams } from 'react-router-dom'; import useFeature from '../../../hooks/api/getters/useFeature/useFeature'; import useTabs from '../../../hooks/useTabs'; import { IFeatureViewParams } from '../../../interfaces/params'; import TabPanel from '../../common/TabNav/TabPanel'; import FeatureStrategies from './FeatureStrategies/FeatureStrategies'; import { useStyles } from './FeatureView2.styles'; import FeatureViewEnvironment from './FeatureViewEnvironment/FeatureViewEnvironment'; import FeatureViewMetaData from './FeatureViewMetaData/FeatureViewMetaData'; const FeatureView2 = () => { const { projectId, featureId, activeTab } = useParams(); const { feature } = useFeature(projectId, featureId); const { a11yProps, activeTabIdx, setActiveTab } = useTabs(0); const styles = useStyles(); const history = useHistory(); const basePath = `/projects/${projectId}/features2/${featureId}`; useEffect(() => { const tabIdx = tabData.findIndex(tab => tab.name === activeTab); setActiveTab(tabIdx); /* eslint-disable-next-line */ }, []); const renderOverview = () => { return (
{feature?.environments?.map(env => { return ( ); })}
); }; const tabData = [ { title: 'Overview', component: renderOverview(), path: `${basePath}/overview`, name: 'overview', }, { title: 'Strategies', component: , path: `${basePath}/strategies`, name: 'strategies', }, ]; const renderTabs = () => { return tabData.map((tab, index) => { return ( { setActiveTab(index); history.push(tab.path); }} className={styles.tabButton} /> ); }); }; const renderTabContent = () => { return tabData.map((tab, index) => { return ( {tab.component} ); }); }; return ( <>

{feature.name}

{ setActiveTab(tabId); }} indicatorColor="primary" textColor="primary" className={styles.tabNavigation} > {renderTabs()}
{renderTabContent()} ); }; export default FeatureView2;