@elliemae/ds-data-table 2.0.0-rc.9 → 2.0.0

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 (70) hide show
  1. package/cjs/addons/Editables/TextEditableCell/TextEditableCell.js +16 -0
  2. package/cjs/addons/Filters/Components/CurrencyRangeFilter/index.js +4 -1
  3. package/cjs/addons/Filters/Components/DateSwitcherFilter/index.js +4 -1
  4. package/cjs/addons/Filters/Components/NumberRangeFilter/index.js +4 -1
  5. package/cjs/addons/Filters/Components/SelectFilter/BaseSelectFilter.js +3 -3
  6. package/cjs/exported-related/EditableCell.js +11 -5
  7. package/cjs/exported-related/FilterPopover.js +1 -1
  8. package/cjs/parts/HoC/withConditionalDnDColumnContext.js +20 -3
  9. package/cjs/parts/HoC/withConditionalDnDRowContext.js +2 -2
  10. package/cjs/styled.js +16 -11
  11. package/esm/addons/Editables/TextEditableCell/TextEditableCell.js +16 -0
  12. package/esm/addons/Filters/Components/CurrencyRangeFilter/index.js +4 -1
  13. package/esm/addons/Filters/Components/DateSwitcherFilter/index.js +4 -1
  14. package/esm/addons/Filters/Components/NumberRangeFilter/index.js +4 -1
  15. package/esm/addons/Filters/Components/SelectFilter/BaseSelectFilter.js +3 -3
  16. package/esm/exported-related/EditableCell.js +11 -5
  17. package/esm/exported-related/FilterPopover.js +1 -1
  18. package/esm/parts/HoC/withConditionalDnDColumnContext.js +19 -2
  19. package/esm/parts/HoC/withConditionalDnDRowContext.js +1 -1
  20. package/esm/styled.js +16 -11
  21. package/package.json +18 -81
  22. package/types/styled.d.ts +3 -1
  23. package/cjs/helpers/dndkit/hierarchy/customCollisionDetection.js +0 -89
  24. package/cjs/helpers/dndkit/hierarchy/getHierarchyKeyboardCoordinates.js +0 -143
  25. package/cjs/helpers/dndkit/hierarchy/types.js +0 -2
  26. package/cjs/helpers/dndkit/hierarchy/useHierarchyActionHandlers.js +0 -55
  27. package/cjs/helpers/dndkit/hierarchy/useHierarchyAnnouncements.js +0 -36
  28. package/cjs/helpers/dndkit/hierarchy/useHierarchyDndkitConfig.js +0 -111
  29. package/cjs/helpers/dndkit/hierarchy/useHierarchyPreviewHandlers.js +0 -87
  30. package/cjs/helpers/dndkit/tree/customCollisionDetection.js +0 -118
  31. package/cjs/helpers/dndkit/tree/getTreeKeyboardCoordinates.js +0 -134
  32. package/cjs/helpers/dndkit/tree/types.js +0 -2
  33. package/cjs/helpers/dndkit/tree/useTreeActionHandlers.js +0 -75
  34. package/cjs/helpers/dndkit/tree/useTreeAnnouncements.js +0 -55
  35. package/cjs/helpers/dndkit/tree/useTreeDndkitConfig.js +0 -141
  36. package/cjs/helpers/dndkit/tree/useTreePreviewHandlers.js +0 -54
  37. package/cjs/helpers/dndkit/types.js +0 -2
  38. package/cjs/helpers/dndkit/utilities.js +0 -52
  39. package/esm/helpers/dndkit/hierarchy/customCollisionDetection.js +0 -85
  40. package/esm/helpers/dndkit/hierarchy/getHierarchyKeyboardCoordinates.js +0 -135
  41. package/esm/helpers/dndkit/hierarchy/types.js +0 -1
  42. package/esm/helpers/dndkit/hierarchy/useHierarchyActionHandlers.js +0 -51
  43. package/esm/helpers/dndkit/hierarchy/useHierarchyAnnouncements.js +0 -32
  44. package/esm/helpers/dndkit/hierarchy/useHierarchyDndkitConfig.js +0 -105
  45. package/esm/helpers/dndkit/hierarchy/useHierarchyPreviewHandlers.js +0 -83
  46. package/esm/helpers/dndkit/tree/customCollisionDetection.js +0 -114
  47. package/esm/helpers/dndkit/tree/getTreeKeyboardCoordinates.js +0 -126
  48. package/esm/helpers/dndkit/tree/types.js +0 -1
  49. package/esm/helpers/dndkit/tree/useTreeActionHandlers.js +0 -71
  50. package/esm/helpers/dndkit/tree/useTreeAnnouncements.js +0 -51
  51. package/esm/helpers/dndkit/tree/useTreeDndkitConfig.js +0 -135
  52. package/esm/helpers/dndkit/tree/useTreePreviewHandlers.js +0 -50
  53. package/esm/helpers/dndkit/types.js +0 -1
  54. package/esm/helpers/dndkit/utilities.js +0 -47
  55. package/types/helpers/dndkit/hierarchy/customCollisionDetection.d.ts +0 -3
  56. package/types/helpers/dndkit/hierarchy/getHierarchyKeyboardCoordinates.d.ts +0 -3
  57. package/types/helpers/dndkit/hierarchy/types.d.ts +0 -66
  58. package/types/helpers/dndkit/hierarchy/useHierarchyActionHandlers.d.ts +0 -2
  59. package/types/helpers/dndkit/hierarchy/useHierarchyAnnouncements.d.ts +0 -3
  60. package/types/helpers/dndkit/hierarchy/useHierarchyDndkitConfig.d.ts +0 -3
  61. package/types/helpers/dndkit/hierarchy/useHierarchyPreviewHandlers.d.ts +0 -2
  62. package/types/helpers/dndkit/tree/customCollisionDetection.d.ts +0 -4
  63. package/types/helpers/dndkit/tree/getTreeKeyboardCoordinates.d.ts +0 -3
  64. package/types/helpers/dndkit/tree/types.d.ts +0 -82
  65. package/types/helpers/dndkit/tree/useTreeActionHandlers.d.ts +0 -2
  66. package/types/helpers/dndkit/tree/useTreeAnnouncements.d.ts +0 -4
  67. package/types/helpers/dndkit/tree/useTreeDndkitConfig.d.ts +0 -3
  68. package/types/helpers/dndkit/tree/useTreePreviewHandlers.d.ts +0 -2
  69. package/types/helpers/dndkit/types.d.ts +0 -20
  70. package/types/helpers/dndkit/utilities.d.ts +0 -7
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@elliemae/ds-data-table",
3
- "version": "2.0.0-rc.9",
3
+ "version": "2.0.0",
4
4
  "license": "MIT",
