extra-react-hooks 0.4.0 → 0.4.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.
- package/lib/index.js +16 -32
- package/lib/index.js.map +1 -1
- package/lib/types.js +1 -2
- package/lib/use-finite-state-machine.js +7 -11
- package/lib/use-finite-state-machine.js.map +1 -1
- package/lib/use-force-update.js +4 -8
- package/lib/use-force-update.js.map +1 -1
- package/lib/use-iife.js +5 -9
- package/lib/use-iife.js.map +1 -1
- package/lib/use-increment.js +4 -8
- package/lib/use-increment.js.map +1 -1
- package/lib/use-is-first-render.js +4 -8
- package/lib/use-is-first-render.js.map +1 -1
- package/lib/use-is-mounted.js +6 -10
- package/lib/use-is-mounted.js.map +1 -1
- package/lib/use-mount.js +3 -7
- package/lib/use-mount.js.map +1 -1
- package/lib/use-multiple-selection.js +13 -17
- package/lib/use-multiple-selection.js.map +1 -1
- package/lib/use-render-counter.js +3 -7
- package/lib/use-render-counter.js.map +1 -1
- package/lib/use-resize-observer.js +5 -9
- package/lib/use-resize-observer.js.map +1 -1
- package/lib/use-single-selection.js +9 -13
- package/lib/use-single-selection.js.map +1 -1
- package/lib/use-state-cycle.js +4 -8
- package/lib/use-state-cycle.js.map +1 -1
- package/lib/use-step.js +4 -8
- package/lib/use-step.js.map +1 -1
- package/lib/use-toggle.js +4 -8
- package/lib/use-toggle.js.map +1 -1
- package/lib/use-unmount.js +3 -7
- package/lib/use-unmount.js.map +1 -1
- package/lib/use-update-effect.js +5 -9
- package/lib/use-update-effect.js.map +1 -1
- package/package.json +1 -1
package/lib/index.js
CHANGED
|
@@ -1,33 +1,17 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
__exportStar(require("./use-increment.js"), exports);
|
|
18
|
-
__exportStar(require("./use-is-mounted.js"), exports);
|
|
19
|
-
__exportStar(require("./use-is-first-render.js"), exports);
|
|
20
|
-
__exportStar(require("./use-render-counter.js"), exports);
|
|
21
|
-
__exportStar(require("./use-mount.js"), exports);
|
|
22
|
-
__exportStar(require("./use-unmount.js"), exports);
|
|
23
|
-
__exportStar(require("./use-update-effect.js"), exports);
|
|
24
|
-
__exportStar(require("./use-single-selection.js"), exports);
|
|
25
|
-
__exportStar(require("./use-multiple-selection.js"), exports);
|
|
26
|
-
__exportStar(require("./use-state-cycle.js"), exports);
|
|
27
|
-
__exportStar(require("./use-toggle.js"), exports);
|
|
28
|
-
__exportStar(require("./use-resize-observer.js"), exports);
|
|
29
|
-
__exportStar(require("./use-step.js"), exports);
|
|
30
|
-
__exportStar(require("./use-force-update.js"), exports);
|
|
31
|
-
__exportStar(require("./use-finite-state-machine.js"), exports);
|
|
32
|
-
__exportStar(require("./use-iife.js"), exports);
|
|
1
|
+
export * from './use-increment.js';
|
|
2
|
+
export * from './use-is-mounted.js';
|
|
3
|
+
export * from './use-is-first-render.js';
|
|
4
|
+
export * from './use-render-counter.js';
|
|
5
|
+
export * from './use-mount.js';
|
|
6
|
+
export * from './use-unmount.js';
|
|
7
|
+
export * from './use-update-effect.js';
|
|
8
|
+
export * from './use-single-selection.js';
|
|
9
|
+
export * from './use-multiple-selection.js';
|
|
10
|
+
export * from './use-state-cycle.js';
|
|
11
|
+
export * from './use-toggle.js';
|
|
12
|
+
export * from './use-resize-observer.js';
|
|
13
|
+
export * from './use-step.js';
|
|
14
|
+
export * from './use-force-update.js';
|
|
15
|
+
export * from './use-finite-state-machine.js';
|
|
16
|
+
export * from './use-iife.js';
|
|
33
17
|
//# sourceMappingURL=index.js.map
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAA;AAClC,cAAc,qBAAqB,CAAA;AACnC,cAAc,0BAA0B,CAAA;AACxC,cAAc,yBAAyB,CAAA;AACvC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,kBAAkB,CAAA;AAChC,cAAc,wBAAwB,CAAA;AACtC,cAAc,2BAA2B,CAAA;AACzC,cAAc,6BAA6B,CAAA;AAC3C,cAAc,sBAAsB,CAAA;AACpC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,0BAA0B,CAAA;AACxC,cAAc,eAAe,CAAA;AAC7B,cAAc,uBAAuB,CAAA;AACrC,cAAc,+BAA+B,CAAA;AAC7C,cAAc,eAAe,CAAA"}
|
package/lib/types.js
CHANGED
|
@@ -1,18 +1,14 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
const
|
|
6
|
-
const
|
|
7
|
-
|
|
8
|
-
const forceUpdate = (0, use_force_update_js_1.useForceUpdate)();
|
|
9
|
-
const fsm = (0, react_1.useMemo)(() => new extra_fsm_1.ObservableFiniteStateMachine(schema, initialState), [schema, initialState]);
|
|
10
|
-
(0, react_1.useEffect)(() => {
|
|
1
|
+
import { useMemo, useEffect } from 'react';
|
|
2
|
+
import { ObservableFiniteStateMachine } from 'extra-fsm';
|
|
3
|
+
import { useForceUpdate } from './use-force-update.js';
|
|
4
|
+
export function useFiniteStateMachine(schema, initialState) {
|
|
5
|
+
const forceUpdate = useForceUpdate();
|
|
6
|
+
const fsm = useMemo(() => new ObservableFiniteStateMachine(schema, initialState), [schema, initialState]);
|
|
7
|
+
useEffect(() => {
|
|
11
8
|
const observable = fsm.observeStateChanges();
|
|
12
9
|
const subscription = observable.subscribe(() => forceUpdate());
|
|
13
10
|
return () => subscription.unsubscribe();
|
|
14
11
|
}, [fsm]);
|
|
15
12
|
return fsm;
|
|
16
13
|
}
|
|
17
|
-
exports.useFiniteStateMachine = useFiniteStateMachine;
|
|
18
14
|
//# sourceMappingURL=use-finite-state-machine.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-finite-state-machine.js","sourceRoot":"","sources":["../src/use-finite-state-machine.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"use-finite-state-machine.js","sourceRoot":"","sources":["../src/use-finite-state-machine.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAC1C,OAAO,EAAE,4BAA4B,EAA6B,MAAM,WAAW,CAAA;AACnF,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AAOtD,MAAM,UAAU,qBAAqB,CACnC,MAA+C,EAC/C,YAAmB;IAEnB,MAAM,WAAW,GAAG,cAAc,EAAE,CAAA;IACpC,MAAM,GAAG,GAAG,OAAO,CACjB,GAAG,EAAE,CAAC,IAAI,4BAA4B,CAAC,MAAM,EAAE,YAAY,CAAC,EAC5D,CAAC,MAAM,EAAE,YAAY,CAAC,CACvB,CAAA;IAED,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,UAAU,GAAG,GAAG,CAAC,mBAAmB,EAAE,CAAA;QAC5C,MAAM,YAAY,GAAG,UAAU,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC,CAAA;QAE9D,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,WAAW,EAAE,CAAA;IACzC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAA;IAET,OAAO,GAAG,CAAA;AACZ,CAAC"}
|
package/lib/use-force-update.js
CHANGED
|
@@ -1,13 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
function useForceUpdate() {
|
|
6
|
-
const [, setState] = (0, react_1.useState)({});
|
|
7
|
-
return (0, react_1.useCallback)(forceUpdate, []);
|
|
1
|
+
import { useState, useCallback } from 'react';
|
|
2
|
+
export function useForceUpdate() {
|
|
3
|
+
const [, setState] = useState({});
|
|
4
|
+
return useCallback(forceUpdate, []);
|
|
8
5
|
function forceUpdate() {
|
|
9
6
|
setState({});
|
|
10
7
|
}
|
|
11
8
|
}
|
|
12
|
-
exports.useForceUpdate = useForceUpdate;
|
|
13
9
|
//# sourceMappingURL=use-force-update.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-force-update.js","sourceRoot":"","sources":["../src/use-force-update.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"use-force-update.js","sourceRoot":"","sources":["../src/use-force-update.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,OAAO,CAAA;AAE7C,MAAM,UAAU,cAAc;IAC5B,MAAM,CAAC,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAA;IAEjC,OAAO,WAAW,CAAC,WAAW,EAAE,EAAE,CAAC,CAAA;IAEnC,SAAS,WAAW;QAClB,QAAQ,CAAC,EAAE,CAAC,CAAA;IACd,CAAC;AACH,CAAC"}
|
package/lib/use-iife.js
CHANGED
|
@@ -1,11 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
const
|
|
5
|
-
const
|
|
6
|
-
function useIIFE(iife, deps) {
|
|
7
|
-
const oldDeps = (0, react_1.useRef)([]);
|
|
8
|
-
const isFirstRender = (0, use_is_first_render_js_1.useIsFirstRender)();
|
|
1
|
+
import { useRef } from 'react';
|
|
2
|
+
import { useIsFirstRender } from "./use-is-first-render.js";
|
|
3
|
+
export function useIIFE(iife, deps) {
|
|
4
|
+
const oldDeps = useRef([]);
|
|
5
|
+
const isFirstRender = useIsFirstRender();
|
|
9
6
|
if (isFirstRender()) {
|
|
10
7
|
iife();
|
|
11
8
|
}
|
|
@@ -21,5 +18,4 @@ function useIIFE(iife, deps) {
|
|
|
21
18
|
}
|
|
22
19
|
oldDeps.current = Array.from(deps);
|
|
23
20
|
}
|
|
24
|
-
exports.useIIFE = useIIFE;
|
|
25
21
|
//# sourceMappingURL=use-iife.js.map
|
package/lib/use-iife.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-iife.js","sourceRoot":"","sources":["../src/use-iife.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"use-iife.js","sourceRoot":"","sources":["../src/use-iife.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAE,gBAAgB,EAAE,iCAAmC;AAE9D,MAAM,UAAU,OAAO,CAAC,IAAgB,EAAE,IAA0B;IAClE,MAAM,OAAO,GAAG,MAAM,CAAuB,EAAE,CAAC,CAAA;IAChD,MAAM,aAAa,GAAG,gBAAgB,EAAE,CAAA;IAExC,IAAI,aAAa,EAAE,EAAE;QACnB,IAAI,EAAE,CAAA;KACP;SAAM;QACL,IAAI,IAAI,CAAC,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE;YAC1C,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE;gBACjD,IAAI,EAAE,CAAA;aACP;SACF;aAAM;YACL,IAAI,EAAE,CAAA;SACP;KACF;IAED,OAAO,CAAC,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACpC,CAAC"}
|
package/lib/use-increment.js
CHANGED
|
@@ -1,10 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
function useIncrement(initialValue) {
|
|
6
|
-
const [value, setValue] = (0, react_1.useState)(initialValue);
|
|
7
|
-
return [value, (0, react_1.useCallback)(increment, []), (0, react_1.useCallback)(reset, [])];
|
|
1
|
+
import { useState, useCallback } from 'react';
|
|
2
|
+
export function useIncrement(initialValue) {
|
|
3
|
+
const [value, setValue] = useState(initialValue);
|
|
4
|
+
return [value, useCallback(increment, []), useCallback(reset, [])];
|
|
8
5
|
function increment(step = 1) {
|
|
9
6
|
setValue(value => value + step);
|
|
10
7
|
}
|
|
@@ -12,5 +9,4 @@ function useIncrement(initialValue) {
|
|
|
12
9
|
setValue(initialValue);
|
|
13
10
|
}
|
|
14
11
|
}
|
|
15
|
-
exports.useIncrement = useIncrement;
|
|
16
12
|
//# sourceMappingURL=use-increment.js.map
|
package/lib/use-increment.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-increment.js","sourceRoot":"","sources":["../src/use-increment.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"use-increment.js","sourceRoot":"","sources":["../src/use-increment.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,OAAO,CAAA;AAE7C,MAAM,UAAU,YAAY,CAC1B,YAAoB;IAEpB,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAA;IAChD,OAAO,CAAC,KAAK,EAAE,WAAW,CAAC,SAAS,EAAE,EAAE,CAAC,EAAE,WAAW,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAA;IAElE,SAAS,SAAS,CAAC,OAAe,CAAC;QACjC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,GAAG,IAAI,CAAC,CAAA;IACjC,CAAC;IAED,SAAS,KAAK;QACZ,QAAQ,CAAC,YAAY,CAAC,CAAA;IACxB,CAAC;AACH,CAAC"}
|
|
@@ -1,15 +1,12 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.useIsFirstRender = void 0;
|
|
4
|
-
const react_1 = require("react");
|
|
1
|
+
import { useRef, useCallback } from 'react';
|
|
5
2
|
var State;
|
|
6
3
|
(function (State) {
|
|
7
4
|
State[State["InitialValue"] = 0] = "InitialValue";
|
|
8
5
|
State[State["First"] = 1] = "First";
|
|
9
6
|
State[State["NotFirst"] = 2] = "NotFirst";
|
|
10
7
|
})(State || (State = {}));
|
|
11
|
-
function useIsFirstRender() {
|
|
12
|
-
const state =
|
|
8
|
+
export function useIsFirstRender() {
|
|
9
|
+
const state = useRef(State.InitialValue);
|
|
13
10
|
switch (state.current) {
|
|
14
11
|
case State.InitialValue:
|
|
15
12
|
state.current = State.First;
|
|
@@ -19,10 +16,9 @@ function useIsFirstRender() {
|
|
|
19
16
|
break;
|
|
20
17
|
case State.NotFirst: break;
|
|
21
18
|
}
|
|
22
|
-
return
|
|
19
|
+
return useCallback(isFirstRender, []);
|
|
23
20
|
function isFirstRender() {
|
|
24
21
|
return state.current === State.First;
|
|
25
22
|
}
|
|
26
23
|
}
|
|
27
|
-
exports.useIsFirstRender = useIsFirstRender;
|
|
28
24
|
//# sourceMappingURL=use-is-first-render.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-is-first-render.js","sourceRoot":"","sources":["../src/use-is-first-render.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"use-is-first-render.js","sourceRoot":"","sources":["../src/use-is-first-render.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,OAAO,CAAA;AAE3C,IAAK,KAIJ;AAJD,WAAK,KAAK;IACR,iDAAY,CAAA;IACZ,mCAAK,CAAA;IACL,yCAAQ,CAAA;AACV,CAAC,EAJI,KAAK,KAAL,KAAK,QAIT;AAED,MAAM,UAAU,gBAAgB;IAC9B,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,CAAA;IAExC,QAAQ,KAAK,CAAC,OAAO,EAAE;QACrB,KAAK,KAAK,CAAC,YAAY;YACrB,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,KAAK,CAAA;YAC3B,MAAK;QACP,KAAK,KAAK,CAAC,KAAK;YACd,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAA;YAC9B,MAAK;QACP,KAAK,KAAK,CAAC,QAAQ,CAAC,CAAC,MAAK;KAC3B;IAED,OAAO,WAAW,CAAC,aAAa,EAAE,EAAE,CAAC,CAAA;IAErC,SAAS,aAAa;QACpB,OAAO,KAAK,CAAC,OAAO,KAAK,KAAK,CAAC,KAAK,CAAA;IACtC,CAAC;AACH,CAAC"}
|
package/lib/use-is-mounted.js
CHANGED
|
@@ -1,20 +1,16 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
const
|
|
5
|
-
|
|
6
|
-
function useIsMounted() {
|
|
7
|
-
const mounted = (0, react_1.useRef)(false);
|
|
8
|
-
(0, use_mount_js_1.useMount)(() => {
|
|
1
|
+
import { useRef, useCallback } from 'react';
|
|
2
|
+
import { useMount } from './use-mount.js';
|
|
3
|
+
export function useIsMounted() {
|
|
4
|
+
const mounted = useRef(false);
|
|
5
|
+
useMount(() => {
|
|
9
6
|
mounted.current = true;
|
|
10
7
|
return () => {
|
|
11
8
|
mounted.current = false;
|
|
12
9
|
};
|
|
13
10
|
});
|
|
14
|
-
return
|
|
11
|
+
return useCallback(isMounted, []);
|
|
15
12
|
function isMounted() {
|
|
16
13
|
return mounted.current;
|
|
17
14
|
}
|
|
18
15
|
}
|
|
19
|
-
exports.useIsMounted = useIsMounted;
|
|
20
16
|
//# sourceMappingURL=use-is-mounted.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-is-mounted.js","sourceRoot":"","sources":["../src/use-is-mounted.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"use-is-mounted.js","sourceRoot":"","sources":["../src/use-is-mounted.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,OAAO,CAAA;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAEzC,MAAM,UAAU,YAAY;IAC1B,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,CAAA;IAE7B,QAAQ,CAAC,GAAG,EAAE;QACZ,OAAO,CAAC,OAAO,GAAG,IAAI,CAAA;QACtB,OAAO,GAAG,EAAE;YACV,OAAO,CAAC,OAAO,GAAG,KAAK,CAAA;QACzB,CAAC,CAAA;IACH,CAAC,CAAC,CAAA;IAEF,OAAO,WAAW,CAAC,SAAS,EAAE,EAAE,CAAC,CAAA;IAEjC,SAAS,SAAS;QAChB,OAAO,OAAO,CAAC,OAAO,CAAA;IACxB,CAAC;AACH,CAAC"}
|
package/lib/use-mount.js
CHANGED
|
@@ -1,9 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
const react_1 = require("react");
|
|
5
|
-
function useMount(effect) {
|
|
6
|
-
(0, react_1.useEffect)(effect, []);
|
|
1
|
+
import { useEffect } from 'react';
|
|
2
|
+
export function useMount(effect) {
|
|
3
|
+
useEffect(effect, []);
|
|
7
4
|
}
|
|
8
|
-
exports.useMount = useMount;
|
|
9
5
|
//# sourceMappingURL=use-mount.js.map
|
package/lib/use-mount.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-mount.js","sourceRoot":"","sources":["../src/use-mount.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"use-mount.js","sourceRoot":"","sources":["../src/use-mount.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAkB,MAAM,OAAO,CAAA;AAEjD,MAAM,UAAU,QAAQ,CAAC,MAAsB;IAC7C,SAAS,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;AACvB,CAAC"}
|
|
@@ -1,23 +1,20 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
const use_iife_js_1 = require("./use-iife.js");
|
|
8
|
-
function useMultipleSelection(options, defaultSelectedIndexes = []) {
|
|
9
|
-
(0, use_iife_js_1.useIIFE)(() => {
|
|
1
|
+
import { useState, useMemo, useCallback } from 'react';
|
|
2
|
+
import { assert } from '@blackglory/errors';
|
|
3
|
+
import { toArray } from 'iterable-operator';
|
|
4
|
+
import { useIIFE } from "./use-iife.js";
|
|
5
|
+
export function useMultipleSelection(options, defaultSelectedIndexes = []) {
|
|
6
|
+
useIIFE(() => {
|
|
10
7
|
for (const index of defaultSelectedIndexes) {
|
|
11
|
-
|
|
8
|
+
assert(index >= 0 && index < options.length, 'The index of parameter defaultSelectedIndexes must be in the range of 0 to values.length');
|
|
12
9
|
}
|
|
13
10
|
}, [defaultSelectedIndexes]);
|
|
14
|
-
const [selectedIndexes, setSelectedIndexes] =
|
|
11
|
+
const [selectedIndexes, setSelectedIndexes] = useState(new Set(defaultSelectedIndexes));
|
|
15
12
|
return {
|
|
16
|
-
selectedIndexes:
|
|
17
|
-
optionStates:
|
|
18
|
-
toggle:
|
|
19
|
-
select:
|
|
20
|
-
unselect:
|
|
13
|
+
selectedIndexes: useMemo(() => toArray(selectedIndexes), [selectedIndexes]),
|
|
14
|
+
optionStates: useMemo(createOptionStates, [options, selectedIndexes]),
|
|
15
|
+
toggle: useCallback(toggle, [selectedIndexes]),
|
|
16
|
+
select: useCallback(select, []),
|
|
17
|
+
unselect: useCallback(unselect, [])
|
|
21
18
|
};
|
|
22
19
|
function createOptionStates() {
|
|
23
20
|
return options.map((_, index) => {
|
|
@@ -51,5 +48,4 @@ function useMultipleSelection(options, defaultSelectedIndexes = []) {
|
|
|
51
48
|
});
|
|
52
49
|
}
|
|
53
50
|
}
|
|
54
|
-
exports.useMultipleSelection = useMultipleSelection;
|
|
55
51
|
//# sourceMappingURL=use-multiple-selection.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-multiple-selection.js","sourceRoot":"","sources":["../src/use-multiple-selection.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"use-multiple-selection.js","sourceRoot":"","sources":["../src/use-multiple-selection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAA;AACtD,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAC3C,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAG3C,OAAO,EAAE,OAAO,EAAE,sBAAwB;AAE1C,MAAM,UAAU,oBAAoB,CAClC,OAAyB,EACzB,yBAAmC,EAAE;IAQrC,OAAO,CAAC,GAAG,EAAE;QACX,KAAK,MAAM,KAAK,IAAI,sBAAsB,EAAE;YAC1C,MAAM,CACJ,KAAK,IAAI,CAAC,IAAI,KAAK,GAAG,OAAO,CAAC,MAAM,EACpC,0FAA0F,CAC3F,CAAA;SACF;IACH,CAAC,EAAE,CAAC,sBAAsB,CAAC,CAAC,CAAA;IAE5B,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,QAAQ,CAAC,IAAI,GAAG,CAAC,sBAAsB,CAAC,CAAC,CAAA;IAEvF,OAAO;QACL,eAAe,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,CAAC,eAAe,CAAC,CAAC;QAC3E,YAAY,EAAE,OAAO,CAAC,kBAAkB,EAAE,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;QACrE,MAAM,EAAE,WAAW,CAAC,MAAM,EAAE,CAAC,eAAe,CAAC,CAAC;QAC9C,MAAM,EAAE,WAAW,CAAC,MAAM,EAAE,EAAE,CAAC;QAC/B,QAAQ,EAAE,WAAW,CAAC,QAAQ,EAAE,EAAE,CAAC;KACpC,CAAA;IAED,SAAS,kBAAkB;QACzB,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE;YAC9B,MAAM,QAAQ,GAAG,UAAU,CAAC,KAAK,CAAC,CAAA;YAClC,OAAO,EAAE,QAAQ,EAAE,CAAA;QACrB,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,SAAS,UAAU,CAAC,KAAa;QAC/B,OAAO,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;IACnC,CAAC;IAED,SAAS,MAAM,CAAC,KAAa;QAC3B,IAAI,UAAU,CAAC,KAAK,CAAC,EAAE;YACrB,QAAQ,CAAC,KAAK,CAAC,CAAA;SAChB;aAAM;YACL,MAAM,CAAC,KAAK,CAAC,CAAA;SACd;IACH,CAAC;IAED,SAAS,MAAM,CAAC,KAAa;QAC3B,kBAAkB,CAAC,eAAe,CAAC,EAAE;YACnC,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,eAAe,CAAC,CAAA;YACvC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;YACjB,OAAO,MAAM,CAAA;QACf,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,SAAS,QAAQ,CAAC,KAAa;QAC7B,kBAAkB,CAAC,eAAe,CAAC,EAAE;YACnC,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,eAAe,CAAC,CAAA;YACvC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;YACpB,OAAO,MAAM,CAAA;QACf,CAAC,CAAC,CAAA;IACJ,CAAC;AACH,CAAC"}
|
|
@@ -1,11 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
const react_1 = require("react");
|
|
5
|
-
function useRenderCounter() {
|
|
6
|
-
const counter = (0, react_1.useRef)(0);
|
|
1
|
+
import { useRef } from 'react';
|
|
2
|
+
export function useRenderCounter() {
|
|
3
|
+
const counter = useRef(0);
|
|
7
4
|
counter.current++;
|
|
8
5
|
return counter.current;
|
|
9
6
|
}
|
|
10
|
-
exports.useRenderCounter = useRenderCounter;
|
|
11
7
|
//# sourceMappingURL=use-render-counter.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-render-counter.js","sourceRoot":"","sources":["../src/use-render-counter.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"use-render-counter.js","sourceRoot":"","sources":["../src/use-render-counter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,CAAA;AAE9B,MAAM,UAAU,gBAAgB;IAC9B,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,CAAA;IAEzB,OAAO,CAAC,OAAO,EAAE,CAAA;IAEjB,OAAO,OAAO,CAAC,OAAO,CAAA;AACxB,CAAC"}
|
|
@@ -1,18 +1,14 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
const react_1 = require("react");
|
|
5
|
-
const types_1 = require("@blackglory/types");
|
|
6
|
-
function useResizeObserver(callback, refs) {
|
|
1
|
+
import { useEffect } from 'react';
|
|
2
|
+
import { isntNull } from '@blackglory/types';
|
|
3
|
+
export function useResizeObserver(callback, refs) {
|
|
7
4
|
const deps = refs.map(x => x.current);
|
|
8
|
-
|
|
5
|
+
useEffect(() => {
|
|
9
6
|
const observer = new ResizeObserver(callback);
|
|
10
7
|
refs
|
|
11
8
|
.map(x => x.current)
|
|
12
|
-
.filter(
|
|
9
|
+
.filter(isntNull)
|
|
13
10
|
.forEach(x => observer.observe(x));
|
|
14
11
|
return () => observer.disconnect();
|
|
15
12
|
}, deps);
|
|
16
13
|
}
|
|
17
|
-
exports.useResizeObserver = useResizeObserver;
|
|
18
14
|
//# sourceMappingURL=use-resize-observer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-resize-observer.js","sourceRoot":"","sources":["../src/use-resize-observer.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"use-resize-observer.js","sourceRoot":"","sources":["../src/use-resize-observer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAA+B,MAAM,OAAO,CAAA;AAC9D,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAE5C,MAAM,UAAU,iBAAiB,CAC/B,QAAgC,EAChC,IAAmE;IAEnE,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAA;IAErC,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,QAAQ,GAAG,IAAI,cAAc,CAAC,QAAQ,CAAC,CAAA;QAE7C,IAAI;aACD,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;aACnB,MAAM,CAAC,QAAQ,CAAC;aAChB,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;QAEpC,OAAO,GAAG,EAAE,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAA;IACpC,CAAC,EAAE,IAAI,CAAC,CAAA;AACV,CAAC"}
|
|
@@ -1,18 +1,15 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
function useSingleSelection(options, defaultSelectedIndex) {
|
|
8
|
-
(0, use_iife_js_1.useIIFE)(() => {
|
|
9
|
-
(0, errors_1.assert)(defaultSelectedIndex >= 0 && defaultSelectedIndex < options.length, 'The parameter defaultSelectedIndex must be in the range of 0 to values.length');
|
|
1
|
+
import { useState, useMemo, useCallback } from 'react';
|
|
2
|
+
import { assert } from '@blackglory/errors';
|
|
3
|
+
import { useIIFE } from "./use-iife.js";
|
|
4
|
+
export function useSingleSelection(options, defaultSelectedIndex) {
|
|
5
|
+
useIIFE(() => {
|
|
6
|
+
assert(defaultSelectedIndex >= 0 && defaultSelectedIndex < options.length, 'The parameter defaultSelectedIndex must be in the range of 0 to values.length');
|
|
10
7
|
}, [defaultSelectedIndex]);
|
|
11
|
-
const [selectedIndex, setSelectedIndex] =
|
|
8
|
+
const [selectedIndex, setSelectedIndex] = useState(defaultSelectedIndex);
|
|
12
9
|
return {
|
|
13
10
|
selectedIndex,
|
|
14
|
-
optionStates:
|
|
15
|
-
select:
|
|
11
|
+
optionStates: useMemo(createOptionStates, [options, selectedIndex]),
|
|
12
|
+
select: useCallback(select, [])
|
|
16
13
|
};
|
|
17
14
|
function createOptionStates() {
|
|
18
15
|
return options.map((_, index) => ({
|
|
@@ -23,5 +20,4 @@ function useSingleSelection(options, defaultSelectedIndex) {
|
|
|
23
20
|
setSelectedIndex(index);
|
|
24
21
|
}
|
|
25
22
|
}
|
|
26
|
-
exports.useSingleSelection = useSingleSelection;
|
|
27
23
|
//# sourceMappingURL=use-single-selection.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-single-selection.js","sourceRoot":"","sources":["../src/use-single-selection.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"use-single-selection.js","sourceRoot":"","sources":["../src/use-single-selection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAA;AACtD,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAG3C,OAAO,EAAE,OAAO,EAAE,sBAAwB;AAE1C,MAAM,UAAU,kBAAkB,CAChC,OAAyB,EACzB,oBAA4B;IAM5B,OAAO,CAAC,GAAG,EAAE;QACX,MAAM,CACJ,oBAAoB,IAAI,CAAC,IAAI,oBAAoB,GAAG,OAAO,CAAC,MAAM,EAClE,+EAA+E,CAChF,CAAA;IACH,CAAC,EAAE,CAAC,oBAAoB,CAAC,CAAC,CAAA;IAE1B,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAC,oBAAoB,CAAC,CAAA;IAExE,OAAO;QACL,aAAa;QACb,YAAY,EAAE,OAAO,CAAC,kBAAkB,EAAE,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;QACnE,MAAM,EAAE,WAAW,CAAC,MAAM,EAAE,EAAE,CAAC;KAChC,CAAA;IAED,SAAS,kBAAkB;QACzB,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;YAChC,QAAQ,EAAE,KAAK,KAAK,aAAa;SAClC,CAAC,CAAC,CAAA;IACL,CAAC;IAED,SAAS,MAAM,CAAC,KAAa;QAC3B,gBAAgB,CAAC,KAAK,CAAC,CAAA;IACzB,CAAC;AACH,CAAC"}
|
package/lib/use-state-cycle.js
CHANGED
|
@@ -1,10 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
function useStateCycle(orderedStates, initialStateIndex = 0) {
|
|
6
|
-
const [index, setIndex] = (0, react_1.useState)(initialStateIndex);
|
|
7
|
-
return [orderedStates[index], (0, react_1.useCallback)(next, [orderedStates])];
|
|
1
|
+
import { useState, useCallback } from 'react';
|
|
2
|
+
export function useStateCycle(orderedStates, initialStateIndex = 0) {
|
|
3
|
+
const [index, setIndex] = useState(initialStateIndex);
|
|
4
|
+
return [orderedStates[index], useCallback(next, [orderedStates])];
|
|
8
5
|
function next() {
|
|
9
6
|
setIndex(index => {
|
|
10
7
|
if (index + 1 < orderedStates.length) {
|
|
@@ -16,5 +13,4 @@ function useStateCycle(orderedStates, initialStateIndex = 0) {
|
|
|
16
13
|
});
|
|
17
14
|
}
|
|
18
15
|
}
|
|
19
|
-
exports.useStateCycle = useStateCycle;
|
|
20
16
|
//# sourceMappingURL=use-state-cycle.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-state-cycle.js","sourceRoot":"","sources":["../src/use-state-cycle.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"use-state-cycle.js","sourceRoot":"","sources":["../src/use-state-cycle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,OAAO,CAAA;AAG7C,MAAM,UAAU,aAAa,CAC3B,aAA+B,EAC/B,oBAA4B,CAAC;IAE7B,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,iBAAiB,CAAC,CAAA;IAErD,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,WAAW,CAAC,IAAI,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,CAAA;IAEjE,SAAS,IAAI;QACX,QAAQ,CAAC,KAAK,CAAC,EAAE;YACf,IAAI,KAAK,GAAG,CAAC,GAAG,aAAa,CAAC,MAAM,EAAE;gBACpC,OAAO,KAAK,GAAG,CAAC,CAAA;aACjB;iBAAM;gBACL,OAAO,CAAC,CAAA;aACT;QACH,CAAC,CAAC,CAAA;IACJ,CAAC;AACH,CAAC"}
|
package/lib/use-step.js
CHANGED
|
@@ -1,10 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
function useStep(steps, initialStepIndex = 0) {
|
|
6
|
-
const [index, setIndex] = (0, react_1.useState)(initialStepIndex);
|
|
7
|
-
return [steps[index], (0, react_1.useCallback)(next, [steps]), (0, react_1.useCallback)(previous, [])];
|
|
1
|
+
import { useState, useCallback } from 'react';
|
|
2
|
+
export function useStep(steps, initialStepIndex = 0) {
|
|
3
|
+
const [index, setIndex] = useState(initialStepIndex);
|
|
4
|
+
return [steps[index], useCallback(next, [steps]), useCallback(previous, [])];
|
|
8
5
|
function next() {
|
|
9
6
|
setIndex(index => {
|
|
10
7
|
if (index === steps.length - 1) {
|
|
@@ -26,5 +23,4 @@ function useStep(steps, initialStepIndex = 0) {
|
|
|
26
23
|
});
|
|
27
24
|
}
|
|
28
25
|
}
|
|
29
|
-
exports.useStep = useStep;
|
|
30
26
|
//# sourceMappingURL=use-step.js.map
|
package/lib/use-step.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-step.js","sourceRoot":"","sources":["../src/use-step.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"use-step.js","sourceRoot":"","sources":["../src/use-step.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,OAAO,CAAA;AAG7C,MAAM,UAAU,OAAO,CACrB,KAAuB,EACvB,mBAA2B,CAAC;IAE5B,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,gBAAgB,CAAC,CAAA;IAEpD,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,WAAW,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,WAAW,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAA;IAE5E,SAAS,IAAI;QACX,QAAQ,CAAC,KAAK,CAAC,EAAE;YACf,IAAI,KAAK,KAAK,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;gBAC9B,OAAO,KAAK,CAAA;aACb;iBAAM;gBACL,OAAO,KAAK,GAAG,CAAC,CAAA;aACjB;QACH,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,SAAS,QAAQ;QACf,QAAQ,CAAC,KAAK,CAAC,EAAE;YACf,IAAI,KAAK,KAAK,CAAC,EAAE;gBACf,OAAO,KAAK,CAAA;aACb;iBAAM;gBACL,OAAO,KAAK,GAAG,CAAC,CAAA;aACjB;QACH,CAAC,CAAC,CAAA;IACJ,CAAC;AACH,CAAC"}
|
package/lib/use-toggle.js
CHANGED
|
@@ -1,13 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
function useToggle(initialState = false) {
|
|
6
|
-
const [state, setState] = (0, react_1.useState)(initialState);
|
|
7
|
-
return [state, (0, react_1.useCallback)(toggle, [])];
|
|
1
|
+
import { useState, useCallback } from 'react';
|
|
2
|
+
export function useToggle(initialState = false) {
|
|
3
|
+
const [state, setState] = useState(initialState);
|
|
4
|
+
return [state, useCallback(toggle, [])];
|
|
8
5
|
function toggle() {
|
|
9
6
|
setState(state => !state);
|
|
10
7
|
}
|
|
11
8
|
}
|
|
12
|
-
exports.useToggle = useToggle;
|
|
13
9
|
//# sourceMappingURL=use-toggle.js.map
|
package/lib/use-toggle.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-toggle.js","sourceRoot":"","sources":["../src/use-toggle.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"use-toggle.js","sourceRoot":"","sources":["../src/use-toggle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,OAAO,CAAA;AAE7C,MAAM,UAAU,SAAS,CACvB,eAAwB,KAAK;IAE7B,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAA;IAChD,OAAO,CAAC,KAAK,EAAE,WAAW,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAA;IAEvC,SAAS,MAAM;QACb,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAA;IAC3B,CAAC;AACH,CAAC"}
|
package/lib/use-unmount.js
CHANGED
|
@@ -1,9 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
const react_1 = require("react");
|
|
5
|
-
function useUnmount(effect) {
|
|
6
|
-
(0, react_1.useEffect)(() => effect, []);
|
|
1
|
+
import { useEffect } from 'react';
|
|
2
|
+
export function useUnmount(effect) {
|
|
3
|
+
useEffect(() => effect, []);
|
|
7
4
|
}
|
|
8
|
-
exports.useUnmount = useUnmount;
|
|
9
5
|
//# sourceMappingURL=use-unmount.js.map
|
package/lib/use-unmount.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-unmount.js","sourceRoot":"","sources":["../src/use-unmount.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"use-unmount.js","sourceRoot":"","sources":["../src/use-unmount.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAEjC,MAAM,UAAU,UAAU,CAAC,MAAkB;IAC3C,SAAS,CAAC,GAAG,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;AAC7B,CAAC"}
|
package/lib/use-update-effect.js
CHANGED
|
@@ -1,15 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
const
|
|
5
|
-
|
|
6
|
-
function useUpdateEffect(effect, deps) {
|
|
7
|
-
const isFirstRender = (0, use_is_first_render_js_1.useIsFirstRender)();
|
|
8
|
-
(0, react_1.useEffect)(() => {
|
|
1
|
+
import { useEffect } from 'react';
|
|
2
|
+
import { useIsFirstRender } from './use-is-first-render.js';
|
|
3
|
+
export function useUpdateEffect(effect, deps) {
|
|
4
|
+
const isFirstRender = useIsFirstRender();
|
|
5
|
+
useEffect(() => {
|
|
9
6
|
if (!isFirstRender()) {
|
|
10
7
|
return effect();
|
|
11
8
|
}
|
|
12
9
|
}, deps);
|
|
13
10
|
}
|
|
14
|
-
exports.useUpdateEffect = useUpdateEffect;
|
|
15
11
|
//# sourceMappingURL=use-update-effect.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-update-effect.js","sourceRoot":"","sources":["../src/use-update-effect.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"use-update-effect.js","sourceRoot":"","sources":["../src/use-update-effect.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAkB,MAAM,OAAO,CAAA;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAA;AAE3D,MAAM,UAAU,eAAe,CAC7B,MAAsB,EACtB,IAA2B;IAE3B,MAAM,aAAa,GAAG,gBAAgB,EAAE,CAAA;IAExC,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,aAAa,EAAE,EAAE;YACpB,OAAO,MAAM,EAAE,CAAA;SAChB;IACH,CAAC,EAAE,IAAI,CAAC,CAAA;AACV,CAAC"}
|