summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMinh Nguyễn <mxn@1ec5.org>2017-03-08 02:43:33 -0800
committerGitHub <noreply@github.com>2017-03-08 02:43:33 -0800
commit85f0eeff343933e93c74a12b13c31e6f3658e0a4 (patch)
treee793b8b6d2001d9c3d59110bb4e3eaf7499e5446
parentece19acd10a09922a3106872c720b00089bf4b5b (diff)
downloadqtlocation-mapboxgl-85f0eeff343933e93c74a12b13c31e6f3658e0a4.tar.gz
[ios, macos] Russian, Catalan, Lithuanian, Finnish, Dutch (#8256)
* [ios, macos] Updated Russian translations * [ios, macos] Added Catalan translation * [ios, macos] Completed Lithuanian translation * [ios, macos] Added Finnish translation * [ios, macos] Fixed Polish, Ukrainian declension * [ios, macos] Updated changelogs * [ios, macos] Added Dutch localization
-rw-r--r--platform/darwin/resources/ca.lproj/Foundation.strings291
-rw-r--r--platform/darwin/resources/ca.lproj/Foundation.stringsdict54
-rw-r--r--platform/darwin/resources/lt.lproj/Foundation.strings291
-rw-r--r--platform/darwin/resources/lt.lproj/Foundation.stringsdict66
-rw-r--r--platform/darwin/resources/pl.lproj/Foundation.stringsdict6
-rw-r--r--platform/darwin/resources/ru.lproj/Foundation.stringsdict6
-rw-r--r--platform/darwin/resources/uk.lproj/Foundation.stringsdict12
-rw-r--r--platform/ios/CHANGELOG.md4
-rw-r--r--platform/ios/app/ca.lproj/Localizable.strings0
-rw-r--r--platform/ios/app/fi.lproj/Localizable.strings0
-rw-r--r--platform/ios/app/nl.lproj/Localizable.strings0
-rw-r--r--platform/ios/framework/Settings.bundle/ca.lproj/Root.strings3
-rw-r--r--platform/ios/framework/Settings.bundle/fi.lproj/Root.strings3
-rw-r--r--platform/ios/framework/Settings.bundle/nl.lproj/Root.strings3
-rw-r--r--platform/ios/ios.xcodeproj/project.pbxproj31
-rw-r--r--platform/ios/resources/ca.lproj/Localizable.strings75
-rw-r--r--platform/ios/resources/ca.lproj/Localizable.stringsdict23
-rw-r--r--platform/ios/resources/ru.lproj/Localizable.strings8
-rw-r--r--platform/ios/resources/ru.lproj/Localizable.stringsdict27
-rw-r--r--platform/macos/CHANGELOG.md4
-rw-r--r--platform/macos/app/ca.lproj/Localizable.strings0
-rw-r--r--platform/macos/app/fi.lproj/Localizable.strings0
-rw-r--r--platform/macos/app/nl.lproj/Localizable.strings0
-rw-r--r--platform/macos/app/ru.lproj/Localizable.strings0
-rw-r--r--platform/macos/macos.xcodeproj/project.pbxproj30
-rw-r--r--platform/macos/sdk/ca.lproj/Localizable.strings15
-rw-r--r--platform/macos/sdk/fi.lproj/Localizable.strings15
-rw-r--r--platform/macos/sdk/nl.lproj/Localizable.strings15
-rw-r--r--platform/macos/sdk/ru.lproj/Localizable.strings15
29 files changed, 985 insertions, 12 deletions
diff --git a/platform/darwin/resources/ca.lproj/Foundation.strings b/platform/darwin/resources/ca.lproj/Foundation.strings
new file mode 100644
index 0000000000..e36ea9ed8a
--- /dev/null
+++ b/platform/darwin/resources/ca.lproj/Foundation.strings
@@ -0,0 +1,291 @@
+/* Clock position format, long: {hours} o’clock */
+"CLOCK_FMT_LONG" = "%@ en punt";
+
+/* Clock position format, medium: {hours} o’clock */
+"CLOCK_FMT_MEDIUM" = "%@ en punt";
+
+/* Clock position format, short: {hours}:00 */
+"CLOCK_FMT_SHORT" = "%@:00";
+
+/* East, long */
+"COMPASS_E_LONG" = "est";
+
+/* East, short */
+"COMPASS_E_SHORT" = "E";
+
+/* East by north, long */
+"COMPASS_EbN_LONG" = "est per nord";
+
+/* East by north, short */
+"COMPASS_EbN_SHORT" = "EpN";
+
+/* East by south, long */
+"COMPASS_EbS_LONG" = "est per sud";
+
+/* East by south, short */
+"COMPASS_EbS_SHORT" = "EpS";
+
+/* East-northeast, long */
+"COMPASS_ENE_LONG" = "est-nord-est";
+
+/* East-northeast, short */
+"COMPASS_ENE_SHORT" = "ENE";
+
+/* East-southeast, long */
+"COMPASS_ESE_LONG" = "est-sud-est";
+
+/* East-southeast, short */
+"COMPASS_ESE_SHORT" = "ESE";
+
+/* North, long */
+"COMPASS_N_LONG" = "nord";
+
+/* North, short */
+"COMPASS_N_SHORT" = "N";
+
+/* North by east, long */
+"COMPASS_NbE_LONG" = "nord per est";
+
+/* North by east, short */
+"COMPASS_NbE_SHORT" = "NpE";
+
+/* North by west, long */
+"COMPASS_NbW_LONG" = "nord per oest";
+
+/* North by west, short */
+"COMPASS_NbW_SHORT" = "NpO";
+
+/* Northeast, long */
+"COMPASS_NE_LONG" = "nord-est";
+
+/* Northeast, short */
+"COMPASS_NE_SHORT" = "NE";
+
+/* Northeast by east, long */
+"COMPASS_NEbE_LONG" = "nord-est per est";
+
+/* Northeast by east, short */
+"COMPASS_NEbE_SHORT" = "NEpE";
+
+/* Northeast by north, long */
+"COMPASS_NEbN_LONG" = "nord-est per nord";
+
+/* Northeast by north, short */
+"COMPASS_NEbN_SHORT" = "NEpN";
+
+/* North-northeast, long */
+"COMPASS_NNE_LONG" = "nord-nord-est";
+
+/* North-northeast, short */
+"COMPASS_NNE_SHORT" = "NNE";
+
+/* North-northwest, long */
+"COMPASS_NNW_LONG" = "nord-nord-oest";
+
+/* North-northwest, short */
+"COMPASS_NNW_SHORT" = "NNO";
+
+/* Northwest, long */
+"COMPASS_NW_LONG" = "nord-oest";
+
+/* Northwest, short */
+"COMPASS_NW_SHORT" = "NO";
+
+/* Northwest by north, long */
+"COMPASS_NWbN_LONG" = "nord-oest per nord";
+
+/* Northwest by north, short */
+"COMPASS_NWbN_SHORT" = "NOpN";
+
+/* Northwest by west, long */
+"COMPASS_NWbW_LONG" = "nord-oest per oest";
+
+/* Northwest by west, short */
+"COMPASS_NWbW_SHORT" = "NOpO";
+
+/* South, long */
+"COMPASS_S_LONG" = "sud";
+
+/* South, short */
+"COMPASS_S_SHORT" = "S";
+
+/* South by east, long */
+"COMPASS_SbE_LONG" = "sud per est";
+
+/* South by east, short */
+"COMPASS_SbE_SHORT" = "SpE";
+
+/* South by west, long */
+"COMPASS_SbW_LONG" = "sud per oest";
+
+/* South by west, short */
+"COMPASS_SbW_SHORT" = "SpO";
+
+/* Southeast, long */
+"COMPASS_SE_LONG" = "sud-est";
+
+/* Southeast, short */
+"COMPASS_SE_SHORT" = "SE";
+
+/* Southeast by east, long */
+"COMPASS_SEbE_LONG" = "sud-est per est";
+
+/* Southeast by east, short */
+"COMPASS_SEbE_SHORT" = "SEpE";
+
+/* Southeast by south, long */
+"COMPASS_SEbS_LONG" = "sud-est per sud";
+
+/* Southeast by south, short */
+"COMPASS_SEbS_SHORT" = "SEpS";
+
+/* South-southeast, long */
+"COMPASS_SSE_LONG" = "sud-sud-est";
+
+/* South-southeast, short */
+"COMPASS_SSE_SHORT" = "SSE";
+
+/* South-southwest, long */
+"COMPASS_SSW_LONG" = "sud-sud-oest";
+
+/* South-southwest, short */
+"COMPASS_SSW_SHORT" = "SSO";
+
+/* Southwest, long */
+"COMPASS_SW_LONG" = "sud-oest";
+
+/* Southwest, short */
+"COMPASS_SW_SHORT" = "SO";
+
+/* Southwest by south, long */
+"COMPASS_SWbS_LONG" = "sud-oest per sud";
+
+/* Southwest by south, short */
+"COMPASS_SWbS_SHORT" = "SOpS";
+
+/* Southwest by west, long */
+"COMPASS_SWbW_LONG" = "sud-oest per oest";
+
+/* Southwest by west, short */
+"COMPASS_SWbW_SHORT" = "SOpO";
+
+/* West, long */
+"COMPASS_W_LONG" = "oest";
+
+/* West, short */
+"COMPASS_W_SHORT" = "O";
+
+/* West by north, long */
+"COMPASS_WbN_LONG" = "oest per nord";
+
+/* West by north, short */
+"COMPASS_WbN_SHORT" = "OpN";
+
+/* West by south, long */
+"COMPASS_WbS_LONG" = "oest per sud";
+
+/* West by south, short */
+"COMPASS_WbS_SHORT" = "OpS";
+
+/* West-northwest, long */
+"COMPASS_WNW_LONG" = "oest-nord-oest";
+
+/* West-northwest, short */
+"COMPASS_WNW_SHORT" = "ONO";
+
+/* West-southwest, long */
+"COMPASS_WSW_LONG" = "oest-sud-oest";
+
+/* West-southwest, short */
+"COMPASS_WSW_SHORT" = "OSO";
+
+/* Degrees format, long */
+"COORD_DEG_LONG" = "%d grau(s)";
+
+/* Degrees format, medium: {degrees} */
+"COORD_DEG_MEDIUM" = "%d°";
+
+/* Degrees format, short: {degrees} */
+"COORD_DEG_SHORT" = "%d°";
+
+/* Coordinate format, long: {degrees}{minutes} */
+"COORD_DM_LONG" = "%1$@ i %2$@";
+
+/* Coordinate format, medium: {degrees}{minutes} */
+"COORD_DM_MEDIUM" = "%1$@%2$@";
+
+/* Coordinate format, short: {degrees}{minutes} */
+"COORD_DM_SHORT" = "%1$@%2$@";
+
+/* Coordinate format, long: {degrees}{minutes}{seconds} */
+"COORD_DMS_LONG" = "%1$@, %2$@, i %3$@";
+
+/* Coordinate format, medium: {degrees}{minutes}{seconds} */
+"COORD_DMS_MEDIUM" = "%1$@%2$@%3$@";
+
+/* Coordinate format, short: {degrees}{minutes}{seconds} */
+"COORD_DMS_SHORT" = "%1$@%2$@%3$@";
+
+/* East longitude format, long: {longitude} */
+"COORD_E_LONG" = "%@ est";
+
+/* East longitude format, medium: {longitude} */
+"COORD_E_MEDIUM" = "%@ est";
+
+/* East longitude format, short: {longitude} */
+"COORD_E_SHORT" = "%@E";
+
+/* Coordinate pair format, long: {latitude}, {longitude} */
+"COORD_FMT_LONG" = "%1$@ per %2$@";
+
+/* Coordinate pair format, medium: {latitude}, {longitude} */
+"COORD_FMT_MEDIUM" = "%1$@, %2$@";
+
+/* Coordinate pair format, short: {latitude}, {longitude} */
+"COORD_FMT_SHORT" = "%1$@, %2$@";
+
+/* Minutes format, long */
+"COORD_MIN_LONG" = "%d minut(s)";
+
+/* Minutes format, medium: {minutes} */
+"COORD_MIN_MEDIUM" = "%d′";
+
+/* Minutes format, short: {minutes} */
+"COORD_MIN_SHORT" = "%d′";
+
+/* North latitude format, long: {latitude} */
+"COORD_N_LONG" = "%@ nord";
+
+/* North latitude format, medium: {latitude} */
+"COORD_N_MEDIUM" = "%@ nord";
+
+/* North latitude format, short: {latitude} */
+"COORD_N_SHORT" = "%@N";
+
+/* South latitude format, long: {latitude} */
+"COORD_S_LONG" = "%@ sud";
+
+/* South latitude format, medium: {latitude} */
+"COORD_S_MEDIUM" = "%@ sud";
+
+/* South latitude format, short: {latitude} */
+"COORD_S_SHORT" = "%@S";
+
+/* Seconds format, long */
+"COORD_SEC_LONG" = "%d segon(s)";
+
+/* Seconds format, medium: {seconds} */
+"COORD_SEC_MEDIUM" = "%d″";
+
+/* Seconds format, short: {seconds} */
+"COORD_SEC_SHORT" = "%d″";
+
+/* West longitude format, long: {longitude} */
+"COORD_W_LONG" = "%@ oest";
+
+/* West longitude format, medium: {longitude} */
+"COORD_W_MEDIUM" = "%@ oest";
+
+/* West longitude format, short: {longitude} */
+"COORD_W_SHORT" = "%@O";
+
diff --git a/platform/darwin/resources/ca.lproj/Foundation.stringsdict b/platform/darwin/resources/ca.lproj/Foundation.stringsdict
new file mode 100644
index 0000000000..8bacec946f
--- /dev/null
+++ b/platform/darwin/resources/ca.lproj/Foundation.stringsdict
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+ <key>COORD_DEG_LONG</key>
+ <dict>
+ <key>NSStringLocalizedFormatKey</key>
+ <string>%#@degrees@</string>
+ <key>degrees</key>
+ <dict>
+ <key>NSStringFormatSpecTypeKey</key>
+ <string>NSStringPluralRuleType</string>
+ <key>NSStringFormatValueTypeKey</key>
+ <string>d</string>
+ <key>one</key>
+ <string>%d grau</string>
+ <key>other</key>
+ <string>%d graus</string>
+ </dict>
+ </dict>
+ <key>COORD_MIN_LONG</key>
+ <dict>
+ <key>NSStringLocalizedFormatKey</key>
+ <string>%#@minutes@</string>
+ <key>minutes</key>
+ <dict>
+ <key>NSStringFormatSpecTypeKey</key>
+ <string>NSStringPluralRuleType</string>
+ <key>NSStringFormatValueTypeKey</key>
+ <string>d</string>
+ <key>one</key>
+ <string>%d minut</string>
+ <key>other</key>
+ <string>%d minuts</string>
+ </dict>
+ </dict>
+ <key>COORD_SEC_LONG</key>
+ <dict>
+ <key>NSStringLocalizedFormatKey</key>
+ <string>%#@seconds@</string>
+ <key>seconds</key>
+ <dict>
+ <key>NSStringFormatSpecTypeKey</key>
+ <string>NSStringPluralRuleType</string>
+ <key>NSStringFormatValueTypeKey</key>
+ <string>d</string>
+ <key>one</key>
+ <string>%d segon</string>
+ <key>other</key>
+ <string>%d segons</string>
+ </dict>
+ </dict>
+</dict>
+</plist>
diff --git a/platform/darwin/resources/lt.lproj/Foundation.strings b/platform/darwin/resources/lt.lproj/Foundation.strings
new file mode 100644
index 0000000000..68e7e14bda
--- /dev/null
+++ b/platform/darwin/resources/lt.lproj/Foundation.strings
@@ -0,0 +1,291 @@
+/* Clock position format, long: {hours} o’clock */
+"CLOCK_FMT_LONG" = "Laikas: %@";
+
+/* Clock position format, medium: {hours} o’clock */
+"CLOCK_FMT_MEDIUM" = "Laikas: %@";
+
+/* Clock position format, short: {hours}:00 */
+"CLOCK_FMT_SHORT" = "%@:00";
+
+/* East, long */
+"COMPASS_E_LONG" = "rytai";
+
+/* East, short */
+"COMPASS_E_SHORT" = "R";
+
+/* East by north, long */
+"COMPASS_EbN_LONG" = "rytai į šiaurę";
+
+/* East by north, short */
+"COMPASS_EbN_SHORT" = "RįŠ";
+
+/* East by south, long */
+"COMPASS_EbS_LONG" = "rytai į pietus";
+
+/* East by south, short */
+"COMPASS_EbS_SHORT" = "RįP";
+
+/* East-northeast, long */
+"COMPASS_ENE_LONG" = "rytai - šiaurės rytai";
+
+/* East-northeast, short */
+"COMPASS_ENE_SHORT" = "R-ŠR";
+
+/* East-southeast, long */
+"COMPASS_ESE_LONG" = "rytai - pietryčiai";
+
+/* East-southeast, short */
+"COMPASS_ESE_SHORT" = "R-PR";
+
+/* North, long */
+"COMPASS_N_LONG" = "šiaurė";
+
+/* North, short */
+"COMPASS_N_SHORT" = "Š";
+
+/* North by east, long */
+"COMPASS_NbE_LONG" = "šiaurė į rytus";
+
+/* North by east, short */
+"COMPASS_NbE_SHORT" = "ŠįR";
+
+/* North by west, long */
+"COMPASS_NbW_LONG" = "šiaurė į vakarus";
+
+/* North by west, short */
+"COMPASS_NbW_SHORT" = "ŠįV";
+
+/* Northeast, long */
+"COMPASS_NE_LONG" = "šiaurės rytai";
+
+/* Northeast, short */
+"COMPASS_NE_SHORT" = "ŠR";
+
+/* Northeast by east, long */
+"COMPASS_NEbE_LONG" = "šiaurės rytai į rytus";
+
+/* Northeast by east, short */
+"COMPASS_NEbE_SHORT" = "ŠRįR";
+
+/* Northeast by north, long */
+"COMPASS_NEbN_LONG" = "šiaurės rytai į šiaurę";
+
+/* Northeast by north, short */
+"COMPASS_NEbN_SHORT" = "ŠRįŠ";
+
+/* North-northeast, long */
+"COMPASS_NNE_LONG" = "šiaurė - šiaurės rytai";
+
+/* North-northeast, short */
+"COMPASS_NNE_SHORT" = "ŠŠR";
+
+/* North-northwest, long */
+"COMPASS_NNW_LONG" = "šiaurė - šiaurės vakarai";
+
+/* North-northwest, short */
+"COMPASS_NNW_SHORT" = "ŠŠV";
+
+/* Northwest, long */
+"COMPASS_NW_LONG" = "šiaurės vakarai";
+
+/* Northwest, short */
+"COMPASS_NW_SHORT" = "ŠV";
+
+/* Northwest by north, long */
+"COMPASS_NWbN_LONG" = "šiaurės vakarai į šiaurę";
+
+/* Northwest by north, short */
+"COMPASS_NWbN_SHORT" = "ŠVįŠ";
+
+/* Northwest by west, long */
+"COMPASS_NWbW_LONG" = "šiaurės vakarai į vakarus";
+
+/* Northwest by west, short */
+"COMPASS_NWbW_SHORT" = "ŠVįV";
+
+/* South, long */
+"COMPASS_S_LONG" = "pietūs";
+
+/* South, short */
+"COMPASS_S_SHORT" = "P";
+
+/* South by east, long */
+"COMPASS_SbE_LONG" = "pietūs į rytus";
+
+/* South by east, short */
+"COMPASS_SbE_SHORT" = "PįR";
+
+/* South by west, long */
+"COMPASS_SbW_LONG" = "pietūs į vakarus";
+
+/* South by west, short */
+"COMPASS_SbW_SHORT" = "PįV";
+
+/* Southeast, long */
+"COMPASS_SE_LONG" = "pietryčiai";
+
+/* Southeast, short */
+"COMPASS_SE_SHORT" = "PR";
+
+/* Southeast by east, long */
+"COMPASS_SEbE_LONG" = "pietryčiai į rytus";
+
+/* Southeast by east, short */
+"COMPASS_SEbE_SHORT" = "PRįR";
+
+/* Southeast by south, long */
+"COMPASS_SEbS_LONG" = "pietryčiai į pietus";
+
+/* Southeast by south, short */
+"COMPASS_SEbS_SHORT" = "PRįP";
+
+/* South-southeast, long */
+"COMPASS_SSE_LONG" = "pietūs - pietryčiai";
+
+/* South-southeast, short */
+"COMPASS_SSE_SHORT" = "PPR";
+
+/* South-southwest, long */
+"COMPASS_SSW_LONG" = "pietūs - pietvakariai";
+
+/* South-southwest, short */
+"COMPASS_SSW_SHORT" = "PPV";
+
+/* Southwest, long */
+"COMPASS_SW_LONG" = "pietvakariai";
+
+/* Southwest, short */
+"COMPASS_SW_SHORT" = "PV";
+
+/* Southwest by south, long */
+"COMPASS_SWbS_LONG" = "pietvakariai į pietus";
+
+/* Southwest by south, short */
+"COMPASS_SWbS_SHORT" = "PVįP";
+
+/* Southwest by west, long */
+"COMPASS_SWbW_LONG" = "pietvakariai į vakarus";
+
+/* Southwest by west, short */
+"COMPASS_SWbW_SHORT" = "PVįV";
+
+/* West, long */
+"COMPASS_W_LONG" = "vakarai";
+
+/* West, short */
+"COMPASS_W_SHORT" = "V";
+
+/* West by north, long */
+"COMPASS_WbN_LONG" = "vakarai į šiaurę";
+
+/* West by north, short */
+"COMPASS_WbN_SHORT" = "VįŠ";
+
+/* West by south, long */
+"COMPASS_WbS_LONG" = "vakarai į pietus";
+
+/* West by south, short */
+"COMPASS_WbS_SHORT" = "VįP";
+
+/* West-northwest, long */
+"COMPASS_WNW_LONG" = "vakarai - šiaurės vakarai";
+
+/* West-northwest, short */
+"COMPASS_WNW_SHORT" = "VŠV";
+
+/* West-southwest, long */
+"COMPASS_WSW_LONG" = "vakarai - pietvakariai";
+
+/* West-southwest, short */
+"COMPASS_WSW_SHORT" = "VPV";
+
+/* Degrees format, long */
+"COORD_DEG_LONG" = "%d laipsniai(-ių)";
+
+/* Degrees format, medium: {degrees} */
+"COORD_DEG_MEDIUM" = "%d°";
+
+/* Degrees format, short: {degrees} */
+"COORD_DEG_SHORT" = "%d°";
+
+/* Coordinate format, long: {degrees}{minutes} */
+"COORD_DM_LONG" = "%1$@ ir %2$@";
+
+/* Coordinate format, medium: {degrees}{minutes} */
+"COORD_DM_MEDIUM" = "%1$@%2$@";
+
+/* Coordinate format, short: {degrees}{minutes} */
+"COORD_DM_SHORT" = "%1$@%2$@";
+
+/* Coordinate format, long: {degrees}{minutes}{seconds} */
+"COORD_DMS_LONG" = "%1$@, %2$@ ir %3$@";
+
+/* Coordinate format, medium: {degrees}{minutes}{seconds} */
+"COORD_DMS_MEDIUM" = "%1$@%2$@%3$@";
+
+/* Coordinate format, short: {degrees}{minutes}{seconds} */
+"COORD_DMS_SHORT" = "%1$@%2$@%3$@";
+
+/* East longitude format, long: {longitude} */
+"COORD_E_LONG" = "%@ ritų ilgumos";
+
+/* East longitude format, medium: {longitude} */
+"COORD_E_MEDIUM" = "%@ į rytus";
+
+/* East longitude format, short: {longitude} */
+"COORD_E_SHORT" = "%@R";
+
+/* Coordinate pair format, long: {latitude}, {longitude} */
+"COORD_FMT_LONG" = "%1$@, %2$@";
+
+/* Coordinate pair format, medium: {latitude}, {longitude} */
+"COORD_FMT_MEDIUM" = "%1$@, %2$@";
+
+/* Coordinate pair format, short: {latitude}, {longitude} */
+"COORD_FMT_SHORT" = "%1$@, %2$@";
+
+/* Minutes format, long */
+"COORD_MIN_LONG" = "%d minutė(s)";
+
+/* Minutes format, medium: {minutes} */
+"COORD_MIN_MEDIUM" = "%d′";
+
+/* Minutes format, short: {minutes} */
+"COORD_MIN_SHORT" = "%d′";
+
+/* North latitude format, long: {latitude} */
+"COORD_N_LONG" = "%@ šiaurės platumos";
+
+/* North latitude format, medium: {latitude} */
+"COORD_N_MEDIUM" = "%@ į šiaurę";
+
+/* North latitude format, short: {latitude} */
+"COORD_N_SHORT" = "%@Š";
+
+/* South latitude format, long: {latitude} */
+"COORD_S_LONG" = "%@ pietų platumos";
+
+/* South latitude format, medium: {latitude} */
+"COORD_S_MEDIUM" = "%@ į pietus";
+
+/* South latitude format, short: {latitude} */
+"COORD_S_SHORT" = "%@P";
+
+/* Seconds format, long */
+"COORD_SEC_LONG" = "%d sekundės(-ių)";
+
+/* Seconds format, medium: {seconds} */
+"COORD_SEC_MEDIUM" = "%d″";
+
+/* Seconds format, short: {seconds} */
+"COORD_SEC_SHORT" = "%d″";
+
+/* West longitude format, long: {longitude} */
+"COORD_W_LONG" = "%@ vakarų ilgumos";
+
+/* West longitude format, medium: {longitude} */
+"COORD_W_MEDIUM" = "%@ į vakarus";
+
+/* West longitude format, short: {longitude} */
+"COORD_W_SHORT" = "%@V";
+
diff --git a/platform/darwin/resources/lt.lproj/Foundation.stringsdict b/platform/darwin/resources/lt.lproj/Foundation.stringsdict
new file mode 100644
index 0000000000..e3bb31838a
--- /dev/null
+++ b/platform/darwin/resources/lt.lproj/Foundation.stringsdict
@@ -0,0 +1,66 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+ <key>COORD_DEG_LONG</key>
+ <dict>
+ <key>NSStringLocalizedFormatKey</key>
+ <string>%#@degrees@</string>
+ <key>degrees</key>
+ <dict>
+ <key>NSStringFormatSpecTypeKey</key>
+ <string>NSStringPluralRuleType</string>
+ <key>NSStringFormatValueTypeKey</key>
+ <string>d</string>
+ <key>one</key>
+ <string>%d laipsniai</string>
+ <key>few</key>
+ <string>%d laipsniai</string>
+ <key>many</key>
+ <string>%d laipsniai</string>
+ <key>other</key>
+ <string>%d laipsnių</string>
+ </dict>
+ </dict>
+ <key>COORD_MIN_LONG</key>
+ <dict>
+ <key>NSStringLocalizedFormatKey</key>
+ <string>%#@minutes@</string>
+ <key>minutes</key>
+ <dict>
+ <key>NSStringFormatSpecTypeKey</key>
+ <string>NSStringPluralRuleType</string>
+ <key>NSStringFormatValueTypeKey</key>
+ <string>d</string>
+ <key>one</key>
+ <string>%d minutė</string>
+ <key>few</key>
+ <string>%d minutės</string>
+ <key>many</key>
+ <string>%d minutės</string>
+ <key>other</key>
+ <string>%d minučių</string>
+ </dict>
+ </dict>
+ <key>COORD_SEC_LONG</key>
+ <dict>
+ <key>NSStringLocalizedFormatKey</key>
+ <string>%#@seconds@</string>
+ <key>seconds</key>
+ <dict>
+ <key>NSStringFormatSpecTypeKey</key>
+ <string>NSStringPluralRuleType</string>
+ <key>NSStringFormatValueTypeKey</key>
+ <string>d</string>
+ <key>one</key>
+ <string>%d sekundė</string>
+ <key>few</key>
+ <string>%d sekundės</string>
+ <key>many</key>
+ <string>%d sekundės</string>
+ <key>other</key>
+ <string>%d sekundžių</string>
+ </dict>
+ </dict>
+</dict>
+</plist>
diff --git a/platform/darwin/resources/pl.lproj/Foundation.stringsdict b/platform/darwin/resources/pl.lproj/Foundation.stringsdict
index 016ba06b81..5a4f208562 100644
--- a/platform/darwin/resources/pl.lproj/Foundation.stringsdict
+++ b/platform/darwin/resources/pl.lproj/Foundation.stringsdict
@@ -18,6 +18,8 @@
<string>%d stopnie</string>
<key>many</key>
<string>%d stopni</string>
+ <key>other</key>
+ <string>%d stopnia</string>
</dict>
</dict>
<key>COORD_MIN_LONG</key>
@@ -36,6 +38,8 @@
<string>%d minuty</string>
<key>many</key>
<string>%d minut</string>
+ <key>other</key>
+ <string>%d minuty</string>
</dict>
</dict>
<key>COORD_SEC_LONG</key>
@@ -54,6 +58,8 @@
<string>%d sekundy</string>
<key>many</key>
<string>%d sekund</string>
+ <key>other</key>
+ <string>%d sekundy</string>
</dict>
</dict>
</dict>
diff --git a/platform/darwin/resources/ru.lproj/Foundation.stringsdict b/platform/darwin/resources/ru.lproj/Foundation.stringsdict
index b2d7467fd4..337cea0164 100644
--- a/platform/darwin/resources/ru.lproj/Foundation.stringsdict
+++ b/platform/darwin/resources/ru.lproj/Foundation.stringsdict
@@ -18,6 +18,8 @@
<string>%d градуса</string>
<key>many</key>
<string>%d градусов</string>
+ <key>other</key>
+ <string>%d градуса</string>
</dict>
</dict>
<key>COORD_MIN_LONG</key>
@@ -36,6 +38,8 @@
<string>%d минуты</string>
<key>many</key>
<string>%d минут</string>
+ <key>other</key>
+ <string>%d минуты</string>
</dict>
</dict>
<key>COORD_SEC_LONG</key>
@@ -54,6 +58,8 @@
<string>%d секунды</string>
<key>many</key>
<string>%d секунд</string>
+ <key>other</key>
+ <string>%d секунды</string>
</dict>
</dict>
</dict>
diff --git a/platform/darwin/resources/uk.lproj/Foundation.stringsdict b/platform/darwin/resources/uk.lproj/Foundation.stringsdict
index 76dbbfc5e9..f35f0516e1 100644
--- a/platform/darwin/resources/uk.lproj/Foundation.stringsdict
+++ b/platform/darwin/resources/uk.lproj/Foundation.stringsdict
@@ -18,6 +18,8 @@
<string>%d градуси</string>
<key>many</key>
<string>%d градусів</string>
+ <key>other</key>
+ <string>%d градуса</string>
</dict>
</dict>
<key>COORD_MIN_LONG</key>
@@ -31,11 +33,13 @@
<key>NSStringFormatValueTypeKey</key>
<string>d</string>
<key>one</key>
- <string>%d хвилина</string>
+ <string>%d мінута</string>
<key>few</key>
- <string>%d хвилини</string>
+ <string>%d мінути</string>
<key>many</key>
- <string>%d хвилин</string>
+ <string>%d мінут</string>
+ <key>other</key>
+ <string>%d мінути</string>
</dict>
</dict>
<key>COORD_SEC_LONG</key>
@@ -54,6 +58,8 @@
<string>%d секунди</string>
<key>many</key>
<string>%d секунд</string>
+ <key>other</key>
+ <string>%d секунди</string>
</dict>
</dict>
</dict>
diff --git a/platform/ios/CHANGELOG.md b/platform/ios/CHANGELOG.md
index 8e18b353f9..bfbb854289 100644
--- a/platform/ios/CHANGELOG.md
+++ b/platform/ios/CHANGELOG.md
@@ -15,8 +15,8 @@ Mapbox welcomes participation and contributions from everyone. Please read [CONT
* Added support for right-to-left text and Arabic ligatures in labels. ([#6984](https://github.com/mapbox/mapbox-gl-native/pull/6984), [#7123](https://github.com/mapbox/mapbox-gl-native/pull/7123))
* Improved the line wrapping behavior of point-placed labels, especially labels written in Chinese and Japanese. ([#6828](https://github.com/mapbox/mapbox-gl-native/pull/6828), [#7446](https://github.com/mapbox/mapbox-gl-native/pull/7446))
* CJK characters now remain upright in vertically oriented labels that have line placement, such as road labels. ([#7114](https://github.com/mapbox/mapbox-gl-native/issues/7114))
-* Added Chinese (Simplified and Traditional), French, German, Japanese, Lithuanian, Polish, Portuguese (Brazilian), Russian, Spanish, Swedish, Ukrainian, and Vietnamese localizations. ([#7316](https://github.com/mapbox/mapbox-gl-native/pull/7316), [#7899](https://github.com/mapbox/mapbox-gl-native/pull/7899), [#7999](https://github.com/mapbox/mapbox-gl-native/pull/7999),
-[#8113](https://github.com/mapbox/mapbox-gl-native/pull/8113))
+* Added Catalan, Chinese (Simplified and Traditional), Dutch, Finnish, French, German, Japanese, Lithuanian, Polish, Portuguese (Brazilian), Russian, Spanish, Swedish, Ukrainian, and Vietnamese localizations. ([#7316](https://github.com/mapbox/mapbox-gl-native/pull/7316), [#7899](https://github.com/mapbox/mapbox-gl-native/pull/7899), [#7999](https://github.com/mapbox/mapbox-gl-native/pull/7999),
+[#8113](https://github.com/mapbox/mapbox-gl-native/pull/8113), [#8256](https://github.com/mapbox/mapbox-gl-native/pull/8256))
### Styles
diff --git a/platform/ios/app/ca.lproj/Localizable.strings b/platform/ios/app/ca.lproj/Localizable.strings
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/platform/ios/app/ca.lproj/Localizable.strings
diff --git a/platform/ios/app/fi.lproj/Localizable.strings b/platform/ios/app/fi.lproj/Localizable.strings
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/platform/ios/app/fi.lproj/Localizable.strings
diff --git a/platform/ios/app/nl.lproj/Localizable.strings b/platform/ios/app/nl.lproj/Localizable.strings
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/platform/ios/app/nl.lproj/Localizable.strings
diff --git a/platform/ios/framework/Settings.bundle/ca.lproj/Root.strings b/platform/ios/framework/Settings.bundle/ca.lproj/Root.strings
new file mode 100644
index 0000000000..94e8335582
--- /dev/null
+++ b/platform/ios/framework/Settings.bundle/ca.lproj/Root.strings
@@ -0,0 +1,3 @@
+"TELEMETRY_GROUP_TITLE" = "Configuració de privacitat";
+"TELEMETRY_SWITCH_TITLE" = "Telemetria Mapbox";
+"TELEMETRY_GROUP_FOOTER" = "Aquest ajust permet que l’aplicació comparteixi dades anònimes de localització i ús amb Mapbox.";
diff --git a/platform/ios/framework/Settings.bundle/fi.lproj/Root.strings b/platform/ios/framework/Settings.bundle/fi.lproj/Root.strings
new file mode 100644
index 0000000000..e0c2e50d09
--- /dev/null
+++ b/platform/ios/framework/Settings.bundle/fi.lproj/Root.strings
@@ -0,0 +1,3 @@
+"TELEMETRY_GROUP_TITLE" = "Yksityisyysasetukset";
+"TELEMETRY_SWITCH_TITLE" = "Mapbox-telemetria";
+"TELEMETRY_GROUP_FOOTER" = "Tämä asetus antaa sovellukselle luvan jakaa anonymisoituja sijainti- ja käyttötietoja Mapboxille.";
diff --git a/platform/ios/framework/Settings.bundle/nl.lproj/Root.strings b/platform/ios/framework/Settings.bundle/nl.lproj/Root.strings
new file mode 100644
index 0000000000..ea73b0ba3c
--- /dev/null
+++ b/platform/ios/framework/Settings.bundle/nl.lproj/Root.strings
@@ -0,0 +1,3 @@
+"TELEMETRY_GROUP_TITLE" = "Privacy Instellingen";
+"TELEMETRY_SWITCH_TITLE" = "Mapbox Telemetrie";
+"TELEMETRY_GROUP_FOOTER" = "Deze instelling laat toe om anonieme locatie en gebruiksgegevens te delen met Mapbox.";
diff --git a/platform/ios/ios.xcodeproj/project.pbxproj b/platform/ios/ios.xcodeproj/project.pbxproj
index 3256e304af..bb69a3761e 100644
--- a/platform/ios/ios.xcodeproj/project.pbxproj
+++ b/platform/ios/ios.xcodeproj/project.pbxproj
@@ -717,6 +717,17 @@
DA4A26961CB6E795000B7809 /* Mapbox.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = Mapbox.framework; sourceTree = BUILT_PRODUCTS_DIR; };
DA6023F11E4CE94300DBFF23 /* sv */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = sv; path = sv.lproj/Foundation.strings; sourceTree = "<group>"; };
DA6023F21E4CE94800DBFF23 /* sv */ = {isa = PBXFileReference; lastKnownFileType = text.plist.stringsdict; name = sv; path = sv.lproj/Foundation.stringsdict; sourceTree = "<group>"; };
+ DA618B111E68823600CB7F44 /* ru */ = {isa = PBXFileReference; lastKnownFileType = text.plist.stringsdict; name = ru; path = ru.lproj/Localizable.stringsdict; sourceTree = "<group>"; };
+ DA618B191E68883700CB7F44 /* ca */ = {isa = PBXFileReference; lastKnownFileType = text.plist.stringsdict; name = ca; path = ca.lproj/Localizable.stringsdict; sourceTree = "<group>"; };
+ DA618B1A1E68883900CB7F44 /* ca */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ca; path = ca.lproj/Localizable.strings; sourceTree = "<group>"; };
+ DA618B1B1E68884E00CB7F44 /* ca */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ca; path = ca.lproj/Localizable.strings; sourceTree = "<group>"; };
+ DA618B1C1E6888EC00CB7F44 /* ca */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ca; path = ca.lproj/Foundation.strings; sourceTree = "<group>"; };
+ DA618B1D1E6888F500CB7F44 /* ca */ = {isa = PBXFileReference; lastKnownFileType = text.plist.stringsdict; name = ca; path = ca.lproj/Foundation.stringsdict; sourceTree = "<group>"; };
+ DA618B1E1E688A3700CB7F44 /* ca */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ca; path = ca.lproj/Root.strings; sourceTree = "<group>"; };
+ DA618B251E68920500CB7F44 /* lt */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = lt; path = lt.lproj/Foundation.strings; sourceTree = "<group>"; };
+ DA618B261E68920D00CB7F44 /* lt */ = {isa = PBXFileReference; lastKnownFileType = text.plist.stringsdict; name = lt; path = lt.lproj/Foundation.stringsdict; sourceTree = "<group>"; };
+ DA618B2B1E68932D00CB7F44 /* fi */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fi; path = fi.lproj/Localizable.strings; sourceTree = "<group>"; };
+ DA618B2C1E68933600CB7F44 /* fi */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fi; path = fi.lproj/Root.strings; sourceTree = "<group>"; };
DA6408D91DA4E7D300908C90 /* MGLVectorStyleLayer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MGLVectorStyleLayer.h; sourceTree = "<group>"; };
DA6408DA1DA4E7D300908C90 /* MGLVectorStyleLayer.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MGLVectorStyleLayer.m; sourceTree = "<group>"; };
DA7262091DEEE3480043BB89 /* MGLOpenGLStyleLayer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MGLOpenGLStyleLayer.h; sourceTree = "<group>"; };
@@ -728,7 +739,7 @@
DA737AE11E59157600AD2CDE /* pl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = pl; path = pl.lproj/Root.strings; sourceTree = "<group>"; };
DA737AE51E5916D400AD2CDE /* ru */ = {isa = PBXFileReference; lastKnownFileType = text.plist.stringsdict; name = ru; path = ru.lproj/Foundation.stringsdict; sourceTree = "<group>"; };
DA737AE61E59171700AD2CDE /* ru */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = ru; path = ru.lproj/Root.strings; sourceTree = "<group>"; };
- DA737AE71E59172C00AD2CDE /* ru */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ru; path = ru.lproj/Localizable.strings; sourceTree = "<group>"; };
+ DA737AE71E59172C00AD2CDE /* ru */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = ru; path = ru.lproj/Localizable.strings; sourceTree = "<group>"; };
DA737AE91E5917C300AD2CDE /* uk */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = uk; path = uk.lproj/Localizable.strings; sourceTree = "<group>"; };
DA737AEA1E5917EF00AD2CDE /* uk */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = uk; path = uk.lproj/Root.strings; sourceTree = "<group>"; };
DA737EE01D056A4E005BDA16 /* MGLMapViewDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MGLMapViewDelegate.h; sourceTree = "<group>"; };
@@ -873,6 +884,8 @@
DAD165761CF4CDFF001FF4B9 /* MGLShapeCollection.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MGLShapeCollection.h; sourceTree = "<group>"; };
DAD165771CF4CDFF001FF4B9 /* MGLShapeCollection.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MGLShapeCollection.mm; sourceTree = "<group>"; };
DAE7DEC11E245455007505A6 /* MGLNSStringAdditionsTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = MGLNSStringAdditionsTests.m; path = ../../darwin/test/MGLNSStringAdditionsTests.m; sourceTree = "<group>"; };
+ DAE8CCAD1E6E8C70009B5CB0 /* nl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = nl; path = nl.lproj/Localizable.strings; sourceTree = "<group>"; };
+ DAE8CCAE1E6E8C76009B5CB0 /* nl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = nl; path = nl.lproj/Root.strings; sourceTree = "<group>"; };
DAED38611D62D0FC00D7640F /* NSURL+MGLAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSURL+MGLAdditions.h"; sourceTree = "<group>"; };
DAED38621D62D0FC00D7640F /* NSURL+MGLAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSURL+MGLAdditions.m"; sourceTree = "<group>"; };
DAEDC4331D603417000224FF /* MGLAttributionInfoTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = MGLAttributionInfoTests.m; path = ../../darwin/test/MGLAttributionInfoTests.m; sourceTree = "<group>"; };
@@ -1925,6 +1938,9 @@
ru,
uk,
lt,
+ ca,
+ fi,
+ nl,
);
mainGroup = DA1DC9411CB6C1C2006E619F;
productRefGroup = DA1DC94B1CB6C1C2006E619F /* Products */;
@@ -2317,6 +2333,9 @@
9660916D1E5BBFDB00A9A03B /* ru */,
9660916E1E5BBFDC00A9A03B /* uk */,
9660916F1E5BBFDE00A9A03B /* lt */,
+ DA618B1A1E68883900CB7F44 /* ca */,
+ DA618B2B1E68932D00CB7F44 /* fi */,
+ DAE8CCAD1E6E8C70009B5CB0 /* nl */,
);
name = Localizable.strings;
sourceTree = "<group>";
@@ -2337,6 +2356,9 @@
DA737AE61E59171700AD2CDE /* ru */,
DA737AEA1E5917EF00AD2CDE /* uk */,
DA1AC01C1E5B87EC006DF1D6 /* lt */,
+ DA618B1E1E688A3700CB7F44 /* ca */,
+ DA618B2C1E68933600CB7F44 /* fi */,
+ DAE8CCAE1E6E8C76009B5CB0 /* nl */,
);
name = Root.strings;
sourceTree = "<group>";
@@ -2357,6 +2379,7 @@
DA737AE71E59172C00AD2CDE /* ru */,
DA737AE91E5917C300AD2CDE /* uk */,
DA1AC01B1E5B8774006DF1D6 /* lt */,
+ DA618B1B1E68884E00CB7F44 /* ca */,
);
name = Localizable.strings;
sourceTree = "<group>";
@@ -2371,6 +2394,8 @@
DAA32CB51E4C4CF4006F8D24 /* ja */,
DAA32CBD1E4C4F62006F8D24 /* vi */,
DA6023F11E4CE94300DBFF23 /* sv */,
+ DA618B1C1E6888EC00CB7F44 /* ca */,
+ DA618B251E68920500CB7F44 /* lt */,
);
name = Foundation.strings;
sourceTree = "<group>";
@@ -2387,6 +2412,8 @@
DA737AE01E59150A00AD2CDE /* pl */,
DA737AE51E5916D400AD2CDE /* ru */,
DA1AC0201E5B8917006DF1D6 /* uk */,
+ DA618B1D1E6888F500CB7F44 /* ca */,
+ DA618B261E68920D00CB7F44 /* lt */,
);
name = Foundation.stringsdict;
sourceTree = "<group>";
@@ -2406,6 +2433,8 @@
DAA32CA21E4C44DD006F8D24 /* de */,
DAA32CA91E4C4919006F8D24 /* fr */,
DA9C012B1E4C7AD900C4742A /* pt-BR */,
+ DA618B111E68823600CB7F44 /* ru */,
+ DA618B191E68883700CB7F44 /* ca */,
);
name = Localizable.stringsdict;
sourceTree = "<group>";
diff --git a/platform/ios/resources/ca.lproj/Localizable.strings b/platform/ios/resources/ca.lproj/Localizable.strings
new file mode 100644
index 0000000000..aec7226e6b
--- /dev/null
+++ b/platform/ios/resources/ca.lproj/Localizable.strings
@@ -0,0 +1,75 @@
+/* Accessibility hint */
+"ANNOTATION_A11Y_HINT" = "Mostra més informació";
+
+/* No comment provided by engineer. */
+"API_CLIENT_400_DESC" = "La tasca de dades de la sessió ha fallat. La petició original era: %@";
+
+/* No comment provided by engineer. */
+"API_CLIENT_400_REASON" = "El codi d’estat era %ld";
+
+/* No comment provided by engineer. */
+"CANCEL" = "Cancel·lar";
+
+/* Accessibility hint */
+"COMPASS_A11Y_HINT" = "Orienta el mapa amb rumb nord";
+
+/* Accessibility label */
+"COMPASS_A11Y_LABEL" = "Brúixola";
+
+/* Compass abbreviation for north */
+"COMPASS_NORTH" = "N";
+
+/* Instructions in Interface Builder designable; {key}, {plist file name} */
+"DESIGNABLE" = "Per mostrar aquí un mapa allotjat a Mapbox posa %1$@ al teu token d’accés a %2$@\n\nPer obtenir instruccions detallades, consulteu:";
+
+/* Setup documentation URL display string; keep as short as possible */
+"FIRST_STEPS_URL" = "mapbox.com/help/first-steps-ios-sdk";
+
+/* Accessibility hint */
+"INFO_A11Y_HINT" = "Mostra els crèdits, el formulari de contacte i més";
+
+/* Accessibility label */
+"INFO_A11Y_LABEL" = "Sobre aquest mapa";
+
+/* Accessibility label */
+"LOGO_A11Y_LABEL" = "Mapbox";
+
+/* Accessibility label */
+"MAP_A11Y_LABEL" = "Mapa";
+
+/* Map accessibility value */
+"MAP_A11Y_VALUE" = "Zoom %1$dx\n%2$ld anotació (ns) visibles";
+
+/* Action sheet title */
+"SDK_NAME" = "Mapbox iOS SDK";
+
+/* Telemetry prompt message */
+"TELEMETRY_DISABLED_MSG" = "Pots ajudar a millorar els mapes d’OpenStreetMap i de Mapbox aportant dades d’ús anònimes.";
+
+/* Telemetry prompt button */
+"TELEMETRY_DISABLED_OFF" = "No vull participar";
+
+/* Telemetry prompt button */
+"TELEMETRY_DISABLED_ON" = "Participar";
+
+/* Telemetry prompt message */
+"TELEMETRY_ENABLED_MSG" = "Estàs ajudant a millorar els mapes d’OpenStreetMap i de Mapbox aportant dades d’ús anònimes.";
+
+/* Telemetry prompt button */
+"TELEMETRY_ENABLED_OFF" = "Aturar la participació";
+
+/* Telemetry prompt button */
+"TELEMETRY_ENABLED_ON" = "Continuar la participació";
+
+/* Telemetry prompt button */
+"TELEMETRY_MORE" = "Vull saber-ne més";
+
+/* Action in attribution sheet */
+"TELEMETRY_NAME" = "Telemetria de Mapbox";
+
+/* Telemetry prompt title */
+"TELEMETRY_TITLE" = "Millora els mapes de Mapbox";
+
+/* Default user location annotation title */
+"USER_DOT_TITLE" = "Ets aquí";
+
diff --git a/platform/ios/resources/ca.lproj/Localizable.stringsdict b/platform/ios/resources/ca.lproj/Localizable.stringsdict
new file mode 100644
index 0000000000..85a839d870
--- /dev/null
+++ b/platform/ios/resources/ca.lproj/Localizable.stringsdict
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+ <key>MAP_A11Y_VALUE</key>
+ <dict>
+ <key>NSStringLocalizedFormatKey</key>
+ <string>Zoom %dx
+%#@count@ visible</string>
+ <key>count</key>
+ <dict>
+ <key>NSStringFormatSpecTypeKey</key>
+ <string>NSStringPluralRuleType</string>
+ <key>NSStringFormatValueTypeKey</key>
+ <string>ld</string>
+ <key>one</key>
+ <string>%d anotació</string>
+ <key>other</key>
+ <string>%d anotacions</string>
+ </dict>
+ </dict>
+</dict>
+</plist>
diff --git a/platform/ios/resources/ru.lproj/Localizable.strings b/platform/ios/resources/ru.lproj/Localizable.strings
index c895e34cee..1c3b46f057 100644
--- a/platform/ios/resources/ru.lproj/Localizable.strings
+++ b/platform/ios/resources/ru.lproj/Localizable.strings
@@ -20,7 +20,7 @@
"COMPASS_NORTH" = "N";
/* Instructions in Interface Builder designable; {key}, {plist file name} */
-"DESIGNABLE" = "To display a Mapbox-hosted map here, set %1$@ to your access token in %2$@\n\nFor detailed instructions, see:";
+"DESIGNABLE" = "Для отображения здесь карт Mapbox задайте %1$@ к вашему токену доступа в %2$@\n\nПодробные инструкции см.:";
/* Setup documentation URL display string; keep as short as possible */
"FIRST_STEPS_URL" = "mapbox.com/help/first-steps-ios-sdk";
@@ -38,13 +38,13 @@
"MAP_A11Y_LABEL" = "Карта";
/* Map accessibility value */
-"MAP_A11Y_VALUE" = "Zoom %1$dx\n%2$ld annotation(s) visible";
+"MAP_A11Y_VALUE" = "Масштаб %1$dx\n%2$ld аннотации(й) видны";
/* Action sheet title */
"SDK_NAME" = "Mapbox iOS SDK";
/* Telemetry prompt message */
-"TELEMETRY_DISABLED_MSG" = "You can help make OpenStreetMap and Mapbox maps better by contributing anonymous usage data.";
+"TELEMETRY_DISABLED_MSG" = "Вы можете помочь сделать карты OpenStreetMap и Mapbox лучше путем предоставления анонимных данных об использовании.";
/* Telemetry prompt button */
"TELEMETRY_DISABLED_OFF" = "Не участвовать";
@@ -53,7 +53,7 @@
"TELEMETRY_DISABLED_ON" = "Участвовать";
/* Telemetry prompt message */
-"TELEMETRY_ENABLED_MSG" = "You are helping to make OpenStreetMap and Mapbox maps better by contributing anonymous usage data.";
+"TELEMETRY_ENABLED_MSG" = "Вы помогаете сделать карты OpenStreetMap и Mapbox лучше путем предоставления анонимных данных об использовании.";
/* Telemetry prompt button */
"TELEMETRY_ENABLED_OFF" = "Прекратить участие";
diff --git a/platform/ios/resources/ru.lproj/Localizable.stringsdict b/platform/ios/resources/ru.lproj/Localizable.stringsdict
new file mode 100644
index 0000000000..49f9cc4621
--- /dev/null
+++ b/platform/ios/resources/ru.lproj/Localizable.stringsdict
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+ <key>MAP_A11Y_VALUE</key>
+ <dict>
+ <key>NSStringLocalizedFormatKey</key>
+ <string>Zoom %dx
+%#@count@ visible</string>
+ <key>count</key>
+ <dict>
+ <key>NSStringFormatSpecTypeKey</key>
+ <string>NSStringPluralRuleType</string>
+ <key>NSStringFormatValueTypeKey</key>
+ <string>ld</string>
+ <key>one</key>
+ <string>%d аннотация</string>
+ <key>few</key>
+ <string>%d аннотации</string>
+ <key>many</key>
+ <string>%d аннотаций</string>
+ <key>other</key>
+ <string>%d аннотации</string>
+ </dict>
+ </dict>
+</dict>
+</plist>
diff --git a/platform/macos/CHANGELOG.md b/platform/macos/CHANGELOG.md
index 76efbc2a0d..b809ef9a24 100644
--- a/platform/macos/CHANGELOG.md
+++ b/platform/macos/CHANGELOG.md
@@ -7,8 +7,8 @@
* Added support for right-to-left text and Arabic ligatures in labels. ([#6984](https://github.com/mapbox/mapbox-gl-native/pull/6984), [#7123](https://github.com/mapbox/mapbox-gl-native/pull/7123))
* Improved the line wrapping behavior of point-placed labels, especially labels written in Chinese and Japanese. ([#6828](https://github.com/mapbox/mapbox-gl-native/pull/6828), [#7446](https://github.com/mapbox/mapbox-gl-native/pull/7446))
* CJK characters now remain upright in vertically oriented labels that have line placement, such as road labels. ([#7114](https://github.com/mapbox/mapbox-gl-native/issues/7114))
-* Added Chinese (Simplified and Traditional), French, German, Japanese, Lithuanian, Polish, Portuguese (Brazilian), Spanish, Swedish, Ukrainian, and Vietnamese localizations. ([#7316](https://github.com/mapbox/mapbox-gl-native/pull/7316), [#7503](https://github.com/mapbox/mapbox-gl-native/pull/7503), [#7899](https://github.com/mapbox/mapbox-gl-native/pull/7899), [#7999](https://github.com/mapbox/mapbox-gl-native/pull/7999),
-[#8113](https://github.com/mapbox/mapbox-gl-native/pull/8113))
+* Added Catalan, Chinese (Simplified and Traditional), Dutch, Finnish, French, German, Japanese, Lithuanian, Polish, Portuguese (Brazilian), Spanish, Swedish, Ukrainian, and Vietnamese localizations. ([#7316](https://github.com/mapbox/mapbox-gl-native/pull/7316), [#7503](https://github.com/mapbox/mapbox-gl-native/pull/7503), [#7899](https://github.com/mapbox/mapbox-gl-native/pull/7899), [#7999](https://github.com/mapbox/mapbox-gl-native/pull/7999),
+[#8113](https://github.com/mapbox/mapbox-gl-native/pull/8113), [#8256](https://github.com/mapbox/mapbox-gl-native/pull/8256))
### Styles
diff --git a/platform/macos/app/ca.lproj/Localizable.strings b/platform/macos/app/ca.lproj/Localizable.strings
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/platform/macos/app/ca.lproj/Localizable.strings
diff --git a/platform/macos/app/fi.lproj/Localizable.strings b/platform/macos/app/fi.lproj/Localizable.strings
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/platform/macos/app/fi.lproj/Localizable.strings
diff --git a/platform/macos/app/nl.lproj/Localizable.strings b/platform/macos/app/nl.lproj/Localizable.strings
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/platform/macos/app/nl.lproj/Localizable.strings
diff --git a/platform/macos/app/ru.lproj/Localizable.strings b/platform/macos/app/ru.lproj/Localizable.strings
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/platform/macos/app/ru.lproj/Localizable.strings
diff --git a/platform/macos/macos.xcodeproj/project.pbxproj b/platform/macos/macos.xcodeproj/project.pbxproj
index 47647eba25..d76a225edb 100644
--- a/platform/macos/macos.xcodeproj/project.pbxproj
+++ b/platform/macos/macos.xcodeproj/project.pbxproj
@@ -372,6 +372,16 @@
DA5589761D320C41006B7F64 /* wms.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = wms.json; sourceTree = "<group>"; };
DA6023EF1E4CE8E500DBFF23 /* sv */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = sv; path = sv.lproj/Foundation.strings; sourceTree = "<group>"; };
DA6023F01E4CE8FF00DBFF23 /* sv */ = {isa = PBXFileReference; lastKnownFileType = text.plist.stringsdict; name = sv; path = sv.lproj/Foundation.stringsdict; sourceTree = "<group>"; };
+ DA618B131E68850300CB7F44 /* ru */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ru; path = ru.lproj/Localizable.strings; sourceTree = "<group>"; };
+ DA618B141E68852C00CB7F44 /* ru */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ru; path = ru.lproj/Localizable.strings; sourceTree = "<group>"; };
+ DA618B151E6886DF00CB7F44 /* ca */ = {isa = PBXFileReference; lastKnownFileType = text.plist.stringsdict; name = ca; path = ca.lproj/Foundation.stringsdict; sourceTree = "<group>"; };
+ DA618B161E6886E000CB7F44 /* ca */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ca; path = ca.lproj/Localizable.strings; sourceTree = "<group>"; };
+ DA618B171E68876C00CB7F44 /* ca */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ca; path = ca.lproj/Foundation.strings; sourceTree = "<group>"; };
+ DA618B181E6887C600CB7F44 /* ca */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ca; path = ca.lproj/Localizable.strings; sourceTree = "<group>"; };
+ DA618B231E6891ED00CB7F44 /* lt */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = lt; path = lt.lproj/Foundation.strings; sourceTree = "<group>"; };
+ DA618B241E6891F300CB7F44 /* lt */ = {isa = PBXFileReference; lastKnownFileType = text.plist.stringsdict; name = lt; path = lt.lproj/Foundation.stringsdict; sourceTree = "<group>"; };
+ DA618B271E68926E00CB7F44 /* fi */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fi; path = fi.lproj/Localizable.strings; sourceTree = "<group>"; };
+ DA618B2A1E6892B500CB7F44 /* fi */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fi; path = fi.lproj/Localizable.strings; sourceTree = "<group>"; };
DA6408D51DA4E5DA00908C90 /* MGLVectorStyleLayer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MGLVectorStyleLayer.h; sourceTree = "<group>"; };
DA6408D61DA4E5DA00908C90 /* MGLVectorStyleLayer.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MGLVectorStyleLayer.m; sourceTree = "<group>"; };
DA7262051DEEDD460043BB89 /* MGLOpenGLStyleLayer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MGLOpenGLStyleLayer.h; sourceTree = "<group>"; };
@@ -531,6 +541,9 @@
DAE6C3CA1CC34BD800DB3429 /* MGLOfflineRegionTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = MGLOfflineRegionTests.m; path = ../../darwin/test/MGLOfflineRegionTests.m; sourceTree = "<group>"; };
DAE6C3CC1CC34BD800DB3429 /* MGLStyleTests.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = MGLStyleTests.mm; path = ../../darwin/test/MGLStyleTests.mm; sourceTree = "<group>"; };
DAE7DEC31E24549F007505A6 /* MGLNSStringAdditionsTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = MGLNSStringAdditionsTests.m; path = ../../darwin/test/MGLNSStringAdditionsTests.m; sourceTree = "<group>"; };
+ DAE8CCAA1E6E8605009B5CB0 /* ru */ = {isa = PBXFileReference; lastKnownFileType = text.plist.stringsdict; name = ru; path = ru.lproj/Foundation.stringsdict; sourceTree = "<group>"; };
+ DAE8CCAB1E6E8B72009B5CB0 /* nl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = nl; path = nl.lproj/Localizable.strings; sourceTree = "<group>"; };
+ DAE8CCAC1E6E8B8D009B5CB0 /* nl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = nl; path = nl.lproj/Localizable.strings; sourceTree = "<group>"; };
DAED385D1D62CED700D7640F /* NSURL+MGLAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSURL+MGLAdditions.h"; sourceTree = "<group>"; };
DAED385E1D62CED700D7640F /* NSURL+MGLAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSURL+MGLAdditions.m"; sourceTree = "<group>"; };
DAEDC4311D6033F1000224FF /* MGLAttributionInfoTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = MGLAttributionInfoTests.m; path = ../../darwin/test/MGLAttributionInfoTests.m; sourceTree = "<group>"; };
@@ -1250,6 +1263,10 @@
pl,
uk,
lt,
+ ru,
+ ca,
+ fi,
+ nl,
);
mainGroup = DA839E891CC2E3400062CAFB;
productRefGroup = DA839E931CC2E3400062CAFB /* Products */;
@@ -1462,6 +1479,10 @@
966091711E5BBFF900A9A03B /* pl */,
966091721E5BBFFA00A9A03B /* uk */,
966091731E5BBFFA00A9A03B /* lt */,
+ DA618B131E68850300CB7F44 /* ru */,
+ DA618B161E6886E000CB7F44 /* ca */,
+ DA618B271E68926E00CB7F44 /* fi */,
+ DAE8CCAB1E6E8B72009B5CB0 /* nl */,
);
name = Localizable.strings;
sourceTree = "<group>";
@@ -1506,6 +1527,10 @@
DA737AE41E5915B000AD2CDE /* pl */,
DA737AEC1E59180E00AD2CDE /* uk */,
DA1AC01E1E5B8826006DF1D6 /* lt */,
+ DA618B141E68852C00CB7F44 /* ru */,
+ DA618B181E6887C600CB7F44 /* ca */,
+ DA618B2A1E6892B500CB7F44 /* fi */,
+ DAE8CCAC1E6E8B8D009B5CB0 /* nl */,
);
name = Localizable.strings;
sourceTree = "<group>";
@@ -1520,6 +1545,8 @@
DAA32CB21E4C4CB7006F8D24 /* ja */,
DAA32CC01E4C4F89006F8D24 /* vi */,
DA6023EF1E4CE8E500DBFF23 /* sv */,
+ DA618B171E68876C00CB7F44 /* ca */,
+ DA618B231E6891ED00CB7F44 /* lt */,
);
name = Foundation.strings;
sourceTree = "<group>";
@@ -1535,6 +1562,9 @@
DA737ADE1E5914AD00AD2CDE /* es */,
DA737AE31E5915A500AD2CDE /* pl */,
DA1AC01F1E5B8904006DF1D6 /* uk */,
+ DAE8CCAA1E6E8605009B5CB0 /* ru */,
+ DA618B151E6886DF00CB7F44 /* ca */,
+ DA618B241E6891F300CB7F44 /* lt */,
);
name = Foundation.stringsdict;
sourceTree = "<group>";
diff --git a/platform/macos/sdk/ca.lproj/Localizable.strings b/platform/macos/sdk/ca.lproj/Localizable.strings
new file mode 100644
index 0000000000..b679fa0459
--- /dev/null
+++ b/platform/macos/sdk/ca.lproj/Localizable.strings
@@ -0,0 +1,15 @@
+/* Accessibility title */
+"MAP_A11Y_TITLE" = "Mapbox";
+
+/* Label of Zoom In button */
+"ZOOM_IN_LABEL" = "+";
+
+/* Tooltip of Zoom In button */
+"ZOOM_IN_TOOLTIP" = "Apropar";
+
+/* Label of Zoom Out button; U+2212 MINUS SIGN */
+"ZOOM_OUT_LABEL" = "−";
+
+/* Tooltip of Zoom Out button */
+"ZOOM_OUT_TOOLTIP" = "Allunyar";
+
diff --git a/platform/macos/sdk/fi.lproj/Localizable.strings b/platform/macos/sdk/fi.lproj/Localizable.strings
new file mode 100644
index 0000000000..071cc3558b
--- /dev/null
+++ b/platform/macos/sdk/fi.lproj/Localizable.strings
@@ -0,0 +1,15 @@
+/* Accessibility title */
+"MAP_A11Y_TITLE" = "Mapbox";
+
+/* Label of Zoom In button */
+"ZOOM_IN_LABEL" = "+";
+
+/* Tooltip of Zoom In button */
+"ZOOM_IN_TOOLTIP" = "Lähennä";
+
+/* Label of Zoom Out button; U+2212 MINUS SIGN */
+"ZOOM_OUT_LABEL" = "−";
+
+/* Tooltip of Zoom Out button */
+"ZOOM_OUT_TOOLTIP" = "Loitonna";
+
diff --git a/platform/macos/sdk/nl.lproj/Localizable.strings b/platform/macos/sdk/nl.lproj/Localizable.strings
new file mode 100644
index 0000000000..8e7b0ae45f
--- /dev/null
+++ b/platform/macos/sdk/nl.lproj/Localizable.strings
@@ -0,0 +1,15 @@
+/* Accessibility title */
+"MAP_A11Y_TITLE" = "Mapbox";
+
+/* Label of Zoom In button */
+"ZOOM_IN_LABEL" = "+";
+
+/* Tooltip of Zoom In button */
+"ZOOM_IN_TOOLTIP" = "Inzoomen";
+
+/* Label of Zoom Out button; U+2212 MINUS SIGN */
+"ZOOM_OUT_LABEL" = "−";
+
+/* Tooltip of Zoom Out button */
+"ZOOM_OUT_TOOLTIP" = "Uitzoomen";
+
diff --git a/platform/macos/sdk/ru.lproj/Localizable.strings b/platform/macos/sdk/ru.lproj/Localizable.strings
new file mode 100644
index 0000000000..4fa1104cc7
--- /dev/null
+++ b/platform/macos/sdk/ru.lproj/Localizable.strings
@@ -0,0 +1,15 @@
+/* Accessibility title */
+"MAP_A11Y_TITLE" = "Mapbox";
+
+/* Label of Zoom In button */
+"ZOOM_IN_LABEL" = "+";
+
+/* Tooltip of Zoom In button */
+"ZOOM_IN_TOOLTIP" = "Приблизить";
+
+/* Label of Zoom Out button; U+2212 MINUS SIGN */
+"ZOOM_OUT_LABEL" = "−";
+
+/* Tooltip of Zoom Out button */
+"ZOOM_OUT_TOOLTIP" = "Отдалить";
+