Skip to content

Commit ed7a435

Browse files
committed
fix: multiple h1s
1 parent df28538 commit ed7a435

File tree

6 files changed

+30
-30
lines changed
  • public/content/translations
    • ja/developers
      • docs/design-and-ux/dex-design-best-practice
      • tutorials
    • zh/developers
      • docs/design-and-ux/dex-design-best-practice
      • tutorials

6 files changed

+30
-30
lines changed

public/content/translations/ja/developers/docs/design-and-ux/dex-design-best-practice/index.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -178,15 +178,15 @@ DeFi初期の頃は、法定通貨換算の価値表示がしばしば欠けて
178178

179179
最終的には、どちらのオプションにも利点と欠点がありますが、トークンを右側に配置するトレンドが見られるのは興味深いです。
180180

181-
# ボタンの動作 {#button-behavior}
181+
## ボタンの動作 {#button-behavior}
182182

183183
承認用の別ボタンは設けないでください。 また、承認のための別クリックも不要です。 ユーザーはスワップを望んでいるので、ボタンには単に「スワップ」と表示し、最初のステップとして承認を開始してください。 モーダルでステッパーを使って進捗を表示するか、シンプルに「取引1/2 - 承認中」という通知を表示することができます。
184184

185185
![A UI with separate buttons for approve and swap](./14.png)
186186

187187
![A UI with one button that says approve](./15.png)
188188

189-
## コンテキストヘルプとしてのボタン {#button-as-contextual-help}
189+
### コンテキストヘルプとしてのボタン {#button-as-contextual-help}
190190

191191
ボタンはアラートとしても活用できます!
192192

@@ -204,7 +204,7 @@ DeFi初期の頃は、法定通貨換算の価値表示がしばしば欠けて
204204

205205
![Error message shown within the main CTA](./17.png)
206206

207-
## Figmaファイルで自作する {#build-your-own-with-this-figma-file}
207+
### Figmaファイルで自作する {#build-your-own-with-this-figma-file}
208208

209209
複数のプロトコルの尽力により、DEXのデザインは大幅に改善されました。 私たちは、ユーザーが必要とする情報や、その表示方法、そしてできるだけスムーズなフローの作り方を理解しています。
210210
この記事がUXの基本原則についてのしっかりとした概要を提供できていれば幸いです。

public/content/translations/ja/developers/tutorials/erc-721-vyper-annotated-code/index.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -614,11 +614,11 @@ def burn(_tokenId: uint256):
614614

615615
トークンの送信が許可されているユーザーは、そのトークンをバーンすることができます。 バーンは、ゼロアドレスへの送信と同じ外見を持ちますが、このゼロアドレスは実際にはこのトークンを受け取りません。 バーンを通じて、このトークンに使用されたすべてのストレージを解放できるため、トランザクションのガス代を軽減することができます。
616616

617-
# コントラクトの使用方法 {#using-contract}
617+
## コントラクトの使用方法 {#using-contract}
618618

