initial router setup
This commit is contained in:
@@ -0,0 +1,15 @@
|
||||
import 'package:flutter/material.dart';
|
||||
|
||||
class NcBasePage extends StatelessWidget {
|
||||
const NcBasePage({super.key, required this.body});
|
||||
|
||||
final Widget body;
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return Scaffold(
|
||||
backgroundColor: const Color(0xffa600f9),
|
||||
body: body,
|
||||
);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
import 'package:flutter/material.dart';
|
||||
|
||||
final GlobalKey<ScaffoldMessengerState> snackbarKey = GlobalKey<ScaffoldMessengerState>();
|
||||
|
||||
String baseURL = '';
|
||||
String apiVersion = '';
|
||||
|
||||
class Endpoints {
|
||||
static final String version = '$baseURL/version';
|
||||
static final String login = '$baseURL/login';
|
||||
}
|
||||
+3
-3
@@ -1,5 +1,5 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:lixo/pages/initial_page.dart';
|
||||
import 'package:lixo/routes.dart';
|
||||
|
||||
void main() {
|
||||
runApp(const MyApp());
|
||||
@@ -10,13 +10,13 @@ class MyApp extends StatelessWidget {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return MaterialApp(
|
||||
return MaterialApp.router(
|
||||
title: 'PCastLiveTV',
|
||||
theme: ThemeData(
|
||||
useMaterial3: true,
|
||||
),
|
||||
debugShowCheckedModeBanner: false,
|
||||
home: const InitialPage(),
|
||||
routerConfig: router,
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:go_router/go_router.dart';
|
||||
import 'package:lixo/components/nc_base_page.dart';
|
||||
import 'package:lixo/components/nc_button.dart';
|
||||
|
||||
class InitialPage extends StatelessWidget {
|
||||
@@ -6,8 +8,7 @@ class InitialPage extends StatelessWidget {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return Scaffold(
|
||||
backgroundColor: const Color(0xffa600f9),
|
||||
return NcBasePage(
|
||||
body: Center(
|
||||
child: Column(
|
||||
mainAxisAlignment: MainAxisAlignment.center,
|
||||
@@ -16,7 +17,7 @@ class InitialPage extends StatelessWidget {
|
||||
caption: "Quero me registrar",
|
||||
backgroundColor: Colors.black,
|
||||
captionColor: Colors.white,
|
||||
onPressed: _register,
|
||||
onPressed: () => context.go('/register'),
|
||||
),
|
||||
const SizedBox(
|
||||
height: 40,
|
||||
@@ -25,19 +26,11 @@ class InitialPage extends StatelessWidget {
|
||||
caption: "Já sou cliente",
|
||||
backgroundColor: Colors.black,
|
||||
captionColor: Colors.white,
|
||||
onPressed: _login,
|
||||
onPressed: () => context.go('/login'),
|
||||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
void _register() {
|
||||
print("Quero me registrar");
|
||||
}
|
||||
|
||||
void _login() {
|
||||
print("Quero fazer login");
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,20 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:lixo/components/nc_base_page.dart';
|
||||
|
||||
class LoginPage extends StatelessWidget {
|
||||
const LoginPage({super.key});
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return const NcBasePage(
|
||||
body: Center(
|
||||
child: Column(
|
||||
mainAxisAlignment: MainAxisAlignment.center,
|
||||
children: [
|
||||
Text("Login Page"),
|
||||
],
|
||||
),
|
||||
),
|
||||
);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:lixo/components/nc_base_page.dart';
|
||||
|
||||
class RegisterPage extends StatelessWidget {
|
||||
const RegisterPage({super.key});
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return const NcBasePage(
|
||||
body: Center(
|
||||
child: Column(
|
||||
mainAxisAlignment: MainAxisAlignment.center,
|
||||
children: [
|
||||
Text("Register Page"),
|
||||
],
|
||||
),
|
||||
),
|
||||
);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,26 @@
|
||||
import 'package:go_router/go_router.dart';
|
||||
import 'package:lixo/pages/initial_page.dart';
|
||||
import 'package:lixo/pages/login_page.dart';
|
||||
import 'package:lixo/pages/register_page.dart';
|
||||
|
||||
// GoRouter configuration
|
||||
final router = GoRouter(
|
||||
initialLocation: '/',
|
||||
routes: [
|
||||
GoRoute(
|
||||
name: 'home', // Optional, add name to your routes. Allows you navigate by name instead of path
|
||||
path: '/',
|
||||
builder: (context, state) => const InitialPage(),
|
||||
),
|
||||
GoRoute(
|
||||
name: 'login',
|
||||
path: '/login',
|
||||
builder: (context, state) => const LoginPage(),
|
||||
),
|
||||
GoRoute(
|
||||
name: 'register',
|
||||
path: '/register',
|
||||
builder: (context, state) => const RegisterPage(),
|
||||
),
|
||||
],
|
||||
);
|
||||
Reference in New Issue
Block a user