NFT method fixes

This commit is contained in:
mDuo13
2022-05-23 17:21:54 -07:00
parent 13e9ef0775
commit 1c45eac0b3
6 changed files with 80 additions and 46 deletions

View File

@@ -1,9 +1,10 @@
---
html: account_nfts.html
parent: nft-methods.html
parent: account-methods.html
blurb: Get a list of all NFTs for an account.
labels:
- Non-fungible Tokens, NFTs
status: not_enabled
---
# account_nfts
[[Source]](https://github.com/ripple/rippled/blob/master/src/ripple/rpc/handlers/AccountObjects.cpp "Source")
@@ -15,6 +16,8 @@ The `account_nfts` method returns a list of `NFToken` objects for the specified
## Request Format
An example of the request format:
{% include '_snippets/no-cli-syntax.md' %}
<!-- MULTICODE_BLOCK_START -->
*WebSocket*
@@ -50,7 +53,7 @@ The request includes the following parameters:
| `account` | String | The unique identifier of an account, typically the account's [Address][]. The request returns a list of NFTs owned by this account. |
| `ledger_hash` | String | _(Optional)_ A 20-byte hex string for the ledger version to use. (See [Specifying Ledgers][]) |
| `ledger_index` | String or Number | _(Optional)_ The [ledger index][] of the ledger to use, or a shortcut string to choose a ledger automatically. (See [Specifying Ledgers][]) |
| `limit` | Integer | _(Optional)_ Limit the number of [NFTokenPage objects][] to retrieve. Each NFTokenPage can contain up to 32 NFTs. This value cannot be lower than 20 or more than 400. The default is 100. |
| `limit` | Integer | _(Optional)_ Limit the number of [token pages][NFTokenPage object] to retrieve. Each page can contain up to 32 NFTs. The `limit` value cannot be lower than 20 or more than 400. The default is 100. |
| `marker` | [Marker][] | _(Optional)_ Value from a previous paginated response. Resume retrieving data where that response left off. |
@@ -131,12 +134,25 @@ The response follows the [standard format][], with a successful result containin
| `Field` | Type | Description |
|:---------------|:-----------------|:-----------------------------------------|
| `account` | String | The account that owns the list of NFTs |
| `account_nfts` | Array | A list of NFTs owned by the account. Each item is an [NFToken][] object. |
| `account_nfts` | Array | A list of NFTs owned by the account, formatted as **NFT Objects** (see below). |
| `ledger_hash` | String | (May be omitted) The identifying hash of the ledger that was used to generate this response. |
| `ledger_index` | Number - [Ledger Index][] | _(May be omitted)_ The ledger index of the ledger that was used to generate this response. |
| `ledger_current_index` | Number - [Ledger Index][] | _(May be omitted)_ The ledger index of the current in-progress ledger version, which was used to generate this response. |
| `validated` | Boolean | If included and set to `true`, the information in this response comes from a validated ledger version. Otherwise, the information is subject to change. |
### NFT Objects
Each object in the `account_nfts` array represents one [NFToken][] and has the following fields:
| `Field` | Type | Description |
|:---------------|:---------------------|:-------------------------------------|
| `Flags` | Number | A bit-map of boolean flags enabled for this NFToken. See [NFToken Flags](nftoken.html#nftoken-flags) for possible values. |
| `Issuer` | String - [Address][] | The account that issued this NFToken. |
| `NFTokenID` | String | The unique identifier of this NFToken, in hexadecimal. |
| `NFTokenTaxon` | Number | The unscrambled version of this token's [taxon](nftoken.html#taxon). Several tokens with the same taxon might represent instances of a limited series. |
| `URI` | String | The URI data associated with this NFToken, in hexadecimal. |
| `nft_serial` | Number | The token sequence number of this NFToken, which is unique for its issuer. |
## Possible Errors
* Any of the [universal error types][].

View File

@@ -1,20 +1,23 @@
---
html: nft_buy_offers.html
parent: nft-methods.html
parent: path-and-order-book-methods.html
blurb: Get a list of all buy offers for a NFToken.
labels:
- Non-fungible Tokens, NFTs, NFTokens
status: not_enabled
---
# nft_buy_offers
[[Source]](https://github.com/ripple/rippled/blob/xls20/src/ripple/rpc/handlers/NFTOffers.cpp "Source")
The `nft_buy_offers` method returns a list of buy offers for a `NFToken` object.
The `nft_buy_offers` method returns a list of buy offers for a given [NFToken][] object.
{% include '_snippets/nfts-disclaimer.md' %}
## Request Format
An example of the request format:
{% include '_snippets/no-cli-syntax.md' %}
<!-- MULTICODE_BLOCK_START -->
*WebSocket*
@@ -41,7 +44,7 @@ An example of the request format:
<!-- MULTICODE_BLOCK_END -->
[Try it! >](websocket-api-tool.html#nft_sell_offers)
[Try it! >](websocket-api-tool.html?server=wss%3A%2F%2Fxls20-sandbox.rippletest.net%3A51233%2F#nft_buy_offers)
The request includes the following parameters:

View File

@@ -1,19 +1,22 @@
---
html: nft_sell_offers.html
parent: nft-methods.html
parent: path-and-order-book-methods.html
blurb: Get a list of all sell offers for a NFToken.
labels:
- Non-fungible Tokens, NFTs, NFTokens
status: not_enabled
---
# nft_sell_offers
[[Source]](https://github.com/ripple/rippled/blob/xls20/src/ripple/rpc/handlers/NFTOffers.cpp "Source")
{% include '_snippets/nfts-disclaimer.md' %}
The `nft_sell_offers` method returns a list of sell offers for a `NFToken` object.
The `nft_sell_offers` method returns a list of sell offers for a given [NFToken][] object.
## Request Format
An example of the request format:
{% include '_snippets/no-cli-syntax.md' %}
<!-- MULTICODE_BLOCK_START -->
*WebSocket*
@@ -37,7 +40,7 @@ An example of the request format:
<!-- MULTICODE_BLOCK_END -->
[Try it! >](websocket-api-tool.html#nft_sell_offers)
[Try it! >](websocket-api-tool.html?server=wss%3A%2F%2Fxls20-sandbox.rippletest.net%3A51233%2F#nft_sell_offers)
The request includes the following parameters:

View File

@@ -193,7 +193,7 @@ Report the results.
```
results += '\n\nTransaction result: '+ tx.result.meta.TransactionResult
results += '\n\nnfts: ' + JSON.stringify(nfts, null, 2)
document.getElementById('standbyBalanceField').value =
document.getElementById('standbyBalanceField').value =
(await client.getXrpBalance(standby_wallet.address))
document.getElementById('operationalBalanceField').value = results
```
@@ -268,7 +268,7 @@ Disconnect from the ledger.
### Burn Token
### Burn Token
```
@@ -295,7 +295,7 @@ Connect to the ledger and get the account wallets.
```
Define the transaction.
Define the transaction.
```
@@ -334,7 +334,7 @@ Report the results.
results += '\nBalance changes: ' +
JSON.stringify(xrpl.getBalanceChanges(tx.result.meta), null, 2)
document.getElementById('standbyResultField').value = results
document.getElementById('standbyBalanceField').value =
document.getElementById('standbyBalanceField').value =
(await client.getXrpBalance(standby_wallet.address))
results += '\nNFTs: \n' + JSON.stringify(nfts,null,2)
document.getElementById('standbyResultField').value = results
@@ -366,7 +366,7 @@ Report the results.
document.getElementById('operationalResultField').value = results
// Note that you must convert the token URL to a hexadecimal
// Note that you must convert the token URL to a hexadecimal
// value for this transaction.
// ------------------------------------------------------------------------
const transactionBlob = {
@@ -378,7 +378,7 @@ Report the results.
}
// ------------------- Submit transaction and wait for results
// ------------------- Submit transaction and wait for results
const tx = await client.submitAndWait(transactionBlob, { wallet: operational_wallet} )
const nfts = await client.request({
method: "account_nfts",
@@ -389,7 +389,7 @@ Report the results.
// ------------------------------------------------------- Report results
results += '\n\nTransaction result: '+ tx.result.meta.TransactionResult
results += '\n\nnfts: ' + JSON.stringify(nfts, null, 2)
document.getElementById('operationalBalanceField').value =
document.getElementById('operationalBalanceField').value =
(await client.getXrpBalance(operational_wallet.address))
document.getElementById('operationalResultField').value = results
@@ -457,7 +457,7 @@ Report the results.
results += '\nBalance changes: ' +
JSON.stringify(xrpl.getBalanceChanges(tx.result.meta), null, 2)
document.getElementById('operationalResultField').value = results
document.getElementById('operationalBalanceField').value =
document.getElementById('operationalBalanceField').value =
(await client.getXrpBalance(operational_wallet.address))
results += '\nNFTs: \n' + JSON.stringify(nfts,null,2)
document.getElementById('operationalResultField').value = results
@@ -777,3 +777,8 @@ Bold text in the following indicates changes to the form that support the new fu
| Previous | Next |
| :--- | ---: |
| [← 2. Create TrustLine and Send Currency >](create-trustline-send-currency.html) | [4. Transfer NFTokens → >](transfer-nftokens.html) |
<!--{# common link defs #}-->
{% include '_snippets/rippled-api-links.md' %}
{% include '_snippets/tx-type-links.md' %}
{% include '_snippets/rippled_versions.md' %}

View File

@@ -156,7 +156,7 @@ To cancel a buy or sell offer that you have created:
# Code Walkthrough
# Code Walkthrough
You can download the [Quickstart Samples](https://github.com/XRPLF/xrpl-dev-portal/tree/master/content/_code-samples/quickstart/js/quickstart.zip) archive to try each of the samples in your own browser.
@@ -208,7 +208,7 @@ Define the transaction. The _Flags_ value of 1 indicates that this transaction i
Submit the transaction and wait for the results.
```
@@ -216,7 +216,7 @@ Submit the transaction and wait for the results.
```
```
@@ -266,9 +266,9 @@ Report the results of the transaction.
```
results += '\n\nTransaction result:\n' +
results += '\n\nTransaction result:\n' +
JSON.stringify(tx.result.meta.TransactionResult, null, 2)
results += '\n\nBalance changes:\n' +
results += '\n\nBalance changes:\n' +
JSON.stringify(xrpl.getBalanceChanges(tx.result.meta), null, 2)
```
@@ -277,9 +277,9 @@ Get the current XRP balances for the operational and standby accounts.
```
document.getElementById('operationalBalanceField').value =
document.getElementById('operationalBalanceField').value =
(await client.getXrpBalance(operational_wallet.address))
document.getElementById('standbyBalanceField').value =
document.getElementById('standbyBalanceField').value =
(await client.getXrpBalance(standby_wallet.address))
document.getElementById('standbyResultField').value = results
```
@@ -395,13 +395,13 @@ Request the list of buy offers for the token.
Report the results of the transaction.
```
results += "\n\nTransaction result:\n" +
JSON.stringify(tx.result.meta.TransactionResult, null, 2)
results += "\n\nBalance changes:\n" +
results += "\n\nBalance changes:\n" +
JSON.stringify(xrpl.getBalanceChanges(tx.result.meta), null, 2)
document.getElementById('standbyResultField').value = results
```
@@ -517,7 +517,7 @@ Report the transaction results.
results += "\nTransaction result:\n" +
JSON.stringify(tx.result.meta.TransactionResult, null, 2)
results += "\nBalance changes:\n" +
results += "\nBalance changes:\n" +
JSON.stringify(xrpl.getBalanceChanges(tx.result.meta), null, 2)
document.getElementById('standbyResultField').value = results
```
@@ -680,9 +680,9 @@ Get the balances for both accounts.
```
document.getElementById('standbyBalanceField').value =
document.getElementById('standbyBalanceField').value =
(await client.getXrpBalance(standby_wallet.address))
document.getElementById('operationalBalanceField').value =
document.getElementById('operationalBalanceField').value =
(await client.getXrpBalance(operational_wallet.address))
```
@@ -781,7 +781,7 @@ Report the transaction result.
```
result += "\n\nTransaction result:\n" +
result += "\n\nTransaction result:\n" +
JSON.stringify(tx.result.meta.TransactionResult, null, 2)
result += "\nBalance changes:\n" +
JSON.stringify(xrpl.getBalanceChanges(tx.result.meta), null, 2)
@@ -792,9 +792,9 @@ Request the XRP balance for both accounts.
```
document.getElementById('operationalBalanceField').value =
document.getElementById('operationalBalanceField').value =
(await client.getXrpBalance(operational_wallet.address))
document.getElementById('standbyBalanceField').value =
document.getElementById('standbyBalanceField').value =
(await client.getXrpBalance(standby_wallet.address))
document.getElementById('standbyResultField').value = results
```
@@ -875,13 +875,13 @@ These functions duplicate the functions of the standby account for the operation
// Check transaction results -------------------------------------------------
results += '\n\nTransaction result:\n' +
results += '\n\nTransaction result:\n' +
JSON.stringify(tx.result.meta.TransactionResult, null, 2)
results += '\n\nBalance changes:\n' +
results += '\n\nBalance changes:\n' +
JSON.stringify(xrpl.getBalanceChanges(tx.result.meta), null, 2)
document.getElementById('operationalBalanceField').value =
document.getElementById('operationalBalanceField').value =
(await client.getXrpBalance(operational_wallet.address))
document.getElementById('standbyBalanceField').value =
document.getElementById('standbyBalanceField').value =
(await client.getXrpBalance(standby_wallet.address))
document.getElementById('operationalResultField').value = results
@@ -902,7 +902,7 @@ These functions duplicate the functions of the standby account for the operation
const operational_wallet = xrpl.Wallet.fromSeed(operationalSeedField.value)
let net = getNet()
const client = new xrpl.Client(net)
let results = 'Connecting to ' + net + '...'
let results = 'Connecting to ' + net + '...'
document.getElementById('operationalResultField').value = results
await client.connect()
results += '\nConnected. Creating buy offer...'
@@ -950,7 +950,7 @@ These functions duplicate the functions of the standby account for the operation
// Check transaction results -------------------------------------------------
results +="\n\nTransaction result:\n" +
results +="\n\nTransaction result:\n" +
JSON.stringify(tx.result.meta.TransactionResult, null, 2)
results += "\n\nBalance changes:\n" +
JSON.stringify(xrpl.getBalanceChanges(tx.result.meta), null, 2)
@@ -1017,7 +1017,7 @@ These functions duplicate the functions of the standby account for the operation
results += "\nTransaction result:\n" +
JSON.stringify(tx.result.meta.TransactionResult, null, 2)
results += "\nBalance changes:\n" +
results += "\nBalance changes:\n" +
JSON.stringify(xrpl.getBalanceChanges(tx.result.meta), null, 2)
document.getElementById('operationalResultField').value = results
@@ -1101,7 +1101,7 @@ These functions duplicate the functions of the standby account for the operation
"SellOffer": operationalTokenOfferIndexField.value,
}
// Submit transaction --------------------------------------------------------
const tx = await client.submitAndWait(transactionBlob,{wallet: operational_wallet})
const tx = await client.submitAndWait(transactionBlob,{wallet: operational_wallet})
const nfts = await client.request({
method: "account_nfts",
account: operational_wallet.classicAddress
@@ -1113,9 +1113,9 @@ These functions duplicate the functions of the standby account for the operation
document.getElementById('standbyBalanceField').value =
document.getElementById('standbyBalanceField').value =
(await client.getXrpBalance(standby_wallet.address))
document.getElementById('operationalBalanceField').value =
document.getElementById('operationalBalanceField').value =
(await client.getXrpBalance(operational_wallet.address))
@@ -1156,7 +1156,7 @@ These functions duplicate the functions of the standby account for the operation
"BuyOffer": operationalTokenOfferIndexField.value
}
// Submit transaction --------------------------------------------------------
const tx = await client.submitAndWait(transactionBlob,{wallet: operational_wallet})
const tx = await client.submitAndWait(transactionBlob,{wallet: operational_wallet})
const nfts = await client.request({
method: "account_nfts",
account: operational_wallet.classicAddress
@@ -1165,13 +1165,13 @@ These functions duplicate the functions of the standby account for the operation
document.getElementById('operationalResultField').value = results
// Check transaction results -------------------------------------------------
result += "\n\nTransaction result:\n" +
result += "\n\nTransaction result:\n" +
JSON.stringify(tx.result.meta.TransactionResult, null, 2)
result += "\nBalance changes:\n" +
JSON.stringify(xrpl.getBalanceChanges(tx.result.meta), null, 2)
document.getElementById('operationalBalanceField').value =
document.getElementById('operationalBalanceField').value =
(await client.getXrpBalance(operational_wallet.address))
document.getElementById('operationalBalanceField').value =
document.getElementById('operationalBalanceField').value =
(await client.getXrpBalance(standby_wallet.address))
document.getElementById('operationalResultField').value = results
client.disconnect()
@@ -1512,3 +1512,8 @@ Update the form with fields and buttons to support the new functions.
| Previous | Next |
| :--- | ---: |
| [← 3. Mint and Burn NFTokens >](mint-and-burn-nftokens.html) | |
<!--{# common link defs #}-->
{% include '_snippets/rippled-api-links.md' %}
{% include '_snippets/tx-type-links.md' %}
{% include '_snippets/rippled_versions.md' %}

View File

@@ -185,6 +185,8 @@ targets:
"currency-formats.html#comparison": "currency-formats.html"
# Fix links from untranslated NFToken tx refs to translated NFToken page
"nftoken.html#nftoken-flags": "nftoken.html#nftoken-フラグ"
"nftoken.html#taxon": "nftoken.html#分類群"
"basic-data-types.html#addresses": "basic-data-types.html#アドレス"
pages: