BASE: Switch From EasyLocalization To GetX Localization.

This commit is contained in:
2025-12-04 16:56:39 +05:00
parent 157545f1c0
commit bf1d07a048
218 changed files with 2535 additions and 2313 deletions

View File

@@ -3,9 +3,9 @@ import 'dart:developer';
import 'package:customer/constant/constant.dart';
import 'package:customer/models/cart_product_model.dart';
import 'package:customer/themes/custom_dialog_box.dart';
import 'package:easy_localization/easy_localization.dart';
import 'package:flutter/material.dart';
import 'package:get/get.dart' hide Trans;
import 'package:get/get.dart';
import 'database_helper.dart';
class CartProvider with ChangeNotifier {
@@ -56,12 +56,12 @@ class CartProvider with ChangeNotifier {
context: context,
builder: (BuildContext context) {
return CustomDialogBox(
title: "Alert".tr(),
title: "Alert".tr,
descriptions:
"Your cart already contains items from another restaurant. Would you like to replace them with items from this restaurant instead?"
.tr(),
positiveString: "Add".tr(),
negativeString: "Cancel".tr(),
.tr,
positiveString: "Add".tr,
negativeString: "Cancel".tr,
positiveClick: () async {
cartItem.clear();
_cartItems.clear();

View File

@@ -9,12 +9,12 @@ import 'package:customer/models/rental_order_model.dart';
import 'package:customer/models/rental_package_model.dart';
import 'package:customer/models/user_model.dart';
import 'package:customer/models/zone_model.dart';
import 'package:easy_localization/easy_localization.dart';
import 'package:firebase_auth/firebase_auth.dart' as auth;
import 'package:firebase_storage/firebase_storage.dart';
import 'package:flutter/cupertino.dart';
import 'package:geocoding/geocoding.dart';
import 'package:get/get.dart' hide Trans;
import 'package:get/get.dart';
import 'package:intl/intl.dart';
import 'package:uuid/uuid.dart';
import 'package:video_compress/video_compress.dart';
@@ -205,7 +205,7 @@ class FireStoreUtils {
.set(ratingModel.toJson());
} catch (e, s) {
print('FireStoreUtils.referralAdd $e $s');
return "Couldn't review".tr();
return "Couldn't review".tr;
}
return null;
}
@@ -2069,7 +2069,7 @@ class FireStoreUtils {
File image,
BuildContext context,
) async {
ShowToastDialog.showLoader("Please wait".tr());
ShowToastDialog.showLoader("Please wait".tr);
var uniqueID = const Uuid().v4();
Reference upload = FirebaseStorage.instance.ref().child(
'images/$uniqueID.png',
@@ -2404,8 +2404,8 @@ class FireStoreUtils {
// userId: FireStoreUtils.getCurrentUid(),
// isTopup: false,
// orderId: orderModel.id,
// note: "Order Amount debited".tr(),
// paymentStatus: "success".tr(),
// note: "Order Amount debited".tr,
// paymentStatus: "success".tr,
// );
//
// await FireStoreUtils.setWalletTransaction(transactionModel).then((value) async {
@@ -2950,12 +2950,12 @@ class FireStoreUtils {
String firstHTML = """
<table style="width: 100%; border-collapse: collapse; border: 1px solid rgb(0, 0, 0);">
<thead>
<tr()>
<tr>
<th style="text-align: left; border: 1px solid rgb(0, 0, 0);">Product Name<br></th>
<th style="text-align: left; border: 1px solid rgb(0, 0, 0);">Quantity<br></th>
<th style="text-align: left; border: 1px solid rgb(0, 0, 0);">Price<br></th>
<th style="text-align: left; border: 1px solid rgb(0, 0, 0);">Total<br></th>
</tr()>
</tr>
</thead>
<tbody>
""";
@@ -3000,12 +3000,12 @@ class FireStoreUtils {
}
String product = """
<tr()>
<tr>
<td style="width: 20%; border-top: 1px solid rgb(0, 0, 0);">${orderModel.provider.title}</td>
<td style="width: 20%; border: 1px solid rgb(0, 0, 0);" rowspan="2">${orderModel.quantity}</td>
<td style="width: 20%; border: 1px solid rgb(0, 0, 0);" rowspan="2">${Constant.amountShow(amount: (orderModel.provider.disPrice == "" || orderModel.provider.disPrice == "0") ? orderModel.provider.price.toString() : orderModel.provider.disPrice.toString())}</td>
<td style="width: 20%; border: 1px solid rgb(0, 0, 0);" rowspan="2">${Constant.amountShow(amount: (total).toString())}</td>
</tr()>
</tr>
""";
htmlList.add(product);

View File

@@ -1,20 +1,37 @@
import 'dart:convert';
import 'package:flutter/services.dart';
import 'package:flutter/material.dart';
import 'package:get/get.dart' hide Trans;
import '../lang/app_en.dart';
import 'package:get/get.dart';
class LocalizationService extends Translations {
// Default locale
static const locale = Locale('en', 'US');
static Map<String, Map<String, String>> _keys = {};
static final locales = [const Locale('en')];
static const fallbackLocale = Locale('en', 'US');
static const supportedLocales = [
Locale('en', 'US'),
Locale('uz', 'UZ'),
Locale('ru', 'RU'),
];
// Keys and their translations
// Translations are separated maps in `lang` file
@override
Map<String, Map<String, String>> get keys => {'en_US': enUS};
Map<String, Map<String, String>> get keys => _keys;
// Gets locale from language, and updates the locale
void changeLocale(String lang) {
Get.updateLocale(Locale(lang));
// Load JSONs before starting the app
static Future<void> init() async {
_keys = {
"en_US": await _loadJson("assets/translations/en.json"),
"uz_UZ": await _loadJson("assets/translations/uz.json"),
"ru_RU": await _loadJson("assets/translations/ru.json"),
};
}
static Future<Map<String, String>> _loadJson(String path) async {
final data = await rootBundle.loadString(path);
return Map<String, String>.from(json.decode(data));
}
static void changeLocale(Locale locale) {
Get.updateLocale(locale);
}
}