AppSurface Search
API Reference

TagHelpers

Type

AppSurfaceThemeHeadTagHelper

Source

Emits AppSurface color-scheme metadata and critical CSS inside a document head.

Remarks

Render <appsurface-theme-head nonce="..." /> after explicitly registering the Web theme integration. The optional nonce is HTML-encoded and applied to the live inline critical style. When the host explicitly registers browser preferences through AppSurfaceWebThemingServiceCollectionExtensions.AddAppSurfaceWebThemePreferences(Microsoft.Extensions.DependencyInjection.IServiceCollection, System.Action{Theming.AppSurfaceThemePreferenceOptions}?), the same nonce is also applied to the deterministic preference bootstrap emitted before that stylesheet. The meta element never receives a nonce. The bootstrap never hides page content and binds only consumer-owned controls marked with data-as-theme-preference-control after the document is ready.

Property

Nonce

string? Nonce { get; set; } Source

Gets or sets the optional CSP nonce for live inline preference and critical-style payloads.

Property

ViewContext

ViewContext ViewContext { get; set; } Source

Gets or sets the MVC view context for request-scoped duplicate suppression.

Type

AppSurfaceThemeRootTagHelper

Source

Applies safe AppSurface theme identity and color-scheme metadata to an opted-in HTML root.

Remarks

Use <html appsurface-theme-root> after explicitly registering AppSurfaceWebThemingServiceCollectionExtensions.AddAppSurfaceWebTheming(Microsoft.Extensions.DependencyInjection.IServiceCollection) or AppSurfaceWebThemingServiceCollectionExtensions.AddAppSurfaceWebThemeSelection(Microsoft.Extensions.DependencyInjection.IServiceCollection). Existing attributes are preserved. An existing style attribute retains its declarations and receives the generated color-scheme declaration only when it does not already name color-scheme. Set appsurface-theme-root="false" when the embedding layout owns a fixed color-scheme and must not emit host theme metadata.

Property

IsEnabled

bool IsEnabled { get; set; } Source

Gets or sets whether the opt-in root marker should apply the registered theme document. Defaults to true.

Remarks

Set this to false when an embedding layout owns a complete fixed color-scheme contract and must not emit potentially conflicting host-theme metadata. The marker attribute is removed without changing any other existing root attributes.

Type

AppSurfacePwaHeadTagHelper

Source

Emits AppSurface-managed PWA head metadata for MVC and Razor layouts.

Remarks

Render <appsurface:pwa-head /> inside the document <head> after enabling PwaOptions. The helper emits install metadata only when PwaOptions.Enabled is enabled, emits inert worker path/scope metadata for active worker capabilities, loads the inert registration helper only when push is enabled, and loads the independent badging helper only when PwaBadgingOptions.Enabled is enabled. It never registers a worker, displays an install prompt, requests notification permission, creates a push subscription, owns an attention count, or claims that an operating system displayed a badge.

Property

ViewContext

ViewContext ViewContext { get; set; } Source

Gets or sets the view context supplied by MVC.