summaryrefslogtreecommitdiff
path: root/src/components/shared/Input.tsx
AgeCommit message (Collapse)Author
2026-08-20refactor: enable noImplicitAnyLarvan2
Types the 67 sites that were silently getting `any`. Most of it is the API layer: fetchProxies, requestToSwitchProxy and friends took entirely untyped parameters, so the whole proxies data flow was unchecked from the boundary inwards. Two changes carry real behaviour, both hardening rather than fixes to live bugs: - filterAvailableProxiesAndSort falls back to the Natural sort when proxySortBy holds a name that no longer exists. The value is persisted in localStorage, so a stale one used to call undefined as a function. - configsPatchWorkaround returns a new object instead of mutating the caller's. The legacy `socket-port` key it writes is not part of ClashGeneralConfig, so it now has its own return type. retrieveGroupNamesFrom now maps to a real [number, string] tuple instead of letting the array widen to (string | number)[]. Checked against a live backend: 32 groups, identical order to before, GLOBAL still last.
2026-08-20chore: reorganize codeLarvan2