starting implement inject generator

This commit is contained in:
Sergey Penkovsky
2025-05-23 12:21:23 +03:00
parent 161e9085f4
commit 1f6ee172a1
13 changed files with 154 additions and 30 deletions

View File

@@ -0,0 +1,35 @@
import 'package:cherrypick/cherrypick.dart';
import 'package:cherrypick_annotations/cherrypick_annotations.dart';
import 'package:flutter/material.dart';
import 'package:flutter_bloc/flutter_bloc.dart';
import 'domain/repository/post_repository.dart';
import 'presentation/bloc/post_bloc.dart';
import 'router/app_router.dart';
part 'app.inject.cherrypick.g.dart';
@injectable()
class MyApp extends StatelessWidget with _$MyApp {
final Scope scope;
final _appRouter = AppRouter();
@named('repo')
@inject()
late final PostRepository repository;
MyApp({super.key, required this.scope});
@override
Widget build(BuildContext context) {
_inject(this);
return BlocProvider(
create: (_) => PostBloc(repository),
child: MaterialApp.router(
routeInformationParser: _appRouter.defaultRouteParser(),
routerDelegate: _appRouter.delegate(),
theme: ThemeData.light(),
),
);
}
}