@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.
Files changed (79) hide show
  1. package/README.md +77 -79
  2. package/dist/base.js +2 -2
  3. package/dist/base.js.map +1 -1
  4. package/dist/bundle.js +1 -1
  5. package/dist/extension.js +4 -4
  6. package/dist/extension.js.map +1 -1
  7. package/dist/report.html +2 -2
  8. package/docs/api-reference-client-methods.ja.md +38 -38
  9. package/docs/api-reference-client-methods.zh-TW.md +47 -47
  10. package/docs/api-reference-client-methods.zh.md +34 -34
  11. package/docs/api-reference-data-types.ja.md +20 -20
  12. package/docs/api-reference-data-types.zh-TW.md +17 -17
  13. package/docs/api-reference-data-types.zh.md +24 -24
  14. package/docs/api-reference-low-level-api.ja.md +49 -49
  15. package/docs/api-reference-low-level-api.zh-TW.md +48 -48
  16. package/docs/api-reference-low-level-api.zh.md +43 -43
  17. package/docs/api-reference-query-mutation-methods.ja.md +85 -85
  18. package/docs/api-reference-query-mutation-methods.zh-TW.md +140 -140
  19. package/docs/api-reference-query-mutation-methods.zh.md +141 -141
  20. package/docs/api-reference-transaction-helpers.ja.md +120 -120
  21. package/docs/api-reference-transaction-helpers.zh-TW.md +119 -119
  22. package/docs/api-reference-transaction-helpers.zh.md +153 -153
  23. package/docs/api-reference.ja.md +6 -6
  24. package/docs/api-reference.zh-TW.md +5 -5
  25. package/docs/api-reference.zh.md +8 -8
  26. package/docs/core-concepts-client-architecture.ja.md +26 -26
  27. package/docs/core-concepts-client-architecture.zh-TW.md +34 -34
  28. package/docs/core-concepts-client-architecture.zh.md +26 -26
  29. package/docs/core-concepts-event-subscriptions.ja.md +29 -29
  30. package/docs/core-concepts-event-subscriptions.zh-TW.md +23 -23
  31. package/docs/core-concepts-event-subscriptions.zh.md +29 -29
  32. package/docs/core-concepts-gas-payment.ja.md +27 -27
  33. package/docs/core-concepts-gas-payment.zh-TW.md +28 -28
  34. package/docs/core-concepts-gas-payment.zh.md +32 -32
  35. package/docs/core-concepts-transaction-lifecycle.ja.md +40 -40
  36. package/docs/core-concepts-transaction-lifecycle.zh-TW.md +43 -43
  37. package/docs/core-concepts-transaction-lifecycle.zh.md +49 -49
  38. package/docs/core-concepts.ja.md +7 -7
  39. package/docs/core-concepts.zh-TW.md +6 -6
  40. package/docs/core-concepts.zh.md +7 -7
  41. package/docs/getting-started-basic-usage.ja.md +24 -24
  42. package/docs/getting-started-basic-usage.zh-TW.md +28 -28
  43. package/docs/getting-started-basic-usage.zh.md +24 -24
  44. package/docs/getting-started-installation.ja.md +13 -13
  45. package/docs/getting-started-installation.zh-TW.md +9 -9
  46. package/docs/getting-started-installation.zh.md +15 -15
  47. package/docs/getting-started.ja.md +5 -5
  48. package/docs/getting-started.zh-TW.md +6 -6
  49. package/docs/getting-started.zh.md +6 -7
  50. package/docs/how-to-guides-delegate-permissions.ja.md +21 -21
  51. package/docs/how-to-guides-delegate-permissions.zh-TW.md +20 -21
  52. package/docs/how-to-guides-delegate-permissions.zh.md +18 -18
  53. package/docs/how-to-guides-manage-accounts.ja.md +21 -21
  54. package/docs/how-to-guides-manage-accounts.zh-TW.md +23 -23
  55. package/docs/how-to-guides-manage-accounts.zh.md +17 -17
  56. package/docs/how-to-guides-manage-assets.ja.md +137 -60
  57. package/docs/how-to-guides-manage-assets.md +77 -0
  58. package/docs/how-to-guides-manage-assets.zh-TW.md +116 -39
  59. package/docs/how-to-guides-manage-assets.zh.md +142 -65
  60. package/docs/how-to-guides-manage-tokens.ja.md +47 -47
  61. package/docs/how-to-guides-manage-tokens.zh-TW.md +49 -49
  62. package/docs/how-to-guides-manage-tokens.zh.md +34 -34
  63. package/docs/how-to-guides-stake-tokens-and-assets.ja.md +56 -56
  64. package/docs/how-to-guides-stake-tokens-and-assets.zh-TW.md +55 -55
  65. package/docs/how-to-guides-stake-tokens-and-assets.zh.md +51 -51
  66. package/docs/how-to-guides-transfer-tokens-and-nfts.ja.md +45 -45
  67. package/docs/how-to-guides-transfer-tokens-and-nfts.zh-TW.md +46 -46
  68. package/docs/how-to-guides-transfer-tokens-and-nfts.zh.md +37 -37
  69. package/docs/how-to-guides.ja.md +8 -8
  70. package/docs/how-to-guides.zh-TW.md +4 -4
  71. package/docs/how-to-guides.zh.md +6 -6
  72. package/docs/overview.ja.md +15 -15
  73. package/docs/overview.zh-TW.md +14 -14
  74. package/docs/overview.zh.md +12 -12
  75. package/lib/base.js +2 -2
  76. package/lib/base.js.map +1 -1
  77. package/lib/extension.js +4 -4
  78. package/lib/extension.js.map +1 -1
  79. package/package.json +15 -15
