primereact
Version:
PrimeReact is an open source UI library for React featuring a rich set of 80+ 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) • 21.8 kB
JavaScript
import*as e from"react";import{classNames as n,DomHandler as t,ObjectUtils as r}from"primereact/utils";import{ariaLabel as o}from"primereact/api";import{Ripple as l}from"primereact/ripple";function a(){return a=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},a.apply(this,arguments)}function i(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 c(e){if(Array.isArray(e))return i(e)}function d(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 i(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)?i(e,n):void 0}}function s(){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 u(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function f(e){if(Array.isArray(e))return e}function g(e,n){var t=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=t){var r,o,l=[],a=!0,i=!1;try{for(t=t.call(e);!(a=(r=t.next()).done)&&(l.push(r.value),!n||l.length!==n);a=!0);}catch(e){i=!0,o=e}finally{try{a||null==t.return||t.return()}finally{if(i)throw o}}return l}}function y(){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 h(e,n){return f(e)||g(e,n)||p(e,n)||y()}function v(e,n){var t="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!t){if(Array.isArray(e)||(t=m(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 m(e,n){if(e){if("string"==typeof e)return b(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)?b(e,n):void 0}}function b(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 S(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 x(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?S(Object(t),!0).forEach((function(n){u(e,n,t[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):S(Object(t)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}))}return e}var E=e.memo((function(a){var i,c,d,p=e.useRef(null),s=e.useRef(!1),u=a.isNodeLeaf(a.node),f=!!a.expandedKeys&&void 0!==a.expandedKeys[a.node.key]||a.node.expanded,g=function(e){var n=a.expandedKeys?x({},a.expandedKeys):{};n[a.node.key]=!0,a.onToggle({originalEvent:e,value:n}),m(e,!0)},y=function(e){var n=x({},a.expandedKeys);delete n[a.node.key],a.onToggle({originalEvent:e,value:n}),m(e,!1)},h=function(e){a.disabled||(f?y(e):g(e),e.preventDefault(),e.stopPropagation())},m=function(e,n){n?a.onExpand&&a.onExpand({originalEvent:e,node:a.node}):a.onCollapse&&a.onCollapse({originalEvent:e,node:a.node})},b=function(e){if(!a.disabled){var n=e.target.parentElement;if(t.hasClass(n,"p-treenode"))switch(e.which){case 40:var r=n.children[1];if(r)D(r.children[0]);else{for(var o=n.nextElementSibling;o&&t.hasClass(o,"p-treenode-droppoint");)o=o.nextElementSibling;if(o)D(o);else{var l=S(n);l&&D(l)}}e.preventDefault();break;case 38:if(n.previousElementSibling)D(C(n.previousElementSibling));else{var i=k(n);i&&D(i)}e.preventDefault();break;case 39:f||g(e),e.preventDefault();break;case 37:f&&y(e),e.preventDefault();break;case 13:O(e),e.preventDefault()}}},S=function e(n){var t=k(n);return t?t.nextElementSibling||e(t):null},C=function e(n){var t=n.children[1];return t?e(t.children[t.children.length-1]):n},k=function(e){var n=e.parentElement.parentElement;return t.hasClass(n,"p-treenode")?n:null},D=function(e){e&&e.children[0]&&e.children[0].focus()},O=function(e){a.onClick&&a.onClick({originalEvent:e,node:a.node});var n=e.target.nodeName;if(!a.disabled&&"INPUT"!==n&&"BUTTON"!==n&&"A"!==n&&!t.hasClass(e.target,"p-clickable")){if(a.selectionMode&&!1!==a.node.selectable){var r;if(I()){var o=P();r=a.selectionKeys?x({},a.selectionKeys):{},o?(a.propagateSelectionDown?T(a.node,!1,r):delete r[a.node.key],a.propagateSelectionUp&&a.onPropagateUp&&a.onPropagateUp({originalEvent:e,check:!1,selectionKeys:r}),a.onUnselect&&a.onUnselect({originalEvent:e,node:a.node})):(a.propagateSelectionDown?T(a.node,!0,r):r[a.node.key]={checked:!0},a.propagateSelectionUp&&a.onPropagateUp&&a.onPropagateUp({originalEvent:e,check:!0,selectionKeys:r}),a.onSelect&&a.onSelect({originalEvent:e,node:a.node}))}else{var l=M();if(!s.current&&a.metaKeySelection){var i=e.metaKey||e.ctrlKey;l&&i?(j()?r=null:delete(r=x({},a.selectionKeys))[a.node.key],a.onUnselect&&a.onUnselect({originalEvent:e,node:a.node})):(j()?r=a.node.key:U()&&((r=i&&a.selectionKeys?x({},a.selectionKeys):{})[a.node.key]=!0),a.onSelect&&a.onSelect({originalEvent:e,node:a.node}))}else j()?l?(r=null,a.onUnselect&&a.onUnselect({originalEvent:e,node:a.node})):(r=a.node.key,a.onSelect&&a.onSelect({originalEvent:e,node:a.node})):l?(delete(r=x({},a.selectionKeys))[a.node.key],a.onUnselect&&a.onUnselect({originalEvent:e,node:a.node})):((r=a.selectionKeys?x({},a.selectionKeys):{})[a.node.key]=!0,a.onSelect&&a.onSelect({originalEvent:e,node:a.node}))}a.onSelectionChange&&a.onSelectionChange({originalEvent:e,value:r})}s.current=!1}},w=function(e){a.onDoubleClick&&a.onDoubleClick({originalEvent:e,node:a.node})},N=function(e){a.disabled||(t.clearSelection(),a.onContextMenuSelectionChange&&a.onContextMenuSelectionChange({originalEvent:e,value:a.node.key}),a.onContextMenu&&a.onContextMenu({originalEvent:e,node:a.node}))},K=function(e){var n,t=e.check,r=e.selectionKeys,o=0,l=!1,i=v(a.node.children);try{for(i.s();!(n=i.n()).done;){var c=n.value;r[c.key]&&r[c.key].checked?o++:r[c.key]&&r[c.key].partialChecked&&(l=!0)}}catch(e){i.e(e)}finally{i.f()}t&&o===a.node.children.length?r[a.node.key]={checked:!0,partialChecked:!1}:(t||delete r[a.node.key],l||o>0&&o!==a.node.children.length?r[a.node.key]={checked:!1,partialChecked:!0}:delete r[a.node.key]),a.propagateSelectionUp&&a.onPropagateUp&&a.onPropagateUp(e)},T=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)},M=function(){return!(!a.selectionMode||!a.selectionKeys)&&(j()?a.selectionKeys===a.node.key:void 0!==a.selectionKeys[a.node.key])},P=function(){return!!a.selectionKeys&&(a.selectionKeys[a.node.key]&&a.selectionKeys[a.node.key].checked)},j=function(){return a.selectionMode&&"single"===a.selectionMode},U=function(){return a.selectionMode&&"multiple"===a.selectionMode},I=function(){return a.selectionMode&&"checkbox"===a.selectionMode},L=function(){s.current=!0},A=function(e,n){(e.preventDefault(),!1!==a.node.droppable)&&(t.removeClass(e.target,"p-treenode-droppoint-active"),a.onDropPoint&&a.onDropPoint({originalEvent:e,path:a.path,index:-1===n?a.index:a.index+1,position:n}))},F=function(e){e.dataTransfer.types[1]===a.dragdropScope.toLocaleLowerCase()&&(e.dataTransfer.dropEffect="move",e.preventDefault())},R=function(e){e.dataTransfer.types[1]===a.dragdropScope.toLocaleLowerCase()&&t.addClass(e.target,"p-treenode-droppoint-active")},J=function(e){e.dataTransfer.types[1]===a.dragdropScope.toLocaleLowerCase()&&t.removeClass(e.target,"p-treenode-droppoint-active")},V=function(e){a.dragdropScope&&!1!==a.node.droppable&&(t.removeClass(p.current,"p-treenode-dragover"),e.preventDefault(),e.stopPropagation(),a.onDrop&&a.onDrop({originalEvent:e,path:a.path,index:a.index}))},X=function(e){e.dataTransfer.types[1]===a.dragdropScope.toLocaleLowerCase()&&!1!==a.node.droppable&&(e.dataTransfer.dropEffect="move",e.preventDefault(),e.stopPropagation())},B=function(e){e.dataTransfer.types[1]===a.dragdropScope.toLocaleLowerCase()&&!1!==a.node.droppable&&t.addClass(p.current,"p-treenode-dragover")},H=function(e){if(e.dataTransfer.types[1]===a.dragdropScope.toLocaleLowerCase()&&!1!==a.node.droppable){var n=e.currentTarget.getBoundingClientRect();(e.nativeEvent.x>n.left+n.width||e.nativeEvent.x<n.left||e.nativeEvent.y>=Math.floor(n.top+n.height)||e.nativeEvent.y<n.top)&&t.removeClass(p.current,"p-treenode-dragover")}},$=function(e){e.dataTransfer.setData("text",a.dragdropScope),e.dataTransfer.setData(a.dragdropScope,a.dragdropScope),a.onDragStart&&a.onDragStart({originalEvent:e,path:a.path,index:a.index})},_=function(e){a.onDragEnd&&a.onDragEnd({originalEvent:e})},Y=function(){var n=e.createElement("span",{className:"p-treenode-label"},a.node.label);a.nodeTemplate&&(n=r.getJSXElement(a.nodeTemplate,a.node,{onTogglerClick:h,className:"p-treenode-label",element:n,props:a,expanded:f}));return n},q=function(){if(I()&&!1!==a.node.selectable){var t=P(),r=!!a.selectionKeys&&a.selectionKeys[a.node.key]&&a.selectionKeys[a.node.key].partialChecked,o=n("p-checkbox-box",{"p-highlight":t,"p-indeterminate":r,"p-disabled":a.disabled}),l=n("p-checkbox-icon p-c",{"pi pi-check":t,"pi pi-minus":r});return e.createElement("div",{className:"p-checkbox p-component"},e.createElement("div",{className:o,role:"checkbox","aria-checked":t},e.createElement("span",{className:l})))}return null},z=function(){var t=a.node.icon||(f?a.node.expandedIcon:a.node.collapsedIcon);if(t){var r=n("p-treenode-icon",t);return e.createElement("span",{className:r})}return null},G=function(){var t=o(f?"collapseLabel":"expandLabel"),i=n("p-tree-toggler-icon pi pi-fw",{"pi-chevron-right":!f,"pi-chevron-down":f}),c=e.createElement("button",{type:"button",className:"p-tree-toggler p-link",tabIndex:-1,onClick:h,"aria-label":t},e.createElement("span",{className:i,"aria-hidden":"true"}),e.createElement(l,null));a.togglerTemplate&&(c=r.getJSXElement(a.togglerTemplate,a.node,{onClick:h,containerClassName:"p-tree-toggler p-link",iconClassName:"p-tree-toggler-icon",element:c,props:a,expanded:f}));return c},Q=function(n){return a.dragdropScope?e.createElement("li",{className:"p-treenode-droppoint",onDrop:function(e){return A(e,n)},onDragOver:F,onDragEnter:R,onDragLeave:J}):null},W=function(){var t=M(),r=P(),o=n("p-treenode-content",a.node.className,{"p-treenode-selectable":a.selectionMode&&!1!==a.node.selectable,"p-highlight":I()?r:t,"p-highlight-contextmenu":a.contextMenuSelectionKey&&a.contextMenuSelectionKey===a.node.key,"p-disabled":a.disabled}),l=G(),i=q(),c=z(),d=Y();return e.createElement("div",{ref:p,className:o,style:a.node.style,onClick:O,onDoubleClick:w,onContextMenu:N,onTouchEnd:L,draggable:a.dragdropScope&&!1!==a.node.draggable&&!a.disabled,onDrop:V,onDragOver:X,onDragEnter:B,onDragLeave:H,onDragStart:$,onDragEnd:_,tabIndex:a.disabled?void 0:0,onKeyDown:b,role:"treeitem","aria-posinset":a.index+1,"aria-expanded":f,"aria-selected":r||t},l,i,c,d)},Z=(i=n("p-treenode",{"p-treenode-leaf":u},a.node.className),c=W(),d=r.isNotEmpty(a.node.children)&&f?e.createElement("ul",{className:"p-treenode-children",role:"group"},a.node.children.map((function(n,t){return e.createElement(E,{key:n.key||n.label,node:n,parent:a.node,index:t,last:t===a.node.children.length-1,path:a.path+"-"+t,disabled:a.disabled,selectionMode:a.selectionMode,selectionKeys:a.selectionKeys,onSelectionChange:a.onSelectionChange,metaKeySelection:a.metaKeySelection,propagateSelectionDown:a.propagateSelectionDown,propagateSelectionUp:a.propagateSelectionUp,contextMenuSelectionKey:a.contextMenuSelectionKey,onContextMenuSelectionChange:a.onContextMenuSelectionChange,onContextMenu:a.onContextMenu,onExpand:a.onExpand,onCollapse:a.onCollapse,onSelect:a.onSelect,onUnselect:a.onUnselect,onClick:a.onClick,onDoubleClick:a.onDoubleClick,expandedKeys:a.expandedKeys,onToggle:a.onToggle,onPropagateUp:K,nodeTemplate:a.nodeTemplate,togglerTemplate:a.togglerTemplate,isNodeLeaf:a.isNodeLeaf,dragdropScope:a.dragdropScope,onDragStart:a.onDragStart,onDragEnd:a.onDragEnd,onDrop:a.onDrop,onDropPoint:a.onDropPoint})}))):null,e.createElement("li",{className:i,style:a.node.style},c,d));if(a.dragdropScope&&!a.disabled){var ee=Q(-1),ne=a.last?Q(1):null;return e.createElement(e.Fragment,null,ee,Z,ne)}return Z}));function C(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?C(Object(t),!0).forEach((function(n){u(e,n,t[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):C(Object(t)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}))}return e}function D(e,n){var t="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!t){if(Array.isArray(e)||(t=O(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 O(e,n){if(e){if("string"==typeof e)return w(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)?w(e,n):void 0}}function w(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}E.displayName="UITreeNode";var N=e.memo(e.forwardRef((function(o,l){var i=h(e.useState(""),2),u=i[0],f=i[1],g=h(e.useState(o.expandedKeys),2),y=g[0],v=g[1],m=e.useRef(null),b=e.useRef([]),S=e.useRef(null),x=e.useRef(!1),C=o.onFilterValueChange?o.filterValue:u,O=o.onToggle?o.expandedKeys:y,w={filter:function(e){return V(e)},reset:function(){return _()}},K=function(e){o.onToggle?o.onToggle(e):v(e.value)},T=function(e){S.current={path:e.path,index:e.index}},M=function(){S.current=null},P=function(e){if(I(S.current.path,e.path)){var n=JSON.parse(JSON.stringify(o.value)),t=S.current.path.split("-");t.pop();var r=F(n,t),l=r?r.children[S.current.index]:n[S.current.index],a=F(n,e.path.split("-"));a.children?a.children.push(l):a.children=[l],r?r.children.splice(S.current.index,1):n.splice(S.current.index,1),o.onDragDrop&&o.onDragDrop({originalEvent:e.originalEvent,value:n,dragNode:l,dropNode:a,dropIndex:e.index})}},j=function(e){if(L(e)){var n=JSON.parse(JSON.stringify(o.value)),t=S.current.path.split("-");t.pop();var r=e.path.split("-");r.pop();var l=F(n,t),a=F(n,r),i=l?l.children[S.current.index]:n[S.current.index],c=A(S.current.path,e.path);if(l?l.children.splice(S.current.index,1):n.splice(S.current.index,1),e.position<0){var d=c?S.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);o.onDragDrop&&o.onDragDrop({originalEvent:e.originalEvent,value:n,dragNode:i,dropNode:a,dropIndex:e.index})}},U=function(e,n){return!!e&&(e!==n&&0!==n.indexOf(e))},I=function(e,n){return!!U(e,n)&&!(e.indexOf("-")>0&&e.substring(0,e.lastIndexOf("-"))===n)},L=function(e){return!!U(S.current.path,e.path)&&(-1!==e.position||!A(S.current.path,e.path)||S.current.index+1!==e.index)},A=function(e,n){return 1===e.length&&1===n.length||e.substring(0,e.lastIndexOf("-"))===n.substring(0,n.lastIndexOf("-"))},F=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))},R=function(e){return!1!==e.leaf&&!(e.children&&e.children.length)},J=function(e){13===e.which&&e.preventDefault()},V=function(e){x.current=!0;var n=e.target.value;o.onFilterValueChange?o.onFilterValueChange({originalEvent:e,value:n}):f(n)},X=function(e){f(r.isNotEmpty(e)?e:""),B()},B=function(){if(x.current){if(r.isEmpty(C))b.current=o.value;else{b.current=[];var e,n=o.filterBy.split(","),t=C.toLocaleLowerCase(o.filterLocale),l="strict"===o.filterMode,a=D(o.value);try{for(a.s();!(e=a.n()).done;){var i=k({},e.value),c={searchFields:n,filterText:t,isStrictMode:l};(l&&(H(i,c)||$(i,c))||!l&&($(i,c)||H(i,c)))&&b.current.push(i)}}catch(e){a.e(e)}finally{a.f()}}x.current=!1}},H=function(e,n){if(e){var t=!1;if(e.children){var r=c(i=e.children)||d(i)||p(i)||s();e.children=[];var o,l=D(r);try{for(l.s();!(o=l.n()).done;){var a=k({},o.value);$(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},$=function(e,n){var t,l=n.searchFields,a=n.filterText,i=n.isStrictMode,c=!1,d=D(l);try{for(d.s();!(t=d.n()).done;){String(r.resolveFieldData(e,t.value)).toLocaleLowerCase(o.filterLocale).indexOf(a)>-1&&(c=!0)}}catch(e){d.e(e)}finally{d.f()}return(!c||i&&!R(e))&&(c=H(e,{searchFields:l,filterText:a,isStrictMode:i})||c),c},_=function(){f("")};e.useImperativeHandle(l,(function(){return{props:o,filter:X,getElement:function(){return m.current}}}));var Y=function(n,t,r){return e.createElement(E,{key:n.key||n.label,node:n,index:t,last:r,path:String(t),disabled:o.disabled,selectionMode:o.selectionMode,selectionKeys:o.selectionKeys,onSelectionChange:o.onSelectionChange,metaKeySelection:o.metaKeySelection,contextMenuSelectionKey:o.contextMenuSelectionKey,onContextMenuSelectionChange:o.onContextMenuSelectionChange,onContextMenu:o.onContextMenu,propagateSelectionDown:o.propagateSelectionDown,propagateSelectionUp:o.propagateSelectionUp,onExpand:o.onExpand,onCollapse:o.onCollapse,onSelect:o.onSelect,onUnselect:o.onUnselect,expandedKeys:O,onToggle:K,nodeTemplate:o.nodeTemplate,togglerTemplate:o.togglerTemplate,isNodeLeaf:R,dragdropScope:o.dragdropScope,onDragStart:T,onDragEnd:M,onDrop:P,onDropPoint:j,onClick:o.onNodeClick,onDoubleClick:o.onNodeDoubleClick})},q=function(){o.filter&&(x.current=!0,B());var e=o.filter&&b.current?b.current:o.value;return e.map((function(n,t){return Y(n,t,t===e.length-1)}))},z=function(){if(o.filter){var n=r.isNotEmpty(C)?C:"",t=e.createElement("div",{className:"p-tree-filter-container"},e.createElement("input",{type:"text",value:n,autoComplete:"off",className:"p-tree-filter p-inputtext p-component",placeholder:o.filterPlaceholder,onKeyDown:J,onChange:V,disabled:o.disabled}),e.createElement("span",{className:"p-tree-filter-icon pi pi-search"}));if(o.filterTemplate)t=r.getJSXElement(o.filterTemplate,{className:"p-tree-filter-container",element:t,filterOptions:w,filterInputKeyDown:J,filterInputChange:V,filterIconClassName:"p-dropdown-filter-icon pi pi-search",props:o});return e.createElement(e.Fragment,null,t)}return null},G=r.findDiffKeys(o,N.defaultProps),Q=r.reduceKeys(G,t.ARIA_PROPS),W=n("p-tree p-component",o.className,{"p-tree-selectable":o.selectionMode,"p-tree-loading":o.loading,"p-disabled":o.disabled}),Z=function(){if(o.loading){var t=n("p-tree-loading-icon pi-spin",o.loadingIcon);return e.createElement("div",{className:"p-tree-loading-overlay p-component-overlay"},e.createElement("i",{className:t}))}return null}(),ee=function(){if(o.value){var t=q(),r=n("p-tree-container",o.contentClassName);return e.createElement("ul",a({className:r,role:"tree",style:o.contentStyle},Q),t)}return null}(),ne=function(){if(o.showHeader){var n=z(),t=n;if(o.header)t=r.getJSXElement(o.header,{filterContainerClassName:"p-tree-filter-container",filterIconClasssName:"p-tree-filter-icon pi pi-search",filterInput:{className:"p-tree-filter p-inputtext p-component",onKeyDown:J,onChange:V},filterElement:n,element:t,props:o});return e.createElement("div",{className:"p-tree-header"},t)}return null}(),te=function(){var n=r.getJSXElement(o.footer,o);return e.createElement("div",{className:"p-tree-footer"},n)}();return e.createElement("div",a({id:o.id,ref:m,className:W,style:o.style},G),Z,ne,ee,te)})));N.displayName="Tree",N.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};export{N as Tree};