Orientation picker

Landscape vs Portrait

<RadioCard Label="Landscape" Value="landscape" Aspect="landscape" Selected="@(orientation == "landscape")" OnSelect="@(v => orientation = v)"> <Visual> <div class="orientation-preview orientation-preview--landscape"></div> </Visual> </RadioCard>

Theme picker

Light / Dark / System

@foreach (var t in themes) { <RadioCard Label="@t.Label" Value="@t.Key" Aspect="landscape" Selected="@(theme == t.Key)" OnSelect="@(v => theme = v)"> <Visual> <div class="@($"theme-preview theme-preview--{t.Key}")"> <div class="theme-preview__bar"></div> </div> </Visual> </RadioCard> }

Layout picker

Sidebar placement

@foreach (var (key, label) in layouts) { <RadioCard Label="@label" Value="@key" Aspect="landscape" Selected="@(layout == key)" OnSelect="@(v => layout = v)"> <Visual> <div class="@($"layout-preview layout-preview--{key}")"> <div class="layout-preview__sidebar"></div> <div class="layout-preview__main"></div> </div> </Visual> </RadioCard> }

Device picker

Square cards with SVG illustrations

@* Square aspect with custom SVG illustration in the Visual slot *@ <RadioCard Label="Desktop" Value="desktop" Aspect="square" Selected="@(device == "desktop")" OnSelect="@(v => device = v)"> <Visual> <svg viewBox="0 0 64 48" ...>...</svg> </Visual> </RadioCard>

Disabled

Non-interactive card

<RadioCard Label="Unavailable" Aspect="landscape" Disabled="true"> <Visual> <div class="orientation-preview orientation-preview--landscape"></div> </Visual> </RadioCard>
An unhandled error has occurred. Reload 🗙

Rejoining the server...

Rejoin failed... trying again in seconds.

Failed to rejoin.
Please retry or reload the page.

The session has been paused by the server.

Failed to resume the session.
Please retry or reload the page.