@addev-be/ui 2.1.2 → 2.1.3

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 (249) 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/table.svg +1 -1
  21. package/assets/icons/up.svg +1 -1
  22. package/assets/icons/user-tie.svg +1 -1
  23. package/assets/icons/x-bar.svg +3 -3
  24. package/dist/components/data/SqlRequestDataGrid/SqlRequestForeignListEditableCell.d.ts +1 -2
  25. package/dist/components/data/SqlRequestDataGrid/SqlRequestForeignListEditableCell.js +3 -2
  26. package/dist/components/data/SqlRequestDataGrid/helpers/columns.js +22 -10
  27. package/dist/services/index.js +7 -17
  28. package/eslint.config.js +3 -3
  29. package/package.json +2 -2
  30. package/src/Icons.tsx +138 -138
  31. package/src/components/auth/LoginForm.tsx +86 -86
  32. package/src/components/auth/LoginPage.tsx +32 -32
  33. package/src/components/auth/PasswordRecoveryForm.tsx +53 -53
  34. package/src/components/auth/PasswordResetForm.tsx +112 -112
  35. package/src/components/auth/styles.ts +14 -14
  36. package/src/components/data/DataGrid/DataGridCell.tsx +81 -81
  37. package/src/components/data/DataGrid/DataGridColumnsModal/helpers.ts +9 -9
  38. package/src/components/data/DataGrid/DataGridColumnsModal/hooks.tsx +59 -59
  39. package/src/components/data/DataGrid/DataGridColumnsModal/index.tsx +182 -182
  40. package/src/components/data/DataGrid/DataGridColumnsModal/styles.ts +104 -104
  41. package/src/components/data/DataGrid/DataGridEditableCell/CheckboxEditableCell.tsx +37 -37
  42. package/src/components/data/DataGrid/DataGridEditableCell/DateEditableCell.tsx +38 -38
  43. package/src/components/data/DataGrid/DataGridEditableCell/NumberEditableCell.tsx +71 -71
  44. package/src/components/data/DataGrid/DataGridEditableCell/TextEditableCell.tsx +37 -37
  45. package/src/components/data/DataGrid/DataGridEditableCell/index.tsx +106 -106
  46. package/src/components/data/DataGrid/DataGridEditableCell/styles.ts +35 -35
  47. package/src/components/data/DataGrid/DataGridEditableCell/types.ts +18 -18
  48. package/src/components/data/DataGrid/DataGridFilterMenu/FilterValuesScroller.tsx +129 -129
  49. package/src/components/data/DataGrid/DataGridFilterMenu/helpers.ts +23 -23
  50. package/src/components/data/DataGrid/DataGridFilterMenu/hooks.tsx +81 -81
  51. package/src/components/data/DataGrid/DataGridFilterMenu/index.tsx +370 -370
  52. package/src/components/data/DataGrid/DataGridFilterMenu/styles.ts +97 -97
  53. package/src/components/data/DataGrid/DataGridFooter.tsx +45 -45
  54. package/src/components/data/DataGrid/DataGridHeader.tsx +74 -74
  55. package/src/components/data/DataGrid/DataGridHeaderCell.tsx +112 -112
  56. package/src/components/data/DataGrid/DataGridRowTemplate.tsx +83 -83
  57. package/src/components/data/DataGrid/DataGridToolbar.tsx +134 -134
  58. package/src/components/data/DataGrid/FilterModalContent/index.tsx +137 -137
  59. package/src/components/data/DataGrid/FilterModalContent/styles.ts +22 -22
  60. package/src/components/data/DataGrid/constants.ts +6 -6
  61. package/src/components/data/DataGrid/helpers/columns.tsx +452 -452
  62. package/src/components/data/DataGrid/helpers/filters.ts +287 -287
  63. package/src/components/data/DataGrid/helpers/index.ts +2 -2
  64. package/src/components/data/DataGrid/hooks/index.ts +29 -29
  65. package/src/components/data/DataGrid/hooks/useDataGrid.tsx +380 -380
  66. package/src/components/data/DataGrid/hooks/useDataGridChangedRows.ts +97 -97
  67. package/src/components/data/DataGrid/hooks/useDataGridCopy.ts +174 -174
  68. package/src/components/data/DataGrid/hooks/useDataGridSettings.ts +48 -48
  69. package/src/components/data/DataGrid/hooks/useRefreshModal.tsx +48 -48
  70. package/src/components/data/DataGrid/index.tsx +111 -111
  71. package/src/components/data/DataGrid/styles.ts +430 -430
  72. package/src/components/data/DataGrid/types.ts +380 -380
  73. package/src/components/data/SqlRequestDataGrid/helpers/columns.tsx +524 -504
  74. package/src/components/data/SqlRequestDataGrid/helpers/index.ts +2 -2
  75. package/src/components/data/SqlRequestDataGrid/helpers/rows.ts +24 -24
  76. package/src/components/data/SqlRequestDataGrid/helpers/sqlRequests.ts +16 -16
  77. package/src/components/data/SqlRequestDataGrid/index.tsx +417 -417
  78. package/src/components/data/SqlRequestDataGrid/styles.ts +15 -15
  79. package/src/components/data/SqlRequestDataGrid/types.ts +74 -74
  80. package/src/components/data/SqlRequestForeignList/index.tsx +254 -254
  81. package/src/components/data/SqlRequestForeignList/styles.ts +43 -43
  82. package/src/components/data/SqlRequestForeignList/types.ts +32 -32
  83. package/src/components/data/SqlRequestGrid/filters/FiltersSidebar.tsx +108 -108
  84. package/src/components/data/SqlRequestGrid/filters/styles.ts +88 -88
  85. package/src/components/data/SqlRequestGrid/helpers/index.ts +1 -1
  86. package/src/components/data/SqlRequestGrid/helpers/sqlRequests.ts +16 -16
  87. package/src/components/data/SqlRequestGrid/index.tsx +314 -314
  88. package/src/components/data/SqlRequestGrid/styles.ts +20 -20
  89. package/src/components/data/SqlRequestGrid/types.ts +73 -73
  90. package/src/components/data/VirtualScroller/hooks.ts +71 -71
  91. package/src/components/data/VirtualScroller/index.tsx +89 -89
  92. package/src/components/data/VirtualScroller/styles.ts +57 -57
  93. package/src/components/data/VirtualScroller/types.ts +10 -10
  94. package/src/components/forms/AutoTextArea.tsx +48 -48
  95. package/src/components/forms/Button.tsx +132 -132
  96. package/src/components/forms/Form/Checkbox.tsx +12 -12
  97. package/src/components/forms/Form/CustomSelect.tsx +86 -86
  98. package/src/components/forms/Form/FormGroup.tsx +31 -31
  99. package/src/components/forms/Form/Input.tsx +16 -16
  100. package/src/components/forms/Form/Row.tsx +32 -32
  101. package/src/components/forms/Form/Select.tsx +82 -82
  102. package/src/components/forms/Form/TextArea.tsx +17 -17
  103. package/src/components/forms/Form/index.tsx +48 -48
  104. package/src/components/forms/Form/styles.ts +184 -184
  105. package/src/components/forms/IconButton.tsx +61 -61
  106. package/src/components/forms/IndeterminateCheckbox.tsx +46 -46
  107. package/src/components/forms/NumberInput.tsx +53 -53
  108. package/src/components/forms/Select.tsx +34 -34
  109. package/src/components/forms/VerticalLabel.tsx +20 -20
  110. package/src/components/forms/styles.ts +42 -42
  111. package/src/components/layout/Columns.ts +28 -28
  112. package/src/components/layout/Dropdown/index.tsx +113 -113
  113. package/src/components/layout/Dropdown/styles.ts +53 -53
  114. package/src/components/layout/Flexbox.ts +21 -21
  115. package/src/components/layout/Grid/index.tsx +8 -8
  116. package/src/components/layout/Grid/styles.ts +34 -34
  117. package/src/components/layout/Loading/index.tsx +29 -29
  118. package/src/components/layout/Loading/styles.ts +29 -29
  119. package/src/components/layout/Masonry/index.tsx +29 -29
  120. package/src/components/layout/Masonry/styles.ts +20 -20
  121. package/src/components/layout/Modal/index.tsx +51 -51
  122. package/src/components/layout/Modal/styles.ts +125 -125
  123. package/src/components/search/HighlightedText.tsx +41 -41
  124. package/src/components/search/QuickSearchBar.tsx +99 -99
  125. package/src/components/search/QuickSearchResults.tsx +86 -86
  126. package/src/components/search/styles.ts +96 -96
  127. package/src/components/search/types.ts +29 -29
  128. package/src/components/ui/Avatar/index.tsx +54 -54
  129. package/src/components/ui/Avatar/styles.ts +61 -61
  130. package/src/components/ui/Card/index.tsx +14 -14
  131. package/src/components/ui/Card/styles.ts +37 -37
  132. package/src/components/ui/ContextMenu/index.tsx +79 -79
  133. package/src/components/ui/ContextMenu/styles.ts +119 -119
  134. package/src/components/ui/Ellipsis.tsx +33 -33
  135. package/src/components/ui/Label.tsx +93 -93
  136. package/src/components/ui/Message/index.tsx +57 -57
  137. package/src/components/ui/Message/styles.ts +44 -44
  138. package/src/components/ui/TabsView/TabsList.tsx +44 -44
  139. package/src/components/ui/TabsView/TabsView.tsx +38 -38
  140. package/src/components/ui/TabsView/index.ts +3 -3
  141. package/src/components/ui/TabsView/styles.ts +76 -76
  142. package/src/components/ui/TabsView/types.ts +15 -15
  143. package/src/config/index.ts +10 -10
  144. package/src/helpers/components.ts +9 -9
  145. package/src/helpers/dates.ts +17 -17
  146. package/src/helpers/getScrollbarSize.ts +14 -14
  147. package/src/helpers/numbers.ts +63 -63
  148. package/src/helpers/responsive.ts +83 -83
  149. package/src/helpers/styled/space.ts +114 -114
  150. package/src/helpers/styled/typography.ts +25 -25
  151. package/src/helpers/text.ts +13 -13
  152. package/src/helpers/types.ts +9 -9
  153. package/src/hooks/useContainerMediaQuery.ts +7 -7
  154. package/src/hooks/useElementSize.ts +24 -24
  155. package/src/hooks/useMediaQuery.ts +9 -9
  156. package/src/hooks/useMediaQueryForWidth.ts +35 -35
  157. package/src/hooks/useMutableState.ts +25 -25
  158. package/src/hooks/useShowArchived.ts +28 -28
  159. package/src/hooks/useWindowSize.ts +20 -20
  160. package/src/index.ts +102 -102
  161. package/src/providers/AuthenticationProvider/helpers.ts +3 -3
  162. package/src/providers/AuthenticationProvider/index.tsx +303 -303
  163. package/src/providers/LoadingProvider/index.tsx +47 -47
  164. package/src/providers/PortalsProvider/index.tsx +54 -54
  165. package/src/providers/PortalsProvider/styles.ts +31 -31
  166. package/src/providers/SettingsProvider/index.tsx +70 -70
  167. package/src/providers/ThemeProvider/defaultTheme.ts +470 -470
  168. package/src/providers/ThemeProvider/helpers.ts +84 -84
  169. package/src/providers/ThemeProvider/index.ts +66 -66
  170. package/src/providers/ThemeProvider/types.ts +134 -134
  171. package/src/providers/ToastProvider/index.tsx +93 -93
  172. package/src/providers/TrackingProvider/hooks.ts +14 -14
  173. package/src/providers/TrackingProvider/index.tsx +71 -71
  174. package/src/providers/UiProviders/index.tsx +76 -76
  175. package/src/providers/UiProviders/styles.ts +10 -10
  176. package/src/providers/hooks.ts +14 -14
  177. package/src/services/HttpService.ts +92 -92
  178. package/src/services/WebSocketService.ts +155 -155
  179. package/src/services/advancedRequests.ts +102 -102
  180. package/src/services/base.ts +23 -23
  181. package/src/services/globalSearch.ts +32 -32
  182. package/src/services/hooks.ts +92 -92
  183. package/src/services/requests/auth.ts +44 -44
  184. package/src/services/requests/generic.ts +62 -62
  185. package/src/services/requests/tracking.ts +12 -12
  186. package/src/services/requests/userProfiles.ts +35 -35
  187. package/src/services/requests/users.ts +28 -28
  188. package/src/services/smartQueries.ts +122 -122
  189. package/src/services/sqlRequests.ts +111 -111
  190. package/src/services/types/auth.ts +98 -98
  191. package/src/services/types/base.ts +10 -10
  192. package/src/services/types/generic.ts +82 -82
  193. package/src/services/types/tracking.ts +29 -29
  194. package/src/services/types/userProfiles.ts +79 -79
  195. package/src/services/types/users.ts +74 -74
  196. package/src/services/updateSqlRequests.ts +32 -32
  197. package/src/styles/animations.scss +30 -30
  198. package/src/styles/index.scss +42 -42
  199. package/src/types.ts +8 -8
  200. package/src/typings.d.ts +2 -2
  201. package/tsconfig.json +18 -18
  202. package/dist/components/data/AdvancedRequestDataGrid/helpers/advancedRequests.d.ts +0 -14
  203. package/dist/components/data/AdvancedRequestDataGrid/helpers/advancedRequests.js +0 -77
  204. package/dist/components/data/AdvancedRequestDataGrid/helpers/columns.d.ts +0 -22
  205. package/dist/components/data/AdvancedRequestDataGrid/helpers/columns.js +0 -105
  206. package/dist/components/data/AdvancedRequestDataGrid/helpers/index.d.ts +0 -2
  207. package/dist/components/data/AdvancedRequestDataGrid/helpers/index.js +0 -18
  208. package/dist/components/data/AdvancedRequestDataGrid/index.d.ts +0 -2
  209. package/dist/components/data/AdvancedRequestDataGrid/index.js +0 -215
  210. package/dist/components/data/AdvancedRequestDataGrid/types.d.ts +0 -21
  211. package/dist/components/data/AdvancedRequestDataGrid/types.js +0 -2
  212. package/dist/components/data/DataGrid/AdvancedRequestDataGrid.d.ts +0 -10
  213. package/dist/components/data/DataGrid/AdvancedRequestDataGrid.js +0 -173
  214. package/dist/components/data/DataGrid/DataGridEditableCell.d.ts +0 -2
  215. package/dist/components/data/DataGrid/DataGridEditableCell.js +0 -27
  216. package/dist/components/data/DataGrid/FilterValuesScroller.d.ts +0 -13
  217. package/dist/components/data/DataGrid/FilterValuesScroller.js +0 -73
  218. package/dist/components/data/DataGrid/VirtualScroller.d.ts +0 -11
  219. package/dist/components/data/DataGrid/VirtualScroller.js +0 -41
  220. package/dist/components/data/DataGrid/helpers/advancedRequests.d.ts +0 -12
  221. package/dist/components/data/DataGrid/helpers/advancedRequests.js +0 -53
  222. package/dist/components/data/DataGrid/helpers.d.ts +0 -28
  223. package/dist/components/data/DataGrid/helpers.js +0 -436
  224. package/dist/components/data/SmartQueryDataGrid/helpers/columns.d.ts +0 -20
  225. package/dist/components/data/SmartQueryDataGrid/helpers/columns.js +0 -160
  226. package/dist/components/data/SmartQueryDataGrid/helpers/hooks.d.ts +0 -5
  227. package/dist/components/data/SmartQueryDataGrid/helpers/hooks.js +0 -41
  228. package/dist/components/data/SmartQueryDataGrid/helpers/index.d.ts +0 -2
  229. package/dist/components/data/SmartQueryDataGrid/helpers/index.js +0 -18
  230. package/dist/components/data/SmartQueryDataGrid/helpers/smartQueries.d.ts +0 -3
  231. package/dist/components/data/SmartQueryDataGrid/helpers/smartQueries.js +0 -15
  232. package/dist/components/data/SmartQueryDataGrid/hooks.d.ts +0 -9
  233. package/dist/components/data/SmartQueryDataGrid/hooks.js +0 -63
  234. package/dist/components/data/SmartQueryDataGrid/index.d.ts +0 -12
  235. package/dist/components/data/SmartQueryDataGrid/index.js +0 -242
  236. package/dist/components/data/SmartQueryDataGrid/types.d.ts +0 -22
  237. package/dist/components/data/SmartQueryDataGrid/types.js +0 -2
  238. package/dist/components/forms/Form/InputWithLabel.d.ts +0 -2
  239. package/dist/components/forms/Form/InputWithLabel.js +0 -10
  240. package/dist/components/forms/Form/types.d.ts +0 -7
  241. package/dist/components/forms/Form/types.js +0 -2
  242. package/dist/config/types.d.ts +0 -11
  243. package/dist/config/types.js +0 -2
  244. package/dist/helpers/react.d.ts +0 -2
  245. package/dist/helpers/react.js +0 -8
  246. package/dist/helpers/styled/index.d.ts +0 -1
  247. package/dist/helpers/styled/index.js +0 -17
  248. package/dist/services/requests/userPermissions.d.ts +0 -4
  249. package/dist/services/requests/userPermissions.js +0 -20
