`;
+ if (data.albums.size > 0) {
+ html += `
`;
+ for (const [an, ad] of data.albums) {
+ html += `
`;
+ html += `
${ad.image ? `

` : ''}
`;
+ html += `
${escapeHtml(an)}
${ad.tracks.length} tracks
`;
+ html += `
`;
+ html += `
`;
+ }
+ html += `
`;
+ }
+ if (data.singles.length > 0) {
+ html += `
`;
+ for (const s of data.singles) {
+ html += `
`;
+ if (s.image) html += `

`;
+ html += `
${escapeHtml(s.track)}`;
+ html += `
`;
+ html += `
`;
+ }
+ html += `
`;
+ }
+ html += `