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

@@ -1,7 +1,7 @@
// Flutter Packages
import 'package:easy_localization/easy_localization.dart';
import 'package:flutter/material.dart';
import 'package:get/get.dart' hide Trans;
import 'package:get/get.dart';
/// A [Widget] to show when there is no data to display.
class EmptyScreen extends StatelessWidget {
@@ -10,6 +10,6 @@ class EmptyScreen extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Center(child: Text('Nothing found here...'.tr()));
return Center(child: Text('Nothing found here...'.tr));
}
}

View File

@@ -2,7 +2,7 @@ import 'dart:convert';
import 'package:customer/widget/osm_map/place_model.dart';
import 'package:flutter_map/flutter_map.dart';
import 'package:geolocator/geolocator.dart';
import 'package:get/get.dart' hide Trans;
import 'package:get/get.dart';
import 'package:http/http.dart' as http;
import '../../utils/utils.dart';
import 'package:latlong2/latlong.dart';

View File

@@ -3,11 +3,11 @@ import 'dart:developer';
import 'package:customer/themes/app_them_data.dart';
import 'package:customer/themes/round_button_fill.dart';
import 'package:customer/widget/osm_map/map_controller.dart';
import 'package:easy_localization/easy_localization.dart';
import 'package:flutter/material.dart';
import 'package:flutter_map/flutter_map.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';
import 'package:get/get.dart' hide Trans;
import 'package:get/get.dart';
import 'package:latlong2/latlong.dart';
import '../../controllers/theme_controller.dart';
@@ -28,7 +28,7 @@ class MapPickerPage extends StatelessWidget {
// centerTitle: false,
// titleSpacing: 0,
// title: Text(
// "PickUp Location".tr(),
// "PickUp Location".tr,
// textAlign: TextAlign.start,
// style: TextStyle(
// fontFamily: AppThemeData.medium,
@@ -98,7 +98,7 @@ class MapPickerPage extends StatelessWidget {
isDark ? AppThemeData.grey900 : AppThemeData.grey900,
),
decoration: InputDecoration(
hintText: 'Search location...'.tr(),
hintText: 'Search location...'.tr,
hintStyle: TextStyle(
color:
isDark
@@ -157,8 +157,8 @@ class MapPickerPage extends StatelessWidget {
children: [
Text(
controller.pickedPlace.value != null
? "Picked Location:".tr()
: "No Location Picked".tr(),
? "Picked Location:".tr
: "No Location Picked".tr,
style: AppThemeData.boldTextStyle(
color: AppThemeData.grey900,
fontSize: 17.sp,
@@ -178,7 +178,7 @@ class MapPickerPage extends StatelessWidget {
children: [
Expanded(
child: RoundedButtonFill(
title: "Confirm Location".tr(),
title: "Confirm Location".tr,
color: AppThemeData.mainColor,
textColor: AppThemeData.grey50,
borderRadius: 12,

View File

@@ -1,7 +1,6 @@
import 'package:easy_localization/easy_localization.dart';
import 'package:flutter/material.dart';
import 'package:geolocator/geolocator.dart';
import 'package:get/get.dart' hide Trans;
import 'package:get/get.dart';
import '../themes/app_them_data.dart';
import '../themes/round_button_fill.dart';
@@ -29,7 +28,7 @@ class PermissionDialog extends StatelessWidget {
const SizedBox(height: 20),
Text(
'You denied location permission forever. Please allow location permission from your app settings and receive more accurate delivery.'
.tr(),
.tr,
textAlign: TextAlign.center,
style: TextStyle(fontSize: 18),
),
@@ -48,14 +47,14 @@ class PermissionDialog extends StatelessWidget {
),
minimumSize: const Size(1, 50),
),
child: Text('close'.tr()),
child: Text('close'.tr),
onPressed: () => Navigator.pop(context),
),
),
const SizedBox(width: 10),
Expanded(
child: RoundedButtonFill(
title: "Settings".tr(),
title: "Settings".tr,
color: AppThemeData.grey900,
textColor: AppThemeData.grey50,
onPress: () async {

View File

@@ -1,5 +1,5 @@
import 'package:customer/widget/place_picker/selected_location_model.dart';
import 'package:get/get.dart' hide Trans;
import 'package:get/get.dart';
import 'package:google_maps_flutter/google_maps_flutter.dart';
import 'package:geolocator/geolocator.dart';
import 'package:geocoding/geocoding.dart';

View File

@@ -4,11 +4,11 @@ import 'package:customer/themes/round_button_fill.dart';
import 'package:customer/widget/place_picker/location_controller.dart';
import 'package:customer/constant/constant.dart';
import 'package:customer/controllers/theme_controller.dart';
import 'package:easy_localization/easy_localization.dart';
import 'package:flutter/material.dart';
import 'package:flutter_google_places_hoc081098/flutter_google_places_hoc081098.dart';
import 'package:flutter_google_places_hoc081098/google_maps_webservice_places.dart';
import 'package:get/get.dart' hide Trans;
import 'package:get/get.dart';
import 'package:google_maps_flutter/google_maps_flutter.dart';
final GoogleMapsPlaces _places = GoogleMapsPlaces(apiKey: Constant.mapAPIKey);
@@ -131,7 +131,7 @@ class LocationPickerScreen extends StatelessWidget {
children: [
Icon(Icons.search),
SizedBox(width: 8),
Text("Search place...".tr()),
Text("Search place...".tr),
],
),
),

View File

@@ -1,9 +1,9 @@
import 'dart:async';
import 'dart:ui' as ui;
import 'package:easy_localization/easy_localization.dart';
import 'package:flutter/material.dart';
import 'package:flutter_cache_manager/flutter_cache_manager.dart';
import 'package:get/get.dart';
import '../controller/story_controller.dart';
import '../utils.dart';
@@ -28,7 +28,10 @@ class ImageLoader {
onComplete();
}
final fileStream = DefaultCacheManager().getFileStream(url, headers: requestHeaders as Map<String, String>?);
final fileStream = DefaultCacheManager().getFileStream(
url,
headers: requestHeaders as Map<String, String>?,
);
fileStream.listen(
(fileResponse) {
@@ -44,13 +47,18 @@ class ImageLoader {
state = LoadState.success;
ui.instantiateImageCodec(imageBytes).then((codec) {
frames = codec;
onComplete();
}, onError: (error) {
state = LoadState.failure;
onComplete();
});
ui
.instantiateImageCodec(imageBytes)
.then(
(codec) {
frames = codec;
onComplete();
},
onError: (error) {
state = LoadState.failure;
onComplete();
},
);
},
onError: (error) {
state = LoadState.failure;
@@ -92,10 +100,7 @@ class StoryImage extends StatefulWidget {
Key? key,
}) {
return StoryImage(
ImageLoader(
url,
requestHeaders: requestHeaders,
),
ImageLoader(url, requestHeaders: requestHeaders),
controller: controller,
fit: fit,
loadingWidget: loadingWidget,
@@ -120,7 +125,9 @@ class StoryImageState extends State<StoryImage> {
super.initState();
if (widget.controller != null) {
_streamSubscription = widget.controller!.playbackNotifier.listen((playbackState) {
_streamSubscription = widget.controller!.playbackNotifier.listen((
playbackState,
) {
// for the case of gifs we need to pause/play
if (widget.imageLoader.frames == null) {
return;
@@ -167,7 +174,9 @@ class StoryImageState extends State<StoryImage> {
void forward() async {
_timer?.cancel();
if (widget.controller != null && widget.controller!.playbackNotifier.stream.value == PlaybackState.pause) {
if (widget.controller != null &&
widget.controller!.playbackNotifier.stream.value ==
PlaybackState.pause) {
return;
}
@@ -185,22 +194,20 @@ class StoryImageState extends State<StoryImage> {
Widget getContentView() {
switch (widget.imageLoader.state) {
case LoadState.success:
return RawImage(
image: currentFrame,
fit: widget.fit,
);
return RawImage(image: currentFrame, fit: widget.fit);
case LoadState.failure:
return Center(
child: widget.errorWidget ??
Text(
"Image failed to load.".tr(),
style: TextStyle(
color: Colors.white,
),
));
child:
widget.errorWidget ??
Text(
"Image failed to load.".tr,
style: TextStyle(color: Colors.white),
),
);
default:
return Center(
child: widget.loadingWidget ??
child:
widget.loadingWidget ??
const SizedBox(
width: 70,
height: 70,