diff --git a/src/types.zig b/src/types.zig index e8ac141..898943a 100644 --- a/src/types.zig +++ b/src/types.zig @@ -44,34 +44,40 @@ pub const SpotifyScrobble = struct { }; pub const LastFMWeb = struct { - track: []struct { - artist: LastFMWebHyperlinkData, - album: LastFMWebHyperlinkData, - name: []const u8, - mbid: []const u8, - image: struct { - size: []const u8, - @"#text": []const u8, - }, - date: struct { - uts: []const u8, - @"#text": []const u8, + recenttracks: struct { + track: []struct { + artist: LastFMWebHyperlinkData, + album: ?LastFMWebHyperlinkData = null, + name: []const u8, + mbid: ?[]const u8 = null, + image: ?[]struct { + size: []const u8, + @"#text": []const u8, + } = null, + date: struct { + uts: []const u8, + @"#text": []const u8, + }, + @"@attr": ?struct { + nowplaying: ?[]const u8 = null, + } = null, + url: ?[]const u8 = null, }, + @"@attr": LastFMWebAttr, }, - @"@attr": LastFMWebAttr, }; pub const LastFMWebAttr = struct { - perPage: u32, - totalPages: u32, - page: u32, - user: []const u8, - total: u32, + perPage: ?[]const u8 = null, + totalPages: []const u8, + page: ?[]const u8 = null, + user: ?[]const u8 = null, + total: ?[]const u8 = null, }; pub const LastFMWebHyperlinkData = struct { - mbid: []const u8, - @"#text": []const u8, + mbid: ?[]const u8 = null, + @"#text": ?[]const u8 = null, }; pub const Rule = struct {