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
package/package.json CHANGED
@@ -1,136 +1,136 @@
1
- {
2
- "name": "norma-library",
3
- "version": "0.6.6",
4
- "private": false,
5
- "description": "Olos/Norma-DS. Design System based on Material UI, developed with TypeScript and Styled Components to create reusable and consistent components in web applications.",
6
- "scripts": {
7
- "build": "tsc",
8
- "start": "yarn storybook",
9
- "storybook": "storybook dev -p 6006",
10
- "build-storybook": "storybook build",
11
- "start-docz": "docz dev --typescript --port=4000",
12
- "build-docz": "docz build",
13
- "serve-docz": "docz build && docz serve",
14
- "clean-docz": "npx rimraf .docz && npx rimraf build/docz",
15
- "prettier": "npx prettier \"./**/*.{js,json,ts,tsx}\" --write",
16
- "tar": "tar -cvf norma-library.tar ./storybook-static"
17
- },
18
- "author": "José Roberto Miguel Filho",
19
- "module": "dist/esm/index.js",
20
- "main": "dist/esm/index.js",
21
- "license": "BSD-3-Clause",
22
- "keywords": [
23
- "react",
24
- "design-system",
25
- "material-ui",
26
- "mui",
27
- "typescripts",
28
- "styled-components"
29
- ],
30
- "devDependencies": {
31
- "@babel/preset-env": "^7.22.15",
32
- "@babel/preset-react": "^7.22.15",
33
- "@babel/preset-typescript": "^7.22.15",
34
- "@emotion/core": "^11.0.0",
35
- "@emotion/styled-base": "^11.0.0",
36
- "@mdx-js/loader": "^2.3.0",
37
- "@storybook/addon-essentials": "^7.5.0",
38
- "@storybook/addon-interactions": "^7.5.0",
39
- "@storybook/addon-links": "^7.5.0",
40
- "@storybook/addon-onboarding": "^1.0.8",
41
- "@storybook/addon-styling": "^1.3.7",
42
- "@storybook/blocks": "^7.5.0",
43
- "@storybook/react": "^7.5.0",
44
- "@storybook/react-vite": "^7.5.0",
45
- "@storybook/react-webpack5": "^7.5.0-alpha.1",
46
- "@storybook/testing-library": "^0.2.2",
47
- "@types/react": "^18.2.15",
48
- "@types/react-datepicker": "^4.19.1",
49
- "@types/react-dom": "^18.2.7",
50
- "@typescript-eslint/eslint-plugin": "^6.0.0",
51
- "@typescript-eslint/parser": "^6.0.0",
52
- "@vitejs/plugin-react": "^4.0.3",
53
- "autoprefixer": "^10.4.15",
54
- "camelcase": "^8.0.0",
55
- "chalk": "^5.3.0",
56
- "commitizen": "^4.3.0",
57
- "copy-to-clipboard": "^3.3.3",
58
- "cz-conventional-changelog": "^3.3.0",
59
- "dotenv": "^16.3.1",
60
- "eslint": "^8.45.0",
61
- "eslint-plugin-react-hooks": "^4.6.0",
62
- "eslint-plugin-react-refresh": "^0.4.3",
63
- "eslint-plugin-storybook": "^0.6.15",
64
- "git-cz": "^4.9.0",
65
- "lint-staged": "^14.0.1",
66
- "path": "^0.12.7",
67
- "postcss": "^8.4.29",
68
- "postcss-prettify": "^0.3.4",
69
- "react": "^18.2.0",
70
- "react-dom": "^18.2.0",
71
- "rimraf": "^5.0.5",
72
- "storybook": "^7.5.0",
73
- "storybook-dark-mode": "^3.0.1",
74
- "style-loader": "^3.3.3",
75
- "tsconfig-paths-webpack-plugin": "^4.1.0",
76
- "typescript": "^5.0.2",
77
- "vite": "^4.4.5"
78
- },
79
- "lint-staged": {
80
- "*.{md,mdx}": [
81
- "yarn prettier",
82
- "yarn eslint",
83
- "git add"
84
- ],
85
- "*.{js,json,ts,tsx}": [
86
- "yarn prettier",
87
- "yarn eslint",
88
- "git add"
89
- ]
90
- },
91
- "dependencies": {
92
- "@emotion/react": "^11.11.1",
93
- "@emotion/styled": "^11.11.0",
94
- "@mui/icons-material": "^5.14.9",
95
- "@mui/lab": "^5.0.0-alpha.152",
96
- "@mui/material": "^5.16.7",
97
- "@mui/x-date-pickers": "^6.20.2",
98
- "@storybook/addon-mdx-gfm": "^7.5.2",
99
- "@tanstack/react-table": "^8.10.7",
100
- "dayjs": "^1.11.9",
101
- "react-datepicker": "^4.21.0",
102
- "react-i18next": "^13.2.2",
103
- "react-select": "^5.8.0",
104
- "styled-components": "^6.1.0",
105
- "tslib": "^2.6.2"
106
- },
107
- "peerDependencies": {
108
- "react": "^17.0.0 || ^18.0.0",
109
- "react-dom": "^17.0.0 || ^18.0.0"
110
- },
111
- "browserslist": {
112
- "production": [
113
- ">0.2%",
114
- "not dead",
115
- "not op_mini all"
116
- ],
117
- "development": [
118
- "last 1 chrome version",
119
- "last 1 firefox version",
120
- "last 1 safari version"
121
- ]
122
- },
123
- "repository": {
124
- "type": "git",
125
- "url": "https://github.com/OlosLive/norma-library"
126
- },
127
- "bugs": {
128
- "url": "https://github.com/OlosLive/norma-library/issues"
129
- },
130
- "homepage": "https://github.com/OlosLive/norma-library",
131
- "config": {
132
- "commitizen": {
133
- "path": "./node_modules/cz-conventional-changelog"
134
- }
135
- }
136
- }
1
+ {
2
+ "name": "norma-library",
3
+ "version": "0.6.62",
4
+ "private": false,
5
+ "description": "Olos/Norma-DS. Design System based on Material UI, developed with TypeScript and Styled Components to create reusable and consistent components in web applications.",
6
+ "scripts": {
7
+ "build": "tsc",
8
+ "start": "yarn storybook",
9
+ "storybook": "storybook dev -p 6006",
10
+ "build-storybook": "storybook build",
11
+ "start-docz": "docz dev --typescript --port=4000",
12
+ "build-docz": "docz build",
13
+ "serve-docz": "docz build && docz serve",
14
+ "clean-docz": "npx rimraf .docz && npx rimraf build/docz",
15
+ "prettier": "npx prettier \"./**/*.{js,json,ts,tsx}\" --write",
16
+ "tar": "tar -cvf norma-library.tar ./storybook-static"
17
+ },
18
+ "author": "José Roberto Miguel Filho",
19
+ "module": "dist/esm/index.js",
20
+ "main": "dist/esm/index.js",
21
+ "license": "BSD-3-Clause",
22
+ "keywords": [
23
+ "react",
24
+ "design-system",
25
+ "material-ui",
26
+ "mui",
27
+ "typescripts",
28
+ "styled-components"
29
+ ],
30
+ "devDependencies": {
31
+ "@babel/preset-env": "^7.22.15",
32
+ "@babel/preset-react": "^7.22.15",
33
+ "@babel/preset-typescript": "^7.22.15",
34
+ "@emotion/core": "^11.0.0",
35
+ "@emotion/styled-base": "^11.0.0",
36
+ "@mdx-js/loader": "^2.3.0",
37
+ "@storybook/addon-essentials": "^7.5.0",
38
+ "@storybook/addon-interactions": "^7.5.0",
39
+ "@storybook/addon-links": "^7.5.0",
40
+ "@storybook/addon-onboarding": "^1.0.8",
41
+ "@storybook/addon-styling": "^1.3.7",
42
+ "@storybook/blocks": "^7.5.0",
43
+ "@storybook/react": "^7.5.0",
44
+ "@storybook/react-vite": "^7.5.0",
45
+ "@storybook/react-webpack5": "^7.5.0-alpha.1",
46
+ "@storybook/testing-library": "^0.2.2",
47
+ "@types/react": "^18.2.15",
48
+ "@types/react-datepicker": "^4.19.1",
49
+ "@types/react-dom": "^18.2.7",
50
+ "@typescript-eslint/eslint-plugin": "^6.0.0",
51
+ "@typescript-eslint/parser": "^6.0.0",
52
+ "@vitejs/plugin-react": "^4.0.3",
53
+ "autoprefixer": "^10.4.15",
54
+ "camelcase": "^8.0.0",
55
+ "chalk": "^5.3.0",
56
+ "commitizen": "^4.3.0",
57
+ "copy-to-clipboard": "^3.3.3",
58
+ "cz-conventional-changelog": "^3.3.0",
59
+ "dotenv": "^16.3.1",
60
+ "eslint": "^8.45.0",
61
+ "eslint-plugin-react-hooks": "^4.6.0",
62
+ "eslint-plugin-react-refresh": "^0.4.3",
63
+ "eslint-plugin-storybook": "^0.6.15",
64
+ "git-cz": "^4.9.0",
65
+ "lint-staged": "^14.0.1",
66
+ "path": "^0.12.7",
67
+ "postcss": "^8.4.29",
68
+ "postcss-prettify": "^0.3.4",
69
+ "react": "^18.2.0",
70
+ "react-dom": "^18.2.0",
71
+ "rimraf": "^5.0.5",
72
+ "storybook": "^7.5.0",
73
+ "storybook-dark-mode": "^3.0.1",
74
+ "style-loader": "^3.3.3",
75
+ "tsconfig-paths-webpack-plugin": "^4.1.0",
76
+ "typescript": "^5.0.2",
77
+ "vite": "^4.4.5"
78
+ },
79
+ "lint-staged": {
80
+ "*.{md,mdx}": [
81
+ "yarn prettier",
82
+ "yarn eslint",
83
+ "git add"
84
+ ],
85
+ "*.{js,json,ts,tsx}": [
86
+ "yarn prettier",
87
+ "yarn eslint",
88
+ "git add"
89
+ ]
90
+ },
91
+ "dependencies": {
92
+ "@emotion/react": "^11.11.1",
93
+ "@emotion/styled": "^11.11.0",
94
+ "@mui/icons-material": "^5.14.9",
95
+ "@mui/lab": "^5.0.0-alpha.152",
96
+ "@mui/material": "^5.16.7",
97
+ "@mui/x-date-pickers": "^6.20.2",
98
+ "@storybook/addon-mdx-gfm": "^7.5.2",
99
+ "@tanstack/react-table": "^8.10.7",
100
+ "dayjs": "^1.11.9",
101
+ "react-datepicker": "^4.21.0",
102
+ "react-i18next": "^13.2.2",
103
+ "react-select": "^5.8.0",
104
+ "styled-components": "^6.1.0",
105
+ "tslib": "^2.6.2"
106
+ },
107
+ "peerDependencies": {
108
+ "react": "^17.0.0 || ^18.0.0",
109
+ "react-dom": "^17.0.0 || ^18.0.0"
110
+ },
111
+ "browserslist": {
112
+ "production": [
113
+ ">0.2%",
114
+ "not dead",
115
+ "not op_mini all"
116
+ ],
117
+ "development": [
118
+ "last 1 chrome version",
119
+ "last 1 firefox version",
120
+ "last 1 safari version"
121
+ ]
122
+ },
123
+ "repository": {
124
+ "type": "git",
125
+ "url": "https://github.com/OlosLive/norma-library"
126
+ },
127
+ "bugs": {
128
+ "url": "https://github.com/OlosLive/norma-library/issues"
129
+ },
130
+ "homepage": "https://github.com/OlosLive/norma-library",
131
+ "config": {
132
+ "commitizen": {
133
+ "path": "./node_modules/cz-conventional-changelog"
134
+ }
135
+ }
136
+ }
@@ -1,39 +1,39 @@
1
- import React from 'react';
2
- import {
3
- AccordionDetails,
4
- AccordionSummary,
5
- Accordion as MuiAccordion,
6
- Typography
7
- } from '@mui/material';
8
- import ExpandMoreIcon from '@mui/icons-material/ExpandMore';
9
- import { AccordionBaseProps } from '../interfaces';
10
- import { styled } from '@mui/material/styles';
11
-
12
- const AccordionStyled = styled(MuiAccordion)({});
13
-
14
- export const Accordion = ({ data = [], defaultExpanded = false, ...props }: AccordionBaseProps) => {
15
- const [expanded, setExpanded] = React.useState<boolean | string>(defaultExpanded);
16
-
17
- const handleChange = (panel: string) => (event: React.SyntheticEvent, isExpanded: boolean) => {
18
- console.log('Event ==> ', event);
19
- setExpanded(isExpanded ? panel : false);
20
- };
21
-
22
- return (
23
- <>
24
- {data &&
25
- data.map((item, key) => (
26
- <AccordionStyled expanded={expanded === item.id} onChange={handleChange(item.id)} key={key} {...props}>
27
- <AccordionSummary
28
- expandIcon={<ExpandMoreIcon />}
29
- aria-controls={`panel-${key}-content`}
30
- id={`panel-${key}-header`}
31
- >
32
- <Typography sx={{ width: '66%', flexShrink: 0 }}>{item.label}</Typography>
33
- </AccordionSummary>
34
- <AccordionDetails>{item.children}</AccordionDetails>
35
- </AccordionStyled>
36
- ))}
37
- </>
38
- );
39
- };
1
+ import React from 'react';
2
+ import {
3
+ AccordionDetails,
4
+ AccordionSummary,
5
+ Accordion as MuiAccordion,
6
+ Typography
7
+ } from '@mui/material';
8
+ import ExpandMoreIcon from '@mui/icons-material/ExpandMore';
9
+ import { AccordionBaseProps } from '../interfaces';
10
+ import { styled } from '@mui/material/styles';
11
+
12
+ const AccordionStyled = styled(MuiAccordion)({});
13
+
14
+ export const Accordion = ({ data = [], defaultExpanded = false, ...props }: AccordionBaseProps) => {
15
+ const [expanded, setExpanded] = React.useState<boolean | string>(defaultExpanded);
16
+
17
+ const handleChange = (panel: string) => (event: React.SyntheticEvent, isExpanded: boolean) => {
18
+ console.log('Event ==> ', event);
19
+ setExpanded(isExpanded ? panel : false);
20
+ };
21
+
22
+ return (
23
+ <>
24
+ {data &&
25
+ data.map((item, key) => (
26
+ <AccordionStyled expanded={expanded === item.id} onChange={handleChange(item.id)} key={key} {...props}>
27
+ <AccordionSummary
28
+ expandIcon={<ExpandMoreIcon />}
29
+ aria-controls={`panel-${key}-content`}
30
+ id={`panel-${key}-header`}
31
+ >
32
+ <Typography sx={{ width: '66%', flexShrink: 0 }}>{item.label}</Typography>
33
+ </AccordionSummary>
34
+ <AccordionDetails>{item.children}</AccordionDetails>
35
+ </AccordionStyled>
36
+ ))}
37
+ </>
38
+ );
39
+ };
@@ -1,17 +1,17 @@
1
- import React from 'react';
2
-
3
- import { Avatar as MuiVatar } from '@mui/material';
4
-
5
- import { AvatarBaseProps } from '../interfaces';
6
- import { styled } from '@mui/material/styles';
7
-
8
- const AvatarStyled = styled(MuiVatar)({
9
- textTransform: 'none',
10
- color: 'currentcolor',
11
- });
12
-
13
- export const Avatar: React.FC<AvatarBaseProps> = ({ src, ...props }) => {
14
- return (
15
- <AvatarStyled src={src} {...props} />
16
- );
17
- };
1
+ import React from 'react';
2
+
3
+ import { Avatar as MuiVatar } from '@mui/material';
4
+
5
+ import { AvatarBaseProps } from '../interfaces';
6
+ import { styled } from '@mui/material/styles';
7
+
8
+ const AvatarStyled = styled(MuiVatar)({
9
+ textTransform: 'none',
10
+ color: 'currentcolor',
11
+ });
12
+
13
+ export const Avatar: React.FC<AvatarBaseProps> = ({ src, ...props }) => {
14
+ return (
15
+ <AvatarStyled src={src} {...props} />
16
+ );
17
+ };
@@ -1,14 +1,14 @@
1
- import React from 'react';
2
-
3
- import { Badge as MuiBadge } from '@mui/material';
4
-
5
- import { BadgeBaseProps } from '../interfaces';
6
- import { styled } from '@mui/material/styles';
7
-
8
- const BadgeStyled = styled(MuiBadge)({});
9
-
10
- export const Badge: React.FC<BadgeBaseProps> = ({ ...props }) => {
11
- return (
12
- <BadgeStyled {...props} />
13
- );
14
- };
1
+ import React from 'react';
2
+
3
+ import { Badge as MuiBadge } from '@mui/material';
4
+
5
+ import { BadgeBaseProps } from '../interfaces';
6
+ import { styled } from '@mui/material/styles';
7
+
8
+ const BadgeStyled = styled(MuiBadge)({});
9
+
10
+ export const Badge: React.FC<BadgeBaseProps> = ({ ...props }) => {
11
+ return (
12
+ <BadgeStyled {...props} />
13
+ );
14
+ };
@@ -1,13 +1,13 @@
1
- import React from 'react'
2
- import * as S from "./styles"
3
- import { BoxProps } from "./interfaces"
4
-
5
- const Box:React.FC<BoxProps> = ({ children, size }) => {
6
- return (
7
- <S.Container size={size}>
8
- {children}
9
- </S.Container>
10
- )
11
- }
12
-
1
+ import React from 'react'
2
+ import * as S from "./styles"
3
+ import { BoxProps } from "./interfaces"
4
+
5
+ const Box:React.FC<BoxProps> = ({ children, size }) => {
6
+ return (
7
+ <S.Container size={size}>
8
+ {children}
9
+ </S.Container>
10
+ )
11
+ }
12
+
13
13
  export default Box
