extra-react-hooks 0.1.3 → 0.1.7
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/CHANGELOG.md +54 -0
- package/README.md +32 -0
- package/dist/es2015/index.min.mjs +2 -2
- package/dist/es2015/index.min.mjs.map +1 -1
- package/dist/es2015/index.mjs +109 -66
- package/dist/es2015/index.mjs.map +1 -1
- package/dist/es2015/index.umd.js +114 -67
- package/dist/es2015/index.umd.js.map +1 -1
- package/dist/es2015/index.umd.min.js +2 -2
- package/dist/es2015/index.umd.min.js.map +1 -1
- package/dist/es2018/index.min.mjs +2 -2
- package/dist/es2018/index.min.mjs.map +1 -1
- package/dist/es2018/index.mjs +109 -66
- package/dist/es2018/index.mjs.map +1 -1
- package/dist/es2018/index.umd.js +114 -67
- package/dist/es2018/index.umd.js.map +1 -1
- package/dist/es2018/index.umd.min.js +2 -2
- package/dist/es2018/index.umd.min.js.map +1 -1
- package/lib/es2015/index.d.ts +4 -0
- package/lib/es2015/index.js +4 -0
- package/lib/es2015/index.js.map +1 -1
- package/lib/es2015/use-increment.d.ts +1 -0
- package/lib/es2015/use-increment.js +16 -0
- package/lib/es2015/use-increment.js.map +1 -0
- package/lib/es2015/use-is-mounted.d.ts +1 -0
- package/lib/es2015/use-is-mounted.js +17 -0
- package/lib/es2015/use-is-mounted.js.map +1 -0
- package/lib/es2015/use-mount.js +1 -1
- package/lib/es2015/use-mount.js.map +1 -1
- package/lib/es2015/use-resize-observer.d.ts +2 -0
- package/lib/es2015/use-resize-observer.js +18 -0
- package/lib/es2015/use-resize-observer.js.map +1 -0
- package/lib/es2015/use-single-selection.js +5 -5
- package/lib/es2015/use-single-selection.js.map +1 -1
- package/lib/es2015/use-state-cycle.js +8 -5
- package/lib/es2015/use-state-cycle.js.map +1 -1
- package/lib/es2015/use-step.d.ts +1 -0
- package/lib/es2015/use-step.js +32 -0
- package/lib/es2015/use-step.js.map +1 -0
- package/lib/es2015/use-toggle.js +1 -1
- package/lib/es2015/use-toggle.js.map +1 -1
- package/lib/es2018/index.d.ts +4 -0
- package/lib/es2018/index.js +4 -0
- package/lib/es2018/index.js.map +1 -1
- package/lib/es2018/use-increment.d.ts +1 -0
- package/lib/es2018/use-increment.js +16 -0
- package/lib/es2018/use-increment.js.map +1 -0
- package/lib/es2018/use-is-mounted.d.ts +1 -0
- package/lib/es2018/use-is-mounted.js +17 -0
- package/lib/es2018/use-is-mounted.js.map +1 -0
- package/lib/es2018/use-mount.js +1 -1
- package/lib/es2018/use-mount.js.map +1 -1
- package/lib/es2018/use-resize-observer.d.ts +2 -0
- package/lib/es2018/use-resize-observer.js +18 -0
- package/lib/es2018/use-resize-observer.js.map +1 -0
- package/lib/es2018/use-single-selection.js +5 -5
- package/lib/es2018/use-single-selection.js.map +1 -1
- package/lib/es2018/use-state-cycle.js +8 -5
- package/lib/es2018/use-state-cycle.js.map +1 -1
- package/lib/es2018/use-step.d.ts +1 -0
- package/lib/es2018/use-step.js +32 -0
- package/lib/es2018/use-step.js.map +1 -0
- package/lib/es2018/use-toggle.js +1 -1
- package/lib/es2018/use-toggle.js.map +1 -1
- package/package.json +28 -22
package/dist/es2018/index.umd.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) :
|
|
3
3
|
typeof define === 'function' && define.amd ? define(['exports'], factory) :
|
|
4
4
|
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.ExtraReactHooks = {}));
|
|
5
|
-
}(this, (function (exports) { 'use strict';
|
|
5
|
+
})(this, (function (exports) { 'use strict';
|
|
6
6
|
|
|
7
7
|
var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
|
|
8
8
|
|
|
@@ -2462,10 +2462,32 @@
|
|
|
2462
2462
|
react.exports = react_development;
|
|
2463
2463
|
}
|
|
2464
2464
|
|
|
2465
|
+
function useIncrement(initialValue) {
|
|
2466
|
+
const [value, setValue] = react.exports.useState(initialValue);
|
|
2467
|
+
const increment = react.exports.useCallback((step = 1) => {
|
|
2468
|
+
setValue(value => value + step);
|
|
2469
|
+
}, []);
|
|
2470
|
+
const reset = react.exports.useCallback(() => {
|
|
2471
|
+
setValue(initialValue);
|
|
2472
|
+
}, []);
|
|
2473
|
+
return [value, increment, reset];
|
|
2474
|
+
}
|
|
2475
|
+
|
|
2465
2476
|
function useMount(effect) {
|
|
2466
2477
|
react.exports.useEffect(effect, []);
|
|
2467
2478
|
}
|
|
2468
2479
|
|
|
2480
|
+
function useIsMounted() {
|
|
2481
|
+
const isMounted = react.exports.useRef(false);
|
|
2482
|
+
useMount(() => {
|
|
2483
|
+
isMounted.current = true;
|
|
2484
|
+
return () => {
|
|
2485
|
+
isMounted.current = false;
|
|
2486
|
+
};
|
|
2487
|
+
});
|
|
2488
|
+
return () => isMounted.current;
|
|
2489
|
+
}
|
|
2490
|
+
|
|
2469
2491
|
var es2018$1 = {};
|
|
2470
2492
|
|
|
2471
2493
|
var array = {};
|
|
@@ -2518,8 +2540,8 @@
|
|
|
2518
2540
|
const null_1$1 = _null;
|
|
2519
2541
|
const undefined_1$2 = _undefined;
|
|
2520
2542
|
function isAsyncIterable(val) {
|
|
2521
|
-
return null_1$1.isntNull(val)
|
|
2522
|
-
&& undefined_1$2.isntUndefined(val)
|
|
2543
|
+
return (0, null_1$1.isntNull)(val)
|
|
2544
|
+
&& (0, undefined_1$2.isntUndefined)(val)
|
|
2523
2545
|
&& typeof val[Symbol.asyncIterator] === 'function';
|
|
2524
2546
|
}
|
|
2525
2547
|
asyncIterable.isAsyncIterable = isAsyncIterable;
|
|
@@ -2556,36 +2578,20 @@
|
|
|
2556
2578
|
|
|
2557
2579
|
var string = {};
|
|
2558
2580
|
|
|
2559
|
-
string.
|
|
2581
|
+
string.isntString = string.isString = void 0;
|
|
2560
2582
|
function isString(val) {
|
|
2561
|
-
return
|
|
2583
|
+
return typeof val === 'string';
|
|
2562
2584
|
}
|
|
2563
2585
|
string.isString = isString;
|
|
2564
2586
|
function isntString(val) {
|
|
2565
2587
|
return !isString(val);
|
|
2566
2588
|
}
|
|
2567
2589
|
string.isntString = isntString;
|
|
2568
|
-
function isStringPrimitive(val) {
|
|
2569
|
-
return typeof val === 'string';
|
|
2570
|
-
}
|
|
2571
|
-
string.isStringPrimitive = isStringPrimitive;
|
|
2572
|
-
function isntStringPrimitive(val) {
|
|
2573
|
-
return !isStringPrimitive(val);
|
|
2574
|
-
}
|
|
2575
|
-
string.isntStringPrimitive = isntStringPrimitive;
|
|
2576
|
-
function isStringObject(val) {
|
|
2577
|
-
return typeof val === 'object' && val instanceof String;
|
|
2578
|
-
}
|
|
2579
|
-
string.isStringObject = isStringObject;
|
|
2580
|
-
function isntStringObject(val) {
|
|
2581
|
-
return !isStringObject(val);
|
|
2582
|
-
}
|
|
2583
|
-
string.isntStringObject = isntStringObject;
|
|
2584
2590
|
|
|
2585
|
-
char.
|
|
2591
|
+
char.isntChar = char.isChar = void 0;
|
|
2586
2592
|
const string_1$1 = string;
|
|
2587
2593
|
function isChar(val) {
|
|
2588
|
-
return (string_1$1.isString
|
|
2594
|
+
return (0, string_1$1.isString)(val)
|
|
2589
2595
|
&& val.length === 1;
|
|
2590
2596
|
}
|
|
2591
2597
|
char.isChar = isChar;
|
|
@@ -2593,24 +2599,6 @@
|
|
|
2593
2599
|
return !isChar(val);
|
|
2594
2600
|
}
|
|
2595
2601
|
char.isntChar = isntChar;
|
|
2596
|
-
function isCharPrimitive(val) {
|
|
2597
|
-
return string_1$1.isString(val)
|
|
2598
|
-
&& val.length === 1;
|
|
2599
|
-
}
|
|
2600
|
-
char.isCharPrimitive = isCharPrimitive;
|
|
2601
|
-
function isntCharPrimitive(val) {
|
|
2602
|
-
return !isCharPrimitive(val);
|
|
2603
|
-
}
|
|
2604
|
-
char.isntCharPrimitive = isntCharPrimitive;
|
|
2605
|
-
function isCharObject(val) {
|
|
2606
|
-
return string_1$1.isStringObject(val)
|
|
2607
|
-
&& val.length === 1;
|
|
2608
|
-
}
|
|
2609
|
-
char.isCharObject = isCharObject;
|
|
2610
|
-
function isntCharObject(val) {
|
|
2611
|
-
return !isCharObject(val);
|
|
2612
|
-
}
|
|
2613
|
-
char.isntCharObject = isntCharObject;
|
|
2614
2602
|
|
|
2615
2603
|
var date = {};
|
|
2616
2604
|
|
|
@@ -2632,6 +2620,18 @@
|
|
|
2632
2620
|
}
|
|
2633
2621
|
_enum.inEnum = inEnum;
|
|
2634
2622
|
|
|
2623
|
+
var error = {};
|
|
2624
|
+
|
|
2625
|
+
error.isntError = error.isError = void 0;
|
|
2626
|
+
function isError(val) {
|
|
2627
|
+
return val instanceof Error;
|
|
2628
|
+
}
|
|
2629
|
+
error.isError = isError;
|
|
2630
|
+
function isntError(val) {
|
|
2631
|
+
return !isError(val);
|
|
2632
|
+
}
|
|
2633
|
+
error.isntError = isntError;
|
|
2634
|
+
|
|
2635
2635
|
var falsy = {};
|
|
2636
2636
|
|
|
2637
2637
|
falsy.isntFalsy = falsy.isFalsy = void 0;
|
|
@@ -2662,8 +2662,8 @@
|
|
|
2662
2662
|
const null_1 = _null;
|
|
2663
2663
|
const undefined_1$1 = _undefined;
|
|
2664
2664
|
function isIterable(val) {
|
|
2665
|
-
return null_1.isntNull(val)
|
|
2666
|
-
&& undefined_1$1.isntUndefined(val)
|
|
2665
|
+
return (0, null_1.isntNull)(val)
|
|
2666
|
+
&& (0, undefined_1$1.isntUndefined)(val)
|
|
2667
2667
|
&& typeof val[Symbol.iterator] === 'function';
|
|
2668
2668
|
}
|
|
2669
2669
|
iterable.isIterable = isIterable;
|
|
@@ -2717,16 +2717,16 @@
|
|
|
2717
2717
|
const number_1 = number;
|
|
2718
2718
|
const undefined_1 = _undefined;
|
|
2719
2719
|
function isJsonRpcId(val) {
|
|
2720
|
-
return string_1.isString(val) || number_1.isNumber(val);
|
|
2720
|
+
return (0, string_1.isString)(val) || (0, number_1.isNumber)(val);
|
|
2721
2721
|
}
|
|
2722
2722
|
function isJsonRpcParams(val) {
|
|
2723
|
-
return array_1.isArray(val) || object_1.isObject(val);
|
|
2723
|
+
return (0, array_1.isArray)(val) || (0, object_1.isObject)(val);
|
|
2724
2724
|
}
|
|
2725
2725
|
function isJsonRpcNotification(val) {
|
|
2726
|
-
return object_1.isRecord(val)
|
|
2727
|
-
&& string_1.isString(val.jsonrpc)
|
|
2728
|
-
&& string_1.isString(val.method)
|
|
2729
|
-
&& undefined_1.isUndefined(val.id)
|
|
2726
|
+
return (0, object_1.isRecord)(val)
|
|
2727
|
+
&& (0, string_1.isString)(val.jsonrpc)
|
|
2728
|
+
&& (0, string_1.isString)(val.method)
|
|
2729
|
+
&& (0, undefined_1.isUndefined)(val.id)
|
|
2730
2730
|
&& isJsonRpcParams(val.params);
|
|
2731
2731
|
}
|
|
2732
2732
|
jsonRpc.isJsonRpcNotification = isJsonRpcNotification;
|
|
@@ -2735,9 +2735,9 @@
|
|
|
2735
2735
|
}
|
|
2736
2736
|
jsonRpc.isntJsonRpcNotification = isntJsonRpcNotification;
|
|
2737
2737
|
function isJsonRpcRequest(val) {
|
|
2738
|
-
return object_1.isRecord(val)
|
|
2739
|
-
&& string_1.isString(val.jsonrpc)
|
|
2740
|
-
&& string_1.isString(val.method)
|
|
2738
|
+
return (0, object_1.isRecord)(val)
|
|
2739
|
+
&& (0, string_1.isString)(val.jsonrpc)
|
|
2740
|
+
&& (0, string_1.isString)(val.method)
|
|
2741
2741
|
&& isJsonRpcId(val.id)
|
|
2742
2742
|
&& isJsonRpcParams(val.params);
|
|
2743
2743
|
}
|
|
@@ -2747,10 +2747,10 @@
|
|
|
2747
2747
|
}
|
|
2748
2748
|
jsonRpc.isntJsonRpcRequest = isntJsonRpcRequest;
|
|
2749
2749
|
function isJsonRpcSuccess(val) {
|
|
2750
|
-
return object_1.isRecord(val)
|
|
2751
|
-
&& string_1.isString(val.jsonrpc)
|
|
2752
|
-
&& string_1.isString(val.id)
|
|
2753
|
-
&&
|
|
2750
|
+
return (0, object_1.isRecord)(val)
|
|
2751
|
+
&& (0, string_1.isString)(val.jsonrpc)
|
|
2752
|
+
&& (0, string_1.isString)(val.id)
|
|
2753
|
+
&& 'result' in val;
|
|
2754
2754
|
}
|
|
2755
2755
|
jsonRpc.isJsonRpcSuccess = isJsonRpcSuccess;
|
|
2756
2756
|
function isntJsonRpcSuccess(val) {
|
|
@@ -2758,8 +2758,8 @@
|
|
|
2758
2758
|
}
|
|
2759
2759
|
jsonRpc.isntJsonRpcSuccess = isntJsonRpcSuccess;
|
|
2760
2760
|
function isJsonRpcError(val) {
|
|
2761
|
-
return object_1.isRecord(val)
|
|
2762
|
-
&& string_1.isString(val.jsonrpc)
|
|
2761
|
+
return (0, object_1.isRecord)(val)
|
|
2762
|
+
&& (0, string_1.isString)(val.jsonrpc)
|
|
2763
2763
|
&& isJsonRpcId(val.id)
|
|
2764
2764
|
&& isJsonRpcErrorObject(val.error);
|
|
2765
2765
|
}
|
|
@@ -2769,10 +2769,10 @@
|
|
|
2769
2769
|
}
|
|
2770
2770
|
jsonRpc.isntJsonRpcError = isntJsonRpcError;
|
|
2771
2771
|
function isJsonRpcErrorObject(val) {
|
|
2772
|
-
return object_1.isRecord(val)
|
|
2773
|
-
&& number_1.isNumber(val.code)
|
|
2774
|
-
&& string_1.isString(val.message)
|
|
2775
|
-
&& (undefined_1.isUndefined(val.data) || object_1.isObject(val.data));
|
|
2772
|
+
return (0, object_1.isRecord)(val)
|
|
2773
|
+
&& (0, number_1.isNumber)(val.code)
|
|
2774
|
+
&& (0, string_1.isString)(val.message)
|
|
2775
|
+
&& ((0, undefined_1.isUndefined)(val.data) || (0, object_1.isObject)(val.data));
|
|
2776
2776
|
}
|
|
2777
2777
|
|
|
2778
2778
|
var json = {};
|
|
@@ -2824,6 +2824,7 @@
|
|
|
2824
2824
|
__exportStar(char, exports);
|
|
2825
2825
|
__exportStar(date, exports);
|
|
2826
2826
|
__exportStar(_enum, exports);
|
|
2827
|
+
__exportStar(error, exports);
|
|
2827
2828
|
__exportStar(falsy, exports);
|
|
2828
2829
|
__exportStar(_function, exports);
|
|
2829
2830
|
__exportStar(iterable, exports);
|
|
@@ -2937,14 +2938,17 @@
|
|
|
2937
2938
|
|
|
2938
2939
|
function useStateCycle(stateList, initialStateIndex = 0) {
|
|
2939
2940
|
const [index, setIndex] = react.exports.useState(initialStateIndex);
|
|
2940
|
-
return [
|
|
2941
|
+
return [
|
|
2942
|
+
stateList[index],
|
|
2943
|
+
() => setIndex(index => {
|
|
2941
2944
|
if (index + 1 < stateList.length) {
|
|
2942
|
-
|
|
2945
|
+
return index + 1;
|
|
2943
2946
|
}
|
|
2944
2947
|
else {
|
|
2945
|
-
|
|
2948
|
+
return 0;
|
|
2946
2949
|
}
|
|
2947
|
-
}
|
|
2950
|
+
})
|
|
2951
|
+
];
|
|
2948
2952
|
}
|
|
2949
2953
|
|
|
2950
2954
|
function useToggle(initialState = false) {
|
|
@@ -2953,12 +2957,55 @@
|
|
|
2953
2957
|
return [state, toggle];
|
|
2954
2958
|
}
|
|
2955
2959
|
|
|
2960
|
+
function useResizeObserver(callback, refs) {
|
|
2961
|
+
const deps = refs.map(x => x.current);
|
|
2962
|
+
react.exports.useEffect(() => {
|
|
2963
|
+
const observer = new ResizeObserver(callback);
|
|
2964
|
+
refs
|
|
2965
|
+
.map(x => x.current)
|
|
2966
|
+
.filter(es2018$1.isntNull)
|
|
2967
|
+
.forEach(x => observer.observe(x));
|
|
2968
|
+
return () => observer.disconnect();
|
|
2969
|
+
}, deps);
|
|
2970
|
+
}
|
|
2971
|
+
|
|
2972
|
+
function useStep(steps, initialStepIndex = 0) {
|
|
2973
|
+
const [index, setIndex] = react.exports.useState(initialStepIndex);
|
|
2974
|
+
return [
|
|
2975
|
+
steps[index],
|
|
2976
|
+
() => {
|
|
2977
|
+
setIndex(index => {
|
|
2978
|
+
if (index === steps.length - 1) {
|
|
2979
|
+
return index;
|
|
2980
|
+
}
|
|
2981
|
+
else {
|
|
2982
|
+
return index + 1;
|
|
2983
|
+
}
|
|
2984
|
+
});
|
|
2985
|
+
},
|
|
2986
|
+
() => {
|
|
2987
|
+
setIndex(index => {
|
|
2988
|
+
if (index === 0) {
|
|
2989
|
+
return index;
|
|
2990
|
+
}
|
|
2991
|
+
else {
|
|
2992
|
+
return index - 1;
|
|
2993
|
+
}
|
|
2994
|
+
});
|
|
2995
|
+
}
|
|
2996
|
+
];
|
|
2997
|
+
}
|
|
2998
|
+
|
|
2999
|
+
exports.useIncrement = useIncrement;
|
|
3000
|
+
exports.useIsMounted = useIsMounted;
|
|
2956
3001
|
exports.useMount = useMount;
|
|
3002
|
+
exports.useResizeObserver = useResizeObserver;
|
|
2957
3003
|
exports.useSingleSelection = useSingleSelection;
|
|
2958
3004
|
exports.useStateCycle = useStateCycle;
|
|
3005
|
+
exports.useStep = useStep;
|
|
2959
3006
|
exports.useToggle = useToggle;
|
|
2960
3007
|
|
|
2961
3008
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
2962
3009
|
|
|
2963
|
-
}))
|
|
3010
|
+
}));
|
|
2964
3011
|
//# sourceMappingURL=index.umd.js.map
|