-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathmain.dart
46 lines (41 loc) · 2.25 KB
/
main.dart
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
import 'package:flutter/material.dart';
import 'package:flutter_cbl_learning_path/features/audit/data/audit_repository.dart';
import 'package:flutter_cbl_learning_path/features/audit/data/stock_item_repository.dart';
import 'package:flutter_cbl_learning_path/features/drawer/data/user_repository.dart';
import 'package:flutter_cbl_learning_path/features/project/data/project_repository.dart';
import 'package:flutter_cbl_learning_path/features/project/data/warehouse_repository.dart';
import 'package:flutter_cbl_learning_path/features/project/services/warehouse_selected_service.dart';
import 'package:flutter_cbl_learning_path/features/audit/services/stock_item_selection_service.dart';
import 'package:flutter_cbl_learning_path/inventory_audit_app.dart';
import 'package:flutter_cbl_learning_path/features/router/route.dart';
import 'package:flutter_cbl_learning_path/features/database/database_provider.dart';
import 'features/database/replicator_provider.dart';
void main() {
//define global providers and services
var dbProvider = DatabaseProvider();
var authService = FakeAuthenticationService();
var warehouseSelectionService = WarehouseSelectionService();
var stockItemSelectionService = StockItemSelectionService();
//setup repositories
var stockItemRepository = StockItemRepository(dbProvider);
var warehouseRepository = WarehouseRepository(dbProvider);
var auditRepository = AuditRepository(dbProvider, authService);
var projectRepository = ProjectRepository(dbProvider, authService,
auditRepository, warehouseRepository, stockItemRepository);
var userRepository = UserRepository(dbProvider, authService);
//setup replication provider
var replicationProvider = ReplicatorProvider(authenticationService: authService, databaseProvider: dbProvider);
runApp(InventoryAuditApp(
authService: authService,
routerService: AppRouterService(),
warehouseSelectionService: warehouseSelectionService,
stockItemSelectionService: stockItemSelectionService,
databaseProvider: dbProvider,
replicatorProvider: replicationProvider,
projectRepository: projectRepository,
auditRepository: auditRepository,
stockItemRepository: stockItemRepository,
warehouseRepository: warehouseRepository,
userRepository: userRepository,
));
}