kui-utils 0.0.3 → 0.0.4
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/cjs/index.js +35 -0
- package/cjs/index.js.map +1 -1
- package/index.d.ts +8 -1
- package/index.js +34 -2
- package/index.js.map +1 -1
- package/package.json +1 -1
package/cjs/index.js
CHANGED
|
@@ -4,6 +4,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
4
4
|
|
|
5
5
|
var React = require('react');
|
|
6
6
|
var _ = require('lodash');
|
|
7
|
+
var reactRouter = require('react-router');
|
|
7
8
|
var mobx = require('mobx');
|
|
8
9
|
|
|
9
10
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
@@ -66,6 +67,37 @@ var useToggle = function (isModalOpen) {
|
|
|
66
67
|
return [isOpen, handleOpen, handleClose];
|
|
67
68
|
};
|
|
68
69
|
|
|
70
|
+
var useDebounce = function (value, delay, callback, deps) {
|
|
71
|
+
var debouncedChangeHandler = React.useMemo(function () { return ___default["default"].debounce(callback, delay); }, [value, delay, deps]);
|
|
72
|
+
React.useEffect(function () {
|
|
73
|
+
if (value) {
|
|
74
|
+
debouncedChangeHandler();
|
|
75
|
+
}
|
|
76
|
+
return function () {
|
|
77
|
+
debouncedChangeHandler.cancel();
|
|
78
|
+
};
|
|
79
|
+
}, [value, delay, deps]);
|
|
80
|
+
};
|
|
81
|
+
|
|
82
|
+
var useTabIndex = function (paths) {
|
|
83
|
+
var searchParams = reactRouter.useLocation().search;
|
|
84
|
+
return paths.findIndex(function (path) { return path.includes(searchParams); }) || null;
|
|
85
|
+
};
|
|
86
|
+
|
|
87
|
+
var useWindowWidth = function (time) {
|
|
88
|
+
if (time === void 0) { time = 10; }
|
|
89
|
+
var _a = React.useState(0), width = _a[0], setWidth = _a[1];
|
|
90
|
+
React.useEffect(function () {
|
|
91
|
+
setWidth(window.innerWidth);
|
|
92
|
+
var handleResize = ___default["default"].debounce(function () {
|
|
93
|
+
setWidth(window.innerWidth);
|
|
94
|
+
}, time);
|
|
95
|
+
window.addEventListener("resize", handleResize);
|
|
96
|
+
return function () { return window.removeEventListener("resize", handleResize); };
|
|
97
|
+
}, []);
|
|
98
|
+
return width;
|
|
99
|
+
};
|
|
100
|
+
|
|
69
101
|
var addLeadZero = function (number) { return (number < 10 ? "0".concat(number) : number); };
|
|
70
102
|
|
|
71
103
|
var addToArrayByCondition = function (condition, elem) { return (condition ? [elem] : []); };
|
|
@@ -2280,6 +2312,9 @@ exports.strongPasswordRegExp = strongPasswordRegExp;
|
|
|
2280
2312
|
exports.swiftRegExp = swiftRegExp;
|
|
2281
2313
|
exports.toNumber = toNumber;
|
|
2282
2314
|
exports.updateQueryParams = updateQueryParams;
|
|
2315
|
+
exports.useDebounce = useDebounce;
|
|
2283
2316
|
exports.useForkRef = useForkRef;
|
|
2317
|
+
exports.useTabIndex = useTabIndex;
|
|
2284
2318
|
exports.useToggle = useToggle;
|
|
2319
|
+
exports.useWindowWidth = useWindowWidth;
|
|
2285
2320
|
//# sourceMappingURL=index.js.map
|