@inject NavigationManager NavigationManager


<MudStack class="w-full pt-4 h-screen bg-[--mud-palette-background]">
    <MudImage class="mx-15 mt-5" Src="https://vesmeh.com/wp-content/uploads/2023/02/logo-web.png.webp"></MudImage>
    
    <MudNavMenu Rounded="true" Margin="Margin.Dense" Color="Color.Warning" Class="pa-2" Bordered="true">
        <MudNavLink Href="home" Match="NavLinkMatch.Prefix" Icon="@Icons.Material.Filled.Dashboard">داشبورد</MudNavLink>

        <MudNavLink Href="orders"
                    Icon="@Icons.Material.Outlined.ShoppingBag">فروش</MudNavLink>

        <MudNavGroup Title="محصولاتــ" Expanded="false"
                     Icon="@Icons.Material.Outlined.CenterFocusStrong">

            <MudNavLink Href="products"
                        Icon="@Icons.Material.Outlined.CenterFocusStrong">محصولاتــ فروشگاه</MudNavLink>
            <MudNavLink Href="product/categories"
                        Icon="@Icons.Material.Outlined.AllInbox">دسته بندی محصولاتـــ</MudNavLink>
            <MudNavLink Href="product/brands"
                        Icon="@Icons.Custom.Brands.Facebook">برند محصولاتــــ</MudNavLink>
        </MudNavGroup>


        <MudNavGroup Title="حسابداری" Expanded="false"
                     Icon="@Icons.Material.Outlined.BusinessCenter">

            <MudNavLink Href="discounts"
                        Icon="@Icons.Material.Outlined.LocalOffer">تخفیفـــ ها</MudNavLink>
            <MudNavLink Href="payments"
                        Icon="@Icons.Material.Outlined.AccountBalance">پرداختـــ ها</MudNavLink>
        </MudNavGroup>


        <MudNavGroup Title="انبارداری" Expanded="false"
                     Icon="@Icons.Material.Outlined.Inventory">

            <MudNavLink Href="inveroty"
                        Icon="@Icons.Material.Outlined.Inventory2">انبار</MudNavLink>

            <MudNavLink Href="inventory/shipping"
                        Icon="@Icons.Material.Outlined.AirportShuttle">روش های ارسال</MudNavLink>
        </MudNavGroup>

        <MudNavGroup Title="باشگاه مشتریانـــ" Expanded="false"
                     Icon="@Icons.Material.Outlined.AccountBalance">

            <MudNavLink Href="customers"
                        Icon="@Icons.Material.Outlined.PeopleAlt">مشترکین</MudNavLink>
            <MudNavLink Href="smspanel"
                        Icon="@Icons.Material.Outlined.Sms">پنل پیامکی</MudNavLink>
            <MudNavLink Href="newsletler"
                        Icon="@Icons.Material.Outlined.Newspaper">خبرنامه</MudNavLink>
        </MudNavGroup>

        <MudNavGroup Title="وبلاگــــ" Expanded="false"
                     Icon="@Icons.Material.Outlined.Web">

            <MudNavLink Href="blogs"
                        Icon="@Icons.Material.Outlined.WebStories">بلاگـــ ها</MudNavLink>
            <MudNavLink Href="blog/categories"
                        Icon="@Icons.Material.Outlined.WebAsset">دسته بندی های بلاگـــ</MudNavLink>
        </MudNavGroup>


        <MudNavGroup Title="فروشگاه من" Expanded="false"
                     Icon="@Icons.Material.Outlined.Settings">

            <MudNavLink Href="faqs" Icon="@Icons.Material.Filled.ManageAccounts">سوالات متداول</MudNavLink>
        </MudNavGroup>

        <MudNavGroup Title="تنظیماتـــ" Expanded="false"
                     Icon="@Icons.Material.Outlined.Settings">

            <MudNavLink Href="users" Icon="@Icons.Material.Filled.ManageAccounts">نقش ها و کاربران</MudNavLink>
        </MudNavGroup>
    </MudNavMenu>
    <p class="bottom-0 align-bottom mx-auto">Version : @version</p>
</MudStack>

@code
{
    
    string? version = typeof(Program)?.Assembly.GetName()?.Version?.ToString();
    private void SelectNav()
    {

    }

    private void SelectedChange(TreeItemData? data)
    {
        if (data != null)
            NavigationManager.NavigateTo(data.Page);
    }
    private HashSet<TreeItemData> TreeItems { get; set; } = new HashSet<TreeItemData>();

    public class TreeItemData
    {
        public string Text { get; set; }

        public string Icon { get; set; }

        public string Page { get; set; }

        private bool _isActive;

        public bool IsActive
        {
            get { return _isActive; }
            set
            {

                _isActive = value;
            }
        }


        public HashSet<TreeItemData> TreeItems { get; set; } = new HashSet<TreeItemData>();

        public TreeItemData(string text, string icon, string page)
        {
            Page = page;
            Text = text;
            Icon = icon;
        }
    }

    protected override void OnInitialized()
    {
        TreeItems.Add(new TreeItemData("داشبورد", Icons.Material.Outlined.Dashboard, ""));
        TreeItems.Add(new TreeItemData("فروش", Icons.Material.Outlined.ShoppingCart, "products"));
        TreeItems.Add(new TreeItemData("محصولات", Icons.Material.Outlined.CenterFocusStrong, "products"));
        TreeItems.Add(new TreeItemData("دسته بندی محصولات", Icons.Material.Outlined.AllInbox, "categories"));
        TreeItems.Add(new TreeItemData("برند محصولات", Icons.Custom.Brands.Facebook, "brands"));
        TreeItems.Add(new TreeItemData("بلاگ ها", Icons.Material.Outlined.Web, "blogs"));
        TreeItems.Add(new TreeItemData("دسته بندی بلاگ ها", Icons.Material.Outlined.Web, "blog/categories"));
        TreeItems.Add(new TreeItemData("مشترکین", Icons.Material.Outlined.People, "products"));
        TreeItems.Add(new TreeItemData("تنظیمات", Icons.Material.Outlined.Settings, "products"));
    }
}