@@ -1,4 +1,4 @@
1
- export interface BoxProps {
2
- children: JSX.Element[] | JSX.Element
3
- size: string
1
+ export interface BoxProps {
2
+ children: JSX.Element[] | JSX.Element
3
+ size: string
4
4
  }
@@ -1,23 +1,23 @@
1
- import styled from 'styled-components'
2
- import { BoxProps } from "./interfaces"
3
-
4
- const setSizeSelected = (size: string) => {
5
- switch (size) {
6
- case "small":
7
- return "10px";
8
- case "medium":
9
- return "16px";
10
- case "large":
11
- return "24px"
12
- default:
13
- return "16px";
14
- }
15
- }
16
-
17
- export const Container = styled.div<BoxProps>`
18
- background: #fff;
19
- border-radius: 5px;
20
- width: 100%;
21
- box-shadow: 0px 2px 6px #0000000A;
22
- padding: ${props => setSizeSelected(props.size)}
1
+ import styled from 'styled-components'
2
+ import { BoxProps } from "./interfaces"
3
+
4
+ const setSizeSelected = (size: string) => {
5
+ switch (size) {
6
+ case "small":
7
+ return "10px";
8
+ case "medium":
9
+ return "16px";
10
+ case "large":
11
+ return "24px"
12
+ default:
13
+ return "16px";
14
+ }
15
+ }
16
+
17
+ export const Container = styled.div<BoxProps>`
18
+ background: #fff;
19
+ border-radius: 5px;
20
+ width: 100%;
21
+ box-shadow: 0px 2px 6px #0000000A;
22
+ padding: ${props => setSizeSelected(props.size)}
23
23
  `
@@ -1,27 +1,27 @@
1
- import React, { useMemo } from 'react';
2
- import * as S from "./styles"
3
- import { BreadcrumbProps, Link } from './interface';
4
-
5
- const Breadcrumb:React.FC<BreadcrumbProps> = ({ links, onChange }) => {
6
- const listLinks = useMemo(() => {
7
- return links.map((link: Link, index: number, self: Link[]) => {
8
- const showIcon = self.length > index + 1
9
- return (
10
- <div className='content' key={index}>
11
- <S.Link onClick={() => onChange(link)}>{link.name}</S.Link>
12
- { showIcon ? <S.Arrow><i className="icon"></i></S.Arrow> : null }
13
- </div>
14
- )
15
- })
16
- }, [links])
17
-
18
- return (
19
- <S.Container>
20
- <S.ListLinks>
21
- { listLinks }
22
- </S.ListLinks>
23
- </S.Container>
24
- )
25
- }
26
-
27
- export default Breadcrumb
1
+ import React, { useMemo } from 'react';
2
+ import * as S from "./styles"
3
+ import { BreadcrumbProps, Link } from './interface';
4
+
5
+ const Breadcrumb:React.FC<BreadcrumbProps> = ({ links, onChange }) => {
6
+ const listLinks = useMemo(() => {
7
+ return links.map((link: Link, index: number, self: Link[]) => {
8
+ const showIcon = self.length > index + 1
9
+ return (
10
+ <div className='content' key={index}>
11
+ <S.Link onClick={() => onChange(link)}>{link.name}</S.Link>
12
+ { showIcon ? <S.Arrow><i className="icon"></i></S.Arrow> : null }
13
+ </div>
14
+ )
15
+ })
16
+ }, [links])
17
+
18
+ return (
19
+ <S.Container>
20
+ <S.ListLinks>
21
+ { listLinks }
22
+ </S.ListLinks>
23
+ </S.Container>
24
+ )
25
+ }
26
+
27
+ export default Breadcrumb
@@ -1,9 +1,9 @@
1
- export interface Link {
2
- name: string
3
- route: string
4
- }
5
-
6
- export interface BreadcrumbProps {
7
- links: Link[]
8
- onChange: Function
1
+ export interface Link {
2
+ name: string
3
+ route: string
4
+ }
5
+
6
+ export interface BreadcrumbProps {
7
+ links: Link[]
8
+ onChange: Function
9
9
  }
@@ -1,33 +1,33 @@
1
- import styled from "styled-components";
2
-
3
- export const Container = styled.div`
4
- margin: 0 0 16px 0;
5
- `
6
-
7
- export const ListLinks = styled.div`
8
- display: flex;
9
- gap: 8px;
10
- .content {
11
- display: flex;
12
- gap: 8px;
13
- }
14
- `
15
-
16
- export const Link = styled.p`
17
- color: #666;
18
- font-size: 14px;
19
- cursor: pointer;
20
- `
21
-
22
- export const Arrow = styled.div`
23
- display: flex;
24
- align-items: center;
25
- .icon {
26
- border: solid #999;
27
- border-width: 0 2px 2px 0;
28
- display: inline-block;
29
- padding: 2px;
30
- transform: rotate(-45deg);
31
- -webkit-transform: rotate(-45deg);
32
- }
1
+ import styled from "styled-components";
2
+
3
+ export const Container = styled.div`
4
+ margin: 0 0 16px 0;
5
+ `
6
+
7
+ export const ListLinks = styled.div`
8
+ display: flex;
9
+ gap: 8px;
10
+ .content {
11
+ display: flex;
12
+ gap: 8px;
13
+ }
14
+ `
15
+
16
+ export const Link = styled.p`
17
+ color: #666;
18
+ font-size: 14px;
19
+ cursor: pointer;
20
+ `
21
+
22
+ export const Arrow = styled.div`
23
+ display: flex;
24
+ align-items: center;
25
+ .icon {
26
+ border: solid #999;
27
+ border-width: 0 2px 2px 0;
28
+ display: inline-block;
29
+ padding: 2px;
30
+ transform: rotate(-45deg);
31
+ -webkit-transform: rotate(-45deg);
32
+ }
33
33
  `