diff --git a/lib/core/routes/app_routes.dart b/lib/core/routes/app_routes.dart index 0e74829..eb55985 100644 --- a/lib/core/routes/app_routes.dart +++ b/lib/core/routes/app_routes.dart @@ -1,8 +1,8 @@ import 'package:flutter/material.dart'; import 'package:go_router/go_router.dart'; -import 'package:tm_app/views/detail/detail_screen.dart'; +import 'package:tm_app/views/detail/pages/detail_screen.dart'; import 'package:tm_app/views/home/pages/home_screen.dart'; -import 'package:tm_app/views/login/login_screen.dart'; +import 'package:tm_app/views/login/pages/login_screen.dart'; import '../../views/profile/profile_screen.dart'; import '../../views/tenders/tenders_screen.dart'; diff --git a/lib/views/detail/detail_screen.dart b/lib/views/detail/detail_screen.dart deleted file mode 100644 index f51b915..0000000 --- a/lib/views/detail/detail_screen.dart +++ /dev/null @@ -1,24 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:tm_app/core/utils/display_size_detector.dart'; -import 'package:tm_app/views/detail/detail_desktop_screen.dart'; -import 'package:tm_app/views/detail/detail_mobile_screen.dart'; -import 'package:tm_app/views/detail/detail_tablet_screen.dart'; - -class TenderDetailScreen extends StatelessWidget { - const TenderDetailScreen({super.key}); - - @override - Widget build(BuildContext context) { - final displaySize = MediaQuery.of(context).size.displaySize; - - switch (displaySize) { - case DisplaySize.large: - case DisplaySize.medium: - return const TenderDetailDesktopScreen(); - case DisplaySize.small: - return const TenderDetailTabletScreen(); - case DisplaySize.extraSmall: - return const TenderDetailMobileScreen(); - } - } -} diff --git a/lib/views/detail/detail_desktop_screen.dart b/lib/views/detail/pages/detail_desktop_page.dart similarity index 94% rename from lib/views/detail/detail_desktop_screen.dart rename to lib/views/detail/pages/detail_desktop_page.dart index f054eeb..5b2efb5 100644 --- a/lib/views/detail/detail_desktop_screen.dart +++ b/lib/views/detail/pages/detail_desktop_page.dart @@ -7,8 +7,8 @@ import 'package:tm_app/views/detail/widgets/tender_detail_action.dart'; import 'package:tm_app/views/detail/widgets/tender_detail_card.dart'; import 'package:tm_app/views/detail/widgets/tender_detail_header.dart'; -class TenderDetailDesktopScreen extends StatelessWidget { - const TenderDetailDesktopScreen({super.key}); +class TenderDetailDesktopPage extends StatelessWidget { + const TenderDetailDesktopPage({super.key}); @override Widget build(BuildContext context) { diff --git a/lib/views/detail/detail_mobile_screen.dart b/lib/views/detail/pages/detail_mobile_page.dart similarity index 94% rename from lib/views/detail/detail_mobile_screen.dart rename to lib/views/detail/pages/detail_mobile_page.dart index eadc2e8..04c841e 100644 --- a/lib/views/detail/detail_mobile_screen.dart +++ b/lib/views/detail/pages/detail_mobile_page.dart @@ -7,8 +7,8 @@ import 'package:tm_app/views/detail/widgets/tender_detail_action.dart'; import 'package:tm_app/views/detail/widgets/tender_detail_card.dart'; import 'package:tm_app/views/detail/widgets/tender_detail_header.dart'; -class TenderDetailMobileScreen extends StatelessWidget { - const TenderDetailMobileScreen({super.key}); +class TenderDetailMobilePage extends StatelessWidget { + const TenderDetailMobilePage({super.key}); @override Widget build(BuildContext context) { diff --git a/lib/views/detail/pages/detail_screen.dart b/lib/views/detail/pages/detail_screen.dart new file mode 100644 index 0000000..92e7db6 --- /dev/null +++ b/lib/views/detail/pages/detail_screen.dart @@ -0,0 +1,20 @@ +import 'package:flutter/material.dart'; +import 'package:tm_app/core/utils/size_config.dart'; +import 'package:tm_app/views/detail/pages/detail_desktop_page.dart'; +import 'package:tm_app/views/detail/pages/detail_mobile_page.dart'; +import 'package:tm_app/views/detail/pages/detail_tablet_page.dart'; +import 'package:tm_app/views/shared/responsive_builder.dart'; + +class TenderDetailScreen extends StatelessWidget { + const TenderDetailScreen({super.key}); + + @override + Widget build(BuildContext context) { + SizeConfig.init(context); + return ResponsiveBuilder( + mobile: TenderDetailMobilePage(), + tablet: TenderDetailTabletPage(), + desktop: TenderDetailDesktopPage(), + ); + } +} diff --git a/lib/views/detail/detail_tablet_screen.dart b/lib/views/detail/pages/detail_tablet_page.dart similarity index 94% rename from lib/views/detail/detail_tablet_screen.dart rename to lib/views/detail/pages/detail_tablet_page.dart index 03df0c8..21e193e 100644 --- a/lib/views/detail/detail_tablet_screen.dart +++ b/lib/views/detail/pages/detail_tablet_page.dart @@ -7,8 +7,8 @@ import 'package:tm_app/views/detail/widgets/tender_detail_action.dart'; import 'package:tm_app/views/detail/widgets/tender_detail_card.dart'; import 'package:tm_app/views/detail/widgets/tender_detail_header.dart'; -class TenderDetailTabletScreen extends StatelessWidget { - const TenderDetailTabletScreen({super.key}); +class TenderDetailTabletPage extends StatelessWidget { + const TenderDetailTabletPage({super.key}); @override Widget build(BuildContext context) { diff --git a/lib/views/login/login_screen.dart b/lib/views/login/login_screen.dart deleted file mode 100644 index 3846846..0000000 --- a/lib/views/login/login_screen.dart +++ /dev/null @@ -1,24 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:tm_app/core/utils/display_size_detector.dart'; -import 'package:tm_app/views/login/login_desktop_screen.dart'; -import 'package:tm_app/views/login/login_mobile_screen.dart'; -import 'package:tm_app/views/login/login_tablet_screen.dart'; - -class LoginScreen extends StatelessWidget { - const LoginScreen({super.key}); - - @override - Widget build(BuildContext context) { - final displaySize = MediaQuery.of(context).size.displaySize; - - switch (displaySize) { - case DisplaySize.large: - case DisplaySize.medium: - return const LoginDesktopScreen(); - case DisplaySize.small: - return const LoginTabletScreen(); - case DisplaySize.extraSmall: - return const LoginMobileScreen(); - } - } -} diff --git a/lib/views/login/login_desktop_screen.dart b/lib/views/login/pages/login_desktop_page.dart similarity index 85% rename from lib/views/login/login_desktop_screen.dart rename to lib/views/login/pages/login_desktop_page.dart index 83c1167..d5fc7a1 100644 --- a/lib/views/login/login_desktop_screen.dart +++ b/lib/views/login/pages/login_desktop_page.dart @@ -2,20 +2,20 @@ import 'package:flutter/material.dart'; import 'package:tm_app/core/routes/app_routes.dart'; -import '../../core/constants/assets.dart'; -import '../../core/constants/strings.dart'; -import '../../core/utils/size_config.dart'; -import 'widgets/widgets.dart'; -import '../../view_models/login_view_model.dart'; +import '../../../core/constants/assets.dart'; +import '../../../core/constants/strings.dart'; +import '../../../core/utils/size_config.dart'; +import '../widgets/widgets.dart'; +import '../../../view_models/login_view_model.dart'; -class LoginDesktopScreen extends StatefulWidget { - const LoginDesktopScreen({super.key}); +class LoginDesktopPage extends StatefulWidget { + const LoginDesktopPage({super.key}); @override - State createState() => _LoginDesktopScreenState(); + State createState() => _LoginDesktopPageState(); } -class _LoginDesktopScreenState extends State { +class _LoginDesktopPageState extends State { late final LoginViewModel _viewModel; @override diff --git a/lib/views/login/login_mobile_screen.dart b/lib/views/login/pages/login_mobile_page.dart similarity index 83% rename from lib/views/login/login_mobile_screen.dart rename to lib/views/login/pages/login_mobile_page.dart index 0515193..bd68703 100644 --- a/lib/views/login/login_mobile_screen.dart +++ b/lib/views/login/pages/login_mobile_page.dart @@ -2,20 +2,20 @@ import 'package:flutter/material.dart'; import 'package:tm_app/core/routes/app_routes.dart'; -import '../../core/constants/assets.dart'; -import '../../core/constants/strings.dart'; -import '../../core/utils/size_config.dart'; -import 'widgets/widgets.dart'; -import '../../view_models/login_view_model.dart'; +import '../../../core/constants/assets.dart'; +import '../../../core/constants/strings.dart'; +import '../../../core/utils/size_config.dart'; +import '../widgets/widgets.dart'; +import '../../../view_models/login_view_model.dart'; -class LoginMobileScreen extends StatefulWidget { - const LoginMobileScreen({super.key}); +class LoginMobilePage extends StatefulWidget { + const LoginMobilePage({super.key}); @override - State createState() => _LoginMobileScreenState(); + State createState() => _LoginMobilePageState(); } -class _LoginMobileScreenState extends State { +class _LoginMobilePageState extends State { late final LoginViewModel _viewModel; @override diff --git a/lib/views/login/pages/login_screen.dart b/lib/views/login/pages/login_screen.dart new file mode 100644 index 0000000..e170e00 --- /dev/null +++ b/lib/views/login/pages/login_screen.dart @@ -0,0 +1,20 @@ +import 'package:flutter/material.dart'; +import 'package:tm_app/core/utils/size_config.dart'; +import 'package:tm_app/views/login/pages/login_desktop_page.dart'; +import 'package:tm_app/views/login/pages/login_mobile_page.dart'; +import 'package:tm_app/views/login/pages/login_tablet_page.dart'; +import 'package:tm_app/views/shared/responsive_builder.dart'; + +class LoginScreen extends StatelessWidget { + const LoginScreen({super.key}); + + @override + Widget build(BuildContext context) { + SizeConfig.init(context); + return ResponsiveBuilder( + mobile: LoginMobilePage(), + tablet: LoginTabletPage(), + desktop: LoginDesktopPage(), + ); + } +} \ No newline at end of file diff --git a/lib/views/login/login_tablet_screen.dart b/lib/views/login/pages/login_tablet_page.dart similarity index 85% rename from lib/views/login/login_tablet_screen.dart rename to lib/views/login/pages/login_tablet_page.dart index 96bf8e9..d6ab9cf 100644 --- a/lib/views/login/login_tablet_screen.dart +++ b/lib/views/login/pages/login_tablet_page.dart @@ -2,20 +2,20 @@ import 'package:flutter/material.dart'; import 'package:tm_app/core/routes/app_routes.dart'; -import '../../core/constants/assets.dart'; -import '../../core/constants/strings.dart'; -import '../../core/utils/size_config.dart'; -import 'widgets/widgets.dart'; -import '../../view_models/login_view_model.dart'; +import '../../../core/constants/assets.dart'; +import '../../../core/constants/strings.dart'; +import '../../../core/utils/size_config.dart'; +import '../widgets/widgets.dart'; +import '../../../view_models/login_view_model.dart'; -class LoginTabletScreen extends StatefulWidget { - const LoginTabletScreen({super.key}); +class LoginTabletPage extends StatefulWidget { + const LoginTabletPage({super.key}); @override - State createState() => _LoginTabletScreenState(); + State createState() => _LoginTabletPageState(); } -class _LoginTabletScreenState extends State { +class _LoginTabletPageState extends State { late final LoginViewModel _viewModel; @override