From 6e6e20a7f33f9fe7d588ec11322ea73f25cf37c6 Mon Sep 17 00:00:00 2001 From: Ivan Murashov Date: Mon, 19 Mar 2018 23:59:39 +0300 Subject: [PATCH] Fix double quotes escaping. --- lib/strings.dart | 14 +++++++------- pubspec.lock | 10 +++++----- pubspec.yaml | 4 ++-- 3 files changed, 14 insertions(+), 14 deletions(-) diff --git a/lib/strings.dart b/lib/strings.dart index c5fa81d..a401718 100644 --- a/lib/strings.dart +++ b/lib/strings.dart @@ -10,18 +10,18 @@ class StringsLocalization { static Future load(String l) async { localeCode = l; - var document = xml.parse(await loadStrings(l)); - strings.clear(); - document.findAllElements('string').forEach((node) { + await rootBundle.loadString('assets/values-$localeCode/strings.xml').then((content) { + content.replaceAll('=\"', '=\\"'); + content.replaceAll('\">', '\\">"'); + var document = xml.parse(content); + strings.clear(); + document.findAllElements('string').forEach((node) { strings[node.attributes[0].value] = node.text.toString(); + }); }); return strings; } - static Future loadStrings(String locale) async { - return await rootBundle.loadString('assets/values-$locale/strings.xml'); - } - static String declineCurrency(int num, int code) { int residual = num % 100; if (residual >= 20) { diff --git a/pubspec.lock b/pubspec.lock index 4aa3377..dba21b1 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -1,5 +1,5 @@ # Generated by pub -# See http://pub.dartlang.org/doc/glossary.html#lockfile +# See https://www.dartlang.org/tools/pub/glossary#lockfile packages: async: dependency: transitive @@ -21,7 +21,7 @@ packages: name: collection url: "https://pub.dartlang.org" source: hosted - version: "1.14.5" + version: "1.14.6" flutter: dependency: "direct main" description: flutter @@ -82,7 +82,7 @@ packages: name: petitparser url: "https://pub.dartlang.org" source: hosted - version: "1.7.5" + version: "1.7.6" sky_engine: dependency: transitive description: flutter @@ -108,7 +108,7 @@ packages: name: sqflite url: "https://pub.dartlang.org" source: hosted - version: "0.8.2" + version: "0.8.3" stack_trace: dependency: transitive description: @@ -150,6 +150,6 @@ packages: name: xml url: "https://pub.dartlang.org" source: hosted - version: "2.6.0" + version: "3.0.0" sdks: dart: ">=2.0.0-dev.23.0 <=2.0.0-edge.0d5cf900b021bf5c9fa593ffa12b15bcd1cc5fe0" diff --git a/pubspec.yaml b/pubspec.yaml index fdccaa0..130c1d1 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -7,7 +7,7 @@ dependencies: path_provider: "^0.2.1+1" sqflite: any image_picker: '^0.1.3' # use for ask permissions @ iOS - xml: "^2.6.0" + xml: "^3.0.0" flutter: sdk: flutter @@ -35,7 +35,7 @@ flutter: - assets/pip_splash.png - assets/dinect_splash.png - assets/crypto_splash.png - + - assets/settings.png - assets/settings_arrow.png - assets/help.png