Files
flutter_wisetronic/lib/pages/login.dart
2026-07-12 04:33:48 +08:00

64 lines
1.8 KiB
Dart

import 'package:flutter/material.dart';
import 'package:responsive_builder/responsive_builder.dart';
import '../constants.dart';
import '../generated/l10n.dart';
import '../store/actions.dart';
import '../store/store.dart';
import '../widgets/desktop/desktop_login.dart';
import '../widgets/general/bottom_nav.dart';
import '../widgets/general/breadcrumbs.dart';
import '../widgets/general/navigationbar.dart';
import '../widgets/mobile/MobileBottomNav.dart';
import '../widgets/mobile/mobile_login.dart';
class Login extends StatefulWidget {
const Login({Key? key}) : super(key: key);
@override
State<StatefulWidget> createState() {
return LoginState();
}
}
class LoginState extends State<Login> {
final _scaffoldKey = GlobalKey<ScaffoldState>();
@override
void initState() {
super.initState();
}
@override
Widget build(BuildContext context) {
store.dispatch(UpdateContext(context));
return ResponsiveBuilder(
builder: (context, sizingInformation) =>
Scaffold(
key: _scaffoldKey,
appBar: MiniNavigationBar(
title: S.of(context).login,
back: true,
breadCrumbs: [
BreadCrumb(S.of(context).login, null),
],
breadCrumbHeight: sizingInformation.deviceScreenType == DeviceScreenType.mobile ? null : Constants.BREADCRUMB_HEIGHT,
),
drawer: null,
body: ScreenTypeLayout.builder(
mobile: (context) => MobileLogin(),
tablet: (context) => DesktopLogin(),
desktop: (context) => DesktopLogin(),
),
bottomNavigationBar: ScreenTypeLayout.builder(
mobile: (context) => MobileBottomNav(currentIndex: 0,),
tablet: (context) => BottomNav(),
desktop: (context) => BottomNav(),
),
),
);
}
}