From ab1e9ee166c77bc75db3454efcd09d0b8289f663 Mon Sep 17 00:00:00 2001 From: enisn Date: Wed, 6 Apr 2022 11:25:41 +0300 Subject: [PATCH 01/65] 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 02/65] 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 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 03/65] 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 04/65] 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 05/65] 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 06/65] 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 07/65] 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 08/65] 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 09/65] 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 10/65] 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 11/65] 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 12/65] 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 13/65] 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 14/65] 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 15/65] 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 16/65] 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 17/65] 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 18/65] 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 19/65] 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 20/65] 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 21/65] 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 22/65] 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 23/65] 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 24/65] 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 25/65] 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 26/65] 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 27/65] 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 28/65] 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 29/65] 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 30/65] 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 d9cbdc4e48845eef362692debf1f4c231d3d8200 Mon Sep 17 00:00:00 2001 From: enisn Date: Mon, 18 Apr 2022 16:43:11 +0300 Subject: [PATCH 31/65] Update FeatureManagementModal.razor.cs --- .../Components/FeatureManagementModal.razor.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/feature-management/src/Volo.Abp.FeatureManagement.Blazor/Components/FeatureManagementModal.razor.cs b/modules/feature-management/src/Volo.Abp.FeatureManagement.Blazor/Components/FeatureManagementModal.razor.cs index a35d529725..e2cb9c160c 100644 --- a/modules/feature-management/src/Volo.Abp.FeatureManagement.Blazor/Components/FeatureManagementModal.razor.cs +++ b/modules/feature-management/src/Volo.Abp.FeatureManagement.Blazor/Components/FeatureManagementModal.razor.cs @@ -25,7 +25,7 @@ public partial class FeatureManagementModal [Inject] protected IOptions LocalizationOptions { get; set; } - [Inject] private ICurrentApplicationConfigurationCacheResetService CurrentApplicationConfigurationCacheResetService { get; set; } + [Inject] protected ICurrentApplicationConfigurationCacheResetService CurrentApplicationConfigurationCacheResetService { get; set; } protected Modal Modal; From 649719738de8185e1f12351b86e258cf2b5371af Mon Sep 17 00:00:00 2001 From: enisn Date: Mon, 18 Apr 2022 16:43:38 +0300 Subject: [PATCH 32/65] Make members are protected and overridable in PermissionManagementModal.razor.cs --- .../PermissionManagementModal.razor.cs | 42 +++++++++---------- 1 file changed, 21 insertions(+), 21 deletions(-) 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..e74b3d8212 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 @@ -11,25 +11,25 @@ namespace Volo.Abp.PermissionManagement.Blazor.Components; public partial class PermissionManagementModal { - [Inject] private IPermissionAppService PermissionAppService { get; set; } - [Inject] private ICurrentApplicationConfigurationCacheResetService CurrentApplicationConfigurationCacheResetService { get; set; } + [Inject] protected IPermissionAppService PermissionAppService { get; set; } + [Inject] protected ICurrentApplicationConfigurationCacheResetService CurrentApplicationConfigurationCacheResetService { get; set; } - private Modal _modal; + protected Modal _modal; - private string _providerName; - private string _providerKey; + protected string _providerName; + protected string _providerKey; - private string _entityDisplayName; - private List _groups; + protected string _entityDisplayName; + protected List _groups; - private List _disabledPermissions = new List(); + protected List _disabledPermissions = new List(); - private string _selectedTabName; + protected string _selectedTabName; - private int _grantedPermissionCount = 0; - private int _notGrantedPermissionCount = 0; + protected int _grantedPermissionCount = 0; + protected int _notGrantedPermissionCount = 0; - private bool GrantAll { + protected bool GrantAll { get { if (_notGrantedPermissionCount == 0) { @@ -113,12 +113,12 @@ public partial class PermissionManagementModal } } - private Task CloseModal() + protected Task CloseModal() { return InvokeAsync(_modal.Hide); } - private async Task SaveAsync() + protected virtual async Task SaveAsync() { try { @@ -142,12 +142,12 @@ public partial class PermissionManagementModal } } - private string GetNormalizedGroupName(string name) + protected virtual string GetNormalizedGroupName(string name) { return "PermissionGroup_" + name.Replace(".", "_"); } - private void GroupGrantAllChanged(bool value, PermissionGroupDto permissionGroup) + protected virtual void GroupGrantAllChanged(bool value, PermissionGroupDto permissionGroup) { foreach (var permission in permissionGroup.Permissions) { @@ -158,7 +158,7 @@ public partial class PermissionManagementModal } } - private void PermissionChanged(bool value, PermissionGroupDto permissionGroup, PermissionGrantInfoDto permission) + protected virtual void PermissionChanged(bool value, PermissionGroupDto permissionGroup, PermissionGrantInfoDto permission) { SetPermissionGrant(permission, value); @@ -200,22 +200,22 @@ public partial class PermissionManagementModal permission.IsGranted = value; } - private PermissionGrantInfoDto GetParentPermission(PermissionGroupDto permissionGroup, PermissionGrantInfoDto permission) + protected PermissionGrantInfoDto GetParentPermission(PermissionGroupDto permissionGroup, PermissionGrantInfoDto permission) { return permissionGroup.Permissions.First(x => x.Name == permission.ParentName); } - private List GetChildPermissions(PermissionGroupDto permissionGroup, PermissionGrantInfoDto permission) + protected List GetChildPermissions(PermissionGroupDto permissionGroup, PermissionGrantInfoDto permission) { return permissionGroup.Permissions.Where(x => x.Name.StartsWith(permission.Name)).ToList(); } - private bool IsDisabledPermission(PermissionGrantInfoDto permissionGrantInfo) + protected bool IsDisabledPermission(PermissionGrantInfoDto permissionGrantInfo) { return _disabledPermissions.Any(x => x == permissionGrantInfo); } - private string GetShownName(PermissionGrantInfoDto permissionGrantInfo) + protected virtual string GetShownName(PermissionGrantInfoDto permissionGrantInfo) { if (!IsDisabledPermission(permissionGrantInfo)) { From 4f21f6dc3ed5d2f6cb181ac9f87e799cb451c460 Mon Sep 17 00:00:00 2001 From: enisn Date: Mon, 18 Apr 2022 18:31:26 +0300 Subject: [PATCH 33/65] 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 34/65] 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 35/65] 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 36/65] 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 c2fbd7e2a4070d6a2417c913cf4501a1cb18716c Mon Sep 17 00:00:00 2001 From: Mahmut Gundogdu Date: Mon, 18 Apr 2022 19:24:18 +0300 Subject: [PATCH 37/65] Add proper title to Abp-permission-manager.component #9581 --- .../identity/src/lib/components/roles/roles.component.html | 1 + .../identity/src/lib/components/users/users.component.html | 1 + .../identity/src/lib/components/users/users.component.ts | 4 +++- .../identity/src/lib/defaults/default-users-entity-actions.ts | 2 +- .../src/lib/components/permission-management.component.html | 4 ++-- .../src/lib/components/permission-management.component.ts | 3 +++ 6 files changed, 11 insertions(+), 4 deletions(-) diff --git a/npm/ng-packs/packages/identity/src/lib/components/roles/roles.component.html b/npm/ng-packs/packages/identity/src/lib/components/roles/roles.component.html index 09dcdb1be3..20d5509d15 100644 --- a/npm/ng-packs/packages/identity/src/lib/components/roles/roles.component.html +++ b/npm/ng-packs/packages/identity/src/lib/components/roles/roles.component.html @@ -55,6 +55,7 @@ }; let init = initTemplate " + [title]="providerKey" (abpInit)="init(abpPermissionManagement)" > diff --git a/npm/ng-packs/packages/identity/src/lib/components/users/users.component.html b/npm/ng-packs/packages/identity/src/lib/components/users/users.component.html index 6f42485364..a481b9d697 100644 --- a/npm/ng-packs/packages/identity/src/lib/components/users/users.component.html +++ b/npm/ng-packs/packages/identity/src/lib/components/users/users.component.html @@ -95,6 +95,7 @@ }; let init = initTemplate " + [title]="userName" (abpInit)="init(abpPermissionManagement)" > diff --git a/npm/ng-packs/packages/identity/src/lib/components/users/users.component.ts b/npm/ng-packs/packages/identity/src/lib/components/users/users.component.ts index 6f458a781b..1c9f6f0f17 100644 --- a/npm/ng-packs/packages/identity/src/lib/components/users/users.component.ts +++ b/npm/ng-packs/packages/identity/src/lib/components/users/users.component.ts @@ -64,6 +64,7 @@ export class UsersComponent implements OnInit { onVisiblePermissionChange = event => { this.visiblePermissions = event; }; + userName: string; get roleGroups(): FormGroup[] { return ((this.form.get('roleNames') as FormArray)?.controls as FormGroup[]) || []; @@ -176,8 +177,9 @@ export class UsersComponent implements OnInit { this.list.hookToQuery(query => this.service.getList(query)).subscribe(res => (this.data = res)); } - openPermissionsModal(providerKey: string) { + openPermissionsModal(providerKey: string, userName:string) { this.providerKey = providerKey; + this.userName = userName; setTimeout(() => { this.visiblePermissions = true; }, 0); diff --git a/npm/ng-packs/packages/identity/src/lib/defaults/default-users-entity-actions.ts b/npm/ng-packs/packages/identity/src/lib/defaults/default-users-entity-actions.ts index 13f058dd37..0bd21c571b 100644 --- a/npm/ng-packs/packages/identity/src/lib/defaults/default-users-entity-actions.ts +++ b/npm/ng-packs/packages/identity/src/lib/defaults/default-users-entity-actions.ts @@ -15,7 +15,7 @@ export const DEFAULT_USERS_ENTITY_ACTIONS = EntityAction.createMany { const component = data.getInjected(UsersComponent); - component.openPermissionsModal(data.record.id); + component.openPermissionsModal(data.record.id, data.record.userName); }, permission: 'AbpIdentity.Users.ManagePermissions', }, diff --git a/npm/ng-packs/packages/permission-management/src/lib/components/permission-management.component.html b/npm/ng-packs/packages/permission-management/src/lib/components/permission-management.component.html index a28607bb59..d2d14035ca 100644 --- a/npm/ng-packs/packages/permission-management/src/lib/components/permission-management.component.html +++ b/npm/ng-packs/packages/permission-management/src/lib/components/permission-management.component.html @@ -2,8 +2,8 @@

- {{ 'AbpPermissionManagement::Permissions' | abpLocalization }} - - {{ data.entityDisplayName }} + {{ 'AbpPermissionManagement::Permissions' | abpLocalization }} + - {{ title }}

diff --git a/npm/ng-packs/packages/permission-management/src/lib/components/permission-management.component.ts b/npm/ng-packs/packages/permission-management/src/lib/components/permission-management.component.ts index e43acdd605..bc07bb6583 100644 --- a/npm/ng-packs/packages/permission-management/src/lib/components/permission-management.component.ts +++ b/npm/ng-packs/packages/permission-management/src/lib/components/permission-management.component.ts @@ -64,6 +64,9 @@ export class PermissionManagementComponent return this._visible; } + @Input() + title = ''; + set visible(value: boolean) { if (value === this._visible) return; 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 38/65] 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 39/65] 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 40/65] 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 41/65] 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 fd46f43417488556509f5286da138f5cb0c8a6fa Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 19 Apr 2022 02:38:55 +0000 Subject: [PATCH 42/65] Bump prismjs from 1.19.0 to 1.28.0 in /modules/docs/app/VoloDocs.Web Bumps [prismjs](https://github.com/PrismJS/prism) from 1.19.0 to 1.28.0. - [Release notes](https://github.com/PrismJS/prism/releases) - [Changelog](https://github.com/PrismJS/prism/blob/master/CHANGELOG.md) - [Commits](https://github.com/PrismJS/prism/compare/v1.19.0...v1.28.0) --- updated-dependencies: - dependency-name: prismjs dependency-type: indirect ... Signed-off-by: dependabot[bot] --- .../docs/app/VoloDocs.Web/package-lock.json | 1433 +++++++---------- modules/docs/app/VoloDocs.Web/yarn.lock | 6 +- 2 files changed, 557 insertions(+), 882 deletions(-) diff --git a/modules/docs/app/VoloDocs.Web/package-lock.json b/modules/docs/app/VoloDocs.Web/package-lock.json index e764349469..9ae1d55d3d 100644 --- a/modules/docs/app/VoloDocs.Web/package-lock.json +++ b/modules/docs/app/VoloDocs.Web/package-lock.json @@ -5,251 +5,269 @@ "requires": true, "dependencies": { "@abp/anchor-js": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@abp/anchor-js/-/anchor-js-1.1.1.tgz", - "integrity": "sha512-hHyYYJ09hhT5xeQJUsBN43yT+y49FKcigq4Wrx8448TrW7r2NJD5i3Xy3BGEstNSlfcQPTsmciQnbkcU2rX1HQ==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@abp/anchor-js/-/anchor-js-5.2.1.tgz", + "integrity": "sha512-61+rrfSQyZacqUJ5qQxkoWYffWcd7AArkj8DmEHmFY4e28hH3P9eXMcuGBoJ85pXleAPEmVYswc/xZiTMNHkvg==", "requires": { - "@abp/core": "^1.1.1", - "anchor-js": "^4.2.2" + "@abp/core": "~5.2.1", + "anchor-js": "^4.3.1" } }, "@abp/aspnetcore.mvc.ui": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-1.1.1.tgz", - "integrity": "sha512-wZbptVCSxZzEjkJx+/sWrH9Pikp9nOy7V8Htz+L+S7/qAzfXu5PRVV8ahddfAcDHRk30buRhdbJlCVdt6hkZ6g==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-5.2.1.tgz", + "integrity": "sha512-VUSPOKjBSF+NxfwdsEVQte8u7mGP1t7jd1+ej2ND8JEKYJ1Vh7z2mfsT+lQaEJg0JWggU1AxkIMOOfHDNTU3Kg==", "requires": { "ansi-colors": "^4.1.1", "extend-object": "^1.0.0", + "glob": "^7.1.6", "gulp": "^4.0.2", "merge-stream": "^2.0.0", - "path": "^0.12.7", - "rimraf": "^3.0.0" + "micromatch": "^4.0.2" } }, "@abp/aspnetcore.mvc.ui.theme.basic": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-1.1.1.tgz", - "integrity": "sha512-ooXtCM3TWN69RU7xs6avnzOQBXzsiHY5BEIogzSBialZC4uG5H56qrIr4MbsFNae+PQM23Mw2tnJ/Z7dutURCQ==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-5.2.1.tgz", + "integrity": "sha512-DYr9ROcTPfCRHxD1QSWqLZ9+ARbO5p9I6SRo893NtJ39aHacAa9RIAwZmP0JLG0C4hLXfJLKXJ2DpNcwY+ubXA==", "requires": { - "@abp/aspnetcore.mvc.ui.theme.shared": "^1.1.1" + "@abp/aspnetcore.mvc.ui.theme.shared": "~5.2.1" } }, "@abp/aspnetcore.mvc.ui.theme.shared": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-1.1.1.tgz", - "integrity": "sha512-LilSyefzT1+rcTU7vbWxcO8TwBgGZIx6QbMUrDicSTH6LLJ9S5+yNaGNJbbZKDG6qx0BEoC1u8dE8KCUshwxoQ==", - "requires": { - "@abp/aspnetcore.mvc.ui": "^1.1.1", - "@abp/bootstrap": "^1.1.1", - "@abp/bootstrap-datepicker": "^1.1.1", - "@abp/datatables.net-bs4": "^1.1.1", - "@abp/font-awesome": "^1.1.1", - "@abp/jquery-form": "^1.1.1", - "@abp/jquery-validation-unobtrusive": "^1.1.1", - "@abp/lodash": "^1.1.1", - "@abp/luxon": "^1.1.1", - "@abp/malihu-custom-scrollbar-plugin": "^1.1.1", - "@abp/select2": "^1.1.1", - "@abp/sweetalert": "^1.1.1", - "@abp/timeago": "^1.1.1", - "@abp/toastr": "^1.1.1" + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-5.2.1.tgz", + "integrity": "sha512-/1C5RyPIRPZT5ir8Len2EnSt1KfWcRdPyn/avAG+9JKBZ8FoUL8mO2/ffESOvikh/wItZZgxJ5VEJVGwHNjgdQ==", + "requires": { + "@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/bootstrap": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@abp/bootstrap/-/bootstrap-1.1.1.tgz", - "integrity": "sha512-OIaGJaizhI8UNfy4bnw2xT2Z0QG7BJJrjxOPGepfd4jn/AUi/vFdOpJFWvu2P9PwSzRmn/LuSlr2WONDOdPVWQ==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@abp/bootstrap/-/bootstrap-5.2.1.tgz", + "integrity": "sha512-vFW8OxfRhiDkIrDVIn3TyGkGyiCLLFmPMjSOmMg3o2XPdRk5uhwSBzWYpk/m+kmPpP6cEsJMxaHpCsirSlPE+A==", "requires": { - "@abp/core": "^1.1.1", - "bootstrap": "^4.3.1" + "@abp/core": "~5.2.1", + "bootstrap": "^5.1.3" } }, "@abp/bootstrap-datepicker": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@abp/bootstrap-datepicker/-/bootstrap-datepicker-1.1.1.tgz", - "integrity": "sha512-RIQLSrKBu/cTAU2lFenSAoKcMp7wgF4e3nP4/iOu5ZtCgti5vUjMEcqEvBxtlwKTHMXsTG4GtNKqjTwjXMjONQ==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@abp/bootstrap-datepicker/-/bootstrap-datepicker-5.2.1.tgz", + "integrity": "sha512-UPdVu9t7XybINSfonQN0DB9Lpz1r5vCz7F8CMpbjQprvPmsFmkAZyY0p6MS3kGO5eu5rlpGAGPBGOTeSfEp9ww==", "requires": { "bootstrap-datepicker": "^1.9.0" } }, "@abp/clipboard": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@abp/clipboard/-/clipboard-1.1.1.tgz", - "integrity": "sha512-O6b7VCAh2mxjkPhgUZYQBhXf0u+dWRECBOYN4KxYiKfk+2xL8X+34Ls7hVLbyuD+4xCcNirMZIG5CnS8auHC/A==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@abp/clipboard/-/clipboard-5.2.1.tgz", + "integrity": "sha512-aouNTDz8t+8M4O2a+UsEdtABRsyhvzGpXqCG2+LYE1vA3I+CKhglkvEFp+GyIgWsipEHY1U1w6V3qZtcRINn+A==", "requires": { - "@abp/core": "^1.1.1", - "clipboard": "^2.0.4" + "@abp/core": "~5.2.1", + "clipboard": "^2.0.8" } }, "@abp/core": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@abp/core/-/core-1.1.1.tgz", - "integrity": "sha512-OvUG7xRvk8nSqwC1s45YPnTuhC2OWe1AVa1nnC6FVHMH/g1Je7UJwnbu47K7uNS+lDRJUIktNbufYKiwutEjRg==" + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@abp/core/-/core-5.2.1.tgz", + "integrity": "sha512-FDOhIPjig3oGxkbadJZzFSC1ZHzgQV4R75fsDNH56lQ9mTyRUPQdg0Y54eCtY7yOSjiJOctOUUWHaxoFG7frGQ==", + "requires": { + "@abp/utils": "~5.2.1" + } }, "@abp/datatables.net": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@abp/datatables.net/-/datatables.net-1.1.1.tgz", - "integrity": "sha512-y76IDBlgc0n1YgQqJ+9cfzXpLwr2arhdIfSmqX+qRXz6GfVNY7e3JijkFSgDKUzKGYo1HZMzgJmDmeNIRwMZsQ==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@abp/datatables.net/-/datatables.net-5.2.1.tgz", + "integrity": "sha512-6Q3+W+d8e4TMAkZr/IdPDQuL1v+tjbS50ChLvrJX/BLb4fBhu1LGJWWKzKJFj721DwIsuQQiM4uq9xX/TjiS0w==", "requires": { - "@abp/core": "^1.1.1", - "datatables.net": "^1.10.20" + "@abp/jquery": "~5.2.1", + "datatables.net": "^1.11.4" } }, - "@abp/datatables.net-bs4": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@abp/datatables.net-bs4/-/datatables.net-bs4-1.1.1.tgz", - "integrity": "sha512-t40xQIGBMLPZiSbcZHW3AwE8uk+xcl7OitBT1jym0XPKVtgJsHez3ynDE5v/PjHe+ColCG8lTRjRnNoXo5dzDw==", + "@abp/datatables.net-bs5": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@abp/datatables.net-bs5/-/datatables.net-bs5-5.2.1.tgz", + "integrity": "sha512-B8lSAeMM9qOwYbDK/Dhp7BX5lFaCpao4RCPcSqgFrye8vlH8bcobmp4tMD23r24y/gRIEuQBcKzp0Lf0OUpLhA==", "requires": { - "@abp/datatables.net": "^1.1.1", - "datatables.net-bs4": "^1.10.20" + "@abp/datatables.net": "~5.2.1", + "datatables.net-bs5": "^1.11.4" } }, "@abp/docs": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@abp/docs/-/docs-1.1.1.tgz", - "integrity": "sha512-z2Dk7EOhBdFo6BYbgccD91PIg37L2ehkgRT4RWf61dRyjPAQgPwwwyVSqApFmKveWPCzreHoTPKbnrU7EzAssw==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@abp/docs/-/docs-5.2.1.tgz", + "integrity": "sha512-WZCCY73vyIpRu7hypPiP9CRr4Bvzkv3up0WeGQ4rK9LiZWNSxG9PXv4lYeD4cuHg0zgxH9d/6toYToaIJNqDCQ==", "requires": { - "@abp/anchor-js": "^1.1.1", - "@abp/clipboard": "^1.1.1", - "@abp/malihu-custom-scrollbar-plugin": "^1.1.1", - "@abp/popper.js": "^1.1.1", - "@abp/prismjs": "^1.1.1" + "@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": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@abp/font-awesome/-/font-awesome-1.1.1.tgz", - "integrity": "sha512-6RHbixi7IVWAb3JCHrUmEYD3HmAH4R75Nuo54LvFzATrh4G6gdBONIeDuTo79OTxe4Zhp+WLxeA49Y21kt77mg==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@abp/font-awesome/-/font-awesome-5.2.1.tgz", + "integrity": "sha512-9fAUdA9QeNRMjp6v8i6EOR480bjB4OzqzriFCKUu4k6VwbA6PxUsJIRFyKIt5UpC12Zqdhpkyj0iG6tE0nRekQ==", "requires": { - "@abp/core": "^1.1.1", - "@fortawesome/fontawesome-free": "^5.11.2" + "@abp/core": "~5.2.1", + "@fortawesome/fontawesome-free": "^5.15.4" } }, "@abp/jquery": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@abp/jquery/-/jquery-1.1.1.tgz", - "integrity": "sha512-kj4BTtXF0VbCzCqRXnRVEbGndR3F8NlbBhVQN6BQktOuZta3fvx7f2+pSok8vQv0ddmqUFY7FTT2Ei3l4363LQ==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@abp/jquery/-/jquery-5.2.1.tgz", + "integrity": "sha512-FiIRnDx/gm6JR8QljiulwCc5d8+YC123X0qxMIBI8IY9vznEX+Jk48jYG8fLABnRqKEIYfV8UsYSK8IJx3mcSg==", "requires": { - "@abp/core": "^1.1.1", - "jquery": "^3.4.1" + "@abp/core": "~5.2.1", + "jquery": "~3.6.0" } }, "@abp/jquery-form": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@abp/jquery-form/-/jquery-form-1.1.1.tgz", - "integrity": "sha512-AIIdN36f8xwr4LgiNnBHohJ5tlxh/r+DuDtXcScpZN6GWBE+XgUotN0pZIIva82IxCyUNdDudzgluX9IjI+00w==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@abp/jquery-form/-/jquery-form-5.2.1.tgz", + "integrity": "sha512-L7uKs7vReOQEETG9xIDq5aXjshbaPa+ZZQcCbn2uwY813e0ErS7Rb1mnowEt/LNEB02AtLet1B4TDVwZUl1uXQ==", "requires": { - "@abp/jquery": "^1.1.1", - "jquery-form": "^4.2.2" + "@abp/jquery": "~5.2.1", + "jquery-form": "^4.3.0" } }, "@abp/jquery-validation": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@abp/jquery-validation/-/jquery-validation-1.1.1.tgz", - "integrity": "sha512-YvAjIW8epp+ddu01BTUkZWPfEADAvNPJeUrrZ6OpcPWM15Tf+ddr4ATgJ1LCg0Bh5F09iQC855osow3lt8sc7g==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@abp/jquery-validation/-/jquery-validation-5.2.1.tgz", + "integrity": "sha512-Rr/+SWGlXJ53jfysMB/HVNZqsJKCF3rg23ip2Kg6Q+kQTvWVRE3tpkpoBJczOii5tPUk/A/lsJKgRlcsnP0ASw==", "requires": { - "@abp/jquery": "^1.1.1", - "jquery-validation": "^1.19.1" + "@abp/jquery": "~5.2.1", + "jquery-validation": "^1.19.3" } }, "@abp/jquery-validation-unobtrusive": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-1.1.1.tgz", - "integrity": "sha512-q1b0KG8l3DXUiW8JXdq9l1jR/CwgzrZdxwdKGLB2J/oxHlywQIb7yrjR6WGCshjPpcx2SkOL0j/ZXMIMh533hQ==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-5.2.1.tgz", + "integrity": "sha512-uZ36D1FfoLdBb6h44fQ3kZuTk4gJ5yzhyOprkgMsGAJDVakX7w/W4V3ThpiEO+iUpNKTboVIhW2QQ0AXK9rrsg==", "requires": { - "@abp/jquery-validation": "^1.1.1", - "jquery-validation-unobtrusive": "^3.2.11" + "@abp/jquery-validation": "~5.2.1", + "jquery-validation-unobtrusive": "^3.2.12" } }, "@abp/lodash": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@abp/lodash/-/lodash-1.1.1.tgz", - "integrity": "sha512-nH7bRS28Tf4hEXcpKHd1IM+MzYTqX8t3htGmsLX4UESQd52eODYOIldtX6gm3OW1O6ECwW6si/o0M2pTEpQqvg==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@abp/lodash/-/lodash-5.2.1.tgz", + "integrity": "sha512-ILg3X5tTH2HhJMRmg7BP/r+Kstm/nf+0aNQ2exsJoMMnKE7CC0eYQjpSgrze6GwG3a13eamyTlrz+RrlIm5IBA==", "requires": { - "@abp/core": "^1.1.1", - "lodash": "^4.17.15" + "@abp/core": "~5.2.1", + "lodash": "^4.17.21" } }, "@abp/luxon": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@abp/luxon/-/luxon-1.1.1.tgz", - "integrity": "sha512-WNu8JRSb5FDXfcDwjMYyeYeUN48uuDc/I2cdo3xd1rcY+lbmbzxoG9IYOlE8cRHdgX3z82qsZXFs2lcAy0Le2g==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@abp/luxon/-/luxon-5.2.1.tgz", + "integrity": "sha512-D3KVsba969UBYktdbCxq1JQp4kYZ1S7rIMymDJMBoHByXxwwdeXMkvuphAifBmSYTt3K6bNoZdR0VxtnNlPn2A==", "requires": { - "luxon": "^1.21.3" + "@abp/core": "~5.2.1", + "luxon": "^2.3.0" } }, "@abp/malihu-custom-scrollbar-plugin": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-1.1.1.tgz", - "integrity": "sha512-n4b4QK/L1Czdx0oOpUR/bWjK9VENexfUSV/aMjwzHhDmEFABAmEfhIpudCYDwewGswrd7C9agmBvakv2rwPQeA==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-5.2.1.tgz", + "integrity": "sha512-5mvABMCT7tiwPl1vUK8kriN/SRi2gC4VqkEuxghT7uBQG9Cqh5jhJrl80M9ZK/oQFind3r6+SF8OlfwF8yvxHQ==", "requires": { - "@abp/core": "^1.1.1", + "@abp/core": "~5.2.1", "malihu-custom-scrollbar-plugin": "^3.1.5" } }, "@abp/popper.js": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@abp/popper.js/-/popper.js-1.1.1.tgz", - "integrity": "sha512-heR73cqmMsVPNgsPxBYbkvc842R3hEEuDAj4oaXZwVTeWXayU6TdDcGdIrfwMZwW2eWivYNnO0bMOVmuhZKTTQ==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@abp/popper.js/-/popper.js-5.2.1.tgz", + "integrity": "sha512-poQhd5EYjU2/udJWlDEd5mIPWmw6AzNOzAd5V4OUHMai+BHeuhIXQ6mopvxf9lpzytGoFe2ZIiQ547Wfq4Fl/Q==", "requires": { - "@abp/core": "^1.1.1", - "popper.js": "^1.16.0" + "@abp/core": "~5.2.1", + "@popperjs/core": "^2.11.2" } }, "@abp/prismjs": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@abp/prismjs/-/prismjs-1.1.1.tgz", - "integrity": "sha512-kZh2imqVTMDWmE2v+S4wMsigu/hSyVaz3VvZzGctFNctzC17LeD6z6ymfrtQ5BPJbCxGSpHwOt4/Y8bycPTEuQ==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@abp/prismjs/-/prismjs-5.2.1.tgz", + "integrity": "sha512-YNgcM7Kvmu3hGXJh4B8gl7rLzC28VuZYYP7AVptVSbTz/n6usCo21evG/st8L3vXixuQkvnNpBFgacJnHdSJZQ==", "requires": { - "@abp/core": "^1.1.1", - "prismjs": "^1.17.1" + "@abp/clipboard": "~5.2.1", + "@abp/core": "~5.2.1", + "prismjs": "^1.26.0" } }, "@abp/select2": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@abp/select2/-/select2-1.1.1.tgz", - "integrity": "sha512-t0qcJhD+uo2+XWr4nmMQLAx7MRGQUBdZ81YmGty045ReoSaEKQf4haLkzBcMzpBRusiyMQO/PbxjtwMw/xJQTQ==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@abp/select2/-/select2-5.2.1.tgz", + "integrity": "sha512-JH/PqOxhTY05sUyN7of6TNai0W4M3N3OF3Hlwmr8i7hNdYfFwJvQnQzKeKrk/vt8Hv44/JTQDlNKU02BmSBfOQ==", "requires": { - "@abp/core": "^1.1.1", - "select2": "^4.0.12" + "@abp/core": "~5.2.1", + "select2": "^4.0.13" } }, - "@abp/sweetalert": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@abp/sweetalert/-/sweetalert-1.1.1.tgz", - "integrity": "sha512-V6K/qg7J/bdFmom2kaXYeiLvcmLHFl+MacPX4yYAK2biZdb2pWOkUdmcAzZdOT+UruKfLRhvraVC2uXDySi9NA==", + "@abp/sweetalert2": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@abp/sweetalert2/-/sweetalert2-5.2.1.tgz", + "integrity": "sha512-laaF/5WhYw+hNJRTfMzO93fVhaYqnnOcQTUlkGgsZMe2gwebyX73VI8O8Xw7zXmN1Tu/JwqRI46qiafDrPFTLg==", "requires": { - "@abp/core": "^1.1.1", - "sweetalert": "^2.1.2" + "@abp/core": "~5.2.1", + "sweetalert2": "^11.3.6" } }, "@abp/timeago": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@abp/timeago/-/timeago-1.1.1.tgz", - "integrity": "sha512-QYYih/4n6XhCqkRw7fBfyg58T5CHqJHyz7SAfq86RiKAJ4jVtjdSVxj3XKxz8eCb56wZGsO1xXXStI3vdLwwNw==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@abp/timeago/-/timeago-5.2.1.tgz", + "integrity": "sha512-xmgqKEKusB6pcqFhMaz8RTi886ad8RrRMYgMWSw4Zjk1Lr9EqQwKtcE43Ve5XWJamh2Wpk8H7IKLQKHfrV12oA==", "requires": { - "@abp/jquery": "^1.1.1", + "@abp/jquery": "~5.2.1", "timeago": "^1.6.7" } }, "@abp/toastr": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@abp/toastr/-/toastr-1.1.1.tgz", - "integrity": "sha512-GDewBppm+0FO6kTTy0huczoH9P5q6lFicHFAoEawAMkuWJFW/Ihv/YnEvKGDQwGftuVSWexfqBMN/RZ5YSOiGQ==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@abp/toastr/-/toastr-5.2.1.tgz", + "integrity": "sha512-HrnIzvM9LgQdzlmLmvHUVSG4PmWfx9YuozxkFTv+AGa2FAPby5W9hbQ025ry3bPkU9lGWSu/w7JSDqoiL16bPA==", "requires": { - "@abp/jquery": "^1.1.1", + "@abp/jquery": "~5.2.1", "toastr": "^2.1.4" } }, + "@abp/utils": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@abp/utils/-/utils-5.2.1.tgz", + "integrity": "sha512-9hxI24aRZCnxCP+WsOoCltSg4YqG9WtW06t9/f6hFO9B0udXIKyV+95Ndipca/R1G94Snx81ifSwAa+DHbFfvQ==", + "requires": { + "just-compare": "^1.3.0" + } + }, "@fortawesome/fontawesome-free": { - "version": "5.13.0", - "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-free/-/fontawesome-free-5.13.0.tgz", - "integrity": "sha512-xKOeQEl5O47GPZYIMToj6uuA2syyFlq9EMSl2ui0uytjY9xbe8XS0pexNWmxrdcCyNGyDmLyYw5FtKsalBUeOg==" + "version": "5.15.4", + "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-free/-/fontawesome-free-5.15.4.tgz", + "integrity": "sha512-eYm8vijH/hpzr/6/1CJ/V/Eb1xQFW2nnUKArb3z+yUWv7HTwj6M7SP957oMjfZjAHU6qpoNc2wQvIxBLWYa/Jg==" + }, + "@popperjs/core": { + "version": "2.11.5", + "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.5.tgz", + "integrity": "sha512-9X2obfABZuDVLCgPK9aX0a/x4jaOEweTTWE2+9sr0Qqqevj2Uv5XorvusThmc9XGYpS9yI+fhh8RTafBtGposw==" }, "anchor-js": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/anchor-js/-/anchor-js-4.2.2.tgz", - "integrity": "sha512-Rg1tGaG4K3avYqDh7rOYCE/odWxpUiHStnlKL/bGOt9cl6NjR06zhPGVQcCAjE5PT48oQeHVgqNmLzxh0Kuk4A==" + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/anchor-js/-/anchor-js-4.3.1.tgz", + "integrity": "sha512-TziERoibspey7KSm95oIdzTxiogXonJl7inQI07Y3cI25DKQaLkUftB7RhCuSb1GcwunHL6/PcIKM4dDUb9xYQ==" }, "ansi-colors": { "version": "4.1.1", @@ -281,6 +299,36 @@ "requires": { "micromatch": "^3.1.4", "normalize-path": "^2.1.1" + }, + "dependencies": { + "micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + } + }, + "normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", + "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "requires": { + "remove-trailing-separator": "^1.0.1" + } + } } }, "append-buffer": { @@ -441,9 +489,9 @@ } }, "balanced-match": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", - "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" }, "base": { "version": "0.11.2", @@ -510,9 +558,9 @@ } }, "bootstrap": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-4.4.1.tgz", - "integrity": "sha512-tbx5cHubwE6e2ZG7nqM3g/FZ5PQEDMWmMGNrCUBVRPHXTJaH7CBDdsLeu3eCh3B1tzAxTnAbtmrzvWEvT2NNEA==" + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-5.1.3.tgz", + "integrity": "sha512-fcQztozJ8jToQWXxVuEyXWW+dSo8AiXWKwiSSrKWsRB/Qt+Ewwza+JWoLKiTuQLaEPhdNAJ7+Dosc9DOIqNy7Q==" }, "bootstrap-datepicker": { "version": "1.9.0", @@ -564,9 +612,9 @@ "integrity": "sha1-WWFrSYME1Var1GaWayLu2j7KX74=" }, "buffer-from": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", - "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==" + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==" }, "cache-base": { "version": "1.0.1", @@ -584,6 +632,15 @@ "unset-value": "^1.0.0" } }, + "call-bind": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "requires": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + } + }, "camelcase": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz", @@ -606,13 +663,6 @@ "path-is-absolute": "^1.0.0", "readdirp": "^2.2.1", "upath": "^1.1.1" - }, - "dependencies": { - "normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==" - } } }, "class-utils": { @@ -637,9 +687,9 @@ } }, "clipboard": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/clipboard/-/clipboard-2.0.6.tgz", - "integrity": "sha512-g5zbiixBRk/wyKakSwCKd7vQXDjFnAMGHoEyBogG/bw9kTD9GvdAvaoRR1ALcEzt3pVKxZR0pViekPMIS0QyGg==", + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/clipboard/-/clipboard-2.0.10.tgz", + "integrity": "sha512-cz3m2YVwFz95qSEbCDi2fzLN/epEN9zXBvfgAoGkvGOJZATMl9gtTDVOtBYkx2ODUJl2kvmud7n32sV2BpYR4g==", "requires": { "good-listener": "^1.2.2", "select": "^1.1.2", @@ -732,9 +782,9 @@ } }, "convert-source-map": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.7.0.tgz", - "integrity": "sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==", + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz", + "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==", "requires": { "safe-buffer": "~5.1.1" } @@ -745,18 +795,25 @@ "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=" }, "copy-props": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/copy-props/-/copy-props-2.0.4.tgz", - "integrity": "sha512-7cjuUME+p+S3HZlbllgsn2CDwS+5eCCX16qBgNC4jgSTf49qR1VKy/Zhl400m0IQXl/bPGEVqncgUUMjrr4s8A==", + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/copy-props/-/copy-props-2.0.5.tgz", + "integrity": "sha512-XBlx8HSqrT0ObQwmSzM7WE5k8FxTV75h1DX1Z3n6NhQ/UYYAvInWYmG06vFt7hQZArE2fuO62aihiWIVQwh1sw==", "requires": { - "each-props": "^1.3.0", - "is-plain-object": "^2.0.1" + "each-props": "^1.3.2", + "is-plain-object": "^5.0.0" + }, + "dependencies": { + "is-plain-object": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", + "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==" + } } }, "core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", + "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==" }, "d": { "version": "1.0.1", @@ -768,19 +825,19 @@ } }, "datatables.net": { - "version": "1.10.20", - "resolved": "https://registry.npmjs.org/datatables.net/-/datatables.net-1.10.20.tgz", - "integrity": "sha512-4E4S7tTU607N3h0fZPkGmAtr9mwy462u+VJ6gxYZ8MxcRIjZqHy3Dv1GNry7i3zQCktTdWbULVKBbkAJkuHEnQ==", + "version": "1.11.5", + "resolved": "https://registry.npmjs.org/datatables.net/-/datatables.net-1.11.5.tgz", + "integrity": "sha512-nlFst2xfwSWaQgaOg5sXVG3cxYC0tH8E8d65289w9ROgF2TmLULOOpcdMpyxxUim/qEwVSEem42RjkTWEpr3eA==", "requires": { "jquery": ">=1.7" } }, - "datatables.net-bs4": { - "version": "1.10.20", - "resolved": "https://registry.npmjs.org/datatables.net-bs4/-/datatables.net-bs4-1.10.20.tgz", - "integrity": "sha512-kQmMUMsHMOlAW96ztdoFqjSbLnlGZQ63iIM82kHbmldsfYdzuyhbb4hTx6YNBi481WCO3iPSvI6YodNec46ZAw==", + "datatables.net-bs5": { + "version": "1.11.5", + "resolved": "https://registry.npmjs.org/datatables.net-bs5/-/datatables.net-bs5-1.11.5.tgz", + "integrity": "sha512-1zyh972GtuK1uAb9h8nP3jJ7f/3UgCDq69LAaZS2bVd4mEHECJ6vrZLacxrkOHOs/q/H3v5sEMeZ46vXz8ox4w==", "requires": { - "datatables.net": "1.10.20", + "datatables.net": ">=1.11.3", "jquery": ">=1.7" } }, @@ -823,11 +880,12 @@ "integrity": "sha1-vLgrqnKtebQmp2cy8aga1t8m1oQ=" }, "define-properties": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", - "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz", + "integrity": "sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==", "requires": { - "object-keys": "^1.0.12" + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" } }, "define-property": { @@ -914,13 +972,13 @@ } }, "es5-ext": { - "version": "0.10.53", - "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.53.tgz", - "integrity": "sha512-Xs2Stw6NiNHWypzRTY1MtaG/uJlwCk8kH81920ma8mvN8Xq1gsfhZvpkImLQArw8AHnv8MT2I45J3c0R8slE+Q==", + "version": "0.10.60", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.60.tgz", + "integrity": "sha512-jpKNXIt60htYG59/9FGf2PYT3pwMpnEbNKysU+k/4FGwyGtMotOvcZOuW+EmXXYASRqYSXQfGL5cVIthOTgbkg==", "requires": { - "es6-iterator": "~2.0.3", - "es6-symbol": "~3.1.3", - "next-tick": "~1.0.0" + "es6-iterator": "^2.0.3", + "es6-symbol": "^3.1.3", + "next-tick": "^1.1.0" } }, "es6-iterator": { @@ -933,11 +991,6 @@ "es6-symbol": "^3.1.1" } }, - "es6-object-assign": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/es6-object-assign/-/es6-object-assign-1.1.0.tgz", - "integrity": "sha1-wsNYJlYkfDnqEHyx5mUrb58kUjw=" - }, "es6-symbol": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.3.tgz", @@ -999,17 +1052,17 @@ } }, "ext": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/ext/-/ext-1.4.0.tgz", - "integrity": "sha512-Key5NIsUxdqKg3vIsdw9dSuXpPCQ297y6wBjL30edxwPgt2E44WcWBZey/ZvUc6sERLTxKdyCu4gZFmUbk1Q7A==", + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/ext/-/ext-1.6.0.tgz", + "integrity": "sha512-sdBImtzkq2HpkdRLtlLWDa6w4DX22ijZLKx8BMPUuKe1c5lbN6xwQDQCxSfxBQnHZ13ls/FH0MQZx/q/gr6FQg==", "requires": { - "type": "^2.0.0" + "type": "^2.5.0" }, "dependencies": { "type": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/type/-/type-2.0.0.tgz", - "integrity": "sha512-KBt58xCHry4Cejnc2ISQAF7QY+ORngsWfxezO68+12hKV6lQY8P/psIkcbjeHWn7MqcgciWJyCCevFMJdIXpow==" + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/type/-/type-2.6.0.tgz", + "integrity": "sha512-eiDBDOmkih5pMbo9OqsqPRGMljLodLcwd5XD5JbtNB0o89xZAwynY9EdCDsJU7LtcVCClu9DvM7/0Ep1hYX3EQ==" } } }, @@ -1112,6 +1165,11 @@ "time-stamp": "^1.0.0" } }, + "fast-levenshtein": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-1.1.4.tgz", + "integrity": "sha1-5qdUzI8V5YmHqpy9J69m/W9OWvk=" + }, "file-uri-to-path": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", @@ -1157,6 +1215,28 @@ "is-glob": "^4.0.0", "micromatch": "^3.0.4", "resolve-dir": "^1.0.1" + }, + "dependencies": { + "micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + } + } } }, "fined": { @@ -1221,487 +1301,13 @@ "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" }, "fsevents": { - "version": "1.2.12", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.12.tgz", - "integrity": "sha512-Ggd/Ktt7E7I8pxZRbGIs7vwqAPscSESMrCSkx2FtWeqmheJgCo2R74fTsZFCifr0VTPwqRpPv17+6b8Zp7th0Q==", + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz", + "integrity": "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==", "optional": true, "requires": { "bindings": "^1.5.0", - "nan": "^2.12.1", - "node-pre-gyp": "*" - }, - "dependencies": { - "abbrev": { - "version": "1.1.1", - "bundled": true, - "optional": true - }, - "ansi-regex": { - "version": "2.1.1", - "bundled": true, - "optional": true - }, - "aproba": { - "version": "1.2.0", - "bundled": true, - "optional": true - }, - "are-we-there-yet": { - "version": "1.1.5", - "bundled": true, - "optional": true, - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" - } - }, - "balanced-match": { - "version": "1.0.0", - "bundled": true, - "optional": true - }, - "brace-expansion": { - "version": "1.1.11", - "bundled": true, - "optional": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "chownr": { - "version": "1.1.4", - "bundled": true, - "optional": true - }, - "code-point-at": { - "version": "1.1.0", - "bundled": true, - "optional": true - }, - "concat-map": { - "version": "0.0.1", - "bundled": true, - "optional": true - }, - "console-control-strings": { - "version": "1.1.0", - "bundled": true, - "optional": true - }, - "core-util-is": { - "version": "1.0.2", - "bundled": true, - "optional": true - }, - "debug": { - "version": "3.2.6", - "bundled": true, - "optional": true, - "requires": { - "ms": "^2.1.1" - } - }, - "deep-extend": { - "version": "0.6.0", - "bundled": true, - "optional": true - }, - "delegates": { - "version": "1.0.0", - "bundled": true, - "optional": true - }, - "detect-libc": { - "version": "1.0.3", - "bundled": true, - "optional": true - }, - "fs-minipass": { - "version": "1.2.7", - "bundled": true, - "optional": true, - "requires": { - "minipass": "^2.6.0" - } - }, - "fs.realpath": { - "version": "1.0.0", - "bundled": true, - "optional": true - }, - "gauge": { - "version": "2.7.4", - "bundled": true, - "optional": true, - "requires": { - "aproba": "^1.0.3", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.0", - "object-assign": "^4.1.0", - "signal-exit": "^3.0.0", - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wide-align": "^1.1.0" - } - }, - "glob": { - "version": "7.1.6", - "bundled": true, - "optional": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "has-unicode": { - "version": "2.0.1", - "bundled": true, - "optional": true - }, - "iconv-lite": { - "version": "0.4.24", - "bundled": true, - "optional": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "ignore-walk": { - "version": "3.0.3", - "bundled": true, - "optional": true, - "requires": { - "minimatch": "^3.0.4" - } - }, - "inflight": { - "version": "1.0.6", - "bundled": true, - "optional": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.4", - "bundled": true, - "optional": true - }, - "ini": { - "version": "1.3.5", - "bundled": true, - "optional": true - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "bundled": true, - "optional": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "isarray": { - "version": "1.0.0", - "bundled": true, - "optional": true - }, - "minimatch": { - "version": "3.0.4", - "bundled": true, - "optional": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "1.2.5", - "bundled": true, - "optional": true - }, - "minipass": { - "version": "2.9.0", - "bundled": true, - "optional": true, - "requires": { - "safe-buffer": "^5.1.2", - "yallist": "^3.0.0" - } - }, - "minizlib": { - "version": "1.3.3", - "bundled": true, - "optional": true, - "requires": { - "minipass": "^2.9.0" - } - }, - "mkdirp": { - "version": "0.5.3", - "bundled": true, - "optional": true, - "requires": { - "minimist": "^1.2.5" - } - }, - "ms": { - "version": "2.1.2", - "bundled": true, - "optional": true - }, - "needle": { - "version": "2.3.3", - "bundled": true, - "optional": true, - "requires": { - "debug": "^3.2.6", - "iconv-lite": "^0.4.4", - "sax": "^1.2.4" - } - }, - "node-pre-gyp": { - "version": "0.14.0", - "bundled": true, - "optional": true, - "requires": { - "detect-libc": "^1.0.2", - "mkdirp": "^0.5.1", - "needle": "^2.2.1", - "nopt": "^4.0.1", - "npm-packlist": "^1.1.6", - "npmlog": "^4.0.2", - "rc": "^1.2.7", - "rimraf": "^2.6.1", - "semver": "^5.3.0", - "tar": "^4.4.2" - } - }, - "nopt": { - "version": "4.0.3", - "bundled": true, - "optional": true, - "requires": { - "abbrev": "1", - "osenv": "^0.1.4" - } - }, - "npm-bundled": { - "version": "1.1.1", - "bundled": true, - "optional": true, - "requires": { - "npm-normalize-package-bin": "^1.0.1" - } - }, - "npm-normalize-package-bin": { - "version": "1.0.1", - "bundled": true, - "optional": true - }, - "npm-packlist": { - "version": "1.4.8", - "bundled": true, - "optional": true, - "requires": { - "ignore-walk": "^3.0.1", - "npm-bundled": "^1.0.1", - "npm-normalize-package-bin": "^1.0.1" - } - }, - "npmlog": { - "version": "4.1.2", - "bundled": true, - "optional": true, - "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "bundled": true, - "optional": true - }, - "object-assign": { - "version": "4.1.1", - "bundled": true, - "optional": true - }, - "once": { - "version": "1.4.0", - "bundled": true, - "optional": true, - "requires": { - "wrappy": "1" - } - }, - "os-homedir": { - "version": "1.0.2", - "bundled": true, - "optional": true - }, - "os-tmpdir": { - "version": "1.0.2", - "bundled": true, - "optional": true - }, - "osenv": { - "version": "0.1.5", - "bundled": true, - "optional": true, - "requires": { - "os-homedir": "^1.0.0", - "os-tmpdir": "^1.0.0" - } - }, - "path-is-absolute": { - "version": "1.0.1", - "bundled": true, - "optional": true - }, - "process-nextick-args": { - "version": "2.0.1", - "bundled": true, - "optional": true - }, - "rc": { - "version": "1.2.8", - "bundled": true, - "optional": true, - "requires": { - "deep-extend": "^0.6.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - } - }, - "readable-stream": { - "version": "2.3.7", - "bundled": true, - "optional": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "rimraf": { - "version": "2.7.1", - "bundled": true, - "optional": true, - "requires": { - "glob": "^7.1.3" - } - }, - "safe-buffer": { - "version": "5.1.2", - "bundled": true, - "optional": true - }, - "safer-buffer": { - "version": "2.1.2", - "bundled": true, - "optional": true - }, - "sax": { - "version": "1.2.4", - "bundled": true, - "optional": true - }, - "semver": { - "version": "5.7.1", - "bundled": true, - "optional": true - }, - "set-blocking": { - "version": "2.0.0", - "bundled": true, - "optional": true - }, - "signal-exit": { - "version": "3.0.2", - "bundled": true, - "optional": true - }, - "string-width": { - "version": "1.0.2", - "bundled": true, - "optional": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - }, - "string_decoder": { - "version": "1.1.1", - "bundled": true, - "optional": true, - "requires": { - "safe-buffer": "~5.1.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "bundled": true, - "optional": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "strip-json-comments": { - "version": "2.0.1", - "bundled": true, - "optional": true - }, - "tar": { - "version": "4.4.13", - "bundled": true, - "optional": true, - "requires": { - "chownr": "^1.1.1", - "fs-minipass": "^1.2.5", - "minipass": "^2.8.6", - "minizlib": "^1.2.1", - "mkdirp": "^0.5.0", - "safe-buffer": "^5.1.2", - "yallist": "^3.0.3" - } - }, - "util-deprecate": { - "version": "1.0.2", - "bundled": true, - "optional": true - }, - "wide-align": { - "version": "1.1.3", - "bundled": true, - "optional": true, - "requires": { - "string-width": "^1.0.2 || 2" - } - }, - "wrappy": { - "version": "1.0.2", - "bundled": true, - "optional": true - }, - "yallist": { - "version": "3.1.1", - "bundled": true, - "optional": true - } + "nan": "^2.12.1" } }, "function-bind": { @@ -1714,15 +1320,25 @@ "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==" }, + "get-intrinsic": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", + "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==", + "requires": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.1" + } + }, "get-value": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=" }, "glob": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", - "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", + "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", "requires": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", @@ -1769,15 +1385,16 @@ } }, "glob-watcher": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/glob-watcher/-/glob-watcher-5.0.3.tgz", - "integrity": "sha512-8tWsULNEPHKQ2MR4zXuzSmqbdyV5PtwwCaWSGQ1WwHsJ07ilNeN1JB8ntxhckbnpSHaf9dXFUHzIWvm1I13dsg==", + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/glob-watcher/-/glob-watcher-5.0.5.tgz", + "integrity": "sha512-zOZgGGEHPklZNjZQaZ9f41i7F2YwE+tS5ZHrDhbBCk3stwahn5vQxnFmBJZHoYdusR6R1bLSXeGUy/BhctwKzw==", "requires": { "anymatch": "^2.0.0", "async-done": "^1.2.0", "chokidar": "^2.0.0", "is-negated-glob": "^1.0.0", "just-debounce": "^1.0.0", + "normalize-path": "^3.0.0", "object.defaults": "^1.1.0" } }, @@ -1820,9 +1437,9 @@ } }, "graceful-fs": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.3.tgz", - "integrity": "sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ==" + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" }, "gulp": { "version": "4.0.2", @@ -1844,9 +1461,9 @@ } }, "gulp-cli": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/gulp-cli/-/gulp-cli-2.2.0.tgz", - "integrity": "sha512-rGs3bVYHdyJpLqR0TUBnlcZ1O5O++Zs4bA0ajm+zr3WFCfiSLjGwoCBqFs18wzN+ZxahT9DkOK5nDf26iDsWjA==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/gulp-cli/-/gulp-cli-2.3.0.tgz", + "integrity": "sha512-zzGBl5fHo0EKSXsHzjspp3y5CONegCm8ErO5Qh0UzFzk2y4tMvzLWhoDokADbarfZRL2pGpRp7yt6gfJX4ph7A==", "requires": { "ansi-colors": "^1.0.1", "archy": "^1.0.0", @@ -1856,7 +1473,7 @@ "copy-props": "^2.0.1", "fancy-log": "^1.3.2", "gulplog": "^1.0.0", - "interpret": "^1.1.0", + "interpret": "^1.4.0", "isobject": "^3.0.1", "liftoff": "^3.1.0", "matchdep": "^2.0.0", @@ -1864,7 +1481,7 @@ "pretty-hrtime": "^1.0.0", "replace-homedir": "^1.0.0", "semver-greatest-satisfied-range": "^1.1.0", - "v8flags": "^3.0.1", + "v8flags": "^3.2.0", "yargs": "^7.1.0" } } @@ -1878,10 +1495,26 @@ "glogg": "^1.0.0" } }, + "has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "requires": { + "function-bind": "^1.1.1" + } + }, + "has-property-descriptors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", + "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", + "requires": { + "get-intrinsic": "^1.1.1" + } + }, "has-symbols": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz", - "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==" + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==" }, "has-value": { "version": "1.0.0", @@ -1921,9 +1554,9 @@ } }, "hosted-git-info": { - "version": "2.8.8", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz", - "integrity": "sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==" + "version": "2.8.9", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", + "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==" }, "inflight": { "version": "1.0.6", @@ -1940,14 +1573,14 @@ "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" }, "ini": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", - "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==" + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" }, "interpret": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.2.0.tgz", - "integrity": "sha512-mT34yGKMNceBQUoVn7iCDKDntA7SC6gycMAWzGx1z/CMCTV7b2AAtXlo3nRyHZ1FelRkQbQjprHSYGwzLtkVbw==" + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz", + "integrity": "sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==" }, "invert-kv": { "version": "1.0.0", @@ -1999,6 +1632,14 @@ "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" }, + "is-core-module": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.8.1.tgz", + "integrity": "sha512-SdNCUs284hr40hFTFP6l0IfZ/RSrMXF3qgoRHd3/79unUTvrFO/JoXwkGm+5J/Oe3E/b5GsnG330uUNgRpu1PA==", + "requires": { + "has": "^1.0.3" + } + }, "is-data-descriptor": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", @@ -2053,9 +1694,9 @@ } }, "is-glob": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", - "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", "requires": { "is-extglob": "^2.1.1" } @@ -2138,14 +1779,14 @@ "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" }, "jquery": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.4.1.tgz", - "integrity": "sha512-36+AdBzCL+y6qjw5Tx7HgzeGCzC81MDDgaUP8ld2zhx58HdqXGoBd+tHdrBMiyjGQs0Hxs/MLZTu/eHNJJuWPw==" + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.6.0.tgz", + "integrity": "sha512-JVzAR/AjBvVt2BmYhxRCSYysDsPcssdmTFnzyLEts9qNwmjmu4JTAMYubEfwVOSwpQ1I1sKKFcxhZCI2buerfw==" }, "jquery-form": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/jquery-form/-/jquery-form-4.2.2.tgz", - "integrity": "sha512-HJTef7DRBSg8ge/RNUw8rUTTtB3l8ozO0OhD16AzDl+eIXp4skgCqRTd9fYPsOzL+pN6+1B9wvbTLGjgikz8Tg==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/jquery-form/-/jquery-form-4.3.0.tgz", + "integrity": "sha512-q3uaVCEWdLOYUCI6dpNdwf/7cJFOsUgdpq6r0taxtGQ5NJSkOzofyWm4jpOuJ5YxdmL1FI5QR+q+HB63HHLGnQ==", "requires": { "jquery": ">=1.7.2" } @@ -2156,16 +1797,16 @@ "integrity": "sha1-BvAzXxbjU6aV5yBr9QUDy1I6buU=" }, "jquery-validation": { - "version": "1.19.1", - "resolved": "https://registry.npmjs.org/jquery-validation/-/jquery-validation-1.19.1.tgz", - "integrity": "sha512-QNnrZBqSltWUEJx+shOY5WtfrIb0gWmDjFfQP8rZKqMMSfpRSwEkSqhfHPvDfkObD8Hnv5KHSYI8yg73sVFdqA==" + "version": "1.19.3", + "resolved": "https://registry.npmjs.org/jquery-validation/-/jquery-validation-1.19.3.tgz", + "integrity": "sha512-iXxCS5W7STthSTMFX/NDZfWHBLbJ1behVK3eAgHXAV8/0vRa9M4tiqHvJMr39VGWHMGdlkhrtrkBuaL2UlE8yw==" }, "jquery-validation-unobtrusive": { - "version": "3.2.11", - "resolved": "https://registry.npmjs.org/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-3.2.11.tgz", - "integrity": "sha512-3FQPllaWdD+Aq55zJLGSW39+eXPDz1HhwAvrSwYi8zHQ8DVcu5IJ1HVeTiCl0BnCnrIBvfFU3zEB/DrGdcoRIQ==", + "version": "3.2.12", + "resolved": "https://registry.npmjs.org/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-3.2.12.tgz", + "integrity": "sha512-kPixGhVcuat7vZXngGFfSIksy4VlzZcHyRgnBIZdsfVneCU+D5sITC8T8dD/9c9K/Q+qkMlgp7ufJHz93nKSuQ==", "requires": { - "jquery": ">=1.8", + "jquery": "^3.5.1", "jquery-validation": ">=1.16" } }, @@ -2174,10 +1815,15 @@ "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=" }, + "just-compare": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/just-compare/-/just-compare-1.5.1.tgz", + "integrity": "sha512-xDEEFHNIyJNmN4uo/2RVeUcay9THtN/5ka/iw98Y/gsa8w9KXZQuyaf5eFUY6VlntA2+G+bdPmdhqqTs7T+BRw==" + }, "just-debounce": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/just-debounce/-/just-debounce-1.0.0.tgz", - "integrity": "sha1-h/zPrv/AtozRnVX2cilD+SnqNeo=" + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/just-debounce/-/just-debounce-1.1.0.tgz", + "integrity": "sha512-qpcRocdkUmf+UTNBYx5w6dexX5J31AKK1OmPwH630a83DdVVUIngk55RSAiIGpQyoH0dlr872VHfPjnQnK1qDQ==" }, "kind-of": { "version": "6.0.3", @@ -2194,9 +1840,9 @@ } }, "lazystream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/lazystream/-/lazystream-1.0.0.tgz", - "integrity": "sha1-9plf4PggOS9hOWvolGJAe7dxaOQ=", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/lazystream/-/lazystream-1.0.1.tgz", + "integrity": "sha512-b94GiNHQNy6JNTrt5w6zNyffMrNkXZb3KTkCZJb2V1xaEGCk093vkZ2jk3tpaeP33/OiXC+WvK9AxUebnf5nbw==", "requires": { "readable-stream": "^2.0.5" } @@ -2245,14 +1891,14 @@ } }, "lodash": { - "version": "4.17.15", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz", - "integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==" + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" }, "luxon": { - "version": "1.22.2", - "resolved": "https://registry.npmjs.org/luxon/-/luxon-1.22.2.tgz", - "integrity": "sha512-vq6eSaOOw1fKob+JXwfu0e3/UFUT4G4HTFRJab7dch8J1OdOGW/vXqCiJsY7rm2In+5gKNYx0EtnYT0Tc5V4Qw==" + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/luxon/-/luxon-2.3.2.tgz", + "integrity": "sha512-MlAQQVMFhGk4WUA6gpfsy0QycnKP0+NlCBJRVRNPxxSIbjrCbQ65nrpJD3FVyJNZLuJ0uoqL57ye6BmDYgHaSw==" }, "make-iterator": { "version": "1.0.1", @@ -2312,6 +1958,26 @@ "requires": { "is-extglob": "^2.1.0" } + }, + "micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + } } } }, @@ -2321,29 +1987,49 @@ "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==" }, "micromatch": { - "version": "3.1.10", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", + "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "braces": "^2.3.1", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "extglob": "^2.0.4", - "fragment-cache": "^0.2.1", - "kind-of": "^6.0.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" + "braces": "^3.0.2", + "picomatch": "^2.3.1" + }, + "dependencies": { + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "requires": { + "fill-range": "^7.0.1" + } + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==" + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "requires": { + "is-number": "^7.0.0" + } + } } }, "minimatch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", "requires": { "brace-expansion": "^1.1.7" } @@ -2378,9 +2064,9 @@ "integrity": "sha512-kDcwXR4PS7caBpuRYYBUz9iVixUk3anO3f5OYFiIPwK/20vCzKCHyKoulbiDY1S53zD2bxUpxN/IJ+TnXjfvxg==" }, "nan": { - "version": "2.14.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.0.tgz", - "integrity": "sha512-INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg==", + "version": "2.15.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.15.0.tgz", + "integrity": "sha512-8ZtvEnA2c5aYCZYd1cvgdnU6cqwixRoYg70xPLWUws5ORTa/lnw+u4amixRS/Ac5U5mQVgp9pnlSUnbNWFaWZQ==", "optional": true }, "nanomatch": { @@ -2402,9 +2088,9 @@ } }, "next-tick": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.0.0.tgz", - "integrity": "sha1-yobR/ogoFpsBICCOPchCS524NCw=" + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.1.0.tgz", + "integrity": "sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ==" }, "normalize-package-data": { "version": "2.5.0", @@ -2418,12 +2104,9 @@ } }, "normalize-path": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", - "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", - "requires": { - "remove-trailing-separator": "^1.0.1" - } + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==" }, "now-and-later": { "version": "2.0.1", @@ -2480,14 +2163,14 @@ } }, "object.assign": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz", - "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==", + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz", + "integrity": "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==", "requires": { - "define-properties": "^1.1.2", - "function-bind": "^1.1.1", - "has-symbols": "^1.0.0", - "object-keys": "^1.0.11" + "call-bind": "^1.0.0", + "define-properties": "^1.1.3", + "has-symbols": "^1.0.1", + "object-keys": "^1.1.1" } }, "object.defaults": { @@ -2584,15 +2267,6 @@ "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=" }, - "path": { - "version": "0.12.7", - "resolved": "https://registry.npmjs.org/path/-/path-0.12.7.tgz", - "integrity": "sha1-1NwqUGxM4hl+tIHr/NWzbAFAsQ8=", - "requires": { - "process": "^0.11.1", - "util": "^0.10.3" - } - }, "path-dirname": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", @@ -2612,9 +2286,9 @@ "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" }, "path-parse": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", - "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==" + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" }, "path-root": { "version": "0.1.1", @@ -2639,6 +2313,11 @@ "pinkie-promise": "^2.0.0" } }, + "picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==" + }, "pify": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", @@ -2657,11 +2336,6 @@ "pinkie": "^2.0.0" } }, - "popper.js": { - "version": "1.16.1", - "resolved": "https://registry.npmjs.org/popper.js/-/popper.js-1.16.1.tgz", - "integrity": "sha512-Wb4p1J4zyFTbM+u6WuO4XstYx4Ky9Cewe4DWrel7B0w6VVICvPwdOpotjzcf6eD8TsckVnIMNONQyPIUFOUbCQ==" - }, "posix-character-classes": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", @@ -2673,28 +2347,15 @@ "integrity": "sha1-t+PqQkNaTJsnWdmeDyAesZWALuE=" }, "prismjs": { - "version": "1.19.0", - "resolved": "https://registry.npmjs.org/prismjs/-/prismjs-1.19.0.tgz", - "integrity": "sha512-IVFtbW9mCWm9eOIaEkNyo2Vl4NnEifis2GQ7/MLRG5TQe6t+4Sj9J5QWI9i3v+SS43uZBlCAOn+zYTVYQcPXJw==", - "requires": { - "clipboard": "^2.0.0" - } - }, - "process": { - "version": "0.11.10", - "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", - "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=" + "version": "1.28.0", + "resolved": "https://registry.npmjs.org/prismjs/-/prismjs-1.28.0.tgz", + "integrity": "sha512-8aaXdYvl1F7iC7Xm1spqSaY/OJBpYW3v+KJ+F17iYxvdc8sfjW194COK5wVhMZX45tGteiBQgdvD/nhxcRwylw==" }, "process-nextick-args": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" }, - "promise-polyfill": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/promise-polyfill/-/promise-polyfill-6.1.0.tgz", - "integrity": "sha1-36lpQ+qcEh/KTem1hoyznTRy4Fc=" - }, "pump": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/pump/-/pump-2.0.1.tgz", @@ -2755,6 +2416,28 @@ "graceful-fs": "^4.1.11", "micromatch": "^3.1.10", "readable-stream": "^2.0.2" + }, + "dependencies": { + "micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + } + } } }, "rechoir": { @@ -2799,9 +2482,9 @@ "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=" }, "repeat-element": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz", - "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==" + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.4.tgz", + "integrity": "sha512-LFiNfRcSu7KK3evMyYOuCzv3L10TW7yC1G2/+StMjK8Y6Vqd2MG7r/Qjw4ghtuCOjFvlnms/iMmLqpvW/ES/WQ==" }, "repeat-string": { "version": "1.6.1", @@ -2809,9 +2492,9 @@ "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=" }, "replace-ext": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-1.0.0.tgz", - "integrity": "sha1-3mMSg3P8v3w8z6TeWkgMRaZ5WOs=" + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-1.0.1.tgz", + "integrity": "sha512-yD5BHCe7quCgBph4rMQ+0KkIRKwWCrHDOX1p1Gp6HwjPM5kVoCdKGNhN7ydqqsX6lJEnQDKZ/tFMiEdQ1dvPEw==" }, "replace-homedir": { "version": "1.0.0", @@ -2834,11 +2517,13 @@ "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=" }, "resolve": { - "version": "1.15.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.15.1.tgz", - "integrity": "sha512-84oo6ZTtoTUpjgNEr5SJyzQhzL72gaRodsSfyxC/AXRvwu0Yse9H8eF9IpGo7b8YetZhlI6v7ZQ6bKBFV/6S7w==", + "version": "1.22.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.0.tgz", + "integrity": "sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw==", "requires": { - "path-parse": "^1.0.6" + "is-core-module": "^2.8.1", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" } }, "resolve-dir": { @@ -2868,14 +2553,6 @@ "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==" }, - "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "requires": { - "glob": "^7.1.3" - } - }, "safe-buffer": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", @@ -3053,9 +2730,9 @@ } }, "source-map-url": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz", - "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=" + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.1.tgz", + "integrity": "sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw==" }, "sparkles": { "version": "1.0.1", @@ -3063,32 +2740,32 @@ "integrity": "sha512-dSO0DDYUahUt/0/pD/Is3VIm5TGJjludZ0HVymmhYF6eNA53PVLhnUk0znSYbH8IYBuJdCE+1luR22jNLMaQdw==" }, "spdx-correct": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.0.tgz", - "integrity": "sha512-lr2EZCctC2BNR7j7WzJ2FpDznxky1sjfxvvYEyzxNyb6lZXHODmEoJeFu4JupYlkfha1KZpJyoqiJ7pgA1qq8Q==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", + "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", "requires": { "spdx-expression-parse": "^3.0.0", "spdx-license-ids": "^3.0.0" } }, "spdx-exceptions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz", - "integrity": "sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA==" + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", + "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==" }, "spdx-expression-parse": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz", - "integrity": "sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", "requires": { "spdx-exceptions": "^2.1.0", "spdx-license-ids": "^3.0.0" } }, "spdx-license-ids": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz", - "integrity": "sha512-J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q==" + "version": "3.0.11", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.11.tgz", + "integrity": "sha512-Ctl2BrFiM0X3MANYgj3CkygxhRmr9mi6xhejbdO960nF6EDJApTYpn0BQnDKlnNBULKiCN1n3w9EBkHK8ZWg+g==" }, "split-string": { "version": "3.1.0", @@ -3166,6 +2843,11 @@ "is-utf8": "^0.2.0" } }, + "supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==" + }, "sver-compat": { "version": "1.5.0", "resolved": "https://registry.npmjs.org/sver-compat/-/sver-compat-1.5.0.tgz", @@ -3175,14 +2857,10 @@ "es6-symbol": "^3.1.1" } }, - "sweetalert": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/sweetalert/-/sweetalert-2.1.2.tgz", - "integrity": "sha512-iWx7X4anRBNDa/a+AdTmvAzQtkN1+s4j/JJRWlHpYE8Qimkohs8/XnFcWeYHH2lMA8LRCa5tj2d244If3S/hzA==", - "requires": { - "es6-object-assign": "^1.1.0", - "promise-polyfill": "^6.0.2" - } + "sweetalert2": { + "version": "11.4.8", + "resolved": "https://registry.npmjs.org/sweetalert2/-/sweetalert2-11.4.8.tgz", + "integrity": "sha512-BDS/+E8RwaekGSxCPUbPnsRAyQ439gtXkTF/s98vY2l9DaVEOMjGj1FaQSorfGREKsbbxGSP7UXboibL5vgTMA==" }, "through2": { "version": "2.0.5", @@ -3299,15 +2977,16 @@ "integrity": "sha1-5z3T17DXxe2G+6xrCufYxqadUPo=" }, "undertaker": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/undertaker/-/undertaker-1.2.1.tgz", - "integrity": "sha512-71WxIzDkgYk9ZS+spIB8iZXchFhAdEo2YU8xYqBYJ39DIUIqziK78ftm26eecoIY49X0J2MLhG4hr18Yp6/CMA==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/undertaker/-/undertaker-1.3.0.tgz", + "integrity": "sha512-/RXwi5m/Mu3H6IHQGww3GNt1PNXlbeCuclF2QYR14L/2CHPz3DFZkvB5hZ0N/QUkiXWCACML2jXViIQEQc2MLg==", "requires": { "arr-flatten": "^1.0.1", "arr-map": "^2.0.0", "bach": "^1.0.0", "collection-map": "^1.0.0", "es6-weak-map": "^2.0.1", + "fast-levenshtein": "^1.0.0", "last-run": "^1.1.0", "object.defaults": "^1.0.0", "object.reduce": "^1.0.0", @@ -3390,30 +3069,15 @@ "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==" }, - "util": { - "version": "0.10.4", - "resolved": "https://registry.npmjs.org/util/-/util-0.10.4.tgz", - "integrity": "sha512-0Pm9hTQ3se5ll1XihRic3FDIku70C+iHUdT/W926rSgHV5QgXsYbKZN8MSC3tJtSkhuROzvsQjAaFENRXr+19A==", - "requires": { - "inherits": "2.0.3" - }, - "dependencies": { - "inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" - } - } - }, "util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" }, "v8flags": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/v8flags/-/v8flags-3.1.3.tgz", - "integrity": "sha512-amh9CCg3ZxkzQ48Mhcb8iX7xpAfYJgePHxWMQCBWECpOSqJUXgY26ncA61UTV0BkPqfhcy6mzwCIoP4ygxpW8w==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/v8flags/-/v8flags-3.2.0.tgz", + "integrity": "sha512-mH8etigqMfiGWdeXpaaqGfs6BndypxusHHcv2qSHyZkGEznCd/qAXCWWRzeowtL54147cktFOC4P5y+kl8d8Jg==", "requires": { "homedir-polyfill": "^1.0.1" } @@ -3433,9 +3097,9 @@ "integrity": "sha1-HCQ6ULWVwb5Up1S/7OhWO5/42BM=" }, "vinyl": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-2.2.0.tgz", - "integrity": "sha512-MBH+yP0kC/GQ5GwBqrTPTzEfiiLjta7hTtvQtbxBgTeSXsmKQRQecjibMbxIXzVT3Y9KJK+drOz1/k+vsu8Nkg==", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-2.2.1.tgz", + "integrity": "sha512-LII3bXRFBZLlezoG5FfZVcXflZgWP/4dCwKtxd5ky9+LOtM4CS3bIRQsmR1KMnMW07jpE8fqR2lcxPZ+8sJIcw==", "requires": { "clone": "^2.1.1", "clone-buffer": "^1.0.0", @@ -3481,6 +3145,16 @@ "now-and-later": "^2.0.0", "remove-bom-buffer": "^3.0.0", "vinyl": "^2.0.0" + }, + "dependencies": { + "normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", + "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "requires": { + "remove-trailing-separator": "^1.0.1" + } + } } }, "which": { @@ -3516,14 +3190,14 @@ "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==" }, "y18n": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz", - "integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE=" + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.2.tgz", + "integrity": "sha512-uGZHXkHnhF0XeeAPgnKfPv1bgKAYyVvmNL1xlKsPYZPaIHxGti2hHqvOCQv71XMsLxu1QjergkqogUnms5D3YQ==" }, "yargs": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-7.1.0.tgz", - "integrity": "sha1-a6MY6xaWFyf10oT46gA+jWFU0Mg=", + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-7.1.2.tgz", + "integrity": "sha512-ZEjj/dQYQy0Zx0lgLMLR8QuaqTihnxirir7EwUHp1Axq4e3+k8jXU5K0VLbNvedv1f4EWtBonDIZm0NUr+jCcA==", "requires": { "camelcase": "^3.0.0", "cliui": "^3.2.0", @@ -3537,15 +3211,16 @@ "string-width": "^1.0.2", "which-module": "^1.0.0", "y18n": "^3.2.1", - "yargs-parser": "^5.0.0" + "yargs-parser": "^5.0.1" } }, "yargs-parser": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-5.0.0.tgz", - "integrity": "sha1-J17PDX/+Bcd+ZOfIbkzZS/DhIoo=", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-5.0.1.tgz", + "integrity": "sha512-wpav5XYiddjXxirPoCTUPbqM0PXvJ9hiBMvuJgInvo4/lAOTZzUprArw17q2O1P2+GHhbBr18/iQwjL5Z9BqfA==", "requires": { - "camelcase": "^3.0.0" + "camelcase": "^3.0.0", + "object.assign": "^4.1.0" } } } diff --git a/modules/docs/app/VoloDocs.Web/yarn.lock b/modules/docs/app/VoloDocs.Web/yarn.lock index 802094ec7c..8e5f9ddd6d 100644 --- a/modules/docs/app/VoloDocs.Web/yarn.lock +++ b/modules/docs/app/VoloDocs.Web/yarn.lock @@ -2009,9 +2009,9 @@ pretty-hrtime@^1.0.0: resolved "https://registry.yarnpkg.com/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz#b7e3ea42435a4c9b2759d99e0f201eb195802ee1" prismjs@^1.26.0: - version "1.27.0" - resolved "https://registry.yarnpkg.com/prismjs/-/prismjs-1.27.0.tgz#bb6ee3138a0b438a3653dd4d6ce0cc6510a45057" - integrity sha512-t13BGPUlFDR7wRB5kQDG4jjl7XeuH6jbJGt11JHPL96qwsEHNX2+68tFXqc1/k+/jALsbSWJKUOT/hcYAZ5LkA== + version "1.28.0" + resolved "https://registry.yarnpkg.com/prismjs/-/prismjs-1.28.0.tgz#0d8f561fa0f7cf6ebca901747828b149147044b6" + integrity sha512-8aaXdYvl1F7iC7Xm1spqSaY/OJBpYW3v+KJ+F17iYxvdc8sfjW194COK5wVhMZX45tGteiBQgdvD/nhxcRwylw== process-nextick-args@^2.0.0, process-nextick-args@~2.0.0: version "2.0.0" From ea0f3c2c18971ef6769016140ecb985a6d7da832 Mon Sep 17 00:00:00 2001 From: Engincan VESKE Date: Tue, 19 Apr 2022 09:15:20 +0300 Subject: [PATCH 43/65] 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 44/65] `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 45/65] 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 061d152bcf855e32f0940e22c993689b6ca9f27f Mon Sep 17 00:00:00 2001 From: Yunus Emre Kalkan Date: Tue, 19 Apr 2022 11:05:01 +0300 Subject: [PATCH 46/65] Update en.json --- .../AbpIoLocalization/Www/Localization/Resources/en.json | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/en.json b/abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/en.json index 0b9d6d96b2..35b755e8c3 100644 --- a/abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/en.json +++ b/abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/en.json @@ -214,7 +214,11 @@ "SeeDocs": "See Docs", "None": "None", "Application": "Application", + "ApplicationExplanation": "Creates a fully layered solution based on Domain Driven Design practices. Recommended for long-term projects that need a maintainable and extensible codebase.", + "ApplicationNoLayer": "Application (single layer)", + "ApplicationNoLayerExplanation": "Creates a single-layer web application. Recommended for building an application with a simpler and easy to understand architecture.", "Module": "Module", + "ModuleExplanation": "Creates a reusable, fully layered application module solution. You can use this option to create modules for your modular application.", "PackageName": "Package Name", "LicenseURL": "License URL", "License": "License", From 9f4dacc984657c4ff77cc49a55f2dbfdb7bf9412 Mon Sep 17 00:00:00 2001 From: Yunus Emre Kalkan Date: Tue, 19 Apr 2022 11:13:36 +0300 Subject: [PATCH 47/65] Update tr.json --- .../AbpIoLocalization/Www/Localization/Resources/tr.json | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/tr.json b/abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/tr.json index f9c6d54204..ad8393fab3 100644 --- a/abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/tr.json +++ b/abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/tr.json @@ -214,7 +214,11 @@ "SeeDocs": "Dökümanı Görüntüle", "None": "Hiç", "Application": "Uygulama", + "ApplicationExplanation": "Domain Driven Design pratikleri üzerine oluşturulmuş çok katmanlı bir çözüm oluşturur. Bakıma ve geliştirmeye açık kod tabanına ihtiyaç duyan uzun süreli projeler için önerilir.", + "ApplicationNoLayer": "Uygulama (tek katmanlı)", + "ApplicationNoLayerExplanation": "Tek katmanlı Web uygulaması oluşturur. Daha basit ve anlaması kolay mimari ile uygulama geliştirmek için önerilir.", "Module": "Modül", + "ModuleExplanation": "Tamamen katmanlanmış, tekrar kullanılabilir bir uygulama modülü oluşturur. Uygulamanıza modül yaratmak için bu seçeneği kullanabilirsiniz.", "PackageName": "Paket adı", "LicenseURL": "Lisans Linki", "License": "Lisans", From d30082bc9616c2f61aa7319aa9646a86401b79ad Mon Sep 17 00:00:00 2001 From: enisn Date: Tue, 19 Apr 2022 12:52:40 +0300 Subject: [PATCH 48/65] 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 49/65] 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); } From d871f35b3440d214a856afc0ccca11fac467a5c1 Mon Sep 17 00:00:00 2001 From: albert <9526587+ebicoglu@users.noreply.github.com> Date: Wed, 20 Apr 2022 04:21:17 +0300 Subject: [PATCH 50/65] Add comparision table --- .../_results/with-without-abp-comparison.png | Bin 0 -> 62756 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 test/AbpPerfTest/_results/with-without-abp-comparison.png diff --git a/test/AbpPerfTest/_results/with-without-abp-comparison.png b/test/AbpPerfTest/_results/with-without-abp-comparison.png new file mode 100644 index 0000000000000000000000000000000000000000..997e1bda13919de5a4a4c13b52c25a3218335b4e GIT binary patch literal 62756 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

E3EJ+Cx)iXLumd$sN7rR> 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
cY%&+B><=(Jnh7MAgltRXWJUPk zg#_5)4EF}1FxL=NrKBN_L0e%md-W`WLr^(Zgje5LpV{>lQ7(%5#+N&vqxP&psi2{k zEPM9ME+{qNA59^=$F+_P^S1CkF_cgCVEDlp=6<_NwEgh151wymY}h6EJ_t0F|I|R; zFsrUcX|AFWT~lt|uyc$bQgK=&G+7=Z@mS{G@5eeeR6b1$^YMpN5^2#FqF{4xo%;GV zMxZ-ONLCEiN{Z}b(o9~fum>DPDi^0u?8pPV@I{|u*@L~FAx-Nr1GpkNc|uz@?Y&1` zz7%C_H~G`3v5)CmSduE7=foMdyC?y`I>NHFUpEsS>brl)GRO4{TIR3jLl(vPv}iCd zXNdjRH4sXUZYcNPwQ^tHRHzu38I$;8FI@GB1qvR_J|2yjy}|-1L-{SwDV`+%xz*F~ zAp&e$Sh!0^6oc~S+4f&>(=hM4>Qdgd1UX%#5m;YuP0my$MgojrMszoL>wC* zv1=~)+$b23AXuev^h}w;F09M*Xbn-w&xD9aD6(T_P`zL)xvD)RA4fiK=M}^f4qsatT~sjNpUvEWe{3FYeb7J zs<4bpl%n8FHPTOrUw!m@w?BB?J2YaYXN>uD{{$CTRlBqN?$@2&>Z-iOB+3$+ViCF* zYEPJL#9t@YR;gd@`9QG>`qW*jvc0$h_!v+_m&VE40*bRDQ096SU0SZ0g(|7%y${XKW9lfypYM7>3zd-A1=hPBg-L68To<82rdUNfKaRAP% zd#O{rExT8$sP&wF?p4=b`9cbkLxdK^K0XQfpklXyDw$)63?5-0$#A{{=2lp*_?B0c z?6r)55}%+ggD_LGBGa8nu(^4vFyO8gr*17&)51o#(;RcZYq;S&%WRzIjK^u2SR?6* zz(O={O4s5nhL?~|c%hm7tE;u_pQ9m`>W!Ld31A?E{=<2_Jk>2K*ULb(o+Mb0t%gS$ zq*)MJ8h@}ftJ@MPcLn-ZIv~yWYfNYG|hVS*n!Z&=zMJu{9sm1;+m2xA#`8g|$qZ?hqauwU%ne-SLNbyci z1y(qo#P)WT7T$aKO`gw<(|kT%E=TU9wpG+G@)w+jfZL93{@HTEO&OALT&7nqp_!`B zE|j(H%1J_KIc>~^-$ki=hCqKl%$bhS?${icV+x3S19^T-=1yXZKhH!~dgKiI*skom zXG})#^LghKPGVnDrp)P68CE@ira``9|5*m#5Om8^kJ0KLq%QcCav*Htef2j>QoZt2 zk9o)iho1(U)x|xupATf5Fl+I46Q@7B_-_Z6{vFl*_XBeOk7 Date: Wed, 20 Apr 2022 13:25:47 +0300 Subject: [PATCH 51/65] add scroll-index feature to blogging document --- docs/en/Modules/Cms-Kit/Blogging.md | 7 ++++++- .../images/cmskit-module-features-dialog-2.png | Bin 0 -> 10405 bytes .../cmskit-module-features-scroll-index.png | Bin 0 -> 108721 bytes 3 files changed, 6 insertions(+), 1 deletion(-) create mode 100644 docs/en/images/cmskit-module-features-dialog-2.png create mode 100644 docs/en/images/cmskit-module-features-scroll-index.png diff --git a/docs/en/Modules/Cms-Kit/Blogging.md b/docs/en/Modules/Cms-Kit/Blogging.md index 43ab85e129..12039b1669 100644 --- a/docs/en/Modules/Cms-Kit/Blogging.md +++ b/docs/en/Modules/Cms-Kit/Blogging.md @@ -33,7 +33,12 @@ Blog feature uses some of the other CMS Kit features. You can enable or disable You can select/deselect the desired features for blog posts. -![features-dialog](../../images/cmskit-module-features-dialog.png) +![features-dialog](../../images/cmskit-module-features-dialog-2.png) + +##### Quick Navigation Bar In Blog Post +If you enable "Quick navigation bar in blog posts", it will enabled scroll index as seen below. + +![scroll-index](../../images/cmskit-module-features-scroll-index.png) ### Blog Post Management diff --git a/docs/en/images/cmskit-module-features-dialog-2.png b/docs/en/images/cmskit-module-features-dialog-2.png new file mode 100644 index 0000000000000000000000000000000000000000..b6dd409e0a59c728f50fb4d257f5ed06a129498b GIT binary patch literal 10405 zcmd6N2UJt*wr+H9;0TsYS1FMmB!HmO2^)!0r3AMWX@XG^0YM-jO+lq85eU6*swfgc ziWGwgQW7LvKoCNR5JE&Gm;?zCLf*n%?t5pP`^G)zp8LjQj10zF|NQHk-<;o^|4ebT zx7;IqP#6RP?Xk9kBS4^?5D;j`(BA}sH~b^c_ke#pt|Kf@fa-^37lDT#FPWb<2Z0*U zBAe$0fahJ;tlX}HKzn<(e>?hvA6@`~AV$`3^D~iN%Vd5Q5*e#@ZEJ`4+pkGanh&2m zSywd%&tPeoD|##1{Iqj#cOHcG&PNt!keaGnc)?Tj?H%~ra7j4%>Y>j;Pec@)e&|)) z+4tZ`%8v8L6jM{vlZ}#J78MhVH+DOiv5TUEIm;wo7-iz|Cr>gb#_ZDFjZQ;)1ko$n zjH_OpoSbZB>*NTB!zTDv#Q>H=*rQLD+qR)rV%yZu{%3Pok#gD(2G^6sd2V?djU zcKjfAFTJLVnuH>1j1#h2oEQPbK=7p8YTX?|@{sM>y0Xo=83#t(Y)UlBVg2=hI8vV7 zM32yp8?&A1zID=XDGd)L$4YOKU-P0 z`AWQW?8Rpq_9KkbMnvs1+q@VLj_wo`zX(&PLiXuSM)p^7pP zNJ$+6`uVzq1gOkVSQzx1tbhRMa(co}&@oH%9iW13i8oG;pqmSje@@J2U#`~;f6nZ_ z_~+3de@(jU+?R&*D;{V9CIXr~Bive}*b6DPHiy+3?CXp*1(3H3gWH-(mngg&;_Mwh zrm3$)QBJDr>QRO%;i~G#s1S%!-9_`L)wh-%GW<0Wa&53d#l{FFKFUB6baq%-1t~>S z24pG|LWe^7QKXhY8GFwIq*k-BK$Gavp|qbs_jDgs4m~RRQ2_ZPu*FX*$eiyTpw(r) z;358cY5a^_$o$*H@RHb<><+VUM1EBVe`{r5?t5AdsTJkId(Ho(SM;TTVFqJQCIVY| z%;)eAn2hgo@e2Ryb0Z%Db@CVqshVgL(dxW>M7t%Ua``pOn+Je6z&qZibtR5C#rt@< zKV6Re#QWO@<7-V3%%D1t6RlP<%^O`lC&;gxU-Z-#T%7Um_jmv`SK zEOs;dwoZ<;5L7jmbY8vzgOP_bQL+T`JsSq$LK<)7Lwtc~c)`9r!%6{ZMhz4j&%D z77ry@J35}SI$4%;#@+X3*J=+x@Q9``{99sbhr&uMMM!XzziI)ViB+2muJ1bEU7WIh zgDY8j5GwupgPIw4(C6DjOA}j7NCxDPSNO-;mfyBxgC8qVMrYW?BI+vLCeMaxY|Y*t$KdybP+S;pQ0kB@w)v zksurSMIqYclhqRab;Uv{pQb_Hp&iLgFh2ea0ztMVhhl8b;9`=g$kSzD~rZEe3~nO5weh`!$U}pV$GmeDSf&8yq7~>lOmb2JN}|^$}E!X{1ZY zEHAtFG%rC6B|Rrf6w=ztGG#RoU^>qe#qNCA$6qHW2KE&vubWs&q@sehdb+7u@1PK7 zbHwM2C*B)VKHTS2G1{jm!Dhjz+En6nuTby~*U~FA<$R>ITXsSyqm3T%Y-q`g(>}X+ z`ch^Bi?_n}`EqM~6>h~-tDFrS@y9OoC@&rjbp4YJ^N77 zoh!WP&uZEbrozA+{oO@&V-MhGAs^mFa6#X+ctov4Zzj5=rVa z9hj@N8*QHyjpM#y$Z$-y6sEphijSlDbTA(tj%)wh&98o$z#7Z{TH~TkX)gg(#Xf6X*!CWrfeNcZ+#Ya{aCl>K-cBF7}W^}U8hmScLg zFKt@m_mC!`S@dpq?zL#SmC&4r^7Ygr1P zH^e{p#n^2ww;^`E0!)fE2@z6}2Um?qZrrC(8)>C{WVfd@Xgmo5$;!!6&c@KzC+_({ zvG#d@p1ZuqENhg&*%?-d6Z`^(_8sSd(*FDvx_@G0Z#X5%{p;8+YTh--|k}m z-eFxLOJT5Nb|64{+$utZ{yl!|??G4UH-T=LHm-t;5 z#)srEB*tR9lGfx~)5W^}cC}9bFyDMvz40BOYO1IM8gej8B1^X+J#!~$)XDKiFZqG{ zj(p_?Ezr|2VH%Lj}04#td8Q6oV}n>QdoI$n5YCTI14oBkLErNIZFmJ&X>Ph_VUYn3bobIj3_i?G zjByX-`*-~6p&F>B4R4@q<^`Y}@k?R^kGR)0f|MVQm;s|BXRYoi+u$z+fj#XNslA|> zxxt!c`MQlUL8hZU8q56v#-I4f*WK$NzC43bG*(^Z>ukIhnr~3jIELx>!0l~jgM79i z5L5gs=2$CioE*1uZNbsoFy)@}jQYo;j|Si=10vneb;VRQA;413!bUuEbSu(ppvttR z2W#2EA~(4eWvdUf(>p8g9ahT-xsrJO^kadl>7d#O6Ph8qUC_UzeCLr;V4=+;8JVyo z-NRYQzDI(}R%Ch!i_IsFJWkLZB$rMB=6f0y)HY=Zdb*_!F+Dpc-CT96OLo9wE85Zb zL4B;%aqx4O#o*%bCX;QC=oCsz|7ut%msr7*2sR5`M>TJiLY zwPx&+eSD9M;7Ju>!YkS~`@BbkLJIW)Kh1E5QF~Jd+vp{vV$@7jBGkhk*g&7_aDtdM zIKeBwUX z`@qS@st#tKOve(oEAGOdxP3M)fXu8*Nf0|ptu74u#OPSTF)}RW57^6T=G+g*NPzOv z6GoI6ccsPGgiCuwzD>=+Kom4FilBjQrFmQi zcQRnkj|!r6&L$-6{5cKKy2rmbmgmU=Y*9d&fq+u}5LP6mA58oyMz<%5aqe*#I`^9R%Y4fGD&anhz1+(k;pje#c+Z z)FwoVtLNuc0QM#rLy+dyq@gs2I%xr=KsC8&nC7za6PKV?lL(L%unvu199bQ^Xr3wi zUk0F~%df7IqpVIUWG6I!z^JN2VmAmi6Zl^SINl^_&=`Qmv)}gG9Q?r66%|mhvGwvr zuoNFK&djr&%~NP2oa0ns8>9L#7iH;DJXM?Xi*f(vI;iZF`COV&rU|5sOLq<>QhjYj%Z_a=cdUs8_6rs<^Mi^vgX}&0mvS4)aw`Ly?o&g`J)er_)hJbtkhA@}L zGg2XZC+iKL=PmVa71``0qi)0u5G1t6zm`0f23 z5n&r>u9;x!gu-~*S9X+tG&5PPOI#dvQIXqn1$BkRWhQ?t2*8r4k-mV-wE8Rp%E z>$tGZVOb|oCgi7FZ)WZ6V^0CqR0}U*{PJyg^AugDoWdAy9c^zlT;I~>Gbjz`YX+>B za2n8Hgn&wyxXxgbyK{rpNhM5`!k94rArf&wop4IlAx=o8B`fzJC=bAVzYWFQ`gH|V zR3SU5a|l{hhIy^%ttxC4v!^8o?rcL2}GX!~ORPnx| zOBi${URO-&oa2chqIds9WU(}6{bf)AwhVMc1F$IB>%VZC6U535D*KIUm3x;4kfrPM z@>Pc<@8p%Xv|UjI~Ev)3Wm$m!Tzkd;Ye3Nibh4OE;^-x@#od_`;D zU*c{@1&}i_Uq;Z-=gygCS9adat}J_cZd!BD%)7h@^wj--obvt)Z1mLg<&t{ixlB27 z*6@wG=vRfO)N)dgesUlmBj9lVD}=JY?Zd0I_SiKtw%~_-u*!}l#*-eE9p8!2mDd&8 z#P^-_rq|C|j~;j2zZCqbB{=>v;II}76Gkeava#G%%?^2b(bnP}^ld4?vfR7_C_vQY zN87_{v$xS&!R9IcT))ytPdr#$?)o&7e0;)7f4x1B)Y85A-s`HqCiSf-DBuo&I&GPZ zedMPV(LT`=FV+)0vFuR9jA;t=l$&F@&mTSpBI%^{oxox|Y0BPenpx5qSJh1TEg&3m z6#=IGKj>eY4nx$TT|ARf4j(iCP#KN64>?j>hFJpWczM|>M5N!D^34^s@uDZ+B9^Ay zxF66#6(#(s8z$n`NTpP(C%?@LsJux3%JK(2l>*>>rAkR#y#jB2K?k28hOKa|v^1iT zA6SdnWVX~i1U)_byNF8cUgQ}mC2a`uz^>*5#Ky~jp%o1U9nFQRksm;s&W<;RzDYOJ zSP5eIeXV_)o1zYfpEr5lo zLjoL4a4CwJ6!nyTvp8ocXz5Nu(JQRmk1S4%`43POhZ@7Oc7oC>%64a?9Lg`-A?)zI zMo8-rX`rtq(6{vEpzX=&J++b#ti_fVNU4EX3}E>mk|NitgErQft$~d8=m6AegN&f} zInn;m58X*&`jpV6YxvJ~^Eh8{zbq=I70~Tj%%odAJGIL;!|5!m^Cq_(n9t0n6Vsul z-VlU)@_r4%RP7?-HZ%tSM`T*mVIYj3m%zN0knlOK4zY;(HF+%6(z~P~is(;UyHXB^ z=O=e7Ywz;^R(aB|*0=PDB*x8c`Bs?b-g&mWBS!0TVuJ1&sno`6tF+P9&xgS^@i%6T zfR1xo))blZht;Wq$^Hcah!XjJ@ccbDSnUwaXz2o z-{xx8HHwfq<6FGRbaKZ*A&Yt6W{O62dSQNG+FIs&uW89gZ?JOSII_FHO@DSvZc9dR zjfbjPlB?EfBK>qD7T0l(T5qn-bDMb)zLc<>8^6UgdZR(FiS=GfaoCIN+hna+K!_SI z?E4)_5vSYxxRg@Xjmp640J%QT9!IULHOa-SVd|RZxrowu_trCB{h|3`nxmUx_ZmEK zUU5OR&Z%ah9Q5}+cV30V!g|sfx0XFQbF)d8em5Ezl17z2iFMytnmu>_=*-_nWv+0m z_XqdtnC?kusupw|=--UFnN0J&nTF-+R4(TR&$l(%Z7mcD7Q{U5*i3a;j&s&-Jty-U z%b%-rXKHQqLl$@muv@Ls#XqrGO9)bM8+QHR#9@j{U2f@0$6lWqnGg_KNIKFKmS%c|`KqVqty24wM# zKCrXGtK4c=T*yLjC->X&#r-4vj0IAyb^n8|h9uU08}8Q?U&zn+3U~`V=0f|7^XB*TkkfjkOp{ zpKc987^5G6Eut9Ku-NIgT)IS`oXpcr3CypJj+i^t+Thr_4&Kb{t8G(?2*QqWP8B?U zQJWJyOe>7tI(2ZV7~o1GGncRXZ)8l}bovzShuvckvYQ#-tIpj7k_LXV=Vblb_i_!B zT;3Eek`_ZTe#}g8R1Sc^G@1Yh>5>Wa{`{ z?&{|Hs9wKkk85iS1;C6C5mw9)iJRPLIj1&1N)3p5GQu1iKYfKR$_k*g+EG@I zFp6xlwhXruRd>%)fgFW?JL}Dn7w2<==a_f%v}J-Tneo@Tq1>N;0xSuC&9`kT>4HUF zD@K1I<|c$P?MG_hvpjs;@}veiF7nRqW|T`YV0!WJGY>V-E|vj)$D<-CZ$j+rkerF& zY2ZY8ZdLxw<6~Q&edDHFC^*|@_F-adX5j0F`Hg)vN`}GOR4EE)AGIfd(97YL`k!_W zp5DUy+0hGH(!A?clH$Dlw zKN_BfnNTWrfdx(<-%ZmEk@feE9f|5a4xP{h5UZ6nY+CBQ73;86;|Fdw_0a=>Hon#H zGUjQjJ~igrEVDc7tKW2~|6$11xtrXwvfaGPbpHB6m7>^o@MniO10*L}plTWK^$2R& zty7-zHj&9B5W=C=S>b_UvCEP=8I`78pIi`kX|IlvS*prH>_tMoSHhUBQ{S-mfW35)%Q208_gT75o$hQAN%bsi~{$yg#g( zX6u2aLDYqXU&^L+>}uW-BQHjW*-wi;-1AD;D1=;HRR$Vri0X{a1YW0isM*?jwE6>A z#MkTet`VL4YWLuD-F}yuDl>IBP^0$+e<437Vds(lD~W3+$fBv28d*s9?a?3anPOu? zuKa+t%lTt~%ijm+{5KBp!h=g7dQo_vFPX{2Jb4qWKphjDp$!wXC*Q`>aP=K@Ax{no z>}l5J9{=Z>(yTFPOK@!1^JdSu^_S>&TUcm*g06Xa(KNGob~xhO!oCj1fZ3B=49BCj zB06%mic#P7jC|s#rhtG?`a8j8>+2L0P9Ji}WpmQ|bBWYz`*I-fgE$X8cK_p3)f-{R7Uwz2A^jh)7suDtGFYOHxR^TdU@khU!OknjH@~ve@7a4hTk{=xe$D359_2s7 ztp~u%V+bkC87m^ zb+rsG3V&Iro8`co>emw0o_*67IH(*4Pktdis`sRT;ee8k{*0 z_#)mVG)+@23gI*;VhJ-H1he69fnY1XdH%c8sRw7 zv}&MM8UAg&RCW7=tq~gPZT@&`o46$9*ezwr2cdDD!z-C^g+Y2YHdkpB;RsrA4g5_$ zH!QazW*Siqg*a*TnF4nRx$IM#tz+8XYv0RLh)FAy9jj3cJ1Upm*i>n(k}10ZdCP(MD9_(~Lr zaqWP+4wY<-M;rR}g+Jl+KMwJK&d6M)w$WXL7*SS58wL(Wk74WhkG%(nxYmczc+<%ptezP1fma%h2nwEyUfEfH=ESq_zC4%>_DIPav4JduD%gNl|^T++_ zkO=<3rJ}dwD0*?vC{VEjn2+avM{*|m*4-{H2p~tRPm^Cudz+Y?2Ki`mUkbsF{72c3 zA$#a(2d9hABfH>OlIUnqS%}Wr{yaH9)Vl_|pimh02K$u&&=r0bC=B~vdWMb!p8hIJ zTbtS#bXeSL7*0>?Rx0UfA7u&5bp9GWJj`tvI+Rq5^P!FIB`hot`4~^eY*(pORj%*0 zIqN7$Q|8;@&$YWO^CPV%n`UnYt?=~23P)JR6E53jZx;+l&Nhuo0+n4=h4OwTKGc!u%z9#1O7=!!r|?6XuP+m4e6+J_-K|IaG}y literal 0 HcmV?d00001 diff --git a/docs/en/images/cmskit-module-features-scroll-index.png b/docs/en/images/cmskit-module-features-scroll-index.png new file mode 100644 index 0000000000000000000000000000000000000000..0bc3dedcc5a6474e5187ca176368bd41a5663b27 GIT binary patch literal 108721 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 aUs%qZQg}p9bXZ_Q=!%)`Z Date: Wed, 20 Apr 2022 14:11:03 +0300 Subject: [PATCH 52/65] jasmine-core bump to 4.0 --- templates/app-nolayers/angular/package.json | 2 +- templates/app/angular/package.json | 2 +- templates/module/angular/package.json | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/templates/app-nolayers/angular/package.json b/templates/app-nolayers/angular/package.json index 5e66eb239a..6fdafdd93a 100644 --- a/templates/app-nolayers/angular/package.json +++ b/templates/app-nolayers/angular/package.json @@ -49,7 +49,7 @@ "@typescript-eslint/eslint-plugin": "5.3.0", "@typescript-eslint/parser": "5.3.0", "eslint": "^8.2.0", - "jasmine-core": "~3.7.0", + "jasmine-core": "~4.0.0", "karma": "~6.3.0", "karma-chrome-launcher": "~3.1.0", "karma-coverage": "~2.1.0", diff --git a/templates/app/angular/package.json b/templates/app/angular/package.json index 5e66eb239a..6fdafdd93a 100644 --- a/templates/app/angular/package.json +++ b/templates/app/angular/package.json @@ -49,7 +49,7 @@ "@typescript-eslint/eslint-plugin": "5.3.0", "@typescript-eslint/parser": "5.3.0", "eslint": "^8.2.0", - "jasmine-core": "~3.7.0", + "jasmine-core": "~4.0.0", "karma": "~6.3.0", "karma-chrome-launcher": "~3.1.0", "karma-coverage": "~2.1.0", diff --git a/templates/module/angular/package.json b/templates/module/angular/package.json index 3f2ae010fe..c7a0344227 100644 --- a/templates/module/angular/package.json +++ b/templates/module/angular/package.json @@ -52,7 +52,7 @@ "@typescript-eslint/eslint-plugin": "5.3.0", "@typescript-eslint/parser": "5.3.0", "eslint": "^8.2.0", - "jasmine-core": "~3.7.0", + "jasmine-core": "~4.0.0", "karma": "~6.3.0", "karma-chrome-launcher": "~3.1.0", "karma-coverage": "~2.1.0", From a67509ce05c776d9dd28a6e4d5fe46bf8547a699 Mon Sep 17 00:00:00 2001 From: Yunus Emre Kalkan Date: Wed, 20 Apr 2022 15:38:12 +0300 Subject: [PATCH 53/65] Cli: Check in gitignore files --- .../ProjectBuilding/Building/Steps/TemplateCodeDeleteStep.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 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..437721f30c 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,7 @@ 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(".gitignore")) { file.RemoveTemplateCode(context.Symbols); file.RemoveTemplateCodeMarkers(); From 88d86f87172ea7243df4f0151238198ce9d17382 Mon Sep 17 00:00:00 2001 From: Mahmut Gundogdu Date: Wed, 20 Apr 2022 14:23:28 +0300 Subject: [PATCH 54/65] Update @angular/core @angular/cli @angular-eslint/schematics to 13.3 --- templates/app/angular/package.json | 38 +++++++++++++-------------- templates/module/angular/package.json | 38 +++++++++++++-------------- 2 files changed, 38 insertions(+), 38 deletions(-) diff --git a/templates/app/angular/package.json b/templates/app/angular/package.json index 6fdafdd93a..cdddc9c658 100644 --- a/templates/app/angular/package.json +++ b/templates/app/angular/package.json @@ -20,30 +20,30 @@ "@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", - "@angular/core": "~13.1.1", - "@angular/forms": "~13.1.1", - "@angular/localize": "~13.1.1", - "@angular/platform-browser": "~13.1.1", - "@angular/platform-browser-dynamic": "~13.1.1", - "@angular/router": "~13.1.1", + "@angular/animations": "~13.3.3", + "@angular/common": "~13.3.3", + "@angular/compiler": "~13.3.3", + "@angular/core": "~13.3.3", + "@angular/forms": "~13.3.3", + "@angular/localize": "~13.3.3", + "@angular/platform-browser": "~13.3.3", + "@angular/platform-browser-dynamic": "~13.3.3", + "@angular/router": "~13.3.3", "rxjs": "~6.6.0", "tslib": "^2.1.0", "zone.js": "~0.11.4" }, "devDependencies": { "@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", - "@angular-eslint/eslint-plugin-template": "~13.0.1", - "@angular-eslint/schematics": "~13.0.1", - "@angular-eslint/template-parser": "~13.0.1", - "@angular/cli": "~13.1.2", - "@angular/compiler-cli": "~13.1.1", - "@angular/language-service": "~13.1.1", + "@angular-devkit/build-angular": "~13.3.3", + "@angular-eslint/builder": "~13.2.1", + "@angular-eslint/eslint-plugin": "~13.2.1", + "@angular-eslint/eslint-plugin-template": "~13.2.1", + "@angular-eslint/schematics": "~13.2.1", + "@angular-eslint/template-parser": "~13.2.1", + "@angular/cli": "~13.3.3", + "@angular/compiler-cli": "~13.3.3", + "@angular/language-service": "~13.3.3", "@types/jasmine": "~3.6.0", "@types/node": "^12.11.1", "@typescript-eslint/eslint-plugin": "5.3.0", @@ -58,4 +58,4 @@ "ng-packagr": "^13.1.2", "typescript": "~4.5.4" } -} +} \ No newline at end of file diff --git a/templates/module/angular/package.json b/templates/module/angular/package.json index c7a0344227..05f715c7c2 100644 --- a/templates/module/angular/package.json +++ b/templates/module/angular/package.json @@ -23,30 +23,30 @@ "@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", - "@angular/core": "~13.1.1", - "@angular/forms": "~13.1.1", - "@angular/localize": "~13.1.1", - "@angular/platform-browser": "~13.1.1", - "@angular/platform-browser-dynamic": "~13.1.1", - "@angular/router": "~13.1.1", + "@angular/animations": "~13.3.3", + "@angular/common": "~13.3.3", + "@angular/compiler": "~13.3.3", + "@angular/core": "~13.3.3", + "@angular/forms": "~13.3.3", + "@angular/localize": "~13.3.3", + "@angular/platform-browser": "~13.3.3", + "@angular/platform-browser-dynamic": "~13.3.3", + "@angular/router": "~13.3.3", "rxjs": "~6.6.0", "tslib": "^2.1.0", "zone.js": "~0.11.4" }, "devDependencies": { "@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", - "@angular-eslint/eslint-plugin-template": "~13.0.1", - "@angular-eslint/schematics": "~13.0.1", - "@angular-eslint/template-parser": "~13.0.1", - "@angular/cli": "~13.1.2", - "@angular/compiler-cli": "~13.1.1", - "@angular/language-service": "~13.1.1", + "@angular-devkit/build-angular": "~13.3.3", + "@angular-eslint/builder": "~13.2.1", + "@angular-eslint/eslint-plugin": "~13.2.1", + "@angular-eslint/eslint-plugin-template": "~13.2.1", + "@angular-eslint/schematics": "~13.2.1", + "@angular-eslint/template-parser": "~13.2.1", + "@angular/cli": "~13.3.3", + "@angular/compiler-cli": "~13.3.3", + "@angular/language-service": "~13.3.3", "@types/jasmine": "~3.6.0", "@types/node": "^12.11.1", "@typescript-eslint/eslint-plugin": "5.3.0", @@ -62,4 +62,4 @@ "symlink-manager": "^1.5.0", "typescript": "~4.5.4" } -} +} \ No newline at end of file From 8744d1953bca2eb0ab9ae2b673e5d63f77a95547 Mon Sep 17 00:00:00 2001 From: Mahmut Gundogdu Date: Wed, 20 Apr 2022 16:39:21 +0300 Subject: [PATCH 55/65] Change permisson title input name to entityDisplayName --- .../identity/src/lib/components/roles/roles.component.html | 1 - .../identity/src/lib/components/users/users.component.html | 2 +- .../identity/src/lib/components/users/users.component.ts | 6 +++--- .../src/lib/components/permission-management.component.html | 6 +++--- .../src/lib/components/permission-management.component.ts | 2 +- 5 files changed, 8 insertions(+), 9 deletions(-) diff --git a/npm/ng-packs/packages/identity/src/lib/components/roles/roles.component.html b/npm/ng-packs/packages/identity/src/lib/components/roles/roles.component.html index 20d5509d15..09dcdb1be3 100644 --- a/npm/ng-packs/packages/identity/src/lib/components/roles/roles.component.html +++ b/npm/ng-packs/packages/identity/src/lib/components/roles/roles.component.html @@ -55,7 +55,6 @@ }; let init = initTemplate " - [title]="providerKey" (abpInit)="init(abpPermissionManagement)" > diff --git a/npm/ng-packs/packages/identity/src/lib/components/users/users.component.html b/npm/ng-packs/packages/identity/src/lib/components/users/users.component.html index a481b9d697..7873adf6ea 100644 --- a/npm/ng-packs/packages/identity/src/lib/components/users/users.component.html +++ b/npm/ng-packs/packages/identity/src/lib/components/users/users.component.html @@ -95,7 +95,7 @@ }; let init = initTemplate " - [title]="userName" + [entityDisplayName]="entityDisplayName" (abpInit)="init(abpPermissionManagement)" > diff --git a/npm/ng-packs/packages/identity/src/lib/components/users/users.component.ts b/npm/ng-packs/packages/identity/src/lib/components/users/users.component.ts index 1c9f6f0f17..90a453e5c9 100644 --- a/npm/ng-packs/packages/identity/src/lib/components/users/users.component.ts +++ b/npm/ng-packs/packages/identity/src/lib/components/users/users.component.ts @@ -64,7 +64,7 @@ export class UsersComponent implements OnInit { onVisiblePermissionChange = event => { this.visiblePermissions = event; }; - userName: string; + entityDisplayName: string; get roleGroups(): FormGroup[] { return ((this.form.get('roleNames') as FormArray)?.controls as FormGroup[]) || []; @@ -177,9 +177,9 @@ export class UsersComponent implements OnInit { this.list.hookToQuery(query => this.service.getList(query)).subscribe(res => (this.data = res)); } - openPermissionsModal(providerKey: string, userName:string) { + openPermissionsModal(providerKey: string, entityDisplayName?: string) { this.providerKey = providerKey; - this.userName = userName; + this.entityDisplayName = entityDisplayName; setTimeout(() => { this.visiblePermissions = true; }, 0); diff --git a/npm/ng-packs/packages/permission-management/src/lib/components/permission-management.component.html b/npm/ng-packs/packages/permission-management/src/lib/components/permission-management.component.html index d2d14035ca..34396b97b4 100644 --- a/npm/ng-packs/packages/permission-management/src/lib/components/permission-management.component.html +++ b/npm/ng-packs/packages/permission-management/src/lib/components/permission-management.component.html @@ -1,9 +1,9 @@ - +

- {{ 'AbpPermissionManagement::Permissions' | abpLocalization }} - - {{ title }} + {{ 'AbpPermissionManagement::Permissions' | abpLocalization }} - + {{ entityDisplayName || data.data.entityDisplayName }}

diff --git a/npm/ng-packs/packages/permission-management/src/lib/components/permission-management.component.ts b/npm/ng-packs/packages/permission-management/src/lib/components/permission-management.component.ts index bc07bb6583..4b53350208 100644 --- a/npm/ng-packs/packages/permission-management/src/lib/components/permission-management.component.ts +++ b/npm/ng-packs/packages/permission-management/src/lib/components/permission-management.component.ts @@ -65,7 +65,7 @@ export class PermissionManagementComponent } @Input() - title = ''; + entityDisplayName: string | undefined; set visible(value: boolean) { if (value === this._visible) return; From 909b62566c8c91a9aaf2c3d467165d02a5c44602 Mon Sep 17 00:00:00 2001 From: Mahmut Gundogdu Date: Wed, 20 Apr 2022 16:40:29 +0300 Subject: [PATCH 56/65] Update permission-management.component.html --- .../src/lib/components/permission-management.component.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/npm/ng-packs/packages/permission-management/src/lib/components/permission-management.component.html b/npm/ng-packs/packages/permission-management/src/lib/components/permission-management.component.html index 34396b97b4..5a9fa0dd5a 100644 --- a/npm/ng-packs/packages/permission-management/src/lib/components/permission-management.component.html +++ b/npm/ng-packs/packages/permission-management/src/lib/components/permission-management.component.html @@ -3,7 +3,7 @@

{{ 'AbpPermissionManagement::Permissions' | abpLocalization }} - - {{ entityDisplayName || data.data.entityDisplayName }} + {{ entityDisplayName || data.entityDisplayName }}

From 0f0f4e0d504cfb349e008c88ac22a768e6232a33 Mon Sep 17 00:00:00 2001 From: Mahmut Gundogdu Date: Wed, 20 Apr 2022 16:59:36 +0300 Subject: [PATCH 57/65] Fix lint error on PermissonManagement --- .../src/lib/components/permission-management.component.ts | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/npm/ng-packs/packages/permission-management/src/lib/components/permission-management.component.ts b/npm/ng-packs/packages/permission-management/src/lib/components/permission-management.component.ts index 4b53350208..496b3bb989 100644 --- a/npm/ng-packs/packages/permission-management/src/lib/components/permission-management.component.ts +++ b/npm/ng-packs/packages/permission-management/src/lib/components/permission-management.component.ts @@ -59,14 +59,14 @@ export class PermissionManagementComponent protected _visible = false; + @Input() + entityDisplayName: string | undefined; + @Input() get visible(): boolean { return this._visible; } - @Input() - entityDisplayName: string | undefined; - set visible(value: boolean) { if (value === this._visible) return; From 44ad5168a204b3e965fbf71b5662effb35443ff6 Mon Sep 17 00:00:00 2001 From: Mahmut Gundogdu Date: Wed, 20 Apr 2022 17:07:42 +0300 Subject: [PATCH 58/65] fix lint error on user component --- .../identity/src/lib/components/users/users.component.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/npm/ng-packs/packages/identity/src/lib/components/users/users.component.ts b/npm/ng-packs/packages/identity/src/lib/components/users/users.component.ts index 90a453e5c9..b8fadc81a1 100644 --- a/npm/ng-packs/packages/identity/src/lib/components/users/users.component.ts +++ b/npm/ng-packs/packages/identity/src/lib/components/users/users.component.ts @@ -59,12 +59,13 @@ export class UsersComponent implements OnInit { permissionManagementKey = ePermissionManagementComponents.PermissionManagement; + entityDisplayName: string; + trackByFn: TrackByFunction = (index, item) => Object.keys(item)[0] || index; onVisiblePermissionChange = event => { this.visiblePermissions = event; }; - entityDisplayName: string; get roleGroups(): FormGroup[] { return ((this.form.get('roleNames') as FormArray)?.controls as FormGroup[]) || []; From c2c1cc52205474e6bc9a882fc475561ddeff2be8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?H=C3=BCseyin=20Tosun?= Date: Thu, 21 Apr 2022 10:58:41 +0300 Subject: [PATCH 59/65] Grammatical Correction Given tenant does not exist --- .../Abp/AspNetCore/Mvc/UI/MultiTenancy/Localization/en.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/framework/src/Volo.Abp.AspNetCore.Mvc.UI.MultiTenancy/Volo/Abp/AspNetCore/Mvc/UI/MultiTenancy/Localization/en.json b/framework/src/Volo.Abp.AspNetCore.Mvc.UI.MultiTenancy/Volo/Abp/AspNetCore/Mvc/UI/MultiTenancy/Localization/en.json index 25516ba765..f3259dbb54 100644 --- a/framework/src/Volo.Abp.AspNetCore.Mvc.UI.MultiTenancy/Volo/Abp/AspNetCore/Mvc/UI/MultiTenancy/Localization/en.json +++ b/framework/src/Volo.Abp.AspNetCore.Mvc.UI.MultiTenancy/Volo/Abp/AspNetCore/Mvc/UI/MultiTenancy/Localization/en.json @@ -1,7 +1,7 @@ { "culture": "en", "texts": { - "GivenTenantIsNotExist": "Given tenant is not exist: {0}", + "GivenTenantIsNotExist": "Given tenant does not exist: {0}", "GivenTenantIsNotAvailable": "Given tenant is not available: {0}", "Tenant": "Tenant", "Switch": "switch", From c5db087f58e7d6aad62f2a6dab233ce1df852b5a Mon Sep 17 00:00:00 2001 From: Yunus Emre Kalkan Date: Thu, 21 Apr 2022 15:40:03 +0300 Subject: [PATCH 60/65] Cli: Add license code to module source code downloads --- .../ModuleProjectBuildPipelineBuilder.cs | 2 ++ .../Steps/CreateAppSettingsSecretsStep.cs | 16 +++++++++++++++- 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Building/ModuleProjectBuildPipelineBuilder.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Building/ModuleProjectBuildPipelineBuilder.cs index 35bcb71d53..2d28143921 100644 --- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Building/ModuleProjectBuildPipelineBuilder.cs +++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Building/ModuleProjectBuildPipelineBuilder.cs @@ -14,6 +14,8 @@ public static class ModuleProjectBuildPipelineBuilder pipeline.Steps.Add(new ReplaceCommonPropsStep()); pipeline.Steps.Add(new MakeProxyJsonFileEmbeddedStep()); pipeline.Steps.Add(new ReplaceConfigureAwaitPropsStep()); + pipeline.Steps.Add(new CreateAppSettingsSecretsStep()); + pipeline.Steps.Add(new LicenseCodeReplaceStep()); pipeline.Steps.Add(new UpdateNuGetConfigStep("/NuGet.Config")); pipeline.Steps.Add(new CreateProjectResultZipStep()); diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Building/Steps/CreateAppSettingsSecretsStep.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Building/Steps/CreateAppSettingsSecretsStep.cs index 5a84bda994..7a5f792b15 100644 --- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Building/Steps/CreateAppSettingsSecretsStep.cs +++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Building/Steps/CreateAppSettingsSecretsStep.cs @@ -40,7 +40,21 @@ public class CreateAppSettingsSecretsStep : ProjectBuildPipelineStep private static byte[] GetAppSettingsSecretJsonContent(ProjectBuildContext context) { - return context.Template.IsPro() + bool condition; + if (context.Template != null) + { + condition = context.Template.IsPro(); + } + else if (context.Module != null) + { + condition = context.Module.IsPro; + } + else + { + condition = false; + } + + return condition ? $"{{{Environment.NewLine} \"AbpLicenseCode\": \"{CliConsts.LicenseCodePlaceHolder}\" {Environment.NewLine}}}".GetBytes() : $"{{{Environment.NewLine}}}".GetBytes(); } From a1e284fa951c603118d0c754b4fc21d553292a04 Mon Sep 17 00:00:00 2001 From: Yunus Emre Kalkan Date: Thu, 21 Apr 2022 15:42:26 +0300 Subject: [PATCH 61/65] Update ModuleProjectBuildPipelineBuilder.cs --- .../Building/ModuleProjectBuildPipelineBuilder.cs | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Building/ModuleProjectBuildPipelineBuilder.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Building/ModuleProjectBuildPipelineBuilder.cs index 2d28143921..9a5eecb4f6 100644 --- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Building/ModuleProjectBuildPipelineBuilder.cs +++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Building/ModuleProjectBuildPipelineBuilder.cs @@ -14,8 +14,13 @@ public static class ModuleProjectBuildPipelineBuilder pipeline.Steps.Add(new ReplaceCommonPropsStep()); pipeline.Steps.Add(new MakeProxyJsonFileEmbeddedStep()); pipeline.Steps.Add(new ReplaceConfigureAwaitPropsStep()); - pipeline.Steps.Add(new CreateAppSettingsSecretsStep()); - pipeline.Steps.Add(new LicenseCodeReplaceStep()); + + if (context.Module.IsPro) + { + pipeline.Steps.Add(new CreateAppSettingsSecretsStep()); + pipeline.Steps.Add(new LicenseCodeReplaceStep()); + } + pipeline.Steps.Add(new UpdateNuGetConfigStep("/NuGet.Config")); pipeline.Steps.Add(new CreateProjectResultZipStep()); From a1b924ddfc6d045b2be4e68aa4440720de7e2405 Mon Sep 17 00:00:00 2001 From: enisn Date: Fri, 22 Apr 2022 11:50:27 +0300 Subject: [PATCH 62/65] Make datagrids columns orderable --- .../Pages/Identity/RoleManagement.razor.cs | 4 +++- .../Pages/Identity/UserManagement.razor.cs | 5 ++++- .../Pages/TenantManagement/TenantManagement.razor.cs | 2 ++ 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/modules/identity/src/Volo.Abp.Identity.Blazor/Pages/Identity/RoleManagement.razor.cs b/modules/identity/src/Volo.Abp.Identity.Blazor/Pages/Identity/RoleManagement.razor.cs index f14e5cef90..cf4d1c8ecd 100644 --- a/modules/identity/src/Volo.Abp.Identity.Blazor/Pages/Identity/RoleManagement.razor.cs +++ b/modules/identity/src/Volo.Abp.Identity.Blazor/Pages/Identity/RoleManagement.razor.cs @@ -81,11 +81,13 @@ public partial class RoleManagement new TableColumn { Title = L["Actions"], - Actions = EntityActions.Get() + Actions = EntityActions.Get(), + Sortable = true, }, new TableColumn { Title = L["RoleName"], + Sortable = true, Data = nameof(IdentityRoleDto.Name), Component = typeof(RoleNameComponent) }, 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 982f77882d..5919ed9ed3 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 @@ -171,22 +171,25 @@ public partial class UserManagement new TableColumn { Title = L["Actions"], - Actions = EntityActions.Get() + Actions = EntityActions.Get(), }, new TableColumn { Title = L["UserName"], Data = nameof(IdentityUserDto.UserName), + Sortable = true, }, new TableColumn { Title = L["Email"], Data = nameof(IdentityUserDto.Email), + Sortable = true, }, new TableColumn { Title = L["PhoneNumber"], Data = nameof(IdentityUserDto.PhoneNumber), + Sortable = true, } }); diff --git a/modules/tenant-management/src/Volo.Abp.TenantManagement.Blazor/Pages/TenantManagement/TenantManagement.razor.cs b/modules/tenant-management/src/Volo.Abp.TenantManagement.Blazor/Pages/TenantManagement/TenantManagement.razor.cs index 134bbcd439..57987cf127 100644 --- a/modules/tenant-management/src/Volo.Abp.TenantManagement.Blazor/Pages/TenantManagement/TenantManagement.razor.cs +++ b/modules/tenant-management/src/Volo.Abp.TenantManagement.Blazor/Pages/TenantManagement/TenantManagement.razor.cs @@ -110,10 +110,12 @@ public partial class TenantManagement { Title = L["Actions"], Actions = EntityActions.Get() + Sortable = true, }, new TableColumn { Title = L["TenantName"], + Sortable = true, Data = nameof(TenantDto.Name), }, }); From 5b9fed9f80ddbf357f872f6a51b726053213c870 Mon Sep 17 00:00:00 2001 From: enisn Date: Fri, 22 Apr 2022 11:52:45 +0300 Subject: [PATCH 63/65] Add missing comma --- .../Pages/TenantManagement/TenantManagement.razor.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/tenant-management/src/Volo.Abp.TenantManagement.Blazor/Pages/TenantManagement/TenantManagement.razor.cs b/modules/tenant-management/src/Volo.Abp.TenantManagement.Blazor/Pages/TenantManagement/TenantManagement.razor.cs index 57987cf127..8e4b0efa97 100644 --- a/modules/tenant-management/src/Volo.Abp.TenantManagement.Blazor/Pages/TenantManagement/TenantManagement.razor.cs +++ b/modules/tenant-management/src/Volo.Abp.TenantManagement.Blazor/Pages/TenantManagement/TenantManagement.razor.cs @@ -109,7 +109,7 @@ public partial class TenantManagement new TableColumn { Title = L["Actions"], - Actions = EntityActions.Get() + Actions = EntityActions.Get(), Sortable = true, }, new TableColumn From 2877be99065c0818b6bd00e59422624ed80d4f63 Mon Sep 17 00:00:00 2001 From: enisn Date: Fri, 22 Apr 2022 16:42:44 +0300 Subject: [PATCH 64/65] Remove Sortable property from "Actions" column --- .../Pages/Identity/RoleManagement.razor.cs | 1 - 1 file changed, 1 deletion(-) diff --git a/modules/identity/src/Volo.Abp.Identity.Blazor/Pages/Identity/RoleManagement.razor.cs b/modules/identity/src/Volo.Abp.Identity.Blazor/Pages/Identity/RoleManagement.razor.cs index cf4d1c8ecd..cfb86b5007 100644 --- a/modules/identity/src/Volo.Abp.Identity.Blazor/Pages/Identity/RoleManagement.razor.cs +++ b/modules/identity/src/Volo.Abp.Identity.Blazor/Pages/Identity/RoleManagement.razor.cs @@ -82,7 +82,6 @@ public partial class RoleManagement { Title = L["Actions"], Actions = EntityActions.Get(), - Sortable = true, }, new TableColumn { From d02722790ddca5188a1099d57b7f6c6d5e497cdc Mon Sep 17 00:00:00 2001 From: enisn Date: Fri, 22 Apr 2022 16:46:59 +0300 Subject: [PATCH 65/65] Remove Sortable property from "Actions" column --- .../Pages/TenantManagement/TenantManagement.razor.cs | 1 - 1 file changed, 1 deletion(-) diff --git a/modules/tenant-management/src/Volo.Abp.TenantManagement.Blazor/Pages/TenantManagement/TenantManagement.razor.cs b/modules/tenant-management/src/Volo.Abp.TenantManagement.Blazor/Pages/TenantManagement/TenantManagement.razor.cs index 8e4b0efa97..0f0e689f2f 100644 --- a/modules/tenant-management/src/Volo.Abp.TenantManagement.Blazor/Pages/TenantManagement/TenantManagement.razor.cs +++ b/modules/tenant-management/src/Volo.Abp.TenantManagement.Blazor/Pages/TenantManagement/TenantManagement.razor.cs @@ -110,7 +110,6 @@ public partial class TenantManagement { Title = L["Actions"], Actions = EntityActions.Get(), - Sortable = true, }, new TableColumn {