@koine/react 2.0.0-beta.76 → 2.0.0-beta.78
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.
- package/FaviconTags.cjs.d.ts +2 -0
- package/FaviconTags.cjs.default.js +1 -0
- package/FaviconTags.cjs.js +12 -0
- package/FaviconTags.cjs.mjs +2 -0
- package/FaviconTags.esm.js +7 -0
- package/Meta.cjs.d.ts +2 -0
- package/Meta.cjs.default.js +1 -0
- package/Meta.cjs.js +12 -0
- package/Meta.cjs.mjs +2 -0
- package/Meta.esm.js +7 -0
- package/NoJs.cjs.d.ts +2 -0
- package/NoJs.cjs.default.js +1 -0
- package/NoJs.cjs.js +14 -0
- package/NoJs.cjs.mjs +2 -0
- package/NoJs.esm.js +9 -0
- package/Polymorphic.cjs.d.ts +1 -0
- package/Polymorphic.cjs.default.js +1 -0
- package/Polymorphic.cjs.js +2 -0
- package/Polymorphic.cjs.mjs +2 -0
- package/Polymorphic.esm.js +1 -0
- package/README.md +1 -0
- package/calendar.cjs.d.ts +1 -0
- package/calendar.cjs.default.js +1 -0
- package/calendar.cjs.js +588 -0
- package/calendar.cjs.mjs +2 -0
- package/calendar.esm.js +561 -0
- package/classed.cjs.d.ts +2 -0
- package/classed.cjs.default.js +1 -0
- package/classed.cjs.js +48 -0
- package/classed.cjs.mjs +2 -0
- package/classed.d.ts +1 -1
- package/classed.esm.js +43 -0
- package/createUseMediaQueryWidth.cjs.d.ts +2 -0
- package/createUseMediaQueryWidth.cjs.default.js +1 -0
- package/createUseMediaQueryWidth.cjs.js +45 -0
- package/createUseMediaQueryWidth.cjs.mjs +2 -0
- package/createUseMediaQueryWidth.esm.js +40 -0
- package/extendComponent.cjs.d.ts +2 -0
- package/extendComponent.cjs.default.js +1 -0
- package/extendComponent.cjs.js +16 -0
- package/extendComponent.cjs.mjs +2 -0
- package/extendComponent.esm.js +11 -0
- package/forms.cjs.d.ts +1 -0
- package/forms.cjs.default.js +1 -0
- package/forms.cjs.js +37 -0
- package/forms.cjs.mjs +2 -0
- package/forms.esm.js +32 -0
- package/index.cjs.d.ts +1 -0
- package/index.cjs.default.js +1 -0
- package/index.cjs.js +63 -0
- package/index.cjs.mjs +2 -0
- package/index.esm.js +30 -0
- package/mergeRefs.cjs.d.ts +2 -0
- package/mergeRefs.cjs.default.js +1 -0
- package/mergeRefs.cjs.js +19 -0
- package/mergeRefs.cjs.mjs +2 -0
- package/mergeRefs.esm.js +14 -0
- package/package.json +110 -122
- package/types.cjs.d.ts +1 -0
- package/types.cjs.default.js +1 -0
- package/types.cjs.js +2 -0
- package/types.cjs.mjs +2 -0
- package/types.esm.js +1 -0
- package/useAsyncFn.cjs.d.ts +2 -0
- package/useAsyncFn.cjs.default.js +1 -0
- package/useAsyncFn.cjs.js +33 -0
- package/useAsyncFn.cjs.mjs +2 -0
- package/useAsyncFn.esm.js +28 -0
- package/useFirstMountState.cjs.d.ts +2 -0
- package/useFirstMountState.cjs.default.js +1 -0
- package/useFirstMountState.cjs.js +17 -0
- package/useFirstMountState.cjs.mjs +2 -0
- package/useFirstMountState.esm.js +12 -0
- package/useFixedOffset.cjs.d.ts +2 -0
- package/useFixedOffset.cjs.default.js +1 -0
- package/useFixedOffset.cjs.js +49 -0
- package/useFixedOffset.cjs.mjs +2 -0
- package/useFixedOffset.esm.js +44 -0
- package/useFocus.cjs.d.ts +2 -0
- package/useFocus.cjs.default.js +1 -0
- package/useFocus.cjs.js +16 -0
- package/useFocus.cjs.mjs +2 -0
- package/useFocus.esm.js +11 -0
- package/useInterval.cjs.d.ts +2 -0
- package/useInterval.cjs.default.js +1 -0
- package/useInterval.cjs.js +27 -0
- package/useInterval.cjs.mjs +2 -0
- package/useInterval.esm.js +22 -0
- package/useIsomorphicLayoutEffect.cjs.d.ts +2 -0
- package/useIsomorphicLayoutEffect.cjs.default.js +1 -0
- package/useIsomorphicLayoutEffect.cjs.js +11 -0
- package/useIsomorphicLayoutEffect.cjs.mjs +2 -0
- package/useIsomorphicLayoutEffect.d.ts +2 -2
- package/useIsomorphicLayoutEffect.esm.js +6 -0
- package/useKeyUp.cjs.d.ts +2 -0
- package/useKeyUp.cjs.default.js +1 -0
- package/useKeyUp.cjs.js +23 -0
- package/useKeyUp.cjs.mjs +2 -0
- package/useKeyUp.esm.js +18 -0
- package/useMeasure.cjs.d.ts +2 -0
- package/useMeasure.cjs.default.js +1 -0
- package/useMeasure.cjs.js +126 -0
- package/useMeasure.cjs.mjs +2 -0
- package/useMeasure.esm.js +121 -0
- package/useMountedState.cjs.d.ts +2 -0
- package/useMountedState.cjs.default.js +1 -0
- package/useMountedState.cjs.js +20 -0
- package/useMountedState.cjs.mjs +2 -0
- package/useMountedState.esm.js +15 -0
- package/useNavigateAway.cjs.d.ts +2 -0
- package/useNavigateAway.cjs.default.js +1 -0
- package/useNavigateAway.cjs.js +32 -0
- package/useNavigateAway.cjs.mjs +2 -0
- package/useNavigateAway.esm.js +27 -0
- package/usePrevious.cjs.d.ts +2 -0
- package/usePrevious.cjs.default.js +1 -0
- package/usePrevious.cjs.js +16 -0
- package/usePrevious.cjs.mjs +2 -0
- package/usePrevious.esm.js +11 -0
- package/usePreviousRef.cjs.d.ts +2 -0
- package/usePreviousRef.cjs.default.js +1 -0
- package/usePreviousRef.cjs.js +16 -0
- package/usePreviousRef.cjs.mjs +2 -0
- package/usePreviousRef.esm.js +11 -0
- package/useScrollPosition.cjs.d.ts +2 -0
- package/useScrollPosition.cjs.default.js +1 -0
- package/useScrollPosition.cjs.js +65 -0
- package/useScrollPosition.cjs.mjs +2 -0
- package/useScrollPosition.esm.js +60 -0
- package/useScrollThreshold.cjs.d.ts +2 -0
- package/useScrollThreshold.cjs.default.js +1 -0
- package/useScrollThreshold.cjs.js +33 -0
- package/useScrollThreshold.cjs.mjs +2 -0
- package/useScrollThreshold.esm.js +28 -0
- package/useScrollTo.cjs.d.ts +2 -0
- package/useScrollTo.cjs.default.js +1 -0
- package/useScrollTo.cjs.js +25 -0
- package/useScrollTo.cjs.mjs +2 -0
- package/useScrollTo.esm.js +20 -0
- package/useSmoothScroll.cjs.d.ts +2 -0
- package/useSmoothScroll.cjs.default.js +1 -0
- package/useSmoothScroll.cjs.js +40 -0
- package/useSmoothScroll.cjs.mjs +2 -0
- package/useSmoothScroll.esm.js +35 -0
- package/useSpinDelay.cjs.d.ts +2 -0
- package/useSpinDelay.cjs.default.js +1 -0
- package/useSpinDelay.cjs.js +43 -0
- package/useSpinDelay.cjs.mjs +2 -0
- package/useSpinDelay.esm.js +38 -0
- package/useTraceUpdate.cjs.d.ts +2 -0
- package/useTraceUpdate.cjs.default.js +1 -0
- package/useTraceUpdate.cjs.js +24 -0
- package/useTraceUpdate.cjs.mjs +2 -0
- package/useTraceUpdate.esm.js +19 -0
- package/useUpdateEffect.cjs.d.ts +2 -0
- package/useUpdateEffect.cjs.default.js +1 -0
- package/useUpdateEffect.cjs.js +18 -0
- package/useUpdateEffect.cjs.mjs +2 -0
- package/useUpdateEffect.esm.js +13 -0
- package/useWindowSize.cjs.d.ts +2 -0
- package/useWindowSize.cjs.default.js +1 -0
- package/useWindowSize.cjs.js +27 -0
- package/useWindowSize.cjs.mjs +2 -0
- package/useWindowSize.esm.js +22 -0
- package/FaviconTags.js +0 -1
- package/Meta.js +0 -1
- package/NoJs.js +0 -1
- package/Polymorphic.js +0 -1
- package/calendar/CalendarDaygridCell.js +0 -1
- package/calendar/CalendarDaygridNav.js +0 -1
- package/calendar/CalendarDaygridTable.js +0 -1
- package/calendar/CalendarLegend.js +0 -1
- package/calendar/calendar-api-google.js +0 -1
- package/calendar/types.js +0 -1
- package/calendar/useCalendar.js +0 -1
- package/calendar/useDateLocale.js +0 -1
- package/calendar/utils.js +0 -1
- package/calendar.js +0 -1
- package/cjs/FaviconTags.d.ts +0 -9
- package/cjs/FaviconTags.js +0 -1
- package/cjs/Meta.d.ts +0 -5
- package/cjs/Meta.js +0 -1
- package/cjs/NoJs.d.ts +0 -3
- package/cjs/NoJs.js +0 -1
- package/cjs/Polymorphic.d.ts +0 -26
- package/cjs/Polymorphic.js +0 -1
- package/cjs/calendar/CalendarDaygridCell.d.ts +0 -35
- package/cjs/calendar/CalendarDaygridCell.js +0 -1
- package/cjs/calendar/CalendarDaygridNav.d.ts +0 -27
- package/cjs/calendar/CalendarDaygridNav.js +0 -1
- package/cjs/calendar/CalendarDaygridTable.d.ts +0 -25
- package/cjs/calendar/CalendarDaygridTable.js +0 -1
- package/cjs/calendar/CalendarLegend.d.ts +0 -18
- package/cjs/calendar/CalendarLegend.js +0 -1
- package/cjs/calendar/calendar-api-google.d.ts +0 -10
- package/cjs/calendar/calendar-api-google.js +0 -1
- package/cjs/calendar/types.d.ts +0 -62
- package/cjs/calendar/types.js +0 -1
- package/cjs/calendar/useCalendar.d.ts +0 -35
- package/cjs/calendar/useCalendar.js +0 -1
- package/cjs/calendar/useDateLocale.d.ts +0 -2
- package/cjs/calendar/useDateLocale.js +0 -1
- package/cjs/calendar/utils.d.ts +0 -11
- package/cjs/calendar/utils.js +0 -1
- package/cjs/calendar.d.ts +0 -7
- package/cjs/calendar.js +0 -1
- package/cjs/classed.d.ts +0 -8
- package/cjs/classed.js +0 -1
- package/cjs/createUseMediaQueryWidth.d.ts +0 -6
- package/cjs/createUseMediaQueryWidth.js +0 -1
- package/cjs/extendComponent.d.ts +0 -16
- package/cjs/extendComponent.js +0 -1
- package/cjs/forms/antispam.d.ts +0 -27
- package/cjs/forms/antispam.js +0 -1
- package/cjs/forms.d.ts +0 -1
- package/cjs/forms.js +0 -1
- package/cjs/index.d.ts +0 -28
- package/cjs/index.js +0 -1
- package/cjs/mergeRefs.d.ts +0 -2
- package/cjs/mergeRefs.js +0 -1
- package/cjs/package.json +0 -31
- package/cjs/types.d.ts +0 -2
- package/cjs/types.js +0 -1
- package/cjs/useAsyncFn.d.ts +0 -24
- package/cjs/useAsyncFn.js +0 -1
- package/cjs/useFirstMountState.d.ts +0 -2
- package/cjs/useFirstMountState.js +0 -1
- package/cjs/useFixedOffset.d.ts +0 -2
- package/cjs/useFixedOffset.js +0 -1
- package/cjs/useFocus.d.ts +0 -2
- package/cjs/useFocus.js +0 -1
- package/cjs/useInterval.d.ts +0 -2
- package/cjs/useInterval.js +0 -1
- package/cjs/useIsomorphicLayoutEffect.d.ts +0 -3
- package/cjs/useIsomorphicLayoutEffect.js +0 -1
- package/cjs/useKeyUp.d.ts +0 -2
- package/cjs/useKeyUp.js +0 -1
- package/cjs/useMeasure.d.ts +0 -22
- package/cjs/useMeasure.js +0 -1
- package/cjs/useMountedState.d.ts +0 -2
- package/cjs/useMountedState.js +0 -1
- package/cjs/useNavigateAway.d.ts +0 -3
- package/cjs/useNavigateAway.js +0 -1
- package/cjs/usePrevious.d.ts +0 -2
- package/cjs/usePrevious.js +0 -1
- package/cjs/usePreviousRef.d.ts +0 -2
- package/cjs/usePreviousRef.js +0 -1
- package/cjs/useReveal.d.ts +0 -13
- package/cjs/useReveal.js +0 -1
- package/cjs/useScrollPosition.d.ts +0 -7
- package/cjs/useScrollPosition.js +0 -1
- package/cjs/useScrollThreshold.d.ts +0 -2
- package/cjs/useScrollThreshold.js +0 -1
- package/cjs/useScrollTo.d.ts +0 -2
- package/cjs/useScrollTo.js +0 -1
- package/cjs/useSmoothScroll.d.ts +0 -2
- package/cjs/useSmoothScroll.js +0 -1
- package/cjs/useSpinDelay.d.ts +0 -2
- package/cjs/useSpinDelay.js +0 -1
- package/cjs/useTraceUpdate.d.ts +0 -2
- package/cjs/useTraceUpdate.js +0 -1
- package/cjs/useUpdateEffect.d.ts +0 -3
- package/cjs/useUpdateEffect.js +0 -1
- package/cjs/useWindowSize.d.ts +0 -3
- package/cjs/useWindowSize.js +0 -1
- package/classed.js +0 -1
- package/createUseMediaQueryWidth.js +0 -1
- package/extendComponent.js +0 -1
- package/forms/antispam.js +0 -1
- package/forms.js +0 -1
- package/index.js +0 -1
- package/mergeRefs.js +0 -1
- package/types.js +0 -1
- package/useAsyncFn.js +0 -1
- package/useFirstMountState.js +0 -1
- package/useFixedOffset.js +0 -1
- package/useFocus.js +0 -1
- package/useInterval.js +0 -1
- package/useIsomorphicLayoutEffect.js +0 -1
- package/useKeyUp.js +0 -1
- package/useMeasure.js +0 -1
- package/useMountedState.js +0 -1
- package/useNavigateAway.js +0 -1
- package/usePrevious.js +0 -1
- package/usePreviousRef.js +0 -1
- package/useReveal.js +0 -1
- package/useScrollPosition.js +0 -1
- package/useScrollThreshold.js +0 -1
- package/useScrollTo.js +0 -1
- package/useSmoothScroll.js +0 -1
- package/useSpinDelay.js +0 -1
- package/useTraceUpdate.js +0 -1
- package/useUpdateEffect.js +0 -1
- package/useWindowSize.js +0 -1
package/cjs/useMeasure.d.ts
DELETED
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
interface RectReadOnly {
|
|
2
|
-
readonly x: number;
|
|
3
|
-
readonly y: number;
|
|
4
|
-
readonly width: number;
|
|
5
|
-
readonly height: number;
|
|
6
|
-
readonly top: number;
|
|
7
|
-
readonly right: number;
|
|
8
|
-
readonly bottom: number;
|
|
9
|
-
readonly left: number;
|
|
10
|
-
[key: string]: number;
|
|
11
|
-
}
|
|
12
|
-
type HTMLOrSVGElement = HTMLElement | SVGElement;
|
|
13
|
-
export type UseMeasureOptions = {
|
|
14
|
-
scroll?: boolean;
|
|
15
|
-
};
|
|
16
|
-
export type UseMeasureReturn = [
|
|
17
|
-
(element: HTMLOrSVGElement | null) => void,
|
|
18
|
-
RectReadOnly,
|
|
19
|
-
() => void
|
|
20
|
-
];
|
|
21
|
-
export declare let useMeasure: (options?: UseMeasureOptions) => UseMeasureReturn;
|
|
22
|
-
export default useMeasure;
|
package/cjs/useMeasure.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
let e;import{useEffect as t,useMemo as r,useRef as n,useState as u}from"react";import{debounce as l,noop as o}from"@koine/utils";import{listenResizeDebounced as c,listenScrollDebounced as i,off as s,on as f}from"@koine/dom";let m=e=>{let t=[];if(!e||e===document.body)return t;let{overflow:r,overflowX:n,overflowY:u}=window.getComputedStyle(e);return[r,n,u].some(e=>"auto"===e||"scroll"===e)&&t.push(e),[...t,...m(e.parentElement)]},p=["x","y","top","bottom","left","right","width","height"],d=(e,t)=>p.every(r=>e[r]===t[r]);export let useMeasure=p=>{let{scroll:h=!1}=p||{},[a,b]=u({left:0,top:0,width:0,height:0,bottom:0,right:0,x:0,y:0}),g=n([null,null,null,a]),v=n(!1);t(()=>(v.current=!0,()=>void(v.current=!1)),[]);let[w,,y]=r(()=>{let e=(...e)=>{let[t,,,r]=g.current;if(!t)return;let n=t.getBoundingClientRect();Object.freeze(n),v.current&&!d(r,n)&&(g.current[3]=n,b(n))},t=l(e);return[e,t,t]},[b]);function x(){let[,e,t]=g.current;e&&(e.forEach(e=>s(e,"scroll",y)),g.current[1]=null),t&&(t.disconnect(),g.current[2]=null)}function z(){let[t,r]=g.current;t&&!e&&ResizeObserver&&(e=new ResizeObserver(y),g.current[2]=e,e.observe(t),h&&r&&r.forEach(e=>f(e,"scroll",y,{capture:!0,passive:!0})))}return t(()=>h?i(0,w,100):o,[h,w]),t(()=>c(0,w,100),[w]),t(()=>{x(),z()},[h]),t(()=>(w(),x),[]),[e=>{e&&e!==g.current[0]&&(x(),g.current[0]=e,g.current[1]=m(e),z())},a,w]};export default useMeasure;
|
package/cjs/useMountedState.d.ts
DELETED
package/cjs/useMountedState.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{useCallback as t,useEffect as e,useRef as r}from"react";export let useMountedState=()=>{let u=r(!1),n=t(()=>u.current,[]);return e(()=>(u.current=!0,()=>{u.current=!1}),[]),n};export default useMountedState;
|
package/cjs/useNavigateAway.d.ts
DELETED
package/cjs/useNavigateAway.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{useEffect as e,useRef as t}from"react";import{on as r}from"@koine/dom";export let useNavigateAway=a=>{let o=t();e(()=>{o.current=e=>{let t=a(e);return(t&&e.preventDefault(),"string"==typeof t)?e.returnValue=t:e.defaultPrevented?e.returnValue="":void 0}},[a]),e(()=>r(window,"beforeunload",e=>o.current?.(e)),[])};export default useNavigateAway;
|
package/cjs/usePrevious.d.ts
DELETED
package/cjs/usePrevious.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{useState as e}from"react";export let usePrevious=(r,t)=>{let[o,u]=e([r,t]);return o[1]!==r&&u([o[1],r]),o[0]};export default usePrevious;
|
package/cjs/usePreviousRef.d.ts
DELETED
package/cjs/usePreviousRef.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{useEffect as e,useRef as r}from"react";export let usePreviousRef=t=>{let u=r();return e(()=>{u.current=t}),u.current};export default usePreviousRef;
|
package/cjs/useReveal.d.ts
DELETED
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
export type UseRevealOptions = {
|
|
2
|
-
direction?: "left" | "right";
|
|
3
|
-
offsetStartY?: number;
|
|
4
|
-
offsetEndY?: number;
|
|
5
|
-
offsetStartX?: number | "all";
|
|
6
|
-
};
|
|
7
|
-
export declare let useReveal: <T extends HTMLElement = HTMLDivElement>({ direction, offsetStartY, offsetEndY, offsetStartX, }: UseRevealOptions) => {
|
|
8
|
-
ref: import("react").RefObject<T>;
|
|
9
|
-
startY: number;
|
|
10
|
-
endY: number;
|
|
11
|
-
startX: number;
|
|
12
|
-
};
|
|
13
|
-
export default useReveal;
|
package/cjs/useReveal.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{useEffect as e,useRef as t,useState as l}from"react";export let useReveal=({direction:n="left",offsetStartY:o=-2,offsetEndY:r=0,offsetStartX:u="all"})=>{let c=t(null),[i,d]=l(0),[f,m]=l(0),[a,g]=l(0);return e(()=>{let e;if(!c.current)return;let t=c.current.getBoundingClientRect(),l=window.scrollY||document.documentElement.scrollTop,i=t.height,f=t.top+l,a=o?i*o:0,h=r?i*r:a,p=(f+a)/document.body.clientHeight,s=(f+i+h)/document.body.clientHeight;"all"===u?e="left"===n?-t.right:t.left:(e=t.width*u,e="left"===n?-e:e),d(p),m(s),g(e)},[d,m,g,o,r,u,n]),{ref:c,startY:i,endY:f,startX:a}};export default useReveal;
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
type Position = {
|
|
2
|
-
x: number;
|
|
3
|
-
y: number;
|
|
4
|
-
};
|
|
5
|
-
type ElementRef = React.MutableRefObject<HTMLElement | undefined>;
|
|
6
|
-
export declare let useScrollPosition: (effect: (currentPosition: Position, prevPosition: Position) => void, deps?: import("react").DependencyList, element?: ElementRef, boundingElement?: ElementRef, wait?: number) => void;
|
|
7
|
-
export default useScrollPosition;
|
package/cjs/useScrollPosition.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{useRef as t}from"react";import{isBrowser as r}from"@koine/utils";import{listenScroll as e}from"@koine/dom";import{useIsomorphicLayoutEffect as o}from"./useIsomorphicLayoutEffect";let l={x:0,y:0},n=t=>t?.getBoundingClientRect(),u=(t,e)=>{if(!r)return l;if(!e)return{x:window.scrollX,y:window.scrollY};let o=n(t?.current||document.body),u=n(e.current);return o?u?{x:(u.x||0)-(o.x||0),y:(u.y||0)-(o.y||0)}:{x:o.left,y:o.top}:l};export let useScrollPosition=(l,n=[],i,c,m)=>{let f=t(u(null,c)),s=null,d=()=>{let t=u(i,c);l(t,f.current),f.current=t,s=null};o(()=>{if(!r)return;let t=e(()=>{m?null===s&&(s=window.setTimeout(d,m)):d()},c?.current);return()=>{t(),s&&clearTimeout(s)}},n)};export default useScrollPosition;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{useCallback as r,useEffect as e,useState as o}from"react";import{noop as t}from"@koine/utils";import{listenScroll as l}from"@koine/dom";export let useScrollThreshold=(i,m)=>{let[u,f]=o(!1),n=r(()=>{if(i){let r=window.scrollY,e=r<i,o=r>i;f(o),m&&m(e,o)}},[i,m]);return e(()=>{if(i){let r=l(n);return n(),r}return t},[i,n]),u};export default useScrollThreshold;
|
package/cjs/useScrollTo.d.ts
DELETED
package/cjs/useScrollTo.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{isBrowser as e}from"@koine/utils";export let useScrollTo=(o="",t=0)=>{if(!e)return;let l=document.getElementById(o),r=0;if(l&&l.offsetParent)do r+=l.offsetTop;while(l=l.offsetParent)r-=t,r-=0,window.scroll(0,r)};export default useScrollTo;
|
package/cjs/useSmoothScroll.d.ts
DELETED
package/cjs/useSmoothScroll.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{useCallback as e}from"react";import{isNumber as t}from"@koine/utils";import{getOffsetTopSlim as o,scrollTo as r}from"@koine/dom";import{useFixedOffset as l}from"./useFixedOffset";export let useSmoothScroll=m=>{let i=l();return e((e,l,f,u,n)=>{let c;let p=!1;if(t(e))c=e;else if(e){let t=document.getElementById(e);t&&(c=o(t)-i.current,p=!0)}t(c)&&r(c=c+(l||0)+(m||p?0:i.current),f,u,n)},[m,i])};export default useSmoothScroll;
|
package/cjs/useSpinDelay.d.ts
DELETED
package/cjs/useSpinDelay.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{useEffect as e,useRef as r,useState as t}from"react";export let useSpinDelay=(u,c=500,i=200)=>{let[n,o]=t(0),l=r();return e(()=>{u&&0===n&&(clearTimeout(l.current),l.current=setTimeout(()=>{if(!u)return o(0);l.current=setTimeout(()=>{o(3)},i),o(2)},c),o(1)),u||2===n||(clearTimeout(l.current),o(0))},[u,n,c,i]),e(()=>()=>clearTimeout(l.current),[]),2===n||3===n};export default useSpinDelay;
|
package/cjs/useTraceUpdate.d.ts
DELETED
package/cjs/useTraceUpdate.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{useEffect as e,useRef as t}from"react";export let useTraceUpdate=r=>{let c=t(r);e(()=>{let e=Object.entries(r).reduce((e,[t,r])=>(c.current[t]!==r&&(e[t]=[c.current[t],r]),e),{});Object.keys(e).length>0&&console.info("[@koine/react:useTraceUpdate] changed props:",e),c.current=r})};export default useTraceUpdate;
|
package/cjs/useUpdateEffect.d.ts
DELETED
package/cjs/useUpdateEffect.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{useEffect as t}from"react";import{useFirstMountState as e}from"./useFirstMountState";export let useUpdateEffect=(r,f)=>{let o=e();t(()=>{if(!o)return r()},f)};export default useUpdateEffect;
|
package/cjs/useWindowSize.d.ts
DELETED
package/cjs/useWindowSize.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{useEffect as e,useState as i}from"react";import{listenResize as r,listenResizeDebounced as t}from"@koine/dom";export let useWindowSize=(o,n)=>{let[d,w]=i(0),[m,u]=i(0);return e(()=>{let e=()=>{w(window.innerWidth),u(window.innerHeight)},i=o?t(0,e,o,n):r(e);return e(),i},[o,n]),[d,m]};export default useWindowSize;
|
package/classed.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{createElement as t,forwardRef as e}from"react";export let classed=r=>{let s=r.type||r;return function(r,...a){return e(function(e,n){let o=a.map((t,s)=>{let a="";return"function"==typeof t?a=t(e):void 0!==t&&(a=t.toString()),r[s]+a}).join(""),l="string"==typeof s,i=l?{}:e;if(l)for(let t in e)t.startsWith("$")||(i[t]=e[t]);let c=o||r[0];return c=(c.match(/class="([^"]*)/)?.[1]||c)+(e?.className?" "+e?.className:""),t(s,{...i,className:c||void 0,ref:n})})}};export default classed;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{useState as e}from"react";import{getMediaQueryWidthResolvers as t,isUndefined as r}from"@koine/utils";import{useIsomorphicLayoutEffect as i}from"./useIsomorphicLayoutEffect";export let createUseMediaQueryWidth=n=>{let a=t(n);return function(t,n){let[o,s]=t.substring(1).split("-");r(s)&&(s=o),r(o)&&(o="min");let[d,m]=s.split("_"),u=a[o](d,m),[c,l]=e(r(n)?null:n);return i(()=>{let e=window.matchMedia(u),t=e=>{l(e.matches)};return(l(e.matches),e.addEventListener)?(e.addEventListener("change",t),()=>{e.removeEventListener("change",t)}):(e.addListener(t),()=>{e.removeListener(t)})},[u]),c}};export default createUseMediaQueryWidth;
|
package/extendComponent.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{createElement as e}from"react";export let extendComponent=(t,o)=>Object.assign(o=>e(t,o),{...o,defaultProps:o});export default extendComponent;
|
package/forms/antispam.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{object as e}from"@kuus/yup";import{decode as t,encode as r,isUndefined as o}from"@koine/utils";export let encodeForm=t=>{let o={},i={};for(let e in t)if(!e.startsWith("_")){let l=r(e);o[l]=t[e],i[e]=l}return{encodedSchema:e(o).required(),encodedNames:i}};export let decodeForm=e=>{let r={};for(let i in e){let l=t(i);i.startsWith("_")?r[i.substring(1)]=e[i]:o(e[i])||""!==e[l]||(r[l]=e[i])}return r};
|
package/forms.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export*from"./forms/antispam";
|
package/index.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export{classed}from"./classed";export{createUseMediaQueryWidth}from"./createUseMediaQueryWidth";export{extendComponent}from"./extendComponent";export{FaviconTags}from"./FaviconTags";export{mergeRefs}from"./mergeRefs";export{Meta}from"./Meta";export{NoJs}from"./NoJs";export{useAsyncFn}from"./useAsyncFn";export{useFirstMountState}from"./useFirstMountState";export{useFixedOffset}from"./useFixedOffset";export{useFocus}from"./useFocus";export{useInterval}from"./useInterval";export{useIsomorphicLayoutEffect}from"./useIsomorphicLayoutEffect";export{useKeyUp}from"./useKeyUp";export{useMeasure}from"./useMeasure";export{useMountedState}from"./useMountedState";export{useNavigateAway}from"./useNavigateAway";export{usePrevious}from"./usePrevious";export{usePreviousRef}from"./usePreviousRef";export{useScrollPosition}from"./useScrollPosition";export{useScrollThreshold}from"./useScrollThreshold";export{useSmoothScroll}from"./useSmoothScroll";export{useSpinDelay}from"./useSpinDelay";export{useTraceUpdate}from"./useTraceUpdate";export{useUpdateEffect}from"./useUpdateEffect";export{useWindowSize}from"./useWindowSize";
|
package/mergeRefs.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export let mergeRefs=e=>r=>{e.forEach(e=>{"function"==typeof e?e(r):null!=e&&(e.current=r)})};export default mergeRefs;
|
package/types.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export{};
|
package/useAsyncFn.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{useCallback as e,useRef as t,useState as r}from"react";import{useMountedState as n}from"./useMountedState";export let useAsyncFn=(o,u=[],l={loading:!1})=>{let a=t(0),d=n(),[i,c]=r(l),g=e((...e)=>{let t=++a.current;return i.loading||c(e=>({...e,loading:!0})),o(...e).then(e=>(d()&&t===a.current&&c({value:e,loading:!1}),e),e=>(d()&&t===a.current&&c({error:e,loading:!1}),e))},u);return[i,g]};export default useAsyncFn;
|
package/useFirstMountState.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{useRef as t}from"react";export let useFirstMountState=()=>{let r=t(!0);return r.current?(r.current=!1,!0):r.current};export default useFirstMountState;
|
package/useFixedOffset.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{useRef as e}from"react";import{debounce as t}from"@koine/utils";import{$each as r,calculateFixedOffset as o,injectCss as i,listenResizeDebounced as f}from"@koine/dom";import{useIsomorphicLayoutEffect as s}from"./useIsomorphicLayoutEffect";let n=e=>{i("useFixedOffset",`html{scroll-padding-top: ${e}px}`)};export let useFixedOffset=i=>{let l=e(0);return s(()=>{let e=()=>{let e=o();l.current=e,n(e)};if(e(),!ResizeObserver)return f(0,e);{let e=new ResizeObserver(e=>{let r=0;e.forEach(e=>{r+=e.contentRect.height}),l.current=r,t(()=>n(r),400,!0)()});return r(i||"[data-fixed]",t=>{e&&e.observe(t)}),()=>{e?.disconnect()}}},[i]),l};export default useFixedOffset;
|
package/useFocus.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{useRef as e}from"react";export let useFocus=()=>{let r=e(null);return[r,()=>{r.current&&r.current.focus()}]};export default useFocus;
|
package/useInterval.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{useEffect as r,useRef as e}from"react";import{noop as t}from"@koine/utils";export let useInterval=(n,l,u=[])=>{let o=e();r(()=>{o.current=n},[n,...u]),r(()=>{if(null!==l){let r=setInterval(function(){o.current&&o.current()},l);return()=>clearInterval(r)}return t},[l])};export default useInterval;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{useEffect as o,useLayoutEffect as t}from"react";import{isBrowser as e}from"@koine/utils";export let useIsomorphicLayoutEffect=e?t:o;export default useIsomorphicLayoutEffect;
|
package/useKeyUp.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{useEffect as e}from"react";import{on as t}from"@koine/dom";export let useKeyUp=(o,r=[])=>{e(()=>t(window,"keyup",e=>{e.ctrlKey||e.altKey||e.shiftKey||e.metaKey||o(e)}),[o,...r])};export default useKeyUp;
|
package/useMeasure.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
let e;import{useEffect as t,useMemo as r,useRef as n,useState as u}from"react";import{debounce as l,noop as o}from"@koine/utils";import{listenResizeDebounced as c,listenScrollDebounced as i,off as s,on as f}from"@koine/dom";let m=e=>{let t=[];if(!e||e===document.body)return t;let{overflow:r,overflowX:n,overflowY:u}=window.getComputedStyle(e);return[r,n,u].some(e=>"auto"===e||"scroll"===e)&&t.push(e),[...t,...m(e.parentElement)]},p=["x","y","top","bottom","left","right","width","height"],d=(e,t)=>p.every(r=>e[r]===t[r]);export let useMeasure=p=>{let{scroll:h=!1}=p||{},[a,b]=u({left:0,top:0,width:0,height:0,bottom:0,right:0,x:0,y:0}),g=n([null,null,null,a]),v=n(!1);t(()=>(v.current=!0,()=>void(v.current=!1)),[]);let[w,,y]=r(()=>{let e=(...e)=>{let[t,,,r]=g.current;if(!t)return;let n=t.getBoundingClientRect();Object.freeze(n),v.current&&!d(r,n)&&(g.current[3]=n,b(n))},t=l(e);return[e,t,t]},[b]);function x(){let[,e,t]=g.current;e&&(e.forEach(e=>s(e,"scroll",y)),g.current[1]=null),t&&(t.disconnect(),g.current[2]=null)}function z(){let[t,r]=g.current;t&&!e&&ResizeObserver&&(e=new ResizeObserver(y),g.current[2]=e,e.observe(t),h&&r&&r.forEach(e=>f(e,"scroll",y,{capture:!0,passive:!0})))}return t(()=>h?i(0,w,100):o,[h,w]),t(()=>c(0,w,100),[w]),t(()=>{x(),z()},[h]),t(()=>(w(),x),[]),[e=>{e&&e!==g.current[0]&&(x(),g.current[0]=e,g.current[1]=m(e),z())},a,w]};export default useMeasure;
|
package/useMountedState.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{useCallback as t,useEffect as e,useRef as r}from"react";export let useMountedState=()=>{let u=r(!1),n=t(()=>u.current,[]);return e(()=>(u.current=!0,()=>{u.current=!1}),[]),n};export default useMountedState;
|
package/useNavigateAway.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{useEffect as e,useRef as t}from"react";import{on as r}from"@koine/dom";export let useNavigateAway=a=>{let o=t();e(()=>{o.current=e=>{let t=a(e);return(t&&e.preventDefault(),"string"==typeof t)?e.returnValue=t:e.defaultPrevented?e.returnValue="":void 0}},[a]),e(()=>r(window,"beforeunload",e=>o.current?.(e)),[])};export default useNavigateAway;
|
package/usePrevious.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{useState as e}from"react";export let usePrevious=(r,t)=>{let[o,u]=e([r,t]);return o[1]!==r&&u([o[1],r]),o[0]};export default usePrevious;
|
package/usePreviousRef.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{useEffect as e,useRef as r}from"react";export let usePreviousRef=t=>{let u=r();return e(()=>{u.current=t}),u.current};export default usePreviousRef;
|
package/useReveal.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{useEffect as e,useRef as t,useState as l}from"react";export let useReveal=({direction:n="left",offsetStartY:o=-2,offsetEndY:r=0,offsetStartX:u="all"})=>{let c=t(null),[i,d]=l(0),[f,m]=l(0),[a,g]=l(0);return e(()=>{let e;if(!c.current)return;let t=c.current.getBoundingClientRect(),l=window.scrollY||document.documentElement.scrollTop,i=t.height,f=t.top+l,a=o?i*o:0,h=r?i*r:a,p=(f+a)/document.body.clientHeight,s=(f+i+h)/document.body.clientHeight;"all"===u?e="left"===n?-t.right:t.left:(e=t.width*u,e="left"===n?-e:e),d(p),m(s),g(e)},[d,m,g,o,r,u,n]),{ref:c,startY:i,endY:f,startX:a}};export default useReveal;
|
package/useScrollPosition.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{useRef as t}from"react";import{isBrowser as r}from"@koine/utils";import{listenScroll as e}from"@koine/dom";import{useIsomorphicLayoutEffect as o}from"./useIsomorphicLayoutEffect";let l={x:0,y:0},n=t=>t?.getBoundingClientRect(),u=(t,e)=>{if(!r)return l;if(!e)return{x:window.scrollX,y:window.scrollY};let o=n(t?.current||document.body),u=n(e.current);return o?u?{x:(u.x||0)-(o.x||0),y:(u.y||0)-(o.y||0)}:{x:o.left,y:o.top}:l};export let useScrollPosition=(l,n=[],i,c,m)=>{let f=t(u(null,c)),s=null,d=()=>{let t=u(i,c);l(t,f.current),f.current=t,s=null};o(()=>{if(!r)return;let t=e(()=>{m?null===s&&(s=window.setTimeout(d,m)):d()},c?.current);return()=>{t(),s&&clearTimeout(s)}},n)};export default useScrollPosition;
|
package/useScrollThreshold.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{useCallback as r,useEffect as e,useState as o}from"react";import{noop as t}from"@koine/utils";import{listenScroll as l}from"@koine/dom";export let useScrollThreshold=(i,m)=>{let[u,f]=o(!1),n=r(()=>{if(i){let r=window.scrollY,e=r<i,o=r>i;f(o),m&&m(e,o)}},[i,m]);return e(()=>{if(i){let r=l(n);return n(),r}return t},[i,n]),u};export default useScrollThreshold;
|
package/useScrollTo.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{isBrowser as e}from"@koine/utils";export let useScrollTo=(o="",t=0)=>{if(!e)return;let l=document.getElementById(o),r=0;if(l&&l.offsetParent)do r+=l.offsetTop;while(l=l.offsetParent)r-=t,r-=0,window.scroll(0,r)};export default useScrollTo;
|
package/useSmoothScroll.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{useCallback as e}from"react";import{isNumber as t}from"@koine/utils";import{getOffsetTopSlim as o,scrollTo as r}from"@koine/dom";import{useFixedOffset as l}from"./useFixedOffset";export let useSmoothScroll=m=>{let i=l();return e((e,l,f,u,n)=>{let c;let p=!1;if(t(e))c=e;else if(e){let t=document.getElementById(e);t&&(c=o(t)-i.current,p=!0)}t(c)&&r(c=c+(l||0)+(m||p?0:i.current),f,u,n)},[m,i])};export default useSmoothScroll;
|
package/useSpinDelay.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{useEffect as e,useRef as r,useState as t}from"react";export let useSpinDelay=(u,c=500,i=200)=>{let[n,o]=t(0),l=r();return e(()=>{u&&0===n&&(clearTimeout(l.current),l.current=setTimeout(()=>{if(!u)return o(0);l.current=setTimeout(()=>{o(3)},i),o(2)},c),o(1)),u||2===n||(clearTimeout(l.current),o(0))},[u,n,c,i]),e(()=>()=>clearTimeout(l.current),[]),2===n||3===n};export default useSpinDelay;
|
package/useTraceUpdate.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{useEffect as e,useRef as t}from"react";export let useTraceUpdate=r=>{let c=t(r);e(()=>{let e=Object.entries(r).reduce((e,[t,r])=>(c.current[t]!==r&&(e[t]=[c.current[t],r]),e),{});Object.keys(e).length>0&&console.info("[@koine/react:useTraceUpdate] changed props:",e),c.current=r})};export default useTraceUpdate;
|
package/useUpdateEffect.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{useEffect as t}from"react";import{useFirstMountState as e}from"./useFirstMountState";export let useUpdateEffect=(r,f)=>{let o=e();t(()=>{if(!o)return r()},f)};export default useUpdateEffect;
|
package/useWindowSize.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{useEffect as e,useState as i}from"react";import{listenResize as r,listenResizeDebounced as t}from"@koine/dom";export let useWindowSize=(o,n)=>{let[d,w]=i(0),[m,u]=i(0);return e(()=>{let e=()=>{w(window.innerWidth),u(window.innerHeight)},i=o?t(0,e,o,n):r(e);return e(),i},[o,n]),[d,m]};export default useWindowSize;
|