@addev-be/ui 2.5.17 → 2.6.0

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 (286) 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/AdvancedRequestDataGrid/helpers/advancedRequests.d.ts +14 -0
  25. package/dist/components/data/AdvancedRequestDataGrid/helpers/advancedRequests.js +77 -0
  26. package/dist/components/data/AdvancedRequestDataGrid/helpers/columns.d.ts +22 -0
  27. package/dist/components/data/AdvancedRequestDataGrid/helpers/columns.js +105 -0
  28. package/dist/components/data/AdvancedRequestDataGrid/helpers/index.d.ts +2 -0
  29. package/dist/components/data/AdvancedRequestDataGrid/helpers/index.js +18 -0
  30. package/dist/components/data/AdvancedRequestDataGrid/index.d.ts +2 -0
  31. package/dist/components/data/AdvancedRequestDataGrid/index.js +215 -0
  32. package/dist/components/data/AdvancedRequestDataGrid/types.d.ts +21 -0
  33. package/dist/components/data/AdvancedRequestDataGrid/types.js +2 -0
  34. package/dist/components/data/DataGrid/AdvancedRequestDataGrid.d.ts +10 -0
  35. package/dist/components/data/DataGrid/AdvancedRequestDataGrid.js +173 -0
  36. package/dist/components/data/DataGrid/DataGridEditableCell.d.ts +2 -0
  37. package/dist/components/data/DataGrid/DataGridEditableCell.js +27 -0
  38. package/dist/components/data/DataGrid/FilterValuesScroller.d.ts +13 -0
  39. package/dist/components/data/DataGrid/FilterValuesScroller.js +73 -0
  40. package/dist/components/data/DataGrid/VirtualScroller.d.ts +11 -0
  41. package/dist/components/data/DataGrid/VirtualScroller.js +41 -0
  42. package/dist/components/data/DataGrid/helpers/advancedRequests.d.ts +12 -0
  43. package/dist/components/data/DataGrid/helpers/advancedRequests.js +53 -0
  44. package/dist/components/data/DataGrid/helpers.d.ts +28 -0
  45. package/dist/components/data/DataGrid/helpers.js +436 -0
  46. package/dist/components/data/SmartQueryDataGrid/helpers/columns.d.ts +20 -0
  47. package/dist/components/data/SmartQueryDataGrid/helpers/columns.js +160 -0
  48. package/dist/components/data/SmartQueryDataGrid/helpers/hooks.d.ts +5 -0
  49. package/dist/components/data/SmartQueryDataGrid/helpers/hooks.js +41 -0
  50. package/dist/components/data/SmartQueryDataGrid/helpers/index.d.ts +2 -0
  51. package/dist/components/data/SmartQueryDataGrid/helpers/index.js +18 -0
  52. package/dist/components/data/SmartQueryDataGrid/helpers/smartQueries.d.ts +3 -0
  53. package/dist/components/data/SmartQueryDataGrid/helpers/smartQueries.js +15 -0
  54. package/dist/components/data/SmartQueryDataGrid/hooks.d.ts +9 -0
  55. package/dist/components/data/SmartQueryDataGrid/hooks.js +63 -0
  56. package/dist/components/data/SmartQueryDataGrid/index.d.ts +12 -0
  57. package/dist/components/data/SmartQueryDataGrid/index.js +242 -0
  58. package/dist/components/data/SmartQueryDataGrid/types.d.ts +22 -0
  59. package/dist/components/data/SmartQueryDataGrid/types.js +2 -0
  60. package/dist/components/data/SqlRequestDataGrid/SqlRequestForeignListEditableCell.d.ts +2 -1
  61. package/dist/components/data/SqlRequestDataGrid/SqlRequestForeignListEditableCell.js +2 -3
  62. package/dist/components/forms/BillitIdentifier/index.d.ts +6 -0
  63. package/dist/components/forms/BillitIdentifier/index.js +71 -0
  64. package/dist/components/forms/BillitIdentifier/styles.d.ts +2 -0
  65. package/dist/components/forms/BillitIdentifier/styles.js +15 -0
  66. package/dist/components/forms/Form/FormGroup.d.ts +1 -0
  67. package/dist/components/forms/Form/FormGroup.js +2 -2
  68. package/dist/components/forms/Form/InputWithLabel.d.ts +2 -0
  69. package/dist/components/forms/Form/InputWithLabel.js +10 -0
  70. package/dist/components/forms/Form/Row.js +1 -1
  71. package/dist/components/forms/Form/Select.d.ts +3 -1
  72. package/dist/components/forms/Form/Select.js +19 -10
  73. package/dist/components/forms/Form/index.d.ts +4 -1
  74. package/dist/components/forms/Form/styles.d.ts +5 -3
  75. package/dist/components/forms/Form/styles.js +19 -14
  76. package/dist/components/forms/Form/types.d.ts +7 -0
  77. package/dist/components/forms/Form/types.js +2 -0
  78. package/dist/components/forms/styles.js +1 -1
  79. package/dist/components/ui/Card/index.d.ts +2 -1
  80. package/dist/components/ui/Card/styles.d.ts +2 -1
  81. package/dist/components/ui/Card/styles.js +2 -1
  82. package/dist/components/ui/TabsView/TabsList.d.ts +1 -0
  83. package/dist/components/ui/TabsView/TabsList.js +4 -2
  84. package/dist/components/ui/TabsView/TabsView.d.ts +3 -1
  85. package/dist/components/ui/TabsView/TabsView.js +2 -2
  86. package/dist/components/ui/TabsView/styles.js +4 -4
  87. package/dist/config/types.d.ts +11 -0
  88. package/dist/config/types.js +2 -0
  89. package/dist/helpers/react.d.ts +2 -0
  90. package/dist/helpers/react.js +8 -0
  91. package/dist/helpers/styled/index.d.ts +1 -0
  92. package/dist/helpers/styled/index.js +17 -0
  93. package/dist/hooks/useMutableState.d.ts +5 -3
  94. package/dist/hooks/useMutableState.js +9 -2
  95. package/dist/hooks/useMutableState.test.d.ts +4 -0
  96. package/dist/hooks/useMutableState.test.js +320 -0
  97. package/dist/index.d.ts +1 -0
  98. package/dist/index.js +1 -0
  99. package/dist/providers/ThemeProvider/defaultTheme.js +1 -0
  100. package/dist/providers/ThemeProvider/helpers.d.ts +1 -1
  101. package/dist/providers/ThemeProvider/index.js +1 -1
  102. package/dist/providers/ThemeProvider/types.d.ts +1 -1
  103. package/dist/services/index.js +17 -7
  104. package/dist/services/requests/userPermissions.d.ts +4 -0
  105. package/dist/services/requests/userPermissions.js +20 -0
  106. package/dist/services/sqlRequests.d.ts +1 -1
  107. package/eslint.config.js +3 -3
  108. package/package.json +11 -4
  109. package/src/Icons.tsx +138 -138
  110. package/src/components/auth/LoginForm.tsx +86 -86
  111. package/src/components/auth/LoginPage.tsx +32 -32
  112. package/src/components/auth/PasswordRecoveryForm.tsx +53 -53
  113. package/src/components/auth/PasswordResetForm.tsx +112 -112
  114. package/src/components/auth/styles.ts +14 -14
  115. package/src/components/data/DataGrid/DataGridCell.tsx +81 -81
  116. package/src/components/data/DataGrid/DataGridColumnsModal/helpers.ts +9 -9
  117. package/src/components/data/DataGrid/DataGridColumnsModal/hooks.tsx +59 -59
  118. package/src/components/data/DataGrid/DataGridColumnsModal/index.tsx +182 -182
  119. package/src/components/data/DataGrid/DataGridColumnsModal/styles.ts +104 -104
  120. package/src/components/data/DataGrid/DataGridEditableCell/CheckboxEditableCell.tsx +37 -37
  121. package/src/components/data/DataGrid/DataGridEditableCell/DateEditableCell.tsx +38 -38
  122. package/src/components/data/DataGrid/DataGridEditableCell/NumberEditableCell.tsx +71 -71
  123. package/src/components/data/DataGrid/DataGridEditableCell/TextEditableCell.tsx +37 -37
  124. package/src/components/data/DataGrid/DataGridEditableCell/index.tsx +106 -106
  125. package/src/components/data/DataGrid/DataGridEditableCell/styles.ts +35 -35
  126. package/src/components/data/DataGrid/DataGridEditableCell/types.ts +18 -18
  127. package/src/components/data/DataGrid/DataGridFilterMenu/FilterValuesScroller.tsx +129 -129
  128. package/src/components/data/DataGrid/DataGridFilterMenu/helpers.ts +23 -23
  129. package/src/components/data/DataGrid/DataGridFilterMenu/hooks.tsx +81 -81
  130. package/src/components/data/DataGrid/DataGridFilterMenu/index.tsx +370 -370
  131. package/src/components/data/DataGrid/DataGridFilterMenu/styles.ts +97 -97
  132. package/src/components/data/DataGrid/DataGridFooter.tsx +47 -47
  133. package/src/components/data/DataGrid/DataGridHeader.tsx +74 -74
  134. package/src/components/data/DataGrid/DataGridHeaderCell.tsx +112 -112
  135. package/src/components/data/DataGrid/DataGridRowTemplate.tsx +83 -83
  136. package/src/components/data/DataGrid/DataGridToolbar.tsx +134 -134
  137. package/src/components/data/DataGrid/FilterModalContent/index.tsx +137 -137
  138. package/src/components/data/DataGrid/FilterModalContent/styles.ts +22 -22
  139. package/src/components/data/DataGrid/constants.ts +6 -6
  140. package/src/components/data/DataGrid/helpers/columns.tsx +449 -449
  141. package/src/components/data/DataGrid/helpers/filters.ts +287 -287
  142. package/src/components/data/DataGrid/helpers/index.ts +2 -2
  143. package/src/components/data/DataGrid/hooks/index.ts +29 -29
  144. package/src/components/data/DataGrid/hooks/useDataGrid.tsx +383 -383
  145. package/src/components/data/DataGrid/hooks/useDataGridChangedRows.ts +97 -97
  146. package/src/components/data/DataGrid/hooks/useDataGridCopy.ts +174 -174
  147. package/src/components/data/DataGrid/hooks/useDataGridSettings.ts +48 -48
  148. package/src/components/data/DataGrid/hooks/useRefreshModal.tsx +48 -48
  149. package/src/components/data/DataGrid/index.tsx +111 -111
  150. package/src/components/data/DataGrid/styles.ts +434 -434
  151. package/src/components/data/DataGrid/types.ts +380 -380
  152. package/src/components/data/SqlRequestDataGrid/helpers/columns.tsx +526 -526
  153. package/src/components/data/SqlRequestDataGrid/helpers/index.ts +2 -2
  154. package/src/components/data/SqlRequestDataGrid/helpers/rows.ts +24 -24
  155. package/src/components/data/SqlRequestDataGrid/helpers/sqlRequests.ts +17 -17
  156. package/src/components/data/SqlRequestDataGrid/index.tsx +417 -417
  157. package/src/components/data/SqlRequestDataGrid/styles.ts +15 -15
  158. package/src/components/data/SqlRequestDataGrid/types.ts +74 -74
  159. package/src/components/data/SqlRequestForeignList/index.tsx +254 -254
  160. package/src/components/data/SqlRequestForeignList/styles.ts +43 -43
  161. package/src/components/data/SqlRequestForeignList/types.ts +32 -32
  162. package/src/components/data/SqlRequestGrid/filters/FiltersSidebar.tsx +108 -108
  163. package/src/components/data/SqlRequestGrid/filters/styles.ts +88 -88
  164. package/src/components/data/SqlRequestGrid/helpers/index.ts +1 -1
  165. package/src/components/data/SqlRequestGrid/helpers/sqlRequests.ts +16 -16
  166. package/src/components/data/SqlRequestGrid/index.tsx +304 -304
  167. package/src/components/data/SqlRequestGrid/styles.ts +20 -20
  168. package/src/components/data/SqlRequestGrid/types.ts +73 -73
  169. package/src/components/data/VirtualScroller/hooks.ts +71 -71
  170. package/src/components/data/VirtualScroller/index.tsx +89 -89
  171. package/src/components/data/VirtualScroller/styles.ts +57 -57
  172. package/src/components/data/VirtualScroller/types.ts +10 -10
  173. package/src/components/forms/AutoTextArea.tsx +48 -48
  174. package/src/components/forms/BillitIdentifier/index.tsx +78 -0
  175. package/src/components/forms/BillitIdentifier/styles.tsx +43 -0
  176. package/src/components/forms/Button.tsx +132 -132
  177. package/src/components/forms/Form/Checkbox.tsx +12 -12
  178. package/src/components/forms/Form/CustomSelect.tsx +86 -86
  179. package/src/components/forms/Form/FormGroup.tsx +33 -31
  180. package/src/components/forms/Form/Input.tsx +16 -16
  181. package/src/components/forms/Form/Row.tsx +28 -32
  182. package/src/components/forms/Form/Select.tsx +99 -82
  183. package/src/components/forms/Form/TextArea.tsx +17 -17
  184. package/src/components/forms/Form/index.tsx +48 -48
  185. package/src/components/forms/Form/styles.ts +148 -184
  186. package/src/components/forms/IconButton.tsx +61 -61
  187. package/src/components/forms/IndeterminateCheckbox.tsx +46 -46
  188. package/src/components/forms/NumberInput.tsx +53 -53
  189. package/src/components/forms/Select.tsx +34 -34
  190. package/src/components/forms/VerticalLabel.tsx +20 -20
  191. package/src/components/forms/styles.ts +42 -42
  192. package/src/components/layout/Columns.ts +28 -28
  193. package/src/components/layout/Dropdown/index.tsx +113 -113
  194. package/src/components/layout/Dropdown/styles.ts +53 -53
  195. package/src/components/layout/Flexbox.ts +21 -21
  196. package/src/components/layout/Grid/index.tsx +8 -8
  197. package/src/components/layout/Grid/styles.ts +34 -34
  198. package/src/components/layout/Loading/index.tsx +29 -29
  199. package/src/components/layout/Loading/styles.ts +29 -29
  200. package/src/components/layout/Masonry/index.tsx +29 -29
  201. package/src/components/layout/Masonry/styles.ts +20 -20
  202. package/src/components/layout/Modal/index.tsx +51 -51
  203. package/src/components/layout/Modal/styles.ts +125 -125
  204. package/src/components/search/HighlightedText.tsx +41 -41
  205. package/src/components/search/QuickSearchBar.tsx +102 -102
  206. package/src/components/search/QuickSearchResults.tsx +86 -86
  207. package/src/components/search/styles.ts +96 -96
  208. package/src/components/search/types.ts +29 -29
  209. package/src/components/ui/Avatar/index.tsx +54 -54
  210. package/src/components/ui/Avatar/styles.ts +61 -61
  211. package/src/components/ui/Card/index.tsx +16 -14
  212. package/src/components/ui/Card/styles.ts +41 -37
  213. package/src/components/ui/ContextMenu/index.tsx +79 -79
  214. package/src/components/ui/ContextMenu/styles.ts +119 -119
  215. package/src/components/ui/Ellipsis.tsx +33 -33
  216. package/src/components/ui/Label.tsx +93 -93
  217. package/src/components/ui/Message/index.tsx +57 -57
  218. package/src/components/ui/Message/styles.ts +44 -44
  219. package/src/components/ui/TabsView/TabsList.tsx +49 -44
  220. package/src/components/ui/TabsView/TabsView.tsx +42 -38
  221. package/src/components/ui/TabsView/index.ts +3 -3
  222. package/src/components/ui/TabsView/styles.ts +84 -76
  223. package/src/components/ui/TabsView/types.ts +15 -15
  224. package/src/config/index.ts +10 -10
  225. package/src/helpers/components.ts +9 -9
  226. package/src/helpers/dates.ts +17 -17
  227. package/src/helpers/getScrollbarSize.ts +14 -14
  228. package/src/helpers/numbers.ts +63 -63
  229. package/src/helpers/responsive.ts +83 -83
  230. package/src/helpers/styled/space.ts +114 -114
  231. package/src/helpers/styled/typography.ts +25 -25
  232. package/src/helpers/text.ts +13 -13
  233. package/src/helpers/types.ts +9 -9
  234. package/src/hooks/useContainerMediaQuery.ts +7 -7
  235. package/src/hooks/useElementSize.ts +24 -24
  236. package/src/hooks/useMediaQuery.ts +9 -9
  237. package/src/hooks/useMediaQueryForWidth.ts +35 -35
  238. package/src/hooks/useMutableState.test.ts +410 -0
  239. package/src/hooks/useMutableState.ts +39 -25
  240. package/src/hooks/useShowArchived.ts +28 -28
  241. package/src/hooks/useWindowSize.ts +20 -20
  242. package/src/index.ts +103 -102
  243. package/src/providers/AuthenticationProvider/helpers.ts +3 -3
  244. package/src/providers/AuthenticationProvider/index.tsx +303 -303
  245. package/src/providers/LoadingProvider/index.tsx +47 -47
  246. package/src/providers/PortalsProvider/index.tsx +54 -54
  247. package/src/providers/PortalsProvider/styles.ts +31 -31
  248. package/src/providers/SettingsProvider/index.tsx +70 -70
  249. package/src/providers/ThemeProvider/defaultTheme.ts +471 -470
  250. package/src/providers/ThemeProvider/helpers.ts +84 -84
  251. package/src/providers/ThemeProvider/index.ts +73 -66
  252. package/src/providers/ThemeProvider/types.ts +134 -134
  253. package/src/providers/ToastProvider/index.tsx +93 -93
  254. package/src/providers/TrackingProvider/hooks.ts +14 -14
  255. package/src/providers/TrackingProvider/index.tsx +71 -71
  256. package/src/providers/UiProviders/index.tsx +76 -76
  257. package/src/providers/UiProviders/styles.ts +10 -10
  258. package/src/providers/hooks.ts +14 -14
  259. package/src/services/HttpService.ts +92 -92
  260. package/src/services/WebSocketService.ts +155 -155
  261. package/src/services/advancedRequests.ts +102 -102
  262. package/src/services/base.ts +23 -23
  263. package/src/services/globalSearch.ts +32 -32
  264. package/src/services/hooks.ts +92 -92
  265. package/src/services/requests/auth.ts +44 -44
  266. package/src/services/requests/generic.ts +62 -62
  267. package/src/services/requests/printing.ts +12 -12
  268. package/src/services/requests/tracking.ts +12 -12
  269. package/src/services/requests/userProfiles.ts +35 -35
  270. package/src/services/requests/users.ts +28 -28
  271. package/src/services/smartQueries.ts +122 -122
  272. package/src/services/sqlRequests.ts +119 -113
  273. package/src/services/types/auth.ts +98 -98
  274. package/src/services/types/base.ts +10 -10
  275. package/src/services/types/generic.ts +82 -82
  276. package/src/services/types/printing.ts +10 -10
  277. package/src/services/types/tracking.ts +29 -29
  278. package/src/services/types/userProfiles.ts +79 -79
  279. package/src/services/types/users.ts +74 -74
  280. package/src/services/updateSqlRequests.ts +32 -32
  281. package/src/styles/animations.scss +30 -30
  282. package/src/styles/index.scss +42 -42
  283. package/src/types.ts +8 -8
  284. package/src/typings.d.ts +2 -2
  285. package/tsconfig.json +18 -18
  286. package/tsconfig.tsbuildinfo +1 -1
