@campxdev/shared 0.6.17 → 0.6.19

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 (220) hide show
  1. package/.eslintignore +3 -3
  2. package/.eslintrc.js +33 -33
  3. package/.prettierrc +10 -10
  4. package/antd.customize.less +73 -73
  5. package/exports.ts +16 -16
  6. package/package.json +93 -93
  7. package/publish.sh +1 -1
  8. package/src/assets/fonts/avenir/index.ts +2 -2
  9. package/src/assets/fonts/poppins/index.ts +7 -7
  10. package/src/assets/images/index.ts +17 -17
  11. package/src/assets/images/unauth.svg +92 -92
  12. package/src/components/ActionButton.tsx +28 -28
  13. package/src/components/Attachment.tsx +26 -26
  14. package/src/components/AutocompleteSearch/AutocompleteSearch.tsx +57 -57
  15. package/src/components/AutocompleteSearch/index.tsx +1 -1
  16. package/src/components/Breadcrumbs.tsx +72 -72
  17. package/src/components/Card.tsx +98 -98
  18. package/src/components/CardsGrid.tsx +28 -28
  19. package/src/components/ChangePassword.tsx +164 -164
  20. package/src/components/Chips.tsx +81 -81
  21. package/src/components/Detail.tsx +15 -15
  22. package/src/components/DetailsGrid.tsx +52 -52
  23. package/src/components/DividerHeading.tsx +41 -41
  24. package/src/components/DrawerWrapper/DialogWrapper.tsx +63 -63
  25. package/src/components/DrawerWrapper/DrawerTemplate.tsx +53 -53
  26. package/src/components/DrawerWrapper/DrawerWrapper.tsx +53 -53
  27. package/src/components/DropDownButton.tsx +194 -194
  28. package/src/components/ErrorBoundary/ErrorBoundary.tsx +28 -28
  29. package/src/components/ErrorBoundary/ErrorFallback.tsx +236 -236
  30. package/src/components/ErrorBoundary/GlobalNetworkLoadingIndicator.tsx +13 -13
  31. package/src/components/ErrorBoundary/index.tsx +1 -1
  32. package/src/components/ErrorBox.tsx +42 -42
  33. package/src/components/FloatingContainer.tsx +33 -33
  34. package/src/components/Form/Form.tsx +156 -156
  35. package/src/components/Form/RenderForm.tsx +188 -188
  36. package/src/components/FullCalendar/Actions.tsx +162 -162
  37. package/src/components/FullCalendar/FullCalendarWrapper.tsx +54 -54
  38. package/src/components/FullScreenLoader.tsx +19 -19
  39. package/src/components/HookForm/AutoCompleteSearch.tsx +113 -113
  40. package/src/components/HookForm/DatePicker.tsx +65 -65
  41. package/src/components/HookForm/DateTimePicker.tsx +70 -70
  42. package/src/components/HookForm/FormLabel.tsx +14 -14
  43. package/src/components/HookForm/MultiCheckbox.tsx +82 -82
  44. package/src/components/HookForm/MultiSelect.tsx +100 -100
  45. package/src/components/HookForm/RadioGroup.tsx +106 -106
  46. package/src/components/HookForm/SingleCheckbox.tsx +46 -46
  47. package/src/components/HookForm/SingleSelect.tsx +93 -93
  48. package/src/components/HookForm/TextField.tsx +74 -74
  49. package/src/components/HookForm/TimePicker.tsx +82 -82
  50. package/src/components/HookForm/index.ts +23 -23
  51. package/src/components/IconButtons/IconButtons.tsx +137 -137
  52. package/src/components/IconButtons/Icons.tsx +268 -268
  53. package/src/components/IconButtons/assets/edit.svg +4 -4
  54. package/src/components/IconButtons/assets/eye.svg +6 -6
  55. package/src/components/IconButtons/assets/trash.svg +7 -7
  56. package/src/components/IconButtons/index.tsx +8 -8
  57. package/src/components/IconLabel.tsx +37 -37
  58. package/src/components/Image/Image.tsx +43 -43
  59. package/src/components/Image/index.tsx +1 -1
  60. package/src/components/ImageUpload.tsx +98 -98
  61. package/src/components/Input/AutoCompleteSearch.tsx +113 -113
  62. package/src/components/Input/DatePicker.tsx +60 -60
  63. package/src/components/Input/DateRangePicker.tsx +131 -131
  64. package/src/components/Input/DateTimePicker.tsx +70 -70
  65. package/src/components/Input/FormLabel.tsx +14 -14
  66. package/src/components/Input/MultiCheckbox.tsx +79 -79
  67. package/src/components/Input/MultiSelect.tsx +52 -52
  68. package/src/components/Input/RadioGroup.tsx +61 -61
  69. package/src/components/Input/SingleCheckbox.tsx +23 -23
  70. package/src/components/Input/SingleSelect.tsx +124 -124
  71. package/src/components/Input/TextField.tsx +50 -50
  72. package/src/components/Input/TimePicker.tsx +82 -82
  73. package/src/components/Input/index.ts +26 -26
  74. package/src/components/JsonPreview/JsonPreview.tsx +7 -7
  75. package/src/components/JsonPreview/index.tsx +1 -1
  76. package/src/components/LabelValue/LabelValue.tsx +21 -21
  77. package/src/components/LabelValue/index.tsx +1 -1
  78. package/src/components/Layout/ChangePassword.tsx +49 -49
  79. package/src/components/Layout/Header/AppHeader.tsx +124 -124
  80. package/src/components/Layout/Header/AppsMenu.tsx +92 -92
  81. package/src/components/Layout/Header/CogWheelMenu.tsx +33 -33
  82. package/src/components/Layout/Header/FreshDeskHelpButton.tsx +19 -19
  83. package/src/components/Layout/Header/Notification.tsx +13 -13
  84. package/src/components/Layout/Header/UserBox.tsx +70 -70
  85. package/src/components/Layout/Header/applications.ts +90 -90
  86. package/src/components/Layout/Header/assets/campx.svg +29 -29
  87. package/src/components/Layout/Header/assets/index.ts +29 -32
  88. package/src/components/Layout/Header/assets/newAssets/campx_square_small.svg +9 -9
  89. package/src/components/Layout/Header/assets/newAssets/commutex.svg +14 -14
  90. package/src/components/Layout/Header/assets/newAssets/commutexSmall.svg +11 -11
  91. package/src/components/Layout/Header/assets/newAssets/enroll.svg +14 -14
  92. package/src/components/Layout/Header/assets/newAssets/enrollx.svg +14 -14
  93. package/src/components/Layout/Header/assets/newAssets/exams_small.svg +12 -12
  94. package/src/components/Layout/Header/assets/newAssets/examsx.svg +14 -14
  95. package/src/components/Layout/Header/assets/newAssets/hostel_small.svg +13 -13
  96. package/src/components/Layout/Header/assets/newAssets/hostelx.svg +13 -13
  97. package/src/components/Layout/Header/assets/newAssets/libraryx.svg +12 -12
  98. package/src/components/Layout/Header/assets/newAssets/pay_small.svg +16 -16
  99. package/src/components/Layout/Header/assets/newAssets/payx.svg +19 -19
  100. package/src/components/Layout/Header/assets/newAssets/people_small.svg +9 -9
  101. package/src/components/Layout/Header/assets/newAssets/peoplex.svg +12 -12
  102. package/src/components/Layout/Header/assets/newAssets/squarex.svg +12 -12
  103. package/src/components/Layout/Header/assets/payxHeader.svg +21 -21
  104. package/src/components/Layout/Header/assets/peoplexHeader.svg +14 -14
  105. package/src/components/Layout/Header/icons.tsx +57 -57
  106. package/src/components/Layout/Header/index.tsx +1 -1
  107. package/src/components/Layout/Header/styles.tsx +98 -98
  108. package/src/components/LayoutWrapper.tsx +25 -25
  109. package/src/components/LinearProgress.tsx +19 -19
  110. package/src/components/ListItemButton.tsx +94 -94
  111. package/src/components/LoginForm.tsx +103 -103
  112. package/src/components/MediaRow/MediaRow.tsx +69 -69
  113. package/src/components/MediaRow/index.tsx +1 -1
  114. package/src/components/MenuButton.tsx +103 -103
  115. package/src/components/ModalButtons/DialogButton.tsx +88 -88
  116. package/src/components/ModalButtons/DrawerButton.tsx +89 -89
  117. package/src/components/ModalButtons/index.tsx +4 -4
  118. package/src/components/NoDataIllustration/NoDataIllustration.tsx +32 -32
  119. package/src/components/NoDataIllustration/index.tsx +1 -1
  120. package/src/components/PageContent.tsx +17 -17
  121. package/src/components/PageHeader.tsx +52 -52
  122. package/src/components/PageNotFound.tsx +26 -26
  123. package/src/components/PopupConfirm/ConfirmContextProvider.tsx +40 -40
  124. package/src/components/PopupConfirm/PopupConfirm.tsx +34 -34
  125. package/src/components/PopupConfirm/index.tsx +1 -1
  126. package/src/components/PopupConfirm/useConfirm.ts +47 -47
  127. package/src/components/Router.tsx +7 -7
  128. package/src/components/Row/Row.tsx +24 -24
  129. package/src/components/Row/index.tsx +1 -1
  130. package/src/components/SearchBar/SearchBar.tsx +53 -53
  131. package/src/components/SearchBar/index.tsx +1 -1
  132. package/src/components/SideMenuHeader.tsx +29 -29
  133. package/src/components/SideNav.tsx +168 -168
  134. package/src/components/Spinner.tsx +18 -18
  135. package/src/components/StepsHeader/StepsHeader.tsx +115 -115
  136. package/src/components/StepsHeader/index.tsx +1 -1
  137. package/src/components/StyledTableContainer.tsx +33 -33
  138. package/src/components/SwitchButton/SwitchButton.tsx +41 -41
  139. package/src/components/SwitchButton/index.tsx +1 -1
  140. package/src/components/Table.tsx +42 -42
  141. package/src/components/TableComponent/BatchActionsHeader.tsx +58 -58
  142. package/src/components/TableComponent/Icons/index.tsx +50 -50
  143. package/src/components/TableComponent/ReactTable.tsx +293 -293
  144. package/src/components/TableComponent/RenderTableBody.tsx +64 -64
  145. package/src/components/TableComponent/TableFooter/TableFooter.tsx +102 -102
  146. package/src/components/TableComponent/TableFooter/index.tsx +1 -1
  147. package/src/components/TableComponent/TableFooter/styles.tsx +28 -28
  148. package/src/components/TableComponent/index.tsx +226 -226
  149. package/src/components/TableComponent/react-table-config.d.ts +128 -128
  150. package/src/components/TableComponent/styles.tsx +173 -173
  151. package/src/components/TableComponent/types.ts +57 -57
  152. package/src/components/Tabs/Tabs.tsx +52 -52
  153. package/src/components/Tabs/TabsContainer.tsx +50 -50
  154. package/src/components/Tabs/index.tsx +1 -1
  155. package/src/components/Tabs/styles.tsx +55 -55
  156. package/src/components/ToastContainer/ToastContainer.tsx +42 -42
  157. package/src/components/ToastContainer/index.tsx +1 -1
  158. package/src/components/UploadButton/UploadButton.tsx +126 -126
  159. package/src/components/UploadButton/index.tsx +1 -1
  160. package/src/components/UploadButton/types.ts +19 -19
  161. package/src/components/UploadDocument/UploadDocument.tsx +108 -108
  162. package/src/components/UploadDocument/index.tsx +1 -1
  163. package/src/components/UploadFileDialog/AnimatedUploadFile.gif +0 -0
  164. package/src/components/UploadFileDialog/UploadFileDialog.tsx +238 -240
  165. package/src/components/UploadFileDialog/index.tsx +1 -1
  166. package/src/components/index.ts +86 -86
  167. package/src/config/axios.ts +74 -74
  168. package/src/config/axiosXTenant.ts +57 -57
  169. package/src/constants/UIConstants.ts +97 -97
  170. package/src/constants/formValidations.ts +6 -6
  171. package/src/constants/index.ts +5 -5
  172. package/src/constants/isDevelopment.ts +3 -3
  173. package/src/constants/permissions.ts +67 -67
  174. package/src/constants/validateMessages.ts +12 -12
  175. package/src/contexts/LoginFormProvider.tsx +39 -39
  176. package/src/contexts/Providers.tsx +59 -59
  177. package/src/contexts/QueryClientProvider.tsx +22 -22
  178. package/src/hooks/index.ts +3 -3
  179. package/src/hooks/useAppInit.ts +33 -33
  180. package/src/hooks/useAuth.ts +91 -91
  181. package/src/hooks/useFetch.ts +53 -53
  182. package/src/hooks/useRouter.ts +31 -31
  183. package/src/layouts/Components/DashBoardMenu.tsx +232 -232
  184. package/src/layouts/Components/icons/index.tsx +403 -403
  185. package/src/layouts/Components/styles.tsx +60 -60
  186. package/src/layouts/ComponentsLayout.tsx +3 -3
  187. package/src/permissions/PageWithPermission.tsx +18 -18
  188. package/src/permissions/PermissionDeniedPage.tsx +16 -16
  189. package/src/permissions/PermissionsStore.ts +352 -352
  190. package/src/permissions/ValidateAccess.tsx +18 -18
  191. package/src/permissions/index.ts +3 -3
  192. package/src/react-app-env.d.ts +1 -1
  193. package/src/shared-state/AssetsStore.ts +15 -15
  194. package/src/shared-state/UserStore.ts +13 -13
  195. package/src/shared-state/index.ts +3 -3
  196. package/src/theme/App.less +3 -3
  197. package/src/theme/MuiThemeProvider.tsx +13 -13
  198. package/src/theme/customCssBaseline.ts +78 -78
  199. package/src/theme/index.css +75 -75
  200. package/src/theme/muiTheme.ts +490 -490
  201. package/src/theme/theme.d.ts +75 -75
  202. package/src/utils/alphabet.ts +23 -23
  203. package/src/utils/arrayPadEnd.ts +3 -3
  204. package/src/utils/formatCurrency.ts +9 -9
  205. package/src/utils/getUrlParams.ts +5 -5
  206. package/src/utils/index.ts +8 -8
  207. package/src/utils/logout.ts +24 -24
  208. package/src/utils/ordinalSuffixOf.ts +14 -14
  209. package/src/utils/romanize.ts +40 -40
  210. package/src/utils/withLocalization.tsx +11 -11
  211. package/src/utils/withRouteWrapper.tsx +25 -25
  212. package/src/utils/withSuspense.tsx +6 -6
  213. package/styled-components.tsx +60 -60
  214. package/todo.md +20 -8
  215. package/tsconfig.json +21 -21
  216. package/src/components/Layout/Header/assets/newAssets/commuteX.png +0 -0
  217. package/src/components/Styled/OutlinedIconButton.tsx +0 -7
  218. package/src/components/Styled/index.tsx +0 -1
  219. package/src/components/Swiper/Swiper.tsx +0 -39
  220. package/src/components/Swiper/index.tsx +0 -1
