Dashboard widget (a dashboard:widgets plugin): a master sees the fleet — the site total with an
active/inactive split, a per-mode breakdown (API Only / Phoenix Only / Hybrid) and the average
compiled bundle size (gzip CSS + JS); a tenant admin sees the same identity card scoped to their own
site. Site counts come from MishkaCmsCore.Runtime.States.SiteState (ETS) and bundle sizes from
MishkaCmsCore.Runtime.States.AssetsState (ETS).
See MishkaCmsCore.Dashboard.Widget for the shared card primitives this composes.
A mode dot's colour is one of three, so dot_class/1 writes each out whole and it can be a class.
A bundle bar's width cannot: pct/2 derives it from the measured bundle, and Tailwind generates
rules from SOURCE TEXT, so a class assembled around a value that only exists at render time gets no
rule at all and the bar draws with no width. That width rides an inline style attribute, which is
why the policy in MishkaCmsCore.Runtime.Plugs.SecurityHeaders keeps style-src-attr permitted —
see MishkaCmsWeb.InterpolatedClassTest.
Summary
Functions
Returns a specification to start this module under a supervisor.
Callback implementation for MishkaInstaller.Event.Hook.enable/0.
Callback implementation for MishkaInstaller.Event.Hook.get/0.
Optional. See MishkaInstaller.Event.Hook.health_check/0. Override to report health.
Loads this widget's data off the dashboard render (in a Task), scoped to the viewer.
Optional. See MishkaInstaller.Event.Hook.on_dependency_error/1. Override to react.
Callback implementation for MishkaInstaller.Event.Hook.register/0.
Callback implementation for MishkaInstaller.Event.Hook.restart/0.
Callback implementation for MishkaInstaller.Event.Hook.start/0.
Callback implementation for MishkaInstaller.Event.Hook.stop/0.
Callback implementation for MishkaInstaller.Event.Hook.unregister/0.
This widget's descriptor.
Types
Functions
Returns a specification to start this module under a supervisor.
See Supervisor.
@spec config() :: keyword()
@spec enable() :: okey_return() | error_return()
Callback implementation for MishkaInstaller.Event.Hook.enable/0.
@spec get() :: keyword()
Callback implementation for MishkaInstaller.Event.Hook.get/0.
Optional. See MishkaInstaller.Event.Hook.health_check/0. Override to report health.
Loads this widget's data off the dashboard render (in a Task), scoped to the viewer.
Optional. See MishkaInstaller.Event.Hook.on_dependency_error/1. Override to react.
@spec register() :: okey_return() | error_return()
Callback implementation for MishkaInstaller.Event.Hook.register/0.
@spec restart() :: okey_return() | error_return()
Callback implementation for MishkaInstaller.Event.Hook.restart/0.
@spec start() :: okey_return() | error_return()
Callback implementation for MishkaInstaller.Event.Hook.start/0.
@spec stop() :: okey_return() | error_return()
Callback implementation for MishkaInstaller.Event.Hook.stop/0.
@spec unregister() :: okey_return() | error_return()
Callback implementation for MishkaInstaller.Event.Hook.unregister/0.
@spec widget() :: MishkaCmsCore.Dashboard.Widget.t()
This widget's descriptor.