@ocap/client 1.25.5 → 1.26.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +77 -79
- package/dist/base.js +2 -2
- package/dist/base.js.map +1 -1
- package/dist/bundle.js +1 -1
- package/dist/extension.js +4 -4
- package/dist/extension.js.map +1 -1
- package/dist/report.html +2 -2
- package/docs/api-reference-client-methods.ja.md +38 -38
- package/docs/api-reference-client-methods.zh-TW.md +47 -47
- package/docs/api-reference-client-methods.zh.md +34 -34
- package/docs/api-reference-data-types.ja.md +20 -20
- package/docs/api-reference-data-types.zh-TW.md +17 -17
- package/docs/api-reference-data-types.zh.md +24 -24
- package/docs/api-reference-low-level-api.ja.md +49 -49
- package/docs/api-reference-low-level-api.zh-TW.md +48 -48
- package/docs/api-reference-low-level-api.zh.md +43 -43
- package/docs/api-reference-query-mutation-methods.ja.md +85 -85
- package/docs/api-reference-query-mutation-methods.zh-TW.md +140 -140
- package/docs/api-reference-query-mutation-methods.zh.md +141 -141
- package/docs/api-reference-transaction-helpers.ja.md +120 -120
- package/docs/api-reference-transaction-helpers.zh-TW.md +119 -119
- package/docs/api-reference-transaction-helpers.zh.md +153 -153
- package/docs/api-reference.ja.md +6 -6
- package/docs/api-reference.zh-TW.md +5 -5
- package/docs/api-reference.zh.md +8 -8
- package/docs/core-concepts-client-architecture.ja.md +26 -26
- package/docs/core-concepts-client-architecture.zh-TW.md +34 -34
- package/docs/core-concepts-client-architecture.zh.md +26 -26
- package/docs/core-concepts-event-subscriptions.ja.md +29 -29
- package/docs/core-concepts-event-subscriptions.zh-TW.md +23 -23
- package/docs/core-concepts-event-subscriptions.zh.md +29 -29
- package/docs/core-concepts-gas-payment.ja.md +27 -27
- package/docs/core-concepts-gas-payment.zh-TW.md +28 -28
- package/docs/core-concepts-gas-payment.zh.md +32 -32
- package/docs/core-concepts-transaction-lifecycle.ja.md +40 -40
- package/docs/core-concepts-transaction-lifecycle.zh-TW.md +43 -43
- package/docs/core-concepts-transaction-lifecycle.zh.md +49 -49
- package/docs/core-concepts.ja.md +7 -7
- package/docs/core-concepts.zh-TW.md +6 -6
- package/docs/core-concepts.zh.md +7 -7
- package/docs/getting-started-basic-usage.ja.md +24 -24
- package/docs/getting-started-basic-usage.zh-TW.md +28 -28
- package/docs/getting-started-basic-usage.zh.md +24 -24
- package/docs/getting-started-installation.ja.md +13 -13
- package/docs/getting-started-installation.zh-TW.md +9 -9
- package/docs/getting-started-installation.zh.md +15 -15
- package/docs/getting-started.ja.md +5 -5
- package/docs/getting-started.zh-TW.md +6 -6
- package/docs/getting-started.zh.md +6 -7
- package/docs/how-to-guides-delegate-permissions.ja.md +21 -21
- package/docs/how-to-guides-delegate-permissions.zh-TW.md +20 -21
- package/docs/how-to-guides-delegate-permissions.zh.md +18 -18
- package/docs/how-to-guides-manage-accounts.ja.md +21 -21
- package/docs/how-to-guides-manage-accounts.zh-TW.md +23 -23
- package/docs/how-to-guides-manage-accounts.zh.md +17 -17
- package/docs/how-to-guides-manage-assets.ja.md +137 -60
- package/docs/how-to-guides-manage-assets.md +77 -0
- package/docs/how-to-guides-manage-assets.zh-TW.md +116 -39
- package/docs/how-to-guides-manage-assets.zh.md +142 -65
- package/docs/how-to-guides-manage-tokens.ja.md +47 -47
- package/docs/how-to-guides-manage-tokens.zh-TW.md +49 -49
- package/docs/how-to-guides-manage-tokens.zh.md +34 -34
- package/docs/how-to-guides-stake-tokens-and-assets.ja.md +56 -56
- package/docs/how-to-guides-stake-tokens-and-assets.zh-TW.md +55 -55
- package/docs/how-to-guides-stake-tokens-and-assets.zh.md +51 -51
- package/docs/how-to-guides-transfer-tokens-and-nfts.ja.md +45 -45
- package/docs/how-to-guides-transfer-tokens-and-nfts.zh-TW.md +46 -46
- package/docs/how-to-guides-transfer-tokens-and-nfts.zh.md +37 -37
- package/docs/how-to-guides.ja.md +8 -8
- package/docs/how-to-guides.zh-TW.md +4 -4
- package/docs/how-to-guides.zh.md +6 -6
- package/docs/overview.ja.md +15 -15
- package/docs/overview.zh-TW.md +14 -14
- package/docs/overview.zh.md +12 -12
- package/lib/base.js +2 -2
- package/lib/base.js.map +1 -1
- package/lib/extension.js +4 -4
- package/lib/extension.js.map +1 -1
- package/package.json +15 -15
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
# 高レベル
|
|
1
|
+
# 高レベルAPI
|
|
2
2
|
|
|
3
|
-
トランザクションヘルパーは、OCAP Client
|
|
3
|
+
トランザクションヘルパーは、OCAP Client に組み込まれた高レベル関数であり、一般的なトランザクションの作成と署名の複雑さを抽象化します。トランザクションオブジェクトを手動で構築する代わりに、アセットの作成、トークンの転送、ステーキング、アトミックスワップの実行などのワークフローに、これらの便利なメソッドを使用できます。これらのヘルパーは、トランザクション構造が正しいことを保証し、開発プロセスを大幅に簡素化します。
|
|
4
4
|
|
|
5
|
-
基盤となるトランザクションライフサイクルの詳細については、[コアコンセプト:トランザクションライフサイクル](./core-concepts-transaction-lifecycle.md)
|
|
5
|
+
基盤となるトランザクションライフサイクルの詳細については、[コアコンセプト:トランザクションライフサイクル](./core-concepts-transaction-lifecycle.md)を参照してください。
|
|
6
6
|
|
|
7
7
|
---
|
|
8
8
|
|
|
@@ -25,28 +25,28 @@
|
|
|
25
25
|
|
|
26
26
|
**例**
|
|
27
27
|
|
|
28
|
-
```javascript AccountMigrateTxを送信 icon=logos:javascript
|
|
28
|
+
```javascript AccountMigrateTx を送信 icon=logos:javascript
|
|
29
29
|
const txHash = await client.migrateAccount({
|
|
30
30
|
from: oldWallet,
|
|
31
31
|
to: newWallet,
|
|
32
32
|
});
|
|
33
|
-
console.log('
|
|
33
|
+
console.log('Migration transaction hash:', txHash);
|
|
34
34
|
```
|
|
35
35
|
|
|
36
36
|
### delegate
|
|
37
37
|
|
|
38
|
-
|
|
38
|
+
別のアカウント(デリゲート先)がデリゲーター(委任者)に代わって特定の種類のトランザクションを送信することを承認します。これは、安全でサンドボックス化された権限を作成するための強力な機能です。
|
|
39
39
|
|
|
40
40
|
**パラメータ**
|
|
41
41
|
|
|
42
42
|
<x-field-group>
|
|
43
43
|
<x-field data-name="from" data-type="WalletObject" data-required="true" data-desc="権限を付与するデリゲーターのウォレット。"></x-field>
|
|
44
|
-
<x-field data-name="to" data-type="WalletObject" data-required="true" data-desc="
|
|
45
|
-
<x-field data-name="privileges" data-type="array" data-required="true" data-desc="
|
|
46
|
-
<x-field data-name="typeUrl" data-type="string" data-required="true" data-desc="許可されるトランザクションのタイプURL
|
|
47
|
-
<x-field data-name="limit" data-type="object" data-required="false" data-desc="
|
|
48
|
-
<x-field data-name="tokens" data-type="array" data-desc="
|
|
49
|
-
<x-field data-name="assets" data-type="array" data-desc="
|
|
44
|
+
<x-field data-name="to" data-type="WalletObject" data-required="true" data-desc="権限を受け取るデリゲート先のウォレット。"></x-field>
|
|
45
|
+
<x-field data-name="privileges" data-type="array" data-required="true" data-desc="許可されるアクションを指定する権限オブジェクトの配列。">
|
|
46
|
+
<x-field data-name="typeUrl" data-type="string" data-required="true" data-desc="許可されるトランザクションのタイプURL(例:'fg:t:transfer_v2')。"></x-field>
|
|
47
|
+
<x-field data-name="limit" data-type="object" data-required="false" data-desc="デリゲーションに対するオプションの制限。">
|
|
48
|
+
<x-field data-name="tokens" data-type="array" data-desc="特定のファンジブルトークンに対する制限。"></x-field>
|
|
49
|
+
<x-field data-name="assets" data-type="array" data-desc="特定のアセット(NFT)に対する制限。"></x-field>
|
|
50
50
|
</x-field>
|
|
51
51
|
</x-field>
|
|
52
52
|
</x-field-group>
|
|
@@ -57,7 +57,7 @@ console.log('移行トランザクションハッシュ:', txHash);
|
|
|
57
57
|
|
|
58
58
|
**例**
|
|
59
59
|
|
|
60
|
-
```javascript DelegateTxを送信 icon=logos:javascript
|
|
60
|
+
```javascript DelegateTx を送信 icon=logos:javascript
|
|
61
61
|
const [txHash, delegateAddress] = await client.delegate({
|
|
62
62
|
from: userWallet,
|
|
63
63
|
to: appWallet,
|
|
@@ -67,21 +67,21 @@ const [txHash, delegateAddress] = await client.delegate({
|
|
|
67
67
|
},
|
|
68
68
|
],
|
|
69
69
|
});
|
|
70
|
-
console.log('
|
|
71
|
-
console.log('
|
|
70
|
+
console.log('Delegation tx hash:', txHash);
|
|
71
|
+
console.log('Delegate address:', delegateAddress);
|
|
72
72
|
```
|
|
73
73
|
|
|
74
74
|
### revokeDelegate
|
|
75
75
|
|
|
76
|
-
|
|
76
|
+
以前に付与された権限をデリゲート先から取り消します。
|
|
77
77
|
|
|
78
78
|
**パラメータ**
|
|
79
79
|
|
|
80
80
|
<x-field-group>
|
|
81
81
|
<x-field data-name="from" data-type="WalletObject" data-required="true" data-desc="デリゲーターのウォレット。"></x-field>
|
|
82
|
-
<x-field data-name="to" data-type="WalletObject" data-required="true" data-desc="
|
|
82
|
+
<x-field data-name="to" data-type="WalletObject" data-required="true" data-desc="デリゲート先のウォレット。"></x-field>
|
|
83
83
|
<x-field data-name="privileges" data-type="array" data-required="true" data-desc="取り消す権限を指定する権限オブジェクトの配列。">
|
|
84
|
-
<x-field data-name="typeUrl" data-type="string" data-required="true" data-desc="取り消すトランザクションのタイプURL
|
|
84
|
+
<x-field data-name="typeUrl" data-type="string" data-required="true" data-desc="取り消すトランザクションのタイプURL(例:'fg:t:transfer_v2')。"></x-field>
|
|
85
85
|
</x-field>
|
|
86
86
|
</x-field-group>
|
|
87
87
|
|
|
@@ -91,69 +91,69 @@ console.log('デリゲートアドレス:', delegateAddress);
|
|
|
91
91
|
|
|
92
92
|
**例**
|
|
93
93
|
|
|
94
|
-
```javascript RevokeDelegateTxを送信 icon=logos:javascript
|
|
94
|
+
```javascript RevokeDelegateTx を送信 icon=logos:javascript
|
|
95
95
|
const txHash = await client.revokeDelegate({
|
|
96
96
|
from: userWallet,
|
|
97
97
|
to: appWallet,
|
|
98
98
|
privileges: ['fg:t:transfer_v2'],
|
|
99
99
|
});
|
|
100
|
-
console.log('
|
|
100
|
+
console.log('Revocation tx hash:', txHash);
|
|
101
101
|
```
|
|
102
102
|
|
|
103
103
|
---
|
|
104
104
|
|
|
105
|
-
##
|
|
105
|
+
## アセット (NFT) 管理
|
|
106
106
|
|
|
107
107
|
### createAsset
|
|
108
108
|
|
|
109
|
-
|
|
109
|
+
ブロックチェーン上に新しいアセット(非代替性トークン)を作成します。
|
|
110
110
|
|
|
111
111
|
**パラメータ**
|
|
112
112
|
|
|
113
113
|
<x-field-group>
|
|
114
|
-
<x-field data-name="moniker" data-type="string" data-required="true" data-desc="
|
|
115
|
-
<x-field data-name="data" data-type="object" data-required="true" data-desc="
|
|
116
|
-
<x-field data-name="wallet" data-type="WalletObject" data-required="true" data-desc="
|
|
117
|
-
<x-field data-name="parent" data-type="string" data-required="false" data-desc="
|
|
114
|
+
<x-field data-name="moniker" data-type="string" data-required="true" data-desc="アセットの短く、人間が読める名前。"></x-field>
|
|
115
|
+
<x-field data-name="data" data-type="object" data-required="true" data-desc="アセットのメタデータを含むJSONオブジェクト。"></x-field>
|
|
116
|
+
<x-field data-name="wallet" data-type="WalletObject" data-required="true" data-desc="アセットの初期所有者のウォレット。"></x-field>
|
|
117
|
+
<x-field data-name="parent" data-type="string" data-required="false" data-desc="親アセットのアドレス。階層的なリンクを確立します。"></x-field>
|
|
118
118
|
<x-field data-name="ttl" data-type="number" data-required="false" data-default="0" data-desc="最初の消費後の生存時間(秒単位)。"></x-field>
|
|
119
|
-
<x-field data-name="readonly" data-type="boolean" data-required="false" data-default="false" data-desc="true
|
|
120
|
-
<x-field data-name="transferrable" data-type="boolean" data-required="false" data-default="true" data-desc="true
|
|
121
|
-
<x-field data-name="display" data-type="object" data-required="false" data-desc="
|
|
122
|
-
<x-field data-name="endpoint" data-type="object" data-required="false" data-desc="
|
|
119
|
+
<x-field data-name="readonly" data-type="boolean" data-required="false" data-default="false" data-desc="trueの場合、アセットは作成後に更新できません。"></x-field>
|
|
120
|
+
<x-field data-name="transferrable" data-type="boolean" data-required="false" data-default="true" data-desc="trueの場合、アセットは別のアカウントに転送できます。"></x-field>
|
|
121
|
+
<x-field data-name="display" data-type="object" data-required="false" data-desc="アセット表示メタデータ用のオブジェクト。"></x-field>
|
|
122
|
+
<x-field data-name="endpoint" data-type="object" data-required="false" data-desc="アセットエンドポイントメタデータ用のオブジェクト。"></x-field>
|
|
123
123
|
<x-field data-name="tags" data-type="string[]" data-required="false" data-desc="分類用のタグの配列。"></x-field>
|
|
124
|
-
<x-field data-name="delegator" data-type="string" data-required="false" data-desc="
|
|
124
|
+
<x-field data-name="delegator" data-type="string" data-required="false" data-desc="トランザクションがデリゲート先によって送信される場合の、デリゲーターのアドレス。"></x-field>
|
|
125
125
|
</x-field-group>
|
|
126
126
|
|
|
127
127
|
**戻り値**
|
|
128
128
|
|
|
129
|
-
<x-field data-name="result" data-type="Promise<[string, string]>" data-desc="
|
|
129
|
+
<x-field data-name="result" data-type="Promise<[string, string]>" data-desc="トランザクションハッシュと新しく作成されたアセットのアドレスを含む配列。"></x-field>
|
|
130
130
|
|
|
131
131
|
**例**
|
|
132
132
|
|
|
133
|
-
```javascript CreateAssetTxを送信 icon=logos:javascript
|
|
133
|
+
```javascript CreateAssetTx を送信 icon=logos:javascript
|
|
134
134
|
const [txHash, assetAddress] = await client.createAsset({
|
|
135
|
-
moniker: '
|
|
135
|
+
moniker: 'My First NFT',
|
|
136
136
|
data: {
|
|
137
137
|
typeUrl: 'json',
|
|
138
|
-
value: { name: '
|
|
138
|
+
value: { name: 'Digital Collectible', description: 'A unique item.' },
|
|
139
139
|
},
|
|
140
140
|
wallet: userWallet,
|
|
141
141
|
});
|
|
142
|
-
console.log('
|
|
143
|
-
console.log('
|
|
142
|
+
console.log('Create asset tx hash:', txHash);
|
|
143
|
+
console.log('New asset address:', assetAddress);
|
|
144
144
|
```
|
|
145
145
|
|
|
146
146
|
### updateAsset
|
|
147
147
|
|
|
148
|
-
|
|
148
|
+
既存の読み取り専用でないアセットの `moniker` と `data` フィールドを更新します。
|
|
149
149
|
|
|
150
150
|
**パラメータ**
|
|
151
151
|
|
|
152
152
|
<x-field-group>
|
|
153
|
-
<x-field data-name="address" data-type="string" data-required="true" data-desc="
|
|
154
|
-
<x-field data-name="moniker" data-type="string" data-required="true" data-desc="
|
|
155
|
-
<x-field data-name="data" data-type="object" data-required="true" data-desc="
|
|
156
|
-
<x-field data-name="wallet" data-type="WalletObject" data-required="true" data-desc="
|
|
153
|
+
<x-field data-name="address" data-type="string" data-required="true" data-desc="更新するアセットのアドレス。"></x-field>
|
|
154
|
+
<x-field data-name="moniker" data-type="string" data-required="true" data-desc="アセットの新しいモニカー。"></x-field>
|
|
155
|
+
<x-field data-name="data" data-type="object" data-required="true" data-desc="アセットの新しいJSONデータオブジェクト。"></x-field>
|
|
156
|
+
<x-field data-name="wallet" data-type="WalletObject" data-required="true" data-desc="アセットの現在の所有者のウォレット。"></x-field>
|
|
157
157
|
</x-field-group>
|
|
158
158
|
|
|
159
159
|
**戻り値**
|
|
@@ -162,22 +162,22 @@ console.log('新しい資産アドレス:', assetAddress);
|
|
|
162
162
|
|
|
163
163
|
**例**
|
|
164
164
|
|
|
165
|
-
```javascript UpdateAssetTxを送信 icon=logos:javascript
|
|
165
|
+
```javascript UpdateAssetTx を送信 icon=logos:javascript
|
|
166
166
|
const txHash = await client.updateAsset({
|
|
167
167
|
address: 'z3g...',
|
|
168
|
-
moniker: '
|
|
168
|
+
moniker: 'Updated NFT Name',
|
|
169
169
|
data: {
|
|
170
170
|
typeUrl: 'json',
|
|
171
|
-
value: { name: '
|
|
171
|
+
value: { name: 'Updated Collectible', description: 'Now with more features!' },
|
|
172
172
|
},
|
|
173
173
|
wallet: userWallet,
|
|
174
174
|
});
|
|
175
|
-
console.log('
|
|
175
|
+
console.log('Update asset tx hash:', txHash);
|
|
176
176
|
```
|
|
177
177
|
|
|
178
178
|
### createAssetFactory
|
|
179
179
|
|
|
180
|
-
|
|
180
|
+
アセットファクトリーを作成します。これは、一貫した構造を持つ複数の新しいアセットをミントするためのテンプレートとして機能します。
|
|
181
181
|
|
|
182
182
|
**パラメータ**
|
|
183
183
|
|
|
@@ -185,10 +185,10 @@ console.log('資産更新トランザクションハッシュ:', txHash);
|
|
|
185
185
|
<x-field data-name="factory" data-type="object" data-required="true" data-desc="ファクトリーの設定を含むオブジェクト。">
|
|
186
186
|
<x-field data-name="name" data-type="string" data-required="true" data-desc="ファクトリーの名前。"></x-field>
|
|
187
187
|
<x-field data-name="description" data-type="string" data-required="true" data-desc="ファクトリーの説明。"></x-field>
|
|
188
|
-
<x-field data-name="limit" data-type="number" data-required="false" data-default="0" data-desc="
|
|
188
|
+
<x-field data-name="limit" data-type="number" data-required="false" data-default="0" data-desc="ミントできるアセットの最大数(0は無制限)。"></x-field>
|
|
189
189
|
<x-field data-name="trustedIssuers" data-type="string[]" data-required="false" data-desc="このファクトリーからミントすることが許可されているウォレットアドレスのリスト。"></x-field>
|
|
190
190
|
<x-field data-name="input" data-type="object" data-required="true" data-desc="ミントに必要な入力を定義します。"></x-field>
|
|
191
|
-
<x-field data-name="output" data-type="object" data-required="true" data-desc="
|
|
191
|
+
<x-field data-name="output" data-type="object" data-required="true" data-desc="ミントされたアセットの構造を定義します。多くの場合、テンプレートを使用します。"></x-field>
|
|
192
192
|
</x-field>
|
|
193
193
|
<x-field data-name="wallet" data-type="WalletObject" data-required="true" data-desc="ファクトリーを所有するウォレット。"></x-field>
|
|
194
194
|
</x-field-group>
|
|
@@ -199,10 +199,10 @@ console.log('資産更新トランザクションハッシュ:', txHash);
|
|
|
199
199
|
|
|
200
200
|
**例**
|
|
201
201
|
|
|
202
|
-
```javascript CreateFactoryTxを送信 icon=logos:javascript
|
|
202
|
+
```javascript CreateFactoryTx を送信 icon=logos:javascript
|
|
203
203
|
const factoryConfig = {
|
|
204
|
-
name: '
|
|
205
|
-
description: '
|
|
204
|
+
name: 'Ticket Factory',
|
|
205
|
+
description: 'Mints event tickets',
|
|
206
206
|
limit: 1000,
|
|
207
207
|
input: { ... },
|
|
208
208
|
output: { ... },
|
|
@@ -212,19 +212,19 @@ const [txHash, factoryAddress] = await client.createAssetFactory({
|
|
|
212
212
|
factory: factoryConfig,
|
|
213
213
|
wallet: eventCreatorWallet,
|
|
214
214
|
});
|
|
215
|
-
console.log('
|
|
216
|
-
console.log('
|
|
215
|
+
console.log('Create factory tx hash:', txHash);
|
|
216
|
+
console.log('New factory address:', factoryAddress);
|
|
217
217
|
```
|
|
218
218
|
|
|
219
219
|
### acquireAsset
|
|
220
220
|
|
|
221
|
-
|
|
221
|
+
既存のアセットファクトリーから新しいアセットを取得(ミント)します。これは通常、アセットを所有するエンドユーザーによって開始されます。
|
|
222
222
|
|
|
223
223
|
**パラメータ**
|
|
224
224
|
|
|
225
225
|
<x-field-group>
|
|
226
|
-
<x-field data-name="itx" data-type="AcquireAssetV2Tx" data-required="true" data-desc="内部トランザクションオブジェクト。多くの場合、`preMintAsset
|
|
227
|
-
<x-field data-name="wallet" data-type="WalletObject" data-required="true" data-desc="
|
|
226
|
+
<x-field data-name="itx" data-type="AcquireAssetV2Tx" data-required="true" data-desc="内部トランザクションオブジェクト。多くの場合、`preMintAsset`のようなヘルパーを使用して準備されます。"></x-field>
|
|
227
|
+
<x-field data-name="wallet" data-type="WalletObject" data-required="true" data-desc="アセットを取得するユーザーのウォレット。"></x-field>
|
|
228
228
|
<x-field data-name="delegator" data-type="string" data-required="false" data-desc="該当する場合、デリゲーターのアドレス。"></x-field>
|
|
229
229
|
</x-field-group>
|
|
230
230
|
|
|
@@ -234,7 +234,7 @@ console.log('新しいファクトリーアドレス:', factoryAddress);
|
|
|
234
234
|
|
|
235
235
|
**例**
|
|
236
236
|
|
|
237
|
-
```javascript AcquireAssetV2Txを送信 icon=logos:javascript
|
|
237
|
+
```javascript AcquireAssetV2Tx を送信 icon=logos:javascript
|
|
238
238
|
// まず、ミントトランザクションを準備します(例:サーバー上で)
|
|
239
239
|
const itx = await client.preMintAsset({
|
|
240
240
|
factory: factoryAddress,
|
|
@@ -244,18 +244,18 @@ const itx = await client.preMintAsset({
|
|
|
244
244
|
|
|
245
245
|
// 次に、ユーザーがトランザクションを送信します
|
|
246
246
|
const txHash = await client.acquireAsset({ itx, wallet: userWallet });
|
|
247
|
-
console.log('
|
|
247
|
+
console.log('Acquire asset tx hash:', txHash);
|
|
248
248
|
```
|
|
249
249
|
|
|
250
250
|
### mintAsset
|
|
251
251
|
|
|
252
|
-
|
|
252
|
+
これは`acquireAsset`の発行者側の対応物です。信頼できる発行者がファクトリーからアセットをミントし、指定された所有者に割り当てることを許可します。
|
|
253
253
|
|
|
254
254
|
**パラメータ**
|
|
255
255
|
|
|
256
256
|
<x-field-group>
|
|
257
|
-
<x-field data-name="itx" data-type="MintAssetTx" data-required="true" data-desc="内部トランザクションオブジェクト。多くの場合、`preMintAsset
|
|
258
|
-
<x-field data-name="wallet" data-type="WalletObject" data-required="true" data-desc="
|
|
257
|
+
<x-field data-name="itx" data-type="MintAssetTx" data-required="true" data-desc="内部トランザクションオブジェクト。多くの場合、`preMintAsset`を使用して準備されます。"></x-field>
|
|
258
|
+
<x-field data-name="wallet" data-type="WalletObject" data-required="true" data-desc="信頼できる発行者のウォレット。"></x-field>
|
|
259
259
|
</x-field-group>
|
|
260
260
|
|
|
261
261
|
**戻り値**
|
|
@@ -264,7 +264,7 @@ console.log('資産取得トランザクションハッシュ:', txHash);
|
|
|
264
264
|
|
|
265
265
|
**例**
|
|
266
266
|
|
|
267
|
-
```javascript MintAssetTxを送信 icon=logos:javascript
|
|
267
|
+
```javascript MintAssetTx を送信 icon=logos:javascript
|
|
268
268
|
const itx = await client.preMintAsset({
|
|
269
269
|
factory: factoryAddress,
|
|
270
270
|
owner: userWallet.address,
|
|
@@ -272,7 +272,7 @@ const itx = await client.preMintAsset({
|
|
|
272
272
|
});
|
|
273
273
|
|
|
274
274
|
const txHash = await client.mintAsset({ itx, wallet: issuerWallet });
|
|
275
|
-
console.log('
|
|
275
|
+
console.log('Mint asset tx hash:', txHash);
|
|
276
276
|
```
|
|
277
277
|
|
|
278
278
|
---
|
|
@@ -281,18 +281,18 @@ console.log('資産ミントトランザクションハッシュ:', txHash);
|
|
|
281
281
|
|
|
282
282
|
### createTokenFactory
|
|
283
283
|
|
|
284
|
-
|
|
284
|
+
特定のファンジブルトークンをミントおよびバーンするための新しいファクトリーを作成します。多くの場合、ボンディングカーブの価格設定モデルに基づいています。
|
|
285
285
|
|
|
286
286
|
**パラメータ**
|
|
287
287
|
|
|
288
288
|
<x-field-group>
|
|
289
289
|
<x-field data-name="feeRate" data-type="number" data-required="false" data-default="0" data-desc="ミントおよびバーン操作の手数料率。"></x-field>
|
|
290
|
-
<x-field data-name="curve" data-type="object" data-required="true" data-desc="
|
|
290
|
+
<x-field data-name="curve" data-type="object" data-required="true" data-desc="価格設定のためのボンディングカーブの設定。"></x-field>
|
|
291
291
|
<x-field data-name="token" data-type="object" data-required="true">
|
|
292
|
-
<x-field-desc markdown
|
|
292
|
+
<x-field-desc markdown>作成されるトークンの設定。これには`name`、`symbol`、`decimal`、`maxTotalSupply`などのプロパティが含まれます。</x-field-desc>
|
|
293
293
|
</x-field>
|
|
294
294
|
<x-field data-name="data" data-type="object" data-required="false" data-desc="トークンファクトリーのオプションのメタデータ。"></x-field>
|
|
295
|
-
<x-field data-name="wallet" data-type="WalletObject" data-required="true" data-desc="
|
|
295
|
+
<x-field data-name="wallet" data-type="WalletObject" data-required="true" data-desc="ファクトリーの所有者のウォレット。"></x-field>
|
|
296
296
|
</x-field-group>
|
|
297
297
|
|
|
298
298
|
**戻り値**
|
|
@@ -301,20 +301,20 @@ console.log('資産ミントトランザクションハッシュ:', txHash);
|
|
|
301
301
|
|
|
302
302
|
**例**
|
|
303
303
|
|
|
304
|
-
```javascript CreateTokenFactoryTxを送信 icon=logos:javascript
|
|
304
|
+
```javascript CreateTokenFactoryTx を送信 icon=logos:javascript
|
|
305
305
|
const [txHash, factoryAddress] = await client.createTokenFactory({
|
|
306
306
|
feeRate: 100, // 1%
|
|
307
|
-
curve: { fixedPrice: '1' }, //
|
|
307
|
+
curve: { fixedPrice: '1' }, // 新規トークンごとに1ネイティブトークン
|
|
308
308
|
token: {
|
|
309
|
-
name: '
|
|
309
|
+
name: 'My Community Token',
|
|
310
310
|
symbol: 'MCT',
|
|
311
311
|
decimal: 18,
|
|
312
312
|
maxTotalSupply: '1000000',
|
|
313
313
|
},
|
|
314
314
|
wallet: creatorWallet,
|
|
315
315
|
});
|
|
316
|
-
console.log('
|
|
317
|
-
console.log('
|
|
316
|
+
console.log('Create token factory tx hash:', txHash);
|
|
317
|
+
console.log('New token factory address:', factoryAddress);
|
|
318
318
|
```
|
|
319
319
|
|
|
320
320
|
### updateTokenFactory
|
|
@@ -325,9 +325,9 @@ console.log('新しいトークンファクトリーアドレス:', factoryAddre
|
|
|
325
325
|
|
|
326
326
|
<x-field-group>
|
|
327
327
|
<x-field data-name="address" data-type="string" data-required="true" data-desc="更新するトークンファクトリーのアドレス。"></x-field>
|
|
328
|
-
<x-field data-name="feeRate" data-type="number" data-required="false" data-desc="
|
|
328
|
+
<x-field data-name="feeRate" data-type="number" data-required="false" data-desc="ミントおよびバーンの新しい手数料率。"></x-field>
|
|
329
329
|
<x-field data-name="data" data-type="object" data-required="false" data-desc="トークンファクトリーの新しいメタデータ。"></x-field>
|
|
330
|
-
<x-field data-name="wallet" data-type="WalletObject" data-required="true" data-desc="
|
|
330
|
+
<x-field data-name="wallet" data-type="WalletObject" data-required="true" data-desc="ファクトリーの所有者のウォレット。"></x-field>
|
|
331
331
|
</x-field-group>
|
|
332
332
|
|
|
333
333
|
**戻り値**
|
|
@@ -336,18 +336,18 @@ console.log('新しいトークンファクトリーアドレス:', factoryAddre
|
|
|
336
336
|
|
|
337
337
|
**例**
|
|
338
338
|
|
|
339
|
-
```javascript UpdateTokenFactoryTxを送信 icon=logos:javascript
|
|
339
|
+
```javascript UpdateTokenFactoryTx を送信 icon=logos:javascript
|
|
340
340
|
const txHash = await client.updateTokenFactory({
|
|
341
341
|
address: 'z2f...',
|
|
342
342
|
feeRate: 50, // 0.5%
|
|
343
343
|
wallet: ownerWallet,
|
|
344
344
|
});
|
|
345
|
-
console.log('
|
|
345
|
+
console.log('Update token factory tx hash:', txHash);
|
|
346
346
|
```
|
|
347
347
|
|
|
348
348
|
### mintToken
|
|
349
349
|
|
|
350
|
-
|
|
350
|
+
トークンファクトリーから新しいトークンを、リザーブトークン(通常はネイティブチェーンのトークン)と引き換えにミントします。コストはファクトリーのボンディングカーブによって決定されます。
|
|
351
351
|
|
|
352
352
|
**パラメータ**
|
|
353
353
|
|
|
@@ -355,7 +355,7 @@ console.log('トークンファクトリー更新トランザクションハッ
|
|
|
355
355
|
<x-field data-name="tokenFactory" data-type="string" data-required="true" data-desc="トークンファクトリーのアドレス。"></x-field>
|
|
356
356
|
<x-field data-name="amount" data-type="number" data-required="true" data-desc="ミントする新しいトークンの量。"></x-field>
|
|
357
357
|
<x-field data-name="receiver" data-type="string" data-required="true" data-desc="新しくミントされたトークンを受け取るアドレス。"></x-field>
|
|
358
|
-
<x-field data-name="maxReserve" data-type="number" data-required="true" data-desc="
|
|
358
|
+
<x-field data-name="maxReserve" data-type="number" data-required="true" data-desc="ユーザーが支払うことを許容するリザーブトークンの最大量。これはスリッページ保護として機能します。"></x-field>
|
|
359
359
|
<x-field data-name="data" data-type="object" data-required="false" data-desc="トランザクションのオプションのメタデータ。"></x-field>
|
|
360
360
|
<x-field data-name="wallet" data-type="WalletObject" data-required="true" data-desc="ミントを開始するウォレット。"></x-field>
|
|
361
361
|
</x-field-group>
|
|
@@ -366,7 +366,7 @@ console.log('トークンファクトリー更新トランザクションハッ
|
|
|
366
366
|
|
|
367
367
|
**例**
|
|
368
368
|
|
|
369
|
-
```javascript MintTokenTxを送信 icon=logos:javascript
|
|
369
|
+
```javascript MintTokenTx を送信 icon=logos:javascript
|
|
370
370
|
const txHash = await client.mintToken({
|
|
371
371
|
tokenFactory: 'z2f...',
|
|
372
372
|
amount: 100,
|
|
@@ -374,12 +374,12 @@ const txHash = await client.mintToken({
|
|
|
374
374
|
maxReserve: 105, // 最大105ネイティブトークンまで支払う意思がある
|
|
375
375
|
wallet: userWallet,
|
|
376
376
|
});
|
|
377
|
-
console.log('
|
|
377
|
+
console.log('Mint token tx hash:', txHash);
|
|
378
378
|
```
|
|
379
379
|
|
|
380
380
|
### burnToken
|
|
381
381
|
|
|
382
|
-
|
|
382
|
+
ファクトリーで既存のトークンをバーンして、基礎となるリザーブトークンを返してもらいます。受け取るリザーブトークンの量は、ファクトリーのボンディングカーブによって決定されます。
|
|
383
383
|
|
|
384
384
|
**パラメータ**
|
|
385
385
|
|
|
@@ -398,7 +398,7 @@ console.log('トークンミントトランザクションハッシュ:', txHash
|
|
|
398
398
|
|
|
399
399
|
**例**
|
|
400
400
|
|
|
401
|
-
```javascript BurnTokenTxを送信 icon=logos:javascript
|
|
401
|
+
```javascript BurnTokenTx を送信 icon=logos:javascript
|
|
402
402
|
const txHash = await client.burnToken({
|
|
403
403
|
tokenFactory: 'z2f...',
|
|
404
404
|
amount: 50,
|
|
@@ -406,7 +406,7 @@ const txHash = await client.burnToken({
|
|
|
406
406
|
minReserve: 48, // 少なくとも48ネイティブトークンを受け取ることを期待
|
|
407
407
|
wallet: userWallet,
|
|
408
408
|
});
|
|
409
|
-
console.log('
|
|
409
|
+
console.log('Burn token tx hash:', txHash);
|
|
410
410
|
```
|
|
411
411
|
|
|
412
412
|
---
|
|
@@ -415,7 +415,7 @@ console.log('トークンバーントランザクションハッシュ:', txHash
|
|
|
415
415
|
|
|
416
416
|
### transfer
|
|
417
417
|
|
|
418
|
-
|
|
418
|
+
ネイティブトークン、カスタムファンジブルトークン、および/またはアセット(NFT)を、単一のトランザクションで別のアカウントに転送します。
|
|
419
419
|
|
|
420
420
|
**パラメータ**
|
|
421
421
|
|
|
@@ -423,7 +423,7 @@ console.log('トークンバーントランザクションハッシュ:', txHash
|
|
|
423
423
|
<x-field data-name="to" data-type="string" data-required="true" data-desc="受信者のアドレス。"></x-field>
|
|
424
424
|
<x-field data-name="wallet" data-type="WalletObject" data-required="true" data-desc="送信者のウォレット。"></x-field>
|
|
425
425
|
<x-field data-name="token" data-type="number" data-required="false" data-default="0" data-desc="転送するチェーンのネイティブトークンの量。"></x-field>
|
|
426
|
-
<x-field data-name="assets" data-type="string[]" data-required="false" data-desc="
|
|
426
|
+
<x-field data-name="assets" data-type="string[]" data-required="false" data-desc="転送するアセットアドレス(NFT)の配列。"></x-field>
|
|
427
427
|
<x-field data-name="tokens" data-type="object[]" data-required="false" data-desc="転送するカスタムファンジブルトークンオブジェクトの配列。">
|
|
428
428
|
<x-field data-name="address" data-type="string" data-required="true" data-desc="カスタムトークンコントラクトのアドレス。"></x-field>
|
|
429
429
|
<x-field data-name="value" data-type="number" data-required="true" data-desc="転送するカスタムトークンの量。"></x-field>
|
|
@@ -438,16 +438,16 @@ console.log('トークンバーントランザクションハッシュ:', txHash
|
|
|
438
438
|
|
|
439
439
|
**例**
|
|
440
440
|
|
|
441
|
-
```javascript TransferV2Txを送信 icon=logos:javascript
|
|
441
|
+
```javascript TransferV2Tx を送信 icon=logos:javascript
|
|
442
442
|
const txHash = await client.transfer({
|
|
443
443
|
to: 'z1sb...',
|
|
444
|
-
token: 1.5, // 1.5ネイティブチェーントークン
|
|
444
|
+
token: 1.5, // 1.5 ネイティブチェーントークン
|
|
445
445
|
assets: ['z3g...'], // NFT
|
|
446
|
-
tokens: [{ address: 'z2t...', value: 100 }], // 100カスタムトークン
|
|
447
|
-
memo: '
|
|
446
|
+
tokens: [{ address: 'z2t...', value: 100 }], // 100 カスタムトークン
|
|
447
|
+
memo: 'Payment for services',
|
|
448
448
|
wallet: senderWallet,
|
|
449
449
|
});
|
|
450
|
-
console.log('
|
|
450
|
+
console.log('Transfer tx hash:', txHash);
|
|
451
451
|
```
|
|
452
452
|
|
|
453
453
|
### prepareExchange
|
|
@@ -460,11 +460,11 @@ console.log('転送トランザクションハッシュ:', txHash);
|
|
|
460
460
|
<x-field data-name="receiver" data-type="string" data-required="true" data-desc="交換の相手方のアドレス。"></x-field>
|
|
461
461
|
<x-field data-name="wallet" data-type="WalletObject" data-required="true" data-desc="オファーを行うユーザーのウォレット。"></x-field>
|
|
462
462
|
<x-field data-name="offerToken" data-type="number" data-required="false" data-desc="オファーされたネイティブトークンの量。"></x-field>
|
|
463
|
-
<x-field data-name="offerAssets" data-type="string[]" data-required="false" data-desc="
|
|
463
|
+
<x-field data-name="offerAssets" data-type="string[]" data-required="false" data-desc="オファーされたアセットアドレスの配列。"></x-field>
|
|
464
464
|
<x-field data-name="offerTokens" data-type="object[]" data-required="false" data-desc="オファーされたカスタムファンジブルトークンの配列。"></x-field>
|
|
465
465
|
<x-field data-name="demandToken" data-type="number" data-required="false" data-desc="見返りとして要求されるネイティブトークンの量。"></x-field>
|
|
466
|
-
<x-field data-name="demandAssets" data-type="string[]" data-required="false" data-desc="
|
|
467
|
-
<x-field data-name="demandTokens" data-type="object[]" data-required="false" data-desc="
|
|
466
|
+
<x-field data-name="demandAssets" data-type="string[]" data-required="false" data-desc="見返りとして要求されるアセットアドレスの配列。"></x-field>
|
|
467
|
+
<x-field data-name="demandTokens" data-type="object[]" data-required="false" data-desc="要求されるカスタムファンジブルトークンの配列。"></x-field>
|
|
468
468
|
<x-field data-name="memo" data-type="string" data-required="false" data-desc="トランザクションのオプションのメモ。"></x-field>
|
|
469
469
|
</x-field-group>
|
|
470
470
|
|
|
@@ -481,7 +481,7 @@ console.log('転送トランザクションハッシュ:', txHash);
|
|
|
481
481
|
<x-field-group>
|
|
482
482
|
<x-field data-name="tx" data-type="object" data-required="true" data-desc="`prepareExchange` から返されたトランザクションオブジェクト。"></x-field>
|
|
483
483
|
<x-field data-name="wallet" data-type="WalletObject" data-required="true" data-desc="オファーを受け入れるユーザーのウォレット。"></x-field>
|
|
484
|
-
<x-field data-name="data" data-type="object" data-required="false" data-desc="
|
|
484
|
+
<x-field data-name="data" data-type="object" data-required="false" data-desc="マルチシグネチャ内の追加データ。"></x-field>
|
|
485
485
|
</x-field-group>
|
|
486
486
|
|
|
487
487
|
**戻り値**
|
|
@@ -490,7 +490,7 @@ console.log('転送トランザクションハッシュ:', txHash);
|
|
|
490
490
|
|
|
491
491
|
### exchange
|
|
492
492
|
|
|
493
|
-
完全に署名された交換トランザクションをブロックチェーンに送信します。これは、`finalizeExchange`
|
|
493
|
+
完全に署名された交換トランザクションをブロックチェーンに送信します。これは、`finalizeExchange` が完了した後、どちらかの当事者が呼び出すことができます。
|
|
494
494
|
|
|
495
495
|
**パラメータ**
|
|
496
496
|
|
|
@@ -503,10 +503,10 @@ console.log('転送トランザクションハッシュ:', txHash);
|
|
|
503
503
|
|
|
504
504
|
<x-field data-name="transactionHash" data-type="Promise<string>" data-desc="送信されたトランザクションのハッシュ。"></x-field>
|
|
505
505
|
|
|
506
|
-
|
|
506
|
+
**例 (完全な交換フロー)**
|
|
507
507
|
|
|
508
508
|
```javascript アトミックスワップを実行 icon=logos:javascript
|
|
509
|
-
// 1.
|
|
509
|
+
// 1. オファー側がトランザクションを準備
|
|
510
510
|
const offerTx = await client.prepareExchange({
|
|
511
511
|
receiver: receiverWallet.address,
|
|
512
512
|
offerAssets: ['z3g...'], // NFTをオファー
|
|
@@ -520,9 +520,9 @@ const finalTx = await client.finalizeExchange({
|
|
|
520
520
|
wallet: receiverWallet,
|
|
521
521
|
});
|
|
522
522
|
|
|
523
|
-
// 3.
|
|
523
|
+
// 3. どちらかの当事者が最終処理されたトランザクションを送信可能
|
|
524
524
|
const txHash = await client.exchange({ tx: finalTx, wallet: offererWallet });
|
|
525
|
-
console.log('
|
|
525
|
+
console.log('Exchange tx hash:', txHash);
|
|
526
526
|
```
|
|
527
527
|
|
|
528
528
|
---
|
|
@@ -531,15 +531,15 @@ console.log('交換トランザクションハッシュ:', txHash);
|
|
|
531
531
|
|
|
532
532
|
### stake
|
|
533
533
|
|
|
534
|
-
|
|
534
|
+
トークンおよび/またはアセットを受信者アドレスにステークします。ステーキングはリソースをロックし、多くの場合、報酬と引き換えに、またはセキュリティを提供するために行われます。
|
|
535
535
|
|
|
536
536
|
**パラメータ**
|
|
537
537
|
|
|
538
538
|
<x-field-group>
|
|
539
|
-
<x-field data-name="to" data-type="string" data-required="true" data-desc="
|
|
539
|
+
<x-field data-name="to" data-type="string" data-required="true" data-desc="ステークの受信者のアドレス。"></x-field>
|
|
540
540
|
<x-field data-name="wallet" data-type="WalletObject" data-required="true" data-desc="ステーカーのウォレット。"></x-field>
|
|
541
|
-
<x-field data-name="assets" data-type="string[]" data-required="false" data-desc="
|
|
542
|
-
<x-field data-name="tokens" data-type="object[]" data-required="false" data-desc="
|
|
541
|
+
<x-field data-name="assets" data-type="string[]" data-required="false" data-desc="ステークするアセットアドレスの配列。"></x-field>
|
|
542
|
+
<x-field data-name="tokens" data-type="object[]" data-required="false" data-desc="ステークするファンジブルトークンオブジェクトの配列。"></x-field>
|
|
543
543
|
<x-field data-name="locked" data-type="boolean" data-required="false" data-default="false" data-desc="作成時にステークがロックされるかどうか。"></x-field>
|
|
544
544
|
<x-field data-name="slashers" data-type="string[]" data-required="false" data-desc="このステークをスラッシュすることが許可されているアドレスのリスト。"></x-field>
|
|
545
545
|
<x-field data-name="message" data-type="string" data-required="false" data-desc="ステークのオプションのメモ。"></x-field>
|
|
@@ -551,27 +551,27 @@ console.log('交換トランザクションハッシュ:', txHash);
|
|
|
551
551
|
|
|
552
552
|
**例**
|
|
553
553
|
|
|
554
|
-
```javascript StakeTxを送信 icon=logos:javascript
|
|
554
|
+
```javascript StakeTx を送信 icon=logos:javascript
|
|
555
555
|
const [txHash, stakeAddress] = await client.stake({
|
|
556
556
|
to: 'z1v...',
|
|
557
557
|
tokens: [{ address: 'z2t...', value: 5000 }],
|
|
558
|
-
message: '
|
|
558
|
+
message: 'Staking for validator rewards',
|
|
559
559
|
wallet: userWallet,
|
|
560
560
|
});
|
|
561
|
-
console.log('
|
|
562
|
-
console.log('
|
|
561
|
+
console.log('Stake tx hash:', txHash);
|
|
562
|
+
console.log('New stake address:', stakeAddress);
|
|
563
563
|
```
|
|
564
564
|
|
|
565
565
|
### revokeStake
|
|
566
566
|
|
|
567
|
-
|
|
567
|
+
以前にステークされたトークンおよび/またはアセットを取り消し、所有者への返還プロセスを開始します。アセットが請求可能になるまでにアンボンディング期間がある場合があることに注意してください。
|
|
568
568
|
|
|
569
569
|
**パラメータ**
|
|
570
570
|
|
|
571
571
|
<x-field-group>
|
|
572
572
|
<x-field data-name="from" data-type="string" data-required="true" data-desc="取り消すステークのアドレス。"></x-field>
|
|
573
573
|
<x-field data-name="wallet" data-type="WalletObject" data-required="true" data-desc="ステーク所有者のウォレット。"></x-field>
|
|
574
|
-
<x-field data-name="assets" data-type="string[]" data-required="false" data-desc="
|
|
574
|
+
<x-field data-name="assets" data-type="string[]" data-required="false" data-desc="取り消すアセットアドレスの配列。"></x-field>
|
|
575
575
|
<x-field data-name="tokens" data-type="object[]" data-required="false" data-desc="取り消すファンジブルトークンオブジェクトの配列。"></x-field>
|
|
576
576
|
</x-field-group>
|
|
577
577
|
|
|
@@ -581,13 +581,13 @@ console.log('新しいステークアドレス:', stakeAddress);
|
|
|
581
581
|
|
|
582
582
|
**例**
|
|
583
583
|
|
|
584
|
-
```javascript RevokeStakeTxを送信 icon=logos:javascript
|
|
584
|
+
```javascript RevokeStakeTx を送信 icon=logos:javascript
|
|
585
585
|
const txHash = await client.revokeStake({
|
|
586
586
|
from: 'z6s...',
|
|
587
587
|
tokens: [{ address: 'z2t...', value: 1000 }],
|
|
588
588
|
wallet: userWallet,
|
|
589
589
|
});
|
|
590
|
-
console.log('
|
|
590
|
+
console.log('Revoke stake tx hash:', txHash);
|
|
591
591
|
```
|
|
592
592
|
|
|
593
593
|
### claimStake
|
|
@@ -608,19 +608,19 @@ console.log('ステーク取り消しトランザクションハッシュ:', txH
|
|
|
608
608
|
|
|
609
609
|
**例**
|
|
610
610
|
|
|
611
|
-
```javascript ClaimStakeTxを送信 icon=logos:javascript
|
|
611
|
+
```javascript ClaimStakeTx を送信 icon=logos:javascript
|
|
612
612
|
const revokeTxHash = '0x123...abc';
|
|
613
613
|
const txHash = await client.claimStake({
|
|
614
614
|
from: 'z6s...',
|
|
615
615
|
evidence: revokeTxHash,
|
|
616
616
|
wallet: userWallet,
|
|
617
617
|
});
|
|
618
|
-
console.log('
|
|
618
|
+
console.log('Claim stake tx hash:', txHash);
|
|
619
619
|
```
|
|
620
620
|
|
|
621
621
|
### slashStake
|
|
622
622
|
|
|
623
|
-
|
|
623
|
+
指定されたスラッシャーが、通常は不正行為に対してステークにペナルティを課すことを許可します。スラッシュされたアセットは、指定された保管庫アドレスに転送されます。
|
|
624
624
|
|
|
625
625
|
**パラメータ**
|
|
626
626
|
|
|
@@ -628,7 +628,7 @@ console.log('ステーク請求トランザクションハッシュ:', txHash);
|
|
|
628
628
|
<x-field data-name="from" data-type="string" data-required="true" data-desc="スラッシュするステークのアドレス。"></x-field>
|
|
629
629
|
<x-field data-name="reason" data-type="string" data-required="true" data-desc="スラッシュの理由を説明するメッセージ。"></x-field>
|
|
630
630
|
<x-field data-name="wallet" data-type="WalletObject" data-required="true" data-desc="指定されたスラッシャーのウォレット。"></x-field>
|
|
631
|
-
<x-field data-name="assets" data-type="string[]" data-required="false" data-desc="
|
|
631
|
+
<x-field data-name="assets" data-type="string[]" data-required="false" data-desc="スラッシュするアセットアドレスの配列。"></x-field>
|
|
632
632
|
<x-field data-name="tokens" data-type="object[]" data-required="false" data-desc="スラッシュするファンジブルトークンオブジェクトの配列。"></x-field>
|
|
633
633
|
</x-field-group>
|
|
634
634
|
|
|
@@ -638,12 +638,12 @@ console.log('ステーク請求トランザクションハッシュ:', txHash);
|
|
|
638
638
|
|
|
639
639
|
**例**
|
|
640
640
|
|
|
641
|
-
```javascript SlashStakeTxを送信 icon=logos:javascript
|
|
641
|
+
```javascript SlashStakeTx を送信 icon=logos:javascript
|
|
642
642
|
const txHash = await client.slashStake({
|
|
643
643
|
from: 'z6s...',
|
|
644
|
-
reason: '
|
|
644
|
+
reason: 'Validator downtime',
|
|
645
645
|
tokens: [{ address: 'z2t...', value: 500 }],
|
|
646
646
|
wallet: slasherWallet,
|
|
647
647
|
});
|
|
648
|
-
console.log('
|
|
649
|
-
```
|
|
648
|
+
console.log('Slash stake tx hash:', txHash);
|
|
649
|
+
```
|