mirror of
https://github.com/XRPLF/clio.git
synced 2025-11-20 19:56:00 +00:00
@@ -481,9 +481,33 @@ CreateSignerLists(std::vector<std::pair<std::string, uint32_t>> const& signers)
|
||||
entry.setAccountID(ripple::sfAccount, GetAccountIDWithString(signer.first));
|
||||
entry.setFieldU16(ripple::sfSignerWeight, signer.second);
|
||||
quorum += signer.second;
|
||||
list.push_back(entry);
|
||||
list.push_back(std::move(entry));
|
||||
}
|
||||
signerlists.setFieldU32(ripple::sfSignerQuorum, quorum);
|
||||
signerlists.setFieldArray(ripple::sfSignerEntries, list);
|
||||
return signerlists;
|
||||
}
|
||||
|
||||
ripple::STObject
|
||||
CreateNFTTokenPage(
|
||||
std::vector<std::pair<std::string, std::string>> const& tokens,
|
||||
std::optional<ripple::uint256> previousPage)
|
||||
{
|
||||
auto tokenPage = ripple::STObject(ripple::sfLedgerEntry);
|
||||
tokenPage.setFieldU16(ripple::sfLedgerEntryType, ripple::ltNFTOKEN_PAGE);
|
||||
tokenPage.setFieldU32(ripple::sfFlags, 0);
|
||||
tokenPage.setFieldH256(ripple::sfPreviousTxnID, ripple::uint256());
|
||||
tokenPage.setFieldU32(ripple::sfPreviousTxnLgrSeq, 0);
|
||||
if (previousPage)
|
||||
tokenPage.setFieldH256(ripple::sfPreviousPageMin, *previousPage);
|
||||
ripple::STArray list;
|
||||
for (auto const& token : tokens)
|
||||
{
|
||||
auto entry = ripple::STObject(ripple::sfNFToken);
|
||||
entry.setFieldH256(ripple::sfNFTokenID, ripple::uint256{token.first.c_str()});
|
||||
entry.setFieldVL(ripple::sfURI, ripple::Slice(token.second.c_str(), token.second.size()));
|
||||
list.push_back(std::move(entry));
|
||||
}
|
||||
tokenPage.setFieldArray(ripple::sfNFTokens, list);
|
||||
return tokenPage;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user