Fix R128 and remaining ID fields to accept both JSON types

- Track.R128 and TrackShort.R128: float64 → JSONR128 (accepts both JSON number and object)
- All remaining primary ID fields: string → JSONID (accepts both JSON string and number)
  Fixed in: account, artist, clip, concert, feed, label, landing, metatag,
  music_history, pin, queue, radio, search, settings, supplement
This commit is contained in:
Mrixs committed 2026-10-18 11:01:26 +03:00
1 parent d0173f795d
commit dbb823ade3
18 files changed
+75 -44

No files matched your search

+2 -2
View File
@@ -8,7 +8,7 @@ import (
// Queue represents a playback queue from the Yandex Music API.
type Queue struct {
BaseModel
ID string `json:"id"`
ID JSONID `json:"id"`
TrackIDs []string `json:"track_ids"`
CurrentIndex int `json:"current_index"`
QueueType string `json:"queue_type"`
@@ -162,7 +162,7 @@ func (qi *QueueItem) DeList(data []byte, c ClientInterface) ([]Model, error) {
// PlayContext represents a play context.
type PlayContext struct {
BaseModel
ID string `json:"id"`
ID JSONID `json:"id"`
Type string `json:"type"` // "playlist", "album", "artist", "radio", "search"
SourceID string `json:"source_id"`
SourceKind string `json:"source_kind"`