UNPKG

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) 12.7 kB
this.primereact=this.primereact||{},this.primereact.hooks=function(e,t,n){"use strict";function r(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(n){if("default"!==n){var r=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,r.get?r:{enumerable:!0,get:function(){return e[n]}})}})),t.default=e,Object.freeze(t)}var u=r(t);function c(e){if(Array.isArray(e))return e}function o(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,u,c,o,i=[],a=!0,f=!1;try{if(c=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;a=!1}else for(;!(a=(r=c.call(n)).done)&&(i.push(r.value),i.length!==t);a=!0);}catch(e){f=!0,u=e}finally{try{if(!a&&null!=n.return&&(o=n.return(),Object(o)!==o))return}finally{if(f)throw u}}return i}}function i(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function a(e,t){if(e){if("string"==typeof e)return i(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?i(e,t):void 0}}function f(){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 l(e,t){return c(e)||o(e,t)||a(e,t)||f()}var s=function(e){var t=u.useRef(void 0);return u.useEffect((function(){t.current=e})),t.current},v=function(e){return u.useEffect((function(){return e}),[])},d=function(e){var t=e.target,r=void 0===t?"document":t,c=e.type,o=e.listener,i=e.options,a=e.when,f=void 0===a||a,l=u.useRef(null),d=u.useRef(null),g=s(i),p=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};n.ObjectUtils.isNotEmpty(e.target)&&(m(),(e.when||f)&&(l.current=n.DomHandler.getTargetElement(e.target))),!d.current&&l.current&&(d.current=function(e){return o&&o(e)},l.current.addEventListener(c,d.current,i))},m=function(){d.current&&(l.current.removeEventListener(c,d.current,i),d.current=null)};return u.useEffect((function(){f?l.current=n.DomHandler.getTargetElement(r):(m(),l.current=null)}),[r,f]),u.useEffect((function(){!d.current||d.current===o&&g===i||(m(),f&&p())}),[o,i]),v((function(){m()})),[p,m]},g=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],r=u.useRef(null),c=u.useRef(null),o=u.useCallback((function(){return clearTimeout(r.current)}),[r.current]);return u.useEffect((function(){c.current=e})),u.useEffect((function(){if(n)return r.current=setTimeout((function(){c.current()}),t),o;o()}),[t,n]),v((function(){o()})),[o]},p={ico:"image/x-icon",png:"image/png",svg:"image/svg+xml",gif:"image/gif"};function m(e){return m="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},m(e)}function y(e,t){if("object"!==m(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!==m(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}function h(e){var t=y(e,"string");return"symbol"===m(t)?t:String(t)}function b(e,t,n){return(t=h(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function w(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function O(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?w(Object(n),!0).forEach((function(t){b(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):w(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function E(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function S(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?E(Object(n),!0).forEach((function(t){b(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):E(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var j=function(e){var t=e.target,r=e.listener,c=e.options,o=e.when,i=void 0===o||o,a=u.useRef(null),f=u.useRef(null),l=u.useRef([]),d=s(c),g=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(n.ObjectUtils.isNotEmpty(e.target)&&(p(),(e.when||i)&&(a.current=n.DomHandler.getTargetElement(e.target))),!f.current&&a.current){var t=l.current=n.DomHandler.getScrollableParents(a.current);f.current=function(e){return r&&r(e)},t.forEach((function(e){return e.addEventListener("scroll",f.current,c)}))}},p=function(){f.current&&(l.current.forEach((function(e){return e.removeEventListener("scroll",f.current,c)})),f.current=null)};return u.useEffect((function(){i?a.current=n.DomHandler.getTargetElement(t):(p(),a.current=null)}),[t,i]),u.useEffect((function(){!f.current||f.current===r&&d===c||(p(),i&&g())}),[r,c]),v((function(){p()})),[g,p]},P=function(e){var t=e.when;return d({target:"window",type:"resize",listener:e.listener,when:void 0===t||t})},R=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"local",r="undefined"!=typeof window,c=l(d({target:"window",type:"storage",listener:function(e){var r="local"===n?window.localStorage:window.sessionStorage;e.storageArea===r&&e.key===t&&s(e.newValue||void 0)}}),2),o=c[0],i=c[1],a=l(u.useState(void 0),2),f=a[0],s=a[1];return u.useEffect((function(){r||s(e);try{var u="local"===n?window.localStorage.getItem(t):window.sessionStorage.getItem(t);s(u?JSON.parse(u):e)}catch(t){s(e)}return o(),function(){return i()}}),[]),[f,function(e){try{var u=e instanceof Function?e(f):e;if(s(u),r){var c=JSON.stringify(u);"local"===n?window.localStorage.setItem(t,c):window.sessionStorage.setItem(t,c)}}catch(e){throw new Error("PrimeReact useStorage: Failed to serialize the value at key: ".concat(t))}}]};return e.useClickOutside=function(e,t){var n=function(n){e.current&&!e.current.contains(n.target)&&t(n)},r=l(d({type:"mousedown",listener:n}),2),c=r[0],o=r[1],i=l(d({type:"touchstart",listener:n}),2),a=i[0],f=i[1];return u.useEffect((function(){if(e.current)return c(),a(),function(){o(),f()}})),[e,t]},e.useCounter=function(){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{step:1},t=l(u.useState(arguments.length>0&&void 0!==arguments[0]?arguments[0]:0),2),n=t[0],r=t[1];return{count:n,increment:function(){e.max&&n>=e.max||r(n+e.step)},decrement:function(){if(e.min||0===e.min&&n<=e.min)return null;r(n-e.step)},reset:function(){r(0)}}},e.useDebounce=function(e,t){var n=l(u.useState(e),2),r=n[0],c=n[1],o=l(u.useState(e),2),i=o[0],a=o[1];return g((function(){a(r)}),t,r!==i),[r,i,c]},e.useEventListener=d,e.useFavicon=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"shortcut icon";u.useLayoutEffect((function(){if(e){document.querySelectorAll("link[rel*='icon']").forEach((function(e){document.head.removeChild(e)}));var n=document.createElement("link");n.setAttribute("type",p[e.split(".").pop()]),n.setAttribute("rel",t),n.setAttribute("href",e),document.head.appendChild(n)}}),[e,t])},e.useIntersectionObserver=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=l(u.useState(!1),2),r=n[0],c=n[1];return u.useEffect((function(){if(e.current){var n=new IntersectionObserver((function(e){var t=l(e,1);c(t[0].isIntersecting)}),t);return n.observe(e.current),function(){n.disconnect()}}}),[t,e]),r},e.useInterval=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],r=u.useRef(null),c=u.useRef(null),o=u.useCallback((function(){return clearInterval(r.current)}),[r.current]);return u.useEffect((function(){c.current=e})),u.useEffect((function(){if(n)return r.current=setInterval((function(){c.current()}),t),o;o()}),[t,n]),v((function(){o()})),[o]},e.useLocalStorage=function(e,t){return R(e,t,"local")},e.useMatchMedia=function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],n=l(u.useState(!1),2),r=n[0],c=n[1],o=u.useRef(null),i=function(e){return c(e.matches)},a=function(){return o.current&&o.current.removeEventListener("change",i)&&(o.current=null)};return u.useEffect((function(){return t&&(o.current=window.matchMedia(e),c(o.current.matches),o.current&&o.current.addEventListener("change",i)),a}),[e,t]),r},e.useMountEffect=function(e){return u.useEffect(e,[])},e.useMouse=function(){var e=l(u.useState({x:0,y:0}),2),t=e[0],n=e[1],r=u.useRef(null),c=u.useCallback((function(e){var t,u;if(r.current){var c=e.currentTarget.getBoundingClientRect();t=e.pageX-c.left-(window.pageXOffset||window.scrollX),u=e.pageY-c.top-(window.pageYOffset||window.scrollY)}else t=e.clientX,u=e.clientY;n({x:Math.max(0,Math.round(t)),y:Math.max(0,Math.round(u))})}),[]),o=l(d({target:r,type:"mousemove",listener:c}),2),i=o[0],a=o[1],f=l(d({type:"mousemove",listener:c}),2),s=f[0],v=f[1];return u.useEffect((function(){return i(),r.current||s(),function(){a(),r.current||v()}}),[s,i,v,a]),O(O({ref:r},t),{},{reset:function(){return n({x:0,y:0})}})},e.useMove=function(e){var t=e.mode,n=void 0===t?"both":t,r=e.initialValue,c=void 0===r?{x:0,y:0}:r,o=l(u.useState(c),2),i=o[0],a=o[1],f=l(u.useState(!1),2),s=f[0],v=f[1],g=u.useRef(!1),p=u.useRef(!1),m=u.useRef(null),y=function(e){return B({x:e.clientX,y:e.clientY})},h=function(e){var t=e.clampedX,r=e.clampedY;"vertical"===n?a({y:1-r}):"horizontal"===n?a({x:t}):"both"===n&&a({x:t,y:r})},b=function(){p.current&&g.current&&(p.current=!1,v(!1),_())},w=function(e){e.cancelable&&e.preventDefault(),B({x:e.changedTouches[0].clientX,y:e.changedTouches[0].clientY})},O=l(d({type:"mousemove",listener:y}),2),E=O[0],j=O[1],P=l(d({type:"mouseup",listener:b}),2),R=P[0],D=P[1],x=l(d({type:"touchmove",listener:w}),2),M=x[0],T=x[1],k=l(d({type:"touchend",listener:b}),2),I=k[0],L=k[1],A=l(d({target:m,type:"mousedown",listener:function(e){F(),e.preventDefault(),y(e)}}),2),C=A[0],X=A[1],Y=l(d({target:m,type:"touchstart",listener:function(e){e.cancelable&&e.preventDefault(),F(),w(e)},options:{passive:!1}}),2),H=Y[0],z=Y[1],N=function(e,t,n){return Math.min(Math.max(e,t),n)},U=function(e){var t=e.y;return{clampedX:N(e.x,0,1),clampedY:N(t,0,1)}},_=function(){j(),D(),T(),L()};u.useEffect((function(){g.current=!0}),[]);var F=function(){!p.current&&g.current&&(p.current=!0,v(!0),E(),R(),M(),I())},B=function(e){var t=e.x,n=e.y;if(p.current){var r=m.current.getBoundingClientRect(),u=U({x:(t-r.left)/r.width,y:(n-r.top)/r.height});h({clampedX:u.clampedX,clampedY:u.clampedY})}};return u.useEffect((function(){return m.current&&(C(),H()),function(){m.current&&(X(),z())}}),[C,H,i,X,z]),S(S({ref:m},i),{},{active:s,reset:function(){a(c)}})},e.useOverlayListener=function(e){var t=e.target,r=e.overlay,c=e.listener,o=e.when,i=void 0===o||o,a=u.useRef(null),f=u.useRef(null),s=l(d({type:"click",listener:function(e){c&&c(e,{type:"outside",valid:3!==e.which&&D(e)})}}),2),g=s[0],p=s[1],m=l(P({listener:function(e){c&&c(e,{type:"resize",valid:!n.DomHandler.isTouchDevice()})}}),2),y=m[0],h=m[1],b=l(d({target:"window",type:"orientationchange",listener:function(e){c&&c(e,{type:"orientationchange",valid:!0})}}),2),w=b[0],O=b[1],E=l(j({target:t,listener:function(e){c&&c(e,{type:"scroll",valid:!0})}}),2),S=E[0],R=E[1],D=function(e){return a.current&&!(a.current.isSameNode(e.target)||a.current.contains(e.target)||f.current&&f.current.contains(e.target))},x=function(){p(),h(),O(),R()};return u.useEffect((function(){i?(a.current=n.DomHandler.getTargetElement(t),f.current=n.DomHandler.getTargetElement(r)):(x(),a.current=f.current=null)}),[t,r,i]),u.useEffect((function(){x()}),[i]),v((function(){x()})),[function(){g(),y(),w(),S()},x]},e.useOverlayScrollListener=j,e.usePrevious=s,e.useResizeListener=P,e.useSessionStorage=function(e,t){return R(e,t,"session")},e.useStorage=R,e.useTimeout=g,e.useUnmountEffect=v,e.useUpdateEffect=function(e,t){var n=u.useRef(!1);return u.useEffect((function(){if(n.current)return e&&e();n.current=!0}),t)},Object.defineProperty(e,"__esModule",{value:!0}),e}({},React,primereact.utils);