@addev-be/ui 0.19.2 → 0.19.4

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 (408) 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/bars.svg +1 -0
  5. package/assets/icons/check.svg +1 -1
  6. package/assets/icons/circle-check.svg +1 -1
  7. package/assets/icons/down.svg +1 -1
  8. package/assets/icons/filter-full.svg +1 -1
  9. package/assets/icons/filter.svg +1 -1
  10. package/assets/icons/hashtag.svg +1 -1
  11. package/assets/icons/image-slash.svg +1 -1
  12. package/assets/icons/left.svg +1 -1
  13. package/assets/icons/magnifier.svg +1 -1
  14. package/assets/icons/phone.svg +1 -1
  15. package/assets/icons/right.svg +1 -1
  16. package/assets/icons/sort-calendar-ascending.svg +5 -5
  17. package/assets/icons/spinner-third.svg +1 -1
  18. package/assets/icons/table-columns.svg +1 -1
  19. package/assets/icons/table-footer-slash.svg +4 -4
  20. package/assets/icons/table-footer.svg +3 -3
  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/Icons.d.ts +9 -1
  25. package/dist/Icons.js +17 -1
  26. package/dist/components/auth/LoginForm.js +1 -1
  27. package/dist/components/auth/PasswordRecoveryForm.js +1 -1
  28. package/dist/components/auth/PasswordResetForm.js +1 -1
  29. package/dist/components/data/AdvancedRequestDataGrid/helpers/advancedRequests.js +9 -8
  30. package/dist/components/data/AdvancedRequestDataGrid/helpers/columns.js +21 -72
  31. package/dist/components/data/AdvancedRequestDataGrid/index.js +2 -2
  32. package/dist/components/data/AdvancedRequestDataGrid/types.d.ts +1 -1
  33. package/dist/components/data/DataGrid/AdvancedRequestDataGrid.d.ts +10 -0
  34. package/dist/components/data/DataGrid/AdvancedRequestDataGrid.js +173 -0
  35. package/dist/components/data/DataGrid/DataGridCell.js +5 -5
  36. package/dist/components/data/DataGrid/DataGridColumnsModal/helpers.d.ts +2 -2
  37. package/dist/components/data/DataGrid/DataGridColumnsModal/helpers.js +1 -7
  38. package/dist/components/data/DataGrid/DataGridColumnsModal/hooks.js +3 -3
  39. package/dist/components/data/DataGrid/DataGridColumnsModal/index.js +16 -21
  40. package/dist/components/data/DataGrid/DataGridEditableCell/CheckboxEditableCell.d.ts +2 -0
  41. package/dist/components/data/DataGrid/DataGridEditableCell/CheckboxEditableCell.js +23 -0
  42. package/dist/components/data/DataGrid/DataGridEditableCell/DateEditableCell.d.ts +2 -0
  43. package/dist/components/data/DataGrid/DataGridEditableCell/DateEditableCell.js +27 -0
  44. package/dist/components/data/DataGrid/DataGridEditableCell/NumberEditableCell.d.ts +5 -0
  45. package/dist/components/data/DataGrid/DataGridEditableCell/NumberEditableCell.js +32 -0
  46. package/dist/components/data/DataGrid/DataGridEditableCell/TextEditableCell.d.ts +2 -0
  47. package/dist/components/data/DataGrid/DataGridEditableCell/TextEditableCell.js +23 -0
  48. package/dist/components/data/DataGrid/DataGridEditableCell/index.d.ts +2 -0
  49. package/dist/components/data/DataGrid/DataGridEditableCell/index.js +91 -0
  50. package/dist/components/data/DataGrid/DataGridEditableCell/styles.d.ts +3 -0
  51. package/dist/components/data/DataGrid/DataGridEditableCell/styles.js +17 -0
  52. package/dist/components/data/DataGrid/DataGridEditableCell/types.d.ts +11 -0
  53. package/dist/components/data/DataGrid/DataGridEditableCell/types.js +3 -0
  54. package/dist/components/data/DataGrid/DataGridFilterMenu/FilterValuesScroller.js +17 -1
  55. package/dist/components/data/DataGrid/DataGridFilterMenu/hooks.d.ts +4 -3
  56. package/dist/components/data/DataGrid/DataGridFilterMenu/hooks.js +11 -12
  57. package/dist/components/data/DataGrid/DataGridFilterMenu/index.d.ts +5 -4
  58. package/dist/components/data/DataGrid/DataGridFilterMenu/index.js +44 -40
  59. package/dist/components/data/DataGrid/DataGridFilterMenu/styles.js +1 -1
  60. package/dist/components/data/DataGrid/DataGridFooter.js +5 -5
  61. package/dist/components/data/DataGrid/DataGridHeader.js +40 -6
  62. package/dist/components/data/DataGrid/DataGridHeaderCell.d.ts +1 -1
  63. package/dist/components/data/DataGrid/DataGridHeaderCell.js +11 -23
  64. package/dist/components/data/DataGrid/DataGridRowTemplate.d.ts +1 -1
  65. package/dist/components/data/DataGrid/DataGridRowTemplate.js +8 -9
  66. package/dist/components/data/DataGrid/FilterModalContent/index.js +1 -1
  67. package/dist/components/data/DataGrid/FilterValuesScroller.d.ts +13 -0
  68. package/dist/components/data/DataGrid/FilterValuesScroller.js +73 -0
  69. package/dist/components/data/DataGrid/VirtualScroller.d.ts +11 -0
  70. package/dist/components/data/DataGrid/VirtualScroller.js +41 -0
  71. package/dist/components/data/DataGrid/constants.d.ts +6 -0
  72. package/dist/components/data/DataGrid/constants.js +9 -0
  73. package/dist/components/data/DataGrid/helpers/advancedRequests.d.ts +12 -0
  74. package/dist/components/data/DataGrid/helpers/advancedRequests.js +53 -0
  75. package/dist/components/data/DataGrid/helpers/columns.d.ts +13 -12
  76. package/dist/components/data/DataGrid/helpers/columns.js +100 -130
  77. package/dist/components/data/DataGrid/helpers.d.ts +28 -0
  78. package/dist/components/data/DataGrid/helpers.js +436 -0
  79. package/dist/components/data/DataGrid/hooks/index.d.ts +3 -3
  80. package/dist/components/data/DataGrid/hooks/index.js +8 -12
  81. package/dist/components/data/DataGrid/hooks/useDataGrid.js +71 -23
  82. package/dist/components/data/DataGrid/hooks/useDataGridChangedRows.d.ts +9 -0
  83. package/dist/components/data/DataGrid/hooks/useDataGridChangedRows.js +71 -0
  84. package/dist/components/data/DataGrid/hooks/useDataGridCopy.js +25 -30
  85. package/dist/components/data/DataGrid/index.js +16 -3
  86. package/dist/components/data/DataGrid/styles.d.ts +13 -8
  87. package/dist/components/data/DataGrid/styles.js +58 -30
  88. package/dist/components/data/DataGrid/types.d.ts +81 -15
  89. package/dist/components/data/SmartQueryDataGrid/helpers/columns.d.ts +20 -0
  90. package/dist/components/data/SmartQueryDataGrid/helpers/columns.js +160 -0
  91. package/dist/components/data/SmartQueryDataGrid/helpers/hooks.d.ts +5 -0
  92. package/dist/components/data/SmartQueryDataGrid/helpers/hooks.js +41 -0
  93. package/dist/components/data/SmartQueryDataGrid/helpers/index.d.ts +2 -0
  94. package/dist/components/data/SmartQueryDataGrid/helpers/index.js +18 -0
  95. package/dist/components/data/SmartQueryDataGrid/helpers/smartQueries.d.ts +3 -0
  96. package/dist/components/data/SmartQueryDataGrid/helpers/smartQueries.js +15 -0
  97. package/dist/components/data/SmartQueryDataGrid/hooks.d.ts +9 -0
  98. package/dist/components/data/SmartQueryDataGrid/hooks.js +63 -0
  99. package/dist/components/data/SmartQueryDataGrid/index.d.ts +12 -0
  100. package/dist/components/data/SmartQueryDataGrid/index.js +242 -0
  101. package/dist/components/data/SmartQueryDataGrid/types.d.ts +22 -0
  102. package/dist/components/data/SmartQueryDataGrid/types.js +2 -0
  103. package/dist/components/data/SqlRequestDataGrid/SqlRequestForeignListEditableCell.d.ts +2 -0
  104. package/dist/components/data/SqlRequestDataGrid/SqlRequestForeignListEditableCell.js +19 -0
  105. package/dist/components/data/SqlRequestDataGrid/helpers/columns.d.ts +16 -17
  106. package/dist/components/data/SqlRequestDataGrid/helpers/columns.js +236 -84
  107. package/dist/components/data/SqlRequestDataGrid/index.js +77 -63
  108. package/dist/components/data/SqlRequestDataGrid/styles.d.ts +2 -0
  109. package/dist/components/data/SqlRequestDataGrid/styles.js +14 -0
  110. package/dist/components/data/SqlRequestDataGrid/types.d.ts +13 -3
  111. package/dist/components/data/SqlRequestDataGrid/types.js +1 -0
  112. package/dist/components/data/SqlRequestForeignList/index.d.ts +4 -0
  113. package/dist/components/data/SqlRequestForeignList/index.js +131 -0
  114. package/dist/components/data/SqlRequestForeignList/styles.d.ts +9 -0
  115. package/dist/components/data/SqlRequestForeignList/styles.js +22 -0
  116. package/dist/components/data/SqlRequestForeignList/types.d.ts +22 -0
  117. package/dist/components/data/SqlRequestForeignList/types.js +3 -0
  118. package/dist/components/data/SqlRequestGrid/filters/FiltersSidebar.d.ts +10 -0
  119. package/dist/components/data/SqlRequestGrid/filters/FiltersSidebar.js +51 -0
  120. package/dist/components/data/SqlRequestGrid/filters/styles.d.ts +4 -0
  121. package/dist/components/data/SqlRequestGrid/filters/styles.js +17 -0
  122. package/dist/components/data/SqlRequestGrid/index.d.ts +1 -1
  123. package/dist/components/data/SqlRequestGrid/index.js +139 -49
  124. package/dist/components/data/SqlRequestGrid/styles.d.ts +0 -12
  125. package/dist/components/data/SqlRequestGrid/styles.js +4 -20
  126. package/dist/components/data/SqlRequestGrid/types.d.ts +14 -4
  127. package/dist/components/data/VirtualScroller/index.d.ts +4 -3
  128. package/dist/components/data/VirtualScroller/index.js +15 -5
  129. package/dist/components/data/VirtualScroller/styles.d.ts +4 -2
  130. package/dist/components/data/VirtualScroller/styles.js +9 -6
  131. package/dist/components/data/index.d.ts +1 -2
  132. package/dist/components/data/index.js +1 -2
  133. package/dist/components/forms/AutoTextArea.d.ts +10 -0
  134. package/dist/components/forms/AutoTextArea.js +40 -0
  135. package/dist/components/forms/Button.d.ts +9 -2
  136. package/dist/components/forms/Button.js +13 -7
  137. package/dist/components/forms/Form/Checkbox.d.ts +3 -0
  138. package/dist/components/forms/Form/Checkbox.js +33 -0
  139. package/dist/components/forms/Form/FormGroup.d.ts +9 -0
  140. package/dist/components/forms/Form/FormGroup.js +10 -0
  141. package/dist/components/forms/Form/Input.d.ts +3 -0
  142. package/dist/components/forms/Form/Input.js +32 -0
  143. package/dist/components/forms/Form/InputWithLabel.d.ts +2 -0
  144. package/dist/components/forms/Form/InputWithLabel.js +10 -0
  145. package/dist/components/forms/Form/Select.d.ts +17 -0
  146. package/dist/components/forms/Form/Select.js +46 -0
  147. package/dist/components/forms/Form/TextArea.d.ts +4 -0
  148. package/dist/components/forms/Form/TextArea.js +33 -0
  149. package/dist/components/forms/Form/index.d.ts +66 -0
  150. package/dist/components/forms/Form/index.js +24 -0
  151. package/dist/components/forms/Form/styles.d.ts +14 -0
  152. package/dist/components/forms/Form/styles.js +47 -0
  153. package/dist/components/forms/Form/types.d.ts +7 -0
  154. package/dist/components/forms/Form/types.js +2 -0
  155. package/dist/components/forms/IconButton.d.ts +2 -1
  156. package/dist/components/forms/IconButton.js +12 -12
  157. package/dist/components/forms/Select.d.ts +5 -6
  158. package/dist/components/forms/Select.js +2 -5
  159. package/dist/components/forms/index.d.ts +3 -0
  160. package/dist/components/forms/index.js +3 -0
  161. package/dist/components/layout/Columns.d.ts +5 -0
  162. package/dist/components/layout/Columns.js +19 -0
  163. package/dist/components/layout/Dropdown/index.d.ts +1 -0
  164. package/dist/components/layout/Dropdown/index.js +24 -3
  165. package/dist/components/layout/Grid/index.d.ts +6 -0
  166. package/dist/components/layout/Grid/index.js +6 -0
  167. package/dist/components/layout/Grid/styles.d.ts +14 -0
  168. package/dist/components/layout/Grid/styles.js +29 -0
  169. package/dist/components/layout/Masonry/index.d.ts +3 -0
  170. package/dist/components/layout/Masonry/index.js +20 -0
  171. package/dist/components/layout/Masonry/styles.d.ts +5 -0
  172. package/dist/components/layout/Masonry/styles.js +17 -0
  173. package/dist/components/layout/index.d.ts +4 -1
  174. package/dist/components/layout/index.js +4 -1
  175. package/dist/components/search/QuickSearchBar.js +6 -0
  176. package/dist/components/ui/Avatar/index.d.ts +10 -0
  177. package/dist/components/ui/Avatar/index.js +52 -0
  178. package/dist/components/ui/Avatar/styles.d.ts +4 -0
  179. package/dist/components/ui/Avatar/styles.js +43 -0
  180. package/dist/components/ui/Card/styles.js +1 -1
  181. package/dist/components/ui/Ellipsis.d.ts +13 -0
  182. package/dist/components/ui/Ellipsis.js +28 -0
  183. package/dist/components/ui/Label.d.ts +9 -0
  184. package/dist/components/ui/Label.js +74 -0
  185. package/dist/components/ui/index.d.ts +3 -0
  186. package/dist/components/ui/index.js +3 -0
  187. package/dist/config/types.d.ts +11 -0
  188. package/dist/config/types.js +2 -0
  189. package/dist/helpers/index.d.ts +1 -0
  190. package/dist/helpers/index.js +1 -0
  191. package/dist/helpers/numbers.d.ts +3 -0
  192. package/dist/helpers/numbers.js +33 -1
  193. package/dist/helpers/responsive.d.ts +37 -0
  194. package/dist/helpers/responsive.js +57 -0
  195. package/dist/hooks/index.d.ts +4 -0
  196. package/dist/hooks/index.js +4 -0
  197. package/dist/hooks/useContainerMediaQuery.d.ts +17 -0
  198. package/dist/hooks/useContainerMediaQuery.js +10 -0
  199. package/dist/hooks/useMediaQuery.d.ts +17 -0
  200. package/dist/hooks/useMediaQuery.js +11 -0
  201. package/dist/hooks/useMediaQueryForWidth.d.ts +17 -0
  202. package/dist/hooks/useMediaQueryForWidth.js +26 -0
  203. package/dist/hooks/useShowArchived.d.ts +6 -0
  204. package/dist/hooks/useShowArchived.js +21 -0
  205. package/dist/index.d.ts +1 -0
  206. package/dist/index.js +1 -0
  207. package/dist/providers/AuthenticationProvider/index.js +4 -3
  208. package/dist/providers/PortalsProvider/styles.js +1 -1
  209. package/dist/providers/ThemeProvider/defaultTheme.js +13 -0
  210. package/dist/providers/ThemeProvider/helpers.d.ts +3 -0
  211. package/dist/providers/ThemeProvider/helpers.js +13 -0
  212. package/dist/providers/ThemeProvider/types.d.ts +2 -1
  213. package/dist/providers/TrackingProvider/hooks.d.ts +1 -0
  214. package/dist/providers/TrackingProvider/hooks.js +15 -0
  215. package/dist/providers/TrackingProvider/index.d.ts +8 -0
  216. package/dist/providers/TrackingProvider/index.js +41 -0
  217. package/dist/providers/UiProviders/index.js +2 -1
  218. package/dist/providers/index.d.ts +2 -0
  219. package/dist/providers/index.js +2 -0
  220. package/dist/services/globalSearch.d.ts +2 -1
  221. package/dist/services/index.d.ts +7 -0
  222. package/dist/services/index.js +20 -0
  223. package/dist/services/requests/generic.d.ts +29 -0
  224. package/dist/services/requests/generic.js +29 -0
  225. package/dist/services/requests/tracking.d.ts +18 -0
  226. package/dist/services/requests/tracking.js +8 -0
  227. package/dist/services/requests/userPermissions.d.ts +4 -0
  228. package/dist/services/requests/userPermissions.js +20 -0
  229. package/dist/services/smartQueries.d.ts +51 -0
  230. package/dist/services/smartQueries.js +10 -0
  231. package/dist/services/smartRequests.d.ts +0 -0
  232. package/dist/services/smartRequests.js +1 -0
  233. package/dist/services/types/generic.d.ts +44 -0
  234. package/dist/services/types/generic.js +79 -0
  235. package/dist/services/types/tracking.d.ts +24 -0
  236. package/dist/services/types/tracking.js +47 -0
  237. package/dist/services/updateSqlRequests.d.ts +24 -0
  238. package/dist/services/updateSqlRequests.js +7 -0
  239. package/package.json +2 -2
  240. package/src/Icons.tsx +138 -136
  241. package/src/components/auth/LoginForm.tsx +84 -84
  242. package/src/components/auth/LoginPage.tsx +32 -32
  243. package/src/components/auth/PasswordRecoveryForm.tsx +52 -52
  244. package/src/components/auth/PasswordResetForm.tsx +112 -112
  245. package/src/components/auth/index.ts +4 -4
  246. package/src/components/auth/styles.ts +14 -14
  247. package/src/components/data/DataGrid/DataGridCell.tsx +77 -77
  248. package/src/components/data/DataGrid/DataGridColumnsModal/helpers.ts +9 -9
  249. package/src/components/data/DataGrid/DataGridColumnsModal/hooks.tsx +59 -59
  250. package/src/components/data/DataGrid/DataGridColumnsModal/index.tsx +182 -182
  251. package/src/components/data/DataGrid/DataGridColumnsModal/styles.ts +104 -104
  252. package/src/components/data/DataGrid/DataGridEditableCell/CheckboxEditableCell.tsx +38 -38
  253. package/src/components/data/DataGrid/DataGridEditableCell/DateEditableCell.tsx +39 -39
  254. package/src/components/data/DataGrid/DataGridEditableCell/NumberEditableCell.tsx +68 -68
  255. package/src/components/data/DataGrid/DataGridEditableCell/TextEditableCell.tsx +38 -38
  256. package/src/components/data/DataGrid/DataGridEditableCell/index.tsx +106 -106
  257. package/src/components/data/DataGrid/DataGridEditableCell/styles.ts +35 -35
  258. package/src/components/data/DataGrid/DataGridEditableCell/types.ts +19 -19
  259. package/src/components/data/DataGrid/DataGridFilterMenu/FilterValuesScroller.tsx +131 -131
  260. package/src/components/data/DataGrid/DataGridFilterMenu/hooks.tsx +81 -81
  261. package/src/components/data/DataGrid/DataGridFilterMenu/index.tsx +376 -376
  262. package/src/components/data/DataGrid/DataGridFilterMenu/styles.ts +97 -97
  263. package/src/components/data/DataGrid/DataGridFooter.tsx +45 -45
  264. package/src/components/data/DataGrid/DataGridHeader.tsx +185 -185
  265. package/src/components/data/DataGrid/DataGridHeaderCell.tsx +111 -111
  266. package/src/components/data/DataGrid/DataGridRowTemplate.tsx +82 -82
  267. package/src/components/data/DataGrid/FilterModalContent/index.tsx +136 -136
  268. package/src/components/data/DataGrid/FilterModalContent/styles.ts +22 -22
  269. package/src/components/data/DataGrid/constants.ts +6 -6
  270. package/src/components/data/DataGrid/helpers/columns.tsx +386 -386
  271. package/src/components/data/DataGrid/helpers/filters.ts +287 -287
  272. package/src/components/data/DataGrid/helpers/index.ts +2 -2
  273. package/src/components/data/DataGrid/hooks/index.ts +29 -29
  274. package/src/components/data/DataGrid/hooks/useDataGrid.tsx +381 -381
  275. package/src/components/data/DataGrid/hooks/useDataGridChangedRows.ts +97 -97
  276. package/src/components/data/DataGrid/hooks/useDataGridCopy.ts +174 -174
  277. package/src/components/data/DataGrid/hooks/useDataGridSettings.ts +48 -48
  278. package/src/components/data/DataGrid/hooks/useRefreshModal.tsx +48 -48
  279. package/src/components/data/DataGrid/index.tsx +112 -112
  280. package/src/components/data/DataGrid/styles.ts +380 -380
  281. package/src/components/data/DataGrid/types.ts +369 -369
  282. package/src/components/data/SqlRequestDataGrid/SqlRequestForeignListEditableCell.tsx +16 -16
  283. package/src/components/data/SqlRequestDataGrid/helpers/columns.tsx +481 -481
  284. package/src/components/data/SqlRequestDataGrid/helpers/index.ts +2 -2
  285. package/src/components/data/SqlRequestDataGrid/helpers/sqlRequests.ts +16 -16
  286. package/src/components/data/SqlRequestDataGrid/index.tsx +414 -414
  287. package/src/components/data/SqlRequestDataGrid/styles.ts +15 -15
  288. package/src/components/data/SqlRequestDataGrid/types.ts +74 -74
  289. package/src/components/data/SqlRequestForeignList/index.tsx +259 -259
  290. package/src/components/data/SqlRequestForeignList/styles.ts +43 -43
  291. package/src/components/data/SqlRequestForeignList/types.ts +34 -34
  292. package/src/components/data/SqlRequestGrid/filters/FiltersSidebar.tsx +110 -110
  293. package/src/components/data/SqlRequestGrid/filters/styles.ts +88 -88
  294. package/src/components/data/SqlRequestGrid/helpers/index.ts +1 -1
  295. package/src/components/data/SqlRequestGrid/helpers/sqlRequests.ts +16 -16
  296. package/src/components/data/SqlRequestGrid/index.tsx +316 -316
  297. package/src/components/data/SqlRequestGrid/styles.ts +20 -20
  298. package/src/components/data/SqlRequestGrid/types.ts +75 -75
  299. package/src/components/data/VirtualScroller/hooks.ts +71 -71
  300. package/src/components/data/VirtualScroller/index.tsx +91 -91
  301. package/src/components/data/VirtualScroller/styles.ts +58 -58
  302. package/src/components/data/VirtualScroller/types.ts +12 -12
  303. package/src/components/data/index.ts +16 -16
  304. package/src/components/forms/AutoTextArea.tsx +48 -41
  305. package/src/components/forms/Button.tsx +132 -133
  306. package/src/components/forms/Form/Checkbox.tsx +12 -12
  307. package/src/components/forms/Form/FormGroup.tsx +31 -31
  308. package/src/components/forms/Form/Input.tsx +16 -16
  309. package/src/components/forms/Form/Row.tsx +32 -32
  310. package/src/components/forms/Form/Select.tsx +87 -87
  311. package/src/components/forms/Form/TextArea.tsx +17 -17
  312. package/src/components/forms/Form/index.tsx +45 -45
  313. package/src/components/forms/Form/styles.ts +184 -184
  314. package/src/components/forms/IconButton.tsx +57 -57
  315. package/src/components/forms/IndeterminateCheckbox.tsx +46 -46
  316. package/src/components/forms/NumberInput.tsx +4 -4
  317. package/src/components/forms/Select.tsx +35 -35
  318. package/src/components/forms/VerticalLabel.tsx +20 -20
  319. package/src/components/forms/index.ts +9 -9
  320. package/src/components/forms/styles.ts +41 -29
  321. package/src/components/index.ts +6 -6
  322. package/src/components/layout/Columns.ts +28 -28
  323. package/src/components/layout/Dropdown/index.tsx +113 -113
  324. package/src/components/layout/Dropdown/styles.ts +45 -45
  325. package/src/components/layout/Flexbox.ts +21 -0
  326. package/src/components/layout/Grid/index.tsx +8 -8
  327. package/src/components/layout/Grid/styles.ts +34 -34
  328. package/src/components/layout/Loading/index.tsx +29 -29
  329. package/src/components/layout/Loading/styles.ts +29 -29
  330. package/src/components/layout/Masonry/index.tsx +29 -29
  331. package/src/components/layout/Masonry/styles.ts +20 -20
  332. package/src/components/layout/Modal/index.tsx +51 -51
  333. package/src/components/layout/Modal/styles.ts +125 -125
  334. package/src/components/layout/index.ts +7 -6
  335. package/src/components/search/HighlightedText.tsx +41 -41
  336. package/src/components/search/QuickSearchBar.tsx +100 -100
  337. package/src/components/search/QuickSearchResults.tsx +86 -86
  338. package/src/components/search/index.ts +9 -9
  339. package/src/components/search/styles.ts +96 -96
  340. package/src/components/search/types.ts +29 -29
  341. package/src/components/ui/Avatar/index.tsx +54 -54
  342. package/src/components/ui/Card/index.tsx +14 -14
  343. package/src/components/ui/Card/styles.ts +37 -37
  344. package/src/components/ui/ContextMenu/index.tsx +79 -79
  345. package/src/components/ui/ContextMenu/styles.ts +119 -119
  346. package/src/components/ui/Ellipsis.tsx +34 -34
  347. package/src/components/ui/Label.tsx +90 -90
  348. package/src/components/ui/Message/index.tsx +57 -57
  349. package/src/components/ui/Message/styles.ts +40 -40
  350. package/src/components/ui/index.ts +6 -6
  351. package/src/config/index.ts +14 -14
  352. package/src/helpers/dates.ts +17 -17
  353. package/src/helpers/getScrollbarSize.ts +14 -14
  354. package/src/helpers/index.ts +5 -5
  355. package/src/helpers/numbers.ts +63 -63
  356. package/src/helpers/responsive.ts +83 -83
  357. package/src/helpers/text.ts +13 -13
  358. package/src/hooks/index.ts +7 -7
  359. package/src/hooks/useContainerMediaQuery.ts +7 -7
  360. package/src/hooks/useElementSize.ts +24 -24
  361. package/src/hooks/useMediaQuery.ts +9 -9
  362. package/src/hooks/useMediaQueryForWidth.ts +35 -35
  363. package/src/hooks/useMutableState.ts +19 -19
  364. package/src/hooks/useShowArchived.ts +28 -28
  365. package/src/hooks/useWindowSize.ts +20 -20
  366. package/src/index.ts +9 -9
  367. package/src/providers/AuthenticationProvider/helpers.ts +3 -3
  368. package/src/providers/AuthenticationProvider/index.tsx +303 -303
  369. package/src/providers/LoadingProvider/index.tsx +47 -47
  370. package/src/providers/PortalsProvider/index.tsx +54 -54
  371. package/src/providers/PortalsProvider/styles.ts +31 -31
  372. package/src/providers/SettingsProvider/index.tsx +70 -70
  373. package/src/providers/ThemeProvider/ThemeProvider.ts +63 -63
  374. package/src/providers/ThemeProvider/defaultTheme.ts +457 -457
  375. package/src/providers/ThemeProvider/helpers.ts +69 -11
  376. package/src/providers/ThemeProvider/index.ts +4 -4
  377. package/src/providers/ThemeProvider/types.ts +131 -131
  378. package/src/providers/TrackingProvider/index.tsx +71 -71
  379. package/src/providers/UiProviders/index.tsx +68 -68
  380. package/src/providers/UiProviders/styles.ts +10 -10
  381. package/src/providers/hooks.ts +12 -12
  382. package/src/providers/index.ts +8 -8
  383. package/src/services/HttpService.ts +92 -92
  384. package/src/services/WebSocketService.ts +155 -155
  385. package/src/services/advancedRequests.ts +102 -102
  386. package/src/services/base.ts +23 -23
  387. package/src/services/globalSearch.ts +32 -32
  388. package/src/services/hooks.ts +92 -92
  389. package/src/services/index.ts +21 -21
  390. package/src/services/requests/auth.ts +44 -44
  391. package/src/services/requests/generic.ts +62 -62
  392. package/src/services/requests/tracking.ts +12 -12
  393. package/src/services/requests/userProfiles.ts +35 -35
  394. package/src/services/requests/users.ts +28 -28
  395. package/src/services/smartQueries.ts +122 -122
  396. package/src/services/sqlRequests.ts +111 -111
  397. package/src/services/types/auth.ts +131 -131
  398. package/src/services/types/base.ts +10 -10
  399. package/src/services/types/generic.ts +96 -96
  400. package/src/services/types/tracking.ts +39 -39
  401. package/src/services/types/userProfiles.ts +107 -107
  402. package/src/services/types/users.ts +106 -106
  403. package/src/services/updateSqlRequests.ts +34 -34
  404. package/src/styles/animations.scss +30 -30
  405. package/src/styles/index.scss +42 -42
  406. package/src/typings.d.ts +19 -19
  407. package/tsconfig.json +18 -18
  408. package/tsconfig.tsbuildinfo +1 -1
