norma-library 0.5.813 → 0.5.815

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 (77) hide show
  1. package/dist/esm/components/Table/components/header/index.js +23 -10
  2. package/dist/esm/components/Table/components/header/index.js.map +1 -1
  3. package/dist/esm/components/Table/components/header/styles.d.ts +2 -1
  4. package/dist/esm/components/Table/components/header/styles.js +6 -5
  5. package/dist/esm/components/Table/components/header/styles.js.map +1 -1
  6. package/dist/esm/components/Table/components/pagination/index.js +4 -4
  7. package/dist/esm/components/Table/components/pagination/index.js.map +1 -1
  8. package/dist/esm/components/Table/components/pagination/styles.js +1 -1
  9. package/dist/esm/components/Table/components/pagination/styles.js.map +1 -1
  10. package/dist/esm/components/Table/components/tbody/index.js +7 -2
  11. package/dist/esm/components/Table/components/tbody/index.js.map +1 -1
  12. package/dist/esm/components/Table/components/tbody/styles.d.ts +2 -0
  13. package/dist/esm/components/Table/components/tbody/styles.js +4 -1
  14. package/dist/esm/components/Table/components/tbody/styles.js.map +1 -1
  15. package/dist/esm/components/Table/index.js +113 -112
  16. package/dist/esm/components/Table/index.js.map +1 -1
  17. package/dist/esm/components/Table/interface.d.ts +6 -0
  18. package/dist/esm/components/Table/styles.d.ts +2 -1
  19. package/dist/esm/components/Table/styles.js +11 -10
  20. package/dist/esm/components/Table/styles.js.map +1 -1
  21. package/package.json +2 -4
  22. package/src/components/Table/components/header/index.tsx +39 -14
  23. package/src/components/Table/components/header/styles.tsx +8 -3
  24. package/src/components/Table/components/pagination/index.tsx +6 -6
  25. package/src/components/Table/components/pagination/styles.tsx +12 -0
  26. package/src/components/Table/components/tbody/index.tsx +17 -6
  27. package/src/components/Table/components/tbody/styles.tsx +5 -0
  28. package/src/components/Table/index.tsx +172 -163
  29. package/src/components/Table/interface.ts +6 -0
  30. package/src/components/Table/styles.tsx +6 -1
  31. package/src/stories/Table.stories.tsx +204 -159
  32. package/dist/Button/index.d.ts +0 -9
  33. package/dist/Button/types.d.ts +0 -18
  34. package/dist/Card/Card.d.ts +0 -3
  35. package/dist/Card/CardHeader.d.ts +0 -3
  36. package/dist/Card/index.d.ts +0 -4
  37. package/dist/Card/styles.d.ts +0 -546
  38. package/dist/Card/types.d.ts +0 -8
  39. package/dist/esm/components/DataGrid/base/dropdown.d.ts +0 -4
  40. package/dist/esm/components/DataGrid/base/dropdown.js +0 -126
  41. package/dist/esm/components/DataGrid/base/dropdown.js.map +0 -1
  42. package/dist/esm/components/DataGrid/base/number-filter.d.ts +0 -4
  43. package/dist/esm/components/DataGrid/base/number-filter.js +0 -30
  44. package/dist/esm/components/DataGrid/base/number-filter.js.map +0 -1
  45. package/dist/esm/components/DataGrid/base/sorting.d.ts +0 -5
  46. package/dist/esm/components/DataGrid/base/sorting.js +0 -15
  47. package/dist/esm/components/DataGrid/base/sorting.js.map +0 -1
  48. package/dist/esm/components/DataGrid/icons.d.ts +0 -5
  49. package/dist/esm/components/DataGrid/icons.js +0 -20
  50. package/dist/esm/components/DataGrid/icons.js.map +0 -1
  51. package/dist/esm/components/DataGrid/index.d.ts +0 -3
  52. package/dist/esm/components/DataGrid/index.js +0 -214
  53. package/dist/esm/components/DataGrid/index.js.map +0 -1
  54. package/dist/esm/components/DataGrid/shared.d.ts +0 -20
  55. package/dist/esm/components/DataGrid/shared.js +0 -119
  56. package/dist/esm/components/DataGrid/shared.js.map +0 -1
  57. package/dist/esm/components/DataGrid/styled.d.ts +0 -11
  58. package/dist/esm/components/DataGrid/styled.js +0 -86
  59. package/dist/esm/components/DataGrid/styled.js.map +0 -1
  60. package/dist/esm/components/Table/index-old.d.ts +0 -4
  61. package/dist/esm/components/Table/index-old.js +0 -249
  62. package/dist/esm/components/Table/index-old.js.map +0 -1
  63. package/dist/esm/components/Table-old/index.d.ts +0 -3
  64. package/dist/esm/components/Table-old/index.js +0 -71
  65. package/dist/esm/components/Table-old/index.js.map +0 -1
  66. package/dist/esm/components/Table-old/styles.d.ts +0 -3004
  67. package/dist/esm/components/Table-old/styles.js +0 -15
  68. package/dist/esm/components/Table-old/styles.js.map +0 -1
  69. package/dist/esm/interfaces/DataGrid.d.ts +0 -42
  70. package/dist/esm/interfaces/DataGrid.js +0 -2
  71. package/dist/esm/interfaces/DataGrid.js.map +0 -1
  72. package/dist/index.d.ts +0 -2
  73. package/dist/index.es.js +0 -6992
  74. package/dist/index.es.js.map +0 -1
  75. package/dist/index.umd.js +0 -266
  76. package/dist/index.umd.js.map +0 -1
  77. package/dist/vite.svg +0 -1
