@elliemae/ds-data-table 3.0.0-next.9 → 3.0.1

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 (444) hide show
  1. package/dist/cjs/DataTable.js +22 -28
  2. package/dist/cjs/DataTable.js.map +2 -2
  3. package/dist/cjs/DataTableContext.js +9 -16
  4. package/dist/cjs/DataTableContext.js.map +1 -1
  5. package/dist/cjs/DataTableSchema.js +114 -116
  6. package/dist/cjs/DataTableSchema.js.map +2 -2
  7. package/dist/cjs/addons/Columns/ColumnAction/ColumnAction.js +9 -16
  8. package/dist/cjs/addons/Columns/ColumnAction/ColumnAction.js.map +1 -1
  9. package/dist/cjs/addons/Columns/ColumnDragHandle/ColumnDragHandle.js +9 -16
  10. package/dist/cjs/addons/Columns/ColumnDragHandle/ColumnDragHandle.js.map +1 -1
  11. package/dist/cjs/addons/Columns/ColumnExpand/ColumnExpand.js +26 -25
  12. package/dist/cjs/addons/Columns/ColumnExpand/ColumnExpand.js.map +2 -2
  13. package/dist/cjs/addons/Columns/ColumnSelectMultiple/ColumnSelectMultiple.js +13 -18
  14. package/dist/cjs/addons/Columns/ColumnSelectMultiple/ColumnSelectMultiple.js.map +2 -2
  15. package/dist/cjs/addons/Columns/ColumnSelectSingle/ColumnSelectSingle.js +9 -16
  16. package/dist/cjs/addons/Columns/ColumnSelectSingle/ColumnSelectSingle.js.map +1 -1
  17. package/dist/cjs/addons/Columns/index.js +9 -16
  18. package/dist/cjs/addons/Columns/index.js.map +1 -1
  19. package/dist/cjs/addons/Editables/ComboboxEditableCell/ComboboxEditableCell.js +12 -19
  20. package/dist/cjs/addons/Editables/ComboboxEditableCell/ComboboxEditableCell.js.map +2 -2
  21. package/dist/cjs/addons/Editables/DateEditableCell/DateEditableCell.js +9 -16
  22. package/dist/cjs/addons/Editables/DateEditableCell/DateEditableCell.js.map +1 -1
  23. package/dist/cjs/addons/Editables/TextEditableCell/TextEditableCell.js +9 -16
  24. package/dist/cjs/addons/Editables/TextEditableCell/TextEditableCell.js.map +1 -1
  25. package/dist/cjs/addons/Editables/index.js +9 -16
  26. package/dist/cjs/addons/Editables/index.js.map +1 -1
  27. package/dist/cjs/addons/Filters/Components/CurrencyRangeFilter/index.js +11 -18
  28. package/dist/cjs/addons/Filters/Components/CurrencyRangeFilter/index.js.map +2 -2
  29. package/dist/cjs/addons/Filters/Components/DateRangeFilter/index.js +9 -16
  30. package/dist/cjs/addons/Filters/Components/DateRangeFilter/index.js.map +1 -1
  31. package/dist/cjs/addons/Filters/Components/DateSwitcherFilter/index.js +9 -16
  32. package/dist/cjs/addons/Filters/Components/DateSwitcherFilter/index.js.map +1 -1
  33. package/dist/cjs/addons/Filters/Components/NumberRangeFilter/index.js +11 -18
  34. package/dist/cjs/addons/Filters/Components/NumberRangeFilter/index.js.map +2 -2
  35. package/dist/cjs/addons/Filters/Components/SelectFilter/BaseSelectFilter.js +26 -42
  36. package/dist/cjs/addons/Filters/Components/SelectFilter/BaseSelectFilter.js.map +2 -2
  37. package/dist/cjs/addons/Filters/Components/SelectFilter/MultiSelectFilter.js +9 -16
  38. package/dist/cjs/addons/Filters/Components/SelectFilter/MultiSelectFilter.js.map +1 -1
  39. package/dist/cjs/addons/Filters/Components/SelectFilter/SingleSelectFilter.js +9 -16
  40. package/dist/cjs/addons/Filters/Components/SelectFilter/SingleSelectFilter.js.map +1 -1
  41. package/dist/cjs/addons/Filters/Components/SelectFilter/components.js +9 -16
  42. package/dist/cjs/addons/Filters/Components/SelectFilter/components.js.map +1 -1
  43. package/dist/cjs/addons/Filters/Components/SelectFilter/useSelectFilterHandlers.js +9 -16
  44. package/dist/cjs/addons/Filters/Components/SelectFilter/useSelectFilterHandlers.js.map +1 -1
  45. package/dist/cjs/addons/Filters/Components/SelectFilter/utils.js +9 -16
  46. package/dist/cjs/addons/Filters/Components/SelectFilter/utils.js.map +1 -1
  47. package/dist/cjs/addons/Filters/Components/SingleDateFilter/index.js +9 -16
  48. package/dist/cjs/addons/Filters/Components/SingleDateFilter/index.js.map +1 -1
  49. package/dist/cjs/addons/Filters/Components/index.js +17 -23
  50. package/dist/cjs/addons/Filters/Components/index.js.map +1 -1
  51. package/dist/cjs/addons/Filters/index.js +11 -17
  52. package/dist/cjs/addons/Filters/index.js.map +1 -1
  53. package/dist/cjs/addons/Pagination/Pagination.js +9 -16
  54. package/dist/cjs/addons/Pagination/Pagination.js.map +1 -1
  55. package/dist/cjs/addons/Pagination/index.js +9 -16
  56. package/dist/cjs/addons/Pagination/index.js.map +1 -1
  57. package/dist/cjs/configs/constants.js +9 -16
  58. package/dist/cjs/configs/constants.js.map +1 -1
  59. package/dist/cjs/configs/fixedSizes.js +9 -16
  60. package/dist/cjs/configs/fixedSizes.js.map +1 -1
  61. package/dist/cjs/configs/index.js +15 -21
  62. package/dist/cjs/configs/index.js.map +1 -1
  63. package/dist/cjs/configs/useDatatableConfig.js +32 -19
  64. package/dist/cjs/configs/useDatatableConfig.js.map +2 -2
  65. package/dist/cjs/configs/useInternalStateConfig.js +75 -0
  66. package/dist/cjs/configs/useInternalStateConfig.js.map +7 -0
  67. package/dist/cjs/configs/usePaginationConfig.js +9 -16
  68. package/dist/cjs/configs/usePaginationConfig.js.map +1 -1
  69. package/dist/cjs/configs/useRowFlattenization.js +9 -16
  70. package/dist/cjs/configs/useRowFlattenization.js.map +1 -1
  71. package/dist/cjs/configs/useTableColsWithAddons.js +9 -16
  72. package/dist/cjs/configs/useTableColsWithAddons.js.map +1 -1
  73. package/dist/cjs/configs/zIndexInternalConfig.js +9 -16
  74. package/dist/cjs/configs/zIndexInternalConfig.js.map +1 -1
  75. package/dist/cjs/exported-related/EditableCell.js +10 -17
  76. package/dist/cjs/exported-related/EditableCell.js.map +2 -2
  77. package/dist/cjs/exported-related/FilterPopover.js +38 -37
  78. package/dist/cjs/exported-related/FilterPopover.js.map +2 -2
  79. package/dist/cjs/exported-related/FilterTypes.js +9 -16
  80. package/dist/cjs/exported-related/FilterTypes.js.map +1 -1
  81. package/dist/cjs/exported-related/Filters/applyOutOfTheBoxFilters.js +9 -16
  82. package/dist/cjs/exported-related/Filters/applyOutOfTheBoxFilters.js.map +1 -1
  83. package/dist/cjs/exported-related/Filters/currencyRangeFilterFn.js +9 -16
  84. package/dist/cjs/exported-related/Filters/currencyRangeFilterFn.js.map +1 -1
  85. package/dist/cjs/exported-related/Filters/dateRangeFilterFn.js +9 -16
  86. package/dist/cjs/exported-related/Filters/dateRangeFilterFn.js.map +1 -1
  87. package/dist/cjs/exported-related/Filters/dateSwitcherFilterFn.js +9 -16
  88. package/dist/cjs/exported-related/Filters/dateSwitcherFilterFn.js.map +1 -1
  89. package/dist/cjs/exported-related/Filters/index.js +17 -23
  90. package/dist/cjs/exported-related/Filters/index.js.map +1 -1
  91. package/dist/cjs/exported-related/Filters/multiSelectFilterFn.js +9 -16
  92. package/dist/cjs/exported-related/Filters/multiSelectFilterFn.js.map +1 -1
  93. package/dist/cjs/exported-related/Filters/numberRangeFilterFn.js +9 -16
  94. package/dist/cjs/exported-related/Filters/numberRangeFilterFn.js.map +1 -1
  95. package/dist/cjs/exported-related/Filters/singleDateFilterFn.js +9 -16
  96. package/dist/cjs/exported-related/Filters/singleDateFilterFn.js.map +1 -1
  97. package/dist/cjs/exported-related/Filters/singleSelectFilterFn.js +9 -16
  98. package/dist/cjs/exported-related/Filters/singleSelectFilterFn.js.map +1 -1
  99. package/dist/cjs/exported-related/Filters/types.js +9 -16
  100. package/dist/cjs/exported-related/Filters/types.js.map +1 -1
  101. package/dist/cjs/exported-related/RowRenderer/DefaultRowContentRenderer.js +24 -23
  102. package/dist/cjs/exported-related/RowRenderer/DefaultRowContentRenderer.js.map +2 -2
  103. package/dist/cjs/exported-related/RowRenderer/index.js +12 -19
  104. package/dist/cjs/exported-related/RowRenderer/index.js.map +2 -2
  105. package/dist/cjs/exported-related/RowRenderer/useRowRendererHandlers.js +53 -34
  106. package/dist/cjs/exported-related/RowRenderer/useRowRendererHandlers.js.map +2 -2
  107. package/dist/cjs/exported-related/RowRenderer/useRowRendererProperties.js +9 -16
  108. package/dist/cjs/exported-related/RowRenderer/useRowRendererProperties.js.map +1 -1
  109. package/dist/cjs/exported-related/RowRenderer/useRowStyle.js +9 -16
  110. package/dist/cjs/exported-related/RowRenderer/useRowStyle.js.map +1 -1
  111. package/dist/cjs/exported-related/RowVariants.js +11 -17
  112. package/dist/cjs/exported-related/RowVariants.js.map +2 -2
  113. package/dist/cjs/exported-related/Toolbar/Toolbar.js +17 -31
  114. package/dist/cjs/exported-related/Toolbar/Toolbar.js.map +2 -2
  115. package/dist/cjs/exported-related/Toolbar/index.js +9 -16
  116. package/dist/cjs/exported-related/Toolbar/index.js.map +1 -1
  117. package/dist/cjs/exported-related/groupBy.js +9 -16
  118. package/dist/cjs/exported-related/groupBy.js.map +1 -1
  119. package/dist/cjs/exported-related/index.js +13 -19
  120. package/dist/cjs/exported-related/index.js.map +1 -1
  121. package/dist/cjs/helpers/addCellData.js +9 -16
  122. package/dist/cjs/helpers/addCellData.js.map +1 -1
  123. package/dist/cjs/helpers/cellPadding.js +9 -16
  124. package/dist/cjs/helpers/cellPadding.js.map +1 -1
  125. package/dist/cjs/helpers/columnsToGrid.js +9 -16
  126. package/dist/cjs/helpers/columnsToGrid.js.map +1 -1
  127. package/dist/cjs/helpers/getIdFromUniqueRowAccessor.js +9 -16
  128. package/dist/cjs/helpers/getIdFromUniqueRowAccessor.js.map +1 -1
  129. package/dist/cjs/helpers/index.js +16 -22
  130. package/dist/cjs/helpers/index.js.map +1 -1
  131. package/dist/cjs/helpers/refs-helpers.js +9 -16
  132. package/dist/cjs/helpers/refs-helpers.js.map +1 -1
  133. package/dist/cjs/helpers/sizeToCss.js +9 -16
  134. package/dist/cjs/helpers/sizeToCss.js.map +1 -1
  135. package/dist/cjs/hooks/useRecoverFocusCol.js +9 -16
  136. package/dist/cjs/hooks/useRecoverFocusCol.js.map +1 -1
  137. package/dist/cjs/hooks/useRecoverFocusRow.js +9 -16
  138. package/dist/cjs/hooks/useRecoverFocusRow.js.map +1 -1
  139. package/dist/cjs/index.js +12 -18
  140. package/dist/cjs/index.js.map +1 -1
  141. package/dist/cjs/parts/Cells/Cell.js +11 -18
  142. package/dist/cjs/parts/Cells/Cell.js.map +2 -2
  143. package/dist/cjs/parts/Cells/index.js +9 -16
  144. package/dist/cjs/parts/Cells/index.js.map +1 -1
  145. package/dist/cjs/parts/Cells/useCellStyle.js +9 -16
  146. package/dist/cjs/parts/Cells/useCellStyle.js.map +1 -1
  147. package/dist/cjs/parts/DnDHandle.js +9 -16
  148. package/dist/cjs/parts/DnDHandle.js.map +1 -1
  149. package/dist/cjs/parts/DropIndicator.js +9 -16
  150. package/dist/cjs/parts/DropIndicator.js.map +1 -1
  151. package/dist/cjs/parts/EmptyContent.js +9 -16
  152. package/dist/cjs/parts/EmptyContent.js.map +1 -1
  153. package/dist/cjs/parts/FilterBar/FiltersBar.js +42 -24
  154. package/dist/cjs/parts/FilterBar/FiltersBar.js.map +2 -2
  155. package/dist/cjs/parts/FilterBar/components/DateRangePill.js +9 -16
  156. package/dist/cjs/parts/FilterBar/components/DateRangePill.js.map +1 -1
  157. package/dist/cjs/parts/FilterBar/components/DateSwitcherPill.js +9 -16
  158. package/dist/cjs/parts/FilterBar/components/DateSwitcherPill.js.map +1 -1
  159. package/dist/cjs/parts/FilterBar/components/MultiSelectPill.js +9 -16
  160. package/dist/cjs/parts/FilterBar/components/MultiSelectPill.js.map +1 -1
  161. package/dist/cjs/parts/FilterBar/components/NumberRangePill.js +9 -16
  162. package/dist/cjs/parts/FilterBar/components/NumberRangePill.js.map +1 -1
  163. package/dist/cjs/parts/FilterBar/components/SelectPill.js +9 -16
  164. package/dist/cjs/parts/FilterBar/components/SelectPill.js.map +1 -1
  165. package/dist/cjs/parts/FilterBar/components/SingleDatePill.js +9 -16
  166. package/dist/cjs/parts/FilterBar/components/SingleDatePill.js.map +1 -1
  167. package/dist/cjs/parts/FilterBar/components/index.js +16 -22
  168. package/dist/cjs/parts/FilterBar/components/index.js.map +1 -1
  169. package/dist/cjs/parts/FilterBar/index.js +9 -16
  170. package/dist/cjs/parts/FilterBar/index.js.map +1 -1
  171. package/dist/cjs/parts/FilterBar/styled.js +9 -16
  172. package/dist/cjs/parts/FilterBar/styled.js.map +1 -1
  173. package/dist/cjs/parts/FilterBar/types.js +9 -16
  174. package/dist/cjs/parts/FilterBar/types.js.map +1 -1
  175. package/dist/cjs/parts/Filters/index.js +11 -18
  176. package/dist/cjs/parts/Filters/index.js.map +2 -2
  177. package/dist/cjs/parts/Footer.js +9 -16
  178. package/dist/cjs/parts/Footer.js.map +1 -1
  179. package/dist/cjs/parts/Headers/EmptyChildrenGroup.js +9 -16
  180. package/dist/cjs/parts/Headers/EmptyChildrenGroup.js.map +1 -1
  181. package/dist/cjs/parts/Headers/HeaderCell.js +15 -29
  182. package/dist/cjs/parts/Headers/HeaderCell.js.map +2 -2
  183. package/dist/cjs/parts/Headers/HeaderCellGroup.js +12 -19
  184. package/dist/cjs/parts/Headers/HeaderCellGroup.js.map +2 -2
  185. package/dist/cjs/parts/Headers/HeaderCellTitle.js +9 -16
  186. package/dist/cjs/parts/Headers/HeaderCellTitle.js.map +1 -1
  187. package/dist/cjs/parts/Headers/HeaderResizer.js +13 -19
  188. package/dist/cjs/parts/Headers/HeaderResizer.js.map +2 -2
  189. package/dist/cjs/parts/Headers/RequiredDot.js +9 -16
  190. package/dist/cjs/parts/Headers/RequiredDot.js.map +1 -1
  191. package/dist/cjs/parts/Headers/index.js +9 -16
  192. package/dist/cjs/parts/Headers/index.js.map +1 -1
  193. package/dist/cjs/parts/Headers/useHeaderCellConfig.js +9 -16
  194. package/dist/cjs/parts/Headers/useHeaderCellConfig.js.map +1 -1
  195. package/dist/cjs/parts/Headers/useHeaderCellHandlers.js +9 -16
  196. package/dist/cjs/parts/Headers/useHeaderCellHandlers.js.map +1 -1
  197. package/dist/cjs/parts/HoC/SortableItemContext.js +9 -16
  198. package/dist/cjs/parts/HoC/SortableItemContext.js.map +1 -1
  199. package/dist/cjs/parts/HoC/withConditionalDnDColumnContext.js +14 -19
  200. package/dist/cjs/parts/HoC/withConditionalDnDColumnContext.js.map +2 -2
  201. package/dist/cjs/parts/HoC/withConditionalDnDRowContext.js +9 -16
  202. package/dist/cjs/parts/HoC/withConditionalDnDRowContext.js.map +1 -1
  203. package/dist/cjs/parts/HoC/withConditionalDnDSortableContext.js +9 -16
  204. package/dist/cjs/parts/HoC/withConditionalDnDSortableContext.js.map +1 -1
  205. package/dist/cjs/parts/HoC/withDnDSortableColumnContext.js +9 -16
  206. package/dist/cjs/parts/HoC/withDnDSortableColumnContext.js.map +1 -1
  207. package/dist/cjs/parts/HoC/withDnDSortableRowContext.js +9 -16
  208. package/dist/cjs/parts/HoC/withDnDSortableRowContext.js.map +1 -1
  209. package/dist/cjs/parts/Loader.js +9 -16
  210. package/dist/cjs/parts/Loader.js.map +1 -1
  211. package/dist/cjs/parts/Row.js +25 -28
  212. package/dist/cjs/parts/Row.js.map +2 -2
  213. package/dist/cjs/parts/RowLoading.js +9 -16
  214. package/dist/cjs/parts/RowLoading.js.map +1 -1
  215. package/dist/cjs/parts/RowVariants/RowVariantHeader.js +13 -20
  216. package/dist/cjs/parts/RowVariants/RowVariantHeader.js.map +2 -2
  217. package/dist/cjs/parts/RowVariants/RowVariantPrimary.js +11 -18
  218. package/dist/cjs/parts/RowVariants/RowVariantPrimary.js.map +2 -2
  219. package/dist/cjs/parts/RowVariants/RowVariantSecondary.js +11 -18
  220. package/dist/cjs/parts/RowVariants/RowVariantSecondary.js.map +2 -2
  221. package/dist/cjs/parts/RowVariants/RowVariantSkeleton.js +74 -0
  222. package/dist/cjs/parts/RowVariants/RowVariantSkeleton.js.map +7 -0
  223. package/dist/cjs/parts/RowVariants/index.js +12 -17
  224. package/dist/cjs/parts/RowVariants/index.js.map +2 -2
  225. package/dist/cjs/parts/RowVariants/types.js +9 -16
  226. package/dist/cjs/parts/RowVariants/types.js.map +2 -2
  227. package/dist/cjs/parts/Rows.js +9 -16
  228. package/dist/cjs/parts/Rows.js.map +1 -1
  229. package/dist/cjs/parts/SortByCaret.js +9 -16
  230. package/dist/cjs/parts/SortByCaret.js.map +1 -1
  231. package/dist/cjs/parts/SortableHeaderCell.js +9 -16
  232. package/dist/cjs/parts/SortableHeaderCell.js.map +1 -1
  233. package/dist/cjs/parts/TableContent.js +13 -25
  234. package/dist/cjs/parts/TableContent.js.map +2 -2
  235. package/dist/cjs/parts/VirtualRowsList.js +12 -27
  236. package/dist/cjs/parts/VirtualRowsList.js.map +2 -2
  237. package/dist/cjs/parts/index.js +9 -16
  238. package/dist/cjs/parts/index.js.map +1 -1
  239. package/dist/cjs/parts/internal.js +30 -0
  240. package/dist/cjs/parts/internal.js.map +7 -0
  241. package/dist/cjs/prop-types.js +9 -16
  242. package/dist/cjs/prop-types.js.map +1 -1
  243. package/dist/cjs/styled.js +17 -25
  244. package/dist/cjs/styled.js.map +2 -2
  245. package/dist/cjs/tests/utils/index.js +9 -16
  246. package/dist/cjs/tests/utils/index.js.map +1 -1
  247. package/dist/cjs/types/FunctionalHoC.js +9 -16
  248. package/dist/cjs/types/FunctionalHoC.js.map +1 -1
  249. package/dist/cjs/types/props.js +9 -16
  250. package/dist/cjs/types/props.js.map +2 -2
  251. package/dist/esm/DataTable.js +13 -12
  252. package/dist/esm/DataTable.js.map +2 -2
  253. package/dist/esm/DataTableContext.js.map +1 -1
  254. package/dist/esm/DataTableSchema.js +6 -1
  255. package/dist/esm/DataTableSchema.js.map +2 -2
  256. package/dist/esm/addons/Columns/ColumnAction/ColumnAction.js.map +1 -1
  257. package/dist/esm/addons/Columns/ColumnDragHandle/ColumnDragHandle.js.map +1 -1
  258. package/dist/esm/addons/Columns/ColumnExpand/ColumnExpand.js +18 -10
  259. package/dist/esm/addons/Columns/ColumnExpand/ColumnExpand.js.map +2 -2
  260. package/dist/esm/addons/Columns/ColumnSelectMultiple/ColumnSelectMultiple.js +4 -2
  261. package/dist/esm/addons/Columns/ColumnSelectMultiple/ColumnSelectMultiple.js.map +2 -2
  262. package/dist/esm/addons/Columns/ColumnSelectSingle/ColumnSelectSingle.js.map +1 -1
  263. package/dist/esm/addons/Columns/index.js.map +1 -1
  264. package/dist/esm/addons/Editables/ComboboxEditableCell/ComboboxEditableCell.js +3 -3
  265. package/dist/esm/addons/Editables/ComboboxEditableCell/ComboboxEditableCell.js.map +2 -2
  266. package/dist/esm/addons/Editables/DateEditableCell/DateEditableCell.js.map +1 -1
  267. package/dist/esm/addons/Editables/TextEditableCell/TextEditableCell.js.map +1 -1
  268. package/dist/esm/addons/Editables/index.js.map +1 -1
  269. package/dist/esm/addons/Filters/Components/CurrencyRangeFilter/index.js +3 -3
  270. package/dist/esm/addons/Filters/Components/CurrencyRangeFilter/index.js.map +2 -2
  271. package/dist/esm/addons/Filters/Components/DateRangeFilter/index.js.map +1 -1
  272. package/dist/esm/addons/Filters/Components/DateSwitcherFilter/index.js.map +1 -1
  273. package/dist/esm/addons/Filters/Components/NumberRangeFilter/index.js +3 -3
  274. package/dist/esm/addons/Filters/Components/NumberRangeFilter/index.js.map +2 -2
  275. package/dist/esm/addons/Filters/Components/SelectFilter/BaseSelectFilter.js +17 -26
  276. package/dist/esm/addons/Filters/Components/SelectFilter/BaseSelectFilter.js.map +2 -2
  277. package/dist/esm/addons/Filters/Components/SelectFilter/MultiSelectFilter.js.map +1 -1
  278. package/dist/esm/addons/Filters/Components/SelectFilter/SingleSelectFilter.js.map +1 -1
  279. package/dist/esm/addons/Filters/Components/SelectFilter/useSelectFilterHandlers.js.map +1 -1
  280. package/dist/esm/addons/Filters/Components/SelectFilter/utils.js.map +1 -1
  281. package/dist/esm/addons/Filters/Components/SingleDateFilter/index.js.map +1 -1
  282. package/dist/esm/addons/Pagination/Pagination.js.map +1 -1
  283. package/dist/esm/configs/constants.js.map +1 -1
  284. package/dist/esm/configs/fixedSizes.js.map +1 -1
  285. package/dist/esm/configs/useDatatableConfig.js +25 -3
  286. package/dist/esm/configs/useDatatableConfig.js.map +2 -2
  287. package/dist/esm/configs/useInternalStateConfig.js +55 -0
  288. package/dist/esm/configs/useInternalStateConfig.js.map +7 -0
  289. package/dist/esm/configs/usePaginationConfig.js.map +1 -1
  290. package/dist/esm/configs/useRowFlattenization.js.map +1 -1
  291. package/dist/esm/configs/useTableColsWithAddons.js.map +1 -1
  292. package/dist/esm/configs/zIndexInternalConfig.js.map +1 -1
  293. package/dist/esm/exported-related/EditableCell.js +1 -1
  294. package/dist/esm/exported-related/EditableCell.js.map +2 -2
  295. package/dist/esm/exported-related/FilterPopover.js +30 -22
  296. package/dist/esm/exported-related/FilterPopover.js.map +2 -2
  297. package/dist/esm/exported-related/FilterTypes.js.map +1 -1
  298. package/dist/esm/exported-related/Filters/applyOutOfTheBoxFilters.js.map +1 -1
  299. package/dist/esm/exported-related/Filters/currencyRangeFilterFn.js.map +1 -1
  300. package/dist/esm/exported-related/Filters/dateRangeFilterFn.js.map +1 -1
  301. package/dist/esm/exported-related/Filters/dateSwitcherFilterFn.js.map +1 -1
  302. package/dist/esm/exported-related/Filters/multiSelectFilterFn.js.map +1 -1
  303. package/dist/esm/exported-related/Filters/numberRangeFilterFn.js.map +1 -1
  304. package/dist/esm/exported-related/Filters/singleDateFilterFn.js.map +1 -1
  305. package/dist/esm/exported-related/Filters/singleSelectFilterFn.js.map +1 -1
  306. package/dist/esm/exported-related/RowRenderer/DefaultRowContentRenderer.js +16 -8
  307. package/dist/esm/exported-related/RowRenderer/DefaultRowContentRenderer.js.map +2 -2
  308. package/dist/esm/exported-related/RowRenderer/index.js +3 -3
  309. package/dist/esm/exported-related/RowRenderer/index.js.map +2 -2
  310. package/dist/esm/exported-related/RowRenderer/useRowRendererHandlers.js +44 -18
  311. package/dist/esm/exported-related/RowRenderer/useRowRendererHandlers.js.map +2 -2
  312. package/dist/esm/exported-related/RowRenderer/useRowRendererProperties.js.map +1 -1
  313. package/dist/esm/exported-related/RowRenderer/useRowStyle.js.map +1 -1
  314. package/dist/esm/exported-related/RowVariants.js +2 -1
  315. package/dist/esm/exported-related/RowVariants.js.map +2 -2
  316. package/dist/esm/exported-related/Toolbar/Toolbar.js +9 -16
  317. package/dist/esm/exported-related/Toolbar/Toolbar.js.map +2 -2
  318. package/dist/esm/exported-related/groupBy.js.map +1 -1
  319. package/dist/esm/helpers/addCellData.js.map +1 -1
  320. package/dist/esm/helpers/cellPadding.js.map +1 -1
  321. package/dist/esm/helpers/columnsToGrid.js.map +1 -1
  322. package/dist/esm/helpers/getIdFromUniqueRowAccessor.js.map +1 -1
  323. package/dist/esm/helpers/refs-helpers.js.map +1 -1
  324. package/dist/esm/helpers/sizeToCss.js.map +1 -1
  325. package/dist/esm/hooks/useRecoverFocusCol.js.map +1 -1
  326. package/dist/esm/hooks/useRecoverFocusRow.js.map +1 -1
  327. package/dist/esm/parts/Cells/Cell.js +2 -2
  328. package/dist/esm/parts/Cells/Cell.js.map +2 -2
  329. package/dist/esm/parts/Cells/index.js.map +1 -1
  330. package/dist/esm/parts/Cells/useCellStyle.js.map +1 -1
  331. package/dist/esm/parts/DnDHandle.js.map +1 -1
  332. package/dist/esm/parts/DropIndicator.js.map +1 -1
  333. package/dist/esm/parts/EmptyContent.js.map +1 -1
  334. package/dist/esm/parts/FilterBar/FiltersBar.js +35 -10
  335. package/dist/esm/parts/FilterBar/FiltersBar.js.map +2 -2
  336. package/dist/esm/parts/FilterBar/components/DateRangePill.js.map +1 -1
  337. package/dist/esm/parts/FilterBar/components/DateSwitcherPill.js.map +1 -1
  338. package/dist/esm/parts/FilterBar/components/MultiSelectPill.js.map +1 -1
  339. package/dist/esm/parts/FilterBar/components/NumberRangePill.js.map +1 -1
  340. package/dist/esm/parts/FilterBar/components/SelectPill.js.map +1 -1
  341. package/dist/esm/parts/FilterBar/components/SingleDatePill.js.map +1 -1
  342. package/dist/esm/parts/FilterBar/styled.js.map +1 -1
  343. package/dist/esm/parts/Filters/index.js +3 -3
  344. package/dist/esm/parts/Filters/index.js.map +2 -2
  345. package/dist/esm/parts/Footer.js.map +1 -1
  346. package/dist/esm/parts/Headers/EmptyChildrenGroup.js.map +1 -1
  347. package/dist/esm/parts/Headers/HeaderCell.js +6 -13
  348. package/dist/esm/parts/Headers/HeaderCell.js.map +2 -2
  349. package/dist/esm/parts/Headers/HeaderCellGroup.js +2 -2
  350. package/dist/esm/parts/Headers/HeaderCellGroup.js.map +2 -2
  351. package/dist/esm/parts/Headers/HeaderCellTitle.js.map +1 -1
  352. package/dist/esm/parts/Headers/HeaderResizer.js +4 -3
  353. package/dist/esm/parts/Headers/HeaderResizer.js.map +2 -2
  354. package/dist/esm/parts/Headers/RequiredDot.js.map +1 -1
  355. package/dist/esm/parts/Headers/index.js.map +1 -1
  356. package/dist/esm/parts/Headers/useHeaderCellConfig.js.map +1 -1
  357. package/dist/esm/parts/Headers/useHeaderCellHandlers.js.map +1 -1
  358. package/dist/esm/parts/HoC/SortableItemContext.js.map +1 -1
  359. package/dist/esm/parts/HoC/withConditionalDnDColumnContext.js +4 -2
  360. package/dist/esm/parts/HoC/withConditionalDnDColumnContext.js.map +2 -2
  361. package/dist/esm/parts/HoC/withConditionalDnDRowContext.js.map +1 -1
  362. package/dist/esm/parts/HoC/withConditionalDnDSortableContext.js.map +1 -1
  363. package/dist/esm/parts/HoC/withDnDSortableColumnContext.js.map +1 -1
  364. package/dist/esm/parts/HoC/withDnDSortableRowContext.js.map +1 -1
  365. package/dist/esm/parts/Loader.js.map +1 -1
  366. package/dist/esm/parts/Row.js +15 -11
  367. package/dist/esm/parts/Row.js.map +2 -2
  368. package/dist/esm/parts/RowLoading.js.map +1 -1
  369. package/dist/esm/parts/RowVariants/RowVariantHeader.js +4 -4
  370. package/dist/esm/parts/RowVariants/RowVariantHeader.js.map +2 -2
  371. package/dist/esm/parts/RowVariants/RowVariantPrimary.js +2 -2
  372. package/dist/esm/parts/RowVariants/RowVariantPrimary.js.map +2 -2
  373. package/dist/esm/parts/RowVariants/RowVariantSecondary.js +2 -2
  374. package/dist/esm/parts/RowVariants/RowVariantSecondary.js.map +2 -2
  375. package/dist/esm/parts/RowVariants/RowVariantSkeleton.js +54 -0
  376. package/dist/esm/parts/RowVariants/RowVariantSkeleton.js.map +7 -0
  377. package/dist/esm/parts/RowVariants/index.js +3 -1
  378. package/dist/esm/parts/RowVariants/index.js.map +2 -2
  379. package/dist/esm/parts/Rows.js.map +1 -1
  380. package/dist/esm/parts/SortByCaret.js.map +1 -1
  381. package/dist/esm/parts/SortableHeaderCell.js.map +1 -1
  382. package/dist/esm/parts/TableContent.js +4 -9
  383. package/dist/esm/parts/TableContent.js.map +2 -2
  384. package/dist/esm/parts/VirtualRowsList.js +3 -11
  385. package/dist/esm/parts/VirtualRowsList.js.map +2 -2
  386. package/dist/esm/parts/internal.js +8 -0
  387. package/dist/esm/parts/internal.js.map +7 -0
  388. package/dist/esm/prop-types.js.map +1 -1
  389. package/dist/esm/styled.js +8 -9
  390. package/dist/esm/styled.js.map +2 -2
  391. package/dist/esm/tests/utils/index.js.map +1 -1
  392. package/package.json +28 -28
  393. package/dist/cjs/redux/reducers/headersReducers/defaults.js +0 -35
  394. package/dist/cjs/redux/reducers/headersReducers/defaults.js.map +0 -7
  395. package/dist/cjs/redux/reducers/headersReducers/headersReducers.js +0 -57
  396. package/dist/cjs/redux/reducers/headersReducers/headersReducers.js.map +0 -7
  397. package/dist/cjs/redux/reducers/headersReducers/index.js +0 -29
  398. package/dist/cjs/redux/reducers/headersReducers/index.js.map +0 -7
  399. package/dist/cjs/redux/reducers/headersReducers/logic.js +0 -56
  400. package/dist/cjs/redux/reducers/headersReducers/logic.js.map +0 -7
  401. package/dist/cjs/redux/reducers/headersReducers/useDispatchHeadersActions.js +0 -46
  402. package/dist/cjs/redux/reducers/headersReducers/useDispatchHeadersActions.js.map +0 -7
  403. package/dist/cjs/redux/reducers/index.js +0 -47
  404. package/dist/cjs/redux/reducers/index.js.map +0 -7
  405. package/dist/cjs/redux/reducers/rowsReducers/actions_types.js +0 -47
  406. package/dist/cjs/redux/reducers/rowsReducers/actions_types.js.map +0 -7
  407. package/dist/cjs/redux/reducers/rowsReducers/defaults.js +0 -55
  408. package/dist/cjs/redux/reducers/rowsReducers/defaults.js.map +0 -7
  409. package/dist/cjs/redux/reducers/rowsReducers/index.js +0 -29
  410. package/dist/cjs/redux/reducers/rowsReducers/index.js.map +0 -7
  411. package/dist/cjs/redux/reducers/rowsReducers/logic.js +0 -65
  412. package/dist/cjs/redux/reducers/rowsReducers/logic.js.map +0 -7
  413. package/dist/cjs/redux/reducers/rowsReducers/rowsReducer.js +0 -87
  414. package/dist/cjs/redux/reducers/rowsReducers/rowsReducer.js.map +0 -7
  415. package/dist/cjs/redux/reducers/rowsReducers/useDispatchRowsActions.js +0 -61
  416. package/dist/cjs/redux/reducers/rowsReducers/useDispatchRowsActions.js.map +0 -7
  417. package/dist/cjs/redux/storeConfig.js +0 -38
  418. package/dist/cjs/redux/storeConfig.js.map +0 -7
  419. package/dist/esm/redux/reducers/headersReducers/defaults.js +0 -6
  420. package/dist/esm/redux/reducers/headersReducers/defaults.js.map +0 -7
  421. package/dist/esm/redux/reducers/headersReducers/headersReducers.js +0 -28
  422. package/dist/esm/redux/reducers/headersReducers/headersReducers.js.map +0 -7
  423. package/dist/esm/redux/reducers/headersReducers/index.js +0 -4
  424. package/dist/esm/redux/reducers/headersReducers/index.js.map +0 -7
  425. package/dist/esm/redux/reducers/headersReducers/logic.js +0 -29
  426. package/dist/esm/redux/reducers/headersReducers/logic.js.map +0 -7
  427. package/dist/esm/redux/reducers/headersReducers/useDispatchHeadersActions.js +0 -17
  428. package/dist/esm/redux/reducers/headersReducers/useDispatchHeadersActions.js.map +0 -7
  429. package/dist/esm/redux/reducers/index.js +0 -18
  430. package/dist/esm/redux/reducers/index.js.map +0 -7
  431. package/dist/esm/redux/reducers/rowsReducers/actions_types.js +0 -18
  432. package/dist/esm/redux/reducers/rowsReducers/actions_types.js.map +0 -7
  433. package/dist/esm/redux/reducers/rowsReducers/defaults.js +0 -26
  434. package/dist/esm/redux/reducers/rowsReducers/defaults.js.map +0 -7
  435. package/dist/esm/redux/reducers/rowsReducers/index.js +0 -4
  436. package/dist/esm/redux/reducers/rowsReducers/index.js.map +0 -7
  437. package/dist/esm/redux/reducers/rowsReducers/logic.js +0 -36
  438. package/dist/esm/redux/reducers/rowsReducers/logic.js.map +0 -7
  439. package/dist/esm/redux/reducers/rowsReducers/rowsReducer.js +0 -67
  440. package/dist/esm/redux/reducers/rowsReducers/rowsReducer.js.map +0 -7
  441. package/dist/esm/redux/reducers/rowsReducers/useDispatchRowsActions.js +0 -41
  442. package/dist/esm/redux/reducers/rowsReducers/useDispatchRowsActions.js.map +0 -7
  443. package/dist/esm/redux/storeConfig.js +0 -9
  444. package/dist/esm/redux/storeConfig.js.map +0 -7