@@ -27,19 +27,16 @@ var __importStar = (this && this.__importStar) || function (mod) {
27
27
  return result;
28
28
  };
29
29
  Object.defineProperty(exports, "__esModule", { value: true });
30
- exports.ResizeBackdrop = exports.HeaderSelectionCell = exports.SelectionCell = exports.LoadingCell = exports.DataGridRow = exports.DataGridFooterRow = exports.DataGridHeaderRow = exports.DataGridContainer = exports.DataGridToolsRow = exports.DataGridCell = exports.DataGridHeaderCellContainer = exports.DataGridResizeGrip = exports.DEFAULT_ROW_HEIGHT = exports.DEFAULT_FOOTER_ROW_HEIGHT = exports.DEFAULT_HEADER_ROW_HEIGHT = exports.TOOLBAR_HEIGHT = void 0;
30
+ exports.ResizeBackdrop = exports.HeaderSelectionCell = exports.SelectionCell = exports.LoadingCell = exports.DataGridRow = exports.DataGridFooterRow = exports.DataGridHeaderRow = exports.DataGridContainer = exports.DataGridToolsRowButtonsContainer = exports.DataGridToolsRow = exports.DataGridHeaderTitle = exports.DataGridCell = exports.dataGridCellCss = exports.DataGridHeaderTextContainer = exports.DataGridHeaderCellContainer = exports.DataGridResizeGrip = void 0;
31
+ var constants_1 = require("./constants");
31
32
  var styled_components_1 = __importStar(require("styled-components"));
