@elliemae/ds-datagrids 3.16.0-next.2 → 3.16.0-next.20

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 (468) hide show
  1. package/dist/cjs/DSDataGrid.js +392 -241
  2. package/dist/cjs/DSDataGrid.js.map +2 -2
  3. package/dist/cjs/DataGridImpl.js +15 -11
  4. package/dist/cjs/DataGridImpl.js.map +2 -2
  5. package/dist/cjs/PaginatedDataGrid.js +13 -9
  6. package/dist/cjs/PaginatedDataGrid.js.map +2 -2
  7. package/dist/cjs/blockNames.js +4 -0
  8. package/dist/cjs/blockNames.js.map +1 -1
  9. package/dist/cjs/columns/IconColumn.js +4 -0
  10. package/dist/cjs/columns/IconColumn.js.map +1 -1
  11. package/dist/cjs/columns/NumberColumn.js +4 -0
  12. package/dist/cjs/columns/NumberColumn.js.map +1 -1
  13. package/dist/cjs/components/BodyCell.js +6 -0
  14. package/dist/cjs/components/BodyCell.js.map +1 -1
  15. package/dist/cjs/components/BodyList.js +7 -5
  16. package/dist/cjs/components/BodyList.js.map +2 -2
  17. package/dist/cjs/components/ColumnVisibilityMenuOption.js +5 -6
  18. package/dist/cjs/components/ColumnVisibilityMenuOption.js.map +2 -2
  19. package/dist/cjs/components/ColumnsOptionsMenuSection.js +7 -11
  20. package/dist/cjs/components/ColumnsOptionsMenuSection.js.map +2 -2
  21. package/dist/cjs/components/EmptyState.js +9 -6
  22. package/dist/cjs/components/EmptyState.js.map +3 -3
  23. package/dist/cjs/components/HeaderCell.js +4 -0
  24. package/dist/cjs/components/HeaderCell.js.map +1 -1
  25. package/dist/cjs/components/List.js +6 -2
  26. package/dist/cjs/components/List.js.map +2 -2
  27. package/dist/cjs/components/ListItem.js +7 -6
  28. package/dist/cjs/components/ListItem.js.map +2 -2
  29. package/dist/cjs/components/NoResults.js +8 -10
  30. package/dist/cjs/components/NoResults.js.map +2 -2
  31. package/dist/cjs/components/RowsLoader.js +5 -1
  32. package/dist/cjs/components/RowsLoader.js.map +2 -2
  33. package/dist/cjs/components/Table.js +9 -5
  34. package/dist/cjs/components/Table.js.map +2 -2
  35. package/dist/cjs/components/TableBody.js +6 -7
  36. package/dist/cjs/components/TableBody.js.map +2 -2
  37. package/dist/cjs/components/TableHeader.js +5 -1
  38. package/dist/cjs/components/TableHeader.js.map +2 -2
  39. package/dist/cjs/components/footer/addOptionalFooterComponents.js +5 -1
  40. package/dist/cjs/components/footer/addOptionalFooterComponents.js.map +2 -2
  41. package/dist/cjs/components/header/PrimaryControls.js +4 -0
  42. package/dist/cjs/components/header/PrimaryControls.js.map +1 -1
  43. package/dist/cjs/components/header/addOptionalHeaderComponents.js +4 -0
  44. package/dist/cjs/components/header/addOptionalHeaderComponents.js.map +1 -1
  45. package/dist/cjs/components/index.js +9 -5
  46. package/dist/cjs/components/index.js.map +2 -2
  47. package/dist/cjs/components/renderers/defaultClassedRenderers.js +20 -36
  48. package/dist/cjs/components/renderers/defaultClassedRenderers.js.map +2 -2
  49. package/dist/cjs/components/renderers/index.js +6 -2
  50. package/dist/cjs/components/renderers/index.js.map +2 -2
  51. package/dist/cjs/components/renderers/renderRowsLoader.js +6 -4
  52. package/dist/cjs/components/renderers/renderRowsLoader.js.map +2 -2
  53. package/dist/cjs/components/tableContext.js +4 -0
  54. package/dist/cjs/components/tableContext.js.map +1 -1
  55. package/dist/cjs/defaultPlugins.js +9 -10
  56. package/dist/cjs/defaultPlugins.js.map +2 -2
  57. package/dist/cjs/index.js +13 -9
  58. package/dist/cjs/index.js.map +2 -2
  59. package/dist/cjs/package.json +7 -0
  60. package/dist/cjs/plugins/body-header-scroll-sync/BodyHeaderScrollSyncPlugin.js +26 -18
  61. package/dist/cjs/plugins/body-header-scroll-sync/BodyHeaderScrollSyncPlugin.js.map +2 -2
  62. package/dist/cjs/plugins/body-header-scroll-sync/index.js +5 -1
  63. package/dist/cjs/plugins/body-header-scroll-sync/index.js.map +2 -2
  64. package/dist/cjs/plugins/column-dnd/DndColumnsPlugin.js +5 -1
  65. package/dist/cjs/plugins/column-dnd/DndColumnsPlugin.js.map +2 -2
  66. package/dist/cjs/plugins/column-dnd/decorateGridWithDndColumns.js +4 -0
  67. package/dist/cjs/plugins/column-dnd/decorateGridWithDndColumns.js.map +1 -1
  68. package/dist/cjs/plugins/column-dnd/index.js +5 -1
  69. package/dist/cjs/plugins/column-dnd/index.js.map +2 -2
  70. package/dist/cjs/plugins/column-sizing/ColumnSizingPlugin.js +8 -4
  71. package/dist/cjs/plugins/column-sizing/ColumnSizingPlugin.js.map +2 -2
  72. package/dist/cjs/plugins/column-sizing/columnMeasurerTransformer.js +4 -0
  73. package/dist/cjs/plugins/column-sizing/columnMeasurerTransformer.js.map +1 -1
  74. package/dist/cjs/plugins/column-sizing/ext-points/decorateColumn.js +5 -1
  75. package/dist/cjs/plugins/column-sizing/ext-points/decorateColumn.js.map +2 -2
  76. package/dist/cjs/plugins/column-sizing/ext-points/getTableProps.js +5 -1
  77. package/dist/cjs/plugins/column-sizing/ext-points/getTableProps.js.map +2 -2
  78. package/dist/cjs/plugins/column-sizing/getColumnNameFromProperty.js +4 -0
  79. package/dist/cjs/plugins/column-sizing/getColumnNameFromProperty.js.map +1 -1
  80. package/dist/cjs/plugins/column-sizing/index.js +5 -1
  81. package/dist/cjs/plugins/column-sizing/index.js.map +2 -2
  82. package/dist/cjs/plugins/column-sizing/useColumnSizeService.js +11 -26
  83. package/dist/cjs/plugins/column-sizing/useColumnSizeService.js.map +2 -2
  84. package/dist/cjs/plugins/column-sizing/useStylesheetHelpers.js +7 -2
  85. package/dist/cjs/plugins/column-sizing/useStylesheetHelpers.js.map +2 -2
  86. package/dist/cjs/plugins/column-sizing/utils.js +4 -0
  87. package/dist/cjs/plugins/column-sizing/utils.js.map +1 -1
  88. package/dist/cjs/plugins/custom-cell-renderer/CustomRendererPlugin.js +5 -1
  89. package/dist/cjs/plugins/custom-cell-renderer/CustomRendererPlugin.js.map +2 -2
  90. package/dist/cjs/plugins/custom-cell-renderer/addCustomRendererToCell.js +6 -1
  91. package/dist/cjs/plugins/custom-cell-renderer/addCustomRendererToCell.js.map +2 -2
  92. package/dist/cjs/plugins/custom-cell-renderer/getRendererComponent.js +5 -1
  93. package/dist/cjs/plugins/custom-cell-renderer/getRendererComponent.js.map +2 -2
  94. package/dist/cjs/plugins/custom-cell-renderer/index.js +5 -1
  95. package/dist/cjs/plugins/custom-cell-renderer/index.js.map +2 -2
  96. package/dist/cjs/plugins/editable/EditableComponents/ComboBox.js +4 -0
  97. package/dist/cjs/plugins/editable/EditableComponents/ComboBox.js.map +2 -2
  98. package/dist/cjs/plugins/editable/EditableComponents/TextBox.js +4 -0
  99. package/dist/cjs/plugins/editable/EditableComponents/TextBox.js.map +2 -2
  100. package/dist/cjs/plugins/editable/EditableComponents/index.js +6 -2
  101. package/dist/cjs/plugins/editable/EditableComponents/index.js.map +2 -2
  102. package/dist/cjs/plugins/editable/EditablePlugin.js +5 -1
  103. package/dist/cjs/plugins/editable/EditablePlugin.js.map +2 -2
  104. package/dist/cjs/plugins/editable/decorateEditable.js +5 -1
  105. package/dist/cjs/plugins/editable/decorateEditable.js.map +2 -2
  106. package/dist/cjs/plugins/editable/getEditorComponent.js +7 -16
  107. package/dist/cjs/plugins/editable/getEditorComponent.js.map +2 -2
  108. package/dist/cjs/plugins/editable/index.js +6 -2
  109. package/dist/cjs/plugins/editable/index.js.map +2 -2
  110. package/dist/cjs/plugins/expandable-grid/ExpandableColumn.js +27 -25
  111. package/dist/cjs/plugins/expandable-grid/ExpandableColumn.js.map +2 -2
  112. package/dist/cjs/plugins/expandable-grid/ExpandablePlugin.js +9 -5
  113. package/dist/cjs/plugins/expandable-grid/ExpandablePlugin.js.map +2 -2
  114. package/dist/cjs/plugins/expandable-grid/ExpandedRow.js +10 -6
  115. package/dist/cjs/plugins/expandable-grid/ExpandedRow.js.map +2 -2
  116. package/dist/cjs/plugins/expandable-grid/ExpandedRowExtra.js +16 -8
  117. package/dist/cjs/plugins/expandable-grid/ExpandedRowExtra.js.map +2 -2
  118. package/dist/cjs/plugins/expandable-grid/index.js +6 -2
  119. package/dist/cjs/plugins/expandable-grid/index.js.map +2 -2
  120. package/dist/cjs/plugins/expandable-grid/useExpandGridState.js +4 -0
  121. package/dist/cjs/plugins/expandable-grid/useExpandGridState.js.map +2 -2
  122. package/dist/cjs/plugins/export-data/ExportDataPlugin.js +4 -0
  123. package/dist/cjs/plugins/export-data/ExportDataPlugin.js.map +1 -1
  124. package/dist/cjs/plugins/export-data/index.js +5 -1
  125. package/dist/cjs/plugins/export-data/index.js.map +2 -2
  126. package/dist/cjs/plugins/filterable/FilterablePlugin.js +7 -3
  127. package/dist/cjs/plugins/filterable/FilterablePlugin.js.map +2 -2
  128. package/dist/cjs/plugins/filterable/addFilterToColumn.js +5 -1
  129. package/dist/cjs/plugins/filterable/addFilterToColumn.js.map +2 -2
  130. package/dist/cjs/plugins/filterable/components/FilterableHeader.js +5 -1
  131. package/dist/cjs/plugins/filterable/components/FilterableHeader.js.map +2 -2
  132. package/dist/cjs/plugins/filterable/components/filterable-menus/DateRangeFilterMenu.js +50 -47
  133. package/dist/cjs/plugins/filterable/components/filterable-menus/DateRangeFilterMenu.js.map +2 -2
  134. package/dist/cjs/plugins/filterable/components/filterable-menus/SingleDateFilterMenu.js +50 -48
  135. package/dist/cjs/plugins/filterable/components/filterable-menus/SingleDateFilterMenu.js.map +2 -2
  136. package/dist/cjs/plugins/filterable/components/filterable-menus/SingleRangeSwitcherMenu.js +48 -45
  137. package/dist/cjs/plugins/filterable/components/filterable-menus/SingleRangeSwitcherMenu.js.map +2 -2
  138. package/dist/cjs/plugins/filterable/components/filterable-menus/TextFilterMenu.js +7 -3
  139. package/dist/cjs/plugins/filterable/components/filterable-menus/TextFilterMenu.js.map +2 -2
  140. package/dist/cjs/plugins/filterable/components/filterable-menus/defaultDateFormat.js +4 -0
  141. package/dist/cjs/plugins/filterable/components/filterable-menus/defaultDateFormat.js.map +1 -1
  142. package/dist/cjs/plugins/filterable/components/filterable-menus/getFilterMenuByType.js +9 -7
  143. package/dist/cjs/plugins/filterable/components/filterable-menus/getFilterMenuByType.js.map +2 -2
  144. package/dist/cjs/plugins/filterable/filterableFormatter.js +33 -37
  145. package/dist/cjs/plugins/filterable/filterableFormatter.js.map +2 -2
  146. package/dist/cjs/plugins/filterable/filtering-helper/filterRowsByQuery.js +6 -4
  147. package/dist/cjs/plugins/filterable/filtering-helper/filterRowsByQuery.js.map +2 -2
  148. package/dist/cjs/plugins/filterable/filtering-helper/strategiesOperators.js +4 -0
  149. package/dist/cjs/plugins/filterable/filtering-helper/strategiesOperators.js.map +2 -2
  150. package/dist/cjs/plugins/filterable/helper.js +4 -0
  151. package/dist/cjs/plugins/filterable/helper.js.map +2 -2
  152. package/dist/cjs/plugins/filterable/index.js +5 -1
  153. package/dist/cjs/plugins/filterable/index.js.map +2 -2
  154. package/dist/cjs/plugins/filterable/useFilterableState.js +7 -7
  155. package/dist/cjs/plugins/filterable/useFilterableState.js.map +2 -2
  156. package/dist/cjs/plugins/grouping-by/GroupingByPlugin.js +4 -0
  157. package/dist/cjs/plugins/grouping-by/GroupingByPlugin.js.map +1 -1
  158. package/dist/cjs/plugins/grouping-grid/GroupingPlugin.js +19 -11
  159. package/dist/cjs/plugins/grouping-grid/GroupingPlugin.js.map +2 -2
  160. package/dist/cjs/plugins/grouping-grid/walkStrategy.js +4 -0
  161. package/dist/cjs/plugins/grouping-grid/walkStrategy.js.map +2 -2
  162. package/dist/cjs/plugins/index.js +20 -16
  163. package/dist/cjs/plugins/index.js.map +2 -2
  164. package/dist/cjs/plugins/infinite-scrolling/InfiniteScrollPlugin.js +4 -0
  165. package/dist/cjs/plugins/infinite-scrolling/InfiniteScrollPlugin.js.map +1 -1
  166. package/dist/cjs/plugins/infinite-scrolling/index.js +5 -1
  167. package/dist/cjs/plugins/infinite-scrolling/index.js.map +2 -2
  168. package/dist/cjs/plugins/pagination/PaginationPlugin.js +9 -4
  169. package/dist/cjs/plugins/pagination/PaginationPlugin.js.map +2 -2
  170. package/dist/cjs/plugins/pagination/components/Pagination.js +9 -24
  171. package/dist/cjs/plugins/pagination/components/Pagination.js.map +2 -2
  172. package/dist/cjs/plugins/pagination/components/Paginator.js +15 -10
  173. package/dist/cjs/plugins/pagination/components/Paginator.js.map +2 -2
  174. package/dist/cjs/plugins/pagination/components/PerPageDropdown.js +6 -2
  175. package/dist/cjs/plugins/pagination/components/PerPageDropdown.js.map +2 -2
  176. package/dist/cjs/plugins/pagination/helper.js +4 -0
  177. package/dist/cjs/plugins/pagination/helper.js.map +2 -2
  178. package/dist/cjs/plugins/pagination/index.js +5 -1
  179. package/dist/cjs/plugins/pagination/index.js.map +2 -2
  180. package/dist/cjs/plugins/pagination/usePaginationState.js +5 -1
  181. package/dist/cjs/plugins/pagination/usePaginationState.js.map +2 -2
  182. package/dist/cjs/plugins/resizable/ResizablePlugin.js +5 -1
  183. package/dist/cjs/plugins/resizable/ResizablePlugin.js.map +2 -2
  184. package/dist/cjs/plugins/resizable/decorateResizable.js +8 -2
  185. package/dist/cjs/plugins/resizable/decorateResizable.js.map +2 -2
  186. package/dist/cjs/plugins/resizable/index.js +5 -1
  187. package/dist/cjs/plugins/resizable/index.js.map +2 -2
  188. package/dist/cjs/plugins/resizable/useResizeHandle.js +10 -13
  189. package/dist/cjs/plugins/resizable/useResizeHandle.js.map +2 -2
  190. package/dist/cjs/plugins/resizable/utils.js +4 -0
  191. package/dist/cjs/plugins/resizable/utils.js.map +1 -1
  192. package/dist/cjs/plugins/row-dnd/DndRowsPlugin.js +5 -0
  193. package/dist/cjs/plugins/row-dnd/DndRowsPlugin.js.map +1 -1
  194. package/dist/cjs/plugins/row-dnd/index.js +5 -1
  195. package/dist/cjs/plugins/row-dnd/index.js.map +2 -2
  196. package/dist/cjs/plugins/selectable/SelectablePlugin.js +7 -3
  197. package/dist/cjs/plugins/selectable/SelectablePlugin.js.map +2 -2
  198. package/dist/cjs/plugins/selectable/addSelectableColumn.js +7 -1
  199. package/dist/cjs/plugins/selectable/addSelectableColumn.js.map +2 -2
  200. package/dist/cjs/plugins/selectable/helper.js +4 -0
  201. package/dist/cjs/plugins/selectable/helper.js.map +1 -1
  202. package/dist/cjs/plugins/selectable/index.js +5 -1
  203. package/dist/cjs/plugins/selectable/index.js.map +2 -2
  204. package/dist/cjs/plugins/selectable/selectableFormatter.js +5 -1
  205. package/dist/cjs/plugins/selectable/selectableFormatter.js.map +2 -2
  206. package/dist/cjs/plugins/selectable/useSelectableState.js +7 -1
  207. package/dist/cjs/plugins/selectable/useSelectableState.js.map +2 -2
  208. package/dist/cjs/plugins/sortable/SortablePlugin.js +7 -3
  209. package/dist/cjs/plugins/sortable/SortablePlugin.js.map +2 -2
  210. package/dist/cjs/plugins/sortable/checkIfSortable.js +4 -0
  211. package/dist/cjs/plugins/sortable/checkIfSortable.js.map +1 -1
  212. package/dist/cjs/plugins/sortable/index.js +5 -1
  213. package/dist/cjs/plugins/sortable/index.js.map +2 -2
  214. package/dist/cjs/plugins/sortable/sortHeaderFormatter.js +4 -0
  215. package/dist/cjs/plugins/sortable/sortHeaderFormatter.js.map +1 -1
  216. package/dist/cjs/plugins/sortable/sortTree.js +4 -0
  217. package/dist/cjs/plugins/sortable/sortTree.js.map +2 -2
  218. package/dist/cjs/plugins/sortable/sorter.js +5 -0
  219. package/dist/cjs/plugins/sortable/sorter.js.map +1 -1
  220. package/dist/cjs/plugins/sortable/useSortableState.js +6 -4
  221. package/dist/cjs/plugins/sortable/useSortableState.js.map +2 -2
  222. package/dist/cjs/plugins/toolbar/RowRenderer.js +7 -2
  223. package/dist/cjs/plugins/toolbar/RowRenderer.js.map +2 -2
  224. package/dist/cjs/plugins/toolbar/ToolbarPlugin.js +5 -1
  225. package/dist/cjs/plugins/toolbar/ToolbarPlugin.js.map +2 -2
  226. package/dist/cjs/plugins/toolbar/ToolbarTrigger.js +5 -0
  227. package/dist/cjs/plugins/toolbar/ToolbarTrigger.js.map +1 -1
  228. package/dist/cjs/plugins/toolbar/index.js +5 -1
  229. package/dist/cjs/plugins/toolbar/index.js.map +2 -2
  230. package/dist/cjs/plugins/virtualization/AutoHeightList.js +4 -0
  231. package/dist/cjs/plugins/virtualization/AutoHeightList.js.map +2 -2
  232. package/dist/cjs/plugins/virtualization/VirtualizationPlugin.js +8 -2
  233. package/dist/cjs/plugins/virtualization/VirtualizationPlugin.js.map +2 -2
  234. package/dist/cjs/plugins/virtualization/VirtualizedBody.js +9 -4
  235. package/dist/cjs/plugins/virtualization/VirtualizedBody.js.map +2 -2
  236. package/dist/cjs/plugins/virtualization/VirtualizedBodyRow.js +5 -0
  237. package/dist/cjs/plugins/virtualization/VirtualizedBodyRow.js.map +1 -1
  238. package/dist/cjs/plugins/virtualization/helper.js +4 -0
  239. package/dist/cjs/plugins/virtualization/helper.js.map +1 -1
  240. package/dist/cjs/plugins/virtualization/index.js +5 -1
  241. package/dist/cjs/plugins/virtualization/index.js.map +2 -2
  242. package/dist/cjs/renders/CellWithAddons.js +15 -1
  243. package/dist/cjs/renders/CellWithAddons.js.map +2 -2
  244. package/dist/cjs/renders/index.js +6 -2
  245. package/dist/cjs/renders/index.js.map +2 -2
  246. package/dist/cjs/renders/styled.js +4 -0
  247. package/dist/cjs/renders/styled.js.map +1 -1
  248. package/dist/cjs/rowSizes.js +5 -5
  249. package/dist/cjs/rowSizes.js.map +2 -2
  250. package/dist/cjs/utilities/getPluginsFromProps.js +17 -13
  251. package/dist/cjs/utilities/getPluginsFromProps.js.map +2 -2
  252. package/dist/cjs/utilities/getScrollbarSize.js +4 -0
  253. package/dist/cjs/utilities/getScrollbarSize.js.map +1 -1
  254. package/dist/cjs/utilities/normalizeData.js +4 -0
  255. package/dist/cjs/utilities/normalizeData.js.map +2 -2
  256. package/dist/esm/DSDataGrid.js +264 -117
  257. package/dist/esm/DSDataGrid.js.map +2 -2
  258. package/dist/esm/DataGridImpl.js +11 -11
  259. package/dist/esm/DataGridImpl.js.map +2 -2
  260. package/dist/esm/PaginatedDataGrid.js +9 -9
  261. package/dist/esm/PaginatedDataGrid.js.map +2 -2
  262. package/dist/esm/columns/IconColumn.js.map +1 -1
  263. package/dist/esm/components/BodyCell.js +2 -0
  264. package/dist/esm/components/BodyCell.js.map +1 -1
  265. package/dist/esm/components/BodyList.js +3 -5
  266. package/dist/esm/components/BodyList.js.map +2 -2
  267. package/dist/esm/components/ColumnVisibilityMenuOption.js +1 -6
  268. package/dist/esm/components/ColumnVisibilityMenuOption.js.map +2 -2
  269. package/dist/esm/components/ColumnsOptionsMenuSection.js +3 -11
  270. package/dist/esm/components/ColumnsOptionsMenuSection.js.map +2 -2
  271. package/dist/esm/components/EmptyState.js +1 -2
  272. package/dist/esm/components/EmptyState.js.map +2 -2
  273. package/dist/esm/components/List.js +2 -2
  274. package/dist/esm/components/List.js.map +2 -2
  275. package/dist/esm/components/ListItem.js +3 -6
  276. package/dist/esm/components/ListItem.js.map +2 -2
  277. package/dist/esm/components/NoResults.js +4 -10
  278. package/dist/esm/components/NoResults.js.map +2 -2
  279. package/dist/esm/components/RowsLoader.js +1 -1
  280. package/dist/esm/components/RowsLoader.js.map +1 -1
  281. package/dist/esm/components/Table.js +5 -5
  282. package/dist/esm/components/Table.js.map +2 -2
  283. package/dist/esm/components/TableBody.js +2 -7
  284. package/dist/esm/components/TableBody.js.map +2 -2
  285. package/dist/esm/components/TableHeader.js +1 -1
  286. package/dist/esm/components/TableHeader.js.map +2 -2
  287. package/dist/esm/components/footer/addOptionalFooterComponents.js +1 -1
  288. package/dist/esm/components/footer/addOptionalFooterComponents.js.map +1 -1
  289. package/dist/esm/components/index.js +5 -5
  290. package/dist/esm/components/index.js.map +1 -1
  291. package/dist/esm/components/renderers/defaultClassedRenderers.js +16 -40
  292. package/dist/esm/components/renderers/defaultClassedRenderers.js.map +2 -2
  293. package/dist/esm/components/renderers/index.js +2 -2
  294. package/dist/esm/components/renderers/index.js.map +1 -1
  295. package/dist/esm/components/renderers/renderRowsLoader.js +2 -4
  296. package/dist/esm/components/renderers/renderRowsLoader.js.map +2 -2
  297. package/dist/esm/defaultPlugins.js +5 -10
  298. package/dist/esm/defaultPlugins.js.map +2 -2
  299. package/dist/esm/index.js +9 -9
  300. package/dist/esm/index.js.map +1 -1
  301. package/dist/esm/package.json +7 -0
  302. package/dist/esm/plugins/body-header-scroll-sync/BodyHeaderScrollSyncPlugin.js +22 -18
  303. package/dist/esm/plugins/body-header-scroll-sync/BodyHeaderScrollSyncPlugin.js.map +2 -2
  304. package/dist/esm/plugins/body-header-scroll-sync/index.js +1 -1
  305. package/dist/esm/plugins/body-header-scroll-sync/index.js.map +1 -1
  306. package/dist/esm/plugins/column-dnd/DndColumnsPlugin.js +1 -1
  307. package/dist/esm/plugins/column-dnd/DndColumnsPlugin.js.map +2 -2
  308. package/dist/esm/plugins/column-dnd/index.js +1 -1
  309. package/dist/esm/plugins/column-dnd/index.js.map +1 -1
  310. package/dist/esm/plugins/column-sizing/ColumnSizingPlugin.js +4 -4
  311. package/dist/esm/plugins/column-sizing/ColumnSizingPlugin.js.map +1 -1
  312. package/dist/esm/plugins/column-sizing/columnMeasurerTransformer.js.map +1 -1
  313. package/dist/esm/plugins/column-sizing/ext-points/decorateColumn.js +1 -1
  314. package/dist/esm/plugins/column-sizing/ext-points/decorateColumn.js.map +1 -1
  315. package/dist/esm/plugins/column-sizing/ext-points/getTableProps.js +1 -1
  316. package/dist/esm/plugins/column-sizing/ext-points/getTableProps.js.map +1 -1
  317. package/dist/esm/plugins/column-sizing/index.js +1 -1
  318. package/dist/esm/plugins/column-sizing/index.js.map +1 -1
  319. package/dist/esm/plugins/column-sizing/useColumnSizeService.js +7 -26
  320. package/dist/esm/plugins/column-sizing/useColumnSizeService.js.map +2 -2
  321. package/dist/esm/plugins/column-sizing/useStylesheetHelpers.js +3 -2
  322. package/dist/esm/plugins/column-sizing/useStylesheetHelpers.js.map +2 -2
  323. package/dist/esm/plugins/column-sizing/utils.js.map +1 -1
  324. package/dist/esm/plugins/custom-cell-renderer/CustomRendererPlugin.js +1 -1
  325. package/dist/esm/plugins/custom-cell-renderer/CustomRendererPlugin.js.map +1 -1
  326. package/dist/esm/plugins/custom-cell-renderer/addCustomRendererToCell.js +2 -1
  327. package/dist/esm/plugins/custom-cell-renderer/addCustomRendererToCell.js.map +2 -2
  328. package/dist/esm/plugins/custom-cell-renderer/getRendererComponent.js +1 -1
  329. package/dist/esm/plugins/custom-cell-renderer/getRendererComponent.js.map +2 -2
  330. package/dist/esm/plugins/custom-cell-renderer/index.js +1 -1
  331. package/dist/esm/plugins/custom-cell-renderer/index.js.map +1 -1
  332. package/dist/esm/plugins/editable/EditableComponents/ComboBox.js.map +1 -1
  333. package/dist/esm/plugins/editable/EditableComponents/TextBox.js.map +1 -1
  334. package/dist/esm/plugins/editable/EditableComponents/index.js +2 -2
  335. package/dist/esm/plugins/editable/EditableComponents/index.js.map +1 -1
  336. package/dist/esm/plugins/editable/EditablePlugin.js +1 -1
  337. package/dist/esm/plugins/editable/EditablePlugin.js.map +2 -2
  338. package/dist/esm/plugins/editable/decorateEditable.js +1 -1
  339. package/dist/esm/plugins/editable/decorateEditable.js.map +2 -2
  340. package/dist/esm/plugins/editable/getEditorComponent.js +3 -16
  341. package/dist/esm/plugins/editable/getEditorComponent.js.map +2 -2
  342. package/dist/esm/plugins/editable/index.js +2 -2
  343. package/dist/esm/plugins/editable/index.js.map +1 -1
  344. package/dist/esm/plugins/expandable-grid/ExpandableColumn.js +23 -25
  345. package/dist/esm/plugins/expandable-grid/ExpandableColumn.js.map +2 -2
  346. package/dist/esm/plugins/expandable-grid/ExpandablePlugin.js +5 -5
  347. package/dist/esm/plugins/expandable-grid/ExpandablePlugin.js.map +2 -2
  348. package/dist/esm/plugins/expandable-grid/ExpandedRow.js +6 -6
  349. package/dist/esm/plugins/expandable-grid/ExpandedRow.js.map +2 -2
  350. package/dist/esm/plugins/expandable-grid/ExpandedRowExtra.js +12 -8
  351. package/dist/esm/plugins/expandable-grid/ExpandedRowExtra.js.map +2 -2
  352. package/dist/esm/plugins/expandable-grid/index.js +2 -2
  353. package/dist/esm/plugins/expandable-grid/index.js.map +1 -1
  354. package/dist/esm/plugins/expandable-grid/useExpandGridState.js.map +2 -2
  355. package/dist/esm/plugins/export-data/ExportDataPlugin.js.map +1 -1
  356. package/dist/esm/plugins/export-data/index.js +1 -1
  357. package/dist/esm/plugins/export-data/index.js.map +1 -1
  358. package/dist/esm/plugins/filterable/FilterablePlugin.js +3 -3
  359. package/dist/esm/plugins/filterable/FilterablePlugin.js.map +2 -2
  360. package/dist/esm/plugins/filterable/addFilterToColumn.js +1 -1
  361. package/dist/esm/plugins/filterable/addFilterToColumn.js.map +1 -1
  362. package/dist/esm/plugins/filterable/components/FilterableHeader.js +1 -1
  363. package/dist/esm/plugins/filterable/components/FilterableHeader.js.map +2 -2
  364. package/dist/esm/plugins/filterable/components/filterable-menus/DateRangeFilterMenu.js +46 -47
  365. package/dist/esm/plugins/filterable/components/filterable-menus/DateRangeFilterMenu.js.map +2 -2
  366. package/dist/esm/plugins/filterable/components/filterable-menus/SingleDateFilterMenu.js +46 -48
  367. package/dist/esm/plugins/filterable/components/filterable-menus/SingleDateFilterMenu.js.map +2 -2
  368. package/dist/esm/plugins/filterable/components/filterable-menus/SingleRangeSwitcherMenu.js +44 -45
  369. package/dist/esm/plugins/filterable/components/filterable-menus/SingleRangeSwitcherMenu.js.map +2 -2
  370. package/dist/esm/plugins/filterable/components/filterable-menus/TextFilterMenu.js +3 -3
  371. package/dist/esm/plugins/filterable/components/filterable-menus/TextFilterMenu.js.map +2 -2
  372. package/dist/esm/plugins/filterable/components/filterable-menus/getFilterMenuByType.js +5 -7
  373. package/dist/esm/plugins/filterable/components/filterable-menus/getFilterMenuByType.js.map +2 -2
  374. package/dist/esm/plugins/filterable/filterableFormatter.js +29 -37
  375. package/dist/esm/plugins/filterable/filterableFormatter.js.map +2 -2
  376. package/dist/esm/plugins/filterable/filtering-helper/filterRowsByQuery.js +2 -4
  377. package/dist/esm/plugins/filterable/filtering-helper/filterRowsByQuery.js.map +2 -2
  378. package/dist/esm/plugins/filterable/filtering-helper/strategiesOperators.js.map +2 -2
  379. package/dist/esm/plugins/filterable/helper.js +1 -7
  380. package/dist/esm/plugins/filterable/helper.js.map +2 -2
  381. package/dist/esm/plugins/filterable/index.js +1 -1
  382. package/dist/esm/plugins/filterable/index.js.map +1 -1
  383. package/dist/esm/plugins/filterable/useFilterableState.js +3 -11
  384. package/dist/esm/plugins/filterable/useFilterableState.js.map +2 -2
  385. package/dist/esm/plugins/grouping-by/GroupingByPlugin.js.map +1 -1
  386. package/dist/esm/plugins/grouping-grid/GroupingPlugin.js +15 -11
  387. package/dist/esm/plugins/grouping-grid/GroupingPlugin.js.map +2 -2
  388. package/dist/esm/plugins/grouping-grid/walkStrategy.js.map +2 -2
  389. package/dist/esm/plugins/index.js +16 -16
  390. package/dist/esm/plugins/index.js.map +1 -1
  391. package/dist/esm/plugins/infinite-scrolling/InfiniteScrollPlugin.js.map +1 -1
  392. package/dist/esm/plugins/infinite-scrolling/index.js +1 -1
  393. package/dist/esm/plugins/infinite-scrolling/index.js.map +1 -1
  394. package/dist/esm/plugins/pagination/PaginationPlugin.js +5 -4
  395. package/dist/esm/plugins/pagination/PaginationPlugin.js.map +2 -2
  396. package/dist/esm/plugins/pagination/components/Pagination.js +5 -24
  397. package/dist/esm/plugins/pagination/components/Pagination.js.map +2 -2
  398. package/dist/esm/plugins/pagination/components/Paginator.js +12 -11
  399. package/dist/esm/plugins/pagination/components/Paginator.js.map +2 -2
  400. package/dist/esm/plugins/pagination/components/PerPageDropdown.js +2 -2
  401. package/dist/esm/plugins/pagination/components/PerPageDropdown.js.map +2 -2
  402. package/dist/esm/plugins/pagination/helper.js.map +2 -2
  403. package/dist/esm/plugins/pagination/index.js +1 -1
  404. package/dist/esm/plugins/pagination/index.js.map +1 -1
  405. package/dist/esm/plugins/pagination/usePaginationState.js +1 -1
  406. package/dist/esm/plugins/pagination/usePaginationState.js.map +1 -1
  407. package/dist/esm/plugins/resizable/ResizablePlugin.js +1 -1
  408. package/dist/esm/plugins/resizable/ResizablePlugin.js.map +2 -2
  409. package/dist/esm/plugins/resizable/decorateResizable.js +4 -2
  410. package/dist/esm/plugins/resizable/decorateResizable.js.map +2 -2
  411. package/dist/esm/plugins/resizable/index.js +1 -1
  412. package/dist/esm/plugins/resizable/index.js.map +1 -1
  413. package/dist/esm/plugins/resizable/useResizeHandle.js +6 -13
  414. package/dist/esm/plugins/resizable/useResizeHandle.js.map +2 -2
  415. package/dist/esm/plugins/row-dnd/DndRowsPlugin.js +1 -0
  416. package/dist/esm/plugins/row-dnd/DndRowsPlugin.js.map +1 -1
  417. package/dist/esm/plugins/row-dnd/index.js +1 -1
  418. package/dist/esm/plugins/row-dnd/index.js.map +1 -1
  419. package/dist/esm/plugins/selectable/SelectablePlugin.js +3 -3
  420. package/dist/esm/plugins/selectable/SelectablePlugin.js.map +2 -2
  421. package/dist/esm/plugins/selectable/addSelectableColumn.js +3 -1
  422. package/dist/esm/plugins/selectable/addSelectableColumn.js.map +2 -2
  423. package/dist/esm/plugins/selectable/helper.js.map +1 -1
  424. package/dist/esm/plugins/selectable/index.js +1 -1
  425. package/dist/esm/plugins/selectable/index.js.map +1 -1
  426. package/dist/esm/plugins/selectable/selectableFormatter.js +1 -1
  427. package/dist/esm/plugins/selectable/selectableFormatter.js.map +2 -2
  428. package/dist/esm/plugins/selectable/useSelectableState.js +3 -5
  429. package/dist/esm/plugins/selectable/useSelectableState.js.map +2 -2
  430. package/dist/esm/plugins/sortable/SortablePlugin.js +3 -3
  431. package/dist/esm/plugins/sortable/SortablePlugin.js.map +2 -2
  432. package/dist/esm/plugins/sortable/checkIfSortable.js.map +1 -1
  433. package/dist/esm/plugins/sortable/index.js +1 -1
  434. package/dist/esm/plugins/sortable/index.js.map +1 -1
  435. package/dist/esm/plugins/sortable/sortHeaderFormatter.js.map +1 -1
  436. package/dist/esm/plugins/sortable/sortTree.js.map +2 -2
  437. package/dist/esm/plugins/sortable/sorter.js +1 -0
  438. package/dist/esm/plugins/sortable/sorter.js.map +1 -1
  439. package/dist/esm/plugins/sortable/useSortableState.js +2 -4
  440. package/dist/esm/plugins/sortable/useSortableState.js.map +2 -2
  441. package/dist/esm/plugins/toolbar/RowRenderer.js +3 -2
  442. package/dist/esm/plugins/toolbar/RowRenderer.js.map +2 -2
  443. package/dist/esm/plugins/toolbar/ToolbarPlugin.js +1 -1
  444. package/dist/esm/plugins/toolbar/ToolbarPlugin.js.map +2 -2
  445. package/dist/esm/plugins/toolbar/ToolbarTrigger.js +1 -0
  446. package/dist/esm/plugins/toolbar/ToolbarTrigger.js.map +1 -1
  447. package/dist/esm/plugins/toolbar/index.js +1 -1
  448. package/dist/esm/plugins/toolbar/index.js.map +1 -1
  449. package/dist/esm/plugins/virtualization/AutoHeightList.js.map +2 -2
  450. package/dist/esm/plugins/virtualization/VirtualizationPlugin.js +4 -2
  451. package/dist/esm/plugins/virtualization/VirtualizationPlugin.js.map +2 -2
  452. package/dist/esm/plugins/virtualization/VirtualizedBody.js +5 -4
  453. package/dist/esm/plugins/virtualization/VirtualizedBody.js.map +2 -2
  454. package/dist/esm/plugins/virtualization/VirtualizedBodyRow.js +1 -0
  455. package/dist/esm/plugins/virtualization/VirtualizedBodyRow.js.map +1 -1
  456. package/dist/esm/plugins/virtualization/index.js +1 -1
  457. package/dist/esm/plugins/virtualization/index.js.map +1 -1
  458. package/dist/esm/renders/CellWithAddons.js +11 -1
  459. package/dist/esm/renders/CellWithAddons.js.map +2 -2
  460. package/dist/esm/renders/index.js +2 -2
  461. package/dist/esm/renders/index.js.map +1 -1
  462. package/dist/esm/renders/styled.js.map +1 -1
  463. package/dist/esm/rowSizes.js +1 -5
  464. package/dist/esm/rowSizes.js.map +2 -2
  465. package/dist/esm/utilities/getPluginsFromProps.js +13 -13
  466. package/dist/esm/utilities/getPluginsFromProps.js.map +2 -2
  467. package/dist/esm/utilities/normalizeData.js.map +2 -2
  468. package/package.json +26 -25
@@ -18,6 +18,10 @@ var __copyProps = (to, from, except, desc) => {
18
18
  return to;
19
19
  };
20
20
  var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
21
25
  isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
22
26
  mod
23
27
  ));
@@ -32,9 +36,9 @@ var import_react = require("react");
32
36
  var import_obj_str = __toESM(require("obj-str"));
33
37
  var import_ds_utilities = require("@elliemae/ds-utilities");
34
38
  var import_ds_shared = require("@elliemae/ds-shared");
35
- var import_addSelectableColumn = require("./addSelectableColumn");
36
- var import_useSelectableState = require("./useSelectableState");
37
- var import_helper = require("./helper");
39
+ var import_addSelectableColumn = require("./addSelectableColumn.js");
40
+ var import_useSelectableState = require("./useSelectableState.js");
41
+ var import_helper = require("./helper.js");
38
42
  const decorateColumns = (columns, grid) => {
39
43
  const {
40
44
  props: {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/plugins/selectable/SelectablePlugin.tsx", "../../../../../../scripts/build/transpile/react-shim.js"],
4
- "sourcesContent": ["/* eslint-disable react-hooks/rules-of-hooks */\n/* eslint-disable max-lines */\nimport { useEffect, useState, useCallback } from 'react';\nimport cx from 'obj-str';\nimport { isFunction } from '@elliemae/ds-utilities';\nimport { createInstancePlugin } from '@elliemae/ds-shared';\nimport { selectionColumnCreator } from './addSelectableColumn';\nimport { useSelectableState } from './useSelectableState';\nimport { selectMultipleRow, selectSingleRow } from './helper';\n\n// DECORATORS\nconst decorateColumns = (columns, grid) => {\n const {\n props: {\n selectable,\n multiSelectFilterLabel,\n multiSelectFilterOptions,\n multiSelectFilterLabels,\n multiSelectComponent,\n },\n actions: { selectAll: handleSelectAll, selectRow: handleSelectRow },\n state: { selection },\n } = grid;\n\n const createSelectionColumn = selectionColumnCreator({\n grid,\n multiple: selectable === 'multi',\n selectAll: selection.selectAll,\n onSelectAll: handleSelectAll,\n onSelectRow: handleSelectRow,\n multiSelectFilterLabel,\n multiSelectFilterOptions,\n multiSelectFilterLabels,\n multiSelectComponent,\n });\n\n const { showSelectColumn, selectionColumnDefinition } = grid.props;\n\n if (showSelectColumn) {\n const selectionColumn = createSelectionColumn(selectionColumnDefinition);\n return [selectionColumn, ...columns];\n }\n return columns;\n};\n\nconst getRowProps = (rowProps, grid, { rowData }) => {\n const {\n props: { showSelectHighlight, showSelectColumn, rowKey },\n actions: { selectRow },\n } = grid.getInstance();\n\n const { _index } = rowData;\n const isSelected = rowData['metaData.selected'];\n\n if (!showSelectColumn) {\n rowProps.onClick = () => selectRow(rowData[rowKey], _index);\n }\n\n rowProps.className = cx({\n [rowProps.className]: true,\n selected: isSelected,\n 'select-highlight': showSelectHighlight && isSelected,\n });\n\n return rowProps;\n};\n\nconst composeRows = (rows, grid) => {\n const {\n props: { isRowSelected, multiple, rowKey },\n state: { selection },\n } = grid.getInstance();\n\n const selectionPredicate = (row) =>\n isFunction(isRowSelected) ? isRowSelected(row) : !!selection.selectedRows[row[rowKey]];\n\n return multiple ? selectMultipleRow(rows, selectionPredicate) : selectSingleRow(rows, selectionPredicate);\n};\n\nconst decorateGrid = (grid) => {\n // const handler = useRef();\n const {\n props: { isRowSelected, rowKey },\n actions: { selectRow },\n state: { selection },\n } = grid.getInstance();\n const [shiftPressed, setShiftPressed] = useState(false);\n const [lastSelectedRow, setLastSelectedRow] = useState(null);\n\n const selectRowHandler = useCallback(\n (rowData, index) => () => selectRow(rowData[rowKey], index, shiftPressed),\n [isRowSelected, selection, shiftPressed],\n );\n\n useEffect(() => {\n const keyDownListener = (event) => {\n if (\n event.key === 'Shift' &&\n event.target.tagName.toLowerCase() !== 'input' &&\n event.target.parentNode.className !== 'em-ds-combobox__input'\n ) {\n setShiftPressed(true);\n }\n };\n const keyUpListener = (event) => {\n if (\n event.key === 'Shift' &&\n event.target.tagName.toLowerCase() !== 'input' &&\n event.target.parentNode.className !== 'em-ds-combobox__input'\n ) {\n setShiftPressed(false);\n }\n };\n window.addEventListener('keydown', keyDownListener);\n window.addEventListener('keyup', keyUpListener);\n return () => {\n window.removeEventListener('keydown', keyDownListener);\n window.removeEventListener('keyup', keyUpListener);\n };\n });\n\n return {\n shiftPressed,\n selectRowHandler,\n setLastSelectedRow,\n lastSelectedRow,\n };\n};\n\nexport const SelectablePlugin = createInstancePlugin('selectable', {\n decorateGrid,\n registerStateHook: useSelectableState,\n decorateColumns,\n getRowProps,\n composeRows,\n registerHotKeys(grid) {\n return [\n {\n key: 'space',\n handler: ({ rowIndex }) => {\n const {\n composedRows,\n props: { rowKey },\n actions: { selectRow },\n } = grid.getInstance();\n const rows = composedRows.rows || composedRows;\n const row = rows[rowIndex];\n if (!row) return;\n selectRow(row[rowKey], rowIndex);\n },\n },\n {\n key: 'ctrl+a',\n handler: () => {\n const {\n state: { selection },\n actions: { selectAll },\n } = grid.getInstance();\n\n selectAll(!selection.selectAll);\n },\n },\n ];\n },\n});\n", "import * as React from 'react';\nexport { React };\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["/* eslint-disable react-hooks/rules-of-hooks */\n/* eslint-disable max-lines */\nimport { useEffect, useState, useCallback } from 'react';\nimport cx from 'obj-str';\nimport { isFunction } from '@elliemae/ds-utilities';\nimport { createInstancePlugin } from '@elliemae/ds-shared';\nimport { selectionColumnCreator } from './addSelectableColumn.js';\nimport { useSelectableState } from './useSelectableState.js';\nimport { selectMultipleRow, selectSingleRow } from './helper.js';\n\n// DECORATORS\nconst decorateColumns = (columns, grid) => {\n const {\n props: {\n selectable,\n multiSelectFilterLabel,\n multiSelectFilterOptions,\n multiSelectFilterLabels,\n multiSelectComponent,\n },\n actions: { selectAll: handleSelectAll, selectRow: handleSelectRow },\n state: { selection },\n } = grid;\n\n const createSelectionColumn = selectionColumnCreator({\n grid,\n multiple: selectable === 'multi',\n selectAll: selection.selectAll,\n onSelectAll: handleSelectAll,\n onSelectRow: handleSelectRow,\n multiSelectFilterLabel,\n multiSelectFilterOptions,\n multiSelectFilterLabels,\n multiSelectComponent,\n });\n\n const { showSelectColumn, selectionColumnDefinition } = grid.props;\n\n if (showSelectColumn) {\n const selectionColumn = createSelectionColumn(selectionColumnDefinition);\n return [selectionColumn, ...columns];\n }\n return columns;\n};\n\nconst getRowProps = (rowProps, grid, { rowData }) => {\n const {\n props: { showSelectHighlight, showSelectColumn, rowKey },\n actions: { selectRow },\n } = grid.getInstance();\n\n const { _index } = rowData;\n const isSelected = rowData['metaData.selected'];\n\n if (!showSelectColumn) {\n rowProps.onClick = () => selectRow(rowData[rowKey], _index);\n }\n\n rowProps.className = cx({\n [rowProps.className]: true,\n selected: isSelected,\n 'select-highlight': showSelectHighlight && isSelected,\n });\n\n return rowProps;\n};\n\nconst composeRows = (rows, grid) => {\n const {\n props: { isRowSelected, multiple, rowKey },\n state: { selection },\n } = grid.getInstance();\n\n const selectionPredicate = (row) =>\n isFunction(isRowSelected) ? isRowSelected(row) : !!selection.selectedRows[row[rowKey]];\n\n return multiple ? selectMultipleRow(rows, selectionPredicate) : selectSingleRow(rows, selectionPredicate);\n};\n\nconst decorateGrid = (grid) => {\n // const handler = useRef();\n const {\n props: { isRowSelected, rowKey },\n actions: { selectRow },\n state: { selection },\n } = grid.getInstance();\n const [shiftPressed, setShiftPressed] = useState(false);\n const [lastSelectedRow, setLastSelectedRow] = useState(null);\n\n const selectRowHandler = useCallback(\n (rowData, index) => () => selectRow(rowData[rowKey], index, shiftPressed),\n [isRowSelected, selection, shiftPressed],\n );\n\n useEffect(() => {\n const keyDownListener = (event) => {\n if (\n event.key === 'Shift' &&\n event.target.tagName.toLowerCase() !== 'input' &&\n event.target.parentNode.className !== 'em-ds-combobox__input'\n ) {\n setShiftPressed(true);\n }\n };\n const keyUpListener = (event) => {\n if (\n event.key === 'Shift' &&\n event.target.tagName.toLowerCase() !== 'input' &&\n event.target.parentNode.className !== 'em-ds-combobox__input'\n ) {\n setShiftPressed(false);\n }\n };\n window.addEventListener('keydown', keyDownListener);\n window.addEventListener('keyup', keyUpListener);\n return () => {\n window.removeEventListener('keydown', keyDownListener);\n window.removeEventListener('keyup', keyUpListener);\n };\n });\n\n return {\n shiftPressed,\n selectRowHandler,\n setLastSelectedRow,\n lastSelectedRow,\n };\n};\n\nexport const SelectablePlugin = createInstancePlugin('selectable', {\n decorateGrid,\n registerStateHook: useSelectableState,\n decorateColumns,\n getRowProps,\n composeRows,\n registerHotKeys(grid) {\n return [\n {\n key: 'space',\n handler: ({ rowIndex }) => {\n const {\n composedRows,\n props: { rowKey },\n actions: { selectRow },\n } = grid.getInstance();\n const rows = composedRows.rows || composedRows;\n const row = rows[rowIndex];\n if (!row) return;\n selectRow(row[rowKey], rowIndex);\n },\n },\n {\n key: 'ctrl+a',\n handler: () => {\n const {\n state: { selection },\n actions: { selectAll },\n } = grid.getInstance();\n\n selectAll(!selection.selectAll);\n },\n },\n ];\n },\n});\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": "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",
6
6
  "names": ["cx"]
7
7
  }
@@ -18,6 +18,10 @@ var __copyProps = (to, from, except, desc) => {
18
18
  return to;
19
19
  };
20
20
  var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
21
25
  isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
22
26
  mod
23
27
  ));
@@ -29,7 +33,7 @@ __export(addSelectableColumn_exports, {
29
33
  module.exports = __toCommonJS(addSelectableColumn_exports);
30
34
  var React = __toESM(require("react"));
31
35
  var import_ds_shared = require("@elliemae/ds-shared");
32
- var import_selectableFormatter = require("./selectableFormatter");
36
+ var import_selectableFormatter = require("./selectableFormatter.js");
33
37
  function selectionColumnCreator({
34
38
  grid,
35
39
  selectAll,
@@ -37,10 +41,12 @@ function selectionColumnCreator({
37
41
  onSelectRow,
38
42
  onSelectAll,
39
43
  multiple,
44
+ // backward compatibility: later this needed to be passed through column definition
40
45
  multiSelectFilterLabel,
41
46
  multiSelectFilterOptions,
42
47
  multiSelectFilterLabels,
43
48
  multiSelectComponent
49
+ // favor selectionComponent
44
50
  }) {
45
51
  const {
46
52
  props: { rowKey }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/plugins/selectable/addSelectableColumn.tsx", "../../../../../../scripts/build/transpile/react-shim.js"],
4
- "sourcesContent": ["import { appendCellFormatter, appendHeaderFormatter } from '@elliemae/ds-shared';\nimport { selectableFormatter } from './selectableFormatter';\n\nexport function selectionColumnCreator({\n grid,\n selectAll,\n selectionComponent,\n onSelectRow,\n onSelectAll,\n multiple,\n\n // backward compatibility: later this needed to be passed through column definition\n multiSelectFilterLabel,\n multiSelectFilterOptions,\n multiSelectFilterLabels,\n multiSelectComponent, // favor selectionComponent\n}) {\n const {\n props: { rowKey },\n } = grid;\n\n return ({\n visible = true,\n isDataColumn = false,\n width = 40,\n minWidth,\n cellRenderer,\n headerCellRenderer,\n customRenderer,\n header,\n ...column\n } = {}) => {\n let selectionColumn = {\n ...column,\n property: 'metaData.selected',\n filterLabel: multiSelectFilterLabel,\n filterOptions: multiSelectFilterOptions,\n filterLabels: multiSelectFilterLabels,\n visible,\n width,\n minWidth: minWidth || width,\n isDataColumn,\n };\n selectionColumn = appendCellFormatter(\n selectableFormatter(\n {\n isMultiSelect: multiple,\n renderer: selectionComponent || multiSelectComponent,\n onSelect: onSelectRow,\n },\n grid,\n ),\n )(selectionColumn);\n\n if (multiple) {\n selectionColumn = appendHeaderFormatter(\n selectableFormatter(\n {\n rowKey,\n selectAll,\n isMultiSelect: true,\n isHeader: true,\n className: 'multi-select-wrapper',\n renderer: selectionComponent || multiSelectComponent,\n onSelect: onSelectAll,\n },\n grid,\n ),\n )(selectionColumn);\n }\n return selectionColumn;\n };\n}\n", "import * as React from 'react';\nexport { React };\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB,uBAA2D;AAC3D,iCAAoC;AAE7B,SAAS,uBAAuB;AAAA,EACrC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAAG;AACD,QAAM;AAAA,IACJ,OAAO,EAAE,OAAO;AAAA,EAClB,IAAI;AAEJ,SAAO,CAAC;AAAA,IACN,UAAU;AAAA,IACV,eAAe;AAAA,IACf,QAAQ;AAAA,IACR;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,OACG;AAAA,EACL,IAAI,CAAC,MAAM;AACT,QAAI,kBAAkB;AAAA,MACpB,GAAG;AAAA,MACH,UAAU;AAAA,MACV,aAAa;AAAA,MACb,eAAe;AAAA,MACf,cAAc;AAAA,MACd;AAAA,MACA;AAAA,MACA,UAAU,YAAY;AAAA,MACtB;AAAA,IACF;AACA,0BAAkB;AAAA,UAChB;AAAA,QACE;AAAA,UACE,eAAe;AAAA,UACf,UAAU,sBAAsB;AAAA,UAChC,UAAU;AAAA,QACZ;AAAA,QACA;AAAA,MACF;AAAA,IACF,EAAE,eAAe;AAEjB,QAAI,UAAU;AACZ,4BAAkB;AAAA,YAChB;AAAA,UACE;AAAA,YACE;AAAA,YACA;AAAA,YACA,eAAe;AAAA,YACf,UAAU;AAAA,YACV,WAAW;AAAA,YACX,UAAU,sBAAsB;AAAA,YAChC,UAAU;AAAA,UACZ;AAAA,UACA;AAAA,QACF;AAAA,MACF,EAAE,eAAe;AAAA,IACnB;AACA,WAAO;AAAA,EACT;AACF;",
4
+ "sourcesContent": ["import { appendCellFormatter, appendHeaderFormatter } from '@elliemae/ds-shared';\nimport { selectableFormatter } from './selectableFormatter.js';\n\nexport function selectionColumnCreator({\n grid,\n selectAll,\n selectionComponent,\n onSelectRow,\n onSelectAll,\n multiple,\n\n // backward compatibility: later this needed to be passed through column definition\n multiSelectFilterLabel,\n multiSelectFilterOptions,\n multiSelectFilterLabels,\n multiSelectComponent, // favor selectionComponent\n}) {\n const {\n props: { rowKey },\n } = grid;\n\n return ({\n visible = true,\n isDataColumn = false,\n width = 40,\n minWidth,\n cellRenderer,\n headerCellRenderer,\n customRenderer,\n header,\n ...column\n } = {}) => {\n let selectionColumn = {\n ...column,\n property: 'metaData.selected',\n filterLabel: multiSelectFilterLabel,\n filterOptions: multiSelectFilterOptions,\n filterLabels: multiSelectFilterLabels,\n visible,\n width,\n minWidth: minWidth || width,\n isDataColumn,\n };\n selectionColumn = appendCellFormatter(\n selectableFormatter(\n {\n isMultiSelect: multiple,\n renderer: selectionComponent || multiSelectComponent,\n onSelect: onSelectRow,\n },\n grid,\n ),\n )(selectionColumn);\n\n if (multiple) {\n selectionColumn = appendHeaderFormatter(\n selectableFormatter(\n {\n rowKey,\n selectAll,\n isMultiSelect: true,\n isHeader: true,\n className: 'multi-select-wrapper',\n renderer: selectionComponent || multiSelectComponent,\n onSelect: onSelectAll,\n },\n grid,\n ),\n )(selectionColumn);\n }\n return selectionColumn;\n };\n}\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB,uBAA2D;AAC3D,iCAAoC;AAE7B,SAAS,uBAAuB;AAAA,EACrC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AACF,GAAG;AACD,QAAM;AAAA,IACJ,OAAO,EAAE,OAAO;AAAA,EAClB,IAAI;AAEJ,SAAO,CAAC;AAAA,IACN,UAAU;AAAA,IACV,eAAe;AAAA,IACf,QAAQ;AAAA,IACR;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,GAAG;AAAA,EACL,IAAI,CAAC,MAAM;AACT,QAAI,kBAAkB;AAAA,MACpB,GAAG;AAAA,MACH,UAAU;AAAA,MACV,aAAa;AAAA,MACb,eAAe;AAAA,MACf,cAAc;AAAA,MACd;AAAA,MACA;AAAA,MACA,UAAU,YAAY;AAAA,MACtB;AAAA,IACF;AACA,0BAAkB;AAAA,UAChB;AAAA,QACE;AAAA,UACE,eAAe;AAAA,UACf,UAAU,sBAAsB;AAAA,UAChC,UAAU;AAAA,QACZ;AAAA,QACA;AAAA,MACF;AAAA,IACF,EAAE,eAAe;AAEjB,QAAI,UAAU;AACZ,4BAAkB;AAAA,YAChB;AAAA,UACE;AAAA,YACE;AAAA,YACA;AAAA,YACA,eAAe;AAAA,YACf,UAAU;AAAA,YACV,WAAW;AAAA,YACX,UAAU,sBAAsB;AAAA,YAChC,UAAU;AAAA,UACZ;AAAA,UACA;AAAA,QACF;AAAA,MACF,EAAE,eAAe;AAAA,IACnB;AACA,WAAO;AAAA,EACT;AACF;",
6
6
  "names": []
7
7
  }
@@ -18,6 +18,10 @@ var __copyProps = (to, from, except, desc) => {
18
18
  return to;
19
19
  };
20
20
  var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
21
25
  isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
22
26
  mod
23
27
  ));
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/plugins/selectable/helper.tsx", "../../../../../../scripts/build/transpile/react-shim.js"],
4
4
  "sourcesContent": ["import { toggleInObject } from '@elliemae/ds-utilities';\n\nexport const checkAllRowsSelected = (rows, selectedRows) => {\n if (rows.length && selectedRows.length === rows.length) return true;\n if (selectedRows.length) return 'mixed';\n return false;\n};\n\nexport const toggleSelectAll = (rows, checked) =>\n !checked ? {} : rows.reduce((nextSelRows, row) => toggleInObject(nextSelRows, row.id, true), {});\n\nexport const toggleSingleSelectable = (selectedRows, id) => (!selectedRows[id] ? toggleInObject({}, id, true) : {});\n\nconst mergeSelectedToMetaData = (selected) => (row) => ({\n ...row,\n 'metaData.selected': selected,\n});\n\nexport const selectSingleRow = (rows, filter) => rows.map((row) => mergeSelectedToMetaData(filter(row))(row));\n\nexport const selectMultipleRow = (rows, isRowSelectedPredicate) =>\n rows.map((row) => mergeSelectedToMetaData(isRowSelectedPredicate(row))(row));\n", "import * as React from 'react';\nexport { React };\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB,0BAA+B;AAExB,MAAM,uBAAuB,CAAC,MAAM,iBAAiB;AAC1D,MAAI,KAAK,UAAU,aAAa,WAAW,KAAK;AAAQ,WAAO;AAC/D,MAAI,aAAa;AAAQ,WAAO;AAChC,SAAO;AACT;AAEO,MAAM,kBAAkB,CAAC,MAAM,YACpC,CAAC,UAAU,CAAC,IAAI,KAAK,OAAO,CAAC,aAAa,YAAQ,oCAAe,aAAa,IAAI,IAAI,IAAI,GAAG,CAAC,CAAC;AAE1F,MAAM,yBAAyB,CAAC,cAAc,OAAQ,CAAC,aAAa,UAAM,oCAAe,CAAC,GAAG,IAAI,IAAI,IAAI,CAAC;AAEjH,MAAM,0BAA0B,CAAC,aAAa,CAAC,SAAS;AAAA,EACtD,GAAG;AAAA,EACH,qBAAqB;AACvB;AAEO,MAAM,kBAAkB,CAAC,MAAM,WAAW,KAAK,IAAI,CAAC,QAAQ,wBAAwB,OAAO,GAAG,CAAC,EAAE,GAAG,CAAC;AAErG,MAAM,oBAAoB,CAAC,MAAM,2BACtC,KAAK,IAAI,CAAC,QAAQ,wBAAwB,uBAAuB,GAAG,CAAC,EAAE,GAAG,CAAC;",
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB,0BAA+B;AAExB,MAAM,uBAAuB,CAAC,MAAM,iBAAiB;AAC1D,MAAI,KAAK,UAAU,aAAa,WAAW,KAAK;AAAQ,WAAO;AAC/D,MAAI,aAAa;AAAQ,WAAO;AAChC,SAAO;AACT;AAEO,MAAM,kBAAkB,CAAC,MAAM,YACpC,CAAC,UAAU,CAAC,IAAI,KAAK,OAAO,CAAC,aAAa,YAAQ,oCAAe,aAAa,IAAI,IAAI,IAAI,GAAG,CAAC,CAAC;AAE1F,MAAM,yBAAyB,CAAC,cAAc,OAAQ,CAAC,aAAa,EAAE,QAAI,oCAAe,CAAC,GAAG,IAAI,IAAI,IAAI,CAAC;AAEjH,MAAM,0BAA0B,CAAC,aAAa,CAAC,SAAS;AAAA,EACtD,GAAG;AAAA,EACH,qBAAqB;AACvB;AAEO,MAAM,kBAAkB,CAAC,MAAM,WAAW,KAAK,IAAI,CAAC,QAAQ,wBAAwB,OAAO,GAAG,CAAC,EAAE,GAAG,CAAC;AAErG,MAAM,oBAAoB,CAAC,MAAM,2BACtC,KAAK,IAAI,CAAC,QAAQ,wBAAwB,uBAAuB,GAAG,CAAC,EAAE,GAAG,CAAC;",
6
6
  "names": []
7
7
  }
@@ -18,6 +18,10 @@ var __copyProps = (to, from, except, desc) => {
18
18
  return to;
19
19
  };
20
20
  var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
21
25
  isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
22
26
  mod
23
27
  ));
@@ -28,5 +32,5 @@ __export(selectable_exports, {
28
32
  });
29
33
  module.exports = __toCommonJS(selectable_exports);
30
34
  var React = __toESM(require("react"));
31
- var import_SelectablePlugin = require("./SelectablePlugin");
35
+ var import_SelectablePlugin = require("./SelectablePlugin.js");
32
36
  //# sourceMappingURL=index.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/plugins/selectable/index.tsx", "../../../../../../scripts/build/transpile/react-shim.js"],
4
- "sourcesContent": ["export { SelectablePlugin } from './SelectablePlugin';\n", "import * as React from 'react';\nexport { React };\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB,8BAAiC;",
4
+ "sourcesContent": ["export { SelectablePlugin } from './SelectablePlugin.js';\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB,8BAAiC;",
6
6
  "names": []
7
7
  }
@@ -18,6 +18,10 @@ var __copyProps = (to, from, except, desc) => {
18
18
  return to;
19
19
  };
20
20
  var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
21
25
  isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
22
26
  mod
23
27
  ));
@@ -53,7 +57,7 @@ const SelectableComponent = import_react.default.memo(
53
57
  (prev, next) => next.isScrolling
54
58
  )
55
59
  );
56
- const selectableFormatter = ({ isMultiSelect = false, renderer, className, isHeader, onSelect }, grid) => (valueRender, extraParams) => {
60
+ const selectableFormatter = ({ isMultiSelect = false, renderer, className, isHeader, onSelect }, grid) => function(valueRender, extraParams) {
57
61
  const { registerFocus } = extraParams;
58
62
  const ref = (0, import_react.useRef)();
59
63
  const {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/plugins/selectable/selectableFormatter.tsx", "../../../../../../scripts/build/transpile/react-shim.js"],
4
- "sourcesContent": ["/* eslint-disable react/prop-types */\n/* eslint-disable indent */\n/* eslint-disable jsx-a11y/no-static-element-interactions,jsx-a11y/click-events-have-key-events,react/display-name */\nimport React, { forwardRef, useEffect, useRef } from 'react';\nimport { isFunction } from '@elliemae/ds-utilities';\nimport { DSCheckbox, DSRadio } from '@elliemae/ds-form';\n\nconst SelectableWrapper = ({ className, children }) => (\n <div className={className} onClick={(e) => e.stopPropagation()}>\n {children}\n </div>\n);\n\nconst SelectableComponent = React.memo(\n forwardRef(\n ({ className, isMultiSelect, isHeader, onSelect, isSelected, value }, ref) => {\n const SelectComponent = isMultiSelect || isHeader ? DSCheckbox : DSRadio;\n\n return (\n <SelectableWrapper className={className}>\n <SelectComponent\n checked={isSelected}\n data-testid=\"column-selectable-component\"\n innerRef={ref}\n onChange={onSelect}\n tabIndex={-1}\n value={value}\n />\n </SelectableWrapper>\n );\n },\n (prev, next) => next.isScrolling,\n ),\n);\n\nconst selectableFormatter =\n ({ isMultiSelect = false, renderer, className, isHeader, onSelect }, grid) =>\n (valueRender, extraParams) => {\n const { registerFocus } = extraParams;\n const ref = useRef();\n const {\n props: { rowKey },\n state: { selection },\n shiftPressed,\n lastSelectedRow,\n } = grid.getInstance();\n const { rowData, isScrolling } = extraParams;\n\n useEffect(() => {\n if (registerFocus) registerFocus(ref.current);\n }, [ref.current]);\n\n const isSelected = isHeader ? selection.selectAll : !!selection.selectedRows[rowData[rowKey]];\n\n const handleSelect = isHeader\n ? () => onSelect(!isSelected)\n : () => onSelect(rowData[rowKey], extraParams.rowIndex, shiftPressed, lastSelectedRow);\n\n if (isFunction(renderer)) {\n return (\n <SelectableWrapper className={className}>\n {renderer({\n rowData: {},\n ...extraParams,\n value: isSelected,\n isHeader,\n onSelect: handleSelect,\n })}\n </SelectableWrapper>\n );\n }\n\n return (\n <SelectableComponent\n ref={ref}\n className={className}\n isMultiSelect={isMultiSelect}\n isScrolling={isScrolling}\n isSelected={isSelected}\n onSelect={handleSelect}\n value={!isHeader ? rowData[rowKey] : 'header-select-all'}\n />\n );\n };\n\nexport { selectableFormatter };\nexport default selectableFormatter;\n", "import * as React from 'react';\nexport { React };\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADQrB;AALF,mBAAqD;AACrD,0BAA2B;AAC3B,qBAAoC;AAEpC,MAAM,oBAAoB,CAAC,EAAE,WAAW,SAAS,MAC/C,4CAAC,SAAI,WAAsB,SAAS,CAAC,MAAM,EAAE,gBAAgB,GAC1D,UACH;AAGF,MAAM,sBAAsB,aAAAA,QAAM;AAAA,MAChC;AAAA,IACE,CAAC,EAAE,WAAW,eAAe,UAAU,UAAU,YAAY,MAAM,GAAG,QAAQ;AAC5E,YAAM,kBAAkB,iBAAiB,WAAW,4BAAa;AAEjE,aACE,4CAAC,qBAAkB,WACjB;AAAA,QAAC;AAAA;AAAA,UACC,SAAS;AAAA,UACT,eAAY;AAAA,UACZ,UAAU;AAAA,UACV,UAAU;AAAA,UACV,UAAU;AAAA,UACV;AAAA;AAAA,MACF,GACF;AAAA,IAEJ;AAAA,IACA,CAAC,MAAM,SAAS,KAAK;AAAA,EACvB;AACF;AAEA,MAAM,sBACJ,CAAC,EAAE,gBAAgB,OAAO,UAAU,WAAW,UAAU,SAAS,GAAG,SACrE,CAAC,aAAa,gBAAgB;AAC5B,QAAM,EAAE,cAAc,IAAI;AAC1B,QAAM,UAAM,qBAAO;AACnB,QAAM;AAAA,IACJ,OAAO,EAAE,OAAO;AAAA,IAChB,OAAO,EAAE,UAAU;AAAA,IACnB;AAAA,IACA;AAAA,EACF,IAAI,KAAK,YAAY;AACrB,QAAM,EAAE,SAAS,YAAY,IAAI;AAEjC,8BAAU,MAAM;AACd,QAAI;AAAe,oBAAc,IAAI,OAAO;AAAA,EAC9C,GAAG,CAAC,IAAI,OAAO,CAAC;AAEhB,QAAM,aAAa,WAAW,UAAU,YAAY,CAAC,CAAC,UAAU,aAAa,QAAQ;AAErF,QAAM,eAAe,WACjB,MAAM,SAAS,CAAC,UAAU,IAC1B,MAAM,SAAS,QAAQ,SAAS,YAAY,UAAU,cAAc,eAAe;AAEvF,UAAI,gCAAW,QAAQ,GAAG;AACxB,WACE,4CAAC,qBAAkB,WAChB,mBAAS;AAAA,MACR,SAAS,CAAC;AAAA,MACV,GAAG;AAAA,MACH,OAAO;AAAA,MACP;AAAA,MACA,UAAU;AAAA,IACZ,CAAC,GACH;AAAA,EAEJ;AAEA,SACE;AAAA,IAAC;AAAA;AAAA,MACC;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA,UAAU;AAAA,MACV,OAAO,CAAC,WAAW,QAAQ,UAAU;AAAA;AAAA,EACvC;AAEJ;AAGF,IAAO,8BAAQ;",
4
+ "sourcesContent": ["/* eslint-disable react/prop-types */\n/* eslint-disable indent */\n/* eslint-disable jsx-a11y/no-static-element-interactions,jsx-a11y/click-events-have-key-events,react/display-name */\nimport React, { forwardRef, useEffect, useRef } from 'react';\nimport { isFunction } from '@elliemae/ds-utilities';\nimport { DSCheckbox, DSRadio } from '@elliemae/ds-form';\n\nconst SelectableWrapper = ({ className, children }) => (\n <div className={className} onClick={(e) => e.stopPropagation()}>\n {children}\n </div>\n);\n\nconst SelectableComponent = React.memo(\n forwardRef(\n ({ className, isMultiSelect, isHeader, onSelect, isSelected, value }, ref) => {\n const SelectComponent = isMultiSelect || isHeader ? DSCheckbox : DSRadio;\n\n return (\n <SelectableWrapper className={className}>\n <SelectComponent\n checked={isSelected}\n data-testid=\"column-selectable-component\"\n innerRef={ref}\n onChange={onSelect}\n tabIndex={-1}\n value={value}\n />\n </SelectableWrapper>\n );\n },\n (prev, next) => next.isScrolling,\n ),\n);\n\nconst selectableFormatter = ({ isMultiSelect = false, renderer, className, isHeader, onSelect }, grid) =>\n function (valueRender, extraParams) {\n const { registerFocus } = extraParams;\n const ref = useRef();\n const {\n props: { rowKey },\n state: { selection },\n shiftPressed,\n lastSelectedRow,\n } = grid.getInstance();\n const { rowData, isScrolling } = extraParams;\n\n useEffect(() => {\n if (registerFocus) registerFocus(ref.current);\n }, [ref.current]);\n\n const isSelected = isHeader ? selection.selectAll : !!selection.selectedRows[rowData[rowKey]];\n\n const handleSelect = isHeader\n ? () => onSelect(!isSelected)\n : () => onSelect(rowData[rowKey], extraParams.rowIndex, shiftPressed, lastSelectedRow);\n\n if (isFunction(renderer)) {\n return (\n <SelectableWrapper className={className}>\n {renderer({\n rowData: {},\n ...extraParams,\n value: isSelected,\n isHeader,\n onSelect: handleSelect,\n })}\n </SelectableWrapper>\n );\n }\n\n return (\n <SelectableComponent\n ref={ref}\n className={className}\n isMultiSelect={isMultiSelect}\n isScrolling={isScrolling}\n isSelected={isSelected}\n onSelect={handleSelect}\n value={!isHeader ? rowData[rowKey] : 'header-select-all'}\n />\n );\n };\n\nexport { selectableFormatter };\nexport default selectableFormatter;\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADQrB;AALF,mBAAqD;AACrD,0BAA2B;AAC3B,qBAAoC;AAEpC,MAAM,oBAAoB,CAAC,EAAE,WAAW,SAAS,MAC/C,4CAAC,SAAI,WAAsB,SAAS,CAAC,MAAM,EAAE,gBAAgB,GAC1D,UACH;AAGF,MAAM,sBAAsB,aAAAA,QAAM;AAAA,MAChC;AAAA,IACE,CAAC,EAAE,WAAW,eAAe,UAAU,UAAU,YAAY,MAAM,GAAG,QAAQ;AAC5E,YAAM,kBAAkB,iBAAiB,WAAW,4BAAa;AAEjE,aACE,4CAAC,qBAAkB,WACjB;AAAA,QAAC;AAAA;AAAA,UACC,SAAS;AAAA,UACT,eAAY;AAAA,UACZ,UAAU;AAAA,UACV,UAAU;AAAA,UACV,UAAU;AAAA,UACV;AAAA;AAAA,MACF,GACF;AAAA,IAEJ;AAAA,IACA,CAAC,MAAM,SAAS,KAAK;AAAA,EACvB;AACF;AAEA,MAAM,sBAAsB,CAAC,EAAE,gBAAgB,OAAO,UAAU,WAAW,UAAU,SAAS,GAAG,SAC/F,SAAU,aAAa,aAAa;AAClC,QAAM,EAAE,cAAc,IAAI;AAC1B,QAAM,UAAM,qBAAO;AACnB,QAAM;AAAA,IACJ,OAAO,EAAE,OAAO;AAAA,IAChB,OAAO,EAAE,UAAU;AAAA,IACnB;AAAA,IACA;AAAA,EACF,IAAI,KAAK,YAAY;AACrB,QAAM,EAAE,SAAS,YAAY,IAAI;AAEjC,8BAAU,MAAM;AACd,QAAI;AAAe,oBAAc,IAAI,OAAO;AAAA,EAC9C,GAAG,CAAC,IAAI,OAAO,CAAC;AAEhB,QAAM,aAAa,WAAW,UAAU,YAAY,CAAC,CAAC,UAAU,aAAa,QAAQ,MAAM,CAAC;AAE5F,QAAM,eAAe,WACjB,MAAM,SAAS,CAAC,UAAU,IAC1B,MAAM,SAAS,QAAQ,MAAM,GAAG,YAAY,UAAU,cAAc,eAAe;AAEvF,UAAI,gCAAW,QAAQ,GAAG;AACxB,WACE,4CAAC,qBAAkB,WAChB,mBAAS;AAAA,MACR,SAAS,CAAC;AAAA,MACV,GAAG;AAAA,MACH,OAAO;AAAA,MACP;AAAA,MACA,UAAU;AAAA,IACZ,CAAC,GACH;AAAA,EAEJ;AAEA,SACE;AAAA,IAAC;AAAA;AAAA,MACC;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA,UAAU;AAAA,MACV,OAAO,CAAC,WAAW,QAAQ,MAAM,IAAI;AAAA;AAAA,EACvC;AAEJ;AAGF,IAAO,8BAAQ;",
6
6
  "names": ["React"]
7
7
  }
@@ -18,6 +18,10 @@ var __copyProps = (to, from, except, desc) => {
18
18
  return to;
19
19
  };
20
20
  var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
21
25
  isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
22
26
  mod
23
27
  ));
@@ -30,7 +34,7 @@ module.exports = __toCommonJS(useSelectableState_exports);
30
34
  var React = __toESM(require("react"));
31
35
  var import_ds_utilities = require("@elliemae/ds-utilities");
32
36
  var import_ds_utilities2 = require("@elliemae/ds-utilities");
33
- var import_helper = require("./helper");
37
+ var import_helper = require("./helper.js");
34
38
  function deriveSelectedStateFromPropsOnUpdate(rows) {
35
39
  return (nextProp = {}, prevProp = {}) => {
36
40
  if (nextProp.selectAll !== prevProp.selectAll) {
@@ -61,6 +65,8 @@ function useSelectableState(grid) {
61
65
  setSelectedRowsState((prevState) => {
62
66
  const { rows: nextRows } = grid.getInstance();
63
67
  const wasSelected = Object.keys(prevState.selectedRows).some(
68
+ // we need to match softly as the id may be a number
69
+ // eslint-disable-next-line eqeqeq
64
70
  (elem) => elem == id
65
71
  );
66
72
  let nextSelectedRows = multiple ? (0, import_ds_utilities2.toggleInObject)(prevState.selectedRows, id, true) : (0, import_helper.toggleSingleSelectable)(prevState.selectedRows, id);
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/plugins/selectable/useSelectableState.tsx", "../../../../../../scripts/build/transpile/react-shim.js"],
4
- "sourcesContent": ["/* eslint-disable max-lines */\nimport { useDerivedStateFromProps } from '@elliemae/ds-utilities';\nimport { toggleInObject, hashArray, omit } from '@elliemae/ds-utilities';\nimport {\n checkAllRowsSelected,\n toggleSelectAll,\n toggleSingleSelectable,\n} from './helper';\n\nfunction deriveSelectedStateFromPropsOnUpdate(rows) {\n return (nextProp = {}, prevProp = {}) => {\n if (nextProp.selectAll !== prevProp.selectAll) {\n const nextSelectedRows = nextProp.selectAll\n ? toggleSelectAll(rows, true)\n : hashArray(nextProp.selectedRows || []);\n return {\n selectedRows: nextSelectedRows,\n selectAll: checkAllRowsSelected(rows, Object.keys(nextSelectedRows)),\n };\n }\n return {\n selectedRows: hashArray(nextProp.selectedRows || []),\n selectAll: checkAllRowsSelected(rows, Object.keys(nextProp.selectedRows)),\n };\n };\n}\n\nexport function useSelectableState(grid) {\n const {\n props: { rowKey = 'id', selectedRows, selectAll, selectable, onSelectRow, onSelectAll },\n rows,\n setLastSelectedRow,\n } = grid.getInstance();\n\n const multiple = selectable === 'multi';\n const [selection, setSelectedRowsState] = useDerivedStateFromProps(\n { selectedRows, selectAll },\n { onUpdate: deriveSelectedStateFromPropsOnUpdate(rows) },\n );\n\n // ACTIONS\n const handleSelectRow = (\n id,\n index,\n shift = false,\n lastSelectedRow = null,\n // eslint-disable-next-line max-params\n ) => {\n setSelectedRowsState((prevState) => {\n const { rows: nextRows } = grid.getInstance();\n const wasSelected = Object.keys(prevState.selectedRows).some(\n // we need to match softly as the id may be a number\n // eslint-disable-next-line eqeqeq\n (elem) => elem == id,\n );\n let nextSelectedRows = multiple\n ? toggleInObject(prevState.selectedRows, id, true)\n : toggleSingleSelectable(prevState.selectedRows, id);\n setLastSelectedRow({ index, mode: wasSelected ? 'deselect' : 'select' });\n if (shift && lastSelectedRow) {\n const prevSmallest = lastSelectedRow.index < index + 1;\n const sliceStart = prevSmallest ? lastSelectedRow.index : index;\n const sliceEnd = prevSmallest ? index + 1 : lastSelectedRow.index + 1;\n const rowSegment = nextRows.slice(sliceStart, sliceEnd).map((row) => row[rowKey]);\n if (lastSelectedRow.mode === 'deselect') {\n nextSelectedRows = omit(prevState.selectedRows, rowSegment);\n } else {\n const selectedSegment = rowSegment.reduce((o, key) => ({ ...o, [key]: true }), {});\n nextSelectedRows = {\n ...prevState.selectedRows,\n ...selectedSegment,\n };\n }\n }\n\n const nextState = {\n selectedRows: nextSelectedRows,\n selectAll: checkAllRowsSelected(nextRows, Object.keys(nextSelectedRows)),\n };\n if (index !== null && index !== undefined) {\n onSelectRow(\n nextRows.filter((row) => nextState.selectedRows[row[rowKey]]),\n nextState.selectAll,\n index,\n );\n }\n\n return nextState;\n });\n };\n\n const handleSelectAll = (checked) => {\n if (!multiple) return;\n setLastSelectedRow(null);\n setSelectedRowsState(() => {\n const { composedRows: nextRows } = grid.getInstance();\n\n const nextState = {\n selectAll: checked,\n selectedRows: toggleSelectAll(nextRows, checked),\n };\n\n onSelectAll(nextState.selectAll);\n onSelectRow(checked ? nextRows : [], nextState.selectAll);\n\n return nextState;\n });\n };\n\n return {\n actions: {\n selectRow: handleSelectRow,\n selectAll: handleSelectAll,\n },\n state: {\n selection,\n },\n };\n}\n", "import * as React from 'react';\nexport { React };\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["/* eslint-disable max-lines */\nimport { useDerivedStateFromProps } from '@elliemae/ds-utilities';\nimport { toggleInObject, hashArray, omit } from '@elliemae/ds-utilities';\nimport { checkAllRowsSelected, toggleSelectAll, toggleSingleSelectable } from './helper.js';\n\nfunction deriveSelectedStateFromPropsOnUpdate(rows) {\n return (nextProp = {}, prevProp = {}) => {\n if (nextProp.selectAll !== prevProp.selectAll) {\n const nextSelectedRows = nextProp.selectAll\n ? toggleSelectAll(rows, true)\n : hashArray(nextProp.selectedRows || []);\n return {\n selectedRows: nextSelectedRows,\n selectAll: checkAllRowsSelected(rows, Object.keys(nextSelectedRows)),\n };\n }\n return {\n selectedRows: hashArray(nextProp.selectedRows || []),\n selectAll: checkAllRowsSelected(rows, Object.keys(nextProp.selectedRows)),\n };\n };\n}\n\nexport function useSelectableState(grid) {\n const {\n props: { rowKey = 'id', selectedRows, selectAll, selectable, onSelectRow, onSelectAll },\n rows,\n setLastSelectedRow,\n } = grid.getInstance();\n\n const multiple = selectable === 'multi';\n const [selection, setSelectedRowsState] = useDerivedStateFromProps(\n { selectedRows, selectAll },\n { onUpdate: deriveSelectedStateFromPropsOnUpdate(rows) },\n );\n\n // ACTIONS\n const handleSelectRow = (\n id,\n index,\n shift = false,\n lastSelectedRow = null,\n // eslint-disable-next-line max-params\n ) => {\n setSelectedRowsState((prevState) => {\n const { rows: nextRows } = grid.getInstance();\n const wasSelected = Object.keys(prevState.selectedRows).some(\n // we need to match softly as the id may be a number\n // eslint-disable-next-line eqeqeq\n (elem) => elem == id,\n );\n let nextSelectedRows = multiple\n ? toggleInObject(prevState.selectedRows, id, true)\n : toggleSingleSelectable(prevState.selectedRows, id);\n setLastSelectedRow({ index, mode: wasSelected ? 'deselect' : 'select' });\n if (shift && lastSelectedRow) {\n const prevSmallest = lastSelectedRow.index < index + 1;\n const sliceStart = prevSmallest ? lastSelectedRow.index : index;\n const sliceEnd = prevSmallest ? index + 1 : lastSelectedRow.index + 1;\n const rowSegment = nextRows.slice(sliceStart, sliceEnd).map((row) => row[rowKey]);\n if (lastSelectedRow.mode === 'deselect') {\n nextSelectedRows = omit(prevState.selectedRows, rowSegment);\n } else {\n const selectedSegment = rowSegment.reduce((o, key) => ({ ...o, [key]: true }), {});\n nextSelectedRows = {\n ...prevState.selectedRows,\n ...selectedSegment,\n };\n }\n }\n\n const nextState = {\n selectedRows: nextSelectedRows,\n selectAll: checkAllRowsSelected(nextRows, Object.keys(nextSelectedRows)),\n };\n if (index !== null && index !== undefined) {\n onSelectRow(\n nextRows.filter((row) => nextState.selectedRows[row[rowKey]]),\n nextState.selectAll,\n index,\n );\n }\n\n return nextState;\n });\n };\n\n const handleSelectAll = (checked) => {\n if (!multiple) return;\n setLastSelectedRow(null);\n setSelectedRowsState(() => {\n const { composedRows: nextRows } = grid.getInstance();\n\n const nextState = {\n selectAll: checked,\n selectedRows: toggleSelectAll(nextRows, checked),\n };\n\n onSelectAll(nextState.selectAll);\n onSelectRow(checked ? nextRows : [], nextState.selectAll);\n\n return nextState;\n });\n };\n\n return {\n actions: {\n selectRow: handleSelectRow,\n selectAll: handleSelectAll,\n },\n state: {\n selection,\n },\n };\n}\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": "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",
6
6
  "names": ["import_ds_utilities"]
7
7
  }
@@ -18,6 +18,10 @@ var __copyProps = (to, from, except, desc) => {
18
18
  return to;
19
19
  };
20
20
  var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
21
25
  isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
22
26
  mod
23
27
  ));
@@ -31,9 +35,9 @@ var React = __toESM(require("react"));
31
35
  var sortabular = __toESM(require("sortabular"));
32
36
  var import_ds_utilities = require("@elliemae/ds-utilities");
33
37
  var import_ds_shared = require("@elliemae/ds-shared");
34
- var import_sortHeaderFormatter = require("./sortHeaderFormatter");
35
- var import_useSortableState = require("./useSortableState");
36
- var import_sorter = require("./sorter");
38
+ var import_sortHeaderFormatter = require("./sortHeaderFormatter.js");
39
+ var import_useSortableState = require("./useSortableState.js");
40
+ var import_sorter = require("./sorter.js");
37
41
  const decorateColumn = (column, grid) => {
38
42
  const {
39
43
  props: { isSortableColumnActive = (col) => col.sortable, groupedRows }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/plugins/sortable/SortablePlugin.tsx", "../../../../../../scripts/build/transpile/react-shim.js"],
4
- "sourcesContent": ["import * as sortabular from 'sortabular';\nimport { compose, isEmpty, orderBy } from '@elliemae/ds-utilities';\nimport { createInstancePlugin, appendHeaderFormatter, mergeClassNameToColumnHeader } from '@elliemae/ds-shared';\nimport { sortHeaderFormatter } from './sortHeaderFormatter';\nimport { useSortableState } from './useSortableState';\nimport { sorter, sorterGroups } from './sorter';\n\nconst decorateColumn = (column, grid) => {\n const {\n props: { isSortableColumnActive = (col) => col.sortable, groupedRows },\n } = grid;\n\n if (groupedRows) return column;\n if (!isSortableColumnActive(column)) return column;\n\n const formatter = sortHeaderFormatter(\n sortabular.sort({\n getSortingColumns: () => grid.getState().sortingColumns || [],\n onSort: grid.actions.sort,\n strategy: sortabular.strategies.byProperty,\n }),\n grid,\n );\n\n return compose(appendHeaderFormatter(formatter), mergeClassNameToColumnHeader('with-sortable'))(column);\n};\n\nconst composeRows = (rows, grid) => {\n const {\n state: { sortingColumns },\n props: { isDataSorted, groupedRows, groupedBy, sortEmptyLast },\n rows: rowsData,\n composedRows,\n decoratedColumns,\n } = grid.getInstance();\n\n const sortingConfig = {\n columns: decoratedColumns,\n sortingColumns: !isEmpty(sortingColumns) && sortingColumns,\n sort: orderBy,\n emptyLast: sortEmptyLast,\n };\n\n // TODO: 1572 FIX\n if (groupedRows && !groupedBy) {\n return !isDataSorted ? sorterGroups(sortingConfig)(composedRows, rowsData, groupedBy) : rows;\n }\n\n return !isDataSorted ? sorter(sortingConfig)(rows) : rows;\n};\n\nexport const SortablePlugin = createInstancePlugin('sortable', {\n registerStateHook: useSortableState,\n decorateColumn,\n composeRows,\n registerHotKeys(grid) {\n return {\n key: 'ctrl+s',\n handler: ({ cellIndex }) => {\n const {\n actions: { sort },\n decoratedColumns,\n } = grid.getInstance();\n const column = decoratedColumns[cellIndex];\n if (!column) return;\n sort(column.property);\n },\n };\n },\n});\n", "import * as React from 'react';\nexport { React };\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB,iBAA4B;AAC5B,0BAA0C;AAC1C,uBAA0F;AAC1F,iCAAoC;AACpC,8BAAiC;AACjC,oBAAqC;AAErC,MAAM,iBAAiB,CAAC,QAAQ,SAAS;AACvC,QAAM;AAAA,IACJ,OAAO,EAAE,yBAAyB,CAAC,QAAQ,IAAI,UAAU,YAAY;AAAA,EACvE,IAAI;AAEJ,MAAI;AAAa,WAAO;AACxB,MAAI,CAAC,uBAAuB,MAAM;AAAG,WAAO;AAE5C,QAAM,gBAAY;AAAA,IAChB,WAAW,KAAK;AAAA,MACd,mBAAmB,MAAM,KAAK,SAAS,EAAE,kBAAkB,CAAC;AAAA,MAC5D,QAAQ,KAAK,QAAQ;AAAA,MACrB,UAAU,WAAW,WAAW;AAAA,IAClC,CAAC;AAAA,IACD;AAAA,EACF;AAEA,aAAO,iCAAQ,wCAAsB,SAAS,OAAG,+CAA6B,eAAe,CAAC,EAAE,MAAM;AACxG;AAEA,MAAM,cAAc,CAAC,MAAM,SAAS;AAClC,QAAM;AAAA,IACJ,OAAO,EAAE,eAAe;AAAA,IACxB,OAAO,EAAE,cAAc,aAAa,WAAW,cAAc;AAAA,IAC7D,MAAM;AAAA,IACN;AAAA,IACA;AAAA,EACF,IAAI,KAAK,YAAY;AAErB,QAAM,gBAAgB;AAAA,IACpB,SAAS;AAAA,IACT,gBAAgB,KAAC,6BAAQ,cAAc,KAAK;AAAA,IAC5C,MAAM;AAAA,IACN,WAAW;AAAA,EACb;AAGA,MAAI,eAAe,CAAC,WAAW;AAC7B,WAAO,CAAC,mBAAe,4BAAa,aAAa,EAAE,cAAc,UAAU,SAAS,IAAI;AAAA,EAC1F;AAEA,SAAO,CAAC,mBAAe,sBAAO,aAAa,EAAE,IAAI,IAAI;AACvD;AAEO,MAAM,qBAAiB,uCAAqB,YAAY;AAAA,EAC7D,mBAAmB;AAAA,EACnB;AAAA,EACA;AAAA,EACA,gBAAgB,MAAM;AACpB,WAAO;AAAA,MACL,KAAK;AAAA,MACL,SAAS,CAAC,EAAE,UAAU,MAAM;AAC1B,cAAM;AAAA,UACJ,SAAS,EAAE,KAAK;AAAA,UAChB;AAAA,QACF,IAAI,KAAK,YAAY;AACrB,cAAM,SAAS,iBAAiB;AAChC,YAAI,CAAC;AAAQ;AACb,aAAK,OAAO,QAAQ;AAAA,MACtB;AAAA,IACF;AAAA,EACF;AACF,CAAC;",
4
+ "sourcesContent": ["import * as sortabular from 'sortabular';\nimport { compose, isEmpty, orderBy } from '@elliemae/ds-utilities';\nimport { createInstancePlugin, appendHeaderFormatter, mergeClassNameToColumnHeader } from '@elliemae/ds-shared';\nimport { sortHeaderFormatter } from './sortHeaderFormatter.js';\nimport { useSortableState } from './useSortableState.js';\nimport { sorter, sorterGroups } from './sorter.js';\n\nconst decorateColumn = (column, grid) => {\n const {\n props: { isSortableColumnActive = (col) => col.sortable, groupedRows },\n } = grid;\n\n if (groupedRows) return column;\n if (!isSortableColumnActive(column)) return column;\n\n const formatter = sortHeaderFormatter(\n sortabular.sort({\n getSortingColumns: () => grid.getState().sortingColumns || [],\n onSort: grid.actions.sort,\n strategy: sortabular.strategies.byProperty,\n }),\n grid,\n );\n\n return compose(appendHeaderFormatter(formatter), mergeClassNameToColumnHeader('with-sortable'))(column);\n};\n\nconst composeRows = (rows, grid) => {\n const {\n state: { sortingColumns },\n props: { isDataSorted, groupedRows, groupedBy, sortEmptyLast },\n rows: rowsData,\n composedRows,\n decoratedColumns,\n } = grid.getInstance();\n\n const sortingConfig = {\n columns: decoratedColumns,\n sortingColumns: !isEmpty(sortingColumns) && sortingColumns,\n sort: orderBy,\n emptyLast: sortEmptyLast,\n };\n\n // TODO: 1572 FIX\n if (groupedRows && !groupedBy) {\n return !isDataSorted ? sorterGroups(sortingConfig)(composedRows, rowsData, groupedBy) : rows;\n }\n\n return !isDataSorted ? sorter(sortingConfig)(rows) : rows;\n};\n\nexport const SortablePlugin = createInstancePlugin('sortable', {\n registerStateHook: useSortableState,\n decorateColumn,\n composeRows,\n registerHotKeys(grid) {\n return {\n key: 'ctrl+s',\n handler: ({ cellIndex }) => {\n const {\n actions: { sort },\n decoratedColumns,\n } = grid.getInstance();\n const column = decoratedColumns[cellIndex];\n if (!column) return;\n sort(column.property);\n },\n };\n },\n});\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB,iBAA4B;AAC5B,0BAA0C;AAC1C,uBAA0F;AAC1F,iCAAoC;AACpC,8BAAiC;AACjC,oBAAqC;AAErC,MAAM,iBAAiB,CAAC,QAAQ,SAAS;AACvC,QAAM;AAAA,IACJ,OAAO,EAAE,yBAAyB,CAAC,QAAQ,IAAI,UAAU,YAAY;AAAA,EACvE,IAAI;AAEJ,MAAI;AAAa,WAAO;AACxB,MAAI,CAAC,uBAAuB,MAAM;AAAG,WAAO;AAE5C,QAAM,gBAAY;AAAA,IAChB,WAAW,KAAK;AAAA,MACd,mBAAmB,MAAM,KAAK,SAAS,EAAE,kBAAkB,CAAC;AAAA,MAC5D,QAAQ,KAAK,QAAQ;AAAA,MACrB,UAAU,WAAW,WAAW;AAAA,IAClC,CAAC;AAAA,IACD;AAAA,EACF;AAEA,aAAO,iCAAQ,wCAAsB,SAAS,OAAG,+CAA6B,eAAe,CAAC,EAAE,MAAM;AACxG;AAEA,MAAM,cAAc,CAAC,MAAM,SAAS;AAClC,QAAM;AAAA,IACJ,OAAO,EAAE,eAAe;AAAA,IACxB,OAAO,EAAE,cAAc,aAAa,WAAW,cAAc;AAAA,IAC7D,MAAM;AAAA,IACN;AAAA,IACA;AAAA,EACF,IAAI,KAAK,YAAY;AAErB,QAAM,gBAAgB;AAAA,IACpB,SAAS;AAAA,IACT,gBAAgB,KAAC,6BAAQ,cAAc,KAAK;AAAA,IAC5C,MAAM;AAAA,IACN,WAAW;AAAA,EACb;AAGA,MAAI,eAAe,CAAC,WAAW;AAC7B,WAAO,CAAC,mBAAe,4BAAa,aAAa,EAAE,cAAc,UAAU,SAAS,IAAI;AAAA,EAC1F;AAEA,SAAO,CAAC,mBAAe,sBAAO,aAAa,EAAE,IAAI,IAAI;AACvD;AAEO,MAAM,qBAAiB,uCAAqB,YAAY;AAAA,EAC7D,mBAAmB;AAAA,EACnB;AAAA,EACA;AAAA,EACA,gBAAgB,MAAM;AACpB,WAAO;AAAA,MACL,KAAK;AAAA,MACL,SAAS,CAAC,EAAE,UAAU,MAAM;AAC1B,cAAM;AAAA,UACJ,SAAS,EAAE,KAAK;AAAA,UAChB;AAAA,QACF,IAAI,KAAK,YAAY;AACrB,cAAM,SAAS,iBAAiB,SAAS;AACzC,YAAI,CAAC;AAAQ;AACb,aAAK,OAAO,QAAQ;AAAA,MACtB;AAAA,IACF;AAAA,EACF;AACF,CAAC;",
6
6
  "names": []
7
7
  }
@@ -18,6 +18,10 @@ var __copyProps = (to, from, except, desc) => {
18
18
  return to;
19
19
  };
20
20
  var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
21
25
  isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
22
26
  mod
23
27
  ));
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/plugins/sortable/checkIfSortable.tsx", "../../../../../../scripts/build/transpile/react-shim.js"],
4
4
  "sourcesContent": ["/* eslint-disable no-plusplus */\n/* eslint-disable no-loops/no-loops */\nexport const checkIfSortable = (column, rows) => {\n for (let index = 0; index < rows.length; index++) {\n const element = rows[index][column];\n if (!(element === null || element === undefined)) {\n // PUI-6452\n return true;\n }\n }\n return false;\n};\n\nexport default checkIfSortable;\n", "import * as React from 'react';\nexport { React };\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADEhB,MAAM,kBAAkB,CAAC,QAAQ,SAAS;AAC/C,WAAS,QAAQ,GAAG,QAAQ,KAAK,QAAQ,SAAS;AAChD,UAAM,UAAU,KAAK,OAAO;AAC5B,QAAI,EAAE,YAAY,QAAQ,YAAY,SAAY;AAEhD,aAAO;AAAA,IACT;AAAA,EACF;AACA,SAAO;AACT;AAEA,IAAO,0BAAQ;",
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADEhB,MAAM,kBAAkB,CAAC,QAAQ,SAAS;AAC/C,WAAS,QAAQ,GAAG,QAAQ,KAAK,QAAQ,SAAS;AAChD,UAAM,UAAU,KAAK,KAAK,EAAE,MAAM;AAClC,QAAI,EAAE,YAAY,QAAQ,YAAY,SAAY;AAEhD,aAAO;AAAA,IACT;AAAA,EACF;AACA,SAAO;AACT;AAEA,IAAO,0BAAQ;",
6
6
  "names": []
7
7
  }
@@ -18,6 +18,10 @@ var __copyProps = (to, from, except, desc) => {
18
18
  return to;
19
19
  };
20
20
  var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
21
25
  isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
22
26
  mod
23
27
  ));
@@ -28,5 +32,5 @@ __export(sortable_exports, {
28
32
  });
29
33
  module.exports = __toCommonJS(sortable_exports);
30
34
  var React = __toESM(require("react"));
31
- var import_SortablePlugin = require("./SortablePlugin");
35
+ var import_SortablePlugin = require("./SortablePlugin.js");
32
36
  //# sourceMappingURL=index.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/plugins/sortable/index.tsx", "../../../../../../scripts/build/transpile/react-shim.js"],
4
- "sourcesContent": ["export { SortablePlugin } from './SortablePlugin';\n", "import * as React from 'react';\nexport { React };\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB,4BAA+B;",
4
+ "sourcesContent": ["export { SortablePlugin } from './SortablePlugin.js';\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB,4BAA+B;",
6
6
  "names": []
7
7
  }
@@ -18,6 +18,10 @@ var __copyProps = (to, from, except, desc) => {
18
18
  return to;
19
19
  };
20
20
  var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
21
25
  isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
22
26
  mod
23
27
  ));
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/plugins/sortable/sortHeaderFormatter.tsx", "../../../../../../scripts/build/transpile/react-shim.js"],
4
4
  "sourcesContent": ["import React from 'react';\nimport { aggregatedClasses } from '@elliemae/ds-classnames';\nimport { ArrowheadDown, ArrowheadUp } from '@elliemae/ds-icons';\n\nconst blockName = 'data-grid-sort-header';\n\nconst SortHeaderContainer = aggregatedClasses('div')(blockName);\n\nconst iconColor = ['brand-primary', 800];\n\nconst SortHeader = React.memo(({ value, onClick, sortState }) => {\n const sortIndicator = sortState === 'asc' ? <ArrowheadUp color={iconColor} /> : <ArrowheadDown color={iconColor} />;\n return (\n <SortHeaderContainer onClick={onClick}>\n <span className=\"header-value\">{value}</span>\n {sortState && sortIndicator}\n </SortHeaderContainer>\n );\n});\n\nconst sortHeaderFormatter =\n (sortable, grid) =>\n (value, { columnIndex, property }) => {\n const {\n state: { sortingColumns },\n } = grid.getInstance();\n const { onClick, className } = sortable(value, { columnIndex, property });\n return (\n <SortHeader\n className={className}\n onClick={onClick}\n sortState={sortingColumns[property] && sortingColumns[property].direction}\n value={value}\n />\n );\n };\n\nexport { sortHeaderFormatter };\nexport default sortHeaderFormatter;\n", "import * as React from 'react';\nexport { React };\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADWuB;AAX9C,mBAAkB;AAClB,2BAAkC;AAClC,sBAA2C;AAE3C,MAAM,YAAY;AAElB,MAAM,0BAAsB,wCAAkB,KAAK,EAAE,SAAS;AAE9D,MAAM,YAAY,CAAC,iBAAiB,GAAG;AAEvC,MAAM,aAAa,aAAAA,QAAM,KAAK,CAAC,EAAE,OAAO,SAAS,UAAU,MAAM;AAC/D,QAAM,gBAAgB,cAAc,QAAQ,4CAAC,+BAAY,OAAO,WAAW,IAAK,4CAAC,iCAAc,OAAO,WAAW;AACjH,SACE,6CAAC,uBAAoB,SACnB;AAAA,gDAAC,UAAK,WAAU,gBAAgB,iBAAM;AAAA,IACrC,aAAa;AAAA,KAChB;AAEJ,CAAC;AAED,MAAM,sBACJ,CAAC,UAAU,SACX,CAAC,OAAO,EAAE,aAAa,SAAS,MAAM;AACpC,QAAM;AAAA,IACJ,OAAO,EAAE,eAAe;AAAA,EAC1B,IAAI,KAAK,YAAY;AACrB,QAAM,EAAE,SAAS,UAAU,IAAI,SAAS,OAAO,EAAE,aAAa,SAAS,CAAC;AACxE,SACE;AAAA,IAAC;AAAA;AAAA,MACC;AAAA,MACA;AAAA,MACA,WAAW,eAAe,aAAa,eAAe,UAAU;AAAA,MAChE;AAAA;AAAA,EACF;AAEJ;AAGF,IAAO,8BAAQ;",
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADWuB;AAX9C,mBAAkB;AAClB,2BAAkC;AAClC,sBAA2C;AAE3C,MAAM,YAAY;AAElB,MAAM,0BAAsB,wCAAkB,KAAK,EAAE,SAAS;AAE9D,MAAM,YAAY,CAAC,iBAAiB,GAAG;AAEvC,MAAM,aAAa,aAAAA,QAAM,KAAK,CAAC,EAAE,OAAO,SAAS,UAAU,MAAM;AAC/D,QAAM,gBAAgB,cAAc,QAAQ,4CAAC,+BAAY,OAAO,WAAW,IAAK,4CAAC,iCAAc,OAAO,WAAW;AACjH,SACE,6CAAC,uBAAoB,SACnB;AAAA,gDAAC,UAAK,WAAU,gBAAgB,iBAAM;AAAA,IACrC,aAAa;AAAA,KAChB;AAEJ,CAAC;AAED,MAAM,sBACJ,CAAC,UAAU,SACX,CAAC,OAAO,EAAE,aAAa,SAAS,MAAM;AACpC,QAAM;AAAA,IACJ,OAAO,EAAE,eAAe;AAAA,EAC1B,IAAI,KAAK,YAAY;AACrB,QAAM,EAAE,SAAS,UAAU,IAAI,SAAS,OAAO,EAAE,aAAa,SAAS,CAAC;AACxE,SACE;AAAA,IAAC;AAAA;AAAA,MACC;AAAA,MACA;AAAA,MACA,WAAW,eAAe,QAAQ,KAAK,eAAe,QAAQ,EAAE;AAAA,MAChE;AAAA;AAAA,EACF;AAEJ;AAGF,IAAO,8BAAQ;",
6
6
  "names": ["React"]
7
7
  }
@@ -18,6 +18,10 @@ var __copyProps = (to, from, except, desc) => {
18
18
  return to;
19
19
  };
20
20
  var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
21
25
  isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
22
26
  mod
23
27
  ));
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/plugins/sortable/sortTree.tsx", "../../../../../../scripts/build/transpile/react-shim.js"],
4
- "sourcesContent": ["import * as sort from 'sortabular';\n\nconst deepSorting = (sortConfig, rows = []) =>\n sort.sorter(sortConfig)(\n rows.map(row =>\n row.children && row.children.length\n ? {\n ...row,\n children: deepSorting(sortConfig, row.children),\n }\n : row,\n ),\n );\nfunction sortTree(sortConfig) {\n return rows => deepSorting(sortConfig, rows);\n}\n\nexport { sortTree };\nexport default sortTree;\n", "import * as React from 'react';\nexport { React };\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB,WAAsB;AAEtB,MAAM,cAAc,CAAC,YAAY,OAAO,CAAC,MACvC,KAAK,OAAO,UAAU;AAAA,EACpB,KAAK;AAAA,IAAI,SACP,IAAI,YAAY,IAAI,SAAS,SACzB;AAAA,MACE,GAAG;AAAA,MACH,UAAU,YAAY,YAAY,IAAI,QAAQ;AAAA,IAChD,IACA;AAAA,EACN;AACF;AACF,SAAS,SAAS,YAAY;AAC5B,SAAO,UAAQ,YAAY,YAAY,IAAI;AAC7C;AAGA,IAAO,mBAAQ;",
4
+ "sourcesContent": ["import * as sort from 'sortabular';\n\nconst deepSorting = (sortConfig, rows = []) =>\n sort.sorter(sortConfig)(\n rows.map((row) =>\n row.children && row.children.length\n ? {\n ...row,\n children: deepSorting(sortConfig, row.children),\n }\n : row,\n ),\n );\nfunction sortTree(sortConfig) {\n return (rows) => deepSorting(sortConfig, rows);\n}\n\nexport { sortTree };\nexport default sortTree;\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB,WAAsB;AAEtB,MAAM,cAAc,CAAC,YAAY,OAAO,CAAC,MACvC,KAAK,OAAO,UAAU;AAAA,EACpB,KAAK;AAAA,IAAI,CAAC,QACR,IAAI,YAAY,IAAI,SAAS,SACzB;AAAA,MACE,GAAG;AAAA,MACH,UAAU,YAAY,YAAY,IAAI,QAAQ;AAAA,IAChD,IACA;AAAA,EACN;AACF;AACF,SAAS,SAAS,YAAY;AAC5B,SAAO,CAAC,SAAS,YAAY,YAAY,IAAI;AAC/C;AAGA,IAAO,mBAAQ;",
6
6
  "names": []
7
7
  }
@@ -18,6 +18,10 @@ var __copyProps = (to, from, except, desc) => {
18
18
  return to;
19
19
  };
20
20
  var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
21
25
  isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
22
26
  mod
23
27
  ));
@@ -127,6 +131,7 @@ const sorterGroups = ({ columns, sortingColumns, sort, emptyLast } = {}) => (dat
127
131
  columnIndexList,
128
132
  orderList
129
133
  )
134
+ // sort internally
130
135
  };
131
136
  });
132
137
  const sorted = actualSortFunction(
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/plugins/sortable/sorter.tsx", "../../../../../../scripts/build/transpile/react-shim.js"],
4
4
  "sourcesContent": ["/* eslint-disable max-lines */\n/* eslint-disable max-statements */\nimport { get } from '@elliemae/ds-utilities';\nimport moment from 'moment';\n\nexport const sorter =\n ({ columns, sortingColumns, sort, emptyLast } = {}) =>\n (data) => {\n if (!columns) {\n throw new Error('sort.sorter - Missing \"columns\" argument!');\n }\n\n if (!sort) {\n throw new Error('sort.sorter - Missing \"sort\" argument!');\n }\n\n if (!sortingColumns) {\n return data;\n }\n const columnIndexList = new Array(sortingColumns.length);\n const orderList = new Array(sortingColumns.length);\n\n let actualSortFunction = sort;\n if (emptyLast) {\n actualSortFunction = (innerData, innerColumnIndexList, innerOrderList) => {\n const sortedData = sort(innerData, innerColumnIndexList, innerOrderList);\n\n const keys = Object.keys(sortingColumns);\n\n const withData = sortedData.filter((r) => keys.some((key) => !!r[key]));\n const withoutData = sortedData.filter((r) => keys.some((key) => !r[key]));\n\n return [...withData, ...withoutData];\n };\n }\n\n Object.keys(sortingColumns).forEach((sortingColumnKey) => {\n const realColumn = columns.find((column) => column.property === sortingColumnKey);\n if (!realColumn) return;\n const columnSorter =\n realColumn.sort ||\n function resolveValue(row) {\n const { property, sortBy } = realColumn;\n const value = row[sortBy || property];\n // Pick resolved value by convention\n const resolvedValue = get(row, `_${property}`, value);\n\n if (realColumn.type === 'DateTime') {\n return moment(resolvedValue);\n }\n\n return typeof resolvedValue === 'string' ? resolvedValue.toLowerCase() : resolvedValue;\n };\n\n const sortingColumn = sortingColumns[sortingColumnKey];\n\n columnIndexList[sortingColumn.position] = columnSorter;\n\n orderList[sortingColumn.position] = sortingColumn.direction;\n });\n return actualSortFunction(data, columnIndexList, orderList);\n };\n\nexport const sorterGroups =\n ({ columns, sortingColumns, sort, emptyLast } = {}) =>\n (data, rowsData) => {\n if (!columns) {\n throw new Error('sort.sorter - Missing \"columns\" argument!');\n }\n\n if (!sort) {\n throw new Error('sort.sorter - Missing \"sort\" argument!');\n }\n\n if (!sortingColumns) {\n return data;\n }\n\n const columnIndexList = new Array(sortingColumns.length);\n const orderList = new Array(sortingColumns.length);\n\n let actualSortFunction = sort;\n if (emptyLast) {\n actualSortFunction = (innerData, innerColumnIndexList, innerOrderList) => {\n const sortedData = sort(innerData, innerColumnIndexList, innerOrderList);\n\n const keys = Object.keys(sortingColumns);\n\n const withData = sortedData.filter((r) => keys.some((key) => !!r[key]));\n const withoutData = sortedData.filter((r) => keys.some((key) => !r[key]));\n\n return [...withData, ...withoutData];\n };\n }\n\n Object.keys(sortingColumns).forEach((sortingColumnKey) => {\n const realColumn = columns.find((column) => column.property === sortingColumnKey);\n if (!realColumn) return;\n const columnSorter =\n realColumn.sort ||\n function resolveValue(row) {\n const { property, sortBy } = realColumn;\n const value = row[sortBy || property];\n // Pick resolved value by convention\n const resolvedValue = get(row, `_${property}`, value);\n\n if (realColumn.type === 'DateTime') {\n return moment(resolvedValue);\n }\n\n return typeof resolvedValue === 'string' ? resolvedValue.toLowerCase() : resolvedValue;\n };\n\n const sortingColumn = sortingColumns[sortingColumnKey];\n\n columnIndexList[sortingColumn.position] = columnSorter;\n\n orderList[sortingColumn.position] = sortingColumn.direction;\n });\n\n const groups = {};\n const preserveData = {};\n data.forEach((c) => {\n preserveData[c.id] = { ...c };\n });\n\n rowsData.forEach((group) => {\n groups[group.id] = {\n children: actualSortFunction(\n group.children.map((c) => ({\n parentNode: preserveData[c.id].parentNode,\n data: c,\n ...c,\n })),\n columnIndexList,\n orderList,\n ), // sort internally\n };\n });\n\n const sorted = actualSortFunction(\n data.map((r) => ({\n ...r.data,\n ...r,\n })),\n columnIndexList,\n orderList,\n ); // sort global\n let ssortGlobal = [];\n sorted\n .filter((s) => !s.isGroup)\n .forEach((sr) => {\n if (groups[sr.parentNode.id]) {\n ssortGlobal = [...ssortGlobal, preserveData[sr.parentNode.id], ...groups[sr.parentNode.id].children];\n delete groups[sr.parentNode.id];\n }\n });\n return ssortGlobal;\n };\n", "import * as React from 'react';\nexport { React };\n"],
5
- "mappings": "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",
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADEvB,0BAAoB;AACpB,oBAAmB;AAEZ,MAAM,SACX,CAAC,EAAE,SAAS,gBAAgB,MAAM,UAAU,IAAI,CAAC,MACjD,CAAC,SAAS;AACR,MAAI,CAAC,SAAS;AACZ,UAAM,IAAI,MAAM,2CAA2C;AAAA,EAC7D;AAEA,MAAI,CAAC,MAAM;AACT,UAAM,IAAI,MAAM,wCAAwC;AAAA,EAC1D;AAEA,MAAI,CAAC,gBAAgB;AACnB,WAAO;AAAA,EACT;AACA,QAAM,kBAAkB,IAAI,MAAM,eAAe,MAAM;AACvD,QAAM,YAAY,IAAI,MAAM,eAAe,MAAM;AAEjD,MAAI,qBAAqB;AACzB,MAAI,WAAW;AACb,yBAAqB,CAAC,WAAW,sBAAsB,mBAAmB;AACxE,YAAM,aAAa,KAAK,WAAW,sBAAsB,cAAc;AAEvE,YAAM,OAAO,OAAO,KAAK,cAAc;AAEvC,YAAM,WAAW,WAAW,OAAO,CAAC,MAAM,KAAK,KAAK,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;AACtE,YAAM,cAAc,WAAW,OAAO,CAAC,MAAM,KAAK,KAAK,CAAC,QAAQ,CAAC,EAAE,GAAG,CAAC,CAAC;AAExE,aAAO,CAAC,GAAG,UAAU,GAAG,WAAW;AAAA,IACrC;AAAA,EACF;AAEA,SAAO,KAAK,cAAc,EAAE,QAAQ,CAAC,qBAAqB;AACxD,UAAM,aAAa,QAAQ,KAAK,CAAC,WAAW,OAAO,aAAa,gBAAgB;AAChF,QAAI,CAAC;AAAY;AACjB,UAAM,eACJ,WAAW,QACX,SAAS,aAAa,KAAK;AACzB,YAAM,EAAE,UAAU,OAAO,IAAI;AAC7B,YAAM,QAAQ,IAAI,UAAU,QAAQ;AAEpC,YAAM,oBAAgB,yBAAI,KAAK,IAAI,YAAY,KAAK;AAEpD,UAAI,WAAW,SAAS,YAAY;AAClC,mBAAO,cAAAA,SAAO,aAAa;AAAA,MAC7B;AAEA,aAAO,OAAO,kBAAkB,WAAW,cAAc,YAAY,IAAI;AAAA,IAC3E;AAEF,UAAM,gBAAgB,eAAe,gBAAgB;AAErD,oBAAgB,cAAc,QAAQ,IAAI;AAE1C,cAAU,cAAc,QAAQ,IAAI,cAAc;AAAA,EACpD,CAAC;AACD,SAAO,mBAAmB,MAAM,iBAAiB,SAAS;AAC5D;AAEK,MAAM,eACX,CAAC,EAAE,SAAS,gBAAgB,MAAM,UAAU,IAAI,CAAC,MACjD,CAAC,MAAM,aAAa;AAClB,MAAI,CAAC,SAAS;AACZ,UAAM,IAAI,MAAM,2CAA2C;AAAA,EAC7D;AAEA,MAAI,CAAC,MAAM;AACT,UAAM,IAAI,MAAM,wCAAwC;AAAA,EAC1D;AAEA,MAAI,CAAC,gBAAgB;AACnB,WAAO;AAAA,EACT;AAEA,QAAM,kBAAkB,IAAI,MAAM,eAAe,MAAM;AACvD,QAAM,YAAY,IAAI,MAAM,eAAe,MAAM;AAEjD,MAAI,qBAAqB;AACzB,MAAI,WAAW;AACb,yBAAqB,CAAC,WAAW,sBAAsB,mBAAmB;AACxE,YAAM,aAAa,KAAK,WAAW,sBAAsB,cAAc;AAEvE,YAAM,OAAO,OAAO,KAAK,cAAc;AAEvC,YAAM,WAAW,WAAW,OAAO,CAAC,MAAM,KAAK,KAAK,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;AACtE,YAAM,cAAc,WAAW,OAAO,CAAC,MAAM,KAAK,KAAK,CAAC,QAAQ,CAAC,EAAE,GAAG,CAAC,CAAC;AAExE,aAAO,CAAC,GAAG,UAAU,GAAG,WAAW;AAAA,IACrC;AAAA,EACF;AAEA,SAAO,KAAK,cAAc,EAAE,QAAQ,CAAC,qBAAqB;AACxD,UAAM,aAAa,QAAQ,KAAK,CAAC,WAAW,OAAO,aAAa,gBAAgB;AAChF,QAAI,CAAC;AAAY;AACjB,UAAM,eACJ,WAAW,QACX,SAAS,aAAa,KAAK;AACzB,YAAM,EAAE,UAAU,OAAO,IAAI;AAC7B,YAAM,QAAQ,IAAI,UAAU,QAAQ;AAEpC,YAAM,oBAAgB,yBAAI,KAAK,IAAI,YAAY,KAAK;AAEpD,UAAI,WAAW,SAAS,YAAY;AAClC,mBAAO,cAAAA,SAAO,aAAa;AAAA,MAC7B;AAEA,aAAO,OAAO,kBAAkB,WAAW,cAAc,YAAY,IAAI;AAAA,IAC3E;AAEF,UAAM,gBAAgB,eAAe,gBAAgB;AAErD,oBAAgB,cAAc,QAAQ,IAAI;AAE1C,cAAU,cAAc,QAAQ,IAAI,cAAc;AAAA,EACpD,CAAC;AAED,QAAM,SAAS,CAAC;AAChB,QAAM,eAAe,CAAC;AACtB,OAAK,QAAQ,CAAC,MAAM;AAClB,iBAAa,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE;AAAA,EAC9B,CAAC;AAED,WAAS,QAAQ,CAAC,UAAU;AAC1B,WAAO,MAAM,EAAE,IAAI;AAAA,MACjB,UAAU;AAAA,QACR,MAAM,SAAS,IAAI,CAAC,OAAO;AAAA,UACzB,YAAY,aAAa,EAAE,EAAE,EAAE;AAAA,UAC/B,MAAM;AAAA,UACN,GAAG;AAAA,QACL,EAAE;AAAA,QACF;AAAA,QACA;AAAA,MACF;AAAA;AAAA,IACF;AAAA,EACF,CAAC;AAED,QAAM,SAAS;AAAA,IACb,KAAK,IAAI,CAAC,OAAO;AAAA,MACf,GAAG,EAAE;AAAA,MACL,GAAG;AAAA,IACL,EAAE;AAAA,IACF;AAAA,IACA;AAAA,EACF;AACA,MAAI,cAAc,CAAC;AACnB,SACG,OAAO,CAAC,MAAM,CAAC,EAAE,OAAO,EACxB,QAAQ,CAAC,OAAO;AACf,QAAI,OAAO,GAAG,WAAW,EAAE,GAAG;AAC5B,oBAAc,CAAC,GAAG,aAAa,aAAa,GAAG,WAAW,EAAE,GAAG,GAAG,OAAO,GAAG,WAAW,EAAE,EAAE,QAAQ;AACnG,aAAO,OAAO,GAAG,WAAW,EAAE;AAAA,IAChC;AAAA,EACF,CAAC;AACH,SAAO;AACT;",
6
6
  "names": ["moment"]
7
7
  }
@@ -18,6 +18,10 @@ var __copyProps = (to, from, except, desc) => {
18
18
  return to;
19
19
  };
20
20
  var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
21
25
  isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
22
26
  mod
23
27
  ));
