menu_bookDocumentation

s&box WorkshopSortMode: Workshop sorting modes

calendar_today May 12, 2026 schedule ~1 min read person PatrickJr verified 50

WorkshopSortMode Enum

WorkshopSortMode is a friendly enum for Storage/Workshop queries in s&box. It wraps the underlying Storage.SortOrder enum with a simpler API, providing an extension method ToSortOrder() to convert to the Storage.SortOrder value. This abstraction makes workshop queries more readable and easier to use.

Enum Values

CSHARP
public enum WorkshopSortMode
{
    Popular,
    Newest,
    Trending
}

Extension Method

CSHARP
public static class WorkshopSortModeExtensions
{
    public static Storage.SortOrder ToSortOrder(this WorkshopSortMode mode)
    {
        return mode switch
        {
            WorkshopSortMode.Popular => Storage.SortOrder.RankedByVote,
            WorkshopSortMode.Newest => Storage.SortOrder.RankedByPublicationDate,
            WorkshopSortMode.Trending => Storage.SortOrder.RankedByTrend,
            _ => Storage.SortOrder.RankedByVote
        };
    }
}

Usage

CSHARP
// Convert to Storage.SortOrder
var mode = WorkshopSortMode.Trending;
var sortOrder = mode.ToSortOrder(); // Storage.SortOrder.RankedByTrend

// Use in workshop queries
var items = await Storage.FindAsync(sortOrder: WorkshopSortMode.Newest.ToSortOrder());

Notes

  • Wraps Storage.SortOrder for a friendlier API
  • Used by the workshop browser for sorting options
  • Default fallback is RankedByVote for unknown values
  • Popular maps to RankedByVote (sorts by upvotes)
  • Newest maps to RankedByPublicationDate (sorts by upload date)
  • Trending maps to RankedByTrend (sorts by recent popularity)
  • This abstraction hides the underlying Storage API details
Was this helpful?