32
33
  var styles_1 = require("../VirtualScroller/styles");
33
- exports.TOOLBAR_HEIGHT = 40;
34
- exports.DEFAULT_HEADER_ROW_HEIGHT = 40;
35
- exports.DEFAULT_FOOTER_ROW_HEIGHT = 40;
36
- exports.DEFAULT_ROW_HEIGHT = 32;
37
34
  exports.DataGridResizeGrip = styled_components_1.default.div(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n position: absolute;\n top: 0;\n right: 0;\n width: var(--space-1);\n height: 100%;\n\n ", "\n\n cursor: col-resize;\n display: none;\n"], ["\n position: absolute;\n top: 0;\n right: 0;\n width: var(--space-1);\n height: 100%;\n\n ", "\n\n cursor: col-resize;\n display: none;\n"])), function (_a) {
38
35
  var $headerColor = _a.$headerColor;
39
36
  return $headerColor
40
37
  ? (0, styled_components_1.css)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n background-color: var(--color-", "-400);\n &:hover,\n &.active {\n background-color: var(--color-", "-500);\n }\n "], ["\n background-color: var(--color-", "-400);\n &:hover,\n &.active {\n background-color: var(--color-", "-500);\n }\n "])), $headerColor, $headerColor) : (0, styled_components_1.css)(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n background-color: var(--color-neutral-400);\n &:hover,\n &.active {\n background-color: var(--color-neutral-500);\n }\n "], ["\n background-color: var(--color-neutral-400);\n &:hover,\n &.active {\n background-color: var(--color-neutral-500);\n }\n "])));
41
38
  });
