Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Ukrainian translation #679

Open
wants to merge 8 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
2 changes: 1 addition & 1 deletion client/src/constants.js
Original file line number Diff line number Diff line change
Expand Up @@ -196,4 +196,4 @@ export const ALIAS_PATH = "https://raw.githubusercontent.com/OpenZeppelin/ethern

export const getLeaderboardPath = (network) => {
return `https://raw.githubusercontent.com/OpenZeppelin/ethernaut-leaderboard/update/boards/networkleaderboards/${network}LeaderBoard.json`
}
}
7 changes: 4 additions & 3 deletions client/src/containers/Header.js
Original file line number Diff line number Diff line change
Expand Up @@ -232,6 +232,7 @@ class Header extends React.Component {
en: strings.english,
es: strings.spanish,
pt_br: strings.portuguese,
ua: strings.ukrainian,
ja: strings.japanese,
zh_cn: strings.chinese_simplified,
zh_tw: strings.chinese_traditional,
Expand All @@ -240,7 +241,7 @@ class Header extends React.Component {
ar: strings.arabic,
tr: strings.turkish,
};

const ddOpen = Boolean(this.state.multiDDOpen);
return (
<div onClick={() => this.closeDropdown()}>
Expand Down Expand Up @@ -319,11 +320,11 @@ class Header extends React.Component {
<Link onClick={() => this.toggleDropdownState()}
to={constants.PATH_LEADERBOARD}>
<div
className="element-in-row filled-icon">
className="element-in-row filled-icon">
<LeaderIcon />
</div>
</Link>

)}
<input
onClick={() => {
Expand Down
1 change: 1 addition & 0 deletions client/src/gamedata/ar/strings.json
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@
"english": "English",
"arabic": "عربي",
"spanish": "Español",
"ukrainian": "Українська",
"portuguese": "Português",
"japanese": "日本語",
"turkish": "Türkçe",
Expand Down
1 change: 1 addition & 0 deletions client/src/gamedata/en/strings.json
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@
"english": "English",
"arabic": "عربي",
"spanish": "Español",
"ukrainian": "Українська",
"portuguese": "Português",
"japanese": "日本語",
"turkish": "Türkçe",
Expand Down
1 change: 1 addition & 0 deletions client/src/gamedata/es/strings.json
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@
"english": "English",
"arabic": "عربي",
"spanish": "Español",
"ukrainian": "Українська",
"portuguese": "Português",
"japanese": "日本語",
"turkish": "Türkçe",
Expand Down
1 change: 1 addition & 0 deletions client/src/gamedata/fr/strings.json
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@
"english": "English",
"arabic": "عربي",
"spanish": "Español",
"ukrainian": "Українська",
"portuguese": "Português",
"japanese": "日本語",
"turkish": "Türkçe",
Expand Down
1 change: 1 addition & 0 deletions client/src/gamedata/ja/strings.json
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@
"english": "English",
"arabic": "عربي",
"spanish": "Español",
"ukrainian": "Українська",
"portuguese": "Português",
"japanese": "日本語",
"turkish": "Türkçe",
Expand Down
1 change: 1 addition & 0 deletions client/src/gamedata/pt_br/strings.json
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@
"english": "English",
"arabic": "عربي",
"spanish": "Español",
"ukrainian": "Українська",
"portuguese": "Português",
"japanese": "日本語",
"turkish": "Türkçe",
Expand Down
1 change: 1 addition & 0 deletions client/src/gamedata/ru/strings.json
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@
"english": "English",
"arabic": "عربي",
"spanish": "Español",
"ukrainian": "Українська",
"portuguese": "Português",
"japanese": "日本語",
"turkish": "Türkçe",
Expand Down
1 change: 1 addition & 0 deletions client/src/gamedata/tr/strings.json
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@
"english": "English",
"arabic": "عربي",
"spanish": "Español",
"ukrainian": "Українська",
"portuguese": "Português",
"japanese": "日本語",
"turkish": "Türkçe",
Expand Down
7 changes: 7 additions & 0 deletions client/src/gamedata/ua/descriptions/levels/aliencodex.md
boivlad marked this conversation as resolved.
Show resolved Hide resolved
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
Ви виявили контракт інопланетян. Претендуйте на власність, щоб завершити рівень.

&nbsp;
Речі, які можуть допомогти
* Розуміння, як працює зберігання масивів
* Розуміння [специфікацій ABI](https://solidity.readthedocs.io/en/v0.4.21/abi-spec.html)
* Використання дуже `підступного` підходу
boivlad marked this conversation as resolved.
Show resolved Hide resolved
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
Цей рівень використовує той факт, що EVM не перевіряє довжину масиву, кодовану ABI, відносно його реального вмісту.

Додатково, він використовує арифметичне недолік довжини масиву, розширюючи межі масиву до всієї області зберігання `2^256`. Потім користувач може змінювати усе зберігання контракту.

Обидва вразливості надихнуті [конкурсом підступного кодування 2017 року](https://medium.com/@weka/announcing-the-winners-of-the-first-underhanded-solidity-coding-contest-282563a87079)
5 changes: 5 additions & 0 deletions client/src/gamedata/ua/descriptions/levels/coinflip.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
Це гра в підкидання монети, де вам потрібно збільшувати вашу переможну серію, вгадуючи результат підкидання монети. Щоб завершити цей рівень, вам потрібно використовувати свої екстрасенсорні здібності, щоб вгадати правильний результат 10 разів поспіль.

&nbsp;
Речі, які можуть допомогти
* Перегляньте сторінку ["?"](https://ethernaut.openzeppelin.com/help) в меню в правому верхньому куті, розділ "По ту сторону консолі"
boivlad marked this conversation as resolved.
Show resolved Hide resolved
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
Генерація випадкових чисел у Solidity може бути складною. Наразі не існує рідного способу їх генерації, і все, що ви використовуєте в розумних контрактах, є публічно видимим, включаючи локальні змінні та змінні стану, позначені як приватні. Також майнери мають контроль над такими речами, як блокхеши, часові мітки, та включення певних транзакцій - що дозволяє їм зміщувати ці значення на свою користь.

Щоб отримати криптографічно доведені випадкові числа, ви можете використовувати [Chainlink VRF](https://docs.chain.link/docs/get-a-random-number), який використовує оракул, токен LINK, та контракт на блокчейні для перевірки того, що число дійсно випадкове.

Деякі інші варіанти включають використання заголовків блоків Bitcoin (перевірених через [BTC Relay](http://btcrelay.org)), [RANDAO](https://github.com/randao/randao), або [Oraclize](http://www.oraclize.it/)).