package com.social.media.interfaces.web.dto.content;

import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import jakarta.validation.constraints.Size;
import java.time.LocalDateTime;
import java.util.List;

/**
 * Request DTO for creating content
 */
public record CreateContentRequest(
    @NotNull(message = "Company ID is required")
    Long companyId,
    
    @NotBlank(message = "Content text is required")
    @Size(max = 2000, message = "Content text must not exceed 2000 characters")
    String text,
    
    @Size(max = 100, message = "Title must not exceed 100 characters")
    String title,
    
    @Size(max = 500, message = "Description must not exceed 500 characters")
    String description,
    
    List<String> mediaUrls,
    
    List<String> hashtags,
    
    @NotBlank(message = "Content type is required")
    String contentType,
    
    LocalDateTime scheduledDateTime,
    
    List<Long> socialAccountIds,
    
    boolean isScheduled
) {}
