mirror of
https://github.com/Zagrios/bs-manager.git
synced 2026-07-03 14:08:25 +02:00
[feature] disable hardware acceleration and use symlinks work, just still need to translate
This commit is contained in:
@@ -34,36 +34,36 @@ export function ToogleSwitch({ checked, className, classNames, bgColor, onChange
|
||||
}, [dotColor]);
|
||||
|
||||
useEffect(() => {
|
||||
if (checked !== undefined) {
|
||||
setIsChecked(checked);
|
||||
}
|
||||
setIsChecked(checked);
|
||||
}, [checked]);
|
||||
|
||||
useEffect(() => {
|
||||
if (onChange) {
|
||||
onChange(isChecked);
|
||||
}
|
||||
}, [isChecked]);
|
||||
|
||||
const handleCheckboxChange = () => {
|
||||
if (middleWare) {
|
||||
setIsChecked(prev => {
|
||||
const newState = !prev;
|
||||
console.log('newState', newState);
|
||||
const result = middleWare(newState);
|
||||
if (isPromise(result)) {
|
||||
result.then(shouldChange => {
|
||||
if (shouldChange) {
|
||||
setIsChecked(newState);
|
||||
setIsChecked(() => {
|
||||
onChange?.(newState);
|
||||
return newState;
|
||||
});
|
||||
}
|
||||
}).catch(noop);
|
||||
} else if (result) {
|
||||
setIsChecked(newState);
|
||||
setIsChecked(() => {
|
||||
onChange?.(newState);
|
||||
return newState;
|
||||
});
|
||||
}
|
||||
return prev;
|
||||
});
|
||||
} else {
|
||||
setIsChecked(prev => !prev);
|
||||
setIsChecked(prev => {
|
||||
onChange?.(!prev);
|
||||
return !prev;
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user