dispose method

void dispose()

Implementation

void dispose() {
  // dispose of data sources
  final list = datasources.values.toList();
  for (var source in list) {
    source.dispose();
  }
  datasources.clear();

  // clear models
  models.clear();

  // Cleanup
  observables.forEach((key, observable) => observable.dispose());

  // Clear Observables
  observables.clear();

  // Clear Unresolved
  unresolved.clear();

  // Clear Children
  children?.clear();

  // Clear Parent
  parent?.removeChild(this);

  // Unregister with Scope Manager
  System.currentApp?.scopeManager.remove(this);
}