wix-style-react
Version:
64 lines (46 loc) • 2.27 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.getInstanceOfDraggableTarget = exports.getInstanceOfDraggableSource = exports.getInstanceOfDraggableProvider = void 0;
var _testUtils = _interopRequireDefault(require("react-dom/test-utils"));
var findInstance = function findInstance(wrapper, cb) {
var itemInstance = null;
_testUtils["default"].findAllInRenderedTree(wrapper, function (ins) {
var portalRoot = ins && (ins.portal || ins.tooltipContent);
if (portalRoot && _testUtils["default"].isCompositeComponent(portalRoot)) {
return _testUtils["default"].findAllInRenderedTree(portalRoot, function (insInPortal) {
if (cb(insInPortal)) {
itemInstance = insInPortal;
}
return Boolean(itemInstance);
});
} else if (cb(ins)) {
itemInstance = ins;
}
return Boolean(itemInstance);
});
return itemInstance;
};
var getInstanceOfDraggableProvider = function getInstanceOfDraggableProvider(wrapper) {
return findInstance(wrapper, function (ins) {
var _ins$props;
return ins === null || ins === void 0 ? void 0 : (_ins$props = ins.props) === null || _ins$props === void 0 ? void 0 : _ins$props.backend;
});
};
exports.getInstanceOfDraggableProvider = getInstanceOfDraggableProvider;
var getInstanceOfDraggableSource = function getInstanceOfDraggableSource(wrapper, itemId) {
return findInstance(wrapper, function (ins) {
var _ins$handler;
return (ins === null || ins === void 0 ? void 0 : (_ins$handler = ins.handler) === null || _ins$handler === void 0 ? void 0 : _ins$handler.monitor.sourceId) && ins.props.id === itemId;
});
};
exports.getInstanceOfDraggableSource = getInstanceOfDraggableSource;
var getInstanceOfDraggableTarget = function getInstanceOfDraggableTarget(wrapper, itemId) {
return findInstance(wrapper, function (ins) {
var _ins$handler2;
return (ins === null || ins === void 0 ? void 0 : (_ins$handler2 = ins.handler) === null || _ins$handler2 === void 0 ? void 0 : _ins$handler2.monitor.targetId) && ins.props.id === itemId;
});
};
exports.getInstanceOfDraggableTarget = getInstanceOfDraggableTarget;