@addev-be/ui 0.2.5 → 0.2.6

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 (133) hide show
  1. package/assets/icons/arrow-down-a-z.svg +1 -1
  2. package/assets/icons/arrow-up-z-a.svg +1 -1
  3. package/assets/icons/check.svg +1 -1
  4. package/assets/icons/down.svg +1 -1
  5. package/assets/icons/filter-full.svg +1 -1
  6. package/assets/icons/filter.svg +1 -1
  7. package/assets/icons/hashtag.svg +1 -1
  8. package/assets/icons/image-slash.svg +1 -1
  9. package/assets/icons/left.svg +1 -1
  10. package/assets/icons/magnifier.svg +1 -1
  11. package/assets/icons/phone.svg +1 -1
  12. package/assets/icons/right.svg +1 -1
  13. package/assets/icons/spinner-third.svg +1 -1
  14. package/assets/icons/table-columns.svg +1 -1
  15. package/assets/icons/up.svg +1 -1
  16. package/assets/icons/user-tie.svg +1 -1
  17. package/dist/components/data/DataGrid/AdvancedRequestDataGrid.d.ts +1 -2
  18. package/dist/components/data/DataGrid/AdvancedRequestDataGrid.js +3 -5
  19. package/dist/components/data/DataGrid/DataGridCell.d.ts +1 -1
  20. package/dist/components/data/DataGrid/DataGridCell.js +5 -5
  21. package/dist/components/data/DataGrid/DataGridEditableCell.js +2 -7
  22. package/dist/components/data/DataGrid/DataGridFilterMenu/index.js +10 -8
  23. package/dist/components/data/DataGrid/DataGridFooter.js +4 -14
  24. package/dist/components/data/DataGrid/DataGridHeader.js +1 -3
  25. package/dist/components/data/DataGrid/DataGridHeaderCell.js +6 -5
  26. package/dist/components/data/DataGrid/FilterModalContent/index.d.ts +5 -5
  27. package/dist/components/data/DataGrid/FilterModalContent/index.js +11 -9
  28. package/dist/components/data/DataGrid/FilterValuesScroller.d.ts +8 -7
  29. package/dist/components/data/DataGrid/FilterValuesScroller.js +5 -6
  30. package/dist/components/data/DataGrid/helpers/columns.js +1 -4
  31. package/dist/components/data/DataGrid/helpers/filters.d.ts +4 -3
  32. package/dist/components/data/DataGrid/helpers/filters.js +13 -5
  33. package/dist/components/data/DataGrid/hooks/useDataGrid.js +2 -2
  34. package/dist/components/data/DataGrid/hooks/useDataGridCopy.js +0 -1
  35. package/dist/components/data/DataGrid/hooks/useDataGridSettings.js +0 -1
  36. package/dist/components/data/DataGrid/index.js +16 -5
  37. package/dist/components/data/DataGrid/styles.d.ts +4 -1
  38. package/dist/components/data/DataGrid/styles.js +11 -8
  39. package/dist/components/data/DataGrid/types.d.ts +20 -15
  40. package/dist/components/data/SqlRequestDataGrid/helpers/columns.js +7 -9
  41. package/dist/components/data/SqlRequestDataGrid/index.js +34 -18
  42. package/dist/components/data/SqlRequestDataGrid/types.d.ts +1 -0
  43. package/dist/components/data/index.d.ts +2 -0
  44. package/dist/components/data/index.js +2 -0
  45. package/dist/helpers/dates.d.ts +2 -0
  46. package/dist/helpers/dates.js +13 -0
  47. package/package.json +1 -1
  48. package/src/Icons.tsx +80 -80
  49. package/src/components/data/AdvancedRequestDataGrid/helpers/advancedRequests.ts +93 -93
  50. package/src/components/data/AdvancedRequestDataGrid/helpers/columns.tsx +262 -262
  51. package/src/components/data/AdvancedRequestDataGrid/helpers/index.ts +2 -2
  52. package/src/components/data/AdvancedRequestDataGrid/index.tsx +269 -269
  53. package/src/components/data/AdvancedRequestDataGrid/types.ts +47 -47
  54. package/src/components/data/DataGrid/DataGridCell.tsx +73 -73
  55. package/src/components/data/DataGrid/DataGridColumnsModal/helpers.ts +14 -14
  56. package/src/components/data/DataGrid/DataGridColumnsModal/hooks.tsx +58 -58
  57. package/src/components/data/DataGrid/DataGridColumnsModal/index.tsx +181 -181
  58. package/src/components/data/DataGrid/DataGridColumnsModal/styles.ts +104 -104
  59. package/src/components/data/DataGrid/DataGridEditableCell.tsx +43 -54
  60. package/src/components/data/DataGrid/DataGridFilterMenu/hooks.tsx +75 -75
  61. package/src/components/data/DataGrid/DataGridFilterMenu/index.tsx +200 -190
  62. package/src/components/data/DataGrid/DataGridFilterMenu/styles.ts +100 -100
  63. package/src/components/data/DataGrid/DataGridFooter.tsx +44 -64
  64. package/src/components/data/DataGrid/DataGridHeader.tsx +126 -126
  65. package/src/components/data/DataGrid/DataGridHeaderCell.tsx +167 -167
  66. package/src/components/data/DataGrid/FilterModalContent/index.tsx +124 -125
  67. package/src/components/data/DataGrid/FilterModalContent/styles.ts +22 -22
  68. package/src/components/data/DataGrid/FilterValuesScroller.tsx +133 -131
  69. package/src/components/data/DataGrid/VirtualScroller.tsx +46 -46
  70. package/src/components/data/DataGrid/helpers/columns.tsx +196 -196
  71. package/src/components/data/DataGrid/helpers/filters.ts +220 -207
  72. package/src/components/data/DataGrid/helpers/index.ts +2 -2
  73. package/src/components/data/DataGrid/hooks/index.ts +30 -30
  74. package/src/components/data/DataGrid/hooks/useDataGrid.tsx +264 -264
  75. package/src/components/data/DataGrid/hooks/useDataGridCopy.ts +165 -165
  76. package/src/components/data/DataGrid/hooks/useDataGridSettings.ts +48 -48
  77. package/src/components/data/DataGrid/index.tsx +132 -132
  78. package/src/components/data/DataGrid/styles.ts +326 -326
  79. package/src/components/data/DataGrid/types.ts +241 -240
  80. package/src/components/data/SqlRequestDataGrid/helpers/columns.tsx +224 -224
  81. package/src/components/data/SqlRequestDataGrid/helpers/index.ts +2 -2
  82. package/src/components/data/SqlRequestDataGrid/helpers/sqlRequests.ts +16 -16
  83. package/src/components/data/SqlRequestDataGrid/index.tsx +252 -252
  84. package/src/components/data/SqlRequestDataGrid/types.ts +47 -47
  85. package/src/components/data/index.ts +8 -8
  86. package/src/components/forms/Button.tsx +99 -99
  87. package/src/components/forms/IconButton.tsx +56 -56
  88. package/src/components/forms/IndeterminateCheckbox.tsx +46 -46
  89. package/src/components/forms/Select.tsx +40 -40
  90. package/src/components/forms/index.ts +5 -5
  91. package/src/components/forms/styles.ts +20 -20
  92. package/src/components/index.ts +3 -3
  93. package/src/components/layout/Dropdown/index.tsx +79 -79
  94. package/src/components/layout/Dropdown/styles.ts +44 -44
  95. package/src/components/layout/Loading/index.tsx +29 -29
  96. package/src/components/layout/Loading/styles.ts +29 -29
  97. package/src/components/layout/Modal/index.tsx +51 -51
  98. package/src/components/layout/Modal/styles.ts +110 -110
  99. package/src/components/layout/index.ts +3 -3
  100. package/src/config/index.ts +14 -14
  101. package/src/helpers/dates.ts +9 -9
  102. package/src/helpers/getScrollbarSize.ts +14 -14
  103. package/src/helpers/numbers.ts +20 -20
  104. package/src/hooks/index.ts +2 -2
  105. package/src/hooks/useElementSize.ts +24 -24
  106. package/src/hooks/useWindowSize.ts +20 -20
  107. package/src/index.ts +7 -7
  108. package/src/providers/PortalsProvider/index.tsx +54 -54
  109. package/src/providers/PortalsProvider/styles.ts +27 -27
  110. package/src/providers/SettingsProvider/index.tsx +70 -70
  111. package/src/providers/ThemeProvider/ThemeProvider.ts +55 -55
  112. package/src/providers/ThemeProvider/defaultTheme.ts +444 -444
  113. package/src/providers/ThemeProvider/index.ts +3 -3
  114. package/src/providers/ThemeProvider/types.ts +123 -123
  115. package/src/providers/UiProviders/index.tsx +65 -65
  116. package/src/providers/UiProviders/styles.ts +10 -10
  117. package/src/providers/hooks.ts +8 -8
  118. package/src/providers/index.ts +5 -5
  119. package/src/services/HttpService.ts +80 -80
  120. package/src/services/WebSocketService.ts +147 -147
  121. package/src/services/advancedRequests.ts +101 -101
  122. package/src/services/base.ts +31 -31
  123. package/src/services/hooks.ts +23 -23
  124. package/src/services/index.ts +2 -2
  125. package/src/services/sqlRequests.ts +99 -99
  126. package/src/styles/animations.scss +30 -30
  127. package/src/styles/index.scss +42 -42
  128. package/src/typings.d.ts +6 -6
  129. package/tsconfig.tsbuildinfo +1 -1
  130. package/dist/components/data/DataGrid/helpers.d.ts +0 -28
  131. package/dist/components/data/DataGrid/helpers.js +0 -436
  132. package/dist/config/types.d.ts +0 -11
  133. package/dist/config/types.js +0 -2
