Skip to content

Commit

Permalink
Add demos for variant prop and improve demos
Browse files Browse the repository at this point in the history
  • Loading branch information
hbjORbj committed Aug 26, 2022
1 parent e147b16 commit 0e1a7c8
Show file tree
Hide file tree
Showing 8 changed files with 158 additions and 20 deletions.
@@ -1,16 +1,66 @@
import Typography from '@mui/joy/Typography';
import * as React from 'react';
import Box from '@mui/joy/Box';
import CircularProgress from '@mui/joy/CircularProgress';

import Radio from '@mui/joy/Radio';
import RadioGroup from '@mui/joy/RadioGroup';
import Sheet from '@mui/joy/Sheet';

export default function CircularProgressColors() {
const [variant, setVariant] = React.useState('solid');
return (
<Box sx={{ display: 'flex', gap: 2, alignItems: 'center', flexWrap: 'wrap' }}>
<CircularProgress color="primary" />
<CircularProgress color="neutral" />
<CircularProgress color="danger" />
<CircularProgress color="info" />
<CircularProgress color="success" />
<CircularProgress color="warning" />
<Box
sx={{
display: 'flex',
alignItems: 'center',
gap: 3,
}}
>
<Box
sx={{
display: 'grid',
gridTemplateColumns: 'repeat(3, minmax(150px, 1fr))',
gap: 1,
}}
>
<CircularProgress variant={variant} color="primary" />
<CircularProgress variant={variant} color="neutral" />
<CircularProgress variant={variant} color="danger" />
<CircularProgress variant={variant} color="info" />
<CircularProgress variant={variant} color="success" />
<CircularProgress variant={variant} color="warning" />
</Box>
<Sheet
sx={{
background: 'transparent',
pl: 4,
borderLeft: '1px solid',
borderColor: 'divider',
}}
>
<Typography
level="body2"
fontWeight="xl"
id="variant-label"
textColor="text.primary"
mb={1}
>
Variant:
</Typography>
<RadioGroup
size="sm"
aria-labelledby="variant-label"
name="variant"
value={variant}
onChange={(event) => setVariant(event.target.value)}
>
<Radio label="Solid" value="solid" />
<Radio label="Soft" value="soft" />
<Radio label="Outlined" value="outlined" />
<Radio label="Plain" value="plain" />
</RadioGroup>
</Sheet>
</Box>
);
}
@@ -1,16 +1,66 @@
import Typography from '@mui/joy/Typography';
import * as React from 'react';
import Box from '@mui/joy/Box';
import CircularProgress from '@mui/joy/CircularProgress';
import { VariantProp } from '@mui/joy';
import Radio from '@mui/joy/Radio';
import RadioGroup from '@mui/joy/RadioGroup';
import Sheet from '@mui/joy/Sheet';

export default function CircularProgressColors() {
const [variant, setVariant] = React.useState<VariantProp>('solid');
return (
<Box sx={{ display: 'flex', gap: 2, alignItems: 'center', flexWrap: 'wrap' }}>
<CircularProgress color="primary" />
<CircularProgress color="neutral" />
<CircularProgress color="danger" />
<CircularProgress color="info" />
<CircularProgress color="success" />
<CircularProgress color="warning" />
<Box
sx={{
display: 'flex',
alignItems: 'center',
gap: 3,
}}
>
<Box
sx={{
display: 'grid',
gridTemplateColumns: 'repeat(3, minmax(150px, 1fr))',
gap: 1,
}}
>
<CircularProgress variant={variant} color="primary" />
<CircularProgress variant={variant} color="neutral" />
<CircularProgress variant={variant} color="danger" />
<CircularProgress variant={variant} color="info" />
<CircularProgress variant={variant} color="success" />
<CircularProgress variant={variant} color="warning" />
</Box>
<Sheet
sx={{
background: 'transparent',
pl: 4,
borderLeft: '1px solid',
borderColor: 'divider',
}}
>
<Typography
level="body2"
fontWeight="xl"
id="variant-label"
textColor="text.primary"
mb={1}
>
Variant:
</Typography>
<RadioGroup
size="sm"
aria-labelledby="variant-label"
name="variant"
value={variant}
onChange={(event) => setVariant(event.target.value as VariantProp)}
>
<Radio label="Solid" value="solid" />
<Radio label="Soft" value="soft" />
<Radio label="Outlined" value="outlined" />
<Radio label="Plain" value="plain" />
</RadioGroup>
</Sheet>
</Box>
);
}

This file was deleted.

Expand Up @@ -7,6 +7,12 @@ export default function CircularProgressUsage() {
<JoyUsageDemo
componentName="CircularProgress"
data={[
{
propName: 'variant',
knob: 'select',
defaultValue: 'solid',
options: ['plain', 'outlined', 'soft', 'solid'],
},
{
propName: 'color',
knob: 'color',
Expand Down
@@ -0,0 +1,14 @@
import * as React from 'react';
import Box from '@mui/joy/Box';
import CircularProgress from '@mui/joy/CircularProgress';

export default function CircularProgressVariants() {
return (
<Box sx={{ display: 'flex', gap: 2, alignItems: 'center', flexWrap: 'wrap' }}>
<CircularProgress variant="solid" />
<CircularProgress variant="soft" />
<CircularProgress variant="outlined" />
<CircularProgress variant="plain" />
</Box>
);
}
@@ -0,0 +1,14 @@
import * as React from 'react';
import Box from '@mui/joy/Box';
import CircularProgress from '@mui/joy/CircularProgress';

export default function CircularProgressVariants() {
return (
<Box sx={{ display: 'flex', gap: 2, alignItems: 'center', flexWrap: 'wrap' }}>
<CircularProgress variant="solid" />
<CircularProgress variant="soft" />
<CircularProgress variant="outlined" />
<CircularProgress variant="plain" />
</Box>
);
}
@@ -0,0 +1,4 @@
<CircularProgress variant="solid" />
<CircularProgress variant="soft" />
<CircularProgress variant="outlined" />
<CircularProgress variant="plain" />
Expand Up @@ -33,6 +33,12 @@ export default function MyApp() {
}
```

### Variants

The circular progress component supports the four global variants: `solid` (default), `soft`, `outlined` and `plain`.

{{"demo": "CircularProgressVariants.js"}}

### Colors

Every palette included in the theme is available via the `color` prop.
Expand Down

0 comments on commit 0e1a7c8

Please sign in to comment.