5
5
  "description": "ICE MT - Dimsum - Data Table",
6
6
  "module": "./esm/index.js",
@@ -299,70 +299,6 @@
299
299
  "import": "./esm/helpers/getIdFromUniqueRowAccessor.js",
300
300
  "require": "./cjs/helpers/getIdFromUniqueRowAccessor.js"
301
301
  },
302
- "./helpers/dndkit/utilities": {
303
- "import": "./esm/helpers/dndkit/utilities.js",
304
- "require": "./cjs/helpers/dndkit/utilities.js"
305
- },
306
- "./helpers/dndkit/types": {
307
- "import": "./esm/helpers/dndkit/types.js",
308
- "require": "./cjs/helpers/dndkit/types.js"
309
- },
310
- "./helpers/dndkit/tree/useTreePreviewHandlers": {
311
- "import": "./esm/helpers/dndkit/tree/useTreePreviewHandlers.js",
312
- "require": "./cjs/helpers/dndkit/tree/useTreePreviewHandlers.js"
313
- },
314
- "./helpers/dndkit/tree/useTreeDndkitConfig": {
315
- "import": "./esm/helpers/dndkit/tree/useTreeDndkitConfig.js",
316
- "require": "./cjs/helpers/dndkit/tree/useTreeDndkitConfig.js"
317
- },
318
- "./helpers/dndkit/tree/useTreeAnnouncements": {
319
- "import": "./esm/helpers/dndkit/tree/useTreeAnnouncements.js",
320
- "require": "./cjs/helpers/dndkit/tree/useTreeAnnouncements.js"
321
- },
322
- "./helpers/dndkit/tree/useTreeActionHandlers": {
323
- "import": "./esm/helpers/dndkit/tree/useTreeActionHandlers.js",
324
- "require": "./cjs/helpers/dndkit/tree/useTreeActionHandlers.js"
325
- },
326
- "./helpers/dndkit/tree/types": {
327
- "import": "./esm/helpers/dndkit/tree/types.js",
328
- "require": "./cjs/helpers/dndkit/tree/types.js"
329
- },
330
- "./helpers/dndkit/tree/getTreeKeyboardCoordinates": {
331
- "import": "./esm/helpers/dndkit/tree/getTreeKeyboardCoordinates.js",
332
- "require": "./cjs/helpers/dndkit/tree/getTreeKeyboardCoordinates.js"
333
- },
334
- "./helpers/dndkit/tree/customCollisionDetection": {
335
- "import": "./esm/helpers/dndkit/tree/customCollisionDetection.js",
336
- "require": "./cjs/helpers/dndkit/tree/customCollisionDetection.js"
337
- },
338
- "./helpers/dndkit/hierarchy/useHierarchyPreviewHandlers": {
339
- "import": "./esm/helpers/dndkit/hierarchy/useHierarchyPreviewHandlers.js",
340
- "require": "./cjs/helpers/dndkit/hierarchy/useHierarchyPreviewHandlers.js"
341
- },
342
- "./helpers/dndkit/hierarchy/useHierarchyDndkitConfig": {
343
- "import": "./esm/helpers/dndkit/hierarchy/useHierarchyDndkitConfig.js",
344
- "require": "./cjs/helpers/dndkit/hierarchy/useHierarchyDndkitConfig.js"
345
- },
346
- "./helpers/dndkit/hierarchy/useHierarchyAnnouncements": {
347
- "import": "./esm/helpers/dndkit/hierarchy/useHierarchyAnnouncements.js",
348
- "require": "./cjs/helpers/dndkit/hierarchy/useHierarchyAnnouncements.js"
349
- },
350
- "./helpers/dndkit/hierarchy/useHierarchyActionHandlers": {
351
- "import": "./esm/helpers/dndkit/hierarchy/useHierarchyActionHandlers.js",
352
- "require": "./cjs/helpers/dndkit/hierarchy/useHierarchyActionHandlers.js"
353
- },
354
- "./helpers/dndkit/hierarchy/types": {
355
- "import": "./esm/helpers/dndkit/hierarchy/types.js",
356
- "require": "./cjs/helpers/dndkit/hierarchy/types.js"
357
- },
358
- "./helpers/dndkit/hierarchy/getHierarchyKeyboardCoordinates": {
359
- "import": "./esm/helpers/dndkit/hierarchy/getHierarchyKeyboardCoordinates.js",
360
- "require": "./cjs/helpers/dndkit/hierarchy/getHierarchyKeyboardCoordinates.js"
361
- },
362
- "./helpers/dndkit/hierarchy/customCollisionDetection": {
363
- "import": "./esm/helpers/dndkit/hierarchy/customCollisionDetection.js",
364
- "require": "./cjs/helpers/dndkit/hierarchy/customCollisionDetection.js"
365
- },
366
302
  "./helpers/columnsToGrid": {
367
303
  "import": "./esm/helpers/columnsToGrid.js",
368
304
  "require": "./cjs/helpers/columnsToGrid.js"
@@ -634,22 +570,23 @@
634
570
  "dependencies": {
635
571
  "@dnd-kit/core": "~4.0.1",
636
572
  "@dnd-kit/sortable": "~5.0.0",
637
- "@elliemae/ds-button": "2.0.0-rc.9",
638
- "@elliemae/ds-circular-progress-indicator": "2.0.0-rc.9",
639
- "@elliemae/ds-controlled-form": "2.0.0-rc.9",
640
- "@elliemae/ds-dropdownmenu": "2.0.0-rc.9",
641
- "@elliemae/ds-form": "2.0.0-rc.9",
642
- "@elliemae/ds-form-layout-blocks": "2.0.0-rc.9",
643
- "@elliemae/ds-grid": "2.0.0-rc.9",
644
- "@elliemae/ds-icons": "2.0.0-rc.9",
645
- "@elliemae/ds-indeterminate-progress-indicator": "2.0.0-rc.9",
646
- "@elliemae/ds-pagination": "2.0.0-rc.9",
647
- "@elliemae/ds-pills": "2.0.0-rc.9",
648
- "@elliemae/ds-popperjs": "2.0.0-rc.9",
649
- "@elliemae/ds-system": "2.0.0-rc.9",
650
- "@elliemae/ds-toolbar": "2.0.0-rc.9",
651
- "@elliemae/ds-truncated-tooltip-text": "2.0.0-rc.9",
652
- "@elliemae/ds-utilities": "2.0.0-rc.9",
573
+ "@elliemae/ds-button": "2.0.0",
574
+ "@elliemae/ds-circular-progress-indicator": "2.0.0",
575
+ "@elliemae/ds-controlled-form": "2.0.0",
576
+ "@elliemae/ds-drag-and-drop": "2.0.0",
577
+ "@elliemae/ds-dropdownmenu": "2.0.0",
578
+ "@elliemae/ds-form": "2.0.0",
579
+ "@elliemae/ds-form-layout-blocks": "2.0.0",
580
+ "@elliemae/ds-grid": "2.0.0",
581
+ "@elliemae/ds-icons": "2.0.0",
582
+ "@elliemae/ds-indeterminate-progress-indicator": "2.0.0",
583
+ "@elliemae/ds-pagination": "2.0.0",
584
+ "@elliemae/ds-pills": "2.0.0",
585
+ "@elliemae/ds-popperjs": "2.0.0",
586
+ "@elliemae/ds-system": "2.0.0",
587
+ "@elliemae/ds-toolbar": "2.0.0",
588
+ "@elliemae/ds-truncated-tooltip-text": "2.0.0",
589
+ "@elliemae/ds-utilities": "2.0.0",
653
590
  "@reduxjs/toolkit": "~1.6.2",
654
591
  "csstype": "~3.0.9",
655
592
  "moment": "~2.29.1",
package/types/styled.d.ts CHANGED
@@ -27,7 +27,9 @@ export declare const StyledCell: import("styled-components").StyledComponent<"di
27
27
  }, never>;
28
28
  export declare const StyledCellContent: import("styled-components").StyledComponent<"div", import("styled-components").DefaultTheme, {}, never>;
29
29
  export declare const StyledPencilIcon: import("styled-components").StyledComponent<(rest: any) => JSX.Element, import("styled-components").DefaultTheme, {}, never>;
30
- export declare const StyledEditableContainer: import("styled-components").StyledComponent<import("react").ForwardRefExoticComponent<import("@elliemae/ds-grid/types/types").GridPropsT & import("react").RefAttributes<HTMLDivElement>>, import("styled-components").DefaultTheme, {}, never>;
30
+ export declare const StyledEditableContainer: import("styled-components").StyledComponent<import("react").ForwardRefExoticComponent<import("@elliemae/ds-grid/types/types").GridPropsT & import("react").RefAttributes<HTMLDivElement>>, import("styled-components").DefaultTheme, {
31
+ shouldDisplayEditIcon: string;
32
+ }, never>;
31
33
  export declare const StyledFullsizeGrid: import("styled-components").StyledComponent<import("react").ForwardRefExoticComponent<import("@elliemae/ds-grid/types/types").GridPropsT & import("react").RefAttributes<HTMLDivElement>>, import("styled-components").DefaultTheme, {}, never>;
32
34
  export declare const GroupHeaderContainer: import("styled-components").StyledComponent<import("react").ForwardRefExoticComponent<import("@elliemae/ds-grid/types/types").GridPropsT & import("react").RefAttributes<HTMLDivElement>>, import("styled-components").DefaultTheme, {
33
35
  padding: string;
@@ -1,89 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
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.find.js');
9
- require('core-js/modules/esnext.iterator.find.js');
10
- require('core-js/modules/esnext.async-iterator.for-each.js');
11
- require('core-js/modules/esnext.iterator.for-each.js');
12
- var constants = require('../../../configs/constants.js');
13
- require('core-js/modules/web.dom-collections.iterator.js');
14
- require('core-js/modules/esnext.async-iterator.reduce.js');
15
- require('core-js/modules/esnext.iterator.reduce.js');
16
- require('react');
17
- require('react-virtual');
18
- require('../../../configs/useRowFlattenization.js');
19
- require('@babel/runtime/helpers/defineProperty');
20
- require('core-js/modules/esnext.async-iterator.map.js');
21
- require('core-js/modules/esnext.iterator.map.js');
22
- require('@babel/runtime/helpers/jsx');
23
- require('@elliemae/ds-icons');
24
- require('styled-components');
25
- require('../../../styled.js');
26
- require('react/jsx-runtime');
27
- require('@elliemae/ds-form');
28
- require('../../../parts/TableContent.js');
29
- require('@elliemae/ds-grid');
30
- require('@elliemae/ds-circular-progress-indicator');
31
- require('@elliemae/ds-system');
32
- require('@elliemae/ds-button');
33
- require('../../../DataTableContext.js');
34
- require('../../../parts/Row.js');
35
- require('../../../parts/Footer.js');
36
- require('../../../parts/HoC/SortableItemContext.js');
37
-
38
- const customCollisionDetection = (activeId, activeParent, dndItems) => _ref => {
39
- var _document$querySelect, _document$querySelect2;
40
-
41
- let {
42
- droppableContainers,
43
- collisionRect
44
- } = _ref;
45
- const entriesWithSameParent = droppableContainers.filter(_ref2 => {
46
- var _dndItems$find;
47
-
48
- let {
49
- id
50
- } = _ref2;
51
- return ((_dndItems$find = dndItems.find(item => item.id === id)) === null || _dndItems$find === void 0 ? void 0 : _dndItems$find.parentId) === activeParent;
52
- });
53
- const dragOverlayRect = (_document$querySelect = (_document$querySelect2 = document.querySelector("[data-testid=\"".concat(constants.DATA_TESTID.DATA_TABLE_COLUMN_DRAG_OVERLAY, "\"]"))) === null || _document$querySelect2 === void 0 ? void 0 : _document$querySelect2.getBoundingClientRect()) !== null && _document$querySelect !== void 0 ? _document$querySelect : {
54
- width: 150
55
- };
56
- const originalContainer = entriesWithSameParent.find(_ref3 => {
57
- let {
58
- id
59
- } = _ref3;
60
- return id === activeId;
61
- });
62
- const originalRect = originalContainer.rect.current;
63
-
64
- if (originalRect.offsetLeft <= collisionRect.offsetLeft && collisionRect.offsetLeft <= originalRect.offsetLeft + originalRect.width) {
65
- return originalContainer.id;
66
- }
67
-
68
- const isLeft = collisionRect.offsetLeft <= originalRect.offsetLeft + dragOverlayRect.width / 2 + 5;
69
- let match = null; // If going to the left, search the closest offset left
70
- // Otherwise, get the closest offset right
71
-
72
- const collisionPoint = collisionRect.offsetLeft + dragOverlayRect.width / 2;
73
- entriesWithSameParent.forEach(entry => {
74
- const {
75
- rect: {
76
- current: rect
77
- }
78
- } = entry;
79
- const offsetRight = rect.offsetLeft + rect.width;
80
- if (!match) match = entry;else if (isLeft && Math.abs(collisionPoint - rect.offsetLeft) <= Math.abs(collisionPoint - match.rect.current.offsetLeft)) {
81
- match = entry;
82
- } else if (!isLeft && Math.abs(collisionPoint - offsetRight) <= Math.abs(collisionPoint - match.rect.current.offsetLeft - match.rect.current.width)) {
83
- match = entry;
84
- }
85
- });
86
- return match === null ? null : match.id;
87
- };
88
-
89
- exports.customCollisionDetection = customCollisionDetection;
@@ -1,143 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- var _defineProperty = require('@babel/runtime/helpers/defineProperty');
6
- require('core-js/modules/esnext.async-iterator.find.js');
7
- require('core-js/modules/esnext.iterator.constructor.js');
8
- require('core-js/modules/esnext.iterator.find.js');
9
- require('core-js/modules/esnext.async-iterator.for-each.js');
10
- require('core-js/modules/esnext.iterator.for-each.js');
11
- require('core-js/modules/esnext.async-iterator.filter.js');
12
- require('core-js/modules/esnext.iterator.filter.js');
13
- var core = require('@dnd-kit/core');
14
- var constants = require('../../../configs/constants.js');
15
- require('core-js/modules/web.dom-collections.iterator.js');
16
- require('core-js/modules/esnext.async-iterator.reduce.js');
17
- require('core-js/modules/esnext.iterator.reduce.js');
18
- require('react');
19
- require('react-virtual');
20
- require('../../../configs/useRowFlattenization.js');
21
- require('core-js/modules/esnext.async-iterator.map.js');
22
- require('core-js/modules/esnext.iterator.map.js');
23
- require('@babel/runtime/helpers/jsx');
24
- require('@elliemae/ds-icons');
25
- require('styled-components');
26
- require('../../../styled.js');
27
- require('react/jsx-runtime');
28
- require('@elliemae/ds-form');
29
- require('../../../parts/TableContent.js');
30
- require('@elliemae/ds-grid');
31
- require('@elliemae/ds-circular-progress-indicator');
32
- require('@elliemae/ds-system');
33
- require('@elliemae/ds-button');
34
- require('../../../DataTableContext.js');
35
- require('../../../parts/Row.js');
36
- require('../../../parts/Footer.js');
37
- require('../../../parts/HoC/SortableItemContext.js');
38
-
39
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
40
-
41
- var _defineProperty__default = /*#__PURE__*/_interopDefaultLegacy(_defineProperty);
42
-
43
- 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; }
44
-
45
- 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; }
46
- const directions = [core.KeyboardCode.Down, core.KeyboardCode.Right, core.KeyboardCode.Up, core.KeyboardCode.Left];
47
- const vertical = [core.KeyboardCode.Up, core.KeyboardCode.Down];
48
-
49
- const getHorizontalKeyboardCoordinates = _ref => {
50
- var _document$querySelect, _document$querySelect2;
51
-
52
- let {
53
- items,
54
- active,
55
- over,
56
- event,
57
- currentCoordinates,
58
- droppableContainers,
59
- collisionRect
60
- } = _ref;
61
- if (vertical.includes(event.code)) return undefined;
62
- const activeItem = items.find(item => item.id === active.id);
63
- const overRect = over.rect;
64
- const layoutRects = []; // Get the reacheable rects depending on the arrow key pressed
65
-
66
- droppableContainers.forEach(container => {
67
- if (container !== null && container !== void 0 && container.disabled || !overRect) {
68
- return;
69
- }
70
-
71
- const node = container === null || container === void 0 ? void 0 : container.node.current;
72
-
73
- if (!node) {
74
- return;
75
- }
76
-
77
- const itemParent = items.find(item => item.id === container.id).parentId;
78
- if (itemParent !== activeItem.parentId) return;
79
- const rect = core.getViewRect(node);
80
-
81
- if (event.code === core.KeyboardCode.Left && collisionRect.left > rect.right - 10) {
82
- layoutRects.push(container);
83
- } else if (event.code === core.KeyboardCode.Right && collisionRect.left < rect.left) {
84
- layoutRects.push(container);
85
- }
86
- });
87
- const dragOverlayRect = (_document$querySelect = (_document$querySelect2 = document.querySelector("[data-testid=\"".concat(constants.DATA_TESTID.DATA_TABLE_COLUMN_DRAG_OVERLAY, "\"]"))) === null || _document$querySelect2 === void 0 ? void 0 : _document$querySelect2.getBoundingClientRect()) !== null && _document$querySelect !== void 0 ? _document$querySelect : {
88
- width: 150,
89
- left: 0
90
- };
91
- const closestId = core.closestCorners({
92
- droppableContainers: layoutRects,
93
- collisionRect,
94
- active
95
- });
96
- if (!closestId) return undefined;
97
- const closestRect = core.getViewRect(droppableContainers.get(closestId).node.current);
98
- const activeRect = core.getViewRect(droppableContainers.get(active.id).node.current);
99
- return _objectSpread(_objectSpread({}, currentCoordinates), {}, {
100
- x: closestRect.left + (closestRect.width - dragOverlayRect.width) / 2 + (closestRect.offsetLeft < activeRect.left ? -1 : 1)
101
- });
102
- };
103
-
104
- const getHierarchyKeyboardCoordinates = (context, isHorizontalDnD) => (event, _ref2) => {
105
- let {
106
- currentCoordinates,
107
- context: {
108
- active,
109
- over,
110
- collisionRect,
111
- droppableContainers
112
- }
113
- } = _ref2;
114
-
115
- if (directions.includes(event.code)) {
116
- event.preventDefault();
117
-
118
- if (!collisionRect) {
119
- return undefined;
120
- }
121
-
122
- const {
123
- current: {
124
- items
125
- }
126
- } = context;
127
- const args = {
128
- items,
129
- active,
130
- over,
131
- event,
132
- currentCoordinates,
133
- droppableContainers,
134
- collisionRect
135
- };
136
- if (isHorizontalDnD) return getHorizontalKeyboardCoordinates(args);
137
- return undefined;
138
- }
139
-
140
- return undefined;
141
- };
142
-
143
- exports.getHierarchyKeyboardCoordinates = getHierarchyKeyboardCoordinates;
@@ -1,2 +0,0 @@
1
- 'use strict';
2
-
@@ -1,55 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- var React = require('react');
6
-
7
- const useHierarchyActionHandlers = _ref => {
8
- let {
9
- handlePreviewDragStart,
10
- handlePreviewDragMove,
11
- handlePreviewDragOver,
12
- handlePreviewDragEnd,
13
- handlePreviewDragCancel,
14
- onReorder,
15
- dndItems
16
- } = _ref;
17
- const onDragStart = React.useCallback(e => {
18
- handlePreviewDragStart(e);
19
- }, [handlePreviewDragStart]);
20
- const onDragMove = React.useCallback(e => {
21
- handlePreviewDragMove(e);
22
- }, [handlePreviewDragMove]);
23
- const onDragOver = React.useCallback(e => {
24
- handlePreviewDragOver(e);
25
- }, [handlePreviewDragOver]);
26
- const onDragEnd = React.useCallback(e => {
27
- handlePreviewDragEnd(e);
28
- const {
29
- active,
30
- over
31
- } = e;
32
- if (!over) return;
33
-
34
- if (active.id !== over.id) {
35
- const activeIndex = dndItems.findIndex(item => item.id === active.id);
36
- const overIndex = dndItems.findIndex(item => item.id === over.id);
37
- onReorder(dndItems[activeIndex], {
38
- targetIndex: overIndex,
39
- fromIndex: activeIndex
40
- });
41
- }
42
- }, [handlePreviewDragEnd, dndItems, onReorder]);
43
- const onDragCancel = React.useCallback(e => {
44
- handlePreviewDragCancel(e);
45
- }, [handlePreviewDragCancel]);
46
- return {
47
- onDragStart,
48
- onDragMove,
49
- onDragOver,
50
- onDragEnd,
51
- onDragCancel
52
- };
53
- };
54
-
55
- exports.useHierarchyActionHandlers = useHierarchyActionHandlers;
@@ -1,36 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- var React = require('react');
6
-
7
- const useHierarchyAnnouncements = visibleItemsDictionary => {
8
- const onDragStart = React.useCallback(id => "Picked up draggable item from position ".concat(visibleItemsDictionary[id].index + 1, "."), [visibleItemsDictionary]);
9
- const onDragMove = React.useCallback((id, overId) => {
10
- if (overId) {
11
- const overIndex = visibleItemsDictionary[overId].index + 1;
12
- return "Draggable item was moved to position ".concat(overIndex, ".");
13
- }
14
-
15
- return "Draggable item is no longer over a droppable area.";
16
- }, [visibleItemsDictionary]);
17
- const onDragOver = onDragMove;
18
- const onDragEnd = React.useCallback((id, overId) => {
19
- if (overId) {
20
- const overIndex = visibleItemsDictionary[overId].index + 1;
21
- return "Draggable item was dropped over position ".concat(overIndex, ".");
22
- }
23
-
24
- return "Draggable item was dropped at it's original position.";
25
- }, [visibleItemsDictionary]);
26
- const onDragCancel = React.useCallback(id => "Dragging was cancelled. Draggable item from position ".concat(visibleItemsDictionary[id].index + 1, " was dropped at it's initial position."), [visibleItemsDictionary]);
27
- return {
28
- onDragStart,
29
- onDragOver,
30
- onDragMove,
31
- onDragEnd,
32
- onDragCancel
33
- };
34
- };
35
-
36
- exports.useHierarchyAnnouncements = useHierarchyAnnouncements;
@@ -1,111 +0,0 @@
1
- 'use strict';
2
-
3
- var _defineProperty = require('@babel/runtime/helpers/defineProperty');
4
- require('core-js/modules/web.dom-collections.iterator.js');
5
- require('core-js/modules/esnext.async-iterator.map.js');
6
- require('core-js/modules/esnext.iterator.map.js');
7
- require('core-js/modules/esnext.async-iterator.find.js');
8
- require('core-js/modules/esnext.iterator.constructor.js');
9
- require('core-js/modules/esnext.iterator.find.js');
10
- require('core-js/modules/esnext.async-iterator.for-each.js');
11
- require('core-js/modules/esnext.iterator.for-each.js');
12
- require('core-js/modules/esnext.async-iterator.filter.js');
13
- require('core-js/modules/esnext.iterator.filter.js');
14
- var React = require('react');
15
- var core = require('@dnd-kit/core');
16
- var useHierarchyActionHandlers = require('./useHierarchyActionHandlers.js');
17
- var useHierarchyPreviewHandlers = require('./useHierarchyPreviewHandlers.js');
18
- var getHierarchyKeyboardCoordinates = require('./getHierarchyKeyboardCoordinates.js');
19
- var customCollisionDetection = require('./customCollisionDetection.js');
20
- var useHierarchyAnnouncements = require('./useHierarchyAnnouncements.js');
21
-
22
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
23
-
24
- var _defineProperty__default = /*#__PURE__*/_interopDefaultLegacy(_defineProperty);
25
-
26
- 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; }
27
-
28
- 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; }
29
- // if second parameter is true, the space will be done on the horizontal axis
30
-
31
- const adjustTranslate = function (_ref) {
32
- let {
33
- transform
34
- } = _ref;
35
- let isHorizontalDnD = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
36
-
37
- const newTransform = _objectSpread({}, transform);
38
-
39
- if (isHorizontalDnD) {
40
- newTransform.y = transform.y + 15;
41
- } else {
42
- newTransform.y = transform.y - 35;
43
- }
44
-
45
- return newTransform;
46
- };
47
-
48
- const measuring = {
49
- droppable: {
50
- strategy: core.MeasuringStrategy.Always
51
- }
52
- };
53
-
54
- const useHierarchyDndkitConfig = _ref2 => {
55
- let {
56
- flattenedItems,
57
- isHorizontalDnD = false,
58
- onReorder
59
- } = _ref2;
60
- const [activeId, setActiveId] = React.useState(null);
61
- const [overId, setOverId] = React.useState(null);
62
- const dndItems = React.useMemo(() => flattenedItems.map(_ref3 => {
63
- let [item] = _ref3;
64
- return item;
65
- }), [flattenedItems]);
66
- const activeItem = React.useMemo(() => dndItems.find(item => item.id === activeId), [activeId, dndItems]);
67
- const itemsDictionary = React.useMemo(() => {
68
- const dictionary = {};
69
- dndItems.forEach(item => {
70
- dictionary[item.id] = item;
71
- });
72
- return dictionary;
73
- }, [dndItems]);
74
- const modifiers = React.useMemo(() => [options => adjustTranslate(options, isHorizontalDnD)], [isHorizontalDnD]);
75
- const sensorContext = React.useRef({
76
- items: dndItems
77
- });
78
- React.useEffect(() => {
79
- sensorContext.current = {
80
- items: dndItems
81
- };
82
- }, [dndItems]);
83
- const coordinateGetter = React.useMemo(() => getHierarchyKeyboardCoordinates.getHierarchyKeyboardCoordinates(sensorContext, isHorizontalDnD), [isHorizontalDnD]);
84
- const sensors = core.useSensors(core.useSensor(core.PointerSensor), core.useSensor(core.KeyboardSensor, {
85
- coordinateGetter
86
- }));
87
- const dragPreviewHandlers = useHierarchyPreviewHandlers.useHierarchyPreviewHandlers({
88
- setActiveId,
89
- setOverId
90
- });
91
- const dragActionHandlers = useHierarchyActionHandlers.useHierarchyActionHandlers(_objectSpread(_objectSpread({}, dragPreviewHandlers), {}, {
92
- dndItems,
93
- onReorder
94
- }));
95
- const announcements = useHierarchyAnnouncements.useHierarchyAnnouncements(itemsDictionary);
96
- const dndContextProps = React.useMemo(() => _objectSpread({
97
- announcements,
98
- modifiers,
99
- sensors,
100
- measuring,
101
- collisionDetection: customCollisionDetection.customCollisionDetection(activeId, activeItem === null || activeItem === void 0 ? void 0 : activeItem.parentId, dndItems)
102
- }, dragActionHandlers), [announcements, modifiers, sensors, activeId, activeItem === null || activeItem === void 0 ? void 0 : activeItem.parentId, dndItems, dragActionHandlers]);
103
- return {
104
- dndContextProps,
105
- activeId,
106
- overId,
107
- activeIndex: activeId ? activeItem.index : -1
108
- };
109
- };
110
-
111
- module.exports = useHierarchyDndkitConfig;
@@ -1,87 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- var React = require('react');
6
- var constants = require('../../../configs/constants.js');
7
- require('core-js/modules/esnext.async-iterator.filter.js');
8
- require('core-js/modules/esnext.iterator.constructor.js');
9
- require('core-js/modules/esnext.iterator.filter.js');
10
- require('core-js/modules/web.dom-collections.iterator.js');
11
- require('core-js/modules/esnext.async-iterator.reduce.js');
12
- require('core-js/modules/esnext.iterator.reduce.js');
13
- require('react-virtual');
14
- require('core-js/modules/esnext.async-iterator.for-each.js');
15
- require('core-js/modules/esnext.iterator.for-each.js');
16
- require('../../../configs/useRowFlattenization.js');
17
- require('@babel/runtime/helpers/defineProperty');
18
- require('core-js/modules/esnext.async-iterator.map.js');
19
- require('core-js/modules/esnext.iterator.map.js');
20
- require('@babel/runtime/helpers/jsx');
21
- require('@elliemae/ds-icons');
22
- require('styled-components');
23
- require('../../../styled.js');
24
- require('react/jsx-runtime');
25
- require('@elliemae/ds-form');
26
- require('../../../parts/TableContent.js');
27
- require('@elliemae/ds-grid');
28
- require('@elliemae/ds-circular-progress-indicator');
29
- require('@elliemae/ds-system');
30
- require('@elliemae/ds-button');
31
- require('../../../DataTableContext.js');
32
- require('../../../parts/Row.js');
33
- require('../../../parts/Footer.js');
34
- require('../../../parts/HoC/SortableItemContext.js');
35
-
36
- const useHierarchyPreviewHandlers = _ref => {
37
- let {
38
- setOverId,
39
- setActiveId
40
- } = _ref;
41
- const resetState = React.useCallback(() => {
42
- setOverId(null);
43
- setActiveId(null);
44
- document.body.style.setProperty('cursor', '');
45
- const el = document.querySelector("[data-testid=\"".concat(constants.DATA_TESTID.DATA_TABLE_SCROLLABLE_CONTAINER, "\"]"));
46
-
47
- el.onscroll = () => null;
48
- }, [setOverId, setActiveId]);
49
- const handlePreviewDragStart = React.useCallback(_ref2 => {
50
- let {
51
- active: {
52
- id
53
- }
54
- } = _ref2;
55
- setActiveId(id);
56
- setOverId(id);
57
- document.body.style.setProperty('cursor', 'grabbing');
58
- const el = document.querySelector("[data-testid=\"".concat(constants.DATA_TESTID.DATA_TABLE_SCROLLABLE_CONTAINER, "\"]"));
59
- const y = el.scrollTop;
60
-
61
- el.onscroll = () => el.scrollTo(0, y);
62
- }, [setActiveId, setOverId]);
63
- const handlePreviewDragMove = React.useCallback(() => null, []);
64
- const handlePreviewDragOver = React.useCallback(_ref3 => {
65
- var _over$id;
66
-
67
- let {
68
- over
69
- } = _ref3;
70
- setOverId((_over$id = over === null || over === void 0 ? void 0 : over.id) !== null && _over$id !== void 0 ? _over$id : null);
71
- }, [setOverId]);
72
- const handlePreviewDragEnd = React.useCallback(() => {
73
- resetState();
74
- }, [resetState]);
75
- const handlePreviewDragCancel = React.useCallback(() => {
76
- resetState();
77
- }, [resetState]);
78
- return {
79
- handlePreviewDragStart,
80
- handlePreviewDragMove,
81
- handlePreviewDragOver,
82
- handlePreviewDragEnd,
83
- handlePreviewDragCancel
84
- };
85
- };
86
-
87
- exports.useHierarchyPreviewHandlers = useHierarchyPreviewHandlers;