42
- exports.DataGridHeaderCellContainer = styled_components_1.default.div(templateObject_6 || (templateObject_6 = __makeTemplateObject(["\n position: relative;\n display: flex;\n align-items: center;\n flex-wrap: nowrap;\n gap: var(--space-1);\n padding: 0 0.75rem;\n height: 100%;\n font-weight: var(--font-bold);\n line-height: 1.5rem;\n z-index: ", ";\n\n ", "\n\n &:hover {\n ", " {\n display: block;\n }\n }\n\n & > span {\n display: inline-block;\n text-overflow: ellipsis;\n overflow: hidden;\n white-space: nowrap;\n flex: 1;\n font-weight: bold;\n }\n"], ["\n position: relative;\n display: flex;\n align-items: center;\n flex-wrap: nowrap;\n gap: var(--space-1);\n padding: 0 0.75rem;\n height: 100%;\n font-weight: var(--font-bold);\n line-height: 1.5rem;\n z-index: ", ";\n\n ", "\n\n &:hover {\n ", " {\n display: block;\n }\n }\n\n & > span {\n display: inline-block;\n text-overflow: ellipsis;\n overflow: hidden;\n white-space: nowrap;\n flex: 1;\n font-weight: bold;\n }\n"])), function (_a) {
39
+ exports.DataGridHeaderCellContainer = styled_components_1.default.div(templateObject_6 || (templateObject_6 = __makeTemplateObject(["\n align-items: center;\n display: flex;\n flex-wrap: nowrap;\n font-weight: var(--font-bold);\n gap: var(--space-1);\n height: 100%;\n user-select: none;\n line-height: 1.5rem;\n padding: 0 0.75rem;\n position: relative;\n\n z-index: ", ";\n\n ", "\n\n &:hover {\n ", " {\n display: block;\n }\n }\n\n & > span {\n display: inline-block;\n text-overflow: ellipsis;\n overflow: hidden;\n white-space: nowrap;\n flex: 1;\n font-weight: bold;\n }\n"], ["\n align-items: center;\n display: flex;\n flex-wrap: nowrap;\n font-weight: var(--font-bold);\n gap: var(--space-1);\n height: 100%;\n user-select: none;\n line-height: 1.5rem;\n padding: 0 0.75rem;\n position: relative;\n\n z-index: ", ";\n\n ", "\n\n &:hover {\n ", " {\n display: block;\n }\n }\n\n & > span {\n display: inline-block;\n text-overflow: ellipsis;\n overflow: hidden;\n white-space: nowrap;\n flex: 1;\n font-weight: bold;\n }\n"])), function (_a) {
43
40
  var $isResizing = _a.$isResizing;
44
41
  return ($isResizing ? 1 : 0);
45
42
  }, function (_a) {
@@ -48,34 +45,62 @@ exports.DataGridHeaderCellContainer = styled_components_1.default.div(templateOb
48
45
  ? (0, styled_components_1.css)(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n background-color: var(--color-", "-200);\n color: var(--color-", "-950);\n &:hover {\n background-color: var(--color-", "-300);\n }\n\n & > button {\n background-color: var(--color-", "-400);\n border-color: var(--color-", "-500);\n &:hover {\n background-color: var(--color-", "-500);\n border-color: var(--color-", "-600);\n }\n }\n & > button.danger {\n background-color: var(--color-red-400);\n border-color: var(--color-red-500);\n &:hover {\n background-color: var(--color-red-500);\n border-color: var(--color-red-600);\n }\n }\n "], ["\n background-color: var(--color-", "-200);\n color: var(--color-", "-950);\n &:hover {\n background-color: var(--color-", "-300);\n }\n\n & > button {\n background-color: var(--color-", "-400);\n border-color: var(--color-", "-500);\n &:hover {\n background-color: var(--color-", "-500);\n border-color: var(--color-", "-600);\n }\n }\n & > button.danger {\n background-color: var(--color-red-400);\n border-color: var(--color-red-500);\n &:hover {\n background-color: var(--color-red-500);\n border-color: var(--color-red-600);\n }\n }\n "])), $headerColor, $headerColor, $headerColor, $headerColor, $headerColor, $headerColor, $headerColor) : (0, styled_components_1.css)(templateObject_5 || (templateObject_5 = __makeTemplateObject(["\n background-color: var(--color-neutral-200);\n color: var(--color-neutral-950);\n &:hover {\n background-color: var(--color-neutral-300);\n }\n "], ["\n background-color: var(--color-neutral-200);\n color: var(--color-neutral-950);\n &:hover {\n background-color: var(--color-neutral-300);\n }\n "])));
49
46
  }, exports.DataGridResizeGrip);
50
47
  exports.DataGridHeaderCellContainer.displayName = 'DataGridHeaderCellContainer';
51
- exports.DataGridCell = styled_components_1.default.div(templateObject_7 || (templateObject_7 = __makeTemplateObject(["\n position: relative;\n padding: 0 var(--space-3);\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n border-right: 1px solid var(--color-neutral-200);\n border-bottom: 1px solid var(--color-neutral-200);\n"], ["\n position: relative;\n padding: 0 var(--space-3);\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n border-right: 1px solid var(--color-neutral-200);\n border-bottom: 1px solid var(--color-neutral-200);\n"])));
48
+ exports.DataGridHeaderTextContainer = styled_components_1.default.div(templateObject_7 || (templateObject_7 = __makeTemplateObject(["\n display: flex;\n flex: 1;\n line-height: 1rem;\n align-items: center;\n font-size: var(--text-md);\n max-height: 100%;\n"], ["\n display: flex;\n flex: 1;\n line-height: 1rem;\n align-items: center;\n font-size: var(--text-md);\n max-height: 100%;\n"])));
49
+ exports.dataGridCellCss = (0, styled_components_1.css)(templateObject_8 || (templateObject_8 = __makeTemplateObject(["\n display: flex;\n align-items: center;\n position: relative;\n padding: 0 var(--space-3);\n overflow: hidden;\n text-overflow: ellipsis;\n user-select: ", ";\n white-space: nowrap;\n border-right: 1px solid var(--color-neutral-200);\n border-bottom: 1px solid var(--color-neutral-200);\n background-color: ", ";\n text-align: ", ";\n"], ["\n display: flex;\n align-items: center;\n position: relative;\n padding: 0 var(--space-3);\n overflow: hidden;\n text-overflow: ellipsis;\n user-select: ", ";\n white-space: nowrap;\n border-right: 1px solid var(--color-neutral-200);\n border-bottom: 1px solid var(--color-neutral-200);\n background-color: ", ";\n text-align: ", ";\n"])), function (_a) {
50
+ var $userSelect = _a.$userSelect;
51
+ return ($userSelect ? 'text' : 'none');
52
+ }, function (_a) {
53
+ var _b = _a.$color, $color = _b === void 0 ? 'neutral' : _b;
54
+ return "var(--color-".concat($color, "-50)");
55
+ }, function (_a) {
56
+ var _b = _a.$textAlign, $textAlign = _b === void 0 ? 'left' : _b;
57
+ return $textAlign;
58
+ });
59
+ exports.DataGridCell = styled_components_1.default.div(templateObject_9 || (templateObject_9 = __makeTemplateObject(["\n ", "\n"], ["\n ", "\n"])), exports.dataGridCellCss);
52
60
  exports.DataGridCell.displayName = 'DataGridCell';
53
- exports.DataGridToolsRow = styled_components_1.default.div(templateObject_8 || (templateObject_8 = __makeTemplateObject(["\n grid-column-start: 1;\n grid-column-end: -1;\n grid-row: 1;\n display: flex;\n gap: var(--space-1);\n padding: 0 var(--space-1);\n align-items: center;\n background-color: var(--color-neutral-200);\n position: sticky;\n top: 0;\n left: 0;\n z-index: 10;\n"], ["\n grid-column-start: 1;\n grid-column-end: -1;\n grid-row: 1;\n display: flex;\n gap: var(--space-1);\n padding: 0 var(--space-1);\n align-items: center;\n background-color: var(--color-neutral-200);\n position: sticky;\n top: 0;\n left: 0;\n z-index: 10;\n"])));
54
- exports.DataGridToolsRow.displayName = 'DataGridToolsRow';
55
- exports.DataGridContainer = styled_components_1.default.div(templateObject_9 || (templateObject_9 = __makeTemplateObject(["\n display: grid;\n width: 100%;\n height: 100%;\n background-color: var(--color-neutral-50);\n font-size: var(--text-base);\n overflow: scroll;\n grid-template-rows: ", ";\n\n ", " {\n height: ", "px;\n }\n ", " {\n position: sticky;\n top: ", ";\n height: ", ";\n }\n ", " {\n height: ", ";\n line-height: ", ";\n box-sizing: border-box;\n }\n\n ", " {\n grid-column-start: 1;\n grid-column-end: -1;\n grid-row: 3;\n }\n"], ["\n display: grid;\n width: 100%;\n height: 100%;\n background-color: var(--color-neutral-50);\n font-size: var(--text-base);\n overflow: scroll;\n grid-template-rows: ", ";\n\n ", " {\n height: ", "px;\n }\n ", " {\n position: sticky;\n top: ", ";\n height: ", ";\n }\n ", " {\n height: ", ";\n line-height: ", ";\n box-sizing: border-box;\n }\n\n ", " {\n grid-column-start: 1;\n grid-column-end: -1;\n grid-row: 3;\n }\n"])), function (_a) {
56
- var _b = _a.$headerRowHeight, $headerRowHeight = _b === void 0 ? exports.DEFAULT_HEADER_ROW_HEIGHT : _b, _c = _a.$withFooter, $withFooter = _c === void 0 ? false : _c;
57
- return "".concat(exports.TOOLBAR_HEIGHT, "px ").concat($headerRowHeight, "px auto ").concat($withFooter ? exports.DEFAULT_FOOTER_ROW_HEIGHT + 'px' : '');
58
- }, exports.DataGridToolsRow, exports.TOOLBAR_HEIGHT, exports.DataGridHeaderCellContainer, function (_a) {
59
- var _b = _a.$headerRowHeight, $headerRowHeight = _b === void 0 ? exports.DEFAULT_HEADER_ROW_HEIGHT : _b;
61
+ exports.DataGridHeaderTitle = styled_components_1.default.div(templateObject_10 || (templateObject_10 = __makeTemplateObject(["\n white-space: normal;\n font-weight: var(--font-bold);\n color: var(--color-neutral-900);\n height: auto;\n"], ["\n white-space: normal;\n font-weight: var(--font-bold);\n color: var(--color-neutral-900);\n height: auto;\n"])));
62
+ exports.DataGridToolsRow = styled_components_1.default.div(templateObject_11 || (templateObject_11 = __makeTemplateObject(["\n grid-column-start: 1;\n grid-column-end: -1;\n grid-row: 1;\n display: flex;\n background-color: var(--color-neutral-200);\n position: sticky;\n top: 0;\n z-index: 10;\n"], ["\n grid-column-start: 1;\n grid-column-end: -1;\n grid-row: 1;\n display: flex;\n background-color: var(--color-neutral-200);\n position: sticky;\n top: 0;\n z-index: 10;\n"])));
63
+ exports.DataGridToolsRowButtonsContainer = styled_components_1.default.div(templateObject_12 || (templateObject_12 = __makeTemplateObject(["\n display: inline-flex;\n gap: var(--space-1);\n align-items: center;\n padding: 0 var(--space-1);\n position: sticky;\n left: 0;\n"], ["\n display: inline-flex;\n gap: var(--space-1);\n align-items: center;\n padding: 0 var(--space-1);\n position: sticky;\n left: 0;\n"])));
64
+ exports.DataGridContainer = styled_components_1.default.div(templateObject_13 || (templateObject_13 = __makeTemplateObject(["\n display: grid;\n width: 100%;\n height: 100%;\n background-color: var(--color-neutral-50);\n font-size: var(--text-base);\n overflow: scroll;\n grid-template-rows: ", ";\n\n ", " {\n height: ", "px;\n }\n ", " {\n position: sticky;\n top: ", ";\n height: ", ";\n }\n ", " {\n height: ", ";\n line-height: ", ";\n box-sizing: border-box;\n }\n\n ", "\n\n ", "\n\n ", " {\n grid-column-start: 1;\n grid-column-end: -1;\n grid-row: 3;\n }\n"], ["\n display: grid;\n width: 100%;\n height: 100%;\n background-color: var(--color-neutral-50);\n font-size: var(--text-base);\n overflow: scroll;\n grid-template-rows: ", ";\n\n ", " {\n height: ", "px;\n }\n ", " {\n position: sticky;\n top: ", ";\n height: ", ";\n }\n ", " {\n height: ", ";\n line-height: ", ";\n box-sizing: border-box;\n }\n\n ", "\n\n ", "\n\n ", " {\n grid-column-start: 1;\n grid-column-end: -1;\n grid-row: 3;\n }\n"])), function (_a) {
65
+ var _b = _a.$headerRowHeight, $headerRowHeight = _b === void 0 ? constants_1.DEFAULT_HEADER_ROW_HEIGHT : _b, _c = _a.$withFooter, $withFooter = _c === void 0 ? false : _c;
66
+ return "".concat(constants_1.TOOLBAR_HEIGHT, "px ").concat($headerRowHeight, "px auto ").concat($withFooter ? constants_1.DEFAULT_FOOTER_ROW_HEIGHT + 'px' : '');
67
+ }, exports.DataGridToolsRow, constants_1.TOOLBAR_HEIGHT, exports.DataGridHeaderCellContainer, function (_a) {
68
+ var _b = _a.$headerRowHeight, $headerRowHeight = _b === void 0 ? constants_1.DEFAULT_HEADER_ROW_HEIGHT : _b;
60
69
  return "".concat($headerRowHeight, "px");
61
70
  }, function (_a) {
62
- var _b = _a.$headerRowHeight, $headerRowHeight = _b === void 0 ? exports.DEFAULT_HEADER_ROW_HEIGHT : _b;
71
+ var _b = _a.$headerRowHeight, $headerRowHeight = _b === void 0 ? constants_1.DEFAULT_HEADER_ROW_HEIGHT : _b;
63
72
  return "".concat($headerRowHeight, "px");
64
73
  }, exports.DataGridCell, function (_a) {
65
- var _b = _a.$rowHeight, $rowHeight = _b === void 0 ? exports.DEFAULT_ROW_HEIGHT : _b;
74
+ var _b = _a.$rowHeight, $rowHeight = _b === void 0 ? constants_1.DEFAULT_ROW_HEIGHT : _b;
66
75
  return "".concat($rowHeight, "px");
67
76
  }, function (_a) {
68
- var _b = _a.$rowHeight, $rowHeight = _b === void 0 ? exports.DEFAULT_ROW_HEIGHT : _b;
77
+ var _b = _a.$rowHeight, $rowHeight = _b === void 0 ? constants_1.DEFAULT_ROW_HEIGHT : _b;
69
78
  return "".concat($rowHeight, "px");
70
- }, styles_1.VirtualScrollerContainer);
79
+ }, function (_a) {
80
+ var _b = _a.$fixedColumnWidths, $fixedColumnWidths = _b === void 0 ? [] : _b;
81
+ return $fixedColumnWidths.map(function (width, i) { return "\n ".concat(exports.DataGridHeaderCellContainer, ":nth-child(").concat(i + 1, ") {\n position: sticky;\n left: ").concat(i === 0
82
+ ? '0'
83
+ : "calc(".concat($fixedColumnWidths
84
+ .slice(0, i)
85
+ .map(function (w) { return (typeof w === 'number' ? "".concat(w, "px") : w); })
86
+ .join(' + '), ")"), ";\n background-color: var(--color-neutral-200);\n z-index: 1;\n }"); });
87
+ }, function (_a) {
88
+ var _b = _a.$fixedColumnWidths, $fixedColumnWidths = _b === void 0 ? [] : _b;
89
+ return $fixedColumnWidths.map(function (width, i) { return "\n ".concat(exports.DataGridCell, ":nth-child(").concat(i + 1, ") {\n position: sticky;\n left: ").concat(i === 0
90
+ ? '0'
91
+ : "calc(".concat($fixedColumnWidths
92
+ .slice(0, i)
93
+ .map(function (w) { return (typeof w === 'number' ? "".concat(w, "px") : w); })
94
+ .join(' + '), ")"), ";\n background-color: var(--color-neutral-50);\n z-index: 1;\n }"); });
95
+ }, styles_1.VirtualScrollerFiller);
71
96
  exports.DataGridContainer.displayName = 'DataGridContainer';
72
- var dataGridHeaderOrFooterRowCss = (0, styled_components_1.css)(templateObject_12 || (templateObject_12 = __makeTemplateObject(["\n display: grid;\n grid-template-rows: ", ";\n z-index: 10;\n position: sticky;\n align-items: center;\n\n ", "\n"], ["\n display: grid;\n grid-template-rows: ", ";\n z-index: 10;\n position: sticky;\n align-items: center;\n\n ", "\n"])), function (_a) {
73
- var _b = _a.$headerRowHeight, $headerRowHeight = _b === void 0 ? exports.DEFAULT_HEADER_ROW_HEIGHT : _b;
97
+ var dataGridHeaderOrFooterRowCss = (0, styled_components_1.css)(templateObject_16 || (templateObject_16 = __makeTemplateObject(["\n display: grid;\n grid-template-rows: ", ";\n z-index: 10;\n position: sticky;\n align-items: center;\n\n ", "\n"], ["\n display: grid;\n grid-template-rows: ", ";\n z-index: 10;\n position: sticky;\n align-items: center;\n\n ", "\n"])), function (_a) {
98
+ var _b = _a.$headerRowHeight, $headerRowHeight = _b === void 0 ? constants_1.DEFAULT_HEADER_ROW_HEIGHT : _b;
74
99
  return "".concat($headerRowHeight, "px");
75
100
  }, function (_a) {
76
101
  var $headerColor = _a.$headerColor;
77
102
  return $headerColor
78
- ? (0, styled_components_1.css)(templateObject_10 || (templateObject_10 = __makeTemplateObject(["\n background-color: var(--color-", "-100);\n color: var(--color-", "-900);\n "], ["\n background-color: var(--color-", "-100);\n color: var(--color-", "-900);\n "])), $headerColor, $headerColor) : (0, styled_components_1.css)(templateObject_11 || (templateObject_11 = __makeTemplateObject(["\n background-color: var(--color-neutral-200);\n color: var(--color-neutral-900);\n "], ["\n background-color: var(--color-neutral-200);\n color: var(--color-neutral-900);\n "])));
103
+ ? (0, styled_components_1.css)(templateObject_14 || (templateObject_14 = __makeTemplateObject(["\n background-color: var(--color-", "-100);\n color: var(--color-", "-900);\n "], ["\n background-color: var(--color-", "-100);\n color: var(--color-", "-900);\n "])), $headerColor, $headerColor) : (0, styled_components_1.css)(templateObject_15 || (templateObject_15 = __makeTemplateObject(["\n background-color: var(--color-neutral-200);\n color: var(--color-neutral-900);\n "], ["\n background-color: var(--color-neutral-200);\n color: var(--color-neutral-900);\n "])));
79
104
  });
80
105
  exports.DataGridHeaderRow = styled_components_1.default.div.attrs(function (_a) {
81
106
  var $gridTemplateColumns = _a.$gridTemplateColumns;
@@ -84,7 +109,7 @@ exports.DataGridHeaderRow = styled_components_1.default.div.attrs(function (_a)
84
109
  gridTemplateColumns: $gridTemplateColumns,
85
110
  },
86
111
  });
87
- })(templateObject_13 || (templateObject_13 = __makeTemplateObject(["\n ", "\n top: ", "px;\n"], ["\n ", "\n top: ", "px;\n"])), dataGridHeaderOrFooterRowCss, exports.TOOLBAR_HEIGHT);
112
+ })(templateObject_17 || (templateObject_17 = __makeTemplateObject(["\n ", "\n top: ", "px;\n"], ["\n ", "\n top: ", "px;\n"])), dataGridHeaderOrFooterRowCss, constants_1.TOOLBAR_HEIGHT);
88
113
  exports.DataGridHeaderRow.displayName = 'DataGridHeaderRow';
89
114
  exports.DataGridFooterRow = styled_components_1.default.div.attrs(function (_a) {
90
115
  var $gridTemplateColumns = _a.$gridTemplateColumns;
@@ -93,19 +118,22 @@ exports.DataGridFooterRow = styled_components_1.default.div.attrs(function (_a)
93
118
  gridTemplateColumns: $gridTemplateColumns,
94
119
  },
95
120
  });
96
- })(templateObject_14 || (templateObject_14 = __makeTemplateObject(["\n ", "\n bottom: 0;\n"], ["\n ", "\n bottom: 0;\n"])), dataGridHeaderOrFooterRowCss);
121
+ })(templateObject_18 || (templateObject_18 = __makeTemplateObject(["\n ", "\n bottom: 0;\n"], ["\n ", "\n bottom: 0;\n"])), dataGridHeaderOrFooterRowCss);
97
122
  exports.DataGridFooterRow.displayName = 'DataGridFooterRow';