@@ -1,36 +1,36 @@
1
1
  # 质押通证和资产
2
2
 
3
- 质押是将通证或资产 (NFT) 锁定到特定接收者的过程,通常是为了保护网络、参与治理或赚取奖励。本指南使用 OCAP Client 提供了整个质押生命周期的分步演练,包括创建质押、撤销质押、领回资产以及因惩罚原因而削减质押。
3
+ 质押是将通证或资产 (NFT) 锁定给特定接收者的过程,通常是为了保障网络安全、参与治理或赚取奖励。本指南使用 OCAP Client 详细介绍了整个质押生命周期的分步操作,包括创建质押、撤销质押、领回资产以及因惩罚性原因罚没质押。
4
4
 
5
5
  此过程涉及几个关键方法:
6
- - `stake()`: 创建新的质押。
7
- - `revokeStake()`: 启动撤回已质押物品的过程。
8
- - `claimStake()`: 完成撤回并将物品返还到您的账户。
9
- - `slashStake()`: 允许授权方惩罚质押者。
6
+ - `stake()`:创建一个新的质押。
7
+ - `revokeStake()`:启动取回已质押物品的过程。
8
+ - `claimStake()`:完成取回操作,将物品返还至您的账户。
9
+ - `slashStake()`:允许授权方惩罚质押者。
10
10
 
11
11
  ## 如何质押
12
12
 
13
- 首先,您使用 `stake` 方法来锁定您的通证或资产。此操作会在链上创建一个新的、唯一的质押地址,该地址持有您质押的物品及管理它们的规则。
13
+ 首先,您使用 `stake` 方法来锁定您的通证或资产。此操作会在链上创建一个新的、唯一的质押地址,该地址持有您质押的物品及管理这些物品的规则。
14
14
 
15
15
  ### 参数
16
16
 
17
17
  <x-field-group>
18
- <x-field data-name="to" data-type="string" data-required="true" data-desc="将接收质押的账户的 DID 地址。"></x-field>
18
+ <x-field data-name="to" data-type="string" data-required="true" data-desc="接收质押的账户的 DID 地址。"></x-field>
19
19
  <x-field data-name="assets" data-type="string[]" data-required="false" data-desc="要质押的资产地址 (NFT) 数组。"></x-field>
20
20
  <x-field data-name="tokens" data-type="object[]" data-required="false" data-desc="要质押的通证对象数组。">
21
21
  <x-field data-name="address" data-type="string" data-required="true" data-desc="通证合约的地址。"></x-field>
22
22
  <x-field data-name="value" data-type="number" data-required="true" data-desc="要质押的通证数量。"></x-field>
23
23
  </x-field>
24
24
  <x-field data-name="wallet" data-type="WalletObject" data-required="true" data-desc="质押者的钱包对象。"></x-field>
25
- <x-field data-name="locked" data-type="boolean" data-default="false" data-required="false" data-desc="一个布尔值,指示质押在创建时是否被锁定。"></x-field>
26
- <x-field data-name="slashers" data-type="string[]" data-required="false" data-desc="允许惩罚此质押的 DID 地址数组。如果未提供,则默认为接收者的地址。"></x-field>
25
+ <x-field data-name="locked" data-type="boolean" data-default="false" data-required="false" data-desc="指示质押在创建时是否锁定的布尔值。"></x-field>
26
+ <x-field data-name="slashers" data-type="string[]" data-required="false" data-desc="允许罚没此质押的 DID 地址数组。如果未提供,则默认为接收者的地址。"></x-field>
27
27
  <x-field data-name="message" data-type="string" data-required="false" data-desc="质押的可选备注或消息。"></x-field>
