@siberiacancode/reactuse 0.3.14 → 0.3.15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (159) hide show
  1. package/dist/cjs/helpers/createContext/createContext.cjs +1 -1
  2. package/dist/cjs/helpers/createContextHook/createContextHook.cjs +1 -1
  3. package/dist/cjs/helpers/createEventEmitter/createEventEmitter.cjs +1 -1
  4. package/dist/cjs/helpers/createSharedHook/createSharedHook.cjs +1 -1
  5. package/dist/cjs/helpers/createSharedHook/createSharedHook.cjs.map +1 -1
  6. package/dist/cjs/helpers/createStore/createStore.cjs +1 -1
  7. package/dist/cjs/hooks/useAsync/useAsync.cjs +1 -1
  8. package/dist/cjs/hooks/useAutoScroll/useAutoScroll.cjs +1 -1
  9. package/dist/cjs/hooks/useBattery/useBattery.cjs +1 -1
  10. package/dist/cjs/hooks/useBluetooth/useBluetooth.cjs +1 -1
  11. package/dist/cjs/hooks/useBoolean/useBoolean.cjs +1 -1
  12. package/dist/cjs/hooks/useBreakpoints/useBreakpoints.cjs +1 -1
  13. package/dist/cjs/hooks/useBroadcastChannel/useBroadcastChannel.cjs +1 -1
  14. package/dist/cjs/hooks/useBrowserLanguage/useBrowserLanguage.cjs +1 -1
  15. package/dist/cjs/hooks/useClickOutside/useClickOutside.cjs +1 -1
  16. package/dist/cjs/hooks/useControllableState/useControllableState.cjs +1 -1
  17. package/dist/cjs/hooks/useCookie/useCookie.cjs +1 -1
  18. package/dist/cjs/hooks/useCookies/useCookies.cjs +1 -1
  19. package/dist/cjs/hooks/useCopy/useCopy.cjs +1 -1
  20. package/dist/cjs/hooks/useDebounceCallback/useDebounceCallback.cjs +1 -1
  21. package/dist/cjs/hooks/useDebounceState/useDebounceState.cjs +1 -1
  22. package/dist/cjs/hooks/useDebounceValue/useDebounceValue.cjs +1 -1
  23. package/dist/cjs/hooks/useDefault/useDefault.cjs +1 -1
  24. package/dist/cjs/hooks/useDeviceMotion/useDeviceMotion.cjs +1 -1
  25. package/dist/cjs/hooks/useDevicePixelRatio/useDevicePixelRatio.cjs +1 -1
  26. package/dist/cjs/hooks/useDisplayMedia/useDisplayMedia.cjs +1 -1
  27. package/dist/cjs/hooks/useDropZone/useDropZone.cjs +1 -1
  28. package/dist/cjs/hooks/useEvent/useEvent.cjs +1 -1
  29. package/dist/cjs/hooks/useEventListener/useEventListener.cjs +1 -1
  30. package/dist/cjs/hooks/useEventSource/useEventSource.cjs +1 -1
  31. package/dist/cjs/hooks/useFavicon/useFavicon.cjs +1 -1
  32. package/dist/cjs/hooks/useField/useField.cjs +1 -1
  33. package/dist/cjs/hooks/useField/useField.cjs.map +1 -1
  34. package/dist/cjs/hooks/useFocusTrap/useFocusTrap.cjs +1 -1
  35. package/dist/cjs/hooks/useFps/useFps.cjs +1 -1
  36. package/dist/cjs/hooks/useFul/useFul.cjs +1 -1
  37. package/dist/cjs/hooks/useFullscreen/useFullscreen.cjs +1 -1
  38. package/dist/cjs/hooks/useGamepad/useGamepad.cjs +1 -1
  39. package/dist/cjs/hooks/useGeolocation/useGeolocation.cjs +1 -1
  40. package/dist/cjs/hooks/useIdle/useIdle.cjs +1 -1
  41. package/dist/cjs/hooks/useInfiniteScroll/useInfiniteScroll.cjs +1 -1
  42. package/dist/cjs/hooks/useIntersectionObserver/useIntersectionObserver.cjs +1 -1
  43. package/dist/cjs/hooks/useInterval/useInterval.cjs +1 -1
  44. package/dist/cjs/hooks/useKeyPress/useKeyPress.cjs +1 -1
  45. package/dist/cjs/hooks/useKeyPressEvent/useKeyPressEvent.cjs +1 -1
  46. package/dist/cjs/hooks/useKeyboard/useKeyboard.cjs +1 -1
  47. package/dist/cjs/hooks/useKeysPressed/useKeysPressed.cjs +1 -1
  48. package/dist/cjs/hooks/useLess/useLess.cjs +1 -1
  49. package/dist/cjs/hooks/useList/useList.cjs +1 -1
  50. package/dist/cjs/hooks/useLockCallback/useLockCallback.cjs +1 -1
  51. package/dist/cjs/hooks/useMap/useMap.cjs +1 -1
  52. package/dist/cjs/hooks/useMeasure/useMeasure.cjs +1 -1
  53. package/dist/cjs/hooks/useMediaControls/useMediaControls.cjs +1 -1
  54. package/dist/cjs/hooks/useMediaQuery/useMediaQuery.cjs +1 -1
  55. package/dist/cjs/hooks/useMergedRef/useMergedRef.cjs +1 -1
  56. package/dist/cjs/hooks/useMouse/useMouse.cjs +1 -1
  57. package/dist/cjs/hooks/useMutation/useMutation.cjs +1 -1
  58. package/dist/cjs/hooks/useMutationObserver/useMutationObserver.cjs +1 -1
  59. package/dist/cjs/hooks/useOffsetPagination/useOffsetPagination.cjs +1 -1
  60. package/dist/cjs/hooks/useOnce/useOnce.cjs +1 -1
  61. package/dist/cjs/hooks/useOtpCredential/useOtpCredential.cjs +1 -1
  62. package/dist/cjs/hooks/useParallax/useParallax.cjs +1 -1
  63. package/dist/cjs/hooks/usePerformanceObserver/usePerformanceObserver.cjs +1 -1
  64. package/dist/cjs/hooks/usePermission/usePermission.cjs +1 -1
  65. package/dist/cjs/hooks/usePostMessage/usePostMessage.cjs +1 -1
  66. package/dist/cjs/hooks/usePreferredLanguages/usePreferredLanguages.cjs +1 -1
  67. package/dist/cjs/hooks/usePrevious/usePrevious.cjs +1 -1
  68. package/dist/cjs/hooks/useProgress/useProgress.cjs +1 -1
  69. package/dist/cjs/hooks/useQuery/useQuery.cjs +1 -1
  70. package/dist/cjs/hooks/useQueue/useQueue.cjs +1 -1
  71. package/dist/cjs/hooks/useRefState/useRefState.cjs +1 -1
  72. package/dist/cjs/hooks/useResizeObserver/useResizeObserver.cjs +1 -1
  73. package/dist/cjs/hooks/useScript/useScript.cjs +1 -1
  74. package/dist/cjs/hooks/useScroll/useScroll.cjs +1 -1
  75. package/dist/cjs/hooks/useScrollIntoView/useScrollIntoView.cjs +1 -1
  76. package/dist/cjs/hooks/useScrollTo/useScrollTo.cjs +1 -1
  77. package/dist/cjs/hooks/useSet/useSet.cjs +1 -1
  78. package/dist/cjs/hooks/useShallowEffect/useShallowEffect.cjs +1 -1
  79. package/dist/cjs/hooks/useSpeechRecognition/useSpeechRecognition.cjs +1 -1
  80. package/dist/cjs/hooks/useStateHistory/useStateHistory.cjs +1 -1
  81. package/dist/cjs/hooks/useStep/useStep.cjs +1 -1
  82. package/dist/cjs/hooks/useSticky/useSticky.cjs +1 -1
  83. package/dist/cjs/hooks/useStorage/useStorage.cjs +1 -1
  84. package/dist/cjs/hooks/useTextDirection/useTextDirection.cjs +1 -1
  85. package/dist/cjs/hooks/useTextSelection/useTextSelection.cjs +1 -1
  86. package/dist/cjs/hooks/useTextareaAutosize/useTextareaAutosize.cjs +1 -1
  87. package/dist/cjs/hooks/useThrottleCallback/useThrottleCallback.cjs +1 -1
  88. package/dist/cjs/hooks/useThrottleEffect/useThrottleEffect.cjs +1 -1
  89. package/dist/cjs/hooks/useThrottleState/useThrottleState.cjs +1 -1
  90. package/dist/cjs/hooks/useThrottleValue/useThrottleValue.cjs +1 -1
  91. package/dist/cjs/hooks/useTime/useTime.cjs +1 -1
  92. package/dist/cjs/hooks/useTimeout/useTimeout.cjs +1 -1
  93. package/dist/cjs/hooks/useToggle/useToggle.cjs +1 -1
  94. package/dist/cjs/hooks/useUrlSearchParam/useUrlSearchParam.cjs +1 -1
  95. package/dist/cjs/hooks/useVibrate/useVibrate.cjs +1 -1
  96. package/dist/cjs/hooks/useVirtualKeyboard/useVirtualKeyboard.cjs +1 -1
  97. package/dist/cjs/hooks/useVisibility/useVisibility.cjs +1 -1
  98. package/dist/cjs/hooks/useWebSocket/useWebSocket.cjs +1 -1
  99. package/dist/cjs/hooks/useWindowFocus/useWindowFocus.cjs +1 -1
  100. package/dist/cjs/hooks/useWindowScroll/useWindowScroll.cjs +1 -1
  101. package/dist/cjs/hooks/useWindowSize/useWindowSize.cjs +1 -1
  102. package/dist/esm/helpers/createSharedHook/createSharedHook.mjs +7 -7
  103. package/dist/esm/helpers/createSharedHook/createSharedHook.mjs.map +1 -1
  104. package/dist/esm/hooks/useField/useField.mjs +1 -1
  105. package/dist/esm/hooks/useField/useField.mjs.map +1 -1
  106. package/dist/types/hooks/useField/useField.d.ts +1 -1
  107. package/package.json +1 -1
  108. package/dist/cjs/_virtual/client.cjs +0 -2
  109. package/dist/cjs/_virtual/client.cjs.map +0 -1
  110. package/dist/cjs/_virtual/client2.cjs +0 -2
  111. package/dist/cjs/_virtual/client2.cjs.map +0 -1
  112. package/dist/cjs/_virtual/index.cjs +0 -2
  113. package/dist/cjs/_virtual/index.cjs.map +0 -1
  114. package/dist/cjs/_virtual/react-dom-client.development.cjs +0 -2
  115. package/dist/cjs/_virtual/react-dom-client.development.cjs.map +0 -1
  116. package/dist/cjs/_virtual/react-dom-client.production.cjs +0 -2
  117. package/dist/cjs/_virtual/react-dom-client.production.cjs.map +0 -1
  118. package/dist/cjs/_virtual/scheduler.development.cjs +0 -2
  119. package/dist/cjs/_virtual/scheduler.development.cjs.map +0 -1
  120. package/dist/cjs/_virtual/scheduler.production.cjs +0 -2
  121. package/dist/cjs/_virtual/scheduler.production.cjs.map +0 -1
  122. package/dist/cjs/node_modules/.pnpm/react-dom@19.2.4_react@19.2.4/node_modules/react-dom/cjs/react-dom-client.development.cjs +0 -215
  123. package/dist/cjs/node_modules/.pnpm/react-dom@19.2.4_react@19.2.4/node_modules/react-dom/cjs/react-dom-client.development.cjs.map +0 -1
  124. package/dist/cjs/node_modules/.pnpm/react-dom@19.2.4_react@19.2.4/node_modules/react-dom/cjs/react-dom-client.production.cjs +0 -10
  125. package/dist/cjs/node_modules/.pnpm/react-dom@19.2.4_react@19.2.4/node_modules/react-dom/cjs/react-dom-client.production.cjs.map +0 -1
  126. package/dist/cjs/node_modules/.pnpm/react-dom@19.2.4_react@19.2.4/node_modules/react-dom/client.cjs +0 -2
  127. package/dist/cjs/node_modules/.pnpm/react-dom@19.2.4_react@19.2.4/node_modules/react-dom/client.cjs.map +0 -1
  128. package/dist/cjs/node_modules/.pnpm/scheduler@0.27.0/node_modules/scheduler/cjs/scheduler.development.cjs +0 -2
  129. package/dist/cjs/node_modules/.pnpm/scheduler@0.27.0/node_modules/scheduler/cjs/scheduler.development.cjs.map +0 -1
  130. package/dist/cjs/node_modules/.pnpm/scheduler@0.27.0/node_modules/scheduler/cjs/scheduler.production.cjs +0 -2
  131. package/dist/cjs/node_modules/.pnpm/scheduler@0.27.0/node_modules/scheduler/cjs/scheduler.production.cjs.map +0 -1
  132. package/dist/cjs/node_modules/.pnpm/scheduler@0.27.0/node_modules/scheduler/index.cjs +0 -2
  133. package/dist/cjs/node_modules/.pnpm/scheduler@0.27.0/node_modules/scheduler/index.cjs.map +0 -1
  134. package/dist/esm/_virtual/client.mjs +0 -6
  135. package/dist/esm/_virtual/client.mjs.map +0 -1
  136. package/dist/esm/_virtual/client2.mjs +0 -5
  137. package/dist/esm/_virtual/client2.mjs.map +0 -1
  138. package/dist/esm/_virtual/index.mjs +0 -5
  139. package/dist/esm/_virtual/index.mjs.map +0 -1
  140. package/dist/esm/_virtual/react-dom-client.development.mjs +0 -5
  141. package/dist/esm/_virtual/react-dom-client.development.mjs.map +0 -1
  142. package/dist/esm/_virtual/react-dom-client.production.mjs +0 -5
  143. package/dist/esm/_virtual/react-dom-client.production.mjs.map +0 -1
  144. package/dist/esm/_virtual/scheduler.development.mjs +0 -5
  145. package/dist/esm/_virtual/scheduler.development.mjs.map +0 -1
  146. package/dist/esm/_virtual/scheduler.production.mjs +0 -5
  147. package/dist/esm/_virtual/scheduler.production.mjs.map +0 -1
  148. package/dist/esm/node_modules/.pnpm/react-dom@19.2.4_react@19.2.4/node_modules/react-dom/cjs/react-dom-client.development.mjs +0 -17019
  149. package/dist/esm/node_modules/.pnpm/react-dom@19.2.4_react@19.2.4/node_modules/react-dom/cjs/react-dom-client.development.mjs.map +0 -1
  150. package/dist/esm/node_modules/.pnpm/react-dom@19.2.4_react@19.2.4/node_modules/react-dom/cjs/react-dom-client.production.mjs +0 -9745
  151. package/dist/esm/node_modules/.pnpm/react-dom@19.2.4_react@19.2.4/node_modules/react-dom/cjs/react-dom-client.production.mjs.map +0 -1
  152. package/dist/esm/node_modules/.pnpm/react-dom@19.2.4_react@19.2.4/node_modules/react-dom/client.mjs +0 -24
  153. package/dist/esm/node_modules/.pnpm/react-dom@19.2.4_react@19.2.4/node_modules/react-dom/client.mjs.map +0 -1
  154. package/dist/esm/node_modules/.pnpm/scheduler@0.27.0/node_modules/scheduler/cjs/scheduler.development.mjs +0 -228
  155. package/dist/esm/node_modules/.pnpm/scheduler@0.27.0/node_modules/scheduler/cjs/scheduler.development.mjs.map +0 -1
  156. package/dist/esm/node_modules/.pnpm/scheduler@0.27.0/node_modules/scheduler/cjs/scheduler.production.mjs +0 -225
  157. package/dist/esm/node_modules/.pnpm/scheduler@0.27.0/node_modules/scheduler/cjs/scheduler.production.mjs.map +0 -1
  158. package/dist/esm/node_modules/.pnpm/scheduler@0.27.0/node_modules/scheduler/index.mjs +0 -11
  159. package/dist/esm/node_modules/.pnpm/scheduler@0.27.0/node_modules/scheduler/index.mjs.map +0 -1
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const l=require("react"),h=require("../useRefState/useRefState.cjs"),q=require("../useRerender/useRerender.cjs"),a=require("../../utils/helpers/isTarget.cjs"),M=((...s)=>{const n=a.isTarget(s[0])?s[0]:void 0,m=n?s[1]:s[0],t=l.useRef({x:0,y:0,elementX:0,elementY:0,elementPositionX:0,elementPositionY:0,clientX:0,clientY:0}),d=l.useRef(m);d.current=m;const X=l.useRef(!1),P=q.useRerender(),u=h.useRefState(),Y=(o,c)=>{t.current=o,d.current?.(o,c),X.current&&P()},f=()=>(X.current=!0,t.current);return l.useEffect(()=>{const o=e=>{const i=n?a.isTarget.getElement(n):u.current,r={x:e.pageX,y:e.pageY,clientX:e.clientX,clientY:e.clientY,elementX:e.pageX,elementY:e.pageY,elementPositionX:0,elementPositionY:0};if(i){const{left:R,top:p}=i.getBoundingClientRect(),g=R+window.scrollX,w=p+window.scrollY,E=e.pageX-g,y=e.pageY-w;r.elementX=E,r.elementY=y,r.elementPositionX=g,r.elementPositionY=w}Y(r,e)},c=e=>{const i={...t.current,x:t.current.x+window.scrollX-t.current.elementPositionX,y:t.current.y+window.scrollY-t.current.elementPositionY,elementPositionX:window.scrollX,elementPositionY:window.scrollY};Y(i,e)};return document.addEventListener("scroll",c,{passive:!0}),document.addEventListener("mousemove",o),()=>{document.removeEventListener("scroll",c),document.removeEventListener("mousemove",o)}},[u.state,n&&a.isTarget.getRawElement(n)]),n?{snapshot:t.current,watch:f}:{ref:u,snapshot:t.current,watch:f}});exports.useMouse=M;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const l=require("react"),h=require("../useRefState/useRefState.cjs"),M=require("../useRerender/useRerender.cjs"),a=require("../../utils/helpers/isTarget.cjs"),S=((...s)=>{const n=a.isTarget(s[0])?s[0]:void 0,m=n?s[1]:s[0],t=l.useRef({x:0,y:0,elementX:0,elementY:0,elementPositionX:0,elementPositionY:0,clientX:0,clientY:0}),d=l.useRef(m);d.current=m;const X=l.useRef(!1),P=M.useRerender(),u=h.useRefState(),Y=(o,c)=>{t.current=o,d.current?.(o,c),X.current&&P()},f=()=>(X.current=!0,t.current);return l.useEffect(()=>{const o=e=>{const i=n?a.isTarget.getElement(n):u.current,r={x:e.pageX,y:e.pageY,clientX:e.clientX,clientY:e.clientY,elementX:e.pageX,elementY:e.pageY,elementPositionX:0,elementPositionY:0};if(i){const{left:R,top:p}=i.getBoundingClientRect(),g=R+window.scrollX,w=p+window.scrollY,E=e.pageX-g,y=e.pageY-w;r.elementX=E,r.elementY=y,r.elementPositionX=g,r.elementPositionY=w}Y(r,e)},c=e=>{const i={...t.current,x:t.current.x+window.scrollX-t.current.elementPositionX,y:t.current.y+window.scrollY-t.current.elementPositionY,elementPositionX:window.scrollX,elementPositionY:window.scrollY};Y(i,e)};return document.addEventListener("scroll",c,{passive:!0}),document.addEventListener("mousemove",o),()=>{document.removeEventListener("scroll",c),document.removeEventListener("mousemove",o)}},[u.state,n&&a.isTarget.getRawElement(n)]),n?{snapshot:t.current,watch:f}:{ref:u,snapshot:t.current,watch:f}});exports.useMouse=S;
2
2
  //# sourceMappingURL=useMouse.cjs.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("react"),T=(E,a)=>{const[m,s]=n.useState(!1),[g,o]=n.useState(!1),[h,f]=n.useState(!1),[I,S]=n.useState(null),[M,D]=n.useState(null),y=(t,r)=>{s(!0);const e=r?.attempt??0;return E(t).then(c=>(r?.onSuccess?.(c),D(c),f(!0),s(!1),S(null),o(!1),c)).catch(c=>{const u=typeof r?.retry=="function"?r?.retry(e,c):r?.retry,l=typeof r?.retryDelay=="function"?r?.retryDelay(e,c):r?.retryDelay;if(typeof u=="boolean"&&u){if(l){setTimeout(()=>y(t,{...r,attempt:e+1}),l);return}return y(t,{...r,attempt:e+1})}if(u&&u>e){if(l){setTimeout(()=>y(t,{...r,attempt:e+1}),l);return}return y(t,{...r,attempt:e+1})}if(D(null),f(!1),s(!1),S(c),o(!0),!r?.onError)throw c;r?.onError?.(c)})};return{data:M,error:I,mutate:(t,r)=>{const e={retry:r?.retry??a?.retry,retryDelay:r?.retryDelay??a?.retryDelay,onSuccess:r?.onSuccess??a?.onSuccess,onError:r?.onError??a?.onError};y(t,e)},mutateAsync:async(t,r)=>{const e={retry:r?.retry??a?.retry,retryDelay:r?.retryDelay??a?.retryDelay,onSuccess:r?.onSuccess??a?.onSuccess,onError:r?.onError??a?.onError};return y(t,e)},isLoading:m,isError:g,isSuccess:h}};exports.useMutation=T;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("react"),T=(E,a)=>{const[m,s]=n.useState(!1),[g,o]=n.useState(!1),[h,f]=n.useState(!1),[I,S]=n.useState(null),[M,D]=n.useState(null),y=(t,r)=>{s(!0);const e=r?.attempt??0;return E(t).then(c=>(r?.onSuccess?.(c),D(c),f(!0),s(!1),S(null),o(!1),c)).catch(c=>{const l=typeof r?.retry=="function"?r?.retry(e,c):r?.retry,u=typeof r?.retryDelay=="function"?r?.retryDelay(e,c):r?.retryDelay;if(typeof l=="boolean"&&l){if(u){setTimeout(()=>y(t,{...r,attempt:e+1}),u);return}return y(t,{...r,attempt:e+1})}if(l&&l>e){if(u){setTimeout(()=>y(t,{...r,attempt:e+1}),u);return}return y(t,{...r,attempt:e+1})}if(D(null),f(!1),s(!1),S(c),o(!0),!r?.onError)throw c;r?.onError?.(c)})};return{data:M,error:I,mutate:(t,r)=>{const e={retry:r?.retry??a?.retry,retryDelay:r?.retryDelay??a?.retryDelay,onSuccess:r?.onSuccess??a?.onSuccess,onError:r?.onError??a?.onError};y(t,e)},mutateAsync:async(t,r)=>{const e={retry:r?.retry??a?.retry,retryDelay:r?.retryDelay??a?.retryDelay,onSuccess:r?.onSuccess??a?.onSuccess,onError:r?.onError??a?.onError};return y(t,e)},isLoading:m,isError:g,isSuccess:h}};exports.useMutation=T;
