QobuzLyricsDocument gains the optional translation member (same content union as original, new in API 10.0), the content DTOs become Serialize+PartialEq so the lyrics cache can persist a translation verbatim, and a lang() accessor exposes the content language. New fixtures cover embedded translations of each type (wsync/lsync/plain), the lyricsUrl envelope with translation_requested, empty translation_langs (feature off), and 9.x documents (no translation). km
24 lines
453 B
JSON
24 lines
453 B
JSON
{
|
|
"album_id": "def456",
|
|
"track_id": 222222222,
|
|
"translation_langs": ["de"],
|
|
"publishers": [],
|
|
"writers": null,
|
|
"original": {
|
|
"type": "plain",
|
|
"lang": "en",
|
|
"lines": [
|
|
{"line": "Plain original one"},
|
|
{"line": "Plain original two"}
|
|
]
|
|
},
|
|
"translation": {
|
|
"type": "plain",
|
|
"lang": "de",
|
|
"lines": [
|
|
{"line": "Einfache Uebersetzung eins"},
|
|
{"line": "Einfache Uebersetzung zwei"}
|
|
]
|
|
}
|
|
}
|