1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
const utils = @import("../utils.zig");
const User = @This();
id: i64,
is_bot: bool,
first_name: []const u8,
last_name: ?[]const u8 = null,
username: ?[]const u8 = null,
language_code: ?[]const u8 = null,
is_premium: bool = false,
added_to_attachment_menu: bool = false,
can_join_groups: bool = false,
can_read_all_group_messages: bool = false,
supports_inline_queries: bool = false,
can_connect_to_business: bool = false,
pub fn writeFormattedName(self: User, w: anytype) !void {
try w.print("<a href=\"tg://user?id={}\"><i>", .{self.id});
try utils.escapeXml(w, self.first_name);
if (self.last_name) |last_name| {
try w.writeByte(' ');
try utils.escapeXml(w, last_name);
}
try w.writeAll("</i>");
if (self.username) |username| {
try w.writeAll(" @");
try utils.escapeXml(w, username);
}
try w.print("</a> [<code>{}</code>]", .{self.id});
}
|