39 lines
1.4 KiB
C#
39 lines
1.4 KiB
C#
using System.ComponentModel.DataAnnotations;
|
|
using SWAD.API.Consts.Enums;
|
|
|
|
namespace SWAD.API.Controllers.DTOs;
|
|
|
|
/// <summary>
|
|
/// Track directly from query
|
|
/// </summary>
|
|
/// <param Name="Name">Name of track</param>
|
|
/// <param Name="Artist">Artist of track</param>
|
|
/// <param Name="AlbumObject">AlbumObject of track</param>
|
|
/// <param Name="Service">Service provider</param>
|
|
public record TrackDto([Required] string Name, [Required] string Artist, string Album, MusicService Service);
|
|
|
|
/// <summary>
|
|
/// Track from service link
|
|
/// </summary>
|
|
/// <param Name="Link">
|
|
/// Spotify example: https://open.spotify.com/track/2K7xn816oNHJZ0aVqdQsha
|
|
/// Tidal example: https://tidal.com/track/294942856
|
|
/// Yandex.Music example: https://music.yandex.by/Albums/25851387/track/113810002 P.S.: Будда какая параша, даже тут
|
|
/// яндекс отличился
|
|
/// </param>
|
|
/// <param Name="Service">
|
|
/// </param>
|
|
public record TrackLinkDto([Required] string Link, [Required] MusicService Service);
|
|
|
|
/// <summary>
|
|
/// Service Name
|
|
/// </summary>
|
|
/// <param Name="Service">Enum MusicService</param>
|
|
/// <param Name="Name">MusicService.ToString</param>
|
|
public record ServiceDto(MusicService Service, string Name);
|
|
|
|
/// <summary>
|
|
/// Result of GetLink method
|
|
/// </summary>
|
|
/// <param Name="Link"></param>
|
|
public record LinkResultDto(string? Link); |