Skip to content

Commit

Permalink
minor bug fixes and added bn local and number and date localizations
Browse files Browse the repository at this point in the history
  • Loading branch information
fahidsarker committed May 15, 2022
1 parent db52c94 commit 12274ad
Show file tree
Hide file tree
Showing 20 changed files with 2,159 additions and 1,018 deletions.
2 changes: 1 addition & 1 deletion l10n.yaml
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
arb-dir: lib/localization/langs
arb-dir: locals/langs
template-arb-file: app_en.arb
output-localization-file: app_localizations.dart
47 changes: 46 additions & 1 deletion lib/extensions.dart
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ import 'package:flutter/material.dart';
import 'package:flutter_gen/gen_l10n/app_localizations.dart';
import 'package:flutter_gen/gen_l10n/app_localizations_en.dart';
import 'package:flutter_localizations/flutter_localizations.dart';
import 'package:hijri/hijri_calendar.dart';

AppLocalizationsEn get engAppLocale {
return AppLocalizationsEn();
Expand Down Expand Up @@ -72,7 +73,7 @@ extension ContextHelper on BuildContext {
}
}

extension IntHelper<T extends num> on double {
extension DoubleHelper<T extends num> on double {
T closestTo(List<T> values) {
T lastMin = values[0];
double lastDif = (lastMin - this).abs();
Expand Down Expand Up @@ -130,6 +131,13 @@ extension LocalizeHelper on AppLocalizations {
? compass_heading_north_west
: compass_heading_north;
}

String getDigitFor(int i){
assert(i >= 0 && i <= 9, "the digit must be between 0 and 9");
return [
zero, one,two, three, four, five, six, seven, eight, nine
][i];
}
}

extension Helper on BuildContext {
Expand Down Expand Up @@ -202,4 +210,41 @@ extension DateHelper on DateTime {
bool get isJummahToday {
return weekday == 5;
}

String getHizriDateForLocale(AppLocalizations locale, {String separator = '-'}){
final months = [
locale.arabic_month_muharram,
locale.arabic_month_safar,
locale.arabic_month_rabi_al_awwal,
locale.arabic_month_rabi_al_thani,
locale.arabic_month_jumada_al_awwal,
locale.arabic_month_jumada_al_thani,
locale.arabic_month_rajab,
locale.arabic_month_shaban,
locale.arabic_month_ramadan,
locale.arabic_month_shawwal,
locale.arabic_month_dhu_al_qadha,
locale.arabic_month_dhu_al_hijjah];

final hDate = HijriCalendar.fromDate(this);
return '${hDate.hDay.localizeTo(locale)}$separator${months[hDate.hMonth]}$separator${hDate.hYear.localizeTo(locale)}';
}
}

extension IntHelper on int{
String localizeTo(AppLocalizations locale){
final strNum = toString();
var localized = '';
for(int i = 0; i < strNum.length; i++){
final digit = strNum[i];
final localizedDigit = locale.getDigitFor(digit.toInt());
localized += localizedDigit;
}

if(locale.direction == 'rlt'){
localized = localized.split('').reversed.join('');
}

return localized;
}
}
36 changes: 0 additions & 36 deletions lib/helpers/sharedPrefHelper.dart

This file was deleted.

Loading

0 comments on commit 12274ad

Please sign in to comment.