@addev-be/ui 0.14.5 → 0.15.1

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 (215) hide show
  1. package/assets/icons/arrow-down-1-9.svg +1 -1
  2. package/assets/icons/arrow-down-a-z.svg +1 -1
  3. package/assets/icons/arrow-up-z-a.svg +1 -1
  4. package/assets/icons/check.svg +1 -1
  5. package/assets/icons/circle-check.svg +1 -1
  6. package/assets/icons/down.svg +1 -1
  7. package/assets/icons/filter-full.svg +1 -1
  8. package/assets/icons/filter.svg +1 -1
  9. package/assets/icons/hashtag.svg +1 -1
  10. package/assets/icons/image-slash.svg +1 -1
  11. package/assets/icons/left.svg +1 -1
  12. package/assets/icons/magnifier.svg +1 -1
  13. package/assets/icons/phone.svg +1 -1
  14. package/assets/icons/right.svg +1 -1
  15. package/assets/icons/sort-calendar-ascending.svg +5 -5
  16. package/assets/icons/spinner-third.svg +1 -1
  17. package/assets/icons/table-columns.svg +1 -1
  18. package/assets/icons/table-footer-slash.svg +4 -4
  19. package/assets/icons/table-footer.svg +3 -3
  20. package/assets/icons/up.svg +1 -1
  21. package/assets/icons/user-tie.svg +1 -1
  22. package/assets/icons/x-bar.svg +3 -3
  23. package/dist/components/auth/LoginForm.js +0 -1
  24. package/dist/components/data/DataGrid/AdvancedRequestDataGrid.d.ts +10 -0
  25. package/dist/components/data/DataGrid/AdvancedRequestDataGrid.js +173 -0
  26. package/dist/components/data/DataGrid/FilterValuesScroller.d.ts +13 -0
  27. package/dist/components/data/DataGrid/FilterValuesScroller.js +73 -0
  28. package/dist/components/data/DataGrid/VirtualScroller.d.ts +11 -0
  29. package/dist/components/data/DataGrid/VirtualScroller.js +41 -0
  30. package/dist/components/data/DataGrid/helpers/advancedRequests.d.ts +12 -0
  31. package/dist/components/data/DataGrid/helpers/advancedRequests.js +53 -0
  32. package/dist/components/data/DataGrid/helpers.d.ts +28 -0
  33. package/dist/components/data/DataGrid/helpers.js +436 -0
  34. package/dist/config/types.d.ts +11 -0
  35. package/dist/config/types.js +2 -0
  36. package/dist/providers/AuthenticationProvider/index.d.ts +0 -1
  37. package/dist/providers/AuthenticationProvider/index.js +14 -28
  38. package/dist/services/advancedRequests.d.ts +1 -1
  39. package/dist/services/requests/userPermissions.d.ts +4 -0
  40. package/dist/services/requests/userPermissions.js +20 -0
  41. package/dist/services/sqlRequests.d.ts +1 -1
  42. package/package.json +1 -1
  43. package/src/Icons.tsx +134 -134
  44. package/src/components/auth/LoginForm.tsx +84 -84
  45. package/src/components/auth/LoginPage.tsx +32 -32
  46. package/src/components/auth/PasswordRecoveryForm.tsx +52 -52
  47. package/src/components/auth/PasswordResetForm.tsx +112 -112
  48. package/src/components/auth/index.ts +4 -4
  49. package/src/components/auth/styles.ts +14 -14
  50. package/src/components/data/AdvancedRequestDataGrid/helpers/advancedRequests.ts +93 -93
  51. package/src/components/data/AdvancedRequestDataGrid/helpers/columns.tsx +262 -262
  52. package/src/components/data/AdvancedRequestDataGrid/helpers/index.ts +2 -2
  53. package/src/components/data/AdvancedRequestDataGrid/index.tsx +267 -267
  54. package/src/components/data/AdvancedRequestDataGrid/types.ts +47 -47
  55. package/src/components/data/DataGrid/DataGridCell.tsx +83 -77
  56. package/src/components/data/DataGrid/DataGridColumnsModal/helpers.ts +9 -9
  57. package/src/components/data/DataGrid/DataGridColumnsModal/hooks.tsx +59 -59
  58. package/src/components/data/DataGrid/DataGridColumnsModal/index.tsx +182 -182
  59. package/src/components/data/DataGrid/DataGridColumnsModal/styles.ts +104 -104
  60. package/src/components/data/DataGrid/DataGridEditableCell/CheckboxEditableCell.tsx +38 -38
  61. package/src/components/data/DataGrid/DataGridEditableCell/DateEditableCell.tsx +39 -39
  62. package/src/components/data/DataGrid/DataGridEditableCell/NumberEditableCell.tsx +68 -68
  63. package/src/components/data/DataGrid/DataGridEditableCell/TextEditableCell.tsx +38 -38
  64. package/src/components/data/DataGrid/DataGridEditableCell/index.tsx +106 -60
  65. package/src/components/data/DataGrid/DataGridEditableCell/styles.ts +35 -0
  66. package/src/components/data/DataGrid/DataGridEditableCell/types.ts +17 -14
  67. package/src/components/data/DataGrid/DataGridFilterMenu/FilterValuesScroller.tsx +131 -131
  68. package/src/components/data/DataGrid/DataGridFilterMenu/hooks.tsx +81 -81
  69. package/src/components/data/DataGrid/DataGridFilterMenu/index.tsx +376 -376
  70. package/src/components/data/DataGrid/DataGridFilterMenu/styles.ts +97 -97
  71. package/src/components/data/DataGrid/DataGridFooter.tsx +45 -45
  72. package/src/components/data/DataGrid/DataGridHeader.tsx +173 -173
  73. package/src/components/data/DataGrid/DataGridHeaderCell.tsx +115 -115
  74. package/src/components/data/DataGrid/DataGridRowTemplate.tsx +80 -78
  75. package/src/components/data/DataGrid/FilterModalContent/index.tsx +136 -136
  76. package/src/components/data/DataGrid/FilterModalContent/styles.ts +22 -22
  77. package/src/components/data/DataGrid/constants.ts +6 -6
  78. package/src/components/data/DataGrid/helpers/columns.tsx +384 -383
  79. package/src/components/data/DataGrid/helpers/filters.ts +287 -287
  80. package/src/components/data/DataGrid/helpers/index.ts +2 -2
  81. package/src/components/data/DataGrid/hooks/index.ts +29 -29
  82. package/src/components/data/DataGrid/hooks/useDataGrid.tsx +378 -411
  83. package/src/components/data/DataGrid/hooks/useDataGridChangedRows.ts +56 -56
  84. package/src/components/data/DataGrid/hooks/useDataGridCopy.ts +174 -174
  85. package/src/components/data/DataGrid/hooks/useDataGridSettings.ts +48 -48
  86. package/src/components/data/DataGrid/index.tsx +110 -110
  87. package/src/components/data/DataGrid/styles.ts +369 -390
  88. package/src/components/data/DataGrid/types.ts +367 -355
  89. package/src/components/data/SmartQueryDataGrid/helpers/columns.tsx +333 -333
  90. package/src/components/data/SmartQueryDataGrid/helpers/hooks.ts +41 -41
  91. package/src/components/data/SmartQueryDataGrid/helpers/index.ts +2 -2
  92. package/src/components/data/SmartQueryDataGrid/helpers/smartQueries.ts +17 -17
  93. package/src/components/data/SmartQueryDataGrid/hooks.ts +75 -75
  94. package/src/components/data/SmartQueryDataGrid/index.tsx +338 -338
  95. package/src/components/data/SmartQueryDataGrid/types.ts +45 -45
  96. package/src/components/data/SqlRequestDataGrid/SqlRequestForeignListEditableCell.tsx +16 -0
  97. package/src/components/data/SqlRequestDataGrid/helpers/columns.tsx +478 -366
  98. package/src/components/data/SqlRequestDataGrid/helpers/index.ts +2 -2
  99. package/src/components/data/SqlRequestDataGrid/helpers/sqlRequests.ts +16 -16
  100. package/src/components/data/SqlRequestDataGrid/index.tsx +402 -402
  101. package/src/components/data/SqlRequestDataGrid/styles.ts +15 -15
  102. package/src/components/data/SqlRequestDataGrid/types.ts +74 -63
  103. package/src/components/data/SqlRequestForeignList/index.tsx +259 -157
  104. package/src/components/data/SqlRequestForeignList/styles.ts +42 -38
  105. package/src/components/data/SqlRequestForeignList/types.ts +34 -0
  106. package/src/components/data/SqlRequestGrid/filters/FiltersSidebar.tsx +110 -110
  107. package/src/components/data/SqlRequestGrid/filters/styles.ts +88 -88
  108. package/src/components/data/SqlRequestGrid/helpers/index.ts +1 -1
  109. package/src/components/data/SqlRequestGrid/helpers/sqlRequests.ts +16 -16
  110. package/src/components/data/SqlRequestGrid/index.tsx +316 -316
  111. package/src/components/data/SqlRequestGrid/styles.ts +20 -20
  112. package/src/components/data/SqlRequestGrid/types.ts +75 -75
  113. package/src/components/data/VirtualScroller/hooks.ts +71 -71
  114. package/src/components/data/VirtualScroller/index.tsx +91 -89
  115. package/src/components/data/VirtualScroller/styles.ts +58 -58
  116. package/src/components/data/VirtualScroller/types.ts +12 -12
  117. package/src/components/data/index.ts +23 -23
  118. package/src/components/forms/AutoTextArea.tsx +41 -41
  119. package/src/components/forms/Button.tsx +133 -133
  120. package/src/components/forms/Form/Checkbox.tsx +13 -13
  121. package/src/components/forms/Form/FormGroup.tsx +27 -27
  122. package/src/components/forms/Form/Input.tsx +13 -13
  123. package/src/components/forms/Form/InputWithLabel.tsx +18 -18
  124. package/src/components/forms/Form/Select.tsx +76 -65
  125. package/src/components/forms/Form/TextArea.tsx +13 -13
  126. package/src/components/forms/Form/index.tsx +37 -37
  127. package/src/components/forms/Form/styles.ts +101 -101
  128. package/src/components/forms/Form/types.ts +7 -7
  129. package/src/components/forms/IconButton.tsx +57 -57
  130. package/src/components/forms/IndeterminateCheckbox.tsx +46 -46
  131. package/src/components/forms/Select.tsx +35 -35
  132. package/src/components/forms/VerticalLabel.tsx +20 -20
  133. package/src/components/forms/index.ts +8 -8
  134. package/src/components/forms/styles.ts +31 -31
  135. package/src/components/index.ts +6 -6
  136. package/src/components/layout/Columns.ts +20 -20
  137. package/src/components/layout/Dropdown/index.tsx +113 -112
  138. package/src/components/layout/Dropdown/styles.ts +45 -45
  139. package/src/components/layout/Grid/index.tsx +8 -8
  140. package/src/components/layout/Grid/styles.ts +34 -34
  141. package/src/components/layout/Loading/index.tsx +29 -29
  142. package/src/components/layout/Loading/styles.ts +29 -29
  143. package/src/components/layout/Masonry/index.tsx +29 -29
  144. package/src/components/layout/Masonry/styles.ts +20 -20
  145. package/src/components/layout/Modal/index.tsx +51 -51
  146. package/src/components/layout/Modal/styles.ts +121 -121
  147. package/src/components/layout/index.ts +6 -6
  148. package/src/components/search/HighlightedText.tsx +37 -37
  149. package/src/components/search/QuickSearchBar.tsx +86 -86
  150. package/src/components/search/QuickSearchResults.tsx +86 -86
  151. package/src/components/search/index.ts +9 -9
  152. package/src/components/search/styles.ts +96 -96
  153. package/src/components/search/types.ts +26 -26
  154. package/src/components/ui/Avatar/index.tsx +54 -54
  155. package/src/components/ui/Card/index.tsx +14 -14
  156. package/src/components/ui/Card/styles.ts +37 -37
  157. package/src/components/ui/ContextMenu/index.tsx +79 -79
  158. package/src/components/ui/ContextMenu/styles.ts +119 -119
  159. package/src/components/ui/Ellipsis.tsx +32 -0
  160. package/src/components/ui/Label.tsx +90 -90
  161. package/src/components/ui/Message/index.tsx +57 -57
  162. package/src/components/ui/Message/styles.ts +40 -40
  163. package/src/components/ui/index.ts +6 -5
  164. package/src/config/index.ts +14 -14
  165. package/src/helpers/dates.ts +17 -17
  166. package/src/helpers/getScrollbarSize.ts +14 -14
  167. package/src/helpers/index.ts +3 -3
  168. package/src/helpers/numbers.ts +63 -63
  169. package/src/helpers/text.ts +13 -13
  170. package/src/hooks/index.ts +3 -3
  171. package/src/hooks/useElementSize.ts +24 -24
  172. package/src/hooks/useShowArchived.ts +28 -28
  173. package/src/hooks/useWindowSize.ts +20 -20
  174. package/src/index.ts +9 -9
  175. package/src/providers/AuthenticationProvider/helpers.ts +3 -3
  176. package/src/providers/AuthenticationProvider/index.tsx +243 -243
  177. package/src/providers/LoadingProvider/index.tsx +47 -47
  178. package/src/providers/PortalsProvider/index.tsx +54 -54
  179. package/src/providers/PortalsProvider/styles.ts +31 -31
  180. package/src/providers/SettingsProvider/index.tsx +70 -70
  181. package/src/providers/ThemeProvider/ThemeProvider.ts +63 -63
  182. package/src/providers/ThemeProvider/defaultTheme.ts +457 -457
  183. package/src/providers/ThemeProvider/helpers.ts +11 -11
  184. package/src/providers/ThemeProvider/index.ts +4 -4
  185. package/src/providers/ThemeProvider/types.ts +131 -131
  186. package/src/providers/TrackingProvider/index.tsx +71 -71
  187. package/src/providers/UiProviders/index.tsx +68 -68
  188. package/src/providers/UiProviders/styles.ts +10 -10
  189. package/src/providers/hooks.ts +12 -12
  190. package/src/providers/index.ts +8 -8
  191. package/src/services/HttpService.ts +92 -92
  192. package/src/services/WebSocketService.ts +137 -137
  193. package/src/services/advancedRequests.ts +102 -102
  194. package/src/services/base.ts +23 -23
  195. package/src/services/globalSearch.ts +29 -29
  196. package/src/services/hooks.ts +44 -44
  197. package/src/services/index.ts +21 -21
  198. package/src/services/requests/auth.ts +44 -44
  199. package/src/services/requests/generic.ts +62 -62
  200. package/src/services/requests/tracking.ts +12 -12
  201. package/src/services/requests/userProfiles.ts +35 -35
  202. package/src/services/requests/users.ts +28 -28
  203. package/src/services/smartQueries.ts +122 -122
  204. package/src/services/sqlRequests.ts +111 -111
  205. package/src/services/types/auth.ts +131 -131
  206. package/src/services/types/base.ts +10 -10
  207. package/src/services/types/generic.ts +96 -96
  208. package/src/services/types/tracking.ts +39 -39
  209. package/src/services/types/userProfiles.ts +107 -107
  210. package/src/services/types/users.ts +106 -106
  211. package/src/services/updateSqlRequests.ts +34 -34
  212. package/src/styles/animations.scss +30 -30
  213. package/src/styles/index.scss +42 -42
  214. package/src/typings.d.ts +13 -13
  215. package/tsconfig.json +18 -18
