Redeon.SuperSiteEngineCore.Web.Eltheon.Core.Features.AdminDashboard
AdminDashboard v3 is the feature-owned Assan RCL, API, dashboard domain, and snapshot-composition package for Eltheon administration.
Surfaces
/Adminis the RCL-owned default dashboard after cutover./Admin/Dashboardslists immutable system presets and owner-isolated personal dashboards./Admin/Dashboards/{id}hosts view and designer modes./api/v1/admin/dashboardexposes DTO-only catalog, dashboard, preset overlay, default, snapshot, preview, and diagnostic endpoints.
The browser surface uses ApexCharts behind a private adapter and EltheonJS Full for API access, UI binding, state, events, templating, lifecycle, realtime, scheduling, storage-backed drafts, and PageManager integration. Public .NET models do not expose ApexCharts types.
Cards use independent 12/6/1 width and 1-12 height spans. Their bodies scroll
internally, while ApexCharts instances follow the available body through a
ResizeObserver and are destroyed during rerender or page teardown. View and
designer text is localized through en-US and de-DE resources.
The card inspector edits a local EltheonJS Storage draft: title, compatible renderer, desktop/tablet width, height, unit conversion, automatic or 0-6 digit rounding, notation, optional range, structured provider/shape/item limit, and up to four bounded metric queries. Preview executes and renders the actual selection before persistence.
Persistence and concurrency
Personal dashboards, overlays, personal preferences, and the global default use
the private admindashboard Storage space. User subjects are represented in
object keys only by their complete lowercase SHA-256 hash. The package does not
use a database and does not own EF migrations.
Every mutable document carries a numeric revision. Mutations require If-Match;
storage writes are document-locked, size-bounded to 1 MiB, and use the Storage
safe-write policy.
Registration
builder.Services.AddEltheonAdminDashboard();
builder.Services
.AddRazorPages()
.AddEltheonAdminDashboardApplicationPart();
The package references only Core.Abstractions and Core.WebUi. Metric, structured-data, event, realtime, and Storage implementations are discovered through neutral contracts. It has no direct dependency on Metrik, Adviser, Service, SignalR, Identity, or Plugins.
Limits
The defaults are 48 widgets, ten personal dashboards per user, four metric queries per widget, 100 structured items, three seconds per widget, ten seconds per snapshot, eight parallel providers, ten seconds of snapshot cache, and a minimum 15-second browser refresh.
Default preset v2 composes the neutral runtime provider plus feature-owned StorageManagement, Identity, Auditing, and Adviser contributors. Optional uninstalled or unauthorized providers are omitted with empty sections; a registered failing provider remains visible as an isolated error.