UNPKG

wix-style-react

Version:
44 lines (43 loc) 1.5 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); exports.__esModule = true; exports.default = void 0; var _Draggable = _interopRequireDefault(require("../DragAndDrop/Draggable/Draggable.driver")); var _constants = require("../DragAndDrop/Draggable/constants"); var _constants2 = require("./constants"); var sortableListBaseFactory = _ref => { var { element } = _ref; var draggableDriver = (0, _Draggable.default)({ element: element.querySelector("[data-hook=\"".concat(_constants2.dataHooks.provider, "\"]")) }); return { /** checks if exists */ exists: () => !!element, /** reorder sortable list items */ reorder: _ref2 => { var { dataHookFrom, dataHookTo } = _ref2; draggableDriver.beginDrag({ dataHook: dataHookFrom }); draggableDriver.dragOver({ dataHook: dataHookTo }); draggableDriver.endDrag(); }, /** get draggable item position */ getItemPosition: _ref3 => { var { dataHook } = _ref3; var draggableItems = [...element.querySelectorAll("[".concat(_constants.dataAttributes.draggableTarget, "]"))]; return draggableItems.findIndex(item => item.querySelectorAll("[".concat(_constants.dataAttributes.draggableSource, "]"))[0].getAttribute('data-hook') === dataHook); } }; }; var _default = exports.default = sortableListBaseFactory; //# sourceMappingURL=SortableListBase.driver.js.map