28
- <x-field data-name="nonce" data-type="string" data-required="false" data-desc="一个可选的 nonce,以确保质押地址是唯一的。"></x-field>
28
+ <x-field data-name="nonce" data-type="string" data-required="false" data-desc="确保质押地址唯一的可选 nonce"></x-field>
29
29
  </x-field-group>
30
30
 
31
31
  ### 示例
32
32
 
33
- ```javascript 质押通证和资产 icon=logos:javascript
33
+ ```javascript Staking Tokens and an Asset icon=logos:javascript
34
34
  // 假设 'client' 是一个已初始化的 GraphQLClient 实例
35
35
  // 且 'stakerWallet' 是一个有效的钱包对象。
36
36
  const receiverAddress = 'z29d5852576b8a8b6f3a8b4b74a3f4a3e2e1d'; // 质押接收者的地址
@@ -43,35 +43,35 @@ async function createStake() {
43
43
  address: 'z35n6aTUTK8h5nAF43h21A1g84g3C3D7B5E', // 要质押的通证地址
44
44
  value: 100, // 要质押的通证数量
45
45
  }],
46
- assets: ['zNKtA1B2C3D4E5F6G7H8I9J0K1L2M3N4O5P6'], // 要质押的资产/NFT 的地址
47
- message: '为验证者奖励而质押',
46
+ assets: ['zNKtA1B2C3D4E5F6G7H8I9J0K1L2M3N4O5P6'], // 要质押的资产/NFT 地址
47
+ message: 'Staking for validator rewards',
48
48
  wallet: stakerWallet,
49
49
  });
50
50
 
51
- console.log('质押交易已发送:', txHash);
52
- console.log('新质押地址已创建:', stakeAddress);
51
+ console.log('Stake transaction sent:', txHash);
52
+ console.log('New stake address created:', stakeAddress);
53
53
  return stakeAddress;
54
54
  } catch (error) {
55
- console.error('创建质押时出错:', error);
55
+ console.error('Error creating stake:', error);
56
56
  }
57
57
  }
58
58
  ```
59
59
 
60
60
  ### 返回值
61
61
 
62
- `stake` 方法返回一个包含交易哈希和新创建的 `stakeAddress` 的元组。此地址对于未来与此特定质押的所有交互(例如撤销或惩罚)至关重要。
62
+ `stake` 方法返回一个包含交易哈希和新创建的 `stakeAddress` 的元组。此地址对于未来与此特定质押的所有交互(如撤销或罚没)至关重要。
63
63
 
64
64
  ---
65
65
 
66
66
  ## 如何撤销质押
67
67
 
68
- 撤销质押是质押者为取回其锁定的通证和资产而发起的过程。此交易不会立即返还资金;相反,它会将它们标记为可申领,并受任何链上锁定期限制。
68
+ 撤销质押是由质押者发起的、用以取回其锁定的通证和资产的过程。此交易不会立即返还资金;相反,它会将资金标记为可供领回,但需遵守链上任何锁定期规定。
69
69
 
70
70
  ### 参数
71
71
 
72
72
  <x-field-group>
73
73
  <x-field data-name="from" data-type="string" data-required="true" data-desc="要撤销的质押地址(从 'stake' 调用中获取)。"></x-field>
74
- <x-field data-name="assets" data-type="string[]" data-required="false" data-desc="从质押中撤销的资产地址数组。"></x-field>
74
+ <x-field data-name="assets" data-type="string[]" data-required="false" data-desc="要从质押中撤销的资产地址数组。"></x-field>
75
75
  <x-field data-name="tokens" data-type="object[]" data-required="false" data-desc="要撤销的通证对象数组。">
76
76
  <x-field data-name="address" data-type="string" data-required="true" data-desc="通证合约的地址。"></x-field>
77
77
  <x-field data-name="value" data-type="number" data-required="true" data-desc="要撤销的通证数量。"></x-field>
@@ -81,7 +81,7 @@ async function createStake() {
81
81
 
82
82
  ### 示例
83
83
 
84
- ```javascript 撤销质押 icon=logos:javascript
84
+ ```javascript Revoking a Stake icon=logos:javascript
85
85
  // 假设 'stakeAddress' 是上一步返回的地址
86
86
  // 且 'stakerWallet' 是用于创建质押的同一个钱包。
87
87
 
@@ -97,37 +97,37 @@ async function revokeExistingStake(stakeAddress) {
97
97
  wallet: stakerWallet,
98
98
  });
99
99
 
100
- console.log('撤销质押交易已发送:', revokeTxHash);
101
- console.log('重要提示:请保存此哈希以便稍后申领您的质押。');
100
+ console.log('Revoke stake transaction sent:', revokeTxHash);
101
+ console.log('IMPORTANT: Save this hash to claim your stake later.');
102
102
  return revokeTxHash;
103
103
  } catch (error) {
104
- console.error('撤销质押时出错:', error);
104
+ console.error('Error revoking stake:', error);
105
105
  }
106
106
  }
107
107
  ```
