UNPKG

wix-style-react

Version:
61 lines (47 loc) 2.3 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); exports.getInstanceOfDraggableTarget = exports.getInstanceOfDraggableSource = exports.getInstanceOfDraggableProvider = undefined; var _testUtils = require('react-dom/test-utils'); var _testUtils2 = _interopRequireDefault(_testUtils); var _DragDropContextProvider = require('../DragDropContextProvider'); var _DragDropContextProvider2 = _interopRequireDefault(_DragDropContextProvider); var _DraggableSource = require('../DragAndDrop/Draggable/components/DraggableSource'); var _DraggableSource2 = _interopRequireDefault(_DraggableSource); var _DraggableTarget = require('../DragAndDrop/Draggable/components/DraggableTarget'); var _DraggableTarget2 = _interopRequireDefault(_DraggableTarget); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } var findInstance = function findInstance(wrapper, cb) { var itemInstance = null; _testUtils2.default.findAllInRenderedTree(wrapper, function (ins) { var portalRoot = ins && (ins.portal || ins.tooltipContent); if (portalRoot && _testUtils2.default.isCompositeComponent(portalRoot)) { return _testUtils2.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 = exports.getInstanceOfDraggableProvider = function getInstanceOfDraggableProvider(wrapper) { return findInstance(wrapper, function (ins) { return ins instanceof _DragDropContextProvider2.default; }); }; var getInstanceOfDraggableSource = exports.getInstanceOfDraggableSource = function getInstanceOfDraggableSource(wrapper, itemId) { return findInstance(wrapper, function (ins) { return ins instanceof _DraggableSource2.default && ins.props.id === itemId; }); }; var getInstanceOfDraggableTarget = exports.getInstanceOfDraggableTarget = function getInstanceOfDraggableTarget(wrapper, itemId) { return findInstance(wrapper, function (ins) { return ins instanceof _DraggableTarget2.default && ins.props.id === itemId; }); };