@addev-be/ui 0.3.2 → 0.3.5

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 (288) 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/down.svg +1 -1
  6. package/assets/icons/filter-full.svg +1 -1
  7. package/assets/icons/filter.svg +1 -1
  8. package/assets/icons/hashtag.svg +1 -1
  9. package/assets/icons/image-slash.svg +1 -1
  10. package/assets/icons/left.svg +1 -1
  11. package/assets/icons/magnifier.svg +1 -1
  12. package/assets/icons/phone.svg +1 -1
  13. package/assets/icons/right.svg +1 -1
  14. package/assets/icons/sort-calendar-ascending.svg +5 -5
  15. package/assets/icons/spinner-third.svg +1 -1
  16. package/assets/icons/table-columns.svg +1 -1
  17. package/assets/icons/table-footer-slash.svg +4 -4
  18. package/assets/icons/table-footer.svg +3 -3
  19. package/assets/icons/up.svg +1 -1
  20. package/assets/icons/user-tie.svg +1 -1
  21. package/assets/icons/x-bar.svg +3 -3
  22. package/dist/Icons.d.ts +43 -0
  23. package/dist/Icons.js +116 -0
  24. package/dist/components/data/AdvancedRequestDataGrid/helpers/advancedRequests.d.ts +14 -0
  25. package/dist/components/data/AdvancedRequestDataGrid/helpers/advancedRequests.js +76 -0
  26. package/dist/components/data/AdvancedRequestDataGrid/helpers/columns.d.ts +22 -0
  27. package/dist/components/data/AdvancedRequestDataGrid/helpers/columns.js +156 -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/DataGridCell.d.ts +2 -0
  37. package/dist/components/data/DataGrid/DataGridCell.js +59 -0
  38. package/dist/components/data/DataGrid/DataGridColumnsModal/helpers.d.ts +2 -0
  39. package/dist/components/data/DataGrid/DataGridColumnsModal/helpers.js +24 -0
  40. package/dist/components/data/DataGrid/DataGridColumnsModal/hooks.d.ts +6 -0
  41. package/dist/components/data/DataGrid/DataGridColumnsModal/hooks.js +38 -0
  42. package/dist/components/data/DataGrid/DataGridColumnsModal/index.d.ts +15 -0
  43. package/dist/components/data/DataGrid/DataGridColumnsModal/index.js +111 -0
  44. package/dist/components/data/DataGrid/DataGridColumnsModal/styles.d.ts +22 -0
  45. package/dist/components/data/DataGrid/DataGridColumnsModal/styles.js +54 -0
  46. package/dist/components/data/DataGrid/DataGridEditableCell.d.ts +2 -0
  47. package/dist/components/data/DataGrid/DataGridEditableCell.js +27 -0
  48. package/dist/components/data/DataGrid/DataGridFilterMenu/hooks.d.ts +9 -0
  49. package/dist/components/data/DataGrid/DataGridFilterMenu/hooks.js +52 -0
  50. package/dist/components/data/DataGrid/DataGridFilterMenu/index.d.ts +9 -0
  51. package/dist/components/data/DataGrid/DataGridFilterMenu/index.js +220 -0
  52. package/dist/components/data/DataGrid/DataGridFilterMenu/styles.d.ts +9 -0
  53. package/dist/components/data/DataGrid/DataGridFilterMenu/styles.js +21 -0
  54. package/dist/components/data/DataGrid/DataGridFooter.d.ts +4 -0
  55. package/dist/components/data/DataGrid/DataGridFooter.js +44 -0
  56. package/dist/components/data/DataGrid/DataGridHeader.d.ts +4 -0
  57. package/dist/components/data/DataGrid/DataGridHeader.js +119 -0
  58. package/dist/components/data/DataGrid/DataGridHeaderCell.d.ts +2 -0
  59. package/dist/components/data/DataGrid/DataGridHeaderCell.js +84 -0
  60. package/dist/components/data/DataGrid/FilterModalContent/index.d.ts +7 -0
  61. package/dist/components/data/DataGrid/FilterModalContent/index.js +108 -0
  62. package/dist/components/data/DataGrid/FilterModalContent/styles.d.ts +3 -0
  63. package/dist/components/data/DataGrid/FilterModalContent/styles.js +15 -0
  64. package/dist/components/data/DataGrid/FilterValuesScroller.d.ts +13 -0
  65. package/dist/components/data/DataGrid/FilterValuesScroller.js +73 -0
  66. package/dist/components/data/DataGrid/VirtualScroller.d.ts +11 -0
  67. package/dist/components/data/DataGrid/VirtualScroller.js +41 -0
  68. package/dist/components/data/DataGrid/helpers/advancedRequests.d.ts +12 -0
  69. package/dist/components/data/DataGrid/helpers/advancedRequests.js +53 -0
  70. package/dist/components/data/DataGrid/helpers/columns.d.ts +12 -0
  71. package/dist/components/data/DataGrid/helpers/columns.js +162 -0
  72. package/dist/components/data/DataGrid/helpers/filters.d.ts +17 -0
  73. package/dist/components/data/DataGrid/helpers/filters.js +254 -0
  74. package/dist/components/data/DataGrid/helpers/index.d.ts +2 -0
  75. package/dist/components/data/DataGrid/helpers/index.js +18 -0
  76. package/dist/components/data/DataGrid/helpers.d.ts +28 -0
  77. package/dist/components/data/DataGrid/helpers.js +436 -0
  78. package/dist/components/data/DataGrid/hooks/index.d.ts +7 -0
  79. package/dist/components/data/DataGrid/hooks/index.js +34 -0
  80. package/dist/components/data/DataGrid/hooks/useDataGrid.d.ts +2 -0
  81. package/dist/components/data/DataGrid/hooks/useDataGrid.js +246 -0
  82. package/dist/components/data/DataGrid/hooks/useDataGridCopy.d.ts +4 -0
  83. package/dist/components/data/DataGrid/hooks/useDataGridCopy.js +171 -0
  84. package/dist/components/data/DataGrid/hooks/useDataGridSettings.d.ts +16 -0
  85. package/dist/components/data/DataGrid/hooks/useDataGridSettings.js +43 -0
  86. package/dist/components/data/DataGrid/index.d.ts +4 -0
  87. package/dist/components/data/DataGrid/index.js +108 -0
  88. package/dist/components/data/DataGrid/styles.d.ts +64 -0
  89. package/dist/components/data/DataGrid/styles.js +134 -0
  90. package/dist/components/data/DataGrid/types.d.ts +162 -0
  91. package/dist/components/data/DataGrid/types.js +34 -0
  92. package/dist/components/data/SqlRequestDataGrid/helpers/columns.d.ts +16 -0
  93. package/dist/components/data/SqlRequestDataGrid/helpers/columns.js +125 -0
  94. package/dist/components/data/SqlRequestDataGrid/helpers/index.d.ts +2 -0
  95. package/dist/components/data/SqlRequestDataGrid/helpers/index.js +18 -0
  96. package/dist/components/data/SqlRequestDataGrid/helpers/sqlRequests.d.ts +3 -0
  97. package/dist/components/data/SqlRequestDataGrid/helpers/sqlRequests.js +18 -0
  98. package/dist/components/data/SqlRequestDataGrid/index.d.ts +2 -0
  99. package/dist/components/data/SqlRequestDataGrid/index.js +296 -0
  100. package/dist/components/data/SqlRequestDataGrid/types.d.ts +21 -0
  101. package/dist/components/data/SqlRequestDataGrid/types.js +2 -0
  102. package/dist/components/data/index.d.ts +8 -0
  103. package/dist/components/data/index.js +24 -0
  104. package/dist/components/forms/Button.d.ts +10 -0
  105. package/dist/components/forms/Button.js +70 -0
  106. package/dist/components/forms/IconButton.d.ts +7 -0
  107. package/dist/components/forms/IconButton.js +64 -0
  108. package/dist/components/forms/IndeterminateCheckbox.d.ts +8 -0
  109. package/dist/components/forms/IndeterminateCheckbox.js +41 -0
  110. package/dist/components/forms/Select.d.ts +10 -0
  111. package/dist/components/forms/Select.js +49 -0
  112. package/dist/components/forms/index.d.ts +5 -0
  113. package/dist/components/forms/index.js +23 -0
  114. package/dist/components/forms/styles.d.ts +2 -0
  115. package/dist/components/forms/styles.js +34 -0
  116. package/dist/components/index.d.ts +3 -0
  117. package/dist/components/index.js +19 -0
  118. package/dist/components/layout/Dropdown/index.d.ts +11 -0
  119. package/dist/components/layout/Dropdown/index.js +85 -0
  120. package/dist/components/layout/Dropdown/styles.d.ts +11 -0
  121. package/dist/components/layout/Dropdown/styles.js +45 -0
  122. package/dist/components/layout/Loading/index.d.ts +6 -0
  123. package/dist/components/layout/Loading/index.js +42 -0
  124. package/dist/components/layout/Loading/styles.d.ts +6 -0
  125. package/dist/components/layout/Loading/styles.js +18 -0
  126. package/dist/components/layout/Modal/index.d.ts +16 -0
  127. package/dist/components/layout/Modal/index.js +67 -0
  128. package/dist/components/layout/Modal/styles.d.ts +32 -0
  129. package/dist/components/layout/Modal/styles.js +52 -0
  130. package/dist/components/layout/index.d.ts +3 -0
  131. package/dist/components/layout/index.js +19 -0
  132. package/dist/components/ui/ContextMenu/index.d.ts +11 -0
  133. package/dist/components/ui/ContextMenu/index.js +58 -0
  134. package/dist/components/ui/ContextMenu/styles.d.ts +18 -0
  135. package/dist/components/ui/ContextMenu/styles.js +56 -0
  136. package/dist/config/index.d.ts +10 -0
  137. package/dist/config/index.js +2 -0
  138. package/dist/config/types.d.ts +11 -0
  139. package/dist/config/types.js +2 -0
  140. package/dist/helpers/dates.d.ts +2 -0
  141. package/dist/helpers/dates.js +13 -0
  142. package/dist/helpers/getScrollbarSize.d.ts +1 -0
  143. package/dist/helpers/getScrollbarSize.js +17 -0
  144. package/dist/helpers/numbers.d.ts +3 -0
  145. package/dist/helpers/numbers.js +31 -0
  146. package/dist/hooks/index.d.ts +2 -0
  147. package/dist/hooks/index.js +18 -0
  148. package/dist/hooks/useElementSize.d.ts +4 -0
  149. package/dist/hooks/useElementSize.js +23 -0
  150. package/dist/hooks/useWindowSize.d.ts +4 -0
  151. package/dist/hooks/useWindowSize.js +19 -0
  152. package/dist/index.d.ts +5 -0
  153. package/dist/index.js +21 -0
  154. package/dist/providers/PortalsProvider/index.d.ts +10 -0
  155. package/dist/providers/PortalsProvider/index.js +46 -0
  156. package/dist/providers/PortalsProvider/styles.d.ts +9 -0
  157. package/dist/providers/PortalsProvider/styles.js +21 -0
  158. package/dist/providers/SettingsProvider/index.d.ts +8 -0
  159. package/dist/providers/SettingsProvider/index.js +54 -0
  160. package/dist/providers/ThemeProvider/ThemeProvider.d.ts +7 -0
  161. package/dist/providers/ThemeProvider/ThemeProvider.js +51 -0
  162. package/dist/providers/ThemeProvider/defaultTheme.d.ts +2 -0
  163. package/dist/providers/ThemeProvider/defaultTheme.js +417 -0
  164. package/dist/providers/ThemeProvider/index.d.ts +2 -0
  165. package/dist/providers/ThemeProvider/index.js +5 -0
  166. package/dist/providers/ThemeProvider/types.d.ts +24 -0
  167. package/dist/providers/ThemeProvider/types.js +2 -0
  168. package/dist/providers/UiProviders/index.d.ts +12 -0
  169. package/dist/providers/UiProviders/index.js +62 -0
  170. package/dist/providers/UiProviders/styles.d.ts +3 -0
  171. package/dist/providers/UiProviders/styles.js +13 -0
  172. package/dist/providers/hooks.d.ts +3 -0
  173. package/dist/providers/hooks.js +13 -0
  174. package/dist/providers/index.d.ts +4 -0
  175. package/dist/providers/index.js +20 -0
  176. package/dist/services/HttpService.d.ts +10 -0
  177. package/dist/services/HttpService.js +117 -0
  178. package/dist/services/WebSocketService.d.ts +24 -0
  179. package/dist/services/WebSocketService.js +136 -0
  180. package/dist/services/advancedRequests.d.ts +41 -0
  181. package/dist/services/advancedRequests.js +13 -0
  182. package/dist/services/base.d.ts +19 -0
  183. package/dist/services/base.js +10 -0
  184. package/dist/services/hooks.d.ts +2 -0
  185. package/dist/services/hooks.js +18 -0
  186. package/dist/services/index.d.ts +2 -0
  187. package/dist/services/index.js +18 -0
  188. package/dist/services/sqlRequests.d.ts +45 -0
  189. package/dist/services/sqlRequests.js +11 -0
  190. package/package.json +2 -1
  191. package/src/Icons.tsx +108 -108
  192. package/src/components/data/AdvancedRequestDataGrid/helpers/advancedRequests.ts +93 -93
  193. package/src/components/data/AdvancedRequestDataGrid/helpers/columns.tsx +262 -262
  194. package/src/components/data/AdvancedRequestDataGrid/helpers/index.ts +2 -2
  195. package/src/components/data/AdvancedRequestDataGrid/index.tsx +267 -267
  196. package/src/components/data/AdvancedRequestDataGrid/types.ts +47 -47
  197. package/src/components/data/DataGrid/DataGridCell.tsx +73 -73
  198. package/src/components/data/DataGrid/DataGridColumnsModal/helpers.ts +14 -14
  199. package/src/components/data/DataGrid/DataGridColumnsModal/hooks.tsx +59 -59
  200. package/src/components/data/DataGrid/DataGridColumnsModal/index.tsx +181 -181
  201. package/src/components/data/DataGrid/DataGridColumnsModal/styles.ts +104 -104
  202. package/src/components/data/DataGrid/DataGridEditableCell.tsx +43 -43
  203. package/src/components/data/DataGrid/DataGridFilterMenu/FilterValuesScroller.tsx +120 -120
  204. package/src/components/data/DataGrid/DataGridFilterMenu/hooks.tsx +75 -75
  205. package/src/components/data/DataGrid/DataGridFilterMenu/index.tsx +360 -360
  206. package/src/components/data/DataGrid/DataGridFilterMenu/styles.ts +96 -96
  207. package/src/components/data/DataGrid/DataGridFooter.tsx +42 -42
  208. package/src/components/data/DataGrid/DataGridHeader.tsx +126 -126
  209. package/src/components/data/DataGrid/DataGridHeaderCell.tsx +132 -132
  210. package/src/components/data/DataGrid/FilterModalContent/index.tsx +136 -136
  211. package/src/components/data/DataGrid/FilterModalContent/styles.ts +22 -22
  212. package/src/components/data/DataGrid/VirtualScroller.tsx +46 -46
  213. package/src/components/data/DataGrid/helpers/columns.tsx +295 -295
  214. package/src/components/data/DataGrid/helpers/filters.ts +287 -287
  215. package/src/components/data/DataGrid/helpers/index.ts +2 -2
  216. package/src/components/data/DataGrid/hooks/index.ts +30 -30
  217. package/src/components/data/DataGrid/hooks/useDataGrid.tsx +306 -306
  218. package/src/components/data/DataGrid/hooks/useDataGridCopy.ts +175 -175
  219. package/src/components/data/DataGrid/hooks/useDataGridSettings.ts +48 -48
  220. package/src/components/data/DataGrid/index.tsx +140 -140
  221. package/src/components/data/DataGrid/styles.ts +323 -323
  222. package/src/components/data/DataGrid/types.ts +267 -267
  223. package/src/components/data/SqlRequestDataGrid/helpers/columns.tsx +277 -277
  224. package/src/components/data/SqlRequestDataGrid/helpers/index.ts +2 -2
  225. package/src/components/data/SqlRequestDataGrid/helpers/sqlRequests.ts +16 -16
  226. package/src/components/data/SqlRequestDataGrid/index.tsx +347 -347
  227. package/src/components/data/SqlRequestDataGrid/types.ts +47 -47
  228. package/src/components/data/index.ts +8 -8
  229. package/src/components/forms/Button.tsx +99 -99
  230. package/src/components/forms/IconButton.tsx +56 -56
  231. package/src/components/forms/IndeterminateCheckbox.tsx +46 -46
  232. package/src/components/forms/Select.tsx +40 -40
  233. package/src/components/forms/index.ts +5 -5
  234. package/src/components/forms/styles.ts +20 -20
  235. package/src/components/index.ts +4 -3
  236. package/src/components/layout/Dropdown/index.tsx +80 -79
  237. package/src/components/layout/Dropdown/styles.ts +45 -44
  238. package/src/components/layout/Loading/index.tsx +29 -29
  239. package/src/components/layout/Loading/styles.ts +29 -29
  240. package/src/components/layout/Modal/index.tsx +51 -51
  241. package/src/components/layout/Modal/styles.ts +110 -110
  242. package/src/components/layout/index.ts +3 -3
  243. package/src/components/search/HighlightedText.tsx +30 -0
  244. package/src/components/search/QuickSearchBar.tsx +78 -0
  245. package/src/components/search/QuickSearchResults.tsx +86 -0
  246. package/src/components/search/index.ts +5 -0
  247. package/src/components/search/styles.ts +60 -0
  248. package/src/components/search/types.ts +26 -0
  249. package/src/components/ui/ContextMenu/index.tsx +79 -79
  250. package/src/components/ui/ContextMenu/styles.ts +119 -119
  251. package/src/config/index.ts +14 -14
  252. package/src/helpers/dates.ts +9 -9
  253. package/src/helpers/getScrollbarSize.ts +14 -14
  254. package/src/helpers/index.ts +2 -0
  255. package/src/helpers/numbers.ts +26 -26
  256. package/src/hooks/index.ts +2 -2
  257. package/src/hooks/useElementSize.ts +24 -24
  258. package/src/hooks/useWindowSize.ts +20 -20
  259. package/src/index.ts +8 -7
  260. package/src/providers/AuthenticationProvider/index.tsx +199 -143
  261. package/src/providers/LoadingProvider/index.tsx +47 -47
  262. package/src/providers/PortalsProvider/index.tsx +54 -54
  263. package/src/providers/PortalsProvider/styles.ts +27 -27
  264. package/src/providers/SettingsProvider/index.tsx +70 -70
  265. package/src/providers/ThemeProvider/ThemeProvider.ts +55 -55
  266. package/src/providers/ThemeProvider/defaultTheme.ts +444 -444
  267. package/src/providers/ThemeProvider/index.ts +4 -4
  268. package/src/providers/ThemeProvider/types.ts +123 -123
  269. package/src/providers/UiProviders/index.tsx +65 -65
  270. package/src/providers/UiProviders/styles.ts +10 -10
  271. package/src/providers/hooks.ts +12 -10
  272. package/src/providers/index.ts +6 -6
  273. package/src/services/HttpService.ts +80 -80
  274. package/src/services/WebSocketService.ts +136 -136
  275. package/src/services/advancedRequests.ts +101 -101
  276. package/src/services/base.ts +31 -31
  277. package/src/services/globalSearch.ts +27 -27
  278. package/src/services/hooks.ts +40 -40
  279. package/src/services/index.ts +9 -8
  280. package/src/services/requests/auth.ts +44 -44
  281. package/src/services/sqlRequests.ts +110 -110
  282. package/src/services/types/auth.ts +131 -131
  283. package/src/services/types/base.ts +10 -10
  284. package/src/services/types/users.ts +20 -20
  285. package/src/styles/animations.scss +30 -30
  286. package/src/styles/index.scss +42 -42
  287. package/src/typings.d.ts +6 -6
  288. package/tsconfig.tsbuildinfo +1 -0
