primereact
Version:
PrimeReact is an open source UI library for React featuring a rich set of 90+ components, a theme designer, various theme alternatives such as Material, Bootstrap, Tailwind, premium templates and professional support. In addition, it integrates with Prime
2 lines (1 loc) • 23.3 kB
JavaScript
this.primereact=this.primereact||{},this.primereact.tree=function(e,n,t,r,o){"use strict";function l(e){if(e&&e.__esModule)return e;var n=Object.create(null);return e&&Object.keys(e).forEach((function(t){if("default"!==t){var r=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(n,t,r.get?r:{enumerable:!0,get:function(){return e[t]}})}})),n.default=e,Object.freeze(n)}var a=l(n);function i(){return i=Object.assign?Object.assign.bind():function(e){for(var n=1;n<arguments.length;n++){var t=arguments[n];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])}return e},i.apply(this,arguments)}function c(e,n){(null==n||n>e.length)&&(n=e.length);for(var t=0,r=new Array(n);t<n;t++)r[t]=e[t];return r}function d(e){if(Array.isArray(e))return c(e)}function s(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function p(e,n){if(e){if("string"==typeof e)return c(e,n);var t=Object.prototype.toString.call(e).slice(8,-1);return"Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?c(e,n):void 0}}function u(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function f(e){return f="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},f(e)}function g(e,n){if("object"!==f(e)||null===e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var r=t.call(e,n||"default");if("object"!==f(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===n?String:Number)(e)}function y(e){var n=g(e,"string");return"symbol"===f(n)?n:String(n)}function m(e,n,t){return(n=y(n))in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function h(e){if(Array.isArray(e))return e}function v(e,n){var t=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=t){var r,o,l,a,i=[],c=!0,d=!1;try{if(l=(t=t.call(e)).next,0===n){if(Object(t)!==t)return;c=!1}else for(;!(c=(r=l.call(t)).done)&&(i.push(r.value),i.length!==n);c=!0);}catch(e){d=!0,o=e}finally{try{if(!c&&null!=t.return&&(a=t.return(),Object(a)!==a))return}finally{if(d)throw o}}return i}}function b(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function S(e,n){return h(e)||v(e,n)||p(e,n)||b()}var x={defaultProps:{__TYPE:"Tree",id:null,value:null,disabled:!1,selectionMode:null,selectionKeys:null,onSelectionChange:null,contextMenuSelectionKey:null,onContextMenuSelectionChange:null,expandedKeys:null,style:null,className:null,contentStyle:null,contentClassName:null,metaKeySelection:!0,propagateSelectionUp:!0,propagateSelectionDown:!0,loading:!1,loadingIcon:"pi pi-spinner",dragdropScope:null,header:null,footer:null,showHeader:!0,filter:!1,filterValue:null,filterBy:"label",filterMode:"lenient",filterPlaceholder:null,filterLocale:void 0,filterTemplate:null,nodeTemplate:null,togglerTemplate:null,onSelect:null,onUnselect:null,onExpand:null,onCollapse:null,onToggle:null,onDragDrop:null,onContextMenu:null,onFilterValueChange:null,onNodeClick:null,onNodeDoubleClick:null,children:void 0},getProps:function(e){return t.ObjectUtils.getMergedProps(e,x.defaultProps)},getOtherProps:function(e){return t.ObjectUtils.getDiffProps(e,x.defaultProps)}};function E(e,n){var t="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!t){if(Array.isArray(e)||(t=C(e))||n&&e&&"number"==typeof e.length){t&&(e=t);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var l,a=!0,i=!1;return{s:function(){t=t.call(e)},n:function(){var e=t.next();return a=e.done,e},e:function(e){i=!0,l=e},f:function(){try{a||null==t.return||t.return()}finally{if(i)throw l}}}}function C(e,n){if(e){if("string"==typeof e)return D(e,n);var t=Object.prototype.toString.call(e).slice(8,-1);return"Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?D(e,n):void 0}}function D(e,n){(null==n||n>e.length)&&(n=e.length);for(var t=0,r=new Array(n);t<n;t++)r[t]=e[t];return r}function O(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n&&(r=r.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,r)}return t}function k(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?O(Object(t),!0).forEach((function(n){m(e,n,t[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):O(Object(t)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}))}return e}var N=a.memo((function(e){var n,l,i,c=a.useRef(null),d=a.useRef(!1),s=e.isNodeLeaf(e.node),p=!!e.expandedKeys&&void 0!==e.expandedKeys[e.node.key]||e.node.expanded,u=function(n){var t=e.expandedKeys?k({},e.expandedKeys):{};t[e.node.key]=!0,e.onToggle({originalEvent:n,value:t}),y(n,!0)},f=function(n){var t=k({},e.expandedKeys);delete t[e.node.key],e.onToggle({originalEvent:n,value:t}),y(n,!1)},g=function(n){e.disabled||(p?f(n):u(n),n.preventDefault(),n.stopPropagation())},y=function(n,t){t?e.onExpand&&e.onExpand({originalEvent:n,node:e.node}):e.onCollapse&&e.onCollapse({originalEvent:n,node:e.node})},m=function(n){if(!e.disabled){var r=n.target.parentElement;if(t.DomHandler.hasClass(r,"p-treenode"))switch(n.which){case 40:var o=r.children[1];if(o)S(o.children[0]);else{for(var l=r.nextElementSibling;l&&t.DomHandler.hasClass(l,"p-treenode-droppoint");)l=l.nextElementSibling;if(l)S(l);else{var a=h(r);a&&S(a)}}n.preventDefault();break;case 38:if(r.previousElementSibling)S(v(r.previousElementSibling));else{var i=b(r);i&&S(i)}n.preventDefault();break;case 39:p||u(n),n.preventDefault();break;case 37:p&&f(n),n.preventDefault();break;case 13:x(n),n.preventDefault()}}},h=function e(n){var t=b(n);return t?t.nextElementSibling||e(t):null},v=function e(n){var t=n.children[1];return t?e(t.children[t.children.length-1]):n},b=function(e){var n=e.parentElement.parentElement;return t.DomHandler.hasClass(n,"p-treenode")?n:null},S=function(e){e&&e.children[0]&&e.children[0].focus()},x=function(n){e.onClick&&e.onClick({originalEvent:n,node:e.node});var r=n.target.nodeName;if(!e.disabled&&"INPUT"!==r&&"BUTTON"!==r&&"A"!==r&&!t.DomHandler.hasClass(n.target,"p-clickable")){if(e.selectionMode&&!1!==e.node.selectable){var o;if(M()){var l=K();o=e.selectionKeys?k({},e.selectionKeys):{},l?(e.propagateSelectionDown?w(e.node,!1,o):delete o[e.node.key],e.propagateSelectionUp&&e.onPropagateUp&&e.onPropagateUp({originalEvent:n,check:!1,selectionKeys:o}),e.onUnselect&&e.onUnselect({originalEvent:n,node:e.node})):(e.propagateSelectionDown?w(e.node,!0,o):o[e.node.key]={checked:!0},e.propagateSelectionUp&&e.onPropagateUp&&e.onPropagateUp({originalEvent:n,check:!0,selectionKeys:o}),e.onSelect&&e.onSelect({originalEvent:n,node:e.node}))}else{var a=j();if(!d.current&&e.metaKeySelection){var i=n.metaKey||n.ctrlKey;a&&i?(T()?o=null:delete(o=k({},e.selectionKeys))[e.node.key],e.onUnselect&&e.onUnselect({originalEvent:n,node:e.node})):(T()?o=e.node.key:P()&&((o=i&&e.selectionKeys?k({},e.selectionKeys):{})[e.node.key]=!0),e.onSelect&&e.onSelect({originalEvent:n,node:e.node}))}else T()?a?(o=null,e.onUnselect&&e.onUnselect({originalEvent:n,node:e.node})):(o=e.node.key,e.onSelect&&e.onSelect({originalEvent:n,node:e.node})):a?(delete(o=k({},e.selectionKeys))[e.node.key],e.onUnselect&&e.onUnselect({originalEvent:n,node:e.node})):((o=e.selectionKeys?k({},e.selectionKeys):{})[e.node.key]=!0,e.onSelect&&e.onSelect({originalEvent:n,node:e.node}))}e.onSelectionChange&&e.onSelectionChange({originalEvent:n,value:o})}d.current=!1}},C=function(n){e.onDoubleClick&&e.onDoubleClick({originalEvent:n,node:e.node})},D=function(n){e.disabled||(t.DomHandler.clearSelection(),e.onContextMenuSelectionChange&&e.onContextMenuSelectionChange({originalEvent:n,value:e.node.key}),e.onContextMenu&&e.onContextMenu({originalEvent:n,node:e.node}))},O=function(n){var t,r=n.check,o=n.selectionKeys,l=0,a=!1,i=E(e.node.children);try{for(i.s();!(t=i.n()).done;){var c=t.value;o[c.key]&&o[c.key].checked?l++:o[c.key]&&o[c.key].partialChecked&&(a=!0)}}catch(e){i.e(e)}finally{i.f()}r&&l===e.node.children.length?o[e.node.key]={checked:!0,partialChecked:!1}:(r||delete o[e.node.key],a||l>0&&l!==e.node.children.length?o[e.node.key]={checked:!1,partialChecked:!0}:delete o[e.node.key]),e.propagateSelectionUp&&e.onPropagateUp&&e.onPropagateUp(n)},w=function e(n,t,r){if(t?r[n.key]={checked:!0,partialChecked:!1}:delete r[n.key],n.children&&n.children.length)for(var o=0;o<n.children.length;o++)e(n.children[o],t,r)},j=function(){return!(!e.selectionMode||!e.selectionKeys)&&(T()?e.selectionKeys===e.node.key:void 0!==e.selectionKeys[e.node.key])},K=function(){return!!e.selectionKeys&&(e.selectionKeys[e.node.key]&&e.selectionKeys[e.node.key].checked)},T=function(){return e.selectionMode&&"single"===e.selectionMode},P=function(){return e.selectionMode&&"multiple"===e.selectionMode},M=function(){return e.selectionMode&&"checkbox"===e.selectionMode},U=function(){d.current=!0},I=function(n,r){(n.preventDefault(),!1!==e.node.droppable)&&(t.DomHandler.removeClass(n.target,"p-treenode-droppoint-active"),e.onDropPoint&&e.onDropPoint({originalEvent:n,path:e.path,index:-1===r?e.index:e.index+1,position:r}))},L=function(n){n.dataTransfer.types[1]===e.dragdropScope.toLocaleLowerCase()&&(n.dataTransfer.dropEffect="move",n.preventDefault())},A=function(n){n.dataTransfer.types[1]===e.dragdropScope.toLocaleLowerCase()&&t.DomHandler.addClass(n.target,"p-treenode-droppoint-active")},H=function(n){n.dataTransfer.types[1]===e.dragdropScope.toLocaleLowerCase()&&t.DomHandler.removeClass(n.target,"p-treenode-droppoint-active")},R=function(n){e.dragdropScope&&!1!==e.node.droppable&&(t.DomHandler.removeClass(c.current,"p-treenode-dragover"),n.preventDefault(),n.stopPropagation(),e.onDrop&&e.onDrop({originalEvent:n,path:e.path,index:e.index}))},F=function(n){n.dataTransfer.types[1]===e.dragdropScope.toLocaleLowerCase()&&!1!==e.node.droppable&&(n.dataTransfer.dropEffect="move",n.preventDefault(),n.stopPropagation())},J=function(n){n.dataTransfer.types[1]===e.dragdropScope.toLocaleLowerCase()&&!1!==e.node.droppable&&t.DomHandler.addClass(c.current,"p-treenode-dragover")},_=function(n){if(n.dataTransfer.types[1]===e.dragdropScope.toLocaleLowerCase()&&!1!==e.node.droppable){var r=n.currentTarget.getBoundingClientRect();(n.nativeEvent.x>r.left+r.width||n.nativeEvent.x<r.left||n.nativeEvent.y>=Math.floor(r.top+r.height)||n.nativeEvent.y<r.top)&&t.DomHandler.removeClass(c.current,"p-treenode-dragover")}},V=function(n){n.dataTransfer.setData("text",e.dragdropScope),n.dataTransfer.setData(e.dragdropScope,e.dragdropScope),e.onDragStart&&e.onDragStart({originalEvent:n,path:e.path,index:e.index})},X=function(n){e.onDragEnd&&e.onDragEnd({originalEvent:n})},B=function(){var n=a.createElement("span",{className:"p-treenode-label"},e.node.label);e.nodeTemplate&&(n=t.ObjectUtils.getJSXElement(e.nodeTemplate,e.node,{onTogglerClick:g,className:"p-treenode-label",element:n,props:e,expanded:p}));return n},$=function(){if(M()&&!1!==e.node.selectable){var n=K(),r=!!e.selectionKeys&&e.selectionKeys[e.node.key]&&e.selectionKeys[e.node.key].partialChecked,o=t.classNames("p-checkbox-box",{"p-highlight":n,"p-indeterminate":r,"p-disabled":e.disabled}),l=t.classNames("p-checkbox-icon p-c",{"pi pi-check":n,"pi pi-minus":r});return a.createElement("div",{className:"p-checkbox p-component"},a.createElement("div",{className:o,role:"checkbox","aria-checked":n},a.createElement("span",{className:l})))}return null},z=function(){var n=e.node.icon||(p?e.node.expandedIcon:e.node.collapsedIcon);if(n){var r=t.classNames("p-treenode-icon",n);return a.createElement("span",{className:r})}return null},Y=function(){var n=r.ariaLabel(p?"collapseLabel":"expandLabel"),l=t.classNames("p-tree-toggler-icon pi pi-fw",{"pi-chevron-right":!p,"pi-chevron-down":p}),i=a.createElement("button",{type:"button",className:"p-tree-toggler p-link",tabIndex:-1,onClick:g,"aria-label":n},a.createElement("span",{className:l,"aria-hidden":"true"}),a.createElement(o.Ripple,null));e.togglerTemplate&&(i=t.ObjectUtils.getJSXElement(e.togglerTemplate,e.node,{onClick:g,containerClassName:"p-tree-toggler p-link",iconClassName:"p-tree-toggler-icon",element:i,props:e,expanded:p}));return i},q=function(n){return e.dragdropScope?a.createElement("li",{className:"p-treenode-droppoint",onDrop:function(e){return I(e,n)},onDragOver:L,onDragEnter:A,onDragLeave:H}):null},G=function(){var n=j(),r=K(),o=t.classNames("p-treenode-content",e.node.className,{"p-treenode-selectable":e.selectionMode&&!1!==e.node.selectable,"p-highlight":M()?r:n,"p-highlight-contextmenu":e.contextMenuSelectionKey&&e.contextMenuSelectionKey===e.node.key,"p-disabled":e.disabled}),l=Y(),i=$(),d=z(),s=B();return a.createElement("div",{ref:c,className:o,style:e.node.style,onClick:x,onDoubleClick:C,onContextMenu:D,onTouchEnd:U,draggable:e.dragdropScope&&!1!==e.node.draggable&&!e.disabled,onDrop:R,onDragOver:F,onDragEnter:J,onDragLeave:_,onDragStart:V,onDragEnd:X,tabIndex:e.disabled?void 0:0,onKeyDown:m,role:"treeitem","aria-posinset":e.index+1,"aria-expanded":p,"aria-selected":r||n},l,i,d,s)},Q=(n=t.classNames("p-treenode",{"p-treenode-leaf":s},e.node.className),l=G(),i=t.ObjectUtils.isNotEmpty(e.node.children)&&p?a.createElement("ul",{className:"p-treenode-children",role:"group"},e.node.children.map((function(n,t){return a.createElement(N,{key:n.key||n.label,node:n,parent:e.node,index:t,last:t===e.node.children.length-1,path:e.path+"-"+t,disabled:e.disabled,selectionMode:e.selectionMode,selectionKeys:e.selectionKeys,onSelectionChange:e.onSelectionChange,metaKeySelection:e.metaKeySelection,propagateSelectionDown:e.propagateSelectionDown,propagateSelectionUp:e.propagateSelectionUp,contextMenuSelectionKey:e.contextMenuSelectionKey,onContextMenuSelectionChange:e.onContextMenuSelectionChange,onContextMenu:e.onContextMenu,onExpand:e.onExpand,onCollapse:e.onCollapse,onSelect:e.onSelect,onUnselect:e.onUnselect,onClick:e.onClick,onDoubleClick:e.onDoubleClick,expandedKeys:e.expandedKeys,onToggle:e.onToggle,onPropagateUp:O,nodeTemplate:e.nodeTemplate,togglerTemplate:e.togglerTemplate,isNodeLeaf:e.isNodeLeaf,dragdropScope:e.dragdropScope,onDragStart:e.onDragStart,onDragEnd:e.onDragEnd,onDrop:e.onDrop,onDropPoint:e.onDropPoint})}))):null,a.createElement("li",{className:n,style:e.node.style},l,i));if(e.dragdropScope&&!e.disabled){var W=q(-1),Z=e.last?q(1):null;return a.createElement(a.Fragment,null,W,Q,Z)}return Q}));function w(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n&&(r=r.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,r)}return t}function j(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?w(Object(t),!0).forEach((function(n){m(e,n,t[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):w(Object(t)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}))}return e}function K(e,n){var t="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!t){if(Array.isArray(e)||(t=T(e))||n&&e&&"number"==typeof e.length){t&&(e=t);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var l,a=!0,i=!1;return{s:function(){t=t.call(e)},n:function(){var e=t.next();return a=e.done,e},e:function(e){i=!0,l=e},f:function(){try{a||null==t.return||t.return()}finally{if(i)throw l}}}}function T(e,n){if(e){if("string"==typeof e)return P(e,n);var t=Object.prototype.toString.call(e).slice(8,-1);return"Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?P(e,n):void 0}}function P(e,n){(null==n||n>e.length)&&(n=e.length);for(var t=0,r=new Array(n);t<n;t++)r[t]=e[t];return r}N.displayName="UITreeNode";var M=a.memo(a.forwardRef((function(e,n){var r=x.getProps(e),o=S(a.useState(""),2),l=o[0],c=o[1],f=S(a.useState(r.expandedKeys),2),g=f[0],y=f[1],m=a.useRef(null),h=a.useRef([]),v=a.useRef(null),b=a.useRef(!1),E=r.onFilterValueChange?r.filterValue:l,C=r.onToggle?r.expandedKeys:g,D={filter:function(e){return F(e)},reset:function(){return B()}},O=function(e){r.onToggle?r.onToggle(e):y(e.value)},k=function(e){v.current={path:e.path,index:e.index}},w=function(){v.current=null},T=function(e){if(U(v.current.path,e.path)){var n=JSON.parse(JSON.stringify(r.value)),t=v.current.path.split("-");t.pop();var o=A(n,t),l=o?o.children[v.current.index]:n[v.current.index],a=A(n,e.path.split("-"));a.children?a.children.push(l):a.children=[l],o?o.children.splice(v.current.index,1):n.splice(v.current.index,1),r.onDragDrop&&r.onDragDrop({originalEvent:e.originalEvent,value:n,dragNode:l,dropNode:a,dropIndex:e.index})}},P=function(e){if(I(e)){var n=JSON.parse(JSON.stringify(r.value)),t=v.current.path.split("-");t.pop();var o=e.path.split("-");o.pop();var l=A(n,t),a=A(n,o),i=l?l.children[v.current.index]:n[v.current.index],c=L(v.current.path,e.path);if(l?l.children.splice(v.current.index,1):n.splice(v.current.index,1),e.position<0){var d=c?v.current.index>e.index?e.index:e.index-1:e.index;a?a.children.splice(d,0,i):n.splice(d,0,i)}else a?a.children.push(i):n.push(i);r.onDragDrop&&r.onDragDrop({originalEvent:e.originalEvent,value:n,dragNode:i,dropNode:a,dropIndex:e.index})}},M=function(e,n){return!!e&&(e!==n&&0!==n.indexOf(e))},U=function(e,n){return!!M(e,n)&&!(e.indexOf("-")>0&&e.substring(0,e.lastIndexOf("-"))===n)},I=function(e){return!!M(v.current.path,e.path)&&(-1!==e.position||!L(v.current.path,e.path)||v.current.index+1!==e.index)},L=function(e,n){return 1===e.length&&1===n.length||e.substring(0,e.lastIndexOf("-"))===n.substring(0,n.lastIndexOf("-"))},A=function e(n,t){if(0===t.length)return null;var r=parseInt(t[0],10),o=n.children?n.children[r]:n[r];return 1===t.length?o:(t.shift(),e(o,t))},H=function(e){return!1!==e.leaf&&!(e.children&&e.children.length)},R=function(e){13===e.which&&e.preventDefault()},F=function(e){b.current=!0;var n=e.target.value;r.onFilterValueChange?r.onFilterValueChange({originalEvent:e,value:n}):c(n)},J=function(e){c(t.ObjectUtils.isNotEmpty(e)?e:""),_()},_=function(){if(b.current){if(t.ObjectUtils.isEmpty(E))h.current=r.value;else{h.current=[];var e,n=r.filterBy.split(","),o=E.toLocaleLowerCase(r.filterLocale),l="strict"===r.filterMode,a=K(r.value);try{for(a.s();!(e=a.n()).done;){var i=j({},e.value),c={searchFields:n,filterText:o,isStrictMode:l};(l&&(V(i,c)||X(i,c))||!l&&(X(i,c)||V(i,c)))&&h.current.push(i)}}catch(e){a.e(e)}finally{a.f()}}b.current=!1}},V=function(e,n){if(e){var t=!1;if(e.children){var r=d(i=e.children)||s(i)||p(i)||u();e.children=[];var o,l=K(r);try{for(l.s();!(o=l.n()).done;){var a=j({},o.value);X(a,n)&&(t=!0,e.children.push(a))}}catch(e){l.e(e)}finally{l.f()}}if(t)return e.expanded=!0,!0}var i},X=function(e,n){var o,l=n.searchFields,a=n.filterText,i=n.isStrictMode,c=!1,d=K(l);try{for(d.s();!(o=d.n()).done;){String(t.ObjectUtils.resolveFieldData(e,o.value)).toLocaleLowerCase(r.filterLocale).indexOf(a)>-1&&(c=!0)}}catch(e){d.e(e)}finally{d.f()}return(!c||i&&!H(e))&&(c=V(e,{searchFields:l,filterText:a,isStrictMode:i})||c),c},B=function(){c("")};a.useImperativeHandle(n,(function(){return{props:r,filter:J,getElement:function(){return m.current}}}));var $=function(e,n,t){return a.createElement(N,{key:e.key||e.label,node:e,index:n,last:t,path:String(n),disabled:r.disabled,selectionMode:r.selectionMode,selectionKeys:r.selectionKeys,onSelectionChange:r.onSelectionChange,metaKeySelection:r.metaKeySelection,contextMenuSelectionKey:r.contextMenuSelectionKey,onContextMenuSelectionChange:r.onContextMenuSelectionChange,onContextMenu:r.onContextMenu,propagateSelectionDown:r.propagateSelectionDown,propagateSelectionUp:r.propagateSelectionUp,onExpand:r.onExpand,onCollapse:r.onCollapse,onSelect:r.onSelect,onUnselect:r.onUnselect,expandedKeys:C,onToggle:O,nodeTemplate:r.nodeTemplate,togglerTemplate:r.togglerTemplate,isNodeLeaf:H,dragdropScope:r.dragdropScope,onDragStart:k,onDragEnd:w,onDrop:T,onDropPoint:P,onClick:r.onNodeClick,onDoubleClick:r.onNodeDoubleClick})},z=function(){r.filter&&(b.current=!0,_());var e=r.filter&&h.current?h.current:r.value;return e.map((function(n,t){return $(n,t,t===e.length-1)}))},Y=function(){if(r.filter){var e=t.ObjectUtils.isNotEmpty(E)?E:"",n=a.createElement("div",{className:"p-tree-filter-container"},a.createElement("input",{type:"text",value:e,autoComplete:"off",className:"p-tree-filter p-inputtext p-component",placeholder:r.filterPlaceholder,onKeyDown:R,onChange:F,disabled:r.disabled}),a.createElement("span",{className:"p-tree-filter-icon pi pi-search"}));if(r.filterTemplate)n=t.ObjectUtils.getJSXElement(r.filterTemplate,{className:"p-tree-filter-container",element:n,filterOptions:D,filterInputKeyDown:R,filterInputChange:F,filterIconClassName:"p-dropdown-filter-icon pi pi-search",props:r});return a.createElement(a.Fragment,null,n)}return null},q=x.getOtherProps(r),G=t.ObjectUtils.reduceKeys(q,t.DomHandler.ARIA_PROPS),Q=t.classNames("p-tree p-component",r.className,{"p-tree-selectable":r.selectionMode,"p-tree-loading":r.loading,"p-disabled":r.disabled}),W=function(){if(r.loading){var e=t.classNames("p-tree-loading-icon pi-spin",r.loadingIcon);return a.createElement("div",{className:"p-tree-loading-overlay p-component-overlay"},a.createElement("i",{className:e}))}return null}(),Z=function(){if(r.value){var e=z(),n=t.classNames("p-tree-container",r.contentClassName);return a.createElement("ul",i({className:n,role:"tree",style:r.contentStyle},G),e)}return null}(),ee=function(){if(r.showHeader){var e=Y(),n=e;if(r.header)n=t.ObjectUtils.getJSXElement(r.header,{filterContainerClassName:"p-tree-filter-container",filterIconClasssName:"p-tree-filter-icon pi pi-search",filterInput:{className:"p-tree-filter p-inputtext p-component",onKeyDown:R,onChange:F},filterElement:e,element:n,props:r});return a.createElement("div",{className:"p-tree-header"},n)}return null}(),ne=function(){var e=t.ObjectUtils.getJSXElement(r.footer,r);return a.createElement("div",{className:"p-tree-footer"},e)}();return a.createElement("div",i({id:r.id,ref:m,className:Q,style:r.style},q),W,ee,Z,ne)})));return M.displayName="Tree",e.Tree=M,Object.defineProperty(e,"__esModule",{value:!0}),e}({},React,primereact.utils,primereact.api,primereact.ripple);