import { SUBMIT_TRANSACTION_TIMEOUT } from '../constants'
import { ResourceGroupBase } from '../../resource_group_base'
/**
* Transactions.
*
* @class
*/
export class Transactions extends ResourceGroupBase {
/**
* Submit a transaction.
*
* @param {Transaction} transaction A transaction to be submitted.
* @return {JsonApiResponse} Response.
*/
submit (transaction) {
let tx = transaction.toEnvelope().toXDR().toString('base64')
return this._makeCallBuilder()
.withTimeout(SUBMIT_TRANSACTION_TIMEOUT)
.withCredentials()
.post({
data: {
type: 'transactions',
attributes: { tx }
}
})
}
_makeCallBuilder () {
return this._server._makeCallBuilder()
.appendUrlSegment('transactions')
}
}