CLAdaptiveShell class
Shell adattivo a slot. Sceglie sidebar/drawer/bottom-bar per larghezza. Trasparente alle logiche app: riceve dati + slot, non conosce router/AI/auth.
Nota: sul tier desktop (sidebar) NON crea uno Scaffold. Se body/trailing
usano SnackBar/showModalBottomSheet, l'app deve garantire uno Scaffold
antenato. Sui tier drawer/bottom-bar lo Scaffold è fornito dallo shell.
- Inheritance
-
- Object
- DiagnosticableTree
- Widget
- StatefulWidget
- CLAdaptiveShell
- Available extensions
Constructors
-
CLAdaptiveShell({Key? key, required List<
CLDestination> destinations, required String? selectedKey, required ValueChanged<CLDestination> onSelect, required Widget header, required Widget body, Widget? headerLeading, Widget? trailing, Widget? endDrawer, CLShellConfig config = const CLShellConfig(), ShellSlotsController? slotsController, Widget? railHeader, List<CLDestination> ? bottomDestinations, List<CLBottomBarItem> ? bottomBarItems, Widget? bottomBarHomeLogo}) -
const
Properties
- body → Widget
-
final
- bottomBarHomeLogo → Widget?
-
Logo mostrato nell'header MOBILE (bottom-bar) quando la pagina non ha
breadcrumb né back (es. home). Sostituisce il titolo vuoto.
null= niente.final -
bottomBarItems
→ List<
CLBottomBarItem> ? -
Voci FISSE custom della bottom bar (mobile). Se non null sostituisce la barra
nav (destination-driven) con queste voci nell'ordine dato — es.
menu, dashboard, AI, profilo, ricerca. L'hamburger nell'header viene nascosto (il menu vive nella barra). UsaslotsController.openMenu()/openAi()per le azioni che richiedono lo Scaffold interno.final -
bottomDestinations
→ List<
CLDestination> ? -
Voci dedicate alla bottom bar (mobile). Se
nullusa destinations. Serve a curare un set diverso dal menu completo (es. solo le 4 scorciatoie chiave).final - config → CLShellConfig
-
final
-
destinations
→ List<
CLDestination> -
final
- endDrawer → Widget?
-
final
- hashCode → int
-
The hash code for this object.
no setterinherited
- header → Widget
-
Contenuto top bar (logo/titolo + search + AI). Lo shell antepone l'hamburger
su drawer/bottom-bar; NON includerlo qui.
final
- headerLeading → Widget?
-
Logo dell'app, mostrato in cima al menu (nav panel) su tutti i breakpoint —
sidebar desktop e drawer tablet/mobile. Mai nell'header.
null= assente.final - key → Key?
-
Controls how one widget replaces another widget in the tree.
finalinherited
-
final
-
final
-
onSelect
→ ValueChanged<
CLDestination> -
final
-
final
- railHeader → Widget?
-
Slot in cima/in fondo alla rail (tier tablet), icon-only. Es. icona tenant
in alto, help + avatar utente in basso. Ignorati su sidebar/bottom-bar.
final
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- selectedKey → String?
-
final
- slotsController → ShellSlotsController?
-
Controller dei slot. Se
null, lo shell ne crea uno proprio. Passarlo dall'esterno permette all'app di pubblicare il canale nav (back/breadcrumbs) senza avvolgere ilbody(evita reparenting di widget con GlobalKey).final - trailing → Widget?
-
final
Methods
-
animateOnActionTrigger(
AnimationInfo animationInfo, {bool hasBeenTriggered = false}) → Widget -
Available on Widget, provided by the AnimatedWidgetExtension extension
-
animateOnPageLoad(
AnimationInfo animationInfo) → Widget -
Available on Widget, provided by the AnimatedWidgetExtension extension
-
createElement(
) → StatefulElement -
Creates a StatefulElement to manage this widget's location in the tree.
inherited
-
createState(
) → State< CLAdaptiveShell> -
Creates the mutable state for this widget at a given location in the tree.
override
-
debugDescribeChildren(
) → List< DiagnosticsNode> -
Returns a list of DiagnosticsNode objects describing this node's
children.
inherited
-
debugFillProperties(
DiagnosticPropertiesBuilder properties) → void -
Add additional properties associated with the node.
inherited
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toDiagnosticsNode(
{String? name, DiagnosticsTreeStyle? style}) → DiagnosticsNode -
Returns a debug representation of the object that is used by debugging
tools and by DiagnosticsNode.toStringDeep.
inherited
-
toString(
{DiagnosticLevel minLevel = DiagnosticLevel.info}) → String -
A string representation of this object.
inherited
-
toStringDeep(
{String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug, int wrapWidth = 65}) → String -
Returns a string representation of this node and its descendants.
inherited
-
toStringShallow(
{String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) → String -
Returns a one-line detailed description of the object.
inherited
-
toStringShort(
) → String -
A short, textual description of this widget.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited