PHP WebShell

Текущая директория: /opt/bitgo-express-withdraw/node_modules/ripple-lib/test/fixtures/rippled

Просмотр файла: account-tx.js

/* eslint-disable max-len */
'use strict';
const _ = require('lodash');
const hashes = require('../hashes');
const addresses = require('../addresses');
const AccountSet = require('./tx/account-set.json');
const NotFound = require('./tx/not-found.json');
const binary = require('ripple-binary-codec');

module.exports = function(request, options = {}) {
  _.defaults(options, {
    memos: [{
      Memo: {
        MemoFormat: '7274312E352E32',
        MemoType: '636C69656E74'
      }
    }],
    hash: hashes.VALID_TRANSACTION_HASH,
    validated: true
  });

  let tx = {
    Account: addresses.ACCOUNT,
    Amount: {
      currency: 'USD',
      issuer: addresses.ISSUER,
      value: '0.001'
    },
    Destination: addresses.ISSUER,
    Fee: '10',
    Flags: 0,
    Memos: options.memos,
    Paths: [
      [
        {
          currency: 'USD',
          issuer: addresses.OTHER_ACCOUNT,
          type: 48,
          type_hex: '0000000000000030'
        },
        {
          account: addresses.OTHER_ACCOUNT,
          currency: 'USD',
          issuer: addresses.OTHER_ACCOUNT,
          type: 49,
          type_hex: '0000000000000031'
        }
      ]
    ],
    SendMax: '1112209',
    Sequence: 4,
    SigningPubKey: '02BC8C02199949B15C005B997E7C8594574E9B02BA2D0628902E0532989976CF9D',
    TransactionType: 'Payment',
    TxnSignature: '304502204EE3E9D1B01D8959B08450FCA9E22025AF503DEF310E34A93863A85CAB3C0BC5022100B61F5B567F77026E8DEED89EED0B7CAF0E6C96C228A2A65216F0DC2D04D52083'
  };

  let meta = {
    AffectedNodes: [
      {
        ModifiedNode: {
          FinalFields: {
            Account: addresses.ACCOUNT,
            BookDirectory: '4627DFFCFF8B5A265EDBD8AE8C14A52325DBFEDAF4F5C32E5E03E788E09BB000',
            BookNode: '0000000000000000',
            Flags: 0,
            OwnerNode: '0000000000000000',
            Sequence: 58,
            TakerGets: {
              currency: 'USD',
              issuer: addresses.OTHER_ACCOUNT,
              value: '5.648998'
            },
            TakerPays: '6208248802'
          },
          LedgerEntryType: 'Offer',
          LedgerIndex: '3CFB3C79D4F1BDB1EE5245259372576D926D9A875713422F7169A6CC60AFA68B',
          PreviousFields: {
            TakerGets: {
              currency: 'USD',
              issuer: addresses.OTHER_ACCOUNT,
              value: '5.65'
            },
            TakerPays: '6209350000'
          },
          PreviousTxnID: '8F571C346688D89AC1F737AE3B6BB5D976702B171CC7B4DE5CA3D444D5B8D6B4',
          PreviousTxnLgrSeq: 348433
        }
      },
      {
        ModifiedNode: {
          FinalFields: {
            Balance: {
              currency: 'USD',
              issuer: 'rrrrrrrrrrrrrrrrrrrrBZbvji',
              value: '-0.001'
            },
            Flags: 131072,
            HighLimit: {
              currency: 'USD',
              issuer: addresses.ISSUER,
              value: '1'
            },
            HighNode: '0000000000000000',
            LowLimit: {
              currency: 'USD',
              issuer: addresses.OTHER_ACCOUNT,
              value: '0'
            },
            LowNode: '0000000000000002'
          },
          LedgerEntryType: 'RippleState',
          LedgerIndex: '4BD1874F8F3A60EDB0C23F5BD43E07953C2B8741B226648310D113DE2B486F01',
          PreviousFields: {
            Balance: {
              currency: 'USD',
              issuer: 'rrrrrrrrrrrrrrrrrrrrBZbvji',
              value: '0'
            }
          },
          PreviousTxnID: '5B2006DAD0B3130F57ACF7CC5CCAC2EEBCD4B57AAA091A6FD0A24B073D08ABB8',
          PreviousTxnLgrSeq: 343703
        }
      },
      {
        ModifiedNode: {
          FinalFields: {
            Account: addresses.ACCOUNT,
            Balance: '9998898762',
            Flags: 0,
            OwnerCount: 3,
            Sequence: 5
          },
          LedgerEntryType: 'AccountRoot',
          LedgerIndex: '4F83A2CF7E70F77F79A307E6A472BFC2585B806A70833CCD1C26105BAE0D6E05',
          PreviousFields: {
            Balance: '9999999970',
            Sequence: 4
          },
          PreviousTxnID: '53354D84BAE8FDFC3F4DA879D984D24B929E7FEB9100D2AD9EFCD2E126BCCDC8',
          PreviousTxnLgrSeq: 343570
        }
      },
      {
        ModifiedNode: {
          FinalFields: {
            Account: 'r9tGqzZgKxVFvzKFdUqXAqTzazWBUia8Qr',
            Balance: '912695302618',
            Flags: 0,
            OwnerCount: 10,
            Sequence: 59
          },
          LedgerEntryType: 'AccountRoot',
          LedgerIndex: 'F3E119AAA87AF3607CF87F5523BB8278A83BCB4142833288305D767DD30C392A',
          PreviousFields: {
            Balance: '912694201420'
          },
          PreviousTxnID: '8F571C346688D89AC1F737AE3B6BB5D976702B171CC7B4DE5CA3D444D5B8D6B4',
          PreviousTxnLgrSeq: 348433
        }
      },
      {
        ModifiedNode: {
          FinalFields: {
            Balance: {
              currency: 'USD',
              issuer: 'rrrrrrrrrrrrrrrrrrrrBZbvji',
              value: '-5.5541638883365'
            },
            Flags: 131072,
            HighLimit: {
              currency: 'USD',
              issuer: 'r9tGqzZgKxVFvzKFdUqXAqTzazWBUia8Qr',
              value: '1000'
            },
            HighNode: '0000000000000000',
            LowLimit: {
              currency: 'USD',
              issuer: addresses.OTHER_ACCOUNT,
              value: '0'
            },
            LowNode: '000000000000000C'
          },
          LedgerEntryType: 'RippleState',
          LedgerIndex: 'FA1255C2E0407F1945BCF9351257C7C5C28B0F5F09BB81C08D35A03E9F0136BC',
          PreviousFields: {
            Balance: {
              currency: 'USD',
              issuer: 'rrrrrrrrrrrrrrrrrrrrBZbvji',
              value: '-5.5551658883365'
            }
          },
          PreviousTxnID: '8F571C346688D89AC1F737AE3B6BB5D976702B171CC7B4DE5CA3D444D5B8D6B4',
          PreviousTxnLgrSeq: 348433
        }
      }
    ],
    TransactionIndex: 0,
    TransactionResult: 'tesSUCCESS'
  };

  let marker = Number(request.marker) || 0;
  marker += 1;
  if (marker === 5) {
    meta.TransactionResult = 'tecINSUFFICIENT_RESERVE';
  } else if (marker === 6) {
    tx = _.cloneDeep(AccountSet.result);
    meta = tx.meta;
    delete tx.meta;
  } else if (marker === 7) {
    tx.Account = addresses.OTHER_ACCOUNT;
  } else if (marker === 8) {
    tx.Destination = addresses.THIRD_ACCOUNT;
  } else if (marker > 25) {
    marker = undefined;
  } else if (marker > 15) {
    tx.Account = addresses.ISSUER;
    tx.Destination = addresses.ACCOUNT;
  }
  if (request.limit === 13) {
    const res = _.assign({}, NotFound, {id: request.id});
    return JSON.stringify(res);
  }
  return JSON.stringify({
    id: request.id,
    status: 'success',
    type: 'response',
    result: {
      marker: marker === undefined ? undefined : String(marker),
      transactions: [
        {
          ledger_index: 348860 - Number(marker || 100),
          tx_blob: binary.encode(tx),
          meta: binary.encode(meta),
          validated: options.validated
        }
      ]
    }
  });
};

Выполнить команду


Для локальной разработки. Не используйте в интернете!