@@ -1,17 +1,18 @@
1
1
  import * as React from "react";
2
- import React2, { useState, useEffect, useMemo, useCallback } from "react";
2
+ import React2, { useState, useEffect, useMemo, useContext } from "react";
3
3
  import { Grid } from "@elliemae/ds-grid";
4
4
  import { DSComboBox } from "@elliemae/ds-controlled-form";
5
5
  import { SearchXsmall } from "@elliemae/ds-icons";
6
6
  import { FilterPopover } from "../../../../exported-related";
7
- import { DATA_TESTID } from "../../../../configs/constants";
7
+ import { DATA_TESTID } from "../../../../configs";
8
+ import DataTableContext from "../../../../DataTableContext";
8
9
  const BaseSelectFilter = (props) => {
9
10
  const {
10
11
  isMulti = false,
11
12
  selectedItems = null,
12
13
  column,
13
14
  type,
14
- column: { id, filterOptions: userFilterOptions },
15
+ column: { id, filterOptions: userFilterOptions, filterMinWidth },
15
16
  ctx: {
16
17
  tableProps: { data }
17
18
  },
@@ -19,9 +20,12 @@ const BaseSelectFilter = (props) => {
19
20
  innerRef,
20
21
  onValueChange
21
22
  } = props;
23
+ const { patchHeaderFilterButtonAndMenu } = useContext(DataTableContext);
22
24
  const filterOptions = useMemo(() => {
23
25
  if (!userFilterOptions) {
24
- const automaticFilters = [...new Set(data.map((datum) => datum[id].toString()))].map((item) => ({
26
+ const automaticFilters = [
27
+ ...new Set(data.map((datum) => datum?.[id]?.toString()).filter((val) => val !== void 0))
28
+ ].map((item) => ({
25
29
  type: "option",
26
30
  dsId: item,
27
31
  value: item,
@@ -34,41 +38,29 @@ const BaseSelectFilter = (props) => {
34
38
  return userFilterOptions();
35
39
  }, [data, id, userFilterOptions]);
36
40
  const handleOnChange = (value) => {
37
- if (isMulti) {
38
- const multiSelectedItem = selectedItems;
39
- const isFound = multiSelectedItem.find((item) => item.dsId === value.dsId);
40
- if (isFound) {
41
- onValueChange(type, multiSelectedItem.filter((item) => item.dsId !== value.dsId));
42
- } else {
43
- onValueChange(type, [...multiSelectedItem, value]);
44
- }
45
- } else {
46
- const singleSelectedItem = selectedItems;
47
- onValueChange(type, singleSelectedItem?.dsId !== value.dsId ? value : null);
48
- }
41
+ onValueChange(type, value);
42
+ if (!isMulti)
43
+ patchHeaderFilterButtonAndMenu(column.id, true);
49
44
  };
50
45
  const [filters, setFilteredOptions] = useState(filterOptions);
51
46
  useEffect(() => {
52
47
  setFilteredOptions(filterOptions);
53
48
  }, [filterOptions]);
54
- const filteredOptions = useCallback((filter) => filterOptions.filter((option) => option.type === "separator" || option.label.toLowerCase().includes(filter.toLowerCase())), [filterOptions]);
55
- const handleOnFilter = useCallback((newFilter) => {
56
- setFilteredOptions(filteredOptions(newFilter));
57
- }, [filteredOptions]);
58
49
  const Select = /* @__PURE__ */ React2.createElement(Grid, {
59
50
  "data-testid": isMulti ? DATA_TESTID.DATA_TABLE_MULTISELECT_CONTROLLER : DATA_TESTID.DATA_TABLE_SINGLESELECT_CONTROLLER,
60
- style: { background: "#fff", position: "relative" }
51
+ style: { background: "#fff", position: "relative", width: filterMinWidth ?? column.ref?.current?.offsetWidth }
61
52
  }, /* @__PURE__ */ React2.createElement(DSComboBox, {
62
53
  inline: true,
63
54
  autoFocus: true,
64
- options: filters,
55
+ allOptions: filterOptions,
56
+ filteredOptions: filters,
65
57
  onChange: handleOnChange,
66
58
  selectedValues: selectedItems,
67
- onFilter: handleOnFilter,
59
+ onFilter: setFilteredOptions,
68
60
  menuMaxHeight: 300
69
61
  }));
70
62
  const handleOnClickOutside = () => {
71
- setFilteredOptions(filteredOptions(""));
63
+ setFilteredOptions(filterOptions);
72
64
  };
73
65
  return /* @__PURE__ */ React2.createElement(FilterPopover, {
74
66
  reduxHeader,
@@ -78,8 +70,7 @@ const BaseSelectFilter = (props) => {
78
70
  triggerIcon: /* @__PURE__ */ React2.createElement(SearchXsmall, null),
79
71
  innerRef,
80
72
  ariaLabel: "Open Selection Filter",
81
- onClickOutsideMenu: handleOnClickOutside,
82
- customStyles: { width: column.ref?.current?.offsetWidth ?? "0px" }
73
+ onClickOutsideMenu: handleOnClickOutside
83
74
  });
84
75
  };
85
76
  export {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../../../scripts/build/transpile/react-shim.js", "../../../../../../src/addons/Filters/Components/SelectFilter/BaseSelectFilter.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable react/prop-types */\nimport React, { useState, useEffect, useMemo, useCallback } from 'react';\nimport { Grid } from '@elliemae/ds-grid';\nimport { DSComboBox } from '@elliemae/ds-controlled-form';\nimport { SearchXsmall } from '@elliemae/ds-icons';\nimport { FilterPopover } from '../../../../exported-related';\nimport { FilterProps } from '../../../../types/props';\nimport { DATA_TESTID } from '../../../../configs/constants';\n\ninterface FilterOptionT {\n dsId: string;\n type: string;\n value: string;\n label: string;\n}\n\ninterface BaseSelectProps {\n isSingle?: boolean;\n isMulti?: boolean;\n selectedItems?: FilterOptionT[] | FilterOptionT;\n type: string;\n}\n\nexport const BaseSelectFilter: React.ComponentType<FilterProps & BaseSelectProps> = (props) => {\n const {\n isMulti = false,\n selectedItems = null,\n column,\n type,\n column: { id, filterOptions: userFilterOptions },\n ctx: {\n tableProps: { data },\n },\n reduxHeader,\n innerRef,\n onValueChange,\n } = props;\n\n const filterOptions: FilterOptionT[] = useMemo(() => {\n // If the user didn't provide options, use the available ones\n if (!userFilterOptions) {\n const automaticFilters = [...new Set(data.map((datum) => datum[id].toString()))].map((item) => ({\n type: 'option',\n dsId: item,\n value: item,\n label: item,\n }));\n\n return automaticFilters;\n }\n\n // If user provided the array itself, use it\n if (Array.isArray(userFilterOptions)) return userFilterOptions;\n // Otherwise, it is a function\n return userFilterOptions();\n }, [data, id, userFilterOptions]);\n\n const handleOnChange = (value) => {\n if (isMulti) {\n const multiSelectedItem = selectedItems as FilterOptionT[];\n const isFound = multiSelectedItem.find((item) => item.dsId === value.dsId);\n if (isFound) {\n onValueChange(\n type,\n multiSelectedItem.filter((item) => item.dsId !== value.dsId),\n );\n } else {\n onValueChange(type, [...multiSelectedItem, value]);\n }\n } else {\n const singleSelectedItem = selectedItems as FilterOptionT;\n onValueChange(type, singleSelectedItem?.dsId !== value.dsId ? value : null);\n }\n };\n\n const [filters, setFilteredOptions] = useState(filterOptions);\n\n useEffect(() => {\n setFilteredOptions(filterOptions);\n }, [filterOptions]);\n\n const filteredOptions = useCallback(\n (filter) =>\n filterOptions.filter(\n (option) => option.type === 'separator' || option.label.toLowerCase().includes(filter.toLowerCase()),\n ),\n [filterOptions],\n );\n\n const handleOnFilter = useCallback(\n (newFilter) => {\n setFilteredOptions(filteredOptions(newFilter));\n },\n [filteredOptions],\n );\n\n const Select = (\n <Grid\n data-testid={\n isMulti ? DATA_TESTID.DATA_TABLE_MULTISELECT_CONTROLLER : DATA_TESTID.DATA_TABLE_SINGLESELECT_CONTROLLER\n }\n style={{ background: '#fff', position: 'relative' }}\n >\n <DSComboBox\n inline\n autoFocus\n options={filters}\n onChange={handleOnChange}\n selectedValues={selectedItems}\n onFilter={handleOnFilter}\n menuMaxHeight={300}\n />\n </Grid>\n );\n\n const handleOnClickOutside = () => {\n setFilteredOptions(filteredOptions(''));\n };\n return (\n <FilterPopover\n reduxHeader={reduxHeader}\n column={column}\n columnId={column.id}\n menuContent={Select}\n triggerIcon={<SearchXsmall />}\n innerRef={innerRef}\n ariaLabel=\"Open Selection Filter\"\n onClickOutsideMenu={handleOnClickOutside}\n customStyles={{ width: column.ref?.current?.offsetWidth ?? '0px' }}\n />\n );\n};\n"],
5
- "mappings": "AAAA;ACCA;AACA;AACA;AACA;AACA;AAEA;AAgBO,MAAM,mBAAuE,CAAC,UAAU;AAC7F,QAAM;AAAA,IACJ,UAAU;AAAA,IACV,gBAAgB;AAAA,IAChB;AAAA,IACA;AAAA,IACA,QAAQ,EAAE,IAAI,eAAe;AAAA,IAC7B,KAAK;AAAA,MACH,YAAY,EAAE;AAAA;AAAA,IAEhB;AAAA,IACA;AAAA,IACA;AAAA,MACE;AAEJ,QAAM,gBAAiC,QAAQ,MAAM;AAEnD,QAAI,CAAC,mBAAmB;AACtB,YAAM,mBAAmB,CAAC,GAAG,IAAI,IAAI,KAAK,IAAI,CAAC,UAAU,MAAM,IAAI,cAAc,IAAI,CAAC,SAAU;AAAA,QAC9F,MAAM;AAAA,QACN,MAAM;AAAA,QACN,OAAO;AAAA,QACP,OAAO;AAAA;AAGT,aAAO;AAAA;AAIT,QAAI,MAAM,QAAQ;AAAoB,aAAO;AAE7C,WAAO;AAAA,KACN,CAAC,MAAM,IAAI;AAEd,QAAM,iBAAiB,CAAC,UAAU;AAChC,QAAI,SAAS;AACX,YAAM,oBAAoB;AAC1B,YAAM,UAAU,kBAAkB,KAAK,CAAC,SAAS,KAAK,SAAS,MAAM;AACrE,UAAI,SAAS;AACX,sBACE,MACA,kBAAkB,OAAO,CAAC,SAAS,KAAK,SAAS,MAAM;AAAA,aAEpD;AACL,sBAAc,MAAM,CAAC,GAAG,mBAAmB;AAAA;AAAA,WAExC;AACL,YAAM,qBAAqB;AAC3B,oBAAc,MAAM,oBAAoB,SAAS,MAAM,OAAO,QAAQ;AAAA;AAAA;AAI1E,QAAM,CAAC,SAAS,sBAAsB,SAAS;AAE/C,YAAU,MAAM;AACd,uBAAmB;AAAA,KAClB,CAAC;AAEJ,QAAM,kBAAkB,YACtB,CAAC,WACC,cAAc,OACZ,CAAC,WAAW,OAAO,SAAS,eAAe,OAAO,MAAM,cAAc,SAAS,OAAO,iBAE1F,CAAC;AAGH,QAAM,iBAAiB,YACrB,CAAC,cAAc;AACb,uBAAmB,gBAAgB;AAAA,KAErC,CAAC;AAGH,QAAM,SACJ,qCAAC,MAAD;AAAA,IACE,eACE,UAAU,YAAY,oCAAoC,YAAY;AAAA,IAExE,OAAO,EAAE,YAAY,QAAQ,UAAU;AAAA,KAEvC,qCAAC,YAAD;AAAA,IACE,QAAM;AAAA,IACN,WAAS;AAAA,IACT,SAAS;AAAA,IACT,UAAU;AAAA,IACV,gBAAgB;AAAA,IAChB,UAAU;AAAA,IACV,eAAe;AAAA;AAKrB,QAAM,uBAAuB,MAAM;AACjC,uBAAmB,gBAAgB;AAAA;AAErC,SACE,qCAAC,eAAD;AAAA,IACE;AAAA,IACA;AAAA,IACA,UAAU,OAAO;AAAA,IACjB,aAAa;AAAA,IACb,aAAa,qCAAC,cAAD;AAAA,IACb;AAAA,IACA,WAAU;AAAA,IACV,oBAAoB;AAAA,IACpB,cAAc,EAAE,OAAO,OAAO,KAAK,SAAS,eAAe;AAAA;AAAA;",
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable react/prop-types */\nimport React, { useState, useEffect, useMemo, useCallback, useContext } from 'react';\nimport { Grid } from '@elliemae/ds-grid';\nimport { DSComboBox } from '@elliemae/ds-controlled-form';\nimport { SearchXsmall } from '@elliemae/ds-icons';\nimport { FilterPopover } from '../../../../exported-related';\nimport { FilterProps } from '../../../../types/props';\nimport { DATA_TESTID } from '../../../../configs';\nimport DataTableContext from '../../../../DataTableContext';\n\ninterface FilterOptionT {\n dsId: string;\n type: string;\n value: string;\n label: string;\n}\n\ninterface BaseSelectProps {\n isSingle?: boolean;\n isMulti?: boolean;\n selectedItems?: FilterOptionT[] | FilterOptionT;\n type: string;\n}\n\nexport const BaseSelectFilter: React.ComponentType<FilterProps & BaseSelectProps> = (props) => {\n const {\n isMulti = false,\n selectedItems = null,\n column,\n type,\n column: { id, filterOptions: userFilterOptions, filterMinWidth },\n ctx: {\n tableProps: { data },\n },\n reduxHeader,\n innerRef,\n onValueChange,\n } = props;\n\n const { patchHeaderFilterButtonAndMenu } = useContext(DataTableContext);\n\n const filterOptions: FilterOptionT[] = useMemo(() => {\n // If the user didn't provide options, use the available ones\n if (!userFilterOptions) {\n const automaticFilters = [\n ...new Set(data.map((datum) => datum?.[id]?.toString()).filter((val) => val !== undefined)),\n ].map((item) => ({\n type: 'option',\n dsId: item,\n value: item,\n label: item,\n }));\n\n return automaticFilters;\n }\n\n // If user provided the array itself, use it\n if (Array.isArray(userFilterOptions)) return userFilterOptions;\n // Otherwise, it is a function\n return userFilterOptions();\n }, [data, id, userFilterOptions]);\n\n const handleOnChange = (value) => {\n onValueChange(type, value);\n if (!isMulti) patchHeaderFilterButtonAndMenu(column.id, true);\n };\n\n const [filters, setFilteredOptions] = useState(filterOptions);\n\n useEffect(() => {\n setFilteredOptions(filterOptions);\n }, [filterOptions]);\n\n const Select = (\n <Grid\n data-testid={\n isMulti ? DATA_TESTID.DATA_TABLE_MULTISELECT_CONTROLLER : DATA_TESTID.DATA_TABLE_SINGLESELECT_CONTROLLER\n }\n style={{ background: '#fff', position: 'relative', width: filterMinWidth ?? column.ref?.current?.offsetWidth }}\n >\n <DSComboBox\n inline\n autoFocus\n allOptions={filterOptions}\n filteredOptions={filters}\n onChange={handleOnChange}\n selectedValues={selectedItems}\n onFilter={setFilteredOptions}\n menuMaxHeight={300}\n />\n </Grid>\n );\n\n const handleOnClickOutside = () => {\n setFilteredOptions(filterOptions);\n };\n return (\n <FilterPopover\n reduxHeader={reduxHeader}\n column={column}\n columnId={column.id}\n menuContent={Select}\n triggerIcon={<SearchXsmall />}\n innerRef={innerRef}\n ariaLabel=\"Open Selection Filter\"\n onClickOutsideMenu={handleOnClickOutside}\n />\n );\n};\n"],
5
+ "mappings": "AAAA;ACCA;AACA;AACA;AACA;AACA;AAEA;AACA;AAgBO,MAAM,mBAAuE,CAAC,UAAU;AAC7F,QAAM;AAAA,IACJ,UAAU;AAAA,IACV,gBAAgB;AAAA,IAChB;AAAA,IACA;AAAA,IACA,QAAQ,EAAE,IAAI,eAAe,mBAAmB;AAAA,IAChD,KAAK;AAAA,MACH,YAAY,EAAE;AAAA;AAAA,IAEhB;AAAA,IACA;AAAA,IACA;AAAA,MACE;AAEJ,QAAM,EAAE,mCAAmC,WAAW,gBAAgB;AAEtE,QAAM,gBAAiC,QAAQ,MAAM;AAEnD,QAAI,CAAC,mBAAmB;AACtB,YAAM,mBAAmB;AAAA,QACvB,GAAG,IAAI,IAAI,KAAK,IAAI,CAAC,UAAU,QAAQ,KAAK,SAAS,CAAC,EAAE,OAAO,CAAC,QAAQ,QAAQ,MAAS,CAAC;AAAA,MAC5F,EAAE,IAAI,CAAC,SAAU;AAAA,QACf,MAAM;AAAA,QACN,MAAM;AAAA,QACN,OAAO;AAAA,QACP,OAAO;AAAA,MACT,EAAE;AAEF,aAAO;AAAA,IACT;AAGA,QAAI,MAAM,QAAQ,iBAAiB;AAAG,aAAO;AAE7C,WAAO,kBAAkB;AAAA,EAC3B,GAAG,CAAC,MAAM,IAAI,iBAAiB,CAAC;AAEhC,QAAM,iBAAiB,CAAC,UAAU;AAChC,kBAAc,MAAM,KAAK;AACzB,QAAI,CAAC;AAAS,qCAA+B,OAAO,IAAI,IAAI;AAAA,EAC9D;AAEA,QAAM,CAAC,SAAS,sBAAsB,SAAS,aAAa;AAE5D,YAAU,MAAM;AACd,uBAAmB,aAAa;AAAA,EAClC,GAAG,CAAC,aAAa,CAAC;AAElB,QAAM,SACJ,qCAAC;AAAA,IACC,eACE,UAAU,YAAY,oCAAoC,YAAY;AAAA,IAExE,OAAO,EAAE,YAAY,QAAQ,UAAU,YAAY,OAAO,kBAAkB,OAAO,KAAK,SAAS,YAAY;AAAA,KAE7G,qCAAC;AAAA,IACC,QAAM;AAAA,IACN,WAAS;AAAA,IACT,YAAY;AAAA,IACZ,iBAAiB;AAAA,IACjB,UAAU;AAAA,IACV,gBAAgB;AAAA,IAChB,UAAU;AAAA,IACV,eAAe;AAAA,GACjB,CACF;AAGF,QAAM,uBAAuB,MAAM;AACjC,uBAAmB,aAAa;AAAA,EAClC;AACA,SACE,qCAAC;AAAA,IACC;AAAA,IACA;AAAA,IACA,UAAU,OAAO;AAAA,IACjB,aAAa;AAAA,IACb,aAAa,qCAAC,kBAAa;AAAA,IAC3B;AAAA,IACA,WAAU;AAAA,IACV,oBAAoB;AAAA,GACtB;AAEJ;",
6
6
  "names": []
7
7
  }
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../../../scripts/build/transpile/react-shim.js", "../../../../../../src/addons/Filters/Components/SelectFilter/MultiSelectFilter.tsx"],
4
4
  "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable react/prop-types */\nimport React from 'react';\nimport { FilterProps } from '../../../../types/props';\nimport { BaseSelectFilter } from './BaseSelectFilter';\nimport { FILTER_TYPES } from '../../../../exported-related';\nimport { DATA_TESTID } from '../../../../configs/constants';\n\nexport const MultiSelectFilter: React.ComponentType<FilterProps> = ({\n column,\n ctx,\n onValueChange,\n patchHeaderFilterButtonAndMenu,\n patchHeader,\n reduxHeader,\n filterValue,\n innerRef,\n}) => (\n <BaseSelectFilter\n reduxHeader={reduxHeader}\n data-testid={DATA_TESTID.DATA_TABLE_MULTISELECT_CONTROLLER}\n isMulti\n column={column}\n ctx={ctx}\n selectedItems={filterValue ?? []}\n type={FILTER_TYPES.MULTI_SELECT}\n onValueChange={onValueChange}\n patchHeaderFilterButtonAndMenu={patchHeaderFilterButtonAndMenu}\n patchHeader={patchHeader}\n innerRef={innerRef}\n />\n);\n"],
5
- "mappings": "AAAA;ACCA;AAEA;AACA;AACA;AAEO,MAAM,oBAAsD,CAAC;AAAA,EAClE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,MAEA,qCAAC,kBAAD;AAAA,EACE;AAAA,EACA,eAAa,YAAY;AAAA,EACzB,SAAO;AAAA,EACP;AAAA,EACA;AAAA,EACA,eAAe,eAAe;AAAA,EAC9B,MAAM,aAAa;AAAA,EACnB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;",
5
+ "mappings": "AAAA;ACCA;AAEA;AACA;AACA;AAEO,MAAM,oBAAsD,CAAC;AAAA,EAClE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,MAEA,qCAAC;AAAA,EACC;AAAA,EACA,eAAa,YAAY;AAAA,EACzB,SAAO;AAAA,EACP;AAAA,EACA;AAAA,EACA,eAAe,eAAe,CAAC;AAAA,EAC/B,MAAM,aAAa;AAAA,EACnB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,CACF;",
6
6
  "names": []
7
7
  }
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../../../scripts/build/transpile/react-shim.js", "../../../../../../src/addons/Filters/Components/SelectFilter/SingleSelectFilter.tsx"],
4
4
  "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable react/prop-types */\n/* eslint-disable max-lines */\nimport React from 'react';\nimport { BaseSelectFilter } from './BaseSelectFilter';\nimport { FilterProps } from '../../../../types/props';\nimport { FILTER_TYPES } from '../../../../exported-related';\nimport { DATA_TESTID } from '../../../../configs/constants';\n\nexport const SingleSelectFilter: React.ComponentType<FilterProps> = ({\n column,\n ctx,\n patchHeaderFilterButtonAndMenu,\n patchHeader,\n onValueChange,\n filterValue,\n reduxHeader,\n innerRef,\n}) => (\n <BaseSelectFilter\n reduxHeader={reduxHeader}\n data-testid={DATA_TESTID.DATA_TABLE_SINGLESELECT_CONTROLLER}\n isSingle\n column={column}\n ctx={ctx}\n selectedItems={filterValue}\n type={FILTER_TYPES.SELECT}\n onValueChange={onValueChange}\n patchHeaderFilterButtonAndMenu={patchHeaderFilterButtonAndMenu}\n patchHeader={patchHeader}\n innerRef={innerRef}\n />\n);\n"],
5
- "mappings": "AAAA;ACEA;AACA;AAEA;AACA;AAEO,MAAM,qBAAuD,CAAC;AAAA,EACnE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,MAEA,qCAAC,kBAAD;AAAA,EACE;AAAA,EACA,eAAa,YAAY;AAAA,EACzB,UAAQ;AAAA,EACR;AAAA,EACA;AAAA,EACA,eAAe;AAAA,EACf,MAAM,aAAa;AAAA,EACnB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;",
5
+ "mappings": "AAAA;ACEA;AACA;AAEA;AACA;AAEO,MAAM,qBAAuD,CAAC;AAAA,EACnE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,MAEA,qCAAC;AAAA,EACC;AAAA,EACA,eAAa,YAAY;AAAA,EACzB,UAAQ;AAAA,EACR;AAAA,EACA;AAAA,EACA,eAAe;AAAA,EACf,MAAM,aAAa;AAAA,EACnB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,CACF;",
6
6
  "names": []
7
7
  }
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../../../scripts/build/transpile/react-shim.js", "../../../../../../src/addons/Filters/Components/SelectFilter/useSelectFilterHandlers.tsx"],
4
4
  "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable max-params */\nimport { useCallback } from 'react';\nimport { FilterProps } from '../../../../types/props';\nimport { focusNextMenuItem, focusPrevMenuItem } from './utils';\n\ninterface BaseSelectProps {\n isSingle?: boolean;\n isMulti?: boolean;\n selectedItems?: unknown[];\n type: string;\n}\n\nexport const useSelectFilterHandlers = ({\n column: { id },\n type,\n isSingle,\n isMulti,\n selectedItems,\n onValueChange,\n patchHeaderFilterButtonAndMenu,\n patchHeader,\n}: Partial<FilterProps> & BaseSelectProps): any => {\n const handleSelectItem = useCallback(\n (option) => {\n if (isSingle) {\n onValueChange(type, option);\n } else if (isMulti) {\n let nextSelectedItems = [];\n\n if (selectedItems.includes(option)) {\n nextSelectedItems = selectedItems.filter((opt) => opt !== option);\n } else {\n nextSelectedItems = [...selectedItems, option];\n }\n onValueChange(type, nextSelectedItems);\n }\n },\n [isSingle, isMulti, onValueChange, type, selectedItems],\n );\n\n const onInputWrapperKeyDown: React.KeyboardEventHandler = useCallback((e) => {\n if (e.code === 'ArrowDown') focusNextMenuItem(e, -1);\n }, []);\n\n const onMenuItemClick: (opt: string) => React.MouseEventHandler = useCallback(\n (option) => () => {\n handleSelectItem(option);\n if (isSingle) patchHeaderFilterButtonAndMenu(id, true);\n },\n [handleSelectItem, id, isSingle, patchHeaderFilterButtonAndMenu],\n );\n\n const onMenuItemKeyDown: (...args: any) => React.KeyboardEventHandler = useCallback(\n (option, index, virtualIndex, inputRef, innerRef) => (e) => {\n if (e.code === 'ArrowUp') {\n if (index === 0) inputRef.current.focus();\n else focusPrevMenuItem(e, virtualIndex);\n }\n if (e.code === 'ArrowDown') focusNextMenuItem(e, virtualIndex);\n if (e.code === 'Space') {\n e.preventDefault();\n handleSelectItem(option);\n if (isSingle) {\n patchHeader(id, { hideFilterMenu: true, hideFilterButton: false });\n setTimeout(() => innerRef.current.focus());\n }\n }\n if (e.code === 'Enter') {\n patchHeader(id, { hideFilterMenu: true, hideFilterButton: false });\n setTimeout(() => innerRef.current.focus());\n }\n },\n [handleSelectItem, id, isSingle, patchHeader],\n );\n\n return { onInputWrapperKeyDown, onMenuItemClick, onMenuItemKeyDown };\n};\n"],
5
- "mappings": "AAAA;ACCA;AAEA;AASO,MAAM,0BAA0B,CAAC;AAAA,EACtC,QAAQ,EAAE;AAAA,EACV;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,MACiD;AACjD,QAAM,mBAAmB,YACvB,CAAC,WAAW;AACV,QAAI,UAAU;AACZ,oBAAc,MAAM;AAAA,eACX,SAAS;AAClB,UAAI,oBAAoB;AAExB,UAAI,cAAc,SAAS,SAAS;AAClC,4BAAoB,cAAc,OAAO,CAAC,QAAQ,QAAQ;AAAA,aACrD;AACL,4BAAoB,CAAC,GAAG,eAAe;AAAA;AAEzC,oBAAc,MAAM;AAAA;AAAA,KAGxB,CAAC,UAAU,SAAS,eAAe,MAAM;AAG3C,QAAM,wBAAoD,YAAY,CAAC,MAAM;AAC3E,QAAI,EAAE,SAAS;AAAa,wBAAkB,GAAG;AAAA,KAChD;AAEH,QAAM,kBAA4D,YAChE,CAAC,WAAW,MAAM;AAChB,qBAAiB;AACjB,QAAI;AAAU,qCAA+B,IAAI;AAAA,KAEnD,CAAC,kBAAkB,IAAI,UAAU;AAGnC,QAAM,oBAAkE,YACtE,CAAC,QAAQ,OAAO,cAAc,UAAU,aAAa,CAAC,MAAM;AAC1D,QAAI,EAAE,SAAS,WAAW;AACxB,UAAI,UAAU;AAAG,iBAAS,QAAQ;AAAA;AAC7B,0BAAkB,GAAG;AAAA;AAE5B,QAAI,EAAE,SAAS;AAAa,wBAAkB,GAAG;AACjD,QAAI,EAAE,SAAS,SAAS;AACtB,QAAE;AACF,uBAAiB;AACjB,UAAI,UAAU;AACZ,oBAAY,IAAI,EAAE,gBAAgB,MAAM,kBAAkB;AAC1D,mBAAW,MAAM,SAAS,QAAQ;AAAA;AAAA;AAGtC,QAAI,EAAE,SAAS,SAAS;AACtB,kBAAY,IAAI,EAAE,gBAAgB,MAAM,kBAAkB;AAC1D,iBAAW,MAAM,SAAS,QAAQ;AAAA;AAAA,KAGtC,CAAC,kBAAkB,IAAI,UAAU;AAGnC,SAAO,EAAE,uBAAuB,iBAAiB;AAAA;",
5
+ "mappings": "AAAA;ACCA;AAEA;AASO,MAAM,0BAA0B,CAAC;AAAA,EACtC,QAAQ,EAAE;AAAA,EACV;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,MACiD;AACjD,QAAM,mBAAmB,YACvB,CAAC,WAAW;AACV,QAAI,UAAU;AACZ,oBAAc,MAAM,MAAM;AAAA,IAC5B,WAAW,SAAS;AAClB,UAAI,oBAAoB,CAAC;AAEzB,UAAI,cAAc,SAAS,MAAM,GAAG;AAClC,4BAAoB,cAAc,OAAO,CAAC,QAAQ,QAAQ,MAAM;AAAA,MAClE,OAAO;AACL,4BAAoB,CAAC,GAAG,eAAe,MAAM;AAAA,MAC/C;AACA,oBAAc,MAAM,iBAAiB;AAAA,IACvC;AAAA,EACF,GACA,CAAC,UAAU,SAAS,eAAe,MAAM,aAAa,CACxD;AAEA,QAAM,wBAAoD,YAAY,CAAC,MAAM;AAC3E,QAAI,EAAE,SAAS;AAAa,wBAAkB,GAAG,EAAE;AAAA,EACrD,GAAG,CAAC,CAAC;AAEL,QAAM,kBAA4D,YAChE,CAAC,WAAW,MAAM;AAChB,qBAAiB,MAAM;AACvB,QAAI;AAAU,qCAA+B,IAAI,IAAI;AAAA,EACvD,GACA,CAAC,kBAAkB,IAAI,UAAU,8BAA8B,CACjE;AAEA,QAAM,oBAAkE,YACtE,CAAC,QAAQ,OAAO,cAAc,UAAU,aAAa,CAAC,MAAM;AAC1D,QAAI,EAAE,SAAS,WAAW;AACxB,UAAI,UAAU;AAAG,iBAAS,QAAQ,MAAM;AAAA;AACnC,0BAAkB,GAAG,YAAY;AAAA,IACxC;AACA,QAAI,EAAE,SAAS;AAAa,wBAAkB,GAAG,YAAY;AAC7D,QAAI,EAAE,SAAS,SAAS;AACtB,QAAE,eAAe;AACjB,uBAAiB,MAAM;AACvB,UAAI,UAAU;AACZ,oBAAY,IAAI,EAAE,gBAAgB,MAAM,kBAAkB,MAAM,CAAC;AACjE,mBAAW,MAAM,SAAS,QAAQ,MAAM,CAAC;AAAA,MAC3C;AAAA,IACF;AACA,QAAI,EAAE,SAAS,SAAS;AACtB,kBAAY,IAAI,EAAE,gBAAgB,MAAM,kBAAkB,MAAM,CAAC;AACjE,iBAAW,MAAM,SAAS,QAAQ,MAAM,CAAC;AAAA,IAC3C;AAAA,EACF,GACA,CAAC,kBAAkB,IAAI,UAAU,WAAW,CAC9C;AAEA,SAAO,EAAE,uBAAuB,iBAAiB,kBAAkB;AACrE;",
6
6
  "names": []
7
7
  }
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../../../scripts/build/transpile/react-shim.js", "../../../../../../src/addons/Filters/Components/SelectFilter/utils.tsx"],
4
4
  "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import { DATA_TESTID } from '../../../../configs/constants';\n\nexport const focusNextMenuItem = (e, index) => {\n e.preventDefault();\n const menuItems = document.querySelectorAll<HTMLDivElement>(\n `[data-testid=\"${DATA_TESTID.DATA_TABLE_SELECT_MENU_ITEM}\"]`,\n );\n menuItems.item(index + 1)?.focus();\n};\n\nexport const focusPrevMenuItem = (e, index) => {\n e.preventDefault();\n const menuItems = document.querySelectorAll<HTMLDivElement>(\n `[data-testid=\"${DATA_TESTID.DATA_TABLE_SELECT_MENU_ITEM}\"]`,\n );\n menuItems.item(index - 1)?.focus();\n};\n"],
5
- "mappings": "AAAA;ACAA;AAEO,MAAM,oBAAoB,CAAC,GAAG,UAAU;AAC7C,IAAE;AACF,QAAM,YAAY,SAAS,iBACzB,iBAAiB,YAAY;AAE/B,YAAU,KAAK,QAAQ,IAAI;AAAA;AAGtB,MAAM,oBAAoB,CAAC,GAAG,UAAU;AAC7C,IAAE;AACF,QAAM,YAAY,SAAS,iBACzB,iBAAiB,YAAY;AAE/B,YAAU,KAAK,QAAQ,IAAI;AAAA;",
5
+ "mappings": "AAAA;ACAA;AAEO,MAAM,oBAAoB,CAAC,GAAG,UAAU;AAC7C,IAAE,eAAe;AACjB,QAAM,YAAY,SAAS,iBACzB,iBAAiB,YAAY,+BAC/B;AACA,YAAU,KAAK,QAAQ,CAAC,GAAG,MAAM;AACnC;AAEO,MAAM,oBAAoB,CAAC,GAAG,UAAU;AAC7C,IAAE,eAAe;AACjB,QAAM,YAAY,SAAS,iBACzB,iBAAiB,YAAY,+BAC/B;AACA,YAAU,KAAK,QAAQ,CAAC,GAAG,MAAM;AACnC;",
6
6
  "names": []
7
7
  }
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../../../scripts/build/transpile/react-shim.js", "../../../../../../src/addons/Filters/Components/SingleDateFilter/index.tsx"],
4
4
  "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable react/prop-types */\nimport React, { useCallback, useEffect, useState } from 'react';\nimport { DatePicker2 } from '@elliemae/ds-icons';\nimport { Grid } from '@elliemae/ds-grid';\nimport { DSControlledDateTimePicker } from '@elliemae/ds-controlled-form';\nimport { FilterPopover, FILTER_TYPES } from '../../../../exported-related';\nimport { FilterProps } from '../../../../types/props';\nimport { DATA_TESTID } from '../../../../configs/constants';\n\nexport const SingleDateFilter: React.ComponentType<FilterProps> = (props) => {\n const {\n column,\n column: { id },\n filterValue,\n reduxHeader,\n onValueChange,\n patchHeaderFilterButtonAndMenu,\n innerRef,\n } = props;\n\n const [date, setDate] = useState(filterValue || '');\n\n useEffect(() => {\n setDate(filterValue || '');\n }, [filterValue]);\n\n useEffect(() => {\n if (!date.includes('_')) onValueChange(FILTER_TYPES.SINGLE_DATE, date || undefined);\n // We are missing onValueChange on purpose, this is an internal function and won't cause any problems\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [date]);\n\n const commitDateChange = useCallback(() => {\n patchHeaderFilterButtonAndMenu(id, true);\n }, [id, patchHeaderFilterButtonAndMenu]);\n\n return (\n <FilterPopover\n reduxHeader={reduxHeader}\n column={column}\n columnId={column.id}\n menuContent={\n <Grid data-testid={DATA_TESTID.DATA_TABLE_SINGLE_DATE_CONTROLLER} width=\"260px\">\n <Grid p=\"xxs\" style={{ background: 'white' }}>\n <DSControlledDateTimePicker date={date} onDateChange={setDate} type=\"date-inputs\" isClearable autoFocus />\n </Grid>\n <Grid onKeyDown={(e) => e.code === 'Enter' && setTimeout(commitDateChange, 0)}>\n <DSControlledDateTimePicker date={date} onDateChange={setDate} type=\"date-picker-controller-only\" />\n </Grid>\n </Grid>\n }\n triggerIcon={<DatePicker2 />}\n innerRef={innerRef}\n ariaLabel=\"Open Single Date Filter\"\n />\n );\n};\n"],
5
- "mappings": "AAAA;ACCA;AACA;AACA;AACA;AACA;AAEA;AAEO,MAAM,mBAAqD,CAAC,UAAU;AAC3E,QAAM;AAAA,IACJ;AAAA,IACA,QAAQ,EAAE;AAAA,IACV;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,MACE;AAEJ,QAAM,CAAC,MAAM,WAAW,SAAS,eAAe;AAEhD,YAAU,MAAM;AACd,YAAQ,eAAe;AAAA,KACtB,CAAC;AAEJ,YAAU,MAAM;AACd,QAAI,CAAC,KAAK,SAAS;AAAM,oBAAc,aAAa,aAAa,QAAQ;AAAA,KAGxE,CAAC;AAEJ,QAAM,mBAAmB,YAAY,MAAM;AACzC,mCAA+B,IAAI;AAAA,KAClC,CAAC,IAAI;AAER,SACE,qCAAC,eAAD;AAAA,IACE;AAAA,IACA;AAAA,IACA,UAAU,OAAO;AAAA,IACjB,aACE,qCAAC,MAAD;AAAA,MAAM,eAAa,YAAY;AAAA,MAAmC,OAAM;AAAA,OACtE,qCAAC,MAAD;AAAA,MAAM,GAAE;AAAA,MAAM,OAAO,EAAE,YAAY;AAAA,OACjC,qCAAC,4BAAD;AAAA,MAA4B;AAAA,MAAY,cAAc;AAAA,MAAS,MAAK;AAAA,MAAc,aAAW;AAAA,MAAC,WAAS;AAAA,SAEzG,qCAAC,MAAD;AAAA,MAAM,WAAW,CAAC,MAAM,EAAE,SAAS,WAAW,WAAW,kBAAkB;AAAA,OACzE,qCAAC,4BAAD;AAAA,MAA4B;AAAA,MAAY,cAAc;AAAA,MAAS,MAAK;AAAA;AAAA,IAI1E,aAAa,qCAAC,aAAD;AAAA,IACb;AAAA,IACA,WAAU;AAAA;AAAA;",
5
+ "mappings": "AAAA;ACCA;AACA;AACA;AACA;AACA;AAEA;AAEO,MAAM,mBAAqD,CAAC,UAAU;AAC3E,QAAM;AAAA,IACJ;AAAA,IACA,QAAQ,EAAE;AAAA,IACV;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,MACE;AAEJ,QAAM,CAAC,MAAM,WAAW,SAAS,eAAe,EAAE;AAElD,YAAU,MAAM;AACd,YAAQ,eAAe,EAAE;AAAA,EAC3B,GAAG,CAAC,WAAW,CAAC;AAEhB,YAAU,MAAM;AACd,QAAI,CAAC,KAAK,SAAS,GAAG;AAAG,oBAAc,aAAa,aAAa,QAAQ,MAAS;AAAA,EAGpF,GAAG,CAAC,IAAI,CAAC;AAET,QAAM,mBAAmB,YAAY,MAAM;AACzC,mCAA+B,IAAI,IAAI;AAAA,EACzC,GAAG,CAAC,IAAI,8BAA8B,CAAC;AAEvC,SACE,qCAAC;AAAA,IACC;AAAA,IACA;AAAA,IACA,UAAU,OAAO;AAAA,IACjB,aACE,qCAAC;AAAA,MAAK,eAAa,YAAY;AAAA,MAAmC,OAAM;AAAA,OACtE,qCAAC;AAAA,MAAK,GAAE;AAAA,MAAM,OAAO,EAAE,YAAY,QAAQ;AAAA,OACzC,qCAAC;AAAA,MAA2B;AAAA,MAAY,cAAc;AAAA,MAAS,MAAK;AAAA,MAAc,aAAW;AAAA,MAAC,WAAS;AAAA,KAAC,CAC1G,GACA,qCAAC;AAAA,MAAK,WAAW,CAAC,MAAM,EAAE,SAAS,WAAW,WAAW,kBAAkB,CAAC;AAAA,OAC1E,qCAAC;AAAA,MAA2B;AAAA,MAAY,cAAc;AAAA,MAAS,MAAK;AAAA,KAA8B,CACpG,CACF;AAAA,IAEF,aAAa,qCAAC,iBAAY;AAAA,IAC1B;AAAA,IACA,WAAU;AAAA,GACZ;AAEJ;",
6
6
  "names": []
7
7
  }
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/addons/Pagination/Pagination.tsx"],
4
4
  "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React, { useContext, useEffect, useMemo } from 'react';\nimport { DSPagination } from '@elliemae/ds-pagination';\nimport { DataTableContext } from '../../DataTableContext';\n\nexport const Pagination: React.ComponentType<Record<string, never>> = () => {\n const {\n tableProps: { onPageChanged },\n paginationHelpers,\n flattenedData: page,\n layoutHelpers: { totalColumnsWidth },\n } = useContext(DataTableContext);\n\n const originalPage = useMemo(() => page.map((row) => row.original), [page]);\n\n useEffect(() => {\n onPageChanged(originalPage);\n }, [onPageChanged, originalPage]);\n\n return <DSPagination {...paginationHelpers} width={totalColumnsWidth} />;\n};\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;AAAA;ACAA;AACA;AACA;AAEO,MAAM,aAAyD,MAAM;AAC1E,QAAM;AAAA,IACJ,YAAY,EAAE;AAAA,IACd;AAAA,IACA,eAAe;AAAA,IACf,eAAe,EAAE;AAAA,MACf,WAAW;AAEf,QAAM,eAAe,QAAQ,MAAM,KAAK,IAAI,CAAC,QAAQ,IAAI,WAAW,CAAC;AAErE,YAAU,MAAM;AACd,kBAAc;AAAA,KACb,CAAC,eAAe;AAEnB,SAAO,qCAAC,cAAD,iCAAkB,oBAAlB;AAAA,IAAqC,OAAO;AAAA;AAAA;",
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;AAAA;ACAA;AACA;AACA;AAEO,MAAM,aAAyD,MAAM;AAC1E,QAAM;AAAA,IACJ,YAAY,EAAE;AAAA,IACd;AAAA,IACA,eAAe;AAAA,IACf,eAAe,EAAE;AAAA,MACf,WAAW,gBAAgB;AAE/B,QAAM,eAAe,QAAQ,MAAM,KAAK,IAAI,CAAC,QAAQ,IAAI,QAAQ,GAAG,CAAC,IAAI,CAAC;AAE1E,YAAU,MAAM;AACd,kBAAc,YAAY;AAAA,EAC5B,GAAG,CAAC,eAAe,YAAY,CAAC;AAEhC,SAAO,qCAAC,+CAAiB,oBAAjB;AAAA,IAAoC,OAAO;AAAA,IAAmB;AACxE;",
6
6
  "names": []
7
7
  }
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../../src/configs/constants.tsx"],
4
4
  "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "export const momentFormat = 'MM/DD/YYYY';\nexport enum ColsLayoutStyle {\n Fixed = 'fixed',\n Auto = 'auto',\n}\n\nexport const DATA_TESTID = {\n DATA_TABLE_WRAPPER: 'data-table-wrapper',\n DATA_TABLE_GLOBAL_EXPAND_CELL: 'data-table-global-expand-cell',\n DATA_TABLE_ICON_ARROW_DOWN: 'ic-arrow-head-down',\n DATA_TABLE_ICON_ARROW_RIGHT: 'ic-arrow-head-right',\n DATA_TABLE_ICON_ARROW_MIXED: 'ic-arrow-head-mixed',\n DATA_TABLE_ICON_CHILD: 'ic-arrow-child',\n DATA_TABLE_GLOBAL_CHECKBOX: 'data-table-global-checkbox',\n DATA_TABLE_CHECKBOX: 'data-table-checkbox',\n DATA_TABLE_RADIO: 'data-table-radio',\n DATA_TABLE_DATE_RANGE_CONTROLLER: 'data-table-date-range',\n DATA_TABLE_SINGLE_DATE_CONTROLLER: 'data-table-single-date',\n DATA_TABLE_NUMBER_RANGE_CONTROLLER: 'data-table-number-range',\n DATA_TABLE_CURRENCY_RANGE_CONTROLLER: 'data-table-currency-range',\n DATA_TABLE_SELECT_MENU_ITEM: 'data-table-filter-menu-list-item',\n DATA_TABLE_MULTISELECT_CONTROLLER: 'data-table-multi-select',\n DATA_TABLE_SINGLESELECT_CONTROLLER: 'data-table-single-select',\n DATA_TABLE_FILTER_BUTTON: 'data-table-filter-menu-button',\n DATA_TABLE_FILTER_MENU_CONTENT: 'data-table-filter-menu-content',\n DATA_TABLE_ROW_CONTENT: 'data-table-row-content',\n DATA_TABLE_ROW: 'data-table-row',\n DATA_TABLE_TOOLBAR_TRIGGER: 'data-table-toolbar-trigger',\n DATA_TABLE_CELL: 'data-table-cell',\n DATA_TABLE_DRAG_HANDLE: 'data-table-drag-handle',\n DATA_TABLE_CONTENT_WRAPPER: 'data-table-content-wrapper',\n DATA_TABLE_TABLE: 'data-table-table',\n DATA_TABLE_SCROLLABLE_CONTAINER: 'data-table-scrollable-container',\n DATA_TABLE_HEADER: 'data-table-header',\n DATA_TABLE_ROW_HEADER_CONTENT: 'data-table-row-header-content',\n DATA_TABLE_ROW_GROUP_HEADER: 'data-table-row-group-header',\n DATA_TABLE_COLUMN_DRAG_OVERLAY: 'data-table-drag-column-drag-overlay',\n DATA_TABLE_HEADER_CELL_TITLE: 'header-cell-title',\n DATA_TABLE_FILTER_BAR_DD_MENU_BUTTON: 'filter-bar-ddmenu-button',\n};\n"],
5
- "mappings": "AAAA;ACAO,MAAM,eAAe;AACrB,IAAK,kBAAL,kBAAK,qBAAL;AACL,8BAAQ;AACR,6BAAO;AAFG;AAAA;AAKL,MAAM,cAAc;AAAA,EACzB,oBAAoB;AAAA,EACpB,+BAA+B;AAAA,EAC/B,4BAA4B;AAAA,EAC5B,6BAA6B;AAAA,EAC7B,6BAA6B;AAAA,EAC7B,uBAAuB;AAAA,EACvB,4BAA4B;AAAA,EAC5B,qBAAqB;AAAA,EACrB,kBAAkB;AAAA,EAClB,kCAAkC;AAAA,EAClC,mCAAmC;AAAA,EACnC,oCAAoC;AAAA,EACpC,sCAAsC;AAAA,EACtC,6BAA6B;AAAA,EAC7B,mCAAmC;AAAA,EACnC,oCAAoC;AAAA,EACpC,0BAA0B;AAAA,EAC1B,gCAAgC;AAAA,EAChC,wBAAwB;AAAA,EACxB,gBAAgB;AAAA,EAChB,4BAA4B;AAAA,EAC5B,iBAAiB;AAAA,EACjB,wBAAwB;AAAA,EACxB,4BAA4B;AAAA,EAC5B,kBAAkB;AAAA,EAClB,iCAAiC;AAAA,EACjC,mBAAmB;AAAA,EACnB,+BAA+B;AAAA,EAC/B,6BAA6B;AAAA,EAC7B,gCAAgC;AAAA,EAChC,8BAA8B;AAAA,EAC9B,sCAAsC;AAAA;",
5
+ "mappings": "AAAA;ACAO,MAAM,eAAe;AACrB,IAAK,kBAAL,kBAAK,qBAAL;AACL,8BAAQ;AACR,6BAAO;AAFG;AAAA;AAKL,MAAM,cAAc;AAAA,EACzB,oBAAoB;AAAA,EACpB,+BAA+B;AAAA,EAC/B,4BAA4B;AAAA,EAC5B,6BAA6B;AAAA,EAC7B,6BAA6B;AAAA,EAC7B,uBAAuB;AAAA,EACvB,4BAA4B;AAAA,EAC5B,qBAAqB;AAAA,EACrB,kBAAkB;AAAA,EAClB,kCAAkC;AAAA,EAClC,mCAAmC;AAAA,EACnC,oCAAoC;AAAA,EACpC,sCAAsC;AAAA,EACtC,6BAA6B;AAAA,EAC7B,mCAAmC;AAAA,EACnC,oCAAoC;AAAA,EACpC,0BAA0B;AAAA,EAC1B,gCAAgC;AAAA,EAChC,wBAAwB;AAAA,EACxB,gBAAgB;AAAA,EAChB,4BAA4B;AAAA,EAC5B,iBAAiB;AAAA,EACjB,wBAAwB;AAAA,EACxB,4BAA4B;AAAA,EAC5B,kBAAkB;AAAA,EAClB,iCAAiC;AAAA,EACjC,mBAAmB;AAAA,EACnB,+BAA+B;AAAA,EAC/B,6BAA6B;AAAA,EAC7B,gCAAgC;AAAA,EAChC,8BAA8B;AAAA,EAC9B,sCAAsC;AACxC;",
6
6
  "names": []
7
7
  }
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../../src/configs/fixedSizes.tsx"],
4
4
  "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "export const FIXED_SIZES = {\n PAGINATION_HEIGHT: 42,\n};\n"],
5
- "mappings": "AAAA;ACAO,MAAM,cAAc;AAAA,EACzB,mBAAmB;AAAA;",
5
+ "mappings": "AAAA;ACAO,MAAM,cAAc;AAAA,EACzB,mBAAmB;AACrB;",
6
6
  "names": []
7
7
  }
@@ -1,3 +1,19 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
3
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
4
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
5
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
6
+ var __spreadValues = (a, b) => {
7
+ for (var prop in b || (b = {}))
8
+ if (__hasOwnProp.call(b, prop))
9
+ __defNormalProp(a, prop, b[prop]);
10
+ if (__getOwnPropSymbols)
11
+ for (var prop of __getOwnPropSymbols(b)) {
12
+ if (__propIsEnum.call(b, prop))
13
+ __defNormalProp(a, prop, b[prop]);
14
+ }
15
+ return a;
16
+ };
1
17
  import * as React from "react";
2
18
  import { useEffect, useMemo, useRef, useState } from "react";
3
19
  import { useVirtual } from "react-virtual";
@@ -6,6 +22,7 @@ import { useRowFlattenization } from "./useRowFlattenization";
6
22
  import { usePaginationConfig } from "./usePaginationConfig";
7
23
  import { useTableColsWithAddons } from "./useTableColsWithAddons";
8
24
  import { ColsLayoutStyle } from "./constants";
25
+ import { useInternalStateConfig } from "./useInternalStateConfig";
9
26
  const useDatatableConfig = (props) => {
10
27
  const virtualListRef = useRef(null);
11
28
  const columnHeaderRef = useRef(null);
@@ -29,13 +46,17 @@ const useDatatableConfig = (props) => {
29
46
  if (dataLength !== (paginatedData || flattenedData).length)
30
47
  setDataLength((paginatedData || flattenedData).length);
31
48
  const [gridLayout, setGridLayout] = useState(columnsToGrid(visibleColumns, props.colsLayoutStyle));
49
+ useEffect(() => {
50
+ setGridLayout(columnsToGrid(visibleColumns, props.colsLayoutStyle));
51
+ }, [visibleColumns, props.colsLayoutStyle]);
32
52
  const totalColumnsWidth = useMemo(() => props.colsLayoutStyle === ColsLayoutStyle.Fixed ? gridLayout.reduce((acc, cur) => acc + Number.parseInt(cur, 10), 0) : "100%", [props.colsLayoutStyle, gridLayout]);
33
53
  const layoutHelpers = useMemo(() => ({
34
54
  gridLayout,
35
55
  setGridLayout,
36
56
  totalColumnsWidth
37
57
  }), [gridLayout, setGridLayout, totalColumnsWidth]);
38
- const ctx = useMemo(() => ({
58
+ const internalState = useInternalStateConfig();
59
+ const ctx = useMemo(() => __spreadValues({
39
60
  tableProps: props,
40
61
  layoutHelpers,
41
62
  paginationHelpers,
@@ -45,7 +66,7 @@ const useDatatableConfig = (props) => {
45
66
  allDataFlattened,
46
67
  virtualListRef,
47
68
  columnHeaderRef
48
- }), [
69
+ }, internalState), [
49
70
  props,
50
71
  layoutHelpers,
51
72
  paginationHelpers,
@@ -55,7 +76,8 @@ const useDatatableConfig = (props) => {
55
76
  flattenedData,
56
77
  allDataFlattened,
57
78
  virtualListRef,
58
- columnHeaderRef
79
+ columnHeaderRef,
80
+ internalState
59
81
  ]);
60
82
  return ctx;
61
83
  };
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../../src/configs/useDatatableConfig.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "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"],
5
- "mappings": "AAAA;ACAA;AACA;AACA;AAEA;AACA;AACA;AACA;AAEO,MAAM,qBAAqB,CAAC,UAA8C;AAC/E,QAAM,iBAAiB,OAAuB;AAC9C,QAAM,kBAAkB,OAAuB;AAK/C,QAAM,sBAAsB,uBAAuB;AAEnD,QAAM,iBAAiB,QACrB,MAAM,oBAAoB,OAAO,CAAC,QAA0B,CAAC,MAAM,cAAc,SAAS,IAAI,YAC9F,CAAC,MAAM,eAAe;AAOxB,QAAM,CAAC,YAAY,iBAAiB,SAAS;AAI7C,QAAM,qBAAqB,WAAW;AAAA,IACpC,MAAM;AAAA,IACN,WAAW;AAAA,IACX,UAAU;AAAA,IACV,cAAc,gBAAgB,SAAS,yBAAyB,UAAU;AAAA;AAM5E,YAAU,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,qBAAqB;AAE/D,QAAM,CAAC,eAAe,qBAAqB,oBAAoB,OAAO;AAGtE,MAAI,eAAgB,kBAAiB,eAAe;AAAQ,kBAAe,kBAAiB,eAAe;AAM3G,QAAM,CAAC,YAAY,iBAAiB,SAAS,cAAc,gBAAgB,MAAM;AAEjF,QAAM,oBAAoB,QACxB,MACE,MAAM,oBAAoB,gBAAgB,QACtC,WAAW,OAAO,CAAC,KAAa,QAAgB,MAAM,OAAO,SAAS,KAAK,KAAK,KAChF,QACN,CAAC,MAAM,iBAAiB;AAG1B,QAAM,gBAAgB,QACpB,MAAO;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,MAEF,CAAC,YAAY,eAAe;AAG9B,QAAM,MAAM,QACV,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;",
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "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';\nimport { useInternalStateConfig } from './useInternalStateConfig';\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 // We need to listen and update the state based on this props\n useEffect(() => {\n setGridLayout(columnsToGrid(visibleColumns, props.colsLayoutStyle));\n }, [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 // ===========================================================================\n // Internal state config\n // ===========================================================================\n\n const internalState = useInternalStateConfig();\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 ...internalState,\n }),\n [\n props,\n layoutHelpers,\n paginationHelpers,\n visibleColumns,\n virtualListHelpers,\n paginatedData,\n flattenedData,\n allDataFlattened,\n virtualListRef,\n columnHeaderRef,\n internalState,\n ],\n );\n\n return ctx;\n};\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;AAAA;ACAA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AAEO,MAAM,qBAAqB,CAAC,UAA8C;AAC/E,QAAM,iBAAiB,OAAuB,IAAI;AAClD,QAAM,kBAAkB,OAAuB,IAAI;AAKnD,QAAM,sBAAsB,uBAAuB,KAAK;AAExD,QAAM,iBAAiB,QACrB,MAAM,oBAAoB,OAAO,CAAC,QAA0B,CAAC,MAAM,cAAc,SAAS,IAAI,QAAQ,CAAC,GACvG,CAAC,MAAM,eAAe,mBAAmB,CAC3C;AAMA,QAAM,CAAC,YAAY,iBAAiB,SAAS,CAAC;AAI9C,QAAM,qBAAqB,WAAW;AAAA,IACpC,MAAM;AAAA,IACN,WAAW;AAAA,IACX,UAAU;AAAA,IACV,cAAc,gBAAgB,SAAS,sBAAsB,GAAG,UAAU;AAAA,EAC5E,CAAC;AAKD,YAAU,MAAM;AACd,QAAI,MAAM,WAAW;AACnB,YAAM,UAAU,QAAQ,gBAAgB,mBAAmB;AAC3D,YAAM,UAAU,QAAQ,iBAAiB,mBAAmB;AAAA,IAC9D;AAAA,EACF,GAAG,CAAC,MAAM,WAAW,mBAAmB,eAAe,mBAAmB,cAAc,CAAC;AAMzF,QAAM,CAAC,eAAe,oBAAoB,qBAAqB,KAAK;AAEpE,QAAM,CAAC,eAAe,qBAAqB,oBAAoB,OAAO,aAAa;AAGnF,MAAI,eAAgB,kBAAiB,eAAe;AAAQ,kBAAe,kBAAiB,eAAe,MAAM;AAMjH,QAAM,CAAC,YAAY,iBAAiB,SAAS,cAAc,gBAAgB,MAAM,eAAe,CAAC;AAGjG,YAAU,MAAM;AACd,kBAAc,cAAc,gBAAgB,MAAM,eAAe,CAAC;AAAA,EACpE,GAAG,CAAC,gBAAgB,MAAM,eAAe,CAAC;AAE1C,QAAM,oBAAoB,QACxB,MACE,MAAM,oBAAoB,gBAAgB,QACtC,WAAW,OAAO,CAAC,KAAa,QAAgB,MAAM,OAAO,SAAS,KAAK,EAAE,GAAG,CAAC,IACjF,QACN,CAAC,MAAM,iBAAiB,UAAU,CACpC;AAEA,QAAM,gBAAgB,QACpB,MAAO;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,EACF,IACA,CAAC,YAAY,eAAe,iBAAiB,CAC/C;AAMA,QAAM,gBAAgB,uBAAuB;AAE7C,QAAM,MAAM,QACV,MAAO;AAAA,IACL,YAAY;AAAA,IACZ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,eAAe,iBAAiB;AAAA,IAChC;AAAA,IACA;AAAA,IACA;AAAA,KACG,gBAEL;AAAA,IACE;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,CACF;AAEA,SAAO;AACT;",
6
6
  "names": []
7
7
  }
@@ -0,0 +1,55 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
3
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
4
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
5
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
6
+ var __spreadValues = (a, b) => {
7
+ for (var prop in b || (b = {}))
8
+ if (__hasOwnProp.call(b, prop))
9
+ __defNormalProp(a, prop, b[prop]);
10
+ if (__getOwnPropSymbols)
11
+ for (var prop of __getOwnPropSymbols(b)) {
12
+ if (__propIsEnum.call(b, prop))
13
+ __defNormalProp(a, prop, b[prop]);
14
+ }
15
+ return a;
16
+ };
17
+ import * as React from "react";
18
+ import { useCallback, useMemo, useState } from "react";
19
+ const useInternalStateConfig = () => {
20
+ const [drilldownRowId, setDrilldownRowId] = useState(null);
21
+ const [focusedRowId, setFocusedRowId] = useState(null);
22
+ const [reduxHeaders, setReduxHeaders] = useState({});
23
+ const patchHeader = useCallback((headerId, newHeader) => {
24
+ setReduxHeaders((prevReduxHeaders) => {
25
+ const nextReduxHeaders = __spreadValues({}, prevReduxHeaders);
26
+ nextReduxHeaders[headerId] = __spreadValues(__spreadValues({}, nextReduxHeaders?.[headerId] ?? {}), newHeader);
27
+ return nextReduxHeaders;
28
+ });
29
+ }, []);
30
+ const patchHeaderFilterButtonAndMenu = useCallback((headerId, value) => {
31
+ const newState = { hideFilterMenu: value, hideFilterButton: value };
32
+ patchHeader(headerId, newState);
33
+ }, []);
34
+ return useMemo(() => ({
35
+ drilldownRowId,
36
+ setDrilldownRowId,
37
+ focusedRowId,
38
+ setFocusedRowId,
39
+ reduxHeaders,
40
+ patchHeader,
41
+ patchHeaderFilterButtonAndMenu
42
+ }), [
43
+ drilldownRowId,
44
+ setDrilldownRowId,
45
+ focusedRowId,
46
+ setFocusedRowId,
47
+ reduxHeaders,
48
+ patchHeader,
49
+ patchHeaderFilterButtonAndMenu
50
+ ]);
51
+ };
52
+ export {
53
+ useInternalStateConfig
54
+ };
55
+ //# sourceMappingURL=useInternalStateConfig.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../../src/configs/useInternalStateConfig.tsx"],
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import { useCallback, useMemo, useState } from 'react';\nimport { ReduxHeader } from '../types/props';\n\nexport const useInternalStateConfig = () => {\n const [drilldownRowId, setDrilldownRowId] = useState<string | null>(null);\n const [focusedRowId, setFocusedRowId] = useState<string | null>(null);\n\n // TODO: @uluduena partition this state better\n const [reduxHeaders, setReduxHeaders] = useState<Record<string, ReduxHeader>>({});\n\n const patchHeader = useCallback((headerId: string, newHeader: Partial<ReduxHeader>) => {\n setReduxHeaders((prevReduxHeaders) => {\n const nextReduxHeaders = { ...prevReduxHeaders };\n nextReduxHeaders[headerId] = { ...(nextReduxHeaders?.[headerId] ?? {}), ...newHeader };\n return nextReduxHeaders;\n });\n }, []);\n\n const patchHeaderFilterButtonAndMenu = useCallback((headerId: string, value: boolean) => {\n const newState = { hideFilterMenu: value, hideFilterButton: value };\n patchHeader(headerId, newState);\n }, []);\n\n return useMemo(\n () => ({\n drilldownRowId,\n setDrilldownRowId,\n focusedRowId,\n setFocusedRowId,\n reduxHeaders,\n patchHeader,\n patchHeaderFilterButtonAndMenu,\n }),\n [\n drilldownRowId,\n setDrilldownRowId,\n focusedRowId,\n setFocusedRowId,\n reduxHeaders,\n patchHeader,\n patchHeaderFilterButtonAndMenu,\n ],\n );\n};\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;AAAA;ACAA;AAGO,MAAM,yBAAyB,MAAM;AAC1C,QAAM,CAAC,gBAAgB,qBAAqB,SAAwB,IAAI;AACxE,QAAM,CAAC,cAAc,mBAAmB,SAAwB,IAAI;AAGpE,QAAM,CAAC,cAAc,mBAAmB,SAAsC,CAAC,CAAC;AAEhF,QAAM,cAAc,YAAY,CAAC,UAAkB,cAAoC;AACrF,oBAAgB,CAAC,qBAAqB;AACpC,YAAM,mBAAmB,mBAAK;AAC9B,uBAAiB,YAAY,kCAAM,mBAAmB,aAAa,CAAC,IAAO;AAC3E,aAAO;AAAA,IACT,CAAC;AAAA,EACH,GAAG,CAAC,CAAC;AAEL,QAAM,iCAAiC,YAAY,CAAC,UAAkB,UAAmB;AACvF,UAAM,WAAW,EAAE,gBAAgB,OAAO,kBAAkB,MAAM;AAClE,gBAAY,UAAU,QAAQ;AAAA,EAChC,GAAG,CAAC,CAAC;AAEL,SAAO,QACL,MAAO;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,IACA;AAAA,IACE;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,CACF;AACF;",
6
+ "names": []
7
+ }
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../../src/configs/usePaginationConfig.tsx"],
4
4
  "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "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"],
5
- "mappings": "AAAA;ACAA;AAGA,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,QAAQ,MAAM;AACzB,QAAI,CAAC;AAAe,aAAO;AAC3B,WAAO,cAAc,MAAO,aAAY,KAAK,UAAU,YAAY;AAAA,KAClE,CAAC,eAAe,WAAW,UAAU;AAExC,QAAM,oBAAoB,QACxB,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;",
5
+ "mappings": "AAAA;ACAA;AAGA,MAAM,eAAsC,CAAC;AAE7C,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,EAAE;AAAA,IACpB,mBAAmB;AAAA,IACnB,iBAAiB;AAAA,IACjB,aAAa;AAAA,IACb,eAAe;AAAA,IACf,YAAY,KAAK,KAAK,cAAc,SAAS,QAAQ;AAAA,IACrD,cAAc;AAAA,IACd,aAAa;AAAA,IACb,aAAa;AAAA,IACb,sBAAsB;AAAA,IACtB,cAAc,CAAC;AAAA,IACf,mBAAmB;AAAA,MACjB,cAAc;AAGlB,QAAM,OAAO,QAAQ,MAAM;AACzB,QAAI,CAAC;AAAe,aAAO;AAC3B,WAAO,cAAc,MAAO,aAAY,KAAK,UAAU,YAAY,QAAQ;AAAA,EAC7E,GAAG,CAAC,eAAe,WAAW,UAAU,aAAa,CAAC;AAEtD,QAAM,oBAAoB,QACxB,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,EACF,IACA;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,EACF,CACF;AACA,SAAO,CAAC,MAAM,iBAAiB;AACjC;",
6
6
  "names": []
7
7
  }
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../../src/configs/useRowFlattenization.tsx"],
4
4
  "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* 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 subRows: row?.subRows ?? [],\n childrenCount: row?.subRows?.length ?? 0,\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"],
5
- "mappings": "AAAA;ACCA;AACA;AAGA,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,2BAA2B,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,SAAS,KAAK,WAAW;AAAA,MACzB,eAAe,KAAK,SAAS,UAAU;AAAA,MACvC,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,QACpB,MAAM,QAAQ,MAAM,cAAc,MAAM,oBACxC,CAAC,MAAM,cAAc,MAAM;AAG7B,QAAM,mBAAmB,QACvB,MAAM,QAAQ,MAAM,cAAc,MAAM,mBAAmB,WAC3D,CAAC,MAAM,MAAM;AAGf,SAAO,CAAC,eAAe;AAAA;",
5
+ "mappings": "AAAA;ACCA;AACA;AAGA,MAAM,cAAc,CAAC;AAErB,MAAM,eAAe,IAAI,MACvB,CAAC,GACD;AAAA,EACE,KAAK,MAAM;AACb,CACF;AAEA,MAAM,UAAU,CACd,MACA,cACA,mBACA,WAAW,MACS;AACpB,QAAM,SAAS,CAAC;AAChB,QAAM,OAAO,CAAC,KAAoB,QAAQ,GAAG,WAAW,MAAM,cAAc,MAAM,QAAQ,MAAM;AAC9F,UAAM,KAAM,YAAW,GAAG,cAAc,MAAM,MAAM,SAAS;AAE7D,UAAM,MAAM,2BAA2B,mBAAmB;AAAA,MACxD;AAAA,MACA,UAAU,OAAO,CAAC;AAAA,IACpB,CAAC;AAED,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,SAAS,KAAK,WAAW,CAAC;AAAA,MAC1B,eAAe,KAAK,SAAS,UAAU;AAAA,MACvC,UAAU,OAAO,CAAC;AAAA,IACpB;AAEA,WAAO,KAAK,SAAS;AAGrB,QAAI,KAAK,WAAW,aAAa,QAAQ,SAAS,UAAU;AAC1D,UAAI,QAAQ,QAAQ,CAAC,QAAuB,MAAc,KAAK,QAAQ,GAAG,KAAK,UAAU,WAAW,QAAQ,CAAC,CAAC;AAAA,IAChH;AAAA,EACF;AAEA,OAAK,QAAQ,CAAC,KAAK,MAAM,KAAK,KAAK,CAAC,CAAC;AACrC,SAAO;AACT;AAEO,MAAM,uBAAuB,CAAC,UAAwE;AAC3G,QAAM,EAAE,SAAS;AAEjB,QAAM,eAAe,MAAM,eAAe,MAAM,eAAe;AAE/D,QAAM,gBAAgB,QACpB,MAAM,QAAQ,MAAM,cAAc,MAAM,iBAAiB,GACzD,CAAC,MAAM,cAAc,MAAM,iBAAiB,CAC9C;AAEA,QAAM,mBAAmB,QACvB,MAAM,QAAQ,MAAM,cAAc,MAAM,mBAAmB,QAAQ,GACnE,CAAC,MAAM,MAAM,iBAAiB,CAChC;AAEA,SAAO,CAAC,eAAe,gBAAgB;AACzC;",
6
6
  "names": []
7
7
  }
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../../src/configs/useTableColsWithAddons.tsx"],
4
4
  "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* 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"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;AAAA;ACCA;AAGA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAUA,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,OACG,SAJE;AAAA,MAKL,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,QAAQ,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,aAAa;AAE1D,SAAO;AAAA,GACN,CAAC,SAAS,cAAc,WAAW,mBAAmB,cAAc,iBAAiB;AAG1F,IAAO,iCAAQ;",
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;AAAA;ACCA;AAGA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAUA,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,CAAC,CAAC;AACxG,WAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,OACG,SAJE;AAAA,MAKL,KAAK,UAA+B;AAAA,IACtC;AAAA,EACF;AACA,SAAO,QAAQ,IAAI,CAAC,KAAK,UAAU,cAAc,KAAK,KAAK,CAAC;AAC9D;AAEA,MAAM,yBAAqD,CAAC;AAAA,EAC1D;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,MAEA,QAAQ,MAAM;AACZ,QAAM,oBAAoB,CAAC,GAAG,eAAe,OAAO,CAAC;AAErD,MAAI;AAAc,sBAAkB,QAAQ,eAAe;AAC3D,MAAI,aAAa,CAAC;AAChB,QAAI;AAAc,wBAAkB,QAAQ,kBAAkB;AAAA;AACzD,wBAAkB,QAAQ,iBAAiB;AAClD,MAAI;AAAiB,sBAAkB,QAAQ,gBAAgB;AAC/D,MAAI;AAAkB,sBAAkB,KAAK,aAAa,gBAAgB,CAAC;AAE3E,SAAO;AACT,GAAG,CAAC,SAAS,cAAc,WAAW,mBAAmB,cAAc,iBAAiB,gBAAgB,CAAC;AAG3G,IAAO,iCAAQ;",
6
6
  "names": []
7
7
  }
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../../src/configs/zIndexInternalConfig.tsx"],
4
4
  "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "export const ZIndexDataTable = {\n ROW: 0,\n EXTERNAL: 0,\n HEADER_ROW: 0,\n ROW_HOVER: 1,\n DROP_INDICATOR: 6,\n FOCUS_BORDER: 7,\n};\n"],
5
- "mappings": "AAAA;ACAO,MAAM,kBAAkB;AAAA,EAC7B,KAAK;AAAA,EACL,UAAU;AAAA,EACV,YAAY;AAAA,EACZ,WAAW;AAAA,EACX,gBAAgB;AAAA,EAChB,cAAc;AAAA;",
5
+ "mappings": "AAAA;ACAO,MAAM,kBAAkB;AAAA,EAC7B,KAAK;AAAA,EACL,UAAU;AAAA,EACV,YAAY;AAAA,EACZ,WAAW;AAAA,EACX,gBAAgB;AAAA,EAChB,cAAc;AAChB;",
6
6
  "names": []
7
7
  }
@@ -4,7 +4,7 @@ import PropTypes from "prop-types";
4
4
  import { StyledPencilIcon, StyledEditableContainer } from "../styled";
5
5
  import { DataTableContext } from "../DataTableContext";
6
6
  const EditableCell = (props) => {
7
- const { StandardRender, EditableRenderer, cell, isRowSelected, setValue } = props;
7
+ const { StandardRender, EditableRenderer, cell, isRowSelected } = props;
8
8
  const { virtualListHelpers } = useContext(DataTableContext);
9
9
  const [isEditing, setIsEditing] = useState(false);
10
10
  const [lastIsEditing, setLastIsEditing] = useState(false);
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../../src/exported-related/EditableCell.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable react/prop-types */\nimport React, { useState, useCallback, useContext, useLayoutEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport { StyledPencilIcon, StyledEditableContainer } from '../styled';\nimport { DataTableContext } from '../DataTableContext';\n\nexport const EditableCell: React.ComponentType<any> = (props) => {\n const { StandardRender, EditableRenderer, cell, isRowSelected, setValue } = props;\n const { virtualListHelpers } = useContext(DataTableContext);\n\n const [isEditing, setIsEditing] = useState(false);\n const [lastIsEditing, setLastIsEditing] = useState(false);\n // When an editable cell is switched on-off, we recalculate the height of the rows\n useLayoutEffect(() => {\n if (isEditing !== lastIsEditing) {\n virtualListHelpers.measure();\n setLastIsEditing(isEditing);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [isEditing]);\n\n const handleCellClick = useCallback(\n (e: React.KeyboardEvent) => {\n if (!isEditing) {\n e.stopPropagation();\n setIsEditing(true);\n }\n },\n [isEditing],\n );\n\n const handleOnKeyDown = useCallback(\n (e: React.KeyboardEvent) => {\n if (isEditing) {\n e.stopPropagation();\n if (['Enter', 'Escape'].includes(e.code)) {\n setIsEditing(false);\n }\n } else if (['Enter', 'Space'].includes(e.code)) {\n handleCellClick(e);\n }\n },\n [isEditing, handleCellClick, setIsEditing],\n );\n\n const handleOnBlur = useCallback(\n (event: EventTarget) => {\n if (isEditing && !event.currentTarget?.contains(event.relatedTarget)) {\n // Not triggered when swapping focus between children\n setIsEditing(false);\n }\n },\n [isEditing],\n );\n const cols = !isEditing ? ['auto', 'min-content'] : ['auto'];\n return (\n <StyledEditableContainer\n cols={cols}\n tabIndex={isRowSelected && !isEditing ? 0 : -1}\n ref={cell.ref}\n onClick={handleCellClick}\n onKeyDown={handleOnKeyDown}\n onBlur={handleOnBlur}\n shouldDisplayEditIcon={cell.column.alwaysDisplayEditIcon}\n role=\"cell\"\n aria-labelledby={isEditing ? undefined : cell.id}\n >\n {!isEditing ? StandardRender : EditableRenderer}\n {!isEditing && <StyledPencilIcon />}\n <span id={cell.id} style={{ display: 'none' }} aria-hidden=\"true\">\n {cell.value}, editable cell. To edit the content&apos;s of this cell, press the Enter key\n </span>\n </StyledEditableContainer>\n );\n};\n\nEditableCell.propTypes = {\n StandardRender: PropTypes.oneOfType([PropTypes.func, PropTypes.object]).isRequired,\n EditableRenderer: PropTypes.oneOfType([PropTypes.func, PropTypes.object]).isRequired,\n cell: PropTypes.object.isRequired,\n};\n"],
5
- "mappings": "AAAA;ACCA;AACA;AACA;AACA;AAEO,MAAM,eAAyC,CAAC,UAAU;AAC/D,QAAM,EAAE,gBAAgB,kBAAkB,MAAM,eAAe,aAAa;AAC5E,QAAM,EAAE,uBAAuB,WAAW;AAE1C,QAAM,CAAC,WAAW,gBAAgB,SAAS;AAC3C,QAAM,CAAC,eAAe,oBAAoB,SAAS;AAEnD,kBAAgB,MAAM;AACpB,QAAI,cAAc,eAAe;AAC/B,yBAAmB;AACnB,uBAAiB;AAAA;AAAA,KAGlB,CAAC;AAEJ,QAAM,kBAAkB,YACtB,CAAC,MAA2B;AAC1B,QAAI,CAAC,WAAW;AACd,QAAE;AACF,mBAAa;AAAA;AAAA,KAGjB,CAAC;AAGH,QAAM,kBAAkB,YACtB,CAAC,MAA2B;AAC1B,QAAI,WAAW;AACb,QAAE;AACF,UAAI,CAAC,SAAS,UAAU,SAAS,EAAE,OAAO;AACxC,qBAAa;AAAA;AAAA,eAEN,CAAC,SAAS,SAAS,SAAS,EAAE,OAAO;AAC9C,sBAAgB;AAAA;AAAA,KAGpB,CAAC,WAAW,iBAAiB;AAG/B,QAAM,eAAe,YACnB,CAAC,UAAuB;AACtB,QAAI,aAAa,CAAC,MAAM,eAAe,SAAS,MAAM,gBAAgB;AAEpE,mBAAa;AAAA;AAAA,KAGjB,CAAC;AAEH,QAAM,OAAO,CAAC,YAAY,CAAC,QAAQ,iBAAiB,CAAC;AACrD,SACE,qCAAC,yBAAD;AAAA,IACE;AAAA,IACA,UAAU,iBAAiB,CAAC,YAAY,IAAI;AAAA,IAC5C,KAAK,KAAK;AAAA,IACV,SAAS;AAAA,IACT,WAAW;AAAA,IACX,QAAQ;AAAA,IACR,uBAAuB,KAAK,OAAO;AAAA,IACnC,MAAK;AAAA,IACL,mBAAiB,YAAY,SAAY,KAAK;AAAA,KAE7C,CAAC,YAAY,iBAAiB,kBAC9B,CAAC,aAAa,qCAAC,kBAAD,OACf,qCAAC,QAAD;AAAA,IAAM,IAAI,KAAK;AAAA,IAAI,OAAO,EAAE,SAAS;AAAA,IAAU,eAAY;AAAA,KACxD,KAAK,OAAM;AAAA;AAMpB,aAAa,YAAY;AAAA,EACvB,gBAAgB,UAAU,UAAU,CAAC,UAAU,MAAM,UAAU,SAAS;AAAA,EACxE,kBAAkB,UAAU,UAAU,CAAC,UAAU,MAAM,UAAU,SAAS;AAAA,EAC1E,MAAM,UAAU,OAAO;AAAA;",
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable react/prop-types */\nimport React, { useState, useCallback, useContext, useLayoutEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport { StyledPencilIcon, StyledEditableContainer } from '../styled';\nimport { DataTableContext } from '../DataTableContext';\n\nexport const EditableCell: React.ComponentType<any> = (props) => {\n const { StandardRender, EditableRenderer, cell, isRowSelected } = props;\n const { virtualListHelpers } = useContext(DataTableContext);\n\n const [isEditing, setIsEditing] = useState(false);\n const [lastIsEditing, setLastIsEditing] = useState(false);\n // When an editable cell is switched on-off, we recalculate the height of the rows\n useLayoutEffect(() => {\n if (isEditing !== lastIsEditing) {\n virtualListHelpers.measure();\n setLastIsEditing(isEditing);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [isEditing]);\n\n const handleCellClick = useCallback(\n (e: React.KeyboardEvent) => {\n if (!isEditing) {\n e.stopPropagation();\n setIsEditing(true);\n }\n },\n [isEditing],\n );\n\n const handleOnKeyDown = useCallback(\n (e: React.KeyboardEvent) => {\n if (isEditing) {\n e.stopPropagation();\n if (['Enter', 'Escape'].includes(e.code)) {\n setIsEditing(false);\n }\n } else if (['Enter', 'Space'].includes(e.code)) {\n handleCellClick(e);\n }\n },\n [isEditing, handleCellClick, setIsEditing],\n );\n\n const handleOnBlur = useCallback(\n (event: EventTarget) => {\n if (isEditing && !event.currentTarget?.contains(event.relatedTarget)) {\n // Not triggered when swapping focus between children\n setIsEditing(false);\n }\n },\n [isEditing],\n );\n const cols = !isEditing ? ['auto', 'min-content'] : ['auto'];\n return (\n <StyledEditableContainer\n cols={cols}\n tabIndex={isRowSelected && !isEditing ? 0 : -1}\n ref={cell.ref}\n onClick={handleCellClick}\n onKeyDown={handleOnKeyDown}\n onBlur={handleOnBlur}\n shouldDisplayEditIcon={cell.column.alwaysDisplayEditIcon}\n role=\"cell\"\n aria-labelledby={isEditing ? undefined : cell.id}\n >\n {!isEditing ? StandardRender : EditableRenderer}\n {!isEditing && <StyledPencilIcon />}\n <span id={cell.id} style={{ display: 'none' }} aria-hidden=\"true\">\n {cell.value}, editable cell. To edit the content&apos;s of this cell, press the Enter key\n </span>\n </StyledEditableContainer>\n );\n};\n\nEditableCell.propTypes = {\n StandardRender: PropTypes.oneOfType([PropTypes.func, PropTypes.object]).isRequired,\n EditableRenderer: PropTypes.oneOfType([PropTypes.func, PropTypes.object]).isRequired,\n cell: PropTypes.object.isRequired,\n};\n"],
5
+ "mappings": "AAAA;ACCA;AACA;AACA;AACA;AAEO,MAAM,eAAyC,CAAC,UAAU;AAC/D,QAAM,EAAE,gBAAgB,kBAAkB,MAAM,kBAAkB;AAClE,QAAM,EAAE,uBAAuB,WAAW,gBAAgB;AAE1D,QAAM,CAAC,WAAW,gBAAgB,SAAS,KAAK;AAChD,QAAM,CAAC,eAAe,oBAAoB,SAAS,KAAK;AAExD,kBAAgB,MAAM;AACpB,QAAI,cAAc,eAAe;AAC/B,yBAAmB,QAAQ;AAC3B,uBAAiB,SAAS;AAAA,IAC5B;AAAA,EAEF,GAAG,CAAC,SAAS,CAAC;AAEd,QAAM,kBAAkB,YACtB,CAAC,MAA2B;AAC1B,QAAI,CAAC,WAAW;AACd,QAAE,gBAAgB;AAClB,mBAAa,IAAI;AAAA,IACnB;AAAA,EACF,GACA,CAAC,SAAS,CACZ;AAEA,QAAM,kBAAkB,YACtB,CAAC,MAA2B;AAC1B,QAAI,WAAW;AACb,QAAE,gBAAgB;AAClB,UAAI,CAAC,SAAS,QAAQ,EAAE,SAAS,EAAE,IAAI,GAAG;AACxC,qBAAa,KAAK;AAAA,MACpB;AAAA,IACF,WAAW,CAAC,SAAS,OAAO,EAAE,SAAS,EAAE,IAAI,GAAG;AAC9C,sBAAgB,CAAC;AAAA,IACnB;AAAA,EACF,GACA,CAAC,WAAW,iBAAiB,YAAY,CAC3C;AAEA,QAAM,eAAe,YACnB,CAAC,UAAuB;AACtB,QAAI,aAAa,CAAC,MAAM,eAAe,SAAS,MAAM,aAAa,GAAG;AAEpE,mBAAa,KAAK;AAAA,IACpB;AAAA,EACF,GACA,CAAC,SAAS,CACZ;AACA,QAAM,OAAO,CAAC,YAAY,CAAC,QAAQ,aAAa,IAAI,CAAC,MAAM;AAC3D,SACE,qCAAC;AAAA,IACC;AAAA,IACA,UAAU,iBAAiB,CAAC,YAAY,IAAI;AAAA,IAC5C,KAAK,KAAK;AAAA,IACV,SAAS;AAAA,IACT,WAAW;AAAA,IACX,QAAQ;AAAA,IACR,uBAAuB,KAAK,OAAO;AAAA,IACnC,MAAK;AAAA,IACL,mBAAiB,YAAY,SAAY,KAAK;AAAA,KAE7C,CAAC,YAAY,iBAAiB,kBAC9B,CAAC,aAAa,qCAAC,sBAAiB,GACjC,qCAAC;AAAA,IAAK,IAAI,KAAK;AAAA,IAAI,OAAO,EAAE,SAAS,OAAO;AAAA,IAAG,eAAY;AAAA,KACxD,KAAK,OAAM,0EACd,CACF;AAEJ;AAEA,aAAa,YAAY;AAAA,EACvB,gBAAgB,UAAU,UAAU,CAAC,UAAU,MAAM,UAAU,MAAM,CAAC,EAAE;AAAA,EACxE,kBAAkB,UAAU,UAAU,CAAC,UAAU,MAAM,UAAU,MAAM,CAAC,EAAE;AAAA,EAC1E,MAAM,UAAU,OAAO;AACzB;",
6
6
  "names": []
7
7
  }