localizationFeature static method

Future localizationFeature()

Implementation

static Future localizationFeature() async {
  AppDataModel appDataModel = AppDataModel.fromJson(jsonDecode(
      await FolderAndFileService.readFile(
          "${Directory.current.path}\\thunder.json")));

  // 1- get the string write in strings_constants.dart
  LocalizationVariablesNameAndWords localizationVariablesNameAndWords =
      await GetStringToTranslate.getStringToTranslate(appDataModel);

  // 2- get from to languages
  FromToLanguageModel fromToLanguageModel =
      await GetTranslateLanguages.getTranslateLanguages(
          appDataModel, localizationVariablesNameAndWords);

  // 3- Translate words to languages
  List<TranslatedWordsModel> translatedWords =
      await TranslateLanguages.translateLanguages(
    localizationVariablesNameAndWords.wordsKeys ?? [],
    fromToLanguageModel,
    lastWordTranslated: appDataModel.localizationModel!.lastWordTranslated,
  );

  // 4- write the translated words in the languages files
  await SetupLanguagesFiles.setupBasicTranslated(
    appDataModel,
    localizationVariablesNameAndWords,
    translatedWords,
    fromToLanguageModel,
  );
}