HeadManager class
Central manager for all head tags.
Supports:
- CRUD operations (add, remove, update, get, list, clear, reset)
- Layered priority (app → route → component)
- Key-based deduplication
- Platform fallbacks (title → og:title → twitter:title)
- Reactive updates
// Add tags
HeadManager.instance.add(TitleEntry('My Page'));
HeadManager.instance.add(MetaEntry.description('Description'));
// Get resolved HTML
final html = HeadManager.instance.toHtml();
Constructors
- HeadManager()
-
Create a new isolated HeadManager instance.
factory
Properties
- hashCode → int
-
The hash code for this object.
no setterinherited
- isBuilding ↔ bool
-
getter/setter pair
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- version → int
-
Current version for reactive tracking.
no setter
Methods
-
add(
HeadEntry entry) → void - Adds or updates an entry.
-
addAll(
List< HeadEntry> entries) → void - Adds multiple entries at once.
-
addListener(
void listener()) → void - Adds a listener that is called when entries change.
-
clear(
{HeadLayer? layer}) → void - Clears entries from a specific layer, or all component entries if not specified.
-
clearComponent(
) → void - Clears component entries. Called on navigation.
-
get(
String key) → HeadEntry? - Gets an entry by key from the highest priority layer.
-
list(
{HeadCategory? category}) → List< HeadEntry> - Lists all entries, optionally filtered by category.
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
remove(
String key) → void - Removes an entry by key.
-
removeListener(
void listener()) → void - Removes a previously added listener.
-
reset(
) → void - Resets all entries to initial state.
-
resetFrame(
) → void - Clears frame entries. Called at start of render pass.
-
resolve(
) → List< HeadEntry> - Resolves all entries with deduplication and fallback generation.
-
setAppDefaults(
List< HeadEntry> entries) → void - Sets app-level default entries.
-
setRouteEntries(
List< HeadEntry> entries) → void - Sets route-level entries.
-
toHtml(
) → String - Generates the full head content as HTML.
-
toString(
) → String -
A string representation of this object.
inherited
-
update(
String key, HeadEntry entry) → void - Updates an existing entry by key.
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited
Static Properties
- instance → HeadManager
-
Get the current HeadManager.
no setter