HeaderViewModel =============== Il ``HeaderViewModel`` è un modello progettato per configurare le proprietà principali di un'intestazione in un'interfaccia utente. Questo modello consente di personalizzare l'aspetto e il comportamento della sezione header, fornendo opzioni per configurazioni avanzate come contenuti sovrapposti e dettagli aggiuntivi nella parte inferiore. La definizione del ``HeaderViewModel`` è riportata di seguito: .. code-block:: dart @freezed class HeaderViewModel with _$HeaderViewModel { factory HeaderViewModel({ final HeaderConfig? headerConfig, final HeaderBottomConfig? bottomConfig, final OverlayItemConfig? overlayConfig, }) = _HeaderViewModel; } **Proprietà**: - **headerConfig**: configura l'immagine do sfondo e la back icon. - **bottomConfig**: definisce la parte relativa al bottom header. - **overlayConfig**: imposta l'aspetto e il contenuto dell'overlay. Configurazioni di HeaderConfig ------------------------------ .. code-block:: dart @freezed class HeaderConfig with _$HeaderConfig { factory HeaderConfig({ final String? imageUrl, final AdamResource? topLeftIcon, final Function(HeaderViewModel item)? onBackTap }) = _HeaderConfig; } **Proprietà**: - **imageUrl**: URL dell'immagine di sfondo. - **topLeftIcon**: corrisponde alla back icon. - **onBackTap**: funzione di callback quando si interagisce con la back icon. Configurazioni di HeaderBottomConfig ------------------------------------ .. code-block:: dart @freezed class HeaderBottomConfig with _$HeaderBottomConfig { factory HeaderBottomConfig({ final String? progressLabel, final double? progressValue, final Color? progressBackgroundColor, final Color? progressColor, }) = _HeaderBottomConfig; } **Proprietà**: - **progressLabel**: testo della label che descrive lo stato di avanzamento. - **progressValue**: valore del progress (da 0.0 a 1.0). - **progressBackgroundColor**: colore di sfondo della progress bar. - **progressColor**: colore della progress bar.