Files
NapCatQQ/.pnpm-store/v3/files/90/7dd7c5537fd713c1a385f562187ec45f0649a916349d82ffaedf0691ebbf191fc724d423eb0750b44e370e9f724a8e027ad74b7abf5f597247a30440140b83
T
TanTan e311ca3275
Build NapCat Artifacts / Windows Loader Test (push) Canceled after 0s
Build NapCat Artifacts / Type Check & Test (push) Canceled after 0s
Build NapCat Artifacts / Build NapCat.Framework (push) Canceled after 0s
Build NapCat Artifacts / Build NapCat.Shell (push) Canceled after 0s
docs: 仓库链接指向本镜像仓库
2026-11-13 09:25:58 +08:00

50 lines
1.3 KiB
Plaintext

"use strict";
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports["default"] = void 0;
var _tslib = require("tslib");
var _react = require("react");
var _useMemoizedFn = _interopRequireDefault(require("../useMemoizedFn"));
function useSet(initialValue) {
var getInitValue = function getInitValue() {
return new Set(initialValue);
};
var _a = (0, _tslib.__read)((0, _react.useState)(getInitValue), 2),
set = _a[0],
setSet = _a[1];
var updateSet = function updateSet(updater) {
setSet(function (prevSet) {
return updater(new Set(prevSet));
});
};
var add = function add(key) {
if (set.has(key)) {
return;
}
updateSet(function (newSet) {
newSet.add(key);
return newSet;
});
};
var remove = function remove(key) {
if (!set.has(key)) {
return;
}
updateSet(function (newSet) {
newSet["delete"](key);
return newSet;
});
};
var reset = function reset() {
return setSet(getInitValue());
};
return [set, {
add: (0, _useMemoizedFn["default"])(add),
remove: (0, _useMemoizedFn["default"])(remove),
reset: (0, _useMemoizedFn["default"])(reset)
}];
}
var _default = exports["default"] = useSet;