norma-library 0.6.65 → 0.6.66

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