2
2
  //# sourceMappingURL=useMutation.cjs.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("react"),v=require("../useRefState/useRefState.cjs"),u=require("../../utils/helpers/isTarget.cjs"),O=((...t)=>{const r=u.isTarget(t[0])?t[0]:void 0,e=r?typeof t[1]=="object"?t[1]:{onChange:t[1]}:typeof t[0]=="object"?t[0]:{onChange:t[0]},c=e?.onChange,i=e?.enabled??!0,[a,f]=s.useState(),n=v.useRefState(),l=s.useRef(c);return l.current=c,s.useEffect(()=>{if(!i||!r&&!n.state)return;const b=r?u.isTarget.getElement(r):n.current;if(!b)return;const o=new MutationObserver((g,d)=>{l.current?.(g,d)});return f(o),o.observe(b,e),()=>{o.disconnect()}},[r&&u.isTarget.getRawElement(r),n.state,e?.childList,e?.attributes,e?.characterData,e?.subtree,e?.attributeOldValue,e?.characterDataOldValue,e?.attributeFilter,i]),r?{observer:a}:{ref:n,observer:a}});exports.useMutationObserver=O;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("react"),v=require("../useRefState/useRefState.cjs"),c=require("../../utils/helpers/isTarget.cjs"),O=((...t)=>{const r=c.isTarget(t[0])?t[0]:void 0,e=r?typeof t[1]=="object"?t[1]:{onChange:t[1]}:typeof t[0]=="object"?t[0]:{onChange:t[0]},u=e?.onChange,a=e?.enabled??!0,[i,f]=s.useState(),n=v.useRefState(),l=s.useRef(u);return l.current=u,s.useEffect(()=>{if(!a||!r&&!n.state)return;const b=r?c.isTarget.getElement(r):n.current;if(!b)return;const o=new MutationObserver((g,d)=>{l.current?.(g,d)});return f(o),o.observe(b,e),()=>{o.disconnect()}},[r&&c.isTarget.getRawElement(r),n.state,e?.childList,e?.attributes,e?.characterData,e?.subtree,e?.attributeOldValue,e?.characterDataOldValue,e?.attributeFilter,a]),r?{observer:i}:{ref:n,observer:i}});exports.useMutationObserver=O;
2
2
  //# sourceMappingURL=useMutationObserver.cjs.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("react"),I=({total:g=Number.POSITIVE_INFINITY,initialPage:p=1,initialPageSize:f=10,onChange:e=()=>{}}={})=>{const[a,n]=c.useState(p),[t,P]=c.useState(f),S=c.useRef(e);S.current=e;const u=Math.max(1,Math.ceil(g/t)),i=a===1,o=a===u;return{page:a,setPage:s=>{n(s),e({page:s,pageSize:t})},setPageSize:P,pageSize:t,isFirstPage:i,isLastPage:o,pageCount:u,next:()=>{if(o)return e({page:u,pageSize:t});n(s=>{const r=s+1;return e({page:r,pageSize:t}),r})},prev:()=>{if(i)return e({page:1,pageSize:t});n(s=>{const r=s-1;return e({page:r,pageSize:t}),r})}}};exports.useOffsetPagination=I;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const u=require("react"),I=({total:g=Number.POSITIVE_INFINITY,initialPage:p=1,initialPageSize:f=10,onChange:e=()=>{}}={})=>{const[a,c]=u.useState(p),[t,P]=u.useState(f),S=u.useRef(e);S.current=e;const n=Math.max(1,Math.ceil(g/t)),i=a===1,o=a===n;return{page:a,setPage:s=>{c(s),e({page:s,pageSize:t})},setPageSize:P,pageSize:t,isFirstPage:i,isLastPage:o,pageCount:n,next:()=>{if(o)return e({page:n,pageSize:t});c(s=>{const r=s+1;return e({page:r,pageSize:t}),r})},prev:()=>{if(i)return e({page:1,pageSize:t});c(s=>{const r=s-1;return e({page:r,pageSize:t}),r})}}};exports.useOffsetPagination=I;
2
2
  //# sourceMappingURL=useOffsetPagination.cjs.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react");function c(n){const r=e.useRef(void 0),u=e.useRef(!1),t=e.useRef(!1);u.current&&(t.current=!0),e.useEffect(()=>{if(!u.current)return u.current=!0,r.current=n(),()=>{t.current&&typeof r.current=="function"&&r.current()}},[])}exports.useOnce=c;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react");function c(n){const r=e.useRef(void 0),t=e.useRef(!1),u=e.useRef(!1);t.current&&(u.current=!0),e.useEffect(()=>{if(!t.current)return t.current=!0,r.current=n(),()=>{u.current&&typeof r.current=="function"&&r.current()}},[])}exports.useOnce=c;
2
2
  //# sourceMappingURL=useOnce.cjs.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("react"),s=((...e)=>{const n=typeof navigator<"u"&&"OTPCredential"in navigator&&!!navigator.OTPCredential,o=typeof e[0]=="object"?e[0]:{onSuccess:e[0]},t=c.useRef(new AbortController);return{supported:n,abort:()=>{t.current.abort(),t.current=new AbortController},get:async()=>{if(n){t.current=new AbortController;try{const r=await navigator.credentials.get({otp:{transport:["sms"]},signal:t.current.signal});return o.onSuccess?.(r),r}catch(r){o.onError?.(r)}}}}});exports.useOtpCredential=s;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("react"),a=((...e)=>{const n=typeof navigator<"u"&&"OTPCredential"in navigator&&!!navigator.OTPCredential,o=typeof e[0]=="object"?e[0]:{onSuccess:e[0]},t=c.useRef(new AbortController);return{supported:n,abort:()=>{t.current.abort(),t.current=new AbortController},get:async()=>{if(n){t.current=new AbortController;try{const r=await navigator.credentials.get({otp:{transport:["sms"]},signal:t.current.signal});return o.onSuccess?.(r),r}catch(r){o.onError?.(r)}}}}});exports.useOtpCredential=a;
2
2
  //# sourceMappingURL=useOtpCredential.cjs.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const p=require("react"),D=require("../useDeviceOrientation/useDeviceOrientation.cjs"),x=require("../useOrientation/useOrientation.cjs"),B=require("../useRefState/useRefState.cjs"),l=require("../../utils/helpers/isTarget.cjs"),C=((...o)=>{const n=l.isTarget(o[0])?o[0]:void 0,b=o[1]?o[1]:o[0],i=B.useRefState(),s=x.useOrientation(),e=D.useDeviceOrientation(),{deviceOrientationRollAdjust:f=a=>a,deviceOrientationTiltAdjust:y=a=>a,mouseRollAdjust:O=a=>a,mouseTiltAdjust:T=a=>a}=b??{},[v,h]=p.useState({roll:0,tilt:0,source:"mouse"});return p.useEffect(()=>{if(!n&&!i.state)return;const a=n?l.isTarget.getElement(n):i.current;if(!a)return;const d=m=>{const{left:R,top:w}=a.getBoundingClientRect(),k=R+window.scrollX,q=w+window.scrollY,u=()=>e.supported&&(e.value.alpha||e.value.gamma)?"deviceOrientation":"mouse",S=()=>{if(u()==="deviceOrientation"){let t;switch(s.value.orientationType){case"landscape-primary":t=e.value.gamma/90;break;case"landscape-secondary":t=-e.value.gamma/90;break;case"portrait-primary":t=-e.value.beta/90;break;case"portrait-secondary":t=e.value.beta/90;break;default:t=-e.value.beta/90}return f(t)}else{const t=m.pageY-q,r=a.getBoundingClientRect().height,c=-(t-r/2)/r;return O(c)}},j=()=>{if(u()==="deviceOrientation"){let t;switch(s.value.orientationType){case"landscape-primary":t=e.value.beta/90;break;case"landscape-secondary":t=-e.value.beta/90;break;case"portrait-primary":t=e.value.gamma/90;break;case"portrait-secondary":t=-e.value.gamma/90;break;default:t=e.value.gamma/90}return y(t)}else{const t=m.pageX-k,r=a.getBoundingClientRect().width,c=(t-r/2)/r;return T(c)}},E=u(),P=S(),A=j();h({roll:P,source:E,tilt:A})};return document.addEventListener("mousemove",d),()=>{document.removeEventListener("mousemove",d)}},[n&&l.isTarget.getRawElement(n),i.state,s.value.angle,s.value.orientationType,e.value.gamma,e.value.beta,e.value.alpha,e.value.absolute]),n?{value:v}:{ref:i,value:v}});exports.useParallax=C;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const p=require("react"),D=require("../useDeviceOrientation/useDeviceOrientation.cjs"),x=require("../useOrientation/useOrientation.cjs"),B=require("../useRefState/useRefState.cjs"),l=require("../../utils/helpers/isTarget.cjs"),C=((...o)=>{const n=l.isTarget(o[0])?o[0]:void 0,b=o[1]?o[1]:o[0],i=B.useRefState(),s=x.useOrientation(),e=D.useDeviceOrientation(),{deviceOrientationRollAdjust:f=a=>a,deviceOrientationTiltAdjust:y=a=>a,mouseRollAdjust:O=a=>a,mouseTiltAdjust:T=a=>a}=b??{},[v,h]=p.useState({roll:0,tilt:0,source:"mouse"});return p.useEffect(()=>{if(!n&&!i.state)return;const a=n?l.isTarget.getElement(n):i.current;if(!a)return;const d=m=>{const{left:R,top:w}=a.getBoundingClientRect(),k=R+window.scrollX,S=w+window.scrollY,u=()=>e.supported&&(e.value.alpha||e.value.gamma)?"deviceOrientation":"mouse",j=()=>{if(u()==="deviceOrientation"){let t;switch(s.value.orientationType){case"landscape-primary":t=e.value.gamma/90;break;case"landscape-secondary":t=-e.value.gamma/90;break;case"portrait-primary":t=-e.value.beta/90;break;case"portrait-secondary":t=e.value.beta/90;break;default:t=-e.value.beta/90}return f(t)}else{const t=m.pageY-S,r=a.getBoundingClientRect().height,c=-(t-r/2)/r;return O(c)}},q=()=>{if(u()==="deviceOrientation"){let t;switch(s.value.orientationType){case"landscape-primary":t=e.value.beta/90;break;case"landscape-secondary":t=-e.value.beta/90;break;case"portrait-primary":t=e.value.gamma/90;break;case"portrait-secondary":t=-e.value.gamma/90;break;default:t=e.value.gamma/90}return y(t)}else{const t=m.pageX-k,r=a.getBoundingClientRect().width,c=(t-r/2)/r;return T(c)}},E=u(),P=j(),A=q();h({roll:P,source:E,tilt:A})};return document.addEventListener("mousemove",d),()=>{document.removeEventListener("mousemove",d)}},[n&&l.isTarget.getRawElement(n),i.state,s.value.angle,s.value.orientationType,e.value.gamma,e.value.beta,e.value.alpha,e.value.absolute]),n?{value:v}:{ref:i,value:v}});exports.useParallax=C;
2
2
  //# sourceMappingURL=useParallax.cjs.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("react"),l=(n,s)=>{const e=typeof window<"u"&&!!window.PerformanceObserver,[a,b]=r.useState([]),t=r.useRef(null),u=r.useRef(s);u.current=s;const o=()=>{if(!e)return;const i=new PerformanceObserver((f,d)=>{b(f.getEntries()),u.current?.(f,d)});i.observe(n),t.current=i},c=()=>{e&&(t.current?.disconnect(),t.current=null)};return r.useEffect(()=>{if(e)return n.immediate&&o(),()=>{c()}},[]),{supported:e,entries:a,start:o,stop:c}};exports.usePerformanceObserver=l;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("react"),l=(n,s)=>{const e=typeof window<"u"&&!!window.PerformanceObserver,[a,b]=r.useState([]),t=r.useRef(null),o=r.useRef(s);o.current=s;const u=()=>{if(!e)return;const f=new PerformanceObserver((i,d)=>{b(i.getEntries()),o.current?.(i,d)});f.observe(n),t.current=f},c=()=>{e&&(t.current?.disconnect(),t.current=null)};return r.useEffect(()=>{if(e)return n.immediate&&u(),()=>{c()}},[]),{supported:e,entries:a,start:u,stop:c}};exports.usePerformanceObserver=l;
2
2
  //# sourceMappingURL=usePerformanceObserver.cjs.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("react"),p=require("../useEvent/useEvent.cjs"),d=(t,a)=>{const n=typeof navigator<"u"&&"permissions"in navigator&&!!navigator.permissions,[u,r]=i.useState("prompt"),s=a?.enabled??!0,c={name:t},e=p.useEvent(async()=>{try{const o=await navigator.permissions.query(c);return r(o.state),o.state}catch{return r("prompt"),"prompt"}});return i.useEffect(()=>{if(!(!n||!s))return e(),window.addEventListener("change",e),()=>{window.removeEventListener("change",e)}},[t,s]),{state:u,supported:n,query:e}};exports.usePermission=d;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("react"),p=require("../useEvent/useEvent.cjs"),d=(t,a)=>{const n=typeof navigator<"u"&&"permissions"in navigator&&!!navigator.permissions,[u,s]=i.useState("prompt"),r=a?.enabled??!0,c={name:t},e=p.useEvent(async()=>{try{const o=await navigator.permissions.query(c);return s(o.state),o.state}catch{return s("prompt"),"prompt"}});return i.useEffect(()=>{if(!(!n||!r))return e(),window.addEventListener("change",e),()=>{window.removeEventListener("change",e)}},[t,r]),{state:u,supported:n,query:e}};exports.usePermission=d;
