@muirglacier/jellyfish-transaction
Version:
A collection of TypeScript + JavaScript tools and libraries for DeFi Blockchain developers to build decentralized finance for Bitcoin
67 lines • 3.13 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.CAnyAccountToAccount = exports.CAccountToAccount = exports.CAccountToUtxos = exports.CUtxosToAccount = void 0;
const jellyfish_buffer_1 = require("@muirglacier/jellyfish-buffer");
const tx_composer_1 = require("../../tx_composer");
const dftx_balance_1 = require("./dftx_balance");
/**
* Composable UtxosToAccount, C stands for Composable.
* Immutable by design, bi-directional fromBuffer, toBuffer deep composer.
*/
class CUtxosToAccount extends jellyfish_buffer_1.ComposableBuffer {
composers(u2a) {
return [
jellyfish_buffer_1.ComposableBuffer.varUIntArray(() => u2a.to, v => u2a.to = v, v => new dftx_balance_1.CScriptBalances(v))
];
}
}
exports.CUtxosToAccount = CUtxosToAccount;
CUtxosToAccount.OP_CODE = 0x55; // 'U'
CUtxosToAccount.OP_NAME = 'OP_DEFI_TX_UTXOS_TO_ACCOUNT';
/**
* Composable UtxosToAccount, C stands for Composable.
* Immutable by design, bi-directional fromBuffer, toBuffer deep composer.
*/
class CAccountToUtxos extends jellyfish_buffer_1.ComposableBuffer {
composers(a2u) {
return [
jellyfish_buffer_1.ComposableBuffer.single(() => a2u.from, v => a2u.from = v, v => new tx_composer_1.CScript(v)),
jellyfish_buffer_1.ComposableBuffer.varUIntArray(() => a2u.balances, v => a2u.balances = v, v => new dftx_balance_1.CTokenBalance(v)),
jellyfish_buffer_1.ComposableBuffer.uInt8(() => a2u.mintingOutputsStart, v => a2u.mintingOutputsStart = v)
];
}
}
exports.CAccountToUtxos = CAccountToUtxos;
CAccountToUtxos.OP_CODE = 0x62; // 'b'
CAccountToUtxos.OP_NAME = 'OP_DEFI_TX_ACCOUNT_TO_UTXOS';
/**
* Composable UtxosToAccount, C stands for Composable.
* Immutable by design, bi-directional fromBuffer, toBuffer deep composer.
*/
class CAccountToAccount extends jellyfish_buffer_1.ComposableBuffer {
composers(a2a) {
return [
jellyfish_buffer_1.ComposableBuffer.single(() => a2a.from, v => a2a.from = v, v => new tx_composer_1.CScript(v)),
jellyfish_buffer_1.ComposableBuffer.varUIntArray(() => a2a.to, v => a2a.to = v, v => new dftx_balance_1.CScriptBalances(v))
];
}
}
exports.CAccountToAccount = CAccountToAccount;
CAccountToAccount.OP_CODE = 0x42; // 'B'
CAccountToAccount.OP_NAME = 'OP_DEFI_TX_ACCOUNT_TO_ACCOUNT';
/**
* Composable UtxosToAccount, C stands for Composable.
* Immutable by design, bi-directional fromBuffer, toBuffer deep composer.
*/
class CAnyAccountToAccount extends jellyfish_buffer_1.ComposableBuffer {
composers(aa2a) {
return [
jellyfish_buffer_1.ComposableBuffer.varUIntArray(() => aa2a.from, v => aa2a.from = v, v => new dftx_balance_1.CScriptBalances(v)),
jellyfish_buffer_1.ComposableBuffer.varUIntArray(() => aa2a.to, v => aa2a.to = v, v => new dftx_balance_1.CScriptBalances(v))
];
}
}
exports.CAnyAccountToAccount = CAnyAccountToAccount;
CAnyAccountToAccount.OP_CODE = 0x61; // 'a'
CAnyAccountToAccount.OP_NAME = 'OP_DEFI_TX_ANY_ACCOUNT_TO_ACCOUNT';
//# sourceMappingURL=dftx_account.js.map