108
108
 
109
109
  ### 返回值
110
110
 
111
- 此函数返回撤销操作的交易哈希。此哈希作为凭证,并且是申领质押的最后一步所**必需**的。
111
+ 此函数返回撤销操作的交易哈希。该哈希作为凭证,并且是领回质押的最后一步所**必需**的。
112
112
 
113
113
  ---
114
114
 
115
- ## 如何申领已撤销的质押
115
+ ## 如何领回已撤销的质押
116
116
 
117
- 成功撤销质押后,质押者必须发送一个 `claimStake` 交易,将通证和资产移回其账户。这会完成提款过程。
117
+ 质押成功撤销后,质押者必须发送一个 `claimStake` 交易,才能将通证和资产移回其账户。这标志着取回过程的最终完成。
118
118
 
119
119
  ### 参数
120
120
 
121
121
  <x-field-group>
122
122
  <x-field data-name="from" data-type="string" data-required="true" data-desc="质押的地址。"></x-field>
123
- <x-field data-name="evidence" data-type="string" data-required="true" data-desc="来自 'revokeStake' 调用的交易哈希,作为撤销的证明。"></x-field>
123
+ <x-field data-name="evidence" data-type="string" data-required="true" data-desc="来自 'revokeStake' 调用的交易哈希,作为撤销的凭证。"></x-field>
124
124
  <x-field data-name="wallet" data-type="WalletObject" data-required="true" data-desc="质押者的钱包对象。"></x-field>
125
125
  </x-field-group>
126
126
 
127
127
  ### 示例
128
128
 
129
- ```javascript 申领已质押的物品 icon=logos:javascript
130
- // 假设 'stakeAddress' 和 'revokeTxHash' 来自之前的步骤,
129
+ ```javascript Claiming Staked Items icon=logos:javascript
130
+ // 假设 'stakeAddress' 和 'revokeTxHash' 来自前面的步骤,
131
131
  // 且 'stakerWallet' 是质押者的钱包。
132
132
 
133
133
  async function claimRevokedStake(stakeAddress, revokeTxHash) {
@@ -138,68 +138,68 @@ async function claimRevokedStake(stakeAddress, revokeTxHash) {
138
138
  wallet: stakerWallet,
139
139
  });
140
140
 
141
- console.log('申领质押交易已发送:', claimTxHash);
142
- console.log('您的通证和资产已返回到您的账户。');
141
+ console.log('Claim stake transaction sent:', claimTxHash);
142
+ console.log('Your tokens and assets have been returned to your account.');
143
143
  } catch (error) {
144
- console.error('申领质押时出错:', error);
144
+ console.error('Error claiming stake:', error);
145
145
  }
146
146
  }
