@elliemae/ds-data-table 2.2.0-next.4 → 2.3.0-alpha.2

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 (559) hide show
  1. package/cjs/DataTable.js +63 -57
  2. package/cjs/DataTable.js.map +7 -0
  3. package/cjs/DataTableContext.js +52 -26
  4. package/cjs/DataTableContext.js.map +7 -0
  5. package/cjs/DataTableSchema.js +150 -112
  6. package/cjs/DataTableSchema.js.map +7 -0
  7. package/cjs/addons/Columns/ColumnAction/ColumnAction.js +40 -14
  8. package/cjs/addons/Columns/ColumnAction/ColumnAction.js.map +7 -0
  9. package/cjs/addons/Columns/ColumnDragHandle/ColumnDragHandle.js +52 -52
  10. package/cjs/addons/Columns/ColumnDragHandle/ColumnDragHandle.js.map +7 -0
  11. package/cjs/addons/Columns/ColumnExpand/ColumnExpand.js +124 -154
  12. package/cjs/addons/Columns/ColumnExpand/ColumnExpand.js.map +7 -0
  13. package/cjs/addons/Columns/ColumnSelectMultiple/ColumnSelectMultiple.js +63 -105
  14. package/cjs/addons/Columns/ColumnSelectMultiple/ColumnSelectMultiple.js.map +7 -0
  15. package/cjs/addons/Columns/ColumnSelectSingle/ColumnSelectSingle.js +62 -81
  16. package/cjs/addons/Columns/ColumnSelectSingle/ColumnSelectSingle.js.map +7 -0
  17. package/cjs/addons/Columns/index.js +51 -18
  18. package/cjs/addons/Columns/index.js.map +7 -0
  19. package/cjs/addons/Editables/ComboboxEditableCell/ComboboxEditableCell.js +57 -85
  20. package/cjs/addons/Editables/ComboboxEditableCell/ComboboxEditableCell.js.map +7 -0
  21. package/cjs/addons/Editables/DateEditableCell/DateEditableCell.js +51 -73
  22. package/cjs/addons/Editables/DateEditableCell/DateEditableCell.js.map +7 -0
  23. package/cjs/addons/Editables/TextEditableCell/TextEditableCell.js +67 -88
  24. package/cjs/addons/Editables/TextEditableCell/TextEditableCell.js.map +7 -0
  25. package/cjs/addons/Editables/index.js +39 -14
  26. package/cjs/addons/Editables/index.js.map +7 -0
  27. package/cjs/addons/Filters/Components/CurrencyRangeFilter/index.js +87 -137
  28. package/cjs/addons/Filters/Components/CurrencyRangeFilter/index.js.map +7 -0
  29. package/cjs/addons/Filters/Components/DateRangeFilter/index.js +64 -88
  30. package/cjs/addons/Filters/Components/DateRangeFilter/index.js.map +7 -0
  31. package/cjs/addons/Filters/Components/DateSwitcherFilter/index.js +72 -97
  32. package/cjs/addons/Filters/Components/DateSwitcherFilter/index.js.map +7 -0
  33. package/cjs/addons/Filters/Components/NumberRangeFilter/index.js +89 -141
  34. package/cjs/addons/Filters/Components/NumberRangeFilter/index.js.map +7 -0
  35. package/cjs/addons/Filters/Components/SelectFilter/BaseSelectFilter.js +68 -117
  36. package/cjs/addons/Filters/Components/SelectFilter/BaseSelectFilter.js.map +7 -0
  37. package/cjs/addons/Filters/Components/SelectFilter/MultiSelectFilter.js +59 -75
  38. package/cjs/addons/Filters/Components/SelectFilter/MultiSelectFilter.js.map +7 -0
  39. package/cjs/addons/Filters/Components/SelectFilter/SingleSelectFilter.js +59 -75
  40. package/cjs/addons/Filters/Components/SelectFilter/SingleSelectFilter.js.map +7 -0
  41. package/cjs/addons/Filters/Components/SelectFilter/components.js +86 -36
  42. package/cjs/addons/Filters/Components/SelectFilter/components.js.map +7 -0
  43. package/cjs/addons/Filters/Components/SelectFilter/useSelectFilterHandlers.js +67 -57
  44. package/cjs/addons/Filters/Components/SelectFilter/useSelectFilterHandlers.js.map +7 -0
  45. package/cjs/addons/Filters/Components/SelectFilter/utils.js +40 -46
  46. package/cjs/addons/Filters/Components/SelectFilter/utils.js.map +7 -0
  47. package/cjs/addons/Filters/Components/SingleDateFilter/index.js +64 -80
  48. package/cjs/addons/Filters/Components/SingleDateFilter/index.js.map +7 -0
  49. package/cjs/addons/Filters/Components/index.js +34 -21
  50. package/cjs/addons/Filters/Components/index.js.map +7 -0
  51. package/cjs/addons/Filters/index.js +28 -21
  52. package/cjs/addons/Filters/index.js.map +7 -0
  53. package/cjs/addons/Pagination/Pagination.js +45 -37
  54. package/cjs/addons/Pagination/Pagination.js.map +7 -0
  55. package/cjs/addons/Pagination/index.js +35 -9
  56. package/cjs/addons/Pagination/index.js.map +7 -0
  57. package/cjs/configs/constants.js +74 -47
  58. package/cjs/configs/constants.js.map +7 -0
  59. package/cjs/configs/fixedSizes.js +34 -6
  60. package/cjs/configs/fixedSizes.js.map +7 -0
  61. package/cjs/configs/index.js +32 -22
  62. package/cjs/configs/index.js.map +7 -0
  63. package/cjs/configs/useDatatableConfig.js +72 -59
  64. package/cjs/configs/useDatatableConfig.js.map +7 -0
  65. package/cjs/configs/usePaginationConfig.js +61 -23
  66. package/cjs/configs/usePaginationConfig.js.map +7 -0
  67. package/cjs/configs/useRowFlattenization.js +48 -40
  68. package/cjs/configs/useRowFlattenization.js.map +7 -0
  69. package/cjs/configs/useTableColsWithAddons.js +75 -62
  70. package/cjs/configs/useTableColsWithAddons.js.map +7 -0
  71. package/cjs/configs/zIndexInternalConfig.js +34 -6
  72. package/cjs/configs/zIndexInternalConfig.js.map +7 -0
  73. package/cjs/exported-related/EditableCell.js +64 -54
  74. package/cjs/exported-related/EditableCell.js.map +7 -0
  75. package/cjs/exported-related/FilterPopover.js +103 -137
  76. package/cjs/exported-related/FilterPopover.js.map +7 -0
  77. package/cjs/exported-related/FilterTypes.js +42 -14
  78. package/cjs/exported-related/FilterTypes.js.map +7 -0
  79. package/cjs/exported-related/Filters/applyOutOfTheBoxFilters.js +50 -27
  80. package/cjs/exported-related/Filters/applyOutOfTheBoxFilters.js.map +7 -0
  81. package/cjs/exported-related/Filters/currencyRangeFilterFn.js +44 -19
  82. package/cjs/exported-related/Filters/currencyRangeFilterFn.js.map +7 -0
  83. package/cjs/exported-related/Filters/dateRangeFilterFn.js +37 -45
  84. package/cjs/exported-related/Filters/dateRangeFilterFn.js.map +7 -0
  85. package/cjs/exported-related/Filters/dateSwitcherFilterFn.js +37 -12
  86. package/cjs/exported-related/Filters/dateSwitcherFilterFn.js.map +7 -0
  87. package/cjs/exported-related/Filters/index.js +34 -21
  88. package/cjs/exported-related/Filters/index.js.map +7 -0
  89. package/cjs/exported-related/Filters/multiSelectFilterFn.js +35 -14
  90. package/cjs/exported-related/Filters/multiSelectFilterFn.js.map +7 -0
  91. package/cjs/exported-related/Filters/numberRangeFilterFn.js +36 -13
  92. package/cjs/exported-related/Filters/numberRangeFilterFn.js.map +7 -0
  93. package/cjs/exported-related/Filters/singleDateFilterFn.js +37 -45
  94. package/cjs/exported-related/Filters/singleDateFilterFn.js.map +7 -0
  95. package/cjs/exported-related/Filters/singleSelectFilterFn.js +35 -12
  96. package/cjs/exported-related/Filters/singleSelectFilterFn.js.map +7 -0
  97. package/cjs/exported-related/Filters/types.js +27 -2
  98. package/cjs/exported-related/Filters/types.js.map +7 -0
  99. package/cjs/exported-related/RowRenderer/DefaultRowContentRenderer.js +107 -109
  100. package/cjs/exported-related/RowRenderer/DefaultRowContentRenderer.js.map +7 -0
  101. package/cjs/exported-related/RowRenderer/index.js +77 -95
  102. package/cjs/exported-related/RowRenderer/index.js.map +7 -0
  103. package/cjs/exported-related/RowRenderer/useRowRendererHandlers.js +71 -100
  104. package/cjs/exported-related/RowRenderer/useRowRendererHandlers.js.map +7 -0
  105. package/cjs/exported-related/RowRenderer/useRowRendererProperties.js +51 -42
  106. package/cjs/exported-related/RowRenderer/useRowRendererProperties.js.map +7 -0
  107. package/cjs/exported-related/RowRenderer/useRowStyle.js +47 -35
  108. package/cjs/exported-related/RowRenderer/useRowStyle.js.map +7 -0
  109. package/cjs/exported-related/RowVariants.js +43 -15
  110. package/cjs/exported-related/RowVariants.js.map +7 -0
  111. package/cjs/exported-related/Toolbar/Toolbar.js +103 -80
  112. package/cjs/exported-related/Toolbar/Toolbar.js.map +7 -0
  113. package/cjs/exported-related/Toolbar/index.js +35 -9
  114. package/cjs/exported-related/Toolbar/index.js.map +7 -0
  115. package/cjs/exported-related/groupBy.js +43 -25
  116. package/cjs/exported-related/groupBy.js.map +7 -0
  117. package/cjs/exported-related/index.js +44 -35
  118. package/cjs/exported-related/index.js.map +7 -0
  119. package/cjs/helpers/addCellData.js +43 -32
  120. package/cjs/helpers/addCellData.js.map +7 -0
  121. package/cjs/helpers/cellPadding.js +44 -27
  122. package/cjs/helpers/cellPadding.js.map +7 -0
  123. package/cjs/helpers/columnsToGrid.js +41 -17
  124. package/cjs/helpers/columnsToGrid.js.map +7 -0
  125. package/cjs/helpers/getIdFromUniqueRowAccessor.js +38 -20
  126. package/cjs/helpers/getIdFromUniqueRowAccessor.js.map +7 -0
  127. package/cjs/helpers/index.js +33 -20
  128. package/cjs/helpers/index.js.map +7 -0
  129. package/cjs/helpers/refs-helpers.js +41 -22
  130. package/cjs/helpers/refs-helpers.js.map +7 -0
  131. package/cjs/helpers/sizeToCss.js +35 -7
  132. package/cjs/helpers/sizeToCss.js.map +7 -0
  133. package/cjs/hooks/useRecoverFocusCol.js +41 -21
  134. package/cjs/hooks/useRecoverFocusCol.js.map +7 -0
  135. package/cjs/hooks/useRecoverFocusRow.js +37 -14
  136. package/cjs/hooks/useRecoverFocusRow.js.map +7 -0
  137. package/cjs/index.js +29 -38
  138. package/cjs/index.js.map +7 -0
  139. package/cjs/parts/Cells/Cell.js +95 -105
  140. package/cjs/parts/Cells/Cell.js.map +7 -0
  141. package/cjs/parts/Cells/index.js +83 -76
  142. package/cjs/parts/Cells/index.js.map +7 -0
  143. package/cjs/parts/Cells/useCellStyle.js +47 -27
  144. package/cjs/parts/Cells/useCellStyle.js.map +7 -0
  145. package/cjs/parts/DnDHandle.js +61 -73
  146. package/cjs/parts/DnDHandle.js.map +7 -0
  147. package/cjs/parts/DropIndicator.js +77 -68
  148. package/cjs/parts/DropIndicator.js.map +7 -0
  149. package/cjs/parts/EmptyContent.js +93 -58
  150. package/cjs/parts/EmptyContent.js.map +7 -0
  151. package/cjs/parts/FilterBar/FiltersBar.js +82 -115
  152. package/cjs/parts/FilterBar/FiltersBar.js.map +7 -0
  153. package/cjs/parts/FilterBar/components/DateRangePill.js +57 -40
  154. package/cjs/parts/FilterBar/components/DateRangePill.js.map +7 -0
  155. package/cjs/parts/FilterBar/components/DateSwitcherPill.js +57 -40
  156. package/cjs/parts/FilterBar/components/DateSwitcherPill.js.map +7 -0
  157. package/cjs/parts/FilterBar/components/MultiSelectPill.js +57 -42
  158. package/cjs/parts/FilterBar/components/MultiSelectPill.js.map +7 -0
  159. package/cjs/parts/FilterBar/components/NumberRangePill.js +56 -39
  160. package/cjs/parts/FilterBar/components/NumberRangePill.js.map +7 -0
  161. package/cjs/parts/FilterBar/components/SelectPill.js +55 -36
  162. package/cjs/parts/FilterBar/components/SelectPill.js.map +7 -0
  163. package/cjs/parts/FilterBar/components/SingleDatePill.js +56 -38
  164. package/cjs/parts/FilterBar/components/SingleDatePill.js.map +7 -0
  165. package/cjs/parts/FilterBar/components/index.js +33 -19
  166. package/cjs/parts/FilterBar/components/index.js.map +7 -0
  167. package/cjs/parts/FilterBar/index.js +35 -9
  168. package/cjs/parts/FilterBar/index.js.map +7 -0
  169. package/cjs/parts/FilterBar/styled.js +49 -23
  170. package/cjs/parts/FilterBar/styled.js.map +7 -0
  171. package/cjs/parts/FilterBar/types.js +27 -2
  172. package/cjs/parts/FilterBar/types.js.map +7 -0
  173. package/cjs/parts/Filters/index.js +69 -108
  174. package/cjs/parts/Filters/index.js.map +7 -0
  175. package/cjs/parts/Footer.js +39 -21
  176. package/cjs/parts/Footer.js.map +7 -0
  177. package/cjs/parts/Headers/EmptyChildrenGroup.js +42 -20
  178. package/cjs/parts/Headers/EmptyChildrenGroup.js.map +7 -0
  179. package/cjs/parts/Headers/HeaderCell.js +114 -159
  180. package/cjs/parts/Headers/HeaderCell.js.map +7 -0
  181. package/cjs/parts/Headers/HeaderCellGroup.js +94 -93
  182. package/cjs/parts/Headers/HeaderCellGroup.js.map +7 -0
  183. package/cjs/parts/Headers/HeaderCellTitle.js +50 -77
  184. package/cjs/parts/Headers/HeaderCellTitle.js.map +7 -0
  185. package/cjs/parts/Headers/HeaderResizer.js +74 -94
  186. package/cjs/parts/Headers/HeaderResizer.js.map +7 -0
  187. package/cjs/parts/Headers/RequiredDot.js +39 -21
  188. package/cjs/parts/Headers/RequiredDot.js.map +7 -0
  189. package/cjs/parts/Headers/index.js +58 -42
  190. package/cjs/parts/Headers/index.js.map +7 -0
  191. package/cjs/parts/Headers/useHeaderCellConfig.js +48 -25
  192. package/cjs/parts/Headers/useHeaderCellConfig.js.map +7 -0
  193. package/cjs/parts/Headers/useHeaderCellHandlers.js +87 -76
  194. package/cjs/parts/Headers/useHeaderCellHandlers.js.map +7 -0
  195. package/cjs/parts/HoC/SortableItemContext.js +44 -19
  196. package/cjs/parts/HoC/SortableItemContext.js.map +7 -0
  197. package/cjs/parts/HoC/withConditionalDnDColumnContext.js +86 -101
  198. package/cjs/parts/HoC/withConditionalDnDColumnContext.js.map +7 -0
  199. package/cjs/parts/HoC/withConditionalDnDRowContext.js +90 -93
  200. package/cjs/parts/HoC/withConditionalDnDRowContext.js.map +7 -0
  201. package/cjs/parts/HoC/withConditionalDnDSortableContext.js +50 -43
  202. package/cjs/parts/HoC/withConditionalDnDSortableContext.js.map +7 -0
  203. package/cjs/parts/HoC/withDnDSortableColumnContext.js +60 -58
  204. package/cjs/parts/HoC/withDnDSortableColumnContext.js.map +7 -0
  205. package/cjs/parts/HoC/withDnDSortableRowContext.js +59 -59
  206. package/cjs/parts/HoC/withDnDSortableRowContext.js.map +7 -0
  207. package/cjs/parts/Loader.js +50 -30
  208. package/cjs/parts/Loader.js.map +7 -0
  209. package/cjs/parts/Row.js +64 -59
  210. package/cjs/parts/Row.js.map +7 -0
  211. package/cjs/parts/RowLoading.js +53 -52
  212. package/cjs/parts/RowLoading.js.map +7 -0
  213. package/cjs/parts/RowVariants/RowVariantHeader.js +79 -95
  214. package/cjs/parts/RowVariants/RowVariantHeader.js.map +7 -0
  215. package/cjs/parts/RowVariants/RowVariantPrimary.js +55 -36
  216. package/cjs/parts/RowVariants/RowVariantPrimary.js.map +7 -0
  217. package/cjs/parts/RowVariants/RowVariantSecondary.js +56 -37
  218. package/cjs/parts/RowVariants/RowVariantSecondary.js.map +7 -0
  219. package/cjs/parts/RowVariants/index.js +59 -77
  220. package/cjs/parts/RowVariants/index.js.map +7 -0
  221. package/cjs/parts/RowVariants/types.js +27 -2
  222. package/cjs/parts/RowVariants/types.js.map +7 -0
  223. package/cjs/parts/Rows.js +71 -68
  224. package/cjs/parts/Rows.js.map +7 -0
  225. package/cjs/parts/SortByCaret.js +44 -30
  226. package/cjs/parts/SortByCaret.js.map +7 -0
  227. package/cjs/parts/SortableHeaderCell.js +43 -38
  228. package/cjs/parts/SortableHeaderCell.js.map +7 -0
  229. package/cjs/parts/TableContent.js +68 -84
  230. package/cjs/parts/TableContent.js.map +7 -0
  231. package/cjs/parts/VirtualRowsList.js +74 -89
  232. package/cjs/parts/VirtualRowsList.js.map +7 -0
  233. package/cjs/parts/index.js +45 -19
  234. package/cjs/parts/index.js.map +7 -0
  235. package/cjs/prop-types.js +76 -56
  236. package/cjs/prop-types.js.map +7 -0
  237. package/cjs/redux/reducers/headersReducers/defaults.js +34 -6
  238. package/cjs/redux/reducers/headersReducers/defaults.js.map +7 -0
  239. package/cjs/redux/reducers/headersReducers/headersReducers.js +46 -23
  240. package/cjs/redux/reducers/headersReducers/headersReducers.js.map +7 -0
  241. package/cjs/redux/reducers/headersReducers/index.js +29 -14
  242. package/cjs/redux/reducers/headersReducers/index.js.map +7 -0
  243. package/cjs/redux/reducers/headersReducers/logic.js +42 -33
  244. package/cjs/redux/reducers/headersReducers/logic.js.map +7 -0
  245. package/cjs/redux/reducers/headersReducers/useDispatchHeadersActions.js +40 -19
  246. package/cjs/redux/reducers/headersReducers/useDispatchHeadersActions.js.map +7 -0
  247. package/cjs/redux/reducers/index.js +46 -17
  248. package/cjs/redux/reducers/index.js.map +7 -0
  249. package/cjs/redux/reducers/rowsReducers/actions_types.js +47 -19
  250. package/cjs/redux/reducers/rowsReducers/actions_types.js.map +7 -0
  251. package/cjs/redux/reducers/rowsReducers/defaults.js +35 -7
  252. package/cjs/redux/reducers/rowsReducers/defaults.js.map +7 -0
  253. package/cjs/redux/reducers/rowsReducers/index.js +29 -20
  254. package/cjs/redux/reducers/rowsReducers/index.js.map +7 -0
  255. package/cjs/redux/reducers/rowsReducers/logic.js +41 -14
  256. package/cjs/redux/reducers/rowsReducers/logic.js.map +7 -0
  257. package/cjs/redux/reducers/rowsReducers/rowsReducer.js +58 -41
  258. package/cjs/redux/reducers/rowsReducers/rowsReducer.js.map +7 -0
  259. package/cjs/redux/reducers/rowsReducers/useDispatchRowsActions.js +48 -21
  260. package/cjs/redux/reducers/rowsReducers/useDispatchRowsActions.js.map +7 -0
  261. package/cjs/redux/storeConfig.js +36 -9
  262. package/cjs/redux/storeConfig.js.map +7 -0
  263. package/cjs/styled.js +295 -219
  264. package/cjs/styled.js.map +7 -0
  265. package/cjs/tests/utils/index.js +119 -0
  266. package/cjs/tests/utils/index.js.map +7 -0
  267. package/cjs/types/FunctionalHoC.js +27 -2
  268. package/cjs/types/FunctionalHoC.js.map +7 -0
  269. package/cjs/types/props.js +27 -2
  270. package/cjs/types/props.js.map +7 -0
  271. package/esm/DataTable.js +29 -42
  272. package/esm/DataTable.js.map +7 -0
  273. package/esm/DataTableContext.js +22 -19
  274. package/esm/DataTableContext.js.map +7 -0
  275. package/esm/DataTableSchema.js +108 -95
  276. package/esm/DataTableSchema.js.map +7 -0
  277. package/esm/addons/Columns/ColumnAction/ColumnAction.js +11 -10
  278. package/esm/addons/Columns/ColumnAction/ColumnAction.js.map +7 -0
  279. package/esm/addons/Columns/ColumnDragHandle/ColumnDragHandle.js +22 -43
  280. package/esm/addons/Columns/ColumnDragHandle/ColumnDragHandle.js.map +7 -0
  281. package/esm/addons/Columns/ColumnExpand/ColumnExpand.js +83 -132
  282. package/esm/addons/Columns/ColumnExpand/ColumnExpand.js.map +7 -0
  283. package/esm/addons/Columns/ColumnSelectMultiple/ColumnSelectMultiple.js +30 -92
  284. package/esm/addons/Columns/ColumnSelectMultiple/ColumnSelectMultiple.js.map +7 -0
  285. package/esm/addons/Columns/ColumnSelectSingle/ColumnSelectSingle.js +32 -71
  286. package/esm/addons/Columns/ColumnSelectSingle/ColumnSelectSingle.js.map +7 -0
  287. package/esm/addons/Columns/index.js +22 -9
  288. package/esm/addons/Columns/index.js.map +7 -0
  289. package/esm/addons/Editables/ComboboxEditableCell/ComboboxEditableCell.js +23 -72
  290. package/esm/addons/Editables/ComboboxEditableCell/ComboboxEditableCell.js.map +7 -0
  291. package/esm/addons/Editables/DateEditableCell/DateEditableCell.js +19 -62
  292. package/esm/addons/Editables/DateEditableCell/DateEditableCell.js.map +7 -0
  293. package/esm/addons/Editables/TextEditableCell/TextEditableCell.js +35 -76
  294. package/esm/addons/Editables/TextEditableCell/TextEditableCell.js.map +7 -0
  295. package/esm/addons/Editables/index.js +9 -9
  296. package/esm/addons/Editables/index.js.map +7 -0
  297. package/esm/addons/Filters/Components/CurrencyRangeFilter/index.js +55 -124
  298. package/esm/addons/Filters/Components/CurrencyRangeFilter/index.js.map +7 -0
  299. package/esm/addons/Filters/Components/DateRangeFilter/index.js +33 -77
  300. package/esm/addons/Filters/Components/DateRangeFilter/index.js.map +7 -0
  301. package/esm/addons/Filters/Components/DateSwitcherFilter/index.js +44 -85
  302. package/esm/addons/Filters/Components/DateSwitcherFilter/index.js.map +7 -0
  303. package/esm/addons/Filters/Components/NumberRangeFilter/index.js +57 -128
  304. package/esm/addons/Filters/Components/NumberRangeFilter/index.js.map +7 -0
  305. package/esm/addons/Filters/Components/SelectFilter/BaseSelectFilter.js +35 -105
  306. package/esm/addons/Filters/Components/SelectFilter/BaseSelectFilter.js.map +7 -0
  307. package/esm/addons/Filters/Components/SelectFilter/MultiSelectFilter.js +30 -67
  308. package/esm/addons/Filters/Components/SelectFilter/MultiSelectFilter.js.map +7 -0
  309. package/esm/addons/Filters/Components/SelectFilter/SingleSelectFilter.js +30 -67
  310. package/esm/addons/Filters/Components/SelectFilter/SingleSelectFilter.js.map +7 -0
  311. package/esm/addons/Filters/Components/SelectFilter/components.js +57 -23
  312. package/esm/addons/Filters/Components/SelectFilter/components.js.map +7 -0
  313. package/esm/addons/Filters/Components/SelectFilter/useSelectFilterHandlers.js +38 -53
  314. package/esm/addons/Filters/Components/SelectFilter/useSelectFilterHandlers.js.map +7 -0
  315. package/esm/addons/Filters/Components/SelectFilter/utils.js +11 -41
  316. package/esm/addons/Filters/Components/SelectFilter/utils.js.map +7 -0
  317. package/esm/addons/Filters/Components/SingleDateFilter/index.js +31 -67
  318. package/esm/addons/Filters/Components/SingleDateFilter/index.js.map +7 -0
  319. package/esm/addons/Filters/Components/index.js +9 -7
  320. package/esm/addons/Filters/Components/index.js.map +7 -0
  321. package/esm/addons/Filters/index.js +3 -7
  322. package/esm/addons/Filters/index.js.map +7 -0
  323. package/esm/addons/Pagination/Pagination.js +14 -27
  324. package/esm/addons/Pagination/Pagination.js.map +7 -0
  325. package/esm/addons/Pagination/index.js +6 -1
  326. package/esm/addons/Pagination/index.js.map +7 -0
  327. package/esm/configs/constants.js +45 -42
  328. package/esm/configs/constants.js.map +7 -0
  329. package/esm/configs/fixedSizes.js +5 -2
  330. package/esm/configs/fixedSizes.js.map +7 -0
  331. package/esm/configs/index.js +7 -5
  332. package/esm/configs/index.js.map +7 -0
  333. package/esm/configs/useDatatableConfig.js +35 -47
  334. package/esm/configs/useDatatableConfig.js.map +7 -0
  335. package/esm/configs/usePaginationConfig.js +30 -17
  336. package/esm/configs/usePaginationConfig.js.map +7 -0
  337. package/esm/configs/useRowFlattenization.js +16 -33
  338. package/esm/configs/useRowFlattenization.js.map +7 -0
  339. package/esm/configs/useTableColsWithAddons.js +51 -55
  340. package/esm/configs/useTableColsWithAddons.js.map +7 -0
  341. package/esm/configs/zIndexInternalConfig.js +5 -2
  342. package/esm/configs/zIndexInternalConfig.js.map +7 -0
  343. package/esm/exported-related/EditableCell.js +33 -44
  344. package/esm/exported-related/EditableCell.js.map +7 -0
  345. package/esm/exported-related/FilterPopover.js +70 -122
  346. package/esm/exported-related/FilterPopover.js.map +7 -0
  347. package/esm/exported-related/FilterTypes.js +12 -9
  348. package/esm/exported-related/FilterTypes.js.map +7 -0
  349. package/esm/exported-related/Filters/applyOutOfTheBoxFilters.js +14 -16
  350. package/esm/exported-related/Filters/applyOutOfTheBoxFilters.js.map +7 -0
  351. package/esm/exported-related/Filters/currencyRangeFilterFn.js +15 -15
  352. package/esm/exported-related/Filters/currencyRangeFilterFn.js.map +7 -0
  353. package/esm/exported-related/Filters/dateRangeFilterFn.js +8 -37
  354. package/esm/exported-related/Filters/dateRangeFilterFn.js.map +7 -0
  355. package/esm/exported-related/Filters/dateSwitcherFilterFn.js +7 -7
  356. package/esm/exported-related/Filters/dateSwitcherFilterFn.js.map +7 -0
  357. package/esm/exported-related/Filters/index.js +9 -7
  358. package/esm/exported-related/Filters/index.js.map +7 -0
  359. package/esm/exported-related/Filters/multiSelectFilterFn.js +6 -10
  360. package/esm/exported-related/Filters/multiSelectFilterFn.js.map +7 -0
  361. package/esm/exported-related/Filters/numberRangeFilterFn.js +7 -9
  362. package/esm/exported-related/Filters/numberRangeFilterFn.js.map +7 -0
  363. package/esm/exported-related/Filters/singleDateFilterFn.js +8 -37
  364. package/esm/exported-related/Filters/singleDateFilterFn.js.map +7 -0
  365. package/esm/exported-related/Filters/singleSelectFilterFn.js +6 -8
  366. package/esm/exported-related/Filters/singleSelectFilterFn.js.map +7 -0
  367. package/esm/exported-related/Filters/types.js +2 -1
  368. package/esm/exported-related/Filters/types.js.map +7 -0
  369. package/esm/exported-related/RowRenderer/DefaultRowContentRenderer.js +72 -94
  370. package/esm/exported-related/RowRenderer/DefaultRowContentRenderer.js.map +7 -0
  371. package/esm/exported-related/RowRenderer/index.js +45 -85
  372. package/esm/exported-related/RowRenderer/index.js.map +7 -0
  373. package/esm/exported-related/RowRenderer/useRowRendererHandlers.js +41 -95
  374. package/esm/exported-related/RowRenderer/useRowRendererHandlers.js.map +7 -0
  375. package/esm/exported-related/RowRenderer/useRowRendererProperties.js +19 -31
  376. package/esm/exported-related/RowRenderer/useRowRendererProperties.js.map +7 -0
  377. package/esm/exported-related/RowRenderer/useRowStyle.js +17 -30
  378. package/esm/exported-related/RowRenderer/useRowStyle.js.map +7 -0
  379. package/esm/exported-related/RowVariants.js +14 -9
  380. package/esm/exported-related/RowVariants.js.map +7 -0
  381. package/esm/exported-related/Toolbar/Toolbar.js +68 -64
  382. package/esm/exported-related/Toolbar/Toolbar.js.map +7 -0
  383. package/esm/exported-related/Toolbar/index.js +6 -1
  384. package/esm/exported-related/Toolbar/index.js.map +7 -0
  385. package/esm/exported-related/groupBy.js +14 -21
  386. package/esm/exported-related/groupBy.js.map +7 -0
  387. package/esm/exported-related/index.js +15 -13
  388. package/esm/exported-related/index.js.map +7 -0
  389. package/esm/helpers/addCellData.js +15 -25
  390. package/esm/helpers/addCellData.js.map +7 -0
  391. package/esm/helpers/cellPadding.js +15 -22
  392. package/esm/helpers/cellPadding.js.map +7 -0
  393. package/esm/helpers/columnsToGrid.js +12 -13
  394. package/esm/helpers/columnsToGrid.js.map +7 -0
  395. package/esm/helpers/getIdFromUniqueRowAccessor.js +9 -16
  396. package/esm/helpers/getIdFromUniqueRowAccessor.js.map +7 -0
  397. package/esm/helpers/index.js +8 -6
  398. package/esm/helpers/index.js.map +7 -0
  399. package/esm/helpers/refs-helpers.js +13 -19
  400. package/esm/helpers/refs-helpers.js.map +7 -0
  401. package/esm/helpers/sizeToCss.js +6 -3
  402. package/esm/helpers/sizeToCss.js.map +7 -0
  403. package/esm/hooks/useRecoverFocusCol.js +10 -15
  404. package/esm/hooks/useRecoverFocusCol.js.map +7 -0
  405. package/esm/hooks/useRecoverFocusRow.js +6 -8
  406. package/esm/hooks/useRecoverFocusRow.js.map +7 -0
  407. package/esm/index.js +4 -14
  408. package/esm/index.js.map +7 -0
  409. package/esm/parts/Cells/Cell.js +63 -94
  410. package/esm/parts/Cells/Cell.js.map +7 -0
  411. package/esm/parts/Cells/index.js +54 -70
  412. package/esm/parts/Cells/index.js.map +7 -0
  413. package/esm/parts/Cells/useCellStyle.js +16 -21
  414. package/esm/parts/Cells/useCellStyle.js.map +7 -0
  415. package/esm/parts/DnDHandle.js +32 -65
  416. package/esm/parts/DnDHandle.js.map +7 -0
  417. package/esm/parts/DropIndicator.js +49 -62
  418. package/esm/parts/DropIndicator.js.map +7 -0
  419. package/esm/parts/EmptyContent.js +64 -48
  420. package/esm/parts/EmptyContent.js.map +7 -0
  421. package/esm/parts/FilterBar/FiltersBar.js +49 -94
  422. package/esm/parts/FilterBar/FiltersBar.js.map +7 -0
  423. package/esm/parts/FilterBar/components/DateRangePill.js +27 -31
  424. package/esm/parts/FilterBar/components/DateRangePill.js.map +7 -0
  425. package/esm/parts/FilterBar/components/DateSwitcherPill.js +27 -31
  426. package/esm/parts/FilterBar/components/DateSwitcherPill.js.map +7 -0
  427. package/esm/parts/FilterBar/components/MultiSelectPill.js +28 -34
  428. package/esm/parts/FilterBar/components/MultiSelectPill.js.map +7 -0
  429. package/esm/parts/FilterBar/components/NumberRangePill.js +26 -30
  430. package/esm/parts/FilterBar/components/NumberRangePill.js.map +7 -0
  431. package/esm/parts/FilterBar/components/SelectPill.js +25 -27
  432. package/esm/parts/FilterBar/components/SelectPill.js.map +7 -0
  433. package/esm/parts/FilterBar/components/SingleDatePill.js +26 -29
  434. package/esm/parts/FilterBar/components/SingleDatePill.js.map +7 -0
  435. package/esm/parts/FilterBar/components/index.js +8 -6
  436. package/esm/parts/FilterBar/components/index.js.map +7 -0
  437. package/esm/parts/FilterBar/index.js +6 -1
  438. package/esm/parts/FilterBar/index.js.map +7 -0
  439. package/esm/parts/FilterBar/styled.js +20 -12
  440. package/esm/parts/FilterBar/styled.js.map +7 -0
  441. package/esm/parts/FilterBar/types.js +2 -1
  442. package/esm/parts/FilterBar/types.js.map +7 -0
  443. package/esm/parts/Filters/index.js +40 -92
  444. package/esm/parts/Filters/index.js.map +7 -0
  445. package/esm/parts/Footer.js +10 -15
  446. package/esm/parts/Footer.js.map +7 -0
  447. package/esm/parts/Headers/EmptyChildrenGroup.js +13 -11
  448. package/esm/parts/Headers/EmptyChildrenGroup.js.map +7 -0
  449. package/esm/parts/Headers/HeaderCell.js +77 -141
  450. package/esm/parts/Headers/HeaderCell.js.map +7 -0
  451. package/esm/parts/Headers/HeaderCellGroup.js +64 -82
  452. package/esm/parts/Headers/HeaderCellGroup.js.map +7 -0
  453. package/esm/parts/Headers/HeaderCellTitle.js +22 -70
  454. package/esm/parts/Headers/HeaderCellTitle.js.map +7 -0
  455. package/esm/parts/Headers/HeaderResizer.js +36 -77
  456. package/esm/parts/Headers/HeaderResizer.js.map +7 -0
  457. package/esm/parts/Headers/RequiredDot.js +10 -13
  458. package/esm/parts/Headers/RequiredDot.js.map +7 -0
  459. package/esm/parts/Headers/index.js +28 -35
  460. package/esm/parts/Headers/index.js.map +7 -0
  461. package/esm/parts/Headers/useHeaderCellConfig.js +19 -21
  462. package/esm/parts/Headers/useHeaderCellConfig.js.map +7 -0
  463. package/esm/parts/Headers/useHeaderCellHandlers.js +56 -66
  464. package/esm/parts/Headers/useHeaderCellHandlers.js.map +7 -0
  465. package/esm/parts/HoC/SortableItemContext.js +15 -15
  466. package/esm/parts/HoC/SortableItemContext.js.map +7 -0
  467. package/esm/parts/HoC/withConditionalDnDColumnContext.js +52 -85
  468. package/esm/parts/HoC/withConditionalDnDColumnContext.js.map +7 -0
  469. package/esm/parts/HoC/withConditionalDnDRowContext.js +59 -80
  470. package/esm/parts/HoC/withConditionalDnDRowContext.js.map +7 -0
  471. package/esm/parts/HoC/withConditionalDnDSortableContext.js +21 -34
  472. package/esm/parts/HoC/withConditionalDnDSortableContext.js.map +7 -0
  473. package/esm/parts/HoC/withDnDSortableColumnContext.js +26 -44
  474. package/esm/parts/HoC/withDnDSortableColumnContext.js.map +7 -0
  475. package/esm/parts/HoC/withDnDSortableRowContext.js +26 -46
  476. package/esm/parts/HoC/withDnDSortableRowContext.js.map +7 -0
  477. package/esm/parts/Loader.js +21 -22
  478. package/esm/parts/Loader.js.map +7 -0
  479. package/esm/parts/Row.js +33 -48
  480. package/esm/parts/Row.js.map +7 -0
  481. package/esm/parts/RowLoading.js +23 -42
  482. package/esm/parts/RowLoading.js.map +7 -0
  483. package/esm/parts/RowVariants/RowVariantHeader.js +47 -83
  484. package/esm/parts/RowVariants/RowVariantHeader.js.map +7 -0
  485. package/esm/parts/RowVariants/RowVariantPrimary.js +26 -28
  486. package/esm/parts/RowVariants/RowVariantPrimary.js.map +7 -0
  487. package/esm/parts/RowVariants/RowVariantSecondary.js +27 -29
  488. package/esm/parts/RowVariants/RowVariantSecondary.js.map +7 -0
  489. package/esm/parts/RowVariants/index.js +26 -65
  490. package/esm/parts/RowVariants/index.js.map +7 -0
  491. package/esm/parts/RowVariants/types.js +2 -1
  492. package/esm/parts/RowVariants/types.js.map +7 -0
  493. package/esm/parts/Rows.js +41 -61
  494. package/esm/parts/Rows.js.map +7 -0
  495. package/esm/parts/SortByCaret.js +15 -22
  496. package/esm/parts/SortByCaret.js.map +7 -0
  497. package/esm/parts/SortableHeaderCell.js +14 -29
  498. package/esm/parts/SortableHeaderCell.js.map +7 -0
  499. package/esm/parts/TableContent.js +35 -72
  500. package/esm/parts/TableContent.js.map +7 -0
  501. package/esm/parts/VirtualRowsList.js +40 -78
  502. package/esm/parts/VirtualRowsList.js.map +7 -0
  503. package/esm/parts/index.js +16 -6
  504. package/esm/parts/index.js.map +7 -0
  505. package/esm/prop-types.js +28 -22
  506. package/esm/prop-types.js.map +7 -0
  507. package/esm/redux/reducers/headersReducers/defaults.js +5 -2
  508. package/esm/redux/reducers/headersReducers/defaults.js.map +7 -0
  509. package/esm/redux/reducers/headersReducers/headersReducers.js +12 -11
  510. package/esm/redux/reducers/headersReducers/headersReducers.js.map +7 -0
  511. package/esm/redux/reducers/headersReducers/index.js +4 -2
  512. package/esm/redux/reducers/headersReducers/index.js.map +7 -0
  513. package/esm/redux/reducers/headersReducers/logic.js +13 -24
  514. package/esm/redux/reducers/headersReducers/logic.js.map +7 -0
  515. package/esm/redux/reducers/headersReducers/useDispatchHeadersActions.js +10 -14
  516. package/esm/redux/reducers/headersReducers/useDispatchHeadersActions.js.map +7 -0
  517. package/esm/redux/reducers/index.js +17 -11
  518. package/esm/redux/reducers/index.js.map +7 -0
  519. package/esm/redux/reducers/rowsReducers/actions_types.js +18 -9
  520. package/esm/redux/reducers/rowsReducers/actions_types.js.map +7 -0
  521. package/esm/redux/reducers/rowsReducers/defaults.js +6 -2
  522. package/esm/redux/reducers/rowsReducers/defaults.js.map +7 -0
  523. package/esm/redux/reducers/rowsReducers/index.js +4 -2
  524. package/esm/redux/reducers/rowsReducers/index.js.map +7 -0
  525. package/esm/redux/reducers/rowsReducers/logic.js +12 -3
  526. package/esm/redux/reducers/rowsReducers/logic.js.map +7 -0
  527. package/esm/redux/reducers/rowsReducers/rowsReducer.js +28 -18
  528. package/esm/redux/reducers/rowsReducers/rowsReducer.js.map +7 -0
  529. package/esm/redux/reducers/rowsReducers/useDispatchRowsActions.js +26 -15
  530. package/esm/redux/reducers/rowsReducers/useDispatchRowsActions.js.map +7 -0
  531. package/esm/redux/storeConfig.js +6 -4
  532. package/esm/redux/storeConfig.js.map +7 -0
  533. package/esm/styled.js +268 -194
  534. package/esm/styled.js.map +7 -0
  535. package/esm/tests/utils/index.js +90 -0
  536. package/esm/tests/utils/index.js.map +7 -0
  537. package/esm/types/FunctionalHoC.js +2 -1
  538. package/esm/types/FunctionalHoC.js.map +7 -0
  539. package/esm/types/props.js +2 -1
  540. package/esm/types/props.js.map +7 -0
  541. package/package.json +18 -18
  542. package/types/DataTable.d.ts +1 -1
  543. package/types/DataTableContext.d.ts +1 -0
  544. package/types/configs/useTableColsWithAddons.d.ts +1 -0
  545. package/types/exported-related/RowRenderer/index.d.ts +1 -0
  546. package/types/exported-related/RowRenderer/useRowRendererProperties.d.ts +1 -1
  547. package/types/parts/Cells/Cell.d.ts +1 -0
  548. package/types/parts/Cells/index.d.ts +1 -0
  549. package/types/parts/DropIndicator.d.ts +1 -0
  550. package/types/parts/EmptyContent.d.ts +1 -0
  551. package/types/parts/Footer.d.ts +1 -0
  552. package/types/parts/Headers/index.d.ts +2 -2
  553. package/types/parts/Loader.d.ts +2 -2
  554. package/types/parts/Row.d.ts +3 -2
  555. package/types/parts/RowLoading.d.ts +1 -0
  556. package/types/parts/Rows.d.ts +2 -2
  557. package/types/parts/TableContent.d.ts +1 -0
  558. package/types/parts/VirtualRowsList.d.ts +1 -1
  559. package/types/redux/reducers/index.d.ts +2 -2
