UNPKG

tdesign-react

Version:
102 lines (96 loc) 4.99 kB
/** * tdesign v1.16.2 * (c) 2025 tdesign * @license MIT */ 'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); var defineProperty = require('../../_chunks/dep-0fe55884.js'); var React = require('react'); var _util_createHookContext = require('../../_util/createHookContext.js'); require('../../_chunks/dep-b325182b.js'); function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; } function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { defineProperty._defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; } var TreeDraggableContext = _util_createHookContext.createHookContext(function (value) { var props = value.props, store = value.store; var dragNode = React.useRef(null); var onDragStart = function onDragStart(context) { var _props$onDragStart; dragNode.current = context.node; (_props$onDragStart = props.onDragStart) === null || _props$onDragStart === void 0 || _props$onDragStart.call(props, _objectSpread(_objectSpread({}, context), {}, { node: context.node.getModel() })); }; var onDragEnd = function onDragEnd(context) { var _props$onDragEnd; dragNode.current = context.node; (_props$onDragEnd = props.onDragEnd) === null || _props$onDragEnd === void 0 || _props$onDragEnd.call(props, _objectSpread(_objectSpread({}, context), {}, { node: context.node.getModel() })); }; var onDragOver = function onDragOver(context) { var _props$onDragOver, _dragNode$current; (_props$onDragOver = props.onDragOver) === null || _props$onDragOver === void 0 || _props$onDragOver.call(props, _objectSpread(_objectSpread({}, context), {}, { node: context.node.getModel(), dragNode: (_dragNode$current = dragNode.current) === null || _dragNode$current === void 0 ? void 0 : _dragNode$current.getModel() })); }; var onDragLeave = function onDragLeave(context) { var _props$onDragLeave, _dragNode$current2; (_props$onDragLeave = props.onDragLeave) === null || _props$onDragLeave === void 0 || _props$onDragLeave.call(props, _objectSpread(_objectSpread({}, context), {}, { node: context.node.getModel(), dragNode: (_dragNode$current2 = dragNode.current) === null || _dragNode$current2 === void 0 ? void 0 : _dragNode$current2.getModel() })); }; var onDrop = function onDrop(context) { var _dragNode$current3, _props$allowDrop, _props$onDrop, _dragNode$current6; var node = context.node, dropPosition = context.dropPosition; if (node.value === ((_dragNode$current3 = dragNode.current) === null || _dragNode$current3 === void 0 ? void 0 : _dragNode$current3.value) || node.getParents().some(function (_node) { var _dragNode$current4; return _node.value === ((_dragNode$current4 = dragNode.current) === null || _dragNode$current4 === void 0 ? void 0 : _dragNode$current4.value); })) { return; } var ctx = { dropNode: node.getModel(), dragNode: dragNode.current.getModel(), dropPosition: dropPosition, e: context.e }; if (((_props$allowDrop = props.allowDrop) === null || _props$allowDrop === void 0 ? void 0 : _props$allowDrop.call(props, ctx)) === false) return; var nodes = store.getNodes(); nodes.some(function (_node) { if (_node.value === node.value) { if (dropPosition === 0) { var _dragNode$current5; (_dragNode$current5 = dragNode.current) === null || _dragNode$current5 === void 0 || _dragNode$current5.appendTo(store, _node); } else if (dropPosition < 0) { node.insertBefore(dragNode.current); } else { node.insertAfter(dragNode.current); } return true; } return false; }); (_props$onDrop = props.onDrop) === null || _props$onDrop === void 0 || _props$onDrop.call(props, _objectSpread(_objectSpread({}, context), {}, { dragNode: (_dragNode$current6 = dragNode.current) === null || _dragNode$current6 === void 0 ? void 0 : _dragNode$current6.getModel(), dropNode: node.getModel() })); }; return { onDragStart: onDragStart, onDragEnd: onDragEnd, onDragOver: onDragOver, onDragLeave: onDragLeave, onDrop: onDrop }; }); var useTreeDraggableContext = function useTreeDraggableContext() { return TreeDraggableContext.use(); }; exports.TreeDraggableContext = TreeDraggableContext; exports.useTreeDraggableContext = useTreeDraggableContext; //# sourceMappingURL=TreeDraggableContext.js.map