1#include <string>
2
3#include <nlohmann/json.hpp>
4
5#include "mtx/events/avatar.hpp"
6
7using json = nlohmann::json;
8
9namespace mtx {
10namespace events {
11namespace state {
12
13void
14from_json(const json &obj, Avatar &avatar)
15{
16 if (obj.find(key: "info") != obj.end())
17 avatar.image_info = obj.at(key: "info").get<mtx::common::ImageInfo>();
18
19 if (obj.find(key: "url") != obj.end() && !obj.at(key: "url").is_null())
20 avatar.url = obj.at(key: "url").get<std::string>();
21}
22
23void
24to_json(json &obj, const Avatar &avatar)
25{
26 obj["info"] = avatar.image_info;
27 obj["url"] = avatar.url;
28}
29
30} // namespace state
31} // namespace events
32} // namespace mtx
33