Three features wired together: 1. 'In Library' badges on explore search results: CheckLibraryMBIDs Wails binding batch-checks which search result MBIDs exist in the local library. Green badges render on matching artist cards and album cards. 2. Artist images on local artist-details page: Local artist pages now call GetArtistMBID(name) to resolve the MBID from tags, then GetArtistImageURL(mbid) to fetch the cached Wikimedia photo. Falls back to initial-letter avatar. 3. Tier 3 search index uses direct MBIDs from tags: buildTier3Library now reads artists.mbid column (from audio tags) for direct MBID matching, falling back to name matching for untagged artists. Eliminates false matches and catches artists that name matching misses.
196 lines
3.7 KiB
Go
196 lines
3.7 KiB
Go
// Code generated by sqlc. DO NOT EDIT.
|
|
// versions:
|
|
// sqlc v1.30.0
|
|
|
|
package sqlcgen
|
|
|
|
import (
|
|
"database/sql"
|
|
"time"
|
|
)
|
|
|
|
type Artist struct {
|
|
ID int64
|
|
Name string
|
|
}
|
|
|
|
type ArtistCredit struct {
|
|
ID int64
|
|
Text string
|
|
}
|
|
|
|
type ArtistCreditArtist struct {
|
|
ID int64
|
|
ArtistID int64
|
|
CreditID int64
|
|
}
|
|
|
|
type AudioFile struct {
|
|
ID int64
|
|
FilePath string
|
|
LengthMilliseconds int64
|
|
FileTypeID int64
|
|
RecordingID int64
|
|
SampleRate int64
|
|
BitDepth int64
|
|
Channels int64
|
|
Bitrate int64
|
|
FileSize int64
|
|
Basename string
|
|
LibraryID int64
|
|
PlayCount int64
|
|
LastPlayed sql.NullTime
|
|
}
|
|
|
|
type CoverArt struct {
|
|
ID int64
|
|
IsEmbedded bool
|
|
FilePath string
|
|
MimeType string
|
|
}
|
|
|
|
type ExploreCache struct {
|
|
UrlKey string
|
|
Response string
|
|
Mbid sql.NullString
|
|
EntityType sql.NullString
|
|
ExpiresAt time.Time
|
|
CreatedAt time.Time
|
|
}
|
|
|
|
type FileType struct {
|
|
ID int64
|
|
Extension string
|
|
}
|
|
|
|
type Genre struct {
|
|
ID int64
|
|
Name string
|
|
}
|
|
|
|
type Library struct {
|
|
ID int64
|
|
Name string
|
|
Path string
|
|
CreatedAt time.Time
|
|
}
|
|
|
|
type PlayHistory struct {
|
|
ID int64
|
|
AudioFileID int64
|
|
PlayedAt time.Time
|
|
}
|
|
|
|
type PlayerState struct {
|
|
ID int64
|
|
Volume int64
|
|
Muted bool
|
|
LastTrackPath string
|
|
LastPositionSeconds int64
|
|
}
|
|
|
|
type Playlist struct {
|
|
ID int64
|
|
Name string
|
|
IsSmart int64
|
|
SmartRules sql.NullString
|
|
CreatedAt time.Time
|
|
UpdatedAt time.Time
|
|
}
|
|
|
|
type PlaylistTrack struct {
|
|
ID int64
|
|
PlaylistID int64
|
|
AudioFileID sql.NullInt64
|
|
Position int64
|
|
PhantomTitle sql.NullString
|
|
PhantomArtist sql.NullString
|
|
PhantomAlbum sql.NullString
|
|
PhantomDurationMs sql.NullInt64
|
|
PhantomGenre sql.NullString
|
|
PhantomCoverArtPath sql.NullString
|
|
PhantomFilePath sql.NullString
|
|
}
|
|
|
|
type Queue struct {
|
|
ID int64
|
|
SourcePlaylistID sql.NullInt64
|
|
CurrentPosition int64
|
|
ShuffleMode bool
|
|
RepeatMode string
|
|
ShuffleOrder sql.NullString
|
|
}
|
|
|
|
type QueueTrack struct {
|
|
ID int64
|
|
AudioFileID int64
|
|
Position int64
|
|
}
|
|
|
|
type Recording struct {
|
|
ID int64
|
|
Name string
|
|
ArtistCreditID int64
|
|
TrackNumber sql.NullInt64
|
|
DiscNumber sql.NullInt64
|
|
Year sql.NullInt64
|
|
Genre sql.NullString
|
|
Composer sql.NullString
|
|
Lyrics sql.NullString
|
|
Comment sql.NullString
|
|
}
|
|
|
|
type RecordingGenre struct {
|
|
ID int64
|
|
RecordingID int64
|
|
GenreID int64
|
|
}
|
|
|
|
type ReleaseGroup struct {
|
|
ID int64
|
|
Name string
|
|
CoverArtID sql.NullInt64
|
|
AlbumArtistCreditID sql.NullInt64
|
|
Year sql.NullInt64
|
|
TotalTracks sql.NullInt64
|
|
TotalDiscs sql.NullInt64
|
|
}
|
|
|
|
type ReleaseGroupRecording struct {
|
|
ID int64
|
|
ReleaseGroupID int64
|
|
RecordingID int64
|
|
TrackNumber sql.NullInt64
|
|
DiscNumber sql.NullInt64
|
|
}
|
|
|
|
type SearchIndex struct {
|
|
FilePath string
|
|
Title string
|
|
Artist string
|
|
Album string
|
|
}
|
|
|
|
type TrackMetadatum struct {
|
|
ID int64
|
|
FilePath string
|
|
LengthMilliseconds int64
|
|
Title string
|
|
ArtistName string
|
|
TrackNumber sql.NullInt64
|
|
DiscNumber sql.NullInt64
|
|
Album string
|
|
Genre string
|
|
Year int64
|
|
Composer string
|
|
FileType string
|
|
SampleRate int64
|
|
BitDepth int64
|
|
Channels int64
|
|
Bitrate int64
|
|
FileSize int64
|
|
LibraryID int64
|
|
PlayCount int64
|
|
LastPlayed sql.NullTime
|
|
}
|