diff --git a/Aetheria.State.Verify/Program.cs b/Aetheria.State.Verify/Program.cs index 2510647e8..854903451 100644 --- a/Aetheria.State.Verify/Program.cs +++ b/Aetheria.State.Verify/Program.cs @@ -4718,10 +4718,10 @@ static void RequireRuntimeMenuTabsUseEveSurface(string root) "HandleTabSurfaceCommand(", "AetheriaEveUnitySurfaceHost.RenderRuntime(", "AetheriaEveUnitySurfaceHost.Hide(_tabSurfaceDocument)", - "AetheriaRuntimeMenuTabsSurfaceBuilder.Build(ProjectTabSurface())", - "ProjectTabSurface(", - "AetheriaRuntimeMenuTabsSurfaceBuilder.Project(", - "new AetheriaRuntimeMenuTabProjectionOption(", + "AetheriaRuntimeMenuTabsSurfaceBuilder.Build(ComposeTabSurface())", + "ComposeTabSurface(", + "AetheriaRuntimeMenuTabsSurfaceBuilder.Compose(", + "new AetheriaRuntimeMenuTabModelOption(", "ResolveVisibleTabs(", "SetObservedEntityIndex(AetheriaUnityObservedEntityIndex observedEntityIndex)", "AetheriaRuntimeObservedDockingState", @@ -4782,6 +4782,9 @@ static void RequireRuntimeMenuTabsUseEveSurface(string root) "new EveUiToolkitSurfaceLowerer()", "string.Equals(request.Command, AetheriaRuntimeMenuTabsSurfaceBuilder.CommandFor(", "ProjectTabSurfaceState(", + "ProjectTabSurface(", + "AetheriaRuntimeMenuTabsSurfaceBuilder.Project(", + "new AetheriaRuntimeMenuTabProjectionOption(", "new AetheriaRuntimeMenuTabSurfaceEntry(", "private static string TabKey(" }; @@ -4808,9 +4811,9 @@ static void RequireRuntimeMenuTabsUseEveSurface(string root) var requiredProjectionBuilderSymbols = new[] { - "public sealed class AetheriaRuntimeMenuTabProjectionOption", + "public sealed class AetheriaRuntimeMenuTabModelOption", "public static string NormalizeTabKey(string tabKey)", - "public static AetheriaRuntimeMenuTabsSurfaceState Project(", + "public static AetheriaRuntimeMenuTabsSurfaceState Compose(", "public int Order { get; }", ".OrderBy(tab => tab.Order)", "new AetheriaRuntimeMenuTabSurfaceEntry(", diff --git a/Assets/Scripts/UI/Menu/MenuPanel.cs b/Assets/Scripts/UI/Menu/MenuPanel.cs index 710ea68bd..aef5cc1d1 100644 --- a/Assets/Scripts/UI/Menu/MenuPanel.cs +++ b/Assets/Scripts/UI/Menu/MenuPanel.cs @@ -112,7 +112,7 @@ public class MenuPanel : MonoBehaviour transform, _tabSurfaceDocument, "Aetheria Runtime Menu Tabs Surface", - AetheriaRuntimeMenuTabsSurfaceBuilder.Build(ProjectTabSurface()), + AetheriaRuntimeMenuTabsSurfaceBuilder.Build(ComposeTabSurface()), HandleTabSurfaceCommand, _tabSurfaceChrome); } @@ -146,13 +146,13 @@ public class MenuPanel : MonoBehaviour AetheriaEveUnitySurfaceHost.Hide(_tabSurfaceDocument); } - private AetheriaRuntimeMenuTabsSurfaceState ProjectTabSurface() + private AetheriaRuntimeMenuTabsSurfaceState ComposeTabSurface() { var visibleTabs = ResolveVisibleTabs(); - return AetheriaRuntimeMenuTabsSurfaceBuilder.Project( + return AetheriaRuntimeMenuTabsSurfaceBuilder.Compose( ToRuntimeTabKey(CurrentTab), visibleTabs - .Select(tabBinding => new AetheriaRuntimeMenuTabProjectionOption( + .Select(tabBinding => new AetheriaRuntimeMenuTabModelOption( ToRuntimeTabKey(tabBinding.Tab), GetTabLabel(tabBinding), (int)tabBinding.Tab)) diff --git a/Packages/org.gamecult.aetheria.state/Runtime/AetheriaRuntimeMenuTabsSurfaceBuilder.cs b/Packages/org.gamecult.aetheria.state/Runtime/AetheriaRuntimeMenuTabsSurfaceBuilder.cs index fe8abbd92..4353dfcf4 100644 --- a/Packages/org.gamecult.aetheria.state/Runtime/AetheriaRuntimeMenuTabsSurfaceBuilder.cs +++ b/Packages/org.gamecult.aetheria.state/Runtime/AetheriaRuntimeMenuTabsSurfaceBuilder.cs @@ -36,9 +36,9 @@ namespace GameCult.Aetheria.State.Verse public string UpdatedAtUtc { get; } } - public sealed class AetheriaRuntimeMenuTabProjectionOption + public sealed class AetheriaRuntimeMenuTabModelOption { - public AetheriaRuntimeMenuTabProjectionOption(string key, string label, int order) + public AetheriaRuntimeMenuTabModelOption(string key, string label, int order) { Key = key ?? ""; Label = label ?? ""; @@ -66,15 +66,15 @@ namespace GameCult.Aetheria.State.Verse return $"aetheria.runtime_menu.tab.{NormalizeTabKey(tabKey)}"; } - public static AetheriaRuntimeMenuTabsSurfaceState Project( + public static AetheriaRuntimeMenuTabsSurfaceState Compose( string currentTabKey, - IEnumerable visibleTabs, + IEnumerable visibleTabs, string updatedAtUtc) { var normalizedCurrent = NormalizeTabKey(currentTabKey); return new AetheriaRuntimeMenuTabsSurfaceState( normalizedCurrent, - (visibleTabs ?? Array.Empty()) + (visibleTabs ?? Array.Empty()) .Where(tab => tab != null) .OrderBy(tab => tab.Order) .ThenBy(tab => NormalizeTabKey(tab.Key), StringComparer.Ordinal)