diff --git a/docs/en/CSRF-Anti-Forgery.md b/docs/en/CSRF-Anti-Forgery.md new file mode 100644 index 0000000000..ad838e3548 --- /dev/null +++ b/docs/en/CSRF-Anti-Forgery.md @@ -0,0 +1,119 @@ +# CSRF/XSRF & Anti Forgery System + +"*Cross-Site Request Forgery (CSRF) is a type of attack that occurs when a malicious web site, email, blog, instant message, or program causes a user’s web browser to perform an unwanted action on a trusted site for which the user is currently authenticated*" ([OWASP](https://www.owasp.org/index.php/Cross-Site_Request_Forgery_(CSRF)_Prevention_Cheat_Sheet)). + +**ABP Framework completely automates CSRF preventing** and works out of the box without any configuration. Read this documentation only if you want to understand it better or need to customize. + +## The Problem + +ASP.NET Core [provides infrastructure](https://docs.microsoft.com/en-us/aspnet/core/security/anti-request-forgery) to prevent CSRF attacks by providing a system to **generate** and **validate antiforgery tokens**. However, the standard implementation has a few drawbacks; + +Antiforgery token validation is only **enabled for razor pages by default** and not enabled for **HTTP APIs**. You need to enable it yourself for the Controllers. You can use the `[ValidateAntiForgeryToken]` attribute for a specific API Controller/Action or the `[AutoValidateAntiforgeryToken]` attribute to prevent attacks globally. + +Once you enable it; + +* You need to manually add an HTTP header, named `RequestVerificationToken` to every **AJAX request** made in your application. You should care about obtaining the token, saving in the client side and adding to the HTTP header on every HTTP request. +* All your clients, including **non-browser clients**, should care about obtaining and sending the antiforgery token in every request. In fact, non-browser clients has no CSRF risk and should not care about this. + +Especially, the second point is a pain for your clients and unnecessarily consumes your server resources. + +> You can read more about the ASP.NET Core antiforgery system in its own [documentation](https://docs.microsoft.com/en-us/aspnet/core/security/anti-request-forgery). + +## The Solution + +ABP Framework provides `[AbpValidateAntiForgeryToken]` and `[AbpAutoValidateAntiforgeryToken]` attributes, just like the attributes explained above. `[AbpAutoValidateAntiforgeryToken]` is already added to the global filters, so you should do nothing to enable it for your application. + +ABP Framework also automates the following infrastructure; + +* Server side sets a **special cookie**, named `XSRF-TOKEN` by default, that is used make the antiforgery token value available to the browser. This is **done automatically** (by the [application configuration](Application-Configuration.md) endpoint). Nothing to do in the client side. +* In the client side, it reads the token from the cookie and sends it in the **HTTP header** (named `RequestVerificationToken` by default). This is implemented for all the supported UI types. +* Server side validates the antiforgery token **only for same and cross site requests** made by the browser. It bypasses the validation for non-browser clients. + +That's all. The systems works smoothly. + +## Configuration / Customization + +### AbpAntiForgeryOptions + +`AbpAntiForgeryOptions` is the main [options class](Options.md) to configure the ABP Antiforgery system. It has the following properties; + +* `TokenCookie`: Can be used to configure the cookie details. This cookie is used to store the antiforgery token value in the client side, so clients can read it and sends the value as the HTTP header. Default cookie name is `XSRF-TOKEN`, expiration time is 10 years (yes, ten years! It should be a value longer than the authentication cookie max life time, for the security). +* `AuthCookieSchemaName`: The name of the authentication cookie used by your application. Default value is `Identity.Application` (which becomes `AspNetCore.Identity.Application` on runtime). The default value properly works with the ABP startup templates. **If you change the authentication cookie name, you also must change this.** +* `AutoValidate`: The single point to enable/disable the ABP automatic antiforgery validation system. Default value is `true`. +* `AutoValidateFilter`: A predicate that gets a type and returns a boolean. ABP uses this predicate to check a controller type. If it returns false for a controller type, the controller is excluded from the automatic antiforgery token validation. +* `AutoValidateIgnoredHttpMethods`: A list of HTTP Methods to ignore on automatic antiforgery validation. Default value: "GET", "HEAD", "TRACE", "OPTIONS". These HTTP Methods are safe to skip antiforgery validation since they don't change the application state. + +If you need to change these options, do it in the `ConfigureServices` method of your [module](Module-Development-Basics.md). + +**Example: Configuring the AbpAntiForgeryOptions** + +```csharp +Configure(options => +{ + options.TokenCookie.Expiration = TimeSpan.FromDays(365); + options.AutoValidateIgnoredHttpMethods.Remove("GET"); + options.AutoValidateFilter = + type => !type.Namespace.StartsWith("MyProject.MyIgnoredNamespace"); +}); +``` + +This configuration; + +* Sets the antiforgery token expiration time to ~1 year. +* Enables antiforgery token validation for GET requests too. +* Ignores the controller types in the specified namespace. + +### AntiforgeryOptions + +`AntiforgeryOptions` is the standard [options class](Options.md) of the ASP.NET Core. **You can find all the information about this class in its [own documentation](https://docs.microsoft.com/en-us/aspnet/core/security/anti-request-forgery)**. + +`HeaderName` option is especially important for the ABP Framework point of view. Default value of this value is `RequestVerificationToken` and the clients uses this name while sending the token value in the header. So, if you change this option, you should also arrange your clients to align the change. If you don't have a good reason, leave it as default. + +### AbpValidateAntiForgeryToken Attribute + +If you disable the automatic validation or want to perform the validation for an endpoint that is not validated by default (for example, an endpoint with HTTP GET Method), you can use the `[AbpValidateAntiForgeryToken]` attribute for a **controller type or method** (action). + +**Example: Add `[AbpValidateAntiForgeryToken]` to a HTTP GET method** + +```csharp +using System.Threading.Tasks; +using Microsoft.AspNetCore.Mvc; +using Volo.Abp.AspNetCore.Mvc; +using Volo.Abp.AspNetCore.Mvc.AntiForgery; + +namespace MyCompanyName.MyProjectName.Controllers +{ + [Route("api/products")] + public class ProductController : AbpController + { + [HttpGet] + [AbpValidateAntiForgeryToken] + public async Task GetAsync() + { + //TODO: ... + } + } +} +``` + +### Angular UI + +Angular supports CSRF Token out of box, but the token header name is `X-XSRF-TOKEN`. Since ABP Framework follows the ASP.NET Core conventions, it changes this value to `RequestVerificationToken` in the core package. + +You don't need to make anything unless you need to change the `AntiforgeryOptions.HeaderName` as explained before. If you change it, remember to change the header name for the Angular application too. To do that, add an import declaration for the `HttpClientXsrfModule` into your root module. + +**Example: Change the header name to *MyCustomHeaderName*** + +```typescript +@NgModule({ + // ... + imports: [ + //... + HttpClientXsrfModule.withOptions({ + cookieName: 'XSRF-TOKEN', + headerName: 'MyCustomHeaderName' + }) + ], +}) +export class AppModule {} +``` diff --git a/docs/en/Community-Articles/2020-10-08-How-To-Add-Custom-Property-To-The-User-Entity/How-To-Add-Custom-Property-To-The-User-Entity.md b/docs/en/Community-Articles/2020-10-08-How-To-Add-Custom-Property-To-The-User-Entity/How-To-Add-Custom-Property-To-The-User-Entity.md new file mode 100644 index 0000000000..3e8a3e9da2 --- /dev/null +++ b/docs/en/Community-Articles/2020-10-08-How-To-Add-Custom-Property-To-The-User-Entity/How-To-Add-Custom-Property-To-The-User-Entity.md @@ -0,0 +1,160 @@ +# How to Add Custom Properties to the User Entity + +## Introduction + +In this step-by-step article, I will explain how you can customize the user entity class, which is available in every web application you create using the ABP framework, according to your needs. When you read this article, you will learn how to override the services of built-in modules, extend the entities, extend data transfer objects and customize the user interface in the applications you develop using the ABP framework. + +You can see the screenshots below which we will reach at the end of the article. + +![custom-identity-user-list](./custom-identity-user-list.png) + +![new-user](./new-user.png) + +## Preparing the Project + +### Startup template and the initial run + +Abp Framework offers startup templates to get into the work faster. We can create a new startup template using Abp CLI: + +`abp new CustomizeUserDemo` + +> In this article, I will go through the MVC application, but it will work also in the [Angular](https://docs.abp.io/en/abp/latest/Getting-Started?UI=NG&DB=EF&Tiered=No) application. + +After the download is finished, we can run **CustomizeUserDemo.DbMigrator** project to create the database migrations and seed the initial data (admin user, role, etc). Then we can run `CustomizeUserDemo.Web` to see that our application is working. + +> Default admin username is **admin** and password is **1q2w3E\*** + +![initial-project](./initial-project.png) + +In this article, we will go through a scenario together and find the solutions to our questions through this scenario. However, since the scenario is not a real-life scenario, it may be strange, please don't get too about this issue :) + +## Step-1 + +Add two new properties to the `AppUser` in the Users folder of the **CustomizeUserDemo.Domain** project as follows: + +```csharp +public string Title { get; protected set; } + +public int Reputation { get; protected set; } +``` + +## Step-2 + +Create the Users folder in the **CustomizeUserDemo.Domain.Shared** project, create the class `UserConsts` inside the folder and update the class you created as below: + +```csharp +public static class UserConsts +{ + public const string TitlePropertyName = "Title"; + + public const string ReputationPropertyName = "Reputation"; + + public const int MaxTitleLength = 64; + + public const double MaxReputationValue = 1_000; + + public const double MinReputationValue = 1; +} +``` + +## Step-3 + +Update the `CustomizeUserDemoEfCoreEntityExtensionMappings` class in the **CustomizeUserDemo.EntityFramework** project in the EntityFrameworkCore folder as below: + +```csharp +public static class CustomizeUserDemoEfCoreEntityExtensionMappings +{ + private static readonly OneTimeRunner OneTimeRunner = new OneTimeRunner(); + + public static void Configure() + { + CustomizeUserDemoGlobalFeatureConfigurator.Configure(); + CustomizeUserDemoModuleExtensionConfigurator.Configure(); + + OneTimeRunner.Run(() => + { + ObjectExtensionManager.Instance + .MapEfCoreProperty( + nameof(AppUser.Title), + (entityBuilder, propertyBuilder) => + { + propertyBuilder.IsRequired(); + propertyBuilder.HasMaxLength(UserConsts.MaxTitleLength); + } + ).MapEfCoreProperty( + nameof(AppUser.Reputation), + (entityBuilder, propertyBuilder) => + { + propertyBuilder.HasDefaultValue(UserConsts.MinReputationValue); + } + ); + }); + } +} +``` + +This class can be used to map these extra properties to table fields in the database. Please read [this](https://docs.abp.io/en/abp/latest/Customizing-Application-Modules-Extending-Entities) article to improve your understanding of what we are doing. + +So far, we have added our extra features to the `User` entity and matched these features with the `ef core`. + +Now we need to add migration to see what has changed in our database. This for, open the Package Manager Console (PMC) under the menu Tools > NuGet Package Manager. + +![nuget-package-manager](./nuget-package-manager.png) + +Select the **CustomizeUserDemo.EntityFramework.DbMigrations** as the **default project** and execute the following command: + +```bash +Add-Migration "Updated-User-Entity" +``` + +![added-new-migration](./added-new-migration.png) + +This will create a new migration class inside the `Migrations` folder of the **CustomizeUserDemo.EntityFrameworkCore.DbMigrations** project. + +> If you are using another IDE than the Visual Studio, you can use `dotnet-ef` tool as [documented here](https://docs.microsoft.com/en-us/ef/core/managing-schemas/migrations/?tabs=dotnet-core-cli#create-a-migration). + +Finally, run the **CustomizeUserDemo.DbMigrator** project to update the database. + +When we updated the database, you can see that the `Title` and `Reputation` columns are added to the `Users` table. + +![user-table](./user-table.png) + +## Step-4 +Open the `CustomizeUserDemoModuleExtensionConfigurator` in the **CustomizeUserDemo.Domain.Shared** project, and change the contents of the `ConfigureExtraProperties` method as shown below: +```csharp +private static void ConfigureExtraProperties() +{ + ObjectExtensionManager.Instance.Modules().ConfigureIdentity(identity => + { + identity.ConfigureUser(user => + { + user.AddOrUpdateProperty( + UserConsts.TitlePropertyName, + options => + { + options.Attributes.Add(new RequiredAttribute()); + options.Attributes.Add( + new StringLengthAttribute(UserConsts.MaxTitleLength) + ); + } + ); + user.AddOrUpdateProperty( + UserConsts.ReputationPropertyName, + options => + { + options.DefaultValue = UserConsts.MinReputationValue; + options.Attributes.Add( + new RangeAttribute(UserConsts.MinReputationValue, UserConsts.MaxReputationValue) + ); + } + ); + }); + }); +} +``` + +That's it. Now let's run the application and look at the Identity user page. You can also try to edit and recreate a record if you want, it will work even though we haven't done anything extra. Here is the magic code behind ABP framework. + +If there is a situation you want to add, you can click the contribute button or make a comment. Also, if you like the article, don't forget to share it :) + +Happy coding :) diff --git a/docs/en/Community-Articles/2020-10-08-How-To-Add-Custom-Property-To-The-User-Entity/added-new-migration.png b/docs/en/Community-Articles/2020-10-08-How-To-Add-Custom-Property-To-The-User-Entity/added-new-migration.png new file mode 100755 index 0000000000..d459fdeed2 Binary files /dev/null and b/docs/en/Community-Articles/2020-10-08-How-To-Add-Custom-Property-To-The-User-Entity/added-new-migration.png differ diff --git a/docs/en/Community-Articles/2020-10-08-How-To-Add-Custom-Property-To-The-User-Entity/custom-identity-user-list.png b/docs/en/Community-Articles/2020-10-08-How-To-Add-Custom-Property-To-The-User-Entity/custom-identity-user-list.png new file mode 100644 index 0000000000..896ed947aa Binary files /dev/null and b/docs/en/Community-Articles/2020-10-08-How-To-Add-Custom-Property-To-The-User-Entity/custom-identity-user-list.png differ diff --git a/docs/en/Community-Articles/2020-10-08-How-To-Add-Custom-Property-To-The-User-Entity/initial-project.png b/docs/en/Community-Articles/2020-10-08-How-To-Add-Custom-Property-To-The-User-Entity/initial-project.png new file mode 100755 index 0000000000..6e08833853 Binary files /dev/null and b/docs/en/Community-Articles/2020-10-08-How-To-Add-Custom-Property-To-The-User-Entity/initial-project.png differ diff --git a/docs/en/Community-Articles/2020-10-08-How-To-Add-Custom-Property-To-The-User-Entity/new-user.png b/docs/en/Community-Articles/2020-10-08-How-To-Add-Custom-Property-To-The-User-Entity/new-user.png new file mode 100644 index 0000000000..d3a5c66198 Binary files /dev/null and b/docs/en/Community-Articles/2020-10-08-How-To-Add-Custom-Property-To-The-User-Entity/new-user.png differ diff --git a/docs/en/Community-Articles/2020-10-08-How-To-Add-Custom-Property-To-The-User-Entity/nuget-package-manager.png b/docs/en/Community-Articles/2020-10-08-How-To-Add-Custom-Property-To-The-User-Entity/nuget-package-manager.png new file mode 100755 index 0000000000..680bc9d2e7 Binary files /dev/null and b/docs/en/Community-Articles/2020-10-08-How-To-Add-Custom-Property-To-The-User-Entity/nuget-package-manager.png differ diff --git a/docs/en/Community-Articles/2020-10-08-How-To-Add-Custom-Property-To-The-User-Entity/user-table.png b/docs/en/Community-Articles/2020-10-08-How-To-Add-Custom-Property-To-The-User-Entity/user-table.png new file mode 100755 index 0000000000..5bb71b8325 Binary files /dev/null and b/docs/en/Community-Articles/2020-10-08-How-To-Add-Custom-Property-To-The-User-Entity/user-table.png differ diff --git a/docs/en/Customizing-Application-Modules-Overriding-Services.md b/docs/en/Customizing-Application-Modules-Overriding-Services.md index d0d8c8a8a1..b8706eea61 100644 --- a/docs/en/Customizing-Application-Modules-Overriding-Services.md +++ b/docs/en/Customizing-Application-Modules-Overriding-Services.md @@ -162,6 +162,41 @@ 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 Controller + +````csharp +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Volo.Abp.Account; +using Volo.Abp.DependencyInjection; + +namespace MyProject.Controllers +{ + [Dependency(ReplaceServices = true)] + [ExposeServices(typeof(AccountController))] + public class MyAccountController : AccountController + { + public MyAccountController(IAccountAppService accountAppService) + : base(accountAppService) + { + + } + + public override async Task SendPasswordResetCodeAsync( + SendPasswordResetCodeDto input) + { + Logger.LogInformation("Your custom logic..."); + + await base.SendPasswordResetCodeAsync(input); + } + } +} +```` + +This example replaces the `AccountController` (An API Controller defined in the [Account Module](Modules/Account.md)) and overrides the `SendPasswordResetCodeAsync` method. + +**`[ExposeServices(typeof(AccountController))]` is essential** here since it registers this controller for the `AccountController` in the dependency injection system. `[Dependency(ReplaceServices = true)]` is also recommended to clear the old registration (even the ASP.NET Core DI system selects the last registered one). + ### Overriding Other Classes Overriding controllers, framework services, view component classes and any other type of classes registered to dependency injection can be overridden just like the examples above. diff --git a/docs/en/JavaScript/Dynamic-JavaScript-API-Clients.md b/docs/en/JavaScript/Dynamic-JavaScript-API-Clients.md deleted file mode 100644 index 539d3ac15a..0000000000 --- a/docs/en/JavaScript/Dynamic-JavaScript-API-Clients.md +++ /dev/null @@ -1,3 +0,0 @@ -## Dynamic JavaScript API Clients - -TODO \ No newline at end of file diff --git a/docs/en/Localization.md b/docs/en/Localization.md index 37104a4878..a33dff1779 100644 --- a/docs/en/Localization.md +++ b/docs/en/Localization.md @@ -100,8 +100,6 @@ Configure(options => > The [application startup template](Startup-Templates/Application.md) sets `DefaultResourceType` to the localization resource of the application. -See the *Client Side* section below for a use case. - ### Short Localization Resource Name Localization resources are also available in the client (JavaScript) side. So, setting a short name for the localization resource makes it easy to use localization texts. Example: @@ -156,13 +154,13 @@ services.Configure(options => * If an extension file defines the same localized string, it overrides the string. -## Getting Localized Texts +## Getting the Localized Texts -### Server Side +Getting the localized text is pretty standard. -Getting the localized text on the server side is pretty standard. +### Simplest Usage In A Class -#### Simplest Usage In A Class +Just inject the `IStringLocalizer` service and use it like shown below: ````C# public class MyService @@ -183,9 +181,13 @@ public class MyService ##### Format Arguments -Format arguments can be passed after the localization key. If your message is `Hello {0}, welcome!`, then you can pass the `{0}` argument to the localizer like `_localizer["HelloMessage", "John"]` +Format arguments can be passed after the localization key. If your message is `Hello {0}, welcome!`, then you can pass the `{0}` argument to the localizer like `_localizer["HelloMessage", "John"]`. + +> Refer to the [Microsoft's localization documentation](https://docs.microsoft.com/en-us/aspnet/core/fundamentals/localization) for details about using the localization. -#### Simplest Usage In A Razor View/Page +### Using In A Razor View/Page + +Use `IHtmlLocalizer` in razor views/pages; ````c# @inject IHtmlLocalizer Localizer @@ -193,54 +195,59 @@ Format arguments can be passed after the localization key. If your message is `H

@Localizer["HelloWorld"]

```` -Refer to the [Microsoft's localization documentation](https://docs.microsoft.com/en-us/aspnet/core/fundamentals/localization) for details about using localization on the server side. - -### Client Side - -ABP provides JavaScript services to use the same localized texts in the client side. - -#### getResource - -`abp.localization.getResource` function is used to get a localization resource: - -````js -var testResource = abp.localization.getResource('Test'); -```` - -Then you can localize a string based on this resource: +### Special Base Classes -````js -var str = testResource('HelloWorld'); -```` +Some ABP Framework base classes provide a `L` property to use the localizer even easier. -#### localize +**Example: Localize a text in an application service method** -`abp.localization.localize` function is a shortcut where you can both specify the text name and the resource name: +```csharp +using System.Threading.Tasks; +using MyProject.Localization; +using Volo.Abp.Application.Services; -````js -var str = abp.localization.localize('HelloWorld', 'Test'); -```` +namespace MyProject +{ + public class TestAppService : ApplicationService + { + public TestAppService() + { + LocalizationResource = typeof(MyProjectResource); + } -`HelloWorld` is the text to localize, where `Test` is the localization resource name here. + public async Task DoIt() + { + var str = L["HelloWorld"]; + } + } +} +``` -If you don't specify the localization resource name, it uses the default localization resource defined on the `AbpLocalizationOptions` (see the *Default Resource* section above). Example: +When you set the `LocalizationResource` in the constructor, the `ApplicationService` class uses that resource type when you use the `L` property, just like in the `DoIt()` method. -````js -var str = abp.localization.localize('HelloWorld'); //uses the default resource -```` +Setting `LocalizationResource` in every application service can be tedious. You can create an abstract base application service class, set it there and derive your application services from that base class. This is already implemented when you create a new project with the [startup templates](Startup-Templates/Application.md). So, you can simply inherit from the base class directly use the `L` property: -##### Format Arguments +```csharp +using System.Threading.Tasks; -If your localized string contains arguments, like `Hello {0}, welcome!`, you can pass arguments to the localization methods. Examples: +namespace MyProject +{ + public class TestAppService : MyProjectAppService + { + public async Task DoIt() + { + var str = L["HelloWorld"]; + } + } +} +``` -````js -var str1 = abp.localization.getResource('Test')('HelloWelcomeMessage', 'John'); -var str2 = abp.localization.localize('HelloWorld', 'Test', 'John'); -```` +The `L` property is also available for some other base classes like `AbpController` and `AbpPageModel`. -Both of the samples above produce the output `Hello John, welcome!`. +## The Client Side -## See Also +See the following documents to learn how to reuse the same localization texts in the JavaScript side; -* [Localization in Angular UI](UI/Angular/Localization.md) -* [Forms & Validation](UI/AspNetCore/Forms-Validation.md) for the ASP.NET Core MVC / Razor Pages UI \ No newline at end of file +* [Localization for the MVC / Razor Pages UI](UI/AspNetCore/JavaScript-API/Localization.md) +* [Localization for the Blazor UI](UI/Blazor/Localization.md) +* [Localization for the Angular UI](UI/Angular/Localization.md) \ No newline at end of file diff --git a/docs/en/Redis-Cache.md b/docs/en/Redis-Cache.md index 42679679c6..3e11584bce 100644 --- a/docs/en/Redis-Cache.md +++ b/docs/en/Redis-Cache.md @@ -25,9 +25,11 @@ Volo.Abp.Caching.StackExchangeRedis package automatically gets the redis [config ````js "Redis": { + "IsEnabled": "true", "Configuration": "127.0.0.1" } ```` +The setting `IsEnabled` is optional and will be considered `true` if it is not set. Alternatively you can configure the standard [RedisCacheOptions](https://docs.microsoft.com/en-us/dotnet/api/microsoft.extensions.caching.stackexchangeredis.rediscacheoptions) [options](Options.md) class in the `ConfigureServices` method of your [module](Module-Development-Basics.md): diff --git a/docs/en/UI/Angular/Localization.md b/docs/en/UI/Angular/Localization.md index eec4db0cb4..c8073585e1 100644 --- a/docs/en/UI/Angular/Localization.md +++ b/docs/en/UI/Angular/Localization.md @@ -219,7 +219,18 @@ If you see an error like this, you should pass the `cultureNameLocaleFileMap` pr See [all locale files in Angular](https://github.com/angular/angular/tree/master/packages/common/locales). +## Adding new culture +```js +//app.module.ts + +import { storeLocaleData } from '@abp/ng.core'; +import( +/* webpackChunkName: "_locale-your-locale-js"*/ +/* webpackMode: "eager" */ +'@angular/common/locales/your-locale.js' +).then(m => storeLocaleData(m.default, 'your-locale')); +``` ## See Also * [Localization in ASP.NET Core](../../Localization.md) diff --git a/docs/en/UI/Angular/Toaster-Service.md b/docs/en/UI/Angular/Toaster-Service.md index f6d5c71e99..4d94b8cf6d 100644 --- a/docs/en/UI/Angular/Toaster-Service.md +++ b/docs/en/UI/Angular/Toaster-Service.md @@ -85,7 +85,103 @@ The all open toasts can be removed manually via the `clear` method: ```js this.toaster.clear(); ``` +## Replacing ToasterService with 3rd party toaster libraries +If you want the ABP Framework to utilize 3rd party libraries for the toasters instead of the built-in one, you can provide a service that implements `Toaster.Service` interface, and provide it as follows (ngx-toastr library used in example): + +> You can use *LocalizationService* for toaster messages translations. +```js +// your-custom-toaster.service.ts +import { Injectable } from '@angular/core'; +import { Config, LocalizationService } from '@abp/ng.core'; +import { Toaster } from '@abp/ng.theme.shared'; +import { ToastrService } from 'ngx-toastr'; + +@Injectable() +export class CustomToasterService implements Toaster.Service { + constructor(private toastr: ToastrService, private localizationService: LocalizationService) {} + + error( + message: Config.LocalizationParam, + title?: Config.LocalizationParam, + options?: Partial, + ) { + return this.show(message, title, 'error', options); + } + + clear(): void { + this.toastr.clear(); + } + + info( + message: Config.LocalizationParam, + title: Config.LocalizationParam | undefined, + options: Partial | undefined, + ): Toaster.ToasterId { + return this.show(message, title, 'info', options); + } + + remove(id: number): void { + this.toastr.remove(id); + } + + show( + message: Config.LocalizationParam, + title: Config.LocalizationParam, + severity: Toaster.Severity, + options: Partial, + ): Toaster.ToasterId { + const translatedMessage = this.localizationService.instant(message); + const translatedTitle = this.localizationService.instant(title); + const toasterOptions = { + positionClass: 'toast-bottom-right', + tapToDismiss: options.tapToDismiss, + ...(options.sticky && { + extendedTimeOut: 0, + timeOut: 0, + }), + }; + const activeToast = this.toastr.show( + translatedMessage, + translatedTitle, + toasterOptions, + `toast-${severity}`, + ); + return activeToast.toastId; + } + + success( + message: Config.LocalizationParam, + title: Config.LocalizationParam | undefined, + options: Partial | undefined, + ): Toaster.ToasterId { + return this.show(message, title, 'success', options); + } + + warn( + message: Config.LocalizationParam, + title: Config.LocalizationParam | undefined, + options: Partial | undefined, + ): Toaster.ToasterId { + return this.show(message, title, 'warning', options); + } +} +``` +```js +// app.module.ts + +import { ToasterService } from '@abp/ng.theme.shared'; + +@NgModule({ + providers: [ + // ... + { + provide: ToasterService, + useClass: CustomToasterService, + }, + ] +}) +``` ## API ### success diff --git a/docs/en/UI/AspNetCore/Customization-User-Interface.md b/docs/en/UI/AspNetCore/Customization-User-Interface.md index f1f0174c89..c4e196fbb9 100644 --- a/docs/en/UI/AspNetCore/Customization-User-Interface.md +++ b/docs/en/UI/AspNetCore/Customization-User-Interface.md @@ -376,7 +376,7 @@ Assume that you need to add the Google Analytics script to the layout (that will ![bookstore-google-analytics-view-component](../../images/bookstore-google-analytics-view-component.png) -**NotificationViewComponent.cs** +**GoogleAnalyticsViewComponent.cs** ````csharp public class GoogleAnalyticsViewComponent : AbpViewComponent @@ -441,7 +441,7 @@ Layout system allows themes to define standard, named layouts and allows any pag * "**Account**": This layout is used by login, register and other similar pages. It is used for the pages under the `/Pages/Account` folder by default. * "**Empty**": Empty and minimal layout. -These names are defined in the `StandardLayouts` class as constants. You can definitely create your own layouts, but these are standard layout names and implemented by all the themes out of the box. +These names are defined in the `StandardLayouts` class as constants. You can definitely create your own layouts, but these are the standard layout names and implemented by all the themes out of the box. #### Layout Location diff --git a/docs/en/UI/AspNetCore/JavaScript-API/Ajax.md b/docs/en/UI/AspNetCore/JavaScript-API/Ajax.md new file mode 100644 index 0000000000..dca3105b5c --- /dev/null +++ b/docs/en/UI/AspNetCore/JavaScript-API/Ajax.md @@ -0,0 +1,150 @@ +# ASP.NET Core MVC / Razor Pages UI JavaScript AJAX API + +`abp.ajax` API provides a convenient way of performing AJAX calls to the server. It internally uses JQuery's `$.ajax`, but automates some common tasks for you; + +* Automatically **handles & localize the errors** and informs the user (using the [abp.message](Message.md)). So you typically don't care about errors. +* Automatically adds **anti forgery** token to the HTTP header to satisfy CSRF protection validation on the server side. +* Automatically sets **default options** and allows to configure the defaults in a single place. +* Can **block** a UI part (or the full page) during the AJAX operation. +* Allows to fully customize any AJAX call, by using the standard `$.ajax` **options**. + +> While `abp.ajax` makes the AJAX call pretty easier, you typically will use the [Dynamic JavaScript Client Proxy](Dynamic-JavaScript-Client-Proxies.md) system to perform calls to your server side HTTP APIs. `abp.ajax` can be used when you need to perform low level AJAX operations. + +## Basic Usage + +`abp.ajax` accepts an options object that is accepted by the standard [$.ajax](https://api.jquery.com/jquery.ajax/#jQuery-ajax-settings). All the standard options are valid. It returns a [promise](https://api.jquery.com/category/deferred-object/) as the return value. + +**Example: Get the list of users** + +````js +abp.ajax({ + type: 'GET', + url: '/api/identity/users' +}).then(function(result){ + console.log(result); +}); +```` + +This command logs the list of users to the console, if you've **logged in** to the application and have [permission](../../../Authorization.md) for the user management page of the [Identity Module](../../../Modules/Identity.md). + +## Error Handling + +The example AJAX call above shows an **error message** if you haven't login to the application or you don't have the necessary permissions to perform this request: + +![ajax-error](../../../images/ajax-error.png) + +All kinds of errors are automatically handled by `abp.ajax`, unless you want to disable it. + +### Standard Error Response + +`abp.ajax` is compatible with the [exception handling system](../../../Exception-Handling.md) of the ABP Framework and it properly handles the standard error format returned from the server. A typical error message is a JSON as like below: + +````json +{ + "error": { + "code": "App:010042", + "message": "This topic is locked and can not add a new message", + "details": "A more detailed info about the error..." + } +} +```` + +The error message is directly shown to the user, using the `message` and `details` properties. + +### Non-Standard Error Response & HTTP Status Codes + +It also handles errors even if the standard error format was not sent by the server. This can be case if you bypass the ABP exception handling system and manually build the HTTP response on the server. In that case, **HTTP status codes** are considered. + +The following HTTP Status Codes are pre-defined; + +* **401**: Shows an error message like "*You should be authenticated (sign in) in order to perform this operation*". When the users click the OK button, they are redirected to the home page of the application to make them login again. +* **403**: Shows an error message like "*You are not allowed to perform this operation*". +* **404**: Shows an error message like "*The resource requested could not found on the server*". +* **Others**: Shows a generic error message like "*An error has occurred. Error detail not sent by server*". + +All these messages are localized based on the current user's language. + +### Manually Handling the Errors + +Since `abp.ajax` returns a promise, you can always chain a `.cactch(...)` call to register a callback that is executed if the AJAX request fails. + +**Example: Show an alert if the AJAX request fails** + +````js +abp.ajax({ + type: 'GET', + url: '/api/identity/users' +}).then(function(result){ + console.log(result); +}).catch(function(){ + alert("request failed :("); +}); +```` + +While your callback is fired, ABP still handles the error itself. If you want to disable automatic error handling, pass `abpHandleError: false` the the `abp.ajax` options. + +**Example: Disable the auto error handling** + +````js +abp.ajax({ + type: 'GET', + url: '/api/identity/users', + abpHandleError: false //DISABLE AUTO ERROR HANDLING +}).then(function(result){ + console.log(result); +}).catch(function(){ + alert("request failed :("); +}); +```` + +If you set `abpHandleError: false` and don't catch the error yourself, then the error will be hidden and the request silently fails. `abp.ajax` still logs the error to the browser console (see the *Configuration* section to override it). + +## Configuration + +`abp.ajax` has a **global configuration** that you can customize based on your requirements. + +### Default AJAX Options + +`abp.ajax.defaultOpts` object is used to configure default options used while performing an AJAX call, unless you override them. Default value of this object is shown below: + +````js +{ + dataType: 'json', + type: 'POST', + contentType: 'application/json', + headers: { + 'X-Requested-With': 'XMLHttpRequest' + } +} +```` + +So, if you want to change the default request type, you can do it as shown below: + +````js +abp.ajax.defaultOpts.type = 'GET'; +```` + +Write this code before all of your JavaScript code. You typically want to place such a configuration into a separate JavaScript file and add it to the layout using the global [bundle](../Bundling-Minification.md). + +### Log/Show Errors + +The following functions can be overridden to customize the logging and showing the error messages: + +* `abp.ajax.logError` function logs errors using the [abp.log.error(...)](Logging.md) by default. +* `abp.ajax.showError` function shows the error message using the [abp.message.error(...)](Message.md) by default. +* `abp.ajax.handleErrorStatusCode` handles different HTTP status codes and shows different messages based on the code. +* `abp.ajax.handleAbpErrorResponse` handles the errors sent with the standard ABP error format. +* `abp.ajax.handleNonAbpErrorResponse` handles the non-standard error responses. +* `abp.ajax.handleUnAuthorizedRequest` handles responses with `401` status code and redirect users to the home page of the application. + +**Example: Override the `logError` function** + +````js +abp.ajax.logError = function(error) { + //... +} +```` + +### Other Options + +* `abp.ajax.ajaxSendHandler` function is used to intercept the AJAX requests and add antiforgery token to the HTTP header. Note that this works for all AJAX requests, even if you don't use the `abp.ajax`. \ No newline at end of file diff --git a/docs/en/UI/AspNetCore/JavaScript-API/Dynamic-JavaScript-Client-Proxies.md b/docs/en/UI/AspNetCore/JavaScript-API/Dynamic-JavaScript-Client-Proxies.md new file mode 100644 index 0000000000..5270852b60 --- /dev/null +++ b/docs/en/UI/AspNetCore/JavaScript-API/Dynamic-JavaScript-Client-Proxies.md @@ -0,0 +1,3 @@ +# ASP.NET Core MVC / Razor Pages UI: Dynamic JavaScript Client Proxies + +TODO \ No newline at end of file diff --git a/docs/en/UI/AspNetCore/JavaScript-API/Index.md b/docs/en/UI/AspNetCore/JavaScript-API/Index.md index 9f584eacfb..bca62835f7 100644 --- a/docs/en/UI/AspNetCore/JavaScript-API/Index.md +++ b/docs/en/UI/AspNetCore/JavaScript-API/Index.md @@ -1,23 +1,23 @@ # JavaScript API -ABP provides some JavaScript APIs for ASP.NET Core MVC / Razor Pages applications. They can be used to perform some common application requirements in the client side. +ABP provides a set of JavaScript APIs for ASP.NET Core MVC / Razor Pages applications. They can be used to perform common application requirements easily in the client side and integrate to the server side. ## APIs -* abp.ajax +* [abp.ajax](Ajax.md) * abp.auth * abp.currentUser * abp.dom * abp.event * abp.features -* abp.localization +* [abp.localization](Localization.md) * abp.log +* [abp.message](Message.md) * abp.ModalManager -* abp.notify +* [abp.notify](Notify.md) * abp.security * abp.setting * abp.ui * abp.utils * abp.ResourceLoader -* abp.WidgetManager -* Other APIs \ No newline at end of file +* abp.WidgetManager \ No newline at end of file diff --git a/docs/en/UI/AspNetCore/JavaScript-API/Localization.md b/docs/en/UI/AspNetCore/JavaScript-API/Localization.md new file mode 100644 index 0000000000..0897b99268 --- /dev/null +++ b/docs/en/UI/AspNetCore/JavaScript-API/Localization.md @@ -0,0 +1,143 @@ +# ASP.NET Core MVC / Razor Pages UI: JavaScript Localization API + +Localization API allows you to reuse the server side localization resources in the client side. + +> This document only explains the JavaScript API. See the [localization document](../../../Localization.md) to understand the ABP localization system. + +## Basic Usage + +`abp.localization.getResource(...)` function is used to get a localization resource: + +````js +var testResource = abp.localization.getResource('Test'); +```` + +Then you can localize a string based on this resource: + +````js +var str = testResource('HelloWorld'); +```` + +`abp.localization.localize(...)` function is a shortcut where you can both specify the text name and the resource name: + +````js +var str = abp.localization.localize('HelloWorld', 'Test'); +```` + +`HelloWorld` is the text to localize, where `Test` is the localization resource name here. + +### Fallback Logic + +If given texts was not localized, localization method returns the given key as the localization result. + +### Default Localization Resource + +If you don't specify the localization resource name, it uses the **default localization resource** defined on the `AbpLocalizationOptions` (see the [localization document](../../../Localization.md)). + +**Example: Using the default localization resource** + +````js +var str = abp.localization.localize('HelloWorld'); //uses the default resource +```` + +### Format Arguments + +If your localized string contains arguments, like `Hello {0}, welcome!`, you can pass arguments to the localization methods. Examples: + +````js +var testSource = abp.localization.getResource('Test'); +var str1 = testSource('HelloWelcomeMessage', 'John'); +var str2 = abp.localization.localize('HelloWelcomeMessage', 'Test', 'John'); +```` + +Assuming the `HelloWelcomeMessage` is localized as `Hello {0}, welcome!`, both of the samples above produce the output `Hello John, welcome!`. + +## Other Properties & Methods + +### abp.localization.values + +`abp.localization.values` property stores all the localization resources, keys and their values. + +### abp.localization.isLocalized + +Returns a boolean indicating that if the given text was localized or not. + +**Example** + +````js +abp.localization.isLocalized('ProductName', 'MyResource'); +```` + +Returns `true` if the `ProductName` text was localized for the `MyResource` resource. Otherwise, returns `false`. You can leave the resource name empty to use the default localization resource. + +### abp.localization.defaultResourceName + +`abp.localization.defaultResourceName` can be set to change the default localization resource. You normally don't set this since the ABP Framework automatically sets is based on the server side configuration. + +### abp.localization.currentCulture + +`abp.localization.currentCulture` returns an object to get information about the **currently selected language**. + +An example value of this object is shown below: + +````js +{ + "displayName": "English", + "englishName": "English", + "threeLetterIsoLanguageName": "eng", + "twoLetterIsoLanguageName": "en", + "isRightToLeft": false, + "cultureName": "en", + "name": "en", + "nativeName": "English", + "dateTimeFormat": { + "calendarAlgorithmType": "SolarCalendar", + "dateTimeFormatLong": "dddd, MMMM d, yyyy", + "shortDatePattern": "M/d/yyyy", + "fullDateTimePattern": "dddd, MMMM d, yyyy h:mm:ss tt", + "dateSeparator": "/", + "shortTimePattern": "h:mm tt", + "longTimePattern": "h:mm:ss tt" + } +} +```` + +### abp.localization.languages + +Used to get list of all **available languages** in the application. An example value of this object is shown below: + +````js +[ + { + "cultureName": "en", + "uiCultureName": "en", + "displayName": "English", + "flagIcon": null + }, + { + "cultureName": "fr", + "uiCultureName": "fr", + "displayName": "Français", + "flagIcon": null + }, + { + "cultureName": "pt-BR", + "uiCultureName": "pt-BR", + "displayName": "Português", + "flagIcon": null + }, + { + "cultureName": "tr", + "uiCultureName": "tr", + "displayName": "Türkçe", + "flagIcon": null + }, + { + "cultureName": "zh-Hans", + "uiCultureName": "zh-Hans", + "displayName": "简体中文", + "flagIcon": null + } +] +```` + diff --git a/docs/en/UI/AspNetCore/JavaScript-API/Logging.md b/docs/en/UI/AspNetCore/JavaScript-API/Logging.md new file mode 100644 index 0000000000..9fe48f22da --- /dev/null +++ b/docs/en/UI/AspNetCore/JavaScript-API/Logging.md @@ -0,0 +1,3 @@ +# ASP.NET Core MVC / Razor Pages UI: JavaScript Logging API + +TODO \ No newline at end of file diff --git a/docs/en/UI/AspNetCore/JavaScript-API/Message.md b/docs/en/UI/AspNetCore/JavaScript-API/Message.md new file mode 100644 index 0000000000..68c74914c6 --- /dev/null +++ b/docs/en/UI/AspNetCore/JavaScript-API/Message.md @@ -0,0 +1,128 @@ +# ASP.NET Core MVC / Razor Pages UI: JavaScript Message API + +Message API is used to show nice looking messages to the user as a blocking dialog. Message API is an abstraction provided by the ABP Framework and implemented using the [SweetAlert2](https://sweetalert2.github.io/) library by default. + +## Quick Example + +Use `abp.message.success(...)` function to show a success message: + +````js +abp.message.success('Your changes have been successfully saved!', 'Congratulations'); +```` + +It will show a dialog on the UI: + +![js-message-success](../../../images/js-message-success.png) + +## Informative Messages + +There are four types of informative message functions: + +* `abp.message.info(...)` +* `abp.message.success(...)` +* `abp.message.warn(...)` +* `abp.message.error(...)` + +All these methods get two parameters: + +* `message`: The message (`string`) to be shown. +* `title`: An optional (`string`) title. + +**Example: Show an error message** + +````js +abp.message.error('Your credit card number is not valid!'); +```` + +![js-message-error](../../../images/js-message-error.png) + +## Confirmation Message + +`abp.message.confirm(...)` function can be used to get a confirmation from the user. + +**Example** + +Use the following code to get a confirmation result from the user: + +````js +abp.message.confirm('Are you sure to delete the "admin" role?') +.then(function(confirmed){ + if(confirmed){ + console.log('TODO: deleting the role...'); + } +}); +```` + +The resulting UI will be like shown below: + +![js-message-confirm](../../../images/js-message-confirm.png) + +If user has clicked the `Yes` button, the `confirmed` argument in the `then` callback function will be `true`. + +> "*Are you sure?*" is the default title (localized based on the current language) and you can override it. + +### The Return Value + +The return value of the `abp.message.confirm(...)` function is a promise, so you can chain a `then` callback as shown above. + +### Parameters + +`abp.message.confirm(...)` function has the following parameters: + +* `message`: A message (string) to show to the user. +* `titleOrCallback` (optional): A title or a callback function. If you supply a string, it is shown as the title. If you supply a callback function (that gets a `bool` parameter) then it's called with the result. +* `callback` (optional): If you've passes a title to the second parameter, you can pass your callback function as the 3rd parameter. + +Passing a callback function is an alternative to the `then` callback shown above. + +**Example: Providing all the parameters and getting result with the callback function** + +````js +abp.message.confirm( + 'Are you sure to delete the "admin" role?', + 'Be careful!', + function(confirmed){ + if(confirmed){ + console.log('TODO: deleting the role...'); + } + }); +```` + +## SweetAlert Configuration + +The Message API is implemented using the [SweetAlert2](https://sweetalert2.github.io/) library by default. If you want to change its configuration, you can set the options in the `abp.libs.sweetAlert.config` object. The default configuration object is shown below: + +````js +{ + 'default': { + }, + info: { + icon: 'info' + }, + success: { + icon: 'success' + }, + warn: { + icon: 'warning' + }, + error: { + icon: 'error' + }, + confirm: { + icon: 'warning', + title: 'Are you sure?', + buttons: ['Cancel', 'Yes'] + } +} +```` + +> "Are you sure?", "Cancel" and "Yes" texts are automatically localized based on the current language. + +So, if you want to set the `warn` icon, you can set it like: + +````js +abp.libs.sweetAlert.config.warn.icon = 'error'; +```` + +See the [SweetAlert document](https://sweetalert2.github.io/) for all the configuration options. + diff --git a/docs/en/UI/AspNetCore/JavaScript-API/Notify.md b/docs/en/UI/AspNetCore/JavaScript-API/Notify.md new file mode 100644 index 0000000000..371aa8d4b9 --- /dev/null +++ b/docs/en/UI/AspNetCore/JavaScript-API/Notify.md @@ -0,0 +1,45 @@ +# ASP.NET Core MVC / Razor Pages UI: JavaScript Notify API + +Notify API is used to show toast style, auto disappearing UI notifications to the end user. It is implemented by the [Toastr](https://github.com/CodeSeven/toastr) library by default. + +## Quick Example + +Use `abp.notify.success(...)` function to show a success message: + +````js +abp.notify.success( + 'The product "Acme Atom Re-Arranger" has been successfully deleted.', + 'Deleted the Product' +); +```` + +A notification message is shown at the bottom right of the page: + +![js-message-success](../../../images/js-notify-success.png) + +## Notification Types + +There are four types of pre-defined notifications; + +* `abp.notify.success(...)` +* `abp.notify.info(...)` +* `abp.notify.warn(...)` +* `abp.notify.error(...)` + +All of the methods above gets the following parameters; + +* `message`: A message (`string`) to show to the user. +* `title`: An optional title (`string`). +* `options`: Additional options to be passed to the underlying library, to the Toastr by default. + +## Toastr Configuration + +The notification API is implemented by the [Toastr](https://github.com/CodeSeven/toastr) library by default. You can see its own configuration options. + +**Example: Show toast messages on the top right of the page** + +````js +toastr.options.positionClass = 'toast-top-right'; +```` + +> ABP sets this option to `toast-bottom-right` by default. You can override it just as shown above. \ No newline at end of file diff --git a/docs/en/UI/AspNetCore/Layout-Hooks.md b/docs/en/UI/AspNetCore/Layout-Hooks.md index 49b334c6c0..7039749142 100644 --- a/docs/en/UI/AspNetCore/Layout-Hooks.md +++ b/docs/en/UI/AspNetCore/Layout-Hooks.md @@ -1,3 +1,105 @@ -# Layout Hooks +# ASP.NET Core MVC / Razor Pages Layout Hooks -TODO \ No newline at end of file +ABP Framework theming system places the page layout into the [theme](Theming.md) NuGet packages. That means the final application doesn't include a `Layout.cshtml`, so you can't directly change the layout code to customize it. + +You copy the theme code into your solution. In this case you are completely free to customize it. However, then you won't be able to get automatic updates of the theme (by upgrading the theme NuGet package). + +ABP Framework provides different ways of [customizing the UI](Customization-User-Interface.md). + +The **Layout Hook System** allows you to **add code** at some specific parts of the layout. All layouts of all themes should implement these hooks. Finally, you can add a **view component** into a hook point. + +## Example: Add Google Analytics Script + +Assume that you need to add the Google Analytics script to the layout (that will be available for all the pages). First, **create a view component** in your project: + +![bookstore-google-analytics-view-component](../../images/bookstore-google-analytics-view-component.png) + +**NotificationViewComponent.cs** + +````csharp +public class GoogleAnalyticsViewComponent : AbpViewComponent +{ + public IViewComponentResult Invoke() + { + return View("/Pages/Shared/Components/GoogleAnalytics/Default.cshtml"); + } +} +```` + +**Default.cshtml** + +````html + +```` + +Change `UA-xxxxxx-1` with your own code. + +You can then add this component to any of the hook points in the `ConfigureServices` of your module: + +````csharp +Configure(options => +{ + options.Add( + LayoutHooks.Head.Last, //The hook name + typeof(GoogleAnalyticsViewComponent) //The component to add + ); +}); +```` + +Now, the GA code will be inserted in the `head` of the page as the last item. + +### Specifying the Layout + +The configuration above adds the `GoogleAnalyticsViewComponent` to all layouts. You may want to only add to a specific layout: + +````csharp +Configure(options => +{ + options.Add( + LayoutHooks.Head.Last, + typeof(GoogleAnalyticsViewComponent), + layout: StandardLayouts.Application //Set the layout to add + ); +}); +```` + +See the *Layouts* section below to learn more about the layout system. + +## Layout Hook Points + +There are some pre-defined layout hook points. The `LayoutHooks.Head.Last` used above was one of them. The standard hook points are; + +* `LayoutHooks.Head.First`: Used to add a component as the first item in the HTML head tag. +* `LayoutHooks.Head.Last`: Used to add a component as the last item in the HTML head tag. +* `LayoutHooks.Body.First`: Used to add a component as the first item in the HTML body tag. +* `LayoutHooks.Body.Last`: Used to add a component as the last item in the HTML body tag. +* `LayoutHooks.PageContent.First`: Used to add a component just before the page content (the `@RenderBody()` in the layout). +* `LayoutHooks.PageContent.Last`: Used to add a component just after the page content (the `@RenderBody()` in the layout). + +> You (or the modules you are using) can add **multiple items to the same hook point**. All of them will be added to the layout by the order they were added. + +## Layouts + +Layout system allows themes to define standard, named layouts and allows any page to select a proper layout for its purpose. There are three pre-defined layouts: + +* "**Application**": The main (and the default) layout for an application. It typically contains header, menu (sidebar), footer, toolbar... etc. +* "**Account**": This layout is used by login, register and other similar pages. It is used for the pages under the `/Pages/Account` folder by default. +* "**Empty**": Empty and minimal layout. + +These names are defined in the `StandardLayouts` class as constants. You can definitely create your own layouts, but these are the standard layout names and implemented by all the themes out of the box. + +### Layout Location + +You can find the layout files [here](https://github.com/abpframework/abp/tree/dev/framework/src/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic/Themes/Basic/Layouts) for the basic theme. You can take them as references to build your own layouts or you can override them if necessary. + +## See Also + +* [Customizing the User Interface](Customization-User-Interface.md) \ No newline at end of file diff --git a/docs/en/UI/Blazor/Localization.md b/docs/en/UI/Blazor/Localization.md new file mode 100644 index 0000000000..e6cf761ce3 --- /dev/null +++ b/docs/en/UI/Blazor/Localization.md @@ -0,0 +1,3 @@ +# Blazor UI: Localization + +Blazor applications can reuse the same `IStringLocalizer` service that is explained in the [localization document](../../Localization.md). All the localization resources and texts available in the server side are usable in the Blazor application. \ No newline at end of file diff --git a/docs/en/docs-nav.json b/docs/en/docs-nav.json index 7531d4e9f1..c0c25fd658 100644 --- a/docs/en/docs-nav.json +++ b/docs/en/docs-nav.json @@ -99,11 +99,15 @@ "path": "CLI.md" }, { - "text": "Authentication", + "text": "Authentication & Security", "items": [ { "text": "Social/External Logins", "path": "Authentication/Social-External-Logins.md" + }, + { + "text": "CSRF/XSRF & Anti Forgery", + "path": "CSRF-Anti-Forgery.md" } ] }, @@ -432,10 +436,39 @@ "text": "Widgets", "path": "UI/AspNetCore/Widgets.md" }, + { + "text": "Layout Hooks", + "path": "UI/AspNetCore/Layout-Hooks.md" + }, { "text": "Theming", "path": "UI/AspNetCore/Theming.md" }, + { + "text": "JavaScript API", + "items": [ + { + "text": "Overall", + "path": "UI/AspNetCore/JavaScript-API/Index.md" + }, + { + "text": "Localization", + "path": "UI/AspNetCore/JavaScript-API/Localization.md" + }, + { + "text": "AJAX", + "path": "UI/AspNetCore/JavaScript-API/Ajax.md" + }, + { + "text": "Message", + "path": "UI/AspNetCore/JavaScript-API/Message.md" + }, + { + "text": "Notify", + "path": "UI/AspNetCore/JavaScript-API/Notify.md" + } + ] + }, { "text": "Customize/Extend the UI", "path": "UI/AspNetCore/Customization-User-Interface.md" diff --git a/docs/en/images/ajax-error.png b/docs/en/images/ajax-error.png new file mode 100644 index 0000000000..2b9bc2bb37 Binary files /dev/null and b/docs/en/images/ajax-error.png differ diff --git a/docs/en/images/js-message-confirm.png b/docs/en/images/js-message-confirm.png new file mode 100644 index 0000000000..876ae8d98e Binary files /dev/null and b/docs/en/images/js-message-confirm.png differ diff --git a/docs/en/images/js-message-error.png b/docs/en/images/js-message-error.png new file mode 100644 index 0000000000..fd8abb1d7e Binary files /dev/null and b/docs/en/images/js-message-error.png differ diff --git a/docs/en/images/js-message-success.png b/docs/en/images/js-message-success.png new file mode 100644 index 0000000000..bbf418a37c Binary files /dev/null and b/docs/en/images/js-message-success.png differ diff --git a/docs/en/images/js-notify-success.png b/docs/en/images/js-notify-success.png new file mode 100644 index 0000000000..04489bc7ce Binary files /dev/null and b/docs/en/images/js-notify-success.png differ diff --git a/framework/Volo.Abp.sln b/framework/Volo.Abp.sln index c64adcbb0f..56670b8dca 100644 --- a/framework/Volo.Abp.sln +++ b/framework/Volo.Abp.sln @@ -319,33 +319,33 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Volo.Abp.BlobStoring.Aliyun EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Volo.Abp.BlobStoring.Aliyun.Tests", "test\Volo.Abp.BlobStoring.Aliyun.Tests\Volo.Abp.BlobStoring.Aliyun.Tests.csproj", "{8E49687A-E69F-49F2-8DB0-428D0883A937}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Volo.Abp.BlobStoring.Aws", "src\Volo.Abp.BlobStoring.Aws\Volo.Abp.BlobStoring.Aws.csproj", "{50968CDE-1029-4051-B2E5-B69D0ECF2A18}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Volo.Abp.BlobStoring.Aws", "src\Volo.Abp.BlobStoring.Aws\Volo.Abp.BlobStoring.Aws.csproj", "{50968CDE-1029-4051-B2E5-B69D0ECF2A18}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Volo.Abp.BlobStoring.Aws.Tests", "test\Volo.Abp.BlobStoring.Aws.Tests\Volo.Abp.BlobStoring.Aws.Tests.csproj", "{2CD3B26A-CA81-4279-8D5D-6A594517BB3F}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Volo.Abp.BlobStoring.Aws.Tests", "test\Volo.Abp.BlobStoring.Aws.Tests\Volo.Abp.BlobStoring.Aws.Tests.csproj", "{2CD3B26A-CA81-4279-8D5D-6A594517BB3F}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Volo.Abp.Kafka", "src\Volo.Abp.Kafka\Volo.Abp.Kafka.csproj", "{2A864049-9CD5-4493-8CDB-C408474D43D4}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Volo.Abp.Kafka", "src\Volo.Abp.Kafka\Volo.Abp.Kafka.csproj", "{2A864049-9CD5-4493-8CDB-C408474D43D4}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Volo.Abp.EventBus.Kafka", "src\Volo.Abp.EventBus.Kafka\Volo.Abp.EventBus.Kafka.csproj", "{C1D891B0-AE83-42CB-987D-425A2787DE78}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Volo.Abp.EventBus.Kafka", "src\Volo.Abp.EventBus.Kafka\Volo.Abp.EventBus.Kafka.csproj", "{C1D891B0-AE83-42CB-987D-425A2787DE78}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Volo.Abp.GlobalFeatures", "src\Volo.Abp.GlobalFeatures\Volo.Abp.GlobalFeatures.csproj", "{04F44063-C952-403A-815F-EFB778BDA125}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Volo.Abp.GlobalFeatures", "src\Volo.Abp.GlobalFeatures\Volo.Abp.GlobalFeatures.csproj", "{04F44063-C952-403A-815F-EFB778BDA125}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Volo.Abp.GlobalFeatures.Tests", "test\Volo.Abp.GlobalFeatures.Tests\Volo.Abp.GlobalFeatures.Tests.csproj", "{231F1581-AA21-44C3-BF27-51EB3AD5355C}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Volo.Abp.GlobalFeatures.Tests", "test\Volo.Abp.GlobalFeatures.Tests\Volo.Abp.GlobalFeatures.Tests.csproj", "{231F1581-AA21-44C3-BF27-51EB3AD5355C}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Volo.Abp.Http.Client.IdentityModel.WebAssembly", "src\Volo.Abp.Http.Client.IdentityModel.WebAssembly\Volo.Abp.Http.Client.IdentityModel.WebAssembly.csproj", "{3D35A1E0-A9A1-404F-9B55-5F1A7EB6D5B8}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Volo.Abp.Http.Client.IdentityModel.WebAssembly", "src\Volo.Abp.Http.Client.IdentityModel.WebAssembly\Volo.Abp.Http.Client.IdentityModel.WebAssembly.csproj", "{3D35A1E0-A9A1-404F-9B55-5F1A7EB6D5B8}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Volo.Abp.AspNetCore.Mvc.Client.Common", "src\Volo.Abp.AspNetCore.Mvc.Client.Common\Volo.Abp.AspNetCore.Mvc.Client.Common.csproj", "{8A22D962-016E-474A-8BB7-F831F0ABF3AC}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Volo.Abp.AspNetCore.Mvc.Client.Common", "src\Volo.Abp.AspNetCore.Mvc.Client.Common\Volo.Abp.AspNetCore.Mvc.Client.Common.csproj", "{8A22D962-016E-474A-8BB7-F831F0ABF3AC}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Volo.Abp.AspNetCore.Components.WebAssembly", "src\Volo.Abp.AspNetCore.Components.WebAssembly\Volo.Abp.AspNetCore.Components.WebAssembly.csproj", "{E1A62D10-F2FB-4040-BD60-11A3934058DF}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Volo.Abp.AspNetCore.Components.WebAssembly", "src\Volo.Abp.AspNetCore.Components.WebAssembly\Volo.Abp.AspNetCore.Components.WebAssembly.csproj", "{E1A62D10-F2FB-4040-BD60-11A3934058DF}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Volo.Abp.BlazoriseUI", "src\Volo.Abp.BlazoriseUI\Volo.Abp.BlazoriseUI.csproj", "{4EBDDB1B-D6C5-4FAE-B5A7-2171B18CDFA5}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Volo.Abp.BlazoriseUI", "src\Volo.Abp.BlazoriseUI\Volo.Abp.BlazoriseUI.csproj", "{4EBDDB1B-D6C5-4FAE-B5A7-2171B18CDFA5}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Volo.Abp.AspNetCore.Components.WebAssembly.BasicTheme", "src\Volo.Abp.AspNetCore.Components.WebAssembly.BasicTheme\Volo.Abp.AspNetCore.Components.WebAssembly.BasicTheme.csproj", "{ABC27C10-C0FF-44CB-B4FF-A09C0B79F695}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Volo.Abp.AspNetCore.Components.WebAssembly.BasicTheme", "src\Volo.Abp.AspNetCore.Components.WebAssembly.BasicTheme\Volo.Abp.AspNetCore.Components.WebAssembly.BasicTheme.csproj", "{ABC27C10-C0FF-44CB-B4FF-A09C0B79F695}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Volo.Abp.AspNetCore.Components.WebAssembly.Theming", "src\Volo.Abp.AspNetCore.Components.WebAssembly.Theming\Volo.Abp.AspNetCore.Components.WebAssembly.Theming.csproj", "{29CA7471-4E3E-4E75-8B33-001DDF682F01}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Volo.Abp.AspNetCore.Components.WebAssembly.Theming", "src\Volo.Abp.AspNetCore.Components.WebAssembly.Theming\Volo.Abp.AspNetCore.Components.WebAssembly.Theming.csproj", "{29CA7471-4E3E-4E75-8B33-001DDF682F01}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Volo.Abp.Autofac.WebAssembly", "src\Volo.Abp.Autofac.WebAssembly\Volo.Abp.Autofac.WebAssembly.csproj", "{37F89B0B-1C6B-426F-A5EE-676D1956D9E9}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Volo.Abp.Autofac.WebAssembly", "src\Volo.Abp.Autofac.WebAssembly\Volo.Abp.Autofac.WebAssembly.csproj", "{37F89B0B-1C6B-426F-A5EE-676D1956D9E9}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Volo.Abp.AspNetCore.Authentication.OpenIdConnect", "src\Volo.Abp.AspNetCore.Authentication.OpenIdConnect\Volo.Abp.AspNetCore.Authentication.OpenIdConnect.csproj", "{DEFE3DB2-EA4F-4F90-87FC-B25D64427BC5}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Volo.Abp.AspNetCore.Authentication.OpenIdConnect", "src\Volo.Abp.AspNetCore.Authentication.OpenIdConnect\Volo.Abp.AspNetCore.Authentication.OpenIdConnect.csproj", "{DEFE3DB2-EA4F-4F90-87FC-B25D64427BC5}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Volo.Abp.ExceptionHandling", "src\Volo.Abp.ExceptionHandling\Volo.Abp.ExceptionHandling.csproj", "{B9D1ADCB-D552-4626-A1F1-78FF72C1E822}" EndProject diff --git a/framework/src/Volo.Abp.AspNetCore.Components.WebAssembly.BasicTheme/Themes/Basic/MainLayout.razor b/framework/src/Volo.Abp.AspNetCore.Components.WebAssembly.BasicTheme/Themes/Basic/MainLayout.razor index 8e64b32022..6954057142 100644 --- a/framework/src/Volo.Abp.AspNetCore.Components.WebAssembly.BasicTheme/Themes/Basic/MainLayout.razor +++ b/framework/src/Volo.Abp.AspNetCore.Components.WebAssembly.BasicTheme/Themes/Basic/MainLayout.razor @@ -11,12 +11,14 @@
@Body + +
diff --git a/framework/src/Volo.Abp.AspNetCore.Components.WebAssembly.BasicTheme/Themes/Basic/_Imports.razor b/framework/src/Volo.Abp.AspNetCore.Components.WebAssembly.BasicTheme/Themes/Basic/_Imports.razor index f1ebc76453..7d695e9344 100644 --- a/framework/src/Volo.Abp.AspNetCore.Components.WebAssembly.BasicTheme/Themes/Basic/_Imports.razor +++ b/framework/src/Volo.Abp.AspNetCore.Components.WebAssembly.BasicTheme/Themes/Basic/_Imports.razor @@ -8,3 +8,5 @@ @using Volo.Abp.AspNetCore.Components.WebAssembly @using Blazorise @using Blazorise.DataGrid +@using Volo.Abp.BlazoriseUI; +@using Volo.Abp.BlazoriseUI.Components; \ No newline at end of file diff --git a/framework/src/Volo.Abp.AspNetCore.Components.WebAssembly/Volo.Abp.AspNetCore.Components.WebAssembly.csproj b/framework/src/Volo.Abp.AspNetCore.Components.WebAssembly/Volo.Abp.AspNetCore.Components.WebAssembly.csproj index 89f2d08b49..083142a718 100644 --- a/framework/src/Volo.Abp.AspNetCore.Components.WebAssembly/Volo.Abp.AspNetCore.Components.WebAssembly.csproj +++ b/framework/src/Volo.Abp.AspNetCore.Components.WebAssembly/Volo.Abp.AspNetCore.Components.WebAssembly.csproj @@ -22,6 +22,7 @@ + diff --git a/framework/src/Volo.Abp.AspNetCore.Components.WebAssembly/Volo/Abp/AspNetCore/Components/WebAssembly/IUiMessageService.cs b/framework/src/Volo.Abp.AspNetCore.Components.WebAssembly/Volo/Abp/AspNetCore/Components/WebAssembly/IUiMessageService.cs index 2c834ddc87..fd70cc40e1 100644 --- a/framework/src/Volo.Abp.AspNetCore.Components.WebAssembly/Volo/Abp/AspNetCore/Components/WebAssembly/IUiMessageService.cs +++ b/framework/src/Volo.Abp.AspNetCore.Components.WebAssembly/Volo/Abp/AspNetCore/Components/WebAssembly/IUiMessageService.cs @@ -1,17 +1,18 @@ -using System.Threading.Tasks; +using System; +using System.Threading.Tasks; namespace Volo.Abp.AspNetCore.Components.WebAssembly { public interface IUiMessageService { - Task InfoAsync(string message, string title = null); - - Task SuccessAsync(string message, string title = null); - - Task WarnAsync(string message, string title = null); - - Task ErrorAsync(string message, string title = null); - - Task ConfirmAsync(string message, string title = null); + Task InfoAsync(string message, string title = null, Action options = null); + + Task SuccessAsync(string message, string title = null, Action options = null); + + Task WarnAsync(string message, string title = null, Action options = null); + + Task ErrorAsync(string message, string title = null, Action options = null); + + Task ConfirmAsync(string message, string title = null, Action options = null); } } diff --git a/framework/src/Volo.Abp.AspNetCore.Components.WebAssembly/Volo/Abp/AspNetCore/Components/WebAssembly/NullUiMessageService.cs b/framework/src/Volo.Abp.AspNetCore.Components.WebAssembly/Volo/Abp/AspNetCore/Components/WebAssembly/NullUiMessageService.cs new file mode 100644 index 0000000000..2a00d29ec5 --- /dev/null +++ b/framework/src/Volo.Abp.AspNetCore.Components.WebAssembly/Volo/Abp/AspNetCore/Components/WebAssembly/NullUiMessageService.cs @@ -0,0 +1,34 @@ +using System; +using System.Threading.Tasks; +using Volo.Abp.DependencyInjection; + +namespace Volo.Abp.AspNetCore.Components.WebAssembly +{ + public class NullUiMessageService : IUiMessageService, ITransientDependency + { + public Task InfoAsync(string message, string title = null, Action options = null) + { + return Task.CompletedTask; + } + + public Task SuccessAsync(string message, string title = null, Action options = null) + { + return Task.CompletedTask; + } + + public Task WarnAsync(string message, string title = null, Action options = null) + { + return Task.CompletedTask; + } + + public Task ErrorAsync(string message, string title = null, Action options = null) + { + return Task.CompletedTask; + } + + public Task ConfirmAsync(string message, string title = null, Action options = null) + { + return Task.FromResult(true); + } + } +} diff --git a/framework/src/Volo.Abp.AspNetCore.Components.WebAssembly/Volo/Abp/AspNetCore/Components/WebAssembly/UiMessageEventArgs.cs b/framework/src/Volo.Abp.AspNetCore.Components.WebAssembly/Volo/Abp/AspNetCore/Components/WebAssembly/UiMessageEventArgs.cs new file mode 100644 index 0000000000..4431d3c819 --- /dev/null +++ b/framework/src/Volo.Abp.AspNetCore.Components.WebAssembly/Volo/Abp/AspNetCore/Components/WebAssembly/UiMessageEventArgs.cs @@ -0,0 +1,35 @@ +using System; +using System.Threading.Tasks; + +namespace Volo.Abp.AspNetCore.Components.WebAssembly +{ + public class UiMessageEventArgs : EventArgs + { + public UiMessageEventArgs(UiMessageType messageType, string message, string title, UiMessageOptions options) + { + MessageType = messageType; + Message = message; + Title = title; + Options = options; + } + + public UiMessageEventArgs(UiMessageType messageType, string message, string title, UiMessageOptions options, TaskCompletionSource callback) + { + MessageType = messageType; + Message = message; + Title = title; + Options = options; + Callback = callback; + } + + public UiMessageType MessageType { get; set; } + + public string Message { get; } + + public string Title { get; } + + public UiMessageOptions Options { get; } + + public TaskCompletionSource Callback { get; } + } +} diff --git a/framework/src/Volo.Abp.AspNetCore.Components.WebAssembly/Volo/Abp/AspNetCore/Components/WebAssembly/UiMessageOptions.cs b/framework/src/Volo.Abp.AspNetCore.Components.WebAssembly/Volo/Abp/AspNetCore/Components/WebAssembly/UiMessageOptions.cs new file mode 100644 index 0000000000..59b2e8f400 --- /dev/null +++ b/framework/src/Volo.Abp.AspNetCore.Components.WebAssembly/Volo/Abp/AspNetCore/Components/WebAssembly/UiMessageOptions.cs @@ -0,0 +1,53 @@ +namespace Volo.Abp.AspNetCore.Components.WebAssembly +{ + /// + /// Options to override message dialog appearance. + /// + public class UiMessageOptions + { + /// + /// If true, the message dialogue will be centered on the screen. + /// + public bool CenterMessage { get; set; } + + /// + /// If true, the message dialogue will show the large icon for the current message type. + /// + public bool ShowMessageIcon { get; set; } + + /// + /// Overrides the build-in message icon. + /// + public object MessageIcon { get; set; } + + /// + /// Custom text for the Ok button. + /// + public string OkButtonText { get; set; } + + /// + /// Custom icon for the Ok button. + /// + public object OkButtonIcon { get; set; } + + /// + /// Custom text for the Confirmation button. + /// + public string ConfirmButtonText { get; set; } + + /// + /// Custom icon for the Confirmation button. + /// + public object ConfirmButtonIcon { get; set; } + + /// + /// Custom text for the Cancel button. + /// + public string CancelButtonText { get; set; } + + /// + /// Custom icon for the Cancel button. + /// + public object CancelButtonIcon { get; set; } + } +} diff --git a/framework/src/Volo.Abp.AspNetCore.Components.WebAssembly/Volo/Abp/AspNetCore/Components/WebAssembly/UiMessageService.cs b/framework/src/Volo.Abp.AspNetCore.Components.WebAssembly/Volo/Abp/AspNetCore/Components/WebAssembly/UiMessageService.cs index 16fe041de4..93970de348 100644 --- a/framework/src/Volo.Abp.AspNetCore.Components.WebAssembly/Volo/Abp/AspNetCore/Components/WebAssembly/UiMessageService.cs +++ b/framework/src/Volo.Abp.AspNetCore.Components.WebAssembly/Volo/Abp/AspNetCore/Components/WebAssembly/UiMessageService.cs @@ -1,4 +1,5 @@ -using System.Threading.Tasks; +using System; +using System.Threading.Tasks; using Microsoft.JSInterop; using Volo.Abp.DependencyInjection; @@ -14,27 +15,27 @@ namespace Volo.Abp.AspNetCore.Components.WebAssembly JsRuntime = jsRuntime; } - public async Task InfoAsync(string message, string title = null) + public async Task InfoAsync(string message, string title = null, Action options = null) { await JsRuntime.InvokeVoidAsync("alert", message); } - public async Task SuccessAsync(string message, string title = null) + public async Task SuccessAsync(string message, string title = null, Action options = null) { await JsRuntime.InvokeVoidAsync("alert", message); } - public async Task WarnAsync(string message, string title = null) + public async Task WarnAsync(string message, string title = null, Action options = null) { await JsRuntime.InvokeVoidAsync("alert", message); } - - public async Task ErrorAsync(string message, string title = null) + + public async Task ErrorAsync(string message, string title = null, Action options = null) { await JsRuntime.InvokeVoidAsync("alert", message); } - - public async Task ConfirmAsync(string message, string title = null) + + public async Task ConfirmAsync(string message, string title = null, Action options = null) { return await JsRuntime.InvokeAsync("confirm", message); } diff --git a/framework/src/Volo.Abp.AspNetCore.Components.WebAssembly/Volo/Abp/AspNetCore/Components/WebAssembly/UiMessageType.cs b/framework/src/Volo.Abp.AspNetCore.Components.WebAssembly/Volo/Abp/AspNetCore/Components/WebAssembly/UiMessageType.cs new file mode 100644 index 0000000000..5e3a77a3c5 --- /dev/null +++ b/framework/src/Volo.Abp.AspNetCore.Components.WebAssembly/Volo/Abp/AspNetCore/Components/WebAssembly/UiMessageType.cs @@ -0,0 +1,14 @@ +namespace Volo.Abp.AspNetCore.Components.WebAssembly +{ + /// + /// Defines the possible ui message types with predefined actions. + /// + public enum UiMessageType + { + Info, + Success, + Warning, + Error, + Confirmation, + } +} diff --git a/framework/src/Volo.Abp.AspNetCore.Mvc.UI.MultiTenancy/Volo/Abp/AspNetCore/Mvc/UI/MultiTenancy/Localization/es.json b/framework/src/Volo.Abp.AspNetCore.Mvc.UI.MultiTenancy/Volo/Abp/AspNetCore/Mvc/UI/MultiTenancy/Localization/es.json new file mode 100644 index 0000000000..d6fd84dcbe --- /dev/null +++ b/framework/src/Volo.Abp.AspNetCore.Mvc.UI.MultiTenancy/Volo/Abp/AspNetCore/Mvc/UI/MultiTenancy/Localization/es.json @@ -0,0 +1,12 @@ +{ + "culture": "es", + "texts": { + "GivenTenantIsNotAvailable": "El inquilino {0} no está disponible", + "Tenant": "Inquilino", + "Switch": "cambiar", + "Name": "Nombre", + "SwitchTenant": "Cambiar inquilino", + "SwitchTenantHint": "Deje en blanco el campo nombre para cambiar el lado del host.", + "NotSelected": "No seleccionado" + } +} \ No newline at end of file diff --git a/framework/src/Volo.Abp.AspNetCore.Mvc/Volo/Abp/AspNetCore/Mvc/AntiForgery/AbpAntiForgeryManagerAspNetCoreExtensions.cs b/framework/src/Volo.Abp.AspNetCore.Mvc/Volo/Abp/AspNetCore/Mvc/AntiForgery/AbpAntiForgeryManagerAspNetCoreExtensions.cs deleted file mode 100644 index 31ea869b06..0000000000 --- a/framework/src/Volo.Abp.AspNetCore.Mvc/Volo/Abp/AspNetCore/Mvc/AntiForgery/AbpAntiForgeryManagerAspNetCoreExtensions.cs +++ /dev/null @@ -1,14 +0,0 @@ -namespace Volo.Abp.AspNetCore.Mvc.AntiForgery -{ - public static class AbpAntiForgeryManagerAspNetCoreExtensions - { - public static void SetCookie(this IAbpAntiForgeryManager manager) - { - manager.HttpContext.Response.Cookies.Append( - manager.Options.TokenCookie.Name, - manager.GenerateToken(), - manager.Options.TokenCookie.Build(manager.HttpContext) - ); - } - } -} diff --git a/framework/src/Volo.Abp.AspNetCore.Mvc/Volo/Abp/AspNetCore/Mvc/AntiForgery/AspNetCoreAbpAntiForgeryManager.cs b/framework/src/Volo.Abp.AspNetCore.Mvc/Volo/Abp/AspNetCore/Mvc/AntiForgery/AspNetCoreAbpAntiForgeryManager.cs index ff1ec26d1c..cf8143c50a 100644 --- a/framework/src/Volo.Abp.AspNetCore.Mvc/Volo/Abp/AspNetCore/Mvc/AntiForgery/AspNetCoreAbpAntiForgeryManager.cs +++ b/framework/src/Volo.Abp.AspNetCore.Mvc/Volo/Abp/AspNetCore/Mvc/AntiForgery/AspNetCoreAbpAntiForgeryManager.cs @@ -7,9 +7,9 @@ namespace Volo.Abp.AspNetCore.Mvc.AntiForgery { public class AspNetCoreAbpAntiForgeryManager : IAbpAntiForgeryManager, ITransientDependency { - public AbpAntiForgeryOptions Options { get; } + protected AbpAntiForgeryOptions Options { get; } - public HttpContext HttpContext => _httpContextAccessor.HttpContext; + protected HttpContext HttpContext => _httpContextAccessor.HttpContext; private readonly IAntiforgery _antiforgery; private readonly IHttpContextAccessor _httpContextAccessor; @@ -24,7 +24,7 @@ namespace Volo.Abp.AspNetCore.Mvc.AntiForgery Options = options.Value; } - public void SetCookie() + public virtual void SetCookie() { HttpContext.Response.Cookies.Append( Options.TokenCookie.Name, @@ -33,7 +33,7 @@ namespace Volo.Abp.AspNetCore.Mvc.AntiForgery ); } - public string GenerateToken() + public virtual string GenerateToken() { return _antiforgery.GetAndStoreTokens(_httpContextAccessor.HttpContext).RequestToken; } diff --git a/framework/src/Volo.Abp.AspNetCore.Mvc/Volo/Abp/AspNetCore/Mvc/AntiForgery/IAbpAntiForgeryManager.cs b/framework/src/Volo.Abp.AspNetCore.Mvc/Volo/Abp/AspNetCore/Mvc/AntiForgery/IAbpAntiForgeryManager.cs index 359e857dcb..bd385c7538 100644 --- a/framework/src/Volo.Abp.AspNetCore.Mvc/Volo/Abp/AspNetCore/Mvc/AntiForgery/IAbpAntiForgeryManager.cs +++ b/framework/src/Volo.Abp.AspNetCore.Mvc/Volo/Abp/AspNetCore/Mvc/AntiForgery/IAbpAntiForgeryManager.cs @@ -1,13 +1,7 @@ -using Microsoft.AspNetCore.Http; - -namespace Volo.Abp.AspNetCore.Mvc.AntiForgery +namespace Volo.Abp.AspNetCore.Mvc.AntiForgery { public interface IAbpAntiForgeryManager { - AbpAntiForgeryOptions Options { get; } - - HttpContext HttpContext { get; } - void SetCookie(); string GenerateToken(); diff --git a/framework/src/Volo.Abp.AspNetCore.Mvc/Volo/Abp/AspNetCore/Mvc/Conventions/AbpServiceConvention.cs b/framework/src/Volo.Abp.AspNetCore.Mvc/Volo/Abp/AspNetCore/Mvc/Conventions/AbpServiceConvention.cs index f19de585b9..ab2003a595 100644 --- a/framework/src/Volo.Abp.AspNetCore.Mvc/Volo/Abp/AspNetCore/Mvc/Conventions/AbpServiceConvention.cs +++ b/framework/src/Volo.Abp.AspNetCore.Mvc/Volo/Abp/AspNetCore/Mvc/Conventions/AbpServiceConvention.cs @@ -7,24 +7,30 @@ using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.Mvc.ActionConstraints; using Microsoft.AspNetCore.Mvc.ApplicationModels; using Microsoft.AspNetCore.Mvc.ModelBinding; +using Microsoft.Extensions.Logging; +using Microsoft.Extensions.Logging.Abstractions; using Microsoft.Extensions.Options; using Volo.Abp.Application.Services; using Volo.Abp.DependencyInjection; using Volo.Abp.GlobalFeatures; using Volo.Abp.Http; using Volo.Abp.Http.Modeling; -using Volo.Abp.Http.ProxyScripting.Generators; using Volo.Abp.Reflection; namespace Volo.Abp.AspNetCore.Mvc.Conventions { public class AbpServiceConvention : IAbpServiceConvention, ITransientDependency { + public ILogger Logger { get; set; } + private readonly AbpAspNetCoreMvcOptions _options; - public AbpServiceConvention(IOptions options) + public AbpServiceConvention( + IOptions options) { _options = options.Value; + + Logger = NullLogger.Instance; } public void Apply(ApplicationModel application) @@ -34,9 +40,12 @@ namespace Volo.Abp.AspNetCore.Mvc.Conventions protected virtual void ApplyForControllers(ApplicationModel application) { + RemoveDuplicateControllers(application); + foreach (var controller in application.Controllers) { var controllerType = controller.ControllerType.AsType(); + var configuration = GetControllerSettingOrNull(controllerType); //TODO: We can remove different behaviour for ImplementsRemoteServiceInterface. If there is a configuration, then it should be applied! @@ -59,6 +68,26 @@ namespace Volo.Abp.AspNetCore.Mvc.Conventions } } + protected virtual void RemoveDuplicateControllers(ApplicationModel application) + { + var derivedControllerModels = new List(); + + foreach (var controllerModel in application.Controllers) + { + var baseControllerTypes = controllerModel.ControllerType + .GetBaseClasses(typeof(Controller), includeObject: false) + .Where(t => !t.IsAbstract) + .ToArray(); + if (baseControllerTypes.Length > 0) + { + derivedControllerModels.Add(controllerModel); + Logger.LogInformation($"Removing the controller {controllerModel.ControllerType.AssemblyQualifiedName} from the application model since it replaces the controller(s): {baseControllerTypes.Select(c => c.AssemblyQualifiedName).JoinAsString(", ")}"); + } + } + + application.Controllers.RemoveAll(derivedControllerModels); + } + protected virtual void ConfigureRemoteService(ControllerModel controller, [CanBeNull] ConventionalControllerSetting configuration) { ConfigureApiExplorer(controller); diff --git a/framework/src/Volo.Abp.BlazoriseUI/AbpCrudPageBase.cs b/framework/src/Volo.Abp.BlazoriseUI/AbpCrudPageBase.cs index 7289ebe954..8723209c53 100644 --- a/framework/src/Volo.Abp.BlazoriseUI/AbpCrudPageBase.cs +++ b/framework/src/Volo.Abp.BlazoriseUI/AbpCrudPageBase.cs @@ -225,7 +225,7 @@ namespace Volo.Abp.BlazoriseUI { if (reference == null) { - reference = (TRef) ScopedServices.GetRequiredService(serviceType); + reference = (TRef)ScopedServices.GetRequiredService(serviceType); } return reference; @@ -266,7 +266,7 @@ namespace Volo.Abp.BlazoriseUI var input = await CreateGetListInputAsync(); var result = await AppService.GetListAsync(input); Entities = MapToListViewModel(result.Items); - TotalCount = (int?) result.TotalCount; + TotalCount = (int?)result.TotalCount; } private IReadOnlyList MapToListViewModel(IReadOnlyList dtos) diff --git a/framework/src/Volo.Abp.BlazoriseUI/BlazoriseUiMessageService.cs b/framework/src/Volo.Abp.BlazoriseUI/BlazoriseUiMessageService.cs new file mode 100644 index 0000000000..f22ec3b653 --- /dev/null +++ b/framework/src/Volo.Abp.BlazoriseUI/BlazoriseUiMessageService.cs @@ -0,0 +1,96 @@ +using System; +using System.Threading.Tasks; +using Localization.Resources.AbpUi; +using Microsoft.Extensions.Localization; +using Microsoft.Extensions.Logging; +using Microsoft.Extensions.Logging.Abstractions; +using Volo.Abp.AspNetCore.Components.WebAssembly; +using Volo.Abp.DependencyInjection; + +namespace Volo.Abp.BlazoriseUI +{ + [Dependency(ReplaceServices = true)] + public class BlazoriseUiMessageService : IUiMessageService, IScopedDependency + { + /// + /// An event raised after the message is received. Used to notify the message dialog. + /// + public event EventHandler MessageReceived; + + private readonly IStringLocalizer localizer; + + public ILogger Logger { get; set; } + + public BlazoriseUiMessageService( + IStringLocalizer localizer) + { + this.localizer = localizer; + + Logger = NullLogger.Instance; + } + + public Task InfoAsync(string message, string title = null, Action options = null) + { + var uiMessageOptions = CreateDefaultOptions(); + options?.Invoke(uiMessageOptions); + + MessageReceived?.Invoke(this, new UiMessageEventArgs(UiMessageType.Info, message, title, uiMessageOptions)); + + return Task.CompletedTask; + } + + public Task SuccessAsync(string message, string title = null, Action options = null) + { + var uiMessageOptions = CreateDefaultOptions(); + options?.Invoke(uiMessageOptions); + + MessageReceived?.Invoke(this, new UiMessageEventArgs(UiMessageType.Success, message, title, uiMessageOptions)); + + return Task.CompletedTask; + } + + public Task WarnAsync(string message, string title = null, Action options = null) + { + var uiMessageOptions = CreateDefaultOptions(); + options?.Invoke(uiMessageOptions); + + MessageReceived?.Invoke(this, new UiMessageEventArgs(UiMessageType.Warning, message, title, uiMessageOptions)); + + return Task.CompletedTask; + } + + public Task ErrorAsync(string message, string title = null, Action options = null) + { + var uiMessageOptions = CreateDefaultOptions(); + options?.Invoke(uiMessageOptions); + + MessageReceived?.Invoke(this, new UiMessageEventArgs(UiMessageType.Error, message, title, uiMessageOptions)); + + return Task.CompletedTask; + } + + public async Task ConfirmAsync(string message, string title = null, Action options = null) + { + var uiMessageOptions = CreateDefaultOptions(); + options?.Invoke(uiMessageOptions); + + var callback = new TaskCompletionSource(); + + MessageReceived?.Invoke(this, new UiMessageEventArgs(UiMessageType.Confirmation, message, title, uiMessageOptions)); + + return await callback.Task; + } + + protected virtual UiMessageOptions CreateDefaultOptions() + { + return new UiMessageOptions + { + CenterMessage = true, + ShowMessageIcon = true, + OkButtonText = localizer["Ok"], + CancelButtonText = localizer["Cancel"], + ConfirmButtonText = localizer["Yes"], + }; + } + } +} diff --git a/framework/src/Volo.Abp.BlazoriseUI/Components/UiMessageAlert.razor b/framework/src/Volo.Abp.BlazoriseUI/Components/UiMessageAlert.razor new file mode 100644 index 0000000000..cd8fd5cada --- /dev/null +++ b/framework/src/Volo.Abp.BlazoriseUI/Components/UiMessageAlert.razor @@ -0,0 +1,48 @@ + + + + + + @Title + + + + @if ( ShowMessageIcon ) + { + + + + } + @Message + + + @if ( IsConfirmation ) + { + + + } + else + { + + } + + + \ No newline at end of file diff --git a/framework/src/Volo.Abp.BlazoriseUI/Components/UiMessageAlert.razor.cs b/framework/src/Volo.Abp.BlazoriseUI/Components/UiMessageAlert.razor.cs new file mode 100644 index 0000000000..59e4aa3820 --- /dev/null +++ b/framework/src/Volo.Abp.BlazoriseUI/Components/UiMessageAlert.razor.cs @@ -0,0 +1,140 @@ +using System; +using System.Text; +using System.Threading.Tasks; +using Blazorise; +using Microsoft.AspNetCore.Components; +using Volo.Abp.AspNetCore.Components.WebAssembly; + +namespace Volo.Abp.BlazoriseUI.Components +{ + public partial class UiMessageAlert : ComponentBase, IDisposable + { + protected Modal ModalRef { get; set; } + + protected virtual bool IsConfirmation + => MessageType == UiMessageType.Confirmation; + + protected virtual bool CenterMessage + => Options?.CenterMessage ?? true; + + protected virtual bool ShowMessageIcon + => Options?.ShowMessageIcon ?? true; + + protected virtual object MessageIcon => Options?.MessageIcon ?? MessageType switch + { + UiMessageType.Info => IconName.Info, + UiMessageType.Success => IconName.Check, + UiMessageType.Warning => IconName.Exclamation, + UiMessageType.Error => IconName.Times, + UiMessageType.Confirmation => IconName.QuestionCircle, + _ => null, + }; + + protected virtual string MessageIconColor => MessageType switch + { + // gets the color in the order of importance: Blazorise > Bootstrap > fallback color + UiMessageType.Info => "var(--b-theme-info, var(--info, #17a2b8))", + UiMessageType.Success => "var(--b-theme-success, var(--success, #28a745))", + UiMessageType.Warning => "var(--b-theme-warning, var(--warning, #ffc107))", + UiMessageType.Error => "var(--b-theme-danger, var(--danger, #dc3545))", + UiMessageType.Confirmation => "var(--b-theme-secondary, var(--secondary, #6c757d))", + _ => null, + }; + + protected virtual string MessageIconStyle + { + get + { + var sb = new StringBuilder(); + + sb.Append($"color:{MessageIconColor}"); + + return sb.ToString(); + } + } + + protected virtual string OkButtonText + => Options?.OkButtonText ?? "OK"; + + protected virtual string ConfirmButtonText + => Options?.ConfirmButtonText ?? "Confirm"; + + protected virtual string CancelButtonText + => Options?.CancelButtonText ?? "Cancel"; + + [Parameter] public UiMessageType MessageType { get; set; } + + [Parameter] public string Title { get; set; } + + [Parameter] public string Message { get; set; } + + [Parameter] public TaskCompletionSource Callback { get; set; } + + [Parameter] public UiMessageOptions Options { get; set; } + + [Parameter] public EventCallback Okayed { get; set; } + + [Parameter] public EventCallback Confirmed { get; set; } + + [Parameter] public EventCallback Canceled { get; set; } + + [Inject] protected BlazoriseUiMessageService UiMessageService { get; set; } + + protected override void OnInitialized() + { + base.OnInitialized(); + + UiMessageService.MessageReceived += OnMessageReceived; + } + + private void OnMessageReceived(object sender, UiMessageEventArgs e) + { + MessageType = e.MessageType; + Message = e.Message; + Title = e.Title; + Options = e.Options; + Callback = e.Callback; + + ModalRef.Show(); + } + + public void Dispose() + { + if (UiMessageService != null) + { + UiMessageService.MessageReceived -= OnMessageReceived; + } + } + + protected Task OnOkClicked() + { + ModalRef.Hide(); + + return Okayed.InvokeAsync(null); + } + + protected Task OnConfirmClicked() + { + ModalRef.Hide(); + + if (IsConfirmation && Callback != null) + { + Callback.SetResult(true); + } + + return Confirmed.InvokeAsync(null); + } + + protected Task OnCancelClicked() + { + ModalRef.Hide(); + + if (IsConfirmation && Callback != null) + { + Callback.SetResult(false); + } + + return Canceled.InvokeAsync(null); + } + } +} diff --git a/framework/src/Volo.Abp.BlazoriseUI/Volo.Abp.BlazoriseUI.csproj b/framework/src/Volo.Abp.BlazoriseUI/Volo.Abp.BlazoriseUI.csproj index 12628b1440..091ee37717 100644 --- a/framework/src/Volo.Abp.BlazoriseUI/Volo.Abp.BlazoriseUI.csproj +++ b/framework/src/Volo.Abp.BlazoriseUI/Volo.Abp.BlazoriseUI.csproj @@ -1,4 +1,4 @@ - + diff --git a/framework/src/Volo.Abp.BlazoriseUI/_Imports.razor b/framework/src/Volo.Abp.BlazoriseUI/_Imports.razor new file mode 100644 index 0000000000..37be71828c --- /dev/null +++ b/framework/src/Volo.Abp.BlazoriseUI/_Imports.razor @@ -0,0 +1,2 @@ +@using Microsoft.AspNetCore.Components.Web +@using Blazorise \ No newline at end of file diff --git a/framework/src/Volo.Abp.Caching.StackExchangeRedis/Volo/Abp/Caching/StackExchangeRedis/AbpCachingStackExchangeRedisModule.cs b/framework/src/Volo.Abp.Caching.StackExchangeRedis/Volo/Abp/Caching/StackExchangeRedis/AbpCachingStackExchangeRedisModule.cs index b0f7d68ee4..0f71cbdd25 100644 --- a/framework/src/Volo.Abp.Caching.StackExchangeRedis/Volo/Abp/Caching/StackExchangeRedis/AbpCachingStackExchangeRedisModule.cs +++ b/framework/src/Volo.Abp.Caching.StackExchangeRedis/Volo/Abp/Caching/StackExchangeRedis/AbpCachingStackExchangeRedisModule.cs @@ -14,17 +14,21 @@ namespace Volo.Abp.Caching.StackExchangeRedis public override void ConfigureServices(ServiceConfigurationContext context) { var configuration = context.Services.GetConfiguration(); - - context.Services.AddStackExchangeRedisCache(options => + + var redisEnabled = configuration["Redis:IsEnabled"]; + if (redisEnabled.IsNullOrEmpty() || bool.Parse(redisEnabled)) { - var redisConfiguration = configuration["Redis:Configuration"]; - if (!redisConfiguration.IsNullOrEmpty()) + context.Services.AddStackExchangeRedisCache(options => { - options.Configuration = configuration["Redis:Configuration"]; - } - }); + var redisConfiguration = configuration["Redis:Configuration"]; + if (!redisConfiguration.IsNullOrEmpty()) + { + options.Configuration = redisConfiguration; + } + }); - context.Services.Replace(ServiceDescriptor.Singleton()); + context.Services.Replace(ServiceDescriptor.Singleton()); + } } } } \ No newline at end of file diff --git a/framework/src/Volo.Abp.Core/System/AbpTypeExtensions.cs b/framework/src/Volo.Abp.Core/System/AbpTypeExtensions.cs index e7c600eff6..1cf60a2906 100644 --- a/framework/src/Volo.Abp.Core/System/AbpTypeExtensions.cs +++ b/framework/src/Volo.Abp.Core/System/AbpTypeExtensions.cs @@ -55,14 +55,28 @@ namespace System return types.ToArray(); } + /// + /// Gets all base classes of this type. + /// + /// The type to get its base classes. + /// A type to stop going to the deeper base classes. This type will be be included in the returned array + /// True, to include the standard type in the returned array. + public static Type[] GetBaseClasses([NotNull] this Type type, Type stoppingType, bool includeObject = true) + { + Check.NotNull(type, nameof(type)); + + var types = new List(); + AddTypeAndBaseTypesRecursively(types, type.BaseType, includeObject, stoppingType); + return types.ToArray(); + } + private static void AddTypeAndBaseTypesRecursively( [NotNull] List types, - [CanBeNull] Type type, - bool includeObject) + [CanBeNull] Type type, + bool includeObject, + [CanBeNull] Type stoppingType = null) { - Check.NotNull(types, nameof(types)); - - if (type == null) + if (type == null || type == stoppingType) { return; } @@ -72,7 +86,7 @@ namespace System return; } - AddTypeAndBaseTypesRecursively(types, type.BaseType, includeObject); + AddTypeAndBaseTypesRecursively(types, type.BaseType, includeObject, stoppingType); types.Add(type); } } diff --git a/framework/src/Volo.Abp.Core/System/Collections/Generic/AbpCollectionExtensions.cs b/framework/src/Volo.Abp.Core/System/Collections/Generic/AbpCollectionExtensions.cs index 2a858f7626..e014ee9e21 100644 --- a/framework/src/Volo.Abp.Core/System/Collections/Generic/AbpCollectionExtensions.cs +++ b/framework/src/Volo.Abp.Core/System/Collections/Generic/AbpCollectionExtensions.cs @@ -105,5 +105,19 @@ namespace System.Collections.Generic return items; } + + /// + /// Removes all items from the collection those satisfy the given . + /// + /// Type of the items in the collection + /// The collection + /// Items to be removed from the list + public static void RemoveAll([NotNull] this ICollection source, IEnumerable items) + { + foreach (var item in items) + { + source.Remove(item); + } + } } -} \ No newline at end of file +} diff --git a/framework/src/Volo.Abp.Ddd.Application.Contracts/Volo/Abp/Application/Localization/Resources/AbpDdd/es.json b/framework/src/Volo.Abp.Ddd.Application.Contracts/Volo/Abp/Application/Localization/Resources/AbpDdd/es.json new file mode 100644 index 0000000000..4563876228 --- /dev/null +++ b/framework/src/Volo.Abp.Ddd.Application.Contracts/Volo/Abp/Application/Localization/Resources/AbpDdd/es.json @@ -0,0 +1,6 @@ +{ + "culture": "es", + "texts": { + "MaxResultCountExceededExceptionMessage": "{0} no puede tener más de {1}! Incremente {2}.{3} en el lado del servidor para obtener más resultados." + } +} \ No newline at end of file diff --git a/framework/src/Volo.Abp.Emailing/Volo/Abp/Emailing/Localization/es.json b/framework/src/Volo.Abp.Emailing/Volo/Abp/Emailing/Localization/es.json index 33c59be8b5..da1d7fde95 100644 --- a/framework/src/Volo.Abp.Emailing/Volo/Abp/Emailing/Localization/es.json +++ b/framework/src/Volo.Abp.Emailing/Volo/Abp/Emailing/Localization/es.json @@ -18,6 +18,8 @@ "Description:Abp.Mailing.Smtp.Password": "La contraseña del ususario asociado a las credenciales.", "Description:Abp.Mailing.Smtp.Domain": "El dominio o equipo que valida las credenciales.", "Description:Abp.Mailing.Smtp.EnableSsl": "Si SmtpClient usa Secure Sockets Layer (SSL) para encriptar la conección.", - "Description:Abp.Mailing.Smtp.UseDefaultCredentials": "Si las credenciales por defecto se envían con los request." + "Description:Abp.Mailing.Smtp.UseDefaultCredentials": "Si las credenciales por defecto se envían con los request.", + "TextTemplate:StandardEmailTemplates.Layout": "Plantilla de email por defecto", + "TextTemplate:StandardEmailTemplates.Message": "Plantilla de mensaje simple para emails" } } \ No newline at end of file diff --git a/framework/src/Volo.Abp.Ldap/Volo/Abp/Ldap/Localization/es.json b/framework/src/Volo.Abp.Ldap/Volo/Abp/Ldap/Localization/es.json new file mode 100644 index 0000000000..365856425e --- /dev/null +++ b/framework/src/Volo.Abp.Ldap/Volo/Abp/Ldap/Localization/es.json @@ -0,0 +1,19 @@ +{ + "culture": "es", + "texts": { + "DisplayName:Abp.Ldap.ServerHost": "Server host", + "Description:Abp.Ldap.ServerHost": "Servidor host", + + "DisplayName:Abp.Ldap.ServerPort": "Server port", + "Description:Abp.Ldap.ServerPort": "Puerto del servidor host", + + "DisplayName:Abp.Ldap.BaseDc": "Base domain component", + "Description:Abp.Ldap.BaseDc": "Dominio base", + + "DisplayName:Abp.Ldap.UserName": "Username", + "Description:Abp.Ldap.UserName": "Nombre de usuario", + + "DisplayName:Abp.Ldap.Password": "Password", + "Description:Abp.Ldap.Password": "Contraseña" + } +} \ No newline at end of file diff --git a/framework/src/Volo.Abp.Timing/Volo/Abp/Timing/Localization/es.json b/framework/src/Volo.Abp.Timing/Volo/Abp/Timing/Localization/es.json new file mode 100644 index 0000000000..a23fccc1c4 --- /dev/null +++ b/framework/src/Volo.Abp.Timing/Volo/Abp/Timing/Localization/es.json @@ -0,0 +1,7 @@ +{ + "culture": "es", + "texts": { + "DisplayName:Abp.Timing.Timezone": "Zona horaria", + "Description:Abp.Timing.Timezone": "Zona horaria de la Aplicacion" + } +} \ No newline at end of file diff --git a/framework/src/Volo.Abp.UI/Localization/Resources/AbpUi/es.json b/framework/src/Volo.Abp.UI/Localization/Resources/AbpUi/es.json index fb0bc45903..56d6b117cf 100644 --- a/framework/src/Volo.Abp.UI/Localization/Resources/AbpUi/es.json +++ b/framework/src/Volo.Abp.UI/Localization/Resources/AbpUi/es.json @@ -4,6 +4,7 @@ "Languages": "Lenguajes", "AreYouSure": "¿Está seguro?", "Cancel": "Cancelar", + "Clear": "Limpiar", "Yes": "Si", "No": "No", "Ok": "Aceptar", @@ -34,6 +35,8 @@ "PagerInfoEmpty": "Mostrando desde 0 hasta 0 de 0 registros", "PagerInfoFiltered": "(filtrado de un total de _MAX_ registros)", "NoDataAvailableInDatatable": "No hay datos", + "Total": "total", + "Selected": "seleccionado", "PagerShowMenuEntries": "Mostrar _MENU_ registros", "DatatableActionDropdownDefaultText": "Acciones", "ChangePassword": "Cambiar contraseña", @@ -41,6 +44,9 @@ "AreYouSureYouWantToCancelEditingWarningMessage": "Tiene cambios sin guardar.", "GoHomePage": "Ir a la página principal", "GoBack": "Atras", - "Search": "Buscar" + "Search": "Buscar", + "ItemWillBeDeletedMessageWithFormat": "Se eliminarán {0}!", + "ItemWillBeDeletedMessage": "Este itém será eliminado!", + "ManageYourAccount": "Administre su cuenta" } -} +} \ No newline at end of file diff --git a/framework/test/Volo.Abp.AspNetCore.Mvc.Tests/Volo/Abp/AspNetCore/Mvc/Localization/Resource/es.json b/framework/test/Volo.Abp.AspNetCore.Mvc.Tests/Volo/Abp/AspNetCore/Mvc/Localization/Resource/es.json new file mode 100644 index 0000000000..baf2d0c45b --- /dev/null +++ b/framework/test/Volo.Abp.AspNetCore.Mvc.Tests/Volo/Abp/AspNetCore/Mvc/Localization/Resource/es.json @@ -0,0 +1,7 @@ +{ + "culture": "es", + "texts": { + "BirthDate": "Fecha de nacimiento", + "Value1": "Valor uno" + } +} \ No newline at end of file diff --git a/framework/test/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.Demo/package.json b/framework/test/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.Demo/package.json index fc327ad536..539ede118e 100644 --- a/framework/test/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.Demo/package.json +++ b/framework/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": "^3.2.0", + "@abp/aspnetcore.mvc.ui.theme.shared": "^3.2.1", "highlight.js": "^9.13.1" }, "devDependencies": {} diff --git a/framework/test/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.Demo/yarn.lock b/framework/test/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.Demo/yarn.lock index 8252be1892..c4ed1c0ce8 100644 --- a/framework/test/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.Demo/yarn.lock +++ b/framework/test/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.Demo/yarn.lock @@ -2,30 +2,30 @@ # yarn lockfile v1 -"@abp/aspnetcore.mvc.ui.theme.shared@^3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-3.2.0.tgz#bed24c1d28f6e85d58fa963911a09e8b2998c1b6" - integrity sha512-Ap1dPCvL7r31oFyi+3YPviFkDly5FZfWbHq2bURsEbscembpc6DOSfXehvuZ2BjqsZF3n/HX0Y1lX4irUqKqjg== - dependencies: - "@abp/aspnetcore.mvc.ui" "~3.2.0" - "@abp/bootstrap" "~3.2.0" - "@abp/bootstrap-datepicker" "~3.2.0" - "@abp/datatables.net-bs4" "~3.2.0" - "@abp/font-awesome" "~3.2.0" - "@abp/jquery-form" "~3.2.0" - "@abp/jquery-validation-unobtrusive" "~3.2.0" - "@abp/lodash" "~3.2.0" - "@abp/luxon" "~3.2.0" - "@abp/malihu-custom-scrollbar-plugin" "~3.2.0" - "@abp/select2" "~3.2.0" - "@abp/sweetalert" "~3.2.0" - "@abp/timeago" "~3.2.0" - "@abp/toastr" "~3.2.0" - -"@abp/aspnetcore.mvc.ui@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-3.2.0.tgz#01f80b9f663f4d95ceac733761833cf4648e92b5" - integrity sha512-NzH1UxEoE/FVT0LLjMNq5eSsiORLe5dE+aKr7jjbaxcuVr7QI7KI9ry6xWAZk+0cbGvsUAY0xqrMxxqiLpskxQ== +"@abp/aspnetcore.mvc.ui.theme.shared@^3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-3.2.1.tgz#b628602dca8d1809e32f423962cff56379a790b0" + integrity sha512-aWZAaFnN9Ncyzy84wPTfUVtcyh98Sxu4m+fsGY5XtwA/nwDTDVtLMq81ueJWyFgN9GNk8+lT6VXfPDpA/MJo/A== + dependencies: + "@abp/aspnetcore.mvc.ui" "~3.2.1" + "@abp/bootstrap" "~3.2.1" + "@abp/bootstrap-datepicker" "~3.2.1" + "@abp/datatables.net-bs4" "~3.2.1" + "@abp/font-awesome" "~3.2.1" + "@abp/jquery-form" "~3.2.1" + "@abp/jquery-validation-unobtrusive" "~3.2.1" + "@abp/lodash" "~3.2.1" + "@abp/luxon" "~3.2.1" + "@abp/malihu-custom-scrollbar-plugin" "~3.2.1" + "@abp/select2" "~3.2.1" + "@abp/sweetalert" "~3.2.1" + "@abp/timeago" "~3.2.1" + "@abp/toastr" "~3.2.1" + +"@abp/aspnetcore.mvc.ui@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-3.2.1.tgz#dc0d2c331bf09ef0f79cec739e0f64edb1105084" + integrity sha512-Fpn16MeK71Uhw6636nlXCQaSwN9lN6QFUIGIICcWU+2eMA8fK4ZtavaYGG4mWqjkd4wzUHCz2AZbmbxK7bVnng== dependencies: ansi-colors "^4.1.1" extend-object "^1.0.0" @@ -34,145 +34,145 @@ path "^0.12.7" rimraf "^3.0.2" -"@abp/bootstrap-datepicker@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-3.2.0.tgz#0a1813d8a84dd6eb6cf647244a4a91900364deb1" - integrity sha512-w7YyA5TRZqGL3qYyArwfrRc4/qWQMT0BPYDOsGMrtPJZDWeZL7WPezuiIvKNdI71BfUq6XiA1+wwMfqjcClZ2g== +"@abp/bootstrap-datepicker@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-3.2.1.tgz#5cb75bc53fab86f7b28bfc5fbfcbf233432d75ca" + integrity sha512-KzTDZTMd/TBaTDNuPF4+T+0zsmEimD2Uq8TlNw7knEEyo7a/lsfBNkBF9Xc8bjZcbC76BqajytsTzI1yftM4Uw== dependencies: bootstrap-datepicker "^1.9.0" -"@abp/bootstrap@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-3.2.0.tgz#d249338b0151734f99b8e366aea6fc17d5ef9b37" - integrity sha512-hx9r7EGb1vJrHAdw3D8Cpudv++hrM4dKoKtOKnQbxGG+Q9vwVS6SKquVxJum+bEZWa1CgXvT6co0IDOlW3pDhg== +"@abp/bootstrap@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-3.2.1.tgz#9574414f1e170240dacdf78408af34830264db97" + integrity sha512-gLIr4d5xfw5TSpSHIKr7oKznkdIbGhS+gtBitP1BFVLOU2h7/d6uTZoopC+JQU16DGvn8njo8W4DL7Amh9FOqQ== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" bootstrap "^4.5.0" bootstrap-v4-rtl "4.4.1-2" -"@abp/core@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-3.2.0.tgz#e9f07bde581b07e1b904bec3b12e0ccfc2a50125" - integrity sha512-X3iWv8QxAbqKJMoTb3vfvwGYmD9uZ+p+zn5q5Hoybyq9fjEcevpkdX7OiLvO8M+NEwCKa81wtkvvM2BnEV6Igg== +"@abp/core@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-3.2.1.tgz#3c133f67394d716df3e49f1eeb934c586df755e5" + integrity sha512-GbjrFO+oKl4JuZkYdeWtE+N837XRQr0hoX8O3pI1eAnuMku48QhGec2ZpSJuqG+c3wX6PHTZPIyHse4X+y6QgA== dependencies: - "@abp/utils" "^3.2.0" + "@abp/utils" "^3.2.1" -"@abp/datatables.net-bs4@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs4/-/datatables.net-bs4-3.2.0.tgz#8551c0ac5e29b037a86b141f41052e7a3038be89" - integrity sha512-i2LVTKAllgzhc21rb0GQ0YHtmOMyCT+6P3ZelqkoLdp56D63rVhdAOHrqjebrEHMehsuCUV2XH908kakXWIPXA== +"@abp/datatables.net-bs4@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs4/-/datatables.net-bs4-3.2.1.tgz#b008b2964472fd8c8286a7c4b1e903d93a52e760" + integrity sha512-C/MmA6URugDD1tdUS6zS413ycHCjefeIG7nnJrtJmCZix7mfbdrp/Km/vKbE1KMSEYWis0w/SxIEy0kbkIW4OQ== dependencies: - "@abp/datatables.net" "~3.2.0" + "@abp/datatables.net" "~3.2.1" datatables.net-bs4 "^1.10.21" -"@abp/datatables.net@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-3.2.0.tgz#effd0ec603b15c0de2d1db993d1416b46f4e3146" - integrity sha512-6UX/WqdlRfb3BQ2cw7LbUlMimDXtx7rHanTTWq44g+Wc8fn4fVcYyo9RWCYYOd2MWm9pElEvuzG1AzaOamjW9Q== +"@abp/datatables.net@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-3.2.1.tgz#ba7d4c875ad2bc126687bc5d8e627f3c4d7fb2f4" + integrity sha512-o8/K6RGnPkQUe5ClAxyHNBOevVBnb8qSM4NXRXR2AUtEvjal+4UL9QOf1LZ0zPv4OAjaaAiOAp9Pmbv4FWuZ8Q== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" datatables.net "^1.10.21" -"@abp/font-awesome@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-3.2.0.tgz#ad75daf1c084c2c6a0aeccc092057627ce898652" - integrity sha512-FAWBYWwg2ZtKO+0/lS/bc4YFnR7IehQ2Y+y1srIypgSY/739X4aUWb0YDW1tE0QrrFfQ//f16AyIKPynGl0T5Q== +"@abp/font-awesome@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-3.2.1.tgz#d54a6d9627fdfeb6c615550f09241d0c805e3d39" + integrity sha512-5BlAuIX4qFdf/mvycUAREmVQ8jg0tRtDnVXt0E8kUtzghhEGG91NfcZIaB4zaWAwuJSyqqjS/VJ/URy1g50NZQ== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" "@fortawesome/fontawesome-free" "^5.13.0" -"@abp/jquery-form@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-3.2.0.tgz#b1b408c0f380c8dfd99c063251f2f1fd86dff14c" - integrity sha512-ZC38zLqlMm67nONg+7ZSC7ExzLZApZ2nZ3/yM6J5LNa7IOgzDGPZgbDRBiwFdC3vIB04LhnNr83YrEvIaUnIzQ== +"@abp/jquery-form@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-3.2.1.tgz#9280b28e2103fc80b9124e3a53f2f0e03ac4bb46" + integrity sha512-Dy0wTCcmWgygrru59VPnlVw7qLu8aLTZOTpMPbSva502O19O+H7FljF9r0J7eYgoO6pcTO4R1tE/Yib3DwIBFg== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-3.2.0.tgz#91b996c743e5b1423a4d01d8808788a4bf4adb32" - integrity sha512-FSkGWvIkZTd2LITbTCdyno0ml30PZZmGYCazowHprh1iuhx0C+yCd9U/kfZ3rLoZAFtWjz0ZUq1Z7G5xXHB97A== +"@abp/jquery-validation-unobtrusive@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-3.2.1.tgz#8f0b54f0d39b00ab93638fe1537ae7bd77e3e78e" + integrity sha512-mr/jZVm8QuYO1vWcNo3ytuQEeMBvjnMiTrvoUzY1OXX+HUFR6oi8FohXgxFUypElAqQ8jelV9K0qonX1zTQhcg== dependencies: - "@abp/jquery-validation" "~3.2.0" + "@abp/jquery-validation" "~3.2.1" jquery-validation-unobtrusive "^3.2.11" -"@abp/jquery-validation@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-3.2.0.tgz#1de41e9167b41a956ce2f6e3d6f16d023fccd078" - integrity sha512-FlP7btUvAJfGoi0g8Hm474jlhtweyd/P6dRu2spApUOpKjMyUNFpp/nphmr0iQvx7JGeeaAaUhQJ2v5UKy/Z8w== +"@abp/jquery-validation@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-3.2.1.tgz#b5330eb404f357936d16f3dd81752076bfee963d" + integrity sha512-nmubyFyA8TbLdsJt8MAspSRN4St8Xn8ICB8ancdiyxbS/6u9oeKlvP4++ZZ881NlFkPsyo7GkHjfl29pNzzzJA== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" jquery-validation "^1.19.2" -"@abp/jquery@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-3.2.0.tgz#eabc0bafef3cf2b64f672c562bda1f1002b07b7c" - integrity sha512-tlvQ79cqyJ+tXEf17Vdwi6O8yo0+7bmicyy5A/iYyWWJUjXGkiouQHjHkoZ2jeyxwvqn85tBbfjeRumcZdYRMA== +"@abp/jquery@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-3.2.1.tgz#c7ee0bbff0b480b8ed01f46d1ce07ebc8c35e4a2" + integrity sha512-AvfQ9rnnb+pQUDuGnuhpCB+FzWz3EqDptoeiCDQjPXxGql3Wk5GWw6QzvuREOXcU4CoUyzigyDgnO5WaSlx8kQ== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" jquery "~3.5.1" -"@abp/lodash@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-3.2.0.tgz#63e8c51fe9e760d7debca9129bfbf01be8c12d18" - integrity sha512-/rGkJMCgbA0JLkjMXenxz6q0BXRDwvYSLUu7XotNj/cbiHpT5yHHTnWQgwxVUKEVA9xtmYUH1h20J25n/VD/tg== +"@abp/lodash@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-3.2.1.tgz#7abfe7d572eaa628c033a6d50520b8510ecce79a" + integrity sha512-ZDte0vUfM1fBrs/mRq7yCuugtYZKoP/6pOEebDOMdM1GztAEKicq8s7EXxwbqE4+kjxqeHzReh7ZwCtFAf/Zew== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" lodash "^4.17.15" -"@abp/luxon@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-3.2.0.tgz#f94b595d15d78868a4acf73803a9da8609096d39" - integrity sha512-3FF9/W+Smp4FqRJ6F5vNxydXYraVgEUsrOBkaBexVkzT/l3zBkCmrJ8i+Eib8xBXpS6Ku4nmpqbqm1VYhlxKTQ== +"@abp/luxon@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-3.2.1.tgz#ad3473f24dbacd4d1bc15a07ee75cc1db7f1df6c" + integrity sha512-WZgAMHNx1beQSA48ZJ2x2g408iBXBUvKwBwAFJqbhNhEsO95tutO80j1LNHYvXCbrAatoz6K6IDRXDXV1U3zyg== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" luxon "^1.24.1" -"@abp/malihu-custom-scrollbar-plugin@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-3.2.0.tgz#bd11a36a37ec23d38cba116934398696379158b1" - integrity sha512-BYGICB55RsYHmaICnyWdCewo0uEbopmuuUuCJlE+2IY1I4JchSWG2mV//F+jOZQmlOsjYufK70BrQQEIr+ewXw== +"@abp/malihu-custom-scrollbar-plugin@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-3.2.1.tgz#f4a19c6de14c7193eaf6c55c429580dcbcfe3965" + integrity sha512-pu8Tuh67ruG1fLEud1eves/eiBCiuowL+LVLyW+iX1bByfVlOB40nMQ7UCMQ6Jvv31pTEK2dfQ/n8K3W/pFiWQ== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/select2@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-3.2.0.tgz#729f82695bbfd7ab3d7a90059a198f338037c867" - integrity sha512-83V8jIR8RGFJ3II5G7/bitlv44OHOEENKDrT639OYIxHfgWEWm4CBhcyCnlZJqv6xB2AVDfFPgCPlDGl3x3tmw== +"@abp/select2@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-3.2.1.tgz#8a04a6f5f10cc4a48a3da37bbc38ff655e626ddf" + integrity sha512-i/euJ+kTHakwCI3Hf9+NhiQG+MYlU0iwp6GRmS2uHqgkMd2gVjnBq+elA2jsi50PXpxowv4vdBCNHcicI58W2w== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" select2 "^4.0.13" -"@abp/sweetalert@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/sweetalert/-/sweetalert-3.2.0.tgz#05040b7276ca2ce62ffc20865d64fb6e0fdb62cb" - integrity sha512-BEgbWwWX2uOsVS/zV6OzlxRBCtSlqeAYdSkmDjQ7pzCthwZXPPFr1o8UXyp9W7GKwDg3lfWTQPkkm+2y587xEw== +"@abp/sweetalert@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/sweetalert/-/sweetalert-3.2.1.tgz#be99820491499fea06259fbc584e799a51cbabf3" + integrity sha512-If5UJQVJ05aEbxPHrwRpuEzCT5ygOHmPzpBblpzSo5XxNNDGGlumnwYmtbXBSXutXrIR0b5//Bo1EgBVtmJHOg== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" sweetalert "^2.1.2" -"@abp/timeago@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-3.2.0.tgz#e4a207566c00ccb3161ee91c6f6ce26419e4bbaf" - integrity sha512-VUk8c3hITZfu5aA21XB2Qaw5fwoeAl36Piy0Cb3aUOCFjyGWg19htXxDoT7rzqZ5UJFN0VRYg9MzciXZrFN5/w== +"@abp/timeago@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-3.2.1.tgz#4e5e6c76d5440de65646a076ce1a9d7225882243" + integrity sha512-4WLWoCYiSg5zYPcogV47TXA+YomDHHY0YfHHWmr6TP2bHd5ghsnMqnnkt58nUN9Psd77teo+Mo9jgR0h2IxRwQ== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" timeago "^1.6.7" -"@abp/toastr@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-3.2.0.tgz#059e1e1e998207a6f75db2bfe717bec2a0b6d955" - integrity sha512-EKikZVQDaX/uQfc0rWsW2x+UDsO4r80KC3pLvRaLXW5IEwEhTpYwZDUGReOEQ8YEk7UKOXrVJA07mxkbdOzyAw== +"@abp/toastr@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-3.2.1.tgz#d35b44234ca6cbd5da6cc5f65d15e827bd7970dc" + integrity sha512-nBmWGL49psSF2tcNnR6PGBcfFAxo2u5HHNRzv2c2z46ZEGFa5DjuY46KZC24jMWY+yprINQewhKTmQUqJvaHqA== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" toastr "^2.1.4" -"@abp/utils@^3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-3.2.0.tgz#084918379f2c5e43c1e52291ba6667f3ea3c1f33" - integrity sha512-DZsvF/I5o3r0D1+2B61KvJX78/tJ5uj9MaPq00Z/sxXdqsP2SQQmjhMm+Lb0FgGMK06XIoF9eDgM3Hu0y0H3cQ== +"@abp/utils@^3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-3.2.1.tgz#960a0bbdfb781bbd6fb05e80bba2b9d95f2ae44c" + integrity sha512-bqYa1VIi1tZXCUbP2Z1WlcgPD4/wjhDVM1jiAN9UzDls1K3u+e2LyR4gLoN39WW1ULjCIhyzEAw/JgTcMmpUBw== dependencies: just-compare "^1.3.0" diff --git a/framework/test/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic.Demo/package.json b/framework/test/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic.Demo/package.json index 7d6c2e8636..7cb63c1ea1 100644 --- a/framework/test/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic.Demo/package.json +++ b/framework/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": "^3.2.0", - "@abp/prismjs": "^3.2.0" + "@abp/aspnetcore.mvc.ui.theme.basic": "^3.2.1", + "@abp/prismjs": "^3.2.1" }, "devDependencies": {} } \ No newline at end of file diff --git a/framework/test/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic.Demo/yarn.lock b/framework/test/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic.Demo/yarn.lock index 7b0d3f4b79..1dd15e460d 100644 --- a/framework/test/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic.Demo/yarn.lock +++ b/framework/test/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic.Demo/yarn.lock @@ -2,37 +2,37 @@ # yarn lockfile v1 -"@abp/aspnetcore.mvc.ui.theme.basic@^3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-3.2.0.tgz#207277419356a14f686421de0ee320fad0d6857f" - integrity sha512-4xn4BPQu9QL3sM47QtPNwOei9/fnRw3dXCL7vlJBCU70jL8911C6D/Pj/CBqCEMMVPI6M4GE7Ls4AwKTvgFeTw== +"@abp/aspnetcore.mvc.ui.theme.basic@^3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-3.2.1.tgz#d8f9af85b6114d35bba5942e303b3a4b89c8cd75" + integrity sha512-utHlyw/xbtDqqA0ETrYTxZ8ZO49tI6FP3BAvRdevbhozdG8/el6BWpifZysKJv2VIm6d5P7DXD3uymCd5iX6EA== dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~3.2.0" + "@abp/aspnetcore.mvc.ui.theme.shared" "~3.2.1" -"@abp/aspnetcore.mvc.ui.theme.shared@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-3.2.0.tgz#bed24c1d28f6e85d58fa963911a09e8b2998c1b6" - integrity sha512-Ap1dPCvL7r31oFyi+3YPviFkDly5FZfWbHq2bURsEbscembpc6DOSfXehvuZ2BjqsZF3n/HX0Y1lX4irUqKqjg== - dependencies: - "@abp/aspnetcore.mvc.ui" "~3.2.0" - "@abp/bootstrap" "~3.2.0" - "@abp/bootstrap-datepicker" "~3.2.0" - "@abp/datatables.net-bs4" "~3.2.0" - "@abp/font-awesome" "~3.2.0" - "@abp/jquery-form" "~3.2.0" - "@abp/jquery-validation-unobtrusive" "~3.2.0" - "@abp/lodash" "~3.2.0" - "@abp/luxon" "~3.2.0" - "@abp/malihu-custom-scrollbar-plugin" "~3.2.0" - "@abp/select2" "~3.2.0" - "@abp/sweetalert" "~3.2.0" - "@abp/timeago" "~3.2.0" - "@abp/toastr" "~3.2.0" - -"@abp/aspnetcore.mvc.ui@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-3.2.0.tgz#01f80b9f663f4d95ceac733761833cf4648e92b5" - integrity sha512-NzH1UxEoE/FVT0LLjMNq5eSsiORLe5dE+aKr7jjbaxcuVr7QI7KI9ry6xWAZk+0cbGvsUAY0xqrMxxqiLpskxQ== +"@abp/aspnetcore.mvc.ui.theme.shared@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-3.2.1.tgz#b628602dca8d1809e32f423962cff56379a790b0" + integrity sha512-aWZAaFnN9Ncyzy84wPTfUVtcyh98Sxu4m+fsGY5XtwA/nwDTDVtLMq81ueJWyFgN9GNk8+lT6VXfPDpA/MJo/A== + dependencies: + "@abp/aspnetcore.mvc.ui" "~3.2.1" + "@abp/bootstrap" "~3.2.1" + "@abp/bootstrap-datepicker" "~3.2.1" + "@abp/datatables.net-bs4" "~3.2.1" + "@abp/font-awesome" "~3.2.1" + "@abp/jquery-form" "~3.2.1" + "@abp/jquery-validation-unobtrusive" "~3.2.1" + "@abp/lodash" "~3.2.1" + "@abp/luxon" "~3.2.1" + "@abp/malihu-custom-scrollbar-plugin" "~3.2.1" + "@abp/select2" "~3.2.1" + "@abp/sweetalert" "~3.2.1" + "@abp/timeago" "~3.2.1" + "@abp/toastr" "~3.2.1" + +"@abp/aspnetcore.mvc.ui@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-3.2.1.tgz#dc0d2c331bf09ef0f79cec739e0f64edb1105084" + integrity sha512-Fpn16MeK71Uhw6636nlXCQaSwN9lN6QFUIGIICcWU+2eMA8fK4ZtavaYGG4mWqjkd4wzUHCz2AZbmbxK7bVnng== dependencies: ansi-colors "^4.1.1" extend-object "^1.0.0" @@ -41,162 +41,162 @@ path "^0.12.7" rimraf "^3.0.2" -"@abp/bootstrap-datepicker@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-3.2.0.tgz#0a1813d8a84dd6eb6cf647244a4a91900364deb1" - integrity sha512-w7YyA5TRZqGL3qYyArwfrRc4/qWQMT0BPYDOsGMrtPJZDWeZL7WPezuiIvKNdI71BfUq6XiA1+wwMfqjcClZ2g== +"@abp/bootstrap-datepicker@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-3.2.1.tgz#5cb75bc53fab86f7b28bfc5fbfcbf233432d75ca" + integrity sha512-KzTDZTMd/TBaTDNuPF4+T+0zsmEimD2Uq8TlNw7knEEyo7a/lsfBNkBF9Xc8bjZcbC76BqajytsTzI1yftM4Uw== dependencies: bootstrap-datepicker "^1.9.0" -"@abp/bootstrap@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-3.2.0.tgz#d249338b0151734f99b8e366aea6fc17d5ef9b37" - integrity sha512-hx9r7EGb1vJrHAdw3D8Cpudv++hrM4dKoKtOKnQbxGG+Q9vwVS6SKquVxJum+bEZWa1CgXvT6co0IDOlW3pDhg== +"@abp/bootstrap@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-3.2.1.tgz#9574414f1e170240dacdf78408af34830264db97" + integrity sha512-gLIr4d5xfw5TSpSHIKr7oKznkdIbGhS+gtBitP1BFVLOU2h7/d6uTZoopC+JQU16DGvn8njo8W4DL7Amh9FOqQ== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" bootstrap "^4.5.0" bootstrap-v4-rtl "4.4.1-2" -"@abp/clipboard@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-3.2.0.tgz#9c9f95c40639cabe89e6bc86ee0f33c853321225" - integrity sha512-WGonC5Hp4FCUBxevIt180QWIqOri0eO//mlRLBqj7gvo7H6zt5f4t90XKF24ZYWXjx7bCbIQQFt5t5ByeqdcJg== +"@abp/clipboard@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-3.2.1.tgz#ffb57db0e73ae7c96df78dc7b739e436c9654ae0" + integrity sha512-iLCMV8JVkvdDzWf83UlkSIuU4Tiz+/wdGjiCt7lQp538fCYO7EAqurfWwMbb1Kaz0CRFzt/+AbDrXw004AND2Q== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" clipboard "^2.0.6" -"@abp/core@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-3.2.0.tgz#e9f07bde581b07e1b904bec3b12e0ccfc2a50125" - integrity sha512-X3iWv8QxAbqKJMoTb3vfvwGYmD9uZ+p+zn5q5Hoybyq9fjEcevpkdX7OiLvO8M+NEwCKa81wtkvvM2BnEV6Igg== +"@abp/core@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-3.2.1.tgz#3c133f67394d716df3e49f1eeb934c586df755e5" + integrity sha512-GbjrFO+oKl4JuZkYdeWtE+N837XRQr0hoX8O3pI1eAnuMku48QhGec2ZpSJuqG+c3wX6PHTZPIyHse4X+y6QgA== dependencies: - "@abp/utils" "^3.2.0" + "@abp/utils" "^3.2.1" -"@abp/datatables.net-bs4@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs4/-/datatables.net-bs4-3.2.0.tgz#8551c0ac5e29b037a86b141f41052e7a3038be89" - integrity sha512-i2LVTKAllgzhc21rb0GQ0YHtmOMyCT+6P3ZelqkoLdp56D63rVhdAOHrqjebrEHMehsuCUV2XH908kakXWIPXA== +"@abp/datatables.net-bs4@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs4/-/datatables.net-bs4-3.2.1.tgz#b008b2964472fd8c8286a7c4b1e903d93a52e760" + integrity sha512-C/MmA6URugDD1tdUS6zS413ycHCjefeIG7nnJrtJmCZix7mfbdrp/Km/vKbE1KMSEYWis0w/SxIEy0kbkIW4OQ== dependencies: - "@abp/datatables.net" "~3.2.0" + "@abp/datatables.net" "~3.2.1" datatables.net-bs4 "^1.10.21" -"@abp/datatables.net@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-3.2.0.tgz#effd0ec603b15c0de2d1db993d1416b46f4e3146" - integrity sha512-6UX/WqdlRfb3BQ2cw7LbUlMimDXtx7rHanTTWq44g+Wc8fn4fVcYyo9RWCYYOd2MWm9pElEvuzG1AzaOamjW9Q== +"@abp/datatables.net@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-3.2.1.tgz#ba7d4c875ad2bc126687bc5d8e627f3c4d7fb2f4" + integrity sha512-o8/K6RGnPkQUe5ClAxyHNBOevVBnb8qSM4NXRXR2AUtEvjal+4UL9QOf1LZ0zPv4OAjaaAiOAp9Pmbv4FWuZ8Q== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" datatables.net "^1.10.21" -"@abp/font-awesome@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-3.2.0.tgz#ad75daf1c084c2c6a0aeccc092057627ce898652" - integrity sha512-FAWBYWwg2ZtKO+0/lS/bc4YFnR7IehQ2Y+y1srIypgSY/739X4aUWb0YDW1tE0QrrFfQ//f16AyIKPynGl0T5Q== +"@abp/font-awesome@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-3.2.1.tgz#d54a6d9627fdfeb6c615550f09241d0c805e3d39" + integrity sha512-5BlAuIX4qFdf/mvycUAREmVQ8jg0tRtDnVXt0E8kUtzghhEGG91NfcZIaB4zaWAwuJSyqqjS/VJ/URy1g50NZQ== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" "@fortawesome/fontawesome-free" "^5.13.0" -"@abp/jquery-form@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-3.2.0.tgz#b1b408c0f380c8dfd99c063251f2f1fd86dff14c" - integrity sha512-ZC38zLqlMm67nONg+7ZSC7ExzLZApZ2nZ3/yM6J5LNa7IOgzDGPZgbDRBiwFdC3vIB04LhnNr83YrEvIaUnIzQ== +"@abp/jquery-form@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-3.2.1.tgz#9280b28e2103fc80b9124e3a53f2f0e03ac4bb46" + integrity sha512-Dy0wTCcmWgygrru59VPnlVw7qLu8aLTZOTpMPbSva502O19O+H7FljF9r0J7eYgoO6pcTO4R1tE/Yib3DwIBFg== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-3.2.0.tgz#91b996c743e5b1423a4d01d8808788a4bf4adb32" - integrity sha512-FSkGWvIkZTd2LITbTCdyno0ml30PZZmGYCazowHprh1iuhx0C+yCd9U/kfZ3rLoZAFtWjz0ZUq1Z7G5xXHB97A== +"@abp/jquery-validation-unobtrusive@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-3.2.1.tgz#8f0b54f0d39b00ab93638fe1537ae7bd77e3e78e" + integrity sha512-mr/jZVm8QuYO1vWcNo3ytuQEeMBvjnMiTrvoUzY1OXX+HUFR6oi8FohXgxFUypElAqQ8jelV9K0qonX1zTQhcg== dependencies: - "@abp/jquery-validation" "~3.2.0" + "@abp/jquery-validation" "~3.2.1" jquery-validation-unobtrusive "^3.2.11" -"@abp/jquery-validation@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-3.2.0.tgz#1de41e9167b41a956ce2f6e3d6f16d023fccd078" - integrity sha512-FlP7btUvAJfGoi0g8Hm474jlhtweyd/P6dRu2spApUOpKjMyUNFpp/nphmr0iQvx7JGeeaAaUhQJ2v5UKy/Z8w== +"@abp/jquery-validation@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-3.2.1.tgz#b5330eb404f357936d16f3dd81752076bfee963d" + integrity sha512-nmubyFyA8TbLdsJt8MAspSRN4St8Xn8ICB8ancdiyxbS/6u9oeKlvP4++ZZ881NlFkPsyo7GkHjfl29pNzzzJA== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" jquery-validation "^1.19.2" -"@abp/jquery@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-3.2.0.tgz#eabc0bafef3cf2b64f672c562bda1f1002b07b7c" - integrity sha512-tlvQ79cqyJ+tXEf17Vdwi6O8yo0+7bmicyy5A/iYyWWJUjXGkiouQHjHkoZ2jeyxwvqn85tBbfjeRumcZdYRMA== +"@abp/jquery@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-3.2.1.tgz#c7ee0bbff0b480b8ed01f46d1ce07ebc8c35e4a2" + integrity sha512-AvfQ9rnnb+pQUDuGnuhpCB+FzWz3EqDptoeiCDQjPXxGql3Wk5GWw6QzvuREOXcU4CoUyzigyDgnO5WaSlx8kQ== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" jquery "~3.5.1" -"@abp/lodash@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-3.2.0.tgz#63e8c51fe9e760d7debca9129bfbf01be8c12d18" - integrity sha512-/rGkJMCgbA0JLkjMXenxz6q0BXRDwvYSLUu7XotNj/cbiHpT5yHHTnWQgwxVUKEVA9xtmYUH1h20J25n/VD/tg== +"@abp/lodash@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-3.2.1.tgz#7abfe7d572eaa628c033a6d50520b8510ecce79a" + integrity sha512-ZDte0vUfM1fBrs/mRq7yCuugtYZKoP/6pOEebDOMdM1GztAEKicq8s7EXxwbqE4+kjxqeHzReh7ZwCtFAf/Zew== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" lodash "^4.17.15" -"@abp/luxon@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-3.2.0.tgz#f94b595d15d78868a4acf73803a9da8609096d39" - integrity sha512-3FF9/W+Smp4FqRJ6F5vNxydXYraVgEUsrOBkaBexVkzT/l3zBkCmrJ8i+Eib8xBXpS6Ku4nmpqbqm1VYhlxKTQ== +"@abp/luxon@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-3.2.1.tgz#ad3473f24dbacd4d1bc15a07ee75cc1db7f1df6c" + integrity sha512-WZgAMHNx1beQSA48ZJ2x2g408iBXBUvKwBwAFJqbhNhEsO95tutO80j1LNHYvXCbrAatoz6K6IDRXDXV1U3zyg== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" luxon "^1.24.1" -"@abp/malihu-custom-scrollbar-plugin@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-3.2.0.tgz#bd11a36a37ec23d38cba116934398696379158b1" - integrity sha512-BYGICB55RsYHmaICnyWdCewo0uEbopmuuUuCJlE+2IY1I4JchSWG2mV//F+jOZQmlOsjYufK70BrQQEIr+ewXw== +"@abp/malihu-custom-scrollbar-plugin@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-3.2.1.tgz#f4a19c6de14c7193eaf6c55c429580dcbcfe3965" + integrity sha512-pu8Tuh67ruG1fLEud1eves/eiBCiuowL+LVLyW+iX1bByfVlOB40nMQ7UCMQ6Jvv31pTEK2dfQ/n8K3W/pFiWQ== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/prismjs@^3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-3.2.0.tgz#11c7c3023f11097a3eb26d8a0c04f7fa39d9531b" - integrity sha512-OafE/K8rC7popNQDh1J97AtPuxVeAFWh/msfHE3K5nmdYABpl8U7190ITw5COcVjjFLCEONpkkhfN/9ZdAQ8fQ== +"@abp/prismjs@^3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-3.2.1.tgz#8f8ef367c9a10c3ec871d721055fbed4a8ec867a" + integrity sha512-+wcKmi/F66qGRmTk+oYgYmJo+b9kQvJ+BG/+vIsN+n3Dzb/sjaDmc18pMFhEKWy7P/Yq28NxZdK+qO1LgzTktg== dependencies: - "@abp/clipboard" "~3.2.0" - "@abp/core" "~3.2.0" + "@abp/clipboard" "~3.2.1" + "@abp/core" "~3.2.1" prismjs "^1.20.0" -"@abp/select2@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-3.2.0.tgz#729f82695bbfd7ab3d7a90059a198f338037c867" - integrity sha512-83V8jIR8RGFJ3II5G7/bitlv44OHOEENKDrT639OYIxHfgWEWm4CBhcyCnlZJqv6xB2AVDfFPgCPlDGl3x3tmw== +"@abp/select2@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-3.2.1.tgz#8a04a6f5f10cc4a48a3da37bbc38ff655e626ddf" + integrity sha512-i/euJ+kTHakwCI3Hf9+NhiQG+MYlU0iwp6GRmS2uHqgkMd2gVjnBq+elA2jsi50PXpxowv4vdBCNHcicI58W2w== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" select2 "^4.0.13" -"@abp/sweetalert@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/sweetalert/-/sweetalert-3.2.0.tgz#05040b7276ca2ce62ffc20865d64fb6e0fdb62cb" - integrity sha512-BEgbWwWX2uOsVS/zV6OzlxRBCtSlqeAYdSkmDjQ7pzCthwZXPPFr1o8UXyp9W7GKwDg3lfWTQPkkm+2y587xEw== +"@abp/sweetalert@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/sweetalert/-/sweetalert-3.2.1.tgz#be99820491499fea06259fbc584e799a51cbabf3" + integrity sha512-If5UJQVJ05aEbxPHrwRpuEzCT5ygOHmPzpBblpzSo5XxNNDGGlumnwYmtbXBSXutXrIR0b5//Bo1EgBVtmJHOg== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" sweetalert "^2.1.2" -"@abp/timeago@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-3.2.0.tgz#e4a207566c00ccb3161ee91c6f6ce26419e4bbaf" - integrity sha512-VUk8c3hITZfu5aA21XB2Qaw5fwoeAl36Piy0Cb3aUOCFjyGWg19htXxDoT7rzqZ5UJFN0VRYg9MzciXZrFN5/w== +"@abp/timeago@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-3.2.1.tgz#4e5e6c76d5440de65646a076ce1a9d7225882243" + integrity sha512-4WLWoCYiSg5zYPcogV47TXA+YomDHHY0YfHHWmr6TP2bHd5ghsnMqnnkt58nUN9Psd77teo+Mo9jgR0h2IxRwQ== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" timeago "^1.6.7" -"@abp/toastr@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-3.2.0.tgz#059e1e1e998207a6f75db2bfe717bec2a0b6d955" - integrity sha512-EKikZVQDaX/uQfc0rWsW2x+UDsO4r80KC3pLvRaLXW5IEwEhTpYwZDUGReOEQ8YEk7UKOXrVJA07mxkbdOzyAw== +"@abp/toastr@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-3.2.1.tgz#d35b44234ca6cbd5da6cc5f65d15e827bd7970dc" + integrity sha512-nBmWGL49psSF2tcNnR6PGBcfFAxo2u5HHNRzv2c2z46ZEGFa5DjuY46KZC24jMWY+yprINQewhKTmQUqJvaHqA== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" toastr "^2.1.4" -"@abp/utils@^3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-3.2.0.tgz#084918379f2c5e43c1e52291ba6667f3ea3c1f33" - integrity sha512-DZsvF/I5o3r0D1+2B61KvJX78/tJ5uj9MaPq00Z/sxXdqsP2SQQmjhMm+Lb0FgGMK06XIoF9eDgM3Hu0y0H3cQ== +"@abp/utils@^3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-3.2.1.tgz#960a0bbdfb781bbd6fb05e80bba2b9d95f2ae44c" + integrity sha512-bqYa1VIi1tZXCUbP2Z1WlcgPD4/wjhDVM1jiAN9UzDls1K3u+e2LyR4gLoN39WW1ULjCIhyzEAw/JgTcMmpUBw== dependencies: just-compare "^1.3.0" diff --git a/framework/test/Volo.Abp.Core.Tests/System/AbpTypeExtensions_Tests.cs b/framework/test/Volo.Abp.Core.Tests/System/AbpTypeExtensions_Tests.cs index 382440a3f4..dceeda72b2 100644 --- a/framework/test/Volo.Abp.Core.Tests/System/AbpTypeExtensions_Tests.cs +++ b/framework/test/Volo.Abp.Core.Tests/System/AbpTypeExtensions_Tests.cs @@ -6,7 +6,7 @@ namespace System public class AbpTypeExtensions_Tests { [Fact] - public void GetBaseClasses() + public void GetBaseClasses_Excluding_Object() { var baseClasses = typeof(MyClass).GetBaseClasses(includeObject: false); baseClasses.Length.ShouldBe(2); @@ -14,6 +14,14 @@ namespace System baseClasses[1].ShouldBe(typeof(MyBaseClass2)); } + [Fact] + public void GetBaseClasses_With_StoppingType() + { + var baseClasses = typeof(MyClass).GetBaseClasses(typeof(MyBaseClass1)); + baseClasses.Length.ShouldBe(1); + baseClasses[0].ShouldBe(typeof(MyBaseClass2)); + } + public abstract class MyBaseClass1 { diff --git a/framework/test/Volo.Abp.Emailing.Tests/Volo/Abp/Emailing/Localization/es.json b/framework/test/Volo.Abp.Emailing.Tests/Volo/Abp/Emailing/Localization/es.json new file mode 100644 index 0000000000..7cf144aab4 --- /dev/null +++ b/framework/test/Volo.Abp.Emailing.Tests/Volo/Abp/Emailing/Localization/es.json @@ -0,0 +1,6 @@ +{ + "culture": "es", + "texts": { + "hello": "Hola" + } +} \ No newline at end of file diff --git a/modules/blogging/app/Volo.BloggingTestApp/package.json b/modules/blogging/app/Volo.BloggingTestApp/package.json index 759fb11760..f5b0ee5e5d 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": "^3.2.0", - "@abp/blogging": "^3.2.0" + "@abp/aspnetcore.mvc.ui.theme.basic": "^3.2.1", + "@abp/blogging": "^3.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 0b75f07db8..0bd496f67d 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@^3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-3.2.0.tgz#207277419356a14f686421de0ee320fad0d6857f" - integrity sha512-4xn4BPQu9QL3sM47QtPNwOei9/fnRw3dXCL7vlJBCU70jL8911C6D/Pj/CBqCEMMVPI6M4GE7Ls4AwKTvgFeTw== +"@abp/aspnetcore.mvc.ui.theme.basic@^3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-3.2.1.tgz#d8f9af85b6114d35bba5942e303b3a4b89c8cd75" + integrity sha512-utHlyw/xbtDqqA0ETrYTxZ8ZO49tI6FP3BAvRdevbhozdG8/el6BWpifZysKJv2VIm6d5P7DXD3uymCd5iX6EA== dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~3.2.0" + "@abp/aspnetcore.mvc.ui.theme.shared" "~3.2.1" -"@abp/aspnetcore.mvc.ui.theme.shared@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-3.2.0.tgz#bed24c1d28f6e85d58fa963911a09e8b2998c1b6" - integrity sha512-Ap1dPCvL7r31oFyi+3YPviFkDly5FZfWbHq2bURsEbscembpc6DOSfXehvuZ2BjqsZF3n/HX0Y1lX4irUqKqjg== - dependencies: - "@abp/aspnetcore.mvc.ui" "~3.2.0" - "@abp/bootstrap" "~3.2.0" - "@abp/bootstrap-datepicker" "~3.2.0" - "@abp/datatables.net-bs4" "~3.2.0" - "@abp/font-awesome" "~3.2.0" - "@abp/jquery-form" "~3.2.0" - "@abp/jquery-validation-unobtrusive" "~3.2.0" - "@abp/lodash" "~3.2.0" - "@abp/luxon" "~3.2.0" - "@abp/malihu-custom-scrollbar-plugin" "~3.2.0" - "@abp/select2" "~3.2.0" - "@abp/sweetalert" "~3.2.0" - "@abp/timeago" "~3.2.0" - "@abp/toastr" "~3.2.0" - -"@abp/aspnetcore.mvc.ui@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-3.2.0.tgz#01f80b9f663f4d95ceac733761833cf4648e92b5" - integrity sha512-NzH1UxEoE/FVT0LLjMNq5eSsiORLe5dE+aKr7jjbaxcuVr7QI7KI9ry6xWAZk+0cbGvsUAY0xqrMxxqiLpskxQ== +"@abp/aspnetcore.mvc.ui.theme.shared@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-3.2.1.tgz#b628602dca8d1809e32f423962cff56379a790b0" + integrity sha512-aWZAaFnN9Ncyzy84wPTfUVtcyh98Sxu4m+fsGY5XtwA/nwDTDVtLMq81ueJWyFgN9GNk8+lT6VXfPDpA/MJo/A== + dependencies: + "@abp/aspnetcore.mvc.ui" "~3.2.1" + "@abp/bootstrap" "~3.2.1" + "@abp/bootstrap-datepicker" "~3.2.1" + "@abp/datatables.net-bs4" "~3.2.1" + "@abp/font-awesome" "~3.2.1" + "@abp/jquery-form" "~3.2.1" + "@abp/jquery-validation-unobtrusive" "~3.2.1" + "@abp/lodash" "~3.2.1" + "@abp/luxon" "~3.2.1" + "@abp/malihu-custom-scrollbar-plugin" "~3.2.1" + "@abp/select2" "~3.2.1" + "@abp/sweetalert" "~3.2.1" + "@abp/timeago" "~3.2.1" + "@abp/toastr" "~3.2.1" + +"@abp/aspnetcore.mvc.ui@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-3.2.1.tgz#dc0d2c331bf09ef0f79cec739e0f64edb1105084" + integrity sha512-Fpn16MeK71Uhw6636nlXCQaSwN9lN6QFUIGIICcWU+2eMA8fK4ZtavaYGG4mWqjkd4wzUHCz2AZbmbxK7bVnng== dependencies: ansi-colors "^4.1.1" extend-object "^1.0.0" @@ -41,214 +41,214 @@ path "^0.12.7" rimraf "^3.0.2" -"@abp/blogging@^3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/blogging/-/blogging-3.2.0.tgz#a963c128fe92666a1b0f9059c2e9fb6519545ad3" - integrity sha512-+moP5svgo7eo3vegepH9Dff66kXLojtDN/5iLXZeNQmf+7KFmB7eATzIMJgWQzgRm99lBRERiGpQcAtWgpxpVA== +"@abp/blogging@^3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/blogging/-/blogging-3.2.1.tgz#edd07431dff8faa69d79b2ecd672c646de27d561" + integrity sha512-4Rt43AvAIvXDRobpji1k+b8Imf2CSpQZf8Haz9K9E+MY4QHre4rrvL8U03kwwwvO5MI/9GXUoBMIdGdxtsrqqQ== dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~3.2.0" - "@abp/owl.carousel" "~3.2.0" - "@abp/prismjs" "~3.2.0" - "@abp/tui-editor" "~3.2.0" + "@abp/aspnetcore.mvc.ui.theme.shared" "~3.2.1" + "@abp/owl.carousel" "~3.2.1" + "@abp/prismjs" "~3.2.1" + "@abp/tui-editor" "~3.2.1" -"@abp/bootstrap-datepicker@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-3.2.0.tgz#0a1813d8a84dd6eb6cf647244a4a91900364deb1" - integrity sha512-w7YyA5TRZqGL3qYyArwfrRc4/qWQMT0BPYDOsGMrtPJZDWeZL7WPezuiIvKNdI71BfUq6XiA1+wwMfqjcClZ2g== +"@abp/bootstrap-datepicker@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-3.2.1.tgz#5cb75bc53fab86f7b28bfc5fbfcbf233432d75ca" + integrity sha512-KzTDZTMd/TBaTDNuPF4+T+0zsmEimD2Uq8TlNw7knEEyo7a/lsfBNkBF9Xc8bjZcbC76BqajytsTzI1yftM4Uw== dependencies: bootstrap-datepicker "^1.9.0" -"@abp/bootstrap@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-3.2.0.tgz#d249338b0151734f99b8e366aea6fc17d5ef9b37" - integrity sha512-hx9r7EGb1vJrHAdw3D8Cpudv++hrM4dKoKtOKnQbxGG+Q9vwVS6SKquVxJum+bEZWa1CgXvT6co0IDOlW3pDhg== +"@abp/bootstrap@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-3.2.1.tgz#9574414f1e170240dacdf78408af34830264db97" + integrity sha512-gLIr4d5xfw5TSpSHIKr7oKznkdIbGhS+gtBitP1BFVLOU2h7/d6uTZoopC+JQU16DGvn8njo8W4DL7Amh9FOqQ== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" bootstrap "^4.5.0" bootstrap-v4-rtl "4.4.1-2" -"@abp/clipboard@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-3.2.0.tgz#9c9f95c40639cabe89e6bc86ee0f33c853321225" - integrity sha512-WGonC5Hp4FCUBxevIt180QWIqOri0eO//mlRLBqj7gvo7H6zt5f4t90XKF24ZYWXjx7bCbIQQFt5t5ByeqdcJg== +"@abp/clipboard@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-3.2.1.tgz#ffb57db0e73ae7c96df78dc7b739e436c9654ae0" + integrity sha512-iLCMV8JVkvdDzWf83UlkSIuU4Tiz+/wdGjiCt7lQp538fCYO7EAqurfWwMbb1Kaz0CRFzt/+AbDrXw004AND2Q== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" clipboard "^2.0.6" -"@abp/codemirror@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/codemirror/-/codemirror-3.2.0.tgz#b9604d31591522b3c3c140830444422f9742c9d7" - integrity sha512-Qv/+g6NSsv5M3puE3MgF17JPvWytkG4PDMyEX8cf8DOe2FCb3p44EbFyN6sqMY5l621S7fhjIRJfMAZ9I5FcZQ== +"@abp/codemirror@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/codemirror/-/codemirror-3.2.1.tgz#093bf88d74a4ec2111afa84d47f643fee2e210dd" + integrity sha512-4Qe2/kDqlwlIlyrUVzirYkX713qZRG0Sn1pMSnXIb6JxJYFIxrxt8IxGy0o3IsL2xU3H2mnRTXSA0rFbQvVxRQ== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" codemirror "^5.54.0" -"@abp/core@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-3.2.0.tgz#e9f07bde581b07e1b904bec3b12e0ccfc2a50125" - integrity sha512-X3iWv8QxAbqKJMoTb3vfvwGYmD9uZ+p+zn5q5Hoybyq9fjEcevpkdX7OiLvO8M+NEwCKa81wtkvvM2BnEV6Igg== +"@abp/core@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-3.2.1.tgz#3c133f67394d716df3e49f1eeb934c586df755e5" + integrity sha512-GbjrFO+oKl4JuZkYdeWtE+N837XRQr0hoX8O3pI1eAnuMku48QhGec2ZpSJuqG+c3wX6PHTZPIyHse4X+y6QgA== dependencies: - "@abp/utils" "^3.2.0" + "@abp/utils" "^3.2.1" -"@abp/datatables.net-bs4@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs4/-/datatables.net-bs4-3.2.0.tgz#8551c0ac5e29b037a86b141f41052e7a3038be89" - integrity sha512-i2LVTKAllgzhc21rb0GQ0YHtmOMyCT+6P3ZelqkoLdp56D63rVhdAOHrqjebrEHMehsuCUV2XH908kakXWIPXA== +"@abp/datatables.net-bs4@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs4/-/datatables.net-bs4-3.2.1.tgz#b008b2964472fd8c8286a7c4b1e903d93a52e760" + integrity sha512-C/MmA6URugDD1tdUS6zS413ycHCjefeIG7nnJrtJmCZix7mfbdrp/Km/vKbE1KMSEYWis0w/SxIEy0kbkIW4OQ== dependencies: - "@abp/datatables.net" "~3.2.0" + "@abp/datatables.net" "~3.2.1" datatables.net-bs4 "^1.10.21" -"@abp/datatables.net@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-3.2.0.tgz#effd0ec603b15c0de2d1db993d1416b46f4e3146" - integrity sha512-6UX/WqdlRfb3BQ2cw7LbUlMimDXtx7rHanTTWq44g+Wc8fn4fVcYyo9RWCYYOd2MWm9pElEvuzG1AzaOamjW9Q== +"@abp/datatables.net@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-3.2.1.tgz#ba7d4c875ad2bc126687bc5d8e627f3c4d7fb2f4" + integrity sha512-o8/K6RGnPkQUe5ClAxyHNBOevVBnb8qSM4NXRXR2AUtEvjal+4UL9QOf1LZ0zPv4OAjaaAiOAp9Pmbv4FWuZ8Q== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" datatables.net "^1.10.21" -"@abp/font-awesome@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-3.2.0.tgz#ad75daf1c084c2c6a0aeccc092057627ce898652" - integrity sha512-FAWBYWwg2ZtKO+0/lS/bc4YFnR7IehQ2Y+y1srIypgSY/739X4aUWb0YDW1tE0QrrFfQ//f16AyIKPynGl0T5Q== +"@abp/font-awesome@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-3.2.1.tgz#d54a6d9627fdfeb6c615550f09241d0c805e3d39" + integrity sha512-5BlAuIX4qFdf/mvycUAREmVQ8jg0tRtDnVXt0E8kUtzghhEGG91NfcZIaB4zaWAwuJSyqqjS/VJ/URy1g50NZQ== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" "@fortawesome/fontawesome-free" "^5.13.0" -"@abp/highlight.js@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/highlight.js/-/highlight.js-3.2.0.tgz#b180ef024744599a647b942c278eefd58722280e" - integrity sha512-Hcc2RbjqbmIZWaKfWs/6utpwl5Ehc/tMC9hG1m61uXwO+3ISif5MCb1GQ1i2ycFJJRumdHgfm2tFAyGXGS9Z6Q== +"@abp/highlight.js@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/highlight.js/-/highlight.js-3.2.1.tgz#3ece76e83ab49fdf12ab0bd33c5b2cdaa93a988e" + integrity sha512-bxQnwXJifZgEqY1kOhBbUBRMih99u661FaKhM9VjZgPPjaASDbH9Af6w2n30zuUUJx+8hu0TvIE35yfnvfEPjw== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" -"@abp/jquery-form@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-3.2.0.tgz#b1b408c0f380c8dfd99c063251f2f1fd86dff14c" - integrity sha512-ZC38zLqlMm67nONg+7ZSC7ExzLZApZ2nZ3/yM6J5LNa7IOgzDGPZgbDRBiwFdC3vIB04LhnNr83YrEvIaUnIzQ== +"@abp/jquery-form@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-3.2.1.tgz#9280b28e2103fc80b9124e3a53f2f0e03ac4bb46" + integrity sha512-Dy0wTCcmWgygrru59VPnlVw7qLu8aLTZOTpMPbSva502O19O+H7FljF9r0J7eYgoO6pcTO4R1tE/Yib3DwIBFg== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-3.2.0.tgz#91b996c743e5b1423a4d01d8808788a4bf4adb32" - integrity sha512-FSkGWvIkZTd2LITbTCdyno0ml30PZZmGYCazowHprh1iuhx0C+yCd9U/kfZ3rLoZAFtWjz0ZUq1Z7G5xXHB97A== +"@abp/jquery-validation-unobtrusive@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-3.2.1.tgz#8f0b54f0d39b00ab93638fe1537ae7bd77e3e78e" + integrity sha512-mr/jZVm8QuYO1vWcNo3ytuQEeMBvjnMiTrvoUzY1OXX+HUFR6oi8FohXgxFUypElAqQ8jelV9K0qonX1zTQhcg== dependencies: - "@abp/jquery-validation" "~3.2.0" + "@abp/jquery-validation" "~3.2.1" jquery-validation-unobtrusive "^3.2.11" -"@abp/jquery-validation@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-3.2.0.tgz#1de41e9167b41a956ce2f6e3d6f16d023fccd078" - integrity sha512-FlP7btUvAJfGoi0g8Hm474jlhtweyd/P6dRu2spApUOpKjMyUNFpp/nphmr0iQvx7JGeeaAaUhQJ2v5UKy/Z8w== +"@abp/jquery-validation@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-3.2.1.tgz#b5330eb404f357936d16f3dd81752076bfee963d" + integrity sha512-nmubyFyA8TbLdsJt8MAspSRN4St8Xn8ICB8ancdiyxbS/6u9oeKlvP4++ZZ881NlFkPsyo7GkHjfl29pNzzzJA== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" jquery-validation "^1.19.2" -"@abp/jquery@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-3.2.0.tgz#eabc0bafef3cf2b64f672c562bda1f1002b07b7c" - integrity sha512-tlvQ79cqyJ+tXEf17Vdwi6O8yo0+7bmicyy5A/iYyWWJUjXGkiouQHjHkoZ2jeyxwvqn85tBbfjeRumcZdYRMA== +"@abp/jquery@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-3.2.1.tgz#c7ee0bbff0b480b8ed01f46d1ce07ebc8c35e4a2" + integrity sha512-AvfQ9rnnb+pQUDuGnuhpCB+FzWz3EqDptoeiCDQjPXxGql3Wk5GWw6QzvuREOXcU4CoUyzigyDgnO5WaSlx8kQ== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" jquery "~3.5.1" -"@abp/lodash@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-3.2.0.tgz#63e8c51fe9e760d7debca9129bfbf01be8c12d18" - integrity sha512-/rGkJMCgbA0JLkjMXenxz6q0BXRDwvYSLUu7XotNj/cbiHpT5yHHTnWQgwxVUKEVA9xtmYUH1h20J25n/VD/tg== +"@abp/lodash@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-3.2.1.tgz#7abfe7d572eaa628c033a6d50520b8510ecce79a" + integrity sha512-ZDte0vUfM1fBrs/mRq7yCuugtYZKoP/6pOEebDOMdM1GztAEKicq8s7EXxwbqE4+kjxqeHzReh7ZwCtFAf/Zew== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" lodash "^4.17.15" -"@abp/luxon@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-3.2.0.tgz#f94b595d15d78868a4acf73803a9da8609096d39" - integrity sha512-3FF9/W+Smp4FqRJ6F5vNxydXYraVgEUsrOBkaBexVkzT/l3zBkCmrJ8i+Eib8xBXpS6Ku4nmpqbqm1VYhlxKTQ== +"@abp/luxon@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-3.2.1.tgz#ad3473f24dbacd4d1bc15a07ee75cc1db7f1df6c" + integrity sha512-WZgAMHNx1beQSA48ZJ2x2g408iBXBUvKwBwAFJqbhNhEsO95tutO80j1LNHYvXCbrAatoz6K6IDRXDXV1U3zyg== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" luxon "^1.24.1" -"@abp/malihu-custom-scrollbar-plugin@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-3.2.0.tgz#bd11a36a37ec23d38cba116934398696379158b1" - integrity sha512-BYGICB55RsYHmaICnyWdCewo0uEbopmuuUuCJlE+2IY1I4JchSWG2mV//F+jOZQmlOsjYufK70BrQQEIr+ewXw== +"@abp/malihu-custom-scrollbar-plugin@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-3.2.1.tgz#f4a19c6de14c7193eaf6c55c429580dcbcfe3965" + integrity sha512-pu8Tuh67ruG1fLEud1eves/eiBCiuowL+LVLyW+iX1bByfVlOB40nMQ7UCMQ6Jvv31pTEK2dfQ/n8K3W/pFiWQ== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/markdown-it@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/markdown-it/-/markdown-it-3.2.0.tgz#6fdd0b7f43bffce569908ba907c85f351ff89164" - integrity sha512-dGyM9Zdj21Pf08KY/X2lYtDr+lMX8v6TPHMKQVpgkDQ3/fzWDcg0MAr4CWUpg+BGLIhpwDWyKVBI/nQtEG/ihg== +"@abp/markdown-it@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/markdown-it/-/markdown-it-3.2.1.tgz#b62d52302d300ee00726de8e1a328192923855dd" + integrity sha512-62Q67GNkwS5iYoiBTm47esljrIrowTaThJkx0/nQy5PRh+BZlVggyWMyS2O8BfSwAN3iXO5PEWjj7aH1EV2ujg== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" markdown-it "^11.0.0" -"@abp/owl.carousel@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/owl.carousel/-/owl.carousel-3.2.0.tgz#dd4c0c0bd9b4cc033577fd885fa10ab4670ccaf1" - integrity sha512-bxVkjkW1gWTSFuyM1iqHY8esTf+65e/tUZIDf+El0/xLbVkygeAZZtumMnwkizCAzWifBpQSd3QgGkY+wtabVw== +"@abp/owl.carousel@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/owl.carousel/-/owl.carousel-3.2.1.tgz#97c1d353873027771f070c5aae31ec029c7b53e3" + integrity sha512-Tu/BlCGNun1sID0lIhT387vyEC7Pbyv6ZXbKjAZjgO+fRz3Je8XZ5gdyQ2Jfgr2/Nqc4uHNpJGZ38E+b4yUE6Q== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" owl.carousel "^2.3.4" -"@abp/prismjs@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-3.2.0.tgz#11c7c3023f11097a3eb26d8a0c04f7fa39d9531b" - integrity sha512-OafE/K8rC7popNQDh1J97AtPuxVeAFWh/msfHE3K5nmdYABpl8U7190ITw5COcVjjFLCEONpkkhfN/9ZdAQ8fQ== +"@abp/prismjs@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-3.2.1.tgz#8f8ef367c9a10c3ec871d721055fbed4a8ec867a" + integrity sha512-+wcKmi/F66qGRmTk+oYgYmJo+b9kQvJ+BG/+vIsN+n3Dzb/sjaDmc18pMFhEKWy7P/Yq28NxZdK+qO1LgzTktg== dependencies: - "@abp/clipboard" "~3.2.0" - "@abp/core" "~3.2.0" + "@abp/clipboard" "~3.2.1" + "@abp/core" "~3.2.1" prismjs "^1.20.0" -"@abp/select2@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-3.2.0.tgz#729f82695bbfd7ab3d7a90059a198f338037c867" - integrity sha512-83V8jIR8RGFJ3II5G7/bitlv44OHOEENKDrT639OYIxHfgWEWm4CBhcyCnlZJqv6xB2AVDfFPgCPlDGl3x3tmw== +"@abp/select2@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-3.2.1.tgz#8a04a6f5f10cc4a48a3da37bbc38ff655e626ddf" + integrity sha512-i/euJ+kTHakwCI3Hf9+NhiQG+MYlU0iwp6GRmS2uHqgkMd2gVjnBq+elA2jsi50PXpxowv4vdBCNHcicI58W2w== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" select2 "^4.0.13" -"@abp/sweetalert@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/sweetalert/-/sweetalert-3.2.0.tgz#05040b7276ca2ce62ffc20865d64fb6e0fdb62cb" - integrity sha512-BEgbWwWX2uOsVS/zV6OzlxRBCtSlqeAYdSkmDjQ7pzCthwZXPPFr1o8UXyp9W7GKwDg3lfWTQPkkm+2y587xEw== +"@abp/sweetalert@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/sweetalert/-/sweetalert-3.2.1.tgz#be99820491499fea06259fbc584e799a51cbabf3" + integrity sha512-If5UJQVJ05aEbxPHrwRpuEzCT5ygOHmPzpBblpzSo5XxNNDGGlumnwYmtbXBSXutXrIR0b5//Bo1EgBVtmJHOg== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" sweetalert "^2.1.2" -"@abp/timeago@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-3.2.0.tgz#e4a207566c00ccb3161ee91c6f6ce26419e4bbaf" - integrity sha512-VUk8c3hITZfu5aA21XB2Qaw5fwoeAl36Piy0Cb3aUOCFjyGWg19htXxDoT7rzqZ5UJFN0VRYg9MzciXZrFN5/w== +"@abp/timeago@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-3.2.1.tgz#4e5e6c76d5440de65646a076ce1a9d7225882243" + integrity sha512-4WLWoCYiSg5zYPcogV47TXA+YomDHHY0YfHHWmr6TP2bHd5ghsnMqnnkt58nUN9Psd77teo+Mo9jgR0h2IxRwQ== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" timeago "^1.6.7" -"@abp/toastr@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-3.2.0.tgz#059e1e1e998207a6f75db2bfe717bec2a0b6d955" - integrity sha512-EKikZVQDaX/uQfc0rWsW2x+UDsO4r80KC3pLvRaLXW5IEwEhTpYwZDUGReOEQ8YEk7UKOXrVJA07mxkbdOzyAw== +"@abp/toastr@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-3.2.1.tgz#d35b44234ca6cbd5da6cc5f65d15e827bd7970dc" + integrity sha512-nBmWGL49psSF2tcNnR6PGBcfFAxo2u5HHNRzv2c2z46ZEGFa5DjuY46KZC24jMWY+yprINQewhKTmQUqJvaHqA== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" toastr "^2.1.4" -"@abp/tui-editor@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/tui-editor/-/tui-editor-3.2.0.tgz#025d3348db0aa9f90aa01c49010a15227e029cc0" - integrity sha512-8dKALM8tRuMdoa1WNOekiwAdDwFAMjyf9wy3FiWLX/oyJOkQhRyxsT455TxQ2yt7pTDiY3DrYyF1xeqwxbGoRw== +"@abp/tui-editor@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/tui-editor/-/tui-editor-3.2.1.tgz#4cda3bb6a6dfd6413cd5a3520d98c923f54b4b4b" + integrity sha512-KvWc5ZkXGNAPb6ek0Y91/89BD9AfDQ/lBPB3aYydRe1A2NSMgpRQ4DXsCYaQmmsyAv5aAKJAmsqN89V7v8NoUQ== dependencies: - "@abp/codemirror" "~3.2.0" - "@abp/highlight.js" "~3.2.0" - "@abp/jquery" "~3.2.0" - "@abp/markdown-it" "~3.2.0" + "@abp/codemirror" "~3.2.1" + "@abp/highlight.js" "~3.2.1" + "@abp/jquery" "~3.2.1" + "@abp/markdown-it" "~3.2.1" tui-editor "^1.4.10" -"@abp/utils@^3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-3.2.0.tgz#084918379f2c5e43c1e52291ba6667f3ea3c1f33" - integrity sha512-DZsvF/I5o3r0D1+2B61KvJX78/tJ5uj9MaPq00Z/sxXdqsP2SQQmjhMm+Lb0FgGMK06XIoF9eDgM3Hu0y0H3cQ== +"@abp/utils@^3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-3.2.1.tgz#960a0bbdfb781bbd6fb05e80bba2b9d95f2ae44c" + integrity sha512-bqYa1VIi1tZXCUbP2Z1WlcgPD4/wjhDVM1jiAN9UzDls1K3u+e2LyR4gLoN39WW1ULjCIhyzEAw/JgTcMmpUBw== dependencies: just-compare "^1.3.0" diff --git a/modules/blogging/src/Volo.Blogging.Admin.Application.Contracts/Volo/Blogging/Admin/Blogs/CreateBlogDto.cs b/modules/blogging/src/Volo.Blogging.Admin.Application.Contracts/Volo/Blogging/Admin/Blogs/CreateBlogDto.cs index 5f47311404..605d1b666b 100644 --- a/modules/blogging/src/Volo.Blogging.Admin.Application.Contracts/Volo/Blogging/Admin/Blogs/CreateBlogDto.cs +++ b/modules/blogging/src/Volo.Blogging.Admin.Application.Contracts/Volo/Blogging/Admin/Blogs/CreateBlogDto.cs @@ -1,9 +1,13 @@ +using System.ComponentModel.DataAnnotations; + namespace Volo.Blogging.Admin.Blogs { public class CreateBlogDto { + [Required] public string Name { get; set; } + [Required] public string ShortName { get; set; } public string Description { get; set; } diff --git a/modules/blogging/src/Volo.Blogging.Admin.Application.Contracts/Volo/Blogging/Admin/Blogs/UpdateBlogDto.cs b/modules/blogging/src/Volo.Blogging.Admin.Application.Contracts/Volo/Blogging/Admin/Blogs/UpdateBlogDto.cs index 529ace6e0d..759bdf31aa 100644 --- a/modules/blogging/src/Volo.Blogging.Admin.Application.Contracts/Volo/Blogging/Admin/Blogs/UpdateBlogDto.cs +++ b/modules/blogging/src/Volo.Blogging.Admin.Application.Contracts/Volo/Blogging/Admin/Blogs/UpdateBlogDto.cs @@ -1,9 +1,13 @@ -namespace Volo.Blogging.Admin.Blogs +using System.ComponentModel.DataAnnotations; + +namespace Volo.Blogging.Admin.Blogs { public class UpdateBlogDto { + [Required] public string Name { get; set; } + [Required] public string ShortName { get; set; } public string Description { get; set; } diff --git a/modules/blogging/src/Volo.Blogging.Admin.Application/Volo/Blogging/Admin/Blogs/BlogManagementAppService.cs b/modules/blogging/src/Volo.Blogging.Admin.Application/Volo/Blogging/Admin/Blogs/BlogManagementAppService.cs index e3560378cf..b11bd481fe 100644 --- a/modules/blogging/src/Volo.Blogging.Admin.Application/Volo/Blogging/Admin/Blogs/BlogManagementAppService.cs +++ b/modules/blogging/src/Volo.Blogging.Admin.Application/Volo/Blogging/Admin/Blogs/BlogManagementAppService.cs @@ -36,10 +36,12 @@ namespace Volo.Blogging.Admin.Blogs [Authorize(BloggingPermissions.Blogs.Create)] public async Task CreateAsync(CreateBlogDto input) { - var newBlog = await _blogRepository.InsertAsync(new Blog(GuidGenerator.Create(), input.Name, input.ShortName) + var newBlog = new Blog(GuidGenerator.Create(), input.Name, input.ShortName) { Description = input.Description - }); + }; + + newBlog = await _blogRepository.InsertAsync(newBlog); return ObjectMapper.Map(newBlog); } diff --git a/modules/blogging/src/Volo.Blogging.Application.Contracts/Volo/Blogging/Comments/Dtos/CreateCommentDto.cs b/modules/blogging/src/Volo.Blogging.Application.Contracts/Volo/Blogging/Comments/Dtos/CreateCommentDto.cs index 917db5a41f..d2480ecf45 100644 --- a/modules/blogging/src/Volo.Blogging.Application.Contracts/Volo/Blogging/Comments/Dtos/CreateCommentDto.cs +++ b/modules/blogging/src/Volo.Blogging.Application.Contracts/Volo/Blogging/Comments/Dtos/CreateCommentDto.cs @@ -1,4 +1,5 @@ using System; +using System.ComponentModel.DataAnnotations; namespace Volo.Blogging.Comments.Dtos { @@ -8,6 +9,7 @@ namespace Volo.Blogging.Comments.Dtos public Guid PostId { get; set; } + [Required] public string Text { get; set; } } -} \ No newline at end of file +} diff --git a/modules/blogging/src/Volo.Blogging.Application.Contracts/Volo/Blogging/Comments/Dtos/UpdateCommentDto.cs b/modules/blogging/src/Volo.Blogging.Application.Contracts/Volo/Blogging/Comments/Dtos/UpdateCommentDto.cs index d501c01bd7..0385feb9b8 100644 --- a/modules/blogging/src/Volo.Blogging.Application.Contracts/Volo/Blogging/Comments/Dtos/UpdateCommentDto.cs +++ b/modules/blogging/src/Volo.Blogging.Application.Contracts/Volo/Blogging/Comments/Dtos/UpdateCommentDto.cs @@ -1,7 +1,10 @@ -namespace Volo.Blogging.Comments.Dtos +using System.ComponentModel.DataAnnotations; + +namespace Volo.Blogging.Comments.Dtos { public class UpdateCommentDto { + [Required] public string Text { get; set; } } -} \ No newline at end of file +} diff --git a/modules/blogging/src/Volo.Blogging.Application.Contracts/Volo/Blogging/Posts/CreatePostDto.cs b/modules/blogging/src/Volo.Blogging.Application.Contracts/Volo/Blogging/Posts/CreatePostDto.cs index 96cfbd6859..43dfb02e8c 100644 --- a/modules/blogging/src/Volo.Blogging.Application.Contracts/Volo/Blogging/Posts/CreatePostDto.cs +++ b/modules/blogging/src/Volo.Blogging.Application.Contracts/Volo/Blogging/Posts/CreatePostDto.cs @@ -19,6 +19,7 @@ namespace Volo.Blogging.Posts [DynamicStringLength(typeof(PostConsts), nameof(PostConsts.MaxUrlLength))] public string Url { get; set; } + [Required] [DynamicStringLength(typeof(PostConsts), nameof(PostConsts.MaxContentLength))] public string Content { get; set; } diff --git a/modules/blogging/src/Volo.Blogging.Application.Contracts/Volo/Blogging/Posts/GetPostInput.cs b/modules/blogging/src/Volo.Blogging.Application.Contracts/Volo/Blogging/Posts/GetPostInput.cs index 3eb6ff62b0..44b2ea20ec 100644 --- a/modules/blogging/src/Volo.Blogging.Application.Contracts/Volo/Blogging/Posts/GetPostInput.cs +++ b/modules/blogging/src/Volo.Blogging.Application.Contracts/Volo/Blogging/Posts/GetPostInput.cs @@ -1,11 +1,13 @@  using System; + using System.ComponentModel.DataAnnotations; -namespace Volo.Blogging.Posts + namespace Volo.Blogging.Posts { public class GetPostInput { + [Required] public string Url { get; set; } public Guid BlogId { get; set; } } -} \ No newline at end of file +} diff --git a/modules/blogging/src/Volo.Blogging.Application.Contracts/Volo/Blogging/Posts/UpdatePostDto.cs b/modules/blogging/src/Volo.Blogging.Application.Contracts/Volo/Blogging/Posts/UpdatePostDto.cs index 16b54fedd6..988d708440 100644 --- a/modules/blogging/src/Volo.Blogging.Application.Contracts/Volo/Blogging/Posts/UpdatePostDto.cs +++ b/modules/blogging/src/Volo.Blogging.Application.Contracts/Volo/Blogging/Posts/UpdatePostDto.cs @@ -1,4 +1,5 @@ using System; +using System.ComponentModel.DataAnnotations; using System.Reflection; namespace Volo.Blogging.Posts @@ -7,12 +8,16 @@ namespace Volo.Blogging.Posts { public Guid BlogId { get; set; } + [Required] public string Title { get; set; } + [Required] public string CoverImage { get; set; } + [Required] public string Url { get; set; } + [Required] public string Content { get; set; } public string Description { get; set; } diff --git a/modules/blogging/src/Volo.Blogging.Application/Volo/Blogging/Blogs/BlogAppService.cs b/modules/blogging/src/Volo.Blogging.Application/Volo/Blogging/Blogs/BlogAppService.cs index 1b0a903d2e..ccc1002657 100644 --- a/modules/blogging/src/Volo.Blogging.Application/Volo/Blogging/Blogs/BlogAppService.cs +++ b/modules/blogging/src/Volo.Blogging.Application/Volo/Blogging/Blogs/BlogAppService.cs @@ -2,6 +2,7 @@ using System; using System.Collections.Generic; using System.Threading.Tasks; +using Volo.Abp; using Volo.Abp.Application.Dtos; using Volo.Abp.Domain.Entities; using Volo.Blogging.Blogs.Dtos; @@ -28,6 +29,8 @@ namespace Volo.Blogging.Blogs public async Task GetByShortNameAsync(string shortName) { + Check.NotNullOrWhiteSpace(shortName, nameof(shortName)); + var blog = await _blogRepository.FindByShortNameAsync(shortName); if (blog == null) diff --git a/modules/blogging/src/Volo.Blogging.Application/Volo/Blogging/Files/FileAppService.cs b/modules/blogging/src/Volo.Blogging.Application/Volo/Blogging/Files/FileAppService.cs index 8fdd12858d..e7cc7047e0 100644 --- a/modules/blogging/src/Volo.Blogging.Application/Volo/Blogging/Files/FileAppService.cs +++ b/modules/blogging/src/Volo.Blogging.Application/Volo/Blogging/Files/FileAppService.cs @@ -34,7 +34,7 @@ namespace Volo.Blogging.Files { if (input.Bytes.IsNullOrEmpty()) { - ThrowValidationException("Bytes can not be null or empty!", "Bytes"); + ThrowValidationException("Bytes of file can not be null or empty!", "Bytes"); } if (input.Bytes.Length > BloggingWebConsts.FileUploading.MaxFileSize) @@ -44,7 +44,7 @@ namespace Volo.Blogging.Files if (!ImageFormatHelper.IsValidImage(input.Bytes, FileUploadConsts.AllowedImageUploadFormats)) { - throw new UserFriendlyException("Not a valid image format!"); + throw new UserFriendlyException("Invalid image format!"); } var uniqueFileName = GenerateUniqueFileName(Path.GetExtension(input.Name)); diff --git a/modules/blogging/src/Volo.Blogging.Application/Volo/Blogging/Posts/PostAppService.cs b/modules/blogging/src/Volo.Blogging.Application/Volo/Blogging/Posts/PostAppService.cs index 798bf8e39f..70007a0c56 100644 --- a/modules/blogging/src/Volo.Blogging.Application/Volo/Blogging/Posts/PostAppService.cs +++ b/modules/blogging/src/Volo.Blogging.Application/Volo/Blogging/Posts/PostAppService.cs @@ -187,9 +187,7 @@ namespace Volo.Blogging.Posts private async Task RenameUrlIfItAlreadyExistAsync(Guid blogId, string url, Post existingPost = null) { - var postList = await _postRepository.GetListAsync(); - - if (postList.Where(p => p.Url == url).WhereIf(existingPost != null, p => existingPost.Id != p.Id).Any()) + if (await _postRepository.IsPostUrlInUseAsync(blogId, url, existingPost?.Id)) { return url + "-" + Guid.NewGuid().ToString().Substring(0, 5); } diff --git a/modules/blogging/src/Volo.Blogging.Domain/Volo/Blogging/Posts/IPostRepository.cs b/modules/blogging/src/Volo.Blogging.Domain/Volo/Blogging/Posts/IPostRepository.cs index 02bd68a6b0..9a49590015 100644 --- a/modules/blogging/src/Volo.Blogging.Domain/Volo/Blogging/Posts/IPostRepository.cs +++ b/modules/blogging/src/Volo.Blogging.Domain/Volo/Blogging/Posts/IPostRepository.cs @@ -9,8 +9,10 @@ namespace Volo.Blogging.Posts { Task> GetPostsByBlogId(Guid id); + Task IsPostUrlInUseAsync(Guid blogId, string url, Guid? excludingPostId = null); + Task GetPostByUrl(Guid blogId, string url); - + Task> GetOrderedList(Guid blogId,bool descending = false); } } diff --git a/modules/blogging/src/Volo.Blogging.EntityFrameworkCore/Volo/Blogging/Posts/EfCorePostRepository.cs b/modules/blogging/src/Volo.Blogging.EntityFrameworkCore/Volo/Blogging/Posts/EfCorePostRepository.cs index 01c5652902..b152f3ae7d 100644 --- a/modules/blogging/src/Volo.Blogging.EntityFrameworkCore/Volo/Blogging/Posts/EfCorePostRepository.cs +++ b/modules/blogging/src/Volo.Blogging.EntityFrameworkCore/Volo/Blogging/Posts/EfCorePostRepository.cs @@ -23,6 +23,18 @@ namespace Volo.Blogging.Posts return await DbSet.Where(p => p.BlogId == id).OrderByDescending(p=>p.CreationTime).ToListAsync(); } + public Task IsPostUrlInUseAsync(Guid blogId, string url, Guid? excludingPostId = null) + { + var query = DbSet.Where(p => blogId == p.BlogId && p.Url == url); + + if (excludingPostId != null) + { + query = query.Where(p => excludingPostId != p.Id); + } + + return query.AnyAsync(); + } + public async Task GetPostByUrl(Guid blogId, string url) { var post = await DbSet.FirstOrDefaultAsync(p => p.BlogId == blogId && p.Url == url); diff --git a/modules/blogging/src/Volo.Blogging.MongoDB/Volo/Blogging/Posts/MongoPostRepository.cs b/modules/blogging/src/Volo.Blogging.MongoDB/Volo/Blogging/Posts/MongoPostRepository.cs index 2e7675a898..e12e5f29de 100644 --- a/modules/blogging/src/Volo.Blogging.MongoDB/Volo/Blogging/Posts/MongoPostRepository.cs +++ b/modules/blogging/src/Volo.Blogging.MongoDB/Volo/Blogging/Posts/MongoPostRepository.cs @@ -21,6 +21,19 @@ namespace Volo.Blogging.Posts return await GetMongoQueryable().Where(p => p.BlogId == id).OrderByDescending(p => p.CreationTime).ToListAsync(); } + + public Task IsPostUrlInUseAsync(Guid blogId, string url, Guid? excludingPostId = null) + { + var query = GetMongoQueryable().Where(p => blogId == p.BlogId && p.Url == url); + + if (excludingPostId != null) + { + query = query.Where(p => excludingPostId != p.Id); + } + + return query.AnyAsync(); + } + public async Task GetPostByUrl(Guid blogId, string url) { var post = await GetMongoQueryable().FirstOrDefaultAsync(p => p.BlogId == blogId && p.Url == url); @@ -36,12 +49,12 @@ namespace Volo.Blogging.Posts public async Task> GetOrderedList(Guid blogId, bool @descending = false) { var query = GetMongoQueryable().Where(x => x.BlogId == blogId); - + if (!descending) { return await query.OrderBy(x => x.CreationTime).ToListAsync(); } - + return await query.OrderByDescending(x => x.CreationTime).ToListAsync(); } } diff --git a/modules/client-simulation/demo/Volo.ClientSimulation.Demo/package.json b/modules/client-simulation/demo/Volo.ClientSimulation.Demo/package.json index 32abffa6e8..ca54119683 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": "^3.2.0" + "@abp/aspnetcore.mvc.ui.theme.basic": "^3.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 972be20fa8..9f74aafa41 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@^3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-3.2.0.tgz#207277419356a14f686421de0ee320fad0d6857f" - integrity sha512-4xn4BPQu9QL3sM47QtPNwOei9/fnRw3dXCL7vlJBCU70jL8911C6D/Pj/CBqCEMMVPI6M4GE7Ls4AwKTvgFeTw== +"@abp/aspnetcore.mvc.ui.theme.basic@^3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-3.2.1.tgz#d8f9af85b6114d35bba5942e303b3a4b89c8cd75" + integrity sha512-utHlyw/xbtDqqA0ETrYTxZ8ZO49tI6FP3BAvRdevbhozdG8/el6BWpifZysKJv2VIm6d5P7DXD3uymCd5iX6EA== dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~3.2.0" + "@abp/aspnetcore.mvc.ui.theme.shared" "~3.2.1" -"@abp/aspnetcore.mvc.ui.theme.shared@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-3.2.0.tgz#bed24c1d28f6e85d58fa963911a09e8b2998c1b6" - integrity sha512-Ap1dPCvL7r31oFyi+3YPviFkDly5FZfWbHq2bURsEbscembpc6DOSfXehvuZ2BjqsZF3n/HX0Y1lX4irUqKqjg== - dependencies: - "@abp/aspnetcore.mvc.ui" "~3.2.0" - "@abp/bootstrap" "~3.2.0" - "@abp/bootstrap-datepicker" "~3.2.0" - "@abp/datatables.net-bs4" "~3.2.0" - "@abp/font-awesome" "~3.2.0" - "@abp/jquery-form" "~3.2.0" - "@abp/jquery-validation-unobtrusive" "~3.2.0" - "@abp/lodash" "~3.2.0" - "@abp/luxon" "~3.2.0" - "@abp/malihu-custom-scrollbar-plugin" "~3.2.0" - "@abp/select2" "~3.2.0" - "@abp/sweetalert" "~3.2.0" - "@abp/timeago" "~3.2.0" - "@abp/toastr" "~3.2.0" - -"@abp/aspnetcore.mvc.ui@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-3.2.0.tgz#01f80b9f663f4d95ceac733761833cf4648e92b5" - integrity sha512-NzH1UxEoE/FVT0LLjMNq5eSsiORLe5dE+aKr7jjbaxcuVr7QI7KI9ry6xWAZk+0cbGvsUAY0xqrMxxqiLpskxQ== +"@abp/aspnetcore.mvc.ui.theme.shared@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-3.2.1.tgz#b628602dca8d1809e32f423962cff56379a790b0" + integrity sha512-aWZAaFnN9Ncyzy84wPTfUVtcyh98Sxu4m+fsGY5XtwA/nwDTDVtLMq81ueJWyFgN9GNk8+lT6VXfPDpA/MJo/A== + dependencies: + "@abp/aspnetcore.mvc.ui" "~3.2.1" + "@abp/bootstrap" "~3.2.1" + "@abp/bootstrap-datepicker" "~3.2.1" + "@abp/datatables.net-bs4" "~3.2.1" + "@abp/font-awesome" "~3.2.1" + "@abp/jquery-form" "~3.2.1" + "@abp/jquery-validation-unobtrusive" "~3.2.1" + "@abp/lodash" "~3.2.1" + "@abp/luxon" "~3.2.1" + "@abp/malihu-custom-scrollbar-plugin" "~3.2.1" + "@abp/select2" "~3.2.1" + "@abp/sweetalert" "~3.2.1" + "@abp/timeago" "~3.2.1" + "@abp/toastr" "~3.2.1" + +"@abp/aspnetcore.mvc.ui@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-3.2.1.tgz#dc0d2c331bf09ef0f79cec739e0f64edb1105084" + integrity sha512-Fpn16MeK71Uhw6636nlXCQaSwN9lN6QFUIGIICcWU+2eMA8fK4ZtavaYGG4mWqjkd4wzUHCz2AZbmbxK7bVnng== dependencies: ansi-colors "^4.1.1" extend-object "^1.0.0" @@ -41,145 +41,145 @@ path "^0.12.7" rimraf "^3.0.2" -"@abp/bootstrap-datepicker@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-3.2.0.tgz#0a1813d8a84dd6eb6cf647244a4a91900364deb1" - integrity sha512-w7YyA5TRZqGL3qYyArwfrRc4/qWQMT0BPYDOsGMrtPJZDWeZL7WPezuiIvKNdI71BfUq6XiA1+wwMfqjcClZ2g== +"@abp/bootstrap-datepicker@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-3.2.1.tgz#5cb75bc53fab86f7b28bfc5fbfcbf233432d75ca" + integrity sha512-KzTDZTMd/TBaTDNuPF4+T+0zsmEimD2Uq8TlNw7knEEyo7a/lsfBNkBF9Xc8bjZcbC76BqajytsTzI1yftM4Uw== dependencies: bootstrap-datepicker "^1.9.0" -"@abp/bootstrap@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-3.2.0.tgz#d249338b0151734f99b8e366aea6fc17d5ef9b37" - integrity sha512-hx9r7EGb1vJrHAdw3D8Cpudv++hrM4dKoKtOKnQbxGG+Q9vwVS6SKquVxJum+bEZWa1CgXvT6co0IDOlW3pDhg== +"@abp/bootstrap@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-3.2.1.tgz#9574414f1e170240dacdf78408af34830264db97" + integrity sha512-gLIr4d5xfw5TSpSHIKr7oKznkdIbGhS+gtBitP1BFVLOU2h7/d6uTZoopC+JQU16DGvn8njo8W4DL7Amh9FOqQ== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" bootstrap "^4.5.0" bootstrap-v4-rtl "4.4.1-2" -"@abp/core@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-3.2.0.tgz#e9f07bde581b07e1b904bec3b12e0ccfc2a50125" - integrity sha512-X3iWv8QxAbqKJMoTb3vfvwGYmD9uZ+p+zn5q5Hoybyq9fjEcevpkdX7OiLvO8M+NEwCKa81wtkvvM2BnEV6Igg== +"@abp/core@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-3.2.1.tgz#3c133f67394d716df3e49f1eeb934c586df755e5" + integrity sha512-GbjrFO+oKl4JuZkYdeWtE+N837XRQr0hoX8O3pI1eAnuMku48QhGec2ZpSJuqG+c3wX6PHTZPIyHse4X+y6QgA== dependencies: - "@abp/utils" "^3.2.0" + "@abp/utils" "^3.2.1" -"@abp/datatables.net-bs4@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs4/-/datatables.net-bs4-3.2.0.tgz#8551c0ac5e29b037a86b141f41052e7a3038be89" - integrity sha512-i2LVTKAllgzhc21rb0GQ0YHtmOMyCT+6P3ZelqkoLdp56D63rVhdAOHrqjebrEHMehsuCUV2XH908kakXWIPXA== +"@abp/datatables.net-bs4@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs4/-/datatables.net-bs4-3.2.1.tgz#b008b2964472fd8c8286a7c4b1e903d93a52e760" + integrity sha512-C/MmA6URugDD1tdUS6zS413ycHCjefeIG7nnJrtJmCZix7mfbdrp/Km/vKbE1KMSEYWis0w/SxIEy0kbkIW4OQ== dependencies: - "@abp/datatables.net" "~3.2.0" + "@abp/datatables.net" "~3.2.1" datatables.net-bs4 "^1.10.21" -"@abp/datatables.net@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-3.2.0.tgz#effd0ec603b15c0de2d1db993d1416b46f4e3146" - integrity sha512-6UX/WqdlRfb3BQ2cw7LbUlMimDXtx7rHanTTWq44g+Wc8fn4fVcYyo9RWCYYOd2MWm9pElEvuzG1AzaOamjW9Q== +"@abp/datatables.net@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-3.2.1.tgz#ba7d4c875ad2bc126687bc5d8e627f3c4d7fb2f4" + integrity sha512-o8/K6RGnPkQUe5ClAxyHNBOevVBnb8qSM4NXRXR2AUtEvjal+4UL9QOf1LZ0zPv4OAjaaAiOAp9Pmbv4FWuZ8Q== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" datatables.net "^1.10.21" -"@abp/font-awesome@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-3.2.0.tgz#ad75daf1c084c2c6a0aeccc092057627ce898652" - integrity sha512-FAWBYWwg2ZtKO+0/lS/bc4YFnR7IehQ2Y+y1srIypgSY/739X4aUWb0YDW1tE0QrrFfQ//f16AyIKPynGl0T5Q== +"@abp/font-awesome@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-3.2.1.tgz#d54a6d9627fdfeb6c615550f09241d0c805e3d39" + integrity sha512-5BlAuIX4qFdf/mvycUAREmVQ8jg0tRtDnVXt0E8kUtzghhEGG91NfcZIaB4zaWAwuJSyqqjS/VJ/URy1g50NZQ== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" "@fortawesome/fontawesome-free" "^5.13.0" -"@abp/jquery-form@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-3.2.0.tgz#b1b408c0f380c8dfd99c063251f2f1fd86dff14c" - integrity sha512-ZC38zLqlMm67nONg+7ZSC7ExzLZApZ2nZ3/yM6J5LNa7IOgzDGPZgbDRBiwFdC3vIB04LhnNr83YrEvIaUnIzQ== +"@abp/jquery-form@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-3.2.1.tgz#9280b28e2103fc80b9124e3a53f2f0e03ac4bb46" + integrity sha512-Dy0wTCcmWgygrru59VPnlVw7qLu8aLTZOTpMPbSva502O19O+H7FljF9r0J7eYgoO6pcTO4R1tE/Yib3DwIBFg== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-3.2.0.tgz#91b996c743e5b1423a4d01d8808788a4bf4adb32" - integrity sha512-FSkGWvIkZTd2LITbTCdyno0ml30PZZmGYCazowHprh1iuhx0C+yCd9U/kfZ3rLoZAFtWjz0ZUq1Z7G5xXHB97A== +"@abp/jquery-validation-unobtrusive@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-3.2.1.tgz#8f0b54f0d39b00ab93638fe1537ae7bd77e3e78e" + integrity sha512-mr/jZVm8QuYO1vWcNo3ytuQEeMBvjnMiTrvoUzY1OXX+HUFR6oi8FohXgxFUypElAqQ8jelV9K0qonX1zTQhcg== dependencies: - "@abp/jquery-validation" "~3.2.0" + "@abp/jquery-validation" "~3.2.1" jquery-validation-unobtrusive "^3.2.11" -"@abp/jquery-validation@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-3.2.0.tgz#1de41e9167b41a956ce2f6e3d6f16d023fccd078" - integrity sha512-FlP7btUvAJfGoi0g8Hm474jlhtweyd/P6dRu2spApUOpKjMyUNFpp/nphmr0iQvx7JGeeaAaUhQJ2v5UKy/Z8w== +"@abp/jquery-validation@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-3.2.1.tgz#b5330eb404f357936d16f3dd81752076bfee963d" + integrity sha512-nmubyFyA8TbLdsJt8MAspSRN4St8Xn8ICB8ancdiyxbS/6u9oeKlvP4++ZZ881NlFkPsyo7GkHjfl29pNzzzJA== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" jquery-validation "^1.19.2" -"@abp/jquery@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-3.2.0.tgz#eabc0bafef3cf2b64f672c562bda1f1002b07b7c" - integrity sha512-tlvQ79cqyJ+tXEf17Vdwi6O8yo0+7bmicyy5A/iYyWWJUjXGkiouQHjHkoZ2jeyxwvqn85tBbfjeRumcZdYRMA== +"@abp/jquery@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-3.2.1.tgz#c7ee0bbff0b480b8ed01f46d1ce07ebc8c35e4a2" + integrity sha512-AvfQ9rnnb+pQUDuGnuhpCB+FzWz3EqDptoeiCDQjPXxGql3Wk5GWw6QzvuREOXcU4CoUyzigyDgnO5WaSlx8kQ== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" jquery "~3.5.1" -"@abp/lodash@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-3.2.0.tgz#63e8c51fe9e760d7debca9129bfbf01be8c12d18" - integrity sha512-/rGkJMCgbA0JLkjMXenxz6q0BXRDwvYSLUu7XotNj/cbiHpT5yHHTnWQgwxVUKEVA9xtmYUH1h20J25n/VD/tg== +"@abp/lodash@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-3.2.1.tgz#7abfe7d572eaa628c033a6d50520b8510ecce79a" + integrity sha512-ZDte0vUfM1fBrs/mRq7yCuugtYZKoP/6pOEebDOMdM1GztAEKicq8s7EXxwbqE4+kjxqeHzReh7ZwCtFAf/Zew== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" lodash "^4.17.15" -"@abp/luxon@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-3.2.0.tgz#f94b595d15d78868a4acf73803a9da8609096d39" - integrity sha512-3FF9/W+Smp4FqRJ6F5vNxydXYraVgEUsrOBkaBexVkzT/l3zBkCmrJ8i+Eib8xBXpS6Ku4nmpqbqm1VYhlxKTQ== +"@abp/luxon@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-3.2.1.tgz#ad3473f24dbacd4d1bc15a07ee75cc1db7f1df6c" + integrity sha512-WZgAMHNx1beQSA48ZJ2x2g408iBXBUvKwBwAFJqbhNhEsO95tutO80j1LNHYvXCbrAatoz6K6IDRXDXV1U3zyg== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" luxon "^1.24.1" -"@abp/malihu-custom-scrollbar-plugin@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-3.2.0.tgz#bd11a36a37ec23d38cba116934398696379158b1" - integrity sha512-BYGICB55RsYHmaICnyWdCewo0uEbopmuuUuCJlE+2IY1I4JchSWG2mV//F+jOZQmlOsjYufK70BrQQEIr+ewXw== +"@abp/malihu-custom-scrollbar-plugin@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-3.2.1.tgz#f4a19c6de14c7193eaf6c55c429580dcbcfe3965" + integrity sha512-pu8Tuh67ruG1fLEud1eves/eiBCiuowL+LVLyW+iX1bByfVlOB40nMQ7UCMQ6Jvv31pTEK2dfQ/n8K3W/pFiWQ== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/select2@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-3.2.0.tgz#729f82695bbfd7ab3d7a90059a198f338037c867" - integrity sha512-83V8jIR8RGFJ3II5G7/bitlv44OHOEENKDrT639OYIxHfgWEWm4CBhcyCnlZJqv6xB2AVDfFPgCPlDGl3x3tmw== +"@abp/select2@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-3.2.1.tgz#8a04a6f5f10cc4a48a3da37bbc38ff655e626ddf" + integrity sha512-i/euJ+kTHakwCI3Hf9+NhiQG+MYlU0iwp6GRmS2uHqgkMd2gVjnBq+elA2jsi50PXpxowv4vdBCNHcicI58W2w== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" select2 "^4.0.13" -"@abp/sweetalert@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/sweetalert/-/sweetalert-3.2.0.tgz#05040b7276ca2ce62ffc20865d64fb6e0fdb62cb" - integrity sha512-BEgbWwWX2uOsVS/zV6OzlxRBCtSlqeAYdSkmDjQ7pzCthwZXPPFr1o8UXyp9W7GKwDg3lfWTQPkkm+2y587xEw== +"@abp/sweetalert@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/sweetalert/-/sweetalert-3.2.1.tgz#be99820491499fea06259fbc584e799a51cbabf3" + integrity sha512-If5UJQVJ05aEbxPHrwRpuEzCT5ygOHmPzpBblpzSo5XxNNDGGlumnwYmtbXBSXutXrIR0b5//Bo1EgBVtmJHOg== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" sweetalert "^2.1.2" -"@abp/timeago@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-3.2.0.tgz#e4a207566c00ccb3161ee91c6f6ce26419e4bbaf" - integrity sha512-VUk8c3hITZfu5aA21XB2Qaw5fwoeAl36Piy0Cb3aUOCFjyGWg19htXxDoT7rzqZ5UJFN0VRYg9MzciXZrFN5/w== +"@abp/timeago@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-3.2.1.tgz#4e5e6c76d5440de65646a076ce1a9d7225882243" + integrity sha512-4WLWoCYiSg5zYPcogV47TXA+YomDHHY0YfHHWmr6TP2bHd5ghsnMqnnkt58nUN9Psd77teo+Mo9jgR0h2IxRwQ== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" timeago "^1.6.7" -"@abp/toastr@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-3.2.0.tgz#059e1e1e998207a6f75db2bfe717bec2a0b6d955" - integrity sha512-EKikZVQDaX/uQfc0rWsW2x+UDsO4r80KC3pLvRaLXW5IEwEhTpYwZDUGReOEQ8YEk7UKOXrVJA07mxkbdOzyAw== +"@abp/toastr@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-3.2.1.tgz#d35b44234ca6cbd5da6cc5f65d15e827bd7970dc" + integrity sha512-nBmWGL49psSF2tcNnR6PGBcfFAxo2u5HHNRzv2c2z46ZEGFa5DjuY46KZC24jMWY+yprINQewhKTmQUqJvaHqA== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" toastr "^2.1.4" -"@abp/utils@^3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-3.2.0.tgz#084918379f2c5e43c1e52291ba6667f3ea3c1f33" - integrity sha512-DZsvF/I5o3r0D1+2B61KvJX78/tJ5uj9MaPq00Z/sxXdqsP2SQQmjhMm+Lb0FgGMK06XIoF9eDgM3Hu0y0H3cQ== +"@abp/utils@^3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-3.2.1.tgz#960a0bbdfb781bbd6fb05e80bba2b9d95f2ae44c" + integrity sha512-bqYa1VIi1tZXCUbP2Z1WlcgPD4/wjhDVM1jiAN9UzDls1K3u+e2LyR4gLoN39WW1ULjCIhyzEAw/JgTcMmpUBw== dependencies: just-compare "^1.3.0" diff --git a/modules/cms-kit/angular/package.json b/modules/cms-kit/angular/package.json index 3c883b278e..b10b355025 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": "~3.2.0", - "@abp/ng.identity": "~3.2.0", - "@abp/ng.setting-management": "~3.2.0", - "@abp/ng.tenant-management": "~3.2.0", - "@abp/ng.theme.basic": "~3.2.0", + "@abp/ng.account": "~3.2.1", + "@abp/ng.identity": "~3.2.1", + "@abp/ng.setting-management": "~3.2.1", + "@abp/ng.tenant-management": "~3.2.1", + "@abp/ng.theme.basic": "~3.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 1806d9cad0..28c2183e6f 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": ">=3.2.0", - "@abp/ng.theme.shared": ">=3.2.0" + "@abp/ng.core": ">=3.2.1", + "@abp/ng.theme.shared": ">=3.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 fba2dab1f7..3c54abaaa7 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": "^3.2.0" + "@abp/aspnetcore.mvc.ui.theme.basic": "^3.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 72a5d2df3d..b8e6718657 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@^3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-3.2.0.tgz#207277419356a14f686421de0ee320fad0d6857f" - integrity sha512-4xn4BPQu9QL3sM47QtPNwOei9/fnRw3dXCL7vlJBCU70jL8911C6D/Pj/CBqCEMMVPI6M4GE7Ls4AwKTvgFeTw== +"@abp/aspnetcore.mvc.ui.theme.basic@^3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-3.2.1.tgz#d8f9af85b6114d35bba5942e303b3a4b89c8cd75" + integrity sha512-utHlyw/xbtDqqA0ETrYTxZ8ZO49tI6FP3BAvRdevbhozdG8/el6BWpifZysKJv2VIm6d5P7DXD3uymCd5iX6EA== dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~3.2.0" + "@abp/aspnetcore.mvc.ui.theme.shared" "~3.2.1" -"@abp/aspnetcore.mvc.ui.theme.shared@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-3.2.0.tgz#bed24c1d28f6e85d58fa963911a09e8b2998c1b6" - integrity sha512-Ap1dPCvL7r31oFyi+3YPviFkDly5FZfWbHq2bURsEbscembpc6DOSfXehvuZ2BjqsZF3n/HX0Y1lX4irUqKqjg== - dependencies: - "@abp/aspnetcore.mvc.ui" "~3.2.0" - "@abp/bootstrap" "~3.2.0" - "@abp/bootstrap-datepicker" "~3.2.0" - "@abp/datatables.net-bs4" "~3.2.0" - "@abp/font-awesome" "~3.2.0" - "@abp/jquery-form" "~3.2.0" - "@abp/jquery-validation-unobtrusive" "~3.2.0" - "@abp/lodash" "~3.2.0" - "@abp/luxon" "~3.2.0" - "@abp/malihu-custom-scrollbar-plugin" "~3.2.0" - "@abp/select2" "~3.2.0" - "@abp/sweetalert" "~3.2.0" - "@abp/timeago" "~3.2.0" - "@abp/toastr" "~3.2.0" - -"@abp/aspnetcore.mvc.ui@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-3.2.0.tgz#01f80b9f663f4d95ceac733761833cf4648e92b5" - integrity sha512-NzH1UxEoE/FVT0LLjMNq5eSsiORLe5dE+aKr7jjbaxcuVr7QI7KI9ry6xWAZk+0cbGvsUAY0xqrMxxqiLpskxQ== +"@abp/aspnetcore.mvc.ui.theme.shared@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-3.2.1.tgz#b628602dca8d1809e32f423962cff56379a790b0" + integrity sha512-aWZAaFnN9Ncyzy84wPTfUVtcyh98Sxu4m+fsGY5XtwA/nwDTDVtLMq81ueJWyFgN9GNk8+lT6VXfPDpA/MJo/A== + dependencies: + "@abp/aspnetcore.mvc.ui" "~3.2.1" + "@abp/bootstrap" "~3.2.1" + "@abp/bootstrap-datepicker" "~3.2.1" + "@abp/datatables.net-bs4" "~3.2.1" + "@abp/font-awesome" "~3.2.1" + "@abp/jquery-form" "~3.2.1" + "@abp/jquery-validation-unobtrusive" "~3.2.1" + "@abp/lodash" "~3.2.1" + "@abp/luxon" "~3.2.1" + "@abp/malihu-custom-scrollbar-plugin" "~3.2.1" + "@abp/select2" "~3.2.1" + "@abp/sweetalert" "~3.2.1" + "@abp/timeago" "~3.2.1" + "@abp/toastr" "~3.2.1" + +"@abp/aspnetcore.mvc.ui@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-3.2.1.tgz#dc0d2c331bf09ef0f79cec739e0f64edb1105084" + integrity sha512-Fpn16MeK71Uhw6636nlXCQaSwN9lN6QFUIGIICcWU+2eMA8fK4ZtavaYGG4mWqjkd4wzUHCz2AZbmbxK7bVnng== dependencies: ansi-colors "^4.1.1" extend-object "^1.0.0" @@ -41,145 +41,145 @@ path "^0.12.7" rimraf "^3.0.2" -"@abp/bootstrap-datepicker@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-3.2.0.tgz#0a1813d8a84dd6eb6cf647244a4a91900364deb1" - integrity sha512-w7YyA5TRZqGL3qYyArwfrRc4/qWQMT0BPYDOsGMrtPJZDWeZL7WPezuiIvKNdI71BfUq6XiA1+wwMfqjcClZ2g== +"@abp/bootstrap-datepicker@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-3.2.1.tgz#5cb75bc53fab86f7b28bfc5fbfcbf233432d75ca" + integrity sha512-KzTDZTMd/TBaTDNuPF4+T+0zsmEimD2Uq8TlNw7knEEyo7a/lsfBNkBF9Xc8bjZcbC76BqajytsTzI1yftM4Uw== dependencies: bootstrap-datepicker "^1.9.0" -"@abp/bootstrap@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-3.2.0.tgz#d249338b0151734f99b8e366aea6fc17d5ef9b37" - integrity sha512-hx9r7EGb1vJrHAdw3D8Cpudv++hrM4dKoKtOKnQbxGG+Q9vwVS6SKquVxJum+bEZWa1CgXvT6co0IDOlW3pDhg== +"@abp/bootstrap@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-3.2.1.tgz#9574414f1e170240dacdf78408af34830264db97" + integrity sha512-gLIr4d5xfw5TSpSHIKr7oKznkdIbGhS+gtBitP1BFVLOU2h7/d6uTZoopC+JQU16DGvn8njo8W4DL7Amh9FOqQ== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" bootstrap "^4.5.0" bootstrap-v4-rtl "4.4.1-2" -"@abp/core@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-3.2.0.tgz#e9f07bde581b07e1b904bec3b12e0ccfc2a50125" - integrity sha512-X3iWv8QxAbqKJMoTb3vfvwGYmD9uZ+p+zn5q5Hoybyq9fjEcevpkdX7OiLvO8M+NEwCKa81wtkvvM2BnEV6Igg== +"@abp/core@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-3.2.1.tgz#3c133f67394d716df3e49f1eeb934c586df755e5" + integrity sha512-GbjrFO+oKl4JuZkYdeWtE+N837XRQr0hoX8O3pI1eAnuMku48QhGec2ZpSJuqG+c3wX6PHTZPIyHse4X+y6QgA== dependencies: - "@abp/utils" "^3.2.0" + "@abp/utils" "^3.2.1" -"@abp/datatables.net-bs4@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs4/-/datatables.net-bs4-3.2.0.tgz#8551c0ac5e29b037a86b141f41052e7a3038be89" - integrity sha512-i2LVTKAllgzhc21rb0GQ0YHtmOMyCT+6P3ZelqkoLdp56D63rVhdAOHrqjebrEHMehsuCUV2XH908kakXWIPXA== +"@abp/datatables.net-bs4@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs4/-/datatables.net-bs4-3.2.1.tgz#b008b2964472fd8c8286a7c4b1e903d93a52e760" + integrity sha512-C/MmA6URugDD1tdUS6zS413ycHCjefeIG7nnJrtJmCZix7mfbdrp/Km/vKbE1KMSEYWis0w/SxIEy0kbkIW4OQ== dependencies: - "@abp/datatables.net" "~3.2.0" + "@abp/datatables.net" "~3.2.1" datatables.net-bs4 "^1.10.21" -"@abp/datatables.net@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-3.2.0.tgz#effd0ec603b15c0de2d1db993d1416b46f4e3146" - integrity sha512-6UX/WqdlRfb3BQ2cw7LbUlMimDXtx7rHanTTWq44g+Wc8fn4fVcYyo9RWCYYOd2MWm9pElEvuzG1AzaOamjW9Q== +"@abp/datatables.net@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-3.2.1.tgz#ba7d4c875ad2bc126687bc5d8e627f3c4d7fb2f4" + integrity sha512-o8/K6RGnPkQUe5ClAxyHNBOevVBnb8qSM4NXRXR2AUtEvjal+4UL9QOf1LZ0zPv4OAjaaAiOAp9Pmbv4FWuZ8Q== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" datatables.net "^1.10.21" -"@abp/font-awesome@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-3.2.0.tgz#ad75daf1c084c2c6a0aeccc092057627ce898652" - integrity sha512-FAWBYWwg2ZtKO+0/lS/bc4YFnR7IehQ2Y+y1srIypgSY/739X4aUWb0YDW1tE0QrrFfQ//f16AyIKPynGl0T5Q== +"@abp/font-awesome@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-3.2.1.tgz#d54a6d9627fdfeb6c615550f09241d0c805e3d39" + integrity sha512-5BlAuIX4qFdf/mvycUAREmVQ8jg0tRtDnVXt0E8kUtzghhEGG91NfcZIaB4zaWAwuJSyqqjS/VJ/URy1g50NZQ== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" "@fortawesome/fontawesome-free" "^5.13.0" -"@abp/jquery-form@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-3.2.0.tgz#b1b408c0f380c8dfd99c063251f2f1fd86dff14c" - integrity sha512-ZC38zLqlMm67nONg+7ZSC7ExzLZApZ2nZ3/yM6J5LNa7IOgzDGPZgbDRBiwFdC3vIB04LhnNr83YrEvIaUnIzQ== +"@abp/jquery-form@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-3.2.1.tgz#9280b28e2103fc80b9124e3a53f2f0e03ac4bb46" + integrity sha512-Dy0wTCcmWgygrru59VPnlVw7qLu8aLTZOTpMPbSva502O19O+H7FljF9r0J7eYgoO6pcTO4R1tE/Yib3DwIBFg== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-3.2.0.tgz#91b996c743e5b1423a4d01d8808788a4bf4adb32" - integrity sha512-FSkGWvIkZTd2LITbTCdyno0ml30PZZmGYCazowHprh1iuhx0C+yCd9U/kfZ3rLoZAFtWjz0ZUq1Z7G5xXHB97A== +"@abp/jquery-validation-unobtrusive@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-3.2.1.tgz#8f0b54f0d39b00ab93638fe1537ae7bd77e3e78e" + integrity sha512-mr/jZVm8QuYO1vWcNo3ytuQEeMBvjnMiTrvoUzY1OXX+HUFR6oi8FohXgxFUypElAqQ8jelV9K0qonX1zTQhcg== dependencies: - "@abp/jquery-validation" "~3.2.0" + "@abp/jquery-validation" "~3.2.1" jquery-validation-unobtrusive "^3.2.11" -"@abp/jquery-validation@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-3.2.0.tgz#1de41e9167b41a956ce2f6e3d6f16d023fccd078" - integrity sha512-FlP7btUvAJfGoi0g8Hm474jlhtweyd/P6dRu2spApUOpKjMyUNFpp/nphmr0iQvx7JGeeaAaUhQJ2v5UKy/Z8w== +"@abp/jquery-validation@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-3.2.1.tgz#b5330eb404f357936d16f3dd81752076bfee963d" + integrity sha512-nmubyFyA8TbLdsJt8MAspSRN4St8Xn8ICB8ancdiyxbS/6u9oeKlvP4++ZZ881NlFkPsyo7GkHjfl29pNzzzJA== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" jquery-validation "^1.19.2" -"@abp/jquery@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-3.2.0.tgz#eabc0bafef3cf2b64f672c562bda1f1002b07b7c" - integrity sha512-tlvQ79cqyJ+tXEf17Vdwi6O8yo0+7bmicyy5A/iYyWWJUjXGkiouQHjHkoZ2jeyxwvqn85tBbfjeRumcZdYRMA== +"@abp/jquery@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-3.2.1.tgz#c7ee0bbff0b480b8ed01f46d1ce07ebc8c35e4a2" + integrity sha512-AvfQ9rnnb+pQUDuGnuhpCB+FzWz3EqDptoeiCDQjPXxGql3Wk5GWw6QzvuREOXcU4CoUyzigyDgnO5WaSlx8kQ== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" jquery "~3.5.1" -"@abp/lodash@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-3.2.0.tgz#63e8c51fe9e760d7debca9129bfbf01be8c12d18" - integrity sha512-/rGkJMCgbA0JLkjMXenxz6q0BXRDwvYSLUu7XotNj/cbiHpT5yHHTnWQgwxVUKEVA9xtmYUH1h20J25n/VD/tg== +"@abp/lodash@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-3.2.1.tgz#7abfe7d572eaa628c033a6d50520b8510ecce79a" + integrity sha512-ZDte0vUfM1fBrs/mRq7yCuugtYZKoP/6pOEebDOMdM1GztAEKicq8s7EXxwbqE4+kjxqeHzReh7ZwCtFAf/Zew== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" lodash "^4.17.15" -"@abp/luxon@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-3.2.0.tgz#f94b595d15d78868a4acf73803a9da8609096d39" - integrity sha512-3FF9/W+Smp4FqRJ6F5vNxydXYraVgEUsrOBkaBexVkzT/l3zBkCmrJ8i+Eib8xBXpS6Ku4nmpqbqm1VYhlxKTQ== +"@abp/luxon@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-3.2.1.tgz#ad3473f24dbacd4d1bc15a07ee75cc1db7f1df6c" + integrity sha512-WZgAMHNx1beQSA48ZJ2x2g408iBXBUvKwBwAFJqbhNhEsO95tutO80j1LNHYvXCbrAatoz6K6IDRXDXV1U3zyg== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" luxon "^1.24.1" -"@abp/malihu-custom-scrollbar-plugin@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-3.2.0.tgz#bd11a36a37ec23d38cba116934398696379158b1" - integrity sha512-BYGICB55RsYHmaICnyWdCewo0uEbopmuuUuCJlE+2IY1I4JchSWG2mV//F+jOZQmlOsjYufK70BrQQEIr+ewXw== +"@abp/malihu-custom-scrollbar-plugin@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-3.2.1.tgz#f4a19c6de14c7193eaf6c55c429580dcbcfe3965" + integrity sha512-pu8Tuh67ruG1fLEud1eves/eiBCiuowL+LVLyW+iX1bByfVlOB40nMQ7UCMQ6Jvv31pTEK2dfQ/n8K3W/pFiWQ== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/select2@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-3.2.0.tgz#729f82695bbfd7ab3d7a90059a198f338037c867" - integrity sha512-83V8jIR8RGFJ3II5G7/bitlv44OHOEENKDrT639OYIxHfgWEWm4CBhcyCnlZJqv6xB2AVDfFPgCPlDGl3x3tmw== +"@abp/select2@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-3.2.1.tgz#8a04a6f5f10cc4a48a3da37bbc38ff655e626ddf" + integrity sha512-i/euJ+kTHakwCI3Hf9+NhiQG+MYlU0iwp6GRmS2uHqgkMd2gVjnBq+elA2jsi50PXpxowv4vdBCNHcicI58W2w== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" select2 "^4.0.13" -"@abp/sweetalert@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/sweetalert/-/sweetalert-3.2.0.tgz#05040b7276ca2ce62ffc20865d64fb6e0fdb62cb" - integrity sha512-BEgbWwWX2uOsVS/zV6OzlxRBCtSlqeAYdSkmDjQ7pzCthwZXPPFr1o8UXyp9W7GKwDg3lfWTQPkkm+2y587xEw== +"@abp/sweetalert@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/sweetalert/-/sweetalert-3.2.1.tgz#be99820491499fea06259fbc584e799a51cbabf3" + integrity sha512-If5UJQVJ05aEbxPHrwRpuEzCT5ygOHmPzpBblpzSo5XxNNDGGlumnwYmtbXBSXutXrIR0b5//Bo1EgBVtmJHOg== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" sweetalert "^2.1.2" -"@abp/timeago@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-3.2.0.tgz#e4a207566c00ccb3161ee91c6f6ce26419e4bbaf" - integrity sha512-VUk8c3hITZfu5aA21XB2Qaw5fwoeAl36Piy0Cb3aUOCFjyGWg19htXxDoT7rzqZ5UJFN0VRYg9MzciXZrFN5/w== +"@abp/timeago@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-3.2.1.tgz#4e5e6c76d5440de65646a076ce1a9d7225882243" + integrity sha512-4WLWoCYiSg5zYPcogV47TXA+YomDHHY0YfHHWmr6TP2bHd5ghsnMqnnkt58nUN9Psd77teo+Mo9jgR0h2IxRwQ== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" timeago "^1.6.7" -"@abp/toastr@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-3.2.0.tgz#059e1e1e998207a6f75db2bfe717bec2a0b6d955" - integrity sha512-EKikZVQDaX/uQfc0rWsW2x+UDsO4r80KC3pLvRaLXW5IEwEhTpYwZDUGReOEQ8YEk7UKOXrVJA07mxkbdOzyAw== +"@abp/toastr@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-3.2.1.tgz#d35b44234ca6cbd5da6cc5f65d15e827bd7970dc" + integrity sha512-nBmWGL49psSF2tcNnR6PGBcfFAxo2u5HHNRzv2c2z46ZEGFa5DjuY46KZC24jMWY+yprINQewhKTmQUqJvaHqA== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" toastr "^2.1.4" -"@abp/utils@^3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-3.2.0.tgz#084918379f2c5e43c1e52291ba6667f3ea3c1f33" - integrity sha512-DZsvF/I5o3r0D1+2B61KvJX78/tJ5uj9MaPq00Z/sxXdqsP2SQQmjhMm+Lb0FgGMK06XIoF9eDgM3Hu0y0H3cQ== +"@abp/utils@^3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-3.2.1.tgz#960a0bbdfb781bbd6fb05e80bba2b9d95f2ae44c" + integrity sha512-bqYa1VIi1tZXCUbP2Z1WlcgPD4/wjhDVM1jiAN9UzDls1K3u+e2LyR4gLoN39WW1ULjCIhyzEAw/JgTcMmpUBw== 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 9b79ab6170..64a770f40e 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": "^3.2.0" + "@abp/aspnetcore.mvc.ui.theme.basic": "^3.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 a37f397509..fb3a5a17a8 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@^3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-3.2.0.tgz#207277419356a14f686421de0ee320fad0d6857f" - integrity sha512-4xn4BPQu9QL3sM47QtPNwOei9/fnRw3dXCL7vlJBCU70jL8911C6D/Pj/CBqCEMMVPI6M4GE7Ls4AwKTvgFeTw== +"@abp/aspnetcore.mvc.ui.theme.basic@^3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-3.2.1.tgz#d8f9af85b6114d35bba5942e303b3a4b89c8cd75" + integrity sha512-utHlyw/xbtDqqA0ETrYTxZ8ZO49tI6FP3BAvRdevbhozdG8/el6BWpifZysKJv2VIm6d5P7DXD3uymCd5iX6EA== dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~3.2.0" + "@abp/aspnetcore.mvc.ui.theme.shared" "~3.2.1" -"@abp/aspnetcore.mvc.ui.theme.shared@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-3.2.0.tgz#bed24c1d28f6e85d58fa963911a09e8b2998c1b6" - integrity sha512-Ap1dPCvL7r31oFyi+3YPviFkDly5FZfWbHq2bURsEbscembpc6DOSfXehvuZ2BjqsZF3n/HX0Y1lX4irUqKqjg== - dependencies: - "@abp/aspnetcore.mvc.ui" "~3.2.0" - "@abp/bootstrap" "~3.2.0" - "@abp/bootstrap-datepicker" "~3.2.0" - "@abp/datatables.net-bs4" "~3.2.0" - "@abp/font-awesome" "~3.2.0" - "@abp/jquery-form" "~3.2.0" - "@abp/jquery-validation-unobtrusive" "~3.2.0" - "@abp/lodash" "~3.2.0" - "@abp/luxon" "~3.2.0" - "@abp/malihu-custom-scrollbar-plugin" "~3.2.0" - "@abp/select2" "~3.2.0" - "@abp/sweetalert" "~3.2.0" - "@abp/timeago" "~3.2.0" - "@abp/toastr" "~3.2.0" - -"@abp/aspnetcore.mvc.ui@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-3.2.0.tgz#01f80b9f663f4d95ceac733761833cf4648e92b5" - integrity sha512-NzH1UxEoE/FVT0LLjMNq5eSsiORLe5dE+aKr7jjbaxcuVr7QI7KI9ry6xWAZk+0cbGvsUAY0xqrMxxqiLpskxQ== +"@abp/aspnetcore.mvc.ui.theme.shared@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-3.2.1.tgz#b628602dca8d1809e32f423962cff56379a790b0" + integrity sha512-aWZAaFnN9Ncyzy84wPTfUVtcyh98Sxu4m+fsGY5XtwA/nwDTDVtLMq81ueJWyFgN9GNk8+lT6VXfPDpA/MJo/A== + dependencies: + "@abp/aspnetcore.mvc.ui" "~3.2.1" + "@abp/bootstrap" "~3.2.1" + "@abp/bootstrap-datepicker" "~3.2.1" + "@abp/datatables.net-bs4" "~3.2.1" + "@abp/font-awesome" "~3.2.1" + "@abp/jquery-form" "~3.2.1" + "@abp/jquery-validation-unobtrusive" "~3.2.1" + "@abp/lodash" "~3.2.1" + "@abp/luxon" "~3.2.1" + "@abp/malihu-custom-scrollbar-plugin" "~3.2.1" + "@abp/select2" "~3.2.1" + "@abp/sweetalert" "~3.2.1" + "@abp/timeago" "~3.2.1" + "@abp/toastr" "~3.2.1" + +"@abp/aspnetcore.mvc.ui@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-3.2.1.tgz#dc0d2c331bf09ef0f79cec739e0f64edb1105084" + integrity sha512-Fpn16MeK71Uhw6636nlXCQaSwN9lN6QFUIGIICcWU+2eMA8fK4ZtavaYGG4mWqjkd4wzUHCz2AZbmbxK7bVnng== dependencies: ansi-colors "^4.1.1" extend-object "^1.0.0" @@ -41,145 +41,145 @@ path "^0.12.7" rimraf "^3.0.2" -"@abp/bootstrap-datepicker@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-3.2.0.tgz#0a1813d8a84dd6eb6cf647244a4a91900364deb1" - integrity sha512-w7YyA5TRZqGL3qYyArwfrRc4/qWQMT0BPYDOsGMrtPJZDWeZL7WPezuiIvKNdI71BfUq6XiA1+wwMfqjcClZ2g== +"@abp/bootstrap-datepicker@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-3.2.1.tgz#5cb75bc53fab86f7b28bfc5fbfcbf233432d75ca" + integrity sha512-KzTDZTMd/TBaTDNuPF4+T+0zsmEimD2Uq8TlNw7knEEyo7a/lsfBNkBF9Xc8bjZcbC76BqajytsTzI1yftM4Uw== dependencies: bootstrap-datepicker "^1.9.0" -"@abp/bootstrap@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-3.2.0.tgz#d249338b0151734f99b8e366aea6fc17d5ef9b37" - integrity sha512-hx9r7EGb1vJrHAdw3D8Cpudv++hrM4dKoKtOKnQbxGG+Q9vwVS6SKquVxJum+bEZWa1CgXvT6co0IDOlW3pDhg== +"@abp/bootstrap@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-3.2.1.tgz#9574414f1e170240dacdf78408af34830264db97" + integrity sha512-gLIr4d5xfw5TSpSHIKr7oKznkdIbGhS+gtBitP1BFVLOU2h7/d6uTZoopC+JQU16DGvn8njo8W4DL7Amh9FOqQ== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" bootstrap "^4.5.0" bootstrap-v4-rtl "4.4.1-2" -"@abp/core@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-3.2.0.tgz#e9f07bde581b07e1b904bec3b12e0ccfc2a50125" - integrity sha512-X3iWv8QxAbqKJMoTb3vfvwGYmD9uZ+p+zn5q5Hoybyq9fjEcevpkdX7OiLvO8M+NEwCKa81wtkvvM2BnEV6Igg== +"@abp/core@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-3.2.1.tgz#3c133f67394d716df3e49f1eeb934c586df755e5" + integrity sha512-GbjrFO+oKl4JuZkYdeWtE+N837XRQr0hoX8O3pI1eAnuMku48QhGec2ZpSJuqG+c3wX6PHTZPIyHse4X+y6QgA== dependencies: - "@abp/utils" "^3.2.0" + "@abp/utils" "^3.2.1" -"@abp/datatables.net-bs4@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs4/-/datatables.net-bs4-3.2.0.tgz#8551c0ac5e29b037a86b141f41052e7a3038be89" - integrity sha512-i2LVTKAllgzhc21rb0GQ0YHtmOMyCT+6P3ZelqkoLdp56D63rVhdAOHrqjebrEHMehsuCUV2XH908kakXWIPXA== +"@abp/datatables.net-bs4@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs4/-/datatables.net-bs4-3.2.1.tgz#b008b2964472fd8c8286a7c4b1e903d93a52e760" + integrity sha512-C/MmA6URugDD1tdUS6zS413ycHCjefeIG7nnJrtJmCZix7mfbdrp/Km/vKbE1KMSEYWis0w/SxIEy0kbkIW4OQ== dependencies: - "@abp/datatables.net" "~3.2.0" + "@abp/datatables.net" "~3.2.1" datatables.net-bs4 "^1.10.21" -"@abp/datatables.net@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-3.2.0.tgz#effd0ec603b15c0de2d1db993d1416b46f4e3146" - integrity sha512-6UX/WqdlRfb3BQ2cw7LbUlMimDXtx7rHanTTWq44g+Wc8fn4fVcYyo9RWCYYOd2MWm9pElEvuzG1AzaOamjW9Q== +"@abp/datatables.net@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-3.2.1.tgz#ba7d4c875ad2bc126687bc5d8e627f3c4d7fb2f4" + integrity sha512-o8/K6RGnPkQUe5ClAxyHNBOevVBnb8qSM4NXRXR2AUtEvjal+4UL9QOf1LZ0zPv4OAjaaAiOAp9Pmbv4FWuZ8Q== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" datatables.net "^1.10.21" -"@abp/font-awesome@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-3.2.0.tgz#ad75daf1c084c2c6a0aeccc092057627ce898652" - integrity sha512-FAWBYWwg2ZtKO+0/lS/bc4YFnR7IehQ2Y+y1srIypgSY/739X4aUWb0YDW1tE0QrrFfQ//f16AyIKPynGl0T5Q== +"@abp/font-awesome@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-3.2.1.tgz#d54a6d9627fdfeb6c615550f09241d0c805e3d39" + integrity sha512-5BlAuIX4qFdf/mvycUAREmVQ8jg0tRtDnVXt0E8kUtzghhEGG91NfcZIaB4zaWAwuJSyqqjS/VJ/URy1g50NZQ== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" "@fortawesome/fontawesome-free" "^5.13.0" -"@abp/jquery-form@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-3.2.0.tgz#b1b408c0f380c8dfd99c063251f2f1fd86dff14c" - integrity sha512-ZC38zLqlMm67nONg+7ZSC7ExzLZApZ2nZ3/yM6J5LNa7IOgzDGPZgbDRBiwFdC3vIB04LhnNr83YrEvIaUnIzQ== +"@abp/jquery-form@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-3.2.1.tgz#9280b28e2103fc80b9124e3a53f2f0e03ac4bb46" + integrity sha512-Dy0wTCcmWgygrru59VPnlVw7qLu8aLTZOTpMPbSva502O19O+H7FljF9r0J7eYgoO6pcTO4R1tE/Yib3DwIBFg== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-3.2.0.tgz#91b996c743e5b1423a4d01d8808788a4bf4adb32" - integrity sha512-FSkGWvIkZTd2LITbTCdyno0ml30PZZmGYCazowHprh1iuhx0C+yCd9U/kfZ3rLoZAFtWjz0ZUq1Z7G5xXHB97A== +"@abp/jquery-validation-unobtrusive@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-3.2.1.tgz#8f0b54f0d39b00ab93638fe1537ae7bd77e3e78e" + integrity sha512-mr/jZVm8QuYO1vWcNo3ytuQEeMBvjnMiTrvoUzY1OXX+HUFR6oi8FohXgxFUypElAqQ8jelV9K0qonX1zTQhcg== dependencies: - "@abp/jquery-validation" "~3.2.0" + "@abp/jquery-validation" "~3.2.1" jquery-validation-unobtrusive "^3.2.11" -"@abp/jquery-validation@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-3.2.0.tgz#1de41e9167b41a956ce2f6e3d6f16d023fccd078" - integrity sha512-FlP7btUvAJfGoi0g8Hm474jlhtweyd/P6dRu2spApUOpKjMyUNFpp/nphmr0iQvx7JGeeaAaUhQJ2v5UKy/Z8w== +"@abp/jquery-validation@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-3.2.1.tgz#b5330eb404f357936d16f3dd81752076bfee963d" + integrity sha512-nmubyFyA8TbLdsJt8MAspSRN4St8Xn8ICB8ancdiyxbS/6u9oeKlvP4++ZZ881NlFkPsyo7GkHjfl29pNzzzJA== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" jquery-validation "^1.19.2" -"@abp/jquery@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-3.2.0.tgz#eabc0bafef3cf2b64f672c562bda1f1002b07b7c" - integrity sha512-tlvQ79cqyJ+tXEf17Vdwi6O8yo0+7bmicyy5A/iYyWWJUjXGkiouQHjHkoZ2jeyxwvqn85tBbfjeRumcZdYRMA== +"@abp/jquery@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-3.2.1.tgz#c7ee0bbff0b480b8ed01f46d1ce07ebc8c35e4a2" + integrity sha512-AvfQ9rnnb+pQUDuGnuhpCB+FzWz3EqDptoeiCDQjPXxGql3Wk5GWw6QzvuREOXcU4CoUyzigyDgnO5WaSlx8kQ== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" jquery "~3.5.1" -"@abp/lodash@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-3.2.0.tgz#63e8c51fe9e760d7debca9129bfbf01be8c12d18" - integrity sha512-/rGkJMCgbA0JLkjMXenxz6q0BXRDwvYSLUu7XotNj/cbiHpT5yHHTnWQgwxVUKEVA9xtmYUH1h20J25n/VD/tg== +"@abp/lodash@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-3.2.1.tgz#7abfe7d572eaa628c033a6d50520b8510ecce79a" + integrity sha512-ZDte0vUfM1fBrs/mRq7yCuugtYZKoP/6pOEebDOMdM1GztAEKicq8s7EXxwbqE4+kjxqeHzReh7ZwCtFAf/Zew== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" lodash "^4.17.15" -"@abp/luxon@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-3.2.0.tgz#f94b595d15d78868a4acf73803a9da8609096d39" - integrity sha512-3FF9/W+Smp4FqRJ6F5vNxydXYraVgEUsrOBkaBexVkzT/l3zBkCmrJ8i+Eib8xBXpS6Ku4nmpqbqm1VYhlxKTQ== +"@abp/luxon@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-3.2.1.tgz#ad3473f24dbacd4d1bc15a07ee75cc1db7f1df6c" + integrity sha512-WZgAMHNx1beQSA48ZJ2x2g408iBXBUvKwBwAFJqbhNhEsO95tutO80j1LNHYvXCbrAatoz6K6IDRXDXV1U3zyg== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" luxon "^1.24.1" -"@abp/malihu-custom-scrollbar-plugin@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-3.2.0.tgz#bd11a36a37ec23d38cba116934398696379158b1" - integrity sha512-BYGICB55RsYHmaICnyWdCewo0uEbopmuuUuCJlE+2IY1I4JchSWG2mV//F+jOZQmlOsjYufK70BrQQEIr+ewXw== +"@abp/malihu-custom-scrollbar-plugin@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-3.2.1.tgz#f4a19c6de14c7193eaf6c55c429580dcbcfe3965" + integrity sha512-pu8Tuh67ruG1fLEud1eves/eiBCiuowL+LVLyW+iX1bByfVlOB40nMQ7UCMQ6Jvv31pTEK2dfQ/n8K3W/pFiWQ== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/select2@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-3.2.0.tgz#729f82695bbfd7ab3d7a90059a198f338037c867" - integrity sha512-83V8jIR8RGFJ3II5G7/bitlv44OHOEENKDrT639OYIxHfgWEWm4CBhcyCnlZJqv6xB2AVDfFPgCPlDGl3x3tmw== +"@abp/select2@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-3.2.1.tgz#8a04a6f5f10cc4a48a3da37bbc38ff655e626ddf" + integrity sha512-i/euJ+kTHakwCI3Hf9+NhiQG+MYlU0iwp6GRmS2uHqgkMd2gVjnBq+elA2jsi50PXpxowv4vdBCNHcicI58W2w== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" select2 "^4.0.13" -"@abp/sweetalert@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/sweetalert/-/sweetalert-3.2.0.tgz#05040b7276ca2ce62ffc20865d64fb6e0fdb62cb" - integrity sha512-BEgbWwWX2uOsVS/zV6OzlxRBCtSlqeAYdSkmDjQ7pzCthwZXPPFr1o8UXyp9W7GKwDg3lfWTQPkkm+2y587xEw== +"@abp/sweetalert@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/sweetalert/-/sweetalert-3.2.1.tgz#be99820491499fea06259fbc584e799a51cbabf3" + integrity sha512-If5UJQVJ05aEbxPHrwRpuEzCT5ygOHmPzpBblpzSo5XxNNDGGlumnwYmtbXBSXutXrIR0b5//Bo1EgBVtmJHOg== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" sweetalert "^2.1.2" -"@abp/timeago@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-3.2.0.tgz#e4a207566c00ccb3161ee91c6f6ce26419e4bbaf" - integrity sha512-VUk8c3hITZfu5aA21XB2Qaw5fwoeAl36Piy0Cb3aUOCFjyGWg19htXxDoT7rzqZ5UJFN0VRYg9MzciXZrFN5/w== +"@abp/timeago@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-3.2.1.tgz#4e5e6c76d5440de65646a076ce1a9d7225882243" + integrity sha512-4WLWoCYiSg5zYPcogV47TXA+YomDHHY0YfHHWmr6TP2bHd5ghsnMqnnkt58nUN9Psd77teo+Mo9jgR0h2IxRwQ== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" timeago "^1.6.7" -"@abp/toastr@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-3.2.0.tgz#059e1e1e998207a6f75db2bfe717bec2a0b6d955" - integrity sha512-EKikZVQDaX/uQfc0rWsW2x+UDsO4r80KC3pLvRaLXW5IEwEhTpYwZDUGReOEQ8YEk7UKOXrVJA07mxkbdOzyAw== +"@abp/toastr@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-3.2.1.tgz#d35b44234ca6cbd5da6cc5f65d15e827bd7970dc" + integrity sha512-nBmWGL49psSF2tcNnR6PGBcfFAxo2u5HHNRzv2c2z46ZEGFa5DjuY46KZC24jMWY+yprINQewhKTmQUqJvaHqA== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" toastr "^2.1.4" -"@abp/utils@^3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-3.2.0.tgz#084918379f2c5e43c1e52291ba6667f3ea3c1f33" - integrity sha512-DZsvF/I5o3r0D1+2B61KvJX78/tJ5uj9MaPq00Z/sxXdqsP2SQQmjhMm+Lb0FgGMK06XIoF9eDgM3Hu0y0H3cQ== +"@abp/utils@^3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-3.2.1.tgz#960a0bbdfb781bbd6fb05e80bba2b9d95f2ae44c" + integrity sha512-bqYa1VIi1tZXCUbP2Z1WlcgPD4/wjhDVM1jiAN9UzDls1K3u+e2LyR4gLoN39WW1ULjCIhyzEAw/JgTcMmpUBw== 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 9b79ab6170..64a770f40e 100644 --- a/modules/cms-kit/host/Volo.CmsKit.Web.Unified/package.json +++ b/modules/cms-kit/host/Volo.CmsKit.Web.Unified/package.json @@ -3,6 +3,6 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "^3.2.0" + "@abp/aspnetcore.mvc.ui.theme.basic": "^3.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 1a8ccc322d..f89fd42bb2 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@^3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-3.2.0.tgz#207277419356a14f686421de0ee320fad0d6857f" - integrity sha512-4xn4BPQu9QL3sM47QtPNwOei9/fnRw3dXCL7vlJBCU70jL8911C6D/Pj/CBqCEMMVPI6M4GE7Ls4AwKTvgFeTw== +"@abp/aspnetcore.mvc.ui.theme.basic@^3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-3.2.1.tgz#d8f9af85b6114d35bba5942e303b3a4b89c8cd75" + integrity sha512-utHlyw/xbtDqqA0ETrYTxZ8ZO49tI6FP3BAvRdevbhozdG8/el6BWpifZysKJv2VIm6d5P7DXD3uymCd5iX6EA== dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~3.2.0" + "@abp/aspnetcore.mvc.ui.theme.shared" "~3.2.1" -"@abp/aspnetcore.mvc.ui.theme.shared@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-3.2.0.tgz#bed24c1d28f6e85d58fa963911a09e8b2998c1b6" - integrity sha512-Ap1dPCvL7r31oFyi+3YPviFkDly5FZfWbHq2bURsEbscembpc6DOSfXehvuZ2BjqsZF3n/HX0Y1lX4irUqKqjg== - dependencies: - "@abp/aspnetcore.mvc.ui" "~3.2.0" - "@abp/bootstrap" "~3.2.0" - "@abp/bootstrap-datepicker" "~3.2.0" - "@abp/datatables.net-bs4" "~3.2.0" - "@abp/font-awesome" "~3.2.0" - "@abp/jquery-form" "~3.2.0" - "@abp/jquery-validation-unobtrusive" "~3.2.0" - "@abp/lodash" "~3.2.0" - "@abp/luxon" "~3.2.0" - "@abp/malihu-custom-scrollbar-plugin" "~3.2.0" - "@abp/select2" "~3.2.0" - "@abp/sweetalert" "~3.2.0" - "@abp/timeago" "~3.2.0" - "@abp/toastr" "~3.2.0" - -"@abp/aspnetcore.mvc.ui@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-3.2.0.tgz#01f80b9f663f4d95ceac733761833cf4648e92b5" - integrity sha512-NzH1UxEoE/FVT0LLjMNq5eSsiORLe5dE+aKr7jjbaxcuVr7QI7KI9ry6xWAZk+0cbGvsUAY0xqrMxxqiLpskxQ== +"@abp/aspnetcore.mvc.ui.theme.shared@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-3.2.1.tgz#b628602dca8d1809e32f423962cff56379a790b0" + integrity sha512-aWZAaFnN9Ncyzy84wPTfUVtcyh98Sxu4m+fsGY5XtwA/nwDTDVtLMq81ueJWyFgN9GNk8+lT6VXfPDpA/MJo/A== + dependencies: + "@abp/aspnetcore.mvc.ui" "~3.2.1" + "@abp/bootstrap" "~3.2.1" + "@abp/bootstrap-datepicker" "~3.2.1" + "@abp/datatables.net-bs4" "~3.2.1" + "@abp/font-awesome" "~3.2.1" + "@abp/jquery-form" "~3.2.1" + "@abp/jquery-validation-unobtrusive" "~3.2.1" + "@abp/lodash" "~3.2.1" + "@abp/luxon" "~3.2.1" + "@abp/malihu-custom-scrollbar-plugin" "~3.2.1" + "@abp/select2" "~3.2.1" + "@abp/sweetalert" "~3.2.1" + "@abp/timeago" "~3.2.1" + "@abp/toastr" "~3.2.1" + +"@abp/aspnetcore.mvc.ui@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-3.2.1.tgz#dc0d2c331bf09ef0f79cec739e0f64edb1105084" + integrity sha512-Fpn16MeK71Uhw6636nlXCQaSwN9lN6QFUIGIICcWU+2eMA8fK4ZtavaYGG4mWqjkd4wzUHCz2AZbmbxK7bVnng== dependencies: ansi-colors "^4.1.1" extend-object "^1.0.0" @@ -41,145 +41,145 @@ path "^0.12.7" rimraf "^3.0.2" -"@abp/bootstrap-datepicker@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-3.2.0.tgz#0a1813d8a84dd6eb6cf647244a4a91900364deb1" - integrity sha512-w7YyA5TRZqGL3qYyArwfrRc4/qWQMT0BPYDOsGMrtPJZDWeZL7WPezuiIvKNdI71BfUq6XiA1+wwMfqjcClZ2g== +"@abp/bootstrap-datepicker@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-3.2.1.tgz#5cb75bc53fab86f7b28bfc5fbfcbf233432d75ca" + integrity sha512-KzTDZTMd/TBaTDNuPF4+T+0zsmEimD2Uq8TlNw7knEEyo7a/lsfBNkBF9Xc8bjZcbC76BqajytsTzI1yftM4Uw== dependencies: bootstrap-datepicker "^1.9.0" -"@abp/bootstrap@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-3.2.0.tgz#d249338b0151734f99b8e366aea6fc17d5ef9b37" - integrity sha512-hx9r7EGb1vJrHAdw3D8Cpudv++hrM4dKoKtOKnQbxGG+Q9vwVS6SKquVxJum+bEZWa1CgXvT6co0IDOlW3pDhg== +"@abp/bootstrap@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-3.2.1.tgz#9574414f1e170240dacdf78408af34830264db97" + integrity sha512-gLIr4d5xfw5TSpSHIKr7oKznkdIbGhS+gtBitP1BFVLOU2h7/d6uTZoopC+JQU16DGvn8njo8W4DL7Amh9FOqQ== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" bootstrap "^4.5.0" bootstrap-v4-rtl "4.4.1-2" -"@abp/core@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-3.2.0.tgz#e9f07bde581b07e1b904bec3b12e0ccfc2a50125" - integrity sha512-X3iWv8QxAbqKJMoTb3vfvwGYmD9uZ+p+zn5q5Hoybyq9fjEcevpkdX7OiLvO8M+NEwCKa81wtkvvM2BnEV6Igg== +"@abp/core@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-3.2.1.tgz#3c133f67394d716df3e49f1eeb934c586df755e5" + integrity sha512-GbjrFO+oKl4JuZkYdeWtE+N837XRQr0hoX8O3pI1eAnuMku48QhGec2ZpSJuqG+c3wX6PHTZPIyHse4X+y6QgA== dependencies: - "@abp/utils" "^3.2.0" + "@abp/utils" "^3.2.1" -"@abp/datatables.net-bs4@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs4/-/datatables.net-bs4-3.2.0.tgz#8551c0ac5e29b037a86b141f41052e7a3038be89" - integrity sha512-i2LVTKAllgzhc21rb0GQ0YHtmOMyCT+6P3ZelqkoLdp56D63rVhdAOHrqjebrEHMehsuCUV2XH908kakXWIPXA== +"@abp/datatables.net-bs4@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs4/-/datatables.net-bs4-3.2.1.tgz#b008b2964472fd8c8286a7c4b1e903d93a52e760" + integrity sha512-C/MmA6URugDD1tdUS6zS413ycHCjefeIG7nnJrtJmCZix7mfbdrp/Km/vKbE1KMSEYWis0w/SxIEy0kbkIW4OQ== dependencies: - "@abp/datatables.net" "~3.2.0" + "@abp/datatables.net" "~3.2.1" datatables.net-bs4 "^1.10.21" -"@abp/datatables.net@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-3.2.0.tgz#effd0ec603b15c0de2d1db993d1416b46f4e3146" - integrity sha512-6UX/WqdlRfb3BQ2cw7LbUlMimDXtx7rHanTTWq44g+Wc8fn4fVcYyo9RWCYYOd2MWm9pElEvuzG1AzaOamjW9Q== +"@abp/datatables.net@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-3.2.1.tgz#ba7d4c875ad2bc126687bc5d8e627f3c4d7fb2f4" + integrity sha512-o8/K6RGnPkQUe5ClAxyHNBOevVBnb8qSM4NXRXR2AUtEvjal+4UL9QOf1LZ0zPv4OAjaaAiOAp9Pmbv4FWuZ8Q== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" datatables.net "^1.10.21" -"@abp/font-awesome@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-3.2.0.tgz#ad75daf1c084c2c6a0aeccc092057627ce898652" - integrity sha512-FAWBYWwg2ZtKO+0/lS/bc4YFnR7IehQ2Y+y1srIypgSY/739X4aUWb0YDW1tE0QrrFfQ//f16AyIKPynGl0T5Q== +"@abp/font-awesome@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-3.2.1.tgz#d54a6d9627fdfeb6c615550f09241d0c805e3d39" + integrity sha512-5BlAuIX4qFdf/mvycUAREmVQ8jg0tRtDnVXt0E8kUtzghhEGG91NfcZIaB4zaWAwuJSyqqjS/VJ/URy1g50NZQ== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" "@fortawesome/fontawesome-free" "^5.13.0" -"@abp/jquery-form@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-3.2.0.tgz#b1b408c0f380c8dfd99c063251f2f1fd86dff14c" - integrity sha512-ZC38zLqlMm67nONg+7ZSC7ExzLZApZ2nZ3/yM6J5LNa7IOgzDGPZgbDRBiwFdC3vIB04LhnNr83YrEvIaUnIzQ== +"@abp/jquery-form@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-3.2.1.tgz#9280b28e2103fc80b9124e3a53f2f0e03ac4bb46" + integrity sha512-Dy0wTCcmWgygrru59VPnlVw7qLu8aLTZOTpMPbSva502O19O+H7FljF9r0J7eYgoO6pcTO4R1tE/Yib3DwIBFg== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-3.2.0.tgz#91b996c743e5b1423a4d01d8808788a4bf4adb32" - integrity sha512-FSkGWvIkZTd2LITbTCdyno0ml30PZZmGYCazowHprh1iuhx0C+yCd9U/kfZ3rLoZAFtWjz0ZUq1Z7G5xXHB97A== +"@abp/jquery-validation-unobtrusive@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-3.2.1.tgz#8f0b54f0d39b00ab93638fe1537ae7bd77e3e78e" + integrity sha512-mr/jZVm8QuYO1vWcNo3ytuQEeMBvjnMiTrvoUzY1OXX+HUFR6oi8FohXgxFUypElAqQ8jelV9K0qonX1zTQhcg== dependencies: - "@abp/jquery-validation" "~3.2.0" + "@abp/jquery-validation" "~3.2.1" jquery-validation-unobtrusive "^3.2.11" -"@abp/jquery-validation@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-3.2.0.tgz#1de41e9167b41a956ce2f6e3d6f16d023fccd078" - integrity sha512-FlP7btUvAJfGoi0g8Hm474jlhtweyd/P6dRu2spApUOpKjMyUNFpp/nphmr0iQvx7JGeeaAaUhQJ2v5UKy/Z8w== +"@abp/jquery-validation@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-3.2.1.tgz#b5330eb404f357936d16f3dd81752076bfee963d" + integrity sha512-nmubyFyA8TbLdsJt8MAspSRN4St8Xn8ICB8ancdiyxbS/6u9oeKlvP4++ZZ881NlFkPsyo7GkHjfl29pNzzzJA== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" jquery-validation "^1.19.2" -"@abp/jquery@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-3.2.0.tgz#eabc0bafef3cf2b64f672c562bda1f1002b07b7c" - integrity sha512-tlvQ79cqyJ+tXEf17Vdwi6O8yo0+7bmicyy5A/iYyWWJUjXGkiouQHjHkoZ2jeyxwvqn85tBbfjeRumcZdYRMA== +"@abp/jquery@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-3.2.1.tgz#c7ee0bbff0b480b8ed01f46d1ce07ebc8c35e4a2" + integrity sha512-AvfQ9rnnb+pQUDuGnuhpCB+FzWz3EqDptoeiCDQjPXxGql3Wk5GWw6QzvuREOXcU4CoUyzigyDgnO5WaSlx8kQ== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" jquery "~3.5.1" -"@abp/lodash@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-3.2.0.tgz#63e8c51fe9e760d7debca9129bfbf01be8c12d18" - integrity sha512-/rGkJMCgbA0JLkjMXenxz6q0BXRDwvYSLUu7XotNj/cbiHpT5yHHTnWQgwxVUKEVA9xtmYUH1h20J25n/VD/tg== +"@abp/lodash@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-3.2.1.tgz#7abfe7d572eaa628c033a6d50520b8510ecce79a" + integrity sha512-ZDte0vUfM1fBrs/mRq7yCuugtYZKoP/6pOEebDOMdM1GztAEKicq8s7EXxwbqE4+kjxqeHzReh7ZwCtFAf/Zew== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" lodash "^4.17.15" -"@abp/luxon@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-3.2.0.tgz#f94b595d15d78868a4acf73803a9da8609096d39" - integrity sha512-3FF9/W+Smp4FqRJ6F5vNxydXYraVgEUsrOBkaBexVkzT/l3zBkCmrJ8i+Eib8xBXpS6Ku4nmpqbqm1VYhlxKTQ== +"@abp/luxon@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-3.2.1.tgz#ad3473f24dbacd4d1bc15a07ee75cc1db7f1df6c" + integrity sha512-WZgAMHNx1beQSA48ZJ2x2g408iBXBUvKwBwAFJqbhNhEsO95tutO80j1LNHYvXCbrAatoz6K6IDRXDXV1U3zyg== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" luxon "^1.24.1" -"@abp/malihu-custom-scrollbar-plugin@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-3.2.0.tgz#bd11a36a37ec23d38cba116934398696379158b1" - integrity sha512-BYGICB55RsYHmaICnyWdCewo0uEbopmuuUuCJlE+2IY1I4JchSWG2mV//F+jOZQmlOsjYufK70BrQQEIr+ewXw== +"@abp/malihu-custom-scrollbar-plugin@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-3.2.1.tgz#f4a19c6de14c7193eaf6c55c429580dcbcfe3965" + integrity sha512-pu8Tuh67ruG1fLEud1eves/eiBCiuowL+LVLyW+iX1bByfVlOB40nMQ7UCMQ6Jvv31pTEK2dfQ/n8K3W/pFiWQ== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/select2@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-3.2.0.tgz#729f82695bbfd7ab3d7a90059a198f338037c867" - integrity sha512-83V8jIR8RGFJ3II5G7/bitlv44OHOEENKDrT639OYIxHfgWEWm4CBhcyCnlZJqv6xB2AVDfFPgCPlDGl3x3tmw== +"@abp/select2@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-3.2.1.tgz#8a04a6f5f10cc4a48a3da37bbc38ff655e626ddf" + integrity sha512-i/euJ+kTHakwCI3Hf9+NhiQG+MYlU0iwp6GRmS2uHqgkMd2gVjnBq+elA2jsi50PXpxowv4vdBCNHcicI58W2w== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" select2 "^4.0.13" -"@abp/sweetalert@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/sweetalert/-/sweetalert-3.2.0.tgz#05040b7276ca2ce62ffc20865d64fb6e0fdb62cb" - integrity sha512-BEgbWwWX2uOsVS/zV6OzlxRBCtSlqeAYdSkmDjQ7pzCthwZXPPFr1o8UXyp9W7GKwDg3lfWTQPkkm+2y587xEw== +"@abp/sweetalert@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/sweetalert/-/sweetalert-3.2.1.tgz#be99820491499fea06259fbc584e799a51cbabf3" + integrity sha512-If5UJQVJ05aEbxPHrwRpuEzCT5ygOHmPzpBblpzSo5XxNNDGGlumnwYmtbXBSXutXrIR0b5//Bo1EgBVtmJHOg== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" sweetalert "^2.1.2" -"@abp/timeago@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-3.2.0.tgz#e4a207566c00ccb3161ee91c6f6ce26419e4bbaf" - integrity sha512-VUk8c3hITZfu5aA21XB2Qaw5fwoeAl36Piy0Cb3aUOCFjyGWg19htXxDoT7rzqZ5UJFN0VRYg9MzciXZrFN5/w== +"@abp/timeago@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-3.2.1.tgz#4e5e6c76d5440de65646a076ce1a9d7225882243" + integrity sha512-4WLWoCYiSg5zYPcogV47TXA+YomDHHY0YfHHWmr6TP2bHd5ghsnMqnnkt58nUN9Psd77teo+Mo9jgR0h2IxRwQ== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" timeago "^1.6.7" -"@abp/toastr@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-3.2.0.tgz#059e1e1e998207a6f75db2bfe717bec2a0b6d955" - integrity sha512-EKikZVQDaX/uQfc0rWsW2x+UDsO4r80KC3pLvRaLXW5IEwEhTpYwZDUGReOEQ8YEk7UKOXrVJA07mxkbdOzyAw== +"@abp/toastr@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-3.2.1.tgz#d35b44234ca6cbd5da6cc5f65d15e827bd7970dc" + integrity sha512-nBmWGL49psSF2tcNnR6PGBcfFAxo2u5HHNRzv2c2z46ZEGFa5DjuY46KZC24jMWY+yprINQewhKTmQUqJvaHqA== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" toastr "^2.1.4" -"@abp/utils@^3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-3.2.0.tgz#084918379f2c5e43c1e52291ba6667f3ea3c1f33" - integrity sha512-DZsvF/I5o3r0D1+2B61KvJX78/tJ5uj9MaPq00Z/sxXdqsP2SQQmjhMm+Lb0FgGMK06XIoF9eDgM3Hu0y0H3cQ== +"@abp/utils@^3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-3.2.1.tgz#960a0bbdfb781bbd6fb05e80bba2b9d95f2ae44c" + integrity sha512-bqYa1VIi1tZXCUbP2Z1WlcgPD4/wjhDVM1jiAN9UzDls1K3u+e2LyR4gLoN39WW1ULjCIhyzEAw/JgTcMmpUBw== 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 3c775e0c73..4dc0d9add5 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": "^3.2.0", - "@abp/docs": "^3.2.0" + "@abp/aspnetcore.mvc.ui.theme.basic": "^3.2.1", + "@abp/docs": "^3.2.1" } } diff --git a/modules/docs/app/VoloDocs.Web/yarn.lock b/modules/docs/app/VoloDocs.Web/yarn.lock index d3ad70f70e..b261cab6bf 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@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/anchor-js/-/anchor-js-3.2.0.tgz#df7e4483d2fbc9c3160031e42e6b27fff5d24d7b" - integrity sha512-rA1H6YWvS4bqGevdGM9H+D84ESh+Ka9eg7RzGoWyP4yK+/+Kgj8aOXPXtUrYlETfGwqg4dXQ1iu+AQUELcOaMQ== +"@abp/anchor-js@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/anchor-js/-/anchor-js-3.2.1.tgz#c8ba822de20c3eef9dd4708d9d3de591c7a86804" + integrity sha512-Ip8hJbi5GML36Rizb3feUhvpf286n5xBt76+QN9BIW+cLX7U93ECFQEkKbxWEx4GffI5MeMy3VDjdlbzlev75w== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" anchor-js "^4.2.2" -"@abp/aspnetcore.mvc.ui.theme.basic@^3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-3.2.0.tgz#207277419356a14f686421de0ee320fad0d6857f" - integrity sha512-4xn4BPQu9QL3sM47QtPNwOei9/fnRw3dXCL7vlJBCU70jL8911C6D/Pj/CBqCEMMVPI6M4GE7Ls4AwKTvgFeTw== +"@abp/aspnetcore.mvc.ui.theme.basic@^3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-3.2.1.tgz#d8f9af85b6114d35bba5942e303b3a4b89c8cd75" + integrity sha512-utHlyw/xbtDqqA0ETrYTxZ8ZO49tI6FP3BAvRdevbhozdG8/el6BWpifZysKJv2VIm6d5P7DXD3uymCd5iX6EA== dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~3.2.0" + "@abp/aspnetcore.mvc.ui.theme.shared" "~3.2.1" -"@abp/aspnetcore.mvc.ui.theme.shared@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-3.2.0.tgz#bed24c1d28f6e85d58fa963911a09e8b2998c1b6" - integrity sha512-Ap1dPCvL7r31oFyi+3YPviFkDly5FZfWbHq2bURsEbscembpc6DOSfXehvuZ2BjqsZF3n/HX0Y1lX4irUqKqjg== - dependencies: - "@abp/aspnetcore.mvc.ui" "~3.2.0" - "@abp/bootstrap" "~3.2.0" - "@abp/bootstrap-datepicker" "~3.2.0" - "@abp/datatables.net-bs4" "~3.2.0" - "@abp/font-awesome" "~3.2.0" - "@abp/jquery-form" "~3.2.0" - "@abp/jquery-validation-unobtrusive" "~3.2.0" - "@abp/lodash" "~3.2.0" - "@abp/luxon" "~3.2.0" - "@abp/malihu-custom-scrollbar-plugin" "~3.2.0" - "@abp/select2" "~3.2.0" - "@abp/sweetalert" "~3.2.0" - "@abp/timeago" "~3.2.0" - "@abp/toastr" "~3.2.0" - -"@abp/aspnetcore.mvc.ui@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-3.2.0.tgz#01f80b9f663f4d95ceac733761833cf4648e92b5" - integrity sha512-NzH1UxEoE/FVT0LLjMNq5eSsiORLe5dE+aKr7jjbaxcuVr7QI7KI9ry6xWAZk+0cbGvsUAY0xqrMxxqiLpskxQ== +"@abp/aspnetcore.mvc.ui.theme.shared@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-3.2.1.tgz#b628602dca8d1809e32f423962cff56379a790b0" + integrity sha512-aWZAaFnN9Ncyzy84wPTfUVtcyh98Sxu4m+fsGY5XtwA/nwDTDVtLMq81ueJWyFgN9GNk8+lT6VXfPDpA/MJo/A== + dependencies: + "@abp/aspnetcore.mvc.ui" "~3.2.1" + "@abp/bootstrap" "~3.2.1" + "@abp/bootstrap-datepicker" "~3.2.1" + "@abp/datatables.net-bs4" "~3.2.1" + "@abp/font-awesome" "~3.2.1" + "@abp/jquery-form" "~3.2.1" + "@abp/jquery-validation-unobtrusive" "~3.2.1" + "@abp/lodash" "~3.2.1" + "@abp/luxon" "~3.2.1" + "@abp/malihu-custom-scrollbar-plugin" "~3.2.1" + "@abp/select2" "~3.2.1" + "@abp/sweetalert" "~3.2.1" + "@abp/timeago" "~3.2.1" + "@abp/toastr" "~3.2.1" + +"@abp/aspnetcore.mvc.ui@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-3.2.1.tgz#dc0d2c331bf09ef0f79cec739e0f64edb1105084" + integrity sha512-Fpn16MeK71Uhw6636nlXCQaSwN9lN6QFUIGIICcWU+2eMA8fK4ZtavaYGG4mWqjkd4wzUHCz2AZbmbxK7bVnng== dependencies: ansi-colors "^4.1.1" extend-object "^1.0.0" @@ -49,181 +49,181 @@ path "^0.12.7" rimraf "^3.0.2" -"@abp/bootstrap-datepicker@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-3.2.0.tgz#0a1813d8a84dd6eb6cf647244a4a91900364deb1" - integrity sha512-w7YyA5TRZqGL3qYyArwfrRc4/qWQMT0BPYDOsGMrtPJZDWeZL7WPezuiIvKNdI71BfUq6XiA1+wwMfqjcClZ2g== +"@abp/bootstrap-datepicker@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-3.2.1.tgz#5cb75bc53fab86f7b28bfc5fbfcbf233432d75ca" + integrity sha512-KzTDZTMd/TBaTDNuPF4+T+0zsmEimD2Uq8TlNw7knEEyo7a/lsfBNkBF9Xc8bjZcbC76BqajytsTzI1yftM4Uw== dependencies: bootstrap-datepicker "^1.9.0" -"@abp/bootstrap@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-3.2.0.tgz#d249338b0151734f99b8e366aea6fc17d5ef9b37" - integrity sha512-hx9r7EGb1vJrHAdw3D8Cpudv++hrM4dKoKtOKnQbxGG+Q9vwVS6SKquVxJum+bEZWa1CgXvT6co0IDOlW3pDhg== +"@abp/bootstrap@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-3.2.1.tgz#9574414f1e170240dacdf78408af34830264db97" + integrity sha512-gLIr4d5xfw5TSpSHIKr7oKznkdIbGhS+gtBitP1BFVLOU2h7/d6uTZoopC+JQU16DGvn8njo8W4DL7Amh9FOqQ== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" bootstrap "^4.5.0" bootstrap-v4-rtl "4.4.1-2" -"@abp/clipboard@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-3.2.0.tgz#9c9f95c40639cabe89e6bc86ee0f33c853321225" - integrity sha512-WGonC5Hp4FCUBxevIt180QWIqOri0eO//mlRLBqj7gvo7H6zt5f4t90XKF24ZYWXjx7bCbIQQFt5t5ByeqdcJg== +"@abp/clipboard@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-3.2.1.tgz#ffb57db0e73ae7c96df78dc7b739e436c9654ae0" + integrity sha512-iLCMV8JVkvdDzWf83UlkSIuU4Tiz+/wdGjiCt7lQp538fCYO7EAqurfWwMbb1Kaz0CRFzt/+AbDrXw004AND2Q== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" clipboard "^2.0.6" -"@abp/core@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-3.2.0.tgz#e9f07bde581b07e1b904bec3b12e0ccfc2a50125" - integrity sha512-X3iWv8QxAbqKJMoTb3vfvwGYmD9uZ+p+zn5q5Hoybyq9fjEcevpkdX7OiLvO8M+NEwCKa81wtkvvM2BnEV6Igg== +"@abp/core@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-3.2.1.tgz#3c133f67394d716df3e49f1eeb934c586df755e5" + integrity sha512-GbjrFO+oKl4JuZkYdeWtE+N837XRQr0hoX8O3pI1eAnuMku48QhGec2ZpSJuqG+c3wX6PHTZPIyHse4X+y6QgA== dependencies: - "@abp/utils" "^3.2.0" + "@abp/utils" "^3.2.1" -"@abp/datatables.net-bs4@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs4/-/datatables.net-bs4-3.2.0.tgz#8551c0ac5e29b037a86b141f41052e7a3038be89" - integrity sha512-i2LVTKAllgzhc21rb0GQ0YHtmOMyCT+6P3ZelqkoLdp56D63rVhdAOHrqjebrEHMehsuCUV2XH908kakXWIPXA== +"@abp/datatables.net-bs4@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs4/-/datatables.net-bs4-3.2.1.tgz#b008b2964472fd8c8286a7c4b1e903d93a52e760" + integrity sha512-C/MmA6URugDD1tdUS6zS413ycHCjefeIG7nnJrtJmCZix7mfbdrp/Km/vKbE1KMSEYWis0w/SxIEy0kbkIW4OQ== dependencies: - "@abp/datatables.net" "~3.2.0" + "@abp/datatables.net" "~3.2.1" datatables.net-bs4 "^1.10.21" -"@abp/datatables.net@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-3.2.0.tgz#effd0ec603b15c0de2d1db993d1416b46f4e3146" - integrity sha512-6UX/WqdlRfb3BQ2cw7LbUlMimDXtx7rHanTTWq44g+Wc8fn4fVcYyo9RWCYYOd2MWm9pElEvuzG1AzaOamjW9Q== +"@abp/datatables.net@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-3.2.1.tgz#ba7d4c875ad2bc126687bc5d8e627f3c4d7fb2f4" + integrity sha512-o8/K6RGnPkQUe5ClAxyHNBOevVBnb8qSM4NXRXR2AUtEvjal+4UL9QOf1LZ0zPv4OAjaaAiOAp9Pmbv4FWuZ8Q== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" datatables.net "^1.10.21" -"@abp/docs@^3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/docs/-/docs-3.2.0.tgz#f4b5284af7ebbd1f5b9b741ebfb61ac2fd71fa4a" - integrity sha512-ZrCUHjrTba82NJRwZYUUyLxWIp6tu8ZdHpq1vnlfr5rZ+5m1vAx0dRi0VY3x50ZifIE65cqoI91F32fHYiE8KA== +"@abp/docs@^3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/docs/-/docs-3.2.1.tgz#2c5ed5c2f7696cfbf4068ad2046d8d175c298b26" + integrity sha512-3KE6t6u5GB+q7Y+SxPFxtvhtbgxiELPWrLDBkUZvI9u/QCrDzV1ZmlupgNhfKtk/T16s3JDXR6HtT67P3fOd1g== dependencies: - "@abp/anchor-js" "~3.2.0" - "@abp/clipboard" "~3.2.0" - "@abp/malihu-custom-scrollbar-plugin" "~3.2.0" - "@abp/popper.js" "~3.2.0" - "@abp/prismjs" "~3.2.0" + "@abp/anchor-js" "~3.2.1" + "@abp/clipboard" "~3.2.1" + "@abp/malihu-custom-scrollbar-plugin" "~3.2.1" + "@abp/popper.js" "~3.2.1" + "@abp/prismjs" "~3.2.1" -"@abp/font-awesome@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-3.2.0.tgz#ad75daf1c084c2c6a0aeccc092057627ce898652" - integrity sha512-FAWBYWwg2ZtKO+0/lS/bc4YFnR7IehQ2Y+y1srIypgSY/739X4aUWb0YDW1tE0QrrFfQ//f16AyIKPynGl0T5Q== +"@abp/font-awesome@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-3.2.1.tgz#d54a6d9627fdfeb6c615550f09241d0c805e3d39" + integrity sha512-5BlAuIX4qFdf/mvycUAREmVQ8jg0tRtDnVXt0E8kUtzghhEGG91NfcZIaB4zaWAwuJSyqqjS/VJ/URy1g50NZQ== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" "@fortawesome/fontawesome-free" "^5.13.0" -"@abp/jquery-form@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-3.2.0.tgz#b1b408c0f380c8dfd99c063251f2f1fd86dff14c" - integrity sha512-ZC38zLqlMm67nONg+7ZSC7ExzLZApZ2nZ3/yM6J5LNa7IOgzDGPZgbDRBiwFdC3vIB04LhnNr83YrEvIaUnIzQ== +"@abp/jquery-form@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-3.2.1.tgz#9280b28e2103fc80b9124e3a53f2f0e03ac4bb46" + integrity sha512-Dy0wTCcmWgygrru59VPnlVw7qLu8aLTZOTpMPbSva502O19O+H7FljF9r0J7eYgoO6pcTO4R1tE/Yib3DwIBFg== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-3.2.0.tgz#91b996c743e5b1423a4d01d8808788a4bf4adb32" - integrity sha512-FSkGWvIkZTd2LITbTCdyno0ml30PZZmGYCazowHprh1iuhx0C+yCd9U/kfZ3rLoZAFtWjz0ZUq1Z7G5xXHB97A== +"@abp/jquery-validation-unobtrusive@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-3.2.1.tgz#8f0b54f0d39b00ab93638fe1537ae7bd77e3e78e" + integrity sha512-mr/jZVm8QuYO1vWcNo3ytuQEeMBvjnMiTrvoUzY1OXX+HUFR6oi8FohXgxFUypElAqQ8jelV9K0qonX1zTQhcg== dependencies: - "@abp/jquery-validation" "~3.2.0" + "@abp/jquery-validation" "~3.2.1" jquery-validation-unobtrusive "^3.2.11" -"@abp/jquery-validation@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-3.2.0.tgz#1de41e9167b41a956ce2f6e3d6f16d023fccd078" - integrity sha512-FlP7btUvAJfGoi0g8Hm474jlhtweyd/P6dRu2spApUOpKjMyUNFpp/nphmr0iQvx7JGeeaAaUhQJ2v5UKy/Z8w== +"@abp/jquery-validation@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-3.2.1.tgz#b5330eb404f357936d16f3dd81752076bfee963d" + integrity sha512-nmubyFyA8TbLdsJt8MAspSRN4St8Xn8ICB8ancdiyxbS/6u9oeKlvP4++ZZ881NlFkPsyo7GkHjfl29pNzzzJA== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" jquery-validation "^1.19.2" -"@abp/jquery@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-3.2.0.tgz#eabc0bafef3cf2b64f672c562bda1f1002b07b7c" - integrity sha512-tlvQ79cqyJ+tXEf17Vdwi6O8yo0+7bmicyy5A/iYyWWJUjXGkiouQHjHkoZ2jeyxwvqn85tBbfjeRumcZdYRMA== +"@abp/jquery@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-3.2.1.tgz#c7ee0bbff0b480b8ed01f46d1ce07ebc8c35e4a2" + integrity sha512-AvfQ9rnnb+pQUDuGnuhpCB+FzWz3EqDptoeiCDQjPXxGql3Wk5GWw6QzvuREOXcU4CoUyzigyDgnO5WaSlx8kQ== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" jquery "~3.5.1" -"@abp/lodash@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-3.2.0.tgz#63e8c51fe9e760d7debca9129bfbf01be8c12d18" - integrity sha512-/rGkJMCgbA0JLkjMXenxz6q0BXRDwvYSLUu7XotNj/cbiHpT5yHHTnWQgwxVUKEVA9xtmYUH1h20J25n/VD/tg== +"@abp/lodash@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-3.2.1.tgz#7abfe7d572eaa628c033a6d50520b8510ecce79a" + integrity sha512-ZDte0vUfM1fBrs/mRq7yCuugtYZKoP/6pOEebDOMdM1GztAEKicq8s7EXxwbqE4+kjxqeHzReh7ZwCtFAf/Zew== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" lodash "^4.17.15" -"@abp/luxon@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-3.2.0.tgz#f94b595d15d78868a4acf73803a9da8609096d39" - integrity sha512-3FF9/W+Smp4FqRJ6F5vNxydXYraVgEUsrOBkaBexVkzT/l3zBkCmrJ8i+Eib8xBXpS6Ku4nmpqbqm1VYhlxKTQ== +"@abp/luxon@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-3.2.1.tgz#ad3473f24dbacd4d1bc15a07ee75cc1db7f1df6c" + integrity sha512-WZgAMHNx1beQSA48ZJ2x2g408iBXBUvKwBwAFJqbhNhEsO95tutO80j1LNHYvXCbrAatoz6K6IDRXDXV1U3zyg== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" luxon "^1.24.1" -"@abp/malihu-custom-scrollbar-plugin@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-3.2.0.tgz#bd11a36a37ec23d38cba116934398696379158b1" - integrity sha512-BYGICB55RsYHmaICnyWdCewo0uEbopmuuUuCJlE+2IY1I4JchSWG2mV//F+jOZQmlOsjYufK70BrQQEIr+ewXw== +"@abp/malihu-custom-scrollbar-plugin@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-3.2.1.tgz#f4a19c6de14c7193eaf6c55c429580dcbcfe3965" + integrity sha512-pu8Tuh67ruG1fLEud1eves/eiBCiuowL+LVLyW+iX1bByfVlOB40nMQ7UCMQ6Jvv31pTEK2dfQ/n8K3W/pFiWQ== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/popper.js@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/popper.js/-/popper.js-3.2.0.tgz#2b1c078ad56a8e80e4030154b0e30f9e07a5e103" - integrity sha512-mdmx6qrkZvOKYBD9n0cblMKygWYprn9Mw8BB468oV/vf6izzGYgiOsC2dtwXLrVsELIaPQMZZbKVeeyPxgiH0Q== +"@abp/popper.js@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/popper.js/-/popper.js-3.2.1.tgz#721d788582accf3ef61bff5772914311974cb3a6" + integrity sha512-AgqOsCPWX/GCY5RNpvkfBpKriCChAI1+kvO7m8h9vXpXfYITzeQ6TvR7x1iwhZTncv1zeUWcKTskq/J5U9DAcw== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" popper.js "^1.16.0" -"@abp/prismjs@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-3.2.0.tgz#11c7c3023f11097a3eb26d8a0c04f7fa39d9531b" - integrity sha512-OafE/K8rC7popNQDh1J97AtPuxVeAFWh/msfHE3K5nmdYABpl8U7190ITw5COcVjjFLCEONpkkhfN/9ZdAQ8fQ== +"@abp/prismjs@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-3.2.1.tgz#8f8ef367c9a10c3ec871d721055fbed4a8ec867a" + integrity sha512-+wcKmi/F66qGRmTk+oYgYmJo+b9kQvJ+BG/+vIsN+n3Dzb/sjaDmc18pMFhEKWy7P/Yq28NxZdK+qO1LgzTktg== dependencies: - "@abp/clipboard" "~3.2.0" - "@abp/core" "~3.2.0" + "@abp/clipboard" "~3.2.1" + "@abp/core" "~3.2.1" prismjs "^1.20.0" -"@abp/select2@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-3.2.0.tgz#729f82695bbfd7ab3d7a90059a198f338037c867" - integrity sha512-83V8jIR8RGFJ3II5G7/bitlv44OHOEENKDrT639OYIxHfgWEWm4CBhcyCnlZJqv6xB2AVDfFPgCPlDGl3x3tmw== +"@abp/select2@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-3.2.1.tgz#8a04a6f5f10cc4a48a3da37bbc38ff655e626ddf" + integrity sha512-i/euJ+kTHakwCI3Hf9+NhiQG+MYlU0iwp6GRmS2uHqgkMd2gVjnBq+elA2jsi50PXpxowv4vdBCNHcicI58W2w== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" select2 "^4.0.13" -"@abp/sweetalert@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/sweetalert/-/sweetalert-3.2.0.tgz#05040b7276ca2ce62ffc20865d64fb6e0fdb62cb" - integrity sha512-BEgbWwWX2uOsVS/zV6OzlxRBCtSlqeAYdSkmDjQ7pzCthwZXPPFr1o8UXyp9W7GKwDg3lfWTQPkkm+2y587xEw== +"@abp/sweetalert@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/sweetalert/-/sweetalert-3.2.1.tgz#be99820491499fea06259fbc584e799a51cbabf3" + integrity sha512-If5UJQVJ05aEbxPHrwRpuEzCT5ygOHmPzpBblpzSo5XxNNDGGlumnwYmtbXBSXutXrIR0b5//Bo1EgBVtmJHOg== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" sweetalert "^2.1.2" -"@abp/timeago@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-3.2.0.tgz#e4a207566c00ccb3161ee91c6f6ce26419e4bbaf" - integrity sha512-VUk8c3hITZfu5aA21XB2Qaw5fwoeAl36Piy0Cb3aUOCFjyGWg19htXxDoT7rzqZ5UJFN0VRYg9MzciXZrFN5/w== +"@abp/timeago@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-3.2.1.tgz#4e5e6c76d5440de65646a076ce1a9d7225882243" + integrity sha512-4WLWoCYiSg5zYPcogV47TXA+YomDHHY0YfHHWmr6TP2bHd5ghsnMqnnkt58nUN9Psd77teo+Mo9jgR0h2IxRwQ== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" timeago "^1.6.7" -"@abp/toastr@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-3.2.0.tgz#059e1e1e998207a6f75db2bfe717bec2a0b6d955" - integrity sha512-EKikZVQDaX/uQfc0rWsW2x+UDsO4r80KC3pLvRaLXW5IEwEhTpYwZDUGReOEQ8YEk7UKOXrVJA07mxkbdOzyAw== +"@abp/toastr@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-3.2.1.tgz#d35b44234ca6cbd5da6cc5f65d15e827bd7970dc" + integrity sha512-nBmWGL49psSF2tcNnR6PGBcfFAxo2u5HHNRzv2c2z46ZEGFa5DjuY46KZC24jMWY+yprINQewhKTmQUqJvaHqA== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" toastr "^2.1.4" -"@abp/utils@^3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-3.2.0.tgz#084918379f2c5e43c1e52291ba6667f3ea3c1f33" - integrity sha512-DZsvF/I5o3r0D1+2B61KvJX78/tJ5uj9MaPq00Z/sxXdqsP2SQQmjhMm+Lb0FgGMK06XIoF9eDgM3Hu0y0H3cQ== +"@abp/utils@^3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-3.2.1.tgz#960a0bbdfb781bbd6fb05e80bba2b9d95f2ae44c" + integrity sha512-bqYa1VIi1tZXCUbP2Z1WlcgPD4/wjhDVM1jiAN9UzDls1K3u+e2LyR4gLoN39WW1ULjCIhyzEAw/JgTcMmpUBw== dependencies: just-compare "^1.3.0" diff --git a/modules/docs/src/Volo.Docs.Admin.Application.Contracts/Volo/Docs/Admin/Documents/IDocumentAdminAppService.cs b/modules/docs/src/Volo.Docs.Admin.Application.Contracts/Volo/Docs/Admin/Documents/IDocumentAdminAppService.cs index 01c15f0eee..0770ec5d72 100644 --- a/modules/docs/src/Volo.Docs.Admin.Application.Contracts/Volo/Docs/Admin/Documents/IDocumentAdminAppService.cs +++ b/modules/docs/src/Volo.Docs.Admin.Application.Contracts/Volo/Docs/Admin/Documents/IDocumentAdminAppService.cs @@ -19,7 +19,5 @@ namespace Volo.Docs.Admin.Documents Task RemoveFromCacheAsync(Guid documentId); Task ReindexAsync(Guid documentId); - - Task DeleteFromDatabaseAsync(Guid documentId); } } diff --git a/modules/docs/src/Volo.Docs.Admin.Application.Contracts/Volo/Docs/Admin/Localization/Resources/Docs/ApplicationContracts/ar.json b/modules/docs/src/Volo.Docs.Admin.Application.Contracts/Volo/Docs/Admin/Localization/Resources/Docs/ApplicationContracts/ar.json index 3d22afabe9..4849da66e5 100644 --- a/modules/docs/src/Volo.Docs.Admin.Application.Contracts/Volo/Docs/Admin/Localization/Resources/Docs/ApplicationContracts/ar.json +++ b/modules/docs/src/Volo.Docs.Admin.Application.Contracts/Volo/Docs/Admin/Localization/Resources/Docs/ApplicationContracts/ar.json @@ -43,7 +43,6 @@ "RemovedFromCache": "تم الحذف من ذاكرة التخزين", "RemoveFromCacheConfirmation": "هل أنت متأكد من حذف هذا العنصر من ذاكرة التخزين؟", "ReIndexDocumentConfirmation": "هل أنت متأكد من إعادة فهرسة هذا العنصر؟", - "DeleteDocumentFromDbConfirmation": "هل أنت متأكد من حذف هذا العنصر من قاعدة البيانات؟", "DeleteFromDatabase": "حذف من قاعدة البيانات", "Deleted": "محذوف", "Search": "بحث", @@ -57,4 +56,4 @@ "FileName": "اسم الملف", "LastCachedTime": "وقت ذاكرة التخزين" } -} \ No newline at end of file +} diff --git a/modules/docs/src/Volo.Docs.Admin.Application.Contracts/Volo/Docs/Admin/Localization/Resources/Docs/ApplicationContracts/cs.json b/modules/docs/src/Volo.Docs.Admin.Application.Contracts/Volo/Docs/Admin/Localization/Resources/Docs/ApplicationContracts/cs.json index f02fa96f50..fa65dc8a72 100644 --- a/modules/docs/src/Volo.Docs.Admin.Application.Contracts/Volo/Docs/Admin/Localization/Resources/Docs/ApplicationContracts/cs.json +++ b/modules/docs/src/Volo.Docs.Admin.Application.Contracts/Volo/Docs/Admin/Localization/Resources/Docs/ApplicationContracts/cs.json @@ -43,7 +43,6 @@ "RemovedFromCache": "Odebráno z mezipaměti", "RemoveFromCacheConfirmation": "Opravdu chcete tuto položku odebrat z mezipaměti?", "ReIndexDocumentConfirmation": "Opravdu chcete tuto položku reindexovat?", - "DeleteDocumentFromDbConfirmation": "Opravdu chcete tuto položku odstranit z databáze?", "DeleteFromDatabase": "Odstranit z databáze", "Deleted": "Vymazáno", "Search": "Vyhledávání", diff --git a/modules/docs/src/Volo.Docs.Admin.Application.Contracts/Volo/Docs/Admin/Localization/Resources/Docs/ApplicationContracts/en.json b/modules/docs/src/Volo.Docs.Admin.Application.Contracts/Volo/Docs/Admin/Localization/Resources/Docs/ApplicationContracts/en.json index 8b940df86d..2b1571c0b9 100644 --- a/modules/docs/src/Volo.Docs.Admin.Application.Contracts/Volo/Docs/Admin/Localization/Resources/Docs/ApplicationContracts/en.json +++ b/modules/docs/src/Volo.Docs.Admin.Application.Contracts/Volo/Docs/Admin/Localization/Resources/Docs/ApplicationContracts/en.json @@ -43,7 +43,6 @@ "RemovedFromCache": "Removed from cache", "RemoveFromCacheConfirmation": "Are you sure you want to remove this item from cache?", "ReIndexDocumentConfirmation": "Are you sure you want to reindex this item?", - "DeleteDocumentFromDbConfirmation": "Are you sure you want to delete this item from database?", "DeleteFromDatabase": "Delete from database", "Deleted": "Deleted", "Search": "Search", diff --git a/modules/docs/src/Volo.Docs.Admin.Application.Contracts/Volo/Docs/Admin/Localization/Resources/Docs/ApplicationContracts/tr.json b/modules/docs/src/Volo.Docs.Admin.Application.Contracts/Volo/Docs/Admin/Localization/Resources/Docs/ApplicationContracts/tr.json index 319a901004..530283c91d 100644 --- a/modules/docs/src/Volo.Docs.Admin.Application.Contracts/Volo/Docs/Admin/Localization/Resources/Docs/ApplicationContracts/tr.json +++ b/modules/docs/src/Volo.Docs.Admin.Application.Contracts/Volo/Docs/Admin/Localization/Resources/Docs/ApplicationContracts/tr.json @@ -41,8 +41,7 @@ "RemovedFromCache": "Önbellekten kaldırıldı", "RemoveFromCacheConfirmation": "Bu maddeyi önbellekten kaldırmak istediğiniz emin misiniz?", "ReIndexDocumentConfirmation": "Bu maddeyi yeniden indekslemek istediğinize emin misiniz?", - "DeleteDocumentFromDbConfirmation": "Bu maddeyi veritabanından silmek istediğinize emin misiniz?", "DeleteFromDatabase": "Veritabanından sil", "Deleted": "Silindi" } -} \ No newline at end of file +} diff --git a/modules/docs/src/Volo.Docs.Admin.Application/Volo/Docs/Admin/Documents/DocumentAdminAppService.cs b/modules/docs/src/Volo.Docs.Admin.Application/Volo/Docs/Admin/Documents/DocumentAdminAppService.cs index c6758127cf..4f1a493a2b 100644 --- a/modules/docs/src/Volo.Docs.Admin.Application/Volo/Docs/Admin/Documents/DocumentAdminAppService.cs +++ b/modules/docs/src/Volo.Docs.Admin.Application/Volo/Docs/Admin/Documents/DocumentAdminAppService.cs @@ -205,10 +205,7 @@ namespace Volo.Docs.Admin.Documents ); await _documentUpdateCache.RemoveAsync(documentUpdateInfoCacheKey); - - document.LastCachedTime = DateTime.MinValue; - - await _documentRepository.UpdateAsync(document); + await _documentRepository.DeleteAsync(document); } public async Task ReindexAsync(Guid documentId) @@ -218,12 +215,6 @@ namespace Volo.Docs.Admin.Documents await _documentFullSearch.AddOrUpdateAsync(document); } - public async Task DeleteFromDatabaseAsync(Guid documentId) - { - var document = await _documentRepository.GetAsync(documentId); - await _documentRepository.DeleteAsync(document); - } - private async Task UpdateDocumentUpdateInfoCache(Document document) { var cacheKey = $"DocumentUpdateInfo{document.ProjectId}#{document.Name}#{document.LanguageCode}#{document.Version}"; diff --git a/modules/docs/src/Volo.Docs.Admin.HttpApi/Volo/Docs/Admin/DocumentsAdminController.cs b/modules/docs/src/Volo.Docs.Admin.HttpApi/Volo/Docs/Admin/DocumentsAdminController.cs index ff143bfdb0..99c3060f5d 100644 --- a/modules/docs/src/Volo.Docs.Admin.HttpApi/Volo/Docs/Admin/DocumentsAdminController.cs +++ b/modules/docs/src/Volo.Docs.Admin.HttpApi/Volo/Docs/Admin/DocumentsAdminController.cs @@ -63,12 +63,5 @@ namespace Volo.Docs.Admin { await _documentAdminAppService.ReindexAsync(documentId); } - - [HttpDelete] - [Route("DeleteDocumentFromDatabase")] - public async Task DeleteFromDatabaseAsync(Guid documentId) - { - await _documentAdminAppService.DeleteFromDatabaseAsync(documentId); - } } } diff --git a/modules/docs/src/Volo.Docs.Admin.Web/Pages/Docs/Admin/Documents/index.js b/modules/docs/src/Volo.Docs.Admin.Web/Pages/Docs/Admin/Documents/index.js index 3f0f30270f..23203a23f5 100644 --- a/modules/docs/src/Volo.Docs.Admin.Web/Pages/Docs/Admin/Documents/index.js +++ b/modules/docs/src/Volo.Docs.Admin.Web/Pages/Docs/Admin/Documents/index.js @@ -80,26 +80,7 @@ dataTable.ajax.reload(); }); }, - }, - { - text: l('DeleteFromDatabase'), - visible: abp.auth.isGranted( - 'Docs.Admin.Documents' - ), - confirmMessage: function (data) { - return l( - 'DeleteDocumentFromDbConfirmation' - ); - }, - action: function (data) { - service - .deleteFromDatabase(data.record.id) - .then(function () { - abp.message.success(l('Deleted')); - dataTable.ajax.reload(); - }); - }, - }, + } ], }, }, diff --git a/modules/identity/src/Volo.Abp.Identity.Domain.Shared/Volo/Abp/Identity/OrganizationUnitConsts.cs b/modules/identity/src/Volo.Abp.Identity.Domain.Shared/Volo/Abp/Identity/OrganizationUnitConsts.cs index 7338fc8a28..997a394a7d 100644 --- a/modules/identity/src/Volo.Abp.Identity.Domain.Shared/Volo/Abp/Identity/OrganizationUnitConsts.cs +++ b/modules/identity/src/Volo.Abp.Identity.Domain.Shared/Volo/Abp/Identity/OrganizationUnitConsts.cs @@ -3,7 +3,7 @@ public static class OrganizationUnitConsts { /// - /// Maximum length of the property. + /// Maximum length of the DisplayName property. /// public static int MaxDisplayNameLength { get; set; } = 128; @@ -18,7 +18,7 @@ public const int CodeUnitLength = 5; /// - /// Maximum length of the property. + /// Maximum length of the Code property. /// public const int MaxCodeLength = MaxDepth * (CodeUnitLength + 1) - 1; } diff --git a/modules/identity/test/Volo.Abp.Identity.Domain.Tests/Volo/Abp/Identity/IdentityRoleStore_Tests.cs b/modules/identity/test/Volo.Abp.Identity.Domain.Tests/Volo/Abp/Identity/IdentityRoleStore_Tests.cs index 11345a4a46..8f3ce4c2b0 100644 --- a/modules/identity/test/Volo.Abp.Identity.Domain.Tests/Volo/Abp/Identity/IdentityRoleStore_Tests.cs +++ b/modules/identity/test/Volo.Abp.Identity.Domain.Tests/Volo/Abp/Identity/IdentityRoleStore_Tests.cs @@ -168,7 +168,7 @@ namespace Volo.Abp.Identity } } - catch (Exception e) + catch { throw; } diff --git a/modules/virtual-file-explorer/app/Volo.Abp.VirtualFileExplorer.DemoApp/wwwroot/libs/abp/core/abp.js b/modules/virtual-file-explorer/app/Volo.Abp.VirtualFileExplorer.DemoApp/wwwroot/libs/abp/core/abp.js index 72af4bd106..fa42828306 100644 --- a/modules/virtual-file-explorer/app/Volo.Abp.VirtualFileExplorer.DemoApp/wwwroot/libs/abp/core/abp.js +++ b/modules/virtual-file-explorer/app/Volo.Abp.VirtualFileExplorer.DemoApp/wwwroot/libs/abp/core/abp.js @@ -136,38 +136,6 @@ var abp = abp || {}; }; abp.localization.defaultResourceName = undefined; - abp.localization.currentCulture = { - cultureName: undefined - }; - - var getMapValue = function (packageMaps, packageName, language) { - language = language || abp.localization.currentCulture.name; - if (!packageMaps || !packageName || !language) { - return language; - } - - var packageMap = packageMaps[packageName]; - if (!packageMap) { - return language; - } - - for (var i = 0; i < packageMap.length; i++) { - var map = packageMap[i]; - if (map.name === language){ - return map.value; - } - } - - return language; - }; - - abp.localization.getLanguagesMap = function (packageName, language) { - return getMapValue(abp.localization.languagesMap, packageName, language); - }; - - abp.localization.getLanguageFilesMap = function (packageName, language) { - return getMapValue(abp.localization.languageFilesMap, packageName, language); - }; /* AUTHORIZATION **********************************************/ @@ -362,7 +330,7 @@ var abp = abp || {}; }; /* opts: { - * + * * } */ abp.ui.unblock = function (opts) { @@ -616,7 +584,7 @@ var abp = abp || {}; * This is a simple implementation created to be used by ABP. * Please use a complete cookie library if you need. * @param {string} key - * @param {string} value + * @param {string} value * @param {Date} expireDate (optional). If not specified the cookie will expire at the end of session. * @param {string} path (optional) */ @@ -689,66 +657,10 @@ var abp = abp || {}; abp.security.antiForgery = abp.security.antiForgery || {}; abp.security.antiForgery.tokenCookieName = 'XSRF-TOKEN'; - abp.security.antiForgery.tokenHeaderName = 'RequestVerificationToken'; + abp.security.antiForgery.tokenHeaderName = 'X-XSRF-TOKEN'; abp.security.antiForgery.getToken = function () { return abp.utils.getCookieValue(abp.security.antiForgery.tokenCookieName); }; - /* CLOCK *****************************************/ - abp.clock = abp.clock || {}; - - abp.clock.kind = 'Unspecified'; - - abp.clock.supportsMultipleTimezone = function () { - return abp.clock.kind === 'Utc'; - }; - - var toLocal = function (date) { - return new Date( - date.getFullYear(), - date.getMonth(), - date.getDate(), - date.getHours(), - date.getMinutes(), - date.getSeconds(), - date.getMilliseconds() - ); - }; - - var toUtc = function (date) { - return Date.UTC( - date.getUTCFullYear(), - date.getUTCMonth(), - date.getUTCDate(), - date.getUTCHours(), - date.getUTCMinutes(), - date.getUTCSeconds(), - date.getUTCMilliseconds() - ); - }; - - abp.clock.now = function () { - if (abp.clock.kind === 'Utc') { - return toUtc(new Date()); - } - return new Date(); - }; - - abp.clock.normalize = function (date) { - var kind = abp.clock.kind; - - if (kind === 'Unspecified') { - return date; - } - - if (kind === 'Local') { - return toLocal(date); - } - - if (kind === 'Utc') { - return toUtc(date); - } - }; - -})(); +})(); \ No newline at end of file diff --git a/npm/lerna.json b/npm/lerna.json index 0dc2807678..cfe7e5f8db 100644 --- a/npm/lerna.json +++ b/npm/lerna.json @@ -1,5 +1,5 @@ { - "version": "3.2.0", + "version": "3.2.1", "packages": [ "packs/*" ], diff --git a/npm/ng-packs/lerna.version.json b/npm/ng-packs/lerna.version.json index 35ec182a4a..2f9ffe1511 100644 --- a/npm/ng-packs/lerna.version.json +++ b/npm/ng-packs/lerna.version.json @@ -1,5 +1,5 @@ { - "version": "3.2.0", + "version": "3.2.1", "packages": [ "packages/*" ], diff --git a/npm/ng-packs/package.json b/npm/ng-packs/package.json index 75a726c871..2fda4ba33d 100644 --- a/npm/ng-packs/package.json +++ b/npm/ng-packs/package.json @@ -25,17 +25,17 @@ "postinstall": "npm run compile:ivy" }, "devDependencies": { - "@abp/ng.account": "~3.2.0", - "@abp/ng.core": "~3.2.0", - "@abp/ng.feature-management": "~3.2.0", - "@abp/ng.identity": "~3.2.0", - "@abp/ng.permission-management": "~3.2.0", - "@abp/ng.schematics": "~3.2.0", - "@abp/ng.setting-management": "~3.2.0", - "@abp/ng.tenant-management": "~3.2.0", - "@abp/ng.theme.basic": "~3.2.0", - "@abp/ng.theme.shared": "~3.2.0", - "@abp/utils": "^3.2.0", + "@abp/ng.account": "~3.2.1", + "@abp/ng.core": "~3.2.1", + "@abp/ng.feature-management": "~3.2.1", + "@abp/ng.identity": "~3.2.1", + "@abp/ng.permission-management": "~3.2.1", + "@abp/ng.schematics": "~3.2.1", + "@abp/ng.setting-management": "~3.2.1", + "@abp/ng.tenant-management": "~3.2.1", + "@abp/ng.theme.basic": "~3.2.1", + "@abp/ng.theme.shared": "~3.2.1", + "@abp/utils": "^3.2.1", "@angular-builders/jest": "^10.0.0", "@angular-devkit/build-angular": "~0.1001.2", "@angular-devkit/build-ng-packagr": "~0.1001.2", diff --git a/npm/ng-packs/packages/account/package.json b/npm/ng-packs/packages/account/package.json index e1ade0042b..c994547bff 100644 --- a/npm/ng-packs/packages/account/package.json +++ b/npm/ng-packs/packages/account/package.json @@ -1,13 +1,13 @@ { "name": "@abp/ng.account", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "dependencies": { - "@abp/ng.theme.shared": "~3.2.0", + "@abp/ng.theme.shared": "~3.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 009a85f312..e75dcb56d8 100644 --- a/npm/ng-packs/packages/components/package.json +++ b/npm/ng-packs/packages/components/package.json @@ -1,13 +1,13 @@ { "name": "@abp/ng.components", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "peerDependencies": { - "@abp/ng.core": ">=3.2.0", + "@abp/ng.core": ">=3.2.1", "@ng-bootstrap/ng-bootstrap": ">=6.0.0" }, "dependencies": { diff --git a/npm/ng-packs/packages/core/package.json b/npm/ng-packs/packages/core/package.json index 494aa62d6f..aa07c23839 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": "3.2.0", + "version": "3.2.1", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "dependencies": { - "@abp/utils": "^3.2.0", + "@abp/utils": "^3.2.1", "@angular/localize": "~10.0.10", "@ngxs/router-plugin": "^3.7.0", "@ngxs/storage-plugin": "^3.7.0", diff --git a/npm/ng-packs/packages/core/src/lib/constants/different-locales.ts b/npm/ng-packs/packages/core/src/lib/constants/different-locales.ts index 401a766fda..3f86e31a2e 100644 --- a/npm/ng-packs/packages/core/src/lib/constants/different-locales.ts +++ b/npm/ng-packs/packages/core/src/lib/constants/different-locales.ts @@ -2,32 +2,337 @@ // Key is .NET locale, value is Angular locale export default { - 'ar-sa': 'ar-SA', + aa: 'en', + 'aa-DJ': 'en', + 'aa-ER': 'en', + 'aa-ET': 'en', + 'af-ZA': 'af', + 'agq-CM': 'agq', + 'ak-GH': 'ak', + 'am-ET': 'am', + 'ar-001': 'ar', + arn: 'en', + 'arn-CL': 'en', + 'as-IN': 'as', + 'asa-TZ': 'asa', + 'ast-ES': 'ast', + 'az-Cyrl-AZ': 'az-Cyrl', + 'az-Latn-AZ': 'az-Latn', + ba: 'ru', + 'ba-RU': 'ru', + 'bas-CM': 'bas', + 'be-BY': 'be', + 'bem-ZM': 'bem', + 'bez-TZ': 'bez', + 'bg-BG': 'bg', + bin: 'en', + 'bin-NG': 'en', + 'bm-Latn': 'bm', + 'bm-Latn-ML': 'bm', + 'bn-BD': 'bn', + 'bo-CN': 'bo', + 'br-FR': 'br', + 'brx-IN': 'brx', + 'bs-Cyrl-BA': 'bs-Cyrl', + 'bs-Latn-BA': 'bs-Latn', + byn: 'en', + 'byn-ER': 'en', + 'ca-ES': 'ca', 'ca-ES-valencia': 'ca-ES-VALENCIA', - 'de-de': 'de', - 'es-ES': 'es', + 'ce-RU': 'ce', + 'cgg-UG': 'cgg', + 'chr-Cher': 'chr', + 'chr-Cher-US': 'chr', + co: 'en', + 'co-FR': 'fr', + 'cs-CZ': 'cs', + 'cu-RU': 'cu', + 'cy-GB': 'cy', + 'da-DK': 'da', + 'dav-KE': 'dav', + 'de-DE': 'de', + 'dje-NE': 'dje', + 'dsb-DE': 'dsb', + 'dua-CM': 'dua', + dv: 'en', + 'dv-MV': 'en', + 'dyo-SN': 'dyo', + 'dz-BT': 'dz', + 'ebu-KE': 'ebu', + 'ee-GH': 'ee', + 'el-GR': 'el', + 'en-029': 'en', + 'en-ID': 'en', 'en-US': 'en', - 'fil-Latn': 'en', - 'ku-Arab': 'en', - 'ky-Cyrl': 'en', - 'mi-Latn': 'en', - 'prs-Arab': 'en', - 'qut-Latn': 'en', - nso: 'en', - quz: 'en', + 'eo-001': 'en', + 'es-ES': 'es', + 'et-EE': 'et', + 'eu-ES': 'eu', + 'ewo-CM': 'ewo', + 'fa-IR': 'fa', + 'ff-Latn-SN': 'ff-Latn', + 'ff-NG': 'ff', + 'fi-FI': 'fi', + 'fil-PH': 'fil', + 'fo-FO': 'fo', + 'fr-029': 'fr', 'fr-FR': 'fr', - 'gd-Latn': 'gd', + 'fur-IT': 'fur', + 'fy-NL': 'fy', + 'ga-IE': 'ga', + 'gd-GB': 'gd', + 'gl-ES': 'gl', + gn: 'en', + 'gn-PY': 'en', + 'gsw-CH': 'gsw', + 'gu-IN': 'gu', + 'guz-KE': 'guz', + 'gv-IM': 'gv', 'ha-Latn': 'ha', - 'ig-Latn': 'ig', - 'it-it': 'it', + 'ha-Latn-GH': 'ha-GH', + 'ha-Latn-NE': 'ha-NE', + 'ha-Latn-NG': 'ha', + 'haw-US': 'haw', + 'he-IL': 'he', + 'hi-IN': 'hi', + 'hr-HR': 'hr', + 'hsb-DE': 'hsb', + 'hu-HU': 'hu', + 'hy-AM': 'hy', + 'ia-001': 'ia', + 'ia-FR': 'ia', + ibb: 'en', + 'ibb-NG': 'en', + 'id-ID': 'id', + 'ig-NG': 'ig', + 'ii-CN': 'ii', + 'is-IS': 'is', + 'it-IT': 'it', + iu: 'en', + 'iu-Cans': 'en', + 'iu-Cans-CA': 'en', + 'iu-Latn': 'en', + 'iu-Latn-CA': 'en', + 'ja-JP': 'ja', + 'jgo-CM': 'jgo', + 'jmc-TZ': 'jmc', + 'jv-Java': 'jv', + 'jv-Java-ID': 'jv', + 'jv-Latn': 'jv', + 'jv-Latn-ID': 'jv', + 'ka-GE': 'ka', + 'kab-DZ': 'kab', + 'kam-KE': 'kam', + 'kde-TZ': 'kde', + 'kea-CV': 'kea', + 'khq-ML': 'khq', + 'ki-KE': 'ki', + 'kk-KZ': 'kk', + 'kkj-CM': 'kkj', + 'kl-GL': 'kl', + 'kln-KE': 'kln', + 'km-KH': 'km', + 'kn-IN': 'kn', + 'ko-KR': 'ko', + 'kok-IN': 'kok', + kr: 'en', + 'kr-NG': 'en', + 'ks-Arab': 'ks', + 'ks-Arab-IN': 'ks', + 'ks-Deva': 'ks', + 'ks-Deva-IN': 'ks', + 'ksb-TZ': 'ksb', + 'ksf-CM': 'ksf', + 'ksh-DE': 'ksh', + 'ku-Arab': 'ku', + 'ku-Arab-IQ': 'ku', + 'ku-Arab-IR': 'ku', + 'kw-GB': 'kw', + 'ky-KG': 'ky', + la: 'en', + 'la-001': 'en', + 'lag-TZ': 'lag', + 'lb-LU': 'lb', + 'lg-UG': 'lg', + 'lkt-US': 'lkt', + 'ln-CD': 'ln', + 'lo-LA': 'lo', + 'lrc-IR': 'lrc', + 'lt-LT': 'lt', + 'lu-CD': 'lu', + 'luo-KE': 'luo', + 'luy-KE': 'luy', + 'lv-LV': 'lv', + 'mas-KE': 'mas', + 'mer-KE': 'mer', + 'mfe-MU': 'mfe', + 'mg-MG': 'mg', + 'mgh-MZ': 'mgh', + 'mgo-CM': 'mgo', + 'mi-NZ': 'mi', + 'mk-MK': 'mk', + 'ml-IN': 'ml', 'mn-Cyrl': 'mn', + 'mn-MN': 'mn', + 'mn-Mong': 'mn', + 'mn-Mong-CN': 'mn', + 'mn-Mong-MN': 'mn', + mni: 'en', + 'mni-IN': 'en', + moh: 'en', + 'moh-CA': 'en', + 'mr-IN': 'mr', + 'ms-MY': 'ms', + 'mt-MT': 'mt', + 'mua-CM': 'mua', + 'my-MM': 'my', + 'mzn-IR': 'mzn', + 'naq-NA': 'naq', + 'nb-NO': 'nb', + + 'nd-ZW': 'nd', + 'ne-NP': 'ne', + 'nl-NL': 'nl', + 'nmg-CM': 'ngm', + 'nn-NO': 'nn', + 'nnh-CM': 'nnh', + no: 'en', + nqo: 'en', + 'nqo-GN': 'en', + nr: 'en', + 'nr-ZA': 'en', + nso: 'en', + 'nso-ZA': 'en', + 'nus-SS': 'nus', + 'nyn-UG': 'nyn', + oc: 'en', + 'oc-FR': 'fr', + 'om-ET': 'om', + 'or-IN': 'or', + 'os-GE': 'os', + 'pa-Arab-PK': 'pa-Arab', + 'pa-IN': 'pa', + pap: 'en', + 'pap-029': 'en', + 'pl-PL': 'pl', + 'prg-001': 'prg', + prs: 'en', + 'prs-AF': 'en', + 'ps-AF': 'ps', 'pt-BR': 'pt', - 'sd-Arab': 'pa-Arab', - 'sr-Cyrl-RS': 'sr-Cyrl', + quc: 'en', + 'quc-Latn': 'en', + 'quc-Latn-GT': 'en', + quz: 'en', + 'quz-BO': 'en', + 'quz-EC': 'en', + 'quz-PE': 'en', + 'rm-CH': 'rm', + 'rn-BI': 'rn', + 'ro-RO': 'ro', + 'rof-TZ': 'rof', + 'ru-RU': 'ru', + 'rw-RW': 'rw', + 'rwk-TZ': 'rwk', + sa: 'en', + 'sa-IN': 'en', + 'sah-RU': 'sah', + 'saq-KE': 'saq', + 'sbp-TZ': 'en', + 'sd-Arab': 'sd', + 'sd-Arab-PK': 'sd', + 'sd-Deva': 'sd', + 'sd-Deva-IN': 'sd', + 'se-NO': 'se', + 'seh-MZ': 'seh', + 'ses-ML': 'ses', + 'sg-CF': 'sg', + 'shi-Latn-MA': 'shi-Latn', + 'shi-Tfng-MA': 'shi-Tfng', + 'si-LK': 'si', + 'sk-SK': 'sk', + 'sl-SI': 'sl', + sma: 'en', + 'sma-NO': 'en', + 'sma-SE': 'en', + smj: 'en', + 'smj-NO': 'en', + 'smj-SE': 'en', + 'smn-FI': 'en', + sms: 'en', + 'sms-FI': 'en', + 'sn-Latn': 'sn', + 'sn-Latn-ZW': 'sn', + 'so-SO': 'so', + 'sq-AL': 'so', + 'sr-Cyrl-RS': 'sr-Cryl', 'sr-Latn-RS': 'sr-Latn', + ss: 'en', + 'ss-SZ': 'en', + 'ss-ZA': 'en', + ssy: 'en', + 'ssy-ER': 'en', + st: 'en', + 'st-LS': 'en', + 'st-ZA': 'en', + 'sv-SE': 'sv', + 'sw-TZ': 'sw', + syr: 'en', + 'syr-SY': 'en', + 'ta-IN': 'ta', + 'te-IN': 'te', + 'teo-UG': 'teo', 'tg-Cyrl': 'tg', - 'tk-Latn': 'tk', - 'tt-Cyrl': 'tt', - 'ug-Arab': 'ug', - 'yo-Latn': 'yo', + 'tg-Cyrl-TJ': 'tg', + 'th-TH': 'th', + 'ti-ET': 'ti', + tig: 'en', + 'tig-ER': 'en', + 'tk-TM': 'tk', + tn: 'en', + 'tn-BW': 'en', + 'tn-ZA': 'en', + 'to-TO': 'to', + 'tr-TR': 'tr', + ts: 'en', + 'ts-ZA': 'en', + 'tt-RU': 'tt', + 'twq-NE': 'twq', + 'tzm-Arab': 'tzm', + 'tzm-Arab-MA': 'tzm', + 'tzm-Latn': 'tzm', + 'tzm-Latn-DZ': 'tzm', + 'tzm-Latn-MA': 'tzm', + 'tzm-Tfng': 'tzm', + 'tzm-Tfng-MA': 'tzm', + 'ug-CN': 'ug', + 'uk-UA': 'uk', + 'ur-PK': 'ur', + 'uz-Arab-AF': 'uz-Arab', + 'uz-Cyrl-UZ': 'uz-Cyrl', + 'uz-Latn-UZ': 'uz-Latn', + 'vai-Latn-LR': 'vai-Latn', + 'vai-Vaii-LR': 'vai-Vaii', + ve: 'en', + 've-ZA': 'en', + 'vi-VN': 'vi', + 'vo-001': 'vo', + 'vun-TZ': 'vun', + 'wae-CH': 'wae', + wal: 'en', + 'wal-ET': 'en', + 'wo-SN': 'wo', + 'xh-ZA': 'xh', + 'xog-UG': 'xog', + 'yav-CM': 'yav', + 'yi-001': 'yi', + 'yo-NG': 'yo', + 'zgh-Tfng': 'zgh', + 'zgh-Tfng-MA': 'zgh', + 'zh-CN': 'zh', + 'zh-HK': 'zh', + 'zh-MO': 'zh', + 'zh-SG': 'zh', + 'zh-TW': 'zh', + 'zu-ZA': 'zu', }; diff --git a/npm/ng-packs/packages/core/src/lib/constants/included-locales.ts b/npm/ng-packs/packages/core/src/lib/constants/included-locales.ts new file mode 100644 index 0000000000..68ec959235 --- /dev/null +++ b/npm/ng-packs/packages/core/src/lib/constants/included-locales.ts @@ -0,0 +1,12 @@ +export const includedLocales = [ + 'tr', + 'ar', + 'cs', + 'en', + 'fr', + 'pt', + 'ru', + 'sl', + 'zh-Hans', + 'zh-Hant', +]; diff --git a/npm/ng-packs/packages/core/src/lib/constants/index.ts b/npm/ng-packs/packages/core/src/lib/constants/index.ts index 54aaba730c..2113cfed8c 100644 --- a/npm/ng-packs/packages/core/src/lib/constants/index.ts +++ b/npm/ng-packs/packages/core/src/lib/constants/index.ts @@ -1 +1,2 @@ export * from './different-locales'; +export * from './included-locales'; diff --git a/npm/ng-packs/packages/core/src/lib/core.module.ts b/npm/ng-packs/packages/core/src/lib/core.module.ts index 8cf9a90886..3756bff1bb 100644 --- a/npm/ng-packs/packages/core/src/lib/core.module.ts +++ b/npm/ng-packs/packages/core/src/lib/core.module.ts @@ -1,5 +1,5 @@ import { APP_BASE_HREF, CommonModule } from '@angular/common'; -import { HttpClientModule, HTTP_INTERCEPTORS } from '@angular/common/http'; +import { HttpClientModule, HTTP_INTERCEPTORS, HttpClientXsrfModule } from '@angular/common/http'; import { APP_INITIALIZER, Injector, ModuleWithProviders, NgModule } from '@angular/core'; import { FormsModule, ReactiveFormsModule } from '@angular/forms'; import { RouterModule } from '@angular/router'; @@ -125,6 +125,10 @@ export class BaseCoreModule {} NgxsRouterPluginModule.forRoot(), NgxsStoragePluginModule.forRoot(), OAuthModule.forRoot(), + HttpClientXsrfModule.withOptions({ + cookieName: 'XSRF-TOKEN', + headerName: 'RequestVerificationToken', + }), ], }) export class RootCoreModule {} diff --git a/npm/ng-packs/packages/core/src/lib/models/utility.ts b/npm/ng-packs/packages/core/src/lib/models/utility.ts index 228cab0de3..f1cfbdb6da 100644 --- a/npm/ng-packs/packages/core/src/lib/models/utility.ts +++ b/npm/ng-packs/packages/core/src/lib/models/utility.ts @@ -11,3 +11,7 @@ type Serializable = Record< export type InferredInstanceOf = T extends Type ? U : never; export type InferredContextOf = T extends TemplateRef ? U : never; + +export type Strict = Class extends Contract + ? { [K in keyof Class]: K extends keyof Contract ? Contract[K] : never } + : Contract; diff --git a/npm/ng-packs/packages/core/src/lib/services/localization.service.ts b/npm/ng-packs/packages/core/src/lib/services/localization.service.ts index 5cdbe3c291..c6ebb3dd00 100644 --- a/npm/ng-packs/packages/core/src/lib/services/localization.service.ts +++ b/npm/ng-packs/packages/core/src/lib/services/localization.service.ts @@ -48,12 +48,11 @@ export class LocalizationService { registerLocale(locale: string) { const router = this.injector.get(Router); - const { cultureNameLocaleFileMap } = this.injector.get(CORE_OPTIONS); const { shouldReuseRoute } = router.routeReuseStrategy; router.routeReuseStrategy.shouldReuseRoute = () => false; router.navigated = false; - return registerLocale(locale, cultureNameLocaleFileMap).then(() => { + return registerLocale(locale, this.injector).then(() => { this.ngZone.run(async () => { await router.navigateByUrl(router.url).catch(noop); router.routeReuseStrategy.shouldReuseRoute = shouldReuseRoute; diff --git a/npm/ng-packs/packages/core/src/lib/tokens/index.ts b/npm/ng-packs/packages/core/src/lib/tokens/index.ts index 8d23d581a5..bd798ae448 100644 --- a/npm/ng-packs/packages/core/src/lib/tokens/index.ts +++ b/npm/ng-packs/packages/core/src/lib/tokens/index.ts @@ -1,2 +1,3 @@ export * from './list.token'; +export * from './locale-error-handler.token'; export * from './options.token'; diff --git a/npm/ng-packs/packages/core/src/lib/tokens/locale-error-handler.token.ts b/npm/ng-packs/packages/core/src/lib/tokens/locale-error-handler.token.ts new file mode 100644 index 0000000000..a1d2c93c20 --- /dev/null +++ b/npm/ng-packs/packages/core/src/lib/tokens/locale-error-handler.token.ts @@ -0,0 +1,14 @@ +import { InjectionToken, Injector } from '@angular/core'; + +export interface LocaleErrorHandlerData { + resolve: any; + reject: any; + error: any; + locale: string; + storedLocales: Record; + injector: Injector; +} + +export const LOCALE_ERROR_HANDLER = new InjectionToken<(data: LocaleErrorHandlerData) => any>( + 'LOCALE_ERROR_HANDLER', +); diff --git a/npm/ng-packs/packages/core/src/lib/utils/initial-utils.ts b/npm/ng-packs/packages/core/src/lib/utils/initial-utils.ts index cf35cc3023..b30b1e742b 100644 --- a/npm/ng-packs/packages/core/src/lib/utils/initial-utils.ts +++ b/npm/ng-packs/packages/core/src/lib/utils/initial-utils.ts @@ -1,5 +1,5 @@ import { registerLocaleData } from '@angular/common'; -import { Injector } from '@angular/core'; +import { Injector, isDevMode } from '@angular/core'; import { Store } from '@ngxs/store'; import { OAuthService } from 'angular-oauth2-oidc'; import { tap } from 'rxjs/operators'; @@ -8,6 +8,7 @@ import { ABP } from '../models/common'; import { AuthService } from '../services/auth.service'; import { ConfigState } from '../states/config.state'; import { clearOAuthStorage } from '../strategies/auth-flow.strategy'; +import { LocaleErrorHandlerData, LOCALE_ERROR_HANDLER } from '../tokens/locale-error-handler.token'; import { CORE_OPTIONS } from '../tokens/options.token'; import { getRemoteEnv } from './environment-utils'; import { parseTenantFromUrl } from './multi-tenancy-utils'; @@ -42,26 +43,66 @@ export function checkAccessToken(store: Store, injector: Injector) { export function localeInitializer(injector: Injector) { const fn = () => { const store: Store = injector.get(Store); - const options = injector.get(CORE_OPTIONS); const lang = store.selectSnapshot(state => state.SessionState.language) || 'en'; return new Promise((resolve, reject) => { - registerLocale(lang, options.cultureNameLocaleFileMap).then( - () => resolve('resolved'), - reject, - ); + registerLocale(lang, injector).then(() => resolve('resolved'), reject); }); }; return fn; } -export function registerLocale(locale: string, localeNameMap: ABP.Dictionary) { - return import( - /* webpackChunkName: "_locale-[request]"*/ - `@angular/common/locales/${localeNameMap[locale] || locale}.js` - ).then(module => { - registerLocaleData(module.default); +export function registerLocale(locale: string, injector: Injector): Promise { + const { cultureNameLocaleFileMap } = injector.get(CORE_OPTIONS, {} as ABP.Root); + + const errorHandlerFn = injector.get(LOCALE_ERROR_HANDLER, defaultLocalErrorHandlerFn); + + return new Promise((resolve, reject) => { + return import( + /* webpackChunkName: "_locale-[request]"*/ + /* webpackInclude: /\/(ar|cs|en|fr|pt|tr|ru|sl|zh-Hans|zh-Hant).js/ */ + /* webpackExclude: /\/global|\/extra/ */ + `@angular/common/locales/${cultureNameLocaleFileMap[locale] || locale}.js` + ) + .then(module => { + registerLocaleData(module.default, locale); + resolve(module.default); + }) + .catch(error => { + errorHandlerFn({ + resolve, + reject, + error, + injector, + locale, + storedLocales: { ...extraLocales }, + }); + }); }); } + +const extraLocales = {}; +export function storeLocaleData(data: any, localeId: string) { + extraLocales[localeId] = data; +} + +async function defaultLocalErrorHandlerFn({ + locale, + storedLocales, + resolve, + injector, +}: LocaleErrorHandlerData) { + if (storedLocales[locale]) { + registerLocaleData(storedLocales[locale], locale); + resolve(); + return; + } + + if (isDevMode) { + console.error(`Cannot find the ${locale} locale file. You can check how can add new culture at https://docs.abp.io/en/abp/latest/UI/Angular/Localization#adding-new-culture`); + } + + resolve(); +} diff --git a/npm/ng-packs/packages/feature-management/package.json b/npm/ng-packs/packages/feature-management/package.json index 80ccfa562c..080eef0169 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": "3.2.0", + "version": "3.2.1", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "dependencies": { - "@abp/ng.theme.shared": "~3.2.0", + "@abp/ng.theme.shared": "~3.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 d0dc3eb54c..921b05c961 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": "3.2.0", + "version": "3.2.1", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "dependencies": { - "@abp/ng.permission-management": "~3.2.0", - "@abp/ng.theme.shared": "~3.2.0", + "@abp/ng.permission-management": "~3.2.1", + "@abp/ng.theme.shared": "~3.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 1d5a965074..fe9aab70a5 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": "3.2.0", + "version": "3.2.1", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "dependencies": { - "@abp/ng.theme.shared": "~3.2.0", + "@abp/ng.theme.shared": "~3.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 e404d5cedd..b0304af5c0 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": "3.2.0", + "version": "3.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 7927944a5a..0ad26fff8b 100644 --- a/npm/ng-packs/packages/setting-management/package.json +++ b/npm/ng-packs/packages/setting-management/package.json @@ -1,13 +1,13 @@ { "name": "@abp/ng.setting-management", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "dependencies": { - "@abp/ng.theme.shared": "~3.2.0", + "@abp/ng.theme.shared": "~3.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 346263467b..ce91eb196b 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": "3.2.0", + "version": "3.2.1", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "dependencies": { - "@abp/ng.feature-management": "~3.2.0", - "@abp/ng.theme.shared": "~3.2.0", + "@abp/ng.feature-management": "~3.2.1", + "@abp/ng.theme.shared": "~3.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 c571438d84..0774772f53 100644 --- a/npm/ng-packs/packages/theme-basic/package.json +++ b/npm/ng-packs/packages/theme-basic/package.json @@ -1,13 +1,13 @@ { "name": "@abp/ng.theme.basic", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "dependencies": { - "@abp/ng.theme.shared": "~3.2.0", + "@abp/ng.theme.shared": "~3.2.1", "tslib": "^2.0.0" }, "publishConfig": { diff --git a/npm/ng-packs/packages/theme-basic/src/lib/components/account-layout/account-layout.component.ts b/npm/ng-packs/packages/theme-basic/src/lib/components/account-layout/account-layout.component.ts index 105c756e54..56851c6d27 100644 --- a/npm/ng-packs/packages/theme-basic/src/lib/components/account-layout/account-layout.component.ts +++ b/npm/ng-packs/packages/theme-basic/src/lib/components/account-layout/account-layout.component.ts @@ -6,7 +6,6 @@ import { eLayoutType } from '@abp/ng.core'; template: ` - `, }) export class AccountLayoutComponent { diff --git a/npm/ng-packs/packages/theme-basic/src/lib/components/empty-layout/empty-layout.component.ts b/npm/ng-packs/packages/theme-basic/src/lib/components/empty-layout/empty-layout.component.ts index 4f1dac52ca..f961ecc321 100644 --- a/npm/ng-packs/packages/theme-basic/src/lib/components/empty-layout/empty-layout.component.ts +++ b/npm/ng-packs/packages/theme-basic/src/lib/components/empty-layout/empty-layout.component.ts @@ -6,7 +6,6 @@ import { eLayoutType } from '@abp/ng.core'; template: ` - `, }) export class EmptyLayoutComponent { diff --git a/npm/ng-packs/packages/theme-shared/package.json b/npm/ng-packs/packages/theme-shared/package.json index eed100dff9..6d1baadb31 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": "3.2.0", + "version": "3.2.1", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "dependencies": { - "@abp/ng.core": "~3.2.0", + "@abp/ng.core": "~3.2.1", "@fortawesome/fontawesome-free": "^5.14.0", "@ng-bootstrap/ng-bootstrap": "^7.0.0", "@ngx-validate/core": "^0.0.11", diff --git a/npm/ng-packs/packages/theme-shared/src/lib/components/toast-container/toast-container.component.html b/npm/ng-packs/packages/theme-shared/src/lib/components/toast-container/toast-container.component.html index 88d45ff04b..3dc2427f92 100644 --- a/npm/ng-packs/packages/theme-shared/src/lib/components/toast-container/toast-container.component.html +++ b/npm/ng-packs/packages/theme-shared/src/lib/components/toast-container/toast-container.component.html @@ -1,5 +1,5 @@
-
+
+
-
- -
+
{{ toast.title | abpLocalization: toast.options?.titleLocalizationParams }}
-

+

{{ toast.message | abpLocalization: toast.options?.messageLocalizationParams }}

diff --git a/npm/ng-packs/packages/theme-shared/src/lib/components/toast/toast.component.scss b/npm/ng-packs/packages/theme-shared/src/lib/components/toast/toast.component.scss index 7b5a2a24d1..64bf8a6068 100644 --- a/npm/ng-packs/packages/theme-shared/src/lib/components/toast/toast.component.scss +++ b/npm/ng-packs/packages/theme-shared/src/lib/components/toast/toast.component.scss @@ -10,7 +10,9 @@ } } -.toast { +$toastClass: abp-toast; + +.#{$toastClass} { display: grid; grid-template-columns: 50px 1fr; gap: 10px; @@ -23,19 +25,19 @@ z-index: 9999; @include fillColor(#f0f0f0, #000); opacity: 1; - &.toast-success { + &.#{$toastClass}-success { @include fillColor(#51a351, #fff); } - &.toast-info { + &.#{$toastClass}-info { @include fillColor(#2f96b4, #fff); } - &.toast-warning { + &.#{$toastClass}-warning { @include fillColor(#f89406, #fff); } - &.toast-error { + &.#{$toastClass}-error { @include fillColor(#bd362f, #fff); } - .toast-icon { + .#{$toastClass}-icon { display: flex; align-items: center; justify-content: center; @@ -43,9 +45,9 @@ font-size: 36px; } } - .toast-content { + .#{$toastClass}-content { position: relative; - .toast-close-button { + .#{$toastClass}-close-button { position: absolute; top: 0; right: 0; @@ -64,13 +66,13 @@ outline: none; } } - .toast-title { + .#{$toastClass}-title { margin: 0; padding: 0; font-size: 1rem; font-weight: 600; } - .toast-message { + .#{$toastClass}-message { margin: 0; padding: 0; max-width: 240px; diff --git a/npm/ng-packs/packages/theme-shared/src/lib/components/toast/toast.component.ts b/npm/ng-packs/packages/theme-shared/src/lib/components/toast/toast.component.ts index b4465934b6..48298e74a0 100644 --- a/npm/ng-packs/packages/theme-shared/src/lib/components/toast/toast.component.ts +++ b/npm/ng-packs/packages/theme-shared/src/lib/components/toast/toast.component.ts @@ -1,7 +1,6 @@ import { Component, Input, OnInit } from '@angular/core'; import { Toaster } from '../../models/toaster'; import { ToasterService } from '../../services/toaster.service'; -import { LocalizationService } from '@abp/ng.core'; import snq from 'snq'; @Component({ @@ -15,7 +14,7 @@ export class ToastComponent implements OnInit { get severityClass(): string { if (!this.toast || !this.toast.severity) return ''; - return `toast-${this.toast.severity}`; + return `abp-toast-${this.toast.severity}`; } get iconClass(): string { @@ -33,10 +32,7 @@ export class ToastComponent implements OnInit { } } - constructor( - private toastService: ToasterService, - private localizationService: LocalizationService, - ) {} + constructor(private toasterService: ToasterService) {} ngOnInit() { if (snq(() => this.toast.options.sticky)) return; @@ -47,10 +43,10 @@ export class ToastComponent implements OnInit { } close() { - this.toastService.remove(this.toast.options.id); + this.toasterService.remove(this.toast.options.id); } tap() { - if (this.toast.options && this.toast.options.tapToDismiss) this.close(); + if (this.toast.options?.tapToDismiss) this.close(); } } diff --git a/npm/ng-packs/packages/theme-shared/src/lib/models/toaster.ts b/npm/ng-packs/packages/theme-shared/src/lib/models/toaster.ts index e7f456fee4..beb5d4fc6c 100644 --- a/npm/ng-packs/packages/theme-shared/src/lib/models/toaster.ts +++ b/npm/ng-packs/packages/theme-shared/src/lib/models/toaster.ts @@ -20,4 +20,36 @@ export namespace Toaster { } export type Severity = 'neutral' | 'success' | 'info' | 'warning' | 'error'; + export type ToasterId = string | number; + + export interface Service { + show: ( + message: Config.LocalizationParam, + title: Config.LocalizationParam, + severity: Toaster.Severity, + options: Partial, + ) => ToasterId; + remove: (id: number) => void; + clear: (containerKey?: string) => void; + info: ( + message: Config.LocalizationParam, + title?: Config.LocalizationParam, + options?: Partial, + ) => ToasterId; + success: ( + message: Config.LocalizationParam, + title?: Config.LocalizationParam, + options?: Partial, + ) => ToasterId; + warn: ( + message: Config.LocalizationParam, + title?: Config.LocalizationParam, + options?: Partial, + ) => ToasterId; + error: ( + message: Config.LocalizationParam, + title?: Config.LocalizationParam, + options?: Partial, + ) => ToasterId; + } } diff --git a/npm/ng-packs/packages/theme-shared/src/lib/services/toaster.service.ts b/npm/ng-packs/packages/theme-shared/src/lib/services/toaster.service.ts index 295647309d..84275a0fc8 100644 --- a/npm/ng-packs/packages/theme-shared/src/lib/services/toaster.service.ts +++ b/npm/ng-packs/packages/theme-shared/src/lib/services/toaster.service.ts @@ -1,15 +1,15 @@ -import { Injectable, ComponentRef } from '@angular/core'; +import { ComponentRef, Injectable } from '@angular/core'; import { Toaster } from '../models'; import { ReplaySubject } from 'rxjs'; -import { Config, PROJECTION_STRATEGY, ContentProjectionService } from '@abp/ng.core'; +import { Config, ContentProjectionService, PROJECTION_STRATEGY, Strict } from '@abp/ng.core'; import snq from 'snq'; import { ToastContainerComponent } from '../components/toast-container/toast-container.component'; @Injectable({ providedIn: 'root', }) -export class ToasterService { - toasts$ = new ReplaySubject(1); +export class ToasterService implements ToasterContract { + private toasts$ = new ReplaySubject(1); private lastId = -1; @@ -37,7 +37,7 @@ export class ToasterService { message: Config.LocalizationParam, title?: Config.LocalizationParam, options?: Partial, - ): number { + ): Toaster.ToasterId { return this.show(message, title, 'info', options); } @@ -51,7 +51,7 @@ export class ToasterService { message: Config.LocalizationParam, title?: Config.LocalizationParam, options?: Partial, - ): number { + ): Toaster.ToasterId { return this.show(message, title, 'success', options); } @@ -65,7 +65,7 @@ export class ToasterService { message: Config.LocalizationParam, title?: Config.LocalizationParam, options?: Partial, - ): number { + ): Toaster.ToasterId { return this.show(message, title, 'warning', options); } @@ -79,7 +79,7 @@ export class ToasterService { message: Config.LocalizationParam, title?: Config.LocalizationParam, options?: Partial, - ): number { + ): Toaster.ToasterId { return this.show(message, title, 'error', options); } @@ -96,7 +96,7 @@ export class ToasterService { title: Config.LocalizationParam = null, severity: Toaster.Severity = 'neutral', options = {} as Partial, - ): number { + ): Toaster.ToasterId { if (!this.containerComponentRef) this.setContainer(); const id = ++this.lastId; @@ -122,10 +122,12 @@ export class ToasterService { /** * Removes all open toasts at once. */ - clear(key?: string): void { - this.toasts = !key + clear(containerKey?: string): void { + this.toasts = !containerKey ? [] - : this.toasts.filter(toast => snq(() => toast.options.containerKey) !== key); + : this.toasts.filter(toast => snq(() => toast.options.containerKey) !== containerKey); this.toasts$.next(this.toasts); } } + +export type ToasterContract = Strict; diff --git a/npm/ng-packs/packages/theme-shared/src/lib/tests/toaster.service.spec.ts b/npm/ng-packs/packages/theme-shared/src/lib/tests/toaster.service.spec.ts index 0807bf632e..d47e4a7cf5 100644 --- a/npm/ng-packs/packages/theme-shared/src/lib/tests/toaster.service.spec.ts +++ b/npm/ng-packs/packages/theme-shared/src/lib/tests/toaster.service.spec.ts @@ -14,6 +14,7 @@ import { ToasterService } from '../services/toaster.service'; imports: [CoreModule.forTest()], }) export class MockModule {} +const toastClassPrefix = 'abp-toast'; describe('ToasterService', () => { let spectator: SpectatorService; @@ -39,24 +40,23 @@ describe('ToasterService', () => { service['containerComponentRef'].changeDetectorRef.detectChanges(); expect(selectToasterElement('.fa-exclamation-circle')).toBeTruthy(); - expect(selectToasterContent('.toast-title')).toBe('TITLE'); - expect(selectToasterContent('.toast-message')).toBe('MESSAGE'); + expect(selectToasterContent(`.${toastClassPrefix}-title`)).toBe('TITLE'); + expect(selectToasterContent(`.${toastClassPrefix}-message`)).toBe('MESSAGE'); }); test.each` - type | selector | icon - ${'info'} | ${'.toast-info'} | ${'.fa-info-circle'} - ${'success'} | ${'.toast-success'} | ${'.fa-check-circle'} - ${'warn'} | ${'.toast-warning'} | ${'.fa-exclamation-triangle'} - ${'error'} | ${'.toast-error'} | ${'.fa-times-circle'} + type | selector | icon + ${'info'} | ${`.${toastClassPrefix}-info`} | ${'.fa-info-circle'} + ${'success'} | ${`.${toastClassPrefix}-success`} | ${'.fa-check-circle'} + ${'warn'} | ${`.${toastClassPrefix}-warning`} | ${'.fa-exclamation-triangle'} + ${'error'} | ${`.${toastClassPrefix}-error`} | ${'.fa-times-circle'} `('should display $type toast', async ({ type, selector, icon }) => { service[type]('MESSAGE', 'TITLE'); await timer(0).toPromise(); service['containerComponentRef'].changeDetectorRef.detectChanges(); - - expect(selectToasterContent('.toast-title')).toBe('TITLE'); - expect(selectToasterContent('.toast-message')).toBe('MESSAGE'); + expect(selectToasterContent(`.${toastClassPrefix}-title`)).toBe('TITLE'); + expect(selectToasterContent(`.${toastClassPrefix}-message`)).toBe('MESSAGE'); expect(selectToasterElement()).toBe(document.querySelector(selector)); expect(selectToasterElement(icon)).toBeTruthy(); }); @@ -68,10 +68,10 @@ describe('ToasterService', () => { await timer(0).toPromise(); service['containerComponentRef'].changeDetectorRef.detectChanges(); - const titles = document.querySelectorAll('.toast-title'); + const titles = document.querySelectorAll(`.${toastClassPrefix}-title`); expect(titles.length).toBe(2); - const messages = document.querySelectorAll('.toast-message'); + const messages = document.querySelectorAll(`.${toastClassPrefix}-message`); expect(messages.length).toBe(2); }); @@ -104,19 +104,19 @@ describe('ToasterService', () => { service['containerComponentRef'].changeDetectorRef.detectChanges(); expect(selectToasterElement('.fa-exclamation-circle')).toBeTruthy(); - expect(selectToasterContent('.toast-title')).toBe('TITLE_2'); - expect(selectToasterContent('.toast-message')).toBe('MESSAGE_2'); + expect(selectToasterContent(`.${toastClassPrefix}-title`)).toBe('TITLE_2'); + expect(selectToasterContent(`.${toastClassPrefix}-message`)).toBe('MESSAGE_2'); }); }); -function clearElements(selector = '.toast') { +function clearElements(selector = `.${toastClassPrefix}`) { document.querySelectorAll(selector).forEach(element => element.parentNode.removeChild(element)); } -function selectToasterContent(selector = '.toast'): string { +function selectToasterContent(selector = `.${toastClassPrefix}`): string { return selectToasterElement(selector).textContent.trim(); } -function selectToasterElement(selector = '.toast'): T { +function selectToasterElement(selector = `.${toastClassPrefix}`): T { return document.querySelector(selector); } diff --git a/npm/ng-packs/packages/theme-shared/src/lib/theme-shared.module.ts b/npm/ng-packs/packages/theme-shared/src/lib/theme-shared.module.ts index e45ac8d1e3..c4647cbcd1 100644 --- a/npm/ng-packs/packages/theme-shared/src/lib/theme-shared.module.ts +++ b/npm/ng-packs/packages/theme-shared/src/lib/theme-shared.module.ts @@ -27,49 +27,37 @@ import { initLazyStyleHandler } from './handlers/lazy-style.handler'; import { RootParams } from './models/common'; import { THEME_SHARED_ROUTE_PROVIDERS } from './providers/route.provider'; import { THEME_SHARED_APPEND_CONTENT } from './tokens/append-content.token'; -import { httpErrorConfigFactory, HTTP_ERROR_CONFIG } from './tokens/http-error.token'; +import { HTTP_ERROR_CONFIG, httpErrorConfigFactory } from './tokens/http-error.token'; import { DateParserFormatter } from './utils/date-parser-formatter'; +const declarationsWithExports = [ + BreadcrumbComponent, + ButtonComponent, + ChartComponent, + ConfirmationComponent, + LoaderBarComponent, + LoadingComponent, + ModalComponent, + TableComponent, + TableEmptyMessageComponent, + ToastComponent, + ToastContainerComponent, + SortOrderIconComponent, + NgxDatatableDefaultDirective, + NgxDatatableListDirective, + LoadingDirective, + TableSortDirective, +]; @NgModule({ imports: [CoreModule, NgxDatatableModule, NgxValidateCoreModule, NgbPaginationModule], declarations: [ - BreadcrumbComponent, - ButtonComponent, - ChartComponent, - ConfirmationComponent, + ...declarationsWithExports, HttpErrorWrapperComponent, - LoaderBarComponent, - LoadingComponent, - ModalComponent, ModalContainerComponent, - TableComponent, - TableEmptyMessageComponent, - ToastComponent, - ToastContainerComponent, - SortOrderIconComponent, - NgxDatatableDefaultDirective, - NgxDatatableListDirective, - LoadingDirective, - TableSortDirective, ], exports: [ NgxDatatableModule, - BreadcrumbComponent, - ButtonComponent, - ChartComponent, - ConfirmationComponent, - LoaderBarComponent, - LoadingComponent, - ModalComponent, - TableComponent, - TableEmptyMessageComponent, - ToastComponent, - ToastContainerComponent, - SortOrderIconComponent, - NgxDatatableDefaultDirective, - NgxDatatableListDirective, - LoadingDirective, - TableSortDirective, + ...declarationsWithExports, ], providers: [DatePipe], entryComponents: [ diff --git a/npm/packs/anchor-js/package.json b/npm/packs/anchor-js/package.json index e19192bbd5..f29235c0b7 100644 --- a/npm/packs/anchor-js/package.json +++ b/npm/packs/anchor-js/package.json @@ -1,11 +1,11 @@ { - "version": "3.2.0", + "version": "3.2.1", "name": "@abp/anchor-js", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~3.2.0", + "@abp/core": "~3.2.1", "anchor-js": "^4.2.2" }, "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 642eec4e55..bd8cf7a3bc 100644 --- a/npm/packs/aspnetcore.mvc.ui.theme.basic/package.json +++ b/npm/packs/aspnetcore.mvc.ui.theme.basic/package.json @@ -1,11 +1,11 @@ { - "version": "3.2.0", + "version": "3.2.1", "name": "@abp/aspnetcore.mvc.ui.theme.basic", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.shared": "~3.2.0" + "@abp/aspnetcore.mvc.ui.theme.shared": "~3.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 900bccfb31..783a0752ff 100644 --- a/npm/packs/aspnetcore.mvc.ui.theme.shared/package.json +++ b/npm/packs/aspnetcore.mvc.ui.theme.shared/package.json @@ -1,24 +1,24 @@ { - "version": "3.2.0", + "version": "3.2.1", "name": "@abp/aspnetcore.mvc.ui.theme.shared", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/aspnetcore.mvc.ui": "~3.2.0", - "@abp/bootstrap": "~3.2.0", - "@abp/bootstrap-datepicker": "~3.2.0", - "@abp/datatables.net-bs4": "~3.2.0", - "@abp/font-awesome": "~3.2.0", - "@abp/jquery-form": "~3.2.0", - "@abp/jquery-validation-unobtrusive": "~3.2.0", - "@abp/lodash": "~3.2.0", - "@abp/luxon": "~3.2.0", - "@abp/malihu-custom-scrollbar-plugin": "~3.2.0", - "@abp/select2": "~3.2.0", - "@abp/sweetalert": "~3.2.0", - "@abp/timeago": "~3.2.0", - "@abp/toastr": "~3.2.0" + "@abp/aspnetcore.mvc.ui": "~3.2.1", + "@abp/bootstrap": "~3.2.1", + "@abp/bootstrap-datepicker": "~3.2.1", + "@abp/datatables.net-bs4": "~3.2.1", + "@abp/font-awesome": "~3.2.1", + "@abp/jquery-form": "~3.2.1", + "@abp/jquery-validation-unobtrusive": "~3.2.1", + "@abp/lodash": "~3.2.1", + "@abp/luxon": "~3.2.1", + "@abp/malihu-custom-scrollbar-plugin": "~3.2.1", + "@abp/select2": "~3.2.1", + "@abp/sweetalert": "~3.2.1", + "@abp/timeago": "~3.2.1", + "@abp/toastr": "~3.2.1" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" } diff --git a/npm/packs/aspnetcore.mvc.ui/package.json b/npm/packs/aspnetcore.mvc.ui/package.json index 6bbaad44eb..ed4df8af78 100644 --- a/npm/packs/aspnetcore.mvc.ui/package.json +++ b/npm/packs/aspnetcore.mvc.ui/package.json @@ -1,5 +1,5 @@ { - "version": "3.2.0", + "version": "3.2.1", "name": "@abp/aspnetcore.mvc.ui", "publishConfig": { "access": "public" diff --git a/npm/packs/blogging/package.json b/npm/packs/blogging/package.json index ec72ff3331..f928308012 100644 --- a/npm/packs/blogging/package.json +++ b/npm/packs/blogging/package.json @@ -1,14 +1,14 @@ { - "version": "3.2.0", + "version": "3.2.1", "name": "@abp/blogging", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.shared": "~3.2.0", - "@abp/owl.carousel": "~3.2.0", - "@abp/prismjs": "~3.2.0", - "@abp/tui-editor": "~3.2.0" + "@abp/aspnetcore.mvc.ui.theme.shared": "~3.2.1", + "@abp/owl.carousel": "~3.2.1", + "@abp/prismjs": "~3.2.1", + "@abp/tui-editor": "~3.2.1" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" } diff --git a/npm/packs/bootstrap-datepicker/package.json b/npm/packs/bootstrap-datepicker/package.json index dde7632f9b..a89333720c 100644 --- a/npm/packs/bootstrap-datepicker/package.json +++ b/npm/packs/bootstrap-datepicker/package.json @@ -1,5 +1,5 @@ { - "version": "3.2.0", + "version": "3.2.1", "name": "@abp/bootstrap-datepicker", "publishConfig": { "access": "public" diff --git a/npm/packs/bootstrap/package.json b/npm/packs/bootstrap/package.json index f85cb12d85..6237abde25 100644 --- a/npm/packs/bootstrap/package.json +++ b/npm/packs/bootstrap/package.json @@ -1,11 +1,11 @@ { - "version": "3.2.0", + "version": "3.2.1", "name": "@abp/bootstrap", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~3.2.0", + "@abp/core": "~3.2.1", "bootstrap": "^4.5.0", "bootstrap-v4-rtl": "4.4.1-2" }, diff --git a/npm/packs/chart.js/package.json b/npm/packs/chart.js/package.json index 7ab437b75c..32fb2e96e7 100644 --- a/npm/packs/chart.js/package.json +++ b/npm/packs/chart.js/package.json @@ -1,5 +1,5 @@ { - "version": "3.2.0", + "version": "3.2.1", "name": "@abp/chart.js", "publishConfig": { "access": "public" diff --git a/npm/packs/clipboard/package.json b/npm/packs/clipboard/package.json index 46c477a0c7..f37cb77a90 100644 --- a/npm/packs/clipboard/package.json +++ b/npm/packs/clipboard/package.json @@ -1,11 +1,11 @@ { - "version": "3.2.0", + "version": "3.2.1", "name": "@abp/clipboard", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~3.2.0", + "@abp/core": "~3.2.1", "clipboard": "^2.0.6" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/codemirror/package.json b/npm/packs/codemirror/package.json index 0d2c6cbd12..ae723fdd59 100644 --- a/npm/packs/codemirror/package.json +++ b/npm/packs/codemirror/package.json @@ -1,11 +1,11 @@ { - "version": "3.2.0", + "version": "3.2.1", "name": "@abp/codemirror", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~3.2.0", + "@abp/core": "~3.2.1", "codemirror": "^5.54.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/core/package.json b/npm/packs/core/package.json index 2e70056ee8..ec0ecb0684 100644 --- a/npm/packs/core/package.json +++ b/npm/packs/core/package.json @@ -1,11 +1,11 @@ { - "version": "3.2.0", + "version": "3.2.1", "name": "@abp/core", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/utils": "^3.2.0" + "@abp/utils": "^3.2.1" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" } diff --git a/npm/packs/cropperjs/package.json b/npm/packs/cropperjs/package.json index 8730203935..657fa55023 100644 --- a/npm/packs/cropperjs/package.json +++ b/npm/packs/cropperjs/package.json @@ -1,11 +1,11 @@ { - "version": "3.2.0", + "version": "3.2.1", "name": "@abp/cropperjs", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~3.2.0", + "@abp/core": "~3.2.1", "cropperjs": "^1.5.7" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/datatables.net-bs4/package.json b/npm/packs/datatables.net-bs4/package.json index f0ba9af1b8..254e217462 100644 --- a/npm/packs/datatables.net-bs4/package.json +++ b/npm/packs/datatables.net-bs4/package.json @@ -1,11 +1,11 @@ { - "version": "3.2.0", + "version": "3.2.1", "name": "@abp/datatables.net-bs4", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/datatables.net": "~3.2.0", + "@abp/datatables.net": "~3.2.1", "datatables.net-bs4": "^1.10.21" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/datatables.net/package.json b/npm/packs/datatables.net/package.json index 6af41c035f..36c5558438 100644 --- a/npm/packs/datatables.net/package.json +++ b/npm/packs/datatables.net/package.json @@ -1,11 +1,11 @@ { - "version": "3.2.0", + "version": "3.2.1", "name": "@abp/datatables.net", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/jquery": "~3.2.0", + "@abp/jquery": "~3.2.1", "datatables.net": "^1.10.21" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/docs/package.json b/npm/packs/docs/package.json index 0f74d41885..dee50ebdf4 100644 --- a/npm/packs/docs/package.json +++ b/npm/packs/docs/package.json @@ -1,15 +1,15 @@ { - "version": "3.2.0", + "version": "3.2.1", "name": "@abp/docs", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/anchor-js": "~3.2.0", - "@abp/clipboard": "~3.2.0", - "@abp/malihu-custom-scrollbar-plugin": "~3.2.0", - "@abp/popper.js": "~3.2.0", - "@abp/prismjs": "~3.2.0" + "@abp/anchor-js": "~3.2.1", + "@abp/clipboard": "~3.2.1", + "@abp/malihu-custom-scrollbar-plugin": "~3.2.1", + "@abp/popper.js": "~3.2.1", + "@abp/prismjs": "~3.2.1" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" } diff --git a/npm/packs/flag-icon-css/package.json b/npm/packs/flag-icon-css/package.json index 4bbedfd30b..f6bc66e657 100644 --- a/npm/packs/flag-icon-css/package.json +++ b/npm/packs/flag-icon-css/package.json @@ -1,5 +1,5 @@ { - "version": "3.2.0", + "version": "3.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 6039de5eec..bb69611436 100644 --- a/npm/packs/font-awesome/package.json +++ b/npm/packs/font-awesome/package.json @@ -1,11 +1,11 @@ { - "version": "3.2.0", + "version": "3.2.1", "name": "@abp/font-awesome", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~3.2.0", + "@abp/core": "~3.2.1", "@fortawesome/fontawesome-free": "^5.13.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/highlight.js/package.json b/npm/packs/highlight.js/package.json index 11d950f58e..c8105c9be3 100644 --- a/npm/packs/highlight.js/package.json +++ b/npm/packs/highlight.js/package.json @@ -1,11 +1,11 @@ { - "version": "3.2.0", + "version": "3.2.1", "name": "@abp/highlight.js", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~3.2.0" + "@abp/core": "~3.2.1" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" } diff --git a/npm/packs/jquery-form/package.json b/npm/packs/jquery-form/package.json index 7f2691f24f..7a7adc6d87 100644 --- a/npm/packs/jquery-form/package.json +++ b/npm/packs/jquery-form/package.json @@ -1,11 +1,11 @@ { - "version": "3.2.0", + "version": "3.2.1", "name": "@abp/jquery-form", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/jquery": "~3.2.0", + "@abp/jquery": "~3.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 7e1810082d..7535eb428f 100644 --- a/npm/packs/jquery-validation-unobtrusive/package.json +++ b/npm/packs/jquery-validation-unobtrusive/package.json @@ -1,11 +1,11 @@ { - "version": "3.2.0", + "version": "3.2.1", "name": "@abp/jquery-validation-unobtrusive", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/jquery-validation": "~3.2.0", + "@abp/jquery-validation": "~3.2.1", "jquery-validation-unobtrusive": "^3.2.11" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/jquery-validation/package.json b/npm/packs/jquery-validation/package.json index 453ed73717..e713273ef7 100644 --- a/npm/packs/jquery-validation/package.json +++ b/npm/packs/jquery-validation/package.json @@ -1,11 +1,11 @@ { - "version": "3.2.0", + "version": "3.2.1", "name": "@abp/jquery-validation", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/jquery": "~3.2.0", + "@abp/jquery": "~3.2.1", "jquery-validation": "^1.19.2" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/jquery/package.json b/npm/packs/jquery/package.json index 26bc94fa2c..477f8fa934 100644 --- a/npm/packs/jquery/package.json +++ b/npm/packs/jquery/package.json @@ -1,11 +1,11 @@ { - "version": "3.2.0", + "version": "3.2.1", "name": "@abp/jquery", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~3.2.0", + "@abp/core": "~3.2.1", "jquery": "~3.5.1" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/jstree/package.json b/npm/packs/jstree/package.json index f617e79eb3..537e354eac 100644 --- a/npm/packs/jstree/package.json +++ b/npm/packs/jstree/package.json @@ -1,11 +1,11 @@ { - "version": "3.2.0", + "version": "3.2.1", "name": "@abp/jstree", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/jquery": "~3.2.0", + "@abp/jquery": "~3.2.1", "jstree": "^3.3.9" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/lodash/package.json b/npm/packs/lodash/package.json index 70079af1e2..3b442db7cb 100644 --- a/npm/packs/lodash/package.json +++ b/npm/packs/lodash/package.json @@ -1,11 +1,11 @@ { - "version": "3.2.0", + "version": "3.2.1", "name": "@abp/lodash", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~3.2.0", + "@abp/core": "~3.2.1", "lodash": "^4.17.15" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/luxon/package.json b/npm/packs/luxon/package.json index c136a899ba..13be31033d 100644 --- a/npm/packs/luxon/package.json +++ b/npm/packs/luxon/package.json @@ -1,11 +1,11 @@ { - "version": "3.2.0", + "version": "3.2.1", "name": "@abp/luxon", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~3.2.0", + "@abp/core": "~3.2.1", "luxon": "^1.24.1" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/malihu-custom-scrollbar-plugin/package.json b/npm/packs/malihu-custom-scrollbar-plugin/package.json index cea5d3c47f..7bd26cdf17 100644 --- a/npm/packs/malihu-custom-scrollbar-plugin/package.json +++ b/npm/packs/malihu-custom-scrollbar-plugin/package.json @@ -1,11 +1,11 @@ { - "version": "3.2.0", + "version": "3.2.1", "name": "@abp/malihu-custom-scrollbar-plugin", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~3.2.0", + "@abp/core": "~3.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 23412e06b2..1aeb73a0c8 100644 --- a/npm/packs/markdown-it/package.json +++ b/npm/packs/markdown-it/package.json @@ -1,11 +1,11 @@ { - "version": "3.2.0", + "version": "3.2.1", "name": "@abp/markdown-it", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~3.2.0", + "@abp/core": "~3.2.1", "markdown-it": "^11.0.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/owl.carousel/package.json b/npm/packs/owl.carousel/package.json index bc56aa7c46..58fe075155 100644 --- a/npm/packs/owl.carousel/package.json +++ b/npm/packs/owl.carousel/package.json @@ -1,11 +1,11 @@ { - "version": "3.2.0", + "version": "3.2.1", "name": "@abp/owl.carousel", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~3.2.0", + "@abp/core": "~3.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 988a522538..d236b0c729 100644 --- a/npm/packs/popper.js/package.json +++ b/npm/packs/popper.js/package.json @@ -1,11 +1,11 @@ { - "version": "3.2.0", + "version": "3.2.1", "name": "@abp/popper.js", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~3.2.0", + "@abp/core": "~3.2.1", "popper.js": "^1.16.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/prismjs/package.json b/npm/packs/prismjs/package.json index b5842be17b..323e3b8fdd 100644 --- a/npm/packs/prismjs/package.json +++ b/npm/packs/prismjs/package.json @@ -1,12 +1,12 @@ { - "version": "3.2.0", + "version": "3.2.1", "name": "@abp/prismjs", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/clipboard": "~3.2.0", - "@abp/core": "~3.2.0", + "@abp/clipboard": "~3.2.1", + "@abp/core": "~3.2.1", "prismjs": "^1.20.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/select2/package.json b/npm/packs/select2/package.json index 96ff6b4cbe..9cacd43551 100644 --- a/npm/packs/select2/package.json +++ b/npm/packs/select2/package.json @@ -1,11 +1,11 @@ { - "version": "3.2.0", + "version": "3.2.1", "name": "@abp/select2", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~3.2.0", + "@abp/core": "~3.2.1", "select2": "^4.0.13" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/signalr/package.json b/npm/packs/signalr/package.json index 3bfd1169cc..07438935ff 100644 --- a/npm/packs/signalr/package.json +++ b/npm/packs/signalr/package.json @@ -1,11 +1,11 @@ { - "version": "3.2.0", + "version": "3.2.1", "name": "@abp/signalr", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~3.2.0", + "@abp/core": "~3.2.1", "@microsoft/signalr": "~3.1.5" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/star-rating-svg/package.json b/npm/packs/star-rating-svg/package.json index ca198bb5fe..02716d9b3f 100644 --- a/npm/packs/star-rating-svg/package.json +++ b/npm/packs/star-rating-svg/package.json @@ -1,11 +1,11 @@ { - "version": "3.2.0", + "version": "3.2.1", "name": "@abp/star-rating-svg", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/jquery": "~3.2.0", + "@abp/jquery": "~3.2.1", "star-rating-svg": "^3.5.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/sweetalert/package.json b/npm/packs/sweetalert/package.json index 019edcbac6..dc4485acd5 100644 --- a/npm/packs/sweetalert/package.json +++ b/npm/packs/sweetalert/package.json @@ -1,11 +1,11 @@ { - "version": "3.2.0", + "version": "3.2.1", "name": "@abp/sweetalert", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~3.2.0", + "@abp/core": "~3.2.1", "sweetalert": "^2.1.2" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/timeago/package.json b/npm/packs/timeago/package.json index 303c3adc76..e9247cdfad 100644 --- a/npm/packs/timeago/package.json +++ b/npm/packs/timeago/package.json @@ -1,11 +1,11 @@ { - "version": "3.2.0", + "version": "3.2.1", "name": "@abp/timeago", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/jquery": "~3.2.0", + "@abp/jquery": "~3.2.1", "timeago": "^1.6.7" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/toastr/package.json b/npm/packs/toastr/package.json index bf3827df65..c6a53bf4ef 100644 --- a/npm/packs/toastr/package.json +++ b/npm/packs/toastr/package.json @@ -1,11 +1,11 @@ { - "version": "3.2.0", + "version": "3.2.1", "name": "@abp/toastr", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/jquery": "~3.2.0", + "@abp/jquery": "~3.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 b7460e54b8..2713805d05 100644 --- a/npm/packs/tui-editor/package.json +++ b/npm/packs/tui-editor/package.json @@ -1,14 +1,14 @@ { - "version": "3.2.0", + "version": "3.2.1", "name": "@abp/tui-editor", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/codemirror": "~3.2.0", - "@abp/highlight.js": "~3.2.0", - "@abp/jquery": "~3.2.0", - "@abp/markdown-it": "~3.2.0", + "@abp/codemirror": "~3.2.1", + "@abp/highlight.js": "~3.2.1", + "@abp/jquery": "~3.2.1", + "@abp/markdown-it": "~3.2.1", "tui-editor": "^1.4.10" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/uppy/package.json b/npm/packs/uppy/package.json index 7286abc02a..7784c5c891 100644 --- a/npm/packs/uppy/package.json +++ b/npm/packs/uppy/package.json @@ -1,11 +1,11 @@ { - "version": "3.2.0", + "version": "3.2.1", "name": "@abp/uppy", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~3.2.0", + "@abp/core": "~3.2.1", "uppy": "^1.16.1" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" diff --git a/npm/packs/utils/package.json b/npm/packs/utils/package.json index 2e4788bed1..1d9cc2a366 100644 --- a/npm/packs/utils/package.json +++ b/npm/packs/utils/package.json @@ -1,6 +1,6 @@ { "name": "@abp/utils", - "version": "3.2.0", + "version": "3.2.1", "scripts": { "prepublish": "yarn install --ignore-scripts && node prepublish.js", "ng": "ng", diff --git a/npm/packs/virtual-file-explorer/package.json b/npm/packs/virtual-file-explorer/package.json index 20605a9942..564f2914a5 100644 --- a/npm/packs/virtual-file-explorer/package.json +++ b/npm/packs/virtual-file-explorer/package.json @@ -1,12 +1,12 @@ { - "version": "3.2.0", + "version": "3.2.1", "name": "@abp/virtual-file-explorer", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/clipboard": "~3.2.0", - "@abp/prismjs": "~3.2.0" + "@abp/clipboard": "~3.2.1", + "@abp/prismjs": "~3.2.1" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" } diff --git a/nupkg/common.ps1 b/nupkg/common.ps1 index 52fb4ef2da..a82a9c78a3 100644 --- a/nupkg/common.ps1 +++ b/nupkg/common.ps1 @@ -46,6 +46,7 @@ $projects = ( "framework/src/Volo.Abp.AspNetCore.Mvc.UI.Packages", "framework/src/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic", "framework/src/Volo.Abp.AspNetCore.Mvc.UI.Theme.Shared", + "framework/src/Volo.Abp.AspNetCore.Mvc.UI.Theme.Shared.Demo" "framework/src/Volo.Abp.AspNetCore.Mvc.UI.Widgets", "framework/src/Volo.Abp.AspNetCore.Serilog", "framework/src/Volo.Abp.AspNetCore.SignalR", diff --git a/templates/app/angular/package.json b/templates/app/angular/package.json index 68a90c79ea..ad77d7e0d9 100644 --- a/templates/app/angular/package.json +++ b/templates/app/angular/package.json @@ -12,11 +12,11 @@ }, "private": true, "dependencies": { - "@abp/ng.account": "~3.2.0", - "@abp/ng.identity": "~3.2.0", - "@abp/ng.setting-management": "~3.2.0", - "@abp/ng.tenant-management": "~3.2.0", - "@abp/ng.theme.basic": "~3.2.0", + "@abp/ng.account": "~3.2.1", + "@abp/ng.identity": "~3.2.1", + "@abp/ng.setting-management": "~3.2.1", + "@abp/ng.tenant-management": "~3.2.1", + "@abp/ng.theme.basic": "~3.2.1", "@angular/animations": "~10.1.2", "@angular/common": "~10.1.2", "@angular/compiler": "~10.1.2", @@ -30,7 +30,7 @@ "zone.js": "~0.10.2" }, "devDependencies": { - "@abp/ng.schematics": "~3.2.0", + "@abp/ng.schematics": "~3.2.1", "@angular-devkit/build-angular": "~0.1001.2", "@angular-devkit/build-ng-packagr": "~0.1001.2", "@angular/cli": "~10.1.2", 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 114be0b5e1..0f0d1935df 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 @@ -1,7 +1,6 @@ @page "/" @using Volo.Abp.Users @using Volo.Abp.MultiTenancy -@using System.Security.Claims @using Microsoft.Extensions.Localization @using MyCompanyName.MyProjectName.Localization @inject ICurrentUser CurrentUser @@ -14,16 +13,39 @@
Congratulations, MyProjectName is successfully running!
+ + + UI Message Tests + + + + + + + + + +

Welcome to the Application

@L["LongWelcomeMessage"]

- @if (!CurrentUser.IsAuthenticated) + @if ( !CurrentUser.IsAuthenticated ) { @L["Login"] - } + }
@@ -157,18 +179,4 @@ abpframework

-
- -@code -{ - private IEnumerable _claims; - - protected override async Task OnInitializedAsync() - { - var authState = await AuthenticationStateProvider.GetAuthenticationStateAsync(); - if (authState.User.Identity.IsAuthenticated) - { - _claims = authState.User.Claims; - } - } -} +
\ No newline at end of file diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/Pages/Index.razor.cs b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/Pages/Index.razor.cs new file mode 100644 index 0000000000..0724ee6c97 --- /dev/null +++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/Pages/Index.razor.cs @@ -0,0 +1,70 @@ +using System; +using System.Collections.Generic; +using System.Security.Claims; +using System.Threading.Tasks; +using Blazorise; +using Microsoft.AspNetCore.Components; +using Volo.Abp.AspNetCore.Components.WebAssembly; + +namespace MyCompanyName.MyProjectName.Blazor.Pages +{ + public partial class Index + { + private IEnumerable _claims; + + protected override async Task OnInitializedAsync() + { + var authState = await AuthenticationStateProvider.GetAuthenticationStateAsync(); + if ( authState.User.Identity.IsAuthenticated ) + { + _claims = authState.User.Claims; + } + } + + Task OnInfoTestClicked() + { + return UiMessageService.InfoAsync( "This is the Info message", "Info", options => + { + options.OkButtonIcon = IconName.InfoCircle; + options.OkButtonText = "Hello info"; + } ); + } + + Task OnSuccessTestClicked() + { + return UiMessageService.SuccessAsync( "This is the Success message", "Success" ); + } + + Task OnWarningTestClicked() + { + return UiMessageService.WarnAsync( "This is the Warning message", "Warning" ); + } + + Task OnErrorTestClicked() + { + return UiMessageService.ErrorAsync( "This is the Error message", "Error" ); + } + + Task OnConfirmTestClicked() + { + return UiMessageService.ConfirmAsync( "Are you sure you want to delete the item?", "Confirm", options => + { + options.CancelButtonText = "Do not delete it"; + options.ConfirmButtonText = "Yes I'm sure"; + } ) + .ContinueWith( result => + { + if ( result.Result ) + { + Console.WriteLine( "Confirmed" ); + } + else + { + Console.WriteLine( "Cancelled" ); + } + } ); + } + + [Inject] IUiMessageService UiMessageService { get; set; } + } +} diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/_Imports.razor b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/_Imports.razor index b1ade9c628..3fcce1e0d0 100644 --- a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/_Imports.razor +++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/_Imports.razor @@ -9,3 +9,5 @@ @using MyCompanyName.MyProjectName.Blazor @using Blazorise @using Blazorise.DataGrid +@using Volo.Abp.BlazoriseUI; +@using Volo.Abp.BlazoriseUI.Components; \ No newline at end of file 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 9b79ab6170..64a770f40e 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": "^3.2.0" + "@abp/aspnetcore.mvc.ui.theme.basic": "^3.2.1" } } \ No newline at end of file diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.HttpApi.HostWithIds/yarn.lock b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.HttpApi.HostWithIds/yarn.lock index 523197e919..bcfe258976 100644 --- a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.HttpApi.HostWithIds/yarn.lock +++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.HttpApi.HostWithIds/yarn.lock @@ -2,37 +2,37 @@ # yarn lockfile v1 -"@abp/aspnetcore.mvc.ui.theme.basic@^3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-3.2.0.tgz#207277419356a14f686421de0ee320fad0d6857f" - integrity sha512-4xn4BPQu9QL3sM47QtPNwOei9/fnRw3dXCL7vlJBCU70jL8911C6D/Pj/CBqCEMMVPI6M4GE7Ls4AwKTvgFeTw== +"@abp/aspnetcore.mvc.ui.theme.basic@^3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-3.2.1.tgz#d8f9af85b6114d35bba5942e303b3a4b89c8cd75" + integrity sha512-utHlyw/xbtDqqA0ETrYTxZ8ZO49tI6FP3BAvRdevbhozdG8/el6BWpifZysKJv2VIm6d5P7DXD3uymCd5iX6EA== dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~3.2.0" + "@abp/aspnetcore.mvc.ui.theme.shared" "~3.2.1" -"@abp/aspnetcore.mvc.ui.theme.shared@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-3.2.0.tgz#bed24c1d28f6e85d58fa963911a09e8b2998c1b6" - integrity sha512-Ap1dPCvL7r31oFyi+3YPviFkDly5FZfWbHq2bURsEbscembpc6DOSfXehvuZ2BjqsZF3n/HX0Y1lX4irUqKqjg== - dependencies: - "@abp/aspnetcore.mvc.ui" "~3.2.0" - "@abp/bootstrap" "~3.2.0" - "@abp/bootstrap-datepicker" "~3.2.0" - "@abp/datatables.net-bs4" "~3.2.0" - "@abp/font-awesome" "~3.2.0" - "@abp/jquery-form" "~3.2.0" - "@abp/jquery-validation-unobtrusive" "~3.2.0" - "@abp/lodash" "~3.2.0" - "@abp/luxon" "~3.2.0" - "@abp/malihu-custom-scrollbar-plugin" "~3.2.0" - "@abp/select2" "~3.2.0" - "@abp/sweetalert" "~3.2.0" - "@abp/timeago" "~3.2.0" - "@abp/toastr" "~3.2.0" - -"@abp/aspnetcore.mvc.ui@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-3.2.0.tgz#01f80b9f663f4d95ceac733761833cf4648e92b5" - integrity sha512-NzH1UxEoE/FVT0LLjMNq5eSsiORLe5dE+aKr7jjbaxcuVr7QI7KI9ry6xWAZk+0cbGvsUAY0xqrMxxqiLpskxQ== +"@abp/aspnetcore.mvc.ui.theme.shared@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-3.2.1.tgz#b628602dca8d1809e32f423962cff56379a790b0" + integrity sha512-aWZAaFnN9Ncyzy84wPTfUVtcyh98Sxu4m+fsGY5XtwA/nwDTDVtLMq81ueJWyFgN9GNk8+lT6VXfPDpA/MJo/A== + dependencies: + "@abp/aspnetcore.mvc.ui" "~3.2.1" + "@abp/bootstrap" "~3.2.1" + "@abp/bootstrap-datepicker" "~3.2.1" + "@abp/datatables.net-bs4" "~3.2.1" + "@abp/font-awesome" "~3.2.1" + "@abp/jquery-form" "~3.2.1" + "@abp/jquery-validation-unobtrusive" "~3.2.1" + "@abp/lodash" "~3.2.1" + "@abp/luxon" "~3.2.1" + "@abp/malihu-custom-scrollbar-plugin" "~3.2.1" + "@abp/select2" "~3.2.1" + "@abp/sweetalert" "~3.2.1" + "@abp/timeago" "~3.2.1" + "@abp/toastr" "~3.2.1" + +"@abp/aspnetcore.mvc.ui@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-3.2.1.tgz#dc0d2c331bf09ef0f79cec739e0f64edb1105084" + integrity sha512-Fpn16MeK71Uhw6636nlXCQaSwN9lN6QFUIGIICcWU+2eMA8fK4ZtavaYGG4mWqjkd4wzUHCz2AZbmbxK7bVnng== dependencies: ansi-colors "^4.1.1" extend-object "^1.0.0" @@ -41,145 +41,145 @@ path "^0.12.7" rimraf "^3.0.2" -"@abp/bootstrap-datepicker@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-3.2.0.tgz#0a1813d8a84dd6eb6cf647244a4a91900364deb1" - integrity sha512-w7YyA5TRZqGL3qYyArwfrRc4/qWQMT0BPYDOsGMrtPJZDWeZL7WPezuiIvKNdI71BfUq6XiA1+wwMfqjcClZ2g== +"@abp/bootstrap-datepicker@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-3.2.1.tgz#5cb75bc53fab86f7b28bfc5fbfcbf233432d75ca" + integrity sha512-KzTDZTMd/TBaTDNuPF4+T+0zsmEimD2Uq8TlNw7knEEyo7a/lsfBNkBF9Xc8bjZcbC76BqajytsTzI1yftM4Uw== dependencies: bootstrap-datepicker "^1.9.0" -"@abp/bootstrap@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-3.2.0.tgz#d249338b0151734f99b8e366aea6fc17d5ef9b37" - integrity sha512-hx9r7EGb1vJrHAdw3D8Cpudv++hrM4dKoKtOKnQbxGG+Q9vwVS6SKquVxJum+bEZWa1CgXvT6co0IDOlW3pDhg== +"@abp/bootstrap@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-3.2.1.tgz#9574414f1e170240dacdf78408af34830264db97" + integrity sha512-gLIr4d5xfw5TSpSHIKr7oKznkdIbGhS+gtBitP1BFVLOU2h7/d6uTZoopC+JQU16DGvn8njo8W4DL7Amh9FOqQ== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" bootstrap "^4.5.0" bootstrap-v4-rtl "4.4.1-2" -"@abp/core@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-3.2.0.tgz#e9f07bde581b07e1b904bec3b12e0ccfc2a50125" - integrity sha512-X3iWv8QxAbqKJMoTb3vfvwGYmD9uZ+p+zn5q5Hoybyq9fjEcevpkdX7OiLvO8M+NEwCKa81wtkvvM2BnEV6Igg== +"@abp/core@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-3.2.1.tgz#3c133f67394d716df3e49f1eeb934c586df755e5" + integrity sha512-GbjrFO+oKl4JuZkYdeWtE+N837XRQr0hoX8O3pI1eAnuMku48QhGec2ZpSJuqG+c3wX6PHTZPIyHse4X+y6QgA== dependencies: - "@abp/utils" "^3.2.0" + "@abp/utils" "^3.2.1" -"@abp/datatables.net-bs4@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs4/-/datatables.net-bs4-3.2.0.tgz#8551c0ac5e29b037a86b141f41052e7a3038be89" - integrity sha512-i2LVTKAllgzhc21rb0GQ0YHtmOMyCT+6P3ZelqkoLdp56D63rVhdAOHrqjebrEHMehsuCUV2XH908kakXWIPXA== +"@abp/datatables.net-bs4@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs4/-/datatables.net-bs4-3.2.1.tgz#b008b2964472fd8c8286a7c4b1e903d93a52e760" + integrity sha512-C/MmA6URugDD1tdUS6zS413ycHCjefeIG7nnJrtJmCZix7mfbdrp/Km/vKbE1KMSEYWis0w/SxIEy0kbkIW4OQ== dependencies: - "@abp/datatables.net" "~3.2.0" + "@abp/datatables.net" "~3.2.1" datatables.net-bs4 "^1.10.21" -"@abp/datatables.net@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-3.2.0.tgz#effd0ec603b15c0de2d1db993d1416b46f4e3146" - integrity sha512-6UX/WqdlRfb3BQ2cw7LbUlMimDXtx7rHanTTWq44g+Wc8fn4fVcYyo9RWCYYOd2MWm9pElEvuzG1AzaOamjW9Q== +"@abp/datatables.net@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-3.2.1.tgz#ba7d4c875ad2bc126687bc5d8e627f3c4d7fb2f4" + integrity sha512-o8/K6RGnPkQUe5ClAxyHNBOevVBnb8qSM4NXRXR2AUtEvjal+4UL9QOf1LZ0zPv4OAjaaAiOAp9Pmbv4FWuZ8Q== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" datatables.net "^1.10.21" -"@abp/font-awesome@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-3.2.0.tgz#ad75daf1c084c2c6a0aeccc092057627ce898652" - integrity sha512-FAWBYWwg2ZtKO+0/lS/bc4YFnR7IehQ2Y+y1srIypgSY/739X4aUWb0YDW1tE0QrrFfQ//f16AyIKPynGl0T5Q== +"@abp/font-awesome@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-3.2.1.tgz#d54a6d9627fdfeb6c615550f09241d0c805e3d39" + integrity sha512-5BlAuIX4qFdf/mvycUAREmVQ8jg0tRtDnVXt0E8kUtzghhEGG91NfcZIaB4zaWAwuJSyqqjS/VJ/URy1g50NZQ== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" "@fortawesome/fontawesome-free" "^5.13.0" -"@abp/jquery-form@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-3.2.0.tgz#b1b408c0f380c8dfd99c063251f2f1fd86dff14c" - integrity sha512-ZC38zLqlMm67nONg+7ZSC7ExzLZApZ2nZ3/yM6J5LNa7IOgzDGPZgbDRBiwFdC3vIB04LhnNr83YrEvIaUnIzQ== +"@abp/jquery-form@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-3.2.1.tgz#9280b28e2103fc80b9124e3a53f2f0e03ac4bb46" + integrity sha512-Dy0wTCcmWgygrru59VPnlVw7qLu8aLTZOTpMPbSva502O19O+H7FljF9r0J7eYgoO6pcTO4R1tE/Yib3DwIBFg== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-3.2.0.tgz#91b996c743e5b1423a4d01d8808788a4bf4adb32" - integrity sha512-FSkGWvIkZTd2LITbTCdyno0ml30PZZmGYCazowHprh1iuhx0C+yCd9U/kfZ3rLoZAFtWjz0ZUq1Z7G5xXHB97A== +"@abp/jquery-validation-unobtrusive@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-3.2.1.tgz#8f0b54f0d39b00ab93638fe1537ae7bd77e3e78e" + integrity sha512-mr/jZVm8QuYO1vWcNo3ytuQEeMBvjnMiTrvoUzY1OXX+HUFR6oi8FohXgxFUypElAqQ8jelV9K0qonX1zTQhcg== dependencies: - "@abp/jquery-validation" "~3.2.0" + "@abp/jquery-validation" "~3.2.1" jquery-validation-unobtrusive "^3.2.11" -"@abp/jquery-validation@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-3.2.0.tgz#1de41e9167b41a956ce2f6e3d6f16d023fccd078" - integrity sha512-FlP7btUvAJfGoi0g8Hm474jlhtweyd/P6dRu2spApUOpKjMyUNFpp/nphmr0iQvx7JGeeaAaUhQJ2v5UKy/Z8w== +"@abp/jquery-validation@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-3.2.1.tgz#b5330eb404f357936d16f3dd81752076bfee963d" + integrity sha512-nmubyFyA8TbLdsJt8MAspSRN4St8Xn8ICB8ancdiyxbS/6u9oeKlvP4++ZZ881NlFkPsyo7GkHjfl29pNzzzJA== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" jquery-validation "^1.19.2" -"@abp/jquery@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-3.2.0.tgz#eabc0bafef3cf2b64f672c562bda1f1002b07b7c" - integrity sha512-tlvQ79cqyJ+tXEf17Vdwi6O8yo0+7bmicyy5A/iYyWWJUjXGkiouQHjHkoZ2jeyxwvqn85tBbfjeRumcZdYRMA== +"@abp/jquery@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-3.2.1.tgz#c7ee0bbff0b480b8ed01f46d1ce07ebc8c35e4a2" + integrity sha512-AvfQ9rnnb+pQUDuGnuhpCB+FzWz3EqDptoeiCDQjPXxGql3Wk5GWw6QzvuREOXcU4CoUyzigyDgnO5WaSlx8kQ== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" jquery "~3.5.1" -"@abp/lodash@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-3.2.0.tgz#63e8c51fe9e760d7debca9129bfbf01be8c12d18" - integrity sha512-/rGkJMCgbA0JLkjMXenxz6q0BXRDwvYSLUu7XotNj/cbiHpT5yHHTnWQgwxVUKEVA9xtmYUH1h20J25n/VD/tg== +"@abp/lodash@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-3.2.1.tgz#7abfe7d572eaa628c033a6d50520b8510ecce79a" + integrity sha512-ZDte0vUfM1fBrs/mRq7yCuugtYZKoP/6pOEebDOMdM1GztAEKicq8s7EXxwbqE4+kjxqeHzReh7ZwCtFAf/Zew== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" lodash "^4.17.15" -"@abp/luxon@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-3.2.0.tgz#f94b595d15d78868a4acf73803a9da8609096d39" - integrity sha512-3FF9/W+Smp4FqRJ6F5vNxydXYraVgEUsrOBkaBexVkzT/l3zBkCmrJ8i+Eib8xBXpS6Ku4nmpqbqm1VYhlxKTQ== +"@abp/luxon@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-3.2.1.tgz#ad3473f24dbacd4d1bc15a07ee75cc1db7f1df6c" + integrity sha512-WZgAMHNx1beQSA48ZJ2x2g408iBXBUvKwBwAFJqbhNhEsO95tutO80j1LNHYvXCbrAatoz6K6IDRXDXV1U3zyg== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" luxon "^1.24.1" -"@abp/malihu-custom-scrollbar-plugin@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-3.2.0.tgz#bd11a36a37ec23d38cba116934398696379158b1" - integrity sha512-BYGICB55RsYHmaICnyWdCewo0uEbopmuuUuCJlE+2IY1I4JchSWG2mV//F+jOZQmlOsjYufK70BrQQEIr+ewXw== +"@abp/malihu-custom-scrollbar-plugin@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-3.2.1.tgz#f4a19c6de14c7193eaf6c55c429580dcbcfe3965" + integrity sha512-pu8Tuh67ruG1fLEud1eves/eiBCiuowL+LVLyW+iX1bByfVlOB40nMQ7UCMQ6Jvv31pTEK2dfQ/n8K3W/pFiWQ== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/select2@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-3.2.0.tgz#729f82695bbfd7ab3d7a90059a198f338037c867" - integrity sha512-83V8jIR8RGFJ3II5G7/bitlv44OHOEENKDrT639OYIxHfgWEWm4CBhcyCnlZJqv6xB2AVDfFPgCPlDGl3x3tmw== +"@abp/select2@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-3.2.1.tgz#8a04a6f5f10cc4a48a3da37bbc38ff655e626ddf" + integrity sha512-i/euJ+kTHakwCI3Hf9+NhiQG+MYlU0iwp6GRmS2uHqgkMd2gVjnBq+elA2jsi50PXpxowv4vdBCNHcicI58W2w== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" select2 "^4.0.13" -"@abp/sweetalert@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/sweetalert/-/sweetalert-3.2.0.tgz#05040b7276ca2ce62ffc20865d64fb6e0fdb62cb" - integrity sha512-BEgbWwWX2uOsVS/zV6OzlxRBCtSlqeAYdSkmDjQ7pzCthwZXPPFr1o8UXyp9W7GKwDg3lfWTQPkkm+2y587xEw== +"@abp/sweetalert@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/sweetalert/-/sweetalert-3.2.1.tgz#be99820491499fea06259fbc584e799a51cbabf3" + integrity sha512-If5UJQVJ05aEbxPHrwRpuEzCT5ygOHmPzpBblpzSo5XxNNDGGlumnwYmtbXBSXutXrIR0b5//Bo1EgBVtmJHOg== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" sweetalert "^2.1.2" -"@abp/timeago@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-3.2.0.tgz#e4a207566c00ccb3161ee91c6f6ce26419e4bbaf" - integrity sha512-VUk8c3hITZfu5aA21XB2Qaw5fwoeAl36Piy0Cb3aUOCFjyGWg19htXxDoT7rzqZ5UJFN0VRYg9MzciXZrFN5/w== +"@abp/timeago@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-3.2.1.tgz#4e5e6c76d5440de65646a076ce1a9d7225882243" + integrity sha512-4WLWoCYiSg5zYPcogV47TXA+YomDHHY0YfHHWmr6TP2bHd5ghsnMqnnkt58nUN9Psd77teo+Mo9jgR0h2IxRwQ== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" timeago "^1.6.7" -"@abp/toastr@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-3.2.0.tgz#059e1e1e998207a6f75db2bfe717bec2a0b6d955" - integrity sha512-EKikZVQDaX/uQfc0rWsW2x+UDsO4r80KC3pLvRaLXW5IEwEhTpYwZDUGReOEQ8YEk7UKOXrVJA07mxkbdOzyAw== +"@abp/toastr@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-3.2.1.tgz#d35b44234ca6cbd5da6cc5f65d15e827bd7970dc" + integrity sha512-nBmWGL49psSF2tcNnR6PGBcfFAxo2u5HHNRzv2c2z46ZEGFa5DjuY46KZC24jMWY+yprINQewhKTmQUqJvaHqA== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" toastr "^2.1.4" -"@abp/utils@^3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-3.2.0.tgz#084918379f2c5e43c1e52291ba6667f3ea3c1f33" - integrity sha512-DZsvF/I5o3r0D1+2B61KvJX78/tJ5uj9MaPq00Z/sxXdqsP2SQQmjhMm+Lb0FgGMK06XIoF9eDgM3Hu0y0H3cQ== +"@abp/utils@^3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-3.2.1.tgz#960a0bbdfb781bbd6fb05e80bba2b9d95f2ae44c" + integrity sha512-bqYa1VIi1tZXCUbP2Z1WlcgPD4/wjhDVM1jiAN9UzDls1K3u+e2LyR4gLoN39WW1ULjCIhyzEAw/JgTcMmpUBw== dependencies: just-compare "^1.3.0" 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 fba2dab1f7..3c54abaaa7 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": "^3.2.0" + "@abp/aspnetcore.mvc.ui.theme.basic": "^3.2.1" } } \ No newline at end of file diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.IdentityServer/yarn.lock b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.IdentityServer/yarn.lock index 72a5d2df3d..b8e6718657 100644 --- a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.IdentityServer/yarn.lock +++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.IdentityServer/yarn.lock @@ -2,37 +2,37 @@ # yarn lockfile v1 -"@abp/aspnetcore.mvc.ui.theme.basic@^3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-3.2.0.tgz#207277419356a14f686421de0ee320fad0d6857f" - integrity sha512-4xn4BPQu9QL3sM47QtPNwOei9/fnRw3dXCL7vlJBCU70jL8911C6D/Pj/CBqCEMMVPI6M4GE7Ls4AwKTvgFeTw== +"@abp/aspnetcore.mvc.ui.theme.basic@^3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-3.2.1.tgz#d8f9af85b6114d35bba5942e303b3a4b89c8cd75" + integrity sha512-utHlyw/xbtDqqA0ETrYTxZ8ZO49tI6FP3BAvRdevbhozdG8/el6BWpifZysKJv2VIm6d5P7DXD3uymCd5iX6EA== dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~3.2.0" + "@abp/aspnetcore.mvc.ui.theme.shared" "~3.2.1" -"@abp/aspnetcore.mvc.ui.theme.shared@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-3.2.0.tgz#bed24c1d28f6e85d58fa963911a09e8b2998c1b6" - integrity sha512-Ap1dPCvL7r31oFyi+3YPviFkDly5FZfWbHq2bURsEbscembpc6DOSfXehvuZ2BjqsZF3n/HX0Y1lX4irUqKqjg== - dependencies: - "@abp/aspnetcore.mvc.ui" "~3.2.0" - "@abp/bootstrap" "~3.2.0" - "@abp/bootstrap-datepicker" "~3.2.0" - "@abp/datatables.net-bs4" "~3.2.0" - "@abp/font-awesome" "~3.2.0" - "@abp/jquery-form" "~3.2.0" - "@abp/jquery-validation-unobtrusive" "~3.2.0" - "@abp/lodash" "~3.2.0" - "@abp/luxon" "~3.2.0" - "@abp/malihu-custom-scrollbar-plugin" "~3.2.0" - "@abp/select2" "~3.2.0" - "@abp/sweetalert" "~3.2.0" - "@abp/timeago" "~3.2.0" - "@abp/toastr" "~3.2.0" - -"@abp/aspnetcore.mvc.ui@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-3.2.0.tgz#01f80b9f663f4d95ceac733761833cf4648e92b5" - integrity sha512-NzH1UxEoE/FVT0LLjMNq5eSsiORLe5dE+aKr7jjbaxcuVr7QI7KI9ry6xWAZk+0cbGvsUAY0xqrMxxqiLpskxQ== +"@abp/aspnetcore.mvc.ui.theme.shared@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-3.2.1.tgz#b628602dca8d1809e32f423962cff56379a790b0" + integrity sha512-aWZAaFnN9Ncyzy84wPTfUVtcyh98Sxu4m+fsGY5XtwA/nwDTDVtLMq81ueJWyFgN9GNk8+lT6VXfPDpA/MJo/A== + dependencies: + "@abp/aspnetcore.mvc.ui" "~3.2.1" + "@abp/bootstrap" "~3.2.1" + "@abp/bootstrap-datepicker" "~3.2.1" + "@abp/datatables.net-bs4" "~3.2.1" + "@abp/font-awesome" "~3.2.1" + "@abp/jquery-form" "~3.2.1" + "@abp/jquery-validation-unobtrusive" "~3.2.1" + "@abp/lodash" "~3.2.1" + "@abp/luxon" "~3.2.1" + "@abp/malihu-custom-scrollbar-plugin" "~3.2.1" + "@abp/select2" "~3.2.1" + "@abp/sweetalert" "~3.2.1" + "@abp/timeago" "~3.2.1" + "@abp/toastr" "~3.2.1" + +"@abp/aspnetcore.mvc.ui@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-3.2.1.tgz#dc0d2c331bf09ef0f79cec739e0f64edb1105084" + integrity sha512-Fpn16MeK71Uhw6636nlXCQaSwN9lN6QFUIGIICcWU+2eMA8fK4ZtavaYGG4mWqjkd4wzUHCz2AZbmbxK7bVnng== dependencies: ansi-colors "^4.1.1" extend-object "^1.0.0" @@ -41,145 +41,145 @@ path "^0.12.7" rimraf "^3.0.2" -"@abp/bootstrap-datepicker@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-3.2.0.tgz#0a1813d8a84dd6eb6cf647244a4a91900364deb1" - integrity sha512-w7YyA5TRZqGL3qYyArwfrRc4/qWQMT0BPYDOsGMrtPJZDWeZL7WPezuiIvKNdI71BfUq6XiA1+wwMfqjcClZ2g== +"@abp/bootstrap-datepicker@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-3.2.1.tgz#5cb75bc53fab86f7b28bfc5fbfcbf233432d75ca" + integrity sha512-KzTDZTMd/TBaTDNuPF4+T+0zsmEimD2Uq8TlNw7knEEyo7a/lsfBNkBF9Xc8bjZcbC76BqajytsTzI1yftM4Uw== dependencies: bootstrap-datepicker "^1.9.0" -"@abp/bootstrap@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-3.2.0.tgz#d249338b0151734f99b8e366aea6fc17d5ef9b37" - integrity sha512-hx9r7EGb1vJrHAdw3D8Cpudv++hrM4dKoKtOKnQbxGG+Q9vwVS6SKquVxJum+bEZWa1CgXvT6co0IDOlW3pDhg== +"@abp/bootstrap@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-3.2.1.tgz#9574414f1e170240dacdf78408af34830264db97" + integrity sha512-gLIr4d5xfw5TSpSHIKr7oKznkdIbGhS+gtBitP1BFVLOU2h7/d6uTZoopC+JQU16DGvn8njo8W4DL7Amh9FOqQ== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" bootstrap "^4.5.0" bootstrap-v4-rtl "4.4.1-2" -"@abp/core@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-3.2.0.tgz#e9f07bde581b07e1b904bec3b12e0ccfc2a50125" - integrity sha512-X3iWv8QxAbqKJMoTb3vfvwGYmD9uZ+p+zn5q5Hoybyq9fjEcevpkdX7OiLvO8M+NEwCKa81wtkvvM2BnEV6Igg== +"@abp/core@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-3.2.1.tgz#3c133f67394d716df3e49f1eeb934c586df755e5" + integrity sha512-GbjrFO+oKl4JuZkYdeWtE+N837XRQr0hoX8O3pI1eAnuMku48QhGec2ZpSJuqG+c3wX6PHTZPIyHse4X+y6QgA== dependencies: - "@abp/utils" "^3.2.0" + "@abp/utils" "^3.2.1" -"@abp/datatables.net-bs4@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs4/-/datatables.net-bs4-3.2.0.tgz#8551c0ac5e29b037a86b141f41052e7a3038be89" - integrity sha512-i2LVTKAllgzhc21rb0GQ0YHtmOMyCT+6P3ZelqkoLdp56D63rVhdAOHrqjebrEHMehsuCUV2XH908kakXWIPXA== +"@abp/datatables.net-bs4@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs4/-/datatables.net-bs4-3.2.1.tgz#b008b2964472fd8c8286a7c4b1e903d93a52e760" + integrity sha512-C/MmA6URugDD1tdUS6zS413ycHCjefeIG7nnJrtJmCZix7mfbdrp/Km/vKbE1KMSEYWis0w/SxIEy0kbkIW4OQ== dependencies: - "@abp/datatables.net" "~3.2.0" + "@abp/datatables.net" "~3.2.1" datatables.net-bs4 "^1.10.21" -"@abp/datatables.net@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-3.2.0.tgz#effd0ec603b15c0de2d1db993d1416b46f4e3146" - integrity sha512-6UX/WqdlRfb3BQ2cw7LbUlMimDXtx7rHanTTWq44g+Wc8fn4fVcYyo9RWCYYOd2MWm9pElEvuzG1AzaOamjW9Q== +"@abp/datatables.net@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-3.2.1.tgz#ba7d4c875ad2bc126687bc5d8e627f3c4d7fb2f4" + integrity sha512-o8/K6RGnPkQUe5ClAxyHNBOevVBnb8qSM4NXRXR2AUtEvjal+4UL9QOf1LZ0zPv4OAjaaAiOAp9Pmbv4FWuZ8Q== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" datatables.net "^1.10.21" -"@abp/font-awesome@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-3.2.0.tgz#ad75daf1c084c2c6a0aeccc092057627ce898652" - integrity sha512-FAWBYWwg2ZtKO+0/lS/bc4YFnR7IehQ2Y+y1srIypgSY/739X4aUWb0YDW1tE0QrrFfQ//f16AyIKPynGl0T5Q== +"@abp/font-awesome@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-3.2.1.tgz#d54a6d9627fdfeb6c615550f09241d0c805e3d39" + integrity sha512-5BlAuIX4qFdf/mvycUAREmVQ8jg0tRtDnVXt0E8kUtzghhEGG91NfcZIaB4zaWAwuJSyqqjS/VJ/URy1g50NZQ== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" "@fortawesome/fontawesome-free" "^5.13.0" -"@abp/jquery-form@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-3.2.0.tgz#b1b408c0f380c8dfd99c063251f2f1fd86dff14c" - integrity sha512-ZC38zLqlMm67nONg+7ZSC7ExzLZApZ2nZ3/yM6J5LNa7IOgzDGPZgbDRBiwFdC3vIB04LhnNr83YrEvIaUnIzQ== +"@abp/jquery-form@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-3.2.1.tgz#9280b28e2103fc80b9124e3a53f2f0e03ac4bb46" + integrity sha512-Dy0wTCcmWgygrru59VPnlVw7qLu8aLTZOTpMPbSva502O19O+H7FljF9r0J7eYgoO6pcTO4R1tE/Yib3DwIBFg== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-3.2.0.tgz#91b996c743e5b1423a4d01d8808788a4bf4adb32" - integrity sha512-FSkGWvIkZTd2LITbTCdyno0ml30PZZmGYCazowHprh1iuhx0C+yCd9U/kfZ3rLoZAFtWjz0ZUq1Z7G5xXHB97A== +"@abp/jquery-validation-unobtrusive@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-3.2.1.tgz#8f0b54f0d39b00ab93638fe1537ae7bd77e3e78e" + integrity sha512-mr/jZVm8QuYO1vWcNo3ytuQEeMBvjnMiTrvoUzY1OXX+HUFR6oi8FohXgxFUypElAqQ8jelV9K0qonX1zTQhcg== dependencies: - "@abp/jquery-validation" "~3.2.0" + "@abp/jquery-validation" "~3.2.1" jquery-validation-unobtrusive "^3.2.11" -"@abp/jquery-validation@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-3.2.0.tgz#1de41e9167b41a956ce2f6e3d6f16d023fccd078" - integrity sha512-FlP7btUvAJfGoi0g8Hm474jlhtweyd/P6dRu2spApUOpKjMyUNFpp/nphmr0iQvx7JGeeaAaUhQJ2v5UKy/Z8w== +"@abp/jquery-validation@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-3.2.1.tgz#b5330eb404f357936d16f3dd81752076bfee963d" + integrity sha512-nmubyFyA8TbLdsJt8MAspSRN4St8Xn8ICB8ancdiyxbS/6u9oeKlvP4++ZZ881NlFkPsyo7GkHjfl29pNzzzJA== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" jquery-validation "^1.19.2" -"@abp/jquery@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-3.2.0.tgz#eabc0bafef3cf2b64f672c562bda1f1002b07b7c" - integrity sha512-tlvQ79cqyJ+tXEf17Vdwi6O8yo0+7bmicyy5A/iYyWWJUjXGkiouQHjHkoZ2jeyxwvqn85tBbfjeRumcZdYRMA== +"@abp/jquery@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-3.2.1.tgz#c7ee0bbff0b480b8ed01f46d1ce07ebc8c35e4a2" + integrity sha512-AvfQ9rnnb+pQUDuGnuhpCB+FzWz3EqDptoeiCDQjPXxGql3Wk5GWw6QzvuREOXcU4CoUyzigyDgnO5WaSlx8kQ== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" jquery "~3.5.1" -"@abp/lodash@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-3.2.0.tgz#63e8c51fe9e760d7debca9129bfbf01be8c12d18" - integrity sha512-/rGkJMCgbA0JLkjMXenxz6q0BXRDwvYSLUu7XotNj/cbiHpT5yHHTnWQgwxVUKEVA9xtmYUH1h20J25n/VD/tg== +"@abp/lodash@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-3.2.1.tgz#7abfe7d572eaa628c033a6d50520b8510ecce79a" + integrity sha512-ZDte0vUfM1fBrs/mRq7yCuugtYZKoP/6pOEebDOMdM1GztAEKicq8s7EXxwbqE4+kjxqeHzReh7ZwCtFAf/Zew== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" lodash "^4.17.15" -"@abp/luxon@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-3.2.0.tgz#f94b595d15d78868a4acf73803a9da8609096d39" - integrity sha512-3FF9/W+Smp4FqRJ6F5vNxydXYraVgEUsrOBkaBexVkzT/l3zBkCmrJ8i+Eib8xBXpS6Ku4nmpqbqm1VYhlxKTQ== +"@abp/luxon@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-3.2.1.tgz#ad3473f24dbacd4d1bc15a07ee75cc1db7f1df6c" + integrity sha512-WZgAMHNx1beQSA48ZJ2x2g408iBXBUvKwBwAFJqbhNhEsO95tutO80j1LNHYvXCbrAatoz6K6IDRXDXV1U3zyg== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" luxon "^1.24.1" -"@abp/malihu-custom-scrollbar-plugin@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-3.2.0.tgz#bd11a36a37ec23d38cba116934398696379158b1" - integrity sha512-BYGICB55RsYHmaICnyWdCewo0uEbopmuuUuCJlE+2IY1I4JchSWG2mV//F+jOZQmlOsjYufK70BrQQEIr+ewXw== +"@abp/malihu-custom-scrollbar-plugin@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-3.2.1.tgz#f4a19c6de14c7193eaf6c55c429580dcbcfe3965" + integrity sha512-pu8Tuh67ruG1fLEud1eves/eiBCiuowL+LVLyW+iX1bByfVlOB40nMQ7UCMQ6Jvv31pTEK2dfQ/n8K3W/pFiWQ== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/select2@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-3.2.0.tgz#729f82695bbfd7ab3d7a90059a198f338037c867" - integrity sha512-83V8jIR8RGFJ3II5G7/bitlv44OHOEENKDrT639OYIxHfgWEWm4CBhcyCnlZJqv6xB2AVDfFPgCPlDGl3x3tmw== +"@abp/select2@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-3.2.1.tgz#8a04a6f5f10cc4a48a3da37bbc38ff655e626ddf" + integrity sha512-i/euJ+kTHakwCI3Hf9+NhiQG+MYlU0iwp6GRmS2uHqgkMd2gVjnBq+elA2jsi50PXpxowv4vdBCNHcicI58W2w== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" select2 "^4.0.13" -"@abp/sweetalert@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/sweetalert/-/sweetalert-3.2.0.tgz#05040b7276ca2ce62ffc20865d64fb6e0fdb62cb" - integrity sha512-BEgbWwWX2uOsVS/zV6OzlxRBCtSlqeAYdSkmDjQ7pzCthwZXPPFr1o8UXyp9W7GKwDg3lfWTQPkkm+2y587xEw== +"@abp/sweetalert@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/sweetalert/-/sweetalert-3.2.1.tgz#be99820491499fea06259fbc584e799a51cbabf3" + integrity sha512-If5UJQVJ05aEbxPHrwRpuEzCT5ygOHmPzpBblpzSo5XxNNDGGlumnwYmtbXBSXutXrIR0b5//Bo1EgBVtmJHOg== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" sweetalert "^2.1.2" -"@abp/timeago@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-3.2.0.tgz#e4a207566c00ccb3161ee91c6f6ce26419e4bbaf" - integrity sha512-VUk8c3hITZfu5aA21XB2Qaw5fwoeAl36Piy0Cb3aUOCFjyGWg19htXxDoT7rzqZ5UJFN0VRYg9MzciXZrFN5/w== +"@abp/timeago@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-3.2.1.tgz#4e5e6c76d5440de65646a076ce1a9d7225882243" + integrity sha512-4WLWoCYiSg5zYPcogV47TXA+YomDHHY0YfHHWmr6TP2bHd5ghsnMqnnkt58nUN9Psd77teo+Mo9jgR0h2IxRwQ== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" timeago "^1.6.7" -"@abp/toastr@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-3.2.0.tgz#059e1e1e998207a6f75db2bfe717bec2a0b6d955" - integrity sha512-EKikZVQDaX/uQfc0rWsW2x+UDsO4r80KC3pLvRaLXW5IEwEhTpYwZDUGReOEQ8YEk7UKOXrVJA07mxkbdOzyAw== +"@abp/toastr@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-3.2.1.tgz#d35b44234ca6cbd5da6cc5f65d15e827bd7970dc" + integrity sha512-nBmWGL49psSF2tcNnR6PGBcfFAxo2u5HHNRzv2c2z46ZEGFa5DjuY46KZC24jMWY+yprINQewhKTmQUqJvaHqA== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" toastr "^2.1.4" -"@abp/utils@^3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-3.2.0.tgz#084918379f2c5e43c1e52291ba6667f3ea3c1f33" - integrity sha512-DZsvF/I5o3r0D1+2B61KvJX78/tJ5uj9MaPq00Z/sxXdqsP2SQQmjhMm+Lb0FgGMK06XIoF9eDgM3Hu0y0H3cQ== +"@abp/utils@^3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-3.2.1.tgz#960a0bbdfb781bbd6fb05e80bba2b9d95f2ae44c" + integrity sha512-bqYa1VIi1tZXCUbP2Z1WlcgPD4/wjhDVM1jiAN9UzDls1K3u+e2LyR4gLoN39WW1ULjCIhyzEAw/JgTcMmpUBw== dependencies: just-compare "^1.3.0" 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 9b79ab6170..64a770f40e 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": "^3.2.0" + "@abp/aspnetcore.mvc.ui.theme.basic": "^3.2.1" } } \ No newline at end of file diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web.Host/yarn.lock b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web.Host/yarn.lock index 72a5d2df3d..b8e6718657 100644 --- a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web.Host/yarn.lock +++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web.Host/yarn.lock @@ -2,37 +2,37 @@ # yarn lockfile v1 -"@abp/aspnetcore.mvc.ui.theme.basic@^3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-3.2.0.tgz#207277419356a14f686421de0ee320fad0d6857f" - integrity sha512-4xn4BPQu9QL3sM47QtPNwOei9/fnRw3dXCL7vlJBCU70jL8911C6D/Pj/CBqCEMMVPI6M4GE7Ls4AwKTvgFeTw== +"@abp/aspnetcore.mvc.ui.theme.basic@^3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-3.2.1.tgz#d8f9af85b6114d35bba5942e303b3a4b89c8cd75" + integrity sha512-utHlyw/xbtDqqA0ETrYTxZ8ZO49tI6FP3BAvRdevbhozdG8/el6BWpifZysKJv2VIm6d5P7DXD3uymCd5iX6EA== dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~3.2.0" + "@abp/aspnetcore.mvc.ui.theme.shared" "~3.2.1" -"@abp/aspnetcore.mvc.ui.theme.shared@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-3.2.0.tgz#bed24c1d28f6e85d58fa963911a09e8b2998c1b6" - integrity sha512-Ap1dPCvL7r31oFyi+3YPviFkDly5FZfWbHq2bURsEbscembpc6DOSfXehvuZ2BjqsZF3n/HX0Y1lX4irUqKqjg== - dependencies: - "@abp/aspnetcore.mvc.ui" "~3.2.0" - "@abp/bootstrap" "~3.2.0" - "@abp/bootstrap-datepicker" "~3.2.0" - "@abp/datatables.net-bs4" "~3.2.0" - "@abp/font-awesome" "~3.2.0" - "@abp/jquery-form" "~3.2.0" - "@abp/jquery-validation-unobtrusive" "~3.2.0" - "@abp/lodash" "~3.2.0" - "@abp/luxon" "~3.2.0" - "@abp/malihu-custom-scrollbar-plugin" "~3.2.0" - "@abp/select2" "~3.2.0" - "@abp/sweetalert" "~3.2.0" - "@abp/timeago" "~3.2.0" - "@abp/toastr" "~3.2.0" - -"@abp/aspnetcore.mvc.ui@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-3.2.0.tgz#01f80b9f663f4d95ceac733761833cf4648e92b5" - integrity sha512-NzH1UxEoE/FVT0LLjMNq5eSsiORLe5dE+aKr7jjbaxcuVr7QI7KI9ry6xWAZk+0cbGvsUAY0xqrMxxqiLpskxQ== +"@abp/aspnetcore.mvc.ui.theme.shared@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-3.2.1.tgz#b628602dca8d1809e32f423962cff56379a790b0" + integrity sha512-aWZAaFnN9Ncyzy84wPTfUVtcyh98Sxu4m+fsGY5XtwA/nwDTDVtLMq81ueJWyFgN9GNk8+lT6VXfPDpA/MJo/A== + dependencies: + "@abp/aspnetcore.mvc.ui" "~3.2.1" + "@abp/bootstrap" "~3.2.1" + "@abp/bootstrap-datepicker" "~3.2.1" + "@abp/datatables.net-bs4" "~3.2.1" + "@abp/font-awesome" "~3.2.1" + "@abp/jquery-form" "~3.2.1" + "@abp/jquery-validation-unobtrusive" "~3.2.1" + "@abp/lodash" "~3.2.1" + "@abp/luxon" "~3.2.1" + "@abp/malihu-custom-scrollbar-plugin" "~3.2.1" + "@abp/select2" "~3.2.1" + "@abp/sweetalert" "~3.2.1" + "@abp/timeago" "~3.2.1" + "@abp/toastr" "~3.2.1" + +"@abp/aspnetcore.mvc.ui@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-3.2.1.tgz#dc0d2c331bf09ef0f79cec739e0f64edb1105084" + integrity sha512-Fpn16MeK71Uhw6636nlXCQaSwN9lN6QFUIGIICcWU+2eMA8fK4ZtavaYGG4mWqjkd4wzUHCz2AZbmbxK7bVnng== dependencies: ansi-colors "^4.1.1" extend-object "^1.0.0" @@ -41,145 +41,145 @@ path "^0.12.7" rimraf "^3.0.2" -"@abp/bootstrap-datepicker@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-3.2.0.tgz#0a1813d8a84dd6eb6cf647244a4a91900364deb1" - integrity sha512-w7YyA5TRZqGL3qYyArwfrRc4/qWQMT0BPYDOsGMrtPJZDWeZL7WPezuiIvKNdI71BfUq6XiA1+wwMfqjcClZ2g== +"@abp/bootstrap-datepicker@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-3.2.1.tgz#5cb75bc53fab86f7b28bfc5fbfcbf233432d75ca" + integrity sha512-KzTDZTMd/TBaTDNuPF4+T+0zsmEimD2Uq8TlNw7knEEyo7a/lsfBNkBF9Xc8bjZcbC76BqajytsTzI1yftM4Uw== dependencies: bootstrap-datepicker "^1.9.0" -"@abp/bootstrap@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-3.2.0.tgz#d249338b0151734f99b8e366aea6fc17d5ef9b37" - integrity sha512-hx9r7EGb1vJrHAdw3D8Cpudv++hrM4dKoKtOKnQbxGG+Q9vwVS6SKquVxJum+bEZWa1CgXvT6co0IDOlW3pDhg== +"@abp/bootstrap@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-3.2.1.tgz#9574414f1e170240dacdf78408af34830264db97" + integrity sha512-gLIr4d5xfw5TSpSHIKr7oKznkdIbGhS+gtBitP1BFVLOU2h7/d6uTZoopC+JQU16DGvn8njo8W4DL7Amh9FOqQ== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" bootstrap "^4.5.0" bootstrap-v4-rtl "4.4.1-2" -"@abp/core@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-3.2.0.tgz#e9f07bde581b07e1b904bec3b12e0ccfc2a50125" - integrity sha512-X3iWv8QxAbqKJMoTb3vfvwGYmD9uZ+p+zn5q5Hoybyq9fjEcevpkdX7OiLvO8M+NEwCKa81wtkvvM2BnEV6Igg== +"@abp/core@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-3.2.1.tgz#3c133f67394d716df3e49f1eeb934c586df755e5" + integrity sha512-GbjrFO+oKl4JuZkYdeWtE+N837XRQr0hoX8O3pI1eAnuMku48QhGec2ZpSJuqG+c3wX6PHTZPIyHse4X+y6QgA== dependencies: - "@abp/utils" "^3.2.0" + "@abp/utils" "^3.2.1" -"@abp/datatables.net-bs4@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs4/-/datatables.net-bs4-3.2.0.tgz#8551c0ac5e29b037a86b141f41052e7a3038be89" - integrity sha512-i2LVTKAllgzhc21rb0GQ0YHtmOMyCT+6P3ZelqkoLdp56D63rVhdAOHrqjebrEHMehsuCUV2XH908kakXWIPXA== +"@abp/datatables.net-bs4@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs4/-/datatables.net-bs4-3.2.1.tgz#b008b2964472fd8c8286a7c4b1e903d93a52e760" + integrity sha512-C/MmA6URugDD1tdUS6zS413ycHCjefeIG7nnJrtJmCZix7mfbdrp/Km/vKbE1KMSEYWis0w/SxIEy0kbkIW4OQ== dependencies: - "@abp/datatables.net" "~3.2.0" + "@abp/datatables.net" "~3.2.1" datatables.net-bs4 "^1.10.21" -"@abp/datatables.net@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-3.2.0.tgz#effd0ec603b15c0de2d1db993d1416b46f4e3146" - integrity sha512-6UX/WqdlRfb3BQ2cw7LbUlMimDXtx7rHanTTWq44g+Wc8fn4fVcYyo9RWCYYOd2MWm9pElEvuzG1AzaOamjW9Q== +"@abp/datatables.net@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-3.2.1.tgz#ba7d4c875ad2bc126687bc5d8e627f3c4d7fb2f4" + integrity sha512-o8/K6RGnPkQUe5ClAxyHNBOevVBnb8qSM4NXRXR2AUtEvjal+4UL9QOf1LZ0zPv4OAjaaAiOAp9Pmbv4FWuZ8Q== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" datatables.net "^1.10.21" -"@abp/font-awesome@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-3.2.0.tgz#ad75daf1c084c2c6a0aeccc092057627ce898652" - integrity sha512-FAWBYWwg2ZtKO+0/lS/bc4YFnR7IehQ2Y+y1srIypgSY/739X4aUWb0YDW1tE0QrrFfQ//f16AyIKPynGl0T5Q== +"@abp/font-awesome@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-3.2.1.tgz#d54a6d9627fdfeb6c615550f09241d0c805e3d39" + integrity sha512-5BlAuIX4qFdf/mvycUAREmVQ8jg0tRtDnVXt0E8kUtzghhEGG91NfcZIaB4zaWAwuJSyqqjS/VJ/URy1g50NZQ== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" "@fortawesome/fontawesome-free" "^5.13.0" -"@abp/jquery-form@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-3.2.0.tgz#b1b408c0f380c8dfd99c063251f2f1fd86dff14c" - integrity sha512-ZC38zLqlMm67nONg+7ZSC7ExzLZApZ2nZ3/yM6J5LNa7IOgzDGPZgbDRBiwFdC3vIB04LhnNr83YrEvIaUnIzQ== +"@abp/jquery-form@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-3.2.1.tgz#9280b28e2103fc80b9124e3a53f2f0e03ac4bb46" + integrity sha512-Dy0wTCcmWgygrru59VPnlVw7qLu8aLTZOTpMPbSva502O19O+H7FljF9r0J7eYgoO6pcTO4R1tE/Yib3DwIBFg== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-3.2.0.tgz#91b996c743e5b1423a4d01d8808788a4bf4adb32" - integrity sha512-FSkGWvIkZTd2LITbTCdyno0ml30PZZmGYCazowHprh1iuhx0C+yCd9U/kfZ3rLoZAFtWjz0ZUq1Z7G5xXHB97A== +"@abp/jquery-validation-unobtrusive@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-3.2.1.tgz#8f0b54f0d39b00ab93638fe1537ae7bd77e3e78e" + integrity sha512-mr/jZVm8QuYO1vWcNo3ytuQEeMBvjnMiTrvoUzY1OXX+HUFR6oi8FohXgxFUypElAqQ8jelV9K0qonX1zTQhcg== dependencies: - "@abp/jquery-validation" "~3.2.0" + "@abp/jquery-validation" "~3.2.1" jquery-validation-unobtrusive "^3.2.11" -"@abp/jquery-validation@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-3.2.0.tgz#1de41e9167b41a956ce2f6e3d6f16d023fccd078" - integrity sha512-FlP7btUvAJfGoi0g8Hm474jlhtweyd/P6dRu2spApUOpKjMyUNFpp/nphmr0iQvx7JGeeaAaUhQJ2v5UKy/Z8w== +"@abp/jquery-validation@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-3.2.1.tgz#b5330eb404f357936d16f3dd81752076bfee963d" + integrity sha512-nmubyFyA8TbLdsJt8MAspSRN4St8Xn8ICB8ancdiyxbS/6u9oeKlvP4++ZZ881NlFkPsyo7GkHjfl29pNzzzJA== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" jquery-validation "^1.19.2" -"@abp/jquery@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-3.2.0.tgz#eabc0bafef3cf2b64f672c562bda1f1002b07b7c" - integrity sha512-tlvQ79cqyJ+tXEf17Vdwi6O8yo0+7bmicyy5A/iYyWWJUjXGkiouQHjHkoZ2jeyxwvqn85tBbfjeRumcZdYRMA== +"@abp/jquery@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-3.2.1.tgz#c7ee0bbff0b480b8ed01f46d1ce07ebc8c35e4a2" + integrity sha512-AvfQ9rnnb+pQUDuGnuhpCB+FzWz3EqDptoeiCDQjPXxGql3Wk5GWw6QzvuREOXcU4CoUyzigyDgnO5WaSlx8kQ== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" jquery "~3.5.1" -"@abp/lodash@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-3.2.0.tgz#63e8c51fe9e760d7debca9129bfbf01be8c12d18" - integrity sha512-/rGkJMCgbA0JLkjMXenxz6q0BXRDwvYSLUu7XotNj/cbiHpT5yHHTnWQgwxVUKEVA9xtmYUH1h20J25n/VD/tg== +"@abp/lodash@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-3.2.1.tgz#7abfe7d572eaa628c033a6d50520b8510ecce79a" + integrity sha512-ZDte0vUfM1fBrs/mRq7yCuugtYZKoP/6pOEebDOMdM1GztAEKicq8s7EXxwbqE4+kjxqeHzReh7ZwCtFAf/Zew== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" lodash "^4.17.15" -"@abp/luxon@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-3.2.0.tgz#f94b595d15d78868a4acf73803a9da8609096d39" - integrity sha512-3FF9/W+Smp4FqRJ6F5vNxydXYraVgEUsrOBkaBexVkzT/l3zBkCmrJ8i+Eib8xBXpS6Ku4nmpqbqm1VYhlxKTQ== +"@abp/luxon@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-3.2.1.tgz#ad3473f24dbacd4d1bc15a07ee75cc1db7f1df6c" + integrity sha512-WZgAMHNx1beQSA48ZJ2x2g408iBXBUvKwBwAFJqbhNhEsO95tutO80j1LNHYvXCbrAatoz6K6IDRXDXV1U3zyg== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" luxon "^1.24.1" -"@abp/malihu-custom-scrollbar-plugin@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-3.2.0.tgz#bd11a36a37ec23d38cba116934398696379158b1" - integrity sha512-BYGICB55RsYHmaICnyWdCewo0uEbopmuuUuCJlE+2IY1I4JchSWG2mV//F+jOZQmlOsjYufK70BrQQEIr+ewXw== +"@abp/malihu-custom-scrollbar-plugin@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-3.2.1.tgz#f4a19c6de14c7193eaf6c55c429580dcbcfe3965" + integrity sha512-pu8Tuh67ruG1fLEud1eves/eiBCiuowL+LVLyW+iX1bByfVlOB40nMQ7UCMQ6Jvv31pTEK2dfQ/n8K3W/pFiWQ== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/select2@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-3.2.0.tgz#729f82695bbfd7ab3d7a90059a198f338037c867" - integrity sha512-83V8jIR8RGFJ3II5G7/bitlv44OHOEENKDrT639OYIxHfgWEWm4CBhcyCnlZJqv6xB2AVDfFPgCPlDGl3x3tmw== +"@abp/select2@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-3.2.1.tgz#8a04a6f5f10cc4a48a3da37bbc38ff655e626ddf" + integrity sha512-i/euJ+kTHakwCI3Hf9+NhiQG+MYlU0iwp6GRmS2uHqgkMd2gVjnBq+elA2jsi50PXpxowv4vdBCNHcicI58W2w== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" select2 "^4.0.13" -"@abp/sweetalert@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/sweetalert/-/sweetalert-3.2.0.tgz#05040b7276ca2ce62ffc20865d64fb6e0fdb62cb" - integrity sha512-BEgbWwWX2uOsVS/zV6OzlxRBCtSlqeAYdSkmDjQ7pzCthwZXPPFr1o8UXyp9W7GKwDg3lfWTQPkkm+2y587xEw== +"@abp/sweetalert@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/sweetalert/-/sweetalert-3.2.1.tgz#be99820491499fea06259fbc584e799a51cbabf3" + integrity sha512-If5UJQVJ05aEbxPHrwRpuEzCT5ygOHmPzpBblpzSo5XxNNDGGlumnwYmtbXBSXutXrIR0b5//Bo1EgBVtmJHOg== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" sweetalert "^2.1.2" -"@abp/timeago@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-3.2.0.tgz#e4a207566c00ccb3161ee91c6f6ce26419e4bbaf" - integrity sha512-VUk8c3hITZfu5aA21XB2Qaw5fwoeAl36Piy0Cb3aUOCFjyGWg19htXxDoT7rzqZ5UJFN0VRYg9MzciXZrFN5/w== +"@abp/timeago@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-3.2.1.tgz#4e5e6c76d5440de65646a076ce1a9d7225882243" + integrity sha512-4WLWoCYiSg5zYPcogV47TXA+YomDHHY0YfHHWmr6TP2bHd5ghsnMqnnkt58nUN9Psd77teo+Mo9jgR0h2IxRwQ== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" timeago "^1.6.7" -"@abp/toastr@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-3.2.0.tgz#059e1e1e998207a6f75db2bfe717bec2a0b6d955" - integrity sha512-EKikZVQDaX/uQfc0rWsW2x+UDsO4r80KC3pLvRaLXW5IEwEhTpYwZDUGReOEQ8YEk7UKOXrVJA07mxkbdOzyAw== +"@abp/toastr@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-3.2.1.tgz#d35b44234ca6cbd5da6cc5f65d15e827bd7970dc" + integrity sha512-nBmWGL49psSF2tcNnR6PGBcfFAxo2u5HHNRzv2c2z46ZEGFa5DjuY46KZC24jMWY+yprINQewhKTmQUqJvaHqA== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" toastr "^2.1.4" -"@abp/utils@^3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-3.2.0.tgz#084918379f2c5e43c1e52291ba6667f3ea3c1f33" - integrity sha512-DZsvF/I5o3r0D1+2B61KvJX78/tJ5uj9MaPq00Z/sxXdqsP2SQQmjhMm+Lb0FgGMK06XIoF9eDgM3Hu0y0H3cQ== +"@abp/utils@^3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-3.2.1.tgz#960a0bbdfb781bbd6fb05e80bba2b9d95f2ae44c" + integrity sha512-bqYa1VIi1tZXCUbP2Z1WlcgPD4/wjhDVM1jiAN9UzDls1K3u+e2LyR4gLoN39WW1ULjCIhyzEAw/JgTcMmpUBw== dependencies: just-compare "^1.3.0" 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 9b79ab6170..64a770f40e 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": "^3.2.0" + "@abp/aspnetcore.mvc.ui.theme.basic": "^3.2.1" } } \ No newline at end of file diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web/yarn.lock b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web/yarn.lock index 523197e919..bcfe258976 100644 --- a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web/yarn.lock +++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web/yarn.lock @@ -2,37 +2,37 @@ # yarn lockfile v1 -"@abp/aspnetcore.mvc.ui.theme.basic@^3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-3.2.0.tgz#207277419356a14f686421de0ee320fad0d6857f" - integrity sha512-4xn4BPQu9QL3sM47QtPNwOei9/fnRw3dXCL7vlJBCU70jL8911C6D/Pj/CBqCEMMVPI6M4GE7Ls4AwKTvgFeTw== +"@abp/aspnetcore.mvc.ui.theme.basic@^3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-3.2.1.tgz#d8f9af85b6114d35bba5942e303b3a4b89c8cd75" + integrity sha512-utHlyw/xbtDqqA0ETrYTxZ8ZO49tI6FP3BAvRdevbhozdG8/el6BWpifZysKJv2VIm6d5P7DXD3uymCd5iX6EA== dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~3.2.0" + "@abp/aspnetcore.mvc.ui.theme.shared" "~3.2.1" -"@abp/aspnetcore.mvc.ui.theme.shared@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-3.2.0.tgz#bed24c1d28f6e85d58fa963911a09e8b2998c1b6" - integrity sha512-Ap1dPCvL7r31oFyi+3YPviFkDly5FZfWbHq2bURsEbscembpc6DOSfXehvuZ2BjqsZF3n/HX0Y1lX4irUqKqjg== - dependencies: - "@abp/aspnetcore.mvc.ui" "~3.2.0" - "@abp/bootstrap" "~3.2.0" - "@abp/bootstrap-datepicker" "~3.2.0" - "@abp/datatables.net-bs4" "~3.2.0" - "@abp/font-awesome" "~3.2.0" - "@abp/jquery-form" "~3.2.0" - "@abp/jquery-validation-unobtrusive" "~3.2.0" - "@abp/lodash" "~3.2.0" - "@abp/luxon" "~3.2.0" - "@abp/malihu-custom-scrollbar-plugin" "~3.2.0" - "@abp/select2" "~3.2.0" - "@abp/sweetalert" "~3.2.0" - "@abp/timeago" "~3.2.0" - "@abp/toastr" "~3.2.0" - -"@abp/aspnetcore.mvc.ui@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-3.2.0.tgz#01f80b9f663f4d95ceac733761833cf4648e92b5" - integrity sha512-NzH1UxEoE/FVT0LLjMNq5eSsiORLe5dE+aKr7jjbaxcuVr7QI7KI9ry6xWAZk+0cbGvsUAY0xqrMxxqiLpskxQ== +"@abp/aspnetcore.mvc.ui.theme.shared@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-3.2.1.tgz#b628602dca8d1809e32f423962cff56379a790b0" + integrity sha512-aWZAaFnN9Ncyzy84wPTfUVtcyh98Sxu4m+fsGY5XtwA/nwDTDVtLMq81ueJWyFgN9GNk8+lT6VXfPDpA/MJo/A== + dependencies: + "@abp/aspnetcore.mvc.ui" "~3.2.1" + "@abp/bootstrap" "~3.2.1" + "@abp/bootstrap-datepicker" "~3.2.1" + "@abp/datatables.net-bs4" "~3.2.1" + "@abp/font-awesome" "~3.2.1" + "@abp/jquery-form" "~3.2.1" + "@abp/jquery-validation-unobtrusive" "~3.2.1" + "@abp/lodash" "~3.2.1" + "@abp/luxon" "~3.2.1" + "@abp/malihu-custom-scrollbar-plugin" "~3.2.1" + "@abp/select2" "~3.2.1" + "@abp/sweetalert" "~3.2.1" + "@abp/timeago" "~3.2.1" + "@abp/toastr" "~3.2.1" + +"@abp/aspnetcore.mvc.ui@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-3.2.1.tgz#dc0d2c331bf09ef0f79cec739e0f64edb1105084" + integrity sha512-Fpn16MeK71Uhw6636nlXCQaSwN9lN6QFUIGIICcWU+2eMA8fK4ZtavaYGG4mWqjkd4wzUHCz2AZbmbxK7bVnng== dependencies: ansi-colors "^4.1.1" extend-object "^1.0.0" @@ -41,145 +41,145 @@ path "^0.12.7" rimraf "^3.0.2" -"@abp/bootstrap-datepicker@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-3.2.0.tgz#0a1813d8a84dd6eb6cf647244a4a91900364deb1" - integrity sha512-w7YyA5TRZqGL3qYyArwfrRc4/qWQMT0BPYDOsGMrtPJZDWeZL7WPezuiIvKNdI71BfUq6XiA1+wwMfqjcClZ2g== +"@abp/bootstrap-datepicker@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-3.2.1.tgz#5cb75bc53fab86f7b28bfc5fbfcbf233432d75ca" + integrity sha512-KzTDZTMd/TBaTDNuPF4+T+0zsmEimD2Uq8TlNw7knEEyo7a/lsfBNkBF9Xc8bjZcbC76BqajytsTzI1yftM4Uw== dependencies: bootstrap-datepicker "^1.9.0" -"@abp/bootstrap@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-3.2.0.tgz#d249338b0151734f99b8e366aea6fc17d5ef9b37" - integrity sha512-hx9r7EGb1vJrHAdw3D8Cpudv++hrM4dKoKtOKnQbxGG+Q9vwVS6SKquVxJum+bEZWa1CgXvT6co0IDOlW3pDhg== +"@abp/bootstrap@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-3.2.1.tgz#9574414f1e170240dacdf78408af34830264db97" + integrity sha512-gLIr4d5xfw5TSpSHIKr7oKznkdIbGhS+gtBitP1BFVLOU2h7/d6uTZoopC+JQU16DGvn8njo8W4DL7Amh9FOqQ== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" bootstrap "^4.5.0" bootstrap-v4-rtl "4.4.1-2" -"@abp/core@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-3.2.0.tgz#e9f07bde581b07e1b904bec3b12e0ccfc2a50125" - integrity sha512-X3iWv8QxAbqKJMoTb3vfvwGYmD9uZ+p+zn5q5Hoybyq9fjEcevpkdX7OiLvO8M+NEwCKa81wtkvvM2BnEV6Igg== +"@abp/core@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-3.2.1.tgz#3c133f67394d716df3e49f1eeb934c586df755e5" + integrity sha512-GbjrFO+oKl4JuZkYdeWtE+N837XRQr0hoX8O3pI1eAnuMku48QhGec2ZpSJuqG+c3wX6PHTZPIyHse4X+y6QgA== dependencies: - "@abp/utils" "^3.2.0" + "@abp/utils" "^3.2.1" -"@abp/datatables.net-bs4@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs4/-/datatables.net-bs4-3.2.0.tgz#8551c0ac5e29b037a86b141f41052e7a3038be89" - integrity sha512-i2LVTKAllgzhc21rb0GQ0YHtmOMyCT+6P3ZelqkoLdp56D63rVhdAOHrqjebrEHMehsuCUV2XH908kakXWIPXA== +"@abp/datatables.net-bs4@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs4/-/datatables.net-bs4-3.2.1.tgz#b008b2964472fd8c8286a7c4b1e903d93a52e760" + integrity sha512-C/MmA6URugDD1tdUS6zS413ycHCjefeIG7nnJrtJmCZix7mfbdrp/Km/vKbE1KMSEYWis0w/SxIEy0kbkIW4OQ== dependencies: - "@abp/datatables.net" "~3.2.0" + "@abp/datatables.net" "~3.2.1" datatables.net-bs4 "^1.10.21" -"@abp/datatables.net@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-3.2.0.tgz#effd0ec603b15c0de2d1db993d1416b46f4e3146" - integrity sha512-6UX/WqdlRfb3BQ2cw7LbUlMimDXtx7rHanTTWq44g+Wc8fn4fVcYyo9RWCYYOd2MWm9pElEvuzG1AzaOamjW9Q== +"@abp/datatables.net@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-3.2.1.tgz#ba7d4c875ad2bc126687bc5d8e627f3c4d7fb2f4" + integrity sha512-o8/K6RGnPkQUe5ClAxyHNBOevVBnb8qSM4NXRXR2AUtEvjal+4UL9QOf1LZ0zPv4OAjaaAiOAp9Pmbv4FWuZ8Q== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" datatables.net "^1.10.21" -"@abp/font-awesome@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-3.2.0.tgz#ad75daf1c084c2c6a0aeccc092057627ce898652" - integrity sha512-FAWBYWwg2ZtKO+0/lS/bc4YFnR7IehQ2Y+y1srIypgSY/739X4aUWb0YDW1tE0QrrFfQ//f16AyIKPynGl0T5Q== +"@abp/font-awesome@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-3.2.1.tgz#d54a6d9627fdfeb6c615550f09241d0c805e3d39" + integrity sha512-5BlAuIX4qFdf/mvycUAREmVQ8jg0tRtDnVXt0E8kUtzghhEGG91NfcZIaB4zaWAwuJSyqqjS/VJ/URy1g50NZQ== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" "@fortawesome/fontawesome-free" "^5.13.0" -"@abp/jquery-form@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-3.2.0.tgz#b1b408c0f380c8dfd99c063251f2f1fd86dff14c" - integrity sha512-ZC38zLqlMm67nONg+7ZSC7ExzLZApZ2nZ3/yM6J5LNa7IOgzDGPZgbDRBiwFdC3vIB04LhnNr83YrEvIaUnIzQ== +"@abp/jquery-form@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-3.2.1.tgz#9280b28e2103fc80b9124e3a53f2f0e03ac4bb46" + integrity sha512-Dy0wTCcmWgygrru59VPnlVw7qLu8aLTZOTpMPbSva502O19O+H7FljF9r0J7eYgoO6pcTO4R1tE/Yib3DwIBFg== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-3.2.0.tgz#91b996c743e5b1423a4d01d8808788a4bf4adb32" - integrity sha512-FSkGWvIkZTd2LITbTCdyno0ml30PZZmGYCazowHprh1iuhx0C+yCd9U/kfZ3rLoZAFtWjz0ZUq1Z7G5xXHB97A== +"@abp/jquery-validation-unobtrusive@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-3.2.1.tgz#8f0b54f0d39b00ab93638fe1537ae7bd77e3e78e" + integrity sha512-mr/jZVm8QuYO1vWcNo3ytuQEeMBvjnMiTrvoUzY1OXX+HUFR6oi8FohXgxFUypElAqQ8jelV9K0qonX1zTQhcg== dependencies: - "@abp/jquery-validation" "~3.2.0" + "@abp/jquery-validation" "~3.2.1" jquery-validation-unobtrusive "^3.2.11" -"@abp/jquery-validation@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-3.2.0.tgz#1de41e9167b41a956ce2f6e3d6f16d023fccd078" - integrity sha512-FlP7btUvAJfGoi0g8Hm474jlhtweyd/P6dRu2spApUOpKjMyUNFpp/nphmr0iQvx7JGeeaAaUhQJ2v5UKy/Z8w== +"@abp/jquery-validation@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-3.2.1.tgz#b5330eb404f357936d16f3dd81752076bfee963d" + integrity sha512-nmubyFyA8TbLdsJt8MAspSRN4St8Xn8ICB8ancdiyxbS/6u9oeKlvP4++ZZ881NlFkPsyo7GkHjfl29pNzzzJA== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" jquery-validation "^1.19.2" -"@abp/jquery@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-3.2.0.tgz#eabc0bafef3cf2b64f672c562bda1f1002b07b7c" - integrity sha512-tlvQ79cqyJ+tXEf17Vdwi6O8yo0+7bmicyy5A/iYyWWJUjXGkiouQHjHkoZ2jeyxwvqn85tBbfjeRumcZdYRMA== +"@abp/jquery@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-3.2.1.tgz#c7ee0bbff0b480b8ed01f46d1ce07ebc8c35e4a2" + integrity sha512-AvfQ9rnnb+pQUDuGnuhpCB+FzWz3EqDptoeiCDQjPXxGql3Wk5GWw6QzvuREOXcU4CoUyzigyDgnO5WaSlx8kQ== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" jquery "~3.5.1" -"@abp/lodash@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-3.2.0.tgz#63e8c51fe9e760d7debca9129bfbf01be8c12d18" - integrity sha512-/rGkJMCgbA0JLkjMXenxz6q0BXRDwvYSLUu7XotNj/cbiHpT5yHHTnWQgwxVUKEVA9xtmYUH1h20J25n/VD/tg== +"@abp/lodash@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-3.2.1.tgz#7abfe7d572eaa628c033a6d50520b8510ecce79a" + integrity sha512-ZDte0vUfM1fBrs/mRq7yCuugtYZKoP/6pOEebDOMdM1GztAEKicq8s7EXxwbqE4+kjxqeHzReh7ZwCtFAf/Zew== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" lodash "^4.17.15" -"@abp/luxon@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-3.2.0.tgz#f94b595d15d78868a4acf73803a9da8609096d39" - integrity sha512-3FF9/W+Smp4FqRJ6F5vNxydXYraVgEUsrOBkaBexVkzT/l3zBkCmrJ8i+Eib8xBXpS6Ku4nmpqbqm1VYhlxKTQ== +"@abp/luxon@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-3.2.1.tgz#ad3473f24dbacd4d1bc15a07ee75cc1db7f1df6c" + integrity sha512-WZgAMHNx1beQSA48ZJ2x2g408iBXBUvKwBwAFJqbhNhEsO95tutO80j1LNHYvXCbrAatoz6K6IDRXDXV1U3zyg== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" luxon "^1.24.1" -"@abp/malihu-custom-scrollbar-plugin@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-3.2.0.tgz#bd11a36a37ec23d38cba116934398696379158b1" - integrity sha512-BYGICB55RsYHmaICnyWdCewo0uEbopmuuUuCJlE+2IY1I4JchSWG2mV//F+jOZQmlOsjYufK70BrQQEIr+ewXw== +"@abp/malihu-custom-scrollbar-plugin@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-3.2.1.tgz#f4a19c6de14c7193eaf6c55c429580dcbcfe3965" + integrity sha512-pu8Tuh67ruG1fLEud1eves/eiBCiuowL+LVLyW+iX1bByfVlOB40nMQ7UCMQ6Jvv31pTEK2dfQ/n8K3W/pFiWQ== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/select2@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-3.2.0.tgz#729f82695bbfd7ab3d7a90059a198f338037c867" - integrity sha512-83V8jIR8RGFJ3II5G7/bitlv44OHOEENKDrT639OYIxHfgWEWm4CBhcyCnlZJqv6xB2AVDfFPgCPlDGl3x3tmw== +"@abp/select2@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-3.2.1.tgz#8a04a6f5f10cc4a48a3da37bbc38ff655e626ddf" + integrity sha512-i/euJ+kTHakwCI3Hf9+NhiQG+MYlU0iwp6GRmS2uHqgkMd2gVjnBq+elA2jsi50PXpxowv4vdBCNHcicI58W2w== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" select2 "^4.0.13" -"@abp/sweetalert@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/sweetalert/-/sweetalert-3.2.0.tgz#05040b7276ca2ce62ffc20865d64fb6e0fdb62cb" - integrity sha512-BEgbWwWX2uOsVS/zV6OzlxRBCtSlqeAYdSkmDjQ7pzCthwZXPPFr1o8UXyp9W7GKwDg3lfWTQPkkm+2y587xEw== +"@abp/sweetalert@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/sweetalert/-/sweetalert-3.2.1.tgz#be99820491499fea06259fbc584e799a51cbabf3" + integrity sha512-If5UJQVJ05aEbxPHrwRpuEzCT5ygOHmPzpBblpzSo5XxNNDGGlumnwYmtbXBSXutXrIR0b5//Bo1EgBVtmJHOg== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" sweetalert "^2.1.2" -"@abp/timeago@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-3.2.0.tgz#e4a207566c00ccb3161ee91c6f6ce26419e4bbaf" - integrity sha512-VUk8c3hITZfu5aA21XB2Qaw5fwoeAl36Piy0Cb3aUOCFjyGWg19htXxDoT7rzqZ5UJFN0VRYg9MzciXZrFN5/w== +"@abp/timeago@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-3.2.1.tgz#4e5e6c76d5440de65646a076ce1a9d7225882243" + integrity sha512-4WLWoCYiSg5zYPcogV47TXA+YomDHHY0YfHHWmr6TP2bHd5ghsnMqnnkt58nUN9Psd77teo+Mo9jgR0h2IxRwQ== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" timeago "^1.6.7" -"@abp/toastr@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-3.2.0.tgz#059e1e1e998207a6f75db2bfe717bec2a0b6d955" - integrity sha512-EKikZVQDaX/uQfc0rWsW2x+UDsO4r80KC3pLvRaLXW5IEwEhTpYwZDUGReOEQ8YEk7UKOXrVJA07mxkbdOzyAw== +"@abp/toastr@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-3.2.1.tgz#d35b44234ca6cbd5da6cc5f65d15e827bd7970dc" + integrity sha512-nBmWGL49psSF2tcNnR6PGBcfFAxo2u5HHNRzv2c2z46ZEGFa5DjuY46KZC24jMWY+yprINQewhKTmQUqJvaHqA== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" toastr "^2.1.4" -"@abp/utils@^3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-3.2.0.tgz#084918379f2c5e43c1e52291ba6667f3ea3c1f33" - integrity sha512-DZsvF/I5o3r0D1+2B61KvJX78/tJ5uj9MaPq00Z/sxXdqsP2SQQmjhMm+Lb0FgGMK06XIoF9eDgM3Hu0y0H3cQ== +"@abp/utils@^3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-3.2.1.tgz#960a0bbdfb781bbd6fb05e80bba2b9d95f2ae44c" + integrity sha512-bqYa1VIi1tZXCUbP2Z1WlcgPD4/wjhDVM1jiAN9UzDls1K3u+e2LyR4gLoN39WW1ULjCIhyzEAw/JgTcMmpUBw== dependencies: just-compare "^1.3.0" diff --git a/templates/module/angular/package.json b/templates/module/angular/package.json index 328dd7f8e0..951d97daf9 100644 --- a/templates/module/angular/package.json +++ b/templates/module/angular/package.json @@ -15,11 +15,11 @@ }, "private": true, "dependencies": { - "@abp/ng.account": "~3.2.0", - "@abp/ng.identity": "~3.2.0", - "@abp/ng.setting-management": "~3.2.0", - "@abp/ng.tenant-management": "~3.2.0", - "@abp/ng.theme.basic": "~3.2.0", + "@abp/ng.account": "~3.2.1", + "@abp/ng.identity": "~3.2.1", + "@abp/ng.setting-management": "~3.2.1", + "@abp/ng.tenant-management": "~3.2.1", + "@abp/ng.theme.basic": "~3.2.1", "@angular/animations": "~10.1.2", "@angular/common": "~10.1.2", "@angular/compiler": "~10.1.2", @@ -33,7 +33,7 @@ "zone.js": "~0.10.2" }, "devDependencies": { - "@abp/ng.schematics": "~3.2.0", + "@abp/ng.schematics": "~3.2.1", "@angular-devkit/build-angular": "~0.1001.2", "@angular-devkit/build-ng-packagr": "~0.1001.2", "@angular/cli": "~10.1.2", diff --git a/templates/module/angular/projects/my-project-name/package.json b/templates/module/angular/projects/my-project-name/package.json index 5393668be9..4133790528 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.1.11", "@angular/core": "^9.1.11", - "@abp/ng.core": ">=3.2.0", - "@abp/ng.theme.shared": ">=3.2.0" + "@abp/ng.core": ">=3.2.1", + "@abp/ng.theme.shared": ">=3.2.1" }, "dependencies": { "tslib": "^2.0.0" diff --git a/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.IdentityServer/package.json b/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.IdentityServer/package.json index fba2dab1f7..3c54abaaa7 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": "^3.2.0" + "@abp/aspnetcore.mvc.ui.theme.basic": "^3.2.1" } } \ No newline at end of file diff --git a/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.IdentityServer/yarn.lock b/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.IdentityServer/yarn.lock index 72a5d2df3d..b8e6718657 100644 --- a/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.IdentityServer/yarn.lock +++ b/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.IdentityServer/yarn.lock @@ -2,37 +2,37 @@ # yarn lockfile v1 -"@abp/aspnetcore.mvc.ui.theme.basic@^3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-3.2.0.tgz#207277419356a14f686421de0ee320fad0d6857f" - integrity sha512-4xn4BPQu9QL3sM47QtPNwOei9/fnRw3dXCL7vlJBCU70jL8911C6D/Pj/CBqCEMMVPI6M4GE7Ls4AwKTvgFeTw== +"@abp/aspnetcore.mvc.ui.theme.basic@^3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-3.2.1.tgz#d8f9af85b6114d35bba5942e303b3a4b89c8cd75" + integrity sha512-utHlyw/xbtDqqA0ETrYTxZ8ZO49tI6FP3BAvRdevbhozdG8/el6BWpifZysKJv2VIm6d5P7DXD3uymCd5iX6EA== dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~3.2.0" + "@abp/aspnetcore.mvc.ui.theme.shared" "~3.2.1" -"@abp/aspnetcore.mvc.ui.theme.shared@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-3.2.0.tgz#bed24c1d28f6e85d58fa963911a09e8b2998c1b6" - integrity sha512-Ap1dPCvL7r31oFyi+3YPviFkDly5FZfWbHq2bURsEbscembpc6DOSfXehvuZ2BjqsZF3n/HX0Y1lX4irUqKqjg== - dependencies: - "@abp/aspnetcore.mvc.ui" "~3.2.0" - "@abp/bootstrap" "~3.2.0" - "@abp/bootstrap-datepicker" "~3.2.0" - "@abp/datatables.net-bs4" "~3.2.0" - "@abp/font-awesome" "~3.2.0" - "@abp/jquery-form" "~3.2.0" - "@abp/jquery-validation-unobtrusive" "~3.2.0" - "@abp/lodash" "~3.2.0" - "@abp/luxon" "~3.2.0" - "@abp/malihu-custom-scrollbar-plugin" "~3.2.0" - "@abp/select2" "~3.2.0" - "@abp/sweetalert" "~3.2.0" - "@abp/timeago" "~3.2.0" - "@abp/toastr" "~3.2.0" - -"@abp/aspnetcore.mvc.ui@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-3.2.0.tgz#01f80b9f663f4d95ceac733761833cf4648e92b5" - integrity sha512-NzH1UxEoE/FVT0LLjMNq5eSsiORLe5dE+aKr7jjbaxcuVr7QI7KI9ry6xWAZk+0cbGvsUAY0xqrMxxqiLpskxQ== +"@abp/aspnetcore.mvc.ui.theme.shared@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-3.2.1.tgz#b628602dca8d1809e32f423962cff56379a790b0" + integrity sha512-aWZAaFnN9Ncyzy84wPTfUVtcyh98Sxu4m+fsGY5XtwA/nwDTDVtLMq81ueJWyFgN9GNk8+lT6VXfPDpA/MJo/A== + dependencies: + "@abp/aspnetcore.mvc.ui" "~3.2.1" + "@abp/bootstrap" "~3.2.1" + "@abp/bootstrap-datepicker" "~3.2.1" + "@abp/datatables.net-bs4" "~3.2.1" + "@abp/font-awesome" "~3.2.1" + "@abp/jquery-form" "~3.2.1" + "@abp/jquery-validation-unobtrusive" "~3.2.1" + "@abp/lodash" "~3.2.1" + "@abp/luxon" "~3.2.1" + "@abp/malihu-custom-scrollbar-plugin" "~3.2.1" + "@abp/select2" "~3.2.1" + "@abp/sweetalert" "~3.2.1" + "@abp/timeago" "~3.2.1" + "@abp/toastr" "~3.2.1" + +"@abp/aspnetcore.mvc.ui@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-3.2.1.tgz#dc0d2c331bf09ef0f79cec739e0f64edb1105084" + integrity sha512-Fpn16MeK71Uhw6636nlXCQaSwN9lN6QFUIGIICcWU+2eMA8fK4ZtavaYGG4mWqjkd4wzUHCz2AZbmbxK7bVnng== dependencies: ansi-colors "^4.1.1" extend-object "^1.0.0" @@ -41,145 +41,145 @@ path "^0.12.7" rimraf "^3.0.2" -"@abp/bootstrap-datepicker@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-3.2.0.tgz#0a1813d8a84dd6eb6cf647244a4a91900364deb1" - integrity sha512-w7YyA5TRZqGL3qYyArwfrRc4/qWQMT0BPYDOsGMrtPJZDWeZL7WPezuiIvKNdI71BfUq6XiA1+wwMfqjcClZ2g== +"@abp/bootstrap-datepicker@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-3.2.1.tgz#5cb75bc53fab86f7b28bfc5fbfcbf233432d75ca" + integrity sha512-KzTDZTMd/TBaTDNuPF4+T+0zsmEimD2Uq8TlNw7knEEyo7a/lsfBNkBF9Xc8bjZcbC76BqajytsTzI1yftM4Uw== dependencies: bootstrap-datepicker "^1.9.0" -"@abp/bootstrap@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-3.2.0.tgz#d249338b0151734f99b8e366aea6fc17d5ef9b37" - integrity sha512-hx9r7EGb1vJrHAdw3D8Cpudv++hrM4dKoKtOKnQbxGG+Q9vwVS6SKquVxJum+bEZWa1CgXvT6co0IDOlW3pDhg== +"@abp/bootstrap@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-3.2.1.tgz#9574414f1e170240dacdf78408af34830264db97" + integrity sha512-gLIr4d5xfw5TSpSHIKr7oKznkdIbGhS+gtBitP1BFVLOU2h7/d6uTZoopC+JQU16DGvn8njo8W4DL7Amh9FOqQ== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" bootstrap "^4.5.0" bootstrap-v4-rtl "4.4.1-2" -"@abp/core@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-3.2.0.tgz#e9f07bde581b07e1b904bec3b12e0ccfc2a50125" - integrity sha512-X3iWv8QxAbqKJMoTb3vfvwGYmD9uZ+p+zn5q5Hoybyq9fjEcevpkdX7OiLvO8M+NEwCKa81wtkvvM2BnEV6Igg== +"@abp/core@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-3.2.1.tgz#3c133f67394d716df3e49f1eeb934c586df755e5" + integrity sha512-GbjrFO+oKl4JuZkYdeWtE+N837XRQr0hoX8O3pI1eAnuMku48QhGec2ZpSJuqG+c3wX6PHTZPIyHse4X+y6QgA== dependencies: - "@abp/utils" "^3.2.0" + "@abp/utils" "^3.2.1" -"@abp/datatables.net-bs4@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs4/-/datatables.net-bs4-3.2.0.tgz#8551c0ac5e29b037a86b141f41052e7a3038be89" - integrity sha512-i2LVTKAllgzhc21rb0GQ0YHtmOMyCT+6P3ZelqkoLdp56D63rVhdAOHrqjebrEHMehsuCUV2XH908kakXWIPXA== +"@abp/datatables.net-bs4@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs4/-/datatables.net-bs4-3.2.1.tgz#b008b2964472fd8c8286a7c4b1e903d93a52e760" + integrity sha512-C/MmA6URugDD1tdUS6zS413ycHCjefeIG7nnJrtJmCZix7mfbdrp/Km/vKbE1KMSEYWis0w/SxIEy0kbkIW4OQ== dependencies: - "@abp/datatables.net" "~3.2.0" + "@abp/datatables.net" "~3.2.1" datatables.net-bs4 "^1.10.21" -"@abp/datatables.net@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-3.2.0.tgz#effd0ec603b15c0de2d1db993d1416b46f4e3146" - integrity sha512-6UX/WqdlRfb3BQ2cw7LbUlMimDXtx7rHanTTWq44g+Wc8fn4fVcYyo9RWCYYOd2MWm9pElEvuzG1AzaOamjW9Q== +"@abp/datatables.net@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-3.2.1.tgz#ba7d4c875ad2bc126687bc5d8e627f3c4d7fb2f4" + integrity sha512-o8/K6RGnPkQUe5ClAxyHNBOevVBnb8qSM4NXRXR2AUtEvjal+4UL9QOf1LZ0zPv4OAjaaAiOAp9Pmbv4FWuZ8Q== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" datatables.net "^1.10.21" -"@abp/font-awesome@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-3.2.0.tgz#ad75daf1c084c2c6a0aeccc092057627ce898652" - integrity sha512-FAWBYWwg2ZtKO+0/lS/bc4YFnR7IehQ2Y+y1srIypgSY/739X4aUWb0YDW1tE0QrrFfQ//f16AyIKPynGl0T5Q== +"@abp/font-awesome@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-3.2.1.tgz#d54a6d9627fdfeb6c615550f09241d0c805e3d39" + integrity sha512-5BlAuIX4qFdf/mvycUAREmVQ8jg0tRtDnVXt0E8kUtzghhEGG91NfcZIaB4zaWAwuJSyqqjS/VJ/URy1g50NZQ== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" "@fortawesome/fontawesome-free" "^5.13.0" -"@abp/jquery-form@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-3.2.0.tgz#b1b408c0f380c8dfd99c063251f2f1fd86dff14c" - integrity sha512-ZC38zLqlMm67nONg+7ZSC7ExzLZApZ2nZ3/yM6J5LNa7IOgzDGPZgbDRBiwFdC3vIB04LhnNr83YrEvIaUnIzQ== +"@abp/jquery-form@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-3.2.1.tgz#9280b28e2103fc80b9124e3a53f2f0e03ac4bb46" + integrity sha512-Dy0wTCcmWgygrru59VPnlVw7qLu8aLTZOTpMPbSva502O19O+H7FljF9r0J7eYgoO6pcTO4R1tE/Yib3DwIBFg== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-3.2.0.tgz#91b996c743e5b1423a4d01d8808788a4bf4adb32" - integrity sha512-FSkGWvIkZTd2LITbTCdyno0ml30PZZmGYCazowHprh1iuhx0C+yCd9U/kfZ3rLoZAFtWjz0ZUq1Z7G5xXHB97A== +"@abp/jquery-validation-unobtrusive@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-3.2.1.tgz#8f0b54f0d39b00ab93638fe1537ae7bd77e3e78e" + integrity sha512-mr/jZVm8QuYO1vWcNo3ytuQEeMBvjnMiTrvoUzY1OXX+HUFR6oi8FohXgxFUypElAqQ8jelV9K0qonX1zTQhcg== dependencies: - "@abp/jquery-validation" "~3.2.0" + "@abp/jquery-validation" "~3.2.1" jquery-validation-unobtrusive "^3.2.11" -"@abp/jquery-validation@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-3.2.0.tgz#1de41e9167b41a956ce2f6e3d6f16d023fccd078" - integrity sha512-FlP7btUvAJfGoi0g8Hm474jlhtweyd/P6dRu2spApUOpKjMyUNFpp/nphmr0iQvx7JGeeaAaUhQJ2v5UKy/Z8w== +"@abp/jquery-validation@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-3.2.1.tgz#b5330eb404f357936d16f3dd81752076bfee963d" + integrity sha512-nmubyFyA8TbLdsJt8MAspSRN4St8Xn8ICB8ancdiyxbS/6u9oeKlvP4++ZZ881NlFkPsyo7GkHjfl29pNzzzJA== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" jquery-validation "^1.19.2" -"@abp/jquery@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-3.2.0.tgz#eabc0bafef3cf2b64f672c562bda1f1002b07b7c" - integrity sha512-tlvQ79cqyJ+tXEf17Vdwi6O8yo0+7bmicyy5A/iYyWWJUjXGkiouQHjHkoZ2jeyxwvqn85tBbfjeRumcZdYRMA== +"@abp/jquery@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-3.2.1.tgz#c7ee0bbff0b480b8ed01f46d1ce07ebc8c35e4a2" + integrity sha512-AvfQ9rnnb+pQUDuGnuhpCB+FzWz3EqDptoeiCDQjPXxGql3Wk5GWw6QzvuREOXcU4CoUyzigyDgnO5WaSlx8kQ== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" jquery "~3.5.1" -"@abp/lodash@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-3.2.0.tgz#63e8c51fe9e760d7debca9129bfbf01be8c12d18" - integrity sha512-/rGkJMCgbA0JLkjMXenxz6q0BXRDwvYSLUu7XotNj/cbiHpT5yHHTnWQgwxVUKEVA9xtmYUH1h20J25n/VD/tg== +"@abp/lodash@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-3.2.1.tgz#7abfe7d572eaa628c033a6d50520b8510ecce79a" + integrity sha512-ZDte0vUfM1fBrs/mRq7yCuugtYZKoP/6pOEebDOMdM1GztAEKicq8s7EXxwbqE4+kjxqeHzReh7ZwCtFAf/Zew== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" lodash "^4.17.15" -"@abp/luxon@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-3.2.0.tgz#f94b595d15d78868a4acf73803a9da8609096d39" - integrity sha512-3FF9/W+Smp4FqRJ6F5vNxydXYraVgEUsrOBkaBexVkzT/l3zBkCmrJ8i+Eib8xBXpS6Ku4nmpqbqm1VYhlxKTQ== +"@abp/luxon@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-3.2.1.tgz#ad3473f24dbacd4d1bc15a07ee75cc1db7f1df6c" + integrity sha512-WZgAMHNx1beQSA48ZJ2x2g408iBXBUvKwBwAFJqbhNhEsO95tutO80j1LNHYvXCbrAatoz6K6IDRXDXV1U3zyg== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" luxon "^1.24.1" -"@abp/malihu-custom-scrollbar-plugin@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-3.2.0.tgz#bd11a36a37ec23d38cba116934398696379158b1" - integrity sha512-BYGICB55RsYHmaICnyWdCewo0uEbopmuuUuCJlE+2IY1I4JchSWG2mV//F+jOZQmlOsjYufK70BrQQEIr+ewXw== +"@abp/malihu-custom-scrollbar-plugin@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-3.2.1.tgz#f4a19c6de14c7193eaf6c55c429580dcbcfe3965" + integrity sha512-pu8Tuh67ruG1fLEud1eves/eiBCiuowL+LVLyW+iX1bByfVlOB40nMQ7UCMQ6Jvv31pTEK2dfQ/n8K3W/pFiWQ== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/select2@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-3.2.0.tgz#729f82695bbfd7ab3d7a90059a198f338037c867" - integrity sha512-83V8jIR8RGFJ3II5G7/bitlv44OHOEENKDrT639OYIxHfgWEWm4CBhcyCnlZJqv6xB2AVDfFPgCPlDGl3x3tmw== +"@abp/select2@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-3.2.1.tgz#8a04a6f5f10cc4a48a3da37bbc38ff655e626ddf" + integrity sha512-i/euJ+kTHakwCI3Hf9+NhiQG+MYlU0iwp6GRmS2uHqgkMd2gVjnBq+elA2jsi50PXpxowv4vdBCNHcicI58W2w== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" select2 "^4.0.13" -"@abp/sweetalert@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/sweetalert/-/sweetalert-3.2.0.tgz#05040b7276ca2ce62ffc20865d64fb6e0fdb62cb" - integrity sha512-BEgbWwWX2uOsVS/zV6OzlxRBCtSlqeAYdSkmDjQ7pzCthwZXPPFr1o8UXyp9W7GKwDg3lfWTQPkkm+2y587xEw== +"@abp/sweetalert@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/sweetalert/-/sweetalert-3.2.1.tgz#be99820491499fea06259fbc584e799a51cbabf3" + integrity sha512-If5UJQVJ05aEbxPHrwRpuEzCT5ygOHmPzpBblpzSo5XxNNDGGlumnwYmtbXBSXutXrIR0b5//Bo1EgBVtmJHOg== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" sweetalert "^2.1.2" -"@abp/timeago@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-3.2.0.tgz#e4a207566c00ccb3161ee91c6f6ce26419e4bbaf" - integrity sha512-VUk8c3hITZfu5aA21XB2Qaw5fwoeAl36Piy0Cb3aUOCFjyGWg19htXxDoT7rzqZ5UJFN0VRYg9MzciXZrFN5/w== +"@abp/timeago@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-3.2.1.tgz#4e5e6c76d5440de65646a076ce1a9d7225882243" + integrity sha512-4WLWoCYiSg5zYPcogV47TXA+YomDHHY0YfHHWmr6TP2bHd5ghsnMqnnkt58nUN9Psd77teo+Mo9jgR0h2IxRwQ== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" timeago "^1.6.7" -"@abp/toastr@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-3.2.0.tgz#059e1e1e998207a6f75db2bfe717bec2a0b6d955" - integrity sha512-EKikZVQDaX/uQfc0rWsW2x+UDsO4r80KC3pLvRaLXW5IEwEhTpYwZDUGReOEQ8YEk7UKOXrVJA07mxkbdOzyAw== +"@abp/toastr@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-3.2.1.tgz#d35b44234ca6cbd5da6cc5f65d15e827bd7970dc" + integrity sha512-nBmWGL49psSF2tcNnR6PGBcfFAxo2u5HHNRzv2c2z46ZEGFa5DjuY46KZC24jMWY+yprINQewhKTmQUqJvaHqA== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" toastr "^2.1.4" -"@abp/utils@^3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-3.2.0.tgz#084918379f2c5e43c1e52291ba6667f3ea3c1f33" - integrity sha512-DZsvF/I5o3r0D1+2B61KvJX78/tJ5uj9MaPq00Z/sxXdqsP2SQQmjhMm+Lb0FgGMK06XIoF9eDgM3Hu0y0H3cQ== +"@abp/utils@^3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-3.2.1.tgz#960a0bbdfb781bbd6fb05e80bba2b9d95f2ae44c" + integrity sha512-bqYa1VIi1tZXCUbP2Z1WlcgPD4/wjhDVM1jiAN9UzDls1K3u+e2LyR4gLoN39WW1ULjCIhyzEAw/JgTcMmpUBw== dependencies: just-compare "^1.3.0" 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 9b79ab6170..64a770f40e 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": "^3.2.0" + "@abp/aspnetcore.mvc.ui.theme.basic": "^3.2.1" } } \ No newline at end of file diff --git a/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.Web.Host/yarn.lock b/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.Web.Host/yarn.lock index 72a5d2df3d..b8e6718657 100644 --- a/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.Web.Host/yarn.lock +++ b/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.Web.Host/yarn.lock @@ -2,37 +2,37 @@ # yarn lockfile v1 -"@abp/aspnetcore.mvc.ui.theme.basic@^3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-3.2.0.tgz#207277419356a14f686421de0ee320fad0d6857f" - integrity sha512-4xn4BPQu9QL3sM47QtPNwOei9/fnRw3dXCL7vlJBCU70jL8911C6D/Pj/CBqCEMMVPI6M4GE7Ls4AwKTvgFeTw== +"@abp/aspnetcore.mvc.ui.theme.basic@^3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-3.2.1.tgz#d8f9af85b6114d35bba5942e303b3a4b89c8cd75" + integrity sha512-utHlyw/xbtDqqA0ETrYTxZ8ZO49tI6FP3BAvRdevbhozdG8/el6BWpifZysKJv2VIm6d5P7DXD3uymCd5iX6EA== dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~3.2.0" + "@abp/aspnetcore.mvc.ui.theme.shared" "~3.2.1" -"@abp/aspnetcore.mvc.ui.theme.shared@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-3.2.0.tgz#bed24c1d28f6e85d58fa963911a09e8b2998c1b6" - integrity sha512-Ap1dPCvL7r31oFyi+3YPviFkDly5FZfWbHq2bURsEbscembpc6DOSfXehvuZ2BjqsZF3n/HX0Y1lX4irUqKqjg== - dependencies: - "@abp/aspnetcore.mvc.ui" "~3.2.0" - "@abp/bootstrap" "~3.2.0" - "@abp/bootstrap-datepicker" "~3.2.0" - "@abp/datatables.net-bs4" "~3.2.0" - "@abp/font-awesome" "~3.2.0" - "@abp/jquery-form" "~3.2.0" - "@abp/jquery-validation-unobtrusive" "~3.2.0" - "@abp/lodash" "~3.2.0" - "@abp/luxon" "~3.2.0" - "@abp/malihu-custom-scrollbar-plugin" "~3.2.0" - "@abp/select2" "~3.2.0" - "@abp/sweetalert" "~3.2.0" - "@abp/timeago" "~3.2.0" - "@abp/toastr" "~3.2.0" - -"@abp/aspnetcore.mvc.ui@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-3.2.0.tgz#01f80b9f663f4d95ceac733761833cf4648e92b5" - integrity sha512-NzH1UxEoE/FVT0LLjMNq5eSsiORLe5dE+aKr7jjbaxcuVr7QI7KI9ry6xWAZk+0cbGvsUAY0xqrMxxqiLpskxQ== +"@abp/aspnetcore.mvc.ui.theme.shared@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-3.2.1.tgz#b628602dca8d1809e32f423962cff56379a790b0" + integrity sha512-aWZAaFnN9Ncyzy84wPTfUVtcyh98Sxu4m+fsGY5XtwA/nwDTDVtLMq81ueJWyFgN9GNk8+lT6VXfPDpA/MJo/A== + dependencies: + "@abp/aspnetcore.mvc.ui" "~3.2.1" + "@abp/bootstrap" "~3.2.1" + "@abp/bootstrap-datepicker" "~3.2.1" + "@abp/datatables.net-bs4" "~3.2.1" + "@abp/font-awesome" "~3.2.1" + "@abp/jquery-form" "~3.2.1" + "@abp/jquery-validation-unobtrusive" "~3.2.1" + "@abp/lodash" "~3.2.1" + "@abp/luxon" "~3.2.1" + "@abp/malihu-custom-scrollbar-plugin" "~3.2.1" + "@abp/select2" "~3.2.1" + "@abp/sweetalert" "~3.2.1" + "@abp/timeago" "~3.2.1" + "@abp/toastr" "~3.2.1" + +"@abp/aspnetcore.mvc.ui@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-3.2.1.tgz#dc0d2c331bf09ef0f79cec739e0f64edb1105084" + integrity sha512-Fpn16MeK71Uhw6636nlXCQaSwN9lN6QFUIGIICcWU+2eMA8fK4ZtavaYGG4mWqjkd4wzUHCz2AZbmbxK7bVnng== dependencies: ansi-colors "^4.1.1" extend-object "^1.0.0" @@ -41,145 +41,145 @@ path "^0.12.7" rimraf "^3.0.2" -"@abp/bootstrap-datepicker@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-3.2.0.tgz#0a1813d8a84dd6eb6cf647244a4a91900364deb1" - integrity sha512-w7YyA5TRZqGL3qYyArwfrRc4/qWQMT0BPYDOsGMrtPJZDWeZL7WPezuiIvKNdI71BfUq6XiA1+wwMfqjcClZ2g== +"@abp/bootstrap-datepicker@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-3.2.1.tgz#5cb75bc53fab86f7b28bfc5fbfcbf233432d75ca" + integrity sha512-KzTDZTMd/TBaTDNuPF4+T+0zsmEimD2Uq8TlNw7knEEyo7a/lsfBNkBF9Xc8bjZcbC76BqajytsTzI1yftM4Uw== dependencies: bootstrap-datepicker "^1.9.0" -"@abp/bootstrap@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-3.2.0.tgz#d249338b0151734f99b8e366aea6fc17d5ef9b37" - integrity sha512-hx9r7EGb1vJrHAdw3D8Cpudv++hrM4dKoKtOKnQbxGG+Q9vwVS6SKquVxJum+bEZWa1CgXvT6co0IDOlW3pDhg== +"@abp/bootstrap@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-3.2.1.tgz#9574414f1e170240dacdf78408af34830264db97" + integrity sha512-gLIr4d5xfw5TSpSHIKr7oKznkdIbGhS+gtBitP1BFVLOU2h7/d6uTZoopC+JQU16DGvn8njo8W4DL7Amh9FOqQ== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" bootstrap "^4.5.0" bootstrap-v4-rtl "4.4.1-2" -"@abp/core@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-3.2.0.tgz#e9f07bde581b07e1b904bec3b12e0ccfc2a50125" - integrity sha512-X3iWv8QxAbqKJMoTb3vfvwGYmD9uZ+p+zn5q5Hoybyq9fjEcevpkdX7OiLvO8M+NEwCKa81wtkvvM2BnEV6Igg== +"@abp/core@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-3.2.1.tgz#3c133f67394d716df3e49f1eeb934c586df755e5" + integrity sha512-GbjrFO+oKl4JuZkYdeWtE+N837XRQr0hoX8O3pI1eAnuMku48QhGec2ZpSJuqG+c3wX6PHTZPIyHse4X+y6QgA== dependencies: - "@abp/utils" "^3.2.0" + "@abp/utils" "^3.2.1" -"@abp/datatables.net-bs4@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs4/-/datatables.net-bs4-3.2.0.tgz#8551c0ac5e29b037a86b141f41052e7a3038be89" - integrity sha512-i2LVTKAllgzhc21rb0GQ0YHtmOMyCT+6P3ZelqkoLdp56D63rVhdAOHrqjebrEHMehsuCUV2XH908kakXWIPXA== +"@abp/datatables.net-bs4@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs4/-/datatables.net-bs4-3.2.1.tgz#b008b2964472fd8c8286a7c4b1e903d93a52e760" + integrity sha512-C/MmA6URugDD1tdUS6zS413ycHCjefeIG7nnJrtJmCZix7mfbdrp/Km/vKbE1KMSEYWis0w/SxIEy0kbkIW4OQ== dependencies: - "@abp/datatables.net" "~3.2.0" + "@abp/datatables.net" "~3.2.1" datatables.net-bs4 "^1.10.21" -"@abp/datatables.net@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-3.2.0.tgz#effd0ec603b15c0de2d1db993d1416b46f4e3146" - integrity sha512-6UX/WqdlRfb3BQ2cw7LbUlMimDXtx7rHanTTWq44g+Wc8fn4fVcYyo9RWCYYOd2MWm9pElEvuzG1AzaOamjW9Q== +"@abp/datatables.net@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-3.2.1.tgz#ba7d4c875ad2bc126687bc5d8e627f3c4d7fb2f4" + integrity sha512-o8/K6RGnPkQUe5ClAxyHNBOevVBnb8qSM4NXRXR2AUtEvjal+4UL9QOf1LZ0zPv4OAjaaAiOAp9Pmbv4FWuZ8Q== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" datatables.net "^1.10.21" -"@abp/font-awesome@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-3.2.0.tgz#ad75daf1c084c2c6a0aeccc092057627ce898652" - integrity sha512-FAWBYWwg2ZtKO+0/lS/bc4YFnR7IehQ2Y+y1srIypgSY/739X4aUWb0YDW1tE0QrrFfQ//f16AyIKPynGl0T5Q== +"@abp/font-awesome@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-3.2.1.tgz#d54a6d9627fdfeb6c615550f09241d0c805e3d39" + integrity sha512-5BlAuIX4qFdf/mvycUAREmVQ8jg0tRtDnVXt0E8kUtzghhEGG91NfcZIaB4zaWAwuJSyqqjS/VJ/URy1g50NZQ== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" "@fortawesome/fontawesome-free" "^5.13.0" -"@abp/jquery-form@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-3.2.0.tgz#b1b408c0f380c8dfd99c063251f2f1fd86dff14c" - integrity sha512-ZC38zLqlMm67nONg+7ZSC7ExzLZApZ2nZ3/yM6J5LNa7IOgzDGPZgbDRBiwFdC3vIB04LhnNr83YrEvIaUnIzQ== +"@abp/jquery-form@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-3.2.1.tgz#9280b28e2103fc80b9124e3a53f2f0e03ac4bb46" + integrity sha512-Dy0wTCcmWgygrru59VPnlVw7qLu8aLTZOTpMPbSva502O19O+H7FljF9r0J7eYgoO6pcTO4R1tE/Yib3DwIBFg== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-3.2.0.tgz#91b996c743e5b1423a4d01d8808788a4bf4adb32" - integrity sha512-FSkGWvIkZTd2LITbTCdyno0ml30PZZmGYCazowHprh1iuhx0C+yCd9U/kfZ3rLoZAFtWjz0ZUq1Z7G5xXHB97A== +"@abp/jquery-validation-unobtrusive@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-3.2.1.tgz#8f0b54f0d39b00ab93638fe1537ae7bd77e3e78e" + integrity sha512-mr/jZVm8QuYO1vWcNo3ytuQEeMBvjnMiTrvoUzY1OXX+HUFR6oi8FohXgxFUypElAqQ8jelV9K0qonX1zTQhcg== dependencies: - "@abp/jquery-validation" "~3.2.0" + "@abp/jquery-validation" "~3.2.1" jquery-validation-unobtrusive "^3.2.11" -"@abp/jquery-validation@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-3.2.0.tgz#1de41e9167b41a956ce2f6e3d6f16d023fccd078" - integrity sha512-FlP7btUvAJfGoi0g8Hm474jlhtweyd/P6dRu2spApUOpKjMyUNFpp/nphmr0iQvx7JGeeaAaUhQJ2v5UKy/Z8w== +"@abp/jquery-validation@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-3.2.1.tgz#b5330eb404f357936d16f3dd81752076bfee963d" + integrity sha512-nmubyFyA8TbLdsJt8MAspSRN4St8Xn8ICB8ancdiyxbS/6u9oeKlvP4++ZZ881NlFkPsyo7GkHjfl29pNzzzJA== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" jquery-validation "^1.19.2" -"@abp/jquery@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-3.2.0.tgz#eabc0bafef3cf2b64f672c562bda1f1002b07b7c" - integrity sha512-tlvQ79cqyJ+tXEf17Vdwi6O8yo0+7bmicyy5A/iYyWWJUjXGkiouQHjHkoZ2jeyxwvqn85tBbfjeRumcZdYRMA== +"@abp/jquery@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-3.2.1.tgz#c7ee0bbff0b480b8ed01f46d1ce07ebc8c35e4a2" + integrity sha512-AvfQ9rnnb+pQUDuGnuhpCB+FzWz3EqDptoeiCDQjPXxGql3Wk5GWw6QzvuREOXcU4CoUyzigyDgnO5WaSlx8kQ== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" jquery "~3.5.1" -"@abp/lodash@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-3.2.0.tgz#63e8c51fe9e760d7debca9129bfbf01be8c12d18" - integrity sha512-/rGkJMCgbA0JLkjMXenxz6q0BXRDwvYSLUu7XotNj/cbiHpT5yHHTnWQgwxVUKEVA9xtmYUH1h20J25n/VD/tg== +"@abp/lodash@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-3.2.1.tgz#7abfe7d572eaa628c033a6d50520b8510ecce79a" + integrity sha512-ZDte0vUfM1fBrs/mRq7yCuugtYZKoP/6pOEebDOMdM1GztAEKicq8s7EXxwbqE4+kjxqeHzReh7ZwCtFAf/Zew== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" lodash "^4.17.15" -"@abp/luxon@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-3.2.0.tgz#f94b595d15d78868a4acf73803a9da8609096d39" - integrity sha512-3FF9/W+Smp4FqRJ6F5vNxydXYraVgEUsrOBkaBexVkzT/l3zBkCmrJ8i+Eib8xBXpS6Ku4nmpqbqm1VYhlxKTQ== +"@abp/luxon@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-3.2.1.tgz#ad3473f24dbacd4d1bc15a07ee75cc1db7f1df6c" + integrity sha512-WZgAMHNx1beQSA48ZJ2x2g408iBXBUvKwBwAFJqbhNhEsO95tutO80j1LNHYvXCbrAatoz6K6IDRXDXV1U3zyg== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" luxon "^1.24.1" -"@abp/malihu-custom-scrollbar-plugin@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-3.2.0.tgz#bd11a36a37ec23d38cba116934398696379158b1" - integrity sha512-BYGICB55RsYHmaICnyWdCewo0uEbopmuuUuCJlE+2IY1I4JchSWG2mV//F+jOZQmlOsjYufK70BrQQEIr+ewXw== +"@abp/malihu-custom-scrollbar-plugin@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-3.2.1.tgz#f4a19c6de14c7193eaf6c55c429580dcbcfe3965" + integrity sha512-pu8Tuh67ruG1fLEud1eves/eiBCiuowL+LVLyW+iX1bByfVlOB40nMQ7UCMQ6Jvv31pTEK2dfQ/n8K3W/pFiWQ== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/select2@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-3.2.0.tgz#729f82695bbfd7ab3d7a90059a198f338037c867" - integrity sha512-83V8jIR8RGFJ3II5G7/bitlv44OHOEENKDrT639OYIxHfgWEWm4CBhcyCnlZJqv6xB2AVDfFPgCPlDGl3x3tmw== +"@abp/select2@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-3.2.1.tgz#8a04a6f5f10cc4a48a3da37bbc38ff655e626ddf" + integrity sha512-i/euJ+kTHakwCI3Hf9+NhiQG+MYlU0iwp6GRmS2uHqgkMd2gVjnBq+elA2jsi50PXpxowv4vdBCNHcicI58W2w== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" select2 "^4.0.13" -"@abp/sweetalert@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/sweetalert/-/sweetalert-3.2.0.tgz#05040b7276ca2ce62ffc20865d64fb6e0fdb62cb" - integrity sha512-BEgbWwWX2uOsVS/zV6OzlxRBCtSlqeAYdSkmDjQ7pzCthwZXPPFr1o8UXyp9W7GKwDg3lfWTQPkkm+2y587xEw== +"@abp/sweetalert@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/sweetalert/-/sweetalert-3.2.1.tgz#be99820491499fea06259fbc584e799a51cbabf3" + integrity sha512-If5UJQVJ05aEbxPHrwRpuEzCT5ygOHmPzpBblpzSo5XxNNDGGlumnwYmtbXBSXutXrIR0b5//Bo1EgBVtmJHOg== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" sweetalert "^2.1.2" -"@abp/timeago@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-3.2.0.tgz#e4a207566c00ccb3161ee91c6f6ce26419e4bbaf" - integrity sha512-VUk8c3hITZfu5aA21XB2Qaw5fwoeAl36Piy0Cb3aUOCFjyGWg19htXxDoT7rzqZ5UJFN0VRYg9MzciXZrFN5/w== +"@abp/timeago@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-3.2.1.tgz#4e5e6c76d5440de65646a076ce1a9d7225882243" + integrity sha512-4WLWoCYiSg5zYPcogV47TXA+YomDHHY0YfHHWmr6TP2bHd5ghsnMqnnkt58nUN9Psd77teo+Mo9jgR0h2IxRwQ== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" timeago "^1.6.7" -"@abp/toastr@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-3.2.0.tgz#059e1e1e998207a6f75db2bfe717bec2a0b6d955" - integrity sha512-EKikZVQDaX/uQfc0rWsW2x+UDsO4r80KC3pLvRaLXW5IEwEhTpYwZDUGReOEQ8YEk7UKOXrVJA07mxkbdOzyAw== +"@abp/toastr@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-3.2.1.tgz#d35b44234ca6cbd5da6cc5f65d15e827bd7970dc" + integrity sha512-nBmWGL49psSF2tcNnR6PGBcfFAxo2u5HHNRzv2c2z46ZEGFa5DjuY46KZC24jMWY+yprINQewhKTmQUqJvaHqA== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" toastr "^2.1.4" -"@abp/utils@^3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-3.2.0.tgz#084918379f2c5e43c1e52291ba6667f3ea3c1f33" - integrity sha512-DZsvF/I5o3r0D1+2B61KvJX78/tJ5uj9MaPq00Z/sxXdqsP2SQQmjhMm+Lb0FgGMK06XIoF9eDgM3Hu0y0H3cQ== +"@abp/utils@^3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-3.2.1.tgz#960a0bbdfb781bbd6fb05e80bba2b9d95f2ae44c" + integrity sha512-bqYa1VIi1tZXCUbP2Z1WlcgPD4/wjhDVM1jiAN9UzDls1K3u+e2LyR4gLoN39WW1ULjCIhyzEAw/JgTcMmpUBw== dependencies: just-compare "^1.3.0" 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 9b79ab6170..64a770f40e 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": "^3.2.0" + "@abp/aspnetcore.mvc.ui.theme.basic": "^3.2.1" } } \ No newline at end of file diff --git a/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.Web.Unified/yarn.lock b/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.Web.Unified/yarn.lock index 1a8ccc322d..f89fd42bb2 100644 --- a/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.Web.Unified/yarn.lock +++ b/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.Web.Unified/yarn.lock @@ -2,37 +2,37 @@ # yarn lockfile v1 -"@abp/aspnetcore.mvc.ui.theme.basic@^3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-3.2.0.tgz#207277419356a14f686421de0ee320fad0d6857f" - integrity sha512-4xn4BPQu9QL3sM47QtPNwOei9/fnRw3dXCL7vlJBCU70jL8911C6D/Pj/CBqCEMMVPI6M4GE7Ls4AwKTvgFeTw== +"@abp/aspnetcore.mvc.ui.theme.basic@^3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-3.2.1.tgz#d8f9af85b6114d35bba5942e303b3a4b89c8cd75" + integrity sha512-utHlyw/xbtDqqA0ETrYTxZ8ZO49tI6FP3BAvRdevbhozdG8/el6BWpifZysKJv2VIm6d5P7DXD3uymCd5iX6EA== dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~3.2.0" + "@abp/aspnetcore.mvc.ui.theme.shared" "~3.2.1" -"@abp/aspnetcore.mvc.ui.theme.shared@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-3.2.0.tgz#bed24c1d28f6e85d58fa963911a09e8b2998c1b6" - integrity sha512-Ap1dPCvL7r31oFyi+3YPviFkDly5FZfWbHq2bURsEbscembpc6DOSfXehvuZ2BjqsZF3n/HX0Y1lX4irUqKqjg== - dependencies: - "@abp/aspnetcore.mvc.ui" "~3.2.0" - "@abp/bootstrap" "~3.2.0" - "@abp/bootstrap-datepicker" "~3.2.0" - "@abp/datatables.net-bs4" "~3.2.0" - "@abp/font-awesome" "~3.2.0" - "@abp/jquery-form" "~3.2.0" - "@abp/jquery-validation-unobtrusive" "~3.2.0" - "@abp/lodash" "~3.2.0" - "@abp/luxon" "~3.2.0" - "@abp/malihu-custom-scrollbar-plugin" "~3.2.0" - "@abp/select2" "~3.2.0" - "@abp/sweetalert" "~3.2.0" - "@abp/timeago" "~3.2.0" - "@abp/toastr" "~3.2.0" - -"@abp/aspnetcore.mvc.ui@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-3.2.0.tgz#01f80b9f663f4d95ceac733761833cf4648e92b5" - integrity sha512-NzH1UxEoE/FVT0LLjMNq5eSsiORLe5dE+aKr7jjbaxcuVr7QI7KI9ry6xWAZk+0cbGvsUAY0xqrMxxqiLpskxQ== +"@abp/aspnetcore.mvc.ui.theme.shared@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-3.2.1.tgz#b628602dca8d1809e32f423962cff56379a790b0" + integrity sha512-aWZAaFnN9Ncyzy84wPTfUVtcyh98Sxu4m+fsGY5XtwA/nwDTDVtLMq81ueJWyFgN9GNk8+lT6VXfPDpA/MJo/A== + dependencies: + "@abp/aspnetcore.mvc.ui" "~3.2.1" + "@abp/bootstrap" "~3.2.1" + "@abp/bootstrap-datepicker" "~3.2.1" + "@abp/datatables.net-bs4" "~3.2.1" + "@abp/font-awesome" "~3.2.1" + "@abp/jquery-form" "~3.2.1" + "@abp/jquery-validation-unobtrusive" "~3.2.1" + "@abp/lodash" "~3.2.1" + "@abp/luxon" "~3.2.1" + "@abp/malihu-custom-scrollbar-plugin" "~3.2.1" + "@abp/select2" "~3.2.1" + "@abp/sweetalert" "~3.2.1" + "@abp/timeago" "~3.2.1" + "@abp/toastr" "~3.2.1" + +"@abp/aspnetcore.mvc.ui@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-3.2.1.tgz#dc0d2c331bf09ef0f79cec739e0f64edb1105084" + integrity sha512-Fpn16MeK71Uhw6636nlXCQaSwN9lN6QFUIGIICcWU+2eMA8fK4ZtavaYGG4mWqjkd4wzUHCz2AZbmbxK7bVnng== dependencies: ansi-colors "^4.1.1" extend-object "^1.0.0" @@ -41,145 +41,145 @@ path "^0.12.7" rimraf "^3.0.2" -"@abp/bootstrap-datepicker@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-3.2.0.tgz#0a1813d8a84dd6eb6cf647244a4a91900364deb1" - integrity sha512-w7YyA5TRZqGL3qYyArwfrRc4/qWQMT0BPYDOsGMrtPJZDWeZL7WPezuiIvKNdI71BfUq6XiA1+wwMfqjcClZ2g== +"@abp/bootstrap-datepicker@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-3.2.1.tgz#5cb75bc53fab86f7b28bfc5fbfcbf233432d75ca" + integrity sha512-KzTDZTMd/TBaTDNuPF4+T+0zsmEimD2Uq8TlNw7knEEyo7a/lsfBNkBF9Xc8bjZcbC76BqajytsTzI1yftM4Uw== dependencies: bootstrap-datepicker "^1.9.0" -"@abp/bootstrap@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-3.2.0.tgz#d249338b0151734f99b8e366aea6fc17d5ef9b37" - integrity sha512-hx9r7EGb1vJrHAdw3D8Cpudv++hrM4dKoKtOKnQbxGG+Q9vwVS6SKquVxJum+bEZWa1CgXvT6co0IDOlW3pDhg== +"@abp/bootstrap@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-3.2.1.tgz#9574414f1e170240dacdf78408af34830264db97" + integrity sha512-gLIr4d5xfw5TSpSHIKr7oKznkdIbGhS+gtBitP1BFVLOU2h7/d6uTZoopC+JQU16DGvn8njo8W4DL7Amh9FOqQ== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" bootstrap "^4.5.0" bootstrap-v4-rtl "4.4.1-2" -"@abp/core@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-3.2.0.tgz#e9f07bde581b07e1b904bec3b12e0ccfc2a50125" - integrity sha512-X3iWv8QxAbqKJMoTb3vfvwGYmD9uZ+p+zn5q5Hoybyq9fjEcevpkdX7OiLvO8M+NEwCKa81wtkvvM2BnEV6Igg== +"@abp/core@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-3.2.1.tgz#3c133f67394d716df3e49f1eeb934c586df755e5" + integrity sha512-GbjrFO+oKl4JuZkYdeWtE+N837XRQr0hoX8O3pI1eAnuMku48QhGec2ZpSJuqG+c3wX6PHTZPIyHse4X+y6QgA== dependencies: - "@abp/utils" "^3.2.0" + "@abp/utils" "^3.2.1" -"@abp/datatables.net-bs4@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs4/-/datatables.net-bs4-3.2.0.tgz#8551c0ac5e29b037a86b141f41052e7a3038be89" - integrity sha512-i2LVTKAllgzhc21rb0GQ0YHtmOMyCT+6P3ZelqkoLdp56D63rVhdAOHrqjebrEHMehsuCUV2XH908kakXWIPXA== +"@abp/datatables.net-bs4@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs4/-/datatables.net-bs4-3.2.1.tgz#b008b2964472fd8c8286a7c4b1e903d93a52e760" + integrity sha512-C/MmA6URugDD1tdUS6zS413ycHCjefeIG7nnJrtJmCZix7mfbdrp/Km/vKbE1KMSEYWis0w/SxIEy0kbkIW4OQ== dependencies: - "@abp/datatables.net" "~3.2.0" + "@abp/datatables.net" "~3.2.1" datatables.net-bs4 "^1.10.21" -"@abp/datatables.net@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-3.2.0.tgz#effd0ec603b15c0de2d1db993d1416b46f4e3146" - integrity sha512-6UX/WqdlRfb3BQ2cw7LbUlMimDXtx7rHanTTWq44g+Wc8fn4fVcYyo9RWCYYOd2MWm9pElEvuzG1AzaOamjW9Q== +"@abp/datatables.net@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-3.2.1.tgz#ba7d4c875ad2bc126687bc5d8e627f3c4d7fb2f4" + integrity sha512-o8/K6RGnPkQUe5ClAxyHNBOevVBnb8qSM4NXRXR2AUtEvjal+4UL9QOf1LZ0zPv4OAjaaAiOAp9Pmbv4FWuZ8Q== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" datatables.net "^1.10.21" -"@abp/font-awesome@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-3.2.0.tgz#ad75daf1c084c2c6a0aeccc092057627ce898652" - integrity sha512-FAWBYWwg2ZtKO+0/lS/bc4YFnR7IehQ2Y+y1srIypgSY/739X4aUWb0YDW1tE0QrrFfQ//f16AyIKPynGl0T5Q== +"@abp/font-awesome@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-3.2.1.tgz#d54a6d9627fdfeb6c615550f09241d0c805e3d39" + integrity sha512-5BlAuIX4qFdf/mvycUAREmVQ8jg0tRtDnVXt0E8kUtzghhEGG91NfcZIaB4zaWAwuJSyqqjS/VJ/URy1g50NZQ== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" "@fortawesome/fontawesome-free" "^5.13.0" -"@abp/jquery-form@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-3.2.0.tgz#b1b408c0f380c8dfd99c063251f2f1fd86dff14c" - integrity sha512-ZC38zLqlMm67nONg+7ZSC7ExzLZApZ2nZ3/yM6J5LNa7IOgzDGPZgbDRBiwFdC3vIB04LhnNr83YrEvIaUnIzQ== +"@abp/jquery-form@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-3.2.1.tgz#9280b28e2103fc80b9124e3a53f2f0e03ac4bb46" + integrity sha512-Dy0wTCcmWgygrru59VPnlVw7qLu8aLTZOTpMPbSva502O19O+H7FljF9r0J7eYgoO6pcTO4R1tE/Yib3DwIBFg== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-3.2.0.tgz#91b996c743e5b1423a4d01d8808788a4bf4adb32" - integrity sha512-FSkGWvIkZTd2LITbTCdyno0ml30PZZmGYCazowHprh1iuhx0C+yCd9U/kfZ3rLoZAFtWjz0ZUq1Z7G5xXHB97A== +"@abp/jquery-validation-unobtrusive@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-3.2.1.tgz#8f0b54f0d39b00ab93638fe1537ae7bd77e3e78e" + integrity sha512-mr/jZVm8QuYO1vWcNo3ytuQEeMBvjnMiTrvoUzY1OXX+HUFR6oi8FohXgxFUypElAqQ8jelV9K0qonX1zTQhcg== dependencies: - "@abp/jquery-validation" "~3.2.0" + "@abp/jquery-validation" "~3.2.1" jquery-validation-unobtrusive "^3.2.11" -"@abp/jquery-validation@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-3.2.0.tgz#1de41e9167b41a956ce2f6e3d6f16d023fccd078" - integrity sha512-FlP7btUvAJfGoi0g8Hm474jlhtweyd/P6dRu2spApUOpKjMyUNFpp/nphmr0iQvx7JGeeaAaUhQJ2v5UKy/Z8w== +"@abp/jquery-validation@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-3.2.1.tgz#b5330eb404f357936d16f3dd81752076bfee963d" + integrity sha512-nmubyFyA8TbLdsJt8MAspSRN4St8Xn8ICB8ancdiyxbS/6u9oeKlvP4++ZZ881NlFkPsyo7GkHjfl29pNzzzJA== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" jquery-validation "^1.19.2" -"@abp/jquery@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-3.2.0.tgz#eabc0bafef3cf2b64f672c562bda1f1002b07b7c" - integrity sha512-tlvQ79cqyJ+tXEf17Vdwi6O8yo0+7bmicyy5A/iYyWWJUjXGkiouQHjHkoZ2jeyxwvqn85tBbfjeRumcZdYRMA== +"@abp/jquery@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-3.2.1.tgz#c7ee0bbff0b480b8ed01f46d1ce07ebc8c35e4a2" + integrity sha512-AvfQ9rnnb+pQUDuGnuhpCB+FzWz3EqDptoeiCDQjPXxGql3Wk5GWw6QzvuREOXcU4CoUyzigyDgnO5WaSlx8kQ== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" jquery "~3.5.1" -"@abp/lodash@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-3.2.0.tgz#63e8c51fe9e760d7debca9129bfbf01be8c12d18" - integrity sha512-/rGkJMCgbA0JLkjMXenxz6q0BXRDwvYSLUu7XotNj/cbiHpT5yHHTnWQgwxVUKEVA9xtmYUH1h20J25n/VD/tg== +"@abp/lodash@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-3.2.1.tgz#7abfe7d572eaa628c033a6d50520b8510ecce79a" + integrity sha512-ZDte0vUfM1fBrs/mRq7yCuugtYZKoP/6pOEebDOMdM1GztAEKicq8s7EXxwbqE4+kjxqeHzReh7ZwCtFAf/Zew== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" lodash "^4.17.15" -"@abp/luxon@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-3.2.0.tgz#f94b595d15d78868a4acf73803a9da8609096d39" - integrity sha512-3FF9/W+Smp4FqRJ6F5vNxydXYraVgEUsrOBkaBexVkzT/l3zBkCmrJ8i+Eib8xBXpS6Ku4nmpqbqm1VYhlxKTQ== +"@abp/luxon@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-3.2.1.tgz#ad3473f24dbacd4d1bc15a07ee75cc1db7f1df6c" + integrity sha512-WZgAMHNx1beQSA48ZJ2x2g408iBXBUvKwBwAFJqbhNhEsO95tutO80j1LNHYvXCbrAatoz6K6IDRXDXV1U3zyg== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" luxon "^1.24.1" -"@abp/malihu-custom-scrollbar-plugin@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-3.2.0.tgz#bd11a36a37ec23d38cba116934398696379158b1" - integrity sha512-BYGICB55RsYHmaICnyWdCewo0uEbopmuuUuCJlE+2IY1I4JchSWG2mV//F+jOZQmlOsjYufK70BrQQEIr+ewXw== +"@abp/malihu-custom-scrollbar-plugin@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-3.2.1.tgz#f4a19c6de14c7193eaf6c55c429580dcbcfe3965" + integrity sha512-pu8Tuh67ruG1fLEud1eves/eiBCiuowL+LVLyW+iX1bByfVlOB40nMQ7UCMQ6Jvv31pTEK2dfQ/n8K3W/pFiWQ== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/select2@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-3.2.0.tgz#729f82695bbfd7ab3d7a90059a198f338037c867" - integrity sha512-83V8jIR8RGFJ3II5G7/bitlv44OHOEENKDrT639OYIxHfgWEWm4CBhcyCnlZJqv6xB2AVDfFPgCPlDGl3x3tmw== +"@abp/select2@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-3.2.1.tgz#8a04a6f5f10cc4a48a3da37bbc38ff655e626ddf" + integrity sha512-i/euJ+kTHakwCI3Hf9+NhiQG+MYlU0iwp6GRmS2uHqgkMd2gVjnBq+elA2jsi50PXpxowv4vdBCNHcicI58W2w== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" select2 "^4.0.13" -"@abp/sweetalert@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/sweetalert/-/sweetalert-3.2.0.tgz#05040b7276ca2ce62ffc20865d64fb6e0fdb62cb" - integrity sha512-BEgbWwWX2uOsVS/zV6OzlxRBCtSlqeAYdSkmDjQ7pzCthwZXPPFr1o8UXyp9W7GKwDg3lfWTQPkkm+2y587xEw== +"@abp/sweetalert@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/sweetalert/-/sweetalert-3.2.1.tgz#be99820491499fea06259fbc584e799a51cbabf3" + integrity sha512-If5UJQVJ05aEbxPHrwRpuEzCT5ygOHmPzpBblpzSo5XxNNDGGlumnwYmtbXBSXutXrIR0b5//Bo1EgBVtmJHOg== dependencies: - "@abp/core" "~3.2.0" + "@abp/core" "~3.2.1" sweetalert "^2.1.2" -"@abp/timeago@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-3.2.0.tgz#e4a207566c00ccb3161ee91c6f6ce26419e4bbaf" - integrity sha512-VUk8c3hITZfu5aA21XB2Qaw5fwoeAl36Piy0Cb3aUOCFjyGWg19htXxDoT7rzqZ5UJFN0VRYg9MzciXZrFN5/w== +"@abp/timeago@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-3.2.1.tgz#4e5e6c76d5440de65646a076ce1a9d7225882243" + integrity sha512-4WLWoCYiSg5zYPcogV47TXA+YomDHHY0YfHHWmr6TP2bHd5ghsnMqnnkt58nUN9Psd77teo+Mo9jgR0h2IxRwQ== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" timeago "^1.6.7" -"@abp/toastr@~3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-3.2.0.tgz#059e1e1e998207a6f75db2bfe717bec2a0b6d955" - integrity sha512-EKikZVQDaX/uQfc0rWsW2x+UDsO4r80KC3pLvRaLXW5IEwEhTpYwZDUGReOEQ8YEk7UKOXrVJA07mxkbdOzyAw== +"@abp/toastr@~3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-3.2.1.tgz#d35b44234ca6cbd5da6cc5f65d15e827bd7970dc" + integrity sha512-nBmWGL49psSF2tcNnR6PGBcfFAxo2u5HHNRzv2c2z46ZEGFa5DjuY46KZC24jMWY+yprINQewhKTmQUqJvaHqA== dependencies: - "@abp/jquery" "~3.2.0" + "@abp/jquery" "~3.2.1" toastr "^2.1.4" -"@abp/utils@^3.2.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-3.2.0.tgz#084918379f2c5e43c1e52291ba6667f3ea3c1f33" - integrity sha512-DZsvF/I5o3r0D1+2B61KvJX78/tJ5uj9MaPq00Z/sxXdqsP2SQQmjhMm+Lb0FgGMK06XIoF9eDgM3Hu0y0H3cQ== +"@abp/utils@^3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-3.2.1.tgz#960a0bbdfb781bbd6fb05e80bba2b9d95f2ae44c" + integrity sha512-bqYa1VIi1tZXCUbP2Z1WlcgPD4/wjhDVM1jiAN9UzDls1K3u+e2LyR4gLoN39WW1ULjCIhyzEAw/JgTcMmpUBw== dependencies: just-compare "^1.3.0"