@@ -1 +1 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" height="16" width="18" viewBox="0 0 576 512"><!--!Font Awesome Pro 6.5.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2024 Fonticons, Inc.--><path d="M47 377l96 96c9.4 9.4 24.6 9.4 33.9 0l96-96c9.4-9.4 9.4-24.6 0-33.9s-24.6-9.4-33.9 0l-55 55V56c0-13.3-10.7-24-24-24s-24 10.7-24 24V398.1L81 343c-9.4-9.4-24.6-9.4-33.9 0s-9.4 24.6 0 33.9zm305-89c-13.3 0-24 10.7-24 24s10.7 24 24 24h74.6L334.1 440.1c-6.3 7.1-7.8 17.2-4 25.8S342.6 480 352 480H480c13.3 0 24-10.7 24-24s-10.7-24-24-24H405.4l92.5-104.1c6.3-7.1 7.8-17.2 4-25.8S489.4 288 480 288H352zM416 32c-9.1 0-17.4 5.1-21.5 13.3l-80 160c-5.9 11.9-1.1 26.3 10.7 32.2s26.3 1.1 32.2-10.7L370.8 200H456c1.7 0 3.3-.2 4.9-.5l13.6 27.2c5.9 11.9 20.3 16.7 32.2 10.7s16.7-20.3 10.7-32.2l-80-160C433.4 37.1 425.1 32 416 32zM394.8 152L416 109.7 437.2 152H394.8z"/></svg>
1
+ <svg xmlns="http://www.w3.org/2000/svg" height="16" width="18" viewBox="0 0 576 512"><!--!Font Awesome Pro 6.5.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2024 Fonticons, Inc.--><path d="M47 377l96 96c9.4 9.4 24.6 9.4 33.9 0l96-96c9.4-9.4 9.4-24.6 0-33.9s-24.6-9.4-33.9 0l-55 55V56c0-13.3-10.7-24-24-24s-24 10.7-24 24V398.1L81 343c-9.4-9.4-24.6-9.4-33.9 0s-9.4 24.6 0 33.9zm305-89c-13.3 0-24 10.7-24 24s10.7 24 24 24h74.6L334.1 440.1c-6.3 7.1-7.8 17.2-4 25.8S342.6 480 352 480H480c13.3 0 24-10.7 24-24s-10.7-24-24-24H405.4l92.5-104.1c6.3-7.1 7.8-17.2 4-25.8S489.4 288 480 288H352zM416 32c-9.1 0-17.4 5.1-21.5 13.3l-80 160c-5.9 11.9-1.1 26.3 10.7 32.2s26.3 1.1 32.2-10.7L370.8 200H456c1.7 0 3.3-.2 4.9-.5l13.6 27.2c5.9 11.9 20.3 16.7 32.2 10.7s16.7-20.3 10.7-32.2l-80-160C433.4 37.1 425.1 32 416 32zM394.8 152L416 109.7 437.2 152H394.8z"/></svg>
@@ -1 +1 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" height="16" width="18" viewBox="0 0 576 512"><!--!Font Awesome Pro 6.5.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2024 Fonticons, Inc.--><path d="M352 32H480c9.4 0 18 5.5 21.9 14.2s2.3 18.7-4 25.8L405.4 176H480c13.3 0 24 10.7 24 24s-10.7 24-24 24H352c-9.4 0-18-5.5-21.9-14.2s-2.3-18.7 4-25.8L426.6 80H352c-13.3 0-24-10.7-24-24s10.7-24 24-24zM143 39c9.4-9.4 24.6-9.4 33.9 0l96 96c9.4 9.4 9.4 24.6 0 33.9s-24.6 9.4-33.9 0l-55-55V456c0 13.3-10.7 24-24 24s-24-10.7-24-24V113.9L81 169c-9.4 9.4-24.6 9.4-33.9 0s-9.4-24.6 0-33.9l96-96zM416 272c9.1 0 17.4 5.1 21.5 13.3l80 160c5.9 11.9 1.1 26.3-10.7 32.2s-26.3 1.1-32.2-10.7l-13.6-27.2c-1.6 .3-3.2 .5-4.9 .5H370.8l-13.4 26.7c-5.9 11.9-20.3 16.7-32.2 10.7s-16.7-20.3-10.7-32.2l80-160c4.1-8.1 12.4-13.3 21.5-13.3zM394.8 392h42.3L416 349.7 394.8 392z"/></svg>
1
+ <svg xmlns="http://www.w3.org/2000/svg" height="16" width="18" viewBox="0 0 576 512"><!--!Font Awesome Pro 6.5.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2024 Fonticons, Inc.--><path d="M352 32H480c9.4 0 18 5.5 21.9 14.2s2.3 18.7-4 25.8L405.4 176H480c13.3 0 24 10.7 24 24s-10.7 24-24 24H352c-9.4 0-18-5.5-21.9-14.2s-2.3-18.7 4-25.8L426.6 80H352c-13.3 0-24-10.7-24-24s10.7-24 24-24zM143 39c9.4-9.4 24.6-9.4 33.9 0l96 96c9.4 9.4 9.4 24.6 0 33.9s-24.6 9.4-33.9 0l-55-55V456c0 13.3-10.7 24-24 24s-24-10.7-24-24V113.9L81 169c-9.4 9.4-24.6 9.4-33.9 0s-9.4-24.6 0-33.9l96-96zM416 272c9.1 0 17.4 5.1 21.5 13.3l80 160c5.9 11.9 1.1 26.3-10.7 32.2s-26.3 1.1-32.2-10.7l-13.6-27.2c-1.6 .3-3.2 .5-4.9 .5H370.8l-13.4 26.7c-5.9 11.9-20.3 16.7-32.2 10.7s-16.7-20.3-10.7-32.2l80-160c4.1-8.1 12.4-13.3 21.5-13.3zM394.8 392h42.3L416 349.7 394.8 392z"/></svg>
@@ -1 +1 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--!Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--><path d="M438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.3 0z"/></svg>
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--!Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--><path d="M438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.3 0z"/></svg>
@@ -1 +1 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512"><!--!Font Awesome Pro 6.5.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2024 Fonticons, Inc.--><path d="M214.6 470.6c-12.5 12.5-32.8 12.5-45.3 0l-160-160c-9.2-9.2-11.9-22.9-6.9-34.9s16.6-19.8 29.6-19.8l96 0 0-184c0-22.1 17.9-40 40-40l48 0c22.1 0 40 17.9 40 40l0 184 96 0c12.9 0 24.6 7.8 29.6 19.8s2.2 25.7-6.9 34.9l-160 160z"/></svg>
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512"><!--!Font Awesome Pro 6.5.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2024 Fonticons, Inc.--><path d="M214.6 470.6c-12.5 12.5-32.8 12.5-45.3 0l-160-160c-9.2-9.2-11.9-22.9-6.9-34.9s16.6-19.8 29.6-19.8l96 0 0-184c0-22.1 17.9-40 40-40l48 0c22.1 0 40 17.9 40 40l0 184 96 0c12.9 0 24.6 7.8 29.6 19.8s2.2 25.7-6.9 34.9l-160 160z"/></svg>
@@ -1 +1 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--!Font Awesome Free 6.5.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--><path d="M3.9 54.9C10.5 40.9 24.5 32 40 32H472c15.5 0 29.5 8.9 36.1 22.9s4.6 30.5-5.2 42.5L320 320.9V448c0 12.1-6.8 23.2-17.7 28.6s-23.8 4.3-33.5-3l-64-48c-8.1-6-12.8-15.5-12.8-25.6V320.9L9 97.3C-.7 85.4-2.8 68.8 3.9 54.9z"/></svg>
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--!Font Awesome Free 6.5.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--><path d="M3.9 54.9C10.5 40.9 24.5 32 40 32H472c15.5 0 29.5 8.9 36.1 22.9s4.6 30.5-5.2 42.5L320 320.9V448c0 12.1-6.8 23.2-17.7 28.6s-23.8 4.3-33.5-3l-64-48c-8.1-6-12.8-15.5-12.8-25.6V320.9L9 97.3C-.7 85.4-2.8 68.8 3.9 54.9z"/></svg>
@@ -1 +1 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--!Font Awesome Pro 6.5.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2024 Fonticons, Inc.--><path d="M0 73.7C0 50.7 18.7 32 41.7 32H470.3c23 0 41.7 18.7 41.7 41.7c0 9.6-3.3 18.9-9.4 26.3L336 304.5V447.7c0 17.8-14.5 32.3-32.3 32.3c-7.3 0-14.4-2.5-20.1-7l-92.5-73.4c-9.6-7.6-15.1-19.1-15.1-31.3V304.5L9.4 100C3.3 92.6 0 83.3 0 73.7zM55 80L218.6 280.8c3.5 4.3 5.4 9.6 5.4 15.2v68.4l64 50.8V296c0-5.5 1.9-10.9 5.4-15.2L457 80H55z"/></svg>
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--!Font Awesome Pro 6.5.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2024 Fonticons, Inc.--><path d="M0 73.7C0 50.7 18.7 32 41.7 32H470.3c23 0 41.7 18.7 41.7 41.7c0 9.6-3.3 18.9-9.4 26.3L336 304.5V447.7c0 17.8-14.5 32.3-32.3 32.3c-7.3 0-14.4-2.5-20.1-7l-92.5-73.4c-9.6-7.6-15.1-19.1-15.1-31.3V304.5L9.4 100C3.3 92.6 0 83.3 0 73.7zM55 80L218.6 280.8c3.5 4.3 5.4 9.6 5.4 15.2v68.4l64 50.8V296c0-5.5 1.9-10.9 5.4-15.2L457 80H55z"/></svg>
@@ -1 +1 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--!Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--><path d="M181.3 32.4c17.4 2.9 29.2 19.4 26.3 36.8L197.8 128l95.1 0 11.5-69.3c2.9-17.4 19.4-29.2 36.8-26.3s29.2 19.4 26.3 36.8L357.8 128l58.2 0c17.7 0 32 14.3 32 32s-14.3 32-32 32l-68.9 0L325.8 320l58.2 0c17.7 0 32 14.3 32 32s-14.3 32-32 32l-68.9 0-11.5 69.3c-2.9 17.4-19.4 29.2-36.8 26.3s-29.2-19.4-26.3-36.8l9.8-58.7-95.1 0-11.5 69.3c-2.9 17.4-19.4 29.2-36.8 26.3s-29.2-19.4-26.3-36.8L90.2 384 32 384c-17.7 0-32-14.3-32-32s14.3-32 32-32l68.9 0 21.3-128L64 192c-17.7 0-32-14.3-32-32s14.3-32 32-32l68.9 0 11.5-69.3c2.9-17.4 19.4-29.2 36.8-26.3zM187.1 192L165.8 320l95.1 0 21.3-128-95.1 0z"/></svg>
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--!Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--><path d="M181.3 32.4c17.4 2.9 29.2 19.4 26.3 36.8L197.8 128l95.1 0 11.5-69.3c2.9-17.4 19.4-29.2 36.8-26.3s29.2 19.4 26.3 36.8L357.8 128l58.2 0c17.7 0 32 14.3 32 32s-14.3 32-32 32l-68.9 0L325.8 320l58.2 0c17.7 0 32 14.3 32 32s-14.3 32-32 32l-68.9 0-11.5 69.3c-2.9 17.4-19.4 29.2-36.8 26.3s-29.2-19.4-26.3-36.8l9.8-58.7-95.1 0-11.5 69.3c-2.9 17.4-19.4 29.2-36.8 26.3s-29.2-19.4-26.3-36.8L90.2 384 32 384c-17.7 0-32-14.3-32-32s14.3-32 32-32l68.9 0 21.3-128L64 192c-17.7 0-32-14.3-32-32s14.3-32 32-32l68.9 0 11.5-69.3c2.9-17.4 19.4-29.2 36.8-26.3zM187.1 192L165.8 320l95.1 0 21.3-128-95.1 0z"/></svg>
@@ -1 +1 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 512"><!--!Font Awesome Pro 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2024 Fonticons, Inc.--><path d="M38.8 5.1C28.4-3.1 13.3-1.2 5.1 9.2S-1.2 34.7 9.2 42.9l592 464c10.4 8.2 25.5 6.3 33.7-4.1s6.3-25.5-4.1-33.7l-55.5-43.5c.5-3.1 .7-6.3 .7-9.6l0-320c0-35.3-28.7-64-64-64L128 32c-14.4 0-27.8 4.8-38.5 12.9L38.8 5.1zM134.4 80L512 80c8.8 0 16 7.2 16 16l0 292.5-53.4-41.9L387 233.3c-4.5-5.9-11.6-9.3-19-9.3s-14.4 3.4-19 9.3l-7.2 9.3L256 175.3c-.4-26.2-21.7-47.3-48-47.3c-3.7 0-7.4 .4-10.8 1.2L134.4 80zm353 400L282.9 318.9 266 340.7l-30.5-42.7C231 291.7 223.8 288 216 288s-15 3.7-19.5 10.1l-80 112-4.5 6.3 0-.3 0-231.8L64 146.4 64 416c0 35.3 28.7 64 64 64l359.4 0z"/></svg>
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 512"><!--!Font Awesome Pro 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2024 Fonticons, Inc.--><path d="M38.8 5.1C28.4-3.1 13.3-1.2 5.1 9.2S-1.2 34.7 9.2 42.9l592 464c10.4 8.2 25.5 6.3 33.7-4.1s6.3-25.5-4.1-33.7l-55.5-43.5c.5-3.1 .7-6.3 .7-9.6l0-320c0-35.3-28.7-64-64-64L128 32c-14.4 0-27.8 4.8-38.5 12.9L38.8 5.1zM134.4 80L512 80c8.8 0 16 7.2 16 16l0 292.5-53.4-41.9L387 233.3c-4.5-5.9-11.6-9.3-19-9.3s-14.4 3.4-19 9.3l-7.2 9.3L256 175.3c-.4-26.2-21.7-47.3-48-47.3c-3.7 0-7.4 .4-10.8 1.2L134.4 80zm353 400L282.9 318.9 266 340.7l-30.5-42.7C231 291.7 223.8 288 216 288s-15 3.7-19.5 10.1l-80 112-4.5 6.3 0-.3 0-231.8L64 146.4 64 416c0 35.3 28.7 64 64 64l359.4 0z"/></svg>
@@ -1 +1 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--!Font Awesome Pro 6.5.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2024 Fonticons, Inc.--><path d="M9.4 278.6c-12.5-12.5-12.5-32.8 0-45.3l160-160c9.2-9.2 22.9-11.9 34.9-6.9s19.8 16.6 19.8 29.6l0 96 184 0c22.1 0 40 17.9 40 40l0 48c0 22.1-17.9 40-40 40l-184 0 0 96c0 12.9-7.8 24.6-19.8 29.6s-25.7 2.2-34.9-6.9l-160-160z"/></svg>
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--!Font Awesome Pro 6.5.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2024 Fonticons, Inc.--><path d="M9.4 278.6c-12.5-12.5-12.5-32.8 0-45.3l160-160c9.2-9.2 22.9-11.9 34.9-6.9s19.8 16.6 19.8 29.6l0 96 184 0c22.1 0 40 17.9 40 40l0 48c0 22.1-17.9 40-40 40l-184 0 0 96c0 12.9-7.8 24.6-19.8 29.6s-25.7 2.2-34.9-6.9l-160-160z"/></svg>
@@ -1 +1 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--!Font Awesome Pro 6.5.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2024 Fonticons, Inc.--><path d="M368 208A160 160 0 1 0 48 208a160 160 0 1 0 320 0zM337.1 371.1C301.7 399.2 256.8 416 208 416C93.1 416 0 322.9 0 208S93.1 0 208 0S416 93.1 416 208c0 48.8-16.8 93.7-44.9 129.1L505 471c9.4 9.4 9.4 24.6 0 33.9s-24.6 9.4-33.9 0L337.1 371.1z"/></svg>
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--!Font Awesome Pro 6.5.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2024 Fonticons, Inc.--><path d="M368 208A160 160 0 1 0 48 208a160 160 0 1 0 320 0zM337.1 371.1C301.7 399.2 256.8 416 208 416C93.1 416 0 322.9 0 208S93.1 0 208 0S416 93.1 416 208c0 48.8-16.8 93.7-44.9 129.1L505 471c9.4 9.4 9.4 24.6 0 33.9s-24.6 9.4-33.9 0L337.1 371.1z"/></svg>
@@ -1 +1 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--!Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--><path d="M164.9 24.6c-7.7-18.6-28-28.5-47.4-23.2l-88 24C12.1 30.2 0 46 0 64C0 311.4 200.6 512 448 512c18 0 33.8-12.1 38.6-29.5l24-88c5.3-19.4-4.6-39.7-23.2-47.4l-96-40c-16.3-6.8-35.2-2.1-46.3 11.6L304.7 368C234.3 334.7 177.3 277.7 144 207.3L193.3 167c13.7-11.2 18.4-30 11.6-46.3l-40-96z"/></svg>
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--!Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--><path d="M164.9 24.6c-7.7-18.6-28-28.5-47.4-23.2l-88 24C12.1 30.2 0 46 0 64C0 311.4 200.6 512 448 512c18 0 33.8-12.1 38.6-29.5l24-88c5.3-19.4-4.6-39.7-23.2-47.4l-96-40c-16.3-6.8-35.2-2.1-46.3 11.6L304.7 368C234.3 334.7 177.3 277.7 144 207.3L193.3 167c13.7-11.2 18.4-30 11.6-46.3l-40-96z"/></svg>
@@ -1 +1 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--!Font Awesome Pro 6.5.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2024 Fonticons, Inc.--><path d="M438.6 233.4c12.5 12.5 12.5 32.8 0 45.3l-160 160c-9.2 9.2-22.9 11.9-34.9 6.9s-19.8-16.6-19.8-29.6l0-96L40 320c-22.1 0-40-17.9-40-40l0-48c0-22.1 17.9-40 40-40l184 0 0-96c0-12.9 7.8-24.6 19.8-29.6s25.7-2.2 34.9 6.9l160 160z"/></svg>
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--!Font Awesome Pro 6.5.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2024 Fonticons, Inc.--><path d="M438.6 233.4c12.5 12.5 12.5 32.8 0 45.3l-160 160c-9.2 9.2-22.9 11.9-34.9 6.9s-19.8-16.6-19.8-29.6l0-96L40 320c-22.1 0-40-17.9-40-40l0-48c0-22.1 17.9-40 40-40l184 0 0-96c0-12.9 7.8-24.6 19.8-29.6s25.7-2.2 34.9 6.9l160 160z"/></svg>
@@ -1 +1 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" height="16" width="16" viewBox="0 0 512 512"><!--!Font Awesome Pro 6.5.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2024 Fonticons, Inc.--><path opacity="1" d="M457 372c11.5 6.6 26.3 2.7 31.8-9.3C503.7 330.2 512 294.1 512 256C512 122.7 410.1 13.2 280 1.1C266.8-.1 256 10.7 256 24s10.8 23.9 24 25.4C383.5 61.2 464 149.2 464 256c0 29.3-6.1 57.3-17 82.6c-5.3 12.2-1.5 26.8 10 33.5z"/></svg>
1
+ <svg xmlns="http://www.w3.org/2000/svg" height="16" width="16" viewBox="0 0 512 512"><!--!Font Awesome Pro 6.5.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2024 Fonticons, Inc.--><path opacity="1" d="M457 372c11.5 6.6 26.3 2.7 31.8-9.3C503.7 330.2 512 294.1 512 256C512 122.7 410.1 13.2 280 1.1C266.8-.1 256 10.7 256 24s10.8 23.9 24 25.4C383.5 61.2 464 149.2 464 256c0 29.3-6.1 57.3-17 82.6c-5.3 12.2-1.5 26.8 10 33.5z"/></svg>
@@ -1 +1 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--!Font Awesome Pro 6.5.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2024 Fonticons, Inc.--><path d="M48 416V160H232V432H64c-8.8 0-16-7.2-16-16zm232 16V160H464V416c0 8.8-7.2 16-16 16H280zM64 32C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H448c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64H64z"/></svg>
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--!Font Awesome Pro 6.5.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2024 Fonticons, Inc.--><path d="M48 416V160H232V432H64c-8.8 0-16-7.2-16-16zm232 16V160H464V416c0 8.8-7.2 16-16 16H280zM64 32C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H448c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64H64z"/></svg>
@@ -1 +1 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512"><!--!Font Awesome Pro 6.5.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2024 Fonticons, Inc.--><path d="M169.4 41.4c12.5-12.5 32.8-12.5 45.3 0l160 160c9.2 9.2 11.9 22.9 6.9 34.9s-16.6 19.8-29.6 19.8H256V440c0 22.1-17.9 40-40 40H168c-22.1 0-40-17.9-40-40V256H32c-12.9 0-24.6-7.8-29.6-19.8s-2.2-25.7 6.9-34.9l160-160z"/></svg>
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512"><!--!Font Awesome Pro 6.5.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2024 Fonticons, Inc.--><path d="M169.4 41.4c12.5-12.5 32.8-12.5 45.3 0l160 160c9.2 9.2 11.9 22.9 6.9 34.9s-16.6 19.8-29.6 19.8H256V440c0 22.1-17.9 40-40 40H168c-22.1 0-40-17.9-40-40V256H32c-12.9 0-24.6-7.8-29.6-19.8s-2.2-25.7 6.9-34.9l160-160z"/></svg>
@@ -1 +1 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--!Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--><path d="M96 128a128 128 0 1 0 256 0A128 128 0 1 0 96 128zm94.5 200.2l18.6 31L175.8 483.1l-36-146.9c-2-8.1-9.8-13.4-17.9-11.3C51.9 342.4 0 405.8 0 481.3c0 17 13.8 30.7 30.7 30.7l131.7 0c0 0 0 0 .1 0l5.5 0 112 0 5.5 0c0 0 0 0 .1 0l131.7 0c17 0 30.7-13.8 30.7-30.7c0-75.5-51.9-138.9-121.9-156.4c-8.1-2-15.9 3.3-17.9 11.3l-36 146.9L238.9 359.2l18.6-31c6.4-10.7-1.3-24.2-13.7-24.2L224 304l-19.7 0c-12.4 0-20.1 13.6-13.7 24.2z"/></svg>
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--!Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--><path d="M96 128a128 128 0 1 0 256 0A128 128 0 1 0 96 128zm94.5 200.2l18.6 31L175.8 483.1l-36-146.9c-2-8.1-9.8-13.4-17.9-11.3C51.9 342.4 0 405.8 0 481.3c0 17 13.8 30.7 30.7 30.7l131.7 0c0 0 0 0 .1 0l5.5 0 112 0 5.5 0c0 0 0 0 .1 0l131.7 0c17 0 30.7-13.8 30.7-30.7c0-75.5-51.9-138.9-121.9-156.4c-8.1-2-15.9 3.3-17.9 11.3l-36 146.9L238.9 359.2l18.6-31c6.4-10.7-1.3-24.2-13.7-24.2L224 304l-19.7 0c-12.4 0-20.1 13.6-13.7 24.2z"/></svg>
@@ -1,10 +1,9 @@
1
- import { AdvancedRequestRow, ConditionDTO, OrderByDTO } from '../../../services/advancedRequests';
1
+ import { ConditionDTO, OrderByDTO } from '../../../services/advancedRequests';
2
2
  import { DataGridProps } from './types';
