wix-style-react
Version:
wix-style-react
46 lines (35 loc) • 1.61 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
var _testUtils = require('react-dom/test-utils');
var _testUtils2 = _interopRequireDefault(_testUtils);
var _driverHelpers = require('./driverHelpers');
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var sortableListFactory = function sortableListFactory(_ref) {
var element = _ref.element,
wrapper = _ref.wrapper;
// in case if wrapper is coming from enzyme, we want to get it instance
var vanillaWrapper = wrapper.instance ? wrapper.instance() : wrapper;
var isCompositeComponent = _testUtils2.default.isCompositeComponent(vanillaWrapper);
if (!isCompositeComponent) {
console.warn('SortableList factory expect to receive wrapper as composite component(react instance, and not a dom instance)'); // eslint-disable-line
}
var backend = isCompositeComponent ? (0, _driverHelpers.getInstanceOfDraggableProvider)(vanillaWrapper).getManager().getBackend() : null;
return {
exists: function exists() {
return !!element;
},
reorder: function reorder(_ref2) {
var removedId = _ref2.removedId,
addedId = _ref2.addedId;
if (backend) {
backend.simulateBeginDrag([(0, _driverHelpers.getInstanceOfDraggableSource)(vanillaWrapper, removedId).getHandlerId()]);
backend.simulateHover([(0, _driverHelpers.getInstanceOfDraggableTarget)(vanillaWrapper, addedId).getHandlerId()]);
backend.simulateDrop();
backend.simulateEndDrag();
}
}
};
};
exports.default = sortableListFactory;