@@ -1,102 +1,102 @@
1
- import { useWebSocketRequestHandler } from './hooks';
2
-
3
- export type FieldDTO<T extends string = string> = {
4
- fieldName?: T;
5
- fieldAlias?: string;
6
- operator?:
7
- | 'add'
8
- | 'concat'
9
- | 'divide'
10
- | 'groupConcat'
11
- | 'if'
12
- | 'ifNull'
13
- | 'jsonObject'
14
- | 'length'
15
- | 'modulo'
16
- | 'multiply'
17
- | 'subtract'
18
- | 'sum'
19
- | 'trim';
20
- operands?: FieldDTO[];
21
- constantValue?: string | number | boolean | null;
22
- groupBy?: boolean;
23
- };
24
-
25
- export type ConditionDTO = {
26
- field: string;
27
- operator:
28
- | 'lessThan'
29
- | 'lessThanOrEqual'
30
- | 'lessThanOrEquals'
31
- | 'equals'
32
- | 'notEquals'
33
- | 'greaterThanOrEqual'
34
- | 'greaterThanOrEquals'
35
- | 'greaterThan'
36
- | 'like'
37
- | 'contains'
38
- | 'notContains'
39
- | 'startsWith'
40
- | 'endsWith'
41
- | 'notLike'
42
- | 'inRange'
43
- | 'between'
44
- | 'isNull'
45
- | 'isNotNull'
46
- | 'inArray'
47
- | 'in'
48
- | 'not'
49
- | 'and'
50
- | 'or';
51
- value?:
52
- | string
53
- | number
54
- | boolean
55
- | null
56
- | (string | number | boolean | null)[];
57
- children?: boolean;
58
- };
59
-
60
- export type OrderByDTO = {
61
- field: string;
62
- direction?: 'ASC' | 'DESC';
63
- };
64
-
65
- export type AdvancedRequestDTO = {
66
- type: string;
67
- fields: FieldDTO[];
68
- conditions: ConditionDTO[];
69
- orderBy?: OrderByDTO[];
70
- start?: number;
71
- length?: number;
72
- getTotal?: boolean;
73
- unique?: boolean;
74
- };
75
-
76
- export type AdvancedRequestRow<R> = {
77
- [K in keyof R]: R[K] extends string | number | null
78
- ? R[K]
79
- : string | number | null;
80
- };
81
-
82
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
83
- export type AdvancedResponseDTO<T = any> = {
84
- data: AdvancedRequestRow<T>[];
85
- count?: number;
86
- };
87
-
88
- export type AdvancedRequestFieldDTO =
89
- | string
90
- | {
91
- name: string;
92
- fields: AdvancedRequestFieldDTO[];
93
- };
94
-
95
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
96
- export const useAdvancedRequestHandler = <T = any>() =>
97
- useWebSocketRequestHandler<AdvancedRequestDTO, AdvancedResponseDTO<T>>(
98
- 'AdvancedRequest'
99
- );
100
-
101
- export const useRawAdvancedRequestHandler = () =>
102
- useWebSocketRequestHandler<AdvancedRequestDTO, string>('RawAdvancedRequest');
1
+ import { useWebSocketRequestHandler } from './hooks';
2
+
3
+ export type FieldDTO<T extends string = string> = {
4
+ fieldName?: T;
5
+ fieldAlias?: string;
6
+ operator?:
7
+ | 'add'
8
+ | 'concat'
9
+ | 'divide'
10
+ | 'groupConcat'
11
+ | 'if'
12
+ | 'ifNull'
13
+ | 'jsonObject'
14
+ | 'length'
15
+ | 'modulo'
16
+ | 'multiply'
17
+ | 'subtract'
18
+ | 'sum'
19
+ | 'trim';
20
+ operands?: FieldDTO[];
21
+ constantValue?: string | number | boolean | null;
22
+ groupBy?: boolean;
23
+ };
24
+
25
+ export type ConditionDTO = {
26
+ field: string;
27
+ operator:
28
+ | 'lessThan'
29
+ | 'lessThanOrEqual'
30
+ | 'lessThanOrEquals'
31
+ | 'equals'
32
+ | 'notEquals'
33
+ | 'greaterThanOrEqual'
34
+ | 'greaterThanOrEquals'
35
+ | 'greaterThan'
36
+ | 'like'
37
+ | 'contains'
38
+ | 'notContains'
39
+ | 'startsWith'
40
+ | 'endsWith'
41
+ | 'notLike'
42
+ | 'inRange'
43
+ | 'between'
44
+ | 'isNull'
45
+ | 'isNotNull'
46
+ | 'inArray'
47
+ | 'in'
48
+ | 'not'
49
+ | 'and'
50
+ | 'or';
51
+ value?:
52
+ | string
53
+ | number
54
+ | boolean
55
+ | null
56
+ | (string | number | boolean | null)[];
57
+ children?: boolean;
58
+ };
59
+
60
+ export type OrderByDTO = {
61
+ field: string;
62
+ direction?: 'ASC' | 'DESC';
63
+ };
64
+
65
+ export type AdvancedRequestDTO = {
66
+ type: string;
67
+ fields: FieldDTO[];
68
+ conditions: ConditionDTO[];
69
+ orderBy?: OrderByDTO[];
70
+ start?: number;
71
+ length?: number;
72
+ getTotal?: boolean;
73
+ unique?: boolean;
74
+ };
75
+
76
+ export type AdvancedRequestRow<R> = {
77
+ [K in keyof R]: R[K] extends string | number | null
78
+ ? R[K]
79
+ : string | number | null;
80
+ };
81
+
82
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
83
+ export type AdvancedResponseDTO<T = any> = {
84
+ data: AdvancedRequestRow<T>[];
85
+ count?: number;
86
+ };
87
+
88
+ export type AdvancedRequestFieldDTO =
89
+ | string
90
+ | {
91
+ name: string;
92
+ fields: AdvancedRequestFieldDTO[];
93
+ };
94
+
95
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
96
+ export const useAdvancedRequestHandler = <T = any>() =>
97
+ useWebSocketRequestHandler<AdvancedRequestDTO, AdvancedResponseDTO<T>>(
98
+ 'AdvancedRequest'
99
+ );
100
+
101
+ export const useRawAdvancedRequestHandler = () =>
102
+ useWebSocketRequestHandler<AdvancedRequestDTO, string>('RawAdvancedRequest');
@@ -1,23 +1,23 @@
1
- import { BaseModelDTO } from './types/base';
2
-
3
- export const emptyBaseModel: BaseModelDTO = {
4
- id: '',
5
- };
6
-
7
- export type ArchivableModelDTO = BaseModelDTO & {
8
- archived: boolean | null;
9
- };
10
-
11
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
12
- export type Request<T = any> = {
13
- id: string;
14
- name: string;
15
- data: T;
16
- };
17
-
18
- export const UUID_REGEX =
19
- /^[0-9a-f]{8}-[0-9a-f]{4}-[0-5][0-9a-f]{3}-[089ab][0-9a-f]{3}-[0-9a-f]{12}$/i;
20
-
21
- export type GetObjectRequestDTO = {
22
- id: string;
23
- };
1
+ import { BaseModelDTO } from './types/base';
2
+
3
+ export const emptyBaseModel: BaseModelDTO = {
4
+ id: '',
5
+ };
6
+
7
+ export type ArchivableModelDTO = BaseModelDTO & {
8
+ archived: boolean | null;
9
+ };
10
+
11
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
12
+ export type Request<T = any> = {
13
+ id: string;
14
+ name: string;
15
+ data: T;
16
+ };
17
+
18
+ export const UUID_REGEX =
19
+ /^[0-9a-f]{8}-[0-9a-f]{4}-[0-5][0-9a-f]{3}-[089ab][0-9a-f]{3}-[0-9a-f]{12}$/i;
20
+
21
+ export type GetObjectRequestDTO = {
22
+ id: string;
23
+ };
@@ -1,32 +1,32 @@
1
- import { ConditionDTO, SqlRequestRow } from './sqlRequests';
2
-
3
- import { OrderByDTO } from './sqlRequests';
4
- import { useWebSocketRequestHandler } from './hooks';
5
-
6
- export type GlobalSearchRequestDTO = {
7
- types: Record<
8
- string,
9
- { conditions?: ConditionDTO[]; orderBy?: OrderByDTO[] }
10
- >;
11
- searchTerm: string;
12
- limit?: number;
13
- };
14
-
15
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
16
- export type GlobalSearchResponseDTO<T = any> = {
17
- data: Record<string, SqlRequestRow<T>[]>;
18
- count?: number;
19
- };
20
-
21
- type GlobalSearchRequestHandler<T> = (
22
- request: GlobalSearchRequestDTO
23
- ) => Promise<GlobalSearchResponseDTO<T>>;
24
-
25
- export const useGlobalSearchRequestHandler = <
26
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
27
- T = any
28
- >(): GlobalSearchRequestHandler<T> =>
29
- useWebSocketRequestHandler<
30
- GlobalSearchRequestDTO,
31
- GlobalSearchResponseDTO<T>
32
- >('GlobalSearch');
1
+ import { ConditionDTO, SqlRequestRow } from './sqlRequests';
2
+
3
+ import { OrderByDTO } from './sqlRequests';
4
+ import { useWebSocketRequestHandler } from './hooks';
5
+
6
+ export type GlobalSearchRequestDTO = {
7
+ types: Record<
8
+ string,
9
+ { conditions?: ConditionDTO[]; orderBy?: OrderByDTO[] }
10
+ >;
11
+ searchTerm: string;
12
+ limit?: number;
13
+ };
14
+
15
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
16
+ export type GlobalSearchResponseDTO<T = any> = {
17
+ data: Record<string, SqlRequestRow<T>[]>;
18
+ count?: number;
19
+ };
20
+
21
+ type GlobalSearchRequestHandler<T> = (
22
+ request: GlobalSearchRequestDTO
23
+ ) => Promise<GlobalSearchResponseDTO<T>>;
24
+
25
+ export const useGlobalSearchRequestHandler = <
26
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
27
+ T = any
28
+ >(): GlobalSearchRequestHandler<T> =>
29
+ useWebSocketRequestHandler<
30
+ GlobalSearchRequestDTO,
31
+ GlobalSearchResponseDTO<T>
32
+ >('GlobalSearch');
@@ -1,92 +1,92 @@
1
- import { WebSocketError, WebSocketService } from './WebSocketService';
2
- import { useCallback, useState } from 'react';
3
-
4
- import { HttpService } from './HttpService';
5
- import { useLoading } from '../providers/hooks';
6
-
7
- export const useLoadingRequestHandler = <TReq, TRes>(
8
- name: string
9
- ): ((data: TReq) => Promise<TRes>) => {
10
- const { startLoading, stopLoading } = useLoading();
11
-
12
- return useCallback(
13
- (data: TReq) => {
14
- startLoading();
15
- return WebSocketService.getInstance()
16
- .sendRequest<TReq, TRes>(name, data)
17
- .finally(stopLoading);
18
- },
19
- [name, startLoading, stopLoading]
20
- );
21
- };
22
-
23
- export const useWebSocketRequestHandler = <TReq, TRes>(
24
- name: string
25
- ): ((data: TReq) => Promise<TRes>) =>
26
- useCallback(
27
- (data: TReq) => {
28
- return WebSocketService.getInstance().sendRequest<TReq, TRes>(name, data);
29
- },
30
- [name]
31
- );
32
-
33
- export const useHttpRequestHandler = <TReq, TRes>(
34
- name: string
35
- ): ((data: TReq, files?: Record<string, File>) => Promise<TRes>) =>
36
- useCallback(
37
- (data: TReq, files?: Record<string, File>) => {
38
- return HttpService.getInstance().sendRequest<TReq, TRes>(
39
- name,
40
- data,
41
- files
42
- );
43
- },
44
- [name]
45
- );
46
-
47
- export const useRequestState = <TReq, TRes>(name: string, loading = false) => {
48
- const [state, setState] = useState<
49
- 'initial' | 'loading' | 'success' | 'error'
50
- >('initial');
51
- const [status, setStatus] = useState<number | undefined>(undefined);
52
- const [response, setResponse] = useState<TRes | null>(null);
53
-
54
- const handleSendRequest = useWebSocketRequestHandler<TReq, TRes>(name);
55
- const handleSendLoadingRequest = useLoadingRequestHandler<TReq, TRes>(name);
56
-
57
- const sendRequest = useCallback(
58
- async (data: TReq) => {
59
- setState('loading');
60
- try {
61
- const res = await (loading
62
- ? handleSendLoadingRequest
63
- : handleSendRequest)(data);
64
- setStatus(0);
65
- setResponse(res);
66
- setState('success');
67
- return res;
68
- } catch (error) {
69
- setStatus(error instanceof WebSocketError ? error.status : -1);
70
- setState('error');
71
- }
72
- },
73
- [handleSendLoadingRequest, handleSendRequest, loading]
74
- );
75
-
76
- const reset = useCallback(() => {
77
- setState('initial');
78
- setStatus(undefined);
79
- setResponse(null);
80
- }, []);
81
-
82
- return {
83
- status,
84
- isInitial: state === 'initial',
85
- isLoading: state === 'loading',
86
- isSuccess: state === 'success',
87
- isError: state === 'error',
88
- response,
89
- sendRequest,
90
- reset,
91
- };
92
- };
1
+ import { WebSocketError, WebSocketService } from './WebSocketService';
2
+ import { useCallback, useState } from 'react';
3
+
4
+ import { HttpService } from './HttpService';
5
+ import { useLoading } from '../providers/hooks';
6
+
7
+ export const useLoadingRequestHandler = <TReq, TRes>(
8
+ name: string
9
+ ): ((data: TReq) => Promise<TRes>) => {
10
+ const { startLoading, stopLoading } = useLoading();
11
+
12
+ return useCallback(
13
+ (data: TReq) => {
14
+ startLoading();
15
+ return WebSocketService.getInstance()
16
+ .sendRequest<TReq, TRes>(name, data)
17
+ .finally(stopLoading);
18
+ },
19
+ [name, startLoading, stopLoading]
20
+ );
21
+ };
22
+
23
+ export const useWebSocketRequestHandler = <TReq, TRes>(
24
+ name: string
25
+ ): ((data: TReq) => Promise<TRes>) =>
26
+ useCallback(
27
+ (data: TReq) => {
28
+ return WebSocketService.getInstance().sendRequest<TReq, TRes>(name, data);
29
+ },
30
+ [name]
31
+ );
32
+
33
+ export const useHttpRequestHandler = <TReq, TRes>(
34
+ name: string
35
+ ): ((data: TReq, files?: Record<string, File>) => Promise<TRes>) =>
36
+ useCallback(
37
+ (data: TReq, files?: Record<string, File>) => {
38
+ return HttpService.getInstance().sendRequest<TReq, TRes>(
39
+ name,
40
+ data,
41
+ files
42
+ );
43
+ },
44
+ [name]
45
+ );
46
+
47
+ export const useRequestState = <TReq, TRes>(name: string, loading = false) => {
48
+ const [state, setState] = useState<
49
+ 'initial' | 'loading' | 'success' | 'error'
50
+ >('initial');
51
+ const [status, setStatus] = useState<number | undefined>(undefined);
52
+ const [response, setResponse] = useState<TRes | null>(null);
53
+
54
+ const handleSendRequest = useWebSocketRequestHandler<TReq, TRes>(name);
55
+ const handleSendLoadingRequest = useLoadingRequestHandler<TReq, TRes>(name);
56
+
57
+ const sendRequest = useCallback(
58
+ async (data: TReq) => {
59
+ setState('loading');
60
+ try {
61
+ const res = await (loading
62
+ ? handleSendLoadingRequest
63
+ : handleSendRequest)(data);
64
+ setStatus(0);
65
+ setResponse(res);
66
+ setState('success');
67
+ return res;
68
+ } catch (error) {
69
+ setStatus(error instanceof WebSocketError ? error.status : -1);
70
+ setState('error');
71
+ }
72
+ },
73
+ [handleSendLoadingRequest, handleSendRequest, loading]
74
+ );
75
+
76
+ const reset = useCallback(() => {
77
+ setState('initial');
78
+ setStatus(undefined);
79
+ setResponse(null);
80
+ }, []);
81
+
82
+ return {
83
+ status,
84
+ isInitial: state === 'initial',
85
+ isLoading: state === 'loading',
86
+ isSuccess: state === 'success',
87
+ isError: state === 'error',
88
+ response,
89
+ sendRequest,
90
+ reset,
91
+ };
92
+ };
@@ -1,44 +1,44 @@
1
- import {
2
- AuthenticateRequestDTO,
3
- AuthenticateResponseDTO,
4
- CheckRecoveryKeyRequestDTO,
5
- CheckRecoveryKeyResponseDTO,
6
- LoginRequestDTO,
7
- LoginResponseDTO,
8
- LogoutRequestDTO,
9
- LogoutResponseDTO,
10
- ResetPasswordRequestDTO,
11
- ResetPasswordResponseDTO,
12
- SendRecoveryKeyRequestDTO,
13
- SendRecoveryKeyResponseDTO,
14
- } from '../types/auth';
15
-
16
- import { useLoadingRequestHandler } from '../hooks';
17
-
18
- export const useAuthenticateRequestHandler = (name?: string) =>
19
- useLoadingRequestHandler<AuthenticateRequestDTO, AuthenticateResponseDTO>(
20
- name ?? 'Authenticate'
21
- );
22
-
23
- export const useLoginRequestHandler = () =>
24
- useLoadingRequestHandler<LoginRequestDTO, LoginResponseDTO>('Login');
25
-
26
- export const useLogoutRequestHandler = () =>
27
- useLoadingRequestHandler<LogoutRequestDTO, LogoutResponseDTO>('Logout');
28
-
29
- export const useSendRecoveryKeyRequestHandler = () =>
30
- useLoadingRequestHandler<
31
- SendRecoveryKeyRequestDTO,
32
- SendRecoveryKeyResponseDTO
33
- >('SendRecoveryKey');
34
-
35
- export const useCheckRecoveryKeyRequestHandler = () =>
36
- useLoadingRequestHandler<
37
- CheckRecoveryKeyRequestDTO,
38
- CheckRecoveryKeyResponseDTO
39
- >('CheckRecoveryKey');
40
-
41
- export const useResetPasswordRequestHandler = () =>
42
- useLoadingRequestHandler<ResetPasswordRequestDTO, ResetPasswordResponseDTO>(
43
- 'ResetPassword'
44
- );
1
+ import {
2
+ AuthenticateRequestDTO,
3
+ AuthenticateResponseDTO,
4
+ CheckRecoveryKeyRequestDTO,
5
+ CheckRecoveryKeyResponseDTO,
6
+ LoginRequestDTO,
7
+ LoginResponseDTO,
8
+ LogoutRequestDTO,
9
+ LogoutResponseDTO,
10
+ ResetPasswordRequestDTO,
11
+ ResetPasswordResponseDTO,
12
+ SendRecoveryKeyRequestDTO,
13
+ SendRecoveryKeyResponseDTO,
14
+ } from '../types/auth';
15
+
16
+ import { useLoadingRequestHandler } from '../hooks';
17
+
18
+ export const useAuthenticateRequestHandler = (name?: string) =>
19
+ useLoadingRequestHandler<AuthenticateRequestDTO, AuthenticateResponseDTO>(
20
+ name ?? 'Authenticate'
21
+ );
22
+
23
+ export const useLoginRequestHandler = () =>
24
+ useLoadingRequestHandler<LoginRequestDTO, LoginResponseDTO>('Login');
25
+
26
+ export const useLogoutRequestHandler = () =>
27
+ useLoadingRequestHandler<LogoutRequestDTO, LogoutResponseDTO>('Logout');
28
+
29
+ export const useSendRecoveryKeyRequestHandler = () =>
30
+ useLoadingRequestHandler<
31
+ SendRecoveryKeyRequestDTO,
32
+ SendRecoveryKeyResponseDTO
33
+ >('SendRecoveryKey');
34
+
35
+ export const useCheckRecoveryKeyRequestHandler = () =>
36
+ useLoadingRequestHandler<
37
+ CheckRecoveryKeyRequestDTO,
38
+ CheckRecoveryKeyResponseDTO
39
+ >('CheckRecoveryKey');
40
+
41
+ export const useResetPasswordRequestHandler = () =>
42
+ useLoadingRequestHandler<ResetPasswordRequestDTO, ResetPasswordResponseDTO>(
43
+ 'ResetPassword'
44
+ );