147
147
  ```
148
148
 
149
149
  ### 返回值
150
150
 
151
- 该方法返回最终的交易哈希。一旦此交易在链上确认,质押的物品将返回到 `wallet` 的地址。
151
+ 该方法返回最终的交易哈希。一旦此交易在链上确认,质押的物品将返还至 `wallet` 的地址。
152
152
 
153
153
  ---
154
154
 
155
- ## 如何惩罚质押
155
+ ## 如何罚没质押
156
156
 
157
- 惩罚(Slashing)是一种惩罚性行为,可由指定的 `slasher`(通常是质押接收者)对质押者采取。这通常发生在质押者违反某些规则的情况下。被惩罚的通证或资产将从质押中移除并发送到指定的金库。
157
+ 罚没是一种惩罚性操作,可由指定的 `slasher`(通常是质押接收者)对质押者执行。这种情况通常发生在质押者违反某些规则时。被罚没的通证或资产将从质押中移除,并发送至指定的保险库。
158
158
 
159
159
  ### 参数
160
160
 
161
161
  <x-field-group>
162
- <x-field data-name="from" data-type="string" data-required="true" data-desc="要惩罚的质押地址。"></x-field>
163
- <x-field data-name="reason" data-type="string" data-required="true" data-desc="一条强制性消息,解释发生惩罚的原因。"></x-field>
164
- <x-field data-name="assets" data-type="string[]" data-required="false" data-desc="从质押中惩罚的资产地址数组。"></x-field>
165
- <x-field data-name="tokens" data-type="object[]" data-required="false" data-desc="要惩罚的通证对象数组。">
162
+ <x-field data-name="from" data-type="string" data-required="true" data-desc="要罚没的质押地址。"></x-field>
163
+ <x-field data-name="reason" data-type="string" data-required="true" data-desc="解释罚没原因的强制性消息。"></x-field>
164
+ <x-field data-name="assets" data-type="string[]" data-required="false" data-desc="要从质押中罚没的资产地址数组。"></x-field>
165
+ <x-field data-name="tokens" data-type="object[]" data-required="false" data-desc="要罚没的通证对象数组。">
166
166
  <x-field data-name="address" data-type="string" data-required="true" data-desc="通证合约的地址。"></x-field>
167
- <x-field data-name="value" data-type="number" data-required="true" data-desc="要惩罚的通证数量。"></x-field>
167
+ <x-field data-name="value" data-type="number" data-required="true" data-desc="要罚没的通证数量。"></x-field>
168
168
  </x-field>
169
- <x-field data-name="wallet" data-type="WalletObject" data-required="true" data-desc="授权惩罚者的钱包对象。"></x-field>
169
+ <x-field data-name="wallet" data-type="WalletObject" data-required="true" data-desc="经授权的罚没者的钱包对象。"></x-field>
170
170
  </x-field-group>
171
171
 
172
172
  ### 示例
173
173
 
174
- ```javascript 惩罚质押 icon=logos:javascript
175
- // 假设 'stakeAddress' 是要惩罚的质押地址,
176
- // 且 'slasherWallet' 是授权惩罚者的钱包。
174
+ ```javascript Slashing a Stake icon=logos:javascript
175
+ // 假设 'stakeAddress' 是要罚没的质押地址,
176
+ // 且 'slasherWallet' 是经授权的罚没者的钱包。
177
177
 
178
178
  async function slashExistingStake(stakeAddress) {
179
179
  try {
180
180
  const slashTxHash = await client.slashStake({
181
181
  from: stakeAddress,
182
- reason: '验证者连续错过 10 个区块的签名。',
182
+ reason: 'Validator missed signing 10 consecutive blocks.',
183
183
  tokens: [{
184
184
  address: 'z35n6aTUTK8h5nAF43h21A1g84g3C3D7B5E',
185
- value: 10, // 惩罚 10 个通证作为罚款
185
+ value: 10, // 罚没 10 个通证作为惩罚
186
186
  }],
187
187
  wallet: slasherWallet,
188
188
  });
189
189
 
190
- console.log('惩罚质押交易已发送:', slashTxHash);
190
+ console.log('Slash stake transaction sent:', slashTxHash);
191
191
  } catch (error) {
192
- console.error('惩罚质押时出错:', error);
192
+ console.error('Error slashing stake:', error);
193
193
  }
194
194
  }
195
195
  ```
196
196
 
197
197
  ### 返回值
198
198
 
199
- 此方法返回惩罚操作的交易哈希。
199
+ 此方法返回罚没操作的交易哈希。
200
200
 
201
201
  ## 总结
202
202
 
203
- 您现在已经学习了在 OCAP 区块链上进行质押的完整生命周期:使用 `stake` 创建质押,使用 `revokeStake` 和 `claimStake` 取回资金,以及使用 `slashStake` 惩罚不良行为者。这个强大的机制是许多去中心化应用的基础。
203
+ 现在您已经了解了在 OCAP 区块链上进行质押的完整生命周期:使用 `stake` 创建质押,使用 `revokeStake` 和 `claimStake` 取回资金,以及使用 `slashStake` 惩罚恶意行为者。这一强大的机制是许多去中心化应用的基础。
204
204
 
205
- 要了解有关可以质押的物品的更多信息,请参阅 [管理通证](./how-to-guides-manage-tokens.md) [管理资产 (NFT)](./how-to-guides-manage-assets.md) 指南。
205
+ 要了解更多关于可以质押的物品的信息,请参阅[管理通证](./how-to-guides-manage-tokens.md)和[管理资产 (NFT)](./how-to-guides-manage-assets.md)指南。
@@ -1,24 +1,24 @@
1
1
  # トークンとNFTの転送
2
2
 
3
- このガイドでは、OCAP Clientを使用して、アカウント間でファンジブルトークン(ネイティブおよびカスタムの両方)とノンファンジブルトークン(NFTまたは資産)を転送する手順を段階的に説明します。すべての転送の主要なメソッドは `client.transfer()` です。
3
+ このガイドでは、OCAP Clientを使用して、アカウント間でファンジブルトークン(ネイティブおよびカスタム)とノンファンジブルトークン(NFTまたはアセット)を転送するためのステップバイステップのウォークスルーを提供します。すべての転送の主要なメソッドは`client.transfer()`です。
4
4
 
