Compare commits

...

5 Commits

Author SHA1 Message Date
github-actions
c85cfcf3e6 Auto commit for release 'develop' on 2024-06-10 2024-06-10 05:09:13 +02:00
github-actions
a28b990cd1 Auto commit for release 'develop' on 2024-06-06 2024-06-06 05:09:02 +02:00
github-actions
452e9cb953 Auto commit for release 'develop' on 2024-06-03 2024-06-03 05:09:54 +02:00
James Cole
a64f137b39 Fix missing locales files. 2024-06-02 07:29:41 +02:00
James Cole
c067d6aab0 Catch division by zero 2024-06-01 05:36:21 +02:00
39 changed files with 1255 additions and 761 deletions

View File

@@ -1248,16 +1248,16 @@
},
{
"name": "symfony/console",
"version": "v7.0.7",
"version": "v7.1.1",
"source": {
"type": "git",
"url": "https://github.com/symfony/console.git",
"reference": "c981e0e9380ce9f146416bde3150c79197ce9986"
"reference": "9b008f2d7b21c74ef4d0c3de6077a642bc55ece3"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/console/zipball/c981e0e9380ce9f146416bde3150c79197ce9986",
"reference": "c981e0e9380ce9f146416bde3150c79197ce9986",
"url": "https://api.github.com/repos/symfony/console/zipball/9b008f2d7b21c74ef4d0c3de6077a642bc55ece3",
"reference": "9b008f2d7b21c74ef4d0c3de6077a642bc55ece3",
"shasum": ""
},
"require": {
@@ -1321,7 +1321,7 @@
"terminal"
],
"support": {
"source": "https://github.com/symfony/console/tree/v7.0.7"
"source": "https://github.com/symfony/console/tree/v7.1.1"
},
"funding": [
{
@@ -1337,7 +1337,7 @@
"type": "tidelift"
}
],
"time": "2024-04-18T09:29:19+00:00"
"time": "2024-05-31T14:57:53+00:00"
},
{
"name": "symfony/deprecation-contracts",
@@ -1408,16 +1408,16 @@
},
{
"name": "symfony/event-dispatcher",
"version": "v7.0.7",
"version": "v7.1.1",
"source": {
"type": "git",
"url": "https://github.com/symfony/event-dispatcher.git",
"reference": "db2a7fab994d67d92356bb39c367db115d9d30f9"
"reference": "9fa7f7a21beb22a39a8f3f28618b29e50d7a55a7"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/db2a7fab994d67d92356bb39c367db115d9d30f9",
"reference": "db2a7fab994d67d92356bb39c367db115d9d30f9",
"url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/9fa7f7a21beb22a39a8f3f28618b29e50d7a55a7",
"reference": "9fa7f7a21beb22a39a8f3f28618b29e50d7a55a7",
"shasum": ""
},
"require": {
@@ -1468,7 +1468,7 @@
"description": "Provides tools that allow your application components to communicate with each other by dispatching events and listening to them",
"homepage": "https://symfony.com",
"support": {
"source": "https://github.com/symfony/event-dispatcher/tree/v7.0.7"
"source": "https://github.com/symfony/event-dispatcher/tree/v7.1.1"
},
"funding": [
{
@@ -1484,7 +1484,7 @@
"type": "tidelift"
}
],
"time": "2024-04-18T09:29:19+00:00"
"time": "2024-05-31T14:57:53+00:00"
},
{
"name": "symfony/event-dispatcher-contracts",
@@ -1564,22 +1564,24 @@
},
{
"name": "symfony/filesystem",
"version": "v7.0.7",
"version": "v7.1.1",
"source": {
"type": "git",
"url": "https://github.com/symfony/filesystem.git",
"reference": "cc168be6fbdcdf3401f50ae863ee3818ed4338f5"
"reference": "802e87002f919296c9f606457d9fa327a0b3d6b2"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/filesystem/zipball/cc168be6fbdcdf3401f50ae863ee3818ed4338f5",
"reference": "cc168be6fbdcdf3401f50ae863ee3818ed4338f5",
"url": "https://api.github.com/repos/symfony/filesystem/zipball/802e87002f919296c9f606457d9fa327a0b3d6b2",
"reference": "802e87002f919296c9f606457d9fa327a0b3d6b2",
"shasum": ""
},
"require": {
"php": ">=8.2",
"symfony/polyfill-ctype": "~1.8",
"symfony/polyfill-mbstring": "~1.8",
"symfony/polyfill-mbstring": "~1.8"
},
"require-dev": {
"symfony/process": "^6.4|^7.0"
},
"type": "library",
@@ -1608,7 +1610,7 @@
"description": "Provides basic utilities for the filesystem",
"homepage": "https://symfony.com",
"support": {
"source": "https://github.com/symfony/filesystem/tree/v7.0.7"
"source": "https://github.com/symfony/filesystem/tree/v7.1.1"
},
"funding": [
{
@@ -1624,20 +1626,20 @@
"type": "tidelift"
}
],
"time": "2024-04-18T09:29:19+00:00"
"time": "2024-05-31T14:57:53+00:00"
},
{
"name": "symfony/finder",
"version": "v7.0.7",
"version": "v7.1.1",
"source": {
"type": "git",
"url": "https://github.com/symfony/finder.git",
"reference": "4d58f0f4fe95a30d7b538d71197135483560b97c"
"reference": "fbb0ba67688b780efbc886c1a0a0948dcf7205d6"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/finder/zipball/4d58f0f4fe95a30d7b538d71197135483560b97c",
"reference": "4d58f0f4fe95a30d7b538d71197135483560b97c",
"url": "https://api.github.com/repos/symfony/finder/zipball/fbb0ba67688b780efbc886c1a0a0948dcf7205d6",
"reference": "fbb0ba67688b780efbc886c1a0a0948dcf7205d6",
"shasum": ""
},
"require": {
@@ -1672,7 +1674,7 @@
"description": "Finds files and directories via an intuitive fluent interface",
"homepage": "https://symfony.com",
"support": {
"source": "https://github.com/symfony/finder/tree/v7.0.7"
"source": "https://github.com/symfony/finder/tree/v7.1.1"
},
"funding": [
{
@@ -1688,20 +1690,20 @@
"type": "tidelift"
}
],
"time": "2024-04-28T11:44:19+00:00"
"time": "2024-05-31T14:57:53+00:00"
},
{
"name": "symfony/options-resolver",
"version": "v7.0.7",
"version": "v7.1.1",
"source": {
"type": "git",
"url": "https://github.com/symfony/options-resolver.git",
"reference": "23cc173858776ad451e31f053b1c9f47840b2cfa"
"reference": "47aa818121ed3950acd2b58d1d37d08a94f9bf55"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/options-resolver/zipball/23cc173858776ad451e31f053b1c9f47840b2cfa",
"reference": "23cc173858776ad451e31f053b1c9f47840b2cfa",
"url": "https://api.github.com/repos/symfony/options-resolver/zipball/47aa818121ed3950acd2b58d1d37d08a94f9bf55",
"reference": "47aa818121ed3950acd2b58d1d37d08a94f9bf55",
"shasum": ""
},
"require": {
@@ -1739,7 +1741,7 @@
"options"
],
"support": {
"source": "https://github.com/symfony/options-resolver/tree/v7.0.7"
"source": "https://github.com/symfony/options-resolver/tree/v7.1.1"
},
"funding": [
{
@@ -1755,7 +1757,7 @@
"type": "tidelift"
}
],
"time": "2024-04-18T09:29:19+00:00"
"time": "2024-05-31T14:57:53+00:00"
},
{
"name": "symfony/polyfill-ctype",
@@ -2233,16 +2235,16 @@
},
{
"name": "symfony/process",
"version": "v7.0.7",
"version": "v7.1.1",
"source": {
"type": "git",
"url": "https://github.com/symfony/process.git",
"reference": "3839e56b94dd1dbd13235d27504e66baf23faba0"
"reference": "febf90124323a093c7ee06fdb30e765ca3c20028"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/process/zipball/3839e56b94dd1dbd13235d27504e66baf23faba0",
"reference": "3839e56b94dd1dbd13235d27504e66baf23faba0",
"url": "https://api.github.com/repos/symfony/process/zipball/febf90124323a093c7ee06fdb30e765ca3c20028",
"reference": "febf90124323a093c7ee06fdb30e765ca3c20028",
"shasum": ""
},
"require": {
@@ -2274,7 +2276,7 @@
"description": "Executes commands in sub-processes",
"homepage": "https://symfony.com",
"support": {
"source": "https://github.com/symfony/process/tree/v7.0.7"
"source": "https://github.com/symfony/process/tree/v7.1.1"
},
"funding": [
{
@@ -2290,7 +2292,7 @@
"type": "tidelift"
}
],
"time": "2024-04-18T09:29:19+00:00"
"time": "2024-05-31T14:57:53+00:00"
},
{
"name": "symfony/service-contracts",
@@ -2377,16 +2379,16 @@
},
{
"name": "symfony/stopwatch",
"version": "v7.0.7",
"version": "v7.1.1",
"source": {
"type": "git",
"url": "https://github.com/symfony/stopwatch.git",
"reference": "41a7a24aa1dc82adf46a06bc292d1923acfe6b84"
"reference": "5b75bb1ac2ba1b9d05c47fc4b3046a625377d23d"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/stopwatch/zipball/41a7a24aa1dc82adf46a06bc292d1923acfe6b84",
"reference": "41a7a24aa1dc82adf46a06bc292d1923acfe6b84",
"url": "https://api.github.com/repos/symfony/stopwatch/zipball/5b75bb1ac2ba1b9d05c47fc4b3046a625377d23d",
"reference": "5b75bb1ac2ba1b9d05c47fc4b3046a625377d23d",
"shasum": ""
},
"require": {
@@ -2419,7 +2421,7 @@
"description": "Provides a way to profile code",
"homepage": "https://symfony.com",
"support": {
"source": "https://github.com/symfony/stopwatch/tree/v7.0.7"
"source": "https://github.com/symfony/stopwatch/tree/v7.1.1"
},
"funding": [
{
@@ -2435,20 +2437,20 @@
"type": "tidelift"
}
],
"time": "2024-04-18T09:29:19+00:00"
"time": "2024-05-31T14:57:53+00:00"
},
{
"name": "symfony/string",
"version": "v7.0.7",
"version": "v7.1.1",
"source": {
"type": "git",
"url": "https://github.com/symfony/string.git",
"reference": "e405b5424dc2528e02e31ba26b83a79fd4eb8f63"
"reference": "60bc311c74e0af215101235aa6f471bcbc032df2"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/string/zipball/e405b5424dc2528e02e31ba26b83a79fd4eb8f63",
"reference": "e405b5424dc2528e02e31ba26b83a79fd4eb8f63",
"url": "https://api.github.com/repos/symfony/string/zipball/60bc311c74e0af215101235aa6f471bcbc032df2",
"reference": "60bc311c74e0af215101235aa6f471bcbc032df2",
"shasum": ""
},
"require": {
@@ -2462,6 +2464,7 @@
"symfony/translation-contracts": "<2.5"
},
"require-dev": {
"symfony/emoji": "^7.1",
"symfony/error-handler": "^6.4|^7.0",
"symfony/http-client": "^6.4|^7.0",
"symfony/intl": "^6.4|^7.0",
@@ -2505,7 +2508,7 @@
"utf8"
],
"support": {
"source": "https://github.com/symfony/string/tree/v7.0.7"
"source": "https://github.com/symfony/string/tree/v7.1.1"
},
"funding": [
{
@@ -2521,7 +2524,7 @@
"type": "tidelift"
}
],
"time": "2024-04-18T09:29:19+00:00"
"time": "2024-06-04T06:40:14+00:00"
}
],
"packages-dev": [],

View File

@@ -185,7 +185,7 @@ class BudgetLimitController extends Controller
$array['amount_formatted'] = app('amount')->formatAnything($limit->transactionCurrency, $limit['amount']);
$array['days_left'] = (string)$this->activeDaysLeft($start, $end);
// left per day:
$array['left_per_day'] = bcdiv(bcadd($array['spent'], $array['amount']), $array['days_left']);
$array['left_per_day'] = 0 === bccomp('0', $array['days_left']) ? bcadd($array['spent'], $array['amount']) : bcdiv(bcadd($array['spent'], $array['amount']), $array['days_left']);
// left per day formatted.
$array['left_per_day_formatted'] = app('amount')->formatAnything($limit->transactionCurrency, $array['left_per_day']);

View File

@@ -120,7 +120,7 @@ class PreferencesController extends Controller
// list of locales also has "equal" which makes it equal to whatever the language is.
try {
$locales = json_decode((string)file_get_contents(resource_path(sprintf('lang/%s/locales.json', $language))), true, 512, JSON_THROW_ON_ERROR);
$locales = json_decode((string)file_get_contents(resource_path(sprintf('locales/%s/locales.json', $language))), true, 512, JSON_THROW_ON_ERROR);
} catch (\JsonException $e) {
app('log')->error($e->getMessage());
$locales = [];

352
composer.lock generated

File diff suppressed because it is too large Load Diff

View File

@@ -117,7 +117,7 @@ return [
'expression_engine' => false,
// see cer.php for exchange rates feature flag.
],
'version' => 'develop/2024-05-30',
'version' => 'develop/2024-06-10',
'api_version' => '2.1.0',
'db_version' => 24,

1081
package-lock.json generated

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,444 @@
{
"af_NA": "Afrikaans (Namibia)",
"af_ZA": "Afrikaans (South Africa)",
"ak_GH": "Akan (Ghana)",
"sq_AL": "Albanian (Albania)",
"sq_XK": "Albanian (Kosovo)",
"sq_MK": "Albanian (Macedonia)",
"am_ET": "Amharic (Ethiopia)",
"ar_DZ": "Arabic (Algeria)",
"ar_BH": "Arabic (Bahrain)",
"ar_TD": "Arabic (Chad)",
"ar_KM": "Arabic (Comoros)",
"ar_DJ": "Arabic (Djibouti)",
"ar_EG": "Arabic (Egypt)",
"ar_ER": "Arabic (Eritrea)",
"ar_IQ": "Arabic (Iraq)",
"ar_IL": "Arabic (Israel)",
"ar_JO": "Arabic (Jordan)",
"ar_KW": "Arabic (Kuwait)",
"ar_LB": "Arabic (Lebanon)",
"ar_LY": "Arabic (Libya)",
"ar_MR": "Arabic (Mauritania)",
"ar_MA": "Arabic (Morocco)",
"ar_OM": "Arabic (Oman)",
"ar_PS": "Arabic (Palestinian Territories)",
"ar_QA": "Arabic (Qatar)",
"ar_SA": "Arabic (Saudi Arabia)",
"ar_SO": "Arabic (Somalia)",
"ar_SS": "Arabic (South Sudan)",
"ar_SD": "Arabic (Sudan)",
"ar_SY": "Arabic (Syria)",
"ar_TN": "Arabic (Tunisia)",
"ar_AE": "Arabic (United Arab Emirates)",
"ar_EH": "Arabic (Western Sahara)",
"ar_YE": "Arabic (Yemen)",
"hy_AM": "Armenian (Armenia)",
"as_IN": "Assamese (India)",
"az_AZ": "Azerbaijani (Azerbaijan)",
"az_Cyrl_AZ": "Azerbaijani (Cyrillic, Azerbaijan)",
"az_Cyrl": "Azerbaijani (Cyrillic)",
"az_Latn_AZ": "Azerbaijani (Latin, Azerbaijan)",
"az_Latn": "Azerbaijani (Latin)",
"bm_Latn_ML": "Bambara (Latin, Mali)",
"bm_Latn": "Bambara (Latin)",
"eu_ES": "Basque (Spain)",
"be_BY": "Belarusian (Belarus)",
"bn_BD": "Bengali (Bangladesh)",
"bn_IN": "Bengali (India)",
"bs_BA": "Bosnian (Bosnia & Herzegovina)",
"bs_Cyrl_BA": "Bosnian (Cyrillic, Bosnia & Herzegovina)",
"bs_Cyrl": "Bosnian (Cyrillic)",
"bs_Latn_BA": "Bosnian (Latin, Bosnia & Herzegovina)",
"bs_Latn": "Bosnian (Latin)",
"br_FR": "Breton (France)",
"bg_BG": "Bulgarian (Bulgaria)",
"my_MM": "Burmese (Myanmar (Burma))",
"ca_AD": "Catalan (Andorra)",
"ca_FR": "Catalan (France)",
"ca_IT": "Catalan (Italy)",
"ca_ES": "Catalan (Spain)",
"zh_CN": "Chinese (China)",
"zh_HK": "Chinese (Hong Kong SAR China)",
"zh_MO": "Chinese (Macau SAR China)",
"zh_Hans_CN": "Chinese (Simplified, China)",
"zh_Hans_HK": "Chinese (Simplified, Hong Kong SAR China)",
"zh_Hans_MO": "Chinese (Simplified, Macau SAR China)",
"zh_Hans_SG": "Chinese (Simplified, Singapore)",
"zh_Hans": "Chinese (Simplified)",
"zh_SG": "Chinese (Singapore)",
"zh_TW": "Chinese (Taiwan)",
"zh_Hant_HK": "Chinese (Traditional, Hong Kong SAR China)",
"zh_Hant_MO": "Chinese (Traditional, Macau SAR China)",
"zh_Hant_TW": "Chinese (Traditional, Taiwan)",
"zh_Hant": "Chinese (Traditional)",
"kw_GB": "Cornish (United Kingdom)",
"hr_BA": "Croatian (Bosnia & Herzegovina)",
"hr_HR": "Croatian (Croatia)",
"cs_CZ": "Czech (Czech Republic)",
"da_DK": "Danish (Denmark)",
"da_GL": "Danish (Greenland)",
"nl_AW": "Dutch (Aruba)",
"nl_BE": "Dutch (Belgium)",
"nl_BQ": "Dutch (Caribbean Netherlands)",
"nl_CW": "Dutch (Cura\u00e7ao)",
"nl_NL": "Dutch (Netherlands)",
"nl_SX": "Dutch (Sint Maarten)",
"nl_SR": "Dutch (Suriname)",
"dz_BT": "Dzongkha (Bhutan)",
"en_AS": "English (American Samoa)",
"en_AI": "English (Anguilla)",
"en_AG": "English (Antigua & Barbuda)",
"en_AU": "English (Australia)",
"en_BS": "English (Bahamas)",
"en_BB": "English (Barbados)",
"en_BE": "English (Belgium)",
"en_BZ": "English (Belize)",
"en_BM": "English (Bermuda)",
"en_BW": "English (Botswana)",
"en_IO": "English (British Indian Ocean Territory)",
"en_VG": "English (British Virgin Islands)",
"en_CM": "English (Cameroon)",
"en_CA": "English (Canada)",
"en_KY": "English (Cayman Islands)",
"en_CX": "English (Christmas Island)",
"en_CC": "English (Cocos (Keeling) Islands)",
"en_CK": "English (Cook Islands)",
"en_DG": "English (Diego Garcia)",
"en_DM": "English (Dominica)",
"en_ER": "English (Eritrea)",
"en_FK": "English (Falkland Islands)",
"en_FJ": "English (Fiji)",
"en_GM": "English (Gambia)",
"en_GH": "English (Ghana)",
"en_GI": "English (Gibraltar)",
"en_GD": "English (Grenada)",
"en_GU": "English (Guam)",
"en_GG": "English (Guernsey)",
"en_GY": "English (Guyana)",
"en_HK": "English (Hong Kong SAR China)",
"en_IN": "English (India)",
"en_IE": "English (Ireland)",
"en_IM": "English (Isle of Man)",
"en_JM": "English (Jamaica)",
"en_JE": "English (Jersey)",
"en_KE": "English (Kenya)",
"en_KI": "English (Kiribati)",
"en_LS": "English (Lesotho)",
"en_LR": "English (Liberia)",
"en_MO": "English (Macau SAR China)",
"en_MG": "English (Madagascar)",
"en_MW": "English (Malawi)",
"en_MY": "English (Malaysia)",
"en_MT": "English (Malta)",
"en_MH": "English (Marshall Islands)",
"en_MU": "English (Mauritius)",
"en_FM": "English (Micronesia)",
"en_MS": "English (Montserrat)",
"en_NA": "English (Namibia)",
"en_NR": "English (Nauru)",
"en_NZ": "English (New Zealand)",
"en_NG": "English (Nigeria)",
"en_NU": "English (Niue)",
"en_NF": "English (Norfolk Island)",
"en_MP": "English (Northern Mariana Islands)",
"en_PK": "English (Pakistan)",
"en_PW": "English (Palau)",
"en_PG": "English (Papua New Guinea)",
"en_PH": "English (Philippines)",
"en_PN": "English (Pitcairn Islands)",
"en_PR": "English (Puerto Rico)",
"en_RW": "English (Rwanda)",
"en_WS": "English (Samoa)",
"en_SC": "English (Seychelles)",
"en_SL": "English (Sierra Leone)",
"en_SG": "English (Singapore)",
"en_SX": "English (Sint Maarten)",
"en_SB": "English (Solomon Islands)",
"en_ZA": "English (South Africa)",
"en_SS": "English (South Sudan)",
"en_SH": "English (St. Helena)",
"en_KN": "English (St. Kitts & Nevis)",
"en_LC": "English (St. Lucia)",
"en_VC": "English (St. Vincent & Grenadines)",
"en_SD": "English (Sudan)",
"en_SZ": "English (Swaziland)",
"en_TZ": "English (Tanzania)",
"en_TK": "English (Tokelau)",
"en_TO": "English (Tonga)",
"en_TT": "English (Trinidad & Tobago)",
"en_TC": "English (Turks & Caicos Islands)",
"en_TV": "English (Tuvalu)",
"en_UM": "English (U.S. Outlying Islands)",
"en_VI": "English (U.S. Virgin Islands)",
"en_UG": "English (Uganda)",
"en_GB": "English (United Kingdom)",
"en_US": "English (United States)",
"en_VU": "English (Vanuatu)",
"en_ZM": "English (Zambia)",
"en_ZW": "English (Zimbabwe)",
"et_EE": "Estonian (Estonia)",
"ee_GH": "Ewe (Ghana)",
"ee_TG": "Ewe (Togo)",
"fo_FO": "Faroese (Faroe Islands)",
"fi_FI": "Finnish (Finland)",
"fr_DZ": "French (Algeria)",
"fr_BE": "French (Belgium)",
"fr_BJ": "French (Benin)",
"fr_BF": "French (Burkina Faso)",
"fr_BI": "French (Burundi)",
"fr_CM": "French (Cameroon)",
"fr_CA": "French (Canada)",
"fr_CF": "French (Central African Republic)",
"fr_TD": "French (Chad)",
"fr_KM": "French (Comoros)",
"fr_CG": "French (Congo - Brazzaville)",
"fr_CD": "French (Congo - Kinshasa)",
"fr_CI": "French (C\u00f4te d\u2019Ivoire)",
"fr_DJ": "French (Djibouti)",
"fr_GQ": "French (Equatorial Guinea)",
"fr_FR": "French (France)",
"fr_GF": "French (French Guiana)",
"fr_PF": "French (French Polynesia)",
"fr_GA": "French (Gabon)",
"fr_GP": "French (Guadeloupe)",
"fr_GN": "French (Guinea)",
"fr_HT": "French (Haiti)",
"fr_LU": "French (Luxembourg)",
"fr_MG": "French (Madagascar)",
"fr_ML": "French (Mali)",
"fr_MQ": "French (Martinique)",
"fr_MR": "French (Mauritania)",
"fr_MU": "French (Mauritius)",
"fr_YT": "French (Mayotte)",
"fr_MC": "French (Monaco)",
"fr_MA": "French (Morocco)",
"fr_NC": "French (New Caledonia)",
"fr_NE": "French (Niger)",
"fr_RE": "French (R\u00e9union)",
"fr_RW": "French (Rwanda)",
"fr_SN": "French (Senegal)",
"fr_SC": "French (Seychelles)",
"fr_BL": "French (St. Barth\u00e9lemy)",
"fr_MF": "French (St. Martin)",
"fr_PM": "French (St. Pierre & Miquelon)",
"fr_CH": "French (Switzerland)",
"fr_SY": "French (Syria)",
"fr_TG": "French (Togo)",
"fr_TN": "French (Tunisia)",
"fr_VU": "French (Vanuatu)",
"fr_WF": "French (Wallis & Futuna)",
"ff_CM": "Fulah (Cameroon)",
"ff_GN": "Fulah (Guinea)",
"ff_MR": "Fulah (Mauritania)",
"ff_SN": "Fulah (Senegal)",
"gl_ES": "Galician (Spain)",
"lg_UG": "Ganda (Uganda)",
"ka_GE": "Georgian (Georgia)",
"de_AT": "German (Austria)",
"de_BE": "German (Belgium)",
"de_DE": "German (Germany)",
"de_LI": "German (Liechtenstein)",
"de_LU": "German (Luxembourg)",
"de_CH": "German (Switzerland)",
"el_CY": "Greek (Cyprus)",
"el_GR": "Greek (Greece)",
"gu_IN": "Gujarati (India)",
"ha_GH": "Hausa (Ghana)",
"ha_Latn_GH": "Hausa (Latin, Ghana)",
"ha_Latn_NE": "Hausa (Latin, Niger)",
"ha_Latn_NG": "Hausa (Latin, Nigeria)",
"ha_Latn": "Hausa (Latin)",
"ha_NE": "Hausa (Niger)",
"ha_NG": "Hausa (Nigeria)",
"he_IL": "Hebrew (Israel)",
"hi_IN": "Hindi (India)",
"hu_HU": "Hungarian (Hungary)",
"is_IS": "Icelandic (Iceland)",
"ig_NG": "Igbo (Nigeria)",
"id_ID": "Indonesian (Indonesia)",
"ga_IE": "Irish (Ireland)",
"it_IT": "Italian (Italy)",
"it_SM": "Italian (San Marino)",
"it_CH": "Italian (Switzerland)",
"ja_JP": "Japanese (Japan)",
"kl_GL": "Kalaallisut (Greenland)",
"kn_IN": "Kannada (India)",
"ks_Arab_IN": "Kashmiri (Arabic, India)",
"ks_Arab": "Kashmiri (Arabic)",
"ks_IN": "Kashmiri (India)",
"kk_Cyrl_KZ": "Kazakh (Cyrillic, Kazakhstan)",
"kk_Cyrl": "Kazakh (Cyrillic)",
"kk_KZ": "Kazakh (Kazakhstan)",
"km_KH": "Khmer (Cambodia)",
"ki_KE": "Kikuyu (Kenya)",
"rw_RW": "Kinyarwanda (Rwanda)",
"ko_KP": "Korean (North Korea)",
"ko_KR": "Korean (South Korea)",
"ky_Cyrl_KG": "Kyrgyz (Cyrillic, Kyrgyzstan)",
"ky_Cyrl": "Kyrgyz (Cyrillic)",
"ky_KG": "Kyrgyz (Kyrgyzstan)",
"lo_LA": "Lao (Laos)",
"lv_LV": "Latvian (Latvia)",
"ln_AO": "Lingala (Angola)",
"ln_CF": "Lingala (Central African Republic)",
"ln_CG": "Lingala (Congo - Brazzaville)",
"ln_CD": "Lingala (Congo - Kinshasa)",
"lt_LT": "Lithuanian (Lithuania)",
"lu_CD": "Luba-Katanga (Congo - Kinshasa)",
"lb_LU": "Luxembourgish (Luxembourg)",
"mk_MK": "Macedonian (Macedonia)",
"mg_MG": "Malagasy (Madagascar)",
"ms_BN": "Malay (Brunei)",
"ms_Latn_BN": "Malay (Latin, Brunei)",
"ms_Latn_MY": "Malay (Latin, Malaysia)",
"ms_Latn_SG": "Malay (Latin, Singapore)",
"ms_Latn": "Malay (Latin)",
"ms_MY": "Malay (Malaysia)",
"ms_SG": "Malay (Singapore)",
"ml_IN": "Malayalam (India)",
"mt_MT": "Maltese (Malta)",
"gv_IM": "Manx (Isle of Man)",
"mr_IN": "Marathi (India)",
"mn_Cyrl_MN": "Mongolian (Cyrillic, Mongolia)",
"mn_Cyrl": "Mongolian (Cyrillic)",
"mn_MN": "Mongolian (Mongolia)",
"ne_IN": "Nepali (India)",
"ne_NP": "Nepali (Nepal)",
"nd_ZW": "North Ndebele (Zimbabwe)",
"se_FI": "Northern Sami (Finland)",
"se_NO": "Northern Sami (Norway)",
"se_SE": "Northern Sami (Sweden)",
"no_NO": "Norwegian (Norway)",
"nb_NO": "Norwegian Bokm\u00e5l (Norway)",
"nb_SJ": "Norwegian Bokm\u00e5l (Svalbard & Jan Mayen)",
"nn_NO": "Norwegian Nynorsk (Norway)",
"or_IN": "Oriya (India)",
"om_ET": "Oromo (Ethiopia)",
"om_KE": "Oromo (Kenya)",
"os_GE": "Ossetic (Georgia)",
"os_RU": "Ossetic (Russia)",
"ps_AF": "Pashto (Afghanistan)",
"fa_AF": "Persian (Afghanistan)",
"fa_IR": "Persian (Iran)",
"pl_PL": "Polish (Poland)",
"pt_AO": "Portuguese (Angola)",
"pt_BR": "Portuguese (Brazil)",
"pt_CV": "Portuguese (Cape Verde)",
"pt_GW": "Portuguese (Guinea-Bissau)",
"pt_MO": "Portuguese (Macau SAR China)",
"pt_MZ": "Portuguese (Mozambique)",
"pt_PT": "Portuguese (Portugal)",
"pt_ST": "Portuguese (S\u00e3o Tom\u00e9 & Pr\u00edncipe)",
"pt_TL": "Portuguese (Timor-Leste)",
"pa_Arab_PK": "Punjabi (Arabic, Pakistan)",
"pa_Arab": "Punjabi (Arabic)",
"pa_Guru_IN": "Punjabi (Gurmukhi, India)",
"pa_Guru": "Punjabi (Gurmukhi)",
"pa_IN": "Punjabi (India)",
"pa_PK": "Punjabi (Pakistan)",
"qu_BO": "Quechua (Bolivia)",
"qu_EC": "Quechua (Ecuador)",
"qu_PE": "Quechua (Peru)",
"ro_MD": "Romanian (Moldova)",
"ro_RO": "Romanian (Romania)",
"rm_CH": "Romansh (Switzerland)",
"rn_BI": "Rundi (Burundi)",
"ru_BY": "Russian (Belarus)",
"ru_KZ": "Russian (Kazakhstan)",
"ru_KG": "Russian (Kyrgyzstan)",
"ru_MD": "Russian (Moldova)",
"ru_RU": "Russian (Russia)",
"ru_UA": "Russian (Ukraine)",
"sg_CF": "Sango (Central African Republic)",
"gd_GB": "Scottish Gaelic (United Kingdom)",
"sr_BA": "Serbian (Bosnia & Herzegovina)",
"sr_Cyrl_BA": "Serbian (Cyrillic, Bosnia & Herzegovina)",
"sr_Cyrl_XK": "Serbian (Cyrillic, Kosovo)",
"sr_Cyrl_ME": "Serbian (Cyrillic, Montenegro)",
"sr_Cyrl_RS": "Serbian (Cyrillic, Serbia)",
"sr_Cyrl": "Serbian (Cyrillic)",
"sr_XK": "Serbian (Kosovo)",
"sr_Latn_BA": "Serbian (Latin, Bosnia & Herzegovina)",
"sr_Latn_XK": "Serbian (Latin, Kosovo)",
"sr_Latn_ME": "Serbian (Latin, Montenegro)",
"sr_Latn_RS": "Serbian (Latin, Serbia)",
"sr_Latn": "Serbian (Latin)",
"sr_ME": "Serbian (Montenegro)",
"sr_RS": "Serbian (Serbia)",
"sh_BA": "Serbo-Croatian (Bosnia & Herzegovina)",
"sn_ZW": "Shona (Zimbabwe)",
"ii_CN": "Sichuan Yi (China)",
"si_LK": "Sinhala (Sri Lanka)",
"sk_SK": "Slovak (Slovakia)",
"sl_SI": "Slovenian (Slovenia)",
"so_DJ": "Somali (Djibouti)",
"so_ET": "Somali (Ethiopia)",
"so_KE": "Somali (Kenya)",
"so_SO": "Somali (Somalia)",
"es_AR": "Spanish (Argentina)",
"es_BO": "Spanish (Bolivia)",
"es_IC": "Spanish (Canary Islands)",
"es_EA": "Spanish (Ceuta & Melilla)",
"es_CL": "Spanish (Chile)",
"es_CO": "Spanish (Colombia)",
"es_CR": "Spanish (Costa Rica)",
"es_CU": "Spanish (Cuba)",
"es_DO": "Spanish (Dominican Republic)",
"es_EC": "Spanish (Ecuador)",
"es_SV": "Spanish (El Salvador)",
"es_GQ": "Spanish (Equatorial Guinea)",
"es_GT": "Spanish (Guatemala)",
"es_HN": "Spanish (Honduras)",
"es_MX": "Spanish (Mexico)",
"es_NI": "Spanish (Nicaragua)",
"es_PA": "Spanish (Panama)",
"es_PY": "Spanish (Paraguay)",
"es_PE": "Spanish (Peru)",
"es_PH": "Spanish (Philippines)",
"es_PR": "Spanish (Puerto Rico)",
"es_ES": "Spanish (Spain)",
"es_US": "Spanish (United States)",
"es_UY": "Spanish (Uruguay)",
"es_VE": "Spanish (Venezuela)",
"sw_KE": "Swahili (Kenya)",
"sw_TZ": "Swahili (Tanzania)",
"sw_UG": "Swahili (Uganda)",
"sv_AX": "Swedish (\u00c5land Islands)",
"sv_FI": "Swedish (Finland)",
"sv_SE": "Swedish (Sweden)",
"tl_PH": "Tagalog (Philippines)",
"ta_IN": "Tamil (India)",
"ta_MY": "Tamil (Malaysia)",
"ta_SG": "Tamil (Singapore)",
"ta_LK": "Tamil (Sri Lanka)",
"te_IN": "Telugu (India)",
"th_TH": "Thai (Thailand)",
"bo_CN": "Tibetan (China)",
"bo_IN": "Tibetan (India)",
"ti_ER": "Tigrinya (Eritrea)",
"ti_ET": "Tigrinya (Ethiopia)",
"to_TO": "Tongan (Tonga)",
"tr_CY": "Turkish (Cyprus)",
"tr_TR": "Turkish (Turkey)",
"uk_UA": "Ukrainian (Ukraine)",
"ur_IN": "Urdu (India)",
"ur_PK": "Urdu (Pakistan)",
"ug_Arab_CN": "Uyghur (Arabic, China)",
"ug_Arab": "Uyghur (Arabic)",
"ug_CN": "Uyghur (China)",
"uz_AF": "Uzbek (Afghanistan)",
"uz_Arab_AF": "Uzbek (Arabic, Afghanistan)",
"uz_Arab": "Uzbek (Arabic)",
"uz_Cyrl_UZ": "Uzbek (Cyrillic, Uzbekistan)",
"uz_Cyrl": "Uzbek (Cyrillic)",
"uz_Latn_UZ": "Uzbek (Latin, Uzbekistan)",
"uz_Latn": "Uzbek (Latin)",
"uz_UZ": "Uzbek (Uzbekistan)",
"vi_VN": "Vietnamese (Vietnam)",
"cy_GB": "Welsh (United Kingdom)",
"fy_NL": "Western Frisian (Netherlands)",
"yo_BJ": "Yoruba (Benin)",
"yo_NG": "Yoruba (Nigeria)",
"zu_ZA": "Zulu (South Africa)"
}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long