@addev-be/ui 2.7.5 → 2.7.7

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 (256) 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/data/AdvancedRequestDataGrid/helpers/advancedRequests.js +9 -8
  24. package/dist/components/data/AdvancedRequestDataGrid/helpers/columns.js +21 -72
  25. package/dist/components/data/AdvancedRequestDataGrid/index.js +2 -2
  26. package/dist/components/data/AdvancedRequestDataGrid/types.d.ts +1 -1
  27. package/dist/components/data/DataGrid/AdvancedRequestDataGrid.d.ts +10 -0
  28. package/dist/components/data/DataGrid/AdvancedRequestDataGrid.js +173 -0
  29. package/dist/components/data/DataGrid/DataGridFooter.js +1 -1
  30. package/dist/components/data/DataGrid/FilterValuesScroller.d.ts +13 -0
  31. package/dist/components/data/DataGrid/FilterValuesScroller.js +73 -0
  32. package/dist/components/data/DataGrid/VirtualScroller.d.ts +11 -0
  33. package/dist/components/data/DataGrid/VirtualScroller.js +41 -0
  34. package/dist/components/data/DataGrid/helpers/advancedRequests.d.ts +12 -0
  35. package/dist/components/data/DataGrid/helpers/advancedRequests.js +53 -0
  36. package/dist/components/data/DataGrid/helpers/columns.js +3 -3
  37. package/dist/components/data/DataGrid/helpers.d.ts +28 -0
  38. package/dist/components/data/DataGrid/helpers.js +436 -0
  39. package/dist/components/data/DataGrid/styles.d.ts +1 -0
  40. package/dist/components/data/DataGrid/styles.js +14 -3
  41. package/dist/components/data/SmartQueryDataGrid/helpers/columns.d.ts +20 -0
  42. package/dist/components/data/SmartQueryDataGrid/helpers/columns.js +160 -0
  43. package/dist/components/data/SmartQueryDataGrid/helpers/hooks.d.ts +5 -0
  44. package/dist/components/data/SmartQueryDataGrid/helpers/hooks.js +41 -0
  45. package/dist/components/data/SmartQueryDataGrid/helpers/index.d.ts +2 -0
  46. package/dist/components/data/SmartQueryDataGrid/helpers/index.js +18 -0
  47. package/dist/components/data/SmartQueryDataGrid/helpers/smartQueries.d.ts +3 -0
  48. package/dist/components/data/SmartQueryDataGrid/helpers/smartQueries.js +15 -0
  49. package/dist/components/data/SmartQueryDataGrid/hooks.d.ts +9 -0
  50. package/dist/components/data/SmartQueryDataGrid/hooks.js +63 -0
  51. package/dist/components/data/SmartQueryDataGrid/index.d.ts +12 -0
  52. package/dist/components/data/SmartQueryDataGrid/index.js +242 -0
  53. package/dist/components/data/SmartQueryDataGrid/types.d.ts +22 -0
  54. package/dist/components/data/SmartQueryDataGrid/types.js +2 -0
  55. package/dist/components/data/SqlRequestDataGrid/SqlRequestForeignListEditableCell.d.ts +2 -1
  56. package/dist/components/data/SqlRequestDataGrid/SqlRequestForeignListEditableCell.js +2 -3
  57. package/dist/components/forms/Form/InputWithLabel.d.ts +2 -0
  58. package/dist/components/forms/Form/InputWithLabel.js +10 -0
  59. package/dist/components/forms/Form/types.d.ts +7 -0
  60. package/dist/components/forms/Form/types.js +2 -0
  61. package/dist/components/ui/Card/index.d.ts +2 -1
  62. package/dist/components/ui/Card/styles.d.ts +4 -4
  63. package/dist/components/ui/Card/styles.js +4 -9
  64. package/dist/components/ui/TabsView/styles.js +2 -2
  65. package/dist/config/types.d.ts +11 -0
  66. package/dist/config/types.js +2 -0
  67. package/dist/helpers/react.d.ts +2 -0
  68. package/dist/helpers/react.js +8 -0
  69. package/dist/helpers/styled/size.d.ts +10 -0
  70. package/dist/helpers/styled/size.js +28 -0
  71. package/dist/helpers/styled/space.d.ts +14 -14
  72. package/dist/index.d.ts +2 -0
  73. package/dist/index.js +2 -0
  74. package/dist/providers/ThemeProvider/helpers.d.ts +2 -1
  75. package/dist/providers/ThemeProvider/helpers.js +5 -1
  76. package/dist/providers/ThemeProvider/types.d.ts +3 -1
  77. package/dist/services/index.js +17 -7
  78. package/dist/services/requests/userPermissions.d.ts +4 -0
  79. package/dist/services/requests/userPermissions.js +20 -0
  80. package/eslint.config.js +3 -3
  81. package/package.json +2 -2
  82. package/src/Icons.tsx +138 -138
  83. package/src/components/auth/LoginForm.tsx +86 -86
  84. package/src/components/auth/LoginPage.tsx +32 -32
  85. package/src/components/auth/PasswordRecoveryForm.tsx +53 -53
  86. package/src/components/auth/PasswordResetForm.tsx +112 -112
  87. package/src/components/auth/styles.ts +14 -14
  88. package/src/components/data/DataGrid/DataGridCell.tsx +81 -81
  89. package/src/components/data/DataGrid/DataGridColumnsModal/helpers.ts +9 -9
  90. package/src/components/data/DataGrid/DataGridColumnsModal/hooks.tsx +59 -59
  91. package/src/components/data/DataGrid/DataGridColumnsModal/index.tsx +182 -182
  92. package/src/components/data/DataGrid/DataGridColumnsModal/styles.ts +104 -104
  93. package/src/components/data/DataGrid/DataGridEditableCell/CheckboxEditableCell.tsx +37 -37
  94. package/src/components/data/DataGrid/DataGridEditableCell/DateEditableCell.tsx +38 -38
  95. package/src/components/data/DataGrid/DataGridEditableCell/NumberEditableCell.tsx +71 -71
  96. package/src/components/data/DataGrid/DataGridEditableCell/TextEditableCell.tsx +37 -37
  97. package/src/components/data/DataGrid/DataGridEditableCell/index.tsx +106 -106
  98. package/src/components/data/DataGrid/DataGridEditableCell/styles.ts +35 -35
  99. package/src/components/data/DataGrid/DataGridEditableCell/types.ts +18 -18
  100. package/src/components/data/DataGrid/DataGridFilterMenu/FilterValuesScroller.tsx +129 -129
  101. package/src/components/data/DataGrid/DataGridFilterMenu/hooks.tsx +81 -81
  102. package/src/components/data/DataGrid/DataGridFilterMenu/index.tsx +370 -370
  103. package/src/components/data/DataGrid/DataGridFilterMenu/styles.ts +97 -97
  104. package/src/components/data/DataGrid/DataGridFooter.tsx +48 -47
  105. package/src/components/data/DataGrid/DataGridHeader.tsx +74 -74
  106. package/src/components/data/DataGrid/DataGridHeaderCell.tsx +112 -112
  107. package/src/components/data/DataGrid/DataGridRowTemplate.tsx +83 -83
  108. package/src/components/data/DataGrid/DataGridToolbar.tsx +134 -134
  109. package/src/components/data/DataGrid/FilterModalContent/index.tsx +137 -137
  110. package/src/components/data/DataGrid/FilterModalContent/styles.ts +22 -22
  111. package/src/components/data/DataGrid/constants.ts +6 -6
  112. package/src/components/data/DataGrid/helpers/columns.tsx +452 -449
  113. package/src/components/data/DataGrid/helpers/filters.ts +287 -287
  114. package/src/components/data/DataGrid/helpers/index.ts +2 -2
  115. package/src/components/data/DataGrid/hooks/index.ts +29 -29
  116. package/src/components/data/DataGrid/hooks/useDataGrid.tsx +383 -383
  117. package/src/components/data/DataGrid/hooks/useDataGridChangedRows.ts +97 -97
  118. package/src/components/data/DataGrid/hooks/useDataGridCopy.ts +174 -174
  119. package/src/components/data/DataGrid/hooks/useDataGridSettings.ts +48 -48
  120. package/src/components/data/DataGrid/hooks/useRefreshModal.tsx +48 -48
  121. package/src/components/data/DataGrid/index.tsx +111 -111
  122. package/src/components/data/DataGrid/styles.ts +446 -434
  123. package/src/components/data/DataGrid/types.ts +380 -380
  124. package/src/components/data/SqlRequestDataGrid/helpers/columns.tsx +526 -526
  125. package/src/components/data/SqlRequestDataGrid/helpers/index.ts +2 -2
  126. package/src/components/data/SqlRequestDataGrid/helpers/rows.ts +24 -24
  127. package/src/components/data/SqlRequestDataGrid/helpers/sqlRequests.ts +17 -17
  128. package/src/components/data/SqlRequestDataGrid/index.tsx +417 -417
  129. package/src/components/data/SqlRequestDataGrid/styles.ts +15 -15
  130. package/src/components/data/SqlRequestDataGrid/types.ts +74 -74
  131. package/src/components/data/SqlRequestForeignList/index.tsx +254 -254
  132. package/src/components/data/SqlRequestForeignList/styles.ts +43 -43
  133. package/src/components/data/SqlRequestForeignList/types.ts +32 -32
  134. package/src/components/data/SqlRequestGrid/filters/FiltersSidebar.tsx +108 -108
  135. package/src/components/data/SqlRequestGrid/filters/styles.ts +88 -88
  136. package/src/components/data/SqlRequestGrid/helpers/index.ts +1 -1
  137. package/src/components/data/SqlRequestGrid/helpers/sqlRequests.ts +16 -16
  138. package/src/components/data/SqlRequestGrid/index.tsx +304 -304
  139. package/src/components/data/SqlRequestGrid/styles.ts +20 -20
  140. package/src/components/data/SqlRequestGrid/types.ts +73 -73
  141. package/src/components/data/VirtualScroller/hooks.ts +71 -71
  142. package/src/components/data/VirtualScroller/index.tsx +89 -89
  143. package/src/components/data/VirtualScroller/styles.ts +57 -57
  144. package/src/components/data/VirtualScroller/types.ts +10 -10
  145. package/src/components/forms/AutoTextArea.tsx +48 -48
  146. package/src/components/forms/BillitIdentifier/index.tsx +78 -78
  147. package/src/components/forms/BillitIdentifier/styles.tsx +43 -43
  148. package/src/components/forms/Button.tsx +132 -132
  149. package/src/components/forms/Form/Checkbox.tsx +12 -12
  150. package/src/components/forms/Form/CustomSelect.tsx +86 -86
  151. package/src/components/forms/Form/FormGroup.tsx +33 -33
  152. package/src/components/forms/Form/Input.tsx +16 -16
  153. package/src/components/forms/Form/Row.tsx +28 -28
  154. package/src/components/forms/Form/Select.tsx +99 -99
  155. package/src/components/forms/Form/TextArea.tsx +17 -17
  156. package/src/components/forms/Form/index.tsx +48 -48
  157. package/src/components/forms/Form/styles.ts +148 -148
  158. package/src/components/forms/IconButton.tsx +61 -61
  159. package/src/components/forms/IndeterminateCheckbox.tsx +46 -46
  160. package/src/components/forms/NumberInput.tsx +53 -53
  161. package/src/components/forms/Select.tsx +34 -34
  162. package/src/components/forms/VerticalLabel.tsx +20 -20
  163. package/src/components/forms/styles.ts +42 -42
  164. package/src/components/layout/Columns.ts +28 -28
  165. package/src/components/layout/Dropdown/index.tsx +113 -113
  166. package/src/components/layout/Dropdown/styles.ts +53 -53
  167. package/src/components/layout/Flexbox.ts +21 -21
  168. package/src/components/layout/Grid/index.tsx +8 -8
  169. package/src/components/layout/Grid/styles.ts +34 -34
  170. package/src/components/layout/Loading/index.tsx +29 -29
  171. package/src/components/layout/Loading/styles.ts +29 -29
  172. package/src/components/layout/Masonry/index.tsx +29 -29
  173. package/src/components/layout/Masonry/styles.ts +20 -20
  174. package/src/components/layout/Modal/index.tsx +51 -51
  175. package/src/components/layout/Modal/styles.ts +125 -125
  176. package/src/components/search/HighlightedText.tsx +41 -41
  177. package/src/components/search/QuickSearchBar.tsx +102 -102
  178. package/src/components/search/QuickSearchResults.tsx +86 -86
  179. package/src/components/search/styles.ts +96 -96
  180. package/src/components/search/types.ts +29 -29
  181. package/src/components/ui/Avatar/index.tsx +54 -54
  182. package/src/components/ui/Card/index.tsx +17 -16
  183. package/src/components/ui/Card/styles.ts +38 -41
  184. package/src/components/ui/ContextMenu/index.tsx +79 -79
  185. package/src/components/ui/ContextMenu/styles.ts +119 -119
  186. package/src/components/ui/Ellipsis.tsx +33 -33
  187. package/src/components/ui/Label.tsx +93 -93
  188. package/src/components/ui/Message/index.tsx +57 -57
  189. package/src/components/ui/Message/styles.ts +44 -44
  190. package/src/components/ui/TabsView/TabsList.tsx +49 -49
  191. package/src/components/ui/TabsView/TabsView.tsx +42 -42
  192. package/src/components/ui/TabsView/styles.ts +85 -84
  193. package/src/components/ui/TabsView/types.ts +15 -15
  194. package/src/config/index.ts +10 -10
  195. package/src/helpers/components.ts +9 -9
  196. package/src/helpers/dates.ts +17 -17
  197. package/src/helpers/getScrollbarSize.ts +14 -14
  198. package/src/helpers/numbers.ts +63 -63
  199. package/src/helpers/responsive.ts +83 -83
  200. package/src/helpers/styled/size.ts +25 -0
  201. package/src/helpers/styled/space.ts +114 -114
  202. package/src/helpers/styled/typography.ts +25 -25
  203. package/src/helpers/text.ts +13 -13
  204. package/src/helpers/types.ts +9 -9
  205. package/src/hooks/useContainerMediaQuery.ts +7 -7
  206. package/src/hooks/useElementSize.ts +24 -24
  207. package/src/hooks/useMediaQuery.ts +9 -9
  208. package/src/hooks/useMediaQueryForWidth.ts +35 -35
  209. package/src/hooks/useMutableState.test.ts +410 -410
  210. package/src/hooks/useMutableState.ts +39 -39
  211. package/src/hooks/useShowArchived.ts +28 -28
  212. package/src/hooks/useWindowSize.ts +20 -20
  213. package/src/index.ts +105 -103
  214. package/src/providers/AuthenticationProvider/helpers.ts +3 -3
  215. package/src/providers/AuthenticationProvider/index.tsx +303 -303
  216. package/src/providers/LoadingProvider/index.tsx +47 -47
  217. package/src/providers/PortalsProvider/index.tsx +54 -54
  218. package/src/providers/PortalsProvider/styles.ts +31 -31
  219. package/src/providers/SettingsProvider/index.tsx +70 -70
  220. package/src/providers/ThemeProvider/defaultTheme.ts +471 -471
  221. package/src/providers/ThemeProvider/helpers.ts +89 -84
  222. package/src/providers/ThemeProvider/index.ts +73 -73
  223. package/src/providers/ThemeProvider/types.ts +139 -134
  224. package/src/providers/ToastProvider/index.tsx +93 -93
  225. package/src/providers/TrackingProvider/index.tsx +71 -71
  226. package/src/providers/UiProviders/index.tsx +76 -76
  227. package/src/providers/UiProviders/styles.ts +10 -10
  228. package/src/providers/hooks.ts +14 -14
  229. package/src/services/HttpService.ts +92 -92
  230. package/src/services/WebSocketService.ts +155 -155
  231. package/src/services/advancedRequests.ts +102 -102
  232. package/src/services/base.ts +23 -23
  233. package/src/services/globalSearch.ts +32 -32
  234. package/src/services/hooks.ts +92 -92
  235. package/src/services/requests/auth.ts +44 -44
  236. package/src/services/requests/generic.ts +62 -62
  237. package/src/services/requests/printing.ts +12 -12
  238. package/src/services/requests/tracking.ts +12 -12
  239. package/src/services/requests/userProfiles.ts +35 -35
  240. package/src/services/requests/users.ts +28 -28
  241. package/src/services/smartQueries.ts +122 -122
  242. package/src/services/sqlRequests.ts +119 -119
  243. package/src/services/types/auth.ts +98 -98
  244. package/src/services/types/base.ts +10 -10
  245. package/src/services/types/generic.ts +82 -82
  246. package/src/services/types/printing.ts +10 -10
  247. package/src/services/types/tracking.ts +29 -29
  248. package/src/services/types/userProfiles.ts +79 -79
  249. package/src/services/types/users.ts +74 -74
  250. package/src/services/updateSqlRequests.ts +32 -32
  251. package/src/styles/animations.scss +30 -30
  252. package/src/styles/index.scss +42 -42
  253. package/src/types.ts +8 -8
  254. package/src/typings.d.ts +2 -2
  255. package/tsconfig.json +18 -18
  256. package/tsconfig.tsbuildinfo +1 -1
