From c81536a91ab28fd3e2de9dca396e8e93a2108cda Mon Sep 17 00:00:00 2001 From: Hamza Albreem <94292623+braim23@users.noreply.github.com> Date: Wed, 23 Mar 2022 16:26:25 +0300 Subject: [PATCH 01/90] open link in new tab quick fix --- .../AbpIoLocalization/Www/Localization/Resources/en.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/en.json b/abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/en.json index 2f2b4c8481..dbdd8b47ef 100644 --- a/abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/en.json +++ b/abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/en.json @@ -183,7 +183,7 @@ "InstallABPCLIInfo": "ABP CLI is the fastest way to start a new solution with the ABP framework. Install the ABP CLI using a command line window:", "DifferentLevelOfNamespaces": "You can use different levels of namespaces; e.g. BookStore, Acme.BookStore or Acme.Retail.BookStore.", "ABPCLIExamplesInfo": "The new command creates a layered MVC application with Entity Framework Core as the database provider. However, it has additional options.", - "SeeCliDocumentForMoreInformation": "Check out the ABP CLI document for more options or select the \"Direct Download\" tab above.", + "SeeCliDocumentForMoreInformation": "Check out the ABP CLI document for more options or select the \"Direct Download\" tab above.", "Optional": "Optional", "LocalFrameworkRef": "Keep the local project reference for the framework packages.", "BlobStoring": "BLOB Storing", From d5dc276f590da9f9ccbdabf60b2173c701ef84fa Mon Sep 17 00:00:00 2001 From: selman koc <64414348+skoc10@users.noreply.github.com> Date: Thu, 24 Mar 2022 17:44:34 +0300 Subject: [PATCH 02/90] unit test added trx --- nupkg/unit_test.ps1 | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/nupkg/unit_test.ps1 b/nupkg/unit_test.ps1 index 6f53d6c738..07cdfe3655 100644 --- a/nupkg/unit_test.ps1 +++ b/nupkg/unit_test.ps1 @@ -4,7 +4,7 @@ foreach($solution in $solutions) { $solutionFolder = Join-Path $rootFolder $solution Set-Location $solutionFolder - dotnet test --no-build + dotnet test --no-build --logger trx -} \ No newline at end of file +} From ce45aea0b2fc53462bf26e5e449b3acc675781ed Mon Sep 17 00:00:00 2001 From: liangshiwei Date: Mon, 4 Apr 2022 17:45:54 +0800 Subject: [PATCH 03/90] Some enhancements for Blazor UI --- .../Pages/Identity/UserManagement.razor | 35 ++++++++---- .../Pages/Identity/UserManagement.razor.cs | 17 +++++- .../PermissionManagementModal.razor.cs | 9 +++ .../EmailSettingGroupViewComponent.razor | 6 +- .../EmailSettingGroupViewComponent.razor.cs | 56 +++++++++++++++++-- ...ettingManagementBlazorAutoMapperProfile.cs | 4 +- 6 files changed, 108 insertions(+), 19 deletions(-) diff --git a/modules/identity/src/Volo.Abp.Identity.Blazor/Pages/Identity/UserManagement.razor b/modules/identity/src/Volo.Abp.Identity.Blazor/Pages/Identity/UserManagement.razor index 6fe89dd768..5b67c74784 100644 --- a/modules/identity/src/Volo.Abp.Identity.Blazor/Pages/Identity/UserManagement.razor +++ b/modules/identity/src/Volo.Abp.Identity.Blazor/Pages/Identity/UserManagement.razor @@ -89,11 +89,18 @@ @L["DisplayName:Password"] - - - - - + + + + + + + + + + + + @@ -203,11 +210,19 @@ @L["DisplayName:Password"] - - - - - + + + + + + + + + + + + + diff --git a/modules/identity/src/Volo.Abp.Identity.Blazor/Pages/Identity/UserManagement.razor.cs b/modules/identity/src/Volo.Abp.Identity.Blazor/Pages/Identity/UserManagement.razor.cs index 462ce6ec72..db9a718949 100644 --- a/modules/identity/src/Volo.Abp.Identity.Blazor/Pages/Identity/UserManagement.razor.cs +++ b/modules/identity/src/Volo.Abp.Identity.Blazor/Pages/Identity/UserManagement.razor.cs @@ -39,7 +39,8 @@ public partial class UserManagement protected PageToolbar Toolbar { get; } = new(); private List UserManagementTableColumns => TableColumns.Get(); - + private TextRole _passwordTextRole = TextRole.Password; + public UserManagement() { ObjectMapperContext = typeof(AbpIdentityBlazorModule); @@ -90,6 +91,7 @@ public partial class UserManagement IsAssigned = x.IsDefault }).ToArray(); + ChangePasswordTextRole(TextRole.Password); return base.OpenCreateModalAsync(); } @@ -115,6 +117,7 @@ public partial class UserManagement IsAssigned = userRoleNames.Contains(x.Name) }).ToArray(); + ChangePasswordTextRole(TextRole.Password); await base.OpenEditModalAsync(entity); } catch (Exception ex) @@ -211,6 +214,18 @@ public partial class UserManagement return base.SetToolbarItemsAsync(); } + + protected virtual void ChangePasswordTextRole(TextRole? textRole) + { + if (textRole == null) + { + ChangePasswordTextRole(_passwordTextRole == TextRole.Password ? TextRole.Text: TextRole.Password); + } + else + { + _passwordTextRole = textRole.Value; + } + } } public class AssignedRoleViewModel diff --git a/modules/permission-management/src/Volo.Abp.PermissionManagement.Blazor/Components/PermissionManagementModal.razor.cs b/modules/permission-management/src/Volo.Abp.PermissionManagement.Blazor/Components/PermissionManagementModal.razor.cs index 2a908140b5..6683690002 100644 --- a/modules/permission-management/src/Volo.Abp.PermissionManagement.Blazor/Components/PermissionManagementModal.razor.cs +++ b/modules/permission-management/src/Volo.Abp.PermissionManagement.Blazor/Components/PermissionManagementModal.razor.cs @@ -122,6 +122,7 @@ public partial class PermissionManagementModal { try { + var updateDto = new UpdatePermissionsDto { Permissions = _groups @@ -129,6 +130,14 @@ public partial class PermissionManagementModal .Select(p => new UpdatePermissionDto { IsGranted = p.IsGranted, Name = p.Name }) .ToArray() }; + + if (!updateDto.Permissions.Any(x => x.IsGranted)) + { + if (!await Message.Confirm(L["RemoveAllPermissionsWarningMessage"].Value)) + { + return; + } + } await PermissionAppService.UpdateAsync(_providerName, _providerKey, updateDto); diff --git a/modules/setting-management/src/Volo.Abp.SettingManagement.Blazor/Pages/SettingManagement/EmailSettingGroup/EmailSettingGroupViewComponent.razor b/modules/setting-management/src/Volo.Abp.SettingManagement.Blazor/Pages/SettingManagement/EmailSettingGroup/EmailSettingGroupViewComponent.razor index 6037231df0..36d5857776 100644 --- a/modules/setting-management/src/Volo.Abp.SettingManagement.Blazor/Pages/SettingManagement/EmailSettingGroup/EmailSettingGroupViewComponent.razor +++ b/modules/setting-management/src/Volo.Abp.SettingManagement.Blazor/Pages/SettingManagement/EmailSettingGroup/EmailSettingGroupViewComponent.razor @@ -5,12 +5,12 @@ @if (EmailSettings != null) {
- + - @L["DefaultFromDisplayName"] + @L["DefaultFromDisplayName"] * @@ -20,7 +20,7 @@ - @L["DefaultFromAddress"] + @L["DefaultFromAddress"] * diff --git a/modules/setting-management/src/Volo.Abp.SettingManagement.Blazor/Pages/SettingManagement/EmailSettingGroup/EmailSettingGroupViewComponent.razor.cs b/modules/setting-management/src/Volo.Abp.SettingManagement.Blazor/Pages/SettingManagement/EmailSettingGroup/EmailSettingGroupViewComponent.razor.cs index 9e5638bfd9..1cd8ceeb1b 100644 --- a/modules/setting-management/src/Volo.Abp.SettingManagement.Blazor/Pages/SettingManagement/EmailSettingGroup/EmailSettingGroupViewComponent.razor.cs +++ b/modules/setting-management/src/Volo.Abp.SettingManagement.Blazor/Pages/SettingManagement/EmailSettingGroup/EmailSettingGroupViewComponent.razor.cs @@ -1,9 +1,11 @@ using System; +using System.ComponentModel.DataAnnotations; using System.Threading.Tasks; using Blazorise; using Microsoft.AspNetCore.Components; using Volo.Abp.AspNetCore.Components.Messages; using Volo.Abp.AspNetCore.Components.Web.Configuration; +using Volo.Abp.Auditing; using Volo.Abp.SettingManagement.Localization; namespace Volo.Abp.SettingManagement.Blazor.Pages.SettingManagement.EmailSettingGroup; @@ -19,9 +21,9 @@ public partial class EmailSettingGroupViewComponent [Inject] protected IUiMessageService UiMessageService { get; set; } - protected EmailSettingsDto EmailSettings; + protected UpdateEmailSettingsViewModel EmailSettings; - protected Validations IdentitySettingValidation; + protected Validations EmailSettingValidation; public EmailSettingGroupViewComponent() { @@ -33,7 +35,7 @@ public partial class EmailSettingGroupViewComponent { try { - EmailSettings = await EmailSettingsAppService.GetAsync(); + EmailSettings = ObjectMapper.Map(await EmailSettingsAppService.GetAsync()); } catch (Exception ex) { @@ -45,7 +47,12 @@ public partial class EmailSettingGroupViewComponent { try { - await EmailSettingsAppService.UpdateAsync(ObjectMapper.Map(EmailSettings)); + if (!await EmailSettingValidation.ValidateAll()) + { + return; + } + + await EmailSettingsAppService.UpdateAsync(ObjectMapper.Map(EmailSettings)); await CurrentApplicationConfigurationCacheResetService.ResetAsync(); @@ -56,4 +63,45 @@ public partial class EmailSettingGroupViewComponent await HandleErrorAsync(ex); } } + + public class UpdateEmailSettingsViewModel + { + [MaxLength(256)] + [Display(Name = "SmtpHost")] + public string SmtpHost { get; set; } + + [Range(1, 65535)] + [Display(Name = "SmtpPort")] + public int SmtpPort { get; set; } + + [MaxLength(1024)] + [Display(Name = "SmtpUserName")] + public string SmtpUserName { get; set; } + + [MaxLength(1024)] + [DataType(DataType.Password)] + [DisableAuditing] + [Display(Name = "SmtpPassword")] + public string SmtpPassword { get; set; } + + [MaxLength(1024)] + [Display(Name = "SmtpDomain")] + public string SmtpDomain { get; set; } + + [Display(Name = "SmtpEnableSsl")] + public bool SmtpEnableSsl { get; set; } + + [Display(Name = "SmtpUseDefaultCredentials")] + public bool SmtpUseDefaultCredentials { get; set; } + + [MaxLength(1024)] + [Required] + [Display(Name = "DefaultFromAddress")] + public string DefaultFromAddress { get; set; } + + [MaxLength(1024)] + [Required] + [Display(Name = "DefaultFromDisplayName")] + public string DefaultFromDisplayName { get; set; } + } } diff --git a/modules/setting-management/src/Volo.Abp.SettingManagement.Blazor/SettingManagementBlazorAutoMapperProfile.cs b/modules/setting-management/src/Volo.Abp.SettingManagement.Blazor/SettingManagementBlazorAutoMapperProfile.cs index d5309e0aff..38279c09d4 100644 --- a/modules/setting-management/src/Volo.Abp.SettingManagement.Blazor/SettingManagementBlazorAutoMapperProfile.cs +++ b/modules/setting-management/src/Volo.Abp.SettingManagement.Blazor/SettingManagementBlazorAutoMapperProfile.cs @@ -1,4 +1,5 @@ using AutoMapper; +using Volo.Abp.SettingManagement.Blazor.Pages.SettingManagement.EmailSettingGroup; namespace Volo.Abp.SettingManagement.Blazor; @@ -6,6 +7,7 @@ public class SettingManagementBlazorAutoMapperProfile : Profile { public SettingManagementBlazorAutoMapperProfile() { - CreateMap(); + CreateMap(); + CreateMap(); } } From ed92e57255752585e60cbb333136aabbc5b2d2fa Mon Sep 17 00:00:00 2001 From: selman koc <64414348+skoc10@users.noreply.github.com> Date: Tue, 5 Apr 2022 01:14:25 +0300 Subject: [PATCH 04/90] Update common.props --- common.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/common.props b/common.props index f9f1a35ba1..afce80d4f5 100644 --- a/common.props +++ b/common.props @@ -1,7 +1,7 @@ latest - 5.2.0-rc.2 + 5.2.0 $(NoWarn);CS1591;CS0436 https://abp.io/assets/abp_nupkg.png https://abp.io/ From 632e408ac14a7c7c2eeefa4e983bfcc10ab3fc0d Mon Sep 17 00:00:00 2001 From: selman koc <64414348+skoc10@users.noreply.github.com> Date: Tue, 5 Apr 2022 01:26:01 +0300 Subject: [PATCH 05/90] Update unit_test.ps1 --- nupkg/unit_test.ps1 | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/nupkg/unit_test.ps1 b/nupkg/unit_test.ps1 index 6f53d6c738..07cdfe3655 100644 --- a/nupkg/unit_test.ps1 +++ b/nupkg/unit_test.ps1 @@ -4,7 +4,7 @@ foreach($solution in $solutions) { $solutionFolder = Join-Path $rootFolder $solution Set-Location $solutionFolder - dotnet test --no-build + dotnet test --no-build --logger trx -} \ No newline at end of file +} From 1fedc732832a53159a9ed34d1be264f616fc2649 Mon Sep 17 00:00:00 2001 From: albert <9526587+ebicoglu@users.noreply.github.com> Date: Tue, 5 Apr 2022 03:13:41 +0300 Subject: [PATCH 06/90] Update API-Versioning.md --- docs/en/API/API-Versioning.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/en/API/API-Versioning.md b/docs/en/API/API-Versioning.md index 5eefb129c3..390d58eec8 100644 --- a/docs/en/API/API-Versioning.md +++ b/docs/en/API/API-Versioning.md @@ -45,7 +45,7 @@ public interface IBookV2AppService : IApplicationService } ``` -**HttpApi Controillers:** +**HttpApi Controllers:** ```cs [Area(BookStoreRemoteServiceConsts.ModuleName)] [RemoteService(Name = BookStoreRemoteServiceConsts.RemoteServiceName)] @@ -346,4 +346,4 @@ Get more from https://github.com/dotnet/aspnet-api-versioning/wiki ## Sample source code -You can get the complete sample source code in https://github.com/abpframework/abp-samples/tree/master/Api-Versioning \ No newline at end of file +You can get the complete sample source code in https://github.com/abpframework/abp-samples/tree/master/Api-Versioning From dbc04c52935158210ebd4ee3b1980b4de48570b8 Mon Sep 17 00:00:00 2001 From: albert <9526587+ebicoglu@users.noreply.github.com> Date: Tue, 5 Apr 2022 03:16:40 +0300 Subject: [PATCH 07/90] Update API-Versioning.md --- docs/en/API/API-Versioning.md | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/docs/en/API/API-Versioning.md b/docs/en/API/API-Versioning.md index 390d58eec8..7784be1bb9 100644 --- a/docs/en/API/API-Versioning.md +++ b/docs/en/API/API-Versioning.md @@ -26,7 +26,7 @@ public override void ConfigureServices(ServiceConfigurationContext context) ## C# and JavaScript Static Client Proxies -This feature does not compatible with [URL Path Versioning](https://github.com/dotnet/aspnet-api-versioning/wiki/Versioning-via-the-URL-Path), I suggest you always use [Versioning-via-the-Query-String](https://github.com/dotnet/aspnet-api-versioning/wiki/Versioning-via-the-Query-String). +This feature does not compatible with [URL Path Versioning](https://github.com/dotnet/aspnet-api-versioning/wiki/Versioning-via-the-URL-Path), we suggest to use [Versioning-via-the-Query-String](https://github.com/dotnet/aspnet-api-versioning/wiki/Versioning-via-the-Query-String). ### Example @@ -175,7 +175,7 @@ bookStore.books.bookV2.getAsyncByIsbn = function(isbn, api_version, ajaxParams) ``` -## Manually change version +## Changing version manually If an application service class supports multiple versions. You can inject `ICurrentApiVersionInfo` to switch versions in C#. @@ -337,13 +337,14 @@ public override void OnApplicationInitialization(ApplicationInitializationContex } ``` -## Custom multi-version API controller. +## Custom multi-version API controller -ABP Framework will not affect to your APIs, you can freely implement your APIs according to Microsoft's documentation. +ABP Framework will not affect to your APIs, you can freely implement your APIs according to the Microsoft's documentation. -Get more from https://github.com/dotnet/aspnet-api-versioning/wiki +Further information, see https://github.com/dotnet/aspnet-api-versioning/wiki ## Sample source code -You can get the complete sample source code in https://github.com/abpframework/abp-samples/tree/master/Api-Versioning +Follow the link below to get the sample's complete source-code +https://github.com/abpframework/abp-samples/tree/master/Api-Versioning From 192b483d7b5f94c41dae60f082191aa8630eb32e Mon Sep 17 00:00:00 2001 From: albert <9526587+ebicoglu@users.noreply.github.com> Date: Tue, 5 Apr 2022 03:16:59 +0300 Subject: [PATCH 08/90] Update API-Versioning.md --- docs/en/API/API-Versioning.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/en/API/API-Versioning.md b/docs/en/API/API-Versioning.md index 7784be1bb9..68343417de 100644 --- a/docs/en/API/API-Versioning.md +++ b/docs/en/API/API-Versioning.md @@ -347,4 +347,5 @@ Further information, see https://github.com/dotnet/aspnet-api-versioning/wiki ## Sample source code Follow the link below to get the sample's complete source-code + https://github.com/abpframework/abp-samples/tree/master/Api-Versioning From e1a1519e0227f5b623193255dcc3a8e77ed2ef9f Mon Sep 17 00:00:00 2001 From: Ebicoglu Date: Tue, 5 Apr 2022 04:03:01 +0300 Subject: [PATCH 09/90] add migrate database ps --- templates/app-nolayers/aspnet-core/migrate-database.ps1 | 1 + 1 file changed, 1 insertion(+) create mode 100644 templates/app-nolayers/aspnet-core/migrate-database.ps1 diff --git a/templates/app-nolayers/aspnet-core/migrate-database.ps1 b/templates/app-nolayers/aspnet-core/migrate-database.ps1 new file mode 100644 index 0000000000..3af47fcb21 --- /dev/null +++ b/templates/app-nolayers/aspnet-core/migrate-database.ps1 @@ -0,0 +1 @@ +dotnet run --migrate-database \ No newline at end of file From f56da4506f1cc981cc39810f7fef6b8a68fa0c6f Mon Sep 17 00:00:00 2001 From: liangshiwei Date: Tue, 5 Apr 2022 11:05:54 +0800 Subject: [PATCH 10/90] Update UserManagement.razor --- .../Pages/Identity/UserManagement.razor | 23 ++++++++++--------- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/modules/identity/src/Volo.Abp.Identity.Blazor/Pages/Identity/UserManagement.razor b/modules/identity/src/Volo.Abp.Identity.Blazor/Pages/Identity/UserManagement.razor index 5b67c74784..fdd979b2a0 100644 --- a/modules/identity/src/Volo.Abp.Identity.Blazor/Pages/Identity/UserManagement.razor +++ b/modules/identity/src/Volo.Abp.Identity.Blazor/Pages/Identity/UserManagement.razor @@ -19,10 +19,16 @@ - @L["Search"] - - - + + + + + + + + + + @* ************************* DATA GRID ************************* *@ - - - + @@ -213,16 +217,13 @@ - - - - + From 05728010285caf51118b05f71780fe22ac818535 Mon Sep 17 00:00:00 2001 From: Volosoft Agent <43883821+voloagent@users.noreply.github.com> Date: Tue, 5 Apr 2022 06:28:09 +0300 Subject: [PATCH 11/90] Update_NPM_Packages --- .../package.json | 2 +- .../yarn.lock | 224 +++++------ .../package.json | 4 +- .../yarn.lock | 260 ++++++------- .../app/Volo.BloggingTestApp/package.json | 4 +- .../app/Volo.BloggingTestApp/yarn.lock | 298 +++++++-------- .../Volo.ClientSimulation.Demo/package.json | 2 +- .../demo/Volo.ClientSimulation.Demo/yarn.lock | 238 ++++++------ modules/cms-kit/angular/package.json | 10 +- .../angular/projects/cms-kit/package.json | 4 +- .../Volo.CmsKit.IdentityServer/package.json | 2 +- .../host/Volo.CmsKit.IdentityServer/yarn.lock | 238 ++++++------ .../host/Volo.CmsKit.Web.Host/package.json | 2 +- .../host/Volo.CmsKit.Web.Host/yarn.lock | 238 ++++++------ .../host/Volo.CmsKit.Web.Unified/package.json | 4 +- .../host/Volo.CmsKit.Web.Unified/yarn.lock | 360 +++++++++--------- modules/docs/app/VoloDocs.Web/package.json | 4 +- modules/docs/app/VoloDocs.Web/yarn.lock | 298 +++++++-------- .../package.json | 2 +- .../yarn.lock | 238 ++++++------ .../package.json | 4 +- .../yarn.lock | 272 ++++++------- npm/lerna.json | 2 +- npm/ng-packs/lerna.version.json | 2 +- npm/ng-packs/package.json | 24 +- .../packages/account-core/package.json | 6 +- npm/ng-packs/packages/account/package.json | 6 +- npm/ng-packs/packages/components/package.json | 6 +- npm/ng-packs/packages/core/package.json | 4 +- .../packages/feature-management/package.json | 4 +- npm/ng-packs/packages/identity/package.json | 6 +- .../permission-management/package.json | 4 +- npm/ng-packs/packages/schematics/package.json | 2 +- .../packages/setting-management/package.json | 6 +- .../packages/tenant-management/package.json | 6 +- .../packages/theme-basic/package.json | 6 +- .../packages/theme-shared/package.json | 4 +- npm/ng-packs/yarn.lock | 132 +++---- npm/packs/anchor-js/package.json | 4 +- .../package.json | 4 +- .../package.json | 6 +- .../package.json | 4 +- .../package.json | 30 +- npm/packs/aspnetcore.mvc.ui/package-lock.json | 2 +- npm/packs/aspnetcore.mvc.ui/package.json | 2 +- npm/packs/blogging/package.json | 10 +- npm/packs/bootstrap-datepicker/package.json | 2 +- npm/packs/bootstrap/package.json | 4 +- npm/packs/chart.js/package.json | 2 +- npm/packs/clipboard/package.json | 4 +- npm/packs/cms-kit.admin/package.json | 10 +- npm/packs/cms-kit.public/package.json | 6 +- npm/packs/cms-kit/package.json | 6 +- npm/packs/codemirror/package.json | 4 +- npm/packs/core/package.json | 4 +- npm/packs/cropperjs/package.json | 4 +- npm/packs/datatables.net-bs4/package.json | 4 +- npm/packs/datatables.net-bs5/package.json | 4 +- npm/packs/datatables.net/package.json | 4 +- npm/packs/docs/package.json | 12 +- npm/packs/flag-icon-css/package.json | 2 +- npm/packs/font-awesome/package.json | 4 +- npm/packs/highlight.js/package.json | 4 +- npm/packs/jquery-form/package.json | 4 +- .../package.json | 4 +- npm/packs/jquery-validation/package.json | 4 +- npm/packs/jquery/package.json | 4 +- npm/packs/jstree/package.json | 4 +- npm/packs/lodash/package.json | 4 +- npm/packs/luxon/package.json | 4 +- .../package.json | 4 +- npm/packs/markdown-it/package.json | 4 +- npm/packs/owl.carousel/package.json | 4 +- npm/packs/popper.js/package.json | 4 +- npm/packs/prismjs/package.json | 6 +- npm/packs/select2/package.json | 4 +- npm/packs/signalr/package.json | 4 +- npm/packs/slugify/package.json | 2 +- npm/packs/star-rating-svg/package.json | 4 +- npm/packs/sweetalert2/package.json | 4 +- npm/packs/timeago/package.json | 4 +- npm/packs/toastr/package.json | 4 +- npm/packs/tui-editor/package.json | 6 +- npm/packs/uppy/package.json | 4 +- npm/packs/utils/package.json | 2 +- npm/packs/vee-validate/package.json | 4 +- npm/packs/virtual-file-explorer/package.json | 6 +- npm/packs/vue/package.json | 2 +- templates/app-nolayers/angular/package.json | 18 +- .../package.json | 4 +- .../package.json | 4 +- .../package.json | 2 +- .../package.json | 2 +- .../package.json | 2 +- .../package.json | 2 +- templates/app/angular/package.json | 18 +- .../package.json | 4 +- .../package.json | 4 +- .../package.json | 2 +- .../package.json | 2 +- .../package.json | 2 +- .../package.json | 2 +- templates/module/angular/package.json | 18 +- .../projects/my-project-name/package.json | 4 +- .../package.json | 4 +- .../package.json | 2 +- .../package.json | 2 +- .../package.json | 2 +- 108 files changed, 1635 insertions(+), 1635 deletions(-) diff --git a/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.Demo/package.json b/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.Demo/package.json index 6a1b23eb1d..a5ea8e966a 100644 --- a/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.Demo/package.json +++ b/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.Demo/package.json @@ -3,7 +3,7 @@ "name": "asp.net", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.shared": "^5.2.0-rc.2", + "@abp/aspnetcore.mvc.ui.theme.shared": "^5.2.0", "highlight.js": "^9.13.1" }, "devDependencies": {} diff --git a/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.Demo/yarn.lock b/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.Demo/yarn.lock index d2fccff0c7..82ebed5471 100644 --- a/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.Demo/yarn.lock +++ b/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.Demo/yarn.lock @@ -2,30 +2,30 @@ # yarn lockfile v1 -"@abp/aspnetcore.mvc.ui.theme.shared@^5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-5.2.0-rc.2.tgz#9ff2eb2a1b5f438d8f848659400100e20f74fc77" - integrity sha512-m06zMEt0C9P3f7+Qg7SjvP+k4wHPqvAOzsd5jDNN0JekeWH4gIMsqgDAoRB2SA72HUUpMbGe8Utune7EgE/T1Q== - dependencies: - "@abp/aspnetcore.mvc.ui" "~5.2.0-rc.2" - "@abp/bootstrap" "~5.2.0-rc.2" - "@abp/bootstrap-datepicker" "~5.2.0-rc.2" - "@abp/datatables.net-bs5" "~5.2.0-rc.2" - "@abp/font-awesome" "~5.2.0-rc.2" - "@abp/jquery-form" "~5.2.0-rc.2" - "@abp/jquery-validation-unobtrusive" "~5.2.0-rc.2" - "@abp/lodash" "~5.2.0-rc.2" - "@abp/luxon" "~5.2.0-rc.2" - "@abp/malihu-custom-scrollbar-plugin" "~5.2.0-rc.2" - "@abp/select2" "~5.2.0-rc.2" - "@abp/sweetalert2" "~5.2.0-rc.2" - "@abp/timeago" "~5.2.0-rc.2" - "@abp/toastr" "~5.2.0-rc.2" - -"@abp/aspnetcore.mvc.ui@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-5.2.0-rc.2.tgz#427811f66eb738dbb89434e926b36a2309fe43b2" - integrity sha512-+ss9MctYTF9Ewn7VEsMqszEoiX51G070kN2bIepgyXnYetrQRFsTgQGa4yi1bAqyAF9rZ1j0hSB0eM2clFyJMg== +"@abp/aspnetcore.mvc.ui.theme.shared@^5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-5.2.0.tgz#2a7ba6d0d2e28bb5acc77dc8e3a86535912243da" + integrity sha512-+QqRI3Yz+iwitOhfhMnomfpOoqsdh4kL6EFh9z2nI2GhLa+CtiJMAfZUOhLZTGHrBhtFk/mYu8LzYcFRzch8tw== + dependencies: + "@abp/aspnetcore.mvc.ui" "~5.2.0" + "@abp/bootstrap" "~5.2.0" + "@abp/bootstrap-datepicker" "~5.2.0" + "@abp/datatables.net-bs5" "~5.2.0" + "@abp/font-awesome" "~5.2.0" + "@abp/jquery-form" "~5.2.0" + "@abp/jquery-validation-unobtrusive" "~5.2.0" + "@abp/lodash" "~5.2.0" + "@abp/luxon" "~5.2.0" + "@abp/malihu-custom-scrollbar-plugin" "~5.2.0" + "@abp/select2" "~5.2.0" + "@abp/sweetalert2" "~5.2.0" + "@abp/timeago" "~5.2.0" + "@abp/toastr" "~5.2.0" + +"@abp/aspnetcore.mvc.ui@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-5.2.0.tgz#c590f3b56a623e9d00fa50d6a6179d4523ace2a6" + integrity sha512-UtlFa0HVwO8ezve43VEqdGazu9eQ/j4vmv4khKTPG8dEt2u9i3QVruqcIV5XnxnsQiGcZDak7QCyyH1GUFAhUg== dependencies: ansi-colors "^4.1.1" extend-object "^1.0.0" @@ -34,144 +34,144 @@ merge-stream "^2.0.0" micromatch "^4.0.2" -"@abp/bootstrap-datepicker@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-5.2.0-rc.2.tgz#bfb648e7b8e5d2a9806301417c7864abb4cc26e2" - integrity sha512-wKR+5g/xx7zqFGFaOZVO9XySlrOmOFH/ZidDpq9QYjE+OoHSlS8X5DUnkbXj2MbQy4etZuvz9ILcmnBPonrQ7g== +"@abp/bootstrap-datepicker@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-5.2.0.tgz#140892172b3d6edecc1d1e826b517e711d8ff60a" + integrity sha512-9WzC5Up7Uaahre6CCP2bzbtjhmnz3Or828kYxUlWSf7GQO2BydCJBqkWz6gjWDIzxLjQ5AeB+n9odEG3gLNNUw== dependencies: bootstrap-datepicker "^1.9.0" -"@abp/bootstrap@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-5.2.0-rc.2.tgz#0375b38317c5d1f5f6cb7d46a0ee6bf9b85a6f4f" - integrity sha512-hsgxY8WNRonQZP3cmMKvBNHnyCSBfbBB4savLW5r7CxysjnRt6MDyhmmj7XVwVTC1siBviUcWClOHCJisaNRSw== +"@abp/bootstrap@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-5.2.0.tgz#16179d319b2e7a53fde6940217b3e27ce3c32714" + integrity sha512-r11Vzo7kFC8zs5DMvdqsKPG0FEYDqhFzgW4TJKa6d968apFRJ3wGjnF/kJmC1J+XzqNTtyHcwStfNmXUdL0udA== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" bootstrap "^5.1.3" -"@abp/core@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-5.2.0-rc.2.tgz#f0c3dd7f0b12e8e13a702a3b0a53aa4525da673e" - integrity sha512-zotgZOXmkh+aD0KExBr4QytQfDDHxrG15e2HFzYKywhd0mpnwAVdR2Z2Ye01C360wJ2opv0mtgaSuEZniXNO3Q== +"@abp/core@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-5.2.0.tgz#d85ab6fd677d1850261afdba240ef2b8c0d42faf" + integrity sha512-GRxfuip7E97uItAEcv87FSv5C4Tw6JLAkTbu0wAv86uhT46czPw77DZ5LhTRUlDZp4fPzJSy6OABaG1RROlo1w== dependencies: - "@abp/utils" "~5.2.0-rc.2" + "@abp/utils" "~5.2.0" -"@abp/datatables.net-bs5@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-5.2.0-rc.2.tgz#df5cbe004ba3a2330cc667b3724440c4881cc6b2" - integrity sha512-Q2Sy6MMWM3EuELHeHxKkDflPTX09ictonjB5vn/Cau2PHuOkWTnL0Ystl91a1DetQIa1ejJL/YB+Pz1TUVoUNA== +"@abp/datatables.net-bs5@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-5.2.0.tgz#9a6d5cba805a42abde2bbc3dd54ffeb67a188285" + integrity sha512-8eIvTadxffRW04qVRHh245lqX1tAfdyf5AsLqgomm7p0/ec76lNT1mRqwdS/kxD/ClrE6LmBnij1jJdaAs/0xQ== dependencies: - "@abp/datatables.net" "~5.2.0-rc.2" + "@abp/datatables.net" "~5.2.0" datatables.net-bs5 "^1.11.4" -"@abp/datatables.net@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-5.2.0-rc.2.tgz#bfdc01302d19eab0d73eff908238bf88c5806e74" - integrity sha512-TG1b8moW4RqCyNtzQKB7RnCmDt1cDEy/5WD++Maz2x4/yvu1uBBa6qLR7Mn6UNgoC51Y/op+LzaabkwXUSJl4w== +"@abp/datatables.net@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-5.2.0.tgz#fc900b9da0625264a43530e26555cf31b06ee16c" + integrity sha512-O+DZGpvcN42yQieapaX7OdjDkBSlEQIX/iNSbext5e08Gs//cAPj7EQKiSirb6+BIvIZQchPHj2xadw0L7sQvg== dependencies: - "@abp/jquery" "~5.2.0-rc.2" + "@abp/jquery" "~5.2.0" datatables.net "^1.11.4" -"@abp/font-awesome@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-5.2.0-rc.2.tgz#0292cb22c0280dccfe148ad3d46947ede26f8b14" - integrity sha512-FzjH/lnAglswqU7/YAXZP0H/ocGBrDkegMiQ7OjzZVcgGPS9BnqRPbiHDz7mjBHaQHzBtTCcZrXnU0l3GXCdbw== +"@abp/font-awesome@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-5.2.0.tgz#8e0da078d307735ccac394326d06f21de85f2808" + integrity sha512-ZGiov0N35fZ92Abf+k5MqtRkAP8o54rb9iKEjUYgwtF8rnskO5o9fK8TppwXb7PlG9Znh2AUkknpeXOwa1IWtQ== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" "@fortawesome/fontawesome-free" "^5.15.4" -"@abp/jquery-form@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-5.2.0-rc.2.tgz#797e3b72a91435d74f19ddaa9b2e6e04fcfed616" - integrity sha512-cVbReCeM5q7nqeQDjSIH7VmuMwX8lE36D9sariUw8xSUn5GJlnrGYNV4kE7G9JLIlIRanIlS3SPuA3RFA2z9ZA== +"@abp/jquery-form@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-5.2.0.tgz#f6dc777c736260f63875fb05c566ec14b2213b7c" + integrity sha512-xgQvgEXso3a/zMZWNxh9e0RdruCqNh75j9Lp4vHGxaWsXRtvgbCIfayDDWrn+6P28p8bYal7g51Jw6nc5jR5RA== dependencies: - "@abp/jquery" "~5.2.0-rc.2" + "@abp/jquery" "~5.2.0" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-5.2.0-rc.2.tgz#ec0c22cecef3016c1da0b8dca4374a263915a835" - integrity sha512-b+ttLlnRPgDB7V2tnYp8+1Q3niM4ZmiU/ZaQB4z6gSMk/2tPAIhOOwAQt7DYRWSMUsgGFI0NvsgEBM9aLTikFA== +"@abp/jquery-validation-unobtrusive@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-5.2.0.tgz#8acd1346bdd2b6b1cd40017f995265fb3d19539f" + integrity sha512-z7VhlC9zi2Pf6sZ8EexUDHyBieaeO1G5ndmvJTV5wZMAigsu+H7LaAyQrTd5P42WpX1Jy3Lo2UbVCt5Gh98SXg== dependencies: - "@abp/jquery-validation" "~5.2.0-rc.2" + "@abp/jquery-validation" "~5.2.0" jquery-validation-unobtrusive "^3.2.12" -"@abp/jquery-validation@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-5.2.0-rc.2.tgz#a98383e6c7fb21b74ecde937c25d7fa46810a333" - integrity sha512-6lVxJyMfL0kHmv8tpxLhVfK0Rf+qjLMPkm1qHd0pSwvH+GM0QMN39s9TaexCvH3QO70BlEnwXJ2PWVY9OQY5uw== +"@abp/jquery-validation@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-5.2.0.tgz#b594d6d4412b4cc56b97ba5581af559adc91d08a" + integrity sha512-AIAP3qRVI6DcF71rUy0yUXaGKVWwGtMx7Z13MMI66LhTnlS6giUb5UUQhcHJjIp4mAJoYbawiTpAnWezkoLJDQ== dependencies: - "@abp/jquery" "~5.2.0-rc.2" + "@abp/jquery" "~5.2.0" jquery-validation "^1.19.3" -"@abp/jquery@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-5.2.0-rc.2.tgz#3235b92834cbca4d3e22fb0b19122aa2a24b8262" - integrity sha512-u7xpQcaMpzlXq018qBdzwWmPx+65QHPq5VhI7aAvZAUlQrvQjiiCeG25egxOeCL0aROcCjsAlnTItT1U/q9loQ== +"@abp/jquery@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-5.2.0.tgz#2c924adc4a17013a7958017e985ca337c5064389" + integrity sha512-uL9Y9a31D7RLTz0VtSj0Wx9PHNrVrigPf8AUS8zMAblc8DZLEzXJ6L4nUU3xDW6+TGC/rO2x8zz1y/T6sKfzUw== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" jquery "~3.6.0" -"@abp/lodash@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-5.2.0-rc.2.tgz#e55f11279d4f374785a56ec68ed99cdf2495a9aa" - integrity sha512-BR6d1NbTcuk772RK8VdeHBokbqZ1OHUgRKdPG3MXlDGKZmUS4/ijFdRiIvo7Rd0WFqgk2QdbHw3lfKQ/CGqyhw== +"@abp/lodash@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-5.2.0.tgz#27f2c9c5848faceed04f0198d46cb34515e99608" + integrity sha512-5wcHMm+QtjEv/USxFu7jLNlNRiBwEnQG6zFwIKrT5V3d8dD8xq4zG86rojSexxd/0AKqyo5foMctV4IG8HC6Mg== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" lodash "^4.17.21" -"@abp/luxon@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-5.2.0-rc.2.tgz#0d263482b9a73269164a8a58562ce8bd69b57f36" - integrity sha512-KIhpvl9kf43Bc/E/u6bmb1lp0asf81NoUoERQTRz7JqmH1XYJvJCqGHxommvItcu7zNjCLL6FK/JtO0v7DUiEw== +"@abp/luxon@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-5.2.0.tgz#819b6cb5315622545bad8a84b8f3d6d63fbdf52d" + integrity sha512-VD2I/qhRYbbu5T7sUG5g01bcbw0gwAGmqUR4QI/5gmBYif8VuGHu/zTvnEn4Vhj6P5/tSWpa7blUs0EiFk/L/A== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" luxon "^2.3.0" -"@abp/malihu-custom-scrollbar-plugin@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-5.2.0-rc.2.tgz#5136c0d59d5d385350f560c6d8a3d10f6393dea7" - integrity sha512-7Q8yZbU9YRA5/Y+rRLLiPD724rjfrVBuCpfp1+b99LyeFTFTSD2oNG3r/I6FC7tE5HLaFscJLJyOca4GPS1mww== +"@abp/malihu-custom-scrollbar-plugin@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-5.2.0.tgz#54ee9cf2c1049d617afebfd7b9ebae5b9225746e" + integrity sha512-CvQb/lnoxs+nEN0FuWwJyA5EgsbiSy23sYbTrM2t/KF6X3dK2m+4RMbEeG7rRYV1i6c1jfuHrjoFh3FPr9KRlA== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/select2@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-5.2.0-rc.2.tgz#2eef30442957ac02133357604a1256e995a9ebe7" - integrity sha512-1cFOavpWP6zRfrpXi0zozFkL6W0tEEBkWj7AiHU3AGctAQEZ0qWGKSTIExqnEsDb3LsjAKMdBycGdkLFbK97Og== +"@abp/select2@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-5.2.0.tgz#4b9418851cf52346131172c9c497173749bdd22b" + integrity sha512-t+EjuNqRIZIlu4Wk2pL+Ud/+gIFSoM3WN4U+LKGkQ1vwiVRbCUqvdj5LjGuEVrmN96lNfv3Xxut+XQoJDFjfeg== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" select2 "^4.0.13" -"@abp/sweetalert2@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-5.2.0-rc.2.tgz#15b6718b1378e8bd7e0ea019b965e7b51f0cb1ea" - integrity sha512-1ROKcfpu0Xyk7ebUFMNBhFgENcHCMj48+1Lj/OxdJH3U7KhyF5WEs54uYgn8EvY2wTCgOkHCnqeK9bRCp5M9+g== +"@abp/sweetalert2@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-5.2.0.tgz#f5625f33edcc9d56ab86cca30472637edfb52c95" + integrity sha512-8Ax00JbqfcB6nLIeeocPX7Yk4uPHsMXHMg6oLKTGV4w88h1MdazQ3YMb7E/9AXjCNoQE77cCEJ7wvV3FXC45SA== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" sweetalert2 "^11.3.6" -"@abp/timeago@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-5.2.0-rc.2.tgz#e6ad0cb584515b95e47258976d726fd996b7f47d" - integrity sha512-D9Y7xfpP6neURDkP/WMrFh25G++0SUiGIDaCIElgymhNdVp2gm9pC633ShetMOFrPCSuOUvlzC2p4YkUdq0Lnw== +"@abp/timeago@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-5.2.0.tgz#4ac58114acc00d2b2b4d2a051b98caba895c1a34" + integrity sha512-mgMP/vfdUIjjHNqssXcTMtQMQ1ZW9D9keUxvjtQyE+rXNByB+sXMf/mECEGsT9/hK/nDM+aBHxG+O7lkLI+dFA== dependencies: - "@abp/jquery" "~5.2.0-rc.2" + "@abp/jquery" "~5.2.0" timeago "^1.6.7" -"@abp/toastr@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-5.2.0-rc.2.tgz#b5f013f1f00dab648da2fe1cf4ece6691e6eafc7" - integrity sha512-FSkva7zP3kJFSh6SlmvrgjPFJscJbmrgCilxGxPGVxlg5p9LNORgkotNk2yKsGHX0F0rnKJ4kHepTq7g+oGMdw== +"@abp/toastr@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-5.2.0.tgz#215af1bdc92a649ac54cb745489e00d9f0e5096b" + integrity sha512-wmoEOA6lOuTTbljsbTTfBGmJb6ur1pDi/VPuf7UF7FXoTcK/NIuzufblzTldsUleYXyIodLfg2s6qpOUGCDO8Q== dependencies: - "@abp/jquery" "~5.2.0-rc.2" + "@abp/jquery" "~5.2.0" toastr "^2.1.4" -"@abp/utils@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-5.2.0-rc.2.tgz#1280059ff3e948ae0827eaf06d916e5a90f8907b" - integrity sha512-/mo4dSXPkhCEbqyKunuURcF1cEzuJqRTPOGpjSrjDwOgymVSWp/AqqjJPBXuc4qrMfB4q9y+Iod5nslXp2cXeA== +"@abp/utils@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-5.2.0.tgz#3f5a7a2aab94f5c2a5e1f0f634517a4939909fa7" + integrity sha512-CBQzu8bAQQ9EUPCjjcXwLCDE/rPFGTtSRtGeMP1lrjavYEAxplXu58Fd8WeTl6d8/dqGA3nNQUnWbc2lGPlUYw== dependencies: just-compare "^1.3.0" diff --git a/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic.Demo/package.json b/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic.Demo/package.json index 2b43b46185..4f5f3e9479 100644 --- a/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic.Demo/package.json +++ b/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic.Demo/package.json @@ -3,8 +3,8 @@ "name": "asp.net", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0-rc.2", - "@abp/prismjs": "^5.2.0-rc.2" + "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0", + "@abp/prismjs": "^5.2.0" }, "devDependencies": {} } diff --git a/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic.Demo/yarn.lock b/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic.Demo/yarn.lock index 7ebb4903cc..573608215c 100644 --- a/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic.Demo/yarn.lock +++ b/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic.Demo/yarn.lock @@ -2,37 +2,37 @@ # yarn lockfile v1 -"@abp/aspnetcore.mvc.ui.theme.basic@^5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-5.2.0-rc.2.tgz#d2cf4a0f2b8a93f1fe53a0bc6c66d9c3233b620a" - integrity sha512-aQk3RSl31UT4gEqiHT3oV06BZ/k6q1DVKBwVOj+YQEIb8ojptJtbGv+aUhHEql5I7zwiWe4EWf2rM2Ve0JQa6Q== - dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~5.2.0-rc.2" - -"@abp/aspnetcore.mvc.ui.theme.shared@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-5.2.0-rc.2.tgz#9ff2eb2a1b5f438d8f848659400100e20f74fc77" - integrity sha512-m06zMEt0C9P3f7+Qg7SjvP+k4wHPqvAOzsd5jDNN0JekeWH4gIMsqgDAoRB2SA72HUUpMbGe8Utune7EgE/T1Q== - dependencies: - "@abp/aspnetcore.mvc.ui" "~5.2.0-rc.2" - "@abp/bootstrap" "~5.2.0-rc.2" - "@abp/bootstrap-datepicker" "~5.2.0-rc.2" - "@abp/datatables.net-bs5" "~5.2.0-rc.2" - "@abp/font-awesome" "~5.2.0-rc.2" - "@abp/jquery-form" "~5.2.0-rc.2" - "@abp/jquery-validation-unobtrusive" "~5.2.0-rc.2" - "@abp/lodash" "~5.2.0-rc.2" - "@abp/luxon" "~5.2.0-rc.2" - "@abp/malihu-custom-scrollbar-plugin" "~5.2.0-rc.2" - "@abp/select2" "~5.2.0-rc.2" - "@abp/sweetalert2" "~5.2.0-rc.2" - "@abp/timeago" "~5.2.0-rc.2" - "@abp/toastr" "~5.2.0-rc.2" - -"@abp/aspnetcore.mvc.ui@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-5.2.0-rc.2.tgz#427811f66eb738dbb89434e926b36a2309fe43b2" - integrity sha512-+ss9MctYTF9Ewn7VEsMqszEoiX51G070kN2bIepgyXnYetrQRFsTgQGa4yi1bAqyAF9rZ1j0hSB0eM2clFyJMg== +"@abp/aspnetcore.mvc.ui.theme.basic@^5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-5.2.0.tgz#272f3ba89ee7a37bc2c5d0d1c280a47c39de4baa" + integrity sha512-9yTHmtmD7sgA0fTxFCohhMrmolfnp/5sJzPsh3USGqANjr3g9Ybv3tydP4Hwfb1Ts+dqcrITdsM0Ny/EcEt+iQ== + dependencies: + "@abp/aspnetcore.mvc.ui.theme.shared" "~5.2.0" + +"@abp/aspnetcore.mvc.ui.theme.shared@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-5.2.0.tgz#2a7ba6d0d2e28bb5acc77dc8e3a86535912243da" + integrity sha512-+QqRI3Yz+iwitOhfhMnomfpOoqsdh4kL6EFh9z2nI2GhLa+CtiJMAfZUOhLZTGHrBhtFk/mYu8LzYcFRzch8tw== + dependencies: + "@abp/aspnetcore.mvc.ui" "~5.2.0" + "@abp/bootstrap" "~5.2.0" + "@abp/bootstrap-datepicker" "~5.2.0" + "@abp/datatables.net-bs5" "~5.2.0" + "@abp/font-awesome" "~5.2.0" + "@abp/jquery-form" "~5.2.0" + "@abp/jquery-validation-unobtrusive" "~5.2.0" + "@abp/lodash" "~5.2.0" + "@abp/luxon" "~5.2.0" + "@abp/malihu-custom-scrollbar-plugin" "~5.2.0" + "@abp/select2" "~5.2.0" + "@abp/sweetalert2" "~5.2.0" + "@abp/timeago" "~5.2.0" + "@abp/toastr" "~5.2.0" + +"@abp/aspnetcore.mvc.ui@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-5.2.0.tgz#c590f3b56a623e9d00fa50d6a6179d4523ace2a6" + integrity sha512-UtlFa0HVwO8ezve43VEqdGazu9eQ/j4vmv4khKTPG8dEt2u9i3QVruqcIV5XnxnsQiGcZDak7QCyyH1GUFAhUg== dependencies: ansi-colors "^4.1.1" extend-object "^1.0.0" @@ -41,161 +41,161 @@ merge-stream "^2.0.0" micromatch "^4.0.2" -"@abp/bootstrap-datepicker@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-5.2.0-rc.2.tgz#bfb648e7b8e5d2a9806301417c7864abb4cc26e2" - integrity sha512-wKR+5g/xx7zqFGFaOZVO9XySlrOmOFH/ZidDpq9QYjE+OoHSlS8X5DUnkbXj2MbQy4etZuvz9ILcmnBPonrQ7g== +"@abp/bootstrap-datepicker@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-5.2.0.tgz#140892172b3d6edecc1d1e826b517e711d8ff60a" + integrity sha512-9WzC5Up7Uaahre6CCP2bzbtjhmnz3Or828kYxUlWSf7GQO2BydCJBqkWz6gjWDIzxLjQ5AeB+n9odEG3gLNNUw== dependencies: bootstrap-datepicker "^1.9.0" -"@abp/bootstrap@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-5.2.0-rc.2.tgz#0375b38317c5d1f5f6cb7d46a0ee6bf9b85a6f4f" - integrity sha512-hsgxY8WNRonQZP3cmMKvBNHnyCSBfbBB4savLW5r7CxysjnRt6MDyhmmj7XVwVTC1siBviUcWClOHCJisaNRSw== +"@abp/bootstrap@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-5.2.0.tgz#16179d319b2e7a53fde6940217b3e27ce3c32714" + integrity sha512-r11Vzo7kFC8zs5DMvdqsKPG0FEYDqhFzgW4TJKa6d968apFRJ3wGjnF/kJmC1J+XzqNTtyHcwStfNmXUdL0udA== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" bootstrap "^5.1.3" -"@abp/clipboard@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-5.2.0-rc.2.tgz#d641c6bdfdf84b991b84c4331a10ca398a7ee26a" - integrity sha512-RxcY94FfCUhGVFbb2CXTRWujrkSubdYGQ3wbkdZPeOCuF8t60WzyhxoQanRqSdiUbk39W8nUuReYtclzXwM58g== +"@abp/clipboard@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-5.2.0.tgz#5374562edfa95c6a2a2244b4f1667625c73b7185" + integrity sha512-AFdY+7n4khi6mM86EzbclzC2S/SN5FncGCFTW873GQ2OakDzyCRhNqtoLihcvSW5YwDvofMJjAITCy5GnzelRw== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" clipboard "^2.0.8" -"@abp/core@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-5.2.0-rc.2.tgz#f0c3dd7f0b12e8e13a702a3b0a53aa4525da673e" - integrity sha512-zotgZOXmkh+aD0KExBr4QytQfDDHxrG15e2HFzYKywhd0mpnwAVdR2Z2Ye01C360wJ2opv0mtgaSuEZniXNO3Q== +"@abp/core@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-5.2.0.tgz#d85ab6fd677d1850261afdba240ef2b8c0d42faf" + integrity sha512-GRxfuip7E97uItAEcv87FSv5C4Tw6JLAkTbu0wAv86uhT46czPw77DZ5LhTRUlDZp4fPzJSy6OABaG1RROlo1w== dependencies: - "@abp/utils" "~5.2.0-rc.2" + "@abp/utils" "~5.2.0" -"@abp/datatables.net-bs5@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-5.2.0-rc.2.tgz#df5cbe004ba3a2330cc667b3724440c4881cc6b2" - integrity sha512-Q2Sy6MMWM3EuELHeHxKkDflPTX09ictonjB5vn/Cau2PHuOkWTnL0Ystl91a1DetQIa1ejJL/YB+Pz1TUVoUNA== +"@abp/datatables.net-bs5@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-5.2.0.tgz#9a6d5cba805a42abde2bbc3dd54ffeb67a188285" + integrity sha512-8eIvTadxffRW04qVRHh245lqX1tAfdyf5AsLqgomm7p0/ec76lNT1mRqwdS/kxD/ClrE6LmBnij1jJdaAs/0xQ== dependencies: - "@abp/datatables.net" "~5.2.0-rc.2" + "@abp/datatables.net" "~5.2.0" datatables.net-bs5 "^1.11.4" -"@abp/datatables.net@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-5.2.0-rc.2.tgz#bfdc01302d19eab0d73eff908238bf88c5806e74" - integrity sha512-TG1b8moW4RqCyNtzQKB7RnCmDt1cDEy/5WD++Maz2x4/yvu1uBBa6qLR7Mn6UNgoC51Y/op+LzaabkwXUSJl4w== +"@abp/datatables.net@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-5.2.0.tgz#fc900b9da0625264a43530e26555cf31b06ee16c" + integrity sha512-O+DZGpvcN42yQieapaX7OdjDkBSlEQIX/iNSbext5e08Gs//cAPj7EQKiSirb6+BIvIZQchPHj2xadw0L7sQvg== dependencies: - "@abp/jquery" "~5.2.0-rc.2" + "@abp/jquery" "~5.2.0" datatables.net "^1.11.4" -"@abp/font-awesome@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-5.2.0-rc.2.tgz#0292cb22c0280dccfe148ad3d46947ede26f8b14" - integrity sha512-FzjH/lnAglswqU7/YAXZP0H/ocGBrDkegMiQ7OjzZVcgGPS9BnqRPbiHDz7mjBHaQHzBtTCcZrXnU0l3GXCdbw== +"@abp/font-awesome@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-5.2.0.tgz#8e0da078d307735ccac394326d06f21de85f2808" + integrity sha512-ZGiov0N35fZ92Abf+k5MqtRkAP8o54rb9iKEjUYgwtF8rnskO5o9fK8TppwXb7PlG9Znh2AUkknpeXOwa1IWtQ== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" "@fortawesome/fontawesome-free" "^5.15.4" -"@abp/jquery-form@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-5.2.0-rc.2.tgz#797e3b72a91435d74f19ddaa9b2e6e04fcfed616" - integrity sha512-cVbReCeM5q7nqeQDjSIH7VmuMwX8lE36D9sariUw8xSUn5GJlnrGYNV4kE7G9JLIlIRanIlS3SPuA3RFA2z9ZA== +"@abp/jquery-form@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-5.2.0.tgz#f6dc777c736260f63875fb05c566ec14b2213b7c" + integrity sha512-xgQvgEXso3a/zMZWNxh9e0RdruCqNh75j9Lp4vHGxaWsXRtvgbCIfayDDWrn+6P28p8bYal7g51Jw6nc5jR5RA== dependencies: - "@abp/jquery" "~5.2.0-rc.2" + "@abp/jquery" "~5.2.0" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-5.2.0-rc.2.tgz#ec0c22cecef3016c1da0b8dca4374a263915a835" - integrity sha512-b+ttLlnRPgDB7V2tnYp8+1Q3niM4ZmiU/ZaQB4z6gSMk/2tPAIhOOwAQt7DYRWSMUsgGFI0NvsgEBM9aLTikFA== +"@abp/jquery-validation-unobtrusive@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-5.2.0.tgz#8acd1346bdd2b6b1cd40017f995265fb3d19539f" + integrity sha512-z7VhlC9zi2Pf6sZ8EexUDHyBieaeO1G5ndmvJTV5wZMAigsu+H7LaAyQrTd5P42WpX1Jy3Lo2UbVCt5Gh98SXg== dependencies: - "@abp/jquery-validation" "~5.2.0-rc.2" + "@abp/jquery-validation" "~5.2.0" jquery-validation-unobtrusive "^3.2.12" -"@abp/jquery-validation@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-5.2.0-rc.2.tgz#a98383e6c7fb21b74ecde937c25d7fa46810a333" - integrity sha512-6lVxJyMfL0kHmv8tpxLhVfK0Rf+qjLMPkm1qHd0pSwvH+GM0QMN39s9TaexCvH3QO70BlEnwXJ2PWVY9OQY5uw== +"@abp/jquery-validation@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-5.2.0.tgz#b594d6d4412b4cc56b97ba5581af559adc91d08a" + integrity sha512-AIAP3qRVI6DcF71rUy0yUXaGKVWwGtMx7Z13MMI66LhTnlS6giUb5UUQhcHJjIp4mAJoYbawiTpAnWezkoLJDQ== dependencies: - "@abp/jquery" "~5.2.0-rc.2" + "@abp/jquery" "~5.2.0" jquery-validation "^1.19.3" -"@abp/jquery@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-5.2.0-rc.2.tgz#3235b92834cbca4d3e22fb0b19122aa2a24b8262" - integrity sha512-u7xpQcaMpzlXq018qBdzwWmPx+65QHPq5VhI7aAvZAUlQrvQjiiCeG25egxOeCL0aROcCjsAlnTItT1U/q9loQ== +"@abp/jquery@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-5.2.0.tgz#2c924adc4a17013a7958017e985ca337c5064389" + integrity sha512-uL9Y9a31D7RLTz0VtSj0Wx9PHNrVrigPf8AUS8zMAblc8DZLEzXJ6L4nUU3xDW6+TGC/rO2x8zz1y/T6sKfzUw== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" jquery "~3.6.0" -"@abp/lodash@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-5.2.0-rc.2.tgz#e55f11279d4f374785a56ec68ed99cdf2495a9aa" - integrity sha512-BR6d1NbTcuk772RK8VdeHBokbqZ1OHUgRKdPG3MXlDGKZmUS4/ijFdRiIvo7Rd0WFqgk2QdbHw3lfKQ/CGqyhw== +"@abp/lodash@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-5.2.0.tgz#27f2c9c5848faceed04f0198d46cb34515e99608" + integrity sha512-5wcHMm+QtjEv/USxFu7jLNlNRiBwEnQG6zFwIKrT5V3d8dD8xq4zG86rojSexxd/0AKqyo5foMctV4IG8HC6Mg== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" lodash "^4.17.21" -"@abp/luxon@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-5.2.0-rc.2.tgz#0d263482b9a73269164a8a58562ce8bd69b57f36" - integrity sha512-KIhpvl9kf43Bc/E/u6bmb1lp0asf81NoUoERQTRz7JqmH1XYJvJCqGHxommvItcu7zNjCLL6FK/JtO0v7DUiEw== +"@abp/luxon@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-5.2.0.tgz#819b6cb5315622545bad8a84b8f3d6d63fbdf52d" + integrity sha512-VD2I/qhRYbbu5T7sUG5g01bcbw0gwAGmqUR4QI/5gmBYif8VuGHu/zTvnEn4Vhj6P5/tSWpa7blUs0EiFk/L/A== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" luxon "^2.3.0" -"@abp/malihu-custom-scrollbar-plugin@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-5.2.0-rc.2.tgz#5136c0d59d5d385350f560c6d8a3d10f6393dea7" - integrity sha512-7Q8yZbU9YRA5/Y+rRLLiPD724rjfrVBuCpfp1+b99LyeFTFTSD2oNG3r/I6FC7tE5HLaFscJLJyOca4GPS1mww== +"@abp/malihu-custom-scrollbar-plugin@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-5.2.0.tgz#54ee9cf2c1049d617afebfd7b9ebae5b9225746e" + integrity sha512-CvQb/lnoxs+nEN0FuWwJyA5EgsbiSy23sYbTrM2t/KF6X3dK2m+4RMbEeG7rRYV1i6c1jfuHrjoFh3FPr9KRlA== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/prismjs@^5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-5.2.0-rc.2.tgz#80d326cd085e0994a1bcbe13f34ebf68d21224f7" - integrity sha512-tgADoIom+9SufIfDJGzXykdgsRf0fHD2O4lcqZYNRDtBPw3RI0XJki3w4fBOffS1kKTMn6ymIAU06SMpEB872A== +"@abp/prismjs@^5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-5.2.0.tgz#c33ee1178a3916a6a1eac54ec4bdc78ca0dc42c7" + integrity sha512-jVFm7d80u5cIuygQViotDEQNpe2nGxEPQmZNzEV1jM4myMAMN1PZHFhoFxb3FAbH2q0wlZ5lcXjQs5cTz8V8Mw== dependencies: - "@abp/clipboard" "~5.2.0-rc.2" - "@abp/core" "~5.2.0-rc.2" + "@abp/clipboard" "~5.2.0" + "@abp/core" "~5.2.0" prismjs "^1.26.0" -"@abp/select2@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-5.2.0-rc.2.tgz#2eef30442957ac02133357604a1256e995a9ebe7" - integrity sha512-1cFOavpWP6zRfrpXi0zozFkL6W0tEEBkWj7AiHU3AGctAQEZ0qWGKSTIExqnEsDb3LsjAKMdBycGdkLFbK97Og== +"@abp/select2@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-5.2.0.tgz#4b9418851cf52346131172c9c497173749bdd22b" + integrity sha512-t+EjuNqRIZIlu4Wk2pL+Ud/+gIFSoM3WN4U+LKGkQ1vwiVRbCUqvdj5LjGuEVrmN96lNfv3Xxut+XQoJDFjfeg== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" select2 "^4.0.13" -"@abp/sweetalert2@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-5.2.0-rc.2.tgz#15b6718b1378e8bd7e0ea019b965e7b51f0cb1ea" - integrity sha512-1ROKcfpu0Xyk7ebUFMNBhFgENcHCMj48+1Lj/OxdJH3U7KhyF5WEs54uYgn8EvY2wTCgOkHCnqeK9bRCp5M9+g== +"@abp/sweetalert2@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-5.2.0.tgz#f5625f33edcc9d56ab86cca30472637edfb52c95" + integrity sha512-8Ax00JbqfcB6nLIeeocPX7Yk4uPHsMXHMg6oLKTGV4w88h1MdazQ3YMb7E/9AXjCNoQE77cCEJ7wvV3FXC45SA== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" sweetalert2 "^11.3.6" -"@abp/timeago@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-5.2.0-rc.2.tgz#e6ad0cb584515b95e47258976d726fd996b7f47d" - integrity sha512-D9Y7xfpP6neURDkP/WMrFh25G++0SUiGIDaCIElgymhNdVp2gm9pC633ShetMOFrPCSuOUvlzC2p4YkUdq0Lnw== +"@abp/timeago@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-5.2.0.tgz#4ac58114acc00d2b2b4d2a051b98caba895c1a34" + integrity sha512-mgMP/vfdUIjjHNqssXcTMtQMQ1ZW9D9keUxvjtQyE+rXNByB+sXMf/mECEGsT9/hK/nDM+aBHxG+O7lkLI+dFA== dependencies: - "@abp/jquery" "~5.2.0-rc.2" + "@abp/jquery" "~5.2.0" timeago "^1.6.7" -"@abp/toastr@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-5.2.0-rc.2.tgz#b5f013f1f00dab648da2fe1cf4ece6691e6eafc7" - integrity sha512-FSkva7zP3kJFSh6SlmvrgjPFJscJbmrgCilxGxPGVxlg5p9LNORgkotNk2yKsGHX0F0rnKJ4kHepTq7g+oGMdw== +"@abp/toastr@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-5.2.0.tgz#215af1bdc92a649ac54cb745489e00d9f0e5096b" + integrity sha512-wmoEOA6lOuTTbljsbTTfBGmJb6ur1pDi/VPuf7UF7FXoTcK/NIuzufblzTldsUleYXyIodLfg2s6qpOUGCDO8Q== dependencies: - "@abp/jquery" "~5.2.0-rc.2" + "@abp/jquery" "~5.2.0" toastr "^2.1.4" -"@abp/utils@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-5.2.0-rc.2.tgz#1280059ff3e948ae0827eaf06d916e5a90f8907b" - integrity sha512-/mo4dSXPkhCEbqyKunuURcF1cEzuJqRTPOGpjSrjDwOgymVSWp/AqqjJPBXuc4qrMfB4q9y+Iod5nslXp2cXeA== +"@abp/utils@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-5.2.0.tgz#3f5a7a2aab94f5c2a5e1f0f634517a4939909fa7" + integrity sha512-CBQzu8bAQQ9EUPCjjcXwLCDE/rPFGTtSRtGeMP1lrjavYEAxplXu58Fd8WeTl6d8/dqGA3nNQUnWbc2lGPlUYw== dependencies: just-compare "^1.3.0" diff --git a/modules/blogging/app/Volo.BloggingTestApp/package.json b/modules/blogging/app/Volo.BloggingTestApp/package.json index afb4f5315d..396293af7c 100644 --- a/modules/blogging/app/Volo.BloggingTestApp/package.json +++ b/modules/blogging/app/Volo.BloggingTestApp/package.json @@ -3,7 +3,7 @@ "name": "volo.blogtestapp", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0-rc.2", - "@abp/blogging": "^5.2.0-rc.2" + "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0", + "@abp/blogging": "^5.2.0" } } \ No newline at end of file diff --git a/modules/blogging/app/Volo.BloggingTestApp/yarn.lock b/modules/blogging/app/Volo.BloggingTestApp/yarn.lock index ff94858229..f74c124a17 100644 --- a/modules/blogging/app/Volo.BloggingTestApp/yarn.lock +++ b/modules/blogging/app/Volo.BloggingTestApp/yarn.lock @@ -2,37 +2,37 @@ # yarn lockfile v1 -"@abp/aspnetcore.mvc.ui.theme.basic@^5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-5.2.0-rc.2.tgz#d2cf4a0f2b8a93f1fe53a0bc6c66d9c3233b620a" - integrity sha512-aQk3RSl31UT4gEqiHT3oV06BZ/k6q1DVKBwVOj+YQEIb8ojptJtbGv+aUhHEql5I7zwiWe4EWf2rM2Ve0JQa6Q== - dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~5.2.0-rc.2" - -"@abp/aspnetcore.mvc.ui.theme.shared@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-5.2.0-rc.2.tgz#9ff2eb2a1b5f438d8f848659400100e20f74fc77" - integrity sha512-m06zMEt0C9P3f7+Qg7SjvP+k4wHPqvAOzsd5jDNN0JekeWH4gIMsqgDAoRB2SA72HUUpMbGe8Utune7EgE/T1Q== - dependencies: - "@abp/aspnetcore.mvc.ui" "~5.2.0-rc.2" - "@abp/bootstrap" "~5.2.0-rc.2" - "@abp/bootstrap-datepicker" "~5.2.0-rc.2" - "@abp/datatables.net-bs5" "~5.2.0-rc.2" - "@abp/font-awesome" "~5.2.0-rc.2" - "@abp/jquery-form" "~5.2.0-rc.2" - "@abp/jquery-validation-unobtrusive" "~5.2.0-rc.2" - "@abp/lodash" "~5.2.0-rc.2" - "@abp/luxon" "~5.2.0-rc.2" - "@abp/malihu-custom-scrollbar-plugin" "~5.2.0-rc.2" - "@abp/select2" "~5.2.0-rc.2" - "@abp/sweetalert2" "~5.2.0-rc.2" - "@abp/timeago" "~5.2.0-rc.2" - "@abp/toastr" "~5.2.0-rc.2" - -"@abp/aspnetcore.mvc.ui@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-5.2.0-rc.2.tgz#427811f66eb738dbb89434e926b36a2309fe43b2" - integrity sha512-+ss9MctYTF9Ewn7VEsMqszEoiX51G070kN2bIepgyXnYetrQRFsTgQGa4yi1bAqyAF9rZ1j0hSB0eM2clFyJMg== +"@abp/aspnetcore.mvc.ui.theme.basic@^5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-5.2.0.tgz#272f3ba89ee7a37bc2c5d0d1c280a47c39de4baa" + integrity sha512-9yTHmtmD7sgA0fTxFCohhMrmolfnp/5sJzPsh3USGqANjr3g9Ybv3tydP4Hwfb1Ts+dqcrITdsM0Ny/EcEt+iQ== + dependencies: + "@abp/aspnetcore.mvc.ui.theme.shared" "~5.2.0" + +"@abp/aspnetcore.mvc.ui.theme.shared@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-5.2.0.tgz#2a7ba6d0d2e28bb5acc77dc8e3a86535912243da" + integrity sha512-+QqRI3Yz+iwitOhfhMnomfpOoqsdh4kL6EFh9z2nI2GhLa+CtiJMAfZUOhLZTGHrBhtFk/mYu8LzYcFRzch8tw== + dependencies: + "@abp/aspnetcore.mvc.ui" "~5.2.0" + "@abp/bootstrap" "~5.2.0" + "@abp/bootstrap-datepicker" "~5.2.0" + "@abp/datatables.net-bs5" "~5.2.0" + "@abp/font-awesome" "~5.2.0" + "@abp/jquery-form" "~5.2.0" + "@abp/jquery-validation-unobtrusive" "~5.2.0" + "@abp/lodash" "~5.2.0" + "@abp/luxon" "~5.2.0" + "@abp/malihu-custom-scrollbar-plugin" "~5.2.0" + "@abp/select2" "~5.2.0" + "@abp/sweetalert2" "~5.2.0" + "@abp/timeago" "~5.2.0" + "@abp/toastr" "~5.2.0" + +"@abp/aspnetcore.mvc.ui@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-5.2.0.tgz#c590f3b56a623e9d00fa50d6a6179d4523ace2a6" + integrity sha512-UtlFa0HVwO8ezve43VEqdGazu9eQ/j4vmv4khKTPG8dEt2u9i3QVruqcIV5XnxnsQiGcZDak7QCyyH1GUFAhUg== dependencies: ansi-colors "^4.1.1" extend-object "^1.0.0" @@ -41,187 +41,187 @@ merge-stream "^2.0.0" micromatch "^4.0.2" -"@abp/blogging@^5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/blogging/-/blogging-5.2.0-rc.2.tgz#4fa756e50ffd9a9cbc4e8c01b8c1e4f366848bcb" - integrity sha512-JJY04Ktjp1uhjzowm3bu7zTeIlLkxkIMkB0L3bmQ0ytzi8momrBdvwqVZue/1NMXPx7VrsuOu80zeKbYLC5Ovg== +"@abp/blogging@^5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/blogging/-/blogging-5.2.0.tgz#0099005206f2b0ab0e6622be6638a52597be494d" + integrity sha512-CQd/mlURfUrCQhGyry0MvGeKV88TnJasj/Q0+HDkCT2o7Wi4E7Ore137jwGDeV0oWQe3cPxY8iTNDogH8ivU8A== dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~5.2.0-rc.2" - "@abp/owl.carousel" "~5.2.0-rc.2" - "@abp/prismjs" "~5.2.0-rc.2" - "@abp/tui-editor" "~5.2.0-rc.2" + "@abp/aspnetcore.mvc.ui.theme.shared" "~5.2.0" + "@abp/owl.carousel" "~5.2.0" + "@abp/prismjs" "~5.2.0" + "@abp/tui-editor" "~5.2.0" -"@abp/bootstrap-datepicker@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-5.2.0-rc.2.tgz#bfb648e7b8e5d2a9806301417c7864abb4cc26e2" - integrity sha512-wKR+5g/xx7zqFGFaOZVO9XySlrOmOFH/ZidDpq9QYjE+OoHSlS8X5DUnkbXj2MbQy4etZuvz9ILcmnBPonrQ7g== +"@abp/bootstrap-datepicker@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-5.2.0.tgz#140892172b3d6edecc1d1e826b517e711d8ff60a" + integrity sha512-9WzC5Up7Uaahre6CCP2bzbtjhmnz3Or828kYxUlWSf7GQO2BydCJBqkWz6gjWDIzxLjQ5AeB+n9odEG3gLNNUw== dependencies: bootstrap-datepicker "^1.9.0" -"@abp/bootstrap@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-5.2.0-rc.2.tgz#0375b38317c5d1f5f6cb7d46a0ee6bf9b85a6f4f" - integrity sha512-hsgxY8WNRonQZP3cmMKvBNHnyCSBfbBB4savLW5r7CxysjnRt6MDyhmmj7XVwVTC1siBviUcWClOHCJisaNRSw== +"@abp/bootstrap@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-5.2.0.tgz#16179d319b2e7a53fde6940217b3e27ce3c32714" + integrity sha512-r11Vzo7kFC8zs5DMvdqsKPG0FEYDqhFzgW4TJKa6d968apFRJ3wGjnF/kJmC1J+XzqNTtyHcwStfNmXUdL0udA== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" bootstrap "^5.1.3" -"@abp/clipboard@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-5.2.0-rc.2.tgz#d641c6bdfdf84b991b84c4331a10ca398a7ee26a" - integrity sha512-RxcY94FfCUhGVFbb2CXTRWujrkSubdYGQ3wbkdZPeOCuF8t60WzyhxoQanRqSdiUbk39W8nUuReYtclzXwM58g== +"@abp/clipboard@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-5.2.0.tgz#5374562edfa95c6a2a2244b4f1667625c73b7185" + integrity sha512-AFdY+7n4khi6mM86EzbclzC2S/SN5FncGCFTW873GQ2OakDzyCRhNqtoLihcvSW5YwDvofMJjAITCy5GnzelRw== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" clipboard "^2.0.8" -"@abp/core@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-5.2.0-rc.2.tgz#f0c3dd7f0b12e8e13a702a3b0a53aa4525da673e" - integrity sha512-zotgZOXmkh+aD0KExBr4QytQfDDHxrG15e2HFzYKywhd0mpnwAVdR2Z2Ye01C360wJ2opv0mtgaSuEZniXNO3Q== +"@abp/core@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-5.2.0.tgz#d85ab6fd677d1850261afdba240ef2b8c0d42faf" + integrity sha512-GRxfuip7E97uItAEcv87FSv5C4Tw6JLAkTbu0wAv86uhT46czPw77DZ5LhTRUlDZp4fPzJSy6OABaG1RROlo1w== dependencies: - "@abp/utils" "~5.2.0-rc.2" + "@abp/utils" "~5.2.0" -"@abp/datatables.net-bs5@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-5.2.0-rc.2.tgz#df5cbe004ba3a2330cc667b3724440c4881cc6b2" - integrity sha512-Q2Sy6MMWM3EuELHeHxKkDflPTX09ictonjB5vn/Cau2PHuOkWTnL0Ystl91a1DetQIa1ejJL/YB+Pz1TUVoUNA== +"@abp/datatables.net-bs5@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-5.2.0.tgz#9a6d5cba805a42abde2bbc3dd54ffeb67a188285" + integrity sha512-8eIvTadxffRW04qVRHh245lqX1tAfdyf5AsLqgomm7p0/ec76lNT1mRqwdS/kxD/ClrE6LmBnij1jJdaAs/0xQ== dependencies: - "@abp/datatables.net" "~5.2.0-rc.2" + "@abp/datatables.net" "~5.2.0" datatables.net-bs5 "^1.11.4" -"@abp/datatables.net@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-5.2.0-rc.2.tgz#bfdc01302d19eab0d73eff908238bf88c5806e74" - integrity sha512-TG1b8moW4RqCyNtzQKB7RnCmDt1cDEy/5WD++Maz2x4/yvu1uBBa6qLR7Mn6UNgoC51Y/op+LzaabkwXUSJl4w== +"@abp/datatables.net@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-5.2.0.tgz#fc900b9da0625264a43530e26555cf31b06ee16c" + integrity sha512-O+DZGpvcN42yQieapaX7OdjDkBSlEQIX/iNSbext5e08Gs//cAPj7EQKiSirb6+BIvIZQchPHj2xadw0L7sQvg== dependencies: - "@abp/jquery" "~5.2.0-rc.2" + "@abp/jquery" "~5.2.0" datatables.net "^1.11.4" -"@abp/font-awesome@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-5.2.0-rc.2.tgz#0292cb22c0280dccfe148ad3d46947ede26f8b14" - integrity sha512-FzjH/lnAglswqU7/YAXZP0H/ocGBrDkegMiQ7OjzZVcgGPS9BnqRPbiHDz7mjBHaQHzBtTCcZrXnU0l3GXCdbw== +"@abp/font-awesome@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-5.2.0.tgz#8e0da078d307735ccac394326d06f21de85f2808" + integrity sha512-ZGiov0N35fZ92Abf+k5MqtRkAP8o54rb9iKEjUYgwtF8rnskO5o9fK8TppwXb7PlG9Znh2AUkknpeXOwa1IWtQ== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" "@fortawesome/fontawesome-free" "^5.15.4" -"@abp/jquery-form@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-5.2.0-rc.2.tgz#797e3b72a91435d74f19ddaa9b2e6e04fcfed616" - integrity sha512-cVbReCeM5q7nqeQDjSIH7VmuMwX8lE36D9sariUw8xSUn5GJlnrGYNV4kE7G9JLIlIRanIlS3SPuA3RFA2z9ZA== +"@abp/jquery-form@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-5.2.0.tgz#f6dc777c736260f63875fb05c566ec14b2213b7c" + integrity sha512-xgQvgEXso3a/zMZWNxh9e0RdruCqNh75j9Lp4vHGxaWsXRtvgbCIfayDDWrn+6P28p8bYal7g51Jw6nc5jR5RA== dependencies: - "@abp/jquery" "~5.2.0-rc.2" + "@abp/jquery" "~5.2.0" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-5.2.0-rc.2.tgz#ec0c22cecef3016c1da0b8dca4374a263915a835" - integrity sha512-b+ttLlnRPgDB7V2tnYp8+1Q3niM4ZmiU/ZaQB4z6gSMk/2tPAIhOOwAQt7DYRWSMUsgGFI0NvsgEBM9aLTikFA== +"@abp/jquery-validation-unobtrusive@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-5.2.0.tgz#8acd1346bdd2b6b1cd40017f995265fb3d19539f" + integrity sha512-z7VhlC9zi2Pf6sZ8EexUDHyBieaeO1G5ndmvJTV5wZMAigsu+H7LaAyQrTd5P42WpX1Jy3Lo2UbVCt5Gh98SXg== dependencies: - "@abp/jquery-validation" "~5.2.0-rc.2" + "@abp/jquery-validation" "~5.2.0" jquery-validation-unobtrusive "^3.2.12" -"@abp/jquery-validation@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-5.2.0-rc.2.tgz#a98383e6c7fb21b74ecde937c25d7fa46810a333" - integrity sha512-6lVxJyMfL0kHmv8tpxLhVfK0Rf+qjLMPkm1qHd0pSwvH+GM0QMN39s9TaexCvH3QO70BlEnwXJ2PWVY9OQY5uw== +"@abp/jquery-validation@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-5.2.0.tgz#b594d6d4412b4cc56b97ba5581af559adc91d08a" + integrity sha512-AIAP3qRVI6DcF71rUy0yUXaGKVWwGtMx7Z13MMI66LhTnlS6giUb5UUQhcHJjIp4mAJoYbawiTpAnWezkoLJDQ== dependencies: - "@abp/jquery" "~5.2.0-rc.2" + "@abp/jquery" "~5.2.0" jquery-validation "^1.19.3" -"@abp/jquery@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-5.2.0-rc.2.tgz#3235b92834cbca4d3e22fb0b19122aa2a24b8262" - integrity sha512-u7xpQcaMpzlXq018qBdzwWmPx+65QHPq5VhI7aAvZAUlQrvQjiiCeG25egxOeCL0aROcCjsAlnTItT1U/q9loQ== +"@abp/jquery@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-5.2.0.tgz#2c924adc4a17013a7958017e985ca337c5064389" + integrity sha512-uL9Y9a31D7RLTz0VtSj0Wx9PHNrVrigPf8AUS8zMAblc8DZLEzXJ6L4nUU3xDW6+TGC/rO2x8zz1y/T6sKfzUw== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" jquery "~3.6.0" -"@abp/lodash@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-5.2.0-rc.2.tgz#e55f11279d4f374785a56ec68ed99cdf2495a9aa" - integrity sha512-BR6d1NbTcuk772RK8VdeHBokbqZ1OHUgRKdPG3MXlDGKZmUS4/ijFdRiIvo7Rd0WFqgk2QdbHw3lfKQ/CGqyhw== +"@abp/lodash@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-5.2.0.tgz#27f2c9c5848faceed04f0198d46cb34515e99608" + integrity sha512-5wcHMm+QtjEv/USxFu7jLNlNRiBwEnQG6zFwIKrT5V3d8dD8xq4zG86rojSexxd/0AKqyo5foMctV4IG8HC6Mg== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" lodash "^4.17.21" -"@abp/luxon@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-5.2.0-rc.2.tgz#0d263482b9a73269164a8a58562ce8bd69b57f36" - integrity sha512-KIhpvl9kf43Bc/E/u6bmb1lp0asf81NoUoERQTRz7JqmH1XYJvJCqGHxommvItcu7zNjCLL6FK/JtO0v7DUiEw== +"@abp/luxon@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-5.2.0.tgz#819b6cb5315622545bad8a84b8f3d6d63fbdf52d" + integrity sha512-VD2I/qhRYbbu5T7sUG5g01bcbw0gwAGmqUR4QI/5gmBYif8VuGHu/zTvnEn4Vhj6P5/tSWpa7blUs0EiFk/L/A== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" luxon "^2.3.0" -"@abp/malihu-custom-scrollbar-plugin@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-5.2.0-rc.2.tgz#5136c0d59d5d385350f560c6d8a3d10f6393dea7" - integrity sha512-7Q8yZbU9YRA5/Y+rRLLiPD724rjfrVBuCpfp1+b99LyeFTFTSD2oNG3r/I6FC7tE5HLaFscJLJyOca4GPS1mww== +"@abp/malihu-custom-scrollbar-plugin@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-5.2.0.tgz#54ee9cf2c1049d617afebfd7b9ebae5b9225746e" + integrity sha512-CvQb/lnoxs+nEN0FuWwJyA5EgsbiSy23sYbTrM2t/KF6X3dK2m+4RMbEeG7rRYV1i6c1jfuHrjoFh3FPr9KRlA== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/owl.carousel@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/owl.carousel/-/owl.carousel-5.2.0-rc.2.tgz#a6f329970e1a341b9077379b83e008de9b12df43" - integrity sha512-9NAssJFe6Oq3QXzSNSzCyI3S9weFtIyYt6w/wtdJPkNSqE+p7KDMFWZh1bma63l7aoPGR2sBa3Hi08383hj1kg== +"@abp/owl.carousel@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/owl.carousel/-/owl.carousel-5.2.0.tgz#f0f934a974630999692fdcb91d5aed70f45ebb0d" + integrity sha512-XwhTARtQBMwx3tmsfIc54sKHK9EaAt7cBC7rNgPl+hgJJS+t0/mZAJh0FOoaO/hCvAXCcVOHvwZ36S25y2tdWA== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" owl.carousel "^2.3.4" -"@abp/prismjs@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-5.2.0-rc.2.tgz#80d326cd085e0994a1bcbe13f34ebf68d21224f7" - integrity sha512-tgADoIom+9SufIfDJGzXykdgsRf0fHD2O4lcqZYNRDtBPw3RI0XJki3w4fBOffS1kKTMn6ymIAU06SMpEB872A== +"@abp/prismjs@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-5.2.0.tgz#c33ee1178a3916a6a1eac54ec4bdc78ca0dc42c7" + integrity sha512-jVFm7d80u5cIuygQViotDEQNpe2nGxEPQmZNzEV1jM4myMAMN1PZHFhoFxb3FAbH2q0wlZ5lcXjQs5cTz8V8Mw== dependencies: - "@abp/clipboard" "~5.2.0-rc.2" - "@abp/core" "~5.2.0-rc.2" + "@abp/clipboard" "~5.2.0" + "@abp/core" "~5.2.0" prismjs "^1.26.0" -"@abp/select2@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-5.2.0-rc.2.tgz#2eef30442957ac02133357604a1256e995a9ebe7" - integrity sha512-1cFOavpWP6zRfrpXi0zozFkL6W0tEEBkWj7AiHU3AGctAQEZ0qWGKSTIExqnEsDb3LsjAKMdBycGdkLFbK97Og== +"@abp/select2@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-5.2.0.tgz#4b9418851cf52346131172c9c497173749bdd22b" + integrity sha512-t+EjuNqRIZIlu4Wk2pL+Ud/+gIFSoM3WN4U+LKGkQ1vwiVRbCUqvdj5LjGuEVrmN96lNfv3Xxut+XQoJDFjfeg== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" select2 "^4.0.13" -"@abp/sweetalert2@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-5.2.0-rc.2.tgz#15b6718b1378e8bd7e0ea019b965e7b51f0cb1ea" - integrity sha512-1ROKcfpu0Xyk7ebUFMNBhFgENcHCMj48+1Lj/OxdJH3U7KhyF5WEs54uYgn8EvY2wTCgOkHCnqeK9bRCp5M9+g== +"@abp/sweetalert2@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-5.2.0.tgz#f5625f33edcc9d56ab86cca30472637edfb52c95" + integrity sha512-8Ax00JbqfcB6nLIeeocPX7Yk4uPHsMXHMg6oLKTGV4w88h1MdazQ3YMb7E/9AXjCNoQE77cCEJ7wvV3FXC45SA== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" sweetalert2 "^11.3.6" -"@abp/timeago@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-5.2.0-rc.2.tgz#e6ad0cb584515b95e47258976d726fd996b7f47d" - integrity sha512-D9Y7xfpP6neURDkP/WMrFh25G++0SUiGIDaCIElgymhNdVp2gm9pC633ShetMOFrPCSuOUvlzC2p4YkUdq0Lnw== +"@abp/timeago@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-5.2.0.tgz#4ac58114acc00d2b2b4d2a051b98caba895c1a34" + integrity sha512-mgMP/vfdUIjjHNqssXcTMtQMQ1ZW9D9keUxvjtQyE+rXNByB+sXMf/mECEGsT9/hK/nDM+aBHxG+O7lkLI+dFA== dependencies: - "@abp/jquery" "~5.2.0-rc.2" + "@abp/jquery" "~5.2.0" timeago "^1.6.7" -"@abp/toastr@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-5.2.0-rc.2.tgz#b5f013f1f00dab648da2fe1cf4ece6691e6eafc7" - integrity sha512-FSkva7zP3kJFSh6SlmvrgjPFJscJbmrgCilxGxPGVxlg5p9LNORgkotNk2yKsGHX0F0rnKJ4kHepTq7g+oGMdw== +"@abp/toastr@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-5.2.0.tgz#215af1bdc92a649ac54cb745489e00d9f0e5096b" + integrity sha512-wmoEOA6lOuTTbljsbTTfBGmJb6ur1pDi/VPuf7UF7FXoTcK/NIuzufblzTldsUleYXyIodLfg2s6qpOUGCDO8Q== dependencies: - "@abp/jquery" "~5.2.0-rc.2" + "@abp/jquery" "~5.2.0" toastr "^2.1.4" -"@abp/tui-editor@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/tui-editor/-/tui-editor-5.2.0-rc.2.tgz#a7284a627bd836cbc213710002d640f969f03e6b" - integrity sha512-7ETmLOzAZhLAGbWmtSi4b25oEgH0DSDUmXBUC6K/eslTbcMxLXJwP7NQQWcJVJDCWgom7KE4VEvcxpP4GxkTNA== +"@abp/tui-editor@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/tui-editor/-/tui-editor-5.2.0.tgz#a1d9f110d39e57eec9a0e6786e2ce6d86c4d0ab1" + integrity sha512-HndRgYDH6yXmU8AXIf/pEOfhKk6R3cs/E0vC+NqmIbpIT6AN36RYnFsvcjs1NWUv7EuZM3ZCEm+9Ce6MKArEhQ== dependencies: - "@abp/jquery" "~5.2.0-rc.2" - "@abp/prismjs" "~5.2.0-rc.2" + "@abp/jquery" "~5.2.0" + "@abp/prismjs" "~5.2.0" -"@abp/utils@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-5.2.0-rc.2.tgz#1280059ff3e948ae0827eaf06d916e5a90f8907b" - integrity sha512-/mo4dSXPkhCEbqyKunuURcF1cEzuJqRTPOGpjSrjDwOgymVSWp/AqqjJPBXuc4qrMfB4q9y+Iod5nslXp2cXeA== +"@abp/utils@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-5.2.0.tgz#3f5a7a2aab94f5c2a5e1f0f634517a4939909fa7" + integrity sha512-CBQzu8bAQQ9EUPCjjcXwLCDE/rPFGTtSRtGeMP1lrjavYEAxplXu58Fd8WeTl6d8/dqGA3nNQUnWbc2lGPlUYw== dependencies: just-compare "^1.3.0" diff --git a/modules/client-simulation/demo/Volo.ClientSimulation.Demo/package.json b/modules/client-simulation/demo/Volo.ClientSimulation.Demo/package.json index 8656357172..dd3e161eef 100644 --- a/modules/client-simulation/demo/Volo.ClientSimulation.Demo/package.json +++ b/modules/client-simulation/demo/Volo.ClientSimulation.Demo/package.json @@ -3,6 +3,6 @@ "name": "client-simulation-web", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0-rc.2" + "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0" } } \ No newline at end of file diff --git a/modules/client-simulation/demo/Volo.ClientSimulation.Demo/yarn.lock b/modules/client-simulation/demo/Volo.ClientSimulation.Demo/yarn.lock index f65777dccc..97f8cbaf92 100644 --- a/modules/client-simulation/demo/Volo.ClientSimulation.Demo/yarn.lock +++ b/modules/client-simulation/demo/Volo.ClientSimulation.Demo/yarn.lock @@ -2,37 +2,37 @@ # yarn lockfile v1 -"@abp/aspnetcore.mvc.ui.theme.basic@^5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-5.2.0-rc.2.tgz#d2cf4a0f2b8a93f1fe53a0bc6c66d9c3233b620a" - integrity sha512-aQk3RSl31UT4gEqiHT3oV06BZ/k6q1DVKBwVOj+YQEIb8ojptJtbGv+aUhHEql5I7zwiWe4EWf2rM2Ve0JQa6Q== - dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~5.2.0-rc.2" - -"@abp/aspnetcore.mvc.ui.theme.shared@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-5.2.0-rc.2.tgz#9ff2eb2a1b5f438d8f848659400100e20f74fc77" - integrity sha512-m06zMEt0C9P3f7+Qg7SjvP+k4wHPqvAOzsd5jDNN0JekeWH4gIMsqgDAoRB2SA72HUUpMbGe8Utune7EgE/T1Q== - dependencies: - "@abp/aspnetcore.mvc.ui" "~5.2.0-rc.2" - "@abp/bootstrap" "~5.2.0-rc.2" - "@abp/bootstrap-datepicker" "~5.2.0-rc.2" - "@abp/datatables.net-bs5" "~5.2.0-rc.2" - "@abp/font-awesome" "~5.2.0-rc.2" - "@abp/jquery-form" "~5.2.0-rc.2" - "@abp/jquery-validation-unobtrusive" "~5.2.0-rc.2" - "@abp/lodash" "~5.2.0-rc.2" - "@abp/luxon" "~5.2.0-rc.2" - "@abp/malihu-custom-scrollbar-plugin" "~5.2.0-rc.2" - "@abp/select2" "~5.2.0-rc.2" - "@abp/sweetalert2" "~5.2.0-rc.2" - "@abp/timeago" "~5.2.0-rc.2" - "@abp/toastr" "~5.2.0-rc.2" - -"@abp/aspnetcore.mvc.ui@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-5.2.0-rc.2.tgz#427811f66eb738dbb89434e926b36a2309fe43b2" - integrity sha512-+ss9MctYTF9Ewn7VEsMqszEoiX51G070kN2bIepgyXnYetrQRFsTgQGa4yi1bAqyAF9rZ1j0hSB0eM2clFyJMg== +"@abp/aspnetcore.mvc.ui.theme.basic@^5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-5.2.0.tgz#272f3ba89ee7a37bc2c5d0d1c280a47c39de4baa" + integrity sha512-9yTHmtmD7sgA0fTxFCohhMrmolfnp/5sJzPsh3USGqANjr3g9Ybv3tydP4Hwfb1Ts+dqcrITdsM0Ny/EcEt+iQ== + dependencies: + "@abp/aspnetcore.mvc.ui.theme.shared" "~5.2.0" + +"@abp/aspnetcore.mvc.ui.theme.shared@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-5.2.0.tgz#2a7ba6d0d2e28bb5acc77dc8e3a86535912243da" + integrity sha512-+QqRI3Yz+iwitOhfhMnomfpOoqsdh4kL6EFh9z2nI2GhLa+CtiJMAfZUOhLZTGHrBhtFk/mYu8LzYcFRzch8tw== + dependencies: + "@abp/aspnetcore.mvc.ui" "~5.2.0" + "@abp/bootstrap" "~5.2.0" + "@abp/bootstrap-datepicker" "~5.2.0" + "@abp/datatables.net-bs5" "~5.2.0" + "@abp/font-awesome" "~5.2.0" + "@abp/jquery-form" "~5.2.0" + "@abp/jquery-validation-unobtrusive" "~5.2.0" + "@abp/lodash" "~5.2.0" + "@abp/luxon" "~5.2.0" + "@abp/malihu-custom-scrollbar-plugin" "~5.2.0" + "@abp/select2" "~5.2.0" + "@abp/sweetalert2" "~5.2.0" + "@abp/timeago" "~5.2.0" + "@abp/toastr" "~5.2.0" + +"@abp/aspnetcore.mvc.ui@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-5.2.0.tgz#c590f3b56a623e9d00fa50d6a6179d4523ace2a6" + integrity sha512-UtlFa0HVwO8ezve43VEqdGazu9eQ/j4vmv4khKTPG8dEt2u9i3QVruqcIV5XnxnsQiGcZDak7QCyyH1GUFAhUg== dependencies: ansi-colors "^4.1.1" extend-object "^1.0.0" @@ -41,144 +41,144 @@ merge-stream "^2.0.0" micromatch "^4.0.2" -"@abp/bootstrap-datepicker@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-5.2.0-rc.2.tgz#bfb648e7b8e5d2a9806301417c7864abb4cc26e2" - integrity sha512-wKR+5g/xx7zqFGFaOZVO9XySlrOmOFH/ZidDpq9QYjE+OoHSlS8X5DUnkbXj2MbQy4etZuvz9ILcmnBPonrQ7g== +"@abp/bootstrap-datepicker@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-5.2.0.tgz#140892172b3d6edecc1d1e826b517e711d8ff60a" + integrity sha512-9WzC5Up7Uaahre6CCP2bzbtjhmnz3Or828kYxUlWSf7GQO2BydCJBqkWz6gjWDIzxLjQ5AeB+n9odEG3gLNNUw== dependencies: bootstrap-datepicker "^1.9.0" -"@abp/bootstrap@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-5.2.0-rc.2.tgz#0375b38317c5d1f5f6cb7d46a0ee6bf9b85a6f4f" - integrity sha512-hsgxY8WNRonQZP3cmMKvBNHnyCSBfbBB4savLW5r7CxysjnRt6MDyhmmj7XVwVTC1siBviUcWClOHCJisaNRSw== +"@abp/bootstrap@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-5.2.0.tgz#16179d319b2e7a53fde6940217b3e27ce3c32714" + integrity sha512-r11Vzo7kFC8zs5DMvdqsKPG0FEYDqhFzgW4TJKa6d968apFRJ3wGjnF/kJmC1J+XzqNTtyHcwStfNmXUdL0udA== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" bootstrap "^5.1.3" -"@abp/core@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-5.2.0-rc.2.tgz#f0c3dd7f0b12e8e13a702a3b0a53aa4525da673e" - integrity sha512-zotgZOXmkh+aD0KExBr4QytQfDDHxrG15e2HFzYKywhd0mpnwAVdR2Z2Ye01C360wJ2opv0mtgaSuEZniXNO3Q== +"@abp/core@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-5.2.0.tgz#d85ab6fd677d1850261afdba240ef2b8c0d42faf" + integrity sha512-GRxfuip7E97uItAEcv87FSv5C4Tw6JLAkTbu0wAv86uhT46czPw77DZ5LhTRUlDZp4fPzJSy6OABaG1RROlo1w== dependencies: - "@abp/utils" "~5.2.0-rc.2" + "@abp/utils" "~5.2.0" -"@abp/datatables.net-bs5@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-5.2.0-rc.2.tgz#df5cbe004ba3a2330cc667b3724440c4881cc6b2" - integrity sha512-Q2Sy6MMWM3EuELHeHxKkDflPTX09ictonjB5vn/Cau2PHuOkWTnL0Ystl91a1DetQIa1ejJL/YB+Pz1TUVoUNA== +"@abp/datatables.net-bs5@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-5.2.0.tgz#9a6d5cba805a42abde2bbc3dd54ffeb67a188285" + integrity sha512-8eIvTadxffRW04qVRHh245lqX1tAfdyf5AsLqgomm7p0/ec76lNT1mRqwdS/kxD/ClrE6LmBnij1jJdaAs/0xQ== dependencies: - "@abp/datatables.net" "~5.2.0-rc.2" + "@abp/datatables.net" "~5.2.0" datatables.net-bs5 "^1.11.4" -"@abp/datatables.net@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-5.2.0-rc.2.tgz#bfdc01302d19eab0d73eff908238bf88c5806e74" - integrity sha512-TG1b8moW4RqCyNtzQKB7RnCmDt1cDEy/5WD++Maz2x4/yvu1uBBa6qLR7Mn6UNgoC51Y/op+LzaabkwXUSJl4w== +"@abp/datatables.net@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-5.2.0.tgz#fc900b9da0625264a43530e26555cf31b06ee16c" + integrity sha512-O+DZGpvcN42yQieapaX7OdjDkBSlEQIX/iNSbext5e08Gs//cAPj7EQKiSirb6+BIvIZQchPHj2xadw0L7sQvg== dependencies: - "@abp/jquery" "~5.2.0-rc.2" + "@abp/jquery" "~5.2.0" datatables.net "^1.11.4" -"@abp/font-awesome@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-5.2.0-rc.2.tgz#0292cb22c0280dccfe148ad3d46947ede26f8b14" - integrity sha512-FzjH/lnAglswqU7/YAXZP0H/ocGBrDkegMiQ7OjzZVcgGPS9BnqRPbiHDz7mjBHaQHzBtTCcZrXnU0l3GXCdbw== +"@abp/font-awesome@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-5.2.0.tgz#8e0da078d307735ccac394326d06f21de85f2808" + integrity sha512-ZGiov0N35fZ92Abf+k5MqtRkAP8o54rb9iKEjUYgwtF8rnskO5o9fK8TppwXb7PlG9Znh2AUkknpeXOwa1IWtQ== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" "@fortawesome/fontawesome-free" "^5.15.4" -"@abp/jquery-form@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-5.2.0-rc.2.tgz#797e3b72a91435d74f19ddaa9b2e6e04fcfed616" - integrity sha512-cVbReCeM5q7nqeQDjSIH7VmuMwX8lE36D9sariUw8xSUn5GJlnrGYNV4kE7G9JLIlIRanIlS3SPuA3RFA2z9ZA== +"@abp/jquery-form@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-5.2.0.tgz#f6dc777c736260f63875fb05c566ec14b2213b7c" + integrity sha512-xgQvgEXso3a/zMZWNxh9e0RdruCqNh75j9Lp4vHGxaWsXRtvgbCIfayDDWrn+6P28p8bYal7g51Jw6nc5jR5RA== dependencies: - "@abp/jquery" "~5.2.0-rc.2" + "@abp/jquery" "~5.2.0" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-5.2.0-rc.2.tgz#ec0c22cecef3016c1da0b8dca4374a263915a835" - integrity sha512-b+ttLlnRPgDB7V2tnYp8+1Q3niM4ZmiU/ZaQB4z6gSMk/2tPAIhOOwAQt7DYRWSMUsgGFI0NvsgEBM9aLTikFA== +"@abp/jquery-validation-unobtrusive@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-5.2.0.tgz#8acd1346bdd2b6b1cd40017f995265fb3d19539f" + integrity sha512-z7VhlC9zi2Pf6sZ8EexUDHyBieaeO1G5ndmvJTV5wZMAigsu+H7LaAyQrTd5P42WpX1Jy3Lo2UbVCt5Gh98SXg== dependencies: - "@abp/jquery-validation" "~5.2.0-rc.2" + "@abp/jquery-validation" "~5.2.0" jquery-validation-unobtrusive "^3.2.12" -"@abp/jquery-validation@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-5.2.0-rc.2.tgz#a98383e6c7fb21b74ecde937c25d7fa46810a333" - integrity sha512-6lVxJyMfL0kHmv8tpxLhVfK0Rf+qjLMPkm1qHd0pSwvH+GM0QMN39s9TaexCvH3QO70BlEnwXJ2PWVY9OQY5uw== +"@abp/jquery-validation@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-5.2.0.tgz#b594d6d4412b4cc56b97ba5581af559adc91d08a" + integrity sha512-AIAP3qRVI6DcF71rUy0yUXaGKVWwGtMx7Z13MMI66LhTnlS6giUb5UUQhcHJjIp4mAJoYbawiTpAnWezkoLJDQ== dependencies: - "@abp/jquery" "~5.2.0-rc.2" + "@abp/jquery" "~5.2.0" jquery-validation "^1.19.3" -"@abp/jquery@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-5.2.0-rc.2.tgz#3235b92834cbca4d3e22fb0b19122aa2a24b8262" - integrity sha512-u7xpQcaMpzlXq018qBdzwWmPx+65QHPq5VhI7aAvZAUlQrvQjiiCeG25egxOeCL0aROcCjsAlnTItT1U/q9loQ== +"@abp/jquery@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-5.2.0.tgz#2c924adc4a17013a7958017e985ca337c5064389" + integrity sha512-uL9Y9a31D7RLTz0VtSj0Wx9PHNrVrigPf8AUS8zMAblc8DZLEzXJ6L4nUU3xDW6+TGC/rO2x8zz1y/T6sKfzUw== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" jquery "~3.6.0" -"@abp/lodash@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-5.2.0-rc.2.tgz#e55f11279d4f374785a56ec68ed99cdf2495a9aa" - integrity sha512-BR6d1NbTcuk772RK8VdeHBokbqZ1OHUgRKdPG3MXlDGKZmUS4/ijFdRiIvo7Rd0WFqgk2QdbHw3lfKQ/CGqyhw== +"@abp/lodash@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-5.2.0.tgz#27f2c9c5848faceed04f0198d46cb34515e99608" + integrity sha512-5wcHMm+QtjEv/USxFu7jLNlNRiBwEnQG6zFwIKrT5V3d8dD8xq4zG86rojSexxd/0AKqyo5foMctV4IG8HC6Mg== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" lodash "^4.17.21" -"@abp/luxon@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-5.2.0-rc.2.tgz#0d263482b9a73269164a8a58562ce8bd69b57f36" - integrity sha512-KIhpvl9kf43Bc/E/u6bmb1lp0asf81NoUoERQTRz7JqmH1XYJvJCqGHxommvItcu7zNjCLL6FK/JtO0v7DUiEw== +"@abp/luxon@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-5.2.0.tgz#819b6cb5315622545bad8a84b8f3d6d63fbdf52d" + integrity sha512-VD2I/qhRYbbu5T7sUG5g01bcbw0gwAGmqUR4QI/5gmBYif8VuGHu/zTvnEn4Vhj6P5/tSWpa7blUs0EiFk/L/A== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" luxon "^2.3.0" -"@abp/malihu-custom-scrollbar-plugin@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-5.2.0-rc.2.tgz#5136c0d59d5d385350f560c6d8a3d10f6393dea7" - integrity sha512-7Q8yZbU9YRA5/Y+rRLLiPD724rjfrVBuCpfp1+b99LyeFTFTSD2oNG3r/I6FC7tE5HLaFscJLJyOca4GPS1mww== +"@abp/malihu-custom-scrollbar-plugin@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-5.2.0.tgz#54ee9cf2c1049d617afebfd7b9ebae5b9225746e" + integrity sha512-CvQb/lnoxs+nEN0FuWwJyA5EgsbiSy23sYbTrM2t/KF6X3dK2m+4RMbEeG7rRYV1i6c1jfuHrjoFh3FPr9KRlA== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/select2@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-5.2.0-rc.2.tgz#2eef30442957ac02133357604a1256e995a9ebe7" - integrity sha512-1cFOavpWP6zRfrpXi0zozFkL6W0tEEBkWj7AiHU3AGctAQEZ0qWGKSTIExqnEsDb3LsjAKMdBycGdkLFbK97Og== +"@abp/select2@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-5.2.0.tgz#4b9418851cf52346131172c9c497173749bdd22b" + integrity sha512-t+EjuNqRIZIlu4Wk2pL+Ud/+gIFSoM3WN4U+LKGkQ1vwiVRbCUqvdj5LjGuEVrmN96lNfv3Xxut+XQoJDFjfeg== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" select2 "^4.0.13" -"@abp/sweetalert2@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-5.2.0-rc.2.tgz#15b6718b1378e8bd7e0ea019b965e7b51f0cb1ea" - integrity sha512-1ROKcfpu0Xyk7ebUFMNBhFgENcHCMj48+1Lj/OxdJH3U7KhyF5WEs54uYgn8EvY2wTCgOkHCnqeK9bRCp5M9+g== +"@abp/sweetalert2@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-5.2.0.tgz#f5625f33edcc9d56ab86cca30472637edfb52c95" + integrity sha512-8Ax00JbqfcB6nLIeeocPX7Yk4uPHsMXHMg6oLKTGV4w88h1MdazQ3YMb7E/9AXjCNoQE77cCEJ7wvV3FXC45SA== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" sweetalert2 "^11.3.6" -"@abp/timeago@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-5.2.0-rc.2.tgz#e6ad0cb584515b95e47258976d726fd996b7f47d" - integrity sha512-D9Y7xfpP6neURDkP/WMrFh25G++0SUiGIDaCIElgymhNdVp2gm9pC633ShetMOFrPCSuOUvlzC2p4YkUdq0Lnw== +"@abp/timeago@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-5.2.0.tgz#4ac58114acc00d2b2b4d2a051b98caba895c1a34" + integrity sha512-mgMP/vfdUIjjHNqssXcTMtQMQ1ZW9D9keUxvjtQyE+rXNByB+sXMf/mECEGsT9/hK/nDM+aBHxG+O7lkLI+dFA== dependencies: - "@abp/jquery" "~5.2.0-rc.2" + "@abp/jquery" "~5.2.0" timeago "^1.6.7" -"@abp/toastr@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-5.2.0-rc.2.tgz#b5f013f1f00dab648da2fe1cf4ece6691e6eafc7" - integrity sha512-FSkva7zP3kJFSh6SlmvrgjPFJscJbmrgCilxGxPGVxlg5p9LNORgkotNk2yKsGHX0F0rnKJ4kHepTq7g+oGMdw== +"@abp/toastr@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-5.2.0.tgz#215af1bdc92a649ac54cb745489e00d9f0e5096b" + integrity sha512-wmoEOA6lOuTTbljsbTTfBGmJb6ur1pDi/VPuf7UF7FXoTcK/NIuzufblzTldsUleYXyIodLfg2s6qpOUGCDO8Q== dependencies: - "@abp/jquery" "~5.2.0-rc.2" + "@abp/jquery" "~5.2.0" toastr "^2.1.4" -"@abp/utils@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-5.2.0-rc.2.tgz#1280059ff3e948ae0827eaf06d916e5a90f8907b" - integrity sha512-/mo4dSXPkhCEbqyKunuURcF1cEzuJqRTPOGpjSrjDwOgymVSWp/AqqjJPBXuc4qrMfB4q9y+Iod5nslXp2cXeA== +"@abp/utils@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-5.2.0.tgz#3f5a7a2aab94f5c2a5e1f0f634517a4939909fa7" + integrity sha512-CBQzu8bAQQ9EUPCjjcXwLCDE/rPFGTtSRtGeMP1lrjavYEAxplXu58Fd8WeTl6d8/dqGA3nNQUnWbc2lGPlUYw== dependencies: just-compare "^1.3.0" diff --git a/modules/cms-kit/angular/package.json b/modules/cms-kit/angular/package.json index cac1d74e7f..f26939d1ef 100644 --- a/modules/cms-kit/angular/package.json +++ b/modules/cms-kit/angular/package.json @@ -15,11 +15,11 @@ }, "private": true, "dependencies": { - "@abp/ng.account": "~5.2.0-rc.2", - "@abp/ng.identity": "~5.2.0-rc.2", - "@abp/ng.setting-management": "~5.2.0-rc.2", - "@abp/ng.tenant-management": "~5.2.0-rc.2", - "@abp/ng.theme.basic": "~5.2.0-rc.2", + "@abp/ng.account": "~5.2.0", + "@abp/ng.identity": "~5.2.0", + "@abp/ng.setting-management": "~5.2.0", + "@abp/ng.tenant-management": "~5.2.0", + "@abp/ng.theme.basic": "~5.2.0", "@angular/animations": "~10.0.0", "@angular/common": "~10.0.0", "@angular/compiler": "~10.0.0", diff --git a/modules/cms-kit/angular/projects/cms-kit/package.json b/modules/cms-kit/angular/projects/cms-kit/package.json index 36b777c181..e442008aaf 100644 --- a/modules/cms-kit/angular/projects/cms-kit/package.json +++ b/modules/cms-kit/angular/projects/cms-kit/package.json @@ -4,8 +4,8 @@ "peerDependencies": { "@angular/common": "^9.1.11", "@angular/core": "^9.1.11", - "@abp/ng.core": ">=5.2.0-rc.2", - "@abp/ng.theme.shared": ">=5.2.0-rc.2" + "@abp/ng.core": ">=5.2.0", + "@abp/ng.theme.shared": ">=5.2.0" }, "dependencies": { "tslib": "^2.0.0" diff --git a/modules/cms-kit/host/Volo.CmsKit.IdentityServer/package.json b/modules/cms-kit/host/Volo.CmsKit.IdentityServer/package.json index 6c2239ae14..650df128bf 100644 --- a/modules/cms-kit/host/Volo.CmsKit.IdentityServer/package.json +++ b/modules/cms-kit/host/Volo.CmsKit.IdentityServer/package.json @@ -3,6 +3,6 @@ "name": "my-app-identityserver", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0-rc.2" + "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0" } } \ No newline at end of file diff --git a/modules/cms-kit/host/Volo.CmsKit.IdentityServer/yarn.lock b/modules/cms-kit/host/Volo.CmsKit.IdentityServer/yarn.lock index b8a1ed8d31..b957aa820f 100644 --- a/modules/cms-kit/host/Volo.CmsKit.IdentityServer/yarn.lock +++ b/modules/cms-kit/host/Volo.CmsKit.IdentityServer/yarn.lock @@ -2,37 +2,37 @@ # yarn lockfile v1 -"@abp/aspnetcore.mvc.ui.theme.basic@^5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-5.2.0-rc.2.tgz#d2cf4a0f2b8a93f1fe53a0bc6c66d9c3233b620a" - integrity sha512-aQk3RSl31UT4gEqiHT3oV06BZ/k6q1DVKBwVOj+YQEIb8ojptJtbGv+aUhHEql5I7zwiWe4EWf2rM2Ve0JQa6Q== - dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~5.2.0-rc.2" - -"@abp/aspnetcore.mvc.ui.theme.shared@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-5.2.0-rc.2.tgz#9ff2eb2a1b5f438d8f848659400100e20f74fc77" - integrity sha512-m06zMEt0C9P3f7+Qg7SjvP+k4wHPqvAOzsd5jDNN0JekeWH4gIMsqgDAoRB2SA72HUUpMbGe8Utune7EgE/T1Q== - dependencies: - "@abp/aspnetcore.mvc.ui" "~5.2.0-rc.2" - "@abp/bootstrap" "~5.2.0-rc.2" - "@abp/bootstrap-datepicker" "~5.2.0-rc.2" - "@abp/datatables.net-bs5" "~5.2.0-rc.2" - "@abp/font-awesome" "~5.2.0-rc.2" - "@abp/jquery-form" "~5.2.0-rc.2" - "@abp/jquery-validation-unobtrusive" "~5.2.0-rc.2" - "@abp/lodash" "~5.2.0-rc.2" - "@abp/luxon" "~5.2.0-rc.2" - "@abp/malihu-custom-scrollbar-plugin" "~5.2.0-rc.2" - "@abp/select2" "~5.2.0-rc.2" - "@abp/sweetalert2" "~5.2.0-rc.2" - "@abp/timeago" "~5.2.0-rc.2" - "@abp/toastr" "~5.2.0-rc.2" - -"@abp/aspnetcore.mvc.ui@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-5.2.0-rc.2.tgz#427811f66eb738dbb89434e926b36a2309fe43b2" - integrity sha512-+ss9MctYTF9Ewn7VEsMqszEoiX51G070kN2bIepgyXnYetrQRFsTgQGa4yi1bAqyAF9rZ1j0hSB0eM2clFyJMg== +"@abp/aspnetcore.mvc.ui.theme.basic@^5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-5.2.0.tgz#272f3ba89ee7a37bc2c5d0d1c280a47c39de4baa" + integrity sha512-9yTHmtmD7sgA0fTxFCohhMrmolfnp/5sJzPsh3USGqANjr3g9Ybv3tydP4Hwfb1Ts+dqcrITdsM0Ny/EcEt+iQ== + dependencies: + "@abp/aspnetcore.mvc.ui.theme.shared" "~5.2.0" + +"@abp/aspnetcore.mvc.ui.theme.shared@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-5.2.0.tgz#2a7ba6d0d2e28bb5acc77dc8e3a86535912243da" + integrity sha512-+QqRI3Yz+iwitOhfhMnomfpOoqsdh4kL6EFh9z2nI2GhLa+CtiJMAfZUOhLZTGHrBhtFk/mYu8LzYcFRzch8tw== + dependencies: + "@abp/aspnetcore.mvc.ui" "~5.2.0" + "@abp/bootstrap" "~5.2.0" + "@abp/bootstrap-datepicker" "~5.2.0" + "@abp/datatables.net-bs5" "~5.2.0" + "@abp/font-awesome" "~5.2.0" + "@abp/jquery-form" "~5.2.0" + "@abp/jquery-validation-unobtrusive" "~5.2.0" + "@abp/lodash" "~5.2.0" + "@abp/luxon" "~5.2.0" + "@abp/malihu-custom-scrollbar-plugin" "~5.2.0" + "@abp/select2" "~5.2.0" + "@abp/sweetalert2" "~5.2.0" + "@abp/timeago" "~5.2.0" + "@abp/toastr" "~5.2.0" + +"@abp/aspnetcore.mvc.ui@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-5.2.0.tgz#c590f3b56a623e9d00fa50d6a6179d4523ace2a6" + integrity sha512-UtlFa0HVwO8ezve43VEqdGazu9eQ/j4vmv4khKTPG8dEt2u9i3QVruqcIV5XnxnsQiGcZDak7QCyyH1GUFAhUg== dependencies: ansi-colors "^4.1.1" extend-object "^1.0.0" @@ -41,144 +41,144 @@ merge-stream "^2.0.0" micromatch "^4.0.2" -"@abp/bootstrap-datepicker@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-5.2.0-rc.2.tgz#bfb648e7b8e5d2a9806301417c7864abb4cc26e2" - integrity sha512-wKR+5g/xx7zqFGFaOZVO9XySlrOmOFH/ZidDpq9QYjE+OoHSlS8X5DUnkbXj2MbQy4etZuvz9ILcmnBPonrQ7g== +"@abp/bootstrap-datepicker@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-5.2.0.tgz#140892172b3d6edecc1d1e826b517e711d8ff60a" + integrity sha512-9WzC5Up7Uaahre6CCP2bzbtjhmnz3Or828kYxUlWSf7GQO2BydCJBqkWz6gjWDIzxLjQ5AeB+n9odEG3gLNNUw== dependencies: bootstrap-datepicker "^1.9.0" -"@abp/bootstrap@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-5.2.0-rc.2.tgz#0375b38317c5d1f5f6cb7d46a0ee6bf9b85a6f4f" - integrity sha512-hsgxY8WNRonQZP3cmMKvBNHnyCSBfbBB4savLW5r7CxysjnRt6MDyhmmj7XVwVTC1siBviUcWClOHCJisaNRSw== +"@abp/bootstrap@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-5.2.0.tgz#16179d319b2e7a53fde6940217b3e27ce3c32714" + integrity sha512-r11Vzo7kFC8zs5DMvdqsKPG0FEYDqhFzgW4TJKa6d968apFRJ3wGjnF/kJmC1J+XzqNTtyHcwStfNmXUdL0udA== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" bootstrap "^5.1.3" -"@abp/core@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-5.2.0-rc.2.tgz#f0c3dd7f0b12e8e13a702a3b0a53aa4525da673e" - integrity sha512-zotgZOXmkh+aD0KExBr4QytQfDDHxrG15e2HFzYKywhd0mpnwAVdR2Z2Ye01C360wJ2opv0mtgaSuEZniXNO3Q== +"@abp/core@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-5.2.0.tgz#d85ab6fd677d1850261afdba240ef2b8c0d42faf" + integrity sha512-GRxfuip7E97uItAEcv87FSv5C4Tw6JLAkTbu0wAv86uhT46czPw77DZ5LhTRUlDZp4fPzJSy6OABaG1RROlo1w== dependencies: - "@abp/utils" "~5.2.0-rc.2" + "@abp/utils" "~5.2.0" -"@abp/datatables.net-bs5@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-5.2.0-rc.2.tgz#df5cbe004ba3a2330cc667b3724440c4881cc6b2" - integrity sha512-Q2Sy6MMWM3EuELHeHxKkDflPTX09ictonjB5vn/Cau2PHuOkWTnL0Ystl91a1DetQIa1ejJL/YB+Pz1TUVoUNA== +"@abp/datatables.net-bs5@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-5.2.0.tgz#9a6d5cba805a42abde2bbc3dd54ffeb67a188285" + integrity sha512-8eIvTadxffRW04qVRHh245lqX1tAfdyf5AsLqgomm7p0/ec76lNT1mRqwdS/kxD/ClrE6LmBnij1jJdaAs/0xQ== dependencies: - "@abp/datatables.net" "~5.2.0-rc.2" + "@abp/datatables.net" "~5.2.0" datatables.net-bs5 "^1.11.4" -"@abp/datatables.net@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-5.2.0-rc.2.tgz#bfdc01302d19eab0d73eff908238bf88c5806e74" - integrity sha512-TG1b8moW4RqCyNtzQKB7RnCmDt1cDEy/5WD++Maz2x4/yvu1uBBa6qLR7Mn6UNgoC51Y/op+LzaabkwXUSJl4w== +"@abp/datatables.net@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-5.2.0.tgz#fc900b9da0625264a43530e26555cf31b06ee16c" + integrity sha512-O+DZGpvcN42yQieapaX7OdjDkBSlEQIX/iNSbext5e08Gs//cAPj7EQKiSirb6+BIvIZQchPHj2xadw0L7sQvg== dependencies: - "@abp/jquery" "~5.2.0-rc.2" + "@abp/jquery" "~5.2.0" datatables.net "^1.11.4" -"@abp/font-awesome@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-5.2.0-rc.2.tgz#0292cb22c0280dccfe148ad3d46947ede26f8b14" - integrity sha512-FzjH/lnAglswqU7/YAXZP0H/ocGBrDkegMiQ7OjzZVcgGPS9BnqRPbiHDz7mjBHaQHzBtTCcZrXnU0l3GXCdbw== +"@abp/font-awesome@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-5.2.0.tgz#8e0da078d307735ccac394326d06f21de85f2808" + integrity sha512-ZGiov0N35fZ92Abf+k5MqtRkAP8o54rb9iKEjUYgwtF8rnskO5o9fK8TppwXb7PlG9Znh2AUkknpeXOwa1IWtQ== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" "@fortawesome/fontawesome-free" "^5.15.4" -"@abp/jquery-form@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-5.2.0-rc.2.tgz#797e3b72a91435d74f19ddaa9b2e6e04fcfed616" - integrity sha512-cVbReCeM5q7nqeQDjSIH7VmuMwX8lE36D9sariUw8xSUn5GJlnrGYNV4kE7G9JLIlIRanIlS3SPuA3RFA2z9ZA== +"@abp/jquery-form@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-5.2.0.tgz#f6dc777c736260f63875fb05c566ec14b2213b7c" + integrity sha512-xgQvgEXso3a/zMZWNxh9e0RdruCqNh75j9Lp4vHGxaWsXRtvgbCIfayDDWrn+6P28p8bYal7g51Jw6nc5jR5RA== dependencies: - "@abp/jquery" "~5.2.0-rc.2" + "@abp/jquery" "~5.2.0" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-5.2.0-rc.2.tgz#ec0c22cecef3016c1da0b8dca4374a263915a835" - integrity sha512-b+ttLlnRPgDB7V2tnYp8+1Q3niM4ZmiU/ZaQB4z6gSMk/2tPAIhOOwAQt7DYRWSMUsgGFI0NvsgEBM9aLTikFA== +"@abp/jquery-validation-unobtrusive@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-5.2.0.tgz#8acd1346bdd2b6b1cd40017f995265fb3d19539f" + integrity sha512-z7VhlC9zi2Pf6sZ8EexUDHyBieaeO1G5ndmvJTV5wZMAigsu+H7LaAyQrTd5P42WpX1Jy3Lo2UbVCt5Gh98SXg== dependencies: - "@abp/jquery-validation" "~5.2.0-rc.2" + "@abp/jquery-validation" "~5.2.0" jquery-validation-unobtrusive "^3.2.12" -"@abp/jquery-validation@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-5.2.0-rc.2.tgz#a98383e6c7fb21b74ecde937c25d7fa46810a333" - integrity sha512-6lVxJyMfL0kHmv8tpxLhVfK0Rf+qjLMPkm1qHd0pSwvH+GM0QMN39s9TaexCvH3QO70BlEnwXJ2PWVY9OQY5uw== +"@abp/jquery-validation@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-5.2.0.tgz#b594d6d4412b4cc56b97ba5581af559adc91d08a" + integrity sha512-AIAP3qRVI6DcF71rUy0yUXaGKVWwGtMx7Z13MMI66LhTnlS6giUb5UUQhcHJjIp4mAJoYbawiTpAnWezkoLJDQ== dependencies: - "@abp/jquery" "~5.2.0-rc.2" + "@abp/jquery" "~5.2.0" jquery-validation "^1.19.3" -"@abp/jquery@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-5.2.0-rc.2.tgz#3235b92834cbca4d3e22fb0b19122aa2a24b8262" - integrity sha512-u7xpQcaMpzlXq018qBdzwWmPx+65QHPq5VhI7aAvZAUlQrvQjiiCeG25egxOeCL0aROcCjsAlnTItT1U/q9loQ== +"@abp/jquery@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-5.2.0.tgz#2c924adc4a17013a7958017e985ca337c5064389" + integrity sha512-uL9Y9a31D7RLTz0VtSj0Wx9PHNrVrigPf8AUS8zMAblc8DZLEzXJ6L4nUU3xDW6+TGC/rO2x8zz1y/T6sKfzUw== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" jquery "~3.6.0" -"@abp/lodash@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-5.2.0-rc.2.tgz#e55f11279d4f374785a56ec68ed99cdf2495a9aa" - integrity sha512-BR6d1NbTcuk772RK8VdeHBokbqZ1OHUgRKdPG3MXlDGKZmUS4/ijFdRiIvo7Rd0WFqgk2QdbHw3lfKQ/CGqyhw== +"@abp/lodash@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-5.2.0.tgz#27f2c9c5848faceed04f0198d46cb34515e99608" + integrity sha512-5wcHMm+QtjEv/USxFu7jLNlNRiBwEnQG6zFwIKrT5V3d8dD8xq4zG86rojSexxd/0AKqyo5foMctV4IG8HC6Mg== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" lodash "^4.17.21" -"@abp/luxon@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-5.2.0-rc.2.tgz#0d263482b9a73269164a8a58562ce8bd69b57f36" - integrity sha512-KIhpvl9kf43Bc/E/u6bmb1lp0asf81NoUoERQTRz7JqmH1XYJvJCqGHxommvItcu7zNjCLL6FK/JtO0v7DUiEw== +"@abp/luxon@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-5.2.0.tgz#819b6cb5315622545bad8a84b8f3d6d63fbdf52d" + integrity sha512-VD2I/qhRYbbu5T7sUG5g01bcbw0gwAGmqUR4QI/5gmBYif8VuGHu/zTvnEn4Vhj6P5/tSWpa7blUs0EiFk/L/A== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" luxon "^2.3.0" -"@abp/malihu-custom-scrollbar-plugin@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-5.2.0-rc.2.tgz#5136c0d59d5d385350f560c6d8a3d10f6393dea7" - integrity sha512-7Q8yZbU9YRA5/Y+rRLLiPD724rjfrVBuCpfp1+b99LyeFTFTSD2oNG3r/I6FC7tE5HLaFscJLJyOca4GPS1mww== +"@abp/malihu-custom-scrollbar-plugin@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-5.2.0.tgz#54ee9cf2c1049d617afebfd7b9ebae5b9225746e" + integrity sha512-CvQb/lnoxs+nEN0FuWwJyA5EgsbiSy23sYbTrM2t/KF6X3dK2m+4RMbEeG7rRYV1i6c1jfuHrjoFh3FPr9KRlA== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/select2@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-5.2.0-rc.2.tgz#2eef30442957ac02133357604a1256e995a9ebe7" - integrity sha512-1cFOavpWP6zRfrpXi0zozFkL6W0tEEBkWj7AiHU3AGctAQEZ0qWGKSTIExqnEsDb3LsjAKMdBycGdkLFbK97Og== +"@abp/select2@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-5.2.0.tgz#4b9418851cf52346131172c9c497173749bdd22b" + integrity sha512-t+EjuNqRIZIlu4Wk2pL+Ud/+gIFSoM3WN4U+LKGkQ1vwiVRbCUqvdj5LjGuEVrmN96lNfv3Xxut+XQoJDFjfeg== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" select2 "^4.0.13" -"@abp/sweetalert2@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-5.2.0-rc.2.tgz#15b6718b1378e8bd7e0ea019b965e7b51f0cb1ea" - integrity sha512-1ROKcfpu0Xyk7ebUFMNBhFgENcHCMj48+1Lj/OxdJH3U7KhyF5WEs54uYgn8EvY2wTCgOkHCnqeK9bRCp5M9+g== +"@abp/sweetalert2@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-5.2.0.tgz#f5625f33edcc9d56ab86cca30472637edfb52c95" + integrity sha512-8Ax00JbqfcB6nLIeeocPX7Yk4uPHsMXHMg6oLKTGV4w88h1MdazQ3YMb7E/9AXjCNoQE77cCEJ7wvV3FXC45SA== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" sweetalert2 "^11.3.6" -"@abp/timeago@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-5.2.0-rc.2.tgz#e6ad0cb584515b95e47258976d726fd996b7f47d" - integrity sha512-D9Y7xfpP6neURDkP/WMrFh25G++0SUiGIDaCIElgymhNdVp2gm9pC633ShetMOFrPCSuOUvlzC2p4YkUdq0Lnw== +"@abp/timeago@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-5.2.0.tgz#4ac58114acc00d2b2b4d2a051b98caba895c1a34" + integrity sha512-mgMP/vfdUIjjHNqssXcTMtQMQ1ZW9D9keUxvjtQyE+rXNByB+sXMf/mECEGsT9/hK/nDM+aBHxG+O7lkLI+dFA== dependencies: - "@abp/jquery" "~5.2.0-rc.2" + "@abp/jquery" "~5.2.0" timeago "^1.6.7" -"@abp/toastr@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-5.2.0-rc.2.tgz#b5f013f1f00dab648da2fe1cf4ece6691e6eafc7" - integrity sha512-FSkva7zP3kJFSh6SlmvrgjPFJscJbmrgCilxGxPGVxlg5p9LNORgkotNk2yKsGHX0F0rnKJ4kHepTq7g+oGMdw== +"@abp/toastr@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-5.2.0.tgz#215af1bdc92a649ac54cb745489e00d9f0e5096b" + integrity sha512-wmoEOA6lOuTTbljsbTTfBGmJb6ur1pDi/VPuf7UF7FXoTcK/NIuzufblzTldsUleYXyIodLfg2s6qpOUGCDO8Q== dependencies: - "@abp/jquery" "~5.2.0-rc.2" + "@abp/jquery" "~5.2.0" toastr "^2.1.4" -"@abp/utils@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-5.2.0-rc.2.tgz#1280059ff3e948ae0827eaf06d916e5a90f8907b" - integrity sha512-/mo4dSXPkhCEbqyKunuURcF1cEzuJqRTPOGpjSrjDwOgymVSWp/AqqjJPBXuc4qrMfB4q9y+Iod5nslXp2cXeA== +"@abp/utils@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-5.2.0.tgz#3f5a7a2aab94f5c2a5e1f0f634517a4939909fa7" + integrity sha512-CBQzu8bAQQ9EUPCjjcXwLCDE/rPFGTtSRtGeMP1lrjavYEAxplXu58Fd8WeTl6d8/dqGA3nNQUnWbc2lGPlUYw== dependencies: just-compare "^1.3.0" diff --git a/modules/cms-kit/host/Volo.CmsKit.Web.Host/package.json b/modules/cms-kit/host/Volo.CmsKit.Web.Host/package.json index ccee8c63b4..cb24136b79 100644 --- a/modules/cms-kit/host/Volo.CmsKit.Web.Host/package.json +++ b/modules/cms-kit/host/Volo.CmsKit.Web.Host/package.json @@ -3,6 +3,6 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0-rc.2" + "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0" } } \ No newline at end of file diff --git a/modules/cms-kit/host/Volo.CmsKit.Web.Host/yarn.lock b/modules/cms-kit/host/Volo.CmsKit.Web.Host/yarn.lock index fdd9cb5e7d..d7c77ea532 100644 --- a/modules/cms-kit/host/Volo.CmsKit.Web.Host/yarn.lock +++ b/modules/cms-kit/host/Volo.CmsKit.Web.Host/yarn.lock @@ -2,37 +2,37 @@ # yarn lockfile v1 -"@abp/aspnetcore.mvc.ui.theme.basic@^5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-5.2.0-rc.2.tgz#d2cf4a0f2b8a93f1fe53a0bc6c66d9c3233b620a" - integrity sha512-aQk3RSl31UT4gEqiHT3oV06BZ/k6q1DVKBwVOj+YQEIb8ojptJtbGv+aUhHEql5I7zwiWe4EWf2rM2Ve0JQa6Q== - dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~5.2.0-rc.2" - -"@abp/aspnetcore.mvc.ui.theme.shared@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-5.2.0-rc.2.tgz#9ff2eb2a1b5f438d8f848659400100e20f74fc77" - integrity sha512-m06zMEt0C9P3f7+Qg7SjvP+k4wHPqvAOzsd5jDNN0JekeWH4gIMsqgDAoRB2SA72HUUpMbGe8Utune7EgE/T1Q== - dependencies: - "@abp/aspnetcore.mvc.ui" "~5.2.0-rc.2" - "@abp/bootstrap" "~5.2.0-rc.2" - "@abp/bootstrap-datepicker" "~5.2.0-rc.2" - "@abp/datatables.net-bs5" "~5.2.0-rc.2" - "@abp/font-awesome" "~5.2.0-rc.2" - "@abp/jquery-form" "~5.2.0-rc.2" - "@abp/jquery-validation-unobtrusive" "~5.2.0-rc.2" - "@abp/lodash" "~5.2.0-rc.2" - "@abp/luxon" "~5.2.0-rc.2" - "@abp/malihu-custom-scrollbar-plugin" "~5.2.0-rc.2" - "@abp/select2" "~5.2.0-rc.2" - "@abp/sweetalert2" "~5.2.0-rc.2" - "@abp/timeago" "~5.2.0-rc.2" - "@abp/toastr" "~5.2.0-rc.2" - -"@abp/aspnetcore.mvc.ui@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-5.2.0-rc.2.tgz#427811f66eb738dbb89434e926b36a2309fe43b2" - integrity sha512-+ss9MctYTF9Ewn7VEsMqszEoiX51G070kN2bIepgyXnYetrQRFsTgQGa4yi1bAqyAF9rZ1j0hSB0eM2clFyJMg== +"@abp/aspnetcore.mvc.ui.theme.basic@^5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-5.2.0.tgz#272f3ba89ee7a37bc2c5d0d1c280a47c39de4baa" + integrity sha512-9yTHmtmD7sgA0fTxFCohhMrmolfnp/5sJzPsh3USGqANjr3g9Ybv3tydP4Hwfb1Ts+dqcrITdsM0Ny/EcEt+iQ== + dependencies: + "@abp/aspnetcore.mvc.ui.theme.shared" "~5.2.0" + +"@abp/aspnetcore.mvc.ui.theme.shared@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-5.2.0.tgz#2a7ba6d0d2e28bb5acc77dc8e3a86535912243da" + integrity sha512-+QqRI3Yz+iwitOhfhMnomfpOoqsdh4kL6EFh9z2nI2GhLa+CtiJMAfZUOhLZTGHrBhtFk/mYu8LzYcFRzch8tw== + dependencies: + "@abp/aspnetcore.mvc.ui" "~5.2.0" + "@abp/bootstrap" "~5.2.0" + "@abp/bootstrap-datepicker" "~5.2.0" + "@abp/datatables.net-bs5" "~5.2.0" + "@abp/font-awesome" "~5.2.0" + "@abp/jquery-form" "~5.2.0" + "@abp/jquery-validation-unobtrusive" "~5.2.0" + "@abp/lodash" "~5.2.0" + "@abp/luxon" "~5.2.0" + "@abp/malihu-custom-scrollbar-plugin" "~5.2.0" + "@abp/select2" "~5.2.0" + "@abp/sweetalert2" "~5.2.0" + "@abp/timeago" "~5.2.0" + "@abp/toastr" "~5.2.0" + +"@abp/aspnetcore.mvc.ui@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-5.2.0.tgz#c590f3b56a623e9d00fa50d6a6179d4523ace2a6" + integrity sha512-UtlFa0HVwO8ezve43VEqdGazu9eQ/j4vmv4khKTPG8dEt2u9i3QVruqcIV5XnxnsQiGcZDak7QCyyH1GUFAhUg== dependencies: ansi-colors "^4.1.1" extend-object "^1.0.0" @@ -41,144 +41,144 @@ merge-stream "^2.0.0" micromatch "^4.0.2" -"@abp/bootstrap-datepicker@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-5.2.0-rc.2.tgz#bfb648e7b8e5d2a9806301417c7864abb4cc26e2" - integrity sha512-wKR+5g/xx7zqFGFaOZVO9XySlrOmOFH/ZidDpq9QYjE+OoHSlS8X5DUnkbXj2MbQy4etZuvz9ILcmnBPonrQ7g== +"@abp/bootstrap-datepicker@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-5.2.0.tgz#140892172b3d6edecc1d1e826b517e711d8ff60a" + integrity sha512-9WzC5Up7Uaahre6CCP2bzbtjhmnz3Or828kYxUlWSf7GQO2BydCJBqkWz6gjWDIzxLjQ5AeB+n9odEG3gLNNUw== dependencies: bootstrap-datepicker "^1.9.0" -"@abp/bootstrap@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-5.2.0-rc.2.tgz#0375b38317c5d1f5f6cb7d46a0ee6bf9b85a6f4f" - integrity sha512-hsgxY8WNRonQZP3cmMKvBNHnyCSBfbBB4savLW5r7CxysjnRt6MDyhmmj7XVwVTC1siBviUcWClOHCJisaNRSw== +"@abp/bootstrap@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-5.2.0.tgz#16179d319b2e7a53fde6940217b3e27ce3c32714" + integrity sha512-r11Vzo7kFC8zs5DMvdqsKPG0FEYDqhFzgW4TJKa6d968apFRJ3wGjnF/kJmC1J+XzqNTtyHcwStfNmXUdL0udA== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" bootstrap "^5.1.3" -"@abp/core@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-5.2.0-rc.2.tgz#f0c3dd7f0b12e8e13a702a3b0a53aa4525da673e" - integrity sha512-zotgZOXmkh+aD0KExBr4QytQfDDHxrG15e2HFzYKywhd0mpnwAVdR2Z2Ye01C360wJ2opv0mtgaSuEZniXNO3Q== +"@abp/core@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-5.2.0.tgz#d85ab6fd677d1850261afdba240ef2b8c0d42faf" + integrity sha512-GRxfuip7E97uItAEcv87FSv5C4Tw6JLAkTbu0wAv86uhT46czPw77DZ5LhTRUlDZp4fPzJSy6OABaG1RROlo1w== dependencies: - "@abp/utils" "~5.2.0-rc.2" + "@abp/utils" "~5.2.0" -"@abp/datatables.net-bs5@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-5.2.0-rc.2.tgz#df5cbe004ba3a2330cc667b3724440c4881cc6b2" - integrity sha512-Q2Sy6MMWM3EuELHeHxKkDflPTX09ictonjB5vn/Cau2PHuOkWTnL0Ystl91a1DetQIa1ejJL/YB+Pz1TUVoUNA== +"@abp/datatables.net-bs5@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-5.2.0.tgz#9a6d5cba805a42abde2bbc3dd54ffeb67a188285" + integrity sha512-8eIvTadxffRW04qVRHh245lqX1tAfdyf5AsLqgomm7p0/ec76lNT1mRqwdS/kxD/ClrE6LmBnij1jJdaAs/0xQ== dependencies: - "@abp/datatables.net" "~5.2.0-rc.2" + "@abp/datatables.net" "~5.2.0" datatables.net-bs5 "^1.11.4" -"@abp/datatables.net@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-5.2.0-rc.2.tgz#bfdc01302d19eab0d73eff908238bf88c5806e74" - integrity sha512-TG1b8moW4RqCyNtzQKB7RnCmDt1cDEy/5WD++Maz2x4/yvu1uBBa6qLR7Mn6UNgoC51Y/op+LzaabkwXUSJl4w== +"@abp/datatables.net@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-5.2.0.tgz#fc900b9da0625264a43530e26555cf31b06ee16c" + integrity sha512-O+DZGpvcN42yQieapaX7OdjDkBSlEQIX/iNSbext5e08Gs//cAPj7EQKiSirb6+BIvIZQchPHj2xadw0L7sQvg== dependencies: - "@abp/jquery" "~5.2.0-rc.2" + "@abp/jquery" "~5.2.0" datatables.net "^1.11.4" -"@abp/font-awesome@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-5.2.0-rc.2.tgz#0292cb22c0280dccfe148ad3d46947ede26f8b14" - integrity sha512-FzjH/lnAglswqU7/YAXZP0H/ocGBrDkegMiQ7OjzZVcgGPS9BnqRPbiHDz7mjBHaQHzBtTCcZrXnU0l3GXCdbw== +"@abp/font-awesome@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-5.2.0.tgz#8e0da078d307735ccac394326d06f21de85f2808" + integrity sha512-ZGiov0N35fZ92Abf+k5MqtRkAP8o54rb9iKEjUYgwtF8rnskO5o9fK8TppwXb7PlG9Znh2AUkknpeXOwa1IWtQ== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" "@fortawesome/fontawesome-free" "^5.15.4" -"@abp/jquery-form@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-5.2.0-rc.2.tgz#797e3b72a91435d74f19ddaa9b2e6e04fcfed616" - integrity sha512-cVbReCeM5q7nqeQDjSIH7VmuMwX8lE36D9sariUw8xSUn5GJlnrGYNV4kE7G9JLIlIRanIlS3SPuA3RFA2z9ZA== +"@abp/jquery-form@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-5.2.0.tgz#f6dc777c736260f63875fb05c566ec14b2213b7c" + integrity sha512-xgQvgEXso3a/zMZWNxh9e0RdruCqNh75j9Lp4vHGxaWsXRtvgbCIfayDDWrn+6P28p8bYal7g51Jw6nc5jR5RA== dependencies: - "@abp/jquery" "~5.2.0-rc.2" + "@abp/jquery" "~5.2.0" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-5.2.0-rc.2.tgz#ec0c22cecef3016c1da0b8dca4374a263915a835" - integrity sha512-b+ttLlnRPgDB7V2tnYp8+1Q3niM4ZmiU/ZaQB4z6gSMk/2tPAIhOOwAQt7DYRWSMUsgGFI0NvsgEBM9aLTikFA== +"@abp/jquery-validation-unobtrusive@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-5.2.0.tgz#8acd1346bdd2b6b1cd40017f995265fb3d19539f" + integrity sha512-z7VhlC9zi2Pf6sZ8EexUDHyBieaeO1G5ndmvJTV5wZMAigsu+H7LaAyQrTd5P42WpX1Jy3Lo2UbVCt5Gh98SXg== dependencies: - "@abp/jquery-validation" "~5.2.0-rc.2" + "@abp/jquery-validation" "~5.2.0" jquery-validation-unobtrusive "^3.2.12" -"@abp/jquery-validation@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-5.2.0-rc.2.tgz#a98383e6c7fb21b74ecde937c25d7fa46810a333" - integrity sha512-6lVxJyMfL0kHmv8tpxLhVfK0Rf+qjLMPkm1qHd0pSwvH+GM0QMN39s9TaexCvH3QO70BlEnwXJ2PWVY9OQY5uw== +"@abp/jquery-validation@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-5.2.0.tgz#b594d6d4412b4cc56b97ba5581af559adc91d08a" + integrity sha512-AIAP3qRVI6DcF71rUy0yUXaGKVWwGtMx7Z13MMI66LhTnlS6giUb5UUQhcHJjIp4mAJoYbawiTpAnWezkoLJDQ== dependencies: - "@abp/jquery" "~5.2.0-rc.2" + "@abp/jquery" "~5.2.0" jquery-validation "^1.19.3" -"@abp/jquery@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-5.2.0-rc.2.tgz#3235b92834cbca4d3e22fb0b19122aa2a24b8262" - integrity sha512-u7xpQcaMpzlXq018qBdzwWmPx+65QHPq5VhI7aAvZAUlQrvQjiiCeG25egxOeCL0aROcCjsAlnTItT1U/q9loQ== +"@abp/jquery@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-5.2.0.tgz#2c924adc4a17013a7958017e985ca337c5064389" + integrity sha512-uL9Y9a31D7RLTz0VtSj0Wx9PHNrVrigPf8AUS8zMAblc8DZLEzXJ6L4nUU3xDW6+TGC/rO2x8zz1y/T6sKfzUw== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" jquery "~3.6.0" -"@abp/lodash@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-5.2.0-rc.2.tgz#e55f11279d4f374785a56ec68ed99cdf2495a9aa" - integrity sha512-BR6d1NbTcuk772RK8VdeHBokbqZ1OHUgRKdPG3MXlDGKZmUS4/ijFdRiIvo7Rd0WFqgk2QdbHw3lfKQ/CGqyhw== +"@abp/lodash@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-5.2.0.tgz#27f2c9c5848faceed04f0198d46cb34515e99608" + integrity sha512-5wcHMm+QtjEv/USxFu7jLNlNRiBwEnQG6zFwIKrT5V3d8dD8xq4zG86rojSexxd/0AKqyo5foMctV4IG8HC6Mg== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" lodash "^4.17.21" -"@abp/luxon@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-5.2.0-rc.2.tgz#0d263482b9a73269164a8a58562ce8bd69b57f36" - integrity sha512-KIhpvl9kf43Bc/E/u6bmb1lp0asf81NoUoERQTRz7JqmH1XYJvJCqGHxommvItcu7zNjCLL6FK/JtO0v7DUiEw== +"@abp/luxon@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-5.2.0.tgz#819b6cb5315622545bad8a84b8f3d6d63fbdf52d" + integrity sha512-VD2I/qhRYbbu5T7sUG5g01bcbw0gwAGmqUR4QI/5gmBYif8VuGHu/zTvnEn4Vhj6P5/tSWpa7blUs0EiFk/L/A== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" luxon "^2.3.0" -"@abp/malihu-custom-scrollbar-plugin@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-5.2.0-rc.2.tgz#5136c0d59d5d385350f560c6d8a3d10f6393dea7" - integrity sha512-7Q8yZbU9YRA5/Y+rRLLiPD724rjfrVBuCpfp1+b99LyeFTFTSD2oNG3r/I6FC7tE5HLaFscJLJyOca4GPS1mww== +"@abp/malihu-custom-scrollbar-plugin@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-5.2.0.tgz#54ee9cf2c1049d617afebfd7b9ebae5b9225746e" + integrity sha512-CvQb/lnoxs+nEN0FuWwJyA5EgsbiSy23sYbTrM2t/KF6X3dK2m+4RMbEeG7rRYV1i6c1jfuHrjoFh3FPr9KRlA== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/select2@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-5.2.0-rc.2.tgz#2eef30442957ac02133357604a1256e995a9ebe7" - integrity sha512-1cFOavpWP6zRfrpXi0zozFkL6W0tEEBkWj7AiHU3AGctAQEZ0qWGKSTIExqnEsDb3LsjAKMdBycGdkLFbK97Og== +"@abp/select2@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-5.2.0.tgz#4b9418851cf52346131172c9c497173749bdd22b" + integrity sha512-t+EjuNqRIZIlu4Wk2pL+Ud/+gIFSoM3WN4U+LKGkQ1vwiVRbCUqvdj5LjGuEVrmN96lNfv3Xxut+XQoJDFjfeg== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" select2 "^4.0.13" -"@abp/sweetalert2@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-5.2.0-rc.2.tgz#15b6718b1378e8bd7e0ea019b965e7b51f0cb1ea" - integrity sha512-1ROKcfpu0Xyk7ebUFMNBhFgENcHCMj48+1Lj/OxdJH3U7KhyF5WEs54uYgn8EvY2wTCgOkHCnqeK9bRCp5M9+g== +"@abp/sweetalert2@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-5.2.0.tgz#f5625f33edcc9d56ab86cca30472637edfb52c95" + integrity sha512-8Ax00JbqfcB6nLIeeocPX7Yk4uPHsMXHMg6oLKTGV4w88h1MdazQ3YMb7E/9AXjCNoQE77cCEJ7wvV3FXC45SA== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" sweetalert2 "^11.3.6" -"@abp/timeago@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-5.2.0-rc.2.tgz#e6ad0cb584515b95e47258976d726fd996b7f47d" - integrity sha512-D9Y7xfpP6neURDkP/WMrFh25G++0SUiGIDaCIElgymhNdVp2gm9pC633ShetMOFrPCSuOUvlzC2p4YkUdq0Lnw== +"@abp/timeago@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-5.2.0.tgz#4ac58114acc00d2b2b4d2a051b98caba895c1a34" + integrity sha512-mgMP/vfdUIjjHNqssXcTMtQMQ1ZW9D9keUxvjtQyE+rXNByB+sXMf/mECEGsT9/hK/nDM+aBHxG+O7lkLI+dFA== dependencies: - "@abp/jquery" "~5.2.0-rc.2" + "@abp/jquery" "~5.2.0" timeago "^1.6.7" -"@abp/toastr@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-5.2.0-rc.2.tgz#b5f013f1f00dab648da2fe1cf4ece6691e6eafc7" - integrity sha512-FSkva7zP3kJFSh6SlmvrgjPFJscJbmrgCilxGxPGVxlg5p9LNORgkotNk2yKsGHX0F0rnKJ4kHepTq7g+oGMdw== +"@abp/toastr@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-5.2.0.tgz#215af1bdc92a649ac54cb745489e00d9f0e5096b" + integrity sha512-wmoEOA6lOuTTbljsbTTfBGmJb6ur1pDi/VPuf7UF7FXoTcK/NIuzufblzTldsUleYXyIodLfg2s6qpOUGCDO8Q== dependencies: - "@abp/jquery" "~5.2.0-rc.2" + "@abp/jquery" "~5.2.0" toastr "^2.1.4" -"@abp/utils@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-5.2.0-rc.2.tgz#1280059ff3e948ae0827eaf06d916e5a90f8907b" - integrity sha512-/mo4dSXPkhCEbqyKunuURcF1cEzuJqRTPOGpjSrjDwOgymVSWp/AqqjJPBXuc4qrMfB4q9y+Iod5nslXp2cXeA== +"@abp/utils@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-5.2.0.tgz#3f5a7a2aab94f5c2a5e1f0f634517a4939909fa7" + integrity sha512-CBQzu8bAQQ9EUPCjjcXwLCDE/rPFGTtSRtGeMP1lrjavYEAxplXu58Fd8WeTl6d8/dqGA3nNQUnWbc2lGPlUYw== dependencies: just-compare "^1.3.0" diff --git a/modules/cms-kit/host/Volo.CmsKit.Web.Unified/package.json b/modules/cms-kit/host/Volo.CmsKit.Web.Unified/package.json index 7ad679fac7..7ae0db2a9f 100644 --- a/modules/cms-kit/host/Volo.CmsKit.Web.Unified/package.json +++ b/modules/cms-kit/host/Volo.CmsKit.Web.Unified/package.json @@ -3,7 +3,7 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0-rc.2", - "@abp/cms-kit": "5.2.0-rc.2" + "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0", + "@abp/cms-kit": "5.2.0" } } \ No newline at end of file diff --git a/modules/cms-kit/host/Volo.CmsKit.Web.Unified/yarn.lock b/modules/cms-kit/host/Volo.CmsKit.Web.Unified/yarn.lock index 3f80b0a072..1fbf4a0b4f 100644 --- a/modules/cms-kit/host/Volo.CmsKit.Web.Unified/yarn.lock +++ b/modules/cms-kit/host/Volo.CmsKit.Web.Unified/yarn.lock @@ -2,37 +2,37 @@ # yarn lockfile v1 -"@abp/aspnetcore.mvc.ui.theme.basic@^5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-5.2.0-rc.2.tgz#d2cf4a0f2b8a93f1fe53a0bc6c66d9c3233b620a" - integrity sha512-aQk3RSl31UT4gEqiHT3oV06BZ/k6q1DVKBwVOj+YQEIb8ojptJtbGv+aUhHEql5I7zwiWe4EWf2rM2Ve0JQa6Q== - dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~5.2.0-rc.2" - -"@abp/aspnetcore.mvc.ui.theme.shared@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-5.2.0-rc.2.tgz#9ff2eb2a1b5f438d8f848659400100e20f74fc77" - integrity sha512-m06zMEt0C9P3f7+Qg7SjvP+k4wHPqvAOzsd5jDNN0JekeWH4gIMsqgDAoRB2SA72HUUpMbGe8Utune7EgE/T1Q== - dependencies: - "@abp/aspnetcore.mvc.ui" "~5.2.0-rc.2" - "@abp/bootstrap" "~5.2.0-rc.2" - "@abp/bootstrap-datepicker" "~5.2.0-rc.2" - "@abp/datatables.net-bs5" "~5.2.0-rc.2" - "@abp/font-awesome" "~5.2.0-rc.2" - "@abp/jquery-form" "~5.2.0-rc.2" - "@abp/jquery-validation-unobtrusive" "~5.2.0-rc.2" - "@abp/lodash" "~5.2.0-rc.2" - "@abp/luxon" "~5.2.0-rc.2" - "@abp/malihu-custom-scrollbar-plugin" "~5.2.0-rc.2" - "@abp/select2" "~5.2.0-rc.2" - "@abp/sweetalert2" "~5.2.0-rc.2" - "@abp/timeago" "~5.2.0-rc.2" - "@abp/toastr" "~5.2.0-rc.2" - -"@abp/aspnetcore.mvc.ui@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-5.2.0-rc.2.tgz#427811f66eb738dbb89434e926b36a2309fe43b2" - integrity sha512-+ss9MctYTF9Ewn7VEsMqszEoiX51G070kN2bIepgyXnYetrQRFsTgQGa4yi1bAqyAF9rZ1j0hSB0eM2clFyJMg== +"@abp/aspnetcore.mvc.ui.theme.basic@^5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-5.2.0.tgz#272f3ba89ee7a37bc2c5d0d1c280a47c39de4baa" + integrity sha512-9yTHmtmD7sgA0fTxFCohhMrmolfnp/5sJzPsh3USGqANjr3g9Ybv3tydP4Hwfb1Ts+dqcrITdsM0Ny/EcEt+iQ== + dependencies: + "@abp/aspnetcore.mvc.ui.theme.shared" "~5.2.0" + +"@abp/aspnetcore.mvc.ui.theme.shared@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-5.2.0.tgz#2a7ba6d0d2e28bb5acc77dc8e3a86535912243da" + integrity sha512-+QqRI3Yz+iwitOhfhMnomfpOoqsdh4kL6EFh9z2nI2GhLa+CtiJMAfZUOhLZTGHrBhtFk/mYu8LzYcFRzch8tw== + dependencies: + "@abp/aspnetcore.mvc.ui" "~5.2.0" + "@abp/bootstrap" "~5.2.0" + "@abp/bootstrap-datepicker" "~5.2.0" + "@abp/datatables.net-bs5" "~5.2.0" + "@abp/font-awesome" "~5.2.0" + "@abp/jquery-form" "~5.2.0" + "@abp/jquery-validation-unobtrusive" "~5.2.0" + "@abp/lodash" "~5.2.0" + "@abp/luxon" "~5.2.0" + "@abp/malihu-custom-scrollbar-plugin" "~5.2.0" + "@abp/select2" "~5.2.0" + "@abp/sweetalert2" "~5.2.0" + "@abp/timeago" "~5.2.0" + "@abp/toastr" "~5.2.0" + +"@abp/aspnetcore.mvc.ui@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-5.2.0.tgz#c590f3b56a623e9d00fa50d6a6179d4523ace2a6" + integrity sha512-UtlFa0HVwO8ezve43VEqdGazu9eQ/j4vmv4khKTPG8dEt2u9i3QVruqcIV5XnxnsQiGcZDak7QCyyH1GUFAhUg== dependencies: ansi-colors "^4.1.1" extend-object "^1.0.0" @@ -41,234 +41,234 @@ merge-stream "^2.0.0" micromatch "^4.0.2" -"@abp/bootstrap-datepicker@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-5.2.0-rc.2.tgz#bfb648e7b8e5d2a9806301417c7864abb4cc26e2" - integrity sha512-wKR+5g/xx7zqFGFaOZVO9XySlrOmOFH/ZidDpq9QYjE+OoHSlS8X5DUnkbXj2MbQy4etZuvz9ILcmnBPonrQ7g== +"@abp/bootstrap-datepicker@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-5.2.0.tgz#140892172b3d6edecc1d1e826b517e711d8ff60a" + integrity sha512-9WzC5Up7Uaahre6CCP2bzbtjhmnz3Or828kYxUlWSf7GQO2BydCJBqkWz6gjWDIzxLjQ5AeB+n9odEG3gLNNUw== dependencies: bootstrap-datepicker "^1.9.0" -"@abp/bootstrap@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-5.2.0-rc.2.tgz#0375b38317c5d1f5f6cb7d46a0ee6bf9b85a6f4f" - integrity sha512-hsgxY8WNRonQZP3cmMKvBNHnyCSBfbBB4savLW5r7CxysjnRt6MDyhmmj7XVwVTC1siBviUcWClOHCJisaNRSw== +"@abp/bootstrap@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-5.2.0.tgz#16179d319b2e7a53fde6940217b3e27ce3c32714" + integrity sha512-r11Vzo7kFC8zs5DMvdqsKPG0FEYDqhFzgW4TJKa6d968apFRJ3wGjnF/kJmC1J+XzqNTtyHcwStfNmXUdL0udA== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" bootstrap "^5.1.3" -"@abp/clipboard@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-5.2.0-rc.2.tgz#d641c6bdfdf84b991b84c4331a10ca398a7ee26a" - integrity sha512-RxcY94FfCUhGVFbb2CXTRWujrkSubdYGQ3wbkdZPeOCuF8t60WzyhxoQanRqSdiUbk39W8nUuReYtclzXwM58g== +"@abp/clipboard@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-5.2.0.tgz#5374562edfa95c6a2a2244b4f1667625c73b7185" + integrity sha512-AFdY+7n4khi6mM86EzbclzC2S/SN5FncGCFTW873GQ2OakDzyCRhNqtoLihcvSW5YwDvofMJjAITCy5GnzelRw== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" clipboard "^2.0.8" -"@abp/cms-kit.admin@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/cms-kit.admin/-/cms-kit.admin-5.2.0-rc.2.tgz#f7044a5f20eba916480fbdcbfd7721d183618b62" - integrity sha512-8klspiZuWw3VceVO6E0rKg9geQKpAsb46ZvRnkIPZENvqo61h75Ki7jYF2h1NaISsuZ8+12IOM2wsAbWTsHmQA== +"@abp/cms-kit.admin@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/cms-kit.admin/-/cms-kit.admin-5.2.0.tgz#2aae4256a1184fda377a4656112b8124e267375e" + integrity sha512-5aSwiHPJkG8xNgxMdZZ5qXsoFS2S7XMJxJbw8HE0AoQhUonDUB2mk9BilxMsIj0l0I0iGQWm5gI83ki9xFa9qA== dependencies: - "@abp/jstree" "~5.2.0-rc.2" - "@abp/slugify" "~5.2.0-rc.2" - "@abp/tui-editor" "~5.2.0-rc.2" - "@abp/uppy" "~5.2.0-rc.2" + "@abp/jstree" "~5.2.0" + "@abp/slugify" "~5.2.0" + "@abp/tui-editor" "~5.2.0" + "@abp/uppy" "~5.2.0" -"@abp/cms-kit.public@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/cms-kit.public/-/cms-kit.public-5.2.0-rc.2.tgz#64663fe24a654b4c65b559dd840a48664782215e" - integrity sha512-y/HR2D6pFTdNMAuHu5dBAujlqMrw3O8NiYfEr18Wulqj5NYmMni/Se9H+ilWMEP0BpTkWIbUjhy+zIWVABwHbQ== +"@abp/cms-kit.public@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/cms-kit.public/-/cms-kit.public-5.2.0.tgz#796e6faf05cdcc48a9dfcf178175f8ce9bfdc92c" + integrity sha512-oj3JqWL5l1zA64WN9w7pF4v+/lFLdqejEv5LFcE1ZTbpDqdDLTzo1TohEO6AdQ9nPmHgTj79bTM24LirdCDTpg== dependencies: - "@abp/highlight.js" "~5.2.0-rc.2" - "@abp/star-rating-svg" "~5.2.0-rc.2" + "@abp/highlight.js" "~5.2.0" + "@abp/star-rating-svg" "~5.2.0" -"@abp/cms-kit@5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/cms-kit/-/cms-kit-5.2.0-rc.2.tgz#ccbab486bcfbf290b782adf95c8a25ed5b2bbd13" - integrity sha512-BrHuSwth7Abddk/IFS9+IoEivy5rFKXMNEfx3/XKCbxBfja3TgfFF2Uv6Zayoydb9AqVV37VLP3fqbEfB1oQSg== +"@abp/cms-kit@5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/cms-kit/-/cms-kit-5.2.0.tgz#e23af085dd329c61431134a15328ffd7ae2f7af4" + integrity sha512-XC6NcQSg43r8ti5ZvHf7S4f7ELF2x4YGF6kz4HILqktYPGmgAM067ULHwDvpi7tU3kBPHa1me3lf0ooZOZiyIg== dependencies: - "@abp/cms-kit.admin" "~5.2.0-rc.2" - "@abp/cms-kit.public" "~5.2.0-rc.2" + "@abp/cms-kit.admin" "~5.2.0" + "@abp/cms-kit.public" "~5.2.0" -"@abp/core@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-5.2.0-rc.2.tgz#f0c3dd7f0b12e8e13a702a3b0a53aa4525da673e" - integrity sha512-zotgZOXmkh+aD0KExBr4QytQfDDHxrG15e2HFzYKywhd0mpnwAVdR2Z2Ye01C360wJ2opv0mtgaSuEZniXNO3Q== +"@abp/core@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-5.2.0.tgz#d85ab6fd677d1850261afdba240ef2b8c0d42faf" + integrity sha512-GRxfuip7E97uItAEcv87FSv5C4Tw6JLAkTbu0wAv86uhT46czPw77DZ5LhTRUlDZp4fPzJSy6OABaG1RROlo1w== dependencies: - "@abp/utils" "~5.2.0-rc.2" + "@abp/utils" "~5.2.0" -"@abp/datatables.net-bs5@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-5.2.0-rc.2.tgz#df5cbe004ba3a2330cc667b3724440c4881cc6b2" - integrity sha512-Q2Sy6MMWM3EuELHeHxKkDflPTX09ictonjB5vn/Cau2PHuOkWTnL0Ystl91a1DetQIa1ejJL/YB+Pz1TUVoUNA== +"@abp/datatables.net-bs5@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-5.2.0.tgz#9a6d5cba805a42abde2bbc3dd54ffeb67a188285" + integrity sha512-8eIvTadxffRW04qVRHh245lqX1tAfdyf5AsLqgomm7p0/ec76lNT1mRqwdS/kxD/ClrE6LmBnij1jJdaAs/0xQ== dependencies: - "@abp/datatables.net" "~5.2.0-rc.2" + "@abp/datatables.net" "~5.2.0" datatables.net-bs5 "^1.11.4" -"@abp/datatables.net@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-5.2.0-rc.2.tgz#bfdc01302d19eab0d73eff908238bf88c5806e74" - integrity sha512-TG1b8moW4RqCyNtzQKB7RnCmDt1cDEy/5WD++Maz2x4/yvu1uBBa6qLR7Mn6UNgoC51Y/op+LzaabkwXUSJl4w== +"@abp/datatables.net@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-5.2.0.tgz#fc900b9da0625264a43530e26555cf31b06ee16c" + integrity sha512-O+DZGpvcN42yQieapaX7OdjDkBSlEQIX/iNSbext5e08Gs//cAPj7EQKiSirb6+BIvIZQchPHj2xadw0L7sQvg== dependencies: - "@abp/jquery" "~5.2.0-rc.2" + "@abp/jquery" "~5.2.0" datatables.net "^1.11.4" -"@abp/font-awesome@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-5.2.0-rc.2.tgz#0292cb22c0280dccfe148ad3d46947ede26f8b14" - integrity sha512-FzjH/lnAglswqU7/YAXZP0H/ocGBrDkegMiQ7OjzZVcgGPS9BnqRPbiHDz7mjBHaQHzBtTCcZrXnU0l3GXCdbw== +"@abp/font-awesome@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-5.2.0.tgz#8e0da078d307735ccac394326d06f21de85f2808" + integrity sha512-ZGiov0N35fZ92Abf+k5MqtRkAP8o54rb9iKEjUYgwtF8rnskO5o9fK8TppwXb7PlG9Znh2AUkknpeXOwa1IWtQ== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" "@fortawesome/fontawesome-free" "^5.15.4" -"@abp/highlight.js@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/highlight.js/-/highlight.js-5.2.0-rc.2.tgz#079625d9828a5c8d801e60e47889d4abe863e949" - integrity sha512-pMq59MsvsC//cJXfOPwTM3Co8LNIcxpGxwHPCfY5rwLjU167oOV44L6WJ++9PjFrBxyFrzyfNhqYObE01A8kKA== +"@abp/highlight.js@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/highlight.js/-/highlight.js-5.2.0.tgz#fba18d0afe5f31ad6b6b7f7d15eb8bf5649560ac" + integrity sha512-nGi90BdTnP0lsRQZy5qgN5eiPJQcu/gDN/B9mC9+0QZTRcipHBMWEJcB1wlE+GV7TAcAbqASJvVDeKAZzylNcw== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" "@highlightjs/cdn-assets" "~11.4.0" -"@abp/jquery-form@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-5.2.0-rc.2.tgz#797e3b72a91435d74f19ddaa9b2e6e04fcfed616" - integrity sha512-cVbReCeM5q7nqeQDjSIH7VmuMwX8lE36D9sariUw8xSUn5GJlnrGYNV4kE7G9JLIlIRanIlS3SPuA3RFA2z9ZA== +"@abp/jquery-form@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-5.2.0.tgz#f6dc777c736260f63875fb05c566ec14b2213b7c" + integrity sha512-xgQvgEXso3a/zMZWNxh9e0RdruCqNh75j9Lp4vHGxaWsXRtvgbCIfayDDWrn+6P28p8bYal7g51Jw6nc5jR5RA== dependencies: - "@abp/jquery" "~5.2.0-rc.2" + "@abp/jquery" "~5.2.0" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-5.2.0-rc.2.tgz#ec0c22cecef3016c1da0b8dca4374a263915a835" - integrity sha512-b+ttLlnRPgDB7V2tnYp8+1Q3niM4ZmiU/ZaQB4z6gSMk/2tPAIhOOwAQt7DYRWSMUsgGFI0NvsgEBM9aLTikFA== +"@abp/jquery-validation-unobtrusive@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-5.2.0.tgz#8acd1346bdd2b6b1cd40017f995265fb3d19539f" + integrity sha512-z7VhlC9zi2Pf6sZ8EexUDHyBieaeO1G5ndmvJTV5wZMAigsu+H7LaAyQrTd5P42WpX1Jy3Lo2UbVCt5Gh98SXg== dependencies: - "@abp/jquery-validation" "~5.2.0-rc.2" + "@abp/jquery-validation" "~5.2.0" jquery-validation-unobtrusive "^3.2.12" -"@abp/jquery-validation@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-5.2.0-rc.2.tgz#a98383e6c7fb21b74ecde937c25d7fa46810a333" - integrity sha512-6lVxJyMfL0kHmv8tpxLhVfK0Rf+qjLMPkm1qHd0pSwvH+GM0QMN39s9TaexCvH3QO70BlEnwXJ2PWVY9OQY5uw== +"@abp/jquery-validation@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-5.2.0.tgz#b594d6d4412b4cc56b97ba5581af559adc91d08a" + integrity sha512-AIAP3qRVI6DcF71rUy0yUXaGKVWwGtMx7Z13MMI66LhTnlS6giUb5UUQhcHJjIp4mAJoYbawiTpAnWezkoLJDQ== dependencies: - "@abp/jquery" "~5.2.0-rc.2" + "@abp/jquery" "~5.2.0" jquery-validation "^1.19.3" -"@abp/jquery@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-5.2.0-rc.2.tgz#3235b92834cbca4d3e22fb0b19122aa2a24b8262" - integrity sha512-u7xpQcaMpzlXq018qBdzwWmPx+65QHPq5VhI7aAvZAUlQrvQjiiCeG25egxOeCL0aROcCjsAlnTItT1U/q9loQ== +"@abp/jquery@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-5.2.0.tgz#2c924adc4a17013a7958017e985ca337c5064389" + integrity sha512-uL9Y9a31D7RLTz0VtSj0Wx9PHNrVrigPf8AUS8zMAblc8DZLEzXJ6L4nUU3xDW6+TGC/rO2x8zz1y/T6sKfzUw== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" jquery "~3.6.0" -"@abp/jstree@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/jstree/-/jstree-5.2.0-rc.2.tgz#43baf1641e180ea5d9006ab2e558549283b340f8" - integrity sha512-p+3It0sxSBbKfbH9TioVq2I26OKVc5A3kpLMqNgj0+rXW7RcTLqr98hDocKkCPe+FzDTqh+4La/CsrDPEeikEQ== +"@abp/jstree@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/jstree/-/jstree-5.2.0.tgz#1a6909a0d8de59e3155e68086f8d1600f49852fe" + integrity sha512-56Wq56jbGQDM9tjKWVMD82UrM74frpl8kiQSjRIxlDxGS+T6V+EKax3irN1vN/el2hG3JTGkB/8mjiRLFaCIjg== dependencies: - "@abp/jquery" "~5.2.0-rc.2" + "@abp/jquery" "~5.2.0" jstree "^3.3.12" -"@abp/lodash@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-5.2.0-rc.2.tgz#e55f11279d4f374785a56ec68ed99cdf2495a9aa" - integrity sha512-BR6d1NbTcuk772RK8VdeHBokbqZ1OHUgRKdPG3MXlDGKZmUS4/ijFdRiIvo7Rd0WFqgk2QdbHw3lfKQ/CGqyhw== +"@abp/lodash@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-5.2.0.tgz#27f2c9c5848faceed04f0198d46cb34515e99608" + integrity sha512-5wcHMm+QtjEv/USxFu7jLNlNRiBwEnQG6zFwIKrT5V3d8dD8xq4zG86rojSexxd/0AKqyo5foMctV4IG8HC6Mg== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" lodash "^4.17.21" -"@abp/luxon@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-5.2.0-rc.2.tgz#0d263482b9a73269164a8a58562ce8bd69b57f36" - integrity sha512-KIhpvl9kf43Bc/E/u6bmb1lp0asf81NoUoERQTRz7JqmH1XYJvJCqGHxommvItcu7zNjCLL6FK/JtO0v7DUiEw== +"@abp/luxon@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-5.2.0.tgz#819b6cb5315622545bad8a84b8f3d6d63fbdf52d" + integrity sha512-VD2I/qhRYbbu5T7sUG5g01bcbw0gwAGmqUR4QI/5gmBYif8VuGHu/zTvnEn4Vhj6P5/tSWpa7blUs0EiFk/L/A== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" luxon "^2.3.0" -"@abp/malihu-custom-scrollbar-plugin@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-5.2.0-rc.2.tgz#5136c0d59d5d385350f560c6d8a3d10f6393dea7" - integrity sha512-7Q8yZbU9YRA5/Y+rRLLiPD724rjfrVBuCpfp1+b99LyeFTFTSD2oNG3r/I6FC7tE5HLaFscJLJyOca4GPS1mww== +"@abp/malihu-custom-scrollbar-plugin@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-5.2.0.tgz#54ee9cf2c1049d617afebfd7b9ebae5b9225746e" + integrity sha512-CvQb/lnoxs+nEN0FuWwJyA5EgsbiSy23sYbTrM2t/KF6X3dK2m+4RMbEeG7rRYV1i6c1jfuHrjoFh3FPr9KRlA== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/prismjs@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-5.2.0-rc.2.tgz#80d326cd085e0994a1bcbe13f34ebf68d21224f7" - integrity sha512-tgADoIom+9SufIfDJGzXykdgsRf0fHD2O4lcqZYNRDtBPw3RI0XJki3w4fBOffS1kKTMn6ymIAU06SMpEB872A== +"@abp/prismjs@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-5.2.0.tgz#c33ee1178a3916a6a1eac54ec4bdc78ca0dc42c7" + integrity sha512-jVFm7d80u5cIuygQViotDEQNpe2nGxEPQmZNzEV1jM4myMAMN1PZHFhoFxb3FAbH2q0wlZ5lcXjQs5cTz8V8Mw== dependencies: - "@abp/clipboard" "~5.2.0-rc.2" - "@abp/core" "~5.2.0-rc.2" + "@abp/clipboard" "~5.2.0" + "@abp/core" "~5.2.0" prismjs "^1.26.0" -"@abp/select2@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-5.2.0-rc.2.tgz#2eef30442957ac02133357604a1256e995a9ebe7" - integrity sha512-1cFOavpWP6zRfrpXi0zozFkL6W0tEEBkWj7AiHU3AGctAQEZ0qWGKSTIExqnEsDb3LsjAKMdBycGdkLFbK97Og== +"@abp/select2@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-5.2.0.tgz#4b9418851cf52346131172c9c497173749bdd22b" + integrity sha512-t+EjuNqRIZIlu4Wk2pL+Ud/+gIFSoM3WN4U+LKGkQ1vwiVRbCUqvdj5LjGuEVrmN96lNfv3Xxut+XQoJDFjfeg== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" select2 "^4.0.13" -"@abp/slugify@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/slugify/-/slugify-5.2.0-rc.2.tgz#8f19fc31a1a0e93bd86affe68ffd960182c2c6b5" - integrity sha512-LzaI2tpC0YCNtOThehMRjZqgFqogTOJpM/+E+sQ4EdKFJqJI19//r4lLoE3GHsB3ufwGwo+7MddCE/kc8Dc1oQ== +"@abp/slugify@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/slugify/-/slugify-5.2.0.tgz#c570c7d47634630834c8a3c315f8d6ba66110bd3" + integrity sha512-Io2M9CSq2CoobJJJMOGBjBR/oo4wFap0a0A/SenbBkthCQE3wksO+uyiBHONb9z+aFL+pwp/LwL5luglpenlbw== dependencies: slugify "^1.6.5" -"@abp/star-rating-svg@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/star-rating-svg/-/star-rating-svg-5.2.0-rc.2.tgz#cb2c6ae408311d51ae90306dfbb7239ff18204bb" - integrity sha512-eIGI1LP4d+YswT1cNLqT7cnmkye/FlD6XdXl9Z1kTyYDL0P+HKPpGRCPLvmqwR3JBL2KAFHxSV+GjBlONyCH2Q== +"@abp/star-rating-svg@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/star-rating-svg/-/star-rating-svg-5.2.0.tgz#9360e90b0c7dcc3fbf440c4c4aaed7f5d43d7565" + integrity sha512-/WdmjgzQ/sDD/5ap2QD15GgsRzOlkpqMSq5FzhvkF0D0mMIQS9PL+X6ZL2rJ2IElC5cQxZCO8oyVok7Rt5yFUw== dependencies: - "@abp/jquery" "~5.2.0-rc.2" + "@abp/jquery" "~5.2.0" star-rating-svg "^3.5.0" -"@abp/sweetalert2@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-5.2.0-rc.2.tgz#15b6718b1378e8bd7e0ea019b965e7b51f0cb1ea" - integrity sha512-1ROKcfpu0Xyk7ebUFMNBhFgENcHCMj48+1Lj/OxdJH3U7KhyF5WEs54uYgn8EvY2wTCgOkHCnqeK9bRCp5M9+g== +"@abp/sweetalert2@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-5.2.0.tgz#f5625f33edcc9d56ab86cca30472637edfb52c95" + integrity sha512-8Ax00JbqfcB6nLIeeocPX7Yk4uPHsMXHMg6oLKTGV4w88h1MdazQ3YMb7E/9AXjCNoQE77cCEJ7wvV3FXC45SA== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" sweetalert2 "^11.3.6" -"@abp/timeago@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-5.2.0-rc.2.tgz#e6ad0cb584515b95e47258976d726fd996b7f47d" - integrity sha512-D9Y7xfpP6neURDkP/WMrFh25G++0SUiGIDaCIElgymhNdVp2gm9pC633ShetMOFrPCSuOUvlzC2p4YkUdq0Lnw== +"@abp/timeago@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-5.2.0.tgz#4ac58114acc00d2b2b4d2a051b98caba895c1a34" + integrity sha512-mgMP/vfdUIjjHNqssXcTMtQMQ1ZW9D9keUxvjtQyE+rXNByB+sXMf/mECEGsT9/hK/nDM+aBHxG+O7lkLI+dFA== dependencies: - "@abp/jquery" "~5.2.0-rc.2" + "@abp/jquery" "~5.2.0" timeago "^1.6.7" -"@abp/toastr@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-5.2.0-rc.2.tgz#b5f013f1f00dab648da2fe1cf4ece6691e6eafc7" - integrity sha512-FSkva7zP3kJFSh6SlmvrgjPFJscJbmrgCilxGxPGVxlg5p9LNORgkotNk2yKsGHX0F0rnKJ4kHepTq7g+oGMdw== +"@abp/toastr@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-5.2.0.tgz#215af1bdc92a649ac54cb745489e00d9f0e5096b" + integrity sha512-wmoEOA6lOuTTbljsbTTfBGmJb6ur1pDi/VPuf7UF7FXoTcK/NIuzufblzTldsUleYXyIodLfg2s6qpOUGCDO8Q== dependencies: - "@abp/jquery" "~5.2.0-rc.2" + "@abp/jquery" "~5.2.0" toastr "^2.1.4" -"@abp/tui-editor@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/tui-editor/-/tui-editor-5.2.0-rc.2.tgz#a7284a627bd836cbc213710002d640f969f03e6b" - integrity sha512-7ETmLOzAZhLAGbWmtSi4b25oEgH0DSDUmXBUC6K/eslTbcMxLXJwP7NQQWcJVJDCWgom7KE4VEvcxpP4GxkTNA== +"@abp/tui-editor@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/tui-editor/-/tui-editor-5.2.0.tgz#a1d9f110d39e57eec9a0e6786e2ce6d86c4d0ab1" + integrity sha512-HndRgYDH6yXmU8AXIf/pEOfhKk6R3cs/E0vC+NqmIbpIT6AN36RYnFsvcjs1NWUv7EuZM3ZCEm+9Ce6MKArEhQ== dependencies: - "@abp/jquery" "~5.2.0-rc.2" - "@abp/prismjs" "~5.2.0-rc.2" + "@abp/jquery" "~5.2.0" + "@abp/prismjs" "~5.2.0" -"@abp/uppy@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/uppy/-/uppy-5.2.0-rc.2.tgz#483df4aca5e2f2c7010207cb117a1aa4b2652a38" - integrity sha512-tNAcDaEmZxRHgxcCfAulRo9Gb8V+oHn/k67B1NqgncFAtwuCbLr5PAF+YcLZOogZSqaRIiqRIuJCOpRQjw9qQg== +"@abp/uppy@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/uppy/-/uppy-5.2.0.tgz#bc63ba5229a9cbeeb51ef818a8a51d878c6c2556" + integrity sha512-mIuoJ1pq7xbWpQSxBpiKV7rspchlDBMXeGozXnYWfsQumUzQjiKLO4hQhpy+Bhq5ctov2LMMFV6w/YZr5rRZfQ== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" uppy "^1.16.1" -"@abp/utils@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-5.2.0-rc.2.tgz#1280059ff3e948ae0827eaf06d916e5a90f8907b" - integrity sha512-/mo4dSXPkhCEbqyKunuURcF1cEzuJqRTPOGpjSrjDwOgymVSWp/AqqjJPBXuc4qrMfB4q9y+Iod5nslXp2cXeA== +"@abp/utils@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-5.2.0.tgz#3f5a7a2aab94f5c2a5e1f0f634517a4939909fa7" + integrity sha512-CBQzu8bAQQ9EUPCjjcXwLCDE/rPFGTtSRtGeMP1lrjavYEAxplXu58Fd8WeTl6d8/dqGA3nNQUnWbc2lGPlUYw== dependencies: just-compare "^1.3.0" diff --git a/modules/docs/app/VoloDocs.Web/package.json b/modules/docs/app/VoloDocs.Web/package.json index 19eab87d28..9dc2c9d7ab 100644 --- a/modules/docs/app/VoloDocs.Web/package.json +++ b/modules/docs/app/VoloDocs.Web/package.json @@ -3,7 +3,7 @@ "name": "volo.docstestapp", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0-rc.2", - "@abp/docs": "^5.2.0-rc.2" + "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0", + "@abp/docs": "^5.2.0" } } diff --git a/modules/docs/app/VoloDocs.Web/yarn.lock b/modules/docs/app/VoloDocs.Web/yarn.lock index 409846c361..0f74336ad2 100644 --- a/modules/docs/app/VoloDocs.Web/yarn.lock +++ b/modules/docs/app/VoloDocs.Web/yarn.lock @@ -2,45 +2,45 @@ # yarn lockfile v1 -"@abp/anchor-js@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/anchor-js/-/anchor-js-5.2.0-rc.2.tgz#64ba3e04498c02301f7c5d26b619aaa44782d245" - integrity sha512-yMmXfkQVY/mChByKF+W9KlrjTDZZ9uSrnQTiOf2l9NI+zxHXuiE+H+HnL8l7sacUZjdHaKNLmbXdPw/MJyXtDg== +"@abp/anchor-js@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/anchor-js/-/anchor-js-5.2.0.tgz#697a7aa5e3c2d923c3506cab13806dcd92172de6" + integrity sha512-J6YJf+9wNVJYusMFO3axubOfiJnDVdlfzWIxNO/+WDV949CIM/Sx7RJM+2xcbI+o4VKcDB1DNkbuGmpfz7s58Q== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" anchor-js "^4.3.1" -"@abp/aspnetcore.mvc.ui.theme.basic@^5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-5.2.0-rc.2.tgz#d2cf4a0f2b8a93f1fe53a0bc6c66d9c3233b620a" - integrity sha512-aQk3RSl31UT4gEqiHT3oV06BZ/k6q1DVKBwVOj+YQEIb8ojptJtbGv+aUhHEql5I7zwiWe4EWf2rM2Ve0JQa6Q== - dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~5.2.0-rc.2" - -"@abp/aspnetcore.mvc.ui.theme.shared@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-5.2.0-rc.2.tgz#9ff2eb2a1b5f438d8f848659400100e20f74fc77" - integrity sha512-m06zMEt0C9P3f7+Qg7SjvP+k4wHPqvAOzsd5jDNN0JekeWH4gIMsqgDAoRB2SA72HUUpMbGe8Utune7EgE/T1Q== - dependencies: - "@abp/aspnetcore.mvc.ui" "~5.2.0-rc.2" - "@abp/bootstrap" "~5.2.0-rc.2" - "@abp/bootstrap-datepicker" "~5.2.0-rc.2" - "@abp/datatables.net-bs5" "~5.2.0-rc.2" - "@abp/font-awesome" "~5.2.0-rc.2" - "@abp/jquery-form" "~5.2.0-rc.2" - "@abp/jquery-validation-unobtrusive" "~5.2.0-rc.2" - "@abp/lodash" "~5.2.0-rc.2" - "@abp/luxon" "~5.2.0-rc.2" - "@abp/malihu-custom-scrollbar-plugin" "~5.2.0-rc.2" - "@abp/select2" "~5.2.0-rc.2" - "@abp/sweetalert2" "~5.2.0-rc.2" - "@abp/timeago" "~5.2.0-rc.2" - "@abp/toastr" "~5.2.0-rc.2" - -"@abp/aspnetcore.mvc.ui@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-5.2.0-rc.2.tgz#427811f66eb738dbb89434e926b36a2309fe43b2" - integrity sha512-+ss9MctYTF9Ewn7VEsMqszEoiX51G070kN2bIepgyXnYetrQRFsTgQGa4yi1bAqyAF9rZ1j0hSB0eM2clFyJMg== +"@abp/aspnetcore.mvc.ui.theme.basic@^5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-5.2.0.tgz#272f3ba89ee7a37bc2c5d0d1c280a47c39de4baa" + integrity sha512-9yTHmtmD7sgA0fTxFCohhMrmolfnp/5sJzPsh3USGqANjr3g9Ybv3tydP4Hwfb1Ts+dqcrITdsM0Ny/EcEt+iQ== + dependencies: + "@abp/aspnetcore.mvc.ui.theme.shared" "~5.2.0" + +"@abp/aspnetcore.mvc.ui.theme.shared@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-5.2.0.tgz#2a7ba6d0d2e28bb5acc77dc8e3a86535912243da" + integrity sha512-+QqRI3Yz+iwitOhfhMnomfpOoqsdh4kL6EFh9z2nI2GhLa+CtiJMAfZUOhLZTGHrBhtFk/mYu8LzYcFRzch8tw== + dependencies: + "@abp/aspnetcore.mvc.ui" "~5.2.0" + "@abp/bootstrap" "~5.2.0" + "@abp/bootstrap-datepicker" "~5.2.0" + "@abp/datatables.net-bs5" "~5.2.0" + "@abp/font-awesome" "~5.2.0" + "@abp/jquery-form" "~5.2.0" + "@abp/jquery-validation-unobtrusive" "~5.2.0" + "@abp/lodash" "~5.2.0" + "@abp/luxon" "~5.2.0" + "@abp/malihu-custom-scrollbar-plugin" "~5.2.0" + "@abp/select2" "~5.2.0" + "@abp/sweetalert2" "~5.2.0" + "@abp/timeago" "~5.2.0" + "@abp/toastr" "~5.2.0" + +"@abp/aspnetcore.mvc.ui@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-5.2.0.tgz#c590f3b56a623e9d00fa50d6a6179d4523ace2a6" + integrity sha512-UtlFa0HVwO8ezve43VEqdGazu9eQ/j4vmv4khKTPG8dEt2u9i3QVruqcIV5XnxnsQiGcZDak7QCyyH1GUFAhUg== dependencies: ansi-colors "^4.1.1" extend-object "^1.0.0" @@ -49,180 +49,180 @@ merge-stream "^2.0.0" micromatch "^4.0.2" -"@abp/bootstrap-datepicker@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-5.2.0-rc.2.tgz#bfb648e7b8e5d2a9806301417c7864abb4cc26e2" - integrity sha512-wKR+5g/xx7zqFGFaOZVO9XySlrOmOFH/ZidDpq9QYjE+OoHSlS8X5DUnkbXj2MbQy4etZuvz9ILcmnBPonrQ7g== +"@abp/bootstrap-datepicker@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-5.2.0.tgz#140892172b3d6edecc1d1e826b517e711d8ff60a" + integrity sha512-9WzC5Up7Uaahre6CCP2bzbtjhmnz3Or828kYxUlWSf7GQO2BydCJBqkWz6gjWDIzxLjQ5AeB+n9odEG3gLNNUw== dependencies: bootstrap-datepicker "^1.9.0" -"@abp/bootstrap@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-5.2.0-rc.2.tgz#0375b38317c5d1f5f6cb7d46a0ee6bf9b85a6f4f" - integrity sha512-hsgxY8WNRonQZP3cmMKvBNHnyCSBfbBB4savLW5r7CxysjnRt6MDyhmmj7XVwVTC1siBviUcWClOHCJisaNRSw== +"@abp/bootstrap@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-5.2.0.tgz#16179d319b2e7a53fde6940217b3e27ce3c32714" + integrity sha512-r11Vzo7kFC8zs5DMvdqsKPG0FEYDqhFzgW4TJKa6d968apFRJ3wGjnF/kJmC1J+XzqNTtyHcwStfNmXUdL0udA== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" bootstrap "^5.1.3" -"@abp/clipboard@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-5.2.0-rc.2.tgz#d641c6bdfdf84b991b84c4331a10ca398a7ee26a" - integrity sha512-RxcY94FfCUhGVFbb2CXTRWujrkSubdYGQ3wbkdZPeOCuF8t60WzyhxoQanRqSdiUbk39W8nUuReYtclzXwM58g== +"@abp/clipboard@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-5.2.0.tgz#5374562edfa95c6a2a2244b4f1667625c73b7185" + integrity sha512-AFdY+7n4khi6mM86EzbclzC2S/SN5FncGCFTW873GQ2OakDzyCRhNqtoLihcvSW5YwDvofMJjAITCy5GnzelRw== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" clipboard "^2.0.8" -"@abp/core@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-5.2.0-rc.2.tgz#f0c3dd7f0b12e8e13a702a3b0a53aa4525da673e" - integrity sha512-zotgZOXmkh+aD0KExBr4QytQfDDHxrG15e2HFzYKywhd0mpnwAVdR2Z2Ye01C360wJ2opv0mtgaSuEZniXNO3Q== +"@abp/core@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-5.2.0.tgz#d85ab6fd677d1850261afdba240ef2b8c0d42faf" + integrity sha512-GRxfuip7E97uItAEcv87FSv5C4Tw6JLAkTbu0wAv86uhT46czPw77DZ5LhTRUlDZp4fPzJSy6OABaG1RROlo1w== dependencies: - "@abp/utils" "~5.2.0-rc.2" + "@abp/utils" "~5.2.0" -"@abp/datatables.net-bs5@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-5.2.0-rc.2.tgz#df5cbe004ba3a2330cc667b3724440c4881cc6b2" - integrity sha512-Q2Sy6MMWM3EuELHeHxKkDflPTX09ictonjB5vn/Cau2PHuOkWTnL0Ystl91a1DetQIa1ejJL/YB+Pz1TUVoUNA== +"@abp/datatables.net-bs5@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-5.2.0.tgz#9a6d5cba805a42abde2bbc3dd54ffeb67a188285" + integrity sha512-8eIvTadxffRW04qVRHh245lqX1tAfdyf5AsLqgomm7p0/ec76lNT1mRqwdS/kxD/ClrE6LmBnij1jJdaAs/0xQ== dependencies: - "@abp/datatables.net" "~5.2.0-rc.2" + "@abp/datatables.net" "~5.2.0" datatables.net-bs5 "^1.11.4" -"@abp/datatables.net@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-5.2.0-rc.2.tgz#bfdc01302d19eab0d73eff908238bf88c5806e74" - integrity sha512-TG1b8moW4RqCyNtzQKB7RnCmDt1cDEy/5WD++Maz2x4/yvu1uBBa6qLR7Mn6UNgoC51Y/op+LzaabkwXUSJl4w== +"@abp/datatables.net@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-5.2.0.tgz#fc900b9da0625264a43530e26555cf31b06ee16c" + integrity sha512-O+DZGpvcN42yQieapaX7OdjDkBSlEQIX/iNSbext5e08Gs//cAPj7EQKiSirb6+BIvIZQchPHj2xadw0L7sQvg== dependencies: - "@abp/jquery" "~5.2.0-rc.2" + "@abp/jquery" "~5.2.0" datatables.net "^1.11.4" -"@abp/docs@^5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/docs/-/docs-5.2.0-rc.2.tgz#0ff64083b75ad57ad667f70306ab8c54a8c2e050" - integrity sha512-01PX95vLmi5/wJLEciyU5b5nPZkxF8A+IMXu2FGjxz5LJ1mUY/iL38AEOqTc8bDGK3HEIbTG1azAO5v3qfD05w== +"@abp/docs@^5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/docs/-/docs-5.2.0.tgz#31934a9413bd26076489c2e770e7c00b5d685bf6" + integrity sha512-/VU8pql4F9PseMqRUpsSP0w5z4LIWYC5Bt1kFeHJnCBS5wX7oxknr/Z9++s3f3neHqTJxSZJuCUmkOKACaF7pg== dependencies: - "@abp/anchor-js" "~5.2.0-rc.2" - "@abp/clipboard" "~5.2.0-rc.2" - "@abp/malihu-custom-scrollbar-plugin" "~5.2.0-rc.2" - "@abp/popper.js" "~5.2.0-rc.2" - "@abp/prismjs" "~5.2.0-rc.2" + "@abp/anchor-js" "~5.2.0" + "@abp/clipboard" "~5.2.0" + "@abp/malihu-custom-scrollbar-plugin" "~5.2.0" + "@abp/popper.js" "~5.2.0" + "@abp/prismjs" "~5.2.0" -"@abp/font-awesome@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-5.2.0-rc.2.tgz#0292cb22c0280dccfe148ad3d46947ede26f8b14" - integrity sha512-FzjH/lnAglswqU7/YAXZP0H/ocGBrDkegMiQ7OjzZVcgGPS9BnqRPbiHDz7mjBHaQHzBtTCcZrXnU0l3GXCdbw== +"@abp/font-awesome@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-5.2.0.tgz#8e0da078d307735ccac394326d06f21de85f2808" + integrity sha512-ZGiov0N35fZ92Abf+k5MqtRkAP8o54rb9iKEjUYgwtF8rnskO5o9fK8TppwXb7PlG9Znh2AUkknpeXOwa1IWtQ== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" "@fortawesome/fontawesome-free" "^5.15.4" -"@abp/jquery-form@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-5.2.0-rc.2.tgz#797e3b72a91435d74f19ddaa9b2e6e04fcfed616" - integrity sha512-cVbReCeM5q7nqeQDjSIH7VmuMwX8lE36D9sariUw8xSUn5GJlnrGYNV4kE7G9JLIlIRanIlS3SPuA3RFA2z9ZA== +"@abp/jquery-form@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-5.2.0.tgz#f6dc777c736260f63875fb05c566ec14b2213b7c" + integrity sha512-xgQvgEXso3a/zMZWNxh9e0RdruCqNh75j9Lp4vHGxaWsXRtvgbCIfayDDWrn+6P28p8bYal7g51Jw6nc5jR5RA== dependencies: - "@abp/jquery" "~5.2.0-rc.2" + "@abp/jquery" "~5.2.0" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-5.2.0-rc.2.tgz#ec0c22cecef3016c1da0b8dca4374a263915a835" - integrity sha512-b+ttLlnRPgDB7V2tnYp8+1Q3niM4ZmiU/ZaQB4z6gSMk/2tPAIhOOwAQt7DYRWSMUsgGFI0NvsgEBM9aLTikFA== +"@abp/jquery-validation-unobtrusive@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-5.2.0.tgz#8acd1346bdd2b6b1cd40017f995265fb3d19539f" + integrity sha512-z7VhlC9zi2Pf6sZ8EexUDHyBieaeO1G5ndmvJTV5wZMAigsu+H7LaAyQrTd5P42WpX1Jy3Lo2UbVCt5Gh98SXg== dependencies: - "@abp/jquery-validation" "~5.2.0-rc.2" + "@abp/jquery-validation" "~5.2.0" jquery-validation-unobtrusive "^3.2.12" -"@abp/jquery-validation@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-5.2.0-rc.2.tgz#a98383e6c7fb21b74ecde937c25d7fa46810a333" - integrity sha512-6lVxJyMfL0kHmv8tpxLhVfK0Rf+qjLMPkm1qHd0pSwvH+GM0QMN39s9TaexCvH3QO70BlEnwXJ2PWVY9OQY5uw== +"@abp/jquery-validation@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-5.2.0.tgz#b594d6d4412b4cc56b97ba5581af559adc91d08a" + integrity sha512-AIAP3qRVI6DcF71rUy0yUXaGKVWwGtMx7Z13MMI66LhTnlS6giUb5UUQhcHJjIp4mAJoYbawiTpAnWezkoLJDQ== dependencies: - "@abp/jquery" "~5.2.0-rc.2" + "@abp/jquery" "~5.2.0" jquery-validation "^1.19.3" -"@abp/jquery@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-5.2.0-rc.2.tgz#3235b92834cbca4d3e22fb0b19122aa2a24b8262" - integrity sha512-u7xpQcaMpzlXq018qBdzwWmPx+65QHPq5VhI7aAvZAUlQrvQjiiCeG25egxOeCL0aROcCjsAlnTItT1U/q9loQ== +"@abp/jquery@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-5.2.0.tgz#2c924adc4a17013a7958017e985ca337c5064389" + integrity sha512-uL9Y9a31D7RLTz0VtSj0Wx9PHNrVrigPf8AUS8zMAblc8DZLEzXJ6L4nUU3xDW6+TGC/rO2x8zz1y/T6sKfzUw== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" jquery "~3.6.0" -"@abp/lodash@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-5.2.0-rc.2.tgz#e55f11279d4f374785a56ec68ed99cdf2495a9aa" - integrity sha512-BR6d1NbTcuk772RK8VdeHBokbqZ1OHUgRKdPG3MXlDGKZmUS4/ijFdRiIvo7Rd0WFqgk2QdbHw3lfKQ/CGqyhw== +"@abp/lodash@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-5.2.0.tgz#27f2c9c5848faceed04f0198d46cb34515e99608" + integrity sha512-5wcHMm+QtjEv/USxFu7jLNlNRiBwEnQG6zFwIKrT5V3d8dD8xq4zG86rojSexxd/0AKqyo5foMctV4IG8HC6Mg== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" lodash "^4.17.21" -"@abp/luxon@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-5.2.0-rc.2.tgz#0d263482b9a73269164a8a58562ce8bd69b57f36" - integrity sha512-KIhpvl9kf43Bc/E/u6bmb1lp0asf81NoUoERQTRz7JqmH1XYJvJCqGHxommvItcu7zNjCLL6FK/JtO0v7DUiEw== +"@abp/luxon@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-5.2.0.tgz#819b6cb5315622545bad8a84b8f3d6d63fbdf52d" + integrity sha512-VD2I/qhRYbbu5T7sUG5g01bcbw0gwAGmqUR4QI/5gmBYif8VuGHu/zTvnEn4Vhj6P5/tSWpa7blUs0EiFk/L/A== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" luxon "^2.3.0" -"@abp/malihu-custom-scrollbar-plugin@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-5.2.0-rc.2.tgz#5136c0d59d5d385350f560c6d8a3d10f6393dea7" - integrity sha512-7Q8yZbU9YRA5/Y+rRLLiPD724rjfrVBuCpfp1+b99LyeFTFTSD2oNG3r/I6FC7tE5HLaFscJLJyOca4GPS1mww== +"@abp/malihu-custom-scrollbar-plugin@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-5.2.0.tgz#54ee9cf2c1049d617afebfd7b9ebae5b9225746e" + integrity sha512-CvQb/lnoxs+nEN0FuWwJyA5EgsbiSy23sYbTrM2t/KF6X3dK2m+4RMbEeG7rRYV1i6c1jfuHrjoFh3FPr9KRlA== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/popper.js@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/popper.js/-/popper.js-5.2.0-rc.2.tgz#871d1ea397a345abbe3559890664056325cef01a" - integrity sha512-84qk2zmgw79ARH5sk0hVjD8lV54EXJeJbiBpKVPzGUcRlhMfoTnPjn/DAzLsBGS1WZEkYDkpgcRTLSgwJ6JvTw== +"@abp/popper.js@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/popper.js/-/popper.js-5.2.0.tgz#4ab9a82f7b3e7049142d460d6dc00cb18b805e78" + integrity sha512-K8HB12gU61A9a5k/ztz+s0iESqvSd/Br5+HgFE+kiC4G/YBVesHGpamgvb0jbiIJX8UUzSzbjYaUc9xoz+K3SQ== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" "@popperjs/core" "^2.11.2" -"@abp/prismjs@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-5.2.0-rc.2.tgz#80d326cd085e0994a1bcbe13f34ebf68d21224f7" - integrity sha512-tgADoIom+9SufIfDJGzXykdgsRf0fHD2O4lcqZYNRDtBPw3RI0XJki3w4fBOffS1kKTMn6ymIAU06SMpEB872A== +"@abp/prismjs@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-5.2.0.tgz#c33ee1178a3916a6a1eac54ec4bdc78ca0dc42c7" + integrity sha512-jVFm7d80u5cIuygQViotDEQNpe2nGxEPQmZNzEV1jM4myMAMN1PZHFhoFxb3FAbH2q0wlZ5lcXjQs5cTz8V8Mw== dependencies: - "@abp/clipboard" "~5.2.0-rc.2" - "@abp/core" "~5.2.0-rc.2" + "@abp/clipboard" "~5.2.0" + "@abp/core" "~5.2.0" prismjs "^1.26.0" -"@abp/select2@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-5.2.0-rc.2.tgz#2eef30442957ac02133357604a1256e995a9ebe7" - integrity sha512-1cFOavpWP6zRfrpXi0zozFkL6W0tEEBkWj7AiHU3AGctAQEZ0qWGKSTIExqnEsDb3LsjAKMdBycGdkLFbK97Og== +"@abp/select2@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-5.2.0.tgz#4b9418851cf52346131172c9c497173749bdd22b" + integrity sha512-t+EjuNqRIZIlu4Wk2pL+Ud/+gIFSoM3WN4U+LKGkQ1vwiVRbCUqvdj5LjGuEVrmN96lNfv3Xxut+XQoJDFjfeg== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" select2 "^4.0.13" -"@abp/sweetalert2@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-5.2.0-rc.2.tgz#15b6718b1378e8bd7e0ea019b965e7b51f0cb1ea" - integrity sha512-1ROKcfpu0Xyk7ebUFMNBhFgENcHCMj48+1Lj/OxdJH3U7KhyF5WEs54uYgn8EvY2wTCgOkHCnqeK9bRCp5M9+g== +"@abp/sweetalert2@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-5.2.0.tgz#f5625f33edcc9d56ab86cca30472637edfb52c95" + integrity sha512-8Ax00JbqfcB6nLIeeocPX7Yk4uPHsMXHMg6oLKTGV4w88h1MdazQ3YMb7E/9AXjCNoQE77cCEJ7wvV3FXC45SA== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" sweetalert2 "^11.3.6" -"@abp/timeago@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-5.2.0-rc.2.tgz#e6ad0cb584515b95e47258976d726fd996b7f47d" - integrity sha512-D9Y7xfpP6neURDkP/WMrFh25G++0SUiGIDaCIElgymhNdVp2gm9pC633ShetMOFrPCSuOUvlzC2p4YkUdq0Lnw== +"@abp/timeago@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-5.2.0.tgz#4ac58114acc00d2b2b4d2a051b98caba895c1a34" + integrity sha512-mgMP/vfdUIjjHNqssXcTMtQMQ1ZW9D9keUxvjtQyE+rXNByB+sXMf/mECEGsT9/hK/nDM+aBHxG+O7lkLI+dFA== dependencies: - "@abp/jquery" "~5.2.0-rc.2" + "@abp/jquery" "~5.2.0" timeago "^1.6.7" -"@abp/toastr@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-5.2.0-rc.2.tgz#b5f013f1f00dab648da2fe1cf4ece6691e6eafc7" - integrity sha512-FSkva7zP3kJFSh6SlmvrgjPFJscJbmrgCilxGxPGVxlg5p9LNORgkotNk2yKsGHX0F0rnKJ4kHepTq7g+oGMdw== +"@abp/toastr@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-5.2.0.tgz#215af1bdc92a649ac54cb745489e00d9f0e5096b" + integrity sha512-wmoEOA6lOuTTbljsbTTfBGmJb6ur1pDi/VPuf7UF7FXoTcK/NIuzufblzTldsUleYXyIodLfg2s6qpOUGCDO8Q== dependencies: - "@abp/jquery" "~5.2.0-rc.2" + "@abp/jquery" "~5.2.0" toastr "^2.1.4" -"@abp/utils@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-5.2.0-rc.2.tgz#1280059ff3e948ae0827eaf06d916e5a90f8907b" - integrity sha512-/mo4dSXPkhCEbqyKunuURcF1cEzuJqRTPOGpjSrjDwOgymVSWp/AqqjJPBXuc4qrMfB4q9y+Iod5nslXp2cXeA== +"@abp/utils@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-5.2.0.tgz#3f5a7a2aab94f5c2a5e1f0f634517a4939909fa7" + integrity sha512-CBQzu8bAQQ9EUPCjjcXwLCDE/rPFGTtSRtGeMP1lrjavYEAxplXu58Fd8WeTl6d8/dqGA3nNQUnWbc2lGPlUYw== dependencies: just-compare "^1.3.0" diff --git a/modules/setting-management/app/Volo.Abp.SettingManagement.DemoApp/package.json b/modules/setting-management/app/Volo.Abp.SettingManagement.DemoApp/package.json index b02e5735ee..18fb67912b 100644 --- a/modules/setting-management/app/Volo.Abp.SettingManagement.DemoApp/package.json +++ b/modules/setting-management/app/Volo.Abp.SettingManagement.DemoApp/package.json @@ -3,6 +3,6 @@ "name": "demo-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0-rc.2" + "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0" } } diff --git a/modules/setting-management/app/Volo.Abp.SettingManagement.DemoApp/yarn.lock b/modules/setting-management/app/Volo.Abp.SettingManagement.DemoApp/yarn.lock index 776c0dd074..2ec581d9c3 100644 --- a/modules/setting-management/app/Volo.Abp.SettingManagement.DemoApp/yarn.lock +++ b/modules/setting-management/app/Volo.Abp.SettingManagement.DemoApp/yarn.lock @@ -2,37 +2,37 @@ # yarn lockfile v1 -"@abp/aspnetcore.mvc.ui.theme.basic@^5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-5.2.0-rc.2.tgz#d2cf4a0f2b8a93f1fe53a0bc6c66d9c3233b620a" - integrity sha512-aQk3RSl31UT4gEqiHT3oV06BZ/k6q1DVKBwVOj+YQEIb8ojptJtbGv+aUhHEql5I7zwiWe4EWf2rM2Ve0JQa6Q== - dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~5.2.0-rc.2" - -"@abp/aspnetcore.mvc.ui.theme.shared@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-5.2.0-rc.2.tgz#9ff2eb2a1b5f438d8f848659400100e20f74fc77" - integrity sha512-m06zMEt0C9P3f7+Qg7SjvP+k4wHPqvAOzsd5jDNN0JekeWH4gIMsqgDAoRB2SA72HUUpMbGe8Utune7EgE/T1Q== - dependencies: - "@abp/aspnetcore.mvc.ui" "~5.2.0-rc.2" - "@abp/bootstrap" "~5.2.0-rc.2" - "@abp/bootstrap-datepicker" "~5.2.0-rc.2" - "@abp/datatables.net-bs5" "~5.2.0-rc.2" - "@abp/font-awesome" "~5.2.0-rc.2" - "@abp/jquery-form" "~5.2.0-rc.2" - "@abp/jquery-validation-unobtrusive" "~5.2.0-rc.2" - "@abp/lodash" "~5.2.0-rc.2" - "@abp/luxon" "~5.2.0-rc.2" - "@abp/malihu-custom-scrollbar-plugin" "~5.2.0-rc.2" - "@abp/select2" "~5.2.0-rc.2" - "@abp/sweetalert2" "~5.2.0-rc.2" - "@abp/timeago" "~5.2.0-rc.2" - "@abp/toastr" "~5.2.0-rc.2" - -"@abp/aspnetcore.mvc.ui@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-5.2.0-rc.2.tgz#427811f66eb738dbb89434e926b36a2309fe43b2" - integrity sha512-+ss9MctYTF9Ewn7VEsMqszEoiX51G070kN2bIepgyXnYetrQRFsTgQGa4yi1bAqyAF9rZ1j0hSB0eM2clFyJMg== +"@abp/aspnetcore.mvc.ui.theme.basic@^5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-5.2.0.tgz#272f3ba89ee7a37bc2c5d0d1c280a47c39de4baa" + integrity sha512-9yTHmtmD7sgA0fTxFCohhMrmolfnp/5sJzPsh3USGqANjr3g9Ybv3tydP4Hwfb1Ts+dqcrITdsM0Ny/EcEt+iQ== + dependencies: + "@abp/aspnetcore.mvc.ui.theme.shared" "~5.2.0" + +"@abp/aspnetcore.mvc.ui.theme.shared@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-5.2.0.tgz#2a7ba6d0d2e28bb5acc77dc8e3a86535912243da" + integrity sha512-+QqRI3Yz+iwitOhfhMnomfpOoqsdh4kL6EFh9z2nI2GhLa+CtiJMAfZUOhLZTGHrBhtFk/mYu8LzYcFRzch8tw== + dependencies: + "@abp/aspnetcore.mvc.ui" "~5.2.0" + "@abp/bootstrap" "~5.2.0" + "@abp/bootstrap-datepicker" "~5.2.0" + "@abp/datatables.net-bs5" "~5.2.0" + "@abp/font-awesome" "~5.2.0" + "@abp/jquery-form" "~5.2.0" + "@abp/jquery-validation-unobtrusive" "~5.2.0" + "@abp/lodash" "~5.2.0" + "@abp/luxon" "~5.2.0" + "@abp/malihu-custom-scrollbar-plugin" "~5.2.0" + "@abp/select2" "~5.2.0" + "@abp/sweetalert2" "~5.2.0" + "@abp/timeago" "~5.2.0" + "@abp/toastr" "~5.2.0" + +"@abp/aspnetcore.mvc.ui@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-5.2.0.tgz#c590f3b56a623e9d00fa50d6a6179d4523ace2a6" + integrity sha512-UtlFa0HVwO8ezve43VEqdGazu9eQ/j4vmv4khKTPG8dEt2u9i3QVruqcIV5XnxnsQiGcZDak7QCyyH1GUFAhUg== dependencies: ansi-colors "^4.1.1" extend-object "^1.0.0" @@ -41,144 +41,144 @@ merge-stream "^2.0.0" micromatch "^4.0.2" -"@abp/bootstrap-datepicker@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-5.2.0-rc.2.tgz#bfb648e7b8e5d2a9806301417c7864abb4cc26e2" - integrity sha512-wKR+5g/xx7zqFGFaOZVO9XySlrOmOFH/ZidDpq9QYjE+OoHSlS8X5DUnkbXj2MbQy4etZuvz9ILcmnBPonrQ7g== +"@abp/bootstrap-datepicker@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-5.2.0.tgz#140892172b3d6edecc1d1e826b517e711d8ff60a" + integrity sha512-9WzC5Up7Uaahre6CCP2bzbtjhmnz3Or828kYxUlWSf7GQO2BydCJBqkWz6gjWDIzxLjQ5AeB+n9odEG3gLNNUw== dependencies: bootstrap-datepicker "^1.9.0" -"@abp/bootstrap@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-5.2.0-rc.2.tgz#0375b38317c5d1f5f6cb7d46a0ee6bf9b85a6f4f" - integrity sha512-hsgxY8WNRonQZP3cmMKvBNHnyCSBfbBB4savLW5r7CxysjnRt6MDyhmmj7XVwVTC1siBviUcWClOHCJisaNRSw== +"@abp/bootstrap@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-5.2.0.tgz#16179d319b2e7a53fde6940217b3e27ce3c32714" + integrity sha512-r11Vzo7kFC8zs5DMvdqsKPG0FEYDqhFzgW4TJKa6d968apFRJ3wGjnF/kJmC1J+XzqNTtyHcwStfNmXUdL0udA== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" bootstrap "^5.1.3" -"@abp/core@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-5.2.0-rc.2.tgz#f0c3dd7f0b12e8e13a702a3b0a53aa4525da673e" - integrity sha512-zotgZOXmkh+aD0KExBr4QytQfDDHxrG15e2HFzYKywhd0mpnwAVdR2Z2Ye01C360wJ2opv0mtgaSuEZniXNO3Q== +"@abp/core@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-5.2.0.tgz#d85ab6fd677d1850261afdba240ef2b8c0d42faf" + integrity sha512-GRxfuip7E97uItAEcv87FSv5C4Tw6JLAkTbu0wAv86uhT46czPw77DZ5LhTRUlDZp4fPzJSy6OABaG1RROlo1w== dependencies: - "@abp/utils" "~5.2.0-rc.2" + "@abp/utils" "~5.2.0" -"@abp/datatables.net-bs5@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-5.2.0-rc.2.tgz#df5cbe004ba3a2330cc667b3724440c4881cc6b2" - integrity sha512-Q2Sy6MMWM3EuELHeHxKkDflPTX09ictonjB5vn/Cau2PHuOkWTnL0Ystl91a1DetQIa1ejJL/YB+Pz1TUVoUNA== +"@abp/datatables.net-bs5@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-5.2.0.tgz#9a6d5cba805a42abde2bbc3dd54ffeb67a188285" + integrity sha512-8eIvTadxffRW04qVRHh245lqX1tAfdyf5AsLqgomm7p0/ec76lNT1mRqwdS/kxD/ClrE6LmBnij1jJdaAs/0xQ== dependencies: - "@abp/datatables.net" "~5.2.0-rc.2" + "@abp/datatables.net" "~5.2.0" datatables.net-bs5 "^1.11.4" -"@abp/datatables.net@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-5.2.0-rc.2.tgz#bfdc01302d19eab0d73eff908238bf88c5806e74" - integrity sha512-TG1b8moW4RqCyNtzQKB7RnCmDt1cDEy/5WD++Maz2x4/yvu1uBBa6qLR7Mn6UNgoC51Y/op+LzaabkwXUSJl4w== +"@abp/datatables.net@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-5.2.0.tgz#fc900b9da0625264a43530e26555cf31b06ee16c" + integrity sha512-O+DZGpvcN42yQieapaX7OdjDkBSlEQIX/iNSbext5e08Gs//cAPj7EQKiSirb6+BIvIZQchPHj2xadw0L7sQvg== dependencies: - "@abp/jquery" "~5.2.0-rc.2" + "@abp/jquery" "~5.2.0" datatables.net "^1.11.4" -"@abp/font-awesome@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-5.2.0-rc.2.tgz#0292cb22c0280dccfe148ad3d46947ede26f8b14" - integrity sha512-FzjH/lnAglswqU7/YAXZP0H/ocGBrDkegMiQ7OjzZVcgGPS9BnqRPbiHDz7mjBHaQHzBtTCcZrXnU0l3GXCdbw== +"@abp/font-awesome@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-5.2.0.tgz#8e0da078d307735ccac394326d06f21de85f2808" + integrity sha512-ZGiov0N35fZ92Abf+k5MqtRkAP8o54rb9iKEjUYgwtF8rnskO5o9fK8TppwXb7PlG9Znh2AUkknpeXOwa1IWtQ== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" "@fortawesome/fontawesome-free" "^5.15.4" -"@abp/jquery-form@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-5.2.0-rc.2.tgz#797e3b72a91435d74f19ddaa9b2e6e04fcfed616" - integrity sha512-cVbReCeM5q7nqeQDjSIH7VmuMwX8lE36D9sariUw8xSUn5GJlnrGYNV4kE7G9JLIlIRanIlS3SPuA3RFA2z9ZA== +"@abp/jquery-form@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-5.2.0.tgz#f6dc777c736260f63875fb05c566ec14b2213b7c" + integrity sha512-xgQvgEXso3a/zMZWNxh9e0RdruCqNh75j9Lp4vHGxaWsXRtvgbCIfayDDWrn+6P28p8bYal7g51Jw6nc5jR5RA== dependencies: - "@abp/jquery" "~5.2.0-rc.2" + "@abp/jquery" "~5.2.0" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-5.2.0-rc.2.tgz#ec0c22cecef3016c1da0b8dca4374a263915a835" - integrity sha512-b+ttLlnRPgDB7V2tnYp8+1Q3niM4ZmiU/ZaQB4z6gSMk/2tPAIhOOwAQt7DYRWSMUsgGFI0NvsgEBM9aLTikFA== +"@abp/jquery-validation-unobtrusive@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-5.2.0.tgz#8acd1346bdd2b6b1cd40017f995265fb3d19539f" + integrity sha512-z7VhlC9zi2Pf6sZ8EexUDHyBieaeO1G5ndmvJTV5wZMAigsu+H7LaAyQrTd5P42WpX1Jy3Lo2UbVCt5Gh98SXg== dependencies: - "@abp/jquery-validation" "~5.2.0-rc.2" + "@abp/jquery-validation" "~5.2.0" jquery-validation-unobtrusive "^3.2.12" -"@abp/jquery-validation@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-5.2.0-rc.2.tgz#a98383e6c7fb21b74ecde937c25d7fa46810a333" - integrity sha512-6lVxJyMfL0kHmv8tpxLhVfK0Rf+qjLMPkm1qHd0pSwvH+GM0QMN39s9TaexCvH3QO70BlEnwXJ2PWVY9OQY5uw== +"@abp/jquery-validation@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-5.2.0.tgz#b594d6d4412b4cc56b97ba5581af559adc91d08a" + integrity sha512-AIAP3qRVI6DcF71rUy0yUXaGKVWwGtMx7Z13MMI66LhTnlS6giUb5UUQhcHJjIp4mAJoYbawiTpAnWezkoLJDQ== dependencies: - "@abp/jquery" "~5.2.0-rc.2" + "@abp/jquery" "~5.2.0" jquery-validation "^1.19.3" -"@abp/jquery@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-5.2.0-rc.2.tgz#3235b92834cbca4d3e22fb0b19122aa2a24b8262" - integrity sha512-u7xpQcaMpzlXq018qBdzwWmPx+65QHPq5VhI7aAvZAUlQrvQjiiCeG25egxOeCL0aROcCjsAlnTItT1U/q9loQ== +"@abp/jquery@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-5.2.0.tgz#2c924adc4a17013a7958017e985ca337c5064389" + integrity sha512-uL9Y9a31D7RLTz0VtSj0Wx9PHNrVrigPf8AUS8zMAblc8DZLEzXJ6L4nUU3xDW6+TGC/rO2x8zz1y/T6sKfzUw== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" jquery "~3.6.0" -"@abp/lodash@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-5.2.0-rc.2.tgz#e55f11279d4f374785a56ec68ed99cdf2495a9aa" - integrity sha512-BR6d1NbTcuk772RK8VdeHBokbqZ1OHUgRKdPG3MXlDGKZmUS4/ijFdRiIvo7Rd0WFqgk2QdbHw3lfKQ/CGqyhw== +"@abp/lodash@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-5.2.0.tgz#27f2c9c5848faceed04f0198d46cb34515e99608" + integrity sha512-5wcHMm+QtjEv/USxFu7jLNlNRiBwEnQG6zFwIKrT5V3d8dD8xq4zG86rojSexxd/0AKqyo5foMctV4IG8HC6Mg== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" lodash "^4.17.21" -"@abp/luxon@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-5.2.0-rc.2.tgz#0d263482b9a73269164a8a58562ce8bd69b57f36" - integrity sha512-KIhpvl9kf43Bc/E/u6bmb1lp0asf81NoUoERQTRz7JqmH1XYJvJCqGHxommvItcu7zNjCLL6FK/JtO0v7DUiEw== +"@abp/luxon@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-5.2.0.tgz#819b6cb5315622545bad8a84b8f3d6d63fbdf52d" + integrity sha512-VD2I/qhRYbbu5T7sUG5g01bcbw0gwAGmqUR4QI/5gmBYif8VuGHu/zTvnEn4Vhj6P5/tSWpa7blUs0EiFk/L/A== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" luxon "^2.3.0" -"@abp/malihu-custom-scrollbar-plugin@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-5.2.0-rc.2.tgz#5136c0d59d5d385350f560c6d8a3d10f6393dea7" - integrity sha512-7Q8yZbU9YRA5/Y+rRLLiPD724rjfrVBuCpfp1+b99LyeFTFTSD2oNG3r/I6FC7tE5HLaFscJLJyOca4GPS1mww== +"@abp/malihu-custom-scrollbar-plugin@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-5.2.0.tgz#54ee9cf2c1049d617afebfd7b9ebae5b9225746e" + integrity sha512-CvQb/lnoxs+nEN0FuWwJyA5EgsbiSy23sYbTrM2t/KF6X3dK2m+4RMbEeG7rRYV1i6c1jfuHrjoFh3FPr9KRlA== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/select2@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-5.2.0-rc.2.tgz#2eef30442957ac02133357604a1256e995a9ebe7" - integrity sha512-1cFOavpWP6zRfrpXi0zozFkL6W0tEEBkWj7AiHU3AGctAQEZ0qWGKSTIExqnEsDb3LsjAKMdBycGdkLFbK97Og== +"@abp/select2@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-5.2.0.tgz#4b9418851cf52346131172c9c497173749bdd22b" + integrity sha512-t+EjuNqRIZIlu4Wk2pL+Ud/+gIFSoM3WN4U+LKGkQ1vwiVRbCUqvdj5LjGuEVrmN96lNfv3Xxut+XQoJDFjfeg== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" select2 "^4.0.13" -"@abp/sweetalert2@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-5.2.0-rc.2.tgz#15b6718b1378e8bd7e0ea019b965e7b51f0cb1ea" - integrity sha512-1ROKcfpu0Xyk7ebUFMNBhFgENcHCMj48+1Lj/OxdJH3U7KhyF5WEs54uYgn8EvY2wTCgOkHCnqeK9bRCp5M9+g== +"@abp/sweetalert2@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-5.2.0.tgz#f5625f33edcc9d56ab86cca30472637edfb52c95" + integrity sha512-8Ax00JbqfcB6nLIeeocPX7Yk4uPHsMXHMg6oLKTGV4w88h1MdazQ3YMb7E/9AXjCNoQE77cCEJ7wvV3FXC45SA== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" sweetalert2 "^11.3.6" -"@abp/timeago@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-5.2.0-rc.2.tgz#e6ad0cb584515b95e47258976d726fd996b7f47d" - integrity sha512-D9Y7xfpP6neURDkP/WMrFh25G++0SUiGIDaCIElgymhNdVp2gm9pC633ShetMOFrPCSuOUvlzC2p4YkUdq0Lnw== +"@abp/timeago@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-5.2.0.tgz#4ac58114acc00d2b2b4d2a051b98caba895c1a34" + integrity sha512-mgMP/vfdUIjjHNqssXcTMtQMQ1ZW9D9keUxvjtQyE+rXNByB+sXMf/mECEGsT9/hK/nDM+aBHxG+O7lkLI+dFA== dependencies: - "@abp/jquery" "~5.2.0-rc.2" + "@abp/jquery" "~5.2.0" timeago "^1.6.7" -"@abp/toastr@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-5.2.0-rc.2.tgz#b5f013f1f00dab648da2fe1cf4ece6691e6eafc7" - integrity sha512-FSkva7zP3kJFSh6SlmvrgjPFJscJbmrgCilxGxPGVxlg5p9LNORgkotNk2yKsGHX0F0rnKJ4kHepTq7g+oGMdw== +"@abp/toastr@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-5.2.0.tgz#215af1bdc92a649ac54cb745489e00d9f0e5096b" + integrity sha512-wmoEOA6lOuTTbljsbTTfBGmJb6ur1pDi/VPuf7UF7FXoTcK/NIuzufblzTldsUleYXyIodLfg2s6qpOUGCDO8Q== dependencies: - "@abp/jquery" "~5.2.0-rc.2" + "@abp/jquery" "~5.2.0" toastr "^2.1.4" -"@abp/utils@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-5.2.0-rc.2.tgz#1280059ff3e948ae0827eaf06d916e5a90f8907b" - integrity sha512-/mo4dSXPkhCEbqyKunuURcF1cEzuJqRTPOGpjSrjDwOgymVSWp/AqqjJPBXuc4qrMfB4q9y+Iod5nslXp2cXeA== +"@abp/utils@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-5.2.0.tgz#3f5a7a2aab94f5c2a5e1f0f634517a4939909fa7" + integrity sha512-CBQzu8bAQQ9EUPCjjcXwLCDE/rPFGTtSRtGeMP1lrjavYEAxplXu58Fd8WeTl6d8/dqGA3nNQUnWbc2lGPlUYw== dependencies: just-compare "^1.3.0" diff --git a/modules/virtual-file-explorer/app/Volo.Abp.VirtualFileExplorer.DemoApp/package.json b/modules/virtual-file-explorer/app/Volo.Abp.VirtualFileExplorer.DemoApp/package.json index afb86a2379..b2e2c3b37b 100644 --- a/modules/virtual-file-explorer/app/Volo.Abp.VirtualFileExplorer.DemoApp/package.json +++ b/modules/virtual-file-explorer/app/Volo.Abp.VirtualFileExplorer.DemoApp/package.json @@ -3,7 +3,7 @@ "version": "1.0.0", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0-rc.2", - "@abp/virtual-file-explorer": "^5.2.0-rc.2" + "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0", + "@abp/virtual-file-explorer": "^5.2.0" } } diff --git a/modules/virtual-file-explorer/app/Volo.Abp.VirtualFileExplorer.DemoApp/yarn.lock b/modules/virtual-file-explorer/app/Volo.Abp.VirtualFileExplorer.DemoApp/yarn.lock index 6eeb3af620..d1af68cf61 100644 --- a/modules/virtual-file-explorer/app/Volo.Abp.VirtualFileExplorer.DemoApp/yarn.lock +++ b/modules/virtual-file-explorer/app/Volo.Abp.VirtualFileExplorer.DemoApp/yarn.lock @@ -2,37 +2,37 @@ # yarn lockfile v1 -"@abp/aspnetcore.mvc.ui.theme.basic@^5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-5.2.0-rc.2.tgz#d2cf4a0f2b8a93f1fe53a0bc6c66d9c3233b620a" - integrity sha512-aQk3RSl31UT4gEqiHT3oV06BZ/k6q1DVKBwVOj+YQEIb8ojptJtbGv+aUhHEql5I7zwiWe4EWf2rM2Ve0JQa6Q== - dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~5.2.0-rc.2" - -"@abp/aspnetcore.mvc.ui.theme.shared@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-5.2.0-rc.2.tgz#9ff2eb2a1b5f438d8f848659400100e20f74fc77" - integrity sha512-m06zMEt0C9P3f7+Qg7SjvP+k4wHPqvAOzsd5jDNN0JekeWH4gIMsqgDAoRB2SA72HUUpMbGe8Utune7EgE/T1Q== - dependencies: - "@abp/aspnetcore.mvc.ui" "~5.2.0-rc.2" - "@abp/bootstrap" "~5.2.0-rc.2" - "@abp/bootstrap-datepicker" "~5.2.0-rc.2" - "@abp/datatables.net-bs5" "~5.2.0-rc.2" - "@abp/font-awesome" "~5.2.0-rc.2" - "@abp/jquery-form" "~5.2.0-rc.2" - "@abp/jquery-validation-unobtrusive" "~5.2.0-rc.2" - "@abp/lodash" "~5.2.0-rc.2" - "@abp/luxon" "~5.2.0-rc.2" - "@abp/malihu-custom-scrollbar-plugin" "~5.2.0-rc.2" - "@abp/select2" "~5.2.0-rc.2" - "@abp/sweetalert2" "~5.2.0-rc.2" - "@abp/timeago" "~5.2.0-rc.2" - "@abp/toastr" "~5.2.0-rc.2" - -"@abp/aspnetcore.mvc.ui@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-5.2.0-rc.2.tgz#427811f66eb738dbb89434e926b36a2309fe43b2" - integrity sha512-+ss9MctYTF9Ewn7VEsMqszEoiX51G070kN2bIepgyXnYetrQRFsTgQGa4yi1bAqyAF9rZ1j0hSB0eM2clFyJMg== +"@abp/aspnetcore.mvc.ui.theme.basic@^5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-5.2.0.tgz#272f3ba89ee7a37bc2c5d0d1c280a47c39de4baa" + integrity sha512-9yTHmtmD7sgA0fTxFCohhMrmolfnp/5sJzPsh3USGqANjr3g9Ybv3tydP4Hwfb1Ts+dqcrITdsM0Ny/EcEt+iQ== + dependencies: + "@abp/aspnetcore.mvc.ui.theme.shared" "~5.2.0" + +"@abp/aspnetcore.mvc.ui.theme.shared@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-5.2.0.tgz#2a7ba6d0d2e28bb5acc77dc8e3a86535912243da" + integrity sha512-+QqRI3Yz+iwitOhfhMnomfpOoqsdh4kL6EFh9z2nI2GhLa+CtiJMAfZUOhLZTGHrBhtFk/mYu8LzYcFRzch8tw== + dependencies: + "@abp/aspnetcore.mvc.ui" "~5.2.0" + "@abp/bootstrap" "~5.2.0" + "@abp/bootstrap-datepicker" "~5.2.0" + "@abp/datatables.net-bs5" "~5.2.0" + "@abp/font-awesome" "~5.2.0" + "@abp/jquery-form" "~5.2.0" + "@abp/jquery-validation-unobtrusive" "~5.2.0" + "@abp/lodash" "~5.2.0" + "@abp/luxon" "~5.2.0" + "@abp/malihu-custom-scrollbar-plugin" "~5.2.0" + "@abp/select2" "~5.2.0" + "@abp/sweetalert2" "~5.2.0" + "@abp/timeago" "~5.2.0" + "@abp/toastr" "~5.2.0" + +"@abp/aspnetcore.mvc.ui@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-5.2.0.tgz#c590f3b56a623e9d00fa50d6a6179d4523ace2a6" + integrity sha512-UtlFa0HVwO8ezve43VEqdGazu9eQ/j4vmv4khKTPG8dEt2u9i3QVruqcIV5XnxnsQiGcZDak7QCyyH1GUFAhUg== dependencies: ansi-colors "^4.1.1" extend-object "^1.0.0" @@ -41,171 +41,171 @@ merge-stream "^2.0.0" micromatch "^4.0.2" -"@abp/bootstrap-datepicker@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-5.2.0-rc.2.tgz#bfb648e7b8e5d2a9806301417c7864abb4cc26e2" - integrity sha512-wKR+5g/xx7zqFGFaOZVO9XySlrOmOFH/ZidDpq9QYjE+OoHSlS8X5DUnkbXj2MbQy4etZuvz9ILcmnBPonrQ7g== +"@abp/bootstrap-datepicker@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-5.2.0.tgz#140892172b3d6edecc1d1e826b517e711d8ff60a" + integrity sha512-9WzC5Up7Uaahre6CCP2bzbtjhmnz3Or828kYxUlWSf7GQO2BydCJBqkWz6gjWDIzxLjQ5AeB+n9odEG3gLNNUw== dependencies: bootstrap-datepicker "^1.9.0" -"@abp/bootstrap@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-5.2.0-rc.2.tgz#0375b38317c5d1f5f6cb7d46a0ee6bf9b85a6f4f" - integrity sha512-hsgxY8WNRonQZP3cmMKvBNHnyCSBfbBB4savLW5r7CxysjnRt6MDyhmmj7XVwVTC1siBviUcWClOHCJisaNRSw== +"@abp/bootstrap@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-5.2.0.tgz#16179d319b2e7a53fde6940217b3e27ce3c32714" + integrity sha512-r11Vzo7kFC8zs5DMvdqsKPG0FEYDqhFzgW4TJKa6d968apFRJ3wGjnF/kJmC1J+XzqNTtyHcwStfNmXUdL0udA== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" bootstrap "^5.1.3" -"@abp/clipboard@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-5.2.0-rc.2.tgz#d641c6bdfdf84b991b84c4331a10ca398a7ee26a" - integrity sha512-RxcY94FfCUhGVFbb2CXTRWujrkSubdYGQ3wbkdZPeOCuF8t60WzyhxoQanRqSdiUbk39W8nUuReYtclzXwM58g== +"@abp/clipboard@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-5.2.0.tgz#5374562edfa95c6a2a2244b4f1667625c73b7185" + integrity sha512-AFdY+7n4khi6mM86EzbclzC2S/SN5FncGCFTW873GQ2OakDzyCRhNqtoLihcvSW5YwDvofMJjAITCy5GnzelRw== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" clipboard "^2.0.8" -"@abp/core@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-5.2.0-rc.2.tgz#f0c3dd7f0b12e8e13a702a3b0a53aa4525da673e" - integrity sha512-zotgZOXmkh+aD0KExBr4QytQfDDHxrG15e2HFzYKywhd0mpnwAVdR2Z2Ye01C360wJ2opv0mtgaSuEZniXNO3Q== +"@abp/core@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-5.2.0.tgz#d85ab6fd677d1850261afdba240ef2b8c0d42faf" + integrity sha512-GRxfuip7E97uItAEcv87FSv5C4Tw6JLAkTbu0wAv86uhT46czPw77DZ5LhTRUlDZp4fPzJSy6OABaG1RROlo1w== dependencies: - "@abp/utils" "~5.2.0-rc.2" + "@abp/utils" "~5.2.0" -"@abp/datatables.net-bs5@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-5.2.0-rc.2.tgz#df5cbe004ba3a2330cc667b3724440c4881cc6b2" - integrity sha512-Q2Sy6MMWM3EuELHeHxKkDflPTX09ictonjB5vn/Cau2PHuOkWTnL0Ystl91a1DetQIa1ejJL/YB+Pz1TUVoUNA== +"@abp/datatables.net-bs5@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-5.2.0.tgz#9a6d5cba805a42abde2bbc3dd54ffeb67a188285" + integrity sha512-8eIvTadxffRW04qVRHh245lqX1tAfdyf5AsLqgomm7p0/ec76lNT1mRqwdS/kxD/ClrE6LmBnij1jJdaAs/0xQ== dependencies: - "@abp/datatables.net" "~5.2.0-rc.2" + "@abp/datatables.net" "~5.2.0" datatables.net-bs5 "^1.11.4" -"@abp/datatables.net@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-5.2.0-rc.2.tgz#bfdc01302d19eab0d73eff908238bf88c5806e74" - integrity sha512-TG1b8moW4RqCyNtzQKB7RnCmDt1cDEy/5WD++Maz2x4/yvu1uBBa6qLR7Mn6UNgoC51Y/op+LzaabkwXUSJl4w== +"@abp/datatables.net@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-5.2.0.tgz#fc900b9da0625264a43530e26555cf31b06ee16c" + integrity sha512-O+DZGpvcN42yQieapaX7OdjDkBSlEQIX/iNSbext5e08Gs//cAPj7EQKiSirb6+BIvIZQchPHj2xadw0L7sQvg== dependencies: - "@abp/jquery" "~5.2.0-rc.2" + "@abp/jquery" "~5.2.0" datatables.net "^1.11.4" -"@abp/font-awesome@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-5.2.0-rc.2.tgz#0292cb22c0280dccfe148ad3d46947ede26f8b14" - integrity sha512-FzjH/lnAglswqU7/YAXZP0H/ocGBrDkegMiQ7OjzZVcgGPS9BnqRPbiHDz7mjBHaQHzBtTCcZrXnU0l3GXCdbw== +"@abp/font-awesome@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-5.2.0.tgz#8e0da078d307735ccac394326d06f21de85f2808" + integrity sha512-ZGiov0N35fZ92Abf+k5MqtRkAP8o54rb9iKEjUYgwtF8rnskO5o9fK8TppwXb7PlG9Znh2AUkknpeXOwa1IWtQ== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" "@fortawesome/fontawesome-free" "^5.15.4" -"@abp/jquery-form@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-5.2.0-rc.2.tgz#797e3b72a91435d74f19ddaa9b2e6e04fcfed616" - integrity sha512-cVbReCeM5q7nqeQDjSIH7VmuMwX8lE36D9sariUw8xSUn5GJlnrGYNV4kE7G9JLIlIRanIlS3SPuA3RFA2z9ZA== +"@abp/jquery-form@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-5.2.0.tgz#f6dc777c736260f63875fb05c566ec14b2213b7c" + integrity sha512-xgQvgEXso3a/zMZWNxh9e0RdruCqNh75j9Lp4vHGxaWsXRtvgbCIfayDDWrn+6P28p8bYal7g51Jw6nc5jR5RA== dependencies: - "@abp/jquery" "~5.2.0-rc.2" + "@abp/jquery" "~5.2.0" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-5.2.0-rc.2.tgz#ec0c22cecef3016c1da0b8dca4374a263915a835" - integrity sha512-b+ttLlnRPgDB7V2tnYp8+1Q3niM4ZmiU/ZaQB4z6gSMk/2tPAIhOOwAQt7DYRWSMUsgGFI0NvsgEBM9aLTikFA== +"@abp/jquery-validation-unobtrusive@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-5.2.0.tgz#8acd1346bdd2b6b1cd40017f995265fb3d19539f" + integrity sha512-z7VhlC9zi2Pf6sZ8EexUDHyBieaeO1G5ndmvJTV5wZMAigsu+H7LaAyQrTd5P42WpX1Jy3Lo2UbVCt5Gh98SXg== dependencies: - "@abp/jquery-validation" "~5.2.0-rc.2" + "@abp/jquery-validation" "~5.2.0" jquery-validation-unobtrusive "^3.2.12" -"@abp/jquery-validation@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-5.2.0-rc.2.tgz#a98383e6c7fb21b74ecde937c25d7fa46810a333" - integrity sha512-6lVxJyMfL0kHmv8tpxLhVfK0Rf+qjLMPkm1qHd0pSwvH+GM0QMN39s9TaexCvH3QO70BlEnwXJ2PWVY9OQY5uw== +"@abp/jquery-validation@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-5.2.0.tgz#b594d6d4412b4cc56b97ba5581af559adc91d08a" + integrity sha512-AIAP3qRVI6DcF71rUy0yUXaGKVWwGtMx7Z13MMI66LhTnlS6giUb5UUQhcHJjIp4mAJoYbawiTpAnWezkoLJDQ== dependencies: - "@abp/jquery" "~5.2.0-rc.2" + "@abp/jquery" "~5.2.0" jquery-validation "^1.19.3" -"@abp/jquery@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-5.2.0-rc.2.tgz#3235b92834cbca4d3e22fb0b19122aa2a24b8262" - integrity sha512-u7xpQcaMpzlXq018qBdzwWmPx+65QHPq5VhI7aAvZAUlQrvQjiiCeG25egxOeCL0aROcCjsAlnTItT1U/q9loQ== +"@abp/jquery@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-5.2.0.tgz#2c924adc4a17013a7958017e985ca337c5064389" + integrity sha512-uL9Y9a31D7RLTz0VtSj0Wx9PHNrVrigPf8AUS8zMAblc8DZLEzXJ6L4nUU3xDW6+TGC/rO2x8zz1y/T6sKfzUw== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" jquery "~3.6.0" -"@abp/lodash@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-5.2.0-rc.2.tgz#e55f11279d4f374785a56ec68ed99cdf2495a9aa" - integrity sha512-BR6d1NbTcuk772RK8VdeHBokbqZ1OHUgRKdPG3MXlDGKZmUS4/ijFdRiIvo7Rd0WFqgk2QdbHw3lfKQ/CGqyhw== +"@abp/lodash@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-5.2.0.tgz#27f2c9c5848faceed04f0198d46cb34515e99608" + integrity sha512-5wcHMm+QtjEv/USxFu7jLNlNRiBwEnQG6zFwIKrT5V3d8dD8xq4zG86rojSexxd/0AKqyo5foMctV4IG8HC6Mg== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" lodash "^4.17.21" -"@abp/luxon@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-5.2.0-rc.2.tgz#0d263482b9a73269164a8a58562ce8bd69b57f36" - integrity sha512-KIhpvl9kf43Bc/E/u6bmb1lp0asf81NoUoERQTRz7JqmH1XYJvJCqGHxommvItcu7zNjCLL6FK/JtO0v7DUiEw== +"@abp/luxon@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-5.2.0.tgz#819b6cb5315622545bad8a84b8f3d6d63fbdf52d" + integrity sha512-VD2I/qhRYbbu5T7sUG5g01bcbw0gwAGmqUR4QI/5gmBYif8VuGHu/zTvnEn4Vhj6P5/tSWpa7blUs0EiFk/L/A== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" luxon "^2.3.0" -"@abp/malihu-custom-scrollbar-plugin@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-5.2.0-rc.2.tgz#5136c0d59d5d385350f560c6d8a3d10f6393dea7" - integrity sha512-7Q8yZbU9YRA5/Y+rRLLiPD724rjfrVBuCpfp1+b99LyeFTFTSD2oNG3r/I6FC7tE5HLaFscJLJyOca4GPS1mww== +"@abp/malihu-custom-scrollbar-plugin@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-5.2.0.tgz#54ee9cf2c1049d617afebfd7b9ebae5b9225746e" + integrity sha512-CvQb/lnoxs+nEN0FuWwJyA5EgsbiSy23sYbTrM2t/KF6X3dK2m+4RMbEeG7rRYV1i6c1jfuHrjoFh3FPr9KRlA== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/prismjs@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-5.2.0-rc.2.tgz#80d326cd085e0994a1bcbe13f34ebf68d21224f7" - integrity sha512-tgADoIom+9SufIfDJGzXykdgsRf0fHD2O4lcqZYNRDtBPw3RI0XJki3w4fBOffS1kKTMn6ymIAU06SMpEB872A== +"@abp/prismjs@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-5.2.0.tgz#c33ee1178a3916a6a1eac54ec4bdc78ca0dc42c7" + integrity sha512-jVFm7d80u5cIuygQViotDEQNpe2nGxEPQmZNzEV1jM4myMAMN1PZHFhoFxb3FAbH2q0wlZ5lcXjQs5cTz8V8Mw== dependencies: - "@abp/clipboard" "~5.2.0-rc.2" - "@abp/core" "~5.2.0-rc.2" + "@abp/clipboard" "~5.2.0" + "@abp/core" "~5.2.0" prismjs "^1.26.0" -"@abp/select2@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-5.2.0-rc.2.tgz#2eef30442957ac02133357604a1256e995a9ebe7" - integrity sha512-1cFOavpWP6zRfrpXi0zozFkL6W0tEEBkWj7AiHU3AGctAQEZ0qWGKSTIExqnEsDb3LsjAKMdBycGdkLFbK97Og== +"@abp/select2@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-5.2.0.tgz#4b9418851cf52346131172c9c497173749bdd22b" + integrity sha512-t+EjuNqRIZIlu4Wk2pL+Ud/+gIFSoM3WN4U+LKGkQ1vwiVRbCUqvdj5LjGuEVrmN96lNfv3Xxut+XQoJDFjfeg== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" select2 "^4.0.13" -"@abp/sweetalert2@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-5.2.0-rc.2.tgz#15b6718b1378e8bd7e0ea019b965e7b51f0cb1ea" - integrity sha512-1ROKcfpu0Xyk7ebUFMNBhFgENcHCMj48+1Lj/OxdJH3U7KhyF5WEs54uYgn8EvY2wTCgOkHCnqeK9bRCp5M9+g== +"@abp/sweetalert2@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-5.2.0.tgz#f5625f33edcc9d56ab86cca30472637edfb52c95" + integrity sha512-8Ax00JbqfcB6nLIeeocPX7Yk4uPHsMXHMg6oLKTGV4w88h1MdazQ3YMb7E/9AXjCNoQE77cCEJ7wvV3FXC45SA== dependencies: - "@abp/core" "~5.2.0-rc.2" + "@abp/core" "~5.2.0" sweetalert2 "^11.3.6" -"@abp/timeago@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-5.2.0-rc.2.tgz#e6ad0cb584515b95e47258976d726fd996b7f47d" - integrity sha512-D9Y7xfpP6neURDkP/WMrFh25G++0SUiGIDaCIElgymhNdVp2gm9pC633ShetMOFrPCSuOUvlzC2p4YkUdq0Lnw== +"@abp/timeago@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-5.2.0.tgz#4ac58114acc00d2b2b4d2a051b98caba895c1a34" + integrity sha512-mgMP/vfdUIjjHNqssXcTMtQMQ1ZW9D9keUxvjtQyE+rXNByB+sXMf/mECEGsT9/hK/nDM+aBHxG+O7lkLI+dFA== dependencies: - "@abp/jquery" "~5.2.0-rc.2" + "@abp/jquery" "~5.2.0" timeago "^1.6.7" -"@abp/toastr@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-5.2.0-rc.2.tgz#b5f013f1f00dab648da2fe1cf4ece6691e6eafc7" - integrity sha512-FSkva7zP3kJFSh6SlmvrgjPFJscJbmrgCilxGxPGVxlg5p9LNORgkotNk2yKsGHX0F0rnKJ4kHepTq7g+oGMdw== +"@abp/toastr@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-5.2.0.tgz#215af1bdc92a649ac54cb745489e00d9f0e5096b" + integrity sha512-wmoEOA6lOuTTbljsbTTfBGmJb6ur1pDi/VPuf7UF7FXoTcK/NIuzufblzTldsUleYXyIodLfg2s6qpOUGCDO8Q== dependencies: - "@abp/jquery" "~5.2.0-rc.2" + "@abp/jquery" "~5.2.0" toastr "^2.1.4" -"@abp/utils@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-5.2.0-rc.2.tgz#1280059ff3e948ae0827eaf06d916e5a90f8907b" - integrity sha512-/mo4dSXPkhCEbqyKunuURcF1cEzuJqRTPOGpjSrjDwOgymVSWp/AqqjJPBXuc4qrMfB4q9y+Iod5nslXp2cXeA== +"@abp/utils@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-5.2.0.tgz#3f5a7a2aab94f5c2a5e1f0f634517a4939909fa7" + integrity sha512-CBQzu8bAQQ9EUPCjjcXwLCDE/rPFGTtSRtGeMP1lrjavYEAxplXu58Fd8WeTl6d8/dqGA3nNQUnWbc2lGPlUYw== dependencies: just-compare "^1.3.0" -"@abp/virtual-file-explorer@^5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/virtual-file-explorer/-/virtual-file-explorer-5.2.0-rc.2.tgz#6227b0df3bc5b6e75a68403cb780cb23b8ec6663" - integrity sha512-Ds+aML3m7yx9tOxaW976SuLGJF65txwG56YD48rxRzY5fu1m3xrgdosht5SgtCscoTEnR2QlCDilIVOzpjfF6A== +"@abp/virtual-file-explorer@^5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/virtual-file-explorer/-/virtual-file-explorer-5.2.0.tgz#1135d4f4413fb672b55ae0b53351833f5ce3128c" + integrity sha512-RtBoKgl/T7GdJEgoMmDQD7J0k80ULHEgVsitmvWKY3NVhkLUFDq5BjblQ4kwjRjk5HgUoFbUyvK2ZP9npgnOUw== dependencies: - "@abp/clipboard" "~5.2.0-rc.2" - "@abp/prismjs" "~5.2.0-rc.2" + "@abp/clipboard" "~5.2.0" + "@abp/prismjs" "~5.2.0" "@fortawesome/fontawesome-free@^5.15.4": version "5.15.4" diff --git a/npm/lerna.json b/npm/lerna.json index 392d4b901f..cc0ea12c1d 100644 --- a/npm/lerna.json +++ b/npm/lerna.json @@ -1,5 +1,5 @@ { - "version": "5.2.0-rc.2", + "version": "5.2.0", "packages": [ "packs/*" ], diff --git a/npm/ng-packs/lerna.version.json b/npm/ng-packs/lerna.version.json index ef7f3f4d81..de45c407c7 100644 --- a/npm/ng-packs/lerna.version.json +++ b/npm/ng-packs/lerna.version.json @@ -1,5 +1,5 @@ { - "version": "5.2.0-rc.2", + "version": "5.2.0", "packages": [ "packages/*" ], diff --git a/npm/ng-packs/package.json b/npm/ng-packs/package.json index 3bd9399fa7..f6682c61bb 100644 --- a/npm/ng-packs/package.json +++ b/npm/ng-packs/package.json @@ -37,7 +37,7 @@ }, "private": true, "devDependencies": { - "@abp/utils": "~5.2.0-rc.2", + "@abp/utils": "~5.2.0", "@angular-devkit/build-angular": "13.1.2", "@angular-devkit/build-ng-packagr": "^0.1002.0", "@angular-devkit/schematics-cli": "~12.2.0", @@ -56,17 +56,17 @@ "@angular/platform-browser": "13.1.1", "@angular/platform-browser-dynamic": "13.1.1", "@angular/router": "13.1.1", - "@abp/ng.account": "~5.2.0-rc.2", - "@abp/ng.account.core": "~5.2.0-rc.2", - "@abp/ng.core": "~5.2.0-rc.2", - "@abp/ng.feature-management": "~5.2.0-rc.2", - "@abp/ng.identity": "~5.2.0-rc.2", - "@abp/ng.permission-management": "~5.2.0-rc.2", - "@abp/ng.schematics": "~5.2.0-rc.2", - "@abp/ng.setting-management": "~5.2.0-rc.2", - "@abp/ng.tenant-management": "~5.2.0-rc.2", - "@abp/ng.theme.basic": "~5.2.0-rc.2", - "@abp/ng.theme.shared": "~5.2.0-rc.2", + "@abp/ng.account": "~5.2.0", + "@abp/ng.account.core": "~5.2.0", + "@abp/ng.core": "~5.2.0", + "@abp/ng.feature-management": "~5.2.0", + "@abp/ng.identity": "~5.2.0", + "@abp/ng.permission-management": "~5.2.0", + "@abp/ng.schematics": "~5.2.0", + "@abp/ng.setting-management": "~5.2.0", + "@abp/ng.tenant-management": "~5.2.0", + "@abp/ng.theme.basic": "~5.2.0", + "@abp/ng.theme.shared": "~5.2.0", "@fortawesome/fontawesome-free": "^5.15.4", "@ng-bootstrap/ng-bootstrap": "~12.0.0-beta.4", "@ngneat/spectator": "^10.0.0", diff --git a/npm/ng-packs/packages/account-core/package.json b/npm/ng-packs/packages/account-core/package.json index 3cd49d443b..072077c0df 100644 --- a/npm/ng-packs/packages/account-core/package.json +++ b/npm/ng-packs/packages/account-core/package.json @@ -1,14 +1,14 @@ { "name": "@abp/ng.account.core", - "version": "5.2.0-rc.2", + "version": "5.2.0", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "peerDependencies": { - "@abp/ng.core": "~5.2.0-rc.2", - "@abp/ng.theme.shared": "~5.2.0-rc.2", + "@abp/ng.core": "~5.2.0", + "@abp/ng.theme.shared": "~5.2.0", "@angular/common": ">=12.0.0", "@angular/core": ">=12.0.0" }, diff --git a/npm/ng-packs/packages/account/package.json b/npm/ng-packs/packages/account/package.json index b377259781..0e28f2af29 100644 --- a/npm/ng-packs/packages/account/package.json +++ b/npm/ng-packs/packages/account/package.json @@ -1,14 +1,14 @@ { "name": "@abp/ng.account", - "version": "5.2.0-rc.2", + "version": "5.2.0", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "dependencies": { - "@abp/ng.account.core": "~5.2.0-rc.2", - "@abp/ng.theme.shared": "~5.2.0-rc.2", + "@abp/ng.account.core": "~5.2.0", + "@abp/ng.theme.shared": "~5.2.0", "tslib": "^2.0.0" }, "publishConfig": { diff --git a/npm/ng-packs/packages/components/package.json b/npm/ng-packs/packages/components/package.json index 5edbf7c3ed..a5d6ee7466 100644 --- a/npm/ng-packs/packages/components/package.json +++ b/npm/ng-packs/packages/components/package.json @@ -1,14 +1,14 @@ { "name": "@abp/ng.components", - "version": "5.2.0-rc.2", + "version": "5.2.0", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "peerDependencies": { - "@abp/ng.core": ">=5.2.0-rc.2", - "@abp/ng.theme.shared": ">=5.2.0-rc.2", + "@abp/ng.core": ">=5.2.0", + "@abp/ng.theme.shared": ">=5.2.0", "@ng-bootstrap/ng-bootstrap": ">=10.0.0" }, "dependencies": { diff --git a/npm/ng-packs/packages/core/package.json b/npm/ng-packs/packages/core/package.json index 0c9306b603..73dbcd8c7c 100644 --- a/npm/ng-packs/packages/core/package.json +++ b/npm/ng-packs/packages/core/package.json @@ -1,13 +1,13 @@ { "name": "@abp/ng.core", - "version": "5.2.0-rc.2", + "version": "5.2.0", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "dependencies": { - "@abp/utils": "~5.2.0-rc.2", + "@abp/utils": "~5.2.0", "angular-oauth2-oidc": "^13.0.1", "just-clone": "^3.2.1", "just-compare": "^1.4.0", diff --git a/npm/ng-packs/packages/feature-management/package.json b/npm/ng-packs/packages/feature-management/package.json index e13824fa66..2604d8409c 100644 --- a/npm/ng-packs/packages/feature-management/package.json +++ b/npm/ng-packs/packages/feature-management/package.json @@ -1,13 +1,13 @@ { "name": "@abp/ng.feature-management", - "version": "5.2.0-rc.2", + "version": "5.2.0", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "dependencies": { - "@abp/ng.theme.shared": "~5.2.0-rc.2", + "@abp/ng.theme.shared": "~5.2.0", "tslib": "^2.0.0" }, "publishConfig": { diff --git a/npm/ng-packs/packages/identity/package.json b/npm/ng-packs/packages/identity/package.json index 7d2ef48ce9..0958e84609 100644 --- a/npm/ng-packs/packages/identity/package.json +++ b/npm/ng-packs/packages/identity/package.json @@ -1,14 +1,14 @@ { "name": "@abp/ng.identity", - "version": "5.2.0-rc.2", + "version": "5.2.0", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "dependencies": { - "@abp/ng.permission-management": "~5.2.0-rc.2", - "@abp/ng.theme.shared": "~5.2.0-rc.2", + "@abp/ng.permission-management": "~5.2.0", + "@abp/ng.theme.shared": "~5.2.0", "tslib": "^2.0.0" }, "publishConfig": { diff --git a/npm/ng-packs/packages/permission-management/package.json b/npm/ng-packs/packages/permission-management/package.json index a5e0034a8f..b16e381fbd 100644 --- a/npm/ng-packs/packages/permission-management/package.json +++ b/npm/ng-packs/packages/permission-management/package.json @@ -1,13 +1,13 @@ { "name": "@abp/ng.permission-management", - "version": "5.2.0-rc.2", + "version": "5.2.0", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "dependencies": { - "@abp/ng.theme.shared": "~5.2.0-rc.2", + "@abp/ng.theme.shared": "~5.2.0", "tslib": "^2.0.0" }, "publishConfig": { diff --git a/npm/ng-packs/packages/schematics/package.json b/npm/ng-packs/packages/schematics/package.json index c04061e6c1..a0d648c651 100644 --- a/npm/ng-packs/packages/schematics/package.json +++ b/npm/ng-packs/packages/schematics/package.json @@ -1,6 +1,6 @@ { "name": "@abp/ng.schematics", - "version": "5.2.0-rc.2", + "version": "5.2.0", "description": "Schematics that works with ABP Backend", "keywords": [ "schematics" diff --git a/npm/ng-packs/packages/setting-management/package.json b/npm/ng-packs/packages/setting-management/package.json index 0dac9084f6..005bf4b79e 100644 --- a/npm/ng-packs/packages/setting-management/package.json +++ b/npm/ng-packs/packages/setting-management/package.json @@ -1,14 +1,14 @@ { "name": "@abp/ng.setting-management", - "version": "5.2.0-rc.2", + "version": "5.2.0", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "dependencies": { - "@abp/ng.components": "~5.2.0-rc.2", - "@abp/ng.theme.shared": "~5.2.0-rc.2", + "@abp/ng.components": "~5.2.0", + "@abp/ng.theme.shared": "~5.2.0", "tslib": "^2.0.0" }, "publishConfig": { diff --git a/npm/ng-packs/packages/tenant-management/package.json b/npm/ng-packs/packages/tenant-management/package.json index 9d6141911c..f65fc1f04b 100644 --- a/npm/ng-packs/packages/tenant-management/package.json +++ b/npm/ng-packs/packages/tenant-management/package.json @@ -1,14 +1,14 @@ { "name": "@abp/ng.tenant-management", - "version": "5.2.0-rc.2", + "version": "5.2.0", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "dependencies": { - "@abp/ng.feature-management": "~5.2.0-rc.2", - "@abp/ng.theme.shared": "~5.2.0-rc.2", + "@abp/ng.feature-management": "~5.2.0", + "@abp/ng.theme.shared": "~5.2.0", "tslib": "^2.0.0" }, "publishConfig": { diff --git a/npm/ng-packs/packages/theme-basic/package.json b/npm/ng-packs/packages/theme-basic/package.json index 7322b9635b..d04eb5a901 100644 --- a/npm/ng-packs/packages/theme-basic/package.json +++ b/npm/ng-packs/packages/theme-basic/package.json @@ -1,14 +1,14 @@ { "name": "@abp/ng.theme.basic", - "version": "5.2.0-rc.2", + "version": "5.2.0", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "dependencies": { - "@abp/ng.account.core": "~5.2.0-rc.2", - "@abp/ng.theme.shared": "~5.2.0-rc.2", + "@abp/ng.account.core": "~5.2.0", + "@abp/ng.theme.shared": "~5.2.0", "tslib": "^2.0.0" }, "publishConfig": { diff --git a/npm/ng-packs/packages/theme-shared/package.json b/npm/ng-packs/packages/theme-shared/package.json index 4c6a2b605e..949a72c31e 100644 --- a/npm/ng-packs/packages/theme-shared/package.json +++ b/npm/ng-packs/packages/theme-shared/package.json @@ -1,13 +1,13 @@ { "name": "@abp/ng.theme.shared", - "version": "5.2.0-rc.2", + "version": "5.2.0", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "dependencies": { - "@abp/ng.core": "~5.2.0-rc.2", + "@abp/ng.core": "~5.2.0", "@fortawesome/fontawesome-free": "^5.15.4", "@ng-bootstrap/ng-bootstrap": "~12.0.0-beta.4", "@ngx-validate/core": "^0.1.1", diff --git a/npm/ng-packs/yarn.lock b/npm/ng-packs/yarn.lock index c794af7030..525a2a5f68 100644 --- a/npm/ng-packs/yarn.lock +++ b/npm/ng-packs/yarn.lock @@ -2,72 +2,72 @@ # yarn lockfile v1 -"@abp/ng.account.core@~5.2.0-rc.1": - version "5.2.0-rc.1" - resolved "https://registry.yarnpkg.com/@abp/ng.account.core/-/ng.account.core-5.2.0-rc.1.tgz#0a0a9f2f7fe096afe3adb86516f14898b62b7282" - integrity sha512-PUN/HLm92BpeY0BrCzpO8X2NXbdCVEi8xtd53D/65P27U7F/kLfFDU/ai94jiU9wCVRgR1c7r6lRGv043zDWgQ== +"@abp/ng.account.core@~5.2.0-rc.2": + version "5.2.0-rc.2" + resolved "https://registry.yarnpkg.com/@abp/ng.account.core/-/ng.account.core-5.2.0-rc.2.tgz#d9d0ac90d3811e5c282c429f89007976fce22c7f" + integrity sha512-Zg0p6gjEH3B0NiFLRtmlywtcsvLs04F0zvE8pPFnnpi+pE3zgAzvjvNEJlJrLAZc/eLtPJAjMb6Tj4PfzdxcNg== dependencies: tslib "^2.0.0" -"@abp/ng.account@~5.2.0-rc.1": - version "5.2.0-rc.1" - resolved "https://registry.yarnpkg.com/@abp/ng.account/-/ng.account-5.2.0-rc.1.tgz#34d8cc824ad108a77ccb9c7d8fe98c7d8e2d3563" - integrity sha512-m/2s+M7yGSbG6bbH6jXaHq5+jeVNEHBxP20EgaWhw4MN0a2scwXAuWgo3sgNcs0ia0DrZSB0Y0VAr7MbzgKJKQ== +"@abp/ng.account@~5.2.0-rc.2": + version "5.2.0-rc.2" + resolved "https://registry.yarnpkg.com/@abp/ng.account/-/ng.account-5.2.0-rc.2.tgz#d424fd3adaed674a8504dc082b71e6b1582d8ff1" + integrity sha512-+AnTENbpTUUim4n6Osy6krBccv42WzmByg/po+07JexNDE0d4YS2ldsX08nXBALs4xSgAjqQ36ecFSRBP7nhPA== dependencies: - "@abp/ng.account.core" "~5.2.0-rc.1" - "@abp/ng.theme.shared" "~5.2.0-rc.1" + "@abp/ng.account.core" "~5.2.0-rc.2" + "@abp/ng.theme.shared" "~5.2.0-rc.2" tslib "^2.0.0" -"@abp/ng.components@~5.2.0-rc.1": - version "5.2.0-rc.1" - resolved "https://registry.yarnpkg.com/@abp/ng.components/-/ng.components-5.2.0-rc.1.tgz#75ad5a0ed70e4f0a25cca0ce3c02afb5c37d0728" - integrity sha512-KwXOxG3OwHIo6okpIGPnXfjI9qLo4vOSxXTWO9Qr5RXlamxapgselQrMWn44wR6sEvUwxX1quWAS0dHUaTdKgQ== +"@abp/ng.components@~5.2.0-rc.2": + version "5.2.0-rc.2" + resolved "https://registry.yarnpkg.com/@abp/ng.components/-/ng.components-5.2.0-rc.2.tgz#d7ccdaef5198daac4e65eea130e73e0f2262d1ff" + integrity sha512-DaP7vEHctffnatV2yQM7l0ya0pnPnwxEcqIWj3cUynOokop8GpLZYt+8tyDaBWN60QBcAY/88f+FqnOZXPesYw== dependencies: chart.js "^3.5.1" ng-zorro-antd "^13.0.0" tslib "^2.0.0" -"@abp/ng.core@~5.2.0-rc.1": - version "5.2.0-rc.1" - resolved "https://registry.yarnpkg.com/@abp/ng.core/-/ng.core-5.2.0-rc.1.tgz#9237a056ea5a5cef281cb5ed175947da019dd79d" - integrity sha512-2gaof99Yb9aeFGL51+Nj5zYMcblJ5vhGN/tF9dR2tdmP11Jh1eQhFiJRO3uqfh8XmHRPAvOvOMDQIAvoMn2XGw== +"@abp/ng.core@~5.2.0-rc.2": + version "5.2.0-rc.2" + resolved "https://registry.yarnpkg.com/@abp/ng.core/-/ng.core-5.2.0-rc.2.tgz#782bcfe5b112ab00c995994efcf62a67171bd570" + integrity sha512-6xENUcD71y90WXfOwc8M92RruWMgVsHzntC1kRxq5JN1VmjLHACUmkwMvXct3V7PrYe0ntCDnt2/gjYqmyJ5sw== dependencies: - "@abp/utils" "~5.2.0-rc.1" + "@abp/utils" "~5.2.0-rc.2" angular-oauth2-oidc "^13.0.1" just-clone "^3.2.1" just-compare "^1.4.0" ts-toolbelt "6.15.4" tslib "^2.0.0" -"@abp/ng.feature-management@~5.2.0-rc.1": - version "5.2.0-rc.1" - resolved "https://registry.yarnpkg.com/@abp/ng.feature-management/-/ng.feature-management-5.2.0-rc.1.tgz#11d3cbe000779e97cce4931470dcf9db8026740e" - integrity sha512-ePUgemgTzidB+N165z1TgeS9cFkuBhOxfrcrGvOEIpwPhcgxXpOqf6WOzph7vCDVHFVtiroAFvXFEW/A9na/pw== +"@abp/ng.feature-management@~5.2.0-rc.2": + version "5.2.0-rc.2" + resolved "https://registry.yarnpkg.com/@abp/ng.feature-management/-/ng.feature-management-5.2.0-rc.2.tgz#d680d92f9f73941fea38beae882f237e73509ee9" + integrity sha512-h4rNOD+DXcc6uUFz3uLA4uzxF7EyXKaDbA1ZAzdkP5HM9zUriOnfWpJnIorTCAc+GLFws2HCz8LB71jp0ETjKw== dependencies: - "@abp/ng.theme.shared" "~5.2.0-rc.1" + "@abp/ng.theme.shared" "~5.2.0-rc.2" tslib "^2.0.0" -"@abp/ng.identity@~5.2.0-rc.1": - version "5.2.0-rc.1" - resolved "https://registry.yarnpkg.com/@abp/ng.identity/-/ng.identity-5.2.0-rc.1.tgz#8a05f1e2ad79fb680ecf55827223eaf287b53651" - integrity sha512-ULbu89/krOj6GY59vu9wBO+6UaD67gnt4evIkQv6lz7PwtwzDHGY0ChMNim3XrWHHSx/iwXtHQAxhT35krdiRQ== +"@abp/ng.identity@~5.2.0-rc.2": + version "5.2.0-rc.2" + resolved "https://registry.yarnpkg.com/@abp/ng.identity/-/ng.identity-5.2.0-rc.2.tgz#8a46bdcbc9ae5d34d38b5e1435cde79b63046865" + integrity sha512-xLQJG/P4Rv156H6UsASgPKHIurDMjpvPDUvMpNcCgGGfOMglIvFxRy5c5O8bKDJ0bOk8L3vp3aAnXchVXzeP9g== dependencies: - "@abp/ng.permission-management" "~5.2.0-rc.1" - "@abp/ng.theme.shared" "~5.2.0-rc.1" + "@abp/ng.permission-management" "~5.2.0-rc.2" + "@abp/ng.theme.shared" "~5.2.0-rc.2" tslib "^2.0.0" -"@abp/ng.permission-management@~5.2.0-rc.1": - version "5.2.0-rc.1" - resolved "https://registry.yarnpkg.com/@abp/ng.permission-management/-/ng.permission-management-5.2.0-rc.1.tgz#5c0b21b61e8fb178197937a07ec0dccf46462f8c" - integrity sha512-zYrlssLtcneF8qgnOLu/J+5Ks4IaNe3aKvVQh9H4TgoHtcZZBiOzJCs1BAr6m3+VDyKfLJQn5BSzpKTxHnNYsA== +"@abp/ng.permission-management@~5.2.0-rc.2": + version "5.2.0-rc.2" + resolved "https://registry.yarnpkg.com/@abp/ng.permission-management/-/ng.permission-management-5.2.0-rc.2.tgz#71288a703606fde9d87925cdb17bde43ebefaad4" + integrity sha512-Oya9Vm86DDJQPe6U3yfAUzMW/rOnFxkpRrOB0iQ++CBJnixGO/VpdRfUzMzR+kXYz9l5EIVlGUxrUf4j9EBdlg== dependencies: - "@abp/ng.theme.shared" "~5.2.0-rc.1" + "@abp/ng.theme.shared" "~5.2.0-rc.2" tslib "^2.0.0" -"@abp/ng.schematics@~5.2.0-rc.1": - version "5.2.0-rc.1" - resolved "https://registry.yarnpkg.com/@abp/ng.schematics/-/ng.schematics-5.2.0-rc.1.tgz#fcd8a34d6edf2de75acdb0c465927aea4a31f04e" - integrity sha512-cln/WuiWw5xNNjh1yww4t05M2KvOPgRnyHbUHLFolVZL4BseecuhXT6mOlyYDniHEIIxWpHse1hqXfoBl8b66w== +"@abp/ng.schematics@~5.2.0-rc.2": + version "5.2.0-rc.2" + resolved "https://registry.yarnpkg.com/@abp/ng.schematics/-/ng.schematics-5.2.0-rc.2.tgz#184599787e0b4c070945ffaa29ef4ce1fb5021fa" + integrity sha512-3GXPOfNol8rkPn5YV58bWpVdEp7XN2ts0j5zHRVX/xpGKxb0A4iACZYWKHpKyJHfbihYsIaQAbFT/SO563oGxg== dependencies: "@angular-devkit/core" "~11.0.2" "@angular-devkit/schematics" "~11.0.2" @@ -76,39 +76,39 @@ should-quote "^1.0.0" typescript "~3.9.2" -"@abp/ng.setting-management@~5.2.0-rc.1": - version "5.2.0-rc.1" - resolved "https://registry.yarnpkg.com/@abp/ng.setting-management/-/ng.setting-management-5.2.0-rc.1.tgz#7047dd90eaeae298b8d01bcc2fe350652e8010b0" - integrity sha512-Tn7zDvm23Pxdxf73xIxp57d63a9jNWb/Em2YapZEcRa86UqLzJsdWh59mCcku5/8CTIOC6q6QswjoF2ex/BfzA== +"@abp/ng.setting-management@~5.2.0-rc.2": + version "5.2.0-rc.2" + resolved "https://registry.yarnpkg.com/@abp/ng.setting-management/-/ng.setting-management-5.2.0-rc.2.tgz#eb78c571ef8ee684adc3900ae6f929cbeb3fbbdd" + integrity sha512-fZb93nwCLCYzFsPspiCGWs5UdcB3rdj+b1ooRt7LVVawYPa/Oz/xyRRQA1HNQN+8Xwr9JNT5NtgFnBhU6zvwZQ== dependencies: - "@abp/ng.components" "~5.2.0-rc.1" - "@abp/ng.theme.shared" "~5.2.0-rc.1" + "@abp/ng.components" "~5.2.0-rc.2" + "@abp/ng.theme.shared" "~5.2.0-rc.2" tslib "^2.0.0" -"@abp/ng.tenant-management@~5.2.0-rc.1": - version "5.2.0-rc.1" - resolved "https://registry.yarnpkg.com/@abp/ng.tenant-management/-/ng.tenant-management-5.2.0-rc.1.tgz#0a1c66beb95504a8977ab7c5c89df3ebaae551c8" - integrity sha512-hQwWcTjtUan6k9oML2XOUprVx5nNzFulykB3KWcAPRbGQuo1GzWyAosmcV6y/koQxq/e2WYnZGYTNiRhmnmXYQ== +"@abp/ng.tenant-management@~5.2.0-rc.2": + version "5.2.0-rc.2" + resolved "https://registry.yarnpkg.com/@abp/ng.tenant-management/-/ng.tenant-management-5.2.0-rc.2.tgz#9974e80025a62af97dbf8378a34977b8048207d3" + integrity sha512-0LInV5TMxKBEnXkulgpf/WCQmE0Iv8WS+yOhVTWAuo8tcZr6CTe4acU+g1q3qj/DWpseB+hIz7rMjEwPeg59Iw== dependencies: - "@abp/ng.feature-management" "~5.2.0-rc.1" - "@abp/ng.theme.shared" "~5.2.0-rc.1" + "@abp/ng.feature-management" "~5.2.0-rc.2" + "@abp/ng.theme.shared" "~5.2.0-rc.2" tslib "^2.0.0" -"@abp/ng.theme.basic@~5.2.0-rc.1": - version "5.2.0-rc.1" - resolved "https://registry.yarnpkg.com/@abp/ng.theme.basic/-/ng.theme.basic-5.2.0-rc.1.tgz#501f77aa96112338c0ba6f7474468899e85de54a" - integrity sha512-JwGYQ+8KP5fcFQDh8dFpwYiBrWlMrm42VRjBmsM5CUmjZRPvqTRLZGgwD1FZ4+U9zj3zLV4OH0d8e8CljK0zLg== +"@abp/ng.theme.basic@~5.2.0-rc.2": + version "5.2.0-rc.2" + resolved "https://registry.yarnpkg.com/@abp/ng.theme.basic/-/ng.theme.basic-5.2.0-rc.2.tgz#9da43eafb8aecc557892979e60a21f005afdca26" + integrity sha512-lwT4kjS9jDZjg9FNYN32I46uU+37thWLqDKjMCncgyOpAj98uvQTzt/ZAo1hNpO1DHFDYmI72dUKiKzMYiPhYQ== dependencies: - "@abp/ng.account.core" "~5.2.0-rc.1" - "@abp/ng.theme.shared" "~5.2.0-rc.1" + "@abp/ng.account.core" "~5.2.0-rc.2" + "@abp/ng.theme.shared" "~5.2.0-rc.2" tslib "^2.0.0" -"@abp/ng.theme.shared@~5.2.0-rc.1": - version "5.2.0-rc.1" - resolved "https://registry.yarnpkg.com/@abp/ng.theme.shared/-/ng.theme.shared-5.2.0-rc.1.tgz#8eaa4b057d09bc38acde5b90224418613e6097cb" - integrity sha512-IDGxeFMWEinNayCagka/la0iznYAQ8W065jLAp0fAyr3lcNUEcN/Ogs4KDSIaN9apnsP/zEOUlv/IDSNjTnJqQ== +"@abp/ng.theme.shared@~5.2.0-rc.2": + version "5.2.0-rc.2" + resolved "https://registry.yarnpkg.com/@abp/ng.theme.shared/-/ng.theme.shared-5.2.0-rc.2.tgz#ab103b1c76a89e5576fe940b3f9ea078d22f3fb5" + integrity sha512-dRPr47e21vS7VfXuR+QaLfDPYP1AtwokqUq1agihc7ZqB7/cExfyVRfUSwhgGGT0tzekJAqz+EjJWcA1V6kVyw== dependencies: - "@abp/ng.core" "~5.2.0-rc.1" + "@abp/ng.core" "~5.2.0-rc.2" "@fortawesome/fontawesome-free" "^5.15.4" "@ng-bootstrap/ng-bootstrap" "~12.0.0-beta.4" "@ngx-validate/core" "^0.1.1" @@ -117,10 +117,10 @@ bootstrap "^5.1.1" tslib "^2.0.0" -"@abp/utils@~5.2.0-rc.1": - version "5.2.0-rc.1" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-5.2.0-rc.1.tgz#9ed019f8f84dd2d10f9d957ddbad6321c89b1395" - integrity sha512-2fo6FsLok0a0LjWBrXOzq0GsdPm69TGoOytKcW5V0DaAXM7KcYRnXlrQb+58IIq+xX2S9jgF9ZxVrXNh41C7Cg== +"@abp/utils@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-5.2.0.tgz#3f5a7a2aab94f5c2a5e1f0f634517a4939909fa7" + integrity sha512-CBQzu8bAQQ9EUPCjjcXwLCDE/rPFGTtSRtGeMP1lrjavYEAxplXu58Fd8WeTl6d8/dqGA3nNQUnWbc2lGPlUYw== dependencies: just-compare "^1.3.0" diff --git a/npm/packs/anchor-js/package.json b/npm/packs/anchor-js/package.json index c1475b4328..b4afd214c3 100644 --- a/npm/packs/anchor-js/package.json +++ b/npm/packs/anchor-js/package.json @@ -1,11 +1,11 @@ { - "version": "5.2.0-rc.2", + "version": "5.2.0", "name": "@abp/anchor-js", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~5.2.0-rc.2", + "@abp/core": "~5.2.0", "anchor-js": "^4.3.1" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/aspnetcore.components.server.basictheme/package.json b/npm/packs/aspnetcore.components.server.basictheme/package.json index 6241eeca01..5a00f468cf 100644 --- a/npm/packs/aspnetcore.components.server.basictheme/package.json +++ b/npm/packs/aspnetcore.components.server.basictheme/package.json @@ -1,11 +1,11 @@ { - "version": "5.2.0-rc.2", + "version": "5.2.0", "name": "@abp/aspnetcore.components.server.basictheme", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/aspnetcore.components.server.theming": "~5.2.0-rc.2" + "@abp/aspnetcore.components.server.theming": "~5.2.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" } diff --git a/npm/packs/aspnetcore.components.server.theming/package.json b/npm/packs/aspnetcore.components.server.theming/package.json index 6d5a29fa86..c31d4f4b3a 100644 --- a/npm/packs/aspnetcore.components.server.theming/package.json +++ b/npm/packs/aspnetcore.components.server.theming/package.json @@ -1,12 +1,12 @@ { - "version": "5.2.0-rc.2", + "version": "5.2.0", "name": "@abp/aspnetcore.components.server.theming", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/bootstrap": "~5.2.0-rc.2", - "@abp/font-awesome": "~5.2.0-rc.2" + "@abp/bootstrap": "~5.2.0", + "@abp/font-awesome": "~5.2.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" } diff --git a/npm/packs/aspnetcore.mvc.ui.theme.basic/package.json b/npm/packs/aspnetcore.mvc.ui.theme.basic/package.json index 2d7c0baf37..0cf225265d 100644 --- a/npm/packs/aspnetcore.mvc.ui.theme.basic/package.json +++ b/npm/packs/aspnetcore.mvc.ui.theme.basic/package.json @@ -1,5 +1,5 @@ { - "version": "5.2.0-rc.2", + "version": "5.2.0", "name": "@abp/aspnetcore.mvc.ui.theme.basic", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.shared": "~5.2.0-rc.2" + "@abp/aspnetcore.mvc.ui.theme.shared": "~5.2.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" } diff --git a/npm/packs/aspnetcore.mvc.ui.theme.shared/package.json b/npm/packs/aspnetcore.mvc.ui.theme.shared/package.json index 3189229a26..73754f41fd 100644 --- a/npm/packs/aspnetcore.mvc.ui.theme.shared/package.json +++ b/npm/packs/aspnetcore.mvc.ui.theme.shared/package.json @@ -1,5 +1,5 @@ { - "version": "5.2.0-rc.2", + "version": "5.2.0", "name": "@abp/aspnetcore.mvc.ui.theme.shared", "repository": { "type": "git", @@ -10,20 +10,20 @@ "access": "public" }, "dependencies": { - "@abp/aspnetcore.mvc.ui": "~5.2.0-rc.2", - "@abp/bootstrap": "~5.2.0-rc.2", - "@abp/bootstrap-datepicker": "~5.2.0-rc.2", - "@abp/datatables.net-bs5": "~5.2.0-rc.2", - "@abp/font-awesome": "~5.2.0-rc.2", - "@abp/jquery-form": "~5.2.0-rc.2", - "@abp/jquery-validation-unobtrusive": "~5.2.0-rc.2", - "@abp/lodash": "~5.2.0-rc.2", - "@abp/luxon": "~5.2.0-rc.2", - "@abp/malihu-custom-scrollbar-plugin": "~5.2.0-rc.2", - "@abp/select2": "~5.2.0-rc.2", - "@abp/sweetalert2": "~5.2.0-rc.2", - "@abp/timeago": "~5.2.0-rc.2", - "@abp/toastr": "~5.2.0-rc.2" + "@abp/aspnetcore.mvc.ui": "~5.2.0", + "@abp/bootstrap": "~5.2.0", + "@abp/bootstrap-datepicker": "~5.2.0", + "@abp/datatables.net-bs5": "~5.2.0", + "@abp/font-awesome": "~5.2.0", + "@abp/jquery-form": "~5.2.0", + "@abp/jquery-validation-unobtrusive": "~5.2.0", + "@abp/lodash": "~5.2.0", + "@abp/luxon": "~5.2.0", + "@abp/malihu-custom-scrollbar-plugin": "~5.2.0", + "@abp/select2": "~5.2.0", + "@abp/sweetalert2": "~5.2.0", + "@abp/timeago": "~5.2.0", + "@abp/toastr": "~5.2.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" } diff --git a/npm/packs/aspnetcore.mvc.ui/package-lock.json b/npm/packs/aspnetcore.mvc.ui/package-lock.json index dd1337a0fa..f144bdcd42 100644 --- a/npm/packs/aspnetcore.mvc.ui/package-lock.json +++ b/npm/packs/aspnetcore.mvc.ui/package-lock.json @@ -1,6 +1,6 @@ { "name": "@abp/aspnetcore.mvc.ui", - "version": "5.2.0-rc.2", + "version": "5.2.0", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/npm/packs/aspnetcore.mvc.ui/package.json b/npm/packs/aspnetcore.mvc.ui/package.json index f0119e8436..d9bb8f7512 100644 --- a/npm/packs/aspnetcore.mvc.ui/package.json +++ b/npm/packs/aspnetcore.mvc.ui/package.json @@ -1,5 +1,5 @@ { - "version": "5.2.0-rc.2", + "version": "5.2.0", "name": "@abp/aspnetcore.mvc.ui", "repository": { "type": "git", diff --git a/npm/packs/blogging/package.json b/npm/packs/blogging/package.json index 229b5fb3f3..7ed7d2b3af 100644 --- a/npm/packs/blogging/package.json +++ b/npm/packs/blogging/package.json @@ -1,14 +1,14 @@ { - "version": "5.2.0-rc.2", + "version": "5.2.0", "name": "@abp/blogging", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.shared": "~5.2.0-rc.2", - "@abp/owl.carousel": "~5.2.0-rc.2", - "@abp/prismjs": "~5.2.0-rc.2", - "@abp/tui-editor": "~5.2.0-rc.2" + "@abp/aspnetcore.mvc.ui.theme.shared": "~5.2.0", + "@abp/owl.carousel": "~5.2.0", + "@abp/prismjs": "~5.2.0", + "@abp/tui-editor": "~5.2.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" } diff --git a/npm/packs/bootstrap-datepicker/package.json b/npm/packs/bootstrap-datepicker/package.json index 8073b93e54..51d9df5208 100644 --- a/npm/packs/bootstrap-datepicker/package.json +++ b/npm/packs/bootstrap-datepicker/package.json @@ -1,5 +1,5 @@ { - "version": "5.2.0-rc.2", + "version": "5.2.0", "name": "@abp/bootstrap-datepicker", "repository": { "type": "git", diff --git a/npm/packs/bootstrap/package.json b/npm/packs/bootstrap/package.json index e9c4761b3a..584c8a8726 100644 --- a/npm/packs/bootstrap/package.json +++ b/npm/packs/bootstrap/package.json @@ -1,5 +1,5 @@ { - "version": "5.2.0-rc.2", + "version": "5.2.0", "name": "@abp/bootstrap", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/core": "~5.2.0-rc.2", + "@abp/core": "~5.2.0", "bootstrap": "^5.1.3" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/chart.js/package.json b/npm/packs/chart.js/package.json index 3432e8c09a..6fad7e299d 100644 --- a/npm/packs/chart.js/package.json +++ b/npm/packs/chart.js/package.json @@ -1,5 +1,5 @@ { - "version": "5.2.0-rc.2", + "version": "5.2.0", "name": "@abp/chart.js", "publishConfig": { "access": "public" diff --git a/npm/packs/clipboard/package.json b/npm/packs/clipboard/package.json index f5fbb6219b..084700b394 100644 --- a/npm/packs/clipboard/package.json +++ b/npm/packs/clipboard/package.json @@ -1,11 +1,11 @@ { - "version": "5.2.0-rc.2", + "version": "5.2.0", "name": "@abp/clipboard", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~5.2.0-rc.2", + "@abp/core": "~5.2.0", "clipboard": "^2.0.8" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/cms-kit.admin/package.json b/npm/packs/cms-kit.admin/package.json index 95233c7c82..833ee487b3 100644 --- a/npm/packs/cms-kit.admin/package.json +++ b/npm/packs/cms-kit.admin/package.json @@ -1,14 +1,14 @@ { - "version": "5.2.0-rc.2", + "version": "5.2.0", "name": "@abp/cms-kit.admin", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/jstree": "~5.2.0-rc.2", - "@abp/slugify": "~5.2.0-rc.2", - "@abp/tui-editor": "~5.2.0-rc.2", - "@abp/uppy": "~5.2.0-rc.2" + "@abp/jstree": "~5.2.0", + "@abp/slugify": "~5.2.0", + "@abp/tui-editor": "~5.2.0", + "@abp/uppy": "~5.2.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" } diff --git a/npm/packs/cms-kit.public/package.json b/npm/packs/cms-kit.public/package.json index 0e0587fc00..0743a17365 100644 --- a/npm/packs/cms-kit.public/package.json +++ b/npm/packs/cms-kit.public/package.json @@ -1,12 +1,12 @@ { - "version": "5.2.0-rc.2", + "version": "5.2.0", "name": "@abp/cms-kit.public", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/highlight.js": "~5.2.0-rc.2", - "@abp/star-rating-svg": "~5.2.0-rc.2" + "@abp/highlight.js": "~5.2.0", + "@abp/star-rating-svg": "~5.2.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" } diff --git a/npm/packs/cms-kit/package.json b/npm/packs/cms-kit/package.json index 0506e7b838..9692b685a3 100644 --- a/npm/packs/cms-kit/package.json +++ b/npm/packs/cms-kit/package.json @@ -1,12 +1,12 @@ { - "version": "5.2.0-rc.2", + "version": "5.2.0", "name": "@abp/cms-kit", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/cms-kit.admin": "~5.2.0-rc.2", - "@abp/cms-kit.public": "~5.2.0-rc.2" + "@abp/cms-kit.admin": "~5.2.0", + "@abp/cms-kit.public": "~5.2.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" } diff --git a/npm/packs/codemirror/package.json b/npm/packs/codemirror/package.json index 4d78e45d0d..83210fa022 100644 --- a/npm/packs/codemirror/package.json +++ b/npm/packs/codemirror/package.json @@ -1,11 +1,11 @@ { - "version": "5.2.0-rc.2", + "version": "5.2.0", "name": "@abp/codemirror", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~5.2.0-rc.2", + "@abp/core": "~5.2.0", "codemirror": "^5.65.1" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/core/package.json b/npm/packs/core/package.json index cf3d389bee..a145edea91 100644 --- a/npm/packs/core/package.json +++ b/npm/packs/core/package.json @@ -1,5 +1,5 @@ { - "version": "5.2.0-rc.2", + "version": "5.2.0", "name": "@abp/core", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/utils": "~5.2.0-rc.2" + "@abp/utils": "~5.2.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" } diff --git a/npm/packs/cropperjs/package.json b/npm/packs/cropperjs/package.json index 7dba4c3105..e1e7206160 100644 --- a/npm/packs/cropperjs/package.json +++ b/npm/packs/cropperjs/package.json @@ -1,11 +1,11 @@ { - "version": "5.2.0-rc.2", + "version": "5.2.0", "name": "@abp/cropperjs", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~5.2.0-rc.2", + "@abp/core": "~5.2.0", "cropperjs": "^1.5.12" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/datatables.net-bs4/package.json b/npm/packs/datatables.net-bs4/package.json index b78852d4b0..f2432d1966 100644 --- a/npm/packs/datatables.net-bs4/package.json +++ b/npm/packs/datatables.net-bs4/package.json @@ -1,5 +1,5 @@ { - "version": "5.2.0-rc.2", + "version": "5.2.0", "name": "@abp/datatables.net-bs4", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/datatables.net": "~5.2.0-rc.2", + "@abp/datatables.net": "~5.2.0", "datatables.net-bs4": "^1.11.4" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/datatables.net-bs5/package.json b/npm/packs/datatables.net-bs5/package.json index ac1398c4aa..7f2c7d440a 100644 --- a/npm/packs/datatables.net-bs5/package.json +++ b/npm/packs/datatables.net-bs5/package.json @@ -1,11 +1,11 @@ { - "version": "5.2.0-rc.2", + "version": "5.2.0", "name": "@abp/datatables.net-bs5", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/datatables.net": "~5.2.0-rc.2", + "@abp/datatables.net": "~5.2.0", "datatables.net-bs5": "^1.11.4" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/datatables.net/package.json b/npm/packs/datatables.net/package.json index d2931a9615..aafff8b6c9 100644 --- a/npm/packs/datatables.net/package.json +++ b/npm/packs/datatables.net/package.json @@ -1,5 +1,5 @@ { - "version": "5.2.0-rc.2", + "version": "5.2.0", "name": "@abp/datatables.net", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/jquery": "~5.2.0-rc.2", + "@abp/jquery": "~5.2.0", "datatables.net": "^1.11.4" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/docs/package.json b/npm/packs/docs/package.json index 23c3019cf8..cbbfabbb38 100644 --- a/npm/packs/docs/package.json +++ b/npm/packs/docs/package.json @@ -1,15 +1,15 @@ { - "version": "5.2.0-rc.2", + "version": "5.2.0", "name": "@abp/docs", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/anchor-js": "~5.2.0-rc.2", - "@abp/clipboard": "~5.2.0-rc.2", - "@abp/malihu-custom-scrollbar-plugin": "~5.2.0-rc.2", - "@abp/popper.js": "~5.2.0-rc.2", - "@abp/prismjs": "~5.2.0-rc.2" + "@abp/anchor-js": "~5.2.0", + "@abp/clipboard": "~5.2.0", + "@abp/malihu-custom-scrollbar-plugin": "~5.2.0", + "@abp/popper.js": "~5.2.0", + "@abp/prismjs": "~5.2.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" } diff --git a/npm/packs/flag-icon-css/package.json b/npm/packs/flag-icon-css/package.json index e17d416a4e..7a6f8e4e39 100644 --- a/npm/packs/flag-icon-css/package.json +++ b/npm/packs/flag-icon-css/package.json @@ -1,5 +1,5 @@ { - "version": "5.2.0-rc.2", + "version": "5.2.0", "name": "@abp/flag-icon-css", "publishConfig": { "access": "public" diff --git a/npm/packs/font-awesome/package.json b/npm/packs/font-awesome/package.json index 07f848b968..f50fcfdbcf 100644 --- a/npm/packs/font-awesome/package.json +++ b/npm/packs/font-awesome/package.json @@ -1,5 +1,5 @@ { - "version": "5.2.0-rc.2", + "version": "5.2.0", "name": "@abp/font-awesome", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/core": "~5.2.0-rc.2", + "@abp/core": "~5.2.0", "@fortawesome/fontawesome-free": "^5.15.4" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/highlight.js/package.json b/npm/packs/highlight.js/package.json index 0066d7999b..c1444bfd86 100644 --- a/npm/packs/highlight.js/package.json +++ b/npm/packs/highlight.js/package.json @@ -1,11 +1,11 @@ { - "version": "5.2.0-rc.2", + "version": "5.2.0", "name": "@abp/highlight.js", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~5.2.0-rc.2", + "@abp/core": "~5.2.0", "@highlightjs/cdn-assets": "~11.4.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/jquery-form/package.json b/npm/packs/jquery-form/package.json index 395195f2af..b601b41a1c 100644 --- a/npm/packs/jquery-form/package.json +++ b/npm/packs/jquery-form/package.json @@ -1,5 +1,5 @@ { - "version": "5.2.0-rc.2", + "version": "5.2.0", "name": "@abp/jquery-form", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/jquery": "~5.2.0-rc.2", + "@abp/jquery": "~5.2.0", "jquery-form": "^4.3.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/jquery-validation-unobtrusive/package.json b/npm/packs/jquery-validation-unobtrusive/package.json index 2a1840890a..4b243f93b9 100644 --- a/npm/packs/jquery-validation-unobtrusive/package.json +++ b/npm/packs/jquery-validation-unobtrusive/package.json @@ -1,5 +1,5 @@ { - "version": "5.2.0-rc.2", + "version": "5.2.0", "name": "@abp/jquery-validation-unobtrusive", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/jquery-validation": "~5.2.0-rc.2", + "@abp/jquery-validation": "~5.2.0", "jquery-validation-unobtrusive": "^3.2.12" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/jquery-validation/package.json b/npm/packs/jquery-validation/package.json index f34b6e7fb6..5dace5aac3 100644 --- a/npm/packs/jquery-validation/package.json +++ b/npm/packs/jquery-validation/package.json @@ -1,5 +1,5 @@ { - "version": "5.2.0-rc.2", + "version": "5.2.0", "name": "@abp/jquery-validation", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/jquery": "~5.2.0-rc.2", + "@abp/jquery": "~5.2.0", "jquery-validation": "^1.19.3" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/jquery/package.json b/npm/packs/jquery/package.json index 3d3c265e4e..9b57458d57 100644 --- a/npm/packs/jquery/package.json +++ b/npm/packs/jquery/package.json @@ -1,5 +1,5 @@ { - "version": "5.2.0-rc.2", + "version": "5.2.0", "name": "@abp/jquery", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/core": "~5.2.0-rc.2", + "@abp/core": "~5.2.0", "jquery": "~3.6.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/jstree/package.json b/npm/packs/jstree/package.json index f338c4ab5f..14b6a24dee 100644 --- a/npm/packs/jstree/package.json +++ b/npm/packs/jstree/package.json @@ -1,11 +1,11 @@ { - "version": "5.2.0-rc.2", + "version": "5.2.0", "name": "@abp/jstree", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/jquery": "~5.2.0-rc.2", + "@abp/jquery": "~5.2.0", "jstree": "^3.3.12" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/lodash/package.json b/npm/packs/lodash/package.json index 1535fc3222..b75632112f 100644 --- a/npm/packs/lodash/package.json +++ b/npm/packs/lodash/package.json @@ -1,5 +1,5 @@ { - "version": "5.2.0-rc.2", + "version": "5.2.0", "name": "@abp/lodash", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/core": "~5.2.0-rc.2", + "@abp/core": "~5.2.0", "lodash": "^4.17.21" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/luxon/package.json b/npm/packs/luxon/package.json index ec0160709e..4dbf8122c6 100644 --- a/npm/packs/luxon/package.json +++ b/npm/packs/luxon/package.json @@ -1,5 +1,5 @@ { - "version": "5.2.0-rc.2", + "version": "5.2.0", "name": "@abp/luxon", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/core": "~5.2.0-rc.2", + "@abp/core": "~5.2.0", "luxon": "^2.3.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/malihu-custom-scrollbar-plugin/package.json b/npm/packs/malihu-custom-scrollbar-plugin/package.json index 6e91cf94fd..ed504ecdee 100644 --- a/npm/packs/malihu-custom-scrollbar-plugin/package.json +++ b/npm/packs/malihu-custom-scrollbar-plugin/package.json @@ -1,5 +1,5 @@ { - "version": "5.2.0-rc.2", + "version": "5.2.0", "name": "@abp/malihu-custom-scrollbar-plugin", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/core": "~5.2.0-rc.2", + "@abp/core": "~5.2.0", "malihu-custom-scrollbar-plugin": "^3.1.5" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/markdown-it/package.json b/npm/packs/markdown-it/package.json index 4a003aa55a..1f2d66e2de 100644 --- a/npm/packs/markdown-it/package.json +++ b/npm/packs/markdown-it/package.json @@ -1,11 +1,11 @@ { - "version": "5.2.0-rc.2", + "version": "5.2.0", "name": "@abp/markdown-it", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~5.2.0-rc.2", + "@abp/core": "~5.2.0", "markdown-it": "^12.3.2" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/owl.carousel/package.json b/npm/packs/owl.carousel/package.json index 24ee57a7a5..3aeeb9ff9e 100644 --- a/npm/packs/owl.carousel/package.json +++ b/npm/packs/owl.carousel/package.json @@ -1,11 +1,11 @@ { - "version": "5.2.0-rc.2", + "version": "5.2.0", "name": "@abp/owl.carousel", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~5.2.0-rc.2", + "@abp/core": "~5.2.0", "owl.carousel": "^2.3.4" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/popper.js/package.json b/npm/packs/popper.js/package.json index 9903d34084..0248d89630 100644 --- a/npm/packs/popper.js/package.json +++ b/npm/packs/popper.js/package.json @@ -1,11 +1,11 @@ { - "version": "5.2.0-rc.2", + "version": "5.2.0", "name": "@abp/popper.js", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~5.2.0-rc.2", + "@abp/core": "~5.2.0", "@popperjs/core": "^2.11.2" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/prismjs/package.json b/npm/packs/prismjs/package.json index b77ba223ef..9c3125a19f 100644 --- a/npm/packs/prismjs/package.json +++ b/npm/packs/prismjs/package.json @@ -1,12 +1,12 @@ { - "version": "5.2.0-rc.2", + "version": "5.2.0", "name": "@abp/prismjs", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/clipboard": "~5.2.0-rc.2", - "@abp/core": "~5.2.0-rc.2", + "@abp/clipboard": "~5.2.0", + "@abp/core": "~5.2.0", "prismjs": "^1.26.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/select2/package.json b/npm/packs/select2/package.json index 4adb646d25..d0d35d120b 100644 --- a/npm/packs/select2/package.json +++ b/npm/packs/select2/package.json @@ -1,5 +1,5 @@ { - "version": "5.2.0-rc.2", + "version": "5.2.0", "name": "@abp/select2", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/core": "~5.2.0-rc.2", + "@abp/core": "~5.2.0", "select2": "^4.0.13" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/signalr/package.json b/npm/packs/signalr/package.json index 907f5d4cd8..0f64e92e8d 100644 --- a/npm/packs/signalr/package.json +++ b/npm/packs/signalr/package.json @@ -1,11 +1,11 @@ { - "version": "5.2.0-rc.2", + "version": "5.2.0", "name": "@abp/signalr", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~5.2.0-rc.2", + "@abp/core": "~5.2.0", "@microsoft/signalr": "~6.0.1" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/slugify/package.json b/npm/packs/slugify/package.json index f167bae77b..f81a0b4657 100644 --- a/npm/packs/slugify/package.json +++ b/npm/packs/slugify/package.json @@ -1,5 +1,5 @@ { - "version": "5.2.0-rc.2", + "version": "5.2.0", "name": "@abp/slugify", "publishConfig": { "access": "public" diff --git a/npm/packs/star-rating-svg/package.json b/npm/packs/star-rating-svg/package.json index efcc1761b8..b26eb69e79 100644 --- a/npm/packs/star-rating-svg/package.json +++ b/npm/packs/star-rating-svg/package.json @@ -1,11 +1,11 @@ { - "version": "5.2.0-rc.2", + "version": "5.2.0", "name": "@abp/star-rating-svg", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/jquery": "~5.2.0-rc.2", + "@abp/jquery": "~5.2.0", "star-rating-svg": "^3.5.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/sweetalert2/package.json b/npm/packs/sweetalert2/package.json index a294453684..65beade730 100644 --- a/npm/packs/sweetalert2/package.json +++ b/npm/packs/sweetalert2/package.json @@ -1,5 +1,5 @@ { - "version": "5.2.0-rc.2", + "version": "5.2.0", "name": "@abp/sweetalert2", "publishConfig": { "access": "public" @@ -10,7 +10,7 @@ "directory": "npm/packs/sweetalert2" }, "dependencies": { - "@abp/core": "~5.2.0-rc.2", + "@abp/core": "~5.2.0", "sweetalert2": "^11.3.6" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/timeago/package.json b/npm/packs/timeago/package.json index 68eca67f2c..b09c6f0bdf 100644 --- a/npm/packs/timeago/package.json +++ b/npm/packs/timeago/package.json @@ -1,5 +1,5 @@ { - "version": "5.2.0-rc.2", + "version": "5.2.0", "name": "@abp/timeago", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/jquery": "~5.2.0-rc.2", + "@abp/jquery": "~5.2.0", "timeago": "^1.6.7" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/toastr/package.json b/npm/packs/toastr/package.json index c130bf41ee..b6d2bec0cc 100644 --- a/npm/packs/toastr/package.json +++ b/npm/packs/toastr/package.json @@ -1,5 +1,5 @@ { - "version": "5.2.0-rc.2", + "version": "5.2.0", "name": "@abp/toastr", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/jquery": "~5.2.0-rc.2", + "@abp/jquery": "~5.2.0", "toastr": "^2.1.4" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/tui-editor/package.json b/npm/packs/tui-editor/package.json index 51077fd188..3ca4549cb4 100644 --- a/npm/packs/tui-editor/package.json +++ b/npm/packs/tui-editor/package.json @@ -1,12 +1,12 @@ { - "version": "5.2.0-rc.2", + "version": "5.2.0", "name": "@abp/tui-editor", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/jquery": "~5.2.0-rc.2", - "@abp/prismjs": "~5.2.0-rc.2" + "@abp/jquery": "~5.2.0", + "@abp/prismjs": "~5.2.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" } diff --git a/npm/packs/uppy/package.json b/npm/packs/uppy/package.json index 1d1f872d0a..628aff8fb5 100644 --- a/npm/packs/uppy/package.json +++ b/npm/packs/uppy/package.json @@ -1,11 +1,11 @@ { - "version": "5.2.0-rc.2", + "version": "5.2.0", "name": "@abp/uppy", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~5.2.0-rc.2", + "@abp/core": "~5.2.0", "uppy": "^1.16.1" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/utils/package.json b/npm/packs/utils/package.json index 44199142fe..ee4326538a 100644 --- a/npm/packs/utils/package.json +++ b/npm/packs/utils/package.json @@ -1,6 +1,6 @@ { "name": "@abp/utils", - "version": "5.2.0-rc.2", + "version": "5.2.0", "scripts": { "prepublishOnly": "yarn install --ignore-scripts && node prepublish.js", "ng": "ng", diff --git a/npm/packs/vee-validate/package.json b/npm/packs/vee-validate/package.json index 8dd9451283..4d2f565031 100644 --- a/npm/packs/vee-validate/package.json +++ b/npm/packs/vee-validate/package.json @@ -1,11 +1,11 @@ { - "version": "5.2.0-rc.2", + "version": "5.2.0", "name": "@abp/vee-validate", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/vue": "~5.2.0-rc.2", + "@abp/vue": "~5.2.0", "vee-validate": "~3.4.4" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/virtual-file-explorer/package.json b/npm/packs/virtual-file-explorer/package.json index 86ec2020d1..9ec4c09cf1 100644 --- a/npm/packs/virtual-file-explorer/package.json +++ b/npm/packs/virtual-file-explorer/package.json @@ -1,12 +1,12 @@ { - "version": "5.2.0-rc.2", + "version": "5.2.0", "name": "@abp/virtual-file-explorer", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/clipboard": "~5.2.0-rc.2", - "@abp/prismjs": "~5.2.0-rc.2" + "@abp/clipboard": "~5.2.0", + "@abp/prismjs": "~5.2.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" } diff --git a/npm/packs/vue/package.json b/npm/packs/vue/package.json index 1d7de89b5b..9145c4e95b 100644 --- a/npm/packs/vue/package.json +++ b/npm/packs/vue/package.json @@ -1,5 +1,5 @@ { - "version": "5.2.0-rc.2", + "version": "5.2.0", "name": "@abp/vue", "publishConfig": { "access": "public" diff --git a/templates/app-nolayers/angular/package.json b/templates/app-nolayers/angular/package.json index 334f005e5e..b2555b72c3 100644 --- a/templates/app-nolayers/angular/package.json +++ b/templates/app-nolayers/angular/package.json @@ -12,14 +12,14 @@ }, "private": true, "dependencies": { - "@abp/ng.account": "~5.2.0-rc.2", - "@abp/ng.components": "~5.2.0-rc.2", - "@abp/ng.core": "~5.2.0-rc.2", - "@abp/ng.identity": "~5.2.0-rc.2", - "@abp/ng.setting-management": "~5.2.0-rc.2", - "@abp/ng.tenant-management": "~5.2.0-rc.2", - "@abp/ng.theme.basic": "~5.2.0-rc.2", - "@abp/ng.theme.shared": "~5.2.0-rc.2", + "@abp/ng.account": "~5.2.0", + "@abp/ng.components": "~5.2.0", + "@abp/ng.core": "~5.2.0", + "@abp/ng.identity": "~5.2.0", + "@abp/ng.setting-management": "~5.2.0", + "@abp/ng.tenant-management": "~5.2.0", + "@abp/ng.theme.basic": "~5.2.0", + "@abp/ng.theme.shared": "~5.2.0", "@angular/animations": "~13.1.1", "@angular/common": "~13.1.1", "@angular/compiler": "~13.1.1", @@ -34,7 +34,7 @@ "zone.js": "~0.11.4" }, "devDependencies": { - "@abp/ng.schematics": "~5.2.0-rc.2", + "@abp/ng.schematics": "~5.2.0", "@angular-devkit/build-angular": "~13.1.2", "@angular-eslint/builder": "~13.0.1", "@angular-eslint/eslint-plugin": "~13.0.1", diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/package.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/package.json index f5485197fe..5a3e1b995b 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/package.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/package.json @@ -3,7 +3,7 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0-rc.2", - "@abp/aspnetcore.components.server.basictheme": "^5.2.0-rc.2" + "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0", + "@abp/aspnetcore.components.server.basictheme": "^5.2.0" } } diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/package.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/package.json index f5485197fe..5a3e1b995b 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/package.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/package.json @@ -3,7 +3,7 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0-rc.2", - "@abp/aspnetcore.components.server.basictheme": "^5.2.0-rc.2" + "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0", + "@abp/aspnetcore.components.server.basictheme": "^5.2.0" } } diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/package.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/package.json index ccee8c63b4..cb24136b79 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/package.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/package.json @@ -3,6 +3,6 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0-rc.2" + "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0" } } \ No newline at end of file diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/package.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/package.json index ccee8c63b4..cb24136b79 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/package.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/package.json @@ -3,6 +3,6 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0-rc.2" + "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0" } } \ No newline at end of file diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/package.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/package.json index 7318bdded8..c4b1189be3 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/package.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/package.json @@ -3,6 +3,6 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "~5.2.0-rc.2" + "@abp/aspnetcore.mvc.ui.theme.basic": "~5.2.0" } } \ No newline at end of file diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/package.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/package.json index 7318bdded8..c4b1189be3 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/package.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/package.json @@ -3,6 +3,6 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "~5.2.0-rc.2" + "@abp/aspnetcore.mvc.ui.theme.basic": "~5.2.0" } } \ No newline at end of file diff --git a/templates/app/angular/package.json b/templates/app/angular/package.json index 334f005e5e..b2555b72c3 100644 --- a/templates/app/angular/package.json +++ b/templates/app/angular/package.json @@ -12,14 +12,14 @@ }, "private": true, "dependencies": { - "@abp/ng.account": "~5.2.0-rc.2", - "@abp/ng.components": "~5.2.0-rc.2", - "@abp/ng.core": "~5.2.0-rc.2", - "@abp/ng.identity": "~5.2.0-rc.2", - "@abp/ng.setting-management": "~5.2.0-rc.2", - "@abp/ng.tenant-management": "~5.2.0-rc.2", - "@abp/ng.theme.basic": "~5.2.0-rc.2", - "@abp/ng.theme.shared": "~5.2.0-rc.2", + "@abp/ng.account": "~5.2.0", + "@abp/ng.components": "~5.2.0", + "@abp/ng.core": "~5.2.0", + "@abp/ng.identity": "~5.2.0", + "@abp/ng.setting-management": "~5.2.0", + "@abp/ng.tenant-management": "~5.2.0", + "@abp/ng.theme.basic": "~5.2.0", + "@abp/ng.theme.shared": "~5.2.0", "@angular/animations": "~13.1.1", "@angular/common": "~13.1.1", "@angular/compiler": "~13.1.1", @@ -34,7 +34,7 @@ "zone.js": "~0.11.4" }, "devDependencies": { - "@abp/ng.schematics": "~5.2.0-rc.2", + "@abp/ng.schematics": "~5.2.0", "@angular-devkit/build-angular": "~13.1.2", "@angular-eslint/builder": "~13.0.1", "@angular-eslint/eslint-plugin": "~13.0.1", diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.Server.Tiered/package.json b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.Server.Tiered/package.json index f5485197fe..5a3e1b995b 100644 --- a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.Server.Tiered/package.json +++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.Server.Tiered/package.json @@ -3,7 +3,7 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0-rc.2", - "@abp/aspnetcore.components.server.basictheme": "^5.2.0-rc.2" + "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0", + "@abp/aspnetcore.components.server.basictheme": "^5.2.0" } } diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.Server/package.json b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.Server/package.json index f5485197fe..5a3e1b995b 100644 --- a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.Server/package.json +++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.Server/package.json @@ -3,7 +3,7 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0-rc.2", - "@abp/aspnetcore.components.server.basictheme": "^5.2.0-rc.2" + "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0", + "@abp/aspnetcore.components.server.basictheme": "^5.2.0" } } diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.HttpApi.HostWithIds/package.json b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.HttpApi.HostWithIds/package.json index ccee8c63b4..cb24136b79 100644 --- a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.HttpApi.HostWithIds/package.json +++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.HttpApi.HostWithIds/package.json @@ -3,6 +3,6 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0-rc.2" + "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0" } } \ No newline at end of file diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.IdentityServer/package.json b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.IdentityServer/package.json index 6c2239ae14..650df128bf 100644 --- a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.IdentityServer/package.json +++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.IdentityServer/package.json @@ -3,6 +3,6 @@ "name": "my-app-identityserver", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0-rc.2" + "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0" } } \ No newline at end of file diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web.Host/package.json b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web.Host/package.json index ccee8c63b4..cb24136b79 100644 --- a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web.Host/package.json +++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web.Host/package.json @@ -3,6 +3,6 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0-rc.2" + "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0" } } \ No newline at end of file diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web/package.json b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web/package.json index ccee8c63b4..cb24136b79 100644 --- a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web/package.json +++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web/package.json @@ -3,6 +3,6 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0-rc.2" + "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0" } } \ No newline at end of file diff --git a/templates/module/angular/package.json b/templates/module/angular/package.json index a2498f6ed3..0605b5c6ea 100644 --- a/templates/module/angular/package.json +++ b/templates/module/angular/package.json @@ -15,14 +15,14 @@ }, "private": true, "dependencies": { - "@abp/ng.account": "~5.2.0-rc.2", - "@abp/ng.components": "~5.2.0-rc.2", - "@abp/ng.core": "~5.2.0-rc.2", - "@abp/ng.identity": "~5.2.0-rc.2", - "@abp/ng.setting-management": "~5.2.0-rc.2", - "@abp/ng.tenant-management": "~5.2.0-rc.2", - "@abp/ng.theme.basic": "~5.2.0-rc.2", - "@abp/ng.theme.shared": "~5.2.0-rc.2", + "@abp/ng.account": "~5.2.0", + "@abp/ng.components": "~5.2.0", + "@abp/ng.core": "~5.2.0", + "@abp/ng.identity": "~5.2.0", + "@abp/ng.setting-management": "~5.2.0", + "@abp/ng.tenant-management": "~5.2.0", + "@abp/ng.theme.basic": "~5.2.0", + "@abp/ng.theme.shared": "~5.2.0", "@angular/animations": "~13.1.1", "@angular/common": "~13.1.1", "@angular/compiler": "~13.1.1", @@ -37,7 +37,7 @@ "zone.js": "~0.11.4" }, "devDependencies": { - "@abp/ng.schematics": "~5.2.0-rc.2", + "@abp/ng.schematics": "~5.2.0", "@angular-devkit/build-angular": "~13.1.2", "@angular-eslint/builder": "~13.0.1", "@angular-eslint/eslint-plugin": "~13.0.1", diff --git a/templates/module/angular/projects/my-project-name/package.json b/templates/module/angular/projects/my-project-name/package.json index b66270a173..067904bdb9 100644 --- a/templates/module/angular/projects/my-project-name/package.json +++ b/templates/module/angular/projects/my-project-name/package.json @@ -4,8 +4,8 @@ "peerDependencies": { "@angular/common": ">=9", "@angular/core": ">=9", - "@abp/ng.core": ">=5.2.0-rc.2", - "@abp/ng.theme.shared": ">=5.2.0-rc.2" + "@abp/ng.core": ">=5.2.0", + "@abp/ng.theme.shared": ">=5.2.0" }, "dependencies": { "tslib": "^2.1.0" diff --git a/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.Blazor.Server.Host/package.json b/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.Blazor.Server.Host/package.json index f5485197fe..5a3e1b995b 100644 --- a/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.Blazor.Server.Host/package.json +++ b/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.Blazor.Server.Host/package.json @@ -3,7 +3,7 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0-rc.2", - "@abp/aspnetcore.components.server.basictheme": "^5.2.0-rc.2" + "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0", + "@abp/aspnetcore.components.server.basictheme": "^5.2.0" } } diff --git a/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.IdentityServer/package.json b/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.IdentityServer/package.json index 6c2239ae14..650df128bf 100644 --- a/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.IdentityServer/package.json +++ b/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.IdentityServer/package.json @@ -3,6 +3,6 @@ "name": "my-app-identityserver", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0-rc.2" + "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0" } } \ No newline at end of file diff --git a/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.Web.Host/package.json b/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.Web.Host/package.json index ccee8c63b4..cb24136b79 100644 --- a/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.Web.Host/package.json +++ b/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.Web.Host/package.json @@ -3,6 +3,6 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0-rc.2" + "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0" } } \ No newline at end of file diff --git a/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.Web.Unified/package.json b/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.Web.Unified/package.json index ccee8c63b4..cb24136b79 100644 --- a/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.Web.Unified/package.json +++ b/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.Web.Unified/package.json @@ -3,6 +3,6 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0-rc.2" + "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0" } } \ No newline at end of file From f3893e3c2e3c54fd3ad747e589036de5e55bbecc Mon Sep 17 00:00:00 2001 From: Engincan VESKE <43685404+EngincanV@users.noreply.github.com> Date: Tue, 5 Apr 2022 09:44:21 +0300 Subject: [PATCH 12/90] Update MyProjectNameWebHostModule.cs --- .../MyProjectNameWebHostModule.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.Web.Host/MyProjectNameWebHostModule.cs b/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.Web.Host/MyProjectNameWebHostModule.cs index 95f2d69043..874e5a9eb5 100644 --- a/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.Web.Host/MyProjectNameWebHostModule.cs +++ b/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.Web.Host/MyProjectNameWebHostModule.cs @@ -193,7 +193,7 @@ public class MyProjectNameWebHostModule : AbpModule options.FileSets.ReplaceEmbeddedByPhysical(Path.Combine(hostingEnvironment.ContentRootPath, string.Format("..{0}..{0}..{0}..{0}..{0}modules{0}permission-management{0}src{0}Volo.Abp.PermissionManagement.Web", Path.DirectorySeparatorChar))); options.FileSets.ReplaceEmbeddedByPhysical(Path.Combine(hostingEnvironment.ContentRootPath, string.Format("..{0}..{0}..{0}..{0}..{0}modules{0}identity{0}src{0}Volo.Abp.Identity.Web", Path.DirectorySeparatorChar))); // - options.FileSets.ReplaceEmbeddedByPhysical(Path.Combine(hostingEnvironment.ContentRootPath, string.Format("..{0}..{0}src{0}MyCompanyName.MyProjectName.Domain", Path.DirectorySeparatorChar))); + options.FileSets.ReplaceEmbeddedByPhysical(Path.Combine(hostingEnvironment.ContentRootPath, string.Format("..{0}..{0}src{0}MyCompanyName.MyProjectName.Domain.Shared", Path.DirectorySeparatorChar))); options.FileSets.ReplaceEmbeddedByPhysical(Path.Combine(hostingEnvironment.ContentRootPath, string.Format("..{0}..{0}src{0}MyCompanyName.MyProjectName.Application.Contracts", Path.DirectorySeparatorChar))); options.FileSets.ReplaceEmbeddedByPhysical(Path.Combine(hostingEnvironment.ContentRootPath, string.Format("..{0}..{0}src{0}MyCompanyName.MyProjectName.Web", Path.DirectorySeparatorChar))); }); From 49e9491d3b103618757d65e0d32a26904f350047 Mon Sep 17 00:00:00 2001 From: enisn Date: Tue, 5 Apr 2022 10:51:31 +0300 Subject: [PATCH 13/90] Add BlogFeatureDataSeedContributor --- .../Blogs/BlogFeatureDataSeedContributor.cs | 29 +++++++++++++++++++ .../Volo/CmsKit/Blogs/BlogFeatureManager.cs | 20 +++++++++++++ 2 files changed, 49 insertions(+) create mode 100644 modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Blogs/BlogFeatureDataSeedContributor.cs diff --git a/modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Blogs/BlogFeatureDataSeedContributor.cs b/modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Blogs/BlogFeatureDataSeedContributor.cs new file mode 100644 index 0000000000..b212e5e21a --- /dev/null +++ b/modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Blogs/BlogFeatureDataSeedContributor.cs @@ -0,0 +1,29 @@ +using System.Threading.Tasks; +using Volo.Abp.Data; +using Volo.Abp.DependencyInjection; + +namespace Volo.CmsKit.Blogs; + +public class BlogFeatureDataSeedContributor : IDataSeedContributor, ITransientDependency +{ + private readonly BlogFeatureManager _blogFeatureManager; + private readonly IBlogRepository _blogRepository; + + public BlogFeatureDataSeedContributor( + BlogFeatureManager blogFeatureManager, + IBlogRepository blogRepository) + { + _blogFeatureManager = blogFeatureManager; + _blogRepository = blogRepository; + } + + public async Task SeedAsync(DataSeedContext context) + { + var blogs = await _blogRepository.GetListAsync(); + + foreach (var blog in blogs) + { + await _blogFeatureManager.SetDefaultsIfNotSetAsync(blog.Id); + } + } +} diff --git a/modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Blogs/BlogFeatureManager.cs b/modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Blogs/BlogFeatureManager.cs index 77a519daf3..f9dd101ef9 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Blogs/BlogFeatureManager.cs +++ b/modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Blogs/BlogFeatureManager.cs @@ -44,4 +44,24 @@ public class BlogFeatureManager : DomainService await SetAsync(blogId, feature.FeatureName, isEnabled: true); } } + + public async Task SetIfNotSetAsync(Guid blogId, string featureName, bool isEnabled) + { + var blogFeature = await BlogFeatureRepository.FindAsync(blogId, featureName); + if (blogFeature == null) + { + var newBlogFeature = new BlogFeature(blogId, featureName, isEnabled); + await BlogFeatureRepository.InsertAsync(newBlogFeature); + } + } + + public async Task SetDefaultsIfNotSetAsync(Guid blogId) + { + var defaultFeatures = await DefaultBlogFeatureProvider.GetDefaultFeaturesAsync(blogId); + + foreach (var feature in defaultFeatures) + { + await SetIfNotSetAsync(blogId, feature.FeatureName, isEnabled: true); + } + } } From c821ae630c84e0e56e90498d603f6a8e77a8398e Mon Sep 17 00:00:00 2001 From: liangshiwei Date: Tue, 5 Apr 2022 16:22:04 +0800 Subject: [PATCH 14/90] Fix ApiResource mapping --- .../Volo/Abp/IdentityServer/IdentityServerAutoMapperProfile.cs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/modules/identityserver/src/Volo.Abp.IdentityServer.Domain/Volo/Abp/IdentityServer/IdentityServerAutoMapperProfile.cs b/modules/identityserver/src/Volo.Abp.IdentityServer.Domain/Volo/Abp/IdentityServer/IdentityServerAutoMapperProfile.cs index 3e63b4d7ab..53a7de989c 100644 --- a/modules/identityserver/src/Volo.Abp.IdentityServer.Domain/Volo/Abp/IdentityServer/IdentityServerAutoMapperProfile.cs +++ b/modules/identityserver/src/Volo.Abp.IdentityServer.Domain/Volo/Abp/IdentityServer/IdentityServerAutoMapperProfile.cs @@ -94,7 +94,8 @@ public class IdentityServerAutoMapperProfile : Profile private void CreateApiResourceMap() { CreateMap() - .ForMember(dest => dest.ApiSecrets, opt => opt.MapFrom(src => src.Secrets)); + .ForMember(dest => dest.ApiSecrets, opt => opt.MapFrom(src => src.Secrets)) + .ForMember(x => x.AllowedAccessTokenSigningAlgorithms, opts => opts.ConvertUsing(AllowedSigningAlgorithmsConverter.Converter, x => x.AllowedAccessTokenSigningAlgorithms)); CreateMap(); From dad1f8505c8b91121b6ff0382e8fe101bfe97cad Mon Sep 17 00:00:00 2001 From: enisn Date: Tue, 5 Apr 2022 14:00:35 +0300 Subject: [PATCH 15/90] Add PWA Support to template --- .../Commands/ProjectCreationCommandBase.cs | 11 +++++ .../Building/Steps/RemoveFileStep.cs | 21 ++++++++ .../Templates/App/AppTemplateBase.cs | 18 +++++++ .../MyCompanyName.MyProjectName.Blazor.csproj | 6 +++ .../wwwroot/manifest.json | 21 ++++++++ .../wwwroot/service-worker.js | 4 ++ .../wwwroot/service-worker.published.js | 48 +++++++++++++++++++ 7 files changed, 129 insertions(+) create mode 100644 framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Building/Steps/RemoveFileStep.cs create mode 100644 templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/wwwroot/manifest.json create mode 100644 templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/wwwroot/service-worker.js create mode 100644 templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/wwwroot/service-worker.published.js diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/ProjectCreationCommandBase.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/ProjectCreationCommandBase.cs index d638a21f87..860147c584 100644 --- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/ProjectCreationCommandBase.cs +++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/ProjectCreationCommandBase.cs @@ -48,6 +48,12 @@ public abstract class ProjectCreationCommandBase Logger.LogInformation("Preview: yes"); } + var pwa = commandLineArgs.Options.ContainsKey(Options.ProgressiveWebApp.Short); + if (pwa) + { + Logger.LogInformation("Progressive Web App: yes"); + } + var databaseProvider = GetDatabaseProvider(commandLineArgs); if (databaseProvider != DatabaseProvider.NotSpecified) { @@ -476,5 +482,10 @@ public abstract class ProjectCreationCommandBase { public const string Long = "preview"; } + + public static class ProgressiveWebApp + { + public const string Short = "pwa"; + } } } diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Building/Steps/RemoveFileStep.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Building/Steps/RemoveFileStep.cs new file mode 100644 index 0000000000..203a927536 --- /dev/null +++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Building/Steps/RemoveFileStep.cs @@ -0,0 +1,21 @@ +using System; + +namespace Volo.Abp.Cli.ProjectBuilding.Building.Steps; + +public class RemoveFileStep : ProjectBuildPipelineStep +{ + private readonly string _filePath; + public RemoveFileStep(string filePath) + { + _filePath = filePath; + } + + public override void Execute(ProjectBuildContext context) + { + var fileToRemove = context.Files.Find(x => x.Name.EndsWith(_filePath)); + if (fileToRemove != null) + { + context.Files.Remove(fileToRemove); + } + } +} diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Templates/App/AppTemplateBase.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Templates/App/AppTemplateBase.cs index 20b72cdc50..e232629e5a 100644 --- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Templates/App/AppTemplateBase.cs +++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Templates/App/AppTemplateBase.cs @@ -209,6 +209,15 @@ public abstract class AppTemplateBase : TemplateInfo { RemoveCmsKitDependenciesFromPackageJsonFiles(steps); } + + if (context.BuildArgs.ExtraProperties.ContainsKey(NewCommand.Options.ProgressiveWebApp.Short)) + { + context.Symbols.Add("PWA"); + } + else + { + RemovePwaFiles(steps); + } } protected static void RemoveCmsKitDependenciesFromPackageJsonFiles(List steps) @@ -238,6 +247,15 @@ public abstract class AppTemplateBase : TemplateInfo } } + protected static void RemovePwaFiles(List steps) + { + steps.Add(new RemoveFileStep("/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/wwwroot/service-worker.js")); + steps.Add(new RemoveFileStep("/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/wwwroot/service-worker.published.js")); + steps.Add(new RemoveFileStep("/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/wwwroot/manifest.json")); + steps.Add(new RemoveFileStep("/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/wwwroot/icon-192.png")); + steps.Add(new RemoveFileStep("/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/wwwroot/icon-512.png")); + } + protected bool IsCmsKitSupportedForTargetVersion(ProjectBuildContext context) { if (string.IsNullOrWhiteSpace(context.BuildArgs.Version)) diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/MyCompanyName.MyProjectName.Blazor.csproj b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/MyCompanyName.MyProjectName.Blazor.csproj index 593ebf5868..32ab98eba9 100644 --- a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/MyCompanyName.MyProjectName.Blazor.csproj +++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/MyCompanyName.MyProjectName.Blazor.csproj @@ -29,4 +29,10 @@ + + + + + + diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/wwwroot/manifest.json b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/wwwroot/manifest.json new file mode 100644 index 0000000000..eefb83cb28 --- /dev/null +++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/wwwroot/manifest.json @@ -0,0 +1,21 @@ +{ + "name": "MyProjectName", + "short_name": "MyCompanyName.MyProjectName", + "start_url": "./", + "display": "standalone", + "background_color": "#ffffff", + "theme_color": "#03173d", + "prefer_related_applications": false, + "icons": [ + { + "src": "icon-512.png", + "type": "image/png", + "sizes": "512x512" + }, + { + "src": "icon-192.png", + "type": "image/png", + "sizes": "192x192" + } + ] +} diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/wwwroot/service-worker.js b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/wwwroot/service-worker.js new file mode 100644 index 0000000000..fe614daee0 --- /dev/null +++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/wwwroot/service-worker.js @@ -0,0 +1,4 @@ +// In development, always fetch from the network and do not enable offline support. +// This is because caching would make development more difficult (changes would not +// be reflected on the first load after each change). +self.addEventListener('fetch', () => { }); diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/wwwroot/service-worker.published.js b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/wwwroot/service-worker.published.js new file mode 100644 index 0000000000..0d9986fce1 --- /dev/null +++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/wwwroot/service-worker.published.js @@ -0,0 +1,48 @@ +// Caution! Be sure you understand the caveats before publishing an application with +// offline support. See https://aka.ms/blazor-offline-considerations + +self.importScripts('./service-worker-assets.js'); +self.addEventListener('install', event => event.waitUntil(onInstall(event))); +self.addEventListener('activate', event => event.waitUntil(onActivate(event))); +self.addEventListener('fetch', event => event.respondWith(onFetch(event))); + +const cacheNamePrefix = 'offline-cache-'; +const cacheName = `${cacheNamePrefix}${self.assetsManifest.version}`; +const offlineAssetsInclude = [ /\.dll$/, /\.pdb$/, /\.wasm/, /\.html/, /\.js$/, /\.json$/, /\.css$/, /\.woff$/, /\.png$/, /\.jpe?g$/, /\.gif$/, /\.ico$/, /\.blat$/, /\.dat$/ ]; +const offlineAssetsExclude = [ /^service-worker\.js$/ ]; + +async function onInstall(event) { + console.info('Service worker: Install'); + + // Fetch and cache all matching items from the assets manifest + const assetsRequests = self.assetsManifest.assets + .filter(asset => offlineAssetsInclude.some(pattern => pattern.test(asset.url))) + .filter(asset => !offlineAssetsExclude.some(pattern => pattern.test(asset.url))) + .map(asset => new Request(asset.url, { integrity: asset.hash, cache: 'no-cache' })); + await caches.open(cacheName).then(cache => cache.addAll(assetsRequests)); +} + +async function onActivate(event) { + console.info('Service worker: Activate'); + + // Delete unused caches + const cacheKeys = await caches.keys(); + await Promise.all(cacheKeys + .filter(key => key.startsWith(cacheNamePrefix) && key !== cacheName) + .map(key => caches.delete(key))); +} + +async function onFetch(event) { + let cachedResponse = null; + if (event.request.method === 'GET') { + // For all navigation requests, try to serve index.html from cache + // If you need some URLs to be server-rendered, edit the following check to exclude those URLs + const shouldServeIndexHtml = event.request.mode === 'navigate'; + + const request = shouldServeIndexHtml ? 'index.html' : event.request; + const cache = await caches.open(cacheName); + cachedResponse = await cache.match(request); + } + + return cachedResponse || fetch(event.request); +} From f748c9375d55c46738d30ea1bbe0923df4427eb1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Halil=20=C4=B0brahim=20Kalkan?= Date: Tue, 5 Apr 2022 14:34:05 +0300 Subject: [PATCH 16/90] Blog post for 5.2 stable release. --- .../2022-04-05 v5_2_Release_Stable/POST.md | 49 +++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 docs/en/Blog-Posts/2022-04-05 v5_2_Release_Stable/POST.md diff --git a/docs/en/Blog-Posts/2022-04-05 v5_2_Release_Stable/POST.md b/docs/en/Blog-Posts/2022-04-05 v5_2_Release_Stable/POST.md new file mode 100644 index 0000000000..3575fb396f --- /dev/null +++ b/docs/en/Blog-Posts/2022-04-05 v5_2_Release_Stable/POST.md @@ -0,0 +1,49 @@ +# ABP.IO Platform 5.2 Final Has Been Released! + +[ABP Framework](https://abp.io/) and [ABP Commercial](https://commercial.abp.io/) 5.2 versions have been released today. + +## What's New With 5.2? + +Since all the new features are already explained in details with the [5.2 RC Announcement Post](https://blog.abp.io/abp/ABP.IO-Platform-5-2-RC-Has-Been-Published), I will not repeat all the details again. See the [RC Blog Post](https://blog.abp.io/abp/ABP.IO-Platform-5-2-RC-Has-Been-Published) for all the features and enhancements. + +## Creating New Solutions + +You can create a new solution with the ABP Framework version 5.2 by either using the `abp new` command or using the **direct download** tab on the [get started page](https://abp.io/get-started). + +> See the [getting started document](https://docs.abp.io/en/abp/latest/Getting-Started) for more. + +## How to Upgrade an Existing Solution + +### Install/Update the ABP CLI + +First of all, install the ABP CLI or upgrade to the latest version. + +If you haven't installed yet: + +```bash +dotnet tool install -g Volo.Abp.Cli +``` + +To update an existing installation: + +```bash +dotnet tool update -g Volo.Abp.Cli +``` + +### ABP UPDATE Command + +[ABP CLI](https://docs.abp.io/en/abp/latest/CLI) provides a handy command to update all the ABP related NuGet and NPM packages in your solution with a single command: + +```bash +abp update +``` + +Run this command in the root folder of your solution. + +## Migration Guide + +Check [the migration guide](https://docs.abp.io/en/abp/5.2/Migration-Guides/Abp-5_2) for the applications with the version 5.x upgrading to the version 5.2. + +## About the Next Version + +The next feature version will be 5.3. It is planned to release the 5.3 RC (Release Candidate) on May 03 and the final version on May 31, 2022. You can follow the [release planning here](https://github.com/abpframework/abp/milestones). From aa89d0bb1fea74c8b94eda0af4fdbc29866ccc1a Mon Sep 17 00:00:00 2001 From: Enis Necipoglu Date: Tue, 5 Apr 2022 16:25:32 +0300 Subject: [PATCH 17/90] Add missing assets to index.html for blazor pwa support --- .../Building/Steps/TemplateCodeDeleteStep.cs | 6 +++++- .../MyCompanyName.MyProjectName.Blazor.csproj | 3 +++ .../wwwroot/icon-192.png | Bin 0 -> 2626 bytes .../wwwroot/icon-512.png | Bin 0 -> 6311 bytes .../wwwroot/index.html | 10 ++++++++++ 5 files changed, 18 insertions(+), 1 deletion(-) create mode 100644 templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/wwwroot/icon-192.png create mode 100644 templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/wwwroot/icon-512.png diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Building/Steps/TemplateCodeDeleteStep.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Building/Steps/TemplateCodeDeleteStep.cs index 69dada9a8e..39186e900c 100644 --- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Building/Steps/TemplateCodeDeleteStep.cs +++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Building/Steps/TemplateCodeDeleteStep.cs @@ -8,7 +8,11 @@ public class TemplateCodeDeleteStep : ProjectBuildPipelineStep { foreach (var file in context.Files) { - if (file.Name.EndsWith(".cs") || file.Name.EndsWith(".csproj") || file.Name.EndsWith(".cshtml") || file.Name.EndsWith(".json")) + if (file.Name.EndsWith(".cs") || + file.Name.EndsWith(".csproj") || + file.Name.EndsWith(".cshtml") || + file.Name.EndsWith(".json") || + file.Name.EndsWith(".html")) { file.RemoveTemplateCode(context.Symbols); file.RemoveTemplateCodeMarkers(); diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/MyCompanyName.MyProjectName.Blazor.csproj b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/MyCompanyName.MyProjectName.Blazor.csproj index 32ab98eba9..93f45f455d 100644 --- a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/MyCompanyName.MyProjectName.Blazor.csproj +++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/MyCompanyName.MyProjectName.Blazor.csproj @@ -5,6 +5,9 @@ net6.0 true + + service-worker-assets.js + diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/wwwroot/icon-192.png b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/wwwroot/icon-192.png new file mode 100644 index 0000000000000000000000000000000000000000..166f56da7612ea74df6a297154c8d281a4f28a14 GIT binary patch literal 2626 zcmV-I3cdA-P)v0A9xRwxP|bki~~&uFk>U z#P+PQh zyZ;-jwXKqnKbb6)@RaxQz@vm={%t~VbaZrdbaZrdbaeEeXj>~BG?&`J0XrqR#sSlO zg~N5iUk*15JibvlR1f^^1czzNKWvoJtc!Sj*G37QXbZ8LeD{Fzxgdv#Q{x}ytfZ5q z+^k#NaEp>zX_8~aSaZ`O%B9C&YLHb(mNtgGD&Kezd5S@&C=n~Uy1NWHM`t07VQP^MopUXki{2^#ryd94>UJMYW|(#4qV`kb7eD)Q=~NN zaVIRi@|TJ!Rni8J=5DOutQ#bEyMVr8*;HU|)MEKmVC+IOiDi9y)vz=rdtAUHW$yjt zrj3B7v(>exU=IrzC<+?AE=2vI;%fafM}#ShGDZx=0Nus5QHKdyb9pw&4>4XCpa-o?P(Gnco1CGX|U> z$f+_tA3+V~<{MU^A%eP!8R*-sD9y<>Jc7A(;aC5hVbs;kX9&Sa$JMG!W_BLFQa*hM zri__C@0i0U1X#?)Y=)>JpvTnY6^s;fu#I}K9u>OldV}m!Ch`d1Vs@v9 zb}w(!TvOmSzmMBa9gYvD4xocL2r0ds6%Hs>Z& z#7#o9PGHDmfG%JQq`O5~dt|MAQN@2wyJw_@``7Giyy(yyk(m8U*kk5$X1^;3$a3}N^Lp6hE5!#8l z#~NYHmKAs6IAe&A;bvM8OochRmXN>`D`{N$%#dZCRxp4-dJ?*3P}}T`tYa3?zz5BA zTu7uE#GsDpZ$~j9q=Zq!LYjLbZPXFILZK4?S)C-zE1(dC2d<7nO4-nSCbV#9E|E1MM|V<9>i4h?WX*r*ul1 z5#k6;po8z=fdMiVVz*h+iaTlz#WOYmU^SX5#97H~B32s-#4wk<1NTN#g?LrYieCu> zF7pbOLR;q2D#Q`^t%QcY06*X-jM+ei7%ZuanUTH#9Y%FBi*Z#22({_}3^=BboIsbg zR0#jJ>9QR8SnmtSS6x($?$}6$x+q)697#m${Z@G6Ujf=6iO^S}7P`q8DkH!IHd4lB zDzwxt3BHsPAcXFFY^Fj}(073>NL_$A%v2sUW(CRutd%{G`5ow?L`XYSO*Qu?x+Gzv zBtR}Y6`XF4xX7)Z04D+fH;TMapdQFFameUuHL34NN)r@aF4RO%x&NApeWGtr#mG~M z6sEIZS;Uj1HB1*0hh=O@0q1=Ia@L>-tETu-3n(op+97E z#&~2xggrl(LA|giII;RwBlX2^Q`B{_t}gxNL;iB11gEPC>v` zb4SJ;;BFOB!{chn>?cCeGDKuqI0+!skyWTn*k!WiPNBf=8rn;@y%( znhq%8fj2eAe?`A5mP;TE&iLEmQ^xV%-kmC-8mWao&EUK_^=GW-Y3z ksi~={si~={skwfB0gq6itke#r1ONa407*qoM6N<$g11Kq@c;k- literal 0 HcmV?d00001 diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/wwwroot/icon-512.png b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/wwwroot/icon-512.png new file mode 100644 index 0000000000000000000000000000000000000000..c2dd4842dc93df73c322218ee03eca142a19a338 GIT binary patch literal 6311 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 literal 0 HcmV?d00001 diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/wwwroot/index.html b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/wwwroot/index.html index cea9eeca0d..4a86d7bdc6 100644 --- a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/wwwroot/index.html +++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/wwwroot/index.html @@ -12,6 +12,12 @@ + + + + + + @@ -25,5 +31,9 @@ + + + + From 9323fa4db07dbc56d08e11ab0b04ced53c8a4d5f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Halil=20=C4=B0brahim=20Kalkan?= Date: Tue, 5 Apr 2022 21:40:48 +0300 Subject: [PATCH 18/90] Update POST.md --- docs/en/Blog-Posts/2022-04-05 v5_2_Release_Stable/POST.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/docs/en/Blog-Posts/2022-04-05 v5_2_Release_Stable/POST.md b/docs/en/Blog-Posts/2022-04-05 v5_2_Release_Stable/POST.md index 3575fb396f..ed83f36e19 100644 --- a/docs/en/Blog-Posts/2022-04-05 v5_2_Release_Stable/POST.md +++ b/docs/en/Blog-Posts/2022-04-05 v5_2_Release_Stable/POST.md @@ -47,3 +47,5 @@ Check [the migration guide](https://docs.abp.io/en/abp/5.2/Migration-Guides/Abp- ## About the Next Version The next feature version will be 5.3. It is planned to release the 5.3 RC (Release Candidate) on May 03 and the final version on May 31, 2022. You can follow the [release planning here](https://github.com/abpframework/abp/milestones). + +Please [submit an issue](https://github.com/abpframework/abp/issues/new) if you have any problem with this version. From cf0fa872c6b126882cbce4bacfd5f60d644d5206 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Halil=20=C4=B0brahim=20Kalkan?= Date: Tue, 5 Apr 2022 23:34:58 +0300 Subject: [PATCH 19/90] Fix header levels. --- docs/en/Getting-Started-Create-Solution.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/en/Getting-Started-Create-Solution.md b/docs/en/Getting-Started-Create-Solution.md index 8c62246010..d111637365 100644 --- a/docs/en/Getting-Started-Create-Solution.md +++ b/docs/en/Getting-Started-Create-Solution.md @@ -41,19 +41,19 @@ abp new Acme.BookStore{{if UI == "NG"}} -u angular{{else if UI == "Blazor"}} -u > [ABP CLI document](./CLI.md) covers all of the available commands and options. -## Mobile Development +### Mobile Development If you want to include a [React Native](https://reactnative.dev/) project in your solution, add `-m react-native` (or `--mobile react-native`) argument to project creation command. This is a basic React Native startup template to develop mobile applications integrated to your ABP based backends. See the [Getting Started with the React Native](Getting-Started-React-Native.md) document to learn how to configure and run the React Native application. -### The Solution Structure +## The Solution Structure The solution has a layered structure (based on the [Domain Driven Design](Domain-Driven-Design.md)) and contains unit & integration test projects. See the [application template document](Startup-Templates/Application.md) to understand the solution structure in details. {{ if DB == "Mongo" }} -#### MongoDB Transactions +## MongoDB Transactions The [startup template](Startup-templates/Index.md) **disables** transactions in the `.MongoDB` project by default. If your MongoDB server supports transactions, you can enable it in the *YourProjectMongoDbModule* class's `ConfigureServices` method: From c1b5956431557f60b2b004e4ddfda88e68f8b3b1 Mon Sep 17 00:00:00 2001 From: liangshiwei Date: Wed, 6 Apr 2022 10:43:28 +0800 Subject: [PATCH 20/90] Upgrade AutoMapper to v11 --- framework/src/Volo.Abp.AutoMapper/Volo.Abp.AutoMapper.csproj | 4 ++-- .../Volo/Abp/AutoMapper/AbpAutoMapperModule.cs | 3 ++- .../Volo.Abp.Account.Application.csproj | 2 +- .../Volo.Abp.BackgroundJobs.Domain.csproj | 2 +- .../Volo.Abp.BackgroundJobs.MongoDB.csproj | 2 +- .../Volo.BloggingTestApp.MongoDB.csproj | 2 +- .../Volo.Blogging.Admin.Application.csproj | 2 +- .../Volo.Blogging.Application.csproj | 2 +- .../src/Volo.Blogging.Domain/Volo.Blogging.Domain.csproj | 2 +- .../src/Volo.Blogging.MongoDB/Volo.Blogging.MongoDB.csproj | 2 +- .../Volo.CmsKit.Admin.Application.csproj | 2 +- .../Volo.CmsKit.Application/Volo.CmsKit.Application.csproj | 2 +- .../Volo.CmsKit.Common.Application.csproj | 2 +- .../Volo.CmsKit.Public.Application.csproj | 2 +- .../Volo.Docs.Admin.Application.csproj | 2 +- .../src/Volo.Docs.Application/Volo.Docs.Application.csproj | 2 +- modules/docs/src/Volo.Docs.Domain/Volo.Docs.Domain.csproj | 2 +- modules/docs/src/Volo.Docs.MongoDB/Volo.Docs.MongoDB.csproj | 2 +- .../Volo.Abp.FeatureManagement.Application.csproj | 2 +- .../Volo.Abp.Identity.Application.csproj | 2 +- .../Volo.Abp.Identity.Domain/Volo.Abp.Identity.Domain.csproj | 2 +- .../Volo.Abp.Identity.MongoDB.csproj | 2 +- .../Volo.Abp.PermissionManagement.Application.csproj | 2 +- .../Volo.Abp.SettingManagement.Application.csproj | 2 +- .../Volo.Abp.TenantManagement.Application.csproj | 2 +- .../Volo.Abp.TenantManagement.Domain.csproj | 2 +- .../Volo.Abp.TenantManagement.MongoDB.csproj | 2 +- .../MyCompanyName.MyProjectName.Application.csproj | 2 +- 28 files changed, 30 insertions(+), 29 deletions(-) diff --git a/framework/src/Volo.Abp.AutoMapper/Volo.Abp.AutoMapper.csproj b/framework/src/Volo.Abp.AutoMapper/Volo.Abp.AutoMapper.csproj index 9f028d31ee..32f9da017c 100644 --- a/framework/src/Volo.Abp.AutoMapper/Volo.Abp.AutoMapper.csproj +++ b/framework/src/Volo.Abp.AutoMapper/Volo.Abp.AutoMapper.csproj @@ -4,7 +4,7 @@ - netstandard2.0 + netstandard2.1 Volo.Abp.AutoMapper Volo.Abp.AutoMapper $(AssetTargetFallback);portable-net45+win8+wp8+wpa81; @@ -21,7 +21,7 @@ - + diff --git a/framework/src/Volo.Abp.AutoMapper/Volo/Abp/AutoMapper/AbpAutoMapperModule.cs b/framework/src/Volo.Abp.AutoMapper/Volo/Abp/AutoMapper/AbpAutoMapperModule.cs index 6ed44a6300..18fef842da 100644 --- a/framework/src/Volo.Abp.AutoMapper/Volo/Abp/AutoMapper/AbpAutoMapperModule.cs +++ b/framework/src/Volo.Abp.AutoMapper/Volo/Abp/AutoMapper/AbpAutoMapperModule.cs @@ -1,5 +1,6 @@ using System; using AutoMapper; +using AutoMapper.Internal; using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Options; using Volo.Abp.Auditing; @@ -49,7 +50,7 @@ public class AbpAutoMapperModule : AbpModule { foreach (var profileType in options.ValidatingProfiles) { - config.AssertConfigurationIsValid(((Profile)Activator.CreateInstance(profileType)).ProfileName); + config.Internal().AssertConfigurationIsValid(((Profile)Activator.CreateInstance(profileType)).ProfileName); } } diff --git a/modules/account/src/Volo.Abp.Account.Application/Volo.Abp.Account.Application.csproj b/modules/account/src/Volo.Abp.Account.Application/Volo.Abp.Account.Application.csproj index 3879cf9569..32b27998cc 100644 --- a/modules/account/src/Volo.Abp.Account.Application/Volo.Abp.Account.Application.csproj +++ b/modules/account/src/Volo.Abp.Account.Application/Volo.Abp.Account.Application.csproj @@ -4,7 +4,7 @@ - netstandard2.0 + net6.0 Volo.Abp.Account.Application Volo.Abp.Account.Application true diff --git a/modules/background-jobs/src/Volo.Abp.BackgroundJobs.Domain/Volo.Abp.BackgroundJobs.Domain.csproj b/modules/background-jobs/src/Volo.Abp.BackgroundJobs.Domain/Volo.Abp.BackgroundJobs.Domain.csproj index 7eb9015b73..b46209de47 100644 --- a/modules/background-jobs/src/Volo.Abp.BackgroundJobs.Domain/Volo.Abp.BackgroundJobs.Domain.csproj +++ b/modules/background-jobs/src/Volo.Abp.BackgroundJobs.Domain/Volo.Abp.BackgroundJobs.Domain.csproj @@ -4,7 +4,7 @@ - netstandard2.0 + netstandard2.1 diff --git a/modules/background-jobs/src/Volo.Abp.BackgroundJobs.MongoDB/Volo.Abp.BackgroundJobs.MongoDB.csproj b/modules/background-jobs/src/Volo.Abp.BackgroundJobs.MongoDB/Volo.Abp.BackgroundJobs.MongoDB.csproj index 56c1391ab9..7d29486644 100644 --- a/modules/background-jobs/src/Volo.Abp.BackgroundJobs.MongoDB/Volo.Abp.BackgroundJobs.MongoDB.csproj +++ b/modules/background-jobs/src/Volo.Abp.BackgroundJobs.MongoDB/Volo.Abp.BackgroundJobs.MongoDB.csproj @@ -4,7 +4,7 @@ - netstandard2.0 + netstandard2.1 diff --git a/modules/blogging/app/Volo.BloggingTestApp.MongoDB/Volo.BloggingTestApp.MongoDB.csproj b/modules/blogging/app/Volo.BloggingTestApp.MongoDB/Volo.BloggingTestApp.MongoDB.csproj index a846bb0ca6..e707190be5 100644 --- a/modules/blogging/app/Volo.BloggingTestApp.MongoDB/Volo.BloggingTestApp.MongoDB.csproj +++ b/modules/blogging/app/Volo.BloggingTestApp.MongoDB/Volo.BloggingTestApp.MongoDB.csproj @@ -3,7 +3,7 @@ - netstandard2.0 + netstandard2.1 diff --git a/modules/blogging/src/Volo.Blogging.Admin.Application/Volo.Blogging.Admin.Application.csproj b/modules/blogging/src/Volo.Blogging.Admin.Application/Volo.Blogging.Admin.Application.csproj index 456777e60a..6df6b27bb7 100644 --- a/modules/blogging/src/Volo.Blogging.Admin.Application/Volo.Blogging.Admin.Application.csproj +++ b/modules/blogging/src/Volo.Blogging.Admin.Application/Volo.Blogging.Admin.Application.csproj @@ -4,7 +4,7 @@ - netstandard2.0 + net6.0 Volo.Blogging.Admin.Application Volo.Blogging.Admin.Application diff --git a/modules/blogging/src/Volo.Blogging.Application/Volo.Blogging.Application.csproj b/modules/blogging/src/Volo.Blogging.Application/Volo.Blogging.Application.csproj index 504d32836d..99c491231b 100644 --- a/modules/blogging/src/Volo.Blogging.Application/Volo.Blogging.Application.csproj +++ b/modules/blogging/src/Volo.Blogging.Application/Volo.Blogging.Application.csproj @@ -4,7 +4,7 @@ - netstandard2.0 + net6.0 Volo.Blogging.Application Volo.Blogging.Application diff --git a/modules/blogging/src/Volo.Blogging.Domain/Volo.Blogging.Domain.csproj b/modules/blogging/src/Volo.Blogging.Domain/Volo.Blogging.Domain.csproj index c6c096105b..905494aa41 100644 --- a/modules/blogging/src/Volo.Blogging.Domain/Volo.Blogging.Domain.csproj +++ b/modules/blogging/src/Volo.Blogging.Domain/Volo.Blogging.Domain.csproj @@ -4,7 +4,7 @@ - netstandard2.0 + netstandard2.1 Volo.Blogging.Domain Volo.Blogging.Domain diff --git a/modules/blogging/src/Volo.Blogging.MongoDB/Volo.Blogging.MongoDB.csproj b/modules/blogging/src/Volo.Blogging.MongoDB/Volo.Blogging.MongoDB.csproj index 5019b843f2..83d8759d14 100644 --- a/modules/blogging/src/Volo.Blogging.MongoDB/Volo.Blogging.MongoDB.csproj +++ b/modules/blogging/src/Volo.Blogging.MongoDB/Volo.Blogging.MongoDB.csproj @@ -4,7 +4,7 @@ - netstandard2.0 + netstandard2.1 Volo.Blogging.MongoDB Volo.Blogging.MongoDB diff --git a/modules/cms-kit/src/Volo.CmsKit.Admin.Application/Volo.CmsKit.Admin.Application.csproj b/modules/cms-kit/src/Volo.CmsKit.Admin.Application/Volo.CmsKit.Admin.Application.csproj index bf1ff4f610..684446b1f0 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Admin.Application/Volo.CmsKit.Admin.Application.csproj +++ b/modules/cms-kit/src/Volo.CmsKit.Admin.Application/Volo.CmsKit.Admin.Application.csproj @@ -4,7 +4,7 @@ - netstandard2.0 + net6.0 diff --git a/modules/cms-kit/src/Volo.CmsKit.Application/Volo.CmsKit.Application.csproj b/modules/cms-kit/src/Volo.CmsKit.Application/Volo.CmsKit.Application.csproj index fa1557674e..51282692af 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Application/Volo.CmsKit.Application.csproj +++ b/modules/cms-kit/src/Volo.CmsKit.Application/Volo.CmsKit.Application.csproj @@ -4,7 +4,7 @@ - netstandard2.0 + net6.0 diff --git a/modules/cms-kit/src/Volo.CmsKit.Common.Application/Volo.CmsKit.Common.Application.csproj b/modules/cms-kit/src/Volo.CmsKit.Common.Application/Volo.CmsKit.Common.Application.csproj index 1d7baff506..145c7adac6 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Common.Application/Volo.CmsKit.Common.Application.csproj +++ b/modules/cms-kit/src/Volo.CmsKit.Common.Application/Volo.CmsKit.Common.Application.csproj @@ -4,7 +4,7 @@ - netstandard2.0 + net6.0 diff --git a/modules/cms-kit/src/Volo.CmsKit.Public.Application/Volo.CmsKit.Public.Application.csproj b/modules/cms-kit/src/Volo.CmsKit.Public.Application/Volo.CmsKit.Public.Application.csproj index 702523e3c6..0e192cec7a 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Public.Application/Volo.CmsKit.Public.Application.csproj +++ b/modules/cms-kit/src/Volo.CmsKit.Public.Application/Volo.CmsKit.Public.Application.csproj @@ -4,7 +4,7 @@ - netstandard2.0 + net6.0 diff --git a/modules/docs/src/Volo.Docs.Admin.Application/Volo.Docs.Admin.Application.csproj b/modules/docs/src/Volo.Docs.Admin.Application/Volo.Docs.Admin.Application.csproj index e3d556c9e0..72f94bdd47 100644 --- a/modules/docs/src/Volo.Docs.Admin.Application/Volo.Docs.Admin.Application.csproj +++ b/modules/docs/src/Volo.Docs.Admin.Application/Volo.Docs.Admin.Application.csproj @@ -4,7 +4,7 @@ - netstandard2.0 + net6.0 Volo.Docs.Admin.Application Volo.Docs.Admin.Application diff --git a/modules/docs/src/Volo.Docs.Application/Volo.Docs.Application.csproj b/modules/docs/src/Volo.Docs.Application/Volo.Docs.Application.csproj index 788edd430d..b00754b104 100644 --- a/modules/docs/src/Volo.Docs.Application/Volo.Docs.Application.csproj +++ b/modules/docs/src/Volo.Docs.Application/Volo.Docs.Application.csproj @@ -4,7 +4,7 @@ - netstandard2.0 + net6.0 Volo.Docs.Application Volo.Docs.Application diff --git a/modules/docs/src/Volo.Docs.Domain/Volo.Docs.Domain.csproj b/modules/docs/src/Volo.Docs.Domain/Volo.Docs.Domain.csproj index b68893b40b..29020e50bc 100644 --- a/modules/docs/src/Volo.Docs.Domain/Volo.Docs.Domain.csproj +++ b/modules/docs/src/Volo.Docs.Domain/Volo.Docs.Domain.csproj @@ -4,7 +4,7 @@ - netstandard2.0 + netstandard2.1 Volo.Docs.Domain Volo.Docs.Domain true diff --git a/modules/docs/src/Volo.Docs.MongoDB/Volo.Docs.MongoDB.csproj b/modules/docs/src/Volo.Docs.MongoDB/Volo.Docs.MongoDB.csproj index 9a5cd19550..25994142c5 100644 --- a/modules/docs/src/Volo.Docs.MongoDB/Volo.Docs.MongoDB.csproj +++ b/modules/docs/src/Volo.Docs.MongoDB/Volo.Docs.MongoDB.csproj @@ -4,7 +4,7 @@ - netstandard2.0 + netstandard2.1 Volo.Docs.MongoDB Volo.Docs.MongoDB diff --git a/modules/feature-management/src/Volo.Abp.FeatureManagement.Application/Volo.Abp.FeatureManagement.Application.csproj b/modules/feature-management/src/Volo.Abp.FeatureManagement.Application/Volo.Abp.FeatureManagement.Application.csproj index b2f186ce71..4ea705d8ef 100644 --- a/modules/feature-management/src/Volo.Abp.FeatureManagement.Application/Volo.Abp.FeatureManagement.Application.csproj +++ b/modules/feature-management/src/Volo.Abp.FeatureManagement.Application/Volo.Abp.FeatureManagement.Application.csproj @@ -4,7 +4,7 @@ - netstandard2.0 + net6.0 diff --git a/modules/identity/src/Volo.Abp.Identity.Application/Volo.Abp.Identity.Application.csproj b/modules/identity/src/Volo.Abp.Identity.Application/Volo.Abp.Identity.Application.csproj index fc01ba4400..4698a381fa 100644 --- a/modules/identity/src/Volo.Abp.Identity.Application/Volo.Abp.Identity.Application.csproj +++ b/modules/identity/src/Volo.Abp.Identity.Application/Volo.Abp.Identity.Application.csproj @@ -4,7 +4,7 @@ - netstandard2.0 + net6.0 Volo.Abp.Identity.Application Volo.Abp.Identity.Application $(AssetTargetFallback);portable-net45+win8+wp8+wpa81; diff --git a/modules/identity/src/Volo.Abp.Identity.Domain/Volo.Abp.Identity.Domain.csproj b/modules/identity/src/Volo.Abp.Identity.Domain/Volo.Abp.Identity.Domain.csproj index e951457688..5e20e76f3f 100644 --- a/modules/identity/src/Volo.Abp.Identity.Domain/Volo.Abp.Identity.Domain.csproj +++ b/modules/identity/src/Volo.Abp.Identity.Domain/Volo.Abp.Identity.Domain.csproj @@ -4,7 +4,7 @@ - netstandard2.0 + netstandard2.1 Volo.Abp.Identity.Domain Volo.Abp.Identity.Domain $(AssetTargetFallback);portable-net45+win8+wp8+wpa81; diff --git a/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo.Abp.Identity.MongoDB.csproj b/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo.Abp.Identity.MongoDB.csproj index 762582ef67..96e949d6d5 100644 --- a/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo.Abp.Identity.MongoDB.csproj +++ b/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo.Abp.Identity.MongoDB.csproj @@ -4,7 +4,7 @@ - netstandard2.0 + netstandard2.1 Volo.Abp.Identity.MongoDB Volo.Abp.Identity.MongoDB $(AssetTargetFallback);portable-net45+win8+wp8+wpa81; diff --git a/modules/permission-management/src/Volo.Abp.PermissionManagement.Application/Volo.Abp.PermissionManagement.Application.csproj b/modules/permission-management/src/Volo.Abp.PermissionManagement.Application/Volo.Abp.PermissionManagement.Application.csproj index d81f87d28c..080432db39 100644 --- a/modules/permission-management/src/Volo.Abp.PermissionManagement.Application/Volo.Abp.PermissionManagement.Application.csproj +++ b/modules/permission-management/src/Volo.Abp.PermissionManagement.Application/Volo.Abp.PermissionManagement.Application.csproj @@ -4,7 +4,7 @@ - netstandard2.0 + net6.0 Volo.Abp.PermissionManagement.Application Volo.Abp.PermissionManagement.Application $(AssetTargetFallback);portable-net45+win8+wp8+wpa81; diff --git a/modules/setting-management/src/Volo.Abp.SettingManagement.Application/Volo.Abp.SettingManagement.Application.csproj b/modules/setting-management/src/Volo.Abp.SettingManagement.Application/Volo.Abp.SettingManagement.Application.csproj index 0ea73276ff..8061d285e7 100644 --- a/modules/setting-management/src/Volo.Abp.SettingManagement.Application/Volo.Abp.SettingManagement.Application.csproj +++ b/modules/setting-management/src/Volo.Abp.SettingManagement.Application/Volo.Abp.SettingManagement.Application.csproj @@ -4,7 +4,7 @@ - netstandard2.0 + net6.0 diff --git a/modules/tenant-management/src/Volo.Abp.TenantManagement.Application/Volo.Abp.TenantManagement.Application.csproj b/modules/tenant-management/src/Volo.Abp.TenantManagement.Application/Volo.Abp.TenantManagement.Application.csproj index 3c9da24d7e..25e39ab17c 100644 --- a/modules/tenant-management/src/Volo.Abp.TenantManagement.Application/Volo.Abp.TenantManagement.Application.csproj +++ b/modules/tenant-management/src/Volo.Abp.TenantManagement.Application/Volo.Abp.TenantManagement.Application.csproj @@ -4,7 +4,7 @@ - netstandard2.0 + net6.0 Volo.Abp.TenantManagement.Application Volo.Abp.TenantManagement.Application $(AssetTargetFallback);portable-net45+win8+wp8+wpa81; diff --git a/modules/tenant-management/src/Volo.Abp.TenantManagement.Domain/Volo.Abp.TenantManagement.Domain.csproj b/modules/tenant-management/src/Volo.Abp.TenantManagement.Domain/Volo.Abp.TenantManagement.Domain.csproj index 5de64b7a1d..f461433d14 100644 --- a/modules/tenant-management/src/Volo.Abp.TenantManagement.Domain/Volo.Abp.TenantManagement.Domain.csproj +++ b/modules/tenant-management/src/Volo.Abp.TenantManagement.Domain/Volo.Abp.TenantManagement.Domain.csproj @@ -4,7 +4,7 @@ - netstandard2.0 + netstandard2.1 Volo.Abp.TenantManagement.Domain Volo.Abp.TenantManagement.Domain $(AssetTargetFallback);portable-net45+win8+wp8+wpa81; diff --git a/modules/tenant-management/src/Volo.Abp.TenantManagement.MongoDB/Volo.Abp.TenantManagement.MongoDB.csproj b/modules/tenant-management/src/Volo.Abp.TenantManagement.MongoDB/Volo.Abp.TenantManagement.MongoDB.csproj index dd8726dccb..d10686b721 100644 --- a/modules/tenant-management/src/Volo.Abp.TenantManagement.MongoDB/Volo.Abp.TenantManagement.MongoDB.csproj +++ b/modules/tenant-management/src/Volo.Abp.TenantManagement.MongoDB/Volo.Abp.TenantManagement.MongoDB.csproj @@ -4,7 +4,7 @@ - netstandard2.0 + netstandard2.1 Volo.Abp.TenantManagement.MongoDB Volo.Abp.TenantManagement.MongoDB $(AssetTargetFallback);portable-net45+win8+wp8+wpa81; diff --git a/templates/module/aspnet-core/src/MyCompanyName.MyProjectName.Application/MyCompanyName.MyProjectName.Application.csproj b/templates/module/aspnet-core/src/MyCompanyName.MyProjectName.Application/MyCompanyName.MyProjectName.Application.csproj index c24b0db2a5..f97a38e9bf 100644 --- a/templates/module/aspnet-core/src/MyCompanyName.MyProjectName.Application/MyCompanyName.MyProjectName.Application.csproj +++ b/templates/module/aspnet-core/src/MyCompanyName.MyProjectName.Application/MyCompanyName.MyProjectName.Application.csproj @@ -3,7 +3,7 @@ - netstandard2.0 + net6.0 MyCompanyName.MyProjectName From ab1e9ee166c77bc75db3454efcd09d0b8289f663 Mon Sep 17 00:00:00 2001 From: enisn Date: Wed, 6 Apr 2022 11:25:41 +0300 Subject: [PATCH 21/90] Grammatical fixes on CLI.md --- docs/en/CLI.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/en/CLI.md b/docs/en/CLI.md index d381290508..6d5ed901c0 100644 --- a/docs/en/CLI.md +++ b/docs/en/CLI.md @@ -18,13 +18,13 @@ dotnet tool update -g Volo.Abp.Cli ## Global Options -While each command may have a set of options, there are some global options those can be used with any command; +While each command may have a set of options, there are some global options that can be used with any command; * `--skip-cli-version-check`: Skips to check the latest version of the ABP CLI. If you don't specify, it will check the latest version and shows a warning message if there is a newer version of the ABP CLI. ## Commands -Here, the list of all available commands before explaining their details: +Here, is the list of all available commands before explaining their details: * **`help`**: Shows help on the usage of the ABP CLI. * **`new`**: Generates a new solution based on the ABP [startup templates](Startup-Templates/Index.md). From 659d2da2daf11d32622931f1b9d73eb7785419f4 Mon Sep 17 00:00:00 2001 From: enisn Date: Wed, 6 Apr 2022 11:26:16 +0300 Subject: [PATCH 22/90] Add `--pwa` option description to CLI.md --- docs/en/CLI.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/en/CLI.md b/docs/en/CLI.md index 6d5ed901c0..72fe0cf221 100644 --- a/docs/en/CLI.md +++ b/docs/en/CLI.md @@ -115,6 +115,7 @@ For more samples, go to [ABP CLI Create Solution Samples](CLI-New-Command-Sample * `--database-provider` or `-d`: Specifies the database provider. Default provider is `ef`. Available providers: * `ef`: Entity Framework Core. * `mongodb`: MongoDB. + * `--pwa`: Specifies to Configure Angular or Blazor WebAssembly project as Progressive Web Application. * `--output-folder` or `-o`: Specifies the output folder. Default value is the current directory. * `--version` or `-v`: Specifies the ABP & template version. It can be a [release tag](https://github.com/abpframework/abp/releases) or a [branch name](https://github.com/abpframework/abp/branches). Uses the latest release if not specified. Most of the times, you will want to use the latest version. * `--preview`: Use latest preview version. From f2de6d56b99ef1ddb1566a25dad12fb3c6272795 Mon Sep 17 00:00:00 2001 From: Engincan VESKE Date: Wed, 6 Apr 2022 11:31:53 +0300 Subject: [PATCH 23/90] Create community article about Concurrency Check in ABP --- .../POST.md | 552 ++++++++++++++++++ .../concurrency-mismatch.gif | Bin 0 -> 1237571 bytes .../optimistic-concurrency.png | Bin 0 -> 21478 bytes 3 files changed, 552 insertions(+) create mode 100644 docs/en/Community-Articles/2022-04-06-Concurrency-Check-in-ABP-Based-Applications/POST.md create mode 100644 docs/en/Community-Articles/2022-04-06-Concurrency-Check-in-ABP-Based-Applications/concurrency-mismatch.gif create mode 100644 docs/en/Community-Articles/2022-04-06-Concurrency-Check-in-ABP-Based-Applications/optimistic-concurrency.png diff --git a/docs/en/Community-Articles/2022-04-06-Concurrency-Check-in-ABP-Based-Applications/POST.md b/docs/en/Community-Articles/2022-04-06-Concurrency-Check-in-ABP-Based-Applications/POST.md new file mode 100644 index 0000000000..4a594669ec --- /dev/null +++ b/docs/en/Community-Articles/2022-04-06-Concurrency-Check-in-ABP-Based-Applications/POST.md @@ -0,0 +1,552 @@ +# Concurrency Check in ABP Based Applications + +In this article, we'll create a basic application to demonstrate how "Concurrency Check/Control" can be done in an ABP based application. + +## Creating the Solution + +For this article, we can create a simple BookStore application and perform CRUD operations. + +> To keep the article simple and shor, we'll only add **Book** entity and ignore the **Author** part. + +We can create a new startup template with EF Core as a database provider and MVC for the UI Framework. + +> If you already have a project, you don't need to create a new startup template, you can directly implement the following steps to your project. So you can skip this section. + +We can create a new startup template by using the [ABP CLI](https://docs.abp.io/en/abp/latest/CLI). + +```bash +abp new Acme.BookStore -t app -csf +``` + +After running the above command, our project boilerplate will be downloaded. Then we can open the solution and start to the development. + +## Starting the Development + +Let's start with defining our entities. + +### Creating Entitites + +Create a `Book.cs` (/Books/Book.cs) class in the `.Domain` layer: + +```csharp +public class Book : AuditedAggregateRoot +{ + public string Name { get; set; } + + public BookType Type { get; set; } + + public DateTime PublishDate { get; set; } + + public float Price { get; set; } +} +``` + +* To enable **Concurrency Check** for our entities, our entities should implement the `IHasConcurrencyStamp` interface, directly or indirectly. + +* [Aggregate Root](https://docs.abp.io/en/abp/5.2/Entities#aggregateroot-class) entity classes already implement the `IHasConcurrencyStamp` interface, so if we inherit our entities from one of these entity classes we don't need to manually implement the `IHasConcurrencyStamp` interface. + +* And we've derieved the `Book` entity from `AuditedAggregateRoot` here, so we don't need to implement `IHasConcurrencyStamp` interface because `AuditedAggregateRoot` class is already implement the `IHasConcurrencyStamp` interface. + +> You can read more details from the [Concurreny Check](https://docs.abp.io/en/abp/5.2/Concurrency-Check) documentation. + +Then, create a `BookType` (/Books/BookType.cs) enum in the `.Domain.Shared` layer: + +```csharp +public enum BookType +{ + Undefined, + Adventure, + Biography, + Dystopia, + Fantastic, + Horror, + Science, + ScienceFiction, + Poetry +} +``` + +### Database Integration + +Open the `BookStoreDbContext` (/EntityFrameworkCore/BookStoreDbContext.cs) class in the `*.EntityFrameworkCore` project and add the following `DbSet` statement: + +```csharp +namespace Acme.BookStore.EntityFrameworkCore; + +[ReplaceDbContext(typeof(IIdentityDbContext))] +[ReplaceDbContext(typeof(ITenantManagementDbContext))] +[ConnectionStringName("Default")] +public class BookStoreDbContext : + AbpDbContext, + IIdentityDbContext, + ITenantManagementDbContext +{ + //Entities from the modules + + public DbSet Books { get; set; } //add this line +} +``` + +Then we can navigate to the `OnModelCreating` method in the same class and configure our tables/entities: + +```csharp +protected override void OnModelCreating(ModelBuilder builder) +{ + base.OnModelCreating(builder); + + /* Include modules to your migration db context */ + + builder.ConfigurePermissionManagement(); + ... + + //* Configure your own tables/entities inside here */ + + builder.Entity(b => + { + b.ToTable(BookStoreConsts.DbTablePrefix + "Books", + BookStoreConsts.DbSchema); + b.ConfigureByConvention(); //auto configure for the base class props + b.Property(x => x.Name).IsRequired().HasMaxLength(128); + }); +} +``` + +After the mapping configurations, we can create a new migration and apply changes to the database. + +To do this, open your command line terminal in the directory of the `EntityFrameworkCore` project and run the below command: + +```bash +dotnet ef migrations add Added_Books +``` + +After this command a new migration will be generated and then we can run the `*.DbMigrator` project to apply the last changes to the database such as creating a new table named `Books` according to the lastly created migration. + +### Defining DTOs and Application Service Interfaces + +We can start to define the use cases of the application. + +Create the DTO classes (under **Books** folder) in the `Application.Contracts` project: + +* **BookDto.cs** + +```csharp +public class BookDto : AuditedEntityDto, IHasConcurrencyStamp +{ + public string Name { get; set; } + + public BookType Type { get; set; } + + public DateTime PublishDate { get; set; } + + public float Price { get; set; } + + public string ConcurrencyStamp { get; set; } +} +``` + +* `AuditedEntityDto` class is not implemented from the `IHasConcurrencyStamp` interface, so for **BookDto** class we need to implement the `IHasConcurrencyStamp`. + +* This is important, because we need to return books with their **ConcurrencyStamp** value. + +* **CreateBookDto.cs** + +```csharp +public class CreateBookDto +{ + [Required] + [StringLength(128)] + public string Name { get; set; } + + [Required] + public BookType Type { get; set; } = BookType.Undefined; + + [Required] + [DataType(DataType.Date)] + public DateTime PublishDate { get; set; } = DateTime.Now; + + [Required] + public float Price { get; set; } +} +``` + +* **UpdateBookDto.cs** + +```csharp +public class UpdateBookDto : IHasConcurrencyStamp +{ + [Required] + [StringLength(128)] + public string Name { get; set; } + + [Required] + public BookType Type { get; set; } = BookType.Undefined; + + [Required] + [DataType(DataType.Date)] + public DateTime PublishDate { get; set; } = DateTime.Now; + + [Required] + public float Price { get; set; } + + public string ConcurrencyStamp { get; set; } +} +``` + +* Here, we've also implemented the `IHasConcurrencyStamp` interface for the **UpdateBookDto** class. + +* We will use this value while updating an existing book. ABP Framework will compare the current book's **ConcurrencyStamp** value with the provided one, if values are matched, this means everything is as it is supposed to be and will update the record. + +* If values are mismatched, then it means record that we're trying to update is already updated by an other user and we need to get the latest changes to be able to make changes on it. + +* Also, in that case, `AbpDbConcurrencyException` will be thrown by the ABP Framework and we can either handle this exception manually or let the ABP Framework handle it behalf of use and shows a user-friendly error message as in the image below. + +![](./optimistic-concurrency.png) + +Create a new `IBookAppService` (/Books/IBookAppService.cs) interface in the `Application.Contracts` project: + +```csharp +public interface IBookAppService : + ICrudAppService +{ +} +``` +* We've implemented the `ICrudAppService` here, because we just need to perform CRUD operations and this interface help us to define common CRUD operation methods. + +### Application Service Implementations + +Create a `BookAppService` (/Books/BookAppService.cs) class inside the `*.Application` project and implement the application service methods, as shown below: + +```csharp +public class BookAppService : + CrudAppService, + IBookAppService +{ + public BookAppService(IRepository repository) + : base(repository) + { + } + + public override async Task UpdateAsync(Guid id, UpdateBookDto input) + { + var book = await Repository.GetAsync(id); + + book.Name = input.Name; + book.Price = input.Price; + book.Type = input.Type; + book.PublishDate = input.PublishDate; + + book.SetConcurrencyStampIfNotNull(input.ConcurrencyStamp); + + var updatedBook = await Repository.UpdateAsync(book); + return ObjectMapper.Map(updatedBook); + } +} +``` + +* He've used the `CrudAppService` base class. This class implements the all common CRUD operations and if we want to change a method, we can simply override the method and change it by our needs. + +> Normally, you don't need to override the `UpdateAsync` method to do **Concurrency Check**. I wanted to override this method to show what we need to do for **Concurrency Check**. + +* We can look closer to the `UpdateAsync` method here, because as we've mentioned earlier we need to pass the provided **ConcurrencyStamp** value to be able to do **Concurrency Check/Control** to our entity while updating. We've used the `SetConcurrencyStampIfNotNull` extension method to set the **ConcurrencyStamp** value to our entity and update the record. + +* In that point, if the given record already updated by any other user, **ConcurrencyStamp** mismatch will occur and `AbpDbConcurrencyException` will be thrown and thanks to **Concurrency Check** system of ABP, data-consistency will be provided and the current record won't be overrided. + +* And if the values are matched, the record will be updated successfully. + +After implementing the application service methods, we can do the related mapping configurations, so open the `BookStoreApplicationAutoMapperProfile.cs` and update the content as below: + +```csharp +public class BookStoreApplicationAutoMapperProfile : Profile +{ + public BookStoreApplicationAutoMapperProfile() + { + CreateMap(); + CreateMap(); + } +} +``` + +### User Interface + +So far, we've applied the all neccessary steps for the **Concurrency Check** system, let's see it in the action. + +Create a razor page in the `.Web` layer named `Index` (**/Pages/Books/Index.cshtml**), open this file and replace the content with the following code block: + +```html +@page +@using Acme.BookStore.Localization +@using Microsoft.Extensions.Localization +@model Acme.BookStore.Web.Pages.Books.Index + +@section scripts +{ + +} + + + + + + Books + + + + + + + + + + +``` + +* We've defined a table and "New Book" button inside a card element here, we'll fill the table with our book records in the next step by using the **Datatables** library. + +Create a `Index.js` (**/Pages/Books/Index.js**) file and add the following code block: + +```js +$(function () { + var l = abp.localization.getResource('BookStore'); + var createModal = new abp.ModalManager(abp.appPath + 'Books/CreateModal'); + var editModal = new abp.ModalManager(abp.appPath + 'Books/EditModal'); + + var dataTable = $('#BooksTable').DataTable( + abp.libs.datatables.normalizeConfiguration({ + serverSide: true, + paging: true, + order: [[1, "asc"]], + searching: false, + scrollX: true, + ajax: abp.libs.datatables.createAjax(acme.bookStore.books.book.getList), + columnDefs: [ + { + title: l('Actions'), + rowAction: { + items: + [ + { + text: l('Edit'), + action: function (data) { + editModal.open({ id: data.record.id }); + } + } + ] + } + }, + { + title: l('Name'), + data: "name" + }, + { + title: l('Type'), + data: "type", + render: function (data) { + return l('Enum:BookType:' + data); + } + }, + { + title: l('PublishDate'), + data: "publishDate", + render: function (data) { + return luxon + .DateTime + .fromISO(data, { + locale: abp.localization.currentCulture.name + }).toLocaleString(); + } + }, + { + title: l('Price'), + data: "price" + }, + { + title: l('CreationTime'), + data: "creationTime", + render: function (data) { + return luxon + .DateTime + .fromISO(data, { + locale: abp.localization.currentCulture.name + }).toLocaleString(luxon.DateTime.DATETIME_SHORT); + } + } + ] + }) + ); + + createModal.onResult(function () { + dataTable.ajax.reload(); + }); + + editModal.onResult(function () { + dataTable.ajax.reload(); + }); + + $('#NewBookButton').click(function (e) { + e.preventDefault(); + createModal.open(); + }); +}); +``` + +* We've used the [Datatables](https://datatables.net/) to list our books. + +* Also defined **create** and **update** modals by using [ABP Modal Manager](https://docs.abp.io/en/abp/latest/UI/AspNetCore/Modals#modalmanager-reference), but we didn't create them yet, so let's create the modals. + +First, create **CreateModal** razor page and update the **CreateModal.cshtml** and **CreateModal.cshtml.cs** files as below: + +* **CreateModal.cshtml** + +```html +@page +@using Acme.BookStore.Web.Pages.Books +@using Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.TagHelpers.Modal +@model CreateModalModel +@{ + Layout = null; +} + + + + + + + + + +``` + +* We've used `abp-dynamic-form` tag-helper and pass it a `Book` model, this tag helper will simply create form contents (inputs, select boxes etc.) behalf of us. + +* **CreateModal.cshtml.cs** + +```csharp +using System.Threading.Tasks; +using Acme.BookStore.Books; +using Microsoft.AspNetCore.Mvc; + +namespace Acme.BookStore.Web.Pages.Books; + +public class CreateModalModel : BookStorePageModel +{ + [BindProperty] + public CreateBookDto Book { get; set; } + + private readonly IBookAppService _bookAppService; + + public CreateModalModel(IBookAppService bookAppService) + { + _bookAppService = bookAppService; + } + + public void OnGet() + { + Book = new CreateBookDto(); + } + + public async Task OnPostAsync() + { + await _bookAppService.CreateAsync(Book); + return NoContent(); + } +} +``` + +* In this file, we simply define **CreateBookDto** as bind property and we'll use this classes' properties in the form. Thanks to the `abp-dynamic-form` tag-helper we don't need to define all of this form elements one by one, it will generate behalf of us. + +We can create **EditModal** razor page and update the **EditModal.cshtml** and **EditModal.cshtml.cs** files as below: + +* **EditModal.cshtml** + +```html +@page +@using Acme.BookStore.Web.Pages.Books +@using Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.TagHelpers.Modal +@model EditModalModel +@{ + Layout = null; +} + + + + + + + + + + + + + + +``` + +* Here, we didn't use the `abp-dynamic-form` tag-helper and add all neccessary form elements to our form one by one. + +* As you may notice, we've set input type as **hidden** for the **ConcurrencyStamp** input, because end-user should not see this value. + +> Instead of doing it like that, we could create a view model class and use the `[HiddenInput]` data attribute for the **ConcurrencyStamp** property and use the `abp-dynamic-form` tag-helper. But to simplify the article I didn't want to do that, if you want you can create a view model and define the neccessary data attributes for properties. + +* **EditModal.cshtml.cs** + +```csharp +public class EditModalModel : BookStorePageModel +{ + [HiddenInput] + [BindProperty(SupportsGet = true)] + public Guid Id { get; set; } + + [BindProperty] + public UpdateBookDto Book { get; set; } + + private readonly IBookAppService _bookAppService; + + public EditModalModel(IBookAppService bookAppService) + { + _bookAppService = bookAppService; + } + + public async Task OnGetAsync() + { + var bookDto = await _bookAppService.GetAsync(Id); + Book = ObjectMapper.Map(bookDto); + } + + public async Task OnPostAsync() + { + await _bookAppService.UpdateAsync(Id, Book); + return NoContent(); + } +} +``` + +Lastly, we can define the neccessary mapping configurations and run the application to see results. + +Open the `BookStoreWebAutoMapperProfile.cs` and update the content as below: + +```csharp +public class BookStoreWebAutoMapperProfile : Profile +{ + public BookStoreWebAutoMapperProfile() + { + CreateMap(); + } +} +``` + +Then we can run the application, navigates to **/Books** endpoint and see the result. + +![](concurrency-mismatch.gif) + +* In the image above, we can see that multiple users open the edit model to change a record and try to update the relevant record independently of each other. + +* After the first user updated the record, the second user tries to update the same record without getting the last state of the record. And therefore `AbpDbConcurrencyException` is thrown because **ConcurrencyStamp** values are different from each other. + +* The second user should close and re-open the model to get the last state of the record and then he/she can make changes to the current record. + + +Thanks for reading the article. \ No newline at end of file diff --git a/docs/en/Community-Articles/2022-04-06-Concurrency-Check-in-ABP-Based-Applications/concurrency-mismatch.gif b/docs/en/Community-Articles/2022-04-06-Concurrency-Check-in-ABP-Based-Applications/concurrency-mismatch.gif new file mode 100644 index 0000000000000000000000000000000000000000..922bb5b7cac20d196fd54a3a01dc69887d503ac6 GIT binary patch literal 1237571 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

3@ueQ4j36av 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 z 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 P8GdQVTMf|(?Pc5M%vj?y1?ZnrWQAd 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�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%0DAj}33LXcvyq>oO4 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�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≠W!8ZlL(m>A!zJ)0T;f~6g6eT)_#qj&JjI^f|Z>a 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 literal 0 HcmV?d00001 diff --git a/docs/en/Community-Articles/2022-04-06-Concurrency-Check-in-ABP-Based-Applications/optimistic-concurrency.png b/docs/en/Community-Articles/2022-04-06-Concurrency-Check-in-ABP-Based-Applications/optimistic-concurrency.png new file mode 100644 index 0000000000000000000000000000000000000000..85253594c846f221366a20897350a3d6305486b3 GIT binary patch literal 21478 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 literal 0 HcmV?d00001 From daa15f93eb7e129df4d311da5a9e930cae8863ec Mon Sep 17 00:00:00 2001 From: Engincan VESKE Date: Wed, 6 Apr 2022 11:48:50 +0300 Subject: [PATCH 24/90] Update POST.md --- .../POST.md | 57 +++++++++---------- 1 file changed, 27 insertions(+), 30 deletions(-) diff --git a/docs/en/Community-Articles/2022-04-06-Concurrency-Check-in-ABP-Based-Applications/POST.md b/docs/en/Community-Articles/2022-04-06-Concurrency-Check-in-ABP-Based-Applications/POST.md index 4a594669ec..396da20f86 100644 --- a/docs/en/Community-Articles/2022-04-06-Concurrency-Check-in-ABP-Based-Applications/POST.md +++ b/docs/en/Community-Articles/2022-04-06-Concurrency-Check-in-ABP-Based-Applications/POST.md @@ -6,7 +6,7 @@ In this article, we'll create a basic application to demonstrate how "Concurrenc For this article, we can create a simple BookStore application and perform CRUD operations. -> To keep the article simple and shor, we'll only add **Book** entity and ignore the **Author** part. +> To keep the article simple and short, we'll only add the **Book** entity and ignore the **Author** part. We can create a new startup template with EF Core as a database provider and MVC for the UI Framework. @@ -24,7 +24,7 @@ After running the above command, our project boilerplate will be downloaded. The Let's start with defining our entities. -### Creating Entitites +### Creating Entities Create a `Book.cs` (/Books/Book.cs) class in the `.Domain` layer: @@ -45,9 +45,9 @@ public class Book : AuditedAggregateRoot * [Aggregate Root](https://docs.abp.io/en/abp/5.2/Entities#aggregateroot-class) entity classes already implement the `IHasConcurrencyStamp` interface, so if we inherit our entities from one of these entity classes we don't need to manually implement the `IHasConcurrencyStamp` interface. -* And we've derieved the `Book` entity from `AuditedAggregateRoot` here, so we don't need to implement `IHasConcurrencyStamp` interface because `AuditedAggregateRoot` class is already implement the `IHasConcurrencyStamp` interface. +* And we've derived the `Book` entity from `AuditedAggregateRoot` here, so we don't need to implement the `IHasConcurrencyStamp` interface because `AuditedAggregateRoot` class is already implemented the `IHasConcurrencyStamp` interface. -> You can read more details from the [Concurreny Check](https://docs.abp.io/en/abp/5.2/Concurrency-Check) documentation. +> You can read more details from the [Concurrency Check](https://docs.abp.io/en/abp/5.2/Concurrency-Check) documentation. Then, create a `BookType` (/Books/BookType.cs) enum in the `.Domain.Shared` layer: @@ -119,15 +119,15 @@ To do this, open your command line terminal in the directory of the `EntityFrame dotnet ef migrations add Added_Books ``` -After this command a new migration will be generated and then we can run the `*.DbMigrator` project to apply the last changes to the database such as creating a new table named `Books` according to the lastly created migration. +After this command, a new migration will be generated and then we can run the `*.DbMigrator` project to apply the last changes to the database such as creating a new table named `Books` according to the lastly created migration. ### Defining DTOs and Application Service Interfaces We can start to define the use cases of the application. -Create the DTO classes (under **Books** folder) in the `Application.Contracts` project: +Create the DTO classes (under the **Books** folder) in the `Application.Contracts` project: -* **BookDto.cs** +**BookDto.cs** ```csharp public class BookDto : AuditedEntityDto, IHasConcurrencyStamp @@ -144,11 +144,11 @@ public class BookDto : AuditedEntityDto, IHasConcurrencyStamp } ``` -* `AuditedEntityDto` class is not implemented from the `IHasConcurrencyStamp` interface, so for **BookDto** class we need to implement the `IHasConcurrencyStamp`. +* `AuditedEntityDto` class is not implemented from the `IHasConcurrencyStamp` interface, so for the **BookDto** class we need to implement the `IHasConcurrencyStamp`. * This is important, because we need to return books with their **ConcurrencyStamp** value. -* **CreateBookDto.cs** +**CreateBookDto.cs** ```csharp public class CreateBookDto @@ -169,7 +169,7 @@ public class CreateBookDto } ``` -* **UpdateBookDto.cs** +**UpdateBookDto.cs** ```csharp public class UpdateBookDto : IHasConcurrencyStamp @@ -192,13 +192,13 @@ public class UpdateBookDto : IHasConcurrencyStamp } ``` -* Here, we've also implemented the `IHasConcurrencyStamp` interface for the **UpdateBookDto** class. +* Here, we've implemented the `IHasConcurrencyStamp` interface for the **UpdateBookDto** class. * We will use this value while updating an existing book. ABP Framework will compare the current book's **ConcurrencyStamp** value with the provided one, if values are matched, this means everything is as it is supposed to be and will update the record. -* If values are mismatched, then it means record that we're trying to update is already updated by an other user and we need to get the latest changes to be able to make changes on it. +* If values are mismatched, then it means the record that we're trying to update is already updated by another user and we need to get the latest changes to be able to make changes on it. -* Also, in that case, `AbpDbConcurrencyException` will be thrown by the ABP Framework and we can either handle this exception manually or let the ABP Framework handle it behalf of use and shows a user-friendly error message as in the image below. +* Also, in that case, `AbpDbConcurrencyException` will be thrown by the ABP Framework and we can either handle this exception manually or let the ABP Framework handle it on behalf of use and shows a user-friendly error message as in the image below. ![](./optimistic-concurrency.png) @@ -243,13 +243,13 @@ public class BookAppService : } ``` -* He've used the `CrudAppService` base class. This class implements the all common CRUD operations and if we want to change a method, we can simply override the method and change it by our needs. +* We've used the `CrudAppService` base class. This class implements all common CRUD operations and if we want to change a method, we can simply override the method and change it to our needs. > Normally, you don't need to override the `UpdateAsync` method to do **Concurrency Check**. I wanted to override this method to show what we need to do for **Concurrency Check**. * We can look closer to the `UpdateAsync` method here, because as we've mentioned earlier we need to pass the provided **ConcurrencyStamp** value to be able to do **Concurrency Check/Control** to our entity while updating. We've used the `SetConcurrencyStampIfNotNull` extension method to set the **ConcurrencyStamp** value to our entity and update the record. -* In that point, if the given record already updated by any other user, **ConcurrencyStamp** mismatch will occur and `AbpDbConcurrencyException` will be thrown and thanks to **Concurrency Check** system of ABP, data-consistency will be provided and the current record won't be overrided. +* At that point, if the given record is already updated by any other user, a **ConcurrencyStamp** mismatch will occur and `AbpDbConcurrencyException` will be thrown thanks to **Concurrency Check** system of ABP, data-consistency will be provided and the current record won't be overridden. * And if the values are matched, the record will be updated successfully. @@ -268,7 +268,7 @@ public class BookStoreApplicationAutoMapperProfile : Profile ### User Interface -So far, we've applied the all neccessary steps for the **Concurrency Check** system, let's see it in the action. +So far, we've applied the all necessary steps for the **Concurrency Check** system, let's see it in the action. Create a razor page in the `.Web` layer named `Index` (**/Pages/Books/Index.cshtml**), open this file and replace the content with the following code block: @@ -305,7 +305,7 @@ Create a razor page in the `.Web` layer named `Index` (**/Pages/Books/Index.csht * We've defined a table and "New Book" button inside a card element here, we'll fill the table with our book records in the next step by using the **Datatables** library. -Create a `Index.js` (**/Pages/Books/Index.js**) file and add the following code block: +Create an `Index.js` (**/Pages/Books/Index.js**) file and add the following code block: ```js $(function () { @@ -398,7 +398,7 @@ $(function () { First, create **CreateModal** razor page and update the **CreateModal.cshtml** and **CreateModal.cshtml.cs** files as below: -* **CreateModal.cshtml** +**CreateModal.cshtml** ```html @page @@ -455,11 +455,11 @@ public class CreateModalModel : BookStorePageModel } ``` -* In this file, we simply define **CreateBookDto** as bind property and we'll use this classes' properties in the form. Thanks to the `abp-dynamic-form` tag-helper we don't need to define all of this form elements one by one, it will generate behalf of us. +* In this file, we simply define **CreateBookDto** as a bind property and we'll use this classes' properties in the form. Thanks to the `abp-dynamic-form` tag-helper we don't need to define all of these form elements one by one, it will generate behalf of us. We can create **EditModal** razor page and update the **EditModal.cshtml** and **EditModal.cshtml.cs** files as below: -* **EditModal.cshtml** +**EditModal.cshtml** ```html @page @@ -485,13 +485,13 @@ We can create **EditModal** razor page and update the **EditModal.cshtml** and * ``` -* Here, we didn't use the `abp-dynamic-form` tag-helper and add all neccessary form elements to our form one by one. +* Here, we didn't use the `abp-dynamic-form` tag-helper and added all necessary form elements to our form one by one. -* As you may notice, we've set input type as **hidden** for the **ConcurrencyStamp** input, because end-user should not see this value. +* As you may notice, we've set the input type as **hidden** for the **ConcurrencyStamp** input, because the end-user should not see this value. -> Instead of doing it like that, we could create a view model class and use the `[HiddenInput]` data attribute for the **ConcurrencyStamp** property and use the `abp-dynamic-form` tag-helper. But to simplify the article I didn't want to do that, if you want you can create a view model and define the neccessary data attributes for properties. +> Instead of doing it like that, we could create a view model class and use the `[HiddenInput]` data attribute for the **ConcurrencyStamp** property and use the `abp-dynamic-form` tag-helper. But to simplify the article I didn't want to do that, if you want you can create a view model and define the necessary data attributes for properties. -* **EditModal.cshtml.cs** +**EditModal.cshtml.cs** ```csharp public class EditModalModel : BookStorePageModel @@ -524,7 +524,7 @@ public class EditModalModel : BookStorePageModel } ``` -Lastly, we can define the neccessary mapping configurations and run the application to see results. +Lastly, we can define the necessary mapping configurations and run the application to see the result. Open the `BookStoreWebAutoMapperProfile.cs` and update the content as below: @@ -538,7 +538,7 @@ public class BookStoreWebAutoMapperProfile : Profile } ``` -Then we can run the application, navigates to **/Books** endpoint and see the result. +Then we can run the application, navigates to the **/Books** endpoint and see the result. ![](concurrency-mismatch.gif) @@ -546,7 +546,4 @@ Then we can run the application, navigates to **/Books** endpoint and see the re * After the first user updated the record, the second user tries to update the same record without getting the last state of the record. And therefore `AbpDbConcurrencyException` is thrown because **ConcurrencyStamp** values are different from each other. -* The second user should close and re-open the model to get the last state of the record and then he/she can make changes to the current record. - - -Thanks for reading the article. \ No newline at end of file +* The second user should close and re-open the model to get the last state of the record and then he/she can make changes to the current record. \ No newline at end of file From 6f3ea6dd19a495b86520b74bdb6383032a91a998 Mon Sep 17 00:00:00 2001 From: Hamza Albreem <94292623+braim23@users.noreply.github.com> Date: Wed, 6 Apr 2022 12:46:26 +0300 Subject: [PATCH 25/90] Quick Grammar Fixes --- .../POST.md | 36 +++++++++---------- 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/docs/en/Community-Articles/2022-04-06-Concurrency-Check-in-ABP-Based-Applications/POST.md b/docs/en/Community-Articles/2022-04-06-Concurrency-Check-in-ABP-Based-Applications/POST.md index 396da20f86..0cd9687374 100644 --- a/docs/en/Community-Articles/2022-04-06-Concurrency-Check-in-ABP-Based-Applications/POST.md +++ b/docs/en/Community-Articles/2022-04-06-Concurrency-Check-in-ABP-Based-Applications/POST.md @@ -18,7 +18,7 @@ We can create a new startup template by using the [ABP CLI](https://docs.abp.io/ abp new Acme.BookStore -t app -csf ``` -After running the above command, our project boilerplate will be downloaded. Then we can open the solution and start to the development. +After running the above command, our project boilerplate will be downloaded. Then we can open the solution and start the development. ## Starting the Development @@ -43,9 +43,9 @@ public class Book : AuditedAggregateRoot * To enable **Concurrency Check** for our entities, our entities should implement the `IHasConcurrencyStamp` interface, directly or indirectly. -* [Aggregate Root](https://docs.abp.io/en/abp/5.2/Entities#aggregateroot-class) entity classes already implement the `IHasConcurrencyStamp` interface, so if we inherit our entities from one of these entity classes we don't need to manually implement the `IHasConcurrencyStamp` interface. +* [Aggregate Root](https://docs.abp.io/en/abp/5.2/Entities#aggregateroot-class) entity classes already implement the `IHasConcurrencyStamp` interface, so if we inherit our entities from one of these entity classes then we won't need to manually implement the `IHasConcurrencyStamp` interface. -* And we've derived the `Book` entity from `AuditedAggregateRoot` here, so we don't need to implement the `IHasConcurrencyStamp` interface because `AuditedAggregateRoot` class is already implemented the `IHasConcurrencyStamp` interface. +* And we've derived the `Book` entity from `AuditedAggregateRoot` here, so we don't need to implement the `IHasConcurrencyStamp` interface because `AuditedAggregateRoot` class already implemented the `IHasConcurrencyStamp` interface. > You can read more details from the [Concurrency Check](https://docs.abp.io/en/abp/5.2/Concurrency-Check) documentation. @@ -119,7 +119,7 @@ To do this, open your command line terminal in the directory of the `EntityFrame dotnet ef migrations add Added_Books ``` -After this command, a new migration will be generated and then we can run the `*.DbMigrator` project to apply the last changes to the database such as creating a new table named `Books` according to the lastly created migration. +After this command, a new migration will be generated and then we can run the `*.DbMigrator` project to apply the last changes to the database such as creating a new table named `Books` according to the last created migration. ### Defining DTOs and Application Service Interfaces @@ -144,7 +144,7 @@ public class BookDto : AuditedEntityDto, IHasConcurrencyStamp } ``` -* `AuditedEntityDto` class is not implemented from the `IHasConcurrencyStamp` interface, so for the **BookDto** class we need to implement the `IHasConcurrencyStamp`. +* The `AuditedEntityDto` class is not implemented from the `IHasConcurrencyStamp` interface, so for the **BookDto** class we need to implement the `IHasConcurrencyStamp`. * This is important, because we need to return books with their **ConcurrencyStamp** value. @@ -198,7 +198,7 @@ public class UpdateBookDto : IHasConcurrencyStamp * If values are mismatched, then it means the record that we're trying to update is already updated by another user and we need to get the latest changes to be able to make changes on it. -* Also, in that case, `AbpDbConcurrencyException` will be thrown by the ABP Framework and we can either handle this exception manually or let the ABP Framework handle it on behalf of use and shows a user-friendly error message as in the image below. +* Also, in that case, `AbpDbConcurrencyException` will be thrown by the ABP Framework and we can either handle this exception manually or let the ABP Framework handle it on behalf of us and show a user-friendly error message as in the image below. ![](./optimistic-concurrency.png) @@ -210,7 +210,7 @@ public interface IBookAppService : { } ``` -* We've implemented the `ICrudAppService` here, because we just need to perform CRUD operations and this interface help us to define common CRUD operation methods. +* We've implemented the `ICrudAppService` here, because we just need to perform CRUD operations and this interface helps us define common CRUD operation methods. ### Application Service Implementations @@ -249,7 +249,7 @@ public class BookAppService : * We can look closer to the `UpdateAsync` method here, because as we've mentioned earlier we need to pass the provided **ConcurrencyStamp** value to be able to do **Concurrency Check/Control** to our entity while updating. We've used the `SetConcurrencyStampIfNotNull` extension method to set the **ConcurrencyStamp** value to our entity and update the record. -* At that point, if the given record is already updated by any other user, a **ConcurrencyStamp** mismatch will occur and `AbpDbConcurrencyException` will be thrown thanks to **Concurrency Check** system of ABP, data-consistency will be provided and the current record won't be overridden. +* At that point, if the given record is already updated by any other user, a **ConcurrencyStamp** mismatch will occur and `AbpDbConcurrencyException` will be thrown thanks to the **Concurrency Check** system of ABP, data-consistency will be provided and the current record won't be overridden. * And if the values are matched, the record will be updated successfully. @@ -268,7 +268,7 @@ public class BookStoreApplicationAutoMapperProfile : Profile ### User Interface -So far, we've applied the all necessary steps for the **Concurrency Check** system, let's see it in the action. +So far, we've applied the all necessary steps for the **Concurrency Check** system, let's see it in action. Create a razor page in the `.Web` layer named `Index` (**/Pages/Books/Index.cshtml**), open this file and replace the content with the following code block: @@ -396,7 +396,7 @@ $(function () { * Also defined **create** and **update** modals by using [ABP Modal Manager](https://docs.abp.io/en/abp/latest/UI/AspNetCore/Modals#modalmanager-reference), but we didn't create them yet, so let's create the modals. -First, create **CreateModal** razor page and update the **CreateModal.cshtml** and **CreateModal.cshtml.cs** files as below: +First, create a **CreateModal** razor page and update the **CreateModal.cshtml** and **CreateModal.cshtml.cs** files as below: **CreateModal.cshtml** @@ -419,7 +419,7 @@ First, create **CreateModal** razor page and update the **CreateModal.cshtml** a ``` -* We've used `abp-dynamic-form` tag-helper and pass it a `Book` model, this tag helper will simply create form contents (inputs, select boxes etc.) behalf of us. +* We've used `abp-dynamic-form` tag-helper and passed it a `Book` model, this tag helper will simply create form contents (inputs, select boxes etc.) on behalf of us. * **CreateModal.cshtml.cs** @@ -455,9 +455,9 @@ public class CreateModalModel : BookStorePageModel } ``` -* In this file, we simply define **CreateBookDto** as a bind property and we'll use this classes' properties in the form. Thanks to the `abp-dynamic-form` tag-helper we don't need to define all of these form elements one by one, it will generate behalf of us. +* In this file, we simply define **CreateBookDto** as a bind property and we'll use this class's properties in the form. Thanks to the `abp-dynamic-form` tag-helper we don't need to define all of these form elements one by one, it will generate on behalf of us. -We can create **EditModal** razor page and update the **EditModal.cshtml** and **EditModal.cshtml.cs** files as below: +We can create an **EditModal** razor page and update the **EditModal.cshtml** and **EditModal.cshtml.cs** files as below: **EditModal.cshtml** @@ -485,9 +485,9 @@ We can create **EditModal** razor page and update the **EditModal.cshtml** and * ``` -* Here, we didn't use the `abp-dynamic-form` tag-helper and added all necessary form elements to our form one by one. +* Here, we didn't use the `abp-dynamic-form` tag-helper and added all the necessary form elements to our form one by one. -* As you may notice, we've set the input type as **hidden** for the **ConcurrencyStamp** input, because the end-user should not see this value. +* As you may have noticed, we've set the input type as **hidden** for the **ConcurrencyStamp** input, because the end-user should not see this value. > Instead of doing it like that, we could create a view model class and use the `[HiddenInput]` data attribute for the **ConcurrencyStamp** property and use the `abp-dynamic-form` tag-helper. But to simplify the article I didn't want to do that, if you want you can create a view model and define the necessary data attributes for properties. @@ -526,7 +526,7 @@ public class EditModalModel : BookStorePageModel Lastly, we can define the necessary mapping configurations and run the application to see the result. -Open the `BookStoreWebAutoMapperProfile.cs` and update the content as below: +Open the `BookStoreWebAutoMapperProfile.cs` class and update the content as below: ```csharp public class BookStoreWebAutoMapperProfile : Profile @@ -538,7 +538,7 @@ public class BookStoreWebAutoMapperProfile : Profile } ``` -Then we can run the application, navigates to the **/Books** endpoint and see the result. +Then we can run the application, navigate to the **/Books** endpoint and see the result. ![](concurrency-mismatch.gif) @@ -546,4 +546,4 @@ Then we can run the application, navigates to the **/Books** endpoint and see th * After the first user updated the record, the second user tries to update the same record without getting the last state of the record. And therefore `AbpDbConcurrencyException` is thrown because **ConcurrencyStamp** values are different from each other. -* The second user should close and re-open the model to get the last state of the record and then he/she can make changes to the current record. \ No newline at end of file +* The second user should close and re-open the model to get the last state of the record and then they can make changes to the current record. From 190367461e46f5d02097a5fadbf467b798a92db9 Mon Sep 17 00:00:00 2001 From: maliming Date: Wed, 6 Apr 2022 20:14:53 +0800 Subject: [PATCH 26/90] Remove `Nullable` from the project files. --- .../MyCompanyName.MyProjectName.Blazor.Server.Mongo.csproj | 1 - .../MyCompanyName.MyProjectName.Blazor.Server.csproj | 1 - .../MyCompanyName.MyProjectName.Host.Mongo.csproj | 1 - .../MyCompanyName.MyProjectName.Host.csproj | 1 - .../MyCompanyName.MyProjectName.Mvc.Mongo.csproj | 1 - .../MyCompanyName.MyProjectName.Mvc.csproj | 1 - 6 files changed, 6 deletions(-) diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/MyCompanyName.MyProjectName.Blazor.Server.Mongo.csproj b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/MyCompanyName.MyProjectName.Blazor.Server.Mongo.csproj index 75dafcaa76..51edce0bf8 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/MyCompanyName.MyProjectName.Blazor.Server.Mongo.csproj +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/MyCompanyName.MyProjectName.Blazor.Server.Mongo.csproj @@ -2,7 +2,6 @@ net6.0 - enable enable diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/MyCompanyName.MyProjectName.Blazor.Server.csproj b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/MyCompanyName.MyProjectName.Blazor.Server.csproj index 6b1c341efd..e25316e4e6 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/MyCompanyName.MyProjectName.Blazor.Server.csproj +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/MyCompanyName.MyProjectName.Blazor.Server.csproj @@ -2,7 +2,6 @@ net6.0 - enable enable diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/MyCompanyName.MyProjectName.Host.Mongo.csproj b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/MyCompanyName.MyProjectName.Host.Mongo.csproj index 8a93f3a417..107dc63fdf 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/MyCompanyName.MyProjectName.Host.Mongo.csproj +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/MyCompanyName.MyProjectName.Host.Mongo.csproj @@ -2,7 +2,6 @@ net6.0 - enable enable diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/MyCompanyName.MyProjectName.Host.csproj b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/MyCompanyName.MyProjectName.Host.csproj index 46de884e66..f64b574e04 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/MyCompanyName.MyProjectName.Host.csproj +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/MyCompanyName.MyProjectName.Host.csproj @@ -2,7 +2,6 @@ net6.0 - enable enable diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/MyCompanyName.MyProjectName.Mvc.Mongo.csproj b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/MyCompanyName.MyProjectName.Mvc.Mongo.csproj index 8b3d25ded1..931673cf5a 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/MyCompanyName.MyProjectName.Mvc.Mongo.csproj +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/MyCompanyName.MyProjectName.Mvc.Mongo.csproj @@ -2,7 +2,6 @@ net6.0 - enable enable diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/MyCompanyName.MyProjectName.Mvc.csproj b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/MyCompanyName.MyProjectName.Mvc.csproj index c65431f1ae..bf1248ff0d 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/MyCompanyName.MyProjectName.Mvc.csproj +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/MyCompanyName.MyProjectName.Mvc.csproj @@ -2,7 +2,6 @@ net6.0 - enable enable From 1b87d7e7e210f70b00f01c5f5b14457f8a519503 Mon Sep 17 00:00:00 2001 From: Eric Johnson Date: Wed, 6 Apr 2022 15:05:36 -0500 Subject: [PATCH 27/90] Fixed project file encoding to retain existing encoding. --- .../SolutionFileModifier.cs | 29 +++++-- .../VoloNugetPackagesVersionUpdater.cs | 83 +++++++++++++------ 2 files changed, 80 insertions(+), 32 deletions(-) diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectModification/SolutionFileModifier.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectModification/SolutionFileModifier.cs index 08d8fa182d..b78ec017c2 100644 --- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectModification/SolutionFileModifier.cs +++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectModification/SolutionFileModifier.cs @@ -12,11 +12,24 @@ public class SolutionFileModifier : ITransientDependency { public async Task RemoveProjectFromSolutionFileAsync(string solutionFile, string projectName) { - var solutionFileContent = File.ReadAllText(solutionFile); - solutionFileContent.NormalizeLineEndings(); - var lines = solutionFileContent.Split(new[] { Environment.NewLine, "\n" }, StringSplitOptions.None); - File.WriteAllText(solutionFile, - RemoveProject(lines.ToList(), projectName).JoinAsString(Environment.NewLine)); + using (var fs = File.Open(solutionFile, FileMode.Open, FileAccess.ReadWrite, FileShare.None)) + using (var sr = new StreamReader(fs, Encoding.Default, true)) + { + var solutionFileContent = await sr.ReadToEndAsync(); + solutionFileContent.NormalizeLineEndings(); + + var lines = solutionFileContent.Split(new[] { Environment.NewLine, "\n" }, StringSplitOptions.None); + var updatedContent = RemoveProject(lines.ToList(), projectName).JoinAsString(Environment.NewLine); + + fs.Seek(0, SeekOrigin.Begin); + fs.SetLength(0); + + using (var sw = new StreamWriter(fs, sr.CurrentEncoding)) + { + sw.Write(updatedContent); + sw.Flush(); + } + } } public async Task AddModuleToSolutionFileAsync(ModuleWithMastersInfo module, string solutionFile) @@ -64,7 +77,7 @@ public class SolutionFileModifier : ITransientDependency lines.InsertAfter(l => l.Contains("GlobalSection") && l.Contains("NestedProjects"), newPreSolutionLine); - File.WriteAllText(solutionFile, string.Join(Environment.NewLine, lines)); + File.WriteAllText(solutionFile, string.Join(Environment.NewLine, lines), Encoding.UTF8); } private List RemoveProject(List solutionFileLines, string projectName) @@ -174,7 +187,7 @@ public class SolutionFileModifier : ITransientDependency lines.InsertAfter(l => l.Contains("GlobalSection") && l.Contains("NestedProjects"), newPreSolutionLine); } - File.WriteAllText(solutionFile, string.Join(Environment.NewLine, lines)); + File.WriteAllText(solutionFile, string.Join(Environment.NewLine, lines), Encoding.UTF8); if (module.MasterModuleInfos != null) { @@ -219,7 +232,7 @@ public class SolutionFileModifier : ITransientDependency .Split(" ").Last(); } - File.WriteAllText(solutionFile, string.Join(Environment.NewLine, lines)); + File.WriteAllText(solutionFile, string.Join(Environment.NewLine, lines), Encoding.UTF8); return folderId; } diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectModification/VoloNugetPackagesVersionUpdater.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectModification/VoloNugetPackagesVersionUpdater.cs index 900930d472..4e94c983a9 100644 --- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectModification/VoloNugetPackagesVersionUpdater.cs +++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectModification/VoloNugetPackagesVersionUpdater.cs @@ -9,6 +9,7 @@ using Volo.Abp.Cli.NuGet; using Volo.Abp.DependencyInjection; using Microsoft.Extensions.Logging; using Microsoft.Extensions.Logging.Abstractions; +using System.Text; namespace Volo.Abp.Cli.ProjectModification; @@ -41,17 +42,28 @@ public class VoloNugetPackagesVersionUpdater : ITransientDependency async Task UpdateAsync(string filePath) { - var fileContent = File.ReadAllText(filePath); - var updatedContent = await UpdateVoloPackagesAsync(fileContent, - includePreviews, - includeReleaseCandidates, - switchToStable, - latestVersionFromNuget, - latestReleaseCandidateVersionFromNuget, - latestVersionFromMyGet, - version); - - File.WriteAllText(filePath, updatedContent); + using (var fs = File.Open(filePath, FileMode.Open, FileAccess.ReadWrite, FileShare.None)) + using (var sr = new StreamReader(fs, Encoding.Default, true)) + { + var fileContent = await sr.ReadToEndAsync(); + + var updatedContent = await UpdateVoloPackagesAsync(fileContent, + includePreviews, + includeReleaseCandidates, + switchToStable, + latestVersionFromNuget, + latestReleaseCandidateVersionFromNuget, + latestVersionFromMyGet, + version); + + fs.Seek(0, SeekOrigin.Begin); + fs.SetLength(0); + using (var sw = new StreamWriter(fs, sr.CurrentEncoding)) + { + sw.Write(updatedContent); + sw.Flush(); + } + } } Task.WaitAll(projectPaths.Select(UpdateAsync).ToArray()); @@ -70,27 +82,50 @@ public class VoloNugetPackagesVersionUpdater : ITransientDependency var latestReleaseCandidateVersionFromNuget = await _nuGetService.GetLatestVersionOrNullAsync("Volo.Abp.Core", includeReleaseCandidates: true); var latestVersionFromMyGet = await GetLatestVersionFromMyGet("Volo.Abp.Core"); - var fileContent = File.ReadAllText(projectPath); + using (var fs = File.Open(projectPath, FileMode.Open, FileAccess.ReadWrite, FileShare.None)) + using (var sr = new StreamReader(fs, Encoding.Default, true)) + { + var fileContent = await sr.ReadToEndAsync(); + + var updatedContent = await UpdateVoloPackagesAsync(fileContent, + includeNightlyPreviews, + includeReleaseCandidates, + switchToStable, + latestVersionFromNuget, + latestReleaseCandidateVersionFromNuget, + latestVersionFromMyGet, + version); - var updatedContent = await UpdateVoloPackagesAsync(fileContent, - includeNightlyPreviews, - includeReleaseCandidates, - switchToStable, - latestVersionFromNuget, - latestReleaseCandidateVersionFromNuget, - latestVersionFromMyGet, - version); + fs.Seek(0, SeekOrigin.Begin); + fs.SetLength(0); - File.WriteAllText(projectPath, updatedContent); + using (var sw = new StreamWriter(fs, sr.CurrentEncoding)) + { + sw.Write(updatedContent); + sw.Flush(); + } + } } } protected virtual async Task UpdateInternalAsync(string projectPath, bool includeNightlyPreviews = false, bool includeReleaseCandidates = false, bool switchToStable = false) { - var fileContent = File.ReadAllText(projectPath); - var updatedContent = await UpdateVoloPackagesAsync(fileContent, includeNightlyPreviews, includeReleaseCandidates, switchToStable); + using (var fs = File.Open(projectPath, FileMode.Open, FileAccess.ReadWrite, FileShare.None)) + using (var sr = new StreamReader(fs, Encoding.Default, true)) + { + var fileContent = await sr.ReadToEndAsync(); + + var updatedContent = await UpdateVoloPackagesAsync(fileContent, includeNightlyPreviews, includeReleaseCandidates, switchToStable); + + fs.Seek(0, SeekOrigin.Begin); + fs.SetLength(0); - File.WriteAllText(projectPath, updatedContent); + using (var sw = new StreamWriter(fs, sr.CurrentEncoding)) + { + sw.Write(updatedContent); + sw.Flush(); + } + } } protected virtual async Task SpecifiedVersionExists(string version, string packageId) From 05ffa67d047197b6799c3dfe98022ae891da379b Mon Sep 17 00:00:00 2001 From: rqx110 Date: Thu, 7 Apr 2022 08:41:28 +0800 Subject: [PATCH 28/90] move RightAligned parameter to BarDropdown --- .../Themes/Basic/LanguageSwitch.razor | 4 ++-- .../Themes/Basic/LanguageSwitch.razor | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/modules/basic-theme/src/Volo.Abp.AspNetCore.Components.Server.BasicTheme/Themes/Basic/LanguageSwitch.razor b/modules/basic-theme/src/Volo.Abp.AspNetCore.Components.Server.BasicTheme/Themes/Basic/LanguageSwitch.razor index 75b64e05b7..afa3521d01 100644 --- a/modules/basic-theme/src/Volo.Abp.AspNetCore.Components.Server.BasicTheme/Themes/Basic/LanguageSwitch.razor +++ b/modules/basic-theme/src/Volo.Abp.AspNetCore.Components.Server.BasicTheme/Themes/Basic/LanguageSwitch.razor @@ -7,11 +7,11 @@ @inject IAbpRequestLocalizationOptionsProvider RequestLocalizationOptionsProvider @if (_otherLanguages != null && _otherLanguages.Any()) { - + @_currentLanguage.DisplayName - + @foreach (var language in _otherLanguages) { @language.DisplayName diff --git a/modules/basic-theme/src/Volo.Abp.AspNetCore.Components.WebAssembly.BasicTheme/Themes/Basic/LanguageSwitch.razor b/modules/basic-theme/src/Volo.Abp.AspNetCore.Components.WebAssembly.BasicTheme/Themes/Basic/LanguageSwitch.razor index 6f89696075..4b41add531 100644 --- a/modules/basic-theme/src/Volo.Abp.AspNetCore.Components.WebAssembly.BasicTheme/Themes/Basic/LanguageSwitch.razor +++ b/modules/basic-theme/src/Volo.Abp.AspNetCore.Components.WebAssembly.BasicTheme/Themes/Basic/LanguageSwitch.razor @@ -5,11 +5,11 @@ @inject IJSRuntime JsRuntime @if (_otherLanguages != null && _otherLanguages.Any()) { - + @_currentLanguage.DisplayName - + @foreach (var language in _otherLanguages) { @language.DisplayName From 3610732a919f07778d6b0e65d810c1ff6c46db38 Mon Sep 17 00:00:00 2001 From: liangshiwei Date: Thu, 7 Apr 2022 21:00:47 +0800 Subject: [PATCH 29/90] Enhance ABP CLI --- .../Volo/Abp/Cli/Commands/NewCommand.cs | 14 ++++++-------- .../Cli/Commands/ProjectCreationCommandBase.cs | 15 ++++++++++++--- .../Cli/ProjectModification/NpmPackagesUpdater.cs | 13 ++++++------- .../ProjectModification/ProjectNpmPackageAdder.cs | 12 ++++++------ 4 files changed, 30 insertions(+), 24 deletions(-) diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/NewCommand.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/NewCommand.cs index c244abd719..420e64eb18 100644 --- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/NewCommand.cs +++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/NewCommand.cs @@ -10,6 +10,7 @@ using Microsoft.Extensions.Logging; using Microsoft.Extensions.Logging.Abstractions; using Volo.Abp.Cli.Args; using Volo.Abp.Cli.Commands.Services; +using Volo.Abp.Cli.LIbs; using Volo.Abp.Cli.ProjectBuilding; using Volo.Abp.Cli.ProjectModification; using Volo.Abp.Cli.Utils; @@ -21,22 +22,19 @@ public class NewCommand : ProjectCreationCommandBase, IConsoleCommand, ITransien { public const string Name = "new"; - public ILogger Logger { get; set; } - protected TemplateProjectBuilder TemplateProjectBuilder { get; } public ITemplateInfoProvider TemplateInfoProvider { get; } - + public NewCommand(TemplateProjectBuilder templateProjectBuilder , ITemplateInfoProvider templateInfoProvider, ConnectionStringProvider connectionStringProvider, SolutionPackageVersionFinder solutionPackageVersionFinder, - ICmdHelper cmdHelper) - : base(connectionStringProvider, solutionPackageVersionFinder, cmdHelper) + ICmdHelper cmdHelper, + IInstallLibsService installLibsService) + : base(connectionStringProvider, solutionPackageVersionFinder, cmdHelper, installLibsService) { TemplateProjectBuilder = templateProjectBuilder; TemplateInfoProvider = templateInfoProvider; - - Logger = NullLogger.Instance; } public async Task ExecuteAsync(CommandLineArgs commandLineArgs) @@ -79,7 +77,7 @@ public class NewCommand : ProjectCreationCommandBase, IConsoleCommand, ITransien Logger.LogInformation($"'{projectName}' has been successfully created to '{projectArgs.OutputFolder}'"); RunGraphBuildForMicroserviceServiceTemplate(projectArgs); - RunInstallLibsForWebTemplate(projectArgs); + await RunInstallLibsForWebTemplateAsync(projectArgs); OpenRelatedWebPage(projectArgs, template, isTiered, commandLineArgs); } diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/ProjectCreationCommandBase.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/ProjectCreationCommandBase.cs index 860147c584..368f022bda 100644 --- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/ProjectCreationCommandBase.cs +++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/ProjectCreationCommandBase.cs @@ -1,6 +1,7 @@ using System; using System.IO; using System.Linq; +using System.Threading.Tasks; using ICSharpCode.SharpZipLib.Core; using ICSharpCode.SharpZipLib.Zip; using Microsoft.Extensions.Logging; @@ -8,6 +9,7 @@ using Microsoft.Extensions.Logging.Abstractions; using Volo.Abp.Cli.ProjectModification; using Volo.Abp.Cli.Args; using Volo.Abp.Cli.Commands.Services; +using Volo.Abp.Cli.LIbs; using Volo.Abp.Cli.ProjectBuilding; using Volo.Abp.Cli.ProjectBuilding.Building; using Volo.Abp.Cli.ProjectBuilding.Templates.App; @@ -22,13 +24,19 @@ public abstract class ProjectCreationCommandBase public ConnectionStringProvider ConnectionStringProvider { get; } public SolutionPackageVersionFinder SolutionPackageVersionFinder { get; } public ICmdHelper CmdHelper { get; } + public IInstallLibsService InstallLibsService { get; } public ILogger Logger { get; set; } - public ProjectCreationCommandBase(ConnectionStringProvider connectionStringProvider, SolutionPackageVersionFinder solutionPackageVersionFinder, ICmdHelper cmdHelper) + public ProjectCreationCommandBase( + ConnectionStringProvider connectionStringProvider, + SolutionPackageVersionFinder solutionPackageVersionFinder, + ICmdHelper cmdHelper, + IInstallLibsService installLibsService) { ConnectionStringProvider = connectionStringProvider; SolutionPackageVersionFinder = solutionPackageVersionFinder; CmdHelper = cmdHelper; + InstallLibsService = installLibsService; Logger = NullLogger.Instance; } @@ -313,14 +321,15 @@ public abstract class ProjectCreationCommandBase } } - protected virtual void RunInstallLibsForWebTemplate(ProjectBuildArgs projectArgs) + protected async Task RunInstallLibsForWebTemplateAsync(ProjectBuildArgs projectArgs) { if (AppTemplateBase.IsAppTemplate(projectArgs.TemplateName) || ModuleTemplateBase.IsModuleTemplate(projectArgs.TemplateName) || AppNoLayersTemplateBase.IsAppNoLayersTemplate(projectArgs.TemplateName) || MicroserviceServiceTemplateBase.IsMicroserviceTemplate(projectArgs.TemplateName)) { - CmdHelper.RunCmd("abp install-libs", projectArgs.OutputFolder); + Logger.LogInformation("Installing client-side packages..."); + await InstallLibsService.InstallLibsAsync(projectArgs.OutputFolder); } } diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectModification/NpmPackagesUpdater.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectModification/NpmPackagesUpdater.cs index 2ade6dbd77..64517b1900 100644 --- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectModification/NpmPackagesUpdater.cs +++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectModification/NpmPackagesUpdater.cs @@ -14,6 +14,7 @@ using NuGet.Versioning; using Volo.Abp.Cli.Args; using Volo.Abp.Cli.Commands; using Volo.Abp.Cli.Http; +using Volo.Abp.Cli.LIbs; using Volo.Abp.Cli.Utils; using Volo.Abp.DependencyInjection; using Volo.Abp.IO; @@ -25,7 +26,7 @@ public class NpmPackagesUpdater : ITransientDependency { public ILogger Logger { get; set; } protected ICancellationTokenProvider CancellationTokenProvider { get; } - public InstallLibsCommand InstallLibsCommand { get; } + public IInstallLibsService InstallLibsService { get; } public ICmdHelper CmdHelper { get; } private readonly PackageJsonFileFinder _packageJsonFileFinder; @@ -38,13 +39,13 @@ public class NpmPackagesUpdater : ITransientDependency NpmGlobalPackagesChecker npmGlobalPackagesChecker, ICancellationTokenProvider cancellationTokenProvider, CliHttpClientFactory cliHttpClientFactory, - InstallLibsCommand ınstallLibsCommand, + IInstallLibsService installLibsService, ICmdHelper cmdHelper) { _packageJsonFileFinder = packageJsonFileFinder; _npmGlobalPackagesChecker = npmGlobalPackagesChecker; CancellationTokenProvider = cancellationTokenProvider; - InstallLibsCommand = ınstallLibsCommand; + InstallLibsService = installLibsService; CmdHelper = cmdHelper; _cliHttpClientFactory = cliHttpClientFactory; Logger = NullLogger.Instance; @@ -306,10 +307,8 @@ public class NpmPackagesUpdater : ITransientDependency protected virtual async Task RunInstallLibsAsync(string fileDirectory) { - var args = new CommandLineArgs("install-libs"); - args.Options.Add(InstallLibsCommand.Options.WorkingDirectory.Short, fileDirectory); - - await InstallLibsCommand.ExecuteAsync(args); + Logger.LogInformation("Installing client-side packages..."); + await InstallLibsService.InstallLibsAsync(fileDirectory); } protected virtual void RunYarn(string fileDirectory) diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectModification/ProjectNpmPackageAdder.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectModification/ProjectNpmPackageAdder.cs index 828b143192..36f33e1f6e 100644 --- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectModification/ProjectNpmPackageAdder.cs +++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectModification/ProjectNpmPackageAdder.cs @@ -12,6 +12,7 @@ using Volo.Abp.Cli.Args; using Volo.Abp.Cli.Commands; using Volo.Abp.Cli.Commands.Services; using Volo.Abp.Cli.Http; +using Volo.Abp.Cli.LIbs; using Volo.Abp.Cli.ProjectBuilding; using Volo.Abp.Cli.Utils; using Volo.Abp.DependencyInjection; @@ -26,7 +27,7 @@ public class ProjectNpmPackageAdder : ITransientDependency public SourceCodeDownloadService SourceCodeDownloadService { get; } public AngularSourceCodeAdder AngularSourceCodeAdder { get; } public IRemoteServiceExceptionHandler RemoteServiceExceptionHandler { get; } - public InstallLibsCommand InstallLibsCommand { get; } + public IInstallLibsService InstallLibsService { get; } public ICmdHelper CmdHelper { get; } private readonly CliHttpClientFactory _cliHttpClientFactory; public ILogger Logger { get; set; } @@ -36,14 +37,14 @@ public class ProjectNpmPackageAdder : ITransientDependency SourceCodeDownloadService sourceCodeDownloadService, AngularSourceCodeAdder angularSourceCodeAdder, IRemoteServiceExceptionHandler remoteServiceExceptionHandler, - InstallLibsCommand ınstallLibsCommand, + IInstallLibsService installLibsService, ICmdHelper cmdHelper) { JsonSerializer = jsonSerializer; SourceCodeDownloadService = sourceCodeDownloadService; AngularSourceCodeAdder = angularSourceCodeAdder; RemoteServiceExceptionHandler = remoteServiceExceptionHandler; - InstallLibsCommand = ınstallLibsCommand; + InstallLibsService = installLibsService; CmdHelper = cmdHelper; _cliHttpClientFactory = cliHttpClientFactory; Logger = NullLogger.Instance; @@ -142,9 +143,8 @@ public class ProjectNpmPackageAdder : ITransientDependency return; } - await InstallLibsCommand.ExecuteAsync( - new CommandLineArgs("install-libs") - ); + Logger.LogInformation("Installing client-side packages..."); + await InstallLibsService.InstallLibsAsync(directory); } } From 0bde8008d989857205c477f56fd679e897923289 Mon Sep 17 00:00:00 2001 From: Engincan VESKE Date: Fri, 8 Apr 2022 10:20:21 +0300 Subject: [PATCH 30/90] Add new localizations to base resource --- .../AbpIoLocalization/Base/Localization/Resources/en.json | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/abp_io/AbpIoLocalization/AbpIoLocalization/Base/Localization/Resources/en.json b/abp_io/AbpIoLocalization/AbpIoLocalization/Base/Localization/Resources/en.json index f772006632..53d37df13d 100644 --- a/abp_io/AbpIoLocalization/AbpIoLocalization/Base/Localization/Resources/en.json +++ b/abp_io/AbpIoLocalization/AbpIoLocalization/Base/Localization/Resources/en.json @@ -119,6 +119,8 @@ "Events": "Events", "Volo.AbpIo.Domain:080000": "There is already a purchase item named \"{Name}\"", "MasteringAbpFrameworkBook": "Book: Mastering ABP Framework", - "ABPIO-CommonPreferenceDefinition": "Get latest news about ABP Platform like new posts, events and more." + "ABPIO-CommonPreferenceDefinition": "Get latest news about ABP Platform like new posts, events and more.", + "BuiltOn": "Built-on", + "AbpFramework": "ABP Framework" } } From 4a1d542988452089c59b84192fc327435a7c5880 Mon Sep 17 00:00:00 2001 From: braim23 <94292623+braim23@users.noreply.github.com> Date: Fri, 8 Apr 2022 10:44:16 +0300 Subject: [PATCH 31/90] Added a small "the" before "latest news" --- .../AbpIoLocalization/Base/Localization/Resources/en.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/abp_io/AbpIoLocalization/AbpIoLocalization/Base/Localization/Resources/en.json b/abp_io/AbpIoLocalization/AbpIoLocalization/Base/Localization/Resources/en.json index 53d37df13d..5d6e081085 100644 --- a/abp_io/AbpIoLocalization/AbpIoLocalization/Base/Localization/Resources/en.json +++ b/abp_io/AbpIoLocalization/AbpIoLocalization/Base/Localization/Resources/en.json @@ -119,7 +119,7 @@ "Events": "Events", "Volo.AbpIo.Domain:080000": "There is already a purchase item named \"{Name}\"", "MasteringAbpFrameworkBook": "Book: Mastering ABP Framework", - "ABPIO-CommonPreferenceDefinition": "Get latest news about ABP Platform like new posts, events and more.", + "ABPIO-CommonPreferenceDefinition": "Get the latest news about ABP Platform like new posts, events and more.", "BuiltOn": "Built-on", "AbpFramework": "ABP Framework" } From c77ff1d0bfb2d6ebad00d496be1f504401ae1ce0 Mon Sep 17 00:00:00 2001 From: liangshiwei Date: Fri, 8 Apr 2022 17:07:49 +0800 Subject: [PATCH 32/90] Update generate-proxy UsageInfo --- .../Volo/Abp/Cli/Commands/ProxyCommandBase.cs | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/ProxyCommandBase.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/ProxyCommandBase.cs index 2ce5ba8209..22311bb986 100644 --- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/ProxyCommandBase.cs +++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/ProxyCommandBase.cs @@ -83,15 +83,18 @@ public abstract class ProxyCommandBase : IConsoleCommand, ITransientDependenc sb.AppendLine("Options:"); sb.AppendLine(""); sb.AppendLine("-m|--module (default: 'app') The name of the backend module you wish to generate proxies for."); - sb.AppendLine("-t|--type The name of generate type (csharp, js, ng)."); sb.AppendLine("-wd|--working-directory Execution directory."); sb.AppendLine("-u|--url API definition URL from."); - sb.AppendLine("-a|--api-name (default: 'default') The name of the API endpoint defined in the /src/environments/environment.ts."); - sb.AppendLine("-s|--source (default: 'defaultProject') Angular project name to resolve the root namespace & API definition URL from."); - sb.AppendLine("-o|--output JavaScript file path or folder to place generated code in."); - sb.AppendLine("-p|--prompt Asks the options from the command line prompt (for the missing options)"); - sb.AppendLine("--target (default: 'defaultProject') Angular project name to place generated code in."); - sb.AppendLine("--folder (default: 'ClientProxies') Folder name to place generated CSharp code in."); + sb.AppendLine("-t|--type The name of generate type (csharp, js, ng)."); + sb.AppendLine(" csharp"); + sb.AppendLine(" --folder (default: 'ClientProxies') Folder name to place generated CSharp code in."); + sb.AppendLine(" js"); + sb.AppendLine(" -o|--output JavaScript file path or folder to place generated code in."); + sb.AppendLine(" ng"); + sb.AppendLine(" -a|--api-name (default: 'default') The name of the API endpoint defined in the /src/environments/environment.ts."); + sb.AppendLine(" -s|--source (default: 'defaultProject') Angular project name to resolve the root namespace & API definition URL from."); + sb.AppendLine(" -p|--prompt Asks the options from the command line prompt (for the missing options)"); + sb.AppendLine(" --target (default: 'defaultProject') Angular project name to place generated code in."); sb.AppendLine(""); sb.AppendLine("See the documentation for more info: https://docs.abp.io/en/abp/latest/CLI"); From fcc9931c1abcf62d8703d89a8449d0f7fcab92fa Mon Sep 17 00:00:00 2001 From: Yunus Emre Kalkan Date: Fri, 8 Apr 2022 15:10:30 +0300 Subject: [PATCH 33/90] CmsKit: Added setter to GlobalResources.Name --- .../Volo/CmsKit/GlobalResources/GlobalResource.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/GlobalResources/GlobalResource.cs b/modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/GlobalResources/GlobalResource.cs index 0b52594434..ce6477cdca 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/GlobalResources/GlobalResource.cs +++ b/modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/GlobalResources/GlobalResource.cs @@ -8,7 +8,7 @@ namespace Volo.CmsKit.GlobalResources; public class GlobalResource : AuditedAggregateRoot, IMultiTenant { - public virtual string Name { get; } + public virtual string Name { get; private set; } public virtual string Value { get; private set; } From c4d5d5305706c6c2534cc671f35835d172b4ac5e Mon Sep 17 00:00:00 2001 From: maliming Date: Fri, 8 Apr 2022 22:51:41 +0800 Subject: [PATCH 34/90] Set `ContentLength` of `HttpContext.Response` --- .../ContentFormatters/RemoteStreamContentOutputFormatter.cs | 3 ++- .../RemoteStreamContentTestController_Tests.cs | 1 + 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/framework/src/Volo.Abp.AspNetCore.Mvc/Volo/Abp/AspNetCore/Mvc/ContentFormatters/RemoteStreamContentOutputFormatter.cs b/framework/src/Volo.Abp.AspNetCore.Mvc/Volo/Abp/AspNetCore/Mvc/ContentFormatters/RemoteStreamContentOutputFormatter.cs index f62b16b19b..5c5e7ed6c0 100644 --- a/framework/src/Volo.Abp.AspNetCore.Mvc/Volo/Abp/AspNetCore/Mvc/ContentFormatters/RemoteStreamContentOutputFormatter.cs +++ b/framework/src/Volo.Abp.AspNetCore.Mvc/Volo/Abp/AspNetCore/Mvc/ContentFormatters/RemoteStreamContentOutputFormatter.cs @@ -18,13 +18,14 @@ public class RemoteStreamContentOutputFormatter : OutputFormatter return typeof(IRemoteStreamContent).IsAssignableFrom(type); } - public override async Task WriteResponseBodyAsync(OutputFormatterWriteContext context) + public async override Task WriteResponseBodyAsync(OutputFormatterWriteContext context) { var remoteStream = (IRemoteStreamContent)context.Object; if (remoteStream != null) { context.HttpContext.Response.ContentType = remoteStream.ContentType; + context.HttpContext.Response.ContentLength = remoteStream.ContentLength; if (!remoteStream.FileName.IsNullOrWhiteSpace()) { diff --git a/framework/test/Volo.Abp.AspNetCore.Mvc.Tests/Volo/Abp/AspNetCore/Mvc/ContentFormatters/RemoteStreamContentTestController_Tests.cs b/framework/test/Volo.Abp.AspNetCore.Mvc.Tests/Volo/Abp/AspNetCore/Mvc/ContentFormatters/RemoteStreamContentTestController_Tests.cs index a56c8ef8ad..1a60ab9d6b 100644 --- a/framework/test/Volo.Abp.AspNetCore.Mvc.Tests/Volo/Abp/AspNetCore/Mvc/ContentFormatters/RemoteStreamContentTestController_Tests.cs +++ b/framework/test/Volo.Abp.AspNetCore.Mvc.Tests/Volo/Abp/AspNetCore/Mvc/ContentFormatters/RemoteStreamContentTestController_Tests.cs @@ -16,6 +16,7 @@ public class RemoteStreamContentTestController_Tests : AspNetCoreMvcTestBase var result = await GetResponseAsync("/api/remote-stream-content-test/download"); result.Content.Headers.ContentType?.ToString().ShouldBe("application/rtf"); result.Content.Headers.ContentDisposition?.FileName.ShouldBe("download.rtf"); + result.Content.Headers.ContentLength.ShouldBe("DownloadAsync".Length); (await result.Content.ReadAsStringAsync()).ShouldBe("DownloadAsync"); } From b3bd998465f3c591364397cf45c0309962ac3562 Mon Sep 17 00:00:00 2001 From: albert <9526587+ebicoglu@users.noreply.github.com> Date: Fri, 8 Apr 2022 18:17:41 +0300 Subject: [PATCH 35/90] Update POST.md --- .../POST.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/en/Community-Articles/2022-04-06-Concurrency-Check-in-ABP-Based-Applications/POST.md b/docs/en/Community-Articles/2022-04-06-Concurrency-Check-in-ABP-Based-Applications/POST.md index 0cd9687374..103329d1f3 100644 --- a/docs/en/Community-Articles/2022-04-06-Concurrency-Check-in-ABP-Based-Applications/POST.md +++ b/docs/en/Community-Articles/2022-04-06-Concurrency-Check-in-ABP-Based-Applications/POST.md @@ -1,10 +1,10 @@ -# Concurrency Check in ABP Based Applications +# Concurrency Check in ABP Projects -In this article, we'll create a basic application to demonstrate how "Concurrency Check/Control" can be done in an ABP based application. +In this article, we'll create a basic application to demonstrate how "Concurrency Check/Control" can be implemented in an ABP project. ## Creating the Solution -For this article, we can create a simple BookStore application and perform CRUD operations. +For this article, we will create a simple BookStore application and add CRUD functionality to the pages. Hence we deal with the concurrency situation. > To keep the article simple and short, we'll only add the **Book** entity and ignore the **Author** part. @@ -41,7 +41,7 @@ public class Book : AuditedAggregateRoot } ``` -* To enable **Concurrency Check** for our entities, our entities should implement the `IHasConcurrencyStamp` interface, directly or indirectly. +* To enable **Concurrency Check** for our entities, our entities should be implemented the `IHasConcurrencyStamp` interface, directly or indirectly. * [Aggregate Root](https://docs.abp.io/en/abp/5.2/Entities#aggregateroot-class) entity classes already implement the `IHasConcurrencyStamp` interface, so if we inherit our entities from one of these entity classes then we won't need to manually implement the `IHasConcurrencyStamp` interface. From 6bb69d99fb12510f96715f78649da102e322c041 Mon Sep 17 00:00:00 2001 From: albert <9526587+ebicoglu@users.noreply.github.com> Date: Fri, 8 Apr 2022 18:23:00 +0300 Subject: [PATCH 36/90] Update POST.md --- .../POST.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/en/Community-Articles/2022-04-06-Concurrency-Check-in-ABP-Based-Applications/POST.md b/docs/en/Community-Articles/2022-04-06-Concurrency-Check-in-ABP-Based-Applications/POST.md index 103329d1f3..cabe9cf872 100644 --- a/docs/en/Community-Articles/2022-04-06-Concurrency-Check-in-ABP-Based-Applications/POST.md +++ b/docs/en/Community-Articles/2022-04-06-Concurrency-Check-in-ABP-Based-Applications/POST.md @@ -1,4 +1,4 @@ -# Concurrency Check in ABP Projects +# Handle Concurrency with EF Core in an ABP Framework Project with ASP.NET Core MVC In this article, we'll create a basic application to demonstrate how "Concurrency Check/Control" can be implemented in an ABP project. From 75437fcb05517d5f1391b8d1bf5518fc30d8710f Mon Sep 17 00:00:00 2001 From: maliming Date: Mon, 11 Apr 2022 10:49:37 +0800 Subject: [PATCH 37/90] Fix `FeatureManagementModal` page error. --- .../Components/FeatureManagementModal.razor | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/modules/feature-management/src/Volo.Abp.FeatureManagement.Blazor/Components/FeatureManagementModal.razor b/modules/feature-management/src/Volo.Abp.FeatureManagement.Blazor/Components/FeatureManagementModal.razor index e883b23f22..1feaf59202 100644 --- a/modules/feature-management/src/Volo.Abp.FeatureManagement.Blazor/Components/FeatureManagementModal.razor +++ b/modules/feature-management/src/Volo.Abp.FeatureManagement.Blazor/Components/FeatureManagementModal.razor @@ -25,12 +25,13 @@ } - @foreach (var group in Groups) + @for (var i = 0; i < Groups.Count; i++) { - -

@group.DisplayName

+ var index = i; + +

@Groups[index].DisplayName


- @foreach (var feature in group.Features) + @foreach (var feature in Groups[index].Features) { var disabled = IsDisabled(feature.Provider.Name); @@ -40,7 +41,7 @@ @feature.DisplayName + TextChanged="@(async (v) => await OnFeatureValueChangedAsync(v, feature))"/> @if (feature.Description != null) {
@feature.Description
@@ -50,7 +51,7 @@ if (feature.ValueType is SelectionStringValueType) { - var items = ((SelectionStringValueType)feature.ValueType).ItemSource.Items; + var items = ((SelectionStringValueType) feature.ValueType).ItemSource.Items; @feature.DisplayName @@ -72,9 +73,9 @@ if (feature.ValueType is ToggleStringValueType) { - + @feature.DisplayName + TValue="bool" Checked="@ToggleValues[feature.Name]" CheckedChanged="@(async (v) => await OnSelectedValueChangedAsync(v, feature))">@feature.DisplayName @if (feature.Description != null) { From ef5906397c39c4384bddf0f40bc5992ba238ed6f Mon Sep 17 00:00:00 2001 From: Roc Date: Mon, 11 Apr 2022 12:11:14 +0800 Subject: [PATCH 38/90] Update CommandLineArgumentParser.cs --- .../Volo/Abp/Cli/Args/CommandLineArgumentParser.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Args/CommandLineArgumentParser.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Args/CommandLineArgumentParser.cs index ea8541cbb9..1b060a8dbc 100644 --- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Args/CommandLineArgumentParser.cs +++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Args/CommandLineArgumentParser.cs @@ -98,7 +98,7 @@ public class CommandLineArgumentParser : ICommandLineArgumentParser, ITransientD { if (argument.Length <= 1) { - throw new ArgumentException("Should specify an option name after '--' prefix!"); + throw new ArgumentException("Should specify an option name after '-' prefix!"); } return argument.RemovePreFix("-"); From c5a99ff4c2f81a67547758a53d23db022f866652 Mon Sep 17 00:00:00 2001 From: Engincan VESKE Date: Mon, 11 Apr 2022 13:03:04 +0300 Subject: [PATCH 39/90] Update Concurrency-Check.md --- docs/en/Concurrency-Check.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/en/Concurrency-Check.md b/docs/en/Concurrency-Check.md index 9bad5f816f..bf31d3db10 100644 --- a/docs/en/Concurrency-Check.md +++ b/docs/en/Concurrency-Check.md @@ -60,7 +60,7 @@ public class UpdateBookDto : IHasConcurrencyStamp } ``` -Set the **ConcurrencyStamp** input value to the entity in the **UpdateAsync** method of your application service, for that purpose you can use the `SetConcurrencyStampIfNotNull` method as below: +Set the **ConcurrencyStamp** input value to the entity in the **UpdateAsync** method of your application service as below: ```csharp public class BookAppService : ApplicationService, IBookAppService @@ -71,7 +71,7 @@ public class BookAppService : ApplicationService, IBookAppService { var book = await BookRepository.GetAsync(id); - book.SetConcurrencyStampIfNotNull(input.ConcurrencyStamp); + book.ConcurrencyStamp = input.ConcurrencyStamp; //set other input values to the entity ... @@ -120,7 +120,7 @@ public class UpdateBookDto : IHasConcurrencyStamp } ``` -Set the **ConcurrencyStamp** input value to the entity in the **UpdateAsync** method of your application service, for that purpose you can use the `SetConcurrencyStampIfNotNull` method as below: +Set the **ConcurrencyStamp** input value to the entity in the **UpdateAsync** method of your application service as below: ```csharp public class BookAppService : ApplicationService, IBookAppService @@ -131,7 +131,7 @@ public class BookAppService : ApplicationService, IBookAppService { var book = await BookRepository.GetAsync(id); - book.SetConcurrencyStampIfNotNull(input.ConcurrencyStamp); + book.ConcurrencyStamp = input.ConcurrencyStamp; //set other input values to the entity ... From 02404b1ece873d3ccdd4375c13b18363b99907de Mon Sep 17 00:00:00 2001 From: Engincan VESKE Date: Mon, 11 Apr 2022 13:38:57 +0300 Subject: [PATCH 40/90] Update POST.md --- .../POST.md | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/docs/en/Community-Articles/2022-04-06-Concurrency-Check-in-ABP-Based-Applications/POST.md b/docs/en/Community-Articles/2022-04-06-Concurrency-Check-in-ABP-Based-Applications/POST.md index cabe9cf872..b16d6bd9f1 100644 --- a/docs/en/Community-Articles/2022-04-06-Concurrency-Check-in-ABP-Based-Applications/POST.md +++ b/docs/en/Community-Articles/2022-04-06-Concurrency-Check-in-ABP-Based-Applications/POST.md @@ -6,8 +6,6 @@ In this article, we'll create a basic application to demonstrate how "Concurrenc For this article, we will create a simple BookStore application and add CRUD functionality to the pages. Hence we deal with the concurrency situation. -> To keep the article simple and short, we'll only add the **Book** entity and ignore the **Author** part. - We can create a new startup template with EF Core as a database provider and MVC for the UI Framework. > If you already have a project, you don't need to create a new startup template, you can directly implement the following steps to your project. So you can skip this section. @@ -15,7 +13,7 @@ We can create a new startup template with EF Core as a database provider and MVC We can create a new startup template by using the [ABP CLI](https://docs.abp.io/en/abp/latest/CLI). ```bash -abp new Acme.BookStore -t app -csf +abp new Acme.BookStore ``` After running the above command, our project boilerplate will be downloaded. Then we can open the solution and start the development. @@ -235,7 +233,8 @@ public class BookAppService : book.Type = input.Type; book.PublishDate = input.PublishDate; - book.SetConcurrencyStampIfNotNull(input.ConcurrencyStamp); + //set Concurrency Stamp value to the entity + book.ConcurrencyStamp = input.ConcurrencyStamp; var updatedBook = await Repository.UpdateAsync(book); return ObjectMapper.Map(updatedBook); @@ -245,9 +244,9 @@ public class BookAppService : * We've used the `CrudAppService` base class. This class implements all common CRUD operations and if we want to change a method, we can simply override the method and change it to our needs. -> Normally, you don't need to override the `UpdateAsync` method to do **Concurrency Check**. I wanted to override this method to show what we need to do for **Concurrency Check**. +> Normally, you don't need to override the `UpdateAsync` method to do **Concurrency Check**. Because the `UpdateAsync` method of the `CrudAppService` class by default map input values to the entity. But I wanted to override this method to show what we need to do for **Concurrency Check**. -* We can look closer to the `UpdateAsync` method here, because as we've mentioned earlier we need to pass the provided **ConcurrencyStamp** value to be able to do **Concurrency Check/Control** to our entity while updating. We've used the `SetConcurrencyStampIfNotNull` extension method to set the **ConcurrencyStamp** value to our entity and update the record. +* We can look closer to the `UpdateAsync` method here, because as we've mentioned earlier we need to pass the provided **ConcurrencyStamp** value to be able to do **Concurrency Check/Control** to our entity while updating. * At that point, if the given record is already updated by any other user, a **ConcurrencyStamp** mismatch will occur and `AbpDbConcurrencyException` will be thrown thanks to the **Concurrency Check** system of ABP, data-consistency will be provided and the current record won't be overridden. From dc45d64ec8cb3a0e79476722c42c356644f259f7 Mon Sep 17 00:00:00 2001 From: Yunus Emre Kalkan Date: Mon, 11 Apr 2022 13:50:27 +0300 Subject: [PATCH 41/90] Cli Module adding: Fix migration commands Resolves https://github.com/volosoft/volo/issues/9728 --- .../Abp/Cli/ProjectModification/EfCoreMigrationManager.cs | 5 +++-- .../Volo/Abp/Cli/ProjectModification/SolutionModuleAdder.cs | 2 +- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectModification/EfCoreMigrationManager.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectModification/EfCoreMigrationManager.cs index 3a224c1122..ffa6a50edf 100644 --- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectModification/EfCoreMigrationManager.cs +++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectModification/EfCoreMigrationManager.cs @@ -48,9 +48,10 @@ public class EfCoreMigrationManager : ITransientDependency ? string.Empty : $"--context {dbContext}"; - CmdHelper.RunCmd($"cd \"{dbMigrationsProjectFolder}\" && dotnet ef migrations add {migrationName}" + + CmdHelper.RunCmd($"dotnet ef migrations add {migrationName}" + $" --output-dir {outputDirectory}" + - $" {dbContextOption}"); + $" {dbContextOption}", + workingDirectory: dbMigrationsProjectFolder); } protected virtual string ParseModuleName(string fullModuleName) diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectModification/SolutionModuleAdder.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectModification/SolutionModuleAdder.cs index 310e613035..dfed250f1a 100644 --- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectModification/SolutionModuleAdder.cs +++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectModification/SolutionModuleAdder.cs @@ -679,7 +679,7 @@ public class SolutionModuleAdder : ITransientDependency if (!string.IsNullOrEmpty(dbMigratorProject)) { - CmdHelper.RunCmd("cd \"" + Path.GetDirectoryName(dbMigratorProject) + "\" && dotnet run", out int exitCode); + CmdHelper.RunCmd($"dotnet run", out int exitCode, workingDirectory: Path.GetDirectoryName(dbMigratorProject)); } } From 6d3b06ba27ccf0197cc2c04944df15f19ab81ab4 Mon Sep 17 00:00:00 2001 From: braim23 <94292623+braim23@users.noreply.github.com> Date: Mon, 11 Apr 2022 15:29:15 +0300 Subject: [PATCH 42/90] related with the "Fix test result" issue --- .../src/Volo.Blogging.Web/Pages/Blogs/Posts/Detail.cshtml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/blogging/src/Volo.Blogging.Web/Pages/Blogs/Posts/Detail.cshtml b/modules/blogging/src/Volo.Blogging.Web/Pages/Blogs/Posts/Detail.cshtml index 66d2bf89c9..8329c993cd 100644 --- a/modules/blogging/src/Volo.Blogging.Web/Pages/Blogs/Posts/Detail.cshtml +++ b/modules/blogging/src/Volo.Blogging.Web/Pages/Blogs/Posts/Detail.cshtml @@ -79,7 +79,7 @@ @L["WiewsWithCount", @Model.Post.ReadCount] | - @L["CommentWithCount", @Model.CommentCount] +
@L["CommentWithCount", @Model.CommentCount] @if (await Authorization.IsGrantedAsync(BloggingPermissions.Posts.Update)) @@ -162,7 +162,7 @@ -
+
@foreach (var commentWithRepliesDto in Model.CommentsWithReplies) {
From c38ce7ed62aca66e5a8041d1631b8d8c69bfb160 Mon Sep 17 00:00:00 2001 From: Ebicoglu Date: Mon, 11 Apr 2022 15:31:32 +0300 Subject: [PATCH 43/90] Enhancements --- .../SolutionFileModifier.cs | 36 +++---- .../VoloNugetPackagesVersionUpdater.cs | 93 ++++++++++--------- 2 files changed, 70 insertions(+), 59 deletions(-) diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectModification/SolutionFileModifier.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectModification/SolutionFileModifier.cs index b78ec017c2..45e0684b4a 100644 --- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectModification/SolutionFileModifier.cs +++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectModification/SolutionFileModifier.cs @@ -10,24 +10,28 @@ namespace Volo.Abp.Cli.ProjectModification; public class SolutionFileModifier : ITransientDependency { + public static Encoding DefaultEncoding = Encoding.UTF8; + public async Task RemoveProjectFromSolutionFileAsync(string solutionFile, string projectName) { - using (var fs = File.Open(solutionFile, FileMode.Open, FileAccess.ReadWrite, FileShare.None)) - using (var sr = new StreamReader(fs, Encoding.Default, true)) + using (var fileStream = File.Open(solutionFile, FileMode.Open, FileAccess.ReadWrite, FileShare.None)) { - var solutionFileContent = await sr.ReadToEndAsync(); - solutionFileContent.NormalizeLineEndings(); + using (var sr = new StreamReader(fileStream, Encoding.Default, true)) + { + var solutionFileContent = await sr.ReadToEndAsync(); + solutionFileContent.NormalizeLineEndings(); - var lines = solutionFileContent.Split(new[] { Environment.NewLine, "\n" }, StringSplitOptions.None); - var updatedContent = RemoveProject(lines.ToList(), projectName).JoinAsString(Environment.NewLine); + var lines = solutionFileContent.Split(new[] { Environment.NewLine, "\n" }, StringSplitOptions.None); + var updatedContent = RemoveProject(lines.ToList(), projectName).JoinAsString(Environment.NewLine); - fs.Seek(0, SeekOrigin.Begin); - fs.SetLength(0); + fileStream.Seek(0, SeekOrigin.Begin); + fileStream.SetLength(0); - using (var sw = new StreamWriter(fs, sr.CurrentEncoding)) - { - sw.Write(updatedContent); - sw.Flush(); + using (var sw = new StreamWriter(fileStream, DefaultEncoding)) + { + await sw.WriteAsync(updatedContent); + await sw.FlushAsync(); + } } } } @@ -46,8 +50,8 @@ public class SolutionFileModifier : ITransientDependency { var srcFolderId = await AddNewFolderAndGetIdOrGetExistingIdAsync(solutionFile, "src"); - var file = File.ReadAllText(solutionFile); - var lines = file.Split(Environment.NewLine).ToList(); + var solutionFileContent = File.ReadAllText(solutionFile); + var lines = solutionFileContent.Split(Environment.NewLine).ToList(); if (lines.Any(l => l.Contains($"\"{package.Name}\""))) { @@ -77,7 +81,7 @@ public class SolutionFileModifier : ITransientDependency lines.InsertAfter(l => l.Contains("GlobalSection") && l.Contains("NestedProjects"), newPreSolutionLine); - File.WriteAllText(solutionFile, string.Join(Environment.NewLine, lines), Encoding.UTF8); + File.WriteAllText(solutionFile, string.Join(Environment.NewLine, lines), DefaultEncoding); } private List RemoveProject(List solutionFileLines, string projectName) @@ -150,7 +154,7 @@ public class SolutionFileModifier : ITransientDependency Path.Combine(Path.GetDirectoryName(solutionFile), "modules", module.Name, "test"), "*.csproj", SearchOption.AllDirectories).ToList(); - } + } foreach (var projectPath in projectsUnderModule) { diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectModification/VoloNugetPackagesVersionUpdater.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectModification/VoloNugetPackagesVersionUpdater.cs index 4e94c983a9..98ad57f4b4 100644 --- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectModification/VoloNugetPackagesVersionUpdater.cs +++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectModification/VoloNugetPackagesVersionUpdater.cs @@ -18,6 +18,7 @@ public class VoloNugetPackagesVersionUpdater : ITransientDependency private readonly NuGetService _nuGetService; private readonly MyGetPackageListFinder _myGetPackageListFinder; public ILogger Logger { get; set; } + public static Encoding DefaultEncoding = Encoding.UTF8; public VoloNugetPackagesVersionUpdater(NuGetService nuGetService, MyGetPackageListFinder myGetPackageListFinder) { @@ -43,25 +44,27 @@ public class VoloNugetPackagesVersionUpdater : ITransientDependency async Task UpdateAsync(string filePath) { using (var fs = File.Open(filePath, FileMode.Open, FileAccess.ReadWrite, FileShare.None)) - using (var sr = new StreamReader(fs, Encoding.Default, true)) { - var fileContent = await sr.ReadToEndAsync(); - - var updatedContent = await UpdateVoloPackagesAsync(fileContent, - includePreviews, - includeReleaseCandidates, - switchToStable, - latestVersionFromNuget, - latestReleaseCandidateVersionFromNuget, - latestVersionFromMyGet, - version); - - fs.Seek(0, SeekOrigin.Begin); - fs.SetLength(0); - using (var sw = new StreamWriter(fs, sr.CurrentEncoding)) + using (var sr = new StreamReader(fs, Encoding.Default, true)) { - sw.Write(updatedContent); - sw.Flush(); + var fileContent = await sr.ReadToEndAsync(); + + var updatedContent = await UpdateVoloPackagesAsync(fileContent, + includePreviews, + includeReleaseCandidates, + switchToStable, + latestVersionFromNuget, + latestReleaseCandidateVersionFromNuget, + latestVersionFromMyGet, + version); + + fs.Seek(0, SeekOrigin.Begin); + fs.SetLength(0); + using (var sw = new StreamWriter(fs, DefaultEncoding)) + { + await sw.WriteAsync(updatedContent); + await sw.FlushAsync(); + } } } } @@ -83,26 +86,28 @@ public class VoloNugetPackagesVersionUpdater : ITransientDependency var latestVersionFromMyGet = await GetLatestVersionFromMyGet("Volo.Abp.Core"); using (var fs = File.Open(projectPath, FileMode.Open, FileAccess.ReadWrite, FileShare.None)) - using (var sr = new StreamReader(fs, Encoding.Default, true)) { - var fileContent = await sr.ReadToEndAsync(); + using (var sr = new StreamReader(fs, Encoding.Default, true)) + { + var fileContent = await sr.ReadToEndAsync(); - var updatedContent = await UpdateVoloPackagesAsync(fileContent, - includeNightlyPreviews, - includeReleaseCandidates, - switchToStable, - latestVersionFromNuget, - latestReleaseCandidateVersionFromNuget, - latestVersionFromMyGet, - version); + var updatedContent = await UpdateVoloPackagesAsync(fileContent, + includeNightlyPreviews, + includeReleaseCandidates, + switchToStable, + latestVersionFromNuget, + latestReleaseCandidateVersionFromNuget, + latestVersionFromMyGet, + version); - fs.Seek(0, SeekOrigin.Begin); - fs.SetLength(0); + fs.Seek(0, SeekOrigin.Begin); + fs.SetLength(0); - using (var sw = new StreamWriter(fs, sr.CurrentEncoding)) - { - sw.Write(updatedContent); - sw.Flush(); + using (var sw = new StreamWriter(fs, sr.CurrentEncoding)) + { + await sw.WriteAsync(updatedContent); + await sw.FlushAsync(); + } } } } @@ -111,19 +116,21 @@ public class VoloNugetPackagesVersionUpdater : ITransientDependency protected virtual async Task UpdateInternalAsync(string projectPath, bool includeNightlyPreviews = false, bool includeReleaseCandidates = false, bool switchToStable = false) { using (var fs = File.Open(projectPath, FileMode.Open, FileAccess.ReadWrite, FileShare.None)) - using (var sr = new StreamReader(fs, Encoding.Default, true)) { - var fileContent = await sr.ReadToEndAsync(); + using (var sr = new StreamReader(fs, Encoding.Default, true)) + { + var fileContent = await sr.ReadToEndAsync(); - var updatedContent = await UpdateVoloPackagesAsync(fileContent, includeNightlyPreviews, includeReleaseCandidates, switchToStable); + var updatedContent = await UpdateVoloPackagesAsync(fileContent, includeNightlyPreviews, includeReleaseCandidates, switchToStable); - fs.Seek(0, SeekOrigin.Begin); - fs.SetLength(0); + fs.Seek(0, SeekOrigin.Begin); + fs.SetLength(0); - using (var sw = new StreamWriter(fs, sr.CurrentEncoding)) - { - sw.Write(updatedContent); - sw.Flush(); + using (var sw = new StreamWriter(fs, sr.CurrentEncoding)) + { + await sw.WriteAsync(updatedContent); + await sw.FlushAsync(); + } } } } @@ -245,7 +252,7 @@ public class VoloNugetPackagesVersionUpdater : ITransientDependency } catch (Exception ex) { - Logger.LogError("Cannot update Volo.* packages! An error occured while updating the package \"{0}\". Error: {1}", packageId, ex.Message); + Logger.LogError("Cannot update Volo.* packages! An error occurred while updating the package \"{0}\". Error: {1}", packageId, ex.Message); Logger.LogException(ex); } From 8eaaf6b0455504ff5daef4ca6b671a425e898780 Mon Sep 17 00:00:00 2001 From: Yunus Emre Kalkan Date: Tue, 12 Apr 2022 10:57:57 +0300 Subject: [PATCH 44/90] Cli: Allow to generate code with Suite resolves https://github.com/volosoft/volo/issues/9596 --- .../Volo/Abp/Cli/Commands/SuiteCommand.cs | 198 +++++++++++++++++- .../Volo/Abp/Cli/Utils/CmdHelper.cs | 16 ++ .../Volo/Abp/Cli/Utils/ICmdHelper.cs | 6 +- 3 files changed, 212 insertions(+), 8 deletions(-) diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/SuiteCommand.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/SuiteCommand.cs index 0e797e682f..ad791d05b9 100644 --- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/SuiteCommand.cs +++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/SuiteCommand.cs @@ -1,33 +1,51 @@ using System; +using System.Collections.Generic; +using System.Diagnostics; +using System.IO; using System.Linq; +using System.Net; +using System.Net.Http; +using System.Net.NetworkInformation; using System.Text; +using System.Threading; using System.Threading.Tasks; using Microsoft.Extensions.Logging; using Microsoft.Extensions.Logging.Abstractions; +using Newtonsoft.Json.Linq; using NuGet.Versioning; using Volo.Abp.Cli.Args; using Volo.Abp.Cli.Commands.Services; +using Volo.Abp.Cli.Http; using Volo.Abp.Cli.NuGet; using Volo.Abp.Cli.Utils; using Volo.Abp.DependencyInjection; +using Volo.Abp.Http; +using Volo.Abp.Json; +using Volo.Abp.Threading; namespace Volo.Abp.Cli.Commands; public class SuiteCommand : IConsoleCommand, ITransientDependency { public const string Name = "suite"; - + public ICmdHelper CmdHelper { get; } private readonly AbpNuGetIndexUrlService _nuGetIndexUrlService; private readonly NuGetService _nuGetService; + private readonly CliHttpClientFactory _cliHttpClientFactory; private const string SuitePackageName = "Volo.Abp.Suite"; public ILogger Logger { get; set; } - public SuiteCommand(AbpNuGetIndexUrlService nuGetIndexUrlService, NuGetService nuGetService, ICmdHelper cmdHelper) + public SuiteCommand( + AbpNuGetIndexUrlService nuGetIndexUrlService, + NuGetService nuGetService, + ICmdHelper cmdHelper, + CliHttpClientFactory cliHttpClientFactory) { CmdHelper = cmdHelper; _nuGetIndexUrlService = nuGetIndexUrlService; _nuGetService = nuGetService; + _cliHttpClientFactory = cliHttpClientFactory; Logger = NullLogger.Instance; } @@ -48,6 +66,13 @@ public class SuiteCommand : IConsoleCommand, ITransientDependency RunSuite(); break; + case "generate": + await InstallSuiteIfNotInstalledAsync(); + var suiteProcess = RunSuiteTemporary(); + await GenerateCrudOnSuiteAsync(commandLineArgs); + suiteProcess?.Kill(); + break; + case "install": await InstallSuiteAsync(version, preview); break; @@ -63,6 +88,115 @@ public class SuiteCommand : IConsoleCommand, ITransientDependency } } + private async Task GenerateCrudOnSuiteAsync(CommandLineArgs args) + { + var entityFile = args.Options.GetOrNull(Options.Crud.Entity.Short, Options.Crud.Entity.Long); + var solutionFile = args.Options.GetOrNull(Options.Crud.Solution.Short, Options.Crud.Solution.Long); + + if (entityFile.IsNullOrEmpty() || !entityFile.EndsWith(".json") || !File.Exists(entityFile) || + solutionFile.IsNullOrEmpty() || !solutionFile.EndsWith(".sln")) + { + throw new UserFriendlyException("Invalid Arguments!"); + } + + Logger.LogInformation("Generating CRUD Page..."); + + var client = _cliHttpClientFactory.CreateClient(false); + var solutionId = await GetSolutionIdAsync(client, solutionFile); + + if (!solutionId.HasValue) + { + return; + } + + var entityContent = new StringContent( + File.ReadAllText(entityFile), + Encoding.UTF8, + MimeTypes.Application.Json + ); + + var responseMessage = await client.PostAsync( + $"http://localhost:3000/api/abpSuite/crudPageGenerator/{solutionId.ToString()}/save-and-generate-entity", + entityContent + ); + + var response = await responseMessage.Content.ReadAsStringAsync(); + + if (!response.IsNullOrWhiteSpace()) + { + Logger.LogError(response); + } + else + { + Logger.LogInformation("CRUD page generated."); + } + } + + private async Task GetSolutionIdAsync(HttpClient client, string solutionPath) + { + var timeIntervals = new List(); + for (var i = 0; i < 10; i++) + { + timeIntervals.Add(TimeSpan.FromSeconds(5)); + } + + var responseMessage = await client.GetHttpResponseMessageWithRetryAsync( + "http://localhost:3000/api/abpSuite/solutions", + _cliHttpClientFactory.GetCancellationToken(TimeSpan.FromMinutes(10)), + Logger, + timeIntervals.ToArray()); + + var response = await responseMessage.Content.ReadAsStringAsync(); + JArray solutions; + + try + { + solutions = (JArray)(JObject.Parse(response)["solutions"]); + } + catch (Exception) + { + Logger.LogError(response); + return await AddSolutionToSuiteAsync(client, solutionPath); + } + + foreach (JObject solution in solutions) + { + if (solution["path"].ToString() == solutionPath) + { + return Guid.Parse(solution["id"].ToString()); + } + } + + return await AddSolutionToSuiteAsync(client, solutionPath); + } + + private async Task AddSolutionToSuiteAsync(HttpClient client, string solutionPath) + { + var entityContent = new StringContent( + "{\"Path\": \"" + solutionPath.Replace("\\", "\\\\") + "\"}", + Encoding.UTF8, + MimeTypes.Application.Json + ); + + var responseMessage = await client.PostAsync( + "http://localhost:3000/api/abpSuite/addSolution", + entityContent, + _cliHttpClientFactory.GetCancellationToken(TimeSpan.FromMinutes(10)) + ); + + var response = await responseMessage.Content.ReadAsStringAsync(); + + try + { + return Guid.Parse(JObject.Parse(response)["id"].ToString()); + } + catch (Exception) + { + Logger.LogError(response); + return null; + } + } + private async Task InstallSuiteIfNotInstalledAsync() { var currentSuiteVersionAsString = GetCurrentSuiteVersion(); @@ -132,7 +266,8 @@ public class SuiteCommand : IConsoleCommand, ITransientDependency } CmdHelper.RunCmd( - $"dotnet tool install {SuitePackageName}{versionOption} --add-source {nugetIndexUrl} -g", out int exitCode + $"dotnet tool install {SuitePackageName}{versionOption} --add-source {nugetIndexUrl} -g", + out int exitCode ); if (exitCode == 0) @@ -155,7 +290,8 @@ public class SuiteCommand : IConsoleCommand, ITransientDependency private void ShowSuiteManualInstallCommand() { Logger.LogInformation("You can also run the following command to install ABP Suite."); - Logger.LogInformation("dotnet tool install -g Volo.Abp.Suite --add-source https://nuget.abp.io//v3/index.json"); + Logger.LogInformation( + "dotnet tool install -g Volo.Abp.Suite --add-source https://nuget.abp.io//v3/index.json"); } private async Task UpdateSuiteAsync(string version = null, bool preview = false) @@ -202,7 +338,8 @@ public class SuiteCommand : IConsoleCommand, ITransientDependency } CmdHelper.RunCmd( - $"dotnet tool update {SuitePackageName}{versionOption} --add-source {nugetIndexUrl} -g", out int exitCode + $"dotnet tool update {SuitePackageName}{versionOption} --add-source {nugetIndexUrl} -g", + out int exitCode ); if (exitCode != 0) @@ -231,7 +368,8 @@ public class SuiteCommand : IConsoleCommand, ITransientDependency private void ShowSuiteManualUpdateCommand() { Logger.LogError("You can also run the following command to update ABP Suite."); - Logger.LogError("dotnet tool update -g Volo.Abp.Suite --add-source https://nuget.abp.io//v3/index.json"); + Logger.LogError( + "dotnet tool update -g Volo.Abp.Suite --add-source https://nuget.abp.io//v3/index.json"); } private void RemoveSuite() @@ -258,6 +396,37 @@ public class SuiteCommand : IConsoleCommand, ITransientDependency CmdHelper.RunCmd("abp-suite"); } + private Process RunSuiteTemporary() + { + try + { + if (!GlobalToolHelper.IsGlobalToolInstalled("abp-suite")) + { + Logger.LogWarning( + "ABP Suite is not installed! To install it you can run the command: \"abp suite install\""); + return null; + } + } + catch (Exception ex) + { + Logger.LogWarning("Couldn't check ABP Suite installed status: " + ex.Message); + } + + if (IsSuiteAlreadyRunning()) + { + return null; + } + + return CmdHelper.RunCmdAndGetProcess("abp-suite --no-browser"); + } + + bool IsSuiteAlreadyRunning() + { + var ipGP = IPGlobalProperties.GetIPGlobalProperties(); + var endpoints = ipGP.GetActiveTcpListeners(); + return endpoints.Any(e => e.Port == 3000); + } + public string GetUsageInfo() { var sb = new StringBuilder(); @@ -306,5 +475,20 @@ public class SuiteCommand : IConsoleCommand, ITransientDependency public const string Long = "version"; public const string Short = "v"; } + + public static class Crud + { + public static class Solution + { + public const string Long = "solution"; + public const string Short = "s"; + } + + public static class Entity + { + public const string Long = "entity"; + public const string Short = "e"; + } + } } -} +} \ No newline at end of file diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Utils/CmdHelper.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Utils/CmdHelper.cs index 483d047e86..741390dc73 100644 --- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Utils/CmdHelper.cs +++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Utils/CmdHelper.cs @@ -58,6 +58,22 @@ public class CmdHelper : ICmdHelper, ITransientDependency } } + public Process RunCmdAndGetProcess(string command, string workingDirectory = null) + { + var procStartInfo = new ProcessStartInfo( + GetFileName(), + GetArguments(command) + ); + + if (!string.IsNullOrEmpty(workingDirectory)) + { + procStartInfo.WorkingDirectory = workingDirectory; + procStartInfo.CreateNoWindow = false; + } + + return Process.Start(procStartInfo); + } + public string RunCmdAndGetOutput(string command, string workingDirectory = null) { return RunCmdAndGetOutput(command, out int _, workingDirectory); diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Utils/ICmdHelper.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Utils/ICmdHelper.cs index 984b705d33..648215d24f 100644 --- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Utils/ICmdHelper.cs +++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Utils/ICmdHelper.cs @@ -1,4 +1,6 @@ -namespace Volo.Abp.Cli.Utils; +using System.Diagnostics; + +namespace Volo.Abp.Cli.Utils; public interface ICmdHelper { @@ -12,6 +14,8 @@ public interface ICmdHelper void RunCmd(string command, string workingDirectory = null); + Process RunCmdAndGetProcess(string command, string workingDirectory = null); + void RunCmd(string command, out int exitCode, string workingDirectory = null); string RunCmdAndGetOutput(string command, string workingDirectory = null); From 4135675eaa351b0a675a72b9db69df1f28940cc6 Mon Sep 17 00:00:00 2001 From: Yunus Emre Kalkan Date: Tue, 12 Apr 2022 10:59:44 +0300 Subject: [PATCH 45/90] Update SuiteCommand.cs --- .../src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/SuiteCommand.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/SuiteCommand.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/SuiteCommand.cs index ad791d05b9..b8aa608361 100644 --- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/SuiteCommand.cs +++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/SuiteCommand.cs @@ -420,7 +420,7 @@ public class SuiteCommand : IConsoleCommand, ITransientDependency return CmdHelper.RunCmdAndGetProcess("abp-suite --no-browser"); } - bool IsSuiteAlreadyRunning() + private bool IsSuiteAlreadyRunning() { var ipGP = IPGlobalProperties.GetIPGlobalProperties(); var endpoints = ipGP.GetActiveTcpListeners(); From 46d5f9ebd815e0f1ab5d8365d168398f2553db94 Mon Sep 17 00:00:00 2001 From: Engincan VESKE Date: Tue, 12 Apr 2022 16:35:12 +0300 Subject: [PATCH 46/90] blogging: Revert 6d3b06ba27 --- .../src/Volo.Blogging.Web/Pages/Blogs/Posts/Detail.cshtml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/blogging/src/Volo.Blogging.Web/Pages/Blogs/Posts/Detail.cshtml b/modules/blogging/src/Volo.Blogging.Web/Pages/Blogs/Posts/Detail.cshtml index 8329c993cd..66d2bf89c9 100644 --- a/modules/blogging/src/Volo.Blogging.Web/Pages/Blogs/Posts/Detail.cshtml +++ b/modules/blogging/src/Volo.Blogging.Web/Pages/Blogs/Posts/Detail.cshtml @@ -79,7 +79,7 @@ @L["WiewsWithCount", @Model.Post.ReadCount] | - @L["CommentWithCount", @Model.CommentCount] + @L["CommentWithCount", @Model.CommentCount] @if (await Authorization.IsGrantedAsync(BloggingPermissions.Posts.Update)) @@ -162,7 +162,7 @@ -
+
@foreach (var commentWithRepliesDto in Model.CommentsWithReplies) {
From e3c4c5ebe2cd87cbca5c8f6b7d2eef3d8ad9a5b9 Mon Sep 17 00:00:00 2001 From: Ebicoglu Date: Wed, 13 Apr 2022 02:24:59 +0300 Subject: [PATCH 47/90] Close Suite after code generation #12231 --- .../Volo/Abp/Cli/Commands/SuiteCommand.cs | 52 ++++++++++++++----- 1 file changed, 39 insertions(+), 13 deletions(-) diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/SuiteCommand.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/SuiteCommand.cs index b8aa608361..aabd5c6dfd 100644 --- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/SuiteCommand.cs +++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/SuiteCommand.cs @@ -36,6 +36,8 @@ public class SuiteCommand : IConsoleCommand, ITransientDependency private const string SuitePackageName = "Volo.Abp.Suite"; public ILogger Logger { get; set; } + private const string AbpSuiteHost = "http://localhost:3000"; + public SuiteCommand( AbpNuGetIndexUrlService nuGetIndexUrlService, NuGetService nuGetService, @@ -68,9 +70,14 @@ public class SuiteCommand : IConsoleCommand, ITransientDependency case "generate": await InstallSuiteIfNotInstalledAsync(); - var suiteProcess = RunSuiteTemporary(); - await GenerateCrudOnSuiteAsync(commandLineArgs); - suiteProcess?.Kill(); + var suiteProcess = StartSuite(); + System.Threading.Thread.Sleep(500); //wait for initialization of the app + await GenerateCrudPageAsync(commandLineArgs); + if (suiteProcess != null) + { + KillSuite(); + } + break; case "install": @@ -88,7 +95,7 @@ public class SuiteCommand : IConsoleCommand, ITransientDependency } } - private async Task GenerateCrudOnSuiteAsync(CommandLineArgs args) + private async Task GenerateCrudPageAsync(CommandLineArgs args) { var entityFile = args.Options.GetOrNull(Options.Crud.Entity.Short, Options.Crud.Entity.Long); var solutionFile = args.Options.GetOrNull(Options.Crud.Solution.Short, Options.Crud.Solution.Long); @@ -98,7 +105,7 @@ public class SuiteCommand : IConsoleCommand, ITransientDependency { throw new UserFriendlyException("Invalid Arguments!"); } - + Logger.LogInformation("Generating CRUD Page..."); var client = _cliHttpClientFactory.CreateClient(false); @@ -108,7 +115,7 @@ public class SuiteCommand : IConsoleCommand, ITransientDependency { return; } - + var entityContent = new StringContent( File.ReadAllText(entityFile), Encoding.UTF8, @@ -116,7 +123,7 @@ public class SuiteCommand : IConsoleCommand, ITransientDependency ); var responseMessage = await client.PostAsync( - $"http://localhost:3000/api/abpSuite/crudPageGenerator/{solutionId.ToString()}/save-and-generate-entity", + $"{AbpSuiteHost}/api/abpSuite/crudPageGenerator/{solutionId.ToString()}/save-and-generate-entity", entityContent ); @@ -128,7 +135,7 @@ public class SuiteCommand : IConsoleCommand, ITransientDependency } else { - Logger.LogInformation("CRUD page generated."); + Logger.LogInformation("CRUD page generation successfully completed."); } } @@ -148,7 +155,7 @@ public class SuiteCommand : IConsoleCommand, ITransientDependency var response = await responseMessage.Content.ReadAsStringAsync(); JArray solutions; - + try { solutions = (JArray)(JObject.Parse(response)["solutions"]); @@ -185,7 +192,7 @@ public class SuiteCommand : IConsoleCommand, ITransientDependency ); var response = await responseMessage.Content.ReadAsStringAsync(); - + try { return Guid.Parse(JObject.Parse(response)["id"].ToString()); @@ -396,14 +403,13 @@ public class SuiteCommand : IConsoleCommand, ITransientDependency CmdHelper.RunCmd("abp-suite"); } - private Process RunSuiteTemporary() + private Process StartSuite() { try { if (!GlobalToolHelper.IsGlobalToolInstalled("abp-suite")) { - Logger.LogWarning( - "ABP Suite is not installed! To install it you can run the command: \"abp suite install\""); + Logger.LogWarning("ABP Suite is not installed! To install it you can run the command: \"abp suite install\""); return null; } } @@ -427,6 +433,26 @@ public class SuiteCommand : IConsoleCommand, ITransientDependency return endpoints.Any(e => e.Port == 3000); } + private void KillSuite() + { + try + { + var suiteProcesses = (from p in Process.GetProcesses() + where p.ProcessName.ToLower().Contains("abp-suite") + select p); + + foreach (var suiteProcess in suiteProcesses) + { + suiteProcess.Kill(); + Logger.LogInformation("Suite closed."); + } + } + catch (Exception ex) + { + Logger.LogInformation("Cannot close Suite." + ex.Message); + } + } + public string GetUsageInfo() { var sb = new StringBuilder(); From 67247e05e0e83f81b5bc2c2b49a6ead6523ad460 Mon Sep 17 00:00:00 2001 From: liangshiwei Date: Wed, 13 Apr 2022 09:25:27 +0800 Subject: [PATCH 48/90] Make methods of AuditPropertySetter virtual --- .../Volo/Abp/Auditing/AuditPropertySetter.cs | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/framework/src/Volo.Abp.Auditing/Volo/Abp/Auditing/AuditPropertySetter.cs b/framework/src/Volo.Abp.Auditing/Volo/Abp/Auditing/AuditPropertySetter.cs index 91b5019199..d85bad82eb 100644 --- a/framework/src/Volo.Abp.Auditing/Volo/Abp/Auditing/AuditPropertySetter.cs +++ b/framework/src/Volo.Abp.Auditing/Volo/Abp/Auditing/AuditPropertySetter.cs @@ -21,25 +21,25 @@ public class AuditPropertySetter : IAuditPropertySetter, ITransientDependency Clock = clock; } - public void SetCreationProperties(object targetObject) + public virtual void SetCreationProperties(object targetObject) { SetCreationTime(targetObject); SetCreatorId(targetObject); } - public void SetModificationProperties(object targetObject) + public virtual void SetModificationProperties(object targetObject) { SetLastModificationTime(targetObject); SetLastModifierId(targetObject); } - public void SetDeletionProperties(object targetObject) + public virtual void SetDeletionProperties(object targetObject) { SetDeletionTime(targetObject); SetDeleterId(targetObject); } - private void SetCreationTime(object targetObject) + protected virtual void SetCreationTime(object targetObject) { if (!(targetObject is IHasCreationTime objectWithCreationTime)) { @@ -52,7 +52,7 @@ public class AuditPropertySetter : IAuditPropertySetter, ITransientDependency } } - private void SetCreatorId(object targetObject) + protected virtual void SetCreatorId(object targetObject) { if (!CurrentUser.Id.HasValue) { @@ -95,7 +95,7 @@ public class AuditPropertySetter : IAuditPropertySetter, ITransientDependency } } - private void SetLastModificationTime(object targetObject) + protected virtual void SetLastModificationTime(object targetObject) { if (targetObject is IHasModificationTime objectWithModificationTime) { @@ -103,7 +103,7 @@ public class AuditPropertySetter : IAuditPropertySetter, ITransientDependency } } - private void SetLastModifierId(object targetObject) + protected virtual void SetLastModifierId(object targetObject) { if (!(targetObject is IModificationAuditedObject modificationAuditedObject)) { @@ -137,7 +137,7 @@ public class AuditPropertySetter : IAuditPropertySetter, ITransientDependency modificationAuditedObject.LastModifierId = CurrentUser.Id; } - private void SetDeletionTime(object targetObject) + protected virtual void SetDeletionTime(object targetObject) { if (targetObject is IHasDeletionTime objectWithDeletionTime) { @@ -148,7 +148,7 @@ public class AuditPropertySetter : IAuditPropertySetter, ITransientDependency } } - private void SetDeleterId(object targetObject) + protected virtual void SetDeleterId(object targetObject) { if (!(targetObject is IDeletionAuditedObject deletionAuditedObject)) { From 6e7667ffd69483b93a3b5e5174d556a3a4a2e080 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Halil=20=C4=B0brahim=20Kalkan?= Date: Wed, 13 Apr 2022 14:55:41 +0300 Subject: [PATCH 49/90] Revised the distributed event documents --- ...-Application-Modules-Extending-Entities.md | 59 +++---------------- docs/en/Distributed-Event-Bus.md | 40 +++++-------- 2 files changed, 25 insertions(+), 74 deletions(-) diff --git a/docs/en/Customizing-Application-Modules-Extending-Entities.md b/docs/en/Customizing-Application-Modules-Extending-Entities.md index e1cb02e849..a3c9ae4e9a 100644 --- a/docs/en/Customizing-Application-Modules-Extending-Entities.md +++ b/docs/en/Customizing-Application-Modules-Extending-Entities.md @@ -109,68 +109,27 @@ public class MyLocalIdentityUserChangeEventHandler : [Distributed Event Bus](Distributed-Event-Bus.md) system is a way to publish an event in one application and receive the event in the same or different application running on the same or different server. -Assume that you want to get informed when a `IdentityUser` entity created, updated or deleted. You can create a class like below: +Assume that you want to get informed when `Tenant` entity (of the [Tenant Management](Modules/Tenant-Management.md) module) has created. In this case, you can subscribe to the `EntityCreatedEto` event as shown in the following example: ````csharp -public class MyDistributedIdentityUserChangeEventHandler : - IDistributedEventHandler>, - IDistributedEventHandler>, - IDistributedEventHandler>, +public class MyDistributedEventHandler : + IDistributedEventHandler>, ITransientDependency { - public async Task HandleEventAsync(EntityCreatedEto eventData) + public async Task HandleEventAsync(EntityCreatedEto eventData) { - if (eventData.Entity.EntityType == "Volo.Abp.Identity.IdentityUser") - { - var userId = Guid.Parse(eventData.Entity.KeysAsString); - //...handle the "created" event - } - } - - public async Task HandleEventAsync(EntityUpdatedEto eventData) - { - if (eventData.Entity.EntityType == "Volo.Abp.Identity.IdentityUser") - { - var userId = Guid.Parse(eventData.Entity.KeysAsString); - //...handle the "updated" event - } - } - - public async Task HandleEventAsync(EntityDeletedEto eventData) - { - if (eventData.Entity.EntityType == "Volo.Abp.Identity.IdentityUser") - { - var userId = Guid.Parse(eventData.Entity.KeysAsString); - //...handle the "deleted" event - } - } -} -```` - -* It implements multiple `IDistributedEventHandler` interfaces: **Created**, **Updated** and **Deleted**. Because, the distributed event bus system publishes events individually. There is no "Changed" event like the local event bus. -* It subscribes to `EntityEto`, which is a generic event class that is **automatically published** for all type of entities by the ABP framework. This is why it checks the **entity type** (checking the entity type as string since we assume that there is no type safe reference to the `IdentityUser` entity). - -Pre-built application modules do not define specialized event types yet (like `UserEto` - "ETO" means "Event Transfer Object"). This feature is on the road map and will be available in a short term ([follow this issue](https://github.com/abpframework/abp/issues/3033)). Once it is implemented, you will be able to subscribe to individual entity types. Example: - -````csharp -public class MyDistributedIdentityUserCreatedEventHandler : - IDistributedEventHandler>, - ITransientDependency -{ - public async Task HandleEventAsync(EntityCreatedEto eventData) - { - var userId = eventData.Entity.Id; - var userName = eventData.Entity.UserName; - //...handle the "created" event + var tenantId = eventData.Entity.Id; + var tenantName = eventData.Entity.Name; + //...your custom logic } //... } ```` -* This handler is executed only when a new user has been created. +This handler is executed only when a new tenant has been created. All the pre-built ABP [application modules](Modules/Index.md) define corresponding `ETO` types for their entities. So, you can easily get informed when they changes. -> The only pre-defined specialized event class is the `UserEto`. For example, you can subscribe to the `EntityCreatedEto` to get notified when a user has created. This event also works for the Identity module. +> Notice that ABP doesn't publish distributed events for an entity by default. Because it has a cost and should be enabled by intention. See the [distributed event bus document](Distributed-Event-Bus.md) to learn more. ## See Also diff --git a/docs/en/Distributed-Event-Bus.md b/docs/en/Distributed-Event-Bus.md index d542ef5325..387fece078 100644 --- a/docs/en/Distributed-Event-Bus.md +++ b/docs/en/Distributed-Event-Bus.md @@ -228,6 +228,7 @@ namespace AbpDemo ```` * `MyHandler` implements the `IDistributedEventHandler>`. +* It is required to register your handler class to the [dependency injection](Dependency-Injection.md) system. Implementing `ITransient` like in this example is an easy way. ### Configuration @@ -242,10 +243,10 @@ Configure(options => options.AutoEventSelectors.AddAll(); //Enable for a single entity - options.AutoEventSelectors.Add(); + options.AutoEventSelectors.Add(); //Enable for all entities in a namespace (and child namespaces) - options.AutoEventSelectors.AddNamespace("Volo.Abp.Identity"); + options.AutoEventSelectors.AddNamespace("MyProject.Products"); //Custom predicate expression that should return true to select a type options.AutoEventSelectors.Add( @@ -265,10 +266,21 @@ Once you enable **auto events** for an entity, ABP Framework starts to publish e * `EntityType` (`string`): Full name (including namespace) of the entity class. * `KeysAsString` (`string`): Primary key(s) of the changed entity. If it has a single key, this property will be the primary key value. For a composite key, it will contain all keys separated by `,` (comma). -So, you can implement the `IDistributedEventHandler>` to subscribe the events. However, it is not a good approach to subscribe to such a generic event. You can define the corresponding ETO for the entity type. +So, you can implement the `IDistributedEventHandler>` to subscribe the update events. However, it is not a good approach to subscribe to such a generic event, because you handle the update events for all entities in a single handler (since they all use the same ETO object). You can define the corresponding ETO type for the entity type. **Example: Declare to use `ProductEto` for the `Product` entity** +````csharp +public class ProductEto +{ + public Guid Id { get; set; } + public string Name { get; set; } + public float Price { get; set; } +} +```` + +Then you can use the `AbpDistributedEntityEventOptions.EtoMappings` option to map your `Product` entity to the `ProductEto`: + ````csharp Configure(options => { @@ -282,24 +294,4 @@ This example; * Adds a selector to allow to publish the create, update and delete events for the `Product` entity. * Configure to use the `ProductEto` as the event transfer object to publish for the `Product` related events. -Distributed event system use the [object to object mapping](Object-To-Object-Mapping.md) system to map `Product` objects to `ProductEto` objects. So, you need to configure the mapping. You can check the object to object mapping document for all options, but the following example shows how to configure it with the [AutoMapper](https://automapper.org/) library. - -**Example: Configure `Product` to `ProductEto` mapping using the AutoMapper** - -````csharp -using System; -using AutoMapper; -using Volo.Abp.Domain.Entities.Events.Distributed; - -namespace AbpDemo -{ - [AutoMap(typeof(Product))] - public class ProductEto : EntityEto - { - public Guid Id { get; set; } - public string Name { get; set; } - } -} -```` - -This example uses the `AutoMap` attribute of the AutoMapper to configure the mapping. You could create a profile class instead. Please refer to the AutoMapper document for more options. \ No newline at end of file +> Distributed event system use the [object to object mapping](Object-To-Object-Mapping.md) system to map `Product` objects to `ProductEto` objects. So, you need to configure the object mapping (`Product` -> `ProductEto`) too. You can check the [object to object mapping document](Object-To-Object-Mapping.md) to learn how to do it. \ No newline at end of file From ac8c1330ace801160c985c5e7acc02c0cc47eda8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Halil=20=C4=B0brahim=20Kalkan?= Date: Wed, 13 Apr 2022 19:21:17 +0300 Subject: [PATCH 50/90] Added more info for add-module command --- docs/en/Customizing-Application-Modules-Guide.md | 2 +- docs/en/Customizing-Application-Modules-Overriding-Services.md | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/docs/en/Customizing-Application-Modules-Guide.md b/docs/en/Customizing-Application-Modules-Guide.md index b62d4e5bb7..4fe3c71dbe 100644 --- a/docs/en/Customizing-Application-Modules-Guide.md +++ b/docs/en/Customizing-Application-Modules-Guide.md @@ -31,7 +31,7 @@ If you don't think to make huge changes on the pre-built modules, re-using them If you want to make **huge changes** or add **major features** on a pre-built module, but the available extension points are not enough, you can consider to directly work the source code of the depended module. -In this case, you typically **add the source code** of the module to your solution and replace **every** package reference in the solution with its corresponding local project references. **[ABP CLI](CLI.md)** automates this process for you. +In this case, you typically **add the source code** of the module to your solution and replace **every** package reference in the solution with its corresponding local project references. **[ABP CLI](CLI.md)**'s `add-module` command automates this process for you with the `--with-source-code` parameter. This command can also replace a module by its source code if the module already installed as NuGet packages. #### Separating the Module Solution diff --git a/docs/en/Customizing-Application-Modules-Overriding-Services.md b/docs/en/Customizing-Application-Modules-Overriding-Services.md index 081b142ad7..fd42d4cfde 100644 --- a/docs/en/Customizing-Application-Modules-Overriding-Services.md +++ b/docs/en/Customizing-Application-Modules-Overriding-Services.md @@ -205,7 +205,8 @@ If you don't want to remove either controller, you can configure `AbpAspNetCoreM ```csharp Configure(options => { - options.IgnoredControllersOnModelExclusion.AddIfNotContains(typeof(MyAccountController)); + options.IgnoredControllersOnModelExclusion + .AddIfNotContains(typeof(MyAccountController)); }); ``` From 2b2905654908cdcbdfe3c77839242f2e2b56a53a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Halil=20=C4=B0brahim=20Kalkan?= Date: Wed, 13 Apr 2022 19:48:00 +0300 Subject: [PATCH 51/90] Documented: Overriding a Repository --- ...Application-Modules-Overriding-Services.md | 67 +++++++++++++++++++ 1 file changed, 67 insertions(+) diff --git a/docs/en/Customizing-Application-Modules-Overriding-Services.md b/docs/en/Customizing-Application-Modules-Overriding-Services.md index fd42d4cfde..a1a6c8b778 100644 --- a/docs/en/Customizing-Application-Modules-Overriding-Services.md +++ b/docs/en/Customizing-Application-Modules-Overriding-Services.md @@ -161,6 +161,73 @@ This example class inherits from the `IdentityUserManager` [domain service](Doma Check the [localization system](Localization.md) to learn how to localize the error messages. +### Example: Overriding a Repository + +````csharp +public class MyEfCoreIdentityUserRepository : EfCoreIdentityUserRepository +{ + public MyEfCoreIdentityUserRepository( + IDbContextProvider dbContextProvider) + : base(dbContextProvider) + { + } + + /* You can override any base method here */ +} +```` + +In this example, we are overriding the `EfCoreIdentityUserRepository` class that is defined by the [Identity module](Modules/Identity.md). This is the [Entity Framework Core](Entity-Framework-Core.md) implementation of the user repository. + +Thanks to the naming convention (`MyEfCoreIdentityUserRepository` ends with `EfCoreIdentityUserRepository`), no additional setup is required. You can override any base method to customize it for your needs. + +However, if you inject `IRepository` or `IRepository`, it will still use the default repository implementation. To replace the default repository implementation, write the following code in the `ConfigureServices` method of your module class: + +````csharp +context.Services.AddDefaultRepository( + typeof(Volo.Abp.Identity.IdentityUser), + typeof(MyEfCoreIdentityUserRepository), + replaceExisting: true +); +```` + +In this way, your implementation will be used if you inject `IRepository`, `IRepository` or `IIdentityUserRepository`. + +If you want to add extra methods to your repository and use it in your own code, you can define an interface and expose it from your repository implementation. You can also extend the pre-built repository interface. Example: + +````csharp +public interface IMyIdentityUserRepository : IIdentityUserRepository +{ + public Task DeleteByEmailAddress(string email); +} +```` + +The `IMyIdentityUserRepository` interface extends the Identity module's `IIdentityUserRepository` interface. Then you can implement it as shown in the following example: + +````csharp +[ExposeServices(typeof(IMyIdentityUserRepository), IncludeDefaults = true)] +public class MyEfCoreIdentityUserRepository + : EfCoreIdentityUserRepository, IMyIdentityUserRepository +{ + public MyEfCoreIdentityUserRepository( + IDbContextProvider dbContextProvider) + : base(dbContextProvider) + { + } + + public async Task DeleteByEmailAddress(string email) + { + var dbContext = await GetDbContextAsync(); + var user = await dbContext.Users.FirstOrDefaultAsync(u => u.Email == email); + if (user != null) + { + dbContext.Users.Remove(user); + } + } +} +```` + +The `MyEfCoreIdentityUserRepository` class implements the `IMyIdentityUserRepository` interface. `ExposeServices` attribute is needed since ABP can not expose `IMyIdentityUserRepository` by naming conventions (`MyEfCoreIdentityUserRepository` doesn't end with `MyIdentityUserRepository`). Now, you can inject the `IMyIdentityUserRepository` interface into your services and call its `DeleteByEmailAddress` method. + ### Example: Overriding a Controller ````csharp From 82bd18461b2396902bf5500c712b45ad00c478c3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Halil=20=C4=B0brahim=20Kalkan?= Date: Thu, 14 Apr 2022 11:08:41 +0300 Subject: [PATCH 52/90] Added Dealing with multiple implementations section --- docs/en/Dependency-Injection.md | 98 ++++++++++++++++++++++++++++++++- 1 file changed, 97 insertions(+), 1 deletion(-) diff --git a/docs/en/Dependency-Injection.md b/docs/en/Dependency-Injection.md index f347dc1dd7..019366b3be 100644 --- a/docs/en/Dependency-Injection.md +++ b/docs/en/Dependency-Injection.md @@ -49,7 +49,7 @@ public class BlogModule : AbpModule } ```` -The section below explains the conventions and configurations. +The sections below explain the conventions and configurations. ### Inherently Registered Types @@ -266,6 +266,102 @@ public class MyService : ITransientDependency } ```` +### Dealing with multiple implementations + +You can register multiple implementations of the same service interface. Assume that you have an `IExternalLogger` interface with two implementations: + +````csharp +public interface IExternalLogger +{ + Task LogAsync(string logText); +} + +public class ElasticsearchExternalLogger : IExternalLogger +{ + public async Task LogAsync(string logText) + { + //TODO... + } +} + +public class AzureExternalLogger : IExternalLogger +{ + public Task LogAsync(string logText) + { + throw new System.NotImplementedException(); + } +} +```` + +In this example, we haven't registered any of the implementation classes to the dependency injection system yet. So, if we try to inject the `IExternalLogger` interface, we get an error indicating that no implementation found. + +If we register both of the `ElasticsearchExternalLogger` and `AzureExternalLogger` services for the `IExternalLogger` interface, and then try to inject the `IExternalLogger` interface, then the last registered implementation will be used. + +An example service injecting the `IExternalLogger` interface: + +````csharp +public class MyService : ITransientDependency +{ + private readonly IExternalLogger _externalLogger; + + public MyService(IExternalLogger externalLogger) + { + _externalLogger = externalLogger; + } + + public async Task DemoAsync() + { + await _externalLogger.LogAsync("Example log message..."); + } +} +```` + +Here, as said before, we get the last registered implementation. However, how to determine the last registered implementation? + +If we implement one of the dependency interfaces (e.g. `ITransientDependency`), then the registration order will be uncertain (it may depend on the namespaces of the classes). The *last registered implementation* can be different than you expect. So, it is not suggested to use the dependency interfaces to register multiple implementations. + +You can register your services in the `ConfigureServices` method of your module: + +````csharp +public override void ConfigureServices(ServiceConfigurationContext context) +{ + context.Services.AddTransient(); + context.Services.AddTransient(); +} +```` + +In this case, you get an `AzureExternalLogger` instance when you inject the `IExternalLogger` interface, because the last registered implementation is the `AzureExternalLogger` class. + +When you have multiple implementation of an interface, you may want to work with all these implementations. Assume that you want to write log to all the external loggers. We can change the `MyService` implementation as the following: + +````csharp +public class MyService : ITransientDependency +{ + private readonly IEnumerable _externalLoggers; + + public MyService(IEnumerable externalLoggers) + { + _externalLoggers = externalLoggers; + } + + public async Task DemoAsync() + { + foreach (var externalLogger in _externalLoggers) + { + await externalLogger.LogAsync("Example log message..."); + } + } +} +```` + +In this example, we are injecting `IEnumerable` instead of `IExternalLogger`, so we have a collection of the `IExternalLogger` implementations. Then we are using a `foreach` loop to write the same log text to all the `IExternalLogger` implementations. + +If you are using `IServiceProvider` to resolve dependencies, then use its `GetServices` method to obtain a collection of the service implementations: + +````csharp +IEnumerable services = _serviceProvider.GetServices(); +```` + ### Releasing/Disposing Services If you used a constructor or property injection, you don't need to be concerned about releasing the service's resources. However, if you have resolved a service from ``IServiceProvider``, you might, in some cases, need to take care about releasing the service resources. From fcaa452d3cee869014cedd9f1ad9e8833b7348e3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Halil=20=C4=B0brahim=20Kalkan?= Date: Thu, 14 Apr 2022 11:31:20 +0300 Subject: [PATCH 53/90] Dealing with Multiple Implementations of a Service in Dependency Injection --- .../2022-04-14-Dependency-Injection/POST.md | 113 ++++++++++++++++++ 1 file changed, 113 insertions(+) create mode 100644 docs/en/Community-Articles/2022-04-14-Dependency-Injection/POST.md diff --git a/docs/en/Community-Articles/2022-04-14-Dependency-Injection/POST.md b/docs/en/Community-Articles/2022-04-14-Dependency-Injection/POST.md new file mode 100644 index 0000000000..d6f8b9a5ba --- /dev/null +++ b/docs/en/Community-Articles/2022-04-14-Dependency-Injection/POST.md @@ -0,0 +1,113 @@ +# Dealing with Multiple Implementations of a Service in Dependency Injection + +ASP.NET Core provides a built-in [dependency injection system](https://docs.microsoft.com/en-us/aspnet/core/fundamentals/dependency-injection) to register your services to the dependency injection container and inject/resolve them whenever you need. ABP's [dependency injection infrastructure](https://docs.abp.io/en/abp/latest/Dependency-Injection) is built on ASP.NET Core's DI system, automates service registration by conventions and provides some additional features. + +In this tutorial, I will explain how you can register multiple implementations of the same service interface and inject/resolve all these implementations when you need them. + +## Defining Services + +Assume that you have an `IExternalLogger` interface with two implementations: + +````csharp +public interface IExternalLogger +{ + Task LogAsync(string logText); +} + +public class ElasticsearchExternalLogger : IExternalLogger +{ + public async Task LogAsync(string logText) + { + //TODO... + } +} + +public class AzureExternalLogger : IExternalLogger +{ + public Task LogAsync(string logText) + { + throw new System.NotImplementedException(); + } +} +```` + +An example service injecting the `IExternalLogger` interface: + +````csharp +public class MyService : ITransientDependency +{ + private readonly IExternalLogger _externalLogger; + + public MyService(IExternalLogger externalLogger) + { + _externalLogger = externalLogger; + } + + public async Task DemoAsync() + { + await _externalLogger.LogAsync("Example log message..."); + } +} +```` + +In this example, we haven't registered any of the implementation classes to the dependency injection system yet. So, if we try to use the `MyService` class, we get an error indicating that no implementation found for the `IExternalLogger` service. We should register at least one implementation for the `IExternalLogger` interface. + +## Registering Services + +If we register both of the `ElasticsearchExternalLogger` and `AzureExternalLogger` services for the `IExternalLogger` interface, and then try to inject the `IExternalLogger` interface, the last registered implementation will be used. However, how to determine the last registered implementation? + +If we implement one of the [dependency interfaces](https://docs.abp.io/en/abp/latest/Dependency-Injection#dependency-interfaces) (e.g. `ITransientDependency`), then the registration order will be uncertain (it may depend on the namespaces of the classes). The *last registered implementation* can be different than you expect. So, it is not suggested to use the dependency interfaces to register multiple implementations. + +You can register your services in the `ConfigureServices` method of your module: + +````csharp +public override void ConfigureServices(ServiceConfigurationContext context) +{ + context.Services.AddTransient(); + context.Services.AddTransient(); +} +```` + +In this case, you get an `AzureExternalLogger` instance when you inject the `IExternalLogger` interface, because the last registered implementation is the `AzureExternalLogger` class. + +## Injecting Multiple Implementations + +When you have multiple implementation of an interface, you may want to work with all these implementations. For this example, you may want to write log to all the external loggers. We can change the `MyService` implementation as the following: + +````csharp +public class MyService : ITransientDependency +{ + private readonly IEnumerable _externalLoggers; + + public MyService(IEnumerable externalLoggers) + { + _externalLoggers = externalLoggers; + } + + public async Task DemoAsync() + { + foreach (var externalLogger in _externalLoggers) + { + await externalLogger.LogAsync("Example log message..."); + } + } +} +```` + +In this example, we are injecting `IEnumerable` instead of `IExternalLogger`, so we have a collection of the `IExternalLogger` implementations. Then we are using a `foreach` loop to write the same log text to all the `IExternalLogger` implementations. + +If you are using `IServiceProvider` to resolve dependencies, then use its `GetServices` method to obtain a collection of the service implementations: + +````csharp +IEnumerable services = _serviceProvider.GetServices(); +```` + +## Further Reading + +In this small tutorial, I explained how you can register multiple implementations of the same interface to the dependency injection system and inject/resolve all of them when you need. + +If you want to get more information about ABP's and ASP.NET Core's dependency injection systems, you can read the following documents: + +* [ABP's Dependency Injection documentation](https://docs.abp.io/en/abp/latest/Dependency-Injection) +* [ASP.NET Core Dependency Injection best practices, tips & tricks](https://medium.com/volosoft/asp-net-core-dependency-injection-best-practices-tips-tricks-c6e9c67f9d96) +* [ASP.NET Core's Dependency Injection documentation](https://docs.microsoft.com/en-us/aspnet/core/fundamentals/dependency-injection) \ No newline at end of file From b4e113592751a49ad385bd6c1d06c5440dcb3f7c Mon Sep 17 00:00:00 2001 From: Yunus Emre Kalkan Date: Thu, 14 Apr 2022 11:31:37 +0300 Subject: [PATCH 54/90] Put ABP Book to home pages of application template --- .../angular/src/app/home/home.component.html | 47 ++++++++++++++++--- .../Pages/Index.razor | 34 +++++++++++++- .../Pages/Index.razor | 32 ++++++++++++- .../Pages/Index.razor | 30 ++++++++++++ .../Pages/Index.cshtml | 35 ++++++++++++-- .../Pages/Index.cshtml | 35 ++++++++++++-- 6 files changed, 198 insertions(+), 15 deletions(-) diff --git a/templates/app/angular/src/app/home/home.component.html b/templates/app/angular/src/app/home/home.component.html index 39c197e4ca..2ab92b287c 100644 --- a/templates/app/angular/src/app/home/home.component.html +++ b/templates/app/angular/src/app/home/home.component.html @@ -11,9 +11,44 @@

{{ '::LongWelcomeMessage' | abpLocalization }}

{{ 'AbpAccount::Login' | abpLocalization }} {{ 'AbpAccount::Login' | abpLocalization }}
+
+
+
+
+ +
+
+
+ The Official Guide +

Mastering ABP Framework

+

Written by the creator of the ABP Framework, this book will help you gain a complete + understanding of the framework and modern web application development techniques.

+ + +
+
+
+
+

Let's improve your application!

Here are some links to help you get started:

@@ -268,13 +303,13 @@

Abp Framework Abp Framework Abp Commercial Abp Commercial abpframework abpframework

@@ -296,7 +331,7 @@ [href]="link.href" target="_blank" class="btn btn-link px-1" - >{{ link.label }} {{ link.label }}
@@ -309,7 +344,7 @@ Details Details
diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.Server.Tiered/Pages/Index.razor b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.Server.Tiered/Pages/Index.razor index 93745851b5..3fe35f24f2 100644 --- a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.Server.Tiered/Pages/Index.razor +++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.Server.Tiered/Pages/Index.razor @@ -12,13 +12,43 @@

Welcome to the Application

@L["LongWelcomeMessage"]

- + @if (!CurrentUser.IsAuthenticated) { - @L["Login"] + @L["Login"] }
+
+
+
+
+ +
+
+
+ The Official Guide +

Mastering ABP Framework

+

Written by the creator of the ABP Framework, this book will help you gain a complete understanding of the framework and modern web application development techniques.

+ + +
+
+
+
+
+

Let's improve your application!

Here are some links to help you get started:

diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.Server/Pages/Index.razor b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.Server/Pages/Index.razor index 4bb044a987..084bfea848 100644 --- a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.Server/Pages/Index.razor +++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.Server/Pages/Index.razor @@ -15,10 +15,40 @@ @if (!CurrentUser.IsAuthenticated) { - @L["Login"] + @L["Login"] }
+
+
+
+
+ +
+
+
+ The Official Guide +

Mastering ABP Framework

+

Written by the creator of the ABP Framework, this book will help you gain a complete understanding of the framework and modern web application development techniques.

+ + +
+
+
+
+
+

Let's improve your application!

Here are some links to help you get started:

diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/Pages/Index.razor b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/Pages/Index.razor index f5bbdd4b89..83fd7a031c 100644 --- a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/Pages/Index.razor +++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/Pages/Index.razor @@ -21,6 +21,36 @@ }
+
+
+
+
+ +
+
+
+ The Official Guide +

Mastering ABP Framework

+

Written by the creator of the ABP Framework, this book will help you gain a complete understanding of the framework and modern web application development techniques.

+ + +
+
+
+
+
+

Let's improve your application!

Here are some links to help you get started:

diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web.Host/Pages/Index.cshtml b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web.Host/Pages/Index.cshtml index 24277f225e..c96b33c6e9 100644 --- a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web.Host/Pages/Index.cshtml +++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web.Host/Pages/Index.cshtml @@ -6,10 +6,10 @@ @inject IHtmlLocalizer L @inject ICurrentUser CurrentUser @section styles { - + } @section scripts { - + }
@@ -22,10 +22,39 @@ @if (!CurrentUser.IsAuthenticated) { - @L["Login"] + @L["Login"] }
+
+
+
+
+ +
+
+
+ The Official Guide +

Mastering ABP Framework

+

Written by the creator of the ABP Framework, this book will help you gain a complete understanding of the framework and modern web application development techniques.

+ + +
+
+
+
+

Let's improve your application!

Here are some links to help you get started:

diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web/Pages/Index.cshtml b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web/Pages/Index.cshtml index 2035994cf0..d9bc10a4c7 100644 --- a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web/Pages/Index.cshtml +++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web/Pages/Index.cshtml @@ -6,10 +6,10 @@ @inject IHtmlLocalizer L @inject ICurrentUser CurrentUser @section styles { - + } @section scripts { - + }
@@ -22,10 +22,39 @@ @if (!CurrentUser.IsAuthenticated) { - @L["Login"] + @L["Login"] }
+
+
+
+
+ +
+
+
+ The Official Guide +

Mastering ABP Framework

+

Written by the creator of the ABP Framework, this book will help you gain a complete understanding of the framework and modern web application development techniques.

+ + +
+
+
+
+

Let's improve your application!

Here are some links to help you get started:

From 49d4a6ed1851cd204e90f2e2d028d93479cef686 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Halil=20=C4=B0brahim=20Kalkan?= Date: Thu, 14 Apr 2022 11:31:40 +0300 Subject: [PATCH 55/90] Update POST.md --- .../Community-Articles/2022-04-14-Dependency-Injection/POST.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/en/Community-Articles/2022-04-14-Dependency-Injection/POST.md b/docs/en/Community-Articles/2022-04-14-Dependency-Injection/POST.md index d6f8b9a5ba..edd74c1591 100644 --- a/docs/en/Community-Articles/2022-04-14-Dependency-Injection/POST.md +++ b/docs/en/Community-Articles/2022-04-14-Dependency-Injection/POST.md @@ -1,4 +1,4 @@ -# Dealing with Multiple Implementations of a Service in Dependency Injection +# Dealing with Multiple Implementations of a Service in ASP.NET Core & ABP Dependency Injection ASP.NET Core provides a built-in [dependency injection system](https://docs.microsoft.com/en-us/aspnet/core/fundamentals/dependency-injection) to register your services to the dependency injection container and inject/resolve them whenever you need. ABP's [dependency injection infrastructure](https://docs.abp.io/en/abp/latest/Dependency-Injection) is built on ASP.NET Core's DI system, automates service registration by conventions and provides some additional features. From 187732612a61687ae32f8a16063c240d47243936 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Halil=20=C4=B0brahim=20Kalkan?= Date: Thu, 14 Apr 2022 11:36:04 +0300 Subject: [PATCH 56/90] Update POST.md --- .../2022-04-14-Dependency-Injection/POST.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/en/Community-Articles/2022-04-14-Dependency-Injection/POST.md b/docs/en/Community-Articles/2022-04-14-Dependency-Injection/POST.md index edd74c1591..092fb72dbc 100644 --- a/docs/en/Community-Articles/2022-04-14-Dependency-Injection/POST.md +++ b/docs/en/Community-Articles/2022-04-14-Dependency-Injection/POST.md @@ -18,15 +18,15 @@ public class ElasticsearchExternalLogger : IExternalLogger { public async Task LogAsync(string logText) { - //TODO... + // TODO... } } public class AzureExternalLogger : IExternalLogger { - public Task LogAsync(string logText) + public async Task LogAsync(string logText) { - throw new System.NotImplementedException(); + // TODO... } } ```` From 963c47f03f6eff3f648d2e4554b0eb97bbffaa7a Mon Sep 17 00:00:00 2001 From: Yunus Emre Kalkan Date: Thu, 14 Apr 2022 11:46:16 +0300 Subject: [PATCH 57/90] Put ABP Book to home pages of application nolayers template --- .../angular/src/app/home/home.component.html | 39 ++++++++++++++++++- .../Pages/Index.razor | 30 ++++++++++++++ .../Pages/Index.razor | 30 ++++++++++++++ .../Pages/Index.cshtml | 30 ++++++++++++++ .../Pages/Index.cshtml | 30 ++++++++++++++ 5 files changed, 157 insertions(+), 2 deletions(-) diff --git a/templates/app-nolayers/angular/src/app/home/home.component.html b/templates/app-nolayers/angular/src/app/home/home.component.html index ae58ba4051..273b0039ba 100644 --- a/templates/app-nolayers/angular/src/app/home/home.component.html +++ b/templates/app-nolayers/angular/src/app/home/home.component.html @@ -1,4 +1,4 @@ -
+
@@ -9,4 +9,39 @@ {{ '::Welcome_Text' | abpLocalization }}
-
\ No newline at end of file +
+
+
+
+ +
+
+
+ The Official Guide +

Mastering ABP Framework

+

Written by the creator of the ABP Framework, this book will help you gain a complete + understanding of the framework and modern web application development techniques.

+ + +
+
+
+
+
+
diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Pages/Index.razor b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Pages/Index.razor index 64cfd00d9e..93b6f25715 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Pages/Index.razor +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Pages/Index.razor @@ -11,4 +11,34 @@ @L["Welcome_Text"]
+ +
+
+
+
+ +
+
+
+ The Official Guide +

Mastering ABP Framework

+

Written by the creator of the ABP Framework, this book will help you gain a complete understanding of the framework and modern web application development techniques.

+ + +
+
+
+
+
diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Pages/Index.razor b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Pages/Index.razor index 64cfd00d9e..93b6f25715 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Pages/Index.razor +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Pages/Index.razor @@ -11,4 +11,34 @@ @L["Welcome_Text"]
+ +
+
+
+
+ +
+
+
+ The Official Guide +

Mastering ABP Framework

+

Written by the creator of the ABP Framework, this book will help you gain a complete understanding of the framework and modern web application development techniques.

+ + +
+
+
+
+
diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Pages/Index.cshtml b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Pages/Index.cshtml index e8d29eac9d..0ce88725f4 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Pages/Index.cshtml +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Pages/Index.cshtml @@ -21,4 +21,34 @@ @L["Welcome_Text"] + +
+
+
+
+ +
+
+
+ The Official Guide +

Mastering ABP Framework

+

Written by the creator of the ABP Framework, this book will help you gain a complete understanding of the framework and modern web application development techniques.

+ + +
+
+
+
+
\ No newline at end of file diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Pages/Index.cshtml b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Pages/Index.cshtml index e8d29eac9d..0ce88725f4 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Pages/Index.cshtml +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Pages/Index.cshtml @@ -21,4 +21,34 @@ @L["Welcome_Text"] + +
+
+
+
+ +
+
+
+ The Official Guide +

Mastering ABP Framework

+

Written by the creator of the ABP Framework, this book will help you gain a complete understanding of the framework and modern web application development techniques.

+ + +
+
+
+
+
\ No newline at end of file From f1a2a4ba61d8dd8a909a24f3313de350ed8a1291 Mon Sep 17 00:00:00 2001 From: Yunus Emre Kalkan Date: Thu, 14 Apr 2022 12:21:48 +0300 Subject: [PATCH 58/90] Remove `Click here to learn more` link --- .../app-nolayers/angular/src/app/home/home.component.html | 6 ------ .../Pages/Index.razor | 5 ----- .../Pages/Index.razor | 5 ----- .../Pages/Index.cshtml | 5 ----- .../MyCompanyName.MyProjectName.Mvc/Pages/Index.cshtml | 5 ----- templates/app/angular/src/app/home/home.component.html | 6 ------ .../Pages/Index.razor | 5 ----- .../Pages/Index.razor | 5 ----- .../MyCompanyName.MyProjectName.Blazor/Pages/Index.razor | 5 ----- .../MyCompanyName.MyProjectName.Web.Host/Pages/Index.cshtml | 5 ----- .../src/MyCompanyName.MyProjectName.Web/Pages/Index.cshtml | 5 ----- 11 files changed, 57 deletions(-) diff --git a/templates/app-nolayers/angular/src/app/home/home.component.html b/templates/app-nolayers/angular/src/app/home/home.component.html index 273b0039ba..c469a244de 100644 --- a/templates/app-nolayers/angular/src/app/home/home.component.html +++ b/templates/app-nolayers/angular/src/app/home/home.component.html @@ -33,12 +33,6 @@ Buy on PACKT - diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Pages/Index.razor b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Pages/Index.razor index 93b6f25715..73b18b975e 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Pages/Index.razor +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Pages/Index.razor @@ -31,11 +31,6 @@ Buy on PACKT - diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Pages/Index.razor b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Pages/Index.razor index 93b6f25715..73b18b975e 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Pages/Index.razor +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Pages/Index.razor @@ -31,11 +31,6 @@ Buy on PACKT - diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Pages/Index.cshtml b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Pages/Index.cshtml index 0ce88725f4..0054967c73 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Pages/Index.cshtml +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Pages/Index.cshtml @@ -41,11 +41,6 @@ Buy on PACKT - diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Pages/Index.cshtml b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Pages/Index.cshtml index 0ce88725f4..0054967c73 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Pages/Index.cshtml +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Pages/Index.cshtml @@ -41,11 +41,6 @@ Buy on PACKT - diff --git a/templates/app/angular/src/app/home/home.component.html b/templates/app/angular/src/app/home/home.component.html index 2ab92b287c..0bcef1c166 100644 --- a/templates/app/angular/src/app/home/home.component.html +++ b/templates/app/angular/src/app/home/home.component.html @@ -38,12 +38,6 @@ Buy on PACKT - diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.Server.Tiered/Pages/Index.razor b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.Server.Tiered/Pages/Index.razor index 3fe35f24f2..cfdfb806f4 100644 --- a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.Server.Tiered/Pages/Index.razor +++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.Server.Tiered/Pages/Index.razor @@ -38,11 +38,6 @@ Buy on PACKT - diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.Server/Pages/Index.razor b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.Server/Pages/Index.razor index 084bfea848..e3153e68a7 100644 --- a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.Server/Pages/Index.razor +++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.Server/Pages/Index.razor @@ -38,11 +38,6 @@ Buy on PACKT - diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/Pages/Index.razor b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/Pages/Index.razor index 83fd7a031c..b27b97109c 100644 --- a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/Pages/Index.razor +++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/Pages/Index.razor @@ -40,11 +40,6 @@ Buy on PACKT - diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web.Host/Pages/Index.cshtml b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web.Host/Pages/Index.cshtml index c96b33c6e9..9f888e8e4e 100644 --- a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web.Host/Pages/Index.cshtml +++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web.Host/Pages/Index.cshtml @@ -45,11 +45,6 @@ Buy on PACKT - diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web/Pages/Index.cshtml b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web/Pages/Index.cshtml index d9bc10a4c7..af2cf31519 100644 --- a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web/Pages/Index.cshtml +++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web/Pages/Index.cshtml @@ -45,11 +45,6 @@ Buy on PACKT - From 0d1e0f51a0fec1c856dd7500f5829d143aa0ad4e Mon Sep 17 00:00:00 2001 From: Yunus Emre Kalkan Date: Thu, 14 Apr 2022 12:27:50 +0300 Subject: [PATCH 59/90] The Official Guide to THE OFFICIAL GUIDE --- templates/app-nolayers/angular/src/app/home/home.component.html | 2 +- .../Pages/Index.razor | 2 +- .../MyCompanyName.MyProjectName.Blazor.Server/Pages/Index.razor | 2 +- .../MyCompanyName.MyProjectName.Mvc.Mongo/Pages/Index.cshtml | 2 +- .../MyCompanyName.MyProjectName.Mvc/Pages/Index.cshtml | 2 +- templates/app/angular/src/app/home/home.component.html | 2 +- .../Pages/Index.razor | 2 +- .../MyCompanyName.MyProjectName.Blazor.Server/Pages/Index.razor | 2 +- .../src/MyCompanyName.MyProjectName.Blazor/Pages/Index.razor | 2 +- .../src/MyCompanyName.MyProjectName.Web.Host/Pages/Index.cshtml | 2 +- .../src/MyCompanyName.MyProjectName.Web/Pages/Index.cshtml | 2 +- 11 files changed, 11 insertions(+), 11 deletions(-) diff --git a/templates/app-nolayers/angular/src/app/home/home.component.html b/templates/app-nolayers/angular/src/app/home/home.component.html index c469a244de..14accbdf36 100644 --- a/templates/app-nolayers/angular/src/app/home/home.component.html +++ b/templates/app-nolayers/angular/src/app/home/home.component.html @@ -18,7 +18,7 @@
- The Official Guide + THE OFFICIAL GUIDE

Mastering ABP Framework

Written by the creator of the ABP Framework, this book will help you gain a complete understanding of the framework and modern web application development techniques.

diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Pages/Index.razor b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Pages/Index.razor index 73b18b975e..dd80683f4c 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Pages/Index.razor +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Pages/Index.razor @@ -20,7 +20,7 @@
- The Official Guide + THE OFFICIAL GUIDE

Mastering ABP Framework

Written by the creator of the ABP Framework, this book will help you gain a complete understanding of the framework and modern web application development techniques.

diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Pages/Index.razor b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Pages/Index.razor index 73b18b975e..dd80683f4c 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Pages/Index.razor +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Pages/Index.razor @@ -20,7 +20,7 @@
- The Official Guide + THE OFFICIAL GUIDE

Mastering ABP Framework

Written by the creator of the ABP Framework, this book will help you gain a complete understanding of the framework and modern web application development techniques.

diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Pages/Index.cshtml b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Pages/Index.cshtml index 0054967c73..3ee32d2ac5 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Pages/Index.cshtml +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Pages/Index.cshtml @@ -30,7 +30,7 @@
- The Official Guide + THE OFFICIAL GUIDE

Mastering ABP Framework

Written by the creator of the ABP Framework, this book will help you gain a complete understanding of the framework and modern web application development techniques.

diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Pages/Index.cshtml b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Pages/Index.cshtml index 0054967c73..3ee32d2ac5 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Pages/Index.cshtml +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Pages/Index.cshtml @@ -30,7 +30,7 @@
- The Official Guide + THE OFFICIAL GUIDE

Mastering ABP Framework

Written by the creator of the ABP Framework, this book will help you gain a complete understanding of the framework and modern web application development techniques.

diff --git a/templates/app/angular/src/app/home/home.component.html b/templates/app/angular/src/app/home/home.component.html index 0bcef1c166..3d8c3db65d 100644 --- a/templates/app/angular/src/app/home/home.component.html +++ b/templates/app/angular/src/app/home/home.component.html @@ -23,7 +23,7 @@
- The Official Guide + THE OFFICIAL GUIDE

Mastering ABP Framework

Written by the creator of the ABP Framework, this book will help you gain a complete understanding of the framework and modern web application development techniques.

diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.Server.Tiered/Pages/Index.razor b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.Server.Tiered/Pages/Index.razor index cfdfb806f4..063434c52c 100644 --- a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.Server.Tiered/Pages/Index.razor +++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.Server.Tiered/Pages/Index.razor @@ -27,7 +27,7 @@
- The Official Guide + THE OFFICIAL GUIDE

Mastering ABP Framework

Written by the creator of the ABP Framework, this book will help you gain a complete understanding of the framework and modern web application development techniques.

diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.Server/Pages/Index.razor b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.Server/Pages/Index.razor index e3153e68a7..874098dd6b 100644 --- a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.Server/Pages/Index.razor +++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.Server/Pages/Index.razor @@ -27,7 +27,7 @@
- The Official Guide + THE OFFICIAL GUIDE

Mastering ABP Framework

Written by the creator of the ABP Framework, this book will help you gain a complete understanding of the framework and modern web application development techniques.

diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/Pages/Index.razor b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/Pages/Index.razor index b27b97109c..bf959ba3d0 100644 --- a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/Pages/Index.razor +++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/Pages/Index.razor @@ -29,7 +29,7 @@
- The Official Guide + THE OFFICIAL GUIDE

Mastering ABP Framework

Written by the creator of the ABP Framework, this book will help you gain a complete understanding of the framework and modern web application development techniques.

diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web.Host/Pages/Index.cshtml b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web.Host/Pages/Index.cshtml index 9f888e8e4e..4038fb8df2 100644 --- a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web.Host/Pages/Index.cshtml +++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web.Host/Pages/Index.cshtml @@ -34,7 +34,7 @@
- The Official Guide + THE OFFICIAL GUIDE

Mastering ABP Framework

Written by the creator of the ABP Framework, this book will help you gain a complete understanding of the framework and modern web application development techniques.

diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web/Pages/Index.cshtml b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web/Pages/Index.cshtml index af2cf31519..e9fe3eaf88 100644 --- a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web/Pages/Index.cshtml +++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web/Pages/Index.cshtml @@ -34,7 +34,7 @@
- The Official Guide + THE OFFICIAL GUIDE

Mastering ABP Framework

Written by the creator of the ABP Framework, this book will help you gain a complete understanding of the framework and modern web application development techniques.

From 02a531fb0bdfd3b2da773e2c77cfcd2f07873e94 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Halil=20=C4=B0brahim=20Kalkan?= Date: Thu, 14 Apr 2022 12:44:13 +0300 Subject: [PATCH 60/90] Add DBMS option information --- docs/en/Entity-Framework-Core-MySQL.md | 2 ++ docs/en/Entity-Framework-Core-Oracle.md | 2 ++ docs/en/Entity-Framework-Core-Other-DBMS.md | 23 ++++++++++++++++++--- docs/en/Entity-Framework-Core-PostgreSQL.md | 2 ++ docs/en/Entity-Framework-Core-SQLite.md | 2 ++ 5 files changed, 28 insertions(+), 3 deletions(-) diff --git a/docs/en/Entity-Framework-Core-MySQL.md b/docs/en/Entity-Framework-Core-MySQL.md index 37b7cc9d2f..ccfdd89da3 100644 --- a/docs/en/Entity-Framework-Core-MySQL.md +++ b/docs/en/Entity-Framework-Core-MySQL.md @@ -1,5 +1,7 @@ # Switch to EF Core MySQL Provider +> [ABP CLI](CLI.md) and the [Get Started](https://abp.io/get-started) page already provides an option to create a new solution with MySQL. See [that document](Entity-Framework-Core-Other-DBMS.md) to learn how to use. This document provides guidance for who wants to manually switch to MySQL after creating the solution. + This document explains how to switch to the **MySQL** database provider for **[the application startup template](Startup-Templates/Application.md)** which comes with SQL Server provider pre-configured. ## Replace the Volo.Abp.EntityFrameworkCore.SqlServer Package diff --git a/docs/en/Entity-Framework-Core-Oracle.md b/docs/en/Entity-Framework-Core-Oracle.md index 1e340302dc..6e7686c6b0 100644 --- a/docs/en/Entity-Framework-Core-Oracle.md +++ b/docs/en/Entity-Framework-Core-Oracle.md @@ -1,5 +1,7 @@ # Switch to EF Core Oracle Provider +> [ABP CLI](CLI.md) and the [Get Started](https://abp.io/get-started) page already provides an option to create a new solution with Oracle. See [that document](Entity-Framework-Core-Other-DBMS.md) to learn how to use. This document provides guidance for who wants to manually switch to Oracle after creating the solution. + This document explains how to switch to the **Oracle** database provider for **[the application startup template](Startup-Templates/Application.md)** which comes with SQL Server provider pre-configured. ABP Framework provides integrations for two different Oracle packages. See one of the following documents based on your provider decision: diff --git a/docs/en/Entity-Framework-Core-Other-DBMS.md b/docs/en/Entity-Framework-Core-Other-DBMS.md index 9739dbdd02..bb14f2b906 100644 --- a/docs/en/Entity-Framework-Core-Other-DBMS.md +++ b/docs/en/Entity-Framework-Core-Other-DBMS.md @@ -1,15 +1,32 @@ # Switch to Another DBMS for Entity Framework Core -**[The application startup template](Startup-Templates/Application.md)** comes with **SQL Server provider pre-configured** for the Entity Framework Core. However, EF Core supports [many other DBMSs](https://docs.microsoft.com/en-us/ef/core/providers/) and you can use any of them within your ABP based applications. +[ABP CLI](CLI.md) provides a `-dbms` option to allow you to choose your Database Management System (DBMS) while creating a new solution. It accepts the following values: -ABP framework provides **integration packages** for some common DBMSs to make the configuration a bit easier. You can use the following documents to learn how to **switch to your favorite DBMS**: +- `SqlServer` (default) +- `MySQL` +- `SQLite` +- `Oracle` +- `Oracle-Devart` +- `PostgreSQL` + +So, if you want to use MySQL for your solution, you can use the `-dbms MySQL` option while using the `abp new` command. Example: + +````bash +abp new BookStore -dbms MySQL +```` + +Also, the [Get Started page](https://abp.io/get-started) on the ABP website allows you to select one of the providers. + +> **This document provides guidance for who wants to manually change their DBMS after creating the solution.** + +You can use the following documents to learn how to **switch to your favorite DBMS**: * [MySQL](Entity-Framework-Core-MySQL.md) * [PostgreSQL](Entity-Framework-Core-PostgreSQL.md) * [Oracle](Entity-Framework-Core-Oracle.md) * [SQLite](Entity-Framework-Core-SQLite.md) -However, you can configure your DBMS provider **without** these integration packages. While using the integration package is always recommended (it also makes standard for the depended version across different modules), you can do it manually if there is no integration package for your DBMS provider. +You can also configure your DBMS provider **without** these integration packages. While using the integration package is always recommended (it also makes standard for the depended version across different modules), you can do it yourself if there is no integration package for your DBMS provider. For an example, this document explains how to switch to MySQL without using [the MySQL integration package](Entity-Framework-Core-MySQL.md). diff --git a/docs/en/Entity-Framework-Core-PostgreSQL.md b/docs/en/Entity-Framework-Core-PostgreSQL.md index 4ddd3dd22a..9cdaeae34c 100644 --- a/docs/en/Entity-Framework-Core-PostgreSQL.md +++ b/docs/en/Entity-Framework-Core-PostgreSQL.md @@ -1,5 +1,7 @@ # Switch to EF Core PostgreSQL Provider +> [ABP CLI](CLI.md) and the [Get Started](https://abp.io/get-started) page already provides an option to create a new solution with PostgreSQL. See [that document](Entity-Framework-Core-Other-DBMS.md) to learn how to use. This document provides guidance for who wants to manually switch to PostgreSQL after creating the solution. + This document explains how to switch to the **PostgreSQL** database provider for **[the application startup template](Startup-Templates/Application.md)** which comes with SQL Server provider pre-configured. ## Replace the Volo.Abp.EntityFrameworkCore.SqlServer Package diff --git a/docs/en/Entity-Framework-Core-SQLite.md b/docs/en/Entity-Framework-Core-SQLite.md index cbacf3baa5..5015320af1 100644 --- a/docs/en/Entity-Framework-Core-SQLite.md +++ b/docs/en/Entity-Framework-Core-SQLite.md @@ -1,5 +1,7 @@ # Switch to EF Core SQLite Provider +> [ABP CLI](CLI.md) and the [Get Started](https://abp.io/get-started) page already provides an option to create a new solution with SQLite. See [that document](Entity-Framework-Core-Other-DBMS.md) to learn how to use. This document provides guidance for who wants to manually switch to SQLite after creating the solution. + This document explains how to switch to the **SQLite** database provider for **[the application startup template](Startup-Templates/Application.md)** which comes with SQL Server provider pre-configured. ## Replace the Volo.Abp.EntityFrameworkCore.SqlServer Package From 801e0e2685c2ffe1b352b8e7ee0ff8bf895f29b2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Halil=20=C4=B0brahim=20Kalkan?= Date: Thu, 14 Apr 2022 16:16:06 +0300 Subject: [PATCH 61/90] Added section: Dealing with Unit of Work in Integration Tests --- docs/en/Testing.md | 99 +++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 97 insertions(+), 2 deletions(-) diff --git a/docs/en/Testing.md b/docs/en/Testing.md index 29302f2e35..619aaa2160 100644 --- a/docs/en/Testing.md +++ b/docs/en/Testing.md @@ -423,7 +423,7 @@ namespace MyProject.Issues ## Integration Tests -> You can follow the [web application development tutorial](Tutorials/Part-1.md) to learn developing a full stack application, including the integration tests. +> You can also follow the [web application development tutorial](Tutorials/Part-1.md) to learn developing a full stack application, including the integration tests. ### The Integration Test Infrastructure @@ -442,7 +442,7 @@ Using in-memory SQLite database has two main advantages; ### The Seed Data -Writing tests against an empty database is not practical. In most cases, you need to some initial data in the database. For example, if you write a test class that query, update and delete the Products, it would be helpful to have a few products in the database before executing the test case. +Writing tests against an empty database is not practical. In most cases, you need to some initial data in the database. For example, if you write a test class that query, update and delete the products, it would be helpful to have a few products in the database before executing the test case. ABP's [Data Seeding](Data-Seeding.md) system is a powerful way to seed the initial data. The application startup template has a *YourProject*TestDataSeedContributor class in the `.TestBase` project. You can fill it to have an initial data that you can use for each test method. @@ -649,6 +649,101 @@ namespace MyProject.Issues It's that simple. This test method tests everything, including the application service, EF Core mapping, object to object mapping and the repository implementation. In this way, you can fully test the Application Layer and the Domain Layer of your solution. +### Dealing with Unit of Work in Integration Tests + +ABP's [unit of work](Unit-Of-Work.md) system controls the database connection and transaction management in your application. It seamlessly works while you writing your application code, so you may not aware of it. + +In the ABP Framework, all the database operations must be performed inside a unit of work scope. When you test an [application service](Application-Services.md) method, the unit of work scope will be the scope of your application service method. If you are testing a [repository](Repositories.md) method, the unit of work scope will be the scope of your repository method. + +In some cases, you may need to manually control the unit of work scope. Consider the following test method: + +````csharp +public class IssueRepository_Tests : MyProjectDomainTestBase +{ + private readonly IRepository _issueRepository; + + public IssueRepository_Tests() + { + _issueRepository = GetRequiredService>(); + } + + public async Task Should_Query_By_Title() + { + IQueryable queryable = await _issueRepository.GetQueryableAsync(); + var issue = queryable.FirstOrDefaultAsync(i => i.Title == "My issue title"); + issue.ShouldNotBeNull(); + } +} +```` + +We are using `_issueRepository.GetQueryableAsync` to obtain an `IQueryable` object. Then, we are using the `FirstOrDefaultAsync` method to query an issue by its title. The database query is executed at this point, and you get an exception indicating that there is no active unit of work. + +To make that test properly working, you should manually start a unit of work scope as shown in the following example: + +````csharp +public class IssueRepository_Tests : MyProjectDomainTestBase +{ + private readonly IRepository _issueRepository; + private readonly IUnitOfWorkManager _unitOfWorkManager; + + public IssueRepository_Tests() + { + _issueRepository = GetRequiredService>(); + _unitOfWorkManager = GetRequiredService(); + } + + public async Task Should_Query_By_Title() + { + using (var uow = _unitOfWorkManager.Begin()) + { + IQueryable queryable = await _issueRepository.GetQueryableAsync(); + var issue = queryable.FirstOrDefaultAsync(i => i.Title == "My issue title"); + issue.ShouldNotBeNull(); + await uow.CompleteAsync(); + } + } +} +```` + +We've used the `IUnitOfWorkManager` service to create a unit of work scope, then called the `FirstOrDefaultAsync` method inside that scope, so we don't have the problem anymore. + +> Note that we've tested the `FirstOrDefaultAsync` to demonstrate the unit of work problem. Normally, as a good principle, you should write tests only your own code. + +### Working with DbContext + +In some cases, you may want to directory work with the Entity Framework's `DbContext` object to perform database operations in your test methods. In this case, you can use `IDbContextProvider`service to obtain a `DbContext` instance inside a unit of work. + +The following example shows how you can create a `DbContext` object in a test method: + +````csharp +public class MyDbContext_Tests : MyProjectDomainTestBase +{ + private readonly IDbContextProvider _dbContextProvider; + private readonly IUnitOfWorkManager _unitOfWorkManager; + + public IssueRepository_Tests() + { + _dbContextProvider = GetRequiredService>(); + _unitOfWorkManager = GetRequiredService(); + } + + public async Task Should_Query_By_Title() + { + using (var uow = _unitOfWorkManager.Begin()) + { + var dbContext = await _dbContextProvider.GetDbContextAsync(); + var issue = await dbContext.Issues.FirstOrDefaultAsync(i => i.Title == "My issue title"); + issue.ShouldNotBeNull(); + await uow.CompleteAsync(); + } + } +} +```` + +Just like we've done in the *Dealing with Unit of Work in Integration Tests* section, we should perform `DbContext` operations inside an active unit of work. + +For [MongoDB](MongoDB.md), you can use the `IMongoDbContextProvider` service to obtain a `DbContext` object and directly use MongoDB APIs in your test methods. + ## UI Tests In general, there are two types of UI Tests; From 69b41a2db5ffb194e5976ba49c4b52deec2a7119 Mon Sep 17 00:00:00 2001 From: maliming Date: Thu, 14 Apr 2022 21:20:02 +0800 Subject: [PATCH 62/90] Add `UnitOfWorkExtensions_Tests` Resolve #12260 --- .../Volo/Abp/Uow/UnitOfWorkExtensions.cs | 2 +- .../Abp/Uow/UnitOfWorkExtensions_Tests.cs | 58 +++++++++++++++++++ 2 files changed, 59 insertions(+), 1 deletion(-) create mode 100644 framework/test/Volo.Abp.Uow.Tests/Volo/Abp/Uow/UnitOfWorkExtensions_Tests.cs diff --git a/framework/src/Volo.Abp.Uow/Volo/Abp/Uow/UnitOfWorkExtensions.cs b/framework/src/Volo.Abp.Uow/Volo/Abp/Uow/UnitOfWorkExtensions.cs index 44dc92d9cf..1396cd6ee5 100644 --- a/framework/src/Volo.Abp.Uow/Volo/Abp/Uow/UnitOfWorkExtensions.cs +++ b/framework/src/Volo.Abp.Uow/Volo/Abp/Uow/UnitOfWorkExtensions.cs @@ -34,7 +34,7 @@ public static class UnitOfWorkExtensions { Check.NotNull(unitOfWork, nameof(unitOfWork)); - return unitOfWork.Items.FirstOrDefault(x => x.Key == key).As(); + return unitOfWork.Items.FirstOrDefault(x => x.Key == key).Value.As(); } public static TValue GetOrAddItem([NotNull] this IUnitOfWork unitOfWork, string key, Func factory) diff --git a/framework/test/Volo.Abp.Uow.Tests/Volo/Abp/Uow/UnitOfWorkExtensions_Tests.cs b/framework/test/Volo.Abp.Uow.Tests/Volo/Abp/Uow/UnitOfWorkExtensions_Tests.cs new file mode 100644 index 0000000000..6c88f70d9d --- /dev/null +++ b/framework/test/Volo.Abp.Uow.Tests/Volo/Abp/Uow/UnitOfWorkExtensions_Tests.cs @@ -0,0 +1,58 @@ +using Shouldly; +using Volo.Abp.Testing; +using Xunit; + +namespace Volo.Abp.Uow; + +public class UnitOfWorkExtensions_Tests : AbpIntegratedTest +{ + private readonly IUnitOfWorkManager _unitOfWorkManager; + + public UnitOfWorkExtensions_Tests() + { + _unitOfWorkManager = GetRequiredService(); + } + + [Fact] + public void AddItem() + { + var uow = _unitOfWorkManager.Begin(); + uow.AddItem("testKey", "testValue"); + + uow.Items.ShouldContainKey("testKey"); + uow.Items.ContainsValue("testValue"); + } + + [Fact] + public void GetItemOrDefault() + { + var uow = _unitOfWorkManager.Begin(); + uow.Items.Add("testKey", new NameValue("TestKey","TestValue")); + + uow.GetItemOrDefault("testKey").ShouldBeOfType(); + uow.GetItemOrDefault("testKey").Value.ShouldBe("TestValue"); + } + + [Fact] + public void GetOrAddItem() + { + var uow = _unitOfWorkManager.Begin(); + + var item = uow.GetOrAddItem("testKey", _ => new NameValue("TestKey", "TestValue")); + + item.Name.ShouldBe("TestKey"); + item.ShouldBeOfType(); + item.Value.ShouldBe("TestValue"); + } + + [Fact] + public void RemoveItem() + { + var uow = _unitOfWorkManager.Begin(); + uow.Items.Add("testKey", "testValue"); + + uow.RemoveItem("testKey"); + + uow.Items.ShouldNotContainKey("testKey"); + } +} From ea7478e82572f0ab2bcaedda40da1fcd2349c2a0 Mon Sep 17 00:00:00 2001 From: Enis Necipoglu Date: Thu, 14 Apr 2022 16:22:03 +0300 Subject: [PATCH 63/90] Move Blazor PWA implementation logic to ConfigureWithBlazorUi method --- .../Templates/App/AppTemplateBase.cs | 36 +++++++++---------- 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Templates/App/AppTemplateBase.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Templates/App/AppTemplateBase.cs index e232629e5a..3dd6ece476 100644 --- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Templates/App/AppTemplateBase.cs +++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Templates/App/AppTemplateBase.cs @@ -209,15 +209,6 @@ public abstract class AppTemplateBase : TemplateInfo { RemoveCmsKitDependenciesFromPackageJsonFiles(steps); } - - if (context.BuildArgs.ExtraProperties.ContainsKey(NewCommand.Options.ProgressiveWebApp.Short)) - { - context.Symbols.Add("PWA"); - } - else - { - RemovePwaFiles(steps); - } } protected static void RemoveCmsKitDependenciesFromPackageJsonFiles(List steps) @@ -247,15 +238,6 @@ public abstract class AppTemplateBase : TemplateInfo } } - protected static void RemovePwaFiles(List steps) - { - steps.Add(new RemoveFileStep("/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/wwwroot/service-worker.js")); - steps.Add(new RemoveFileStep("/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/wwwroot/service-worker.published.js")); - steps.Add(new RemoveFileStep("/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/wwwroot/manifest.json")); - steps.Add(new RemoveFileStep("/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/wwwroot/icon-192.png")); - steps.Add(new RemoveFileStep("/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/wwwroot/icon-512.png")); - } - protected bool IsCmsKitSupportedForTargetVersion(ProjectBuildContext context) { if (string.IsNullOrWhiteSpace(context.BuildArgs.Version)) @@ -307,6 +289,19 @@ public abstract class AppTemplateBase : TemplateInfo steps.Add(new TemplateProjectRenameStep("MyCompanyName.MyProjectName.HttpApi.HostWithIds", "MyCompanyName.MyProjectName.HttpApi.Host")); steps.Add(new AppTemplateChangeConsoleTestClientPortSettingsStep("44305")); } + + if (context.BuildArgs.ExtraProperties.ContainsKey(NewCommand.Options.ProgressiveWebApp.Short)) + { + context.Symbols.Add("PWA"); + } + else + { + steps.Add(new RemoveFileStep("/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/wwwroot/service-worker.js")); + steps.Add(new RemoveFileStep("/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/wwwroot/service-worker.published.js")); + steps.Add(new RemoveFileStep("/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/wwwroot/manifest.json")); + steps.Add(new RemoveFileStep("/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/wwwroot/icon-192.png")); + steps.Add(new RemoveFileStep("/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/wwwroot/icon-512.png")); + } } protected void ConfigureWithBlazorServerUi(ProjectBuildContext context, List steps) @@ -383,6 +378,11 @@ public abstract class AppTemplateBase : TemplateInfo steps.Add(new TemplateProjectRenameStep("MyCompanyName.MyProjectName.HttpApi.HostWithIds", "MyCompanyName.MyProjectName.HttpApi.Host")); steps.Add(new AppTemplateChangeConsoleTestClientPortSettingsStep("44305")); } + + if (context.BuildArgs.ExtraProperties.ContainsKey(NewCommand.Options.ProgressiveWebApp.Short)) + { + context.Symbols.Add("PWA"); + } } protected void RemoveUnnecessaryPorts(ProjectBuildContext context, List steps) From f56d83ef39d270b3882d91d01a0553f244c346aa Mon Sep 17 00:00:00 2001 From: Enis Necipoglu Date: Thu, 14 Apr 2022 16:22:19 +0300 Subject: [PATCH 64/90] Add Angualr pwa support to CLI --- .../Volo/Abp/Cli/Commands/NewCommand.cs | 16 +++++++- .../AngularPwaSupportAdder.cs | 40 +++++++++++++++++++ 2 files changed, 54 insertions(+), 2 deletions(-) create mode 100644 framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectModification/AngularPwaSupportAdder.cs diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/NewCommand.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/NewCommand.cs index 420e64eb18..4cb0ef4635 100644 --- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/NewCommand.cs +++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/NewCommand.cs @@ -12,6 +12,7 @@ using Volo.Abp.Cli.Args; using Volo.Abp.Cli.Commands.Services; using Volo.Abp.Cli.LIbs; using Volo.Abp.Cli.ProjectBuilding; +using Volo.Abp.Cli.ProjectBuilding.Building; using Volo.Abp.Cli.ProjectModification; using Volo.Abp.Cli.Utils; using Volo.Abp.DependencyInjection; @@ -24,17 +25,20 @@ public class NewCommand : ProjectCreationCommandBase, IConsoleCommand, ITransien protected TemplateProjectBuilder TemplateProjectBuilder { get; } public ITemplateInfoProvider TemplateInfoProvider { get; } - + protected AngularPwaSupportAdder AngularPwaSupportAdder { get; } + public NewCommand(TemplateProjectBuilder templateProjectBuilder , ITemplateInfoProvider templateInfoProvider, ConnectionStringProvider connectionStringProvider, SolutionPackageVersionFinder solutionPackageVersionFinder, ICmdHelper cmdHelper, - IInstallLibsService installLibsService) + IInstallLibsService installLibsService, + AngularPwaSupportAdder angularPwaSupportAdder) : base(connectionStringProvider, solutionPackageVersionFinder, cmdHelper, installLibsService) { TemplateProjectBuilder = templateProjectBuilder; TemplateInfoProvider = templateInfoProvider; + AngularPwaSupportAdder = angularPwaSupportAdder; } public async Task ExecuteAsync(CommandLineArgs commandLineArgs) @@ -79,6 +83,14 @@ public class NewCommand : ProjectCreationCommandBase, IConsoleCommand, ITransien RunGraphBuildForMicroserviceServiceTemplate(projectArgs); await RunInstallLibsForWebTemplateAsync(projectArgs); OpenRelatedWebPage(projectArgs, template, isTiered, commandLineArgs); + + var pwa = commandLineArgs.Options.ContainsKey(Options.ProgressiveWebApp.Short); + var angular = projectArgs.UiFramework == UiFramework.Angular; + if (angular && pwa) + { + Logger.LogInformation("Adding PWA Support to Angular app."); + AngularPwaSupportAdder.AddPwaSupport(projectArgs.OutputFolder); + } } public string GetUsageInfo() diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectModification/AngularPwaSupportAdder.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectModification/AngularPwaSupportAdder.cs new file mode 100644 index 0000000000..4781252705 --- /dev/null +++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectModification/AngularPwaSupportAdder.cs @@ -0,0 +1,40 @@ +using System; +using System.IO; +using System.Linq; +using Volo.Abp.Cli.Utils; +using Volo.Abp.DependencyInjection; + +namespace Volo.Abp.Cli.ProjectModification; + +public class AngularPwaSupportAdder : ITransientDependency +{ + protected ICmdHelper CmdHelper { get; } + protected PackageJsonFileFinder PackageJsonFileFinder { get; } + + public AngularPwaSupportAdder( + ICmdHelper cmdHelper, + PackageJsonFileFinder packageJsonFileFinder) + { + CmdHelper = cmdHelper; + PackageJsonFileFinder = packageJsonFileFinder; + } + + public virtual void AddPwaSupport(string rootDirectory) + { + var fileList = PackageJsonFileFinder.Find(rootDirectory).Where(x => x.Contains("angular")).ToList(); + + if (!fileList.Any()) + { + return; + } + + fileList.ForEach(AddPwaSupportToProject); + } + + protected virtual void AddPwaSupportToProject(string filePath) + { + var directory = Path.GetDirectoryName(filePath).EnsureEndsWith(Path.DirectorySeparatorChar); + + CmdHelper.RunCmd($"cd {directory} && ng add @angular/pwa --skip-confirmation"); + } +} From 65203e7c9beb80c3b4bd9f7556fbb1517b79de13 Mon Sep 17 00:00:00 2001 From: Enis Necipoglu Date: Thu, 14 Apr 2022 16:35:09 +0300 Subject: [PATCH 65/90] Move Angular PWA logic to ProjectCreationCommandBase --- .../Volo/Abp/Cli/Commands/NewCommand.cs | 14 +++---------- .../Commands/ProjectCreationCommandBase.cs | 20 +++++++++++++++++-- .../Cli/ProjectBuilding/ProjectBuildArgs.cs | 6 +++++- 3 files changed, 26 insertions(+), 14 deletions(-) diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/NewCommand.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/NewCommand.cs index 4cb0ef4635..526ae77363 100644 --- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/NewCommand.cs +++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/NewCommand.cs @@ -25,7 +25,6 @@ public class NewCommand : ProjectCreationCommandBase, IConsoleCommand, ITransien protected TemplateProjectBuilder TemplateProjectBuilder { get; } public ITemplateInfoProvider TemplateInfoProvider { get; } - protected AngularPwaSupportAdder AngularPwaSupportAdder { get; } public NewCommand(TemplateProjectBuilder templateProjectBuilder , ITemplateInfoProvider templateInfoProvider, @@ -34,11 +33,10 @@ public class NewCommand : ProjectCreationCommandBase, IConsoleCommand, ITransien ICmdHelper cmdHelper, IInstallLibsService installLibsService, AngularPwaSupportAdder angularPwaSupportAdder) - : base(connectionStringProvider, solutionPackageVersionFinder, cmdHelper, installLibsService) + : base(connectionStringProvider, solutionPackageVersionFinder, cmdHelper, installLibsService, angularPwaSupportAdder) { TemplateProjectBuilder = templateProjectBuilder; TemplateInfoProvider = templateInfoProvider; - AngularPwaSupportAdder = angularPwaSupportAdder; } public async Task ExecuteAsync(CommandLineArgs commandLineArgs) @@ -82,15 +80,9 @@ public class NewCommand : ProjectCreationCommandBase, IConsoleCommand, ITransien RunGraphBuildForMicroserviceServiceTemplate(projectArgs); await RunInstallLibsForWebTemplateAsync(projectArgs); - OpenRelatedWebPage(projectArgs, template, isTiered, commandLineArgs); + ConfigurePwaSupportForAngular(projectArgs); - var pwa = commandLineArgs.Options.ContainsKey(Options.ProgressiveWebApp.Short); - var angular = projectArgs.UiFramework == UiFramework.Angular; - if (angular && pwa) - { - Logger.LogInformation("Adding PWA Support to Angular app."); - AngularPwaSupportAdder.AddPwaSupport(projectArgs.OutputFolder); - } + OpenRelatedWebPage(projectArgs, template, isTiered, commandLineArgs); } public string GetUsageInfo() diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/ProjectCreationCommandBase.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/ProjectCreationCommandBase.cs index 368f022bda..6e280d7dc3 100644 --- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/ProjectCreationCommandBase.cs +++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/ProjectCreationCommandBase.cs @@ -25,18 +25,21 @@ public abstract class ProjectCreationCommandBase public SolutionPackageVersionFinder SolutionPackageVersionFinder { get; } public ICmdHelper CmdHelper { get; } public IInstallLibsService InstallLibsService { get; } + public AngularPwaSupportAdder AngularPwaSupportAdder { get; } public ILogger Logger { get; set; } public ProjectCreationCommandBase( ConnectionStringProvider connectionStringProvider, SolutionPackageVersionFinder solutionPackageVersionFinder, ICmdHelper cmdHelper, - IInstallLibsService installLibsService) + IInstallLibsService installLibsService, + AngularPwaSupportAdder angularPwaSupportAdder) { ConnectionStringProvider = connectionStringProvider; SolutionPackageVersionFinder = solutionPackageVersionFinder; CmdHelper = cmdHelper; InstallLibsService = installLibsService; + AngularPwaSupportAdder = angularPwaSupportAdder; Logger = NullLogger.Instance; } @@ -176,7 +179,8 @@ public abstract class ProjectCreationCommandBase gitHubVoloLocalRepositoryPath, templateSource, commandLineArgs.Options, - connectionString + connectionString, + pwa ); } @@ -333,6 +337,18 @@ public abstract class ProjectCreationCommandBase } } + protected void ConfigurePwaSupportForAngular(ProjectBuildArgs projectArgs) + { + var isAngular = projectArgs.UiFramework == UiFramework.Angular; + var isPwa = projectArgs.Pwa; + + if (isAngular && isPwa) + { + Logger.LogInformation("Adding PWA Support to Angular app."); + AngularPwaSupportAdder.AddPwaSupport(projectArgs.OutputFolder); + } + } + protected virtual DatabaseManagementSystem GetDatabaseManagementSystem(CommandLineArgs commandLineArgs) { var optionValue = commandLineArgs.Options.GetOrNull(Options.DatabaseManagementSystem.Short, Options.DatabaseManagementSystem.Long); diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/ProjectBuildArgs.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/ProjectBuildArgs.cs index 6d9b754cba..3c057454f6 100644 --- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/ProjectBuildArgs.cs +++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/ProjectBuildArgs.cs @@ -40,6 +40,8 @@ public class ProjectBuildArgs [NotNull] public string OutputFolder { get; set; } + public bool Pwa { get; set; } + [NotNull] public Dictionary ExtraProperties { get; set; } @@ -57,7 +59,8 @@ public class ProjectBuildArgs [CanBeNull] string voloGitHubLocalRepositoryPath = null, [CanBeNull] string templateSource = null, Dictionary extraProperties = null, - [CanBeNull] string connectionString = null) + [CanBeNull] string connectionString = null, + bool pwa = false) { SolutionName = Check.NotNull(solutionName, nameof(solutionName)); TemplateName = templateName; @@ -73,5 +76,6 @@ public class ProjectBuildArgs TemplateSource = templateSource; ExtraProperties = extraProperties ?? new Dictionary(); ConnectionString = connectionString; + Pwa = pwa; } } From 48e57995e7cc51c1646dab095d2364557da4d423 Mon Sep 17 00:00:00 2001 From: maliming Date: Fri, 15 Apr 2022 13:23:48 +0800 Subject: [PATCH 66/90] Add `AbpPermissionManagementDomainIdentityServerModule` . --- .../MyCompanyName.MyProjectName.Blazor.Server.Mongo.csproj | 1 + .../MyProjectNameModule.cs | 2 ++ .../MyCompanyName.MyProjectName.Blazor.Server.csproj | 1 + .../MyProjectNameModule.cs | 2 ++ .../MyCompanyName.MyProjectName.Host.Mongo.csproj | 1 + .../MyProjectNameModule.cs | 2 ++ .../MyCompanyName.MyProjectName.Host.csproj | 1 + .../MyCompanyName.MyProjectName.Host/MyProjectNameModule.cs | 2 ++ .../MyCompanyName.MyProjectName.Mvc.Mongo.csproj | 1 + .../MyProjectNameModule.cs | 2 ++ .../MyCompanyName.MyProjectName.Mvc.csproj | 1 + .../MyCompanyName.MyProjectName.Mvc/MyProjectNameModule.cs | 2 ++ 12 files changed, 18 insertions(+) diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/MyCompanyName.MyProjectName.Blazor.Server.Mongo.csproj b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/MyCompanyName.MyProjectName.Blazor.Server.Mongo.csproj index 51edce0bf8..073f531982 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/MyCompanyName.MyProjectName.Blazor.Server.Mongo.csproj +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/MyCompanyName.MyProjectName.Blazor.Server.Mongo.csproj @@ -37,6 +37,7 @@ + diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/MyProjectNameModule.cs b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/MyProjectNameModule.cs index 1c235e76ff..59aa2cc6c2 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/MyProjectNameModule.cs +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/MyProjectNameModule.cs @@ -35,6 +35,7 @@ using Volo.Abp.PermissionManagement; using Volo.Abp.PermissionManagement.MongoDB; using Volo.Abp.PermissionManagement.HttpApi; using Volo.Abp.PermissionManagement.Identity; +using Volo.Abp.PermissionManagement.IdentityServer; using Volo.Abp.SettingManagement; using Volo.Abp.SettingManagement.Blazor.Server; using Volo.Abp.SettingManagement.MongoDB; @@ -68,6 +69,7 @@ namespace MyCompanyName.MyProjectName; // Identity module packages typeof(AbpPermissionManagementDomainIdentityModule), + typeof(AbpPermissionManagementDomainIdentityServerModule), typeof(AbpIdentityApplicationModule), typeof(AbpIdentityHttpApiModule), typeof(AbpIdentityMongoDbModule), diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/MyCompanyName.MyProjectName.Blazor.Server.csproj b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/MyCompanyName.MyProjectName.Blazor.Server.csproj index e25316e4e6..e4d5596abf 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/MyCompanyName.MyProjectName.Blazor.Server.csproj +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/MyCompanyName.MyProjectName.Blazor.Server.csproj @@ -38,6 +38,7 @@ + diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/MyProjectNameModule.cs b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/MyProjectNameModule.cs index fff0543985..e48de7f42e 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/MyProjectNameModule.cs +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/MyProjectNameModule.cs @@ -36,6 +36,7 @@ using Volo.Abp.PermissionManagement; using Volo.Abp.PermissionManagement.EntityFrameworkCore; using Volo.Abp.PermissionManagement.HttpApi; using Volo.Abp.PermissionManagement.Identity; +using Volo.Abp.PermissionManagement.IdentityServer; using Volo.Abp.SettingManagement; using Volo.Abp.SettingManagement.Blazor.Server; using Volo.Abp.SettingManagement.EntityFrameworkCore; @@ -69,6 +70,7 @@ namespace MyCompanyName.MyProjectName; // Identity module packages typeof(AbpPermissionManagementDomainIdentityModule), + typeof(AbpPermissionManagementDomainIdentityServerModule), typeof(AbpIdentityApplicationModule), typeof(AbpIdentityHttpApiModule), typeof(AbpIdentityEntityFrameworkCoreModule), diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/MyCompanyName.MyProjectName.Host.Mongo.csproj b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/MyCompanyName.MyProjectName.Host.Mongo.csproj index 107dc63fdf..d0250e295c 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/MyCompanyName.MyProjectName.Host.Mongo.csproj +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/MyCompanyName.MyProjectName.Host.Mongo.csproj @@ -35,6 +35,7 @@ + diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/MyProjectNameModule.cs b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/MyProjectNameModule.cs index 999dab346e..bced8dc3fb 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/MyProjectNameModule.cs +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/MyProjectNameModule.cs @@ -33,6 +33,7 @@ using Volo.Abp.PermissionManagement; using Volo.Abp.PermissionManagement.MongoDB; using Volo.Abp.PermissionManagement.HttpApi; using Volo.Abp.PermissionManagement.Identity; +using Volo.Abp.PermissionManagement.IdentityServer; using Volo.Abp.SettingManagement; using Volo.Abp.SettingManagement.MongoDB; using Volo.Abp.Swashbuckle; @@ -64,6 +65,7 @@ namespace MyCompanyName.MyProjectName; // Identity module packages typeof(AbpPermissionManagementDomainIdentityModule), + typeof(AbpPermissionManagementDomainIdentityServerModule), typeof(AbpIdentityApplicationModule), typeof(AbpIdentityHttpApiModule), typeof(AbpIdentityMongoDbModule), diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/MyCompanyName.MyProjectName.Host.csproj b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/MyCompanyName.MyProjectName.Host.csproj index f64b574e04..1ccb7d8375 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/MyCompanyName.MyProjectName.Host.csproj +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/MyCompanyName.MyProjectName.Host.csproj @@ -36,6 +36,7 @@ + diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/MyProjectNameModule.cs b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/MyProjectNameModule.cs index 8d1c463bb7..1d3a05c88b 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/MyProjectNameModule.cs +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/MyProjectNameModule.cs @@ -35,6 +35,7 @@ using Volo.Abp.PermissionManagement; using Volo.Abp.PermissionManagement.EntityFrameworkCore; using Volo.Abp.PermissionManagement.HttpApi; using Volo.Abp.PermissionManagement.Identity; +using Volo.Abp.PermissionManagement.IdentityServer; using Volo.Abp.SettingManagement; using Volo.Abp.SettingManagement.EntityFrameworkCore; using Volo.Abp.Swashbuckle; @@ -66,6 +67,7 @@ namespace MyCompanyName.MyProjectName; // Identity module packages typeof(AbpPermissionManagementDomainIdentityModule), + typeof(AbpPermissionManagementDomainIdentityServerModule), typeof(AbpIdentityApplicationModule), typeof(AbpIdentityHttpApiModule), typeof(AbpIdentityEntityFrameworkCoreModule), diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/MyCompanyName.MyProjectName.Mvc.Mongo.csproj b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/MyCompanyName.MyProjectName.Mvc.Mongo.csproj index 931673cf5a..c7232dbc14 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/MyCompanyName.MyProjectName.Mvc.Mongo.csproj +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/MyCompanyName.MyProjectName.Mvc.Mongo.csproj @@ -35,6 +35,7 @@ + diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/MyProjectNameModule.cs b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/MyProjectNameModule.cs index 99d2752f0f..a71605ac4c 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/MyProjectNameModule.cs +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/MyProjectNameModule.cs @@ -31,6 +31,7 @@ using Volo.Abp.PermissionManagement; using Volo.Abp.PermissionManagement.MongoDB; using Volo.Abp.PermissionManagement.HttpApi; using Volo.Abp.PermissionManagement.Identity; +using Volo.Abp.PermissionManagement.IdentityServer; using Volo.Abp.SettingManagement; using Volo.Abp.SettingManagement.MongoDB; using Volo.Abp.SettingManagement.Web; @@ -63,6 +64,7 @@ namespace MyCompanyName.MyProjectName; // Identity module packages typeof(AbpPermissionManagementDomainIdentityModule), + typeof(AbpPermissionManagementDomainIdentityServerModule), typeof(AbpIdentityApplicationModule), typeof(AbpIdentityHttpApiModule), typeof(AbpIdentityMongoDbModule), diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/MyCompanyName.MyProjectName.Mvc.csproj b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/MyCompanyName.MyProjectName.Mvc.csproj index bf1248ff0d..d4efe0ab2c 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/MyCompanyName.MyProjectName.Mvc.csproj +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/MyCompanyName.MyProjectName.Mvc.csproj @@ -36,6 +36,7 @@ + diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/MyProjectNameModule.cs b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/MyProjectNameModule.cs index 3a9d480947..307daf4c03 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/MyProjectNameModule.cs +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/MyProjectNameModule.cs @@ -32,6 +32,7 @@ using Volo.Abp.PermissionManagement; using Volo.Abp.PermissionManagement.EntityFrameworkCore; using Volo.Abp.PermissionManagement.HttpApi; using Volo.Abp.PermissionManagement.Identity; +using Volo.Abp.PermissionManagement.IdentityServer; using Volo.Abp.SettingManagement; using Volo.Abp.SettingManagement.EntityFrameworkCore; using Volo.Abp.SettingManagement.Web; @@ -64,6 +65,7 @@ namespace MyCompanyName.MyProjectName; // Identity module packages typeof(AbpPermissionManagementDomainIdentityModule), + typeof(AbpPermissionManagementDomainIdentityServerModule), typeof(AbpIdentityApplicationModule), typeof(AbpIdentityHttpApiModule), typeof(AbpIdentityEntityFrameworkCoreModule), From 3214ecf4e99d20342e45d132421c34c0ff589882 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Halil=20=C4=B0brahim=20Kalkan?= Date: Fri, 15 Apr 2022 14:32:10 +0300 Subject: [PATCH 67/90] Update Application.md --- docs/en/Startup-Templates/Application.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/en/Startup-Templates/Application.md b/docs/en/Startup-Templates/Application.md index b7bc94f6b3..0f4372b621 100644 --- a/docs/en/Startup-Templates/Application.md +++ b/docs/en/Startup-Templates/Application.md @@ -6,7 +6,7 @@ This template provides a layered application structure based on the [Domain Driv This document explains **the solution structure** and projects in details. If you want to start quickly, follow the guides below: -* [The getting started document](../Getting-Started-With-Startup-Templates.md) explains how to create a new application in a few minutes. +* [The getting started document](../Getting-Started.md) explains how to create a new application in a few minutes. * [The application development tutorial](../Tutorials/Part-1) explains step by step application development. ## How to Start With? From f0b03ce4cb3ee6eab1ea6c58242f9256fb55c01c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Halil=20=C4=B0brahim=20Kalkan?= Date: Fri, 15 Apr 2022 14:32:52 +0300 Subject: [PATCH 68/90] Update Getting-Started-With-Startup-Templates.md --- docs/en/Getting-Started-With-Startup-Templates.md | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/docs/en/Getting-Started-With-Startup-Templates.md b/docs/en/Getting-Started-With-Startup-Templates.md index 9beb84bcef..add08b8ebd 100644 --- a/docs/en/Getting-Started-With-Startup-Templates.md +++ b/docs/en/Getting-Started-With-Startup-Templates.md @@ -1,8 +1,3 @@ -# Getting Started with the Startup Templates +This document has been [moved to here](Getting-Started.md). -See the following tutorials to learn how to get started with the ABP Framework using the pre-built application startup templates: - -* [Getting Started With the ASP.NET Core MVC / Razor Pages UI](Getting-Started?UI=MVC&DB=EF&Tiered=No) -* [Getting Started with the Angular UI](Getting-Started?UI=NG&DB=EF&Tiered=No) - - \ No newline at end of file + From 613e0ec3c9bdc9de3c4d0736093e178ab7b1c344 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Halil=20=C4=B0brahim=20Kalkan?= Date: Fri, 15 Apr 2022 15:37:14 +0300 Subject: [PATCH 69/90] Update Overall.md --- docs/en/UI/Blazor/Overall.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/en/UI/Blazor/Overall.md b/docs/en/UI/Blazor/Overall.md index 112dfec8cc..ff361d6784 100644 --- a/docs/en/UI/Blazor/Overall.md +++ b/docs/en/UI/Blazor/Overall.md @@ -93,7 +93,7 @@ These libraries are selected as the base libraries and available to the applicat > Bootstrap's JavaScript part is not used since the Blazorise library already provides the necessary functionalities to the Bootstrap components in a native way. -> Beginning from June, 2021, the Blazorise library has dual licenses; open source & commercial. Based on your yearly revenue, you may need to buy a commercial license. See [this post](https://blazorise.com/news/blazorise-commercial-going-live/) for the announcement. +> Beginning from June, 2021, the Blazorise library has dual licenses; open source & commercial. Based on your yearly revenue, you may need to buy a commercial license. See [this post](https://blazorise.com/news/announcing-2022-blazorise-plans-and-pricing-updates) to learn more. ### The Layout @@ -160,4 +160,4 @@ ABP provides an [automatic error handling system](Error-Handling.md) for the Bla ## Customization -While the theme and some modules come as NuGet packages, you can still replace/override and customize them on need. See the [Customization / Overriding Components](Customization-Overriding-Components.md) document. \ No newline at end of file +While the theme and some modules come as NuGet packages, you can still replace/override and customize them on need. See the [Customization / Overriding Components](Customization-Overriding-Components.md) document. From 0d3d6764633e7412ff345f161748ebc87b2f715f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Halil=20=C4=B0brahim=20Kalkan?= Date: Fri, 15 Apr 2022 17:44:35 +0300 Subject: [PATCH 70/90] Added new document: Static-CSharp-API-Clients --- docs/en/API/Dynamic-CSharp-API-Clients.md | 12 +- docs/en/API/Static-CSharp-API-Clients.md | 217 ++++++++++++++++++ .../generated-static-client-proxies.png | Bin 0 -> 7118 bytes 3 files changed, 228 insertions(+), 1 deletion(-) create mode 100644 docs/en/API/Static-CSharp-API-Clients.md create mode 100644 docs/en/images/generated-static-client-proxies.png diff --git a/docs/en/API/Dynamic-CSharp-API-Clients.md b/docs/en/API/Dynamic-CSharp-API-Clients.md index 31032e6392..3ece459842 100644 --- a/docs/en/API/Dynamic-CSharp-API-Clients.md +++ b/docs/en/API/Dynamic-CSharp-API-Clients.md @@ -13,6 +13,12 @@ Dynamic C# proxies automatically handle the following stuff for you; This system can be used by any type of .NET client to consume your HTTP APIs. +## Static vs Dynamic Client Proxies + +ABP provides **two types** of client proxy generation system. This document explains the **dynamic client proxies**, which generates client-side proxies on runtime. You can also see the [Static C# API Client Proxies](Static-CSharp-API-Clients.md) documentation to learn how to generate proxies on development time. + +Development-time (static) client proxy generation has a **performance advantage** since it doesn't need to obtain the HTTP API definition on runtime. However, you should **re-generate** the client proxy code whenever you change your API endpoint definition. On the other hand, dynamic client proxies are generated on runtime and provides an **easier development experience**. + ## Service Interface Your service/controller should implement an interface that is shared between the server and the client. So, first define a service interface in a shared library project, typically in the `Application.Contracts` project if you've created your solution using the startup templates. @@ -72,7 +78,7 @@ public class MyClientAppModule : AbpModule ### Endpoint Configuration -`RemoteServices` section in the `appsettings.json` file is used to get remote service address by default. Simplest configuration is shown below: +`RemoteServices` section in the `appsettings.json` file is used to get remote service address by default. The simplest configuration is shown below: ```json { @@ -204,3 +210,7 @@ public override void PreConfigureServices(ServiceConfigurationContext context) ```` This example uses the [Microsoft.Extensions.Http.Polly](https://www.nuget.org/packages/Microsoft.Extensions.Http.Polly) package. You also need to import the `Polly` namespace (`using Polly;`) to be able to use the `WaitAndRetryAsync` method. + +## See Also + +* [Static C# Client Proxies](Static-CSharp-API-Clients.md) diff --git a/docs/en/API/Static-CSharp-API-Clients.md b/docs/en/API/Static-CSharp-API-Clients.md new file mode 100644 index 0000000000..a5996158b6 --- /dev/null +++ b/docs/en/API/Static-CSharp-API-Clients.md @@ -0,0 +1,217 @@ +# Static C# API Client Proxies + +ABP can create C# API client proxy code to call your remote HTTP services (REST APIs). In this way, you don't need to deal with `HttpClient` and other low level details to call remote services and get results. + +Static C# proxies automatically handle the following stuff for you; + +* Maps C# **method calls** to remote server **HTTP calls** by considering the HTTP method, route, query string parameters, request payload and other details. +* **Authenticates** the HTTP Client by adding access token to the HTTP header. +* **Serializes** to and deserialize from JSON. +* Handles HTTP API **versioning**. +* Add **correlation id**, current **tenant** id and the current **culture** to the request. +* Properly **handles the error messages** sent by the server and throws proper exceptions. + +This system can be used by any type of .NET client to consume your HTTP APIs. + +## Static vs Dynamic Client Proxies + +ABP provides **two types** of client proxy generation system. This document explains the **static client proxies**, which generates client-side code in your development time. You can also see the [Dynamic C# API Client Proxies](Dynamic-CSharp-API-Clients.md) documentation to learn how to use proxies generated on runtime. + +Development-time (static) client proxy generation has a **performance advantage** since it doesn't need to obtain the HTTP API definition on runtime. However, you should **re-generate** the client proxy code whenever you change your API endpoint definition. On the other hand, dynamic client proxies are generated on runtime and provides an **easier development experience**. + +## Service Interface + +Your service/controller should implement an interface that is shared between the server and the client. So, first define a service interface in a shared library project, typically in the `Application.Contracts` project if you've created your solution using the startup templates. + +Example: + +````csharp +public interface IBookAppService : IApplicationService +{ + Task> GetListAsync(); +} +```` + +> Your interface should implement the `IRemoteService` interface to be automatically discovered. Since the `IApplicationService` inherits the `IRemoteService` interface, the `IBookAppService` above satisfies this condition. + +Implement this class in your service application. You can use [auto API controller system](Auto-API-Controllers.md) to expose the service as a REST API endpoint. + +## Client Proxy Generation + +First, add [Volo.Abp.Http.Client](https://www.nuget.org/packages/Volo.Abp.Http.Client) nuget package to your client project: + +```` +Install-Package Volo.Abp.Http.Client +```` + +Then add `AbpHttpClientModule` dependency to your module: + +````csharp +[DependsOn(typeof(AbpHttpClientModule))] //add the dependency +public class MyClientAppModule : AbpModule +{ +} +```` + +Now, it's ready to configure the application for the static client proxy generation. Example: + +````csharp +[DependsOn( + typeof(AbpHttpClientModule), //used to create client proxies + typeof(BookStoreApplicationContractsModule) //contains the application service interfaces + )] +public class MyClientAppModule : AbpModule +{ + public override void ConfigureServices(ServiceConfigurationContext context) + { + // Prepare for static client proxy generation + context.Services.AddStaticHttpClientProxies( + typeof(BookStoreApplicationContractsModule).Assembly + ); + } +} +```` + +`AddStaticHttpClientProxies` method gets an assembly, finds all service interfaces in the given assembly, and prepares for static client proxy generation. + +> The [application startup template](../Startup-Templates/Application.md) comes pre-configured for the **dynamic** client proxy generation, in the `HttpApi.Client` project. If you want to switch to the **static** client proxies, change `context.Services.AddHttpClientProxies` to `context.Services.AddStaticHttpClientProxies` in the module class of your `HttpApi.Client` project. + +### Endpoint Configuration + +`RemoteServices` section in the `appsettings.json` file is used to get remote service address by default. The simplest configuration is shown below: + +```json +{ + "RemoteServices": { + "Default": { + "BaseUrl": "http://localhost:53929/" + } + } +} +``` + +See the *AbpRemoteServiceOptions* section below for more detailed configuration. + +### Code Generation + +Server side must be up and running while generating the client proxy code. So, run your application that serves the HTTP APIs on the `BaseUrl` that is configured like explained in the *Endpoint Configuration* section. + +Open a command-line terminal in the root folder of your client project (`.csproj`) and type the following command: + +````bash +abp generate-proxy -t csharp -u http://localhost:53929/ +```` + +> If you haven't installed yet, you should install the [ABP CLI](../CLI.md). + +This command should generate the following files under the `ClientProxies` folder: + +![generated-static-client-proxies](../images/generated-static-client-proxies.png) + +`BookClientProxy.Generated.cs` is the actual generated proxy class in this example. `BookClientProxy` is a `partial` class where you can write your custom code (ABP won't override it). `app-generate-proxy.json` contains information about the remote HTTP endpoint, so ABP can properly perform HTTP requests. + +> `generate-proxy` command generates proxies for only the APIs you've defined in your application. If you are developing a modular application, you can specify the `-m` (or `--module`) parameter to specify the module you want to generate proxies. See the *generate-proxy* section in the [ABP CLI](../CLI.md) documentation for other options. + +## Usage + +It's straightforward to use the client proxies. Just inject the service interface in the client application code: + +````csharp +public class MyService : ITransientDependency +{ + private readonly IBookAppService _bookService; + + public MyService(IBookAppService bookService) + { + _bookService = bookService; + } + + public async Task DoItAsync() + { + var books = await _bookService.GetListAsync(); + foreach (var book in books) + { + Console.WriteLine($"[BOOK {book.Id}] Name={book.Name}"); + } + } +} +```` + +This sample injects the `IBookAppService` service interface defined above. The static client proxy implementation makes an HTTP call whenever a service method is called by the client. + +## Configuration + +### AbpRemoteServiceOptions + +`AbpRemoteServiceOptions` is automatically set from the `appsettings.json` by default. Alternatively, you can configure it in the `ConfigureServices` method of your [module](../Module-Development-Basics.md) to set or override it. Example: + +````csharp +public override void ConfigureServices(ServiceConfigurationContext context) +{ + context.Services.Configure(options => + { + options.RemoteServices.Default = + new RemoteServiceConfiguration("http://localhost:53929/"); + }); + + //... +} +```` + +### Multiple Remote Service Endpoints + +The examples above have configured the "Default" remote service endpoint. You may have different endpoints for different services (as like in a microservice approach where each microservice has different endpoints). In this case, you can add other endpoints to your configuration file: + +````json +{ + "RemoteServices": { + "Default": { + "BaseUrl": "http://localhost:53929/" + }, + "BookStore": { + "BaseUrl": "http://localhost:48392/" + } + } +} +```` + +`AddStaticHttpClientProxies` method can get an additional parameter for the remote service name. Example: + +````csharp +context.Services.AddStaticHttpClientProxies( + typeof(BookStoreApplicationContractsModule).Assembly, + remoteServiceConfigurationName: "BookStore" +); +```` + +`remoteServiceConfigurationName` parameter matches the service endpoint configured via `AbpRemoteServiceOptions`. If the `BookStore` endpoint is not defined then it fallbacks to the `Default` endpoint. + +### Retry/Failure Logic & Polly Integration + +If you want to add retry logic for the failing remote HTTP calls for the client proxies, you can configure the `AbpHttpClientBuilderOptions` in the `PreConfigureServices` method of your module class. + +**Example: Use the [Polly](https://github.com/App-vNext/Polly) library to re-try 3 times on a failure** + +````csharp +public override void PreConfigureServices(ServiceConfigurationContext context) +{ + PreConfigure(options => + { + options.ProxyClientBuildActions.Add((remoteServiceName, clientBuilder) => + { + clientBuilder.AddTransientHttpErrorPolicy(policyBuilder => + policyBuilder.WaitAndRetryAsync( + 3, + i => TimeSpan.FromSeconds(Math.Pow(2, i)) + ) + ); + }); + }); +} +```` + +This example uses the [Microsoft.Extensions.Http.Polly](https://www.nuget.org/packages/Microsoft.Extensions.Http.Polly) package. You also need to import the `Polly` namespace (`using Polly;`) to be able to use the `WaitAndRetryAsync` method. + +## See Also + +* [Dynamic C# Client Proxies](Dynamic-CSharp-API-Clients.md) diff --git a/docs/en/images/generated-static-client-proxies.png b/docs/en/images/generated-static-client-proxies.png new file mode 100644 index 0000000000000000000000000000000000000000..4c1678aebd329b210673f4f247de5c00ac34417c GIT binary patch literal 7118 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 Q Date: Fri, 15 Apr 2022 17:46:52 +0300 Subject: [PATCH 71/90] Added Static C# API Clients to main menu. --- docs/en/docs-nav.json | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/docs/en/docs-nav.json b/docs/en/docs-nav.json index 15f93b86c6..8c08724b62 100644 --- a/docs/en/docs-nav.json +++ b/docs/en/docs-nav.json @@ -586,6 +586,10 @@ "text": "Dynamic C# API Clients", "path": "API/Dynamic-CSharp-API-Clients.md" }, + { + "text": "Static C# API Clients", + "path": "API/Static-CSharp-API-Clients.md" + }, { "text": "ABP Endpoints", "items": [ From 47e1284aeb516a96d9e83e14f8d771b75b67f276 Mon Sep 17 00:00:00 2001 From: liangshiwei Date: Mon, 18 Apr 2022 09:33:27 +0800 Subject: [PATCH 72/90] No layers template missing console logs for non development environments --- .../Program.cs | 5 +---- .../MyCompanyName.MyProjectName.Blazor.Server/Program.cs | 5 +---- .../MyCompanyName.MyProjectName.Host.Mongo/Program.cs | 5 +---- .../aspnet-core/MyCompanyName.MyProjectName.Host/Program.cs | 5 +---- .../MyCompanyName.MyProjectName.Mvc.Mongo/Program.cs | 5 +---- .../aspnet-core/MyCompanyName.MyProjectName.Mvc/Program.cs | 5 +---- 6 files changed, 6 insertions(+), 24 deletions(-) diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Program.cs b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Program.cs index 051587bb5c..07e558fb39 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Program.cs +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Program.cs @@ -18,12 +18,9 @@ public class Program .MinimumLevel.Override("Microsoft", LogEventLevel.Information) .MinimumLevel.Override("Microsoft.EntityFrameworkCore", LogEventLevel.Warning) .Enrich.FromLogContext() -#if DEBUG .WriteTo.Async(c => c.File("Logs/logs.txt")) .WriteTo.Async(c => c.Console()); -#else - .WriteTo.Async(c => c.File("Logs/logs.txt")); -#endif + if (IsMigrateDatabase(args)) { loggerConfiguration.MinimumLevel.Override("Volo.Abp", LogEventLevel.Warning); diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Program.cs b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Program.cs index 0226e0a554..4553f8cfd1 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Program.cs +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Program.cs @@ -24,12 +24,9 @@ public class Program .MinimumLevel.Override("Microsoft", LogEventLevel.Information) .MinimumLevel.Override("Microsoft.EntityFrameworkCore", LogEventLevel.Warning) .Enrich.FromLogContext() -#if DEBUG .WriteTo.Async(c => c.File("Logs/logs.txt")) .WriteTo.Async(c => c.Console()); -#else - .WriteTo.Async(c => c.File("Logs/logs.txt")); -#endif + if (IsMigrateDatabase(args)) { loggerConfiguration.MinimumLevel.Override("Volo.Abp", LogEventLevel.Warning); diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Program.cs b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Program.cs index a9366b95fe..6eb33e471a 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Program.cs +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Program.cs @@ -17,12 +17,9 @@ public class Program .MinimumLevel.Override("Microsoft", LogEventLevel.Information) .MinimumLevel.Override("Microsoft.EntityFrameworkCore", LogEventLevel.Warning) .Enrich.FromLogContext() -#if DEBUG .WriteTo.Async(c => c.File("Logs/logs.txt")) .WriteTo.Async(c => c.Console()); -#else - .WriteTo.Async(c => c.File("Logs/logs.txt")); -#endif + if (IsMigrateDatabase(args)) { loggerConfiguration.MinimumLevel.Override("Volo.Abp", LogEventLevel.Warning); diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Program.cs b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Program.cs index c4c428b90d..199b799da8 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Program.cs +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Program.cs @@ -23,12 +23,9 @@ public class Program .MinimumLevel.Override("Microsoft", LogEventLevel.Information) .MinimumLevel.Override("Microsoft.EntityFrameworkCore", LogEventLevel.Warning) .Enrich.FromLogContext() -#if DEBUG .WriteTo.Async(c => c.File("Logs/logs.txt")) .WriteTo.Async(c => c.Console()); -#else - .WriteTo.Async(c => c.File("Logs/logs.txt")); -#endif + if (IsMigrateDatabase(args)) { loggerConfiguration.MinimumLevel.Override("Volo.Abp", LogEventLevel.Warning); diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Program.cs b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Program.cs index e3b1aeed74..9d076b5f23 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Program.cs +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Program.cs @@ -18,12 +18,9 @@ public class Program .MinimumLevel.Override("Microsoft", LogEventLevel.Information) .MinimumLevel.Override("Microsoft.EntityFrameworkCore", LogEventLevel.Warning) .Enrich.FromLogContext() -#if DEBUG .WriteTo.Async(c => c.File("Logs/logs.txt")) .WriteTo.Async(c => c.Console()); -#else - .WriteTo.Async(c => c.File("Logs/logs.txt")); -#endif + if (IsMigrateDatabase(args)) { loggerConfiguration.MinimumLevel.Override("Volo.Abp", LogEventLevel.Warning); diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Program.cs b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Program.cs index 358f8dda73..57e81aa17c 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Program.cs +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Program.cs @@ -24,12 +24,9 @@ public class Program .MinimumLevel.Override("Microsoft", LogEventLevel.Information) .MinimumLevel.Override("Microsoft.EntityFrameworkCore", LogEventLevel.Warning) .Enrich.FromLogContext() -#if DEBUG .WriteTo.Async(c => c.File("Logs/logs.txt")) .WriteTo.Async(c => c.Console()); -#else - .WriteTo.Async(c => c.File("Logs/logs.txt")); -#endif + if (IsMigrateDatabase(args)) { loggerConfiguration.MinimumLevel.Override("Volo.Abp", LogEventLevel.Warning); From 00e18120b0566c741011b7e572d62b866c508102 Mon Sep 17 00:00:00 2001 From: liangshiwei Date: Mon, 18 Apr 2022 11:19:32 +0800 Subject: [PATCH 73/90] Add IsEnabledAsync to IExternalLoginProvider --- .../Volo/Abp/Identity/ExternalLoginProviderBase.cs | 2 ++ .../Volo/Abp/Identity/IExternalLoginProvider.cs | 6 ++++++ 2 files changed, 8 insertions(+) diff --git a/modules/identity/src/Volo.Abp.Identity.Domain/Volo/Abp/Identity/ExternalLoginProviderBase.cs b/modules/identity/src/Volo.Abp.Identity.Domain/Volo/Abp/Identity/ExternalLoginProviderBase.cs index d129ba917e..cfefad2a95 100644 --- a/modules/identity/src/Volo.Abp.Identity.Domain/Volo/Abp/Identity/ExternalLoginProviderBase.cs +++ b/modules/identity/src/Volo.Abp.Identity.Domain/Volo/Abp/Identity/ExternalLoginProviderBase.cs @@ -32,6 +32,8 @@ public abstract class ExternalLoginProviderBase : IExternalLoginProvider } public abstract Task TryAuthenticateAsync(string userName, string plainPassword); + + public abstract Task IsEnabledAsync(); public virtual async Task CreateUserAsync(string userName, string providerName) { diff --git a/modules/identity/src/Volo.Abp.Identity.Domain/Volo/Abp/Identity/IExternalLoginProvider.cs b/modules/identity/src/Volo.Abp.Identity.Domain/Volo/Abp/Identity/IExternalLoginProvider.cs index 56d6c643fb..52d3895d13 100644 --- a/modules/identity/src/Volo.Abp.Identity.Domain/Volo/Abp/Identity/IExternalLoginProvider.cs +++ b/modules/identity/src/Volo.Abp.Identity.Domain/Volo/Abp/Identity/IExternalLoginProvider.cs @@ -28,4 +28,10 @@ public interface IExternalLoginProvider /// The name of this provider /// The user that can be updated Task UpdateUserAsync(IdentityUser user, string providerName); + + /// + /// Return a value indicating whether this source is enabled. + /// + /// + Task IsEnabledAsync(); } From a16c1e3de5713f1cf9cc729c1d9e18bfe01a6bed Mon Sep 17 00:00:00 2001 From: liangshiwei Date: Mon, 18 Apr 2022 12:06:07 +0800 Subject: [PATCH 74/90] Update FakeExternalLoginProvider --- .../Abp/Identity/AspNetCore/FakeExternalLoginProvider.cs | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/modules/identity/test/Volo.Abp.Identity.AspNetCore.Tests/Volo/Abp/Identity/AspNetCore/FakeExternalLoginProvider.cs b/modules/identity/test/Volo.Abp.Identity.AspNetCore.Tests/Volo/Abp/Identity/AspNetCore/FakeExternalLoginProvider.cs index 6583156c82..fbfc0e2ef6 100644 --- a/modules/identity/test/Volo.Abp.Identity.AspNetCore.Tests/Volo/Abp/Identity/AspNetCore/FakeExternalLoginProvider.cs +++ b/modules/identity/test/Volo.Abp.Identity.AspNetCore.Tests/Volo/Abp/Identity/AspNetCore/FakeExternalLoginProvider.cs @@ -35,6 +35,11 @@ public class FakeExternalLoginProvider : ExternalLoginProviderBase, ITransientDe ); } + public override Task IsEnabledAsync() + { + return Task.FromResult(true); + } + protected override Task GetUserInfoAsync(string userName) { if (userName != "ext_user") From 0891d82d48a57df22e5b70ad2d54236815c76cba Mon Sep 17 00:00:00 2001 From: maliming Date: Mon, 18 Apr 2022 14:47:05 +0800 Subject: [PATCH 75/90] Add `AbpDesignTimeDbContextBase`. --- .../Design/AbpDesignTimeDbContextBase.cs | 29 +++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 framework/src/Volo.Abp.EntityFrameworkCore/Volo/Abp/EntityFrameworkCore/Design/AbpDesignTimeDbContextBase.cs diff --git a/framework/src/Volo.Abp.EntityFrameworkCore/Volo/Abp/EntityFrameworkCore/Design/AbpDesignTimeDbContextBase.cs b/framework/src/Volo.Abp.EntityFrameworkCore/Volo/Abp/EntityFrameworkCore/Design/AbpDesignTimeDbContextBase.cs new file mode 100644 index 0000000000..c8fce37399 --- /dev/null +++ b/framework/src/Volo.Abp.EntityFrameworkCore/Volo/Abp/EntityFrameworkCore/Design/AbpDesignTimeDbContextBase.cs @@ -0,0 +1,29 @@ +using System.Threading.Tasks; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Design; +using Microsoft.Extensions.Configuration; +using Microsoft.Extensions.DependencyInjection; +using Volo.Abp.Modularity; +using Volo.Abp.Threading; + +namespace Volo.Abp.EntityFrameworkCore.Design; + +public abstract class AbpDesignTimeDbContextBase : IDesignTimeDbContextFactory + where TModule : AbpModule + where TContext : DbContext +{ + public virtual TContext CreateDbContext(string[] args) + { + return AsyncHelper.RunSync(() => CreateDbContextAsync(args)); + } + + protected virtual async Task CreateDbContextAsync(string[] args) + { + var application = await AbpApplicationFactory.CreateAsync(); + application.Services.ReplaceConfiguration(BuildConfiguration()); + await application.InitializeAsync(); + return application.ServiceProvider.GetRequiredService(); + } + + protected abstract IConfigurationRoot BuildConfiguration(); +} From e0bf7d8f16f7bcd4176b144d09409019104b78ee Mon Sep 17 00:00:00 2001 From: maliming Date: Mon, 18 Apr 2022 17:01:28 +0800 Subject: [PATCH 76/90] Update AbpDesignTimeDbContextBase.cs --- .../Design/AbpDesignTimeDbContextBase.cs | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/framework/src/Volo.Abp.EntityFrameworkCore/Volo/Abp/EntityFrameworkCore/Design/AbpDesignTimeDbContextBase.cs b/framework/src/Volo.Abp.EntityFrameworkCore/Volo/Abp/EntityFrameworkCore/Design/AbpDesignTimeDbContextBase.cs index c8fce37399..c3746f620d 100644 --- a/framework/src/Volo.Abp.EntityFrameworkCore/Volo/Abp/EntityFrameworkCore/Design/AbpDesignTimeDbContextBase.cs +++ b/framework/src/Volo.Abp.EntityFrameworkCore/Volo/Abp/EntityFrameworkCore/Design/AbpDesignTimeDbContextBase.cs @@ -19,11 +19,21 @@ public abstract class AbpDesignTimeDbContextBase : IDesignTim protected virtual async Task CreateDbContextAsync(string[] args) { - var application = await AbpApplicationFactory.CreateAsync(); - application.Services.ReplaceConfiguration(BuildConfiguration()); + var application = await AbpApplicationFactory.CreateAsync(options => + { + options.Services.ReplaceConfiguration(BuildConfiguration()); + ConfigureServices(options.Services); + }); + await application.InitializeAsync(); + return application.ServiceProvider.GetRequiredService(); } + protected virtual void ConfigureServices(IServiceCollection services) + { + + } + protected abstract IConfigurationRoot BuildConfiguration(); } From 55bdfd076fa244d5570159633b5ae3ba0d00a4ea Mon Sep 17 00:00:00 2001 From: selman koc <64414348+skoc10@users.noreply.github.com> Date: Mon, 18 Apr 2022 13:24:58 +0300 Subject: [PATCH 77/90] update common.props --- common.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/common.props b/common.props index afce80d4f5..176e761975 100644 --- a/common.props +++ b/common.props @@ -1,7 +1,7 @@ latest - 5.2.0 + 5.2.1 $(NoWarn);CS1591;CS0436 https://abp.io/assets/abp_nupkg.png https://abp.io/ From 4f21f6dc3ed5d2f6cb181ac9f87e799cb451c460 Mon Sep 17 00:00:00 2001 From: enisn Date: Mon, 18 Apr 2022 18:31:26 +0300 Subject: [PATCH 78/90] CmsKit - Prevent data seeding if global feature disabled --- .../Volo/CmsKit/Blogs/BlogFeatureDataSeedContributor.cs | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Blogs/BlogFeatureDataSeedContributor.cs b/modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Blogs/BlogFeatureDataSeedContributor.cs index b212e5e21a..e99ab47964 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Blogs/BlogFeatureDataSeedContributor.cs +++ b/modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Blogs/BlogFeatureDataSeedContributor.cs @@ -1,6 +1,7 @@ using System.Threading.Tasks; using Volo.Abp.Data; using Volo.Abp.DependencyInjection; +using Volo.Abp.GlobalFeatures; namespace Volo.CmsKit.Blogs; @@ -19,6 +20,11 @@ public class BlogFeatureDataSeedContributor : IDataSeedContributor, ITransientDe public async Task SeedAsync(DataSeedContext context) { + if (!GlobalFeatureManager.Instance.IsEnabled()) + { + return; + } + var blogs = await _blogRepository.GetListAsync(); foreach (var blog in blogs) From f1566fa44a932788a63431930e5aed69580ca2d5 Mon Sep 17 00:00:00 2001 From: enisn Date: Mon, 18 Apr 2022 18:32:29 +0300 Subject: [PATCH 79/90] Add missing BlogFeature property to ICmsKitDbContext --- .../Volo/CmsKit/EntityFrameworkCore/ICmsKitDbContext.cs | 1 + 1 file changed, 1 insertion(+) diff --git a/modules/cms-kit/src/Volo.CmsKit.EntityFrameworkCore/Volo/CmsKit/EntityFrameworkCore/ICmsKitDbContext.cs b/modules/cms-kit/src/Volo.CmsKit.EntityFrameworkCore/Volo/CmsKit/EntityFrameworkCore/ICmsKitDbContext.cs index a405612f39..fca31f2d73 100644 --- a/modules/cms-kit/src/Volo.CmsKit.EntityFrameworkCore/Volo/CmsKit/EntityFrameworkCore/ICmsKitDbContext.cs +++ b/modules/cms-kit/src/Volo.CmsKit.EntityFrameworkCore/Volo/CmsKit/EntityFrameworkCore/ICmsKitDbContext.cs @@ -26,6 +26,7 @@ public interface ICmsKitDbContext : IEfCoreDbContext DbSet Pages { get; } DbSet Blogs { get; } DbSet BlogPosts { get; } + DbSet BlogFeatures { get; } DbSet MediaDescriptors { get; } DbSet MenuItems { get; } DbSet GlobalResources { get; } From 81ca8497332399d258f3ffc384c96dcc934a4f63 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Halil=20=C4=B0brahim=20Kalkan?= Date: Mon, 18 Apr 2022 19:15:29 +0300 Subject: [PATCH 80/90] Documented "Static JavaScript API Client Proxies" --- .../AspNetCore/Dynamic-JavaScript-Proxies.md | 14 +- .../AspNetCore/Static-JavaScript-Proxies.md | 157 ++++++++++++++++++ docs/en/images/static-js-proxy-example.png | Bin 0 -> 6899 bytes 3 files changed, 167 insertions(+), 4 deletions(-) create mode 100644 docs/en/UI/AspNetCore/Static-JavaScript-Proxies.md create mode 100644 docs/en/images/static-js-proxy-example.png diff --git a/docs/en/UI/AspNetCore/Dynamic-JavaScript-Proxies.md b/docs/en/UI/AspNetCore/Dynamic-JavaScript-Proxies.md index 3464d4bc68..31c2dbe7ea 100644 --- a/docs/en/UI/AspNetCore/Dynamic-JavaScript-Proxies.md +++ b/docs/en/UI/AspNetCore/Dynamic-JavaScript-Proxies.md @@ -1,6 +1,12 @@ # Dynamic JavaScript API Client Proxies -It is typical to consume your HTTP APIs from your JavaScript code. To do that, you normally deal with low level AJAX calls, like $.ajax, or better [abp.ajax](JavaScript-API/Ajax.md). ABP Framework provides **a better way** to call your HTTP APIs from your JavaScript code: Dynamic JavaScript API Client Proxies! +It is typical to consume your HTTP APIs from your JavaScript code. To do that, you normally deal with low level AJAX calls, like $.ajax, or better [abp.ajax](JavaScript-API/Ajax.md). ABP Framework provides **a better way** to call your HTTP APIs from your JavaScript code: JavaScript API Client Proxies! + +## Static vs Dynamic JavaScript Client Proxies + +ABP provides **two types** of client proxy generation system. This document explains the **dynamic client proxies**, which generates client-side proxies on runtime. You can also see the [Static JavaScript API Client Proxies](Static-JavaScript-Proxies.md) documentation to learn how to generate proxies on development time. + +Development-time (static) client proxy generation has a **slight performance advantage** since it doesn't need to obtain the HTTP API definition on runtime. However, you should **re-generate** the client proxy code whenever you change your API endpoint definition. On the other hand, dynamic client proxies are generated on runtime and provides an **easier development experience**. ## A Quick Example @@ -55,7 +61,7 @@ acme.bookStore.authors.author ## AJAX Details -Dynamic JavaScript client proxy functions use the [abp.ajax](JavaScript-API/Ajax.md) under the hood. So, you have the same benefits like **automatic error handling**. Also, you can fully control the AJAX call by providing the options. +JavaScript client proxy functions use the [abp.ajax](JavaScript-API/Ajax.md) under the hood. So, you have the same benefits like **automatic error handling**. Also, you can fully control the AJAX call by providing the options. ### The Return Value @@ -86,6 +92,6 @@ The magic is done by the `/Abp/ServiceProxyScript` endpoint defined by the ABP F ## See Also -* [Web Application Development Tutorial](../../Tutorials/Part-1.md) +* [Static JavaScript API Client Proxies](Static-JavaScript-Proxies.md) * [Auto API Controllers](../../API/Auto-API-Controllers.md) -* [Dynamic C# API Client Proxies](../../API/Dynamic-CSharp-API-Clients.md) \ No newline at end of file +* [Web Application Development Tutorial](../../Tutorials/Part-1.md) \ No newline at end of file diff --git a/docs/en/UI/AspNetCore/Static-JavaScript-Proxies.md b/docs/en/UI/AspNetCore/Static-JavaScript-Proxies.md new file mode 100644 index 0000000000..20b87aa89b --- /dev/null +++ b/docs/en/UI/AspNetCore/Static-JavaScript-Proxies.md @@ -0,0 +1,157 @@ +# Static JavaScript API Client Proxies + +It is typical to consume your HTTP APIs from your JavaScript code. To do that, you normally deal with low level AJAX calls, like $.ajax, or better [abp.ajax](JavaScript-API/Ajax.md). ABP Framework provides **a better way** to call your HTTP APIs from your JavaScript code: JavaScript API Client Proxies! + +## Static vs Dynamic JavaScript Client Proxies + +ABP provides **two types** of client proxy generation system. This document explains the **static client proxies**, which generates client-side code in your development time. You can also see the [Dynamic JavaScript API Client Proxies](Dynamic-JavaScript-Proxies.md) documentation to learn how to use proxies generated on runtime. + +Development-time (static) client proxy generation has a **slight performance advantage** since it doesn't need to obtain the HTTP API definition on runtime. However, you should **re-generate** the client proxy code whenever you change your API endpoint definition. On the other hand, dynamic client proxies are generated on runtime and provides an **easier development experience**. + +## A Quick Example + +### The Application Service + +Assume that you have an application service defined as shown below: + +````csharp +using System; +using System.Threading.Tasks; +using Volo.Abp.Application.Dtos; +using Volo.Abp.Application.Services; + +namespace Acme.BookStore.Authors +{ + public interface IAuthorAppService : IApplicationService + { + Task GetAsync(Guid id); + + Task> GetListAsync(GetAuthorListDto input); + + Task CreateAsync(CreateAuthorDto input); + + Task UpdateAsync(Guid id, UpdateAuthorDto input); + + Task DeleteAsync(Guid id); + } +} +```` + +> You can follow the [web application development tutorial](../../Tutorials/Part-1.md) to learn how to create [application services](../../Application-Services.md), expose them as [HTTP APIs](../../API/Auto-API-Controllers.md) and consume from the JavaScript code as a complete example. + +### Generating the JavaScript Code + +Server side must be up and running while generating the client proxy code. So, first run the application that hosts your HTTP APIs (can be the Web application or the HttpApi.Host application depending on your solution structure). + +Open a command-line terminal in the root folder of your web project (`.csproj`) and type the following command: + +````bash +abp generate-proxy -t js -u https://localhost:53929/ +```` + +> If you haven't installed yet, you should install the [ABP CLI](../CLI.md). Change the example URL to your application's root URL. + +This command should generate the following files under the `ClientProxies` folder: + +![static-js-proxy-example](../../images/static-js-proxy-example.png) + +`app-proxy.js` is the generated proxy file in this example. Here, an example proxy function in this file: + +````js +acme.bookStore.authors.author.get = function(id, ajaxParams) { + return abp.ajax($.extend(true, { + url: abp.appPath + 'api/app/author/' + id + '', + type: 'GET' + }, ajaxParams)); +}; +```` + +> `generate-proxy` command generates proxies for only the APIs you've defined in your application (assumes `app` as the module name). If you are developing a modular application, you can specify the `-m` (or `--module`) parameter to specify the module you want to generate proxies. See the *generate-proxy* section in the [ABP CLI](../CLI.md) documentation for other options. + +### Using the Proxy Functions + +To use the proxy functions, first import the `app-proxy.js` file into your page: + +````html + +```` + +> We've used the [abp-script tag helper](Bundling-Minification.md) in this example. You could use the standard `script` tag, but the `abp-script` is the recommended way of importing JavaScript files to your pages. + +Now, you can call any of the application service methods from your JavaScript code, just like calling a JavaScript function. The JavaScript function has the identical function **name**, **parameters** and the **return value** with the C# method. + +**Example: Get a single author** + +````js +acme.bookStore.authors.author + .get("7245a066-5457-4941-8aa7-3004778775f0") //Get id from somewhere! + .then(function(result){ + console.log(result); + }); +```` + +**Example: Get the authors list** + +````js +acme.bookStore.authors.author.getList({ + maxResultCount: 10 +}).then(function(result){ + console.log(result.items); +}); +```` + +**Example: Delete an author** + +```js +acme.bookStore.authors.author + .delete('7245a066-5457-4941-8aa7-3004778775f0') //Get id from somewhere! + .then(function() { + abp.notify.info('Successfully deleted!'); + }); +``` + +## Disabling Dynamic JavaScript Proxies + +When you create an application or module, the [dynamic client proxy generation](Dynamic-JavaScript-Proxies.md) approach is used by default. If you want to use the statically generated client proxies for your application, you should explicitly disable it for your application or module in the `ConfigureServices` method of your [module class](../../Module-Development-Basics.md) as like in the following example: + +````csharp +Configure(options => +{ + options.DisableModule("app"); +}); +```` + +`app` represents the main application in this example, which works if you are creating an application. If you are developing an application module, then use your module's name. + +## AJAX Details + +JavaScript client proxy functions use the [abp.ajax](JavaScript-API/Ajax.md) under the hood. So, you have the same benefits like **automatic error handling**. Also, you can fully control the AJAX call by providing the options. + +### The Return Value + +Every function returns a [Deferred object](https://api.jquery.com/category/deferred-object/). That means you can chain with `then` to get the result, `catch` to handle the error, `always` to perform an action once the operation completes (success or failed). + +### AJAX Options + +Every function gets an additional **last parameter** after your own parameters. The last parameter is called as `ajaxParams`. It is an object that overrides the AJAX options. + +**Example: Set `type` and `dataType` AJAX options** + +````js +acme.bookStore.authors.author + .delete('7245a066-5457-4941-8aa7-3004778775f0', { + type: 'POST', + dataType: 'xml' + }) + .then(function() { + abp.notify.info('Successfully deleted!'); + }); +```` + +See the [jQuery.ajax](https://api.jquery.com/jQuery.ajax/) documentation for all the available options. + +## See Also + +* [Dynamic JavaScript API Client Proxies](Dynamic-JavaScript-Proxies.md) +* [Auto API Controllers](../../API/Auto-API-Controllers.md) +* [Web Application Development Tutorial](../../Tutorials/Part-1.md) \ No newline at end of file diff --git a/docs/en/images/static-js-proxy-example.png b/docs/en/images/static-js-proxy-example.png new file mode 100644 index 0000000000000000000000000000000000000000..575957b9ae2bbfb493b0101eca8c0d39b036b81e GIT binary patch literal 6899 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 Date: Mon, 18 Apr 2022 19:16:54 +0300 Subject: [PATCH 81/90] Added Static JavaScript API Client Proxies to the documentation menu. --- docs/en/docs-nav.json | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/docs/en/docs-nav.json b/docs/en/docs-nav.json index 8c08724b62..b2061920a8 100644 --- a/docs/en/docs-nav.json +++ b/docs/en/docs-nav.json @@ -647,6 +647,10 @@ "text": "Dynamic JavaScript API Client Proxies", "path": "UI/AspNetCore/Dynamic-JavaScript-Proxies.md" }, + { + "text": "Static JavaScript API Client Proxies", + "path": "UI/AspNetCore/Static-JavaScript-Proxies.md" + }, { "text": "Client Side Package Management", "path": "UI/AspNetCore/Client-Side-Package-Management.md" From f255edb7765996cdeebdd3597e0230f349bfe893 Mon Sep 17 00:00:00 2001 From: Volosoft Agent <43883821+voloagent@users.noreply.github.com> Date: Mon, 18 Apr 2022 21:06:22 +0300 Subject: [PATCH 82/90] Update_NPM_Packages --- .../package.json | 2 +- .../yarn.lock | 224 +++++------ .../package.json | 4 +- .../yarn.lock | 260 ++++++------- .../app/Volo.BloggingTestApp/package.json | 4 +- .../app/Volo.BloggingTestApp/yarn.lock | 298 +++++++-------- .../Volo.ClientSimulation.Demo/package.json | 2 +- .../demo/Volo.ClientSimulation.Demo/yarn.lock | 238 ++++++------ modules/cms-kit/angular/package.json | 10 +- .../angular/projects/cms-kit/package.json | 4 +- .../Volo.CmsKit.IdentityServer/package.json | 2 +- .../host/Volo.CmsKit.IdentityServer/yarn.lock | 238 ++++++------ .../host/Volo.CmsKit.Web.Host/package.json | 2 +- .../host/Volo.CmsKit.Web.Host/yarn.lock | 238 ++++++------ .../host/Volo.CmsKit.Web.Unified/package.json | 4 +- .../host/Volo.CmsKit.Web.Unified/yarn.lock | 360 +++++++++--------- modules/docs/app/VoloDocs.Web/package.json | 4 +- modules/docs/app/VoloDocs.Web/yarn.lock | 298 +++++++-------- .../package.json | 2 +- .../yarn.lock | 238 ++++++------ .../package.json | 4 +- .../yarn.lock | 272 ++++++------- npm/lerna.json | 2 +- npm/ng-packs/lerna.version.json | 2 +- npm/ng-packs/package.json | 24 +- .../packages/account-core/package.json | 6 +- npm/ng-packs/packages/account/package.json | 6 +- npm/ng-packs/packages/components/package.json | 6 +- npm/ng-packs/packages/core/package.json | 4 +- .../packages/feature-management/package.json | 4 +- npm/ng-packs/packages/identity/package.json | 6 +- .../permission-management/package.json | 4 +- npm/ng-packs/packages/schematics/package.json | 2 +- .../packages/setting-management/package.json | 6 +- .../packages/tenant-management/package.json | 6 +- .../packages/theme-basic/package.json | 6 +- .../packages/theme-shared/package.json | 4 +- npm/ng-packs/yarn.lock | 132 +++---- npm/packs/anchor-js/package.json | 4 +- .../package.json | 4 +- .../package.json | 6 +- .../package.json | 4 +- .../package.json | 30 +- npm/packs/aspnetcore.mvc.ui/package-lock.json | 2 +- npm/packs/aspnetcore.mvc.ui/package.json | 2 +- npm/packs/blogging/package.json | 10 +- npm/packs/bootstrap-datepicker/package.json | 2 +- npm/packs/bootstrap/package.json | 4 +- npm/packs/chart.js/package.json | 2 +- npm/packs/clipboard/package.json | 4 +- npm/packs/cms-kit.admin/package.json | 10 +- npm/packs/cms-kit.public/package.json | 6 +- npm/packs/cms-kit/package.json | 6 +- npm/packs/codemirror/package.json | 4 +- npm/packs/core/package.json | 4 +- npm/packs/cropperjs/package.json | 4 +- npm/packs/datatables.net-bs4/package.json | 4 +- npm/packs/datatables.net-bs5/package.json | 4 +- npm/packs/datatables.net/package.json | 4 +- npm/packs/docs/package.json | 12 +- npm/packs/flag-icon-css/package.json | 2 +- npm/packs/font-awesome/package.json | 4 +- npm/packs/highlight.js/package.json | 4 +- npm/packs/jquery-form/package.json | 4 +- .../package.json | 4 +- npm/packs/jquery-validation/package.json | 4 +- npm/packs/jquery/package.json | 4 +- npm/packs/jstree/package.json | 4 +- npm/packs/lodash/package.json | 4 +- npm/packs/luxon/package.json | 4 +- .../package.json | 4 +- npm/packs/markdown-it/package.json | 4 +- npm/packs/owl.carousel/package.json | 4 +- npm/packs/popper.js/package.json | 4 +- npm/packs/prismjs/package.json | 6 +- npm/packs/select2/package.json | 4 +- npm/packs/signalr/package.json | 4 +- npm/packs/slugify/package.json | 2 +- npm/packs/star-rating-svg/package.json | 4 +- npm/packs/sweetalert2/package.json | 4 +- npm/packs/timeago/package.json | 4 +- npm/packs/toastr/package.json | 4 +- npm/packs/tui-editor/package.json | 6 +- npm/packs/uppy/package.json | 4 +- npm/packs/utils/package.json | 2 +- npm/packs/vee-validate/package.json | 4 +- npm/packs/virtual-file-explorer/package.json | 6 +- npm/packs/vue/package.json | 2 +- templates/app-nolayers/angular/package.json | 18 +- .../package.json | 4 +- .../package.json | 4 +- .../package.json | 2 +- .../package.json | 2 +- .../package.json | 2 +- .../package.json | 2 +- templates/app/angular/package.json | 18 +- .../package.json | 4 +- .../package.json | 4 +- .../package.json | 2 +- .../package.json | 2 +- .../package.json | 2 +- .../package.json | 2 +- templates/module/angular/package.json | 18 +- .../projects/my-project-name/package.json | 4 +- .../package.json | 4 +- .../package.json | 2 +- .../package.json | 2 +- .../package.json | 2 +- 108 files changed, 1635 insertions(+), 1635 deletions(-) diff --git a/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.Demo/package.json b/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.Demo/package.json index a5ea8e966a..dc7f6f50d0 100644 --- a/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.Demo/package.json +++ b/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.Demo/package.json @@ -3,7 +3,7 @@ "name": "asp.net", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.shared": "^5.2.0", + "@abp/aspnetcore.mvc.ui.theme.shared": "^5.2.1", "highlight.js": "^9.13.1" }, "devDependencies": {} diff --git a/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.Demo/yarn.lock b/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.Demo/yarn.lock index 82ebed5471..e40aac01d8 100644 --- a/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.Demo/yarn.lock +++ b/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.Demo/yarn.lock @@ -2,30 +2,30 @@ # yarn lockfile v1 -"@abp/aspnetcore.mvc.ui.theme.shared@^5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-5.2.0.tgz#2a7ba6d0d2e28bb5acc77dc8e3a86535912243da" - integrity sha512-+QqRI3Yz+iwitOhfhMnomfpOoqsdh4kL6EFh9z2nI2GhLa+CtiJMAfZUOhLZTGHrBhtFk/mYu8LzYcFRzch8tw== - dependencies: - "@abp/aspnetcore.mvc.ui" "~5.2.0" - "@abp/bootstrap" "~5.2.0" - "@abp/bootstrap-datepicker" "~5.2.0" - "@abp/datatables.net-bs5" "~5.2.0" - "@abp/font-awesome" "~5.2.0" - "@abp/jquery-form" "~5.2.0" - "@abp/jquery-validation-unobtrusive" "~5.2.0" - "@abp/lodash" "~5.2.0" - "@abp/luxon" "~5.2.0" - "@abp/malihu-custom-scrollbar-plugin" "~5.2.0" - "@abp/select2" "~5.2.0" - "@abp/sweetalert2" "~5.2.0" - "@abp/timeago" "~5.2.0" - "@abp/toastr" "~5.2.0" - -"@abp/aspnetcore.mvc.ui@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-5.2.0.tgz#c590f3b56a623e9d00fa50d6a6179d4523ace2a6" - integrity sha512-UtlFa0HVwO8ezve43VEqdGazu9eQ/j4vmv4khKTPG8dEt2u9i3QVruqcIV5XnxnsQiGcZDak7QCyyH1GUFAhUg== +"@abp/aspnetcore.mvc.ui.theme.shared@^5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-5.2.1.tgz#dc291fe9c7100cc796068e19abf7579bd5e54b44" + integrity sha512-/1C5RyPIRPZT5ir8Len2EnSt1KfWcRdPyn/avAG+9JKBZ8FoUL8mO2/ffESOvikh/wItZZgxJ5VEJVGwHNjgdQ== + dependencies: + "@abp/aspnetcore.mvc.ui" "~5.2.1" + "@abp/bootstrap" "~5.2.1" + "@abp/bootstrap-datepicker" "~5.2.1" + "@abp/datatables.net-bs5" "~5.2.1" + "@abp/font-awesome" "~5.2.1" + "@abp/jquery-form" "~5.2.1" + "@abp/jquery-validation-unobtrusive" "~5.2.1" + "@abp/lodash" "~5.2.1" + "@abp/luxon" "~5.2.1" + "@abp/malihu-custom-scrollbar-plugin" "~5.2.1" + "@abp/select2" "~5.2.1" + "@abp/sweetalert2" "~5.2.1" + "@abp/timeago" "~5.2.1" + "@abp/toastr" "~5.2.1" + +"@abp/aspnetcore.mvc.ui@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-5.2.1.tgz#239ceeec332cebe2fedec0bb0cdec09089b499d3" + integrity sha512-VUSPOKjBSF+NxfwdsEVQte8u7mGP1t7jd1+ej2ND8JEKYJ1Vh7z2mfsT+lQaEJg0JWggU1AxkIMOOfHDNTU3Kg== dependencies: ansi-colors "^4.1.1" extend-object "^1.0.0" @@ -34,144 +34,144 @@ merge-stream "^2.0.0" micromatch "^4.0.2" -"@abp/bootstrap-datepicker@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-5.2.0.tgz#140892172b3d6edecc1d1e826b517e711d8ff60a" - integrity sha512-9WzC5Up7Uaahre6CCP2bzbtjhmnz3Or828kYxUlWSf7GQO2BydCJBqkWz6gjWDIzxLjQ5AeB+n9odEG3gLNNUw== +"@abp/bootstrap-datepicker@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-5.2.1.tgz#20d565211d05ca184f8e3ef4db840dbd98a58fbd" + integrity sha512-UPdVu9t7XybINSfonQN0DB9Lpz1r5vCz7F8CMpbjQprvPmsFmkAZyY0p6MS3kGO5eu5rlpGAGPBGOTeSfEp9ww== dependencies: bootstrap-datepicker "^1.9.0" -"@abp/bootstrap@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-5.2.0.tgz#16179d319b2e7a53fde6940217b3e27ce3c32714" - integrity sha512-r11Vzo7kFC8zs5DMvdqsKPG0FEYDqhFzgW4TJKa6d968apFRJ3wGjnF/kJmC1J+XzqNTtyHcwStfNmXUdL0udA== +"@abp/bootstrap@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-5.2.1.tgz#fe15144d7136a26be44be23fd2470cdef0bd28b9" + integrity sha512-vFW8OxfRhiDkIrDVIn3TyGkGyiCLLFmPMjSOmMg3o2XPdRk5uhwSBzWYpk/m+kmPpP6cEsJMxaHpCsirSlPE+A== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" bootstrap "^5.1.3" -"@abp/core@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-5.2.0.tgz#d85ab6fd677d1850261afdba240ef2b8c0d42faf" - integrity sha512-GRxfuip7E97uItAEcv87FSv5C4Tw6JLAkTbu0wAv86uhT46czPw77DZ5LhTRUlDZp4fPzJSy6OABaG1RROlo1w== +"@abp/core@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-5.2.1.tgz#9cd7f25dec0b4e654f7998f89c19f3d73169c74a" + integrity sha512-FDOhIPjig3oGxkbadJZzFSC1ZHzgQV4R75fsDNH56lQ9mTyRUPQdg0Y54eCtY7yOSjiJOctOUUWHaxoFG7frGQ== dependencies: - "@abp/utils" "~5.2.0" + "@abp/utils" "~5.2.1" -"@abp/datatables.net-bs5@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-5.2.0.tgz#9a6d5cba805a42abde2bbc3dd54ffeb67a188285" - integrity sha512-8eIvTadxffRW04qVRHh245lqX1tAfdyf5AsLqgomm7p0/ec76lNT1mRqwdS/kxD/ClrE6LmBnij1jJdaAs/0xQ== +"@abp/datatables.net-bs5@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-5.2.1.tgz#fafc65295d00d5b351404740702f7e56ff1341fe" + integrity sha512-B8lSAeMM9qOwYbDK/Dhp7BX5lFaCpao4RCPcSqgFrye8vlH8bcobmp4tMD23r24y/gRIEuQBcKzp0Lf0OUpLhA== dependencies: - "@abp/datatables.net" "~5.2.0" + "@abp/datatables.net" "~5.2.1" datatables.net-bs5 "^1.11.4" -"@abp/datatables.net@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-5.2.0.tgz#fc900b9da0625264a43530e26555cf31b06ee16c" - integrity sha512-O+DZGpvcN42yQieapaX7OdjDkBSlEQIX/iNSbext5e08Gs//cAPj7EQKiSirb6+BIvIZQchPHj2xadw0L7sQvg== +"@abp/datatables.net@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-5.2.1.tgz#397a3e7db2017c20c082598214478c277b2abec6" + integrity sha512-6Q3+W+d8e4TMAkZr/IdPDQuL1v+tjbS50ChLvrJX/BLb4fBhu1LGJWWKzKJFj721DwIsuQQiM4uq9xX/TjiS0w== dependencies: - "@abp/jquery" "~5.2.0" + "@abp/jquery" "~5.2.1" datatables.net "^1.11.4" -"@abp/font-awesome@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-5.2.0.tgz#8e0da078d307735ccac394326d06f21de85f2808" - integrity sha512-ZGiov0N35fZ92Abf+k5MqtRkAP8o54rb9iKEjUYgwtF8rnskO5o9fK8TppwXb7PlG9Znh2AUkknpeXOwa1IWtQ== +"@abp/font-awesome@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-5.2.1.tgz#357785a0366f555b72f76e2b8ee8a2d607aed6fb" + integrity sha512-9fAUdA9QeNRMjp6v8i6EOR480bjB4OzqzriFCKUu4k6VwbA6PxUsJIRFyKIt5UpC12Zqdhpkyj0iG6tE0nRekQ== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" "@fortawesome/fontawesome-free" "^5.15.4" -"@abp/jquery-form@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-5.2.0.tgz#f6dc777c736260f63875fb05c566ec14b2213b7c" - integrity sha512-xgQvgEXso3a/zMZWNxh9e0RdruCqNh75j9Lp4vHGxaWsXRtvgbCIfayDDWrn+6P28p8bYal7g51Jw6nc5jR5RA== +"@abp/jquery-form@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-5.2.1.tgz#c9cc6ad3997f7fa036d5cd8e0d15923ad7fff790" + integrity sha512-L7uKs7vReOQEETG9xIDq5aXjshbaPa+ZZQcCbn2uwY813e0ErS7Rb1mnowEt/LNEB02AtLet1B4TDVwZUl1uXQ== dependencies: - "@abp/jquery" "~5.2.0" + "@abp/jquery" "~5.2.1" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-5.2.0.tgz#8acd1346bdd2b6b1cd40017f995265fb3d19539f" - integrity sha512-z7VhlC9zi2Pf6sZ8EexUDHyBieaeO1G5ndmvJTV5wZMAigsu+H7LaAyQrTd5P42WpX1Jy3Lo2UbVCt5Gh98SXg== +"@abp/jquery-validation-unobtrusive@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-5.2.1.tgz#7fdfa3867f61f862ee575114560f79b505649093" + integrity sha512-uZ36D1FfoLdBb6h44fQ3kZuTk4gJ5yzhyOprkgMsGAJDVakX7w/W4V3ThpiEO+iUpNKTboVIhW2QQ0AXK9rrsg== dependencies: - "@abp/jquery-validation" "~5.2.0" + "@abp/jquery-validation" "~5.2.1" jquery-validation-unobtrusive "^3.2.12" -"@abp/jquery-validation@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-5.2.0.tgz#b594d6d4412b4cc56b97ba5581af559adc91d08a" - integrity sha512-AIAP3qRVI6DcF71rUy0yUXaGKVWwGtMx7Z13MMI66LhTnlS6giUb5UUQhcHJjIp4mAJoYbawiTpAnWezkoLJDQ== +"@abp/jquery-validation@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-5.2.1.tgz#e7fbaa1715af5667559e3b6f0fcb916766b28244" + integrity sha512-Rr/+SWGlXJ53jfysMB/HVNZqsJKCF3rg23ip2Kg6Q+kQTvWVRE3tpkpoBJczOii5tPUk/A/lsJKgRlcsnP0ASw== dependencies: - "@abp/jquery" "~5.2.0" + "@abp/jquery" "~5.2.1" jquery-validation "^1.19.3" -"@abp/jquery@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-5.2.0.tgz#2c924adc4a17013a7958017e985ca337c5064389" - integrity sha512-uL9Y9a31D7RLTz0VtSj0Wx9PHNrVrigPf8AUS8zMAblc8DZLEzXJ6L4nUU3xDW6+TGC/rO2x8zz1y/T6sKfzUw== +"@abp/jquery@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-5.2.1.tgz#6b88af5c22fb25d953d38847bcddcf591aeb3228" + integrity sha512-FiIRnDx/gm6JR8QljiulwCc5d8+YC123X0qxMIBI8IY9vznEX+Jk48jYG8fLABnRqKEIYfV8UsYSK8IJx3mcSg== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" jquery "~3.6.0" -"@abp/lodash@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-5.2.0.tgz#27f2c9c5848faceed04f0198d46cb34515e99608" - integrity sha512-5wcHMm+QtjEv/USxFu7jLNlNRiBwEnQG6zFwIKrT5V3d8dD8xq4zG86rojSexxd/0AKqyo5foMctV4IG8HC6Mg== +"@abp/lodash@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-5.2.1.tgz#87601162025a4a376e3c335d418636ef2079ad2d" + integrity sha512-ILg3X5tTH2HhJMRmg7BP/r+Kstm/nf+0aNQ2exsJoMMnKE7CC0eYQjpSgrze6GwG3a13eamyTlrz+RrlIm5IBA== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" lodash "^4.17.21" -"@abp/luxon@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-5.2.0.tgz#819b6cb5315622545bad8a84b8f3d6d63fbdf52d" - integrity sha512-VD2I/qhRYbbu5T7sUG5g01bcbw0gwAGmqUR4QI/5gmBYif8VuGHu/zTvnEn4Vhj6P5/tSWpa7blUs0EiFk/L/A== +"@abp/luxon@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-5.2.1.tgz#72a9e9bb0e7f3a688662c8e9ad52016b9cfa3a17" + integrity sha512-D3KVsba969UBYktdbCxq1JQp4kYZ1S7rIMymDJMBoHByXxwwdeXMkvuphAifBmSYTt3K6bNoZdR0VxtnNlPn2A== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" luxon "^2.3.0" -"@abp/malihu-custom-scrollbar-plugin@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-5.2.0.tgz#54ee9cf2c1049d617afebfd7b9ebae5b9225746e" - integrity sha512-CvQb/lnoxs+nEN0FuWwJyA5EgsbiSy23sYbTrM2t/KF6X3dK2m+4RMbEeG7rRYV1i6c1jfuHrjoFh3FPr9KRlA== +"@abp/malihu-custom-scrollbar-plugin@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-5.2.1.tgz#8d1b600552607e28a274775ad3bb68ac7cfbba09" + integrity sha512-5mvABMCT7tiwPl1vUK8kriN/SRi2gC4VqkEuxghT7uBQG9Cqh5jhJrl80M9ZK/oQFind3r6+SF8OlfwF8yvxHQ== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/select2@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-5.2.0.tgz#4b9418851cf52346131172c9c497173749bdd22b" - integrity sha512-t+EjuNqRIZIlu4Wk2pL+Ud/+gIFSoM3WN4U+LKGkQ1vwiVRbCUqvdj5LjGuEVrmN96lNfv3Xxut+XQoJDFjfeg== +"@abp/select2@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-5.2.1.tgz#f52a3c88da52bbfc4b135671064326aebb98b332" + integrity sha512-JH/PqOxhTY05sUyN7of6TNai0W4M3N3OF3Hlwmr8i7hNdYfFwJvQnQzKeKrk/vt8Hv44/JTQDlNKU02BmSBfOQ== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" select2 "^4.0.13" -"@abp/sweetalert2@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-5.2.0.tgz#f5625f33edcc9d56ab86cca30472637edfb52c95" - integrity sha512-8Ax00JbqfcB6nLIeeocPX7Yk4uPHsMXHMg6oLKTGV4w88h1MdazQ3YMb7E/9AXjCNoQE77cCEJ7wvV3FXC45SA== +"@abp/sweetalert2@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-5.2.1.tgz#f5ff712b4f7a4cb5a75a754aa4642f099f382e51" + integrity sha512-laaF/5WhYw+hNJRTfMzO93fVhaYqnnOcQTUlkGgsZMe2gwebyX73VI8O8Xw7zXmN1Tu/JwqRI46qiafDrPFTLg== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" sweetalert2 "^11.3.6" -"@abp/timeago@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-5.2.0.tgz#4ac58114acc00d2b2b4d2a051b98caba895c1a34" - integrity sha512-mgMP/vfdUIjjHNqssXcTMtQMQ1ZW9D9keUxvjtQyE+rXNByB+sXMf/mECEGsT9/hK/nDM+aBHxG+O7lkLI+dFA== +"@abp/timeago@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-5.2.1.tgz#a410dbf652c0f78f86384e116111aa613458b6de" + integrity sha512-xmgqKEKusB6pcqFhMaz8RTi886ad8RrRMYgMWSw4Zjk1Lr9EqQwKtcE43Ve5XWJamh2Wpk8H7IKLQKHfrV12oA== dependencies: - "@abp/jquery" "~5.2.0" + "@abp/jquery" "~5.2.1" timeago "^1.6.7" -"@abp/toastr@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-5.2.0.tgz#215af1bdc92a649ac54cb745489e00d9f0e5096b" - integrity sha512-wmoEOA6lOuTTbljsbTTfBGmJb6ur1pDi/VPuf7UF7FXoTcK/NIuzufblzTldsUleYXyIodLfg2s6qpOUGCDO8Q== +"@abp/toastr@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-5.2.1.tgz#4ed96a7967d028b8e849ff79b8a0a8a041bb20e4" + integrity sha512-HrnIzvM9LgQdzlmLmvHUVSG4PmWfx9YuozxkFTv+AGa2FAPby5W9hbQ025ry3bPkU9lGWSu/w7JSDqoiL16bPA== dependencies: - "@abp/jquery" "~5.2.0" + "@abp/jquery" "~5.2.1" toastr "^2.1.4" -"@abp/utils@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-5.2.0.tgz#3f5a7a2aab94f5c2a5e1f0f634517a4939909fa7" - integrity sha512-CBQzu8bAQQ9EUPCjjcXwLCDE/rPFGTtSRtGeMP1lrjavYEAxplXu58Fd8WeTl6d8/dqGA3nNQUnWbc2lGPlUYw== +"@abp/utils@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-5.2.1.tgz#7c2d20f1bcc8cf9f90c060ed31ed3a114a463064" + integrity sha512-9hxI24aRZCnxCP+WsOoCltSg4YqG9WtW06t9/f6hFO9B0udXIKyV+95Ndipca/R1G94Snx81ifSwAa+DHbFfvQ== dependencies: just-compare "^1.3.0" diff --git a/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic.Demo/package.json b/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic.Demo/package.json index 4f5f3e9479..4caf5c1672 100644 --- a/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic.Demo/package.json +++ b/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic.Demo/package.json @@ -3,8 +3,8 @@ "name": "asp.net", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0", - "@abp/prismjs": "^5.2.0" + "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.1", + "@abp/prismjs": "^5.2.1" }, "devDependencies": {} } diff --git a/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic.Demo/yarn.lock b/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic.Demo/yarn.lock index 573608215c..407c79dba3 100644 --- a/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic.Demo/yarn.lock +++ b/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic.Demo/yarn.lock @@ -2,37 +2,37 @@ # yarn lockfile v1 -"@abp/aspnetcore.mvc.ui.theme.basic@^5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-5.2.0.tgz#272f3ba89ee7a37bc2c5d0d1c280a47c39de4baa" - integrity sha512-9yTHmtmD7sgA0fTxFCohhMrmolfnp/5sJzPsh3USGqANjr3g9Ybv3tydP4Hwfb1Ts+dqcrITdsM0Ny/EcEt+iQ== - dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~5.2.0" - -"@abp/aspnetcore.mvc.ui.theme.shared@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-5.2.0.tgz#2a7ba6d0d2e28bb5acc77dc8e3a86535912243da" - integrity sha512-+QqRI3Yz+iwitOhfhMnomfpOoqsdh4kL6EFh9z2nI2GhLa+CtiJMAfZUOhLZTGHrBhtFk/mYu8LzYcFRzch8tw== - dependencies: - "@abp/aspnetcore.mvc.ui" "~5.2.0" - "@abp/bootstrap" "~5.2.0" - "@abp/bootstrap-datepicker" "~5.2.0" - "@abp/datatables.net-bs5" "~5.2.0" - "@abp/font-awesome" "~5.2.0" - "@abp/jquery-form" "~5.2.0" - "@abp/jquery-validation-unobtrusive" "~5.2.0" - "@abp/lodash" "~5.2.0" - "@abp/luxon" "~5.2.0" - "@abp/malihu-custom-scrollbar-plugin" "~5.2.0" - "@abp/select2" "~5.2.0" - "@abp/sweetalert2" "~5.2.0" - "@abp/timeago" "~5.2.0" - "@abp/toastr" "~5.2.0" - -"@abp/aspnetcore.mvc.ui@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-5.2.0.tgz#c590f3b56a623e9d00fa50d6a6179d4523ace2a6" - integrity sha512-UtlFa0HVwO8ezve43VEqdGazu9eQ/j4vmv4khKTPG8dEt2u9i3QVruqcIV5XnxnsQiGcZDak7QCyyH1GUFAhUg== +"@abp/aspnetcore.mvc.ui.theme.basic@^5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-5.2.1.tgz#25bd7116b9b0e72ba45f0f5246343343de8561b2" + integrity sha512-DYr9ROcTPfCRHxD1QSWqLZ9+ARbO5p9I6SRo893NtJ39aHacAa9RIAwZmP0JLG0C4hLXfJLKXJ2DpNcwY+ubXA== + dependencies: + "@abp/aspnetcore.mvc.ui.theme.shared" "~5.2.1" + +"@abp/aspnetcore.mvc.ui.theme.shared@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-5.2.1.tgz#dc291fe9c7100cc796068e19abf7579bd5e54b44" + integrity sha512-/1C5RyPIRPZT5ir8Len2EnSt1KfWcRdPyn/avAG+9JKBZ8FoUL8mO2/ffESOvikh/wItZZgxJ5VEJVGwHNjgdQ== + dependencies: + "@abp/aspnetcore.mvc.ui" "~5.2.1" + "@abp/bootstrap" "~5.2.1" + "@abp/bootstrap-datepicker" "~5.2.1" + "@abp/datatables.net-bs5" "~5.2.1" + "@abp/font-awesome" "~5.2.1" + "@abp/jquery-form" "~5.2.1" + "@abp/jquery-validation-unobtrusive" "~5.2.1" + "@abp/lodash" "~5.2.1" + "@abp/luxon" "~5.2.1" + "@abp/malihu-custom-scrollbar-plugin" "~5.2.1" + "@abp/select2" "~5.2.1" + "@abp/sweetalert2" "~5.2.1" + "@abp/timeago" "~5.2.1" + "@abp/toastr" "~5.2.1" + +"@abp/aspnetcore.mvc.ui@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-5.2.1.tgz#239ceeec332cebe2fedec0bb0cdec09089b499d3" + integrity sha512-VUSPOKjBSF+NxfwdsEVQte8u7mGP1t7jd1+ej2ND8JEKYJ1Vh7z2mfsT+lQaEJg0JWggU1AxkIMOOfHDNTU3Kg== dependencies: ansi-colors "^4.1.1" extend-object "^1.0.0" @@ -41,161 +41,161 @@ merge-stream "^2.0.0" micromatch "^4.0.2" -"@abp/bootstrap-datepicker@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-5.2.0.tgz#140892172b3d6edecc1d1e826b517e711d8ff60a" - integrity sha512-9WzC5Up7Uaahre6CCP2bzbtjhmnz3Or828kYxUlWSf7GQO2BydCJBqkWz6gjWDIzxLjQ5AeB+n9odEG3gLNNUw== +"@abp/bootstrap-datepicker@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-5.2.1.tgz#20d565211d05ca184f8e3ef4db840dbd98a58fbd" + integrity sha512-UPdVu9t7XybINSfonQN0DB9Lpz1r5vCz7F8CMpbjQprvPmsFmkAZyY0p6MS3kGO5eu5rlpGAGPBGOTeSfEp9ww== dependencies: bootstrap-datepicker "^1.9.0" -"@abp/bootstrap@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-5.2.0.tgz#16179d319b2e7a53fde6940217b3e27ce3c32714" - integrity sha512-r11Vzo7kFC8zs5DMvdqsKPG0FEYDqhFzgW4TJKa6d968apFRJ3wGjnF/kJmC1J+XzqNTtyHcwStfNmXUdL0udA== +"@abp/bootstrap@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-5.2.1.tgz#fe15144d7136a26be44be23fd2470cdef0bd28b9" + integrity sha512-vFW8OxfRhiDkIrDVIn3TyGkGyiCLLFmPMjSOmMg3o2XPdRk5uhwSBzWYpk/m+kmPpP6cEsJMxaHpCsirSlPE+A== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" bootstrap "^5.1.3" -"@abp/clipboard@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-5.2.0.tgz#5374562edfa95c6a2a2244b4f1667625c73b7185" - integrity sha512-AFdY+7n4khi6mM86EzbclzC2S/SN5FncGCFTW873GQ2OakDzyCRhNqtoLihcvSW5YwDvofMJjAITCy5GnzelRw== +"@abp/clipboard@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-5.2.1.tgz#c6bddd279b37e9b2bd27b027d5686411c9ae942b" + integrity sha512-aouNTDz8t+8M4O2a+UsEdtABRsyhvzGpXqCG2+LYE1vA3I+CKhglkvEFp+GyIgWsipEHY1U1w6V3qZtcRINn+A== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" clipboard "^2.0.8" -"@abp/core@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-5.2.0.tgz#d85ab6fd677d1850261afdba240ef2b8c0d42faf" - integrity sha512-GRxfuip7E97uItAEcv87FSv5C4Tw6JLAkTbu0wAv86uhT46czPw77DZ5LhTRUlDZp4fPzJSy6OABaG1RROlo1w== +"@abp/core@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-5.2.1.tgz#9cd7f25dec0b4e654f7998f89c19f3d73169c74a" + integrity sha512-FDOhIPjig3oGxkbadJZzFSC1ZHzgQV4R75fsDNH56lQ9mTyRUPQdg0Y54eCtY7yOSjiJOctOUUWHaxoFG7frGQ== dependencies: - "@abp/utils" "~5.2.0" + "@abp/utils" "~5.2.1" -"@abp/datatables.net-bs5@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-5.2.0.tgz#9a6d5cba805a42abde2bbc3dd54ffeb67a188285" - integrity sha512-8eIvTadxffRW04qVRHh245lqX1tAfdyf5AsLqgomm7p0/ec76lNT1mRqwdS/kxD/ClrE6LmBnij1jJdaAs/0xQ== +"@abp/datatables.net-bs5@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-5.2.1.tgz#fafc65295d00d5b351404740702f7e56ff1341fe" + integrity sha512-B8lSAeMM9qOwYbDK/Dhp7BX5lFaCpao4RCPcSqgFrye8vlH8bcobmp4tMD23r24y/gRIEuQBcKzp0Lf0OUpLhA== dependencies: - "@abp/datatables.net" "~5.2.0" + "@abp/datatables.net" "~5.2.1" datatables.net-bs5 "^1.11.4" -"@abp/datatables.net@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-5.2.0.tgz#fc900b9da0625264a43530e26555cf31b06ee16c" - integrity sha512-O+DZGpvcN42yQieapaX7OdjDkBSlEQIX/iNSbext5e08Gs//cAPj7EQKiSirb6+BIvIZQchPHj2xadw0L7sQvg== +"@abp/datatables.net@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-5.2.1.tgz#397a3e7db2017c20c082598214478c277b2abec6" + integrity sha512-6Q3+W+d8e4TMAkZr/IdPDQuL1v+tjbS50ChLvrJX/BLb4fBhu1LGJWWKzKJFj721DwIsuQQiM4uq9xX/TjiS0w== dependencies: - "@abp/jquery" "~5.2.0" + "@abp/jquery" "~5.2.1" datatables.net "^1.11.4" -"@abp/font-awesome@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-5.2.0.tgz#8e0da078d307735ccac394326d06f21de85f2808" - integrity sha512-ZGiov0N35fZ92Abf+k5MqtRkAP8o54rb9iKEjUYgwtF8rnskO5o9fK8TppwXb7PlG9Znh2AUkknpeXOwa1IWtQ== +"@abp/font-awesome@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-5.2.1.tgz#357785a0366f555b72f76e2b8ee8a2d607aed6fb" + integrity sha512-9fAUdA9QeNRMjp6v8i6EOR480bjB4OzqzriFCKUu4k6VwbA6PxUsJIRFyKIt5UpC12Zqdhpkyj0iG6tE0nRekQ== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" "@fortawesome/fontawesome-free" "^5.15.4" -"@abp/jquery-form@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-5.2.0.tgz#f6dc777c736260f63875fb05c566ec14b2213b7c" - integrity sha512-xgQvgEXso3a/zMZWNxh9e0RdruCqNh75j9Lp4vHGxaWsXRtvgbCIfayDDWrn+6P28p8bYal7g51Jw6nc5jR5RA== +"@abp/jquery-form@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-5.2.1.tgz#c9cc6ad3997f7fa036d5cd8e0d15923ad7fff790" + integrity sha512-L7uKs7vReOQEETG9xIDq5aXjshbaPa+ZZQcCbn2uwY813e0ErS7Rb1mnowEt/LNEB02AtLet1B4TDVwZUl1uXQ== dependencies: - "@abp/jquery" "~5.2.0" + "@abp/jquery" "~5.2.1" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-5.2.0.tgz#8acd1346bdd2b6b1cd40017f995265fb3d19539f" - integrity sha512-z7VhlC9zi2Pf6sZ8EexUDHyBieaeO1G5ndmvJTV5wZMAigsu+H7LaAyQrTd5P42WpX1Jy3Lo2UbVCt5Gh98SXg== +"@abp/jquery-validation-unobtrusive@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-5.2.1.tgz#7fdfa3867f61f862ee575114560f79b505649093" + integrity sha512-uZ36D1FfoLdBb6h44fQ3kZuTk4gJ5yzhyOprkgMsGAJDVakX7w/W4V3ThpiEO+iUpNKTboVIhW2QQ0AXK9rrsg== dependencies: - "@abp/jquery-validation" "~5.2.0" + "@abp/jquery-validation" "~5.2.1" jquery-validation-unobtrusive "^3.2.12" -"@abp/jquery-validation@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-5.2.0.tgz#b594d6d4412b4cc56b97ba5581af559adc91d08a" - integrity sha512-AIAP3qRVI6DcF71rUy0yUXaGKVWwGtMx7Z13MMI66LhTnlS6giUb5UUQhcHJjIp4mAJoYbawiTpAnWezkoLJDQ== +"@abp/jquery-validation@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-5.2.1.tgz#e7fbaa1715af5667559e3b6f0fcb916766b28244" + integrity sha512-Rr/+SWGlXJ53jfysMB/HVNZqsJKCF3rg23ip2Kg6Q+kQTvWVRE3tpkpoBJczOii5tPUk/A/lsJKgRlcsnP0ASw== dependencies: - "@abp/jquery" "~5.2.0" + "@abp/jquery" "~5.2.1" jquery-validation "^1.19.3" -"@abp/jquery@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-5.2.0.tgz#2c924adc4a17013a7958017e985ca337c5064389" - integrity sha512-uL9Y9a31D7RLTz0VtSj0Wx9PHNrVrigPf8AUS8zMAblc8DZLEzXJ6L4nUU3xDW6+TGC/rO2x8zz1y/T6sKfzUw== +"@abp/jquery@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-5.2.1.tgz#6b88af5c22fb25d953d38847bcddcf591aeb3228" + integrity sha512-FiIRnDx/gm6JR8QljiulwCc5d8+YC123X0qxMIBI8IY9vznEX+Jk48jYG8fLABnRqKEIYfV8UsYSK8IJx3mcSg== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" jquery "~3.6.0" -"@abp/lodash@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-5.2.0.tgz#27f2c9c5848faceed04f0198d46cb34515e99608" - integrity sha512-5wcHMm+QtjEv/USxFu7jLNlNRiBwEnQG6zFwIKrT5V3d8dD8xq4zG86rojSexxd/0AKqyo5foMctV4IG8HC6Mg== +"@abp/lodash@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-5.2.1.tgz#87601162025a4a376e3c335d418636ef2079ad2d" + integrity sha512-ILg3X5tTH2HhJMRmg7BP/r+Kstm/nf+0aNQ2exsJoMMnKE7CC0eYQjpSgrze6GwG3a13eamyTlrz+RrlIm5IBA== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" lodash "^4.17.21" -"@abp/luxon@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-5.2.0.tgz#819b6cb5315622545bad8a84b8f3d6d63fbdf52d" - integrity sha512-VD2I/qhRYbbu5T7sUG5g01bcbw0gwAGmqUR4QI/5gmBYif8VuGHu/zTvnEn4Vhj6P5/tSWpa7blUs0EiFk/L/A== +"@abp/luxon@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-5.2.1.tgz#72a9e9bb0e7f3a688662c8e9ad52016b9cfa3a17" + integrity sha512-D3KVsba969UBYktdbCxq1JQp4kYZ1S7rIMymDJMBoHByXxwwdeXMkvuphAifBmSYTt3K6bNoZdR0VxtnNlPn2A== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" luxon "^2.3.0" -"@abp/malihu-custom-scrollbar-plugin@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-5.2.0.tgz#54ee9cf2c1049d617afebfd7b9ebae5b9225746e" - integrity sha512-CvQb/lnoxs+nEN0FuWwJyA5EgsbiSy23sYbTrM2t/KF6X3dK2m+4RMbEeG7rRYV1i6c1jfuHrjoFh3FPr9KRlA== +"@abp/malihu-custom-scrollbar-plugin@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-5.2.1.tgz#8d1b600552607e28a274775ad3bb68ac7cfbba09" + integrity sha512-5mvABMCT7tiwPl1vUK8kriN/SRi2gC4VqkEuxghT7uBQG9Cqh5jhJrl80M9ZK/oQFind3r6+SF8OlfwF8yvxHQ== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/prismjs@^5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-5.2.0.tgz#c33ee1178a3916a6a1eac54ec4bdc78ca0dc42c7" - integrity sha512-jVFm7d80u5cIuygQViotDEQNpe2nGxEPQmZNzEV1jM4myMAMN1PZHFhoFxb3FAbH2q0wlZ5lcXjQs5cTz8V8Mw== +"@abp/prismjs@^5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-5.2.1.tgz#86aae6ee4529401da75744f1e43c7cd3c0b494a0" + integrity sha512-YNgcM7Kvmu3hGXJh4B8gl7rLzC28VuZYYP7AVptVSbTz/n6usCo21evG/st8L3vXixuQkvnNpBFgacJnHdSJZQ== dependencies: - "@abp/clipboard" "~5.2.0" - "@abp/core" "~5.2.0" + "@abp/clipboard" "~5.2.1" + "@abp/core" "~5.2.1" prismjs "^1.26.0" -"@abp/select2@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-5.2.0.tgz#4b9418851cf52346131172c9c497173749bdd22b" - integrity sha512-t+EjuNqRIZIlu4Wk2pL+Ud/+gIFSoM3WN4U+LKGkQ1vwiVRbCUqvdj5LjGuEVrmN96lNfv3Xxut+XQoJDFjfeg== +"@abp/select2@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-5.2.1.tgz#f52a3c88da52bbfc4b135671064326aebb98b332" + integrity sha512-JH/PqOxhTY05sUyN7of6TNai0W4M3N3OF3Hlwmr8i7hNdYfFwJvQnQzKeKrk/vt8Hv44/JTQDlNKU02BmSBfOQ== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" select2 "^4.0.13" -"@abp/sweetalert2@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-5.2.0.tgz#f5625f33edcc9d56ab86cca30472637edfb52c95" - integrity sha512-8Ax00JbqfcB6nLIeeocPX7Yk4uPHsMXHMg6oLKTGV4w88h1MdazQ3YMb7E/9AXjCNoQE77cCEJ7wvV3FXC45SA== +"@abp/sweetalert2@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-5.2.1.tgz#f5ff712b4f7a4cb5a75a754aa4642f099f382e51" + integrity sha512-laaF/5WhYw+hNJRTfMzO93fVhaYqnnOcQTUlkGgsZMe2gwebyX73VI8O8Xw7zXmN1Tu/JwqRI46qiafDrPFTLg== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" sweetalert2 "^11.3.6" -"@abp/timeago@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-5.2.0.tgz#4ac58114acc00d2b2b4d2a051b98caba895c1a34" - integrity sha512-mgMP/vfdUIjjHNqssXcTMtQMQ1ZW9D9keUxvjtQyE+rXNByB+sXMf/mECEGsT9/hK/nDM+aBHxG+O7lkLI+dFA== +"@abp/timeago@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-5.2.1.tgz#a410dbf652c0f78f86384e116111aa613458b6de" + integrity sha512-xmgqKEKusB6pcqFhMaz8RTi886ad8RrRMYgMWSw4Zjk1Lr9EqQwKtcE43Ve5XWJamh2Wpk8H7IKLQKHfrV12oA== dependencies: - "@abp/jquery" "~5.2.0" + "@abp/jquery" "~5.2.1" timeago "^1.6.7" -"@abp/toastr@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-5.2.0.tgz#215af1bdc92a649ac54cb745489e00d9f0e5096b" - integrity sha512-wmoEOA6lOuTTbljsbTTfBGmJb6ur1pDi/VPuf7UF7FXoTcK/NIuzufblzTldsUleYXyIodLfg2s6qpOUGCDO8Q== +"@abp/toastr@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-5.2.1.tgz#4ed96a7967d028b8e849ff79b8a0a8a041bb20e4" + integrity sha512-HrnIzvM9LgQdzlmLmvHUVSG4PmWfx9YuozxkFTv+AGa2FAPby5W9hbQ025ry3bPkU9lGWSu/w7JSDqoiL16bPA== dependencies: - "@abp/jquery" "~5.2.0" + "@abp/jquery" "~5.2.1" toastr "^2.1.4" -"@abp/utils@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-5.2.0.tgz#3f5a7a2aab94f5c2a5e1f0f634517a4939909fa7" - integrity sha512-CBQzu8bAQQ9EUPCjjcXwLCDE/rPFGTtSRtGeMP1lrjavYEAxplXu58Fd8WeTl6d8/dqGA3nNQUnWbc2lGPlUYw== +"@abp/utils@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-5.2.1.tgz#7c2d20f1bcc8cf9f90c060ed31ed3a114a463064" + integrity sha512-9hxI24aRZCnxCP+WsOoCltSg4YqG9WtW06t9/f6hFO9B0udXIKyV+95Ndipca/R1G94Snx81ifSwAa+DHbFfvQ== dependencies: just-compare "^1.3.0" diff --git a/modules/blogging/app/Volo.BloggingTestApp/package.json b/modules/blogging/app/Volo.BloggingTestApp/package.json index 396293af7c..1d0e320c39 100644 --- a/modules/blogging/app/Volo.BloggingTestApp/package.json +++ b/modules/blogging/app/Volo.BloggingTestApp/package.json @@ -3,7 +3,7 @@ "name": "volo.blogtestapp", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0", - "@abp/blogging": "^5.2.0" + "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.1", + "@abp/blogging": "^5.2.1" } } \ No newline at end of file diff --git a/modules/blogging/app/Volo.BloggingTestApp/yarn.lock b/modules/blogging/app/Volo.BloggingTestApp/yarn.lock index f74c124a17..08c5aba314 100644 --- a/modules/blogging/app/Volo.BloggingTestApp/yarn.lock +++ b/modules/blogging/app/Volo.BloggingTestApp/yarn.lock @@ -2,37 +2,37 @@ # yarn lockfile v1 -"@abp/aspnetcore.mvc.ui.theme.basic@^5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-5.2.0.tgz#272f3ba89ee7a37bc2c5d0d1c280a47c39de4baa" - integrity sha512-9yTHmtmD7sgA0fTxFCohhMrmolfnp/5sJzPsh3USGqANjr3g9Ybv3tydP4Hwfb1Ts+dqcrITdsM0Ny/EcEt+iQ== - dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~5.2.0" - -"@abp/aspnetcore.mvc.ui.theme.shared@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-5.2.0.tgz#2a7ba6d0d2e28bb5acc77dc8e3a86535912243da" - integrity sha512-+QqRI3Yz+iwitOhfhMnomfpOoqsdh4kL6EFh9z2nI2GhLa+CtiJMAfZUOhLZTGHrBhtFk/mYu8LzYcFRzch8tw== - dependencies: - "@abp/aspnetcore.mvc.ui" "~5.2.0" - "@abp/bootstrap" "~5.2.0" - "@abp/bootstrap-datepicker" "~5.2.0" - "@abp/datatables.net-bs5" "~5.2.0" - "@abp/font-awesome" "~5.2.0" - "@abp/jquery-form" "~5.2.0" - "@abp/jquery-validation-unobtrusive" "~5.2.0" - "@abp/lodash" "~5.2.0" - "@abp/luxon" "~5.2.0" - "@abp/malihu-custom-scrollbar-plugin" "~5.2.0" - "@abp/select2" "~5.2.0" - "@abp/sweetalert2" "~5.2.0" - "@abp/timeago" "~5.2.0" - "@abp/toastr" "~5.2.0" - -"@abp/aspnetcore.mvc.ui@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-5.2.0.tgz#c590f3b56a623e9d00fa50d6a6179d4523ace2a6" - integrity sha512-UtlFa0HVwO8ezve43VEqdGazu9eQ/j4vmv4khKTPG8dEt2u9i3QVruqcIV5XnxnsQiGcZDak7QCyyH1GUFAhUg== +"@abp/aspnetcore.mvc.ui.theme.basic@^5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-5.2.1.tgz#25bd7116b9b0e72ba45f0f5246343343de8561b2" + integrity sha512-DYr9ROcTPfCRHxD1QSWqLZ9+ARbO5p9I6SRo893NtJ39aHacAa9RIAwZmP0JLG0C4hLXfJLKXJ2DpNcwY+ubXA== + dependencies: + "@abp/aspnetcore.mvc.ui.theme.shared" "~5.2.1" + +"@abp/aspnetcore.mvc.ui.theme.shared@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-5.2.1.tgz#dc291fe9c7100cc796068e19abf7579bd5e54b44" + integrity sha512-/1C5RyPIRPZT5ir8Len2EnSt1KfWcRdPyn/avAG+9JKBZ8FoUL8mO2/ffESOvikh/wItZZgxJ5VEJVGwHNjgdQ== + dependencies: + "@abp/aspnetcore.mvc.ui" "~5.2.1" + "@abp/bootstrap" "~5.2.1" + "@abp/bootstrap-datepicker" "~5.2.1" + "@abp/datatables.net-bs5" "~5.2.1" + "@abp/font-awesome" "~5.2.1" + "@abp/jquery-form" "~5.2.1" + "@abp/jquery-validation-unobtrusive" "~5.2.1" + "@abp/lodash" "~5.2.1" + "@abp/luxon" "~5.2.1" + "@abp/malihu-custom-scrollbar-plugin" "~5.2.1" + "@abp/select2" "~5.2.1" + "@abp/sweetalert2" "~5.2.1" + "@abp/timeago" "~5.2.1" + "@abp/toastr" "~5.2.1" + +"@abp/aspnetcore.mvc.ui@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-5.2.1.tgz#239ceeec332cebe2fedec0bb0cdec09089b499d3" + integrity sha512-VUSPOKjBSF+NxfwdsEVQte8u7mGP1t7jd1+ej2ND8JEKYJ1Vh7z2mfsT+lQaEJg0JWggU1AxkIMOOfHDNTU3Kg== dependencies: ansi-colors "^4.1.1" extend-object "^1.0.0" @@ -41,187 +41,187 @@ merge-stream "^2.0.0" micromatch "^4.0.2" -"@abp/blogging@^5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/blogging/-/blogging-5.2.0.tgz#0099005206f2b0ab0e6622be6638a52597be494d" - integrity sha512-CQd/mlURfUrCQhGyry0MvGeKV88TnJasj/Q0+HDkCT2o7Wi4E7Ore137jwGDeV0oWQe3cPxY8iTNDogH8ivU8A== +"@abp/blogging@^5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/blogging/-/blogging-5.2.1.tgz#5b9c98d120293a835c0a0cb27b1764be849140d9" + integrity sha512-p2AamTCbBZkbqJKZ341JXYnzvJm4vCkT1gTZPNY49tMNa5brl2oFloI+tk491JHHaNz4lpHGFpPzQftjLPdTew== dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~5.2.0" - "@abp/owl.carousel" "~5.2.0" - "@abp/prismjs" "~5.2.0" - "@abp/tui-editor" "~5.2.0" + "@abp/aspnetcore.mvc.ui.theme.shared" "~5.2.1" + "@abp/owl.carousel" "~5.2.1" + "@abp/prismjs" "~5.2.1" + "@abp/tui-editor" "~5.2.1" -"@abp/bootstrap-datepicker@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-5.2.0.tgz#140892172b3d6edecc1d1e826b517e711d8ff60a" - integrity sha512-9WzC5Up7Uaahre6CCP2bzbtjhmnz3Or828kYxUlWSf7GQO2BydCJBqkWz6gjWDIzxLjQ5AeB+n9odEG3gLNNUw== +"@abp/bootstrap-datepicker@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-5.2.1.tgz#20d565211d05ca184f8e3ef4db840dbd98a58fbd" + integrity sha512-UPdVu9t7XybINSfonQN0DB9Lpz1r5vCz7F8CMpbjQprvPmsFmkAZyY0p6MS3kGO5eu5rlpGAGPBGOTeSfEp9ww== dependencies: bootstrap-datepicker "^1.9.0" -"@abp/bootstrap@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-5.2.0.tgz#16179d319b2e7a53fde6940217b3e27ce3c32714" - integrity sha512-r11Vzo7kFC8zs5DMvdqsKPG0FEYDqhFzgW4TJKa6d968apFRJ3wGjnF/kJmC1J+XzqNTtyHcwStfNmXUdL0udA== +"@abp/bootstrap@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-5.2.1.tgz#fe15144d7136a26be44be23fd2470cdef0bd28b9" + integrity sha512-vFW8OxfRhiDkIrDVIn3TyGkGyiCLLFmPMjSOmMg3o2XPdRk5uhwSBzWYpk/m+kmPpP6cEsJMxaHpCsirSlPE+A== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" bootstrap "^5.1.3" -"@abp/clipboard@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-5.2.0.tgz#5374562edfa95c6a2a2244b4f1667625c73b7185" - integrity sha512-AFdY+7n4khi6mM86EzbclzC2S/SN5FncGCFTW873GQ2OakDzyCRhNqtoLihcvSW5YwDvofMJjAITCy5GnzelRw== +"@abp/clipboard@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-5.2.1.tgz#c6bddd279b37e9b2bd27b027d5686411c9ae942b" + integrity sha512-aouNTDz8t+8M4O2a+UsEdtABRsyhvzGpXqCG2+LYE1vA3I+CKhglkvEFp+GyIgWsipEHY1U1w6V3qZtcRINn+A== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" clipboard "^2.0.8" -"@abp/core@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-5.2.0.tgz#d85ab6fd677d1850261afdba240ef2b8c0d42faf" - integrity sha512-GRxfuip7E97uItAEcv87FSv5C4Tw6JLAkTbu0wAv86uhT46czPw77DZ5LhTRUlDZp4fPzJSy6OABaG1RROlo1w== +"@abp/core@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-5.2.1.tgz#9cd7f25dec0b4e654f7998f89c19f3d73169c74a" + integrity sha512-FDOhIPjig3oGxkbadJZzFSC1ZHzgQV4R75fsDNH56lQ9mTyRUPQdg0Y54eCtY7yOSjiJOctOUUWHaxoFG7frGQ== dependencies: - "@abp/utils" "~5.2.0" + "@abp/utils" "~5.2.1" -"@abp/datatables.net-bs5@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-5.2.0.tgz#9a6d5cba805a42abde2bbc3dd54ffeb67a188285" - integrity sha512-8eIvTadxffRW04qVRHh245lqX1tAfdyf5AsLqgomm7p0/ec76lNT1mRqwdS/kxD/ClrE6LmBnij1jJdaAs/0xQ== +"@abp/datatables.net-bs5@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-5.2.1.tgz#fafc65295d00d5b351404740702f7e56ff1341fe" + integrity sha512-B8lSAeMM9qOwYbDK/Dhp7BX5lFaCpao4RCPcSqgFrye8vlH8bcobmp4tMD23r24y/gRIEuQBcKzp0Lf0OUpLhA== dependencies: - "@abp/datatables.net" "~5.2.0" + "@abp/datatables.net" "~5.2.1" datatables.net-bs5 "^1.11.4" -"@abp/datatables.net@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-5.2.0.tgz#fc900b9da0625264a43530e26555cf31b06ee16c" - integrity sha512-O+DZGpvcN42yQieapaX7OdjDkBSlEQIX/iNSbext5e08Gs//cAPj7EQKiSirb6+BIvIZQchPHj2xadw0L7sQvg== +"@abp/datatables.net@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-5.2.1.tgz#397a3e7db2017c20c082598214478c277b2abec6" + integrity sha512-6Q3+W+d8e4TMAkZr/IdPDQuL1v+tjbS50ChLvrJX/BLb4fBhu1LGJWWKzKJFj721DwIsuQQiM4uq9xX/TjiS0w== dependencies: - "@abp/jquery" "~5.2.0" + "@abp/jquery" "~5.2.1" datatables.net "^1.11.4" -"@abp/font-awesome@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-5.2.0.tgz#8e0da078d307735ccac394326d06f21de85f2808" - integrity sha512-ZGiov0N35fZ92Abf+k5MqtRkAP8o54rb9iKEjUYgwtF8rnskO5o9fK8TppwXb7PlG9Znh2AUkknpeXOwa1IWtQ== +"@abp/font-awesome@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-5.2.1.tgz#357785a0366f555b72f76e2b8ee8a2d607aed6fb" + integrity sha512-9fAUdA9QeNRMjp6v8i6EOR480bjB4OzqzriFCKUu4k6VwbA6PxUsJIRFyKIt5UpC12Zqdhpkyj0iG6tE0nRekQ== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" "@fortawesome/fontawesome-free" "^5.15.4" -"@abp/jquery-form@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-5.2.0.tgz#f6dc777c736260f63875fb05c566ec14b2213b7c" - integrity sha512-xgQvgEXso3a/zMZWNxh9e0RdruCqNh75j9Lp4vHGxaWsXRtvgbCIfayDDWrn+6P28p8bYal7g51Jw6nc5jR5RA== +"@abp/jquery-form@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-5.2.1.tgz#c9cc6ad3997f7fa036d5cd8e0d15923ad7fff790" + integrity sha512-L7uKs7vReOQEETG9xIDq5aXjshbaPa+ZZQcCbn2uwY813e0ErS7Rb1mnowEt/LNEB02AtLet1B4TDVwZUl1uXQ== dependencies: - "@abp/jquery" "~5.2.0" + "@abp/jquery" "~5.2.1" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-5.2.0.tgz#8acd1346bdd2b6b1cd40017f995265fb3d19539f" - integrity sha512-z7VhlC9zi2Pf6sZ8EexUDHyBieaeO1G5ndmvJTV5wZMAigsu+H7LaAyQrTd5P42WpX1Jy3Lo2UbVCt5Gh98SXg== +"@abp/jquery-validation-unobtrusive@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-5.2.1.tgz#7fdfa3867f61f862ee575114560f79b505649093" + integrity sha512-uZ36D1FfoLdBb6h44fQ3kZuTk4gJ5yzhyOprkgMsGAJDVakX7w/W4V3ThpiEO+iUpNKTboVIhW2QQ0AXK9rrsg== dependencies: - "@abp/jquery-validation" "~5.2.0" + "@abp/jquery-validation" "~5.2.1" jquery-validation-unobtrusive "^3.2.12" -"@abp/jquery-validation@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-5.2.0.tgz#b594d6d4412b4cc56b97ba5581af559adc91d08a" - integrity sha512-AIAP3qRVI6DcF71rUy0yUXaGKVWwGtMx7Z13MMI66LhTnlS6giUb5UUQhcHJjIp4mAJoYbawiTpAnWezkoLJDQ== +"@abp/jquery-validation@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-5.2.1.tgz#e7fbaa1715af5667559e3b6f0fcb916766b28244" + integrity sha512-Rr/+SWGlXJ53jfysMB/HVNZqsJKCF3rg23ip2Kg6Q+kQTvWVRE3tpkpoBJczOii5tPUk/A/lsJKgRlcsnP0ASw== dependencies: - "@abp/jquery" "~5.2.0" + "@abp/jquery" "~5.2.1" jquery-validation "^1.19.3" -"@abp/jquery@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-5.2.0.tgz#2c924adc4a17013a7958017e985ca337c5064389" - integrity sha512-uL9Y9a31D7RLTz0VtSj0Wx9PHNrVrigPf8AUS8zMAblc8DZLEzXJ6L4nUU3xDW6+TGC/rO2x8zz1y/T6sKfzUw== +"@abp/jquery@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-5.2.1.tgz#6b88af5c22fb25d953d38847bcddcf591aeb3228" + integrity sha512-FiIRnDx/gm6JR8QljiulwCc5d8+YC123X0qxMIBI8IY9vznEX+Jk48jYG8fLABnRqKEIYfV8UsYSK8IJx3mcSg== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" jquery "~3.6.0" -"@abp/lodash@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-5.2.0.tgz#27f2c9c5848faceed04f0198d46cb34515e99608" - integrity sha512-5wcHMm+QtjEv/USxFu7jLNlNRiBwEnQG6zFwIKrT5V3d8dD8xq4zG86rojSexxd/0AKqyo5foMctV4IG8HC6Mg== +"@abp/lodash@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-5.2.1.tgz#87601162025a4a376e3c335d418636ef2079ad2d" + integrity sha512-ILg3X5tTH2HhJMRmg7BP/r+Kstm/nf+0aNQ2exsJoMMnKE7CC0eYQjpSgrze6GwG3a13eamyTlrz+RrlIm5IBA== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" lodash "^4.17.21" -"@abp/luxon@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-5.2.0.tgz#819b6cb5315622545bad8a84b8f3d6d63fbdf52d" - integrity sha512-VD2I/qhRYbbu5T7sUG5g01bcbw0gwAGmqUR4QI/5gmBYif8VuGHu/zTvnEn4Vhj6P5/tSWpa7blUs0EiFk/L/A== +"@abp/luxon@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-5.2.1.tgz#72a9e9bb0e7f3a688662c8e9ad52016b9cfa3a17" + integrity sha512-D3KVsba969UBYktdbCxq1JQp4kYZ1S7rIMymDJMBoHByXxwwdeXMkvuphAifBmSYTt3K6bNoZdR0VxtnNlPn2A== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" luxon "^2.3.0" -"@abp/malihu-custom-scrollbar-plugin@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-5.2.0.tgz#54ee9cf2c1049d617afebfd7b9ebae5b9225746e" - integrity sha512-CvQb/lnoxs+nEN0FuWwJyA5EgsbiSy23sYbTrM2t/KF6X3dK2m+4RMbEeG7rRYV1i6c1jfuHrjoFh3FPr9KRlA== +"@abp/malihu-custom-scrollbar-plugin@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-5.2.1.tgz#8d1b600552607e28a274775ad3bb68ac7cfbba09" + integrity sha512-5mvABMCT7tiwPl1vUK8kriN/SRi2gC4VqkEuxghT7uBQG9Cqh5jhJrl80M9ZK/oQFind3r6+SF8OlfwF8yvxHQ== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/owl.carousel@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/owl.carousel/-/owl.carousel-5.2.0.tgz#f0f934a974630999692fdcb91d5aed70f45ebb0d" - integrity sha512-XwhTARtQBMwx3tmsfIc54sKHK9EaAt7cBC7rNgPl+hgJJS+t0/mZAJh0FOoaO/hCvAXCcVOHvwZ36S25y2tdWA== +"@abp/owl.carousel@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/owl.carousel/-/owl.carousel-5.2.1.tgz#f58d28c98ccb8ff0f9cbcf612519648032fa4399" + integrity sha512-LYDSKrHlrzB5mD33m39olc1V96NJnNPTv3+VefKNnZvUCRHGwwCfow4pwWgjmn2uvHBKW5qiBX9c2EbwLFplQA== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" owl.carousel "^2.3.4" -"@abp/prismjs@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-5.2.0.tgz#c33ee1178a3916a6a1eac54ec4bdc78ca0dc42c7" - integrity sha512-jVFm7d80u5cIuygQViotDEQNpe2nGxEPQmZNzEV1jM4myMAMN1PZHFhoFxb3FAbH2q0wlZ5lcXjQs5cTz8V8Mw== +"@abp/prismjs@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-5.2.1.tgz#86aae6ee4529401da75744f1e43c7cd3c0b494a0" + integrity sha512-YNgcM7Kvmu3hGXJh4B8gl7rLzC28VuZYYP7AVptVSbTz/n6usCo21evG/st8L3vXixuQkvnNpBFgacJnHdSJZQ== dependencies: - "@abp/clipboard" "~5.2.0" - "@abp/core" "~5.2.0" + "@abp/clipboard" "~5.2.1" + "@abp/core" "~5.2.1" prismjs "^1.26.0" -"@abp/select2@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-5.2.0.tgz#4b9418851cf52346131172c9c497173749bdd22b" - integrity sha512-t+EjuNqRIZIlu4Wk2pL+Ud/+gIFSoM3WN4U+LKGkQ1vwiVRbCUqvdj5LjGuEVrmN96lNfv3Xxut+XQoJDFjfeg== +"@abp/select2@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-5.2.1.tgz#f52a3c88da52bbfc4b135671064326aebb98b332" + integrity sha512-JH/PqOxhTY05sUyN7of6TNai0W4M3N3OF3Hlwmr8i7hNdYfFwJvQnQzKeKrk/vt8Hv44/JTQDlNKU02BmSBfOQ== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" select2 "^4.0.13" -"@abp/sweetalert2@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-5.2.0.tgz#f5625f33edcc9d56ab86cca30472637edfb52c95" - integrity sha512-8Ax00JbqfcB6nLIeeocPX7Yk4uPHsMXHMg6oLKTGV4w88h1MdazQ3YMb7E/9AXjCNoQE77cCEJ7wvV3FXC45SA== +"@abp/sweetalert2@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-5.2.1.tgz#f5ff712b4f7a4cb5a75a754aa4642f099f382e51" + integrity sha512-laaF/5WhYw+hNJRTfMzO93fVhaYqnnOcQTUlkGgsZMe2gwebyX73VI8O8Xw7zXmN1Tu/JwqRI46qiafDrPFTLg== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" sweetalert2 "^11.3.6" -"@abp/timeago@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-5.2.0.tgz#4ac58114acc00d2b2b4d2a051b98caba895c1a34" - integrity sha512-mgMP/vfdUIjjHNqssXcTMtQMQ1ZW9D9keUxvjtQyE+rXNByB+sXMf/mECEGsT9/hK/nDM+aBHxG+O7lkLI+dFA== +"@abp/timeago@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-5.2.1.tgz#a410dbf652c0f78f86384e116111aa613458b6de" + integrity sha512-xmgqKEKusB6pcqFhMaz8RTi886ad8RrRMYgMWSw4Zjk1Lr9EqQwKtcE43Ve5XWJamh2Wpk8H7IKLQKHfrV12oA== dependencies: - "@abp/jquery" "~5.2.0" + "@abp/jquery" "~5.2.1" timeago "^1.6.7" -"@abp/toastr@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-5.2.0.tgz#215af1bdc92a649ac54cb745489e00d9f0e5096b" - integrity sha512-wmoEOA6lOuTTbljsbTTfBGmJb6ur1pDi/VPuf7UF7FXoTcK/NIuzufblzTldsUleYXyIodLfg2s6qpOUGCDO8Q== +"@abp/toastr@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-5.2.1.tgz#4ed96a7967d028b8e849ff79b8a0a8a041bb20e4" + integrity sha512-HrnIzvM9LgQdzlmLmvHUVSG4PmWfx9YuozxkFTv+AGa2FAPby5W9hbQ025ry3bPkU9lGWSu/w7JSDqoiL16bPA== dependencies: - "@abp/jquery" "~5.2.0" + "@abp/jquery" "~5.2.1" toastr "^2.1.4" -"@abp/tui-editor@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/tui-editor/-/tui-editor-5.2.0.tgz#a1d9f110d39e57eec9a0e6786e2ce6d86c4d0ab1" - integrity sha512-HndRgYDH6yXmU8AXIf/pEOfhKk6R3cs/E0vC+NqmIbpIT6AN36RYnFsvcjs1NWUv7EuZM3ZCEm+9Ce6MKArEhQ== +"@abp/tui-editor@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/tui-editor/-/tui-editor-5.2.1.tgz#06be1a029de754868fa11ce3479be3fbc90ba103" + integrity sha512-Mi3preBkGEU1hrtSNCkOjeXPc9c74DFt8BL82sPIVDglYcVrVLXbnNTWE/CHP0spmKWh33ek4FoH1Pt0TePMuw== dependencies: - "@abp/jquery" "~5.2.0" - "@abp/prismjs" "~5.2.0" + "@abp/jquery" "~5.2.1" + "@abp/prismjs" "~5.2.1" -"@abp/utils@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-5.2.0.tgz#3f5a7a2aab94f5c2a5e1f0f634517a4939909fa7" - integrity sha512-CBQzu8bAQQ9EUPCjjcXwLCDE/rPFGTtSRtGeMP1lrjavYEAxplXu58Fd8WeTl6d8/dqGA3nNQUnWbc2lGPlUYw== +"@abp/utils@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-5.2.1.tgz#7c2d20f1bcc8cf9f90c060ed31ed3a114a463064" + integrity sha512-9hxI24aRZCnxCP+WsOoCltSg4YqG9WtW06t9/f6hFO9B0udXIKyV+95Ndipca/R1G94Snx81ifSwAa+DHbFfvQ== dependencies: just-compare "^1.3.0" diff --git a/modules/client-simulation/demo/Volo.ClientSimulation.Demo/package.json b/modules/client-simulation/demo/Volo.ClientSimulation.Demo/package.json index dd3e161eef..b65206c781 100644 --- a/modules/client-simulation/demo/Volo.ClientSimulation.Demo/package.json +++ b/modules/client-simulation/demo/Volo.ClientSimulation.Demo/package.json @@ -3,6 +3,6 @@ "name": "client-simulation-web", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0" + "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.1" } } \ No newline at end of file diff --git a/modules/client-simulation/demo/Volo.ClientSimulation.Demo/yarn.lock b/modules/client-simulation/demo/Volo.ClientSimulation.Demo/yarn.lock index 97f8cbaf92..e8b775d277 100644 --- a/modules/client-simulation/demo/Volo.ClientSimulation.Demo/yarn.lock +++ b/modules/client-simulation/demo/Volo.ClientSimulation.Demo/yarn.lock @@ -2,37 +2,37 @@ # yarn lockfile v1 -"@abp/aspnetcore.mvc.ui.theme.basic@^5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-5.2.0.tgz#272f3ba89ee7a37bc2c5d0d1c280a47c39de4baa" - integrity sha512-9yTHmtmD7sgA0fTxFCohhMrmolfnp/5sJzPsh3USGqANjr3g9Ybv3tydP4Hwfb1Ts+dqcrITdsM0Ny/EcEt+iQ== - dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~5.2.0" - -"@abp/aspnetcore.mvc.ui.theme.shared@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-5.2.0.tgz#2a7ba6d0d2e28bb5acc77dc8e3a86535912243da" - integrity sha512-+QqRI3Yz+iwitOhfhMnomfpOoqsdh4kL6EFh9z2nI2GhLa+CtiJMAfZUOhLZTGHrBhtFk/mYu8LzYcFRzch8tw== - dependencies: - "@abp/aspnetcore.mvc.ui" "~5.2.0" - "@abp/bootstrap" "~5.2.0" - "@abp/bootstrap-datepicker" "~5.2.0" - "@abp/datatables.net-bs5" "~5.2.0" - "@abp/font-awesome" "~5.2.0" - "@abp/jquery-form" "~5.2.0" - "@abp/jquery-validation-unobtrusive" "~5.2.0" - "@abp/lodash" "~5.2.0" - "@abp/luxon" "~5.2.0" - "@abp/malihu-custom-scrollbar-plugin" "~5.2.0" - "@abp/select2" "~5.2.0" - "@abp/sweetalert2" "~5.2.0" - "@abp/timeago" "~5.2.0" - "@abp/toastr" "~5.2.0" - -"@abp/aspnetcore.mvc.ui@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-5.2.0.tgz#c590f3b56a623e9d00fa50d6a6179d4523ace2a6" - integrity sha512-UtlFa0HVwO8ezve43VEqdGazu9eQ/j4vmv4khKTPG8dEt2u9i3QVruqcIV5XnxnsQiGcZDak7QCyyH1GUFAhUg== +"@abp/aspnetcore.mvc.ui.theme.basic@^5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-5.2.1.tgz#25bd7116b9b0e72ba45f0f5246343343de8561b2" + integrity sha512-DYr9ROcTPfCRHxD1QSWqLZ9+ARbO5p9I6SRo893NtJ39aHacAa9RIAwZmP0JLG0C4hLXfJLKXJ2DpNcwY+ubXA== + dependencies: + "@abp/aspnetcore.mvc.ui.theme.shared" "~5.2.1" + +"@abp/aspnetcore.mvc.ui.theme.shared@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-5.2.1.tgz#dc291fe9c7100cc796068e19abf7579bd5e54b44" + integrity sha512-/1C5RyPIRPZT5ir8Len2EnSt1KfWcRdPyn/avAG+9JKBZ8FoUL8mO2/ffESOvikh/wItZZgxJ5VEJVGwHNjgdQ== + dependencies: + "@abp/aspnetcore.mvc.ui" "~5.2.1" + "@abp/bootstrap" "~5.2.1" + "@abp/bootstrap-datepicker" "~5.2.1" + "@abp/datatables.net-bs5" "~5.2.1" + "@abp/font-awesome" "~5.2.1" + "@abp/jquery-form" "~5.2.1" + "@abp/jquery-validation-unobtrusive" "~5.2.1" + "@abp/lodash" "~5.2.1" + "@abp/luxon" "~5.2.1" + "@abp/malihu-custom-scrollbar-plugin" "~5.2.1" + "@abp/select2" "~5.2.1" + "@abp/sweetalert2" "~5.2.1" + "@abp/timeago" "~5.2.1" + "@abp/toastr" "~5.2.1" + +"@abp/aspnetcore.mvc.ui@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-5.2.1.tgz#239ceeec332cebe2fedec0bb0cdec09089b499d3" + integrity sha512-VUSPOKjBSF+NxfwdsEVQte8u7mGP1t7jd1+ej2ND8JEKYJ1Vh7z2mfsT+lQaEJg0JWggU1AxkIMOOfHDNTU3Kg== dependencies: ansi-colors "^4.1.1" extend-object "^1.0.0" @@ -41,144 +41,144 @@ merge-stream "^2.0.0" micromatch "^4.0.2" -"@abp/bootstrap-datepicker@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-5.2.0.tgz#140892172b3d6edecc1d1e826b517e711d8ff60a" - integrity sha512-9WzC5Up7Uaahre6CCP2bzbtjhmnz3Or828kYxUlWSf7GQO2BydCJBqkWz6gjWDIzxLjQ5AeB+n9odEG3gLNNUw== +"@abp/bootstrap-datepicker@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-5.2.1.tgz#20d565211d05ca184f8e3ef4db840dbd98a58fbd" + integrity sha512-UPdVu9t7XybINSfonQN0DB9Lpz1r5vCz7F8CMpbjQprvPmsFmkAZyY0p6MS3kGO5eu5rlpGAGPBGOTeSfEp9ww== dependencies: bootstrap-datepicker "^1.9.0" -"@abp/bootstrap@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-5.2.0.tgz#16179d319b2e7a53fde6940217b3e27ce3c32714" - integrity sha512-r11Vzo7kFC8zs5DMvdqsKPG0FEYDqhFzgW4TJKa6d968apFRJ3wGjnF/kJmC1J+XzqNTtyHcwStfNmXUdL0udA== +"@abp/bootstrap@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-5.2.1.tgz#fe15144d7136a26be44be23fd2470cdef0bd28b9" + integrity sha512-vFW8OxfRhiDkIrDVIn3TyGkGyiCLLFmPMjSOmMg3o2XPdRk5uhwSBzWYpk/m+kmPpP6cEsJMxaHpCsirSlPE+A== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" bootstrap "^5.1.3" -"@abp/core@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-5.2.0.tgz#d85ab6fd677d1850261afdba240ef2b8c0d42faf" - integrity sha512-GRxfuip7E97uItAEcv87FSv5C4Tw6JLAkTbu0wAv86uhT46czPw77DZ5LhTRUlDZp4fPzJSy6OABaG1RROlo1w== +"@abp/core@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-5.2.1.tgz#9cd7f25dec0b4e654f7998f89c19f3d73169c74a" + integrity sha512-FDOhIPjig3oGxkbadJZzFSC1ZHzgQV4R75fsDNH56lQ9mTyRUPQdg0Y54eCtY7yOSjiJOctOUUWHaxoFG7frGQ== dependencies: - "@abp/utils" "~5.2.0" + "@abp/utils" "~5.2.1" -"@abp/datatables.net-bs5@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-5.2.0.tgz#9a6d5cba805a42abde2bbc3dd54ffeb67a188285" - integrity sha512-8eIvTadxffRW04qVRHh245lqX1tAfdyf5AsLqgomm7p0/ec76lNT1mRqwdS/kxD/ClrE6LmBnij1jJdaAs/0xQ== +"@abp/datatables.net-bs5@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-5.2.1.tgz#fafc65295d00d5b351404740702f7e56ff1341fe" + integrity sha512-B8lSAeMM9qOwYbDK/Dhp7BX5lFaCpao4RCPcSqgFrye8vlH8bcobmp4tMD23r24y/gRIEuQBcKzp0Lf0OUpLhA== dependencies: - "@abp/datatables.net" "~5.2.0" + "@abp/datatables.net" "~5.2.1" datatables.net-bs5 "^1.11.4" -"@abp/datatables.net@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-5.2.0.tgz#fc900b9da0625264a43530e26555cf31b06ee16c" - integrity sha512-O+DZGpvcN42yQieapaX7OdjDkBSlEQIX/iNSbext5e08Gs//cAPj7EQKiSirb6+BIvIZQchPHj2xadw0L7sQvg== +"@abp/datatables.net@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-5.2.1.tgz#397a3e7db2017c20c082598214478c277b2abec6" + integrity sha512-6Q3+W+d8e4TMAkZr/IdPDQuL1v+tjbS50ChLvrJX/BLb4fBhu1LGJWWKzKJFj721DwIsuQQiM4uq9xX/TjiS0w== dependencies: - "@abp/jquery" "~5.2.0" + "@abp/jquery" "~5.2.1" datatables.net "^1.11.4" -"@abp/font-awesome@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-5.2.0.tgz#8e0da078d307735ccac394326d06f21de85f2808" - integrity sha512-ZGiov0N35fZ92Abf+k5MqtRkAP8o54rb9iKEjUYgwtF8rnskO5o9fK8TppwXb7PlG9Znh2AUkknpeXOwa1IWtQ== +"@abp/font-awesome@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-5.2.1.tgz#357785a0366f555b72f76e2b8ee8a2d607aed6fb" + integrity sha512-9fAUdA9QeNRMjp6v8i6EOR480bjB4OzqzriFCKUu4k6VwbA6PxUsJIRFyKIt5UpC12Zqdhpkyj0iG6tE0nRekQ== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" "@fortawesome/fontawesome-free" "^5.15.4" -"@abp/jquery-form@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-5.2.0.tgz#f6dc777c736260f63875fb05c566ec14b2213b7c" - integrity sha512-xgQvgEXso3a/zMZWNxh9e0RdruCqNh75j9Lp4vHGxaWsXRtvgbCIfayDDWrn+6P28p8bYal7g51Jw6nc5jR5RA== +"@abp/jquery-form@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-5.2.1.tgz#c9cc6ad3997f7fa036d5cd8e0d15923ad7fff790" + integrity sha512-L7uKs7vReOQEETG9xIDq5aXjshbaPa+ZZQcCbn2uwY813e0ErS7Rb1mnowEt/LNEB02AtLet1B4TDVwZUl1uXQ== dependencies: - "@abp/jquery" "~5.2.0" + "@abp/jquery" "~5.2.1" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-5.2.0.tgz#8acd1346bdd2b6b1cd40017f995265fb3d19539f" - integrity sha512-z7VhlC9zi2Pf6sZ8EexUDHyBieaeO1G5ndmvJTV5wZMAigsu+H7LaAyQrTd5P42WpX1Jy3Lo2UbVCt5Gh98SXg== +"@abp/jquery-validation-unobtrusive@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-5.2.1.tgz#7fdfa3867f61f862ee575114560f79b505649093" + integrity sha512-uZ36D1FfoLdBb6h44fQ3kZuTk4gJ5yzhyOprkgMsGAJDVakX7w/W4V3ThpiEO+iUpNKTboVIhW2QQ0AXK9rrsg== dependencies: - "@abp/jquery-validation" "~5.2.0" + "@abp/jquery-validation" "~5.2.1" jquery-validation-unobtrusive "^3.2.12" -"@abp/jquery-validation@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-5.2.0.tgz#b594d6d4412b4cc56b97ba5581af559adc91d08a" - integrity sha512-AIAP3qRVI6DcF71rUy0yUXaGKVWwGtMx7Z13MMI66LhTnlS6giUb5UUQhcHJjIp4mAJoYbawiTpAnWezkoLJDQ== +"@abp/jquery-validation@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-5.2.1.tgz#e7fbaa1715af5667559e3b6f0fcb916766b28244" + integrity sha512-Rr/+SWGlXJ53jfysMB/HVNZqsJKCF3rg23ip2Kg6Q+kQTvWVRE3tpkpoBJczOii5tPUk/A/lsJKgRlcsnP0ASw== dependencies: - "@abp/jquery" "~5.2.0" + "@abp/jquery" "~5.2.1" jquery-validation "^1.19.3" -"@abp/jquery@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-5.2.0.tgz#2c924adc4a17013a7958017e985ca337c5064389" - integrity sha512-uL9Y9a31D7RLTz0VtSj0Wx9PHNrVrigPf8AUS8zMAblc8DZLEzXJ6L4nUU3xDW6+TGC/rO2x8zz1y/T6sKfzUw== +"@abp/jquery@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-5.2.1.tgz#6b88af5c22fb25d953d38847bcddcf591aeb3228" + integrity sha512-FiIRnDx/gm6JR8QljiulwCc5d8+YC123X0qxMIBI8IY9vznEX+Jk48jYG8fLABnRqKEIYfV8UsYSK8IJx3mcSg== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" jquery "~3.6.0" -"@abp/lodash@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-5.2.0.tgz#27f2c9c5848faceed04f0198d46cb34515e99608" - integrity sha512-5wcHMm+QtjEv/USxFu7jLNlNRiBwEnQG6zFwIKrT5V3d8dD8xq4zG86rojSexxd/0AKqyo5foMctV4IG8HC6Mg== +"@abp/lodash@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-5.2.1.tgz#87601162025a4a376e3c335d418636ef2079ad2d" + integrity sha512-ILg3X5tTH2HhJMRmg7BP/r+Kstm/nf+0aNQ2exsJoMMnKE7CC0eYQjpSgrze6GwG3a13eamyTlrz+RrlIm5IBA== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" lodash "^4.17.21" -"@abp/luxon@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-5.2.0.tgz#819b6cb5315622545bad8a84b8f3d6d63fbdf52d" - integrity sha512-VD2I/qhRYbbu5T7sUG5g01bcbw0gwAGmqUR4QI/5gmBYif8VuGHu/zTvnEn4Vhj6P5/tSWpa7blUs0EiFk/L/A== +"@abp/luxon@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-5.2.1.tgz#72a9e9bb0e7f3a688662c8e9ad52016b9cfa3a17" + integrity sha512-D3KVsba969UBYktdbCxq1JQp4kYZ1S7rIMymDJMBoHByXxwwdeXMkvuphAifBmSYTt3K6bNoZdR0VxtnNlPn2A== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" luxon "^2.3.0" -"@abp/malihu-custom-scrollbar-plugin@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-5.2.0.tgz#54ee9cf2c1049d617afebfd7b9ebae5b9225746e" - integrity sha512-CvQb/lnoxs+nEN0FuWwJyA5EgsbiSy23sYbTrM2t/KF6X3dK2m+4RMbEeG7rRYV1i6c1jfuHrjoFh3FPr9KRlA== +"@abp/malihu-custom-scrollbar-plugin@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-5.2.1.tgz#8d1b600552607e28a274775ad3bb68ac7cfbba09" + integrity sha512-5mvABMCT7tiwPl1vUK8kriN/SRi2gC4VqkEuxghT7uBQG9Cqh5jhJrl80M9ZK/oQFind3r6+SF8OlfwF8yvxHQ== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/select2@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-5.2.0.tgz#4b9418851cf52346131172c9c497173749bdd22b" - integrity sha512-t+EjuNqRIZIlu4Wk2pL+Ud/+gIFSoM3WN4U+LKGkQ1vwiVRbCUqvdj5LjGuEVrmN96lNfv3Xxut+XQoJDFjfeg== +"@abp/select2@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-5.2.1.tgz#f52a3c88da52bbfc4b135671064326aebb98b332" + integrity sha512-JH/PqOxhTY05sUyN7of6TNai0W4M3N3OF3Hlwmr8i7hNdYfFwJvQnQzKeKrk/vt8Hv44/JTQDlNKU02BmSBfOQ== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" select2 "^4.0.13" -"@abp/sweetalert2@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-5.2.0.tgz#f5625f33edcc9d56ab86cca30472637edfb52c95" - integrity sha512-8Ax00JbqfcB6nLIeeocPX7Yk4uPHsMXHMg6oLKTGV4w88h1MdazQ3YMb7E/9AXjCNoQE77cCEJ7wvV3FXC45SA== +"@abp/sweetalert2@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-5.2.1.tgz#f5ff712b4f7a4cb5a75a754aa4642f099f382e51" + integrity sha512-laaF/5WhYw+hNJRTfMzO93fVhaYqnnOcQTUlkGgsZMe2gwebyX73VI8O8Xw7zXmN1Tu/JwqRI46qiafDrPFTLg== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" sweetalert2 "^11.3.6" -"@abp/timeago@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-5.2.0.tgz#4ac58114acc00d2b2b4d2a051b98caba895c1a34" - integrity sha512-mgMP/vfdUIjjHNqssXcTMtQMQ1ZW9D9keUxvjtQyE+rXNByB+sXMf/mECEGsT9/hK/nDM+aBHxG+O7lkLI+dFA== +"@abp/timeago@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-5.2.1.tgz#a410dbf652c0f78f86384e116111aa613458b6de" + integrity sha512-xmgqKEKusB6pcqFhMaz8RTi886ad8RrRMYgMWSw4Zjk1Lr9EqQwKtcE43Ve5XWJamh2Wpk8H7IKLQKHfrV12oA== dependencies: - "@abp/jquery" "~5.2.0" + "@abp/jquery" "~5.2.1" timeago "^1.6.7" -"@abp/toastr@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-5.2.0.tgz#215af1bdc92a649ac54cb745489e00d9f0e5096b" - integrity sha512-wmoEOA6lOuTTbljsbTTfBGmJb6ur1pDi/VPuf7UF7FXoTcK/NIuzufblzTldsUleYXyIodLfg2s6qpOUGCDO8Q== +"@abp/toastr@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-5.2.1.tgz#4ed96a7967d028b8e849ff79b8a0a8a041bb20e4" + integrity sha512-HrnIzvM9LgQdzlmLmvHUVSG4PmWfx9YuozxkFTv+AGa2FAPby5W9hbQ025ry3bPkU9lGWSu/w7JSDqoiL16bPA== dependencies: - "@abp/jquery" "~5.2.0" + "@abp/jquery" "~5.2.1" toastr "^2.1.4" -"@abp/utils@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-5.2.0.tgz#3f5a7a2aab94f5c2a5e1f0f634517a4939909fa7" - integrity sha512-CBQzu8bAQQ9EUPCjjcXwLCDE/rPFGTtSRtGeMP1lrjavYEAxplXu58Fd8WeTl6d8/dqGA3nNQUnWbc2lGPlUYw== +"@abp/utils@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-5.2.1.tgz#7c2d20f1bcc8cf9f90c060ed31ed3a114a463064" + integrity sha512-9hxI24aRZCnxCP+WsOoCltSg4YqG9WtW06t9/f6hFO9B0udXIKyV+95Ndipca/R1G94Snx81ifSwAa+DHbFfvQ== dependencies: just-compare "^1.3.0" diff --git a/modules/cms-kit/angular/package.json b/modules/cms-kit/angular/package.json index f26939d1ef..a2285f9846 100644 --- a/modules/cms-kit/angular/package.json +++ b/modules/cms-kit/angular/package.json @@ -15,11 +15,11 @@ }, "private": true, "dependencies": { - "@abp/ng.account": "~5.2.0", - "@abp/ng.identity": "~5.2.0", - "@abp/ng.setting-management": "~5.2.0", - "@abp/ng.tenant-management": "~5.2.0", - "@abp/ng.theme.basic": "~5.2.0", + "@abp/ng.account": "~5.2.1", + "@abp/ng.identity": "~5.2.1", + "@abp/ng.setting-management": "~5.2.1", + "@abp/ng.tenant-management": "~5.2.1", + "@abp/ng.theme.basic": "~5.2.1", "@angular/animations": "~10.0.0", "@angular/common": "~10.0.0", "@angular/compiler": "~10.0.0", diff --git a/modules/cms-kit/angular/projects/cms-kit/package.json b/modules/cms-kit/angular/projects/cms-kit/package.json index e442008aaf..f2937c3593 100644 --- a/modules/cms-kit/angular/projects/cms-kit/package.json +++ b/modules/cms-kit/angular/projects/cms-kit/package.json @@ -4,8 +4,8 @@ "peerDependencies": { "@angular/common": "^9.1.11", "@angular/core": "^9.1.11", - "@abp/ng.core": ">=5.2.0", - "@abp/ng.theme.shared": ">=5.2.0" + "@abp/ng.core": ">=5.2.1", + "@abp/ng.theme.shared": ">=5.2.1" }, "dependencies": { "tslib": "^2.0.0" diff --git a/modules/cms-kit/host/Volo.CmsKit.IdentityServer/package.json b/modules/cms-kit/host/Volo.CmsKit.IdentityServer/package.json index 650df128bf..44e817e13e 100644 --- a/modules/cms-kit/host/Volo.CmsKit.IdentityServer/package.json +++ b/modules/cms-kit/host/Volo.CmsKit.IdentityServer/package.json @@ -3,6 +3,6 @@ "name": "my-app-identityserver", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0" + "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.1" } } \ No newline at end of file diff --git a/modules/cms-kit/host/Volo.CmsKit.IdentityServer/yarn.lock b/modules/cms-kit/host/Volo.CmsKit.IdentityServer/yarn.lock index b957aa820f..69f5c5ac40 100644 --- a/modules/cms-kit/host/Volo.CmsKit.IdentityServer/yarn.lock +++ b/modules/cms-kit/host/Volo.CmsKit.IdentityServer/yarn.lock @@ -2,37 +2,37 @@ # yarn lockfile v1 -"@abp/aspnetcore.mvc.ui.theme.basic@^5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-5.2.0.tgz#272f3ba89ee7a37bc2c5d0d1c280a47c39de4baa" - integrity sha512-9yTHmtmD7sgA0fTxFCohhMrmolfnp/5sJzPsh3USGqANjr3g9Ybv3tydP4Hwfb1Ts+dqcrITdsM0Ny/EcEt+iQ== - dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~5.2.0" - -"@abp/aspnetcore.mvc.ui.theme.shared@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-5.2.0.tgz#2a7ba6d0d2e28bb5acc77dc8e3a86535912243da" - integrity sha512-+QqRI3Yz+iwitOhfhMnomfpOoqsdh4kL6EFh9z2nI2GhLa+CtiJMAfZUOhLZTGHrBhtFk/mYu8LzYcFRzch8tw== - dependencies: - "@abp/aspnetcore.mvc.ui" "~5.2.0" - "@abp/bootstrap" "~5.2.0" - "@abp/bootstrap-datepicker" "~5.2.0" - "@abp/datatables.net-bs5" "~5.2.0" - "@abp/font-awesome" "~5.2.0" - "@abp/jquery-form" "~5.2.0" - "@abp/jquery-validation-unobtrusive" "~5.2.0" - "@abp/lodash" "~5.2.0" - "@abp/luxon" "~5.2.0" - "@abp/malihu-custom-scrollbar-plugin" "~5.2.0" - "@abp/select2" "~5.2.0" - "@abp/sweetalert2" "~5.2.0" - "@abp/timeago" "~5.2.0" - "@abp/toastr" "~5.2.0" - -"@abp/aspnetcore.mvc.ui@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-5.2.0.tgz#c590f3b56a623e9d00fa50d6a6179d4523ace2a6" - integrity sha512-UtlFa0HVwO8ezve43VEqdGazu9eQ/j4vmv4khKTPG8dEt2u9i3QVruqcIV5XnxnsQiGcZDak7QCyyH1GUFAhUg== +"@abp/aspnetcore.mvc.ui.theme.basic@^5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-5.2.1.tgz#25bd7116b9b0e72ba45f0f5246343343de8561b2" + integrity sha512-DYr9ROcTPfCRHxD1QSWqLZ9+ARbO5p9I6SRo893NtJ39aHacAa9RIAwZmP0JLG0C4hLXfJLKXJ2DpNcwY+ubXA== + dependencies: + "@abp/aspnetcore.mvc.ui.theme.shared" "~5.2.1" + +"@abp/aspnetcore.mvc.ui.theme.shared@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-5.2.1.tgz#dc291fe9c7100cc796068e19abf7579bd5e54b44" + integrity sha512-/1C5RyPIRPZT5ir8Len2EnSt1KfWcRdPyn/avAG+9JKBZ8FoUL8mO2/ffESOvikh/wItZZgxJ5VEJVGwHNjgdQ== + dependencies: + "@abp/aspnetcore.mvc.ui" "~5.2.1" + "@abp/bootstrap" "~5.2.1" + "@abp/bootstrap-datepicker" "~5.2.1" + "@abp/datatables.net-bs5" "~5.2.1" + "@abp/font-awesome" "~5.2.1" + "@abp/jquery-form" "~5.2.1" + "@abp/jquery-validation-unobtrusive" "~5.2.1" + "@abp/lodash" "~5.2.1" + "@abp/luxon" "~5.2.1" + "@abp/malihu-custom-scrollbar-plugin" "~5.2.1" + "@abp/select2" "~5.2.1" + "@abp/sweetalert2" "~5.2.1" + "@abp/timeago" "~5.2.1" + "@abp/toastr" "~5.2.1" + +"@abp/aspnetcore.mvc.ui@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-5.2.1.tgz#239ceeec332cebe2fedec0bb0cdec09089b499d3" + integrity sha512-VUSPOKjBSF+NxfwdsEVQte8u7mGP1t7jd1+ej2ND8JEKYJ1Vh7z2mfsT+lQaEJg0JWggU1AxkIMOOfHDNTU3Kg== dependencies: ansi-colors "^4.1.1" extend-object "^1.0.0" @@ -41,144 +41,144 @@ merge-stream "^2.0.0" micromatch "^4.0.2" -"@abp/bootstrap-datepicker@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-5.2.0.tgz#140892172b3d6edecc1d1e826b517e711d8ff60a" - integrity sha512-9WzC5Up7Uaahre6CCP2bzbtjhmnz3Or828kYxUlWSf7GQO2BydCJBqkWz6gjWDIzxLjQ5AeB+n9odEG3gLNNUw== +"@abp/bootstrap-datepicker@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-5.2.1.tgz#20d565211d05ca184f8e3ef4db840dbd98a58fbd" + integrity sha512-UPdVu9t7XybINSfonQN0DB9Lpz1r5vCz7F8CMpbjQprvPmsFmkAZyY0p6MS3kGO5eu5rlpGAGPBGOTeSfEp9ww== dependencies: bootstrap-datepicker "^1.9.0" -"@abp/bootstrap@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-5.2.0.tgz#16179d319b2e7a53fde6940217b3e27ce3c32714" - integrity sha512-r11Vzo7kFC8zs5DMvdqsKPG0FEYDqhFzgW4TJKa6d968apFRJ3wGjnF/kJmC1J+XzqNTtyHcwStfNmXUdL0udA== +"@abp/bootstrap@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-5.2.1.tgz#fe15144d7136a26be44be23fd2470cdef0bd28b9" + integrity sha512-vFW8OxfRhiDkIrDVIn3TyGkGyiCLLFmPMjSOmMg3o2XPdRk5uhwSBzWYpk/m+kmPpP6cEsJMxaHpCsirSlPE+A== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" bootstrap "^5.1.3" -"@abp/core@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-5.2.0.tgz#d85ab6fd677d1850261afdba240ef2b8c0d42faf" - integrity sha512-GRxfuip7E97uItAEcv87FSv5C4Tw6JLAkTbu0wAv86uhT46czPw77DZ5LhTRUlDZp4fPzJSy6OABaG1RROlo1w== +"@abp/core@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-5.2.1.tgz#9cd7f25dec0b4e654f7998f89c19f3d73169c74a" + integrity sha512-FDOhIPjig3oGxkbadJZzFSC1ZHzgQV4R75fsDNH56lQ9mTyRUPQdg0Y54eCtY7yOSjiJOctOUUWHaxoFG7frGQ== dependencies: - "@abp/utils" "~5.2.0" + "@abp/utils" "~5.2.1" -"@abp/datatables.net-bs5@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-5.2.0.tgz#9a6d5cba805a42abde2bbc3dd54ffeb67a188285" - integrity sha512-8eIvTadxffRW04qVRHh245lqX1tAfdyf5AsLqgomm7p0/ec76lNT1mRqwdS/kxD/ClrE6LmBnij1jJdaAs/0xQ== +"@abp/datatables.net-bs5@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-5.2.1.tgz#fafc65295d00d5b351404740702f7e56ff1341fe" + integrity sha512-B8lSAeMM9qOwYbDK/Dhp7BX5lFaCpao4RCPcSqgFrye8vlH8bcobmp4tMD23r24y/gRIEuQBcKzp0Lf0OUpLhA== dependencies: - "@abp/datatables.net" "~5.2.0" + "@abp/datatables.net" "~5.2.1" datatables.net-bs5 "^1.11.4" -"@abp/datatables.net@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-5.2.0.tgz#fc900b9da0625264a43530e26555cf31b06ee16c" - integrity sha512-O+DZGpvcN42yQieapaX7OdjDkBSlEQIX/iNSbext5e08Gs//cAPj7EQKiSirb6+BIvIZQchPHj2xadw0L7sQvg== +"@abp/datatables.net@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-5.2.1.tgz#397a3e7db2017c20c082598214478c277b2abec6" + integrity sha512-6Q3+W+d8e4TMAkZr/IdPDQuL1v+tjbS50ChLvrJX/BLb4fBhu1LGJWWKzKJFj721DwIsuQQiM4uq9xX/TjiS0w== dependencies: - "@abp/jquery" "~5.2.0" + "@abp/jquery" "~5.2.1" datatables.net "^1.11.4" -"@abp/font-awesome@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-5.2.0.tgz#8e0da078d307735ccac394326d06f21de85f2808" - integrity sha512-ZGiov0N35fZ92Abf+k5MqtRkAP8o54rb9iKEjUYgwtF8rnskO5o9fK8TppwXb7PlG9Znh2AUkknpeXOwa1IWtQ== +"@abp/font-awesome@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-5.2.1.tgz#357785a0366f555b72f76e2b8ee8a2d607aed6fb" + integrity sha512-9fAUdA9QeNRMjp6v8i6EOR480bjB4OzqzriFCKUu4k6VwbA6PxUsJIRFyKIt5UpC12Zqdhpkyj0iG6tE0nRekQ== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" "@fortawesome/fontawesome-free" "^5.15.4" -"@abp/jquery-form@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-5.2.0.tgz#f6dc777c736260f63875fb05c566ec14b2213b7c" - integrity sha512-xgQvgEXso3a/zMZWNxh9e0RdruCqNh75j9Lp4vHGxaWsXRtvgbCIfayDDWrn+6P28p8bYal7g51Jw6nc5jR5RA== +"@abp/jquery-form@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-5.2.1.tgz#c9cc6ad3997f7fa036d5cd8e0d15923ad7fff790" + integrity sha512-L7uKs7vReOQEETG9xIDq5aXjshbaPa+ZZQcCbn2uwY813e0ErS7Rb1mnowEt/LNEB02AtLet1B4TDVwZUl1uXQ== dependencies: - "@abp/jquery" "~5.2.0" + "@abp/jquery" "~5.2.1" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-5.2.0.tgz#8acd1346bdd2b6b1cd40017f995265fb3d19539f" - integrity sha512-z7VhlC9zi2Pf6sZ8EexUDHyBieaeO1G5ndmvJTV5wZMAigsu+H7LaAyQrTd5P42WpX1Jy3Lo2UbVCt5Gh98SXg== +"@abp/jquery-validation-unobtrusive@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-5.2.1.tgz#7fdfa3867f61f862ee575114560f79b505649093" + integrity sha512-uZ36D1FfoLdBb6h44fQ3kZuTk4gJ5yzhyOprkgMsGAJDVakX7w/W4V3ThpiEO+iUpNKTboVIhW2QQ0AXK9rrsg== dependencies: - "@abp/jquery-validation" "~5.2.0" + "@abp/jquery-validation" "~5.2.1" jquery-validation-unobtrusive "^3.2.12" -"@abp/jquery-validation@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-5.2.0.tgz#b594d6d4412b4cc56b97ba5581af559adc91d08a" - integrity sha512-AIAP3qRVI6DcF71rUy0yUXaGKVWwGtMx7Z13MMI66LhTnlS6giUb5UUQhcHJjIp4mAJoYbawiTpAnWezkoLJDQ== +"@abp/jquery-validation@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-5.2.1.tgz#e7fbaa1715af5667559e3b6f0fcb916766b28244" + integrity sha512-Rr/+SWGlXJ53jfysMB/HVNZqsJKCF3rg23ip2Kg6Q+kQTvWVRE3tpkpoBJczOii5tPUk/A/lsJKgRlcsnP0ASw== dependencies: - "@abp/jquery" "~5.2.0" + "@abp/jquery" "~5.2.1" jquery-validation "^1.19.3" -"@abp/jquery@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-5.2.0.tgz#2c924adc4a17013a7958017e985ca337c5064389" - integrity sha512-uL9Y9a31D7RLTz0VtSj0Wx9PHNrVrigPf8AUS8zMAblc8DZLEzXJ6L4nUU3xDW6+TGC/rO2x8zz1y/T6sKfzUw== +"@abp/jquery@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-5.2.1.tgz#6b88af5c22fb25d953d38847bcddcf591aeb3228" + integrity sha512-FiIRnDx/gm6JR8QljiulwCc5d8+YC123X0qxMIBI8IY9vznEX+Jk48jYG8fLABnRqKEIYfV8UsYSK8IJx3mcSg== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" jquery "~3.6.0" -"@abp/lodash@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-5.2.0.tgz#27f2c9c5848faceed04f0198d46cb34515e99608" - integrity sha512-5wcHMm+QtjEv/USxFu7jLNlNRiBwEnQG6zFwIKrT5V3d8dD8xq4zG86rojSexxd/0AKqyo5foMctV4IG8HC6Mg== +"@abp/lodash@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-5.2.1.tgz#87601162025a4a376e3c335d418636ef2079ad2d" + integrity sha512-ILg3X5tTH2HhJMRmg7BP/r+Kstm/nf+0aNQ2exsJoMMnKE7CC0eYQjpSgrze6GwG3a13eamyTlrz+RrlIm5IBA== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" lodash "^4.17.21" -"@abp/luxon@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-5.2.0.tgz#819b6cb5315622545bad8a84b8f3d6d63fbdf52d" - integrity sha512-VD2I/qhRYbbu5T7sUG5g01bcbw0gwAGmqUR4QI/5gmBYif8VuGHu/zTvnEn4Vhj6P5/tSWpa7blUs0EiFk/L/A== +"@abp/luxon@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-5.2.1.tgz#72a9e9bb0e7f3a688662c8e9ad52016b9cfa3a17" + integrity sha512-D3KVsba969UBYktdbCxq1JQp4kYZ1S7rIMymDJMBoHByXxwwdeXMkvuphAifBmSYTt3K6bNoZdR0VxtnNlPn2A== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" luxon "^2.3.0" -"@abp/malihu-custom-scrollbar-plugin@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-5.2.0.tgz#54ee9cf2c1049d617afebfd7b9ebae5b9225746e" - integrity sha512-CvQb/lnoxs+nEN0FuWwJyA5EgsbiSy23sYbTrM2t/KF6X3dK2m+4RMbEeG7rRYV1i6c1jfuHrjoFh3FPr9KRlA== +"@abp/malihu-custom-scrollbar-plugin@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-5.2.1.tgz#8d1b600552607e28a274775ad3bb68ac7cfbba09" + integrity sha512-5mvABMCT7tiwPl1vUK8kriN/SRi2gC4VqkEuxghT7uBQG9Cqh5jhJrl80M9ZK/oQFind3r6+SF8OlfwF8yvxHQ== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/select2@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-5.2.0.tgz#4b9418851cf52346131172c9c497173749bdd22b" - integrity sha512-t+EjuNqRIZIlu4Wk2pL+Ud/+gIFSoM3WN4U+LKGkQ1vwiVRbCUqvdj5LjGuEVrmN96lNfv3Xxut+XQoJDFjfeg== +"@abp/select2@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-5.2.1.tgz#f52a3c88da52bbfc4b135671064326aebb98b332" + integrity sha512-JH/PqOxhTY05sUyN7of6TNai0W4M3N3OF3Hlwmr8i7hNdYfFwJvQnQzKeKrk/vt8Hv44/JTQDlNKU02BmSBfOQ== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" select2 "^4.0.13" -"@abp/sweetalert2@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-5.2.0.tgz#f5625f33edcc9d56ab86cca30472637edfb52c95" - integrity sha512-8Ax00JbqfcB6nLIeeocPX7Yk4uPHsMXHMg6oLKTGV4w88h1MdazQ3YMb7E/9AXjCNoQE77cCEJ7wvV3FXC45SA== +"@abp/sweetalert2@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-5.2.1.tgz#f5ff712b4f7a4cb5a75a754aa4642f099f382e51" + integrity sha512-laaF/5WhYw+hNJRTfMzO93fVhaYqnnOcQTUlkGgsZMe2gwebyX73VI8O8Xw7zXmN1Tu/JwqRI46qiafDrPFTLg== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" sweetalert2 "^11.3.6" -"@abp/timeago@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-5.2.0.tgz#4ac58114acc00d2b2b4d2a051b98caba895c1a34" - integrity sha512-mgMP/vfdUIjjHNqssXcTMtQMQ1ZW9D9keUxvjtQyE+rXNByB+sXMf/mECEGsT9/hK/nDM+aBHxG+O7lkLI+dFA== +"@abp/timeago@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-5.2.1.tgz#a410dbf652c0f78f86384e116111aa613458b6de" + integrity sha512-xmgqKEKusB6pcqFhMaz8RTi886ad8RrRMYgMWSw4Zjk1Lr9EqQwKtcE43Ve5XWJamh2Wpk8H7IKLQKHfrV12oA== dependencies: - "@abp/jquery" "~5.2.0" + "@abp/jquery" "~5.2.1" timeago "^1.6.7" -"@abp/toastr@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-5.2.0.tgz#215af1bdc92a649ac54cb745489e00d9f0e5096b" - integrity sha512-wmoEOA6lOuTTbljsbTTfBGmJb6ur1pDi/VPuf7UF7FXoTcK/NIuzufblzTldsUleYXyIodLfg2s6qpOUGCDO8Q== +"@abp/toastr@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-5.2.1.tgz#4ed96a7967d028b8e849ff79b8a0a8a041bb20e4" + integrity sha512-HrnIzvM9LgQdzlmLmvHUVSG4PmWfx9YuozxkFTv+AGa2FAPby5W9hbQ025ry3bPkU9lGWSu/w7JSDqoiL16bPA== dependencies: - "@abp/jquery" "~5.2.0" + "@abp/jquery" "~5.2.1" toastr "^2.1.4" -"@abp/utils@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-5.2.0.tgz#3f5a7a2aab94f5c2a5e1f0f634517a4939909fa7" - integrity sha512-CBQzu8bAQQ9EUPCjjcXwLCDE/rPFGTtSRtGeMP1lrjavYEAxplXu58Fd8WeTl6d8/dqGA3nNQUnWbc2lGPlUYw== +"@abp/utils@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-5.2.1.tgz#7c2d20f1bcc8cf9f90c060ed31ed3a114a463064" + integrity sha512-9hxI24aRZCnxCP+WsOoCltSg4YqG9WtW06t9/f6hFO9B0udXIKyV+95Ndipca/R1G94Snx81ifSwAa+DHbFfvQ== dependencies: just-compare "^1.3.0" diff --git a/modules/cms-kit/host/Volo.CmsKit.Web.Host/package.json b/modules/cms-kit/host/Volo.CmsKit.Web.Host/package.json index cb24136b79..0448d7be40 100644 --- a/modules/cms-kit/host/Volo.CmsKit.Web.Host/package.json +++ b/modules/cms-kit/host/Volo.CmsKit.Web.Host/package.json @@ -3,6 +3,6 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0" + "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.1" } } \ No newline at end of file diff --git a/modules/cms-kit/host/Volo.CmsKit.Web.Host/yarn.lock b/modules/cms-kit/host/Volo.CmsKit.Web.Host/yarn.lock index d7c77ea532..0bd254552e 100644 --- a/modules/cms-kit/host/Volo.CmsKit.Web.Host/yarn.lock +++ b/modules/cms-kit/host/Volo.CmsKit.Web.Host/yarn.lock @@ -2,37 +2,37 @@ # yarn lockfile v1 -"@abp/aspnetcore.mvc.ui.theme.basic@^5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-5.2.0.tgz#272f3ba89ee7a37bc2c5d0d1c280a47c39de4baa" - integrity sha512-9yTHmtmD7sgA0fTxFCohhMrmolfnp/5sJzPsh3USGqANjr3g9Ybv3tydP4Hwfb1Ts+dqcrITdsM0Ny/EcEt+iQ== - dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~5.2.0" - -"@abp/aspnetcore.mvc.ui.theme.shared@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-5.2.0.tgz#2a7ba6d0d2e28bb5acc77dc8e3a86535912243da" - integrity sha512-+QqRI3Yz+iwitOhfhMnomfpOoqsdh4kL6EFh9z2nI2GhLa+CtiJMAfZUOhLZTGHrBhtFk/mYu8LzYcFRzch8tw== - dependencies: - "@abp/aspnetcore.mvc.ui" "~5.2.0" - "@abp/bootstrap" "~5.2.0" - "@abp/bootstrap-datepicker" "~5.2.0" - "@abp/datatables.net-bs5" "~5.2.0" - "@abp/font-awesome" "~5.2.0" - "@abp/jquery-form" "~5.2.0" - "@abp/jquery-validation-unobtrusive" "~5.2.0" - "@abp/lodash" "~5.2.0" - "@abp/luxon" "~5.2.0" - "@abp/malihu-custom-scrollbar-plugin" "~5.2.0" - "@abp/select2" "~5.2.0" - "@abp/sweetalert2" "~5.2.0" - "@abp/timeago" "~5.2.0" - "@abp/toastr" "~5.2.0" - -"@abp/aspnetcore.mvc.ui@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-5.2.0.tgz#c590f3b56a623e9d00fa50d6a6179d4523ace2a6" - integrity sha512-UtlFa0HVwO8ezve43VEqdGazu9eQ/j4vmv4khKTPG8dEt2u9i3QVruqcIV5XnxnsQiGcZDak7QCyyH1GUFAhUg== +"@abp/aspnetcore.mvc.ui.theme.basic@^5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-5.2.1.tgz#25bd7116b9b0e72ba45f0f5246343343de8561b2" + integrity sha512-DYr9ROcTPfCRHxD1QSWqLZ9+ARbO5p9I6SRo893NtJ39aHacAa9RIAwZmP0JLG0C4hLXfJLKXJ2DpNcwY+ubXA== + dependencies: + "@abp/aspnetcore.mvc.ui.theme.shared" "~5.2.1" + +"@abp/aspnetcore.mvc.ui.theme.shared@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-5.2.1.tgz#dc291fe9c7100cc796068e19abf7579bd5e54b44" + integrity sha512-/1C5RyPIRPZT5ir8Len2EnSt1KfWcRdPyn/avAG+9JKBZ8FoUL8mO2/ffESOvikh/wItZZgxJ5VEJVGwHNjgdQ== + dependencies: + "@abp/aspnetcore.mvc.ui" "~5.2.1" + "@abp/bootstrap" "~5.2.1" + "@abp/bootstrap-datepicker" "~5.2.1" + "@abp/datatables.net-bs5" "~5.2.1" + "@abp/font-awesome" "~5.2.1" + "@abp/jquery-form" "~5.2.1" + "@abp/jquery-validation-unobtrusive" "~5.2.1" + "@abp/lodash" "~5.2.1" + "@abp/luxon" "~5.2.1" + "@abp/malihu-custom-scrollbar-plugin" "~5.2.1" + "@abp/select2" "~5.2.1" + "@abp/sweetalert2" "~5.2.1" + "@abp/timeago" "~5.2.1" + "@abp/toastr" "~5.2.1" + +"@abp/aspnetcore.mvc.ui@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-5.2.1.tgz#239ceeec332cebe2fedec0bb0cdec09089b499d3" + integrity sha512-VUSPOKjBSF+NxfwdsEVQte8u7mGP1t7jd1+ej2ND8JEKYJ1Vh7z2mfsT+lQaEJg0JWggU1AxkIMOOfHDNTU3Kg== dependencies: ansi-colors "^4.1.1" extend-object "^1.0.0" @@ -41,144 +41,144 @@ merge-stream "^2.0.0" micromatch "^4.0.2" -"@abp/bootstrap-datepicker@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-5.2.0.tgz#140892172b3d6edecc1d1e826b517e711d8ff60a" - integrity sha512-9WzC5Up7Uaahre6CCP2bzbtjhmnz3Or828kYxUlWSf7GQO2BydCJBqkWz6gjWDIzxLjQ5AeB+n9odEG3gLNNUw== +"@abp/bootstrap-datepicker@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-5.2.1.tgz#20d565211d05ca184f8e3ef4db840dbd98a58fbd" + integrity sha512-UPdVu9t7XybINSfonQN0DB9Lpz1r5vCz7F8CMpbjQprvPmsFmkAZyY0p6MS3kGO5eu5rlpGAGPBGOTeSfEp9ww== dependencies: bootstrap-datepicker "^1.9.0" -"@abp/bootstrap@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-5.2.0.tgz#16179d319b2e7a53fde6940217b3e27ce3c32714" - integrity sha512-r11Vzo7kFC8zs5DMvdqsKPG0FEYDqhFzgW4TJKa6d968apFRJ3wGjnF/kJmC1J+XzqNTtyHcwStfNmXUdL0udA== +"@abp/bootstrap@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-5.2.1.tgz#fe15144d7136a26be44be23fd2470cdef0bd28b9" + integrity sha512-vFW8OxfRhiDkIrDVIn3TyGkGyiCLLFmPMjSOmMg3o2XPdRk5uhwSBzWYpk/m+kmPpP6cEsJMxaHpCsirSlPE+A== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" bootstrap "^5.1.3" -"@abp/core@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-5.2.0.tgz#d85ab6fd677d1850261afdba240ef2b8c0d42faf" - integrity sha512-GRxfuip7E97uItAEcv87FSv5C4Tw6JLAkTbu0wAv86uhT46czPw77DZ5LhTRUlDZp4fPzJSy6OABaG1RROlo1w== +"@abp/core@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-5.2.1.tgz#9cd7f25dec0b4e654f7998f89c19f3d73169c74a" + integrity sha512-FDOhIPjig3oGxkbadJZzFSC1ZHzgQV4R75fsDNH56lQ9mTyRUPQdg0Y54eCtY7yOSjiJOctOUUWHaxoFG7frGQ== dependencies: - "@abp/utils" "~5.2.0" + "@abp/utils" "~5.2.1" -"@abp/datatables.net-bs5@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-5.2.0.tgz#9a6d5cba805a42abde2bbc3dd54ffeb67a188285" - integrity sha512-8eIvTadxffRW04qVRHh245lqX1tAfdyf5AsLqgomm7p0/ec76lNT1mRqwdS/kxD/ClrE6LmBnij1jJdaAs/0xQ== +"@abp/datatables.net-bs5@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-5.2.1.tgz#fafc65295d00d5b351404740702f7e56ff1341fe" + integrity sha512-B8lSAeMM9qOwYbDK/Dhp7BX5lFaCpao4RCPcSqgFrye8vlH8bcobmp4tMD23r24y/gRIEuQBcKzp0Lf0OUpLhA== dependencies: - "@abp/datatables.net" "~5.2.0" + "@abp/datatables.net" "~5.2.1" datatables.net-bs5 "^1.11.4" -"@abp/datatables.net@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-5.2.0.tgz#fc900b9da0625264a43530e26555cf31b06ee16c" - integrity sha512-O+DZGpvcN42yQieapaX7OdjDkBSlEQIX/iNSbext5e08Gs//cAPj7EQKiSirb6+BIvIZQchPHj2xadw0L7sQvg== +"@abp/datatables.net@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-5.2.1.tgz#397a3e7db2017c20c082598214478c277b2abec6" + integrity sha512-6Q3+W+d8e4TMAkZr/IdPDQuL1v+tjbS50ChLvrJX/BLb4fBhu1LGJWWKzKJFj721DwIsuQQiM4uq9xX/TjiS0w== dependencies: - "@abp/jquery" "~5.2.0" + "@abp/jquery" "~5.2.1" datatables.net "^1.11.4" -"@abp/font-awesome@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-5.2.0.tgz#8e0da078d307735ccac394326d06f21de85f2808" - integrity sha512-ZGiov0N35fZ92Abf+k5MqtRkAP8o54rb9iKEjUYgwtF8rnskO5o9fK8TppwXb7PlG9Znh2AUkknpeXOwa1IWtQ== +"@abp/font-awesome@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-5.2.1.tgz#357785a0366f555b72f76e2b8ee8a2d607aed6fb" + integrity sha512-9fAUdA9QeNRMjp6v8i6EOR480bjB4OzqzriFCKUu4k6VwbA6PxUsJIRFyKIt5UpC12Zqdhpkyj0iG6tE0nRekQ== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" "@fortawesome/fontawesome-free" "^5.15.4" -"@abp/jquery-form@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-5.2.0.tgz#f6dc777c736260f63875fb05c566ec14b2213b7c" - integrity sha512-xgQvgEXso3a/zMZWNxh9e0RdruCqNh75j9Lp4vHGxaWsXRtvgbCIfayDDWrn+6P28p8bYal7g51Jw6nc5jR5RA== +"@abp/jquery-form@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-5.2.1.tgz#c9cc6ad3997f7fa036d5cd8e0d15923ad7fff790" + integrity sha512-L7uKs7vReOQEETG9xIDq5aXjshbaPa+ZZQcCbn2uwY813e0ErS7Rb1mnowEt/LNEB02AtLet1B4TDVwZUl1uXQ== dependencies: - "@abp/jquery" "~5.2.0" + "@abp/jquery" "~5.2.1" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-5.2.0.tgz#8acd1346bdd2b6b1cd40017f995265fb3d19539f" - integrity sha512-z7VhlC9zi2Pf6sZ8EexUDHyBieaeO1G5ndmvJTV5wZMAigsu+H7LaAyQrTd5P42WpX1Jy3Lo2UbVCt5Gh98SXg== +"@abp/jquery-validation-unobtrusive@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-5.2.1.tgz#7fdfa3867f61f862ee575114560f79b505649093" + integrity sha512-uZ36D1FfoLdBb6h44fQ3kZuTk4gJ5yzhyOprkgMsGAJDVakX7w/W4V3ThpiEO+iUpNKTboVIhW2QQ0AXK9rrsg== dependencies: - "@abp/jquery-validation" "~5.2.0" + "@abp/jquery-validation" "~5.2.1" jquery-validation-unobtrusive "^3.2.12" -"@abp/jquery-validation@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-5.2.0.tgz#b594d6d4412b4cc56b97ba5581af559adc91d08a" - integrity sha512-AIAP3qRVI6DcF71rUy0yUXaGKVWwGtMx7Z13MMI66LhTnlS6giUb5UUQhcHJjIp4mAJoYbawiTpAnWezkoLJDQ== +"@abp/jquery-validation@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-5.2.1.tgz#e7fbaa1715af5667559e3b6f0fcb916766b28244" + integrity sha512-Rr/+SWGlXJ53jfysMB/HVNZqsJKCF3rg23ip2Kg6Q+kQTvWVRE3tpkpoBJczOii5tPUk/A/lsJKgRlcsnP0ASw== dependencies: - "@abp/jquery" "~5.2.0" + "@abp/jquery" "~5.2.1" jquery-validation "^1.19.3" -"@abp/jquery@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-5.2.0.tgz#2c924adc4a17013a7958017e985ca337c5064389" - integrity sha512-uL9Y9a31D7RLTz0VtSj0Wx9PHNrVrigPf8AUS8zMAblc8DZLEzXJ6L4nUU3xDW6+TGC/rO2x8zz1y/T6sKfzUw== +"@abp/jquery@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-5.2.1.tgz#6b88af5c22fb25d953d38847bcddcf591aeb3228" + integrity sha512-FiIRnDx/gm6JR8QljiulwCc5d8+YC123X0qxMIBI8IY9vznEX+Jk48jYG8fLABnRqKEIYfV8UsYSK8IJx3mcSg== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" jquery "~3.6.0" -"@abp/lodash@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-5.2.0.tgz#27f2c9c5848faceed04f0198d46cb34515e99608" - integrity sha512-5wcHMm+QtjEv/USxFu7jLNlNRiBwEnQG6zFwIKrT5V3d8dD8xq4zG86rojSexxd/0AKqyo5foMctV4IG8HC6Mg== +"@abp/lodash@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-5.2.1.tgz#87601162025a4a376e3c335d418636ef2079ad2d" + integrity sha512-ILg3X5tTH2HhJMRmg7BP/r+Kstm/nf+0aNQ2exsJoMMnKE7CC0eYQjpSgrze6GwG3a13eamyTlrz+RrlIm5IBA== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" lodash "^4.17.21" -"@abp/luxon@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-5.2.0.tgz#819b6cb5315622545bad8a84b8f3d6d63fbdf52d" - integrity sha512-VD2I/qhRYbbu5T7sUG5g01bcbw0gwAGmqUR4QI/5gmBYif8VuGHu/zTvnEn4Vhj6P5/tSWpa7blUs0EiFk/L/A== +"@abp/luxon@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-5.2.1.tgz#72a9e9bb0e7f3a688662c8e9ad52016b9cfa3a17" + integrity sha512-D3KVsba969UBYktdbCxq1JQp4kYZ1S7rIMymDJMBoHByXxwwdeXMkvuphAifBmSYTt3K6bNoZdR0VxtnNlPn2A== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" luxon "^2.3.0" -"@abp/malihu-custom-scrollbar-plugin@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-5.2.0.tgz#54ee9cf2c1049d617afebfd7b9ebae5b9225746e" - integrity sha512-CvQb/lnoxs+nEN0FuWwJyA5EgsbiSy23sYbTrM2t/KF6X3dK2m+4RMbEeG7rRYV1i6c1jfuHrjoFh3FPr9KRlA== +"@abp/malihu-custom-scrollbar-plugin@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-5.2.1.tgz#8d1b600552607e28a274775ad3bb68ac7cfbba09" + integrity sha512-5mvABMCT7tiwPl1vUK8kriN/SRi2gC4VqkEuxghT7uBQG9Cqh5jhJrl80M9ZK/oQFind3r6+SF8OlfwF8yvxHQ== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/select2@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-5.2.0.tgz#4b9418851cf52346131172c9c497173749bdd22b" - integrity sha512-t+EjuNqRIZIlu4Wk2pL+Ud/+gIFSoM3WN4U+LKGkQ1vwiVRbCUqvdj5LjGuEVrmN96lNfv3Xxut+XQoJDFjfeg== +"@abp/select2@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-5.2.1.tgz#f52a3c88da52bbfc4b135671064326aebb98b332" + integrity sha512-JH/PqOxhTY05sUyN7of6TNai0W4M3N3OF3Hlwmr8i7hNdYfFwJvQnQzKeKrk/vt8Hv44/JTQDlNKU02BmSBfOQ== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" select2 "^4.0.13" -"@abp/sweetalert2@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-5.2.0.tgz#f5625f33edcc9d56ab86cca30472637edfb52c95" - integrity sha512-8Ax00JbqfcB6nLIeeocPX7Yk4uPHsMXHMg6oLKTGV4w88h1MdazQ3YMb7E/9AXjCNoQE77cCEJ7wvV3FXC45SA== +"@abp/sweetalert2@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-5.2.1.tgz#f5ff712b4f7a4cb5a75a754aa4642f099f382e51" + integrity sha512-laaF/5WhYw+hNJRTfMzO93fVhaYqnnOcQTUlkGgsZMe2gwebyX73VI8O8Xw7zXmN1Tu/JwqRI46qiafDrPFTLg== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" sweetalert2 "^11.3.6" -"@abp/timeago@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-5.2.0.tgz#4ac58114acc00d2b2b4d2a051b98caba895c1a34" - integrity sha512-mgMP/vfdUIjjHNqssXcTMtQMQ1ZW9D9keUxvjtQyE+rXNByB+sXMf/mECEGsT9/hK/nDM+aBHxG+O7lkLI+dFA== +"@abp/timeago@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-5.2.1.tgz#a410dbf652c0f78f86384e116111aa613458b6de" + integrity sha512-xmgqKEKusB6pcqFhMaz8RTi886ad8RrRMYgMWSw4Zjk1Lr9EqQwKtcE43Ve5XWJamh2Wpk8H7IKLQKHfrV12oA== dependencies: - "@abp/jquery" "~5.2.0" + "@abp/jquery" "~5.2.1" timeago "^1.6.7" -"@abp/toastr@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-5.2.0.tgz#215af1bdc92a649ac54cb745489e00d9f0e5096b" - integrity sha512-wmoEOA6lOuTTbljsbTTfBGmJb6ur1pDi/VPuf7UF7FXoTcK/NIuzufblzTldsUleYXyIodLfg2s6qpOUGCDO8Q== +"@abp/toastr@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-5.2.1.tgz#4ed96a7967d028b8e849ff79b8a0a8a041bb20e4" + integrity sha512-HrnIzvM9LgQdzlmLmvHUVSG4PmWfx9YuozxkFTv+AGa2FAPby5W9hbQ025ry3bPkU9lGWSu/w7JSDqoiL16bPA== dependencies: - "@abp/jquery" "~5.2.0" + "@abp/jquery" "~5.2.1" toastr "^2.1.4" -"@abp/utils@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-5.2.0.tgz#3f5a7a2aab94f5c2a5e1f0f634517a4939909fa7" - integrity sha512-CBQzu8bAQQ9EUPCjjcXwLCDE/rPFGTtSRtGeMP1lrjavYEAxplXu58Fd8WeTl6d8/dqGA3nNQUnWbc2lGPlUYw== +"@abp/utils@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-5.2.1.tgz#7c2d20f1bcc8cf9f90c060ed31ed3a114a463064" + integrity sha512-9hxI24aRZCnxCP+WsOoCltSg4YqG9WtW06t9/f6hFO9B0udXIKyV+95Ndipca/R1G94Snx81ifSwAa+DHbFfvQ== dependencies: just-compare "^1.3.0" diff --git a/modules/cms-kit/host/Volo.CmsKit.Web.Unified/package.json b/modules/cms-kit/host/Volo.CmsKit.Web.Unified/package.json index 7ae0db2a9f..7004bbc292 100644 --- a/modules/cms-kit/host/Volo.CmsKit.Web.Unified/package.json +++ b/modules/cms-kit/host/Volo.CmsKit.Web.Unified/package.json @@ -3,7 +3,7 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0", - "@abp/cms-kit": "5.2.0" + "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.1", + "@abp/cms-kit": "5.2.1" } } \ No newline at end of file diff --git a/modules/cms-kit/host/Volo.CmsKit.Web.Unified/yarn.lock b/modules/cms-kit/host/Volo.CmsKit.Web.Unified/yarn.lock index 1fbf4a0b4f..cedf508cc2 100644 --- a/modules/cms-kit/host/Volo.CmsKit.Web.Unified/yarn.lock +++ b/modules/cms-kit/host/Volo.CmsKit.Web.Unified/yarn.lock @@ -2,37 +2,37 @@ # yarn lockfile v1 -"@abp/aspnetcore.mvc.ui.theme.basic@^5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-5.2.0.tgz#272f3ba89ee7a37bc2c5d0d1c280a47c39de4baa" - integrity sha512-9yTHmtmD7sgA0fTxFCohhMrmolfnp/5sJzPsh3USGqANjr3g9Ybv3tydP4Hwfb1Ts+dqcrITdsM0Ny/EcEt+iQ== - dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~5.2.0" - -"@abp/aspnetcore.mvc.ui.theme.shared@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-5.2.0.tgz#2a7ba6d0d2e28bb5acc77dc8e3a86535912243da" - integrity sha512-+QqRI3Yz+iwitOhfhMnomfpOoqsdh4kL6EFh9z2nI2GhLa+CtiJMAfZUOhLZTGHrBhtFk/mYu8LzYcFRzch8tw== - dependencies: - "@abp/aspnetcore.mvc.ui" "~5.2.0" - "@abp/bootstrap" "~5.2.0" - "@abp/bootstrap-datepicker" "~5.2.0" - "@abp/datatables.net-bs5" "~5.2.0" - "@abp/font-awesome" "~5.2.0" - "@abp/jquery-form" "~5.2.0" - "@abp/jquery-validation-unobtrusive" "~5.2.0" - "@abp/lodash" "~5.2.0" - "@abp/luxon" "~5.2.0" - "@abp/malihu-custom-scrollbar-plugin" "~5.2.0" - "@abp/select2" "~5.2.0" - "@abp/sweetalert2" "~5.2.0" - "@abp/timeago" "~5.2.0" - "@abp/toastr" "~5.2.0" - -"@abp/aspnetcore.mvc.ui@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-5.2.0.tgz#c590f3b56a623e9d00fa50d6a6179d4523ace2a6" - integrity sha512-UtlFa0HVwO8ezve43VEqdGazu9eQ/j4vmv4khKTPG8dEt2u9i3QVruqcIV5XnxnsQiGcZDak7QCyyH1GUFAhUg== +"@abp/aspnetcore.mvc.ui.theme.basic@^5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-5.2.1.tgz#25bd7116b9b0e72ba45f0f5246343343de8561b2" + integrity sha512-DYr9ROcTPfCRHxD1QSWqLZ9+ARbO5p9I6SRo893NtJ39aHacAa9RIAwZmP0JLG0C4hLXfJLKXJ2DpNcwY+ubXA== + dependencies: + "@abp/aspnetcore.mvc.ui.theme.shared" "~5.2.1" + +"@abp/aspnetcore.mvc.ui.theme.shared@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-5.2.1.tgz#dc291fe9c7100cc796068e19abf7579bd5e54b44" + integrity sha512-/1C5RyPIRPZT5ir8Len2EnSt1KfWcRdPyn/avAG+9JKBZ8FoUL8mO2/ffESOvikh/wItZZgxJ5VEJVGwHNjgdQ== + dependencies: + "@abp/aspnetcore.mvc.ui" "~5.2.1" + "@abp/bootstrap" "~5.2.1" + "@abp/bootstrap-datepicker" "~5.2.1" + "@abp/datatables.net-bs5" "~5.2.1" + "@abp/font-awesome" "~5.2.1" + "@abp/jquery-form" "~5.2.1" + "@abp/jquery-validation-unobtrusive" "~5.2.1" + "@abp/lodash" "~5.2.1" + "@abp/luxon" "~5.2.1" + "@abp/malihu-custom-scrollbar-plugin" "~5.2.1" + "@abp/select2" "~5.2.1" + "@abp/sweetalert2" "~5.2.1" + "@abp/timeago" "~5.2.1" + "@abp/toastr" "~5.2.1" + +"@abp/aspnetcore.mvc.ui@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-5.2.1.tgz#239ceeec332cebe2fedec0bb0cdec09089b499d3" + integrity sha512-VUSPOKjBSF+NxfwdsEVQte8u7mGP1t7jd1+ej2ND8JEKYJ1Vh7z2mfsT+lQaEJg0JWggU1AxkIMOOfHDNTU3Kg== dependencies: ansi-colors "^4.1.1" extend-object "^1.0.0" @@ -41,234 +41,234 @@ merge-stream "^2.0.0" micromatch "^4.0.2" -"@abp/bootstrap-datepicker@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-5.2.0.tgz#140892172b3d6edecc1d1e826b517e711d8ff60a" - integrity sha512-9WzC5Up7Uaahre6CCP2bzbtjhmnz3Or828kYxUlWSf7GQO2BydCJBqkWz6gjWDIzxLjQ5AeB+n9odEG3gLNNUw== +"@abp/bootstrap-datepicker@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-5.2.1.tgz#20d565211d05ca184f8e3ef4db840dbd98a58fbd" + integrity sha512-UPdVu9t7XybINSfonQN0DB9Lpz1r5vCz7F8CMpbjQprvPmsFmkAZyY0p6MS3kGO5eu5rlpGAGPBGOTeSfEp9ww== dependencies: bootstrap-datepicker "^1.9.0" -"@abp/bootstrap@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-5.2.0.tgz#16179d319b2e7a53fde6940217b3e27ce3c32714" - integrity sha512-r11Vzo7kFC8zs5DMvdqsKPG0FEYDqhFzgW4TJKa6d968apFRJ3wGjnF/kJmC1J+XzqNTtyHcwStfNmXUdL0udA== +"@abp/bootstrap@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-5.2.1.tgz#fe15144d7136a26be44be23fd2470cdef0bd28b9" + integrity sha512-vFW8OxfRhiDkIrDVIn3TyGkGyiCLLFmPMjSOmMg3o2XPdRk5uhwSBzWYpk/m+kmPpP6cEsJMxaHpCsirSlPE+A== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" bootstrap "^5.1.3" -"@abp/clipboard@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-5.2.0.tgz#5374562edfa95c6a2a2244b4f1667625c73b7185" - integrity sha512-AFdY+7n4khi6mM86EzbclzC2S/SN5FncGCFTW873GQ2OakDzyCRhNqtoLihcvSW5YwDvofMJjAITCy5GnzelRw== +"@abp/clipboard@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-5.2.1.tgz#c6bddd279b37e9b2bd27b027d5686411c9ae942b" + integrity sha512-aouNTDz8t+8M4O2a+UsEdtABRsyhvzGpXqCG2+LYE1vA3I+CKhglkvEFp+GyIgWsipEHY1U1w6V3qZtcRINn+A== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" clipboard "^2.0.8" -"@abp/cms-kit.admin@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/cms-kit.admin/-/cms-kit.admin-5.2.0.tgz#2aae4256a1184fda377a4656112b8124e267375e" - integrity sha512-5aSwiHPJkG8xNgxMdZZ5qXsoFS2S7XMJxJbw8HE0AoQhUonDUB2mk9BilxMsIj0l0I0iGQWm5gI83ki9xFa9qA== +"@abp/cms-kit.admin@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/cms-kit.admin/-/cms-kit.admin-5.2.1.tgz#f685e8533366fa7a7db9641a61681f664af6d979" + integrity sha512-KkT3eJMR0XCzlIY3KXNId3KfN8rQmGuThTZIPo5cifGg0mpW/HdkCfI4Dmv6v2xkUnZ/o5dOf+cXkvFrt6zzfg== dependencies: - "@abp/jstree" "~5.2.0" - "@abp/slugify" "~5.2.0" - "@abp/tui-editor" "~5.2.0" - "@abp/uppy" "~5.2.0" + "@abp/jstree" "~5.2.1" + "@abp/slugify" "~5.2.1" + "@abp/tui-editor" "~5.2.1" + "@abp/uppy" "~5.2.1" -"@abp/cms-kit.public@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/cms-kit.public/-/cms-kit.public-5.2.0.tgz#796e6faf05cdcc48a9dfcf178175f8ce9bfdc92c" - integrity sha512-oj3JqWL5l1zA64WN9w7pF4v+/lFLdqejEv5LFcE1ZTbpDqdDLTzo1TohEO6AdQ9nPmHgTj79bTM24LirdCDTpg== +"@abp/cms-kit.public@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/cms-kit.public/-/cms-kit.public-5.2.1.tgz#8f4860b17470f57fce3bbd732a7954031a244d14" + integrity sha512-dOhzJjWuXO74GFUg78JRhLOJCaUXjwOHuQMbzpWHnMyrj88nEJkEtHwYs1vxf9GWvyhhES6h7ZyusxJhy+Ybww== dependencies: - "@abp/highlight.js" "~5.2.0" - "@abp/star-rating-svg" "~5.2.0" + "@abp/highlight.js" "~5.2.1" + "@abp/star-rating-svg" "~5.2.1" -"@abp/cms-kit@5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/cms-kit/-/cms-kit-5.2.0.tgz#e23af085dd329c61431134a15328ffd7ae2f7af4" - integrity sha512-XC6NcQSg43r8ti5ZvHf7S4f7ELF2x4YGF6kz4HILqktYPGmgAM067ULHwDvpi7tU3kBPHa1me3lf0ooZOZiyIg== +"@abp/cms-kit@5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/cms-kit/-/cms-kit-5.2.1.tgz#2cab9de4bb4e14ec39f8a2086b16fc38556af6bb" + integrity sha512-SuIJYj8LAdYeATYrpLxRGg7gMQ52Wq2gApriv7c7pC45mPQosi57wjEMvsI2MKAurEwQqTf7J38R3UJNRgmQbQ== dependencies: - "@abp/cms-kit.admin" "~5.2.0" - "@abp/cms-kit.public" "~5.2.0" + "@abp/cms-kit.admin" "~5.2.1" + "@abp/cms-kit.public" "~5.2.1" -"@abp/core@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-5.2.0.tgz#d85ab6fd677d1850261afdba240ef2b8c0d42faf" - integrity sha512-GRxfuip7E97uItAEcv87FSv5C4Tw6JLAkTbu0wAv86uhT46czPw77DZ5LhTRUlDZp4fPzJSy6OABaG1RROlo1w== +"@abp/core@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-5.2.1.tgz#9cd7f25dec0b4e654f7998f89c19f3d73169c74a" + integrity sha512-FDOhIPjig3oGxkbadJZzFSC1ZHzgQV4R75fsDNH56lQ9mTyRUPQdg0Y54eCtY7yOSjiJOctOUUWHaxoFG7frGQ== dependencies: - "@abp/utils" "~5.2.0" + "@abp/utils" "~5.2.1" -"@abp/datatables.net-bs5@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-5.2.0.tgz#9a6d5cba805a42abde2bbc3dd54ffeb67a188285" - integrity sha512-8eIvTadxffRW04qVRHh245lqX1tAfdyf5AsLqgomm7p0/ec76lNT1mRqwdS/kxD/ClrE6LmBnij1jJdaAs/0xQ== +"@abp/datatables.net-bs5@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-5.2.1.tgz#fafc65295d00d5b351404740702f7e56ff1341fe" + integrity sha512-B8lSAeMM9qOwYbDK/Dhp7BX5lFaCpao4RCPcSqgFrye8vlH8bcobmp4tMD23r24y/gRIEuQBcKzp0Lf0OUpLhA== dependencies: - "@abp/datatables.net" "~5.2.0" + "@abp/datatables.net" "~5.2.1" datatables.net-bs5 "^1.11.4" -"@abp/datatables.net@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-5.2.0.tgz#fc900b9da0625264a43530e26555cf31b06ee16c" - integrity sha512-O+DZGpvcN42yQieapaX7OdjDkBSlEQIX/iNSbext5e08Gs//cAPj7EQKiSirb6+BIvIZQchPHj2xadw0L7sQvg== +"@abp/datatables.net@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-5.2.1.tgz#397a3e7db2017c20c082598214478c277b2abec6" + integrity sha512-6Q3+W+d8e4TMAkZr/IdPDQuL1v+tjbS50ChLvrJX/BLb4fBhu1LGJWWKzKJFj721DwIsuQQiM4uq9xX/TjiS0w== dependencies: - "@abp/jquery" "~5.2.0" + "@abp/jquery" "~5.2.1" datatables.net "^1.11.4" -"@abp/font-awesome@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-5.2.0.tgz#8e0da078d307735ccac394326d06f21de85f2808" - integrity sha512-ZGiov0N35fZ92Abf+k5MqtRkAP8o54rb9iKEjUYgwtF8rnskO5o9fK8TppwXb7PlG9Znh2AUkknpeXOwa1IWtQ== +"@abp/font-awesome@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-5.2.1.tgz#357785a0366f555b72f76e2b8ee8a2d607aed6fb" + integrity sha512-9fAUdA9QeNRMjp6v8i6EOR480bjB4OzqzriFCKUu4k6VwbA6PxUsJIRFyKIt5UpC12Zqdhpkyj0iG6tE0nRekQ== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" "@fortawesome/fontawesome-free" "^5.15.4" -"@abp/highlight.js@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/highlight.js/-/highlight.js-5.2.0.tgz#fba18d0afe5f31ad6b6b7f7d15eb8bf5649560ac" - integrity sha512-nGi90BdTnP0lsRQZy5qgN5eiPJQcu/gDN/B9mC9+0QZTRcipHBMWEJcB1wlE+GV7TAcAbqASJvVDeKAZzylNcw== +"@abp/highlight.js@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/highlight.js/-/highlight.js-5.2.1.tgz#345e826047b2e87861d08b5ca2a9e5a313c22bda" + integrity sha512-Pi/pMWqdvdBr0E63UrhapuUtNNoY9Jt3R1Py52JQ0r90r53k5fmYOIaSwmaFlVZ8T/JApJt2D9i0Z4k8Tcn7Vg== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" "@highlightjs/cdn-assets" "~11.4.0" -"@abp/jquery-form@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-5.2.0.tgz#f6dc777c736260f63875fb05c566ec14b2213b7c" - integrity sha512-xgQvgEXso3a/zMZWNxh9e0RdruCqNh75j9Lp4vHGxaWsXRtvgbCIfayDDWrn+6P28p8bYal7g51Jw6nc5jR5RA== +"@abp/jquery-form@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-5.2.1.tgz#c9cc6ad3997f7fa036d5cd8e0d15923ad7fff790" + integrity sha512-L7uKs7vReOQEETG9xIDq5aXjshbaPa+ZZQcCbn2uwY813e0ErS7Rb1mnowEt/LNEB02AtLet1B4TDVwZUl1uXQ== dependencies: - "@abp/jquery" "~5.2.0" + "@abp/jquery" "~5.2.1" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-5.2.0.tgz#8acd1346bdd2b6b1cd40017f995265fb3d19539f" - integrity sha512-z7VhlC9zi2Pf6sZ8EexUDHyBieaeO1G5ndmvJTV5wZMAigsu+H7LaAyQrTd5P42WpX1Jy3Lo2UbVCt5Gh98SXg== +"@abp/jquery-validation-unobtrusive@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-5.2.1.tgz#7fdfa3867f61f862ee575114560f79b505649093" + integrity sha512-uZ36D1FfoLdBb6h44fQ3kZuTk4gJ5yzhyOprkgMsGAJDVakX7w/W4V3ThpiEO+iUpNKTboVIhW2QQ0AXK9rrsg== dependencies: - "@abp/jquery-validation" "~5.2.0" + "@abp/jquery-validation" "~5.2.1" jquery-validation-unobtrusive "^3.2.12" -"@abp/jquery-validation@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-5.2.0.tgz#b594d6d4412b4cc56b97ba5581af559adc91d08a" - integrity sha512-AIAP3qRVI6DcF71rUy0yUXaGKVWwGtMx7Z13MMI66LhTnlS6giUb5UUQhcHJjIp4mAJoYbawiTpAnWezkoLJDQ== +"@abp/jquery-validation@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-5.2.1.tgz#e7fbaa1715af5667559e3b6f0fcb916766b28244" + integrity sha512-Rr/+SWGlXJ53jfysMB/HVNZqsJKCF3rg23ip2Kg6Q+kQTvWVRE3tpkpoBJczOii5tPUk/A/lsJKgRlcsnP0ASw== dependencies: - "@abp/jquery" "~5.2.0" + "@abp/jquery" "~5.2.1" jquery-validation "^1.19.3" -"@abp/jquery@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-5.2.0.tgz#2c924adc4a17013a7958017e985ca337c5064389" - integrity sha512-uL9Y9a31D7RLTz0VtSj0Wx9PHNrVrigPf8AUS8zMAblc8DZLEzXJ6L4nUU3xDW6+TGC/rO2x8zz1y/T6sKfzUw== +"@abp/jquery@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-5.2.1.tgz#6b88af5c22fb25d953d38847bcddcf591aeb3228" + integrity sha512-FiIRnDx/gm6JR8QljiulwCc5d8+YC123X0qxMIBI8IY9vznEX+Jk48jYG8fLABnRqKEIYfV8UsYSK8IJx3mcSg== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" jquery "~3.6.0" -"@abp/jstree@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/jstree/-/jstree-5.2.0.tgz#1a6909a0d8de59e3155e68086f8d1600f49852fe" - integrity sha512-56Wq56jbGQDM9tjKWVMD82UrM74frpl8kiQSjRIxlDxGS+T6V+EKax3irN1vN/el2hG3JTGkB/8mjiRLFaCIjg== +"@abp/jstree@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/jstree/-/jstree-5.2.1.tgz#27f8c80053fbd7f5b242cc144b3ebdc33a668b9d" + integrity sha512-KYcdkjm33OEOBH/HHgOvIoVX8Bg/KlTJ4muyWYzPK0JK8T61rjrAw8cnlvMl5fqnuzdUUWFgfpuZq7HhgU30NQ== dependencies: - "@abp/jquery" "~5.2.0" + "@abp/jquery" "~5.2.1" jstree "^3.3.12" -"@abp/lodash@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-5.2.0.tgz#27f2c9c5848faceed04f0198d46cb34515e99608" - integrity sha512-5wcHMm+QtjEv/USxFu7jLNlNRiBwEnQG6zFwIKrT5V3d8dD8xq4zG86rojSexxd/0AKqyo5foMctV4IG8HC6Mg== +"@abp/lodash@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-5.2.1.tgz#87601162025a4a376e3c335d418636ef2079ad2d" + integrity sha512-ILg3X5tTH2HhJMRmg7BP/r+Kstm/nf+0aNQ2exsJoMMnKE7CC0eYQjpSgrze6GwG3a13eamyTlrz+RrlIm5IBA== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" lodash "^4.17.21" -"@abp/luxon@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-5.2.0.tgz#819b6cb5315622545bad8a84b8f3d6d63fbdf52d" - integrity sha512-VD2I/qhRYbbu5T7sUG5g01bcbw0gwAGmqUR4QI/5gmBYif8VuGHu/zTvnEn4Vhj6P5/tSWpa7blUs0EiFk/L/A== +"@abp/luxon@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-5.2.1.tgz#72a9e9bb0e7f3a688662c8e9ad52016b9cfa3a17" + integrity sha512-D3KVsba969UBYktdbCxq1JQp4kYZ1S7rIMymDJMBoHByXxwwdeXMkvuphAifBmSYTt3K6bNoZdR0VxtnNlPn2A== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" luxon "^2.3.0" -"@abp/malihu-custom-scrollbar-plugin@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-5.2.0.tgz#54ee9cf2c1049d617afebfd7b9ebae5b9225746e" - integrity sha512-CvQb/lnoxs+nEN0FuWwJyA5EgsbiSy23sYbTrM2t/KF6X3dK2m+4RMbEeG7rRYV1i6c1jfuHrjoFh3FPr9KRlA== +"@abp/malihu-custom-scrollbar-plugin@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-5.2.1.tgz#8d1b600552607e28a274775ad3bb68ac7cfbba09" + integrity sha512-5mvABMCT7tiwPl1vUK8kriN/SRi2gC4VqkEuxghT7uBQG9Cqh5jhJrl80M9ZK/oQFind3r6+SF8OlfwF8yvxHQ== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/prismjs@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-5.2.0.tgz#c33ee1178a3916a6a1eac54ec4bdc78ca0dc42c7" - integrity sha512-jVFm7d80u5cIuygQViotDEQNpe2nGxEPQmZNzEV1jM4myMAMN1PZHFhoFxb3FAbH2q0wlZ5lcXjQs5cTz8V8Mw== +"@abp/prismjs@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-5.2.1.tgz#86aae6ee4529401da75744f1e43c7cd3c0b494a0" + integrity sha512-YNgcM7Kvmu3hGXJh4B8gl7rLzC28VuZYYP7AVptVSbTz/n6usCo21evG/st8L3vXixuQkvnNpBFgacJnHdSJZQ== dependencies: - "@abp/clipboard" "~5.2.0" - "@abp/core" "~5.2.0" + "@abp/clipboard" "~5.2.1" + "@abp/core" "~5.2.1" prismjs "^1.26.0" -"@abp/select2@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-5.2.0.tgz#4b9418851cf52346131172c9c497173749bdd22b" - integrity sha512-t+EjuNqRIZIlu4Wk2pL+Ud/+gIFSoM3WN4U+LKGkQ1vwiVRbCUqvdj5LjGuEVrmN96lNfv3Xxut+XQoJDFjfeg== +"@abp/select2@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-5.2.1.tgz#f52a3c88da52bbfc4b135671064326aebb98b332" + integrity sha512-JH/PqOxhTY05sUyN7of6TNai0W4M3N3OF3Hlwmr8i7hNdYfFwJvQnQzKeKrk/vt8Hv44/JTQDlNKU02BmSBfOQ== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" select2 "^4.0.13" -"@abp/slugify@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/slugify/-/slugify-5.2.0.tgz#c570c7d47634630834c8a3c315f8d6ba66110bd3" - integrity sha512-Io2M9CSq2CoobJJJMOGBjBR/oo4wFap0a0A/SenbBkthCQE3wksO+uyiBHONb9z+aFL+pwp/LwL5luglpenlbw== +"@abp/slugify@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/slugify/-/slugify-5.2.1.tgz#97c8b54fcfc271e7fb2f1697fafa3dff30ba6891" + integrity sha512-e/QxzbeOJYgKdYJQSCeP7QnnraLEafxB/AAzQDDJH2hKid9lNDeUxjggw/xCSiiRCG9Qz8OYuei6bNaYDHcxbQ== dependencies: slugify "^1.6.5" -"@abp/star-rating-svg@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/star-rating-svg/-/star-rating-svg-5.2.0.tgz#9360e90b0c7dcc3fbf440c4c4aaed7f5d43d7565" - integrity sha512-/WdmjgzQ/sDD/5ap2QD15GgsRzOlkpqMSq5FzhvkF0D0mMIQS9PL+X6ZL2rJ2IElC5cQxZCO8oyVok7Rt5yFUw== +"@abp/star-rating-svg@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/star-rating-svg/-/star-rating-svg-5.2.1.tgz#f8cd6a965079acfa3633731eacf653e142886c1e" + integrity sha512-QofOzA0kjpXEm80tkxBptKYTUZa4uolHRy4KNTzDFdcf8TyC6hT8I6kmUS9ym7F3HKLjLhDWfRsd1kKaDwxzQw== dependencies: - "@abp/jquery" "~5.2.0" + "@abp/jquery" "~5.2.1" star-rating-svg "^3.5.0" -"@abp/sweetalert2@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-5.2.0.tgz#f5625f33edcc9d56ab86cca30472637edfb52c95" - integrity sha512-8Ax00JbqfcB6nLIeeocPX7Yk4uPHsMXHMg6oLKTGV4w88h1MdazQ3YMb7E/9AXjCNoQE77cCEJ7wvV3FXC45SA== +"@abp/sweetalert2@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-5.2.1.tgz#f5ff712b4f7a4cb5a75a754aa4642f099f382e51" + integrity sha512-laaF/5WhYw+hNJRTfMzO93fVhaYqnnOcQTUlkGgsZMe2gwebyX73VI8O8Xw7zXmN1Tu/JwqRI46qiafDrPFTLg== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" sweetalert2 "^11.3.6" -"@abp/timeago@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-5.2.0.tgz#4ac58114acc00d2b2b4d2a051b98caba895c1a34" - integrity sha512-mgMP/vfdUIjjHNqssXcTMtQMQ1ZW9D9keUxvjtQyE+rXNByB+sXMf/mECEGsT9/hK/nDM+aBHxG+O7lkLI+dFA== +"@abp/timeago@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-5.2.1.tgz#a410dbf652c0f78f86384e116111aa613458b6de" + integrity sha512-xmgqKEKusB6pcqFhMaz8RTi886ad8RrRMYgMWSw4Zjk1Lr9EqQwKtcE43Ve5XWJamh2Wpk8H7IKLQKHfrV12oA== dependencies: - "@abp/jquery" "~5.2.0" + "@abp/jquery" "~5.2.1" timeago "^1.6.7" -"@abp/toastr@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-5.2.0.tgz#215af1bdc92a649ac54cb745489e00d9f0e5096b" - integrity sha512-wmoEOA6lOuTTbljsbTTfBGmJb6ur1pDi/VPuf7UF7FXoTcK/NIuzufblzTldsUleYXyIodLfg2s6qpOUGCDO8Q== +"@abp/toastr@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-5.2.1.tgz#4ed96a7967d028b8e849ff79b8a0a8a041bb20e4" + integrity sha512-HrnIzvM9LgQdzlmLmvHUVSG4PmWfx9YuozxkFTv+AGa2FAPby5W9hbQ025ry3bPkU9lGWSu/w7JSDqoiL16bPA== dependencies: - "@abp/jquery" "~5.2.0" + "@abp/jquery" "~5.2.1" toastr "^2.1.4" -"@abp/tui-editor@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/tui-editor/-/tui-editor-5.2.0.tgz#a1d9f110d39e57eec9a0e6786e2ce6d86c4d0ab1" - integrity sha512-HndRgYDH6yXmU8AXIf/pEOfhKk6R3cs/E0vC+NqmIbpIT6AN36RYnFsvcjs1NWUv7EuZM3ZCEm+9Ce6MKArEhQ== +"@abp/tui-editor@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/tui-editor/-/tui-editor-5.2.1.tgz#06be1a029de754868fa11ce3479be3fbc90ba103" + integrity sha512-Mi3preBkGEU1hrtSNCkOjeXPc9c74DFt8BL82sPIVDglYcVrVLXbnNTWE/CHP0spmKWh33ek4FoH1Pt0TePMuw== dependencies: - "@abp/jquery" "~5.2.0" - "@abp/prismjs" "~5.2.0" + "@abp/jquery" "~5.2.1" + "@abp/prismjs" "~5.2.1" -"@abp/uppy@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/uppy/-/uppy-5.2.0.tgz#bc63ba5229a9cbeeb51ef818a8a51d878c6c2556" - integrity sha512-mIuoJ1pq7xbWpQSxBpiKV7rspchlDBMXeGozXnYWfsQumUzQjiKLO4hQhpy+Bhq5ctov2LMMFV6w/YZr5rRZfQ== +"@abp/uppy@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/uppy/-/uppy-5.2.1.tgz#560bbb363a0b0b493cc2f1c20f4f7b51e95cb331" + integrity sha512-cLqeGHrfwuOgPKjIBTq7H/l3P494sEgmrdH3UW9wVIjD5OAIbK/2AeZ2xTIIg0Mn+ALm+rqfsw0+qBoBug1WHQ== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" uppy "^1.16.1" -"@abp/utils@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-5.2.0.tgz#3f5a7a2aab94f5c2a5e1f0f634517a4939909fa7" - integrity sha512-CBQzu8bAQQ9EUPCjjcXwLCDE/rPFGTtSRtGeMP1lrjavYEAxplXu58Fd8WeTl6d8/dqGA3nNQUnWbc2lGPlUYw== +"@abp/utils@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-5.2.1.tgz#7c2d20f1bcc8cf9f90c060ed31ed3a114a463064" + integrity sha512-9hxI24aRZCnxCP+WsOoCltSg4YqG9WtW06t9/f6hFO9B0udXIKyV+95Ndipca/R1G94Snx81ifSwAa+DHbFfvQ== dependencies: just-compare "^1.3.0" diff --git a/modules/docs/app/VoloDocs.Web/package.json b/modules/docs/app/VoloDocs.Web/package.json index 9dc2c9d7ab..2ec4d524e2 100644 --- a/modules/docs/app/VoloDocs.Web/package.json +++ b/modules/docs/app/VoloDocs.Web/package.json @@ -3,7 +3,7 @@ "name": "volo.docstestapp", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0", - "@abp/docs": "^5.2.0" + "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.1", + "@abp/docs": "^5.2.1" } } diff --git a/modules/docs/app/VoloDocs.Web/yarn.lock b/modules/docs/app/VoloDocs.Web/yarn.lock index 0f74336ad2..802094ec7c 100644 --- a/modules/docs/app/VoloDocs.Web/yarn.lock +++ b/modules/docs/app/VoloDocs.Web/yarn.lock @@ -2,45 +2,45 @@ # yarn lockfile v1 -"@abp/anchor-js@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/anchor-js/-/anchor-js-5.2.0.tgz#697a7aa5e3c2d923c3506cab13806dcd92172de6" - integrity sha512-J6YJf+9wNVJYusMFO3axubOfiJnDVdlfzWIxNO/+WDV949CIM/Sx7RJM+2xcbI+o4VKcDB1DNkbuGmpfz7s58Q== +"@abp/anchor-js@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/anchor-js/-/anchor-js-5.2.1.tgz#701e01a9637800429cf3f0364e62b8351c3a0354" + integrity sha512-61+rrfSQyZacqUJ5qQxkoWYffWcd7AArkj8DmEHmFY4e28hH3P9eXMcuGBoJ85pXleAPEmVYswc/xZiTMNHkvg== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" anchor-js "^4.3.1" -"@abp/aspnetcore.mvc.ui.theme.basic@^5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-5.2.0.tgz#272f3ba89ee7a37bc2c5d0d1c280a47c39de4baa" - integrity sha512-9yTHmtmD7sgA0fTxFCohhMrmolfnp/5sJzPsh3USGqANjr3g9Ybv3tydP4Hwfb1Ts+dqcrITdsM0Ny/EcEt+iQ== - dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~5.2.0" - -"@abp/aspnetcore.mvc.ui.theme.shared@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-5.2.0.tgz#2a7ba6d0d2e28bb5acc77dc8e3a86535912243da" - integrity sha512-+QqRI3Yz+iwitOhfhMnomfpOoqsdh4kL6EFh9z2nI2GhLa+CtiJMAfZUOhLZTGHrBhtFk/mYu8LzYcFRzch8tw== - dependencies: - "@abp/aspnetcore.mvc.ui" "~5.2.0" - "@abp/bootstrap" "~5.2.0" - "@abp/bootstrap-datepicker" "~5.2.0" - "@abp/datatables.net-bs5" "~5.2.0" - "@abp/font-awesome" "~5.2.0" - "@abp/jquery-form" "~5.2.0" - "@abp/jquery-validation-unobtrusive" "~5.2.0" - "@abp/lodash" "~5.2.0" - "@abp/luxon" "~5.2.0" - "@abp/malihu-custom-scrollbar-plugin" "~5.2.0" - "@abp/select2" "~5.2.0" - "@abp/sweetalert2" "~5.2.0" - "@abp/timeago" "~5.2.0" - "@abp/toastr" "~5.2.0" - -"@abp/aspnetcore.mvc.ui@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-5.2.0.tgz#c590f3b56a623e9d00fa50d6a6179d4523ace2a6" - integrity sha512-UtlFa0HVwO8ezve43VEqdGazu9eQ/j4vmv4khKTPG8dEt2u9i3QVruqcIV5XnxnsQiGcZDak7QCyyH1GUFAhUg== +"@abp/aspnetcore.mvc.ui.theme.basic@^5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-5.2.1.tgz#25bd7116b9b0e72ba45f0f5246343343de8561b2" + integrity sha512-DYr9ROcTPfCRHxD1QSWqLZ9+ARbO5p9I6SRo893NtJ39aHacAa9RIAwZmP0JLG0C4hLXfJLKXJ2DpNcwY+ubXA== + dependencies: + "@abp/aspnetcore.mvc.ui.theme.shared" "~5.2.1" + +"@abp/aspnetcore.mvc.ui.theme.shared@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-5.2.1.tgz#dc291fe9c7100cc796068e19abf7579bd5e54b44" + integrity sha512-/1C5RyPIRPZT5ir8Len2EnSt1KfWcRdPyn/avAG+9JKBZ8FoUL8mO2/ffESOvikh/wItZZgxJ5VEJVGwHNjgdQ== + dependencies: + "@abp/aspnetcore.mvc.ui" "~5.2.1" + "@abp/bootstrap" "~5.2.1" + "@abp/bootstrap-datepicker" "~5.2.1" + "@abp/datatables.net-bs5" "~5.2.1" + "@abp/font-awesome" "~5.2.1" + "@abp/jquery-form" "~5.2.1" + "@abp/jquery-validation-unobtrusive" "~5.2.1" + "@abp/lodash" "~5.2.1" + "@abp/luxon" "~5.2.1" + "@abp/malihu-custom-scrollbar-plugin" "~5.2.1" + "@abp/select2" "~5.2.1" + "@abp/sweetalert2" "~5.2.1" + "@abp/timeago" "~5.2.1" + "@abp/toastr" "~5.2.1" + +"@abp/aspnetcore.mvc.ui@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-5.2.1.tgz#239ceeec332cebe2fedec0bb0cdec09089b499d3" + integrity sha512-VUSPOKjBSF+NxfwdsEVQte8u7mGP1t7jd1+ej2ND8JEKYJ1Vh7z2mfsT+lQaEJg0JWggU1AxkIMOOfHDNTU3Kg== dependencies: ansi-colors "^4.1.1" extend-object "^1.0.0" @@ -49,180 +49,180 @@ merge-stream "^2.0.0" micromatch "^4.0.2" -"@abp/bootstrap-datepicker@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-5.2.0.tgz#140892172b3d6edecc1d1e826b517e711d8ff60a" - integrity sha512-9WzC5Up7Uaahre6CCP2bzbtjhmnz3Or828kYxUlWSf7GQO2BydCJBqkWz6gjWDIzxLjQ5AeB+n9odEG3gLNNUw== +"@abp/bootstrap-datepicker@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-5.2.1.tgz#20d565211d05ca184f8e3ef4db840dbd98a58fbd" + integrity sha512-UPdVu9t7XybINSfonQN0DB9Lpz1r5vCz7F8CMpbjQprvPmsFmkAZyY0p6MS3kGO5eu5rlpGAGPBGOTeSfEp9ww== dependencies: bootstrap-datepicker "^1.9.0" -"@abp/bootstrap@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-5.2.0.tgz#16179d319b2e7a53fde6940217b3e27ce3c32714" - integrity sha512-r11Vzo7kFC8zs5DMvdqsKPG0FEYDqhFzgW4TJKa6d968apFRJ3wGjnF/kJmC1J+XzqNTtyHcwStfNmXUdL0udA== +"@abp/bootstrap@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-5.2.1.tgz#fe15144d7136a26be44be23fd2470cdef0bd28b9" + integrity sha512-vFW8OxfRhiDkIrDVIn3TyGkGyiCLLFmPMjSOmMg3o2XPdRk5uhwSBzWYpk/m+kmPpP6cEsJMxaHpCsirSlPE+A== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" bootstrap "^5.1.3" -"@abp/clipboard@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-5.2.0.tgz#5374562edfa95c6a2a2244b4f1667625c73b7185" - integrity sha512-AFdY+7n4khi6mM86EzbclzC2S/SN5FncGCFTW873GQ2OakDzyCRhNqtoLihcvSW5YwDvofMJjAITCy5GnzelRw== +"@abp/clipboard@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-5.2.1.tgz#c6bddd279b37e9b2bd27b027d5686411c9ae942b" + integrity sha512-aouNTDz8t+8M4O2a+UsEdtABRsyhvzGpXqCG2+LYE1vA3I+CKhglkvEFp+GyIgWsipEHY1U1w6V3qZtcRINn+A== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" clipboard "^2.0.8" -"@abp/core@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-5.2.0.tgz#d85ab6fd677d1850261afdba240ef2b8c0d42faf" - integrity sha512-GRxfuip7E97uItAEcv87FSv5C4Tw6JLAkTbu0wAv86uhT46czPw77DZ5LhTRUlDZp4fPzJSy6OABaG1RROlo1w== +"@abp/core@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-5.2.1.tgz#9cd7f25dec0b4e654f7998f89c19f3d73169c74a" + integrity sha512-FDOhIPjig3oGxkbadJZzFSC1ZHzgQV4R75fsDNH56lQ9mTyRUPQdg0Y54eCtY7yOSjiJOctOUUWHaxoFG7frGQ== dependencies: - "@abp/utils" "~5.2.0" + "@abp/utils" "~5.2.1" -"@abp/datatables.net-bs5@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-5.2.0.tgz#9a6d5cba805a42abde2bbc3dd54ffeb67a188285" - integrity sha512-8eIvTadxffRW04qVRHh245lqX1tAfdyf5AsLqgomm7p0/ec76lNT1mRqwdS/kxD/ClrE6LmBnij1jJdaAs/0xQ== +"@abp/datatables.net-bs5@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-5.2.1.tgz#fafc65295d00d5b351404740702f7e56ff1341fe" + integrity sha512-B8lSAeMM9qOwYbDK/Dhp7BX5lFaCpao4RCPcSqgFrye8vlH8bcobmp4tMD23r24y/gRIEuQBcKzp0Lf0OUpLhA== dependencies: - "@abp/datatables.net" "~5.2.0" + "@abp/datatables.net" "~5.2.1" datatables.net-bs5 "^1.11.4" -"@abp/datatables.net@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-5.2.0.tgz#fc900b9da0625264a43530e26555cf31b06ee16c" - integrity sha512-O+DZGpvcN42yQieapaX7OdjDkBSlEQIX/iNSbext5e08Gs//cAPj7EQKiSirb6+BIvIZQchPHj2xadw0L7sQvg== +"@abp/datatables.net@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-5.2.1.tgz#397a3e7db2017c20c082598214478c277b2abec6" + integrity sha512-6Q3+W+d8e4TMAkZr/IdPDQuL1v+tjbS50ChLvrJX/BLb4fBhu1LGJWWKzKJFj721DwIsuQQiM4uq9xX/TjiS0w== dependencies: - "@abp/jquery" "~5.2.0" + "@abp/jquery" "~5.2.1" datatables.net "^1.11.4" -"@abp/docs@^5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/docs/-/docs-5.2.0.tgz#31934a9413bd26076489c2e770e7c00b5d685bf6" - integrity sha512-/VU8pql4F9PseMqRUpsSP0w5z4LIWYC5Bt1kFeHJnCBS5wX7oxknr/Z9++s3f3neHqTJxSZJuCUmkOKACaF7pg== +"@abp/docs@^5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/docs/-/docs-5.2.1.tgz#111952a2da8e6e1ac20ed8eaa8a15854b2c92f7b" + integrity sha512-WZCCY73vyIpRu7hypPiP9CRr4Bvzkv3up0WeGQ4rK9LiZWNSxG9PXv4lYeD4cuHg0zgxH9d/6toYToaIJNqDCQ== dependencies: - "@abp/anchor-js" "~5.2.0" - "@abp/clipboard" "~5.2.0" - "@abp/malihu-custom-scrollbar-plugin" "~5.2.0" - "@abp/popper.js" "~5.2.0" - "@abp/prismjs" "~5.2.0" + "@abp/anchor-js" "~5.2.1" + "@abp/clipboard" "~5.2.1" + "@abp/malihu-custom-scrollbar-plugin" "~5.2.1" + "@abp/popper.js" "~5.2.1" + "@abp/prismjs" "~5.2.1" -"@abp/font-awesome@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-5.2.0.tgz#8e0da078d307735ccac394326d06f21de85f2808" - integrity sha512-ZGiov0N35fZ92Abf+k5MqtRkAP8o54rb9iKEjUYgwtF8rnskO5o9fK8TppwXb7PlG9Znh2AUkknpeXOwa1IWtQ== +"@abp/font-awesome@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-5.2.1.tgz#357785a0366f555b72f76e2b8ee8a2d607aed6fb" + integrity sha512-9fAUdA9QeNRMjp6v8i6EOR480bjB4OzqzriFCKUu4k6VwbA6PxUsJIRFyKIt5UpC12Zqdhpkyj0iG6tE0nRekQ== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" "@fortawesome/fontawesome-free" "^5.15.4" -"@abp/jquery-form@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-5.2.0.tgz#f6dc777c736260f63875fb05c566ec14b2213b7c" - integrity sha512-xgQvgEXso3a/zMZWNxh9e0RdruCqNh75j9Lp4vHGxaWsXRtvgbCIfayDDWrn+6P28p8bYal7g51Jw6nc5jR5RA== +"@abp/jquery-form@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-5.2.1.tgz#c9cc6ad3997f7fa036d5cd8e0d15923ad7fff790" + integrity sha512-L7uKs7vReOQEETG9xIDq5aXjshbaPa+ZZQcCbn2uwY813e0ErS7Rb1mnowEt/LNEB02AtLet1B4TDVwZUl1uXQ== dependencies: - "@abp/jquery" "~5.2.0" + "@abp/jquery" "~5.2.1" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-5.2.0.tgz#8acd1346bdd2b6b1cd40017f995265fb3d19539f" - integrity sha512-z7VhlC9zi2Pf6sZ8EexUDHyBieaeO1G5ndmvJTV5wZMAigsu+H7LaAyQrTd5P42WpX1Jy3Lo2UbVCt5Gh98SXg== +"@abp/jquery-validation-unobtrusive@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-5.2.1.tgz#7fdfa3867f61f862ee575114560f79b505649093" + integrity sha512-uZ36D1FfoLdBb6h44fQ3kZuTk4gJ5yzhyOprkgMsGAJDVakX7w/W4V3ThpiEO+iUpNKTboVIhW2QQ0AXK9rrsg== dependencies: - "@abp/jquery-validation" "~5.2.0" + "@abp/jquery-validation" "~5.2.1" jquery-validation-unobtrusive "^3.2.12" -"@abp/jquery-validation@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-5.2.0.tgz#b594d6d4412b4cc56b97ba5581af559adc91d08a" - integrity sha512-AIAP3qRVI6DcF71rUy0yUXaGKVWwGtMx7Z13MMI66LhTnlS6giUb5UUQhcHJjIp4mAJoYbawiTpAnWezkoLJDQ== +"@abp/jquery-validation@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-5.2.1.tgz#e7fbaa1715af5667559e3b6f0fcb916766b28244" + integrity sha512-Rr/+SWGlXJ53jfysMB/HVNZqsJKCF3rg23ip2Kg6Q+kQTvWVRE3tpkpoBJczOii5tPUk/A/lsJKgRlcsnP0ASw== dependencies: - "@abp/jquery" "~5.2.0" + "@abp/jquery" "~5.2.1" jquery-validation "^1.19.3" -"@abp/jquery@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-5.2.0.tgz#2c924adc4a17013a7958017e985ca337c5064389" - integrity sha512-uL9Y9a31D7RLTz0VtSj0Wx9PHNrVrigPf8AUS8zMAblc8DZLEzXJ6L4nUU3xDW6+TGC/rO2x8zz1y/T6sKfzUw== +"@abp/jquery@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-5.2.1.tgz#6b88af5c22fb25d953d38847bcddcf591aeb3228" + integrity sha512-FiIRnDx/gm6JR8QljiulwCc5d8+YC123X0qxMIBI8IY9vznEX+Jk48jYG8fLABnRqKEIYfV8UsYSK8IJx3mcSg== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" jquery "~3.6.0" -"@abp/lodash@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-5.2.0.tgz#27f2c9c5848faceed04f0198d46cb34515e99608" - integrity sha512-5wcHMm+QtjEv/USxFu7jLNlNRiBwEnQG6zFwIKrT5V3d8dD8xq4zG86rojSexxd/0AKqyo5foMctV4IG8HC6Mg== +"@abp/lodash@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-5.2.1.tgz#87601162025a4a376e3c335d418636ef2079ad2d" + integrity sha512-ILg3X5tTH2HhJMRmg7BP/r+Kstm/nf+0aNQ2exsJoMMnKE7CC0eYQjpSgrze6GwG3a13eamyTlrz+RrlIm5IBA== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" lodash "^4.17.21" -"@abp/luxon@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-5.2.0.tgz#819b6cb5315622545bad8a84b8f3d6d63fbdf52d" - integrity sha512-VD2I/qhRYbbu5T7sUG5g01bcbw0gwAGmqUR4QI/5gmBYif8VuGHu/zTvnEn4Vhj6P5/tSWpa7blUs0EiFk/L/A== +"@abp/luxon@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-5.2.1.tgz#72a9e9bb0e7f3a688662c8e9ad52016b9cfa3a17" + integrity sha512-D3KVsba969UBYktdbCxq1JQp4kYZ1S7rIMymDJMBoHByXxwwdeXMkvuphAifBmSYTt3K6bNoZdR0VxtnNlPn2A== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" luxon "^2.3.0" -"@abp/malihu-custom-scrollbar-plugin@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-5.2.0.tgz#54ee9cf2c1049d617afebfd7b9ebae5b9225746e" - integrity sha512-CvQb/lnoxs+nEN0FuWwJyA5EgsbiSy23sYbTrM2t/KF6X3dK2m+4RMbEeG7rRYV1i6c1jfuHrjoFh3FPr9KRlA== +"@abp/malihu-custom-scrollbar-plugin@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-5.2.1.tgz#8d1b600552607e28a274775ad3bb68ac7cfbba09" + integrity sha512-5mvABMCT7tiwPl1vUK8kriN/SRi2gC4VqkEuxghT7uBQG9Cqh5jhJrl80M9ZK/oQFind3r6+SF8OlfwF8yvxHQ== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/popper.js@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/popper.js/-/popper.js-5.2.0.tgz#4ab9a82f7b3e7049142d460d6dc00cb18b805e78" - integrity sha512-K8HB12gU61A9a5k/ztz+s0iESqvSd/Br5+HgFE+kiC4G/YBVesHGpamgvb0jbiIJX8UUzSzbjYaUc9xoz+K3SQ== +"@abp/popper.js@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/popper.js/-/popper.js-5.2.1.tgz#441a5be6889915fc09fe5d5e3c4b419d65a7b3bd" + integrity sha512-poQhd5EYjU2/udJWlDEd5mIPWmw6AzNOzAd5V4OUHMai+BHeuhIXQ6mopvxf9lpzytGoFe2ZIiQ547Wfq4Fl/Q== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" "@popperjs/core" "^2.11.2" -"@abp/prismjs@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-5.2.0.tgz#c33ee1178a3916a6a1eac54ec4bdc78ca0dc42c7" - integrity sha512-jVFm7d80u5cIuygQViotDEQNpe2nGxEPQmZNzEV1jM4myMAMN1PZHFhoFxb3FAbH2q0wlZ5lcXjQs5cTz8V8Mw== +"@abp/prismjs@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-5.2.1.tgz#86aae6ee4529401da75744f1e43c7cd3c0b494a0" + integrity sha512-YNgcM7Kvmu3hGXJh4B8gl7rLzC28VuZYYP7AVptVSbTz/n6usCo21evG/st8L3vXixuQkvnNpBFgacJnHdSJZQ== dependencies: - "@abp/clipboard" "~5.2.0" - "@abp/core" "~5.2.0" + "@abp/clipboard" "~5.2.1" + "@abp/core" "~5.2.1" prismjs "^1.26.0" -"@abp/select2@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-5.2.0.tgz#4b9418851cf52346131172c9c497173749bdd22b" - integrity sha512-t+EjuNqRIZIlu4Wk2pL+Ud/+gIFSoM3WN4U+LKGkQ1vwiVRbCUqvdj5LjGuEVrmN96lNfv3Xxut+XQoJDFjfeg== +"@abp/select2@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-5.2.1.tgz#f52a3c88da52bbfc4b135671064326aebb98b332" + integrity sha512-JH/PqOxhTY05sUyN7of6TNai0W4M3N3OF3Hlwmr8i7hNdYfFwJvQnQzKeKrk/vt8Hv44/JTQDlNKU02BmSBfOQ== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" select2 "^4.0.13" -"@abp/sweetalert2@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-5.2.0.tgz#f5625f33edcc9d56ab86cca30472637edfb52c95" - integrity sha512-8Ax00JbqfcB6nLIeeocPX7Yk4uPHsMXHMg6oLKTGV4w88h1MdazQ3YMb7E/9AXjCNoQE77cCEJ7wvV3FXC45SA== +"@abp/sweetalert2@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-5.2.1.tgz#f5ff712b4f7a4cb5a75a754aa4642f099f382e51" + integrity sha512-laaF/5WhYw+hNJRTfMzO93fVhaYqnnOcQTUlkGgsZMe2gwebyX73VI8O8Xw7zXmN1Tu/JwqRI46qiafDrPFTLg== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" sweetalert2 "^11.3.6" -"@abp/timeago@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-5.2.0.tgz#4ac58114acc00d2b2b4d2a051b98caba895c1a34" - integrity sha512-mgMP/vfdUIjjHNqssXcTMtQMQ1ZW9D9keUxvjtQyE+rXNByB+sXMf/mECEGsT9/hK/nDM+aBHxG+O7lkLI+dFA== +"@abp/timeago@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-5.2.1.tgz#a410dbf652c0f78f86384e116111aa613458b6de" + integrity sha512-xmgqKEKusB6pcqFhMaz8RTi886ad8RrRMYgMWSw4Zjk1Lr9EqQwKtcE43Ve5XWJamh2Wpk8H7IKLQKHfrV12oA== dependencies: - "@abp/jquery" "~5.2.0" + "@abp/jquery" "~5.2.1" timeago "^1.6.7" -"@abp/toastr@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-5.2.0.tgz#215af1bdc92a649ac54cb745489e00d9f0e5096b" - integrity sha512-wmoEOA6lOuTTbljsbTTfBGmJb6ur1pDi/VPuf7UF7FXoTcK/NIuzufblzTldsUleYXyIodLfg2s6qpOUGCDO8Q== +"@abp/toastr@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-5.2.1.tgz#4ed96a7967d028b8e849ff79b8a0a8a041bb20e4" + integrity sha512-HrnIzvM9LgQdzlmLmvHUVSG4PmWfx9YuozxkFTv+AGa2FAPby5W9hbQ025ry3bPkU9lGWSu/w7JSDqoiL16bPA== dependencies: - "@abp/jquery" "~5.2.0" + "@abp/jquery" "~5.2.1" toastr "^2.1.4" -"@abp/utils@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-5.2.0.tgz#3f5a7a2aab94f5c2a5e1f0f634517a4939909fa7" - integrity sha512-CBQzu8bAQQ9EUPCjjcXwLCDE/rPFGTtSRtGeMP1lrjavYEAxplXu58Fd8WeTl6d8/dqGA3nNQUnWbc2lGPlUYw== +"@abp/utils@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-5.2.1.tgz#7c2d20f1bcc8cf9f90c060ed31ed3a114a463064" + integrity sha512-9hxI24aRZCnxCP+WsOoCltSg4YqG9WtW06t9/f6hFO9B0udXIKyV+95Ndipca/R1G94Snx81ifSwAa+DHbFfvQ== dependencies: just-compare "^1.3.0" diff --git a/modules/setting-management/app/Volo.Abp.SettingManagement.DemoApp/package.json b/modules/setting-management/app/Volo.Abp.SettingManagement.DemoApp/package.json index 18fb67912b..95b3f87bfc 100644 --- a/modules/setting-management/app/Volo.Abp.SettingManagement.DemoApp/package.json +++ b/modules/setting-management/app/Volo.Abp.SettingManagement.DemoApp/package.json @@ -3,6 +3,6 @@ "name": "demo-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0" + "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.1" } } diff --git a/modules/setting-management/app/Volo.Abp.SettingManagement.DemoApp/yarn.lock b/modules/setting-management/app/Volo.Abp.SettingManagement.DemoApp/yarn.lock index 2ec581d9c3..d5f6d1f237 100644 --- a/modules/setting-management/app/Volo.Abp.SettingManagement.DemoApp/yarn.lock +++ b/modules/setting-management/app/Volo.Abp.SettingManagement.DemoApp/yarn.lock @@ -2,37 +2,37 @@ # yarn lockfile v1 -"@abp/aspnetcore.mvc.ui.theme.basic@^5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-5.2.0.tgz#272f3ba89ee7a37bc2c5d0d1c280a47c39de4baa" - integrity sha512-9yTHmtmD7sgA0fTxFCohhMrmolfnp/5sJzPsh3USGqANjr3g9Ybv3tydP4Hwfb1Ts+dqcrITdsM0Ny/EcEt+iQ== - dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~5.2.0" - -"@abp/aspnetcore.mvc.ui.theme.shared@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-5.2.0.tgz#2a7ba6d0d2e28bb5acc77dc8e3a86535912243da" - integrity sha512-+QqRI3Yz+iwitOhfhMnomfpOoqsdh4kL6EFh9z2nI2GhLa+CtiJMAfZUOhLZTGHrBhtFk/mYu8LzYcFRzch8tw== - dependencies: - "@abp/aspnetcore.mvc.ui" "~5.2.0" - "@abp/bootstrap" "~5.2.0" - "@abp/bootstrap-datepicker" "~5.2.0" - "@abp/datatables.net-bs5" "~5.2.0" - "@abp/font-awesome" "~5.2.0" - "@abp/jquery-form" "~5.2.0" - "@abp/jquery-validation-unobtrusive" "~5.2.0" - "@abp/lodash" "~5.2.0" - "@abp/luxon" "~5.2.0" - "@abp/malihu-custom-scrollbar-plugin" "~5.2.0" - "@abp/select2" "~5.2.0" - "@abp/sweetalert2" "~5.2.0" - "@abp/timeago" "~5.2.0" - "@abp/toastr" "~5.2.0" - -"@abp/aspnetcore.mvc.ui@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-5.2.0.tgz#c590f3b56a623e9d00fa50d6a6179d4523ace2a6" - integrity sha512-UtlFa0HVwO8ezve43VEqdGazu9eQ/j4vmv4khKTPG8dEt2u9i3QVruqcIV5XnxnsQiGcZDak7QCyyH1GUFAhUg== +"@abp/aspnetcore.mvc.ui.theme.basic@^5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-5.2.1.tgz#25bd7116b9b0e72ba45f0f5246343343de8561b2" + integrity sha512-DYr9ROcTPfCRHxD1QSWqLZ9+ARbO5p9I6SRo893NtJ39aHacAa9RIAwZmP0JLG0C4hLXfJLKXJ2DpNcwY+ubXA== + dependencies: + "@abp/aspnetcore.mvc.ui.theme.shared" "~5.2.1" + +"@abp/aspnetcore.mvc.ui.theme.shared@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-5.2.1.tgz#dc291fe9c7100cc796068e19abf7579bd5e54b44" + integrity sha512-/1C5RyPIRPZT5ir8Len2EnSt1KfWcRdPyn/avAG+9JKBZ8FoUL8mO2/ffESOvikh/wItZZgxJ5VEJVGwHNjgdQ== + dependencies: + "@abp/aspnetcore.mvc.ui" "~5.2.1" + "@abp/bootstrap" "~5.2.1" + "@abp/bootstrap-datepicker" "~5.2.1" + "@abp/datatables.net-bs5" "~5.2.1" + "@abp/font-awesome" "~5.2.1" + "@abp/jquery-form" "~5.2.1" + "@abp/jquery-validation-unobtrusive" "~5.2.1" + "@abp/lodash" "~5.2.1" + "@abp/luxon" "~5.2.1" + "@abp/malihu-custom-scrollbar-plugin" "~5.2.1" + "@abp/select2" "~5.2.1" + "@abp/sweetalert2" "~5.2.1" + "@abp/timeago" "~5.2.1" + "@abp/toastr" "~5.2.1" + +"@abp/aspnetcore.mvc.ui@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-5.2.1.tgz#239ceeec332cebe2fedec0bb0cdec09089b499d3" + integrity sha512-VUSPOKjBSF+NxfwdsEVQte8u7mGP1t7jd1+ej2ND8JEKYJ1Vh7z2mfsT+lQaEJg0JWggU1AxkIMOOfHDNTU3Kg== dependencies: ansi-colors "^4.1.1" extend-object "^1.0.0" @@ -41,144 +41,144 @@ merge-stream "^2.0.0" micromatch "^4.0.2" -"@abp/bootstrap-datepicker@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-5.2.0.tgz#140892172b3d6edecc1d1e826b517e711d8ff60a" - integrity sha512-9WzC5Up7Uaahre6CCP2bzbtjhmnz3Or828kYxUlWSf7GQO2BydCJBqkWz6gjWDIzxLjQ5AeB+n9odEG3gLNNUw== +"@abp/bootstrap-datepicker@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-5.2.1.tgz#20d565211d05ca184f8e3ef4db840dbd98a58fbd" + integrity sha512-UPdVu9t7XybINSfonQN0DB9Lpz1r5vCz7F8CMpbjQprvPmsFmkAZyY0p6MS3kGO5eu5rlpGAGPBGOTeSfEp9ww== dependencies: bootstrap-datepicker "^1.9.0" -"@abp/bootstrap@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-5.2.0.tgz#16179d319b2e7a53fde6940217b3e27ce3c32714" - integrity sha512-r11Vzo7kFC8zs5DMvdqsKPG0FEYDqhFzgW4TJKa6d968apFRJ3wGjnF/kJmC1J+XzqNTtyHcwStfNmXUdL0udA== +"@abp/bootstrap@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-5.2.1.tgz#fe15144d7136a26be44be23fd2470cdef0bd28b9" + integrity sha512-vFW8OxfRhiDkIrDVIn3TyGkGyiCLLFmPMjSOmMg3o2XPdRk5uhwSBzWYpk/m+kmPpP6cEsJMxaHpCsirSlPE+A== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" bootstrap "^5.1.3" -"@abp/core@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-5.2.0.tgz#d85ab6fd677d1850261afdba240ef2b8c0d42faf" - integrity sha512-GRxfuip7E97uItAEcv87FSv5C4Tw6JLAkTbu0wAv86uhT46czPw77DZ5LhTRUlDZp4fPzJSy6OABaG1RROlo1w== +"@abp/core@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-5.2.1.tgz#9cd7f25dec0b4e654f7998f89c19f3d73169c74a" + integrity sha512-FDOhIPjig3oGxkbadJZzFSC1ZHzgQV4R75fsDNH56lQ9mTyRUPQdg0Y54eCtY7yOSjiJOctOUUWHaxoFG7frGQ== dependencies: - "@abp/utils" "~5.2.0" + "@abp/utils" "~5.2.1" -"@abp/datatables.net-bs5@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-5.2.0.tgz#9a6d5cba805a42abde2bbc3dd54ffeb67a188285" - integrity sha512-8eIvTadxffRW04qVRHh245lqX1tAfdyf5AsLqgomm7p0/ec76lNT1mRqwdS/kxD/ClrE6LmBnij1jJdaAs/0xQ== +"@abp/datatables.net-bs5@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-5.2.1.tgz#fafc65295d00d5b351404740702f7e56ff1341fe" + integrity sha512-B8lSAeMM9qOwYbDK/Dhp7BX5lFaCpao4RCPcSqgFrye8vlH8bcobmp4tMD23r24y/gRIEuQBcKzp0Lf0OUpLhA== dependencies: - "@abp/datatables.net" "~5.2.0" + "@abp/datatables.net" "~5.2.1" datatables.net-bs5 "^1.11.4" -"@abp/datatables.net@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-5.2.0.tgz#fc900b9da0625264a43530e26555cf31b06ee16c" - integrity sha512-O+DZGpvcN42yQieapaX7OdjDkBSlEQIX/iNSbext5e08Gs//cAPj7EQKiSirb6+BIvIZQchPHj2xadw0L7sQvg== +"@abp/datatables.net@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-5.2.1.tgz#397a3e7db2017c20c082598214478c277b2abec6" + integrity sha512-6Q3+W+d8e4TMAkZr/IdPDQuL1v+tjbS50ChLvrJX/BLb4fBhu1LGJWWKzKJFj721DwIsuQQiM4uq9xX/TjiS0w== dependencies: - "@abp/jquery" "~5.2.0" + "@abp/jquery" "~5.2.1" datatables.net "^1.11.4" -"@abp/font-awesome@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-5.2.0.tgz#8e0da078d307735ccac394326d06f21de85f2808" - integrity sha512-ZGiov0N35fZ92Abf+k5MqtRkAP8o54rb9iKEjUYgwtF8rnskO5o9fK8TppwXb7PlG9Znh2AUkknpeXOwa1IWtQ== +"@abp/font-awesome@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-5.2.1.tgz#357785a0366f555b72f76e2b8ee8a2d607aed6fb" + integrity sha512-9fAUdA9QeNRMjp6v8i6EOR480bjB4OzqzriFCKUu4k6VwbA6PxUsJIRFyKIt5UpC12Zqdhpkyj0iG6tE0nRekQ== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" "@fortawesome/fontawesome-free" "^5.15.4" -"@abp/jquery-form@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-5.2.0.tgz#f6dc777c736260f63875fb05c566ec14b2213b7c" - integrity sha512-xgQvgEXso3a/zMZWNxh9e0RdruCqNh75j9Lp4vHGxaWsXRtvgbCIfayDDWrn+6P28p8bYal7g51Jw6nc5jR5RA== +"@abp/jquery-form@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-5.2.1.tgz#c9cc6ad3997f7fa036d5cd8e0d15923ad7fff790" + integrity sha512-L7uKs7vReOQEETG9xIDq5aXjshbaPa+ZZQcCbn2uwY813e0ErS7Rb1mnowEt/LNEB02AtLet1B4TDVwZUl1uXQ== dependencies: - "@abp/jquery" "~5.2.0" + "@abp/jquery" "~5.2.1" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-5.2.0.tgz#8acd1346bdd2b6b1cd40017f995265fb3d19539f" - integrity sha512-z7VhlC9zi2Pf6sZ8EexUDHyBieaeO1G5ndmvJTV5wZMAigsu+H7LaAyQrTd5P42WpX1Jy3Lo2UbVCt5Gh98SXg== +"@abp/jquery-validation-unobtrusive@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-5.2.1.tgz#7fdfa3867f61f862ee575114560f79b505649093" + integrity sha512-uZ36D1FfoLdBb6h44fQ3kZuTk4gJ5yzhyOprkgMsGAJDVakX7w/W4V3ThpiEO+iUpNKTboVIhW2QQ0AXK9rrsg== dependencies: - "@abp/jquery-validation" "~5.2.0" + "@abp/jquery-validation" "~5.2.1" jquery-validation-unobtrusive "^3.2.12" -"@abp/jquery-validation@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-5.2.0.tgz#b594d6d4412b4cc56b97ba5581af559adc91d08a" - integrity sha512-AIAP3qRVI6DcF71rUy0yUXaGKVWwGtMx7Z13MMI66LhTnlS6giUb5UUQhcHJjIp4mAJoYbawiTpAnWezkoLJDQ== +"@abp/jquery-validation@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-5.2.1.tgz#e7fbaa1715af5667559e3b6f0fcb916766b28244" + integrity sha512-Rr/+SWGlXJ53jfysMB/HVNZqsJKCF3rg23ip2Kg6Q+kQTvWVRE3tpkpoBJczOii5tPUk/A/lsJKgRlcsnP0ASw== dependencies: - "@abp/jquery" "~5.2.0" + "@abp/jquery" "~5.2.1" jquery-validation "^1.19.3" -"@abp/jquery@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-5.2.0.tgz#2c924adc4a17013a7958017e985ca337c5064389" - integrity sha512-uL9Y9a31D7RLTz0VtSj0Wx9PHNrVrigPf8AUS8zMAblc8DZLEzXJ6L4nUU3xDW6+TGC/rO2x8zz1y/T6sKfzUw== +"@abp/jquery@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-5.2.1.tgz#6b88af5c22fb25d953d38847bcddcf591aeb3228" + integrity sha512-FiIRnDx/gm6JR8QljiulwCc5d8+YC123X0qxMIBI8IY9vznEX+Jk48jYG8fLABnRqKEIYfV8UsYSK8IJx3mcSg== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" jquery "~3.6.0" -"@abp/lodash@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-5.2.0.tgz#27f2c9c5848faceed04f0198d46cb34515e99608" - integrity sha512-5wcHMm+QtjEv/USxFu7jLNlNRiBwEnQG6zFwIKrT5V3d8dD8xq4zG86rojSexxd/0AKqyo5foMctV4IG8HC6Mg== +"@abp/lodash@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-5.2.1.tgz#87601162025a4a376e3c335d418636ef2079ad2d" + integrity sha512-ILg3X5tTH2HhJMRmg7BP/r+Kstm/nf+0aNQ2exsJoMMnKE7CC0eYQjpSgrze6GwG3a13eamyTlrz+RrlIm5IBA== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" lodash "^4.17.21" -"@abp/luxon@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-5.2.0.tgz#819b6cb5315622545bad8a84b8f3d6d63fbdf52d" - integrity sha512-VD2I/qhRYbbu5T7sUG5g01bcbw0gwAGmqUR4QI/5gmBYif8VuGHu/zTvnEn4Vhj6P5/tSWpa7blUs0EiFk/L/A== +"@abp/luxon@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-5.2.1.tgz#72a9e9bb0e7f3a688662c8e9ad52016b9cfa3a17" + integrity sha512-D3KVsba969UBYktdbCxq1JQp4kYZ1S7rIMymDJMBoHByXxwwdeXMkvuphAifBmSYTt3K6bNoZdR0VxtnNlPn2A== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" luxon "^2.3.0" -"@abp/malihu-custom-scrollbar-plugin@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-5.2.0.tgz#54ee9cf2c1049d617afebfd7b9ebae5b9225746e" - integrity sha512-CvQb/lnoxs+nEN0FuWwJyA5EgsbiSy23sYbTrM2t/KF6X3dK2m+4RMbEeG7rRYV1i6c1jfuHrjoFh3FPr9KRlA== +"@abp/malihu-custom-scrollbar-plugin@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-5.2.1.tgz#8d1b600552607e28a274775ad3bb68ac7cfbba09" + integrity sha512-5mvABMCT7tiwPl1vUK8kriN/SRi2gC4VqkEuxghT7uBQG9Cqh5jhJrl80M9ZK/oQFind3r6+SF8OlfwF8yvxHQ== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/select2@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-5.2.0.tgz#4b9418851cf52346131172c9c497173749bdd22b" - integrity sha512-t+EjuNqRIZIlu4Wk2pL+Ud/+gIFSoM3WN4U+LKGkQ1vwiVRbCUqvdj5LjGuEVrmN96lNfv3Xxut+XQoJDFjfeg== +"@abp/select2@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-5.2.1.tgz#f52a3c88da52bbfc4b135671064326aebb98b332" + integrity sha512-JH/PqOxhTY05sUyN7of6TNai0W4M3N3OF3Hlwmr8i7hNdYfFwJvQnQzKeKrk/vt8Hv44/JTQDlNKU02BmSBfOQ== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" select2 "^4.0.13" -"@abp/sweetalert2@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-5.2.0.tgz#f5625f33edcc9d56ab86cca30472637edfb52c95" - integrity sha512-8Ax00JbqfcB6nLIeeocPX7Yk4uPHsMXHMg6oLKTGV4w88h1MdazQ3YMb7E/9AXjCNoQE77cCEJ7wvV3FXC45SA== +"@abp/sweetalert2@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-5.2.1.tgz#f5ff712b4f7a4cb5a75a754aa4642f099f382e51" + integrity sha512-laaF/5WhYw+hNJRTfMzO93fVhaYqnnOcQTUlkGgsZMe2gwebyX73VI8O8Xw7zXmN1Tu/JwqRI46qiafDrPFTLg== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" sweetalert2 "^11.3.6" -"@abp/timeago@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-5.2.0.tgz#4ac58114acc00d2b2b4d2a051b98caba895c1a34" - integrity sha512-mgMP/vfdUIjjHNqssXcTMtQMQ1ZW9D9keUxvjtQyE+rXNByB+sXMf/mECEGsT9/hK/nDM+aBHxG+O7lkLI+dFA== +"@abp/timeago@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-5.2.1.tgz#a410dbf652c0f78f86384e116111aa613458b6de" + integrity sha512-xmgqKEKusB6pcqFhMaz8RTi886ad8RrRMYgMWSw4Zjk1Lr9EqQwKtcE43Ve5XWJamh2Wpk8H7IKLQKHfrV12oA== dependencies: - "@abp/jquery" "~5.2.0" + "@abp/jquery" "~5.2.1" timeago "^1.6.7" -"@abp/toastr@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-5.2.0.tgz#215af1bdc92a649ac54cb745489e00d9f0e5096b" - integrity sha512-wmoEOA6lOuTTbljsbTTfBGmJb6ur1pDi/VPuf7UF7FXoTcK/NIuzufblzTldsUleYXyIodLfg2s6qpOUGCDO8Q== +"@abp/toastr@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-5.2.1.tgz#4ed96a7967d028b8e849ff79b8a0a8a041bb20e4" + integrity sha512-HrnIzvM9LgQdzlmLmvHUVSG4PmWfx9YuozxkFTv+AGa2FAPby5W9hbQ025ry3bPkU9lGWSu/w7JSDqoiL16bPA== dependencies: - "@abp/jquery" "~5.2.0" + "@abp/jquery" "~5.2.1" toastr "^2.1.4" -"@abp/utils@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-5.2.0.tgz#3f5a7a2aab94f5c2a5e1f0f634517a4939909fa7" - integrity sha512-CBQzu8bAQQ9EUPCjjcXwLCDE/rPFGTtSRtGeMP1lrjavYEAxplXu58Fd8WeTl6d8/dqGA3nNQUnWbc2lGPlUYw== +"@abp/utils@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-5.2.1.tgz#7c2d20f1bcc8cf9f90c060ed31ed3a114a463064" + integrity sha512-9hxI24aRZCnxCP+WsOoCltSg4YqG9WtW06t9/f6hFO9B0udXIKyV+95Ndipca/R1G94Snx81ifSwAa+DHbFfvQ== dependencies: just-compare "^1.3.0" diff --git a/modules/virtual-file-explorer/app/Volo.Abp.VirtualFileExplorer.DemoApp/package.json b/modules/virtual-file-explorer/app/Volo.Abp.VirtualFileExplorer.DemoApp/package.json index b2e2c3b37b..5cbf1e4a17 100644 --- a/modules/virtual-file-explorer/app/Volo.Abp.VirtualFileExplorer.DemoApp/package.json +++ b/modules/virtual-file-explorer/app/Volo.Abp.VirtualFileExplorer.DemoApp/package.json @@ -3,7 +3,7 @@ "version": "1.0.0", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0", - "@abp/virtual-file-explorer": "^5.2.0" + "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.1", + "@abp/virtual-file-explorer": "^5.2.1" } } diff --git a/modules/virtual-file-explorer/app/Volo.Abp.VirtualFileExplorer.DemoApp/yarn.lock b/modules/virtual-file-explorer/app/Volo.Abp.VirtualFileExplorer.DemoApp/yarn.lock index d1af68cf61..eb76a09ea5 100644 --- a/modules/virtual-file-explorer/app/Volo.Abp.VirtualFileExplorer.DemoApp/yarn.lock +++ b/modules/virtual-file-explorer/app/Volo.Abp.VirtualFileExplorer.DemoApp/yarn.lock @@ -2,37 +2,37 @@ # yarn lockfile v1 -"@abp/aspnetcore.mvc.ui.theme.basic@^5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-5.2.0.tgz#272f3ba89ee7a37bc2c5d0d1c280a47c39de4baa" - integrity sha512-9yTHmtmD7sgA0fTxFCohhMrmolfnp/5sJzPsh3USGqANjr3g9Ybv3tydP4Hwfb1Ts+dqcrITdsM0Ny/EcEt+iQ== - dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~5.2.0" - -"@abp/aspnetcore.mvc.ui.theme.shared@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-5.2.0.tgz#2a7ba6d0d2e28bb5acc77dc8e3a86535912243da" - integrity sha512-+QqRI3Yz+iwitOhfhMnomfpOoqsdh4kL6EFh9z2nI2GhLa+CtiJMAfZUOhLZTGHrBhtFk/mYu8LzYcFRzch8tw== - dependencies: - "@abp/aspnetcore.mvc.ui" "~5.2.0" - "@abp/bootstrap" "~5.2.0" - "@abp/bootstrap-datepicker" "~5.2.0" - "@abp/datatables.net-bs5" "~5.2.0" - "@abp/font-awesome" "~5.2.0" - "@abp/jquery-form" "~5.2.0" - "@abp/jquery-validation-unobtrusive" "~5.2.0" - "@abp/lodash" "~5.2.0" - "@abp/luxon" "~5.2.0" - "@abp/malihu-custom-scrollbar-plugin" "~5.2.0" - "@abp/select2" "~5.2.0" - "@abp/sweetalert2" "~5.2.0" - "@abp/timeago" "~5.2.0" - "@abp/toastr" "~5.2.0" - -"@abp/aspnetcore.mvc.ui@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-5.2.0.tgz#c590f3b56a623e9d00fa50d6a6179d4523ace2a6" - integrity sha512-UtlFa0HVwO8ezve43VEqdGazu9eQ/j4vmv4khKTPG8dEt2u9i3QVruqcIV5XnxnsQiGcZDak7QCyyH1GUFAhUg== +"@abp/aspnetcore.mvc.ui.theme.basic@^5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-5.2.1.tgz#25bd7116b9b0e72ba45f0f5246343343de8561b2" + integrity sha512-DYr9ROcTPfCRHxD1QSWqLZ9+ARbO5p9I6SRo893NtJ39aHacAa9RIAwZmP0JLG0C4hLXfJLKXJ2DpNcwY+ubXA== + dependencies: + "@abp/aspnetcore.mvc.ui.theme.shared" "~5.2.1" + +"@abp/aspnetcore.mvc.ui.theme.shared@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-5.2.1.tgz#dc291fe9c7100cc796068e19abf7579bd5e54b44" + integrity sha512-/1C5RyPIRPZT5ir8Len2EnSt1KfWcRdPyn/avAG+9JKBZ8FoUL8mO2/ffESOvikh/wItZZgxJ5VEJVGwHNjgdQ== + dependencies: + "@abp/aspnetcore.mvc.ui" "~5.2.1" + "@abp/bootstrap" "~5.2.1" + "@abp/bootstrap-datepicker" "~5.2.1" + "@abp/datatables.net-bs5" "~5.2.1" + "@abp/font-awesome" "~5.2.1" + "@abp/jquery-form" "~5.2.1" + "@abp/jquery-validation-unobtrusive" "~5.2.1" + "@abp/lodash" "~5.2.1" + "@abp/luxon" "~5.2.1" + "@abp/malihu-custom-scrollbar-plugin" "~5.2.1" + "@abp/select2" "~5.2.1" + "@abp/sweetalert2" "~5.2.1" + "@abp/timeago" "~5.2.1" + "@abp/toastr" "~5.2.1" + +"@abp/aspnetcore.mvc.ui@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-5.2.1.tgz#239ceeec332cebe2fedec0bb0cdec09089b499d3" + integrity sha512-VUSPOKjBSF+NxfwdsEVQte8u7mGP1t7jd1+ej2ND8JEKYJ1Vh7z2mfsT+lQaEJg0JWggU1AxkIMOOfHDNTU3Kg== dependencies: ansi-colors "^4.1.1" extend-object "^1.0.0" @@ -41,171 +41,171 @@ merge-stream "^2.0.0" micromatch "^4.0.2" -"@abp/bootstrap-datepicker@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-5.2.0.tgz#140892172b3d6edecc1d1e826b517e711d8ff60a" - integrity sha512-9WzC5Up7Uaahre6CCP2bzbtjhmnz3Or828kYxUlWSf7GQO2BydCJBqkWz6gjWDIzxLjQ5AeB+n9odEG3gLNNUw== +"@abp/bootstrap-datepicker@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-5.2.1.tgz#20d565211d05ca184f8e3ef4db840dbd98a58fbd" + integrity sha512-UPdVu9t7XybINSfonQN0DB9Lpz1r5vCz7F8CMpbjQprvPmsFmkAZyY0p6MS3kGO5eu5rlpGAGPBGOTeSfEp9ww== dependencies: bootstrap-datepicker "^1.9.0" -"@abp/bootstrap@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-5.2.0.tgz#16179d319b2e7a53fde6940217b3e27ce3c32714" - integrity sha512-r11Vzo7kFC8zs5DMvdqsKPG0FEYDqhFzgW4TJKa6d968apFRJ3wGjnF/kJmC1J+XzqNTtyHcwStfNmXUdL0udA== +"@abp/bootstrap@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-5.2.1.tgz#fe15144d7136a26be44be23fd2470cdef0bd28b9" + integrity sha512-vFW8OxfRhiDkIrDVIn3TyGkGyiCLLFmPMjSOmMg3o2XPdRk5uhwSBzWYpk/m+kmPpP6cEsJMxaHpCsirSlPE+A== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" bootstrap "^5.1.3" -"@abp/clipboard@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-5.2.0.tgz#5374562edfa95c6a2a2244b4f1667625c73b7185" - integrity sha512-AFdY+7n4khi6mM86EzbclzC2S/SN5FncGCFTW873GQ2OakDzyCRhNqtoLihcvSW5YwDvofMJjAITCy5GnzelRw== +"@abp/clipboard@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-5.2.1.tgz#c6bddd279b37e9b2bd27b027d5686411c9ae942b" + integrity sha512-aouNTDz8t+8M4O2a+UsEdtABRsyhvzGpXqCG2+LYE1vA3I+CKhglkvEFp+GyIgWsipEHY1U1w6V3qZtcRINn+A== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" clipboard "^2.0.8" -"@abp/core@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-5.2.0.tgz#d85ab6fd677d1850261afdba240ef2b8c0d42faf" - integrity sha512-GRxfuip7E97uItAEcv87FSv5C4Tw6JLAkTbu0wAv86uhT46czPw77DZ5LhTRUlDZp4fPzJSy6OABaG1RROlo1w== +"@abp/core@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-5.2.1.tgz#9cd7f25dec0b4e654f7998f89c19f3d73169c74a" + integrity sha512-FDOhIPjig3oGxkbadJZzFSC1ZHzgQV4R75fsDNH56lQ9mTyRUPQdg0Y54eCtY7yOSjiJOctOUUWHaxoFG7frGQ== dependencies: - "@abp/utils" "~5.2.0" + "@abp/utils" "~5.2.1" -"@abp/datatables.net-bs5@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-5.2.0.tgz#9a6d5cba805a42abde2bbc3dd54ffeb67a188285" - integrity sha512-8eIvTadxffRW04qVRHh245lqX1tAfdyf5AsLqgomm7p0/ec76lNT1mRqwdS/kxD/ClrE6LmBnij1jJdaAs/0xQ== +"@abp/datatables.net-bs5@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-5.2.1.tgz#fafc65295d00d5b351404740702f7e56ff1341fe" + integrity sha512-B8lSAeMM9qOwYbDK/Dhp7BX5lFaCpao4RCPcSqgFrye8vlH8bcobmp4tMD23r24y/gRIEuQBcKzp0Lf0OUpLhA== dependencies: - "@abp/datatables.net" "~5.2.0" + "@abp/datatables.net" "~5.2.1" datatables.net-bs5 "^1.11.4" -"@abp/datatables.net@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-5.2.0.tgz#fc900b9da0625264a43530e26555cf31b06ee16c" - integrity sha512-O+DZGpvcN42yQieapaX7OdjDkBSlEQIX/iNSbext5e08Gs//cAPj7EQKiSirb6+BIvIZQchPHj2xadw0L7sQvg== +"@abp/datatables.net@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-5.2.1.tgz#397a3e7db2017c20c082598214478c277b2abec6" + integrity sha512-6Q3+W+d8e4TMAkZr/IdPDQuL1v+tjbS50ChLvrJX/BLb4fBhu1LGJWWKzKJFj721DwIsuQQiM4uq9xX/TjiS0w== dependencies: - "@abp/jquery" "~5.2.0" + "@abp/jquery" "~5.2.1" datatables.net "^1.11.4" -"@abp/font-awesome@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-5.2.0.tgz#8e0da078d307735ccac394326d06f21de85f2808" - integrity sha512-ZGiov0N35fZ92Abf+k5MqtRkAP8o54rb9iKEjUYgwtF8rnskO5o9fK8TppwXb7PlG9Znh2AUkknpeXOwa1IWtQ== +"@abp/font-awesome@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-5.2.1.tgz#357785a0366f555b72f76e2b8ee8a2d607aed6fb" + integrity sha512-9fAUdA9QeNRMjp6v8i6EOR480bjB4OzqzriFCKUu4k6VwbA6PxUsJIRFyKIt5UpC12Zqdhpkyj0iG6tE0nRekQ== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" "@fortawesome/fontawesome-free" "^5.15.4" -"@abp/jquery-form@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-5.2.0.tgz#f6dc777c736260f63875fb05c566ec14b2213b7c" - integrity sha512-xgQvgEXso3a/zMZWNxh9e0RdruCqNh75j9Lp4vHGxaWsXRtvgbCIfayDDWrn+6P28p8bYal7g51Jw6nc5jR5RA== +"@abp/jquery-form@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-5.2.1.tgz#c9cc6ad3997f7fa036d5cd8e0d15923ad7fff790" + integrity sha512-L7uKs7vReOQEETG9xIDq5aXjshbaPa+ZZQcCbn2uwY813e0ErS7Rb1mnowEt/LNEB02AtLet1B4TDVwZUl1uXQ== dependencies: - "@abp/jquery" "~5.2.0" + "@abp/jquery" "~5.2.1" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-5.2.0.tgz#8acd1346bdd2b6b1cd40017f995265fb3d19539f" - integrity sha512-z7VhlC9zi2Pf6sZ8EexUDHyBieaeO1G5ndmvJTV5wZMAigsu+H7LaAyQrTd5P42WpX1Jy3Lo2UbVCt5Gh98SXg== +"@abp/jquery-validation-unobtrusive@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-5.2.1.tgz#7fdfa3867f61f862ee575114560f79b505649093" + integrity sha512-uZ36D1FfoLdBb6h44fQ3kZuTk4gJ5yzhyOprkgMsGAJDVakX7w/W4V3ThpiEO+iUpNKTboVIhW2QQ0AXK9rrsg== dependencies: - "@abp/jquery-validation" "~5.2.0" + "@abp/jquery-validation" "~5.2.1" jquery-validation-unobtrusive "^3.2.12" -"@abp/jquery-validation@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-5.2.0.tgz#b594d6d4412b4cc56b97ba5581af559adc91d08a" - integrity sha512-AIAP3qRVI6DcF71rUy0yUXaGKVWwGtMx7Z13MMI66LhTnlS6giUb5UUQhcHJjIp4mAJoYbawiTpAnWezkoLJDQ== +"@abp/jquery-validation@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-5.2.1.tgz#e7fbaa1715af5667559e3b6f0fcb916766b28244" + integrity sha512-Rr/+SWGlXJ53jfysMB/HVNZqsJKCF3rg23ip2Kg6Q+kQTvWVRE3tpkpoBJczOii5tPUk/A/lsJKgRlcsnP0ASw== dependencies: - "@abp/jquery" "~5.2.0" + "@abp/jquery" "~5.2.1" jquery-validation "^1.19.3" -"@abp/jquery@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-5.2.0.tgz#2c924adc4a17013a7958017e985ca337c5064389" - integrity sha512-uL9Y9a31D7RLTz0VtSj0Wx9PHNrVrigPf8AUS8zMAblc8DZLEzXJ6L4nUU3xDW6+TGC/rO2x8zz1y/T6sKfzUw== +"@abp/jquery@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-5.2.1.tgz#6b88af5c22fb25d953d38847bcddcf591aeb3228" + integrity sha512-FiIRnDx/gm6JR8QljiulwCc5d8+YC123X0qxMIBI8IY9vznEX+Jk48jYG8fLABnRqKEIYfV8UsYSK8IJx3mcSg== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" jquery "~3.6.0" -"@abp/lodash@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-5.2.0.tgz#27f2c9c5848faceed04f0198d46cb34515e99608" - integrity sha512-5wcHMm+QtjEv/USxFu7jLNlNRiBwEnQG6zFwIKrT5V3d8dD8xq4zG86rojSexxd/0AKqyo5foMctV4IG8HC6Mg== +"@abp/lodash@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-5.2.1.tgz#87601162025a4a376e3c335d418636ef2079ad2d" + integrity sha512-ILg3X5tTH2HhJMRmg7BP/r+Kstm/nf+0aNQ2exsJoMMnKE7CC0eYQjpSgrze6GwG3a13eamyTlrz+RrlIm5IBA== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" lodash "^4.17.21" -"@abp/luxon@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-5.2.0.tgz#819b6cb5315622545bad8a84b8f3d6d63fbdf52d" - integrity sha512-VD2I/qhRYbbu5T7sUG5g01bcbw0gwAGmqUR4QI/5gmBYif8VuGHu/zTvnEn4Vhj6P5/tSWpa7blUs0EiFk/L/A== +"@abp/luxon@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-5.2.1.tgz#72a9e9bb0e7f3a688662c8e9ad52016b9cfa3a17" + integrity sha512-D3KVsba969UBYktdbCxq1JQp4kYZ1S7rIMymDJMBoHByXxwwdeXMkvuphAifBmSYTt3K6bNoZdR0VxtnNlPn2A== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" luxon "^2.3.0" -"@abp/malihu-custom-scrollbar-plugin@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-5.2.0.tgz#54ee9cf2c1049d617afebfd7b9ebae5b9225746e" - integrity sha512-CvQb/lnoxs+nEN0FuWwJyA5EgsbiSy23sYbTrM2t/KF6X3dK2m+4RMbEeG7rRYV1i6c1jfuHrjoFh3FPr9KRlA== +"@abp/malihu-custom-scrollbar-plugin@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-5.2.1.tgz#8d1b600552607e28a274775ad3bb68ac7cfbba09" + integrity sha512-5mvABMCT7tiwPl1vUK8kriN/SRi2gC4VqkEuxghT7uBQG9Cqh5jhJrl80M9ZK/oQFind3r6+SF8OlfwF8yvxHQ== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/prismjs@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-5.2.0.tgz#c33ee1178a3916a6a1eac54ec4bdc78ca0dc42c7" - integrity sha512-jVFm7d80u5cIuygQViotDEQNpe2nGxEPQmZNzEV1jM4myMAMN1PZHFhoFxb3FAbH2q0wlZ5lcXjQs5cTz8V8Mw== +"@abp/prismjs@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-5.2.1.tgz#86aae6ee4529401da75744f1e43c7cd3c0b494a0" + integrity sha512-YNgcM7Kvmu3hGXJh4B8gl7rLzC28VuZYYP7AVptVSbTz/n6usCo21evG/st8L3vXixuQkvnNpBFgacJnHdSJZQ== dependencies: - "@abp/clipboard" "~5.2.0" - "@abp/core" "~5.2.0" + "@abp/clipboard" "~5.2.1" + "@abp/core" "~5.2.1" prismjs "^1.26.0" -"@abp/select2@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-5.2.0.tgz#4b9418851cf52346131172c9c497173749bdd22b" - integrity sha512-t+EjuNqRIZIlu4Wk2pL+Ud/+gIFSoM3WN4U+LKGkQ1vwiVRbCUqvdj5LjGuEVrmN96lNfv3Xxut+XQoJDFjfeg== +"@abp/select2@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-5.2.1.tgz#f52a3c88da52bbfc4b135671064326aebb98b332" + integrity sha512-JH/PqOxhTY05sUyN7of6TNai0W4M3N3OF3Hlwmr8i7hNdYfFwJvQnQzKeKrk/vt8Hv44/JTQDlNKU02BmSBfOQ== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" select2 "^4.0.13" -"@abp/sweetalert2@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-5.2.0.tgz#f5625f33edcc9d56ab86cca30472637edfb52c95" - integrity sha512-8Ax00JbqfcB6nLIeeocPX7Yk4uPHsMXHMg6oLKTGV4w88h1MdazQ3YMb7E/9AXjCNoQE77cCEJ7wvV3FXC45SA== +"@abp/sweetalert2@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-5.2.1.tgz#f5ff712b4f7a4cb5a75a754aa4642f099f382e51" + integrity sha512-laaF/5WhYw+hNJRTfMzO93fVhaYqnnOcQTUlkGgsZMe2gwebyX73VI8O8Xw7zXmN1Tu/JwqRI46qiafDrPFTLg== dependencies: - "@abp/core" "~5.2.0" + "@abp/core" "~5.2.1" sweetalert2 "^11.3.6" -"@abp/timeago@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-5.2.0.tgz#4ac58114acc00d2b2b4d2a051b98caba895c1a34" - integrity sha512-mgMP/vfdUIjjHNqssXcTMtQMQ1ZW9D9keUxvjtQyE+rXNByB+sXMf/mECEGsT9/hK/nDM+aBHxG+O7lkLI+dFA== +"@abp/timeago@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-5.2.1.tgz#a410dbf652c0f78f86384e116111aa613458b6de" + integrity sha512-xmgqKEKusB6pcqFhMaz8RTi886ad8RrRMYgMWSw4Zjk1Lr9EqQwKtcE43Ve5XWJamh2Wpk8H7IKLQKHfrV12oA== dependencies: - "@abp/jquery" "~5.2.0" + "@abp/jquery" "~5.2.1" timeago "^1.6.7" -"@abp/toastr@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-5.2.0.tgz#215af1bdc92a649ac54cb745489e00d9f0e5096b" - integrity sha512-wmoEOA6lOuTTbljsbTTfBGmJb6ur1pDi/VPuf7UF7FXoTcK/NIuzufblzTldsUleYXyIodLfg2s6qpOUGCDO8Q== +"@abp/toastr@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-5.2.1.tgz#4ed96a7967d028b8e849ff79b8a0a8a041bb20e4" + integrity sha512-HrnIzvM9LgQdzlmLmvHUVSG4PmWfx9YuozxkFTv+AGa2FAPby5W9hbQ025ry3bPkU9lGWSu/w7JSDqoiL16bPA== dependencies: - "@abp/jquery" "~5.2.0" + "@abp/jquery" "~5.2.1" toastr "^2.1.4" -"@abp/utils@~5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-5.2.0.tgz#3f5a7a2aab94f5c2a5e1f0f634517a4939909fa7" - integrity sha512-CBQzu8bAQQ9EUPCjjcXwLCDE/rPFGTtSRtGeMP1lrjavYEAxplXu58Fd8WeTl6d8/dqGA3nNQUnWbc2lGPlUYw== +"@abp/utils@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-5.2.1.tgz#7c2d20f1bcc8cf9f90c060ed31ed3a114a463064" + integrity sha512-9hxI24aRZCnxCP+WsOoCltSg4YqG9WtW06t9/f6hFO9B0udXIKyV+95Ndipca/R1G94Snx81ifSwAa+DHbFfvQ== dependencies: just-compare "^1.3.0" -"@abp/virtual-file-explorer@^5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@abp/virtual-file-explorer/-/virtual-file-explorer-5.2.0.tgz#1135d4f4413fb672b55ae0b53351833f5ce3128c" - integrity sha512-RtBoKgl/T7GdJEgoMmDQD7J0k80ULHEgVsitmvWKY3NVhkLUFDq5BjblQ4kwjRjk5HgUoFbUyvK2ZP9npgnOUw== +"@abp/virtual-file-explorer@^5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/virtual-file-explorer/-/virtual-file-explorer-5.2.1.tgz#3c4021307213c03f061ecdcb969f21ed3320a094" + integrity sha512-Ppg6zqZBOaryJhkr6KPhuwfPW8NypQDaMGXtCN6AY/usNOf91WlSZJ1uyou0rC6qT3N2ZgM6JIIp+nw9K6K0TA== dependencies: - "@abp/clipboard" "~5.2.0" - "@abp/prismjs" "~5.2.0" + "@abp/clipboard" "~5.2.1" + "@abp/prismjs" "~5.2.1" "@fortawesome/fontawesome-free@^5.15.4": version "5.15.4" diff --git a/npm/lerna.json b/npm/lerna.json index cc0ea12c1d..65e1e1fcbb 100644 --- a/npm/lerna.json +++ b/npm/lerna.json @@ -1,5 +1,5 @@ { - "version": "5.2.0", + "version": "5.2.1", "packages": [ "packs/*" ], diff --git a/npm/ng-packs/lerna.version.json b/npm/ng-packs/lerna.version.json index de45c407c7..4b6e1a83fe 100644 --- a/npm/ng-packs/lerna.version.json +++ b/npm/ng-packs/lerna.version.json @@ -1,5 +1,5 @@ { - "version": "5.2.0", + "version": "5.2.1", "packages": [ "packages/*" ], diff --git a/npm/ng-packs/package.json b/npm/ng-packs/package.json index f6682c61bb..1ebb27c41c 100644 --- a/npm/ng-packs/package.json +++ b/npm/ng-packs/package.json @@ -37,7 +37,7 @@ }, "private": true, "devDependencies": { - "@abp/utils": "~5.2.0", + "@abp/utils": "~5.2.1", "@angular-devkit/build-angular": "13.1.2", "@angular-devkit/build-ng-packagr": "^0.1002.0", "@angular-devkit/schematics-cli": "~12.2.0", @@ -56,17 +56,17 @@ "@angular/platform-browser": "13.1.1", "@angular/platform-browser-dynamic": "13.1.1", "@angular/router": "13.1.1", - "@abp/ng.account": "~5.2.0", - "@abp/ng.account.core": "~5.2.0", - "@abp/ng.core": "~5.2.0", - "@abp/ng.feature-management": "~5.2.0", - "@abp/ng.identity": "~5.2.0", - "@abp/ng.permission-management": "~5.2.0", - "@abp/ng.schematics": "~5.2.0", - "@abp/ng.setting-management": "~5.2.0", - "@abp/ng.tenant-management": "~5.2.0", - "@abp/ng.theme.basic": "~5.2.0", - "@abp/ng.theme.shared": "~5.2.0", + "@abp/ng.account": "~5.2.1", + "@abp/ng.account.core": "~5.2.1", + "@abp/ng.core": "~5.2.1", + "@abp/ng.feature-management": "~5.2.1", + "@abp/ng.identity": "~5.2.1", + "@abp/ng.permission-management": "~5.2.1", + "@abp/ng.schematics": "~5.2.1", + "@abp/ng.setting-management": "~5.2.1", + "@abp/ng.tenant-management": "~5.2.1", + "@abp/ng.theme.basic": "~5.2.1", + "@abp/ng.theme.shared": "~5.2.1", "@fortawesome/fontawesome-free": "^5.15.4", "@ng-bootstrap/ng-bootstrap": "~12.0.0-beta.4", "@ngneat/spectator": "^10.0.0", diff --git a/npm/ng-packs/packages/account-core/package.json b/npm/ng-packs/packages/account-core/package.json index 072077c0df..9a44b1098b 100644 --- a/npm/ng-packs/packages/account-core/package.json +++ b/npm/ng-packs/packages/account-core/package.json @@ -1,14 +1,14 @@ { "name": "@abp/ng.account.core", - "version": "5.2.0", + "version": "5.2.1", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "peerDependencies": { - "@abp/ng.core": "~5.2.0", - "@abp/ng.theme.shared": "~5.2.0", + "@abp/ng.core": "~5.2.1", + "@abp/ng.theme.shared": "~5.2.1", "@angular/common": ">=12.0.0", "@angular/core": ">=12.0.0" }, diff --git a/npm/ng-packs/packages/account/package.json b/npm/ng-packs/packages/account/package.json index 0e28f2af29..57b6c9c77d 100644 --- a/npm/ng-packs/packages/account/package.json +++ b/npm/ng-packs/packages/account/package.json @@ -1,14 +1,14 @@ { "name": "@abp/ng.account", - "version": "5.2.0", + "version": "5.2.1", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "dependencies": { - "@abp/ng.account.core": "~5.2.0", - "@abp/ng.theme.shared": "~5.2.0", + "@abp/ng.account.core": "~5.2.1", + "@abp/ng.theme.shared": "~5.2.1", "tslib": "^2.0.0" }, "publishConfig": { diff --git a/npm/ng-packs/packages/components/package.json b/npm/ng-packs/packages/components/package.json index a5d6ee7466..6b43da3490 100644 --- a/npm/ng-packs/packages/components/package.json +++ b/npm/ng-packs/packages/components/package.json @@ -1,14 +1,14 @@ { "name": "@abp/ng.components", - "version": "5.2.0", + "version": "5.2.1", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "peerDependencies": { - "@abp/ng.core": ">=5.2.0", - "@abp/ng.theme.shared": ">=5.2.0", + "@abp/ng.core": ">=5.2.1", + "@abp/ng.theme.shared": ">=5.2.1", "@ng-bootstrap/ng-bootstrap": ">=10.0.0" }, "dependencies": { diff --git a/npm/ng-packs/packages/core/package.json b/npm/ng-packs/packages/core/package.json index 73dbcd8c7c..564777912e 100644 --- a/npm/ng-packs/packages/core/package.json +++ b/npm/ng-packs/packages/core/package.json @@ -1,13 +1,13 @@ { "name": "@abp/ng.core", - "version": "5.2.0", + "version": "5.2.1", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "dependencies": { - "@abp/utils": "~5.2.0", + "@abp/utils": "~5.2.1", "angular-oauth2-oidc": "^13.0.1", "just-clone": "^3.2.1", "just-compare": "^1.4.0", diff --git a/npm/ng-packs/packages/feature-management/package.json b/npm/ng-packs/packages/feature-management/package.json index 2604d8409c..2cbf8f50bd 100644 --- a/npm/ng-packs/packages/feature-management/package.json +++ b/npm/ng-packs/packages/feature-management/package.json @@ -1,13 +1,13 @@ { "name": "@abp/ng.feature-management", - "version": "5.2.0", + "version": "5.2.1", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "dependencies": { - "@abp/ng.theme.shared": "~5.2.0", + "@abp/ng.theme.shared": "~5.2.1", "tslib": "^2.0.0" }, "publishConfig": { diff --git a/npm/ng-packs/packages/identity/package.json b/npm/ng-packs/packages/identity/package.json index 0958e84609..7c05de9a6f 100644 --- a/npm/ng-packs/packages/identity/package.json +++ b/npm/ng-packs/packages/identity/package.json @@ -1,14 +1,14 @@ { "name": "@abp/ng.identity", - "version": "5.2.0", + "version": "5.2.1", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "dependencies": { - "@abp/ng.permission-management": "~5.2.0", - "@abp/ng.theme.shared": "~5.2.0", + "@abp/ng.permission-management": "~5.2.1", + "@abp/ng.theme.shared": "~5.2.1", "tslib": "^2.0.0" }, "publishConfig": { diff --git a/npm/ng-packs/packages/permission-management/package.json b/npm/ng-packs/packages/permission-management/package.json index b16e381fbd..11fee9b967 100644 --- a/npm/ng-packs/packages/permission-management/package.json +++ b/npm/ng-packs/packages/permission-management/package.json @@ -1,13 +1,13 @@ { "name": "@abp/ng.permission-management", - "version": "5.2.0", + "version": "5.2.1", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "dependencies": { - "@abp/ng.theme.shared": "~5.2.0", + "@abp/ng.theme.shared": "~5.2.1", "tslib": "^2.0.0" }, "publishConfig": { diff --git a/npm/ng-packs/packages/schematics/package.json b/npm/ng-packs/packages/schematics/package.json index a0d648c651..7f6517164f 100644 --- a/npm/ng-packs/packages/schematics/package.json +++ b/npm/ng-packs/packages/schematics/package.json @@ -1,6 +1,6 @@ { "name": "@abp/ng.schematics", - "version": "5.2.0", + "version": "5.2.1", "description": "Schematics that works with ABP Backend", "keywords": [ "schematics" diff --git a/npm/ng-packs/packages/setting-management/package.json b/npm/ng-packs/packages/setting-management/package.json index 005bf4b79e..5af6cdce19 100644 --- a/npm/ng-packs/packages/setting-management/package.json +++ b/npm/ng-packs/packages/setting-management/package.json @@ -1,14 +1,14 @@ { "name": "@abp/ng.setting-management", - "version": "5.2.0", + "version": "5.2.1", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "dependencies": { - "@abp/ng.components": "~5.2.0", - "@abp/ng.theme.shared": "~5.2.0", + "@abp/ng.components": "~5.2.1", + "@abp/ng.theme.shared": "~5.2.1", "tslib": "^2.0.0" }, "publishConfig": { diff --git a/npm/ng-packs/packages/tenant-management/package.json b/npm/ng-packs/packages/tenant-management/package.json index f65fc1f04b..9122c79f6c 100644 --- a/npm/ng-packs/packages/tenant-management/package.json +++ b/npm/ng-packs/packages/tenant-management/package.json @@ -1,14 +1,14 @@ { "name": "@abp/ng.tenant-management", - "version": "5.2.0", + "version": "5.2.1", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "dependencies": { - "@abp/ng.feature-management": "~5.2.0", - "@abp/ng.theme.shared": "~5.2.0", + "@abp/ng.feature-management": "~5.2.1", + "@abp/ng.theme.shared": "~5.2.1", "tslib": "^2.0.0" }, "publishConfig": { diff --git a/npm/ng-packs/packages/theme-basic/package.json b/npm/ng-packs/packages/theme-basic/package.json index d04eb5a901..e40abda535 100644 --- a/npm/ng-packs/packages/theme-basic/package.json +++ b/npm/ng-packs/packages/theme-basic/package.json @@ -1,14 +1,14 @@ { "name": "@abp/ng.theme.basic", - "version": "5.2.0", + "version": "5.2.1", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "dependencies": { - "@abp/ng.account.core": "~5.2.0", - "@abp/ng.theme.shared": "~5.2.0", + "@abp/ng.account.core": "~5.2.1", + "@abp/ng.theme.shared": "~5.2.1", "tslib": "^2.0.0" }, "publishConfig": { diff --git a/npm/ng-packs/packages/theme-shared/package.json b/npm/ng-packs/packages/theme-shared/package.json index 949a72c31e..3d61bd2036 100644 --- a/npm/ng-packs/packages/theme-shared/package.json +++ b/npm/ng-packs/packages/theme-shared/package.json @@ -1,13 +1,13 @@ { "name": "@abp/ng.theme.shared", - "version": "5.2.0", + "version": "5.2.1", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "dependencies": { - "@abp/ng.core": "~5.2.0", + "@abp/ng.core": "~5.2.1", "@fortawesome/fontawesome-free": "^5.15.4", "@ng-bootstrap/ng-bootstrap": "~12.0.0-beta.4", "@ngx-validate/core": "^0.1.1", diff --git a/npm/ng-packs/yarn.lock b/npm/ng-packs/yarn.lock index 525a2a5f68..5b3431e52d 100644 --- a/npm/ng-packs/yarn.lock +++ b/npm/ng-packs/yarn.lock @@ -2,72 +2,72 @@ # yarn lockfile v1 -"@abp/ng.account.core@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/ng.account.core/-/ng.account.core-5.2.0-rc.2.tgz#d9d0ac90d3811e5c282c429f89007976fce22c7f" - integrity sha512-Zg0p6gjEH3B0NiFLRtmlywtcsvLs04F0zvE8pPFnnpi+pE3zgAzvjvNEJlJrLAZc/eLtPJAjMb6Tj4PfzdxcNg== +"@abp/ng.account.core@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/ng.account.core/-/ng.account.core-5.2.0.tgz#52b154b915a793d23bb5a355af83fbd0b7daca4d" + integrity sha512-8duxfsll++Lg30hRfRwaIvYuphQSYUo87wE61VEDZtXQN01aQqbrfs4kLWd+GKYGRs0+DcSkoSvXxqhA0XDQaQ== dependencies: tslib "^2.0.0" -"@abp/ng.account@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/ng.account/-/ng.account-5.2.0-rc.2.tgz#d424fd3adaed674a8504dc082b71e6b1582d8ff1" - integrity sha512-+AnTENbpTUUim4n6Osy6krBccv42WzmByg/po+07JexNDE0d4YS2ldsX08nXBALs4xSgAjqQ36ecFSRBP7nhPA== +"@abp/ng.account@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/ng.account/-/ng.account-5.2.0.tgz#53ef83fa766e276cdc455c61ab20908ead2b9c65" + integrity sha512-R9zVcxDDNXDvPJ75DcwEV6hcrLSbcWHZwTW83eRw26RvyhNZpYiVpO85n01pLmHjCZ020Eij+AjF6B5Fo3Me0Q== dependencies: - "@abp/ng.account.core" "~5.2.0-rc.2" - "@abp/ng.theme.shared" "~5.2.0-rc.2" + "@abp/ng.account.core" "~5.2.0" + "@abp/ng.theme.shared" "~5.2.0" tslib "^2.0.0" -"@abp/ng.components@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/ng.components/-/ng.components-5.2.0-rc.2.tgz#d7ccdaef5198daac4e65eea130e73e0f2262d1ff" - integrity sha512-DaP7vEHctffnatV2yQM7l0ya0pnPnwxEcqIWj3cUynOokop8GpLZYt+8tyDaBWN60QBcAY/88f+FqnOZXPesYw== +"@abp/ng.components@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/ng.components/-/ng.components-5.2.0.tgz#93888659f8809a82ac1cb713af39ace4a445cca4" + integrity sha512-YklPX5HZwQasGk45ShDGuan3DORK81uSerFCxlWeaICafL2CkkQr2NsOwi1ki62wqbmJdyI255XrquyCklB9Jw== dependencies: chart.js "^3.5.1" ng-zorro-antd "^13.0.0" tslib "^2.0.0" -"@abp/ng.core@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/ng.core/-/ng.core-5.2.0-rc.2.tgz#782bcfe5b112ab00c995994efcf62a67171bd570" - integrity sha512-6xENUcD71y90WXfOwc8M92RruWMgVsHzntC1kRxq5JN1VmjLHACUmkwMvXct3V7PrYe0ntCDnt2/gjYqmyJ5sw== +"@abp/ng.core@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/ng.core/-/ng.core-5.2.0.tgz#aeffa1f95e9e198ef5d35ed71e640cfcb04be903" + integrity sha512-G/DHBi8p55P2dkXNaiFFOiPQ22F6QATONO1nc7vYb0IhoCrwCYrro/wUuVq65Rypo1Uy4Y2VRiVnjsjKKQZP6A== dependencies: - "@abp/utils" "~5.2.0-rc.2" + "@abp/utils" "~5.2.0" angular-oauth2-oidc "^13.0.1" just-clone "^3.2.1" just-compare "^1.4.0" ts-toolbelt "6.15.4" tslib "^2.0.0" -"@abp/ng.feature-management@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/ng.feature-management/-/ng.feature-management-5.2.0-rc.2.tgz#d680d92f9f73941fea38beae882f237e73509ee9" - integrity sha512-h4rNOD+DXcc6uUFz3uLA4uzxF7EyXKaDbA1ZAzdkP5HM9zUriOnfWpJnIorTCAc+GLFws2HCz8LB71jp0ETjKw== +"@abp/ng.feature-management@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/ng.feature-management/-/ng.feature-management-5.2.0.tgz#c250e20500514d5013a93882808cf7a2f8df80f5" + integrity sha512-yTT3oQlg7mAD0FhQ/k3/JrCyxLIy/ti5QJkAuc4moA0fmRiGAaTKZC2DZDF8EWRwK5ywk9oLDidjLbe+fzg83Q== dependencies: - "@abp/ng.theme.shared" "~5.2.0-rc.2" + "@abp/ng.theme.shared" "~5.2.0" tslib "^2.0.0" -"@abp/ng.identity@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/ng.identity/-/ng.identity-5.2.0-rc.2.tgz#8a46bdcbc9ae5d34d38b5e1435cde79b63046865" - integrity sha512-xLQJG/P4Rv156H6UsASgPKHIurDMjpvPDUvMpNcCgGGfOMglIvFxRy5c5O8bKDJ0bOk8L3vp3aAnXchVXzeP9g== +"@abp/ng.identity@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/ng.identity/-/ng.identity-5.2.0.tgz#12e1fa69fad69c7f7c822c0f836694e19a63abbb" + integrity sha512-6PLStuk80YPs7N0j8oVijjUhjrrPOv0/ezyaH6M4YNQ88+VZa/0qECJznPyfG2kKpcST0VhFTaoSw+c75utmZg== dependencies: - "@abp/ng.permission-management" "~5.2.0-rc.2" - "@abp/ng.theme.shared" "~5.2.0-rc.2" + "@abp/ng.permission-management" "~5.2.0" + "@abp/ng.theme.shared" "~5.2.0" tslib "^2.0.0" -"@abp/ng.permission-management@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/ng.permission-management/-/ng.permission-management-5.2.0-rc.2.tgz#71288a703606fde9d87925cdb17bde43ebefaad4" - integrity sha512-Oya9Vm86DDJQPe6U3yfAUzMW/rOnFxkpRrOB0iQ++CBJnixGO/VpdRfUzMzR+kXYz9l5EIVlGUxrUf4j9EBdlg== +"@abp/ng.permission-management@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/ng.permission-management/-/ng.permission-management-5.2.0.tgz#f22a45f8b4c359ba635c2280e58f13e89180a836" + integrity sha512-/1u2C/apoRJFreaoyiZvBEQ5zpQWiDc5kbtBwpLx3Ese7ZGl5eH/97UWuLodSsVpDQv0zpgePt9bK5adJW+ePw== dependencies: - "@abp/ng.theme.shared" "~5.2.0-rc.2" + "@abp/ng.theme.shared" "~5.2.0" tslib "^2.0.0" -"@abp/ng.schematics@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/ng.schematics/-/ng.schematics-5.2.0-rc.2.tgz#184599787e0b4c070945ffaa29ef4ce1fb5021fa" - integrity sha512-3GXPOfNol8rkPn5YV58bWpVdEp7XN2ts0j5zHRVX/xpGKxb0A4iACZYWKHpKyJHfbihYsIaQAbFT/SO563oGxg== +"@abp/ng.schematics@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/ng.schematics/-/ng.schematics-5.2.0.tgz#d5a53a00784a896b0657643ab3e74b19ce9609f2" + integrity sha512-qtl2RsfCCkIav21Ml628hRQwXKVC5emg2m40wCX4fK2uCdWZmyO791GScoYg9ScWUY0PZyA119XA2mXMokVFNA== dependencies: "@angular-devkit/core" "~11.0.2" "@angular-devkit/schematics" "~11.0.2" @@ -76,39 +76,39 @@ should-quote "^1.0.0" typescript "~3.9.2" -"@abp/ng.setting-management@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/ng.setting-management/-/ng.setting-management-5.2.0-rc.2.tgz#eb78c571ef8ee684adc3900ae6f929cbeb3fbbdd" - integrity sha512-fZb93nwCLCYzFsPspiCGWs5UdcB3rdj+b1ooRt7LVVawYPa/Oz/xyRRQA1HNQN+8Xwr9JNT5NtgFnBhU6zvwZQ== +"@abp/ng.setting-management@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/ng.setting-management/-/ng.setting-management-5.2.0.tgz#a4054d6a0109e1c60f17c09e35c31c1f013e17af" + integrity sha512-EChCIhTHrPuWJWpg7lKt0dGOz4L3YmFVlv5v5EAQjN92hN7cNsRhaa259Zke8SDSYSAE3GpGNLoJgSxxeqoUvQ== dependencies: - "@abp/ng.components" "~5.2.0-rc.2" - "@abp/ng.theme.shared" "~5.2.0-rc.2" + "@abp/ng.components" "~5.2.0" + "@abp/ng.theme.shared" "~5.2.0" tslib "^2.0.0" -"@abp/ng.tenant-management@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/ng.tenant-management/-/ng.tenant-management-5.2.0-rc.2.tgz#9974e80025a62af97dbf8378a34977b8048207d3" - integrity sha512-0LInV5TMxKBEnXkulgpf/WCQmE0Iv8WS+yOhVTWAuo8tcZr6CTe4acU+g1q3qj/DWpseB+hIz7rMjEwPeg59Iw== +"@abp/ng.tenant-management@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/ng.tenant-management/-/ng.tenant-management-5.2.0.tgz#3ee3a09ce7398813ea9ab476f25f7e0e9cdcbf6d" + integrity sha512-AkFGc2MppnFP7hVbnJVg177tNzOnr2TyqezJfNqPdRx4tHoRGIb7zviZVp1IV+kh8btU22/sSWT/RfL+WBorgg== dependencies: - "@abp/ng.feature-management" "~5.2.0-rc.2" - "@abp/ng.theme.shared" "~5.2.0-rc.2" + "@abp/ng.feature-management" "~5.2.0" + "@abp/ng.theme.shared" "~5.2.0" tslib "^2.0.0" -"@abp/ng.theme.basic@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/ng.theme.basic/-/ng.theme.basic-5.2.0-rc.2.tgz#9da43eafb8aecc557892979e60a21f005afdca26" - integrity sha512-lwT4kjS9jDZjg9FNYN32I46uU+37thWLqDKjMCncgyOpAj98uvQTzt/ZAo1hNpO1DHFDYmI72dUKiKzMYiPhYQ== +"@abp/ng.theme.basic@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/ng.theme.basic/-/ng.theme.basic-5.2.0.tgz#f9112db7d68230bfadd5ee009144e23512c9b46a" + integrity sha512-rRAKzYdrVChIOAZwnEfER9/6iFjxXtGAphI7HkI7faWKpDGQmEOsxXNKdjyOlgnXJ9WPxLkovuOi8dXY+kzPXg== dependencies: - "@abp/ng.account.core" "~5.2.0-rc.2" - "@abp/ng.theme.shared" "~5.2.0-rc.2" + "@abp/ng.account.core" "~5.2.0" + "@abp/ng.theme.shared" "~5.2.0" tslib "^2.0.0" -"@abp/ng.theme.shared@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/ng.theme.shared/-/ng.theme.shared-5.2.0-rc.2.tgz#ab103b1c76a89e5576fe940b3f9ea078d22f3fb5" - integrity sha512-dRPr47e21vS7VfXuR+QaLfDPYP1AtwokqUq1agihc7ZqB7/cExfyVRfUSwhgGGT0tzekJAqz+EjJWcA1V6kVyw== +"@abp/ng.theme.shared@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@abp/ng.theme.shared/-/ng.theme.shared-5.2.0.tgz#721cd849c62ffd988329c22c414a831683bbff83" + integrity sha512-ohHSvLAuMp5ZNgtl0cRAp4bc1aAKvbLsEbo7oFUL47UR/gwNuvyQ22PQsiJ8pEF4n/fIHRypp+BIAq8R2sEmXg== dependencies: - "@abp/ng.core" "~5.2.0-rc.2" + "@abp/ng.core" "~5.2.0" "@fortawesome/fontawesome-free" "^5.15.4" "@ng-bootstrap/ng-bootstrap" "~12.0.0-beta.4" "@ngx-validate/core" "^0.1.1" @@ -124,10 +124,10 @@ dependencies: just-compare "^1.3.0" -"@abp/utils@~5.2.0-rc.2": - version "5.2.0-rc.2" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-5.2.0-rc.2.tgz#1280059ff3e948ae0827eaf06d916e5a90f8907b" - integrity sha512-/mo4dSXPkhCEbqyKunuURcF1cEzuJqRTPOGpjSrjDwOgymVSWp/AqqjJPBXuc4qrMfB4q9y+Iod5nslXp2cXeA== +"@abp/utils@~5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-5.2.1.tgz#7c2d20f1bcc8cf9f90c060ed31ed3a114a463064" + integrity sha512-9hxI24aRZCnxCP+WsOoCltSg4YqG9WtW06t9/f6hFO9B0udXIKyV+95Ndipca/R1G94Snx81ifSwAa+DHbFfvQ== dependencies: just-compare "^1.3.0" diff --git a/npm/packs/anchor-js/package.json b/npm/packs/anchor-js/package.json index b4afd214c3..bfae9b3f64 100644 --- a/npm/packs/anchor-js/package.json +++ b/npm/packs/anchor-js/package.json @@ -1,11 +1,11 @@ { - "version": "5.2.0", + "version": "5.2.1", "name": "@abp/anchor-js", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~5.2.0", + "@abp/core": "~5.2.1", "anchor-js": "^4.3.1" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/aspnetcore.components.server.basictheme/package.json b/npm/packs/aspnetcore.components.server.basictheme/package.json index 5a00f468cf..f449a068c8 100644 --- a/npm/packs/aspnetcore.components.server.basictheme/package.json +++ b/npm/packs/aspnetcore.components.server.basictheme/package.json @@ -1,11 +1,11 @@ { - "version": "5.2.0", + "version": "5.2.1", "name": "@abp/aspnetcore.components.server.basictheme", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/aspnetcore.components.server.theming": "~5.2.0" + "@abp/aspnetcore.components.server.theming": "~5.2.1" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" } diff --git a/npm/packs/aspnetcore.components.server.theming/package.json b/npm/packs/aspnetcore.components.server.theming/package.json index c31d4f4b3a..055934beac 100644 --- a/npm/packs/aspnetcore.components.server.theming/package.json +++ b/npm/packs/aspnetcore.components.server.theming/package.json @@ -1,12 +1,12 @@ { - "version": "5.2.0", + "version": "5.2.1", "name": "@abp/aspnetcore.components.server.theming", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/bootstrap": "~5.2.0", - "@abp/font-awesome": "~5.2.0" + "@abp/bootstrap": "~5.2.1", + "@abp/font-awesome": "~5.2.1" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" } diff --git a/npm/packs/aspnetcore.mvc.ui.theme.basic/package.json b/npm/packs/aspnetcore.mvc.ui.theme.basic/package.json index 0cf225265d..31a154e12c 100644 --- a/npm/packs/aspnetcore.mvc.ui.theme.basic/package.json +++ b/npm/packs/aspnetcore.mvc.ui.theme.basic/package.json @@ -1,5 +1,5 @@ { - "version": "5.2.0", + "version": "5.2.1", "name": "@abp/aspnetcore.mvc.ui.theme.basic", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.shared": "~5.2.0" + "@abp/aspnetcore.mvc.ui.theme.shared": "~5.2.1" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" } diff --git a/npm/packs/aspnetcore.mvc.ui.theme.shared/package.json b/npm/packs/aspnetcore.mvc.ui.theme.shared/package.json index 73754f41fd..4ce48a5cd5 100644 --- a/npm/packs/aspnetcore.mvc.ui.theme.shared/package.json +++ b/npm/packs/aspnetcore.mvc.ui.theme.shared/package.json @@ -1,5 +1,5 @@ { - "version": "5.2.0", + "version": "5.2.1", "name": "@abp/aspnetcore.mvc.ui.theme.shared", "repository": { "type": "git", @@ -10,20 +10,20 @@ "access": "public" }, "dependencies": { - "@abp/aspnetcore.mvc.ui": "~5.2.0", - "@abp/bootstrap": "~5.2.0", - "@abp/bootstrap-datepicker": "~5.2.0", - "@abp/datatables.net-bs5": "~5.2.0", - "@abp/font-awesome": "~5.2.0", - "@abp/jquery-form": "~5.2.0", - "@abp/jquery-validation-unobtrusive": "~5.2.0", - "@abp/lodash": "~5.2.0", - "@abp/luxon": "~5.2.0", - "@abp/malihu-custom-scrollbar-plugin": "~5.2.0", - "@abp/select2": "~5.2.0", - "@abp/sweetalert2": "~5.2.0", - "@abp/timeago": "~5.2.0", - "@abp/toastr": "~5.2.0" + "@abp/aspnetcore.mvc.ui": "~5.2.1", + "@abp/bootstrap": "~5.2.1", + "@abp/bootstrap-datepicker": "~5.2.1", + "@abp/datatables.net-bs5": "~5.2.1", + "@abp/font-awesome": "~5.2.1", + "@abp/jquery-form": "~5.2.1", + "@abp/jquery-validation-unobtrusive": "~5.2.1", + "@abp/lodash": "~5.2.1", + "@abp/luxon": "~5.2.1", + "@abp/malihu-custom-scrollbar-plugin": "~5.2.1", + "@abp/select2": "~5.2.1", + "@abp/sweetalert2": "~5.2.1", + "@abp/timeago": "~5.2.1", + "@abp/toastr": "~5.2.1" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" } diff --git a/npm/packs/aspnetcore.mvc.ui/package-lock.json b/npm/packs/aspnetcore.mvc.ui/package-lock.json index f144bdcd42..9147176dd2 100644 --- a/npm/packs/aspnetcore.mvc.ui/package-lock.json +++ b/npm/packs/aspnetcore.mvc.ui/package-lock.json @@ -1,6 +1,6 @@ { "name": "@abp/aspnetcore.mvc.ui", - "version": "5.2.0", + "version": "5.2.1", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/npm/packs/aspnetcore.mvc.ui/package.json b/npm/packs/aspnetcore.mvc.ui/package.json index d9bb8f7512..9a9809573d 100644 --- a/npm/packs/aspnetcore.mvc.ui/package.json +++ b/npm/packs/aspnetcore.mvc.ui/package.json @@ -1,5 +1,5 @@ { - "version": "5.2.0", + "version": "5.2.1", "name": "@abp/aspnetcore.mvc.ui", "repository": { "type": "git", diff --git a/npm/packs/blogging/package.json b/npm/packs/blogging/package.json index 7ed7d2b3af..58360f41e4 100644 --- a/npm/packs/blogging/package.json +++ b/npm/packs/blogging/package.json @@ -1,14 +1,14 @@ { - "version": "5.2.0", + "version": "5.2.1", "name": "@abp/blogging", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.shared": "~5.2.0", - "@abp/owl.carousel": "~5.2.0", - "@abp/prismjs": "~5.2.0", - "@abp/tui-editor": "~5.2.0" + "@abp/aspnetcore.mvc.ui.theme.shared": "~5.2.1", + "@abp/owl.carousel": "~5.2.1", + "@abp/prismjs": "~5.2.1", + "@abp/tui-editor": "~5.2.1" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" } diff --git a/npm/packs/bootstrap-datepicker/package.json b/npm/packs/bootstrap-datepicker/package.json index 51d9df5208..414748fc4f 100644 --- a/npm/packs/bootstrap-datepicker/package.json +++ b/npm/packs/bootstrap-datepicker/package.json @@ -1,5 +1,5 @@ { - "version": "5.2.0", + "version": "5.2.1", "name": "@abp/bootstrap-datepicker", "repository": { "type": "git", diff --git a/npm/packs/bootstrap/package.json b/npm/packs/bootstrap/package.json index 584c8a8726..07b88bf56e 100644 --- a/npm/packs/bootstrap/package.json +++ b/npm/packs/bootstrap/package.json @@ -1,5 +1,5 @@ { - "version": "5.2.0", + "version": "5.2.1", "name": "@abp/bootstrap", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/core": "~5.2.0", + "@abp/core": "~5.2.1", "bootstrap": "^5.1.3" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/chart.js/package.json b/npm/packs/chart.js/package.json index 6fad7e299d..393c7a0fc3 100644 --- a/npm/packs/chart.js/package.json +++ b/npm/packs/chart.js/package.json @@ -1,5 +1,5 @@ { - "version": "5.2.0", + "version": "5.2.1", "name": "@abp/chart.js", "publishConfig": { "access": "public" diff --git a/npm/packs/clipboard/package.json b/npm/packs/clipboard/package.json index 084700b394..2197d7ac9b 100644 --- a/npm/packs/clipboard/package.json +++ b/npm/packs/clipboard/package.json @@ -1,11 +1,11 @@ { - "version": "5.2.0", + "version": "5.2.1", "name": "@abp/clipboard", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~5.2.0", + "@abp/core": "~5.2.1", "clipboard": "^2.0.8" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/cms-kit.admin/package.json b/npm/packs/cms-kit.admin/package.json index 833ee487b3..c7c02508b4 100644 --- a/npm/packs/cms-kit.admin/package.json +++ b/npm/packs/cms-kit.admin/package.json @@ -1,14 +1,14 @@ { - "version": "5.2.0", + "version": "5.2.1", "name": "@abp/cms-kit.admin", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/jstree": "~5.2.0", - "@abp/slugify": "~5.2.0", - "@abp/tui-editor": "~5.2.0", - "@abp/uppy": "~5.2.0" + "@abp/jstree": "~5.2.1", + "@abp/slugify": "~5.2.1", + "@abp/tui-editor": "~5.2.1", + "@abp/uppy": "~5.2.1" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" } diff --git a/npm/packs/cms-kit.public/package.json b/npm/packs/cms-kit.public/package.json index 0743a17365..b16a5f322f 100644 --- a/npm/packs/cms-kit.public/package.json +++ b/npm/packs/cms-kit.public/package.json @@ -1,12 +1,12 @@ { - "version": "5.2.0", + "version": "5.2.1", "name": "@abp/cms-kit.public", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/highlight.js": "~5.2.0", - "@abp/star-rating-svg": "~5.2.0" + "@abp/highlight.js": "~5.2.1", + "@abp/star-rating-svg": "~5.2.1" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" } diff --git a/npm/packs/cms-kit/package.json b/npm/packs/cms-kit/package.json index 9692b685a3..90d02d96fa 100644 --- a/npm/packs/cms-kit/package.json +++ b/npm/packs/cms-kit/package.json @@ -1,12 +1,12 @@ { - "version": "5.2.0", + "version": "5.2.1", "name": "@abp/cms-kit", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/cms-kit.admin": "~5.2.0", - "@abp/cms-kit.public": "~5.2.0" + "@abp/cms-kit.admin": "~5.2.1", + "@abp/cms-kit.public": "~5.2.1" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" } diff --git a/npm/packs/codemirror/package.json b/npm/packs/codemirror/package.json index 83210fa022..c9d5c77fdc 100644 --- a/npm/packs/codemirror/package.json +++ b/npm/packs/codemirror/package.json @@ -1,11 +1,11 @@ { - "version": "5.2.0", + "version": "5.2.1", "name": "@abp/codemirror", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~5.2.0", + "@abp/core": "~5.2.1", "codemirror": "^5.65.1" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/core/package.json b/npm/packs/core/package.json index a145edea91..8a82924f24 100644 --- a/npm/packs/core/package.json +++ b/npm/packs/core/package.json @@ -1,5 +1,5 @@ { - "version": "5.2.0", + "version": "5.2.1", "name": "@abp/core", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/utils": "~5.2.0" + "@abp/utils": "~5.2.1" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" } diff --git a/npm/packs/cropperjs/package.json b/npm/packs/cropperjs/package.json index e1e7206160..ab4b7fd4f5 100644 --- a/npm/packs/cropperjs/package.json +++ b/npm/packs/cropperjs/package.json @@ -1,11 +1,11 @@ { - "version": "5.2.0", + "version": "5.2.1", "name": "@abp/cropperjs", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~5.2.0", + "@abp/core": "~5.2.1", "cropperjs": "^1.5.12" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/datatables.net-bs4/package.json b/npm/packs/datatables.net-bs4/package.json index f2432d1966..a6628e6c28 100644 --- a/npm/packs/datatables.net-bs4/package.json +++ b/npm/packs/datatables.net-bs4/package.json @@ -1,5 +1,5 @@ { - "version": "5.2.0", + "version": "5.2.1", "name": "@abp/datatables.net-bs4", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/datatables.net": "~5.2.0", + "@abp/datatables.net": "~5.2.1", "datatables.net-bs4": "^1.11.4" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/datatables.net-bs5/package.json b/npm/packs/datatables.net-bs5/package.json index 7f2c7d440a..9599f3f3fb 100644 --- a/npm/packs/datatables.net-bs5/package.json +++ b/npm/packs/datatables.net-bs5/package.json @@ -1,11 +1,11 @@ { - "version": "5.2.0", + "version": "5.2.1", "name": "@abp/datatables.net-bs5", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/datatables.net": "~5.2.0", + "@abp/datatables.net": "~5.2.1", "datatables.net-bs5": "^1.11.4" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/datatables.net/package.json b/npm/packs/datatables.net/package.json index aafff8b6c9..05ab5a041f 100644 --- a/npm/packs/datatables.net/package.json +++ b/npm/packs/datatables.net/package.json @@ -1,5 +1,5 @@ { - "version": "5.2.0", + "version": "5.2.1", "name": "@abp/datatables.net", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/jquery": "~5.2.0", + "@abp/jquery": "~5.2.1", "datatables.net": "^1.11.4" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/docs/package.json b/npm/packs/docs/package.json index cbbfabbb38..42181c3fb4 100644 --- a/npm/packs/docs/package.json +++ b/npm/packs/docs/package.json @@ -1,15 +1,15 @@ { - "version": "5.2.0", + "version": "5.2.1", "name": "@abp/docs", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/anchor-js": "~5.2.0", - "@abp/clipboard": "~5.2.0", - "@abp/malihu-custom-scrollbar-plugin": "~5.2.0", - "@abp/popper.js": "~5.2.0", - "@abp/prismjs": "~5.2.0" + "@abp/anchor-js": "~5.2.1", + "@abp/clipboard": "~5.2.1", + "@abp/malihu-custom-scrollbar-plugin": "~5.2.1", + "@abp/popper.js": "~5.2.1", + "@abp/prismjs": "~5.2.1" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" } diff --git a/npm/packs/flag-icon-css/package.json b/npm/packs/flag-icon-css/package.json index 7a6f8e4e39..cd90d02ce5 100644 --- a/npm/packs/flag-icon-css/package.json +++ b/npm/packs/flag-icon-css/package.json @@ -1,5 +1,5 @@ { - "version": "5.2.0", + "version": "5.2.1", "name": "@abp/flag-icon-css", "publishConfig": { "access": "public" diff --git a/npm/packs/font-awesome/package.json b/npm/packs/font-awesome/package.json index f50fcfdbcf..f34d2a867a 100644 --- a/npm/packs/font-awesome/package.json +++ b/npm/packs/font-awesome/package.json @@ -1,5 +1,5 @@ { - "version": "5.2.0", + "version": "5.2.1", "name": "@abp/font-awesome", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/core": "~5.2.0", + "@abp/core": "~5.2.1", "@fortawesome/fontawesome-free": "^5.15.4" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/highlight.js/package.json b/npm/packs/highlight.js/package.json index c1444bfd86..fce1c0e212 100644 --- a/npm/packs/highlight.js/package.json +++ b/npm/packs/highlight.js/package.json @@ -1,11 +1,11 @@ { - "version": "5.2.0", + "version": "5.2.1", "name": "@abp/highlight.js", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~5.2.0", + "@abp/core": "~5.2.1", "@highlightjs/cdn-assets": "~11.4.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/jquery-form/package.json b/npm/packs/jquery-form/package.json index b601b41a1c..30384f80f9 100644 --- a/npm/packs/jquery-form/package.json +++ b/npm/packs/jquery-form/package.json @@ -1,5 +1,5 @@ { - "version": "5.2.0", + "version": "5.2.1", "name": "@abp/jquery-form", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/jquery": "~5.2.0", + "@abp/jquery": "~5.2.1", "jquery-form": "^4.3.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/jquery-validation-unobtrusive/package.json b/npm/packs/jquery-validation-unobtrusive/package.json index 4b243f93b9..e71325e186 100644 --- a/npm/packs/jquery-validation-unobtrusive/package.json +++ b/npm/packs/jquery-validation-unobtrusive/package.json @@ -1,5 +1,5 @@ { - "version": "5.2.0", + "version": "5.2.1", "name": "@abp/jquery-validation-unobtrusive", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/jquery-validation": "~5.2.0", + "@abp/jquery-validation": "~5.2.1", "jquery-validation-unobtrusive": "^3.2.12" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/jquery-validation/package.json b/npm/packs/jquery-validation/package.json index 5dace5aac3..13154cfbcb 100644 --- a/npm/packs/jquery-validation/package.json +++ b/npm/packs/jquery-validation/package.json @@ -1,5 +1,5 @@ { - "version": "5.2.0", + "version": "5.2.1", "name": "@abp/jquery-validation", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/jquery": "~5.2.0", + "@abp/jquery": "~5.2.1", "jquery-validation": "^1.19.3" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/jquery/package.json b/npm/packs/jquery/package.json index 9b57458d57..bb6780647f 100644 --- a/npm/packs/jquery/package.json +++ b/npm/packs/jquery/package.json @@ -1,5 +1,5 @@ { - "version": "5.2.0", + "version": "5.2.1", "name": "@abp/jquery", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/core": "~5.2.0", + "@abp/core": "~5.2.1", "jquery": "~3.6.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/jstree/package.json b/npm/packs/jstree/package.json index 14b6a24dee..2dd6eae521 100644 --- a/npm/packs/jstree/package.json +++ b/npm/packs/jstree/package.json @@ -1,11 +1,11 @@ { - "version": "5.2.0", + "version": "5.2.1", "name": "@abp/jstree", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/jquery": "~5.2.0", + "@abp/jquery": "~5.2.1", "jstree": "^3.3.12" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/lodash/package.json b/npm/packs/lodash/package.json index b75632112f..3e8a5473ca 100644 --- a/npm/packs/lodash/package.json +++ b/npm/packs/lodash/package.json @@ -1,5 +1,5 @@ { - "version": "5.2.0", + "version": "5.2.1", "name": "@abp/lodash", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/core": "~5.2.0", + "@abp/core": "~5.2.1", "lodash": "^4.17.21" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/luxon/package.json b/npm/packs/luxon/package.json index 4dbf8122c6..89d57e2360 100644 --- a/npm/packs/luxon/package.json +++ b/npm/packs/luxon/package.json @@ -1,5 +1,5 @@ { - "version": "5.2.0", + "version": "5.2.1", "name": "@abp/luxon", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/core": "~5.2.0", + "@abp/core": "~5.2.1", "luxon": "^2.3.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/malihu-custom-scrollbar-plugin/package.json b/npm/packs/malihu-custom-scrollbar-plugin/package.json index ed504ecdee..665fc7b624 100644 --- a/npm/packs/malihu-custom-scrollbar-plugin/package.json +++ b/npm/packs/malihu-custom-scrollbar-plugin/package.json @@ -1,5 +1,5 @@ { - "version": "5.2.0", + "version": "5.2.1", "name": "@abp/malihu-custom-scrollbar-plugin", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/core": "~5.2.0", + "@abp/core": "~5.2.1", "malihu-custom-scrollbar-plugin": "^3.1.5" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/markdown-it/package.json b/npm/packs/markdown-it/package.json index 1f2d66e2de..f737132f50 100644 --- a/npm/packs/markdown-it/package.json +++ b/npm/packs/markdown-it/package.json @@ -1,11 +1,11 @@ { - "version": "5.2.0", + "version": "5.2.1", "name": "@abp/markdown-it", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~5.2.0", + "@abp/core": "~5.2.1", "markdown-it": "^12.3.2" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/owl.carousel/package.json b/npm/packs/owl.carousel/package.json index 3aeeb9ff9e..64d5bc8e6e 100644 --- a/npm/packs/owl.carousel/package.json +++ b/npm/packs/owl.carousel/package.json @@ -1,11 +1,11 @@ { - "version": "5.2.0", + "version": "5.2.1", "name": "@abp/owl.carousel", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~5.2.0", + "@abp/core": "~5.2.1", "owl.carousel": "^2.3.4" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/popper.js/package.json b/npm/packs/popper.js/package.json index 0248d89630..55ef39b872 100644 --- a/npm/packs/popper.js/package.json +++ b/npm/packs/popper.js/package.json @@ -1,11 +1,11 @@ { - "version": "5.2.0", + "version": "5.2.1", "name": "@abp/popper.js", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~5.2.0", + "@abp/core": "~5.2.1", "@popperjs/core": "^2.11.2" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/prismjs/package.json b/npm/packs/prismjs/package.json index 9c3125a19f..6b48d7e709 100644 --- a/npm/packs/prismjs/package.json +++ b/npm/packs/prismjs/package.json @@ -1,12 +1,12 @@ { - "version": "5.2.0", + "version": "5.2.1", "name": "@abp/prismjs", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/clipboard": "~5.2.0", - "@abp/core": "~5.2.0", + "@abp/clipboard": "~5.2.1", + "@abp/core": "~5.2.1", "prismjs": "^1.26.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/select2/package.json b/npm/packs/select2/package.json index d0d35d120b..86fb70e7a9 100644 --- a/npm/packs/select2/package.json +++ b/npm/packs/select2/package.json @@ -1,5 +1,5 @@ { - "version": "5.2.0", + "version": "5.2.1", "name": "@abp/select2", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/core": "~5.2.0", + "@abp/core": "~5.2.1", "select2": "^4.0.13" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/signalr/package.json b/npm/packs/signalr/package.json index 0f64e92e8d..9db6bd9df1 100644 --- a/npm/packs/signalr/package.json +++ b/npm/packs/signalr/package.json @@ -1,11 +1,11 @@ { - "version": "5.2.0", + "version": "5.2.1", "name": "@abp/signalr", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~5.2.0", + "@abp/core": "~5.2.1", "@microsoft/signalr": "~6.0.1" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/slugify/package.json b/npm/packs/slugify/package.json index f81a0b4657..3bccf0b808 100644 --- a/npm/packs/slugify/package.json +++ b/npm/packs/slugify/package.json @@ -1,5 +1,5 @@ { - "version": "5.2.0", + "version": "5.2.1", "name": "@abp/slugify", "publishConfig": { "access": "public" diff --git a/npm/packs/star-rating-svg/package.json b/npm/packs/star-rating-svg/package.json index b26eb69e79..1a458a374e 100644 --- a/npm/packs/star-rating-svg/package.json +++ b/npm/packs/star-rating-svg/package.json @@ -1,11 +1,11 @@ { - "version": "5.2.0", + "version": "5.2.1", "name": "@abp/star-rating-svg", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/jquery": "~5.2.0", + "@abp/jquery": "~5.2.1", "star-rating-svg": "^3.5.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/sweetalert2/package.json b/npm/packs/sweetalert2/package.json index 65beade730..7373282e71 100644 --- a/npm/packs/sweetalert2/package.json +++ b/npm/packs/sweetalert2/package.json @@ -1,5 +1,5 @@ { - "version": "5.2.0", + "version": "5.2.1", "name": "@abp/sweetalert2", "publishConfig": { "access": "public" @@ -10,7 +10,7 @@ "directory": "npm/packs/sweetalert2" }, "dependencies": { - "@abp/core": "~5.2.0", + "@abp/core": "~5.2.1", "sweetalert2": "^11.3.6" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/timeago/package.json b/npm/packs/timeago/package.json index b09c6f0bdf..d8a3016057 100644 --- a/npm/packs/timeago/package.json +++ b/npm/packs/timeago/package.json @@ -1,5 +1,5 @@ { - "version": "5.2.0", + "version": "5.2.1", "name": "@abp/timeago", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/jquery": "~5.2.0", + "@abp/jquery": "~5.2.1", "timeago": "^1.6.7" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/toastr/package.json b/npm/packs/toastr/package.json index b6d2bec0cc..c3acb8cefd 100644 --- a/npm/packs/toastr/package.json +++ b/npm/packs/toastr/package.json @@ -1,5 +1,5 @@ { - "version": "5.2.0", + "version": "5.2.1", "name": "@abp/toastr", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/jquery": "~5.2.0", + "@abp/jquery": "~5.2.1", "toastr": "^2.1.4" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/tui-editor/package.json b/npm/packs/tui-editor/package.json index 3ca4549cb4..b229a31256 100644 --- a/npm/packs/tui-editor/package.json +++ b/npm/packs/tui-editor/package.json @@ -1,12 +1,12 @@ { - "version": "5.2.0", + "version": "5.2.1", "name": "@abp/tui-editor", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/jquery": "~5.2.0", - "@abp/prismjs": "~5.2.0" + "@abp/jquery": "~5.2.1", + "@abp/prismjs": "~5.2.1" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" } diff --git a/npm/packs/uppy/package.json b/npm/packs/uppy/package.json index 628aff8fb5..ffe8b4080a 100644 --- a/npm/packs/uppy/package.json +++ b/npm/packs/uppy/package.json @@ -1,11 +1,11 @@ { - "version": "5.2.0", + "version": "5.2.1", "name": "@abp/uppy", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~5.2.0", + "@abp/core": "~5.2.1", "uppy": "^1.16.1" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/utils/package.json b/npm/packs/utils/package.json index ee4326538a..d03f9bd89f 100644 --- a/npm/packs/utils/package.json +++ b/npm/packs/utils/package.json @@ -1,6 +1,6 @@ { "name": "@abp/utils", - "version": "5.2.0", + "version": "5.2.1", "scripts": { "prepublishOnly": "yarn install --ignore-scripts && node prepublish.js", "ng": "ng", diff --git a/npm/packs/vee-validate/package.json b/npm/packs/vee-validate/package.json index 4d2f565031..2dc5a68b53 100644 --- a/npm/packs/vee-validate/package.json +++ b/npm/packs/vee-validate/package.json @@ -1,11 +1,11 @@ { - "version": "5.2.0", + "version": "5.2.1", "name": "@abp/vee-validate", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/vue": "~5.2.0", + "@abp/vue": "~5.2.1", "vee-validate": "~3.4.4" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/virtual-file-explorer/package.json b/npm/packs/virtual-file-explorer/package.json index 9ec4c09cf1..a4b0bd8b85 100644 --- a/npm/packs/virtual-file-explorer/package.json +++ b/npm/packs/virtual-file-explorer/package.json @@ -1,12 +1,12 @@ { - "version": "5.2.0", + "version": "5.2.1", "name": "@abp/virtual-file-explorer", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/clipboard": "~5.2.0", - "@abp/prismjs": "~5.2.0" + "@abp/clipboard": "~5.2.1", + "@abp/prismjs": "~5.2.1" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" } diff --git a/npm/packs/vue/package.json b/npm/packs/vue/package.json index 9145c4e95b..2e9144b3e5 100644 --- a/npm/packs/vue/package.json +++ b/npm/packs/vue/package.json @@ -1,5 +1,5 @@ { - "version": "5.2.0", + "version": "5.2.1", "name": "@abp/vue", "publishConfig": { "access": "public" diff --git a/templates/app-nolayers/angular/package.json b/templates/app-nolayers/angular/package.json index b2555b72c3..5e66eb239a 100644 --- a/templates/app-nolayers/angular/package.json +++ b/templates/app-nolayers/angular/package.json @@ -12,14 +12,14 @@ }, "private": true, "dependencies": { - "@abp/ng.account": "~5.2.0", - "@abp/ng.components": "~5.2.0", - "@abp/ng.core": "~5.2.0", - "@abp/ng.identity": "~5.2.0", - "@abp/ng.setting-management": "~5.2.0", - "@abp/ng.tenant-management": "~5.2.0", - "@abp/ng.theme.basic": "~5.2.0", - "@abp/ng.theme.shared": "~5.2.0", + "@abp/ng.account": "~5.2.1", + "@abp/ng.components": "~5.2.1", + "@abp/ng.core": "~5.2.1", + "@abp/ng.identity": "~5.2.1", + "@abp/ng.setting-management": "~5.2.1", + "@abp/ng.tenant-management": "~5.2.1", + "@abp/ng.theme.basic": "~5.2.1", + "@abp/ng.theme.shared": "~5.2.1", "@angular/animations": "~13.1.1", "@angular/common": "~13.1.1", "@angular/compiler": "~13.1.1", @@ -34,7 +34,7 @@ "zone.js": "~0.11.4" }, "devDependencies": { - "@abp/ng.schematics": "~5.2.0", + "@abp/ng.schematics": "~5.2.1", "@angular-devkit/build-angular": "~13.1.2", "@angular-eslint/builder": "~13.0.1", "@angular-eslint/eslint-plugin": "~13.0.1", diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/package.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/package.json index 5a3e1b995b..b99280b230 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/package.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/package.json @@ -3,7 +3,7 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0", - "@abp/aspnetcore.components.server.basictheme": "^5.2.0" + "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.1", + "@abp/aspnetcore.components.server.basictheme": "^5.2.1" } } diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/package.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/package.json index 5a3e1b995b..b99280b230 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/package.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/package.json @@ -3,7 +3,7 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0", - "@abp/aspnetcore.components.server.basictheme": "^5.2.0" + "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.1", + "@abp/aspnetcore.components.server.basictheme": "^5.2.1" } } diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/package.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/package.json index cb24136b79..0448d7be40 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/package.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/package.json @@ -3,6 +3,6 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0" + "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.1" } } \ No newline at end of file diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/package.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/package.json index cb24136b79..0448d7be40 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/package.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/package.json @@ -3,6 +3,6 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0" + "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.1" } } \ No newline at end of file diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/package.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/package.json index c4b1189be3..8bad0a8f1d 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/package.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/package.json @@ -3,6 +3,6 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "~5.2.0" + "@abp/aspnetcore.mvc.ui.theme.basic": "~5.2.1" } } \ No newline at end of file diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/package.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/package.json index c4b1189be3..8bad0a8f1d 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/package.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/package.json @@ -3,6 +3,6 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "~5.2.0" + "@abp/aspnetcore.mvc.ui.theme.basic": "~5.2.1" } } \ No newline at end of file diff --git a/templates/app/angular/package.json b/templates/app/angular/package.json index b2555b72c3..5e66eb239a 100644 --- a/templates/app/angular/package.json +++ b/templates/app/angular/package.json @@ -12,14 +12,14 @@ }, "private": true, "dependencies": { - "@abp/ng.account": "~5.2.0", - "@abp/ng.components": "~5.2.0", - "@abp/ng.core": "~5.2.0", - "@abp/ng.identity": "~5.2.0", - "@abp/ng.setting-management": "~5.2.0", - "@abp/ng.tenant-management": "~5.2.0", - "@abp/ng.theme.basic": "~5.2.0", - "@abp/ng.theme.shared": "~5.2.0", + "@abp/ng.account": "~5.2.1", + "@abp/ng.components": "~5.2.1", + "@abp/ng.core": "~5.2.1", + "@abp/ng.identity": "~5.2.1", + "@abp/ng.setting-management": "~5.2.1", + "@abp/ng.tenant-management": "~5.2.1", + "@abp/ng.theme.basic": "~5.2.1", + "@abp/ng.theme.shared": "~5.2.1", "@angular/animations": "~13.1.1", "@angular/common": "~13.1.1", "@angular/compiler": "~13.1.1", @@ -34,7 +34,7 @@ "zone.js": "~0.11.4" }, "devDependencies": { - "@abp/ng.schematics": "~5.2.0", + "@abp/ng.schematics": "~5.2.1", "@angular-devkit/build-angular": "~13.1.2", "@angular-eslint/builder": "~13.0.1", "@angular-eslint/eslint-plugin": "~13.0.1", diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.Server.Tiered/package.json b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.Server.Tiered/package.json index 5a3e1b995b..b99280b230 100644 --- a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.Server.Tiered/package.json +++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.Server.Tiered/package.json @@ -3,7 +3,7 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0", - "@abp/aspnetcore.components.server.basictheme": "^5.2.0" + "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.1", + "@abp/aspnetcore.components.server.basictheme": "^5.2.1" } } diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.Server/package.json b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.Server/package.json index 5a3e1b995b..b99280b230 100644 --- a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.Server/package.json +++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.Server/package.json @@ -3,7 +3,7 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0", - "@abp/aspnetcore.components.server.basictheme": "^5.2.0" + "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.1", + "@abp/aspnetcore.components.server.basictheme": "^5.2.1" } } diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.HttpApi.HostWithIds/package.json b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.HttpApi.HostWithIds/package.json index cb24136b79..0448d7be40 100644 --- a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.HttpApi.HostWithIds/package.json +++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.HttpApi.HostWithIds/package.json @@ -3,6 +3,6 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0" + "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.1" } } \ No newline at end of file diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.IdentityServer/package.json b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.IdentityServer/package.json index 650df128bf..44e817e13e 100644 --- a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.IdentityServer/package.json +++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.IdentityServer/package.json @@ -3,6 +3,6 @@ "name": "my-app-identityserver", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0" + "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.1" } } \ No newline at end of file diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web.Host/package.json b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web.Host/package.json index cb24136b79..0448d7be40 100644 --- a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web.Host/package.json +++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web.Host/package.json @@ -3,6 +3,6 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0" + "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.1" } } \ No newline at end of file diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web/package.json b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web/package.json index cb24136b79..0448d7be40 100644 --- a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web/package.json +++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web/package.json @@ -3,6 +3,6 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0" + "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.1" } } \ No newline at end of file diff --git a/templates/module/angular/package.json b/templates/module/angular/package.json index 0605b5c6ea..3f2ae010fe 100644 --- a/templates/module/angular/package.json +++ b/templates/module/angular/package.json @@ -15,14 +15,14 @@ }, "private": true, "dependencies": { - "@abp/ng.account": "~5.2.0", - "@abp/ng.components": "~5.2.0", - "@abp/ng.core": "~5.2.0", - "@abp/ng.identity": "~5.2.0", - "@abp/ng.setting-management": "~5.2.0", - "@abp/ng.tenant-management": "~5.2.0", - "@abp/ng.theme.basic": "~5.2.0", - "@abp/ng.theme.shared": "~5.2.0", + "@abp/ng.account": "~5.2.1", + "@abp/ng.components": "~5.2.1", + "@abp/ng.core": "~5.2.1", + "@abp/ng.identity": "~5.2.1", + "@abp/ng.setting-management": "~5.2.1", + "@abp/ng.tenant-management": "~5.2.1", + "@abp/ng.theme.basic": "~5.2.1", + "@abp/ng.theme.shared": "~5.2.1", "@angular/animations": "~13.1.1", "@angular/common": "~13.1.1", "@angular/compiler": "~13.1.1", @@ -37,7 +37,7 @@ "zone.js": "~0.11.4" }, "devDependencies": { - "@abp/ng.schematics": "~5.2.0", + "@abp/ng.schematics": "~5.2.1", "@angular-devkit/build-angular": "~13.1.2", "@angular-eslint/builder": "~13.0.1", "@angular-eslint/eslint-plugin": "~13.0.1", diff --git a/templates/module/angular/projects/my-project-name/package.json b/templates/module/angular/projects/my-project-name/package.json index 067904bdb9..0bfada49ae 100644 --- a/templates/module/angular/projects/my-project-name/package.json +++ b/templates/module/angular/projects/my-project-name/package.json @@ -4,8 +4,8 @@ "peerDependencies": { "@angular/common": ">=9", "@angular/core": ">=9", - "@abp/ng.core": ">=5.2.0", - "@abp/ng.theme.shared": ">=5.2.0" + "@abp/ng.core": ">=5.2.1", + "@abp/ng.theme.shared": ">=5.2.1" }, "dependencies": { "tslib": "^2.1.0" diff --git a/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.Blazor.Server.Host/package.json b/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.Blazor.Server.Host/package.json index 5a3e1b995b..b99280b230 100644 --- a/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.Blazor.Server.Host/package.json +++ b/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.Blazor.Server.Host/package.json @@ -3,7 +3,7 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0", - "@abp/aspnetcore.components.server.basictheme": "^5.2.0" + "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.1", + "@abp/aspnetcore.components.server.basictheme": "^5.2.1" } } diff --git a/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.IdentityServer/package.json b/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.IdentityServer/package.json index 650df128bf..44e817e13e 100644 --- a/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.IdentityServer/package.json +++ b/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.IdentityServer/package.json @@ -3,6 +3,6 @@ "name": "my-app-identityserver", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0" + "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.1" } } \ No newline at end of file diff --git a/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.Web.Host/package.json b/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.Web.Host/package.json index cb24136b79..0448d7be40 100644 --- a/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.Web.Host/package.json +++ b/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.Web.Host/package.json @@ -3,6 +3,6 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0" + "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.1" } } \ No newline at end of file diff --git a/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.Web.Unified/package.json b/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.Web.Unified/package.json index cb24136b79..0448d7be40 100644 --- a/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.Web.Unified/package.json +++ b/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.Web.Unified/package.json @@ -3,6 +3,6 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.0" + "@abp/aspnetcore.mvc.ui.theme.basic": "^5.2.1" } } \ No newline at end of file From a3413dbb445ad5f74bbd912aefb284f4cb64cc88 Mon Sep 17 00:00:00 2001 From: maliming Date: Tue, 19 Apr 2022 09:54:11 +0800 Subject: [PATCH 83/90] Disable the abp module for dynamic JavaScript client proxies Resolve #12297 --- framework/src/Volo.Abp.Http/Volo/Abp/Http/AbpHttpModule.cs | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/framework/src/Volo.Abp.Http/Volo/Abp/Http/AbpHttpModule.cs b/framework/src/Volo.Abp.Http/Volo/Abp/Http/AbpHttpModule.cs index 76724ce0a5..bc5641a651 100644 --- a/framework/src/Volo.Abp.Http/Volo/Abp/Http/AbpHttpModule.cs +++ b/framework/src/Volo.Abp.Http/Volo/Abp/Http/AbpHttpModule.cs @@ -17,5 +17,10 @@ public class AbpHttpModule : AbpModule { options.Generators[JQueryProxyScriptGenerator.Name] = typeof(JQueryProxyScriptGenerator); }); + + Configure(options => + { + options.DisableModule("abp"); + }); } } From 65e26c0f0e7225ed5462ea437d190692a0b4a9c2 Mon Sep 17 00:00:00 2001 From: maliming Date: Tue, 19 Apr 2022 10:03:21 +0800 Subject: [PATCH 84/90] Move to `AbpAspNetCoreMvcModule` --- .../Volo/Abp/AspNetCore/Mvc/AbpAspNetCoreMvcModule.cs | 6 ++++++ framework/src/Volo.Abp.Http/Volo/Abp/Http/AbpHttpModule.cs | 5 ----- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/framework/src/Volo.Abp.AspNetCore.Mvc/Volo/Abp/AspNetCore/Mvc/AbpAspNetCoreMvcModule.cs b/framework/src/Volo.Abp.AspNetCore.Mvc/Volo/Abp/AspNetCore/Mvc/AbpAspNetCoreMvcModule.cs index c205e15321..22b919c91c 100644 --- a/framework/src/Volo.Abp.AspNetCore.Mvc/Volo/Abp/AspNetCore/Mvc/AbpAspNetCoreMvcModule.cs +++ b/framework/src/Volo.Abp.AspNetCore.Mvc/Volo/Abp/AspNetCore/Mvc/AbpAspNetCoreMvcModule.cs @@ -36,6 +36,7 @@ using Volo.Abp.Http; using Volo.Abp.DynamicProxy; using Volo.Abp.GlobalFeatures; using Volo.Abp.Http.Modeling; +using Volo.Abp.Http.ProxyScripting.Generators.JQuery; using Volo.Abp.Json; using Volo.Abp.Localization; using Volo.Abp.Modularity; @@ -185,6 +186,11 @@ public class AbpAspNetCoreMvcModule : AbpModule endpointContext.Endpoints.MapRazorPages(); }); }); + + Configure(options => + { + options.DisableModule("abp"); + }); } public override void PostConfigureServices(ServiceConfigurationContext context) diff --git a/framework/src/Volo.Abp.Http/Volo/Abp/Http/AbpHttpModule.cs b/framework/src/Volo.Abp.Http/Volo/Abp/Http/AbpHttpModule.cs index bc5641a651..76724ce0a5 100644 --- a/framework/src/Volo.Abp.Http/Volo/Abp/Http/AbpHttpModule.cs +++ b/framework/src/Volo.Abp.Http/Volo/Abp/Http/AbpHttpModule.cs @@ -17,10 +17,5 @@ public class AbpHttpModule : AbpModule { options.Generators[JQueryProxyScriptGenerator.Name] = typeof(JQueryProxyScriptGenerator); }); - - Configure(options => - { - options.DisableModule("abp"); - }); } } From 52cc582b8dad078b3b74d4e2c849ab8b218a99d3 Mon Sep 17 00:00:00 2001 From: maliming Date: Tue, 19 Apr 2022 10:24:15 +0800 Subject: [PATCH 85/90] Update package.json --- npm/packs/cms-kit.admin/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/npm/packs/cms-kit.admin/package.json b/npm/packs/cms-kit.admin/package.json index 3877658bd3..17d676756d 100644 --- a/npm/packs/cms-kit.admin/package.json +++ b/npm/packs/cms-kit.admin/package.json @@ -8,7 +8,7 @@ "@abp/jstree": "~5.2.1", "@abp/slugify": "~5.2.1", "@abp/tui-editor": "~5.2.1", - "@abp/uppy": "~5.2.1" + "@abp/uppy": "~5.2.1", "@abp/codemirror": "~5.2.1" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" From ea0f3c2c18971ef6769016140ecb985a6d7da832 Mon Sep 17 00:00:00 2001 From: Engincan VESKE Date: Tue, 19 Apr 2022 09:15:20 +0300 Subject: [PATCH 86/90] Update BlogFeatureDataSeedContributor.cs --- .../Volo/CmsKit/Blogs/BlogFeatureDataSeedContributor.cs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Blogs/BlogFeatureDataSeedContributor.cs b/modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Blogs/BlogFeatureDataSeedContributor.cs index e99ab47964..5306d302dd 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Blogs/BlogFeatureDataSeedContributor.cs +++ b/modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Blogs/BlogFeatureDataSeedContributor.cs @@ -2,6 +2,7 @@ using Volo.Abp.Data; using Volo.Abp.DependencyInjection; using Volo.Abp.GlobalFeatures; +using Volo.CmsKit.GlobalFeatures; namespace Volo.CmsKit.Blogs; @@ -20,7 +21,7 @@ public class BlogFeatureDataSeedContributor : IDataSeedContributor, ITransientDe public async Task SeedAsync(DataSeedContext context) { - if (!GlobalFeatureManager.Instance.IsEnabled()) + if (!GlobalFeatureManager.Instance.IsEnabled()) { return; } From bc2ddccf2a5150a18cf0a247742b6cacc9ba26b7 Mon Sep 17 00:00:00 2001 From: maliming Date: Tue, 19 Apr 2022 14:39:50 +0800 Subject: [PATCH 87/90] `AddAutoMapperObjectMapper` to `app-nolayers`. --- .../MyProjectNameModule.cs | 5 +++-- .../MyProjectNameModule.cs | 5 +++-- .../MyProjectNameModule.cs | 5 +++-- .../MyCompanyName.MyProjectName.Host/MyProjectNameModule.cs | 5 +++-- .../MyProjectNameModule.cs | 5 +++-- .../MyCompanyName.MyProjectName.Mvc/MyProjectNameModule.cs | 5 +++-- 6 files changed, 18 insertions(+), 12 deletions(-) diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/MyProjectNameModule.cs b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/MyProjectNameModule.cs index 59aa2cc6c2..0fb12feed2 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/MyProjectNameModule.cs +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/MyProjectNameModule.cs @@ -125,7 +125,7 @@ public class MyProjectNameModule : AbpModule ConfigureUrls(configuration); ConfigureBundles(); - ConfigureAutoMapper(); + ConfigureAutoMapper(context); ConfigureVirtualFiles(hostingEnvironment); ConfigureLocalizationServices(); ConfigureSwaggerServices(context.Services); @@ -277,8 +277,9 @@ public class MyProjectNameModule : AbpModule }); } - private void ConfigureAutoMapper() + private void ConfigureAutoMapper(ServiceConfigurationContext context) { + context.Services.AddAutoMapperObjectMapper(); Configure(options => { options.AddMaps(); diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/MyProjectNameModule.cs b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/MyProjectNameModule.cs index e48de7f42e..9567786a99 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/MyProjectNameModule.cs +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/MyProjectNameModule.cs @@ -126,7 +126,7 @@ public class MyProjectNameModule : AbpModule ConfigureUrls(configuration); ConfigureBundles(); - ConfigureAutoMapper(); + ConfigureAutoMapper(context); ConfigureVirtualFiles(hostingEnvironment); ConfigureLocalizationServices(); ConfigureSwaggerServices(context.Services); @@ -278,8 +278,9 @@ public class MyProjectNameModule : AbpModule }); } - private void ConfigureAutoMapper() + private void ConfigureAutoMapper(ServiceConfigurationContext context) { + context.Services.AddAutoMapperObjectMapper(); Configure(options => { options.AddMaps(); diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/MyProjectNameModule.cs b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/MyProjectNameModule.cs index bced8dc3fb..f8d6fd1d67 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/MyProjectNameModule.cs +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/MyProjectNameModule.cs @@ -117,7 +117,7 @@ public class MyProjectNameModule : AbpModule ConfigureBundles(); ConfigureMultiTenancy(); ConfigureUrls(configuration); - ConfigureAutoMapper(); + ConfigureAutoMapper(context); ConfigureSwagger(context.Services); ConfigureAutoApiControllers(); ConfigureVirtualFiles(hostingEnvironment); @@ -241,8 +241,9 @@ public class MyProjectNameModule : AbpModule ); } - private void ConfigureAutoMapper() + private void ConfigureAutoMapper(ServiceConfigurationContext context) { + context.Services.AddAutoMapperObjectMapper(); Configure(options => { /* Uncomment `validate: true` if you want to enable the Configuration Validation feature. diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/MyProjectNameModule.cs b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/MyProjectNameModule.cs index 1d3a05c88b..24eef29cb3 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/MyProjectNameModule.cs +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/MyProjectNameModule.cs @@ -119,7 +119,7 @@ public class MyProjectNameModule : AbpModule ConfigureBundles(); ConfigureMultiTenancy(); ConfigureUrls(configuration); - ConfigureAutoMapper(); + ConfigureAutoMapper(context); ConfigureSwagger(context.Services); ConfigureAutoApiControllers(); ConfigureVirtualFiles(hostingEnvironment); @@ -243,8 +243,9 @@ public class MyProjectNameModule : AbpModule ); } - private void ConfigureAutoMapper() + private void ConfigureAutoMapper(ServiceConfigurationContext context) { + context.Services.AddAutoMapperObjectMapper(); Configure(options => { /* Uncomment `validate: true` if you want to enable the Configuration Validation feature. diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/MyProjectNameModule.cs b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/MyProjectNameModule.cs index a71605ac4c..0fc9f27f87 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/MyProjectNameModule.cs +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/MyProjectNameModule.cs @@ -120,7 +120,7 @@ public class MyProjectNameModule : AbpModule ConfigureMultiTenancy(); ConfigureUrls(configuration); ConfigureBundles(); - ConfigureAutoMapper(); + ConfigureAutoMapper(context); ConfigureSwagger(context.Services); ConfigureNavigationServices(); ConfigureAutoApiControllers(); @@ -250,8 +250,9 @@ public class MyProjectNameModule : AbpModule ); } - private void ConfigureAutoMapper() + private void ConfigureAutoMapper(ServiceConfigurationContext context) { + context.Services.AddAutoMapperObjectMapper(); Configure(options => { /* Uncomment `validate: true` if you want to enable the Configuration Validation feature. diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/MyProjectNameModule.cs b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/MyProjectNameModule.cs index 307daf4c03..f9725d589d 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/MyProjectNameModule.cs +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/MyProjectNameModule.cs @@ -121,7 +121,7 @@ public class MyProjectNameModule : AbpModule ConfigureMultiTenancy(); ConfigureUrls(configuration); ConfigureBundles(); - ConfigureAutoMapper(); + ConfigureAutoMapper(context); ConfigureSwagger(context.Services); ConfigureNavigationServices(); ConfigureAutoApiControllers(); @@ -252,8 +252,9 @@ public class MyProjectNameModule : AbpModule ); } - private void ConfigureAutoMapper() + private void ConfigureAutoMapper(ServiceConfigurationContext context) { + context.Services.AddAutoMapperObjectMapper(); Configure(options => { /* Uncomment `validate: true` if you want to enable the Configuration Validation feature. From 2fe31f2083569a19a7aacb7a06876cf440786e84 Mon Sep 17 00:00:00 2001 From: enisn Date: Tue, 19 Apr 2022 10:10:36 +0300 Subject: [PATCH 88/90] AngularPwaSupportAdder. improvements --- .../Cli/ProjectModification/AngularPwaSupportAdder.cs | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectModification/AngularPwaSupportAdder.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectModification/AngularPwaSupportAdder.cs index 4781252705..f774844884 100644 --- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectModification/AngularPwaSupportAdder.cs +++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectModification/AngularPwaSupportAdder.cs @@ -21,12 +21,7 @@ public class AngularPwaSupportAdder : ITransientDependency public virtual void AddPwaSupport(string rootDirectory) { - var fileList = PackageJsonFileFinder.Find(rootDirectory).Where(x => x.Contains("angular")).ToList(); - - if (!fileList.Any()) - { - return; - } + var fileList = PackageJsonFileFinder.Find(rootDirectory).Where(x => x.Contains("angular" + Path.DirectorySeparatorChar)).ToList(); fileList.ForEach(AddPwaSupportToProject); } @@ -35,6 +30,6 @@ public class AngularPwaSupportAdder : ITransientDependency { var directory = Path.GetDirectoryName(filePath).EnsureEndsWith(Path.DirectorySeparatorChar); - CmdHelper.RunCmd($"cd {directory} && ng add @angular/pwa --skip-confirmation"); + CmdHelper.RunCmd("ng add @angular/pwa --skip-confirmation", workingDirectory: directory); } } From d30082bc9616c2f61aa7319aa9646a86401b79ad Mon Sep 17 00:00:00 2001 From: enisn Date: Tue, 19 Apr 2022 12:52:40 +0300 Subject: [PATCH 89/90] Determine angular project with `angular.json` --- .../Volo/Abp/Cli/ProjectModification/AngularPwaSupportAdder.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectModification/AngularPwaSupportAdder.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectModification/AngularPwaSupportAdder.cs index f774844884..9ff8169e71 100644 --- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectModification/AngularPwaSupportAdder.cs +++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectModification/AngularPwaSupportAdder.cs @@ -21,7 +21,7 @@ public class AngularPwaSupportAdder : ITransientDependency public virtual void AddPwaSupport(string rootDirectory) { - var fileList = PackageJsonFileFinder.Find(rootDirectory).Where(x => x.Contains("angular" + Path.DirectorySeparatorChar)).ToList(); + var fileList = PackageJsonFileFinder.Find(rootDirectory).Where(x => x.Contains("angular.json")).ToList(); fileList.ForEach(AddPwaSupportToProject); } From e6e5cb05a8aeb6222933f0977ef25e4cf8070399 Mon Sep 17 00:00:00 2001 From: enisn Date: Tue, 19 Apr 2022 14:51:12 +0300 Subject: [PATCH 90/90] Fix angular path finding --- .../Volo/Abp/Cli/ProjectModification/AngularPwaSupportAdder.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectModification/AngularPwaSupportAdder.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectModification/AngularPwaSupportAdder.cs index 9ff8169e71..891ac28ecb 100644 --- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectModification/AngularPwaSupportAdder.cs +++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectModification/AngularPwaSupportAdder.cs @@ -21,7 +21,7 @@ public class AngularPwaSupportAdder : ITransientDependency public virtual void AddPwaSupport(string rootDirectory) { - var fileList = PackageJsonFileFinder.Find(rootDirectory).Where(x => x.Contains("angular.json")).ToList(); + var fileList = PackageJsonFileFinder.Find(rootDirectory).Where(x => File.Exists(x.RemovePostFix("package.json") + "angular.json")).ToList(); fileList.ForEach(AddPwaSupportToProject); }