96 lines
4.1 KiB
Dart
96 lines
4.1 KiB
Dart
import 'package:flutter/material.dart';
|
|
import 'package:hub/backend/schema/enums/enums.dart';
|
|
import 'package:hub/components/molecular_components/menu_item/menu_item.dart';
|
|
import 'package:hub/components/organism_components/local_profile_component/local_profile_component_model.dart';
|
|
import 'package:hub/components/organism_components/menu_component/menu_component_model.dart';
|
|
import 'package:hub/components/organism_components/message_well_component/message_well_component_model.dart';
|
|
import 'package:hub/flutter_flow/flutter_flow_model.dart';
|
|
import 'package:hub/pages/home_page/home_page_widget.dart';
|
|
import 'package:hub/shared/helpers/base_storage.dart';
|
|
import 'package:hub/shared/helpers/storage_helper.dart';
|
|
|
|
class HomePageModel extends FlutterFlowModel<HomePageWidget> {
|
|
HomePageModel({required this.safeSetState});
|
|
late final VoidCallback safeSetState;
|
|
|
|
bool isGrid = false;
|
|
late final String devUUID;
|
|
late final String cliUUID;
|
|
late final String userUUID;
|
|
late final String userName;
|
|
late final String userEmail;
|
|
|
|
final unfocusNode = FocusNode();
|
|
FocusNode? textFieldFocusNode;
|
|
TextEditingController? textController;
|
|
String? Function(BuildContext, String?)? textControllerValidator;
|
|
late LocalProfileComponentModel localComponentModel;
|
|
late MenuComponentModel homeMenuComponentModel;
|
|
late MenuComponentModel drawerMenuComponentModel;
|
|
late MessageWellComponentModel messageWellComponentModel;
|
|
|
|
Future<void> _initVariable() async {
|
|
devUUID = (await StorageHelper().get(SQLiteStorageKey.devUUID.value, Storage.SQLiteStorage)) ?? '';
|
|
userUUID = (await StorageHelper().get(SQLiteStorageKey.userUUID.value, Storage.SQLiteStorage)) ?? '';
|
|
cliUUID = (await StorageHelper().get(SQLiteStorageKey.clientUUID.value, Storage.SQLiteStorage)) ?? '';
|
|
userName = (await StorageHelper().get(SQLiteStorageKey.userName.value, Storage.SQLiteStorage)) ?? '';
|
|
userEmail = (await StorageHelper().get(SecureStorageKey.email.value, Storage.SecureStorage)) ?? '';
|
|
safeSetState.call();
|
|
}
|
|
|
|
@override
|
|
void initState(BuildContext context) {
|
|
_initVariable();
|
|
localComponentModel = createModel(context, () => LocalProfileComponentModel());
|
|
homeMenuComponentModel = createModel(
|
|
context,
|
|
() => MenuComponentModel(expandable: true, style: MenuView.list_grid, item: MenuItem.button, menuOptions: [
|
|
MenuOption.SettingsOnTheApp,
|
|
MenuOption.MessagesOnTheProperty,
|
|
MenuOption.AccessOnTheProperty,
|
|
MenuOption.PetsRegister,
|
|
MenuOption.VisitorsRegister,
|
|
MenuOption.ReservationsOnTheLocal,
|
|
MenuOption.PackagesOnTheProperty,
|
|
MenuOption.DeliverySchedule,
|
|
MenuOption.WorkersOnTheProperty,
|
|
MenuOption.AboutProperty,
|
|
MenuOption.CompleteSchedule,
|
|
MenuOption.FastPassSchedule,
|
|
MenuOption.LiberationsOnTheProperty,
|
|
MenuOption.QRCodeAccessInProperty,
|
|
]));
|
|
drawerMenuComponentModel = createModel(
|
|
context,
|
|
() => MenuComponentModel(expandable: false, style: MenuView.list, item: MenuItem.tile, menuOptions: [
|
|
MenuOption.SettingsOnTheApp,
|
|
MenuOption.MessagesOnTheProperty,
|
|
MenuOption.AccessOnTheProperty,
|
|
MenuOption.PetsRegister,
|
|
MenuOption.VisitorsRegister,
|
|
MenuOption.ReservationsOnTheLocal,
|
|
MenuOption.PackagesOnTheProperty,
|
|
MenuOption.DeliverySchedule,
|
|
MenuOption.WorkersOnTheProperty,
|
|
MenuOption.AboutProperty,
|
|
MenuOption.CompleteSchedule,
|
|
MenuOption.FastPassSchedule,
|
|
MenuOption.LiberationsOnTheProperty,
|
|
MenuOption.QRCodeAccessInProperty,
|
|
MenuOption.LogoutOnTheApp,
|
|
]));
|
|
messageWellComponentModel = createModel(context, () => MessageWellComponentModel());
|
|
}
|
|
|
|
@override
|
|
void dispose() {
|
|
unfocusNode.dispose();
|
|
textFieldFocusNode?.dispose();
|
|
textController?.dispose();
|
|
|
|
localComponentModel.dispose();
|
|
homeMenuComponentModel.dispose();
|
|
messageWellComponentModel.dispose();
|
|
}
|
|
}
|