2
2
  //# sourceMappingURL=usePermission.cjs.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("react"),o=(n,u)=>{const i=t.useRef(u);i.current=u;const e=t.useRef(n);return e.current=n,t.useEffect(()=>{const s=r=>{if(Array.isArray(e.current)){if(!e.current.includes(r.origin))return}else if(e.current!=="*"&&r.origin!==e.current)return;i.current(r.data,r)};return window.addEventListener("message",s),()=>window.removeEventListener("message",s)},[]),s=>{if(Array.isArray(e.current))return e.current.forEach(r=>window.postMessage(s,r));window.postMessage(s,e.current)}};exports.usePostMessage=o;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("react"),i=(n,u)=>{const o=t.useRef(u);o.current=u;const e=t.useRef(n);return e.current=n,t.useEffect(()=>{const s=r=>{if(Array.isArray(e.current)){if(!e.current.includes(r.origin))return}else if(e.current!=="*"&&r.origin!==e.current)return;o.current(r.data,r)};return window.addEventListener("message",s),()=>window.removeEventListener("message",s)},[]),s=>{if(Array.isArray(e.current))return e.current.forEach(r=>window.postMessage(s,r));window.postMessage(s,e.current)}};exports.usePostMessage=i;
2
2
  //# sourceMappingURL=usePostMessage.cjs.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("react"),r=()=>window.navigator.languages,t=()=>[],s=e=>(window.addEventListener("languagechange",e),()=>{window.removeEventListener("languagechange",e)}),a=()=>n.useSyncExternalStore(s,r,t);exports.usePreferredLanguages=a;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("react"),r=()=>window.navigator.languages,t=()=>[],a=e=>(window.addEventListener("languagechange",e),()=>{window.removeEventListener("languagechange",e)}),s=()=>n.useSyncExternalStore(a,r,t);exports.usePreferredLanguages=s;
2
2
  //# sourceMappingURL=usePreferredLanguages.cjs.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const u=require("react"),c=(e,s)=>{const r=u.useRef(e),t=u.useRef(void 0);return(s?.equality??Object.is)(e,r.current)||(t.current=r.current,r.current=e),t.current};exports.usePrevious=c;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const u=require("react"),s=(e,c)=>{const r=u.useRef(e),t=u.useRef(void 0);return(c?.equality??Object.is)(e,r.current)||(t.current=r.current,r.current=e),t.current};exports.usePrevious=s;
2
2
  //# sourceMappingURL=usePrevious.cjs.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("react"),v=(t,e,n)=>Math.min(Math.max(t,e),n),A=(t,e)=>t<.25?.12+e*Math.random():t<.5?.08+e*Math.random():t<.8?.03+e*Math.random():t<.95?.01+e/2*Math.random():t<.99?.005*Math.random():0,P=(t=0,e={})=>{const n=Math.max(e.speed??250,16),m=v(e.rate??.02,0,.3),M=e.maximum??.98,h=e.delay??250,[o,a]=r.useState(t),[d,s]=r.useState(!!e.immediately),[f,u]=r.useState(d),l=r.useRef(void 0),y=()=>{a(1),u(!1),setTimeout(()=>s(!1),h)},i=(c=A(o,m))=>a(x=>v(x+c,t,M)),I=(c=t)=>{s(!0),u(!0),a(c)},S=()=>{s(!1),u(!1),a(0)};return r.useEffect(()=>{if(f)return l.current=setInterval(i,n),()=>clearInterval(l.current)},[f,n,m]),{value:o,active:d,start:I,done:y,inc:i,remove:S}};exports.useProgress=P;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("react"),i=(t,e,n)=>Math.min(Math.max(t,e),n),A=(t,e)=>t<.25?.12+e*Math.random():t<.5?.08+e*Math.random():t<.8?.03+e*Math.random():t<.95?.01+e/2*Math.random():t<.99?.005*Math.random():0,P=(t=0,e={})=>{const n=Math.max(e.speed??250,16),m=i(e.rate??.02,0,.3),M=e.maximum??.98,h=e.delay??250,[o,a]=r.useState(t),[d,s]=r.useState(!!e.immediately),[f,u]=r.useState(d),l=r.useRef(void 0),y=()=>{a(1),u(!1),setTimeout(()=>s(!1),h)},v=(c=A(o,m))=>a(x=>i(x+c,t,M)),I=(c=t)=>{s(!0),u(!0),a(c)},S=()=>{s(!1),u(!1),a(0)};return r.useEffect(()=>{if(f)return l.current=setInterval(v,n),()=>clearInterval(l.current)},[f,n,m]),{value:o,active:d,start:I,done:y,inc:v,remove:S}};exports.useProgress=P;
2
2
  //# sourceMappingURL=useProgress.cjs.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("react"),A=require("../useDidUpdate/useDidUpdate.cjs"),F=require("../useMount/useMount.cjs"),b=require("../../utils/helpers/getRetry.cjs"),L=(D,e)=>{const a=e?.enabled??!0,n=r.useRef(e?.retry?b.getRetry(e.retry):0),h=r.useRef(!1),[q,f]=r.useState(!1),[E,l]=r.useState(!1),[C,o]=r.useState(!1),[M,i]=r.useState(!1),[k,g]=r.useState(!!e?.placeholderData),[m,v]=r.useState(void 0),[w,R]=r.useState(e?.placeholderData),y=r.useRef(new AbortController),I=r.useRef(void 0),d=e?.keys??[],S=()=>{y.current.abort(),y.current=new AbortController},u=s=>{S(),f(!0),s==="init"&&(h.current=!0,l(!0)),s==="refetch"&&i(!0),D({signal:y.current.signal,keys:d}).then(t=>{const c=e?.select?e?.select(t):t;e?.onSuccess?.(c),R(c),g(!0),v(void 0),o(!1),f(!1),s==="init"&&l(!1),s==="refetch"&&i(!1)}).catch(t=>{if(n.current>0){n.current-=1;const c=typeof e?.retryDelay=="function"?e?.retryDelay(n.current,t):e?.retryDelay;if(c){setTimeout(()=>u(s),c);return}return u(s)}e?.onError?.(t),R(void 0),g(!1),v(t),o(!0),f(!1),s==="init"&&l(!1),s==="refetch"&&i(!1),n.current=e?.retry?b.getRetry(e.retry):0}).finally(()=>{if(e?.refetchInterval){const t=setInterval(()=>{clearInterval(t),u("refetch")},e?.refetchInterval);I.current=t}})};return F.useMount(()=>{a&&u("init")}),A.useDidUpdate(()=>{a&&u(h.current?"refetch":"init")},[a,...d]),r.useEffect(()=>()=>{clearInterval(I.current)},[a,e?.refetchInterval,e?.retry,...d]),{abort:S,data:w,error:m,refetch:()=>u("refetch"),isFetching:q,isLoading:E,isError:C,isSuccess:k,isRefetching:M}};exports.useQuery=L;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("react"),A=require("../useDidUpdate/useDidUpdate.cjs"),F=require("../useMount/useMount.cjs"),b=require("../../utils/helpers/getRetry.cjs"),L=(D,e)=>{const a=e?.enabled??!0,n=t.useRef(e?.retry?b.getRetry(e.retry):0),h=t.useRef(!1),[q,f]=t.useState(!1),[E,l]=t.useState(!1),[C,o]=t.useState(!1),[M,i]=t.useState(!1),[k,g]=t.useState(!!e?.placeholderData),[m,v]=t.useState(void 0),[w,R]=t.useState(e?.placeholderData),y=t.useRef(new AbortController),I=t.useRef(void 0),d=e?.keys??[],S=()=>{y.current.abort(),y.current=new AbortController},c=s=>{S(),f(!0),s==="init"&&(h.current=!0,l(!0)),s==="refetch"&&i(!0),D({signal:y.current.signal,keys:d}).then(r=>{const u=e?.select?e?.select(r):r;e?.onSuccess?.(u),R(u),g(!0),v(void 0),o(!1),f(!1),s==="init"&&l(!1),s==="refetch"&&i(!1)}).catch(r=>{if(n.current>0){n.current-=1;const u=typeof e?.retryDelay=="function"?e?.retryDelay(n.current,r):e?.retryDelay;if(u){setTimeout(()=>c(s),u);return}return c(s)}e?.onError?.(r),R(void 0),g(!1),v(r),o(!0),f(!1),s==="init"&&l(!1),s==="refetch"&&i(!1),n.current=e?.retry?b.getRetry(e.retry):0}).finally(()=>{if(e?.refetchInterval){const r=setInterval(()=>{clearInterval(r),c("refetch")},e?.refetchInterval);I.current=r}})};return F.useMount(()=>{a&&c("init")}),A.useDidUpdate(()=>{a&&c(h.current?"refetch":"init")},[a,...d]),t.useEffect(()=>()=>{clearInterval(I.current)},[a,e?.refetchInterval,e?.retry,...d]),{abort:S,data:w,error:m,refetch:()=>c("refetch"),isFetching:q,isLoading:E,isError:C,isSuccess:k,isRefetching:M}};exports.useQuery=L;
2
2
  //# sourceMappingURL=useQuery.cjs.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("react"),c=require("react-dom"),l=(s=[])=>{const[e,t]=o.useState(s);return{add:r=>t(u=>[...u,r]),remove:()=>{let r;return c.flushSync(()=>{t(([u,...n])=>(r=u,n))}),r},clear:()=>t([]),first:e[0],last:e[e.length-1],size:e.length,queue:e}};exports.useQueue=l;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("react"),c=require("react-dom"),a=(s=[])=>{const[e,r]=o.useState(s);return{add:t=>r(u=>[...u,t]),remove:()=>{let t;return c.flushSync(()=>{r(([u,...n])=>(t=u,n))}),t},clear:()=>r([]),first:e[0],last:e[e.length-1],size:e.length,queue:e}};exports.useQueue=a;
2
2
  //# sourceMappingURL=useQueue.cjs.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("react"),c=(n,u)=>{let e=n;function t(r){e!==r&&(e=r,u(e))}return Object.defineProperty(t,"current",{get(){return e},set(r){e!==r&&(e=r,u(e))},configurable:!0,enumerable:!0}),t},f=n=>{const[u,e]=s.useState(n),[t]=s.useState(()=>c(n,e));return t.state=u,t};exports.createRefState=c;exports.useRefState=f;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("react"),s=(n,u)=>{let e=n;function t(r){e!==r&&(e=r,u(e))}return Object.defineProperty(t,"current",{get(){return e},set(r){e!==r&&(e=r,u(e))},configurable:!0,enumerable:!0}),t},f=n=>{const[u,e]=c.useState(n),[t]=c.useState(()=>s(n,e));return t.state=u,t};exports.createRefState=s;exports.useRefState=f;
2
2
  //# sourceMappingURL=useRefState.cjs.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("react"),S=require("../useRefState/useRefState.cjs"),c=require("../../utils/helpers/isTarget.cjs"),y=((...e)=>{const t=c.isTarget(e[0])?e[0]:void 0,n=t?typeof e[1]=="object"?e[1]:{onChange:e[1]}:typeof e[0]=="object"?e[0]:{onChange:e[0]},u=n?.onChange,i=n?.enabled??!0,[b,v]=s.useState(),[f,R]=s.useState(),r=S.useRefState(),l=s.useRef(u);return l.current=u,s.useEffect(()=>{if(!i||!t&&!r.state)return;const g=t?c.isTarget.getElement(t):r.current;if(!g)return;const o=new ResizeObserver(([a],d)=>{v(a),l.current?.(a,d)});return R(o),o.observe(g,n),()=>{o.disconnect()}},[t&&c.isTarget.getRawElement(t),r.state,n?.box,i]),t?{entry:b,observer:f}:{ref:r,entry:b,observer:f}});exports.useResizeObserver=y;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("react"),S=require("../useRefState/useRefState.cjs"),c=require("../../utils/helpers/isTarget.cjs"),y=((...e)=>{const t=c.isTarget(e[0])?e[0]:void 0,n=t?typeof e[1]=="object"?e[1]:{onChange:e[1]}:typeof e[0]=="object"?e[0]:{onChange:e[0]},u=n?.onChange,i=n?.enabled??!0,[b,v]=s.useState(),[f,R]=s.useState(),r=S.useRefState(),l=s.useRef(u);return l.current=u,s.useEffect(()=>{if(!i||!t&&!r.state)return;const a=t?c.isTarget.getElement(t):r.current;if(!a)return;const o=new ResizeObserver(([g],d)=>{v(g),l.current?.(g,d)});return R(o),o.observe(a,n),()=>{o.disconnect()}},[t&&c.isTarget.getRawElement(t),r.state,n?.box,i]),t?{entry:b,observer:f}:{ref:r,entry:b,observer:f}});exports.useResizeObserver=y;
2
2
  //# sourceMappingURL=useResizeObserver.cjs.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const d=require("react"),e="script-status",A=(s,u={})=>{const[S,o]=d.useState(()=>{const r=document.querySelector(`script[src="${s}"]`),n=r?.getAttribute(e);return n||(r?"unknown":"loading")}),{removeOnUnmount:c=!0,async:p=!0}=u;return d.useEffect(()=>{const r=document.querySelector(`script[src="${s}"]`),n=r?.getAttribute(e);if(n)return o(n);if(r)return o("unknown");const t=document.createElement("script");t.src=s,t.async=p;for(const[T,l]of Object.entries(u))t.setAttribute(T,String(l));t.setAttribute(e,"loading"),document.body.appendChild(t);const i=()=>{t.setAttribute(e,"ready"),o("ready")},a=()=>{t.setAttribute(e,"error"),o("error")};return t.addEventListener("load",i),t.addEventListener("error",a),()=>{c&&t.remove(),t.removeEventListener("load",i),t.removeEventListener("error",a)}},[s,c]),S};exports.SCRIPT_STATUS_ATTRIBUTE_NAME=e;exports.useScript=A;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const d=require("react"),e="script-status",A=(s,c={})=>{const[S,o]=d.useState(()=>{const r=document.querySelector(`script[src="${s}"]`),n=r?.getAttribute(e);return n||(r?"unknown":"loading")}),{removeOnUnmount:u=!0,async:p=!0}=c;return d.useEffect(()=>{const r=document.querySelector(`script[src="${s}"]`),n=r?.getAttribute(e);if(n)return o(n);if(r)return o("unknown");const t=document.createElement("script");t.src=s,t.async=p;for(const[T,l]of Object.entries(c))t.setAttribute(T,String(l));t.setAttribute(e,"loading"),document.body.appendChild(t);const i=()=>{t.setAttribute(e,"ready"),o("ready")},a=()=>{t.setAttribute(e,"error"),o("error")};return t.addEventListener("load",i),t.addEventListener("error",a),()=>{u&&t.remove(),t.removeEventListener("load",i),t.removeEventListener("error",a)}},[s,u]),S};exports.SCRIPT_STATUS_ATTRIBUTE_NAME=e;exports.useScript=A;
2
2
  //# sourceMappingURL=useScript.cjs.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const d=require("react"),A=require("../useRefState/useRefState.cjs"),M=require("../useRerender/useRerender.cjs"),h=require("../../utils/helpers/isTarget.cjs"),I=1,P=((...e)=>{const c=h.isTarget(e[0])?e[0]:void 0,S=c?typeof e[1]=="function"?{...e[2],onScroll:e[1]}:e[1]:typeof e[0]=="object"?e[0]:typeof e[0]=="function"?{...e[1],onScroll:e[0]}:void 0,a=A.useRefState(),g=d.useRef(S),u=d.useRef(null),o=d.useRef({x:0,y:0,directions:{left:!1,right:!1,top:!1,bottom:!1},arrived:{left:!0,right:!1,top:!0,bottom:!1}}),p=d.useRef(!1),O=M.useRerender();g.current=S;const v=()=>(p.current=!0,o.current),_=t=>{o.current=t,p.current&&O()};d.useEffect(()=>{if(!c&&!a.state)return;const t=(c?h.isTarget.getElement(c):a.current)??window;u.current=t;const l=r=>{g.current?.onStop?.(r)},i=r=>{const n=r.target===document?r.target.documentElement:r.target,{display:E,flexDirection:T,direction:j}=n.style,w=j==="rtl"?-1:1,f=n.scrollLeft;let s=n.scrollTop;n instanceof Document&&!s&&(s=window.document.body.scrollTop);const R=g.current?.offset,m=f*w<=(R?.left??0),x=f*w+n.clientWidth>=n.scrollWidth-(R?.right??0)-I,L=s<=(R?.top??0),q=s+n.clientHeight>=n.scrollHeight-(R?.bottom??0)-I,V=E==="flex"&&T==="column-reverse",D=E==="flex"&&T==="row-reverse",H={x:f,y:s,directions:{left:f<o.current.x,right:f>o.current.x,top:s<o.current.y,bottom:s>o.current.y},arrived:{left:D?x:m,right:D?m:x,top:V?q:L,bottom:V?L:q}};_(H),g.current?.onScroll?.(H,r)};return t.addEventListener("scroll",i),t.addEventListener("scrollend",l),()=>{t.removeEventListener("scroll",i),t.removeEventListener("scrollend",l)}},[c&&h.isTarget.getRawElement(c),a.state]);const b=t=>{if(!u.current)return;const{behavior:l,block:i,inline:r}=t??{};u.current.scrollIntoView({behavior:l,block:i,inline:r})},y=t=>{if(!u.current)return;const{x:l,y:i,behavior:r}=t??{};u.current.scrollTo({left:l,top:i,behavior:r})};return c?{scrollIntoView:b,scrollTo:y,snapshot:o.current,watch:v}:{ref:a,snapshot:o.current,watch:v,scrollIntoView:b,scrollTo:y}});exports.useScroll=P;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const d=require("react"),A=require("../useRefState/useRefState.cjs"),M=require("../useRerender/useRerender.cjs"),h=require("../../utils/helpers/isTarget.cjs"),I=1,P=((...e)=>{const c=h.isTarget(e[0])?e[0]:void 0,S=c?typeof e[1]=="function"?{...e[2],onScroll:e[1]}:e[1]:typeof e[0]=="object"?e[0]:typeof e[0]=="function"?{...e[1],onScroll:e[0]}:void 0,a=A.useRefState(),g=d.useRef(S),u=d.useRef(null),o=d.useRef({x:0,y:0,directions:{left:!1,right:!1,top:!1,bottom:!1},arrived:{left:!0,right:!1,top:!0,bottom:!1}}),p=d.useRef(!1),O=M.useRerender();g.current=S;const v=()=>(p.current=!0,o.current),_=t=>{o.current=t,p.current&&O()};d.useEffect(()=>{if(!c&&!a.state)return;const t=(c?h.isTarget.getElement(c):a.current)??window;u.current=t;const l=r=>{g.current?.onStop?.(r)},i=r=>{const n=r.target===document?r.target.documentElement:r.target,{display:E,flexDirection:T,direction:j}=n.style,w=j==="rtl"?-1:1,f=n.scrollLeft;let s=n.scrollTop;n instanceof Document&&!s&&(s=window.document.body.scrollTop);const R=g.current?.offset,m=f*w<=(R?.left??0),x=f*w+n.clientWidth>=n.scrollWidth-(R?.right??0)-I,L=s<=(R?.top??0),V=s+n.clientHeight>=n.scrollHeight-(R?.bottom??0)-I,q=E==="flex"&&T==="column-reverse",D=E==="flex"&&T==="row-reverse",H={x:f,y:s,directions:{left:f<o.current.x,right:f>o.current.x,top:s<o.current.y,bottom:s>o.current.y},arrived:{left:D?x:m,right:D?m:x,top:q?V:L,bottom:q?L:V}};_(H),g.current?.onScroll?.(H,r)};return t.addEventListener("scroll",i),t.addEventListener("scrollend",l),()=>{t.removeEventListener("scroll",i),t.removeEventListener("scrollend",l)}},[c&&h.isTarget.getRawElement(c),a.state]);const b=t=>{if(!u.current)return;const{behavior:l,block:i,inline:r}=t??{};u.current.scrollIntoView({behavior:l,block:i,inline:r})},y=t=>{if(!u.current)return;const{x:l,y:i,behavior:r}=t??{};u.current.scrollTo({left:l,top:i,behavior:r})};return c?{scrollIntoView:b,scrollTo:y,snapshot:o.current,watch:v}:{ref:a,snapshot:o.current,watch:v,scrollIntoView:b,scrollTo:y}});exports.useScroll=P;
