build(frontend): add ESLint flat config as a gate lane
ESLint 9 flat config, pinned. Narrow by design: the load-bearing rule is react-hooks (rules-of-hooks + exhaustive-deps) — 33 disable comments existed for a rule nothing ran. tsc already owns unused vars / undefined / types, so those are turned off here to report each finding once. no-explicit-any is off: all 19 live in the api.ts god-module that R7 rewrites, and it flips the rule back on then. reportUnusedDisableDirectives is an error, which immediately caught two inert `eslint-disable` comments (App.tsx, AddToPlaylist.tsx) whose effects have stable deps — removed. no-unused-expressions allows the side-effect ternary idiom the codebase already uses (`v.paused ? v.play() : v.pause()`). Errors: 0. Remaining 38 are warnings (28 react-refresh DX, 10 exhaustive-deps) — pre-existing, visible in the lint output, tracked to their epics.
This commit is contained in:
@@ -37,7 +37,6 @@ export default function AddToPlaylist({
|
||||
// its content — hence height — changes, so the flip-above decision uses the true size.
|
||||
useLayoutEffect(() => {
|
||||
if (open) place();
|
||||
// eslint-disable-next-line react-hooks/exhaustive-deps
|
||||
}, [open, membership.data]);
|
||||
|
||||
function place() {
|
||||
|
||||
Reference in New Issue
Block a user