98
- exports.DataGridRow = styled_components_1.default.div(templateObject_15 || (templateObject_15 = __makeTemplateObject(["\n display: contents;\n"], ["\n display: contents;\n"])));
123
+ exports.DataGridRow = styled_components_1.default.div(templateObject_20 || (templateObject_20 = __makeTemplateObject(["\n display: contents;\n\n ", "\n"], ["\n display: contents;\n\n ", "\n"])), function (_a) {
124
+ var $edited = _a.$edited;
125
+ return $edited && (0, styled_components_1.css)(templateObject_19 || (templateObject_19 = __makeTemplateObject(["\n & > ", ", & > ", " {\n background-color: var(--color-warning-100);\n color: var(--color-warning-900);\n }\n "], ["\n & > ", ", & > ", " {\n background-color: var(--color-warning-100);\n color: var(--color-warning-900);\n }\n "])), exports.DataGridCell, exports.SelectionCell);
126
+ });
99
127
  exports.DataGridRow.displayName = 'DataGridRow';
100
- exports.LoadingCell = (0, styled_components_1.default)(exports.DataGridCell)(templateObject_16 || (templateObject_16 = __makeTemplateObject(["\n padding: var(--space-2);\n box-sizing: border-box;\n\n &.animate-pulse > div {\n background-color: var(--color-neutral-200);\n border-radius: var(--rounded-full);\n width: 100%;\n height: 100%;\n }\n"], ["\n padding: var(--space-2);\n box-sizing: border-box;\n\n &.animate-pulse > div {\n background-color: var(--color-neutral-200);\n border-radius: var(--rounded-full);\n width: 100%;\n height: 100%;\n }\n"])));
128
+ exports.LoadingCell = (0, styled_components_1.default)(exports.DataGridCell)(templateObject_21 || (templateObject_21 = __makeTemplateObject(["\n padding: var(--space-2);\n box-sizing: border-box;\n\n &.animate-pulse > div {\n background-color: var(--color-neutral-200);\n border-radius: var(--rounded-full);\n width: 100%;\n height: 100%;\n }\n"], ["\n padding: var(--space-2);\n box-sizing: border-box;\n\n &.animate-pulse > div {\n background-color: var(--color-neutral-200);\n border-radius: var(--rounded-full);\n width: 100%;\n height: 100%;\n }\n"])));
101
129
  exports.LoadingCell.displayName = 'LoadingCell';