2
2
  //# sourceMappingURL=useScroll.cjs.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const m=require("react"),w=require("../useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.cjs"),v=require("../useRefState/useRefState.cjs"),i=require("../../utils/helpers/isTarget.cjs"),I=((...t)=>{const e=i.isTarget(t[0])?t[0]:void 0,c=e?t[1]:t[0],r=v.useRefState(),{behavior:u="smooth",block:l="start",inline:a="nearest",immediately:f=!0}=c??{},o=m.useRef(null);w.useIsomorphicLayoutEffect(()=>{if(!f||!e&&!r.state)return;const n=(e?i.isTarget.getElement(e):r.current)??window;o.current=n,n.scrollIntoView({behavior:u,block:l,inline:a})},[e&&i.isTarget.getRawElement(e),r.state]);const s=n=>{if(!o.current)return;const{behavior:g,block:b,inline:h}=n??{};o.current.scrollIntoView({behavior:g,block:b,inline:h})};return e?{trigger:s}:{ref:r,trigger:s}});exports.useScrollIntoView=I;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const m=require("react"),w=require("../useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.cjs"),v=require("../useRefState/useRefState.cjs"),i=require("../../utils/helpers/isTarget.cjs"),I=((...t)=>{const e=i.isTarget(t[0])?t[0]:void 0,c=e?t[1]:t[0],r=v.useRefState(),{behavior:l="smooth",block:u="start",inline:a="nearest",immediately:f=!0}=c??{},o=m.useRef(null);w.useIsomorphicLayoutEffect(()=>{if(!f||!e&&!r.state)return;const n=(e?i.isTarget.getElement(e):r.current)??window;o.current=n,n.scrollIntoView({behavior:l,block:u,inline:a})},[e&&i.isTarget.getRawElement(e),r.state]);const s=n=>{if(!o.current)return;const{behavior:g,block:b,inline:h}=n??{};o.current.scrollIntoView({behavior:g,block:b,inline:h})};return e?{trigger:s}:{ref:r,trigger:s}});exports.useScrollIntoView=I;
2
2
  //# sourceMappingURL=useScrollIntoView.cjs.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const b=require("react"),h=require("../useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.cjs"),m=require("../useRefState/useRefState.cjs"),s=require("../../utils/helpers/isTarget.cjs"),v=((...t)=>{const e=s.isTarget(t[0])?t[0]:void 0,u=e?t[1]:t[0],{x:c,y:l,behavior:f="auto",immediately:a=!0}=u??{},r=m.useRefState(),n=b.useRef(null);h.useIsomorphicLayoutEffect(()=>{if(!a||!e&&!r.state)return;const o=(e?s.isTarget.getElement(e):r.current)??window;n.current=o,o.scrollTo({top:l,left:c,behavior:f})},[e&&s.isTarget.getRawElement(e),r.state]);const i=o=>{if(!n.current)return;const{x:g,y:T,behavior:y}=o??{};n.current.scrollTo({left:g,top:T,behavior:y})};return e?{trigger:i}:{ref:r,trigger:i}});exports.useScrollTo=v;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const b=require("react"),h=require("../useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.cjs"),m=require("../useRefState/useRefState.cjs"),s=require("../../utils/helpers/isTarget.cjs"),v=((...t)=>{const e=s.isTarget(t[0])?t[0]:void 0,i=e?t[1]:t[0],{x:u,y:l,behavior:f="auto",immediately:a=!0}=i??{},r=m.useRefState(),n=b.useRef(null);h.useIsomorphicLayoutEffect(()=>{if(!a||!e&&!r.state)return;const o=(e?s.isTarget.getElement(e):r.current)??window;n.current=o,o.scrollTo({top:l,left:u,behavior:f})},[e&&s.isTarget.getRawElement(e),r.state]);const c=o=>{if(!n.current)return;const{x:g,y:T,behavior:y}=o??{};n.current.scrollTo({left:g,top:T,behavior:y})};return e?{trigger:c}:{ref:r,trigger:c}});exports.useScrollTo=v;
2
2
  //# sourceMappingURL=useScrollTo.cjs.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const h=require("react"),l=o=>{const[s,t]=h.useState(new Set(o)),r=e=>t(n=>new Set(n).add(e)),i=e=>t(n=>{if(!n.has(e))return n;const c=new Set(n);return c.delete(e),c}),d=()=>t(new Set),u=()=>t(new Set(o)),f=e=>t(n=>{if(!n.has(e))return new Set(n).add(e);const c=new Set(n);return c.delete(e),c}),S=e=>t(s.union(e)),w=e=>t(s.difference(e)),a=e=>t(s.symmetricDifference(e)),m=e=>t(s.intersection(e)),g=e=>s.has(e);return{value:s,size:s.size,has:g,add:r,remove:i,clear:d,reset:u,toggle:f,union:S,difference:w,symmetricDifference:a,intersection:m}};exports.useSet=l;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const h=require("react"),l=o=>{const[s,t]=h.useState(new Set(o)),r=e=>t(n=>new Set(n).add(e)),i=e=>t(n=>{if(!n.has(e))return n;const c=new Set(n);return c.delete(e),c}),d=()=>t(new Set),f=()=>t(new Set(o)),u=e=>t(n=>{if(!n.has(e))return new Set(n).add(e);const c=new Set(n);return c.delete(e),c}),S=e=>t(s.union(e)),a=e=>t(s.difference(e)),w=e=>t(s.symmetricDifference(e)),m=e=>t(s.intersection(e)),g=e=>s.has(e);return{value:s,size:s.size,has:g,add:r,remove:i,clear:d,reset:f,toggle:u,union:S,difference:a,symmetricDifference:w,intersection:m}};exports.useSet=l;
2
2
  //# sourceMappingURL=useSet.cjs.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("react"),u=(e,r)=>{if(e===r)return!0;if(e==null||r==null)return e===r;if(typeof e!=typeof r)return!1;if(typeof e!="object")return e===r;if(Array.isArray(e)!==Array.isArray(r))return!1;if(Array.isArray(e))return e.length===r.length&&e.every((n,l)=>u(n,r[l]));const t=Object.keys(e),f=Object.keys(r);if(t.length!==f.length)return!1;for(const n of t)if(!f.includes(n)||!u(e[n],r[n]))return!1;return!0},c=(e,r)=>{const t=s.useRef(r);(!t.current||!u(r,t.current))&&(t.current=r),s.useEffect(e,t.current)};exports.deepEqual=u;exports.useShallowEffect=c;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("react"),f=(e,r)=>{if(e===r)return!0;if(e==null||r==null)return e===r;if(typeof e!=typeof r)return!1;if(typeof e!="object")return e===r;if(Array.isArray(e)!==Array.isArray(r))return!1;if(Array.isArray(e))return e.length===r.length&&e.every((n,l)=>f(n,r[l]));const t=Object.keys(e),u=Object.keys(r);if(t.length!==u.length)return!1;for(const n of t)if(!u.includes(n)||!f(e[n],r[n]))return!1;return!0},c=(e,r)=>{const t=s.useRef(r);(!t.current||!f(r,t.current))&&(t.current=r),s.useEffect(e,t.current)};exports.deepEqual=f;exports.useShallowEffect=c;
2
2
  //# sourceMappingURL=useShallowEffect.cjs.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("react"),i=()=>window?.SpeechRecognition??window?.webkitSpeechRecognition,k=(S={})=>{const c=typeof window<"u"&&!!i(),{continuous:d=!1,interimResults:R=!1,language:a="en-US",grammars:u,maxAlternatives:m=1,onStart:h,onEnd:w,onError:E,onResult:b}=S,[l,s]=n.useState(!1),[x,y]=n.useState(""),[q,A]=n.useState(!1),[T,g]=n.useState(null),[o]=n.useState(()=>{if(!c)return;const r=i(),e=new r;return e.continuous=d,u&&(e.grammars=u),e.interimResults=R,e.lang=a,e.maxAlternatives=m,e.onstart=()=>{s(!0),A(!1),h?.()},e.onerror=t=>{g(t),s(!1),E?.(t)},e.onresult=t=>{const $=t.results[t.resultIndex],{transcript:j}=$[0];s(!1),y(j),g(null),b?.(t)},e.onend=()=>{s(!1),w?.(),e.lang=a},e});n.useEffect(()=>()=>o?.stop(),[]);const p=()=>o?.start(),f=()=>o?.stop();return{supported:c,transcript:x,recognition:o,final:q,listening:l,error:T,start:p,stop:f,toggle:(r=!l)=>r?p():f()}};exports.getSpeechRecognition=i;exports.useSpeechRecognition=k;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("react"),i=()=>window?.SpeechRecognition??window?.webkitSpeechRecognition,v=(S={})=>{const c=typeof window<"u"&&!!i(),{continuous:d=!1,interimResults:R=!1,language:a="en-US",grammars:u,maxAlternatives:m=1,onStart:h,onEnd:w,onError:E,onResult:b}=S,[l,s]=n.useState(!1),[x,y]=n.useState(""),[A,T]=n.useState(!1),[j,g]=n.useState(null),[o]=n.useState(()=>{if(!c)return;const r=i(),t=new r;return t.continuous=d,u&&(t.grammars=u),t.interimResults=R,t.lang=a,t.maxAlternatives=m,t.onstart=()=>{s(!0),T(!1),h?.()},t.onerror=e=>{g(e),s(!1),E?.(e)},t.onresult=e=>{const k=e.results[e.resultIndex],{transcript:q}=k[0];s(!1),y(q),g(null),b?.(e)},t.onend=()=>{s(!1),w?.(),t.lang=a},t});n.useEffect(()=>()=>o?.stop(),[]);const p=()=>o?.start(),f=()=>o?.stop();return{supported:c,transcript:x,recognition:o,final:A,listening:l,error:j,start:p,stop:f,toggle:(r=!l)=>r?p():f()}};exports.getSpeechRecognition=i;exports.useSpeechRecognition=v;
2
2
  //# sourceMappingURL=useSpeechRecognition.cjs.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const k=require("react"),u=(r,t)=>{switch(t.type){case"SET":{const{value:n,capacity:e}=t.payload,o=[...r.history.slice(0,r.currentIndex+1),n];o.length>e&&o.shift();const c=[r.history,...r.undoStack];return c.length>e&&c.pop(),{history:o,currentIndex:o.length-1,undoStack:c,redoStack:[]}}case"UNDO":return r.undoStack.length===0?r:{history:r.undoStack[0],currentIndex:r.undoStack[0].length-1,undoStack:r.undoStack.slice(1),redoStack:[r.history,...r.redoStack]};case"REDO":return r.redoStack.length===0?r:{history:r.redoStack[0],currentIndex:r.redoStack[0].length-1,undoStack:[r.history,...r.undoStack],redoStack:r.redoStack.slice(1)};case"BACK":{const{steps:n}=t.payload;return{...r,currentIndex:Math.max(0,r.currentIndex-n)}}case"FORWARD":{const{steps:n}=t.payload;return{...r,currentIndex:Math.min(r.currentIndex+n,r.history.length-1)}}case"RESET":{const{initialValue:n,capacity:e}=t.payload;if(r.history.length===1)return r;const o=[r.history,...r.undoStack];return o.length>e&&o.pop(),{history:[n],currentIndex:0,undoStack:o,redoStack:[]}}default:throw new Error("Unsupported action type")}},p=(r,t=10)=>{const[n,e]=k.useReducer(u,{history:[r],currentIndex:0,undoStack:[],redoStack:[]}),o=n.history[n.currentIndex],c=n.undoStack.length>0,s=n.redoStack.length>0,a=d=>e({type:"SET",payload:{value:d,capacity:t}}),y=()=>e({type:"UNDO"}),i=()=>e({type:"REDO"}),S=(d=1)=>e({type:"BACK",payload:{steps:d}}),h=(d=1)=>e({type:"FORWARD",payload:{steps:d}}),l=()=>e({type:"RESET",payload:{initialValue:r,capacity:t}});return{history:n.history,value:o,set:a,index:n.currentIndex,back:S,forward:h,reset:l,undo:y,redo:i,canUndo:c,canRedo:s}};exports.stateHistoryReducer=u;exports.useStateHistory=p;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const k=require("react"),u=(r,t)=>{switch(t.type){case"SET":{const{value:n,capacity:e}=t.payload,o=[...r.history.slice(0,r.currentIndex+1),n];o.length>e&&o.shift();const c=[r.history,...r.undoStack];return c.length>e&&c.pop(),{history:o,currentIndex:o.length-1,undoStack:c,redoStack:[]}}case"UNDO":return r.undoStack.length===0?r:{history:r.undoStack[0],currentIndex:r.undoStack[0].length-1,undoStack:r.undoStack.slice(1),redoStack:[r.history,...r.redoStack]};case"REDO":return r.redoStack.length===0?r:{history:r.redoStack[0],currentIndex:r.redoStack[0].length-1,undoStack:[r.history,...r.undoStack],redoStack:r.redoStack.slice(1)};case"BACK":{const{steps:n}=t.payload;return{...r,currentIndex:Math.max(0,r.currentIndex-n)}}case"FORWARD":{const{steps:n}=t.payload;return{...r,currentIndex:Math.min(r.currentIndex+n,r.history.length-1)}}case"RESET":{const{initialValue:n,capacity:e}=t.payload;if(r.history.length===1)return r;const o=[r.history,...r.undoStack];return o.length>e&&o.pop(),{history:[n],currentIndex:0,undoStack:o,redoStack:[]}}default:throw new Error("Unsupported action type")}},p=(r,t=10)=>{const[n,e]=k.useReducer(u,{history:[r],currentIndex:0,undoStack:[],redoStack:[]}),o=n.history[n.currentIndex],c=n.undoStack.length>0,a=n.redoStack.length>0,s=d=>e({type:"SET",payload:{value:d,capacity:t}}),y=()=>e({type:"UNDO"}),i=()=>e({type:"REDO"}),S=(d=1)=>e({type:"BACK",payload:{steps:d}}),h=(d=1)=>e({type:"FORWARD",payload:{steps:d}}),l=()=>e({type:"RESET",payload:{initialValue:r,capacity:t}});return{history:n.history,value:o,set:s,index:n.currentIndex,back:S,forward:h,reset:l,undo:y,redo:i,canUndo:c,canRedo:a}};exports.stateHistoryReducer=u;exports.useStateHistory=p;
2
2
  //# sourceMappingURL=useStateHistory.cjs.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const S=require("react"),r=1,b=s=>{const n=typeof s=="object"?s.max:s,i=typeof s=="object"?s.initial:r,o=S.useRef(i>n||i<r?r:i),[c,e]=S.useState(i),u=c===r,f=c===n;return{counts:n,currentStep:c,isFirst:u,isLast:f,next:()=>{f||e(t=>t+1)},back:()=>{u||e(t=>t-1)},reset:()=>e(o.current),set:t=>{if(t==="first")return e(o.current);if(t==="last"||t>=n)return e(n);if(t<=r)return e(r);e(t)}}};exports.useStep=b;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const S=require("react"),r=1,b=s=>{const n=typeof s=="object"?s.max:s,c=typeof s=="object"?s.initial:r,o=S.useRef(c>n||c<r?r:c),[i,e]=S.useState(c),u=i===r,f=i===n;return{counts:n,currentStep:i,isFirst:u,isLast:f,next:()=>{f||e(t=>t+1)},back:()=>{u||e(t=>t-1)},reset:()=>e(o.current),set:t=>{if(t==="first")return e(o.current);if(t==="last"||t>=n)return e(n);if(t<=r)return e(r);e(t)}}};exports.useStep=b;
2
2
  //# sourceMappingURL=useStep.cjs.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const g=require("react"),E=require("../useRefState/useRefState.cjs"),s=require("../../utils/helpers/isTarget.cjs"),L=((...o)=>{const t=s.isTarget(o[0])?o[0]:void 0,r=t?o[1]:o[0],c=r?.axis??"vertical",i=E.useRefState(),[f,a]=g.useState(!1);return g.useEffect(()=>{if(!t&&!i.state)return;const l=t?s.isTarget.getElement(t):i.current;if(!l)return;const e=r?.root?s.isTarget.getElement(r.root):document,d=l.getBoundingClientRect().top+e.scrollTop-e.getBoundingClientRect().top,v=l.getBoundingClientRect().left+e.scrollLeft-e.getBoundingClientRect().left,n=()=>{if(c==="vertical"){const u=e.scrollTop;a(u>=d)}if(c==="horizontal"){const u=e.scrollLeft;a(u>=v)}};return e.addEventListener("scroll",n),window.addEventListener("resize",n),window.addEventListener("orientationchange",n),n(),()=>{e.removeEventListener("scroll",n),window.removeEventListener("resize",n),window.removeEventListener("orientationchange",n)}},[t&&s.isTarget.getRawElement(t),i.state,c,r?.root]),t?{stuck:f}:{stuck:f,ref:i}});exports.useSticky=L;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const g=require("react"),E=require("../useRefState/useRefState.cjs"),i=require("../../utils/helpers/isTarget.cjs"),L=((...o)=>{const t=i.isTarget(o[0])?o[0]:void 0,r=t?o[1]:o[0],c=r?.axis??"vertical",s=E.useRefState(),[a,f]=g.useState(!1);return g.useEffect(()=>{if(!t&&!s.state)return;const l=t?i.isTarget.getElement(t):s.current;if(!l)return;const e=r?.root?i.isTarget.getElement(r.root):document,d=l.getBoundingClientRect().top+e.scrollTop-e.getBoundingClientRect().top,v=l.getBoundingClientRect().left+e.scrollLeft-e.getBoundingClientRect().left,n=()=>{if(c==="vertical"){const u=e.scrollTop;f(u>=d)}if(c==="horizontal"){const u=e.scrollLeft;f(u>=v)}};return e.addEventListener("scroll",n),window.addEventListener("resize",n),window.addEventListener("orientationchange",n),n(),()=>{e.removeEventListener("scroll",n),window.removeEventListener("resize",n),window.removeEventListener("orientationchange",n)}},[t&&i.isTarget.getRawElement(t),s.state,c,r?.root]),t?{stuck:a}:{stuck:a,ref:s}});exports.useSticky=L;
