linkmore-design
Version:
π πlmη»δ»ΆεΊγπ
34 lines (33 loc) β’ 1.06 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _react = _interopRequireDefault(require("react"));
var _core = require("@dnd-kit/core");
var _sortable = require("@dnd-kit/sortable");
const HeaderRowSortWarp = ({
children,
items,
updateItems
}) => {
const onDragEnd = ({
active,
over
}) => {
if (active.id !== over?.id) {
const activeIndex = items.findIndex(i => i.key === active.id);
const overIndex = items.findIndex(i => i.key === over?.id);
updateItems((0, _sortable.arrayMove)(items, activeIndex, overIndex));
}
};
return /*#__PURE__*/_react.default.createElement(_core.DndContext, {
onDragEnd: onDragEnd
}, /*#__PURE__*/_react.default.createElement(_sortable.SortableContext, {
items: items.map(i => i.key),
strategy: _sortable.horizontalListSortingStrategy
}, children));
};
var _default = HeaderRowSortWarp;
exports.default = _default;