Add ArtistImageProvider that resolves artist MBIDs to photo URLs: 1. MB url-rels 'image' type → extract Commons filename → thumb URL 2. MB url-rels 'wikidata' type → Wikidata P18 property → thumb URL 3. No image → falls back to initial-letter avatar Wikimedia Commons thumb URLs constructed via MD5 hash bucketing (standard Commons URL scheme). Results cached in explore_cache with 30-day TTL — subsequent lookups are instant. Frontend: search results and artist detail page show artist photos in the circular avatar when available. Images load async and replace the initial-letter fallback on arrival. Artist detail page fires the image fetch alongside the other 4 parallel data loads. Architecture supports adding more sources (fanart.tv, etc.) by extending the resolve() method's source chain.
68 lines
1.9 KiB
JavaScript
Executable File
68 lines
1.9 KiB
JavaScript
Executable File
// @ts-check
|
|
// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL
|
|
// This file is automatically generated. DO NOT EDIT
|
|
|
|
export function BrowseReleaseGroups(arg1) {
|
|
return window['go']['explore']['Service']['BrowseReleaseGroups'](arg1);
|
|
}
|
|
|
|
export function BrowseReleases(arg1) {
|
|
return window['go']['explore']['Service']['BrowseReleases'](arg1);
|
|
}
|
|
|
|
export function CoverArtGroupURL(arg1) {
|
|
return window['go']['explore']['Service']['CoverArtGroupURL'](arg1);
|
|
}
|
|
|
|
export function CoverArtURL(arg1) {
|
|
return window['go']['explore']['Service']['CoverArtURL'](arg1);
|
|
}
|
|
|
|
export function GetArtistImageURL(arg1) {
|
|
return window['go']['explore']['Service']['GetArtistImageURL'](arg1);
|
|
}
|
|
|
|
export function GetThumbnail(arg1, arg2, arg3) {
|
|
return window['go']['explore']['Service']['GetThumbnail'](arg1, arg2, arg3);
|
|
}
|
|
|
|
export function GetThumbnails(arg1) {
|
|
return window['go']['explore']['Service']['GetThumbnails'](arg1);
|
|
}
|
|
|
|
export function LookupArtist(arg1) {
|
|
return window['go']['explore']['Service']['LookupArtist'](arg1);
|
|
}
|
|
|
|
export function LookupReleaseGroup(arg1) {
|
|
return window['go']['explore']['Service']['LookupReleaseGroup'](arg1);
|
|
}
|
|
|
|
export function Search(arg1) {
|
|
return window['go']['explore']['Service']['Search'](arg1);
|
|
}
|
|
|
|
export function SearchArtists(arg1) {
|
|
return window['go']['explore']['Service']['SearchArtists'](arg1);
|
|
}
|
|
|
|
export function SearchRecordings(arg1) {
|
|
return window['go']['explore']['Service']['SearchRecordings'](arg1);
|
|
}
|
|
|
|
export function SearchReleaseGroups(arg1) {
|
|
return window['go']['explore']['Service']['SearchReleaseGroups'](arg1);
|
|
}
|
|
|
|
export function SetContext(arg1) {
|
|
return window['go']['explore']['Service']['SetContext'](arg1);
|
|
}
|
|
|
|
export function SimilarArtists(arg1) {
|
|
return window['go']['explore']['Service']['SimilarArtists'](arg1);
|
|
}
|
|
|
|
export function TopRecordingsForArtist(arg1) {
|
|
return window['go']['explore']['Service']['TopRecordingsForArtist'](arg1);
|
|
}
|