diff --git a/package-lock.json b/package-lock.json index c48c4ab30..06487ac97 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1997,6 +1997,21 @@ } } }, + "@formatjs/ecma402-abstract": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/@formatjs/ecma402-abstract/-/ecma402-abstract-1.6.1.tgz", + "integrity": "sha512-GQJ+mK4rrbpdXjFzwK/5NIalxBOjCLI4ZuCCvReLQGwq1ICViIIgLQw1wP95doZFjH5Y9WaQ8Zzl8+A9IkxAsQ==", + "requires": { + "tslib": "^2.1.0" + }, + "dependencies": { + "tslib": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.1.0.tgz", + "integrity": "sha512-hcVC3wYEziELGGmEEXue7D75zbwIIVUMWAVbHItGPx0ziyXxrOMQx4rQEVEV45Ut/1IotuEvwqPopzIOkDMf0A==" + } + } + }, "@grpc/grpc-js": { "version": "1.2.8", "resolved": "https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.2.8.tgz", @@ -3547,6 +3562,15 @@ } } }, + "@olizilla/lol": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@olizilla/lol/-/lol-2.0.0.tgz", + "integrity": "sha512-4UlN1aw6lea7LPuKQWivhuxiZoHuh1GiCACTVvlkvjxaV25YYfC8JQFOZ0MhMwJyswnt4xEkoOedz8TBDSwFpw==", + "dev": true, + "requires": { + "langmap": "^0.0.16" + } + }, "@pmmmwh/react-refresh-webpack-plugin": { "version": "0.4.3", "resolved": "https://registry.npmjs.org/@pmmmwh/react-refresh-webpack-plugin/-/react-refresh-webpack-plugin-0.4.3.tgz", @@ -7514,38 +7538,12 @@ "integrity": "sha512-5P0QZ6J5xGikH780pghEdbEKijCTrruK9KxtPZCFWUpef0f6GipO+xEZ5GKCb020mmqgbiNO6TcA55CriL784Q==" }, "axios": { - "version": "0.19.2", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.19.2.tgz", - "integrity": "sha512-fjgm5MvRHLhx+osE2xoekY70AhARk3a6hkN+3Io1jc00jtquGvxYlKlsFUhmUET0V5te6CcZI7lcv2Ym61mjHA==", + "version": "0.21.1", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.1.tgz", + "integrity": "sha512-dKQiRHxGD9PPRIUNIWvZhPTPpl1rf/OxTYKsqKUDjBwYylTvV7SjSHJb9ratfyzM6wCdLCOYLzs73qpg5c4iGA==", "dev": true, "requires": { - "follow-redirects": "1.5.10" - }, - "dependencies": { - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "follow-redirects": { - "version": "1.5.10", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.5.10.tgz", - "integrity": "sha512-0V5l4Cizzvqt5D44aTXbFZz+FtyXV1vrDN6qrelxtfYQKW0KO0W2T/hkE8xvGa/540LkZlkaUjO4ailYTFtHVQ==", - "dev": true, - "requires": { - "debug": "=3.1.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - } + "follow-redirects": "^1.10.0" } }, "axobject-query": { @@ -10223,18 +10221,18 @@ "integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=" }, "bundlesize": { - "version": "0.18.0", - "resolved": "https://registry.npmjs.org/bundlesize/-/bundlesize-0.18.0.tgz", - "integrity": "sha512-GZURr25umfYxZYZUyOlOtJRbYjAn0VfbjbnS0NBcOiF8VcjmhoEhmx8Gw4va8HeQb8j7Ra0ZltY/IeHgSHFXFw==", + "version": "0.18.1", + "resolved": "https://registry.npmjs.org/bundlesize/-/bundlesize-0.18.1.tgz", + "integrity": "sha512-NAsKBH6BeVmDopoa4tod0m5/koM7iLY3saKyGn7wyAravBYmKNUpDJba4zyVhwRm5Dw9WXv8FIO0N//tCkx68Q==", "dev": true, "requires": { - "axios": "^0.19.0", + "axios": "^0.21.1", "brotli-size": "0.1.0", "bytes": "^3.1.0", "ci-env": "^1.4.0", "commander": "^2.20.0", "cosmiconfig": "^5.2.1", - "github-build": "^1.2.0", + "github-build": "^1.2.2", "glob": "^7.1.4", "gzip-size": "^4.0.0", "prettycli": "^1.4.3" @@ -15251,6 +15249,11 @@ "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=" }, + "fast-memoize": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/fast-memoize/-/fast-memoize-2.5.2.tgz", + "integrity": "sha512-Ue0LwpDYErFbmNnZSF0UH6eImUwDmogUO1jyE+JbN2gsQz/jICm1Ve7t9QT0rNSsfJt+Hs4/S3GnsDVjL4HVrw==" + }, "fast-redact": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/fast-redact/-/fast-redact-3.0.0.tgz", @@ -16564,54 +16567,12 @@ } }, "github-build": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/github-build/-/github-build-1.2.1.tgz", - "integrity": "sha512-VAT4NFU8hm9Ks5yNKuuczD2zMbmouAKHtxtwvmCj34Q2DpZsjgp3LLjtrKlm/YvGSzSNGmj22ccJQQei+f/vIw==", + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/github-build/-/github-build-1.2.2.tgz", + "integrity": "sha512-xHVy8w+J09eD+uBqJ4CcRPr5HTa1BYaF6vPJ67yJekCWurPzimB/ExH1SGzW5iAFC2Uvw9TD1FpSIjh56hcB9Q==", "dev": true, "requires": { - "axios": "0.19.0" - }, - "dependencies": { - "axios": { - "version": "0.19.0", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.19.0.tgz", - "integrity": "sha512-1uvKqKQta3KBxIz14F2v06AEHZ/dIoeKfbTRkK1E5oqjDnuEerLmYTgJB5AiQZHJcljpg1TuRzdjDR06qNk0DQ==", - "dev": true, - "requires": { - "follow-redirects": "1.5.10", - "is-buffer": "^2.0.2" - } - }, - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "follow-redirects": { - "version": "1.5.10", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.5.10.tgz", - "integrity": "sha512-0V5l4Cizzvqt5D44aTXbFZz+FtyXV1vrDN6qrelxtfYQKW0KO0W2T/hkE8xvGa/540LkZlkaUjO4ailYTFtHVQ==", - "dev": true, - "requires": { - "debug": "=3.1.0" - } - }, - "is-buffer": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.4.tgz", - "integrity": "sha512-Kq1rokWXOPXWuaMAqZiJW4XxsmD9zGx9q4aePabbn3qCRGedtH7Cm+zV8WETitMfu1wdh+Rvd6w5egwSngUX2A==", - "dev": true - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - } + "axios": "0.21.1" } }, "github-from-package": { @@ -16788,9 +16749,9 @@ } }, "go-ipfs": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/go-ipfs/-/go-ipfs-0.6.0.tgz", - "integrity": "sha512-GKt5qae+5C2Oe54Y2eWXGjf7/AD+LPG+AZB9BfKZP2xA7Y5emxFYxIn2lzrf7jY4Pc4HzrK2Mr4Ei5wwWbYURg==", + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/go-ipfs/-/go-ipfs-0.8.0.tgz", + "integrity": "sha512-T2nE6UgsmGeAAlr3//4sL3uNrU76RStJasD7lTNYCQV6mz13ynfku63paZRI5V2oGZTWh8ik7O7d0TXD0qD3rA==", "dev": true, "requires": { "go-platform": "^1.0.0", @@ -17575,11 +17536,26 @@ "integrity": "sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==" }, "i18next": { - "version": "19.8.0", - "resolved": "https://registry.npmjs.org/i18next/-/i18next-19.8.0.tgz", - "integrity": "sha512-iE1v7UryGBLp6KchPkNUUeZ480yQpZ0m1pqzCUzz8mzNC1pXxX9DrFVUaPXKx/l3TMl54l3j52NlymzNXHklKQ==", + "version": "19.9.0", + "resolved": "https://registry.npmjs.org/i18next/-/i18next-19.9.0.tgz", + "integrity": "sha512-5zRG3aFl+e+LsdpVUp0dKkVhYH2iCv+gxyzXP1q2oJUc3BV26fqX87cBE3AHkMOir1X0liOaSoxS/Kg95iEcEQ==", "requires": { - "@babel/runtime": "^7.10.1" + "@babel/runtime": "^7.12.0" + }, + "dependencies": { + "@babel/runtime": { + "version": "7.13.7", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.13.7.tgz", + "integrity": "sha512-h+ilqoX998mRVM5FtB5ijRuHUDVt5l3yfoOi2uh18Z/O3hvyaHQ39NpxVkCIG5yFs+mLq/ewFp8Bss6zmWv6ZA==", + "requires": { + "regenerator-runtime": "^0.13.4" + } + }, + "regenerator-runtime": { + "version": "0.13.7", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.7.tgz", + "integrity": "sha512-a54FxoJDIr27pgf7IgeQGxmqUNYrcV338lf/6gH456HZ/PhX+5BcwHXG9ajESmwe6WRO0tAzRUrRmNONWgkrew==" + } } }, "i18next-browser-languagedetector": { @@ -17599,27 +17575,17 @@ } }, "i18next-http-backend": { - "version": "1.0.21", - "resolved": "https://registry.npmjs.org/i18next-http-backend/-/i18next-http-backend-1.0.21.tgz", - "integrity": "sha512-UDeHoV2B+31Gr++0KFAVjM5l+SEwePpF6sfDyaDq5ennM9QNJ78PBEMPStwkreEm4h5C8sT7M1JdNQrLcU1Wdg==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/i18next-http-backend/-/i18next-http-backend-1.1.1.tgz", + "integrity": "sha512-li3Un71yBu1uCfgJrCg8DOEtljse1er0ja1pM/rFmWLihrD2RFqyrglOsYUHokvzZ53mJB2Mmu4DYgd8/t3R0A==", "requires": { "node-fetch": "2.6.1" - }, - "dependencies": { - "node-fetch": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.1.tgz", - "integrity": "sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw==" - } } }, "i18next-icu": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/i18next-icu/-/i18next-icu-1.4.2.tgz", - "integrity": "sha512-EqHafx/sL8eoEowwqi5P6cXtLrzJXBKI4RmV+UaMXlpIJNfckVsq873F2KkMKkApxiw2ATj46C8MurmhMsHQGw==", - "requires": { - "intl-messageformat": "2.2.0" - } + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/i18next-icu/-/i18next-icu-2.0.0.tgz", + "integrity": "sha512-bECwYss+OaMG6DgB70NOWhQmm4lbmqk18Yu2X3wnuE1ebL3Yd0GKA0idfmiSpsDDqI3GcZwQIbpjrER6/7LMkw==" }, "i18next-localstorage-backend": { "version": "3.1.2", @@ -17818,9 +17784,9 @@ "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" }, "ini": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", - "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==" + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" }, "inquirer": { "version": "7.3.3", @@ -17951,17 +17917,37 @@ "dev": true }, "intl-messageformat": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/intl-messageformat/-/intl-messageformat-2.2.0.tgz", - "integrity": "sha1-NFvNRt5jC3aDMwwuUhd/9eq0hPw=", + "version": "9.5.1", + "resolved": "https://registry.npmjs.org/intl-messageformat/-/intl-messageformat-9.5.1.tgz", + "integrity": "sha512-hFGON7KcnfNHXAtCeiJlTtWHgu6toOBeouVC/Ee6BI3n2eFBG5JukKsJ0K0W7ILc0t05n+67rvt9sngCVPesxg==", "requires": { - "intl-messageformat-parser": "1.4.0" + "fast-memoize": "^2.5.2", + "intl-messageformat-parser": "6.4.1", + "tslib": "^2.1.0" + }, + "dependencies": { + "tslib": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.1.0.tgz", + "integrity": "sha512-hcVC3wYEziELGGmEEXue7D75zbwIIVUMWAVbHItGPx0ziyXxrOMQx4rQEVEV45Ut/1IotuEvwqPopzIOkDMf0A==" + } } }, "intl-messageformat-parser": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/intl-messageformat-parser/-/intl-messageformat-parser-1.4.0.tgz", - "integrity": "sha1-tD1FqXRoytvkQzHXS7Ho3qRPwHU=" + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/intl-messageformat-parser/-/intl-messageformat-parser-6.4.1.tgz", + "integrity": "sha512-plJDJXkcZiDGJ5iYae4mjELeTFvWeJhl9dXzFeizc5TBqLc/VtNDvV9JBJmXY4XLOViH0lwOhS5+iBdQ4w0ufg==", + "requires": { + "@formatjs/ecma402-abstract": "1.6.1", + "tslib": "^2.1.0" + }, + "dependencies": { + "tslib": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.1.0.tgz", + "integrity": "sha512-hcVC3wYEziELGGmEEXue7D75zbwIIVUMWAVbHItGPx0ziyXxrOMQx4rQEVEV45Ut/1IotuEvwqPopzIOkDMf0A==" + } + } }, "invariant": { "version": "2.2.4", @@ -25237,6 +25223,12 @@ "resolved": "https://registry.npmjs.org/klona/-/klona-2.0.4.tgz", "integrity": "sha512-ZRbnvdg/NxqzC7L9Uyqzf4psi1OM4Cuc+sJAkQPjO6XkQIJTNbfK2Rsmbw8fx1p2mkZdp2FZYo2+LwXYY/uwIA==" }, + "langmap": { + "version": "0.0.16", + "resolved": "https://registry.npmjs.org/langmap/-/langmap-0.0.16.tgz", + "integrity": "sha512-AtYvBK7BsDvWwnSfmO7CfgeUy7GUT1wK3QX8eKH/Ey/eXodqoHuAtvdQ82hmWD9QVFVKnuiNjym9fGY4qSJeLA==", + "dev": true + }, "language-subtag-registry": { "version": "0.3.20", "resolved": "https://registry.npmjs.org/language-subtag-registry/-/language-subtag-registry-0.3.20.tgz", @@ -25800,9 +25792,9 @@ } }, "libp2p": { - "version": "0.30.8", - "resolved": "https://registry.npmjs.org/libp2p/-/libp2p-0.30.8.tgz", - "integrity": "sha512-czvp/0Pyvo2tJ3n9RFdyyE05oqQEtg/etZLFjlzqYtzNn79h1UZH2cTM87F3Rm3wGUWqhEnjFZJkgHfhNE5Xdw==", + "version": "0.30.9", + "resolved": "https://registry.npmjs.org/libp2p/-/libp2p-0.30.9.tgz", + "integrity": "sha512-qz9rJdaeZW1pdkx4TTwE81bCmNr4wPFPJFd1lmWp6jmEBSrqO8o29D5LuDJ/lSL2vVYi2sRNOoQjrelV1i7+Iw==", "dev": true, "requires": { "@motrix/nat-api": "^0.3.1", @@ -25903,18 +25895,6 @@ "secp256k1": "^4.0.0", "uint8arrays": "^1.1.0", "ursa-optional": "^0.10.1" - }, - "dependencies": { - "uint8arrays": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-1.1.0.tgz", - "integrity": "sha512-cLdlZ6jnFczsKf5IH1gPHTtcHtPGho5r4CvctohmQjw8K7Q3gFdfIGHxSTdTaCKrL4w09SsPRJTqRS0drYeszA==", - "dev": true, - "requires": { - "multibase": "^3.0.0", - "web-encoding": "^1.0.2" - } - } } }, "merge-options": { @@ -25944,18 +25924,6 @@ "requires": { "uint8arrays": "1.1.0", "varint": "^6.0.0" - }, - "dependencies": { - "uint8arrays": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-1.1.0.tgz", - "integrity": "sha512-cLdlZ6jnFczsKf5IH1gPHTtcHtPGho5r4CvctohmQjw8K7Q3gFdfIGHxSTdTaCKrL4w09SsPRJTqRS0drYeszA==", - "dev": true, - "requires": { - "multibase": "^3.0.0", - "web-encoding": "^1.0.2" - } - } } }, "multihashes": { @@ -26035,16 +26003,6 @@ "varint": "^5.0.0" }, "dependencies": { - "uint8arrays": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-1.1.0.tgz", - "integrity": "sha512-cLdlZ6jnFczsKf5IH1gPHTtcHtPGho5r4CvctohmQjw8K7Q3gFdfIGHxSTdTaCKrL4w09SsPRJTqRS0drYeszA==", - "dev": true, - "requires": { - "multibase": "^3.0.0", - "web-encoding": "^1.0.2" - } - }, "varint": { "version": "5.0.2", "resolved": "https://registry.npmjs.org/varint/-/varint-5.0.2.tgz", @@ -26053,6 +26011,16 @@ } } }, + "uint8arrays": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-1.1.0.tgz", + "integrity": "sha512-cLdlZ6jnFczsKf5IH1gPHTtcHtPGho5r4CvctohmQjw8K7Q3gFdfIGHxSTdTaCKrL4w09SsPRJTqRS0drYeszA==", + "dev": true, + "requires": { + "multibase": "^3.0.0", + "web-encoding": "^1.0.2" + } + }, "varint": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/varint/-/varint-6.0.0.tgz", @@ -26082,105 +26050,6 @@ "peer-id": "^0.14.0" } }, - "libp2p-crypto": { - "version": "0.18.0", - "resolved": "https://registry.npmjs.org/libp2p-crypto/-/libp2p-crypto-0.18.0.tgz", - "integrity": "sha512-zNMHDwf2J4t1LRjrBPMiSa4+14u0SfZRu66FyIVZtOnBGo3V/8imbJsOp8RPT8IgeHRN7EVIUt9lp8dcgXHMOw==", - "requires": { - "err-code": "^2.0.0", - "is-typedarray": "^1.0.0", - "iso-random-stream": "^1.1.0", - "keypair": "^1.0.1", - "multibase": "^3.0.0", - "multicodec": "^2.0.0", - "multihashing-async": "^2.0.1", - "node-forge": "^0.9.1", - "pem-jwk": "^2.0.0", - "protons": "^2.0.0", - "secp256k1": "^4.0.0", - "uint8arrays": "^1.1.0", - "ursa-optional": "^0.10.1" - }, - "dependencies": { - "multibase": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/multibase/-/multibase-3.0.1.tgz", - "integrity": "sha512-MRU5WpnSg81/vYO977MweoeUAxBdXl7+F5Af2Es+X6Vcgfk/g/EjIqXTgm3kb+xO3m1Kzr+aIV14oRX7nv5Z9w==", - "requires": { - "@multiformats/base-x": "^4.0.1", - "web-encoding": "^1.0.2" - } - }, - "multicodec": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/multicodec/-/multicodec-2.0.1.tgz", - "integrity": "sha512-YDYeWn9iGa76hOHAyyZa0kbt3tr5FLg1ZXUHrZUJltjnxxdbTIbHnxWLd2zTcMOjdT3QyO+Xs4bQgJUcC2RWUA==", - "requires": { - "uint8arrays": "1.0.0", - "varint": "^5.0.0" - }, - "dependencies": { - "uint8arrays": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-1.0.0.tgz", - "integrity": "sha512-14tqEVujDREW7YwonSZZwLvo7aFDfX7b6ubvM/U7XvZol+CC/LbhaX/550VlWmhddAL9Wou1sxp0Of3tGqXigg==", - "requires": { - "multibase": "^3.0.0", - "web-encoding": "^1.0.2" - } - } - } - }, - "multihashes": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/multihashes/-/multihashes-3.0.1.tgz", - "integrity": "sha512-fFY67WOtb0359IjDZxaCU3gJILlkwkFbxbwrK9Bej5+NqNaYztzLOj8/NgMNMg/InxmhK+Uu8S/U4EcqsHzB7Q==", - "requires": { - "multibase": "^3.0.0", - "uint8arrays": "^1.0.0", - "varint": "^5.0.0" - } - }, - "multihashing-async": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/multihashing-async/-/multihashing-async-2.0.1.tgz", - "integrity": "sha512-LZcH8PqW4iEKymaJ3RpsgpSJhXF29kAvO02ccqbysiXkQhZpVce8rrg+vzRKWO89hhyIBnQHI2e/ZoRVxmiJ2Q==", - "requires": { - "blakejs": "^1.1.0", - "err-code": "^2.0.0", - "js-sha3": "^0.8.0", - "multihashes": "^3.0.1", - "murmurhash3js-revisited": "^3.0.0", - "uint8arrays": "^1.0.0" - } - }, - "node-forge": { - "version": "0.9.2", - "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.9.2.tgz", - "integrity": "sha512-naKSScof4Wn+aoHU6HBsifh92Zeicm1GDQKd1vp3Y/kOi8ub0DozCa9KpvYNCXslFHYRmLNiqRopGdTGwNLpNw==" - }, - "protons": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/protons/-/protons-2.0.0.tgz", - "integrity": "sha512-BTrE9D6/d1NGis+0D8TqAO1THdn4evHQhfjapA0NUaRH4+ecJJcbqaF7TE/DKv5czE9VB/TeOllBOmCyJhHnhg==", - "requires": { - "protocol-buffers-schema": "^3.3.1", - "signed-varint": "^2.0.1", - "uint8arrays": "^1.0.0", - "varint": "^5.0.0" - } - }, - "uint8arrays": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-1.1.0.tgz", - "integrity": "sha512-cLdlZ6jnFczsKf5IH1gPHTtcHtPGho5r4CvctohmQjw8K7Q3gFdfIGHxSTdTaCKrL4w09SsPRJTqRS0drYeszA==", - "requires": { - "multibase": "^3.0.0", - "web-encoding": "^1.0.2" - } - } - } - }, "libp2p-delegated-content-routing": { "version": "0.9.0", "resolved": "https://registry.npmjs.org/libp2p-delegated-content-routing/-/libp2p-delegated-content-routing-0.9.0.tgz", @@ -27220,9 +27089,9 @@ } }, "libp2p-webrtc-star": { - "version": "0.21.1", - "resolved": "https://registry.npmjs.org/libp2p-webrtc-star/-/libp2p-webrtc-star-0.21.1.tgz", - "integrity": "sha512-d6RvNbYjpSj/upWaRqcHHTx8mGQcZrvx4SwzdEpYJybyW6sNCdONWc4D5uzDWiKB8iv93M6XXYPlNw6cIgBR/Q==", + "version": "0.21.2", + "resolved": "https://registry.npmjs.org/libp2p-webrtc-star/-/libp2p-webrtc-star-0.21.2.tgz", + "integrity": "sha512-Ax5s/Ih8f5cVAt1RQacokjbzSnvz5+SmW+1bPs22myZ48WcTt8CydHOKBGKpflFZBMHNttPoOY4xgLp95xxuIg==", "dev": true, "requires": { "@hapi/hapi": "^20.0.0", @@ -27230,7 +27099,7 @@ "abortable-iterator": "^3.0.0", "class-is": "^1.1.0", "debug": "^4.2.0", - "err-code": "^2.0.3", + "err-code": "^3.0.1", "ipfs-utils": "^6.0.0", "it-pipe": "^1.1.0", "libp2p-utils": "^0.2.1", @@ -27257,6 +27126,12 @@ "requires": { "ms": "2.1.2" } + }, + "err-code": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/err-code/-/err-code-3.0.1.tgz", + "integrity": "sha512-GiaH0KJUewYok+eeY05IIgjtAe4Yltygk9Wqp1V5yVWLdhf0hYZchRjNIT9bb0mSwRcIusT3cx7PJUf3zEIfUA==", + "dev": true } } }, @@ -28587,9 +28462,9 @@ } }, "node-abi": { - "version": "2.18.0", - "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-2.18.0.tgz", - "integrity": "sha512-yi05ZoiuNNEbyT/xXfSySZE+yVnQW6fxPZuFbLyS1s6b5Kw3HzV2PHOM4XR+nsjzkHxByK+2Wg+yCQbe35l8dw==", + "version": "2.19.3", + "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-2.19.3.tgz", + "integrity": "sha512-9xZrlyfvKhWme2EXFKQhZRp1yNWT/uI1luYPr3sFl+H4keYY4xR+1jO7mvTTijIsHf1M+QDe9uWuKeEpLInIlg==", "dev": true, "requires": { "semver": "^5.4.1" @@ -29649,53 +29524,72 @@ } }, "peer-id": { - "version": "0.14.2", - "resolved": "https://registry.npmjs.org/peer-id/-/peer-id-0.14.2.tgz", - "integrity": "sha512-8iZWaUT7jq8rVyyFZUHYUwFCvhoI5B1Q2MAJjUF9MTf4TsNRQPnod4Mycf2jrK/uXFBN5/9K1NhPoieFyz/PRw==", + "version": "0.14.3", + "resolved": "https://registry.npmjs.org/peer-id/-/peer-id-0.14.3.tgz", + "integrity": "sha512-3ug6gDFWPuzihjjhMC0G/EEyaJaM9JCKPZqvPhwnsbhIUbutbS/MMF8Mb+TdDE1IksOXgCKNmohSZBJ/gFijOg==", "requires": { - "cids": "^1.0.0", + "cids": "^1.1.5", "class-is": "^1.1.0", - "libp2p-crypto": "^0.18.0", + "libp2p-crypto": "^0.19.0", "minimist": "^1.2.5", - "multihashes": "^3.0.1", + "multihashes": "^3.1.1", "protons": "^2.0.0", - "uint8arrays": "^1.1.0" + "uint8arrays": "^2.0.5" }, "dependencies": { - "cids": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/cids/-/cids-1.0.1.tgz", - "integrity": "sha512-A5DvnNMr7ABdP3IWFPEdbpued8Sw2cHu6n4+Hke9MpzEqhQH74Pm6Zk2TB59aNHIuue1Oh/jZi/t0wgISWgOow==", + "libp2p-crypto": { + "version": "0.19.0", + "resolved": "https://registry.npmjs.org/libp2p-crypto/-/libp2p-crypto-0.19.0.tgz", + "integrity": "sha512-w4tduG32px1i6TwekYZBSvizZTvDdMReZkE4DhUkf9IQ8WSqSo98K+6IZaYYM6PzWd5arbcAQQcFCRalJu9Ytw==", "requires": { - "class-is": "^1.1.0", - "multibase": "^3.0.1", - "multicodec": "^2.0.1", - "multihashes": "^3.0.1", - "uint8arrays": "^1.1.0" + "err-code": "^2.0.0", + "is-typedarray": "^1.0.0", + "iso-random-stream": "^1.1.0", + "keypair": "^1.0.1", + "multibase": "^3.0.0", + "multicodec": "^2.0.0", + "multihashing-async": "^2.0.1", + "node-forge": "^0.10.0", + "pem-jwk": "^2.0.0", + "protons": "^2.0.0", + "secp256k1": "^4.0.0", + "uint8arrays": "^1.1.0", + "ursa-optional": "^0.10.1" + }, + "dependencies": { + "uint8arrays": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-1.1.0.tgz", + "integrity": "sha512-cLdlZ6jnFczsKf5IH1gPHTtcHtPGho5r4CvctohmQjw8K7Q3gFdfIGHxSTdTaCKrL4w09SsPRJTqRS0drYeszA==", + "requires": { + "multibase": "^3.0.0", + "web-encoding": "^1.0.2" + } + } } }, "multibase": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/multibase/-/multibase-3.0.1.tgz", - "integrity": "sha512-MRU5WpnSg81/vYO977MweoeUAxBdXl7+F5Af2Es+X6Vcgfk/g/EjIqXTgm3kb+xO3m1Kzr+aIV14oRX7nv5Z9w==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/multibase/-/multibase-3.1.1.tgz", + "integrity": "sha512-kkSd8jWGznDNEC2eDwtnvSGlZeTeEt0+oHieNWUhv8rIi8JU3voIUo02HpJBNOtgmtxT2CPwkElub7Y9kz3nrw==", "requires": { "@multiformats/base-x": "^4.0.1", - "web-encoding": "^1.0.2" + "web-encoding": "^1.0.6" } }, "multicodec": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/multicodec/-/multicodec-2.0.1.tgz", - "integrity": "sha512-YDYeWn9iGa76hOHAyyZa0kbt3tr5FLg1ZXUHrZUJltjnxxdbTIbHnxWLd2zTcMOjdT3QyO+Xs4bQgJUcC2RWUA==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/multicodec/-/multicodec-2.1.0.tgz", + "integrity": "sha512-7AYpK/avswOWvnqQ9/jOkQCS7Fp4aKxw5ojvn5gyK2VQTZz3YVXeLMzoIZDBy745JSfJMXkTS0ptnHci5Mt1mA==", "requires": { - "uint8arrays": "1.0.0", - "varint": "^5.0.0" + "uint8arrays": "1.1.0", + "varint": "^6.0.0" }, "dependencies": { "uint8arrays": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-1.0.0.tgz", - "integrity": "sha512-14tqEVujDREW7YwonSZZwLvo7aFDfX7b6ubvM/U7XvZol+CC/LbhaX/550VlWmhddAL9Wou1sxp0Of3tGqXigg==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-1.1.0.tgz", + "integrity": "sha512-cLdlZ6jnFczsKf5IH1gPHTtcHtPGho5r4CvctohmQjw8K7Q3gFdfIGHxSTdTaCKrL4w09SsPRJTqRS0drYeszA==", "requires": { "multibase": "^3.0.0", "web-encoding": "^1.0.2" @@ -29704,13 +29598,33 @@ } }, "multihashes": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/multihashes/-/multihashes-3.0.1.tgz", - "integrity": "sha512-fFY67WOtb0359IjDZxaCU3gJILlkwkFbxbwrK9Bej5+NqNaYztzLOj8/NgMNMg/InxmhK+Uu8S/U4EcqsHzB7Q==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/multihashes/-/multihashes-3.1.2.tgz", + "integrity": "sha512-AP4IoV/YzkNrfbQKZE3OMPibrmy350OmCd6cJkwyM8oExaXIlOY4UnOOVSQtAEuq/LR01XfXKCESidzZvSwHCQ==", "requires": { - "multibase": "^3.0.0", - "uint8arrays": "^1.0.0", - "varint": "^5.0.0" + "multibase": "^3.1.0", + "uint8arrays": "^2.0.5", + "varint": "^6.0.0" + } + }, + "multihashing-async": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/multihashing-async/-/multihashing-async-2.1.0.tgz", + "integrity": "sha512-FMzLEQEu+y4AgFoboe6peXLDeIZzsjvbBhI/wufLEfNf/Ev917sB4GCjMLO7CP2D9CXT5sjxjoloEODJ/jgyKw==", + "requires": { + "blakejs": "^1.1.0", + "err-code": "^3.0.0", + "js-sha3": "^0.8.0", + "multihashes": "^3.1.2", + "murmurhash3js-revisited": "^3.0.0", + "uint8arrays": "^2.0.5" + }, + "dependencies": { + "err-code": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/err-code/-/err-code-3.0.1.tgz", + "integrity": "sha512-GiaH0KJUewYok+eeY05IIgjtAe4Yltygk9Wqp1V5yVWLdhf0hYZchRjNIT9bb0mSwRcIusT3cx7PJUf3zEIfUA==" + } } }, "protons": { @@ -29722,15 +29636,35 @@ "signed-varint": "^2.0.1", "uint8arrays": "^1.0.0", "varint": "^5.0.0" + }, + "dependencies": { + "uint8arrays": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-1.1.0.tgz", + "integrity": "sha512-cLdlZ6jnFczsKf5IH1gPHTtcHtPGho5r4CvctohmQjw8K7Q3gFdfIGHxSTdTaCKrL4w09SsPRJTqRS0drYeszA==", + "requires": { + "multibase": "^3.0.0", + "web-encoding": "^1.0.2" + } + }, + "varint": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/varint/-/varint-5.0.2.tgz", + "integrity": "sha512-lKxKYG6H03yCZUpAGOPOsMcGxd1RHCu1iKvEHYDPmTyq2HueGhD73ssNBqqQWfvYs04G9iUFRvmAVLW20Jw6ow==" + } } }, - "uint8arrays": { + "varint": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/varint/-/varint-6.0.0.tgz", + "integrity": "sha512-cXEIW6cfr15lFv563k4GuVuW/fiwjknytD37jIOLSdSWuOI6WnO/oKwmP2FQTU2l01LP8/M5TSAJpzUaGe3uWg==" + }, + "web-encoding": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-1.1.0.tgz", - "integrity": "sha512-cLdlZ6jnFczsKf5IH1gPHTtcHtPGho5r4CvctohmQjw8K7Q3gFdfIGHxSTdTaCKrL4w09SsPRJTqRS0drYeszA==", + "resolved": "https://registry.npmjs.org/web-encoding/-/web-encoding-1.1.0.tgz", + "integrity": "sha512-KzYonGdJnZB3qvhK8hKca5qXk/wp+hgwGNTY1TnqtF2CzDzpN8szOC3ejhX9+wbhCq3vQs/TjM8BykS1kor0lQ==", "requires": { - "multibase": "^3.0.0", - "web-encoding": "^1.0.2" + "@zxing/text-encoding": "0.9.0" } } } @@ -30937,16 +30871,16 @@ } }, "prebuild-install": { - "version": "5.3.5", - "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-5.3.5.tgz", - "integrity": "sha512-YmMO7dph9CYKi5IR/BzjOJlRzpxGGVo1EsLSUZ0mt/Mq0HWZIHOKHHcHdT69yG54C9m6i45GpItwRHpk0Py7Uw==", + "version": "5.3.6", + "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-5.3.6.tgz", + "integrity": "sha512-s8Aai8++QQGi4sSbs/M1Qku62PFK49Jm1CbgXklGz4nmHveDq0wzJkg7Na5QbnO1uNH8K7iqx2EQ/mV0MZEmOg==", "dev": true, "requires": { "detect-libc": "^1.0.3", "expand-template": "^2.0.3", "github-from-package": "0.0.0", "minimist": "^1.2.3", - "mkdirp": "^0.5.1", + "mkdirp-classic": "^0.5.3", "napi-build-utils": "^1.0.1", "node-abi": "^2.7.0", "noop-logger": "^0.1.1", @@ -32158,12 +32092,27 @@ } }, "react-i18next": { - "version": "11.7.0", - "resolved": "https://registry.npmjs.org/react-i18next/-/react-i18next-11.7.0.tgz", - "integrity": "sha512-8tvVkpuxQlubcszZON+jmoCgiA9gCZ74OAYli9KChPhETtq8pJsANBTe9KRLRLmX3ubumgvidURWr0VvKz1tww==", + "version": "11.8.8", + "resolved": "https://registry.npmjs.org/react-i18next/-/react-i18next-11.8.8.tgz", + "integrity": "sha512-Z8Daifh+FRpcQsCp48mWQViYSlojv0WiL2bf6e9DOzpfVMDaTT6qsYRbHCjLEeDeEioxoaWHMiWu2JPTW3Ni4w==", "requires": { - "@babel/runtime": "^7.3.1", - "html-parse-stringify2": "2.0.1" + "@babel/runtime": "^7.13.6", + "html-parse-stringify2": "^2.0.1" + }, + "dependencies": { + "@babel/runtime": { + "version": "7.13.7", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.13.7.tgz", + "integrity": "sha512-h+ilqoX998mRVM5FtB5ijRuHUDVt5l3yfoOi2uh18Z/O3hvyaHQ39NpxVkCIG5yFs+mLq/ewFp8Bss6zmWv6ZA==", + "requires": { + "regenerator-runtime": "^0.13.4" + } + }, + "regenerator-runtime": { + "version": "0.13.7", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.7.tgz", + "integrity": "sha512-a54FxoJDIr27pgf7IgeQGxmqUNYrcV338lf/6gH456HZ/PhX+5BcwHXG9ajESmwe6WRO0tAzRUrRmNONWgkrew==" + } } }, "react-identicons": { @@ -38342,9 +38291,9 @@ } }, "unzip-stream": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/unzip-stream/-/unzip-stream-0.3.0.tgz", - "integrity": "sha512-NG1h/MdGIX3HzyqMjyj1laBCmlPYhcO4xEy7gEqqzGiSLw7XqDQCnY4nYSn5XSaH8mQ6TFkaujrO8d/PIZN85A==", + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/unzip-stream/-/unzip-stream-0.3.1.tgz", + "integrity": "sha512-RzaGXLNt+CW+T41h1zl6pGz3EaeVhYlK+rdAap+7DxW5kqsqePO8kRtWPaCiVqdhZc86EctSPVYNix30YOMzmw==", "dev": true, "requires": { "binary": "^0.3.0", diff --git a/package.json b/package.json index 86a49d2fa..1f6502146 100644 --- a/package.json +++ b/package.json @@ -7,6 +7,7 @@ "start:win32": "@powershell -Command $env:REACT_APP_GIT_REV=(git rev-parse --short HEAD); react-scripts start", "start:darwin:linux": "cross-env REACT_APP_GIT_REV=`git rev-parse --short HEAD` react-scripts start", "lint": "eslint src/ test/", + "prebuild": "lol public/locales > src/lib/languages.json", "build": "run-script-os", "build:win32": "@powershell -Command $env:REACT_APP_GIT_REV=(git rev-parse --short HEAD); react-scripts build", "build:darwin:linux": "cross-env REACT_APP_GIT_REV=`git rev-parse --short HEAD` react-scripts build", @@ -39,13 +40,14 @@ "file-extension": "^4.0.5", "filesize": "^6.1.0", "hashlru": "^2.3.0", - "i18next": "^19.8.0", + "i18next": "^19.9.0", "i18next-browser-languagedetector": "^6.0.1", "i18next-chained-backend": "^2.0.1", - "i18next-http-backend": "^1.0.21", - "i18next-icu": "^1.4.2", + "i18next-http-backend": "^1.1.1", + "i18next-icu": "^2.0.0", "i18next-localstorage-backend": "^3.1.2", "internal-nav-helper": "^3.1.0", + "intl-messageformat": "^9.5.1", "ip": "^1.1.5", "ipfs-css": "^1.2.0", "ipfs-geoip": "^6.0.0", @@ -77,7 +79,7 @@ "react-faux-dom": "^4.5.0", "react-helmet": "^5.2.1", "react-hook-form": "^6.0.6", - "react-i18next": "^11.7.0", + "react-i18next": "^11.8.8", "react-identicons": "^1.2.4", "react-joyride": "^2.3.0", "react-loadable": "^5.5.0", @@ -99,6 +101,7 @@ }, "devDependencies": { "@babel/core": "^7.11.1", + "@olizilla/lol": "2.0.0", "@storybook/addon-a11y": "^5.3.19", "@storybook/addon-actions": "^5.3.19", "@storybook/addon-knobs": "^5.3.19", @@ -110,7 +113,7 @@ "babel-eslint": "^10.1.0", "basic-auth": "^2.0.1", "big.js": "^5.2.2", - "bundlesize": "^0.18.0", + "bundlesize": "0.18.1", "cross-env": "^6.0.3", "enzyme": "^3.11.0", "enzyme-adapter-react-16": "^1.15.2", @@ -121,7 +124,7 @@ "eslint-plugin-standard": "^4.0.1", "fake-indexeddb": "^3.1.2", "get-port": "^5.1.1", - "go-ipfs": "0.6.0", + "go-ipfs": "0.8.0", "http-proxy": "^1.18.1", "http-server": "^0.12.3", "ipfs": "^0.54.2", diff --git a/public/locales/en/status.json b/public/locales/en/status.json index 58efe820b..981fd984a 100644 --- a/public/locales/en/status.json +++ b/public/locales/en/status.json @@ -9,8 +9,8 @@ "pieChartLabel": "{count, plural, one {{percent}% ({count} Peer)} other {{percent}% ({count} Peers)}}", "countMore": "...and {count} more", "StatusConnected": { - "paragraph1": "Hosting <0>{repoSize} of files", - "paragraph2": "{count, plural, one {Discovered <0>1 peer} other {Discovered <0>{peersCount} peers}}" + "repoSize": "Hosting {repoSize} of data", + "peersCount": "{peersCount, plural, one {Discovered 1 peer} other {Discovered {peersCount} peers}}" }, "customApiConfig": "Custom JSON configuration", "AskToEnable": { diff --git a/src/components/language-selector/language-modal/LanguageModal.js b/src/components/language-selector/language-modal/LanguageModal.js index 46218b215..1d4852476 100644 --- a/src/components/language-selector/language-modal/LanguageModal.js +++ b/src/components/language-selector/language-modal/LanguageModal.js @@ -1,7 +1,6 @@ import React from 'react' import PropTypes from 'prop-types' import i18n, { localesList } from '../../../i18n' -import { getLanguage } from '../../../lib/i18n' // Components import { Modal, ModalBody, ModalActions } from '../../modal/Modal' @@ -21,10 +20,10 @@ const LanguageModal = ({ t, tReady, onLeave, link, className, ...props }) => {
{ localesList.map((lang) => )}
diff --git a/src/i18n.js b/src/i18n.js index 145323bab..3142b9506 100644 --- a/src/i18n.js +++ b/src/i18n.js @@ -5,38 +5,11 @@ import LocalStorageBackend from 'i18next-localstorage-backend' import HttpBackend from 'i18next-http-backend' import LanguageDetector from 'i18next-browser-languagedetector' -import ar from 'i18next-icu/locale-data/ar' -import ca from 'i18next-icu/locale-data/ca' -import cs from 'i18next-icu/locale-data/cs' -import da from 'i18next-icu/locale-data/da' -import de from 'i18next-icu/locale-data/de' -import en from 'i18next-icu/locale-data/en' -import es from 'i18next-icu/locale-data/es' -import fr from 'i18next-icu/locale-data/fr' -import it from 'i18next-icu/locale-data/it' -import ja from 'i18next-icu/locale-data/ja' -import ko from 'i18next-icu/locale-data/ko' -import nl from 'i18next-icu/locale-data/nl' -import no from 'i18next-icu/locale-data/no' -import pl from 'i18next-icu/locale-data/pl' -import pt from 'i18next-icu/locale-data/pt' -import ro from 'i18next-icu/locale-data/ro' -import ru from 'i18next-icu/locale-data/ru' -import sv from 'i18next-icu/locale-data/sv' -import zh from 'i18next-icu/locale-data/zh' - -const localeData = [ar, ca, cs, da, de, en, es, fr, it, ja, ko, nl, no, pl, pt, ro, ru, sv, zh] - -export const localesList = - // add here the language variants - ['ja-JP', 'ko-KR', 'zh-CN', 'zh-HK', 'zh-TW'] - .concat(localeData.map((locale) => locale[0].locale)) - // add here languages you want to exclude - .filter(item => !['ja', 'ko', 'zh'].includes(item)) - .sort() +import locales from './lib/languages.json' +export const localesList = Object.values(locales) i18n - .use(new ICU({ localeData })) + .use(ICU) .use(Backend) .use(LanguageDetector) .init({ diff --git a/src/lib/languages.json b/src/lib/languages.json index 561b4c20c..9a853a8d7 100644 --- a/src/lib/languages.json +++ b/src/lib/languages.json @@ -39,6 +39,11 @@ "nativeName": "Français", "englishName": "French" }, + "hu": { + "locale": "hu", + "nativeName": "Magyar", + "englishName": "Hungarian" + }, "it": { "locale": "it", "nativeName": "Italiano", diff --git a/src/status/StatusConnected.js b/src/status/StatusConnected.js index af30372c3..362bf2869 100644 --- a/src/status/StatusConnected.js +++ b/src/status/StatusConnected.js @@ -12,21 +12,15 @@ export const StatusConnected = ({ t, peersCount, repoSize }) => {

- ?]} - /> + + {t('StatusConnected.repoSize', { repoSize: humanRepoSize })} + - ?]} - /> + + {t('StatusConnected.peersCount', { peersCount: peersCount.toString() })} +