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.
38 lines
1.4 KiB
TypeScript
38 lines
1.4 KiB
TypeScript
// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL
|
|
// This file is automatically generated. DO NOT EDIT
|
|
import {explore} from '../models';
|
|
import {context} from '../models';
|
|
|
|
export function BrowseReleaseGroups(arg1:string):Promise<Array<explore.MBReleaseGroup>>;
|
|
|
|
export function BrowseReleases(arg1:string):Promise<Array<explore.MBRelease>>;
|
|
|
|
export function CoverArtGroupURL(arg1:string):Promise<string>;
|
|
|
|
export function CoverArtURL(arg1:string):Promise<string>;
|
|
|
|
export function GetArtistImageURL(arg1:string):Promise<string>;
|
|
|
|
export function GetThumbnail(arg1:string,arg2:string,arg3:string):Promise<string>;
|
|
|
|
export function GetThumbnails(arg1:Array<explore.ThumbnailRequest>):Promise<Record<string, string>>;
|
|
|
|
export function LookupArtist(arg1:string):Promise<explore.MBArtist>;
|
|
|
|
export function LookupReleaseGroup(arg1:string):Promise<explore.MBReleaseGroup>;
|
|
|
|
export function Search(arg1:string):Promise<explore.MBSearchResult>;
|
|
|
|
export function SearchArtists(arg1:string):Promise<Array<explore.MBArtist>>;
|
|
|
|
export function SearchRecordings(arg1:string):Promise<Array<explore.MBRecording>>;
|
|
|
|
export function SearchReleaseGroups(arg1:string):Promise<Array<explore.MBReleaseGroup>>;
|
|
|
|
export function SetContext(arg1:context.Context):Promise<void>;
|
|
|
|
export function SimilarArtists(arg1:string):Promise<Array<explore.LBSimilarArtist>>;
|
|
|
|
export function TopRecordingsForArtist(arg1:string):Promise<Array<explore.LBTopRecording>>;
|
|
|