Utils
These are the utility functions found in utils.js.
buildEthProof#
buildEthProof( assetInfo )#
Build Ethereum SPV proof using eth-proof library.
createAssetID#
createAssetID( NFTID, assetGuid )#
Returns the GUID for a child asset with the given NFT ID, which would be issued from the specified base asset.
fetchBackendAccount#
fetchBackendAccount( backendURL, addressOrXpub, options, xpub, signer )#
Fetch address or xPub information including transactions and balance information (based on options) from backend Blockbook provider.
fetchBackendAsset#
fetchBackendAsset( backendURL, assetGuid )#
Fetches asset information from the backend Blockbook provider for a specific token/asset, given by the GUID.
fetchBackendBlock#
fetchBackendBlock( backendURL, blockhash )#
Fetches the information for a block from the backend, specified by the block hash.
fetchBackendListAssets#
fetchBackendListAssets( backendUrl, filter )#
Fetches a list of assets from backend Blockbook provider via a filter
fetchBackendRawTx#
fetchBackendRawTx( backendURL, txid )#
Fetches the information for a transaction from the backend, specified by the transaction ID (txid).
fetchBackendSPVProof#
fetchBackendSPVProof( backendURL, txid )#
Fetches a SPV Proof from the backend Blockbook provider. To be used to create a proof for the NEVM bridge.
fetchBackendUTXOS#
fetchBackendUTXOS( backendURL, addressOrXpub, options )#
Fetch the UTXOs for an address or XPUB from the backend Blockbook provider.
fetchEstimateFee#
fetchEstimateFee( backendURL, blocks, options )#
Get estimated fee from backend.
fetchNotarizationFromEndPoint#
fetchNotarizationFromEndPoint( endPoint, txHex )#
Fetch notarization signature via axois from an endPoint URL, see spec for more info: https://github.com/syscoin/sips/blob/master/sip-0002.mediawiki
fetchProviderInfo#
fetchProviderInfo( backendURL )#
Fetches the provider info including blockbook and backend data.
getAllocationsFromTx#
getAllocationsFromTx( tx )#
Get allocation information for an asset transaction.
getAssetsRequiringNotarization#
getAssetsRequiringNotarization( res, assets )#
Get assets from the Result object assigned from syscointx.createTransaction() / syscointx.createAssetTransaction() that require notarization.
getAssetIDs#
getAssetIDs( assetGuid )#
Given a certain child asset's GUID this will return the base asset's GUID as well as the child asset's NFT ID.
getBaseAssetID#
getBaseAssetID( assetGuid )#
Given a certain child asset's GUID this will return the base asset's GUID, from which the child was issued with a NFT ID.
getMemoFromOpReturn#
getMemoFromOpReturn( outputs, memoHeader )#
Returns the memo from an array of outputs by finding the OP_RETURN output and extracting the memo from the script, returns null if not found.
getMemoFromScript#
getMemoFromScript( script, memoHeader )#
Get the memo from a script.
getNotarizationSignatures#
getNotarizationSignatures( notaryAssets, txHex )#
Get notarization signatures from a notary endpoint defined in the asset object. See spec for more info.
HDSigner#
HDSigner( mnemonic, password, isTestnet, networks, SLIP44, pubTypes )#
Manage an HD wallet and accounts, connects to SyscoinJS object.
notarizePSBT#
notarizePSBT( psbt, notaryAssets, rawTx )#
Notarize Result object from syscointx.createTransaction() / syscointx.createAssetTransaction() if required by the assets in the inputs of the transaction
sanitizeBlockbookUTXOs#
sanitizeBlockbookUTXOs( sysFromXpubOrAddress, utxoObj, network, txOpts, assetMap, excludeZeroConf )#
Sanitize back-end provider UTXO objects to be useful for this library.
sendRawTransaction#
sendRawTransaction( backendURL, txHex, signer )#
Sends a raw transaction to the backend Blockbook provider to send to the network.
setTransactionMemo#
setTransactionMemo( rawHex, memoHeader, buffMemo )#
Sets a transaction's memo, or returns null if not found.
signWithWIF#
signWithWIF( psbt, wif, network )#
Signs a PSBT/Result object with a WIF
TrezorSigner#
TrezorSigner( password, isTestnet, networks, SLIP44, pubTypes, connectSrc, disableLazyLoad )#
Manage an HD wallet and accounts using a Trezor hardware wallet.