5
- 覚えておくべき重要な特徴の1つは、新しいアカウントが最初の受信トランザクションを受け取ると、自動的にオンチェーンで作成されることです。これは、受信者の事前設定なしで、全く新しいアドレスにトークンや資産を転送できることを意味します。
5
+ 覚えておくべき重要な機能の1つは、新しいアカウントが最初の着信トランザクションを受信したときに、オンチェーンで自動的に作成されることです。つまり、受信者の事前設定なしで、全く新しいアドレスにトークンやアセットを転送できます。
6
6
 
7
7
  ## `transfer` メソッド
8
8
 
9
- `client.transfer()` メソッドは、資産やトークンを送信するプロセスを簡素化する多機能なヘルパー関数です。単一の呼び出しで、適切なトランザクション(`transferV2Tx`)を構築、署名し、ブロックチェーンに送信します。
9
+ `client.transfer()`メソッドは、アセットやトークンを送信するプロセスを簡素化する多機能なヘルパー関数です。単一の呼び出しで、適切なトランザクション(`transferV2Tx`)を構築、署名し、ブロックチェーンに送信します。
10
10
 
11
11
  ### パラメータ
12
12
 
13
13
  <x-field-group>
14
14
  <x-field data-name="to" data-type="string" data-required="true">
15
- <x-field-desc markdown>受信者のアカウントアドレス。これは有効なDIDアドレスでなければなりません。</x-field-desc>
15
+ <x-field-desc markdown>受信者のアカウントアドレス。有効なDIDアドレスである必要があります。</x-field-desc>
16
16
  </x-field>
17
- <x-field data-name="wallet" data-type="WalletObject" data-required="true" data-desc="トランザクションに署名するために使用される送信者のウォレットオブジェクト。"></x-field>
17
+ <x-field data-name="wallet" data-type="WalletObject" data-required="true" data-desc="トランザクションの署名に使用される送信者のウォレットオブジェクト。"></x-field>
18
18
  <x-field data-name="token" data-type="number" data-default="0">
19
- <x-field-desc markdown>転送するチェーンのネイティブトークンの量。クライアントは自動的に正しい小数点単位への変換を処理します。</x-field-desc>
19
+ <x-field-desc markdown>転送するチェーンのネイティブトークンの量。クライアントが自動的に正しい小数点以下の単位に変換します。</x-field-desc>
20
20
  </x-field>
21
- <x-field data-name="assets" data-type="string[]" data-default="[]" data-desc="転送する資産アドレス(NFT)の配列。"></x-field>
21
+ <x-field data-name="assets" data-type="string[]" data-default="[]" data-desc="転送するアセットアドレス(NFT)の配列。"></x-field>
22
22
  <x-field data-name="tokens" data-type="object[]" data-default="[]">
23
23
  <x-field-desc markdown>転送するカスタムファンジブルトークンオブジェクトの配列。</x-field-desc>
24
24
  <x-field data-name="address" data-type="string" data-required="true" data-desc="カスタムトークンコントラクトのアドレス。"></x-field>
@@ -26,7 +26,7 @@
26
26
  </x-field>
27
27
  <x-field data-name="memo" data-type="string" data-required="false" data-desc="トランザクションに含めるオプションのメッセージまたはメモ。"></x-field>
28
28
  <x-field data-name="delegator" data-type="string" data-required="false">
29
- <x-field-desc markdown>`wallet` が別のアカウントの代理として機能している場合、これは委任元アカウントのアドレスである必要があります。詳細については、[Delegate Permissions](./how-to-guides-delegate-permissions.md) ガイドを参照してください。</x-field-desc>
29
+ <x-field-desc markdown>`wallet`が別のアカウントの代理として機能している場合、これは委任元アカウントのアドレスである必要があります。詳細については、[権限の委任](./how-to-guides-delegate-permissions.md)ガイドを参照してください。</x-field-desc>
30
30
  </x-field>
31
31
  </x-field-group>
32
32
 
@@ -40,13 +40,13 @@
40
40
 
41
41
  ### 前提条件
42
42
 
43
- 始める前に、以下が揃っていることを確認してください:
43
+ 開始する前に、以下のものがあることを確認してください:
44
44
 
45
- 1. `https://beta.abtnetwork.io` のようなチェーンホストに接続された、初期化済みの `GraphQLClient`。
46
- 2. 転送およびトランザクション手数料をカバーするのに十分なトークンが入金されている送信者のウォレットオブジェクト(`senderWallet`)。
47
- 3. アドレスを取得するための受信者のウォレットオブジェクト(`recipientWallet`)。受信者のアカウントはまだオンチェーンに存在する必要はありません。
45
+ 1. `https://beta.abtnetwork.io`のようなチェーンホストに接続された初期化済みの`GraphQLClient`。
46
+ 2. 転送とトランザクション手数料をカバーするのに十分なトークンが入金された送信者のウォレットオブジェクト(`senderWallet`)。
47
+ 3. アドレスを取得するための受信者のウォレットオブジェクト(`recipientWallet`)。受信者のアカウントはまだオンチェーンに存在している必要はありません。
48
48
 