3
3
  export type AdvancedRequestDataGridProps<R> = Omit<DataGridProps<R>, 'rows'> & {
4
4
  type: string;
5
5
  orderBy?: OrderByDTO[];
6
6
  conditions?: ConditionDTO[];
7
7
  addIdColumn?: boolean;
8
- parser?: (row: AdvancedRequestRow<R>) => R;
9
8
  };
10
9
  export declare const AdvancedRequestDataGrid: <R>(props: AdvancedRequestDataGridProps<R>) => import("react/jsx-runtime").JSX.Element;
@@ -93,14 +93,13 @@ var AdvancedRequestDataGrid = function (props) {
93
93
  getTotal: getTotal,
94
94
  })).then(function (response) {
95
95
  var _a;
96
- var _b, _c;
96
+ var _b;
97
97
  if (getTotal) {
98
98
  currentRows.current = Array(response.total).fill(null);
99
99
  if (getTotal)
100
100
  setTotal((_b = response.total) !== null && _b !== void 0 ? _b : 0);
101
101
  }
102
- var parsedRows = response.data.map((_c = props.parser) !== null && _c !== void 0 ? _c : (function (row) { return row; }));
103
- (_a = currentRows.current).splice.apply(_a, __spreadArray([start, length], parsedRows, false));
102
+ (_a = currentRows.current).splice.apply(_a, __spreadArray([start, length], response.data, false));
104
103
  setRows(__spreadArray([], currentRows.current, true));
105
104
  });
