using Microsoft.AspNetCore.Components; using System.Runtime.CompilerServices; using System.Threading.Tasks; using WebWindowTest.Models; using static WebWindowTest.Json.WindowConst; namespace WebWindowTest.Compo { public partial class AreaHwOption { /// /// Sash corrente rispetto alla lista Sash /// [CascadingParameter(Name = "CurrSashGroup")] public Sash CurrSashGroup { get; set; } = null!; /// /// Evento per chiamare la prima volta la lista delle opzioni /// [Parameter] public EventCallback EC_FirstHwOptionList { get; set; } [CascadingParameter(Name = "IsLoading")] public List IsLoading { get; set; } = new List(); private bool hwOptCollapsed { get; set; } = true; protected override void OnAfterRender(bool firstRender) { if (firstRender) { hwOptCollapsed = true; } } private async Task changeCollapsed() { hwOptCollapsed = !hwOptCollapsed; if (CurrSashGroup.HwOptionList.Count == 0) { await EC_FirstHwOptionList.InvokeAsync(); } } private string hwIcon { get => hwOptCollapsed ? "fa-solid fa-chevron-down" : "fa-solid fa-chevron-up"; } private bool IsLoadingHwOpt { get => IsLoading != null && IsLoading.Count > 0 && IsLoading.Contains("LoadHwOpt"); } } }