package admin import ( "context" "errors" "github.com/google/uuid" "github.com/jackc/pgx/v5" "github.com/yuxingu/digital-psychology/apps/api/internal/repository" ) var ErrFunnelDefinitionNotFound = errString("funnel definition not found") // ListFunnelDefinitions returns catalog. func (s *Service) ListFunnelDefinitions(ctx context.Context) ([]repository.FunnelDefinitionRow, error) { items, err := s.Repo.ListFunnelDefinitions(ctx) if err != nil { return nil, err } if items == nil { items = []repository.FunnelDefinitionRow{} } return items, nil } // GetFunnelDefinition loads one. func (s *Service) GetFunnelDefinition(ctx context.Context, id uuid.UUID) (*repository.FunnelDefinitionRow, error) { row, err := s.Repo.GetFunnelDefinition(ctx, id) if errors.Is(err, pgx.ErrNoRows) { return nil, ErrFunnelDefinitionNotFound } return row, err }