norma-library 0.6.6 → 0.6.62

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 (164) 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/helpers/colors.js +1 -1
  9. package/docs/index.md +118 -118
  10. package/package.json +136 -136
  11. package/src/components/Accordion.tsx +39 -39
  12. package/src/components/Avatar.tsx +17 -17
  13. package/src/components/Badge.tsx +14 -14
  14. package/src/components/Box/index.tsx +12 -12
  15. package/src/components/Box/interfaces.ts +3 -3
  16. package/src/components/Box/styles.tsx +22 -22
  17. package/src/components/Breadcrumb/index.tsx +27 -27
  18. package/src/components/Breadcrumb/interface.ts +8 -8
  19. package/src/components/Breadcrumb/styles.tsx +32 -32
  20. package/src/components/Button.tsx +26 -26
  21. package/src/components/Card.tsx +37 -37
  22. package/src/components/ChatMessage.tsx +87 -87
  23. package/src/components/ChatMessageBalloon/ChatMessageBalloon.style.ts +56 -56
  24. package/src/components/ChatMessageBalloon/ChatMessageBalloon.tsx +55 -55
  25. package/src/components/CheckBox.tsx +21 -21
  26. package/src/components/DateInput/index.tsx +34 -34
  27. package/src/components/DateInput/interface.ts +13 -13
  28. package/src/components/DateInput/styles.tsx +27 -27
  29. package/src/components/DatePicker.tsx +67 -67
  30. package/src/components/DropDown.tsx +24 -24
  31. package/src/components/IconButton.tsx +37 -37
  32. package/src/components/Icons.tsx +82 -82
  33. package/src/components/Modal.tsx +103 -103
  34. package/src/components/MultiSelectInput/components/MultiValue/index.tsx +44 -44
  35. package/src/components/MultiSelectInput/components/Option/index.tsx +62 -62
  36. package/src/components/MultiSelectInput/components/Option/styles.tsx +8 -8
  37. package/src/components/MultiSelectInput/index.tsx +60 -60
  38. package/src/components/MultiSelectInput/interfaces.ts +15 -15
  39. package/src/components/MultiSelectInput/styles.tsx +43 -43
  40. package/src/components/Paper.tsx +12 -12
  41. package/src/components/ProgressBar.tsx +71 -71
  42. package/src/components/RadioGroup.tsx +43 -43
  43. package/src/components/RangerSlider.tsx +65 -65
  44. package/src/components/Select.tsx +74 -74
  45. package/src/components/SelectInput/components/Option/index.tsx +61 -61
  46. package/src/components/SelectInput/components/Option/styles.tsx +8 -8
  47. package/src/components/SelectInput/index.tsx +45 -45
  48. package/src/components/SelectInput/interfaces.ts +15 -15
  49. package/src/components/SelectInput/styles.tsx +31 -31
  50. package/src/components/StatusModal/StatusModal.style.tsx +75 -75
  51. package/src/components/StatusModal/StatusModal.tsx +58 -58
  52. package/src/components/Svgs.tsx +506 -506
  53. package/src/components/Table/components/header/index.tsx +86 -86
  54. package/src/components/Table/components/header/styles.tsx +59 -59
  55. package/src/components/Table/components/index.tsx +8 -8
  56. package/src/components/Table/components/pagination/index.tsx +39 -39
  57. package/src/components/Table/components/pagination/styles.tsx +28 -28
  58. package/src/components/Table/components/tbody/index.tsx +30 -30
  59. package/src/components/Table/components/tbody/styles.tsx +4 -4
  60. package/src/components/Table/index.tsx +317 -317
  61. package/src/components/Table/interface.ts +23 -23
  62. package/src/components/Table/styles.tsx +117 -117
  63. package/src/components/Tabs.tsx +105 -105
  64. package/src/components/Tag.tsx +33 -33
  65. package/src/components/TextField.tsx +19 -19
  66. package/src/components/TextInput/index.tsx +37 -37
  67. package/src/components/TextInput/interface.ts +9 -9
  68. package/src/components/TextInput/styles.tsx +23 -23
  69. package/src/components/TimeLine.tsx +89 -89
  70. package/src/components/TimePicker.tsx +78 -78
  71. package/src/components/Typography/Text/index.tsx +20 -20
  72. package/src/components/Typography/Text/interfaces.ts +5 -5
  73. package/src/components/Typography/Text/styles.tsx +40 -40
  74. package/src/components/Typography/Title/index.tsx +22 -22
  75. package/src/components/Typography/Title/interfaces.ts +6 -6
  76. package/src/components/Typography/Title/styles.tsx +40 -40
  77. package/src/components/Typography/index.tsx +6 -6
  78. package/src/components/UncontrolledTable/components/header/index.tsx +72 -72
  79. package/src/components/UncontrolledTable/components/header/styles.tsx +66 -66
  80. package/src/components/UncontrolledTable/components/index.tsx +8 -8
  81. package/src/components/UncontrolledTable/components/pagination/index.tsx +43 -43
  82. package/src/components/UncontrolledTable/components/pagination/styles.tsx +28 -28
  83. package/src/components/UncontrolledTable/components/tbody/index.tsx +33 -33
  84. package/src/components/UncontrolledTable/components/tbody/styles.tsx +32 -32
  85. package/src/components/UncontrolledTable/index.tsx +223 -223
  86. package/src/components/UncontrolledTable/interface.ts +46 -46
  87. package/src/components/UncontrolledTable/styles.tsx +123 -123
  88. package/src/components/UncontrolledTabs/UncontrolledTabs.style.tsx +58 -58
  89. package/src/components/UncontrolledTabs/UncontrolledTabs.tsx +71 -71
  90. package/src/components/UncontrolledTabs/UncontrolledTabsInfo.style.ts +8 -8
  91. package/src/components/index.ts +24 -24
  92. package/src/helpers/alignments.ts +14 -14
  93. package/src/helpers/borders.ts +18 -18
  94. package/src/helpers/colors.ts +258 -258
  95. package/src/helpers/index.ts +5 -5
  96. package/src/helpers/radios.ts +24 -24
  97. package/src/helpers/sizes.ts +72 -72
  98. package/src/hooks/useClickOutside.tsx +18 -18
  99. package/src/index.ts +70 -70
  100. package/src/interfaces/Accordion.ts +12 -12
  101. package/src/interfaces/Avatar.tsx +15 -15
  102. package/src/interfaces/Badge.ts +19 -19
  103. package/src/interfaces/Button.ts +22 -22
  104. package/src/interfaces/Card.ts +11 -11
  105. package/src/interfaces/ChatMessage.ts +12 -12
  106. package/src/interfaces/ChatMessageBalloon.ts +17 -17
  107. package/src/interfaces/CheckBox.ts +27 -27
  108. package/src/interfaces/DatePicker.ts +13 -13
  109. package/src/interfaces/DropDown.ts +14 -14
  110. package/src/interfaces/IconButton.ts +22 -22
  111. package/src/interfaces/Icons.ts +17 -17
  112. package/src/interfaces/Modal.ts +18 -18
  113. package/src/interfaces/Paper.ts +12 -12
  114. package/src/interfaces/ProgressBar.ts +29 -29
  115. package/src/interfaces/RadioGroup.ts +23 -23
  116. package/src/interfaces/RangerSlider.ts +21 -21
  117. package/src/interfaces/Select.ts +17 -17
  118. package/src/interfaces/Tabs.ts +19 -19
  119. package/src/interfaces/Tag.ts +17 -17
  120. package/src/interfaces/TextField.ts +44 -44
  121. package/src/interfaces/TimeLine.ts +11 -11
  122. package/src/interfaces/TimePicker.ts +13 -13
  123. package/src/interfaces/index.ts +23 -23
  124. package/src/providers/NormaProvider.tsx +13 -13
  125. package/src/sample-data-2.json +178 -178
  126. package/src/sample-data.json +177 -177
  127. package/src/stories/Accordion.stories.tsx +65 -65
  128. package/src/stories/Avatar.stories.tsx +123 -123
  129. package/src/stories/Badge.stories.tsx +39 -39
  130. package/src/stories/Box.stories.tsx +35 -35
  131. package/src/stories/Breadcrumb.stories.tsx +44 -44
  132. package/src/stories/Button.stories.tsx +93 -93
  133. package/src/stories/Card.stories.tsx +39 -39
  134. package/src/stories/ChatMessage.stories.tsx +84 -84
  135. package/src/stories/ChatMessageBalloon.stories.tsx +108 -108
  136. package/src/stories/CheckBox.stories.tsx +88 -88
  137. package/src/stories/DateInput.stories.tsx +51 -51
  138. package/src/stories/DatePicker.stories.tsx +50 -50
  139. package/src/stories/DropDown.stories.tsx +57 -57
  140. package/src/stories/IconButton.stories.tsx +78 -78
  141. package/src/stories/Modal.stories.tsx +246 -246
  142. package/src/stories/ModalStatus.stories.tsx +46 -46
  143. package/src/stories/MultiSelectInput.stories.tsx +90 -90
  144. package/src/stories/Paper.stories.tsx +53 -53
  145. package/src/stories/ProgressBar.stories.tsx +116 -116
  146. package/src/stories/RadioGroup.stories.tsx +87 -87
  147. package/src/stories/RangerSlider.stories.tsx +149 -149
  148. package/src/stories/Select.stories.tsx +100 -100
  149. package/src/stories/SelectInput.stories.tsx +78 -78
  150. package/src/stories/Table.stories.tsx +372 -372
  151. package/src/stories/Tabs.stories.tsx +61 -61
  152. package/src/stories/Tag.stories.tsx +56 -56
  153. package/src/stories/Text.stories.tsx +37 -37
  154. package/src/stories/TextField.stories.tsx +310 -310
  155. package/src/stories/TextInput.stories.tsx +52 -52
  156. package/src/stories/TimeLine.stories.tsx +35 -35
  157. package/src/stories/TimePicker.stories.tsx +87 -87
  158. package/src/stories/Title.stories.tsx +43 -43
  159. package/src/stories/UncontrolledTable.stories.tsx +315 -315
  160. package/src/stories/UncontrolledTabs.stories.tsx +74 -74
  161. package/src/styles/globals.scss +17 -17
  162. package/src/types/index.ts +207 -207
  163. package/src/utils/styledBreakpoints.ts +25 -25
  164. package/vite.config.ts +15 -15
