norma-library 0.5.145 → 0.5.147

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (170) hide show
  1. package/.babelrc.json +18 -18
  2. package/.prettierignore +10 -10
  3. package/.prettierrc.json +20 -20
  4. package/.storybook/main.ts +20 -20
  5. package/.storybook/preview.ts +15 -15
  6. package/README.md +43 -43
  7. package/commitlint.config.js +1 -1
  8. package/dist/esm/components/StatusModal/StatusModal.d.ts +1 -0
  9. package/dist/esm/components/StatusModal/StatusModal.js +2 -2
  10. package/dist/esm/components/StatusModal/StatusModal.js.map +1 -1
  11. package/dist/esm/components/StatusModal/StatusModal.style.d.ts +3 -1
  12. package/dist/esm/components/StatusModal/StatusModal.style.js +1 -1
  13. package/dist/esm/components/StatusModal/StatusModal.style.js.map +1 -1
  14. package/dist/esm/helpers/colors.d.ts +4 -0
  15. package/dist/esm/helpers/colors.js +30 -0
  16. package/dist/esm/helpers/colors.js.map +1 -1
  17. package/docs/index.md +118 -118
  18. package/package.json +136 -136
  19. package/src/components/Accordion.tsx +39 -39
  20. package/src/components/Avatar.tsx +17 -17
  21. package/src/components/Badge.tsx +14 -14
  22. package/src/components/Box/index.tsx +12 -12
  23. package/src/components/Box/interfaces.ts +3 -3
  24. package/src/components/Box/styles.tsx +22 -22
  25. package/src/components/Breadcrumb/index.tsx +27 -27
  26. package/src/components/Breadcrumb/interface.ts +8 -8
  27. package/src/components/Breadcrumb/styles.tsx +32 -32
  28. package/src/components/Button.tsx +26 -26
  29. package/src/components/Card.tsx +37 -37
  30. package/src/components/ChatMessage.tsx +87 -87
  31. package/src/components/ChatMessageBalloon/ChatMessageBalloon.style.ts +56 -56
  32. package/src/components/ChatMessageBalloon/ChatMessageBalloon.tsx +55 -55
  33. package/src/components/CheckBox.tsx +21 -21
  34. package/src/components/DateInput/index.tsx +34 -34
  35. package/src/components/DateInput/interface.ts +13 -13
  36. package/src/components/DateInput/styles.tsx +27 -27
  37. package/src/components/DatePicker.tsx +67 -67
  38. package/src/components/DropDown.tsx +24 -24
  39. package/src/components/IconButton.tsx +37 -37
  40. package/src/components/Icons.tsx +82 -82
  41. package/src/components/Modal.tsx +103 -103
  42. package/src/components/MultiSelectInput/components/MultiValue/index.tsx +44 -44
  43. package/src/components/MultiSelectInput/components/Option/index.tsx +62 -62
  44. package/src/components/MultiSelectInput/components/Option/styles.tsx +8 -8
  45. package/src/components/MultiSelectInput/index.tsx +60 -60
  46. package/src/components/MultiSelectInput/interfaces.ts +15 -15
  47. package/src/components/MultiSelectInput/styles.tsx +43 -43
  48. package/src/components/Paper.tsx +12 -12
  49. package/src/components/ProgressBar.tsx +71 -71
  50. package/src/components/RadioGroup.tsx +43 -43
  51. package/src/components/RangerSlider.tsx +65 -65
  52. package/src/components/Select.tsx +74 -74
  53. package/src/components/SelectInput/components/Option/index.tsx +61 -61
  54. package/src/components/SelectInput/components/Option/styles.tsx +8 -8
  55. package/src/components/SelectInput/index.tsx +45 -45
  56. package/src/components/SelectInput/interfaces.ts +15 -15
  57. package/src/components/SelectInput/styles.tsx +31 -31
  58. package/src/components/StatusModal/StatusModal.style.tsx +75 -75
  59. package/src/components/StatusModal/StatusModal.tsx +58 -57
  60. package/src/components/Svgs.tsx +506 -506
  61. package/src/components/Table/components/header/index.tsx +86 -86
  62. package/src/components/Table/components/header/styles.tsx +59 -59
  63. package/src/components/Table/components/index.tsx +8 -8
  64. package/src/components/Table/components/pagination/index.tsx +39 -39
  65. package/src/components/Table/components/pagination/styles.tsx +28 -28
  66. package/src/components/Table/components/tbody/index.tsx +30 -30
  67. package/src/components/Table/components/tbody/styles.tsx +4 -4
  68. package/src/components/Table/index.tsx +317 -317
  69. package/src/components/Table/interface.ts +23 -23
  70. package/src/components/Table/styles.tsx +117 -117
  71. package/src/components/Tabs.tsx +105 -105
  72. package/src/components/Tag.tsx +33 -33
  73. package/src/components/TextField.tsx +19 -19
  74. package/src/components/TextInput/index.tsx +37 -37
  75. package/src/components/TextInput/interface.ts +9 -9
  76. package/src/components/TextInput/styles.tsx +23 -23
  77. package/src/components/TimeLine.tsx +89 -89
  78. package/src/components/TimePicker.tsx +78 -78
  79. package/src/components/Typography/Text/index.tsx +20 -20
  80. package/src/components/Typography/Text/interfaces.ts +5 -5
  81. package/src/components/Typography/Text/styles.tsx +40 -40
  82. package/src/components/Typography/Title/index.tsx +22 -22
  83. package/src/components/Typography/Title/interfaces.ts +6 -6
  84. package/src/components/Typography/Title/styles.tsx +40 -40
  85. package/src/components/Typography/index.tsx +6 -6
  86. package/src/components/UncontrolledTable/components/header/index.tsx +63 -63
  87. package/src/components/UncontrolledTable/components/header/styles.tsx +60 -60
  88. package/src/components/UncontrolledTable/components/index.tsx +8 -8
  89. package/src/components/UncontrolledTable/components/pagination/index.tsx +43 -43
  90. package/src/components/UncontrolledTable/components/pagination/styles.tsx +28 -28
  91. package/src/components/UncontrolledTable/components/tbody/index.tsx +33 -33
  92. package/src/components/UncontrolledTable/components/tbody/styles.tsx +25 -25
  93. package/src/components/UncontrolledTable/index.tsx +221 -221
  94. package/src/components/UncontrolledTable/interface.ts +43 -43
  95. package/src/components/UncontrolledTable/styles.tsx +116 -116
  96. package/src/components/UncontrolledTabs/UncontrolledTabs.style.tsx +56 -56
  97. package/src/components/UncontrolledTabs/UncontrolledTabs.tsx +68 -68
  98. package/src/components/index.ts +24 -24
  99. package/src/helpers/alignments.ts +14 -14
  100. package/src/helpers/borders.ts +18 -18
  101. package/src/helpers/colors.ts +241 -206
  102. package/src/helpers/index.ts +5 -5
  103. package/src/helpers/radios.ts +24 -24
  104. package/src/helpers/sizes.ts +72 -72
  105. package/src/hooks/useClickOutside.tsx +18 -18
  106. package/src/index.ts +66 -66
  107. package/src/interfaces/Accordion.ts +12 -12
  108. package/src/interfaces/Avatar.tsx +15 -15
  109. package/src/interfaces/Badge.ts +19 -19
  110. package/src/interfaces/Button.ts +22 -22
  111. package/src/interfaces/Card.ts +11 -11
  112. package/src/interfaces/ChatMessage.ts +12 -12
  113. package/src/interfaces/ChatMessageBalloon.ts +17 -17
  114. package/src/interfaces/CheckBox.ts +27 -27
  115. package/src/interfaces/DatePicker.ts +13 -13
  116. package/src/interfaces/DropDown.ts +14 -14
  117. package/src/interfaces/IconButton.ts +22 -22
  118. package/src/interfaces/Icons.ts +17 -17
  119. package/src/interfaces/Modal.ts +18 -18
  120. package/src/interfaces/Paper.ts +12 -12
  121. package/src/interfaces/ProgressBar.ts +29 -29
  122. package/src/interfaces/RadioGroup.ts +23 -23
  123. package/src/interfaces/RangerSlider.ts +21 -21
  124. package/src/interfaces/Select.ts +17 -17
  125. package/src/interfaces/Tabs.ts +19 -19
  126. package/src/interfaces/Tag.ts +17 -17
  127. package/src/interfaces/TextField.ts +44 -44
  128. package/src/interfaces/TimeLine.ts +11 -11
  129. package/src/interfaces/TimePicker.ts +13 -13
  130. package/src/interfaces/index.ts +23 -23
  131. package/src/providers/NormaProvider.tsx +13 -13
  132. package/src/sample-data-2.json +178 -178
  133. package/src/sample-data.json +177 -177
  134. package/src/stories/Accordion.stories.tsx +65 -65
  135. package/src/stories/Avatar.stories.tsx +123 -123
  136. package/src/stories/Badge.stories.tsx +39 -39
  137. package/src/stories/Box.stories.tsx +35 -35
  138. package/src/stories/Breadcrumb.stories.tsx +44 -44
  139. package/src/stories/Button.stories.tsx +93 -93
  140. package/src/stories/Card.stories.tsx +39 -39
  141. package/src/stories/ChatMessage.stories.tsx +84 -84
  142. package/src/stories/ChatMessageBalloon.stories.tsx +108 -108
  143. package/src/stories/CheckBox.stories.tsx +88 -88
  144. package/src/stories/DateInput.stories.tsx +51 -51
  145. package/src/stories/DatePicker.stories.tsx +50 -50
  146. package/src/stories/DropDown.stories.tsx +57 -57
  147. package/src/stories/IconButton.stories.tsx +78 -78
  148. package/src/stories/Modal.stories.tsx +246 -246
  149. package/src/stories/ModalStatus.stories.tsx +46 -46
  150. package/src/stories/MultiSelectInput.stories.tsx +90 -90
  151. package/src/stories/Paper.stories.tsx +53 -53
  152. package/src/stories/ProgressBar.stories.tsx +116 -116
  153. package/src/stories/RadioGroup.stories.tsx +87 -87
  154. package/src/stories/RangerSlider.stories.tsx +149 -149
  155. package/src/stories/Select.stories.tsx +100 -100
  156. package/src/stories/SelectInput.stories.tsx +78 -78
  157. package/src/stories/Table.stories.tsx +372 -372
  158. package/src/stories/Tabs.stories.tsx +61 -61
  159. package/src/stories/Tag.stories.tsx +56 -56
  160. package/src/stories/Text.stories.tsx +37 -37
  161. package/src/stories/TextField.stories.tsx +310 -310
  162. package/src/stories/TextInput.stories.tsx +52 -52
  163. package/src/stories/TimeLine.stories.tsx +35 -35
  164. package/src/stories/TimePicker.stories.tsx +87 -87
  165. package/src/stories/Title.stories.tsx +43 -43
  166. package/src/stories/UncontrolledTable.stories.tsx +305 -305
  167. package/src/stories/UncontrolledTabs.stories.tsx +63 -63
  168. package/src/styles/globals.scss +17 -17
  169. package/src/types/index.ts +204 -204
  170. package/vite.config.ts +15 -15
