@lms-elements/hooks
Advanced tools
Comparing version 2.0.16 to 2.0.17
export { useClickOutside } from './useClickOutside'; | ||
export { DragScrollStateEnum, useDragScroll } from './useDragScroll'; | ||
export { useDropdownDots } from './useDropdownDots'; | ||
export { useGetHeightStyle } from './useGetHeightStyle'; | ||
@@ -8,4 +9,5 @@ export { useGetOnScrollHandler } from './useGetOnScrollHandler'; | ||
export { useOuterClickField } from './useOuterClickField'; | ||
export { useRefForDrag } from './useRefForDrag'; | ||
export { useResizeTextarea } from './useResizeTextarea'; | ||
export { useTouched } from './useTouched'; | ||
export { useWindowResize } from './useWindowResize'; |
@@ -1,2 +0,2 @@ | ||
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react");var t,n=setTimeout((function(){return""}),0);exports.DragScrollStateEnum=void 0,(t=exports.DragScrollStateEnum||(exports.DragScrollStateEnum={}))[t.notScrolling=0]="notScrolling",t[t.scrollStart=1]="scrollStart",t[t.scrollEnd=2]="scrollEnd";exports.useClickOutside=function(t,n){e.useEffect((function(){var e=function(e){var r;(null===(r=null==t?void 0:t.current)||void 0===r?void 0:r.contains(e.target))||n(e)};return document.addEventListener("click",e),function(){document.removeEventListener("click",e)}}),[n,t])},exports.useDragScroll=function(t,r,o,u,c){e.useEffect((function(){var e;if(r===exports.DragScrollStateEnum.notScrolling&&0!==t&&u(0),r===exports.DragScrollStateEnum.scrollStart){var l=(null===(e=o.current)||void 0===e?void 0:e.scrollLeft)||0;document.onmousemove=function(e){var r;0===t?u(e.clientX):(null===(r=o.current)||void 0===r||r.scrollTo({left:l+(t-e.clientX)}),clearTimeout(n),n=setTimeout((function(){return u(e.clientX)}),100))},document.onmouseup=function(){c(exports.DragScrollStateEnum.scrollEnd),clearTimeout(n)}}r===exports.DragScrollStateEnum.scrollEnd&&(document.onmousemove=null,document.onmousedown=null,document.onmouseup=null,document.ondragstart=function(){return!1},c(exports.DragScrollStateEnum.notScrolling))}),[o,r,t,u,c])},exports.useGetHeightStyle=function(t){var n=e.useMemo((function(){return t.current}),[t]),r=e.useState(n?n.offsetTop:0),o=r[0],u=r[1],c=e.useCallback((function(){u(n?n.offsetTop:0)}),[n]);return e.useEffect((function(){return window.addEventListener("resize",c),function(){return window.removeEventListener("resize",c)}}),[c]),{height:"calc(100vh - "+o+"px)"}},exports.useGetOnScrollHandler=function(t){var n=e.useState(0),r=n[0],o=n[1],u=e.useState(0),c=u[0],l=u[1];return{scrollTop:r,scrollLeft:c,handleContentScroll:e.useCallback((function(){var e,n,r,u,c=t,i=(null===(e=c.current)||void 0===e?void 0:e.scrollTop)?null===(n=c.current)||void 0===n?void 0:n.scrollTop:0,s=(null===(r=c.current)||void 0===r?void 0:r.scrollLeft)?null===(u=c.current)||void 0===u?void 0:u.scrollLeft:0;l(s),o(i)}),[t])}},exports.useGetScrollPosition=function(t,n,r){var o=void 0===r?{}:r,u=o.scrollStartOffset,c=void 0===u?100:u,l=o.scrollEndOffset,i=void 0===l?0:l,s=e.useState(!1),a=s[0],d=s[1],f=e.useState(!1),v=f[0],S=f[1],m=e.useState(!1),E=m[0],p=m[1],g=e.useCallback((function(){var e=t.current||{},n=e.clientHeight,r=void 0===n?0:n,o=e.scrollHeight,u=void 0===o?0:o,c=e.scrollTop;S(!(u-(void 0===c?0:c)-i<=r&&0!==r))}),[t,i]),x=e.useCallback((function(){var e=t.current||{},n=e.scrollHeight,r=void 0===n?0:n,o=e.scrollTop;p((void 0===o?0:o)-c>=0&&0!==r)}),[t,c]),w=e.useCallback((function(){x(),g(),d(!1)}),[g,x]),h=e.useCallback((function(){x(),g(),d(!0)}),[g,x]);return e.useEffect((function(){x()}),[x]),e.useEffect((function(){g()}),[g]),e.useEffect((function(){if(null==n?void 0:n.current){var e=new ResizeObserver(w);return e.observe(n.current),function(){e.disconnect()}}}),[n,w]),{isScrollEnd:v,isScrollStart:E,wasScrolled:a,onScroll:h}},exports.useOuterClick=function(t,n){var r=e.useCallback((function(e){var n;return t.current&&!(null===(n=t.current)||void 0===n?void 0:n.contains(e.target))}),[t]),o=e.useCallback((function(e){r(e)&&n(!1)}),[r,n]);e.useEffect((function(){return document.addEventListener("click",o,!0),function(){return document.removeEventListener("click",o,!0)}}),[o])},exports.useOuterClickField=function(t,n,r){void 0===r&&(r=!0),e.useEffect((function(){var e=function(e){t.current&&!t.current.contains(e.target)&&r&&n()};return document.addEventListener("mousedown",e),function(){return document.removeEventListener("mousedown",e)}}),[t,n,r])},exports.useResizeTextarea=function(){var t=e.useCallback((function(e){e&&(e.style.height="auto",e.style.height=e.scrollHeight+"px")}),[]);return{handleTextareaInput:e.useCallback((function(e){var n=e.currentTarget;t(n)}),[t]),handleTextareaRender:t,handleTextareaResize:t}},exports.useTouched=function(t){var n=e.useState(!1),r=n[0],o=n[1];return e.useEffect((function(){var e=function(){!r&&t.current&&document.activeElement===t.current&&o(!0)};return window.addEventListener("focus",e,!0),function(){return window.removeEventListener("focus",e,!0)}}),[t,r]),r},exports.useWindowResize=function(){var t=e.useState(window.innerWidth<=1024),n=t[0],r=t[1],o=e.useState(window.innerWidth<=768),u=o[0],c=o[1],l=e.useCallback((function(e){var t=e.currentTarget;r(t.innerWidth<=1024),c(t.innerWidth<=768)}),[]);return e.useEffect((function(){return window.addEventListener("resize",l),function(){return window.removeEventListener("resize",l)}}),[l]),{isTablet:n,isMobile:u}}; | ||
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react");var t,n=setTimeout((function(){return""}),0);exports.DragScrollStateEnum=void 0,(t=exports.DragScrollStateEnum||(exports.DragScrollStateEnum={}))[t.notScrolling=0]="notScrolling",t[t.scrollStart=1]="scrollStart",t[t.scrollEnd=2]="scrollEnd";exports.useClickOutside=function(t,n){e.useEffect((function(){var e=function(e){var r;(null===(r=null==t?void 0:t.current)||void 0===r?void 0:r.contains(e.target))||n(e)};return document.addEventListener("click",e),function(){document.removeEventListener("click",e)}}),[n,t])},exports.useDragScroll=function(t,r,o,u,c){e.useEffect((function(){var e;if(r===exports.DragScrollStateEnum.notScrolling&&0!==t&&u(0),r===exports.DragScrollStateEnum.scrollStart){var l=(null===(e=o.current)||void 0===e?void 0:e.scrollLeft)||0;document.onmousemove=function(e){var r;0===t?u(e.clientX):(null===(r=o.current)||void 0===r||r.scrollTo({left:l+(t-e.clientX)}),clearTimeout(n),n=setTimeout((function(){return u(e.clientX)}),100))},document.onmouseup=function(){c(exports.DragScrollStateEnum.scrollEnd),clearTimeout(n)}}r===exports.DragScrollStateEnum.scrollEnd&&(document.onmousemove=null,document.onmousedown=null,document.onmouseup=null,document.ondragstart=function(){return!1},c(exports.DragScrollStateEnum.notScrolling))}),[o,r,t,u,c])},exports.useDropdownDots=function(){var t=e.useState(!1),n=t[0],r=t[1];return{canDrag:n,handleDropdownDotsMouseEnter:e.useCallback((function(){r(!0)}),[]),handleDropdownDotsMouseLeave:e.useCallback((function(){r(!1)}),[])}},exports.useGetHeightStyle=function(t){var n=e.useMemo((function(){return t.current}),[t]),r=e.useState(n?n.offsetTop:0),o=r[0],u=r[1],c=e.useCallback((function(){u(n?n.offsetTop:0)}),[n]);return e.useEffect((function(){return window.addEventListener("resize",c),function(){return window.removeEventListener("resize",c)}}),[c]),{height:"calc(100vh - "+o+"px)"}},exports.useGetOnScrollHandler=function(t){var n=e.useState(0),r=n[0],o=n[1],u=e.useState(0),c=u[0],l=u[1];return{scrollTop:r,scrollLeft:c,handleContentScroll:e.useCallback((function(){var e,n,r,u,c=t,i=(null===(e=c.current)||void 0===e?void 0:e.scrollTop)?null===(n=c.current)||void 0===n?void 0:n.scrollTop:0,s=(null===(r=c.current)||void 0===r?void 0:r.scrollLeft)?null===(u=c.current)||void 0===u?void 0:u.scrollLeft:0;l(s),o(i)}),[t])}},exports.useGetScrollPosition=function(t,n,r){var o=void 0===r?{}:r,u=o.scrollStartOffset,c=void 0===u?100:u,l=o.scrollEndOffset,i=void 0===l?0:l,s=e.useState(!1),a=s[0],d=s[1],f=e.useState(!1),v=f[0],S=f[1],m=e.useState(!1),E=m[0],p=m[1],g=e.useCallback((function(){var e=t.current||{},n=e.clientHeight,r=void 0===n?0:n,o=e.scrollHeight,u=void 0===o?0:o,c=e.scrollTop;S(!(u-(void 0===c?0:c)-i<=r&&0!==r))}),[t,i]),x=e.useCallback((function(){var e=t.current||{},n=e.scrollHeight,r=void 0===n?0:n,o=e.scrollTop;p((void 0===o?0:o)-c>=0&&0!==r)}),[t,c]),h=e.useCallback((function(){x(),g(),d(!1)}),[g,x]),w=e.useCallback((function(){x(),g(),d(!0)}),[g,x]);return e.useEffect((function(){x()}),[x]),e.useEffect((function(){g()}),[g]),e.useEffect((function(){if(null==n?void 0:n.current){var e=new ResizeObserver(h);return e.observe(n.current),function(){e.disconnect()}}}),[n,h]),{isScrollEnd:v,isScrollStart:E,wasScrolled:a,onScroll:w}},exports.useOuterClick=function(t,n){var r=e.useCallback((function(e){var n;return t.current&&!(null===(n=t.current)||void 0===n?void 0:n.contains(e.target))}),[t]),o=e.useCallback((function(e){r(e)&&n(!1)}),[r,n]);e.useEffect((function(){return document.addEventListener("click",o,!0),function(){return document.removeEventListener("click",o,!0)}}),[o])},exports.useOuterClickField=function(t,n,r){void 0===r&&(r=!0),e.useEffect((function(){var e=function(e){t.current&&!t.current.contains(e.target)&&r&&n()};return document.addEventListener("mousedown",e),function(){return document.removeEventListener("mousedown",e)}}),[t,n,r])},exports.useRefForDrag=function(t){var n=e.useState(!1),r=n[0],o=n[1];return{element:e.useMemo((function(){return r?null:t}),[r,t]),handleContainerFocus:e.useCallback((function(){o(!0)}),[]),handleContainerBlur:e.useCallback((function(){o(!1)}),[])}},exports.useResizeTextarea=function(){var t=e.useCallback((function(e){e&&(e.style.height="auto",e.style.height=e.scrollHeight+"px")}),[]);return{handleTextareaInput:e.useCallback((function(e){var n=e.currentTarget;t(n)}),[t]),handleTextareaRender:t,handleTextareaResize:t}},exports.useTouched=function(t){var n=e.useState(!1),r=n[0],o=n[1];return e.useEffect((function(){var e=function(){!r&&t.current&&document.activeElement===t.current&&o(!0)};return window.addEventListener("focus",e,!0),function(){return window.removeEventListener("focus",e,!0)}}),[t,r]),r},exports.useWindowResize=function(){var t=e.useState(window.innerWidth<=1024),n=t[0],r=t[1],o=e.useState(window.innerWidth<=768),u=o[0],c=o[1],l=e.useCallback((function(e){var t=e.currentTarget;r(t.innerWidth<=1024),c(t.innerWidth<=768)}),[]);return e.useEffect((function(){return window.addEventListener("resize",l),function(){return window.removeEventListener("resize",l)}}),[l]),{isTablet:n,isMobile:u}}; | ||
//# sourceMappingURL=index.js.map |
{ | ||
"name": "@lms-elements/hooks", | ||
"version": "2.0.16", | ||
"version": "2.0.17", | ||
"description": "Custom React hooks", | ||
@@ -41,3 +41,3 @@ "keywords": [ | ||
}, | ||
"gitHead": "aa9de925d00d1b5d50e2f2debd751c25f8c517ad" | ||
"gitHead": "da79e34060dbf17062e381873a577d1f3b89d03e" | ||
} |
Sorry, the diff of this file is not supported yet
28913
18
102