UserRow is React.memo()-wrapped, so every row shares one inner render function. The old afterJSX+afterRendered approach registered a new self-unpatching hook on that shared function per row; since every currently-stacked hook fires on any row's actual render (not just its own), pairing broke almost immediately and hooks piled up unbounded, eventually breaking member list rendering outright (confirmed live). Replaced with a single persistent after() patch on the shared inner render function, reading props fresh from args[0] each call - same pattern chat.ts already uses successfully for getTagProperties. |
||
|---|---|---|
| .. | ||
| next-eval-checks | ||
| staff-tags | ||