package org.raddatz.familienarchiv.document.annotation;

import jakarta.validation.constraints.DecimalMax;
import jakarta.validation.constraints.DecimalMin;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;

/**
 * Partial update payload for annotation position and size.
 * All fields are optional — only non-null values are applied.
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
public class UpdateAnnotationDTO {

    @DecimalMin("0.0") @DecimalMax("1.0")
    private Double x;

    @DecimalMin("0.0") @DecimalMax("1.0")
    private Double y;

    @DecimalMin("0.01") @DecimalMax("1.0")
    private Double width;

    @DecimalMin("0.01") @DecimalMax("1.0")
    private Double height;
}