49
- ```javascript Basic Setup icon=logos:javascript
49
+ ```javascript 基本設定 icon=logos:javascript
50
50
  import GraphQLClient from '@ocap/client';
51
51
  import { fromRandom } from '@ocap/wallet';
52
52
 
@@ -55,13 +55,13 @@ const client = new GraphQLClient({ endpoint: 'https://beta.abtnetwork.io/api' })
55
55
 
56
56
  // 2. 送信者と受信者のウォレットを作成
57
57
  // 実際のアプリケーションでは、送信者のウォレットはランダムに作成されるのではなく、ロードされます。
58
- const senderWallet = fromRandom(); // このウォレットには資金が入金されていると仮定
58
+ const senderWallet = fromRandom(); // このウォレットには資金が入っていると仮定します
59
59
  const recipientWallet = fromRandom();
60
60
 
61
- console.log(`送信者アドレス: ${senderWallet.address}`);
62
- console.log(`受信者アドレス: ${recipientWallet.address}`);
61
+ console.log(`Sender Address: ${senderWallet.address}`);
62
+ console.log(`Recipient Address: ${recipientWallet.address}`);
63
63
 
64
- // この例のために送信者のウォレットに資金を入金するには、faucetを使用してください:
64
+ // この例のために送信者のウォレットに資金を供給するには、フォーセットを使用してください:
65
65
  // https://faucet.abtnetwork.io/
66
66
  ```
67
67
 
@@ -69,43 +69,43 @@ console.log(`受信者アドレス: ${recipientWallet.address}`);
69
69
 
70
70
  この例では、送信者から受信者に10ネイティブトークンを送信する方法を示します。
71
71
 
72
- ```javascript Transfer Native Tokens icon=logos:javascript
72
+ ```javascript ネイティブトークンの転送 icon=logos:javascript
73
73
  async function transferNativeTokens() {
74
74
  try {
75
75
  const hash = await client.transfer({
76
76
  to: recipientWallet.address,
77
77
  token: 10, // 送信するネイティブトークンの量
78
78
  wallet: senderWallet,
79
- memo: '10ネイティブトークンを送ります!'
79
+ memo: 'Sending you 10 native tokens!'
80
80
  });
81
- console.log('ネイティブトークンの転送に成功しました。Txハッシュ:', hash);
81
+ console.log('Native token transfer successful. Tx Hash:', hash);
82
82
  } catch (err) {
83
- console.error('トークン転送エラー:', err);
83
+ console.error('Error transferring tokens:', err);
84
84
  }
85
85
  }
86
86
 
87
87
  transferNativeTokens();
88
88
  ```
89
89
 
90
- ### 例2:NFT(資産)の転送
90
+ ### 例2:NFT(アセット)の転送
91
91
 
92
- NFTを転送するには、そのユニークな資産アドレスが必要です。まず、資産を作成または取得します([資産(NFT)の管理](./how-to-guides-manage-assets.md) を参照)。この例では、`senderWallet` がすでにアドレス `zNKj...` のNFTを所有していると仮定します。
92
+ NFTを転送するには、その一意のアセットアドレスが必要です。まず、アセットを作成または取得します([アセット(NFT)の管理](./how-to-guides-manage-assets.md)を参照)。この例では、`senderWallet`がすでにアドレス`zNKj...`を持つNFTを所有していると仮定します。
93
93
 
94
- ```javascript Transfer an NFT icon=logos:javascript
94
+ ```javascript NFTの転送 icon=logos:javascript
95
95
  async function transferNFT() {
96
- // senderWalletが所有するNFTのアドレスと仮定
96
+ // これがsenderWalletが所有するNFTのアドレスであると仮定します
97
97
  const nftAddress = 'zNKjL4wTmxQPk5nN2ADDPCd58286b2de3f3e';
98
98
 
99
99
  try {
100
100
  const hash = await client.transfer({
101
101
  to: recipientWallet.address,
102
- assets: [nftAddress], // 資産アドレスの配列
102
+ assets: [nftAddress], // アセットアドレスの配列
103
103
  wallet: senderWallet,
104
- memo: 'ご希望のNFTです。'
104
+ memo: 'Here is the NFT you wanted.'
105
105
  });
106
- console.log('NFTの転送に成功しました。Txハッシュ:', hash);
106
+ console.log('NFT transfer successful. Tx Hash:', hash);
107
107
  } catch (err) {
108
- console.error('NFT転送エラー:', err);
108
+ console.error('Error transferring NFT:', err);
109
109
  }
110
110
  }
111
111
 
@@ -114,11 +114,11 @@ transferNFT();
114
114
 
