add support for Auto Prerendering
This commit is contained in:
		| @ -1,13 +1,17 @@ | ||||
| @namespace Oqtane.UI | ||||
| @inject SiteState SiteState | ||||
|  | ||||
| @if (PageState.RenderMode == RenderModes.Interactive || ModuleState.RenderMode == RenderModes.Static) | ||||
| @if (_comment != null) | ||||
| { | ||||
|     <RenderModeBoundary ModuleState="@ModuleState" PageState="@PageState" SiteState="@SiteState" /> | ||||
| } | ||||
| else | ||||
| { | ||||
|     <RenderModeBoundary ModuleState="@ModuleState" PageState="@PageState" SiteState="@SiteState" @rendermode="InteractiveRenderMode.GetInteractiveRenderMode(PageState.Site.Runtime, ModuleState.Prerender ?? PageState.Site.Prerender)" /> | ||||
|     @((MarkupString)_comment) | ||||
|     @if (PageState.RenderMode == RenderModes.Interactive || ModuleState.RenderMode == RenderModes.Static) | ||||
|     { | ||||
|         <RenderModeBoundary ModuleState="@ModuleState" PageState="@PageState" SiteState="@SiteState" /> | ||||
|     } | ||||
|     else | ||||
|     { | ||||
|         <RenderModeBoundary ModuleState="@ModuleState" PageState="@PageState" SiteState="@SiteState" @rendermode="InteractiveRenderMode.GetInteractiveRenderMode(PageState.Site.Runtime, _prerender)" /> | ||||
|     } | ||||
| } | ||||
|  | ||||
| @code { | ||||
| @ -20,6 +24,24 @@ else | ||||
|     [CascadingParameter] | ||||
|     private Module ModuleState { get; set; } | ||||
|  | ||||
|     private bool _prerender; | ||||
|     private string _comment; | ||||
|  | ||||
|     protected override void OnParametersSet() | ||||
|     { | ||||
|         _prerender = ModuleState.Prerender ?? (PageState.Site.Prerender && PageState.User == null); | ||||
|         _comment = "<!-- rendermode: "; | ||||
|         if (PageState.RenderMode == RenderModes.Static && ModuleState.RenderMode == RenderModes.Static) | ||||
|         { | ||||
|             _comment += RenderModes.Static; | ||||
|         } | ||||
|         else | ||||
|         { | ||||
|             _comment += $"{RenderModes.Interactive}:{PageState.Runtime} - prerender: {_prerender}"; | ||||
|         } | ||||
|         _comment += " -->"; | ||||
|     } | ||||
|  | ||||
|  | ||||
|     [Obsolete("AddModuleMessage is deprecated. Use AddModuleMessage in ModuleBase instead.", false)] | ||||
|     public void AddModuleMessage(string message, MessageType type) | ||||
|  | ||||
| @ -10,7 +10,6 @@ | ||||
|         { | ||||
|             @if (ModuleType != null) | ||||
|             { | ||||
|                 @((MarkupString)$"<!-- rendermode: {((PageState.RenderMode == RenderModes.Static && ModuleState.RenderMode == RenderModes.Static) ? RenderModes.Static : RenderModes.Interactive + ":" + PageState.Runtime)} - prerender: {ModuleState.Prerender ?? PageState.Site.Prerender} -->") | ||||
|                 <ModuleMessage @ref="moduleMessageTop" Message="@_messageContent" Type="@_messageType" /> | ||||
|                 @DynamicComponent | ||||
|                 @if (_progressIndicator) | ||||
|  | ||||
		Reference in New Issue
	
	Block a user
	 sbwalker
					sbwalker