2
2
  //# sourceMappingURL=useSticky.cjs.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const g=require("react"),u="reactuse-storage",a=t=>window.dispatchEvent(new StorageEvent(u,t)),f=(t,r,n)=>{const o=t.getItem(r);t.setItem(r,n),a({key:r,oldValue:o,newValue:n,storageArea:t})},m=(t,r)=>{const n=t.getItem(r);t.removeItem(r),a({key:r,oldValue:n,newValue:null,storageArea:t})},v=(t,r)=>{const n=t.getItem(r);if(n)return n},z=((t,r)=>{const n=typeof r=="object"&&r&&("serializer"in r||"deserializer"in r||"initialValue"in r||"storage"in r)?r:void 0,o=n?n?.initialValue:r;if(typeof window>"u")return{value:typeof o=="function"?o():o,set:()=>{},remove:()=>{}};const c=e=>n?.serializer?n.serializer(e):typeof e=="string"?e:JSON.stringify(e),i=n?.storage??window?.localStorage,w=e=>f(i,t,c(e)),S=()=>m(i,t),d=e=>{if(n?.deserializer)return n.deserializer(e);if(e!=="undefined")try{return JSON.parse(e)}catch{return e}},[E,V]=g.useState(()=>{const e=v(i,t);if(e===void 0&&o!==void 0){const s=typeof o=="function"?o():o;return f(i,t,c(s)),s}return e?d(e):void 0});return g.useEffect(()=>{const e=s=>{if(s&&s.storageArea!==i||s&&s.key!==t)return;const l=v(i,t);V(l?d(l):void 0)};return window.addEventListener(u,e),window.addEventListener("storage",e,{passive:!0}),()=>{window.removeEventListener(u,e),window.removeEventListener("storage",e)}},[t,i]),{value:E,set:w,remove:S}});exports.STORAGE_EVENT=u;exports.dispatchStorageEvent=a;exports.useStorage=z;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const g=require("react"),a="reactuse-storage",u=t=>window.dispatchEvent(new StorageEvent(a,t)),f=(t,r,n)=>{const o=t.getItem(r);t.setItem(r,n),u({key:r,oldValue:o,newValue:n,storageArea:t})},m=(t,r)=>{const n=t.getItem(r);t.removeItem(r),u({key:r,oldValue:n,newValue:null,storageArea:t})},v=(t,r)=>{const n=t.getItem(r);if(n)return n},z=((t,r)=>{const n=typeof r=="object"&&r&&("serializer"in r||"deserializer"in r||"initialValue"in r||"storage"in r)?r:void 0,o=n?n?.initialValue:r;if(typeof window>"u")return{value:typeof o=="function"?o():o,set:()=>{},remove:()=>{}};const c=e=>n?.serializer?n.serializer(e):typeof e=="string"?e:JSON.stringify(e),i=n?.storage??window?.localStorage,w=e=>f(i,t,c(e)),S=()=>m(i,t),d=e=>{if(n?.deserializer)return n.deserializer(e);if(e!=="undefined")try{return JSON.parse(e)}catch{return e}},[E,V]=g.useState(()=>{const e=v(i,t);if(e===void 0&&o!==void 0){const s=typeof o=="function"?o():o;return f(i,t,c(s)),s}return e?d(e):void 0});return g.useEffect(()=>{const e=s=>{if(s&&s.storageArea!==i||s&&s.key!==t)return;const l=v(i,t);V(l?d(l):void 0)};return window.addEventListener(a,e),window.addEventListener("storage",e,{passive:!0}),()=>{window.removeEventListener(a,e),window.removeEventListener("storage",e)}},[t,i]),{value:E,set:w,remove:S}});exports.STORAGE_EVENT=a;exports.dispatchStorageEvent=u;exports.useStorage=z;
2
2
  //# sourceMappingURL=useStorage.cjs.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("react"),m=require("../useRefState/useRefState.cjs"),u=require("../../utils/helpers/isTarget.cjs"),T=((...i)=>{const e=u.isTarget(i[0])?i[0]:void 0,l=(e?i[1]:i[0])??"ltr",r=m.useRefState(),n=c.useRef(null),s=()=>typeof window>"u"?l:(e?u.isTarget.getElement(e):r.current)?.getAttribute("dir")??l,[f,o]=c.useState(s()),a=()=>{n.current&&n.current?.removeAttribute("dir")},d=t=>{n.current&&(o(t),n.current.setAttribute("dir",t))};return c.useEffect(()=>{if(!e&&!r.state)return;const t=(e?u.isTarget.getElement(e):r.current)??document.querySelector("html");if(!t)return;n.current=t;const g=s();t.setAttribute("dir",g),o(g);const b=new MutationObserver(()=>o(s()));return b.observe(t,{attributes:!0}),()=>{b.disconnect()}},[r.state,e&&u.isTarget.getRawElement(e)]),e?{value:f,set:d,remove:a}:{ref:r,value:f,set:d,remove:a}});exports.useTextDirection=T;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("react"),m=require("../useRefState/useRefState.cjs"),u=require("../../utils/helpers/isTarget.cjs"),T=((...i)=>{const e=u.isTarget(i[0])?i[0]:void 0,l=(e?i[1]:i[0])??"ltr",r=m.useRefState(),n=o.useRef(null),s=()=>typeof window>"u"?l:(e?u.isTarget.getElement(e):r.current)?.getAttribute("dir")??l,[f,c]=o.useState(s()),a=()=>{n.current&&n.current?.removeAttribute("dir")},d=t=>{n.current&&(c(t),n.current.setAttribute("dir",t))};return o.useEffect(()=>{if(!e&&!r.state)return;const t=(e?u.isTarget.getElement(e):r.current)??document.querySelector("html");if(!t)return;n.current=t;const g=s();t.setAttribute("dir",g),c(g);const b=new MutationObserver(()=>c(s()));return b.observe(t,{attributes:!0}),()=>{b.disconnect()}},[r.state,e&&u.isTarget.getRawElement(e)]),e?{value:f,set:d,remove:a}:{ref:r,value:f,set:d,remove:a}});exports.useTextDirection=T;
2
2
  //# sourceMappingURL=useTextDirection.cjs.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("react"),g=require("../useRerender/useRerender.cjs"),u=t=>{const e=t.rangeCount??0;return Array.from({length:e},(r,o)=>t.getRangeAt(o))},l=()=>{const t=g.useRerender(),[e,r]=s.useState(typeof document<"u"?document.getSelection():null);s.useEffect(()=>{const n=()=>{r(document.getSelection()),t()};return document.addEventListener("selectionchange",n),()=>document.removeEventListener("selectionchange",n)},[]);const o=e?.toString()??"",c=e?u(e):[],i=c.map(n=>n.getBoundingClientRect());return{text:o,ranges:c,rects:i,selection:e}};exports.getRangesSelection=u;exports.useTextSelection=l;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("react"),g=require("../useRerender/useRerender.cjs"),u=t=>{const e=t.rangeCount??0;return Array.from({length:e},(c,o)=>t.getRangeAt(o))},l=()=>{const t=g.useRerender(),[e,c]=s.useState(typeof document<"u"?document.getSelection():null);s.useEffect(()=>{const n=()=>{c(document.getSelection()),t()};return document.addEventListener("selectionchange",n),()=>document.removeEventListener("selectionchange",n)},[]);const o=e?.toString()??"",r=e?u(e):[],i=r.map(n=>n.getBoundingClientRect());return{text:o,ranges:r,rects:i,selection:e}};exports.getRangesSelection=u;exports.useTextSelection=l;
2
2
  //# sourceMappingURL=useTextSelection.cjs.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const l=require("react"),H=require("../useRefState/useRefState.cjs"),f=require("../../utils/helpers/isTarget.cjs"),R=((...t)=>{const n=f.isTarget(t[0])?t[0]:void 0,s=n?typeof t[1]=="object"?t[1]:{initialValue:t[1]}:typeof t[0]=="object"?t[0]:{initialValue:t[0]},[h,v]=l.useState(s?.initialValue??""),o=H.useRefState(),c=l.useRef(null),x=l.useRef(0),u=()=>{const e=c.current;if(!e)return;const i=e.style.minHeight,a=e.style.maxHeight;e.style.height="auto",e.style.minHeight="auto",e.style.maxHeight="none";const r=e.scrollHeight;e.style.height=`${r}px`,e.style.minHeight=i,e.style.maxHeight=a,r!==x.current&&s?.onResize?.(),x.current=r},g=e=>{v(e);const i=c.current;i&&(i.value=e,requestAnimationFrame(()=>{u()}))};l.useEffect(()=>{if(!n&&!o.state)return;const e=n?f.isTarget.getElement(n):o.current;if(!e)return;c.current=e,s?.initialValue&&(e.value=s.initialValue),u();const i=r=>{const m=r.target.value;g(m),requestAnimationFrame(()=>{u()})},a=()=>{requestAnimationFrame(()=>{u()})};return e.addEventListener("input",i),e.addEventListener("resize",a),()=>{e.removeEventListener("input",i),e.removeEventListener("resize",a)}},[n&&f.isTarget.getRawElement(n),o.state]);const y=()=>v("");return n?{value:h,set:g,clear:y}:{ref:o,value:h,set:g,clear:y}});exports.useTextareaAutosize=R;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const l=require("react"),H=require("../useRefState/useRefState.cjs"),f=require("../../utils/helpers/isTarget.cjs"),R=((...t)=>{const n=f.isTarget(t[0])?t[0]:void 0,s=n?typeof t[1]=="object"?t[1]:{initialValue:t[1]}:typeof t[0]=="object"?t[0]:{initialValue:t[0]},[h,v]=l.useState(s?.initialValue??""),o=H.useRefState(),c=l.useRef(null),x=l.useRef(0),a=()=>{const e=c.current;if(!e)return;const i=e.style.minHeight,u=e.style.maxHeight;e.style.height="auto",e.style.minHeight="auto",e.style.maxHeight="none";const r=e.scrollHeight;e.style.height=`${r}px`,e.style.minHeight=i,e.style.maxHeight=u,r!==x.current&&s?.onResize?.(),x.current=r},g=e=>{v(e);const i=c.current;i&&(i.value=e,requestAnimationFrame(()=>{a()}))};l.useEffect(()=>{if(!n&&!o.state)return;const e=n?f.isTarget.getElement(n):o.current;if(!e)return;c.current=e,s?.initialValue&&(e.value=s.initialValue),a();const i=r=>{const m=r.target.value;g(m),requestAnimationFrame(()=>{a()})},u=()=>{requestAnimationFrame(()=>{a()})};return e.addEventListener("input",i),e.addEventListener("resize",u),()=>{e.removeEventListener("input",i),e.removeEventListener("resize",u)}},[n&&f.isTarget.getRawElement(n),o.state]);const y=()=>v("");return n?{value:h,set:g,clear:y}:{ref:o,value:h,set:g,clear:y}});exports.useTextareaAutosize=R;
2
2
  //# sourceMappingURL=useTextareaAutosize.cjs.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react"),R=(s,u)=>{const c=e.useRef(s),t=e.useRef(null),r=e.useRef(!1),l=e.useRef(u),n=e.useRef(null);return c.current=s,l.current=u,e.useMemo(()=>{const o=()=>{r.current=!1,n.current&&(c.current.apply(void 0,n.current),n.current=null,setTimeout(o,l.current))},f=()=>{t.current&&(clearTimeout(t.current),t.current=null,r.current=!1)},i=function(...a){n.current=a,!r.current&&(c.current.apply(this,a),r.current=!0,t.current=setTimeout(o,l.current))};return i.cancel=f,f(),i},[u])};exports.useThrottleCallback=R;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react"),R=(s,u)=>{const c=e.useRef(s),t=e.useRef(null),r=e.useRef(!1),l=e.useRef(u),n=e.useRef(null);return c.current=s,l.current=u,e.useMemo(()=>{const o=()=>{r.current=!1,n.current&&(c.current.apply(void 0,n.current),n.current=null,setTimeout(o,l.current))},a=()=>{t.current&&(clearTimeout(t.current),t.current=null,r.current=!1)},f=function(...i){n.current=i,!r.current&&(c.current.apply(this,i),r.current=!0,t.current=setTimeout(o,l.current))};return f.cancel=a,a(),f},[u])};exports.useThrottleCallback=R;
2
2
  //# sourceMappingURL=useThrottleCallback.cjs.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react"),l=(f,s,i)=>{const o=e.useRef(!0),r=e.useRef(void 0),t=e.useRef(null),u=e.useRef(!1),n=e.useRef(f),c=e.useRef(s);n.current=f,c.current=s,e.useEffect(()=>{if(o.current){o.current=!1;return}if(!u.current)return r.current=n.current(),u.current=!0,setTimeout(()=>{u.current=!1,t.current=setTimeout(()=>{r.current=n.current()},c.current)},c.current),()=>{t.current&&clearTimeout(t.current),t.current=null,typeof r.current=="function"&&r.current()}},i)};exports.useThrottleEffect=l;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react"),i=(f,s,l)=>{const o=e.useRef(!0),r=e.useRef(void 0),t=e.useRef(null),u=e.useRef(!1),n=e.useRef(f),c=e.useRef(s);n.current=f,c.current=s,e.useEffect(()=>{if(o.current){o.current=!1;return}if(!u.current)return r.current=n.current(),u.current=!0,setTimeout(()=>{u.current=!1,t.current=setTimeout(()=>{r.current=n.current()},c.current)},c.current),()=>{t.current&&clearTimeout(t.current),t.current=null,typeof r.current=="function"&&r.current()}},l)};exports.useThrottleEffect=i;
2
2
  //# sourceMappingURL=useThrottleEffect.cjs.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const u=require("react"),s=require("../useThrottleCallback/useThrottleCallback.cjs"),a=(t,e)=>{const[r,l]=u.useState(t),o=s.useThrottleCallback(l,e);return[r,o]};exports.useThrottleState=a;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("react"),s=require("../useThrottleCallback/useThrottleCallback.cjs"),u=(t,e)=>{const[r,l]=a.useState(t),o=s.useThrottleCallback(l,e);return[r,o]};exports.useThrottleState=u;
2
2
  //# sourceMappingURL=useThrottleState.cjs.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("react"),c=require("../useThrottleCallback/useThrottleCallback.cjs"),n=(e,o)=>{const r=t.useRef(e),[u,s]=t.useState(e),l=c.useThrottleCallback(s,o);return t.useEffect(()=>{r.current!==e&&(l(e),r.current=e)},[e]),u};exports.useThrottleValue=n;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react"),l=require("../useThrottleCallback/useThrottleCallback.cjs"),n=(t,o)=>{const r=e.useRef(t),[s,u]=e.useState(t),c=l.useThrottleCallback(u,o);return e.useEffect(()=>{r.current!==t&&(c(t),r.current=t)},[t]),s};exports.useThrottleValue=n;
2
2
  //# sourceMappingURL=useThrottleValue.cjs.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react"),t=require("../../utils/helpers/getDate.cjs"),i=()=>{const[r,s]=e.useState(t.getDate());return e.useEffect(()=>{const u=setInterval(()=>s(t.getDate()),1e3);return()=>{clearInterval(u)}},[]),r};exports.useTime=i;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react"),t=require("../../utils/helpers/getDate.cjs"),u=()=>{const[r,s]=e.useState(t.getDate());return e.useEffect(()=>{const n=setInterval(()=>s(t.getDate()),1e3);return()=>{clearInterval(n)}},[]),r};exports.useTime=u;
2
2
  //# sourceMappingURL=useTime.cjs.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("react"),s=require("../useEvent/useEvent.cjs");function i(n,r){const[c,u]=t.useState(!1),e=t.useRef(void 0),o=s.useEvent(n);return t.useEffect(()=>(e.current=setTimeout(()=>{o(),u(!0)},r),()=>{clearTimeout(e.current)}),[r]),{ready:c,clear:()=>{clearTimeout(e.current),u(!0)}}}exports.useTimeout=i;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("react"),s=require("../useEvent/useEvent.cjs");function i(c,r){const[n,u]=t.useState(!1),e=t.useRef(void 0),o=s.useEvent(c);return t.useEffect(()=>(e.current=setTimeout(()=>{o(),u(!0)},r),()=>{clearTimeout(e.current)}),[r]),{ready:n,clear:()=>{clearTimeout(e.current),u(!0)}}}exports.useTimeout=i;
2
2
  //# sourceMappingURL=useTimeout.cjs.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("react"),l=(u=[!1,!0])=>{const[[n],t]=s.useReducer((e,o)=>{const c=typeof o=="function"?o(e[0]):o,r=Math.abs(e.indexOf(c));return e.slice(r).concat(e.slice(0,r))},u);return[n,t]};exports.useToggle=l;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("react"),l=(r=[!1,!0])=>{const[[t],u]=s.useReducer((e,o)=>{const c=typeof o=="function"?o(e[0]):o,n=Math.abs(e.indexOf(c));return e.slice(n).concat(e.slice(0,n))},r);return[t,u]};exports.useToggle=l;
