#include "MatrixClient.h" #include #include #include #include #include "nlohmann/json.hpp" #include Q_DECLARE_METATYPE(mtx::responses::Login) Q_DECLARE_METATYPE(mtx::responses::Messages) Q_DECLARE_METATYPE(mtx::responses::Notifications) Q_DECLARE_METATYPE(mtx::responses::Rooms) Q_DECLARE_METATYPE(mtx::responses::Sync) Q_DECLARE_METATYPE(mtx::responses::JoinedGroups) Q_DECLARE_METATYPE(mtx::responses::GroupProfile) Q_DECLARE_METATYPE(nlohmann::json) Q_DECLARE_METATYPE(std::string) Q_DECLARE_METATYPE(std::vector) Q_DECLARE_METATYPE(std::vector) namespace { auto client_ = std::make_shared(); } namespace http { mtx::http::Client * client() { return client_.get(); } bool is_logged_in() { return !client_->access_token().empty(); } void init() { qRegisterMetaType(); qRegisterMetaType(); qRegisterMetaType(); qRegisterMetaType(); qRegisterMetaType(); qRegisterMetaType(); qRegisterMetaType(); qRegisterMetaType(); qRegisterMetaType(); qRegisterMetaType>(); qRegisterMetaType>(); qRegisterMetaType>("std::map"); } } // namespace http