619619
Solidityとは異なり、Viperは相続機能を提供しません。 これは、コードをより明確にし、セキュリティを確保しやすくするための意図的な設計上の選択によるものです。 このため、あなた自身がVyperでERC-721コントラクトを作成する際は、[このコントラクト](https://github.com/vyperlang/vyper/blob/master/examples/tokens/ERC721.vy)を用いて修正し、必要なビジネスロジックを実装してください。
620620

621-
## まとめ {#conclusion}
621+
### まとめ {#conclusion}
622622

623623
このコントラクトにつき、最も重要なポイントを以下にまとめました:
624624

public/content/translations/ja/developers/tutorials/waffle-test-simple-smart-contract/index.md

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -25,19 +25,19 @@ published: 2021-02-26
2525
- yarnやnpmなどのパッケージマネージャーを使用したことがある
2626
- スマートコントラクトおよびSolidityのごく基本的な知識を持っている
2727

28-
# はじめに {#getting-started}
28+
## はじめに {#getting-started}
2929

3030
このチュートリアルでは、yarnを使ってテストのセットアップおよび実行をしていますが、npmの方が良ければnpmでも問題ありません。公式のWaffleのドキュメントは、[こちら](https://ethereum-waffle.readthedocs.io/en/latest/index.html)になります。
3131

32-
## 依存関係のインストール {#install-dependencies}
32+
### 依存関係のインストール {#install-dependencies}
3333

3434
プロジェクトに対してethereum-waffleとtypescriptの依存関係を開発環境の依存関係に[追加](https://ethereum-waffle.readthedocs.io/en/latest/getting-started.html#installation)します。
3535

3636
```bash
3737
yarn add --dev ethereum-waffle ts-node typescript @types/jest
3838
```
3939

40-
## スマートコントラクトのコード例 {#example-smart-contract}
40+
### スマートコントラクトのコード例 {#example-smart-contract}
4141

4242
このチュートリアルでは、EtherSplitterというシンプルなスマートコントラクトの例に取り組みます。 このコードでは、誰もがweiを送信でき、それを2つの事前定義された受信者間で均等に分割するだけです。 split関数ではweiの数が偶数でなければなりません。さもないと処理が取り消されます。 両方の受信者に対して、weiの送金を実行し、続いてTransferイベントを発行します。
4343

@@ -67,7 +67,7 @@ contract EtherSplitter {
6767
}
6868
```
6969

70-
## コントラクトのコンパイル {#compile-the-contract}
70+
### コントラクトのコンパイル {#compile-the-contract}
7171

7272
コントラクトを[コンパイル](https://ethereum-waffle.readthedocs.io/en/latest/getting-started.html#compiling-the-contract)するのに、package.jsonファイルに次のエントリを追加します。
7373

@@ -90,7 +90,7 @@ contract EtherSplitter {
9090

9191
`yarn build`を実行してください。 終了すると、`build`ディレクトリに、JSON形式でコンパイルされたEtherSplitterコントラクトが現れます。
9292

93-
## テストの設定 {#test-setup}
93+
### テストの設定 {#test-setup}
9494

9595
Waffleでテストするには ChaiマッチャーとMochaが必要になるため、プロジェクトに[追加](https://ethereum-waffle.readthedocs.io/en/latest/getting-started.html#writing-tests)します。 次のようにscriptの場所に`test`エントリを追加してpackage.jsonファイルを更新してください。
9696

@@ -103,7 +103,7 @@ Waffleでテストするには ChaiマッチャーとMochaが必要になるた
103103

104104
テストを[実行](https://ethereum-waffle.readthedocs.io/en/latest/getting-started.html#running-tests)する場合は、 `yarn test`を実行します。
105105

106-
# テストを実行する {#testing}
106+
## テストを実行する {#testing}
107107

108108
それでは、`test`ディレクトリを作成し、新しいファイル `test\EtherSplitter.test.ts`を作成してください。 以下のスニペットをコピーして、テストファイルに貼り付けてください。
109109

@@ -134,7 +134,7 @@ describe("Ether Splitter", () => {
134134

135135
次に、「splitter」という変数を宣言します。これは、 EtherSplitterコントラクトのモックです。 このモックは、単一のテストを実行する前に`deployContract`メソッドによって作成されます。 当該のメソッドは、最初のパラメータとして渡されたウォレット (この場合は送信者のウォレット) からコントラクトのデプロイメントをシミュレートします。 2番目のパラメータは、テストされるコントラクトのABIとバイトコードです。コンパイルされたEtherSplitterコントラクトのjsonファイルを`build`ディレクトから渡します。 3番目のパラメータは、コントラクトのコンストラクタ引数を持つ配列です。この場合、受信者の2つのアドレスです。
136136

137-
## changeBalances {#changebalances}
137+
### changeBalances {#changebalances}
138138

139139
まず、splitメソッドによって実際に受取人のウォレットの残高が変わるかどうかを確認します。 送信者のアカウントから50weiを分割すると、両方の受信者の残高が25wei増えることが期待されます。 ここで、Waffleの`changeBalances`マッチャーを使います。
140140

@@ -162,7 +162,7 @@ it("Changes account balance", async () => {
162162

163163
次では、weiの各転送後にTransferイベントが発行されたかどうかをテストします。 それでは、Waffleの別のマッチャーに移ります。
164164

165-
## Emit {#emit}
165+
### Emit {#emit}
166166

167167
```ts
168168
it("Emits event on the transfer to the first receiver", async () => {
@@ -180,7 +180,7 @@ it("Emits event on the transfer to the second receiver", async () => {
180180

181181
`emit`マッチャーを使うと、メソッドの呼び出し時にコントラクトがイベントを発行したかどうかを確認できます。 `emit`マッチャーへのパラメーターとして、イベントを発行することが予期されるモックコントラクトとそのイベントの名前を渡します。 この場合、モックコントラクトは`splitter`で、イベント名は`Transfer`です。 また、イベントの発行で引数の正確な値を検証することもできます。その場合、イベントの宣言で期待される数の引数を `withArgs`マッチャーに渡します。 EtherSplitterコントラクトの場合では、送金されるwei単位の金額とともに送信者と受信者のアドレスを渡します。
182182

183-
## revertedWith {#revertedwith}
183+
### revertedWith {#revertedwith}
184184

185185
最後の例として、weiの数が奇数の場合にトランザクションが取り消されるかどうかを確認します。 ここでは、`revertedWith`マッチャーを使います。
186186

@@ -194,7 +194,7 @@ it("Reverts when Vei amount uneven", async () => {
194194

195195
このテストをパスすれば、トランザクションが実際に取り消されたことが保証されます。 ただし、`require`ステートメントで渡したメッセージと、`revertedWith`で期待しているメッセージとが完全に一致している必要があります。 EtherSplitterコントラクトのコードに戻った場合、weiの金額の`require`ステートメントで、「偶数でないwei単位の金額は許可されていません」というメッセージが表示されます。 これは、テストで予期されるメッセージと一致します。 それらが等しくなければ、テストは失敗します。
196196

197-
# おめでとうございます! {#congratulations}
197+
## おめでとうございます! {#congratulations}
198198

199199
Waffleでスマートコントラクトをテストするための最初の大きな一歩を踏み出すことができました。 他のWaffleのチュートリアルについては、以下をご参照ください。
200200

public/content/translations/zh/developers/docs/design-and-ux/dex-design-best-practice/index.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -180,15 +180,15 @@ Figma 工具包也附于本文底部 - 请随意使用,快速制作你自己
180180

181181
总的来说,两种选择各有优缺点,但有趣的是,当前的趋势似乎是将代币放在右边。
182182

183-
# 按钮行为 {#button-behavior}
183+
## 按钮行为 {#button-behavior}
184184

185185
不要有单独的“批准”按钮。 也不要单独点击“批准”。 用户想要交换,只需要点击“交换”按钮,并启动批准来作为第一步。 可以用一个模态,通过计步器显示交易进度,或者显示简单通知“交易 1/2 - 正在批准”。
186186

187187
![包含单独的批准按钮和交换按钮的用户界面](./14.png)
188188

189189
![包含一个批准按钮的用户界面](./15.png)
190190

191-
## 用作上下文帮助的按钮 {#button-as-contextual-help}
191+
### 用作上下文帮助的按钮 {#button-as-contextual-help}
192192

193193
按钮可以起到另一个作用 - 作为警报!
194194

@@ -206,7 +206,7 @@ Figma 工具包也附于本文底部 - 请随意使用,快速制作你自己
206206

207207
![主要行动号召中显示的错误信息](./17.png)
208208

209-
## 使用此 figma 文件构建你自己的设计 {#build-your-own-with-this-figma-file}
209+
### 使用此 figma 文件构建你自己的设计 {#build-your-own-with-this-figma-file}
210210

211211
得益于多个协议的共同作用,去中心化交易所设计已经有了显著改进。 我们知道用户需要哪些信息,应该如何展示这些信息,以及如何使流程尽可能流畅。
212212
希望这篇文章提供了关于用户体验原则的全面概述。

public/content/translations/zh/developers/tutorials/erc-721-vyper-annotated-code/index.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -614,11 +614,11 @@ def burn(_tokenId: uint256):
614614

615615
任何可以转移代币的人都可以销毁它。 虽然销毁代币看起来等同于 转移到零地址,但零地址实际上并没有接收到代币。 这样我们可以释放所有用于代币的 存储,因而可以降低交易的燃料成本。
616616

617-
# 使用此合约 {#using-contract}
617+
## 使用此合约 {#using-contract}
618618

619619
与 Solidity 相比,Vyper 中没有继承。 这种有意而为之的设计选择,是为了使代码 更清晰,从而更容易受保护。 因此,要创建你自己的 Vyper ERC-721 合约,你可以 利用[此合约](https://github.com/vyperlang/vyper/blob/master/examples/tokens/ERC721.vy),并修改 它以实现想要的业务逻辑。
620620

621-
## 总结 {#conclusion}
621+
### 总结 {#conclusion}
622622

623623
回顾一下,下面是此合约中最重要的几点:
624624

public/content/translations/zh/developers/tutorials/waffle-test-simple-smart-contract/index.md

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -25,19 +25,19 @@ published: 2021-02-26
2525
- 你使用过一些包管理器,如 yarn 或 npm
2626
- 你拥有关于智能合约和 Solidity 的非常基础的知识
2727

28-
# 入门指南 {#getting-started}
28+
## 入门指南 {#getting-started}
2929

3030
该教程演示了如何使用 yarn 进行测试设置和运行,但如果你更喜欢使用 npm 也没有问题——我将为你提供官方 Waffle [文档](https://ethereum-waffle.readthedocs.io/en/latest/index.html)的参考链接。
3131

32-
## 安装依赖项 {#install-dependencies}
32+
### 安装依赖项 {#install-dependencies}
3333

3434
将 ethereum-waffle 和 typescript 依赖项[添加](https://ethereum-waffle.readthedocs.io/en/latest/getting-started.html#installation)到你的项目的开发依赖项中。
3535

3636
```bash
3737
yarn add --dev ethereum-waffle ts-node typescript @types/jest
3838
```
3939

40-
## 智能合约示例 {#example-smart-contract}
40+
### 智能合约示例 {#example-smart-contract}
4141

4242
在本教程中,我们将使用一个简单的智能合约示例- EtherSplitter。 它的作用无非是允许任何人发送一些以 wei 为单位的以太币,并平均分配给两个预定义的接收者。 Split 函数需要 wei 的数量是偶数,否则会回滚。 对于两个接收者,它都会执行 wei 转账,然后触发 Transfer 转账事件。
4343

@@ -67,7 +67,7 @@ contract EtherSplitter {
6767
}
6868
```
6969

70-
## 编译合约 {#compile-the-contract}
70+
### 编译合约 {#compile-the-contract}
7171

7272
[编译](https://ethereum-waffle.readthedocs.io/en/latest/getting-started.html#compiling-the-contract)该合约,请将以下条目添加到 package.json 文件中:
7373

@@ -90,7 +90,7 @@ contract EtherSplitter {
9090

9191
运行 `yarn build`。 作为结果,将出现 `build` 目录,并包含以 JSON 格式编译的 EtherSplitter 合约。
9292

93-
## 测试设置 {#test-setup}
93+
### 测试设置 {#test-setup}
9494

9595
使用 Waffle 进行测试需要使用 Chai 匹配器和 Mocha,因此你需要将它们[添加](https://ethereum-waffle.readthedocs.io/en/latest/getting-started.html#writing-tests)到你的项目中。 请更新你的 package.json 文件,在 scripts 部分添加 `test` 条目:
9696

@@ -103,7 +103,7 @@ contract EtherSplitter {
103103

104104
如果你想要[执行](https://ethereum-waffle.readthedocs.io/en/latest/getting-started.html#running-tests)你的测试,只需要运行 `yarn test`
105105

106-
# 测试 {#testing}
106+
## 测试 {#testing}
107107

108108
现在创建 `test` 目录,并创建一个新文件 `test\EtherSplitter.test.ts`。 复制下面的代码片段,并粘贴到我们的测试文件中。
109109

@@ -134,7 +134,7 @@ describe("Ether Splitter", () => {
134134

135135
下一步,我们声明一个名为“splitter”的变量 - 这是我们的模拟 EtherSplitter 合约。 它在每次执行单个测试之前通过 `deployContract` 方法创建。 这个方法模拟了从钱包(作为第一个参数进行传递,在我们的例子中是发送者的钱包)部署合约的过程。 第二个参数是被测试合约的 ABI 和字节码,我们传入了从 `build` 目录中编译的 EtherSplitter 合约的 JSON 文件。 第三个参数是一个数组,包含合约的构造函数参数,在我们的例子中,它是接收者的两个地址。
136136

137-
## changeBalances {#changebalances}
137+
### changeBalances {#changebalances}
138138

139139
首先,我们将检查 split 方法是否确实更改了接收者钱包的余额。 如果我们从发送者帐户中拆分 50 wei,我们预计两个接收者的余额都会增加 25 wei。 我们将使用 Waffle 的 `changeBalances` 匹配器:
140140

@@ -162,7 +162,7 @@ it("Changes account balance", async () => {
162162

163163
接下来,我们将测试是否在每次 wei 转账后触发了 Transfer 转账事件。 我们将转向 Waffle 中的另一个匹配器:
164164

165-
## Emit {#emit}
165+
### Emit {#emit}
166166

167167
```ts
168168
it("Emits event on the transfer to the first receiver", async () => {
@@ -180,7 +180,7 @@ it("Emits event on the transfer to the second receiver", async () => {
180180

181181
`emit` 匹配器允许我们检查合约在调用方法时是否触发了事件。 作为 `emit` 匹配器的参数,我们提供我们预测将触发事件的模拟合约,以及该事件的名称。 在我们的例子中,模拟合约是 `splitter`,事件名称为 `Transfer`。 我们还可以验证事件触发时使用的具体参数值 - 我们向 `withArgs` 匹配器传递的参数数量应该与我们事件声明所期望的参数数量相同。 对于 EtherSplitter 合约,我们需要传递发送者和接收者的地址,以及转移的 wei 数量作为参数。
182182

183-
## revertedWith {#revertedwith}
183+
### revertedWith {#revertedwith}
184184

185185
作为最后一个例子,我们将检查如果 wei 数量拆分不均匀时是否回滚了交易。 我们将使用 `revertedWith` 匹配器:
186186

@@ -194,7 +194,7 @@ it("Reverts when Vei amount uneven", async () => {
194194

195195
如果测试通过,这将确保该交易确实已被回滚。 然而,在 `require` 语句中传递的消息和我们在 `revertedWith` 中期望的消息之间也必须完全匹配。 如果我们回到 EtherSplitter 合约的代码中,在关于 wei 数量的 `require` 语句中,我们提供了这样的信息:“Uneven wei amount not allowed”(不允许 wei 数量不均匀)。 这与我们在测试中期望的消息相匹配。 如果它们不相等,则测试将失败。
196196

197-
# 恭喜你! {#congratulations}
197+
## 恭喜你! {#congratulations}
198198

199199
你已经迈出了使用 Waffle 测试智能合约的第一步! 你可能对其它的 Waffle 教程感兴趣:
200200

0 commit comments

Comments
 (0)