- Changed UploadedBy from Guid to Guid? to represent system/scanner uploader - Controller Create method now handles null UploadedBy (skips user validation)
51 lines
1.7 KiB
C#
51 lines
1.7 KiB
C#
using Butter.Types;
|
|
|
|
namespace Butter.Dtos.Asset;
|
|
|
|
/// <summary>
|
|
/// Represents the data needed to create a new asset.
|
|
/// </summary>
|
|
public class AssetCreateDto {
|
|
/// <summary>
|
|
/// Gets or sets the creation date of the asset.
|
|
/// </summary>
|
|
public DateTime CreatedAt { get; set; }
|
|
/// <summary>
|
|
/// Gets or sets the ID of the user who uploaded the asset.
|
|
/// Null for scanner-created assets (system uploader will be used).
|
|
/// </summary>
|
|
public Guid? UploadedBy { get; set; }
|
|
/// <summary>
|
|
/// Gets or sets the type of the asset.
|
|
/// </summary>
|
|
public EAssetType AssetType { get; set; }
|
|
/// <summary>
|
|
/// Gets or sets the visibility level. Defaults to <see cref="EVisibility.Protected"/>.
|
|
/// </summary>
|
|
public EVisibility Visibility { get; set; } = EVisibility.Private;
|
|
/// <summary>
|
|
/// Gets or sets the MIME type of the asset.
|
|
/// </summary>
|
|
public string MimeType { get; set; } = string.Empty;
|
|
/// <summary>
|
|
/// Gets or sets the resolution width in pixels.
|
|
/// </summary>
|
|
public int ResolutionWidth { get; set; }
|
|
/// <summary>
|
|
/// Gets or sets the resolution height in pixels.
|
|
/// </summary>
|
|
public int ResolutionHeight { get; set; }
|
|
/// <summary>
|
|
/// Gets or sets the file size in bytes.
|
|
/// </summary>
|
|
public long FileSize { get; set; }
|
|
/// <summary>
|
|
/// Gets or sets the duration in seconds (for video/audio).
|
|
/// </summary>
|
|
public int? Duration { get; set; }
|
|
/// <summary>
|
|
/// Gets or sets the frame rate (for video).
|
|
/// </summary>
|
|
public int? FrameRate { get; set; }
|
|
}
|