unwatch<T> method
Unregister the observables.
Implementation
void unwatch<T>(SaveProvider<T> provider) {
final key = provider.key;
final obs = repo.getObservable<T>(key);
assert(obs != null, '$T has never been accessed before');
obs!.release();
_subscriptions[key]?.cancel();
_subscriptions.remove(key);
_providers.remove(key);
if (!provider.autoDispose || !obs.canDispose()) {
return;
}
repo.removeObservable(key);
if (!obs.initialized) {
return;
}
provider.dispose(obs.state);
obs.dispose();
}