@coveord/plasma-mantine 53.1.4 → 54.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (354) hide show
  1. package/.eslintrc.js +1 -5
  2. package/.turbo/turbo-build.log +3 -3
  3. package/.turbo/turbo-test.log +36 -35
  4. package/dist/.tsbuildinfo +1 -1
  5. package/dist/cjs/components/button/Button.d.ts +1 -2
  6. package/dist/cjs/components/button/Button.d.ts.map +1 -1
  7. package/dist/cjs/components/button/Button.js.map +1 -1
  8. package/dist/cjs/components/code-editor/CodeEditor.d.ts.map +1 -1
  9. package/dist/cjs/components/code-editor/CodeEditor.js +2 -4
  10. package/dist/cjs/components/code-editor/CodeEditor.js.map +1 -1
  11. package/dist/cjs/components/header/__tests__/__snapshots__/Header.spec.tsx.snap +0 -5
  12. package/dist/cjs/components/inline-confirm/InlineConfirm.d.ts +10 -2
  13. package/dist/cjs/components/inline-confirm/InlineConfirm.d.ts.map +1 -1
  14. package/dist/cjs/components/inline-confirm/InlineConfirm.js +2 -1
  15. package/dist/cjs/components/inline-confirm/InlineConfirm.js.map +1 -1
  16. package/dist/cjs/components/inline-confirm/InlineConfirmPrompt.d.ts +2 -5
  17. package/dist/cjs/components/inline-confirm/InlineConfirmPrompt.d.ts.map +1 -1
  18. package/dist/cjs/components/inline-confirm/InlineConfirmPrompt.js +5 -5
  19. package/dist/cjs/components/inline-confirm/InlineConfirmPrompt.js.map +1 -1
  20. package/dist/cjs/components/inline-confirm/InlineConfirmTarget.d.ts +2 -2
  21. package/dist/cjs/components/inline-confirm/InlineConfirmTarget.d.ts.map +1 -1
  22. package/dist/cjs/components/inline-confirm/InlineConfirmTarget.js +3 -3
  23. package/dist/cjs/components/inline-confirm/InlineConfirmTarget.js.map +1 -1
  24. package/dist/cjs/components/table/Table.d.ts +68 -55
  25. package/dist/cjs/components/table/Table.d.ts.map +1 -1
  26. package/dist/cjs/components/table/Table.js +129 -174
  27. package/dist/cjs/components/table/Table.js.map +1 -1
  28. package/dist/cjs/components/table/Table.module.css +8 -1
  29. package/dist/cjs/components/table/Table.types.d.ts +52 -147
  30. package/dist/cjs/components/table/Table.types.d.ts.map +1 -1
  31. package/dist/cjs/components/table/TableContext.d.ts +15 -10
  32. package/dist/cjs/components/table/TableContext.d.ts.map +1 -1
  33. package/dist/cjs/components/table/TableContext.js +5 -20
  34. package/dist/cjs/components/table/TableContext.js.map +1 -1
  35. package/dist/cjs/components/table/index.d.ts +3 -3
  36. package/dist/cjs/components/table/index.d.ts.map +1 -1
  37. package/dist/cjs/components/table/index.js +5 -1
  38. package/dist/cjs/components/table/index.js.map +1 -1
  39. package/dist/cjs/components/table/layouts/TableLayoutControl.js +6 -6
  40. package/dist/cjs/components/table/layouts/TableLayoutControl.js.map +1 -1
  41. package/dist/cjs/components/table/layouts/TableLayouts.d.ts +1 -22
  42. package/dist/cjs/components/table/layouts/TableLayouts.d.ts.map +1 -1
  43. package/dist/cjs/components/table/layouts/TableLayouts.js.map +1 -1
  44. package/dist/cjs/components/table/layouts/row-layout/RowLayout.d.ts +1 -2
  45. package/dist/cjs/components/table/layouts/row-layout/RowLayout.d.ts.map +1 -1
  46. package/dist/cjs/components/table/layouts/row-layout/RowLayout.js.map +1 -1
  47. package/dist/cjs/components/table/layouts/row-layout/RowLayoutBody.d.ts +2 -3
  48. package/dist/cjs/components/table/layouts/row-layout/RowLayoutBody.d.ts.map +1 -1
  49. package/dist/cjs/components/table/layouts/row-layout/RowLayoutBody.js +17 -18
  50. package/dist/cjs/components/table/layouts/row-layout/RowLayoutBody.js.map +1 -1
  51. package/dist/cjs/components/table/layouts/row-layout/RowLayoutHeader.d.ts +2 -3
  52. package/dist/cjs/components/table/layouts/row-layout/RowLayoutHeader.d.ts.map +1 -1
  53. package/dist/cjs/components/table/layouts/row-layout/RowLayoutHeader.js +9 -8
  54. package/dist/cjs/components/table/layouts/row-layout/RowLayoutHeader.js.map +1 -1
  55. package/dist/cjs/components/table/layouts/row-layout/RowLayoutIcon.d.ts +1 -5
  56. package/dist/cjs/components/table/layouts/row-layout/RowLayoutIcon.d.ts.map +1 -1
  57. package/dist/cjs/components/table/layouts/row-layout/RowLayoutIcon.js +3 -9
  58. package/dist/cjs/components/table/layouts/row-layout/RowLayoutIcon.js.map +1 -1
  59. package/dist/cjs/components/table/table-actions/TableActionContext.d.ts +9 -0
  60. package/dist/cjs/components/table/table-actions/TableActionContext.d.ts.map +1 -0
  61. package/dist/cjs/components/table/table-actions/TableActionContext.js +24 -0
  62. package/dist/cjs/components/table/table-actions/TableActionContext.js.map +1 -0
  63. package/dist/cjs/components/table/table-actions/TableActionItem.d.ts +44 -0
  64. package/dist/cjs/components/table/table-actions/TableActionItem.d.ts.map +1 -0
  65. package/dist/cjs/components/table/table-actions/TableActionItem.js +59 -0
  66. package/dist/cjs/components/table/table-actions/TableActionItem.js.map +1 -0
  67. package/dist/cjs/components/table/table-actions/TableActionsList.d.ts +37 -0
  68. package/dist/cjs/components/table/table-actions/TableActionsList.d.ts.map +1 -0
  69. package/dist/cjs/components/table/table-actions/TableActionsList.js +217 -0
  70. package/dist/cjs/components/table/table-actions/TableActionsList.js.map +1 -0
  71. package/dist/cjs/components/table/table-actions/TableHeaderActions.d.ts +11 -0
  72. package/dist/cjs/components/table/table-actions/TableHeaderActions.d.ts.map +1 -0
  73. package/dist/cjs/components/table/table-actions/TableHeaderActions.js +59 -0
  74. package/dist/cjs/components/table/table-actions/TableHeaderActions.js.map +1 -0
  75. package/dist/cjs/components/table/table-actions/index.d.ts +3 -0
  76. package/dist/cjs/components/table/table-actions/index.d.ts.map +1 -0
  77. package/dist/cjs/components/table/table-actions/index.js +9 -0
  78. package/dist/cjs/components/table/table-actions/index.js.map +1 -0
  79. package/dist/cjs/components/table/table-column/TableActionsColumn.d.ts +6 -0
  80. package/dist/cjs/components/table/table-column/TableActionsColumn.d.ts.map +1 -0
  81. package/dist/cjs/components/table/table-column/TableActionsColumn.js +53 -0
  82. package/dist/cjs/components/table/table-column/TableActionsColumn.js.map +1 -0
  83. package/dist/cjs/components/table/table-column/TableCollapsibleColumn.d.ts.map +1 -1
  84. package/dist/cjs/components/table/table-column/TableCollapsibleColumn.js +6 -2
  85. package/dist/cjs/components/table/table-column/TableCollapsibleColumn.js.map +1 -1
  86. package/dist/cjs/components/table/table-column/TableSelectableColumn.d.ts.map +1 -1
  87. package/dist/cjs/components/table/table-column/TableSelectableColumn.js +4 -0
  88. package/dist/cjs/components/table/table-column/TableSelectableColumn.js.map +1 -1
  89. package/dist/cjs/components/table/table-columns-selector/TableColumnsSelector.d.ts +7 -12
  90. package/dist/cjs/components/table/table-columns-selector/TableColumnsSelector.d.ts.map +1 -1
  91. package/dist/cjs/components/table/table-columns-selector/TableColumnsSelector.js +24 -20
  92. package/dist/cjs/components/table/table-columns-selector/TableColumnsSelector.js.map +1 -1
  93. package/dist/cjs/components/table/table-date-range-picker/TableDateRangePicker.d.ts +1 -2
  94. package/dist/cjs/components/table/table-date-range-picker/TableDateRangePicker.d.ts.map +1 -1
  95. package/dist/cjs/components/table/table-date-range-picker/TableDateRangePicker.js +7 -7
  96. package/dist/cjs/components/table/table-date-range-picker/TableDateRangePicker.js.map +1 -1
  97. package/dist/cjs/components/table/table-filter/TableFilter.d.ts +1 -2
  98. package/dist/cjs/components/table/table-filter/TableFilter.d.ts.map +1 -1
  99. package/dist/cjs/components/table/table-filter/TableFilter.js +11 -16
  100. package/dist/cjs/components/table/table-filter/TableFilter.js.map +1 -1
  101. package/dist/cjs/components/table/table-header/TableHeader.d.ts +7 -2
  102. package/dist/cjs/components/table/table-header/TableHeader.d.ts.map +1 -1
  103. package/dist/cjs/components/table/table-header/TableHeader.js +15 -12
  104. package/dist/cjs/components/table/table-header/TableHeader.js.map +1 -1
  105. package/dist/cjs/components/table/table-header/Th.d.ts +1 -2
  106. package/dist/cjs/components/table/table-header/Th.d.ts.map +1 -1
  107. package/dist/cjs/components/table/table-header/Th.js +7 -3
  108. package/dist/cjs/components/table/table-header/Th.js.map +1 -1
  109. package/dist/cjs/components/table/table-last-updated/TableLastUpdated.d.ts +1 -3
  110. package/dist/cjs/components/table/table-last-updated/TableLastUpdated.d.ts.map +1 -1
  111. package/dist/cjs/components/table/table-last-updated/TableLastUpdated.js +6 -9
  112. package/dist/cjs/components/table/table-last-updated/TableLastUpdated.js.map +1 -1
  113. package/dist/cjs/components/table/table-no-data/TableNoData.d.ts +6 -0
  114. package/dist/cjs/components/table/table-no-data/TableNoData.d.ts.map +1 -0
  115. package/dist/cjs/components/table/{table-consumer/TableConsumer.js → table-no-data/TableNoData.js} +4 -4
  116. package/dist/cjs/components/table/table-no-data/TableNoData.js.map +1 -0
  117. package/dist/cjs/components/table/table-pagination/TablePagination.d.ts.map +1 -1
  118. package/dist/cjs/components/table/table-pagination/TablePagination.js +9 -11
  119. package/dist/cjs/components/table/table-pagination/TablePagination.js.map +1 -1
  120. package/dist/cjs/components/table/table-pagination/TablePagination.types.d.ts +0 -4
  121. package/dist/cjs/components/table/table-pagination/TablePagination.types.d.ts.map +1 -1
  122. package/dist/cjs/components/table/table-per-page/TablePerPage.d.ts.map +1 -1
  123. package/dist/cjs/components/table/table-per-page/TablePerPage.js +16 -16
  124. package/dist/cjs/components/table/table-per-page/TablePerPage.js.map +1 -1
  125. package/dist/cjs/components/table/table-predicate/TablePredicate.d.ts +1 -2
  126. package/dist/cjs/components/table/table-predicate/TablePredicate.d.ts.map +1 -1
  127. package/dist/cjs/components/table/table-predicate/TablePredicate.js +12 -14
  128. package/dist/cjs/components/table/table-predicate/TablePredicate.js.map +1 -1
  129. package/dist/cjs/components/table/use-table.d.ts +182 -0
  130. package/dist/cjs/components/table/use-table.d.ts.map +1 -0
  131. package/dist/cjs/components/table/use-table.js +145 -0
  132. package/dist/cjs/components/table/use-table.js.map +1 -0
  133. package/dist/cjs/index.d.ts +11 -1
  134. package/dist/cjs/index.d.ts.map +1 -1
  135. package/dist/cjs/index.js.map +1 -1
  136. package/dist/cjs/theme/Theme.d.ts.map +1 -1
  137. package/dist/cjs/theme/Theme.js +0 -1
  138. package/dist/cjs/theme/Theme.js.map +1 -1
  139. package/dist/esm/components/button/Button.d.ts +1 -2
  140. package/dist/esm/components/button/Button.d.ts.map +1 -1
  141. package/dist/esm/components/button/Button.js.map +1 -1
  142. package/dist/esm/components/code-editor/CodeEditor.d.ts.map +1 -1
  143. package/dist/esm/components/code-editor/CodeEditor.js +2 -4
  144. package/dist/esm/components/code-editor/CodeEditor.js.map +1 -1
  145. package/dist/esm/components/header/__tests__/__snapshots__/Header.spec.tsx.snap +0 -5
  146. package/dist/esm/components/inline-confirm/InlineConfirm.d.ts +10 -2
  147. package/dist/esm/components/inline-confirm/InlineConfirm.d.ts.map +1 -1
  148. package/dist/esm/components/inline-confirm/InlineConfirm.js +1 -1
  149. package/dist/esm/components/inline-confirm/InlineConfirm.js.map +1 -1
  150. package/dist/esm/components/inline-confirm/InlineConfirmPrompt.d.ts +2 -5
  151. package/dist/esm/components/inline-confirm/InlineConfirmPrompt.d.ts.map +1 -1
  152. package/dist/esm/components/inline-confirm/InlineConfirmPrompt.js +4 -4
  153. package/dist/esm/components/inline-confirm/InlineConfirmPrompt.js.map +1 -1
  154. package/dist/esm/components/inline-confirm/InlineConfirmTarget.d.ts +2 -2
  155. package/dist/esm/components/inline-confirm/InlineConfirmTarget.d.ts.map +1 -1
  156. package/dist/esm/components/inline-confirm/InlineConfirmTarget.js +2 -2
  157. package/dist/esm/components/inline-confirm/InlineConfirmTarget.js.map +1 -1
  158. package/dist/esm/components/table/Table.d.ts +68 -55
  159. package/dist/esm/components/table/Table.d.ts.map +1 -1
  160. package/dist/esm/components/table/Table.js +122 -157
  161. package/dist/esm/components/table/Table.js.map +1 -1
  162. package/dist/esm/components/table/Table.module.css +8 -1
  163. package/dist/esm/components/table/Table.types.d.ts +52 -147
  164. package/dist/esm/components/table/Table.types.d.ts.map +1 -1
  165. package/dist/esm/components/table/Table.types.js.map +1 -1
  166. package/dist/esm/components/table/TableContext.d.ts +15 -10
  167. package/dist/esm/components/table/TableContext.d.ts.map +1 -1
  168. package/dist/esm/components/table/TableContext.js +1 -10
  169. package/dist/esm/components/table/TableContext.js.map +1 -1
  170. package/dist/esm/components/table/index.d.ts +3 -3
  171. package/dist/esm/components/table/index.d.ts.map +1 -1
  172. package/dist/esm/components/table/index.js +2 -1
  173. package/dist/esm/components/table/index.js.map +1 -1
  174. package/dist/esm/components/table/layouts/TableLayoutControl.js +4 -4
  175. package/dist/esm/components/table/layouts/TableLayoutControl.js.map +1 -1
  176. package/dist/esm/components/table/layouts/TableLayouts.d.ts +1 -22
  177. package/dist/esm/components/table/layouts/TableLayouts.d.ts.map +1 -1
  178. package/dist/esm/components/table/layouts/TableLayouts.js.map +1 -1
  179. package/dist/esm/components/table/layouts/row-layout/RowLayout.d.ts +1 -2
  180. package/dist/esm/components/table/layouts/row-layout/RowLayout.d.ts.map +1 -1
  181. package/dist/esm/components/table/layouts/row-layout/RowLayout.js.map +1 -1
  182. package/dist/esm/components/table/layouts/row-layout/RowLayoutBody.d.ts +2 -3
  183. package/dist/esm/components/table/layouts/row-layout/RowLayoutBody.d.ts.map +1 -1
  184. package/dist/esm/components/table/layouts/row-layout/RowLayoutBody.js +13 -11
  185. package/dist/esm/components/table/layouts/row-layout/RowLayoutBody.js.map +1 -1
  186. package/dist/esm/components/table/layouts/row-layout/RowLayoutHeader.d.ts +2 -3
  187. package/dist/esm/components/table/layouts/row-layout/RowLayoutHeader.d.ts.map +1 -1
  188. package/dist/esm/components/table/layouts/row-layout/RowLayoutHeader.js +5 -5
  189. package/dist/esm/components/table/layouts/row-layout/RowLayoutHeader.js.map +1 -1
  190. package/dist/esm/components/table/layouts/row-layout/RowLayoutIcon.d.ts +1 -5
  191. package/dist/esm/components/table/layouts/row-layout/RowLayoutIcon.d.ts.map +1 -1
  192. package/dist/esm/components/table/layouts/row-layout/RowLayoutIcon.js +2 -8
  193. package/dist/esm/components/table/layouts/row-layout/RowLayoutIcon.js.map +1 -1
  194. package/dist/esm/components/table/table-actions/TableActionContext.d.ts +9 -0
  195. package/dist/esm/components/table/table-actions/TableActionContext.d.ts.map +1 -0
  196. package/dist/esm/components/table/table-actions/TableActionContext.js +4 -0
  197. package/dist/esm/components/table/table-actions/TableActionContext.js.map +1 -0
  198. package/dist/esm/components/table/table-actions/TableActionItem.d.ts +44 -0
  199. package/dist/esm/components/table/table-actions/TableActionItem.d.ts.map +1 -0
  200. package/dist/esm/components/table/table-actions/TableActionItem.js +40 -0
  201. package/dist/esm/components/table/table-actions/TableActionItem.js.map +1 -0
  202. package/dist/esm/components/table/table-actions/TableActionsList.d.ts +37 -0
  203. package/dist/esm/components/table/table-actions/TableActionsList.d.ts.map +1 -0
  204. package/dist/esm/components/table/table-actions/TableActionsList.js +187 -0
  205. package/dist/esm/components/table/table-actions/TableActionsList.js.map +1 -0
  206. package/dist/esm/components/table/table-actions/TableHeaderActions.d.ts +11 -0
  207. package/dist/esm/components/table/table-actions/TableHeaderActions.d.ts.map +1 -0
  208. package/dist/esm/components/table/table-actions/TableHeaderActions.js +43 -0
  209. package/dist/esm/components/table/table-actions/TableHeaderActions.js.map +1 -0
  210. package/dist/esm/components/table/table-actions/index.d.ts +3 -0
  211. package/dist/esm/components/table/table-actions/index.d.ts.map +1 -0
  212. package/dist/esm/components/table/table-actions/index.js +4 -0
  213. package/dist/esm/components/table/table-actions/index.js.map +1 -0
  214. package/dist/esm/components/table/table-column/TableActionsColumn.d.ts +6 -0
  215. package/dist/esm/components/table/table-column/TableActionsColumn.d.ts.map +1 -0
  216. package/dist/esm/components/table/table-column/TableActionsColumn.js +40 -0
  217. package/dist/esm/components/table/table-column/TableActionsColumn.js.map +1 -0
  218. package/dist/esm/components/table/table-column/TableCollapsibleColumn.d.ts.map +1 -1
  219. package/dist/esm/components/table/table-column/TableCollapsibleColumn.js +7 -3
  220. package/dist/esm/components/table/table-column/TableCollapsibleColumn.js.map +1 -1
  221. package/dist/esm/components/table/table-column/TableSelectableColumn.d.ts.map +1 -1
  222. package/dist/esm/components/table/table-column/TableSelectableColumn.js +4 -0
  223. package/dist/esm/components/table/table-column/TableSelectableColumn.js.map +1 -1
  224. package/dist/esm/components/table/table-columns-selector/TableColumnsSelector.d.ts +7 -12
  225. package/dist/esm/components/table/table-columns-selector/TableColumnsSelector.d.ts.map +1 -1
  226. package/dist/esm/components/table/table-columns-selector/TableColumnsSelector.js +22 -20
  227. package/dist/esm/components/table/table-columns-selector/TableColumnsSelector.js.map +1 -1
  228. package/dist/esm/components/table/table-date-range-picker/TableDateRangePicker.d.ts +1 -2
  229. package/dist/esm/components/table/table-date-range-picker/TableDateRangePicker.d.ts.map +1 -1
  230. package/dist/esm/components/table/table-date-range-picker/TableDateRangePicker.js +8 -8
  231. package/dist/esm/components/table/table-date-range-picker/TableDateRangePicker.js.map +1 -1
  232. package/dist/esm/components/table/table-filter/TableFilter.d.ts +1 -2
  233. package/dist/esm/components/table/table-filter/TableFilter.d.ts.map +1 -1
  234. package/dist/esm/components/table/table-filter/TableFilter.js +14 -18
  235. package/dist/esm/components/table/table-filter/TableFilter.js.map +1 -1
  236. package/dist/esm/components/table/table-header/TableHeader.d.ts +7 -2
  237. package/dist/esm/components/table/table-header/TableHeader.d.ts.map +1 -1
  238. package/dist/esm/components/table/table-header/TableHeader.js +15 -13
  239. package/dist/esm/components/table/table-header/TableHeader.js.map +1 -1
  240. package/dist/esm/components/table/table-header/Th.d.ts +1 -2
  241. package/dist/esm/components/table/table-header/Th.d.ts.map +1 -1
  242. package/dist/esm/components/table/table-header/Th.js +8 -4
  243. package/dist/esm/components/table/table-header/Th.js.map +1 -1
  244. package/dist/esm/components/table/table-last-updated/TableLastUpdated.d.ts +1 -3
  245. package/dist/esm/components/table/table-last-updated/TableLastUpdated.d.ts.map +1 -1
  246. package/dist/esm/components/table/table-last-updated/TableLastUpdated.js +6 -8
  247. package/dist/esm/components/table/table-last-updated/TableLastUpdated.js.map +1 -1
  248. package/dist/esm/components/table/table-no-data/TableNoData.d.ts +6 -0
  249. package/dist/esm/components/table/table-no-data/TableNoData.d.ts.map +1 -0
  250. package/dist/esm/components/table/table-no-data/TableNoData.js +6 -0
  251. package/dist/esm/components/table/table-no-data/TableNoData.js.map +1 -0
  252. package/dist/esm/components/table/table-pagination/TablePagination.d.ts.map +1 -1
  253. package/dist/esm/components/table/table-pagination/TablePagination.js +10 -13
  254. package/dist/esm/components/table/table-pagination/TablePagination.js.map +1 -1
  255. package/dist/esm/components/table/table-pagination/TablePagination.types.d.ts +0 -4
  256. package/dist/esm/components/table/table-pagination/TablePagination.types.d.ts.map +1 -1
  257. package/dist/esm/components/table/table-pagination/TablePagination.types.js.map +1 -1
  258. package/dist/esm/components/table/table-per-page/TablePerPage.d.ts.map +1 -1
  259. package/dist/esm/components/table/table-per-page/TablePerPage.js +13 -12
  260. package/dist/esm/components/table/table-per-page/TablePerPage.js.map +1 -1
  261. package/dist/esm/components/table/table-predicate/TablePredicate.d.ts +1 -2
  262. package/dist/esm/components/table/table-predicate/TablePredicate.d.ts.map +1 -1
  263. package/dist/esm/components/table/table-predicate/TablePredicate.js +14 -18
  264. package/dist/esm/components/table/table-predicate/TablePredicate.js.map +1 -1
  265. package/dist/esm/components/table/use-table.d.ts +182 -0
  266. package/dist/esm/components/table/use-table.d.ts.map +1 -0
  267. package/dist/esm/components/table/use-table.js +122 -0
  268. package/dist/esm/components/table/use-table.js.map +1 -0
  269. package/dist/esm/index.d.ts +11 -1
  270. package/dist/esm/index.d.ts.map +1 -1
  271. package/dist/esm/index.js.map +1 -1
  272. package/dist/esm/theme/Theme.d.ts.map +1 -1
  273. package/dist/esm/theme/Theme.js +0 -1
  274. package/dist/esm/theme/Theme.js.map +1 -1
  275. package/package.json +36 -22
  276. package/src/__tests__/Utils.tsx +3 -1
  277. package/src/components/button/Button.tsx +3 -1
  278. package/src/components/code-editor/CodeEditor.tsx +1 -7
  279. package/src/components/header/__tests__/__snapshots__/Header.spec.tsx.snap +0 -5
  280. package/src/components/inline-confirm/InlineConfirm.tsx +12 -4
  281. package/src/components/inline-confirm/InlineConfirmPrompt.tsx +6 -9
  282. package/src/components/inline-confirm/InlineConfirmTarget.tsx +9 -4
  283. package/src/components/inline-confirm/__tests__/InlineConfirm.spec.tsx +37 -12
  284. package/src/components/table/Table.module.css +8 -1
  285. package/src/components/table/Table.tsx +148 -170
  286. package/src/components/table/Table.types.ts +57 -160
  287. package/src/components/table/TableContext.tsx +17 -16
  288. package/src/components/table/__tests__/Table.spec.tsx +176 -200
  289. package/src/components/table/__tests__/TableActions.spec.tsx +142 -31
  290. package/src/components/table/__tests__/TableCollapsibleColumn.spec.tsx +88 -0
  291. package/src/components/table/__tests__/TableColumnsSelector.spec.tsx +160 -119
  292. package/src/components/table/__tests__/TableDateRangePicker.spec.tsx +13 -17
  293. package/src/components/table/__tests__/TableFilter.spec.tsx +52 -96
  294. package/src/components/table/__tests__/TableLastUpdated.spec.tsx +18 -37
  295. package/src/components/table/__tests__/TablePagination.spec.tsx +84 -100
  296. package/src/components/table/__tests__/TablePerPage.spec.tsx +81 -104
  297. package/src/components/table/__tests__/TablePredicate.spec.tsx +26 -80
  298. package/src/components/table/__tests__/Th.spec.tsx +24 -19
  299. package/src/components/table/index.ts +3 -9
  300. package/src/components/table/layouts/TableLayoutControl.tsx +4 -4
  301. package/src/components/table/layouts/TableLayouts.tsx +0 -22
  302. package/src/components/table/layouts/__tests__/RowLayout.spec.tsx +210 -182
  303. package/src/components/table/layouts/row-layout/RowLayout.tsx +2 -2
  304. package/src/components/table/layouts/row-layout/RowLayoutBody.tsx +17 -17
  305. package/src/components/table/layouts/row-layout/RowLayoutHeader.tsx +18 -9
  306. package/src/components/table/layouts/row-layout/RowLayoutIcon.tsx +3 -8
  307. package/src/components/table/table-actions/TableActionContext.ts +9 -0
  308. package/src/components/table/table-actions/TableActionItem.tsx +80 -0
  309. package/src/components/table/table-actions/TableActionsList.tsx +209 -0
  310. package/src/components/table/table-actions/TableHeaderActions.tsx +56 -0
  311. package/src/components/table/table-actions/index.ts +2 -0
  312. package/src/components/table/table-column/TableActionsColumn.tsx +39 -0
  313. package/src/components/table/table-column/TableCollapsibleColumn.tsx +7 -3
  314. package/src/components/table/table-column/TableSelectableColumn.tsx +4 -0
  315. package/src/components/table/table-columns-selector/TableColumnsSelector.tsx +33 -28
  316. package/src/components/table/table-date-range-picker/TableDateRangePicker.tsx +9 -11
  317. package/src/components/table/table-filter/TableFilter.tsx +12 -18
  318. package/src/components/table/table-header/TableHeader.tsx +32 -15
  319. package/src/components/table/table-header/Th.tsx +8 -7
  320. package/src/components/table/table-last-updated/TableLastUpdated.tsx +7 -10
  321. package/src/components/table/table-no-data/TableNoData.tsx +7 -0
  322. package/src/components/table/table-pagination/TablePagination.tsx +8 -11
  323. package/src/components/table/table-pagination/TablePagination.types.ts +0 -4
  324. package/src/components/table/table-per-page/TablePerPage.tsx +8 -10
  325. package/src/components/table/table-predicate/TablePredicate.tsx +21 -17
  326. package/src/components/table/use-table.ts +323 -0
  327. package/src/index.ts +11 -1
  328. package/src/theme/Theme.tsx +0 -1
  329. package/dist/cjs/components/table/table-actions/TableActions.d.ts +0 -38
  330. package/dist/cjs/components/table/table-actions/TableActions.d.ts.map +0 -1
  331. package/dist/cjs/components/table/table-actions/TableActions.js +0 -47
  332. package/dist/cjs/components/table/table-actions/TableActions.js.map +0 -1
  333. package/dist/cjs/components/table/table-consumer/TableConsumer.d.ts +0 -5
  334. package/dist/cjs/components/table/table-consumer/TableConsumer.d.ts.map +0 -1
  335. package/dist/cjs/components/table/table-consumer/TableConsumer.js.map +0 -1
  336. package/dist/cjs/hooks/useRowSelection.d.ts +0 -10
  337. package/dist/cjs/hooks/useRowSelection.d.ts.map +0 -1
  338. package/dist/cjs/hooks/useRowSelection.js +0 -80
  339. package/dist/cjs/hooks/useRowSelection.js.map +0 -1
  340. package/dist/esm/components/table/table-actions/TableActions.d.ts +0 -38
  341. package/dist/esm/components/table/table-actions/TableActions.d.ts.map +0 -1
  342. package/dist/esm/components/table/table-actions/TableActions.js +0 -29
  343. package/dist/esm/components/table/table-actions/TableActions.js.map +0 -1
  344. package/dist/esm/components/table/table-consumer/TableConsumer.d.ts +0 -5
  345. package/dist/esm/components/table/table-consumer/TableConsumer.d.ts.map +0 -1
  346. package/dist/esm/components/table/table-consumer/TableConsumer.js +0 -6
  347. package/dist/esm/components/table/table-consumer/TableConsumer.js.map +0 -1
  348. package/dist/esm/hooks/useRowSelection.d.ts +0 -10
  349. package/dist/esm/hooks/useRowSelection.d.ts.map +0 -1
  350. package/dist/esm/hooks/useRowSelection.js +0 -59
  351. package/dist/esm/hooks/useRowSelection.js.map +0 -1
  352. package/src/components/table/table-actions/TableActions.tsx +0 -67
  353. package/src/components/table/table-consumer/TableConsumer.tsx +0 -3
  354. package/src/hooks/useRowSelection.ts +0 -76
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/components/table/table-per-page/TablePerPage.tsx"],"sourcesContent":["import {Group, SegmentedControl, Text} from '@mantine/core';\nimport {FunctionComponent} from 'react';\n\nimport {useTable} from '../TableContext';\nimport {TablePerPageProps} from './TablePerPage.types';\n\nexport const TablePerPage: FunctionComponent<TablePerPageProps> & {DEFAULT_SIZE: number} = ({\n label = 'Results per page',\n values = [25, 50, 100],\n onPerPageChange,\n}) => {\n const {state, setState, getPageCount} = useTable();\n\n const updatePerPage = (newPerPage: string) => {\n onPerPageChange?.(Number(newPerPage));\n setState((prevState) => ({\n ...prevState,\n pagination: {pageIndex: 0, pageSize: parseInt(newPerPage, 10)},\n }));\n };\n\n return getPageCount() > 0 ? (\n <Group gap=\"sm\">\n <Text fw={500}>{label}</Text>\n <SegmentedControl\n value={state.pagination.pageSize.toString() ?? values?.[1].toString()}\n onChange={updatePerPage}\n data={values.map((value) => value.toString())}\n size=\"sm\"\n />\n </Group>\n ) : null;\n};\n\nTablePerPage.DEFAULT_SIZE = 50;\n"],"names":["Group","SegmentedControl","Text","useTable","TablePerPage","label","values","onPerPageChange","state","setState","getPageCount","updatePerPage","newPerPage","Number","prevState","pagination","pageIndex","pageSize","parseInt","gap","fw","value","toString","onChange","data","map","size","DEFAULT_SIZE"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";AAAA,SAAQA,KAAK,EAAEC,gBAAgB,EAAEC,IAAI,QAAO,gBAAgB;AAG5D,SAAQC,QAAQ,QAAO,kBAAkB;AAGzC,OAAO,MAAMC,eAA8E,CAAC,EACxFC,QAAQ,kBAAkB,EAC1BC,SAAS;IAAC;IAAI;IAAI;CAAI,EACtBC,eAAe,EAClB;IACG,MAAM,EAACC,KAAK,EAAEC,QAAQ,EAAEC,YAAY,EAAC,GAAGP;IAExC,MAAMQ,gBAAgB,CAACC;QACnBL,kBAAkBM,OAAOD;QACzBH,SAAS,CAACK,YAAe,CAAA;gBACrB,GAAGA,SAAS;gBACZC,YAAY;oBAACC,WAAW;oBAAGC,UAAUC,SAASN,YAAY;gBAAG;YACjE,CAAA;IACJ;IAEA,OAAOF,iBAAiB,kBACpB,MAACV;QAAMmB,KAAI;;0BACP,KAACjB;gBAAKkB,IAAI;0BAAMf;;0BAChB,KAACJ;gBACGoB,OAAOb,MAAMO,UAAU,CAACE,QAAQ,CAACK,QAAQ,MAAMhB,QAAQ,CAAC,EAAE,CAACgB;gBAC3DC,UAAUZ;gBACVa,MAAMlB,OAAOmB,GAAG,CAAC,CAACJ,QAAUA,MAAMC,QAAQ;gBAC1CI,MAAK;;;SAGb;AACR,EAAE;AAEFtB,aAAauB,YAAY,GAAG"}
1
+ {"version":3,"sources":["../../../../../src/components/table/table-per-page/TablePerPage.tsx"],"sourcesContent":["import {Group, SegmentedControl, Text} from '@mantine/core';\nimport {FunctionComponent, useMemo} from 'react';\n\nimport {useTableContext} from '../TableContext';\nimport {TablePerPageProps} from './TablePerPage.types';\n\nexport const TablePerPage: FunctionComponent<TablePerPageProps> & {DEFAULT_SIZE: number} = ({\n label = 'Results per page',\n values = [25, 50, 100],\n onPerPageChange,\n}) => {\n const {store, table} = useTableContext();\n const choices = useMemo(() => values.map((value) => value.toString()), [values]);\n\n const updatePerPage = (newPerPage: string) => {\n onPerPageChange?.(Number(newPerPage));\n store.setPagination({pageIndex: 0, pageSize: parseInt(newPerPage, 10)});\n };\n\n return table.getPageCount() > 0 ? (\n <Group gap=\"sm\">\n <Text fw={500}>{label}</Text>\n <SegmentedControl\n value={store.state.pagination.pageSize.toString() ?? choices[1] ?? choices[0]}\n onChange={updatePerPage}\n data={choices}\n size=\"sm\"\n />\n </Group>\n ) : null;\n};\n\nTablePerPage.DEFAULT_SIZE = 50;\n"],"names":["Group","SegmentedControl","Text","useMemo","useTableContext","TablePerPage","label","values","onPerPageChange","store","table","choices","map","value","toString","updatePerPage","newPerPage","Number","setPagination","pageIndex","pageSize","parseInt","getPageCount","gap","fw","state","pagination","onChange","data","size","DEFAULT_SIZE"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";AAAA,SAAQA,KAAK,EAAEC,gBAAgB,EAAEC,IAAI,QAAO,gBAAgB;AAC5D,SAA2BC,OAAO,QAAO,QAAQ;AAEjD,SAAQC,eAAe,QAAO,kBAAkB;AAGhD,OAAO,MAAMC,eAA8E,CAAC,EACxFC,QAAQ,kBAAkB,EAC1BC,SAAS;IAAC;IAAI;IAAI;CAAI,EACtBC,eAAe,EAClB;IACG,MAAM,EAACC,KAAK,EAAEC,KAAK,EAAC,GAAGN;IACvB,MAAMO,UAAUR,QAAQ,IAAMI,OAAOK,GAAG,CAAC,CAACC,QAAUA,MAAMC,QAAQ,KAAK;QAACP;KAAO;IAE/E,MAAMQ,gBAAgB,CAACC;QACnBR,kBAAkBS,OAAOD;QACzBP,MAAMS,aAAa,CAAC;YAACC,WAAW;YAAGC,UAAUC,SAASL,YAAY;QAAG;IACzE;IAEA,OAAON,MAAMY,YAAY,KAAK,kBAC1B,MAACtB;QAAMuB,KAAI;;0BACP,KAACrB;gBAAKsB,IAAI;0BAAMlB;;0BAChB,KAACL;gBACGY,OAAOJ,MAAMgB,KAAK,CAACC,UAAU,CAACN,QAAQ,CAACN,QAAQ,MAAMH,OAAO,CAAC,EAAE,IAAIA,OAAO,CAAC,EAAE;gBAC7EgB,UAAUZ;gBACVa,MAAMjB;gBACNkB,MAAK;;;SAGb;AACR,EAAE;AAEFxB,aAAayB,YAAY,GAAG"}
@@ -1,5 +1,4 @@
1
- import { BoxProps, ComboboxData, Factory } from '@mantine/core';
2
- import { CompoundStylesApiProps } from '@mantine/core/lib/core/styles-api/styles-api.types';
1
+ import { BoxProps, ComboboxData, CompoundStylesApiProps, Factory } from '@mantine/core';
3
2
  import { FunctionComponent } from 'react';
4
3
  export type TablePredicateStylesNames = 'predicate' | 'predicateWrapper' | 'predicateLabel' | 'predicateSelect';
5
4
  export interface TablePredicateProps extends BoxProps, CompoundStylesApiProps<TablePredicateFactory> {
@@ -1 +1 @@
1
- {"version":3,"file":"TablePredicate.d.ts","sourceRoot":"","sources":["../../../../../src/components/table/table-predicate/TablePredicate.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAC,QAAQ,EAAE,YAAY,EAAW,OAAO,EAAsC,MAAM,eAAe,CAAC;AAC5G,OAAO,EAAC,sBAAsB,EAAC,MAAM,oDAAoD,CAAC;AAC1F,OAAO,EAAC,iBAAiB,EAAC,MAAM,OAAO,CAAC;AAKxC,MAAM,MAAM,yBAAyB,GAAG,WAAW,GAAG,kBAAkB,GAAG,gBAAgB,GAAG,iBAAiB,CAAC;AAEhH,MAAM,WAAW,mBAAoB,SAAQ,QAAQ,EAAE,sBAAsB,CAAC,qBAAqB,CAAC;IAChG;;OAEG;IACH,EAAE,EAAE,MAAM,CAAC;IACX;;OAEG;IACH,IAAI,EAAE,YAAY,CAAC;IACnB;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,MAAM,qBAAqB,GAAG,OAAO,CAAC;IACxC,KAAK,EAAE,mBAAmB,CAAC;IAC3B,GAAG,EAAE,cAAc,CAAC;IACpB,WAAW,EAAE,yBAAyB,CAAC;IACvC,QAAQ,EAAE,IAAI,CAAC;CAClB,CAAC,CAAC;AAIH,eAAO,MAAM,cAAc,EAAE,iBAAiB,CAAC,mBAAmB,CA2ChE,CAAC"}
1
+ {"version":3,"file":"TablePredicate.d.ts","sourceRoot":"","sources":["../../../../../src/components/table/table-predicate/TablePredicate.tsx"],"names":[],"mappings":"AAAA,OAAO,EACH,QAAQ,EACR,YAAY,EACZ,sBAAsB,EAEtB,OAAO,EAMV,MAAM,eAAe,CAAC;AACvB,OAAO,EAAC,iBAAiB,EAAC,MAAM,OAAO,CAAC;AAKxC,MAAM,MAAM,yBAAyB,GAAG,WAAW,GAAG,kBAAkB,GAAG,gBAAgB,GAAG,iBAAiB,CAAC;AAEhH,MAAM,WAAW,mBAAoB,SAAQ,QAAQ,EAAE,sBAAsB,CAAC,qBAAqB,CAAC;IAChG;;OAEG;IACH,EAAE,EAAE,MAAM,CAAC;IACX;;OAEG;IACH,IAAI,EAAE,YAAY,CAAC;IACnB;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,MAAM,qBAAqB,GAAG,OAAO,CAAC;IACxC,KAAK,EAAE,mBAAmB,CAAC;IAC3B,GAAG,EAAE,cAAc,CAAC;IACpB,WAAW,EAAE,yBAAyB,CAAC;IACvC,QAAQ,EAAE,IAAI,CAAC;CAClB,CAAC,CAAC;AAIH,eAAO,MAAM,cAAc,EAAE,iBAAiB,CAAC,mBAAmB,CAqChE,CAAC"}
@@ -1,23 +1,19 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { factory, Grid, Group, Select, Text, useProps } from '@mantine/core';
3
3
  import { TableComponentsOrder } from '../Table';
4
- import { useTable, useTableStyles } from '../TableContext';
4
+ import { useTableContext } from '../TableContext';
5
5
  const defaultProps = {};
6
6
  export const TablePredicate = factory((props, ref)=>{
7
- const ctx = useTableStyles();
7
+ const { store, getStyles } = useTableContext();
8
8
  const { id, data, label, classNames, className, styles, style, vars, ...others } = useProps('PlasmaTablePredicate', defaultProps, props);
9
- const { form, setState } = useTable();
10
9
  const handleChange = (newValue)=>{
11
- form.setFieldValue('predicates', {
12
- ...form.values.predicates,
13
- [id]: newValue
14
- });
15
- setState((prevState)=>({
16
- ...prevState,
17
- pagination: prevState.pagination ? {
18
- pageIndex: 0,
19
- pageSize: prevState.pagination.pageSize
20
- } : prevState.pagination
10
+ store.setPredicates((prev)=>({
11
+ ...prev,
12
+ [id]: newValue
13
+ }));
14
+ store.setPagination((prev)=>({
15
+ ...prev,
16
+ pageIndex: 0
21
17
  }));
22
18
  };
23
19
  const stylesApiProps = {
@@ -28,7 +24,7 @@ export const TablePredicate = factory((props, ref)=>{
28
24
  span: "content",
29
25
  order: TableComponentsOrder.Predicate,
30
26
  ref: ref,
31
- ...ctx.getStyles('predicate', {
27
+ ...getStyles('predicate', {
32
28
  className,
33
29
  style,
34
30
  ...stylesApiProps
@@ -36,10 +32,10 @@ export const TablePredicate = factory((props, ref)=>{
36
32
  ...others,
37
33
  children: /*#__PURE__*/ _jsxs(Group, {
38
34
  gap: "xs",
39
- ...ctx.getStyles('predicateWrapper', stylesApiProps),
35
+ ...getStyles('predicateWrapper', stylesApiProps),
40
36
  children: [
41
37
  label ? /*#__PURE__*/ _jsxs(Text, {
42
- ...ctx.getStyles('predicateLabel', stylesApiProps),
38
+ ...getStyles('predicateLabel', stylesApiProps),
43
39
  children: [
44
40
  label,
45
41
  ":"
@@ -49,12 +45,12 @@ export const TablePredicate = factory((props, ref)=>{
49
45
  comboboxProps: {
50
46
  withinPortal: true
51
47
  },
52
- value: form.values.predicates[id],
48
+ value: store.state.predicates[id],
53
49
  onChange: handleChange,
54
50
  data: data,
55
51
  "aria-label": label ?? id,
56
52
  searchable: data.length > 7,
57
- ...ctx.getStyles('predicateSelect', stylesApiProps)
53
+ ...getStyles('predicateSelect', stylesApiProps)
58
54
  })
59
55
  ]
60
56
  })
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/components/table/table-predicate/TablePredicate.tsx"],"sourcesContent":["import {BoxProps, ComboboxData, factory, Factory, Grid, Group, Select, Text, useProps} from '@mantine/core';\nimport {CompoundStylesApiProps} from '@mantine/core/lib/core/styles-api/styles-api.types';\nimport {FunctionComponent} from 'react';\n\nimport {TableComponentsOrder} from '../Table';\nimport {useTable, useTableStyles} from '../TableContext';\n\nexport type TablePredicateStylesNames = 'predicate' | 'predicateWrapper' | 'predicateLabel' | 'predicateSelect';\n\nexport interface TablePredicateProps extends BoxProps, CompoundStylesApiProps<TablePredicateFactory> {\n /**\n * Unique identifier for this predicate. Will be used to access the selected value in the table state\n */\n id: string;\n /**\n * The values to display in the predicate\n */\n data: ComboboxData;\n /**\n * Input label (not displayed for now)\n *\n * @default default to the predicate id\n */\n label?: string;\n}\n\nexport type TablePredicateFactory = Factory<{\n props: TablePredicateProps;\n ref: HTMLDivElement;\n stylesNames: TablePredicateStylesNames;\n compound: true;\n}>;\n\nconst defaultProps: Partial<TablePredicateProps> = {};\n\nexport const TablePredicate: FunctionComponent<TablePredicateProps> = factory<TablePredicateFactory>((props, ref) => {\n const ctx = useTableStyles();\n const {id, data, label, classNames, className, styles, style, vars, ...others} = useProps(\n 'PlasmaTablePredicate',\n defaultProps,\n props,\n );\n const {form, setState} = useTable();\n\n const handleChange = (newValue: string) => {\n form.setFieldValue('predicates', {...form.values.predicates, [id]: newValue});\n setState((prevState) => ({\n ...prevState,\n pagination: prevState.pagination\n ? {pageIndex: 0, pageSize: prevState.pagination.pageSize}\n : prevState.pagination,\n }));\n };\n\n const stylesApiProps = {classNames, styles};\n\n return (\n <Grid.Col\n span=\"content\"\n order={TableComponentsOrder.Predicate}\n ref={ref}\n {...ctx.getStyles('predicate', {className, style, ...stylesApiProps})}\n {...others}\n >\n <Group gap=\"xs\" {...ctx.getStyles('predicateWrapper', stylesApiProps)}>\n {label ? <Text {...ctx.getStyles('predicateLabel', stylesApiProps)}>{label}:</Text> : null}\n <Select\n comboboxProps={{withinPortal: true}}\n value={form.values.predicates[id]}\n onChange={handleChange}\n data={data}\n aria-label={label ?? id}\n searchable={data.length > 7}\n {...ctx.getStyles('predicateSelect', stylesApiProps)}\n />\n </Group>\n </Grid.Col>\n );\n});\n"],"names":["factory","Grid","Group","Select","Text","useProps","TableComponentsOrder","useTable","useTableStyles","defaultProps","TablePredicate","props","ref","ctx","id","data","label","classNames","className","styles","style","vars","others","form","setState","handleChange","newValue","setFieldValue","values","predicates","prevState","pagination","pageIndex","pageSize","stylesApiProps","Col","span","order","Predicate","getStyles","gap","comboboxProps","withinPortal","value","onChange","aria-label","searchable","length"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";AAAA,SAAgCA,OAAO,EAAWC,IAAI,EAAEC,KAAK,EAAEC,MAAM,EAAEC,IAAI,EAAEC,QAAQ,QAAO,gBAAgB;AAI5G,SAAQC,oBAAoB,QAAO,WAAW;AAC9C,SAAQC,QAAQ,EAAEC,cAAc,QAAO,kBAAkB;AA4BzD,MAAMC,eAA6C,CAAC;AAEpD,OAAO,MAAMC,iBAAyDV,QAA+B,CAACW,OAAOC;IACzG,MAAMC,MAAML;IACZ,MAAM,EAACM,EAAE,EAAEC,IAAI,EAAEC,KAAK,EAAEC,UAAU,EAAEC,SAAS,EAAEC,MAAM,EAAEC,KAAK,EAAEC,IAAI,EAAE,GAAGC,QAAO,GAAGjB,SAC7E,wBACAI,cACAE;IAEJ,MAAM,EAACY,IAAI,EAAEC,QAAQ,EAAC,GAAGjB;IAEzB,MAAMkB,eAAe,CAACC;QAClBH,KAAKI,aAAa,CAAC,cAAc;YAAC,GAAGJ,KAAKK,MAAM,CAACC,UAAU;YAAE,CAACf,GAAG,EAAEY;QAAQ;QAC3EF,SAAS,CAACM,YAAe,CAAA;gBACrB,GAAGA,SAAS;gBACZC,YAAYD,UAAUC,UAAU,GAC1B;oBAACC,WAAW;oBAAGC,UAAUH,UAAUC,UAAU,CAACE,QAAQ;gBAAA,IACtDH,UAAUC,UAAU;YAC9B,CAAA;IACJ;IAEA,MAAMG,iBAAiB;QAACjB;QAAYE;IAAM;IAE1C,qBACI,KAAClB,KAAKkC,GAAG;QACLC,MAAK;QACLC,OAAO/B,qBAAqBgC,SAAS;QACrC1B,KAAKA;QACJ,GAAGC,IAAI0B,SAAS,CAAC,aAAa;YAACrB;YAAWE;YAAO,GAAGc,cAAc;QAAA,EAAE;QACpE,GAAGZ,MAAM;kBAEV,cAAA,MAACpB;YAAMsC,KAAI;YAAM,GAAG3B,IAAI0B,SAAS,CAAC,oBAAoBL,eAAe;;gBAChElB,sBAAQ,MAACZ;oBAAM,GAAGS,IAAI0B,SAAS,CAAC,kBAAkBL,eAAe;;wBAAGlB;wBAAM;;qBAAW;8BACtF,KAACb;oBACGsC,eAAe;wBAACC,cAAc;oBAAI;oBAClCC,OAAOpB,KAAKK,MAAM,CAACC,UAAU,CAACf,GAAG;oBACjC8B,UAAUnB;oBACVV,MAAMA;oBACN8B,cAAY7B,SAASF;oBACrBgC,YAAY/B,KAAKgC,MAAM,GAAG;oBACzB,GAAGlC,IAAI0B,SAAS,CAAC,mBAAmBL,eAAe;;;;;AAKxE,GAAG"}
1
+ {"version":3,"sources":["../../../../../src/components/table/table-predicate/TablePredicate.tsx"],"sourcesContent":["import {\n BoxProps,\n ComboboxData,\n CompoundStylesApiProps,\n factory,\n Factory,\n Grid,\n Group,\n Select,\n Text,\n useProps,\n} from '@mantine/core';\nimport {FunctionComponent} from 'react';\n\nimport {TableComponentsOrder} from '../Table';\nimport {useTableContext} from '../TableContext';\n\nexport type TablePredicateStylesNames = 'predicate' | 'predicateWrapper' | 'predicateLabel' | 'predicateSelect';\n\nexport interface TablePredicateProps extends BoxProps, CompoundStylesApiProps<TablePredicateFactory> {\n /**\n * Unique identifier for this predicate. Will be used to access the selected value in the table state\n */\n id: string;\n /**\n * The values to display in the predicate\n */\n data: ComboboxData;\n /**\n * Input label (not displayed for now)\n *\n * @default default to the predicate id\n */\n label?: string;\n}\n\nexport type TablePredicateFactory = Factory<{\n props: TablePredicateProps;\n ref: HTMLDivElement;\n stylesNames: TablePredicateStylesNames;\n compound: true;\n}>;\n\nconst defaultProps: Partial<TablePredicateProps> = {};\n\nexport const TablePredicate: FunctionComponent<TablePredicateProps> = factory<TablePredicateFactory>((props, ref) => {\n const {store, getStyles} = useTableContext();\n const {id, data, label, classNames, className, styles, style, vars, ...others} = useProps(\n 'PlasmaTablePredicate',\n defaultProps,\n props,\n );\n\n const handleChange = (newValue: string) => {\n store.setPredicates((prev) => ({...prev, [id]: newValue}));\n store.setPagination((prev) => ({...prev, pageIndex: 0}));\n };\n\n const stylesApiProps = {classNames, styles};\n\n return (\n <Grid.Col\n span=\"content\"\n order={TableComponentsOrder.Predicate}\n ref={ref}\n {...getStyles('predicate', {className, style, ...stylesApiProps})}\n {...others}\n >\n <Group gap=\"xs\" {...getStyles('predicateWrapper', stylesApiProps)}>\n {label ? <Text {...getStyles('predicateLabel', stylesApiProps)}>{label}:</Text> : null}\n <Select\n comboboxProps={{withinPortal: true}}\n value={store.state.predicates[id]}\n onChange={handleChange}\n data={data}\n aria-label={label ?? id}\n searchable={data.length > 7}\n {...getStyles('predicateSelect', stylesApiProps)}\n />\n </Group>\n </Grid.Col>\n );\n});\n"],"names":["factory","Grid","Group","Select","Text","useProps","TableComponentsOrder","useTableContext","defaultProps","TablePredicate","props","ref","store","getStyles","id","data","label","classNames","className","styles","style","vars","others","handleChange","newValue","setPredicates","prev","setPagination","pageIndex","stylesApiProps","Col","span","order","Predicate","gap","comboboxProps","withinPortal","value","state","predicates","onChange","aria-label","searchable","length"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";AAAA,SAIIA,OAAO,EAEPC,IAAI,EACJC,KAAK,EACLC,MAAM,EACNC,IAAI,EACJC,QAAQ,QACL,gBAAgB;AAGvB,SAAQC,oBAAoB,QAAO,WAAW;AAC9C,SAAQC,eAAe,QAAO,kBAAkB;AA4BhD,MAAMC,eAA6C,CAAC;AAEpD,OAAO,MAAMC,iBAAyDT,QAA+B,CAACU,OAAOC;IACzG,MAAM,EAACC,KAAK,EAAEC,SAAS,EAAC,GAAGN;IAC3B,MAAM,EAACO,EAAE,EAAEC,IAAI,EAAEC,KAAK,EAAEC,UAAU,EAAEC,SAAS,EAAEC,MAAM,EAAEC,KAAK,EAAEC,IAAI,EAAE,GAAGC,QAAO,GAAGjB,SAC7E,wBACAG,cACAE;IAGJ,MAAMa,eAAe,CAACC;QAClBZ,MAAMa,aAAa,CAAC,CAACC,OAAU,CAAA;gBAAC,GAAGA,IAAI;gBAAE,CAACZ,GAAG,EAAEU;YAAQ,CAAA;QACvDZ,MAAMe,aAAa,CAAC,CAACD,OAAU,CAAA;gBAAC,GAAGA,IAAI;gBAAEE,WAAW;YAAC,CAAA;IACzD;IAEA,MAAMC,iBAAiB;QAACZ;QAAYE;IAAM;IAE1C,qBACI,KAAClB,KAAK6B,GAAG;QACLC,MAAK;QACLC,OAAO1B,qBAAqB2B,SAAS;QACrCtB,KAAKA;QACJ,GAAGE,UAAU,aAAa;YAACK;YAAWE;YAAO,GAAGS,cAAc;QAAA,EAAE;QAChE,GAAGP,MAAM;kBAEV,cAAA,MAACpB;YAAMgC,KAAI;YAAM,GAAGrB,UAAU,oBAAoBgB,eAAe;;gBAC5Db,sBAAQ,MAACZ;oBAAM,GAAGS,UAAU,kBAAkBgB,eAAe;;wBAAGb;wBAAM;;qBAAW;8BAClF,KAACb;oBACGgC,eAAe;wBAACC,cAAc;oBAAI;oBAClCC,OAAOzB,MAAM0B,KAAK,CAACC,UAAU,CAACzB,GAAG;oBACjC0B,UAAUjB;oBACVR,MAAMA;oBACN0B,cAAYzB,SAASF;oBACrB4B,YAAY3B,KAAK4B,MAAM,GAAG;oBACzB,GAAG9B,UAAU,mBAAmBgB,eAAe;;;;;AAKpE,GAAG"}
@@ -0,0 +1,182 @@
1
+ /// <reference types="react" />
2
+ import { type PaginationState, type SortingState, type ExpandedState } from '@tanstack/table-core';
3
+ import { type DateRangePickerValue } from '../date-range-picker';
4
+ type PartialDeep<T> = T extends object ? {
5
+ [P in keyof T]?: PartialDeep<T[P]>;
6
+ } : T;
7
+ export interface TableState<TData = unknown> {
8
+ /**
9
+ * Current pagination state
10
+ *
11
+ * @default { pageIndex: 0, pageSize: 50 }
12
+ */
13
+ pagination: PaginationState;
14
+ /**
15
+ * Total number of entries in the table.
16
+ * This number is used to calculate the number of pages in the pagination.
17
+ * When null, the number of pages is calculated using the current data length.
18
+ *
19
+ * @default null
20
+ */
21
+ totalEntries: number | null;
22
+ /**
23
+ * Current sorting state
24
+ *
25
+ * @default []
26
+ */
27
+ sorting: SortingState;
28
+ /**
29
+ * Current global filter value
30
+ *
31
+ * @default ''
32
+ */
33
+ globalFilter: string;
34
+ /**
35
+ * Current expanded state
36
+ *
37
+ * @default {}
38
+ */
39
+ expanded: ExpandedState;
40
+ /**
41
+ * Predicates and their current value
42
+ *
43
+ * @default {}
44
+ */
45
+ predicates: Record<string, string>;
46
+ /**
47
+ * Layout currently selected. When null, the first layout is used.
48
+ *
49
+ * @default null
50
+ */
51
+ layout: string | null;
52
+ /**
53
+ * Currently selected date range
54
+ *
55
+ * @default [null, null]
56
+ */
57
+ dateRange: DateRangePickerValue;
58
+ /**
59
+ * Currently selected rows
60
+ *
61
+ * @default {}
62
+ */
63
+ rowSelection: Record<string, TData>;
64
+ /**
65
+ * Columns that are currently visible
66
+ *
67
+ * @default {}
68
+ */
69
+ columnVisibility: Record<string, boolean>;
70
+ }
71
+ export interface TableStore<TData = unknown> {
72
+ /**
73
+ * Current state of the table.
74
+ */
75
+ state: TableState<TData>;
76
+ /**
77
+ * Allows to change the pagination state.
78
+ */
79
+ setPagination: React.Dispatch<React.SetStateAction<TableState<TData>['pagination']>>;
80
+ /**
81
+ * Allows to change the total number of entries.
82
+ */
83
+ setTotalEntries: React.Dispatch<React.SetStateAction<TableState<TData>['totalEntries']>>;
84
+ /**
85
+ * Allows to change the sorting state.
86
+ */
87
+ setSorting: React.Dispatch<React.SetStateAction<TableState<TData>['sorting']>>;
88
+ /**
89
+ * Allows to change the global filter value.
90
+ */
91
+ setGlobalFilter: React.Dispatch<React.SetStateAction<TableState<TData>['globalFilter']>>;
92
+ /**
93
+ * Allows to change the rows expanded state.
94
+ */
95
+ setExpanded: React.Dispatch<React.SetStateAction<TableState<TData>['expanded']>>;
96
+ /**
97
+ * Allows to change the predicates values.
98
+ */
99
+ setPredicates: React.Dispatch<React.SetStateAction<TableState<TData>['predicates']>>;
100
+ /**
101
+ * Allows to change the selected layout.
102
+ */
103
+ setLayout: React.Dispatch<React.SetStateAction<TableState<TData>['layout']>>;
104
+ /**
105
+ * Allows to change the selected date range.
106
+ */
107
+ setDateRange: React.Dispatch<React.SetStateAction<TableState<TData>['dateRange']>>;
108
+ /**
109
+ * Allows to change the current row selection.
110
+ */
111
+ setRowSelection: React.Dispatch<React.SetStateAction<TableState<TData>['rowSelection']>>;
112
+ /**
113
+ * Allows to change the visible columns.
114
+ */
115
+ setColumnVisibility: React.Dispatch<React.SetStateAction<TableState<TData>['columnVisibility']>>;
116
+ /**
117
+ * Whether the table is currently filtered.
118
+ */
119
+ isFiltered: boolean;
120
+ /**
121
+ * Whether the table has data when unfiltered.
122
+ *
123
+ * This is derived from the totalEntries so make sure you set that number correctly, even if you're using a client side table.
124
+ */
125
+ isVacant: boolean;
126
+ /**
127
+ * Clear currently applied filters.
128
+ */
129
+ clearFilters: () => void;
130
+ /**
131
+ * Deselects all currently selected rows.
132
+ */
133
+ clearRowSelection: () => void;
134
+ /**
135
+ * Get currently selected rows.
136
+ */
137
+ getSelectedRows: () => TData[];
138
+ /**
139
+ * Get currently selected row
140
+ */
141
+ getSelectedRow: () => TData | null;
142
+ /**
143
+ * Whether the user can select multiple rows at the same time.
144
+ */
145
+ multiRowSelectionEnabled: boolean;
146
+ /**
147
+ * Whether rows can be selected.
148
+ */
149
+ rowSelectionEnabled: boolean;
150
+ /**
151
+ * Whether row selection is forced.
152
+ */
153
+ rowSelectionForced: boolean;
154
+ }
155
+ export interface UseTableOptions<TData = unknown> {
156
+ /**
157
+ * Initial state of the table.
158
+ */
159
+ initialState?: PartialDeep<TableState<TData>>;
160
+ /**
161
+ * Whether rows can be selected.
162
+ *
163
+ * @default true
164
+ */
165
+ enableRowSelection?: boolean;
166
+ /**
167
+ * Whether multiple rows can be selected at the same time.
168
+ *
169
+ * @default false
170
+ */
171
+ enableMultiRowSelection?: boolean;
172
+ /**
173
+ * Forces the user to always have one row selected.
174
+ * When activating that setting, a good practice is to have a row already selected in the initial state.
175
+ *
176
+ * @default false
177
+ */
178
+ forceSelection?: boolean;
179
+ }
180
+ export declare const useTable: <TData>(userOptions?: UseTableOptions<TData>) => TableStore<TData>;
181
+ export {};
182
+ //# sourceMappingURL=use-table.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-table.d.ts","sourceRoot":"","sources":["../../../../src/components/table/use-table.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,122 @@
1
+ import { useDidUpdate } from '@mantine/hooks';
2
+ import defaultsDeep from 'lodash.defaultsdeep';
3
+ import { useCallback, useMemo, useState } from 'react';
4
+ const defaultOptions = {
5
+ enableRowSelection: true,
6
+ enableMultiRowSelection: false,
7
+ forceSelection: false
8
+ };
9
+ const defaultState = {
10
+ pagination: {
11
+ pageIndex: 0,
12
+ pageSize: 50
13
+ },
14
+ totalEntries: null,
15
+ sorting: [],
16
+ globalFilter: '',
17
+ predicates: {},
18
+ layout: null,
19
+ dateRange: [
20
+ null,
21
+ null
22
+ ],
23
+ rowSelection: {},
24
+ columnVisibility: {}
25
+ };
26
+ export const useTable = (userOptions = {})=>{
27
+ const options = defaultsDeep({}, userOptions, defaultOptions);
28
+ const initialState = defaultsDeep({}, options.initialState, defaultState);
29
+ const [pagination, setPagination] = useState(initialState.pagination);
30
+ const [totalEntries, _setTotalEntries] = useState(initialState.totalEntries);
31
+ const [unfilteredTotalEntries, setUnfilteredTotalEntries] = useState(initialState.totalEntries);
32
+ const [sorting, setSorting] = useState(initialState.sorting);
33
+ const [globalFilter, setGlobalFilter] = useState(initialState.globalFilter);
34
+ const [expanded, setExpanded] = useState(initialState.expanded);
35
+ const [predicates, setPredicates] = useState(initialState.predicates);
36
+ const [layout, setLayout] = useState(initialState.layout);
37
+ const [dateRange, setDateRange] = useState(initialState.dateRange);
38
+ const [rowSelection, setRowSelection] = useState(initialState.rowSelection);
39
+ const [columnVisibility, setColumnVisibility] = useState(initialState.columnVisibility);
40
+ const isFiltered = !!globalFilter || Object.keys(predicates).some((predicate)=>!!predicates[predicate]) || !!dateRange?.[0] || !!dateRange?.[1];
41
+ const isVacant = unfilteredTotalEntries === 0;
42
+ const setTotalEntries = useCallback((updater)=>{
43
+ _setTotalEntries((old)=>{
44
+ const newTotalEntries = updater instanceof Function ? updater(old) : updater;
45
+ if (!isFiltered) {
46
+ setUnfilteredTotalEntries(newTotalEntries);
47
+ }
48
+ return newTotalEntries;
49
+ });
50
+ }, [
51
+ isFiltered
52
+ ]);
53
+ const clearFilters = useCallback(()=>{
54
+ setPredicates(initialState.predicates);
55
+ setGlobalFilter('');
56
+ }, []);
57
+ const clearRowSelection = useCallback(()=>{
58
+ setRowSelection({});
59
+ }, []);
60
+ const getSelectedRows = useCallback(()=>Object.values(rowSelection), [
61
+ rowSelection
62
+ ]);
63
+ const getSelectedRow = ()=>getSelectedRows()[0] ?? null;
64
+ useDidUpdate(()=>{
65
+ if (!options.enableMultiRowSelection) {
66
+ clearRowSelection();
67
+ }
68
+ }, [
69
+ globalFilter,
70
+ pagination,
71
+ sorting,
72
+ dateRange,
73
+ predicates
74
+ ]);
75
+ const state = useMemo(()=>({
76
+ pagination,
77
+ totalEntries,
78
+ sorting,
79
+ globalFilter,
80
+ expanded,
81
+ predicates,
82
+ layout,
83
+ dateRange,
84
+ rowSelection,
85
+ columnVisibility
86
+ }), [
87
+ pagination,
88
+ totalEntries,
89
+ sorting,
90
+ globalFilter,
91
+ expanded,
92
+ predicates,
93
+ layout,
94
+ dateRange,
95
+ rowSelection,
96
+ columnVisibility
97
+ ]);
98
+ return {
99
+ state,
100
+ setPagination,
101
+ setTotalEntries,
102
+ setSorting,
103
+ setGlobalFilter,
104
+ setExpanded,
105
+ setPredicates,
106
+ setLayout,
107
+ setDateRange,
108
+ setRowSelection,
109
+ setColumnVisibility,
110
+ isFiltered,
111
+ isVacant,
112
+ clearFilters,
113
+ clearRowSelection,
114
+ getSelectedRows,
115
+ getSelectedRow,
116
+ rowSelectionEnabled: options.enableRowSelection,
117
+ rowSelectionForced: options.forceSelection,
118
+ multiRowSelectionEnabled: options.enableMultiRowSelection
119
+ };
120
+ };
121
+
122
+ //# sourceMappingURL=use-table.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/components/table/use-table.ts"],"sourcesContent":["import {useDidUpdate} from '@mantine/hooks';\nimport {type PaginationState, type SortingState, type ExpandedState} from '@tanstack/table-core';\nimport defaultsDeep from 'lodash.defaultsdeep';\nimport {useCallback, useMemo, useState} from 'react';\nimport {type DateRangePickerValue} from '../date-range-picker';\n\n// Create a deeply optional version of another type\ntype PartialDeep<T> = T extends object\n ? {\n [P in keyof T]?: PartialDeep<T[P]>;\n }\n : T;\n\nexport interface TableState<TData = unknown> {\n /**\n * Current pagination state\n *\n * @default { pageIndex: 0, pageSize: 50 }\n */\n pagination: PaginationState;\n /**\n * Total number of entries in the table.\n * This number is used to calculate the number of pages in the pagination.\n * When null, the number of pages is calculated using the current data length.\n *\n * @default null\n */\n totalEntries: number | null;\n /**\n * Current sorting state\n *\n * @default []\n */\n sorting: SortingState;\n /**\n * Current global filter value\n *\n * @default ''\n */\n globalFilter: string;\n\n /**\n * Current expanded state\n *\n * @default {}\n */\n expanded: ExpandedState;\n /**\n * Predicates and their current value\n *\n * @default {}\n */\n predicates: Record<string, string>;\n /**\n * Layout currently selected. When null, the first layout is used.\n *\n * @default null\n */\n layout: string | null;\n /**\n * Currently selected date range\n *\n * @default [null, null]\n */\n dateRange: DateRangePickerValue;\n /**\n * Currently selected rows\n *\n * @default {}\n */\n rowSelection: Record<string, TData>;\n /**\n * Columns that are currently visible\n *\n * @default {}\n */\n columnVisibility: Record<string, boolean>;\n}\n\nexport interface TableStore<TData = unknown> {\n /**\n * Current state of the table.\n */\n state: TableState<TData>;\n /**\n * Allows to change the pagination state.\n */\n setPagination: React.Dispatch<React.SetStateAction<TableState<TData>['pagination']>>;\n /**\n * Allows to change the total number of entries.\n */\n setTotalEntries: React.Dispatch<React.SetStateAction<TableState<TData>['totalEntries']>>;\n /**\n * Allows to change the sorting state.\n */\n setSorting: React.Dispatch<React.SetStateAction<TableState<TData>['sorting']>>;\n /**\n * Allows to change the global filter value.\n */\n setGlobalFilter: React.Dispatch<React.SetStateAction<TableState<TData>['globalFilter']>>;\n /**\n * Allows to change the rows expanded state.\n */\n setExpanded: React.Dispatch<React.SetStateAction<TableState<TData>['expanded']>>;\n /**\n * Allows to change the predicates values.\n */\n setPredicates: React.Dispatch<React.SetStateAction<TableState<TData>['predicates']>>;\n /**\n * Allows to change the selected layout.\n */\n setLayout: React.Dispatch<React.SetStateAction<TableState<TData>['layout']>>;\n /**\n * Allows to change the selected date range.\n */\n setDateRange: React.Dispatch<React.SetStateAction<TableState<TData>['dateRange']>>;\n /**\n * Allows to change the current row selection.\n */\n setRowSelection: React.Dispatch<React.SetStateAction<TableState<TData>['rowSelection']>>;\n /**\n * Allows to change the visible columns.\n */\n setColumnVisibility: React.Dispatch<React.SetStateAction<TableState<TData>['columnVisibility']>>;\n /**\n * Whether the table is currently filtered.\n */\n isFiltered: boolean;\n /**\n * Whether the table has data when unfiltered.\n *\n * This is derived from the totalEntries so make sure you set that number correctly, even if you're using a client side table.\n */\n isVacant: boolean;\n /**\n * Clear currently applied filters.\n */\n clearFilters: () => void;\n /**\n * Deselects all currently selected rows.\n */\n clearRowSelection: () => void;\n /**\n * Get currently selected rows.\n */\n getSelectedRows: () => TData[];\n /**\n * Get currently selected row\n */\n getSelectedRow: () => TData | null;\n /**\n * Whether the user can select multiple rows at the same time.\n */\n multiRowSelectionEnabled: boolean;\n /**\n * Whether rows can be selected.\n */\n rowSelectionEnabled: boolean;\n /**\n * Whether row selection is forced.\n */\n rowSelectionForced: boolean;\n}\n\nexport interface UseTableOptions<TData = unknown> {\n /**\n * Initial state of the table.\n */\n initialState?: PartialDeep<TableState<TData>>;\n /**\n * Whether rows can be selected.\n *\n * @default true\n */\n enableRowSelection?: boolean;\n /**\n * Whether multiple rows can be selected at the same time.\n *\n * @default false\n */\n enableMultiRowSelection?: boolean;\n /**\n * Forces the user to always have one row selected.\n * When activating that setting, a good practice is to have a row already selected in the initial state.\n *\n * @default false\n */\n forceSelection?: boolean;\n}\n\nconst defaultOptions: UseTableOptions = {\n enableRowSelection: true,\n enableMultiRowSelection: false,\n forceSelection: false,\n};\n\nconst defaultState: Partial<TableState> = {\n pagination: {\n pageIndex: 0,\n pageSize: 50,\n },\n totalEntries: null,\n sorting: [],\n globalFilter: '',\n predicates: {},\n layout: null,\n dateRange: [null, null],\n rowSelection: {},\n columnVisibility: {},\n};\n\nexport const useTable = <TData>(userOptions: UseTableOptions<TData> = {}): TableStore<TData> => {\n const options: UseTableOptions<TData> = defaultsDeep({}, userOptions, defaultOptions);\n const initialState: TableState<TData> = defaultsDeep({}, options.initialState, defaultState);\n\n const [pagination, setPagination] = useState<TableState<TData>['pagination']>(\n initialState.pagination as PaginationState,\n );\n const [totalEntries, _setTotalEntries] = useState<TableState<TData>['totalEntries']>(initialState.totalEntries);\n const [unfilteredTotalEntries, setUnfilteredTotalEntries] = useState<TableState<TData>['totalEntries']>(\n initialState.totalEntries,\n );\n const [sorting, setSorting] = useState<TableState<TData>['sorting']>(initialState.sorting as SortingState);\n const [globalFilter, setGlobalFilter] = useState<TableState<TData>['globalFilter']>(initialState.globalFilter);\n const [expanded, setExpanded] = useState<TableState<TData>['expanded']>(initialState.expanded as ExpandedState);\n const [predicates, setPredicates] = useState<TableState<TData>['predicates']>(initialState.predicates);\n const [layout, setLayout] = useState<TableState<TData>['layout']>(initialState.layout);\n const [dateRange, setDateRange] = useState<TableState<TData>['dateRange']>(initialState.dateRange);\n const [rowSelection, setRowSelection] = useState<TableState<TData>['rowSelection']>(initialState.rowSelection);\n const [columnVisibility, setColumnVisibility] = useState<TableState<TData>['columnVisibility']>(\n initialState.columnVisibility,\n );\n\n const isFiltered =\n !!globalFilter ||\n Object.keys(predicates).some((predicate) => !!predicates[predicate]) ||\n !!dateRange?.[0] ||\n !!dateRange?.[1];\n\n const isVacant = unfilteredTotalEntries === 0;\n\n const setTotalEntries: typeof _setTotalEntries = useCallback(\n (updater) => {\n _setTotalEntries((old) => {\n const newTotalEntries = updater instanceof Function ? updater(old) : updater;\n if (!isFiltered) {\n setUnfilteredTotalEntries(newTotalEntries);\n }\n return newTotalEntries;\n });\n },\n [isFiltered],\n );\n\n const clearFilters = useCallback(() => {\n setPredicates(initialState.predicates);\n setGlobalFilter('');\n }, []);\n\n const clearRowSelection = useCallback(() => {\n setRowSelection({});\n }, []);\n\n const getSelectedRows = useCallback(() => Object.values(rowSelection), [rowSelection]);\n\n const getSelectedRow = () => getSelectedRows()[0] ?? null;\n\n useDidUpdate(() => {\n if (!options.enableMultiRowSelection) {\n clearRowSelection();\n }\n }, [globalFilter, pagination, sorting, dateRange, predicates]);\n\n const state = useMemo(\n () => ({\n pagination,\n totalEntries,\n sorting,\n globalFilter,\n expanded,\n predicates,\n layout,\n dateRange,\n rowSelection,\n columnVisibility,\n }),\n [\n pagination,\n totalEntries,\n sorting,\n globalFilter,\n expanded,\n predicates,\n layout,\n dateRange,\n rowSelection,\n columnVisibility,\n ],\n );\n\n return {\n state,\n setPagination,\n setTotalEntries,\n setSorting,\n setGlobalFilter,\n setExpanded,\n setPredicates,\n setLayout,\n setDateRange,\n setRowSelection,\n setColumnVisibility,\n isFiltered,\n isVacant,\n clearFilters,\n clearRowSelection,\n getSelectedRows,\n getSelectedRow,\n rowSelectionEnabled: options.enableRowSelection,\n rowSelectionForced: options.forceSelection,\n multiRowSelectionEnabled: options.enableMultiRowSelection,\n };\n};\n"],"names":["useDidUpdate","defaultsDeep","useCallback","useMemo","useState","defaultOptions","enableRowSelection","enableMultiRowSelection","forceSelection","defaultState","pagination","pageIndex","pageSize","totalEntries","sorting","globalFilter","predicates","layout","dateRange","rowSelection","columnVisibility","useTable","userOptions","options","initialState","setPagination","_setTotalEntries","unfilteredTotalEntries","setUnfilteredTotalEntries","setSorting","setGlobalFilter","expanded","setExpanded","setPredicates","setLayout","setDateRange","setRowSelection","setColumnVisibility","isFiltered","Object","keys","some","predicate","isVacant","setTotalEntries","updater","old","newTotalEntries","Function","clearFilters","clearRowSelection","getSelectedRows","values","getSelectedRow","state","rowSelectionEnabled","rowSelectionForced","multiRowSelectionEnabled"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
@@ -11,11 +11,21 @@ export { type NotificationsProps } from '@mantine/notifications';
11
11
  export * from '@tanstack/table-core';
12
12
  export * from './components';
13
13
  export { noop };
14
- export { ActionIcon, BrowserPreview, Button, CopyToClipboard, Header, Menu, Table, type ActionIconProps, type ButtonProps, type CopyToClipboardProps, type HeaderProps, type InitialTableState, type MenuItemProps, type TableProps, type TableState, } from './components';
14
+ export { ActionIcon, BrowserPreview, Button, CopyToClipboard, Header, Menu, Table, type ActionIconProps, type ButtonProps, type CopyToClipboardProps, type HeaderProps, type MenuItemProps, type TableProps, type TableState, } from './components';
15
15
  export * from './theme';
16
16
  declare module '@mantine/core' {
17
17
  interface MantineThemeColorsOverride {
18
18
  colors: Record<keyof typeof PlasmaColors | (string & {}), MantineColorsTuple>;
19
19
  }
20
20
  }
21
+ declare module '@tanstack/react-table' {
22
+ interface ColumnMeta<TData extends unknown, TValue> {
23
+ /**
24
+ * Whether the column is a control column.
25
+ * Control columns are columns that are not part of the data but are used to control the table.
26
+ * For example, a column that contains checkboxes to select rows.
27
+ */
28
+ controlColumn: boolean;
29
+ }
30
+ }
21
31
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,kBAAkB,EAAC,MAAM,eAAe,CAAC;AAEjD,OAAO,EAAC,IAAI,EAAC,MAAM,eAAe,CAAC;AACnC,OAAO,EAAC,YAAY,EAAC,MAAM,sBAAsB,CAAC;AAElD,cAAc,mBAAmB,CAAC;AAClC,cAAc,eAAe,CAAC;AAC9B,OAAO,EAAC,UAAU,EAAC,MAAM,eAAe,CAAC;AACzC,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,wBAAwB,CAAC;AACvC,OAAO,EAAC,KAAK,kBAAkB,EAAC,MAAM,wBAAwB,CAAC;AAC/D,cAAc,sBAAsB,CAAC;AACrC,cAAc,cAAc,CAAC;AAC7B,OAAO,EAAC,IAAI,EAAC,CAAC;AAGd,OAAO,EACH,UAAU,EACV,cAAc,EACd,MAAM,EACN,eAAe,EACf,MAAM,EACN,IAAI,EACJ,KAAK,EACL,KAAK,eAAe,EACpB,KAAK,WAAW,EAChB,KAAK,oBAAoB,EACzB,KAAK,WAAW,EAChB,KAAK,iBAAiB,EACtB,KAAK,aAAa,EAClB,KAAK,UAAU,EACf,KAAK,UAAU,GAClB,MAAM,cAAc,CAAC;AAEtB,cAAc,SAAS,CAAC;AAExB,OAAO,QAAQ,eAAe,CAAC;IAC3B,UAAiB,0BAA0B;QAEvC,MAAM,EAAE,MAAM,CAAC,MAAM,OAAO,YAAY,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,EAAE,kBAAkB,CAAC,CAAC;KACjF;CACJ"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,kBAAkB,EAAC,MAAM,eAAe,CAAC;AAEjD,OAAO,EAAC,IAAI,EAAC,MAAM,eAAe,CAAC;AACnC,OAAO,EAAC,YAAY,EAAC,MAAM,sBAAsB,CAAC;AAElD,cAAc,mBAAmB,CAAC;AAClC,cAAc,eAAe,CAAC;AAC9B,OAAO,EAAC,UAAU,EAAC,MAAM,eAAe,CAAC;AACzC,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,wBAAwB,CAAC;AACvC,OAAO,EAAC,KAAK,kBAAkB,EAAC,MAAM,wBAAwB,CAAC;AAC/D,cAAc,sBAAsB,CAAC;AACrC,cAAc,cAAc,CAAC;AAC7B,OAAO,EAAC,IAAI,EAAC,CAAC;AAGd,OAAO,EACH,UAAU,EACV,cAAc,EACd,MAAM,EACN,eAAe,EACf,MAAM,EACN,IAAI,EACJ,KAAK,EACL,KAAK,eAAe,EACpB,KAAK,WAAW,EAChB,KAAK,oBAAoB,EACzB,KAAK,WAAW,EAChB,KAAK,aAAa,EAClB,KAAK,UAAU,EACf,KAAK,UAAU,GAClB,MAAM,cAAc,CAAC;AAEtB,cAAc,SAAS,CAAC;AAExB,OAAO,QAAQ,eAAe,CAAC;IAC3B,UAAiB,0BAA0B;QAEvC,MAAM,EAAE,MAAM,CAAC,MAAM,OAAO,YAAY,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,EAAE,kBAAkB,CAAC,CAAC;KACjF;CACJ;AAED,OAAO,QAAQ,uBAAuB,CAAC;IACnC,UAAU,UAAU,CAAC,KAAK,SAAS,OAAO,EAAE,MAAM;QAC9C;;;;WAIG;QACH,aAAa,EAAE,OAAO,CAAC;KAC1B;CACJ"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/index.ts"],"sourcesContent":["import {MantineColorsTuple} from '@mantine/core';\n\nimport {noop} from '@mantine/core';\nimport {PlasmaColors} from './theme/PlasmaColors';\n\nexport * from '@mantine/carousel';\nexport * from '@mantine/core';\nexport {Pagination} from '@mantine/core';\nexport * from '@mantine/form';\nexport * from '@mantine/hooks';\nexport * from '@mantine/notifications';\nexport {type NotificationsProps} from '@mantine/notifications';\nexport * from '@tanstack/table-core';\nexport * from './components';\nexport {noop};\n\n// explicitly overriding mantine components\nexport {\n ActionIcon,\n BrowserPreview,\n Button,\n CopyToClipboard,\n Header,\n Menu,\n Table,\n type ActionIconProps,\n type ButtonProps,\n type CopyToClipboardProps,\n type HeaderProps,\n type InitialTableState,\n type MenuItemProps,\n type TableProps,\n type TableState,\n} from './components';\n\nexport * from './theme';\n\ndeclare module '@mantine/core' {\n export interface MantineThemeColorsOverride {\n // eslint-disable-next-line @typescript-eslint/ban-types\n colors: Record<keyof typeof PlasmaColors | (string & {}), MantineColorsTuple>;\n }\n}\n"],"names":["noop","Pagination","ActionIcon","BrowserPreview","Button","CopyToClipboard","Header","Menu","Table"],"rangeMappings":";;;;;;;;;;;;","mappings":"AAEA,SAAQA,IAAI,QAAO,gBAAgB;AAGnC,cAAc,oBAAoB;AAClC,cAAc,gBAAgB;AAC9B,SAAQC,UAAU,QAAO,gBAAgB;AACzC,cAAc,gBAAgB;AAC9B,cAAc,iBAAiB;AAC/B,cAAc,yBAAyB;AAEvC,cAAc,uBAAuB;AACrC,cAAc,eAAe;AAC7B,SAAQD,IAAI,GAAE;AAEd,2CAA2C;AAC3C,SACIE,UAAU,EACVC,cAAc,EACdC,MAAM,EACNC,eAAe,EACfC,MAAM,EACNC,IAAI,EACJC,KAAK,QASF,eAAe;AAEtB,cAAc,UAAU"}
1
+ {"version":3,"sources":["../../src/index.ts"],"sourcesContent":["import {MantineColorsTuple} from '@mantine/core';\n\nimport {noop} from '@mantine/core';\nimport {PlasmaColors} from './theme/PlasmaColors';\n\nexport * from '@mantine/carousel';\nexport * from '@mantine/core';\nexport {Pagination} from '@mantine/core';\nexport * from '@mantine/form';\nexport * from '@mantine/hooks';\nexport * from '@mantine/notifications';\nexport {type NotificationsProps} from '@mantine/notifications';\nexport * from '@tanstack/table-core';\nexport * from './components';\nexport {noop};\n\n// explicitly overriding mantine components\nexport {\n ActionIcon,\n BrowserPreview,\n Button,\n CopyToClipboard,\n Header,\n Menu,\n Table,\n type ActionIconProps,\n type ButtonProps,\n type CopyToClipboardProps,\n type HeaderProps,\n type MenuItemProps,\n type TableProps,\n type TableState,\n} from './components';\n\nexport * from './theme';\n\ndeclare module '@mantine/core' {\n export interface MantineThemeColorsOverride {\n // eslint-disable-next-line @typescript-eslint/ban-types\n colors: Record<keyof typeof PlasmaColors | (string & {}), MantineColorsTuple>;\n }\n}\n\ndeclare module '@tanstack/react-table' {\n interface ColumnMeta<TData extends unknown, TValue> {\n /**\n * Whether the column is a control column.\n * Control columns are columns that are not part of the data but are used to control the table.\n * For example, a column that contains checkboxes to select rows.\n */\n controlColumn: boolean;\n }\n}\n"],"names":["noop","Pagination","ActionIcon","BrowserPreview","Button","CopyToClipboard","Header","Menu","Table"],"rangeMappings":";;;;;;;;;;;;","mappings":"AAEA,SAAQA,IAAI,QAAO,gBAAgB;AAGnC,cAAc,oBAAoB;AAClC,cAAc,gBAAgB;AAC9B,SAAQC,UAAU,QAAO,gBAAgB;AACzC,cAAc,gBAAgB;AAC9B,cAAc,iBAAiB;AAC/B,cAAc,yBAAyB;AAEvC,cAAc,uBAAuB;AACrC,cAAc,eAAe;AAC7B,SAAQD,IAAI,GAAE;AAEd,2CAA2C;AAC3C,SACIE,UAAU,EACVC,cAAc,EACdC,MAAM,EACNC,eAAe,EACfC,MAAM,EACNC,IAAI,EACJC,KAAK,QAQF,eAAe;AAEtB,cAAc,UAAU"}
@@ -1 +1 @@
1
- {"version":3,"file":"Theme.d.ts","sourceRoot":"","sources":["../../../src/theme/Theme.tsx"],"names":[],"mappings":"AAUA,OAAO,EAiBH,oBAAoB,EAoBvB,MAAM,eAAe,CAAC;AA+BvB,eAAO,MAAM,WAAW,EAAE,oBAwNxB,CAAC"}
1
+ {"version":3,"file":"Theme.d.ts","sourceRoot":"","sources":["../../../src/theme/Theme.tsx"],"names":[],"mappings":"AAUA,OAAO,EAiBH,oBAAoB,EAoBvB,MAAM,eAAe,CAAC;AA+BvB,eAAO,MAAM,WAAW,EAAE,oBAuNxB,CAAC"}
@@ -39,7 +39,6 @@ export const plasmaTheme = createTheme({
39
39
  lineHeights: {
40
40
  md: '1.5'
41
41
  },
42
- fontSmoothing: false,
43
42
  spacing: {
44
43
  xs: '8px',
45
44
  sm: '16px',