2
2
  //# sourceMappingURL=useToggle.cjs.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const P=require("react"),l="reactuse-url-search-params-event",d=(n="history")=>{const{search:i,hash:r}=window.location;let s="";if(n==="history"&&(s=i),n==="hash-params"&&(s=r.replace(/^#/,"")),n==="hash"){const t=r.indexOf("?");s=~t?r.slice(t):""}return new URLSearchParams(s)},g=(n,i)=>{const r=n.toString(),{search:s,hash:t}=window.location;if(i==="history")return`${r?`?${r}`:""}${t}`;if(i==="hash-params")return`${s}${r?`#${r}`:""}`;if(i==="hash"){const o=t.indexOf("?"),h=o>-1?t.slice(0,o):t;return`${s}${h}${r?`?${r}`:""}`}throw new Error("Invalid mode")},p=()=>window.dispatchEvent(new Event(l)),z=((n,i)=>{const r=typeof i=="object"&&i&&("serializer"in i||"deserializer"in i||"initialValue"in i||"mode"in i||"write"in i)?i:void 0,s=r?r?.initialValue:i,{mode:t="history",write:o="replace"}=r??{};if(typeof window>"u")return{value:s,remove:()=>{},set:()=>{}};const h=e=>r?.serializer?r.serializer(e):typeof e=="string"?e:JSON.stringify(e),f=e=>{if(r?.deserializer)return r.deserializer(e);if(!(e==="undefined"||e==="null"))try{return JSON.parse(e)}catch{return e}},u=(e,a,c,v="replace")=>{const S=d(c);if(a===void 0)S.delete(e);else{const U=h?h(a):String(a);S.set(e,U)}const E=g(S,c);v==="replace"&&window.history.replaceState({},"",E),v==="push"&&window.history.pushState({},"",E),p()},[m,w]=P.useState(()=>{const a=d(t).get(n);return a===null&&s!==void 0?(u(n,s,t,o),s):a?f(a):void 0}),y=(e,a)=>{u(n,e,t,a?.write??o),w(e)},$=e=>{u(n,void 0,t,e?.write??o),w(void 0)};return P.useEffect(()=>{const e=()=>{const c=d(t).get(n);w(c?f(c):void 0)};return window.addEventListener(l,e),window.addEventListener("popstate",e),t!=="history"&&window.addEventListener("hashchange",e),()=>{window.removeEventListener(l,e),window.removeEventListener("popstate",e),t!=="history"&&window.removeEventListener("hashchange",e)}},[n,t]),{value:m,remove:$,set:y}});exports.URL_SEARCH_PARAMS_EVENT=l;exports.createQueryString=g;exports.dispatchUrlSearchParamsEvent=p;exports.getUrlSearchParams=d;exports.useUrlSearchParam=z;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const P=require("react"),l="reactuse-url-search-params-event",d=(n="history")=>{const{search:i,hash:r}=window.location;let s="";if(n==="history"&&(s=i),n==="hash-params"&&(s=r.replace(/^#/,"")),n==="hash"){const t=r.indexOf("?");s=~t?r.slice(t):""}return new URLSearchParams(s)},g=(n,i)=>{const r=n.toString(),{search:s,hash:t}=window.location;if(i==="history")return`${r?`?${r}`:""}${t}`;if(i==="hash-params")return`${s}${r?`#${r}`:""}`;if(i==="hash"){const o=t.indexOf("?"),h=o>-1?t.slice(0,o):t;return`${s}${h}${r?`?${r}`:""}`}throw new Error("Invalid mode")},p=()=>window.dispatchEvent(new Event(l)),z=((n,i)=>{const r=typeof i=="object"&&i&&("serializer"in i||"deserializer"in i||"initialValue"in i||"mode"in i||"write"in i)?i:void 0,s=r?r?.initialValue:i,{mode:t="history",write:o="replace"}=r??{};if(typeof window>"u")return{value:s,remove:()=>{},set:()=>{}};const h=e=>r?.serializer?r.serializer(e):typeof e=="string"?e:JSON.stringify(e),f=e=>{if(r?.deserializer)return r.deserializer(e);if(!(e==="undefined"||e==="null"))try{return JSON.parse(e)}catch{return e}},u=(e,a,c,v="replace")=>{const S=d(c);if(a===void 0)S.delete(e);else{const $=h?h(a):String(a);S.set(e,$)}const E=g(S,c);v==="replace"&&window.history.replaceState({},"",E),v==="push"&&window.history.pushState({},"",E),p()},[m,w]=P.useState(()=>{const a=d(t).get(n);return a===null&&s!==void 0?(u(n,s,t,o),s):a?f(a):void 0}),y=(e,a)=>{u(n,e,t,a?.write??o),w(e)},U=e=>{u(n,void 0,t,e?.write??o),w(void 0)};return P.useEffect(()=>{const e=()=>{const c=d(t).get(n);w(c?f(c):void 0)};return window.addEventListener(l,e),window.addEventListener("popstate",e),t!=="history"&&window.addEventListener("hashchange",e),()=>{window.removeEventListener(l,e),window.removeEventListener("popstate",e),t!=="history"&&window.removeEventListener("hashchange",e)}},[n,t]),{value:m,remove:U,set:y}});exports.URL_SEARCH_PARAMS_EVENT=l;exports.createQueryString=g;exports.dispatchUrlSearchParamsEvent=p;exports.getUrlSearchParams=d;exports.useUrlSearchParam=z;
2
2
  //# sourceMappingURL=useUrlSearchParam.cjs.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("react"),g=(a,t=0)=>{const r=typeof navigator<"u"&&"vibrate"in navigator&&!!navigator.vibrate,e=i.useRef(void 0),[f,n]=i.useState(!!t),c=(u=a)=>{r&&navigator.vibrate(u)},s=()=>{r&&(navigator.vibrate(0),n(!1),e.current&&clearInterval(e.current))},v=()=>{r&&(n(!1),e.current&&clearInterval(e.current))},o=(u=t)=>{r&&(e.current&&clearInterval(e.current),n(!0),e.current=setInterval(c,u))};return i.useEffect(()=>{if(!(!r||t<=0))return o(t),()=>{s()}},[t,a]),{supported:r,trigger:c,stop:s,active:f,pause:v,resume:o}};exports.useVibrate=g;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("react"),g=(i,t=0)=>{const r=typeof navigator<"u"&&"vibrate"in navigator&&!!navigator.vibrate,e=a.useRef(void 0),[f,n]=a.useState(!!t),c=(u=i)=>{r&&navigator.vibrate(u)},s=()=>{r&&(navigator.vibrate(0),n(!1),e.current&&clearInterval(e.current))},v=()=>{r&&(n(!1),e.current&&clearInterval(e.current))},o=(u=t)=>{r&&(e.current&&clearInterval(e.current),n(!0),e.current=setInterval(c,u))};return a.useEffect(()=>{if(!(!r||t<=0))return o(t),()=>{s()}},[t,i]),{supported:r,trigger:c,stop:s,active:f,pause:v,resume:o}};exports.useVibrate=g;
2
2
  //# sourceMappingURL=useVibrate.cjs.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("react"),g=(o=!1)=>{const t=typeof window<"u"&&"visualViewport"in window||typeof navigator<"u"&&"virtualKeyboard"in navigator,[n,e]=i.useState(o),v=()=>{navigator.virtualKeyboard&&(navigator.virtualKeyboard.hide(),e(!1))},u=()=>{navigator.virtualKeyboard&&(navigator.virtualKeyboard.show(),e(!0))},d=r=>{navigator.virtualKeyboard&&(navigator.virtualKeyboard.overlaysContent=r)};return i.useEffect(()=>{if(!t)return;const r=()=>e(window.screen.height-300>window.visualViewport.height),a=s=>{const{height:l}=s.target.boundingRect;e(l>0)};return navigator.virtualKeyboard&&(navigator.virtualKeyboard.overlaysContent=!0),navigator.virtualKeyboard&&navigator.virtualKeyboard.addEventListener("geometrychange",a),window.visualViewport&&window.visualViewport.addEventListener("resize",r),()=>{navigator.virtualKeyboard&&navigator.virtualKeyboard.removeEventListener("geometrychange",a),window.visualViewport&&window.visualViewport.removeEventListener("resize",r)}},[]),{opened:n,show:u,hide:v,changeOverlaysContent:d,supported:t}};exports.useVirtualKeyboard=g;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("react"),g=(i=!1)=>{const r=typeof window<"u"&&"visualViewport"in window||typeof navigator<"u"&&"virtualKeyboard"in navigator,[n,e]=o.useState(i),v=()=>{navigator.virtualKeyboard&&(navigator.virtualKeyboard.hide(),e(!1))},u=()=>{navigator.virtualKeyboard&&(navigator.virtualKeyboard.show(),e(!0))},d=t=>{navigator.virtualKeyboard&&(navigator.virtualKeyboard.overlaysContent=t)};return o.useEffect(()=>{if(!r)return;const t=()=>e(window.screen.height-300>window.visualViewport.height),a=s=>{const{height:l}=s.target.boundingRect;e(l>0)};return navigator.virtualKeyboard&&(navigator.virtualKeyboard.overlaysContent=!0),navigator.virtualKeyboard&&navigator.virtualKeyboard.addEventListener("geometrychange",a),window.visualViewport&&window.visualViewport.addEventListener("resize",t),()=>{navigator.virtualKeyboard&&navigator.virtualKeyboard.removeEventListener("geometrychange",a),window.visualViewport&&window.visualViewport.removeEventListener("resize",t)}},[]),{opened:n,show:u,hide:v,changeOverlaysContent:d,supported:r}};exports.useVirtualKeyboard=g;
2
2
  //# sourceMappingURL=useVirtualKeyboard.cjs.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("react"),S=require("../useRefState/useRefState.cjs"),s=require("../../utils/helpers/isTarget.cjs"),T=((...e)=>{const n=s.isTarget(e[0])?e[0]:void 0,t=n?typeof e[1]=="object"?e[1]:{onChange:e[1]}:typeof e[0]=="object"?e[0]:{onChange:e[0]},l=t?.onChange,f=t?.enabled??!0,[g,d]=o.useState(),[i,v]=o.useState(),b=i?.isIntersecting??!1,r=S.useRefState(),a=o.useRef(l);return a.current=l,o.useEffect(()=>{if(!f||!n&&!r.state)return;const y=n?s.isTarget.getElement(n):r.current;if(!y)return;const c=new IntersectionObserver((E,R)=>{const u=E[0];u&&(v(u),a.current?.(u,R))},{...t,root:t?.root?s.isTarget.getElement(t.root):document});return d(c),c.observe(y),()=>{c.disconnect()}},[n&&s.isTarget.getRawElement(n),r.state,t?.rootMargin,t?.threshold,t?.root,f]),n?{observer:g,entry:i,inView:b}:{observer:g,ref:r,entry:i,inView:b}});exports.useVisibility=T;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("react"),S=require("../useRefState/useRefState.cjs"),s=require("../../utils/helpers/isTarget.cjs"),T=((...e)=>{const n=s.isTarget(e[0])?e[0]:void 0,t=n?typeof e[1]=="object"?e[1]:{onChange:e[1]}:typeof e[0]=="object"?e[0]:{onChange:e[0]},l=t?.onChange,f=t?.enabled??!0,[g,d]=o.useState(),[i,v]=o.useState(),a=i?.isIntersecting??!1,r=S.useRefState(),b=o.useRef(l);return b.current=l,o.useEffect(()=>{if(!f||!n&&!r.state)return;const y=n?s.isTarget.getElement(n):r.current;if(!y)return;const c=new IntersectionObserver((E,R)=>{const u=E[0];u&&(v(u),b.current?.(u,R))},{...t,root:t?.root?s.isTarget.getElement(t.root):document});return d(c),c.observe(y),()=>{c.disconnect()}},[n&&s.isTarget.getRawElement(n),r.state,t?.rootMargin,t?.threshold,t?.root,f]),n?{observer:g,entry:i,inView:a}:{observer:g,ref:r,entry:i,inView:a}});exports.useVisibility=T;
2
2
  //# sourceMappingURL=useVisibility.cjs.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("react"),R=require("../useEvent/useEvent.cjs"),d=require("../../utils/helpers/getRetry.cjs"),S=(u,t)=>{const r=c.useRef(void 0),s=c.useRef(t?.retry?d.getRetry(t.retry):0),f=c.useRef(!1),[y,o]=c.useState("connecting"),l=e=>r.current?.send(e),a=()=>{f.current=!0,r.current?.close()},i=R.useEvent(()=>{r.current=new WebSocket(typeof u=="function"?u():u,t?.protocols),o("connecting");const e=r.current;e&&(e.onopen=()=>{o("connected"),t?.onConnected?.(e)},e.onerror=n=>{o("failed"),t?.onError?.(n,e)},e.onmessage=n=>t?.onMessage?.(n,e),e.onclose=n=>{if(o("disconnected"),t?.onDisconnected?.(n,e),!f.current){if(s.current>0)return s.current-=1,i();s.current=t?.retry?d.getRetry(t.retry):0}})});c.useEffect(()=>(i(),()=>{r.current&&(r.current.close(),r.current=void 0)}),[u]);const g=()=>{f.current=!1,i()};return{client:r.current,close:a,open:g,send:l,status:y}};exports.useWebSocket=S;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("react"),R=require("../useEvent/useEvent.cjs"),d=require("../../utils/helpers/getRetry.cjs"),S=(o,t)=>{const r=c.useRef(void 0),s=c.useRef(t?.retry?d.getRetry(t.retry):0),f=c.useRef(!1),[y,u]=c.useState("connecting"),a=e=>r.current?.send(e),l=()=>{f.current=!0,r.current?.close()},i=R.useEvent(()=>{r.current=new WebSocket(typeof o=="function"?o():o,t?.protocols),u("connecting");const e=r.current;e&&(e.onopen=()=>{u("connected"),t?.onConnected?.(e)},e.onerror=n=>{u("failed"),t?.onError?.(n,e)},e.onmessage=n=>t?.onMessage?.(n,e),e.onclose=n=>{if(u("disconnected"),t?.onDisconnected?.(n,e),!f.current){if(s.current>0)return s.current-=1,i();s.current=t?.retry?d.getRetry(t.retry):0}})});c.useEffect(()=>(i(),()=>{r.current&&(r.current.close(),r.current=void 0)}),[o]);const g=()=>{f.current=!1,i()};return{client:r.current,close:l,open:g,send:a,status:y}};exports.useWebSocket=S;
2
2
  //# sourceMappingURL=useWebSocket.cjs.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("react"),r=()=>{const[s,e]=n.useState(!1);return n.useEffect(()=>{const o=()=>e(!0),t=()=>e(!1);return window.addEventListener("focus",o),window.addEventListener("blur",t),()=>{window.removeEventListener("focus",o),window.removeEventListener("blur",t)}},[]),s};exports.useWindowFocus=r;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("react"),r=()=>{const[s,e]=n.useState(!1);return n.useEffect(()=>{const t=()=>e(!0),o=()=>e(!1);return window.addEventListener("focus",t),window.addEventListener("blur",o),()=>{window.removeEventListener("focus",t),window.removeEventListener("blur",o)}},[]),s};exports.useWindowFocus=r;
2
2
  //# sourceMappingURL=useWindowFocus.cjs.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("react"),s=({x:o,y:r,behavior:e="smooth"})=>{const n={behavior:e};typeof o=="number"&&(n.left=o),typeof r=="number"&&(n.top=r),window.scrollTo(n)},l=()=>{const[o,r]=t.useState(()=>typeof window>"u"?{x:Number.POSITIVE_INFINITY,y:Number.POSITIVE_INFINITY}:{x:window.scrollX,y:window.scrollY});return t.useEffect(()=>{const e=()=>r({x:window.scrollX,y:window.scrollY});return window.addEventListener("scroll",e),window.addEventListener("resize",e),()=>{window.removeEventListener("scroll",e),window.removeEventListener("resize",e)}},[]),{value:o,scrollTo:s}};exports.scrollTo=s;exports.useWindowScroll=l;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("react"),s=({x:o,y:n,behavior:e="smooth"})=>{const r={behavior:e};typeof o=="number"&&(r.left=o),typeof n=="number"&&(r.top=n),window.scrollTo(r)},l=()=>{const[o,n]=t.useState(()=>typeof window>"u"?{x:Number.POSITIVE_INFINITY,y:Number.POSITIVE_INFINITY}:{x:window.scrollX,y:window.scrollY});return t.useEffect(()=>{const e=()=>n({x:window.scrollX,y:window.scrollY});return window.addEventListener("scroll",e),window.addEventListener("resize",e),()=>{window.removeEventListener("scroll",e),window.removeEventListener("resize",e)}},[]),{value:o,scrollTo:s}};exports.scrollTo=s;exports.useWindowScroll=l;
2
2
  //# sourceMappingURL=useWindowScroll.cjs.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("react"),s=n=>{const e=n?.includeScrollbar??!0,[o,r]=i.useState(()=>typeof window>"u"?{width:Number.POSITIVE_INFINITY,height:Number.POSITIVE_INFINITY}:{width:e?window.innerWidth:window.document.documentElement.clientWidth,height:e?window.innerHeight:window.document.documentElement.clientHeight});return i.useEffect(()=>{const t=()=>{const{innerWidth:d,innerHeight:c,document:u}=window,{clientWidth:w,clientHeight:l}=u.documentElement;r({width:e?d:w,height:e?c:l})};return window.addEventListener("resize",t),()=>window.removeEventListener("resize",t)},[n?.includeScrollbar]),o};exports.useWindowSize=s;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("react"),s=t=>{const e=t?.includeScrollbar??!0,[o,d]=i.useState(()=>typeof window>"u"?{width:Number.POSITIVE_INFINITY,height:Number.POSITIVE_INFINITY}:{width:e?window.innerWidth:window.document.documentElement.clientWidth,height:e?window.innerHeight:window.document.documentElement.clientHeight});return i.useEffect(()=>{const n=()=>{const{innerWidth:r,innerHeight:c,document:u}=window,{clientWidth:w,clientHeight:l}=u.documentElement;d({width:e?r:w,height:e?c:l})};return window.addEventListener("resize",n),()=>window.removeEventListener("resize",n)},[t?.includeScrollbar]),o};exports.useWindowSize=s;
2
2
  //# sourceMappingURL=useWindowSize.cjs.map
@@ -1,12 +1,12 @@
1
1
  import { jsx as i } from "react/jsx-runtime";
2
2
  import { useSyncExternalStore as d, useEffect as m } from "react";
