UNPKG

@ozen-ui/kit

Version:

React component library

16 lines (15 loc) 781 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.useBoolean = useBoolean; var tslib_1 = require("tslib"); var react_1 = require("react"); function useBoolean( /** Значение по умолчанию */ defaultValue) { if (defaultValue === void 0) { defaultValue = false; } var _a = tslib_1.__read((0, react_1.useState)(defaultValue), 2), value = _a[0], setValue = _a[1]; var on = (0, react_1.useCallback)(function () { return setValue(true); }, []); var off = (0, react_1.useCallback)(function () { return setValue(false); }, []); var toggle = (0, react_1.useCallback)(function () { return setValue(function (value) { return !value; }); }, []); return [value, { on: on, off: off, toggle: toggle, set: setValue }]; }