102
- var selectionCellStyle = (0, styled_components_1.css)(templateObject_17 || (templateObject_17 = __makeTemplateObject(["\n display: flex;\n align-items: center;\n justify-content: center;\n width: var(--space-8);\n padding: 0 var(--space-1);\n cursor: pointer;\n\n & > input[type='checkbox'] {\n height: var(--space-4);\n width: var(--space-4);\n border-radius: var(--rounded-sm);\n border: 1px solid var(--color-neutral-300);\n color: var(--color-primary-600);\n }\n"], ["\n display: flex;\n align-items: center;\n justify-content: center;\n width: var(--space-8);\n padding: 0 var(--space-1);\n cursor: pointer;\n\n & > input[type='checkbox'] {\n height: var(--space-4);\n width: var(--space-4);\n border-radius: var(--rounded-sm);\n border: 1px solid var(--color-neutral-300);\n color: var(--color-primary-600);\n }\n"])));
103
- exports.SelectionCell = (0, styled_components_1.default)(exports.DataGridCell)(templateObject_18 || (templateObject_18 = __makeTemplateObject(["\n ", "\n"], ["\n ", "\n"])), selectionCellStyle);
130
+ var selectionCellStyle = (0, styled_components_1.css)(templateObject_22 || (templateObject_22 = __makeTemplateObject(["\n display: flex;\n align-items: center;\n justify-content: center;\n width: var(--space-8);\n padding: 0 var(--space-1);\n cursor: pointer;\n\n & > input[type='checkbox'] {\n height: var(--space-4);\n width: ", ";\n border-radius: var(--rounded-sm);\n border: 1px solid var(--color-neutral-300);\n color: var(--color-primary-600);\n }\n"], ["\n display: flex;\n align-items: center;\n justify-content: center;\n width: var(--space-8);\n padding: 0 var(--space-1);\n cursor: pointer;\n\n & > input[type='checkbox'] {\n height: var(--space-4);\n width: ", ";\n border-radius: var(--rounded-sm);\n border: 1px solid var(--color-neutral-300);\n color: var(--color-primary-600);\n }\n"])), constants_1.SELECTION_CELL_WIDTH);
131
+ exports.SelectionCell = (0, styled_components_1.default)(exports.DataGridCell)(templateObject_23 || (templateObject_23 = __makeTemplateObject(["\n ", "\n"], ["\n ", "\n"])), selectionCellStyle);
104
132
  exports.SelectionCell.displayName = 'SelectionCell';
105
- exports.HeaderSelectionCell = (0, styled_components_1.default)(exports.DataGridHeaderCellContainer)(templateObject_19 || (templateObject_19 = __makeTemplateObject(["\n ", "\n"], ["\n ", "\n"])), selectionCellStyle);
133
+ exports.HeaderSelectionCell = (0, styled_components_1.default)(exports.DataGridHeaderCellContainer)(templateObject_24 || (templateObject_24 = __makeTemplateObject(["\n ", "\n padding: 0;\n"], ["\n ", "\n padding: 0;\n"])), selectionCellStyle);
106
134
  exports.HeaderSelectionCell.displayName = 'HeaderSelectionCell';
107
135
  exports.ResizeBackdrop = styled_components_1.default.div.attrs({
108
136
  className: 'ResizeBackdrop',
109
- })(templateObject_20 || (templateObject_20 = __makeTemplateObject(["\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background-color: rgba(0, 0, 0, 0);\n cursor: col-resize;\n"], ["\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background-color: rgba(0, 0, 0, 0);\n cursor: col-resize;\n"])));
137
+ })(templateObject_25 || (templateObject_25 = __makeTemplateObject(["\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background-color: rgba(0, 0, 0, 0);\n cursor: col-resize;\n z-index: 100;\n"], ["\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background-color: rgba(0, 0, 0, 0);\n cursor: col-resize;\n z-index: 100;\n"])));
110
138
  exports.ResizeBackdrop.displayName = 'ResizeBackdrop';
111
- var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5, templateObject_6, templateObject_7, templateObject_8, templateObject_9, templateObject_10, templateObject_11, templateObject_12, templateObject_13, templateObject_14, templateObject_15, templateObject_16, templateObject_17, templateObject_18, templateObject_19, templateObject_20;
139
+ var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5, templateObject_6, templateObject_7, templateObject_8, templateObject_9, templateObject_10, templateObject_11, templateObject_12, templateObject_13, templateObject_14, templateObject_15, templateObject_16, templateObject_17, templateObject_18, templateObject_19, templateObject_20, templateObject_21, templateObject_22, templateObject_23, templateObject_24, templateObject_25;
@@ -1,41 +1,84 @@
1
1
  import * as t from 'io-ts';
2
2
  import { CSSProperties, Context, Dispatch, FC, MouseEvent, MouseEventHandler, ReactNode, SetStateAction } from 'react';
3
- import { SettingsContextProps } from '../../../providers/SettingsProvider';
3
+ import { DataGridEditableCellFC } from './DataGridEditableCell/types';
4
4
  import { ThemeColor } from '../../../providers/ThemeProvider/types';
5
- export type DataGridCellFC = FC<{
5
+ export type DataGridCellFCProps = {
6
6
  onDoubleClick?: MouseEventHandler;
7
7
  style?: CSSProperties;
8
- }>;
8
+ $color?: ThemeColor;
9
+ $textAlign?: 'left' | 'right' | 'center';
10
+ $userSelect?: boolean;
11
+ };
12
+ export type DataGridCellFC = FC<DataGridCellFCProps>;
9
13
  export type DataGridFooterPredefinedFunction = 'average' | 'avg' | 'count' | 'max' | 'min' | 'sum';
10
14
  export type DataGridFooterFunction<R> = (allRows: R[], filteredRows: R[], selectedRows: R[]) => ReactNode;
