70 lines
2.7 KiB
Dart
70 lines
2.7 KiB
Dart
// lib/main.dart
|
||
|
||
import 'package:flutter/material.dart';
|
||
import 'package:instruction_app/data/interface/IRepository.dart';
|
||
import 'package:instruction_app/data/organization_repository.dart';
|
||
import 'package:instruction_app/data/worker_repository.dart';
|
||
import 'package:instruction_app/data/instruction_log_repository.dart';
|
||
import 'package:instruction_app/models/organization.dart';
|
||
import 'package:instruction_app/models/worker.dart';
|
||
import 'package:instruction_app/models/instruction_log.dart';
|
||
import 'package:instruction_app/providers/organization_ptovider.dart';
|
||
import 'package:instruction_app/providers/worker_provider.dart';
|
||
import 'package:instruction_app/providers/instruction_log_provider.dart';
|
||
//import 'package:instruction_app/screens/auth/login_page.dart';
|
||
//import 'package:instruction_app/screens/organization_page/list_organization_page.dart';
|
||
import 'package:instruction_app/screens/home_page.dart';
|
||
import 'package:provider/provider.dart';
|
||
import 'data/instruction_repository.dart';
|
||
import 'providers/instruction_provider.dart';
|
||
//import 'screens/instruction_list_page.dart';
|
||
//import 'data/api_instruction_repository.dart';
|
||
|
||
void main() {
|
||
final InstructionRepository repository = LocalInstructionRepository();
|
||
//LocalInstructionRepository();
|
||
|
||
final Repository<Organization> organizationRepository = LocalOrganizationRepository();
|
||
final Repository<Worker> workerRepository = LocalWorkerRepository();
|
||
final Repository<InstructionLog> instructionLogRepository = InstructionLogRepository();
|
||
|
||
runApp(
|
||
// "Предоставляем" наши провайдеры всему дереву виджетов
|
||
MultiProvider(
|
||
providers: [
|
||
ChangeNotifierProvider(
|
||
create: (context) => InstructionProvider(repository),
|
||
),
|
||
ChangeNotifierProvider(
|
||
create: (context) => OrganizationProvider(organizationRepository),
|
||
),
|
||
ChangeNotifierProvider(
|
||
create: (context) => WorkerProvider(workerRepository),
|
||
),
|
||
ChangeNotifierProvider(
|
||
create: (context) => InstructionLogProvider(instructionLogRepository),
|
||
),
|
||
],
|
||
child: const MyApp(),
|
||
),
|
||
);
|
||
}
|
||
|
||
class MyApp extends StatelessWidget {
|
||
const MyApp({super.key});
|
||
|
||
@override
|
||
Widget build(BuildContext context) {
|
||
return MaterialApp(
|
||
title: 'Инструктажи',
|
||
theme: ThemeData(
|
||
colorScheme: ColorScheme.fromSeed(seedColor: Colors.deepPurple),
|
||
useMaterial3: true,
|
||
),
|
||
// Для разработки используем HomePage напрямую
|
||
// В продакшене можно вернуть AuthorizationPage
|
||
home: const HomePage(),
|
||
// home: const AuthorizationPage(),
|
||
);
|
||
}
|
||
} |