| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174 | import 'package:flutter/material.dart';import 'package:go_router/go_router.dart';import 'package:namer_app/list.dart';import 'package:namer_app/login.dart';import 'package:namer_app/lang.dart';import 'package:namer_app/listblock.dart';import 'package:flutter/rendering.dart';void main() {  runApp(MyApp());}final _router = GoRouter(  routes: [    GoRoute(path: '/', builder: (context, state) => MyHomePage(), routes: [      GoRoute(        path: 'login',        builder: (context, state) => LoginPage(),      ),      GoRoute(        path: 'list',        builder: (context, state) => ListPage(),        // routes: [        //   GoRoute(        //     path: 'listblock',        //     builder: (context, state) => ListBlockPage(),        //   )        // ],      ),      GoRoute(        path: 'listblock',        builder: (context, state) => ListBlockPage(),      )    ]),  ],);class MyApp extends StatelessWidget {  const MyApp({super.key});  @override  Widget build(BuildContext context) {    return MaterialApp.router(      debugShowCheckedModeBanner: false,      title: 'TelNow Lat',      theme: ThemeData(        useMaterial3: true,      ),      routerConfig: _router,    );  }}class MyHomePage extends StatelessWidget {  @override  Widget build(BuildContext context) {    debugPaintSizeEnabled = false;    return Scaffold(      body: Container(        decoration: BoxDecoration(            gradient: LinearGradient(                begin: Alignment.topCenter,                end: Alignment.bottomCenter,                colors: [                  Color(0xffD9D9D9),                  Color(0xff0F968E),                  Color(0xff000000)                ]),            image: DecorationImage(              image: AssetImage("assets/images/building.jpg"),              fit: BoxFit.cover,            )),        child: Column(          mainAxisAlignment: MainAxisAlignment.spaceEvenly,          children: [            Row(              mainAxisAlignment: MainAxisAlignment.end,              children: [                Lang(),              ],            ),            Expanded(              child: Center(                  child: Row(                mainAxisAlignment: MainAxisAlignment.center,                children: [                  Text(                    'tel',                    style: TextStyle(color: Color(0xffFF6600), fontSize: 48),                  ),                  Text(                    'now',                    style: TextStyle(color: Color(0xffFFFFFF), fontSize: 48),                  ),                ],              )),            ),            Padding(              padding: const EdgeInsets.only(left: 180, right: 180),              child: Text(                'Silakan pindai QR terlebih dulu untuk mulai menggunakan aplikasi.',                softWrap: true,                textAlign: TextAlign.center,                style: TextStyle(fontSize: 16, color: Colors.white),              ),            ),            Expanded(              child: Center(child: Pindai()),            ),            Padding(              padding: const EdgeInsets.all(8.0),              child: Column(                children: [                  Text('Kebijakan Privasi',                      style: TextStyle(                          fontSize: 16,                          decoration: TextDecoration.underline,                          fontWeight: FontWeight.w400,                          decorationColor: Colors.white,                          color: Colors.white)),                  Text('Versi 4.0.0.0',                      style: TextStyle(                        fontSize: 16,                        fontWeight: FontWeight.w400,                        color: Colors.white,                      ))                ],              ),            ),          ],        ),      ),    );  }}class Pindai extends StatelessWidget {  const Pindai({    Key? key,  }) : super(key: key);  @override  Widget build(BuildContext context) {    return SizedBox(        width: 257,        height: 96,        child: ElevatedButton(          onPressed: () => context.go('/login'),          style: ElevatedButton.styleFrom(            backgroundColor: Color(0xff078C84).withOpacity(0.76),            side: BorderSide(color: Colors.white),            shape: RoundedRectangleBorder(              borderRadius: BorderRadius.circular(12.0),            ),          ),          child: Row(            mainAxisAlignment: MainAxisAlignment.center,            children: [              Text(                'Pindai QR',                style: TextStyle(color: Colors.white, fontSize: 20),              ),              Image.asset(                'assets/images/scan_icon_183865.png',                width: 32,                height: 32,                fit: BoxFit.cover,                color: Color(0xffFFFFFF),              )            ],          ),        ));  }}
 |