Untitled
unknown
plain_text
a year ago
5.0 kB
7
Indexable
Cần bán căn hộ chung cư 80m2, 2PN, Vinhomes Smart City, Hà NộiCần bán căn hộ chung cư 80m2, 2PN, Vinhomes Smart City, Hà NộiCần bán căn hộ chung cư 80m2, 2PN, Vinhomes Smart City, Hà NộiCần bán căn hộ chung cư 80m2, 2PN, Vinhomes Smart City, Hà Nộimport 'package:MeeyID/MeeyID.dart';import 'package:app_meeyland_com/common/constants/environment.dart' as env;import 'package:app_meeyland_com/common/config/theme_data.dart';import 'package:app_meeyland_com/common/constants/time_message.dart';import 'package:app_meeyland_com/common/router/router.dart';import 'package:app_meeyland_com/data/api_endpoint/user_api.dart';import 'package:app_meeyland_com/modules/authen/bloc/auth_bloc.dart';import 'package:app_meeyland_com/modules/authen/login_helper/login_helper.dart';import 'package:app_meeyland_com/modules/config/bloc/config_bloc.dart';import 'package:app_meeyland_com/modules/favorite_article/cubit/article_favorite_cubit.dart';import 'package:app_meeyland_com/modules/profile/cubit/profile_cubit_cubit.dart';import 'package:dio_cache_interceptor/dio_cache_interceptor.dart';import 'package:dio_cache_interceptor_hive_store/dio_cache_interceptor_hive_store.dart';import 'package:flutter/foundation.dart';import 'package:flutter/material.dart';import 'package:flutter_bloc/flutter_bloc.dart';import 'package:flutter_dotenv/flutter_dotenv.dart';import 'package:flutter_inappwebview/flutter_inappwebview.dart';import 'package:hive/hive.dart';import 'package:hydrated_bloc/hydrated_bloc.dart';import 'package:intl/date_symbol_data_local.dart';import 'package:nb_utils/nb_utils.dart';import 'package:path_provider/path_provider.dart';import 'package:uuid/uuid.dart';import 'package:timeago/timeago.dart' as timeago;late final CacheOptions cacheOptions;Future<void> initCacheStore() async { final appDocDir = await getApplicationDocumentsDirectory(); Hive.init(appDocDir.path); cacheOptions = CacheOptions( store: HiveCacheStore(appDocDir.path, hiveBoxName: "meeyland"), hitCacheOnErrorExcept: [ 401, 403, 400, ], maxStale: const Duration(hours: 3), priority: CachePriority.normal, cipher: null, keyBuilder: (request) { if (request.method.toLowerCase() == 'post') { Uuid uuid = const Uuid(); String key = uuid.v5( Uuid.NAMESPACE_URL, '${request.uri.toString()}-${request.data.toString()}', ); return key; } return CacheOptions.defaultCacheKeyBuilder(request); }, policy: CachePolicy.request, allowPostMethod: true, ); HydratedBloc.storage = await HydratedStorage.build( storageDirectory: appDocDir, ); if (defaultTargetPlatform == TargetPlatform.android) { await InAppWebViewController.setWebContentsDebuggingEnabled(kDebugMode); }}void initMeeyID() async { String clientID = 'MeeylandApp'; MeeyIDBuildTypey meeyIDBuildType = MeeyIDBuildType.test; switch (env.Environment.environment) { case "STAGING": meeyIDBuildType = MeeyIDBuildType.staging; break; case "production": meeyIDBuildType = MeeyIDBuildType.product; break; default: meeyIDBuildType = MeeyIDBuildType.test; break; } MeeyID.init( meeyIDBuildType: meeyIDBuildType, clientID: clientID, ); await LoginHelper.loginMeeyID(); // await _setValueDefault();}Future<void> main() async { initializeDateFormatting("vi_VN", null); await dotenv.load(); WidgetsFlutterBinding.ensureInitialized(); await initCacheStore(); initMeeyID(); // HttpProxy httpProxy = await HttpProxy.createHttpProxy(); // HttpOverrides.global = httpProxy; await initialize(); timeago.setLocaleMessages('vi', ViMessages()); timeago.setDefaultLocale('vi'); runApp( MultiBlocProvider( prvoviders: [ BlocProvider( lazy: false, create: (context) => ConfigBloc() ..add( const ConfigInit(), ), ), BlocProvider( create: (context) => AuthBloc( userApi: UserApi(), ) ..add( const AuthFetchProfileEvent(), ) ..add(GetDeviceIdEvent()), lazy: false, ), BlocProvider( create: (context) => ArticleFavoriteCubit(), ), BlocProvider( create: (context) => ProfileCubitCubit(), ) ], child: const MyApp(), ), ); // runApp(BlocProvider( // create: (context) => Auth hyBloc( // secureStorageHelper:b LoginHelper.securityStorage, // userApi: UserApi(), // ) // ..add( // const AuthFetchProfileEvent(), // ) // ..add(GetDeviceIdEvent()) // ..add(const AuthInitPaymentSdk()), // lazy: false, // child: BlocProvider( // lazy: false, // create: (context) => ConfigBloc() // ..add( // const ConfigInit(), // ), // child: const MyApp(), // ), // ));}class MyApp extends StatelessWidget { const MyApp({super.key}); @override Widget build(BuildContext context) { return MaterialApp.router( bu
Editor is loading...
Leave a Comment