{"version":3,"sources":["jsdelivr-header.js","/npm/@ayoub-root/react-dnd-tv@1.1.5/dist/index.js"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA,ACNA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"/npm/@ayoub-root/react-dnd-tv@1.1.5/dist/index.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.39.0.\n * Original file: /npm/@ayoub-root/react-dnd-tv@1.1.5/dist/index.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:!0});var React=require(\"react\"),reactDndHtml5Backend=require(\"react-dnd-html5-backend\"),reactDndMultiBackend=require(\"react-dnd-multi-backend\"),rdndmbHtml5ToTouch=require(\"rdndmb-html5-to-touch\"),reactDnd=require(\"react-dnd\");function _interopDefaultLegacy(e){return e&&\"object\"==typeof e&&\"default\"in e?e:{default:e}}var React__default=_interopDefaultLegacy(React),__assign=function(){return __assign=Object.assign||function(e){for(var t,r=1,n=arguments.length;r<n;r++)for(var o in t=arguments[r])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e},__assign.apply(this,arguments)};\n/*! *****************************************************************************\nCopyright (c) Microsoft Corporation.\n\nPermission to use, copy, modify, and/or distribute this software for any\npurpose with or without fee is hereby granted.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\nPERFORMANCE OF THIS SOFTWARE.\n***************************************************************************** */function __spreadArray(e,t,r){if(r||2===arguments.length)for(var n,o=0,a=t.length;o<a;o++)!n&&o in t||(n||(n=Array.prototype.slice.call(t,0,o)),n[o]=t[o]);return e.concat(n||Array.prototype.slice.call(t))}var compareItems=function(e,t){return e.text>t.text?1:e.text<t.text?-1:0},getTreeItem=function(e,t){return e.find((function(e){return e.id===t}))},isAncestor=function(e,t,r){if(0===r)return!1;var n=e.find((function(e){return e.id===r}));return void 0!==n&&(n.parent===t||isAncestor(e,t,n.parent))},isDroppable=function(e,t,r){var n=r.tree,o=r.rootId,a=r.canDrop;if(void 0===e)return t===o||!(!(u=n.find((function(e){return e.id===t})))||!u.droppable);if(a){var i=a(e,t);if(void 0!==i)return i}if(e===t)return!1;var u,d=n.find((function(t){return t.id===e}));return void 0!==d&&d.parent!==t&&(t===o||!(void 0===(u=n.find((function(e){return e.id===t})))||!u.droppable)&&!isAncestor(n,e,t))},mutateTree=function(e,t,r){return e.map((function(e){return e.id===t?__assign(__assign({},e),{parent:r}):e}))},getSrcIndex=function(e,t){return e.findIndex((function(e){return e.id===t}))},getDestIndex=function(e,t,r){if(0===r)return 0;var n=e.filter((function(e){return e.parent===t}));return n[r]?e.findIndex((function(e){return e.id===n[r].id})):e.findIndex((function(e){return e.id===n[r-1].id}))+1},getModifiedIndex=function(e,t,r,n){var o=getSrcIndex(e,t),a=getDestIndex(e,r,n);return[o,a=a>o?a-1:a]},arrayMoveMutable=function(e,t,r){var n=t<0?e.length+t:t;if(n>=0&&n<e.length){var o=r<0?e.length+r:r,a=e.splice(t,1)[0];e.splice(o,0,a)}},mutateTreeWithIndex=function(e,t,r,n){var o=getModifiedIndex(e,t,r,n),a=o[0],i=o[1],u=__spreadArray([],e,!0);return arrayMoveMutable(u,a,i),u.map((function(e){return e.id===t?__assign(__assign({},e),{parent:r}):e}))},compareYCoord=function(e,t){var r=e.getBoundingClientRect();return t>r.top+r.height/2?\"down\":\"up\"},getInnerIndex=function(e,t){var r=\"\",n=0;return e.forEach((function(o,a){var i,u=compareYCoord(o,(null===(i=t.getClientOffset())||void 0===i?void 0:i.y)||0);\"\"===r?r=u:r!==u&&(r=u,n=a),a===e.length-1&&\"down\"===u&&(n=a+1)})),n},getOuterIndex=function(e,t,r){var n=t.closest('[role=\"list\"]'),o=null==n?void 0:n.querySelectorAll(':scope > [role=\"listitem\"]');return o?getInnerIndex(o,r):null},getHoverPosition=function(e,t,r){var n=e.getBoundingClientRect(),o=r.dropTargetOffset,a=n.top+o;return t>n.bottom-o?\"lower\":t<a?\"upper\":\"middle\"},getDropTarget=function(e,t,r,n){var o;if(!t)return null;if(null===e){var a=t.querySelectorAll(':scope > [role=\"listitem\"]');return{id:n.rootId,index:getInnerIndex(a,r)}}var i=r.getItem(),u=t.querySelector('[role=\"list\"]'),d=getHoverPosition(t,(null===(o=r.getClientOffset())||void 0===o?void 0:o.y)||0,n);if(u){var l;if(\"upper\"===d)return isDroppable(i.id,e.parent,n)?null===(l=getOuterIndex(e,t,r))?null:{id:e.parent,index:l}:{id:e.id,index:0};a=u.querySelectorAll(':scope > [role=\"listitem\"]');return{id:e.id,index:getInnerIndex(a,r)}}return\"middle\"===d?{id:e.id,index:0}:isDroppable(i.id,e.parent,n)?null===(l=getOuterIndex(e,t,r))?null:{id:e.parent,index:l}:null},getDescendants=function(e,t){var r=[],n=function(e,t){var o=e.filter((function(e){return t.includes(e.parent)}));o.length>0&&(r=__spreadArray(__spreadArray([],r,!0),o,!0),n(e,o.map((function(e){return e.id}))))};return n(e,[t]),r},TreeContext=React__default.default.createContext({}),TreeProvider=function(e){var t=useOpenIdsHelper(e.tree,e.initialOpen),r=t[0],n=t[1],o=n.handleToggle,a=n.handleCloseAll,i=n.handleOpenAll,u=n.handleOpen,d=n.handleClose;React.useImperativeHandle(e.treeRef,(function(){return{open:function(t){return u(t,e.onChangeOpen)},close:function(t){return d(t,e.onChangeOpen)},openAll:function(){return i(e.onChangeOpen)},closeAll:function(){return a(e.onChangeOpen)}}}));var l=e.canDrop,c=e.canDrag,s=__assign(__assign({listComponent:\"ul\",listItemComponent:\"li\",placeholderComponent:\"li\",sort:!0,insertDroppableFirst:!0,dropTargetOffset:0,initialOpen:!1},e),{openIds:r,onDrop:function(t,r,n){var o={dragSourceId:t,dropTargetId:r,dragSource:getTreeItem(e.tree,t),dropTarget:getTreeItem(e.tree,r)};if(!1===e.sort){var a=getModifiedIndex(e.tree,t,r,n)[1];return o.destinationIndex=a,void e.onDrop(mutateTreeWithIndex(e.tree,t,r,n),o)}e.onDrop(mutateTree(e.tree,t,r),o)},canDrop:l?function(t,r){return l(e.tree,{dragSourceId:t,dropTargetId:r,dragSource:getTreeItem(e.tree,t),dropTarget:getTreeItem(e.tree,r)})}:void 0,canDrag:c?function(t){return c(getTreeItem(e.tree,t))}:void 0,onToggle:function(t){return o(t,e.onChangeOpen)}});return React__default.default.createElement(TreeContext.Provider,{value:s},e.children)},DragControlContext=React__default.default.createContext({}),initialState$1={isLock:!1},DragControlProvider=function(e){var t=React.useState(initialState$1.isLock),r=t[0],n=t[1];return React__default.default.createElement(DragControlContext.Provider,{value:{isLock:r,lock:function(){return n(!0)},unlock:function(){return n(!1)}}},e.children)},PlaceholderContext=React__default.default.createContext({}),initialState={dropTargetId:void 0,index:void 0},PlaceholderProvider=function(e){var t=React.useState(initialState.dropTargetId),r=t[0],n=t[1],o=React.useState(initialState.index),a=o[0],i=o[1];return React__default.default.createElement(PlaceholderContext.Provider,{value:{dropTargetId:r,index:a,showPlaceholder:function(e,t){n(e),i(t)},hidePlaceholder:function(){n(initialState.dropTargetId),i(initialState.index)}}},e.children)},Providers=function(e){return React__default.default.createElement(TreeProvider,__assign({},e),React__default.default.createElement(DragControlProvider,null,React__default.default.createElement(PlaceholderProvider,null,React__default.default.createElement(reactDndMultiBackend.DndProvider,{options:rdndmbHtml5ToTouch.HTML5toTouch},e.children))))},useDragControl=function(e){var t=React.useContext(DragControlContext),r=function(e){var r=e.target;(r instanceof HTMLInputElement||r instanceof HTMLTextAreaElement)&&t.lock()},n=function(e){var r=e.target;(r instanceof HTMLInputElement||r instanceof HTMLTextAreaElement)&&t.unlock()},o=function(e){return r(e)},a=function(e){return n(e)},i=function(e){return r(e)},u=function(e){return n(e)};React.useEffect((function(){var r,n,d,l;if(e.current){var c=new MutationObserver((function(){document.activeElement===document.body&&t.unlock()}));return c.observe(e.current,{subtree:!0,childList:!0}),null===(r=e.current)||void 0===r||r.addEventListener(\"mouseover\",o),null===(n=e.current)||void 0===n||n.addEventListener(\"mouseout\",a),null===(d=e.current)||void 0===d||d.addEventListener(\"focusin\",i),null===(l=e.current)||void 0===l||l.addEventListener(\"focusout\",u),function(){var t,r,n,d;c.disconnect(),null===(t=e.current)||void 0===t||t.removeEventListener(\"mouseover\",o),null===(r=e.current)||void 0===r||r.removeEventListener(\"mouseout\",a),null===(n=e.current)||void 0===n||n.removeEventListener(\"focusin\",i),null===(d=e.current)||void 0===d||d.removeEventListener(\"focusout\",u)}}}),[]),React.useEffect((function(){var r;null===(r=e.current)||void 0===r||r.setAttribute(\"draggable\",t.isLock?\"false\":\"true\")}),[t.isLock])},ItemTypes={TREE_ITEM:Symbol()},dragSourceElement=null,useDragNode=function(e,t){var r=useTreeContext(),n=function(e){var t=e.target;if(t instanceof HTMLElement){var r=t.closest('[role=\"listitem\"]');e.currentTarget===r&&(dragSourceElement=r)}},o=function(e){return n(e)},a=function(e){return n(e)};React.useEffect((function(){var e,r;return null===(e=t.current)||void 0===e||e.addEventListener(\"dragstart\",o),null===(r=t.current)||void 0===r||r.addEventListener(\"touchstart\",a,{passive:!0}),function(){var e,r;null===(e=t.current)||void 0===e||e.removeEventListener(\"dragstart\",o),null===(r=t.current)||void 0===r||r.removeEventListener(\"touchstart\",a)}}),[]);var i=reactDnd.useDrag({item:__assign({type:ItemTypes.TREE_ITEM,ref:t},e),canDrag:function(){var n=r.canDrag;return dragSourceElement===t.current&&(!n||n(e.id))},collect:function(e){return{isDragging:e.isDragging()}}});return[i[0].isDragging,i[1],i[2]]},useDragOver=function(e,t,r){var n=React.useRef(0),o=React.useRef(0);return{onDragEnter:function(){n.current+=1,1!==n.current||t||(o.current=window.setTimeout((function(){return r(e)}),500))},onDragLeave:function(){n.current-=1,0===n.current&&window.clearTimeout(o.current)},onDrop:function(){o.current>0&&window.clearTimeout(o.current),n.current=0,o.current=0}}},useDropRoot=function(e){var t=useTreeContext(),r=React.useContext(PlaceholderContext),n=reactDnd.useDrop({accept:ItemTypes.TREE_ITEM,drop:function(e,n){var o=t.rootId,a=t.onDrop,i=r.dropTargetId,u=r.index;n.isOver({shallow:!0})&&void 0!==i&&void 0!==u&&a(e.id,o,u),r.hidePlaceholder()},canDrop:function(e,r){var n=t.rootId;return!!r.isOver({shallow:!0})&&(void 0!==e&&isDroppable(e.id,n,t))},hover:function(n,o){if(o.isOver({shallow:!0})){var a=t.rootId,i=r.dropTargetId,u=r.index,d=r.showPlaceholder,l=r.hidePlaceholder,c=getDropTarget(null,e.current,o,t);if(null===c||!isDroppable(n.id,a,t))return void l();c.id===i&&c.index===u||d(c.id,c.index)}},collect:function(e){var t=e.getItem();return{isOver:e.isOver({shallow:!0})&&e.canDrop(),dragSource:t}}}),o=n[0];return[o.isOver,o.dragSource,n[1]]},useDropNode=function(e,t){var r=useTreeContext(),n=React.useContext(PlaceholderContext),o=reactDnd.useDrop({accept:ItemTypes.TREE_ITEM,drop:function(e,t){var o=n.dropTargetId,a=n.index;t.isOver({shallow:!0})&&void 0!==o&&void 0!==a&&r.onDrop(e.id,o,a),n.hidePlaceholder()},canDrop:function(n,o){if(o.isOver({shallow:!0})){var a=getDropTarget(e,t.current,o,r);return null!==a&&isDroppable(n.id,a.id,r)}return!1},hover:function(o,a){if(a.isOver({shallow:!0})){var i=n.dropTargetId,u=n.index,d=n.showPlaceholder,l=n.hidePlaceholder,c=getDropTarget(e,t.current,a,r);if(null===c||!isDroppable(o.id,c.id,r))return void l();c.id===i&&c.index===u||d(c.id,c.index)}},collect:function(e){var t=e.getItem();return{isOver:e.isOver({shallow:!0})&&e.canDrop(),dragSource:t}}}),a=o[0];return[a.isOver,a.dragSource,o[1]]},useOpenIdsHelper=function(e,t){var r=[];!0===t?r=e.filter((function(e){return e.droppable})).map((function(e){return e.id})):Array.isArray(t)&&(r=t);var n=React.useState(r),o=n[0],a=n[1];return[o,{handleToggle:function(e,t){var r=o.includes(e)?o.filter((function(t){return t!==e})):__spreadArray(__spreadArray([],o,!0),[e],!1);a(r),t&&t(r)},handleCloseAll:function(e){a([]),e&&e([])},handleOpenAll:function(t){var r=e.filter((function(e){return e.droppable})).map((function(e){return e.id}));a(r),t&&t(r)},handleOpen:function(t,r){var n=__spreadArray(__spreadArray([],o,!0),e.filter((function(e){return e.droppable&&(Array.isArray(t)?t.includes(e.id):e.id===t)})).map((function(e){return e.id})),!0).filter((function(e,t,r){return r.indexOf(e)===t}));a(n),r&&r(n)},handleClose:function(e,t){var r=o.filter((function(t){return Array.isArray(e)?!e.includes(t):t!==e}));a(r),t&&t(r)}}]},useTreeDragLayer=function(){return reactDnd.useDragLayer((function(e){var t=e.getItemType();return{item:e.getItem(),clientOffset:e.getClientOffset(),isDragging:e.isDragging()&&t===ItemTypes.TREE_ITEM}}))},useTreeContext=function(){var e=React.useContext(TreeContext);if(!e)throw new Error(\"useTreeContext must be used under TreeProvider\");return e},useContainerClassName=function(e,t){var r=useTreeContext(),n=r.rootId,o=r.rootProps,a=r.classes,i=(null==a?void 0:a.container)||\"\";return t&&(null==a?void 0:a.dropTarget)&&(i=\"\".concat(i,\" \").concat(a.dropTarget)),e===n&&(null==a?void 0:a.root)&&(i=\"\".concat(i,\" \").concat(a.root)),e===n&&(null==o?void 0:o.className)&&(i=\"\".concat(i,\" \").concat(o.className)),i=i.trim()},Node=function(e){var t,r,n,o,a,i,u,d,l=useTreeContext(),c=React.useContext(PlaceholderContext),s=React.useRef(null),f=l.tree.find((function(t){return t.id===e.id})),p=l.openIds,g=l.classes,v=p.includes(e.id);if(!f)return null;var m=useDragNode(f,s),x=m[0],h=m[1],T=m[2],I=useDropNode(f,s),_=I[0],D=I[1],C=I[2];h(s),isDroppable(null==D?void 0:D.id,e.id,l)&&C(s);var R=!!l.tree.find((function(t){return t.parent===e.id}));React.useEffect((function(){l.dragPreviewRender&&T(reactDndHtml5Backend.getEmptyImage(),{captureDraggingState:!0})}),[]),useDragControl(s);var E=React.useCallback((function(){l.onToggle(f.id)}),[p]),y=l.listItemComponent,O=(null==g?void 0:g.listItem)||\"\";_&&(null==g?void 0:g.dropTarget)&&(O=\"\".concat(O,\" \").concat(g.dropTarget)),x&&(null==g?void 0:g.draggingSource)&&(O=\"\".concat(O,\" \").concat(g.draggingSource));var b=!l.canDrag||l.canDrag(e.id),P=c.dropTargetId===e.id,L={depth:e.depth,index:e.index,isOpen:v,isDragging:x,isDropTarget:P,draggable:b,hasChild:R,containerRef:s,onToggle:E};return React__default.default.createElement(y,{ref:s,className:(null===(t=l.render(f,L).props)||void 0===t?void 0:t.children.length)>0?null===(o=null===(n=null===(r=l.render(f,L).props)||void 0===r?void 0:r.children[1])||void 0===n?void 0:n.props)||void 0===o?void 0:o.class:O,role:\"listitem\"},l.render(f,L),v&&R&&React__default.default.createElement(Container,{parentId:e.id,depth:e.depth+1}),React__default.default.createElement(\"div\",null,(null===(a=l.render(f,L).props)||void 0===a?void 0:a.children.length)>0?null===(d=null===(u=null===(i=l.render(f,L).props)||void 0===i?void 0:i.children[1])||void 0===u?void 0:u.props)||void 0===d?void 0:d.config:\"\"))},Placeholder=function(e){var t=useTreeContext(),r=t.placeholderRender,n=t.placeholderComponent,o=t.classes,a=React.useContext(PlaceholderContext),i=reactDnd.useDragDropManager().getMonitor().getItem();return r&&i&&e.dropTargetId===a.dropTargetId&&(e.index===a.index||void 0===e.index&&e.listCount===a.index)?React__default.default.createElement(n,{className:(null==o?void 0:o.placeholder)||\"\"},r(i,{depth:e.depth})):null},Container=function(e){var t=useTreeContext(),r=React.useRef(null),n=t.tree.filter((function(t){return t.parent===e.parentId})),o=n,a=\"function\"==typeof t.sort?t.sort:compareItems;if(t.insertDroppableFirst){var i=n.filter((function(e){return e.droppable})),u=n.filter((function(e){return!e.droppable}));!1===t.sort||(i=i.sort(a),u=u.sort(a)),o=__spreadArray(__spreadArray([],i,!0),u,!0)}else!1!==t.sort&&(o=n.sort(a));var d=useDropRoot(r),l=d[0],c=d[1],s=d[2];e.parentId===t.rootId&&isDroppable(null==c?void 0:c.id,t.rootId,t)&&s(r);var f=useContainerClassName(e.parentId,l),p=t.rootProps||{},g=t.listComponent;return React__default.default.createElement(g,__assign({ref:r,role:\"list\"},p,{className:f}),o.map((function(t,r){return React__default.default.createElement(React__default.default.Fragment,{key:t.id},React__default.default.createElement(Placeholder,{depth:e.depth,listCount:o.length,dropTargetId:e.parentId,index:r}),React__default.default.createElement(Node,{id:t.id,depth:e.depth,index:r}))})),React__default.default.createElement(Placeholder,{depth:e.depth,listCount:o.length,dropTargetId:e.parentId}))},rootStyle={height:\"100%\",left:0,pointerEvents:\"none\",position:\"fixed\",top:0,width:\"100%\",zIndex:100},getItemStyles=function(e){var t=e.clientOffset;if(!t)return{};var r=t.x,n=t.y;return{pointerEvents:\"none\",transform:\"translate(\".concat(r,\"px, \").concat(n,\"px)\")}},DragLayer=function(){var e=useTreeContext(),t=useTreeDragLayer(),r=t.isDragging,n=t.clientOffset;return r&&n?React__default.default.createElement(\"div\",{style:rootStyle},React__default.default.createElement(\"div\",{style:getItemStyles(t)},e.dragPreviewRender&&e.dragPreviewRender(t))):null};function TreeInner(e,t){return React__default.default.createElement(Providers,__assign({},e,{treeRef:t}),e.dragPreviewRender&&React__default.default.createElement(DragLayer,null),React__default.default.createElement(Container,{parentId:e.rootId,depth:0}))}var Tree=React.forwardRef(TreeInner);exports.Container=Container,exports.DragLayer=DragLayer,exports.ItemTypes=ItemTypes,exports.Node=Node,exports.Tree=Tree,exports.compareItems=compareItems,exports.getDescendants=getDescendants,exports.getDropTarget=getDropTarget,exports.getModifiedIndex=getModifiedIndex,exports.getTreeItem=getTreeItem,exports.isAncestor=isAncestor,exports.isDroppable=isDroppable,exports.mutateTree=mutateTree,exports.mutateTreeWithIndex=mutateTreeWithIndex,exports.useContainerClassName=useContainerClassName,exports.useDragControl=useDragControl,exports.useDragNode=useDragNode,exports.useDragOver=useDragOver,exports.useDropNode=useDropNode,exports.useDropRoot=useDropRoot,exports.useOpenIdsHelper=useOpenIdsHelper,exports.useTreeContext=useTreeContext,exports.useTreeDragLayer=useTreeDragLayer;\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6W10sInNvdXJjZXMiOltdLCJtYXBwaW5ncyI6IiIsImlnbm9yZUxpc3QiOltdfQ=="]}