A lot of changes

This commit is contained in:
2026-03-21 03:45:29 +01:00
parent 32d4c21dd7
commit 4a78455947
23 changed files with 456 additions and 96 deletions
@@ -10,7 +10,8 @@ namespace Musify.Application.Configuration
{
serviceDescriptors
.AddValidatedConfiguration<ApplicationStorageConfiguration>(configuration, ApplicationStorageConfiguration.SectionName)
.AddValidatedConfiguration<PlayListConfiguration>(configuration, PlayListConfiguration.SectionName);
.AddValidatedConfiguration<PlayListConfiguration>(configuration, PlayListConfiguration.SectionName)
.AddValidatedConfiguration<TrackConfiguration>(configuration, TrackConfiguration.SectionName);
return serviceDescriptors;
}
@@ -7,14 +7,17 @@ namespace Musify.Application.Configuration
public const string SectionName = "PlayListConfiguration";
[Required]
public Routes Routes { get; set; } = new Routes();
public PlayListRoutes Routes { get; set; } = new PlayListRoutes();
[Required]
public PicturesSizes PicturesSizes { get; set; } = new PicturesSizes();
public PlayListPicturesSizes PicturesSizes { get; set; } = new PlayListPicturesSizes();
}
public class Routes
public class PlayListRoutes
{
[Required]
public string ParentFolders { get; set; } = "PlayLists";
[Required]
public string OriginalPictures { get; set; } = "OriginalPictures";
@@ -37,7 +40,7 @@ namespace Musify.Application.Configuration
public string PresetLargePicture { get; set; } = "PresetLargePicture.webp";
}
public class PicturesSizes
public class PlayListPicturesSizes
{
[Range(1, 1024)]
public int SmallPictureWidth { get; set; } = 128;
@@ -0,0 +1,63 @@
using System.ComponentModel.DataAnnotations;
namespace Musify.Application.Configuration
{
public class TrackConfiguration
{
public const string SectionName = "TrackConfiguration";
[Required]
public TrackRoutes Routes { get; set; } = new TrackRoutes();
[Required]
public TrackPicturesSizes PicturesSizes { get; set; } = new TrackPicturesSizes();
}
public class TrackRoutes
{
[Required]
public string ParentFolder { get; set; } = "Tracks";
[Required]
public string OriginalPictures { get; set; } = "OriginalTracks";
[Required]
public string SmallPictures { get; set; } = "SmallTracks";
[Required]
public string MediumPictures { get; set; } = "MediumTracks";
[Required]
public string LargePictures { get; set; } = "LargeTracks";
[Required]
public string PresetSmallPicture { get; set; } = "PresetSmallPicture.webp";
[Required]
public string PresetMediumPicture { get; set; } = "PresetMediumPicture.webp";
[Required]
public string PresetLargePicture { get; set; } = "PresetLargePicture.webp";
}
public class TrackPicturesSizes
{
[Range(1, 1024)]
public int SmallPictureWidth { get; set; } = 128;
[Range(1, 1024)]
public int SmallPictureHeight { get; set; } = 128;
[Range(1, 1024)]
public int MediumPictureWidth { get; private set; } = 256;
[Range(1, 1024)]
public int MediumPictureHeight { get; private set; } = 256;
[Range(1, 1024)]
public int LargePictureWidth { get; private set; } = 512;
[Range(1, 1024)]
public int LargePictureHeight { get; private set; } = 512;
}
}