106
105
  }, 100));
@@ -151,14 +150,13 @@ var AdvancedRequestDataGrid = function (props) {
151
150
  orderBy: orderBy,
152
151
  start: 0,
153
152
  length: total,
154
- })).then(function (response) { var _a; return response.data.map((_a = props.parser) !== null && _a !== void 0 ? _a : (function (row) { return row; })); });
153
+ })).then(function (response) { return response.data; });
155
154
  }, [
156
155
  advancedRequest,
157
156
  conditions,
158
157
  orderBy,
159
158
  props.columns,
160
159
  props.conditions,
161
- props.parser,
162
160
  props.type,
163
161
  total,
164
162
  ]);
@@ -1,2 +1,2 @@
1
1
  import { DataGridCellProps } from './types';
2
- export declare const DataGridCell: <R>({ row, rowIndex, columnKey, columnIndex, column, context, className, style, }: DataGridCellProps<R>) => import("react/jsx-runtime").JSX.Element;
2
+ export declare const DataGridCell: <R>({ row, rowIndex, columnKey, columnIndex, column, context, style, }: DataGridCellProps<R>) => import("react/jsx-runtime").JSX.Element;
@@ -30,18 +30,18 @@ var jsx_runtime_1 = require("react/jsx-runtime");
30
30
  var styles = __importStar(require("./styles"));
31
31
  var react_1 = require("react");
32
32
  var DataGridEditableCell_1 = require("./DataGridEditableCell");
33
- var lodash_1 = require("lodash");
34
33
  var hooks_1 = require("./hooks");
35
34
  var defaultRender = function (row, col) {
36
35
  var value = col.propertyName ? row[col.propertyName] : '';
37
36
  return !value ? '' : String(value);
38
37
  };
