primevue
Version:
[](https://opensource.org/licenses/MIT) [](https://badge.fury.io/js/primevue) [ • 2.98 kB
JavaScript
"use strict";var e=require("primevue/utils");function l(l,t){l.$_pstyleclass_clicklistener=()=>{const n=function(e,l){switch(l.value.selector){case"@next":return e.nextElementSibling;case"@prev":return e.previousElementSibling;case"@parent":return e.parentElement;case"@grandparent":return e.parentElement.parentElement;default:return document.querySelector(l.value.selector)}}(l,t);t.value.toggleClass?e.DomHandler.hasClass(n,t.value.toggleClass)?e.DomHandler.removeClass(n,t.value.toggleClass):e.DomHandler.addClass(n,t.value.toggleClass):null===n.offsetParent?function(l,t,n){n.value.enterActiveClass?l.$_pstyleclass_animating||(l.$_pstyleclass_animating=!0,"slidedown"===n.value.enterActiveClass&&(l.style.height="0px",e.DomHandler.removeClass(l,"hidden"),l.style.maxHeight=l.scrollHeight+"px",e.DomHandler.addClass(l,"hidden"),l.style.height=""),e.DomHandler.addClass(l,n.value.enterActiveClass),n.value.enterClass&&e.DomHandler.removeClass(l,n.value.enterClass),l.$p_styleclass_enterlistener=()=>{e.DomHandler.removeClass(l,n.value.enterActiveClass),n.value.enterToClass&&e.DomHandler.addClass(l,n.value.enterToClass),l.removeEventListener("animationend",l.$p_styleclass_enterlistener),"slidedown"===n.value.enterActiveClass&&(l.style.maxHeight=""),l.$_pstyleclass_animating=!1},l.addEventListener("animationend",l.$p_styleclass_enterlistener)):(n.value.enterClass&&e.DomHandler.removeClass(l,n.value.enterClass),n.value.enterToClass&&e.DomHandler.addClass(l,n.value.enterToClass));n.value.hideOnOutsideClick&&function(e,l,t){e.$p_styleclass_documentlistener||(e.$p_styleclass_documentlistener=n=>{"static"===getComputedStyle(e).getPropertyValue("position")?a(e):l.isSameNode(n.target)||l.contains(n.target)||e.contains(n.target)||s(e,t)},e.ownerDocument.addEventListener("click",e.$p_styleclass_documentlistener))}(l,t,n)}(n,l,t):s(n,t)},l.addEventListener("click",l.$_pstyleclass_clicklistener)}function s(l,s){s.value.leaveActiveClass?l.$_pstyleclass_animating||(l.$_pstyleclass_animating=!0,e.DomHandler.addClass(l,s.value.leaveActiveClass),s.value.leaveClass&&e.DomHandler.removeClass(l,s.value.leaveClass),l.$p_styleclass_leavelistener=()=>{e.DomHandler.removeClass(l,s.value.leaveActiveClass),s.value.leaveToClass&&e.DomHandler.addClass(l,s.value.leaveToClass),l.removeEventListener("animationend",l.$p_styleclass_leavelistener),l.$_pstyleclass_animating=!1},l.addEventListener("animationend",l.$p_styleclass_leavelistener)):(s.value.leaveClass&&e.DomHandler.removeClass(l,s.value.leaveClass),s.value.leaveToClass&&e.DomHandler.addClass(l,s.value.leaveToClass)),s.value.hideOnOutsideClick&&a(l)}function a(e){e.$p_styleclass_documentlistener&&(e.ownerDocument.removeEventListener("click",e.$p_styleclass_documentlistener),e.$p_styleclass_documentlistener=null)}const t={mounted(e,s){l(e,s)},unmounted(e){!function(e){e.$_pstyleclass_clicklistener&&(e.addEventListener("click",e.$_pstyleclass_clicklistener),e.$_pstyleclass_clicklistener=null),a(e)}(e)}};module.exports=t;