@@ -1,107 +1,107 @@
1
- import * as t from 'io-ts';
2
-
3
- import { baseModelDtoCodec } from './base';
4
-
5
- export const userProfileDtoCodec = t.type(
6
- {
7
- ...baseModelDtoCodec.props,
8
- name: t.string,
9
- permissions: t.array(t.string),
10
- isAdmin: t.boolean,
11
- },
12
- 'UserProfileDTO'
13
- );
14
-
15
- export type UserProfileDTO = t.TypeOf<typeof userProfileDtoCodec>;
16
-
17
- /*****/
18
-
19
- export const getUserProfileRequestDtoCodec = t.type(
20
- {
21
- id: t.string,
22
- },
23
- 'GetUserProfileRequestDTO'
24
- );
25
-
26
- export const getUserProfileResponseDtoCodec = t.type(
27
- {
28
- status: t.number,
29
- data: userProfileDtoCodec,
30
- },
31
- 'GetUserProfileResponseDTO'
32
- );
33
-
34
- export type GetUserProfileRequestDTO = t.TypeOf<
35
- typeof getUserProfileRequestDtoCodec
36
- >;
37
- export type GetUserProfileResponseDTO = t.TypeOf<
38
- typeof getUserProfileResponseDtoCodec
39
- >;
40
-
41
- /*****/
42
-
43
- export const getAllUserProfilesRequestDtoCodec = t.type(
44
- {},
45
- 'GetAllUserProfilesRequestDTO'
46
- );
47
-
48
- export const getAllUserProfilesResponseDtoCodec = t.type(
49
- {
50
- data: t.array(userProfileDtoCodec),
51
- },
52
- 'GetAllUserProfilesResponseDTO'
53
- );
54
-
55
- export type GetAllUserProfilesRequestDTO = t.TypeOf<
56
- typeof getAllUserProfilesRequestDtoCodec
57
- >;
58
- export type GetAllUserProfilesResponseDTO = t.TypeOf<
59
- typeof getAllUserProfilesResponseDtoCodec
60
- >;
61
-
62
- /*****/
63
-
64
- export const saveUserProfileRequestDtoCodec = t.type(
65
- {
66
- data: userProfileDtoCodec,
67
- },
68
- 'SaveUserProfileRequestDTO'
69
- );
70
-
71
- export const saveUserProfileResponseDtoCodec = t.type(
72
- {
73
- status: t.number,
74
- data: userProfileDtoCodec,
75
- },
76
- 'SaveUserProfileResponseDTO'
77
- );
78
-
79
- export type SaveUserProfileRequestDTO = t.TypeOf<
80
- typeof saveUserProfileRequestDtoCodec
81
- >;
82
- export type SaveUserProfileResponseDTO = t.TypeOf<
83
- typeof saveUserProfileResponseDtoCodec
84
- >;
85
-
86
- /*****/
87
-
88
- export const deleteUserProfileRequestDtoCodec = t.type(
89
- {
90
- id: t.string,
91
- },
92
- 'DeleteUserProfileRequestDTO'
93
- );
94
-
95
- export const deleteUserProfileResponseDtoCodec = t.type(
96
- {
97
- status: t.number,
98
- },
99
- 'DeleteUserProfileResponseDTO'
100
- );
101
-
102
- export type DeleteUserProfileRequestDTO = t.TypeOf<
103
- typeof deleteUserProfileRequestDtoCodec
104
- >;
105
- export type DeleteUserProfileResponseDTO = t.TypeOf<
106
- typeof deleteUserProfileResponseDtoCodec
107
- >;
1
+ import * as t from 'io-ts';
2
+
3
+ import { baseModelDtoCodec } from './base';
4
+
5
+ export const userProfileDtoCodec = t.type(
6
+ {
7
+ ...baseModelDtoCodec.props,
8
+ name: t.string,
9
+ permissions: t.array(t.string),
10
+ isAdmin: t.boolean,
11
+ },
12
+ 'UserProfileDTO'
13
+ );
14
+
15
+ export type UserProfileDTO = t.TypeOf<typeof userProfileDtoCodec>;
16
+
17
+ /*****/
18
+
19
+ export const getUserProfileRequestDtoCodec = t.type(
20
+ {
21
+ id: t.string,
22
+ },
23
+ 'GetUserProfileRequestDTO'
24
+ );
25
+
26
+ export const getUserProfileResponseDtoCodec = t.type(
27
+ {
28
+ status: t.number,
29
+ data: userProfileDtoCodec,
30
+ },
31
+ 'GetUserProfileResponseDTO'
32
+ );
33
+
34
+ export type GetUserProfileRequestDTO = t.TypeOf<
35
+ typeof getUserProfileRequestDtoCodec
36
+ >;
37
+ export type GetUserProfileResponseDTO = t.TypeOf<
38
+ typeof getUserProfileResponseDtoCodec
39
+ >;
40
+
41
+ /*****/
42
+
43
+ export const getAllUserProfilesRequestDtoCodec = t.type(
44
+ {},
45
+ 'GetAllUserProfilesRequestDTO'
46
+ );
47
+
48
+ export const getAllUserProfilesResponseDtoCodec = t.type(
49
+ {
50
+ data: t.array(userProfileDtoCodec),
51
+ },
52
+ 'GetAllUserProfilesResponseDTO'
53
+ );
54
+
55
+ export type GetAllUserProfilesRequestDTO = t.TypeOf<
56
+ typeof getAllUserProfilesRequestDtoCodec
57
+ >;
58
+ export type GetAllUserProfilesResponseDTO = t.TypeOf<
59
+ typeof getAllUserProfilesResponseDtoCodec
60
+ >;
61
+
62
+ /*****/
63
+
64
+ export const saveUserProfileRequestDtoCodec = t.type(
65
+ {
66
+ data: userProfileDtoCodec,
67
+ },
68
+ 'SaveUserProfileRequestDTO'
69
+ );
70
+
71
+ export const saveUserProfileResponseDtoCodec = t.type(
72
+ {
73
+ status: t.number,
74
+ data: userProfileDtoCodec,
75
+ },
76
+ 'SaveUserProfileResponseDTO'
77
+ );
78
+
79
+ export type SaveUserProfileRequestDTO = t.TypeOf<
80
+ typeof saveUserProfileRequestDtoCodec
81
+ >;
82
+ export type SaveUserProfileResponseDTO = t.TypeOf<
83
+ typeof saveUserProfileResponseDtoCodec
84
+ >;
85
+
86
+ /*****/
87
+
88
+ export const deleteUserProfileRequestDtoCodec = t.type(
89
+ {
90
+ id: t.string,
91
+ },
92
+ 'DeleteUserProfileRequestDTO'
93
+ );
94
+
95
+ export const deleteUserProfileResponseDtoCodec = t.type(
96
+ {
97
+ status: t.number,
98
+ },
99
+ 'DeleteUserProfileResponseDTO'
100
+ );
101
+
102
+ export type DeleteUserProfileRequestDTO = t.TypeOf<
103
+ typeof deleteUserProfileRequestDtoCodec
104
+ >;
105
+ export type DeleteUserProfileResponseDTO = t.TypeOf<
106
+ typeof deleteUserProfileResponseDtoCodec
107
+ >;
@@ -1,106 +1,106 @@
1
- import * as t from 'io-ts';
2
-
3
- import { baseModelDtoCodec } from './base';
4
- import { userProfileDtoCodec } from './userProfiles';
5
-
6
- export const userDtoCodec = t.intersection(
7
- [
8
- t.type({
9
- ...baseModelDtoCodec.props,
10
- username: t.string,
11
- permissions: t.array(t.string),
12
- isAdmin: t.boolean,
13
- profile: t.union([userProfileDtoCodec, t.null]),
14
- }),
15
- t.partial({
16
- name: t.string,
17
- email: t.string,
18
- lastLogin: t.union([t.string, t.null]),
19
- }),
20
- ],
21
- 'UserDTO'
22
- );
23
-
24
- export type UserDTO = t.TypeOf<typeof userDtoCodec>;
25
-
26
- /*****/
27
-
28
- export const getUserRequestDtoCodec = t.type(
29
- {
30
- id: t.string,
31
- },
32
- 'GetUserRequestDTO'
33
- );
34
-
35
- export const getUserResponseDtoCodec = t.type(
36
- {
37
- status: t.number,
38
- data: userDtoCodec,
39
- },
40
- 'GetUserResponseDTO'
41
- );
42
-
43
- export type GetUserRequestDTO = t.TypeOf<typeof getUserRequestDtoCodec>;
44
- export type GetUserResponseDTO = t.TypeOf<typeof getUserResponseDtoCodec>;
45
-
46
- /*****/
47
-
48
- export const getAllUsersRequestDtoCodec = t.type({}, 'GetAllUsersRequestDTO');
49
-
50
- export const getAllUsersResponseDtoCodec = t.type(
51
- {
52
- status: t.number,
53
- data: t.array(userDtoCodec),
54
- },
55
- 'GetAllUsersResponseDTO'
56
- );
57
-
58
- export type GetAllUsersRequestDTO = t.TypeOf<typeof getAllUsersRequestDtoCodec>;
59
- export type GetAllUsersResponseDTO = t.TypeOf<
60
- typeof getAllUsersResponseDtoCodec
61
- >;
62
-
63
- /*****/
64
-
65
- export const saveUserRequestDtoCodec = t.type(
66
- {
67
- data: t.intersection([
68
- userDtoCodec,
69
- t.partial({
70
- password: t.string,
71
- }),
72
- ]),
73
- password: t.string,
74
- },
75
- 'SaveUserRequestDTO'
76
- );
77
-
78
- export const saveUserResponseDtoCodec = t.type(
79
- {
80
- status: t.number,
81
- data: userDtoCodec,
82
- },
83
- 'SaveUserResponseDTO'
84
- );
85
-
86
- export type SaveUserRequestDTO = t.TypeOf<typeof saveUserRequestDtoCodec>;
87
- export type SaveUserResponseDTO = t.TypeOf<typeof saveUserResponseDtoCodec>;
88
-
89
- /*****/
90
-
91
- export const deleteUserRequestDtoCodec = t.type(
92
- {
93
- id: t.string,
94
- },
95
- 'DeleteUserRequestDTO'
96
- );
97
-
98
- export const deleteUserResponseDtoCodec = t.type(
99
- {
100
- status: t.number,
101
- },
102
- 'DeleteUserResponseDTO'
103
- );
104
-
105
- export type DeleteUserRequestDTO = t.TypeOf<typeof deleteUserRequestDtoCodec>;
106
- export type DeleteUserResponseDTO = t.TypeOf<typeof deleteUserResponseDtoCodec>;
1
+ import * as t from 'io-ts';
2
+
3
+ import { baseModelDtoCodec } from './base';
4
+ import { userProfileDtoCodec } from './userProfiles';
5
+
6
+ export const userDtoCodec = t.intersection(
7
+ [
8
+ t.type({
9
+ ...baseModelDtoCodec.props,
10
+ username: t.string,
11
+ permissions: t.array(t.string),
12
+ isAdmin: t.boolean,
13
+ profile: t.union([userProfileDtoCodec, t.null]),
14
+ }),
15
+ t.partial({
16
+ name: t.string,
17
+ email: t.string,
18
+ lastLogin: t.union([t.string, t.null]),
19
+ }),
20
+ ],
21
+ 'UserDTO'
22
+ );
23
+
24
+ export type UserDTO = t.TypeOf<typeof userDtoCodec>;
25
+
26
+ /*****/
27
+
28
+ export const getUserRequestDtoCodec = t.type(
29
+ {
30
+ id: t.string,
31
+ },
32
+ 'GetUserRequestDTO'
33
+ );
34
+
35
+ export const getUserResponseDtoCodec = t.type(
36
+ {
37
+ status: t.number,
38
+ data: userDtoCodec,
39
+ },
40
+ 'GetUserResponseDTO'
41
+ );
42
+
43
+ export type GetUserRequestDTO = t.TypeOf<typeof getUserRequestDtoCodec>;
44
+ export type GetUserResponseDTO = t.TypeOf<typeof getUserResponseDtoCodec>;
45
+
46
+ /*****/
47
+
48
+ export const getAllUsersRequestDtoCodec = t.type({}, 'GetAllUsersRequestDTO');
49
+
50
+ export const getAllUsersResponseDtoCodec = t.type(
51
+ {
52
+ status: t.number,
53
+ data: t.array(userDtoCodec),
54
+ },
55
+ 'GetAllUsersResponseDTO'
56
+ );
57
+
58
+ export type GetAllUsersRequestDTO = t.TypeOf<typeof getAllUsersRequestDtoCodec>;
59
+ export type GetAllUsersResponseDTO = t.TypeOf<
60
+ typeof getAllUsersResponseDtoCodec
61
+ >;
62
+
63
+ /*****/
64
+
65
+ export const saveUserRequestDtoCodec = t.type(
66
+ {
67
+ data: t.intersection([
68
+ userDtoCodec,
69
+ t.partial({
70
+ password: t.string,
71
+ }),
72
+ ]),
73
+ password: t.string,
74
+ },
75
+ 'SaveUserRequestDTO'
76
+ );
77
+
78
+ export const saveUserResponseDtoCodec = t.type(
79
+ {
80
+ status: t.number,
81
+ data: userDtoCodec,
82
+ },
83
+ 'SaveUserResponseDTO'
84
+ );
85
+
86
+ export type SaveUserRequestDTO = t.TypeOf<typeof saveUserRequestDtoCodec>;
87
+ export type SaveUserResponseDTO = t.TypeOf<typeof saveUserResponseDtoCodec>;
88
+
89
+ /*****/
90
+
91
+ export const deleteUserRequestDtoCodec = t.type(
92
+ {
93
+ id: t.string,
94
+ },
95
+ 'DeleteUserRequestDTO'
96
+ );
97
+
98
+ export const deleteUserResponseDtoCodec = t.type(
99
+ {
100
+ status: t.number,
101
+ },
102
+ 'DeleteUserResponseDTO'
103
+ );
104
+
105
+ export type DeleteUserRequestDTO = t.TypeOf<typeof deleteUserRequestDtoCodec>;
106
+ export type DeleteUserResponseDTO = t.TypeOf<typeof deleteUserResponseDtoCodec>;
@@ -1,34 +1,34 @@
1
- import { useWebSocketRequestHandler } from './hooks';
2
-
3
- export type UpdateSqlRequestDTO = {
4
- type: string;
5
- added: {
6
- [id: string]: {
7
- [field: string]: string | number | boolean | null | undefined;
8
- };
9
- };
10
- updated: {
11
- [id: string]: {
12
- [field: string]: string | number | boolean | null | undefined;
13
- };
14
- };
15
- };
16
-
17
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
18
- export type UpdateSqlResponseDTO = {
19
- results: {
20
- [id: string]: {
21
- status: number;
22
- error?: string;
23
- };
24
- };
25
- };
26
-
27
- type UpdateSqlRequestHandler = (
28
- request: UpdateSqlRequestDTO
29
- ) => Promise<UpdateSqlResponseDTO>;
30
-
31
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
32
- export const useUpdateSqlRequestHandler = (
33
- name: string
34
- ): UpdateSqlRequestHandler => useWebSocketRequestHandler(name);
1
+ import { useWebSocketRequestHandler } from './hooks';
2
+
3
+ export type UpdateSqlRequestDTO = {
4
+ type: string;
5
+ added: {
6
+ [id: string]: {
7
+ [field: string]: string | number | boolean | null | undefined;
8
+ };
9
+ };
10
+ updated: {
11
+ [id: string]: {
12
+ [field: string]: string | number | boolean | null | undefined;
13
+ };
14
+ };
15
+ };
16
+
17
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
18
+ export type UpdateSqlResponseDTO = {
19
+ results: {
20
+ [id: string]: {
21
+ status: number;
22
+ error?: string;
23
+ };
24
+ };
25
+ };
26
+
27
+ type UpdateSqlRequestHandler = (
28
+ request: UpdateSqlRequestDTO
29
+ ) => Promise<UpdateSqlResponseDTO>;
30
+
31
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
32
+ export const useUpdateSqlRequestHandler = (
33
+ name: string
34
+ ): UpdateSqlRequestHandler => useWebSocketRequestHandler(name);
@@ -1,30 +1,30 @@
1
- .animate-spin {
2
- animation: spin 1s linear infinite;
3
- }
4
-
5
- .animate-pulse {
6
- animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
7
- }
8
-
9
- @keyframes pulse {
10
-
11
- 0%,
12
- 100% {
13
- opacity: 1;
14
- }
15
-
16
- 50% {
17
- opacity: 0.25;
18
- }
19
- }
20
-
21
- @keyframes spin {
22
-
23
- 0% {
24
- transform: rotate(0deg);
25
- }
26
-
27
- 100% {
28
- transform: rotate(360deg);
29
- }
30
- }
1
+ .animate-spin {
2
+ animation: spin 1s linear infinite;
3
+ }
4
+
5
+ .animate-pulse {
6
+ animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
7
+ }
8
+
9
+ @keyframes pulse {
10
+
11
+ 0%,
12
+ 100% {
13
+ opacity: 1;
14
+ }
15
+
16
+ 50% {
17
+ opacity: 0.25;
18
+ }
19
+ }
20
+
21
+ @keyframes spin {
22
+
23
+ 0% {
24
+ transform: rotate(0deg);
25
+ }
26
+
27
+ 100% {
28
+ transform: rotate(360deg);
29
+ }
30
+ }
@@ -1,42 +1,42 @@
1
- /* latin */
2
- @font-face {
3
- font-family: 'Montserrat';
4
- font-style: normal;
5
- font-weight: 200;
6
- font-display: swap;
7
- src: url('../../assets/fonts/montserrat-200.woff2') format('woff2');
8
- unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA,
9
- U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191,
10
- U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
11
- }
12
-
13
- /* latin */
14
- @font-face {
15
- font-family: 'Montserrat';
16
- font-style: normal;
17
- font-weight: 400;
18
- font-display: swap;
19
- src: url('../../assets/fonts/montserrat-500.woff2') format('woff2');
20
- unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA,
21
- U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191,
22
- U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
23
- }
24
-
25
- /* latin */
26
- @font-face {
27
- font-family: 'Montserrat';
28
- font-style: normal;
29
- font-weight: 700;
30
- font-display: swap;
31
- src: url('../../assets/fonts/montserrat-700.woff2') format('woff2');
32
- unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA,
33
- U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191,
34
- U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
35
- }
36
-
37
- /* Basic fixes */
38
- ul {
39
- list-style-type: none;
40
- padding: 0;
41
- margin: 0;
42
- }
1
+ /* latin */
2
+ @font-face {
3
+ font-family: 'Montserrat';
4
+ font-style: normal;
5
+ font-weight: 200;
6
+ font-display: swap;
7
+ src: url('../../assets/fonts/montserrat-200.woff2') format('woff2');
8
+ unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA,
9
+ U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191,
10
+ U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
11
+ }
12
+
13
+ /* latin */
14
+ @font-face {
15
+ font-family: 'Montserrat';
16
+ font-style: normal;
17
+ font-weight: 400;
18
+ font-display: swap;
19
+ src: url('../../assets/fonts/montserrat-500.woff2') format('woff2');
20
+ unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA,
21
+ U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191,
22
+ U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
23
+ }
24
+
25
+ /* latin */
26
+ @font-face {
27
+ font-family: 'Montserrat';
28
+ font-style: normal;
29
+ font-weight: 700;
30
+ font-display: swap;
31
+ src: url('../../assets/fonts/montserrat-700.woff2') format('woff2');
32
+ unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA,
33
+ U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191,
34
+ U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
35
+ }
36
+
37
+ /* Basic fixes */
38
+ ul {
39
+ list-style-type: none;
40
+ padding: 0;
41
+ margin: 0;
42
+ }
package/src/typings.d.ts CHANGED
@@ -1,13 +1,13 @@
1
- /// <reference types="vite/client" />
2
- /// <reference types="vite-plugin-svgr/client" />
3
-
4
- export type DeepPartial<T> = {
5
- [P in keyof T]?: DeepPartial<T[P]>;
6
- };
7
-
8
- declare module 'react' {
9
- // eslint-disable-next-line @typescript-eslint/no-empty-object-type
10
- function forwardRef<T, P = {}>(
11
- render: (props: P, ref: React.Ref<T>) => JSX.Element | null
12
- ): (props: P & React.RefAttributes<T>) => JSX.Element | null;
13
- }
1
+ /// <reference types="vite/client" />
2
+ /// <reference types="vite-plugin-svgr/client" />
3
+
4
+ export type DeepPartial<T> = {
5
+ [P in keyof T]?: DeepPartial<T[P]>;
6
+ };
7
+
8
+ declare module 'react' {
9
+ // eslint-disable-next-line @typescript-eslint/no-empty-object-type
10
+ function forwardRef<T, P = {}>(
11
+ render: (props: P, ref: React.Ref<T>) => JSX.Element | null
12
+ ): (props: P & React.RefAttributes<T>) => JSX.Element | null;
13
+ }