@@ -30,12 +34,10 @@ module.exports = __toCommonJS(useSortableState_exports);
30
34
  var React = __toESM(require("react"));
31
35
  var sortabular = __toESM(require("sortabular/dist/index.js"));
32
36
  var import_ds_utilities = require("@elliemae/ds-utilities");
33
- var import_checkIfSortable = require("./checkIfSortable");
37
+ var import_checkIfSortable = require("./checkIfSortable.js");
34
38
  function useSortableState(grid) {
35
39
  const { onSort, sortingColumns: sortingColumnsProp, pagination } = grid.props;
36
- const [sortingColumns, setSortingColumns] = (0, import_ds_utilities.useDerivedStateFromProps)(
37
- sortingColumnsProp
38
- );
40
+ const [sortingColumns, setSortingColumns] = (0, import_ds_utilities.useDerivedStateFromProps)(sortingColumnsProp);
39
41
  const handleSort = (selectedColumn) => {
40
42
  const { composedRows = {}, props } = grid.getInstance();
41
43
  const { allRows, rows } = composedRows;
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/plugins/sortable/useSortableState.tsx", "../../../../../../scripts/build/transpile/react-shim.js"],
4
- "sourcesContent": ["import * as sortabular from 'sortabular/dist/index.js';\nimport { useDerivedStateFromProps } from '@elliemae/ds-utilities';\nimport { checkIfSortable } from './checkIfSortable';\n\nexport function useSortableState(grid) {\n const { onSort, sortingColumns: sortingColumnsProp, pagination } = grid.props;\n\n const [sortingColumns, setSortingColumns] = useDerivedStateFromProps(\n sortingColumnsProp,\n );\n\n const handleSort = selectedColumn => {\n // support for pagination\n const { composedRows = {}, props } = grid.getInstance();\n const { allRows, rows } = composedRows;\n const serverSidePagination =\n pagination &&\n composedRows.amount !== (composedRows.rows && composedRows.rows.length);\n if (\n props.serverSideData ||\n serverSidePagination ||\n checkIfSortable(selectedColumn, allRows || rows || composedRows)\n ) {\n setSortingColumns(prevSortingColumns => {\n const nextSortingColumns = sortabular.byColumn({\n sortingColumns: prevSortingColumns,\n sortingOrder: {\n FIRST: 'asc',\n asc: 'desc',\n desc: 'asc',\n },\n selectedColumn,\n });\n const { columns } = grid.getInstance();\n let columnSorted = columns.find(col => col.property === selectedColumn);\n columnSorted = {\n ...columnSorted,\n originalProperty: columnSorted.property,\n };\n onSort(nextSortingColumns, selectedColumn, columnSorted);\n return nextSortingColumns;\n });\n }\n };\n\n return {\n state: { sortingColumns },\n actions: {\n sort: handleSort,\n },\n };\n}\n", "import * as React from 'react';\nexport { React };\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB,iBAA4B;AAC5B,0BAAyC;AACzC,6BAAgC;AAEzB,SAAS,iBAAiB,MAAM;AACrC,QAAM,EAAE,QAAQ,gBAAgB,oBAAoB,WAAW,IAAI,KAAK;AAExE,QAAM,CAAC,gBAAgB,iBAAiB,QAAI;AAAA,IAC1C;AAAA,EACF;AAEA,QAAM,aAAa,oBAAkB;AAEnC,UAAM,EAAE,eAAe,CAAC,GAAG,MAAM,IAAI,KAAK,YAAY;AACtD,UAAM,EAAE,SAAS,KAAK,IAAI;AAC1B,UAAM,uBACJ,cACA,aAAa,YAAY,aAAa,QAAQ,aAAa,KAAK;AAClE,QACE,MAAM,kBACN,4BACA,wCAAgB,gBAAgB,WAAW,QAAQ,YAAY,GAC/D;AACA,wBAAkB,wBAAsB;AACtC,cAAM,qBAAqB,WAAW,SAAS;AAAA,UAC7C,gBAAgB;AAAA,UAChB,cAAc;AAAA,YACZ,OAAO;AAAA,YACP,KAAK;AAAA,YACL,MAAM;AAAA,UACR;AAAA,UACA;AAAA,QACF,CAAC;AACD,cAAM,EAAE,QAAQ,IAAI,KAAK,YAAY;AACrC,YAAI,eAAe,QAAQ,KAAK,SAAO,IAAI,aAAa,cAAc;AACtE,uBAAe;AAAA,UACb,GAAG;AAAA,UACH,kBAAkB,aAAa;AAAA,QACjC;AACA,eAAO,oBAAoB,gBAAgB,YAAY;AACvD,eAAO;AAAA,MACT,CAAC;AAAA,IACH;AAAA,EACF;AAEA,SAAO;AAAA,IACL,OAAO,EAAE,eAAe;AAAA,IACxB,SAAS;AAAA,MACP,MAAM;AAAA,IACR;AAAA,EACF;AACF;",
4
+ "sourcesContent": ["import * as sortabular from 'sortabular/dist/index.js';\nimport { useDerivedStateFromProps } from '@elliemae/ds-utilities';\nimport { checkIfSortable } from './checkIfSortable.js';\n\nexport function useSortableState(grid) {\n const { onSort, sortingColumns: sortingColumnsProp, pagination } = grid.props;\n\n const [sortingColumns, setSortingColumns] = useDerivedStateFromProps(sortingColumnsProp);\n\n const handleSort = (selectedColumn) => {\n // support for pagination\n const { composedRows = {}, props } = grid.getInstance();\n const { allRows, rows } = composedRows;\n const serverSidePagination = pagination && composedRows.amount !== (composedRows.rows && composedRows.rows.length);\n if (\n props.serverSideData ||\n serverSidePagination ||\n checkIfSortable(selectedColumn, allRows || rows || composedRows)\n ) {\n setSortingColumns((prevSortingColumns) => {\n const nextSortingColumns = sortabular.byColumn({\n sortingColumns: prevSortingColumns,\n sortingOrder: {\n FIRST: 'asc',\n asc: 'desc',\n desc: 'asc',\n },\n selectedColumn,\n });\n const { columns } = grid.getInstance();\n let columnSorted = columns.find((col) => col.property === selectedColumn);\n columnSorted = {\n ...columnSorted,\n originalProperty: columnSorted.property,\n };\n onSort(nextSortingColumns, selectedColumn, columnSorted);\n return nextSortingColumns;\n });\n }\n };\n\n return {\n state: { sortingColumns },\n actions: {\n sort: handleSort,\n },\n };\n}\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB,iBAA4B;AAC5B,0BAAyC;AACzC,6BAAgC;AAEzB,SAAS,iBAAiB,MAAM;AACrC,QAAM,EAAE,QAAQ,gBAAgB,oBAAoB,WAAW,IAAI,KAAK;AAExE,QAAM,CAAC,gBAAgB,iBAAiB,QAAI,8CAAyB,kBAAkB;AAEvF,QAAM,aAAa,CAAC,mBAAmB;AAErC,UAAM,EAAE,eAAe,CAAC,GAAG,MAAM,IAAI,KAAK,YAAY;AACtD,UAAM,EAAE,SAAS,KAAK,IAAI;AAC1B,UAAM,uBAAuB,cAAc,aAAa,YAAY,aAAa,QAAQ,aAAa,KAAK;AAC3G,QACE,MAAM,kBACN,4BACA,wCAAgB,gBAAgB,WAAW,QAAQ,YAAY,GAC/D;AACA,wBAAkB,CAAC,uBAAuB;AACxC,cAAM,qBAAqB,WAAW,SAAS;AAAA,UAC7C,gBAAgB;AAAA,UAChB,cAAc;AAAA,YACZ,OAAO;AAAA,YACP,KAAK;AAAA,YACL,MAAM;AAAA,UACR;AAAA,UACA;AAAA,QACF,CAAC;AACD,cAAM,EAAE,QAAQ,IAAI,KAAK,YAAY;AACrC,YAAI,eAAe,QAAQ,KAAK,CAAC,QAAQ,IAAI,aAAa,cAAc;AACxE,uBAAe;AAAA,UACb,GAAG;AAAA,UACH,kBAAkB,aAAa;AAAA,QACjC;AACA,eAAO,oBAAoB,gBAAgB,YAAY;AACvD,eAAO;AAAA,MACT,CAAC;AAAA,IACH;AAAA,EACF;AAEA,SAAO;AAAA,IACL,OAAO,EAAE,eAAe;AAAA,IACxB,SAAS;AAAA,MACP,MAAM;AAAA,IACR;AAAA,EACF;AACF;",
6
6
  "names": []
7
7
  }
@@ -18,6 +18,10 @@ var __copyProps = (to, from, except, desc) => {
18
18
  return to;
19
19
  };
20
20
  var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
21
25
  isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
22
26
  mod
23
27
  ));
@@ -33,8 +37,8 @@ var import_react = require("react");
33
37
  var import_prop_types = __toESM(require("prop-types"));
34
38
  var import_lodash = require("lodash");
35
39
  var import_ds_utilities = require("@elliemae/ds-utilities");
36
- var import_ToolbarTrigger = require("./ToolbarTrigger");
37
- var import_rowSizes = require("../../rowSizes");
40
+ var import_ToolbarTrigger = require("./ToolbarTrigger.js");
41
+ var import_rowSizes = require("../../rowSizes.js");
38
42
  const RowRenderer = (Row, grid) => {
39
43
  const Wrapped = (props) => {
40
44
  const ref = (0, import_react.useRef)();
@@ -77,6 +81,7 @@ const RowRenderer = (Row, grid) => {
77
81
  style: {
78
82
  height: !wrapText ? import_rowSizes.RowSizes[gridInstance.props.rowSize] : "auto",
79
83
  position: style ? "auto" : "relative"
84
+ // top: isDragging ? rowStyle.top - RowSizes[gridInstance.props.rowSize] : 'auto',
80
85
  },
81
86
  children: [
82
87
  /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Row, { ref, ...props, style: rowStyle }),