11
- export type DataGridColumn<R> = {
15
+ type ExcelOptions = {
16
+ formatter?: (value: any) => string;
17
+ colorGetter?: (value: any) => string;
18
+ valueGetter?: (value: any) => string;
19
+ };
20
+ type CommonGridColumnProps<R, T> = {
21
+ key: string;
12
22
  component?: DataGridCellFC;
13
- editable?: boolean;
14
- excelFormatter?: (value: any) => string;
15
- excelBackgroundColor?: (value: any) => string;
16
- excelValue?: (value: any) => string;
23
+ color?: ThemeColor;
24
+ excelOptions?: ExcelOptions;
25
+ textAlign?: 'left' | 'right' | 'center';
17
26
  filter?: DataGridFilter;
18
27
  footer?: DataGridFooterFunction<R> | Record<string, DataGridFooterFunction<R> | null>;
19
- getter?: (row: R) => string | number;
20
- name: string;
28
+ name: ReactNode;
21
29
  order?: number;
22
- propertyName?: keyof R;
30
+ getter: (row: R) => T;
23
31
  render?: (row: R, column: DataGridColumn<R>) => ReactNode | string;
24
32
  resizable?: boolean;
25
33
  sortGetter?: (row: R) => string | number;
26
- type?: 'text' | 'number' | 'date';
27
34
  width?: number;
28
- settingsContext?: Context<SettingsContextProps>;
29
35
  };
30
- export type DataGridColumns<R> = Record<string, DataGridColumn<R>>;
36
+ export type EditableDataGridColumn<R, T> = CommonGridColumnProps<R, T> & {
37
+ editable?: boolean;
38
+ editComponent?: DataGridEditableCellFC<R, T>;
39
+ itemToPartialRow?: (row: R, value: T) => Partial<R>;
40
+ };
41
+ export type DataGridTextColumn<R> = EditableDataGridColumn<R, string> & {
42
+ type: 'text';
43
+ };
44
+ export type DataGridNumberColumn<R> = EditableDataGridColumn<R, number> & {
45
+ type: 'number';
46
+ decimals?: number;
47
+ currency?: string | ((row: R) => string);
48
+ };
49
+ export type DataGridDateColumn<R> = EditableDataGridColumn<R, string> & {
50
+ type: 'date';
51
+ };
52
+ export type DataGridCheckboxColumn<R> = EditableDataGridColumn<R, boolean> & {
53
+ type: 'checkbox';
54
+ };
55
+ export type DataGridSelectColumn<R, T = any> = EditableDataGridColumn<R, T | null> & {
56
+ type: 'select';
57
+ items: T[];
58
+ itemKey: (item: T) => string;
59
+ itemLabel: (item: T) => string;
60
+ };
61
+ export type DataGridForeignListColumn<R> = EditableDataGridColumn<R, string | null> & {
62
+ type: 'foreignList';
63
+ };
64
+ export type DataGridColorColumn<R> = EditableDataGridColumn<R, string> & {
65
+ type: 'color';
66
+ };
67
+ export type DataGridColumn<R> = DataGridTextColumn<R> | DataGridNumberColumn<R> | DataGridDateColumn<R> | DataGridCheckboxColumn<R> | DataGridSelectColumn<R> | DataGridForeignListColumn<R> | DataGridColorColumn<R>;
68
+ export type DataGridColumnWithFilter<R> = DataGridColumn<R> & {
69
+ filter: DataGridFilter;
70
+ };
71
+ export type DataGridColumns<R> = DataGridColumn<R>[];
31
72
  export type DataGridFilters = Record<string, DataGridFilter<DataGridFilterType>>;
32
73
  export type DataGridProps<R> = {
33
74
  name?: string;
34
75
  className?: string;
35
76
  rows: R[];
77
+ setRows?: Dispatch<SetStateAction<R[]>>;
36
78
  columns: DataGridColumns<R>;
37
79
  rowKey: keyof R | ((row: R) => string);
38
80
  selectable?: boolean;
81
+ userSelect?: boolean;
39
82
  editable?: boolean;
40
83
  onRowDoubleClick?: (row: R, e: MouseEvent) => void;
41
84
  onSelectionChange?: (keys: string[]) => void;
@@ -60,8 +103,13 @@ export type DataGridProps<R> = {
60
103
  loadCopyRows?: () => Promise<R[]>;
61
104
  refresh?: () => void;
62
105
  headerColor?: ThemeColor;
106
+ fixedColumnsCount?: number;
107
+ onRowEdited?: (row: R, columnKey: keyof R, value: any) => void;
108
+ onSaveClicked?: (addedRows: DataGridEditedRows<R>, editedRows: DataGridEditedRows<R>) => Promise<string[]>;
109
+ onAddClicked?: () => Promise<R>;
63
110
  };
64
111
  export type DataGridContextProps<R> = DataGridProps<R> & {
112
+ setRows: Dispatch<SetStateAction<R[]>>;
65
113
  editingCell?: [number, number];
66
114
  setEditingCell: Dispatch<SetStateAction<[number, number]>>;
67
115
  sortedRows: R[];
@@ -75,7 +123,7 @@ export type DataGridContextProps<R> = DataGridProps<R> & {
75
123
  footers?: Record<string, string>;
76
124
  setFooters: Dispatch<SetStateAction<Record<string, string>>>;
77
125
  footerFunctions?: Record<string, DataGridFooterFunction<R>>;
78
- visibleColumns: DataGridColumnKeyValuePair<R>[];
126
+ visibleColumns: DataGridColumns<R>;
79
127
  copyTable: (includeHeaders?: boolean, includeFooters?: boolean) => Promise<void>;
80
128
  setColumnWidth: (key: string, width: number) => void;
81
129
  saveSettings: (newSettings?: DataGridSettings) => void;
@@ -84,7 +132,17 @@ export type DataGridContextProps<R> = DataGridProps<R> & {
84
132
  length: number;
85
133
  rowKeyGetter: (row: R) => string;
86
134
  gridTemplateColumns: string;
135
+ resizingColumnKey: string | null;
136
+ startResizing: (e: MouseEvent, columnKey: string) => void;
137
+ moveResizing: (e: MouseEvent) => void;
138
+ endResizing: () => void;
87
139
  toggleSelection: (key: string) => void;
140
+ addedRows: DataGridEditedRows<R>;
141
+ updatedRows: DataGridEditedRows<R>;
142
+ editRow: (key: string, row: Partial<R>) => void;
143
+ addRow: (key: string, row: R) => void;
144
+ updateRow: (key: string, row: Partial<R>) => void;
145
+ clearChangedRows: (keys?: string[]) => void;
88
146
  };
89
147
  export type DataGridContext<R> = Context<DataGridContextProps<R>>;
90
148
  export declare const dataGridSettingCodec: t.PartialC<{
@@ -114,6 +172,11 @@ export type DataGridCellProps<R> = {
114
172
  context: DataGridContext<R>;
115
173
  className?: string;
116
174
  style?: CSSProperties;
175
+ userSelect?: boolean;
176
+ color?: ThemeColor;
177
+ };
178
+ export type EditableDataGridCellProps<R, T> = DataGridCellProps<R> & {
179
+ column: EditableDataGridColumn<R, T>;
117
180
  };
118
181
  export type DataGridHeaderCellProps<R> = {
119
182
  columnKey: string;
@@ -122,6 +185,7 @@ export type DataGridHeaderCellProps<R> = {
122
185
  context: DataGridContext<R>;
123
186
  onFilterButtonClicked?: (columnKey: string) => void;
124
187
  isFilterOpen?: boolean;
188
+ color?: ThemeColor;
125
189
  };
126
190
  export type DataGridSort = 'asc' | 'desc';
127
191
  export type DataGridFilterPredicate<T> = (valueToVerify: T) => boolean;
@@ -170,3 +234,5 @@ export type DataGridRefProps = {
170
234
  refresh: () => void;
171
235
  setSelectedKeys: (keys: string[]) => void;
172
236
  };
237
+ export type DataGridEditedRows<R> = Record<string, Partial<R>>;
238
+ export {};
@@ -0,0 +1,20 @@
1
+ import { ColumnDTO, ConditionDTO } from '../../../../services/smartQueries';
2
+ import { SmartQueryDataGridColumn, SmartQueryDataGridColumns } from '../types';
3
+ export declare const smartTextColumn: <R extends Record<string, any>>(key: string, title: string, options?: Partial<SmartQueryDataGridColumn<R>>) => SmartQueryDataGridColumns<R>;
4
+ /**
5
+ * Creates a column with a composed value from multiple fields,
6
+ * and filtered by a text filter on the first field
7
+ */
8
+ export declare const smartComposedColumn: <R extends Record<string, any>>(key: string, title: string, fields: string[], options?: Partial<SmartQueryDataGridColumn<R>>) => SmartQueryDataGridColumns<R>;
9
+ export declare const smartMailColumn: <R extends Record<string, any>>(key: string, title: string, options?: Partial<SmartQueryDataGridColumn<R>>) => SmartQueryDataGridColumns<R>;
10
+ export declare const smartPhoneColumn: <R extends Record<string, any>>(key: string, title: string, options?: Partial<SmartQueryDataGridColumn<R>>) => SmartQueryDataGridColumns<R>;
11
+ export declare const smartDateColumn: <R extends Record<string, any>>(key: string, title: string, options?: Partial<SmartQueryDataGridColumn<R>>) => SmartQueryDataGridColumns<R>;
12
+ export declare const smartDateTimeColumn: <R extends Record<string, any>>(key: string, title: string, options?: Partial<SmartQueryDataGridColumn<R>>) => SmartQueryDataGridColumns<R>;
13
+ export declare const smartMonthColumn: <R extends Record<string, any>>(key: string, title: string, options?: Partial<SmartQueryDataGridColumn<R>>) => SmartQueryDataGridColumns<R>;
14
+ export declare const smartNumberColumn: <R extends Record<string, any>>(key: string, title: string, decimals?: number, options?: Partial<SmartQueryDataGridColumn<R>>) => SmartQueryDataGridColumns<R>;
15
+ export declare const smartMoneyColumn: <R extends Record<string, any>>(key: string, title: string, decimals?: number, options?: Partial<SmartQueryDataGridColumn<R>>) => SmartQueryDataGridColumns<R>;
16
+ export declare const smartPercentageColumn: <R extends Record<string, any>>(key: string, title: string, decimals?: number, options?: Partial<SmartQueryDataGridColumn<R>>) => SmartQueryDataGridColumns<R>;
17
+ export declare const smartCheckboxColumn: <R extends Record<string, any>>(key: string, title: string, options?: Partial<SmartQueryDataGridColumn<R>>) => SmartQueryDataGridColumns<R>;
18
+ export declare const smartColorColumn: <R extends Record<string, any>>(key: string, title: string, options?: Partial<SmartQueryDataGridColumn<R>>) => SmartQueryDataGridColumns<R>;
19
+ export declare const getColumnsConditions: (columns: ColumnDTO[]) => ConditionDTO[];
20
+ export declare const getFooterColumn: (column: ColumnDTO) => ColumnDTO;
@@ -0,0 +1,160 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ Object.defineProperty(exports, "__esModule", { value: true });
14
+ exports.getFooterColumn = exports.getColumnsConditions = exports.smartColorColumn = exports.smartCheckboxColumn = exports.smartPercentageColumn = exports.smartMoneyColumn = exports.smartNumberColumn = exports.smartMonthColumn = exports.smartDateTimeColumn = exports.smartDateColumn = exports.smartPhoneColumn = exports.smartMailColumn = exports.smartComposedColumn = exports.smartTextColumn = void 0;
15
+ var jsx_runtime_1 = require("react/jsx-runtime");
16
+ var helpers_1 = require("../../DataGrid/helpers");
17
+ var dates_1 = require("../../../../helpers/dates");
18
+ var numbers_1 = require("../../../../helpers/numbers");
19
+ var smartTextColumn = function (key, title, options) {
20
+ var _a;
21
+ return (_a = {},
22
+ _a[key] = __assign(__assign({ name: title, render: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : ''; }, getter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : ''; }, sortGetter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : ''; }, filter: __assign(__assign({}, (0, helpers_1.textFilter)(key)), { getter: function (value) { var _a; return (_a = value[key]) !== null && _a !== void 0 ? _a : ''; } }) }, options), { footer: function (rows) { return "".concat(rows[0][key], " \u00E9l\u00E9ments"); } }),
23
+ _a);
24
+ };
25
+ exports.smartTextColumn = smartTextColumn;
26
+ /**
27
+ * Creates a column with a composed value from multiple fields,
28
+ * and filtered by a text filter on the first field
29
+ */
30
+ var smartComposedColumn = function (key, title, fields, options) {
31
+ var _a;
32
+ return (_a = {},
33
+ _a[key] = __assign({ field: {
34
+ fieldAlias: key,
35
+ operator: 'jsonObject',
36
+ operands: fields.flatMap(function (field) { return [
37
+ { constantValue: field },
38
+ { fieldName: field },
39
+ ]; }),
40
+ }, name: title, render: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : ''; }, getter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : ''; }, sortGetter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : ''; }, filter: __assign(__assign({}, (0, helpers_1.textFilter)(fields[0])), { getter: function (value) { var _a; return (_a = value[fields[0]]) !== null && _a !== void 0 ? _a : 0; } }), filterField: fields[0], sortField: fields[0], footer: function (rows) { return "".concat(rows[0][key], " \u00E9l\u00E9ments"); } }, options),
41
+ _a);
42
+ };
43
+ exports.smartComposedColumn = smartComposedColumn;
44
+ var smartMailColumn = function (key, title, options) {
45
+ var _a;
46
+ return (_a = {},
47
+ _a[key] = __assign({ name: title, render: function (row) { var _a; return (0, jsx_runtime_1.jsx)("a", { href: "mailto:".concat(row[key]), children: (_a = row[key]) !== null && _a !== void 0 ? _a : '' }); }, getter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : ''; }, sortGetter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : ''; }, filter: __assign(__assign({}, (0, helpers_1.textFilter)(key)), { getter: function (value) { var _a; return (_a = value[key]) !== null && _a !== void 0 ? _a : ''; } }), footer: function (rows) { return "".concat(rows[0][key], " \u00E9l\u00E9ments"); } }, options),
48
+ _a);
49
+ };
50
+ exports.smartMailColumn = smartMailColumn;
51
+ var smartPhoneColumn = function (key, title, options) {
52
+ var _a;
53
+ return (_a = {},
54
+ _a[key] = __assign({ name: title, render: function (row) { var _a; return (0, jsx_runtime_1.jsx)("a", { href: "tel:".concat(row[key]), children: (_a = row[key]) !== null && _a !== void 0 ? _a : '' }); }, getter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : ''; }, sortGetter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : ''; }, filter: __assign(__assign({}, (0, helpers_1.textFilter)(key)), { getter: function (value) { var _a; return (_a = value[key]) !== null && _a !== void 0 ? _a : ''; } }), footer: function (rows) { return "".concat(rows[0][key], " \u00E9l\u00E9ments"); } }, options),
55
+ _a);
56
+ };
57
+ exports.smartPhoneColumn = smartPhoneColumn;
58
+ var smartDateColumn = function (key, title, options) {
59
+ var _a;
60
+ return (_a = {},
61
+ _a[key] = __assign({ name: title, type: 'date', render: function (row) { return (0, dates_1.formatDate)(row[key]); }, getter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : ''; }, sortGetter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : ''; }, excelFormatter: function () { return 'dd/mm/yyyy'; }, excelValue: function (value) { return (0, dates_1.formatDate)(value, 'YYYY-MM-DD'); }, filter: __assign(__assign({}, (0, helpers_1.dateFilter)(key)), { getter: function (value) { var _a; return (_a = value[key]) !== null && _a !== void 0 ? _a : ''; }, formatter: function (value) { return (0, dates_1.formatDate)(value); }, renderer: function (value) { return (0, dates_1.formatDate)(value); } }), footer: function (rows) { return "".concat(rows[0][key], " \u00E9l\u00E9ments"); } }, options),
62
+ _a);
63
+ };
64
+ exports.smartDateColumn = smartDateColumn;
65
+ var smartDateTimeColumn = function (key, title, options) {
66
+ var _a;
67
+ return (_a = {},
68
+ _a[key] = __assign({ name: title, type: 'date', render: function (row) { return (0, dates_1.formatDateTime)(row[key]); }, getter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : ''; }, sortGetter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : ''; }, excelFormatter: function () { return 'dd/mm/yyyy hh:mm:ss'; }, excelValue: function (value) { return (0, dates_1.formatDateTime)(value, 'YYYY-MM-DD HH:mm:ss'); }, filter: __assign(__assign({}, (0, helpers_1.dateFilter)(key)), { getter: function (value) { var _a; return (_a = value[key]) !== null && _a !== void 0 ? _a : ''; }, formatter: function (value) { return (0, dates_1.formatDateTime)(value); }, renderer: function (value) { return (0, dates_1.formatDateTime)(value); } }), footer: function (rows) { return "".concat(rows[0][key], " \u00E9l\u00E9ments"); } }, options),
69
+ _a);
70
+ };
71
+ exports.smartDateTimeColumn = smartDateTimeColumn;
72
+ var smartMonthColumn = function (key, title, options) {
73
+ var _a;
74
+ return (_a = {},
75
+ _a[key] = __assign({ name: title, render: function (row) { return (row[key] ? "".concat(row[key], " mois ") : ''); }, getter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : ''; }, sortGetter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : ''; }, filter: __assign(__assign({}, (0, helpers_1.textFilter)(key)), { getter: function (value) { var _a; return (_a = value[key]) !== null && _a !== void 0 ? _a : ''; } }), footer: function (rows) { return "".concat(rows[0][key], " \u00E9l\u00E9ments"); } }, options),
76
+ _a);
77
+ };
78
+ exports.smartMonthColumn = smartMonthColumn;
79
+ var smartNumberColumn = function (key, title, decimals, options) {
80
+ var _a;
81
+ if (decimals === void 0) { decimals = 2; }
82
+ return (_a = {},
83
+ _a[key] = __assign({ name: title, type: 'number', render: function (row) { var _a; return (_a = (0, numbers_1.formatNumber)(row[key], decimals)) !== null && _a !== void 0 ? _a : ''; }, excelFormatter: function () { return (0, helpers_1.buildExcelFormat)(decimals); }, excelValue: function (value) { return (0, numbers_1.formatNumberInvariant)(value, decimals); }, getter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : ''; }, sortGetter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : 0; }, filter: __assign(__assign({}, (0, helpers_1.numberFilter)(key)), { getter: function (value) { var _a; return (_a = value[key]) !== null && _a !== void 0 ? _a : 0; }, renderer: function (value) { var _a; return (_a = (0, numbers_1.formatNumber)(value, decimals)) !== null && _a !== void 0 ? _a : ''; } }), footer: {
84
+ sum: null,
85
+ avg: null,
86
+ count: null,
87
+ max: null,
88
+ min: null,
89
+ } }, options),
90
+ _a);
91
+ };
92
+ exports.smartNumberColumn = smartNumberColumn;
93
+ var smartMoneyColumn = function (key, title, decimals, options) {
94
+ var _a;
95
+ if (decimals === void 0) { decimals = 2; }
96
+ return (_a = {},
97
+ _a[key] = __assign({ name: title, type: 'number', render: function (row) { var _a; return (_a = (0, numbers_1.formatMoney)(row[key], decimals)) !== null && _a !== void 0 ? _a : ''; }, excelFormatter: function () { return (0, helpers_1.buildExcelFormat)(decimals, ' €'); }, excelValue: function (value) { return (0, numbers_1.formatNumberInvariant)(value, decimals); }, getter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : ''; }, sortGetter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : 0; }, filter: __assign(__assign({}, (0, helpers_1.numberFilter)(key)), { getter: function (value) { var _a; return (_a = value[key]) !== null && _a !== void 0 ? _a : 0; }, renderer: function (value) { var _a; return (_a = (0, numbers_1.formatMoney)(value, decimals)) !== null && _a !== void 0 ? _a : ''; } }), footer: {
98
+ sum: null,
99
+ avg: null,
100
+ count: null,
101
+ max: null,
102
+ min: null,
103
+ } }, options),
104
+ _a);
105
+ };
106
+ exports.smartMoneyColumn = smartMoneyColumn;
107
+ var smartPercentageColumn = function (key, title, decimals, options) {
108
+ var _a;
109
+ if (decimals === void 0) { decimals = 2; }
110
+ return (_a = {},
111
+ _a[key] = __assign({ name: title, type: 'number', render: function (row) { var _a; return (_a = (0, numbers_1.formatPercentage)(row[key])) !== null && _a !== void 0 ? _a : ''; }, excelFormatter: function () { return (0, helpers_1.buildExcelFormat)(decimals, '%'); }, excelValue: function (value) { return (0, numbers_1.formatNumberInvariant)(value, decimals); }, getter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : ''; }, sortGetter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : 0; }, filter: __assign(__assign({}, (0, helpers_1.numberFilter)(key)), { getter: function (value) { var _a; return (_a = value[key]) !== null && _a !== void 0 ? _a : 0; }, renderer: function (value) { var _a; return (_a = (0, numbers_1.formatPercentage)(value, decimals)) !== null && _a !== void 0 ? _a : ''; } }) }, options),
112
+ _a);
113
+ };
114
+ exports.smartPercentageColumn = smartPercentageColumn;
115
+ var smartCheckboxColumn = function (key, title, options) {
116
+ var _a;
117
+ return (_a = {},
118
+ _a[key] = __assign({ name: title, render: function (row) {
119
+ var _a;
120
+ var value = !!+((_a = row[key]) !== null && _a !== void 0 ? _a : 0);
121
+ return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)("input", { type: "checkbox", checked: value, readOnly: true }), (0, jsx_runtime_1.jsx)("span", { children: value ? ' Oui' : ' Non' })] }));
122
+ }, getter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : ''; }, sortGetter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : ''; }, filter: __assign(__assign({}, (0, helpers_1.numberFilter)(key)), { getter: function (value) { var _a; return +((_a = value[key]) !== null && _a !== void 0 ? _a : 0); } }), footer: function (rows) { return "".concat(rows[0][key], " \u00E9l\u00E9ments"); } }, options),
123
+ _a);
124
+ };
125
+ exports.smartCheckboxColumn = smartCheckboxColumn;
126
+ var smartColorColumn = function (key, title, options) {
127
+ var _a;
128
+ return (_a = {},
129
+ _a[key] = __assign({ name: title, render: function (row) { return ((0, jsx_runtime_1.jsx)("div", { style: { position: 'absolute', inset: 0, backgroundColor: row[key] }, children: "\u00A0" })); }, excelValue: function () { return ''; }, excelBackgroundColor: function (value) { return value; }, getter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : ''; }, sortGetter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : ''; }, filter: __assign(__assign({}, (0, helpers_1.textFilter)(key)), { getter: function (value) { var _a; return (_a = value[key]) !== null && _a !== void 0 ? _a : ''; }, renderer: function (value) { return ((0, jsx_runtime_1.jsx)("div", { style: {
130
+ backgroundColor: value,
131
+ width: 'var(--space-16)',
132
+ height: '1em',
133
+ }, children: "\u00A0" })); } }) }, options),
134
+ _a);
135
+ };
136
+ exports.smartColorColumn = smartColorColumn;
137
+ var getColumnsConditions = function (columns) {
138
+ return columns
139
+ .filter(function (column) { return !!column.having; })
140
+ .map(function (column) {
141
+ var _a, _b, _c;
142
+ return ({
143
+ field: column.field,
144
+ operator: (_b = (_a = column.having) === null || _a === void 0 ? void 0 : _a.operator) !== null && _b !== void 0 ? _b : 'equals',
145
+ value: (_c = column.having) === null || _c === void 0 ? void 0 : _c.value,
146
+ });
147
+ });
148
+ };
149
+ exports.getColumnsConditions = getColumnsConditions;
150
+ var getFooterColumn = function (column) {
151
+ var _a;
152
+ return !column.footer
153
+ ? column
154
+ : __assign(__assign({}, column), { field: {
155
+ operator: column.footer,
156
+ operands: [{ fieldName: column.field.fieldName }],
157
+ fieldAlias: (_a = column.field.fieldAlias) !== null && _a !== void 0 ? _a : column.field.fieldName,
158
+ }, groupBy: true });
159
+ };
160
+ exports.getFooterColumn = getFooterColumn;
@@ -0,0 +1,5 @@
1
+ import { ColumnDTO, ConditionDTO } from '../../../../services/smartQueries';
2
+ import { SmartQueryDataGridColumns } from '../types';
3
+ import { SmartQueries } from '../../../../services';
4
+ export declare const useSmartColumnDTOs: <R>(columns: SmartQueryDataGridColumns<R>, conditions?: Record<string, ConditionDTO>, footers?: Record<string, SmartQueries.FooterFunction>, sorts?: Record<string, SmartQueries.OrderByDirection>) => ColumnDTO[];
5
+ export declare const useIdSmartColumnDTO: (smartColumns: SmartQueries.ColumnDTO[]) => ColumnDTO;
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useIdSmartColumnDTO = exports.useSmartColumnDTOs = void 0;
4
+ var react_1 = require("react");
5
+ var useSmartColumnDTOs = function (columns, conditions, footers, sorts) {
6
+ if (conditions === void 0) { conditions = {}; }
7
+ if (footers === void 0) { footers = {}; }
8
+ if (sorts === void 0) { sorts = {}; }
9
+ return (0, react_1.useMemo)(function () {
10
+ return Object.entries(columns).map(function (_a) {
11
+ var _b, _c, _d, _e, _f, _g;
12
+ var key = _a[0], col = _a[1];
13
+ return ({
14
+ key: key,
15
+ field: {
16
+ fieldName: (_c = (_b = col.field) === null || _b === void 0 ? void 0 : _b.fieldName) !== null && _c !== void 0 ? _c : key,
17
+ fieldAlias: (_e = (_d = col.field) === null || _d === void 0 ? void 0 : _d.fieldAlias) !== null && _e !== void 0 ? _e : key,
18
+ groupBy: (_g = (_f = col.field) === null || _f === void 0 ? void 0 : _f.groupBy) !== null && _g !== void 0 ? _g : false,
19
+ },
20
+ having: conditions[key],
21
+ footer: footers[key],
22
+ orderBy: sorts[key],
23
+ });
24
+ });
25
+ }, [columns, conditions, footers, sorts]);
26
+ };
27
+ exports.useSmartColumnDTOs = useSmartColumnDTOs;
28
+ var useIdSmartColumnDTO = function (smartColumns) {
29
+ return (0, react_1.useMemo)(function () {
30
+ var _a;
31
+ return (_a = smartColumns.find(function (col) { return col.field.fieldName === 'id'; })) !== null && _a !== void 0 ? _a : {
32
+ key: 'id',
33
+ field: {
34
+ fieldName: 'id',
35
+ fieldAlias: 'id',
36
+ groupBy: false,
37
+ },
38
+ };
39
+ }, [smartColumns]);
40
+ };
41
+ exports.useIdSmartColumnDTO = useIdSmartColumnDTO;
@@ -0,0 +1,2 @@
1
+ export * from './smartQueries';
2
+ export * from './columns';
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./smartQueries"), exports);
18
+ __exportStar(require("./columns"), exports);
@@ -0,0 +1,3 @@
1
+ import { ConditionDTO } from '../../../../services/smartQueries';
2
+ import { SmartQueryDataGridFilters } from '../types';
3
+ export declare const convertSmartFiltersToConditions: (filters: SmartQueryDataGridFilters) => Record<string, ConditionDTO>;