view_model_generator 1.0.1-dev.1 copy "view_model_generator: ^1.0.1-dev.1" to clipboard
view_model_generator: ^1.0.1-dev.1 copied to clipboard

Automatically generate ViewModelSpec code from @genProvider annotations. Reduces boilerplate for the view_model package.

example/lib/example.dart

import 'package:flutter/foundation.dart';
import 'package:view_model/view_model.dart';

// Note: This is an example file. To generate the .vm.dart file,
// you need to run:
// dart run build_runner build

part 'example.vm.dart';

@GenSpec()
class CounterViewModel extends ViewModel {
  int _count = 0;
  int get count => _count;

  void increment() {
    _count++;
    notifyListeners();
  }
}

// Example with dependencies
class Repository {}

@GenSpec()
class UserViewModel extends ViewModel {
  final Repository repo;

  UserViewModel(this.repo);
}

@GenSpec(key: Expression('repo'), tag: 'user_key')
class UserKeyViewModel extends ViewModel {
  final Repository repo;

  UserKeyViewModel(this.repo);
}

void main() {
  // Access the generated specs
  // final counterSpec = counterSpec;
  // final userSpec = userSpec;

  debugPrint('Run "dart run build_runner build" to generate the code.');
}
0
likes
0
points
861
downloads

Publisher

verified publisherpub.lwjlol.com

Weekly Downloads

Automatically generate ViewModelSpec code from @genProvider annotations. Reduces boilerplate for the view_model package.

Repository (GitHub)
View/report issues

License

unknown (license)

Dependencies

analyzer, build, source_gen, view_model_annotation

More

Packages that depend on view_model_generator