Struct representing a dashboard tab group.
Groups organize tabs in the dashboard sidebar. Each group has an ID, an optional label, and a priority for ordering.
Fields
id- Unique group identifier atom (e.g.,:admin_main,:shop)label- Optional display label (nil for unlabeled groups)priority- Sort priority (lower = first, default: 100)icon- Optional heroicon name (e.g.,"hero-cube")collapsible- Whether the group can be collapsed in the sidebargettext_backend- Optional Gettext backend module for label translation (default: nil)gettext_domain- Gettext domain for translation lookups (default: "default")
Summary
Functions
Returns the group's label, translated via the configured gettext backend if one is set.
Creates a new group from a map or keyword list.
Types
Functions
Returns the group's label, translated via the configured gettext backend if one is set.
Falls back to the raw label string when:
gettext_backendisnil(default — no translation configured)- the label is
nil(unlabeled groups) - gettext has no translation for the msgid (gettext's own fallback)
Reads gettext_backend and gettext_domain via Map.get/2 rather than
pattern matching, so an old-shape struct cached in ETS or :persistent_term
before the 1.8.0 upgrade — which lacks those keys entirely — gracefully
falls back to the raw label instead of raising FunctionClauseError.
Creates a new group from a map or keyword list.