73 lines
2.0 KiB
JavaScript
73 lines
2.0 KiB
JavaScript
'use strict'
|
|
import TransactionBase from '../TransactionBase.js'
|
|
import { QORT_DECIMALS } from '../../constants.js'
|
|
|
|
export default class UpdateNameTransaction extends TransactionBase {
|
|
constructor() {
|
|
super()
|
|
this.type = 4
|
|
}
|
|
|
|
render(html) {
|
|
return html`
|
|
${this._dialogUpdateName1}
|
|
<div style="background: #eee; padding: 8px; margin: 8px 0; border-radius: 5px;">
|
|
<span style="color: #000;">${this.nameText}</span>
|
|
</div>
|
|
${this._dialogUpdateName2}
|
|
<div style="background: #eee; padding: 8px; margin: 8px 0; border-radius: 5px;">
|
|
<span style="color: #000;">${this.newNameText}</span>
|
|
</div>
|
|
${this._dialogUpdateName3}
|
|
`
|
|
}
|
|
|
|
set dialogUpdateName1(dialogUpdateName1) {
|
|
this._dialogUpdateName1 = dialogUpdateName1
|
|
}
|
|
|
|
set dialogUpdateName2(dialogUpdateName2) {
|
|
this._dialogUpdateName2 = dialogUpdateName2
|
|
}
|
|
|
|
set dialogUpdateName3(dialogUpdateName3) {
|
|
this._dialogUpdateName3 = dialogUpdateName3
|
|
}
|
|
|
|
set fee(fee) {
|
|
this._fee = fee * QORT_DECIMALS
|
|
this._feeBytes = this.constructor.utils.int64ToBytes(this._fee)
|
|
}
|
|
|
|
set name(name) {
|
|
this.nameText = name
|
|
this._nameBytes = this.constructor.utils.stringtoUTF8Array(name)
|
|
this._nameLength = this.constructor.utils.int32ToBytes(this._nameBytes.length)
|
|
}
|
|
|
|
set newName(newName) {
|
|
this.newNameText = newName
|
|
this._newNameBytes = this.constructor.utils.stringtoUTF8Array(newName)
|
|
this._newNameLength = this.constructor.utils.int32ToBytes(this._newNameBytes.length)
|
|
}
|
|
|
|
set newData(newData) {
|
|
this.newDataText = newData.length === 0 ? "Registered Name on the Qortal Chain" : newData
|
|
this._newDataBytes = this.constructor.utils.stringtoUTF8Array(this.newDataText)
|
|
this._newDataLength = this.constructor.utils.int32ToBytes(this._newDataBytes.length)
|
|
}
|
|
|
|
get params() {
|
|
const params = super.params
|
|
params.push(
|
|
this._nameLength,
|
|
this._nameBytes,
|
|
this._newNameLength,
|
|
this._newNameBytes,
|
|
this._newDataLength,
|
|
this._newDataBytes,
|
|
this._feeBytes
|
|
)
|
|
return params
|
|
}
|
|
} |