@@ -1,119 +1,119 @@
1
- import { SqlRequestGridColumn } from '../components/data/SqlRequestGrid/types';
2
- import { useWebSocketRequestHandler } from './hooks';
3
-
4
- export type FieldDTO<T extends string = string> = {
5
- fieldName?: T;
6
- fieldAlias?: string;
7
- operator?:
8
- | 'add'
9
- | 'concat'
10
- | 'divide'
11
- | 'groupConcat'
12
- | 'if'
13
- | 'ifNull'
14
- | 'jsonObject'
15
- | 'length'
16
- | 'modulo'
17
- | 'multiply'
18
- | 'subtract'
19
- | 'sum'
20
- | 'trim';
21
- operands?: FieldDTO[];
22
- constantValue?: string | number | boolean | null;
23
- groupBy?: boolean;
24
- };
25
-
26
- export type ConditionDTO = {
27
- field: string;
28
- operator:
29
- | 'isLessThan'
30
- | 'isLessThanOrEqual'
31
- | 'isLessThanOrEquals'
32
- | 'lessThan'
33
- | 'lessThanOrEqual'
34
- | 'lessThanOrEquals'
35
- | 'equals'
36
- | 'notEquals'
37
- | 'isGreaterThanOrEqual'
38
- | 'isGreaterThanOrEquals'
39
- | 'isGreaterThan'
40
- | 'greaterThanOrEqual'
41
- | 'greaterThanOrEquals'
42
- | 'greaterThan'
43
- | 'like'
44
- | 'contains'
45
- | 'notContains'
46
- | 'startsWith'
47
- | 'endsWith'
48
- | 'notLike'
49
- | 'inRange'
50
- | 'between'
51
- | 'isNull'
52
- | 'isNotNull'
53
- | 'inArray'
54
- | 'in'
55
- | 'not'
56
- | 'and'
57
- | 'or';
58
- value?:
59
- | string
60
- | number
61
- | boolean
62
- | null
63
- | (string | number | boolean | null)[];
64
- children?: ConditionDTO[];
65
- type?: SqlRequestGridColumn<unknown>['type'];
66
- };
67
-
68
- export type OrderByDTO = {
69
- field: string;
70
- type: string;
71
- direction?: 'ASC' | 'DESC';
72
- };
73
-
74
- export type SqlRequestFooterFunction = 'sum' | 'avg' | 'count' | 'max' | 'min';
75
-
76
- export type SqlRequestDTO = {
77
- columns?: string[];
78
- returnColumns?: string[];
79
- columnTypes?: string[];
80
- totalColumns?: Record<string, SqlRequestFooterFunction>;
81
- conditions?: ConditionDTO[];
82
- orderBy?: OrderByDTO[];
83
- start?: number;
84
- length?: number;
85
- getCount?: boolean;
86
- unique?: boolean;
87
- };
88
-
89
- export type SqlRequestRow<R> = {
90
- [K in keyof R]: R[K] extends string | number | null | undefined
91
- ? R[K]
92
- : string | number | null | undefined;
93
- };
94
-
95
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
96
- export type SqlResponseDTO<T = any> = {
97
- data: SqlRequestRow<T>[];
98
- count?: number;
99
- totals?: Record<string, string | number | null | undefined>;
100
- };
101
-
102
- type SqlRequestHandler<T> = (
103
- request: SqlRequestDTO
104
- ) => Promise<SqlResponseDTO<T>>;
105
-
106
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
107
- export const useSqlRequestHandler = <T = any>(
108
- name: string
109
- ): [
110
- SqlRequestHandler<T>,
111
- SqlRequestHandler<{ Id: string }>,
112
- SqlRequestHandler<Partial<T>>
113
- ] => [
114
- useWebSocketRequestHandler<SqlRequestDTO, SqlResponseDTO<T>>(name),
115
- useWebSocketRequestHandler<SqlRequestDTO, SqlResponseDTO<{ Id: string }>>(
116
- name
117
- ),
118
- useWebSocketRequestHandler<SqlRequestDTO, SqlResponseDTO<Partial<T>>>(name),
119
- ];
1
+ import { SqlRequestGridColumn } from '../components/data/SqlRequestGrid/types';
2
+ import { useWebSocketRequestHandler } from './hooks';
3
+
4
+ export type FieldDTO<T extends string = string> = {
5
+ fieldName?: T;
6
+ fieldAlias?: string;
7
+ operator?:
8
+ | 'add'
9
+ | 'concat'
10
+ | 'divide'
11
+ | 'groupConcat'
12
+ | 'if'
13
+ | 'ifNull'
14
+ | 'jsonObject'
15
+ | 'length'
16
+ | 'modulo'
17
+ | 'multiply'
18
+ | 'subtract'
19
+ | 'sum'
20
+ | 'trim';
21
+ operands?: FieldDTO[];
22
+ constantValue?: string | number | boolean | null;
23
+ groupBy?: boolean;
24
+ };
25
+
26
+ export type ConditionDTO = {
27
+ field: string;
28
+ operator:
29
+ | 'isLessThan'
30
+ | 'isLessThanOrEqual'
31
+ | 'isLessThanOrEquals'
32
+ | 'lessThan'
33
+ | 'lessThanOrEqual'
34
+ | 'lessThanOrEquals'
35
+ | 'equals'
36
+ | 'notEquals'
37
+ | 'isGreaterThanOrEqual'
38
+ | 'isGreaterThanOrEquals'
39
+ | 'isGreaterThan'
40
+ | 'greaterThanOrEqual'
41
+ | 'greaterThanOrEquals'
42
+ | 'greaterThan'
43
+ | 'like'
44
+ | 'contains'
45
+ | 'notContains'
46
+ | 'startsWith'
47
+ | 'endsWith'
48
+ | 'notLike'
49
+ | 'inRange'
50
+ | 'between'
51
+ | 'isNull'
52
+ | 'isNotNull'
53
+ | 'inArray'
54
+ | 'in'
55
+ | 'not'
56
+ | 'and'
57
+ | 'or';
58
+ value?:
59
+ | string
60
+ | number
61
+ | boolean
62
+ | null
63
+ | (string | number | boolean | null)[];
64
+ children?: ConditionDTO[];
65
+ type?: SqlRequestGridColumn<unknown>['type'];
66
+ };
67
+
68
+ export type OrderByDTO = {
69
+ field: string;
70
+ type: string;
71
+ direction?: 'ASC' | 'DESC';
72
+ };
73
+
74
+ export type SqlRequestFooterFunction = 'sum' | 'avg' | 'count' | 'max' | 'min';
75
+
76
+ export type SqlRequestDTO = {
77
+ columns?: string[];
78
+ returnColumns?: string[];
79
+ columnTypes?: string[];
80
+ totalColumns?: Record<string, SqlRequestFooterFunction>;
81
+ conditions?: ConditionDTO[];
82
+ orderBy?: OrderByDTO[];
83
+ start?: number;
84
+ length?: number;
85
+ getCount?: boolean;
86
+ unique?: boolean;
87
+ };
88
+
89
+ export type SqlRequestRow<R> = {
90
+ [K in keyof R]: R[K] extends string | number | null | undefined
91
+ ? R[K]
92
+ : string | number | null | undefined;
93
+ };
94
+
95
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
96
+ export type SqlResponseDTO<T = any> = {
97
+ data: SqlRequestRow<T>[];
98
+ count?: number;
99
+ totals?: Record<string, string | number | null | undefined>;
100
+ };
101
+
102
+ type SqlRequestHandler<T> = (
103
+ request: SqlRequestDTO
104
+ ) => Promise<SqlResponseDTO<T>>;
105
+
106
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
107
+ export const useSqlRequestHandler = <T = any>(
108
+ name: string
109
+ ): [
110
+ SqlRequestHandler<T>,
111
+ SqlRequestHandler<{ Id: string }>,
112
+ SqlRequestHandler<Partial<T>>
113
+ ] => [
114
+ useWebSocketRequestHandler<SqlRequestDTO, SqlResponseDTO<T>>(name),
115
+ useWebSocketRequestHandler<SqlRequestDTO, SqlResponseDTO<{ Id: string }>>(
116
+ name
117
+ ),
118
+ useWebSocketRequestHandler<SqlRequestDTO, SqlResponseDTO<Partial<T>>>(name),
119
+ ];
@@ -1,98 +1,98 @@
1
- import * as z from 'zod';
2
-
3
- import { userDtoSchema } from './users';
4
-
5
- export const loginRequestDtoSchema = z.object({
6
- username: z.string(),
7
- password: z.string(),
8
- });
9
-
10
- export const loginResponseDtoSchema = z.object({
11
- status: z.number(),
12
- token: z.string(),
13
- user: userDtoSchema.nullable(),
14
- });
15
-
16
- export type LoginRequestDTO = z.infer<typeof loginRequestDtoSchema>;
17
- export type LoginResponseDTO = z.infer<typeof loginResponseDtoSchema>;
18
-
19
- /*****/
20
-
21
- export const logoutRequestDtoSchema = z.object({});
22
-
23
- export const logoutResponseDtoSchema = z.object({
24
- status: z.number(),
25
- });
26
-
27
- export type LogoutRequestDTO = z.infer<typeof logoutRequestDtoSchema>;
28
- export type LogoutResponseDTO = z.infer<typeof logoutResponseDtoSchema>;
29
-
30
- /*****/
31
-
32
- export const authenticateRequestDtoSchema = z.object({
33
- token: z.string(),
34
- });
35
-
36
- export const authenticateResponseDtoSchema = z.object({
37
- status: z.number(),
38
- user: userDtoSchema.nullable(),
39
- });
40
-
41
- export type AuthenticateRequestDTO = z.infer<
42
- typeof authenticateRequestDtoSchema
43
- >;
44
- export type AuthenticateResponseDTO = z.infer<
45
- typeof authenticateResponseDtoSchema
46
- >;
47
-
48
- /*****/
49
-
50
- export const sendRecoveryKeyRequestDtoSchema = z.object({
51
- email: z.string(),
52
- });
53
-
54
- export const sendRecoveryKeyResponseDtoSchema = z.object({
55
- status: z.number(),
56
- });
57
-
58
- export type SendRecoveryKeyRequestDTO = z.infer<
59
- typeof sendRecoveryKeyRequestDtoSchema
60
- >;
61
- export type SendRecoveryKeyResponseDTO = z.infer<
62
- typeof sendRecoveryKeyResponseDtoSchema
63
- >;
64
-
65
- /*****/
66
-
67
- export const checkRecoveryKeyRequestDtoSchema = z.object({
68
- key: z.string(),
69
- });
70
-
71
- export const checkRecoveryKeyResponseDtoSchema = z.object({
72
- status: z.number(),
73
- });
74
-
75
- export type CheckRecoveryKeyRequestDTO = z.infer<
76
- typeof checkRecoveryKeyRequestDtoSchema
77
- >;
78
- export type CheckRecoveryKeyResponseDTO = z.infer<
79
- typeof checkRecoveryKeyResponseDtoSchema
80
- >;
81
-
82
- /*****/
83
-
84
- export const resetPasswordRequestDtoSchema = z.object({
85
- key: z.string(),
86
- password: z.string(),
87
- });
88
-
89
- export const resetPasswordResponseDtoSchema = z.object({
90
- status: z.number(),
91
- });
92
-
93
- export type ResetPasswordRequestDTO = z.infer<
94
- typeof resetPasswordRequestDtoSchema
95
- >;
96
- export type ResetPasswordResponseDTO = z.infer<
97
- typeof resetPasswordResponseDtoSchema
98
- >;
1
+ import * as z from 'zod';
2
+
3
+ import { userDtoSchema } from './users';
4
+
5
+ export const loginRequestDtoSchema = z.object({
6
+ username: z.string(),
7
+ password: z.string(),
8
+ });
9
+
10
+ export const loginResponseDtoSchema = z.object({
11
+ status: z.number(),
12
+ token: z.string(),
13
+ user: userDtoSchema.nullable(),
14
+ });
15
+
16
+ export type LoginRequestDTO = z.infer<typeof loginRequestDtoSchema>;
17
+ export type LoginResponseDTO = z.infer<typeof loginResponseDtoSchema>;
18
+
19
+ /*****/
20
+
21
+ export const logoutRequestDtoSchema = z.object({});
22
+
23
+ export const logoutResponseDtoSchema = z.object({
24
+ status: z.number(),
25
+ });
26
+
27
+ export type LogoutRequestDTO = z.infer<typeof logoutRequestDtoSchema>;
28
+ export type LogoutResponseDTO = z.infer<typeof logoutResponseDtoSchema>;
29
+
30
+ /*****/
31
+
32
+ export const authenticateRequestDtoSchema = z.object({
33
+ token: z.string(),
34
+ });
35
+
36
+ export const authenticateResponseDtoSchema = z.object({
37
+ status: z.number(),
38
+ user: userDtoSchema.nullable(),
39
+ });
40
+
41
+ export type AuthenticateRequestDTO = z.infer<
42
+ typeof authenticateRequestDtoSchema
43
+ >;
44
+ export type AuthenticateResponseDTO = z.infer<
45
+ typeof authenticateResponseDtoSchema
46
+ >;
47
+
48
+ /*****/
49
+
50
+ export const sendRecoveryKeyRequestDtoSchema = z.object({
51
+ email: z.string(),
52
+ });
53
+
54
+ export const sendRecoveryKeyResponseDtoSchema = z.object({
55
+ status: z.number(),
56
+ });
57
+
58
+ export type SendRecoveryKeyRequestDTO = z.infer<
59
+ typeof sendRecoveryKeyRequestDtoSchema
60
+ >;
61
+ export type SendRecoveryKeyResponseDTO = z.infer<
62
+ typeof sendRecoveryKeyResponseDtoSchema
63
+ >;
64
+
65
+ /*****/
66
+
67
+ export const checkRecoveryKeyRequestDtoSchema = z.object({
68
+ key: z.string(),
69
+ });
70
+
71
+ export const checkRecoveryKeyResponseDtoSchema = z.object({
72
+ status: z.number(),
73
+ });
74
+
75
+ export type CheckRecoveryKeyRequestDTO = z.infer<
76
+ typeof checkRecoveryKeyRequestDtoSchema
77
+ >;
78
+ export type CheckRecoveryKeyResponseDTO = z.infer<
79
+ typeof checkRecoveryKeyResponseDtoSchema
80
+ >;
81
+
82
+ /*****/
83
+
84
+ export const resetPasswordRequestDtoSchema = z.object({
85
+ key: z.string(),
86
+ password: z.string(),
87
+ });
88
+
89
+ export const resetPasswordResponseDtoSchema = z.object({
90
+ status: z.number(),
91
+ });
92
+
93
+ export type ResetPasswordRequestDTO = z.infer<
94
+ typeof resetPasswordRequestDtoSchema
95
+ >;
96
+ export type ResetPasswordResponseDTO = z.infer<
97
+ typeof resetPasswordResponseDtoSchema
98
+ >;
@@ -1,10 +1,10 @@
1
- import * as z from 'zod';
2
-
3
- export const baseModelDtoSchema = z.object({
4
- id: z.uuid(),
5
- });
6
-
7
- export type BaseModelDTO = z.infer<typeof baseModelDtoSchema>;
8
-
9
- export const UUID_REGEX =
10
- /^[0-9a-f]{8}-[0-9a-f]{4}-[0-5][0-9a-f]{3}-[089ab][0-9a-f]{3}-[0-9a-f]{12}$/i;
1
+ import * as z from 'zod';
2
+
3
+ export const baseModelDtoSchema = z.object({
4
+ id: z.uuid(),
5
+ });
6
+
7
+ export type BaseModelDTO = z.infer<typeof baseModelDtoSchema>;
8
+
9
+ export const UUID_REGEX =
10
+ /^[0-9a-f]{8}-[0-9a-f]{4}-[0-5][0-9a-f]{3}-[089ab][0-9a-f]{3}-[0-9a-f]{12}$/i;
@@ -1,82 +1,82 @@
1
- import * as z from 'zod';
2
-
3
- export const genericGetRequestDtoSchema = z.object({
4
- id: z.string(),
5
- });
6
-
7
- export const getGenericGetResponseDtoSchema = <T extends z.ZodType>(
8
- schema: T
9
- ) =>
10
- z.object({
11
- status: z.number(),
12
- data: schema,
13
- });
14
-
15
- export type GenericGetRequestDTO = z.infer<typeof genericGetRequestDtoSchema>;
16
-
17
- /*****/
18
-
19
- export const genericGetAllRequestDtoSchema = z.object({});
20
-
21
- export const getGenericGetAllResponseDtoSchema = <T extends z.ZodType>(
22
- schema: T
23
- ) =>
24
- z.object({
25
- status: z.number(),
26
- data: z.array(schema),
27
- });
28
-
29
- export type GenericGetAllRequestDTO = z.infer<
30
- typeof genericGetAllRequestDtoSchema
31
- >;
32
-
33
- /*****/
34
-
35
- export const getGenericSaveRequestDtoSchema = <T extends z.ZodType>(
36
- schema: T
37
- ) =>
38
- z.object({
39
- data: schema,
40
- });
41
-
42
- export const getGenericSaveResponseDtoSchema = <T extends z.ZodType>(
43
- schema: T
44
- ) =>
45
- z.object({
46
- status: z.number(),
47
- data: schema,
48
- });
49
-
50
- /*****/
51
- export const genericArchiveRequestDtoSchema = z.object({
52
- ids: z.array(z.string()),
53
- archived: z.boolean().optional(),
54
- });
55
-
56
- export const genericArchiveResponseDtoSchema = z.object({
57
- status: z.array(z.number()),
58
- });
59
-
60
- export type GenericArchiveRequestDTO = z.infer<
61
- typeof genericArchiveRequestDtoSchema
62
- >;
63
- export type GenericArchiveResponseDTO = z.infer<
64
- typeof genericArchiveResponseDtoSchema
65
- >;
66
-
67
- /*****/
68
-
69
- export const genericDeleteRequestDtoSchema = z.object({
70
- ids: z.array(z.string()),
71
- });
72
-
73
- export const genericDeleteResponseDtoSchema = z.object({
74
- status: z.array(z.number()),
75
- });
76
-
77
- export type GenericDeleteRequestDTO = z.infer<
78
- typeof genericDeleteRequestDtoSchema
79
- >;
80
- export type GenericDeleteResponseDTO = z.infer<
81
- typeof genericDeleteResponseDtoSchema
82
- >;
1
+ import * as z from 'zod';
2
+
3
+ export const genericGetRequestDtoSchema = z.object({
4
+ id: z.string(),
5
+ });
6
+
7
+ export const getGenericGetResponseDtoSchema = <T extends z.ZodType>(
8
+ schema: T
9
+ ) =>
10
+ z.object({
11
+ status: z.number(),
12
+ data: schema,
13
+ });
14
+
15
+ export type GenericGetRequestDTO = z.infer<typeof genericGetRequestDtoSchema>;
16
+
17
+ /*****/
18
+
19
+ export const genericGetAllRequestDtoSchema = z.object({});
20
+
21
+ export const getGenericGetAllResponseDtoSchema = <T extends z.ZodType>(
22
+ schema: T
23
+ ) =>
24
+ z.object({
25
+ status: z.number(),
26
+ data: z.array(schema),
27
+ });
28
+
29
+ export type GenericGetAllRequestDTO = z.infer<
30
+ typeof genericGetAllRequestDtoSchema
31
+ >;
32
+
33
+ /*****/
34
+
35
+ export const getGenericSaveRequestDtoSchema = <T extends z.ZodType>(
36
+ schema: T
37
+ ) =>
38
+ z.object({
39
+ data: schema,
40
+ });
41
+
42
+ export const getGenericSaveResponseDtoSchema = <T extends z.ZodType>(
43
+ schema: T
44
+ ) =>
45
+ z.object({
46
+ status: z.number(),
47
+ data: schema,
48
+ });
49
+
50
+ /*****/
51
+ export const genericArchiveRequestDtoSchema = z.object({
52
+ ids: z.array(z.string()),
53
+ archived: z.boolean().optional(),
54
+ });
55
+
56
+ export const genericArchiveResponseDtoSchema = z.object({
57
+ status: z.array(z.number()),
58
+ });
59
+
60
+ export type GenericArchiveRequestDTO = z.infer<
61
+ typeof genericArchiveRequestDtoSchema
62
+ >;
63
+ export type GenericArchiveResponseDTO = z.infer<
64
+ typeof genericArchiveResponseDtoSchema
65
+ >;
66
+
67
+ /*****/
68
+
69
+ export const genericDeleteRequestDtoSchema = z.object({
70
+ ids: z.array(z.string()),
71
+ });
72
+
73
+ export const genericDeleteResponseDtoSchema = z.object({
74
+ status: z.array(z.number()),
75
+ });
76
+
77
+ export type GenericDeleteRequestDTO = z.infer<
78
+ typeof genericDeleteRequestDtoSchema
79
+ >;
80
+ export type GenericDeleteResponseDTO = z.infer<
81
+ typeof genericDeleteResponseDtoSchema
82
+ >;
@@ -1,10 +1,10 @@
1
- import { QuestPageElement } from '@addev-be/logiprint-common';
2
-
3
- export type PrintQuestModelRequestDTO = {
4
- pages: QuestPageElement[];
5
- };
6
-
7
- export type PrintQuestModelResponseDTO = {
8
- status: number;
9
- pdfBase64Url: string;
10
- };
1
+ import { QuestPageElement } from '@addev-be/logiprint-common';
2
+
3
+ export type PrintQuestModelRequestDTO = {
4
+ pages: QuestPageElement[];
5
+ };
6
+
7
+ export type PrintQuestModelResponseDTO = {
8
+ status: number;
9
+ pdfBase64Url: string;
10
+ };