@@ -1,70 +1,72 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- require('core-js/modules/esnext.async-iterator.filter.js');
6
- require('core-js/modules/esnext.iterator.constructor.js');
7
- require('core-js/modules/esnext.iterator.filter.js');
8
- require('core-js/modules/web.dom-collections.iterator.js');
9
- require('core-js/modules/esnext.async-iterator.reduce.js');
10
- require('core-js/modules/esnext.iterator.reduce.js');
11
- var React = require('react');
12
- var reactVirtual = require('react-virtual');
13
- var columnsToGrid = require('../helpers/columnsToGrid.js');
14
- var useRowFlattenization = require('./useRowFlattenization.js');
15
- var usePaginationConfig = require('./usePaginationConfig.js');
16
- var useTableColsWithAddons = require('./useTableColsWithAddons.js');
17
- var constants = require('./constants.js');
18
-
19
- const useDatatableConfig = props => {
20
- var _columnHeaderRef$curr, _columnHeaderRef$curr2, _columnHeaderRef$curr3;
21
-
22
- const virtualListRef = React.useRef(null);
23
- const columnHeaderRef = React.useRef(null); // ===========================================================================
24
- // Column config
25
- // ===========================================================================
26
-
27
- const tableColsWithAddons = useTableColsWithAddons(props);
28
- const visibleColumns = React.useMemo(() => tableColsWithAddons.filter(col => !props.hiddenColumns.includes(col.accessor)), [props.hiddenColumns, tableColsWithAddons]); // ===========================================================================
29
- // Virtualization
30
- // ===========================================================================
31
-
32
- const [dataLength, setDataLength] = React.useState(1); // estimateSize should not be really required given what was stated on
33
- // https://github.com/tannerlinsley/react-virtual/issues/23
34
-
35
- const virtualListHelpers = reactVirtual.useVirtual({
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getProtoOf = Object.getPrototypeOf;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __reExport = (target, module2, copyDefault, desc) => {
13
+ if (module2 && typeof module2 === "object" || typeof module2 === "function") {
14
+ for (let key of __getOwnPropNames(module2))
15
+ if (!__hasOwnProp.call(target, key) && (copyDefault || key !== "default"))
16
+ __defProp(target, key, { get: () => module2[key], enumerable: !(desc = __getOwnPropDesc(module2, key)) || desc.enumerable });
17
+ }
18
+ return target;
19
+ };
20
+ var __toESM = (module2, isNodeMode) => {
21
+ return __reExport(__markAsModule(__defProp(module2 != null ? __create(__getProtoOf(module2)) : {}, "default", !isNodeMode && module2 && module2.__esModule ? { get: () => module2.default, enumerable: true } : { value: module2, enumerable: true })), module2);
22
+ };
23
+ var __toCommonJS = /* @__PURE__ */ ((cache) => {
24
+ return (module2, temp) => {
25
+ return cache && cache.get(module2) || (temp = __reExport(__markAsModule({}), module2, 1), cache && cache.set(module2, temp), temp);
26
+ };
27
+ })(typeof WeakMap !== "undefined" ? /* @__PURE__ */ new WeakMap() : 0);
28
+ var useDatatableConfig_exports = {};
29
+ __export(useDatatableConfig_exports, {
30
+ useDatatableConfig: () => useDatatableConfig
31
+ });
32
+ var React = __toESM(require("react"));
33
+ var import_react = require("react");
34
+ var import_react_virtual = require("react-virtual");
35
+ var import_columnsToGrid = require("../helpers/columnsToGrid");
36
+ var import_useRowFlattenization = require("./useRowFlattenization");
37
+ var import_usePaginationConfig = require("./usePaginationConfig");
38
+ var import_useTableColsWithAddons = require("./useTableColsWithAddons");
39
+ var import_constants = require("./constants");
40
+ const useDatatableConfig = (props) => {
41
+ const virtualListRef = (0, import_react.useRef)(null);
42
+ const columnHeaderRef = (0, import_react.useRef)(null);
43
+ const tableColsWithAddons = (0, import_useTableColsWithAddons.useTableColsWithAddons)(props);
44
+ const visibleColumns = (0, import_react.useMemo)(() => tableColsWithAddons.filter((col) => !props.hiddenColumns.includes(col.accessor)), [props.hiddenColumns, tableColsWithAddons]);
45
+ const [dataLength, setDataLength] = (0, import_react.useState)(1);
46
+ const virtualListHelpers = (0, import_react_virtual.useVirtual)({
36
47
  size: dataLength,
37
48
  parentRef: virtualListRef,
38
49
  overscan: 15,
39
- paddingStart: (_columnHeaderRef$curr = (_columnHeaderRef$curr2 = columnHeaderRef.current) === null || _columnHeaderRef$curr2 === void 0 ? void 0 : (_columnHeaderRef$curr3 = _columnHeaderRef$curr2.getBoundingClientRect()) === null || _columnHeaderRef$curr3 === void 0 ? void 0 : _columnHeaderRef$curr3.height) !== null && _columnHeaderRef$curr !== void 0 ? _columnHeaderRef$curr : 24
40
- }); // ===========================================================================
41
- // Action ref setup
42
- // ===========================================================================
43
-
44
- React.useEffect(() => {
50
+ paddingStart: columnHeaderRef.current?.getBoundingClientRect()?.height ?? 24
51
+ });
52
+ (0, import_react.useEffect)(() => {
45
53
  if (props.actionRef) {
46
54
  props.actionRef.current.scrollToIndex = virtualListHelpers.scrollToIndex;
47
55
  props.actionRef.current.scrollToOffset = virtualListHelpers.scrollToOffset;
48
56
  }
49
- }, [props.actionRef, virtualListHelpers.scrollToIndex, virtualListHelpers.scrollToOffset]); // ===========================================================================
50
- // Data flattenization and pagination
51
- // ===========================================================================
52
-
53
- const [flattenedData, allDataFlattened] = useRowFlattenization.useRowFlattenization(props);
54
- const [paginatedData, paginationHelpers] = usePaginationConfig.usePaginationConfig(props, flattenedData); // Redo virtualization until we match the lengths
55
-
56
- if (dataLength !== (paginatedData || flattenedData).length) setDataLength((paginatedData || flattenedData).length); // ===========================================================================
57
- // Layout config
58
- // ===========================================================================
59
-
60
- const [gridLayout, setGridLayout] = React.useState(columnsToGrid.columnsToGrid(visibleColumns, props.colsLayoutStyle));
61
- const totalColumnsWidth = React.useMemo(() => props.colsLayoutStyle === constants.ColsLayoutStyle.Fixed ? gridLayout.reduce((acc, cur) => acc + Number.parseInt(cur, 10), 0) : '100%', [props.colsLayoutStyle, gridLayout]);
62
- const layoutHelpers = React.useMemo(() => ({
57
+ }, [props.actionRef, virtualListHelpers.scrollToIndex, virtualListHelpers.scrollToOffset]);
58
+ const [flattenedData, allDataFlattened] = (0, import_useRowFlattenization.useRowFlattenization)(props);
59
+ const [paginatedData, paginationHelpers] = (0, import_usePaginationConfig.usePaginationConfig)(props, flattenedData);
60
+ if (dataLength !== (paginatedData || flattenedData).length)
61
+ setDataLength((paginatedData || flattenedData).length);
62
+ const [gridLayout, setGridLayout] = (0, import_react.useState)((0, import_columnsToGrid.columnsToGrid)(visibleColumns, props.colsLayoutStyle));
63
+ const totalColumnsWidth = (0, import_react.useMemo)(() => props.colsLayoutStyle === import_constants.ColsLayoutStyle.Fixed ? gridLayout.reduce((acc, cur) => acc + Number.parseInt(cur, 10), 0) : "100%", [props.colsLayoutStyle, gridLayout]);
64
+ const layoutHelpers = (0, import_react.useMemo)(() => ({
63
65
  gridLayout,
64
66
  setGridLayout,
65
67
  totalColumnsWidth
66
68
  }), [gridLayout, setGridLayout, totalColumnsWidth]);
67
- const ctx = React.useMemo(() => ({
69
+ const ctx = (0, import_react.useMemo)(() => ({
68
70
  tableProps: props,
69
71
  layoutHelpers,
70
72
  paginationHelpers,
@@ -74,8 +76,19 @@ const useDatatableConfig = props => {
74
76
  allDataFlattened,
75
77
  virtualListRef,
76
78
  columnHeaderRef
77
- }), [props, layoutHelpers, paginationHelpers, visibleColumns, virtualListHelpers, paginatedData, flattenedData, allDataFlattened, virtualListRef, columnHeaderRef]);
79
+ }), [
80
+ props,
81
+ layoutHelpers,
82
+ paginationHelpers,
83
+ visibleColumns,
84
+ virtualListHelpers,
85
+ paginatedData,
86
+ flattenedData,
87
+ allDataFlattened,
88
+ virtualListRef,
89
+ columnHeaderRef
90
+ ]);
78
91
  return ctx;
79
92
  };
80
-
81
- exports.useDatatableConfig = useDatatableConfig;
93
+ module.exports = __toCommonJS(useDatatableConfig_exports);
94
+ //# sourceMappingURL=useDatatableConfig.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/configs/useDatatableConfig.tsx", "../../../../../scripts/build/transpile/react-shim.js"],
4
+ "sourcesContent": ["import { useEffect, useMemo, useRef, useState } from 'react';\nimport { useVirtual } from 'react-virtual';\nimport { columnsToGrid } from '../helpers/columnsToGrid';\nimport { TypescriptColumn, TypescriptContext, TypescriptProps } from '../types/props';\nimport { useRowFlattenization } from './useRowFlattenization';\nimport { usePaginationConfig } from './usePaginationConfig';\nimport { useTableColsWithAddons } from './useTableColsWithAddons';\nimport { ColsLayoutStyle } from './constants';\n\nexport const useDatatableConfig = (props: TypescriptProps): TypescriptContext => {\n const virtualListRef = useRef<HTMLDivElement>(null);\n const columnHeaderRef = useRef<HTMLDivElement>(null);\n\n // ===========================================================================\n // Column config\n // ===========================================================================\n const tableColsWithAddons = useTableColsWithAddons(props);\n\n const visibleColumns = useMemo(\n () => tableColsWithAddons.filter((col: TypescriptColumn) => !props.hiddenColumns.includes(col.accessor)),\n [props.hiddenColumns, tableColsWithAddons],\n );\n\n // ===========================================================================\n // Virtualization\n // ===========================================================================\n\n const [dataLength, setDataLength] = useState(1);\n\n // estimateSize should not be really required given what was stated on\n // https://github.com/tannerlinsley/react-virtual/issues/23\n const virtualListHelpers = useVirtual({\n size: dataLength,\n parentRef: virtualListRef,\n overscan: 15,\n paddingStart: columnHeaderRef.current?.getBoundingClientRect()?.height ?? 24,\n });\n\n // ===========================================================================\n // Action ref setup\n // ===========================================================================\n useEffect(() => {\n if (props.actionRef) {\n props.actionRef.current.scrollToIndex = virtualListHelpers.scrollToIndex;\n props.actionRef.current.scrollToOffset = virtualListHelpers.scrollToOffset;\n }\n }, [props.actionRef, virtualListHelpers.scrollToIndex, virtualListHelpers.scrollToOffset]);\n\n // ===========================================================================\n // Data flattenization and pagination\n // ===========================================================================\n\n const [flattenedData, allDataFlattened] = useRowFlattenization(props);\n\n const [paginatedData, paginationHelpers] = usePaginationConfig(props, flattenedData);\n\n // Redo virtualization until we match the lengths\n if (dataLength !== (paginatedData || flattenedData).length) setDataLength((paginatedData || flattenedData).length);\n\n // ===========================================================================\n // Layout config\n // ===========================================================================\n\n const [gridLayout, setGridLayout] = useState(columnsToGrid(visibleColumns, props.colsLayoutStyle));\n\n const totalColumnsWidth = useMemo(\n () =>\n props.colsLayoutStyle === ColsLayoutStyle.Fixed\n ? gridLayout.reduce((acc: number, cur: string) => acc + Number.parseInt(cur, 10), 0)\n : '100%',\n [props.colsLayoutStyle, gridLayout],\n );\n\n const layoutHelpers = useMemo(\n () => ({\n gridLayout,\n setGridLayout,\n totalColumnsWidth,\n }),\n [gridLayout, setGridLayout, totalColumnsWidth],\n );\n\n const ctx = useMemo(\n () => ({\n tableProps: props,\n layoutHelpers,\n paginationHelpers,\n visibleColumns,\n virtualListHelpers,\n flattenedData: paginatedData || flattenedData,\n allDataFlattened,\n virtualListRef,\n columnHeaderRef,\n }),\n [\n props,\n layoutHelpers,\n paginationHelpers,\n visibleColumns,\n virtualListHelpers,\n paginatedData,\n flattenedData,\n allDataFlattened,\n virtualListRef,\n columnHeaderRef,\n ],\n );\n\n return ctx;\n};\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB,mBAAqD;AACrD,2BAA2B;AAC3B,2BAA8B;AAE9B,kCAAqC;AACrC,iCAAoC;AACpC,oCAAuC;AACvC,uBAAgC;AAEzB,MAAM,qBAAqB,CAAC,UAA8C;AAC/E,QAAM,iBAAiB,yBAAuB;AAC9C,QAAM,kBAAkB,yBAAuB;AAK/C,QAAM,sBAAsB,0DAAuB;AAEnD,QAAM,iBAAiB,0BACrB,MAAM,oBAAoB,OAAO,CAAC,QAA0B,CAAC,MAAM,cAAc,SAAS,IAAI,YAC9F,CAAC,MAAM,eAAe;AAOxB,QAAM,CAAC,YAAY,iBAAiB,2BAAS;AAI7C,QAAM,qBAAqB,qCAAW;AAAA,IACpC,MAAM;AAAA,IACN,WAAW;AAAA,IACX,UAAU;AAAA,IACV,cAAc,gBAAgB,SAAS,yBAAyB,UAAU;AAAA;AAM5E,8BAAU,MAAM;AACd,QAAI,MAAM,WAAW;AACnB,YAAM,UAAU,QAAQ,gBAAgB,mBAAmB;AAC3D,YAAM,UAAU,QAAQ,iBAAiB,mBAAmB;AAAA;AAAA,KAE7D,CAAC,MAAM,WAAW,mBAAmB,eAAe,mBAAmB;AAM1E,QAAM,CAAC,eAAe,oBAAoB,sDAAqB;AAE/D,QAAM,CAAC,eAAe,qBAAqB,oDAAoB,OAAO;AAGtE,MAAI,eAAgB,kBAAiB,eAAe;AAAQ,kBAAe,kBAAiB,eAAe;AAM3G,QAAM,CAAC,YAAY,iBAAiB,2BAAS,wCAAc,gBAAgB,MAAM;AAEjF,QAAM,oBAAoB,0BACxB,MACE,MAAM,oBAAoB,iCAAgB,QACtC,WAAW,OAAO,CAAC,KAAa,QAAgB,MAAM,OAAO,SAAS,KAAK,KAAK,KAChF,QACN,CAAC,MAAM,iBAAiB;AAG1B,QAAM,gBAAgB,0BACpB,MAAO;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,MAEF,CAAC,YAAY,eAAe;AAG9B,QAAM,MAAM,0BACV,MAAO;AAAA,IACL,YAAY;AAAA,IACZ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,eAAe,iBAAiB;AAAA,IAChC;AAAA,IACA;AAAA,IACA;AAAA,MAEF;AAAA,IACE;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA;AAIJ,SAAO;AAAA;",
6
+ "names": []
7
+ }
@@ -1,19 +1,41 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- var React = require('react');
6
-
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getProtoOf = Object.getPrototypeOf;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __reExport = (target, module2, copyDefault, desc) => {
13
+ if (module2 && typeof module2 === "object" || typeof module2 === "function") {
14
+ for (let key of __getOwnPropNames(module2))
15
+ if (!__hasOwnProp.call(target, key) && (copyDefault || key !== "default"))
16
+ __defProp(target, key, { get: () => module2[key], enumerable: !(desc = __getOwnPropDesc(module2, key)) || desc.enumerable });
17
+ }
18
+ return target;
19
+ };
20
+ var __toESM = (module2, isNodeMode) => {
21
+ return __reExport(__markAsModule(__defProp(module2 != null ? __create(__getProtoOf(module2)) : {}, "default", !isNodeMode && module2 && module2.__esModule ? { get: () => module2.default, enumerable: true } : { value: module2, enumerable: true })), module2);
22
+ };
23
+ var __toCommonJS = /* @__PURE__ */ ((cache) => {
24
+ return (module2, temp) => {
25
+ return cache && cache.get(module2) || (temp = __reExport(__markAsModule({}), module2, 1), cache && cache.set(module2, temp), temp);
26
+ };
27
+ })(typeof WeakMap !== "undefined" ? /* @__PURE__ */ new WeakMap() : 0);
28
+ var usePaginationConfig_exports = {};
29
+ __export(usePaginationConfig_exports, {
30
+ usePaginationConfig: () => usePaginationConfig
31
+ });
32
+ var React = __toESM(require("react"));
33
+ var import_react = require("react");
7
34
  const noPagination = {};
8
-
9
35
  const emptyFunc = () => null;
10
-
11
36
  const usePaginationConfig = (props, flattenedData) => {
12
- const {
13
- pagination
14
- } = props;
15
- const hasPagination = !!pagination; // Set default values
16
-
37
+ const { pagination } = props;
38
+ const hasPagination = !!pagination;
17
39
  const {
18
40
  pageIndex = 1,
19
41
  canPreviousPage = true,
@@ -30,15 +52,14 @@ const usePaginationConfig = (props, flattenedData) => {
30
52
  maxPerPage = 100,
31
53
  showPerPageSelector = true,
32
54
  pageDetails = [],
33
- pageDetailsTitle = ''
34
- } = pagination || noPagination; // pagination can be false
35
- // Get the needed page
36
-
37
- const page = React.useMemo(() => {
38
- if (!hasPagination) return null;
55
+ pageDetailsTitle = ""
56
+ } = pagination || noPagination;
57
+ const page = (0, import_react.useMemo)(() => {
58
+ if (!hasPagination)
59
+ return null;
39
60
  return flattenedData.slice((pageIndex - 1) * pageSize, pageIndex * pageSize);
40
61
  }, [flattenedData, pageIndex, pageSize, hasPagination]);
41
- const paginationHelpers = React.useMemo(() => ({
62
+ const paginationHelpers = (0, import_react.useMemo)(() => ({
42
63
  pageIndex: pageIndex - 1,
43
64
  canPreviousPage,
44
65
  canNextPage,
@@ -55,8 +76,25 @@ const usePaginationConfig = (props, flattenedData) => {
55
76
  showPerPageSelector,
56
77
  pageDetails,
57
78
  pageDetailsTitle
58
- }), [pageIndex, canPreviousPage, canNextPage, pageSize, perPageOptions, onPageSizeChange, onPreviousPage, onNextPage, onPageChange, pageCount, perPageStep, minPerPage, maxPerPage, showPerPageSelector, pageDetails, pageDetailsTitle]);
79
+ }), [
80
+ pageIndex,
81
+ canPreviousPage,
82
+ canNextPage,
83
+ pageSize,
84
+ perPageOptions,
85
+ onPageSizeChange,
86
+ onPreviousPage,
87
+ onNextPage,
88
+ onPageChange,
89
+ pageCount,
90
+ perPageStep,
91
+ minPerPage,
92
+ maxPerPage,
93
+ showPerPageSelector,
94
+ pageDetails,
95
+ pageDetailsTitle
96
+ ]);
59
97
  return [page, paginationHelpers];
60
98
  };
61
-
62
- exports.usePaginationConfig = usePaginationConfig;
99
+ module.exports = __toCommonJS(usePaginationConfig_exports);
100
+ //# sourceMappingURL=usePaginationConfig.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/configs/usePaginationConfig.tsx", "../../../../../scripts/build/transpile/react-shim.js"],
4
+ "sourcesContent": ["import { useMemo } from 'react';\nimport { TypescriptPagination, TypescriptProps, TypescriptRow } from '../types/props';\n\nconst noPagination: Record<string, never> = {};\n\nconst emptyFunc = () => null;\n\nexport const usePaginationConfig = (\n props: TypescriptProps,\n flattenedData: TypescriptRow[],\n): [TypescriptRow[], TypescriptPagination] => {\n const { pagination } = props;\n\n const hasPagination = !!pagination;\n\n // Set default values\n const {\n pageIndex = 1,\n canPreviousPage = true,\n canNextPage = true,\n pageSize = 10,\n perPageOptions = [10],\n onPageSizeChange = emptyFunc,\n onPreviousPage = emptyFunc,\n onNextPage = emptyFunc,\n onPageChange = emptyFunc,\n pageCount = Math.ceil(flattenedData.length / pageSize),\n perPageStep = 5,\n minPerPage = 0,\n maxPerPage = 100,\n showPerPageSelector = true,\n pageDetails = [],\n pageDetailsTitle = '',\n } = pagination || noPagination; // pagination can be false\n\n // Get the needed page\n const page = useMemo(() => {\n if (!hasPagination) return null;\n return flattenedData.slice((pageIndex - 1) * pageSize, pageIndex * pageSize);\n }, [flattenedData, pageIndex, pageSize, hasPagination]);\n\n const paginationHelpers = useMemo(\n () => ({\n pageIndex: pageIndex - 1,\n canPreviousPage,\n canNextPage,\n pageSize,\n perPageOptions,\n onPageSizeChange,\n onPreviousPage,\n onNextPage,\n onPageChange,\n pageCount,\n perPageStep,\n minPerPage,\n maxPerPage,\n showPerPageSelector,\n pageDetails,\n pageDetailsTitle,\n }),\n [\n pageIndex,\n canPreviousPage,\n canNextPage,\n pageSize,\n perPageOptions,\n onPageSizeChange,\n onPreviousPage,\n onNextPage,\n onPageChange,\n pageCount,\n perPageStep,\n minPerPage,\n maxPerPage,\n showPerPageSelector,\n pageDetails,\n pageDetailsTitle,\n ],\n );\n return [page, paginationHelpers];\n};\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB,mBAAwB;AAGxB,MAAM,eAAsC;AAE5C,MAAM,YAAY,MAAM;AAEjB,MAAM,sBAAsB,CACjC,OACA,kBAC4C;AAC5C,QAAM,EAAE,eAAe;AAEvB,QAAM,gBAAgB,CAAC,CAAC;AAGxB,QAAM;AAAA,IACJ,YAAY;AAAA,IACZ,kBAAkB;AAAA,IAClB,cAAc;AAAA,IACd,WAAW;AAAA,IACX,iBAAiB,CAAC;AAAA,IAClB,mBAAmB;AAAA,IACnB,iBAAiB;AAAA,IACjB,aAAa;AAAA,IACb,eAAe;AAAA,IACf,YAAY,KAAK,KAAK,cAAc,SAAS;AAAA,IAC7C,cAAc;AAAA,IACd,aAAa;AAAA,IACb,aAAa;AAAA,IACb,sBAAsB;AAAA,IACtB,cAAc;AAAA,IACd,mBAAmB;AAAA,MACjB,cAAc;AAGlB,QAAM,OAAO,0BAAQ,MAAM;AACzB,QAAI,CAAC;AAAe,aAAO;AAC3B,WAAO,cAAc,MAAO,aAAY,KAAK,UAAU,YAAY;AAAA,KAClE,CAAC,eAAe,WAAW,UAAU;AAExC,QAAM,oBAAoB,0BACxB,MAAO;AAAA,IACL,WAAW,YAAY;AAAA,IACvB;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,MAEF;AAAA,IACE;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA;AAGJ,SAAO,CAAC,MAAM;AAAA;",
6
+ "names": []
7
+ }
@@ -1,33 +1,48 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- require('core-js/modules/esnext.async-iterator.for-each.js');
6
- require('core-js/modules/esnext.iterator.constructor.js');
7
- require('core-js/modules/esnext.iterator.for-each.js');
8
- var React = require('react');
9
- var getIdFromUniqueRowAccessor = require('../helpers/getIdFromUniqueRowAccessor.js');
10
-
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getProtoOf = Object.getPrototypeOf;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __reExport = (target, module2, copyDefault, desc) => {
13
+ if (module2 && typeof module2 === "object" || typeof module2 === "function") {
14
+ for (let key of __getOwnPropNames(module2))
15
+ if (!__hasOwnProp.call(target, key) && (copyDefault || key !== "default"))
16
+ __defProp(target, key, { get: () => module2[key], enumerable: !(desc = __getOwnPropDesc(module2, key)) || desc.enumerable });
17
+ }
18
+ return target;
19
+ };
20
+ var __toESM = (module2, isNodeMode) => {
21
+ return __reExport(__markAsModule(__defProp(module2 != null ? __create(__getProtoOf(module2)) : {}, "default", !isNodeMode && module2 && module2.__esModule ? { get: () => module2.default, enumerable: true } : { value: module2, enumerable: true })), module2);
22
+ };
23
+ var __toCommonJS = /* @__PURE__ */ ((cache) => {
24
+ return (module2, temp) => {
25
+ return cache && cache.get(module2) || (temp = __reExport(__markAsModule({}), module2, 1), cache && cache.set(module2, temp), temp);
26
+ };
27
+ })(typeof WeakMap !== "undefined" ? /* @__PURE__ */ new WeakMap() : 0);
28
+ var useRowFlattenization_exports = {};
29
+ __export(useRowFlattenization_exports, {
30
+ useRowFlattenization: () => useRowFlattenization
31
+ });
32
+ var React = __toESM(require("react"));
33
+ var import_react = require("react");
34
+ var import_getIdFromUniqueRowAccessor = require("../helpers/getIdFromUniqueRowAccessor");
11
35
  const emptyObject = {};
12
36
  const trueReturner = new Proxy({}, {
13
37
  get: () => true
14
38
  });
15
-
16
- const flatten = function (data, expandedRows, uniqueRowAccessor) {
17
- let maxDepth = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 0;
39
+ const flatten = (data, expandedRows, uniqueRowAccessor, maxDepth = 0) => {
18
40
  const result = [];
19
-
20
- const doit = function (row) {
21
- var _row$subRows, _row$subRows$length, _row$subRows2;
22
-
23
- let index = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
24
- let parentId = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;
25
- let parentIndex = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null;
26
- let depth = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : 0;
27
- const id = (parentId ? "".concat(parentId, ".") : '') + index.toString();
28
- const uid = getIdFromUniqueRowAccessor.getIdFromUniqueRowAccessor(uniqueRowAccessor, {
41
+ const doit = (row, index = 0, parentId = null, parentIndex = null, depth = 0) => {
42
+ const id = (parentId ? `${parentId}.` : "") + index.toString();
43
+ const uid = (0, import_getIdFromUniqueRowAccessor.getIdFromUniqueRowAccessor)(uniqueRowAccessor, {
29
44
  id,
30
- original: row !== null && row !== void 0 ? row : {}
45
+ original: row ?? {}
31
46
  });
32
47
  const isExpanded = expandedRows[uid];
33
48
  const rowToPush = {
@@ -39,29 +54,22 @@ const flatten = function (data, expandedRows, uniqueRowAccessor) {
39
54
  parentIndex,
40
55
  depth,
41
56
  isExpanded,
42
- subRows: (_row$subRows = row.subRows) !== null && _row$subRows !== void 0 ? _row$subRows : [],
43
- childrenCount: (_row$subRows$length = (_row$subRows2 = row.subRows) === null || _row$subRows2 === void 0 ? void 0 : _row$subRows2.length) !== null && _row$subRows$length !== void 0 ? _row$subRows$length : 0,
44
- original: row !== null && row !== void 0 ? row : {}
57
+ original: row ?? {}
45
58
  };
46
- result.push(rowToPush); // If we have subrows and we are expanded
47
-
48
- if (row !== null && row !== void 0 && row.subRows && expandedRows[uid] && depth <= maxDepth) {
59
+ result.push(rowToPush);
60
+ if (row?.subRows && expandedRows[uid] && depth <= maxDepth) {
49
61
  row.subRows.forEach((subRow, i) => doit(subRow, i, uid, rowToPush.realIndex, depth + 1));
50
62
  }
51
63
  };
52
-
53
64
  data.forEach((row, i) => doit(row, i));
54
65
  return result;
55
66
  };
56
-
57
- const useRowFlattenization = props => {
58
- const {
59
- data
60
- } = props;
67
+ const useRowFlattenization = (props) => {
68
+ const { data } = props;
61
69
  const expandedRows = props.isExpandable ? props.expandedRows : emptyObject;
62
- const flattenedData = React.useMemo(() => flatten(data, expandedRows, props.uniqueRowAccessor), [data, expandedRows, props.uniqueRowAccessor]);
63
- const allDataFlattened = React.useMemo(() => flatten(data, trueReturner, props.uniqueRowAccessor, Infinity), [data, props.uniqueRowAccessor]);
70
+ const flattenedData = (0, import_react.useMemo)(() => flatten(data, expandedRows, props.uniqueRowAccessor), [data, expandedRows, props.uniqueRowAccessor]);
71
+ const allDataFlattened = (0, import_react.useMemo)(() => flatten(data, trueReturner, props.uniqueRowAccessor, Infinity), [data, props.uniqueRowAccessor]);
64
72
  return [flattenedData, allDataFlattened];
65
73
  };
66
-
67
- exports.useRowFlattenization = useRowFlattenization;
74
+ module.exports = __toCommonJS(useRowFlattenization_exports);
75
+ //# sourceMappingURL=useRowFlattenization.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/configs/useRowFlattenization.tsx", "../../../../../scripts/build/transpile/react-shim.js"],
4
+ "sourcesContent": ["/* eslint-disable max-params */\nimport { useMemo } from 'react';\nimport { getIdFromUniqueRowAccessor } from '../helpers/getIdFromUniqueRowAccessor';\nimport { TypescriptProps, TypescriptRow, uniqueRowAccessorType } from '../types/props';\n\nconst emptyObject = {};\n\nconst trueReturner = new Proxy(\n {},\n {\n get: () => true,\n },\n);\n\nconst flatten = (\n data: TypescriptRow[],\n expandedRows: Record<string, boolean>,\n uniqueRowAccessor: uniqueRowAccessorType,\n maxDepth = 0,\n): TypescriptRow[] => {\n const result = [];\n const doit = (row: TypescriptRow, index = 0, parentId = null, parentIndex = null, depth = 0) => {\n const id = (parentId ? `${parentId}.` : '') + index.toString();\n\n const uid = getIdFromUniqueRowAccessor(uniqueRowAccessor, {\n id,\n original: row ?? {},\n });\n\n const isExpanded = expandedRows[uid];\n\n const rowToPush = {\n id,\n uid,\n index,\n realIndex: result.length,\n parentId,\n parentIndex,\n depth,\n isExpanded,\n original: row ?? {},\n };\n\n result.push(rowToPush);\n\n // If we have subrows and we are expanded\n if (row?.subRows && expandedRows[uid] && depth <= maxDepth) {\n row.subRows.forEach((subRow: TypescriptRow, i: number) => doit(subRow, i, uid, rowToPush.realIndex, depth + 1));\n }\n };\n\n data.forEach((row, i) => doit(row, i));\n return result;\n};\n\nexport const useRowFlattenization = (props: Partial<TypescriptProps>): [TypescriptRow[], TypescriptRow[]] => {\n const { data } = props;\n\n const expandedRows = props.isExpandable ? props.expandedRows : emptyObject;\n\n const flattenedData = useMemo(\n () => flatten(data, expandedRows, props.uniqueRowAccessor),\n [data, expandedRows, props.uniqueRowAccessor],\n );\n\n const allDataFlattened = useMemo(\n () => flatten(data, trueReturner, props.uniqueRowAccessor, Infinity),\n [data, props.uniqueRowAccessor],\n );\n\n return [flattenedData, allDataFlattened];\n};\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADCvB,mBAAwB;AACxB,wCAA2C;AAG3C,MAAM,cAAc;AAEpB,MAAM,eAAe,IAAI,MACvB,IACA;AAAA,EACE,KAAK,MAAM;AAAA;AAIf,MAAM,UAAU,CACd,MACA,cACA,mBACA,WAAW,MACS;AACpB,QAAM,SAAS;AACf,QAAM,OAAO,CAAC,KAAoB,QAAQ,GAAG,WAAW,MAAM,cAAc,MAAM,QAAQ,MAAM;AAC9F,UAAM,KAAM,YAAW,GAAG,cAAc,MAAM,MAAM;AAEpD,UAAM,MAAM,kEAA2B,mBAAmB;AAAA,MACxD;AAAA,MACA,UAAU,OAAO;AAAA;AAGnB,UAAM,aAAa,aAAa;AAEhC,UAAM,YAAY;AAAA,MAChB;AAAA,MACA;AAAA,MACA;AAAA,MACA,WAAW,OAAO;AAAA,MAClB;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA,UAAU,OAAO;AAAA;AAGnB,WAAO,KAAK;AAGZ,QAAI,KAAK,WAAW,aAAa,QAAQ,SAAS,UAAU;AAC1D,UAAI,QAAQ,QAAQ,CAAC,QAAuB,MAAc,KAAK,QAAQ,GAAG,KAAK,UAAU,WAAW,QAAQ;AAAA;AAAA;AAIhH,OAAK,QAAQ,CAAC,KAAK,MAAM,KAAK,KAAK;AACnC,SAAO;AAAA;AAGF,MAAM,uBAAuB,CAAC,UAAwE;AAC3G,QAAM,EAAE,SAAS;AAEjB,QAAM,eAAe,MAAM,eAAe,MAAM,eAAe;AAE/D,QAAM,gBAAgB,0BACpB,MAAM,QAAQ,MAAM,cAAc,MAAM,oBACxC,CAAC,MAAM,cAAc,MAAM;AAG7B,QAAM,mBAAmB,0BACvB,MAAM,QAAQ,MAAM,cAAc,MAAM,mBAAmB,WAC3D,CAAC,MAAM,MAAM;AAGf,SAAO,CAAC,eAAe;AAAA;",
6
+ "names": []
7
+ }
@@ -1,67 +1,80 @@
1
- 'use strict';
2
-
3
- var _defineProperty = require('@babel/runtime/helpers/defineProperty');
4
- require('core-js/modules/esnext.async-iterator.map.js');
5
- require('core-js/modules/esnext.iterator.map.js');
6
- require('core-js/modules/web.dom-collections.iterator.js');
7
- require('core-js/modules/esnext.async-iterator.filter.js');
8
- require('core-js/modules/esnext.iterator.constructor.js');
9
- require('core-js/modules/esnext.iterator.filter.js');
10
- require('core-js/modules/esnext.async-iterator.for-each.js');
11
- require('core-js/modules/esnext.iterator.for-each.js');
12
- var React = require('react');
13
- var ColumnAction = require('../addons/Columns/ColumnAction/ColumnAction.js');
14
- var ColumnExpand = require('../addons/Columns/ColumnExpand/ColumnExpand.js');
15
- var ColumnSelectMultiple = require('../addons/Columns/ColumnSelectMultiple/ColumnSelectMultiple.js');
16
- var ColumnSelectSingle = require('../addons/Columns/ColumnSelectSingle/ColumnSelectSingle.js');
17
- var ColumnDragHandle = require('../addons/Columns/ColumnDragHandle/ColumnDragHandle.js');
18
-
19
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
20
-
21
- var _defineProperty__default = /*#__PURE__*/_interopDefaultLegacy(_defineProperty);
22
-
23
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
24
-
25
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty__default["default"](target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
26
-
27
- const augmentColumns = columns => {
28
- const augmentColumn = function (column, index) {
29
- let parentId = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;
30
- let depth = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 0;
31
- let id = "column".concat(index);
32
- if (typeof column.Header === 'string') id = column.Header;
33
- if (typeof column.accessor === 'string') id = column.accessor;
34
- if (column.columns) column.columns = column.columns.map((col, i) => augmentColumn(col, i, id, depth + 1));
35
- return _objectSpread(_objectSpread({
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getProtoOf = Object.getPrototypeOf;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __reExport = (target, module2, copyDefault, desc) => {
13
+ if (module2 && typeof module2 === "object" || typeof module2 === "function") {
14
+ for (let key of __getOwnPropNames(module2))
15
+ if (!__hasOwnProp.call(target, key) && (copyDefault || key !== "default"))
16
+ __defProp(target, key, { get: () => module2[key], enumerable: !(desc = __getOwnPropDesc(module2, key)) || desc.enumerable });
17
+ }
18
+ return target;
19
+ };
20
+ var __toESM = (module2, isNodeMode) => {
21
+ return __reExport(__markAsModule(__defProp(module2 != null ? __create(__getProtoOf(module2)) : {}, "default", !isNodeMode && module2 && module2.__esModule ? { get: () => module2.default, enumerable: true } : { value: module2, enumerable: true })), module2);
22
+ };
23
+ var __toCommonJS = /* @__PURE__ */ ((cache) => {
24
+ return (module2, temp) => {
25
+ return cache && cache.get(module2) || (temp = __reExport(__markAsModule({}), module2, 1), cache && cache.set(module2, temp), temp);
26
+ };
27
+ })(typeof WeakMap !== "undefined" ? /* @__PURE__ */ new WeakMap() : 0);
28
+ var useTableColsWithAddons_exports = {};
29
+ __export(useTableColsWithAddons_exports, {
30
+ default: () => useTableColsWithAddons_default,
31
+ useTableColsWithAddons: () => useTableColsWithAddons
32
+ });
33
+ var React = __toESM(require("react"));
34
+ var import_react = require("react");
35
+ var import_Columns = require("../addons/Columns");
36
+ const augmentColumns = (columns) => {
37
+ const augmentColumn = (column, index, parentId = null, depth = 0) => {
38
+ let id = `column${index}`;
39
+ if (typeof column.Header === "string")
40
+ id = column.Header;
41
+ if (typeof column.accessor === "string")
42
+ id = column.accessor;
43
+ if (column.columns)
44
+ column.columns = column.columns.map((col, i) => augmentColumn(col, i, id, depth + 1));
45
+ return {
36
46
  id,
37
47
  parentId,
38
- depth
39
- }, column), {}, {
40
- ref: /*#__PURE__*/React.createRef()
41
- });
48
+ depth,
49
+ ...column,
50
+ ref: (0, import_react.createRef)()
51
+ };
42
52
  };
43
-
44
53
  return columns.map((col, index) => augmentColumn(col, index));
45
54
  };
46
-
47
- const useTableColsWithAddons = _ref => {
48
- let {
49
- columns,
50
- renderRowActions,
51
- isExpandable,
52
- selectSingle,
53
- selection,
54
- dragAndDropRows,
55
- noSelectionColumn
56
- } = _ref;
57
- return React.useMemo(() => {
58
- const columnsWithAddons = [...augmentColumns(columns)];
59
- if (isExpandable) columnsWithAddons.unshift(ColumnExpand.expandRowColumn);
60
- if (selection && !noSelectionColumn) if (selectSingle) columnsWithAddons.unshift(ColumnSelectSingle.singleSelectColumn);else columnsWithAddons.unshift(ColumnSelectMultiple.multiSelectColumn);
61
- if (dragAndDropRows) columnsWithAddons.unshift(ColumnDragHandle.dragHandleColumn);
62
- if (renderRowActions) columnsWithAddons.push(ColumnAction.actionColumn(renderRowActions));
63
- return columnsWithAddons;
64
- }, [columns, isExpandable, selection, noSelectionColumn, selectSingle, dragAndDropRows, renderRowActions]);
65
- };
66
-
67
- module.exports = useTableColsWithAddons;
55
+ const useTableColsWithAddons = ({
56
+ columns,
57
+ renderRowActions,
58
+ isExpandable,
59
+ selectSingle,
60
+ selection,
61
+ dragAndDropRows,
62
+ noSelectionColumn
63
+ }) => (0, import_react.useMemo)(() => {
64
+ const columnsWithAddons = [...augmentColumns(columns)];
65
+ if (isExpandable)
66
+ columnsWithAddons.unshift(import_Columns.expandRowColumn);
67
+ if (selection && !noSelectionColumn)
68
+ if (selectSingle)
69
+ columnsWithAddons.unshift(import_Columns.singleSelectColumn);
70
+ else
71
+ columnsWithAddons.unshift(import_Columns.multiSelectColumn);
72
+ if (dragAndDropRows)
73
+ columnsWithAddons.unshift(import_Columns.dragHandleColumn);
74
+ if (renderRowActions)
75
+ columnsWithAddons.push((0, import_Columns.actionColumn)(renderRowActions));
76
+ return columnsWithAddons;
77
+ }, [columns, isExpandable, selection, noSelectionColumn, selectSingle, dragAndDropRows, renderRowActions]);
78
+ var useTableColsWithAddons_default = useTableColsWithAddons;
79
+ module.exports = __toCommonJS(useTableColsWithAddons_exports);
80
+ //# sourceMappingURL=useTableColsWithAddons.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/configs/useTableColsWithAddons.tsx", "../../../../../scripts/build/transpile/react-shim.js"],
4
+ "sourcesContent": ["/* eslint-disable max-params */\nimport { createRef, useMemo } from 'react';\nimport { TypescriptColumn, TypescriptProps } from '../types/props';\n\nimport {\n dragHandleColumn,\n expandRowColumn,\n actionColumn,\n singleSelectColumn,\n multiSelectColumn,\n} from '../addons/Columns';\n\ntype useTableColsWithAddonsType = (config: TypescriptProps) => TypescriptColumn[];\n\nconst augmentColumns = (columns: TypescriptColumn[]): TypescriptColumn[] => {\n const augmentColumn = (column: TypescriptColumn, index: number, parentId = null, depth = 0) => {\n let id = `column${index}`;\n if (typeof column.Header === 'string') id = column.Header;\n if (typeof column.accessor === 'string') id = column.accessor;\n if (column.columns) column.columns = column.columns.map((col, i) => augmentColumn(col, i, id, depth + 1));\n return {\n id,\n parentId,\n depth,\n ...column,\n ref: createRef<HTMLTableColElement>(),\n };\n };\n return columns.map((col, index) => augmentColumn(col, index));\n};\n\nconst useTableColsWithAddons: useTableColsWithAddonsType = ({\n columns,\n renderRowActions,\n isExpandable,\n selectSingle,\n selection,\n dragAndDropRows,\n noSelectionColumn,\n}) =>\n useMemo(() => {\n const columnsWithAddons = [...augmentColumns(columns)];\n\n if (isExpandable) columnsWithAddons.unshift(expandRowColumn);\n if (selection && !noSelectionColumn)\n if (selectSingle) columnsWithAddons.unshift(singleSelectColumn);\n else columnsWithAddons.unshift(multiSelectColumn);\n if (dragAndDropRows) columnsWithAddons.unshift(dragHandleColumn);\n if (renderRowActions) columnsWithAddons.push(actionColumn(renderRowActions));\n\n return columnsWithAddons;\n }, [columns, isExpandable, selection, noSelectionColumn, selectSingle, dragAndDropRows, renderRowActions]);\n\nexport { useTableColsWithAddons };\nexport default useTableColsWithAddons;\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADCvB,mBAAmC;AAGnC,qBAMO;AAIP,MAAM,iBAAiB,CAAC,YAAoD;AAC1E,QAAM,gBAAgB,CAAC,QAA0B,OAAe,WAAW,MAAM,QAAQ,MAAM;AAC7F,QAAI,KAAK,SAAS;AAClB,QAAI,OAAO,OAAO,WAAW;AAAU,WAAK,OAAO;AACnD,QAAI,OAAO,OAAO,aAAa;AAAU,WAAK,OAAO;AACrD,QAAI,OAAO;AAAS,aAAO,UAAU,OAAO,QAAQ,IAAI,CAAC,KAAK,MAAM,cAAc,KAAK,GAAG,IAAI,QAAQ;AACtG,WAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,SACG;AAAA,MACH,KAAK;AAAA;AAAA;AAGT,SAAO,QAAQ,IAAI,CAAC,KAAK,UAAU,cAAc,KAAK;AAAA;AAGxD,MAAM,yBAAqD,CAAC;AAAA,EAC1D;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,MAEA,0BAAQ,MAAM;AACZ,QAAM,oBAAoB,CAAC,GAAG,eAAe;AAE7C,MAAI;AAAc,sBAAkB,QAAQ;AAC5C,MAAI,aAAa,CAAC;AAChB,QAAI;AAAc,wBAAkB,QAAQ;AAAA;AACvC,wBAAkB,QAAQ;AACjC,MAAI;AAAiB,sBAAkB,QAAQ;AAC/C,MAAI;AAAkB,sBAAkB,KAAK,iCAAa;AAE1D,SAAO;AAAA,GACN,CAAC,SAAS,cAAc,WAAW,mBAAmB,cAAc,iBAAiB;AAG1F,IAAO,iCAAQ;",
6
+ "names": []
7
+ }