update languge translation

This commit is contained in:
Kalonkarthik 2025-01-17 15:46:29 +05:30
parent dceda7c568
commit b672aa8d76
2 changed files with 44 additions and 13 deletions

View File

@ -21,6 +21,9 @@ import 'package:uae_stat/presentation/routes/bottom_bar_routes/tab_routes/home_r
import '../../Screens/auth_verification/registration.dart'; import '../../Screens/auth_verification/registration.dart';
import 'package:pocketbase/pocketbase.dart'; import 'package:pocketbase/pocketbase.dart';
import '../../components/indicators/locale_provider.dart';
import '../../components/my_toggle.dart';
class LoginRoute extends HookConsumerWidget { class LoginRoute extends HookConsumerWidget {
final pb = PocketBase('https://pb.venbait.in'); final pb = PocketBase('https://pb.venbait.in');
// final _pb = PocketBase('http://127.0.0.1:8090'); // final _pb = PocketBase('http://127.0.0.1:8090');
@ -82,6 +85,7 @@ class LoginRoute extends HookConsumerWidget {
@override @override
Widget build(BuildContext context, WidgetRef ref) { Widget build(BuildContext context, WidgetRef ref) {
final locale = ref.watch(localeProvider);
final emailCtl = useTextEditingController(); final emailCtl = useTextEditingController();
final pwCtl = useTextEditingController(); final pwCtl = useTextEditingController();
final forgotPwBtn = TextButton( final forgotPwBtn = TextButton(
@ -514,9 +518,16 @@ class LoginRoute extends HookConsumerWidget {
), ),
children: [ children: [
36.verticalSpace, 36.verticalSpace,
const Align( Align(
alignment: AlignmentDirectional.topEnd, alignment: AlignmentDirectional.topEnd,
child: LangToggle(), child: MyToggle(isOn: locale?.languageCode == 'en',
knobTextWhenOn: 'ع',
knobTextWhenOff: 'EN',
pathColorWhenOn: Colors.grey.shade300,
pathColorWhenOff: Colors.grey.shade300,
onTap: (){
ref.read(localeProvider.notifier).toggleLocale();
},),
), ),
16.verticalSpace, 16.verticalSpace,
helloAndPleaseLoginTexts, helloAndPleaseLoginTexts,

View File

@ -1,9 +1,14 @@
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:go_router/go_router.dart'; import 'package:go_router/go_router.dart';
import 'package:pocketbase/pocketbase.dart'; import 'package:pocketbase/pocketbase.dart';
import 'package:shared_preferences/shared_preferences.dart'; import 'package:shared_preferences/shared_preferences.dart';
import 'package:flutter_gen/gen_l10n/app_localizations.dart';
class BaseScaffold extends StatefulWidget { import '../../components/indicators/locale_provider.dart';
import '../../components/my_toggle.dart';
class BaseScaffold extends ConsumerStatefulWidget {
final Widget body; final Widget body;
final Widget title; final Widget title;
final bool? showBackButton; final bool? showBackButton;
@ -26,7 +31,7 @@ class BaseScaffold extends StatefulWidget {
_BaseScaffoldState createState() => _BaseScaffoldState(); _BaseScaffoldState createState() => _BaseScaffoldState();
} }
class _BaseScaffoldState extends State<BaseScaffold> { class _BaseScaffoldState extends ConsumerState<BaseScaffold> {
final _pb = PocketBase('https://pb.venbait.in'); final _pb = PocketBase('https://pb.venbait.in');
String _avatarUrl = ''; String _avatarUrl = '';
dynamic userId; dynamic userId;
@ -99,6 +104,8 @@ class _BaseScaffoldState extends State<BaseScaffold> {
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
final locale = ref.watch(localeProvider);
final localeNotifier = ref.read(localeProvider.notifier);
String currentRoute = GoRouterState.of(context).matchedLocation; String currentRoute = GoRouterState.of(context).matchedLocation;
double myheight = MediaQuery.of(context).size.height; double myheight = MediaQuery.of(context).size.height;
double mywidth = MediaQuery.of(context).size.width; double mywidth = MediaQuery.of(context).size.width;
@ -109,10 +116,18 @@ class _BaseScaffoldState extends State<BaseScaffold> {
backgroundColor: widget.appbarColor, backgroundColor: widget.appbarColor,
actions: widget.actions ?? actions: widget.actions ??
[ [
IconButton( // IconButton(
onPressed: () {}, // onPressed: () {},
icon: const Icon(Icons.toggle_off_outlined), // icon: const Icon(Icons.toggle_off_outlined),
), // ),
MyToggle(isOn: locale?.languageCode == 'en',
knobTextWhenOn: 'ع',
knobTextWhenOff: 'EN',
pathColorWhenOn: Colors.grey.shade300,
pathColorWhenOff: Colors.grey.shade300,
onTap: (){
ref.read(localeProvider.notifier).toggleLocale();
},),
], ],
leading: Stack( leading: Stack(
children: [ children: [
@ -216,7 +231,8 @@ class _BaseScaffoldState extends State<BaseScaffold> {
if (role == 'admin') if (role == 'admin')
ListTile( ListTile(
leading: Icon(Icons.manage_accounts), leading: Icon(Icons.manage_accounts),
title: const Text('Manage User'), // title: Text('Manage User'),
title: Text(AppLocalizations.of(context)!.manage_user,),
onTap: () => context.go('/manageuser'), onTap: () => context.go('/manageuser'),
), ),
ListTile( ListTile(
@ -239,19 +255,23 @@ class _BaseScaffoldState extends State<BaseScaffold> {
items: [ items: [
BottomNavigationBarItem( BottomNavigationBarItem(
icon: Icon(Icons.home), icon: Icon(Icons.home),
label: 'Home', // label: 'Home',
label: AppLocalizations.of(context)!.nav_home,
), ),
BottomNavigationBarItem( BottomNavigationBarItem(
icon: Icon(Icons.map), icon: Icon(Icons.map),
label: 'UAE Numbers', // label: 'UAE Numbers'
label: AppLocalizations.of(context)!.nav_uae,
), ),
BottomNavigationBarItem( BottomNavigationBarItem(
icon: Icon(Icons.bar_chart), icon: Icon(Icons.bar_chart),
label: 'Competitiveness', // label: 'Competitiveness',
label: AppLocalizations.of(context)!.nav_competitiveness,
), ),
BottomNavigationBarItem( BottomNavigationBarItem(
icon: Icon(Icons.public), icon: Icon(Icons.public),
label: 'Country Profile', // label: 'Country Profile',
label: AppLocalizations.of(context)!.country_profile,
), ),
], ],
selectedItemColor: Colors.black, selectedItemColor: Colors.black,