From 3bc2a72e137a01e4a8001168ee03bc250e1f5c64 Mon Sep 17 00:00:00 2001 From: Himanshu Sharma Date: Tue, 23 Mar 2021 16:25:22 +0530 Subject: [PATCH] Stacked Container Added --- lib/dashboard.dart | 8 +-- lib/helpers/constants.dart | 5 +- lib/helpers/route_page.dart | 16 +++-- lib/main.dart | 2 +- .../{address.dart => address_model.dart} | 0 lib/model/{order.dart => order_model.dart} | 0 .../{product.dart => product_model.dart} | 0 .../auth/{login.dart => login_view.dart} | 2 +- .../auth/{signup.dart => signup_view.dart} | 2 +- lib/views/{cart.dart => cart_view.dart} | 0 lib/views/{drawer.dart => drawer_view.dart} | 4 +- lib/views/{home.dart => home_view.dart} | 65 +++++++------------ .../{profile.dart => profile_view.dart} | 2 +- .../profile/settings/address_screen.dart | 4 +- .../profile/settings/manage_address.dart | 2 +- .../{settings.dart => settings_view.dart} | 0 lib/views/{search.dart => search_view.dart} | 0 lib/widgets/product/product_card.dart | 2 +- lib/widgets/stacked_container.dart | 5 +- test/widget_test.dart | 2 +- 20 files changed, 57 insertions(+), 64 deletions(-) rename lib/model/{address.dart => address_model.dart} (100%) rename lib/model/{order.dart => order_model.dart} (100%) rename lib/model/{product.dart => product_model.dart} (100%) rename lib/views/auth/{login.dart => login_view.dart} (99%) rename lib/views/auth/{signup.dart => signup_view.dart} (99%) rename lib/views/{cart.dart => cart_view.dart} (100%) rename lib/views/{drawer.dart => drawer_view.dart} (94%) rename lib/views/{home.dart => home_view.dart} (78%) rename lib/views/profile/{profile.dart => profile_view.dart} (99%) rename lib/views/profile/settings/{settings.dart => settings_view.dart} (100%) rename lib/views/{search.dart => search_view.dart} (100%) diff --git a/lib/dashboard.dart b/lib/dashboard.dart index 7ee8d43..c965ac6 100644 --- a/lib/dashboard.dart +++ b/lib/dashboard.dart @@ -1,11 +1,11 @@ import 'package:flutter/material.dart'; import 'package:google_mobile_ads/google_mobile_ads.dart'; import 'package:provider/provider.dart'; -import 'package:retro_shopping/views/cart.dart'; -import 'package:retro_shopping/views/home.dart'; -import 'package:retro_shopping/views/search.dart'; +import 'package:retro_shopping/views/cart_view.dart'; +import 'package:retro_shopping/views/home_view.dart'; +import 'package:retro_shopping/views/search_view.dart'; import 'helpers/ad_state.dart'; -import 'views/profile/profile.dart'; +import 'views/profile/profile_view.dart'; import 'widgets/bottom_nav_bar.dart'; class Dashboard extends StatefulWidget { diff --git a/lib/helpers/constants.dart b/lib/helpers/constants.dart index af95ebe..5ee77a0 100644 --- a/lib/helpers/constants.dart +++ b/lib/helpers/constants.dart @@ -1,11 +1,10 @@ import 'package:flutter/material.dart'; -import 'package:retro_shopping/model/product.dart'; +import 'package:retro_shopping/model/product_model.dart'; import 'package:retro_shopping/widgets/product/product_card.dart'; // Route Names class RouteConstant { - static const String SPLASH_SCREEN = '/'; static const String DASHBOARD_SCREEN = '/dashboard'; static const String HOME_SCREEN = '/home'; static const String LOGIN_SCREEN = '/auth'; @@ -16,7 +15,7 @@ class RouteConstant { static const String CART_SCREEN = '/cart'; static const String ORDERS_SCREEN = '/orders'; static const String SETTINGS_SCREEN = '/settings'; - static const String ABOUT_SCREEN = 'about'; + static const String ABOUT_SCREEN = '/about'; } class RelicColors { diff --git a/lib/helpers/route_page.dart b/lib/helpers/route_page.dart index bd8f8fb..951f9cd 100644 --- a/lib/helpers/route_page.dart +++ b/lib/helpers/route_page.dart @@ -3,10 +3,10 @@ import 'package:retro_shopping/dashboard.dart'; import 'package:retro_shopping/helpers/constants.dart'; import 'package:retro_shopping/helpers/slide_route.dart'; -import 'package:retro_shopping/views/cart.dart'; -import 'package:retro_shopping/views/home.dart'; -import 'package:retro_shopping/views/profile/profile.dart'; -import 'package:retro_shopping/views/search.dart'; +import 'package:retro_shopping/views/cart_view.dart'; +import 'package:retro_shopping/views/home_view.dart'; +import 'package:retro_shopping/views/profile/profile_view.dart'; +import 'package:retro_shopping/views/search_view.dart'; import 'package:retro_shopping/widgets/product/product_page.dart'; class RoutePage { @@ -21,26 +21,31 @@ class RoutePage { return SlideLeftRoute( page: Home(), ); + case RouteConstant.LOGIN_SCREEN: return SlideLeftRoute( page: const SizedBox( child: Text('Login Screen'), ), ); + case RouteConstant.PROFILE_SCREEN: return SlideLeftRoute( page: ProfilePage(), ); + case RouteConstant.SEARCH_SCREEN: return SlideLeftRoute( page: Search(), ); + case RouteConstant.ABOUT_SCREEN: return SlideLeftRoute( page: const SizedBox( child: Text('About'), ), ); + case RouteConstant.DASHBOARD_SCREEN: return SlideLeftRoute( page: Dashboard(), @@ -49,18 +54,21 @@ class RoutePage { return SlideBottomRoute( page: ProductPage(), ); + case RouteConstant.WISHLIST_SCREEN: return SlideLeftRoute( page: const SizedBox( child: Text('Wishlist Screen'), ), ); + case RouteConstant.ORDERS_SCREEN: return SlideLeftRoute( page: const SizedBox( child: Text('Orders Screen'), ), ); + case RouteConstant.SETTINGS_SCREEN: return SlideLeftRoute( page: const SizedBox( diff --git a/lib/main.dart b/lib/main.dart index a39321d..00851ff 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -5,7 +5,7 @@ import 'package:provider/provider.dart'; import 'package:retro_shopping/helpers/ad_state.dart'; import 'package:retro_shopping/helpers/constants.dart'; import 'package:google_mobile_ads/google_mobile_ads.dart'; -import 'package:retro_shopping/views/auth/login.dart'; +import 'package:retro_shopping/views/auth/login_view.dart'; Future main() async { //firebase Initialization diff --git a/lib/model/address.dart b/lib/model/address_model.dart similarity index 100% rename from lib/model/address.dart rename to lib/model/address_model.dart diff --git a/lib/model/order.dart b/lib/model/order_model.dart similarity index 100% rename from lib/model/order.dart rename to lib/model/order_model.dart diff --git a/lib/model/product.dart b/lib/model/product_model.dart similarity index 100% rename from lib/model/product.dart rename to lib/model/product_model.dart diff --git a/lib/views/auth/login.dart b/lib/views/auth/login_view.dart similarity index 99% rename from lib/views/auth/login.dart rename to lib/views/auth/login_view.dart index c885ebc..07eff6f 100644 --- a/lib/views/auth/login.dart +++ b/lib/views/auth/login_view.dart @@ -1,7 +1,7 @@ import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; import 'package:retro_shopping/services/auth_service.dart'; -import 'package:retro_shopping/views/auth/signup.dart'; +import 'package:retro_shopping/views/auth/signup_view.dart'; import 'package:retro_shopping/widgets/retro_button.dart'; import 'package:retro_shopping/dashboard.dart'; import 'package:retro_shopping/widgets/stacked_container.dart'; diff --git a/lib/views/auth/signup.dart b/lib/views/auth/signup_view.dart similarity index 99% rename from lib/views/auth/signup.dart rename to lib/views/auth/signup_view.dart index c092d8c..a9b678e 100644 --- a/lib/views/auth/signup.dart +++ b/lib/views/auth/signup_view.dart @@ -1,7 +1,7 @@ import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; import 'package:retro_shopping/helpers/constants.dart'; -import 'package:retro_shopping/views/auth/login.dart'; +import 'package:retro_shopping/views/auth/login_view.dart'; import 'package:retro_shopping/widgets/retro_button.dart'; import 'package:retro_shopping/dashboard.dart'; import 'package:retro_shopping/services/auth_service.dart'; diff --git a/lib/views/cart.dart b/lib/views/cart_view.dart similarity index 100% rename from lib/views/cart.dart rename to lib/views/cart_view.dart diff --git a/lib/views/drawer.dart b/lib/views/drawer_view.dart similarity index 94% rename from lib/views/drawer.dart rename to lib/views/drawer_view.dart index af7b67a..d43cf6c 100644 --- a/lib/views/drawer.dart +++ b/lib/views/drawer_view.dart @@ -1,10 +1,10 @@ import 'package:flutter/material.dart'; import 'package:retro_shopping/services/auth_service.dart'; import 'package:retro_shopping/views/profile/settings/about.dart'; -import 'package:retro_shopping/views/auth/login.dart'; +import 'package:retro_shopping/views/auth/login_view.dart'; import 'package:retro_shopping/views/profile/orders.dart'; +import 'package:retro_shopping/views/profile/wishlist.dart'; import '../widgets/drawer_item.dart'; -import 'Wishlist.dart'; class DrawerWidget extends StatelessWidget { const DrawerWidget({ diff --git a/lib/views/home.dart b/lib/views/home_view.dart similarity index 78% rename from lib/views/home.dart rename to lib/views/home_view.dart index 6fd4d8c..64b690d 100644 --- a/lib/views/home.dart +++ b/lib/views/home_view.dart @@ -1,8 +1,9 @@ import 'package:flutter/material.dart'; import 'package:retro_shopping/helpers/app_icons.dart'; import 'package:retro_shopping/helpers/constants.dart'; -import 'package:retro_shopping/views/drawer.dart'; +import 'package:retro_shopping/views/drawer_view.dart'; import 'package:retro_shopping/widgets/retro_button.dart'; +import 'package:retro_shopping/widgets/stacked_container.dart'; class Home extends StatelessWidget { final GlobalKey _drawerKey = GlobalKey(); @@ -30,11 +31,11 @@ class Home extends StatelessWidget { SizedBox( height: height * 0.01, ), - sizedBox(context), + topBar(context), SizedBox( height: height * 0.03, ), - textRead(), + greetingUserText(), SizedBox( height: height * 0.02, ), @@ -42,7 +43,7 @@ class Home extends StatelessWidget { SizedBox( height: height * 0.02, ), - sized(height, width), + products(height, width), SizedBox( height: height * 0.1, ), @@ -53,49 +54,33 @@ class Home extends StatelessWidget { ); } - Widget sized(double height, double width) { + Widget products(double height, double width) { return SizedBox( height: height * 1.08, width: width, - child: Stack( - children: [ - Container( - width: width * 0.9, - // height: 729.0, - decoration: const BoxDecoration( - color: RelicColors.primaryBlack, - ), + child: StackedContainer( + width: width * 0.9, + // height: 729.0, + color: Colors.white, + child: Padding( + padding: const EdgeInsets.all(8.0), + child: GridView.builder( + physics: const NeverScrollableScrollPhysics(), + primary: false, + gridDelegate: const SliverGridDelegateWithFixedCrossAxisCount( + crossAxisCount: 2, + crossAxisSpacing: 8, + mainAxisSpacing: 8, + childAspectRatio: 1 / 1.6), + itemCount: productsList.length, + itemBuilder: (_, int index) => productsList[index], ), - Transform.translate( - offset: const Offset(10, 10), - child: Container( - width: width * 0.9, - // height: 729.0, - decoration: const BoxDecoration( - color: Colors.white, - ), - child: Padding( - padding: const EdgeInsets.all(8.0), - child: GridView.builder( - physics: const NeverScrollableScrollPhysics(), - primary: false, - gridDelegate: const SliverGridDelegateWithFixedCrossAxisCount( - crossAxisCount: 2, - crossAxisSpacing: 8, - mainAxisSpacing: 8, - childAspectRatio: 1 / 1.6), - itemCount: productsList.length, - itemBuilder: (_, int index) => productsList[index], - ), - ), - ), - ), - ], + ), ), ); } - Widget sizedBox(BuildContext context) { + Widget topBar(BuildContext context) { return SizedBox( width: MediaQuery.of(context).size.width, child: Row( @@ -133,7 +118,7 @@ class Home extends StatelessWidget { ); } - Widget textRead() { + Widget greetingUserText() { return const Text.rich( TextSpan( style: TextStyle( diff --git a/lib/views/profile/profile.dart b/lib/views/profile/profile_view.dart similarity index 99% rename from lib/views/profile/profile.dart rename to lib/views/profile/profile_view.dart index ca40be8..2913dfa 100644 --- a/lib/views/profile/profile.dart +++ b/lib/views/profile/profile_view.dart @@ -2,7 +2,7 @@ import 'package:flutter/material.dart'; import 'package:retro_shopping/helpers/constants.dart'; import 'package:retro_shopping/widgets/payment/order_item.dart'; import 'package:retro_shopping/widgets/retro_button.dart'; -import 'package:retro_shopping/views/profile/settings/settings.dart'; +import 'package:retro_shopping/views/profile/settings/settings_view.dart'; class ProfilePage extends StatelessWidget { @override diff --git a/lib/views/profile/settings/address_screen.dart b/lib/views/profile/settings/address_screen.dart index c2f6c00..245cc3c 100644 --- a/lib/views/profile/settings/address_screen.dart +++ b/lib/views/profile/settings/address_screen.dart @@ -1,8 +1,8 @@ import 'package:flutter/material.dart'; import 'package:retro_shopping/helpers/constants.dart'; -import 'package:retro_shopping/model/address.dart'; +import 'package:retro_shopping/model/address_model.dart'; import 'package:retro_shopping/views/profile/settings/manage_address.dart'; -import 'package:retro_shopping/views/profile/settings/settings.dart'; +import 'package:retro_shopping/views/profile/settings/settings_view.dart'; import 'package:retro_shopping/widgets/retro_button.dart'; class AddressScreen extends StatefulWidget { diff --git a/lib/views/profile/settings/manage_address.dart b/lib/views/profile/settings/manage_address.dart index ac1aab0..ef53e85 100644 --- a/lib/views/profile/settings/manage_address.dart +++ b/lib/views/profile/settings/manage_address.dart @@ -2,7 +2,7 @@ import 'package:flutter/material.dart'; import 'package:geocoder/geocoder.dart'; import 'package:geolocator/geolocator.dart'; import 'package:retro_shopping/helpers/constants.dart'; -import 'package:retro_shopping/model/address.dart'; +import 'package:retro_shopping/model/address_model.dart'; import 'package:retro_shopping/views/profile/settings/address_screen.dart'; import 'package:retro_shopping/widgets/address_text_field.dart'; import 'package:retro_shopping/widgets/retro_button.dart'; diff --git a/lib/views/profile/settings/settings.dart b/lib/views/profile/settings/settings_view.dart similarity index 100% rename from lib/views/profile/settings/settings.dart rename to lib/views/profile/settings/settings_view.dart diff --git a/lib/views/search.dart b/lib/views/search_view.dart similarity index 100% rename from lib/views/search.dart rename to lib/views/search_view.dart diff --git a/lib/widgets/product/product_card.dart b/lib/widgets/product/product_card.dart index 3025c88..19d6fa6 100644 --- a/lib/widgets/product/product_card.dart +++ b/lib/widgets/product/product_card.dart @@ -1,7 +1,7 @@ import 'package:flutter/material.dart'; import 'package:retro_shopping/helpers/constants.dart'; import 'package:retro_shopping/helpers/slide_route.dart'; -import 'package:retro_shopping/model/product.dart'; +import 'package:retro_shopping/model/product_model.dart'; import 'package:retro_shopping/widgets/product/product_page.dart'; class ProductCard extends StatelessWidget { diff --git a/lib/widgets/stacked_container.dart b/lib/widgets/stacked_container.dart index bdc82cf..f7a15ab 100644 --- a/lib/widgets/stacked_container.dart +++ b/lib/widgets/stacked_container.dart @@ -2,12 +2,13 @@ import 'package:flutter/material.dart'; import 'package:retro_shopping/helpers/constants.dart'; class StackedContainer extends StatelessWidget { - const StackedContainer({Key key, this.height, this.width, this.child}) + const StackedContainer({@required this.child, Key key, this.height, this.width, this.color}) : super(key: key); final double height; final double width; final Widget child; + final Color color; @override Widget build(BuildContext context) { @@ -26,7 +27,7 @@ class StackedContainer extends StatelessWidget { Container( height: height, width: width, - decoration: const BoxDecoration(color: RelicColors.primaryColor), + decoration: BoxDecoration(color: color ?? RelicColors.primaryColor), child: child), ], ), diff --git a/test/widget_test.dart b/test/widget_test.dart index 1543a51..694fac4 100644 --- a/test/widget_test.dart +++ b/test/widget_test.dart @@ -9,7 +9,7 @@ import 'package:flutter/material.dart'; import 'package:flutter_test/flutter_test.dart'; import 'package:retro_shopping/helpers/app_icons.dart'; -import 'package:retro_shopping/model/product.dart'; +import 'package:retro_shopping/model/product_model.dart'; import 'package:retro_shopping/widgets/payment/cart_item.dart'; import 'package:retro_shopping/widgets/payment/order_item.dart'; import 'package:retro_shopping/widgets/product/product_card.dart';