package repository

import (
	"github.com/tech/sendico/pkg/db/repository/builder"
	"github.com/tech/sendico/pkg/model"
)

// ApplyCursor adds pagination and archival filters to the provided query.
func ApplyCursor(query builder.Query, cursor *model.ViewCursor) builder.Query {
	if cursor == nil {
		return query
	}

	query = query.Limit(cursor.Limit)
	query = query.Offset(cursor.Offset)
	query = query.Archived(cursor.IsArchived)

	return query
}