package/src/Icons.tsx CHANGED
@@ -1,108 +1,108 @@
1
- import { FC, SVGProps, useEffect, useState } from 'react';
2
-
3
- import ArrowDown19Icon from '../assets/icons/arrow-down-1-9.svg?react';
4
- import ArrowDownAZIcon from '../assets/icons/arrow-down-a-z.svg?react';
5
- import ArrowDownBigSmallIcon from '../assets/icons/arrow-down-big-small.svg?react';
6
- import ArrowUp91Icon from '../assets/icons/arrow-up-9-1.svg?react';
7
- import ArrowUpBigSmallIcon from '../assets/icons/arrow-up-big-small.svg?react';
8
- import ArrowUpZAIcon from '../assets/icons/arrow-up-z-a.svg?react';
9
- import ArrowsRotateIcon from '../assets/icons/arrows-rotate.svg?react';
10
- import ArrowsUpDownIcon from '../assets/icons/arrows-up-down.svg?react';
11
- import CheckIcon from '../assets/icons/check.svg?react';
12
- import ChevronDownIcon from '../assets/icons/chevron-down.svg?react';
13
- import CopyIcon from '../assets/icons/copy.svg?react';
14
- import DownIcon from '../assets/icons/down.svg?react';
15
- import EllipsisIcon from '../assets/icons/ellipsis.svg?react';
16
- import FilterFullIcon from '../assets/icons/filter-full.svg?react';
17
- import FilterIcon from '../assets/icons/filter.svg?react';
18
- import FilterSlashIcon from '../assets/icons/filter-slash.svg?react';
19
- import HashtagIcon from '../assets/icons/hashtag.svg?react';
20
- import ImageSlashIcon from '../assets/icons/image-slash.svg?react';
21
- import LeftIcon from '../assets/icons/left.svg?react';
22
- import MagnifierIcon from '../assets/icons/magnifier.svg?react';
23
- import PhoneIcon from '../assets/icons/phone.svg?react';
24
- import PlusIcon from '../assets/icons/plus.svg?react';
25
- import RightIcon from '../assets/icons/right.svg?react';
26
- import SigmaIcon from '../assets/icons/sigma.svg?react';
27
- import SortCalendarAscendingIcon from '../assets/icons/sort-calendar-ascending.svg?react';
28
- import SortCalendarDescendingIcon from '../assets/icons/sort-calendar-descending.svg?react';
29
- import SpinnerIcon from '../assets/icons/spinner-third.svg?react';
30
- import TableColumnsIcon from '../assets/icons/table-columns.svg?react';
31
- import TableFooterIcon from '../assets/icons/table-footer.svg?react';
32
- import TableFooterSlashIcon from '../assets/icons/table-footer-slash.svg?react';
33
- import TableIcon from '../assets/icons/table.svg?react';
34
- import TallyIcon from '../assets/icons/tally.svg?react';
35
- import UpIcon from '../assets/icons/up.svg?react';
36
- import UserTieIcon from '../assets/icons/user-tie.svg?react';
37
- import XBarIcon from '../assets/icons/x-bar.svg?react';
38
-
39
- type IconFCProps = SVGProps<SVGSVGElement>;
40
- export type IconFC = FC<IconFCProps>;
41
-
42
- type AnimatedIconProps = {
43
- icons: FC[];
44
- speed?: number;
45
- };
46
-
47
- export const AnimatedIcon: FC<AnimatedIconProps & IconFCProps> = ({
48
- icons,
49
- speed = 150,
50
- ...props
51
- }) => {
52
- const [currentIcon, setCurrentIcon] = useState(0);
53
-
54
- useEffect(() => {
55
- const interval = setInterval(() => {
56
- setCurrentIcon((currentIcon) => (currentIcon + 1) % icons.length);
57
- }, speed);
58
-
59
- return () => {
60
- clearInterval(interval);
61
- };
62
- }, [icons.length, speed]);
63
-
64
- const Icon = icons[currentIcon];
65
- return <Icon {...props} />;
66
- };
67
-
68
- export const LoadingIcon: FC<IconFCProps> = ({ className, ...props }) => (
69
- <SpinnerIcon className={`animate-spin ${className}`} {...props} />
70
- );
71
-
72
- export {
73
- ArrowDownAZIcon,
74
- ArrowDown19Icon,
75
- ArrowDownBigSmallIcon,
76
- ArrowUpZAIcon,
77
- ArrowUpBigSmallIcon,
78
- ArrowUp91Icon,
79
- ArrowsRotateIcon,
80
- ArrowsUpDownIcon,
81
- CheckIcon,
82
- ChevronDownIcon,
83
- CopyIcon,
84
- DownIcon,
85
- EllipsisIcon,
86
- FilterFullIcon,
87
- FilterIcon,
88
- FilterSlashIcon,
89
- HashtagIcon,
90
- ImageSlashIcon,
91
- LeftIcon,
92
- MagnifierIcon,
93
- PhoneIcon,
94
- PlusIcon,
95
- RightIcon,
96
- SigmaIcon,
97
- SortCalendarAscendingIcon,
98
- SortCalendarDescendingIcon,
99
- SpinnerIcon,
100
- TableColumnsIcon,
101
- TableFooterIcon,
102
- TableFooterSlashIcon,
103
- TableIcon,
104
- TallyIcon,
105
- UpIcon,
106
- UserTieIcon,
107
- XBarIcon,
108
- };
1
+ import { FC, SVGProps, useEffect, useState } from 'react';
2
+
3
+ import ArrowDown19Icon from '../assets/icons/arrow-down-1-9.svg?react';
4
+ import ArrowDownAZIcon from '../assets/icons/arrow-down-a-z.svg?react';
5
+ import ArrowDownBigSmallIcon from '../assets/icons/arrow-down-big-small.svg?react';
6
+ import ArrowUp91Icon from '../assets/icons/arrow-up-9-1.svg?react';
7
+ import ArrowUpBigSmallIcon from '../assets/icons/arrow-up-big-small.svg?react';
8
+ import ArrowUpZAIcon from '../assets/icons/arrow-up-z-a.svg?react';
9
+ import ArrowsRotateIcon from '../assets/icons/arrows-rotate.svg?react';
10
+ import ArrowsUpDownIcon from '../assets/icons/arrows-up-down.svg?react';
11
+ import CheckIcon from '../assets/icons/check.svg?react';
12
+ import ChevronDownIcon from '../assets/icons/chevron-down.svg?react';
13
+ import CopyIcon from '../assets/icons/copy.svg?react';
14
+ import DownIcon from '../assets/icons/down.svg?react';
15
+ import EllipsisIcon from '../assets/icons/ellipsis.svg?react';
16
+ import FilterFullIcon from '../assets/icons/filter-full.svg?react';
17
+ import FilterIcon from '../assets/icons/filter.svg?react';
18
+ import FilterSlashIcon from '../assets/icons/filter-slash.svg?react';
19
+ import HashtagIcon from '../assets/icons/hashtag.svg?react';
20
+ import ImageSlashIcon from '../assets/icons/image-slash.svg?react';
21
+ import LeftIcon from '../assets/icons/left.svg?react';
22
+ import MagnifierIcon from '../assets/icons/magnifier.svg?react';
23
+ import PhoneIcon from '../assets/icons/phone.svg?react';
24
+ import PlusIcon from '../assets/icons/plus.svg?react';
25
+ import RightIcon from '../assets/icons/right.svg?react';
26
+ import SigmaIcon from '../assets/icons/sigma.svg?react';
27
+ import SortCalendarAscendingIcon from '../assets/icons/sort-calendar-ascending.svg?react';
28
+ import SortCalendarDescendingIcon from '../assets/icons/sort-calendar-descending.svg?react';
29
+ import SpinnerIcon from '../assets/icons/spinner-third.svg?react';
30
+ import TableColumnsIcon from '../assets/icons/table-columns.svg?react';
31
+ import TableFooterIcon from '../assets/icons/table-footer.svg?react';
32
+ import TableFooterSlashIcon from '../assets/icons/table-footer-slash.svg?react';
33
+ import TableIcon from '../assets/icons/table.svg?react';
34
+ import TallyIcon from '../assets/icons/tally.svg?react';
35
+ import UpIcon from '../assets/icons/up.svg?react';
36
+ import UserTieIcon from '../assets/icons/user-tie.svg?react';
37
+ import XBarIcon from '../assets/icons/x-bar.svg?react';
38
+
39
+ type IconFCProps = SVGProps<SVGSVGElement>;
40
+ export type IconFC = FC<IconFCProps>;
41
+
42
+ type AnimatedIconProps = {
43
+ icons: FC[];
44
+ speed?: number;
45
+ };
46
+
47
+ export const AnimatedIcon: FC<AnimatedIconProps & IconFCProps> = ({
48
+ icons,
49
+ speed = 150,
50
+ ...props
51
+ }) => {
52
+ const [currentIcon, setCurrentIcon] = useState(0);
53
+
54
+ useEffect(() => {
55
+ const interval = setInterval(() => {
56
+ setCurrentIcon((currentIcon) => (currentIcon + 1) % icons.length);
57
+ }, speed);
58
+
59
+ return () => {
60
+ clearInterval(interval);
61
+ };
62
+ }, [icons.length, speed]);
63
+
64
+ const Icon = icons[currentIcon];
65
+ return <Icon {...props} />;
66
+ };
67
+
68
+ export const LoadingIcon: FC<IconFCProps> = ({ className, ...props }) => (
69
+ <SpinnerIcon className={`animate-spin ${className}`} {...props} />
70
+ );
71
+
72
+ export {
73
+ ArrowDownAZIcon,
74
+ ArrowDown19Icon,
75
+ ArrowDownBigSmallIcon,
76
+ ArrowUpZAIcon,
77
+ ArrowUpBigSmallIcon,
78
+ ArrowUp91Icon,
79
+ ArrowsRotateIcon,
80
+ ArrowsUpDownIcon,
81
+ CheckIcon,
82
+ ChevronDownIcon,
83
+ CopyIcon,
84
+ DownIcon,
85
+ EllipsisIcon,
86
+ FilterFullIcon,
87
+ FilterIcon,
88
+ FilterSlashIcon,
89
+ HashtagIcon,
90
+ ImageSlashIcon,
91
+ LeftIcon,
92
+ MagnifierIcon,
93
+ PhoneIcon,
94
+ PlusIcon,
95
+ RightIcon,
96
+ SigmaIcon,
97
+ SortCalendarAscendingIcon,
98
+ SortCalendarDescendingIcon,
99
+ SpinnerIcon,
100
+ TableColumnsIcon,
101
+ TableFooterIcon,
102
+ TableFooterSlashIcon,
103
+ TableIcon,
104
+ TallyIcon,
105
+ UpIcon,
106
+ UserTieIcon,
107
+ XBarIcon,
108
+ };
@@ -1,93 +1,93 @@
1
- /* eslint-disable @typescript-eslint/no-explicit-any */
2
-
3
- import {
4
- AdvancedRequestDTO,
5
- ConditionDTO,
6
- FieldDTO,
7
- OrderByDTO,
8
- } from '../../../../services/advancedRequests';
9
- import {
10
- AdvancedRequestDataGridColumns,
11
- AdvancedRequestDataGridFilters,
12
- } from '../types';
13
-
14
- import _ from 'lodash';
15
-
16
- export const getAdvancedRequestDto = <R>({
17
- type,
18
- columns,
19
- conditions = [],
20
- orderBy = [],
21
- start = 0,
22
- length = 100,
23
- getTotal = false,
24
- idField = { fieldName: 'Id' },
25
- }: {
26
- type: string;
27
- columns: AdvancedRequestDataGridColumns<R>;
28
- conditions?: ConditionDTO[];
29
- orderBy?: OrderByDTO[];
30
- start?: number;
31
- length?: number;
32
- getTotal?: boolean;
33
- idField?: FieldDTO | null;
34
- }): AdvancedRequestDTO => ({
35
- fields: [
36
- ...(idField === null ? [] : [idField]),
37
- ...Object.keys(columns).map((key) =>
38
- columns[key].field
39
- ? {
40
- ...columns[key].field,
41
- fieldName: columns[key].field?.fieldName ?? key,
42
- fieldAlias: key,
43
- }
44
- : {
45
- fieldName: key,
46
- fieldAlias: key,
47
- }
48
- ),
49
- ],
50
- conditions,
51
- orderBy,
52
- type,
53
- start,
54
- length,
55
- getTotal,
56
- });
57
-
58
- export const convertFiltersToConditions = <R>(
59
- filters: AdvancedRequestDataGridFilters,
60
- columns: AdvancedRequestDataGridColumns<R>
61
- ): Record<string, ConditionDTO> =>
62
- _.mapValues(filters, (filter, columnKey) => ({
63
- field:
64
- columns[columnKey].filterField ??
65
- columns[columnKey].field?.fieldAlias ??
66
- columns[columnKey].field?.fieldName ??
67
- columnKey,
68
- operator: filter.operator as any,
69
- value: ['inArray', 'inRange'].includes(filter.operator)
70
- ? filter.values
71
- : _.castArray<string | number | null>(filter.values)[0],
72
- }));
73
-
74
- export const parseJsonObjectFields = <R>(
75
- rows: any[],
76
- columns: AdvancedRequestDataGridColumns<R>,
77
- parser?: (row: any) => R
78
- ): R[] => {
79
- const jsonColumns = Object.keys(columns).filter(
80
- (key) => columns[key].field?.operator === 'jsonObject'
81
- );
82
- const parsedRows =
83
- jsonColumns.length === 0
84
- ? rows
85
- : rows.map((row) => {
86
- const parsedRow = { ...row };
87
- jsonColumns.forEach((key) => {
88
- parsedRow[key] = JSON.parse(parsedRow[key] ?? '{}');
89
- });
90
- return parsedRow;
91
- });
92
- return parser ? parsedRows.map(parser) : parsedRows;
93
- };
1
+ /* eslint-disable @typescript-eslint/no-explicit-any */
2
+
3
+ import {
4
+ AdvancedRequestDTO,
5
+ ConditionDTO,
6
+ FieldDTO,
7
+ OrderByDTO,
8
+ } from '../../../../services/advancedRequests';
9
+ import {
10
+ AdvancedRequestDataGridColumns,
11
+ AdvancedRequestDataGridFilters,
12
+ } from '../types';
13
+
14
+ import _ from 'lodash';
15
+
16
+ export const getAdvancedRequestDto = <R>({
17
+ type,
18
+ columns,
19
+ conditions = [],
20
+ orderBy = [],
21
+ start = 0,
22
+ length = 100,
23
+ getTotal = false,
24
+ idField = { fieldName: 'Id' },
25
+ }: {
26
+ type: string;
27
+ columns: AdvancedRequestDataGridColumns<R>;
28
+ conditions?: ConditionDTO[];
29
+ orderBy?: OrderByDTO[];
30
+ start?: number;
31
+ length?: number;
32
+ getTotal?: boolean;
33
+ idField?: FieldDTO | null;
34
+ }): AdvancedRequestDTO => ({
35
+ fields: [
36
+ ...(idField === null ? [] : [idField]),
37
+ ...Object.keys(columns).map((key) =>
38
+ columns[key].field
39
+ ? {
40
+ ...columns[key].field,
41
+ fieldName: columns[key].field?.fieldName ?? key,
42
+ fieldAlias: key,
43
+ }
44
+ : {
45
+ fieldName: key,
46
+ fieldAlias: key,
47
+ }
48
+ ),
49
+ ],
50
+ conditions,
51
+ orderBy,
52
+ type,
53
+ start,
54
+ length,
55
+ getTotal,
56
+ });
57
+
58
+ export const convertFiltersToConditions = <R>(
59
+ filters: AdvancedRequestDataGridFilters,
60
+ columns: AdvancedRequestDataGridColumns<R>
61
+ ): Record<string, ConditionDTO> =>
62
+ _.mapValues(filters, (filter, columnKey) => ({
63
+ field:
64
+ columns[columnKey].filterField ??
65
+ columns[columnKey].field?.fieldAlias ??
66
+ columns[columnKey].field?.fieldName ??
67
+ columnKey,
68
+ operator: filter.operator as any,
69
+ value: ['inArray', 'inRange'].includes(filter.operator)
70
+ ? filter.values
71
+ : _.castArray<string | number | null>(filter.values)[0],
72
+ }));
73
+
74
+ export const parseJsonObjectFields = <R>(
75
+ rows: any[],
76
+ columns: AdvancedRequestDataGridColumns<R>,
77
+ parser?: (row: any) => R
78
+ ): R[] => {
79
+ const jsonColumns = Object.keys(columns).filter(
80
+ (key) => columns[key].field?.operator === 'jsonObject'
81
+ );
82
+ const parsedRows =
83
+ jsonColumns.length === 0
84
+ ? rows
85
+ : rows.map((row) => {
86
+ const parsedRow = { ...row };
87
+ jsonColumns.forEach((key) => {
88
+ parsedRow[key] = JSON.parse(parsedRow[key] ?? '{}');
89
+ });
90
+ return parsedRow;
91
+ });
92
+ return parser ? parsedRows.map(parser) : parsedRows;
93
+ };