@@ -1,128 +1,128 @@
1
- import {
2
- UseColumnOrderInstanceProps,
3
- UseColumnOrderState,
4
- UseExpandedHooks,
5
- UseExpandedInstanceProps,
6
- UseExpandedOptions,
7
- UseExpandedRowProps,
8
- UseExpandedState,
9
- UseFiltersColumnOptions,
10
- UseFiltersColumnProps,
11
- UseFiltersInstanceProps,
12
- UseFiltersOptions,
13
- UseFiltersState,
14
- UseGlobalFiltersColumnOptions,
15
- UseGlobalFiltersInstanceProps,
16
- UseGlobalFiltersOptions,
17
- UseGlobalFiltersState,
18
- UseGroupByCellProps,
19
- UseGroupByColumnOptions,
20
- UseGroupByColumnProps,
21
- UseGroupByHooks,
22
- UseGroupByInstanceProps,
23
- UseGroupByOptions,
24
- UseGroupByRowProps,
25
- UseGroupByState,
26
- UsePaginationInstanceProps,
27
- UsePaginationOptions,
28
- UsePaginationState,
29
- UseResizeColumnsColumnOptions,
30
- UseResizeColumnsColumnProps,
31
- UseResizeColumnsOptions,
32
- UseResizeColumnsState,
33
- UseRowSelectHooks,
34
- UseRowSelectInstanceProps,
35
- UseRowSelectOptions,
36
- UseRowSelectRowProps,
37
- UseRowSelectState,
38
- UseRowStateCellProps,
39
- UseRowStateInstanceProps,
40
- UseRowStateOptions,
41
- UseRowStateRowProps,
42
- UseRowStateState,
43
- UseSortByColumnOptions,
44
- UseSortByColumnProps,
45
- UseSortByHooks,
46
- UseSortByInstanceProps,
47
- UseSortByOptions,
48
- UseSortByState,
49
- } from 'react-table'
50
-
51
- declare module 'react-table' {
52
- // take this file as-is, or comment out the sections that don't apply to your plugin configuration
53
-
54
- export interface TableOptions<D extends Record<string, unknown>>
55
- extends UseExpandedOptions<D>,
56
- UseFiltersOptions<D>,
57
- UseGlobalFiltersOptions<D>,
58
- UseGroupByOptions<D>,
59
- UsePaginationOptions<D>,
60
- UseResizeColumnsOptions<D>,
61
- UseRowSelectOptions<D>,
62
- UseRowStateOptions<D>,
63
- UseSortByOptions<D>,
64
- // note that having Record here allows you to add anything to the options, this matches the spirit of the
65
- // underlying js library, but might be cleaner if it's replaced by a more specific type that matches your
66
- // feature set, this is a safe default.
67
- Record<string, any> {}
68
-
69
- export interface Hooks<
70
- D extends Record<string, unknown> = Record<string, unknown>,
71
- > extends UseExpandedHooks<D>,
72
- UseGroupByHooks<D>,
73
- UseRowSelectHooks<D>,
74
- UseSortByHooks<D> {}
75
-
76
- export interface TableInstance<
77
- D extends Record<string, unknown> = Record<string, unknown>,
78
- > extends UseColumnOrderInstanceProps<D>,
79
- UseExpandedInstanceProps<D>,
80
- UseFiltersInstanceProps<D>,
81
- UseGlobalFiltersInstanceProps<D>,
82
- UseGroupByInstanceProps<D>,
83
- UsePaginationInstanceProps<D>,
84
- UseRowSelectInstanceProps<D>,
85
- UseRowStateInstanceProps<D>,
86
- UseSortByInstanceProps<D> {}
87
-
88
- export interface TableState<
89
- D extends Record<string, unknown> = Record<string, unknown>,
90
- > extends UseColumnOrderState<D>,
91
- UseExpandedState<D>,
92
- UseFiltersState<D>,
93
- UseGlobalFiltersState<D>,
94
- UseGroupByState<D>,
95
- UsePaginationState<D>,
96
- UseResizeColumnsState<D>,
97
- UseRowSelectState<D>,
98
- UseRowStateState<D>,
99
- UseSortByState<D> {}
100
-
101
- export interface ColumnInterface<
102
- D extends Record<string, unknown> = Record<string, unknown>,
103
- > extends UseFiltersColumnOptions<D>,
104
- UseGlobalFiltersColumnOptions<D>,
105
- UseGroupByColumnOptions<D>,
106
- UseResizeColumnsColumnOptions<D>,
107
- UseSortByColumnOptions<D> {}
108
-
109
- export interface ColumnInstance<
110
- D extends Record<string, unknown> = Record<string, unknown>,
111
- > extends UseFiltersColumnProps<D>,
112
- UseGroupByColumnProps<D>,
113
- UseResizeColumnsColumnProps<D>,
114
- UseSortByColumnProps<D> {}
115
-
116
- export interface Cell<
117
- D extends Record<string, unknown> = Record<string, unknown>,
118
- V = any,
119
- > extends UseGroupByCellProps<D>,
120
- UseRowStateCellProps<D> {}
121
-
122
- export interface Row<
123
- D extends Record<string, unknown> = Record<string, unknown>,
124
- > extends UseExpandedRowProps<D>,
125
- UseGroupByRowProps<D>,
126
- UseRowSelectRowProps<D>,
127
- UseRowStateRowProps<D> {}
128
- }
1
+ import {
2
+ UseColumnOrderInstanceProps,
3
+ UseColumnOrderState,
4
+ UseExpandedHooks,
5
+ UseExpandedInstanceProps,
6
+ UseExpandedOptions,
7
+ UseExpandedRowProps,
8
+ UseExpandedState,
9
+ UseFiltersColumnOptions,
10
+ UseFiltersColumnProps,
11
+ UseFiltersInstanceProps,
12
+ UseFiltersOptions,
13
+ UseFiltersState,
14
+ UseGlobalFiltersColumnOptions,
15
+ UseGlobalFiltersInstanceProps,
16
+ UseGlobalFiltersOptions,
17
+ UseGlobalFiltersState,
18
+ UseGroupByCellProps,
19
+ UseGroupByColumnOptions,
20
+ UseGroupByColumnProps,
21
+ UseGroupByHooks,
22
+ UseGroupByInstanceProps,
23
+ UseGroupByOptions,
24
+ UseGroupByRowProps,
25
+ UseGroupByState,
26
+ UsePaginationInstanceProps,
27
+ UsePaginationOptions,
28
+ UsePaginationState,
29
+ UseResizeColumnsColumnOptions,
30
+ UseResizeColumnsColumnProps,
31
+ UseResizeColumnsOptions,
32
+ UseResizeColumnsState,
33
+ UseRowSelectHooks,
34
+ UseRowSelectInstanceProps,
35
+ UseRowSelectOptions,
36
+ UseRowSelectRowProps,
37
+ UseRowSelectState,
38
+ UseRowStateCellProps,
39
+ UseRowStateInstanceProps,
40
+ UseRowStateOptions,
41
+ UseRowStateRowProps,
42
+ UseRowStateState,
43
+ UseSortByColumnOptions,
44
+ UseSortByColumnProps,
45
+ UseSortByHooks,
46
+ UseSortByInstanceProps,
47
+ UseSortByOptions,
48
+ UseSortByState,
49
+ } from 'react-table'
50
+
51
+ declare module 'react-table' {
52
+ // take this file as-is, or comment out the sections that don't apply to your plugin configuration
53
+
54
+ export interface TableOptions<D extends Record<string, unknown>>
55
+ extends UseExpandedOptions<D>,
56
+ UseFiltersOptions<D>,
57
+ UseGlobalFiltersOptions<D>,
58
+ UseGroupByOptions<D>,
59
+ UsePaginationOptions<D>,
60
+ UseResizeColumnsOptions<D>,
61
+ UseRowSelectOptions<D>,
62
+ UseRowStateOptions<D>,
63
+ UseSortByOptions<D>,
64
+ // note that having Record here allows you to add anything to the options, this matches the spirit of the
65
+ // underlying js library, but might be cleaner if it's replaced by a more specific type that matches your
66
+ // feature set, this is a safe default.
67
+ Record<string, any> {}
68
+
69
+ export interface Hooks<
70
+ D extends Record<string, unknown> = Record<string, unknown>,
71
+ > extends UseExpandedHooks<D>,
72
+ UseGroupByHooks<D>,
73
+ UseRowSelectHooks<D>,
74
+ UseSortByHooks<D> {}
75
+
76
+ export interface TableInstance<
77
+ D extends Record<string, unknown> = Record<string, unknown>,
78
+ > extends UseColumnOrderInstanceProps<D>,
79
+ UseExpandedInstanceProps<D>,
80
+ UseFiltersInstanceProps<D>,
81
+ UseGlobalFiltersInstanceProps<D>,
82
+ UseGroupByInstanceProps<D>,
83
+ UsePaginationInstanceProps<D>,
84
+ UseRowSelectInstanceProps<D>,
85
+ UseRowStateInstanceProps<D>,
86
+ UseSortByInstanceProps<D> {}
87
+
88
+ export interface TableState<
89
+ D extends Record<string, unknown> = Record<string, unknown>,
90
+ > extends UseColumnOrderState<D>,
91
+ UseExpandedState<D>,
92
+ UseFiltersState<D>,
93
+ UseGlobalFiltersState<D>,
94
+ UseGroupByState<D>,
95
+ UsePaginationState<D>,
96
+ UseResizeColumnsState<D>,
97
+ UseRowSelectState<D>,
98
+ UseRowStateState<D>,
99
+ UseSortByState<D> {}
100
+
101
+ export interface ColumnInterface<
102
+ D extends Record<string, unknown> = Record<string, unknown>,
103
+ > extends UseFiltersColumnOptions<D>,
104
+ UseGlobalFiltersColumnOptions<D>,
105
+ UseGroupByColumnOptions<D>,
106
+ UseResizeColumnsColumnOptions<D>,
107
+ UseSortByColumnOptions<D> {}
108
+
109
+ export interface ColumnInstance<
110
+ D extends Record<string, unknown> = Record<string, unknown>,
111
+ > extends UseFiltersColumnProps<D>,
112
+ UseGroupByColumnProps<D>,
113
+ UseResizeColumnsColumnProps<D>,
114
+ UseSortByColumnProps<D> {}
115
+
116
+ export interface Cell<
117
+ D extends Record<string, unknown> = Record<string, unknown>,
118
+ V = any,
119
+ > extends UseGroupByCellProps<D>,
120
+ UseRowStateCellProps<D> {}
121
+
122
+ export interface Row<
123
+ D extends Record<string, unknown> = Record<string, unknown>,
124
+ > extends UseExpandedRowProps<D>,
125
+ UseGroupByRowProps<D>,
126
+ UseRowSelectRowProps<D>,
127
+ UseRowStateRowProps<D> {}
128
+ }
@@ -1,173 +1,173 @@
1
- import { MoreVert } from '@mui/icons-material'
2
- import {
3
- alpha,
4
- Box,
5
- BoxProps,
6
- IconButton,
7
- Menu,
8
- MenuProps,
9
- Pagination,
10
- styled,
11
- TableRow,
12
- } from '@mui/material'
13
- import { Order } from './types'
14
-
15
- export const StyledTableFooter = styled(Box)(({ theme }) => ({
16
- paddingTop: '1rem',
17
- width: '100%',
18
- display: 'flex',
19
- justifyContent: 'space-between',
20
- alignItems: 'center',
21
- }))
22
-
23
- export const StyledPagination = styled(Pagination)(({ theme }) => ({
24
- '& .MuiPaginationItem-root': {
25
- border: 'none',
26
- background: theme.palette.secondary.dark,
27
- },
28
- '& .MuiPaginationItem-previousNext': {
29
- border: theme.borders.grayLight,
30
- background: theme.palette.common.white,
31
- },
32
- '& .Mui-selected': {
33
- border: `2px solid ${theme.palette.common.yellow}`,
34
- },
35
- '& .MuiPaginationItem-ellipsis': {
36
- background: theme.palette.common.white,
37
- },
38
- }))
39
-
40
- export const StyledTableRow = styled(TableRow)<{ isSelected?: boolean }>(
41
- ({ theme, isSelected }) => ({
42
- background: isSelected && alpha(theme.palette.primary.main, 0.07),
43
- }),
44
- )
45
-
46
- export const StyledActionsRow = styled(Box)(({ theme }) => ({
47
- display: 'flex',
48
- gap: '16px',
49
- }))
50
-
51
- export const StyledTableActionsHeader = styled(Box)(({ theme }) => ({
52
- display: 'flex',
53
- justifyContent: 'space-between',
54
- alignItems: 'center',
55
-
56
- height: '50px',
57
- border: theme.borders.grayLight,
58
- borderBottom: 'none',
59
- background: theme.palette.secondary.light,
60
- padding: '0 15px',
61
-
62
- '& .MuiTypography-root': {
63
- fontSize: '14px',
64
- '& > span': {
65
- color: theme.palette.secondary.main,
66
- fontWeight: 'bold',
67
- },
68
- },
69
- }))
70
-
71
- export const StyledActionIconButton = styled((props: BoxProps) => (
72
- <Box {...props}>
73
- <MoreVert color="secondary" fontSize="small" />
74
- </Box>
75
- ))(({ theme }) => ({
76
- border: `1px solid ${theme.palette.secondary.main} `,
77
- borderRadius: '5px',
78
- display: 'flex',
79
- alignItems: 'center',
80
- padding: '5px',
81
- transition: 'border 0.2s ease, background 0.2s ease',
82
- ':hover': {
83
- border: `1px solid ${alpha(theme.palette.secondary.main, 0.5)} `,
84
- background: alpha(theme.palette.secondary.main, 0.06),
85
- },
86
- }))
87
-
88
- export const StyledLimitMenu = styled((props: MenuProps) => (
89
- <Menu
90
- elevation={0}
91
- anchorOrigin={{
92
- vertical: 'top',
93
- horizontal: 'right',
94
- }}
95
- transformOrigin={{
96
- vertical: 'bottom',
97
- horizontal: 'right',
98
- }}
99
- {...props}
100
- />
101
- ))(({ theme, open }) => ({
102
- '& .MuiPaper-root': {
103
- borderRadius: open ? '4px 4px 0px 0px' : '4px',
104
- outline: theme.borders.grayLight,
105
- minWidth: 130,
106
- color: 'rgb(55, 65, 81)',
107
- '& .MuiMenu-list': {
108
- padding: '0',
109
- },
110
- '& .MuiMenuItem-root': {
111
- fontFamily: 'Avenir',
112
- fontSize: '14px',
113
- fontWeight: 'bold',
114
- height: '35px',
115
- borderBottom: theme.borders.grayLight,
116
- align: 'center',
117
- '& .MuiSvgIcon-root': {
118
- fontSize: 18,
119
- color: theme.palette.text.secondary,
120
- marginRight: theme.spacing(1.5),
121
- },
122
- '&:active': {
123
- backgroundColor: alpha(theme.palette.primary.main, 0.2),
124
- },
125
- },
126
- },
127
- }))
128
-
129
- export const StyledLimitBox = styled(Box)<{ open: boolean }>(
130
- ({ theme, open }) => ({
131
- '& > .MuiBox-root': {
132
- padding: '0 10px',
133
- cursor: 'pointer',
134
- userSelect: 'none',
135
- height: '35px',
136
- borderRadius: open ? '0px 0px 4px 4px' : '4px',
137
- outline: theme.borders.grayLight,
138
- width: '130px',
139
- display: 'flex',
140
- justifyContent: 'space-between',
141
- alignItems: 'center',
142
- '& .MuiTypography-root': {
143
- fontWeight: 'bold',
144
- },
145
- '& .MuiSvgIcon-root': {
146
- rotate: open && '180deg',
147
- },
148
- },
149
- }),
150
- )
151
-
152
- export const StyledSortButton = styled(IconButton)<{
153
- sortOrder: Order
154
- dataIndex: string
155
- }>(({ theme, sortOrder, dataIndex }) => ({
156
- marginLeft: '10px',
157
- ...(sortOrder === '' && {
158
- // '& .MuiSvgIcon-root': {
159
- // // visibility: 'hidden',
160
- // },
161
-
162
- transition: 'transform 1s ease-in-out',
163
- }),
164
- ...(sortOrder === 'asc' && {
165
- transition: 'transform 1s ease-in-out',
166
- }),
167
- ...(sortOrder === 'desc' && {
168
- '& .MuiSvgIcon-root': {
169
- transform: 'rotate(180deg)',
170
- },
171
- transition: 'transform 1s ease-in-out',
172
- }),
173
- }))
1
+ import { MoreVert } from '@mui/icons-material'
2
+ import {
3
+ alpha,
4
+ Box,
5
+ BoxProps,
6
+ IconButton,
7
+ Menu,
8
+ MenuProps,
9
+ Pagination,
10
+ styled,
11
+ TableRow,
12
+ } from '@mui/material'
13
+ import { Order } from './types'
14
+
15
+ export const StyledTableFooter = styled(Box)(({ theme }) => ({
16
+ paddingTop: '1rem',
17
+ width: '100%',
18
+ display: 'flex',
19
+ justifyContent: 'space-between',
20
+ alignItems: 'center',
21
+ }))
22
+
23
+ export const StyledPagination = styled(Pagination)(({ theme }) => ({
24
+ '& .MuiPaginationItem-root': {
25
+ border: 'none',
26
+ background: theme.palette.secondary.dark,
27
+ },
28
+ '& .MuiPaginationItem-previousNext': {
29
+ border: theme.borders.grayLight,
30
+ background: theme.palette.common.white,
31
+ },
32
+ '& .Mui-selected': {
33
+ border: `2px solid ${theme.palette.common.yellow}`,
34
+ },
35
+ '& .MuiPaginationItem-ellipsis': {
36
+ background: theme.palette.common.white,
37
+ },
38
+ }))
39
+
40
+ export const StyledTableRow = styled(TableRow)<{ isSelected?: boolean }>(
41
+ ({ theme, isSelected }) => ({
42
+ background: isSelected && alpha(theme.palette.primary.main, 0.07),
43
+ }),
44
+ )
45
+
46
+ export const StyledActionsRow = styled(Box)(({ theme }) => ({
47
+ display: 'flex',
48
+ gap: '16px',
49
+ }))
50
+
51
+ export const StyledTableActionsHeader = styled(Box)(({ theme }) => ({
52
+ display: 'flex',
53
+ justifyContent: 'space-between',
54
+ alignItems: 'center',
55
+
56
+ height: '50px',
57
+ border: theme.borders.grayLight,
58
+ borderBottom: 'none',
59
+ background: theme.palette.secondary.light,
60
+ padding: '0 15px',
61
+
62
+ '& .MuiTypography-root': {
63
+ fontSize: '14px',
64
+ '& > span': {
65
+ color: theme.palette.secondary.main,
66
+ fontWeight: 'bold',
67
+ },
68
+ },
69
+ }))
70
+
71
+ export const StyledActionIconButton = styled((props: BoxProps) => (
72
+ <Box {...props}>
73
+ <MoreVert color="secondary" fontSize="small" />
74
+ </Box>
75
+ ))(({ theme }) => ({
76
+ border: `1px solid ${theme.palette.secondary.main} `,
77
+ borderRadius: '5px',
78
+ display: 'flex',
79
+ alignItems: 'center',
80
+ padding: '5px',
81
+ transition: 'border 0.2s ease, background 0.2s ease',
82
+ ':hover': {
83
+ border: `1px solid ${alpha(theme.palette.secondary.main, 0.5)} `,
84
+ background: alpha(theme.palette.secondary.main, 0.06),
85
+ },
86
+ }))
87
+
88
+ export const StyledLimitMenu = styled((props: MenuProps) => (
89
+ <Menu
90
+ elevation={0}
91
+ anchorOrigin={{
92
+ vertical: 'top',
93
+ horizontal: 'right',
94
+ }}
95
+ transformOrigin={{
96
+ vertical: 'bottom',
97
+ horizontal: 'right',
98
+ }}
99
+ {...props}
100
+ />
101
+ ))(({ theme, open }) => ({
102
+ '& .MuiPaper-root': {
103
+ borderRadius: open ? '4px 4px 0px 0px' : '4px',
104
+ outline: theme.borders.grayLight,
105
+ minWidth: 130,
106
+ color: 'rgb(55, 65, 81)',
107
+ '& .MuiMenu-list': {
108
+ padding: '0',
109
+ },
110
+ '& .MuiMenuItem-root': {
111
+ fontFamily: 'Avenir',
112
+ fontSize: '14px',
113
+ fontWeight: 'bold',
114
+ height: '35px',
115
+ borderBottom: theme.borders.grayLight,
116
+ align: 'center',
117
+ '& .MuiSvgIcon-root': {
118
+ fontSize: 18,
119
+ color: theme.palette.text.secondary,
120
+ marginRight: theme.spacing(1.5),
121
+ },
122
+ '&:active': {
123
+ backgroundColor: alpha(theme.palette.primary.main, 0.2),
124
+ },
125
+ },
126
+ },
127
+ }))
128
+
129
+ export const StyledLimitBox = styled(Box)<{ open: boolean }>(
130
+ ({ theme, open }) => ({
131
+ '& > .MuiBox-root': {
132
+ padding: '0 10px',
133
+ cursor: 'pointer',
134
+ userSelect: 'none',
135
+ height: '35px',
136
+ borderRadius: open ? '0px 0px 4px 4px' : '4px',
137
+ outline: theme.borders.grayLight,
138
+ width: '130px',
139
+ display: 'flex',
140
+ justifyContent: 'space-between',
141
+ alignItems: 'center',
142
+ '& .MuiTypography-root': {
143
+ fontWeight: 'bold',
144
+ },
145
+ '& .MuiSvgIcon-root': {
146
+ rotate: open && '180deg',
147
+ },
148
+ },
149
+ }),
150
+ )
151
+
152
+ export const StyledSortButton = styled(IconButton)<{
153
+ sortOrder: Order
154
+ dataIndex: string
155
+ }>(({ theme, sortOrder, dataIndex }) => ({
156
+ marginLeft: '10px',
157
+ ...(sortOrder === '' && {
158
+ // '& .MuiSvgIcon-root': {
159
+ // // visibility: 'hidden',
160
+ // },
161
+
162
+ transition: 'transform 1s ease-in-out',
163
+ }),
164
+ ...(sortOrder === 'asc' && {
165
+ transition: 'transform 1s ease-in-out',
166
+ }),
167
+ ...(sortOrder === 'desc' && {
168
+ '& .MuiSvgIcon-root': {
169
+ transform: 'rotate(180deg)',
170
+ },
171
+ transition: 'transform 1s ease-in-out',
172
+ }),
173
+ }))