import 'package:core/utils/build_utils.dart'; import 'package:flutter/material.dart'; import 'package:flutter_dotenv/flutter_dotenv.dart'; import 'package:tmail_ui_user/main/utils/app_config.dart'; import 'package:url_launcher/url_launcher.dart'; import 'package:intl/intl.dart' as intl; class AppUtils { static const String envFileName = 'env.file'; static Future loadEnvFile() { return dotenv.load(fileName: envFileName); } static Future loadFcmConfigFileToEnv({Map? currentMapEnvData}) { return dotenv.load( fileName: AppConfig.appFCMConfigurationPath, mergeWith: currentMapEnvData ?? {} ); } static Future launchLink(String url, {bool isNewTab = true}) async { await launchUrl( Uri.parse(url), webOnlyWindowName: isNewTab ? '_blank' : '_self', ); } static String? get fcmVapidPublicKey => BuildUtils.isWeb ? AppConfig.fcmVapidPublicKeyWeb : null; static bool isDirectionRTL(BuildContext context) { return intl.Bidi.isRtlLanguage(Localizations.localeOf(context).languageCode); } }