import 'dart:async'; import 'package:doctor_app_flutter/config/localized_values.dart'; import 'package:flutter/foundation.dart' show SynchronousFuture; import 'package:flutter/material.dart'; class TranslationBase { TranslationBase(this.locale); final Locale locale; static TranslationBase of(BuildContext context) { return Localizations.of(context, TranslationBase); } String get dashboardScreenToolbarTitle => localizedValues['dashboardScreenToolbarTitle'][locale.languageCode]; String get settings => localizedValues['settings'][locale.languageCode]; String get language => localizedValues['language'][locale.languageCode]; String get lanEnglish => localizedValues['lanEnglish'][locale.languageCode]; String get lanArabic => localizedValues['lanArabic'][locale.languageCode]; String get doctorReply => localizedValues['doctorReply'][locale.languageCode]; String get time => localizedValues['time'][locale.languageCode]; String get fileNo => localizedValues['fileNo'][locale.languageCode]; String get mobileNo => localizedValues['mobileNo'][locale.languageCode]; String get messagesScreenToolbarTitle => localizedValues['messagesScreenToolbarTitle'][locale.languageCode]; String get mySchedule => localizedValues['mySchedule'][locale.languageCode]; String get errorNoSchedule => localizedValues['errorNoSchedule'][locale.languageCode]; String get verify => localizedValues['verify'][locale.languageCode]; String get referralDoctor => localizedValues['referralDoctor'][locale.languageCode]; String get referringClinic => localizedValues['referringClinic'][locale.languageCode]; String get frequency => localizedValues['frequency'][locale.languageCode]; String get priority => localizedValues['priority'][locale.languageCode]; String get maxResponseTime => localizedValues['maxResponseTime'][locale.languageCode]; String get clinicDetailsandRemarks => localizedValues['clinicDetailsandRemarks'][locale.languageCode]; String get answerSuggestions => localizedValues['answerSuggestions'][locale.languageCode]; String get outPatients => localizedValues['outPatients'][locale.languageCode]; String get searchPatient => localizedValues['searchPatient'][locale.languageCode]; String get labResult => localizedValues['labResult'][locale.languageCode]; String get todayStatistics => localizedValues['todayStatistics'][locale.languageCode]; String get familyMedicine => localizedValues['familyMedicine'][locale.languageCode]; String get arrived => localizedValues['arrived'][locale.languageCode]; String get er => localizedValues['er'][locale.languageCode]; String get walkIn => localizedValues['walkIn'][locale.languageCode]; String get notArrived => localizedValues['notArrived'][locale.languageCode]; String get radiology => localizedValues['radiology'][locale.languageCode]; String get referral => localizedValues['referral'][locale.languageCode]; String get inPatient => localizedValues['inPatient'][locale.languageCode]; String get operations => localizedValues['inPatient'][locale.languageCode]; String get patientServices => localizedValues['patientServices'][locale.languageCode]; String get searchMedicine => localizedValues['searchMedicine'][locale.languageCode]; String get myReferralPatient => localizedValues['myReferralPatient'][locale.languageCode]; String get myReferredPatient => localizedValues['myReferredPatient'][locale.languageCode]; String get firstName => localizedValues['firstName'][locale.languageCode]; String get middleName => localizedValues['middleName'][locale.languageCode]; String get lastName => localizedValues['lastName'][locale.languageCode]; String get phoneNumber => localizedValues['phoneNumber'][locale.languageCode]; String get patientID => localizedValues['patientID'][locale.languageCode]; String get patientFile => localizedValues['patientFile'][locale.languageCode]; String get search => localizedValues['search'][locale.languageCode]; String get onlyArrivedPatient => localizedValues['onlyArrivedPatient'][locale.languageCode]; } class TranslationBaseDelegate extends LocalizationsDelegate { const TranslationBaseDelegate(); @override bool isSupported(Locale locale) => ['en', 'ar'].contains(locale.languageCode); @override Future load(Locale locale) { return SynchronousFuture(TranslationBase(locale)); } @override bool shouldReload(TranslationBaseDelegate old) => false; }