@using MenuProject.MenuUI.Components @using MenuProject.MenuUI.Layout @using Sandbox; @using Sandbox.UI; @using MenuProject.UI; @page "/maps/all" @inherits Panel @if (Result?.Properties is not null && Result.Properties.Length > 0 ) { } @if ( Result?.Facets is not null) { foreach (var facet in Result.Facets) { } } @code { string filterOrder = "trending"; TextEntry SearchEntry = default; List SelectedTags = new(); Dictionary SelectedCategory = new(); PackageList PackageList = default; Package.FindResult Result => PackageList?.Result; void OnPackageSelected(Package package) { package.OpenModal(); } void OnOrderChanged(string value) { filterOrder = value; } void OnMenu(Package package) { MenuHelpers.OpenPackageMenu(this, package); } string GetQuery() { string tagString = SearchEntry?.Text ?? ""; foreach (var tag in SelectedTags) { tagString += $" +{tag}"; } foreach (var cat in SelectedCategory) { tagString += $" {cat.Key}:{cat.Value}"; } return tagString; } protected override int BuildHash() => System.HashCode.Combine(Result, GetQuery(), filterOrder); }