@aliexme/react-utils 2.0.2 → 2.1.1

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.
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react"),o=n=>{const{when:r,component:c,orElse:l=React.createElement(e.Fragment,null),children:t}=n;return r?e.cloneElement(c,{children:t}):e.cloneElement(l,{children:t})};exports.Maybe=o;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const l=require("react/jsx-runtime"),e=require("react"),s=t=>{const{when:r,component:o,orElse:c=l.jsx(e.Fragment,{}),children:n}=t;return r?e.cloneElement(o,{children:n}):e.cloneElement(c,{children:n})};exports.Maybe=s;
@@ -1,8 +1,9 @@
1
- import { cloneElement as n, Fragment as l } from "react";
2
- const a = (t) => {
3
- const { when: r, component: o, orElse: c = /* @__PURE__ */ React.createElement(l, null), children: e } = t;
4
- return r ? n(o, { children: e }) : n(c, { children: e });
1
+ import { jsx as c } from "react/jsx-runtime";
2
+ import { cloneElement as r, Fragment as i } from "react";
3
+ const s = (n) => {
4
+ const { when: o, component: t, orElse: m = /* @__PURE__ */ c(i, {}), children: e } = n;
5
+ return o ? r(t, { children: e }) : r(m, { children: e });
5
6
  };
6
7
  export {
7
- a as Maybe
8
+ s as Maybe
8
9
  };
@@ -1,6 +1,10 @@
1
1
  export * from './useIsomorphicLayoutEffect';
2
2
  export * from './useDidMount';
3
3
  export * from './useWillUnmount';
4
+ export * from './useIsMounted';
5
+ export * from './useIsMountedRef';
4
6
  export * from './useValueRef';
5
7
  export * from './usePrevious';
8
+ export * from './useDerivedState';
9
+ export * from './useEventListener';
6
10
  export * from './useWindowSize';
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("react"),S=require("./useValueRef.cjs"),d=n=>{const{value:e,initialValue:o,onChange:r}=n,[c,l]=s.useState(e??o),t=S.useValueRef(r),i=e!==void 0?e:c,v=s.useCallback(a=>{var u;(u=t.current)==null||u.call(t,a),l(a)},[]);return[i,v]};exports.useDerivedState=d;
@@ -0,0 +1,6 @@
1
+ export interface UseDerivedStateParams<T> {
2
+ value: T | undefined;
3
+ initialValue: T;
4
+ onChange?(value: T): void;
5
+ }
6
+ export declare const useDerivedState: <T>(params: UseDerivedStateParams<T>) => readonly [T, (newValue: T) => void];
@@ -0,0 +1,12 @@
1
+ import { useState as p, useCallback as m } from "react";
2
+ import { useValueRef as v } from "./useValueRef.js";
3
+ const S = (n) => {
4
+ const { value: e, initialValue: s, onChange: u } = n, [r, l] = p(e ?? s), t = v(u), c = e !== void 0 ? e : r, i = m((a) => {
5
+ var o;
6
+ (o = t.current) == null || o.call(t, a), l(a);
7
+ }, []);
8
+ return [c, i];
9
+ };
10
+ export {
11
+ S as useDerivedState
12
+ };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("react"),o=(e,n,t,u={})=>{const{enabled:r=!0,...s}=u;i.useEffect(()=>{if(r)return e.addEventListener(n,t,s),()=>{e.removeEventListener(n,t,s)}},[e,n,t,r])};exports.useEventListener=o;
@@ -0,0 +1,4 @@
1
+ export interface UseEventListenerOptions extends AddEventListenerOptions {
2
+ enabled?: boolean;
3
+ }
4
+ export declare const useEventListener: (target: EventTarget, type: string, listener: EventListenerOrEventListenerObject, options?: UseEventListenerOptions) => void;
@@ -0,0 +1,13 @@
1
+ import { useEffect as i } from "react";
2
+ const f = (e, n, r, s = {}) => {
3
+ const { enabled: t = !0, ...o } = s;
4
+ i(() => {
5
+ if (t)
6
+ return e.addEventListener(n, r, o), () => {
7
+ e.removeEventListener(n, r, o);
8
+ };
9
+ }, [e, n, r, t]);
10
+ };
11
+ export {
12
+ f as useEventListener
13
+ };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const u=require("react"),s=require("./useDidMount.cjs"),o=()=>{const[e,t]=u.useState(!1);return s.useDidMount(()=>{t(!0)}),e};exports.useIsMounted=o;
@@ -0,0 +1 @@
1
+ export declare const useIsMounted: () => boolean;
@@ -0,0 +1,11 @@
1
+ import { useState as o } from "react";
2
+ import { useDidMount as s } from "./useDidMount.js";
3
+ const n = () => {
4
+ const [t, e] = o(!1);
5
+ return s(() => {
6
+ e(!0);
7
+ }), t;
8
+ };
9
+ export {
10
+ n as useIsMounted
11
+ };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("react"),u=require("./useDidMount.cjs"),s=()=>{const e=t.useRef(!1);return u.useDidMount(()=>{e.current=!0}),e};exports.useIsMountedRef=s;
@@ -0,0 +1 @@
1
+ export declare const useIsMountedRef: () => import('react').MutableRefObject<boolean>;
@@ -0,0 +1,11 @@
1
+ import { useRef as t } from "react";
2
+ import { useDidMount as o } from "./useDidMount.js";
3
+ const s = () => {
4
+ const e = t(!1);
5
+ return o(() => {
6
+ e.current = !0;
7
+ }), e;
8
+ };
9
+ export {
10
+ s as useIsMountedRef
11
+ };
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const u=require("./useValueRef.cjs"),r=e=>u.useValueRef(e).current;exports.usePrevious=r;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const u=require("react"),c=e=>{const r=u.useRef(e),t=u.useRef(e);return r.current!==e&&(t.current=r.current,r.current=e),t.current};exports.usePrevious=c;
@@ -1,5 +1,8 @@
1
- import { useValueRef as r } from "./useValueRef.js";
2
- const t = (e) => r(e).current;
1
+ import { useRef as n } from "react";
2
+ const o = (r) => {
3
+ const e = n(r), t = n(r);
4
+ return e.current !== r && (t.current = e.current, e.current = r), t.current;
5
+ };
3
6
  export {
4
- t as usePrevious
7
+ o as usePrevious
5
8
  };
package/dist/index.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./components/Maybe/Maybe.cjs"),u=require("./hooks/useIsomorphicLayoutEffect.cjs"),s=require("./hooks/useDidMount.cjs"),o=require("./hooks/useWillUnmount.cjs"),i=require("./hooks/useValueRef.cjs"),t=require("./hooks/usePrevious.cjs"),r=require("./hooks/useWindowSize.cjs");exports.Maybe=e.Maybe;exports.useIsomorphicLayoutEffect=u.useIsomorphicLayoutEffect;exports.useDidMount=s.useDidMount;exports.useWillUnmount=o.useWillUnmount;exports.useValueRef=i.useValueRef;exports.usePrevious=t.usePrevious;exports.useWindowSize=r.useWindowSize;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./components/Maybe/Maybe.cjs"),u=require("./hooks/useIsomorphicLayoutEffect.cjs"),s=require("./hooks/useDidMount.cjs"),t=require("./hooks/useWillUnmount.cjs"),o=require("./hooks/useIsMounted.cjs"),i=require("./hooks/useIsMountedRef.cjs"),r=require("./hooks/useValueRef.cjs"),n=require("./hooks/usePrevious.cjs"),c=require("./hooks/useDerivedState.cjs"),d=require("./hooks/useEventListener.cjs"),a=require("./hooks/useWindowSize.cjs");exports.Maybe=e.Maybe;exports.useIsomorphicLayoutEffect=u.useIsomorphicLayoutEffect;exports.useDidMount=s.useDidMount;exports.useWillUnmount=t.useWillUnmount;exports.useIsMounted=o.useIsMounted;exports.useIsMountedRef=i.useIsMountedRef;exports.useValueRef=r.useValueRef;exports.usePrevious=n.usePrevious;exports.useDerivedState=c.useDerivedState;exports.useEventListener=d.useEventListener;exports.useWindowSize=a.useWindowSize;
package/dist/index.js CHANGED
@@ -1,16 +1,24 @@
1
1
  import { Maybe as r } from "./components/Maybe/Maybe.js";
