@elliemae/ds-data-table 2.2.0 → 2.3.0-alpha.3

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 (560) hide show
  1. package/cjs/DataTable.js +63 -57
  2. package/cjs/DataTable.js.map +7 -0
  3. package/cjs/DataTableContext.js +52 -26
  4. package/cjs/DataTableContext.js.map +7 -0
  5. package/cjs/DataTableSchema.js +151 -113
  6. package/cjs/DataTableSchema.js.map +7 -0
  7. package/cjs/addons/Columns/ColumnAction/ColumnAction.js +40 -14
  8. package/cjs/addons/Columns/ColumnAction/ColumnAction.js.map +7 -0
  9. package/cjs/addons/Columns/ColumnDragHandle/ColumnDragHandle.js +52 -52
  10. package/cjs/addons/Columns/ColumnDragHandle/ColumnDragHandle.js.map +7 -0
  11. package/cjs/addons/Columns/ColumnExpand/ColumnExpand.js +124 -154
  12. package/cjs/addons/Columns/ColumnExpand/ColumnExpand.js.map +7 -0
  13. package/cjs/addons/Columns/ColumnSelectMultiple/ColumnSelectMultiple.js +63 -105
  14. package/cjs/addons/Columns/ColumnSelectMultiple/ColumnSelectMultiple.js.map +7 -0
  15. package/cjs/addons/Columns/ColumnSelectSingle/ColumnSelectSingle.js +62 -81
  16. package/cjs/addons/Columns/ColumnSelectSingle/ColumnSelectSingle.js.map +7 -0
  17. package/cjs/addons/Columns/index.js +51 -18
  18. package/cjs/addons/Columns/index.js.map +7 -0
  19. package/cjs/addons/Editables/ComboboxEditableCell/ComboboxEditableCell.js +57 -85
  20. package/cjs/addons/Editables/ComboboxEditableCell/ComboboxEditableCell.js.map +7 -0
  21. package/cjs/addons/Editables/DateEditableCell/DateEditableCell.js +51 -73
  22. package/cjs/addons/Editables/DateEditableCell/DateEditableCell.js.map +7 -0
  23. package/cjs/addons/Editables/TextEditableCell/TextEditableCell.js +67 -88
  24. package/cjs/addons/Editables/TextEditableCell/TextEditableCell.js.map +7 -0
  25. package/cjs/addons/Editables/index.js +39 -14
  26. package/cjs/addons/Editables/index.js.map +7 -0
  27. package/cjs/addons/Filters/Components/CurrencyRangeFilter/index.js +87 -137
  28. package/cjs/addons/Filters/Components/CurrencyRangeFilter/index.js.map +7 -0
  29. package/cjs/addons/Filters/Components/DateRangeFilter/index.js +64 -88
  30. package/cjs/addons/Filters/Components/DateRangeFilter/index.js.map +7 -0
  31. package/cjs/addons/Filters/Components/DateSwitcherFilter/index.js +72 -97
  32. package/cjs/addons/Filters/Components/DateSwitcherFilter/index.js.map +7 -0
  33. package/cjs/addons/Filters/Components/NumberRangeFilter/index.js +89 -141
  34. package/cjs/addons/Filters/Components/NumberRangeFilter/index.js.map +7 -0
  35. package/cjs/addons/Filters/Components/SelectFilter/BaseSelectFilter.js +68 -117
  36. package/cjs/addons/Filters/Components/SelectFilter/BaseSelectFilter.js.map +7 -0
  37. package/cjs/addons/Filters/Components/SelectFilter/MultiSelectFilter.js +59 -75
  38. package/cjs/addons/Filters/Components/SelectFilter/MultiSelectFilter.js.map +7 -0
  39. package/cjs/addons/Filters/Components/SelectFilter/SingleSelectFilter.js +59 -75
  40. package/cjs/addons/Filters/Components/SelectFilter/SingleSelectFilter.js.map +7 -0
  41. package/cjs/addons/Filters/Components/SelectFilter/components.js +86 -36
  42. package/cjs/addons/Filters/Components/SelectFilter/components.js.map +7 -0
  43. package/cjs/addons/Filters/Components/SelectFilter/useSelectFilterHandlers.js +67 -57
  44. package/cjs/addons/Filters/Components/SelectFilter/useSelectFilterHandlers.js.map +7 -0
  45. package/cjs/addons/Filters/Components/SelectFilter/utils.js +40 -46
  46. package/cjs/addons/Filters/Components/SelectFilter/utils.js.map +7 -0
  47. package/cjs/addons/Filters/Components/SingleDateFilter/index.js +64 -80
  48. package/cjs/addons/Filters/Components/SingleDateFilter/index.js.map +7 -0
  49. package/cjs/addons/Filters/Components/index.js +34 -21
  50. package/cjs/addons/Filters/Components/index.js.map +7 -0
  51. package/cjs/addons/Filters/index.js +28 -21
  52. package/cjs/addons/Filters/index.js.map +7 -0
  53. package/cjs/addons/Pagination/Pagination.js +45 -37
  54. package/cjs/addons/Pagination/Pagination.js.map +7 -0
  55. package/cjs/addons/Pagination/index.js +35 -9
  56. package/cjs/addons/Pagination/index.js.map +7 -0
  57. package/cjs/configs/constants.js +74 -47
  58. package/cjs/configs/constants.js.map +7 -0
  59. package/cjs/configs/fixedSizes.js +34 -6
  60. package/cjs/configs/fixedSizes.js.map +7 -0
  61. package/cjs/configs/index.js +32 -22
  62. package/cjs/configs/index.js.map +7 -0
  63. package/cjs/configs/useDatatableConfig.js +72 -59
  64. package/cjs/configs/useDatatableConfig.js.map +7 -0
  65. package/cjs/configs/usePaginationConfig.js +61 -23
  66. package/cjs/configs/usePaginationConfig.js.map +7 -0
  67. package/cjs/configs/useRowFlattenization.js +50 -36
  68. package/cjs/configs/useRowFlattenization.js.map +7 -0
  69. package/cjs/configs/useTableColsWithAddons.js +75 -62
  70. package/cjs/configs/useTableColsWithAddons.js.map +7 -0
  71. package/cjs/configs/zIndexInternalConfig.js +34 -6
  72. package/cjs/configs/zIndexInternalConfig.js.map +7 -0
  73. package/cjs/exported-related/EditableCell.js +64 -54
  74. package/cjs/exported-related/EditableCell.js.map +7 -0
  75. package/cjs/exported-related/FilterPopover.js +103 -137
  76. package/cjs/exported-related/FilterPopover.js.map +7 -0
  77. package/cjs/exported-related/FilterTypes.js +42 -14
  78. package/cjs/exported-related/FilterTypes.js.map +7 -0
  79. package/cjs/exported-related/Filters/applyOutOfTheBoxFilters.js +50 -27
  80. package/cjs/exported-related/Filters/applyOutOfTheBoxFilters.js.map +7 -0
  81. package/cjs/exported-related/Filters/currencyRangeFilterFn.js +44 -19
  82. package/cjs/exported-related/Filters/currencyRangeFilterFn.js.map +7 -0
  83. package/cjs/exported-related/Filters/dateRangeFilterFn.js +37 -45
  84. package/cjs/exported-related/Filters/dateRangeFilterFn.js.map +7 -0
  85. package/cjs/exported-related/Filters/dateSwitcherFilterFn.js +37 -12
  86. package/cjs/exported-related/Filters/dateSwitcherFilterFn.js.map +7 -0
  87. package/cjs/exported-related/Filters/index.js +34 -21
  88. package/cjs/exported-related/Filters/index.js.map +7 -0
  89. package/cjs/exported-related/Filters/multiSelectFilterFn.js +35 -14
  90. package/cjs/exported-related/Filters/multiSelectFilterFn.js.map +7 -0
  91. package/cjs/exported-related/Filters/numberRangeFilterFn.js +36 -13
  92. package/cjs/exported-related/Filters/numberRangeFilterFn.js.map +7 -0
  93. package/cjs/exported-related/Filters/singleDateFilterFn.js +37 -45
  94. package/cjs/exported-related/Filters/singleDateFilterFn.js.map +7 -0
  95. package/cjs/exported-related/Filters/singleSelectFilterFn.js +35 -12
  96. package/cjs/exported-related/Filters/singleSelectFilterFn.js.map +7 -0
  97. package/cjs/exported-related/Filters/types.js +27 -2
  98. package/cjs/exported-related/Filters/types.js.map +7 -0
  99. package/cjs/exported-related/RowRenderer/DefaultRowContentRenderer.js +107 -109
  100. package/cjs/exported-related/RowRenderer/DefaultRowContentRenderer.js.map +7 -0
  101. package/cjs/exported-related/RowRenderer/index.js +77 -95
  102. package/cjs/exported-related/RowRenderer/index.js.map +7 -0
  103. package/cjs/exported-related/RowRenderer/useRowRendererHandlers.js +71 -100
  104. package/cjs/exported-related/RowRenderer/useRowRendererHandlers.js.map +7 -0
  105. package/cjs/exported-related/RowRenderer/useRowRendererProperties.js +51 -42
  106. package/cjs/exported-related/RowRenderer/useRowRendererProperties.js.map +7 -0
  107. package/cjs/exported-related/RowRenderer/useRowStyle.js +47 -35
  108. package/cjs/exported-related/RowRenderer/useRowStyle.js.map +7 -0
  109. package/cjs/exported-related/RowVariants.js +43 -15
  110. package/cjs/exported-related/RowVariants.js.map +7 -0
  111. package/cjs/exported-related/Toolbar/Toolbar.js +103 -80
  112. package/cjs/exported-related/Toolbar/Toolbar.js.map +7 -0
  113. package/cjs/exported-related/Toolbar/index.js +35 -9
  114. package/cjs/exported-related/Toolbar/index.js.map +7 -0
  115. package/cjs/exported-related/groupBy.js +43 -25
  116. package/cjs/exported-related/groupBy.js.map +7 -0
  117. package/cjs/exported-related/index.js +44 -35
  118. package/cjs/exported-related/index.js.map +7 -0
  119. package/cjs/helpers/addCellData.js +43 -32
  120. package/cjs/helpers/addCellData.js.map +7 -0
  121. package/cjs/helpers/cellPadding.js +44 -27
  122. package/cjs/helpers/cellPadding.js.map +7 -0
  123. package/cjs/helpers/columnsToGrid.js +41 -17
  124. package/cjs/helpers/columnsToGrid.js.map +7 -0
  125. package/cjs/helpers/getIdFromUniqueRowAccessor.js +38 -20
  126. package/cjs/helpers/getIdFromUniqueRowAccessor.js.map +7 -0
  127. package/cjs/helpers/index.js +33 -20
  128. package/cjs/helpers/index.js.map +7 -0
  129. package/cjs/helpers/refs-helpers.js +41 -22
  130. package/cjs/helpers/refs-helpers.js.map +7 -0
  131. package/cjs/helpers/sizeToCss.js +35 -7
  132. package/cjs/helpers/sizeToCss.js.map +7 -0
  133. package/cjs/hooks/useRecoverFocusCol.js +41 -21
  134. package/cjs/hooks/useRecoverFocusCol.js.map +7 -0
  135. package/cjs/hooks/useRecoverFocusRow.js +37 -14
  136. package/cjs/hooks/useRecoverFocusRow.js.map +7 -0
  137. package/cjs/index.js +29 -38
  138. package/cjs/index.js.map +7 -0
  139. package/cjs/parts/Cells/Cell.js +95 -105
  140. package/cjs/parts/Cells/Cell.js.map +7 -0
  141. package/cjs/parts/Cells/index.js +83 -76
  142. package/cjs/parts/Cells/index.js.map +7 -0
  143. package/cjs/parts/Cells/useCellStyle.js +47 -27
  144. package/cjs/parts/Cells/useCellStyle.js.map +7 -0
  145. package/cjs/parts/DnDHandle.js +61 -73
  146. package/cjs/parts/DnDHandle.js.map +7 -0
  147. package/cjs/parts/DropIndicator.js +77 -68
  148. package/cjs/parts/DropIndicator.js.map +7 -0
  149. package/cjs/parts/EmptyContent.js +93 -58
  150. package/cjs/parts/EmptyContent.js.map +7 -0
  151. package/cjs/parts/FilterBar/FiltersBar.js +82 -115
  152. package/cjs/parts/FilterBar/FiltersBar.js.map +7 -0
  153. package/cjs/parts/FilterBar/components/DateRangePill.js +57 -40
  154. package/cjs/parts/FilterBar/components/DateRangePill.js.map +7 -0
  155. package/cjs/parts/FilterBar/components/DateSwitcherPill.js +57 -40
  156. package/cjs/parts/FilterBar/components/DateSwitcherPill.js.map +7 -0
  157. package/cjs/parts/FilterBar/components/MultiSelectPill.js +57 -42
  158. package/cjs/parts/FilterBar/components/MultiSelectPill.js.map +7 -0
  159. package/cjs/parts/FilterBar/components/NumberRangePill.js +56 -39
  160. package/cjs/parts/FilterBar/components/NumberRangePill.js.map +7 -0
  161. package/cjs/parts/FilterBar/components/SelectPill.js +55 -36
  162. package/cjs/parts/FilterBar/components/SelectPill.js.map +7 -0
  163. package/cjs/parts/FilterBar/components/SingleDatePill.js +56 -38
  164. package/cjs/parts/FilterBar/components/SingleDatePill.js.map +7 -0
  165. package/cjs/parts/FilterBar/components/index.js +33 -19
  166. package/cjs/parts/FilterBar/components/index.js.map +7 -0
  167. package/cjs/parts/FilterBar/index.js +35 -9
  168. package/cjs/parts/FilterBar/index.js.map +7 -0
  169. package/cjs/parts/FilterBar/styled.js +49 -23
  170. package/cjs/parts/FilterBar/styled.js.map +7 -0
  171. package/cjs/parts/FilterBar/types.js +27 -2
  172. package/cjs/parts/FilterBar/types.js.map +7 -0
  173. package/cjs/parts/Filters/index.js +69 -108
  174. package/cjs/parts/Filters/index.js.map +7 -0
  175. package/cjs/parts/Footer.js +39 -21
  176. package/cjs/parts/Footer.js.map +7 -0
  177. package/cjs/parts/Headers/EmptyChildrenGroup.js +42 -20
  178. package/cjs/parts/Headers/EmptyChildrenGroup.js.map +7 -0
  179. package/cjs/parts/Headers/HeaderCell.js +114 -159
  180. package/cjs/parts/Headers/HeaderCell.js.map +7 -0
  181. package/cjs/parts/Headers/HeaderCellGroup.js +94 -93
  182. package/cjs/parts/Headers/HeaderCellGroup.js.map +7 -0
  183. package/cjs/parts/Headers/HeaderCellTitle.js +50 -77
  184. package/cjs/parts/Headers/HeaderCellTitle.js.map +7 -0
  185. package/cjs/parts/Headers/HeaderResizer.js +74 -94
  186. package/cjs/parts/Headers/HeaderResizer.js.map +7 -0
  187. package/cjs/parts/Headers/RequiredDot.js +39 -21
  188. package/cjs/parts/Headers/RequiredDot.js.map +7 -0
  189. package/cjs/parts/Headers/index.js +58 -42
  190. package/cjs/parts/Headers/index.js.map +7 -0
  191. package/cjs/parts/Headers/useHeaderCellConfig.js +48 -25
  192. package/cjs/parts/Headers/useHeaderCellConfig.js.map +7 -0
  193. package/cjs/parts/Headers/useHeaderCellHandlers.js +87 -76
  194. package/cjs/parts/Headers/useHeaderCellHandlers.js.map +7 -0
  195. package/cjs/parts/HoC/SortableItemContext.js +44 -19
  196. package/cjs/parts/HoC/SortableItemContext.js.map +7 -0
  197. package/cjs/parts/HoC/withConditionalDnDColumnContext.js +86 -101
  198. package/cjs/parts/HoC/withConditionalDnDColumnContext.js.map +7 -0
  199. package/cjs/parts/HoC/withConditionalDnDRowContext.js +90 -93
  200. package/cjs/parts/HoC/withConditionalDnDRowContext.js.map +7 -0
  201. package/cjs/parts/HoC/withConditionalDnDSortableContext.js +50 -43
  202. package/cjs/parts/HoC/withConditionalDnDSortableContext.js.map +7 -0
  203. package/cjs/parts/HoC/withDnDSortableColumnContext.js +60 -58
  204. package/cjs/parts/HoC/withDnDSortableColumnContext.js.map +7 -0
  205. package/cjs/parts/HoC/withDnDSortableRowContext.js +59 -59
  206. package/cjs/parts/HoC/withDnDSortableRowContext.js.map +7 -0
  207. package/cjs/parts/Loader.js +50 -30
  208. package/cjs/parts/Loader.js.map +7 -0
  209. package/cjs/parts/Row.js +64 -59
  210. package/cjs/parts/Row.js.map +7 -0
  211. package/cjs/parts/RowLoading.js +53 -52
  212. package/cjs/parts/RowLoading.js.map +7 -0
  213. package/cjs/parts/RowVariants/RowVariantHeader.js +79 -95
  214. package/cjs/parts/RowVariants/RowVariantHeader.js.map +7 -0
  215. package/cjs/parts/RowVariants/RowVariantPrimary.js +55 -36
  216. package/cjs/parts/RowVariants/RowVariantPrimary.js.map +7 -0
  217. package/cjs/parts/RowVariants/RowVariantSecondary.js +56 -37
  218. package/cjs/parts/RowVariants/RowVariantSecondary.js.map +7 -0
  219. package/cjs/parts/RowVariants/index.js +59 -77
  220. package/cjs/parts/RowVariants/index.js.map +7 -0
  221. package/cjs/parts/RowVariants/types.js +27 -2
  222. package/cjs/parts/RowVariants/types.js.map +7 -0
  223. package/cjs/parts/Rows.js +71 -68
  224. package/cjs/parts/Rows.js.map +7 -0
  225. package/cjs/parts/SortByCaret.js +44 -30
  226. package/cjs/parts/SortByCaret.js.map +7 -0
  227. package/cjs/parts/SortableHeaderCell.js +43 -38
  228. package/cjs/parts/SortableHeaderCell.js.map +7 -0
  229. package/cjs/parts/TableContent.js +68 -84
  230. package/cjs/parts/TableContent.js.map +7 -0
  231. package/cjs/parts/VirtualRowsList.js +74 -89
  232. package/cjs/parts/VirtualRowsList.js.map +7 -0
  233. package/cjs/parts/index.js +45 -19
  234. package/cjs/parts/index.js.map +7 -0
  235. package/cjs/prop-types.js +76 -56
  236. package/cjs/prop-types.js.map +7 -0
  237. package/cjs/redux/reducers/headersReducers/defaults.js +34 -6
  238. package/cjs/redux/reducers/headersReducers/defaults.js.map +7 -0
  239. package/cjs/redux/reducers/headersReducers/headersReducers.js +46 -23
  240. package/cjs/redux/reducers/headersReducers/headersReducers.js.map +7 -0
  241. package/cjs/redux/reducers/headersReducers/index.js +29 -14
  242. package/cjs/redux/reducers/headersReducers/index.js.map +7 -0
  243. package/cjs/redux/reducers/headersReducers/logic.js +42 -33
  244. package/cjs/redux/reducers/headersReducers/logic.js.map +7 -0
  245. package/cjs/redux/reducers/headersReducers/useDispatchHeadersActions.js +40 -19
  246. package/cjs/redux/reducers/headersReducers/useDispatchHeadersActions.js.map +7 -0
  247. package/cjs/redux/reducers/index.js +46 -17
  248. package/cjs/redux/reducers/index.js.map +7 -0
  249. package/cjs/redux/reducers/rowsReducers/actions_types.js +47 -19
  250. package/cjs/redux/reducers/rowsReducers/actions_types.js.map +7 -0
  251. package/cjs/redux/reducers/rowsReducers/defaults.js +35 -7
  252. package/cjs/redux/reducers/rowsReducers/defaults.js.map +7 -0
  253. package/cjs/redux/reducers/rowsReducers/index.js +29 -20
  254. package/cjs/redux/reducers/rowsReducers/index.js.map +7 -0
  255. package/cjs/redux/reducers/rowsReducers/logic.js +41 -14
  256. package/cjs/redux/reducers/rowsReducers/logic.js.map +7 -0
  257. package/cjs/redux/reducers/rowsReducers/rowsReducer.js +58 -41
  258. package/cjs/redux/reducers/rowsReducers/rowsReducer.js.map +7 -0
  259. package/cjs/redux/reducers/rowsReducers/useDispatchRowsActions.js +48 -21
  260. package/cjs/redux/reducers/rowsReducers/useDispatchRowsActions.js.map +7 -0
  261. package/cjs/redux/storeConfig.js +36 -9
  262. package/cjs/redux/storeConfig.js.map +7 -0
  263. package/cjs/styled.js +295 -219
  264. package/cjs/styled.js.map +7 -0
  265. package/cjs/tests/utils/index.js +119 -0
  266. package/cjs/tests/utils/index.js.map +7 -0
  267. package/cjs/types/FunctionalHoC.js +27 -2
  268. package/cjs/types/FunctionalHoC.js.map +7 -0
  269. package/cjs/types/props.js +27 -2
  270. package/cjs/types/props.js.map +7 -0
  271. package/esm/DataTable.js +29 -42
  272. package/esm/DataTable.js.map +7 -0
  273. package/esm/DataTableContext.js +22 -19
  274. package/esm/DataTableContext.js.map +7 -0
  275. package/esm/DataTableSchema.js +110 -97
  276. package/esm/DataTableSchema.js.map +7 -0
  277. package/esm/addons/Columns/ColumnAction/ColumnAction.js +11 -10
  278. package/esm/addons/Columns/ColumnAction/ColumnAction.js.map +7 -0
  279. package/esm/addons/Columns/ColumnDragHandle/ColumnDragHandle.js +22 -43
  280. package/esm/addons/Columns/ColumnDragHandle/ColumnDragHandle.js.map +7 -0
  281. package/esm/addons/Columns/ColumnExpand/ColumnExpand.js +83 -132
  282. package/esm/addons/Columns/ColumnExpand/ColumnExpand.js.map +7 -0
  283. package/esm/addons/Columns/ColumnSelectMultiple/ColumnSelectMultiple.js +30 -92
  284. package/esm/addons/Columns/ColumnSelectMultiple/ColumnSelectMultiple.js.map +7 -0
  285. package/esm/addons/Columns/ColumnSelectSingle/ColumnSelectSingle.js +32 -71
  286. package/esm/addons/Columns/ColumnSelectSingle/ColumnSelectSingle.js.map +7 -0
  287. package/esm/addons/Columns/index.js +22 -9
  288. package/esm/addons/Columns/index.js.map +7 -0
  289. package/esm/addons/Editables/ComboboxEditableCell/ComboboxEditableCell.js +23 -72
  290. package/esm/addons/Editables/ComboboxEditableCell/ComboboxEditableCell.js.map +7 -0
  291. package/esm/addons/Editables/DateEditableCell/DateEditableCell.js +19 -62
  292. package/esm/addons/Editables/DateEditableCell/DateEditableCell.js.map +7 -0
  293. package/esm/addons/Editables/TextEditableCell/TextEditableCell.js +35 -76
  294. package/esm/addons/Editables/TextEditableCell/TextEditableCell.js.map +7 -0
  295. package/esm/addons/Editables/index.js +9 -9
  296. package/esm/addons/Editables/index.js.map +7 -0
  297. package/esm/addons/Filters/Components/CurrencyRangeFilter/index.js +55 -124
  298. package/esm/addons/Filters/Components/CurrencyRangeFilter/index.js.map +7 -0
  299. package/esm/addons/Filters/Components/DateRangeFilter/index.js +33 -77
  300. package/esm/addons/Filters/Components/DateRangeFilter/index.js.map +7 -0
  301. package/esm/addons/Filters/Components/DateSwitcherFilter/index.js +44 -85
  302. package/esm/addons/Filters/Components/DateSwitcherFilter/index.js.map +7 -0
  303. package/esm/addons/Filters/Components/NumberRangeFilter/index.js +57 -128
  304. package/esm/addons/Filters/Components/NumberRangeFilter/index.js.map +7 -0
  305. package/esm/addons/Filters/Components/SelectFilter/BaseSelectFilter.js +35 -105
  306. package/esm/addons/Filters/Components/SelectFilter/BaseSelectFilter.js.map +7 -0
  307. package/esm/addons/Filters/Components/SelectFilter/MultiSelectFilter.js +30 -67
  308. package/esm/addons/Filters/Components/SelectFilter/MultiSelectFilter.js.map +7 -0
  309. package/esm/addons/Filters/Components/SelectFilter/SingleSelectFilter.js +30 -67
  310. package/esm/addons/Filters/Components/SelectFilter/SingleSelectFilter.js.map +7 -0
  311. package/esm/addons/Filters/Components/SelectFilter/components.js +57 -23
  312. package/esm/addons/Filters/Components/SelectFilter/components.js.map +7 -0
  313. package/esm/addons/Filters/Components/SelectFilter/useSelectFilterHandlers.js +38 -53
  314. package/esm/addons/Filters/Components/SelectFilter/useSelectFilterHandlers.js.map +7 -0
  315. package/esm/addons/Filters/Components/SelectFilter/utils.js +11 -41
  316. package/esm/addons/Filters/Components/SelectFilter/utils.js.map +7 -0
  317. package/esm/addons/Filters/Components/SingleDateFilter/index.js +31 -67
  318. package/esm/addons/Filters/Components/SingleDateFilter/index.js.map +7 -0
  319. package/esm/addons/Filters/Components/index.js +9 -7
  320. package/esm/addons/Filters/Components/index.js.map +7 -0
  321. package/esm/addons/Filters/index.js +3 -7
  322. package/esm/addons/Filters/index.js.map +7 -0
  323. package/esm/addons/Pagination/Pagination.js +14 -27
  324. package/esm/addons/Pagination/Pagination.js.map +7 -0
  325. package/esm/addons/Pagination/index.js +6 -1
  326. package/esm/addons/Pagination/index.js.map +7 -0
  327. package/esm/configs/constants.js +45 -42
  328. package/esm/configs/constants.js.map +7 -0
  329. package/esm/configs/fixedSizes.js +5 -2
  330. package/esm/configs/fixedSizes.js.map +7 -0
  331. package/esm/configs/index.js +7 -5
  332. package/esm/configs/index.js.map +7 -0
  333. package/esm/configs/useDatatableConfig.js +35 -47
  334. package/esm/configs/useDatatableConfig.js.map +7 -0
  335. package/esm/configs/usePaginationConfig.js +30 -17
  336. package/esm/configs/usePaginationConfig.js.map +7 -0
  337. package/esm/configs/useRowFlattenization.js +18 -29
  338. package/esm/configs/useRowFlattenization.js.map +7 -0
  339. package/esm/configs/useTableColsWithAddons.js +51 -55
  340. package/esm/configs/useTableColsWithAddons.js.map +7 -0
  341. package/esm/configs/zIndexInternalConfig.js +5 -2
  342. package/esm/configs/zIndexInternalConfig.js.map +7 -0
  343. package/esm/exported-related/EditableCell.js +33 -44
  344. package/esm/exported-related/EditableCell.js.map +7 -0
  345. package/esm/exported-related/FilterPopover.js +70 -122
  346. package/esm/exported-related/FilterPopover.js.map +7 -0
  347. package/esm/exported-related/FilterTypes.js +12 -9
  348. package/esm/exported-related/FilterTypes.js.map +7 -0
  349. package/esm/exported-related/Filters/applyOutOfTheBoxFilters.js +14 -16
  350. package/esm/exported-related/Filters/applyOutOfTheBoxFilters.js.map +7 -0
  351. package/esm/exported-related/Filters/currencyRangeFilterFn.js +15 -15
  352. package/esm/exported-related/Filters/currencyRangeFilterFn.js.map +7 -0
  353. package/esm/exported-related/Filters/dateRangeFilterFn.js +8 -37
  354. package/esm/exported-related/Filters/dateRangeFilterFn.js.map +7 -0
  355. package/esm/exported-related/Filters/dateSwitcherFilterFn.js +7 -7
  356. package/esm/exported-related/Filters/dateSwitcherFilterFn.js.map +7 -0
  357. package/esm/exported-related/Filters/index.js +9 -7
  358. package/esm/exported-related/Filters/index.js.map +7 -0
  359. package/esm/exported-related/Filters/multiSelectFilterFn.js +6 -10
  360. package/esm/exported-related/Filters/multiSelectFilterFn.js.map +7 -0
  361. package/esm/exported-related/Filters/numberRangeFilterFn.js +7 -9
  362. package/esm/exported-related/Filters/numberRangeFilterFn.js.map +7 -0
  363. package/esm/exported-related/Filters/singleDateFilterFn.js +8 -37
  364. package/esm/exported-related/Filters/singleDateFilterFn.js.map +7 -0
  365. package/esm/exported-related/Filters/singleSelectFilterFn.js +6 -8
  366. package/esm/exported-related/Filters/singleSelectFilterFn.js.map +7 -0
  367. package/esm/exported-related/Filters/types.js +2 -1
  368. package/esm/exported-related/Filters/types.js.map +7 -0
  369. package/esm/exported-related/RowRenderer/DefaultRowContentRenderer.js +72 -94
  370. package/esm/exported-related/RowRenderer/DefaultRowContentRenderer.js.map +7 -0
  371. package/esm/exported-related/RowRenderer/index.js +45 -85
  372. package/esm/exported-related/RowRenderer/index.js.map +7 -0
  373. package/esm/exported-related/RowRenderer/useRowRendererHandlers.js +41 -95
  374. package/esm/exported-related/RowRenderer/useRowRendererHandlers.js.map +7 -0
  375. package/esm/exported-related/RowRenderer/useRowRendererProperties.js +19 -31
  376. package/esm/exported-related/RowRenderer/useRowRendererProperties.js.map +7 -0
  377. package/esm/exported-related/RowRenderer/useRowStyle.js +17 -30
  378. package/esm/exported-related/RowRenderer/useRowStyle.js.map +7 -0
  379. package/esm/exported-related/RowVariants.js +14 -9
  380. package/esm/exported-related/RowVariants.js.map +7 -0
  381. package/esm/exported-related/Toolbar/Toolbar.js +68 -64
  382. package/esm/exported-related/Toolbar/Toolbar.js.map +7 -0
  383. package/esm/exported-related/Toolbar/index.js +6 -1
  384. package/esm/exported-related/Toolbar/index.js.map +7 -0
  385. package/esm/exported-related/groupBy.js +14 -21
  386. package/esm/exported-related/groupBy.js.map +7 -0
  387. package/esm/exported-related/index.js +15 -13
  388. package/esm/exported-related/index.js.map +7 -0
  389. package/esm/helpers/addCellData.js +15 -25
  390. package/esm/helpers/addCellData.js.map +7 -0
  391. package/esm/helpers/cellPadding.js +15 -22
  392. package/esm/helpers/cellPadding.js.map +7 -0
  393. package/esm/helpers/columnsToGrid.js +12 -13
  394. package/esm/helpers/columnsToGrid.js.map +7 -0
  395. package/esm/helpers/getIdFromUniqueRowAccessor.js +9 -16
  396. package/esm/helpers/getIdFromUniqueRowAccessor.js.map +7 -0
  397. package/esm/helpers/index.js +8 -6
  398. package/esm/helpers/index.js.map +7 -0
  399. package/esm/helpers/refs-helpers.js +13 -19
  400. package/esm/helpers/refs-helpers.js.map +7 -0
  401. package/esm/helpers/sizeToCss.js +6 -3
  402. package/esm/helpers/sizeToCss.js.map +7 -0
  403. package/esm/hooks/useRecoverFocusCol.js +10 -15
  404. package/esm/hooks/useRecoverFocusCol.js.map +7 -0
  405. package/esm/hooks/useRecoverFocusRow.js +6 -8
  406. package/esm/hooks/useRecoverFocusRow.js.map +7 -0
  407. package/esm/index.js +4 -14
  408. package/esm/index.js.map +7 -0
  409. package/esm/parts/Cells/Cell.js +63 -94
  410. package/esm/parts/Cells/Cell.js.map +7 -0
  411. package/esm/parts/Cells/index.js +54 -70
  412. package/esm/parts/Cells/index.js.map +7 -0
  413. package/esm/parts/Cells/useCellStyle.js +16 -21
  414. package/esm/parts/Cells/useCellStyle.js.map +7 -0
  415. package/esm/parts/DnDHandle.js +32 -65
  416. package/esm/parts/DnDHandle.js.map +7 -0
  417. package/esm/parts/DropIndicator.js +49 -62
  418. package/esm/parts/DropIndicator.js.map +7 -0
  419. package/esm/parts/EmptyContent.js +64 -48
  420. package/esm/parts/EmptyContent.js.map +7 -0
  421. package/esm/parts/FilterBar/FiltersBar.js +49 -94
  422. package/esm/parts/FilterBar/FiltersBar.js.map +7 -0
  423. package/esm/parts/FilterBar/components/DateRangePill.js +27 -31
  424. package/esm/parts/FilterBar/components/DateRangePill.js.map +7 -0
  425. package/esm/parts/FilterBar/components/DateSwitcherPill.js +27 -31
  426. package/esm/parts/FilterBar/components/DateSwitcherPill.js.map +7 -0
  427. package/esm/parts/FilterBar/components/MultiSelectPill.js +28 -34
  428. package/esm/parts/FilterBar/components/MultiSelectPill.js.map +7 -0
  429. package/esm/parts/FilterBar/components/NumberRangePill.js +26 -30
  430. package/esm/parts/FilterBar/components/NumberRangePill.js.map +7 -0
  431. package/esm/parts/FilterBar/components/SelectPill.js +25 -27
  432. package/esm/parts/FilterBar/components/SelectPill.js.map +7 -0
  433. package/esm/parts/FilterBar/components/SingleDatePill.js +26 -29
  434. package/esm/parts/FilterBar/components/SingleDatePill.js.map +7 -0
  435. package/esm/parts/FilterBar/components/index.js +8 -6
  436. package/esm/parts/FilterBar/components/index.js.map +7 -0
  437. package/esm/parts/FilterBar/index.js +6 -1
  438. package/esm/parts/FilterBar/index.js.map +7 -0
  439. package/esm/parts/FilterBar/styled.js +20 -12
  440. package/esm/parts/FilterBar/styled.js.map +7 -0
  441. package/esm/parts/FilterBar/types.js +2 -1
  442. package/esm/parts/FilterBar/types.js.map +7 -0
  443. package/esm/parts/Filters/index.js +40 -92
  444. package/esm/parts/Filters/index.js.map +7 -0
  445. package/esm/parts/Footer.js +10 -15
  446. package/esm/parts/Footer.js.map +7 -0
  447. package/esm/parts/Headers/EmptyChildrenGroup.js +13 -11
  448. package/esm/parts/Headers/EmptyChildrenGroup.js.map +7 -0
  449. package/esm/parts/Headers/HeaderCell.js +77 -141
  450. package/esm/parts/Headers/HeaderCell.js.map +7 -0
  451. package/esm/parts/Headers/HeaderCellGroup.js +64 -82
  452. package/esm/parts/Headers/HeaderCellGroup.js.map +7 -0
  453. package/esm/parts/Headers/HeaderCellTitle.js +22 -70
  454. package/esm/parts/Headers/HeaderCellTitle.js.map +7 -0
  455. package/esm/parts/Headers/HeaderResizer.js +36 -77
  456. package/esm/parts/Headers/HeaderResizer.js.map +7 -0
  457. package/esm/parts/Headers/RequiredDot.js +10 -13
  458. package/esm/parts/Headers/RequiredDot.js.map +7 -0
  459. package/esm/parts/Headers/index.js +28 -35
  460. package/esm/parts/Headers/index.js.map +7 -0
  461. package/esm/parts/Headers/useHeaderCellConfig.js +19 -21
  462. package/esm/parts/Headers/useHeaderCellConfig.js.map +7 -0
  463. package/esm/parts/Headers/useHeaderCellHandlers.js +56 -66
  464. package/esm/parts/Headers/useHeaderCellHandlers.js.map +7 -0
  465. package/esm/parts/HoC/SortableItemContext.js +15 -15
  466. package/esm/parts/HoC/SortableItemContext.js.map +7 -0
  467. package/esm/parts/HoC/withConditionalDnDColumnContext.js +52 -85
  468. package/esm/parts/HoC/withConditionalDnDColumnContext.js.map +7 -0
  469. package/esm/parts/HoC/withConditionalDnDRowContext.js +59 -80
  470. package/esm/parts/HoC/withConditionalDnDRowContext.js.map +7 -0
  471. package/esm/parts/HoC/withConditionalDnDSortableContext.js +21 -34
  472. package/esm/parts/HoC/withConditionalDnDSortableContext.js.map +7 -0
  473. package/esm/parts/HoC/withDnDSortableColumnContext.js +26 -44
  474. package/esm/parts/HoC/withDnDSortableColumnContext.js.map +7 -0
  475. package/esm/parts/HoC/withDnDSortableRowContext.js +26 -46
  476. package/esm/parts/HoC/withDnDSortableRowContext.js.map +7 -0
  477. package/esm/parts/Loader.js +21 -22
  478. package/esm/parts/Loader.js.map +7 -0
  479. package/esm/parts/Row.js +33 -48
  480. package/esm/parts/Row.js.map +7 -0
  481. package/esm/parts/RowLoading.js +23 -42
  482. package/esm/parts/RowLoading.js.map +7 -0
  483. package/esm/parts/RowVariants/RowVariantHeader.js +47 -83
  484. package/esm/parts/RowVariants/RowVariantHeader.js.map +7 -0
  485. package/esm/parts/RowVariants/RowVariantPrimary.js +26 -28
  486. package/esm/parts/RowVariants/RowVariantPrimary.js.map +7 -0
  487. package/esm/parts/RowVariants/RowVariantSecondary.js +27 -29
  488. package/esm/parts/RowVariants/RowVariantSecondary.js.map +7 -0
  489. package/esm/parts/RowVariants/index.js +26 -65
  490. package/esm/parts/RowVariants/index.js.map +7 -0
  491. package/esm/parts/RowVariants/types.js +2 -1
  492. package/esm/parts/RowVariants/types.js.map +7 -0
  493. package/esm/parts/Rows.js +41 -61
  494. package/esm/parts/Rows.js.map +7 -0
  495. package/esm/parts/SortByCaret.js +15 -22
  496. package/esm/parts/SortByCaret.js.map +7 -0
  497. package/esm/parts/SortableHeaderCell.js +14 -29
  498. package/esm/parts/SortableHeaderCell.js.map +7 -0
  499. package/esm/parts/TableContent.js +35 -72
  500. package/esm/parts/TableContent.js.map +7 -0
  501. package/esm/parts/VirtualRowsList.js +40 -78
  502. package/esm/parts/VirtualRowsList.js.map +7 -0
  503. package/esm/parts/index.js +16 -6
  504. package/esm/parts/index.js.map +7 -0
  505. package/esm/prop-types.js +28 -22
  506. package/esm/prop-types.js.map +7 -0
  507. package/esm/redux/reducers/headersReducers/defaults.js +5 -2
  508. package/esm/redux/reducers/headersReducers/defaults.js.map +7 -0
  509. package/esm/redux/reducers/headersReducers/headersReducers.js +12 -11
  510. package/esm/redux/reducers/headersReducers/headersReducers.js.map +7 -0
  511. package/esm/redux/reducers/headersReducers/index.js +4 -2
  512. package/esm/redux/reducers/headersReducers/index.js.map +7 -0
  513. package/esm/redux/reducers/headersReducers/logic.js +13 -24
  514. package/esm/redux/reducers/headersReducers/logic.js.map +7 -0
  515. package/esm/redux/reducers/headersReducers/useDispatchHeadersActions.js +10 -14
  516. package/esm/redux/reducers/headersReducers/useDispatchHeadersActions.js.map +7 -0
  517. package/esm/redux/reducers/index.js +17 -11
  518. package/esm/redux/reducers/index.js.map +7 -0
  519. package/esm/redux/reducers/rowsReducers/actions_types.js +18 -9
  520. package/esm/redux/reducers/rowsReducers/actions_types.js.map +7 -0
  521. package/esm/redux/reducers/rowsReducers/defaults.js +6 -2
  522. package/esm/redux/reducers/rowsReducers/defaults.js.map +7 -0
  523. package/esm/redux/reducers/rowsReducers/index.js +4 -2
  524. package/esm/redux/reducers/rowsReducers/index.js.map +7 -0
  525. package/esm/redux/reducers/rowsReducers/logic.js +12 -3
  526. package/esm/redux/reducers/rowsReducers/logic.js.map +7 -0
  527. package/esm/redux/reducers/rowsReducers/rowsReducer.js +28 -18
  528. package/esm/redux/reducers/rowsReducers/rowsReducer.js.map +7 -0
  529. package/esm/redux/reducers/rowsReducers/useDispatchRowsActions.js +26 -15
  530. package/esm/redux/reducers/rowsReducers/useDispatchRowsActions.js.map +7 -0
  531. package/esm/redux/storeConfig.js +6 -4
  532. package/esm/redux/storeConfig.js.map +7 -0
  533. package/esm/styled.js +268 -194
  534. package/esm/styled.js.map +7 -0
  535. package/esm/tests/utils/index.js +90 -0
  536. package/esm/tests/utils/index.js.map +7 -0
  537. package/esm/types/FunctionalHoC.js +2 -1
  538. package/esm/types/FunctionalHoC.js.map +7 -0
  539. package/esm/types/props.js +2 -1
  540. package/esm/types/props.js.map +7 -0
  541. package/package.json +18 -18
  542. package/types/DataTable.d.ts +44 -246
  543. package/types/DataTableContext.d.ts +1 -0
  544. package/types/DataTableSchema.d.ts +43 -245
  545. package/types/configs/useTableColsWithAddons.d.ts +1 -0
  546. package/types/exported-related/RowRenderer/index.d.ts +1 -0
  547. package/types/exported-related/RowRenderer/useRowRendererProperties.d.ts +1 -1
  548. package/types/parts/Cells/Cell.d.ts +1 -0
  549. package/types/parts/Cells/index.d.ts +1 -0
  550. package/types/parts/DropIndicator.d.ts +1 -0
  551. package/types/parts/EmptyContent.d.ts +1 -0
  552. package/types/parts/Footer.d.ts +1 -0
  553. package/types/parts/Headers/index.d.ts +2 -2
  554. package/types/parts/Loader.d.ts +2 -2
  555. package/types/parts/Row.d.ts +3 -2
  556. package/types/parts/RowLoading.d.ts +1 -0
  557. package/types/parts/Rows.d.ts +2 -2
  558. package/types/parts/TableContent.d.ts +1 -0
  559. package/types/parts/VirtualRowsList.d.ts +1 -1
  560. package/types/redux/reducers/index.d.ts +2 -2
