diff --git a/web/cashtab/src/components/Airdrop/__tests__/__snapshots__/Airdrop.test.js.snap b/web/cashtab/src/components/Airdrop/__tests__/__snapshots__/Airdrop.test.js.snap
index 30c5a19e9..0bf784baa 100644
--- a/web/cashtab/src/components/Airdrop/__tests__/__snapshots__/Airdrop.test.js.snap
+++ b/web/cashtab/src/components/Airdrop/__tests__/__snapshots__/Airdrop.test.js.snap
@@ -1,565 +1,565 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP @generated
exports[`Wallet with BCH balances 1`] = `
Array [
You currently have 0
XEC
Deposit some funds to use this feature
,
,
,
]
`;
exports[`Wallet with BCH balances and tokens 1`] = `
Array [
You currently have 0
XEC
Deposit some funds to use this feature
,
,
,
]
`;
exports[`Wallet with BCH balances and tokens and state field 1`] = `
Array [
,
,
,
]
`;
exports[`Wallet without BCH balance 1`] = `
Array [
You currently have 0
XEC
Deposit some funds to use this feature
,
,
,
]
`;
exports[`Without wallet defined 1`] = `
Array [
You currently have 0
XEC
Deposit some funds to use this feature
,
,
,
]
`;
diff --git a/web/cashtab/src/components/Common/CustomIcons.js b/web/cashtab/src/components/Common/CustomIcons.js
index 7907174d8..c67c707eb 100644
--- a/web/cashtab/src/components/Common/CustomIcons.js
+++ b/web/cashtab/src/components/Common/CustomIcons.js
@@ -1,167 +1,171 @@
import * as React from 'react';
import styled from 'styled-components';
import {
CopyOutlined,
DollarOutlined,
LoadingOutlined,
WalletOutlined,
QrcodeOutlined,
SettingOutlined,
LockOutlined,
ContactsOutlined,
+ FireOutlined,
} from '@ant-design/icons';
import { Image } from 'antd';
import { currency } from 'components/Common/Ticker';
import { ReactComponent as Send } from 'assets/send.svg';
import { ReactComponent as Receive } from 'assets/receive.svg';
import { ReactComponent as Genesis } from 'assets/flask.svg';
import { ReactComponent as Unparsed } from 'assets/alert-circle.svg';
import { ReactComponent as Home } from 'assets/home.svg';
import { ReactComponent as Settings } from 'assets/cog.svg';
import { ReactComponent as CopySolid } from 'assets/copy.svg';
import { ReactComponent as LinkSolid } from 'assets/external-link-square-alt.svg';
import { ReactComponent as Airdrop } from 'assets/airdrop-icon.svg';
import { ReactComponent as Pdf } from 'assets/file-pdf.svg';
import { ReactComponent as Plus } from 'assets/plus.svg';
import { ReactComponent as Download } from 'assets/download.svg';
import { ReactComponent as Edit } from 'assets/edit.svg';
import { ReactComponent as Trashcan } from 'assets/trashcan.svg';
import { ReactComponent as FingerprintSVG } from 'assets/fingerprint-solid.svg';
export const CashLoadingIcon = ;
export const CashReceivedNotificationIcon = () => (
);
export const TokenReceivedNotificationIcon = () => (
);
export const MessageSignedNotificationIcon = () => (
);
+export const ThemedBurnOutlined = styled(FireOutlined)`
+ color: ${props => props.theme.eCashPurple} !important;
+`;
export const ThemedCopyOutlined = styled(CopyOutlined)`
color: ${props => props.theme.icons.outlined} !important;
`;
export const ThemedDollarOutlined = styled(DollarOutlined)`
color: ${props => props.theme.icons.outlined} !important;
`;
export const ThemedWalletOutlined = styled(WalletOutlined)`
color: ${props => props.theme.icons.outlined} !important;
`;
export const ThemedQrcodeOutlined = styled(QrcodeOutlined)`
color: ${props => props.theme.walletBackground} !important;
`;
export const ThemedSettingOutlined = styled(SettingOutlined)`
color: ${props => props.theme.icons.outlined} !important;
`;
export const ThemedLockOutlined = styled(LockOutlined)`
color: ${props => props.theme.icons.outlined} !important;
`;
export const ThemedContactsOutlined = styled(ContactsOutlined)`
color: ${props => props.theme.icons.outlined} !important;
`;
export const ThemedContactSendOutlined = styled(Send)`
color: ${props => props.theme.icons.outlined} !important;
transform: rotate(-35deg);
padding: 0.15rem 0rem 0.18rem 0rem;
height: 1.3em;
width: 1.3em;
`;
export const ThemedCopySolid = styled(CopySolid)`
fill: ${props => props.theme.contrast};
padding: 0rem 0rem 0.27rem 0rem;
height: 1.3em;
width: 1.3em;
`;
export const ThemedLinkSolid = styled(LinkSolid)`
fill: ${props => props.theme.contrast};
padding: 0.15rem 0rem 0.18rem 0rem;
height: 1.3em;
width: 1.3em;
`;
export const ThemedPdfSolid = styled(Pdf)`
fill: ${props => props.theme.contrast};
padding: 0.15rem 0rem 0.18rem 0rem;
height: 1.3em;
width: 1.3em;
`;
export const ThemedPlusOutlined = styled(Plus)`
fill: ${props => props.theme.contrast};
padding: 0.15rem 0rem 0.18rem 0rem;
height: 1.3em;
width: 1.3em;
`;
export const ThemedDownloadOutlined = styled(Download)`
fill: ${props => props.theme.contrast};
padding: 0.15rem 0rem 0.18rem 0rem;
height: 1.3em;
width: 1.3em;
`;
export const ThemedEditOutlined = styled(Edit)`
stroke: ${props => props.theme.eCashBlue};
fill: ${props => props.theme.eCashBlue};
width: 20px;
height: 20px;
cursor: pointer;
`;
export const ThemedTrashcanOutlined = styled(Trashcan)`
stroke: ${props => props.theme.eCashBlue};
fill: ${props => props.theme.eCashBlue};
width: 20px;
height: 20px;
cursor: pointer;
`;
export const ThemedFingerprintSVG = styled(FingerprintSVG)`
fill: ${props => props.theme.buttons.primary.color};
`;
export const LoadingBlock = styled.div`
width: 100%;
display: flex;
align-items: center;
justify-content: center;
padding: 24px;
flex-direction: column;
svg {
width: 50px;
height: 50px;
fill: ${props => props.theme.eCashBlue};
}
`;
export const CashLoader = () => (
);
export const ReceiveIcon = () => ;
export const GenesisIcon = () => ;
export const UnparsedIcon = () => ;
export const HomeIcon = () => ;
export const SettingsIcon = () => ;
export const AirdropIcon = () => ;
export const SendIcon = styled(Send)`
transform: rotate(-35deg);
`;
export const CustomSpinner = ;
diff --git a/web/cashtab/src/components/Configure/__tests__/__snapshots__/Configure.test.js.snap b/web/cashtab/src/components/Configure/__tests__/__snapshots__/Configure.test.js.snap
index 1c566e3ca..b37749f22 100644
--- a/web/cashtab/src/components/Configure/__tests__/__snapshots__/Configure.test.js.snap
+++ b/web/cashtab/src/components/Configure/__tests__/__snapshots__/Configure.test.js.snap
@@ -1,1129 +1,1129 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP @generated
exports[`Wallet with BCH balances and tokens 1`] = `
Backup your wallet
Your seed phrase is the only way to restore your wallet. Write it down. Keep it safe.
Manage Wallets
New Wallet
Import Wallet
Fiat Currency
General Settings
Hide messages from unknown sender
`;
exports[`Without wallet defined 1`] = `
Backup your wallet
Your seed phrase is the only way to restore your wallet. Write it down. Keep it safe.
Manage Wallets
New Wallet
Import Wallet
Fiat Currency
General Settings
Hide messages from unknown sender
`;
diff --git a/web/cashtab/src/components/Home/Tx.js b/web/cashtab/src/components/Home/Tx.js
index 570231376..037eae316 100644
--- a/web/cashtab/src/components/Home/Tx.js
+++ b/web/cashtab/src/components/Home/Tx.js
@@ -1,1118 +1,1134 @@
import React, { useState } from 'react';
import { Link } from 'react-router-dom';
import PropTypes from 'prop-types';
import styled from 'styled-components';
import {
SendIcon,
ReceiveIcon,
GenesisIcon,
UnparsedIcon,
ThemedContactsOutlined,
+ ThemedBurnOutlined,
} from 'components/Common/CustomIcons';
import { currency } from 'components/Common/Ticker';
import { formatBalance, formatDate } from 'utils/formatting';
import TokenIcon from 'components/Tokens/TokenIcon';
import { Collapse } from 'antd';
import CopyToClipboard from 'components/Common/CopyToClipboard';
import {
ThemedCopySolid,
ThemedLinkSolid,
ThemedPdfSolid,
} from 'components/Common/CustomIcons';
const TxIcon = styled.div`
svg {
width: 20px;
height: 20px;
}
height: 40px;
width: 40px;
border: 1px solid #fff;
display: flex;
align-items: center;
justify-content: center;
border-radius: 100px;
`;
const AddToContacts = styled.span`
max-height: 200px;
text-align: left;
`;
const SentTx = styled(TxIcon)`
svg {
margin-right: -3px;
}
fill: ${props => props.theme.contrast};
`;
+const BurnedTx = styled(TxIcon)`
+ svg {
+ margin-right: -3px;
+ }
+ border-color: ${props => props.theme.eCashPurple};
+`;
const ReceivedTx = styled(TxIcon)`
svg {
fill: ${props => props.theme.eCashBlue};
}
border-color: ${props => props.theme.eCashBlue};
`;
const GenesisTx = styled(TxIcon)`
border-color: ${props => props.theme.genesisGreen};
svg {
fill: ${props => props.theme.genesisGreen};
}
`;
const UnparsedTx = styled(TxIcon)`
color: ${props => props.theme.eCashBlue} !important;
`;
const DateType = styled.div`
text-align: left;
padding: 12px;
@media screen and (max-width: 500px) {
font-size: 0.8rem;
}
`;
const GenesisHeader = styled.h3``;
const ReceivedHeader = styled.h3``;
const LeftTextCtn = styled.div`
text-align: left;
display: flex;
align-items: left;
flex-direction: column;
margin-left: 10px;
h3 {
color: ${props => props.theme.contrast};
font-size: 14px;
font-weight: 700;
margin: 0;
}
${GenesisHeader} {
color: ${props => props.theme.genesisGreen};
}
${ReceivedHeader} {
color: ${props => props.theme.eCashBlue};
}
h4 {
font-size: 12px;
color: ${props => props.theme.lightWhite};
margin: 0;
}
`;
const RightTextCtn = styled.div`
text-align: right;
display: flex;
align-items: left;
flex-direction: column;
margin-left: 10px;
h3 {
color: ${props => props.theme.contrast};
font-size: 14px;
font-weight: 700;
margin: 0;
}
h4 {
font-size: 12px;
color: ${props => props.theme.lightWhite};
margin: 0;
}
`;
const OpReturnType = styled.div`
text-align: right;
width: 100%;
padding: 10px;
border-radius: 5px;
background: ${props => props.theme.sentMessage};
margin-top: 15px;
transition: max-height 500ms cubic-bezier(0, 1, 0, 1);
${({ hideMessagesFromUnknownSenders }) =>
hideMessagesFromUnknownSenders &&
`
max-height: auto;
&[aria-expanded='true'] {
max-height: 5000px;
transition: max-height 500ms ease-in;
}
&[aria-expanded='false'] {
transition: max-height 200ms ease-in;
max-height: 6rem;
}
`}
h4 {
color: ${props => props.theme.lightWhite};
margin: 0;
font-size: 12px;
display: inline-block;
}
p {
color: ${props => props.theme.contrast};
margin: 0;
font-size: 14px;
margin-bottom: 10px;
overflow-wrap: break-word;
}
a {
color: ${props => props.theme.contrast};
margin: 0px 0px 0px 5px;
font-size: 10px;
border: 1px solid ${props => props.theme.contrast};
border-radius: 5px;
padding: 2px 10px;
opacity: 0.6;
}
a:hover {
opacity: 1;
border-color: ${props => props.theme.eCashBlue};
color: ${props => props.theme.contrast};
background: ${props => props.theme.eCashBlue};
}
${({ received, ...props }) =>
received &&
`
text-align: left;
background: ${props.theme.receivedMessage};
`}
`;
const ShowHideMessageButton = styled.button`
color: ${props => props.theme.contrast};
background-color: transparent;
margin: 0px 0px 0px 5px;
font-size: 10px;
border: 1px solid ${props => props.theme.contrast};
border-radius: 5px;
padding: 1.6px 10px;
opacity: 0.6;
&:hover {
opacity: 1;
border-color: ${props => props.theme.eCashBlue};
color: ${props => props.theme.contrast};
background: ${props => props.theme.eCashBlue};
}
`;
const ReceivedLabel = styled.span`
font-weight: bold;
color: ${props => props.theme.eCashBlue} !important;
`;
const EncryptionMessageLabel = styled.span`
font-weight: bold;
font-size: 12px;
color: ${props => props.theme.encryptionRed};
white-space: nowrap;
`;
const UnauthorizedDecryptionMessage = styled.span`
text-align: left;
color: ${props => props.theme.encryptionRed};
white-space: nowrap;
font-style: italic;
`;
const DecryptedMessage = styled.div`
${props =>
props.authorized
? {
color: `${props => props.theme.contrast}`,
margin: '0',
fontSize: '14px',
marginBottom: '10px',
overflowWrap: 'break-word',
}
: `${UnauthorizedDecryptionMessage}`}
`;
const TxInfo = styled.div`
text-align: right;
display: flex;
align-items: left;
flex-direction: column;
margin-left: 10px;
flex-grow: 2;
h3 {
color: ${props => props.theme.contrast};
font-size: 14px;
font-weight: 700;
margin: 0;
}
h4 {
font-size: 12px;
color: ${props => props.theme.lightWhite};
margin: 0;
}
@media screen and (max-width: 500px) {
font-size: 0.8rem;
}
`;
const TokenInfo = styled.div`
display: flex;
flex-grow: 1;
justify-content: flex-end;
color: ${props =>
props.outgoing ? props.theme.secondary : props.theme.eCashBlue};
@media screen and (max-width: 500px) {
font-size: 0.8rem;
grid-template-columns: 16px auto;
}
`;
const TxTokenIcon = styled.div`
img {
height: 24px;
width: 24px;
}
@media screen and (max-width: 500px) {
img {
height: 16px;
width: 16px;
}
}
grid-column-start: 1;
grid-column-end: span 1;
grid-row-start: 1;
grid-row-end: span 2;
align-self: center;
`;
const TokenTxAmt = styled.h3`
text-align: right;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
`;
const TokenTxAmtGenesis = styled(TokenTxAmt)`
color: ${props => props.theme.genesisGreen} !important;
`;
const TokenTxAmtReceived = styled(TokenTxAmt)`
color: ${props => props.theme.eCashBlue} !important;
`;
const TokenName = styled.h4`
text-align: right;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
`;
const TxWrapper = styled.div`
display: flex;
align-items: center;
border-top: 1px solid rgba(255, 255, 255, 0.12);
color: ${props => props.theme.contrast};
padding: 10px 0;
flex-wrap: wrap;
width: 100%;
`;
const AntdContextCollapseWrapper = styled.div`
.ant-collapse {
border: none !important;
background-color: transparent !important;
}
.ant-collapse-item {
border: none !important;
}
.ant-collapse-header {
padding: 0 !important;
color: ${props => props.theme.forms.text} !important;
}
border-radius: 16px;
.ant-collapse-content-box {
padding-right: 0 !important;
}
@media screen and (max-width: 500px) {
grid-template-columns: 24px 30% 50%;
}
`;
const Panel = Collapse.Panel;
const DropdownIconWrapper = styled.div`
display: flex;
align-items: center;
gap: 4px;
`;
const TextLayer = styled.div`
font-size: 12px;
color: ${props => props.theme.contrast};
white-space: nowrap;
`;
const DropdownButton = styled.button`
display: flex;
justify-content: flex-end;
position: relative;
background-color: ${props => props.theme.walletBackground};
border: none;
cursor: pointer;
padding: 0;
&:hover {
div {
color: ${props => props.theme.eCashBlue}!important;
}
svg {
fill: ${props => props.theme.eCashBlue}!important;
}
}
`;
const PanelCtn = styled.div`
display: flex;
align-items: center;
justify-content: flex-end;
right: 0;
gap: 8px;
@media (max-width: 500px) {
flex-wrap: wrap;
}
`;
const TxLink = styled.a`
color: ${props => props.theme.primary};
`;
const NotInContactsAlert = styled.h4`
color: ${props => props.theme.forms.error} !important;
font-style: italic;
`;
const ReceivedFromCtn = styled.div`
display: flex;
align-items: center;
justify-content: center;
gap: 3px;
h4 {
margin-top: 2.5px;
}
`;
const Tx = ({
data,
fiatPrice,
fiatCurrency,
addressesInContactList,
contactList,
cashtabSettings,
}) => {
const [displayedMessage, setDisplayedMessage] = useState(false);
const handleShowMessage = () => {
setDisplayedMessage(!displayedMessage);
};
const txDate = formatDate(data.timeFirstSeen, navigator.language);
// A wallet migrating from bch-api tx history to chronik will get caught here for one update cycle
let unparsedTx = false;
if (!Object.keys(data).includes('parsed')) {
unparsedTx = true;
}
return (
<>
{unparsedTx ? (
Unparsed
{txDate}
Open in Explorer
) : (
{data.parsed.legacy.outgoingTx ? (
<>
{data.parsed.legacy.tokenTx &&
data.slpTxData.slpMeta
.txType === 'GENESIS' ? (
+ ) : data.parsed.isTokenBurn ? (
+
+
+
) : (
)}
>
) : (
)}
{data.parsed.legacy.outgoingTx ? (
<>
{data.parsed.legacy
.tokenTx &&
data.slpTxData.slpMeta
.txType ===
'GENESIS' ? (
Genesis
) : (
- Sent
+
+ {data.parsed
+ .isTokenBurn
+ ? 'Burned'
+ : 'Sent'}
+
)}
>
) : (
Received
{addressesInContactList.includes(
data.parsed.legacy
.replyAddress,
) && (
<>
from
{contactList.map(
(
contact,
index,
) => {
let result;
const contactAddress =
contact.address;
const dataAddress =
data
.parsed
.legacy
.replyAddress;
if (
contactAddress ===
dataAddress
) {
result =
contact.name;
} else {
result =
'';
}
return (
{
result
}
);
},
)}
>
)}
)}
{txDate}
{data.parsed.legacy.tokenTx ? (
{data.parsed.legacy.tokenTx &&
data.parsed.genesisInfo ? (
<>
{data.parsed.legacy
.outgoingTx ? (
{data.slpTxData
.slpMeta
.txType ===
'GENESIS' ? (
<>
+{' '}
{data.parsed.etokenAmount.toString()}
{
data
.parsed
.genesisInfo
.tokenTicker
}
{
data
.parsed
.genesisInfo
.tokenName
}
>
) : (
<>
-{' '}
{data.parsed.etokenAmount.toString()}
{
data
.parsed
.genesisInfo
.tokenTicker
}
{
data
.parsed
.genesisInfo
.tokenName
}
>
)}
) : (
+{' '}
{data.parsed.etokenAmount.toString()}
{
data
.parsed
.genesisInfo
.tokenTicker
}
{
data
.parsed
.genesisInfo
.tokenName
}
)}
>
) : (
Token Tx
)}
) : (
<>
{data.parsed.legacy
.outgoingTx ? (
<>
-
{formatBalance(
data.parsed
.legacy
.amountSent,
)}{' '}
{
currency.ticker
}
{fiatPrice !==
null &&
!isNaN(
data.parsed
.legacy
.amountSent,
) && (
-
{
currency
.fiatCurrencies[
fiatCurrency
]
.symbol
}
{(
data
.parsed
.legacy
.amountSent *
fiatPrice
).toFixed(
2,
)}{' '}
{
currency
.fiatCurrencies
.fiatCurrency
}
)}
>
) : (
<>
+
{formatBalance(
data.parsed
.legacy
.amountReceived,
)}{' '}
{
currency.ticker
}
{fiatPrice !==
null &&
!isNaN(
data.parsed
.legacy
.amountReceived,
) && (
+
{
currency
.fiatCurrencies[
fiatCurrency
]
.symbol
}
{(
data
.parsed
.legacy
.amountReceived *
fiatPrice
).toFixed(
2,
)}{' '}
{
currency
.fiatCurrencies
.fiatCurrency
}
)}
>
)}
>
)}
{data.parsed.legacy.opReturnMessage && (
<>
{!data.parsed.legacy
.outgoingTx &&
!addressesInContactList.includes(
data.parsed.legacy
.replyAddress,
) && (
Warning: This
sender is not in
your contact
list. Beware of
scams.
)}
{data.parsed.legacy
.isCashtabMessage ? (
Cashtab Message{' '}
) : (
External Message
)}
{data.parsed.legacy
.isEncryptedMessage ? (
- Encrypted
) : (
''
)}
{cashtabSettings.hideMessagesFromUnknownSenders ? (
<>
{/*unencrypted OP_RETURN Message*/}
{data.parsed.legacy
.opReturnMessage &&
!data.parsed
.legacy
.isEncryptedMessage && (
<>
{!displayedMessage &&
!data
.parsed
.legacy
.outgoingTx &&
!addressesInContactList.includes(
data
.parsed
.legacy
.replyAddress,
) ? (
{
e.stopPropagation();
handleShowMessage();
}}
>
Show
) : (
<>
{' '}
{
data
.parsed
.legacy
.opReturnMessage
}
{!addressesInContactList.includes(
data
.parsed
.legacy
.replyAddress,
) &&
!data
.parsed
.legacy
.outgoingTx && (
{
e.stopPropagation();
handleShowMessage();
}}
>
Hide
)}
>
)}
>
)}
{data.parsed.legacy
.opReturnMessage &&
data.parsed
.legacy
.isEncryptedMessage && (
<>
{!displayedMessage &&
!data
.parsed
.legacy
.outgoingTx &&
!addressesInContactList.includes(
data
.parsed
.legacy
.replyAddress,
) ? (
{
e.stopPropagation();
handleShowMessage();
}}
>
Show
) : (
<>
{
data
.parsed
.legacy
.opReturnMessage
}
{!addressesInContactList.includes(
data
.parsed
.legacy
.replyAddress,
) &&
// do not render 'Hide' button if msg cannot be decrypted
data
.parsed
.legacy
.decryptionSuccess && (
{
e.stopPropagation();
handleShowMessage();
}}
>
Hide
)}
>
)}
>
)}
>
) : (
<>
{/*unencrypted OP_RETURN Message*/}
{data.parsed.legacy
.opReturnMessage &&
!data.parsed.legacy
.isEncryptedMessage ? (
{
data
.parsed
.legacy
.opReturnMessage
}
) : (
''
)}
{/*encrypted and wallet is authorized to view OP_RETURN Message*/}
{data.parsed.legacy
.opReturnMessage &&
data.parsed.legacy
.isEncryptedMessage &&
data.parsed.legacy
.decryptionSuccess ? (
{
data
.parsed
.legacy
.opReturnMessage
}
) : (
''
)}
{/*encrypted but wallet is not authorized to view OP_RETURN Message*/}
{data.parsed.legacy
.opReturnMessage &&
data.parsed.legacy
.isEncryptedMessage &&
!data.parsed.legacy
.decryptionSuccess ? (
{
data
.parsed
.legacy
.opReturnMessage
}
) : (
''
)}
>
)}
{(!data.parsed.legacy
.outgoingTx &&
data.parsed.legacy
.replyAddress &&
addressesInContactList.includes(
data.parsed.legacy
.replyAddress,
)) ||
(!cashtabSettings.hideMessagesFromUnknownSenders &&
!data.parsed.legacy
.outgoingTx &&
data.parsed.legacy
.replyAddress &&
displayedMessage) ? (
Reply
) : (
''
)}
>
)}
>
}
>
Txid
{data.parsed.legacy.opReturnMessage && (
Msg
)}
View on e.cash
Receipt
{!data.parsed.legacy.outgoingTx &&
data.parsed.legacy.replyAddress &&
!addressesInContactList.includes(
data.parsed.legacy.replyAddress,
) && (
Add to contacts
)}
)}
>
);
};
Tx.propTypes = {
data: PropTypes.object,
fiatPrice: PropTypes.number,
fiatCurrency: PropTypes.string,
addressesInContactList: PropTypes.arrayOf(PropTypes.string),
contactList: PropTypes.arrayOf(
PropTypes.shape({
address: PropTypes.string,
name: PropTypes.string,
}),
),
cashtabSettings: PropTypes.oneOfType([
PropTypes.shape({
fiatCurrency: PropTypes.string,
sendModal: PropTypes.bool,
autoCameraOn: PropTypes.bool,
hideMessagesFromUnknownSenders: PropTypes.bool,
}),
PropTypes.bool,
]),
};
export default Tx;
diff --git a/web/cashtab/src/components/Home/__tests__/__snapshots__/Home.test.js.snap b/web/cashtab/src/components/Home/__tests__/__snapshots__/Home.test.js.snap
index ee1200bbf..1a79f694c 100644
--- a/web/cashtab/src/components/Home/__tests__/__snapshots__/Home.test.js.snap
+++ b/web/cashtab/src/components/Home/__tests__/__snapshots__/Home.test.js.snap
@@ -1,505 +1,505 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP @generated
exports[`Wallet with BCH balances 1`] = `
Array [
,
Transactions
eTokens
π
Congratulations on your new wallet!
π
Start using the wallet immediately to receive
XEC
payments, or load it up with
XEC
to send to others
Create eToken
Tokens sent to your
eToken
address will appear here
,
]
`;
exports[`Wallet with BCH balances and tokens 1`] = `
Array [
,
Transactions
eTokens
π
Congratulations on your new wallet!
π
Start using the wallet immediately to receive
XEC
payments, or load it up with
XEC
to send to others
Create eToken
Tokens sent to your
eToken
address will appear here
,
]
`;
exports[`Wallet with BCH balances and tokens and state field 1`] = `
Array [
,
Transactions
eTokens
π
Congratulations on your new wallet!
π
Start using the wallet immediately to receive
XEC
payments, or load it up with
XEC
to send to others
,
]
`;
exports[`Wallet without BCH balance 1`] = `
Array [
,
Transactions
eTokens
π
Congratulations on your new wallet!
π
Start using the wallet immediately to receive
XEC
payments, or load it up with
XEC
to send to others
Create eToken
Tokens sent to your
eToken
address will appear here
,
]
`;
exports[`Without wallet defined 1`] = `
`;
diff --git a/web/cashtab/src/components/Receive/__tests__/__snapshots__/Receive.test.js.snap b/web/cashtab/src/components/Receive/__tests__/__snapshots__/Receive.test.js.snap
index 04a994b3b..67503a39c 100644
--- a/web/cashtab/src/components/Receive/__tests__/__snapshots__/Receive.test.js.snap
+++ b/web/cashtab/src/components/Receive/__tests__/__snapshots__/Receive.test.js.snap
@@ -1,586 +1,586 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP @generated
exports[`Wallet with BCH balances 1`] = `
`;
exports[`Wallet with BCH balances and tokens 1`] = `
`;
exports[`Wallet with BCH balances and tokens and state field 1`] = `
`;
exports[`Wallet without BCH balance 1`] = `
`;
exports[`Without wallet defined 1`] = `
`;
diff --git a/web/cashtab/src/components/Send/__tests__/__snapshots__/Send.test.js.snap b/web/cashtab/src/components/Send/__tests__/__snapshots__/Send.test.js.snap
index ba2ef5dcf..2164bde33 100644
--- a/web/cashtab/src/components/Send/__tests__/__snapshots__/Send.test.js.snap
+++ b/web/cashtab/src/components/Send/__tests__/__snapshots__/Send.test.js.snap
@@ -1,2876 +1,2876 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP @generated
exports[`Wallet with BCH balances 1`] = `
Array [
You currently have 0
XEC
Deposit some funds to use this feature
,
,
]
`;
exports[`Wallet with BCH balances and tokens 1`] = `
Array [
You currently have 0
XEC
Deposit some funds to use this feature
,
,
]
`;
exports[`Wallet with BCH balances and tokens and state field 1`] = `
Array [
,
,
]
`;
exports[`Wallet without BCH balance 1`] = `
Array [
You currently have 0
XEC
Deposit some funds to use this feature
,
,
]
`;
exports[`Without wallet defined 1`] = `
Array [
You currently have 0
XEC
Deposit some funds to use this feature
,
,
]
`;
diff --git a/web/cashtab/src/components/Send/__tests__/__snapshots__/SendToken.test.js.snap b/web/cashtab/src/components/Send/__tests__/__snapshots__/SendToken.test.js.snap
index 83e30bbe3..36e9b4562 100644
--- a/web/cashtab/src/components/Send/__tests__/__snapshots__/SendToken.test.js.snap
+++ b/web/cashtab/src/components/Send/__tests__/__snapshots__/SendToken.test.js.snap
@@ -1,238 +1,238 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP @generated
exports[`Wallet with BCH balances and tokens 1`] = `null`;
exports[`Wallet with BCH balances and tokens and state field 1`] = `
`;
exports[`Without wallet defined 1`] = `null`;
diff --git a/web/cashtab/src/components/Tokens/__tests__/__snapshots__/CreateTokenForm.test.js.snap b/web/cashtab/src/components/Tokens/__tests__/__snapshots__/CreateTokenForm.test.js.snap
index 4fda72f81..d21d224a7 100644
--- a/web/cashtab/src/components/Tokens/__tests__/__snapshots__/CreateTokenForm.test.js.snap
+++ b/web/cashtab/src/components/Tokens/__tests__/__snapshots__/CreateTokenForm.test.js.snap
@@ -1,354 +1,354 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP @generated
exports[`Wallet with BCH balances and tokens and state field 1`] = `
Create a Token
Β Create eToken
`;
diff --git a/web/cashtab/src/components/Tokens/__tests__/__snapshots__/Tokens.test.js.snap b/web/cashtab/src/components/Tokens/__tests__/__snapshots__/Tokens.test.js.snap
index 86c92b7aa..2527783e7 100644
--- a/web/cashtab/src/components/Tokens/__tests__/__snapshots__/Tokens.test.js.snap
+++ b/web/cashtab/src/components/Tokens/__tests__/__snapshots__/Tokens.test.js.snap
@@ -1,629 +1,629 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP @generated
exports[`Wallet with BCH balances 1`] = `
Array [
,
Create a Token
You need at least
5.5
XEC
(
$
NaN
USD
) to create a token
,
]
`;
exports[`Wallet with BCH balances and tokens 1`] = `
Array [
,
Create a Token
You need at least
5.5
XEC
(
$
NaN
USD
) to create a token
,
]
`;
exports[`Wallet with BCH balances and tokens and state field 1`] = `
Array [
,
Create a Token
Β Create eToken
,
]
`;
exports[`Wallet without BCH balance 1`] = `
Array [
,
Create a Token
You need at least
5.5
XEC
(
$
NaN
USD
) to create a token
,
]
`;
exports[`Without wallet defined 1`] = `
Array [
,
Create a Token
You need at least
5.5
XEC
(
$
NaN
USD
) to create a token
,
]
`;
diff --git a/web/cashtab/src/utils/__mocks__/chronikTxHistory.js b/web/cashtab/src/utils/__mocks__/chronikTxHistory.js
index f70401d35..725f09ce5 100644
--- a/web/cashtab/src/utils/__mocks__/chronikTxHistory.js
+++ b/web/cashtab/src/utils/__mocks__/chronikTxHistory.js
@@ -1,7236 +1,7388 @@
export const mockTxHistoryOfAllAddresses = [
{
txs: [
{
txid: '56e9b1d16c9989186c846187db57d9a9389c3ecc74e7237c1d1d0327cf904a55',
version: 2,
inputs: [
{
prevOut: {
txid: 'd27609956b0e4313f807fd58b82cc77f9b2bba1a792eac02707462a3d6863958',
outIdx: 2,
},
inputScript:
'473044022024a187f6dc32082e765eeb37e1a6726e99871b3df0c385ad135ddcf73df0e79102203b81d7eb112a193e23147974432bb12116d75e995aa8c3b6a51943cc4dbd8694412102c0850ac54a3915aa762c1ada2f50076b2aa4bc7d188eee9b5af6ddfa412a363f',
outputScript:
'76a914a9f494266e4b3c823712f27dedcb83e30b2fe59f88ac',
value: '12214100',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '0',
outputScript:
'6a04534c500001010747454e4553495303434b410d4368726f6e696b20416c7068611468747470733a2f2f636173687461622e636f6d2f4c0001084c000800000014b230ce38',
},
{
value: '546',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
slpToken: {
amount: '88888888888',
isMintBaton: false,
},
spentBy: {
txid: 'a83257b2facf7c6d4f8df9a307dee9cc79af9323b8bb803994d5c967bf916569',
outIdx: 1,
},
},
{
value: '12213031',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
spentBy: {
txid: '5fc6f53ef0f94e66d5f6983402441cfdece1dbd35bd500b6e15881d1b37aa93f',
outIdx: 67,
},
},
],
lockTime: 0,
slpTxData: {
slpMeta: {
tokenType: 'FUNGIBLE',
txType: 'GENESIS',
tokenId:
'56e9b1d16c9989186c846187db57d9a9389c3ecc74e7237c1d1d0327cf904a55',
},
genesisInfo: {
tokenTicker: 'CKA',
tokenName: 'Chronik Alpha',
tokenDocumentUrl: 'https://cashtab.com/',
tokenDocumentHash: '',
decimals: 8,
},
},
block: {
height: 757174,
hash: '000000000000000011c5e064ac6295bb1c1e1c306019e591b9c79290c24c33ff',
timestamp: '1663091856',
},
timeFirstSeen: '1663091668',
size: 304,
isCoinbase: false,
network: 'XEC',
},
{
txid: 'd27609956b0e4313f807fd58b82cc77f9b2bba1a792eac02707462a3d6863958',
version: 2,
inputs: [
{
prevOut: {
txid: 'd0470ea0b1e0d5cc6a20085ca1436e8c4752415a450a981ef2dd23105bbe2550',
outIdx: 3,
},
inputScript:
'47304402201623de13a2cd38d379a08dbee1cb2239571b6166bf9923ffe44ae108fd21931c022030dcd5b08a997dcaa7af505a5e513985317b2da91d2f4d4879ee941e3b8931ad412102c0850ac54a3915aa762c1ada2f50076b2aa4bc7d188eee9b5af6ddfa412a363f',
outputScript:
'76a914a9f494266e4b3c823712f27dedcb83e30b2fe59f88ac',
value: '12218055',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '0',
outputScript:
'6a04657461624c910458f886baf61daf6fa1909aab79e30bca8d35d634c6c5e969b2157b87e67fa010252a9fd1eebeed00075d0fb7bcc0dcb73b41cc73adacdae2be18d31643ad3f33d95f9a97e7cf00b2231fd0a7d37f36d082c86a392bde59eac693c002f861082d7d3cbc23eafd4511afe3619bfc0f0c028454038dee71a6e7796395574b9a06b9bf7aaf0cd607e59f4ad641393d746f88',
},
{
value: '3500',
outputScript:
'76a9149ee95bbfbdd2cf0eb6005bd75f717e4193b5913488ac',
},
{
value: '12214100',
outputScript:
'76a914a9f494266e4b3c823712f27dedcb83e30b2fe59f88ac',
spentBy: {
txid: '56e9b1d16c9989186c846187db57d9a9389c3ecc74e7237c1d1d0327cf904a55',
outIdx: 0,
},
},
],
lockTime: 0,
block: {
height: 757171,
hash: '00000000000000000518fc1d8fe67064dcaec41264773455a988c9d0c12f58ad',
timestamp: '1663090626',
},
timeFirstSeen: '1663089642',
size: 387,
isCoinbase: false,
network: 'XEC',
},
{
txid: 'd0470ea0b1e0d5cc6a20085ca1436e8c4752415a450a981ef2dd23105bbe2550',
version: 2,
inputs: [
{
prevOut: {
txid: 'a5f2a143eeec451c0714e430dd5553cbee26f6f05571a316dfb784b3454855d9',
outIdx: 2,
},
inputScript:
'47304402202267233e578abb21efa28bc606501f582f94915d3b07ceedff39750877c7211d02206cfec78f41fe58723938c199fa908f4e13ebb298cc989be30faa1e6838c22af1412102c0850ac54a3915aa762c1ada2f50076b2aa4bc7d188eee9b5af6ddfa412a363f',
outputScript:
'76a914a9f494266e4b3c823712f27dedcb83e30b2fe59f88ac',
value: '12224078',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '0',
outputScript:
'6a04007461621c54657374696e67206d756c74692d73656e642077697468206e6f7465',
},
{
value: '2200',
outputScript:
'76a91476458db0ed96fe9863fc1ccec9fa2cfab884b0f688ac',
},
{
value: '3300',
outputScript:
'76a9149ee95bbfbdd2cf0eb6005bd75f717e4193b5913488ac',
},
{
value: '12218055',
outputScript:
'76a914a9f494266e4b3c823712f27dedcb83e30b2fe59f88ac',
spentBy: {
txid: 'd27609956b0e4313f807fd58b82cc77f9b2bba1a792eac02707462a3d6863958',
outIdx: 0,
},
},
],
lockTime: 0,
block: {
height: 757171,
hash: '00000000000000000518fc1d8fe67064dcaec41264773455a988c9d0c12f58ad',
timestamp: '1663090626',
},
timeFirstSeen: '1663089621',
size: 303,
isCoinbase: false,
network: 'XEC',
},
{
txid: 'a5f2a143eeec451c0714e430dd5553cbee26f6f05571a316dfb784b3454855d9',
version: 2,
inputs: [
{
prevOut: {
txid: 'bdd18f49a557c57b79da4b8a3165be6202fb48809486ec04424de99f52abeee8',
outIdx: 1,
},
inputScript:
'483045022100f3e4140c8f1614612c07ffe4d35e697d5ffd0931d7b18b9360f5f431c6704d11022002b5fd03e7f9b849fec1c0374dc3df2f1f2dae333980bd02aaa3710b66d1eb0e412102c0850ac54a3915aa762c1ada2f50076b2aa4bc7d188eee9b5af6ddfa412a363f',
outputScript:
'76a914a9f494266e4b3c823712f27dedcb83e30b2fe59f88ac',
value: '12230101',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '3300',
outputScript:
'76a9149ee95bbfbdd2cf0eb6005bd75f717e4193b5913488ac',
},
{
value: '2200',
outputScript:
'76a91476458db0ed96fe9863fc1ccec9fa2cfab884b0f688ac',
},
{
value: '12224078',
outputScript:
'76a914a9f494266e4b3c823712f27dedcb83e30b2fe59f88ac',
spentBy: {
txid: 'd0470ea0b1e0d5cc6a20085ca1436e8c4752415a450a981ef2dd23105bbe2550',
outIdx: 0,
},
},
],
lockTime: 0,
block: {
height: 757171,
hash: '00000000000000000518fc1d8fe67064dcaec41264773455a988c9d0c12f58ad',
timestamp: '1663090626',
},
timeFirstSeen: '1663089593',
size: 260,
isCoinbase: false,
network: 'XEC',
},
{
txid: 'bdd18f49a557c57b79da4b8a3165be6202fb48809486ec04424de99f52abeee8',
version: 2,
inputs: [
{
prevOut: {
txid: '71c0f2d76c81bb91c6bf4de69693d95e8f043af9e055e949616443090f961d80',
outIdx: 2,
},
inputScript:
'4830450221008f8052c8b78a4d250f4596b3a14c85fb2d253ce20d972422829dc4a68a87320702202b7d272a96996bab1914f693939dfc6300184f5f3db0acc5acfc155ba19d7642412102c0850ac54a3915aa762c1ada2f50076b2aa4bc7d188eee9b5af6ddfa412a363f',
outputScript:
'76a914a9f494266e4b3c823712f27dedcb83e30b2fe59f88ac',
value: '12233856',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '3300',
outputScript:
'76a9149ee95bbfbdd2cf0eb6005bd75f717e4193b5913488ac',
},
{
value: '12230101',
outputScript:
'76a914a9f494266e4b3c823712f27dedcb83e30b2fe59f88ac',
spentBy: {
txid: 'a5f2a143eeec451c0714e430dd5553cbee26f6f05571a316dfb784b3454855d9',
outIdx: 0,
},
},
],
lockTime: 0,
block: {
height: 757171,
hash: '00000000000000000518fc1d8fe67064dcaec41264773455a988c9d0c12f58ad',
timestamp: '1663090626',
},
timeFirstSeen: '1663089364',
size: 226,
isCoinbase: false,
network: 'XEC',
},
{
txid: '71c0f2d76c81bb91c6bf4de69693d95e8f043af9e055e949616443090f961d80',
version: 2,
inputs: [
{
prevOut: {
txid: '3f7cbb380b2ad014fc6e95f2d4c10eda2f37c5686f6739af562e6e855c457b3b',
outIdx: 1,
},
inputScript:
'473044022038c75f93d7abe8e6e63c0981203acd48c7e6df92ba52cc9399df84b0b367ee200220356508913a5f8ad94d126891fea372bb2bf66a249bdb63332a4625cb359865f8412102c0850ac54a3915aa762c1ada2f50076b2aa4bc7d188eee9b5af6ddfa412a363f',
outputScript:
'76a914a9f494266e4b3c823712f27dedcb83e30b2fe59f88ac',
value: '12235011',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '0',
outputScript: '6a04007461620454657374',
},
{
value: '700',
outputScript:
'76a9149ee95bbfbdd2cf0eb6005bd75f717e4193b5913488ac',
},
{
value: '12233856',
outputScript:
'76a914a9f494266e4b3c823712f27dedcb83e30b2fe59f88ac',
spentBy: {
txid: 'bdd18f49a557c57b79da4b8a3165be6202fb48809486ec04424de99f52abeee8',
outIdx: 0,
},
},
],
lockTime: 0,
block: {
height: 755309,
hash: '0000000000000000115c75e7b0728b548e9f21bb9ebdcad68d36475e712ceed5',
timestamp: '1661972428',
},
timeFirstSeen: '1661972247',
size: 245,
isCoinbase: false,
network: 'XEC',
},
{
txid: '3f7cbb380b2ad014fc6e95f2d4c10eda2f37c5686f6739af562e6e855c457b3b',
version: 2,
inputs: [
{
prevOut: {
txid: 'bd0101c9389c5e1fada4662ea9ba7c8d71f949743e42f2db563cb0ec96bd10a3',
outIdx: 1,
},
inputScript:
'483045022100f288e71276e2389744ecb3c98bdf0c119d19966ac086c5f5908f8c3a878aa7e402203c07905536720391f472457f52f5cf6aaeb4fa02fdf59722f25768a36fd6157f412102c0850ac54a3915aa762c1ada2f50076b2aa4bc7d188eee9b5af6ddfa412a363f',
outputScript:
'76a914a9f494266e4b3c823712f27dedcb83e30b2fe59f88ac',
value: '12243166',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '7700',
outputScript:
'76a9146ffbe7c7d7bd01295eb1e371de9550339bdcf9fd88ac',
spentBy: {
txid: '04eedd3f4b4dc9727e393ad3e774f2dc0c6acf9e920dc6fcbcbf95ed9b98477c',
outIdx: 3,
},
},
{
value: '12235011',
outputScript:
'76a914a9f494266e4b3c823712f27dedcb83e30b2fe59f88ac',
spentBy: {
txid: '71c0f2d76c81bb91c6bf4de69693d95e8f043af9e055e949616443090f961d80',
outIdx: 0,
},
},
],
lockTime: 0,
block: {
height: 743257,
hash: '000000000000000013259e217a18907ba956c55f839b6b15a11a79a2bf303d9f',
timestamp: '1654812393',
},
timeFirstSeen: '0',
size: 226,
isCoinbase: false,
network: 'XEC',
},
{
txid: 'bd0101c9389c5e1fada4662ea9ba7c8d71f949743e42f2db563cb0ec96bd10a3',
version: 2,
inputs: [
{
prevOut: {
txid: '20230f564987e644070e35fa4a809b8d697c725023a903c638194231ddf9cfd3',
outIdx: 2,
},
inputScript:
'483045022100d541ef12cc57c3b3cc95b338aec21775b27441d12eda662dcff23a46d07cc9450220467d2aae0dadcae787db33dab6adc86ec47aafea0133cc2130a62bb8247491d6412102c0850ac54a3915aa762c1ada2f50076b2aa4bc7d188eee9b5af6ddfa412a363f',
outputScript:
'76a914a9f494266e4b3c823712f27dedcb83e30b2fe59f88ac',
value: '14743621',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '2500000',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
spentBy: {
txid: '55388f67ab1b23d2e6c146472b836c1ba1df33dd9b7685bed34c6c9ce6fe5c0e',
outIdx: 0,
},
},
{
value: '12243166',
outputScript:
'76a914a9f494266e4b3c823712f27dedcb83e30b2fe59f88ac',
spentBy: {
txid: '3f7cbb380b2ad014fc6e95f2d4c10eda2f37c5686f6739af562e6e855c457b3b',
outIdx: 0,
},
},
],
lockTime: 0,
block: {
height: 742800,
hash: '000000000000000009e1ed934f027563d161d1f59a00253496b0c847c2288c38',
timestamp: '1654543720',
},
timeFirstSeen: '0',
size: 226,
isCoinbase: false,
network: 'XEC',
},
{
txid: '20230f564987e644070e35fa4a809b8d697c725023a903c638194231ddf9cfd3',
version: 2,
inputs: [
{
prevOut: {
txid: '41e306829bca85422ac5cbf2baad3d1a4e79c3bbb8f042cf0aa7ae2df49535a5',
outIdx: 1,
},
inputScript:
'473044022046faa2cc8efc0a06b2cfa8b80b658d4dc09bc1524cba1cb4ab456f8bc9ebf37902205074d7975824a06d6cba90dc91503f29801d9c180253bbe4ecefb42ddc82da6d412102c0850ac54a3915aa762c1ada2f50076b2aa4bc7d188eee9b5af6ddfa412a363f',
outputScript:
'76a914a9f494266e4b3c823712f27dedcb83e30b2fe59f88ac',
value: '14746276',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '0',
outputScript:
'6a04657461624c810406fe30e60d38c4408043ca5b43cd515db4b10af477007962db6d019eeb9c3f6734c495574368da107bb00b32a27d096069706a0fb91fe18d0d8281c1b826fdd862a1955dd0d28b4e0245c862085f172d3947ca202953095ed014258f069c4d3fc36706e842b6643061e4ce70b91fb5b5b206de4d3b81a621ad9d4456c3f0cf6b',
},
{
value: '2200',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
spentBy: {
txid: '31e5bf25b892e173483c7b100a5b0fcda03cac9337c335fda3b3a5cf17b64759',
outIdx: 0,
},
},
{
value: '14743621',
outputScript:
'76a914a9f494266e4b3c823712f27dedcb83e30b2fe59f88ac',
spentBy: {
txid: 'bd0101c9389c5e1fada4662ea9ba7c8d71f949743e42f2db563cb0ec96bd10a3',
outIdx: 0,
},
},
],
lockTime: 0,
block: {
height: 741058,
hash: '00000000000000000bb6dc63cd48a9b0dcf37a9b722618209dc85a79e8dc7973',
timestamp: '1653506978',
},
timeFirstSeen: '0',
size: 371,
isCoinbase: false,
network: 'XEC',
},
{
txid: '41e306829bca85422ac5cbf2baad3d1a4e79c3bbb8f042cf0aa7ae2df49535a5',
version: 2,
inputs: [
{
prevOut: {
txid: '63a11be653e333ae3e1075791c996d46b5f476b483c4ccf4ec33b524028d7cd5',
outIdx: 1,
},
inputScript:
'47304402204c6140c524e40653e85440aff615af47a481accc9dc8b45548d59a3ae91d3a0802200aa1667d00b16d3a80c5d4d1b4cabeee415289ef6818496f92abf9ec2db8262c412102c0850ac54a3915aa762c1ada2f50076b2aa4bc7d188eee9b5af6ddfa412a363f',
outputScript:
'76a914a9f494266e4b3c823712f27dedcb83e30b2fe59f88ac',
value: '14748931',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '2200',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
spentBy: {
txid: '46158de814d73ded1a8f91221c85d9c91c696eaf14f0bd10e6fa7215bacf7852',
outIdx: 1,
},
},
{
value: '14746276',
outputScript:
'76a914a9f494266e4b3c823712f27dedcb83e30b2fe59f88ac',
spentBy: {
txid: '20230f564987e644070e35fa4a809b8d697c725023a903c638194231ddf9cfd3',
outIdx: 0,
},
},
],
lockTime: 0,
block: {
height: 739747,
hash: '0000000000000000079aa77192cf335b2004788c2860be98c310a5187a588dd3',
timestamp: '1652722196',
},
timeFirstSeen: '0',
size: 225,
isCoinbase: false,
network: 'XEC',
},
],
numPages: 2,
},
{
txs: [],
numPages: 0,
},
{
txs: [
{
txid: '09033290a18b5c3054dbb6df8b6ad5c3e2bc121ab4cb2a91f79cedb36f05a2ef',
version: 2,
inputs: [
{
prevOut: {
txid: 'c0ab154992174fc86381540dbf016d64c4e218a07aec7d5734a841ccbab93e1c',
outIdx: 0,
},
inputScript:
'483045022100f50735a67538602ec240725f9160bdfc96b4ae443fff2cebaf25485e8f98f5720220584ab745222cc7a0cd33d6f287885781b8009bc1e819b9b97436ecdb31abeff2412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '49545',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '1300',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
},
{
value: '47790',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
},
],
lockTime: 0,
block: {
height: 758570,
hash: '00000000000000000d1c7a165d8d185103ab30fb2d113334a9d8ee6cb6a9d268',
timestamp: '1663956316',
},
timeFirstSeen: '1663956020',
size: 226,
isCoinbase: false,
network: 'XEC',
},
{
txid: 'daf142f1f90dc81efeafb94f986b951ff3bae6fb155565d96fd091e34e61ee29',
version: 2,
inputs: [
{
prevOut: {
txid: '5b679c422abc750576c188e3ed0729fb0e452f6ae0a8ad118026755fbceb00b1',
outIdx: 1,
},
inputScript:
'483045022100ac91ae0c612165e500605ae41080a30be891ef757c378733bfe5533f331d0e97022020babc7d6a267fc5fbab8ba9740968732978abf4cf63e049721c008532204bf8412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '47562',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '1200',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
},
{
value: '45907',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
},
],
lockTime: 0,
block: {
height: 758570,
hash: '00000000000000000d1c7a165d8d185103ab30fb2d113334a9d8ee6cb6a9d268',
timestamp: '1663956316',
},
timeFirstSeen: '1663956011',
size: 226,
isCoinbase: false,
network: 'XEC',
},
{
txid: '376593dc3d3e305843fe23692e1477ae13ae1e8bfc778273c544a0c5d6285337',
version: 2,
inputs: [
{
prevOut: {
txid: '930259a2fe4de56a15ab33d5f2b13bfd08568c3d662df6b1a3c090a19aab8104',
outIdx: 0,
},
inputScript:
'48304502210086a6072eaabb3502c73cbb6701c04edca374de60d62b888614d76b352203e9d602205721cec95da5a0ceda4cf54bf4bf8f54bec3d07b1caa75e1d65a87d8b5572f0f412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '3300',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '1100',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
},
{
value: '1745',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
},
],
lockTime: 0,
block: {
height: 758570,
hash: '00000000000000000d1c7a165d8d185103ab30fb2d113334a9d8ee6cb6a9d268',
timestamp: '1663956316',
},
timeFirstSeen: '1663956003',
size: 226,
isCoinbase: false,
network: 'XEC',
},
{
txid: '2faa94a50ddffc795f6044214efbca0d0190ed520e7e0fd35c4623ecd64b4e45',
version: 2,
inputs: [
{
prevOut: {
txid: '08ac32dc47252668cd32dbe0d9af15d1ae9e282ae56c3743a258d11613105924',
outIdx: 0,
},
inputScript:
'47304402207031eafbfb4f762f1eb719defa8cb890f55085c593244eecce57082b7013fd4f02205178c40c57903baa3d9ebf554d2f3892859599b6e358e10725db81c14de4c80f412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '2200',
sequenceNo: 4294967295,
},
{
prevOut: {
txid: '47d4940ded21de01c62675d31e211a381cc7d866dcf292af0422cdc616d927a8',
outIdx: 2,
},
inputScript:
'473044022058d957ffc312b4f9eefd71fb2c708e0a82bf72e56fdb322d75b4201453e413c402200df9176569cb2523f541dcff39f27c116926b214de37109775f3e5015e050604412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '546',
sequenceNo: 4294967295,
slpToken: {
amount: '34',
isMintBaton: false,
},
},
],
outputs: [
{
value: '0',
outputScript:
'6a04534c500001010453454e44204bd147fc5d5ff26249a9299c46b80920c0b81f59a60e05428262160ebee0b0c308000000000000000508000000000000001d',
},
{
value: '546',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
slpToken: {
amount: '5',
isMintBaton: false,
},
},
{
value: '546',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
slpToken: {
amount: '29',
isMintBaton: false,
},
},
],
lockTime: 0,
slpTxData: {
slpMeta: {
tokenType: 'FUNGIBLE',
txType: 'SEND',
tokenId:
'4bd147fc5d5ff26249a9299c46b80920c0b81f59a60e05428262160ebee0b0c3',
},
},
block: {
height: 758570,
hash: '00000000000000000d1c7a165d8d185103ab30fb2d113334a9d8ee6cb6a9d268',
timestamp: '1663956316',
},
timeFirstSeen: '1663955995',
size: 445,
isCoinbase: false,
network: 'XEC',
},
{
txid: '050705e14d2d27e1cb59127617d54a5cccd91c4cad6ffe8c2c6eb684e9d76042',
version: 2,
inputs: [
{
prevOut: {
txid: 'a429b818424b74153b363e487a577142f4e9bd67530739ed6883d8a6d71ea947',
outIdx: 0,
},
inputScript:
'483045022100f4734cb1a5e7a64013b5408b9d0d6bc59560b08b9e7284f8bbba217f777f772c02204625fab8a1356f96f00a463be8aa64e90f663744554df60807d1aa1e00d19c5e412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '1100',
sequenceNo: 4294967295,
},
{
prevOut: {
txid: 'e9c384cc569ad83d4fc61a54cac405ff2d64a5f532d94006bc38b87296c6bf63',
outIdx: 0,
},
inputScript:
'483045022100892a72b025cd5cd667bace86dfc605169018d9b46fa9ba2ef963e4dbe26a471702201283b63ebe679be3c27edc7b37aff829ba34503430147e203661d4d4ec4f14a5412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '7700',
sequenceNo: 4294967295,
},
{
prevOut: {
txid: '7a197add9eb4a57d854aaf31dd12fd71a806e4ba4fb4bf23ed7097cd281faae2',
outIdx: 2,
},
inputScript:
'47304402203bcfcdbd76587aaa0b525edec82a5078daef892a98ae76d39accf1d874bd526d02202e2eba394d27b82c54fd3605ebafe7d6c9d2e7fa5dc769a4dc113dfbf5025a9d412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '546',
sequenceNo: 4294967295,
slpToken: {
amount: '126',
isMintBaton: false,
},
},
],
outputs: [
{
value: '0',
outputScript:
'6a04534c500001010453454e44204bd147fc5d5ff26249a9299c46b80920c0b81f59a60e05428262160ebee0b0c308000000000000000108000000000000007d',
},
{
value: '546',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
slpToken: {
amount: '1',
isMintBaton: false,
},
},
{
value: '546',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
slpToken: {
amount: '125',
isMintBaton: false,
},
},
{
value: '6655',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
},
],
lockTime: 0,
slpTxData: {
slpMeta: {
tokenType: 'FUNGIBLE',
txType: 'SEND',
tokenId:
'4bd147fc5d5ff26249a9299c46b80920c0b81f59a60e05428262160ebee0b0c3',
},
},
block: {
height: 758569,
hash: '00000000000000000cbb0ac1fe8b1a4a87cd9bf58e7158333a1c32009c9137f0',
timestamp: '1663955917',
},
timeFirstSeen: '1663955725',
size: 628,
isCoinbase: false,
network: 'XEC',
},
{
txid: 'c66b09f5c6b2afa5c63ff7c2ca2cc8d9538568a18c75b0e7d900c9c1be2758f7',
version: 2,
inputs: [
{
prevOut: {
txid: '43beeeeb761c401a1d121840e87c86237c98e9310e889feb0a34426e2a1ee463',
outIdx: 0,
},
inputScript:
'4730440220606efba360bf0843f8c3fe9fab7d1cdc34852395b9045a4c3cf8f27b91d414f2022054fb11ce6e4fd2ee50ba467e94460c63e45fb563e330fc35c5caa8eea71e93b7412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '3300',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '1900',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
},
{
value: '945',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
},
],
lockTime: 0,
block: {
height: 758569,
hash: '00000000000000000cbb0ac1fe8b1a4a87cd9bf58e7158333a1c32009c9137f0',
timestamp: '1663955917',
},
timeFirstSeen: '1663955710',
size: 225,
isCoinbase: false,
network: 'XEC',
},
{
txid: '96c9031e30dba075dd83f622ed952ef7bb75fe12abdad962e70e9904272a7532',
version: 2,
inputs: [
{
prevOut: {
txid: '08cb593e2b2d0a47649990591bf30eee51534f85658fc8ee4e98e12e1c5c5553',
outIdx: 0,
},
inputScript:
'47304402204569cce381885918e300caef1e8a5388b86be871ff3e8f8f52917c26df9dde760220474e3ce3f6363a826d2772e347c296773ea838f493882e15fdc6a5181286a92c412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '1700',
sequenceNo: 4294967295,
},
{
prevOut: {
txid: 'cb68f53c0e46ab2ec0ceb28d87aa5b8b8a059c72b3c1f977141760d8dc93c821',
outIdx: 0,
},
inputScript:
'47304402206355208bd3eae6d3468a062a6cc33340cd82e0e5def4dad1efa7caee652b21b40220619f05019e5014f1154659bbf5a46f4abbf93e04eecca8c509d231eb2a495f41412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '3300',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '1800',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
},
{
value: '2448',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
},
],
lockTime: 0,
block: {
height: 758569,
hash: '00000000000000000cbb0ac1fe8b1a4a87cd9bf58e7158333a1c32009c9137f0',
timestamp: '1663955917',
},
timeFirstSeen: '1663955701',
size: 372,
isCoinbase: false,
network: 'XEC',
},
{
txid: 'c25516f6d82e4299849edbd730ecb55b2b0e4745d95735b43bb4d16a67f50113',
version: 2,
inputs: [
{
prevOut: {
txid: 'a737c1372586cf30d76d8bdcac8e96e2c321f667a77ec4bb9980e603e2a77b3d',
outIdx: 0,
},
inputScript:
'4730440220665f4bf3d94204649f8a1731285eb6e94940e38a3601504612374ec0a06ff27f02206276844772b498726e3e56145d42f2316da5646619d8288598f18e828426881f412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '2200',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '1700',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
},
],
lockTime: 0,
block: {
height: 758569,
hash: '00000000000000000cbb0ac1fe8b1a4a87cd9bf58e7158333a1c32009c9137f0',
timestamp: '1663955917',
},
timeFirstSeen: '1663955694',
size: 191,
isCoinbase: false,
network: 'XEC',
},
{
txid: 'de5c518dc2d3d52268c3aeb788134ac373553b2eb239f256fa463c728af87189',
version: 2,
inputs: [
{
prevOut: {
txid: '0c67c0b670378c6ae959172eefd099247be944cdb88108d52589731f2194d675',
outIdx: 5,
},
inputScript:
'47304402204b4de25ffee112642136a6d1ad74394c7bfb984a08703d5362500a5521d346dc022053c3e887d7bb27a2525140789a7f450b0995781787ce28750dca1421b746721f412103771805b54969a9bea4e3eb14a82851c67592156ddb5e52d3d53677d14a40fba6',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
value: '43783281',
sequenceNo: 4294967295,
},
{
prevOut: {
txid: '3515f4a9851ad44124e0ddf6149344deb27a97720fc7e5254a9d2c86da7415a9',
outIdx: 1,
},
inputScript:
'483045022100d4d1566db73386cd9580ff6f2c60e1536993b459fb3b199d7514fbd6fb5042ca0220590e88aa183ed6a756fbb8d8ba4bf5133f578746a917fab1e1b8e712543c5861412103771805b54969a9bea4e3eb14a82851c67592156ddb5e52d3d53677d14a40fba6',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
value: '546',
sequenceNo: 4294967295,
slpBurn: {
token: {
amount: '1',
isMintBaton: false,
},
tokenId:
'3515f4a9851ad44124e0ddf6149344deb27a97720fc7e5254a9d2c86da7415a9',
},
slpToken: {
amount: '100',
isMintBaton: false,
},
},
],
outputs: [
{
value: '0',
outputScript:
'6a04534c500001010453454e44203515f4a9851ad44124e0ddf6149344deb27a97720fc7e5254a9d2c86da7415a9080000000000000063',
},
{
value: '546',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
slpToken: {
amount: '99',
isMintBaton: false,
},
},
{
value: '43781463',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
},
],
lockTime: 0,
slpTxData: {
slpMeta: {
tokenType: 'FUNGIBLE',
txType: 'SEND',
tokenId:
'3515f4a9851ad44124e0ddf6149344deb27a97720fc7e5254a9d2c86da7415a9',
},
},
block: {
height: 758551,
hash: '000000000000000004ac3b44419bb5f0e0b47937b3e7e781206270da01b4a53e',
timestamp: '1663947923',
},
timeFirstSeen: '1663947876',
size: 437,
isCoinbase: false,
network: 'XEC',
},
{
txid: 'd34f524ca0509e83718516ce697eeed5452ea0e312bab50ce0172589275fdd84',
version: 2,
inputs: [
{
prevOut: {
txid: '696265ced15b8fdbacfa1a4f5e779575ff5faaf3ff4ad09e5691b2ed4cf50a84',
outIdx: 3,
},
inputScript:
'483045022100e43086bb67006f6d5140a3329001bc53dabe2da4dbe7feae34dd5f10311b15ad022045da448bc99003af6cf6d4c74ec9891c60932013dde7451abca4a6bc40b6138d412103771805b54969a9bea4e3eb14a82851c67592156ddb5e52d3d53677d14a40fba6',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
value: '10409988',
sequenceNo: 4294967295,
slpBurn: {
token: {
amount: '0',
isMintBaton: false,
},
tokenId:
'da9460ce4b1c92b4f6ef4e4a6bc2d05539f49d02b17681389d9ce22b8dca50f0',
},
},
],
outputs: [
{
value: '0',
outputScript:
'6a04657461624ca104acd46779fb7a9a8e24656ba7ffcbc066bb78701630b0a3fd1c36a3e2b605d78e1d995ea990096a3f76077985d2194fd1a87369921545a544992c86414ed859247ab8f9c2979ed9b8fecb2cfaa7ff74f1daf6f7c00f3d97a5b942aecba54bf155d464606b6faa6f5efcbdf3f525b3283acf6867d11cfc30623c3107a87b499f68ca00602492c9cdca9b481c7f2b65a6ecd481bfdd244954b32a45c658592182ad',
},
{
value: '1200',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
},
{
value: '10408333',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
},
],
lockTime: 0,
block: {
height: 758550,
hash: '000000000000000009f8cdae9bb21a321896126e06413a4e8af24a182edf701e',
timestamp: '1663947819',
},
timeFirstSeen: '1663946739',
size: 404,
isCoinbase: false,
network: 'XEC',
},
],
numPages: 98,
},
];
export const mockFlatTxHistoryNoUnconfirmed = [
{
txid: '56e9b1d16c9989186c846187db57d9a9389c3ecc74e7237c1d1d0327cf904a55',
version: 2,
inputs: [
{
prevOut: {
txid: 'd27609956b0e4313f807fd58b82cc77f9b2bba1a792eac02707462a3d6863958',
outIdx: 2,
},
inputScript:
'473044022024a187f6dc32082e765eeb37e1a6726e99871b3df0c385ad135ddcf73df0e79102203b81d7eb112a193e23147974432bb12116d75e995aa8c3b6a51943cc4dbd8694412102c0850ac54a3915aa762c1ada2f50076b2aa4bc7d188eee9b5af6ddfa412a363f',
outputScript:
'76a914a9f494266e4b3c823712f27dedcb83e30b2fe59f88ac',
value: '12214100',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '0',
outputScript:
'6a04534c500001010747454e4553495303434b410d4368726f6e696b20416c7068611468747470733a2f2f636173687461622e636f6d2f4c0001084c000800000014b230ce38',
},
{
value: '546',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
slpToken: {
amount: '88888888888',
isMintBaton: false,
},
spentBy: {
txid: 'a83257b2facf7c6d4f8df9a307dee9cc79af9323b8bb803994d5c967bf916569',
outIdx: 1,
},
},
{
value: '12213031',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
spentBy: {
txid: '5fc6f53ef0f94e66d5f6983402441cfdece1dbd35bd500b6e15881d1b37aa93f',
outIdx: 67,
},
},
],
lockTime: 0,
slpTxData: {
slpMeta: {
tokenType: 'FUNGIBLE',
txType: 'GENESIS',
tokenId:
'56e9b1d16c9989186c846187db57d9a9389c3ecc74e7237c1d1d0327cf904a55',
},
genesisInfo: {
tokenTicker: 'CKA',
tokenName: 'Chronik Alpha',
tokenDocumentUrl: 'https://cashtab.com/',
tokenDocumentHash: '',
decimals: 8,
},
},
block: {
height: 757174,
hash: '000000000000000011c5e064ac6295bb1c1e1c306019e591b9c79290c24c33ff',
timestamp: '1663091856',
},
timeFirstSeen: '1663091668',
size: 304,
isCoinbase: false,
network: 'XEC',
},
{
txid: 'd27609956b0e4313f807fd58b82cc77f9b2bba1a792eac02707462a3d6863958',
version: 2,
inputs: [
{
prevOut: {
txid: 'd0470ea0b1e0d5cc6a20085ca1436e8c4752415a450a981ef2dd23105bbe2550',
outIdx: 3,
},
inputScript:
'47304402201623de13a2cd38d379a08dbee1cb2239571b6166bf9923ffe44ae108fd21931c022030dcd5b08a997dcaa7af505a5e513985317b2da91d2f4d4879ee941e3b8931ad412102c0850ac54a3915aa762c1ada2f50076b2aa4bc7d188eee9b5af6ddfa412a363f',
outputScript:
'76a914a9f494266e4b3c823712f27dedcb83e30b2fe59f88ac',
value: '12218055',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '0',
outputScript:
'6a04657461624c910458f886baf61daf6fa1909aab79e30bca8d35d634c6c5e969b2157b87e67fa010252a9fd1eebeed00075d0fb7bcc0dcb73b41cc73adacdae2be18d31643ad3f33d95f9a97e7cf00b2231fd0a7d37f36d082c86a392bde59eac693c002f861082d7d3cbc23eafd4511afe3619bfc0f0c028454038dee71a6e7796395574b9a06b9bf7aaf0cd607e59f4ad641393d746f88',
},
{
value: '3500',
outputScript:
'76a9149ee95bbfbdd2cf0eb6005bd75f717e4193b5913488ac',
},
{
value: '12214100',
outputScript:
'76a914a9f494266e4b3c823712f27dedcb83e30b2fe59f88ac',
spentBy: {
txid: '56e9b1d16c9989186c846187db57d9a9389c3ecc74e7237c1d1d0327cf904a55',
outIdx: 0,
},
},
],
lockTime: 0,
block: {
height: 757171,
hash: '00000000000000000518fc1d8fe67064dcaec41264773455a988c9d0c12f58ad',
timestamp: '1663090626',
},
timeFirstSeen: '1663089642',
size: 387,
isCoinbase: false,
network: 'XEC',
},
{
txid: 'd0470ea0b1e0d5cc6a20085ca1436e8c4752415a450a981ef2dd23105bbe2550',
version: 2,
inputs: [
{
prevOut: {
txid: 'a5f2a143eeec451c0714e430dd5553cbee26f6f05571a316dfb784b3454855d9',
outIdx: 2,
},
inputScript:
'47304402202267233e578abb21efa28bc606501f582f94915d3b07ceedff39750877c7211d02206cfec78f41fe58723938c199fa908f4e13ebb298cc989be30faa1e6838c22af1412102c0850ac54a3915aa762c1ada2f50076b2aa4bc7d188eee9b5af6ddfa412a363f',
outputScript:
'76a914a9f494266e4b3c823712f27dedcb83e30b2fe59f88ac',
value: '12224078',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '0',
outputScript:
'6a04007461621c54657374696e67206d756c74692d73656e642077697468206e6f7465',
},
{
value: '2200',
outputScript:
'76a91476458db0ed96fe9863fc1ccec9fa2cfab884b0f688ac',
},
{
value: '3300',
outputScript:
'76a9149ee95bbfbdd2cf0eb6005bd75f717e4193b5913488ac',
},
{
value: '12218055',
outputScript:
'76a914a9f494266e4b3c823712f27dedcb83e30b2fe59f88ac',
spentBy: {
txid: 'd27609956b0e4313f807fd58b82cc77f9b2bba1a792eac02707462a3d6863958',
outIdx: 0,
},
},
],
lockTime: 0,
block: {
height: 757171,
hash: '00000000000000000518fc1d8fe67064dcaec41264773455a988c9d0c12f58ad',
timestamp: '1663090626',
},
timeFirstSeen: '1663089621',
size: 303,
isCoinbase: false,
network: 'XEC',
},
{
txid: 'a5f2a143eeec451c0714e430dd5553cbee26f6f05571a316dfb784b3454855d9',
version: 2,
inputs: [
{
prevOut: {
txid: 'bdd18f49a557c57b79da4b8a3165be6202fb48809486ec04424de99f52abeee8',
outIdx: 1,
},
inputScript:
'483045022100f3e4140c8f1614612c07ffe4d35e697d5ffd0931d7b18b9360f5f431c6704d11022002b5fd03e7f9b849fec1c0374dc3df2f1f2dae333980bd02aaa3710b66d1eb0e412102c0850ac54a3915aa762c1ada2f50076b2aa4bc7d188eee9b5af6ddfa412a363f',
outputScript:
'76a914a9f494266e4b3c823712f27dedcb83e30b2fe59f88ac',
value: '12230101',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '3300',
outputScript:
'76a9149ee95bbfbdd2cf0eb6005bd75f717e4193b5913488ac',
},
{
value: '2200',
outputScript:
'76a91476458db0ed96fe9863fc1ccec9fa2cfab884b0f688ac',
},
{
value: '12224078',
outputScript:
'76a914a9f494266e4b3c823712f27dedcb83e30b2fe59f88ac',
spentBy: {
txid: 'd0470ea0b1e0d5cc6a20085ca1436e8c4752415a450a981ef2dd23105bbe2550',
outIdx: 0,
},
},
],
lockTime: 0,
block: {
height: 757171,
hash: '00000000000000000518fc1d8fe67064dcaec41264773455a988c9d0c12f58ad',
timestamp: '1663090626',
},
timeFirstSeen: '1663089593',
size: 260,
isCoinbase: false,
network: 'XEC',
},
{
txid: 'bdd18f49a557c57b79da4b8a3165be6202fb48809486ec04424de99f52abeee8',
version: 2,
inputs: [
{
prevOut: {
txid: '71c0f2d76c81bb91c6bf4de69693d95e8f043af9e055e949616443090f961d80',
outIdx: 2,
},
inputScript:
'4830450221008f8052c8b78a4d250f4596b3a14c85fb2d253ce20d972422829dc4a68a87320702202b7d272a96996bab1914f693939dfc6300184f5f3db0acc5acfc155ba19d7642412102c0850ac54a3915aa762c1ada2f50076b2aa4bc7d188eee9b5af6ddfa412a363f',
outputScript:
'76a914a9f494266e4b3c823712f27dedcb83e30b2fe59f88ac',
value: '12233856',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '3300',
outputScript:
'76a9149ee95bbfbdd2cf0eb6005bd75f717e4193b5913488ac',
},
{
value: '12230101',
outputScript:
'76a914a9f494266e4b3c823712f27dedcb83e30b2fe59f88ac',
spentBy: {
txid: 'a5f2a143eeec451c0714e430dd5553cbee26f6f05571a316dfb784b3454855d9',
outIdx: 0,
},
},
],
lockTime: 0,
block: {
height: 757171,
hash: '00000000000000000518fc1d8fe67064dcaec41264773455a988c9d0c12f58ad',
timestamp: '1663090626',
},
timeFirstSeen: '1663089364',
size: 226,
isCoinbase: false,
network: 'XEC',
},
{
txid: '71c0f2d76c81bb91c6bf4de69693d95e8f043af9e055e949616443090f961d80',
version: 2,
inputs: [
{
prevOut: {
txid: '3f7cbb380b2ad014fc6e95f2d4c10eda2f37c5686f6739af562e6e855c457b3b',
outIdx: 1,
},
inputScript:
'473044022038c75f93d7abe8e6e63c0981203acd48c7e6df92ba52cc9399df84b0b367ee200220356508913a5f8ad94d126891fea372bb2bf66a249bdb63332a4625cb359865f8412102c0850ac54a3915aa762c1ada2f50076b2aa4bc7d188eee9b5af6ddfa412a363f',
outputScript:
'76a914a9f494266e4b3c823712f27dedcb83e30b2fe59f88ac',
value: '12235011',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '0',
outputScript: '6a04007461620454657374',
},
{
value: '700',
outputScript:
'76a9149ee95bbfbdd2cf0eb6005bd75f717e4193b5913488ac',
},
{
value: '12233856',
outputScript:
'76a914a9f494266e4b3c823712f27dedcb83e30b2fe59f88ac',
spentBy: {
txid: 'bdd18f49a557c57b79da4b8a3165be6202fb48809486ec04424de99f52abeee8',
outIdx: 0,
},
},
],
lockTime: 0,
block: {
height: 755309,
hash: '0000000000000000115c75e7b0728b548e9f21bb9ebdcad68d36475e712ceed5',
timestamp: '1661972428',
},
timeFirstSeen: '1661972247',
size: 245,
isCoinbase: false,
network: 'XEC',
},
{
txid: '3f7cbb380b2ad014fc6e95f2d4c10eda2f37c5686f6739af562e6e855c457b3b',
version: 2,
inputs: [
{
prevOut: {
txid: 'bd0101c9389c5e1fada4662ea9ba7c8d71f949743e42f2db563cb0ec96bd10a3',
outIdx: 1,
},
inputScript:
'483045022100f288e71276e2389744ecb3c98bdf0c119d19966ac086c5f5908f8c3a878aa7e402203c07905536720391f472457f52f5cf6aaeb4fa02fdf59722f25768a36fd6157f412102c0850ac54a3915aa762c1ada2f50076b2aa4bc7d188eee9b5af6ddfa412a363f',
outputScript:
'76a914a9f494266e4b3c823712f27dedcb83e30b2fe59f88ac',
value: '12243166',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '7700',
outputScript:
'76a9146ffbe7c7d7bd01295eb1e371de9550339bdcf9fd88ac',
spentBy: {
txid: '04eedd3f4b4dc9727e393ad3e774f2dc0c6acf9e920dc6fcbcbf95ed9b98477c',
outIdx: 3,
},
},
{
value: '12235011',
outputScript:
'76a914a9f494266e4b3c823712f27dedcb83e30b2fe59f88ac',
spentBy: {
txid: '71c0f2d76c81bb91c6bf4de69693d95e8f043af9e055e949616443090f961d80',
outIdx: 0,
},
},
],
lockTime: 0,
block: {
height: 743257,
hash: '000000000000000013259e217a18907ba956c55f839b6b15a11a79a2bf303d9f',
timestamp: '1654812393',
},
timeFirstSeen: '0',
size: 226,
isCoinbase: false,
network: 'XEC',
},
{
txid: 'bd0101c9389c5e1fada4662ea9ba7c8d71f949743e42f2db563cb0ec96bd10a3',
version: 2,
inputs: [
{
prevOut: {
txid: '20230f564987e644070e35fa4a809b8d697c725023a903c638194231ddf9cfd3',
outIdx: 2,
},
inputScript:
'483045022100d541ef12cc57c3b3cc95b338aec21775b27441d12eda662dcff23a46d07cc9450220467d2aae0dadcae787db33dab6adc86ec47aafea0133cc2130a62bb8247491d6412102c0850ac54a3915aa762c1ada2f50076b2aa4bc7d188eee9b5af6ddfa412a363f',
outputScript:
'76a914a9f494266e4b3c823712f27dedcb83e30b2fe59f88ac',
value: '14743621',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '2500000',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
spentBy: {
txid: '55388f67ab1b23d2e6c146472b836c1ba1df33dd9b7685bed34c6c9ce6fe5c0e',
outIdx: 0,
},
},
{
value: '12243166',
outputScript:
'76a914a9f494266e4b3c823712f27dedcb83e30b2fe59f88ac',
spentBy: {
txid: '3f7cbb380b2ad014fc6e95f2d4c10eda2f37c5686f6739af562e6e855c457b3b',
outIdx: 0,
},
},
],
lockTime: 0,
block: {
height: 742800,
hash: '000000000000000009e1ed934f027563d161d1f59a00253496b0c847c2288c38',
timestamp: '1654543720',
},
timeFirstSeen: '0',
size: 226,
isCoinbase: false,
network: 'XEC',
},
{
txid: '20230f564987e644070e35fa4a809b8d697c725023a903c638194231ddf9cfd3',
version: 2,
inputs: [
{
prevOut: {
txid: '41e306829bca85422ac5cbf2baad3d1a4e79c3bbb8f042cf0aa7ae2df49535a5',
outIdx: 1,
},
inputScript:
'473044022046faa2cc8efc0a06b2cfa8b80b658d4dc09bc1524cba1cb4ab456f8bc9ebf37902205074d7975824a06d6cba90dc91503f29801d9c180253bbe4ecefb42ddc82da6d412102c0850ac54a3915aa762c1ada2f50076b2aa4bc7d188eee9b5af6ddfa412a363f',
outputScript:
'76a914a9f494266e4b3c823712f27dedcb83e30b2fe59f88ac',
value: '14746276',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '0',
outputScript:
'6a04657461624c810406fe30e60d38c4408043ca5b43cd515db4b10af477007962db6d019eeb9c3f6734c495574368da107bb00b32a27d096069706a0fb91fe18d0d8281c1b826fdd862a1955dd0d28b4e0245c862085f172d3947ca202953095ed014258f069c4d3fc36706e842b6643061e4ce70b91fb5b5b206de4d3b81a621ad9d4456c3f0cf6b',
},
{
value: '2200',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
spentBy: {
txid: '31e5bf25b892e173483c7b100a5b0fcda03cac9337c335fda3b3a5cf17b64759',
outIdx: 0,
},
},
{
value: '14743621',
outputScript:
'76a914a9f494266e4b3c823712f27dedcb83e30b2fe59f88ac',
spentBy: {
txid: 'bd0101c9389c5e1fada4662ea9ba7c8d71f949743e42f2db563cb0ec96bd10a3',
outIdx: 0,
},
},
],
lockTime: 0,
block: {
height: 741058,
hash: '00000000000000000bb6dc63cd48a9b0dcf37a9b722618209dc85a79e8dc7973',
timestamp: '1653506978',
},
timeFirstSeen: '0',
size: 371,
isCoinbase: false,
network: 'XEC',
},
{
txid: '41e306829bca85422ac5cbf2baad3d1a4e79c3bbb8f042cf0aa7ae2df49535a5',
version: 2,
inputs: [
{
prevOut: {
txid: '63a11be653e333ae3e1075791c996d46b5f476b483c4ccf4ec33b524028d7cd5',
outIdx: 1,
},
inputScript:
'47304402204c6140c524e40653e85440aff615af47a481accc9dc8b45548d59a3ae91d3a0802200aa1667d00b16d3a80c5d4d1b4cabeee415289ef6818496f92abf9ec2db8262c412102c0850ac54a3915aa762c1ada2f50076b2aa4bc7d188eee9b5af6ddfa412a363f',
outputScript:
'76a914a9f494266e4b3c823712f27dedcb83e30b2fe59f88ac',
value: '14748931',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '2200',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
spentBy: {
txid: '46158de814d73ded1a8f91221c85d9c91c696eaf14f0bd10e6fa7215bacf7852',
outIdx: 1,
},
},
{
value: '14746276',
outputScript:
'76a914a9f494266e4b3c823712f27dedcb83e30b2fe59f88ac',
spentBy: {
txid: '20230f564987e644070e35fa4a809b8d697c725023a903c638194231ddf9cfd3',
outIdx: 0,
},
},
],
lockTime: 0,
block: {
height: 739747,
hash: '0000000000000000079aa77192cf335b2004788c2860be98c310a5187a588dd3',
timestamp: '1652722196',
},
timeFirstSeen: '0',
size: 225,
isCoinbase: false,
network: 'XEC',
},
{
txid: '09033290a18b5c3054dbb6df8b6ad5c3e2bc121ab4cb2a91f79cedb36f05a2ef',
version: 2,
inputs: [
{
prevOut: {
txid: 'c0ab154992174fc86381540dbf016d64c4e218a07aec7d5734a841ccbab93e1c',
outIdx: 0,
},
inputScript:
'483045022100f50735a67538602ec240725f9160bdfc96b4ae443fff2cebaf25485e8f98f5720220584ab745222cc7a0cd33d6f287885781b8009bc1e819b9b97436ecdb31abeff2412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '49545',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '1300',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
},
{
value: '47790',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
},
],
lockTime: 0,
block: {
height: 758570,
hash: '00000000000000000d1c7a165d8d185103ab30fb2d113334a9d8ee6cb6a9d268',
timestamp: '1663956316',
},
timeFirstSeen: '1663956020',
size: 226,
isCoinbase: false,
network: 'XEC',
},
{
txid: 'daf142f1f90dc81efeafb94f986b951ff3bae6fb155565d96fd091e34e61ee29',
version: 2,
inputs: [
{
prevOut: {
txid: '5b679c422abc750576c188e3ed0729fb0e452f6ae0a8ad118026755fbceb00b1',
outIdx: 1,
},
inputScript:
'483045022100ac91ae0c612165e500605ae41080a30be891ef757c378733bfe5533f331d0e97022020babc7d6a267fc5fbab8ba9740968732978abf4cf63e049721c008532204bf8412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '47562',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '1200',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
},
{
value: '45907',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
},
],
lockTime: 0,
block: {
height: 758570,
hash: '00000000000000000d1c7a165d8d185103ab30fb2d113334a9d8ee6cb6a9d268',
timestamp: '1663956316',
},
timeFirstSeen: '1663956011',
size: 226,
isCoinbase: false,
network: 'XEC',
},
{
txid: '376593dc3d3e305843fe23692e1477ae13ae1e8bfc778273c544a0c5d6285337',
version: 2,
inputs: [
{
prevOut: {
txid: '930259a2fe4de56a15ab33d5f2b13bfd08568c3d662df6b1a3c090a19aab8104',
outIdx: 0,
},
inputScript:
'48304502210086a6072eaabb3502c73cbb6701c04edca374de60d62b888614d76b352203e9d602205721cec95da5a0ceda4cf54bf4bf8f54bec3d07b1caa75e1d65a87d8b5572f0f412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '3300',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '1100',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
},
{
value: '1745',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
},
],
lockTime: 0,
block: {
height: 758570,
hash: '00000000000000000d1c7a165d8d185103ab30fb2d113334a9d8ee6cb6a9d268',
timestamp: '1663956316',
},
timeFirstSeen: '1663956003',
size: 226,
isCoinbase: false,
network: 'XEC',
},
{
txid: '2faa94a50ddffc795f6044214efbca0d0190ed520e7e0fd35c4623ecd64b4e45',
version: 2,
inputs: [
{
prevOut: {
txid: '08ac32dc47252668cd32dbe0d9af15d1ae9e282ae56c3743a258d11613105924',
outIdx: 0,
},
inputScript:
'47304402207031eafbfb4f762f1eb719defa8cb890f55085c593244eecce57082b7013fd4f02205178c40c57903baa3d9ebf554d2f3892859599b6e358e10725db81c14de4c80f412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '2200',
sequenceNo: 4294967295,
},
{
prevOut: {
txid: '47d4940ded21de01c62675d31e211a381cc7d866dcf292af0422cdc616d927a8',
outIdx: 2,
},
inputScript:
'473044022058d957ffc312b4f9eefd71fb2c708e0a82bf72e56fdb322d75b4201453e413c402200df9176569cb2523f541dcff39f27c116926b214de37109775f3e5015e050604412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '546',
sequenceNo: 4294967295,
slpToken: {
amount: '34',
isMintBaton: false,
},
},
],
outputs: [
{
value: '0',
outputScript:
'6a04534c500001010453454e44204bd147fc5d5ff26249a9299c46b80920c0b81f59a60e05428262160ebee0b0c308000000000000000508000000000000001d',
},
{
value: '546',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
slpToken: {
amount: '5',
isMintBaton: false,
},
},
{
value: '546',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
slpToken: {
amount: '29',
isMintBaton: false,
},
},
],
lockTime: 0,
slpTxData: {
slpMeta: {
tokenType: 'FUNGIBLE',
txType: 'SEND',
tokenId:
'4bd147fc5d5ff26249a9299c46b80920c0b81f59a60e05428262160ebee0b0c3',
},
},
block: {
height: 758570,
hash: '00000000000000000d1c7a165d8d185103ab30fb2d113334a9d8ee6cb6a9d268',
timestamp: '1663956316',
},
timeFirstSeen: '1663955995',
size: 445,
isCoinbase: false,
network: 'XEC',
},
{
txid: '050705e14d2d27e1cb59127617d54a5cccd91c4cad6ffe8c2c6eb684e9d76042',
version: 2,
inputs: [
{
prevOut: {
txid: 'a429b818424b74153b363e487a577142f4e9bd67530739ed6883d8a6d71ea947',
outIdx: 0,
},
inputScript:
'483045022100f4734cb1a5e7a64013b5408b9d0d6bc59560b08b9e7284f8bbba217f777f772c02204625fab8a1356f96f00a463be8aa64e90f663744554df60807d1aa1e00d19c5e412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '1100',
sequenceNo: 4294967295,
},
{
prevOut: {
txid: 'e9c384cc569ad83d4fc61a54cac405ff2d64a5f532d94006bc38b87296c6bf63',
outIdx: 0,
},
inputScript:
'483045022100892a72b025cd5cd667bace86dfc605169018d9b46fa9ba2ef963e4dbe26a471702201283b63ebe679be3c27edc7b37aff829ba34503430147e203661d4d4ec4f14a5412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '7700',
sequenceNo: 4294967295,
},
{
prevOut: {
txid: '7a197add9eb4a57d854aaf31dd12fd71a806e4ba4fb4bf23ed7097cd281faae2',
outIdx: 2,
},
inputScript:
'47304402203bcfcdbd76587aaa0b525edec82a5078daef892a98ae76d39accf1d874bd526d02202e2eba394d27b82c54fd3605ebafe7d6c9d2e7fa5dc769a4dc113dfbf5025a9d412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '546',
sequenceNo: 4294967295,
slpToken: {
amount: '126',
isMintBaton: false,
},
},
],
outputs: [
{
value: '0',
outputScript:
'6a04534c500001010453454e44204bd147fc5d5ff26249a9299c46b80920c0b81f59a60e05428262160ebee0b0c308000000000000000108000000000000007d',
},
{
value: '546',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
slpToken: {
amount: '1',
isMintBaton: false,
},
},
{
value: '546',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
slpToken: {
amount: '125',
isMintBaton: false,
},
},
{
value: '6655',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
},
],
lockTime: 0,
slpTxData: {
slpMeta: {
tokenType: 'FUNGIBLE',
txType: 'SEND',
tokenId:
'4bd147fc5d5ff26249a9299c46b80920c0b81f59a60e05428262160ebee0b0c3',
},
},
block: {
height: 758569,
hash: '00000000000000000cbb0ac1fe8b1a4a87cd9bf58e7158333a1c32009c9137f0',
timestamp: '1663955917',
},
timeFirstSeen: '1663955725',
size: 628,
isCoinbase: false,
network: 'XEC',
},
{
txid: 'c66b09f5c6b2afa5c63ff7c2ca2cc8d9538568a18c75b0e7d900c9c1be2758f7',
version: 2,
inputs: [
{
prevOut: {
txid: '43beeeeb761c401a1d121840e87c86237c98e9310e889feb0a34426e2a1ee463',
outIdx: 0,
},
inputScript:
'4730440220606efba360bf0843f8c3fe9fab7d1cdc34852395b9045a4c3cf8f27b91d414f2022054fb11ce6e4fd2ee50ba467e94460c63e45fb563e330fc35c5caa8eea71e93b7412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '3300',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '1900',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
},
{
value: '945',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
},
],
lockTime: 0,
block: {
height: 758569,
hash: '00000000000000000cbb0ac1fe8b1a4a87cd9bf58e7158333a1c32009c9137f0',
timestamp: '1663955917',
},
timeFirstSeen: '1663955710',
size: 225,
isCoinbase: false,
network: 'XEC',
},
{
txid: '96c9031e30dba075dd83f622ed952ef7bb75fe12abdad962e70e9904272a7532',
version: 2,
inputs: [
{
prevOut: {
txid: '08cb593e2b2d0a47649990591bf30eee51534f85658fc8ee4e98e12e1c5c5553',
outIdx: 0,
},
inputScript:
'47304402204569cce381885918e300caef1e8a5388b86be871ff3e8f8f52917c26df9dde760220474e3ce3f6363a826d2772e347c296773ea838f493882e15fdc6a5181286a92c412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '1700',
sequenceNo: 4294967295,
},
{
prevOut: {
txid: 'cb68f53c0e46ab2ec0ceb28d87aa5b8b8a059c72b3c1f977141760d8dc93c821',
outIdx: 0,
},
inputScript:
'47304402206355208bd3eae6d3468a062a6cc33340cd82e0e5def4dad1efa7caee652b21b40220619f05019e5014f1154659bbf5a46f4abbf93e04eecca8c509d231eb2a495f41412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '3300',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '1800',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
},
{
value: '2448',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
},
],
lockTime: 0,
block: {
height: 758569,
hash: '00000000000000000cbb0ac1fe8b1a4a87cd9bf58e7158333a1c32009c9137f0',
timestamp: '1663955917',
},
timeFirstSeen: '1663955701',
size: 372,
isCoinbase: false,
network: 'XEC',
},
{
txid: 'c25516f6d82e4299849edbd730ecb55b2b0e4745d95735b43bb4d16a67f50113',
version: 2,
inputs: [
{
prevOut: {
txid: 'a737c1372586cf30d76d8bdcac8e96e2c321f667a77ec4bb9980e603e2a77b3d',
outIdx: 0,
},
inputScript:
'4730440220665f4bf3d94204649f8a1731285eb6e94940e38a3601504612374ec0a06ff27f02206276844772b498726e3e56145d42f2316da5646619d8288598f18e828426881f412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '2200',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '1700',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
},
],
lockTime: 0,
block: {
height: 758569,
hash: '00000000000000000cbb0ac1fe8b1a4a87cd9bf58e7158333a1c32009c9137f0',
timestamp: '1663955917',
},
timeFirstSeen: '1663955694',
size: 191,
isCoinbase: false,
network: 'XEC',
},
{
txid: 'de5c518dc2d3d52268c3aeb788134ac373553b2eb239f256fa463c728af87189',
version: 2,
inputs: [
{
prevOut: {
txid: '0c67c0b670378c6ae959172eefd099247be944cdb88108d52589731f2194d675',
outIdx: 5,
},
inputScript:
'47304402204b4de25ffee112642136a6d1ad74394c7bfb984a08703d5362500a5521d346dc022053c3e887d7bb27a2525140789a7f450b0995781787ce28750dca1421b746721f412103771805b54969a9bea4e3eb14a82851c67592156ddb5e52d3d53677d14a40fba6',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
value: '43783281',
sequenceNo: 4294967295,
},
{
prevOut: {
txid: '3515f4a9851ad44124e0ddf6149344deb27a97720fc7e5254a9d2c86da7415a9',
outIdx: 1,
},
inputScript:
'483045022100d4d1566db73386cd9580ff6f2c60e1536993b459fb3b199d7514fbd6fb5042ca0220590e88aa183ed6a756fbb8d8ba4bf5133f578746a917fab1e1b8e712543c5861412103771805b54969a9bea4e3eb14a82851c67592156ddb5e52d3d53677d14a40fba6',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
value: '546',
sequenceNo: 4294967295,
slpBurn: {
token: {
amount: '1',
isMintBaton: false,
},
tokenId:
'3515f4a9851ad44124e0ddf6149344deb27a97720fc7e5254a9d2c86da7415a9',
},
slpToken: {
amount: '100',
isMintBaton: false,
},
},
],
outputs: [
{
value: '0',
outputScript:
'6a04534c500001010453454e44203515f4a9851ad44124e0ddf6149344deb27a97720fc7e5254a9d2c86da7415a9080000000000000063',
},
{
value: '546',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
slpToken: {
amount: '99',
isMintBaton: false,
},
},
{
value: '43781463',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
},
],
lockTime: 0,
slpTxData: {
slpMeta: {
tokenType: 'FUNGIBLE',
txType: 'SEND',
tokenId:
'3515f4a9851ad44124e0ddf6149344deb27a97720fc7e5254a9d2c86da7415a9',
},
},
block: {
height: 758551,
hash: '000000000000000004ac3b44419bb5f0e0b47937b3e7e781206270da01b4a53e',
timestamp: '1663947923',
},
timeFirstSeen: '1663947876',
size: 437,
isCoinbase: false,
network: 'XEC',
},
{
txid: 'd34f524ca0509e83718516ce697eeed5452ea0e312bab50ce0172589275fdd84',
version: 2,
inputs: [
{
prevOut: {
txid: '696265ced15b8fdbacfa1a4f5e779575ff5faaf3ff4ad09e5691b2ed4cf50a84',
outIdx: 3,
},
inputScript:
'483045022100e43086bb67006f6d5140a3329001bc53dabe2da4dbe7feae34dd5f10311b15ad022045da448bc99003af6cf6d4c74ec9891c60932013dde7451abca4a6bc40b6138d412103771805b54969a9bea4e3eb14a82851c67592156ddb5e52d3d53677d14a40fba6',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
value: '10409988',
sequenceNo: 4294967295,
slpBurn: {
token: {
amount: '0',
isMintBaton: false,
},
tokenId:
'da9460ce4b1c92b4f6ef4e4a6bc2d05539f49d02b17681389d9ce22b8dca50f0',
},
},
],
outputs: [
{
value: '0',
outputScript:
'6a04657461624ca104acd46779fb7a9a8e24656ba7ffcbc066bb78701630b0a3fd1c36a3e2b605d78e1d995ea990096a3f76077985d2194fd1a87369921545a544992c86414ed859247ab8f9c2979ed9b8fecb2cfaa7ff74f1daf6f7c00f3d97a5b942aecba54bf155d464606b6faa6f5efcbdf3f525b3283acf6867d11cfc30623c3107a87b499f68ca00602492c9cdca9b481c7f2b65a6ecd481bfdd244954b32a45c658592182ad',
},
{
value: '1200',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
},
{
value: '10408333',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
},
],
lockTime: 0,
block: {
height: 758550,
hash: '000000000000000009f8cdae9bb21a321896126e06413a4e8af24a182edf701e',
timestamp: '1663947819',
},
timeFirstSeen: '1663946739',
size: 404,
isCoinbase: false,
network: 'XEC',
},
];
export const mockSortedTxHistoryNoUnconfirmed = [
{
txid: '09033290a18b5c3054dbb6df8b6ad5c3e2bc121ab4cb2a91f79cedb36f05a2ef',
version: 2,
inputs: [
{
prevOut: {
txid: 'c0ab154992174fc86381540dbf016d64c4e218a07aec7d5734a841ccbab93e1c',
outIdx: 0,
},
inputScript:
'483045022100f50735a67538602ec240725f9160bdfc96b4ae443fff2cebaf25485e8f98f5720220584ab745222cc7a0cd33d6f287885781b8009bc1e819b9b97436ecdb31abeff2412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '49545',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '1300',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
},
{
value: '47790',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
},
],
lockTime: 0,
block: {
height: 758570,
hash: '00000000000000000d1c7a165d8d185103ab30fb2d113334a9d8ee6cb6a9d268',
timestamp: '1663956316',
},
timeFirstSeen: '1663956020',
size: 226,
isCoinbase: false,
network: 'XEC',
},
{
txid: 'daf142f1f90dc81efeafb94f986b951ff3bae6fb155565d96fd091e34e61ee29',
version: 2,
inputs: [
{
prevOut: {
txid: '5b679c422abc750576c188e3ed0729fb0e452f6ae0a8ad118026755fbceb00b1',
outIdx: 1,
},
inputScript:
'483045022100ac91ae0c612165e500605ae41080a30be891ef757c378733bfe5533f331d0e97022020babc7d6a267fc5fbab8ba9740968732978abf4cf63e049721c008532204bf8412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '47562',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '1200',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
},
{
value: '45907',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
},
],
lockTime: 0,
block: {
height: 758570,
hash: '00000000000000000d1c7a165d8d185103ab30fb2d113334a9d8ee6cb6a9d268',
timestamp: '1663956316',
},
timeFirstSeen: '1663956011',
size: 226,
isCoinbase: false,
network: 'XEC',
},
{
txid: '376593dc3d3e305843fe23692e1477ae13ae1e8bfc778273c544a0c5d6285337',
version: 2,
inputs: [
{
prevOut: {
txid: '930259a2fe4de56a15ab33d5f2b13bfd08568c3d662df6b1a3c090a19aab8104',
outIdx: 0,
},
inputScript:
'48304502210086a6072eaabb3502c73cbb6701c04edca374de60d62b888614d76b352203e9d602205721cec95da5a0ceda4cf54bf4bf8f54bec3d07b1caa75e1d65a87d8b5572f0f412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '3300',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '1100',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
},
{
value: '1745',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
},
],
lockTime: 0,
block: {
height: 758570,
hash: '00000000000000000d1c7a165d8d185103ab30fb2d113334a9d8ee6cb6a9d268',
timestamp: '1663956316',
},
timeFirstSeen: '1663956003',
size: 226,
isCoinbase: false,
network: 'XEC',
},
{
txid: '2faa94a50ddffc795f6044214efbca0d0190ed520e7e0fd35c4623ecd64b4e45',
version: 2,
inputs: [
{
prevOut: {
txid: '08ac32dc47252668cd32dbe0d9af15d1ae9e282ae56c3743a258d11613105924',
outIdx: 0,
},
inputScript:
'47304402207031eafbfb4f762f1eb719defa8cb890f55085c593244eecce57082b7013fd4f02205178c40c57903baa3d9ebf554d2f3892859599b6e358e10725db81c14de4c80f412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '2200',
sequenceNo: 4294967295,
},
{
prevOut: {
txid: '47d4940ded21de01c62675d31e211a381cc7d866dcf292af0422cdc616d927a8',
outIdx: 2,
},
inputScript:
'473044022058d957ffc312b4f9eefd71fb2c708e0a82bf72e56fdb322d75b4201453e413c402200df9176569cb2523f541dcff39f27c116926b214de37109775f3e5015e050604412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '546',
sequenceNo: 4294967295,
slpToken: {
amount: '34',
isMintBaton: false,
},
},
],
outputs: [
{
value: '0',
outputScript:
'6a04534c500001010453454e44204bd147fc5d5ff26249a9299c46b80920c0b81f59a60e05428262160ebee0b0c308000000000000000508000000000000001d',
},
{
value: '546',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
slpToken: {
amount: '5',
isMintBaton: false,
},
},
{
value: '546',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
slpToken: {
amount: '29',
isMintBaton: false,
},
},
],
lockTime: 0,
slpTxData: {
slpMeta: {
tokenType: 'FUNGIBLE',
txType: 'SEND',
tokenId:
'4bd147fc5d5ff26249a9299c46b80920c0b81f59a60e05428262160ebee0b0c3',
},
},
block: {
height: 758570,
hash: '00000000000000000d1c7a165d8d185103ab30fb2d113334a9d8ee6cb6a9d268',
timestamp: '1663956316',
},
timeFirstSeen: '1663955995',
size: 445,
isCoinbase: false,
network: 'XEC',
},
{
txid: '050705e14d2d27e1cb59127617d54a5cccd91c4cad6ffe8c2c6eb684e9d76042',
version: 2,
inputs: [
{
prevOut: {
txid: 'a429b818424b74153b363e487a577142f4e9bd67530739ed6883d8a6d71ea947',
outIdx: 0,
},
inputScript:
'483045022100f4734cb1a5e7a64013b5408b9d0d6bc59560b08b9e7284f8bbba217f777f772c02204625fab8a1356f96f00a463be8aa64e90f663744554df60807d1aa1e00d19c5e412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '1100',
sequenceNo: 4294967295,
},
{
prevOut: {
txid: 'e9c384cc569ad83d4fc61a54cac405ff2d64a5f532d94006bc38b87296c6bf63',
outIdx: 0,
},
inputScript:
'483045022100892a72b025cd5cd667bace86dfc605169018d9b46fa9ba2ef963e4dbe26a471702201283b63ebe679be3c27edc7b37aff829ba34503430147e203661d4d4ec4f14a5412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '7700',
sequenceNo: 4294967295,
},
{
prevOut: {
txid: '7a197add9eb4a57d854aaf31dd12fd71a806e4ba4fb4bf23ed7097cd281faae2',
outIdx: 2,
},
inputScript:
'47304402203bcfcdbd76587aaa0b525edec82a5078daef892a98ae76d39accf1d874bd526d02202e2eba394d27b82c54fd3605ebafe7d6c9d2e7fa5dc769a4dc113dfbf5025a9d412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '546',
sequenceNo: 4294967295,
slpToken: {
amount: '126',
isMintBaton: false,
},
},
],
outputs: [
{
value: '0',
outputScript:
'6a04534c500001010453454e44204bd147fc5d5ff26249a9299c46b80920c0b81f59a60e05428262160ebee0b0c308000000000000000108000000000000007d',
},
{
value: '546',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
slpToken: {
amount: '1',
isMintBaton: false,
},
},
{
value: '546',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
slpToken: {
amount: '125',
isMintBaton: false,
},
},
{
value: '6655',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
},
],
lockTime: 0,
slpTxData: {
slpMeta: {
tokenType: 'FUNGIBLE',
txType: 'SEND',
tokenId:
'4bd147fc5d5ff26249a9299c46b80920c0b81f59a60e05428262160ebee0b0c3',
},
},
block: {
height: 758569,
hash: '00000000000000000cbb0ac1fe8b1a4a87cd9bf58e7158333a1c32009c9137f0',
timestamp: '1663955917',
},
timeFirstSeen: '1663955725',
size: 628,
isCoinbase: false,
network: 'XEC',
},
{
txid: 'c66b09f5c6b2afa5c63ff7c2ca2cc8d9538568a18c75b0e7d900c9c1be2758f7',
version: 2,
inputs: [
{
prevOut: {
txid: '43beeeeb761c401a1d121840e87c86237c98e9310e889feb0a34426e2a1ee463',
outIdx: 0,
},
inputScript:
'4730440220606efba360bf0843f8c3fe9fab7d1cdc34852395b9045a4c3cf8f27b91d414f2022054fb11ce6e4fd2ee50ba467e94460c63e45fb563e330fc35c5caa8eea71e93b7412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '3300',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '1900',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
},
{
value: '945',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
},
],
lockTime: 0,
block: {
height: 758569,
hash: '00000000000000000cbb0ac1fe8b1a4a87cd9bf58e7158333a1c32009c9137f0',
timestamp: '1663955917',
},
timeFirstSeen: '1663955710',
size: 225,
isCoinbase: false,
network: 'XEC',
},
{
txid: '96c9031e30dba075dd83f622ed952ef7bb75fe12abdad962e70e9904272a7532',
version: 2,
inputs: [
{
prevOut: {
txid: '08cb593e2b2d0a47649990591bf30eee51534f85658fc8ee4e98e12e1c5c5553',
outIdx: 0,
},
inputScript:
'47304402204569cce381885918e300caef1e8a5388b86be871ff3e8f8f52917c26df9dde760220474e3ce3f6363a826d2772e347c296773ea838f493882e15fdc6a5181286a92c412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '1700',
sequenceNo: 4294967295,
},
{
prevOut: {
txid: 'cb68f53c0e46ab2ec0ceb28d87aa5b8b8a059c72b3c1f977141760d8dc93c821',
outIdx: 0,
},
inputScript:
'47304402206355208bd3eae6d3468a062a6cc33340cd82e0e5def4dad1efa7caee652b21b40220619f05019e5014f1154659bbf5a46f4abbf93e04eecca8c509d231eb2a495f41412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '3300',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '1800',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
},
{
value: '2448',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
},
],
lockTime: 0,
block: {
height: 758569,
hash: '00000000000000000cbb0ac1fe8b1a4a87cd9bf58e7158333a1c32009c9137f0',
timestamp: '1663955917',
},
timeFirstSeen: '1663955701',
size: 372,
isCoinbase: false,
network: 'XEC',
},
{
txid: 'c25516f6d82e4299849edbd730ecb55b2b0e4745d95735b43bb4d16a67f50113',
version: 2,
inputs: [
{
prevOut: {
txid: 'a737c1372586cf30d76d8bdcac8e96e2c321f667a77ec4bb9980e603e2a77b3d',
outIdx: 0,
},
inputScript:
'4730440220665f4bf3d94204649f8a1731285eb6e94940e38a3601504612374ec0a06ff27f02206276844772b498726e3e56145d42f2316da5646619d8288598f18e828426881f412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '2200',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '1700',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
},
],
lockTime: 0,
block: {
height: 758569,
hash: '00000000000000000cbb0ac1fe8b1a4a87cd9bf58e7158333a1c32009c9137f0',
timestamp: '1663955917',
},
timeFirstSeen: '1663955694',
size: 191,
isCoinbase: false,
network: 'XEC',
},
{
txid: 'de5c518dc2d3d52268c3aeb788134ac373553b2eb239f256fa463c728af87189',
version: 2,
inputs: [
{
prevOut: {
txid: '0c67c0b670378c6ae959172eefd099247be944cdb88108d52589731f2194d675',
outIdx: 5,
},
inputScript:
'47304402204b4de25ffee112642136a6d1ad74394c7bfb984a08703d5362500a5521d346dc022053c3e887d7bb27a2525140789a7f450b0995781787ce28750dca1421b746721f412103771805b54969a9bea4e3eb14a82851c67592156ddb5e52d3d53677d14a40fba6',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
value: '43783281',
sequenceNo: 4294967295,
},
{
prevOut: {
txid: '3515f4a9851ad44124e0ddf6149344deb27a97720fc7e5254a9d2c86da7415a9',
outIdx: 1,
},
inputScript:
'483045022100d4d1566db73386cd9580ff6f2c60e1536993b459fb3b199d7514fbd6fb5042ca0220590e88aa183ed6a756fbb8d8ba4bf5133f578746a917fab1e1b8e712543c5861412103771805b54969a9bea4e3eb14a82851c67592156ddb5e52d3d53677d14a40fba6',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
value: '546',
sequenceNo: 4294967295,
slpBurn: {
token: {
amount: '1',
isMintBaton: false,
},
tokenId:
'3515f4a9851ad44124e0ddf6149344deb27a97720fc7e5254a9d2c86da7415a9',
},
slpToken: {
amount: '100',
isMintBaton: false,
},
},
],
outputs: [
{
value: '0',
outputScript:
'6a04534c500001010453454e44203515f4a9851ad44124e0ddf6149344deb27a97720fc7e5254a9d2c86da7415a9080000000000000063',
},
{
value: '546',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
slpToken: {
amount: '99',
isMintBaton: false,
},
},
{
value: '43781463',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
},
],
lockTime: 0,
slpTxData: {
slpMeta: {
tokenType: 'FUNGIBLE',
txType: 'SEND',
tokenId:
'3515f4a9851ad44124e0ddf6149344deb27a97720fc7e5254a9d2c86da7415a9',
},
},
block: {
height: 758551,
hash: '000000000000000004ac3b44419bb5f0e0b47937b3e7e781206270da01b4a53e',
timestamp: '1663947923',
},
timeFirstSeen: '1663947876',
size: 437,
isCoinbase: false,
network: 'XEC',
},
{
txid: 'd34f524ca0509e83718516ce697eeed5452ea0e312bab50ce0172589275fdd84',
version: 2,
inputs: [
{
prevOut: {
txid: '696265ced15b8fdbacfa1a4f5e779575ff5faaf3ff4ad09e5691b2ed4cf50a84',
outIdx: 3,
},
inputScript:
'483045022100e43086bb67006f6d5140a3329001bc53dabe2da4dbe7feae34dd5f10311b15ad022045da448bc99003af6cf6d4c74ec9891c60932013dde7451abca4a6bc40b6138d412103771805b54969a9bea4e3eb14a82851c67592156ddb5e52d3d53677d14a40fba6',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
value: '10409988',
sequenceNo: 4294967295,
slpBurn: {
token: {
amount: '0',
isMintBaton: false,
},
tokenId:
'da9460ce4b1c92b4f6ef4e4a6bc2d05539f49d02b17681389d9ce22b8dca50f0',
},
},
],
outputs: [
{
value: '0',
outputScript:
'6a04657461624ca104acd46779fb7a9a8e24656ba7ffcbc066bb78701630b0a3fd1c36a3e2b605d78e1d995ea990096a3f76077985d2194fd1a87369921545a544992c86414ed859247ab8f9c2979ed9b8fecb2cfaa7ff74f1daf6f7c00f3d97a5b942aecba54bf155d464606b6faa6f5efcbdf3f525b3283acf6867d11cfc30623c3107a87b499f68ca00602492c9cdca9b481c7f2b65a6ecd481bfdd244954b32a45c658592182ad',
},
{
value: '1200',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
},
{
value: '10408333',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
},
],
lockTime: 0,
block: {
height: 758550,
hash: '000000000000000009f8cdae9bb21a321896126e06413a4e8af24a182edf701e',
timestamp: '1663947819',
},
timeFirstSeen: '1663946739',
size: 404,
isCoinbase: false,
network: 'XEC',
},
];
export const mockFlatTxHistoryWithUnconfirmed = [
{
txid: '56e9b1d16c9989186c846187db57d9a9389c3ecc74e7237c1d1d0327cf904a55',
version: 2,
inputs: [
{
prevOut: {
txid: 'd27609956b0e4313f807fd58b82cc77f9b2bba1a792eac02707462a3d6863958',
outIdx: 2,
},
inputScript:
'473044022024a187f6dc32082e765eeb37e1a6726e99871b3df0c385ad135ddcf73df0e79102203b81d7eb112a193e23147974432bb12116d75e995aa8c3b6a51943cc4dbd8694412102c0850ac54a3915aa762c1ada2f50076b2aa4bc7d188eee9b5af6ddfa412a363f',
outputScript:
'76a914a9f494266e4b3c823712f27dedcb83e30b2fe59f88ac',
value: '12214100',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '0',
outputScript:
'6a04534c500001010747454e4553495303434b410d4368726f6e696b20416c7068611468747470733a2f2f636173687461622e636f6d2f4c0001084c000800000014b230ce38',
},
{
value: '546',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
slpToken: {
amount: '88888888888',
isMintBaton: false,
},
spentBy: {
txid: 'a83257b2facf7c6d4f8df9a307dee9cc79af9323b8bb803994d5c967bf916569',
outIdx: 1,
},
},
{
value: '12213031',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
spentBy: {
txid: '5fc6f53ef0f94e66d5f6983402441cfdece1dbd35bd500b6e15881d1b37aa93f',
outIdx: 67,
},
},
],
lockTime: 0,
slpTxData: {
slpMeta: {
tokenType: 'FUNGIBLE',
txType: 'GENESIS',
tokenId:
'56e9b1d16c9989186c846187db57d9a9389c3ecc74e7237c1d1d0327cf904a55',
},
genesisInfo: {
tokenTicker: 'CKA',
tokenName: 'Chronik Alpha',
tokenDocumentUrl: 'https://cashtab.com/',
tokenDocumentHash: '',
decimals: 8,
},
},
block: {
height: 757174,
hash: '000000000000000011c5e064ac6295bb1c1e1c306019e591b9c79290c24c33ff',
timestamp: '1663091856',
},
timeFirstSeen: '1663091668',
size: 304,
isCoinbase: false,
network: 'XEC',
},
{
txid: 'd27609956b0e4313f807fd58b82cc77f9b2bba1a792eac02707462a3d6863958',
version: 2,
inputs: [
{
prevOut: {
txid: 'd0470ea0b1e0d5cc6a20085ca1436e8c4752415a450a981ef2dd23105bbe2550',
outIdx: 3,
},
inputScript:
'47304402201623de13a2cd38d379a08dbee1cb2239571b6166bf9923ffe44ae108fd21931c022030dcd5b08a997dcaa7af505a5e513985317b2da91d2f4d4879ee941e3b8931ad412102c0850ac54a3915aa762c1ada2f50076b2aa4bc7d188eee9b5af6ddfa412a363f',
outputScript:
'76a914a9f494266e4b3c823712f27dedcb83e30b2fe59f88ac',
value: '12218055',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '0',
outputScript:
'6a04657461624c910458f886baf61daf6fa1909aab79e30bca8d35d634c6c5e969b2157b87e67fa010252a9fd1eebeed00075d0fb7bcc0dcb73b41cc73adacdae2be18d31643ad3f33d95f9a97e7cf00b2231fd0a7d37f36d082c86a392bde59eac693c002f861082d7d3cbc23eafd4511afe3619bfc0f0c028454038dee71a6e7796395574b9a06b9bf7aaf0cd607e59f4ad641393d746f88',
},
{
value: '3500',
outputScript:
'76a9149ee95bbfbdd2cf0eb6005bd75f717e4193b5913488ac',
},
{
value: '12214100',
outputScript:
'76a914a9f494266e4b3c823712f27dedcb83e30b2fe59f88ac',
spentBy: {
txid: '56e9b1d16c9989186c846187db57d9a9389c3ecc74e7237c1d1d0327cf904a55',
outIdx: 0,
},
},
],
lockTime: 0,
block: {
height: 757171,
hash: '00000000000000000518fc1d8fe67064dcaec41264773455a988c9d0c12f58ad',
timestamp: '1663090626',
},
timeFirstSeen: '1663089642',
size: 387,
isCoinbase: false,
network: 'XEC',
},
{
txid: 'd0470ea0b1e0d5cc6a20085ca1436e8c4752415a450a981ef2dd23105bbe2550',
version: 2,
inputs: [
{
prevOut: {
txid: 'a5f2a143eeec451c0714e430dd5553cbee26f6f05571a316dfb784b3454855d9',
outIdx: 2,
},
inputScript:
'47304402202267233e578abb21efa28bc606501f582f94915d3b07ceedff39750877c7211d02206cfec78f41fe58723938c199fa908f4e13ebb298cc989be30faa1e6838c22af1412102c0850ac54a3915aa762c1ada2f50076b2aa4bc7d188eee9b5af6ddfa412a363f',
outputScript:
'76a914a9f494266e4b3c823712f27dedcb83e30b2fe59f88ac',
value: '12224078',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '0',
outputScript:
'6a04007461621c54657374696e67206d756c74692d73656e642077697468206e6f7465',
},
{
value: '2200',
outputScript:
'76a91476458db0ed96fe9863fc1ccec9fa2cfab884b0f688ac',
},
{
value: '3300',
outputScript:
'76a9149ee95bbfbdd2cf0eb6005bd75f717e4193b5913488ac',
},
{
value: '12218055',
outputScript:
'76a914a9f494266e4b3c823712f27dedcb83e30b2fe59f88ac',
spentBy: {
txid: 'd27609956b0e4313f807fd58b82cc77f9b2bba1a792eac02707462a3d6863958',
outIdx: 0,
},
},
],
lockTime: 0,
block: {
height: 757171,
hash: '00000000000000000518fc1d8fe67064dcaec41264773455a988c9d0c12f58ad',
timestamp: '1663090626',
},
timeFirstSeen: '1663089621',
size: 303,
isCoinbase: false,
network: 'XEC',
},
{
txid: 'a5f2a143eeec451c0714e430dd5553cbee26f6f05571a316dfb784b3454855d9',
version: 2,
inputs: [
{
prevOut: {
txid: 'bdd18f49a557c57b79da4b8a3165be6202fb48809486ec04424de99f52abeee8',
outIdx: 1,
},
inputScript:
'483045022100f3e4140c8f1614612c07ffe4d35e697d5ffd0931d7b18b9360f5f431c6704d11022002b5fd03e7f9b849fec1c0374dc3df2f1f2dae333980bd02aaa3710b66d1eb0e412102c0850ac54a3915aa762c1ada2f50076b2aa4bc7d188eee9b5af6ddfa412a363f',
outputScript:
'76a914a9f494266e4b3c823712f27dedcb83e30b2fe59f88ac',
value: '12230101',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '3300',
outputScript:
'76a9149ee95bbfbdd2cf0eb6005bd75f717e4193b5913488ac',
},
{
value: '2200',
outputScript:
'76a91476458db0ed96fe9863fc1ccec9fa2cfab884b0f688ac',
},
{
value: '12224078',
outputScript:
'76a914a9f494266e4b3c823712f27dedcb83e30b2fe59f88ac',
spentBy: {
txid: 'd0470ea0b1e0d5cc6a20085ca1436e8c4752415a450a981ef2dd23105bbe2550',
outIdx: 0,
},
},
],
lockTime: 0,
block: {
height: 757171,
hash: '00000000000000000518fc1d8fe67064dcaec41264773455a988c9d0c12f58ad',
timestamp: '1663090626',
},
timeFirstSeen: '1663089593',
size: 260,
isCoinbase: false,
network: 'XEC',
},
{
txid: 'bdd18f49a557c57b79da4b8a3165be6202fb48809486ec04424de99f52abeee8',
version: 2,
inputs: [
{
prevOut: {
txid: '71c0f2d76c81bb91c6bf4de69693d95e8f043af9e055e949616443090f961d80',
outIdx: 2,
},
inputScript:
'4830450221008f8052c8b78a4d250f4596b3a14c85fb2d253ce20d972422829dc4a68a87320702202b7d272a96996bab1914f693939dfc6300184f5f3db0acc5acfc155ba19d7642412102c0850ac54a3915aa762c1ada2f50076b2aa4bc7d188eee9b5af6ddfa412a363f',
outputScript:
'76a914a9f494266e4b3c823712f27dedcb83e30b2fe59f88ac',
value: '12233856',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '3300',
outputScript:
'76a9149ee95bbfbdd2cf0eb6005bd75f717e4193b5913488ac',
},
{
value: '12230101',
outputScript:
'76a914a9f494266e4b3c823712f27dedcb83e30b2fe59f88ac',
spentBy: {
txid: 'a5f2a143eeec451c0714e430dd5553cbee26f6f05571a316dfb784b3454855d9',
outIdx: 0,
},
},
],
lockTime: 0,
block: {
height: 757171,
hash: '00000000000000000518fc1d8fe67064dcaec41264773455a988c9d0c12f58ad',
timestamp: '1663090626',
},
timeFirstSeen: '1663089364',
size: 226,
isCoinbase: false,
network: 'XEC',
},
{
txid: '71c0f2d76c81bb91c6bf4de69693d95e8f043af9e055e949616443090f961d80',
version: 2,
inputs: [
{
prevOut: {
txid: '3f7cbb380b2ad014fc6e95f2d4c10eda2f37c5686f6739af562e6e855c457b3b',
outIdx: 1,
},
inputScript:
'473044022038c75f93d7abe8e6e63c0981203acd48c7e6df92ba52cc9399df84b0b367ee200220356508913a5f8ad94d126891fea372bb2bf66a249bdb63332a4625cb359865f8412102c0850ac54a3915aa762c1ada2f50076b2aa4bc7d188eee9b5af6ddfa412a363f',
outputScript:
'76a914a9f494266e4b3c823712f27dedcb83e30b2fe59f88ac',
value: '12235011',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '0',
outputScript: '6a04007461620454657374',
},
{
value: '700',
outputScript:
'76a9149ee95bbfbdd2cf0eb6005bd75f717e4193b5913488ac',
},
{
value: '12233856',
outputScript:
'76a914a9f494266e4b3c823712f27dedcb83e30b2fe59f88ac',
spentBy: {
txid: 'bdd18f49a557c57b79da4b8a3165be6202fb48809486ec04424de99f52abeee8',
outIdx: 0,
},
},
],
lockTime: 0,
block: {
height: 755309,
hash: '0000000000000000115c75e7b0728b548e9f21bb9ebdcad68d36475e712ceed5',
timestamp: '1661972428',
},
timeFirstSeen: '1661972247',
size: 245,
isCoinbase: false,
network: 'XEC',
},
{
txid: '3f7cbb380b2ad014fc6e95f2d4c10eda2f37c5686f6739af562e6e855c457b3b',
version: 2,
inputs: [
{
prevOut: {
txid: 'bd0101c9389c5e1fada4662ea9ba7c8d71f949743e42f2db563cb0ec96bd10a3',
outIdx: 1,
},
inputScript:
'483045022100f288e71276e2389744ecb3c98bdf0c119d19966ac086c5f5908f8c3a878aa7e402203c07905536720391f472457f52f5cf6aaeb4fa02fdf59722f25768a36fd6157f412102c0850ac54a3915aa762c1ada2f50076b2aa4bc7d188eee9b5af6ddfa412a363f',
outputScript:
'76a914a9f494266e4b3c823712f27dedcb83e30b2fe59f88ac',
value: '12243166',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '7700',
outputScript:
'76a9146ffbe7c7d7bd01295eb1e371de9550339bdcf9fd88ac',
spentBy: {
txid: '04eedd3f4b4dc9727e393ad3e774f2dc0c6acf9e920dc6fcbcbf95ed9b98477c',
outIdx: 3,
},
},
{
value: '12235011',
outputScript:
'76a914a9f494266e4b3c823712f27dedcb83e30b2fe59f88ac',
spentBy: {
txid: '71c0f2d76c81bb91c6bf4de69693d95e8f043af9e055e949616443090f961d80',
outIdx: 0,
},
},
],
lockTime: 0,
block: {
height: 743257,
hash: '000000000000000013259e217a18907ba956c55f839b6b15a11a79a2bf303d9f',
timestamp: '1654812393',
},
timeFirstSeen: '0',
size: 226,
isCoinbase: false,
network: 'XEC',
},
{
txid: 'bd0101c9389c5e1fada4662ea9ba7c8d71f949743e42f2db563cb0ec96bd10a3',
version: 2,
inputs: [
{
prevOut: {
txid: '20230f564987e644070e35fa4a809b8d697c725023a903c638194231ddf9cfd3',
outIdx: 2,
},
inputScript:
'483045022100d541ef12cc57c3b3cc95b338aec21775b27441d12eda662dcff23a46d07cc9450220467d2aae0dadcae787db33dab6adc86ec47aafea0133cc2130a62bb8247491d6412102c0850ac54a3915aa762c1ada2f50076b2aa4bc7d188eee9b5af6ddfa412a363f',
outputScript:
'76a914a9f494266e4b3c823712f27dedcb83e30b2fe59f88ac',
value: '14743621',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '2500000',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
spentBy: {
txid: '55388f67ab1b23d2e6c146472b836c1ba1df33dd9b7685bed34c6c9ce6fe5c0e',
outIdx: 0,
},
},
{
value: '12243166',
outputScript:
'76a914a9f494266e4b3c823712f27dedcb83e30b2fe59f88ac',
spentBy: {
txid: '3f7cbb380b2ad014fc6e95f2d4c10eda2f37c5686f6739af562e6e855c457b3b',
outIdx: 0,
},
},
],
lockTime: 0,
block: {
height: 742800,
hash: '000000000000000009e1ed934f027563d161d1f59a00253496b0c847c2288c38',
timestamp: '1654543720',
},
timeFirstSeen: '0',
size: 226,
isCoinbase: false,
network: 'XEC',
},
{
txid: '20230f564987e644070e35fa4a809b8d697c725023a903c638194231ddf9cfd3',
version: 2,
inputs: [
{
prevOut: {
txid: '41e306829bca85422ac5cbf2baad3d1a4e79c3bbb8f042cf0aa7ae2df49535a5',
outIdx: 1,
},
inputScript:
'473044022046faa2cc8efc0a06b2cfa8b80b658d4dc09bc1524cba1cb4ab456f8bc9ebf37902205074d7975824a06d6cba90dc91503f29801d9c180253bbe4ecefb42ddc82da6d412102c0850ac54a3915aa762c1ada2f50076b2aa4bc7d188eee9b5af6ddfa412a363f',
outputScript:
'76a914a9f494266e4b3c823712f27dedcb83e30b2fe59f88ac',
value: '14746276',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '0',
outputScript:
'6a04657461624c810406fe30e60d38c4408043ca5b43cd515db4b10af477007962db6d019eeb9c3f6734c495574368da107bb00b32a27d096069706a0fb91fe18d0d8281c1b826fdd862a1955dd0d28b4e0245c862085f172d3947ca202953095ed014258f069c4d3fc36706e842b6643061e4ce70b91fb5b5b206de4d3b81a621ad9d4456c3f0cf6b',
},
{
value: '2200',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
spentBy: {
txid: '31e5bf25b892e173483c7b100a5b0fcda03cac9337c335fda3b3a5cf17b64759',
outIdx: 0,
},
},
{
value: '14743621',
outputScript:
'76a914a9f494266e4b3c823712f27dedcb83e30b2fe59f88ac',
spentBy: {
txid: 'bd0101c9389c5e1fada4662ea9ba7c8d71f949743e42f2db563cb0ec96bd10a3',
outIdx: 0,
},
},
],
lockTime: 0,
block: {
height: 741058,
hash: '00000000000000000bb6dc63cd48a9b0dcf37a9b722618209dc85a79e8dc7973',
timestamp: '1653506978',
},
timeFirstSeen: '0',
size: 371,
isCoinbase: false,
network: 'XEC',
},
{
txid: '41e306829bca85422ac5cbf2baad3d1a4e79c3bbb8f042cf0aa7ae2df49535a5',
version: 2,
inputs: [
{
prevOut: {
txid: '63a11be653e333ae3e1075791c996d46b5f476b483c4ccf4ec33b524028d7cd5',
outIdx: 1,
},
inputScript:
'47304402204c6140c524e40653e85440aff615af47a481accc9dc8b45548d59a3ae91d3a0802200aa1667d00b16d3a80c5d4d1b4cabeee415289ef6818496f92abf9ec2db8262c412102c0850ac54a3915aa762c1ada2f50076b2aa4bc7d188eee9b5af6ddfa412a363f',
outputScript:
'76a914a9f494266e4b3c823712f27dedcb83e30b2fe59f88ac',
value: '14748931',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '2200',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
spentBy: {
txid: '46158de814d73ded1a8f91221c85d9c91c696eaf14f0bd10e6fa7215bacf7852',
outIdx: 1,
},
},
{
value: '14746276',
outputScript:
'76a914a9f494266e4b3c823712f27dedcb83e30b2fe59f88ac',
spentBy: {
txid: '20230f564987e644070e35fa4a809b8d697c725023a903c638194231ddf9cfd3',
outIdx: 0,
},
},
],
lockTime: 0,
block: {
height: 739747,
hash: '0000000000000000079aa77192cf335b2004788c2860be98c310a5187a588dd3',
timestamp: '1652722196',
},
timeFirstSeen: '0',
size: 225,
isCoinbase: false,
network: 'XEC',
},
{
txid: 'fa2e8951ee2ba44bab33e38c5b903bf77657363cffe268e8ae9f4728e14b04d8',
version: 2,
inputs: [
{
prevOut: {
txid: '6f0f29e02308fa670e8412f4c2d84e7e46f8d3fd6436dbc8676b8af99bb34a60',
outIdx: 0,
},
inputScript:
'483045022100920a6f8696b0fadd7b82f3450090cd7f198d7287551bb8f08065951c7e5f9455022004d5d8304b056f2f4a6474392665cf8dfd897ea02f18506aced86b552482e404412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '3300',
sequenceNo: 4294967295,
},
{
prevOut: {
txid: '3d60d2d130eee3e45e6a2d0e88e2ecae82d70c1ed1afc8f62ca9c8564d38108d',
outIdx: 1,
},
inputScript:
'4830450221008461ccf6961f300a0f8c7ec5526813b531aea5033cacef6d15ab7e033f50130102206d22a9a7bd0ec2f04ace2c0642f233fea3bbed7ee677e53416845a0bfd367044412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '546',
sequenceNo: 4294967295,
slpToken: {
amount: '17',
isMintBaton: false,
},
},
],
outputs: [
{
value: '0',
outputScript:
'6a04534c500001010453454e44204bd147fc5d5ff26249a9299c46b80920c0b81f59a60e05428262160ebee0b0c308000000000000000e080000000000000003',
},
{
value: '546',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
slpToken: {
amount: '14',
isMintBaton: false,
},
},
{
value: '546',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
slpToken: {
amount: '3',
isMintBaton: false,
},
},
{
value: '1482',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
},
],
lockTime: 0,
slpTxData: {
slpMeta: {
tokenType: 'FUNGIBLE',
txType: 'SEND',
tokenId:
'4bd147fc5d5ff26249a9299c46b80920c0b81f59a60e05428262160ebee0b0c3',
},
},
timeFirstSeen: '1663957661',
size: 481,
isCoinbase: false,
network: 'XEC',
},
{
txid: 'cd4b0008e90b2a872dc92e19cdd87f52466b801f037641193196e75ff10f6990',
version: 2,
inputs: [
{
prevOut: {
txid: '0cf5a88f891b76da82c2d48d548f7e445355d6d8695ce91f1aee13e641a34183',
outIdx: 1,
},
inputScript:
'473044022064c39d8fa6b89fcd0961d06ee7c6976c798b2de6f33bdd58b6db56a2c45b235102204444a625e5328eee7139110c03100bdc062292f28d6de8e2b36536a39d2466df412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '1200',
sequenceNo: 4294967295,
},
{
prevOut: {
txid: '4f1a2f3e24b270b57e4d6b9bc6204360cdfeb1dfeca7d92379d49a7ba55c8a5f',
outIdx: 0,
},
inputScript:
'483045022100cff4ca28b0bd320f4aa7bd3029b0c1e48c392b42c56b7dfdca292bbb14302e5f02206bc74177a98481e49c937a6229ebd8191f653a363c95cd37b69f1300f05f6d3a412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '2200',
sequenceNo: 4294967295,
},
{
prevOut: {
txid: '46cf8bf009dbc6da45045c23af878cd2fd6dd3d3f62bf524d675e75959d5fdbd',
outIdx: 2,
},
inputScript:
'483045022100ad48dd7d1196b108e3ee0412edcbe468031dcf48244b9b4b57f6cc9e710c836602202e5a00a2c9e1e6fc8937af70fcb8018e299dd007235229e6e3d87f6af9f8761c412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '546',
sequenceNo: 4294967295,
slpToken: {
amount: '228',
isMintBaton: false,
},
},
],
outputs: [
{
value: '0',
outputScript:
'6a04534c500001010453454e44204bd147fc5d5ff26249a9299c46b80920c0b81f59a60e05428262160ebee0b0c308000000000000000d0800000000000000d7',
},
{
value: '546',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
slpToken: {
amount: '13',
isMintBaton: false,
},
},
{
value: '546',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
slpToken: {
amount: '215',
isMintBaton: false,
},
},
{
value: '1255',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
},
],
lockTime: 0,
slpTxData: {
slpMeta: {
tokenType: 'FUNGIBLE',
txType: 'SEND',
tokenId:
'4bd147fc5d5ff26249a9299c46b80920c0b81f59a60e05428262160ebee0b0c3',
},
},
timeFirstSeen: '1663957652',
size: 628,
isCoinbase: false,
network: 'XEC',
},
{
txid: '7fcdf5c36d246ede7fb64fed835a2400b0700ecedfdf4e6f738e5a8026d44275',
version: 2,
inputs: [
{
prevOut: {
txid: '09be4bad8545cb249fe8673be5e45d5d1109a8a91b6a862a6e9ad041e2f3232d',
outIdx: 1,
},
inputScript:
'483045022100c30541783609812c5a4066e6395488f3bcabc0cd5a21444d79868c31016b5c9f02200d1c7709f414411a3e3cd9dbf606648339fb2c309b016e490d52aa565510e151412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '1700',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '1200',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
},
],
lockTime: 0,
timeFirstSeen: '1663957640',
size: 192,
isCoinbase: false,
network: 'XEC',
},
{
txid: '4993ad3b9db58bef37689a304c485bdc16c6418e05d2b57c77f8b8a2fb3450e4',
version: 2,
inputs: [
{
prevOut: {
txid: '053d08a11f6da2720a093b55f907a9bdb4246e8ddc032a40347d4823e6c1a046',
outIdx: 0,
},
inputScript:
'47304402202608525692251d17e680b7856da6abda3e92b51fbfc4fc852586355bde4fe6d30220737203dc6832383b5cc1edc45bbc972a7c18e6b3de69fd8f0cc93b0a0fbd3fa5412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '5500',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '1100',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
},
{
value: '3945',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
},
],
lockTime: 0,
timeFirstSeen: '1663957633',
size: 225,
isCoinbase: false,
network: 'XEC',
},
{
txid: 'e8bb28fd679fc66ade43a79d088f6b63a2b87d85dbdd5fcd07d7fd7e9be8b1e8',
version: 2,
inputs: [
{
prevOut: {
txid: '76684ecd7296b5c97dc8a8ff41a12188ad8b50ba19f2a9c69e67bdb03be6188e',
outIdx: 0,
},
inputScript:
'483045022100ed4f81298d98a4d9c16749cd50ed050dcbbba30266e7c1605f08142ca3f8b9390220298f5290847be114fa33eb931985ea9dd61c39043112db3fcdfcf1efad508247412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '2200',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '1000',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
},
{
value: '745',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
},
],
lockTime: 0,
timeFirstSeen: '1663957623',
size: 226,
isCoinbase: false,
network: 'XEC',
},
{
txid: '09033290a18b5c3054dbb6df8b6ad5c3e2bc121ab4cb2a91f79cedb36f05a2ef',
version: 2,
inputs: [
{
prevOut: {
txid: 'c0ab154992174fc86381540dbf016d64c4e218a07aec7d5734a841ccbab93e1c',
outIdx: 0,
},
inputScript:
'483045022100f50735a67538602ec240725f9160bdfc96b4ae443fff2cebaf25485e8f98f5720220584ab745222cc7a0cd33d6f287885781b8009bc1e819b9b97436ecdb31abeff2412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '49545',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '1300',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
},
{
value: '47790',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
},
],
lockTime: 0,
block: {
height: 758570,
hash: '00000000000000000d1c7a165d8d185103ab30fb2d113334a9d8ee6cb6a9d268',
timestamp: '1663956316',
},
timeFirstSeen: '1663956020',
size: 226,
isCoinbase: false,
network: 'XEC',
},
{
txid: 'daf142f1f90dc81efeafb94f986b951ff3bae6fb155565d96fd091e34e61ee29',
version: 2,
inputs: [
{
prevOut: {
txid: '5b679c422abc750576c188e3ed0729fb0e452f6ae0a8ad118026755fbceb00b1',
outIdx: 1,
},
inputScript:
'483045022100ac91ae0c612165e500605ae41080a30be891ef757c378733bfe5533f331d0e97022020babc7d6a267fc5fbab8ba9740968732978abf4cf63e049721c008532204bf8412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '47562',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '1200',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
},
{
value: '45907',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
},
],
lockTime: 0,
block: {
height: 758570,
hash: '00000000000000000d1c7a165d8d185103ab30fb2d113334a9d8ee6cb6a9d268',
timestamp: '1663956316',
},
timeFirstSeen: '1663956011',
size: 226,
isCoinbase: false,
network: 'XEC',
},
{
txid: '376593dc3d3e305843fe23692e1477ae13ae1e8bfc778273c544a0c5d6285337',
version: 2,
inputs: [
{
prevOut: {
txid: '930259a2fe4de56a15ab33d5f2b13bfd08568c3d662df6b1a3c090a19aab8104',
outIdx: 0,
},
inputScript:
'48304502210086a6072eaabb3502c73cbb6701c04edca374de60d62b888614d76b352203e9d602205721cec95da5a0ceda4cf54bf4bf8f54bec3d07b1caa75e1d65a87d8b5572f0f412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '3300',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '1100',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
},
{
value: '1745',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
},
],
lockTime: 0,
block: {
height: 758570,
hash: '00000000000000000d1c7a165d8d185103ab30fb2d113334a9d8ee6cb6a9d268',
timestamp: '1663956316',
},
timeFirstSeen: '1663956003',
size: 226,
isCoinbase: false,
network: 'XEC',
},
{
txid: '2faa94a50ddffc795f6044214efbca0d0190ed520e7e0fd35c4623ecd64b4e45',
version: 2,
inputs: [
{
prevOut: {
txid: '08ac32dc47252668cd32dbe0d9af15d1ae9e282ae56c3743a258d11613105924',
outIdx: 0,
},
inputScript:
'47304402207031eafbfb4f762f1eb719defa8cb890f55085c593244eecce57082b7013fd4f02205178c40c57903baa3d9ebf554d2f3892859599b6e358e10725db81c14de4c80f412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '2200',
sequenceNo: 4294967295,
},
{
prevOut: {
txid: '47d4940ded21de01c62675d31e211a381cc7d866dcf292af0422cdc616d927a8',
outIdx: 2,
},
inputScript:
'473044022058d957ffc312b4f9eefd71fb2c708e0a82bf72e56fdb322d75b4201453e413c402200df9176569cb2523f541dcff39f27c116926b214de37109775f3e5015e050604412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '546',
sequenceNo: 4294967295,
slpToken: {
amount: '34',
isMintBaton: false,
},
},
],
outputs: [
{
value: '0',
outputScript:
'6a04534c500001010453454e44204bd147fc5d5ff26249a9299c46b80920c0b81f59a60e05428262160ebee0b0c308000000000000000508000000000000001d',
},
{
value: '546',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
slpToken: {
amount: '5',
isMintBaton: false,
},
},
{
value: '546',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
slpToken: {
amount: '29',
isMintBaton: false,
},
},
],
lockTime: 0,
slpTxData: {
slpMeta: {
tokenType: 'FUNGIBLE',
txType: 'SEND',
tokenId:
'4bd147fc5d5ff26249a9299c46b80920c0b81f59a60e05428262160ebee0b0c3',
},
},
block: {
height: 758570,
hash: '00000000000000000d1c7a165d8d185103ab30fb2d113334a9d8ee6cb6a9d268',
timestamp: '1663956316',
},
timeFirstSeen: '1663955995',
size: 445,
isCoinbase: false,
network: 'XEC',
},
{
txid: 'c66b09f5c6b2afa5c63ff7c2ca2cc8d9538568a18c75b0e7d900c9c1be2758f7',
version: 2,
inputs: [
{
prevOut: {
txid: '43beeeeb761c401a1d121840e87c86237c98e9310e889feb0a34426e2a1ee463',
outIdx: 0,
},
inputScript:
'4730440220606efba360bf0843f8c3fe9fab7d1cdc34852395b9045a4c3cf8f27b91d414f2022054fb11ce6e4fd2ee50ba467e94460c63e45fb563e330fc35c5caa8eea71e93b7412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '3300',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '1900',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
},
{
value: '945',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
},
],
lockTime: 0,
block: {
height: 758569,
hash: '00000000000000000cbb0ac1fe8b1a4a87cd9bf58e7158333a1c32009c9137f0',
timestamp: '1663955917',
},
timeFirstSeen: '1663955710',
size: 225,
isCoinbase: false,
network: 'XEC',
},
];
export const mockSortedFlatTxHistoryWithUnconfirmed = [
{
txid: 'fa2e8951ee2ba44bab33e38c5b903bf77657363cffe268e8ae9f4728e14b04d8',
version: 2,
inputs: [
{
prevOut: {
txid: '6f0f29e02308fa670e8412f4c2d84e7e46f8d3fd6436dbc8676b8af99bb34a60',
outIdx: 0,
},
inputScript:
'483045022100920a6f8696b0fadd7b82f3450090cd7f198d7287551bb8f08065951c7e5f9455022004d5d8304b056f2f4a6474392665cf8dfd897ea02f18506aced86b552482e404412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '3300',
sequenceNo: 4294967295,
},
{
prevOut: {
txid: '3d60d2d130eee3e45e6a2d0e88e2ecae82d70c1ed1afc8f62ca9c8564d38108d',
outIdx: 1,
},
inputScript:
'4830450221008461ccf6961f300a0f8c7ec5526813b531aea5033cacef6d15ab7e033f50130102206d22a9a7bd0ec2f04ace2c0642f233fea3bbed7ee677e53416845a0bfd367044412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '546',
sequenceNo: 4294967295,
slpToken: {
amount: '17',
isMintBaton: false,
},
},
],
outputs: [
{
value: '0',
outputScript:
'6a04534c500001010453454e44204bd147fc5d5ff26249a9299c46b80920c0b81f59a60e05428262160ebee0b0c308000000000000000e080000000000000003',
},
{
value: '546',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
slpToken: {
amount: '14',
isMintBaton: false,
},
},
{
value: '546',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
slpToken: {
amount: '3',
isMintBaton: false,
},
},
{
value: '1482',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
},
],
lockTime: 0,
slpTxData: {
slpMeta: {
tokenType: 'FUNGIBLE',
txType: 'SEND',
tokenId:
'4bd147fc5d5ff26249a9299c46b80920c0b81f59a60e05428262160ebee0b0c3',
},
},
timeFirstSeen: '1663957661',
size: 481,
isCoinbase: false,
network: 'XEC',
},
{
txid: 'cd4b0008e90b2a872dc92e19cdd87f52466b801f037641193196e75ff10f6990',
version: 2,
inputs: [
{
prevOut: {
txid: '0cf5a88f891b76da82c2d48d548f7e445355d6d8695ce91f1aee13e641a34183',
outIdx: 1,
},
inputScript:
'473044022064c39d8fa6b89fcd0961d06ee7c6976c798b2de6f33bdd58b6db56a2c45b235102204444a625e5328eee7139110c03100bdc062292f28d6de8e2b36536a39d2466df412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '1200',
sequenceNo: 4294967295,
},
{
prevOut: {
txid: '4f1a2f3e24b270b57e4d6b9bc6204360cdfeb1dfeca7d92379d49a7ba55c8a5f',
outIdx: 0,
},
inputScript:
'483045022100cff4ca28b0bd320f4aa7bd3029b0c1e48c392b42c56b7dfdca292bbb14302e5f02206bc74177a98481e49c937a6229ebd8191f653a363c95cd37b69f1300f05f6d3a412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '2200',
sequenceNo: 4294967295,
},
{
prevOut: {
txid: '46cf8bf009dbc6da45045c23af878cd2fd6dd3d3f62bf524d675e75959d5fdbd',
outIdx: 2,
},
inputScript:
'483045022100ad48dd7d1196b108e3ee0412edcbe468031dcf48244b9b4b57f6cc9e710c836602202e5a00a2c9e1e6fc8937af70fcb8018e299dd007235229e6e3d87f6af9f8761c412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '546',
sequenceNo: 4294967295,
slpToken: {
amount: '228',
isMintBaton: false,
},
},
],
outputs: [
{
value: '0',
outputScript:
'6a04534c500001010453454e44204bd147fc5d5ff26249a9299c46b80920c0b81f59a60e05428262160ebee0b0c308000000000000000d0800000000000000d7',
},
{
value: '546',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
slpToken: {
amount: '13',
isMintBaton: false,
},
},
{
value: '546',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
slpToken: {
amount: '215',
isMintBaton: false,
},
},
{
value: '1255',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
},
],
lockTime: 0,
slpTxData: {
slpMeta: {
tokenType: 'FUNGIBLE',
txType: 'SEND',
tokenId:
'4bd147fc5d5ff26249a9299c46b80920c0b81f59a60e05428262160ebee0b0c3',
},
},
timeFirstSeen: '1663957652',
size: 628,
isCoinbase: false,
network: 'XEC',
},
{
txid: '7fcdf5c36d246ede7fb64fed835a2400b0700ecedfdf4e6f738e5a8026d44275',
version: 2,
inputs: [
{
prevOut: {
txid: '09be4bad8545cb249fe8673be5e45d5d1109a8a91b6a862a6e9ad041e2f3232d',
outIdx: 1,
},
inputScript:
'483045022100c30541783609812c5a4066e6395488f3bcabc0cd5a21444d79868c31016b5c9f02200d1c7709f414411a3e3cd9dbf606648339fb2c309b016e490d52aa565510e151412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '1700',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '1200',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
},
],
lockTime: 0,
timeFirstSeen: '1663957640',
size: 192,
isCoinbase: false,
network: 'XEC',
},
{
txid: '4993ad3b9db58bef37689a304c485bdc16c6418e05d2b57c77f8b8a2fb3450e4',
version: 2,
inputs: [
{
prevOut: {
txid: '053d08a11f6da2720a093b55f907a9bdb4246e8ddc032a40347d4823e6c1a046',
outIdx: 0,
},
inputScript:
'47304402202608525692251d17e680b7856da6abda3e92b51fbfc4fc852586355bde4fe6d30220737203dc6832383b5cc1edc45bbc972a7c18e6b3de69fd8f0cc93b0a0fbd3fa5412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '5500',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '1100',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
},
{
value: '3945',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
},
],
lockTime: 0,
timeFirstSeen: '1663957633',
size: 225,
isCoinbase: false,
network: 'XEC',
},
{
txid: 'e8bb28fd679fc66ade43a79d088f6b63a2b87d85dbdd5fcd07d7fd7e9be8b1e8',
version: 2,
inputs: [
{
prevOut: {
txid: '76684ecd7296b5c97dc8a8ff41a12188ad8b50ba19f2a9c69e67bdb03be6188e',
outIdx: 0,
},
inputScript:
'483045022100ed4f81298d98a4d9c16749cd50ed050dcbbba30266e7c1605f08142ca3f8b9390220298f5290847be114fa33eb931985ea9dd61c39043112db3fcdfcf1efad508247412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '2200',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '1000',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
},
{
value: '745',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
},
],
lockTime: 0,
timeFirstSeen: '1663957623',
size: 226,
isCoinbase: false,
network: 'XEC',
},
{
txid: '09033290a18b5c3054dbb6df8b6ad5c3e2bc121ab4cb2a91f79cedb36f05a2ef',
version: 2,
inputs: [
{
prevOut: {
txid: 'c0ab154992174fc86381540dbf016d64c4e218a07aec7d5734a841ccbab93e1c',
outIdx: 0,
},
inputScript:
'483045022100f50735a67538602ec240725f9160bdfc96b4ae443fff2cebaf25485e8f98f5720220584ab745222cc7a0cd33d6f287885781b8009bc1e819b9b97436ecdb31abeff2412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '49545',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '1300',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
},
{
value: '47790',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
},
],
lockTime: 0,
block: {
height: 758570,
hash: '00000000000000000d1c7a165d8d185103ab30fb2d113334a9d8ee6cb6a9d268',
timestamp: '1663956316',
},
timeFirstSeen: '1663956020',
size: 226,
isCoinbase: false,
network: 'XEC',
},
{
txid: 'daf142f1f90dc81efeafb94f986b951ff3bae6fb155565d96fd091e34e61ee29',
version: 2,
inputs: [
{
prevOut: {
txid: '5b679c422abc750576c188e3ed0729fb0e452f6ae0a8ad118026755fbceb00b1',
outIdx: 1,
},
inputScript:
'483045022100ac91ae0c612165e500605ae41080a30be891ef757c378733bfe5533f331d0e97022020babc7d6a267fc5fbab8ba9740968732978abf4cf63e049721c008532204bf8412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '47562',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '1200',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
},
{
value: '45907',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
},
],
lockTime: 0,
block: {
height: 758570,
hash: '00000000000000000d1c7a165d8d185103ab30fb2d113334a9d8ee6cb6a9d268',
timestamp: '1663956316',
},
timeFirstSeen: '1663956011',
size: 226,
isCoinbase: false,
network: 'XEC',
},
{
txid: '376593dc3d3e305843fe23692e1477ae13ae1e8bfc778273c544a0c5d6285337',
version: 2,
inputs: [
{
prevOut: {
txid: '930259a2fe4de56a15ab33d5f2b13bfd08568c3d662df6b1a3c090a19aab8104',
outIdx: 0,
},
inputScript:
'48304502210086a6072eaabb3502c73cbb6701c04edca374de60d62b888614d76b352203e9d602205721cec95da5a0ceda4cf54bf4bf8f54bec3d07b1caa75e1d65a87d8b5572f0f412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '3300',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '1100',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
},
{
value: '1745',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
},
],
lockTime: 0,
block: {
height: 758570,
hash: '00000000000000000d1c7a165d8d185103ab30fb2d113334a9d8ee6cb6a9d268',
timestamp: '1663956316',
},
timeFirstSeen: '1663956003',
size: 226,
isCoinbase: false,
network: 'XEC',
},
{
txid: '2faa94a50ddffc795f6044214efbca0d0190ed520e7e0fd35c4623ecd64b4e45',
version: 2,
inputs: [
{
prevOut: {
txid: '08ac32dc47252668cd32dbe0d9af15d1ae9e282ae56c3743a258d11613105924',
outIdx: 0,
},
inputScript:
'47304402207031eafbfb4f762f1eb719defa8cb890f55085c593244eecce57082b7013fd4f02205178c40c57903baa3d9ebf554d2f3892859599b6e358e10725db81c14de4c80f412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '2200',
sequenceNo: 4294967295,
},
{
prevOut: {
txid: '47d4940ded21de01c62675d31e211a381cc7d866dcf292af0422cdc616d927a8',
outIdx: 2,
},
inputScript:
'473044022058d957ffc312b4f9eefd71fb2c708e0a82bf72e56fdb322d75b4201453e413c402200df9176569cb2523f541dcff39f27c116926b214de37109775f3e5015e050604412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '546',
sequenceNo: 4294967295,
slpToken: {
amount: '34',
isMintBaton: false,
},
},
],
outputs: [
{
value: '0',
outputScript:
'6a04534c500001010453454e44204bd147fc5d5ff26249a9299c46b80920c0b81f59a60e05428262160ebee0b0c308000000000000000508000000000000001d',
},
{
value: '546',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
slpToken: {
amount: '5',
isMintBaton: false,
},
},
{
value: '546',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
slpToken: {
amount: '29',
isMintBaton: false,
},
},
],
lockTime: 0,
slpTxData: {
slpMeta: {
tokenType: 'FUNGIBLE',
txType: 'SEND',
tokenId:
'4bd147fc5d5ff26249a9299c46b80920c0b81f59a60e05428262160ebee0b0c3',
},
},
block: {
height: 758570,
hash: '00000000000000000d1c7a165d8d185103ab30fb2d113334a9d8ee6cb6a9d268',
timestamp: '1663956316',
},
timeFirstSeen: '1663955995',
size: 445,
isCoinbase: false,
network: 'XEC',
},
{
txid: 'c66b09f5c6b2afa5c63ff7c2ca2cc8d9538568a18c75b0e7d900c9c1be2758f7',
version: 2,
inputs: [
{
prevOut: {
txid: '43beeeeb761c401a1d121840e87c86237c98e9310e889feb0a34426e2a1ee463',
outIdx: 0,
},
inputScript:
'4730440220606efba360bf0843f8c3fe9fab7d1cdc34852395b9045a4c3cf8f27b91d414f2022054fb11ce6e4fd2ee50ba467e94460c63e45fb563e330fc35c5caa8eea71e93b7412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '3300',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '1900',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
},
{
value: '945',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
},
],
lockTime: 0,
block: {
height: 758569,
hash: '00000000000000000cbb0ac1fe8b1a4a87cd9bf58e7158333a1c32009c9137f0',
timestamp: '1663955917',
},
timeFirstSeen: '1663955710',
size: 225,
isCoinbase: false,
network: 'XEC',
},
];
export const mockFlatTxHistoryWithAllUnconfirmed = [
{
txid: 'fec829a1ff34a9f84058cdd8bf795c114a8fcb3bcc6c3ca9ea8b9ae68420dd9a',
version: 2,
inputs: [
{
prevOut: {
txid: '66ce76f8ebcd0ac83702c4a71e259cee9fceedf9cfdb2b08e8ebe15483e50f56',
outIdx: 1,
},
inputScript:
'4730440220724f1f261ad1e2b6b21e065632c6da0ebe3701693205f5485b395d747645fdf502207062fda8367c20b3e090391994176bf5b40877c1b60e450d73a37255d6ee10dd412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '39162',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '2500',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
},
{
value: '36207',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
},
],
lockTime: 0,
timeFirstSeen: '1663960417',
size: 225,
isCoinbase: false,
network: 'XEC',
},
{
txid: '66ce76f8ebcd0ac83702c4a71e259cee9fceedf9cfdb2b08e8ebe15483e50f56',
version: 2,
inputs: [
{
prevOut: {
txid: '842dd09e723d664d7647bc49f911c88b60f0450e646fedb461f319dadb867934',
outIdx: 1,
},
inputScript:
'48304502210084dcee7aefac851d47e1a8dbadc4a6263fe87a661ed37541d611c8765510501f022001e606d50a8c784b0295dd7e4e5fe58f89592cf9d81f4de6daf7bdf6ee2a32a8412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '42017',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '2400',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
},
{
value: '39162',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
spentBy: {
txid: 'fec829a1ff34a9f84058cdd8bf795c114a8fcb3bcc6c3ca9ea8b9ae68420dd9a',
outIdx: 0,
},
},
],
lockTime: 0,
timeFirstSeen: '1663960406',
size: 226,
isCoinbase: false,
network: 'XEC',
},
{
txid: '842dd09e723d664d7647bc49f911c88b60f0450e646fedb461f319dadb867934',
version: 2,
inputs: [
{
prevOut: {
txid: '6bfdfbb71b71d0b1c024c777e5cc6a6b81806dbb673d4f5e65ab30476035f269',
outIdx: 3,
},
inputScript:
'473044022036cd1605ab5122e9769549cf953d5638022c99dcb6c838c77eeaa958e14ba5180220466cced2c01885f83e38e26821238dd0b9697c5029e232cfe6cb5356742ebe58412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '44772',
sequenceNo: 4294967295,
slpBurn: {
token: {
amount: '0',
isMintBaton: false,
},
tokenId:
'98183238638ecb4ddc365056e22de0e8a05448c1e6084bae247fae5a74ad4f48',
},
},
],
outputs: [
{
value: '2300',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
},
{
value: '42017',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
spentBy: {
txid: '66ce76f8ebcd0ac83702c4a71e259cee9fceedf9cfdb2b08e8ebe15483e50f56',
outIdx: 0,
},
},
],
lockTime: 0,
timeFirstSeen: '1663960398',
size: 225,
isCoinbase: false,
network: 'XEC',
},
{
txid: 'eb79e90e3b5a0b6766cbfab3efd9c52f831bef62f9f27c2aa925ee81e43b843f',
version: 2,
inputs: [
{
prevOut: {
txid: '5944386e40a401ff31940f9d41e7983bec3b617d83efba0033eba28926a2fb9e',
outIdx: 3,
},
inputScript:
'47304402206be85d81c79a53dc6a598e08091ad6aededdc4a710601c9fb477cff9dab24c7402200ec9bf7b1f0ce605916b8308ebea3d8024280659229db43d53be05ed5a0be5f0412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '1825562',
sequenceNo: 4294967295,
slpBurn: {
token: {
amount: '0',
isMintBaton: false,
},
tokenId:
'98183238638ecb4ddc365056e22de0e8a05448c1e6084bae247fae5a74ad4f48',
},
},
],
outputs: [
{
value: '2200',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
},
{
value: '1822907',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
},
],
lockTime: 0,
timeFirstSeen: '1663960388',
size: 225,
isCoinbase: false,
network: 'XEC',
},
{
txid: 'f051b152f13004c18b5aab3b615d88af8175fa5416426fb73e3731fa530f064d',
version: 2,
inputs: [
{
prevOut: {
txid: '384e4b305f204597f77dee4677895bee356e5e3cac07806ad28e9115faddef6c',
outIdx: 3,
},
inputScript:
'483045022100b6a6027d41170d2bb917b632a4a30df60ef3b51e90a27eb701f18a63a99a4313022029ccbace732ee942f8ee5773bbc4a3e3dd046af7e9ccf5889d8c333d27e302d8412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '1190050',
sequenceNo: 4294967295,
slpBurn: {
token: {
amount: '0',
isMintBaton: false,
},
tokenId:
'98183238638ecb4ddc365056e22de0e8a05448c1e6084bae247fae5a74ad4f48',
},
},
],
outputs: [
{
value: '2100',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
},
{
value: '1187495',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
},
],
lockTime: 0,
timeFirstSeen: '1663960377',
size: 226,
isCoinbase: false,
network: 'XEC',
},
{
txid: '6bfdfbb71b71d0b1c024c777e5cc6a6b81806dbb673d4f5e65ab30476035f269',
version: 2,
inputs: [
{
prevOut: {
txid: 'd11d964010240aceb9cab32c200a87d2f44330852cc1f16a5e9daeed00d3a465',
outIdx: 3,
},
inputScript:
'48304502210092f2508a5f19b67be121dc5d8fd70569d9275a11f2c1724db8c714ad4d06b14e02206e8a3101f8ceecc19b5508455e1542c65847951456cf884444e951d6e0cfb5ef412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '46590',
sequenceNo: 4294967295,
},
{
prevOut: {
txid: '5944386e40a401ff31940f9d41e7983bec3b617d83efba0033eba28926a2fb9e',
outIdx: 2,
},
inputScript:
'47304402200e225ab4c7d20aef968d95fbf6f881f313c9b35aef891edd4192c5320f147f2502205794732b6242c3a445ee1340ca03950e2044321b9c99bf7d5805ea36cac756dc412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '546',
sequenceNo: 4294967295,
slpToken: {
amount: '8832',
isMintBaton: false,
},
},
],
outputs: [
{
value: '0',
outputScript:
'6a04534c500001010453454e442098183238638ecb4ddc365056e22de0e8a05448c1e6084bae247fae5a74ad4f4808000000000000000508000000000000227b',
},
{
value: '546',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
slpToken: {
amount: '5',
isMintBaton: false,
},
},
{
value: '546',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
slpToken: {
amount: '8827',
isMintBaton: false,
},
},
{
value: '44772',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
spentBy: {
txid: '842dd09e723d664d7647bc49f911c88b60f0450e646fedb461f319dadb867934',
outIdx: 0,
},
},
],
lockTime: 0,
slpTxData: {
slpMeta: {
tokenType: 'FUNGIBLE',
txType: 'SEND',
tokenId:
'98183238638ecb4ddc365056e22de0e8a05448c1e6084bae247fae5a74ad4f48',
},
},
timeFirstSeen: '1663960365',
size: 480,
isCoinbase: false,
network: 'XEC',
},
{
txid: '5944386e40a401ff31940f9d41e7983bec3b617d83efba0033eba28926a2fb9e',
version: 2,
inputs: [
{
prevOut: {
txid: 'c9cd91d763aeb252b889f815f7ca79e0360f0b208ce7cd95f0353d3615173805',
outIdx: 1,
},
inputScript:
'47304402206a807dad013e5bbb5a78bc12349c550f1867be0ec46ebe4a18ca0ffb45b84cf802206345b92bdec24663bc4fb168d6e1601781969393e93fbcad5279fa72bde08774412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '1827380',
sequenceNo: 4294967295,
},
{
prevOut: {
txid: 'd1a286475ac63df6ae51ffe69be5324b848ddf4a0acf8510d9ec266cb4e10454',
outIdx: 2,
},
inputScript:
'47304402200fdb134c8a13fbd1b95ef118c247a8a911e9d52ecaafc86ebb80cc179d69c1e002200bd4dc809c998a511e09f939a3270f7a2f9babae9d75919d2fef83ed66cf7dde412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '546',
sequenceNo: 4294967295,
slpToken: {
amount: '8836',
isMintBaton: false,
},
},
],
outputs: [
{
value: '0',
outputScript:
'6a04534c500001010453454e442098183238638ecb4ddc365056e22de0e8a05448c1e6084bae247fae5a74ad4f48080000000000000004080000000000002280',
},
{
value: '546',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
slpToken: {
amount: '4',
isMintBaton: false,
},
},
{
value: '546',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
slpToken: {
amount: '8832',
isMintBaton: false,
},
spentBy: {
txid: '6bfdfbb71b71d0b1c024c777e5cc6a6b81806dbb673d4f5e65ab30476035f269',
outIdx: 1,
},
},
{
value: '1825562',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
spentBy: {
txid: 'eb79e90e3b5a0b6766cbfab3efd9c52f831bef62f9f27c2aa925ee81e43b843f',
outIdx: 0,
},
},
],
lockTime: 0,
slpTxData: {
slpMeta: {
tokenType: 'FUNGIBLE',
txType: 'SEND',
tokenId:
'98183238638ecb4ddc365056e22de0e8a05448c1e6084bae247fae5a74ad4f48',
},
},
timeFirstSeen: '1663960353',
size: 479,
isCoinbase: false,
network: 'XEC',
},
{
txid: 'd1a286475ac63df6ae51ffe69be5324b848ddf4a0acf8510d9ec266cb4e10454',
version: 2,
inputs: [
{
prevOut: {
txid: 'c5628a5ebac844a6e62bff2319558711c0d61423b2c222761945414b1f604c68',
outIdx: 3,
},
inputScript:
'483045022100860067702a7ec139379913db22f4aaaca611e1d5cfd89df1c335bc9b72ee36d0022063892a87d269db12a7be0b24e721900b1f287ce9d1fb18431b2cc508ecebfdf7412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '45507',
sequenceNo: 4294967295,
},
{
prevOut: {
txid: 'c638754cb7707edd4faad89bdfee899aa7acbbc61f66e21f8faf60bdbb34fd65',
outIdx: 2,
},
inputScript:
'483045022100c96c70b94f5386efff2a8873d35d7b4c29fafe11555cf2a3daea8f905fb0f73502203751a29b351cca9c337345388237b98312873f44976f08667ae6540423a8d012412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '546',
sequenceNo: 4294967295,
slpToken: {
amount: '8839',
isMintBaton: false,
},
},
],
outputs: [
{
value: '0',
outputScript:
'6a04534c500001010453454e442098183238638ecb4ddc365056e22de0e8a05448c1e6084bae247fae5a74ad4f48080000000000000003080000000000002284',
},
{
value: '546',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
slpToken: {
amount: '3',
isMintBaton: false,
},
},
{
value: '546',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
slpToken: {
amount: '8836',
isMintBaton: false,
},
spentBy: {
txid: '5944386e40a401ff31940f9d41e7983bec3b617d83efba0033eba28926a2fb9e',
outIdx: 1,
},
},
{
value: '43689',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
},
],
lockTime: 0,
slpTxData: {
slpMeta: {
tokenType: 'FUNGIBLE',
txType: 'SEND',
tokenId:
'98183238638ecb4ddc365056e22de0e8a05448c1e6084bae247fae5a74ad4f48',
},
},
timeFirstSeen: '1663960344',
size: 481,
isCoinbase: false,
network: 'XEC',
},
{
txid: 'c638754cb7707edd4faad89bdfee899aa7acbbc61f66e21f8faf60bdbb34fd65',
version: 2,
inputs: [
{
prevOut: {
txid: 'b142b79dbda8ae4aa580220bec76ae5ee78ff2c206a39ce20138c4f371c22aca',
outIdx: 1,
},
inputScript:
'4730440220219fdd01482905c336ef8345973339ebe6f540fb7ff7f04d808357fd73c137b302207cb8af146cdf3ec643d85f71c9b95bc6b4fa4e0c19d5f76baf0329f4e315ab4d412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '848',
sequenceNo: 4294967295,
},
{
prevOut: {
txid: 'b24bc776a3414479f31835e26c17713cd655dd51c30351a26d3900a126b6275e',
outIdx: 1,
},
inputScript:
'483045022100f8df9b24dc337b5c7b0b41f454fb535a181aa95814d01e3e2246908fda3a5d800220417d4bd3c10d59f9655ddae4229813222abd9a5b148db1a456fde4719ea8dc56412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '4800',
sequenceNo: 4294967295,
},
{
prevOut: {
txid: '384e4b305f204597f77dee4677895bee356e5e3cac07806ad28e9115faddef6c',
outIdx: 2,
},
inputScript:
'483045022100dcc45ddcb243a56ddee5d050dd961d553f4f93704378ce517ad47a161c6f768b022000ef68375269494caa36c9f063ecd6181dfb77b8c4e0e09fdb0433d5a484974e412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '546',
sequenceNo: 4294967295,
slpToken: {
amount: '8841',
isMintBaton: false,
},
},
],
outputs: [
{
value: '0',
outputScript:
'6a04534c500001010453454e442098183238638ecb4ddc365056e22de0e8a05448c1e6084bae247fae5a74ad4f48080000000000000002080000000000002287',
},
{
value: '546',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
slpToken: {
amount: '2',
isMintBaton: false,
},
},
{
value: '546',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
slpToken: {
amount: '8839',
isMintBaton: false,
},
spentBy: {
txid: 'd1a286475ac63df6ae51ffe69be5324b848ddf4a0acf8510d9ec266cb4e10454',
outIdx: 1,
},
},
{
value: '3503',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
},
],
lockTime: 0,
slpTxData: {
slpMeta: {
tokenType: 'FUNGIBLE',
txType: 'SEND',
tokenId:
'98183238638ecb4ddc365056e22de0e8a05448c1e6084bae247fae5a74ad4f48',
},
},
timeFirstSeen: '1663960334',
size: 628,
isCoinbase: false,
network: 'XEC',
},
{
txid: '384e4b305f204597f77dee4677895bee356e5e3cac07806ad28e9115faddef6c',
version: 2,
inputs: [
{
prevOut: {
txid: '487c4a2fe93806f75670fff2dc0f5906739a8bf02dcf32af1759f33c17f8dc91',
outIdx: 3,
},
inputScript:
'483045022100c1717019de60065cae38519a85a80723fc3ee73573739381ee02fcaaa34a15fd022063059a69397ad3108c2f955c92d195a90e8f1f616e23df132abb6675ac5800c2412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '992',
sequenceNo: 4294967295,
},
{
prevOut: {
txid: '5bb9474c4d682171091ecba6203d3365dab6f3901936122d8035098a80596e2e',
outIdx: 1,
},
inputScript:
'4830450221009b897d907bda2da570c5c273ab277b73c60d8fd39ba605829d0ec4b796fb7c20022011cc67871bf5df4693904fcdee80ac1adba332b14a4cdc9113b15f28e288adad412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '1191203',
sequenceNo: 4294967295,
},
{
prevOut: {
txid: '487c4a2fe93806f75670fff2dc0f5906739a8bf02dcf32af1759f33c17f8dc91',
outIdx: 2,
},
inputScript:
'483045022100be82f7c67c73ecf068905a44ca2147d89b8041e54a432386b25137f7bea0d0aa0220416607e30a8d8d8c08237032eeb7728f938650a70215f6615939cd2455569539412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '546',
sequenceNo: 4294967295,
slpToken: {
amount: '8842',
isMintBaton: false,
},
},
],
outputs: [
{
value: '0',
outputScript:
'6a04534c500001010453454e442098183238638ecb4ddc365056e22de0e8a05448c1e6084bae247fae5a74ad4f48080000000000000001080000000000002289',
},
{
value: '546',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
slpToken: {
amount: '1',
isMintBaton: false,
},
},
{
value: '546',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
slpToken: {
amount: '8841',
isMintBaton: false,
},
spentBy: {
txid: 'c638754cb7707edd4faad89bdfee899aa7acbbc61f66e21f8faf60bdbb34fd65',
outIdx: 2,
},
},
{
value: '1190050',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
spentBy: {
txid: 'f051b152f13004c18b5aab3b615d88af8175fa5416426fb73e3731fa530f064d',
outIdx: 0,
},
},
],
lockTime: 0,
slpTxData: {
slpMeta: {
tokenType: 'FUNGIBLE',
txType: 'SEND',
tokenId:
'98183238638ecb4ddc365056e22de0e8a05448c1e6084bae247fae5a74ad4f48',
},
},
timeFirstSeen: '1663960323',
size: 629,
isCoinbase: false,
network: 'XEC',
},
];
export const mockSortedFlatTxHistoryWithAllUnconfirmed = [
{
txid: 'fec829a1ff34a9f84058cdd8bf795c114a8fcb3bcc6c3ca9ea8b9ae68420dd9a',
version: 2,
inputs: [
{
prevOut: {
txid: '66ce76f8ebcd0ac83702c4a71e259cee9fceedf9cfdb2b08e8ebe15483e50f56',
outIdx: 1,
},
inputScript:
'4730440220724f1f261ad1e2b6b21e065632c6da0ebe3701693205f5485b395d747645fdf502207062fda8367c20b3e090391994176bf5b40877c1b60e450d73a37255d6ee10dd412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '39162',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '2500',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
},
{
value: '36207',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
},
],
lockTime: 0,
timeFirstSeen: '1663960417',
size: 225,
isCoinbase: false,
network: 'XEC',
},
{
txid: '66ce76f8ebcd0ac83702c4a71e259cee9fceedf9cfdb2b08e8ebe15483e50f56',
version: 2,
inputs: [
{
prevOut: {
txid: '842dd09e723d664d7647bc49f911c88b60f0450e646fedb461f319dadb867934',
outIdx: 1,
},
inputScript:
'48304502210084dcee7aefac851d47e1a8dbadc4a6263fe87a661ed37541d611c8765510501f022001e606d50a8c784b0295dd7e4e5fe58f89592cf9d81f4de6daf7bdf6ee2a32a8412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '42017',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '2400',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
},
{
value: '39162',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
spentBy: {
txid: 'fec829a1ff34a9f84058cdd8bf795c114a8fcb3bcc6c3ca9ea8b9ae68420dd9a',
outIdx: 0,
},
},
],
lockTime: 0,
timeFirstSeen: '1663960406',
size: 226,
isCoinbase: false,
network: 'XEC',
},
{
txid: '842dd09e723d664d7647bc49f911c88b60f0450e646fedb461f319dadb867934',
version: 2,
inputs: [
{
prevOut: {
txid: '6bfdfbb71b71d0b1c024c777e5cc6a6b81806dbb673d4f5e65ab30476035f269',
outIdx: 3,
},
inputScript:
'473044022036cd1605ab5122e9769549cf953d5638022c99dcb6c838c77eeaa958e14ba5180220466cced2c01885f83e38e26821238dd0b9697c5029e232cfe6cb5356742ebe58412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '44772',
sequenceNo: 4294967295,
slpBurn: {
token: {
amount: '0',
isMintBaton: false,
},
tokenId:
'98183238638ecb4ddc365056e22de0e8a05448c1e6084bae247fae5a74ad4f48',
},
},
],
outputs: [
{
value: '2300',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
},
{
value: '42017',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
spentBy: {
txid: '66ce76f8ebcd0ac83702c4a71e259cee9fceedf9cfdb2b08e8ebe15483e50f56',
outIdx: 0,
},
},
],
lockTime: 0,
timeFirstSeen: '1663960398',
size: 225,
isCoinbase: false,
network: 'XEC',
},
{
txid: 'eb79e90e3b5a0b6766cbfab3efd9c52f831bef62f9f27c2aa925ee81e43b843f',
version: 2,
inputs: [
{
prevOut: {
txid: '5944386e40a401ff31940f9d41e7983bec3b617d83efba0033eba28926a2fb9e',
outIdx: 3,
},
inputScript:
'47304402206be85d81c79a53dc6a598e08091ad6aededdc4a710601c9fb477cff9dab24c7402200ec9bf7b1f0ce605916b8308ebea3d8024280659229db43d53be05ed5a0be5f0412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '1825562',
sequenceNo: 4294967295,
slpBurn: {
token: {
amount: '0',
isMintBaton: false,
},
tokenId:
'98183238638ecb4ddc365056e22de0e8a05448c1e6084bae247fae5a74ad4f48',
},
},
],
outputs: [
{
value: '2200',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
},
{
value: '1822907',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
},
],
lockTime: 0,
timeFirstSeen: '1663960388',
size: 225,
isCoinbase: false,
network: 'XEC',
},
{
txid: 'f051b152f13004c18b5aab3b615d88af8175fa5416426fb73e3731fa530f064d',
version: 2,
inputs: [
{
prevOut: {
txid: '384e4b305f204597f77dee4677895bee356e5e3cac07806ad28e9115faddef6c',
outIdx: 3,
},
inputScript:
'483045022100b6a6027d41170d2bb917b632a4a30df60ef3b51e90a27eb701f18a63a99a4313022029ccbace732ee942f8ee5773bbc4a3e3dd046af7e9ccf5889d8c333d27e302d8412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '1190050',
sequenceNo: 4294967295,
slpBurn: {
token: {
amount: '0',
isMintBaton: false,
},
tokenId:
'98183238638ecb4ddc365056e22de0e8a05448c1e6084bae247fae5a74ad4f48',
},
},
],
outputs: [
{
value: '2100',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
},
{
value: '1187495',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
},
],
lockTime: 0,
timeFirstSeen: '1663960377',
size: 226,
isCoinbase: false,
network: 'XEC',
},
{
txid: '6bfdfbb71b71d0b1c024c777e5cc6a6b81806dbb673d4f5e65ab30476035f269',
version: 2,
inputs: [
{
prevOut: {
txid: 'd11d964010240aceb9cab32c200a87d2f44330852cc1f16a5e9daeed00d3a465',
outIdx: 3,
},
inputScript:
'48304502210092f2508a5f19b67be121dc5d8fd70569d9275a11f2c1724db8c714ad4d06b14e02206e8a3101f8ceecc19b5508455e1542c65847951456cf884444e951d6e0cfb5ef412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '46590',
sequenceNo: 4294967295,
},
{
prevOut: {
txid: '5944386e40a401ff31940f9d41e7983bec3b617d83efba0033eba28926a2fb9e',
outIdx: 2,
},
inputScript:
'47304402200e225ab4c7d20aef968d95fbf6f881f313c9b35aef891edd4192c5320f147f2502205794732b6242c3a445ee1340ca03950e2044321b9c99bf7d5805ea36cac756dc412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '546',
sequenceNo: 4294967295,
slpToken: {
amount: '8832',
isMintBaton: false,
},
},
],
outputs: [
{
value: '0',
outputScript:
'6a04534c500001010453454e442098183238638ecb4ddc365056e22de0e8a05448c1e6084bae247fae5a74ad4f4808000000000000000508000000000000227b',
},
{
value: '546',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
slpToken: {
amount: '5',
isMintBaton: false,
},
},
{
value: '546',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
slpToken: {
amount: '8827',
isMintBaton: false,
},
},
{
value: '44772',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
spentBy: {
txid: '842dd09e723d664d7647bc49f911c88b60f0450e646fedb461f319dadb867934',
outIdx: 0,
},
},
],
lockTime: 0,
slpTxData: {
slpMeta: {
tokenType: 'FUNGIBLE',
txType: 'SEND',
tokenId:
'98183238638ecb4ddc365056e22de0e8a05448c1e6084bae247fae5a74ad4f48',
},
},
timeFirstSeen: '1663960365',
size: 480,
isCoinbase: false,
network: 'XEC',
},
{
txid: '5944386e40a401ff31940f9d41e7983bec3b617d83efba0033eba28926a2fb9e',
version: 2,
inputs: [
{
prevOut: {
txid: 'c9cd91d763aeb252b889f815f7ca79e0360f0b208ce7cd95f0353d3615173805',
outIdx: 1,
},
inputScript:
'47304402206a807dad013e5bbb5a78bc12349c550f1867be0ec46ebe4a18ca0ffb45b84cf802206345b92bdec24663bc4fb168d6e1601781969393e93fbcad5279fa72bde08774412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '1827380',
sequenceNo: 4294967295,
},
{
prevOut: {
txid: 'd1a286475ac63df6ae51ffe69be5324b848ddf4a0acf8510d9ec266cb4e10454',
outIdx: 2,
},
inputScript:
'47304402200fdb134c8a13fbd1b95ef118c247a8a911e9d52ecaafc86ebb80cc179d69c1e002200bd4dc809c998a511e09f939a3270f7a2f9babae9d75919d2fef83ed66cf7dde412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '546',
sequenceNo: 4294967295,
slpToken: {
amount: '8836',
isMintBaton: false,
},
},
],
outputs: [
{
value: '0',
outputScript:
'6a04534c500001010453454e442098183238638ecb4ddc365056e22de0e8a05448c1e6084bae247fae5a74ad4f48080000000000000004080000000000002280',
},
{
value: '546',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
slpToken: {
amount: '4',
isMintBaton: false,
},
},
{
value: '546',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
slpToken: {
amount: '8832',
isMintBaton: false,
},
spentBy: {
txid: '6bfdfbb71b71d0b1c024c777e5cc6a6b81806dbb673d4f5e65ab30476035f269',
outIdx: 1,
},
},
{
value: '1825562',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
spentBy: {
txid: 'eb79e90e3b5a0b6766cbfab3efd9c52f831bef62f9f27c2aa925ee81e43b843f',
outIdx: 0,
},
},
],
lockTime: 0,
slpTxData: {
slpMeta: {
tokenType: 'FUNGIBLE',
txType: 'SEND',
tokenId:
'98183238638ecb4ddc365056e22de0e8a05448c1e6084bae247fae5a74ad4f48',
},
},
timeFirstSeen: '1663960353',
size: 479,
isCoinbase: false,
network: 'XEC',
},
{
txid: 'd1a286475ac63df6ae51ffe69be5324b848ddf4a0acf8510d9ec266cb4e10454',
version: 2,
inputs: [
{
prevOut: {
txid: 'c5628a5ebac844a6e62bff2319558711c0d61423b2c222761945414b1f604c68',
outIdx: 3,
},
inputScript:
'483045022100860067702a7ec139379913db22f4aaaca611e1d5cfd89df1c335bc9b72ee36d0022063892a87d269db12a7be0b24e721900b1f287ce9d1fb18431b2cc508ecebfdf7412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '45507',
sequenceNo: 4294967295,
},
{
prevOut: {
txid: 'c638754cb7707edd4faad89bdfee899aa7acbbc61f66e21f8faf60bdbb34fd65',
outIdx: 2,
},
inputScript:
'483045022100c96c70b94f5386efff2a8873d35d7b4c29fafe11555cf2a3daea8f905fb0f73502203751a29b351cca9c337345388237b98312873f44976f08667ae6540423a8d012412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '546',
sequenceNo: 4294967295,
slpToken: {
amount: '8839',
isMintBaton: false,
},
},
],
outputs: [
{
value: '0',
outputScript:
'6a04534c500001010453454e442098183238638ecb4ddc365056e22de0e8a05448c1e6084bae247fae5a74ad4f48080000000000000003080000000000002284',
},
{
value: '546',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
slpToken: {
amount: '3',
isMintBaton: false,
},
},
{
value: '546',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
slpToken: {
amount: '8836',
isMintBaton: false,
},
spentBy: {
txid: '5944386e40a401ff31940f9d41e7983bec3b617d83efba0033eba28926a2fb9e',
outIdx: 1,
},
},
{
value: '43689',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
},
],
lockTime: 0,
slpTxData: {
slpMeta: {
tokenType: 'FUNGIBLE',
txType: 'SEND',
tokenId:
'98183238638ecb4ddc365056e22de0e8a05448c1e6084bae247fae5a74ad4f48',
},
},
timeFirstSeen: '1663960344',
size: 481,
isCoinbase: false,
network: 'XEC',
},
{
txid: 'c638754cb7707edd4faad89bdfee899aa7acbbc61f66e21f8faf60bdbb34fd65',
version: 2,
inputs: [
{
prevOut: {
txid: 'b142b79dbda8ae4aa580220bec76ae5ee78ff2c206a39ce20138c4f371c22aca',
outIdx: 1,
},
inputScript:
'4730440220219fdd01482905c336ef8345973339ebe6f540fb7ff7f04d808357fd73c137b302207cb8af146cdf3ec643d85f71c9b95bc6b4fa4e0c19d5f76baf0329f4e315ab4d412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '848',
sequenceNo: 4294967295,
},
{
prevOut: {
txid: 'b24bc776a3414479f31835e26c17713cd655dd51c30351a26d3900a126b6275e',
outIdx: 1,
},
inputScript:
'483045022100f8df9b24dc337b5c7b0b41f454fb535a181aa95814d01e3e2246908fda3a5d800220417d4bd3c10d59f9655ddae4229813222abd9a5b148db1a456fde4719ea8dc56412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '4800',
sequenceNo: 4294967295,
},
{
prevOut: {
txid: '384e4b305f204597f77dee4677895bee356e5e3cac07806ad28e9115faddef6c',
outIdx: 2,
},
inputScript:
'483045022100dcc45ddcb243a56ddee5d050dd961d553f4f93704378ce517ad47a161c6f768b022000ef68375269494caa36c9f063ecd6181dfb77b8c4e0e09fdb0433d5a484974e412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '546',
sequenceNo: 4294967295,
slpToken: {
amount: '8841',
isMintBaton: false,
},
},
],
outputs: [
{
value: '0',
outputScript:
'6a04534c500001010453454e442098183238638ecb4ddc365056e22de0e8a05448c1e6084bae247fae5a74ad4f48080000000000000002080000000000002287',
},
{
value: '546',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
slpToken: {
amount: '2',
isMintBaton: false,
},
},
{
value: '546',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
slpToken: {
amount: '8839',
isMintBaton: false,
},
spentBy: {
txid: 'd1a286475ac63df6ae51ffe69be5324b848ddf4a0acf8510d9ec266cb4e10454',
outIdx: 1,
},
},
{
value: '3503',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
},
],
lockTime: 0,
slpTxData: {
slpMeta: {
tokenType: 'FUNGIBLE',
txType: 'SEND',
tokenId:
'98183238638ecb4ddc365056e22de0e8a05448c1e6084bae247fae5a74ad4f48',
},
},
timeFirstSeen: '1663960334',
size: 628,
isCoinbase: false,
network: 'XEC',
},
{
txid: '384e4b305f204597f77dee4677895bee356e5e3cac07806ad28e9115faddef6c',
version: 2,
inputs: [
{
prevOut: {
txid: '487c4a2fe93806f75670fff2dc0f5906739a8bf02dcf32af1759f33c17f8dc91',
outIdx: 3,
},
inputScript:
'483045022100c1717019de60065cae38519a85a80723fc3ee73573739381ee02fcaaa34a15fd022063059a69397ad3108c2f955c92d195a90e8f1f616e23df132abb6675ac5800c2412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '992',
sequenceNo: 4294967295,
},
{
prevOut: {
txid: '5bb9474c4d682171091ecba6203d3365dab6f3901936122d8035098a80596e2e',
outIdx: 1,
},
inputScript:
'4830450221009b897d907bda2da570c5c273ab277b73c60d8fd39ba605829d0ec4b796fb7c20022011cc67871bf5df4693904fcdee80ac1adba332b14a4cdc9113b15f28e288adad412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '1191203',
sequenceNo: 4294967295,
},
{
prevOut: {
txid: '487c4a2fe93806f75670fff2dc0f5906739a8bf02dcf32af1759f33c17f8dc91',
outIdx: 2,
},
inputScript:
'483045022100be82f7c67c73ecf068905a44ca2147d89b8041e54a432386b25137f7bea0d0aa0220416607e30a8d8d8c08237032eeb7728f938650a70215f6615939cd2455569539412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '546',
sequenceNo: 4294967295,
slpToken: {
amount: '8842',
isMintBaton: false,
},
},
],
outputs: [
{
value: '0',
outputScript:
'6a04534c500001010453454e442098183238638ecb4ddc365056e22de0e8a05448c1e6084bae247fae5a74ad4f48080000000000000001080000000000002289',
},
{
value: '546',
outputScript:
'76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
slpToken: {
amount: '1',
isMintBaton: false,
},
},
{
value: '546',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
slpToken: {
amount: '8841',
isMintBaton: false,
},
spentBy: {
txid: 'c638754cb7707edd4faad89bdfee899aa7acbbc61f66e21f8faf60bdbb34fd65',
outIdx: 2,
},
},
{
value: '1190050',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
spentBy: {
txid: 'f051b152f13004c18b5aab3b615d88af8175fa5416426fb73e3731fa530f064d',
outIdx: 0,
},
},
],
lockTime: 0,
slpTxData: {
slpMeta: {
tokenType: 'FUNGIBLE',
txType: 'SEND',
tokenId:
'98183238638ecb4ddc365056e22de0e8a05448c1e6084bae247fae5a74ad4f48',
},
},
timeFirstSeen: '1663960323',
size: 629,
isCoinbase: false,
network: 'XEC',
},
];
export const mockParseTxWallet = {
mnemonic: 'string',
name: 'string',
Path245: {
publicKey: 'string',
hash160: '58549b5b93428fac88e36617456cd99a411bd0eb',
cashAddress: 'string',
slpAddress: 'string',
fundingWif: 'string',
fundingAddress: 'string',
legacyAddress: 'string',
},
Path145: {
publicKey: 'string',
hash160: '438a162355ef683062a7fde9d08dd720397aaee8',
cashAddress: 'string',
slpAddress: 'string',
fundingWif: 'string',
fundingAddress: 'string',
legacyAddress: 'string',
},
Path1899: {
publicKey: 'string',
hash160: '76458db0ed96fe9863fc1ccec9fa2cfab884b0f6',
cashAddress: 'string',
slpAddress: 'string',
fundingWif: 'string',
fundingAddress: 'string',
legacyAddress: 'string',
},
state: {
balances: {
totalBalanceInSatoshis: '55421422',
totalBalance: '554214.22',
},
tokens: [],
slpBalancesAndUtxos: {
slpUtxos: [],
nonSlpUtxos: [],
tokens: [],
},
parsedTxHistory: [],
utxos: [],
},
};
export const anotherMockParseTxWallet = {
mnemonic: 'string',
name: 'string',
Path245: {
publicKey:
'02c0850ac54a3915aa762c1ada2f50076b2aa4bc7d188eee9b5af6ddfa412a363f',
hash160: 'a9f494266e4b3c823712f27dedcb83e30b2fe59f',
cashAddress: 'string',
slpAddress: 'string',
fundingWif: 'string',
fundingAddress: 'string',
legacyAddress: 'string',
},
Path145: {
publicKey:
'03c477d7c44c1aff1549cdb74a32daea2ab4db9c664662a14aedfcb719cec96f29',
hash160: '1fb76a7db96fc774cbad00e8a72890602b4be304',
cashAddress: 'string',
slpAddress: 'string',
fundingWif: 'string',
fundingAddress: 'string',
legacyAddress: 'string',
},
Path1899: {
publicKey:
'03771805b54969a9bea4e3eb14a82851c67592156ddb5e52d3d53677d14a40fba6',
hash160: '95e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d',
cashAddress: 'string',
slpAddress: 'string',
fundingWif: 'string',
fundingAddress: 'string',
legacyAddress: 'string',
},
state: {
balances: {
totalBalanceInSatoshis: '55421422',
totalBalance: '554214.22',
},
tokens: [],
slpBalancesAndUtxos: {
slpUtxos: [],
nonSlpUtxos: [],
tokens: [],
},
parsedTxHistory: [],
utxos: [],
},
};
export const lambdaIncomingXecTx = {
txid: 'ac83faac54059c89c41dea4c3d6704e4f74fb82e4ad2fb948e640f1d19b760de',
version: 2,
inputs: [
{
prevOut: {
txid: '783428349b7b040b473ca9720ddbb2eda6fe28db16883ae47f3113b7a0977915',
outIdx: 1,
},
inputScript:
'48304502210094c497d6a0ce9ca6d79819467a1bb3953084b2e003ac7edac3b4f0634800baab02205729e229bd96d3a35cece712e3e9ec2d3f610a43d7712928f806983f209fbd72412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript: '76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '517521',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '4200',
outputScript: '76a91476458db0ed96fe9863fc1ccec9fa2cfab884b0f688ac',
},
{
value: '512866',
outputScript: '76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
},
],
lockTime: 0,
timeFirstSeen: '1652811898',
network: 'XEC',
};
export const lambdaOutgoingXecTx = {
txid: 'b82a67f929d256c9beb04a850ad735f3b322156cc9df2e37cadc130cc4fab660',
version: 2,
inputs: [
{
prevOut: {
txid: 'bb161d20f884ce45374fa3f9f1452290a2e52e93c8b552f559fad8ccd1ca33cc',
outIdx: 5,
},
inputScript:
'473044022054a6b2065a0b0bbe70048e782aa9be048cc8bee0a241d08d0b98fcd74505a90202201ed5224f34c9ff73dc0c581390247686af521476a977a58e55ed33c4afd177c2412102c237f49dd4c812f27b09d69d4c8a4da12744fda8ad63ce151fed2a3f41fd8795',
outputScript: '76a91476458db0ed96fe9863fc1ccec9fa2cfab884b0f688ac',
value: '4400000',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '22200',
outputScript: '76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
},
{
value: '4377345',
outputScript: '76a91476458db0ed96fe9863fc1ccec9fa2cfab884b0f688ac',
},
],
lockTime: 0,
timeFirstSeen: '1652823464',
network: 'XEC',
};
export const lambdaIncomingEtokenTx = {
txid: '46cf8bf009dbc6da45045c23af878cd2fd6dd3d3f62bf524d675e75959d5fdbd',
version: 2,
inputs: [
{
prevOut: {
txid: '51c18b220c2ff1d3ead60c3031316f15ed1c7fa43fbfe563c8227e107f218751',
outIdx: 1,
},
inputScript:
'473044022004db23a179194d5e2d8446159859a3e55521239c807f14d4666c772d1493a7d402206d6ea22a4fb8ef20cd6159d200a7292a3ff0181c8d596e7a3e1b9027e6912103412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript: '76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '3891539',
sequenceNo: 4294967295,
},
{
prevOut: {
txid: '66f0663e79f6a7fa3bf0834a16b48cb86fa42076c0df25ae89b402d5ee97c311',
outIdx: 2,
},
inputScript:
'483045022100c45951e15402b907c419f8a80bd76d374521faf885327ba3e55021345c2eb41902204cdb84e0190a5f671dd049b6b656f6b9e8b57254ec0123308345d5a634802acd412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript: '76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '546',
sequenceNo: 4294967295,
slpToken: {
amount: '240',
isMintBaton: false,
},
},
],
outputs: [
{
value: '0',
outputScript:
'6a04534c500001010453454e44204bd147fc5d5ff26249a9299c46b80920c0b81f59a60e05428262160ebee0b0c308000000000000000c0800000000000000e4',
},
{
value: '546',
outputScript: '76a91476458db0ed96fe9863fc1ccec9fa2cfab884b0f688ac',
slpToken: {
amount: '12',
isMintBaton: false,
},
},
{
value: '546',
outputScript: '76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
slpToken: {
amount: '228',
isMintBaton: false,
},
},
{
value: '3889721',
outputScript: '76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
},
],
lockTime: 0,
slpTxData: {
slpMeta: {
tokenType: 'FUNGIBLE',
txType: 'SEND',
tokenId:
'4bd147fc5d5ff26249a9299c46b80920c0b81f59a60e05428262160ebee0b0c3',
},
},
timeFirstSeen: '1652822000',
network: 'XEC',
};
export const lambdaOutgoingEtokenTx = {
txid: '3d60d2d130eee3e45e6a2d0e88e2ecae82d70c1ed1afc8f62ca9c8564d38108d',
version: 2,
inputs: [
{
prevOut: {
txid: 'bf7a7d1a063751d8f9c67e88523b3e6ffe8bb133e54ebf3cf500b859adfe16e0',
outIdx: 1,
},
inputScript:
'473044022047077b516d8554aba4deb36c66b789b5136bf16657bf1675ae866fd8a62834f5022035a7bd45422e0d0c343ac832a5efb0c05269ebe591ea400a33c23849cfa7c3a0412102c237f49dd4c812f27b09d69d4c8a4da12744fda8ad63ce151fed2a3f41fd8795',
outputScript: '76a91476458db0ed96fe9863fc1ccec9fa2cfab884b0f688ac',
value: '450747149',
sequenceNo: 4294967295,
},
{
prevOut: {
txid: '66f0663e79f6a7fa3bf0834a16b48cb86fa42076c0df25ae89b402d5ee97c311',
outIdx: 1,
},
inputScript:
'47304402203ba0eff663f253805a4ae75fecf5886d7dbaf6369c9e6f0bbf5c114184223fa202207992c5f1a8cb69b552b1af54a75bbab341bfcf90591e535282bd9409981d8464412102c237f49dd4c812f27b09d69d4c8a4da12744fda8ad63ce151fed2a3f41fd8795',
outputScript: '76a91476458db0ed96fe9863fc1ccec9fa2cfab884b0f688ac',
value: '546',
sequenceNo: 4294967295,
slpToken: {
amount: '69',
isMintBaton: false,
},
},
],
outputs: [
{
value: '0',
outputScript:
'6a04534c500001010453454e44204bd147fc5d5ff26249a9299c46b80920c0b81f59a60e05428262160ebee0b0c3080000000000000011080000000000000034',
},
{
value: '546',
outputScript: '76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
slpToken: {
amount: '17',
isMintBaton: false,
},
},
{
value: '546',
outputScript: '76a91476458db0ed96fe9863fc1ccec9fa2cfab884b0f688ac',
slpToken: {
amount: '52',
isMintBaton: false,
},
},
{
value: '450745331',
outputScript: '76a91476458db0ed96fe9863fc1ccec9fa2cfab884b0f688ac',
},
],
lockTime: 0,
slpTxData: {
slpMeta: {
tokenType: 'FUNGIBLE',
txType: 'SEND',
tokenId:
'4bd147fc5d5ff26249a9299c46b80920c0b81f59a60e05428262160ebee0b0c3',
},
},
timeFirstSeen: '1652823534',
network: 'XEC',
};
export const eTokenGenesisTx = {
txid: 'cf601c56b58bc05a39a95374a4a865f0a8b56544ea937b30fb46315441717c50',
version: 2,
inputs: [
{
prevOut: {
txid: 'b142b79dbda8ae4aa580220bec76ae5ee78ff2c206a39ce20138c4f371c22aca',
outIdx: 0,
},
inputScript:
'483045022100ab2a1e04a156e9cc5204e11e77ba399347f3b7ea3e05d45897c7fb7c6854a7ff022065c7e096e0526a0af223ce32e5e162aa577c42f7da231c13e28ebc3532396f20412103771805b54969a9bea4e3eb14a82851c67592156ddb5e52d3d53677d14a40fba6',
outputScript: '76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
value: '1300',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '0',
outputScript:
'6a04534c500001010747454e45534953035544540a557064617465546573741468747470733a2f2f636173687461622e636f6d2f4c0001074c000800000001cf977871',
},
{
value: '546',
outputScript: '76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
slpToken: {
amount: '7777777777',
isMintBaton: false,
},
},
],
lockTime: 0,
slpTxData: {
slpMeta: {
tokenType: 'FUNGIBLE',
txType: 'GENESIS',
tokenId:
'cf601c56b58bc05a39a95374a4a865f0a8b56544ea937b30fb46315441717c50',
},
genesisInfo: {
tokenTicker: 'UDT',
tokenName: 'UpdateTest',
tokenDocumentUrl: 'https://cashtab.com/',
tokenDocumentHash: '',
decimals: 7,
},
},
block: {
height: 759037,
hash: '00000000000000000bc95bfdd45e71585f27139e71b56dd5bc86ef05d35b502f',
timestamp: '1664226709',
},
timeFirstSeen: '1664226189',
size: 268,
isCoinbase: false,
network: 'XEC',
};
export const receivedEtokenTxNineDecimals = {
txid: 'b808f6a831dcdfda2bd4c5f857f94e1a746a4effeda6a5ad742be6137884a4fb',
version: 2,
inputs: [
{
prevOut: {
txid: 'c638754cb7707edd4faad89bdfee899aa7acbbc61f66e21f8faf60bdbb34fd65',
outIdx: 3,
},
inputScript:
'4830450221009d649476ad963306a5210d9df2dfd7e2bb604be43d6cdfe359638d96239973eb02200ac6e71575f0f111dad2fbbeb2712490cc709ffe03eda7de33acc8614b2c0979412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript: '76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '3503',
sequenceNo: 4294967295,
},
{
prevOut: {
txid: '82d8dc652779f8d6c8453d2ba5aefec91f5247489246e5672cf3c5986fa3d235',
outIdx: 2,
},
inputScript:
'483045022100b7bec6d09e71bc4c124886e5953f6e7a7845c920f66feac2e9e5d16fc58a649a0220689d617c11ef0bd63dbb7ea0fa5c0d3419d6500535bda8f7a7fc3e27f27c3de6412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript: '76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '546',
sequenceNo: 4294967295,
slpToken: {
amount: '9876543156',
isMintBaton: false,
},
},
],
outputs: [
{
value: '0',
outputScript:
'6a04534c500001010453454e4420acba1d7f354c6d4d001eb99d31de174e5cea8a31d692afd6e7eb8474ad541f550800000000075bcd1508000000024554499f',
},
{
value: '546',
outputScript: '76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
slpToken: {
amount: '123456789',
isMintBaton: false,
},
},
{
value: '546',
outputScript: '76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
slpToken: {
amount: '9753086367',
isMintBaton: false,
},
},
{
value: '1685',
outputScript: '76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
},
],
lockTime: 0,
slpTxData: {
slpMeta: {
tokenType: 'FUNGIBLE',
txType: 'SEND',
tokenId:
'acba1d7f354c6d4d001eb99d31de174e5cea8a31d692afd6e7eb8474ad541f55',
},
},
timeFirstSeen: '1664837660',
size: 481,
isCoinbase: false,
network: 'XEC',
};
export const txHistoryTokenInfoById = {
'bf24d955f59351e738ecd905966606a6837e478e1982943d724eab10caad82fd': {
tokenTicker: 'ST',
tokenName: 'ST',
tokenDocumentUrl: 'developer.bitcoin.com',
tokenDocumentHash: '',
decimals: 0,
tokenId:
'bf24d955f59351e738ecd905966606a6837e478e1982943d724eab10caad82fd',
},
'bef614aac85c0c866f4d39e4d12a96851267d38d1bca5bdd6488bbd42e28b6b1': {
tokenTicker: 'CTP',
tokenName: 'Cash Tab Points',
tokenDocumentUrl: 'https://cashtabapp.com/',
tokenDocumentHash: '',
decimals: 9,
tokenId:
'bef614aac85c0c866f4d39e4d12a96851267d38d1bca5bdd6488bbd42e28b6b1',
},
'1f6a65e7a4bde92c0a012de2bcf4007034504a765377cdf08a3ee01d1eaa6901': {
tokenTicker: 'π',
tokenName: 'Burger',
tokenDocumentUrl:
'https://c4.wallpaperflare.com/wallpaper/58/564/863/giant-hamburger-wallpaper-preview.jpg',
tokenDocumentHash: '',
decimals: 0,
tokenId:
'1f6a65e7a4bde92c0a012de2bcf4007034504a765377cdf08a3ee01d1eaa6901',
},
'dd84ca78db4d617221b58eabc6667af8fe2f7eadbfcc213d35be9f1b419beb8d': {
tokenTicker: 'TAP',
tokenName: 'Thoughts and Prayers',
tokenDocumentUrl: '',
tokenDocumentHash: '',
decimals: 0,
tokenId:
'dd84ca78db4d617221b58eabc6667af8fe2f7eadbfcc213d35be9f1b419beb8d',
},
'50d8292c6255cda7afc6c8566fed3cf42a2794e9619740fe8f4c95431271410e': {
tokenTicker: 'TBC',
tokenName: 'tabcash',
tokenDocumentUrl: 'https://cashtabapp.com/',
tokenDocumentHash: '',
decimals: 0,
tokenId:
'50d8292c6255cda7afc6c8566fed3cf42a2794e9619740fe8f4c95431271410e',
},
'df808a41672a0a0ae6475b44f272a107bc9961b90f29dc918d71301f24fe92fb': {
tokenTicker: 'NAKAMOTO',
tokenName: 'NAKAMOTO',
tokenDocumentUrl: '',
tokenDocumentHash: '',
decimals: 8,
tokenId:
'df808a41672a0a0ae6475b44f272a107bc9961b90f29dc918d71301f24fe92fb',
},
'22f4ba40312ea3e90e1bfa88d2aa694c271d2e07361907b6eb5568873ffa62bf': {
tokenTicker: 'CLA',
tokenName: 'Cashtab Local Alpha',
tokenDocumentUrl: 'boomertakes.com',
tokenDocumentHash: '',
decimals: 5,
tokenId:
'22f4ba40312ea3e90e1bfa88d2aa694c271d2e07361907b6eb5568873ffa62bf',
},
'da9460ce4b1c92b4f6ef4e4a6bc2d05539f49d02b17681389d9ce22b8dca50f0': {
tokenTicker: 'SA',
tokenName: 'Spinner Alpha',
tokenDocumentUrl: 'https://cashtabapp.com/',
tokenDocumentHash: '',
decimals: 0,
tokenId:
'da9460ce4b1c92b4f6ef4e4a6bc2d05539f49d02b17681389d9ce22b8dca50f0',
},
'4db25a4b2f0b57415ce25fab6d9cb3ac2bbb444ff493dc16d0615a11ad06c875': {
tokenTicker: 'LVV',
tokenName: 'Lambda Variant Variants',
tokenDocumentUrl: 'https://cashtabapp.com/',
tokenDocumentHash: '',
decimals: 0,
tokenId:
'4db25a4b2f0b57415ce25fab6d9cb3ac2bbb444ff493dc16d0615a11ad06c875',
},
'16b12bbacdbb8c8a799adbfd782bfff9843c1f9b0be148eaae02a1a7f74f95c4': {
tokenTicker: 'CGEN',
tokenName: 'Cashtab Genesis',
tokenDocumentUrl: 'https://boomertakes.com/',
tokenDocumentHash: '',
decimals: 9,
tokenId:
'16b12bbacdbb8c8a799adbfd782bfff9843c1f9b0be148eaae02a1a7f74f95c4',
},
'bd1acc4c986de57af8d6d2a64aecad8c30ee80f37ae9d066d758923732ddc9ba': {
tokenTicker: 'TBS',
tokenName: 'TestBits',
tokenDocumentUrl: 'https://thecryptoguy.com/',
tokenDocumentHash: '',
decimals: 9,
tokenId:
'bd1acc4c986de57af8d6d2a64aecad8c30ee80f37ae9d066d758923732ddc9ba',
},
'aa7202397a06097e8ff36855aa72c0ee032659747e5bd7cbcd3099fc3a62b6b6': {
tokenTicker: 'CTL',
tokenName: 'Cashtab Token Launch Launch Token',
tokenDocumentUrl: 'https://cashtabapp.com/',
tokenDocumentHash: '',
decimals: 0,
tokenId:
'aa7202397a06097e8ff36855aa72c0ee032659747e5bd7cbcd3099fc3a62b6b6',
},
'9e9738e9ac3ff202736bf7775f875ebae6f812650df577a947c20c52475e43da': {
tokenTicker: 'CUTT',
tokenName: 'Cashtab Unit Test Token',
tokenDocumentUrl: 'https://cashtabapp.com/',
tokenDocumentHash: '',
decimals: 2,
tokenId:
'9e9738e9ac3ff202736bf7775f875ebae6f812650df577a947c20c52475e43da',
},
'f36e1b3d9a2aaf74f132fef3834e9743b945a667a4204e761b85f2e7b65fd41a': {
tokenTicker: 'POW',
tokenName: 'ProofofWriting.com Token',
tokenDocumentUrl: 'https://www.proofofwriting.com/26',
tokenDocumentHash: '',
decimals: 0,
tokenId:
'f36e1b3d9a2aaf74f132fef3834e9743b945a667a4204e761b85f2e7b65fd41a',
},
'7f8889682d57369ed0e32336f8b7e0ffec625a35cca183f4e81fde4e71a538a1': {
tokenTicker: 'HONK',
tokenName: 'HONK HONK',
tokenDocumentUrl: 'THE REAL HONK SLP TOKEN',
tokenDocumentHash: '',
decimals: 0,
tokenId:
'7f8889682d57369ed0e32336f8b7e0ffec625a35cca183f4e81fde4e71a538a1',
},
'3515f4a9851ad44124e0ddf6149344deb27a97720fc7e5254a9d2c86da7415a9': {
tokenTicker: '001',
tokenName: '01',
tokenDocumentUrl: 'https://cashtab.com/',
tokenDocumentHash: '',
decimals: 0,
tokenId:
'3515f4a9851ad44124e0ddf6149344deb27a97720fc7e5254a9d2c86da7415a9',
},
'6fb6122742cac8fd1df2d68997fdfa4c077bc22d9ef4a336bfb63d24225f9060': {
tokenTicker: '002',
tokenName: '2',
tokenDocumentUrl: 'https://cashtab.com/',
tokenDocumentHash: '',
decimals: 0,
tokenId:
'6fb6122742cac8fd1df2d68997fdfa4c077bc22d9ef4a336bfb63d24225f9060',
},
'2936188a41f22a3e0a47d13296147fb3f9ddd2f939fe6382904d21a610e8e49c': {
tokenTicker: '002',
tokenName: '2',
tokenDocumentUrl: 'https://cashtab.com/',
tokenDocumentHash: '',
decimals: 0,
tokenId:
'2936188a41f22a3e0a47d13296147fb3f9ddd2f939fe6382904d21a610e8e49c',
},
'e859eeb52e7afca6217fb36784b3b6d3c7386a52f391dd0d00f2ec03a5e8e77b': {
tokenTicker: 'test',
tokenName: 'test',
tokenDocumentUrl: 'https://cashtab.com/',
tokenDocumentHash: '',
decimals: 1,
tokenId:
'e859eeb52e7afca6217fb36784b3b6d3c7386a52f391dd0d00f2ec03a5e8e77b',
},
'bdb3b4215ca0622e0c4c07655522c376eaa891838a82f0217fa453bb0595a37c': {
tokenTicker: 'Service',
tokenName: 'Evc token',
tokenDocumentUrl: 'https://cashtab.com',
tokenDocumentHash: '',
decimals: 0,
tokenId:
'bdb3b4215ca0622e0c4c07655522c376eaa891838a82f0217fa453bb0595a37c',
},
'7443f7c831cdf2b2b04d5f0465ed0bcf348582675b0e4f17906438c232c22f3d': {
tokenTicker: 'WDT',
tokenName:
'Test Token With Exceptionally Long Name For CSS And Style Revisions',
tokenDocumentUrl:
'https://www.ImpossiblyLongWebsiteDidYouThinkWebDevWouldBeFun.org',
tokenDocumentHash:
'85b591c15c9f49531e39fcfeb2a5a26b2bd0f7c018fb9cd71b5d92dfb732d5cc',
decimals: 7,
tokenId:
'7443f7c831cdf2b2b04d5f0465ed0bcf348582675b0e4f17906438c232c22f3d',
},
'7bbf452698a24b138b0357f689587fc6ea58410c34503b1179b91e40e10bba8b': {
tokenTicker: 'COVID',
tokenName: 'COVID-19',
tokenDocumentUrl: 'https://en.wikipedia.org/wiki/COVID-19',
tokenDocumentHash: '',
decimals: 0,
tokenId:
'7bbf452698a24b138b0357f689587fc6ea58410c34503b1179b91e40e10bba8b',
},
'6376cae692cf0302ecdd63234c14cbb2b21cec75ab538335f90254cfb3ed44cc': {
tokenTicker: 'CLT',
tokenName: 'Cashtab Local Tests',
tokenDocumentUrl: 'https://cashtab.com/',
tokenDocumentHash: '',
decimals: 0,
tokenId:
'6376cae692cf0302ecdd63234c14cbb2b21cec75ab538335f90254cfb3ed44cc',
},
'666c4318d1f7fef5f2c698262492c519018d4e9130f95d05f6be9f0fb7149e96': {
tokenTicker: 'CPG',
tokenName: 'Cashtab Prod Gamma',
tokenDocumentUrl: 'thecryptoguy.com',
tokenDocumentHash: '',
decimals: 0,
tokenId:
'666c4318d1f7fef5f2c698262492c519018d4e9130f95d05f6be9f0fb7149e96',
},
'157e0cdef5d5c51bdea00eac9ab821d809bb9d03cf98da85833614bedb129be6': {
tokenTicker: 'CLNSP',
tokenName: 'ComponentLongNameSpeedLoad',
tokenDocumentUrl: 'https://cashtabapp.com/',
tokenDocumentHash: '',
decimals: 0,
tokenId:
'157e0cdef5d5c51bdea00eac9ab821d809bb9d03cf98da85833614bedb129be6',
},
'acba1d7f354c6d4d001eb99d31de174e5cea8a31d692afd6e7eb8474ad541f55': {
tokenTicker: 'CTB',
tokenName: 'CashTabBits',
tokenDocumentUrl: 'https://cashtabapp.com/',
tokenDocumentHash: '',
decimals: 9,
tokenId:
'acba1d7f354c6d4d001eb99d31de174e5cea8a31d692afd6e7eb8474ad541f55',
},
'ccf5fe5a387559c8ab9efdeb0c0ef1b444e677298cfddf07671245ce3cb3c79f': {
tokenTicker: 'XGB',
tokenName: 'Garmonbozia',
tokenDocumentUrl: 'https://twinpeaks.fandom.com/wiki/Garmonbozia',
tokenDocumentHash: '',
decimals: 8,
tokenId:
'ccf5fe5a387559c8ab9efdeb0c0ef1b444e677298cfddf07671245ce3cb3c79f',
},
'4bd147fc5d5ff26249a9299c46b80920c0b81f59a60e05428262160ebee0b0c3': {
tokenTicker: 'NOCOVID',
tokenName: 'Covid19 Lifetime Immunity',
tokenDocumentUrl:
'https://www.who.int/emergencies/diseases/novel-coronavirus-2019/covid-19-vaccines',
tokenDocumentHash: '',
decimals: 0,
tokenId:
'4bd147fc5d5ff26249a9299c46b80920c0b81f59a60e05428262160ebee0b0c3',
},
'b8f2a9e767a0be7b80c7e414ef2534586d4da72efddb39a4e70e501ab73375cc': {
tokenTicker: 'CTD',
tokenName: 'Cashtab Dark',
tokenDocumentUrl: 'https://cashtab.com/',
tokenDocumentHash: '',
decimals: 0,
tokenId:
'b8f2a9e767a0be7b80c7e414ef2534586d4da72efddb39a4e70e501ab73375cc',
},
'1101bd5d7b6bbc3176fb2b93d08e76ab532b04ff731d71502249e3cb9b6fcb1a': {
tokenTicker: 'XBIT',
tokenName: 'eBits',
tokenDocumentUrl: 'https://boomertakes.com/',
tokenDocumentHash: '',
decimals: 9,
tokenId:
'1101bd5d7b6bbc3176fb2b93d08e76ab532b04ff731d71502249e3cb9b6fcb1a',
},
'3de671a7107d3803d78f7f4a4e5c794d0903a8d28d16076445c084943c1e2db8': {
tokenTicker: 'CLB',
tokenName: 'Cashtab Local Beta',
tokenDocumentUrl: 'boomertakes.com',
tokenDocumentHash: '',
decimals: 2,
tokenId:
'3de671a7107d3803d78f7f4a4e5c794d0903a8d28d16076445c084943c1e2db8',
},
'44929ff3b1fc634f982fede112cf12b21199a2ebbcf718412a38de9177d77168': {
tokenTicker: 'coin',
tokenName: 'johncoin',
tokenDocumentUrl: 'https://cashtab.com/',
tokenDocumentHash: '',
decimals: 0,
tokenId:
'44929ff3b1fc634f982fede112cf12b21199a2ebbcf718412a38de9177d77168',
},
'639a8dba34788ff3ebd3977d4ac045825394285ee648bb1d159e1c12b787ff25': {
tokenTicker: 'CFL',
tokenName: 'Cashtab Facelift',
tokenDocumentUrl: 'https://cashtab.com/',
tokenDocumentHash: '',
decimals: 9,
tokenId:
'639a8dba34788ff3ebd3977d4ac045825394285ee648bb1d159e1c12b787ff25',
},
'd376ebcd518067c8e10c0505865cf7336160b47807e6f1a95739ba90ae838840': {
tokenTicker: 'CFL',
tokenName: 'Cashtab Facelift',
tokenDocumentUrl: 'https://cashtab.com/',
tokenDocumentHash: '',
decimals: 0,
tokenId:
'd376ebcd518067c8e10c0505865cf7336160b47807e6f1a95739ba90ae838840',
},
'b40d1f6acdb6ee68d7eca0167fe2753c076bc309b2e3b1af8bff70ca34b945b0': {
tokenTicker: 'KAT',
tokenName: 'KA_Test',
tokenDocumentUrl: 'https://cashtab.com/',
tokenDocumentHash: '',
decimals: 0,
tokenId:
'b40d1f6acdb6ee68d7eca0167fe2753c076bc309b2e3b1af8bff70ca34b945b0',
},
'b39fdb53e21d67fa5fd3a11122f1452f15884047f2b80e8efe633c3b520b7a39': {
tokenTicker: 'SCΩΩG',
tokenName: 'Scoogi Omega',
tokenDocumentUrl: 'https://cashtab.com/',
tokenDocumentHash: '',
decimals: 0,
tokenId:
'b39fdb53e21d67fa5fd3a11122f1452f15884047f2b80e8efe633c3b520b7a39',
},
'3adbf501e21c711d20118e003711168eb39f560c01f4c6d6736fa3f3fceaa577': {
tokenTicker: 'OMI',
tokenName: 'Omicron',
tokenDocumentUrl: 'cdc.gov',
tokenDocumentHash: '',
decimals: 0,
tokenId:
'3adbf501e21c711d20118e003711168eb39f560c01f4c6d6736fa3f3fceaa577',
},
'0916e71779c9de7ee125741d3f5ab01f556356dbc86fd327a24f1e9e22ebc917': {
tokenTicker: 'CTL2',
tokenName: 'Cashtab Token Launch Launch Token v2',
tokenDocumentUrl: 'thecryptoguy.com',
tokenDocumentHash: '',
decimals: 0,
tokenId:
'0916e71779c9de7ee125741d3f5ab01f556356dbc86fd327a24f1e9e22ebc917',
},
'6e24e89b6d5284138c69777527760500b99614631bca7f2a5c38f4648dae9524': {
tokenTicker: 'CBB',
tokenName: 'Cashtab Beta Bits',
tokenDocumentUrl: 'https://cashtabapp.com/',
tokenDocumentHash: '',
decimals: 0,
tokenId:
'6e24e89b6d5284138c69777527760500b99614631bca7f2a5c38f4648dae9524',
},
'8ead21ce4b3b9e7b57607b97b65b5013496dc6e3dfdea162c08ce7265a66ebc8': {
tokenTicker: 'IFP',
tokenName: 'Infrastructure Funding Proposal Token',
tokenDocumentUrl: 'ifp.cash',
tokenDocumentHash:
'b1674191a88ec5cdd733e4240a81803105dc412d6c6708d53ab94fc248f4f553',
decimals: 8,
tokenId:
'8ead21ce4b3b9e7b57607b97b65b5013496dc6e3dfdea162c08ce7265a66ebc8',
},
'e4e1a2fb071fa71ca727e08ed1d8ea52a9531c79d1e5f1ebf483c66b71a8621c': {
tokenTicker: 'CPA',
tokenName: 'Cashtab Prod Alpha',
tokenDocumentUrl: 'thecryptoguy.com',
tokenDocumentHash: '',
decimals: 8,
tokenId:
'e4e1a2fb071fa71ca727e08ed1d8ea52a9531c79d1e5f1ebf483c66b71a8621c',
},
'45f0ff5cae7e89da6b96c26c8c48a959214c5f0e983e78d0925f8956ca8848c6': {
tokenTicker: 'CMA',
tokenName: 'CashtabMintAlpha',
tokenDocumentUrl: 'https://cashtabapp.com/',
tokenDocumentHash: '',
decimals: 5,
tokenId:
'45f0ff5cae7e89da6b96c26c8c48a959214c5f0e983e78d0925f8956ca8848c6',
},
'56e9b1d16c9989186c846187db57d9a9389c3ecc74e7237c1d1d0327cf904a55': {
tokenTicker: 'CKA',
tokenName: 'Chronik Alpha',
tokenDocumentUrl: 'https://cashtab.com/',
tokenDocumentHash: '',
decimals: 8,
tokenId:
'56e9b1d16c9989186c846187db57d9a9389c3ecc74e7237c1d1d0327cf904a55',
},
'77ec4036ef8546ac46df6d3a5374e961216f92624627eaeef5d2e1a253df9fc6': {
tokenTicker: 'CTLv3',
tokenName: 'Cashtab Token Launch Launch Token v3',
tokenDocumentUrl: 'coinex.com',
tokenDocumentHash: '',
decimals: 0,
tokenId:
'77ec4036ef8546ac46df6d3a5374e961216f92624627eaeef5d2e1a253df9fc6',
},
'98183238638ecb4ddc365056e22de0e8a05448c1e6084bae247fae5a74ad4f48': {
tokenTicker: 'DVV',
tokenName: 'Delta Variant Variants',
tokenDocumentUrl: 'https://cashtabapp.com/',
tokenDocumentHash: '',
decimals: 0,
tokenId:
'98183238638ecb4ddc365056e22de0e8a05448c1e6084bae247fae5a74ad4f48',
},
'bfddfcfc9fb9a8d61ed74fa94b5e32ccc03305797eea461658303df5805578ef': {
tokenTicker: 'Sending Token',
tokenName: 'Sending Token',
tokenDocumentUrl: 'developer.bitcoin.com',
tokenDocumentHash: '',
decimals: 9,
tokenId:
'bfddfcfc9fb9a8d61ed74fa94b5e32ccc03305797eea461658303df5805578ef',
},
'55180a2527901ed4d7ef8f4d61d38d3543b0e7ac3aba04e7f4d3165c3320a6da': {
tokenTicker: 'cARRRl',
tokenName: 'Dachshund Pirate Token',
tokenDocumentUrl: 'https://cashtab.com/',
tokenDocumentHash: '',
decimals: 0,
tokenId:
'55180a2527901ed4d7ef8f4d61d38d3543b0e7ac3aba04e7f4d3165c3320a6da',
},
'6a9305a13135625f4b533256e8d2e21a7343005331e1839348a39040f61e09d3': {
tokenTicker: 'SCOOG',
tokenName: 'Scoogi Alpha',
tokenDocumentUrl: 'cashtab.com',
tokenDocumentHash: '',
decimals: 0,
tokenId:
'6a9305a13135625f4b533256e8d2e21a7343005331e1839348a39040f61e09d3',
},
'48090bcd94cf53289ce84e1d4aeb8035f6ea7d80d37baa6343d0f71e7d67a3ef': {
tokenTicker: 'WP5',
tokenName: 'Webpack 5',
tokenDocumentUrl: 'boomertakes.com',
tokenDocumentHash: '',
decimals: 0,
tokenId:
'48090bcd94cf53289ce84e1d4aeb8035f6ea7d80d37baa6343d0f71e7d67a3ef',
},
'27277911435164c511c7dbc3ef00ba5ce9edf8c1ccab93681cb0ad984b801ef1': {
tokenTicker: 'SCOOG',
tokenName: 'Scoogi Alpha',
tokenDocumentUrl: 'cashtab.com',
tokenDocumentHash: '',
decimals: 0,
tokenId:
'27277911435164c511c7dbc3ef00ba5ce9edf8c1ccab93681cb0ad984b801ef1',
},
'a3add503bba986398b39fa2200ce658423a597b4f7fe9de04a2da4501f8b05a3': {
tokenTicker: 'SCOOG',
tokenName: 'Scoogi Gamma',
tokenDocumentUrl: 'cashtab.com',
tokenDocumentHash: '',
decimals: 0,
tokenId:
'a3add503bba986398b39fa2200ce658423a597b4f7fe9de04a2da4501f8b05a3',
},
'8b402aab7682e1cef3da83bf754ae722cc95c3118dfe6e2149267f9a9e2ecc63': {
tokenTicker: 'AUG5',
tokenName: 'August 5',
tokenDocumentUrl: 'https://cashtab.com/',
tokenDocumentHash: '',
decimals: 0,
tokenId:
'8b402aab7682e1cef3da83bf754ae722cc95c3118dfe6e2149267f9a9e2ecc63',
},
'2502bdc75d3afdce0742505d53e6d50cefb1268d7c2a835c06b701702b79e1b8': {
tokenTicker: 'SCOOG',
tokenName: 'Scoogi Epsilon',
tokenDocumentUrl: 'cashtab.com',
tokenDocumentHash: '',
decimals: 0,
tokenId:
'2502bdc75d3afdce0742505d53e6d50cefb1268d7c2a835c06b701702b79e1b8',
},
'f29939b961d8f3b27d7826e3f22451fcf9273ac84421312a20148b1e083a5bb0': {
tokenTicker: 'SCOOG',
tokenName: 'Scoogi Beta',
tokenDocumentUrl: 'cashtab.com',
tokenDocumentHash: '',
decimals: 0,
tokenId:
'f29939b961d8f3b27d7826e3f22451fcf9273ac84421312a20148b1e083a5bb0',
},
'edb693529851379bcbd75008f78940df8232510e6a1c64d8dc81693ae2a53f66': {
tokenTicker: 'SCOOG',
tokenName: 'Scoogi Eta',
tokenDocumentUrl: 'cashtab.com',
tokenDocumentHash: '',
decimals: 0,
tokenId:
'edb693529851379bcbd75008f78940df8232510e6a1c64d8dc81693ae2a53f66',
},
'c70d5f036368e184d2a52389b2f4c2471855aebaccbd418db24d4515ce062dbe': {
tokenTicker: 'SCOOG',
tokenName: 'Scoogi Zeta',
tokenDocumentUrl: 'cashtab.com',
tokenDocumentHash: '',
decimals: 0,
tokenId:
'c70d5f036368e184d2a52389b2f4c2471855aebaccbd418db24d4515ce062dbe',
},
'b9877d8f8d2364b983707df905d592f534a3ada18e52aa529a0f72fcc535abf7': {
tokenTicker: 'SRM',
tokenName: 'Server Redundancy Mint',
tokenDocumentUrl: 'https://cashtab.com/',
tokenDocumentHash: '',
decimals: 0,
tokenId:
'b9877d8f8d2364b983707df905d592f534a3ada18e52aa529a0f72fcc535abf7',
},
'54dc2ecd5251f8dfda4c4f15ce05272116b01326076240e2b9cc0104d33b1484': {
tokenTicker: 'Alita',
tokenName: 'Alita',
tokenDocumentUrl: 'alita.cash',
tokenDocumentHash: '',
decimals: 4,
tokenId:
'54dc2ecd5251f8dfda4c4f15ce05272116b01326076240e2b9cc0104d33b1484',
},
'cf601c56b58bc05a39a95374a4a865f0a8b56544ea937b30fb46315441717c50': {
tokenTicker: 'UDT',
tokenName: 'UpdateTest',
tokenDocumentUrl: 'https://cashtab.com/',
tokenDocumentHash: '',
decimals: 7,
tokenId:
'cf601c56b58bc05a39a95374a4a865f0a8b56544ea937b30fb46315441717c50',
},
};
export const mockAirdropTx = {
txid: '6e3baf279770c3ed84981c414f433e654cdc1b12df3024051f0f7c215a13dca9',
version: 2,
inputs: [
{
prevOut: {
txid: '806abb677534eaa3b61ca050b65d4159d64e442699dd5460be87786f973bc079',
outIdx: 0,
},
inputScript:
'47304402207acf2b13eb099b42edf2d985afc4da3123a76e3120a66cd2e915fdd93b9ce243022055529f4f4db28c2d3b3ce98fd55dd539c92f0790d36cf8a63a4fbb89eb602b2a412102f2d4a75908a466eec993f27fb985836490d9af52f110b15b60fe6cb17dbedf6d',
outputScript: '76a91463a17ac732fd6afe8699b240a29b483246308de788ac',
value: '1595',
sequenceNo: 4294967295,
},
{
prevOut: {
txid: 'c257bdccd3804de5ce1359d986488902d73e11156e544ca9eaf15d9d3878a83c',
outIdx: 111,
},
inputScript:
'47304402205f670a5afb2b6cb10ae86818f50c0dd9a9bc639e979a3325ab8834c5631ac81b022078ce9092a5ded4afe261f1b311e5619f1f8673ace9de5dae3441f33834ecb33a412102f2d4a75908a466eec993f27fb985836490d9af52f110b15b60fe6cb17dbedf6d',
outputScript: '76a91463a17ac732fd6afe8699b240a29b483246308de788ac',
value: '22600',
sequenceNo: 4294967295,
},
{
prevOut: {
txid: '8db1137ec2cdaa0c5a93c575352eaf024ce304f189c91094cc6b711be876dff4',
outIdx: 3,
},
inputScript:
'483045022100cca98ffbd5034f1f07c459a2f7b694d0bfc8cd9c0f33fe0b45d5914a10b034610220592d50dd5f1fea5c1d689909e61d1d1bfad21ea6a42a01ba7d4e9428baedca06412102f2d4a75908a466eec993f27fb985836490d9af52f110b15b60fe6cb17dbedf6d',
outputScript: '76a91463a17ac732fd6afe8699b240a29b483246308de788ac',
value: '170214',
sequenceNo: 4294967295,
slpBurn: {
token: {
amount: '0',
isMintBaton: false,
},
tokenId:
'bdb3b4215ca0622e0c4c07655522c376eaa891838a82f0217fa453bb0595a37c',
},
},
{
prevOut: {
txid: '5c7e9879f94258e7128f684c0be7786d9d2355c1f3b3ded5382e3a2745d9ec53',
outIdx: 111,
},
inputScript:
'483045022100fefd74866d212ff97b54fb4d6e588754b13d073b06200f255d891195fc57cb0502201948da90078778ab195c8adec213cc09972a1c89f8a35d10294894bcbf313941412102f2d4a75908a466eec993f27fb985836490d9af52f110b15b60fe6cb17dbedf6d',
outputScript: '76a91463a17ac732fd6afe8699b240a29b483246308de788ac',
value: '22583',
sequenceNo: 4294967295,
},
{
prevOut: {
txid: '6b86db3a0adb9963c3fbf911ad3935b611ea6224834f1664e0bdfc026fd57fc9',
outIdx: 3,
},
inputScript:
'483045022100e4dde7a7d227f0631d042a1953e55400b00386050eff672832e557a4438f0f0b022060fd64cb142723578a4fd25c703d7afa0db045d981c75f770cb66b3b87ccc72a412102f2d4a75908a466eec993f27fb985836490d9af52f110b15b60fe6cb17dbedf6d',
outputScript: '76a91463a17ac732fd6afe8699b240a29b483246308de788ac',
value: '16250',
sequenceNo: 4294967295,
slpBurn: {
token: {
amount: '0',
isMintBaton: false,
},
tokenId:
'fb4233e8a568993976ed38a81c2671587c5ad09552dedefa78760deed6ff87aa',
},
},
{
prevOut: {
txid: '81f52f89efc61072dcab4735f1a99b6648c8cc10314452185e728b383b170e30',
outIdx: 23,
},
inputScript:
'483045022100f057b22cbc643d6aa839d64c96eede889782e4738104dde84c5980089c75c9e702200449b7ad1e88141def532e3cd2943dfa29a9ede8a6d0b3283531dee085b867b1412102f2d4a75908a466eec993f27fb985836490d9af52f110b15b60fe6cb17dbedf6d',
outputScript: '76a91463a17ac732fd6afe8699b240a29b483246308de788ac',
value: '23567578',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '0',
outputScript:
'6a0464726f7020bdb3b4215ca0622e0c4c07655522c376eaa891838a82f0217fa453bb0595a37c04007461624565766320746f6b656e207365727669636520686f6c64657273206169722064726f70f09fa587f09f8c90f09fa587e29da4f09f918cf09f9bacf09f9bacf09f8d97f09fa4b4',
},
{
value: '550',
outputScript: '76a9140352e2c246fa38fe57f6504dcff628a2ab85c9a888ac',
},
{
value: '550',
outputScript: '76a9147d2acc561f417bf3265d465fbd76b7976cd35add88ac',
},
{
value: '550',
outputScript: '76a91478a291a19347161a532f31cae95d492cc57965e888ac',
},
{
value: '584',
outputScript: '76a91478cc64d09c2c558e2c7f1baf463f4e2a6246559888ac',
},
{
value: '10027',
outputScript: '76a91471536340a5ad319f24ae433d7caa4475dd69faec88ac',
},
{
value: '10427',
outputScript: '76a914649be1781f962c54f47273d58e31439fb452b92988ac',
},
{
value: '560',
outputScript: '76a914be3ce499e31ebe80c7aabf673acd854c8969ddc488ac',
},
{
value: '551',
outputScript: '76a914e88f39383c4d264410f30d2b28cdae775c67ea8e88ac',
},
{
value: '557',
outputScript: '76a9145fbce9959ce7b712393138aef20b013d5a2802e688ac',
},
{
value: '550',
outputScript: '76a91450f35e3861d60945efcd2b05f562eff14d28db1088ac',
},
{
value: '10027',
outputScript: '76a914866ed8973e444d1f6533eb1858ca284ad589bc1988ac',
},
{
value: '555',
outputScript: '76a9140848ee10a336bba27c7ee90dc4a1c2407178a5b788ac',
},
{
value: '550',
outputScript: '76a9149750cdddb976b8466668a73b58c0a1afbd6f4db888ac',
},
{
value: '560',
outputScript: '76a9148ee151bf0f1637cdd2e1b41ed2cd32b0df0a932588ac',
},
{
value: '590',
outputScript: '76a914be792ef52fb6bc5adcabeb8eb604fbbb3dc4693488ac',
},
{
value: '551',
outputScript: '76a9142ad96e467f9354f86e0c11acfde351194a183dc888ac',
},
{
value: '550',
outputScript: '76a914afd2470f264252f1359d7b8093fff4fdd120c5f988ac',
},
{
value: '584',
outputScript: '76a9148a8e920239fb5cc647855c1d634b0bbe4c4b670188ac',
},
{
value: '569',
outputScript: '76a91412f84f54fad4695321f61c313d2e32a0a8f8086488ac',
},
{
value: '584',
outputScript: '76a914842b152a0bbd4647afaeceec8a6afaa90668e7c788ac',
},
{
value: '584',
outputScript: '76a914fe971eb2960defce93503c5641d54eaad2ab6a0588ac',
},
{
value: '584',
outputScript: '76a914685e825961b67456f440caaaaab0f94cb3354b7288ac',
},
{
value: '584',
outputScript: '76a91476b4447a3617e918d03261353e179a583f85d2c688ac',
},
{
value: '584',
outputScript: 'a91418bb4f7d8881c1d1457c33a6af8e5937f7f776a887',
},
{
value: '584',
outputScript: '76a914b366ef7c1ffd4ef452d72556634720cc8741e1dc88ac',
},
{
value: '553',
outputScript: '76a914f5e82dc01170d99a16bf9610da873df47f82aa7a88ac',
},
{
value: '569',
outputScript: '76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
},
{
value: '553',
outputScript: '76a9142ed681dc5421dd4a052f49bda55a9c345fb025e088ac',
},
{
value: '584',
outputScript: '76a914b87d445b2dbba65c5a5bb79959b44c24593518f888ac',
},
{
value: '553',
outputScript: 'a9147d91dc783fb1c5b7f24befd92eedc8dabfa8ab7e87',
},
{
value: '584',
outputScript: 'a914f722fc8e23c5c23663aa3273f445b784b223aab587',
},
{
value: '584',
outputScript: '76a914940840311cbe6013e59aff729ffc1d902fd74d1988ac',
},
{
value: '584',
outputScript: '76a914d394d084607bce97fa4e661b6f2c7d2f237c89ee88ac',
},
{
value: '558',
outputScript: '76a91470e1b34c51cd5319c5ca54da978a6422605e6b3e88ac',
},
{
value: '556',
outputScript: '76a91440eeb036d9d6bc71cd65b91eb5bbfa5d808805ca88ac',
},
{
value: '584',
outputScript: '76a9144d55f769ce14fd44e2b63500d95016838a5d130d88ac',
},
{
value: '584',
outputScript: '76a914a17ee8562ede98dfe9cd00f7f84d74c4c9c58ee788ac',
},
{
value: '584',
outputScript: '76a914a13fc3642d1e7293eb4b9f17ec1b6f6d7ea4aaeb88ac',
},
{
value: '576',
outputScript: '76a91462e907b15cbf27d5425399ebf6f0fb50ebb88f1888ac',
},
{
value: '10427',
outputScript: '76a91486a911e65753b379774448230e7e8f7aeab8fa5e88ac',
},
{
value: '552',
outputScript: '76a914e9364c577078f16ee2b27f2c570a4e450dd52e7a88ac',
},
{
value: '1428',
outputScript: '76a914ed917afa96833c1fea678e23374c557ed83ff6ff88ac',
},
{
value: '1427',
outputScript: '76a91482cf48aefcd80072ef21e4a61dee8c2d70d0bcb388ac',
},
{
value: '9135',
outputScript: '76a91444e8388bdd64c1f67905279066f044638d0e166988ac',
},
{
value: '1427',
outputScript: '76a914d62e68453b75938616b75309c3381d14d61cb9a488ac',
},
{
value: '1427',
outputScript: '76a91425b1d2b4610b6deed8e3d2ac76f4f112883126e488ac',
},
{
value: '921',
outputScript: '76a91456423795dc2fa85fa3931cdf9e58f4f8661c2b2488ac',
},
{
value: '1843',
outputScript: '76a914e03d94e59bb300b965ac234a274b1cf41c3cadd788ac',
},
{
value: '1584',
outputScript: '76a9141e0d6a8ef2c8a0f6ceace8656059ea9dbeb11bda88ac',
},
{
value: '1843',
outputScript: '76a914f6cd6ef1bd7add314fd9b115c3ad0dce7844930c88ac',
},
{
value: '560',
outputScript: '76a91488fb294f87b0f05bf6eddc1d6bfde2ba3a87bcdd88ac',
},
{
value: '560',
outputScript: '76a914a154f00227476ec9741a416e96b69677fddf4b1d88ac',
},
{
value: '1427',
outputScript: '76a914362a3773f5685c89e4b800e4c4f9925db2ec1b5c88ac',
},
{
value: '584',
outputScript: '76a9146770958588049a3f39828e1ddc57f3dd77227a1188ac',
},
{
value: '1708',
outputScript: '76a914b0313745d5f7c850c9682c2711b6a14f2db9276b88ac',
},
{
value: '679',
outputScript: '76a914fe729aa40779f822a8c4988f49a115c8aabc0cc788ac',
},
{
value: '1511',
outputScript: '76a914ecef001f3c137c880f828d843f754a082eb5396b88ac',
},
{
value: '560',
outputScript: '76a91463e79addfc3ad33d04ce064ade02d3c8caca8afd88ac',
},
{
value: '552',
outputScript: '76a91489a6da1ed86c8967f03691ad9af8d93c6259137388ac',
},
{
value: '919',
outputScript: '76a9149fa178360cab170f9423223a5b166171f54d5bc188ac',
},
{
value: '15000',
outputScript: '76a914bc37eb24817a8442b23ae9a06cc405c8fdf1e7c488ac',
},
{
value: '560',
outputScript: '76a914e78d304632489ba240b29986fe6afd32c77aa16388ac',
},
{
value: '570',
outputScript: '76a914993e6beef74f4ed0c3fe51af895e476ce37c362b88ac',
},
{
value: '921329',
outputScript: '76a914b8820ca6b9ceb0f546e142ddd857a4974483719a88ac',
},
{
value: '5100',
outputScript: '76a914ca989ff4d3df17fe4dc6eb330b469bd6d5d4814e88ac',
},
{
value: '5200',
outputScript: '76a914ad29cdce2237f71e95fee551f04425f70b7e4c9d88ac',
},
{
value: '584',
outputScript: '76a9140f57872e06e15593c8a288fcb761b13ca571d78888ac',
},
{
value: '10266',
outputScript: '76a9142a96944d06700882bbd984761d9c9e4215f2d78e88ac',
},
{
value: '580',
outputScript: '76a9141e37634e6693e228801c194c45701d49a1d12e2c88ac',
},
{
value: '22743016',
outputScript: '76a91463a17ac732fd6afe8699b240a29b483246308de788ac',
spentBy: {
txid: '7242d84b3db853262c53f4b068c57e5a52b67a8b6fea313e0a6f7f58df16e413',
outIdx: 0,
},
},
],
lockTime: 0,
block: {
height: 759800,
hash: '00000000000000000f1afd00cb83bd94abb0bec8712e9ed90a2cac1e7a27e84a',
timestamp: '1664667368',
},
timeFirstSeen: '1664667131',
size: 3393,
isCoinbase: false,
network: 'XEC',
};
export const mockWalletWithPrivateKeys = {
mnemonic:
'because achieve voyage useful ticket stem armed air pretty stand leaf bicycle',
name: 'Test Encrypt Burnt Wif',
Path245: {
publicKey:
'0375182c1737822265efaed62e91f84d34739cdc783ff8072165242fac4c8e32ab',
hash160: '278ac23f8ef6c40b98c23972cc60effdfe477326',
cashAddress: 'bitcoincash:qqnc4s3l3mmvgzuccguh9nrqal7lu3mnycmmlefsfr',
slpAddress: 'simpleledger:qqnc4s3l3mmvgzuccguh9nrqal7lu3mnychq5zusha',
fundingWif: 'L3HmNCzg2fVd8q8JP8fU4mkKhFXo74Gskfp9UatMh7WJ9FTwQQix',
fundingAddress:
'simpleledger:qqnc4s3l3mmvgzuccguh9nrqal7lu3mnychq5zusha',
legacyAddress: '14c5acR4uXmwH1dvWWmqnabD4H2mWhAuYW',
},
Path145: {
publicKey:
'03cfb60b9f457ce676ec01b4e92f05a08214989116650830e45b60e2c8cc144a77',
hash160: 'dbff532189502b22ecf88e10bc78d42c3785240b',
cashAddress: 'bitcoincash:qrdl75ep39gzkghvlz8pp0rc6skr0pfypv7htttdhx',
slpAddress: 'simpleledger:qrdl75ep39gzkghvlz8pp0rc6skr0pfypvjvqs7dfc',
fundingWif: 'L4TaWveyX8xEY7jLnS86JotV3tQkb1GqCaGxymES1i6Mkj5M77Cm',
fundingAddress:
'simpleledger:qrdl75ep39gzkghvlz8pp0rc6skr0pfypvjvqs7dfc',
legacyAddress: '1M4ErHUrjrv5zBv3YfGSkAkHdKYUnx4V2D',
},
Path1899: {
publicKey:
'038c4c26730d97cdeb18e69dff6c47cebb23e6f305c950923cd6110f35ab9006d0',
hash160: 'ee6dc9d40f95d8e106a63385c6fa882991b9e84e',
cashAddress: 'bitcoincash:qrhxmjw5p72a3cgx5cect3h63q5erw0gfc4l80hyqu',
slpAddress: 'simpleledger:qrhxmjw5p72a3cgx5cect3h63q5erw0gfceyv5zy7z',
fundingWif: 'Kwt39o7LZJ54nKyYU2Sz6dAZToXtFvYHtn6xKf2Nbi5E9kZfpHSH',
fundingAddress:
'simpleledger:qrhxmjw5p72a3cgx5cect3h63q5erw0gfceyv5zy7z',
legacyAddress: '1NjhLtSNF32Nay82jV1b7yv6s7mxaeFeYP',
},
state: {
balances: {
totalBalanceInSatoshis: '49545',
totalBalance: '495.45',
},
tokens: [],
slpBalancesAndUtxos: {
slpUtxos: [],
nonSlpUtxos: [
{
outpoint: {
txid: '45411aa786288b679d1c1874f7b126d5ea0c83380304950d364b5b8279a460de',
outIdx: 1,
},
blockHeight: -1,
isCoinbase: false,
value: '48445',
network: 'XEC',
address:
'bitcoincash:qrhxmjw5p72a3cgx5cect3h63q5erw0gfc4l80hyqu',
},
{
outpoint: {
txid: '66974f4a22ca1a4aa36c932b4effafcb9dd8a32b8766dfc7644ba5922252c4c6',
outIdx: 1,
},
blockHeight: -1,
isCoinbase: false,
value: '1100',
network: 'XEC',
address:
'bitcoincash:qrhxmjw5p72a3cgx5cect3h63q5erw0gfc4l80hyqu',
},
],
tokens: [],
},
parsedTxHistory: [
{
txid: '66974f4a22ca1a4aa36c932b4effafcb9dd8a32b8766dfc7644ba5922252c4c6',
version: 2,
inputs: [
{
prevOut: {
txid: 'fec829a1ff34a9f84058cdd8bf795c114a8fcb3bcc6c3ca9ea8b9ae68420dd9a',
outIdx: 1,
},
inputScript:
'483045022100e9fce8984a9f0cb76642c6df63a83150aa31d1071b62debe89ecadd4d45e727e02205a87fcaad0dd188860db8053caf7d6a21ed7807dbcd1560c251f9a91a4f36815412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '36207',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '0',
outputScript:
'6a04657461624c9104eaa5cbe6e13db7d91f35dca5d270c944a9a3e8c7738c56d12069312f589c7f193e67ea3d2f6d1f300f404c33c19e48dc3ac35145c8152624b7a8e22278e9133862425da2cc44f7297c8618ffa78dd09054a4a5490afd2b62139f19fa7b8516cbae692488fa50e79101d55e7582b3a662c3a5cc737044ef392f8c1fde63b8385886aed37d1b68e887284262f298fe74c0',
},
{
value: '1100',
outputScript:
'76a914ee6dc9d40f95d8e106a63385c6fa882991b9e84e88ac',
},
{
value: '34652',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
},
],
lockTime: 0,
timeFirstSeen: '1664909877',
size: 388,
isCoinbase: false,
network: 'XEC',
parsed: {
incoming: true,
xecAmount: '11',
originatingHash160:
'4e532257c01b310b3b5c1fd947c79a72addf8523',
isEtokenTx: false,
legacy: {
amountSent: 0,
amountReceived: '11',
outgoingTx: false,
tokenTx: false,
airdropFlag: false,
airdropTokenId: '',
opReturnMessage: 'Test encrypted message',
isCashtabMessage: true,
isEncryptedMessage: true,
decryptionSuccess: true,
replyAddress:
'ecash:qp89xgjhcqdnzzemts0aj378nfe2mhu9yvxj9nhgg6',
},
},
},
{
txid: '45411aa786288b679d1c1874f7b126d5ea0c83380304950d364b5b8279a460de',
version: 2,
inputs: [
{
prevOut: {
txid: '60c6ad832e8f44ea59bb15166959b45828d8aec5554a2f70491dddf82dcda837',
outIdx: 0,
},
inputScript:
'47304402200a850b9bf5648bcca5811739fd22586b96460c1939d271b85d2906e31dff30ca0220536d5ab96f0fb4f488d9a4613849d2b212dcb7b755c296e92d11729ee2f939994121038c4c26730d97cdeb18e69dff6c47cebb23e6f305c950923cd6110f35ab9006d0',
outputScript:
'76a914ee6dc9d40f95d8e106a63385c6fa882991b9e84e88ac',
value: '50000',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '1100',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
},
{
value: '48445',
outputScript:
'76a914ee6dc9d40f95d8e106a63385c6fa882991b9e84e88ac',
},
],
lockTime: 0,
timeFirstSeen: '1664909836',
size: 225,
isCoinbase: false,
network: 'XEC',
parsed: {
incoming: false,
xecAmount: '11',
originatingHash160:
'ee6dc9d40f95d8e106a63385c6fa882991b9e84e',
isEtokenTx: false,
legacy: {
amountSent: '11',
amountReceived: 0,
outgoingTx: true,
tokenTx: false,
airdropFlag: false,
airdropTokenId: '',
opReturnMessage: '',
isCashtabMessage: false,
isEncryptedMessage: false,
decryptionSuccess: false,
replyAddress:
'ecash:qrhxmjw5p72a3cgx5cect3h63q5erw0gfcvjnyv7xt',
},
},
},
{
txid: '60c6ad832e8f44ea59bb15166959b45828d8aec5554a2f70491dddf82dcda837',
version: 2,
inputs: [
{
prevOut: {
txid: 'eb79e90e3b5a0b6766cbfab3efd9c52f831bef62f9f27c2aa925ee81e43b843f',
outIdx: 1,
},
inputScript:
'483045022100bc373f3fb8dc16b58c9138e8c884ace57e380d7787cf566f5889456a3fd1fd4202200346e070bfbf1d58aeb117890b3d9d5ff4927ee001b98f80f3b35babb486790d412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '1822907',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '50000',
outputScript:
'76a914ee6dc9d40f95d8e106a63385c6fa882991b9e84e88ac',
spentBy: {
txid: '45411aa786288b679d1c1874f7b126d5ea0c83380304950d364b5b8279a460de',
outIdx: 0,
},
},
{
value: '1772452',
outputScript:
'76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
},
],
lockTime: 0,
timeFirstSeen: '1664909791',
size: 226,
isCoinbase: false,
network: 'XEC',
parsed: {
incoming: true,
xecAmount: '500',
originatingHash160:
'4e532257c01b310b3b5c1fd947c79a72addf8523',
isEtokenTx: false,
legacy: {
amountSent: 0,
amountReceived: '500',
outgoingTx: false,
tokenTx: false,
airdropFlag: false,
airdropTokenId: '',
opReturnMessage: '',
isCashtabMessage: false,
isEncryptedMessage: false,
decryptionSuccess: false,
replyAddress:
'ecash:qp89xgjhcqdnzzemts0aj378nfe2mhu9yvxj9nhgg6',
},
},
},
],
utxos: [
{
outpoint: {
txid: '45411aa786288b679d1c1874f7b126d5ea0c83380304950d364b5b8279a460de',
outIdx: 1,
},
blockHeight: -1,
isCoinbase: false,
value: '48445',
network: 'XEC',
address:
'bitcoincash:qrhxmjw5p72a3cgx5cect3h63q5erw0gfc4l80hyqu',
},
{
outpoint: {
txid: '66974f4a22ca1a4aa36c932b4effafcb9dd8a32b8766dfc7644ba5922252c4c6',
outIdx: 1,
},
blockHeight: -1,
isCoinbase: false,
value: '1100',
network: 'XEC',
address:
'bitcoincash:qrhxmjw5p72a3cgx5cect3h63q5erw0gfc4l80hyqu',
},
],
},
};
export const mockSentEncryptedTx = {
txid: '7ac10096c8a7b32fe338dc938bcf2e1341b99f841687e690d88241107ce4b84b',
version: 2,
inputs: [
{
prevOut: {
txid: '45411aa786288b679d1c1874f7b126d5ea0c83380304950d364b5b8279a460de',
outIdx: 1,
},
inputScript:
'483045022100d4a93c615a7af48f422c273a530ac7f2b78d31a2d4515f11b2f416fce4f4f380022075c22c73190a7de805f219ca8d294777440b558551fea6b59c6c84ec529b16f94121038c4c26730d97cdeb18e69dff6c47cebb23e6f305c950923cd6110f35ab9006d0',
outputScript: '76a914ee6dc9d40f95d8e106a63385c6fa882991b9e84e88ac',
value: '48445',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '0',
outputScript:
'6a04657461624ca1040f3cc3bc507126c239cde840befd974bdac054f9b9f2bfd4ff32b5f59ca554c4f3fb2d11d30eae3e5d3f61625ff7812ba14f8c901c30ee7e03dea57681a8f7ab8c64d42ce505921b4d67507452537cbe7525281714857c75d7a441b65030b7ea646b59ed0c34adc9f739661620cf7678963db3cac78afd7f49ad0d63aad404b07730255ded82ea3a939c63ee040ae9fac9336bb8d84d7b3380665ffa514a45f4',
},
{
value: '1200',
outputScript: '76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
},
{
value: '46790',
outputScript: '76a914ee6dc9d40f95d8e106a63385c6fa882991b9e84e88ac',
},
],
lockTime: 0,
timeFirstSeen: '1664910083',
size: 404,
isCoinbase: false,
network: 'XEC',
};
export const mockReceivedEncryptedTx = {
txid: '66974f4a22ca1a4aa36c932b4effafcb9dd8a32b8766dfc7644ba5922252c4c6',
version: 2,
inputs: [
{
prevOut: {
txid: 'fec829a1ff34a9f84058cdd8bf795c114a8fcb3bcc6c3ca9ea8b9ae68420dd9a',
outIdx: 1,
},
inputScript:
'483045022100e9fce8984a9f0cb76642c6df63a83150aa31d1071b62debe89ecadd4d45e727e02205a87fcaad0dd188860db8053caf7d6a21ed7807dbcd1560c251f9a91a4f36815412103318d0e1109f32debc66952d0e3ec21b1cf96575ea4c2a97a6535628f7f8b10e6',
outputScript: '76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
value: '36207',
sequenceNo: 4294967295,
},
],
outputs: [
{
value: '0',
outputScript:
'6a04657461624c9104eaa5cbe6e13db7d91f35dca5d270c944a9a3e8c7738c56d12069312f589c7f193e67ea3d2f6d1f300f404c33c19e48dc3ac35145c8152624b7a8e22278e9133862425da2cc44f7297c8618ffa78dd09054a4a5490afd2b62139f19fa7b8516cbae692488fa50e79101d55e7582b3a662c3a5cc737044ef392f8c1fde63b8385886aed37d1b68e887284262f298fe74c0',
},
{
value: '1100',
outputScript: '76a914ee6dc9d40f95d8e106a63385c6fa882991b9e84e88ac',
},
{
value: '34652',
outputScript: '76a9144e532257c01b310b3b5c1fd947c79a72addf852388ac',
},
],
lockTime: 0,
timeFirstSeen: '1664909877',
size: 388,
isCoinbase: false,
network: 'XEC',
};
+export const mockTokenBurnTx = {
+ txid: '312553668f596bfd61287aec1b7f0f035afb5ddadf40b6f9d1ffcec5b7d4b684',
+ version: 2,
+ inputs: [
+ {
+ prevOut: {
+ txid: '842dd09e723d664d7647bc49f911c88b60f0450e646fedb461f319dadb867934',
+ outIdx: 0,
+ },
+ inputScript:
+ '473044022025c68cf0ab9c1a4d6b35b2b58f7e397722f469412841eb09d38d1973dc5ef7120220712e1f3c8740fff2af75c1062a773eef167550ee008deaef9089537cd17c35f0412103771805b54969a9bea4e3eb14a82851c67592156ddb5e52d3d53677d14a40fba6',
+ outputScript: '76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
+ value: '2300',
+ sequenceNo: 4294967295,
+ },
+ {
+ prevOut: {
+ txid: '1efe359a0bfa83c409433c487b025fb446a3a9bfa51a718c8dd9a56401656e33',
+ outIdx: 2,
+ },
+ inputScript:
+ '47304402206a2f53497eb734ea94ca158951aa005f6569c184675a497d33d061b78c66c25b02201f826fa71be5943ce63740d92a278123974e44846c3766c5cb58ef5ad307ba36412103771805b54969a9bea4e3eb14a82851c67592156ddb5e52d3d53677d14a40fba6',
+ outputScript: '76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
+ value: '546',
+ sequenceNo: 4294967295,
+ slpToken: {
+ amount: '2',
+ isMintBaton: false,
+ },
+ },
+ {
+ prevOut: {
+ txid: '49f825370128056333af945eb4f4d9712171c9e88954deb189ca6f479564f2ee',
+ outIdx: 2,
+ },
+ inputScript:
+ '483045022100efa3c767b749abb2dc958932348e2b19b845964e581c9f6de706cd43dac3f087022059afad6ff3c1e49cc0320499381e78eab922f18b00e0409228ad417e0220bf5d412103771805b54969a9bea4e3eb14a82851c67592156ddb5e52d3d53677d14a40fba6',
+ outputScript: '76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
+ value: '546',
+ sequenceNo: 4294967295,
+ slpBurn: {
+ token: {
+ amount: '12',
+ isMintBaton: false,
+ },
+ tokenId:
+ '4db25a4b2f0b57415ce25fab6d9cb3ac2bbb444ff493dc16d0615a11ad06c875',
+ },
+ slpToken: {
+ amount: '999875',
+ isMintBaton: false,
+ },
+ },
+ ],
+ outputs: [
+ {
+ value: '0',
+ outputScript:
+ '6a04534c500001010453454e44204db25a4b2f0b57415ce25fab6d9cb3ac2bbb444ff493dc16d0615a11ad06c8750800000000000f41b9',
+ },
+ {
+ value: '546',
+ outputScript: '76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
+ slpToken: {
+ amount: '999865',
+ isMintBaton: false,
+ },
+ },
+ ],
+ lockTime: 0,
+ slpTxData: {
+ slpMeta: {
+ tokenType: 'FUNGIBLE',
+ txType: 'SEND',
+ tokenId:
+ '4db25a4b2f0b57415ce25fab6d9cb3ac2bbb444ff493dc16d0615a11ad06c875',
+ },
+ },
+ timeFirstSeen: '1664919857',
+ size: 550,
+ isCoinbase: false,
+ network: 'XEC',
+};
+
+export const mockTokenBurnWithDecimalsTx = {
+ txid: 'dacd4bacb46caa3af4a57ac0449b2cb82c8a32c64645cd6a64041287d1ced556',
+ version: 2,
+ inputs: [
+ {
+ prevOut: {
+ txid: 'eb79e90e3b5a0b6766cbfab3efd9c52f831bef62f9f27c2aa925ee81e43b843f',
+ outIdx: 0,
+ },
+ inputScript:
+ '47304402207122751937862fad68c3e293982cf7afb91967d20da63a0c23bf0565b625b775022054f39f41a43438a0df7fbe6a78521f572613bc08d6a43b6d248bcb6a434e2b52412103771805b54969a9bea4e3eb14a82851c67592156ddb5e52d3d53677d14a40fba6',
+ outputScript: '76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
+ value: '2200',
+ sequenceNo: 4294967295,
+ },
+ {
+ prevOut: {
+ txid: '905cc5662cad77df56c3770863634ce498dde9d4772dc494d33b7ce3f36fa66c',
+ outIdx: 2,
+ },
+ inputScript:
+ '483045022100dce5b3b516bfebd40bd8d4b4ff9c43c685d3c9dde1def0cc0667389ac522cf2502202651f95638e48c210a04082e6053457a539aef0f65a2e9c2f61e3faf96c1dfd8412103771805b54969a9bea4e3eb14a82851c67592156ddb5e52d3d53677d14a40fba6',
+ outputScript: '76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
+ value: '546',
+ sequenceNo: 4294967295,
+ slpBurn: {
+ token: {
+ amount: '1234567',
+ isMintBaton: false,
+ },
+ tokenId:
+ '7443f7c831cdf2b2b04d5f0465ed0bcf348582675b0e4f17906438c232c22f3d',
+ },
+ slpToken: {
+ amount: '5235120760000000',
+ isMintBaton: false,
+ },
+ },
+ ],
+ outputs: [
+ {
+ value: '0',
+ outputScript:
+ '6a04534c500001010453454e44207443f7c831cdf2b2b04d5f0465ed0bcf348582675b0e4f17906438c232c22f3d0800129950892eb779',
+ },
+ {
+ value: '546',
+ outputScript: '76a91495e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d88ac',
+ slpToken: {
+ amount: '5235120758765433',
+ isMintBaton: false,
+ },
+ },
+ ],
+ lockTime: 0,
+ slpTxData: {
+ slpMeta: {
+ tokenType: 'FUNGIBLE',
+ txType: 'SEND',
+ tokenId:
+ '7443f7c831cdf2b2b04d5f0465ed0bcf348582675b0e4f17906438c232c22f3d',
+ },
+ },
+ timeFirstSeen: '1664923127',
+ size: 403,
+ isCoinbase: false,
+ network: 'XEC',
+};
diff --git a/web/cashtab/src/utils/__tests__/chronik.test.js b/web/cashtab/src/utils/__tests__/chronik.test.js
index 67cd61561..359d94812 100644
--- a/web/cashtab/src/utils/__tests__/chronik.test.js
+++ b/web/cashtab/src/utils/__tests__/chronik.test.js
@@ -1,625 +1,745 @@
import BigNumber from 'bignumber.js';
import { currency } from '../../components/Common/Ticker';
import {
organizeUtxosByType,
getPreliminaryTokensArray,
finalizeTokensArray,
finalizeSlpUtxos,
getTokenStats,
flattenChronikTxHistory,
sortAndTrimChronikTxHistory,
parseChronikTx,
} from 'utils/chronik';
import {
mockChronikUtxos,
mockOrganizedUtxosByType,
mockPreliminaryTokensArray,
mockPreliminaryTokensArrayClone,
mockPreliminaryTokensArrayCloneClone,
mockChronikTxDetailsResponses,
mockFinalTokenArray,
mockFinalCachedTokenInfo,
mockPartialCachedTokenInfo,
mockPartialChronikTxDetailsResponses,
mockPreliminarySlpUtxos,
mockFinalizedSlpUtxos,
mockTokenInfoById,
} from '../__mocks__/chronikUtxos';
import {
mockChronikTokenResponse,
mockGetTokenStatsReturn,
} from '../__mocks__/mockChronikTokenStats';
import {
mockTxHistoryOfAllAddresses,
mockFlatTxHistoryNoUnconfirmed,
mockSortedTxHistoryNoUnconfirmed,
mockFlatTxHistoryWithUnconfirmed,
mockSortedFlatTxHistoryWithUnconfirmed,
mockFlatTxHistoryWithAllUnconfirmed,
mockSortedFlatTxHistoryWithAllUnconfirmed,
mockParseTxWallet,
lambdaIncomingXecTx,
lambdaOutgoingXecTx,
lambdaIncomingEtokenTx,
lambdaOutgoingEtokenTx,
eTokenGenesisTx,
receivedEtokenTxNineDecimals,
anotherMockParseTxWallet,
txHistoryTokenInfoById,
mockAirdropTx,
mockWalletWithPrivateKeys,
mockSentEncryptedTx,
mockReceivedEncryptedTx,
+ mockTokenBurnTx,
+ mockTokenBurnWithDecimalsTx,
} from '../__mocks__/chronikTxHistory';
import { ChronikClient } from 'chronik-client';
import { when } from 'jest-when';
import BCHJS from '@psf/bch-js';
it(`getTokenStats successfully returns a token stats object`, async () => {
// Initialize chronik
const chronik = new ChronikClient(
'https://FakeChronikUrlToEnsureMocksOnly.com',
);
const tokenId =
'bb8e9f685a06a2071d82f757ce19201b4c8e5e96fbe186960a3d65aec83eab20';
/*
Mock the API response from chronik.token('tokenId') called
in getTokenStats()
*/
chronik.token = jest.fn();
when(chronik.token)
.calledWith(tokenId)
.mockResolvedValue(mockChronikTokenResponse);
expect(await getTokenStats(chronik, tokenId)).toStrictEqual(
mockGetTokenStatsReturn,
);
});
it(`organizeUtxosByType successfully splits a chronikUtxos array into slpUtxos and nonSlpUtxos`, () => {
expect(organizeUtxosByType(mockChronikUtxos)).toStrictEqual(
mockOrganizedUtxosByType,
);
const resultingOrganizedUtxosObject = organizeUtxosByType(mockChronikUtxos);
const { nonSlpUtxos, preliminarySlpUtxos } = resultingOrganizedUtxosObject;
const utxosWithUnexpectedKeys = [];
for (let i = 0; i < nonSlpUtxos.length; i += 1) {
// None of the objects in mockOrganizedUtxosByType.nonSlpUtxos should have the `slpToken` key
// Note: Some may have an `slpMeta` key, if the utxo is from a token burn
const nonSlpUtxo = nonSlpUtxos[i];
if ('slpToken' in nonSlpUtxo) {
console.log(`unexpected nonSlpUtxo!`, nonSlpUtxo);
utxosWithUnexpectedKeys.push(nonSlpUtxo);
}
}
for (let i = 0; i < preliminarySlpUtxos.length; i += 1) {
// All of the objects in mockOrganizedUtxosByType.slpUtxos should have the `slpMeta` and `slpToken` keys
const slpUtxo = preliminarySlpUtxos[i];
if (!('slpMeta' in slpUtxo) || !('slpToken' in slpUtxo)) {
console.log(`unexpected slpUtxo!`, slpUtxo);
utxosWithUnexpectedKeys.push(slpUtxo);
}
}
expect(utxosWithUnexpectedKeys.length).toBe(0);
// Length of organized utxos should match original
expect(preliminarySlpUtxos.length + nonSlpUtxos.length).toBe(
mockChronikUtxos.length,
);
});
it(`getPreliminaryTokensArray successfully returns an array of all tokenIds and token balances (not yet adjusted for token decimals)`, () => {
expect(
getPreliminaryTokensArray(mockOrganizedUtxosByType.preliminarySlpUtxos),
).toStrictEqual(mockPreliminaryTokensArray);
});
it(`finalizeTokensArray successfully returns finalTokenArray and cachedTokenInfoById even if no cachedTokenInfoById is provided`, async () => {
// Initialize chronik
const chronik = new ChronikClient(
'https://FakeChronikUrlToEnsureMocksOnly.com',
);
/*
Mock the API response from chronik.tx('tokenId') called
in returnGetTokenInfoChronikPromise -- for each tokenId used
*/
chronik.tx = jest.fn();
for (let i = 0; i < mockChronikTxDetailsResponses.length; i += 1) {
when(chronik.tx)
.calledWith(mockChronikTxDetailsResponses[i].txid)
.mockResolvedValue(mockChronikTxDetailsResponses[i]);
}
expect(
await finalizeTokensArray(chronik, mockPreliminaryTokensArray),
).toStrictEqual({
finalTokenArray: mockFinalTokenArray,
updatedTokenInfoById: mockFinalCachedTokenInfo,
newTokensToCache: true,
});
});
it(`finalizeTokensArray successfully returns finalTokenArray and cachedTokenInfoById when called with all token info in cache`, async () => {
// Initialize chronik
const chronik = new ChronikClient(
'https://FakeChronikUrlToEnsureMocksOnly.com',
);
expect(
await finalizeTokensArray(
chronik,
mockPreliminaryTokensArrayClone,
mockFinalCachedTokenInfo,
),
).toStrictEqual({
finalTokenArray: mockFinalTokenArray,
updatedTokenInfoById: mockFinalCachedTokenInfo,
newTokensToCache: false,
});
});
it(`updateCachedTokenInfoAndFinalizeTokensArray successfully returns finalTokenArray and cachedTokenInfoById when called with some token info in cache`, async () => {
// Initialize chronik
const chronik = new ChronikClient(
'https://FakeChronikUrlToEnsureMocksOnly.com',
);
/*
Mock the API response from chronik.tx('tokenId') called
in returnGetTokenInfoChronikPromise -- for each tokenId used
*/
chronik.tx = jest.fn();
for (let i = 0; i < mockPartialChronikTxDetailsResponses.length; i += 1) {
when(chronik.tx)
.calledWith(mockPartialChronikTxDetailsResponses[i].txid)
.mockResolvedValue(mockPartialChronikTxDetailsResponses[i]);
}
expect(
await finalizeTokensArray(
chronik,
mockPreliminaryTokensArrayCloneClone,
mockPartialCachedTokenInfo,
),
).toStrictEqual({
finalTokenArray: mockFinalTokenArray,
updatedTokenInfoById: mockFinalCachedTokenInfo,
newTokensToCache: true,
});
});
it(`finalizeSlpUtxos successfully adds token quantity adjusted for token decimals to preliminarySlpUtxos`, async () => {
expect(
await finalizeSlpUtxos(mockPreliminarySlpUtxos, mockTokenInfoById),
).toStrictEqual(mockFinalizedSlpUtxos);
});
it(`flattenChronikTxHistory successfully combines the result of getTxHistoryChronik into a single array`, async () => {
expect(
await flattenChronikTxHistory(mockTxHistoryOfAllAddresses),
).toStrictEqual(mockFlatTxHistoryNoUnconfirmed);
});
it(`sortAndTrimChronikTxHistory successfully orders the result of flattenChronikTxHistory by blockheight and firstSeenTime if all txs are confirmed, and returns a result of expected length`, async () => {
expect(
await sortAndTrimChronikTxHistory(mockFlatTxHistoryNoUnconfirmed, 10),
).toStrictEqual(mockSortedTxHistoryNoUnconfirmed);
});
it(`sortAndTrimChronikTxHistory successfully orders the result of flattenChronikTxHistory by blockheight and firstSeenTime if some txs are confirmed and others unconfirmed, and returns a result of expected length`, async () => {
expect(
await sortAndTrimChronikTxHistory(mockFlatTxHistoryWithUnconfirmed, 10),
).toStrictEqual(mockSortedFlatTxHistoryWithUnconfirmed);
});
it(`sortAndTrimChronikTxHistory successfully orders the result of flattenChronikTxHistory by blockheight and firstSeenTime if all txs are unconfirmed, and returns a result of expected length`, async () => {
expect(
await sortAndTrimChronikTxHistory(
mockFlatTxHistoryWithAllUnconfirmed,
10,
),
).toStrictEqual(mockSortedFlatTxHistoryWithAllUnconfirmed);
});
it(`Successfully parses an incoming XEC tx`, () => {
const BCH = new BCHJS({
restURL: 'https://FakeBchApiUrlToEnsureMocksOnly.com',
});
// This function needs to be mocked as bch-js functions that require Buffer types do not work in jest environment
BCH.Address.hash160ToCash = jest
.fn()
.mockReturnValue(
'bitcoincash:qp89xgjhcqdnzzemts0aj378nfe2mhu9yvll3cvjwd',
);
expect(
parseChronikTx(
BCH,
lambdaIncomingXecTx,
mockParseTxWallet,
txHistoryTokenInfoById,
),
).toStrictEqual({
incoming: true,
xecAmount: '42',
originatingHash160: '4e532257c01b310b3b5c1fd947c79a72addf8523',
isEtokenTx: false,
legacy: {
airdropFlag: false,
airdropTokenId: '',
amountReceived: '42',
amountSent: 0,
decryptionSuccess: false,
isCashtabMessage: false,
isEncryptedMessage: false,
opReturnMessage: '',
outgoingTx: false,
replyAddress: 'ecash:qp89xgjhcqdnzzemts0aj378nfe2mhu9yvxj9nhgg6',
tokenTx: false,
},
});
});
it(`Successfully parses an outgoing XEC tx`, () => {
const BCH = new BCHJS({
restURL: 'https://FakeBchApiUrlToEnsureMocksOnly.com',
});
// This function needs to be mocked as bch-js functions that require Buffer types do not work in jest environment
BCH.Address.hash160ToCash = jest
.fn()
.mockReturnValue(
'bitcoincash:qpmytrdsakt0axrrlswvaj069nat3p9s7ct4lsf8k9',
);
expect(
parseChronikTx(
BCH,
lambdaOutgoingXecTx,
mockParseTxWallet,
txHistoryTokenInfoById,
),
).toStrictEqual({
incoming: false,
xecAmount: '222',
originatingHash160: '76458db0ed96fe9863fc1ccec9fa2cfab884b0f6',
isEtokenTx: false,
legacy: {
airdropFlag: false,
airdropTokenId: '',
amountReceived: 0,
amountSent: '222',
decryptionSuccess: false,
isCashtabMessage: false,
isEncryptedMessage: false,
opReturnMessage: '',
outgoingTx: true,
replyAddress: 'ecash:qpmytrdsakt0axrrlswvaj069nat3p9s7cjctmjasj',
tokenTx: false,
},
});
});
it(`Successfully parses an incoming eToken tx`, () => {
const BCH = new BCHJS();
// This function needs to be mocked as bch-js functions that require Buffer types do not work in jest environment
BCH.Address.hash160ToCash = jest
.fn()
.mockReturnValue(
'bitcoincash:qp89xgjhcqdnzzemts0aj378nfe2mhu9yvll3cvjwd',
);
expect(
parseChronikTx(
BCH,
lambdaIncomingEtokenTx,
mockParseTxWallet,
txHistoryTokenInfoById,
),
).toStrictEqual({
incoming: true,
xecAmount: '5.46',
isEtokenTx: true,
+ isTokenBurn: false,
originatingHash160: '4e532257c01b310b3b5c1fd947c79a72addf8523',
slpMeta: {
tokenId:
'4bd147fc5d5ff26249a9299c46b80920c0b81f59a60e05428262160ebee0b0c3',
tokenType: 'FUNGIBLE',
txType: 'SEND',
},
genesisInfo: {
decimals: 0,
success: true,
tokenDocumentHash: '',
tokenDocumentUrl:
'https://www.who.int/emergencies/diseases/novel-coronavirus-2019/covid-19-vaccines',
tokenId:
'4bd147fc5d5ff26249a9299c46b80920c0b81f59a60e05428262160ebee0b0c3',
tokenName: 'Covid19 Lifetime Immunity',
tokenTicker: 'NOCOVID',
},
etokenAmount: '12',
legacy: {
airdropFlag: false,
airdropTokenId: '',
amountReceived: '5.46',
amountSent: 0,
decryptionSuccess: false,
isCashtabMessage: false,
isEncryptedMessage: false,
opReturnMessage: '',
outgoingTx: false,
replyAddress: 'ecash:qp89xgjhcqdnzzemts0aj378nfe2mhu9yvxj9nhgg6',
tokenTx: true,
},
});
});
it(`Successfully parses an outgoing eToken tx`, () => {
const BCH = new BCHJS({
restURL: 'https://FakeBchApiUrlToEnsureMocksOnly.com',
});
// This function needs to be mocked as bch-js functions that require Buffer types do not work in jest environment
BCH.Address.hash160ToCash = jest
.fn()
.mockReturnValue(
'bitcoincash:qpmytrdsakt0axrrlswvaj069nat3p9s7ct4lsf8k9',
);
expect(
parseChronikTx(
BCH,
lambdaOutgoingEtokenTx,
mockParseTxWallet,
txHistoryTokenInfoById,
),
).toStrictEqual({
incoming: false,
xecAmount: '5.46',
isEtokenTx: true,
+ isTokenBurn: false,
originatingHash160: '76458db0ed96fe9863fc1ccec9fa2cfab884b0f6',
slpMeta: {
tokenId:
'4bd147fc5d5ff26249a9299c46b80920c0b81f59a60e05428262160ebee0b0c3',
tokenType: 'FUNGIBLE',
txType: 'SEND',
},
genesisInfo: {
decimals: 0,
success: true,
tokenDocumentHash: '',
tokenDocumentUrl:
'https://www.who.int/emergencies/diseases/novel-coronavirus-2019/covid-19-vaccines',
tokenId:
'4bd147fc5d5ff26249a9299c46b80920c0b81f59a60e05428262160ebee0b0c3',
tokenName: 'Covid19 Lifetime Immunity',
tokenTicker: 'NOCOVID',
},
etokenAmount: '17',
legacy: {
airdropFlag: false,
airdropTokenId: '',
amountReceived: 0,
amountSent: '5.46',
decryptionSuccess: false,
isCashtabMessage: false,
isEncryptedMessage: false,
opReturnMessage: '',
outgoingTx: true,
replyAddress: 'ecash:qpmytrdsakt0axrrlswvaj069nat3p9s7cjctmjasj',
tokenTx: true,
},
});
});
it(`Successfully parses a genesis eToken tx`, () => {
const BCH = new BCHJS({
restURL: 'https://FakeBchApiUrlToEnsureMocksOnly.com',
});
// This function needs to be mocked as bch-js functions that require Buffer types do not work in jest environment
BCH.Address.hash160ToCash = jest
.fn()
.mockReturnValue(
'bitcoincash:qz2708636snqhsxu8wnlka78h6fdp77ar5ulhz04hr',
);
expect(
parseChronikTx(
BCH,
eTokenGenesisTx,
anotherMockParseTxWallet,
txHistoryTokenInfoById,
),
).toStrictEqual({
incoming: false,
xecAmount: '0',
originatingHash160: '95e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d',
isEtokenTx: true,
+ isTokenBurn: false,
etokenAmount: '777.7777777',
slpMeta: {
tokenType: 'FUNGIBLE',
txType: 'GENESIS',
tokenId:
'cf601c56b58bc05a39a95374a4a865f0a8b56544ea937b30fb46315441717c50',
},
genesisInfo: {
decimals: 7,
success: true,
tokenDocumentHash: '',
tokenDocumentUrl: 'https://cashtab.com/',
tokenId:
'cf601c56b58bc05a39a95374a4a865f0a8b56544ea937b30fb46315441717c50',
tokenName: 'UpdateTest',
tokenTicker: 'UDT',
},
legacy: {
amountSent: '0',
amountReceived: 0,
outgoingTx: true,
tokenTx: true,
airdropFlag: false,
airdropTokenId: '',
opReturnMessage: '',
isCashtabMessage: false,
isEncryptedMessage: false,
decryptionSuccess: false,
replyAddress: 'ecash:qz2708636snqhsxu8wnlka78h6fdp77ar59jrf5035',
},
});
});
it(`Successfully parses a received eToken tx with 9 decimal places`, () => {
const BCH = new BCHJS({
restURL: 'https://FakeBchApiUrlToEnsureMocksOnly.com',
});
// This function needs to be mocked as bch-js functions that require Buffer types do not work in jest environment
BCH.Address.hash160ToCash = jest
.fn()
.mockReturnValue(
'bitcoincash:qp89xgjhcqdnzzemts0aj378nfe2mhu9yvll3cvjwd',
);
expect(
parseChronikTx(
BCH,
receivedEtokenTxNineDecimals,
anotherMockParseTxWallet,
txHistoryTokenInfoById,
),
).toStrictEqual({
incoming: true,
xecAmount: '5.46',
originatingHash160: '4e532257c01b310b3b5c1fd947c79a72addf8523',
isEtokenTx: true,
+ isTokenBurn: false,
etokenAmount: '0.123456789',
slpMeta: {
tokenType: 'FUNGIBLE',
txType: 'SEND',
tokenId:
'acba1d7f354c6d4d001eb99d31de174e5cea8a31d692afd6e7eb8474ad541f55',
},
genesisInfo: {
decimals: 9,
success: true,
tokenDocumentHash: '',
tokenDocumentUrl: 'https://cashtabapp.com/',
tokenId:
'acba1d7f354c6d4d001eb99d31de174e5cea8a31d692afd6e7eb8474ad541f55',
tokenName: 'CashTabBits',
tokenTicker: 'CTB',
},
legacy: {
amountSent: 0,
amountReceived: '5.46',
outgoingTx: false,
tokenTx: true,
airdropFlag: false,
airdropTokenId: '',
opReturnMessage: '',
isCashtabMessage: false,
isEncryptedMessage: false,
decryptionSuccess: false,
replyAddress: 'ecash:qp89xgjhcqdnzzemts0aj378nfe2mhu9yvxj9nhgg6',
},
});
});
it(`Correctly parses a received airdrop transaction`, () => {
const BCH = new BCHJS({
restURL: 'https://FakeBchApiUrlToEnsureMocksOnly.com',
});
// This function needs to be mocked as bch-js functions that require Buffer types do not work in jest environment
BCH.Address.hash160ToCash = jest
.fn()
.mockReturnValue(
'bitcoincash:qp36z7k8xt7k4l5xnxeypg5mfqeyvvyduukc069ng6',
);
expect(
parseChronikTx(
BCH,
mockAirdropTx,
anotherMockParseTxWallet,
txHistoryTokenInfoById,
),
).toStrictEqual({
incoming: true,
xecAmount: '5.69',
originatingHash160: '63a17ac732fd6afe8699b240a29b483246308de7',
isEtokenTx: false,
legacy: {
amountSent: 0,
amountReceived: '5.69',
outgoingTx: false,
tokenTx: false,
airdropFlag: true,
airdropTokenId:
'bdb3b4215ca0622e0c4c07655522c376eaa891838a82f0217fa453bb0595a37c',
opReturnMessage:
'evc token service holders air dropπ₯ππ₯β€ππ¬π¬ππ€΄',
isCashtabMessage: true,
isEncryptedMessage: false,
decryptionSuccess: false,
replyAddress: 'ecash:qp36z7k8xt7k4l5xnxeypg5mfqeyvvyduu04m37fwd',
},
});
});
it(`Correctly parses a sent encyrpted message transaction`, () => {
const BCH = new BCHJS({
restURL: 'https://FakeBchApiUrlToEnsureMocksOnly.com',
});
// This function needs to be mocked as bch-js functions that require Buffer types do not work in jest environment
BCH.Address.hash160ToCash = jest
.fn()
.mockReturnValue(
'bitcoincash:qrhxmjw5p72a3cgx5cect3h63q5erw0gfc4l80hyqu',
);
expect(
parseChronikTx(
BCH,
mockSentEncryptedTx,
mockWalletWithPrivateKeys,
txHistoryTokenInfoById,
),
).toStrictEqual({
incoming: false,
xecAmount: '12',
originatingHash160: 'ee6dc9d40f95d8e106a63385c6fa882991b9e84e',
isEtokenTx: false,
legacy: {
amountSent: '12',
amountReceived: 0,
outgoingTx: true,
tokenTx: false,
airdropFlag: false,
airdropTokenId: '',
opReturnMessage: 'Only the message recipient can view this',
isCashtabMessage: true,
isEncryptedMessage: true,
decryptionSuccess: false,
replyAddress: 'ecash:qrhxmjw5p72a3cgx5cect3h63q5erw0gfcvjnyv7xt',
},
});
});
it(`Correctly parses a received encyrpted message transaction`, () => {
const BCH = new BCHJS({
restURL: 'https://FakeBchApiUrlToEnsureMocksOnly.com',
});
// This function needs to be mocked as bch-js functions that require Buffer types do not work in jest environment
BCH.Address.hash160ToCash = jest
.fn()
.mockReturnValue(
'bitcoincash:qp89xgjhcqdnzzemts0aj378nfe2mhu9yvll3cvjwd',
);
expect(
parseChronikTx(
BCH,
mockReceivedEncryptedTx,
mockWalletWithPrivateKeys,
txHistoryTokenInfoById,
),
).toStrictEqual({
incoming: true,
xecAmount: '11',
originatingHash160: '4e532257c01b310b3b5c1fd947c79a72addf8523',
isEtokenTx: false,
legacy: {
amountSent: 0,
amountReceived: '11',
outgoingTx: false,
tokenTx: false,
airdropFlag: false,
airdropTokenId: '',
opReturnMessage: 'Test encrypted message',
isCashtabMessage: true,
isEncryptedMessage: true,
decryptionSuccess: true,
replyAddress: 'ecash:qp89xgjhcqdnzzemts0aj378nfe2mhu9yvxj9nhgg6',
},
});
});
+
+it(`Correctly parses a token burn transaction`, () => {
+ const BCH = new BCHJS({
+ restURL: 'https://FakeBchApiUrlToEnsureMocksOnly.com',
+ });
+ // This function needs to be mocked as bch-js functions that require Buffer types do not work in jest environment
+ BCH.Address.hash160ToCash = jest
+ .fn()
+ .mockReturnValue(
+ 'bitcoincash:qz2708636snqhsxu8wnlka78h6fdp77ar5ulhz04hr',
+ );
+ expect(
+ parseChronikTx(
+ BCH,
+ mockTokenBurnTx,
+ anotherMockParseTxWallet,
+ txHistoryTokenInfoById,
+ ),
+ ).toStrictEqual({
+ incoming: false,
+ xecAmount: '0',
+ originatingHash160: '95e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d',
+ isEtokenTx: true,
+ isTokenBurn: true,
+ etokenAmount: '12',
+ slpMeta: {
+ tokenType: 'FUNGIBLE',
+ txType: 'SEND',
+ tokenId:
+ '4db25a4b2f0b57415ce25fab6d9cb3ac2bbb444ff493dc16d0615a11ad06c875',
+ },
+ genesisInfo: {
+ tokenTicker: 'LVV',
+ tokenName: 'Lambda Variant Variants',
+ tokenDocumentUrl: 'https://cashtabapp.com/',
+ tokenDocumentHash: '',
+ decimals: 0,
+ tokenId:
+ '4db25a4b2f0b57415ce25fab6d9cb3ac2bbb444ff493dc16d0615a11ad06c875',
+ success: true,
+ },
+ legacy: {
+ amountSent: '0',
+ amountReceived: 0,
+ outgoingTx: true,
+ tokenTx: true,
+ airdropFlag: false,
+ airdropTokenId: '',
+ opReturnMessage: '',
+ isCashtabMessage: false,
+ isEncryptedMessage: false,
+ decryptionSuccess: false,
+ replyAddress: 'ecash:qz2708636snqhsxu8wnlka78h6fdp77ar59jrf5035',
+ },
+ });
+});
+it(`Correctly parses a token burn transaction with decimal places`, () => {
+ const BCH = new BCHJS({
+ restURL: 'https://FakeBchApiUrlToEnsureMocksOnly.com',
+ });
+ // This function needs to be mocked as bch-js functions that require Buffer types do not work in jest environment
+ BCH.Address.hash160ToCash = jest
+ .fn()
+ .mockReturnValue(
+ 'bitcoincash:qz2708636snqhsxu8wnlka78h6fdp77ar5ulhz04hr',
+ );
+ expect(
+ parseChronikTx(
+ BCH,
+ mockTokenBurnWithDecimalsTx,
+ anotherMockParseTxWallet,
+ txHistoryTokenInfoById,
+ ),
+ ).toStrictEqual({
+ incoming: false,
+ xecAmount: '0',
+ originatingHash160: '95e79f51d4260bc0dc3ba7fb77c7be92d0fbdd1d',
+ isEtokenTx: true,
+ etokenAmount: '0.1234567',
+ isTokenBurn: true,
+ slpMeta: {
+ tokenType: 'FUNGIBLE',
+ txType: 'SEND',
+ tokenId:
+ '7443f7c831cdf2b2b04d5f0465ed0bcf348582675b0e4f17906438c232c22f3d',
+ },
+ genesisInfo: {
+ tokenTicker: 'WDT',
+ tokenName:
+ 'Test Token With Exceptionally Long Name For CSS And Style Revisions',
+ tokenDocumentUrl:
+ 'https://www.ImpossiblyLongWebsiteDidYouThinkWebDevWouldBeFun.org',
+ tokenDocumentHash:
+ '85b591c15c9f49531e39fcfeb2a5a26b2bd0f7c018fb9cd71b5d92dfb732d5cc',
+ decimals: 7,
+ tokenId:
+ '7443f7c831cdf2b2b04d5f0465ed0bcf348582675b0e4f17906438c232c22f3d',
+ success: true,
+ },
+ legacy: {
+ amountSent: '0',
+ amountReceived: 0,
+ outgoingTx: true,
+ tokenTx: true,
+ airdropFlag: false,
+ airdropTokenId: '',
+ opReturnMessage: '',
+ isCashtabMessage: false,
+ isEncryptedMessage: false,
+ decryptionSuccess: false,
+ replyAddress: 'ecash:qz2708636snqhsxu8wnlka78h6fdp77ar59jrf5035',
+ },
+ });
+});
diff --git a/web/cashtab/src/utils/chronik.js b/web/cashtab/src/utils/chronik.js
index 222dcd812..5e28a1104 100644
--- a/web/cashtab/src/utils/chronik.js
+++ b/web/cashtab/src/utils/chronik.js
@@ -1,816 +1,839 @@
// Chronik methods
import BigNumber from 'bignumber.js';
import { currency } from 'components/Common/Ticker';
import {
parseOpReturn,
convertToEncryptStruct,
getHashArrayFromWallet,
getUtxoWif,
} from 'utils/cashMethods';
import ecies from 'ecies-lite';
import wif from 'wif';
import cashaddr from 'ecashaddrjs';
// Return false if do not get a valid response
export const getTokenStats = async (chronik, tokenId) => {
try {
// token attributes available via chronik's token() method
let tokenResponseObj = await chronik.token(tokenId);
const tokenDecimals = tokenResponseObj.slpTxData.genesisInfo.decimals;
// additional arithmetic to account for token decimals
// circulating supply not provided by chronik, calculate via totalMinted - totalBurned
tokenResponseObj.circulatingSupply = new BigNumber(
tokenResponseObj.tokenStats.totalMinted,
)
.minus(new BigNumber(tokenResponseObj.tokenStats.totalBurned))
.shiftedBy(-1 * tokenDecimals)
.toString();
tokenResponseObj.tokenStats.totalMinted = new BigNumber(
tokenResponseObj.tokenStats.totalMinted,
)
.shiftedBy(-1 * tokenDecimals)
.toString();
tokenResponseObj.initialTokenQuantity = new BigNumber(
tokenResponseObj.initialTokenQuantity,
)
.shiftedBy(-1 * tokenDecimals)
.toString();
tokenResponseObj.tokenStats.totalBurned = new BigNumber(
tokenResponseObj.tokenStats.totalBurned,
)
.shiftedBy(-1 * tokenDecimals)
.toString();
return tokenResponseObj;
} catch (err) {
console.log(
`Error fetching token stats for tokenId ${tokenId}: ` + err,
);
return false;
}
};
/*
Note: chronik.script('p2pkh', hash160).utxos(); is not readily mockable in jest
Hence it is necessary to keep this out of any functions that require unit testing
*/
export const getUtxosSingleHashChronik = async (chronik, hash160) => {
// Get utxos at a single address, which chronik takes in as a hash160
let utxos;
try {
utxos = await chronik.script('p2pkh', hash160).utxos();
if (utxos.length === 0) {
// Chronik returns an empty array if there are no utxos at this hash160
return [];
}
/* Chronik returns an array of with a single object if there are utxos at this hash 160
[
{
outputScript: ,
utxos:[{utxo}, {utxo}, ..., {utxo}]
}
]
*/
// Return only the array of utxos at this address
return utxos[0].utxos;
} catch (err) {
console.log(`Error in chronik.utxos(${hash160})`, err);
}
};
export const returnGetUtxosChronikPromise = (chronik, hash160AndAddressObj) => {
/*
Chronik thinks in hash160s, but people and wallets think in addresses
Add the address to each utxo
*/
return new Promise((resolve, reject) => {
getUtxosSingleHashChronik(chronik, hash160AndAddressObj.hash160).then(
result => {
for (let i = 0; i < result.length; i += 1) {
const thisUtxo = result[i];
thisUtxo.address = hash160AndAddressObj.address;
}
resolve(result);
},
err => {
reject(err);
},
);
});
};
export const getUtxosChronik = async (chronik, hash160sMappedToAddresses) => {
/*
Chronik only accepts utxo requests for one address at a time
Construct an array of promises for each address
Note: Chronik requires the hash160 of an address for this request
*/
const chronikUtxoPromises = [];
for (let i = 0; i < hash160sMappedToAddresses.length; i += 1) {
const thisPromise = returnGetUtxosChronikPromise(
chronik,
hash160sMappedToAddresses[i],
);
chronikUtxoPromises.push(thisPromise);
}
const allUtxos = await Promise.all(chronikUtxoPromises);
// Since each individual utxo has address information, no need to keep them in distinct arrays
// Combine into one array of all utxos
const flatUtxos = allUtxos.flat();
return flatUtxos;
};
export const organizeUtxosByType = chronikUtxos => {
/*
Convert chronik utxos (returned by getUtxosChronik function, above) to match
shape of existing slpBalancesAndUtxos object
This means sequestering eToken utxos from non-eToken utxos
For legacy reasons, the term "SLP" is still sometimes used to describe an eToken
So, SLP utxos === eToken utxos, it's just a semantics difference here
*/
const nonSlpUtxos = [];
const preliminarySlpUtxos = [];
for (let i = 0; i < chronikUtxos.length; i += 1) {
// Construct nonSlpUtxos and slpUtxos arrays
const thisUtxo = chronikUtxos[i];
if (typeof thisUtxo.slpToken !== 'undefined') {
preliminarySlpUtxos.push(thisUtxo);
} else {
nonSlpUtxos.push(thisUtxo);
}
}
return { preliminarySlpUtxos, nonSlpUtxos };
};
export const getPreliminaryTokensArray = preliminarySlpUtxos => {
// Iterate over the slpUtxos to create the 'tokens' object
let tokensById = {};
preliminarySlpUtxos.forEach(preliminarySlpUtxo => {
/*
Note that a wallet could have many eToken utxos all belonging to the same eToken
For example, a user could have 100 of a certain eToken, but this is composed of
four utxos, one for 17, one for 50, one for 30, one for 3
*/
// Start with the existing object for this particular token, if it exists
let token = tokensById[preliminarySlpUtxo.slpMeta.tokenId];
if (token) {
if (preliminarySlpUtxo.slpToken.amount) {
token.balance = token.balance.plus(
new BigNumber(preliminarySlpUtxo.slpToken.amount),
);
}
} else {
// If it does not exist, create it
token = {};
token.tokenId = preliminarySlpUtxo.slpMeta.tokenId;
if (preliminarySlpUtxo.slpToken.amount) {
token.balance = new BigNumber(
preliminarySlpUtxo.slpToken.amount,
);
} else {
token.balance = new BigNumber(0);
}
tokensById[preliminarySlpUtxo.slpMeta.tokenId] = token;
}
});
const preliminaryTokensArray = Object.values(tokensById);
return preliminaryTokensArray;
};
const returnGetTokenInfoChronikPromise = (chronik, tokenId) => {
/*
The chronik.tx(txid) API call returns extensive transaction information
For the purposes of finalizing token information, we only need the token metadata
This function returns a promise that extracts only this needed information from
the chronik.tx(txid) API call
In this way, calling Promise.all() on an array of tokenIds that lack metadata
will return an array with all required metadata
*/
return new Promise((resolve, reject) => {
chronik.tx(tokenId).then(
result => {
const thisTokenInfo = result.slpTxData.genesisInfo;
thisTokenInfo.tokenId = tokenId;
// You only want the genesis info for tokenId
resolve(thisTokenInfo);
},
err => {
reject(err);
},
);
});
};
export const processPreliminaryTokensArray = (
preliminaryTokensArray,
tokenInfoByTokenId,
) => {
/* Iterate over preliminaryTokensArray to
1 - Add slp metadata (token ticker, name, other metadata)
2 - Calculate the token balance. Token balance in
preliminaryTokensArray does not take into account the
decimal places of the token...so it is incorrect.
*/
const finalTokenArray = [];
for (let i = 0; i < preliminaryTokensArray.length; i += 1) {
const thisToken = preliminaryTokensArray[i];
const thisTokenId = thisToken.tokenId;
// Because tokenInfoByTokenId is indexed by tokenId, it's easy to reference
const thisTokenInfo = tokenInfoByTokenId[thisTokenId];
// The decimals are specifically needed to calculate the correct balance
const thisTokenDecimals = thisTokenInfo.decimals;
// Add info object to token
thisToken.info = thisTokenInfo;
// Update balance according to decimals
thisToken.balance = thisToken.balance.shiftedBy(-1 * thisTokenDecimals);
// Now that you have the metadata and the correct balance,
// preliminaryTokenInfo is finalTokenInfo
finalTokenArray.push(thisToken);
}
return finalTokenArray;
};
export const finalizeTokensArray = async (
chronik,
preliminaryTokensArray,
cachedTokenInfoById = {},
) => {
// Iterate over preliminaryTokensArray to determine what tokens you need to make API calls for
// Create an array of promises
// Each promise is a chronik API call to obtain token metadata for this token ID
const getTokenInfoPromises = [];
for (let i = 0; i < preliminaryTokensArray.length; i += 1) {
const thisTokenId = preliminaryTokensArray[i].tokenId;
// See if you already have this info in cachedTokenInfo
if (thisTokenId in cachedTokenInfoById) {
// If you already have this info in cache, do not create an API request for it
continue;
}
const thisTokenInfoPromise = returnGetTokenInfoChronikPromise(
chronik,
thisTokenId,
);
getTokenInfoPromises.push(thisTokenInfoPromise);
}
const newTokensToCache = getTokenInfoPromises.length > 0;
// Get all the token info you need
let tokenInfoArray = [];
try {
tokenInfoArray = await Promise.all(getTokenInfoPromises);
} catch (err) {
console.log(`Error in Promise.all(getTokenInfoPromises)`, err);
}
// Add the token info you received from those API calls to
// your token info cache object, cachedTokenInfoByTokenId
const updatedTokenInfoById = cachedTokenInfoById;
for (let i = 0; i < tokenInfoArray.length; i += 1) {
/* tokenInfoArray is an array of objects that look like
{
"tokenTicker": "ST",
"tokenName": "ST",
"tokenDocumentUrl": "developer.bitcoin.com",
"tokenDocumentHash": "",
"decimals": 0,
"tokenId": "bf24d955f59351e738ecd905966606a6837e478e1982943d724eab10caad82fd"
}
*/
const thisTokenInfo = tokenInfoArray[i];
const thisTokenId = thisTokenInfo.tokenId;
// Add this entry to updatedTokenInfoById
updatedTokenInfoById[thisTokenId] = thisTokenInfo;
}
// Now use cachedTokenInfoByTokenId object to finalize token info
// Split this out into a separate function so you can unit test
const finalTokenArray = processPreliminaryTokensArray(
preliminaryTokensArray,
updatedTokenInfoById,
);
return { finalTokenArray, updatedTokenInfoById, newTokensToCache };
};
export const finalizeSlpUtxos = (preliminarySlpUtxos, tokenInfoById) => {
// We need tokenQty in each slpUtxo to support transaction creation
// Add this info here
const finalizedSlpUtxos = [];
for (let i = 0; i < preliminarySlpUtxos.length; i += 1) {
const thisUtxo = preliminarySlpUtxos[i];
const thisTokenId = thisUtxo.slpMeta.tokenId;
const { decimals } = tokenInfoById[thisTokenId];
// Update balance according to decimals
thisUtxo.tokenQty = new BigNumber(thisUtxo.slpToken.amount)
.shiftedBy(-1 * decimals)
.toString();
// SLP utxos also require tokenId and decimals directly in the utxo object
// This is bad organization but necessary until bch-js is refactored
// https://github.com/Permissionless-Software-Foundation/bch-js/blob/master/src/slp/tokentype1.js#L217
thisUtxo.tokenId = thisTokenId;
thisUtxo.decimals = decimals;
finalizedSlpUtxos.push(thisUtxo);
}
return finalizedSlpUtxos;
};
export const flattenChronikTxHistory = txHistoryOfAllAddresses => {
// Create an array of all txs
let flatTxHistoryArray = [];
for (let i = 0; i < txHistoryOfAllAddresses.length; i += 1) {
const txHistoryResponseOfThisAddress = txHistoryOfAllAddresses[i];
const txHistoryOfThisAddress = txHistoryResponseOfThisAddress.txs;
flatTxHistoryArray = flatTxHistoryArray.concat(txHistoryOfThisAddress);
}
return flatTxHistoryArray;
};
export const sortAndTrimChronikTxHistory = (
flatTxHistoryArray,
txHistoryCount,
) => {
// Isolate unconfirmed txs
// In chronik, unconfirmed txs have an `undefined` block key
const unconfirmedTxs = [];
const confirmedTxs = [];
for (let i = 0; i < flatTxHistoryArray.length; i += 1) {
const thisTx = flatTxHistoryArray[i];
if (typeof thisTx.block === 'undefined') {
unconfirmedTxs.push(thisTx);
} else {
confirmedTxs.push(thisTx);
}
}
console.log(`confirmed txs`, confirmedTxs);
console.log(`unconfirmed txs`, unconfirmedTxs);
// Sort confirmed txs by blockheight, and then timeFirstSeen
const sortedConfirmedTxHistoryArray = confirmedTxs.sort(
(a, b) =>
// We want more recent blocks i.e. higher blockheights to have earlier array indices
b.block.height - a.block.height ||
// For blocks with the same height, we want more recent timeFirstSeen i.e. higher timeFirstSeen to have earlier array indices
b.timeFirstSeen - a.timeFirstSeen,
);
// Sort unconfirmed txs by timeFirstSeen
const sortedUnconfirmedTxHistoryArray = unconfirmedTxs.sort(
(a, b) => b.timeFirstSeen - a.timeFirstSeen,
);
// The unconfirmed txs are more recent, so they should be inserted into an array before the confirmed txs
const sortedChronikTxHistoryArray = sortedUnconfirmedTxHistoryArray.concat(
sortedConfirmedTxHistoryArray,
);
const trimmedAndSortedChronikTxHistoryArray =
sortedChronikTxHistoryArray.splice(0, txHistoryCount);
return trimmedAndSortedChronikTxHistoryArray;
};
export const returnGetTxHistoryChronikPromise = (
chronik,
hash160AndAddressObj,
) => {
/*
Chronik thinks in hash160s, but people and wallets think in addresses
Add the address to each utxo
*/
return new Promise((resolve, reject) => {
chronik
.script('p2pkh', hash160AndAddressObj.hash160)
.history(/*page=*/ 0, /*page_size=*/ currency.txHistoryCount)
.then(
result => {
console.log(
`result for ${hash160AndAddressObj.hash160}`,
result,
);
resolve(result);
},
err => {
reject(err);
},
);
});
};
export const parseChronikTx = (BCH, tx, wallet, tokenInfoById) => {
const walletHash160s = getHashArrayFromWallet(wallet);
const { inputs, outputs } = tx;
// Assign defaults
let incoming = true;
let xecAmount = new BigNumber(0);
let originatingHash160 = '';
let etokenAmount = new BigNumber(0);
+ let isTokenBurn = false;
const isEtokenTx = 'slpTxData' in tx && typeof tx.slpTxData !== 'undefined';
const isGenesisTx =
isEtokenTx &&
tx.slpTxData.slpMeta &&
tx.slpTxData.slpMeta.txType &&
tx.slpTxData.slpMeta.txType === 'GENESIS';
if (isGenesisTx) {
console.log(`${tx.txid} isGenesisTx`);
}
// Defining variables used in lines legacy parseTxData function from useBCH.js
let substring = '';
let airdropFlag = false;
let airdropTokenId = '';
let opReturnMessage = '';
let isCashtabMessage = false;
let isEncryptedMessage = false;
let decryptionSuccess = false;
let replyAddress = '';
// Iterate over inputs to see if this is an incoming tx (incoming === true)
for (let i = 0; i < inputs.length; i += 1) {
const thisInput = inputs[i];
const thisInputSendingHash160 = thisInput.outputScript;
+ // If this is an etoken tx, check for token burn
+ if (isEtokenTx && typeof thisInput.slpBurn !== 'undefined') {
+ console.log(`Token burn at ${tx.txid}`);
+ // Assume that any eToken tx with a burn is a burn tx
+ isTokenBurn = true;
+ try {
+ const thisEtokenBurnAmount = new BigNumber(
+ thisInput.slpBurn.token.amount,
+ );
+ // Need to know the total output amount to compare to total input amount and tell if this is a burn transaction
+ etokenAmount = etokenAmount.plus(thisEtokenBurnAmount);
+ } catch (err) {
+ // do nothing
+ // If this happens, the burn amount will render wrong in tx history because we don't have the info in chronik
+ // This is acceptable
+ }
+ }
/*
Assume the first input is the originating address
https://en.bitcoin.it/wiki/Script for reference
Assume standard pay-to-pubkey-hash tx
scriptPubKey: OP_DUP OP_HASH160 OP_EQUALVERIFY OP_CHECKSIG
76 + a9 + 14 = OP_DUP + OP_HASH160 + 14 Bytes to push
88 + ac = OP_EQUALVERIFY + OP_CHECKSIG
So, the hash160 we want will be in between '76a914' and '88ac'
...most of the time ;)
*/
try {
originatingHash160 = thisInputSendingHash160.substring(
thisInputSendingHash160.indexOf('76a914') + '76a914'.length,
thisInputSendingHash160.lastIndexOf('88ac'),
);
let replyAddressBchFormat =
BCH.Address.hash160ToCash(originatingHash160);
const { type, hash } = cashaddr.decode(replyAddressBchFormat);
replyAddress = cashaddr.encode('ecash', type, hash);
console.log(`replyAddressXecFormat`, replyAddress);
} catch (err) {
console.log(`err from ${originatingHash160}`, err);
// If the transaction is nonstandard, don't worry about a reply address for now
originatingHash160 = 'N/A';
}
for (let j = 0; j < walletHash160s.length; j += 1) {
const thisWalletHash160 = walletHash160s[j];
if (thisInputSendingHash160.includes(thisWalletHash160)) {
// Then this is an outgoing tx
incoming = false;
// Break out of this for loop once you know this is an incoming tx
break;
}
}
}
// Iterate over outputs to get the amount sent
for (let i = 0; i < outputs.length; i += 1) {
const thisOutput = outputs[i];
const thisOutputReceivedAtHash160 = thisOutput.outputScript;
// Check for OP_RETURN msg
if (
thisOutput.value === '0' &&
typeof thisOutput.slpToken === 'undefined'
) {
let hex = thisOutputReceivedAtHash160;
let parsedOpReturnArray = parseOpReturn(hex);
// Exactly copying lines 177-293 of useBCH.js
// Differences
// 1 - patched ecies not async error
// 2 - Removed if loop for tx being token, as this is handled elsewhere here
if (!parsedOpReturnArray) {
console.log(
'useBCH.parsedTxData() error: parsed array is empty',
);
break;
}
let message = '';
let txType = parsedOpReturnArray[0];
if (txType === currency.opReturn.appPrefixesHex.airdrop) {
// this is to facilitate special Cashtab-specific cases of airdrop txs, both with and without msgs
// The UI via Tx.js can check this airdropFlag attribute in the parsedTx object to conditionally render airdrop-specific formatting if it's true
airdropFlag = true;
// index 0 is drop prefix, 1 is the token Id, 2 is msg prefix, 3 is msg
airdropTokenId = parsedOpReturnArray[1];
txType = parsedOpReturnArray[2];
// remove the first two elements of airdrop prefix and token id from array so the array parsing logic below can remain unchanged
parsedOpReturnArray.splice(0, 2);
// index 0 now becomes msg prefix, 1 becomes the msg
}
if (txType === currency.opReturn.appPrefixesHex.cashtab) {
// this is a Cashtab message
try {
opReturnMessage = Buffer.from(
parsedOpReturnArray[1],
'hex',
);
isCashtabMessage = true;
} catch (err) {
// soft error if an unexpected or invalid cashtab hex is encountered
opReturnMessage = '';
console.log(
'useBCH.parsedTxData() error: invalid cashtab msg hex: ' +
parsedOpReturnArray[1],
);
}
} else if (
txType === currency.opReturn.appPrefixesHex.cashtabEncrypted
) {
// this is an encrypted Cashtab message
let msgString = parsedOpReturnArray[1];
let fundingWif, privateKeyObj, privateKeyBuff;
if (
wallet &&
wallet.state &&
wallet.state.slpBalancesAndUtxos &&
wallet.state.slpBalancesAndUtxos.nonSlpUtxos[0]
) {
fundingWif = getUtxoWif(
wallet.state.slpBalancesAndUtxos.nonSlpUtxos[0],
wallet,
);
privateKeyObj = wif.decode(fundingWif);
privateKeyBuff = privateKeyObj.privateKey;
if (!privateKeyBuff) {
throw new Error('Private key extraction error');
}
} else {
break;
}
let structData;
let decryptedMessage;
try {
// Convert the hex encoded message to a buffer
const msgBuf = Buffer.from(msgString, 'hex');
// Convert the bufer into a structured object.
structData = convertToEncryptStruct(msgBuf);
decryptedMessage = ecies.decrypt(
privateKeyBuff,
structData,
);
decryptionSuccess = true;
} catch (err) {
console.log(
'useBCH.parsedTxData() decryption error: ' + err,
);
decryptedMessage =
'Only the message recipient can view this';
}
isCashtabMessage = true;
isEncryptedMessage = true;
opReturnMessage = decryptedMessage;
} else {
// this is an externally generated message
message = txType; // index 0 is the message content in this instance
// if there are more than one part to the external message
const arrayLength = parsedOpReturnArray.length;
for (let i = 1; i < arrayLength; i++) {
message = message + parsedOpReturnArray[i];
}
try {
opReturnMessage = Buffer.from(message, 'hex');
} catch (err) {
// soft error if an unexpected or invalid cashtab hex is encountered
opReturnMessage = '';
console.log(
'useBCH.parsedTxData() error: invalid external msg hex: ' +
substring,
);
}
}
}
// Find amounts at your wallet's addresses
for (let j = 0; j < walletHash160s.length; j += 1) {
const thisWalletHash160 = walletHash160s[j];
if (thisOutputReceivedAtHash160.includes(thisWalletHash160)) {
// If incoming tx, this is amount received by the user's wallet
// if outgoing tx (incoming === false), then this is a change amount
const thisOutputAmount = new BigNumber(thisOutput.value);
xecAmount = incoming
? xecAmount.plus(thisOutputAmount)
: xecAmount.minus(thisOutputAmount);
// Parse token qty if token tx
// Note: edge case this is a token tx that sends XEC to Cashtab recipient but token somewhere else
- if (isEtokenTx) {
+ if (isEtokenTx && !isTokenBurn) {
try {
const thisEtokenAmount = new BigNumber(
thisOutput.slpToken.amount,
);
etokenAmount =
incoming || isGenesisTx
? etokenAmount.plus(thisEtokenAmount)
: etokenAmount.minus(thisEtokenAmount);
} catch (err) {
// edge case described above; in this case there is zero eToken value for this Cashtab recipient, so add 0
etokenAmount.plus(new BigNumber(0));
}
}
}
}
// Output amounts not at your wallet are sent amounts if !incoming
// Exception for eToken genesis transactions
if (!incoming) {
const thisOutputAmount = new BigNumber(thisOutput.value);
xecAmount = xecAmount.plus(thisOutputAmount);
- if (isEtokenTx && !isGenesisTx) {
+ if (isEtokenTx && !isGenesisTx && !isTokenBurn) {
try {
const thisEtokenAmount = new BigNumber(
thisOutput.slpToken.amount,
);
etokenAmount = etokenAmount.plus(thisEtokenAmount);
} catch (err) {
// NB the edge case described above cannot exist in an outgoing tx
// because the eTokens sent originated from this wallet
}
}
}
}
// Convert from sats to XEC
xecAmount = xecAmount.shiftedBy(-1 * currency.cashDecimals);
// Convert from BigNumber to string
xecAmount = xecAmount.toString();
// Get decimal info for correct etokenAmount
let genesisInfo = {};
+
if (isEtokenTx) {
// Get token genesis info from cache
let decimals = 0;
try {
genesisInfo = tokenInfoById[tx.slpTxData.slpMeta.tokenId];
genesisInfo.success = true;
// tokenGenesisInfo should be there for every tx in tx history, since it's already been cached for every utxo in the wallet
// but try...catch just in case
decimals = genesisInfo.decimals;
etokenAmount = etokenAmount.shiftedBy(-1 * decimals);
} catch (err) {
console.log(
`Error getting token info from cache in parseChronikTx`,
err,
);
// To keep this function synchronous, do not get this info from the API if it is not in cache
// Instead, return a flag so that useWallet.js knows and can fetch this info + add it to cache
genesisInfo.success = false;
}
}
etokenAmount = etokenAmount.toString();
+ if (isTokenBurn) {
+ console.log(`${etokenAmount} of ${genesisInfo.tokenName} burned`);
+ }
// Convert opReturnMessage to string
opReturnMessage = Buffer.from(opReturnMessage).toString();
// Return eToken specific fields if eToken tx
if (isEtokenTx) {
const { slpMeta } = tx.slpTxData;
return {
incoming,
xecAmount,
originatingHash160,
isEtokenTx,
etokenAmount,
+ isTokenBurn,
slpMeta,
genesisInfo,
legacy: {
amountSent: incoming ? 0 : xecAmount,
amountReceived: incoming ? xecAmount : 0,
outgoingTx: !incoming,
tokenTx: true,
airdropFlag,
airdropTokenId,
opReturnMessage: '',
isCashtabMessage,
isEncryptedMessage,
decryptionSuccess,
replyAddress,
},
};
}
// Otherwise do not include these fields
return {
incoming,
xecAmount,
originatingHash160,
isEtokenTx,
legacy: {
amountSent: incoming ? 0 : xecAmount,
amountReceived: incoming ? xecAmount : 0,
outgoingTx: !incoming,
tokenTx: false,
airdropFlag,
airdropTokenId,
opReturnMessage,
isCashtabMessage,
isEncryptedMessage,
decryptionSuccess,
replyAddress,
},
};
};
export const getTxHistoryChronik = async (
chronik,
BCH,
wallet,
tokenInfoById,
) => {
// Create array of promises to get chronik history for each address
// Combine them all and sort by blockheight and firstSeen
// Add all the info cashtab needs to make them useful
console.log(`tokenInfoById`, tokenInfoById);
const hash160AndAddressObjArray = [
{
address: wallet.Path145.cashAddress,
hash160: wallet.Path145.hash160,
},
{
address: wallet.Path245.cashAddress,
hash160: wallet.Path245.hash160,
},
{
address: wallet.Path1899.cashAddress,
hash160: wallet.Path1899.hash160,
},
];
let txHistoryPromises = [];
for (let i = 0; i < hash160AndAddressObjArray.length; i += 1) {
const txHistoryPromise = returnGetTxHistoryChronikPromise(
chronik,
hash160AndAddressObjArray[i],
);
txHistoryPromises.push(txHistoryPromise);
}
let txHistoryOfAllAddresses;
try {
txHistoryOfAllAddresses = await Promise.all(txHistoryPromises);
} catch (err) {
console.log(`Error in Promise.all(txHistoryPromises)`, err);
}
console.log(`txHistoryOfAllAddresses`, txHistoryOfAllAddresses);
const flatTxHistoryArray = flattenChronikTxHistory(txHistoryOfAllAddresses);
console.log(`flatTxHistoryArray`, flatTxHistoryArray);
const sortedTxHistoryArray = sortAndTrimChronikTxHistory(
flatTxHistoryArray,
currency.txHistoryCount,
);
// Parse txs
const parsedTxs = [];
for (let i = 0; i < sortedTxHistoryArray.length; i += 1) {
const sortedTx = sortedTxHistoryArray[i];
// Add token genesis info so parsing function can calculate amount by decimals
sortedTx.parsed = parseChronikTx(BCH, sortedTx, wallet, tokenInfoById);
parsedTxs.push(sortedTx);
}
return parsedTxs;
};