@@ -1,13 +1,14 @@
1
1
  import { __makeTemplateObject } from "tslib";
2
2
  import styled from "styled-components";
3
- export var Container = styled.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n width: 100%;\n background: #fff;\n box-shadow: 0px 2px 6px #0000000A;\n"], ["\n width: 100%;\n background: #fff;\n box-shadow: 0px 2px 6px #0000000A;\n"])));
4
- export var Content = styled.table(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n border-collapse: collapse;\n width: 100%;\n thead {\n tr {\n border-bottom: 1px solid #E0E0E0;\n th {\n padding: 12px 24px;\n }\n }\n }\n tbody {\n tr {\n td {\n padding: 16px 24px;\n color: #666666;\n font-size: 14px;\n }\n }\n tr:nth-child(even) {\n background: #FAFAFA;\n border-bottom: 1px solid #f1f1f1;\n border-top: 1px solid #f1f1f1;\n }\n }\n"], ["\n border-collapse: collapse;\n width: 100%;\n thead {\n tr {\n border-bottom: 1px solid #E0E0E0;\n th {\n padding: 12px 24px;\n }\n }\n }\n tbody {\n tr {\n td {\n padding: 16px 24px;\n color: #666666;\n font-size: 14px;\n }\n }\n tr:nth-child(even) {\n background: #FAFAFA;\n border-bottom: 1px solid #f1f1f1;\n border-top: 1px solid #f1f1f1;\n }\n }\n"])));
5
- export var TextColumn = styled.span(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n color: #666666;\n font-size: 14px;\n"], ["\n color: #666666;\n font-size: 14px;\n"])));
6
- export var ColumnContent = styled.div(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n gap: 2px;\n align-items: center;\n display: flex;\n"], ["\n gap: 2px;\n align-items: center;\n display: flex;\n"])));
7
- export var IconFilterDialog = styled.div(templateObject_5 || (templateObject_5 = __makeTemplateObject(["\n width: 20px;\n height: 20px;\n cursor: pointer;\n"], ["\n width: 20px;\n height: 20px;\n cursor: pointer;\n"])));
8
- export var backgroundDialog = styled.div(templateObject_6 || (templateObject_6 = __makeTemplateObject(["\n width: 100%;\n position: absolute;\n height: 100vh;\n background: transparent;\n top: 0;\n left: 0;\n"], ["\n width: 100%;\n position: absolute;\n height: 100vh;\n background: transparent;\n top: 0;\n left: 0;\n"])));
9
- export var FilterDialog = styled.div(templateObject_7 || (templateObject_7 = __makeTemplateObject(["\n padding: 8px;\n margin: 6px 0px 0 0;\n position: absolute;\n width: 302px;\n background: #fff;\n box-shadow: 0px 3px 6px #00000029;\n border: 1px solid #E0E0E0;\n"], ["\n padding: 8px;\n margin: 6px 0px 0 0;\n position: absolute;\n width: 302px;\n background: #fff;\n box-shadow: 0px 3px 6px #00000029;\n border: 1px solid #E0E0E0;\n"])));
10
- export var ListFilterDialog = styled.div(templateObject_8 || (templateObject_8 = __makeTemplateObject(["\n display: flex;\n flex-direction: column;\n .label {\n margin: 0 0 8px 0;\n color: #666666;\n font-size: 14px;\n font-weight: 400;\n text-align: left;\n }\n .select {\n border: 1px solid #E0E0E0;\n padding: 8px 12px;\n }\n"], ["\n display: flex;\n flex-direction: column;\n .label {\n margin: 0 0 8px 0;\n color: #666666;\n font-size: 14px;\n font-weight: 400;\n text-align: left;\n }\n .select {\n border: 1px solid #E0E0E0;\n padding: 8px 12px;\n }\n"])));
11
- export var OptionFilterDialog = styled.div(templateObject_9 || (templateObject_9 = __makeTemplateObject(["\n display: flex;\n gap: 16px;\n align-items: center;\n padding: 6px 8px;\n cursor: pointer;\n &:hover {\n background: rgba(0, 0, 0, 0.04);\n }\n .icon {\n color: #666;\n }\n .rotate {\n rotate: 180deg;\n }\n div {\n width: 20px;\n height: 20px;\n }\n p {\n margin: 0;\n color: #666666;\n font-size: 16px;\n font-weight: 400;\n }\n"], ["\n display: flex;\n gap: 16px;\n align-items: center;\n padding: 6px 8px;\n cursor: pointer;\n &:hover {\n background: rgba(0, 0, 0, 0.04);\n }\n .icon {\n color: #666;\n }\n .rotate {\n rotate: 180deg;\n }\n div {\n width: 20px;\n height: 20px;\n }\n p {\n margin: 0;\n color: #666666;\n font-size: 16px;\n font-weight: 400;\n }\n"])));
12
- var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5, templateObject_6, templateObject_7, templateObject_8, templateObject_9;
3
+ export var Container = styled.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n width: 100%;\n background: #fff;\n box-shadow: 0px 2px 6px #0000000A;\n padding: 24px 0;\n"], ["\n width: 100%;\n background: #fff;\n box-shadow: 0px 2px 6px #0000000A;\n padding: 24px 0;\n"])));
4
+ export var Content = styled.div(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n min-height: ", ";\n"], ["\n min-height: ", ";\n"])), function (props) { return props.minHeight ? props.minHeight : 'auto'; });
5
+ export var Table = styled.table(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n border-collapse: collapse;\n width: 100%;\n thead {\n tr {\n border-bottom: 1px solid #E0E0E0;\n th {\n padding: 12px 24px;\n }\n }\n }\n tbody {\n tr {\n td {\n padding: 16px 24px;\n color: #666666;\n font-size: 14px;\n }\n }\n tr:nth-child(even) {\n background: #FAFAFA;\n border-bottom: 1px solid #f1f1f1;\n border-top: 1px solid #f1f1f1;\n }\n }\n"], ["\n border-collapse: collapse;\n width: 100%;\n thead {\n tr {\n border-bottom: 1px solid #E0E0E0;\n th {\n padding: 12px 24px;\n }\n }\n }\n tbody {\n tr {\n td {\n padding: 16px 24px;\n color: #666666;\n font-size: 14px;\n }\n }\n tr:nth-child(even) {\n background: #FAFAFA;\n border-bottom: 1px solid #f1f1f1;\n border-top: 1px solid #f1f1f1;\n }\n }\n"])));
6
+ export var TextColumn = styled.span(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n color: #666666;\n font-size: 14px;\n"], ["\n color: #666666;\n font-size: 14px;\n"])));
7
+ export var ColumnContent = styled.div(templateObject_5 || (templateObject_5 = __makeTemplateObject(["\n gap: 2px;\n align-items: center;\n display: flex;\n"], ["\n gap: 2px;\n align-items: center;\n display: flex;\n"])));
8
+ export var IconFilterDialog = styled.div(templateObject_6 || (templateObject_6 = __makeTemplateObject(["\n width: 20px;\n height: 20px;\n cursor: pointer;\n"], ["\n width: 20px;\n height: 20px;\n cursor: pointer;\n"])));
9
+ export var backgroundDialog = styled.div(templateObject_7 || (templateObject_7 = __makeTemplateObject(["\n width: 100%;\n position: absolute;\n height: 100vh;\n background: transparent;\n top: 0;\n left: 0;\n"], ["\n width: 100%;\n position: absolute;\n height: 100vh;\n background: transparent;\n top: 0;\n left: 0;\n"])));
10
+ export var FilterDialog = styled.div(templateObject_8 || (templateObject_8 = __makeTemplateObject(["\n padding: 8px;\n margin: 6px 0px 0 0;\n position: absolute;\n width: 302px;\n background: #fff;\n box-shadow: 0px 3px 6px #00000029;\n border: 1px solid #E0E0E0;\n"], ["\n padding: 8px;\n margin: 6px 0px 0 0;\n position: absolute;\n width: 302px;\n background: #fff;\n box-shadow: 0px 3px 6px #00000029;\n border: 1px solid #E0E0E0;\n"])));
11
+ export var ListFilterDialog = styled.div(templateObject_9 || (templateObject_9 = __makeTemplateObject(["\n display: flex;\n flex-direction: column;\n .label {\n margin: 0 0 8px 0;\n color: #666666;\n font-size: 14px;\n font-weight: 400;\n text-align: left;\n }\n .select {\n border: 1px solid #E0E0E0;\n padding: 8px 12px;\n }\n"], ["\n display: flex;\n flex-direction: column;\n .label {\n margin: 0 0 8px 0;\n color: #666666;\n font-size: 14px;\n font-weight: 400;\n text-align: left;\n }\n .select {\n border: 1px solid #E0E0E0;\n padding: 8px 12px;\n }\n"])));
12
+ export var OptionFilterDialog = styled.div(templateObject_10 || (templateObject_10 = __makeTemplateObject(["\n display: flex;\n gap: 16px;\n align-items: center;\n padding: 6px 8px;\n cursor: pointer;\n &:hover {\n background: rgba(0, 0, 0, 0.04);\n }\n .icon {\n color: #666;\n }\n .rotate {\n rotate: 180deg;\n }\n div {\n width: 20px;\n height: 20px;\n }\n p {\n margin: 0;\n color: #666666;\n font-size: 16px;\n font-weight: 400;\n }\n"], ["\n display: flex;\n gap: 16px;\n align-items: center;\n padding: 6px 8px;\n cursor: pointer;\n &:hover {\n background: rgba(0, 0, 0, 0.04);\n }\n .icon {\n color: #666;\n }\n .rotate {\n rotate: 180deg;\n }\n div {\n width: 20px;\n height: 20px;\n }\n p {\n margin: 0;\n color: #666666;\n font-size: 16px;\n font-weight: 400;\n }\n"])));
13
+ var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5, templateObject_6, templateObject_7, templateObject_8, templateObject_9, templateObject_10;
13
14
  //# sourceMappingURL=styles.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"styles.js","sourceRoot":"","sources":["../../../../src/components/Table/styles.tsx"],"names":[],"mappings":";AAAA,OAAO,MAAM,MAAM,mBAAmB,CAAC;AAEvC,MAAM,CAAC,IAAM,SAAS,GAAG,MAAM,CAAC,GAAG,kJAAA,+EAIlC,IAAA,CAAA;AAED,MAAM,CAAC,IAAM,OAAO,GAAG,MAAM,CAAC,KAAK,mgBAAA,gcAyBlC,IAAA,CAAA;AAED,MAAM,CAAC,IAAM,UAAU,GAAG,MAAM,CAAC,IAAI,8GAAA,2CAGpC,IAAA,CAAA;AAED,MAAM,CAAC,IAAM,aAAa,GAAG,MAAM,CAAC,GAAG,8HAAA,2DAItC,IAAA,CAAA;AAED,MAAM,CAAC,IAAM,gBAAgB,GAAG,MAAM,CAAC,GAAG,4HAAA,yDAIzC,IAAA,CAAA;AAED,MAAM,CAAC,IAAM,gBAAgB,GAAG,MAAM,CAAC,GAAG,mLAAA,gHAOzC,IAAA,CAAA;AAED,MAAM,CAAC,IAAM,YAAY,GAAG,MAAM,CAAC,GAAG,iPAAA,8KAQrC,IAAA,CAAA;AAED,MAAM,CAAC,IAAM,gBAAgB,GAAG,MAAM,CAAC,GAAG,gUAAA,6PAczC,IAAA,CAAA;AAED,MAAM,CAAC,IAAM,kBAAkB,GAAG,MAAM,CAAC,GAAG,0bAAA,uXAyB3C,IAAA,CAAA"}
1
+ {"version":3,"file":"styles.js","sourceRoot":"","sources":["../../../../src/components/Table/styles.tsx"],"names":[],"mappings":";AAAA,OAAO,MAAM,MAAM,mBAAmB,CAAC;AAEvC,MAAM,CAAC,IAAM,SAAS,GAAG,MAAM,CAAC,GAAG,sKAAA,mGAKlC,IAAA,CAAA;AAED,MAAM,CAAC,IAAM,OAAO,GAAG,MAAM,CAAC,GAAG,4FAAK,kBACtB,EAAmD,KAClE,KADe,UAAA,KAAK,IAAI,OAAA,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,EAA1C,CAA0C,CAClE,CAAA;AAED,MAAM,CAAC,IAAM,KAAK,GAAG,MAAM,CAAC,KAAK,mgBAAA,gcAyBhC,IAAA,CAAA;AAED,MAAM,CAAC,IAAM,UAAU,GAAG,MAAM,CAAC,IAAI,8GAAA,2CAGpC,IAAA,CAAA;AAED,MAAM,CAAC,IAAM,aAAa,GAAG,MAAM,CAAC,GAAG,8HAAA,2DAItC,IAAA,CAAA;AAED,MAAM,CAAC,IAAM,gBAAgB,GAAG,MAAM,CAAC,GAAG,4HAAA,yDAIzC,IAAA,CAAA;AAED,MAAM,CAAC,IAAM,gBAAgB,GAAG,MAAM,CAAC,GAAG,mLAAA,gHAOzC,IAAA,CAAA;AAED,MAAM,CAAC,IAAM,YAAY,GAAG,MAAM,CAAC,GAAG,iPAAA,8KAQrC,IAAA,CAAA;AAED,MAAM,CAAC,IAAM,gBAAgB,GAAG,MAAM,CAAC,GAAG,gUAAA,6PAczC,IAAA,CAAA;AAED,MAAM,CAAC,IAAM,kBAAkB,GAAG,MAAM,CAAC,GAAG,4bAAA,uXAyB3C,IAAA,CAAA"}
package/package.json CHANGED
@@ -1,11 +1,11 @@
1
1
  {
2
2
  "name": "norma-library",
3
- "version": "0.5.813",
3
+ "version": "0.5.815",
4
4
  "private": false,
5
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
6
  "scripts": {
7
7
  "build": "tsc",
8
- "start": "yarn storybook --no-manager-cache",
8
+ "start": "yarn storybook",
9
9
  "storybook": "storybook dev -p 6006",
10
10
  "build-storybook": "storybook build",
11
11
  "start-docz": "docz dev --typescript --port=4000",
@@ -70,7 +70,6 @@
70
70
  "react-dom": "^18.2.0",
71
71
  "rimraf": "^5.0.5",
72
72
  "storybook": "^7.5.0",
73
- "storybook-addon-dark-mode-toggle": "^0.0.6",
74
73
  "storybook-dark-mode": "^3.0.1",
75
74
  "style-loader": "^3.3.3",
76
75
  "tsconfig-paths-webpack-plugin": "^4.1.0",
@@ -101,7 +100,6 @@
101
100
  "dayjs": "^1.11.9",
102
101
  "react-datepicker": "^4.21.0",
103
102
  "react-i18next": "^13.2.2",
104
- "react-scripts": "^5.0.1",
105
103
  "react-select": "^5.8.0",
106
104
  "styled-components": "^6.1.0",
107
105
  "tslib": "^2.6.2"
@@ -7,6 +7,8 @@ const Header:React.FC<any> = ({
7
7
  globalFilters,
8
8
  orderSmallest,
9
9
  orderLargest,
10
+ showTotalResults,
11
+ showSettings,
10
12
  setGlobalFilters,
11
13
  setOrderLargest,
12
14
  setOrderSmallest
@@ -14,21 +16,44 @@ const Header:React.FC<any> = ({
14
16
  const [openTools, setOpenTools] = useState(false)
15
17
 
16
18
  return (
17
- <S.Header>
18
- <S.Results>
19
- <S.TextResult>{ table.getRowModel().rows.length } resultados encontrados.</S.TextResult>
20
- { globalFilters.length || !!orderSmallest || !!orderLargest ? <S.TextClearSearch onClick={() => {
21
- table.resetColumnFilters(true)
22
- setGlobalFilters([])
23
- setOrderLargest(false)
24
- setOrderSmallest(false)
25
- table.resetSorting(true)
26
- }}>Limpar busca</S.TextClearSearch> : null }
27
- </S.Results>
19
+ <S.Header showResults={showTotalResults || showTotalResults}>
20
+ <div>
21
+ { showTotalResults
22
+ ? <S.Results>
23
+ <S.TextResult>{ table.getRowModel().rows.length } resultados encontrados.</S.TextResult>
24
+ <S.TextClearSearchContent>
25
+ { globalFilters.length || !!orderSmallest || !!orderLargest ? <S.TextClearSearch onClick={() => {
26
+ table.resetColumnFilters(true)
27
+ setGlobalFilters([])
28
+ setOrderLargest(false)
29
+ setOrderSmallest(false)
30
+ table.resetSorting(true)
31
+ }}>Limpar busca</S.TextClearSearch> : null }
32
+ </S.TextClearSearchContent>
33
+ </S.Results>
34
+ : null
35
+ }
36
+ </div>
37
+ {
38
+ !showTotalResults
39
+ ? (
40
+ globalFilters.length || !!orderSmallest || !!orderLargest ? <S.TextClearSearch onClick={() => {
41
+ table.resetColumnFilters(true)
42
+ setGlobalFilters([])
43
+ setOrderLargest(false)
44
+ setOrderSmallest(false)
45
+ table.resetSorting(true)
46
+ }}>Limpar busca</S.TextClearSearch> : null
47
+ )
48
+ : null
49
+ }
28
50
  <S.Tools>
29
- <S.IconTools onClick={() => setOpenTools(!openTools)}>
30
- <SettingsIcon sx={{ fontSize: 24 }} color='primary' />
31
- </S.IconTools>
51
+ { showSettings
52
+ ? <S.IconTools onClick={() => setOpenTools(!openTools)}>
53
+ <SettingsIcon sx={{ fontSize: 16, color: '#DE8B50' }} />
54
+ </S.IconTools>
55
+ : null
56
+ }
32
57
  {
33
58
  openTools
34
59
  ? <S.ListTools>
@@ -1,7 +1,7 @@
1
1
  import styled from "styled-components";
2
2
 
3
- export const Header = styled.div`
4
- margin: 0 16px 32px 16px;
3
+ export const Header = styled.div<any>`
4
+ margin: ${props => props.showResults ? '0 16px 32px 16px;' : '0 16px;' };
5
5
  display: flex;
6
6
  justify-content: space-between;
7
7
  `
@@ -21,10 +21,15 @@ export const TextResult = styled.div`
21
21
  font-size: 16px;
22
22
  `
23
23
 
24
+ export const TextClearSearchContent = styled.div`
25
+ height: 10px;
26
+ `
27
+
24
28
  export const TextClearSearch = styled.p`
25
29
  color: #DE8B50;
26
30
  font-size: 14px;
27
31
  cursor: pointer;
32
+ margin: 0;
28
33
  &:hover {
29
34
  text-decoration: underline;
30
35
  }
@@ -38,7 +43,7 @@ export const IconTools = styled.div`
38
43
 
39
44
  export const ListTools = styled.div`
40
45
  padding: 12px;
41
- margin: 6px 0px 0 0;
46
+ margin: 6px 0 0 -106px;
42
47
  position: absolute;
43
48
  background: #fff;
44
49
  box-shadow: 0px 3px 6px #00000029;
@@ -8,20 +8,20 @@ const Pagination:React.FC<any> = ({ table }) => {
8
8
  <button
9
9
  className='button'
10
10
  onClick={() => table.previousPage()}
11
- disabled={!table.getCanPreviousPage()}
11
+ disabled={1 === table.getState().pagination.pageIndex + 1}
12
12
  >
13
13
  {'<'}
14
14
  </button>
15
15
  {
16
16
  table.getPageCount()
17
- ? new Array(table.getPageCount()).fill(0).map((item, index) => {
17
+ ? new Array(Math.ceil(table.getPageCount() / 10)).fill(0).map((item, index) => {
18
18
  return (
19
19
  <button
20
20
  key={item}
21
- className='button'
22
- onClick={() => table.previousPage()}
21
+ className={ table.getState().pagination.pageIndex == index ? 'button-active' : 'button'}
22
+ onClick={() => table.setPageIndex(index)}
23
23
  >
24
- {index}
24
+ {index + 1}
25
25
  </button>
26
26
  )
27
27
  })
@@ -30,7 +30,7 @@ const Pagination:React.FC<any> = ({ table }) => {
30
30
  <button
31
31
  className='button'
32
32
  onClick={() => table.nextPage()}
33
- disabled={!table.getCanNextPage()}
33
+ disabled={Math.ceil(table.getPageCount() / 10) === table.getState().pagination.pageIndex + 1}
34
34
  >
35
35
  {'>'}
36
36
  </button>
@@ -14,6 +14,18 @@ export const Pagination = styled.div`
14
14
  padding: 12px 16px;
15
15
  border-radius: 4px;
16
16
  color: #4D4F5C;
17
+ cursor: pointer;
18
+ &:disabled {
19
+ opacity: 0.4;
20
+ }
21
+ }
22
+ .button-active {
23
+ border: 1px solid #FFDB9F;
24
+ background: #FFDB9F;
25
+ color: #B74616;
26
+ padding: 12px 16px;
27
+ border-radius: 4px;
28
+ cursor: pointer;
17
29
  }
18
30
  }
19
31
  `
@@ -1,17 +1,28 @@
1
1
  import React from "react"
2
2
  import { flexRender } from '@tanstack/react-table'
3
+ import * as S from "./styles"
3
4
 
4
- const TBody:React.FC<any> = ({ table }) => {
5
+ const TBody:React.FC<any> = ({ table, onClick, onMouseOver, onMouseOut }) => {
6
+ console.log(onClick, onMouseOver, onMouseOut)
5
7
  return (
6
8
  <tbody>
7
9
  { table.getRowModel().rows.map((row: any) => (
8
- <tr key={row.id}>
10
+ <S.Tr
11
+ key={row.id}
12
+ onClick={() => onClick ? onClick(row.original) : null}
13
+ onMouseOver={() => onMouseOver ? onMouseOver(row.original) : null}
14
+ onMouseOut={() => onMouseOut ? onMouseOut(row.original) : null}>
9
15
  { row.getVisibleCells().map((cell: any) => (
10
- <td key={cell.id}>
11
- { flexRender(cell.column.columnDef.cell, cell.getContext()) }
12
- </td>
16
+ <>
17
+ <td key={cell.id}>
18
+ { cell.column.id == 'action'
19
+ ? cell.row.original.action
20
+ : flexRender(cell.column.columnDef.cell, cell.getContext())
21
+ }
22
+ </td>
23
+ </>
13
24
  )) }
14
- </tr>
25
+ </S.Tr>
15
26
  )) }
16
27
  </tbody>
17
28
  )
@@ -0,0 +1,5 @@
1
+ import styled from "styled-components"
2
+
3
+ export const Tr = styled.tr`
4
+ cursor: pointer;
5
+ `