@@ -1,113 +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
- | 'lessThan'
30
- | 'lessThanOrEqual'
31
- | 'lessThanOrEquals'
32
- | 'equals'
33
- | 'notEquals'
34
- | 'greaterThanOrEqual'
35
- | 'greaterThanOrEquals'
36
- | 'greaterThan'
37
- | 'like'
38
- | 'contains'
39
- | 'notContains'
40
- | 'startsWith'
41
- | 'endsWith'
42
- | 'notLike'
43
- | 'inRange'
44
- | 'between'
45
- | 'isNull'
46
- | 'isNotNull'
47
- | 'inArray'
48
- | 'in'
49
- | 'not'
50
- | 'and'
51
- | 'or';
52
- value?:
53
- | string
54
- | number
55
- | boolean
56
- | null
57
- | (string | number | boolean | null)[];
58
- children?: ConditionDTO[];
59
- type?: SqlRequestGridColumn<unknown>['type'];
60
- };
61
-
62
- export type OrderByDTO = {
63
- field: string;
64
- type: string;
65
- direction?: 'ASC' | 'DESC';
66
- };
67
-
68
- export type SqlRequestFooterFunction = 'sum' | 'avg' | 'count' | 'max' | 'min';
69
-
70
- export type SqlRequestDTO = {
71
- columns?: string[];
72
- returnColumns?: string[];
73
- columnTypes?: string[];
74
- totalColumns?: Record<string, SqlRequestFooterFunction>;
75
- conditions?: ConditionDTO[];
76
- orderBy?: OrderByDTO[];
77
- start?: number;
78
- length?: number;
79
- getCount?: boolean;
80
- unique?: boolean;
81
- };
82
-
83
- export type SqlRequestRow<R> = {
84
- [K in keyof R]: R[K] extends string | number | null | undefined
85
- ? R[K]
86
- : string | number | null | undefined;
87
- };
88
-
89
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
90
- export type SqlResponseDTO<T = any> = {
91
- data: SqlRequestRow<T>[];
92
- count?: number;
93
- totals?: Record<string, string | number | null | undefined>;
94
- };
95
-
96
- type SqlRequestHandler<T> = (
97
- request: SqlRequestDTO
98
- ) => Promise<SqlResponseDTO<T>>;
99
-
100
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
101
- export const useSqlRequestHandler = <T = any>(
102
- name: string
103
- ): [
104
- SqlRequestHandler<T>,
105
- SqlRequestHandler<{ Id: string }>,
106
- SqlRequestHandler<Partial<T>>
107
- ] => [
108
- useWebSocketRequestHandler<SqlRequestDTO, SqlResponseDTO<T>>(name),
109
- useWebSocketRequestHandler<SqlRequestDTO, SqlResponseDTO<{ Id: string }>>(
110
- name
111
- ),
112
- useWebSocketRequestHandler<SqlRequestDTO, SqlResponseDTO<Partial<T>>>(name),
113
- ];
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
+ };