3
- import { c as a } from "../../_virtual/client.mjs";
3
+ import { createRoot as a } from "react-dom/client";
4
4
  const c = (n) => {
5
- const e = document.createElement("div"), t = a.createRoot(e);
5
+ const e = document.createElement("div"), t = a(e);
6
6
  return t.render(n), () => {
7
7
  t.unmount(), e.remove();
8
8
  };
9
- }, p = (n) => {
9
+ }, S = (n) => {
10
10
  if (typeof window > "u") {
11
11
  const t = (...r) => n(...r);
12
12
  return t.useShared = t, t;
@@ -20,10 +20,10 @@ const c = (n) => {
20
20
  return function(...r) {
21
21
  return e.mounted || (e.mounted = !0, queueMicrotask(() => {
22
22
  const o = () => {
23
- const s = n(...r);
23
+ const u = n(...r);
24
24
  return m(() => {
25
- e.state = s, e.listeners.forEach((u) => u());
26
- }, [s]), null;
25
+ e.state = u, e.listeners.forEach((s) => s());
26
+ }, [u]), null;
27
27
  };
28
28
  e.unmount = c(/* @__PURE__ */ i(o, {}));
29
29
  })), d(
@@ -36,7 +36,7 @@ const c = (n) => {
36
36
  };
37
37
  };
38
38
  export {
39
- p as createSharedHook,
39
+ S as createSharedHook,
40
40
  c as mount
41
41
  };
42
42
  //# sourceMappingURL=createSharedHook.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"createSharedHook.mjs","sources":["../../../../src/helpers/createSharedHook/createSharedHook.tsx"],"sourcesContent":["import { useEffect, useSyncExternalStore } from 'react';\nimport { createRoot } from 'react-dom/client';\n\nexport const mount = (component: React.ReactNode) => {\n const container = document.createElement('div');\n const root = createRoot(container);\n root.render(component);\n return () => {\n root.unmount();\n container.remove();\n };\n};\n\n/**\n * @name createSharedHook\n * @description - One shared instance of the hook globally. First subscriber's args are used; when subscribers hit zero, the runner unmounts.\n * @category Helpers\n * @usage low\n *\n * @warning - For complex interfaces, we strongly recommend using state management solutions outside of React like createStore, reatom, effector, or zustand instead of context\n *\n * @template Hook - The hook to create a shared instance of\n * @param {Hook} useHook - The hook to create a shared instance of\n * @returns {Hook & { useShared: typeof useShared }} - The shared hook\n *\n * @example\n * const useSharedMediaQuery = createSharedHook(useMediaQuery);\n * const matches = useSharedMediaQuery(\"(max-width: 768px)\");\n */\nexport const createSharedHook = <Hook extends (...args: any[]) => any>(useHook: Hook) => {\n if (typeof window === 'undefined') {\n const fn = (...args: Parameters<Hook>) => useHook(...args);\n fn.useShared = fn;\n return fn;\n }\n\n type Value = ReturnType<Hook>;\n const store = {\n state: undefined as Value | undefined,\n listeners: new Set<() => void>(),\n mounted: false,\n unmount: undefined as (() => void) | undefined\n };\n\n return function useShared(...args: Parameters<Hook>): Value {\n if (!store.mounted) {\n store.mounted = true;\n queueMicrotask(() => {\n const HookContainer = () => {\n const value = useHook(...args) as Value;\n useEffect(() => {\n store.state = value;\n store.listeners.forEach((l) => l());\n }, [value]);\n return null;\n };\n\n store.unmount = mount(<HookContainer />);\n });\n }\n\n return useSyncExternalStore(\n (callback) => {\n store.listeners.add(callback);\n return () => {\n store.listeners.delete(callback);\n if (store.listeners.size < 0 && store.unmount) {\n store.unmount();\n store.unmount = undefined;\n store.state = undefined;\n store.mounted = false;\n }\n };\n },\n () => store.state,\n () => store.state\n ) as Value;\n };\n};\n"],"names":["mount","component","container","root","createRoot","createSharedHook","useHook","fn","args","store","HookContainer","value","useEffect","l","jsx","useSyncExternalStore","callback"],"mappings":";;;AAGO,MAAMA,IAAQ,CAACC,MAA+B;AACnD,QAAMC,IAAY,SAAS,cAAc,KAAK,GACxCC,IAAOC,EAAAA,WAAWF,CAAS;AACjC,SAAAC,EAAK,OAAOF,CAAS,GACd,MAAM;AACX,IAAAE,EAAK,QAAA,GACLD,EAAU,OAAA;AAAA,EAAO;AAErB,GAkBaG,IAAmB,CAAuCC,MAAkB;AACvF,MAAI,OAAO,SAAW,KAAa;AACjC,UAAMC,IAAK,IAAIC,MAA2BF,EAAQ,GAAGE,CAAI;AACzD,WAAAD,EAAG,YAAYA,GACRA;AAAA,EAAA;AAIT,QAAME,IAAQ;AAAA,IACZ,OAAO;AAAA,IACP,+BAAe,IAAA;AAAA,IACf,SAAS;AAAA,IACT,SAAS;AAAA,EAAA;AAGX,SAAO,YAAsBD,GAA+B;AAC1D,WAAKC,EAAM,YACTA,EAAM,UAAU,IAChB,eAAe,MAAM;AACnB,YAAMC,IAAgB,MAAM;AAC1B,cAAMC,IAAQL,EAAQ,GAAGE,CAAI;AAC7B,eAAAI,EAAU,MAAM;AACd,UAAAH,EAAM,QAAQE,GACdF,EAAM,UAAU,QAAQ,CAACI,MAAMA,GAAG;AAAA,QAAA,GACjC,CAACF,CAAK,CAAC,GACH;AAAA,MAAA;AAGT,MAAAF,EAAM,UAAUT,EAAM,gBAAAc,EAACJ,GAAA,CAAA,CAAc,CAAE;AAAA,IAAA,CACxC,IAGIK;AAAA,MACL,CAACC,OACCP,EAAM,UAAU,IAAIO,CAAQ,GACrB,MAAM;AACX,QAAAP,EAAM,UAAU,OAAOO,CAAQ,GAC3BP,EAAM,UAAU,OAAO,KAAKA,EAAM,YACpCA,EAAM,QAAA,GACNA,EAAM,UAAU,QAChBA,EAAM,QAAQ,QACdA,EAAM,UAAU;AAAA,MAClB;AAAA,MAGJ,MAAMA,EAAM;AAAA,MACZ,MAAMA,EAAM;AAAA,IAAA;AAAA,EACd;AAEJ;"}
1
+ {"version":3,"file":"createSharedHook.mjs","sources":["../../../../src/helpers/createSharedHook/createSharedHook.tsx"],"sourcesContent":["import { useEffect, useSyncExternalStore } from 'react';\nimport { createRoot } from 'react-dom/client';\n\nexport const mount = (component: React.ReactNode) => {\n const container = document.createElement('div');\n const root = createRoot(container);\n root.render(component);\n return () => {\n root.unmount();\n container.remove();\n };\n};\n\n/**\n * @name createSharedHook\n * @description - One shared instance of the hook globally. First subscriber's args are used; when subscribers hit zero, the runner unmounts.\n * @category Helpers\n * @usage low\n *\n * @warning - For complex interfaces, we strongly recommend using state management solutions outside of React like createStore, reatom, effector, or zustand instead of context\n *\n * @template Hook - The hook to create a shared instance of\n * @param {Hook} useHook - The hook to create a shared instance of\n * @returns {Hook & { useShared: typeof useShared }} - The shared hook\n *\n * @example\n * const useSharedMediaQuery = createSharedHook(useMediaQuery);\n * const matches = useSharedMediaQuery(\"(max-width: 768px)\");\n */\nexport const createSharedHook = <Hook extends (...args: any[]) => any>(useHook: Hook) => {\n if (typeof window === 'undefined') {\n const fn = (...args: Parameters<Hook>) => useHook(...args);\n fn.useShared = fn;\n return fn;\n }\n\n type Value = ReturnType<Hook>;\n const store = {\n state: undefined as Value | undefined,\n listeners: new Set<() => void>(),\n mounted: false,\n unmount: undefined as (() => void) | undefined\n };\n\n return function useShared(...args: Parameters<Hook>): Value {\n if (!store.mounted) {\n store.mounted = true;\n queueMicrotask(() => {\n const HookContainer = () => {\n const value = useHook(...args) as Value;\n useEffect(() => {\n store.state = value;\n store.listeners.forEach((l) => l());\n }, [value]);\n return null;\n };\n\n store.unmount = mount(<HookContainer />);\n });\n }\n\n return useSyncExternalStore(\n (callback) => {\n store.listeners.add(callback);\n return () => {\n store.listeners.delete(callback);\n if (store.listeners.size < 0 && store.unmount) {\n store.unmount();\n store.unmount = undefined;\n store.state = undefined;\n store.mounted = false;\n }\n };\n },\n () => store.state,\n () => store.state\n ) as Value;\n };\n};\n"],"names":["mount","component","container","root","createRoot","createSharedHook","useHook","fn","args","store","HookContainer","value","useEffect","l","jsx","useSyncExternalStore","callback"],"mappings":";;;AAGO,MAAMA,IAAQ,CAACC,MAA+B;AACnD,QAAMC,IAAY,SAAS,cAAc,KAAK,GACxCC,IAAOC,EAAWF,CAAS;AACjC,SAAAC,EAAK,OAAOF,CAAS,GACd,MAAM;AACX,IAAAE,EAAK,QAAA,GACLD,EAAU,OAAA;AAAA,EAAO;AAErB,GAkBaG,IAAmB,CAAuCC,MAAkB;AACvF,MAAI,OAAO,SAAW,KAAa;AACjC,UAAMC,IAAK,IAAIC,MAA2BF,EAAQ,GAAGE,CAAI;AACzD,WAAAD,EAAG,YAAYA,GACRA;AAAA,EAAA;AAIT,QAAME,IAAQ;AAAA,IACZ,OAAO;AAAA,IACP,+BAAe,IAAA;AAAA,IACf,SAAS;AAAA,IACT,SAAS;AAAA,EAAA;AAGX,SAAO,YAAsBD,GAA+B;AAC1D,WAAKC,EAAM,YACTA,EAAM,UAAU,IAChB,eAAe,MAAM;AACnB,YAAMC,IAAgB,MAAM;AAC1B,cAAMC,IAAQL,EAAQ,GAAGE,CAAI;AAC7B,eAAAI,EAAU,MAAM;AACd,UAAAH,EAAM,QAAQE,GACdF,EAAM,UAAU,QAAQ,CAACI,MAAMA,GAAG;AAAA,QAAA,GACjC,CAACF,CAAK,CAAC,GACH;AAAA,MAAA;AAGT,MAAAF,EAAM,UAAUT,EAAM,gBAAAc,EAACJ,GAAA,CAAA,CAAc,CAAE;AAAA,IAAA,CACxC,IAGIK;AAAA,MACL,CAACC,OACCP,EAAM,UAAU,IAAIO,CAAQ,GACrB,MAAM;AACX,QAAAP,EAAM,UAAU,OAAOO,CAAQ,GAC3BP,EAAM,UAAU,OAAO,KAAKA,EAAM,YACpCA,EAAM,QAAA,GACNA,EAAM,UAAU,QAChBA,EAAM,QAAQ,QACdA,EAAM,UAAU;AAAA,MAClB;AAAA,MAGJ,MAAMA,EAAM;AAAA,MACZ,MAAMA,EAAM;AAAA,IAAA;AAAA,EACd;AAEJ;"}
@@ -1,6 +1,6 @@
1
1
  import { useRef as g, useState as d } from "react";
2
2
  import { useRerender as b } from "../useRerender/useRerender.mjs";
3
- const E = (u, c) => {
3
+ const E = (u = "", c) => {
4
4
  const r = g(null), f = g(!1), o = b(), [v, l] = d(!1), [y, h] = d(c?.initialTouched ?? !1), [x, t] = d(void 0), s = () => r.current?.type === "radio" || r.current?.type === "checkbox" ? r.current.checked : r.current?.value ?? u, a = (e) => {
5
5
  if (r.current?.type === "radio" || r.current?.type === "checkbox")
6
6
  return r.current.checked = e, f.current ? o() : void 0;
@@ -1 +1 @@
1
- {"version":3,"file":"useField.mjs","sources":["../../../../src/hooks/useField/useField.ts"],"sourcesContent":["import type { RefObject } from 'react';\n\nimport { useRef, useState } from 'react';\n\nimport { useRerender } from '../useRerender/useRerender';\n\n/** The use field params type */\nexport interface UseFieldOptions {\n /** The auto focus */\n autoFocus?: boolean;\n /** The initial touched */\n initialTouched?: boolean;\n /** The validate on blur */\n validateOnBlur?: boolean;\n /** The validate on mount */\n validateOnChange?: boolean;\n /** The validate on mount */\n validateOnMount?: boolean;\n}\n\n/** The use field register params type */\nexport interface UseFieldRegisterParams {\n /** The min value validation */\n max?: {\n value: number;\n message: string;\n };\n /** The max length validation */\n maxLength?: {\n value: number;\n message: string;\n };\n /** The max value validation */\n min?: {\n value: number;\n message: string;\n };\n /** The min length validation */\n minLength?: {\n value: number;\n message: string;\n };\n /** The pattern validation */\n pattern?: {\n value: RegExp;\n message: string;\n };\n /** The required validation */\n required?: string;\n /** The custom validation */\n validate?: (value: string) => Promise<string | true>;\n}\n\n/** The use field return type */\nexport interface UseFieldReturn<Value> {\n /** The dirty state */\n dirty: boolean;\n /** The error state */\n error?: string;\n /** The input ref */\n ref: RefObject<HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement | null>;\n /** The set error function */\n touched: boolean;\n /** The set error function */\n clearError: () => void;\n /** The focus function */\n focus: () => void;\n /** The get value function */\n getValue: () => Value;\n /** The register function */\n register: (params?: UseFieldRegisterParams) => {\n onBlur: () => void;\n onChange: () => void;\n ref: (\n node: HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement | null | undefined\n ) => void;\n };\n /** The reset function */\n reset: () => void;\n /** The set error function */\n setError: (error: string) => void;\n /** The set value function */\n setValue: (value: Value) => void;\n /** The watch function */\n watch: () => Value;\n}\n\n/**\n * @name useField\n * @description - Hook to manage a form field\n * @category State\n * @usage medium\n *\n * @template Value The input value\n * @template Type The input value type\n * @param {Value} [params.initialValue] Initial value\n * @param {boolean} [params.initialTouched=false] Initial touched state\n * @param {boolean} [params.autoFocus=false] Auto focus\n * @param {boolean} [params.validateOnChange=false] Validate on change\n * @param {boolean} [params.validateOnBlur=false] Validate on blur\n * @param {boolean} [params.validateOnMount=false] Validate on mount\n * @returns {UseFieldReturn<Value>} An object containing input information\n *\n * @example\n * const { register, getValue, setValue, reset, dirty, error, setError, clearError, touched, focus, watch } = useField();\n */\nexport const useField = <\n Value extends boolean | number | string = string,\n Type = Value extends string ? string : Value extends boolean ? boolean : number\n>(\n initialValue?: Value,\n options?: UseFieldOptions\n): UseFieldReturn<Type> => {\n const inputRef = useRef<HTMLInputElement | null>(null);\n const watchingRef = useRef(false);\n const rerender = useRerender();\n\n const [dirty, setDirty] = useState(false);\n const [touched, setTouched] = useState(options?.initialTouched ?? false);\n const [error, setError] = useState<string | undefined>(undefined);\n\n const getValue = () => {\n if (inputRef.current?.type === 'radio' || inputRef.current?.type === 'checkbox')\n return inputRef.current.checked as Type;\n return (inputRef.current?.value ?? initialValue) as Type;\n };\n\n const setValue = (value: Type) => {\n if (inputRef.current?.type === 'radio' || inputRef.current?.type === 'checkbox') {\n inputRef.current.checked = value as boolean;\n if (watchingRef.current) return rerender();\n return;\n }\n\n inputRef.current!.value = value as string;\n if (watchingRef.current) return rerender();\n };\n\n const reset = () => {\n setValue(initialValue as unknown as Type);\n setDirty(false);\n setTouched(false);\n setError(undefined);\n };\n\n const focus = () => inputRef.current!.focus();\n\n const validate = (params: UseFieldRegisterParams) => {\n if (params.required && !inputRef.current!.value) {\n return setError(params.required);\n }\n\n if (params.minLength && inputRef.current!.value.length < params.minLength.value) {\n return setError(params.minLength.message);\n }\n\n if (params.maxLength && inputRef.current!.value.length > params.maxLength.value) {\n return setError(params.maxLength.message);\n }\n\n if (params.min && Number(inputRef.current!.value) < params.min.value) {\n return setError(params.min.message);\n }\n\n if (params.max && Number(inputRef.current!.value) > params.max.value) {\n return setError(params.max.message);\n }\n\n if (params.pattern && !params.pattern.value.test(inputRef.current!.value)) {\n return setError(params.pattern.message);\n }\n\n if (params.validate) {\n const error = params.validate(inputRef.current!.value);\n if (typeof error === 'string') return setError(error);\n }\n\n setError(undefined);\n };\n\n const register = (registerParams?: UseFieldRegisterParams) => ({\n ref: (node: HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement | null | undefined) => {\n if (!inputRef.current && node) {\n if (options?.autoFocus) node.focus();\n inputRef.current = node as HTMLInputElement;\n if (inputRef.current.type === 'radio') {\n inputRef.current.defaultChecked = initialValue === node.value;\n return;\n }\n if (inputRef.current.type === 'checkbox') {\n inputRef.current.defaultChecked = !!initialValue;\n return;\n }\n inputRef.current.defaultValue = String(initialValue);\n\n if (registerParams && options?.validateOnMount) validate(registerParams);\n }\n },\n onChange: async () => {\n if (watchingRef.current) return rerender();\n if (inputRef.current!.value !== initialValue) setDirty(true);\n if (dirty && inputRef.current!.value === initialValue) setDirty(false);\n if (registerParams && options?.validateOnChange) await validate(registerParams);\n if (registerParams && options?.validateOnBlur) setError(undefined);\n },\n onBlur: async () => {\n if (registerParams && options?.validateOnBlur) await validate(registerParams);\n setTouched(true);\n }\n });\n\n const watch = () => {\n watchingRef.current = true;\n return getValue();\n };\n\n const clearError = () => setError(undefined);\n\n return {\n register,\n dirty,\n touched,\n error,\n setError,\n clearError,\n getValue,\n setValue,\n reset,\n watch,\n focus,\n ref: inputRef\n };\n};\n"],"names":["useField","initialValue","options","inputRef","useRef","watchingRef","rerender","useRerender","dirty","setDirty","useState","touched","setTouched","error","setError","getValue","setValue","value","reset","focus","validate","params","registerParams","node"],"mappings":";;AA0GO,MAAMA,IAAW,CAItBC,GACAC,MACyB;AACzB,QAAMC,IAAWC,EAAgC,IAAI,GAC/CC,IAAcD,EAAO,EAAK,GAC1BE,IAAWC,EAAA,GAEX,CAACC,GAAOC,CAAQ,IAAIC,EAAS,EAAK,GAClC,CAACC,GAASC,CAAU,IAAIF,EAASR,GAAS,kBAAkB,EAAK,GACjE,CAACW,GAAOC,CAAQ,IAAIJ,EAA6B,MAAS,GAE1DK,IAAW,MACXZ,EAAS,SAAS,SAAS,WAAWA,EAAS,SAAS,SAAS,aAC5DA,EAAS,QAAQ,UAClBA,EAAS,SAAS,SAASF,GAG/Be,IAAW,CAACC,MAAgB;AAChC,QAAId,EAAS,SAAS,SAAS,WAAWA,EAAS,SAAS,SAAS;AAEnE,aADAA,EAAS,QAAQ,UAAUc,GACvBZ,EAAY,UAAgBC,EAAA,IAChC;AAIF,QADAH,EAAS,QAAS,QAAQc,GACtBZ,EAAY,QAAS,QAAOC,EAAA;AAAA,EAAS,GAGrCY,IAAQ,MAAM;AAClB,IAAAF,EAASf,CAA+B,GACxCQ,EAAS,EAAK,GACdG,EAAW,EAAK,GAChBE,EAAS,MAAS;AAAA,EAAA,GAGdK,IAAQ,MAAMhB,EAAS,QAAS,MAAA,GAEhCiB,IAAW,CAACC,MAAmC;AACnD,QAAIA,EAAO,YAAY,CAAClB,EAAS,QAAS;AACxC,aAAOW,EAASO,EAAO,QAAQ;AAGjC,QAAIA,EAAO,aAAalB,EAAS,QAAS,MAAM,SAASkB,EAAO,UAAU;AACxE,aAAOP,EAASO,EAAO,UAAU,OAAO;AAG1C,QAAIA,EAAO,aAAalB,EAAS,QAAS,MAAM,SAASkB,EAAO,UAAU;AACxE,aAAOP,EAASO,EAAO,UAAU,OAAO;AAG1C,QAAIA,EAAO,OAAO,OAAOlB,EAAS,QAAS,KAAK,IAAIkB,EAAO,IAAI;AAC7D,aAAOP,EAASO,EAAO,IAAI,OAAO;AAGpC,QAAIA,EAAO,OAAO,OAAOlB,EAAS,QAAS,KAAK,IAAIkB,EAAO,IAAI;AAC7D,aAAOP,EAASO,EAAO,IAAI,OAAO;AAGpC,QAAIA,EAAO,WAAW,CAACA,EAAO,QAAQ,MAAM,KAAKlB,EAAS,QAAS,KAAK;AACtE,aAAOW,EAASO,EAAO,QAAQ,OAAO;AAGxC,QAAIA,EAAO,UAAU;AACnB,YAAMR,IAAQQ,EAAO,SAASlB,EAAS,QAAS,KAAK;AACrD,UAAI,OAAOU,KAAU,SAAU,QAAOC,EAASD,CAAK;AAAA,IAAA;AAGtD,IAAAC,EAAS,MAAS;AAAA,EAAA;AAyCpB,SAAO;AAAA,IACL,UAvCe,CAACQ,OAA6C;AAAA,MAC7D,KAAK,CAACC,MAAwF;AAC5F,YAAI,CAACpB,EAAS,WAAWoB,GAAM;AAG7B,cAFIrB,GAAS,aAAWqB,EAAK,MAAA,GAC7BpB,EAAS,UAAUoB,GACfpB,EAAS,QAAQ,SAAS,SAAS;AACrC,YAAAA,EAAS,QAAQ,iBAAiBF,MAAiBsB,EAAK;AACxD;AAAA,UAAA;AAEF,cAAIpB,EAAS,QAAQ,SAAS,YAAY;AACxC,YAAAA,EAAS,QAAQ,iBAAiB,CAAC,CAACF;AACpC;AAAA,UAAA;AAEF,UAAAE,EAAS,QAAQ,eAAe,OAAOF,CAAY,GAE/CqB,KAAkBpB,GAAS,mBAAiBkB,EAASE,CAAc;AAAA,QAAA;AAAA,MACzE;AAAA,MAEF,UAAU,YAAY;AACpB,YAAIjB,EAAY,QAAS,QAAOC,EAAA;AAChC,QAAIH,EAAS,QAAS,UAAUF,OAAuB,EAAI,GACvDO,KAASL,EAAS,QAAS,UAAUF,OAAuB,EAAK,GACjEqB,KAAkBpB,GAAS,oBAAkB,MAAMkB,EAASE,CAAc,GAC1EA,KAAkBpB,GAAS,kBAAgBY,EAAS,MAAS;AAAA,MAAA;AAAA,MAEnE,QAAQ,YAAY;AAClB,QAAIQ,KAAkBpB,GAAS,kBAAgB,MAAMkB,EAASE,CAAc,GAC5EV,EAAW,EAAI;AAAA,MAAA;AAAA,IACjB;AAAA,IAYA,OAAAJ;AAAA,IACA,SAAAG;AAAA,IACA,OAAAE;AAAA,IACA,UAAAC;AAAA,IACA,YARiB,MAAMA,EAAS,MAAS;AAAA,IASzC,UAAAC;AAAA,IACA,UAAAC;AAAA,IACA,OAAAE;AAAA,IACA,OAjBY,OACZb,EAAY,UAAU,IACfU,EAAA;AAAA,IAgBP,OAAAI;AAAA,IACA,KAAKhB;AAAA,EAAA;AAET;"}
1
+ {"version":3,"file":"useField.mjs","sources":["../../../../src/hooks/useField/useField.ts"],"sourcesContent":["import type { RefObject } from 'react';\n\nimport { useRef, useState } from 'react';\n\nimport { useRerender } from '../useRerender/useRerender';\n\n/** The use field params type */\nexport interface UseFieldOptions {\n /** The auto focus */\n autoFocus?: boolean;\n /** The initial touched */\n initialTouched?: boolean;\n /** The validate on blur */\n validateOnBlur?: boolean;\n /** The validate on mount */\n validateOnChange?: boolean;\n /** The validate on mount */\n validateOnMount?: boolean;\n}\n\n/** The use field register params type */\nexport interface UseFieldRegisterParams {\n /** The min value validation */\n max?: {\n value: number;\n message: string;\n };\n /** The max length validation */\n maxLength?: {\n value: number;\n message: string;\n };\n /** The max value validation */\n min?: {\n value: number;\n message: string;\n };\n /** The min length validation */\n minLength?: {\n value: number;\n message: string;\n };\n /** The pattern validation */\n pattern?: {\n value: RegExp;\n message: string;\n };\n /** The required validation */\n required?: string;\n /** The custom validation */\n validate?: (value: string) => Promise<string | true>;\n}\n\n/** The use field return type */\nexport interface UseFieldReturn<Value> {\n /** The dirty state */\n dirty: boolean;\n /** The error state */\n error?: string;\n /** The input ref */\n ref: RefObject<HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement | null>;\n /** The set error function */\n touched: boolean;\n /** The set error function */\n clearError: () => void;\n /** The focus function */\n focus: () => void;\n /** The get value function */\n getValue: () => Value;\n /** The register function */\n register: (params?: UseFieldRegisterParams) => {\n onBlur: () => void;\n onChange: () => void;\n ref: (\n node: HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement | null | undefined\n ) => void;\n };\n /** The reset function */\n reset: () => void;\n /** The set error function */\n setError: (error: string) => void;\n /** The set value function */\n setValue: (value: Value) => void;\n /** The watch function */\n watch: () => Value;\n}\n\n/**\n * @name useField\n * @description - Hook to manage a form field\n * @category State\n * @usage medium\n *\n * @template Value The input value\n * @template Type The input value type\n * @param {Value} [params.initialValue = \"\"] Initial value\n * @param {boolean} [params.initialTouched=false] Initial touched state\n * @param {boolean} [params.autoFocus=false] Auto focus\n * @param {boolean} [params.validateOnChange=false] Validate on change\n * @param {boolean} [params.validateOnBlur=false] Validate on blur\n * @param {boolean} [params.validateOnMount=false] Validate on mount\n * @returns {UseFieldReturn<Value>} An object containing input information\n *\n * @example\n * const { register, getValue, setValue, reset, dirty, error, setError, clearError, touched, focus, watch } = useField();\n */\nexport const useField = <\n Value extends boolean | number | string = string,\n Type = Value extends string ? string : Value extends boolean ? boolean : number\n>(\n initialValue: Value = '' as Value,\n options?: UseFieldOptions\n): UseFieldReturn<Type> => {\n const inputRef = useRef<HTMLInputElement | null>(null);\n const watchingRef = useRef(false);\n const rerender = useRerender();\n\n const [dirty, setDirty] = useState(false);\n const [touched, setTouched] = useState(options?.initialTouched ?? false);\n const [error, setError] = useState<string | undefined>(undefined);\n\n const getValue = () => {\n if (inputRef.current?.type === 'radio' || inputRef.current?.type === 'checkbox')\n return inputRef.current.checked as Type;\n return (inputRef.current?.value ?? initialValue) as Type;\n };\n\n const setValue = (value: Type) => {\n if (inputRef.current?.type === 'radio' || inputRef.current?.type === 'checkbox') {\n inputRef.current.checked = value as boolean;\n if (watchingRef.current) return rerender();\n return;\n }\n\n inputRef.current!.value = value as string;\n if (watchingRef.current) return rerender();\n };\n\n const reset = () => {\n setValue(initialValue as unknown as Type);\n setDirty(false);\n setTouched(false);\n setError(undefined);\n };\n\n const focus = () => inputRef.current!.focus();\n\n const validate = (params: UseFieldRegisterParams) => {\n if (params.required && !inputRef.current!.value) {\n return setError(params.required);\n }\n\n if (params.minLength && inputRef.current!.value.length < params.minLength.value) {\n return setError(params.minLength.message);\n }\n\n if (params.maxLength && inputRef.current!.value.length > params.maxLength.value) {\n return setError(params.maxLength.message);\n }\n\n if (params.min && Number(inputRef.current!.value) < params.min.value) {\n return setError(params.min.message);\n }\n\n if (params.max && Number(inputRef.current!.value) > params.max.value) {\n return setError(params.max.message);\n }\n\n if (params.pattern && !params.pattern.value.test(inputRef.current!.value)) {\n return setError(params.pattern.message);\n }\n\n if (params.validate) {\n const error = params.validate(inputRef.current!.value);\n if (typeof error === 'string') return setError(error);\n }\n\n setError(undefined);\n };\n\n const register = (registerParams?: UseFieldRegisterParams) => ({\n ref: (node: HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement | null | undefined) => {\n if (!inputRef.current && node) {\n if (options?.autoFocus) node.focus();\n inputRef.current = node as HTMLInputElement;\n if (inputRef.current.type === 'radio') {\n inputRef.current.defaultChecked = initialValue === node.value;\n return;\n }\n if (inputRef.current.type === 'checkbox') {\n inputRef.current.defaultChecked = !!initialValue;\n return;\n }\n inputRef.current.defaultValue = String(initialValue);\n\n if (registerParams && options?.validateOnMount) validate(registerParams);\n }\n },\n onChange: async () => {\n if (watchingRef.current) return rerender();\n if (inputRef.current!.value !== initialValue) setDirty(true);\n if (dirty && inputRef.current!.value === initialValue) setDirty(false);\n if (registerParams && options?.validateOnChange) await validate(registerParams);\n if (registerParams && options?.validateOnBlur) setError(undefined);\n },\n onBlur: async () => {\n if (registerParams && options?.validateOnBlur) await validate(registerParams);\n setTouched(true);\n }\n });\n\n const watch = () => {\n watchingRef.current = true;\n return getValue();\n };\n\n const clearError = () => setError(undefined);\n\n return {\n register,\n dirty,\n touched,\n error,\n setError,\n clearError,\n getValue,\n setValue,\n reset,\n watch,\n focus,\n ref: inputRef\n };\n};\n"],"names":["useField","initialValue","options","inputRef","useRef","watchingRef","rerender","useRerender","dirty","setDirty","useState","touched","setTouched","error","setError","getValue","setValue","value","reset","focus","validate","params","registerParams","node"],"mappings":";;AA0GO,MAAMA,IAAW,CAItBC,IAAsB,IACtBC,MACyB;AACzB,QAAMC,IAAWC,EAAgC,IAAI,GAC/CC,IAAcD,EAAO,EAAK,GAC1BE,IAAWC,EAAA,GAEX,CAACC,GAAOC,CAAQ,IAAIC,EAAS,EAAK,GAClC,CAACC,GAASC,CAAU,IAAIF,EAASR,GAAS,kBAAkB,EAAK,GACjE,CAACW,GAAOC,CAAQ,IAAIJ,EAA6B,MAAS,GAE1DK,IAAW,MACXZ,EAAS,SAAS,SAAS,WAAWA,EAAS,SAAS,SAAS,aAC5DA,EAAS,QAAQ,UAClBA,EAAS,SAAS,SAASF,GAG/Be,IAAW,CAACC,MAAgB;AAChC,QAAId,EAAS,SAAS,SAAS,WAAWA,EAAS,SAAS,SAAS;AAEnE,aADAA,EAAS,QAAQ,UAAUc,GACvBZ,EAAY,UAAgBC,EAAA,IAChC;AAIF,QADAH,EAAS,QAAS,QAAQc,GACtBZ,EAAY,QAAS,QAAOC,EAAA;AAAA,EAAS,GAGrCY,IAAQ,MAAM;AAClB,IAAAF,EAASf,CAA+B,GACxCQ,EAAS,EAAK,GACdG,EAAW,EAAK,GAChBE,EAAS,MAAS;AAAA,EAAA,GAGdK,IAAQ,MAAMhB,EAAS,QAAS,MAAA,GAEhCiB,IAAW,CAACC,MAAmC;AACnD,QAAIA,EAAO,YAAY,CAAClB,EAAS,QAAS;AACxC,aAAOW,EAASO,EAAO,QAAQ;AAGjC,QAAIA,EAAO,aAAalB,EAAS,QAAS,MAAM,SAASkB,EAAO,UAAU;AACxE,aAAOP,EAASO,EAAO,UAAU,OAAO;AAG1C,QAAIA,EAAO,aAAalB,EAAS,QAAS,MAAM,SAASkB,EAAO,UAAU;AACxE,aAAOP,EAASO,EAAO,UAAU,OAAO;AAG1C,QAAIA,EAAO,OAAO,OAAOlB,EAAS,QAAS,KAAK,IAAIkB,EAAO,IAAI;AAC7D,aAAOP,EAASO,EAAO,IAAI,OAAO;AAGpC,QAAIA,EAAO,OAAO,OAAOlB,EAAS,QAAS,KAAK,IAAIkB,EAAO,IAAI;AAC7D,aAAOP,EAASO,EAAO,IAAI,OAAO;AAGpC,QAAIA,EAAO,WAAW,CAACA,EAAO,QAAQ,MAAM,KAAKlB,EAAS,QAAS,KAAK;AACtE,aAAOW,EAASO,EAAO,QAAQ,OAAO;AAGxC,QAAIA,EAAO,UAAU;AACnB,YAAMR,IAAQQ,EAAO,SAASlB,EAAS,QAAS,KAAK;AACrD,UAAI,OAAOU,KAAU,SAAU,QAAOC,EAASD,CAAK;AAAA,IAAA;AAGtD,IAAAC,EAAS,MAAS;AAAA,EAAA;AAyCpB,SAAO;AAAA,IACL,UAvCe,CAACQ,OAA6C;AAAA,MAC7D,KAAK,CAACC,MAAwF;AAC5F,YAAI,CAACpB,EAAS,WAAWoB,GAAM;AAG7B,cAFIrB,GAAS,aAAWqB,EAAK,MAAA,GAC7BpB,EAAS,UAAUoB,GACfpB,EAAS,QAAQ,SAAS,SAAS;AACrC,YAAAA,EAAS,QAAQ,iBAAiBF,MAAiBsB,EAAK;AACxD;AAAA,UAAA;AAEF,cAAIpB,EAAS,QAAQ,SAAS,YAAY;AACxC,YAAAA,EAAS,QAAQ,iBAAiB,CAAC,CAACF;AACpC;AAAA,UAAA;AAEF,UAAAE,EAAS,QAAQ,eAAe,OAAOF,CAAY,GAE/CqB,KAAkBpB,GAAS,mBAAiBkB,EAASE,CAAc;AAAA,QAAA;AAAA,MACzE;AAAA,MAEF,UAAU,YAAY;AACpB,YAAIjB,EAAY,QAAS,QAAOC,EAAA;AAChC,QAAIH,EAAS,QAAS,UAAUF,OAAuB,EAAI,GACvDO,KAASL,EAAS,QAAS,UAAUF,OAAuB,EAAK,GACjEqB,KAAkBpB,GAAS,oBAAkB,MAAMkB,EAASE,CAAc,GAC1EA,KAAkBpB,GAAS,kBAAgBY,EAAS,MAAS;AAAA,MAAA;AAAA,MAEnE,QAAQ,YAAY;AAClB,QAAIQ,KAAkBpB,GAAS,kBAAgB,MAAMkB,EAASE,CAAc,GAC5EV,EAAW,EAAI;AAAA,MAAA;AAAA,IACjB;AAAA,IAYA,OAAAJ;AAAA,IACA,SAAAG;AAAA,IACA,OAAAE;AAAA,IACA,UAAAC;AAAA,IACA,YARiB,MAAMA,EAAS,MAAS;AAAA,IASzC,UAAAC;AAAA,IACA,UAAAC;AAAA,IACA,OAAAE;AAAA,IACA,OAjBY,OACZb,EAAY,UAAU,IACfU,EAAA;AAAA,IAgBP,OAAAI;AAAA,IACA,KAAKhB;AAAA,EAAA;AAET;"}
@@ -83,7 +83,7 @@ export interface UseFieldReturn<Value> {
83
83
  *
84
84
  * @template Value The input value
85
85
  * @template Type The input value type
86
- * @param {Value} [params.initialValue] Initial value
86
+ * @param {Value} [params.initialValue = ""] Initial value
87
87
  * @param {boolean} [params.initialTouched=false] Initial touched state
88
88
  * @param {boolean} [params.autoFocus=false] Auto focus
89
89
  * @param {boolean} [params.validateOnChange=false] Validate on change