package like

import (
	"tercul/internal/app/analytics"
	"tercul/internal/domain"
)

// Service is the application service for the like aggregate.
type Service struct {
	Commands *LikeCommands
	Queries  *LikeQueries
}

// NewService creates a new like Service.
func NewService(repo domain.LikeRepository, analyticsSvc analytics.Service) *Service {
	return &Service{
		Commands: NewLikeCommands(repo, analyticsSvc),
		Queries:  NewLikeQueries(repo),
	}
}
