@elliemae/ds-data-table 2.2.1 → 2.3.0-alpha.4

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,210 +1,161 @@
1
- import _jsx from '@babel/runtime/helpers/esm/jsx';
2
- import _defineProperty from '@babel/runtime/helpers/esm/defineProperty';
3
- import 'core-js/modules/esnext.async-iterator.for-each.js';
4
- import 'core-js/modules/esnext.iterator.constructor.js';
5
- import 'core-js/modules/esnext.iterator.for-each.js';
6
- import 'core-js/modules/esnext.async-iterator.filter.js';
7
- import 'core-js/modules/esnext.iterator.filter.js';
8
- import { useMemo, useCallback } from 'react';
9
- import { ArrowheadDown, ArrowheadRight, ArrowShortReturn } from '@elliemae/ds-icons';
10
- import styled from 'styled-components';
11
- import { StyledFocusWithin } from '../../../styled.js';
12
- import { DATA_TESTID } from '../../../configs/constants.js';
13
- import 'core-js/modules/web.dom-collections.iterator.js';
14
- import 'core-js/modules/esnext.async-iterator.reduce.js';
15
- import 'core-js/modules/esnext.iterator.reduce.js';
16
- import 'react-virtual';
17
- import '../../../configs/useRowFlattenization.js';
18
- import 'core-js/modules/esnext.async-iterator.map.js';
19
- import 'core-js/modules/esnext.iterator.map.js';
20
- import '@elliemae/ds-form';
21
- import '../../../parts/TableContent.js';
22
- import '@elliemae/ds-grid';
23
- import '@elliemae/ds-circular-progress-indicator';
24
- import '@elliemae/ds-system';
25
- import '@elliemae/ds-button';
26
- import '../../../DataTableContext.js';
27
- import '../../../parts/Row.js';
28
- import '../../../parts/Footer.js';
29
- import '../../../parts/HoC/SortableItemContext.js';
30
- import { jsx } from 'react/jsx-runtime';
31
-
32
- 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; }
33
-
34
- 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; }
35
- const StyledSpan = /*#__PURE__*/styled.span.withConfig({
36
- componentId: "sc-1xp824d-0"
37
- })(["cursor:pointer;box-sizing:border-box;outline:none;display:flex;justify-content:center;align-items:center;"]);
1
+ import * as React from "react";
2
+ import React2, { useMemo, useCallback } from "react";
3
+ import { ArrowheadDown, ArrowheadRight, ArrowShortReturn } from "@elliemae/ds-icons";
4
+ import styled from "styled-components";
5
+ import { StyledFocusWithin } from "../../../styled";
6
+ import { DATA_TESTID } from "../../../configs/constants";
7
+ const StyledSpan = styled.span`
8
+ cursor: pointer;
9
+ box-sizing: border-box;
10
+ outline: none;
11
+ display: flex;
12
+ justify-content: center;
13
+ align-items: center;
14
+ `;
38
15
  const expandRowColumn = {
39
- // Build our expander column
40
- id: 'expander',
41
- // Make sure it has an ID
42
- accessor: 'expandRowColumn',
43
- Header: _ref => {
44
- let {
45
- ctx
46
- } = _ref;
16
+ id: "expander",
17
+ accessor: "expandRowColumn",
18
+ Header: ({ ctx }) => {
47
19
  const {
48
- tableProps: {
49
- expandedRows,
50
- onRowExpand
51
- },
20
+ tableProps: { expandedRows, onRowExpand },
52
21
  allDataFlattened
53
22
  } = ctx;
54
23
  const allExpandable = useMemo(() => {
55
24
  const expandable = {};
56
- allDataFlattened.forEach(row => {
57
- if (row.original.subRows || row.original.tableRowDetails || row.original.dimsumHeaderValue) expandable[row.uid] = true;
25
+ allDataFlattened.forEach((row) => {
26
+ if (row.original.subRows || row.original.tableRowDetails || row.original.dimsumHeaderValue)
27
+ expandable[row.uid] = true;
58
28
  });
59
29
  return expandable;
60
30
  }, [allDataFlattened]);
61
31
  const isAllRowsExpanded = useMemo(() => Object.keys(allExpandable).length === Object.keys(expandedRows).length, [allExpandable, expandedRows]);
62
32
  const onExpandedAllHandler = useCallback(() => {
63
- if (isAllRowsExpanded) onRowExpand({}, 'All');else onRowExpand(_objectSpread({}, allExpandable), 'All');
33
+ if (isAllRowsExpanded)
34
+ onRowExpand({}, "All");
35
+ else
36
+ onRowExpand({ ...allExpandable }, "All");
64
37
  }, [allExpandable, isAllRowsExpanded, onRowExpand]);
65
38
  const GlobalExpandIcon = useMemo(() => {
66
- if (isAllRowsExpanded) return /*#__PURE__*/_jsx(ArrowheadDown, {
67
- size: "s",
68
- color: ['brand-primary', '600'],
69
- "data-testid": DATA_TESTID.DATA_TABLE_ICON_ARROW_DOWN
70
- }); // Mixed
71
-
39
+ if (isAllRowsExpanded)
40
+ return /* @__PURE__ */ React2.createElement(ArrowheadDown, {
41
+ size: "s",
42
+ color: ["brand-primary", "600"],
43
+ "data-testid": DATA_TESTID.DATA_TABLE_ICON_ARROW_DOWN
44
+ });
72
45
  if (Object.keys(expandedRows).length) {
73
- return /*#__PURE__*/_jsx(ArrowheadRight, {
46
+ return /* @__PURE__ */ React2.createElement(ArrowheadRight, {
74
47
  size: "s",
75
- color: ['brand-primary', '600'],
48
+ color: ["brand-primary", "600"],
76
49
  "data-testid": DATA_TESTID.DATA_TABLE_ICON_ARROW_MIXED,
77
- style: {
78
- transform: 'rotate(45deg)'
79
- }
50
+ style: { transform: "rotate(45deg)" }
80
51
  });
81
52
  }
82
-
83
- return /*#__PURE__*/_jsx(ArrowheadRight, {
53
+ return /* @__PURE__ */ React2.createElement(ArrowheadRight, {
84
54
  size: "s",
85
- color: ['brand-primary', '600'],
55
+ color: ["brand-primary", "600"],
86
56
  "data-testid": DATA_TESTID.DATA_TABLE_ICON_ARROW_RIGHT
87
57
  });
88
58
  }, [expandedRows, isAllRowsExpanded]);
89
- return /*#__PURE__*/_jsx(StyledFocusWithin, {}, void 0, /*#__PURE__*/_jsx(StyledSpan, {
59
+ return /* @__PURE__ */ React2.createElement(StyledFocusWithin, null, /* @__PURE__ */ React2.createElement(StyledSpan, {
90
60
  role: "button",
91
61
  tabIndex: 0,
92
62
  title: "Toggle All Rows Expanded",
93
63
  onClick: onExpandedAllHandler,
94
- onKeyDown: e => {
95
- if (['Enter', 'Space'].includes(e.code)) {
64
+ onKeyDown: (e) => {
65
+ if (["Enter", "Space"].includes(e.code)) {
96
66
  onExpandedAllHandler();
97
67
  e.preventDefault();
98
68
  }
99
69
  },
100
70
  "data-testid": DATA_TESTID.DATA_TABLE_GLOBAL_EXPAND_CELL,
101
71
  "aria-expanded": isAllRowsExpanded,
102
- style: {
103
- width: '24px',
104
- height: '24px'
105
- }
106
- }, void 0, GlobalExpandIcon));
72
+ style: { width: "24px", height: "24px" }
73
+ }, GlobalExpandIcon));
107
74
  },
108
- Cell: _ref2 => {
109
- var _row$original$subRows;
110
-
111
- let {
112
- cell,
113
- row,
114
- isRowSelected,
115
- ctx,
116
- draggableProps
117
- } = _ref2;
75
+ Cell: ({ cell, row, isRowSelected, ctx, draggableProps }) => {
118
76
  const {
119
- tableProps: {
120
- dragAndDropRows,
121
- expandedRows,
122
- onRowExpand
123
- }
77
+ tableProps: { dragAndDropRows, expandedRows, onRowExpand }
124
78
  } = ctx;
125
79
  const uniqueId = row.uid;
126
80
  const isExpanded = expandedRows[uniqueId];
127
- const shouldPrintCaret = ((_row$original$subRows = row.original.subRows) === null || _row$original$subRows === void 0 ? void 0 : _row$original$subRows.length) && row.depth === 0 || // only allows 1 level of expands
128
- row.original.tableRowDetails || row.original.dimsumHeaderValue;
129
- const onRowExpandHandler = useCallback(e => {
81
+ const shouldPrintCaret = row.original.subRows?.length && row.depth === 0 || row.original.tableRowDetails || row.original.dimsumHeaderValue;
82
+ const onRowExpandHandler = useCallback((e) => {
130
83
  e.stopPropagation();
131
-
132
84
  if (expandedRows[uniqueId]) {
133
85
  delete expandedRows[uniqueId];
134
86
  } else {
135
87
  expandedRows[uniqueId] = true;
136
88
  }
137
-
138
- onRowExpand(_objectSpread({}, expandedRows), uniqueId);
89
+ onRowExpand({ ...expandedRows }, uniqueId);
139
90
  }, [expandedRows, uniqueId, onRowExpand]);
140
91
  const isDragging = draggableProps ? draggableProps.isDragging : false;
141
92
  const isDragOverlay = dragAndDropRows && !draggableProps;
142
93
  const indentStyle = useMemo(() => ({
143
- marginLeft: "".concat(row.depth * 32, "px"),
144
- marginRight: '18px',
145
- paddingLeft: '2px',
146
- paddingRight: '2px',
147
- position: 'relative',
148
- height: '100%',
149
- display: 'flex',
150
- alignItems: 'center'
94
+ marginLeft: `${row.depth * 32}px`,
95
+ marginRight: "18px",
96
+ paddingLeft: "2px",
97
+ paddingRight: "2px",
98
+ position: "relative",
99
+ height: "100%",
100
+ display: "flex",
101
+ alignItems: "center"
151
102
  }), [row.depth]);
152
103
  const rowProps = useMemo(() => ({
153
- role: 'button',
154
- key: "".concat(row.uid, "-expand-button"),
155
- title: 'Toggle Row Expanded',
104
+ role: "button",
105
+ key: `${row.uid}-expand-button`,
106
+ title: "Toggle Row Expanded",
156
107
  onClick: onRowExpandHandler,
157
- onKeyDown: e => {
158
- if (['Enter', 'Space'].includes(e.code)) {
108
+ onKeyDown: (e) => {
109
+ if (["Enter", "Space"].includes(e.code)) {
159
110
  e.preventDefault();
160
111
  onRowExpandHandler(e);
161
112
  }
162
113
  },
163
114
  ref: cell.ref,
164
115
  tabIndex: isRowSelected ? 0 : -1,
165
- 'data-testid': 'data-table-row-expand-cell',
166
- 'aria-expanded': isExpanded,
116
+ "data-testid": "data-table-row-expand-cell",
117
+ "aria-expanded": isExpanded,
167
118
  isRightArrow: !isExpanded || isDragging || isDragOverlay
168
119
  }), [row.uid, onRowExpandHandler, cell.ref, isRowSelected, isExpanded, isDragging, isDragOverlay]);
169
- const PureCaretIcon = useMemo(() => isExpanded && !isDragging && !isDragOverlay ? /*#__PURE__*/_jsx(ArrowheadDown, {
120
+ const PureCaretIcon = useMemo(() => isExpanded && !isDragging && !isDragOverlay ? /* @__PURE__ */ React2.createElement(ArrowheadDown, {
170
121
  "data-is-col-expanded": isExpanded,
171
122
  "data-role": "row-expander-col",
172
123
  size: "s",
173
124
  "data-testid": DATA_TESTID.DATA_TABLE_ICON_ARROW_DOWN
174
- }) : /*#__PURE__*/_jsx(ArrowheadRight, {
125
+ }) : /* @__PURE__ */ React2.createElement(ArrowheadRight, {
175
126
  "data-is-col-expanded": isExpanded,
176
127
  "data-role": "row-expander-col",
177
128
  size: "s",
178
129
  "data-testid": DATA_TESTID.DATA_TABLE_ICON_ARROW_RIGHT
179
130
  }), [isExpanded, isDragging, isDragOverlay]);
180
- const ChildIcon = useMemo(() => /*#__PURE__*/_jsx(ArrowShortReturn, {
131
+ const ChildIcon = useMemo(() => /* @__PURE__ */ React2.createElement(ArrowShortReturn, {
181
132
  size: "s",
182
133
  "data-testid": DATA_TESTID.DATA_TABLE_ICON_CHILD,
183
- style: {
184
- transform: 'rotate(90deg) scaleY(-1)'
185
- },
186
- color: ['brand-primary', '600']
134
+ style: { transform: "rotate(90deg) scaleY(-1)" },
135
+ color: ["brand-primary", "600"]
187
136
  }), []);
188
- if (shouldPrintCaret) return /*#__PURE__*/_jsx(StyledFocusWithin, {
189
- style: indentStyle
190
- }, void 0, /*#__PURE__*/jsx(StyledSpan, _objectSpread(_objectSpread({}, rowProps), {}, {
191
- children: PureCaretIcon
192
- })));
193
- if (row.depth !== 0) return /*#__PURE__*/_jsx("span", {
194
- style: indentStyle
195
- }, void 0, ChildIcon);
196
- return /*#__PURE__*/_jsx("div", {
197
- style: {
198
- width: '36px'
199
- }
137
+ if (shouldPrintCaret)
138
+ return /* @__PURE__ */ React2.createElement(StyledFocusWithin, {
139
+ style: indentStyle
140
+ }, /* @__PURE__ */ React2.createElement(StyledSpan, {
141
+ ...rowProps
142
+ }, PureCaretIcon));
143
+ if (row.depth !== 0)
144
+ return /* @__PURE__ */ React2.createElement("span", {
145
+ style: indentStyle
146
+ }, ChildIcon);
147
+ return /* @__PURE__ */ React2.createElement("div", {
148
+ style: { width: "36px" }
200
149
  });
201
150
  },
202
- textWrap: 'wrap',
151
+ textWrap: "wrap",
203
152
  canResize: false,
204
153
  width: 25,
205
154
  padding: 0,
206
155
  isFocuseable: false,
207
156
  disableDnD: true
208
157
  };
209
-
210
- export { expandRowColumn };
158
+ export {
159
+ expandRowColumn
160
+ };
161
+ //# sourceMappingURL=ColumnExpand.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../../../scripts/build/transpile/react-shim.js", "../../../../../src/addons/Columns/ColumnExpand/ColumnExpand.tsx"],
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable react/prop-types */\n/* eslint-disable max-lines */\nimport React, { useMemo, useCallback } from 'react';\nimport { ArrowheadDown, ArrowheadRight, ArrowShortReturn } from '@elliemae/ds-icons';\nimport * as CSS from 'csstype';\nimport styled from 'styled-components';\nimport { TypescriptColumn } from '../../../types/props';\nimport { StyledFocusWithin } from '../../../styled';\nimport { DATA_TESTID } from '../../../configs/constants';\n\nconst StyledSpan = styled.span`\n cursor: pointer;\n box-sizing: border-box;\n outline: none;\n display: flex;\n justify-content: center;\n align-items: center;\n`;\n\nexport const expandRowColumn: TypescriptColumn = {\n // Build our expander column\n id: 'expander', // Make sure it has an ID\n accessor: 'expandRowColumn',\n Header: ({ ctx }) => {\n const {\n tableProps: { expandedRows, onRowExpand },\n allDataFlattened,\n } = ctx;\n\n const allExpandable = useMemo(() => {\n const expandable = {};\n allDataFlattened.forEach((row) => {\n if (row.original.subRows || row.original.tableRowDetails || row.original.dimsumHeaderValue)\n expandable[row.uid] = true;\n });\n return expandable;\n }, [allDataFlattened]);\n\n const isAllRowsExpanded = useMemo(\n () => Object.keys(allExpandable).length === Object.keys(expandedRows).length,\n [allExpandable, expandedRows],\n );\n\n const onExpandedAllHandler = useCallback(() => {\n if (isAllRowsExpanded) onRowExpand({}, 'All');\n else onRowExpand({ ...allExpandable }, 'All');\n }, [allExpandable, isAllRowsExpanded, onRowExpand]);\n\n const GlobalExpandIcon = useMemo(() => {\n if (isAllRowsExpanded)\n return (\n <ArrowheadDown\n size=\"s\"\n color={['brand-primary', '600']}\n data-testid={DATA_TESTID.DATA_TABLE_ICON_ARROW_DOWN}\n />\n );\n\n // Mixed\n if (Object.keys(expandedRows).length) {\n return (\n <ArrowheadRight\n size=\"s\"\n color={['brand-primary', '600']}\n data-testid={DATA_TESTID.DATA_TABLE_ICON_ARROW_MIXED}\n style={{ transform: 'rotate(45deg)' }}\n />\n );\n }\n return (\n <ArrowheadRight\n size=\"s\"\n color={['brand-primary', '600']}\n data-testid={DATA_TESTID.DATA_TABLE_ICON_ARROW_RIGHT}\n />\n );\n }, [expandedRows, isAllRowsExpanded]);\n\n return (\n <StyledFocusWithin>\n <StyledSpan\n role=\"button\"\n tabIndex={0}\n title=\"Toggle All Rows Expanded\"\n onClick={onExpandedAllHandler}\n onKeyDown={(e) => {\n if (['Enter', 'Space'].includes(e.code)) {\n onExpandedAllHandler();\n e.preventDefault();\n }\n }}\n data-testid={DATA_TESTID.DATA_TABLE_GLOBAL_EXPAND_CELL}\n aria-expanded={isAllRowsExpanded}\n style={{ width: '24px', height: '24px' }}\n >\n {GlobalExpandIcon}\n </StyledSpan>\n </StyledFocusWithin>\n );\n },\n Cell: ({ cell, row, isRowSelected, ctx, draggableProps }) => {\n const {\n tableProps: { dragAndDropRows, expandedRows, onRowExpand },\n } = ctx;\n\n const uniqueId = row.uid;\n\n const isExpanded = expandedRows[uniqueId];\n\n const shouldPrintCaret =\n (row.original.subRows?.length && row.depth === 0) || // only allows 1 level of expands\n row.original.tableRowDetails ||\n row.original.dimsumHeaderValue;\n\n const onRowExpandHandler = useCallback(\n (e) => {\n e.stopPropagation();\n if (expandedRows[uniqueId]) {\n delete expandedRows[uniqueId];\n } else {\n expandedRows[uniqueId] = true;\n }\n onRowExpand({ ...expandedRows }, uniqueId);\n },\n [expandedRows, uniqueId, onRowExpand],\n );\n\n const isDragging = draggableProps ? draggableProps.isDragging : false;\n const isDragOverlay = dragAndDropRows && !draggableProps;\n\n const indentStyle: CSS.Properties = useMemo(\n () => ({\n marginLeft: `${row.depth * 32}px`,\n marginRight: '18px',\n paddingLeft: '2px',\n paddingRight: '2px',\n position: 'relative',\n height: '100%',\n display: 'flex',\n alignItems: 'center',\n }),\n [row.depth],\n );\n\n const rowProps = useMemo(\n () => ({\n role: 'button',\n key: `${row.uid}-expand-button`,\n title: 'Toggle Row Expanded',\n onClick: onRowExpandHandler,\n onKeyDown: (e) => {\n if (['Enter', 'Space'].includes(e.code)) {\n e.preventDefault();\n onRowExpandHandler(e);\n }\n },\n ref: cell.ref,\n tabIndex: isRowSelected ? 0 : -1,\n 'data-testid': 'data-table-row-expand-cell',\n 'aria-expanded': isExpanded,\n isRightArrow: !isExpanded || isDragging || isDragOverlay,\n }),\n [row.uid, onRowExpandHandler, cell.ref, isRowSelected, isExpanded, isDragging, isDragOverlay],\n );\n\n const PureCaretIcon = useMemo(\n () =>\n isExpanded && !isDragging && !isDragOverlay ? (\n <ArrowheadDown\n data-is-col-expanded={isExpanded}\n data-role=\"row-expander-col\"\n size=\"s\"\n data-testid={DATA_TESTID.DATA_TABLE_ICON_ARROW_DOWN}\n />\n ) : (\n <ArrowheadRight\n data-is-col-expanded={isExpanded}\n data-role=\"row-expander-col\"\n size=\"s\"\n data-testid={DATA_TESTID.DATA_TABLE_ICON_ARROW_RIGHT}\n />\n ),\n [isExpanded, isDragging, isDragOverlay],\n );\n\n const ChildIcon = useMemo(\n () => (\n <ArrowShortReturn\n size=\"s\"\n data-testid={DATA_TESTID.DATA_TABLE_ICON_CHILD}\n style={{ transform: 'rotate(90deg) scaleY(-1)' }}\n color={['brand-primary', '600']}\n />\n ),\n [],\n );\n\n if (shouldPrintCaret)\n return (\n <StyledFocusWithin style={indentStyle}>\n <StyledSpan {...rowProps}>{PureCaretIcon}</StyledSpan>\n </StyledFocusWithin>\n );\n if (row.depth !== 0) return <span style={indentStyle}>{ChildIcon}</span>;\n\n return <div style={{ width: '36px' }} />;\n },\n textWrap: 'wrap',\n canResize: false,\n width: 25,\n padding: 0,\n isFocuseable: false,\n disableDnD: true,\n};\n"],
5
+ "mappings": "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",
6
+ "names": []
7
+ }
@@ -1,141 +1,79 @@
1
- import _defineProperty from '@babel/runtime/helpers/esm/defineProperty';
2
- import _jsx from '@babel/runtime/helpers/esm/jsx';
3
- import 'core-js/modules/esnext.async-iterator.for-each.js';
4
- import 'core-js/modules/esnext.iterator.constructor.js';
5
- import 'core-js/modules/esnext.iterator.for-each.js';
6
- import 'core-js/modules/esnext.async-iterator.filter.js';
7
- import 'core-js/modules/esnext.iterator.filter.js';
8
- import { useMemo, useCallback } from 'react';
9
- import { DSCheckbox } from '@elliemae/ds-form';
10
- import { DATA_TESTID } from '../../../configs/constants.js';
11
- import 'core-js/modules/web.dom-collections.iterator.js';
12
- import 'core-js/modules/esnext.async-iterator.reduce.js';
13
- import 'core-js/modules/esnext.iterator.reduce.js';
14
- import 'react-virtual';
15
- import '../../../configs/useRowFlattenization.js';
16
- import 'core-js/modules/esnext.async-iterator.map.js';
17
- import 'core-js/modules/esnext.iterator.map.js';
18
- import '@elliemae/ds-icons';
19
- import 'styled-components';
20
- import '../../../styled.js';
21
- import 'react/jsx-runtime';
22
- import '../../../parts/TableContent.js';
23
- import '@elliemae/ds-grid';
24
- import '@elliemae/ds-circular-progress-indicator';
25
- import '@elliemae/ds-system';
26
- import '@elliemae/ds-button';
27
- import '../../../DataTableContext.js';
28
- import '../../../parts/Row.js';
29
- import '../../../parts/Footer.js';
30
- import '../../../parts/HoC/SortableItemContext.js';
31
-
32
- 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; }
33
-
34
- 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, { useMemo, useCallback } from "react";
3
+ import { DSCheckbox } from "@elliemae/ds-form";
4
+ import { DATA_TESTID } from "../../../configs/constants";
35
5
  const multiSelectColumn = {
36
- // Build our multiSelecter column
37
- id: 'multiSelecter',
38
- // Make sure it has an ID
39
- Header: _ref => {
40
- let {
41
- ctx
42
- } = _ref;
6
+ id: "multiSelecter",
7
+ Header: ({ ctx }) => {
43
8
  const {
44
- tableProps: {
45
- onSelectionChange,
46
- selection,
47
- data,
48
- disabledRows
49
- },
9
+ tableProps: { onSelectionChange, selection, data, disabledRows },
50
10
  allDataFlattened
51
11
  } = ctx;
52
12
  const selectionKeyCount = Object.keys(selection).length;
53
- const currentGlobalState = useMemo(() => selectionKeyCount > 0 && selectionKeyCount < data.length ? 'mixed' : selectionKeyCount > 0, [selectionKeyCount, data]);
13
+ const currentGlobalState = useMemo(() => selectionKeyCount > 0 && selectionKeyCount < data.length ? "mixed" : selectionKeyCount > 0, [selectionKeyCount, data]);
54
14
  const newGlobalStateAfterToggle = useMemo(() => {
55
- // false -- toggles into --> true
56
- // mixed -- toggles into --> true
57
- // true -- toggles into --> false
58
15
  let newState = false;
59
- if (currentGlobalState === false || currentGlobalState === 'mixed') newState = true;
16
+ if (currentGlobalState === false || currentGlobalState === "mixed")
17
+ newState = true;
60
18
  return newState;
61
19
  }, [currentGlobalState]);
62
20
  const newSelection = useMemo(() => {
63
21
  if (newGlobalStateAfterToggle) {
64
22
  const nextSelection = {};
65
- allDataFlattened.forEach(datum => {
23
+ allDataFlattened.forEach((datum) => {
66
24
  nextSelection[datum.uid] = !disabledRows[datum.uid];
67
25
  });
68
26
  return nextSelection;
69
27
  }
70
-
71
28
  return {};
72
29
  }, [newGlobalStateAfterToggle, allDataFlattened, disabledRows]);
73
- const onChangeHandler = useCallback(e => {
74
- onSelectionChange(newSelection, 'All', e);
30
+ const onChangeHandler = useCallback((e) => {
31
+ onSelectionChange(newSelection, "All", e);
75
32
  }, [newSelection, onSelectionChange]);
76
- const PureHeaderCheckbox = useMemo(() => /*#__PURE__*/_jsx(DSCheckbox, {
33
+ const PureHeaderCheckbox = useMemo(() => /* @__PURE__ */ React2.createElement(DSCheckbox, {
77
34
  "data-testid": DATA_TESTID.DATA_TABLE_GLOBAL_CHECKBOX,
78
35
  title: "Toggle All Rows Selected",
79
36
  checked: currentGlobalState,
80
37
  onChange: onChangeHandler,
81
38
  tabIndex: "0",
82
- style: {
83
- cursor: 'pointer'
84
- }
39
+ style: { cursor: "pointer" }
85
40
  }), [currentGlobalState, onChangeHandler]);
86
41
  return PureHeaderCheckbox;
87
42
  },
88
- Cell: _ref2 => {
89
- let {
90
- cell,
91
- row,
92
- isRowSelected,
93
- ctx
94
- } = _ref2;
43
+ Cell: ({ cell, row, isRowSelected, ctx }) => {
95
44
  const {
96
- tableProps: {
97
- onSelectionChange,
98
- selection,
99
- disabledRows
100
- }
45
+ tableProps: { onSelectionChange, selection, disabledRows }
101
46
  } = ctx;
102
- const {
103
- uid
104
- } = row;
105
- const selectedState = selection === null || selection === void 0 ? void 0 : selection[uid];
106
- const PureCheckboxCell = useMemo(() => /*#__PURE__*/_jsx(DSCheckbox, {
47
+ const { uid } = row;
48
+ const selectedState = selection?.[uid];
49
+ const PureCheckboxCell = useMemo(() => /* @__PURE__ */ React2.createElement(DSCheckbox, {
107
50
  "data-testid": DATA_TESTID.DATA_TABLE_CHECKBOX,
108
51
  title: "Toggle Row Selected",
109
52
  "aria-checked": selectedState,
110
53
  "aria-disabled": false,
111
54
  checked: selectedState,
112
- onChange: e => {
55
+ onChange: (e) => {
113
56
  const newState = !selectedState;
114
-
115
- const newSelection = _objectSpread(_objectSpread({}, selection), {}, {
116
- [uid]: newState
117
- }); // we only want true and mixed values
118
-
119
-
120
- if (!newState) delete newSelection[uid]; // if newState is false, remove from the new selection
121
-
57
+ const newSelection = { ...selection, [uid]: newState };
58
+ if (!newState)
59
+ delete newSelection[uid];
122
60
  onSelectionChange(newSelection, uid, e);
123
61
  },
124
62
  disabled: disabledRows[row.uid],
125
63
  innerRef: cell.ref,
126
64
  tabIndex: isRowSelected ? 0 : -1,
127
- style: {
128
- cursor: 'pointer'
129
- }
65
+ style: { cursor: "pointer" }
130
66
  }), [selectedState, disabledRows, row.uid, cell.ref, isRowSelected, selection, uid, onSelectionChange]);
131
67
  return PureCheckboxCell;
132
68
  },
133
- textWrap: 'wrap',
69
+ textWrap: "wrap",
134
70
  width: 32,
135
71
  padding: 7,
136
72
  canResize: false,
137
73
  isFocuseable: false,
138
74
  disableDnD: true
139
75
  };
140
-
141
- export { multiSelectColumn };
76
+ export {
77
+ multiSelectColumn
78
+ };
79
+ //# sourceMappingURL=ColumnSelectMultiple.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../../../scripts/build/transpile/react-shim.js", "../../../../../src/addons/Columns/ColumnSelectMultiple/ColumnSelectMultiple.tsx"],
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React, { useMemo, useCallback } from 'react';\nimport { DSCheckbox } from '@elliemae/ds-form';\nimport { TypescriptColumn } from '../../../types/props';\nimport { DATA_TESTID } from '../../../configs/constants';\n\nexport const multiSelectColumn: TypescriptColumn = {\n // Build our multiSelecter column\n id: 'multiSelecter', // Make sure it has an ID\n Header: ({ ctx }) => {\n const {\n tableProps: { onSelectionChange, selection, data, disabledRows },\n allDataFlattened,\n } = ctx;\n\n const selectionKeyCount = Object.keys(selection).length;\n\n const currentGlobalState = useMemo(\n () => (selectionKeyCount > 0 && selectionKeyCount < data.length ? 'mixed' : selectionKeyCount > 0),\n [selectionKeyCount, data],\n );\n\n const newGlobalStateAfterToggle = useMemo(() => {\n // false -- toggles into --> true\n // mixed -- toggles into --> true\n // true -- toggles into --> false\n let newState = false;\n if (currentGlobalState === false || currentGlobalState === 'mixed') newState = true;\n return newState;\n }, [currentGlobalState]);\n\n const newSelection = useMemo(() => {\n if (newGlobalStateAfterToggle) {\n const nextSelection = {};\n allDataFlattened.forEach((datum) => {\n nextSelection[datum.uid] = !disabledRows[datum.uid];\n });\n return nextSelection;\n }\n return {};\n }, [newGlobalStateAfterToggle, allDataFlattened, disabledRows]);\n\n const onChangeHandler = useCallback(\n (e) => {\n onSelectionChange(newSelection, 'All', e);\n },\n [newSelection, onSelectionChange],\n );\n\n const PureHeaderCheckbox = useMemo(\n () => (\n <DSCheckbox\n data-testid={DATA_TESTID.DATA_TABLE_GLOBAL_CHECKBOX}\n title=\"Toggle All Rows Selected\"\n checked={currentGlobalState}\n onChange={onChangeHandler}\n tabIndex=\"0\"\n style={{ cursor: 'pointer' }}\n />\n ),\n [currentGlobalState, onChangeHandler],\n );\n return PureHeaderCheckbox;\n },\n Cell: ({ cell, row, isRowSelected, ctx }) => {\n const {\n tableProps: { onSelectionChange, selection, disabledRows },\n } = ctx;\n const { uid } = row;\n const selectedState = selection?.[uid];\n const PureCheckboxCell = useMemo(\n () => (\n <DSCheckbox\n data-testid={DATA_TESTID.DATA_TABLE_CHECKBOX}\n title=\"Toggle Row Selected\"\n aria-checked={selectedState}\n aria-disabled={false}\n checked={selectedState}\n onChange={(e) => {\n const newState = !selectedState;\n const newSelection = { ...selection, [uid]: newState }; // we only want true and mixed values\n if (!newState) delete newSelection[uid]; // if newState is false, remove from the new selection\n onSelectionChange(newSelection, uid, e);\n }}\n disabled={disabledRows[row.uid]}\n innerRef={cell.ref}\n tabIndex={isRowSelected ? 0 : -1}\n style={{ cursor: 'pointer' }}\n />\n ),\n [selectedState, disabledRows, row.uid, cell.ref, isRowSelected, selection, uid, onSelectionChange],\n );\n return PureCheckboxCell;\n },\n textWrap: 'wrap',\n width: 32,\n padding: 7,\n canResize: false,\n isFocuseable: false,\n disableDnD: true,\n};\n"],
5
+ "mappings": "AAAA;ACAA;AACA;AAEA;AAEO,MAAM,oBAAsC;AAAA,EAEjD,IAAI;AAAA,EACJ,QAAQ,CAAC,EAAE,UAAU;AACnB,UAAM;AAAA,MACJ,YAAY,EAAE,mBAAmB,WAAW,MAAM;AAAA,MAClD;AAAA,QACE;AAEJ,UAAM,oBAAoB,OAAO,KAAK,WAAW;AAEjD,UAAM,qBAAqB,QACzB,MAAO,oBAAoB,KAAK,oBAAoB,KAAK,SAAS,UAAU,oBAAoB,GAChG,CAAC,mBAAmB;AAGtB,UAAM,4BAA4B,QAAQ,MAAM;AAI9C,UAAI,WAAW;AACf,UAAI,uBAAuB,SAAS,uBAAuB;AAAS,mBAAW;AAC/E,aAAO;AAAA,OACN,CAAC;AAEJ,UAAM,eAAe,QAAQ,MAAM;AACjC,UAAI,2BAA2B;AAC7B,cAAM,gBAAgB;AACtB,yBAAiB,QAAQ,CAAC,UAAU;AAClC,wBAAc,MAAM,OAAO,CAAC,aAAa,MAAM;AAAA;AAEjD,eAAO;AAAA;AAET,aAAO;AAAA,OACN,CAAC,2BAA2B,kBAAkB;AAEjD,UAAM,kBAAkB,YACtB,CAAC,MAAM;AACL,wBAAkB,cAAc,OAAO;AAAA,OAEzC,CAAC,cAAc;AAGjB,UAAM,qBAAqB,QACzB,MACE,qCAAC,YAAD;AAAA,MACE,eAAa,YAAY;AAAA,MACzB,OAAM;AAAA,MACN,SAAS;AAAA,MACT,UAAU;AAAA,MACV,UAAS;AAAA,MACT,OAAO,EAAE,QAAQ;AAAA,QAGrB,CAAC,oBAAoB;AAEvB,WAAO;AAAA;AAAA,EAET,MAAM,CAAC,EAAE,MAAM,KAAK,eAAe,UAAU;AAC3C,UAAM;AAAA,MACJ,YAAY,EAAE,mBAAmB,WAAW;AAAA,QAC1C;AACJ,UAAM,EAAE,QAAQ;AAChB,UAAM,gBAAgB,YAAY;AAClC,UAAM,mBAAmB,QACvB,MACE,qCAAC,YAAD;AAAA,MACE,eAAa,YAAY;AAAA,MACzB,OAAM;AAAA,MACN,gBAAc;AAAA,MACd,iBAAe;AAAA,MACf,SAAS;AAAA,MACT,UAAU,CAAC,MAAM;AACf,cAAM,WAAW,CAAC;AAClB,cAAM,eAAe,KAAK,YAAY,MAAM;AAC5C,YAAI,CAAC;AAAU,iBAAO,aAAa;AACnC,0BAAkB,cAAc,KAAK;AAAA;AAAA,MAEvC,UAAU,aAAa,IAAI;AAAA,MAC3B,UAAU,KAAK;AAAA,MACf,UAAU,gBAAgB,IAAI;AAAA,MAC9B,OAAO,EAAE,QAAQ;AAAA,QAGrB,CAAC,eAAe,cAAc,IAAI,KAAK,KAAK,KAAK,eAAe,WAAW,KAAK;AAElF,WAAO;AAAA;AAAA,EAET,UAAU;AAAA,EACV,OAAO;AAAA,EACP,SAAS;AAAA,EACT,WAAW;AAAA,EACX,cAAc;AAAA,EACd,YAAY;AAAA;",
6
+ "names": []
7
+ }
@@ -1,78 +1,37 @@
1
- import _jsx from '@babel/runtime/helpers/esm/jsx';
2
- import { useMemo } from 'react';
3
- import { DSRadio } from '@elliemae/ds-form';
4
- import styled from 'styled-components';
5
- import { DATA_TESTID } from '../../../configs/constants.js';
6
- import 'core-js/modules/esnext.async-iterator.filter.js';
7
- import 'core-js/modules/esnext.iterator.constructor.js';
8
- import 'core-js/modules/esnext.iterator.filter.js';
9
- import 'core-js/modules/web.dom-collections.iterator.js';
10
- import 'core-js/modules/esnext.async-iterator.reduce.js';
11
- import 'core-js/modules/esnext.iterator.reduce.js';
12
- import 'react-virtual';
13
- import 'core-js/modules/esnext.async-iterator.for-each.js';
14
- import 'core-js/modules/esnext.iterator.for-each.js';
15
- import '../../../configs/useRowFlattenization.js';
16
- import '@babel/runtime/helpers/esm/defineProperty';
17
- import 'core-js/modules/esnext.async-iterator.map.js';
18
- import 'core-js/modules/esnext.iterator.map.js';
19
- import '@elliemae/ds-icons';
20
- import '../../../styled.js';
21
- import 'react/jsx-runtime';
22
- import '../../../parts/TableContent.js';
23
- import '@elliemae/ds-grid';
24
- import '@elliemae/ds-circular-progress-indicator';
25
- import '@elliemae/ds-system';
26
- import '@elliemae/ds-button';
27
- import '../../../DataTableContext.js';
28
- import '../../../parts/Row.js';
29
- import '../../../parts/Footer.js';
30
- import '../../../parts/HoC/SortableItemContext.js';
31
-
32
- var _div;
33
- const CenteredContent = /*#__PURE__*/styled.div.withConfig({
34
- componentId: "sc-1u47u8g-0"
35
- })(["display:flex;height:100%;width:100%;justify-content:center;align-items:center;"]);
36
- const StyledDSRadio = /*#__PURE__*/styled(DSRadio).withConfig({
37
- componentId: "sc-1u47u8g-1"
38
- })(["padding-bottom:0;cursor:pointer;"]);
1
+ import * as React from "react";
2
+ import React2, { useMemo } from "react";
3
+ import { DSRadio } from "@elliemae/ds-form";
4
+ import styled from "styled-components";
5
+ import { DATA_TESTID } from "../../../configs/constants";
6
+ const CenteredContent = styled.div`
7
+ display: flex;
8
+ height: 100%;
9
+ width: 100%;
10
+ justify-content: center;
11
+ align-items: center;
12
+ `;
13
+ const StyledDSRadio = styled(DSRadio)`
14
+ padding-bottom: 0;
15
+ cursor: pointer;
16
+ `;
39
17
  const singleSelectColumn = {
40
- // Build our singleSelecter column
41
- id: 'singleSelecter',
42
- // Make sure it has an ID
43
- // The header doesn't need anything for single selection
44
- Header: () => _div || (_div = /*#__PURE__*/_jsx("div", {})),
45
- Cell: _ref => {
46
- let {
47
- cell,
48
- row,
49
- isRowSelected,
50
- ctx
51
- } = _ref;
18
+ id: "singleSelecter",
19
+ Header: () => /* @__PURE__ */ React2.createElement("div", null),
20
+ Cell: ({ cell, row, isRowSelected, ctx }) => {
52
21
  const {
53
- tableProps: {
54
- onSelectionChange,
55
- selection,
56
- disabledRows
57
- }
22
+ tableProps: { onSelectionChange, selection, disabledRows }
58
23
  } = ctx;
59
- const {
60
- uid
61
- } = row;
62
- const selectedState = selection === null || selection === void 0 ? void 0 : selection[uid];
63
- const PureCheckBox = useMemo(() => /*#__PURE__*/_jsx(CenteredContent, {}, void 0, /*#__PURE__*/_jsx(StyledDSRadio // eslint-disable-next-line react/prop-types
64
- , {
24
+ const { uid } = row;
25
+ const selectedState = selection?.[uid];
26
+ const PureCheckBox = useMemo(() => /* @__PURE__ */ React2.createElement(CenteredContent, null, /* @__PURE__ */ React2.createElement(StyledDSRadio, {
65
27
  containerProps: {
66
- 'aria-checked': selectedState,
67
- 'aria-disabled': false,
68
- title: 'Toggle Row Selected'
28
+ "aria-checked": selectedState,
29
+ "aria-disabled": false,
30
+ title: "Toggle Row Selected"
69
31
  },
70
32
  checked: selectedState,
71
33
  onChange: () => {
72
- // in single select we only allow one item to be selected
73
- onSelectionChange(!selectedState ? {
74
- [uid]: !selectedState
75
- } : {});
34
+ onSelectionChange(!selectedState ? { [uid]: !selectedState } : {});
76
35
  },
77
36
  "data-testid": DATA_TESTID.DATA_TABLE_RADIO,
78
37
  disabled: disabledRows[row.uid],
@@ -82,12 +41,14 @@ const singleSelectColumn = {
82
41
  })), [selectedState, disabledRows, row.uid, cell.ref, isRowSelected, onSelectionChange, uid]);
83
42
  return PureCheckBox;
84
43
  },
85
- textWrap: 'wrap',
44
+ textWrap: "wrap",
86
45
  width: 32,
87
46
  padding: 4,
88
47
  canResize: false,
89
48
  isFocuseable: false,
90
49
  disableDnD: true
91
50
  };
92
-
93
- export { singleSelectColumn };
51
+ export {
52
+ singleSelectColumn
53
+ };
54
+ //# sourceMappingURL=ColumnSelectSingle.js.map