@@ -1,91 +1,91 @@
1
- import React, { useState } from 'react';
2
- import MultiSelectInput from '../components/MultiSelectInput';
3
-
4
- export default {
5
- title: 'Form/MultiSelectInput',
6
- component: MultiSelectInput,
7
- tags: ['autodocs'],
8
- parameters: {
9
- layout: 'centered',
10
- },
11
- argTypes: {
12
- className: {
13
- description: 'Adicione uma classe.',
14
- },
15
- label: {
16
- description: 'Adicione uma label.'
17
- },
18
- onChange: {
19
- description: 'Função para capturar o valor quando alterado.'
20
- },
21
- placeholder: {
22
- description: 'Adicione um placeholder.'
23
- },
24
- options: {
25
- description: 'Lista de valores a ser exibido.'
26
- },
27
- value: {
28
- description: 'Valor selecionado.'
29
- },
30
- isSearchable: {
31
- description: 'Habilita a função de buscar um valor.'
32
- },
33
- isClearable: {
34
- description: 'Habilita a função de limpar o item selecionado.'
35
- },
36
- disabled: {
37
- description: 'Habilita ou desabilita.'
38
- }
39
- }
40
- }
41
-
42
- export const Default = (args) => {
43
- const options = [
44
- {
45
- label: 'options 1',
46
- value: 'value 1'
47
- },
48
- {
49
- label: 'options 2',
50
- value: 'value 2'
51
- },
52
- {
53
- label: 'options 3',
54
- value: 'value 3'
55
- },
56
- {
57
- label: 'options 4',
58
- value: 'value 4'
59
- },
60
- {
61
- label: 'options 5',
62
- value: 'value 5'
63
- },
64
- {
65
- label: 'options 6',
66
- value: 'value 6'
67
- }
68
- ]
69
- const [selectedValue, setSelectedValue] = useState<any>(options[0])
70
- return (
71
- <div style={{
72
- width: 300
73
- }}>
74
- <MultiSelectInput
75
- options={options}
76
- value={selectedValue}
77
- onChange={(value) => setSelectedValue(value)}
78
- {...args}
79
- />
80
- </div>
81
- )
82
- }
83
-
84
- Default.args = {
85
- className: '',
86
- label: 'Selecione:',
87
- placeholder: 'Selecione uma opção',
88
- disabled: false,
89
- isSearchable: false,
90
- isClearable: false,
1
+ import React, { useState } from 'react';
2
+ import MultiSelectInput from '../components/MultiSelectInput';
3
+
4
+ export default {
5
+ title: 'Form/MultiSelectInput',
6
+ component: MultiSelectInput,
7
+ tags: ['autodocs'],
8
+ parameters: {
9
+ layout: 'centered',
10
+ },
11
+ argTypes: {
12
+ className: {
13
+ description: 'Adicione uma classe.',
14
+ },
15
+ label: {
16
+ description: 'Adicione uma label.'
17
+ },
18
+ onChange: {
19
+ description: 'Função para capturar o valor quando alterado.'
20
+ },
21
+ placeholder: {
22
+ description: 'Adicione um placeholder.'
23
+ },
24
+ options: {
25
+ description: 'Lista de valores a ser exibido.'
26
+ },
27
+ value: {
28
+ description: 'Valor selecionado.'
29
+ },
30
+ isSearchable: {
31
+ description: 'Habilita a função de buscar um valor.'
32
+ },
33
+ isClearable: {
34
+ description: 'Habilita a função de limpar o item selecionado.'
35
+ },
36
+ disabled: {
37
+ description: 'Habilita ou desabilita.'
38
+ }
39
+ }
40
+ }
41
+
42
+ export const Default = (args) => {
43
+ const options = [
44
+ {
45
+ label: 'options 1',
46
+ value: 'value 1'
47
+ },
48
+ {
49
+ label: 'options 2',
50
+ value: 'value 2'
51
+ },
52
+ {
53
+ label: 'options 3',
54
+ value: 'value 3'
55
+ },
56
+ {
57
+ label: 'options 4',
58
+ value: 'value 4'
59
+ },
60
+ {
61
+ label: 'options 5',
62
+ value: 'value 5'
63
+ },
64
+ {
65
+ label: 'options 6',
66
+ value: 'value 6'
67
+ }
68
+ ]
69
+ const [selectedValue, setSelectedValue] = useState<any>(options[0])
70
+ return (
71
+ <div style={{
72
+ width: 300
73
+ }}>
74
+ <MultiSelectInput
75
+ options={options}
76
+ value={selectedValue}
77
+ onChange={(value) => setSelectedValue(value)}
78
+ {...args}
79
+ />
80
+ </div>
81
+ )
82
+ }
83
+
84
+ Default.args = {
85
+ className: '',
86
+ label: 'Selecione:',
87
+ placeholder: 'Selecione uma opção',
88
+ disabled: false,
89
+ isSearchable: false,
90
+ isClearable: false,
91
91
  }
@@ -1,53 +1,53 @@
1
- import React from 'react';
2
- import { Paper } from '../components';
3
- import type { Meta, StoryObj } from '@storybook/react';
4
-
5
- import Grid from '@mui/material/Grid';
6
- import Box from '@mui/material/Box';
7
- import { ThemeProvider, styled } from '@mui/material/styles';
8
- import { themes } from '../helpers';
9
-
10
- const Item = styled(Paper)(({ theme }) => ({
11
- ...theme.typography.body2,
12
- textAlign: 'center',
13
- height: 60,
14
- lineHeight: '60px',
15
- }));
16
-
17
- const meta = {
18
- title: 'Layout/Paper',
19
- component: Paper,
20
- parameters: {
21
- // layout: "centered",
22
- },
23
- tags: ['autodocs'],
24
- argTypes: {},
25
- } satisfies Meta<typeof Paper>;
26
-
27
- export default meta;
28
-
29
- type Story = StoryObj<typeof meta>;
30
-
31
- const defaultArgs = {};
32
-
33
- export const PaperElevations = () => (
34
- <Grid container spacing={2}>
35
- <Grid item xs={12}>
36
- <Box
37
- sx={{
38
- p: 2,
39
- bgcolor: 'background.default',
40
- display: 'grid',
41
- gridTemplateColumns: { md: '1fr 1fr' },
42
- gap: 2,
43
- }}
44
- >
45
- {[0, 1, 2, 3, 4, 6, 8, 12, 16, 24].map(elevation => (
46
- <Item key={elevation} elevation={elevation}>
47
- {`elevation=${elevation}`}
48
- </Item>
49
- ))}
50
- </Box>
51
- </Grid>
52
- </Grid>
53
- );
1
+ import React from 'react';
2
+ import { Paper } from '../components';
3
+ import type { Meta, StoryObj } from '@storybook/react';
4
+
5
+ import Grid from '@mui/material/Grid';
6
+ import Box from '@mui/material/Box';
7
+ import { ThemeProvider, styled } from '@mui/material/styles';
8
+ import { themes } from '../helpers';
9
+
10
+ const Item = styled(Paper)(({ theme }) => ({
11
+ ...theme.typography.body2,
12
+ textAlign: 'center',
13
+ height: 60,
14
+ lineHeight: '60px',
15
+ }));
16
+
17
+ const meta = {
18
+ title: 'Layout/Paper',
19
+ component: Paper,
20
+ parameters: {
21
+ // layout: "centered",
22
+ },
23
+ tags: ['autodocs'],
24
+ argTypes: {},
25
+ } satisfies Meta<typeof Paper>;
26
+
27
+ export default meta;
28
+
29
+ type Story = StoryObj<typeof meta>;
30
+
31
+ const defaultArgs = {};
32
+
33
+ export const PaperElevations = () => (
34
+ <Grid container spacing={2}>
35
+ <Grid item xs={12}>
36
+ <Box
37
+ sx={{
38
+ p: 2,
39
+ bgcolor: 'background.default',
40
+ display: 'grid',
41
+ gridTemplateColumns: { md: '1fr 1fr' },
42
+ gap: 2,
43
+ }}
44
+ >
45
+ {[0, 1, 2, 3, 4, 6, 8, 12, 16, 24].map(elevation => (
46
+ <Item key={elevation} elevation={elevation}>
47
+ {`elevation=${elevation}`}
48
+ </Item>
49
+ ))}
50
+ </Box>
51
+ </Grid>
52
+ </Grid>
53
+ );
@@ -1,116 +1,116 @@
1
- import React from 'react';
2
- import type { Meta, StoryObj } from '@storybook/react';
3
- import { ProgressBar } from '../components';
4
- import { ColorVariant } from '../types';
5
-
6
- const colors: ColorVariant[] = ['inherit', 'primary', 'secondary', 'success', 'error', 'info', 'warning'];
7
-
8
- const meta = {
9
- title: 'Display/ProgressBar',
10
- component: ProgressBar,
11
- parameters: {
12
- layout: 'centered',
13
- },
14
- tags: ['autodocs'],
15
- argTypes: {},
16
- } satisfies Meta<typeof ProgressBar>;
17
-
18
- export default meta;
19
-
20
- type Story = StoryObj<typeof meta>;
21
-
22
- const defaultArgs = {
23
- disabled: false,
24
- };
25
-
26
- export const Playground: Story = {
27
- args: {
28
- label: 'Progress',
29
- total: 100,
30
- color: 'primary',
31
- value: 10,
32
- },
33
- };
34
-
35
- export const ProgressBarBasic = () => (
36
- <div style={{ display: 'flex', gap: '1rem', width: '320px' }}>
37
- <div style={{ position: 'relative', width: '100%' }}>
38
- <ProgressBar value={40} total={100} color="primary" />
39
- </div>
40
- </div>
41
- );
42
-
43
- ProgressBarBasic.storyName = 'ProgressBar Basic';
44
-
45
- export const ProgressBarTitle: Story = () => (
46
- <div style={{ display: 'flex', gap: '1rem', width: '320px' }}>
47
- <div style={{ position: 'relative', width: '100%' }}>
48
- <ProgressBar value={10} label="Progress" total={100} />
49
- </div>
50
- </div>
51
- );
52
-
53
- ProgressBarTitle.storyName = 'ProgressBar With Title';
54
-
55
- export const ProgressBarColors: Story = () => (
56
- <>
57
- <div style={{ display: 'flex', gap: '1rem', width: '480px', marginBottom: 30 }}>
58
- <div style={{ position: 'relative', flex: 1, width: '230px' }}>
59
- <ProgressBar value={100} total={300} color="inherit" label="Progress Inherit" />
60
- </div>
61
- <div style={{ position: 'relative', flex: 1, width: '230px' }}>
62
- <ProgressBar value={125} total={1000} color="secondary" label="Progress secondary" />
63
- </div>
64
- </div>
65
- <div style={{ display: 'flex', gap: '1rem', width: '480px', marginBottom: 30 }}>
66
- <div style={{ position: 'relative', flex: 1, width: '230px' }}>
67
- <ProgressBar value={22} total={100} color="error" label="Progress error" />
68
- </div>
69
- <div style={{ position: 'relative', flex: 1, width: '230px' }}>
70
- <ProgressBar value={24} total={100} color="info" label="Progress info" />
71
- </div>
72
- </div>
73
- <div style={{ display: 'flex', gap: '1rem', width: '480px', marginBottom: 30 }}>
74
- <div style={{ display: 'flex', gap: '1rem', marginBottom: 15 }}>
75
- <div style={{ position: 'relative', flex: 1, width: '230px' }}>
76
- <ProgressBar value={45} total={100} color="success" label="Progress success" />
77
- </div>
78
- <div style={{ position: 'relative', flex: 1, width: '230px' }}>
79
- <ProgressBar value={86} total={100} color="warning" label="Progress warning" />
80
- </div>
81
- </div>
82
- </div>
83
- </>
84
- );
85
-
86
- ProgressBarColors.storyName = 'ProgressBar Colors';
87
-
88
- export const ProgressBarCustomColors: Story = () => (
89
- <>
90
- <div style={{ display: 'flex', gap: '1rem', width: '480px', marginBottom: 30 }}>
91
- <div style={{ position: 'relative', flex: 1, width: '230px' }}>
92
- <ProgressBar
93
- value={50}
94
- total={100}
95
- colorCustom={{ root: 'rgba(179, 222, 105, 0.2)', bar: '#b3de69' }}
96
- htmlLabel={<div>Custom Color Green</div>}
97
- />
98
- </div>
99
- </div>
100
- <div style={{ display: 'flex', gap: '1rem', width: '480px', marginBottom: 30 }}>
101
- <div style={{ position: 'relative', flex: 1, width: '230px' }}>
102
- <ProgressBar
103
- value={75}
104
- total={100}
105
- colorCustom={{ root: 'rgba(0, 191, 255, 0.2)', bar: '#00bfff' }}
106
- label="Custom Color Blue"
107
- h={5}
108
- hideValue
109
- fSize='12px'
110
- />
111
- </div>
112
- </div>
113
- </>
114
- );
115
-
116
- ProgressBarCustomColors.storyName = 'ProgressBar Custom Colors';
1
+ import React from 'react';
2
+ import type { Meta, StoryObj } from '@storybook/react';
3
+ import { ProgressBar } from '../components';
4
+ import { ColorVariant } from '../types';
5
+
6
+ const colors: ColorVariant[] = ['inherit', 'primary', 'secondary', 'success', 'error', 'info', 'warning'];
7
+
8
+ const meta = {
9
+ title: 'Display/ProgressBar',
10
+ component: ProgressBar,
11
+ parameters: {
12
+ layout: 'centered',
13
+ },
14
+ tags: ['autodocs'],
15
+ argTypes: {},
16
+ } satisfies Meta<typeof ProgressBar>;
17
+
18
+ export default meta;
19
+
20
+ type Story = StoryObj<typeof meta>;
21
+
22
+ const defaultArgs = {
23
+ disabled: false,
24
+ };
25
+
26
+ export const Playground: Story = {
27
+ args: {
28
+ label: 'Progress',
29
+ total: 100,
30
+ color: 'primary',
31
+ value: 10,
32
+ },
33
+ };
34
+
35
+ export const ProgressBarBasic = () => (
36
+ <div style={{ display: 'flex', gap: '1rem', width: '320px' }}>
37
+ <div style={{ position: 'relative', width: '100%' }}>
38
+ <ProgressBar value={40} total={100} color="primary" />
39
+ </div>
40
+ </div>
41
+ );
42
+
43
+ ProgressBarBasic.storyName = 'ProgressBar Basic';
44
+
45
+ export const ProgressBarTitle: Story = () => (
46
+ <div style={{ display: 'flex', gap: '1rem', width: '320px' }}>
47
+ <div style={{ position: 'relative', width: '100%' }}>
48
+ <ProgressBar value={10} label="Progress" total={100} />
49
+ </div>
50
+ </div>
51
+ );
52
+
53
+ ProgressBarTitle.storyName = 'ProgressBar With Title';
54
+
55
+ export const ProgressBarColors: Story = () => (
56
+ <>
57
+ <div style={{ display: 'flex', gap: '1rem', width: '480px', marginBottom: 30 }}>
58
+ <div style={{ position: 'relative', flex: 1, width: '230px' }}>
59
+ <ProgressBar value={100} total={300} color="inherit" label="Progress Inherit" />
60
+ </div>
61
+ <div style={{ position: 'relative', flex: 1, width: '230px' }}>
62
+ <ProgressBar value={125} total={1000} color="secondary" label="Progress secondary" />
63
+ </div>
64
+ </div>
65
+ <div style={{ display: 'flex', gap: '1rem', width: '480px', marginBottom: 30 }}>
66
+ <div style={{ position: 'relative', flex: 1, width: '230px' }}>
67
+ <ProgressBar value={22} total={100} color="error" label="Progress error" />
68
+ </div>
69
+ <div style={{ position: 'relative', flex: 1, width: '230px' }}>
70
+ <ProgressBar value={24} total={100} color="info" label="Progress info" />
71
+ </div>
72
+ </div>
73
+ <div style={{ display: 'flex', gap: '1rem', width: '480px', marginBottom: 30 }}>
74
+ <div style={{ display: 'flex', gap: '1rem', marginBottom: 15 }}>
75
+ <div style={{ position: 'relative', flex: 1, width: '230px' }}>
76
+ <ProgressBar value={45} total={100} color="success" label="Progress success" />
77
+ </div>
78
+ <div style={{ position: 'relative', flex: 1, width: '230px' }}>
79
+ <ProgressBar value={86} total={100} color="warning" label="Progress warning" />
80
+ </div>
81
+ </div>
82
+ </div>
83
+ </>
84
+ );
85
+
86
+ ProgressBarColors.storyName = 'ProgressBar Colors';
87
+
88
+ export const ProgressBarCustomColors: Story = () => (
89
+ <>
90
+ <div style={{ display: 'flex', gap: '1rem', width: '480px', marginBottom: 30 }}>
91
+ <div style={{ position: 'relative', flex: 1, width: '230px' }}>
92
+ <ProgressBar
93
+ value={50}
94
+ total={100}
95
+ colorCustom={{ root: 'rgba(179, 222, 105, 0.2)', bar: '#b3de69' }}
96
+ htmlLabel={<div>Custom Color Green</div>}
97
+ />
98
+ </div>
99
+ </div>
100
+ <div style={{ display: 'flex', gap: '1rem', width: '480px', marginBottom: 30 }}>
101
+ <div style={{ position: 'relative', flex: 1, width: '230px' }}>
102
+ <ProgressBar
103
+ value={75}
104
+ total={100}
105
+ colorCustom={{ root: 'rgba(0, 191, 255, 0.2)', bar: '#00bfff' }}
106
+ label="Custom Color Blue"
107
+ h={5}
108
+ hideValue
109
+ fSize='12px'
110
+ />
111
+ </div>
112
+ </div>
113
+ </>
114
+ );
115
+
116
+ ProgressBarCustomColors.storyName = 'ProgressBar Custom Colors';