onDispose method
Disposes all registered effects, listeners, and resources.
Called when the controller is removed from the DI container or widget lifecycle.
Implementation
@mustCallSuper
void onDispose() {
if (_isDisposed) return;
_isDisposed = true;
for (final dispose in _disposers) {
try {
dispose();
} catch (e, st) {
logger.error('Error during $runtimeType cleanup: $e', e, st);
}
}
_disposers.clear();
logger.debug('$runtimeType disposed');
}