20 lines
486 B
Go
20 lines
486 B
Go
package repository
|
|
|
|
import (
|
|
"git.sendico.io/tech/sxchnge/shared/database/repository/builder"
|
|
sharedmodel "git.sendico.io/tech/sxchnge/shared/model"
|
|
)
|
|
|
|
// ApplyCursor adds pagination and archival filters to the provided query.
|
|
func ApplyCursor(query builder.Query, cursor *sharedmodel.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
|
|
}
|