From b87a8b00e34984acc18f8d9e618b6398dd7f3243 Mon Sep 17 00:00:00 2001 From: Argo Zhang Date: Sun, 5 Jan 2025 10:16:23 +0800 Subject: [PATCH 1/6] =?UTF-8?q?refactor:=20=E7=B2=BE=E7=AE=80=E4=BB=A3?= =?UTF-8?q?=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/BootstrapBlazor/Components/SweetAlert/SweetContext.cs | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/src/BootstrapBlazor/Components/SweetAlert/SweetContext.cs b/src/BootstrapBlazor/Components/SweetAlert/SweetContext.cs index 88941d12c69..03f58f8647a 100644 --- a/src/BootstrapBlazor/Components/SweetAlert/SweetContext.cs +++ b/src/BootstrapBlazor/Components/SweetAlert/SweetContext.cs @@ -16,9 +16,5 @@ internal class SweetContext /// 获得/设置 弹窗任务上下文 /// [NotNull] -#if NET7_0_OR_GREATER - public required TaskCompletionSource? ConfirmTask { get; init; } -#else - public TaskCompletionSource? ConfirmTask { get; set; } -#endif + public TaskCompletionSource? ConfirmTask { get; init; } } From 5b1949b8d049a198af4c5a848bb76a8d1d5755c8 Mon Sep 17 00:00:00 2001 From: Argo Zhang Date: Sun, 5 Jan 2025 11:02:24 +0800 Subject: [PATCH 2/6] =?UTF-8?q?refactor:=20=E5=A2=9E=E5=8A=A0=E6=B3=A8?= =?UTF-8?q?=E9=87=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/BootstrapBlazor/Components/SweetAlert/SwalOption.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/BootstrapBlazor/Components/SweetAlert/SwalOption.cs b/src/BootstrapBlazor/Components/SweetAlert/SwalOption.cs index c627551cf1e..a129390dd23 100644 --- a/src/BootstrapBlazor/Components/SweetAlert/SwalOption.cs +++ b/src/BootstrapBlazor/Components/SweetAlert/SwalOption.cs @@ -102,7 +102,7 @@ public class SwalOption : PopupOptionBase public Func? OnConfirmAsync { get; set; } /// - /// + /// 构造函数 /// public SwalOption() { From be7873ddb26e6de7a984d6dff1bb9ef8357655f2 Mon Sep 17 00:00:00 2001 From: Argo Zhang Date: Sun, 5 Jan 2025 11:02:39 +0800 Subject: [PATCH 3/6] =?UTF-8?q?refactor:=20=E5=A2=9E=E5=8A=A0=E8=B5=84?= =?UTF-8?q?=E6=BA=90=E9=87=8A=E6=94=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/BootstrapBlazor/Components/SweetAlert/SweetAlert.razor.cs | 1 + 1 file changed, 1 insertion(+) diff --git a/src/BootstrapBlazor/Components/SweetAlert/SweetAlert.razor.cs b/src/BootstrapBlazor/Components/SweetAlert/SweetAlert.razor.cs index 0ab45a866f5..c59109b5f85 100644 --- a/src/BootstrapBlazor/Components/SweetAlert/SweetAlert.razor.cs +++ b/src/BootstrapBlazor/Components/SweetAlert/SweetAlert.razor.cs @@ -88,6 +88,7 @@ protected override async Task OnAfterRenderAsync(bool firstRender) { if (DelayToken.IsCancellationRequested) { + DelayToken.Dispose(); DelayToken = new(); } await Task.Delay(Delay, DelayToken.Token); From 4459cbbc045b065f8ac4df49907218e794f99c84 Mon Sep 17 00:00:00 2001 From: Argo Zhang Date: Sun, 5 Jan 2025 11:03:02 +0800 Subject: [PATCH 4/6] =?UTF-8?q?refactor:=20=E6=94=AF=E6=8C=81=20OnCloseAsy?= =?UTF-8?q?nc=20=E5=9B=9E=E8=B0=83=E6=96=B9=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Components/SweetAlert/SweetAlert.razor.cs | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/BootstrapBlazor/Components/SweetAlert/SweetAlert.razor.cs b/src/BootstrapBlazor/Components/SweetAlert/SweetAlert.razor.cs index c59109b5f85..c7952b1a36e 100644 --- a/src/BootstrapBlazor/Components/SweetAlert/SweetAlert.razor.cs +++ b/src/BootstrapBlazor/Components/SweetAlert/SweetAlert.razor.cs @@ -93,6 +93,11 @@ protected override async Task OnAfterRenderAsync(bool firstRender) } await Task.Delay(Delay, DelayToken.Token); await ModalContainer.Close(); + + if (OnCloseCallbackAsync != null) + { + await OnCloseCallbackAsync(); + } } catch (TaskCanceledException) { } } @@ -101,6 +106,8 @@ protected override async Task OnAfterRenderAsync(bool firstRender) private bool AutoHideCheck() => IsAutoHide && Delay > 0; + private Func? OnCloseCallbackAsync = null; + private async Task Show(SwalOption option) { if (!IsShowDialog) @@ -122,6 +129,8 @@ private async Task Show(SwalOption option) DialogParameter = parameters; + OnCloseCallbackAsync = AutoHideCheck() ? option.OnCloseAsync : null; + // 渲染 UI 准备弹窗 Dialog await InvokeAsync(StateHasChanged); } From e2983107211fbf2348e1842eb327ab07b7da5150 Mon Sep 17 00:00:00 2001 From: Argo Zhang Date: Sun, 5 Jan 2025 11:03:09 +0800 Subject: [PATCH 5/6] =?UTF-8?q?test:=20=E5=A2=9E=E5=8A=A0=E5=8D=95?= =?UTF-8?q?=E5=85=83=E6=B5=8B=E8=AF=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- test/UnitTest/Components/SwalTest.cs | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/test/UnitTest/Components/SwalTest.cs b/test/UnitTest/Components/SwalTest.cs index 1f742046be0..6432ebee86a 100644 --- a/test/UnitTest/Components/SwalTest.cs +++ b/test/UnitTest/Components/SwalTest.cs @@ -271,7 +271,11 @@ public void Show_Ok() Content = "I am auto hide", IsAutoHide = true, ForceDelay = true, - Delay = 500 + Delay = 500, + OnCloseAsync = () => + { + return Task.CompletedTask; + } })); Thread.Sleep(150); // 弹窗显示 From d232101d107b325cfef483eb54bdb4d74a273504 Mon Sep 17 00:00:00 2001 From: Argo Zhang Date: Sun, 5 Jan 2025 11:04:46 +0800 Subject: [PATCH 6/6] chore: bump version 9.2.4 Co-Authored-By: Alex chow --- src/BootstrapBlazor/BootstrapBlazor.csproj | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/BootstrapBlazor/BootstrapBlazor.csproj b/src/BootstrapBlazor/BootstrapBlazor.csproj index 5251a4d5e43..99a35378fbf 100644 --- a/src/BootstrapBlazor/BootstrapBlazor.csproj +++ b/src/BootstrapBlazor/BootstrapBlazor.csproj @@ -1,7 +1,7 @@ - 9.2.4-beta01 + 9.2.4