115
115
  ### 例3:カスタムトークンの転送
116
116
 
117
- この例では、カスタムファンジブルトークンを転送する方法を示します。トークンのコントラクトアドレスが必要です。カスタムトークンの作成については、[トークンの管理](./how-to-guides-manage-tokens.md) ガイドを参照してください。
117
+ この例では、カスタムファンジブルトークンを転送する方法を示します。トークンのコントラクトアドレスが必要です。カスタムトークンの作成については、[トークンの管理](./how-to-guides-manage-tokens.md)ガイドを参照してください。
118
118
 
119
- ```javascript Transfer Custom Tokens icon=logos:javascript
119
+ ```javascript カスタムトークンの転送 icon=logos:javascript
120
120
  async function transferCustomToken() {
121
- // senderWalletが所有するカスタムトークンのアドレスと仮定
121
+ // これがsenderWalletが所有するカスタムトークンのアドレスであると仮定します
122
122
  const customTokenAddress = 'z37bA4x...';
123
123
 
124
124
  try {
@@ -126,26 +126,26 @@ async function transferCustomToken() {
126
126
  to: recipientWallet.address,
127
127
  wallet: senderWallet,
128
128
  tokens: [
129
- { address: customTokenAddress, value: 50 } // 50単位のカスタムトークン
129
+ { address: customTokenAddress, value: 50 } // カスタムトークン50単位
130
130
  ],
131
- memo: '50カスタムトークンを送ります。'
131
+ memo: 'Sending 50 custom tokens.'
132
132
  });
133
- console.log('カスタムトークンの転送に成功しました。Txハッシュ:', hash);
133
+ console.log('Custom token transfer successful. Tx Hash:', hash);
134
134
  } catch (err) {
135
- console.error('カスタムトークン転送エラー:', err);
135
+ console.error('Error transferring custom token:', err);
136
136
  }
137
137
  }
138
138
 
139
139
  transferCustomToken();
140
140
  ```
141
141
 
142
- ### 例4:組み合わせた転送
142
+ ### 例4:複合転送
143
143
 
144
144
  ネイティブトークン、カスタムトークン、および複数のNFTをすべて単一のアトミックなトランザクションで送信できます。これは非常に効率的です。
145
145
 
146
- ```javascript Combined Transfer icon=logos:javascript
146
+ ```javascript 複合転送 icon=logos:javascript
147
147
  async function combinedTransfer() {
148
- // これらはsenderWalletが所有する資産とトークンのアドレスと仮定
148
+ // これらがsenderWalletが所有するアセットとトークンのアドレスであると仮定します
149
149
  const nftAddress1 = 'zNKjL4wTmxQPk5nN2ADDPCd58286b2de3f3e';
150
150
  const nftAddress2 = 'zNKiabcdeQPk5nN2ADDPCd58286b2defghj';
151
151
  const customTokenAddress = 'z37bA4x...'; // カスタムファンジブルトークンのアドレス
@@ -157,23 +157,23 @@ async function combinedTransfer() {
157
157
  token: 5, // 5ネイティブトークン
158
158
  assets: [nftAddress1, nftAddress2], // 2つのNFTの配列
159
159
  tokens: [
160
- { address: customTokenAddress, value: 50 } // 50単位のカスタムトークン
160
+ { address: customTokenAddress, value: 50 } // カスタムトークン50単位
161
161
  ],
162
- memo: 'トークンとNFTのミックスを送ります。'
162
+ memo: 'Sending a mix of tokens and NFTs.'
163
163
  });
164
- console.log('組み合わせた転送に成功しました。Txハッシュ:', hash);
164
+ console.log('Combined transfer successful. Tx Hash:', hash);
165
165
  } catch (err) {
166
- console.error('組み合わせた転送でのエラー:', err);
166
+ console.error('Error with combined transfer:', err);
167
167
  }
168
168
  }
169
169
 
170
170
  combinedTransfer();
171
171
  ```
172
172
 
173
- これらの例に従うことで、アプリケーションにトークンとNFTの転送を簡単に実装できます。転送したいアイテムの作成に関する詳細については、関連ガイドを参照してください。
173
+ これらの例に従うことで、アプリケーションでトークンとNFTの転送を簡単に実装できます。転送したいアイテムの作成に関する詳細については、関連ガイドを参照してください。
174
174
 
175
175
  ### 参考文献
176
176
 
177
- - [資産(NFT)の管理方法](./how-to-guides-manage-assets.md)
177
+ - [アセット(NFT)の管理方法](./how-to-guides-manage-assets.md)
178
178
  - [トークンの管理方法](./how-to-guides-manage-tokens.md)
179
179
  - [高レベルAPI](./api-reference-transaction-helpers.md)