using System.Net; using YandexMusic.API.Models.Playlist; namespace YandexMusic.API.Requests.Playlist; internal class YPlaylistChangeBuilder : YMusicRequestBuilder changes)> { public YPlaylistChangeBuilder(YandexMusicApi api) : base(api) { } protected override string Method => WebRequestMethods.Http.Post; protected override string PathTemplate => "users/{uid}/playlists/{kind}/change"; protected override Dictionary GetSubstitutions((YPlaylist playlist, IEnumerable changes) tuple) => new() { { "uid", Api.Storage.User.Uid }, { "kind", tuple.playlist.Kind } }; protected override HttpContent? GetContent((YPlaylist playlist, IEnumerable changes) tuple) => new FormUrlEncodedContent(new Dictionary { { "kind", tuple.playlist.Kind }, { "revision", tuple.playlist.Revision.ToString() }, { "diff", SerializeJson(tuple.changes) } }); }