mirror of
https://github.com/Qortal/qortal-ui.git
synced 2025-09-03 00:20:48 +00:00
build
config
img
qortal-ui-core
qortal-ui-crypto
api
bitcoin
deps
transactions
arbitrary
chat
groups
names
reward-share
trade-portal
AirdropTransaction.js
DelegationTransaction.js
MessageTransaction.js
PaymentTransaction.js
PublicizeTransaction.js
TransactionBase.js
arbitraryV3.js
processTransaction.js
registerName_dnsthing.js
transactions.js
utils
wallet
PhraseWallet.js
api.js
constants.js
createTransaction.js
createWallet.js
decryptStoredWallet.js
fetch-request.js
kdf.js
registerUsername.js
storeWallet.js
tradeRequest.js
api.js
api_deps.js
config.js
package.json
qortal-ui-plugins
scripts
snap
.editorconfig
.gitattributes
.gitignore
.travis.yml
CONTRIBUTING.md
LICENSE
README.md
build-setup.js
build.bat
build.js
build.sh
electron-builder.yml
electron.js
install-dependencies.sh
package.json
push-updates-with-travis-build.sh
run_server.bat
server.js
set-up-snap.sh
update-package-json.js
watch-inline.js
watch.js
51 lines
1.6 KiB
JavaScript
51 lines
1.6 KiB
JavaScript
'use strict';
|
|
import TransactionBase from './TransactionBase.js'
|
|
import { QORT_DECIMALS } from '../constants.js'
|
|
// import { Sha256 } from 'asmcrypto.js/dist_es5/entry-export_all.js'
|
|
|
|
export default class PaymentTransaction extends TransactionBase {
|
|
constructor () {
|
|
super()
|
|
this.type = 20
|
|
this.amount = 42 * Math.pow(10, 8)
|
|
this.tests.push(
|
|
() => {
|
|
if (!(this._amount >= 0)) {
|
|
return 'Invalid amount ' + this._amount / QORT_DECIMALS
|
|
}
|
|
return true
|
|
},
|
|
() => {
|
|
if (!(this._recipient instanceof Uint8Array && this._recipient.length == 25)) {
|
|
return 'Invalid recipient ' + Base58.encode(this._recipient)
|
|
}
|
|
return true
|
|
}
|
|
)
|
|
}
|
|
|
|
set recipient (recipient) { // Always Base58 encoded. Accepts Uint8Array or Base58 string.
|
|
this._recipient = recipient instanceof Uint8Array ? recipient : this.constructor.Base58.decode(recipient)
|
|
}
|
|
set amount (amount) {
|
|
this._amount = amount * QORT_DECIMALS
|
|
this._amountBytes = this.constructor.utils.int64ToBytes(amount)
|
|
}
|
|
|
|
set reference (seed) {
|
|
const sha = seed => new Sha512().process(seed).finish().result
|
|
let reference = sha(sha(seed))
|
|
reference += reference
|
|
}
|
|
|
|
get params () {
|
|
const params = super.params
|
|
params.push(
|
|
this._recipient,
|
|
this._amountBytes,
|
|
this._feeBytes
|
|
)
|
|
return params
|
|
}
|
|
}
|