private async Task ChangeBodyNav(ConfigType configType)
        {
            await InvokeAsync(() =>
            {
                switch (configType)
                {
                case ConfigType.Face:
                    BodyManager = BrowserService.GetBodyComponentManager <Face>();
                    break;

                case ConfigType.Hair:
                    BodyManager = BrowserService.GetBodyComponentManager <Hair>();
                    break;

                case ConfigType.Coat:
                    BodyManager = BrowserService.GetBodyComponentManager <Coat>();
                    break;

                case ConfigType.Pants:
                    BodyManager = BrowserService.GetBodyComponentManager <Pants>();
                    break;

                case ConfigType.Head:
                case ConfigType.Body:
                default:
                    break;
                }
                StateHasChanged();
            });
        }
        protected async override Task OnInitializedAsync()
        {
            Notifier.Notify += OnNotify;
            BodyManager      = BrowserService.GetBodyComponentManager <Face>();
            anitimer         = new Timer(new TimerCallback(Animate), null, Timeout.Infinite, 60);
            Skins            = await BrowserService.GetSkins();

            character = await BrowserService.GetDefaultCharacter();

            currentSkin   = character.Id;
            currentAction = character.CurrentHeadMotion.Name;
            faceAniTimer  = new Timer(new TimerCallback(FaceAnimate), null, 100, character.FaceDelay);
            await RefreshDataAsync(true);
        }