@elliemae/ds-datagrids 2.0.0-alpha.1 → 2.0.0-alpha.13

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 (213) hide show
  1. package/cjs/DSDataGrid.js +247 -244
  2. package/cjs/DataGridImpl.js +22 -13
  3. package/cjs/PaginatedDataGrid.js +11 -6
  4. package/cjs/blockNames.js +2 -2
  5. package/cjs/columns/IconColumn.js +23 -21
  6. package/cjs/columns/NumberColumn.js +2 -4
  7. package/cjs/components/BodyCell.js +23 -15
  8. package/cjs/components/BodyList.js +11 -4
  9. package/cjs/components/ColumnVisibilityMenuOption.js +12 -6
  10. package/cjs/components/ColumnsOptionsMenuSection.js +35 -28
  11. package/cjs/components/EmptyState.js +23 -21
  12. package/cjs/components/HeaderCell.js +17 -11
  13. package/cjs/components/List.js +6 -1
  14. package/cjs/components/ListItem.js +8 -1
  15. package/cjs/components/NoResults.js +8 -3
  16. package/cjs/components/RowsLoader.js +6 -5
  17. package/cjs/components/Table.js +9 -4
  18. package/cjs/components/TableBody.js +8 -3
  19. package/cjs/components/TableHeader.js +6 -1
  20. package/cjs/components/footer/addOptionalFooterComponents.js +6 -5
  21. package/cjs/components/header/PrimaryControls.js +20 -15
  22. package/cjs/components/header/addOptionalHeaderComponents.js +5 -4
  23. package/cjs/components/renderers/defaultClassedRenderers.js +35 -23
  24. package/cjs/components/renderers/renderRowsLoader.js +1 -1
  25. package/cjs/components/tableContext.js +1 -1
  26. package/cjs/index.js +1 -1
  27. package/cjs/plugins/body-header-scroll-sync/BodyHeaderScrollSyncPlugin.js +54 -43
  28. package/cjs/plugins/column-dnd/DndColumnsPlugin.js +13 -9
  29. package/cjs/plugins/column-dnd/decorateGridWithDndColumns.js +3 -4
  30. package/cjs/plugins/column-sizing/ColumnSizingPlugin.js +12 -10
  31. package/cjs/plugins/column-sizing/columnMeasurerTransformer.js +14 -7
  32. package/cjs/plugins/column-sizing/ext-points/decorateColumn.js +3 -3
  33. package/cjs/plugins/column-sizing/ext-points/getTableProps.js +24 -18
  34. package/cjs/plugins/column-sizing/useColumnSizeService.js +14 -4
  35. package/cjs/plugins/column-sizing/useStylesheetHelpers.js +70 -56
  36. package/cjs/plugins/column-sizing/utils.js +10 -6
  37. package/cjs/plugins/custom-cell-renderer/CustomRendererPlugin.js +2 -2
  38. package/cjs/plugins/custom-cell-renderer/addCustomRendererToCell.js +11 -6
  39. package/cjs/plugins/custom-cell-renderer/getRendererComponent.js +24 -25
  40. package/cjs/plugins/editable/EditableComponents/ComboBox.js +10 -7
  41. package/cjs/plugins/editable/EditableComponents/TextBox.js +24 -19
  42. package/cjs/plugins/editable/EditablePlugin.js +17 -16
  43. package/cjs/plugins/editable/decorateEditable.js +25 -19
  44. package/cjs/plugins/editable/getEditorComponent.js +46 -35
  45. package/cjs/plugins/expandable-grid/ExpandableColumn.js +66 -59
  46. package/cjs/plugins/expandable-grid/ExpandablePlugin.js +42 -30
  47. package/cjs/plugins/expandable-grid/ExpandedRow.js +41 -31
  48. package/cjs/plugins/expandable-grid/ExpandedRowExtra.js +22 -16
  49. package/cjs/plugins/expandable-grid/useExpandGridState.js +4 -8
  50. package/cjs/plugins/export-data/ExportDataPlugin.js +34 -19
  51. package/cjs/plugins/filterable/FilterablePlugin.js +9 -8
  52. package/cjs/plugins/filterable/addFilterToColumn.js +6 -1
  53. package/cjs/plugins/filterable/components/FilterableHeader.js +39 -30
  54. package/cjs/plugins/filterable/components/filterable-menus/DateRangeFilterMenu.js +52 -45
  55. package/cjs/plugins/filterable/components/filterable-menus/SingleDateFilterMenu.js +38 -33
  56. package/cjs/plugins/filterable/components/filterable-menus/SingleRangeSwitcherMenu.js +127 -161
  57. package/cjs/plugins/filterable/components/filterable-menus/TextFilterMenu.js +38 -29
  58. package/cjs/plugins/filterable/filterableFormatter.js +16 -11
  59. package/cjs/plugins/filterable/filtering-helper/filterRowsByQuery.js +18 -6
  60. package/cjs/plugins/filterable/filtering-helper/strategiesOperators.js +11 -8
  61. package/cjs/plugins/filterable/helper.js +18 -8
  62. package/cjs/plugins/filterable/useFilterableState.js +13 -6
  63. package/cjs/plugins/grouping-by/GroupingByPlugin.js +4 -2
  64. package/cjs/plugins/grouping-grid/GroupingPlugin.js +14 -5
  65. package/cjs/plugins/grouping-grid/walkStrategy.js +13 -9
  66. package/cjs/plugins/infinite-scrolling/InfiniteScrollPlugin.js +11 -4
  67. package/cjs/plugins/pagination/PaginationPlugin.js +17 -10
  68. package/cjs/plugins/pagination/components/Pagination.js +12 -11
  69. package/cjs/plugins/pagination/components/Paginator.js +23 -22
  70. package/cjs/plugins/pagination/components/PerPageDropdown.js +24 -17
  71. package/cjs/plugins/pagination/helper.js +11 -8
  72. package/cjs/plugins/pagination/usePaginationState.js +9 -4
  73. package/cjs/plugins/resizable/ResizablePlugin.js +6 -5
  74. package/cjs/plugins/resizable/decorateResizable.js +16 -10
  75. package/cjs/plugins/resizable/useResizeHandle.js +21 -16
  76. package/cjs/plugins/resizable/utils.js +9 -6
  77. package/cjs/plugins/row-dnd/DndRowsPlugin.js +27 -19
  78. package/cjs/plugins/selectable/SelectablePlugin.js +13 -12
  79. package/cjs/plugins/selectable/addSelectableColumn.js +25 -17
  80. package/cjs/plugins/selectable/helper.js +13 -4
  81. package/cjs/plugins/selectable/selectableFormatter.js +83 -74
  82. package/cjs/plugins/selectable/useSelectableState.js +26 -12
  83. package/cjs/plugins/sortable/SortablePlugin.js +11 -12
  84. package/cjs/plugins/sortable/checkIfSortable.js +1 -1
  85. package/cjs/plugins/sortable/sortHeaderFormatter.js +17 -18
  86. package/cjs/plugins/sortable/sortTree.js +16 -8
  87. package/cjs/plugins/sortable/sorter.js +153 -135
  88. package/cjs/plugins/sortable/useSortableState.js +12 -6
  89. package/cjs/plugins/toolbar/RowRenderer.js +13 -7
  90. package/cjs/plugins/toolbar/ToolbarPlugin.js +3 -2
  91. package/cjs/plugins/toolbar/ToolbarTrigger.js +26 -21
  92. package/cjs/plugins/virtualization/AutoHeightList.js +12 -10
  93. package/cjs/plugins/virtualization/VirtualizationPlugin.js +35 -28
  94. package/cjs/plugins/virtualization/VirtualizedBody.js +23 -13
  95. package/cjs/plugins/virtualization/VirtualizedBodyRow.js +8 -7
  96. package/cjs/renders/CellWithAddons.js +23 -21
  97. package/cjs/renders/styled.js +7 -18
  98. package/cjs/utilities/getPluginsFromProps.js +5 -1
  99. package/cjs/utilities/getScrollbarSize.js +2 -1
  100. package/cjs/utilities/normalizeData.js +8 -2
  101. package/esm/DSDataGrid.js +246 -243
  102. package/esm/DataGridImpl.js +18 -9
  103. package/esm/PaginatedDataGrid.js +5 -0
  104. package/esm/blockNames.js +2 -2
  105. package/esm/columns/IconColumn.js +19 -17
  106. package/esm/columns/NumberColumn.js +2 -4
  107. package/esm/components/BodyCell.js +20 -12
  108. package/esm/components/BodyList.js +7 -0
  109. package/esm/components/ColumnVisibilityMenuOption.js +12 -6
  110. package/esm/components/ColumnsOptionsMenuSection.js +35 -28
  111. package/esm/components/EmptyState.js +18 -15
  112. package/esm/components/HeaderCell.js +15 -9
  113. package/esm/components/List.js +5 -0
  114. package/esm/components/ListItem.js +7 -0
  115. package/esm/components/NoResults.js +5 -0
  116. package/esm/components/RowsLoader.js +5 -4
  117. package/esm/components/Table.js +5 -0
  118. package/esm/components/TableBody.js +5 -0
  119. package/esm/components/TableHeader.js +5 -0
  120. package/esm/components/footer/addOptionalFooterComponents.js +5 -4
  121. package/esm/components/header/PrimaryControls.js +20 -14
  122. package/esm/components/header/addOptionalHeaderComponents.js +4 -3
  123. package/esm/components/renderers/defaultClassedRenderers.js +35 -23
  124. package/esm/plugins/body-header-scroll-sync/BodyHeaderScrollSyncPlugin.js +50 -39
  125. package/esm/plugins/column-dnd/DndColumnsPlugin.js +8 -4
  126. package/esm/plugins/column-dnd/decorateGridWithDndColumns.js +1 -1
  127. package/esm/plugins/column-sizing/ColumnSizingPlugin.js +10 -8
  128. package/esm/plugins/column-sizing/columnMeasurerTransformer.js +12 -5
  129. package/esm/plugins/column-sizing/ext-points/decorateColumn.js +1 -1
  130. package/esm/plugins/column-sizing/ext-points/getTableProps.js +22 -15
  131. package/esm/plugins/column-sizing/useColumnSizeService.js +13 -3
  132. package/esm/plugins/column-sizing/useStylesheetHelpers.js +67 -51
  133. package/esm/plugins/column-sizing/utils.js +8 -4
  134. package/esm/plugins/custom-cell-renderer/addCustomRendererToCell.js +6 -1
  135. package/esm/plugins/custom-cell-renderer/getRendererComponent.js +15 -11
  136. package/esm/plugins/editable/EditableComponents/ComboBox.js +8 -4
  137. package/esm/plugins/editable/EditableComponents/TextBox.js +21 -15
  138. package/esm/plugins/editable/EditablePlugin.js +14 -12
  139. package/esm/plugins/editable/decorateEditable.js +18 -9
  140. package/esm/plugins/editable/getEditorComponent.js +49 -38
  141. package/esm/plugins/expandable-grid/ExpandableColumn.js +59 -50
  142. package/esm/plugins/expandable-grid/ExpandablePlugin.js +34 -20
  143. package/esm/plugins/expandable-grid/ExpandedRow.js +27 -17
  144. package/esm/plugins/expandable-grid/ExpandedRowExtra.js +17 -11
  145. package/esm/plugins/expandable-grid/useExpandGridState.js +2 -2
  146. package/esm/plugins/export-data/ExportDataPlugin.js +31 -16
  147. package/esm/plugins/filterable/FilterablePlugin.js +5 -4
  148. package/esm/plugins/filterable/addFilterToColumn.js +5 -0
  149. package/esm/plugins/filterable/components/FilterableHeader.js +32 -22
  150. package/esm/plugins/filterable/components/filterable-menus/DateRangeFilterMenu.js +41 -33
  151. package/esm/plugins/filterable/components/filterable-menus/SingleDateFilterMenu.js +28 -22
  152. package/esm/plugins/filterable/components/filterable-menus/SingleRangeSwitcherMenu.js +121 -154
  153. package/esm/plugins/filterable/components/filterable-menus/TextFilterMenu.js +28 -18
  154. package/esm/plugins/filterable/filterableFormatter.js +15 -10
  155. package/esm/plugins/filterable/filtering-helper/filterRowsByQuery.js +14 -2
  156. package/esm/plugins/filterable/filtering-helper/strategiesOperators.js +7 -4
  157. package/esm/plugins/filterable/helper.js +11 -1
  158. package/esm/plugins/filterable/useFilterableState.js +12 -5
  159. package/esm/plugins/grouping-by/GroupingByPlugin.js +3 -1
  160. package/esm/plugins/grouping-grid/GroupingPlugin.js +10 -1
  161. package/esm/plugins/grouping-grid/walkStrategy.js +13 -9
  162. package/esm/plugins/infinite-scrolling/InfiniteScrollPlugin.js +8 -1
  163. package/esm/plugins/pagination/PaginationPlugin.js +8 -1
  164. package/esm/plugins/pagination/components/Pagination.js +10 -9
  165. package/esm/plugins/pagination/components/Paginator.js +20 -19
  166. package/esm/plugins/pagination/components/PerPageDropdown.js +17 -9
  167. package/esm/plugins/pagination/helper.js +10 -7
  168. package/esm/plugins/pagination/usePaginationState.js +7 -1
  169. package/esm/plugins/resizable/ResizablePlugin.js +4 -3
  170. package/esm/plugins/resizable/decorateResizable.js +14 -8
  171. package/esm/plugins/resizable/useResizeHandle.js +21 -16
  172. package/esm/plugins/resizable/utils.js +7 -4
  173. package/esm/plugins/row-dnd/DndRowsPlugin.js +22 -13
  174. package/esm/plugins/selectable/SelectablePlugin.js +10 -9
  175. package/esm/plugins/selectable/addSelectableColumn.js +24 -16
  176. package/esm/plugins/selectable/helper.js +10 -1
  177. package/esm/plugins/selectable/selectableFormatter.js +79 -68
  178. package/esm/plugins/selectable/useSelectableState.js +20 -5
  179. package/esm/plugins/sortable/SortablePlugin.js +5 -4
  180. package/esm/plugins/sortable/sortHeaderFormatter.js +12 -11
  181. package/esm/plugins/sortable/sortTree.js +13 -3
  182. package/esm/plugins/sortable/sorter.js +152 -134
  183. package/esm/plugins/sortable/useSortableState.js +8 -0
  184. package/esm/plugins/toolbar/RowRenderer.js +8 -2
  185. package/esm/plugins/toolbar/ToolbarPlugin.js +1 -0
  186. package/esm/plugins/toolbar/ToolbarTrigger.js +17 -11
  187. package/esm/plugins/virtualization/AutoHeightList.js +6 -3
  188. package/esm/plugins/virtualization/VirtualizationPlugin.js +31 -24
  189. package/esm/plugins/virtualization/VirtualizedBody.js +16 -6
  190. package/esm/plugins/virtualization/VirtualizedBodyRow.js +8 -7
  191. package/esm/renders/CellWithAddons.js +15 -14
  192. package/esm/renders/styled.js +3 -15
  193. package/esm/utilities/getPluginsFromProps.js +5 -1
  194. package/esm/utilities/getScrollbarSize.js +2 -1
  195. package/esm/utilities/normalizeData.js +7 -1
  196. package/package.json +27 -18
  197. package/types/DSDataGrid.d.ts +744 -105
  198. package/types/components/BodyCell.d.ts +1 -1
  199. package/types/components/HeaderCell.d.ts +1 -1
  200. package/types/plugins/column-sizing/columnMeasurerTransformer.d.ts +1 -1
  201. package/types/plugins/column-sizing/ext-points/getTableProps.d.ts +1 -1
  202. package/types/plugins/expandable-grid/ExpandedRowExtra.d.ts +1 -1
  203. package/types/plugins/expandable-grid/useExpandGridState.d.ts +4 -4
  204. package/types/plugins/filterable/components/filterable-menus/DateRangeFilterMenu.d.ts +1 -1
  205. package/types/plugins/filterable/components/filterable-menus/SingleDateFilterMenu.d.ts +1 -1
  206. package/types/plugins/filterable/components/filterable-menus/TextFilterMenu.d.ts +1 -1
  207. package/types/plugins/filterable/helper.d.ts +15 -3
  208. package/types/plugins/pagination/components/Paginator.d.ts +1 -1
  209. package/types/plugins/pagination/components/PerPageDropdown.d.ts +1 -1
  210. package/types/plugins/sortable/sorter.d.ts +1 -1
  211. package/types/renders/styled.d.ts +3 -3
  212. package/cjs/package.json +0 -7
  213. package/esm/package.json +0 -7
