- Add real-time chat between customers and staff via WebSocket - Add HTTP polling fallback when WebSocket unavailable - Chat auto-closes when worker ends conversation with dialog notification - Add user search API for group order invites (phone/email/name) - Store group order invites in app state - Add login check before starting chat with sign-in prompt - Remove table change button (not allowed currently) - Fix About screen to show dynamic version from pubspec - Update snackbar styling to green with black text Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
59 lines
2.6 KiB
Dart
59 lines
2.6 KiB
Dart
import "package:flutter/material.dart";
|
|
|
|
import "../screens/account_screen.dart";
|
|
import "../screens/about_screen.dart";
|
|
import "../screens/chat_screen.dart";
|
|
import "../screens/address_edit_screen.dart";
|
|
import "../screens/address_list_screen.dart";
|
|
import "../screens/beacon_scan_screen.dart";
|
|
import "../screens/signup_screen.dart";
|
|
import "../screens/cart_view_screen.dart";
|
|
import "../screens/group_order_invite_screen.dart";
|
|
import "../screens/login_screen.dart";
|
|
import "../screens/menu_browse_screen.dart";
|
|
import "../screens/order_history_screen.dart";
|
|
import "../screens/order_type_select_screen.dart";
|
|
import "../screens/profile_settings_screen.dart";
|
|
import "../screens/restaurant_select_screen.dart";
|
|
import "../screens/service_point_select_screen.dart";
|
|
import "../screens/splash_screen.dart";
|
|
|
|
class AppRoutes {
|
|
static const String splash = "/";
|
|
static const String login = "/login";
|
|
static const String beaconScan = "/beacon-scan";
|
|
static const String orderTypeSelect = "/order-type";
|
|
static const String groupOrderInvite = "/group-invite";
|
|
static const String restaurantSelect = "/restaurants";
|
|
static const String servicePointSelect = "/service-points";
|
|
static const String menuBrowse = "/menu";
|
|
static const String cartView = "/cart";
|
|
static const String account = "/account";
|
|
static const String orderHistory = "/order-history";
|
|
static const String profileSettings = "/profile-settings";
|
|
static const String addressList = "/addresses";
|
|
static const String addressEdit = "/address-edit";
|
|
static const String about = "/about";
|
|
static const String signup = "/signup";
|
|
static const String chat = "/chat";
|
|
|
|
static Map<String, WidgetBuilder> get routes => {
|
|
splash: (_) => const SplashScreen(),
|
|
login: (_) => const LoginScreen(),
|
|
beaconScan: (_) => const BeaconScanScreen(),
|
|
orderTypeSelect: (_) => const OrderTypeSelectScreen(),
|
|
groupOrderInvite: (_) => const GroupOrderInviteScreen(),
|
|
restaurantSelect: (_) => const RestaurantSelectScreen(),
|
|
servicePointSelect: (_) => const ServicePointSelectScreen(),
|
|
menuBrowse: (_) => const MenuBrowseScreen(),
|
|
"/menu_browse": (_) => const MenuBrowseScreen(), // Alias for menuBrowse
|
|
cartView: (_) => const CartViewScreen(),
|
|
account: (_) => const AccountScreen(),
|
|
orderHistory: (_) => const OrderHistoryScreen(),
|
|
profileSettings: (_) => const ProfileSettingsScreen(),
|
|
addressList: (_) => const AddressListScreen(),
|
|
addressEdit: (_) => const AddressEditScreen(),
|
|
about: (_) => const AboutScreen(),
|
|
signup: (_) => const SignupScreen(),
|
|
};
|
|
}
|