package domain

import (
	"time"

	"github.com/google/uuid"
)

// FormField representa um campo do formulário de cadastro
type FormField struct {
	Name     string `json:"name"`
	Label    string `json:"label"`
	Type     string `json:"type"` // email, password, text, tel, etc
	Required bool   `json:"required"`
	Order    int    `json:"order"`
}

// SignupTemplate representa um template de cadastro personalizado
type SignupTemplate struct {
	ID              uuid.UUID   `json:"id"`
	Name            string      `json:"name"`
	Description     string      `json:"description"`
	Slug            string      `json:"slug"`
	FormFields      []FormField `json:"form_fields"`
	EnabledModules  []string    `json:"enabled_modules"` // ["CRM", "ERP", "PROJECTS"]
	RedirectURL     string      `json:"redirect_url,omitempty"`
	SuccessMessage  string      `json:"success_message,omitempty"`
	CustomLogoURL   string      `json:"custom_logo_url,omitempty"`
	CustomPrimaryColor string   `json:"custom_primary_color,omitempty"`
	IsActive        bool        `json:"is_active"`
	UsageCount      int         `json:"usage_count"`
	CreatedBy       uuid.UUID   `json:"created_by"`
	CreatedAt       time.Time   `json:"created_at"`
	UpdatedAt       time.Time   `json:"updated_at"`
}
