mirror of
https://github.com/clash-verge-rev/clash-verge-rev.git
synced 2024-11-16 03:32:36 +08:00
fix: adjust code
This commit is contained in:
parent
2bcf6fb3eb
commit
8bad2c2113
|
@ -83,27 +83,20 @@ const ProfilePage = () => {
|
|||
|
||||
let hasChange = false;
|
||||
|
||||
const newSelected: typeof selected = [];
|
||||
const { global, groups } = proxiesData;
|
||||
[global, ...groups].forEach((group) => {
|
||||
const { type, name, now } = group;
|
||||
|
||||
if (type !== "Selector" && type !== "Fallback") return;
|
||||
if (!now || selectedMap[name] === now) return;
|
||||
if (selectedMap[name] == null) {
|
||||
selectedMap[name] = now!;
|
||||
} else {
|
||||
[global, ...groups].forEach(({ type, name, now }) => {
|
||||
if (!now || (type !== "Selector" && type !== "Fallback")) return;
|
||||
if (selectedMap[name] != null && selectedMap[name] !== now) {
|
||||
hasChange = true;
|
||||
updateProxy(name, selectedMap[name]);
|
||||
}
|
||||
newSelected.push({ name, now });
|
||||
});
|
||||
|
||||
// update profile selected list
|
||||
profile.selected = Object.entries(selectedMap).map(([name, now]) => ({
|
||||
name,
|
||||
now,
|
||||
}));
|
||||
|
||||
patchProfile(current!, { selected: profile.selected });
|
||||
patchProfile(current!, { selected: newSelected });
|
||||
// update proxies cache
|
||||
if (hasChange) mutate("getProxies", getProxies());
|
||||
}, 100);
|
||||
|
@ -122,11 +115,9 @@ const ProfilePage = () => {
|
|||
mutate("getProfiles", newProfiles);
|
||||
|
||||
const remoteItem = newProfiles.items?.find((e) => e.type === "remote");
|
||||
|
||||
if (!newProfiles.current && remoteItem) {
|
||||
const current = remoteItem.uid;
|
||||
patchProfiles({ current });
|
||||
mutateProfiles();
|
||||
mutateLogs();
|
||||
}
|
||||
});
|
||||
|
|
Loading…
Reference in New Issue
Block a user