This commit is contained in:
Mikkel Troels Kongsted 2025-01-29 09:01:47 +01:00
parent 66a8f6c7aa
commit ac926e5b98
13 changed files with 50 additions and 45 deletions

View File

@ -1,8 +1,8 @@
import 'package:flutter/material.dart';
import 'package:mobile/dashboard.dart';
import 'package:mobile/product.dart';
import 'package:mobile/repos/product.dart';
import 'package:provider/provider.dart';
import 'landing_page.dart';
import 'pages/landing_page.dart';
import 'package:mobile/repos/bottom_navigation_bar.dart';
void main() {
runApp(const MyApp());
@ -16,7 +16,7 @@ class MyApp extends StatelessWidget {
return MultiProvider(
providers: [
ChangeNotifierProvider(create: (_) => ProductRepo()),
ChangeNotifierProvider(create: (_) => BottomNavigationBarProvider())
ChangeNotifierProvider(create: (_) => BottomNavigationBarRepo())
],
child: MaterialApp(
title: 'Fresh Plaza',

View File

@ -1,5 +1,5 @@
import 'package:flutter/material.dart';
import 'package:mobile/product.dart';
import 'package:mobile/repos/product.dart';
import 'package:provider/provider.dart';
import 'product_page.dart';

View File

@ -5,6 +5,6 @@ class CartPage extends StatelessWidget {
@override
Widget build(BuildContext context) {
return const Scaffold();
return Row();
}
}

View File

@ -1,18 +1,10 @@
import 'package:flutter/material.dart';
import 'package:mobile/all_products_page.dart';
import 'package:mobile/cart_page.dart';
import 'package:mobile/receipts_page.dart';
import 'package:mobile/pages/all_products_page.dart';
import 'package:mobile/pages/cart_page.dart';
import 'package:mobile/pages/receipts_page.dart';
import 'package:mobile/repos/bottom_navigation_bar.dart';
import 'package:provider/provider.dart';
class BottomNavigationBarProvider extends ChangeNotifier {
int currentIndex = 0;
void setIndex(int index) {
currentIndex = index;
notifyListeners();
}
}
class Dashboard extends StatelessWidget {
final List<StatelessWidget> pages = [
const AllProductsPage(),
@ -24,7 +16,7 @@ class Dashboard extends StatelessWidget {
@override
Widget build(BuildContext context) {
final pageIndexProvider = Provider.of<BottomNavigationBarProvider>(context);
final pageIndexProvider = Provider.of<BottomNavigationBarRepo>(context);
int currentIndex = pageIndexProvider.currentIndex;
return Scaffold(

View File

@ -1,7 +1,7 @@
import 'package:flutter/material.dart';
import 'package:mobile/widgets/primary_button.dart';
import 'log_in_page.dart';
import 'register_page.dart';
import 'global_components.dart';
class LandingPage extends StatelessWidget {
const LandingPage({super.key});

View File

@ -1,6 +1,7 @@
import 'package:flutter/material.dart';
import 'package:mobile/widgets/primary_button.dart';
import 'package:mobile/widgets/primary_input.dart';
import 'dashboard.dart';
import 'global_components.dart';
class LogInPage extends StatelessWidget {
const LogInPage({super.key});

View File

@ -1,6 +1,6 @@
import 'package:flutter/material.dart';
import 'package:mobile/global_components.dart';
import 'package:mobile/product.dart';
import 'package:mobile/repos/product.dart';
import 'package:mobile/widgets/primary_button.dart';
class ProductPage extends StatelessWidget {
final Product product;

View File

@ -5,6 +5,6 @@ class ReceiptsPage extends StatelessWidget {
@override
Widget build(BuildContext context) {
return const Scaffold();
return const Row();
}
}

View File

@ -1,5 +1,6 @@
import 'package:flutter/material.dart';
import 'global_components.dart';
import 'package:mobile/widgets/primary_button.dart';
import 'package:mobile/widgets/primary_input.dart';
import 'log_in_page.dart';
class RegisterPage extends StatelessWidget {

View File

@ -0,0 +1,10 @@
import 'package:flutter/material.dart';
class BottomNavigationBarRepo extends ChangeNotifier {
int currentIndex = 0;
void setIndex(int index) {
currentIndex = index;
notifyListeners();
}
}

View File

@ -0,0 +1,21 @@
import 'package:flutter/material.dart';
class PrimaryButton extends StatelessWidget {
final void Function()? onPressed;
final Widget child;
const PrimaryButton({
super.key,
required this.onPressed,
required this.child,
});
@override
Widget build(BuildContext context) {
return TextButton(
onPressed: onPressed,
style: TextButton.styleFrom(
backgroundColor: Colors.blue, foregroundColor: Colors.white),
child: child);
}
}

View File

@ -1,25 +1,5 @@
import 'package:flutter/material.dart';
class PrimaryButton extends StatelessWidget {
final void Function()? onPressed;
final Widget child;
const PrimaryButton({
super.key,
required this.onPressed,
required this.child,
});
@override
Widget build(BuildContext context) {
return TextButton(
onPressed: onPressed,
style: TextButton.styleFrom(
backgroundColor: Colors.blue, foregroundColor: Colors.white),
child: child);
}
}
class PrimaryInput extends StatelessWidget {
final double width;
final double height;