View Source AdminElf.Admin behaviour (admin_elf v1.1.0)

Summary

Types

@type features_map() :: %{required(atom()) => module() | features_map()}
@type menu_definition() :: [menu_item()]
@type menu_item() ::
  %{type: :dashboard}
  | %{type: :feature, feature: String.t()}
  | %{
      type: :group,
      title: String.t(),
      icon: String.t() | nil,
      features: [[atom()]]
    }

Callbacks

@callback features(conn :: Plug.Conn.t()) :: features_map()
@callback menu(conn :: Plug.Conn.t()) :: menu_definition()
@callback title() :: String.t()