42 lines
1.1 KiB
JavaScript
42 lines
1.1 KiB
JavaScript
/*
|
|
Кастомный Tab
|
|
*/
|
|
|
|
//---------------------
|
|
//Подключение библиотек
|
|
//---------------------
|
|
|
|
import React from "react"; //Классы React
|
|
import PropTypes from "prop-types"; //Контроль свойств компонента
|
|
import { Box, Typography } from "@mui/material"; //Интерфейсные компоненты
|
|
|
|
//-----------
|
|
//Тело модуля
|
|
//-----------
|
|
|
|
const CustomTabPanel = props => {
|
|
const { children, value, index, ...other } = props;
|
|
|
|
return (
|
|
<div role="tabpanel" hidden={value !== index} id={`simple-tabpanel-${index}`} aria-labelledby={`simple-tab-${index}`} {...other}>
|
|
{value === index && (
|
|
<Box sx={{ p: 3 }}>
|
|
<Typography>{children}</Typography>
|
|
</Box>
|
|
)}
|
|
</div>
|
|
);
|
|
};
|
|
|
|
CustomTabPanel.propTypes = {
|
|
children: PropTypes.node,
|
|
index: PropTypes.number.isRequired,
|
|
value: PropTypes.number.isRequired
|
|
};
|
|
|
|
//----------------
|
|
//Интерфейс модуля
|
|
//----------------
|
|
|
|
export { CustomTabPanel };
|