@@ -1,123 +1,123 @@
1
- import React from 'react';
2
-
3
- import type { Meta } from '@storybook/react';
4
- import { Avatar, Icons } from '../components';
5
- import { AvatarGroup, Stack } from '@mui/material';
6
- import { green, pink } from '@mui/material/colors';
7
-
8
- const meta = {
9
- title: 'Display/Avatar',
10
- component: Avatar,
11
- parameters: {
12
- layout: 'centered',
13
- },
14
- tags: ['autodocs'],
15
- argTypes: {},
16
- } satisfies Meta<typeof Avatar>;
17
-
18
- export default meta;
19
-
20
- function stringToColor(string: string) {
21
- let hash = 0;
22
- let i;
23
-
24
- /* eslint-disable no-bitwise */
25
- for (i = 0; i < string.length; i += 1) {
26
- hash = string.charCodeAt(i) + ((hash << 5) - hash);
27
- }
28
-
29
- let color = '#';
30
-
31
- for (i = 0; i < 3; i += 1) {
32
- const value = (hash >> (i * 8)) & 0xff;
33
- color += `00${value.toString(16)}`.slice(-2);
34
- }
35
- /* eslint-enable no-bitwise */
36
-
37
- return color;
38
- }
39
-
40
- function stringAvatar(name: string) {
41
- return {
42
- sx: {
43
- bgcolor: stringToColor(name),
44
- },
45
- children: `${name.split(' ')[0][0]}${name.split(' ')[1][0]}`,
46
- };
47
- }
48
-
49
- export const AvatarBasic = () => {
50
- return (
51
- <>
52
- <Avatar src="https://mui.com/static/images/avatar/2.jpg" />
53
- </>
54
- );
55
- };
56
-
57
- export const AvatarVariants = () => {
58
- return (
59
- <Stack direction="row" spacing={2}>
60
- <Avatar src="https://mui.com/static/images/avatar/1.jpg" variant="square" />
61
- <Avatar src="https://mui.com/static/images/avatar/2.jpg" variant="rounded" />
62
- <Avatar src="https://mui.com/static/images/avatar/3.jpg" />
63
- </Stack>
64
- );
65
- };
66
-
67
- export const AvatarLetters = () => {
68
- return (
69
- <>
70
- <Stack direction="row" spacing={2}>
71
- <Avatar {...stringAvatar('Kent Dodds')} />
72
- <Avatar {...stringAvatar('Jed Watson')} />
73
- <Avatar {...stringAvatar('Tim Neutkens')} />
74
- </Stack>
75
- </>
76
- );
77
- };
78
-
79
- export const AvatarSizes = () => {
80
- return (
81
- <>
82
- <Stack direction="row" spacing={2}>
83
- <Avatar src="https://mui.com/static/images/avatar/1.jpg" variant="square" sx={{ width: 24, height: 24 }} />
84
- <Avatar src="https://mui.com/static/images/avatar/2.jpg" variant="rounded" />
85
- <Avatar src="https://mui.com/static/images/avatar/3.jpg" sx={{ width: 56, height: 56 }} />
86
- </Stack>
87
- </>
88
- );
89
- };
90
-
91
- export const AvatarWidthIcons = () => {
92
- return (
93
- <>
94
- <Stack direction="row" spacing={2}>
95
- <Avatar>
96
- <Icons icon="user" color="white" />
97
- </Avatar>
98
- <Avatar sx={{ bgcolor: pink[500] }}>
99
- <Icons icon="starOutlined" color="white" />
100
- </Avatar>
101
- <Avatar sx={{ bgcolor: green[500] }}>
102
- <Icons icon="chartBar" color="white" />
103
- </Avatar>
104
- </Stack>
105
- </>
106
- );
107
- };
108
-
109
- export const AvatarGrouped = () => {
110
- return (
111
- <>
112
- <Stack direction="row" spacing={2}>
113
- <AvatarGroup max={4}>
114
- <Avatar src="https://mui.com/static/images/avatar/1.jpg" />
115
- <Avatar src="https://mui.com/static/images/avatar/2.jpg" />
116
- <Avatar src="https://mui.com/static/images/avatar/3.jpg" />
117
- <Avatar src="https://mui.com/static/images/avatar/4.jpg" />
118
- <Avatar src="https://mui.com/static/images/avatar/5.jpg" />
119
- </AvatarGroup>
120
- </Stack>
121
- </>
122
- );
123
- };
1
+ import React from 'react';
2
+
3
+ import type { Meta } from '@storybook/react';
4
+ import { Avatar, Icons } from '../components';
5
+ import { AvatarGroup, Stack } from '@mui/material';
6
+ import { green, pink } from '@mui/material/colors';
7
+
8
+ const meta = {
9
+ title: 'Display/Avatar',
10
+ component: Avatar,
11
+ parameters: {
12
+ layout: 'centered',
13
+ },
14
+ tags: ['autodocs'],
15
+ argTypes: {},
16
+ } satisfies Meta<typeof Avatar>;
17
+
18
+ export default meta;
19
+
20
+ function stringToColor(string: string) {
21
+ let hash = 0;
22
+ let i;
23
+
24
+ /* eslint-disable no-bitwise */
25
+ for (i = 0; i < string.length; i += 1) {
26
+ hash = string.charCodeAt(i) + ((hash << 5) - hash);
27
+ }
28
+
29
+ let color = '#';
30
+
31
+ for (i = 0; i < 3; i += 1) {
32
+ const value = (hash >> (i * 8)) & 0xff;
33
+ color += `00${value.toString(16)}`.slice(-2);
34
+ }
35
+ /* eslint-enable no-bitwise */
36
+
37
+ return color;
38
+ }
39
+
40
+ function stringAvatar(name: string) {
41
+ return {
42
+ sx: {
43
+ bgcolor: stringToColor(name),
44
+ },
45
+ children: `${name.split(' ')[0][0]}${name.split(' ')[1][0]}`,
46
+ };
47
+ }
48
+
49
+ export const AvatarBasic = () => {
50
+ return (
51
+ <>
52
+ <Avatar src="https://mui.com/static/images/avatar/2.jpg" />
53
+ </>
54
+ );
55
+ };
56
+
57
+ export const AvatarVariants = () => {
58
+ return (
59
+ <Stack direction="row" spacing={2}>
60
+ <Avatar src="https://mui.com/static/images/avatar/1.jpg" variant="square" />
61
+ <Avatar src="https://mui.com/static/images/avatar/2.jpg" variant="rounded" />
62
+ <Avatar src="https://mui.com/static/images/avatar/3.jpg" />
63
+ </Stack>
64
+ );
65
+ };
66
+
67
+ export const AvatarLetters = () => {
68
+ return (
69
+ <>
70
+ <Stack direction="row" spacing={2}>
71
+ <Avatar {...stringAvatar('Kent Dodds')} />
72
+ <Avatar {...stringAvatar('Jed Watson')} />
73
+ <Avatar {...stringAvatar('Tim Neutkens')} />
74
+ </Stack>
75
+ </>
76
+ );
77
+ };
78
+
79
+ export const AvatarSizes = () => {
80
+ return (
81
+ <>
82
+ <Stack direction="row" spacing={2}>
83
+ <Avatar src="https://mui.com/static/images/avatar/1.jpg" variant="square" sx={{ width: 24, height: 24 }} />
84
+ <Avatar src="https://mui.com/static/images/avatar/2.jpg" variant="rounded" />
85
+ <Avatar src="https://mui.com/static/images/avatar/3.jpg" sx={{ width: 56, height: 56 }} />
86
+ </Stack>
87
+ </>
88
+ );
89
+ };
90
+
91
+ export const AvatarWidthIcons = () => {
92
+ return (
93
+ <>
94
+ <Stack direction="row" spacing={2}>
95
+ <Avatar>
96
+ <Icons icon="user" color="white" />
97
+ </Avatar>
98
+ <Avatar sx={{ bgcolor: pink[500] }}>
99
+ <Icons icon="starOutlined" color="white" />
100
+ </Avatar>
101
+ <Avatar sx={{ bgcolor: green[500] }}>
102
+ <Icons icon="chartBar" color="white" />
103
+ </Avatar>
104
+ </Stack>
105
+ </>
106
+ );
107
+ };
108
+
109
+ export const AvatarGrouped = () => {
110
+ return (
111
+ <>
112
+ <Stack direction="row" spacing={2}>
113
+ <AvatarGroup max={4}>
114
+ <Avatar src="https://mui.com/static/images/avatar/1.jpg" />
115
+ <Avatar src="https://mui.com/static/images/avatar/2.jpg" />
116
+ <Avatar src="https://mui.com/static/images/avatar/3.jpg" />
117
+ <Avatar src="https://mui.com/static/images/avatar/4.jpg" />
118
+ <Avatar src="https://mui.com/static/images/avatar/5.jpg" />
119
+ </AvatarGroup>
120
+ </Stack>
121
+ </>
122
+ );
123
+ };
@@ -1,39 +1,39 @@
1
- import React from 'react';
2
-
3
- import type { Meta } from '@storybook/react';
4
- import { Avatar, Badge, Icons } from '../components';
5
- import { AvatarGroup, Stack } from '@mui/material';
6
-
7
- const meta = {
8
- title: 'Display/Badge',
9
- component: Badge,
10
- parameters: {
11
- layout: 'centered',
12
- },
13
- tags: ['autodocs'],
14
- argTypes: {},
15
- } satisfies Meta<typeof Badge>;
16
-
17
- export default meta;
18
-
19
- export const BadgeBasic = () => {
20
- return (
21
- <>
22
- <Badge badgeContent={4} color="primary">
23
- <Icons icon="user" />
24
- </Badge>
25
- </>
26
- );
27
- };
28
-
29
- export const BadgeColors = () => {
30
- return (
31
- <Stack direction="row" spacing={2}>
32
- {['primary', 'secondary', 'default', 'error', 'info', 'success', 'warning'].map((color, key) => (
33
- <Badge badgeContent={4} color={color} key={key}>
34
- <Icons icon="user" />
35
- </Badge>
36
- ))}
37
- </Stack>
38
- );
39
- };
1
+ import React from 'react';
2
+
3
+ import type { Meta } from '@storybook/react';
4
+ import { Avatar, Badge, Icons } from '../components';
5
+ import { AvatarGroup, Stack } from '@mui/material';
6
+
7
+ const meta = {
8
+ title: 'Display/Badge',
9
+ component: Badge,
10
+ parameters: {
11
+ layout: 'centered',
12
+ },
13
+ tags: ['autodocs'],
14
+ argTypes: {},
15
+ } satisfies Meta<typeof Badge>;
16
+
17
+ export default meta;
18
+
19
+ export const BadgeBasic = () => {
20
+ return (
21
+ <>
22
+ <Badge badgeContent={4} color="primary">
23
+ <Icons icon="user" />
24
+ </Badge>
25
+ </>
26
+ );
27
+ };
28
+
29
+ export const BadgeColors = () => {
30
+ return (
31
+ <Stack direction="row" spacing={2}>
32
+ {['primary', 'secondary', 'default', 'error', 'info', 'success', 'warning'].map((color, key) => (
33
+ <Badge badgeContent={4} color={color} key={key}>
34
+ <Icons icon="user" />
35
+ </Badge>
36
+ ))}
37
+ </Stack>
38
+ );
39
+ };
@@ -1,36 +1,36 @@
1
- import React from 'react';
2
- import Box from '../components/Box';
3
-
4
- export default {
5
- title: 'Layout/Box',
6
- component: Box,
7
- tags: ['autodocs'],
8
- parameters: {
9
- layout: 'centered',
10
- backgrounds: {
11
- default: 'gray',
12
- values: [
13
- {
14
- name: 'gray',
15
- value: '#f8f8f8'
16
- }
17
- ],
18
- },
19
- },
20
- argTypes: {
21
- children: {
22
- description: 'Adiciona um children.'
23
- },
24
- size: {
25
- description: 'Definir o tamanho do componente.',
26
- options: ['small', 'medium', 'large'],
27
- control: { type: 'radio' }
28
- },
29
- },
30
- }
31
-
32
- export const Default = (args) => <Box {...args}><p>Conteudo</p></Box>
33
-
34
- Default.args = {
35
- size: 'medium'
1
+ import React from 'react';
2
+ import Box from '../components/Box';
3
+
4
+ export default {
5
+ title: 'Layout/Box',
6
+ component: Box,
7
+ tags: ['autodocs'],
8
+ parameters: {
9
+ layout: 'centered',
10
+ backgrounds: {
11
+ default: 'gray',
12
+ values: [
13
+ {
14
+ name: 'gray',
15
+ value: '#f8f8f8'
16
+ }
17
+ ],
18
+ },
19
+ },
20
+ argTypes: {
21
+ children: {
22
+ description: 'Adiciona um children.'
23
+ },
24
+ size: {
25
+ description: 'Definir o tamanho do componente.',
26
+ options: ['small', 'medium', 'large'],
27
+ control: { type: 'radio' }
28
+ },
29
+ },
30
+ }
31
+
32
+ export const Default = (args) => <Box {...args}><p>Conteudo</p></Box>
33
+
34
+ Default.args = {
35
+ size: 'medium'
36
36
  }
@@ -1,45 +1,45 @@
1
- import React from 'react';
2
- import Breadcrumb from '../components/Breadcrumb';
3
-
4
- const routes = [
5
- {
6
- name: 'Pagina 1',
7
- route: '/pagina-1'
8
- },
9
- {
10
- name: 'Pagina 2',
11
- route: '/pagina-2'
12
- },
13
- {
14
- name: 'Pagina 3',
15
- route: '/pagina-3'
16
- }
17
- ]
18
-
19
- export default {
20
- title: 'Layout/Breadcrumb',
21
- component: Breadcrumb,
22
- tags: ['autodocs'],
23
- parameters: {
24
- layout: 'centered',
25
- },
26
- argTypes: {
27
- links: {
28
- description: 'Adicione as rotas que irão aparecer.',
29
- },
30
- className: {
31
- description: 'Adicione uma classe.',
32
- },
33
- onChange: {
34
- description: 'Função para capturar o valor quando clicado.'
35
- }
36
- }
37
- }
38
-
39
- export const Default = (args) => <Breadcrumb {...args} />
40
-
41
- Default.args = {
42
- links: routes,
43
- className: '',
44
- onChange: '',
1
+ import React from 'react';
2
+ import Breadcrumb from '../components/Breadcrumb';
3
+
4
+ const routes = [
5
+ {
6
+ name: 'Pagina 1',
7
+ route: '/pagina-1'
8
+ },
9
+ {
10
+ name: 'Pagina 2',
11
+ route: '/pagina-2'
12
+ },
13
+ {
14
+ name: 'Pagina 3',
15
+ route: '/pagina-3'
16
+ }
17
+ ]
18
+
19
+ export default {
20
+ title: 'Layout/Breadcrumb',
21
+ component: Breadcrumb,
22
+ tags: ['autodocs'],
23
+ parameters: {
24
+ layout: 'centered',
25
+ },
26
+ argTypes: {
27
+ links: {
28
+ description: 'Adicione as rotas que irão aparecer.',
29
+ },
30
+ className: {
31
+ description: 'Adicione uma classe.',
32
+ },
33
+ onChange: {
34
+ description: 'Função para capturar o valor quando clicado.'
35
+ }
36
+ }
37
+ }
38
+
39
+ export const Default = (args) => <Breadcrumb {...args} />
40
+
41
+ Default.args = {
42
+ links: routes,
43
+ className: '',
44
+ onChange: '',
45
45
  }
@@ -1,93 +1,93 @@
1
- import React from 'react';
2
- import { Button } from '../components/Button';
3
- import type { Meta, StoryObj } from '@storybook/react';
4
- import { ButtonVariant, SizeVariant, ColorVariant, DisabledVariant } from '../types';
5
-
6
- const sizes: SizeVariant[] = ['small', 'medium', 'large'];
7
- const disableds: DisabledVariant[] = ['true', 'false'];
8
- const variants: ButtonVariant[] = ['text', 'outlined', 'contained'];
9
- const colors: ColorVariant[] = ['inherit', 'primary', 'secondary', 'success', 'error', 'info', 'warning'];
10
-
11
- const meta = {
12
- title: 'Layout/Button',
13
- component: Button,
14
- parameters: {
15
- layout: 'centered',
16
- },
17
- tags: ['autodocs'],
18
- argTypes: {},
19
- } satisfies Meta<typeof Button>;
20
-
21
- export default meta;
22
-
23
- type Story = StoryObj<typeof meta>;
24
-
25
- const defaultArgs = {
26
- disabled: false,
27
- };
28
-
29
- export const Playground: Story = {
30
- args: {
31
- label: 'My Button',
32
- disabled: defaultArgs.disabled,
33
- size: 'medium',
34
- color: 'primary',
35
- variant: 'contained',
36
- },
37
- };
38
-
39
- export const ButtonSizes = () => (
40
- <>
41
- {sizes.map((size, key) => (
42
- <Button
43
- key={key}
44
- label={`Size ${size}`}
45
- size={size}
46
- variant="contained"
47
- style={{ marginRight: '5px' }}
48
- {...defaultArgs}
49
- />
50
- ))}
51
- </>
52
- );
53
-
54
- export const ButtonVariants = () => (
55
- <>
56
- {variants.map((variant, key) => (
57
- <Button
58
- key={key}
59
- variant={variant}
60
- label={`Variant ${variant}`}
61
- style={{ marginRight: '5px' }}
62
- {...defaultArgs}
63
- />
64
- ))}
65
- </>
66
- );
67
-
68
- export const ButtonColorsDefault = () => (
69
- <>
70
- {colors.map((color, key) => (
71
- <Button
72
- key={key}
73
- variant="outlined"
74
- label={`Color ${color}`}
75
- color={color}
76
- style={{ margin: '2px' }}
77
- {...defaultArgs}
78
- />
79
- ))}
80
- <div>
81
- {colors.map((color, key) => (
82
- <Button
83
- key={key}
84
- label={`Color ${color}`}
85
- color={color}
86
- variant="contained"
87
- style={{ margin: '2px' }}
88
- {...defaultArgs}
89
- />
90
- ))}
91
- </div>
92
- </>
93
- );
1
+ import React from 'react';
2
+ import { Button } from '../components/Button';
3
+ import type { Meta, StoryObj } from '@storybook/react';
4
+ import { ButtonVariant, SizeVariant, ColorVariant, DisabledVariant } from '../types';
5
+
6
+ const sizes: SizeVariant[] = ['small', 'medium', 'large'];
7
+ const disableds: DisabledVariant[] = ['true', 'false'];
8
+ const variants: ButtonVariant[] = ['text', 'outlined', 'contained'];
9
+ const colors: ColorVariant[] = ['inherit', 'primary', 'secondary', 'success', 'error', 'info', 'warning'];
10
+
11
+ const meta = {
12
+ title: 'Layout/Button',
13
+ component: Button,
14
+ parameters: {
15
+ layout: 'centered',
16
+ },
17
+ tags: ['autodocs'],
18
+ argTypes: {},
19
+ } satisfies Meta<typeof Button>;
20
+
21
+ export default meta;
22
+
23
+ type Story = StoryObj<typeof meta>;
24
+
25
+ const defaultArgs = {
26
+ disabled: false,
27
+ };
28
+
29
+ export const Playground: Story = {
30
+ args: {
31
+ label: 'My Button',
32
+ disabled: defaultArgs.disabled,
33
+ size: 'medium',
34
+ color: 'primary',
35
+ variant: 'contained',
36
+ },
37
+ };
38
+
39
+ export const ButtonSizes = () => (
40
+ <>
41
+ {sizes.map((size, key) => (
42
+ <Button
43
+ key={key}
44
+ label={`Size ${size}`}
45
+ size={size}
46
+ variant="contained"
47
+ style={{ marginRight: '5px' }}
48
+ {...defaultArgs}
49
+ />
50
+ ))}
51
+ </>
52
+ );
53
+
54
+ export const ButtonVariants = () => (
55
+ <>
56
+ {variants.map((variant, key) => (
57
+ <Button
58
+ key={key}
59
+ variant={variant}
60
+ label={`Variant ${variant}`}
61
+ style={{ marginRight: '5px' }}
62
+ {...defaultArgs}
63
+ />
64
+ ))}
65
+ </>
66
+ );
67
+
68
+ export const ButtonColorsDefault = () => (
69
+ <>
70
+ {colors.map((color, key) => (
71
+ <Button
72
+ key={key}
73
+ variant="outlined"
74
+ label={`Color ${color}`}
75
+ color={color}
76
+ style={{ margin: '2px' }}
77
+ {...defaultArgs}
78
+ />
79
+ ))}
80
+ <div>
81
+ {colors.map((color, key) => (
82
+ <Button
83
+ key={key}
84
+ label={`Color ${color}`}
85
+ color={color}
86
+ variant="contained"
87
+ style={{ margin: '2px' }}
88
+ {...defaultArgs}
89
+ />
90
+ ))}
91
+ </div>
92
+ </>
93
+ );