39
38
  var DataGridCell = function (_a) {
40
- var _b;
41
- var row = _a.row, rowIndex = _a.rowIndex, columnKey = _a.columnKey, columnIndex = _a.columnIndex, column = _a.column, context = _a.context, className = _a.className, style = _a.style;
42
- var _c = (0, hooks_1.useDataGridContext)(context), name = _c.name, editable = _c.editable, _d = _c.editingCell, editingCell = _d === void 0 ? [-1, -1] : _d, setEditingCell = _c.setEditingCell, onRowDoubleClick = _c.onRowDoubleClick;
39
+ var _b, _c;
40
+ var row = _a.row, rowIndex = _a.rowIndex, columnKey = _a.columnKey, columnIndex = _a.columnIndex, column = _a.column, context = _a.context, style = _a.style;
41
+ var _d = (0, hooks_1.useDataGridContext)(context), name = _d.name, editable = _d.editable, _e = _d.editingCell, editingCell = _e === void 0 ? [-1, -1] : _e, setEditingCell = _d.setEditingCell, onRowDoubleClick = _d.onRowDoubleClick;
43
42
  var isEditable = !!editable && !!column.editable && column.type && column.getter;
44
43
  var isEditing = isEditable && editingCell[0] === rowIndex && editingCell[1] === columnIndex;
44
+ var DataGridCellComponent = (_b = column.component) !== null && _b !== void 0 ? _b : styles.DataGridCell;
45
45
  var onDoubleClick = (0, react_1.useCallback)(function (e) {
46
46
  e.stopPropagation();
47
47
  e.preventDefault();
@@ -54,6 +54,6 @@ var DataGridCell = function (_a) {
54
54
  if (isEditing) {
55
55
  return ((0, jsx_runtime_1.jsx)(DataGridEditableCell_1.DataGridEditableCell, { row: row, rowIndex: rowIndex, columnKey: columnKey, columnIndex: columnIndex, column: column, context: context }, "".concat(name, "-").concat(rowIndex, "-").concat(columnIndex)));
56
56
  }
57
- return ((0, jsx_runtime_1.jsx)(styles.DataGridCell, { className: (0, lodash_1.join)([className, column.className, column.bodyClassName], ' '), onDoubleClick: onDoubleClick, style: style, children: ((_b = column.render) !== null && _b !== void 0 ? _b : defaultRender)(row, column) }, "".concat(name, "-").concat(rowIndex, "-").concat(columnIndex)));
57
+ return ((0, jsx_runtime_1.jsx)(DataGridCellComponent, { onDoubleClick: onDoubleClick, style: style, children: ((_c = column.render) !== null && _c !== void 0 ? _c : defaultRender)(row, column) }, "".concat(name, "-").concat(rowIndex, "-").concat(columnIndex)));
58
58
  };
59
59
  exports.DataGridCell = DataGridCell;
@@ -5,7 +5,6 @@ var jsx_runtime_1 = require("react/jsx-runtime");
5
5
  /* eslint-disable @typescript-eslint/no-explicit-any */
6
6
  /* eslint-disable @typescript-eslint/no-unnecessary-type-constraint */
7
7
  var react_1 = require("react");
8
- var lodash_1 = require("lodash");
9
8
  var hooks_1 = require("./hooks");
10
9
  var DataGridEditableCell = function (_a) {
11
10
  var row = _a.row, columnKey = _a.columnKey, column = _a.column, context = _a.context;
@@ -19,13 +18,9 @@ var DataGridEditableCell = function (_a) {
19
18
  onCellEdited === null || onCellEdited === void 0 ? void 0 : onCellEdited(row, columnKey, value);
20
19
  setEditingCell([-1, -1]);
21
20
  }, [columnKey, onCellEdited, row, setEditingCell, value]);
22
- return ((0, jsx_runtime_1.jsxs)("td", { className: (0, lodash_1.join)([
23
- // 'whitespace-nowrap py-1 text-sm',
24
- column.className,
25
- column.bodyClassName,
26
- ], ' '), children: [(0, jsx_runtime_1.jsx)("input", { type: "text",
21
+ return ((0, jsx_runtime_1.jsxs)("td", { children: [(0, jsx_runtime_1.jsx)("input", { type: "text",
27
22
  // className="relative z-10 block text-normal w-full border-0 py-1.5 text-gray-900 ring-1 ring-inset ring-gray-300 placeholder:text-gray-400 focus:ring-2 focus:ring-inset focus:ring-sky-600 sm:text-sm sm:leading-6"
28
- value: value, onChange: function (e) { return setValue(e.target.value); } }), (0, jsx_runtime_1.jsx)("div", {
23
+ value: String(value), onChange: function (e) { return setValue(e.target.value); } }), (0, jsx_runtime_1.jsx)("div", {
29
24
  // className="fixed inset-0 bg-black bg-opacity-10"
30
25
  onClick: onClose })] }, columnKey));
31
26
  };
@@ -56,14 +56,14 @@ var FilterValuesScroller_1 = require("../FilterValuesScroller");
56
56
  var forms_1 = require("../../../forms");
57
57
  var hooks_1 = require("./hooks");
58
58
  var DataGridFilterMenu = function (_a) {
59
- var _b, _c;
59
+ var _b, _c, _d;
60
60
  var columnKey = _a.columnKey, context = _a.context, onClose = _a.onClose;
61
- var _d = (0, hooks_1.useFilterModal)({ columnKey: columnKey, context: context }), openModal = _d.openModal, modal = _d.modal;
62
- var _e = (0, react_1.useContext)(context), _f = _e.filters, filters = _f === void 0 ? {} : _f, rows = _e.rows, columns = _e.columns, setFilters = _e.setFilters, filterValuesLoader = _e.filterValuesLoader;
61
+ var _e = (0, hooks_1.useFilterModal)({ columnKey: columnKey, context: context }), openModal = _e.openModal, modal = _e.modal;
62
+ var _f = (0, react_1.useContext)(context), _g = _f.filters, filters = _g === void 0 ? {} : _g, rows = _f.rows, columns = _f.columns, setFilters = _f.setFilters, filterValuesLoader = _f.filterValuesLoader;
63
63
  var column = (_b = columns[columnKey]) !== null && _b !== void 0 ? _b : {};
64
64
  var textFilterInputRef = (0, react_1.useRef)(null);
65
- var _g = (0, react_1.useState)(''), textFilter = _g[0], setTextFilter = _g[1];
66
- var _h = (0, react_1.useState)([]), availableValues = _h[0], setAvailableValues = _h[1];
65
+ var _h = (0, react_1.useState)(''), textFilter = _h[0], setTextFilter = _h[1];
66
+ var _j = (0, react_1.useState)([]), availableValues = _j[0], setAvailableValues = _j[1];
67
67
  (0, react_1.useEffect)(function () {
68
68
  if (filterValuesLoader) {
69
69
  filterValuesLoader(columnKey).then(function (values) {
@@ -111,7 +111,8 @@ var DataGridFilterMenu = function (_a) {
111
111
  var checked = (0, lodash_1.intersection)(selectedValues, values).length === values.length;
112
112
  setValuesChecked(values, !checked);
113
113
  }, [setValuesChecked, selectedValues]);
114
- var formatter = (0, react_1.useMemo)(function () { var _a, _b; return (_b = (_a = column.filter) === null || _a === void 0 ? void 0 : _a.formatter) !== null && _b !== void 0 ? _b : (function (v) { return (v === null ? null : String(v)); }); }, [(_c = column.filter) === null || _c === void 0 ? void 0 : _c.formatter]);
114
+ var formatter = (0, react_1.useMemo)(function () { var _a, _b; return (_b = (_a = column.filter) === null || _a === void 0 ? void 0 : _a.formatter) !== null && _b !== void 0 ? _b : helpers_1.defaultRendererAndFormatter; }, [(_c = column.filter) === null || _c === void 0 ? void 0 : _c.formatter]);
115
+ var renderer = (0, react_1.useMemo)(function () { var _a, _b; return (_b = (_a = column.filter) === null || _a === void 0 ? void 0 : _a.renderer) !== null && _b !== void 0 ? _b : helpers_1.defaultRendererAndFormatter; }, [(_d = column.filter) === null || _d === void 0 ? void 0 : _d.renderer]);
115
116
  var filteredAvailableValues = (0, react_1.useMemo)(function () {
116
117
  return !textFilter
117
118
  ? availableValues
@@ -125,13 +126,14 @@ var DataGridFilterMenu = function (_a) {
125
126
  var checkboxesComponent = (0, react_1.useMemo)(function () {
126
127
  if (column.type === 'date') {
127
128
  var groups = (0, helpers_1.getDateGroups)(filteredAvailableValues);
128
- return ((0, jsx_runtime_1.jsx)(FilterValuesScroller_1.FilterValuesScroller, { values: filteredAvailableValues, selectedValues: selectedValues, onToggle: toggleValues, formatter: formatter, groups: groups }));
129
+ return ((0, jsx_runtime_1.jsx)(FilterValuesScroller_1.FilterValuesScroller, { values: filteredAvailableValues, selectedValues: selectedValues, onToggle: toggleValues, formatter: formatter, renderer: renderer, groups: groups }));
129
130
  }
130
- return ((0, jsx_runtime_1.jsx)(FilterValuesScroller_1.FilterValuesScroller, { values: filteredAvailableValues, selectedValues: selectedValues, onToggle: toggleValues, formatter: formatter }));
131
+ return ((0, jsx_runtime_1.jsx)(FilterValuesScroller_1.FilterValuesScroller, { values: filteredAvailableValues, selectedValues: selectedValues, onToggle: toggleValues, formatter: formatter, renderer: renderer }));
131
132
  }, [
132
133
  column.type,
133
134
  filteredAvailableValues,
134
135
  formatter,
136
+ renderer,
135
137
  selectedValues,
136
138
  toggleValues,
137
139
  ]);
@@ -3,29 +3,19 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.DataGridFooter = void 0;
4
4
  var jsx_runtime_1 = require("react/jsx-runtime");
5
5
  var getScrollbarSize_1 = require("../../../helpers/getScrollbarSize");
6
- var lodash_1 = require("lodash");
7
6
  var hooks_1 = require("./hooks");
8
7
  var SCROLL_BAR_SIZE = (0, getScrollbarSize_1.getScrollBarSize)();
9
8
  var DataGridFooter = function (_a) {
10
9
  var context = _a.context;
11
10
  var _b = (0, hooks_1.useDataGridContext)(context), visibleColumns = _b.visibleColumns, rows = _b.rows, selectedRows = _b.selectedRows, sortedRows = _b.sortedRows, _c = _b.rowHeight, rowHeight = _c === void 0 ? 48 : _c, selectable = _b.selectable;
12
- return ((0, jsx_runtime_1.jsx)("tfoot", {
13
- // className="block border-t border-t-gray-300"
14
- style: {
11
+ return ((0, jsx_runtime_1.jsx)("tfoot", { style: {
15
12
  paddingRight: "".concat(SCROLL_BAR_SIZE[0], "px"),
16
- }, children: (0, jsx_runtime_1.jsxs)("tr", {
17
- // className="grid bg-gray-100"
18
- style: {
13
+ }, children: (0, jsx_runtime_1.jsxs)("tr", { style: {
19
14
  height: "".concat(rowHeight, "px"),
20
- }, children: [!!selectable && ((0, jsx_runtime_1.jsx)("div", {}, "__select_checkbox__")), visibleColumns.map(function (_a) {
15
+ }, children: [!!selectable && (0, jsx_runtime_1.jsx)("div", {}, "__select_checkbox__"), visibleColumns.map(function (_a) {
21
16
  var _b, _c;
22
17
  var key = _a[0], col = _a[1];
23
- return ((0, jsx_runtime_1.jsx)("div", { className: (0, lodash_1.join)([
24
- // 'inline-block relative group px-3 py-0 text-left text-sm hover:bg-gray-50 leading-6',
25
- col.className,
26
- col.footerClassName,
27
- // '!overflow-visible',
28
- ], ' '), style: { width: ((_b = col.width) !== null && _b !== void 0 ? _b : 150) + 'px' }, children: (_c = col.footer) === null || _c === void 0 ? void 0 : _c.call(col, rows, sortedRows, selectedRows) }, key));
18
+ return ((0, jsx_runtime_1.jsx)("div", { style: { width: ((_b = col.width) !== null && _b !== void 0 ? _b : 150) + 'px' }, children: (_c = col.footer) === null || _c === void 0 ? void 0 : _c.call(col, rows, sortedRows, selectedRows) }, key));
29
19
  })] }) }));
30
20
  };
31
21
  exports.DataGridFooter = DataGridFooter;
@@ -111,9 +111,7 @@ var DataGridHeader = function (_a) {
111
111
  copyTable().then(function () { return setIsLoadingVisible(false); });
112
112
  }, [copyTable]);
113
113
  var toolsRow = ((0, jsx_runtime_1.jsxs)(styles.DataGridToolsRow, { children: [(0, jsx_runtime_1.jsx)(layout_1.Loading, { visible: isLoadingVisible }), refresh && ((0, jsx_runtime_1.jsxs)(forms_1.Button, { size: "small", onClick: refresh, children: [(0, jsx_runtime_1.jsx)(Icons_1.ArrowsRotateIcon, {}), "Rafra\u00EEchir"] })), (0, jsx_runtime_1.jsxs)(forms_1.Button, { color: "emerald", size: "small", onClick: runCopyTable, children: [(0, jsx_runtime_1.jsx)(Icons_1.CopyIcon, {}), "Copier la table"] }), (0, jsx_runtime_1.jsxs)(forms_1.Button, { size: "small", color: "danger", onClick: function () { return setFilters({}); }, children: [(0, jsx_runtime_1.jsx)(Icons_1.FilterSlashIcon, {}), "Supprimer les filtres"] }), name && ((0, jsx_runtime_1.jsxs)(forms_1.Button, { color: "info", size: "small", onClick: openModal, children: [(0, jsx_runtime_1.jsx)(Icons_1.TableColumnsIcon, {}), "Param\u00E8tres des colonnes"] }))] }));
114
- return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [modal, toolsRow, (0, jsx_runtime_1.jsxs)(styles.DataGridHeaderRow, { "$gridTemplateColumns": gridTemplateColumns, "$headerColor": headerColor, children: [!!selectable && ((0, jsx_runtime_1.jsx)(styles.SelectionCell
115
- // className="inline-flex items-center justify-center w-12 select-none"
116
- , { children: (0, jsx_runtime_1.jsx)(IndeterminateCheckbox_1.IndeterminateCheckbox, { checked: checkboxStatus, onChange: function () { return toggleAll(!checkboxStatus); } }) })), visibleColumns.map(function (_a, index) {
114
+ return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [modal, toolsRow, (0, jsx_runtime_1.jsxs)(styles.DataGridHeaderRow, { "$gridTemplateColumns": gridTemplateColumns, "$headerColor": headerColor, children: [!!selectable && ((0, jsx_runtime_1.jsx)(styles.HeaderSelectionCell, { "$headerColor": headerColor, children: (0, jsx_runtime_1.jsx)(IndeterminateCheckbox_1.IndeterminateCheckbox, { checked: checkboxStatus, onChange: function () { return toggleAll(!(checkboxStatus !== null && checkboxStatus !== void 0 ? checkboxStatus : true)); } }) })), visibleColumns.map(function (_a, index) {
117
115
  var key = _a[0], col = _a[1];
118
116
  return ((0, jsx_runtime_1.jsx)(DataGridHeaderCell_1.DataGridHeaderCell, { columnKey: key, column: col, context: context, columnIndex: index, isFilterOpen: visibleFilter === key, onFilterButtonClicked: onFilterButtonClicked }, key));
119
117
  })] })] }));
@@ -36,11 +36,11 @@ var IconButton_1 = require("../../forms/IconButton");
36
36
  var hooks_1 = require("./hooks");
37
37
  var providers_1 = require("../../../providers");
38
38
  var DataGridHeaderCell = function (_a) {
39
- var _b, _c;
39
+ var _b;
40
40
  var columnKey = _a.columnKey, columnIndex = _a.columnIndex, column = _a.column, context = _a.context;
41
41
  var getElementScreenRect = (0, providers_1.useUi)().getElementScreenRect;
42
42
  var contextValue = (0, hooks_1.useDataGridContext)(context);
43
- var _d = contextValue.filters, filters = _d === void 0 ? {} : _d, _e = contextValue.sorts, sorts = _e === void 0 ? {} : _e, setSorts = contextValue.setSorts, setColumnWidth = contextValue.setColumnWidth, saveSettings = contextValue.saveSettings, headerColor = contextValue.headerColor;
43
+ var _c = contextValue.filters, filters = _c === void 0 ? {} : _c, _d = contextValue.sorts, sorts = _d === void 0 ? {} : _d, setSorts = contextValue.setSorts, setColumnWidth = contextValue.setColumnWidth, saveSettings = contextValue.saveSettings, headerColor = contextValue.headerColor;
44
44
  var filterButtonRef = (0, react_1.useRef)(null);
45
45
  /** SORTING */
46
46
  var SortIcon = sorts[columnKey]
@@ -59,7 +59,7 @@ var DataGridHeaderCell = function (_a) {
59
59
  }
60
60
  }, [setSorts, sorts]);
61
61
  /** RESIZING */
62
- var _f = (0, react_1.useState)(false), isResizing = _f[0], setIsResizing = _f[1];
62
+ var _e = (0, react_1.useState)(false), isResizing = _e[0], setIsResizing = _e[1];
63
63
  var resizingOffset = (0, react_1.useRef)(0);
64
64
  var onResizeStart = (0, react_1.useCallback)(function (e) {
65
65
  resizingOffset.current = e.screenX - (column.width || 150);
@@ -75,7 +75,7 @@ var DataGridHeaderCell = function (_a) {
75
75
  setIsResizing(false);
76
76
  saveSettings();
77
77
  }, [saveSettings]);
78
- var _g = (0, react_1.useState)(false), isFilterDropdownVisible = _g[0], setIsFilterDropdownVisible = _g[1];
78
+ var _f = (0, react_1.useState)(false), isFilterDropdownVisible = _f[0], setIsFilterDropdownVisible = _f[1];
79
79
  var filterDropdown = (0, react_1.useMemo)(function () {
80
80
  if (!isFilterDropdownVisible || !filterButtonRef.current || !columnKey) {
81
81
  return null;
@@ -94,6 +94,7 @@ var DataGridHeaderCell = function (_a) {
94
94
  var onFilterButtonClicked = (0, react_1.useCallback)(function () {
95
95
  setIsFilterDropdownVisible(true);
96
96
  }, []);
97
- return ((0, jsx_runtime_1.jsxs)(styles.DataGridHeaderCellContainer, { "$headerColor": headerColor, "$isResizing": isResizing, children: [filterDropdown, (0, jsx_runtime_1.jsx)("span", { children: column.name }), !!column.sortGetter && ((0, jsx_runtime_1.jsx)(IconButton_1.IconButton, { color: headerColor, size: "small", icon: SortIcon, onClick: function () { return onSortButtonClicked === null || onSortButtonClicked === void 0 ? void 0 : onSortButtonClicked(columnKey); } })), !!column.filter && ((0, jsx_runtime_1.jsx)(IconButton_1.IconButton, { size: "small", ref: filterButtonRef, icon: ((_b = filters[columnKey]) === null || _b === void 0 ? void 0 : _b.values.length) > 0 ? Icons_1.FilterFullIcon : Icons_1.FilterIcon, color: ((_c = filters[columnKey]) === null || _c === void 0 ? void 0 : _c.values.length) > 0 ? 'danger' : headerColor, onClick: onFilterButtonClicked })), column.resizable !== false && ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(styles.DataGridResizeGrip, { className: isResizing ? 'active' : '', "$headerColor": headerColor, onMouseDown: onResizeStart }), isResizing && ((0, jsx_runtime_1.jsx)(styles.ResizeBackdrop, { onMouseMove: onResizeMove, onMouseUp: onResizeEnd }))] }))] }));
97
+ var hasFilters = ((_b = filters[columnKey]) === null || _b === void 0 ? void 0 : _b.values.length) > 0;
98
+ return ((0, jsx_runtime_1.jsxs)(styles.DataGridHeaderCellContainer, { "$headerColor": headerColor, "$isResizing": isResizing, children: [filterDropdown, (0, jsx_runtime_1.jsx)("span", { children: column.name }), !!column.sortGetter && ((0, jsx_runtime_1.jsx)(IconButton_1.IconButton, { color: headerColor, size: "small", icon: SortIcon, onClick: function () { return onSortButtonClicked === null || onSortButtonClicked === void 0 ? void 0 : onSortButtonClicked(columnKey); } })), !!column.filter && ((0, jsx_runtime_1.jsx)(IconButton_1.IconButton, { size: "small", className: hasFilters ? 'danger' : '', ref: filterButtonRef, icon: hasFilters ? Icons_1.FilterFullIcon : Icons_1.FilterIcon, color: hasFilters ? 'danger' : headerColor, onClick: onFilterButtonClicked })), column.resizable !== false && ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(styles.DataGridResizeGrip, { className: isResizing ? 'active' : '', "$headerColor": headerColor, onMouseDown: onResizeStart }), isResizing && ((0, jsx_runtime_1.jsx)(styles.ResizeBackdrop, { onMouseMove: onResizeMove, onMouseUp: onResizeEnd }))] }))] }));
98
99
  };
99
100
  exports.DataGridHeaderCell = DataGridHeaderCell;
@@ -1,7 +1,7 @@
1
- import { DataGridFilter, DataGridFilterType } from '../types';
2
- type FilterModalContentProps<R, T extends DataGridFilterType = DataGridFilterType> = {
3
- filter: DataGridFilter<R, T>;
4
- onFilterChanged: (filter: DataGridFilter<R, T>) => void;
1
+ import { DataGridFilter } from '../types';
2
+ type FilterModalContentProps = {
3
+ filter: DataGridFilter;
4
+ onFilterChanged: (filter: DataGridFilter) => void;
5
5
  };
6
- export declare const FilterModalContent: <R, T extends DataGridFilterType = keyof import("../types").DataGridFilterPredicates>({ filter, onFilterChanged, }: FilterModalContentProps<R, T>) => import("react/jsx-runtime").JSX.Element | null;
6
+ export declare const FilterModalContent: ({ filter, onFilterChanged, }: FilterModalContentProps) => import("react/jsx-runtime").JSX.Element | null;
7
7
  export {};
@@ -83,15 +83,17 @@ var FilterModalContent = function (_a) {
83
83
  var operator = filter.operator, type = filter.type, values = filter.values;
84
84
  return ((0, jsx_runtime_1.jsxs)(styles.FilterModalContentContainer, { children: [(0, jsx_runtime_1.jsxs)("label", { htmlFor: "filterOperator", children: [(0, jsx_runtime_1.jsx)("span", { children: "Op\u00E9rateur :" }), (0, jsx_runtime_1.jsx)(forms_1.Select, { name: "filterOperator", items: Object.entries(filterOperators[filter.type]), itemKey: 0, itemLabel: 1, value: String(operator), className: "text-sm", onChange: function (e) {
85
85
  return onFilterChanged(__assign(__assign({}, filter), { operator: e.target.value }));
86
- } })] }), (0, jsx_runtime_1.jsxs)("label", { htmlFor: "filterValue1", children: [(0, jsx_runtime_1.jsxs)("span", { children: [operator === 'inRange' ? 'Entre' : 'Valeur', " :"] }), (0, jsx_runtime_1.jsx)(forms_1.Input, { ref: value1Ref, name: "filterValue1", type: filter.type, value: (_b = values[0]) !== null && _b !== void 0 ? _b : '',
87
- // className={(type === 'number' ? 'w-24 ' : '') + 'text-sm'}
88
- onChange: function (e) {
89
- var newValues = __spreadArray([], values, true);
90
- newValues[0] =
91
- type === 'number'
92
- ? Number(e.target.value)
93
- : String(e.target.value);
94
- onFilterChanged(__assign(__assign({}, filter), { values: newValues }));
86
+ } })] }), (0, jsx_runtime_1.jsxs)("label", { htmlFor: "filterValue1", children: [(0, jsx_runtime_1.jsxs)("span", { children: [operator === 'inRange' ? 'Entre' : 'Valeur', " :"] }), (0, jsx_runtime_1.jsx)(forms_1.Input, { ref: value1Ref, name: "filterValue1", type: filter.type, value: (_b = values[0]) !== null && _b !== void 0 ? _b : '', onChange: function (e) {
87
+ if (type === 'number') {
88
+ var newValues = __spreadArray([], values, true);
89
+ newValues[0] = Number(e.target.value);
90
+ onFilterChanged(__assign(__assign({}, filter), { values: newValues }));
91
+ }
92
+ else {
93
+ var newValues = __spreadArray([], values, true);
94
+ newValues[0] = String(e.target.value);
95
+ onFilterChanged(__assign(__assign({}, filter), { values: newValues }));
96
+ }
95
97
  } })] }), operator === 'inRange' && ((0, jsx_runtime_1.jsxs)("label", { htmlFor: "filterValue2", children: [(0, jsx_runtime_1.jsx)("span", { children: "et" }), (0, jsx_runtime_1.jsx)("input", { name: "filterValue2", type: filter.type, value: (_c = values[1]) !== null && _c !== void 0 ? _c : '',
96
98
  // className="text-sm w-24"
97
99
  onChange: function (e) {
@@ -1,12 +1,13 @@
1
- import { DataGridFilterFormatter, DataGridFilterGroup } from './types';
2
- type FilterValuesScrollerProps<R extends string | number | null> = {
3
- values: R[];
1
+ import { DataGridFilterFormatter, DataGridFilterGroup, DataGridFilterRenderer, DataGridFilterValue } from './types';
2
+ type FilterValuesScrollerProps = {
3
+ values: DataGridFilterValue[];
4
4
  rowHeight?: number;
5
5
  formatter: DataGridFilterFormatter;
6
+ renderer: DataGridFilterRenderer;
6
7
  onRangeChange?: (startIndex: number, length: number) => void;
7
- onToggle?: (values: R[]) => void;
8
- selectedValues?: R[];
9
- groups?: DataGridFilterGroup<R>[];
8
+ onToggle?: (values: DataGridFilterValue[]) => void;
9
+ selectedValues?: DataGridFilterValue[];
10
+ groups?: DataGridFilterGroup[];
10
11
  };
11
- export declare const FilterValuesScroller: <R extends string | number | null>({ values, rowHeight, onRangeChange, onToggle, formatter, selectedValues, groups, }: FilterValuesScrollerProps<R>) => import("react/jsx-runtime").JSX.Element;
12
+ export declare const FilterValuesScroller: ({ values, rowHeight, onRangeChange, onToggle, formatter, renderer, selectedValues, groups, }: FilterValuesScrollerProps) => import("react/jsx-runtime").JSX.Element;
12
13
  export {};
@@ -39,23 +39,22 @@ var jsx_runtime_1 = require("react/jsx-runtime");
39
39
  /* eslint-disable @typescript-eslint/no-explicit-any */
40
40
  var styles = __importStar(require("./styles"));
41
41
  var lodash_1 = require("lodash");
42
- var react_1 = require("react");
43
42
  var helpers_1 = require("./helpers");
43
+ var react_1 = require("react");
44
44
  var hooks_1 = require("../../../hooks");
45
- var defaultFormatter = function (value) { return (value == null ? null : String(value)); };
46
45
  var CheckboxTemplate = function (_a) {
47
46
  var selectedValues = _a.selectedValues, value = _a.value, index = _a.index, className = _a.className, style = _a.style, onToggle = _a.onToggle;
48
47
  return ((0, jsx_runtime_1.jsxs)("div", { className: (0, lodash_1.join)([
49
48
  // 'absolute left-0 right-0 flex flex-row cursor-pointer hover:bg-gray-50',
50
49
  className,
51
- ], ' '), style: __assign(__assign({}, style), { paddingLeft: "".concat(value.level, "rem") }), title: value.displayValue || '(Vides)', onClick: function () { return onToggle === null || onToggle === void 0 ? void 0 : onToggle(value.values); }, children: [(0, jsx_runtime_1.jsx)("input", { type: "checkbox", checked: selectedValues.includes(value.values[0]), readOnly: true }), (0, jsx_runtime_1.jsx)("span", { children: value.displayValue || '(Vides)' })] }, index));
50
+ ], ' '), style: __assign(__assign({}, style), { paddingLeft: "".concat(value.level, "rem") }), title: value.title, onClick: function () { return onToggle === null || onToggle === void 0 ? void 0 : onToggle([value.value]); }, children: [(0, jsx_runtime_1.jsx)("input", { type: "checkbox", checked: selectedValues.includes(value.value), readOnly: true }), (0, jsx_runtime_1.jsx)("span", { children: value.displayValue || '(Vides)' })] }, index));
52
51
  };
53
52
  var FilterValuesScroller = function (_a) {
54
- var values = _a.values, _b = _a.rowHeight, rowHeight = _b === void 0 ? styles.DEFAULT_FILTER_ROW_HEIGHT : _b, onRangeChange = _a.onRangeChange, onToggle = _a.onToggle, _c = _a.formatter, formatter = _c === void 0 ? defaultFormatter : _c, _d = _a.selectedValues, selectedValues = _d === void 0 ? [] : _d, groups = _a.groups;
53
+ var values = _a.values, _b = _a.rowHeight, rowHeight = _b === void 0 ? styles.DEFAULT_FILTER_ROW_HEIGHT : _b, onRangeChange = _a.onRangeChange, onToggle = _a.onToggle, _c = _a.formatter, formatter = _c === void 0 ? helpers_1.defaultRendererAndFormatter : _c, _d = _a.renderer, renderer = _d === void 0 ? helpers_1.defaultRendererAndFormatter : _d, _e = _a.selectedValues, selectedValues = _e === void 0 ? [] : _e, groups = _a.groups;
55
54
  var scrollableRef = (0, react_1.useRef)(null);
56
55
  var height = (0, hooks_1.useElementSize)(scrollableRef.current).height;
57
56
  var tolerance = 20;
58
- var _e = (0, react_1.useState)(0), scrollTop = _e[0], setScrollTop = _e[1];
57
+ var _f = (0, react_1.useState)(0), scrollTop = _f[0], setScrollTop = _f[1];
59
58
  var index = Math.floor(scrollTop / rowHeight);
60
59
  var length = Math.ceil(height / rowHeight);
61
60
  // eslint-disable-next-line react-hooks/exhaustive-deps
@@ -63,7 +62,7 @@ var FilterValuesScroller = function (_a) {
63
62
  var target = e.target;
64
63
  setScrollTop(function () { return target.scrollTop; });
65
64
  }, 50), []);
66
- var checkboxes = (0, react_1.useMemo)(function () { return (0, helpers_1.getCheckboxes)(values, formatter !== null && formatter !== void 0 ? formatter : defaultFormatter, groups); }, [values, groups, formatter]);
65
+ var checkboxes = (0, react_1.useMemo)(function () { return (0, helpers_1.getCheckboxes)(values, renderer, formatter, groups); }, [values, groups, renderer, formatter]);
67
66
  var visibleCheckboxes = checkboxes.slice(Math.max(0, index - tolerance), index + length + 1 + tolerance);
68
67
  var firstCheckboxTop = Math.max(0, index - tolerance) * rowHeight;
69
68
  (0, react_1.useEffect)(function () {
@@ -19,10 +19,7 @@ var jsx_runtime_1 = require("react/jsx-runtime");
19
19
  var numbers_1 = require("../../../../helpers/numbers");
20
20
  var filters_1 = require("./filters");
21
21
  var moment_1 = __importDefault(require("moment"));
22
- var isColumnVisible = function (obj) {
23
- console.log('isColumnVisible obj=', obj);
24
- return (obj === null || obj === void 0 ? void 0 : obj.order) !== -1;
25
- };
22
+ var isColumnVisible = function (obj) { return (obj === null || obj === void 0 ? void 0 : obj.order) !== -1; };
26
23
  exports.isColumnVisible = isColumnVisible;
27
24
  var textColumn = function (key, title, options) {
28
25
  var _a;
@@ -1,4 +1,4 @@
1
- import { DataGridFilter, DataGridFilterCheckbox, DataGridFilterDataType, DataGridFilterFormatter, DataGridFilterGroup, DataGridFilterPredicates, DataGridFilterType } from '../types';
1
+ import { DataGridFilter, DataGridFilterCheckbox, DataGridFilterDataType, DataGridFilterFormatter, DataGridFilterGroup, DataGridFilterPredicates, DataGridFilterRenderer, DataGridFilterType, DataGridFilterValue } from '../types';
2
2
  export declare const filtersPredicates: DataGridFilterPredicates;
3
3
  export declare const applyFilters: <R>(rows: R[], filters: DataGridFilter[]) => R[];
4
4
  export declare const applyFilter: <R>(rows: R[], filter: DataGridFilter) => R[];
@@ -10,7 +10,8 @@ export declare const defaultValueParsers: {
10
10
  [K in DataGridFilterType]: (value: string) => DataGridFilterDataType<K>;
11
11
  };
12
12
  export declare const groupDatesByYearAndMonth: (dates: any[]) => Record<string, Record<string, any[]>>;
13
- export declare const getDateGroups: <R extends string | number | null>(dates: any[]) => DataGridFilterGroup<R>[];
14
- export declare const getCheckboxes: <R extends string | number | null>(values: R[], formatter: DataGridFilterFormatter, groups?: DataGridFilterGroup<R>[], level?: number) => DataGridFilterCheckbox<R>[];
13
+ export declare const getDateGroups: (dates: any[]) => DataGridFilterGroup[];
14
+ export declare const defaultRendererAndFormatter: (value: any) => string;
15
+ export declare const getCheckboxes: (values: DataGridFilterValue[], renderer: DataGridFilterRenderer, formatter: DataGridFilterFormatter, groups?: DataGridFilterGroup[], level?: number) => DataGridFilterCheckbox[];
15
16
  export declare const textFilter: (key: string) => DataGridFilter<"text">;
16
17
  export declare const numberFilter: (key: string) => DataGridFilter<"number">;
@@ -13,7 +13,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
13
13
  return (mod && mod.__esModule) ? mod : { "default": mod };
14
14
  };
15
15
  Object.defineProperty(exports, "__esModule", { value: true });
16
- exports.numberFilter = exports.textFilter = exports.getCheckboxes = exports.getDateGroups = exports.groupDatesByYearAndMonth = exports.defaultValueParsers = exports.defaultFilterValues = exports.defaultFilterGetter = exports.applyFilter = exports.applyFilters = exports.filtersPredicates = void 0;
16
+ exports.numberFilter = exports.textFilter = exports.getCheckboxes = exports.defaultRendererAndFormatter = exports.getDateGroups = exports.groupDatesByYearAndMonth = exports.defaultValueParsers = exports.defaultFilterValues = exports.defaultFilterGetter = exports.applyFilter = exports.applyFilters = exports.filtersPredicates = void 0;
17
17
  var moment_1 = __importDefault(require("moment"));
18
18
  var escapeRegExp = function (s) { return s.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'); };
19
19
  var textContainsPredicate = function () {
@@ -219,13 +219,21 @@ var getDateGroups = function (dates) {
219
219
  });
220
220
  };
221
221
  exports.getDateGroups = getDateGroups;
222
- var getCheckboxes = function (values, formatter, groups, level) {
222
+ var defaultRendererAndFormatter = function (value) {
223
+ return String(value !== null && value !== void 0 ? value : '').trim() || '(Vides)';
224
+ };
225
+ exports.defaultRendererAndFormatter = defaultRendererAndFormatter;
226
+ var getCheckboxes = function (values, renderer, formatter, groups, level) {
223
227
  if (level === void 0) { level = 0; }
224
228
  return __spreadArray(__spreadArray([], (groups !== null && groups !== void 0 ? groups : [])
225
- .map(function (group) { var _a; return (0, exports.getCheckboxes)((_a = group.values) !== null && _a !== void 0 ? _a : [], formatter, group.groups, level + 1); })
229
+ .map(function (group) {
230
+ var _a;
231
+ return (0, exports.getCheckboxes)((_a = group.values) !== null && _a !== void 0 ? _a : [], renderer, formatter, group.groups, level + 1);
232
+ })
226
233
  .flat(), true), values.map(function (value) { return ({
227
- displayValue: formatter(value),
228
- values: [value],
234
+ displayValue: renderer(value),
235
+ title: formatter(value),
236
+ value: value !== null && value !== void 0 ? value : '',
229
237
  level: level,
230
238
  }); }), true);
231
239
  };
@@ -67,7 +67,7 @@ var lodash_1 = require("lodash");
67
67
  var useDataGridSettings_1 = require("./useDataGridSettings");
68
68
  var hooks_1 = require("../../../../hooks");
69
69
  var useDataGrid = function (props) {
70
- var rows = props.rows, onFiltersChanged = props.onFiltersChanged, onSortsChanged = props.onSortsChanged, loadCopyRows = props.loadCopyRows, _a = props.rowHeight, rowHeight = _a === void 0 ? styles_1.DEFAULT_ROW_HEIGHT : _a, onVisibleRowsChange = props.onVisibleRowsChange, onSelectionChange = props.onSelectionChange, selectable = props.selectable;
70
+ var rows = props.rows, onFiltersChanged = props.onFiltersChanged, onSortsChanged = props.onSortsChanged, loadCopyRows = props.loadCopyRows, _a = props.rowHeight, rowHeight = _a === void 0 ? styles_1.DEFAULT_ROW_HEIGHT : _a, onVisibleRowsChange = props.onVisibleRowsChange, onSelectionChange = props.onSelectionChange, selectable = props.selectable, initialSorts = props.initialSorts;
71
71
  var _b = (0, react_1.useState)(props.columns), columns = _b[0], setColumns = _b[1];
72
72
  var visibleColumns = (0, _1.useSortedColumns)(columns);
73
73
  /** SETTINGS */
@@ -118,7 +118,7 @@ var useDataGrid = function (props) {
118
118
  /** CELL EDITING */
119
119
  var _g = (0, react_1.useState)([-1, -1]), editingCell = _g[0], setEditingCell = _g[1];
120
120
  /** ROWS SORTING **/
121
- var _h = (0, react_1.useState)({}), sorts = _h[0], setSorts = _h[1];
121
+ var _h = (0, react_1.useState)(initialSorts !== null && initialSorts !== void 0 ? initialSorts : {}), sorts = _h[0], setSorts = _h[1];
122
122
  var _j = (0, react_1.useState)(rows), sortedRows = _j[0], setSortedRows = _j[1];
123
123
  (0, react_1.useEffect)(function () {
124
124
  var sortedRows = __spreadArray([], filteredRows, true);
@@ -73,7 +73,6 @@ var useDataGridCopy = function (rows, columns, loadCopyRows) {
73
73
  ? "mso-number-format: '" + col.excelFormatter(col) + "';"
74
74
  : '', "\n white-space: nowrap;\n \">\n ").concat(generateCellText(col, value), "\n </td>"); }, [generateCellText]);
75
75
  var generateCopyHtml = (0, react_1.useCallback)(function (rowsToCopy, includeHeaders, includeFooters) {
76
- console.log('generateCopyHtml', rowsToCopy, columns);
77
76
  return "\n <table>\n ".concat(includeHeaders ? generateHeadersHtml() : '', "\n ").concat((rowsToCopy || [])
78
77
  .map(function (row) {
79
78
  return "<tr>\n ".concat(Object.values(columns !== null && columns !== void 0 ? columns : {})
@@ -11,7 +11,6 @@ var useDataGridSettings = function (name) {
11
11
  if (name) {
12
12
  var settingName = "user.datagrid.settings.".concat(name);
13
13
  var gridSettingsJson = (settings === null || settings === void 0 ? void 0 : settings[settingName]) || '{}';
14
- console.log('read datagrid settings for', settingName, gridSettingsJson);
15
14
  var gridSettings = {};
16
15
  try {
17
16
  gridSettings = JSON.parse(gridSettingsJson);