@@ -1,56 +1,16 @@
1
- import _defineProperty from '@babel/runtime/helpers/esm/defineProperty';
2
- import 'core-js/modules/esnext.async-iterator.find.js';
3
- import 'core-js/modules/esnext.iterator.constructor.js';
4
- import 'core-js/modules/esnext.iterator.find.js';
5
- import 'core-js/modules/esnext.async-iterator.filter.js';
6
- import 'core-js/modules/esnext.iterator.filter.js';
7
- import 'core-js/modules/web.dom-collections.iterator.js';
8
- import 'core-js/modules/esnext.async-iterator.for-each.js';
9
- import 'core-js/modules/esnext.iterator.for-each.js';
10
- import { useCallback } from 'react';
11
- import { DateRangeFilter } from '../../addons/Filters/Components/DateRangeFilter/index.js';
12
- import { DateSwitcherFilter } from '../../addons/Filters/Components/DateSwitcherFilter/index.js';
13
- import { NumberRangeFilter } from '../../addons/Filters/Components/NumberRangeFilter/index.js';
14
- import { CurrencyRangeFilter } from '../../addons/Filters/Components/CurrencyRangeFilter/index.js';
15
- import { SingleSelectFilter } from '../../addons/Filters/Components/SelectFilter/SingleSelectFilter.js';
16
- import { MultiSelectFilter } from '../../addons/Filters/Components/SelectFilter/MultiSelectFilter.js';
17
- import { SingleDateFilter } from '../../addons/Filters/Components/SingleDateFilter/index.js';
18
- import '@babel/runtime/helpers/esm/jsx';
19
- import '@elliemae/ds-button';
20
- import '@elliemae/ds-popperjs';
21
- import 'styled-components';
22
- import '../../redux/reducers/index.js';
23
- import '../../configs/constants.js';
24
- import 'core-js/modules/esnext.async-iterator.reduce.js';
25
- import 'core-js/modules/esnext.iterator.reduce.js';
26
- import 'react-virtual';
27
- import '../../configs/useRowFlattenization.js';
28
- import 'core-js/modules/esnext.async-iterator.map.js';
29
- import 'core-js/modules/esnext.iterator.map.js';
30
- import '@elliemae/ds-icons';
31
- import '../../styled.js';
32
- import { jsx } from 'react/jsx-runtime';
33
- import '@elliemae/ds-form';
34
- import '../TableContent.js';
35
- import '@elliemae/ds-grid';
36
- import '@elliemae/ds-circular-progress-indicator';
37
- import '@elliemae/ds-system';
38
- import '../../DataTableContext.js';
39
- import '../Row.js';
40
- import '../Footer.js';
41
- import '../HoC/SortableItemContext.js';
42
- import '@elliemae/ds-utilities';
43
- import 'uid';
44
- import { FILTER_TYPES } from '../../exported-related/FilterTypes.js';
45
- import '../../exported-related/Filters/applyOutOfTheBoxFilters.js';
46
- import 'moment';
47
- import 'core-js/modules/esnext.async-iterator.some.js';
48
- import 'core-js/modules/esnext.iterator.some.js';
49
- import { useDispatchHeadersActions } from '../../redux/reducers/headersReducers/useDispatchHeadersActions.js';
50
-
51
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
52
-
53
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
1
+ import * as React from "react";
2
+ import React2, { useCallback } from "react";
3
+ import {
4
+ DateRangeFilter,
5
+ DateSwitcherFilter,
6
+ NumberRangeFilter,
7
+ MultiSelectFilter,
8
+ SingleSelectFilter,
9
+ SingleDateFilter,
10
+ CurrencyRangeFilter
11
+ } from "../../addons/Filters";
12
+ import { FILTER_TYPES } from "../../exported-related";
13
+ import { useDispatchHeadersActions } from "../../redux/reducers";
54
14
  const FilterMapper = {
55
15
  [FILTER_TYPES.SELECT]: SingleSelectFilter,
56
16
  [FILTER_TYPES.MULTI_SELECT]: MultiSelectFilter,
@@ -60,29 +20,17 @@ const FilterMapper = {
60
20
  [FILTER_TYPES.NUMBER_RANGE]: NumberRangeFilter,
61
21
  [FILTER_TYPES.CURRENCY_RANGE]: CurrencyRangeFilter
62
22
  };
63
- const FilterMapItem = props => {
64
- const {
65
- column,
66
- filterValue: filters,
67
- onFiltersChange
68
- } = props;
69
- const {
70
- patchHeaderFilterButtonAndMenu,
71
- patchHeader
72
- } = useDispatchHeadersActions();
73
- const filterValue = filters.find(filter => filter.id === column.id);
23
+ const FilterMapItem = (props) => {
24
+ const { column, filterValue: filters, onFiltersChange } = props;
25
+ const { patchHeaderFilterButtonAndMenu, patchHeader } = useDispatchHeadersActions();
26
+ const filterValue = filters.find((filter) => filter.id === column.id);
74
27
  const onValueChange = useCallback((type, newValue) => {
75
- const filterIndex = filters.findIndex(filter => filter.id === column.id);
76
-
77
- if (newValue === undefined) {
78
- const newFilters = filters.filter(filter => filter.id !== column.id);
28
+ const filterIndex = filters.findIndex((filter) => filter.id === column.id);
29
+ if (newValue === void 0) {
30
+ const newFilters = filters.filter((filter) => filter.id !== column.id);
79
31
  onFiltersChange(newFilters);
80
32
  } else if (filterIndex === -1) {
81
- onFiltersChange([...filters, {
82
- id: column.id,
83
- type,
84
- value: newValue
85
- }]);
33
+ onFiltersChange([...filters, { id: column.id, type, value: newValue }]);
86
34
  } else {
87
35
  const newFilters = [...filters];
88
36
  newFilters[filterIndex].type = type;
@@ -90,34 +38,34 @@ const FilterMapItem = props => {
90
38
  onFiltersChange(newFilters);
91
39
  }
92
40
  }, [column.id, filters, onFiltersChange]);
93
-
94
- const filterProps = _objectSpread(_objectSpread({}, props), {}, {
95
- filterValue: filterValue === null || filterValue === void 0 ? void 0 : filterValue.value,
41
+ const filterProps = {
42
+ ...props,
43
+ filterValue: filterValue?.value,
96
44
  onValueChange,
97
45
  patchHeader,
98
46
  patchHeaderFilterButtonAndMenu
99
- });
100
-
101
- if (typeof column.filter === 'string') {
47
+ };
48
+ if (typeof column.filter === "string") {
102
49
  if (!(column.filter in FilterMapper)) {
103
- throw new Error("column.filter must be a supported out-of-the-box filter in ".concat(column));
50
+ throw new Error(`column.filter must be a supported out-of-the-box filter in ${column}`);
104
51
  }
105
-
106
52
  const FilterComp = FilterMapper[column.filter];
107
- return /*#__PURE__*/jsx(FilterComp, _objectSpread({}, filterProps));
53
+ return /* @__PURE__ */ React2.createElement(FilterComp, {
54
+ ...filterProps
55
+ });
108
56
  }
109
-
110
57
  if (column.Filter) {
111
- if (typeof column.Filter !== 'function') {
112
- throw new Error("column.Filter must be a component");
58
+ if (typeof column.Filter !== "function") {
59
+ throw new Error(`column.Filter must be a component`);
113
60
  }
114
-
115
61
  const FilterComp = column.Filter;
116
- return /*#__PURE__*/jsx(FilterComp, _objectSpread({}, filterProps));
117
- } // Column doesn't have any filters
118
-
119
-
62
+ return /* @__PURE__ */ React2.createElement(FilterComp, {
63
+ ...filterProps
64
+ });
65
+ }
120
66
  return null;
121
67
  };
122
-
123
- export { FilterMapItem };
68
+ export {
69
+ FilterMapItem
70
+ };
71
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/parts/Filters/index.tsx"],
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable @typescript-eslint/indent */\n/* eslint-disable react/prop-types */\nimport React, { useCallback } from 'react';\nimport {\n DateRangeFilter,\n DateSwitcherFilter,\n NumberRangeFilter,\n MultiSelectFilter,\n SingleSelectFilter,\n SingleDateFilter,\n CurrencyRangeFilter,\n} from '../../addons/Filters';\nimport { FILTER_TYPES } from '../../exported-related';\nimport { useDispatchHeadersActions } from '../../redux/reducers';\nimport { FilterProps } from '../../types/props';\n\nconst FilterMapper: Record<string, React.ComponentType<FilterProps>> = {\n [FILTER_TYPES.SELECT]: SingleSelectFilter,\n [FILTER_TYPES.MULTI_SELECT]: MultiSelectFilter,\n [FILTER_TYPES.SINGLE_DATE]: SingleDateFilter,\n [FILTER_TYPES.DATE_RANGE]: DateRangeFilter,\n [FILTER_TYPES.DATE_SWITCHER]: DateSwitcherFilter,\n [FILTER_TYPES.NUMBER_RANGE]: NumberRangeFilter,\n [FILTER_TYPES.CURRENCY_RANGE]: CurrencyRangeFilter,\n};\nexport const FilterMapItem: React.ComponentType<\n Omit<FilterProps, 'patchHeaderFilterButtonAndMenu' | 'patchHeader' | 'onValueChange'>\n> = (props) => {\n const { column, filterValue: filters, onFiltersChange } = props;\n\n const { patchHeaderFilterButtonAndMenu, patchHeader } = useDispatchHeadersActions();\n\n const filterValue = filters.find((filter) => filter.id === column.id);\n\n const onValueChange = useCallback(\n (type: string, newValue: any) => {\n const filterIndex = filters.findIndex((filter) => filter.id === column.id);\n if (newValue === undefined) {\n const newFilters = filters.filter((filter) => filter.id !== column.id);\n onFiltersChange(newFilters);\n } else if (filterIndex === -1) {\n onFiltersChange([...filters, { id: column.id, type, value: newValue }]);\n } else {\n const newFilters = [...filters];\n newFilters[filterIndex].type = type;\n newFilters[filterIndex].value = newValue;\n onFiltersChange(newFilters);\n }\n },\n [column.id, filters, onFiltersChange],\n );\n\n const filterProps = {\n ...props,\n filterValue: filterValue?.value,\n onValueChange,\n patchHeader,\n patchHeaderFilterButtonAndMenu,\n };\n\n if (typeof column.filter === 'string') {\n if (!(column.filter in FilterMapper)) {\n throw new Error(`column.filter must be a supported out-of-the-box filter in ${column}`);\n }\n const FilterComp = FilterMapper[column.filter];\n return <FilterComp {...filterProps} />;\n }\n\n if (column.Filter) {\n if (typeof column.Filter !== 'function') {\n throw new Error(`column.Filter must be a component`);\n }\n const FilterComp = column.Filter;\n return <FilterComp {...filterProps} />;\n }\n\n // Column doesn't have any filters\n return null;\n};\n"],
5
+ "mappings": "AAAA;ACEA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AASA;AACA;AAGA,MAAM,eAAiE;AAAA,GACpE,aAAa,SAAS;AAAA,GACtB,aAAa,eAAe;AAAA,GAC5B,aAAa,cAAc;AAAA,GAC3B,aAAa,aAAa;AAAA,GAC1B,aAAa,gBAAgB;AAAA,GAC7B,aAAa,eAAe;AAAA,GAC5B,aAAa,iBAAiB;AAAA;AAE1B,MAAM,gBAET,CAAC,UAAU;AACb,QAAM,EAAE,QAAQ,aAAa,SAAS,oBAAoB;AAE1D,QAAM,EAAE,gCAAgC,gBAAgB;AAExD,QAAM,cAAc,QAAQ,KAAK,CAAC,WAAW,OAAO,OAAO,OAAO;AAElE,QAAM,gBAAgB,YACpB,CAAC,MAAc,aAAkB;AAC/B,UAAM,cAAc,QAAQ,UAAU,CAAC,WAAW,OAAO,OAAO,OAAO;AACvE,QAAI,aAAa,QAAW;AAC1B,YAAM,aAAa,QAAQ,OAAO,CAAC,WAAW,OAAO,OAAO,OAAO;AACnE,sBAAgB;AAAA,eACP,gBAAgB,IAAI;AAC7B,sBAAgB,CAAC,GAAG,SAAS,EAAE,IAAI,OAAO,IAAI,MAAM,OAAO;AAAA,WACtD;AACL,YAAM,aAAa,CAAC,GAAG;AACvB,iBAAW,aAAa,OAAO;AAC/B,iBAAW,aAAa,QAAQ;AAChC,sBAAgB;AAAA;AAAA,KAGpB,CAAC,OAAO,IAAI,SAAS;AAGvB,QAAM,cAAc;AAAA,OACf;AAAA,IACH,aAAa,aAAa;AAAA,IAC1B;AAAA,IACA;AAAA,IACA;AAAA;AAGF,MAAI,OAAO,OAAO,WAAW,UAAU;AACrC,QAAI,CAAE,QAAO,UAAU,eAAe;AACpC,YAAM,IAAI,MAAM,8DAA8D;AAAA;AAEhF,UAAM,aAAa,aAAa,OAAO;AACvC,WAAO,qCAAC,YAAD;AAAA,SAAgB;AAAA;AAAA;AAGzB,MAAI,OAAO,QAAQ;AACjB,QAAI,OAAO,OAAO,WAAW,YAAY;AACvC,YAAM,IAAI,MAAM;AAAA;AAElB,UAAM,aAAa,OAAO;AAC1B,WAAO,qCAAC,YAAD;AAAA,SAAgB;AAAA;AAAA;AAIzB,SAAO;AAAA;",
6
+ "names": []
7
+ }
@@ -1,18 +1,13 @@
1
- import 'react';
2
- import PropTypes from 'prop-types';
3
- import { jsx, Fragment } from 'react/jsx-runtime';
4
-
5
- const Footer = _ref => {
6
- let {
7
- children
8
- } = _ref;
9
- return /*#__PURE__*/jsx(Fragment, {
10
- children: children
11
- });
12
- };
13
-
1
+ import * as React from "react";
2
+ import React2 from "react";
3
+ import PropTypes from "prop-types";
4
+ const Footer = ({ children }) => /* @__PURE__ */ React2.createElement(React2.Fragment, null, children);
14
5
  Footer.propTypes = {
15
6
  children: PropTypes.node
16
7
  };
17
-
18
- export { Footer as default };
8
+ var Footer_default = Footer;
9
+ export {
10
+ Footer,
11
+ Footer_default as default
12
+ };
13
+ //# sourceMappingURL=Footer.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../../src/parts/Footer.tsx"],
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst Footer: React.ComponentType = ({ children }) => <>{children}</>;\n\nFooter.propTypes = {\n children: PropTypes.node,\n};\n\nexport { Footer };\nexport default Footer;\n"],
5
+ "mappings": "AAAA;ACAA;AACA;AAEA,MAAM,SAA8B,CAAC,EAAE,eAAe,4DAAG;AAEzD,OAAO,YAAY;AAAA,EACjB,UAAU,UAAU;AAAA;AAItB,IAAO,iBAAQ;",
6
+ "names": []
7
+ }
@@ -1,11 +1,13 @@
1
- import _jsx from '@babel/runtime/helpers/esm/jsx';
2
- import 'react';
3
- import styled from 'styled-components';
4
-
5
- var _StyledBox;
6
- const StyledBox = /*#__PURE__*/styled.div.withConfig({
7
- componentId: "sc-1dcayi9-0"
8
- })(["height:24px;margin:0 ", ";border-top:1px solid ", ";"], props => props.theme.space.xxs, props => props.theme.colors.neutral[200]);
9
- const EmptyChildrenGroup = () => _StyledBox || (_StyledBox = /*#__PURE__*/_jsx(StyledBox, {}));
10
-
11
- export { EmptyChildrenGroup };
1
+ import * as React from "react";
2
+ import React2 from "react";
3
+ import styled from "styled-components";
4
+ const StyledBox = styled.div`
5
+ height: 24px;
6
+ margin: 0 ${(props) => props.theme.space.xxs};
7
+ border-top: 1px solid ${(props) => props.theme.colors.neutral[200]};
8
+ `;
9
+ const EmptyChildrenGroup = () => /* @__PURE__ */ React2.createElement(StyledBox, null);
10
+ export {
11
+ EmptyChildrenGroup
12
+ };
13
+ //# sourceMappingURL=EmptyChildrenGroup.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/parts/Headers/EmptyChildrenGroup.tsx"],
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React from 'react';\nimport styled from 'styled-components';\n\nconst StyledBox = styled.div`\n height: 24px;\n margin: 0 ${(props) => props.theme.space.xxs};\n border-top: 1px solid ${(props) => props.theme.colors.neutral[200]};\n`;\n\nexport const EmptyChildrenGroup: React.ComponentType<Record<string, never>> = () => <StyledBox />;\n"],
5
+ "mappings": "AAAA;ACAA;AACA;AAEA,MAAM,YAAY,OAAO;AAAA;AAAA,cAEX,CAAC,UAAU,MAAM,MAAM,MAAM;AAAA,0BACjB,CAAC,UAAU,MAAM,MAAM,OAAO,QAAQ;AAAA;AAGzD,MAAM,qBAAiE,MAAM,qCAAC,WAAD;",
6
+ "names": []
7
+ }
@@ -1,111 +1,50 @@
1
- import 'core-js/modules/esnext.async-iterator.filter.js';
2
- import 'core-js/modules/esnext.iterator.constructor.js';
3
- import 'core-js/modules/esnext.iterator.filter.js';
4
- import 'core-js/modules/esnext.async-iterator.for-each.js';
5
- import 'core-js/modules/esnext.iterator.for-each.js';
6
- import _defineProperty from '@babel/runtime/helpers/esm/defineProperty';
7
- import _jsx from '@babel/runtime/helpers/esm/jsx';
8
- import { useContext, useRef, useMemo } from 'react';
9
- import { connect } from 'react-redux';
10
- import Grid from '@elliemae/ds-grid';
11
- import '../../redux/reducers/index.js';
12
- import { StyledHeaderRightIconsWrapper, StyledFocusWithin, StyledHeadTh } from '../../styled.js';
13
- import DataTableContext from '../../DataTableContext.js';
14
- import { SortByCaret } from '../SortByCaret.js';
15
- import '../TableContent.js';
16
- import '@elliemae/ds-circular-progress-indicator';
17
- import 'styled-components';
18
- import '@elliemae/ds-icons';
19
- import '@elliemae/ds-system';
20
- import '@elliemae/ds-button';
21
- import '../Row.js';
22
- import '../Footer.js';
23
- import DragHandle from '../DnDHandle.js';
24
- import { SortableItemContext } from '../HoC/SortableItemContext.js';
25
- import { FilterMapItem } from '../Filters/index.js';
26
- import { HeaderResizer } from './HeaderResizer.js';
27
- import { useHeaderCellHandlers } from './useHeaderCellHandlers.js';
28
- import { useHeaderCellConfig } from './useHeaderCellConfig.js';
29
- import { useRecoverFocusCol } from '../../hooks/useRecoverFocusCol.js';
30
- import { DATA_TESTID } from '../../configs/constants.js';
31
- import 'core-js/modules/web.dom-collections.iterator.js';
32
- import 'core-js/modules/esnext.async-iterator.reduce.js';
33
- import 'core-js/modules/esnext.iterator.reduce.js';
34
- import 'react-virtual';
35
- import '../../configs/useRowFlattenization.js';
36
- import 'core-js/modules/esnext.async-iterator.map.js';
37
- import 'core-js/modules/esnext.iterator.map.js';
38
- import { jsxs } from 'react/jsx-runtime';
39
- import '@elliemae/ds-form';
40
- import { HeaderCellTitle } from './HeaderCellTitle.js';
41
- import { useDispatchHeadersActions } from '../../redux/reducers/headersReducers/useDispatchHeadersActions.js';
42
-
43
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
44
-
45
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
46
-
1
+ import * as React from "react";
2
+ import React2, { useContext, useMemo, useRef } from "react";
3
+ import { connect } from "react-redux";
4
+ import { Grid } from "@elliemae/ds-grid";
5
+ import { useDispatchHeadersActions } from "../../redux/reducers";
6
+ import { StyledHeadTh, StyledHeaderRightIconsWrapper, StyledFocusWithin } from "../../styled";
7
+ import { DataTableContext } from "../../DataTableContext";
8
+ import { SortByCaret } from "../SortByCaret";
9
+ import { DnDHandle } from "..";
10
+ import { SortableItemContext } from "../HoC/SortableItemContext";
11
+ import { FilterMapItem } from "../Filters";
12
+ import { HeaderResizer } from "./HeaderResizer";
13
+ import { useHeaderCellHandlers } from "./useHeaderCellHandlers";
14
+ import { useHeaderCellConfig } from "./useHeaderCellConfig";
15
+ import { useRecoverFocusCol } from "../../hooks/useRecoverFocusCol";
16
+ import { DATA_TESTID } from "../../configs/constants";
17
+ import { HeaderCellTitle } from "./HeaderCellTitle";
47
18
  const buildScreenReaderInstructions = (colSpan, draggable, filterable, sortable) => {
48
- const preffix = colSpan === 1 ? '' : 'Column Group. ';
49
- if (!draggable && !filterable && !sortable) return preffix;
50
- let message = sortable ? 'You can sort the data ascendingly/descendingly by this column. Use the up / down arrows keys to do so' : '';
51
-
19
+ const preffix = colSpan === 1 ? "" : "Column Group. ";
20
+ if (!draggable && !filterable && !sortable)
21
+ return preffix;
22
+ let message = sortable ? "You can sort the data ascendingly/descendingly by this column. Use the up / down arrows keys to do so" : "";
52
23
  if (draggable && filterable) {
53
- message = "This column is draggable and filterable. To enable these interactions press the enter key. ".concat(message);
24
+ message = `This column is draggable and filterable. To enable these interactions press the enter key. ${message}`;
54
25
  } else if (draggable || filterable) {
55
- message = "This column is ".concat(draggable ? 'draggable' : 'filterable', ". To enable this interaction press the enter key. ").concat(message);
26
+ message = `This column is ${draggable ? "draggable" : "filterable"}. To enable this interaction press the enter key. ${message}`;
56
27
  }
57
-
58
- return "".concat(preffix).concat(message);
28
+ return `${preffix}${message}`;
59
29
  };
60
-
61
30
  function mapStateToProps(state, ownProps) {
62
- var _state$headers;
63
-
64
31
  return {
65
- reduxHeader: (_state$headers = state.headers) === null || _state$headers === void 0 ? void 0 : _state$headers[ownProps.column.id]
32
+ reduxHeader: state.headers?.[ownProps.column.id]
66
33
  };
67
34
  }
68
-
69
35
  const connector = connect(mapStateToProps);
70
-
71
- const HeaderCellComp = props => {
72
- var _FilterMapItem, _flattenedData$, _flattenedData$$origi;
73
-
74
- const {
75
- reduxHeader,
76
- column,
77
- isDragOverlay,
78
- colSpan
79
- } = props;
36
+ const HeaderCellComp = (props) => {
37
+ const { reduxHeader, column, isDragOverlay, colSpan } = props;
80
38
  const ctx = useContext(DataTableContext);
81
39
  const {
82
- tableProps: {
83
- isResizeable,
84
- onColumnSortChange,
85
- dragAndDropColumns,
86
- onFiltersChange,
87
- filters,
88
- textWrap
89
- },
40
+ tableProps: { isResizeable, onColumnSortChange, dragAndDropColumns, onFiltersChange, filters, textWrap },
90
41
  flattenedData
91
42
  } = ctx;
92
- const {
93
- patchHeader
94
- } = useDispatchHeadersActions();
43
+ const { patchHeader } = useDispatchHeadersActions();
95
44
  const dragHandleRef = useRef(null);
96
45
  const filterIconRef = useRef(null);
97
- const {
98
- draggableProps
99
- } = useContext(SortableItemContext);
100
- const {
101
- hasFilter,
102
- hasDnD,
103
- hasSortingCaret,
104
- hasRightIcons,
105
- shouldShowDnD,
106
- hCols,
107
- isDragging
108
- } = useHeaderCellConfig({
46
+ const { draggableProps } = useContext(SortableItemContext);
47
+ const { hasFilter, hasDnD, hasSortingCaret, hasRightIcons, shouldShowDnD, hCols, isDragging } = useHeaderCellConfig({
109
48
  column,
110
49
  dragAndDropColumns,
111
50
  draggableProps,
@@ -114,32 +53,32 @@ const HeaderCellComp = props => {
114
53
  });
115
54
  useRecoverFocusCol(isDragging, dragHandleRef);
116
55
  const rightIcons = useMemo(() => {
117
- if (!hasRightIcons) return null;
118
- return /*#__PURE__*/_jsx(StyledHeaderRightIconsWrapper, {}, void 0, _FilterMapItem || (_FilterMapItem = /*#__PURE__*/_jsx(FilterMapItem, {
119
- column: column,
120
- ctx: ctx,
121
- onFiltersChange: onFiltersChange,
122
- reduxHeader: reduxHeader,
56
+ if (!hasRightIcons)
57
+ return null;
58
+ return /* @__PURE__ */ React2.createElement(StyledHeaderRightIconsWrapper, null, /* @__PURE__ */ React2.createElement(FilterMapItem, {
59
+ column,
60
+ ctx,
61
+ onFiltersChange,
62
+ reduxHeader,
123
63
  filterValue: filters,
124
64
  innerRef: filterIconRef
125
- })), hasSortingCaret && /*#__PURE__*/_jsx(SortByCaret, {
65
+ }), hasSortingCaret && /* @__PURE__ */ React2.createElement(SortByCaret, {
126
66
  isSortedDesc: column.isSortedDesc
127
67
  }));
128
68
  }, [hasRightIcons, column, ctx, onFiltersChange, reduxHeader, filters, hasSortingCaret]);
129
- const DnDHandleComponent = useMemo(() => /*#__PURE__*/_jsx(Grid, {
69
+ const DnDHandleComponent = useMemo(() => /* @__PURE__ */ React2.createElement(Grid, {
130
70
  mr: "2px",
131
71
  alignItems: "center",
132
- style: {
133
- position: 'relative'
134
- }
135
- }, void 0, /*#__PURE__*/_jsx(StyledFocusWithin, {
72
+ style: { position: "relative" }
73
+ }, /* @__PURE__ */ React2.createElement(StyledFocusWithin, {
136
74
  hideFocus: isDragging
137
- }, void 0, /*#__PURE__*/_jsx(DragHandle, {
75
+ }, /* @__PURE__ */ React2.createElement(DnDHandle, {
76
+ key: column.id,
138
77
  innerRef: dragHandleRef,
139
- isReachable: reduxHeader === null || reduxHeader === void 0 ? void 0 : reduxHeader.withTabStops,
78
+ isReachable: reduxHeader?.withTabStops,
140
79
  id: column.id,
141
- isDragOverlay: isDragOverlay
142
- }, column.id))), [column.id, isDragOverlay, isDragging, reduxHeader === null || reduxHeader === void 0 ? void 0 : reduxHeader.withTabStops]);
80
+ isDragOverlay
81
+ }))), [column.id, isDragOverlay, isDragging, reduxHeader?.withTabStops]);
143
82
  const handlers = useHeaderCellHandlers({
144
83
  hasFilter,
145
84
  patchHeader,
@@ -151,41 +90,38 @@ const HeaderCellComp = props => {
151
90
  filterIconRef,
152
91
  headerRef: column.ref
153
92
  });
154
- return /*#__PURE__*/jsxs(StyledHeadTh, _objectSpread(_objectSpread({
155
- column: column
156
- }, handlers), {}, {
157
- role: colSpan === 1 ? 'columnheader' : 'group',
158
- colSpan: colSpan,
159
- "aria-describedby": "".concat(column.id, "-instructions") // eslint-disable-next-line no-nested-ternary
160
- ,
161
- "aria-sort": hasSortingCaret ? column.isSortedDesc ? 'descending' : 'ascending' : 'none',
93
+ return /* @__PURE__ */ React2.createElement(StyledHeadTh, {
94
+ column,
95
+ ...handlers,
96
+ role: colSpan === 1 ? "columnheader" : "group",
97
+ colSpan,
98
+ "aria-describedby": `${column.id}-instructions`,
99
+ "aria-sort": hasSortingCaret ? column.isSortedDesc ? "descending" : "ascending" : "none",
162
100
  "data-testid": DATA_TESTID.DATA_TABLE_HEADER,
163
- isFirstRowGroup: !!((_flattenedData$ = flattenedData[0]) !== null && _flattenedData$ !== void 0 && (_flattenedData$$origi = _flattenedData$.original) !== null && _flattenedData$$origi !== void 0 && _flattenedData$$origi.dimsumHeaderValue),
101
+ isFirstRowGroup: !!flattenedData[0]?.original?.dimsumHeaderValue,
164
102
  tabIndex: column.isFocuseable === false ? -1 : 0,
165
- isDragOverlay: isDragOverlay,
103
+ isDragOverlay,
166
104
  isDraggingActive: draggableProps && draggableProps.active,
167
- shouldShowDnD: shouldShowDnD,
168
- ref: column.ref,
169
- children: [/*#__PURE__*/_jsx(Grid, {
170
- width: "100%",
171
- cols: hCols
172
- }, void 0, shouldShowDnD && DnDHandleComponent, /*#__PURE__*/_jsx(HeaderCellTitle, {
173
- column: column,
174
- ctx: ctx,
175
- draggableProps: draggableProps,
176
- textWrap: textWrap
177
- }), rightIcons, isResizeable && column.canResize !== false && /*#__PURE__*/_jsx(HeaderResizer, {
178
- column: column
179
- })), /*#__PURE__*/_jsx("span", {
180
- id: "".concat(column.id, "-instructions"),
181
- style: {
182
- display: 'none'
183
- },
184
- "aria-hidden": "false"
185
- }, void 0, buildScreenReaderInstructions(colSpan, dragAndDropColumns && column.disableDnD !== true, hasFilter, column.canSort))]
186
- }));
105
+ shouldShowDnD,
106
+ ref: column.ref
107
+ }, /* @__PURE__ */ React2.createElement(Grid, {
108
+ width: "100%",
109
+ cols: hCols
110
+ }, shouldShowDnD && DnDHandleComponent, /* @__PURE__ */ React2.createElement(HeaderCellTitle, {
111
+ column,
112
+ ctx,
113
+ draggableProps,
114
+ textWrap
115
+ }), rightIcons, isResizeable && column.canResize !== false && /* @__PURE__ */ React2.createElement(HeaderResizer, {
116
+ column
117
+ })), /* @__PURE__ */ React2.createElement("span", {
118
+ id: `${column.id}-instructions`,
119
+ style: { display: "none" },
120
+ "aria-hidden": "false"
121
+ }, buildScreenReaderInstructions(colSpan, dragAndDropColumns && column.disableDnD !== true, hasFilter, column.canSort)));
187
122
  };
188
-
189
123
  const HeaderCell = connector(HeaderCellComp);
190
-
191
- export { HeaderCell };
124
+ export {
125
+ HeaderCell
126
+ };
127
+ //# sourceMappingURL=HeaderCell.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/parts/Headers/HeaderCell.tsx"],
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable max-params */\n/* eslint-disable max-lines */\n/* eslint-disable complexity */\n/* eslint-disable react/prop-types */\nimport React, { useContext, useMemo, useRef } from 'react';\nimport { connect, ConnectedProps } from 'react-redux';\nimport { Grid } from '@elliemae/ds-grid';\nimport { useDispatchHeadersActions } from '../../redux/reducers';\nimport { StyledHeadTh, StyledHeaderRightIconsWrapper, StyledFocusWithin } from '../../styled';\nimport { DataTableContext } from '../../DataTableContext';\nimport { SortByCaret } from '../SortByCaret';\nimport { DnDHandle } from '..';\nimport { SortableItemContext } from '../HoC/SortableItemContext';\nimport { FilterMapItem } from '../Filters';\nimport { HeaderResizer } from './HeaderResizer';\nimport { TypescriptColumn } from '../../types/props';\nimport { useHeaderCellHandlers } from './useHeaderCellHandlers';\nimport { useHeaderCellConfig } from './useHeaderCellConfig';\nimport { useRecoverFocusCol } from '../../hooks/useRecoverFocusCol';\nimport { DATA_TESTID } from '../../configs/constants';\nimport { HeaderCellTitle } from './HeaderCellTitle';\n\nconst buildScreenReaderInstructions = (colSpan: number, draggable: boolean, filterable: boolean, sortable: boolean) => {\n const preffix = colSpan === 1 ? '' : 'Column Group. ';\n if (!draggable && !filterable && !sortable) return preffix;\n\n let message = sortable\n ? 'You can sort the data ascendingly/descendingly by this column. Use the up / down arrows keys to do so'\n : '';\n if (draggable && filterable) {\n message = `This column is draggable and filterable. To enable these interactions press the enter key. ${message}`;\n } else if (draggable || filterable) {\n message = `This column is ${\n draggable ? 'draggable' : 'filterable'\n }. To enable this interaction press the enter key. ${message}`;\n }\n return `${preffix}${message}`;\n};\n\ninterface HeaderCellCompProps {\n column: TypescriptColumn;\n isDragOverlay: boolean;\n colSpan: number;\n}\n\nfunction mapStateToProps(state, ownProps) {\n return {\n reduxHeader: state.headers?.[ownProps.column.id],\n };\n}\n\nconst connector = connect(mapStateToProps);\n\nconst HeaderCellComp: React.ComponentType<HeaderCellCompProps & ConnectedProps<typeof connector>> = (props) => {\n const { reduxHeader, column, isDragOverlay, colSpan } = props;\n const ctx = useContext(DataTableContext);\n const {\n tableProps: { isResizeable, onColumnSortChange, dragAndDropColumns, onFiltersChange, filters, textWrap },\n flattenedData,\n } = ctx;\n const { patchHeader } = useDispatchHeadersActions();\n const dragHandleRef = useRef<HTMLDivElement>(null);\n const filterIconRef = useRef<HTMLDivElement>(null);\n\n const { draggableProps } = useContext(SortableItemContext);\n\n const { hasFilter, hasDnD, hasSortingCaret, hasRightIcons, shouldShowDnD, hCols, isDragging } = useHeaderCellConfig({\n column,\n dragAndDropColumns,\n draggableProps,\n reduxHeader,\n isDragOverlay,\n });\n\n useRecoverFocusCol(isDragging, dragHandleRef);\n\n const rightIcons = useMemo(() => {\n if (!hasRightIcons) return null;\n return (\n <StyledHeaderRightIconsWrapper>\n <FilterMapItem\n column={column}\n ctx={ctx}\n onFiltersChange={onFiltersChange}\n reduxHeader={reduxHeader}\n filterValue={filters}\n innerRef={filterIconRef}\n />\n {hasSortingCaret && <SortByCaret isSortedDesc={column.isSortedDesc} />}\n </StyledHeaderRightIconsWrapper>\n );\n }, [hasRightIcons, column, ctx, onFiltersChange, reduxHeader, filters, hasSortingCaret]);\n\n const DnDHandleComponent = useMemo(\n () => (\n <Grid mr=\"2px\" alignItems=\"center\" style={{ position: 'relative' }}>\n <StyledFocusWithin hideFocus={isDragging}>\n <DnDHandle\n key={column.id}\n innerRef={dragHandleRef}\n isReachable={reduxHeader?.withTabStops}\n id={column.id}\n isDragOverlay={isDragOverlay}\n />\n </StyledFocusWithin>\n </Grid>\n ),\n [column.id, isDragOverlay, isDragging, reduxHeader?.withTabStops],\n );\n\n const handlers = useHeaderCellHandlers({\n hasFilter,\n patchHeader,\n column,\n reduxHeader,\n hasDnD,\n onColumnSortChange,\n dragHandleRef,\n filterIconRef,\n headerRef: column.ref,\n });\n\n return (\n <StyledHeadTh\n column={column}\n {...handlers}\n role={colSpan === 1 ? 'columnheader' : 'group'}\n colSpan={colSpan}\n aria-describedby={`${column.id}-instructions`}\n // eslint-disable-next-line no-nested-ternary\n aria-sort={hasSortingCaret ? (column.isSortedDesc ? 'descending' : 'ascending') : 'none'}\n data-testid={DATA_TESTID.DATA_TABLE_HEADER}\n isFirstRowGroup={!!flattenedData[0]?.original?.dimsumHeaderValue}\n tabIndex={column.isFocuseable === false ? -1 : 0}\n isDragOverlay={isDragOverlay}\n isDraggingActive={draggableProps && draggableProps.active}\n shouldShowDnD={shouldShowDnD}\n ref={column.ref}\n >\n <Grid width=\"100%\" cols={hCols}>\n {shouldShowDnD && DnDHandleComponent}\n <HeaderCellTitle column={column} ctx={ctx} draggableProps={draggableProps} textWrap={textWrap} />\n {rightIcons}\n {isResizeable && column.canResize !== false && <HeaderResizer column={column} />}\n </Grid>\n <span id={`${column.id}-instructions`} style={{ display: 'none' }} aria-hidden=\"false\">\n {buildScreenReaderInstructions(\n colSpan,\n dragAndDropColumns && column.disableDnD !== true,\n hasFilter,\n column.canSort,\n )}\n </span>\n </StyledHeadTh>\n );\n};\n\nexport const HeaderCell = connector(HeaderCellComp);\n"],
5
+ "mappings": "AAAA;ACIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AAEA,MAAM,gCAAgC,CAAC,SAAiB,WAAoB,YAAqB,aAAsB;AACrH,QAAM,UAAU,YAAY,IAAI,KAAK;AACrC,MAAI,CAAC,aAAa,CAAC,cAAc,CAAC;AAAU,WAAO;AAEnD,MAAI,UAAU,WACV,0GACA;AACJ,MAAI,aAAa,YAAY;AAC3B,cAAU,8FAA8F;AAAA,aAC/F,aAAa,YAAY;AAClC,cAAU,kBACR,YAAY,cAAc,iEACyB;AAAA;AAEvD,SAAO,GAAG,UAAU;AAAA;AAStB,yBAAyB,OAAO,UAAU;AACxC,SAAO;AAAA,IACL,aAAa,MAAM,UAAU,SAAS,OAAO;AAAA;AAAA;AAIjD,MAAM,YAAY,QAAQ;AAE1B,MAAM,iBAA8F,CAAC,UAAU;AAC7G,QAAM,EAAE,aAAa,QAAQ,eAAe,YAAY;AACxD,QAAM,MAAM,WAAW;AACvB,QAAM;AAAA,IACJ,YAAY,EAAE,cAAc,oBAAoB,oBAAoB,iBAAiB,SAAS;AAAA,IAC9F;AAAA,MACE;AACJ,QAAM,EAAE,gBAAgB;AACxB,QAAM,gBAAgB,OAAuB;AAC7C,QAAM,gBAAgB,OAAuB;AAE7C,QAAM,EAAE,mBAAmB,WAAW;AAEtC,QAAM,EAAE,WAAW,QAAQ,iBAAiB,eAAe,eAAe,OAAO,eAAe,oBAAoB;AAAA,IAClH;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA;AAGF,qBAAmB,YAAY;AAE/B,QAAM,aAAa,QAAQ,MAAM;AAC/B,QAAI,CAAC;AAAe,aAAO;AAC3B,WACE,qCAAC,+BAAD,MACE,qCAAC,eAAD;AAAA,MACE;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA,aAAa;AAAA,MACb,UAAU;AAAA,QAEX,mBAAmB,qCAAC,aAAD;AAAA,MAAa,cAAc,OAAO;AAAA;AAAA,KAGzD,CAAC,eAAe,QAAQ,KAAK,iBAAiB,aAAa,SAAS;AAEvE,QAAM,qBAAqB,QACzB,MACE,qCAAC,MAAD;AAAA,IAAM,IAAG;AAAA,IAAM,YAAW;AAAA,IAAS,OAAO,EAAE,UAAU;AAAA,KACpD,qCAAC,mBAAD;AAAA,IAAmB,WAAW;AAAA,KAC5B,qCAAC,WAAD;AAAA,IACE,KAAK,OAAO;AAAA,IACZ,UAAU;AAAA,IACV,aAAa,aAAa;AAAA,IAC1B,IAAI,OAAO;AAAA,IACX;AAAA,QAKR,CAAC,OAAO,IAAI,eAAe,YAAY,aAAa;AAGtD,QAAM,WAAW,sBAAsB;AAAA,IACrC;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,WAAW,OAAO;AAAA;AAGpB,SACE,qCAAC,cAAD;AAAA,IACE;AAAA,OACI;AAAA,IACJ,MAAM,YAAY,IAAI,iBAAiB;AAAA,IACvC;AAAA,IACA,oBAAkB,GAAG,OAAO;AAAA,IAE5B,aAAW,kBAAmB,OAAO,eAAe,eAAe,cAAe;AAAA,IAClF,eAAa,YAAY;AAAA,IACzB,iBAAiB,CAAC,CAAC,cAAc,IAAI,UAAU;AAAA,IAC/C,UAAU,OAAO,iBAAiB,QAAQ,KAAK;AAAA,IAC/C;AAAA,IACA,kBAAkB,kBAAkB,eAAe;AAAA,IACnD;AAAA,IACA,KAAK,OAAO;AAAA,KAEZ,qCAAC,MAAD;AAAA,IAAM,OAAM;AAAA,IAAO,MAAM;AAAA,KACtB,iBAAiB,oBAClB,qCAAC,iBAAD;AAAA,IAAiB;AAAA,IAAgB;AAAA,IAAU;AAAA,IAAgC;AAAA,MAC1E,YACA,gBAAgB,OAAO,cAAc,SAAS,qCAAC,eAAD;AAAA,IAAe;AAAA,OAEhE,qCAAC,QAAD;AAAA,IAAM,IAAI,GAAG,OAAO;AAAA,IAAmB,OAAO,EAAE,SAAS;AAAA,IAAU,eAAY;AAAA,KAC5E,8BACC,SACA,sBAAsB,OAAO,eAAe,MAC5C,WACA,OAAO;AAAA;AAOV,MAAM,aAAa,UAAU;",
6
+ "names": []
7
+ }