norma-library 0.5.147 → 0.5.149

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 (173) 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/UncontrolledTable/components/header/index.js +7 -7
  9. package/dist/esm/components/UncontrolledTable/components/header/index.js.map +1 -1
  10. package/dist/esm/components/UncontrolledTable/components/header/styles.js +2 -2
  11. package/dist/esm/components/UncontrolledTable/components/header/styles.js.map +1 -1
  12. package/dist/esm/components/UncontrolledTable/components/tbody/styles.js +7 -1
  13. package/dist/esm/components/UncontrolledTable/components/tbody/styles.js.map +1 -1
  14. package/dist/esm/components/UncontrolledTable/styles.js +7 -1
  15. package/dist/esm/components/UncontrolledTable/styles.js.map +1 -1
  16. package/dist/esm/utils/styledBreakpoints.d.ts +10 -0
  17. package/dist/esm/utils/styledBreakpoints.js +12 -0
  18. package/dist/esm/utils/styledBreakpoints.js.map +1 -0
  19. package/docs/index.md +118 -118
  20. package/package.json +136 -136
  21. package/src/components/Accordion.tsx +39 -39
  22. package/src/components/Avatar.tsx +17 -17
  23. package/src/components/Badge.tsx +14 -14
  24. package/src/components/Box/index.tsx +12 -12
  25. package/src/components/Box/interfaces.ts +3 -3
  26. package/src/components/Box/styles.tsx +22 -22
  27. package/src/components/Breadcrumb/index.tsx +27 -27
  28. package/src/components/Breadcrumb/interface.ts +8 -8
  29. package/src/components/Breadcrumb/styles.tsx +32 -32
  30. package/src/components/Button.tsx +26 -26
  31. package/src/components/Card.tsx +37 -37
  32. package/src/components/ChatMessage.tsx +87 -87
  33. package/src/components/ChatMessageBalloon/ChatMessageBalloon.style.ts +56 -56
  34. package/src/components/ChatMessageBalloon/ChatMessageBalloon.tsx +55 -55
  35. package/src/components/CheckBox.tsx +21 -21
  36. package/src/components/DateInput/index.tsx +34 -34
  37. package/src/components/DateInput/interface.ts +13 -13
  38. package/src/components/DateInput/styles.tsx +27 -27
  39. package/src/components/DatePicker.tsx +67 -67
  40. package/src/components/DropDown.tsx +24 -24
  41. package/src/components/IconButton.tsx +37 -37
  42. package/src/components/Icons.tsx +82 -82
  43. package/src/components/Modal.tsx +103 -103
  44. package/src/components/MultiSelectInput/components/MultiValue/index.tsx +44 -44
  45. package/src/components/MultiSelectInput/components/Option/index.tsx +62 -62
  46. package/src/components/MultiSelectInput/components/Option/styles.tsx +8 -8
  47. package/src/components/MultiSelectInput/index.tsx +60 -60
  48. package/src/components/MultiSelectInput/interfaces.ts +15 -15
  49. package/src/components/MultiSelectInput/styles.tsx +43 -43
  50. package/src/components/Paper.tsx +12 -12
  51. package/src/components/ProgressBar.tsx +71 -71
  52. package/src/components/RadioGroup.tsx +43 -43
  53. package/src/components/RangerSlider.tsx +65 -65
  54. package/src/components/Select.tsx +74 -74
  55. package/src/components/SelectInput/components/Option/index.tsx +61 -61
  56. package/src/components/SelectInput/components/Option/styles.tsx +8 -8
  57. package/src/components/SelectInput/index.tsx +45 -45
  58. package/src/components/SelectInput/interfaces.ts +15 -15
  59. package/src/components/SelectInput/styles.tsx +31 -31
  60. package/src/components/StatusModal/StatusModal.style.tsx +75 -75
  61. package/src/components/StatusModal/StatusModal.tsx +58 -58
  62. package/src/components/Svgs.tsx +506 -506
  63. package/src/components/Table/components/header/index.tsx +86 -86
  64. package/src/components/Table/components/header/styles.tsx +59 -59
  65. package/src/components/Table/components/index.tsx +8 -8
  66. package/src/components/Table/components/pagination/index.tsx +39 -39
  67. package/src/components/Table/components/pagination/styles.tsx +28 -28
  68. package/src/components/Table/components/tbody/index.tsx +30 -30
  69. package/src/components/Table/components/tbody/styles.tsx +4 -4
  70. package/src/components/Table/index.tsx +317 -317
  71. package/src/components/Table/interface.ts +23 -23
  72. package/src/components/Table/styles.tsx +117 -117
  73. package/src/components/Tabs.tsx +105 -105
  74. package/src/components/Tag.tsx +33 -33
  75. package/src/components/TextField.tsx +19 -19
  76. package/src/components/TextInput/index.tsx +37 -37
  77. package/src/components/TextInput/interface.ts +9 -9
  78. package/src/components/TextInput/styles.tsx +23 -23
  79. package/src/components/TimeLine.tsx +89 -89
  80. package/src/components/TimePicker.tsx +78 -78
  81. package/src/components/Typography/Text/index.tsx +20 -20
  82. package/src/components/Typography/Text/interfaces.ts +5 -5
  83. package/src/components/Typography/Text/styles.tsx +40 -40
  84. package/src/components/Typography/Title/index.tsx +22 -22
  85. package/src/components/Typography/Title/interfaces.ts +6 -6
  86. package/src/components/Typography/Title/styles.tsx +40 -40
  87. package/src/components/Typography/index.tsx +6 -6
  88. package/src/components/UncontrolledTable/components/header/index.tsx +65 -63
  89. package/src/components/UncontrolledTable/components/header/styles.tsx +63 -60
  90. package/src/components/UncontrolledTable/components/index.tsx +8 -8
  91. package/src/components/UncontrolledTable/components/pagination/index.tsx +43 -43
  92. package/src/components/UncontrolledTable/components/pagination/styles.tsx +28 -28
  93. package/src/components/UncontrolledTable/components/tbody/index.tsx +33 -33
  94. package/src/components/UncontrolledTable/components/tbody/styles.tsx +32 -25
  95. package/src/components/UncontrolledTable/index.tsx +221 -221
  96. package/src/components/UncontrolledTable/interface.ts +43 -43
  97. package/src/components/UncontrolledTable/styles.tsx +123 -116
  98. package/src/components/UncontrolledTabs/UncontrolledTabs.style.tsx +56 -56
  99. package/src/components/UncontrolledTabs/UncontrolledTabs.tsx +68 -68
  100. package/src/components/index.ts +24 -24
  101. package/src/helpers/alignments.ts +14 -14
  102. package/src/helpers/borders.ts +18 -18
  103. package/src/helpers/colors.ts +241 -241
  104. package/src/helpers/index.ts +5 -5
  105. package/src/helpers/radios.ts +24 -24
  106. package/src/helpers/sizes.ts +72 -72
  107. package/src/hooks/useClickOutside.tsx +18 -18
  108. package/src/index.ts +66 -66
  109. package/src/interfaces/Accordion.ts +12 -12
  110. package/src/interfaces/Avatar.tsx +15 -15
  111. package/src/interfaces/Badge.ts +19 -19
  112. package/src/interfaces/Button.ts +22 -22
  113. package/src/interfaces/Card.ts +11 -11
  114. package/src/interfaces/ChatMessage.ts +12 -12
  115. package/src/interfaces/ChatMessageBalloon.ts +17 -17
  116. package/src/interfaces/CheckBox.ts +27 -27
  117. package/src/interfaces/DatePicker.ts +13 -13
  118. package/src/interfaces/DropDown.ts +14 -14
  119. package/src/interfaces/IconButton.ts +22 -22
  120. package/src/interfaces/Icons.ts +17 -17
  121. package/src/interfaces/Modal.ts +18 -18
  122. package/src/interfaces/Paper.ts +12 -12
  123. package/src/interfaces/ProgressBar.ts +29 -29
  124. package/src/interfaces/RadioGroup.ts +23 -23
  125. package/src/interfaces/RangerSlider.ts +21 -21
  126. package/src/interfaces/Select.ts +17 -17
  127. package/src/interfaces/Tabs.ts +19 -19
  128. package/src/interfaces/Tag.ts +17 -17
  129. package/src/interfaces/TextField.ts +44 -44
  130. package/src/interfaces/TimeLine.ts +11 -11
  131. package/src/interfaces/TimePicker.ts +13 -13
  132. package/src/interfaces/index.ts +23 -23
  133. package/src/providers/NormaProvider.tsx +13 -13
  134. package/src/sample-data-2.json +178 -178
  135. package/src/sample-data.json +177 -177
  136. package/src/stories/Accordion.stories.tsx +65 -65
  137. package/src/stories/Avatar.stories.tsx +123 -123
  138. package/src/stories/Badge.stories.tsx +39 -39
  139. package/src/stories/Box.stories.tsx +35 -35
  140. package/src/stories/Breadcrumb.stories.tsx +44 -44
  141. package/src/stories/Button.stories.tsx +93 -93
  142. package/src/stories/Card.stories.tsx +39 -39
  143. package/src/stories/ChatMessage.stories.tsx +84 -84
  144. package/src/stories/ChatMessageBalloon.stories.tsx +108 -108
  145. package/src/stories/CheckBox.stories.tsx +88 -88
  146. package/src/stories/DateInput.stories.tsx +51 -51
  147. package/src/stories/DatePicker.stories.tsx +50 -50
  148. package/src/stories/DropDown.stories.tsx +57 -57
  149. package/src/stories/IconButton.stories.tsx +78 -78
  150. package/src/stories/Modal.stories.tsx +246 -246
  151. package/src/stories/ModalStatus.stories.tsx +46 -46
  152. package/src/stories/MultiSelectInput.stories.tsx +90 -90
  153. package/src/stories/Paper.stories.tsx +53 -53
  154. package/src/stories/ProgressBar.stories.tsx +116 -116
  155. package/src/stories/RadioGroup.stories.tsx +87 -87
  156. package/src/stories/RangerSlider.stories.tsx +149 -149
  157. package/src/stories/Select.stories.tsx +100 -100
  158. package/src/stories/SelectInput.stories.tsx +78 -78
  159. package/src/stories/Table.stories.tsx +372 -372
  160. package/src/stories/Tabs.stories.tsx +61 -61
  161. package/src/stories/Tag.stories.tsx +56 -56
  162. package/src/stories/Text.stories.tsx +37 -37
  163. package/src/stories/TextField.stories.tsx +310 -310
  164. package/src/stories/TextInput.stories.tsx +52 -52
  165. package/src/stories/TimeLine.stories.tsx +35 -35
  166. package/src/stories/TimePicker.stories.tsx +87 -87
  167. package/src/stories/Title.stories.tsx +43 -43
  168. package/src/stories/UncontrolledTable.stories.tsx +305 -305
  169. package/src/stories/UncontrolledTabs.stories.tsx +63 -63
  170. package/src/styles/globals.scss +17 -17
  171. package/src/types/index.ts +204 -204
  172. package/src/utils/styledBreakpoints.ts +25 -0
  173. 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';