@luscii-healthtech/web-ui 2.64.1 → 2.65.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.
@@ -7,7 +7,6 @@ function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'defau
7
7
  var React = require('react');
8
8
  var React__default = _interopDefault(React);
9
9
  var classNames = _interopDefault(require('classnames'));
10
- var dragula = _interopDefault(require('react-dragula'));
11
10
  var lodash = require('lodash');
12
11
  var core = require('@dnd-kit/core');
13
12
  var sortable = require('@dnd-kit/sortable');
@@ -2804,71 +2803,79 @@ var _excluded$9 = ["items", "onDragEnd", "onAssetLoadError"];
2804
2803
 
2805
2804
  var DefaultList = function DefaultList(_ref) {
2806
2805
  var items = _ref.items,
2807
- onDragEnd = _ref.onDragEnd,
2806
+ _onDragEnd = _ref.onDragEnd,
2808
2807
  onAssetLoadError = _ref.onAssetLoadError,
2809
2808
  props = _objectWithoutPropertiesLoose(_ref, _excluded$9);
2810
2809
 
2811
- var listRef = React.useRef(null);
2812
- var dragulaRef = React.useRef(null);
2813
- React.useEffect(function () {
2814
- var _dragulaRef$current;
2815
-
2816
- (_dragulaRef$current = dragulaRef.current) == null ? void 0 : _dragulaRef$current.destroy == null ? void 0 : _dragulaRef$current.destroy();
2810
+ var sensor = core.useSensor(core.MouseSensor);
2817
2811
 
2818
- if (listRef.current && onDragEnd && items.length) {
2819
- dragulaRef.current = setupDragging();
2820
- }
2812
+ var _useState = React.useState(null),
2813
+ draggedListItem = _useState[0],
2814
+ setDraggedListItem = _useState[1];
2821
2815
 
2822
- return function () {
2823
- var _dragulaRef$current2;
2816
+ var _useState2 = React.useState(items),
2817
+ innerItems = _useState2[0],
2818
+ setInnerItems = _useState2[1];
2824
2819
 
2825
- (_dragulaRef$current2 = dragulaRef.current) == null ? void 0 : _dragulaRef$current2.destroy == null ? void 0 : _dragulaRef$current2.destroy();
2826
- };
2827
- }, [items, listRef]);
2820
+ React.useEffect(function () {
2821
+ setInnerItems(items);
2822
+ }, [items]);
2828
2823
 
2829
- var handleDragEnd = function handleDragEnd(element) {
2830
- var draggedItemId = element.dataset["id"];
2824
+ if (!_onDragEnd) {
2825
+ return /*#__PURE__*/React__default.createElement(BaseList, _extends({
2826
+ itemComponent: ListItem,
2827
+ items: items.map(function (item) {
2828
+ return _extends({}, item, {
2829
+ isDraggable: false,
2830
+ onAssetLoadError: onAssetLoadError
2831
+ });
2832
+ })
2833
+ }, props));
2834
+ }
2831
2835
 
2832
- if (listRef.current && draggedItemId) {
2833
- var itemIdsWithOldOrder = items.map(function (item) {
2834
- return item.itemId.toString();
2835
- });
2836
- var itemIdsWithNewOrder = Array.from(listRef.current.children).map(function (child) {
2837
- return child.dataset["id"];
2838
- }).filter(function (itemId) {
2839
- return !!itemId;
2840
- });
2841
- var oldIndexOfDraggedItemId = itemIdsWithOldOrder.indexOf(draggedItemId);
2842
- var newIndexOfDraggedItemId = itemIdsWithNewOrder.indexOf(draggedItemId);
2836
+ return /*#__PURE__*/React__default.createElement(core.DndContext, {
2837
+ sensors: [sensor],
2838
+ onDragStart: function onDragStart(event) {
2839
+ setDraggedListItem(getDndListItemProps(event.active));
2840
+ },
2841
+ onDragEnd: function onDragEnd(event) {
2842
+ var _event$active, _event$active$data, _event$active$data$cu, _event$active$data$cu2, _event$over, _event$over$data, _event$over$data$curr, _event$over$data$curr2;
2843
2843
 
2844
- if (oldIndexOfDraggedItemId !== newIndexOfDraggedItemId) {
2845
- onDragEnd == null ? void 0 : onDragEnd(draggedItemId, newIndexOfDraggedItemId);
2844
+ if (!draggedListItem) {
2845
+ return;
2846
2846
  }
2847
- }
2848
- };
2849
2847
 
2850
- var setupDragging = function setupDragging() {
2851
- if (!listRef.current) {
2852
- return null;
2853
- }
2848
+ var currentIndex = (_event$active = event.active) == null ? void 0 : (_event$active$data = _event$active.data) == null ? void 0 : (_event$active$data$cu = _event$active$data.current) == null ? void 0 : (_event$active$data$cu2 = _event$active$data$cu.sortable) == null ? void 0 : _event$active$data$cu2.index;
2849
+ var newIndex = (_event$over = event.over) == null ? void 0 : (_event$over$data = _event$over.data) == null ? void 0 : (_event$over$data$curr = _event$over$data.current) == null ? void 0 : (_event$over$data$curr2 = _event$over$data$curr.sortable) == null ? void 0 : _event$over$data$curr2.index;
2854
2850
 
2855
- var dragulaInstance = dragula([listRef.current], {
2856
- revertOnSpill: true
2857
- });
2858
- dragulaInstance.on("dragend", handleDragEnd);
2859
- return dragulaInstance;
2860
- };
2851
+ if (typeof currentIndex === "number" && typeof newIndex === "number") {
2852
+ setInnerItems(sortable.arrayMove(innerItems, currentIndex, newIndex));
2861
2853
 
2862
- return /*#__PURE__*/React__default.createElement(BaseList, _extends({
2863
- ref: listRef,
2864
- itemComponent: ListItem,
2865
- items: items.map(function (item) {
2854
+ _onDragEnd(draggedListItem.itemId, newIndex);
2855
+ }
2856
+
2857
+ setDraggedListItem(null);
2858
+ }
2859
+ }, /*#__PURE__*/React__default.createElement(SortableBaseList, _extends({
2860
+ draggableIdentifier: "sortable-list-identifier",
2861
+ items: innerItems.map(function (item) {
2866
2862
  return _extends({}, item, {
2867
- isDraggable: !!onDragEnd,
2863
+ draggableIdentifier: "" + item.itemId,
2864
+ isDraggable: true,
2868
2865
  onAssetLoadError: onAssetLoadError
2869
2866
  });
2870
2867
  })
2871
- }, props));
2868
+ }, props)), /*#__PURE__*/React__default.createElement(core.DragOverlay, {
2869
+ dropAnimation: null,
2870
+ wrapperElement: "ul",
2871
+ className: "shadow-lg"
2872
+ }, draggedListItem && /*#__PURE__*/React__default.createElement(ListItem, _extends({}, draggedListItem, {
2873
+ renderDragHandle: function renderDragHandle() {
2874
+ return /*#__PURE__*/React__default.createElement(DragHandle, {
2875
+ grabbing: true
2876
+ });
2877
+ }
2878
+ }))));
2872
2879
  }; // Rest operator isn't used here because TS seems to require the operation
2873
2880
  // happening in the branch of the code where the object is used in
2874
2881