90 lines
4.4 KiB
QML
90 lines
4.4 KiB
QML
pragma Singleton
|
|
|
|
import QtQuick 2.12
|
|
|
|
QtObject {
|
|
id: root
|
|
property var utilsModelInst: !!utilsModel ? utilsModel : null
|
|
property var chatsModelInst: !!chatsModel ?chatsModel : null
|
|
property var userProfileInst: !!userProfile ? userProfile : null
|
|
property var walletModelInst: !!walletModel ? walletModel : null
|
|
property var keycardModelInst: !!keycardModel ? keycardModel : null
|
|
property var profileModelInst: !!profileModel ? profileModel : null
|
|
property var walletSectionInst: !!walletSection ? walletSection : null
|
|
property var contactsModuleInst: !!contactsModule ? contactsModule : null
|
|
property var contactsModuleModel: contactsModuleInst.model || {}
|
|
property var appSettings: !!localAppSettings ? localAppSettings : null
|
|
property var accountSensitiveSettings: !!localAccountSensitiveSettings ? localAccountSensitiveSettings : null
|
|
property real volume: !!accountSensitiveSettings ? accountSensitiveSettings.volume : 0.0
|
|
property bool isWalletEnabled: !!accountSensitiveSettings ? accountSensitiveSettings.isWalletEnabled : false
|
|
property bool notificationSoundsEnabled: !!accountSensitiveSettings ? accountSensitiveSettings.notificationSoundsEnabled : false
|
|
property bool neverAskAboutUnfurlingAgain: !!accountSensitiveSettings ? accountSensitiveSettings.neverAskAboutUnfurlingAgain : false
|
|
property bool isGifWidgetEnabled: !!accountSensitiveSettings ? accountSensitiveSettings.isGifWidgetEnabled : false
|
|
property bool isTenorWarningAccepted: !!accountSensitiveSettings ? accountSensitiveSettings.isTenorWarningAccepted : false
|
|
property bool displayChatImages: !!accountSensitiveSettings ? accountSensitiveSettings.displayChatImages : false
|
|
|
|
property string locale: !!appSettings ? appSettings.locale : ""
|
|
property string signingPhrase: !!walletModelInst ? walletModelInst.utilsView.signingPhrase : ""
|
|
property string gasPrice: !!walletModelInst ? walletModelInst.gasView.gasPrice : "0"
|
|
property string gasEthValue: !!walletModelInst ? walletModelInst.gasView.getGasEthValue : "0"
|
|
property string currentCurrency: !!walletSectionInst ? walletSectionInst.currentCurrency : ""
|
|
property string defaultCurrency: !!walletModelInst ? walletModelInst.balanceView.defaultCurrency : "0"
|
|
property string fiatValue: !!walletModelInst ? walletModelInst.balanceView.getFiatValue : "0"
|
|
property string cryptoValue: !!walletModelInst ? walletModelInst.balanceView.getCryptoValue : "0"
|
|
readonly property var formationChars: (["*", "`", "~"])
|
|
function getSelectedTextWithFormationChars(messageInputField) {
|
|
let i = 1
|
|
let text = ""
|
|
while (true) {
|
|
if (messageInputField.selectionStart - i < 0 && messageInputField.selectionEnd + i > messageInputField.length) {
|
|
break
|
|
}
|
|
|
|
text = messageInputField.getText(messageInputField.selectionStart - i, messageInputField.selectionEnd + i)
|
|
|
|
if (!formationChars.includes(text.charAt(0)) ||
|
|
!formationChars.includes(text.charAt(text.length - 1))) {
|
|
break
|
|
}
|
|
i++
|
|
}
|
|
return text
|
|
}
|
|
|
|
function setNeverAskAboutUnfurlingAgain(value) {
|
|
localAccountSensitiveSettings.neverAskAboutUnfurlingAgain = value;
|
|
}
|
|
|
|
function enableWallet() {
|
|
localAccountSensitiveSettings.isWalletEnabled = true;
|
|
}
|
|
|
|
function setIsTenorWarningAccepted(value) {
|
|
localAccountSensitiveSettings.isTenorWarningAccepted = value;
|
|
}
|
|
|
|
function transferEth(from, to, amount, gasLimit, gasPrice, tipLimit, overallLimit, password, uuid) {
|
|
return walletModelInst.transactionsView.transferEth(from, to, amount, gasLimit, gasPrice, tipLimit, overallLimit, password, uuid);
|
|
}
|
|
|
|
function transferTokens(from, to, address, amount, gasLimit, gasPrice, tipLimit, overallLimit, password, uuid) {
|
|
return walletModelInst.transactionsView.transferTokens(from, to, address, amount, gasLimit, gasPrice, tipLimit, overallLimit, password, uuid);
|
|
}
|
|
|
|
function copyToClipboard(textToCopy) {
|
|
chatsModelInst.copyToClipboard(textToCopy)
|
|
}
|
|
|
|
function isEnsVerified(pubkey) {
|
|
return contactsModuleInst.isEnsVerified(pubkey);
|
|
}
|
|
|
|
function isContactBlocked(pubkey) {
|
|
return contactsModuleModel.isContactBlocked(pubkey);
|
|
}
|
|
|
|
function alias(pubkey) {
|
|
return contactsModuleInst.alias(pubkey);
|
|
}
|
|
}
|