@@ -2,6 +2,11 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
+ require('core-js/modules/esnext.async-iterator.filter.js');
6
+ require('core-js/modules/esnext.iterator.constructor.js');
7
+ require('core-js/modules/esnext.iterator.filter.js');
8
+ require('core-js/modules/esnext.async-iterator.for-each.js');
9
+ require('core-js/modules/esnext.iterator.for-each.js');
5
10
  var _defineProperty = require('@babel/runtime/helpers/defineProperty');
6
11
  var _objectWithoutProperties = require('@babel/runtime/helpers/objectWithoutProperties');
7
12
  var initColumnDefinition = require('@elliemae/ds-shared/useDataGrid/initColumnDefinition');
@@ -16,27 +21,30 @@ const _excluded = ["visible", "isDataColumn", "width", "minWidth", "cellRenderer
16
21
 
17
22
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
18
23
 
19
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty__default['default'](target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
20
- function selectionColumnCreator({
21
- grid,
22
- selectAll,
23
- selectionComponent,
24
- onSelectRow,
25
- onSelectAll,
26
- multiple,
27
- // backward compatibility: later this needed to be passed through column definition
28
- multiSelectFilterLabel,
29
- multiSelectFilterOptions,
30
- multiSelectFilterLabels,
31
- multiSelectComponent // favor selectionComponent
24
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty__default["default"](target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
25
+ function selectionColumnCreator(_ref) {
26
+ let {
27
+ grid,
28
+ selectAll,
29
+ selectionComponent,
30
+ onSelectRow,
31
+ onSelectAll,
32
+ multiple,
33
+ // backward compatibility: later this needed to be passed through column definition
34
+ multiSelectFilterLabel,
35
+ multiSelectFilterOptions,
36
+ multiSelectFilterLabels,
37
+ multiSelectComponent // favor selectionComponent
32
38
 
33
- }) {
39
+ } = _ref;
34
40
  const {
35
41
  props: {
36
42
  rowKey
37
43
  }
38
44
  } = grid;
39
- return (_ref = {}) => {
45
+ return function () {
46
+ let _ref2 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
47
+
40
48
  let {
41
49
  visible = true,
42
50
  isDataColumn = false,
@@ -46,8 +54,8 @@ function selectionColumnCreator({
46
54
  headerCellRenderer,
47
55
  customRenderer,
48
56
  header
49
- } = _ref,
50
- column = _objectWithoutProperties__default['default'](_ref, _excluded);
57
+ } = _ref2,
58
+ column = _objectWithoutProperties__default["default"](_ref2, _excluded);
51
59
 
52
60
  let selectionColumn = _objectSpread(_objectSpread({}, column), {}, {
53
61
  property: 'metaData.selected',
@@ -3,7 +3,16 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var _defineProperty = require('@babel/runtime/helpers/defineProperty');
6
- var utils = require('@elliemae/ds-utilities/utils');
6
+ require('core-js/modules/esnext.async-iterator.reduce.js');
7
+ require('core-js/modules/esnext.iterator.constructor.js');
8
+ require('core-js/modules/esnext.iterator.reduce.js');
9
+ require('core-js/modules/esnext.async-iterator.map.js');
10
+ require('core-js/modules/esnext.iterator.map.js');
11
+ require('core-js/modules/esnext.async-iterator.filter.js');
12
+ require('core-js/modules/esnext.iterator.filter.js');
13
+ require('core-js/modules/esnext.async-iterator.for-each.js');
14
+ require('core-js/modules/esnext.iterator.for-each.js');
15
+ var dsUtilities = require('@elliemae/ds-utilities');
7
16
 
8
17
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
9
18
 
@@ -11,14 +20,14 @@ var _defineProperty__default = /*#__PURE__*/_interopDefaultLegacy(_definePropert
11
20
 
12
21
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
13
22
 
14
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty__default['default'](target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
23
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty__default["default"](target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
15
24
  const checkAllRowsSelected = (rows, selectedRows) => {
16
25
  if (rows.length && selectedRows.length === rows.length) return true;
17
26
  if (selectedRows.length) return 'mixed';
18
27
  return false;
19
28
  };
20
- const toggleSelectAll = (rows, checked) => !checked ? {} : rows.reduce((nextSelRows, row) => utils.toggleInObject(nextSelRows, row.id, true), {});
21
- const toggleSingleSelectable = (selectedRows, id) => !selectedRows[id] ? utils.toggleInObject({}, id, true) : {};
29
+ const toggleSelectAll = (rows, checked) => !checked ? {} : rows.reduce((nextSelRows, row) => dsUtilities.toggleInObject(nextSelRows, row.id, true), {});
30
+ const toggleSingleSelectable = (selectedRows, id) => !selectedRows[id] ? dsUtilities.toggleInObject({}, id, true) : {};
22
31
 
23
32
  const mergeSelectedToMetaData = selected => row => _objectSpread(_objectSpread({}, row), {}, {
24
33
  'metaData.selected': selected
@@ -1,11 +1,15 @@
1
1
  'use strict';
2
2
 
3
+ require('core-js/modules/esnext.async-iterator.filter.js');
4
+ require('core-js/modules/esnext.iterator.constructor.js');
5
+ require('core-js/modules/esnext.iterator.filter.js');
6
+ require('core-js/modules/esnext.async-iterator.for-each.js');
7
+ require('core-js/modules/esnext.iterator.for-each.js');
3
8
  var _defineProperty = require('@babel/runtime/helpers/defineProperty');
4
9
  var _jsx = require('@babel/runtime/helpers/jsx');
5
10
  var React = require('react');
6
- var utils = require('@elliemae/ds-utilities/utils');
7
- var DSCheckbox = require('@elliemae/ds-basic/form/Checkbox');
8
- var DSRadio = require('@elliemae/ds-basic/form/Radio');
11
+ var dsUtilities = require('@elliemae/ds-utilities');
12
+ var dsForm = require('@elliemae/ds-form');
9
13
  var jsxRuntime = require('react/jsx-runtime');
10
14
 
11
15
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
@@ -13,33 +17,35 @@ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'defau
13
17
  var _defineProperty__default = /*#__PURE__*/_interopDefaultLegacy(_defineProperty);
14
18
  var _jsx__default = /*#__PURE__*/_interopDefaultLegacy(_jsx);
15
19
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
16
- var DSCheckbox__default = /*#__PURE__*/_interopDefaultLegacy(DSCheckbox);
17
- var DSRadio__default = /*#__PURE__*/_interopDefaultLegacy(DSRadio);
18
20
 
19
21
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
20
22
 
21
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty__default['default'](target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
23
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty__default["default"](target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
22
24
 
23
- const SelectableWrapper = ({
24
- className,
25
- children
26
- }) => /*#__PURE__*/_jsx__default['default']("div", {
27
- className: className,
28
- onClick: e => e.stopPropagation()
29
- }, void 0, children);
25
+ const SelectableWrapper = _ref => {
26
+ let {
27
+ className,
28
+ children
29
+ } = _ref;
30
+ return /*#__PURE__*/_jsx__default["default"]("div", {
31
+ className: className,
32
+ onClick: e => e.stopPropagation()
33
+ }, void 0, children);
34
+ };
30
35
 
31
- const SelectableComponent = /*#__PURE__*/React__default['default'].memo( /*#__PURE__*/React.forwardRef(({
32
- className,
33
- isMultiSelect,
34
- isHeader,
35
- onSelect,
36
- isSelected,
37
- value
38
- }, ref) => {
39
- const SelectComponent = isMultiSelect || isHeader ? DSCheckbox__default['default'] : DSRadio__default['default'];
40
- return /*#__PURE__*/_jsx__default['default'](SelectableWrapper, {
36
+ const SelectableComponent = /*#__PURE__*/React__default["default"].memo( /*#__PURE__*/React.forwardRef((_ref2, ref) => {
37
+ let {
38
+ className,
39
+ isMultiSelect,
40
+ isHeader,
41
+ onSelect,
42
+ isSelected,
43
+ value
44
+ } = _ref2;
45
+ const SelectComponent = isMultiSelect || isHeader ? dsForm.DSCheckbox : dsForm.DSRadio;
46
+ return /*#__PURE__*/_jsx__default["default"](SelectableWrapper, {
41
47
  className: className
42
- }, void 0, /*#__PURE__*/_jsx__default['default'](SelectComponent, {
48
+ }, void 0, /*#__PURE__*/_jsx__default["default"](SelectComponent, {
43
49
  checked: isSelected,
44
50
  "data-testid": "column-selectable-component",
45
51
  innerRef: ref,
@@ -49,58 +55,61 @@ const SelectableComponent = /*#__PURE__*/React__default['default'].memo( /*#__PU
49
55
  }));
50
56
  }, (prev, next) => next.isScrolling));
51
57
 
52
- const selectableFormatter = ({
53
- isMultiSelect = false,
54
- renderer,
55
- className,
56
- isHeader,
57
- onSelect
58
- }, grid) => (valueRender, extraParams) => {
59
- const {
60
- registerFocus
61
- } = extraParams;
62
- const ref = React.useRef();
63
- const {
64
- props: {
65
- rowKey
66
- },
67
- state: {
68
- selection
69
- },
70
- shiftPressed,
71
- lastSelectedRow
72
- } = grid.getInstance();
73
- const {
74
- rowData,
75
- isScrolling
76
- } = extraParams;
77
- React.useEffect(() => {
78
- if (registerFocus) registerFocus(ref.current);
79
- }, [ref.current]);
80
- const isSelected = isHeader ? selection.selectAll : !!selection.selectedRows[rowData[rowKey]];
81
- const handleSelect = isHeader ? () => onSelect(!isSelected) : () => onSelect(rowData[rowKey], extraParams.rowIndex, shiftPressed, lastSelectedRow);
58
+ const selectableFormatter = (_ref3, grid) => {
59
+ let {
60
+ isMultiSelect = false,
61
+ renderer,
62
+ className,
63
+ isHeader,
64
+ onSelect
65
+ } = _ref3;
66
+ return (valueRender, extraParams) => {
67
+ const {
68
+ registerFocus
69
+ } = extraParams;
70
+ const ref = React.useRef();
71
+ const {
72
+ props: {
73
+ rowKey
74
+ },
75
+ state: {
76
+ selection
77
+ },
78
+ shiftPressed,
79
+ lastSelectedRow
80
+ } = grid.getInstance();
81
+ const {
82
+ rowData,
83
+ isScrolling
84
+ } = extraParams;
85
+ React.useEffect(() => {
86
+ if (registerFocus) registerFocus(ref.current);
87
+ }, [ref.current]);
88
+ const isSelected = isHeader ? selection.selectAll : !!selection.selectedRows[rowData[rowKey]];
89
+ const handleSelect = isHeader ? () => onSelect(!isSelected) : () => onSelect(rowData[rowKey], extraParams.rowIndex, shiftPressed, lastSelectedRow);
82
90
 
83
- if (utils.isFunction(renderer)) {
84
- return /*#__PURE__*/_jsx__default['default'](SelectableWrapper, {
85
- className: className
86
- }, void 0, renderer(_objectSpread(_objectSpread({
87
- rowData: {}
88
- }, extraParams), {}, {
89
- value: isSelected,
90
- isHeader,
91
- onSelect: handleSelect
92
- })));
93
- }
91
+ if (dsUtilities.isFunction(renderer)) {
92
+ return /*#__PURE__*/_jsx__default["default"](SelectableWrapper, {
93
+ className: className
94
+ }, void 0, renderer(_objectSpread(_objectSpread({
95
+ rowData: {}
96
+ }, extraParams), {}, {
97
+ value: isSelected,
98
+ isHeader,
99
+ onSelect: handleSelect
100
+ })));
101
+ }
94
102
 
95
- return /*#__PURE__*/jsxRuntime.jsx(SelectableComponent, {
96
- ref: ref,
97
- className: className,
98
- isMultiSelect: isMultiSelect,
99
- isScrolling: isScrolling,
100
- isSelected: isSelected,
101
- onSelect: handleSelect,
102
- value: !isHeader ? rowData[rowKey] : 'header-select-all'
103
- });
103
+ return /*#__PURE__*/jsxRuntime.jsx(SelectableComponent, {
104
+ ref: ref,
105
+ className: className,
106
+ isMultiSelect: isMultiSelect,
107
+ isScrolling: isScrolling,
108
+ isSelected: isSelected,
109
+ onSelect: handleSelect,
110
+ value: !isHeader ? rowData[rowKey] : 'header-select-all'
111
+ });
112
+ };
104
113
  };
105
114
 
106
115
  module.exports = selectableFormatter;
@@ -3,23 +3,36 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var _defineProperty = require('@babel/runtime/helpers/defineProperty');
6
- var useDerivedStateFromProps = require('@elliemae/ds-utilities/hooks/useDerivedStateFromProps');
7
- var utils = require('@elliemae/ds-utilities/utils');
6
+ require('core-js/modules/web.dom-collections.iterator.js');
7
+ require('core-js/modules/esnext.async-iterator.some.js');
8
+ require('core-js/modules/esnext.iterator.constructor.js');
9
+ require('core-js/modules/esnext.iterator.some.js');
10
+ require('core-js/modules/esnext.async-iterator.map.js');
11
+ require('core-js/modules/esnext.iterator.map.js');
12
+ require('core-js/modules/esnext.async-iterator.reduce.js');
13
+ require('core-js/modules/esnext.iterator.reduce.js');
14
+ require('core-js/modules/esnext.async-iterator.filter.js');
15
+ require('core-js/modules/esnext.iterator.filter.js');
16
+ require('core-js/modules/esnext.async-iterator.for-each.js');
17
+ require('core-js/modules/esnext.iterator.for-each.js');
18
+ var dsUtilities = require('@elliemae/ds-utilities');
8
19
  var helper = require('./helper.js');
9
20
 
10
21
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
11
22
 
12
23
  var _defineProperty__default = /*#__PURE__*/_interopDefaultLegacy(_defineProperty);
13
- var useDerivedStateFromProps__default = /*#__PURE__*/_interopDefaultLegacy(useDerivedStateFromProps);
14
24
 
15
25
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
16
26
 
17
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty__default['default'](target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
27
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty__default["default"](target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
18
28
 
19
29
  function deriveSelectedStateFromPropsOnUpdate(rows) {
20
- return (nextProp = {}, prevProp = {}) => {
30
+ return function () {
31
+ let nextProp = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
32
+ let prevProp = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
33
+
21
34
  if (nextProp.selectAll !== prevProp.selectAll) {
22
- const nextSelectedRows = nextProp.selectAll ? helper.toggleSelectAll(rows, true) : utils.hashArray(nextProp.selectedRows || []);
35
+ const nextSelectedRows = nextProp.selectAll ? helper.toggleSelectAll(rows, true) : dsUtilities.hashArray(nextProp.selectedRows || []);
23
36
  return {
24
37
  selectedRows: nextSelectedRows,
25
38
  selectAll: helper.checkAllRowsSelected(rows, Object.keys(nextSelectedRows))
@@ -27,7 +40,7 @@ function deriveSelectedStateFromPropsOnUpdate(rows) {
27
40
  }
28
41
 
29
42
  return {
30
- selectedRows: utils.hashArray(nextProp.selectedRows || []),
43
+ selectedRows: dsUtilities.hashArray(nextProp.selectedRows || []),
31
44
  selectAll: helper.checkAllRowsSelected(rows, Object.keys(nextProp.selectedRows))
32
45
  };
33
46
  };
@@ -47,15 +60,16 @@ function useSelectableState(grid) {
47
60
  setLastSelectedRow
48
61
  } = grid.getInstance();
49
62
  const multiple = selectable === 'multi';
50
- const [selection, setSelectedRowsState] = useDerivedStateFromProps__default['default']({
63
+ const [selection, setSelectedRowsState] = dsUtilities.useDerivedStateFromProps({
51
64
  selectedRows,
52
65
  selectAll
53
66
  }, {
54
67
  onUpdate: deriveSelectedStateFromPropsOnUpdate(rows)
55
68
  }); // ACTIONS
56
69
 
57
- const handleSelectRow = (id, index, shift = false, lastSelectedRow = null // eslint-disable-next-line max-params
58
- ) => {
70
+ const handleSelectRow = function (id, index) {
71
+ let shift = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
72
+ let lastSelectedRow = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null;
59
73
  setSelectedRowsState(prevState => {
60
74
  const {
61
75
  rows: nextRows
@@ -63,7 +77,7 @@ function useSelectableState(grid) {
63
77
  const wasSelected = Object.keys(prevState.selectedRows).some( // we need to match softly as the id may be a number
64
78
  // eslint-disable-next-line eqeqeq
65
79
  elem => elem == id);
66
- let nextSelectedRows = multiple ? utils.toggleInObject(prevState.selectedRows, id, true) : helper.toggleSingleSelectable(prevState.selectedRows, id);
80
+ let nextSelectedRows = multiple ? dsUtilities.toggleInObject(prevState.selectedRows, id, true) : helper.toggleSingleSelectable(prevState.selectedRows, id);
67
81
  setLastSelectedRow({
68
82
  index,
69
83
  mode: wasSelected ? 'deselect' : 'select'
@@ -76,7 +90,7 @@ function useSelectableState(grid) {
76
90
  const rowSegment = nextRows.slice(sliceStart, sliceEnd).map(row => row[rowKey]);
77
91
 
78
92
  if (lastSelectedRow.mode === 'deselect') {
79
- nextSelectedRows = utils.omit(prevState.selectedRows, rowSegment);
93
+ nextSelectedRows = dsUtilities.omit(prevState.selectedRows, rowSegment);
80
94
  } else {
81
95
  const selectedSegment = rowSegment.reduce((o, key) => _objectSpread(_objectSpread({}, o), {}, {
82
96
  [key]: true
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var sortabular = require('sortabular');
6
- var utils = require('@elliemae/ds-utilities/utils');
6
+ var dsUtilities = require('@elliemae/ds-utilities');
7
7
  var initColumnDefinition = require('@elliemae/ds-shared/useDataGrid/initColumnDefinition');
8
8
  var createInstancePlugin = require('@elliemae/ds-shared/createDataInstance/createInstancePlugin');
9
9
  var sortHeaderFormatter = require('./sortHeaderFormatter.js');
@@ -21,14 +21,12 @@ function _interopNamespace(e) {
21
21
  var d = Object.getOwnPropertyDescriptor(e, k);
22
22
  Object.defineProperty(n, k, d.get ? d : {
23
23
  enumerable: true,
24
- get: function () {
25
- return e[k];
26
- }
24
+ get: function () { return e[k]; }
27
25
  });
28
26
  }
29
27
  });
30
28
  }
31
- n['default'] = e;
29
+ n["default"] = e;
32
30
  return Object.freeze(n);
33
31
  }
34
32
 
@@ -49,7 +47,7 @@ const decorateColumn = (column, grid) => {
49
47
  onSort: grid.actions.sort,
50
48
  strategy: sortabular__namespace.strategies.byProperty
51
49
  }), grid);
52
- return utils.compose(initColumnDefinition.appendHeaderFormatter(formatter), initColumnDefinition.mergeClassNameToColumnHeader('with-sortable'))(column);
50
+ return dsUtilities.compose(initColumnDefinition.appendHeaderFormatter(formatter), initColumnDefinition.mergeClassNameToColumnHeader('with-sortable'))(column);
53
51
  };
54
52
 
55
53
  const composeRows = (rows, grid) => {
@@ -69,8 +67,8 @@ const composeRows = (rows, grid) => {
69
67
  } = grid.getInstance();
70
68
  const sortingConfig = {
71
69
  columns: decoratedColumns,
72
- sortingColumns: !utils.isEmpty(sortingColumns) && sortingColumns,
73
- sort: utils.orderBy,
70
+ sortingColumns: !dsUtilities.isEmpty(sortingColumns) && sortingColumns,
71
+ sort: dsUtilities.orderBy,
74
72
  emptyLast: sortEmptyLast
75
73
  }; // TODO: 1572 FIX
76
74
 
@@ -81,7 +79,7 @@ const composeRows = (rows, grid) => {
81
79
  return !isDataSorted ? sorter.sorter(sortingConfig)(rows) : rows;
82
80
  };
83
81
 
84
- const SortablePlugin = createInstancePlugin__default['default']('sortable', {
82
+ const SortablePlugin = createInstancePlugin__default["default"]('sortable', {
85
83
  registerStateHook: useSortableState.useSortableState,
86
84
  decorateColumn,
87
85
  composeRows,
@@ -89,9 +87,10 @@ const SortablePlugin = createInstancePlugin__default['default']('sortable', {
89
87
  registerHotKeys(grid) {
90
88
  return {
91
89
  key: 'ctrl+s',
92
- handler: ({
93
- cellIndex
94
- }) => {
90
+ handler: _ref => {
91
+ let {
92
+ cellIndex
93
+ } = _ref;
95
94
  const {
96
95
  actions: {
97
96
  sort
@@ -19,4 +19,4 @@ const checkIfSortable = (column, rows) => {
19
19
  };
20
20
 
21
21
  exports.checkIfSortable = checkIfSortable;
22
- exports['default'] = checkIfSortable;
22
+ exports["default"] = checkIfSortable;
@@ -3,41 +3,40 @@
3
3
  var _jsx = require('@babel/runtime/helpers/jsx');
4
4
  var React = require('react');
5
5
  var dsClassnames = require('@elliemae/ds-classnames');
6
- var ArrowheadDown = require('@elliemae/ds-icons/ArrowheadDown');
7
- var ArrowheadUp = require('@elliemae/ds-icons/ArrowheadUp');
6
+ var dsIcons = require('@elliemae/ds-icons');
8
7
 
9
8
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
10
9
 
11
10
  var _jsx__default = /*#__PURE__*/_interopDefaultLegacy(_jsx);
12
11
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
13
- var ArrowheadDown__default = /*#__PURE__*/_interopDefaultLegacy(ArrowheadDown);
14
- var ArrowheadUp__default = /*#__PURE__*/_interopDefaultLegacy(ArrowheadUp);
15
12
 
16
13
  var _ArrowheadUp, _ArrowheadDown;
17
14
  const blockName = 'data-grid-sort-header';
18
15
  const SortHeaderContainer = dsClassnames.aggregatedClasses('div')(blockName);
19
16
  const iconColor = ['brand-primary', 800];
20
- const SortHeader = /*#__PURE__*/React__default['default'].memo(({
21
- value,
22
- onClick,
23
- sortState
24
- }) => {
25
- const sortIndicator = sortState === 'asc' ? _ArrowheadUp || (_ArrowheadUp = /*#__PURE__*/_jsx__default['default'](ArrowheadUp__default['default'], {
17
+ const SortHeader = /*#__PURE__*/React__default["default"].memo(_ref => {
18
+ let {
19
+ value,
20
+ onClick,
21
+ sortState
22
+ } = _ref;
23
+ const sortIndicator = sortState === 'asc' ? _ArrowheadUp || (_ArrowheadUp = /*#__PURE__*/_jsx__default["default"](dsIcons.ArrowheadUp, {
26
24
  color: iconColor
27
- })) : _ArrowheadDown || (_ArrowheadDown = /*#__PURE__*/_jsx__default['default'](ArrowheadDown__default['default'], {
25
+ })) : _ArrowheadDown || (_ArrowheadDown = /*#__PURE__*/_jsx__default["default"](dsIcons.ArrowheadDown, {
28
26
  color: iconColor
29
27
  }));
30
- return /*#__PURE__*/_jsx__default['default'](SortHeaderContainer, {
28
+ return /*#__PURE__*/_jsx__default["default"](SortHeaderContainer, {
31
29
  onClick: onClick
32
- }, void 0, /*#__PURE__*/_jsx__default['default']("span", {
30
+ }, void 0, /*#__PURE__*/_jsx__default["default"]("span", {
33
31
  className: "header-value"
34
32
  }, void 0, value), sortState && sortIndicator);
35
33
  });
36
34
 
37
- const sortHeaderFormatter = (sortable, grid) => (value, {
38
- columnIndex,
39
- property
40
- }) => {
35
+ const sortHeaderFormatter = (sortable, grid) => (value, _ref2) => {
36
+ let {
37
+ columnIndex,
38
+ property
39
+ } = _ref2;
41
40
  const {
42
41
  state: {
43
42
  sortingColumns
@@ -50,7 +49,7 @@ const sortHeaderFormatter = (sortable, grid) => (value, {
50
49
  columnIndex,
51
50
  property
52
51
  });
53
- return /*#__PURE__*/_jsx__default['default'](SortHeader, {
52
+ return /*#__PURE__*/_jsx__default["default"](SortHeader, {
54
53
  className: className,
55
54
  onClick: onClick,
56
55
  sortState: sortingColumns[property] && sortingColumns[property].direction,
@@ -1,6 +1,13 @@
1
1
  'use strict';
2
2
 
3
3
  var _defineProperty = require('@babel/runtime/helpers/defineProperty');
4
+ require('core-js/modules/esnext.async-iterator.map.js');
5
+ require('core-js/modules/esnext.iterator.map.js');
6
+ require('core-js/modules/esnext.async-iterator.filter.js');
7
+ require('core-js/modules/esnext.iterator.constructor.js');
8
+ require('core-js/modules/esnext.iterator.filter.js');
9
+ require('core-js/modules/esnext.async-iterator.for-each.js');
10
+ require('core-js/modules/esnext.iterator.for-each.js');
4
11
  var sortabular = require('sortabular');
5
12
 
6
13
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
@@ -14,14 +21,12 @@ function _interopNamespace(e) {
14
21
  var d = Object.getOwnPropertyDescriptor(e, k);
15
22
  Object.defineProperty(n, k, d.get ? d : {
16
23
  enumerable: true,
17
- get: function () {
18
- return e[k];
19
- }
24
+ get: function () { return e[k]; }
20
25
  });
21
26
  }
22
27
  });
23
28
  }
24
- n['default'] = e;
29
+ n["default"] = e;
25
30
  return Object.freeze(n);
26
31
  }
27
32
 
@@ -30,11 +35,14 @@ var sortabular__namespace = /*#__PURE__*/_interopNamespace(sortabular);
30
35
 
31
36
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
32
37
 
33
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty__default['default'](target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
38
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty__default["default"](target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
34
39
 
35
- const deepSorting = (sortConfig, rows = []) => sortabular__namespace.sorter(sortConfig)(rows.map(row => row.children && row.children.length ? _objectSpread(_objectSpread({}, row), {}, {
36
- children: deepSorting(sortConfig, row.children)
37
- }) : row));
40
+ const deepSorting = function (sortConfig) {
41
+ let rows = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
42
+ return sortabular__namespace.sorter(sortConfig)(rows.map(row => row.children && row.children.length ? _objectSpread(_objectSpread({}, row), {}, {
43
+ children: deepSorting(sortConfig, row.children)
44
+ }) : row));
45
+ };
38
46
 
39
47
  function sortTree(sortConfig) {
40
48
  return rows => deepSorting(sortConfig, rows);