internal override async Task Changed(bool e) { if (!_isInitialized) { return; } OnChanged?.Invoke(e); BSModalEvent = new BSModalEvent() { Target = this }; if (e) { if (!IsInline) { _ = await _jsRuntime.InvokeAsync <string>("blazorStrap.modal.open", Me.Id).ConfigureAwait(false); _ = await _jsRuntime.InvokeAsync <string>("blazorStrap.modal.initOnEscape", Me.Id).ConfigureAwait(false); } _onEscapeCallback += OnEscapeCallback; //await BlazorStrapInterop.ModalEscapeKey(this); new Task(async() => { _toggleModel = true; await InvokeAsync(StateHasChanged).ConfigureAwait(false); await Task.Delay(300).ConfigureAwait(false); _toggleShow = e; await InvokeAsync(StateHasChanged).ConfigureAwait(false); }).Start(); await ShowEvent.InvokeAsync(BSModalEvent).ConfigureAwait(false); } else { new Task(async() => { _toggleShow = e; await InvokeAsync(StateHasChanged).ConfigureAwait(false); await Task.Delay(300).ConfigureAwait(false); _toggleModel = false; await InvokeAsync(StateHasChanged).ConfigureAwait(false); }).Start(); await HideEvent.InvokeAsync(BSModalEvent).ConfigureAwait(false); if (!IsInline) { _onEscapeCallback -= OnEscapeCallback; _ = await _jsRuntime.InvokeAsync <string>("blazorStrap.modal.close", Me.Id).ConfigureAwait(false); } //await BlazorStrapInterop.RemoveBodyClass("modal-open"); } }
internal override async Task Changed(bool e) { if (!_isInitialized) { return; } if (!DisableAnimations) { _drawing = true; await new BlazorStrapInterop(JSRuntime).AddEventAnimationEnd(MyRef); } else { _canShow = true; return; } BSModalEvent = new BSModalEvent() { Target = this }; if (e) { await new BlazorStrapInterop(JSRuntime).AddBodyClass("modal-open"); if (!IgnoreEscape) { await new BlazorStrapInterop(JSRuntime).ModalEscapeKey(); BlazorStrapInterop.OnEscapeEvent += OnEscape; } new Task(async() => { await Task.Delay(300).ConfigureAwait(false); _canShow = true; await InvokeAsync(StateHasChanged).ConfigureAwait(false); }).Start(); await ShowEvent.InvokeAsync(BSModalEvent).ConfigureAwait(false); } else { await new BlazorStrapInterop(JSRuntime).RemoveClass(MyRef, "show"); new Task(async() => { await Task.Delay(300).ConfigureAwait(false); await new BlazorStrapInterop(JSRuntime).RemoveBodyClass("modal-open"); }).Start(); await HideEvent.InvokeAsync(BSModalEvent).ConfigureAwait(false); } }
internal override async Task Changed(bool e) { if (!_isInitialized) { return; } BSModalEvent = new BSModalEvent() { Target = this }; if (e) { await new BlazorStrapInterop(JSRuntime).AddBodyClass("modal-open"); if (!IgnoreEscape) { //TODO: This sucks make it better await new BlazorStrapInterop(JSRuntime).ModalEscapeKey(); BlazorStrapInterop.OnEscapeEvent += OnEscape; } new Task(async() => { _toggleModel = true; await InvokeAsync(StateHasChanged).ConfigureAwait(false); await Task.Delay(300).ConfigureAwait(false); _toggleShow = e; await InvokeAsync(StateHasChanged).ConfigureAwait(false); }).Start(); await ShowEvent.InvokeAsync(BSModalEvent).ConfigureAwait(false); } else { new Task(async() => { _toggleShow = e; await InvokeAsync(StateHasChanged).ConfigureAwait(false); await Task.Delay(300).ConfigureAwait(false); _toggleModel = false; await InvokeAsync(StateHasChanged).ConfigureAwait(false); }).Start(); await HideEvent.InvokeAsync(BSModalEvent).ConfigureAwait(false); await new BlazorStrapInterop(JSRuntime).RemoveBodyClass("modal-open"); } }
internal override void Changed(bool e) { BSModalEvent = new BSModalEvent() { Target = this }; if (e) { ShowEvent.InvokeAsync(BSModalEvent); EventQue.Add(ShownEvent); } else { Closed = true; HideEvent.InvokeAsync(BSModalEvent); EventQue.Add(HiddenEvent); } }
private async Task OnAnimationEnd(string id) { BSModalEvent = new BSModalEvent() { Target = this }; if (id != MyRef.Id) { await new BlazorStrapInterop(JSRuntime).RemoveEventAnimationEnd(MyRef); if (IsOpen ?? false) { await ShownEvent.InvokeAsync(BSModalEvent).ConfigureAwait(false); } else { await HiddenEvent.InvokeAsync(BSModalEvent).ConfigureAwait(false); } _canShow = IsOpen ?? false; _drawing = false; await InvokeAsync(StateHasChanged).ConfigureAwait(false); } }