2
2
  import { useIsomorphicLayoutEffect as u } from "./hooks/useIsomorphicLayoutEffect.js";
3
- import { useDidMount as m } from "./hooks/useDidMount.js";
4
- import { useWillUnmount as s } from "./hooks/useWillUnmount.js";
5
- import { useValueRef as i } from "./hooks/useValueRef.js";
6
- import { usePrevious as a } from "./hooks/usePrevious.js";
7
- import { useWindowSize as c } from "./hooks/useWindowSize.js";
3
+ import { useDidMount as s } from "./hooks/useDidMount.js";
4
+ import { useWillUnmount as p } from "./hooks/useWillUnmount.js";
5
+ import { useIsMounted as i } from "./hooks/useIsMounted.js";
6
+ import { useIsMountedRef as d } from "./hooks/useIsMountedRef.js";
7
+ import { useValueRef as M } from "./hooks/useValueRef.js";
8
+ import { usePrevious as v } from "./hooks/usePrevious.js";
9
+ import { useDerivedState as c } from "./hooks/useDerivedState.js";
10
+ import { useEventListener as D } from "./hooks/useEventListener.js";
11
+ import { useWindowSize as L } from "./hooks/useWindowSize.js";
8
12
  export {
9
13
  r as Maybe,
10
- m as useDidMount,
14
+ c as useDerivedState,
15
+ s as useDidMount,
16
+ D as useEventListener,
17
+ i as useIsMounted,
18
+ d as useIsMountedRef,
11
19
  u as useIsomorphicLayoutEffect,
12
- a as usePrevious,
13
- i as useValueRef,
14
- s as useWillUnmount,
15
- c as useWindowSize
20
+ v as usePrevious,
21
+ M as useValueRef,
22
+ p as useWillUnmount,
23
+ L as useWindowSize
16
24
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aliexme/react-utils",
3
- "version": "2.0.2",
3
+ "version": "2.1.1",
4
4
  "description": "React utilities",
5
5
  "private": false,
6
6
  "author": "Alexander Smirnov <al.smirnov996@gmail.com>",
@@ -37,10 +37,11 @@
37
37
  },
38
38
  "devDependencies": {
39
39
  "@types/react": "18.3.11",
40
+ "@vitejs/plugin-react": "4.3.4",
40
41
  "react": "18.3.1"
41
42
  },
42
43
  "peerDependencies": {
43
44
  "react": "^18.0.0"
44
45
  },
45
- "gitHead": "c2cd72ec12f990b4c5928ab949c815419d7c4ccc"
46
+ "gitHead": "9ae510e4b3200d033bd3e2d0e4016ff323b553c3"
46
47
  }