first commit
This commit is contained in:
@@ -0,0 +1,90 @@
|
||||
import React from "react";
|
||||
import Card from "@mui/material/Card";
|
||||
import { Typography } from "@mui/material";
|
||||
import PropTypes from 'prop-types';
|
||||
import Tabs from '@mui/material/Tabs';
|
||||
import Tab from '@mui/material/Tab';
|
||||
import Box from '@mui/material/Box';
|
||||
|
||||
function TabPanel(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>
|
||||
);
|
||||
}
|
||||
|
||||
TabPanel.propTypes = {
|
||||
children: PropTypes.node,
|
||||
index: PropTypes.number.isRequired,
|
||||
value: PropTypes.number.isRequired,
|
||||
};
|
||||
|
||||
function a11yProps(index) {
|
||||
return {
|
||||
id: `simple-tab-${index}`,
|
||||
'aria-controls': `simple-tabpanel-${index}`,
|
||||
};
|
||||
}
|
||||
|
||||
export default function BasicTabs() {
|
||||
const [value, setValue] = React.useState(0);
|
||||
|
||||
const handleChange = (event, newValue) => {
|
||||
setValue(newValue);
|
||||
};
|
||||
return (
|
||||
<>
|
||||
<Card
|
||||
sx={{
|
||||
boxShadow: "none",
|
||||
borderRadius: "10px",
|
||||
p: "25px",
|
||||
mb: "15px",
|
||||
}}
|
||||
>
|
||||
<Typography
|
||||
as="h3"
|
||||
sx={{
|
||||
fontSize: 18,
|
||||
fontWeight: 500,
|
||||
mb: '10px'
|
||||
}}
|
||||
>
|
||||
Basic Tabs
|
||||
</Typography>
|
||||
|
||||
<Box sx={{ width: '100%' }}>
|
||||
<Box sx={{ borderBottom: 1, borderColor: 'divider' }}>
|
||||
<Tabs value={value} onChange={handleChange} aria-label="basic tabs example">
|
||||
<Tab label="Item One" {...a11yProps(0)} />
|
||||
<Tab label="Item Two" {...a11yProps(1)} />
|
||||
<Tab label="Item Three" {...a11yProps(2)} />
|
||||
</Tabs>
|
||||
</Box>
|
||||
<TabPanel value={value} index={0}>
|
||||
Item One
|
||||
</TabPanel>
|
||||
<TabPanel value={value} index={1}>
|
||||
Item Two
|
||||
</TabPanel>
|
||||
<TabPanel value={value} index={2}>
|
||||
Item Three
|
||||
</TabPanel>
|
||||
</Box>
|
||||
</Card>
|
||||
</>
|
||||
);
|
||||
}
|
||||
@@ -0,0 +1,56 @@
|
||||
import React from "react";
|
||||
import Card from "@mui/material/Card";
|
||||
import { Typography } from "@mui/material";
|
||||
import Box from '@mui/material/Box';
|
||||
import Tab from '@mui/material/Tab';
|
||||
import TabContext from '@mui/lab/TabContext';
|
||||
import TabList from '@mui/lab/TabList';
|
||||
import TabPanel from '@mui/lab/TabPanel';
|
||||
|
||||
export default function ExperimentalAPI() {
|
||||
|
||||
const [value, setValue] = React.useState('1');
|
||||
|
||||
const handleChange = (event, newValue) => {
|
||||
setValue(newValue);
|
||||
};
|
||||
|
||||
return (
|
||||
<>
|
||||
<Card
|
||||
sx={{
|
||||
boxShadow: "none",
|
||||
borderRadius: "10px",
|
||||
p: "25px",
|
||||
mb: "15px",
|
||||
}}
|
||||
>
|
||||
<Typography
|
||||
as="h3"
|
||||
sx={{
|
||||
fontSize: 18,
|
||||
fontWeight: 500,
|
||||
mb: '10px'
|
||||
}}
|
||||
>
|
||||
Experimental API
|
||||
</Typography>
|
||||
|
||||
<Box sx={{ width: '100%', typography: 'body1' }}>
|
||||
<TabContext value={value}>
|
||||
<Box sx={{ borderBottom: 1, borderColor: 'divider' }}>
|
||||
<TabList onChange={handleChange} aria-label="lab API tabs example">
|
||||
<Tab label="Item One" value="1" />
|
||||
<Tab label="Item Two" value="2" />
|
||||
<Tab label="Item Three" value="3" />
|
||||
</TabList>
|
||||
</Box>
|
||||
<TabPanel value="1">Item One</TabPanel>
|
||||
<TabPanel value="2">Item Two</TabPanel>
|
||||
<TabPanel value="3">Item Three</TabPanel>
|
||||
</TabContext>
|
||||
</Box>
|
||||
</Card>
|
||||
</>
|
||||
);
|
||||
}
|
||||
@@ -0,0 +1,53 @@
|
||||
import React from "react";
|
||||
import Card from "@mui/material/Card";
|
||||
import { Typography } from "@mui/material";
|
||||
import Tabs from '@mui/material/Tabs';
|
||||
import Tab from '@mui/material/Tab';
|
||||
import PhoneIcon from '@mui/icons-material/Phone';
|
||||
import FavoriteIcon from '@mui/icons-material/Favorite';
|
||||
import PersonPinIcon from '@mui/icons-material/PersonPin';
|
||||
import PhoneMissedIcon from '@mui/icons-material/PhoneMissed';
|
||||
|
||||
export default function IconPosition() {
|
||||
|
||||
const [value, setValue] = React.useState(0);
|
||||
|
||||
const handleChange = (event, newValue) => {
|
||||
setValue(newValue);
|
||||
};
|
||||
|
||||
return (
|
||||
<>
|
||||
<Card
|
||||
sx={{
|
||||
boxShadow: "none",
|
||||
borderRadius: "10px",
|
||||
p: "25px",
|
||||
mb: "15px",
|
||||
}}
|
||||
>
|
||||
<Typography
|
||||
as="h3"
|
||||
sx={{
|
||||
fontSize: 18,
|
||||
fontWeight: 500,
|
||||
mb: '10px'
|
||||
}}
|
||||
>
|
||||
Icon Position
|
||||
</Typography>
|
||||
|
||||
<Tabs
|
||||
value={value}
|
||||
onChange={handleChange}
|
||||
aria-label="icon position tabs example"
|
||||
>
|
||||
<Tab icon={<PhoneIcon />} label="top" />
|
||||
<Tab icon={<PhoneMissedIcon />} iconPosition="start" label="start" />
|
||||
<Tab icon={<FavoriteIcon />} iconPosition="end" label="end" />
|
||||
<Tab icon={<PersonPinIcon />} iconPosition="bottom" label="bottom" />
|
||||
</Tabs>
|
||||
</Card>
|
||||
</>
|
||||
);
|
||||
}
|
||||
@@ -0,0 +1,47 @@
|
||||
import React from "react";
|
||||
import Card from "@mui/material/Card";
|
||||
import { Typography } from "@mui/material";
|
||||
import Tabs from '@mui/material/Tabs';
|
||||
import Tab from '@mui/material/Tab';
|
||||
import PhoneIcon from '@mui/icons-material/Phone';
|
||||
import FavoriteIcon from '@mui/icons-material/Favorite';
|
||||
import PersonPinIcon from '@mui/icons-material/PersonPin';
|
||||
|
||||
export default function IconTabs() {
|
||||
|
||||
const [value, setValue] = React.useState(0);
|
||||
|
||||
const handleChange = (event, newValue) => {
|
||||
setValue(newValue);
|
||||
};
|
||||
|
||||
return (
|
||||
<>
|
||||
<Card
|
||||
sx={{
|
||||
boxShadow: "none",
|
||||
borderRadius: "10px",
|
||||
p: "25px",
|
||||
mb: "15px",
|
||||
}}
|
||||
>
|
||||
<Typography
|
||||
as="h3"
|
||||
sx={{
|
||||
fontSize: 18,
|
||||
fontWeight: 500,
|
||||
mb: '10px'
|
||||
}}
|
||||
>
|
||||
Icon Tabs
|
||||
</Typography>
|
||||
|
||||
<Tabs value={value} onChange={handleChange} aria-label="icon tabs example">
|
||||
<Tab icon={<PhoneIcon />} aria-label="phone" />
|
||||
<Tab icon={<FavoriteIcon />} aria-label="favorite" />
|
||||
<Tab icon={<PersonPinIcon />} aria-label="person" />
|
||||
</Tabs>
|
||||
</Card>
|
||||
</>
|
||||
);
|
||||
}
|
||||
@@ -0,0 +1,123 @@
|
||||
import React from "react";
|
||||
import Card from "@mui/material/Card";
|
||||
import { Typography } from "@mui/material";
|
||||
import PropTypes from 'prop-types';
|
||||
import Tabs from '@mui/material/Tabs';
|
||||
import Tab from '@mui/material/Tab';
|
||||
import Box from '@mui/material/Box';
|
||||
|
||||
function TabPanel(props) {
|
||||
const { children, value, index, ...other } = props;
|
||||
|
||||
return (
|
||||
<div
|
||||
role="tabpanel"
|
||||
hidden={value !== index}
|
||||
id={`vertical-tabpanel-${index}`}
|
||||
aria-labelledby={`vertical-tab-${index}`}
|
||||
{...other}
|
||||
>
|
||||
{value === index && (
|
||||
<Box sx={{ p: 3 }}>
|
||||
<Typography>{children}</Typography>
|
||||
</Box>
|
||||
)}
|
||||
</div>
|
||||
);
|
||||
}
|
||||
|
||||
TabPanel.propTypes = {
|
||||
children: PropTypes.node,
|
||||
index: PropTypes.number.isRequired,
|
||||
value: PropTypes.number.isRequired,
|
||||
};
|
||||
|
||||
function a11yProps(index) {
|
||||
return {
|
||||
id: `vertical-tab-${index}`,
|
||||
'aria-controls': `vertical-tabpanel-${index}`,
|
||||
};
|
||||
}
|
||||
|
||||
export default function VerticalTabs() {
|
||||
|
||||
const [value, setValue] = React.useState(0);
|
||||
|
||||
const handleChange = (event, newValue) => {
|
||||
setValue(newValue);
|
||||
};
|
||||
|
||||
return (
|
||||
<>
|
||||
<Card
|
||||
sx={{
|
||||
boxShadow: "none",
|
||||
borderRadius: "10px",
|
||||
p: "25px",
|
||||
mb: "15px",
|
||||
}}
|
||||
>
|
||||
<Typography
|
||||
as="h3"
|
||||
sx={{
|
||||
fontSize: 18,
|
||||
fontWeight: 500,
|
||||
mb: '10px'
|
||||
}}
|
||||
>
|
||||
Vertical Tabs
|
||||
</Typography>
|
||||
|
||||
<Box
|
||||
sx={{ flexGrow: 1, bgcolor: 'background.paper', display: 'flex', height: 224 }}
|
||||
className="bg-black"
|
||||
>
|
||||
<Tabs
|
||||
orientation="vertical"
|
||||
variant="scrollable"
|
||||
value={value}
|
||||
onChange={handleChange}
|
||||
aria-label="Vertical tabs example"
|
||||
sx={{ borderRight: 1, borderColor: 'divider' }}
|
||||
>
|
||||
<Tab label="Item One" {...a11yProps(0)} />
|
||||
<Tab label="Item Two" {...a11yProps(1)} />
|
||||
<Tab label="Item Three" {...a11yProps(2)} />
|
||||
<Tab label="Item Four" {...a11yProps(3)} />
|
||||
<Tab label="Item Five" {...a11yProps(4)} />
|
||||
<Tab label="Item Six" {...a11yProps(5)} />
|
||||
<Tab label="Item Seven" {...a11yProps(6)} />
|
||||
</Tabs>
|
||||
|
||||
<TabPanel value={value} index={0}>
|
||||
Item One
|
||||
</TabPanel>
|
||||
|
||||
<TabPanel value={value} index={1}>
|
||||
Item Two
|
||||
</TabPanel>
|
||||
|
||||
<TabPanel value={value} index={2}>
|
||||
Item Three
|
||||
</TabPanel>
|
||||
|
||||
<TabPanel value={value} index={3}>
|
||||
Item Four
|
||||
</TabPanel>
|
||||
|
||||
<TabPanel value={value} index={4}>
|
||||
Item Five
|
||||
</TabPanel>
|
||||
|
||||
<TabPanel value={value} index={5}>
|
||||
Item Six
|
||||
</TabPanel>
|
||||
|
||||
<TabPanel value={value} index={6}>
|
||||
Item Seven
|
||||
</TabPanel>
|
||||
</Box>
|
||||
</Card>
|
||||
</>
|
||||
);
|
||||
}
|
||||
Reference in New Issue
Block a user