diff --git a/lib/shared/components/molecules/modules/enums/enum_modules.dart b/lib/shared/components/molecules/modules/enums/enum_modules.dart index 107a0e98..c46ab43f 100644 --- a/lib/shared/components/molecules/modules/enums/enum_modules.dart +++ b/lib/shared/components/molecules/modules/enums/enum_modules.dart @@ -1,6 +1,7 @@ import 'package:flutter/material.dart'; import 'package:hub/flutter_flow/internationalization.dart'; import 'package:hub/flutter_flow/nav/nav.dart'; +import 'package:hub/shared/components/molecules/menu/index.dart'; abstract class BaseModule { String get value; @@ -275,3 +276,274 @@ enum ModuleEnum implements BaseModule { } } } + +enum MenuEntries implements BaseEntry { + providerSchedule, + deliverySchedule, + fastPass, + completeSchedule, + orders, + reservations, + visitors, + vehicles, + residents, + openedVisits, + qrCode, + pets, + access, + liberations, + messages, + aboutProperty, + petsHistory, + peopleOnTheProperty, + settings, + logout; + + @override + String get value { + switch (this) { + case ModuleEnum.messages: + return 'FRE-HUB-MESSAGES'; + case ModuleEnum.liberations: + return 'FRE-HUB-LIBERATIONS'; + case ModuleEnum.reservations: + return 'FRE-HUB-RESERVATIONS'; + case ModuleEnum.access: + return 'FRE-HUB-ACCESS'; + case ModuleEnum.openedVisits: + return 'FRE-HUB-OPENED-VISITS'; + case ModuleEnum.vehicles: + return 'FRE-HUB-VEHICLES'; + case ModuleEnum.residents: + return 'FRE-HUB-RESIDENTS'; + case ModuleEnum.pets: + return 'FRE-HUB-PETS'; + case ModuleEnum.orders: + return 'FRE-HUB-ORDERS'; + case ModuleEnum.completeSchedule: + return 'FRE-HUB-COMPLETE-SCHEDULE'; + case ModuleEnum.providerSchedule: + return 'FRE-HUB-AGE-PROV-PRESTADOR'; + case ModuleEnum.deliverySchedule: + return 'FRE-HUB-AGE-PROV-DELIVERY'; + case ModuleEnum.aboutProperty: + return 'FRE-HUB-PROPERTY'; + case ModuleEnum.fastPass: + return 'FRE-HUB-FASTPASS'; + case ModuleEnum.visitors: + return 'FRE-HUB-VISITORS'; + case ModuleEnum.qrCode: + return 'FRE-HUB-QRCODE'; + case ModuleEnum.peopleOnTheProperty: + return 'FRE-HUB-PEOPLE'; + case ModuleEnum.petsHistory: + return 'FRE-HUB-PETS-HISTORY'; + default: + return ''; + } + } + + @override + String get name { + switch (this) { + case ModuleEnum.messages: + return FFLocalizations.of(navigatorKey.currentContext!).getVariableText( + ptText: 'Consultar Mensagens', + enText: 'Messages History', + ); + case ModuleEnum.liberations: + return FFLocalizations.of(navigatorKey.currentContext!).getVariableText( + ptText: 'Consultar Liberações', + enText: 'Liberations History', + ); + case ModuleEnum.reservations: + return FFLocalizations.of(navigatorKey.currentContext!).getVariableText( + ptText: 'Reservas', + enText: 'Reservations', + ); + case ModuleEnum.access: + return FFLocalizations.of(navigatorKey.currentContext!).getVariableText( + ptText: 'Consultar Acessos', + enText: 'Access History', + ); + case ModuleEnum.openedVisits: + return FFLocalizations.of(navigatorKey.currentContext!).getVariableText( + ptText: 'Visitas em Aberto', + enText: 'Opened Visits', + ); + case ModuleEnum.vehicles: + return FFLocalizations.of(navigatorKey.currentContext!).getVariableText( + ptText: 'Veículos', + enText: 'Vehicles', + ); + case ModuleEnum.residents: + return FFLocalizations.of(navigatorKey.currentContext!).getVariableText( + ptText: 'Moradores', + enText: 'Residents', + ); + case ModuleEnum.pets: + return FFLocalizations.of(navigatorKey.currentContext!).getVariableText( + ptText: 'Pets', + enText: 'Pets', + ); + case ModuleEnum.petsHistory: + return FFLocalizations.of(navigatorKey.currentContext!).getVariableText( + ptText: 'Pets', + enText: 'Pets', + ); + case ModuleEnum.peopleOnTheProperty: + return FFLocalizations.of(navigatorKey.currentContext!).getVariableText( + ptText: 'Pessoas na Propriedade', + enText: 'People on the Property', + ); + case ModuleEnum.orders: + return FFLocalizations.of(navigatorKey.currentContext!).getVariableText( + ptText: 'Minhas Encomendas', + enText: 'My Orders', + ); + case ModuleEnum.completeSchedule: + return FFLocalizations.of(navigatorKey.currentContext!).getVariableText( + ptText: 'Agenda Completa', + enText: 'Complete Schedule', + ); + case ModuleEnum.providerSchedule: + return FFLocalizations.of(navigatorKey.currentContext!).getVariableText( + ptText: 'Agendar Prestadores', + enText: 'Schedule Providers', + ); + case ModuleEnum.deliverySchedule: + return FFLocalizations.of(navigatorKey.currentContext!).getVariableText( + ptText: 'Agendar Delivery', + enText: 'Schedule Delivery', + ); + case ModuleEnum.fastPass: + return FFLocalizations.of(navigatorKey.currentContext!).getVariableText( + ptText: 'Fast Pass', + enText: 'Fast Pass', + ); + case ModuleEnum.qrCode: + return FFLocalizations.of(navigatorKey.currentContext!).getVariableText( + ptText: 'QRCode de Acesso', + enText: 'Access QRCode', + ); + case ModuleEnum.visitors: + return FFLocalizations.of(navigatorKey.currentContext!).getVariableText( + ptText: 'Cadastrar Visitantes', + enText: 'Register Visitors', + ); + case ModuleEnum.aboutProperty: + return FFLocalizations.of(navigatorKey.currentContext!).getVariableText( + ptText: 'Sobre a Propriedade', + enText: 'About the Property', + ); + case ModuleEnum.settings: + return FFLocalizations.of(navigatorKey.currentContext!).getVariableText( + ptText: 'Configurações', + enText: 'Settings', + ); + case ModuleEnum.logout: + return FFLocalizations.of(navigatorKey.currentContext!).getVariableText( + ptText: 'Sair', + enText: 'Logout', + ); + default: + return ''; + } + } + + @override + IconData get icon { + switch (this) { + case ModuleEnum.messages: + return Icons.chat_outlined; + case ModuleEnum.liberations: + return Icons.how_to_reg_outlined; + case ModuleEnum.reservations: + return Icons.event_available; + case ModuleEnum.access: + return Icons.transfer_within_a_station_outlined; + case ModuleEnum.openedVisits: + return Icons.perm_contact_calendar; + case ModuleEnum.vehicles: + return Icons.directions_car; + case ModuleEnum.residents: + return Icons.groups; + case ModuleEnum.pets: + return Icons.pets; + case ModuleEnum.petsHistory: + return Icons.pets; + case ModuleEnum.peopleOnTheProperty: + return Icons.groups; + case ModuleEnum.orders: + return Icons.inventory_2_outlined; + case ModuleEnum.completeSchedule: + return Icons.event; + case ModuleEnum.providerSchedule: + return Icons.engineering_outlined; + case ModuleEnum.deliverySchedule: + return Icons.sports_motorsports_outlined; + case ModuleEnum.fastPass: + return Icons.attach_email_outlined; + case ModuleEnum.qrCode: + return Icons.qr_code; + case ModuleEnum.visitors: + return Icons.person_add_alt_1_outlined; + case ModuleEnum.aboutProperty: + return Icons.home; + case ModuleEnum.settings: + return Icons.settings; + case ModuleEnum.logout: + return Icons.logout; + default: + return Icons.error; + } + } + + @override + String get route { + switch (this) { + case ModuleEnum.messages: + return '/messageHistoryPage'; + case ModuleEnum.liberations: + return '/liberationHistory'; + case ModuleEnum.reservations: + return '/reservation'; + case ModuleEnum.access: + return '/acessHistoryPage'; + case ModuleEnum.openedVisits: + return '/visitsOnThePropertyPage'; + case ModuleEnum.vehicles: + return '/vehiclesOnThePropertyPage'; + case ModuleEnum.residents: + return '/residentsOnThePropertyPage'; + case ModuleEnum.pets: + return '/petsPage'; + case ModuleEnum.petsHistory: + return '/petsHistoryPage'; + case ModuleEnum.peopleOnTheProperty: + return '/peopleOnThePropertyPage'; + case ModuleEnum.orders: + return '/packageOrder'; + case ModuleEnum.completeSchedule: + return '/scheduleCompleteVisitPage'; + case ModuleEnum.providerSchedule: + return '/provisionalSchedule'; + case ModuleEnum.aboutProperty: + return '/aboutProperty'; + case ModuleEnum.deliverySchedule: + return '/deliverySchedule'; + case ModuleEnum.fastPass: + return '/fastPassPage'; + case ModuleEnum.qrCode: + return '/qrCodePage'; + case ModuleEnum.visitors: + return '/registerVisitorPage'; + case ModuleEnum.settings: + return '/preferencesSettings'; + case ModuleEnum.logout: + return '/WelcomePage'; + default: + return ''; + } + } +}