From 6cccf91ed05dd42bace16d47b0e629a3f66dd1dd Mon Sep 17 00:00:00 2001 From: Mark Cilia Vincenti Date: Tue, 20 Aug 2024 19:27:52 +0200 Subject: [PATCH 01/55] Bump AsyncKeyedLock to 7.0.1 --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index b43886f7cf..8a28502b6d 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -6,7 +6,7 @@ - + From ae0fe6cbb4e5d2984d82552518abb38b38fad05c Mon Sep 17 00:00:00 2001 From: sumeyyeKurtulus Date: Thu, 22 Aug 2024 16:44:00 +0300 Subject: [PATCH 02/55] add: hierarchical check for permission selection --- .../permission-management.component.ts | 34 ++++++++++++++++--- 1 file changed, 29 insertions(+), 5 deletions(-) diff --git a/npm/ng-packs/packages/permission-management/src/lib/components/permission-management.component.ts b/npm/ng-packs/packages/permission-management/src/lib/components/permission-management.component.ts index 8503a2bd81..4ea265fc7e 100644 --- a/npm/ng-packs/packages/permission-management/src/lib/components/permission-management.component.ts +++ b/npm/ng-packs/packages/permission-management/src/lib/components/permission-management.component.ts @@ -195,13 +195,13 @@ export class PermissionManagementComponent }, 0); } - setParentClicked(clickedPermissions: PermissionGrantInfoDto) { + setParentClicked(clickedPermission: PermissionGrantInfoDto) { let childPermissionGrantedCount = 0; let parentPermission: PermissionGrantInfoDto; - if (clickedPermissions.parentName) { + if (clickedPermission.parentName) { this.permissions.forEach(per => { - if (per.name === clickedPermissions.parentName) { + if (per.name === clickedPermission.parentName) { parentPermission = per; } }); @@ -220,9 +220,11 @@ export class PermissionManagementComponent } return; } + this.permissions = this.permissions.map(per => { - if (per.parentName === clickedPermissions.name) { - per.isGranted = false; + const root = findRootParent(this.permissions, per); + if (root && root.name === clickedPermission.name) { + per.isGranted = root.isGranted; } return per; }); @@ -387,6 +389,28 @@ export class PermissionManagementComponent } } +function findRootParent( + permissions: PermissionGrantInfoDto[], + permission: PermissionGrantInfoDto, +): PermissionGrantInfoDto | null { + if (!permissions.length) { + return null; + } + + const permissionMap = new Map(permissions.map(p => [p.name, p])); + let currentPermission = permissionMap.get(permission.name) ?? null; + + while (currentPermission && currentPermission.parentName) { + const parentPermission = permissionMap.get(currentPermission.parentName); + if (!parentPermission) { + break; + } + currentPermission = parentPermission; + } + + return currentPermission; +} + function findMargin( permissions: PermissionGrantInfoDto[], permission: PermissionGrantInfoDto, From 8becd973973882baf5aca378b2b215a670bf1cbb Mon Sep 17 00:00:00 2001 From: sumeyyeKurtulus Date: Tue, 27 Aug 2024 08:55:54 +0300 Subject: [PATCH 03/55] =?UTF-8?q?update:=20permission=20selection=20rules?= =?UTF-8?q?=20are=20met=20=F0=9F=99=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../permission-management.component.ts | 64 +++++++++++-------- 1 file changed, 39 insertions(+), 25 deletions(-) diff --git a/npm/ng-packs/packages/permission-management/src/lib/components/permission-management.component.ts b/npm/ng-packs/packages/permission-management/src/lib/components/permission-management.component.ts index 4ea265fc7e..cabc903d95 100644 --- a/npm/ng-packs/packages/permission-management/src/lib/components/permission-management.component.ts +++ b/npm/ng-packs/packages/permission-management/src/lib/components/permission-management.component.ts @@ -196,25 +196,19 @@ export class PermissionManagementComponent } setParentClicked(clickedPermission: PermissionGrantInfoDto) { - let childPermissionGrantedCount = 0; - let parentPermission: PermissionGrantInfoDto; + const parentPermissions: PermissionGrantInfoDto[] = findAllParentPermissions( + this.permissions, + clickedPermission, + ); if (clickedPermission.parentName) { - this.permissions.forEach(per => { - if (per.name === clickedPermission.parentName) { - parentPermission = per; - } - }); - this.permissions.forEach(per => { - if (parentPermission.name === per.parentName) { - per.isGranted && childPermissionGrantedCount++; - } - }); - if (childPermissionGrantedCount === 1 && !parentPermission.isGranted) { + if (parentPermissions.length) { this.permissions = this.permissions.map(per => { - if (per.name === parentPermission.name) { - per.isGranted = true; - } + parentPermissions.forEach(parent => { + if (per.name === parent.name) { + per.isGranted = true; + } + }); return per; }); } @@ -223,8 +217,10 @@ export class PermissionManagementComponent this.permissions = this.permissions.map(per => { const root = findRootParent(this.permissions, per); - if (root && root.name === clickedPermission.name) { - per.isGranted = root.isGranted; + if (root) { + if (root.name === clickedPermission.name && !root.isGranted) { + per.isGranted = false; + } } return per; }); @@ -389,26 +385,44 @@ export class PermissionManagementComponent } } -function findRootParent( +function traverseParentPermissions( permissions: PermissionGrantInfoDto[], permission: PermissionGrantInfoDto, -): PermissionGrantInfoDto | null { - if (!permissions.length) { - return null; - } - + collectAll = false, +): PermissionGrantInfoDto[] { const permissionMap = new Map(permissions.map(p => [p.name, p])); let currentPermission = permissionMap.get(permission.name) ?? null; + const parentPermissions: PermissionGrantInfoDto[] = []; while (currentPermission && currentPermission.parentName) { const parentPermission = permissionMap.get(currentPermission.parentName); if (!parentPermission) { break; } + parentPermissions.push(parentPermission); currentPermission = parentPermission; + + if (!collectAll) { + break; + } } - return currentPermission; + return parentPermissions; +} + +function findRootParent( + permissions: PermissionGrantInfoDto[], + permission: PermissionGrantInfoDto, +): PermissionGrantInfoDto | null { + const parentPermissions = traverseParentPermissions(permissions, permission); + return parentPermissions.length ? parentPermissions[parentPermissions.length - 1] : null; +} + +function findAllParentPermissions( + permissions: PermissionGrantInfoDto[], + permission: PermissionGrantInfoDto, +): PermissionGrantInfoDto[] { + return traverseParentPermissions(permissions, permission, true); } function findMargin( From 36c350375d3a24b81d80e073f6e071d158aab6f5 Mon Sep 17 00:00:00 2001 From: ahmetfarukulu Date: Tue, 27 Aug 2024 16:52:25 +0300 Subject: [PATCH 04/55] adding-new-microservices documentation updated --- .../microservice/adding-new-microservices.md | 336 ++++++++++++------ .../microservice/images/folder-structure.png | Bin 0 -> 62271 bytes 2 files changed, 232 insertions(+), 104 deletions(-) create mode 100644 docs/en/solution-templates/microservice/images/folder-structure.png diff --git a/docs/en/solution-templates/microservice/adding-new-microservices.md b/docs/en/solution-templates/microservice/adding-new-microservices.md index 2ff864cd0d..30eb4670ec 100644 --- a/docs/en/solution-templates/microservice/adding-new-microservices.md +++ b/docs/en/solution-templates/microservice/adding-new-microservices.md @@ -16,6 +16,8 @@ This document explains how to add new microservices to the microservice solution Additionally, there is a folder named `_templates` in the root directory. This folder contains templates you can use to create new microservices, API gateways, and applications. These templates can be customized according to your needs. +![folder-structure](images/folder-structure.png) + ## Adding a New Microservice To add a new microservice to the solution, you can use the `service_nolayers` template. This template creates a new ASP.NET Core application with the necessary configurations and dependencies. Follow the steps below to add a new microservice: @@ -40,29 +42,34 @@ The new microservice is created and added to the solution. You can see the new m The new microservice is created with the necessary configurations and dependencies. We should configure several sections by modifying the `appsettings.json` file: * Set the `Administration` & `AbpBlobStoring` connection strings. - * Set the correct `StringEncryption` key. * Set the `CorsOrigins` to allow the web gateway to access the microservice. * Set the `AuthServer` configurations to enable the microservice to authenticate and authorize users. + * Set the correct `StringEncryption` key. You can copy the configurations from the existing microservices and modify them according to the new microservice. Below is an example of the `appsettings.json` file for the `ProductService` microservice. -```json +```diff { "ConnectionStrings": { - "Administration": "Server=localhost,1434; User Id=sa; Password=myPassw@rd; Database=Bookstore_Administration; TrustServerCertificate=true", - "AbpBlobStoring": "Server=localhost,1434; User Id=sa; Password=myPassw@rd; Database=Bookstore_BlobStoring; TrustServerCertificate=true", +- "Administration": "Administration_Database", +- "AbpBlobStoring": "BlobStoring_Database", ++ "Administration": "Server=localhost,1434; User Id=sa; Password=myPassw@rd; Database=Bookstore_Administration; TrustServerCertificate=true", ++ "AbpBlobStoring": "Server=localhost,1434; User Id=sa; Password=myPassw@rd; Database=Bookstore_BlobStoring; TrustServerCertificate=true", "ProductService": "Server=localhost,1434; User Id=sa; Password=myPassw@rd; Database=Bookstore_ProductService; TrustServerCertificate=true" }, "App": { - "CorsOrigins": "http://localhost:44333", +- "CorsOrigins": "http://localhost:webgateway_port", ++ "CorsOrigins": "http://localhost:44333", "EnablePII": false }, "Swagger": { "IsEnabled": true }, "AuthServer": { - "Authority": "http://localhost:44387", - "MetaAddress": "http://localhost:44387", +- "Authority": "http://localhost:authserver_port", +- "MetaAddress": "http://localhost:authserver_port", ++ "Authority": "http://localhost:44387", ++ "MetaAddress": "http://localhost:44387", "RequireHttpsMetadata": "false", "SwaggerClientId": "SwaggerTestUI", "Audience": "ProductService" @@ -93,7 +100,8 @@ You can copy the configurations from the existing microservices and modify them "Url": "http://localhost:9200" }, "StringEncryption": { - "DefaultPassPhrase": "PDAWjbshpwlOwNB6" +- "DefaultPassPhrase": "string_encrryption_key" ++ "DefaultPassPhrase": "PDAWjbshpwlOwNB6" } } ``` @@ -104,13 +112,13 @@ We should configure the OpenId options by modifying the `OpenIddictDataSeeder` i Create API scopes and add the required API scope for Swagger clients in the `CreateApiScopesAsync` and `CreateSwaggerClientsAsync` methods in the `OpenIddictDataSeeder` class. -```csharp +```diff private async Task CreateApiScopesAsync() { await CreateScopesAsync("AuthServer"); await CreateScopesAsync("IdentityService"); await CreateScopesAsync("AdministrationService"); - await CreateScopesAsync("ProductService"); // new service ++ await CreateScopesAsync("ProductService"); } private async Task CreateSwaggerClientsAsync() @@ -120,21 +128,21 @@ private async Task CreateSwaggerClientsAsync() "AuthServer", "IdentityService", "AdministrationService", - "ProductService" // new service ++ "ProductService" }); } ``` Add the redirect URL for the new service in the `CreateSwaggerClientAsync` method. -```csharp +```diff private async Task CreateSwaggerClientAsync(string clientId, string[] scopes) { ... ... ... var administrationServiceRootUrl = _configuration["OpenIddict:Resources:AdministrationService:RootUrl"]!.TrimEnd('/'); - var productServiceServiceRootUrl = _configuration["OpenIddict:Resources:ProductService:RootUrl"]!.TrimEnd('/'); // new service ++ var productServiceServiceRootUrl = _configuration["OpenIddict:Resources:ProductService:RootUrl"]!.TrimEnd('/'); await CreateOrUpdateApplicationAsync( name: clientId, @@ -152,7 +160,7 @@ private async Task CreateSwaggerClientAsync(string clientId, string[] scopes) $"{authServerRootUrl}/swagger/oauth2-redirect.html", $"{identityServiceRootUrl}/swagger/oauth2-redirect.html", $"{administrationServiceRootUrl}/swagger/oauth2-redirect.html", - $"{productServiceServiceRootUrl}/swagger/oauth2-redirect.html", // new service ++ $"{productServiceServiceRootUrl}/swagger/oauth2-redirect.html" } ); } @@ -160,7 +168,7 @@ private async Task CreateSwaggerClientAsync(string clientId, string[] scopes) Add the allowed scope for the web (front-end) application(s) in the `CreateClientsAsync` method. You might have different clients for different UI applications such as web, Angular, React, etc. Ensure you add the new service to the allowed scopes of these clients. -```csharp +```diff private async Task CreateClientsAsync() { var commonScopes = new List @@ -192,7 +200,7 @@ private async Task CreateClientsAsync() "SaasService", "AuditLoggingService", "AdministrationService", - "ProductService" // new service ++ "ProductService" }).ToList(), redirectUris: new List { $"{webClientRootUrl}signin-oidc" }, postLogoutRedirectUris: new List() { $"{webClientRootUrl}signout-callback-oidc" }, @@ -202,110 +210,130 @@ private async Task CreateClientsAsync() } ``` -Add the new service URL to the `appsettings.json` file in the `Identity` service. +Add the new service URL to the `appsettings.json` file in the `Identity` microservice. In this example we're gonna edit the *Acme.Bookstore.IdentityService* project `appsettings.json` file. -```json +```diff "OpenIddict": { "Applications": { ... }, "Resources": { ... - "ProductService": { - "RootUrl": "http://localhost:44350" - } ++ "ProductService": { ++ "RootUrl": "http://localhost:44350" ++ } } } ``` ### Configuring the AuthServer -We should configure the AuthServer for **CORS** and **RedirectAllowedUrls**. +We should configure the *AuthServer* `appsettings.json` file for the **CorsOrigins** and **RedirectAllowedUrls** sections. -```json +```diff +... "App": { "SelfUrl": "http://localhost:***", - "CorsOrigins": "...... ,http://localhost:44350", +- "CorsOrigins": "http://localhost:44358,..", ++ "CorsOrigins": "http://localhost:44358,..,http://localhost:44350", "EnablePII": false, - "RedirectAllowedUrls": "...... ,http://localhost:44350" -} +- "RedirectAllowedUrls": "http://localhost:44358,..", ++ "RedirectAllowedUrls": "http://localhost:44358,..,http://localhost:44350" +}, +... ``` ### Configuring the API Gateway -We should configure the API Gateway to allow the web gateway to access the new microservice. First, we should add the **ProductService** sections to the `appsettings.json` file in the `WebGateway` project. +We should configure the API Gateway to access the new microservice. First, add the **ProductService** sections to the `appsettings.json` file in the `WebGateway` project. In this example we're gonna edit the *Acme.Bookstore.WebGateway* project `appsettings.json` file. -```json +```diff "ReverseProxy": { "Routes": { ... - "ProductService": { - "ClusterId": "ProductService", - "Match": { - "Path": "/api/productservice/{**catch-all}" - } - }, - "ProductServiceSwagger": { - "ClusterId": "ProductService", - "Match": { - "Path": "/swagger-json/ProductService/swagger/v1/swagger.json" - }, - "Transforms": [ - { "PathRemovePrefix": "/swagger-json/ProductService" } - ] - } ++ "ProductService": { ++ "ClusterId": "ProductService", ++ "Match": { ++ "Path": "/api/productservice/{**catch-all}" ++ } ++ }, ++ "ProductServiceSwagger": { ++ "ClusterId": "ProductService", ++ "Match": { ++ "Path": "/swagger-json/ProductService/swagger/v1/swagger.json" ++ }, ++ "Transforms": [ ++ { "PathRemovePrefix": "/swagger-json/ProductService" } ++ ] ++ } }, "Clusters": { ... - "ProductService": { - "Destinations": { - "ProductService": { - "Address": "http://localhost:44350/" - } - } - } ++ "ProductService": { ++ "Destinations": { ++ "ProductService": { ++ "Address": "http://localhost:44350/" ++ } ++ } ++ } } } ``` -Afterwards, open the `ProjectNameWebGatewayModule` class in the `WebGateway` and add the `ProductService` to the `ConfigureSwaggerUI` method. +Afterwards, open the `ProjectNameWebGatewayModule` class in the `WebGateway` project and add the `ProductService` to the `ConfigureSwaggerUI` method. In this example we're gonna edit the `BookstoreWebGatewayModule` file. -```csharp -options.OAuthScopes( - "AdministrationService", - "AuthServer", - "IdentityService", - "ProductService" // new service -); +```diff +private static void ConfigureSwaggerUI( + IProxyConfig proxyConfig, + SwaggerUIOptions options, + IConfiguration configuration) +{ + foreach (var cluster in proxyConfig.Clusters) + { + options.SwaggerEndpoint($"/swagger-json/{cluster.ClusterId}/swagger/v1/swagger.json", $"{cluster.ClusterId} API"); + } + + options.OAuthClientId(configuration["AuthServer:SwaggerClientId"]); + options.OAuthScopes( + "AdministrationService", + "AuthServer", + ..., ++ "ProductService" + ); +} ``` ### Configuring the UI Services -We should configure the UI application(s) to allow the new microservice to access through the web gateway. To do this, we should add the new service scope to the `ConfigureAuthentication` method in the `ProjectName...Module` class in the `Web` or `Blazor` application. +We should configure the UI application(s) to allow the new microservice to access through the web gateway. To do this, we should add the new service scope to the `ConfigureAuthentication` method in the `ProjectName...Module` class in the `Web` or `Blazor` application. In this example we're gonna edit the *BookstoreWebModule* file. -```csharp -context.Services.AddAuthentication(options => -{ - options.DefaultScheme = "Cookies"; - options.DefaultChallengeScheme = "oidc"; -}) -.AddCookie("Cookies", options => +```diff +private void ConfigureAuthentication(ServiceConfigurationContext context, IConfiguration configuration) { - options.ExpireTimeSpan = TimeSpan.FromDays(365); -}) -.AddAbpOpenIdConnect("oidc", options => -{ - ... - options.Scope.Add("AuthServer"); - options.Scope.Add("IdentityService"); - options.Scope.Add("AdministrationService"); - options.Scope.Add("ProductService"); // new servie -}); + context.Services.AddAuthentication(options => + { + options.DefaultScheme = "Cookies"; + options.DefaultChallengeScheme = "oidc"; + }) + .AddCookie("Cookies", options => + { + options.ExpireTimeSpan = TimeSpan.FromDays(365); + }) + .AddAbpOpenIdConnect("oidc", options => + { + ... + options.Scope.Add("AuthServer"); + options.Scope.Add("IdentityService"); + options.Scope.Add("AdministrationService"); ++ options.Scope.Add("ProductService"); + }); + ... +} ``` Similarly, if you have an Angular application, you should add the new service scope to the `oAuthConfig` in `environment.ts`: -```typescript +```diff const baseUrl = 'http://localhost:4200'; const oAuthConfig = { @@ -313,7 +341,8 @@ const oAuthConfig = { redirectUri: baseUrl, clientId: 'Angular', responseType: 'code', - scope: 'openid profile email roles AuthServer IdentityService AdministrationService ProductService', // new service +- scope: 'openid profile email roles AuthServer IdentityService AdministrationService', ++ scope: 'openid profile email roles AuthServer IdentityService AdministrationService ProductService', requireHttps: false }; ``` @@ -328,12 +357,18 @@ We should add the new microservice to the solution runner [profile](../../studio If you want to monitor the new microservice with Prometheus when you debug the solution, you should add the new microservice to the `prometheus.yml` file in the `etc/docker/prometheus` folder. You can copy the configurations from the existing microservices and modify them according to the new microservice. Below is an example of the `prometheus.yml` file for the `ProductService` microservice. -```yml - - job_name: 'product' +```diff + - job_name: 'authserver' scheme: http metrics_path: 'metrics' static_configs: - - targets: ['host.docker.internal:44350'] + - targets: ['host.docker.internal:44398'] + ... ++ - job_name: 'product' ++ scheme: http ++ metrics_path: 'metrics' ++ static_configs: ++ - targets: ['host.docker.internal:44350'] ``` ## Creating Helm Chart for the New Microservice @@ -342,40 +377,53 @@ If you want to deploy the new microservice to Kubernetes, you should create a He First, we need to add the new microservice to the `build-all-images.ps1` script in the `etc/helm` folder. You can copy the configurations from the existing microservices and modify them according to the new microservice. Below is an example of the `build-all-images.ps1` script for the `ProductService` microservice. -```powershell -./build-image.ps1 -ProjectPath "../../services/product/Acme.Bookstore.ProductService/Acme.Bookstore.ProductService.csproj" -ImageName bookstore/productservice +```diff +... + ./build-image.ps1 -ProjectPath "../../apps/auth-server/Acme.Bookstore.AuthServer/Acme.Bookstore.AuthServer.csproj" -ImageName bookstore/authserver ++ ./build-image.ps1 -ProjectPath "../../services/product/Acme.Bookstore.ProductService/Acme.Bookstore.ProductService.csproj" -ImageName bookstore/productservice ``` Then, we need to add the connection string to the `values.projectname-local.yaml` file in the `etc/helm/projectname` folder. Below is an example of the `values.bookstore-local.yaml` file for the `ProductService` microservice. -```yaml +```diff global: ... connectionStrings: ... - productService: "Server=[RELEASE_NAME]-sqlserver,1433; Database=Bookstore_ProductService; User Id=sa; Password=myPassw@rd; TrustServerCertificate=True" ++ productService: "Server=[RELEASE_NAME]-sqlserver,1433; Database=Bookstore_ProductService; User Id=sa; Password=myPassw@rd; TrustServerCertificate=True" ``` Afterwards, we need to create a new Helm chart for the new microservice. You can copy the configurations from the existing microservices and modify them according to the new microservice. Below is an example of the `productservice` Helm chart for the `ProductService` microservice. +Product microservice `values.yaml` file. + {%{ ```yaml -# values.yaml image: repository: "bookstore/productservice" tag: "latest" pullPolicy: IfNotPresent swagger: isEnabled: "true" +``` +}%} + +Product microservice `Chart.yaml` file. -# Chart.yaml +{%{ +```yaml apiVersion: v2 name: productservice version: 1.0.0 appVersion: "1.0" description: Bookstore Product Service +``` +}%} -# product.yaml +Product microservice `product.yaml` file. + +{%{ +```yaml apiVersion: apps/v1 kind: Deployment metadata: @@ -406,8 +454,13 @@ spec: - name: "ConnectionStrings__ProductService" value: "{{ .Values.global.connectionStrings.productService | replace "[RELEASE_NAME]" .Release.Name }}" ... +``` +}%} + +Product microservice `product-service.yaml` file. -# product-service.yaml +{%{ +```yaml apiVersion: v1 kind: Service metadata: @@ -437,22 +490,97 @@ Add the *Kubernetes Services* in the *Chart Properties* -> *Kubernetes Services* Last but not least, we need to configure the helm chart environments for identity, auth-server, and gateway applications. +Below is an example of the *Identity* microservice `identity.yaml` file. + {%{ -```yaml -# identity.yaml -# Add this line to the "env:" section -- name: "OpenIddict__Resources__ProductService__RootUrl" - value: "http://{{ .Release.Name }}-productservice" - -# authserver.yaml -# Concat the following lines for "App__CorsOrigins" section -- name: "App__CorsOrigins" - value: "...,http://{{ .Release.Name }}-administration,http://{{ .Release.Name }}-productservice" - -# webapigateway.yaml -# Add this line to the "env:" section -- name: "ReverseProxy__Clusters__ProductService__Destinations__ProductService__Address" - value: "http://{{ .Release.Name }}-productservice" +```diff +apiVersion: apps/v1 +kind: Deployment +metadata: + name: "{{ .Release.Name }}-{{ .Chart.Name }}" +spec: + selector: + matchLabels: + app: "{{ .Release.Name }}-{{ .Chart.Name }}" + template: + metadata: + labels: + app: "{{ .Release.Name }}-{{ .Chart.Name }}" + spec: + containers: + - image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}" + imagePullPolicy: "{{ .Values.image.pullPolicy }}" + name: "{{ .Release.Name }}-{{ .Chart.Name }}" + ports: + - name: "http" + containerPort: 80 + env: + ... ++ - name: "OpenIddict__Resources__ProductService__RootUrl" ++ value: "http://{{ .Release.Name }}-productservice" +``` +}%} + +Below is an example of the *AuthServer* application `authserver.yaml` file. + +{%{ +```diff +apiVersion: apps/v1 +kind: Deployment +metadata: + name: "{{ .Release.Name }}-{{ .Chart.Name }}" +spec: + selector: + matchLabels: + app: "{{ .Release.Name }}-{{ .Chart.Name }}" + template: + metadata: + labels: + app: "{{ .Release.Name }}-{{ .Chart.Name }}" + spec: + containers: + - image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}" + imagePullPolicy: "{{ .Values.image.pullPolicy }}" + name: "{{ .Release.Name }}-{{ .Chart.Name }}" + ports: + - name: "http" + containerPort: 80 + env: + ... + - name: "App__CorsOrigins" +- value: "...,http://{{ .Release.Name }}-administration" ++ value: "...,http://{{ .Release.Name }}-administration,http://{{ .Release.Name }}-productservice" +``` +}%} + +Below is an example of the *WebApiGateway* application `webapigateway.yaml` file. + +{%{ +```diff +apiVersion: apps/v1 +kind: Deployment +metadata: + name: "{{ .Release.Name }}-{{ .Chart.Name }}" +spec: + selector: + matchLabels: + app: "{{ .Release.Name }}-{{ .Chart.Name }}" + template: + metadata: + labels: + app: "{{ .Release.Name }}-{{ .Chart.Name }}" + spec: + containers: + - image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}" + imagePullPolicy: "{{ .Values.image.pullPolicy }}" + name: "{{ .Release.Name }}-{{ .Chart.Name }}" + ports: + - name: "http" + containerPort: 80 + env: + ... ++ - name: "ReverseProxy__Clusters__ProductService__Destinations__ProductService__Address" ++ value: "http://{{ .Release.Name }}-productservice" ``` }%} diff --git a/docs/en/solution-templates/microservice/images/folder-structure.png b/docs/en/solution-templates/microservice/images/folder-structure.png new file mode 100644 index 0000000000000000000000000000000000000000..0342aebdd7b21f4aa5f0ea735e1ef88c39e3334a GIT binary patch literal 62271 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

!u`D_M>m`4 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≤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 literal 0 HcmV?d00001 From 8f1f4e81f65bf2a27ace7408241020ebcc165257 Mon Sep 17 00:00:00 2001 From: ahmetfarukulu Date: Wed, 28 Aug 2024 10:19:45 +0300 Subject: [PATCH 05/55] Service suffix removed from new-microservices doc --- .../microservice/adding-new-microservices.md | 56 +++++++++---------- 1 file changed, 28 insertions(+), 28 deletions(-) diff --git a/docs/en/solution-templates/microservice/adding-new-microservices.md b/docs/en/solution-templates/microservice/adding-new-microservices.md index 30eb4670ec..7add7d613b 100644 --- a/docs/en/solution-templates/microservice/adding-new-microservices.md +++ b/docs/en/solution-templates/microservice/adding-new-microservices.md @@ -108,7 +108,7 @@ You can copy the configurations from the existing microservices and modify them ### Configuring the OpenId Options -We should configure the OpenId options by modifying the `OpenIddictDataSeeder` in the `Identity` service. Below is an example of the `OpenIddictDataSeeder` options for the `ProductService` microservice. +We should configure the OpenId options by modifying the `OpenIddictDataSeeder` in the `Identity` service. Below is an example of the `OpenIddictDataSeeder` options for the `Product` microservice. Create API scopes and add the required API scope for Swagger clients in the `CreateApiScopesAsync` and `CreateSwaggerClientsAsync` methods in the `OpenIddictDataSeeder` class. @@ -166,7 +166,7 @@ private async Task CreateSwaggerClientAsync(string clientId, string[] scopes) } ``` -Add the allowed scope for the web (front-end) application(s) in the `CreateClientsAsync` method. You might have different clients for different UI applications such as web, Angular, React, etc. Ensure you add the new service to the allowed scopes of these clients. +Add the allowed scope for the web (front-end) application(s) in the `CreateClientsAsync` method. You might have different clients for different UI applications such as web, Angular, React, etc. Ensure you add the new microservice to the allowed scopes of these clients. ```diff private async Task CreateClientsAsync() @@ -228,7 +228,7 @@ Add the new service URL to the `appsettings.json` file in the `Identity` microse ### Configuring the AuthServer -We should configure the *AuthServer* `appsettings.json` file for the **CorsOrigins** and **RedirectAllowedUrls** sections. +We should configure the *AuthServer* application `appsettings.json` file for the **CorsOrigins** and **RedirectAllowedUrls** sections. ```diff ... @@ -245,33 +245,33 @@ We should configure the *AuthServer* `appsettings.json` file for the **CorsOrigi ### Configuring the API Gateway -We should configure the API Gateway to access the new microservice. First, add the **ProductService** sections to the `appsettings.json` file in the `WebGateway` project. In this example we're gonna edit the *Acme.Bookstore.WebGateway* project `appsettings.json` file. +We should configure the API Gateway to access the new microservice. First, add the **Product** sections to the `appsettings.json` file in the `WebGateway` project. In this example we're gonna edit the *Acme.Bookstore.WebGateway* project `appsettings.json` file. ```diff "ReverseProxy": { "Routes": { ... -+ "ProductService": { -+ "ClusterId": "ProductService", ++ "Product": { ++ "ClusterId": "Product", + "Match": { -+ "Path": "/api/productservice/{**catch-all}" ++ "Path": "/api/product/{**catch-all}" + } + }, -+ "ProductServiceSwagger": { -+ "ClusterId": "ProductService", ++ "ProductSwagger": { ++ "ClusterId": "Product", + "Match": { -+ "Path": "/swagger-json/ProductService/swagger/v1/swagger.json" ++ "Path": "/swagger-json/Product/swagger/v1/swagger.json" + }, + "Transforms": [ -+ { "PathRemovePrefix": "/swagger-json/ProductService" } ++ { "PathRemovePrefix": "/swagger-json/Product" } + ] + } }, "Clusters": { ... -+ "ProductService": { ++ "Product": { + "Destinations": { -+ "ProductService": { ++ "Product": { + "Address": "http://localhost:44350/" + } + } @@ -305,7 +305,7 @@ private static void ConfigureSwaggerUI( ### Configuring the UI Services -We should configure the UI application(s) to allow the new microservice to access through the web gateway. To do this, we should add the new service scope to the `ConfigureAuthentication` method in the `ProjectName...Module` class in the `Web` or `Blazor` application. In this example we're gonna edit the *BookstoreWebModule* file. +We should configure the UI application(s) to allow the new microservice to access through the web gateway. To do this, we should add the new microservice scope to the `ConfigureAuthentication` method in the `ProjectName...Module` class in the `Web` or `Blazor` application. In this example we're gonna edit the `BookstoreWebModule` file. ```diff private void ConfigureAuthentication(ServiceConfigurationContext context, IConfiguration configuration) @@ -355,7 +355,7 @@ We should add the new microservice to the solution runner [profile](../../studio ## Docker Configuration for Prometheus -If you want to monitor the new microservice with Prometheus when you debug the solution, you should add the new microservice to the `prometheus.yml` file in the `etc/docker/prometheus` folder. You can copy the configurations from the existing microservices and modify them according to the new microservice. Below is an example of the `prometheus.yml` file for the `ProductService` microservice. +If you want to monitor the new microservice with Prometheus when you debug the solution, you should add the new microservice to the `prometheus.yml` file in the `etc/docker/prometheus` folder. You can copy the configurations from the existing microservices and modify them according to the new microservice. Below is an example of the `prometheus.yml` file for the `Product` microservice. ```diff - job_name: 'authserver' @@ -375,32 +375,32 @@ If you want to monitor the new microservice with Prometheus when you debug the s If you want to deploy the new microservice to Kubernetes, you should create a Helm chart for the new microservice. -First, we need to add the new microservice to the `build-all-images.ps1` script in the `etc/helm` folder. You can copy the configurations from the existing microservices and modify them according to the new microservice. Below is an example of the `build-all-images.ps1` script for the `ProductService` microservice. +First, we need to add the new microservice to the `build-all-images.ps1` script in the `etc/helm` folder. You can copy the configurations from the existing microservices and modify them according to the new microservice. Below is an example of the `build-all-images.ps1` script for the `Product` microservice. ```diff ... ./build-image.ps1 -ProjectPath "../../apps/auth-server/Acme.Bookstore.AuthServer/Acme.Bookstore.AuthServer.csproj" -ImageName bookstore/authserver -+ ./build-image.ps1 -ProjectPath "../../services/product/Acme.Bookstore.ProductService/Acme.Bookstore.ProductService.csproj" -ImageName bookstore/productservice ++ ./build-image.ps1 -ProjectPath "../../services/product/Acme.Bookstore.ProductService/Acme.Bookstore.ProductService.csproj" -ImageName bookstore/product ``` -Then, we need to add the connection string to the `values.projectname-local.yaml` file in the `etc/helm/projectname` folder. Below is an example of the `values.bookstore-local.yaml` file for the `ProductService` microservice. +Then, we need to add the connection string to the `values.projectname-local.yaml` file in the `etc/helm/projectname` folder. Below is an example of the `values.bookstore-local.yaml` file for the `Product` microservice. ```diff global: ... connectionStrings: ... -+ productService: "Server=[RELEASE_NAME]-sqlserver,1433; Database=Bookstore_ProductService; User Id=sa; Password=myPassw@rd; TrustServerCertificate=True" ++ product: "Server=[RELEASE_NAME]-sqlserver,1433; Database=Bookstore_ProductService; User Id=sa; Password=myPassw@rd; TrustServerCertificate=True" ``` -Afterwards, we need to create a new Helm chart for the new microservice. You can copy the configurations from the existing microservices and modify them according to the new microservice. Below is an example of the `productservice` Helm chart for the `ProductService` microservice. +Afterwards, we need to create a new Helm chart for the new microservice. You can copy the configurations from the existing microservices and modify them according to the new microservice. Below is an example of the `product` Helm chart for the `Product` microservice. Product microservice `values.yaml` file. {%{ ```yaml image: - repository: "bookstore/productservice" + repository: "bookstore/product" tag: "latest" pullPolicy: IfNotPresent swagger: @@ -413,7 +413,7 @@ Product microservice `Chart.yaml` file. {%{ ```yaml apiVersion: v2 -name: productservice +name: product version: 1.0.0 appVersion: "1.0" description: Bookstore Product Service @@ -452,7 +452,7 @@ spec: - name: "ConnectionStrings__AbpBlobStoring" value: "{{ .Values.global.connectionStrings.blobStoring | replace "[RELEASE_NAME]" .Release.Name }}" - name: "ConnectionStrings__ProductService" - value: "{{ .Values.global.connectionStrings.productService | replace "[RELEASE_NAME]" .Release.Name }}" + value: "{{ .Values.global.connectionStrings.product | replace "[RELEASE_NAME]" .Release.Name }}" ... ``` }%} @@ -549,7 +549,7 @@ spec: ... - name: "App__CorsOrigins" - value: "...,http://{{ .Release.Name }}-administration" -+ value: "...,http://{{ .Release.Name }}-administration,http://{{ .Release.Name }}-productservice" ++ value: "...,http://{{ .Release.Name }}-administration,http://{{ .Release.Name }}-product" ``` }%} @@ -579,8 +579,8 @@ spec: containerPort: 80 env: ... -+ - name: "ReverseProxy__Clusters__ProductService__Destinations__ProductService__Address" -+ value: "http://{{ .Release.Name }}-productservice" ++ - name: "ReverseProxy__Clusters__Product__Destinations__Product__Address" ++ value: "http://{{ .Release.Name }}-product" ``` }%} @@ -593,11 +593,11 @@ You can customize the microservice template if needed. Add new configurations, d After adding the new microservice to the solution, you can develop the UI for the new microservice. For .NET applications, you can add the microservice *Contracts* package to the UI application(s) to access the services provided by the new microservice. Afterwards, you can use the [generate-proxy](../../cli/index.md#generate-proxy) command to generate the proxy classes for the new microservice. ```bash -abp generate-proxy -t csharp -url http://localhost:44333/ -m productService --without-contracts +abp generate-proxy -t csharp -url http://localhost:44333/ -m product --without-contracts ``` Next, start creating *Pages* and *Components* for the new microservice in the UI application(s). Similarly, if you have an Angular application, you can use the [generate-proxy](../../cli/index.md#generate-proxy) command to generate the proxy classes for the new microservice and start developing the UI. ```bash -abp generate-proxy -t ng -url http://localhost:44333/ -m productService +abp generate-proxy -t ng -url http://localhost:44333/ -m product ``` \ No newline at end of file From 8779c630070190ded20cb1e1a7c7701f4a5abd17 Mon Sep 17 00:00:00 2001 From: ahmetfarukulu Date: Wed, 28 Aug 2024 11:22:00 +0300 Subject: [PATCH 06/55] docs: Update microservice chart properties and metadata --- .../microservice/adding-new-microservices.md | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/docs/en/solution-templates/microservice/adding-new-microservices.md b/docs/en/solution-templates/microservice/adding-new-microservices.md index 7add7d613b..0a9ee2808c 100644 --- a/docs/en/solution-templates/microservice/adding-new-microservices.md +++ b/docs/en/solution-templates/microservice/adding-new-microservices.md @@ -480,14 +480,20 @@ After creating the Helm chart, you can *Refresh Sub Charts* in the ABP Studio. ![kubernetes-refresh-sub-charts](images/kubernetes-refresh-sub-charts.png) -Then, update *Metadata* information right-click the *microservicename* [sub-chart](../../studio/kubernetes.md#subchart), select *Properties* it open *Chart Properties* window. You can edit in the *Metadata* tab. +Then, update *Metadata* information right-click the *microservicename* [sub-chart](../../studio/kubernetes.md#subchart), select *Properties* it open *Chart Properties* window. You should add the following keys in the *Metadata* tab. ![microservice-chart-properties](images/microservice-chart-properties-metadata.png) +- `projectPath`: The path to the microservice host application project. In the bookstore example, this value is `../../services/product/Acme.Bookstore.ProductService/Acme.Bookstore.ProductService.csproj`. +- `imageName`: When we build the Docker image, it uses this value as the Docker image name. We're going to use it in the Helm chart values. +- `projectType`: You can add a Helm chart for Angular and .NET projects, which is why we should explicitly specify the project type. + Add the *Kubernetes Services* in the *Chart Properties* -> *Kubernetes Services* tab. ![microservice-chart-properties-kubernetes-services](images/microservice-chart-properties-kubernetes-services.png) +> This value should be the same as the [solution runner application](./../../studio/running-applications.md#c-application) *Kubernetes service* value. It's necessary for browsing because when we connect to the Kubernetes cluster, we should browse the Kubernetes services instead of using the Launch URL. + Last but not least, we need to configure the helm chart environments for identity, auth-server, and gateway applications. Below is an example of the *Identity* microservice `identity.yaml` file. From cb1b29843f258675a33093e4999b78598cf75489 Mon Sep 17 00:00:00 2001 From: ahmetfarukulu Date: Wed, 28 Aug 2024 11:30:17 +0300 Subject: [PATCH 07/55] docs: Add note about starting Docker-Dependencies for faster startup --- docs/en/get-started/microservice.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/docs/en/get-started/microservice.md b/docs/en/get-started/microservice.md index 9a90be00da..82db8dcc62 100644 --- a/docs/en/get-started/microservice.md +++ b/docs/en/get-started/microservice.md @@ -125,6 +125,8 @@ In the *Solution Runner* section (on the left side) you can see all the runnable > All the leaf items in the *Solution Runner* is called as an *Application* as they are executable applications. +> For a faster start process, first start the *Docker-Dependencies*, then you can start all applications. + As shown in the figure above, the executable applications are grouped into folders like `apps`, `gateways`, `infrastructure`, and `services`. You can start/stop them all, a group (folder) of them, or one by one. Before running the applications, it is good to be sure that all applications are built. To do that, right-click the root item in the *Solution Runner* and select *Build* -> *Build All* action. From 05e04948e609c069bcf421a8c2cf70200d7817db Mon Sep 17 00:00:00 2001 From: sumeyyeKurtulus Date: Thu, 29 Aug 2024 11:52:17 +0300 Subject: [PATCH 08/55] add: `getRequiredPasswordLength` to sustain possible length constraint --- .../core/src/lib/utils/generator-utils.ts | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/npm/ng-packs/packages/core/src/lib/utils/generator-utils.ts b/npm/ng-packs/packages/core/src/lib/utils/generator-utils.ts index 7b95e71a59..4c4dd99628 100644 --- a/npm/ng-packs/packages/core/src/lib/utils/generator-utils.ts +++ b/npm/ng-packs/packages/core/src/lib/utils/generator-utils.ts @@ -1,3 +1,7 @@ +import { Injector } from '@angular/core'; +import { ABP } from '../models'; +import { ConfigStateService } from '../services'; + export function uuid(a?: any): string { return a ? (a ^ ((Math.random() * 16) >> (a / 4))).toString(16) @@ -16,7 +20,11 @@ export function generateHash(value: string): number { return hashed; } -export function generatePassword(length = 8) { +export function generatePassword(injector?: Injector, length = 8) { + if (injector) { + length = getRequiredPasswordLength(injector); + } + length = Math.min(Math.max(4, length), 128); const lowers = 'abcdefghijklmnopqrstuvwxyz'; @@ -39,3 +47,9 @@ export function generatePassword(length = 8) { return password.sort(() => 0.5 - Math.random()).join(''); } + +function getRequiredPasswordLength(injector: Injector) { + const configState = injector.get(ConfigStateService); + const passwordRules: ABP.Dictionary = configState.getSettings('Identity.Password'); + return Number(passwordRules['Abp.Identity.Password.RequiredLength']) || 8; +} From 090b7309f7a6bcd805dd63f2d440813fb399c9a6 Mon Sep 17 00:00:00 2001 From: ahmetfarukulu Date: Thu, 29 Aug 2024 15:39:31 +0300 Subject: [PATCH 09/55] Update productServiceServiceRootUrl to productServiceRootUrl in adding-new-microservices documentation --- .../microservice/adding-new-microservices.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/en/solution-templates/microservice/adding-new-microservices.md b/docs/en/solution-templates/microservice/adding-new-microservices.md index 0a9ee2808c..a1728fe925 100644 --- a/docs/en/solution-templates/microservice/adding-new-microservices.md +++ b/docs/en/solution-templates/microservice/adding-new-microservices.md @@ -142,7 +142,7 @@ private async Task CreateSwaggerClientAsync(string clientId, string[] scopes) ... ... var administrationServiceRootUrl = _configuration["OpenIddict:Resources:AdministrationService:RootUrl"]!.TrimEnd('/'); -+ var productServiceServiceRootUrl = _configuration["OpenIddict:Resources:ProductService:RootUrl"]!.TrimEnd('/'); ++ var productServiceRootUrl = _configuration["OpenIddict:Resources:ProductService:RootUrl"]!.TrimEnd('/'); await CreateOrUpdateApplicationAsync( name: clientId, @@ -160,7 +160,7 @@ private async Task CreateSwaggerClientAsync(string clientId, string[] scopes) $"{authServerRootUrl}/swagger/oauth2-redirect.html", $"{identityServiceRootUrl}/swagger/oauth2-redirect.html", $"{administrationServiceRootUrl}/swagger/oauth2-redirect.html", -+ $"{productServiceServiceRootUrl}/swagger/oauth2-redirect.html" ++ $"{productServiceRootUrl}/swagger/oauth2-redirect.html" } ); } @@ -492,7 +492,7 @@ Add the *Kubernetes Services* in the *Chart Properties* -> *Kubernetes Services* ![microservice-chart-properties-kubernetes-services](images/microservice-chart-properties-kubernetes-services.png) -> This value should be the same as the [solution runner application](./../../studio/running-applications.md#c-application) *Kubernetes service* value. It's necessary for browsing because when we connect to the Kubernetes cluster, we should browse the Kubernetes services instead of using the Launch URL. +> This value should be the same as the [solution runner application](./../../studio/running-applications.md#properties) *Kubernetes service* value. It's necessary for browsing because when we connect to the Kubernetes cluster, we should browse the Kubernetes services instead of using the Launch URL. Last but not least, we need to configure the helm chart environments for identity, auth-server, and gateway applications. @@ -523,7 +523,7 @@ spec: env: ... + - name: "OpenIddict__Resources__ProductService__RootUrl" -+ value: "http://{{ .Release.Name }}-productservice" ++ value: "http://{{ .Release.Name }}-product" ``` }%} From 11f730db6bf210626b629b0ebb0f9e26ec74e329 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Mon, 2 Sep 2024 05:20:14 +0000 Subject: [PATCH 10/55] Optimised images with calibre/image-actions --- .../microservice/images/folder-structure.png | Bin 62271 -> 54734 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/docs/en/solution-templates/microservice/images/folder-structure.png b/docs/en/solution-templates/microservice/images/folder-structure.png index 0342aebdd7b21f4aa5f0ea735e1ef88c39e3334a..926bfaa3d5a98af81ba6ff7b5172a1f963cfb6a9 100644 GIT binary patch literal 54734 zcmb@tbyS;8{Pu}E!9BRUOMpU=;toZMLy_VHm*Nm84#kQUr!7!uafjf=DXzg?i`%Bp z^ZfSRKlbd|_w1e|=bqd%w@oH9bA9Ie#%O6M;$l%^As`^&Dl5tBARr(?5D*a6G0@<9 zz=^$;@C~M$l92}j0s#8=gV^s{{uTj&4nbL7M$dQQu+2`7bUyDy`sa-4b(NR-lCZ~Y zE@&i`5f2ZvgHwp2O)QU-$ydO@_TlsA=;#mzC6VNhOdv%9oJ{M*<@)+EDCm9n^C+gr zcF%Fs>T_ux1Ol&VYb(mdwJyvDfB6YbKknwC`VSx~KBc;tooTS90NA{Cg zDnHThVq4o3f0YU;6v1O>w4^!nRYX*j&Wk`ir4pUSmX;3p_TbM$jP07fk~EW3Q_0E6 zU60xO5t~VLN&w6hxfD68^g{h_Aa+kr&rM2eFj!y{44TFrq?bto5;8%UAU#e_AuT>9 zQStHdF4?iM*eNL~Vn(0E89+=JDRN<(Nt;QTui|0~+S(p#k7#IUqGMtT{;!#Ie@oGU zn3Mp@0L;IMzsY~D8}?5Y{67Bf!}zz%|Cs^h_m!mL`e2ArqQ__I&?A7t8{54g+{O2# zv8B3JQ6Ct+Uca|nyijDQBH~nx5S2R z+P9@jRTM9K0ir2TvVj6M=a{8WUCKwwas&^1at|jpzy-RxdUKz)?2Gl!NzrRD7m)9 zjmVTfN1iJK%*_GJOpu@QfET2t>t+{-GqYN6Z`x9!Oa_h>gDwiwE6hn}r33Vu(Vxrp zgzD>xDl4&PvlF^U<-4~M2lf=Up45nEL<=h&@qH)(U5pm&Dqr^}W+uWHE1TSeraUJZ z>NqD=4#rm|5}uB+qp{rz`(*K5zW~2dKa6|*r2f^b_VCta;H$IswRF)XgGNbJM1=Cj z4AFAq#SNy5snsI3w+sg<^tTW40$R&ldv2q+FP6;qhj;z8IGWv;6XHN+u>=W+Zs0D_K5^uQ|KlN0mkBeKgluAPjtH`~KiF0U zJ9M9AdU`r+jsF(Lf4^L|X8Sg@ctg1H7RK7xJz6Q{OaUZy>A7r|oQuy*og*i}ESs2K z3>{4X0Aq0>zK1fbAEARDs6)+YjjLuJrNA9@o}!e^)A%hn7ai)mp{q{$Vs$bQW0@T> zWah3@^bEU}0+by-HpvuK zFV-!8_FJE~s$!smCr8-`8B^4=B4R9EHg10qW^qE%h+=aH!*|@{CUj#xnPg~>xBcw3dVA|~#`|X-< zJ10F_cJxah(N0$u;{r1Fs|U0%f;)aWzt>t42#dd{_{^6Vjx|%tu$}3+pclyOuW=HZ zoOyiIU^iNTQWZ)sw!rt{sq_s{)dVY2WJK7C%;kEgQ{Ods>h^56eJ)N*QEotQMNHR& zhI9MP4cc>T!pm(r zCbS84MSRyH;E=QAgk&Hhf!cVFiglxJmAoHo0L9@!f13mu!JfT{I$%UrVElC|fR{{S zf5nliuXPP6wX0_ll;F5VHxsuyz{o$p1@nhs}Mwn!+E(6poz zH946pRr*5B1bWbb4oOzLSou(4BUPdP6+b%|acBK~Q}gA@V)RU*Sot4PnM(G<-Wrk% zi=SddxjT5>988GIT6mo4!&sQWcTvsFUfLW3y3SS ztg8{o(^n$lg)vcOoAwC=d$1sy;RBgu`_tr7bfrRSW;U%FFYzmI!nC}sQNBII+2wfL zyaAVc_6)92H6~F>d~toVX%!uPGqpR0Sp&H!(K-~mB**;hWS=P4d;4$mq|C`61JWR3u+ z%2%TYrjN}9A$1*TK_Xg4yfVg9%7#=Ot?C5Qc|fcP!lPP1C2+y_vt==r<7@B>(A(>@ z0Gu~1j%$v>H6iNn+A&5(>@4j#a!F>dbJOLJ3kZ$D*{5gWR5`#8#X$q#EBiw?Unr?) zDA=5|4MK;$GeWHKLT(q`s#?ioT6`?}6NGZ42rwC&_b}EKGob0ljBIn#-sS>?cx!KE zM7%5VevLd+WovGdd67e@OHBN)Vvzor&I}cVBGG>#+5M)}pCF7qCubVk8}MPmT|ilP zCPB9N_;lu8ekOZ}o(QRgv7S~e^y>%NLo1t7pmVM=1blx?Q=wD_3vO0pG*x*QJVG1tPL10jhIB@*FT~U(G0h@%(%$~r z3_+5hKW{#U3C_P;IQWTtui}_Y)skskE5ZYz**<35Zx2t#_G^AD%oq*TVo+3)O*YHd z4hffdzp{964|v35mmHWbgz+BNw?(_stIYT35&fO z{JqVmujDD(G%y}l!tO;NQ_xMGzO8`oz(~lUt6G)AKa3OUIYrQu$PGbaAFizQx-N;2 z7mnL1WWOJnlltVTT1V_4h&>RoASG8gxhZH6F3RG>0IH~P_S_l~dSFeW>>iplyhd1y zEv~K>*dlFmCtwN1FD122azst)CxZS~F)poR-n@GxIWWLcAFg}1orFcq_meMDt8-)f zrBUWjG830tSp-HwRW_zit+Fvl`lJr(t3CLR_l^8qhR>z<7>&`n-@IFzYUtzCxGf5a zlY#B$!Ah26xQv3C9IV$DR|g*a;z@X9XY$1{RQfzCsI01-N5Xuwb*RXdbnRdNX}2GW z6{_pA8l`5^OYtx2-U%@K2Vv)5uf+ zUAa2JDn*T<+U4mBzIrQjHsTZ@A&Lw>{Jl#3SC+t42L@ci{JVwgkbl1a)kXhi{eLR5 zf(kOBejBpLD%}|_h}IaqfG``2Tg@NAk^ax+tn`O0m0Jng$T{((mq5mAQ{yqg7MvZnOmw_0xIBLHE6Lk)JXdgog4yYwr zm70%rmDcENpgrmlrFF4$>J`Nkg=M2_-)ui|)Nc9*?rhv0Nk!&l@+qyPe5k#Qel%d?VNUif@`Mh%2nX+nY`{diWeEjcH2_4%>6!{fqkCnhdeyJUqOAI z+|l#&kXIC(r_Vvt2oL*6r@tK54pi25SVMU|LdFsiq+g&&N+SfO<4CF^j1*Gz_iD*|^{Z=uY?yok&UJ;kD?}6AV?0d?PWB-|qfENiL%% zSI(#K)*Bg3LSkZmKC!vbH&Zo&FDcV%_DsOjZLxp1`?Rj5ar&d!Q7C7MA^nv-#lpN) zTZVr!*%oq%Rw~PDF}hn%WP`qOd!qW5`InN+9WM(z3m>=0*Au272_EQcpOfsTn5!>L zV$P3cs^Zd{8E!r~PRet5II-I+N-wS~Plp#is)o>xqPR1xS zV+f^H#^c~R3hblJ)bnpZNqj1jsx%GM^pcsi-z!?tH)wpG#_`A5BZfzxx36#)0&$l8 zvc*8vxbd=TjkLr$7H?n{M%V%jrSc!ukhB6e*z>NpWzLX5p2o@1g0Cxm|NH^%6SlIH z+*U}(eZ8XzJU;||5S3_el^P){xIFfdbXAXh$q6ZS39Z)pA(V$;<_K6jR+7qDx%S@r ziC84MKw!)7*D^c+P=z9Yw(`2z1`kAloyDVKXWCYF3I28+<*bk_&Me|>hZ4Tj%yzBlvU5Y2yb2@G=9VFbP+z3Jy3Qt(%ANWt0@&9% zwDcy`))6&Q1l&m!ZDIQktwakA+fm(&Q&9Lo@{$Iyy&&LhDD?#&3tJTUt}!urL#Db; z0HQ<}6%)zKRCrb%g74tLNj@astW;Exm3BP$6x+9zgjXXwGOCIi$|Fmce}h}Uope?X zBlt;1laJRP^pSg=tr?pkD^Pu9Y|cgE>(Dh+UPRbxBl;napaPRTIC;ZTLxqS37#|gu zR#R7vnf;=_$VNkK!iOZAbU|GToyGqyna+5X*i-*7N{y+jkQ%iy$UF8JNRkk`OI4{@ zo;h|$+SSu^!DN_hm~cG276V4*aN@R?wZ00%5$;d|Y#HVn#cyQqSn0YDef2r`RX|Xv zy5Me+M(h0=w@8T)}JuQq7 zMTSgrTYmOo3!ThTYT1?ko+M@1l<5NfCOJ#ggc_D8AG-;5;6TLrgaA&)ecO+RkliA& zxfSSuq2~63OJ58vOS8SzfxE+FbT`4fDR0Z ze`x^yA~|2yx4YeTD7_76PWCyzCVQt?gASl$7;c1!J4Q+L5#FB*3>ww=vl%$?mW*Z z4X#IN+P_N#zNBeyFh=t;2vQ|=EW95IA17>aL{Dy-(7ZmKwyY%_nZ2v-R4!aBjpmR! z$!gPz#pSb`BKXbp3e1~Q9~!gUY!Z&(v8Osl&-R7Vj;NcCkfWNph2S!#ifE72%$|A= zDq{Ea)(@XE*|U_y2%D7wQjhKP`F6={*vBZctCUO;AUsel(t^0-6EKow8-27T=MNr` z7diqeWT#jby0PHP!n{iC$sh$_PYnpQ1dqL@^BAK!Txp{! zlMt`*`9jMt6KN~#brF$3J|+tJV&mYR-? zM^|Lbq3ldY%AMzQtfnEMbSp1F!-fLT)@~G*NQo?b_-KhJwK7obMr}=!+PxL$w$^2Z zli}C)Bd}%(U!Vzy6-i%+#RF5G4I=jd-(X0$8KR&wszbOxesjMX(j+)JK>)ErIuti} zjE_r&EkxT^`#b|5*KmNi70JOHprQItvYj+ENTI}5{0E(pDu?VHp;F7$Kl-t^w3u{@ zwuj#L+%4>jAHN!;7960bJPk6dWb*fJ54^!>n%O;2zC5DkaTGjO| zwEqo1Xv9u1N>K&IxUMk*^5&VM|0waym{G3T^Z*LtO+`3O#nlX{#X? z)5kP=e?ccO>*K?xuu_ykpOtP^1N1ZK=u=_4*X^M=y|z*>RyzC;mQKTURu_>qHFRPG z@Jkwa%_oxL0hhlp6Fs3C|DU>D?jL|dah2L`mgLY3w504tG?A}H_@P!{-+LJ2QfqgR zXv;CQ%?rbaFBg8iZM3v#+`1`tqd1Y_&F6R3MA^Bhf&k8Ipz+uH0M}l8!tQy&mt@Nc zFFh`d45^eaHXe~4j;s@ZBH-$Ri)ZtKSwqcg%j|xh@0Df`++x2j_UBmZ2TXuQA&C+PSMzFvKnHjT9*g>1bYd^AF?vF%k$VJOe{EfoNLhy zcqo=Np`q@SMQ4H7Rc-WKMT*}tMf(^4rpWBKNu;P#yT$r8{USfnZ(^`Ss%8>L@v-ON zEnT7?4|kpJ8OV>#se4{bkZ_&pxd%h+E@AVX!LI?r!PyHoJ+ii)qmdJqW4b8r~1n#)@$0z2kU8T|E;Nn_t4yjAt?$X~$P&PuIu2~_n!;3lb zko>?fstn=&W&wXHP3dOHXtVAqUw-rWD0QU4F`Z*P_h3ODP-LYM@_RbL%`>Oda5TUg zL_9D(;NswC4LYQCcp1IgQ*(6WL`ReiBs@t5rUP@z(z?k<@Xv2rWnD1*vh=aY5U<0t z$kF)t{~)^rAU7=W>sblQW$84I;z5CS9;ZiF>s@8g(^^8gifUPnYgYecD7vrz7h*G& z5hMbSG44j+YXPLg=>-tPyg-CLBp`MNyC>Q<_cVOc+2r>4ScE7)lnwam9yXm6O+07h zkII;p*IZj$WjA1afGc&tRI#+-wj zyWe$@n$Yk>&EmvD4>Nah|K!UirLk~`xh~V^EH)4a=3x-L6DF@vjp*eJD&qmOJ+?DI z0`*JD!UB)V-lyAvH^(um%tYQatwDP{xSJKxYewU@ff~agJxecl+R>6%Kc4)Zr1^nM zNAx>wDga!3-8qPL4NS}7+6!kPH0moblcUEU%=T)a%fY)sO{~0_Zw=eBC6M;`h41HF z5BtdBJDLjYACug&;IrQ*f+=$AZOPD{X{-n1GVY*RXUMAe{JLna$PIjuc&db=JvS^< zJ~xb@b-2{^eK)Q+{bq~X;Z)l*i%WXQ!k1H^MwQd}s9O8BDzvAQ+?_eR@%fa-#bjT$ zcg;GmG#0qhJJPOU(&|Yf>blZ1WxgyQR>tk4`)>0TaTNHq%PZac;7Z-3H3`|^OEhQ4 z&7|;Bt5@nTpMX=LK(&u+@m|HTL}#}@6&vSGQSDTjD@f%xj-lv{UI!v~oLCe0e;kj( zh^4rY>S4z}6PpBF%qrv^x={lq!-40U^>g4g;^URJv7`G%9nJQxN+-Bc4 zIp+L*U=>;McJ5a$KjBb|`}3RC;=qv+#kDgyoD1Mq@+$yxBzry)iZ^*U%Gr5gb|X=j zVQx8@Cw0TIoz6SXX7RrLFWA!*s&pGvtvUc3mSZK*d&K1mm;S2vcrASwT+>S*BbBjr za4M@gzTmVWFWWn}hsf2SYmenIZeZ)^wR29)@UKLnCI9UGM5PR0^jx6=0gVX;c7jEH zTQdUpW$!<)@e^z$zLyGf-l)I0tiKS(Fl>I=Iji2B{tlAXz;0u*QX}-31}Ek;p;fJC zF#0MU6Q1jamkqqal2-b`LkcG=(~z>@j^WcTOP>6v z_ruxrCpRX1kKnSUpOVWj?ovGX##Mv6`0Yl^^7F6#y}AP2KLyc#0bSwPXzaQArj9z- zb2+WGor|j-Ww4t5A`4vmBr0c|vxMf$+X_JQcXp}((gdGh=6s2Fr~+{-(61na0;!Tm z_;&syA(+b(QFW}>NAEdOAU%%i`=@{}J;vSp!B2LL&%ZiapPvml{weO70pyUrK_GkXf9^DYI-?B@zCmB- zhPfX42cEA!Q8{Hb>LUMh&2{utx!C-N2qFT)9}TIX=bdM*|1uz{a^Hd<4O002Lo`YN zyL2c&1;P7M#4|?zsmsr3YJcywCy@nW_I%E(XDQ8KD}9Uk7fZo+|0PrZd#RHw;IZ)q z;?u%4;*-ZX!YY7#Epb^gM|n+#f$XtS>VLcdg+t8$LL{r1K}&Zy-LcfUX$Yc8m6v*& z{ACw5&_6FJ`3!2@g`>0#%BYt62tGvhW6xOSnoRt5z5+bq+oXesbos(Aj?S1Oi zfc%WwPowDMgv{zOk3BZFB7Z*Atd}Wnk?<|;SW=$Q!*_pw6w`|S`O#GuOyqk%n)Tbo zgnJABm)hFi9tK4sdPikb<3c79oPZdV^YtYNzTb7N>O^CW%{X?XYD6n~e_Nf;zf9F@ z@ZEZhP__9v22P)tjT}SG^^nZ-;SwnY(~|%6HO(n%Dm1?oc??g0UTp#c_7g<|>x_x? z<}Fp!7>OKrwAf7T4b@L{^D>>z3jE{i@u|(Zx5+5Vx39vs1CB#_b z5J5*e`>FU$NFEkg#YL+K3^WvFnS5I|-Q2;f3g=;+tRSZ7+3uccTo|qk!A$&_YZM+})w;mHxG^;oP`&D$JefhC3`*QZ>ha_360^8~E zNoIL0)A9$41wN9dpYrKDGNc~@P4qVl_IkvXA|&S`j{0`f2z@byer(}alNeA<6)6et#OhjwrFM}xs%vRk=dju0a=XnK z)kZHb@&@U^u=R|g0)(%fZ%u;SXf=&l;InJ|{X52u5ZuO~@1z%zCmq0q6??_Z-pwOP z8d`?rq!u$*9*7#-Y-y3G-Jau-=3j8V|I2b4JW_p@NgR|{kk*a-hF$HgPGhVx3{Xj| z;Gq-U?-+{5$ZrCBe#5#)?S(--o3}wmYu?i|g=)BKIVx_8N&1Rb-p_`aLz6nPqv^xq ztRxd@KVCn*e?PtY!h|o|mHZ>d_J_GRmr_n?Ovl(wL^ExU!PD4u7)du+& z;lK}Tv~^@Q3-2{pxYj3k}B(Uz~ajU;`G8zJ%9cjFqo3<=xFf z>Q6(dtoUnID)62^&hH?0JcU9)9k8rVR>)yT^>M1F56@1KhrZiqo#w}aS?E=vZ~0vN zH?Tv^uYL{Ad?_(uFvS6qnH1A5eoD+t3U|_nV#AtiE}m`fsgf9{?avnu=rdXB6nR^! zHCGn6pHf&Eg01S1vEF27HoEj$OvP?$q3qoL!auYMt((Uc>oA5}P);#Sais$|op@;{ zV}V$(I!{g=p9tB4Wdqw6WUu9p#D2WPbNQ_~04t`qTb+grUYwv0^Xw2TK?$bgc@%8K z;2%JNcb<65QHMFe&9~H@l8%?P0wo@zg@pxp*JzH(9`<+@>YGd6{k_I+f5?CJpW7B! zLbk9s$H#}!?-SyVe2CqDHEbN>z5sp9w6fNrG*B4r8mT6>U(oOD)2lFQA$_-(HAf1= zrN6}Mk>G?VrVFr37E;S<*f2RpCFLL6>NKV*!@OA{jkAbdP^8}U_qdUqMq_S4-QWbO zeMb4iTa}38gU08@4VAD+Z%kyC$b zX<$6kT;NxyWIsAI{cRSlZ*t?OhaPV$+(Qg)qhC`zHtG{1S~HT!BN0f78mzfoyU)FO zW8pVR5jgFIuM^6DRln3feSx_Iy76`G54*jB52f__bOjYe_uC7a3FFw0Zs+HG^}N-Y zG))c5A;+A{7`53+^sn?V{l^X?-&Dl>!PTP)$;x8yzRr^|zaS99G84GgWP(P8@c@lC z@CpX--EWWB5+_oXv3Y9~{#a&Tyaf?c8g2N>Vb?EG95AROE~;py)nn9;Ci5mk-QNlh zz{H|-H?_i;V|sUa5+ODEY6jHhvVLLcCJ)vuaH|Awh>9~3k*aY|Zh3byv&aI*-aR*D z*45j(lJ$O>#k!o{vfE}|67T&BT}axk*6oR$!2!GPTy{637#i6aZG@~)Q~aqs7T1SS zh36PyEp`%<$7Xcem%*9@4~DlKX;{W8QCh(t+d8XT;VaPK<+v4?Mg^9)&3%@&^Et)R z^KP;}0M)Q@gLvU$2C8HedZ~CYo=k#CAHd?w-jb;JqHOK0HCmIr{3G%i;FqPsE?h)w z5(&u-z)1=}`%+Ia-v?!w!y1%C4Tmw4{DhE=hRaD5ff#q#if=p@bJgt&UuTrY;7&h=rjg+yF1X5$ZSkPY zQ4X^~ys-=2xpwHTPF52inVAO?7m*~2vc_a=o#IFODfzU#5fW?(Sw2L~X^)5gs4Ruk z5sxwa!xzhuU*!%m5wIGaudoTn$Mpetx~RiIgP<|67)7ED#I1k>om7P%ST;~#=n_#* zeJ|W0Z6i(Cz!L`JN`hwlD7uU5-nXP$!7K}Ni~w6M11Bw!wIuqVS{=yruFSj5g1h3N zLofRKAZbV1;~tpFD@43pglU{Z#s@W>dS6%}U?;1i<~=2`>$tUZ4kYdO8|eywc&K|p z8Rl`ij{2u-ZZl>QOx8|DdgI-C&mAU#CU$Bnn9y+?g|E=cE%K+47Y&-bHae7+2X_4V~) zbC;LH;9cTa&F4R?59^#qe(%pb9-gG1LLTV@+0?n+{r@!FoL`K=?Ump@dOEoK)4Ma= zgd_&Lfv3nmoL27#JDyDq0ilYxoA^TD_QMs`_{b)omL?!g4G^HgD#L9Q(ahOqxcRO$ zR;`M6x9{vS6ki>L9?FN3Hp{y)T;-O@R!dkG4@`F!oJy5*Wr4KK?f2}Q8;QBd?Bo)> zkIz7>UR*^XOvcc!a&)T!(JH9ysctg{i-IZdb+h;~T>;e3(*}%$O$6Q(9Iudf4Pb1Xzm~i?Wh{ok<-DA> z=tB5Q)~%kpq_0UPel#`d4lh7L(9kIQkG;*Kk~`zfG)0;;8w(^yXWv)4oxNX>%?W}e zJ*Zjhd2=T9G1pB$LjPDC;hzKGAJU`NZm&1&zj5d{x~$fM_*f$w573vcx=z_!PFNr; z1-k)#JiG%o`_b;ULjQ}GC z7B};{75R2I>#J4-9~J^M-Td#7T*yP=lPxa-xkU`2B}#d4<7}MA*9Zs4k2ATwNF{$z zZ88~(-jO@*ym4R@)8Ud>iElkZ#D61iZBa{YR!@ZIw)zq6H+5Wu-e+3=KML~$uQr_l zp9o6`=FzamW!RX zKW;-X@HnfrhA+pT!~;o7eC-({H!iR)AxRkyC2okR-E=IG9-$KLo!sd=rPyd#!{+z$ zFQ6aXJA?_W=o7QYkKVtO$ zs{0D$96dXjOE$^|R>{ToS{&dW=);#E(%83lN6h(;E`*xvk2_H+M5tB11TiVbOlPIB zDI1~98wOYJV%&Yzr6t<|NcN~}Wj?|-didwJ{6wILm4z>gG1hP^a&sYhT?6BF8#=;d~j9Z=qE=iB&{v^V-tYms5|49Dgic{rhEF40zTc`24Y!K=tdP>Q1ES# z?vqp19K+rH2v_pR#DZ)XQ4>{&?ze%R$` zg_bi4-x!MSXvNj}nTk>G6vY3zV>lb2blJ_{O!9Tzb;iYX#m+ z65DI&7P5Qc$O#Eh0?609gGlyu_2z&K?;lfze?ZTML~yR_EqW!X$fMKd{A)>}P$-bu zSU9(QWJs=@cd^J=#+I^?V5HK>jrO@cE0=e)j+DVZ(D2p>TjQ;PRWxTA;GphXUjN+d zx#-t4`fJK+)%WtkJT>pdRS0YN%Sf^oYh5EttHexKBVnWB!#;xHq20uTz46T#L*~*f zo#{#yPLs~xMvR{OJVKPCpm0D3@O-2 z)E$PLX;@r~xiOz=TJ7+ly3#}Thatn=0;cmdp`UK!2qPr~uzsvL7Kb>ldF!c3K&&y+ z9j-`J$>CN-OPn%Rk*2=lN^+xY*3MSX5-9J`<%` zW2k7_T8@4k_)?I@nXq#hNu4UXb1L=`m=H$L@L4e$)g9FAKeV(f1wECf<>|^!A`EFI9O6yA);NY00 z4h{$@U5;cBvi17)}}pgwS;|34m^e_{dtU!+z*pr!kcCo=uV3uz*0 z!o{b({Qqn^z5(zi+47%xXB|E5FEK(1zUvQWA_%~~)r{i(@3PXxKovN3ntr|rUN=su zX-LR^e(dn@!2g0s^bfiUAB2%xKi@V)C^MXS(_3k6F#p9~>*yK(4?dwUg#S8*qEA!- zx!kzb!ovvssyNm01Z{H&E+Tq0e@`rf|5FEWVI|!uicGt z)#RUNk2Ye3ypq5@&5%NV_yU1QdtaQ=ng%}97$kJWiEWH!yg1t-z0fnN&cI!f9*rX_(8uah?f^^a-9(EdE zid#1$RXsgb^OH{1(b+i$AajtpPeb4vnVy8BMQ$NxTzEeq( z8!lAebQH;D)Idsz>g(7&2K*kb9vi5(kcbHQZC~U|fqGM`usKF%`*9cAvUV}j(y1YQ zMz%Y;eV(`@-B9j4l{O)Y?o^G>1(sag=%Ea-xE+f+C+WqqPzi;Jr!B4B63pIFCEi(J zhma$>8WYjGi}epeJKhCoE&4aIVsi88GG}7>4MaLMYbBQ!^>k?H`U_)$K?Lkd7(WAT zOq*XF%Bf!|occ)~yE4X-h=I(4ncwlfR$h4)*=i);+BsmU%dTKk%&a*o=^d;lI_Liv zdO+r>K059;(;j}?WtFot_?C#fOm4td(kQv41sE_7I;vYyfYm>%^~8c<}AR*R64 zXtu|=GqU7d6h`VO$Dei~xN*x3j3B_1*2&(YPn;J341rB# z2DHIZ%_!docWjTM(iR2WuT#ggTIbKUE(asTJDvsqI&4C|C(GsI?qO70d$FZkzdARP zbec!MyKoqgC=C$p>gG)Y89j3qKg4a>)|_;m2E5DrNcMWU^Qx@`siQ-Mk4dVHG~UcqBV zS+S!V1Zx*8CuLfY!a@*W3B+F2KAx}y(HIcV{eOeBT zo@kPo45{D7g9gmMJ7I=-rx!LnaaA?6DFI3heG0LiZv)(FZSjRuH??9ihqU$VP82M6 z)QQ{l09zR9m2#R>eoL;INpkOd@;KcuUC`6BhS5Mya2gbQeOm>d^KklK1PGRFqlS|R z2Lj#2e7Wvgf`Je7bEob|)~u=BhJE@hk=dEV3W&5-Ru!FYy-Qg;E}4p-H&%!wgC5Ao zj?KEx5sY10HtMH*ugVGLjdo7gp#8q*51cq}M<6O+2OGY@07D}EMNXRp8P}<-wAS}X zB-i7~Y;gp^#{emtMOx`6_B)RZU1YlGhLFe>4!590Ub3tyS`o99>8PoI49$Efvq{9l zgiJ&;m4^KKOh)0(AG7jaGz^d%r6Oqn+{?|6qc~zO%^(?X<_|d5?kyiPLyggjDz9~@ zEkoa*^d((^8%KKe6`wv{Bw0IZ5DnEEYRW(6gikCPM5*UF^3DB$`@3b>(q9gre;;w_ zyj?caoh-)3jH_-7RMG@wA(Z9xYK_oj+F$>~i0)n+P$%ySqC+K3}YhX_aFNL1jQBmM^+uQTsK+;&-yLDX^B$eYysKnKVdj zc`~N`3DM+8BGN)|q&7OfmywNU_?50IdIG$=Q-cfj;~^L!ON6xtRu-|;>R7SccUz3x zDPNWd_fFQuOkx)}& zU$5hJJW^6Pn$o`&En1pEPn!*nA3~9KNpZJYoW0psq2JDO5O=?xW^V+UVDrkMc5i$; zt#*$Up8E^+qs%8%>Q$&9?Z}M~c);4RBvQ z;`al{@gQ1MS4SvQighGH)I%m>saec9oU7k14`AI^(8z$g@JRzuFn`;apK3#|MeKK3|Ur*Rcarqpg5HLNT(DHD_>?7mZ@28v(A zzv64&8Utt~{i4P??kI!re-Io8#sh;c&-{EbSgvpfni8@v*>nCd*T3i+v}s>U#51Q@ z{Cu{eekdZUFkZTGvp$Sn1Bn^`IlH_VC4phf4Hf z%%y}Ds6wO7t-ezLcChjDW}-(g*sJkREw^vp|0j{=qE%tM zT2$w*k*dR)6&HlDt#@35eIISfW*UF4zVKe2=7^s6%G3s^BWe2_@uZ}aL&wMQqx4tA zrhKUP3c?HqU`TrAN3W`XI#|I{x`~@cxTEX&CR62f55G~%ziQo)7fLya)h!Yg2Jbdf zFF)3uy7Nr}S6QR71zS4v24PtT1BtkP8zj>xXIF!kcd|!Vn>Bus60BpKfvpMrA`z`Q zF_vPdAu*eesA@RKp)DT#f&Nhmny`?`gAQ49cbwng89(%j?wv%|&C_3rL$I&XiA?t# zE~3DYPpMEvHmu8u!2(0)_^A8CC?U~Fjo+i4gXjK%-ruPf^@j_RUdTMKWmac&1PayV z_Hl?#|MARX2jn_-bs=mG-%iK61%pqz0|mwQ^x_J7Yi3S z8Hn|?4(5|$8hW7|k$tOiue$7!Goh2y^A~m?G+|K?fWz$67sJpd0!-D4MIWrXX+Mmg zxrS|DuS`N=EouU~)&x{kv29;oHNJ16marD-GJAYKL{F=)=Ibimnh^GOq(3AJc%23aU?MuDO(qNSY!O#Y#Hf(Augy;ik- z7~`GrWpth1!C(OeKnSORYsPCE1mQU&Zwf#~1rha2HM)`kD92pGl@r$k8h9~B>4k}Z2hxDk{i!1d8;|KB*^T~ z%pTU~BY;oqKh16q#Ek`kzy~C5NCsFobMA^*T>{CIXfeK`+xU;ee?1BC}k2AF7;nivc5kr$V@mZ`%9d8)R+-r}l zdnO#sS|rm3f4+W8D^z!TZ@hhgg6vn(bqg4ELhSWI^^p9RfGl9*n>%^xZu^U#Zq$3f ziCwmp?#&bkXabd-f+uwBqX&^PuBEdhx`YI75O#xg@rBS*&LJJq`+V>~xZXP)sy1ux zXtl1R8Q`3e@k_2uj>!uxk4GuO@JJ@e2AHk7uWN=%jOOSv3R|aGY{{3zczga}q0;0i zF{<9fO&}d!*@VWbEfdDg6e`PqVx}9xJ5>sRS5oEsdtnXBf5;gBb%a!iQ9ayl6Fyw( zlRx=e6Fh;f>7N9|^9iD*&9foW=4a4+-g~~*#zf2KcXK4cl;9p(-i0Em_oayz5{zy4 zJmSBms{Jn=^zee?q=TgBA2!)1kRNP5iJh!@avqfu;JS2ky35*xv-|g?Tljj|3xOkIGD3_aV)Ju+FR!!gK$75N@5a-N) zTWi29LqCzYS&nZEiW}`#U%JLnchWEVvd5&)mDqXLFmv``~YCg7H8BJ3w#r)Y( zC}81MIx~!K?&ATf%|$R1a8`>JAr&Rk?2;Dy{`7dq9X(w;!K^$mXf{;m_|GpTMSX2!CLo4XkL^%CBU8uu-J{vR(ucK=rH#>QvUy@BwdVFHgjo4b3l_BGBc6q$$j zFga&SJYH8DF&fFqoKhI`F7rTKk z$J3lECnf*fBB26Jb3YSf(HR(Zc`Sg$pwZG&-^Vd{7LF2Ti28+odgP@*U|W1guXNe8 zyLu-+-OsH2+V371BDgA@q<}9Gb@;3Y|6Y^p-5(j52wYHX=mirsN*L}I8kJtLV9CVEb1IEVLFALj_SRsYS827E2PCWD>Oz@;B4>$Zp**cVo^r9d zYeD|(&FX8W=!Q3dU?tm69_3@d;ekW{2xhoD<9}FzQ<5BwIYzS5O?OhuOSVsE!I=NV z!i3SS$o>BtuJgYY^aI_iFt-oU9D5(KBaG&2<{Z*bf);ILg+TL~=U>Eems-C_yK$tY?KoLu6v=^1%UGY*a3uAwIby8AdkO?RV<}UVe=)$dG636~d~Fqu z0D?r=KK^S=K&x6ZwF z>sH+_RDbBIP3_)m?KQ_7<2P-24g>cSINx$29S$<}hxAF;T)X7E>tRhBE2e?BLnXEe z8#p~HxJ_=r=CVawgahi@z7067%MObZs_Cz_Xc}DwqJXvmq$(4uqlpvFP&_!Bt+dUw zc@y(5qyl|)e6^dOJ-HPmVQC$QPuBS4H(TOV*lm^MJ)F3~MF~)F%We%facTa*h#8)( ztGlTW>&jY~vM#`XY}dhWX;ksO4bp>tv?9@;;?4*$$W6Qcops002e*ke-c?tUIO1(& z(h7_Q?|tUw1)j8K7R+Zwa;q6XFeiFX&%s|4}o1qf5|L44pF2>)y&L0HauFVcY znN&RT2{|LiZ(VrrLOzf%JUaia|JJ{;bo8gQgKJMmW6XPPr`afIx)ND|?^{Z>Z&`Xm zLqt?8rL6U($s+1J{QJ|X<2h-7KP`I9lwsX#f}@|(cUiJwsaWANtMq%Ybib(*cyVzA zjXnZ(gM3H2PSv7iHl|l;=);}Hb-8x?TUk=6ug0pzv_pVk31&l&mi%$Q>es`}7(99P z*X)Q9#vSH?hRyUiR!{m=q__%IpzBQQ_rDn<2Y1cM1HTI@pSAFvggEZCijZNjJl*c? zJ5AHNE6QEOvWUsg(F%E71AEiS3?}HLa}J>Y&FM(HX0eld1?-$bo2XIT%9A>52nL{g z(XPQd3LfDq+8usbNO*^ft&Kp=TyT0!Zs1Hsttf2yI~KFSLOLn`*N_g(Ibot_ZY%;&v+MuM(|@Egq993Rb020c2$uw&yZE~G}Lb!=cB?)zro9U82$YF|Gi#O^M{ za46iu^WfRgcBz;NJCabWCeTNn{4&}5Z7{fHb?*C}wOPf*jIH^l2y+7eI@&O?y_U6W zv$pgRY&PO zkjv8IitBM(#hTa6Zy&z3haKM{rOZt#GKsaSwc4wje)BIg<%_k-us_+YHx&^J=lmK? z-)k`u&Gf32M)Y-EW02#&%~$Q#@0uRcjF0`9=Uq0RzSuQCPgLi6&CZoD8JXFm ztPN29Y2L#QiSM$OMvY}CIGvJ+A|n6XbNY%Vs>ATRHiOoS{7 z^#UCB$d6_Ea-aBhR3Nz*C~8s4J7q-*}2!I;w9h(?a;3c`hJ*B4GCS?Crr;6`E9rY zWyd7Q^bC@+L<15jIMGPhr@jXL#J0*Uq75Fg6lT;djVEcw(5tuYy^DFD5ryKPQm+8O zc(UJ_GzBWI^;;7{Mh;QIe(uV&khHk}_{LHtVQ5 zdc93o=)$t2fLY*Dk@D01PtwS^#IBrb4Vm#>Kcn!ZIn)~Bsela>QQ^Z(CN|ven*5>{ zZ-xN3RhVw&y_Uu$P{fb^?c`VwjM7yVh zfjf`8mm`oZ@a}!XqACWH@E}YOqk3CS9JC!iZhF9myoNR2~`o4ew^NB7rdo)2#Lb;9gu}0rQ@mH`p0)6<#x34bm)sJ zsPmVNObMaZx4qzpl3v7TkJ*fdjbrZcmh8M3EvTp>n6n_ zyZQ7s&BaNu2-{_p*-3mne&3+S_(^?YoVT~6?|p{yxrxlaFFHt_%BicjoCCPB1()kx zb1p>#0gGhJ78x0T$DL3T;C8$P1596AG&@iz5^}}GciKNPhuVttl$>e}8quejJwWT} zeG{1`de8dI-lp!ce3c;P)azGC-O3T!8TS=^XREk=_+k5OY}(ii)<2((0&0#xy^Sdm zE~6-Y&tVmBGDKQv zky5hLI(m8#zMI)@3~oY*_H88MuF?}EL|W>zyG9>wIEsX3N0!OFAECmRwd#g5=kwxO zG^|Q1eft(LPSmcW#a=AIPDWt`pP8iUcX9dRGgJ_|c=yPw$Dg@Lbw2)bOrs&J5wnzvN z&AT$>y+}w)KztXwG-{B)*Xt;}drtPHHODu$0!B63D{lFhSabFiK7<=o*aOM6>x4TP z`W}@{)`B~2&&cUusl(_4yl;_yO-}e!B~vOeZbux|J-Ornc7gu=0rNdbrtm&trlt<~a)|x$c$Os= zDX{eG3VQ^XpbsU%Fjf->`a5GPVBoc(<0y?E~3?S*=@~l$JNIHDog^~fG|{-PiHz=g)|UO_X-E~wzr)jsW(dKqnA`&p~e70 zV?ZIYs2hf2kx4FtO3TmVKfCBh_#YdGw^iVmE<9B-+K4@eRCRYus8EvD2yr`W`3{N1s)UoVPoZY(4-&U2z{jrgQjqo~~$wYMOX2SqE1TpSymTiDf2Qgj(;C zdEXD>3VEEP;}UjLZqSQ(VXJXR+qFO9RVUYpOB7(xB{MHSKQoy%(=~`XVA$?l)^WaX zX|>+oNXf)LK|igY4wxzkQu1FYV|Yr_L3S73nZ;TvW&suj7DEW0Idj zRMt(vXEmdjFTi>*z93pW;I_jnhkHcyVe@@nGszL|3Np`Ri1KIhW04dC&Cp@wZ+>?1 z*s5qnPYte4Y5IQKkDpQ^w(=wIWlR2acQ1XEza}MT^goDYg$#fCoAHQnsPsj|wO;6B zpB%~1BK)XX`~g7tNfx@7V!T#ps}M6hHieK@EsHW9U{WntZ-_kYn-(v3nZ?J^B)pp$2lz);t0~~p#_J8U{H9)noZ;UAB6YxbO zFTjstw&Ua;WHGcM_EC~9`JYO814e0+f8aSKltz6K>gmizY`ookMc96_x#7TriOI^P ze(KPk5$k2@z088UZd-!oMr4~DW^aL;%?kH#Dck%O62idw=sJYkp7ojN#_(Amqzmo@GPdG}l| z@KNduIE!}~4zK^_!rtFPwKyuEwIa{DGr*pE4oOCTl@qD#%=OjDn||Mz`2hecfi4?; zHWyIwZG}*>z=-R6^4WEJykYSw&|_A%sHj%hn-;frr4P~AmG3M*w4POd6=&uN$gbe3 z;Rm|Y;u(Htf&WDjS0UDqT*4F7ps5u#IxEe#GHZNgHiALerEAl~6k)y_Phuv1BYNgL zVC3+dV7-}98etfp^L9o`8u22L(;dz|sTUcF9fIZi6;5acQ|JSn$YMx%QykyD$zjWs zJ;w|h7@)5m=&m<$vmBfhpxfi&*)_#QQY)-gH9Pc*1Wd(zn3?L5CHENTdCXW&ei3Z1 zLoTgZwP(?a>?cYQd?Fl@8zXrQ?y;)c)El z#YRY&Ms;E?=xB9z{ntLPY(-;4R~dgDP{ztL9^Y(KE=P6zQ;lmPb%f3d1yO9@HLCl; zm-5?aLHV7tL9y30l5AOI9F^$OSL=%0Z=1_xtDR$|hi`?!i$)hi7pb~#gxSt!C6d!z z&p57j#=o;;MSn%;PWZT9G#gYb8*}(M5j}JZYh3kbVOu#RYbz*%`xvF;{2G9cP@MRf z=8?w4w!Z6%uiZF*73r_tUo+^Xk=f{jPlu~J2pwU~V*a79Tq_`T(`zw3<=8#LpU)%G*u#;!H`BjS*#_gXMUahRs#zk7m?hlMgQ2J&-?ZB zwQuO~wtR4AVbDO#sd^N@<7L&!kPCQzbBvWP>4th#g31XP!^c=ehkZn=#|Yu1nYWbJ z$oH)~I3NE+god4sR_aocl1(2R^h=1~lS9feKZd?^TND^*tY z9s+@m{NS0B$*YLY!xb|G)HNSaM&?PM?&kIvpnc-*He{HJCP7chaQ(1pZZYd`Hyz9j zDdJ-+WQSmPeM9djVi-XXNt8EYqzOSHVptxQh1yCZyTMWP!BJQvl1mxoE$)V33ZD$1 zJ6~SqR#dmc$uD@An z4&*w4L6%N#;#R$Lm@TRkx0bL0p6T0dSl%Y$B%19`<6=&f2NDE zRqFG0N?K&Fwuv20A!Z3Fy?siMC<$j#GCP5QVw=?g!~w3c3Q|%U_&;$wunxGO41pCM#W zjzIxIB*MJMUXUh4kC^v0CULGeR!lgfTdhZ$bOLnBOW(eR-Cx@}WOMF#{l)tMIk(h# ze*UWjgP>tfX>UPe{{0yry^=kg0j2m}Jh?)$wSSUij}U!`y<$V4UhA%5Sw+x{;24w; z_inuQvg?wLf_hkh7-#ww`Rg@BctM6id1mRpnW?^Fvm1GP(JyL6tPtjRS#Fg$k zhuM;t;e}89`1>eXVx(SZ&8mr&76lXYZ!*6H$yUOaG+ZhR>e6Cmw}LXQeZT{gO8hY< zS95Xl0MzL%%w`Q*9EO2f*IPX-S`%Ig-|bN=nfkTB}8F21irp@#PJ4HHu+WTEe_QVShPHA4atVeJRB$o{>tvy zN_rr~l6vG^b!Lci?0c)i0D%iG(#++di}=FijNJ+D4+ylua^S%-@W90Mj4-k-hJT$c zKZdkH#|)v9NbbY;&B#j;*X+aJZ~&efp`X&HQ3YamyF?LjJ}jg4^lWQbp4asB3a;gS zj&&T8jX73YzTe3e2Q0YUhYhkCdFg+ncp;&Y5}fyUd6|})8bUN8y1#XLTRx$6Xi`N` z-}Xd6?5oRfe+3`4gTQe>rpkHq8j%iSPo<8u_}c4qW(u)^F_x(sAnvP!Pg3p*eHaUc z7BK{P!Q#X>mEZ-zOR?@~P_Q6T$Luch@rqTyw7e&LI^`#%yGSw_E9vnxQY8J+!kg&3 zK6C}1!Yb+-V}nxuOM{b;ijYuUP|aFgMA!1?p8kHCXXn?9vE+f70r#91#5y#!HH1D= z4~F0Af)SY@b1IF)r-hCd$7BK3SKag<^eQr3#{IiPH!V(>Lt3+lIMWCCm?83KQ82l3 z`@_InxOwJp5&_x~wG$(DvC3k)I}8~gV%7Y}*Em2e4i5t7fIg=3hik>k*~H>xi4v{| z8Cz^HNA%-m} zhY$){_Cv!0`*cTC(AW5`t0=tkH^*E{Yggu{osuD$X+l2Z*H>=*tqaBzP4o)%+bVNI z@Ig0ied`PMdj|)bVoO?ow#VO*$NF6edO!4j6!IB59pv(UP+p_q3iEKcW$c?ujjYsn zBZ<9_p%VB>^6?E+yZ>^>Hd!ig7;0iQC?wL%^UwX!MG!tx+({Era4+;$x#73!7~9Nn+4Y$&e|f4dpRKxTPaYf#~h!I z_>2ql3<(jA7!C*}16y1TTMlqW6w#@+T6I8p4U#6_w#a9n-mx3TY!ka;@hvHLizy>{ zA5Xdq=6;~m-L-|f2QPSmewJze6(!oQuWX!#VNUZpe<8ZowFW)la9@iLBEY zRe(vW3d%uAyLjMG+=4*p&|9P{4#@Qb$HN2-I9r9>&lvSv(9x-hfZ!Rv6Mr_5?9^b7 zASHwjE(x|uYjE9}W0{t_U<(zBD2>`p#DI=?%(1k3^~TlL7xr02ipS%@15wg?~!{sh7po0 zLMlxZZ;R-(pj3shy?L0!c|Pj5-qU>jqAir%AXsG$ZaW(PG%3O$4#FB!uS7jN2L|c? z2;b{^ow2h2I;+zaeN;cFG^EbbtD=mTn=CporJkQ)6zytCVqkTz&N?9!Y3&vqm2~1i zd*Lpf9KBbn2zfn)!hN+IyL#tp?Z~M!dB;_A-P=i{GccqU_st+$FsguDQ8_dS3KKe5 z%UWhP?fbf_e(PIyvW~`>S#k?*~VA^TpRr+}3`Q)rpfJ z#lwiA>gtu{QDmE}>)-xOfIut5L%&AE|Ax)zhNiC8vW!&yTHR-o+CSm$EaN%`yLwco^i(;f%q{>EHjzTrl z3GXS-r0=#6Vr*PY=1%CXyTf^u6w+9)ldf`ThbcA)6P`eJzPdVL@;nQ{#aFL7pk~amm~0sDdF9f=NyBxc@YTTT+G^%f^NsdSZn%i)yzw(a=q9pl$p6$df2 zZKMMFB{r#j5r(`c$v+p{s8~dPs6UU6EbN%2;!JU*+gl>Vyim9i1j0t?B}u<&CcC|g zPfg?}KdIPzI?&yiF4V0#!hK=V-o*;u-G<`m7}o zvHg%GAJn>&XC5B&W>Oiy_&nxHWw~BlQ4lELfl%tqZM2CUdBHRk_r@-M!(Psa%0t#|rZ5ra2K?CZj%hWeA{jm@;X59z`&cqbs z_9)8%UL=qOf|Nz}LL*m~RLOI{(;?c8cFcj38L|ISJl;Y?d2JzHD&MN%t>(&m7s&=w z(pqAs(pg@Pw>Qp1w71EEYjzl>$zlTEX;A*7!^i^syxj%rkWtYjh~(+P3N@<{jt+O! z{0|5;+&$6Jn7OEue{%r;g-#&+pYqX3GZ5AH*~$7j`vuqh<-t#e>TK3=%kL3${&7=O z?Oy`NMt@@WZT1s-`!mF^!{BAg4=$`eshxfKvEn7MEnMoKXhkd&Waj0lJ)Y<}I4<^5 z&GcW4hRnBarYPW7XBcGIL|%Vc$Al-j)u%veKiXdBYXv{LibaSjHE$|Am7etz8$221h*zFi4s^5r{@8lsVQ#{S2};p==^wu0T(hmuFpkR7f^l$Sr(t*UiUxb%f2 z#Y8_0sb>27K^K!Z88E6B#xuQ<0I-o`^tAh_Mzs&zJ;FVoGgG`g>ySU+Z-dq&t2=g! z{KsP8$2bF&rvjAK0*W32=)BlJk=|3>np{;DnW0A)@kuDaBtt)~3>;P?d;7RTb{>TZ z!$?zp_gnz{(AC&}DF`_q-vb%DW*6NPX=@4GE8=z}^(8G#NHce&2q8ecZIM%3GFy!- zKh%R&mays?uQVTEZ7{ zcFkU=2Vvq_sDwH}6IJ|E>(B>$#o7c)XY;(8@R!Jr3@Hg(ob@7S(mD9R$X2!c<@BkU zGL|VQut>xM48PH+7ho6hHxh9kz(!2xA6ecgfi6soB(UG_cluQY9r%)^sAxcwtZn0F`l#v7p_1NKnw+lVQ4>uAd+$F>pE zG}{21;f@l-86+)i*(_tFB)XXC2;8Vwd%>w@v0b?g)&?e3Z!z0s5fq;T8+1HPH*~i} z!rs8$9**=z@2JmQ=Cqm6OVcqz2M3a6^+<7G$xM66Fd_AztZ%-N=L9rcDzx_p5$scU z)Sv`IJtGQTrwxZ1&sSH2k=rUrA6%-7M;61m$g1f*OMr5)SRPqxG=9TW6U<70T^7-C znfb{&p_R_j;&H>~Src?9+8pzDpLy(bbhm`332hwO-^4}NiNYf{DqxR}@4}Nty@5Sc zur4R7H0q`{Lr=aUIw^45a(hWteGETRlO0&4{VG5kvl(^qbUn#?so#Cp z;qSJ!iq%9E+qC*n)~(;e&*HcDzE)QLiCvJ zba%HJxqDgk7R&}raezpAqo8n;862*%%D>m$-yiY!S4Svc8lPDTspa*QpVO1dwQItD zADWl=pxvAM;>qUC!ksh#^;ZMbUTQ(DHH78lGPXF-(fG-|)lP z9I~{84(W$7ZI9c+mJIw&etRiS79!5J01dEwPu#eHCCZux=3N+jqn!z49RKtVB9y{^ zM>(<j6lvdV?f@%mj^N)`7tF9*390=|z~R*-MK7(#Nm65KwRx6BWn#g~ObECJRko z5u-4sT`JFJJ1Zm+=K7iLSKIRAy6EZ!p@|?zFG}+j!SJ|VC#u;yd`0)tvw{KpyS?1tkI}a}Wg+q13q@gW-Xh?! z-k3$fhOc;CVcB>Oa-r-lyunBKKekk`LONsZI@TN~y8SCcwuW>R43Nz(l5xKY29`ux z8SPZQsm}I`ikv7lw0ZYY&<9oyU{zp3@=;D$kl2NILrl`kl9d>o8cyW}Vka&ptdY(j zgSkZU=8GyG<7jDVII@p!COPd$2S6z%>Cml@9Weped%(2LkW8hBhkKr_xc+47tqxEW z<`s=^bhvTPH#$jYTS5V*uSNq~G}Rtcjt$5G2+eYRDo)ghY5?;P;Lzrgr14I@{1ui< z1CTFttouWkAEq?Gt8yarZUqNqeC=JFC?VljGqUpDtblf8bkyj$fn=teFRnG|=6{;_ z1k$;8X^8wwvoQ!Jtx}Hk5}p_IKduE>ra>{Ja_0YS?4Gs zOey}^nBW&H#%8BF&l3FQ;#_Fa1qQ!wlumY`;Yrdfiw|3lw+Mnj0%H&}+zkh24>f

$){LkX8G^XXREO=9WJx7G*@fF0 z+k8@rY$1x=#U>apO4cWo>s}Y_4xyE>69o>#L13-V^9flVZ?;msR0@* zSM7=1$XCP_+cvZb<@8Q1c1SqYT)P##bVQ7`)JK-z|2B)fan^-xwnK2^uAAhRzYlv? zThVTH9AVtCbNf)=+XdEX`Ep4@x-{Lm&%e|GT>qP^rOz&EeLgqDU zNf7k`F^jb6Vr$)Ue^CWPFBrCvd-2Ynu%uCm!&{ou62+HYk!%G_TBgA^Se3VTbnv%n zveqdwD*!_62l9^oZ>HmkrwOeluO-DrrXmd(AYgbsaH|8-OcCR_UKVsT~atyd!1!>BG7tD)u-=N--hyFXAlYJ!- z11(@f$AmC0IOb6snIC+6%+R}~A_7eIA&1amNhq(qLPSIbw!$R8QX+zPp;+guQNVL4 zobO!BfhuKho}~KE(FMcOkBW?nE6_xek>cHKZ32Z@_zJ4oc?dg{tc68vg zB?rPs*J+e?VwWB}>BG}>BfZC^9DHA4!+<7qVIGhB9ES~50ENiNS>&r03^)Bh52*Mx0ZfR;TVq+rn8P=+2~2^|g@M_BsBsH*S#RXD8Xis}YdJ>00X70lZS|DK*uFeMw3TCI9@t>^{o zOlQL0ktj&B(%^X_rv*QQ&_rzI0EK|8q^5ac>?j*+BXje9<9Ab^_7>zX4NJjx<|Y^= zvO#2{-%@qN8MR5+x{^t{`W8`jyQCaGa5C|VmY?^{aaF01^=s=*U^x^>|8U_=GPABQ zpqzx%{%J6aJAH0zwTE4{NXW6c&>TUYiAkHKGsOnD;H8y^X#&6ht3J7LJSnv+SZB)^}?Ei$Lz!){<{dXW-jXl7mtag{Lm3Tswr+7!}2|jT@5Uwy}YL@8#%beN8`9 zOGB`w7)FSp8p7YAnKewS**R{T`(Ce6`TJkg=>PqvO#1(UNBn1A3`{!sJ4Et-#EZXEDgSZ5{GD(4 zpD%~aC3cH)I?@|&1-X04{+AbVLJR3x!h~JtuY4l<12`K8{O^ny$J>m5<(9FR)Sd&D z-51W~XSNrqt9qe-$HVyIf$*LmcTb<9Va|kN#H+L8&-(pJ}D5`gGAx&FB2=$(G7_`UGJ0#MS{(e z6glSL=H_1C=%vPy{Ez$RJ-}|cCA|G{n+=9~dkGXRx#fDkEE3%u8@WF|w)K8_x}j%b zf~e3Jd{h2Me>!6whCV(DF$J)F?Y_QtRZvzov9?C%SgM;Cq=Vf;*ifJ3ZF^VO82nDc zvtfg0)HT1CvD@Qj14AnX^i1!6FY2ZPFgG*PpuY9 zaoF^w^jvs;ln5QT;TcgTcXHYCg06J@QUt2Dz8|0zWlhzF%8_q z)w19Azlh*w@nNzaJCU9Mq-$l3g>CA)Po};hPwr;bdmxiiM7wCVwB#6H2%9&A+~j>a zyZx@6{Iz$wRKWD9MB2whxP@7Yy>c-uHyqLZOZfajGb1GyLDQcL4wO+TnFVrLDLd%N zbgiVMGwKj230`|uA!)aH*IwiKY9vOSdMchK}k~Mh-FSS{$V;}_#~8##bhBI@8pNgabk`ivey^nx5k-rU%_{O zyxsd|ZXxHO^Oc~(*%LyylLENr0(&L`VQj3uAanORSwL;dE;SP`khQEEbA1*}3|_tS zG==12wDMKaUF(EPuGZ}@7hsuod_9!oOIZ8CjZK*M9HzqA7Mp$dZ)Ek z=}6S-F^t(n1(Pzc@bG%pkpvsDIQv-quq;V*4Qq?YoLxSjMppDxvz<_Vk;f9U!N@V$ zL8j1>FHCjHvHKJDiZ}KZKZ#Dq%p9%&4!OHH%CZpH$j}fnbAH(&Ha{RKKV-O1P%QLJ z!k?m)RZ?ee} z#VmrzEBMhh@T?fh)RRl^>`a?8(np2ogguUjI z5TIWO?cIam>$1K``J5Yrrr%!=K3s*~?F%7>2OyzR8ae=KyLgNa)cA>yMM8FMIfB=!={> zaC=~Yrn?y_%=8f5%#r5#1-e(YCmiAynmUI@fJ(<%)=lZPt6y6R`gl*zH4hJZYc$4W zDnrr)>|N>ta#L}=mu;ww1jtFmh55ZatCl=PDK51G2{wM~_c~vR$lm?&qcbRbWA4^_ z=IxzfH1Kg+2OtCYprHiQZij57DnD(b`jlXS+pw;cV#ayuAhAVU&N_`d9POhzsj-;g zGQ9RkHXaC4^Ka5?g8LtJaqb{*GF&_!O)71fycY7~V$zmSjh#id1PP{o^-D!wlYOi)Gk^G zaGJzaw-%&rDe4MLky^Ayj+O{sICUHzhvHIm%xw?X*t6x6M(C?3T-h*d@gge~D>Ym? zYQIB0jnsr~r4PVM_kS{CY*4_dYztyY8 zHNtZ&#hR4W1AbiLbWn$KjZjsR)-@mCOOx!qQW@hkA6r+bSq)gc*gz4zLU*IubM0F z4jC=d-v(zr(xqD#T?2a}2WIlUGa z7f(4a$l-Sr=Drkm_})fnKFLeN&HdU%(X^6tyuf_^pku0s_xsdb8o>~&*GXHTRrCTo zj^oUbk-P>NRil85b{3v*3~hI2S&uZ z9?92ah55(j6G?3?6m6XGMZ(CM6%L-Y#tE@>j=dc#f~U2!kVbQE^0hC4)!GY{_QBf8 z4sX@~rd1z}9YNmHeyE}6pD47D23?#QKK=@~N#O2j8aQqWSY-L`Y=RZsR6?LgHvcxk z@Ovqq>#xF0`YHpQ@1bLzpGGZGLjSjzk|i;S=4cZC^7=Z@?-%g{7??}zJ`wg6L6gHg z1+fkL*;S!Pxg$&(%A0JU#HGMvn``K%8@xfIQv4u_T3BR3hLAY}(z5ROxZO*;53 zq~765p~d)ZY<~2L2Cl^r`fDu-T%FO6^Mt>~8?mjL^UF(#S*6uNfU9j0lx@au$Hr~Z zJku|7`e$hYlB5?L>e(2n?xy^S+G9jA@`CIlUZgHXn?~id6(-)+u!-PqM$833Q=P^> zS-aG(GaK^tb~!*lq^et1hDSWr%LQRVsqcr$`E6R*NLiP~d%T8o&ps&49|fj}y7|fK zLzne)qtE+e171ZNjoccsHoQAnr_;SaO=#zeSHoJ`n^fohi*AGM!GY@9d?2ZE zd%r~z?Ftb>6&PLW(@4;-H_=5m-BXr2BX|aAOHOIy2~BcO&oD5qdB(vX8ROzYxWoK{D;WC2=gaAqwvLZB;Dti|o2ju4JaV>+bsfR!>7^ zzO!g3@CW;qnCTkwWS6zheznKM02Ku3fae2I>QOfU^U19NnrN)`i8O6Wb2ho`yUyGD z=bw)B9g96UQFvu~3AX+bDOKG_~oSy1$|@$0#M=rDZBVM9;S$>SZG z#h-Mk11dVyOizr0zJrwexhQtJUeHd8*QW7DQeM4-(rnG&i;?h!-4>(r{xRATPc^@K z5FQw1RJ^>=-nP{10O;@>-FG{Y__Z{{e?ClMxt$`{(NgpUY!*4B>%4exv2!y1;kj6i zI>=t}uTOMVwH_xHx_$4s7m~!*Ch@84NSv0S*KmhtYnX8=_|Xwyo=qb zUdm-#XSqWaKV20E3*whW6iwD$^oz-e9Nq$vxr0;%1!JNVMMmH~-uIRHxN&v~L=IMA zM@2=kXKs6VUqXG*o$D#b?-gN0nok`4>>^x|DBD%XusQesuG@c7pXEdGo8m83)EyqGxvq@>5^PeH%{9L1$V?6dl>Q|q{ zc!{k#c}(!TwbwktbL)9uCG_wxVDtZey5*Z!lGhu6;tA z%K4aLE%=5k{8#k=_-4TAsG(udHv}vi3!0vt>~4$!;q?iWZYU=Y&0wk_`4csjMuAX5?{B*Sl4#(JMcYUD!!}-jXkZ)yibOb(DAZE$E=` z*a<(!$PGnlALR^EzfeC-I!LIO{lx-v3v&p}O-zcNY`5{@Hn)ieq`dt>0hYgNA`qy zHd~ppqx=?%HhC5nq*00kh*E+9K%Di zsKN1*z%vJnwt2Sl{gdABn!I{$KvTtSrkyX$HUHqRIFGwozfmnDF9R5@;vJH|d&iGi z7w|w7Z{4q3?bhtYb+))0dK0hb#q%R_%_u3vVf3UsTUk z4)=o{^nF~7w`P%w{R)AWhMQHq)4L}DRgQn=S?;;hn3Ui5CD=6rxRI!<^`{D(-jVdm2}w2jO1SS=b!F7c&kJMEOr@{IC$&4Sd;Qn?SkCNZKEty#A0M9NoeJ0+Lc_4dy;p^Ss;- zzjQ~eSG*kY-PW%?Y9?McuRW2I(!lz9W&`QZa4d9r^J7wBqfZk~Hyk29*XU!md`5Fk z)XNlO=G)^gODNtR&FGr{i?z3kYAb5gMO&aa!994PxVt+P*CNHC#Y=F9qQTvY2bbbf z+=5fwi@Uq~&EESz=f2%>$2jM0y{u&EoO6A8>}MvOI<{WUCMva73PK>a?n&H8w1e-B zPp53KK*;fXCC>Kck9_GK;CLF93Lf5>_=|1sEQLHlP`-VBc`s$>&i;Li@!I0m%Ilg% z)I8>G@e@VvF^JoxDPnbMHv*I0)AOzes{gSsec9CK>VxK&?@y%m&Ft|S;}MhuXp_5t zZI+uwBE!SOWs-VS1z2ndoKQyz-Ncz;7eJJul27w2zQ_W2zX3=oD!@pY^ztt zq;GyEEmTO@j>l0O%fgKfq)UEWm(1IWEQ0VNjJT{fa3Ec|@1-U~NH%b&n9Mjw4ELKj zpp{i3q?l5T5_8bkTGr)ufjW!MiyFx$mZz-HInv2_55#oXgvi00^;>SXL)&Htq_g-= z)6F)S$ZoJHD!gB-4~-$R`Z8i*JK05snP~d_tUSBlwb3q-$XXcFlGK++^YDxuSVP{k zRmZ_ETH3}tO?1E-kk5*#f%}!aVZKXBv)9NN+N9VdA{G+9d7qr4k186TlD86vxUtp2(tq@C%Y1>twIdwPt6U~&}`^&>Wxi{qdUG9ki`d7IJGh(;x851W-z3iB2 zP@ICUBbOUW|6l`JwI{10khOmPxNqi$<6Bm`q{dIH#gYU74q65~SLt5|CpZ{5WMZ2e zC9w5*y_W9%iuttN<6kxWIsGB6Z;76=W+qzdY?VM|>Cb1#)a|3h0^BmQv$DVE46#HY zGuQ$ZBEwhwk(tVu9tJ4KcLx2>QF*I(GrLfQ)YiNg(Mg_=V|&rKFyaleL)oTZvsciA6!_&+|&8!z^SbG`L$&vsZ8Z+j?Fkb_^Imp zUt$ubI1LyXx(hdP3@jR(K{d!nd~F@TesY$;pl~M}H&;}05zoMFP&q!uU*7}w8NeLP zw~89ZrnZxQLZU&G&^Sf>pD=V&EjGrPi1qYFoki%3W#Hx?H14yNY#2;{(z@BfLkORr zPxP%h;>1m?ZGg^AMH0*yD+)BWlycC;h8-!J+!DE7D&xe&M3>Wn5~tEf7bE2V0L%Yh zM$i8{<>H$aiBbSCJZmf_xoWOtM_byC^`-AV+<#-b5^d%%tI8#1{Go*08eU82F0&xw zcXrOYkQYWwetz$s-kxm3Pjc};P?hcBzu>?EeE(Yk*hb?-Pw|o%x#7$(lc?AAck2DX zD~0#j3!zNH{hR+A2HmGLs=X+SAqgywIBB)_5`oBhW?cwjVG4L3nFRJS6HQ$)jw&6U zn^xLamRj4Z?>vQ#*0Qrr)2K?k_d3SE9f9|xipyJDT3TBU^&pX4dTC#q!ehl=@p61F ziGQqkVtVSJZfu^Sv54UIy;9cz@R1UQk>LWwDY1})Zz#c2M$kTTDSKb8-o8&X91mEs zvY#doiWH^~(p7&b|kTQW*#3x^p)r8wKnD+f18>KE#gD?a*!9QG@OD&wn#; zB;As9Jm2H~9bN04wj7^ao{C|5=xb6^pPx{2C@(3K;h_yWnO_k0 zdGRAw8XCC+%Pvu2dEcEDqJX%NzP4ns1lx+U-wys^s}+KUtKd6Un`|C~SG)_Jf}wh< z&GAD4$@6ZW!e32mWu=s$|8yKNm;@a`PZ^6ZMJ5lYL&m>|n^J=Gw7_z5- zLGua;2yHdozQc`iTr-;H=U4HPP0zE%cKCitPa@;MQHc%32YVg*zphC~v>ZM?DVOGH zu{>!r?F1x3l-#|z3E!+IoQp2qN(g%yqivKuLPNX9)T%j0z1+f<+vRA-pB9m+IO?He zl$a%&PxoXFJ@PWty#>ejzAo=dkGkfEv@TQ_q0=04KNDZm2QDkx*3B*9=FB{|YT>b| zzUDGmNKK21GvpixC$jFXBuka9X9*{V=Ou8qc|34*Je_(21$}@o@X-6mBL}O3_OQ=L z)8`v3IL3x|C^CKILX3ys*^F;h7jfcvw6)4O=S;I}%g{4JPe+i20)gOW2 z+qVW7GL&o>`@CXC4GzAc3O#L|*p) zCH$Q&QI7VS8Z#OImrW;0v!xWXE5!GtvOa&=xH{!T~VWu-Ev6( zslJCzExRqwA?_A&Pj^o{$iD^D~zw$qf%wPt!o9~}>pyFZ_o{)q#&HVc*HFkT=rCgaQ zGg2sRy<3qQn_z_9^o|DCUn32PQ(kn8g8p;A2qmWnPIjTN~1DpBw5vbEa&Bp=29 zb0L>sNlD4v#SRWXxgo94C@wIs+~a;9o+w>6s9~;}a~>G-$0(2W(|c7hU>BWh|C=}f zNxiA>vyth2{#m&y$fWM|tpa%I5~@0G#! zT3*~YFH;=6Tmf?JwnJ2COLZ+E=K|cIx{;l@ps)nuzW_Ir>)ZVKK`NyFr8*WvJ#oin8H|#iu(WyhG7}T>LE=xs(CIt=PxvVj% zSitb|)!&D_eO=<0I3qGy1kab9$?r%tzEJ4tYXWRR?YT(#G_=*YSF11uY`^Ws@8;VE zY=LKAlLi66^wx{j2}z&Dg%PcQMUMzCA>V-aga~)g#d6pDFeDBp9}i(E5!ud1c2=nB z2_dVzbQ(v|DHTq}$$k4V4B0{aBcg7^qrcP8sFIW zhKF_AsDIDcC!p?^fJDML4Wjtq>=x_h@K% z?b_8dIs=uCb#wh_%feG=w{QtbVg2KFyFLKJ z&3q%0aN(#{tMnnqF1b%}(#RFrOJTrCCVkL0zSsdmi1G!oe0U=?S1U?wGjpGmLg&fJV7pt9N1YppV&2_H&nV{^FR-K_1#Mt>OlP(HYUa-~d992esHB|G%Je+@`D zw6aL4x6in1CX>1C24>zoM>Ri@8_WF-mTv;rLX%Nt%iP=ZH&c73tvK+k8NdA> z(C<_lz^J=GI;VzbK?K%l_(7$I|WsTxX1S+R`}CO!d|?Mghb21pW?J zBC`9m?>7==IJVq&6HHo|pOw74Cr)D|``dnS<$=*Lj}fo*-@NT}I~tPd-zmXg#u2rH zSon8gwxbH$5lBok8M6y4TFZy4vY38^iu7?VhJ9{I#%G5J72jzvMCUIU(8r3MMp}dr`h=90I)J~a`!h2Mk=QEy6sn`0k!^*Gd^ z9j8G8YGxKp7JGYGY!UIP;9&vKQx3+>^~`DE?w&gCx8*T|(Zev9tGnglVpo3ci@kXX zEc+E;kZFH1DbNZn8HA)zr0?xvpA36~cg`OalZ?uHr;Eqq+?%m-{2m4JddwXA1j*)k zGy5kOTzoEebog_;QF44=1!62S3%@xk3s`_kCI6tgN4O8_-(0wQIJLqNT*9fW2w=yG z`UcZTxLxP{J3TdJXIGQc-?O}b{YDDc1gwqPo!1FL>kb&D?R~4@`m9oL^qcxs5RY*a1(4U<3_G0cS7$*?ry@ zF%u*s62$O`^;`Y;$glODWeN>CSWE%yY9th9{M*Ze;4b<^Wa;~n(aEabkqOpiD;Jtd zfM4~#wn(&ZA~_37eLz@tCXGY9x z$A^7|OfpG8ztDvjBoOxn{}}mL@6(x>xU;R0jm;59;fRVfQHQ$X3SR5jfTS|I%s=q;m>zkXZ=A{f z{hc6Ju5~@3GsQ|sPJ>UA4OCS4c@yP!fh`rvalMx*ZXu084KVCp5EtnYQSQ=Ni@ETo zSt#k`o|hjHe0SzMfhm?v#PI;%WZWvp;0r`B$nJj`+nPukG1W6=z#nkVT(xF(&?DLC zc_vINRSp3-oS1&2^TtJ_VC`CRu?FNV%%Ig_hGNriPCDI>%FWkEkna*32i=uXwJ>Xzvls@b8ap0{El#?KDBb%6ph@UGm0h2Lt*E9WKRU7 zX&fee|;A^e1#e*MkSzyb_)j;*@zfY zq!vaLQkJJi`x+XMqByB6onc7xnNd@>!QjaUYWf45!${RGamJtZz%lb`2;9!jPKlMZcv}_2f`Z6g(b(&Pe>3jcxGN2h z_^rh7(RN(-Ce`&d#8_)!lco0t+5K9@1CNP%tI~`9@+@XJ6N^lO+B_sy}qF8GAs_94u#av9MfdKkd zGRg!V2zGZO$wC&3x2m-t52H)%!{_coYm5!WM>gi~6!4uNpQpXgU;eOd-(66Vi@YKS zg*;JeB}g5ypm;oQ6Qgb&!@kMmgl>})fMsI>cn;@KXcZkcT`F{3v@D=v%2m)(Wy5Hm z*h+ogd|y8N_!;SbKL`v9UjHDf?a7h~{W^~+{!xr~U5U>q=9@$+9_ta1HHzTzk!sI=mCqsg zCuYlSPbMvcNMjyCf~h!wi*a?fVNi0>GN#EKAjIgf(sMnCg@}kqkH{hHN?HeBSe*bM zVw>q0>%L6j&|ZIX$;l4 zd1GGuy04$Bjk$iel>te>W?^NRmiL2g%iQUF@{1E0WME~<5U`#&q$L8QH3h8O!ZFgOSrU4k(7Q8 z4huE;io_cw1d)GHQSMpXT}mqHlj_wx;ZaZIr?%WDFWYSI-efxxu&@_LqFq^HPWHND zZq%S&{a{Ju9s+EUCRleo>el8w*u)aWm9RwOaO{>5{aqY6B{b}GkKA0TxX0-j+dcB+ zTAj-%qc?8Kw=AvbOnAp5+OO-#?J;~Mmvv|IdLay0Kn?@qn5+XsR+m=7;#EHB(q{~s&g4Bk*JB1^*;^x|>fU%FgZ+?1jq#SfQUJF_aNxMcaAHw5 z>?QBQrm#(Rk`;7ZW)Vc&(!Pkeo9|*kZ%+nOLRP7q*Yb(d?7MiK$&yV$;ShMYfnI9f zFa40MhbErIfMDNNQ%27Wr@>%I1!3MDOV*L@F3&PWmE24vit` zI7PvLKrUw~Md-Eaf7Y2QH7T1Etwb}dn3_a;qz9Omq%?8D%9xD^Xn|Ji-UQ+C=oZgF zb|jf+ex03DFHE@tI$utOyzcqwSWzS(*l9VPGLdGM?rda!4Zj18@V+vJMh>tTBV^bU zgg%UmN!5Z6LFk&}@8K~|H!{J3O&z5k58EhCI4>|(6r6iwK#Itu#SaTwo@Ib zHi@jG<2_1*yXQ1!w0#X)-FSB1p)>+|341Ep)5ZD@yJRphSpWY91V6e~H@$09Ouq8Oa>_0Q22O5TU#eifmS)T)Q67H>_-xBv>}T)J3^U1J>D_;dg0 zi3Yc`$C&LEp_oBJN3He0v;brWfvT|H(6_Cx%kpSoD*RnsXA)Jh135}#uPmXsL_!G) z^JYg}x;?Lr{B9bjd$8Qk^F$t^CLGxvOJyrYH68i%j@kDv^I5?y3i+SmCuLTw_&Xzi znEVndHf`cT3Vjr;UQG!OfKWGq(ysAhUTA4b#9*K+3*+ifZl%~;>KPgEYgk25D|v?? z2?%4X-|Cz2wboSbdsgkVx+aw-PWFi77t!n6;JoiZ*F@HDG!mB$M)jGC=qKN-Evs~k zcI`2luBvZ9D2U~ll|+7=U#~p-PpJlnV}gblk6u3XQ$Q~a zRcfo?X4~V`)qcW7I9sbv;FWZH8w&=q+~D&K^FAZrKCo287j-_oi|IoeCYZrLpcWO0 z6g5(a63RIZKvo)())Yp)Iq^o|9suXmDuQpxIJz&A5tV3Y5gTf)LU zMh7UmK9Kw|M8cA@-y8OC1s_8{AJoX@nKG`I_?XnPJ(N(No{(Au_HSfRK8iCl%lHs2 z{g8T$;O>QHGcBc#I*JGSc>i^iYi>ea$M2vZ9*G&@Z?=^2q@AjjF}rpHE&kP6MSJR^ zm-afWz>(!CaHFMK(9`5V@8}l8DV^+KB0!kuc9S_Y5_@!5nKt%66RnhAnrvFfzY>@y zHGm*^1L%76s-0e28sjMd13%s?Qug2O;}u%E0e{FwwwJerDMWxX#)c!7r+DxNlCoWG zeCX@9HJ!Nac&T2b`!$T@Rf8*vu)b%|tUKiWtNVS{L@YNQ+r4Cy%oeHK?zk`h5glRV z%Q1V6l#L{oi0XtXkzZXKI2#Q-shiKK;Vu#RFy!KEm!40$Dg$78$l&x{&rdBvv(Q z=eyOXYr>%^T3d2qpWwU%ThQI5&hw%$12xAD9LKMZTrVnm_G484!@jKXy{-9^23+Uk zK|%?7|AnF+B;Fz)l75|Z#^&R1nu;`3{PQ_JgmlV`-Y_&&7=ap$@ZYq}Ts)BVmQsOM zozZ*B)QsftO-X=pX%XmUeBkA~{r-6j>|7sZ>R_99d4clZ|MS0hME<|D1s5;%Kl~BG z|KF{iH(9_3xc5Jnn*w%szjO2QKx%5RZ*DM3%F72_ZM;uzj_6q#BwSq3b(sm8FaGB= zk&g@k4y!F8{%@UcU>J<>wn6yet)H#)Ib(Hob~eOvJex{X^gTLa(6Z0}VzZdRXnYQg z7U#yOe%+m~H)!qcb#=IFK35po!k&TESwcgjpZ<%s3J}+YwVI2Gbt<8!ZmT`MwYr~~ z`S<|y^UcGemX&{W;3)ADLXgHbj~9v3;-4g7%jz>cQCJb?=S37v&O;eWr~9LAm~}&i zE)egn;C?{t_4AwYtAJbKA)_b`{3(n zaAaRkW8{{{!{!HA*zNYd4EzW{&QVRttZ_StAsclu{ksvf}*uh`54CJr8f@S!1wq%8CR@yD@?n>eGXFch!W zsL}&#CEh|Qe;J^Uo$|=QK0?Eq78}6ZDu4>poP7q{@fDG5e8zJOXbj}L?fYbdD>4Hq($EemZk>ghGM+dA=cag}3r-BF12m$t!O$0~1HxsiLx(c#t7 zCqoUfv8$p~GiO3`{9nZtIAY2YKc!3xB zL^D6kF=fK^)sc2zv=i1|&tcMjgNOL3tXjQCo5lS1a-9DTz1_i@pgil5luFd6g`|Q@ zmzT+E_9zPqF0Zxq#0D!R%mUJAItd1P{yM^z8MjIhJnC1W`1QQPbWsROCAvs=WPl=8 z1r@lZaWzaNE%GZxhqzQ(kV0C(Gy(8$Q^b?1Q7-)>4~D)gT9T>;#%xTY$w;uaBtN9fi`+Bx`gz}ugf1p#wCEL?g}e&L!YL^>n&GQIZWRH5_b-Iok>=&=$O7)K zJsgu>v)46)RC@Gi8jOWpnwQalkuf}rVter8S0V7b49=y=6hcfYRX^pJ)|vsSj3jLb z;_z^h9_ne1$MX+GY>1W3Isc)biig?Y*Z8AudCb7kZOe-PO;(twzwzBDbe*4IAJ=bm z9y#$#jjRpi_{A{o%r3Z6DtFgpD(;hIb=~>D#-~8f4O@+9z@upnO#vIKVp4{+dsQh= zLm4hBRZOJ4dDIjM%I_V|e%b=usKfnrv90SgeoL4=$b@^Maw@?Lo&m`I$O}HA9tvkg zSGQ>UtvD@t14ae-5r?FD>^Lk{VHokV90682G7t+*d;`88nbALgK9U(P2M|5=Wn(HD zkY`FHRUJO{ZGyUV^aZ+mABeol02;MJA(qUv_O1-;Yy^kAenh{@LXl{Vfe@_azIrYX zWR-GhbVzEgawkDO3Ix;h-KE zRD|eecq-wpjD5<@G6WfR)z}pFEykpJJQ7m1ZXGbqv}tlkXgj&oqXRd;m0vD0V#A{f zJhLo>MLc+ZbofK{ZQ219DFc%La;L%VM#0i=GIq41mPPpUu~hWf-H=2?Ek%ll=aWI! zS8;`(udOWL>1j>@;dI}4f}Y~BqvIOSq|FEr`X4hRyuyowKrp~HDCt112-DtWLUXrar5iHQ?X^HjP zkOk+)_a~otSwoJ5a?PEv9KVz$46h@{r>%u<8Y+H^j@bgZTpLJ)jjBY|SFSkIlNlu_ zY*t>4Hf3*Cn>Fb%`duWOD>%uATghU4{~9AH=hwEl>k)OGGoW(!0;6kW0Kb?QLJLiE zpWm%aH~SScoMSt+;Y^3vx(k9ngoX)z4ZH3C?p4|lu=wS8(F6{liP7TLK}2dRdl&#* z&h62E8UTHCfuH@kZu-@RitfxeEMyYE{asdkU>F1bWv6;e4Fj!`pbcI%-?b?trf$=T zA)VlKeb~r4woc&ki4J@72eWFBs7n1f4U+<|WYTQQPfg3KNi}c$C3_6WUK61JAsMI@NhBHc+k>>#S&7$QxENBbILD@XjhKztPL;UsC$aYDI|gqw^35yIJPFJ(urP^IpAEG0u_v z{ExS#yHx`~JW+6|v?fpb%)Gi``b{(^cBqs=A5bVY6h8#M=$0GbUlV)X`D8(mMET-F z{(3oWY%PGk^zhxO1VSh2bAgZ^YgfRTTLw&7et;uP-T|G5C;{v>KyO>#ihO^+3kg2S zSvWJKtM;fVhn+L!dsK0drAzYi3*K7gWJyHSS)F7{1z<Qggi-w8Y zpuH1UWg5u=^VH zmpDyzVS5~aW8Yyos3@#1Z%-{F0owhFst>4;s#r#A@#d1Wl8(?MJ6#Lx1%PDZ2 zqfZ51jC5MK5{-b0;E`boi=bIWE?hgig$su?r?}|RnCOi||92w1=@b!YjYJ4F3^U9SME6YJ21*Wrg^VD@`B%$<#wyYCZ5$!L68 zg`rw@Klp0z90KIC|0o%5F?6#AXQ!zSZBQ*+t0hAxzfgm#c9plQaqiC62J#!xtynT@ zcav7b9w0^vGa2msJTX04ompsYA_AF7L#FCC7%h9%?f%GXZ|5}GZ64u4#kJLZJY62^c`j6I?EZ~_D=WqK`^}q=|n$d2er)Mg-lT=3jMtRb2Tvz-* z%4iay1EbZ+oznUQtWCZSMA?$3OxtRhdtPVe+|$Yj!YUu}{4SZ*K-mcn3`Jb}#^!~Hh;>M*Ps{4sgm5Bp z*F{w8rZ>pg%oiuct3ygPfXcDD6pHNr;0JtvYji53*zISfezC9LW-p+1Du7SZYz8+U z6Cz3fVqzvU4!Nd5Jp9)zX{X50e-e(vA1QFeCsxzPuQm}<_F@}N;FP4K%k5|-&c^A6omb#OB#V_0#6UD-^LgSqW61OhkJ>(U zs@(oC_@x+aa&jeTW5`pOd?bD})mRfirpE1!E7wR|b}f5WaQS1G;8R$k)57#Sch~G^ zcxAw)z8tn0q;*%$4A_B;(tOhNVuc#cio-tptS-hUKD0Xpn-;|b|L*dBB(lL3cpinJ z%i02qCB&IhD)n3oO0(I}Wh~6|g_);{vyg}lVuP?Ngvbj3%yZNGkp)cl0_9IgRva8)zJ)1nV zffQY>KDZ&P4`_$2qkj2fvOA3>4^o+CnMS=39;xg2q5eP&)GqSfr>?6+0rQ5$+`5e02Dv+}1g-}v#9*-E?q1DvOoIS=)yCgsD*06V^?D`?8! zC*5o39hBso8E2O=Jw7sR6jCL#F#%cZ`)AP@s^|5~5HJkxOhRo=+;s@^OG=ROc}|-A zEpcR0Yd0*;d3WMMFibx=-c5?sYZFZFmHpW7L;52d=YC56mphfujtu0wD`El8_`UVq z8|pBHucY`X(gU6&NS<%1#HKgIVABB*=aFeU zZa5AoG}CeS$>-rur)hAC6e7-7QCKDk`#I6n!^fDW*Nu56*nnZEB|r|#e;PJn&|CtO zLH}q7ScJvTfH40kQF zMRp;miu;e8p=M;Q8$s<;&Q^~RMW3{{$k9sLuY=&`#&fYGDePOk*p00r;j~MEYvGUa zI&h*duMYn;P#hHkGig-K-CBrLGG|laC)umzob5&HgNNG;*H05%pX;njaE%C9BOV4uQ8F(9_cskiw_96S$B%^^f;G(H9M-Gr z{oaL#r^~DZL%`x^7371jJqD=cNKG`geeM0SodB9E@TTG1 z-64|Fi*gD1uikKw(0OvlM}i2R?xO6kn+=~cBQGJH?+QokSCpGpC*P6!x-M2?212;e(|FbD7cKQ z3?^4ez3I8c`Xv@Xt^lA-8Z6LOUAL-6Yr1SvT(Uz-&loXb-q6IzGx-Zh?TPt>>msx^ z-89RVD3vV_=WED8%Q53!&f@FvVaB^Zv?%-4)@wQ($k_3v==NqgIp`~9Ms*hJUCI!Z zT$uf$VTmYl5hvS4Rw5KelJ#luiap;G{#|Yha_D#=kIm`ms!PpboD+P0*z2UB=ii1I zH}FO(aP#4J#nrlr49M3jML{}B;#ODr1cIf-y!DyixC9DN;WgQ|XI0E{j|4B# zP(ciT2<~2$c7Zs4akBGb83XX>}474z;wW=vvSOroiOiW!_I}sKyuB|2VK^^Ne zle;~IK}C80VqLK#WF2*k7Kur;1r){~9+NJt*H&n6H4+(8$VvehPWX?m1uOScfVVvB zF4#7ukc#})fVaKqu<_n!*@`~zk1?wtCWQzJ3uJ~}T&XChsfwig+jwiXIX=)nOhpZiBD=Crkf`0QkUm=Y_DSu$lSe-@zC z(|Y)AO8#?%r-7c|J!REs)(7746>#m-2Gd}bhDK+LXw)4|s3ocncy8W*a9PpMbS^=J zfAgrHHHI!uTY{*LsP!$+Dp|ocp6#ZS^2w81nA*^M|Hse?X{BI=>oU(DDMa)2_1(AnoLgB4 zuZ*p;LuIALLSWs5ZfJF$;>E~M%_5W5sGGY_VtLMEvBV=|qFy0IW`Chk9%1v|Da365 z;DC*cN!_N<)=E;f!%%0^E0r~)8)njF@FHHA$eUvRY6G^>vpyUYQ;C0Rz}s=I^&pu@ z?k_Dys%iN|BKAO146iHAiQKuAEtRbX|4&eGLS5qby+%SGzPe{t=Wn?9c4M5fT65;t zFN7nTlQ`w9U;8YiewP-8d8>26Y=jMllCe0|rOs9r@J<*2ycvIM?PKzPfQtk@utuCnli44*?Xon?rJY!!cm(Y1YyCst-NbrH@=Dnx#$oJ_H(q3%(h`+gWLegZL=q&|< zlHU}A=~NarbMyCqvtueiJuF2H8V1{`o?ktgoapTttTZby8T2*k>+!4vjH364=EB}Er&_icRLh(-GkU0<2Ik^;^JFXZB=WNS#33pga}n-Xubl-> z#Ae7rfz7A?!P5Uvw*F68gJ75-oAZ}aT6%gK6BA((5ei|_)J|LfIhDCqSkR^`TIciA+Wk(d z|JMJD^_Q2Ut@+-O+1OO!N__ke&VL4rV68q^5U{hh?^|D|^z!n?ZuaJDe)wM$11w-^ zZ`TUjAQC1BW%9e%>s))9fgs@O3&jK-w@6zw zGM{~d9?B6afex~(t1HR-SQ>Bt(!0n{SPYF!SeGfQ{~6+Y)jZV+%y>}>QTtaU1uEEj9gjOy=u zVSD$@xiP=2frw6j`K|kgtDBIeosIfX@H6ohtoV$nGqpU``r2>m&WM3xdM8>QnPBH5 zbESBxoq^G5d$|*TIU^WT^nt|xZJ_f!7KWO$b-a?l<-W45yxw)b!Nc(M6e&jy(hhGw z(gyr*^i1Xb%PSlf$G0K!B&-|~qsN-dN0miA1sjF@}6rY_tzwC^8NV;$!{=aT$^ zS_?lMavYWqZx7s>{$``#_)6AgI&{0yI|KjrjLQnv`z@cEVva!WgLz$eFw`jXWvjR< zc}oa|koSm1G?#_w`S62To9p0+Ok~+c*}Hf6{GX*Iv~>B9qmCVa=V5=-gLPmq%KDys zSg=7Y?N1?+c*4|Ns@>jRm)*moV{((KWd_6-F*zxWfJFC%E4Ah!x7Xxp$UA4H@oW(` z<#AbA(ZgfkE#&Sc&6}C6NH)YBS;|U$Yim&_r}Pn2%~_g-txTP-9SzDE@~73+{mCG1 zwd}5Fn3?52B(WP_B!4h4UdHxlRcj!_#kj9SVc7e{g6%32q=*)$s(#~9;tAgrM+ynZ zNGfSs-)DPfX)*RL+a`&k4FG`E67PArYr-0@t%-v{_uFSaF}IWWWd$t@_KN4qGK&vNhHEwCDW0;vat@ zCr)ta9}V~mVXCrzp3LHGS3ON38W=&xUT_yXvRHgeEqsTrjexyxv(=N$)s zoxzPtL+q+}=$B=O@jzbHIYykP?;DeHxF8PQBxq|>n{@?S&Zs)OMAjdF0L5*Ql=m;- z*tiZ+6Ei^C!Kmuc(#@PJF%Bwa$13B4~Q&7#~+M% zsh&rvwMDWFmgufRf9L8OD;7o#V7Knv^fEXnVpAvtQIFfKb6{knm`jHca7c7h$7QK|!z&`io1dknkwCAPyLw%JH%(~$>px!p`M50gKn1`gT$ZT-Iiv9WrG|RKT zwS&T;DTvb*xF7`IeiFhyn4AEZ6iRi~xNEv9d-Hef6qrk2h~s5Zj)l}7+=WN5y>q}|EL$(2iQ~1+*V^XeU&v0`!6t|j^m!% z3uawIUztj789|vzDiHr`=oiJJAWMgJ-170;9K(%OD;_3B5y`F556R4+nl?wvpui35 z;~NgoZzM`9DtWEKC_Vs+ubPVNnr$;bcQRV?94axo4@W{hh=qg6D`fA8V`(AlN1M8? zNW+?#W(BS+0^86xae@SR=9>SQBVZ&7ur;tfJ0+|NsCg)0Avr&VBFeh!R9ZC5h=I24 z0?5B!aAf9Y9fBwnT2Ms&S|qTW(|dE`clSnaNXDR#ZB$REv-s((Y}n+-O~?Z)dGA?v z#ci}(l&qVSRCE*ja0qgC56oVawOibVvya!60W?%BS1%60<4}FQ6=nw32#Aw_DULDR zs^X-aQ{O!Z@It$#!Q`@dHl*f>#T9Mpd5Es?-W~$!gIA)MUw(*IPw0TNEBG?)E2<|I zQ&cFB^0k9wKa8&|Hm&8L1@U;rrr802?Tv%e8)(kh#*-XoN2eGfLz@od%m%(D<{!&- zDh%69O?H3&9PMC_zdh8PFE>A>>|A9*2BmbWN}Asfp5><|4y9}IBaei}%+gGV>LV!{ zo~AolwO=534cKgymRBNc!ib@4AzCn65>R2)Pyhx|^Ye(j>^e1ZJ&*3FS;UOc#5(>F zB=?y+@&YtC{yrj?9edLFl>|PDV; zCwy5gQU}l0qOzsdyK`x!GN(W_TFOchxbpvfl~|D*HT?+5az^hh$YT{XZr1jrg~@H+`g`&lbliabzt z)~u3;Ot3z!b|Y0Qc<#y%|pJHFpsBeSII7CYbAe>sxOW22O0J?UlrUy`X*7o@S`T zOLire!+{<1ROt11-6PQC2pWV3duS7^7hSn`J1MVX7wA*s?D2?{*I0*y0ytb>Jn6cY zBy`&!nId#DC8AKl>k2%j1c`U|a^E(cW2cKnKGl&esG?*|?`G}qlZxjJ3^OPSV^}7Q zF88|V2*CYKnaAbjUs(tXOuPUUPSvo`eegAOU9h3Y;DRQe+I-0cIBFS? ze;HDkwcIlE3NA{>^#)~IGCqEd+&DRqHFO|iM7>pWts_>MN6+P?3H#RwKi?vVZBivS zT+i3VT?FUbFaR0VZ{MpfY{UslqzQAL{6g$ylpw{soHu5E=q1R#w)4M9o7dOp={5G7 zdvgWA5uQ^MODDe6UCvepg#C)UgN?fL_OFtu}jv7#bDFAy=@l~`I0dFE> zzXcRaPxspC4q>005}YquGVu$Ka9e%ecohnvj_9YpFA1=5(Xa>isE45tXL>Z%w5UQ5 z_~}~U=Rv>~yRj=h59*6%`#HP%S8YHaU8Ou5y_~J>{}V|Jw(~1mhw5<1%^70e>S^Hc z)nOl(kGY;oxS5M6q0&H7em5#&bzUilLLC$MoovA1wRC6+W#x_7cq^)V+TdoU30;ej zw=9R!58@a!bOo{@0`<-1Fx3{oVwoKBCHgp5N?m(P6V9ha!_(394i}D73h;p5}-?SN2!8EeT5vpzUOcncUm)`xj6iFumK;xUj|G0 zZ=>K0eECfeywx_K>e)A_NwOky4hidj4i4W31wCD;Ikp=%`h3-JwmM=jQqq)cwZ=TV zSIMCZiu(Jp+uKN9UYO!Y#Q-vb999|faz=Jb3vOf`fRl-Q3dtMDp+s*xDuxDeHEH|O z*Qwf8DD56Z#tsWw#C{7oRAAzXda8^&KwYEsnk?4pIixCZ1J}J6m>WTYm(CwU4)xWb z6Oe<}+7r+=4M2Tg7hFv#VN;SrWA{*8EpNt!^xX&u2tZ~345An1u&)MA@~?eqIjoz+ z*z5ze<|xls^g->yID(usSDkZc>vIMJrO_(SgXbEJ+4)j>?x#+4IXVktA#zMXTlF!- zWi_BI)(YN~%ys8%qw`N_{tT|44gpVoyx;LAj8r7jQ=eY-p;yd-s~BrLM~SHz`*K^* ze!@+)(G_|LBaO$Q`#L#no*A z6+_C>FO*A0Zo~UR1H3NOqj>l>{zggR;;?dXXy}^{D^sna!0ZV;xmgAa>5>m?${`mg zd+y^x;70IyJn*Eb>)~YGO+2jJDO+M@6***y%uqad4}BRPbSp_&4o%$?@oc6XCz{^F z>0n2y)g<~2<8BLuJ!a7AteUCGz^m zPjtE0+NS!Qm#(b_+Zf&M=9 z_4Q$BWCo8P-9>lHb@-UQO*v%4WoJ5i2A9q?GBJ-Q4{uYIP60OPE{lh4i^AzUI2WS- zhmk`yhB@-vdysg!3!RrEA)=m>LJkEYN}AfJM!1Pw-nhtWdxacU)FUY70!I6qvDsm< z9QHuf+$6$Xb(iv!W)!;Ra%k;&6oZvXN_m?BlkJDGFiAZhx^WYW&b~UNm388Bq$!x5 zsTgX>L4IW|Qk-P-%l;ENq#H@bPUx6!K@eAr-I;ah%Jf(2ZDhjn&f5ia&j zBht%E9%h77-3zPBp+OMZr$!KH!%>mLO-W^FKkE%Hm#cuoW|A^)wYi@xF%t3`F;saF z`mb5hWO2@+I+g#jnr2a&;HFrOMMVy!`^HwFtKa~{oOf6b$HymB<{bX`*S{mTcTUk` zxVZgisT_uc{JIZPB=%@~_!*A-+km;292)G!><2gDVJ=Yln#*KoCcb((fK8gK$f2$e ziW+;-TzD9U@{dB4CUVGuOIRuj&qUD6Z@jr2^5JxD2!DF7 z6&v)a0)nfBn37@q{rgXe91_+MTm+^TW3+ldwAR>1+cX3nH?p9?XRC;mPwa7|M!M5I zE51=BXt*la`7SSxlI3Fu1he8&{dMp(;+#4P+#-93(@A+`_*Es%UX1sgO3 zu-|e7<1NQvu*z4Rnr1uDJkfz@d9TX$^it$UN*j+t?8$3I*Oi@6f6aBi{hmWM9Jj|I zQFNE@A?6w}k^h^VMbk+Via!CF5j48sMM`PG;C95YCa>x}R@>Cs0 z^8#fJhtNz+zxN6`l+QV|*q(xk-bU>8)S>Hv;LE)jC`g7tT5qUZBBg2w59D&l*R#Wo zzFwS<^`WN-aYfoVTic4fZ4QcOd!lj@!!s4|7E{km9U3pSpC z@X}uTV8J@_ET%egU{0k=+l^`{O|@g6k2Nh5n&$4fKHh_5M_EH*Yfc|34s8a9NyW1% z8Kd_ftS*Pt_3pUXh4#yd;B%$*q&~vKT_CX!!o*NJwpz<1SX0LxuC@jcsM{d*_yJf7 z`7m+XhRox;sCS(Q&;P%@yZdRYjN<_QcTifFj#1{o0R`fwfua&&N)Rt>H`}3fV<2O= zY%vH#VJ?V;wT05sPF^|?wmJuNjJFJE%S**fvqZO;bm)a9`WMLD-Peb6YF9w(jjFMQGq- z>G`3*zbkxy2$4Hipi9k0_vBst^78{kA`!{*s1vpBd4$JXk-qt4uPnsSdZ({?1qrzg z`2M$FvHCz>F0%S9E{Nczj(c198S`bVjI`sRS`L?a=lT)oEQ{XFOG2e(1cPUzVa?>k z@A2ysE*Uj2T^Po_+oCOEo|l_$iP1t`tWMjZnjU-?up=k>IYVEEAMOvMC_yg3eYDYs zAAed!|NM<(Uvu%=|6w<#yyv%s>YRcKO!wA_eWH-sUgMcZ zFxs~1fi@hO3cvI+8B9&!2&-wG3)i0#q3#7@V1v z_Rnam3C-RKl#3vgqRqwdH5YWzW42xdyP?yAH`7y~5CJOhv=ia^QIv}ysZ7p9qtl1^ z_5FOS7y851qR+YI#|#vSP$%VzLCS)B9Ofp`bW(((xMJi-s-3uLdk0E|e4R10j^jp~ zSzL?c>4w$`xEl=mNl)qai@G59r#kMLsj+!yaswY#^ za>v49AQ;^CA5!AO;W49;7fB)_BBKAH9SesYoep%n-Eg_O(dBf((d9&kqYL(qPFU?7 zu-fcsx7uK7zXZe4W8C>fL_|cpH5?KV5fKr?ArTP~5iuMR5fKp)!yyq75fL#Q5)ly* z5yK%75fKqF91;-`5fQ^75fKp)5yK%75fKqF91;-`5fQ^75fKp)ZSODr=LK+AiFb7X O0000-X|3kwSX$9J?iBK|P7;;(tq@x&}FENEdEVsK=;U4g;k*NToBi?R5ep!c^IbTqVX zEn~xWPjtJL`mGE+crqZ`^@fP0-L+!9^*llfv*AFoQVx)?dvY?q%ksBmG|p!)Kilf` zz#{zNVDfT*_ISA!GL^D7p25A;-sI-quH?uRBp0zk zR@)PZ-NyPmN`2_DlXg}O4G%9IsdJK8W8|Q>uDI!PMHmXc6h6YJ_vb6ibtUB>(B#~) zk;LsNQol=*;`CPAxGOzK+WOgTi6pVph0b<`i(nX5+NRNM5}e2P0aD%8rI=>0ZigW| zuCDr)ne)rw=58kB&|fEpYd%#McrxK80HH1yqI^@A)Fd$@SKlXpuUzD^in*r_o4tg9w-c<_oz4S{zKJbxLcRxTXH%%j>Bkdn?>WZl~|s7 zXQ)hu+ec9iX*r&D28;Q+YK49m-rzz^Q2DQ55-p4Upm((t zqqWa5H(KGX;JEDEz>{s{JTS+TPnR>$J9m{7Ttpg2FaFudDdgm5?Ql>$tj(?MPdK7I zu#Y_U(=s^&#wic&)i6xK*?8ER?bvs}6V0lCR+LjsasH01IUa6eARP(de_0mru-A($ z+l$KAEWXknf97^r2}a?(5g$vDL}Lx)PMWnV$cj?(ab zs>h(nc&VY|U=WNlJt;c6mXyGk$&kl;! zT`=u^z5^^5vF)yc3Sk^?s)BR~nr;GK@(rcPa~jq?2#^9M5j=E*E9+Xj$?Lr2_TyAC zP)$TSUTLS?@VF+4Vmo&ZOpu%29*BGUlCxPh2e4(0G-}`%&c{}Yqjdc`l@bG#JP(O{ zol8RfHEuvN$~-L4US;)ziHsDRMw>wY+5MZp9%n1#Jl^NzT=5RWBS>@%*W7*SV{E1` zu0O{L#~zp8YJ4l@`w-R2(Mf49?CR7z*;6E}jIlg<}Fb>C<0A*T^u0 zXXz3)#^MJHy}=jcYcX#v8xA)%I*)VtT8G35`vAZUO-9Yw_TIFD6sl?B6-P zNuzYFaYW&sI)4`xlTk^c;&3rw{h-;|o>4h{ya@4!loHiwCyM%;zS%u9+@^KcYh`q$oM^SA6J z%5q4aEndOCon$Ny<7PfhsA(-sDr+Mn6C-|br>*u!P#0-|fiRL?YJ85?e72ej?Gsnn z-N8sPD^C?i2(++-I0(8a5`9U)L1^MB%=BP;8t~^BqY1+{H3Hfj;ir`_LYBaW$y}iS zA-6SG%$G)qN`dDZMs-M+;)VXwqmZXAzw7G|wBf^t;g2|)!F%$BQod^*n{!j{FRCd0 zKT#d`R}f43R6iGx&8rEkS1w`}U!*=xi+l@zen9$@ky(7ylAuq8MGjwKxTyFy5XYd9 z|D z?|DH2r|Sa?C|5PHE@c|U*k1P_|sjvTju%6 zFD&fIx?7Vda8rUeGt)Nr`U9>u301+R6i!CTE8H?(Jl71jC@<$VG4DCz1$Uj|7qWbW zZ~S*tUC-!P8 zP%em%bx3x~O;MxI>!k-B1xeFMILYQvtAkA+?XPhq zR|iThhf8*khk~Io=SuZ)L{m_DQf&4tb-6D4?F3L2wxtyjyo2~fhlgy;5!G_iYgC`f zcx089iiJc#_jH(1(_Iv$mwt`}@?lNAed5f@?dL{ggew5*naPu-LTaz6E-k^wGhLu= z&=t#&7Uq3EDxBQU+A|wO4X`ilgf|D@EMCVxmyd*U!S*g2x+-d1>9;Ziu_Tn-13kQ? zB2>3V@>f$izBw zoaYd258*Y}CCne)2yLoH=3z-+)6nDm_~S{V8XdSkoE?YYd!~Q2sWgfsHji*}LYiPQ z1B#!vW|EZ96&|V%cdOQ7K9bb1@+cC}!seryT%}KS1 z+;h1e-$>gX)VjG}A**U!#31&mLH@%uZ{1Md3+v%}9bp9S_8L45>mT}izTOAG? z#+e=Nu<&|rn;SnMgg-oLXw`|Cywfx0`!F!)7%pNj!{gBgM#_~`*gV^sgR6g|$r`H{ zAPGFNe*Er}5x9*GW}pMWqB@?mlSs!A_h&r}N5sVjnr~e@&d&Y}#ULQqZDRc(MmYZX zop7lY(Lf(^AFE4ox5wG8q=*?7VPtCzDIU6?@rzzSWkxY9+;~govMu`YH-{ciWu20K z*9-Ow*3$x|s^B4fb@aBZX)Xp{&8Xa(h$vKx))&`O`xp(~IMVcZq#*ST{s?39fkO5{ z*O8bFv>XsBb?`<082nX7uqkt|(fIr$>(PaMFLN*S_+NLa6#Gi$v7T4v!7ydNzGP${ zm1a#J*P|trvz5F4$DUtC3`o?#SD!vMc6DnIQ3`|GQ7Ef8{^nb!7tbR>TdR^hXiXP& zQzL*y*ta`Zs%C_t^oNP#)w?cM=`6w7ak7;2DTQrUQe3I{ip~DKJyI*z9h$x96aSp2 z-y7EbDtmXgmFZOCc%AeH(@>5hUi88m5J7aQ)teh(?gAK>#h6-JY$Md*EaV_LmRY+-{sdgw%q2f$zZ zVxy7Gu`_=BwREqU`*Be-2Zs;T6n=6*s*cDHK*-~51%<}s5FyThcSJ0bxN15+40SRK z`w#I-1#z)f0D>Dic>!jgr3JF2H(~Uv+7pDDg)KC@6#_wW_XY_iCr5Z;5JKWs?GRd| zv57G7jN6-B6r}%)2ClSVRc21x*vNJ_Vb7UQYHXCL|kN7Hw z`-~Ua$%2xr5G7VN2UW_NC^PYS+hxNOGQ=)vm|+A{nB*lN_fCu`_~^>{?$Y!flXfBK}N6^;6CugF>SUr-UOay^ukcPJsWmL<_FoundZJ-62Xf?i|W1EGs;170cw@mF*^3JtOnMAy@`%GM#TzLS!<4b4A;(_oEQmm z(I5!u%iUp2G8*pFRTFD?KXW8<%s(Su2Vtf)^|4SCK4U?K>HFB?LTg$^5wmt<-9g94o*Y4H^!vyidsLzQKSkaRGgSDe!dWJP2?xGP1~BowW=a@` z+N%}y?lp0y`tsO(6XJ1g4pZqmm26Lt?qu%5CHx_LaRC#)Az8=vDYmW|mlsdt?@law zt|y2Y1g_PGsDQ6{>Mk;HPempB3BEP~)%(hQf`B-^9BNBQ2?nhPEAwl=y!2j&5Nniw zgdii+<0uu&uHzFH0OMK`i|`)>`B{qa?~h^;IR9PbDSg2d>*P&S2)n(_c_m1u#=ZBGRYzKzBC6BI&1^xq3_)g8HxA* zr>Xx-Pk#36yNaXCKiw0nr{$siSA2f^e}|F(yqT(TT0fHcr~-px=M!Wlla%hQ(5@!7LcPdv*O+YlKzYlyb4% zm(||{{%IQSDXf!^CvytrP!)4X`42G@j~RHbgfX<=iyYdhBDe<3=wx8}3lxFuVK^TV z4bw}(#wz!#?|Ye8R#Acdhz`SF528}B^{!!72Lhz;KLhFHzmn_Af-{o=eU(8_H zUum~)Q<{Xf3m3?oTpfP<8dN8ryrVACobbZ?rTPb8Y7DV_|7_sEv?X_T_Z&{J8Ot(9 z6449j+tvA;Ene$}3`o{Sshb(q{swmQqs~~>2+XX=i*%aZA}F6)_D+#hqo&XAdKhV6 zlMAHx&c`0VO?zk$89DWF*T+)p9#&VVaQI<^q_C=zAIRQE4tkC1^1~5 zIHW7LMr%!bVQiObkmae}0vocirs^aHr|W96Cl6+%PI(<6q_x~b8(8e9)3S+HVp2oh zY%>|#nv85iURg})HffRcr(6b{{fXO9sw8ZbV23zE>M6a$Xcv9B+^*N(kw=@XI=c)P zC#7{re1ty2_h-Sv<8r#s8Pi@SU}CI}QNn$ZYkdY?J%=e-8r`JPNoZbwVXPN=xAb`*?&2^su?m|w6Mf5JYC1-OS@(tg82+2?(b5bIPjBqEgi%@#4!8(5E)ECyc1 zFNmN_4PK_6JOk`&o#%a-4Q=s-r9|L3>;hx|_Wl;AK|!Q6Vc&n-<>@9jGzkK+3p3={ z_jYFsPS;rm=*iMWpS!J+%Ek7@dF@O`PhLcJLWXY*AR3-(yX@AbrnX5FZxX5UZXQgYP*p%pt+j3|Q99O8ExU(JabM33a+aMXJ61`Qu9&Mk# zhBho)pT0L0I#!2!#_T|+;7id&YIs_QwK&@80zNYoF>Db}qdzC>4>r*$sLi!4_J*b8xSq8~X3QaR^;gnx5-RDs-KZL}1yj2`d zqYQ}tfdGGMtDkVc$(LO-BX(uCMFTpS!5z+@d)pFx;!HE3 ztu)=X82rL+E;vjroFvE7&v^n4&}V*H{{{;8be^Eo8Wdq6EepgjVx2zT99+1>-TDP~ zOAsvaTA*%j3%B=oCM^PU+0h-UI)LKq0ts@r$~Ee;slxp6EXRHyfDwlxke%<-R|s6eEnkSS zhI&MbT?*F15jgm5UW_lGi5i>1*dS8aK3K_~Q2ZOMTA4y=tp-&z}nu}pRu1(GL?scqI2 zty=qE(Y$GwD`;?-UZKyHT=n^5L}Q)phtyh`qFQx9oyz(g)mqp^VNWbRg9bmZ|I9F; zpa2@~0DKxZyQrrS^R33cBUZ0}GPp@1g5E}Zl>v2*qqRJp{-n*<+6)u%L3PEZ5{nbB z%@ipW{ii~eMkzjjA<2XV8sz$!^8WDDY#y%(Dzc>X;~-0O3>51&p`~Q*^w}Rn(!?H48xgpyo%&wAEGng$9U9LC=XLaAjP+oN9xI~caUY4Afa>fmZ zUKKDV81RC;!Z*kn^$RhJ_5x@=pG?c$&7` zl=&1HKVr2=vRb)9X)=V8Oe6PG1xvY)=d1#IFlh>Wu$hIr&P&F%g)Gj$uRA~{GwH{f%i|dL#K|A>yYuK7 z2d(J0lD!VeFc{Ply5Pk29ud5IdV3=>3BLg!7MqNoEZnJx2O*Z26X;^53IgN_GljAY z@2~gRYp&!)0r99VX6tF&`|J8hlWb6`4cS3ih|W z%+3evWEg_-ZM9;m?Sfo9vMKZ_!?HVxF?L)QG%aY7M~u}xXz^2FHy2aV31ldpQC-iz z5wtaB1_~nvc2#odZLmQK4qQMy@PvR$!1y?aq9wmfkZQ9BCwI08QZxJw5#;B}kGjR% zx9@__!j*olF?+TLH2ip5^U+@U1NBRvA(V_aqGHN@4vyB~ym#eJx5j!9Tzmd|^nm@c zQn=McRh>&OqC`ha@YzdTor@S>Ix=3=rm1eN^NFVIMki5p(V56Fmz}Xy1zOQ|gmRe| zs(LMAck-UilBaIX{iQi&A^Z!F2i5z&B6hrd(fDuUcxvYZ)$#2if`gj9DrdgITE79; zMfAg4i!=}Xla_B=y11QD2_~8aOi1fmt5-n2PK(UE`=j}^fI_wax*ffzNEHpPCLgi` ziLkUp#eU$ZOjOU`5~y8P4vf!hrP-Ah|7!g9g6=-?jjkTXIfj)$*Vb;6NTHuCmk<=I#2&g^z@ghXX3k72m`EZ<~?GJ{iO6u zqusPgwss)ovI%NvuidF!K@sm@i_<^F3QwA zJBX@vG8L-7L(%gwQ=itqcH#0um4cHFWx7^YIgPhqqrwS}zX`gNWCysV^P?by)x}Y_ z{%ne<7$i{ZJFBPeJYl=|=u}AaV)_nt?@@QQ-gu&{ha7_ywrg}0ckQJ}#_l3gFrYY9 z@(phYIdk)v0qGCG56!4n$utfI0`9s%LEd{0&%Ur$fW#G_XmfrMu= zfanp(YoL;_-ENOoJ0BvQ%P!b^y>W=eH3$!vu#622hdAt(S&JX@I{uN1Gh7eZ*dj2M z@o`pBY-(tp)H(9xy&%0;fQZHEJ0qci0I}&nOi!2#v&(AEjmPiJ{fYj=MH?2BF4n;k z4T9-5sUU~Pxf_yMEi)l(*`Y~VR2YVgNQ|FC4quI4PpO(ua3`-N9LEhI zk>y(RzOVUfH`(B7G6A59edlYu`%Qj66~#iSy7#OixFN3OIlrhZjU_i2Ia_LD*~T

!u`D_M>m`4 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≤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 From 345bf92e6d1f9f0f37b5628d1ecdab91dc662d50 Mon Sep 17 00:00:00 2001 From: Yunus Emre Kalkan Date: Mon, 2 Sep 2024 13:17:00 +0300 Subject: [PATCH 11/55] Remove Solution Runner section from adding new gateway/app/service doc --- .../microservice/adding-new-api-gateways.md | 6 ------ .../microservice/adding-new-applications.md | 6 ------ .../microservice/adding-new-microservices.md | 6 ------ 3 files changed, 18 deletions(-) diff --git a/docs/en/solution-templates/microservice/adding-new-api-gateways.md b/docs/en/solution-templates/microservice/adding-new-api-gateways.md index a026f6e884..415452a3bd 100644 --- a/docs/en/solution-templates/microservice/adding-new-api-gateways.md +++ b/docs/en/solution-templates/microservice/adding-new-api-gateways.md @@ -155,12 +155,6 @@ We should configure the AuthServer for **CORS** and **RedirectAllowedUrls**. } ``` -### Add the New Gateway to the Solution Runner - -We should add the new gateway to the solution runner [profile](../../studio/running-applications.md#profile) for running applications in the ABP Studio. You can follow the steps explained in the [Solution Runner](../../studio/running-applications.md#c-application) document to add the new gateway to the solution runner profile. Afterwards, you can start the new gateway by selecting it in the solution runner. - -![public-gateway-solution-runner](images/public-gateway-solution-runner.png) - ## Creating Helm Chart for the New Gateway If you want to deploy the new gateway to Kubernetes, you should create a Helm chart for the new application. diff --git a/docs/en/solution-templates/microservice/adding-new-applications.md b/docs/en/solution-templates/microservice/adding-new-applications.md index 7e3a53cbae..352b18f763 100644 --- a/docs/en/solution-templates/microservice/adding-new-applications.md +++ b/docs/en/solution-templates/microservice/adding-new-applications.md @@ -120,12 +120,6 @@ Add the new application URL to the `appsettings.json` file in the `Identity` ser } ``` -### Add the New Application to the Solution Runner - -We should add the new application to the solution runner [profile](../../studio/running-applications.md#profile) for running applications in the ABP Studio. You can follow the steps explained in the [Solution Runner](../../studio/running-applications.md#c-application) document to add the new application to the solution runner profile. Afterwards, you can start the new application by selecting it in the solution runner. - -![web-public-solution-runner](images/web-public-solution-runner.png) - ## Docker Configuration for Prometheus If you want to monitor the new application with Prometheus when you debug the solution, you should add the new application to the `prometheus.yml` file in the `etc/docker/prometheus` folder. You can copy the configurations from the existing applications and modify them according to the new application. Below is an example of the `prometheus.yml` file for the `WebPublic` application. diff --git a/docs/en/solution-templates/microservice/adding-new-microservices.md b/docs/en/solution-templates/microservice/adding-new-microservices.md index a1728fe925..458457a109 100644 --- a/docs/en/solution-templates/microservice/adding-new-microservices.md +++ b/docs/en/solution-templates/microservice/adding-new-microservices.md @@ -347,12 +347,6 @@ const oAuthConfig = { }; ``` -### Add the New Microservice to the Solution Runner - -We should add the new microservice to the solution runner [profile](../../studio/running-applications.md#profile) for running applications in the ABP Studio. You can follow the steps explained in the [Solution Runner](../../studio/running-applications.md#c-application) document to add the new microservice to the solution runner profile. Afterwards, you can start the new microservice by selecting it in the solution runner. - -![product-service-solution-runner](images/product-service-solution-runner.png) - ## Docker Configuration for Prometheus If you want to monitor the new microservice with Prometheus when you debug the solution, you should add the new microservice to the `prometheus.yml` file in the `etc/docker/prometheus` folder. You can copy the configurations from the existing microservices and modify them according to the new microservice. Below is an example of the `prometheus.yml` file for the `Product` microservice. From 324644dbf29d8f136454c2ec7a9322d03cce1408 Mon Sep 17 00:00:00 2001 From: Ebicoglu Date: Mon, 2 Sep 2024 14:37:08 +0300 Subject: [PATCH 12/55] grammar fix --- .../2024-09-01-Do-You-Need-MultiTenancy/Post.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/docs/en/Community-Articles/2024-09-01-Do-You-Need-MultiTenancy/Post.md b/docs/en/Community-Articles/2024-09-01-Do-You-Need-MultiTenancy/Post.md index fb49f40b2f..6926c5a604 100644 --- a/docs/en/Community-Articles/2024-09-01-Do-You-Need-MultiTenancy/Post.md +++ b/docs/en/Community-Articles/2024-09-01-Do-You-Need-MultiTenancy/Post.md @@ -46,7 +46,7 @@ Ask yourself the following questions if you cannot decide whether your app needs 1. Can a user be shared among other tenants? 2. Any tenant needs to see other tenant's data? -3. Does your application still work if you physically move one of the tenants physically? +3. Does your application break when you physically move one of the tenants?? 4. Do your customers need higher security and better GDPR enforcement? 5. Do you need cumulative queries over your tenants? @@ -72,9 +72,9 @@ On the other hand, if you serve several online shopping websites dedicated to di -##### **3. Does your application still work if you physically move one of the tenants physically?** +##### **3. Does your application break when you physically move one of the tenants?** -If your answer is **YES**, you should **stop making it multi-tenant**. This means your tenants are tightly coupled with the application's infrastructure or database, and this requirement prevents you from making it multi-tenant because it disrupts the entire system when you take out a tenant. +If your answer is **YES**, you should **stop making it multi-tenant**. It is **not a multi-tenant app**! This means your tenants are tightly coupled with the application's infrastructure or database, and this requirement prevents you from making it multi-tenant because it disrupts the entire system when you take out a tenant. @@ -99,11 +99,11 @@ Do you need cumulative queries over your tenants? If your answer is YES, then yo ## Conclusion -- It's important to decide on the first day whether your application needs to be multi-tenant! To decide this, consider these topics; +- It's important to decide on the first day whether your application needs to be multi-tenant. To decide this, consider these topics; - **Do my tenants really have a relationship with each other?** No, they have nothing to do in common; **OK, go with multi-tenancy**. - - **My tenants don't have a relationship** with each other, and the only thing they have in common is sharing my application. **If yes, go with multi-tenancy**. - - If **a tenant leaves the system, will the other tenants be affected** when I remove its data from the system? **If others are not affected, go with multi-tenancy**. + - **My tenants don't have a relationship** with each other, and the only thing they have in common is sharing my application. **OK, go with multi-tenancy**. + - **When a tenant leaves the system (by removing their data), the other tenants also stop working** This means that the tenants are coupled. **Do not do multi-tenancy!** From aca8f53d55984a341e3770b02a6e81153d2ee7b2 Mon Sep 17 00:00:00 2001 From: Fahri Gedik Date: Mon, 2 Sep 2024 14:37:28 +0300 Subject: [PATCH 13/55] Add HowItWorks_Description_Title --- .../AbpIoLocalization/Www/Localization/Resources/en.json | 1 + 1 file changed, 1 insertion(+) diff --git a/abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/en.json b/abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/en.json index 61d068120a..315084738b 100644 --- a/abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/en.json +++ b/abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/en.json @@ -1440,6 +1440,7 @@ "MAUI": "MAUI", "HowItWorks_Page_Title": "How it Works?", "HowItWorks_Page_Description": "Understand how ABP Framework works with detailed documentation, including guides and best practices.", + "HowItWorks_Description_Title": "What’s possible with ASP.NET Core, made easier with ABP!", "HowItWorks_Description1": "ABP extends the .NET platform. So, anything you can do with a plain .NET solution is already possible with ABP. That makes it easy to get started with a low learning curve.", "HowItWorks_Description2": "Once you start learning and using ABP features, developing your software will be much more enjoyable than ever.", "HowItWorks_Description3": "This page basically explains how you use the ABP Platform as a .NET developer.", From d9be97083d3cb0a26823234c5554d1a36f93cb5a Mon Sep 17 00:00:00 2001 From: Ebicoglu Date: Mon, 2 Sep 2024 14:47:35 +0300 Subject: [PATCH 14/55] Update Post.md --- .../2024-09-01-Do-You-Need-MultiTenancy/Post.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/en/Community-Articles/2024-09-01-Do-You-Need-MultiTenancy/Post.md b/docs/en/Community-Articles/2024-09-01-Do-You-Need-MultiTenancy/Post.md index 6926c5a604..a60ec95e27 100644 --- a/docs/en/Community-Articles/2024-09-01-Do-You-Need-MultiTenancy/Post.md +++ b/docs/en/Community-Articles/2024-09-01-Do-You-Need-MultiTenancy/Post.md @@ -46,7 +46,7 @@ Ask yourself the following questions if you cannot decide whether your app needs 1. Can a user be shared among other tenants? 2. Any tenant needs to see other tenant's data? -3. Does your application break when you physically move one of the tenants?? +3. Does your application break when you physically move one of the tenants? 4. Do your customers need higher security and better GDPR enforcement? 5. Do you need cumulative queries over your tenants? From 93571b9822ef82b5e5d308e04b27f50bb9617ec1 Mon Sep 17 00:00:00 2001 From: Fahri Gedik Date: Mon, 2 Sep 2024 14:48:20 +0300 Subject: [PATCH 15/55] Edit title text --- .../AbpIoLocalization/Www/Localization/Resources/en.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/en.json b/abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/en.json index 315084738b..7cfd53b9f5 100644 --- a/abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/en.json +++ b/abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/en.json @@ -1440,7 +1440,7 @@ "MAUI": "MAUI", "HowItWorks_Page_Title": "How it Works?", "HowItWorks_Page_Description": "Understand how ABP Framework works with detailed documentation, including guides and best practices.", - "HowItWorks_Description_Title": "What’s possible with ASP.NET Core, made easier with ABP!", + "HowItWorks_Description_Title": "What’s possible with ASP.NET Core, easier with ABP!", "HowItWorks_Description1": "ABP extends the .NET platform. So, anything you can do with a plain .NET solution is already possible with ABP. That makes it easy to get started with a low learning curve.", "HowItWorks_Description2": "Once you start learning and using ABP features, developing your software will be much more enjoyable than ever.", "HowItWorks_Description3": "This page basically explains how you use the ABP Platform as a .NET developer.", From 26636a5104c6f5b4cf2540613b4560e6bc61a05a Mon Sep 17 00:00:00 2001 From: EngincanV Date: Mon, 2 Sep 2024 15:02:15 +0300 Subject: [PATCH 16/55] Update studio/overview.md --- docs/en/studio/overview.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/docs/en/studio/overview.md b/docs/en/studio/overview.md index c60e80a256..ecfdda52bc 100644 --- a/docs/en/studio/overview.md +++ b/docs/en/studio/overview.md @@ -40,8 +40,9 @@ The top menu is the main menu bar in ABP Studio. It offers access to various fun ### Tools Menu - **Options** - - **Theme:** Allows to change UI theme. -- **Extensions:** Opens the extension management window. + - **Theme:** Allows to change UI theme. +- **Global secrets**: Allows to add global secrets. +- **Global metadata**: Allows to add global metadata. ### Help Menu @@ -50,6 +51,7 @@ The top menu is the main menu bar in ABP Studio. It offers access to various fun - **Community:** Opens the official [ABP Community](https://abp.io/community) website in your browser. - **Support:** Opens the official [Support](https://abp.io/support/questions) website in your browser. - **My Support Questions:** Opens the page on the official Support website in your browser showing the tickets you have opened. +- **Check for updates:** Checks for new version of ABP Studio. - **About:** Opens the about window of ABP Studio where you can get more information about it. ## Welcome Screen From 09e9825fb4cada90a89d3cdcf99e20eb67faf2aa Mon Sep 17 00:00:00 2001 From: maliming Date: Mon, 2 Sep 2024 20:37:03 +0800 Subject: [PATCH 17/55] Hangfire Dashboard Authorization In API Website. --- .../background-jobs/hangfire.md | 69 +++++++++++++++++++ 1 file changed, 69 insertions(+) diff --git a/docs/en/framework/infrastructure/background-jobs/hangfire.md b/docs/en/framework/infrastructure/background-jobs/hangfire.md index 8d5a76509b..af112f8fec 100644 --- a/docs/en/framework/infrastructure/background-jobs/hangfire.md +++ b/docs/en/framework/infrastructure/background-jobs/hangfire.md @@ -154,3 +154,72 @@ app.UseAbpHangfireDashboard("/hangfire", options => **Important**: `UseAbpHangfireDashboard` should be called after the authentication and authorization middlewares in your `Startup` class (probably at the last line). Otherwise, authorization will always fail! + +#### Dashboard Authorization In API Website. + +If you use the hangfire dashboard in a api project that uses non-cookie authentication (like JWT Bearers), The `/hangfire` page can't authenticate the user. + +In this case, you can add a cookies authorization scheme to authenticate the user. The best way to do this is to use the `Cookie` and `OpenIdConnect` authentication schemes. This requires creating a new OAuth2 client and add the `ClientId`, `ClientSecret` properties to the `AuthServer` section in the `appsettings.json` file. + +The final code should look like below: + +```csharp +private void ConfigureAuthentication(ServiceConfigurationContext context, IConfiguration configuration) +{ + context.Services.AddAuthentication(JwtBearerDefaults.AuthenticationScheme) + .AddAbpJwtBearer(options => + { + options.Authority = configuration["AuthServer:Authority"]; + options.RequireHttpsMetadata = configuration.GetValue("AuthServer:RequireHttpsMetadata"); + options.Audience = "MyProjectName"; + }); + + context.Services.AddAuthentication() + .AddCookie("Cookies") + .AddOpenIdConnect("oidc", options => + { + options.Authority = configuration["AuthServer:Authority"]; + options.RequireHttpsMetadata = configuration.GetValue("AuthServer:RequireHttpsMetadata"); + options.ResponseType = OpenIdConnectResponseType.CodeIdToken; + + options.ClientId = configuration["AuthServer:ClientId"]; + options.ClientSecret = configuration["AuthServer:ClientSecret"]; + + options.UsePkce = true; + options.SaveTokens = true; + options.GetClaimsFromUserInfoEndpoint = true; + + options.Scope.Add("roles"); + options.Scope.Add("email"); + options.Scope.Add("phone"); + options.Scope.Add("MyProjectName"); + }); +} +``` + +```csharp +app.Use(async (httpContext, next) => +{ + if (httpContext.Request.Path.StartsWithSegments("/hangfire")) + { + var result = await httpContext.AuthenticateAsync("Cookies"); + if (result.Succeeded) + { + httpContext.User = result.Principal; + await next(httpContext); + return; + } + + await httpContext.ChallengeAsync("oidc"); + } + else + { + await next(httpContext); + } +}); + +app.UseAbpHangfireDashboard("/hangfire", options => +{ + options.AsyncAuthorization = new[] {new AbpHangfireAuthorizationFilter()}; +}); +``` \ No newline at end of file From 8e591c7f129d1da5a45d18f48eeaa1492bf31f56 Mon Sep 17 00:00:00 2001 From: EngincanV Date: Mon, 2 Sep 2024 15:41:03 +0300 Subject: [PATCH 18/55] Create release-notes doc for abp-studio --- docs/en/docs-nav.json | 4 ++ docs/en/studio/release-notes.md | 91 +++++++++++++++++++++++++++++++++ 2 files changed, 95 insertions(+) create mode 100644 docs/en/studio/release-notes.md diff --git a/docs/en/docs-nav.json b/docs/en/docs-nav.json index 10c51a9ca5..aa1ee47bc3 100644 --- a/docs/en/docs-nav.json +++ b/docs/en/docs-nav.json @@ -188,6 +188,10 @@ { "text": "Version Compatibility", "path": "studio/version-compatibility.md" + }, + { + "text": "Release Notes", + "path": "studio/release-notes.md" } ] }, diff --git a/docs/en/studio/release-notes.md b/docs/en/studio/release-notes.md new file mode 100644 index 0000000000..b182669a97 --- /dev/null +++ b/docs/en/studio/release-notes.md @@ -0,0 +1,91 @@ +# ABP Studio Release Notes + +This document contains **brief release notes** for each ABP Studio release. Release notes only include **major features** and **visible enhancements**.Therefore, they don't include all the development done in the related version. + +## 0.7.9 (2024-08-29) + +* Readme.md file is now being automatically opened after opening a solution or module creation +* Refactor & made enhancements for microservice template +* Fixed some bugs those occur while creating a new module +* Synchronized new templates with the old templates +* Angular: Fixed logo problem in templates + +## 0.7.8 (2024-08-23) + +* Revised the new solution creation wizard +* Fixed bugs on blazor webapp template +* Reduced logs count per application + +## 0.7.7 (2024-08-14) + +* Updated LeptonX logos in new templates +* ABP Suite: Open modules with .sln path instead of directory (fixes some problems in Suite integration) +* Enhancements on Solution Runner + +## 0.7.6 (2024-08-12) + +* Removed redundant helm repo installation +* Made enhancements on Welcome Page area +* Microservice Template: Enabled `DynamicPermissionStore` in AuthServer +* Added Blazor WebApp option for Application template +* Added **Solution Creation Info** action for identifying the solution + +## 0.7.5 (2024-08-06) + +* Fixed ABP Suite integration for macOs +* Fixed build errors after upgrading to ABP 8.2.1 +* ABP Suite: Detected version inconsistencies and notified users to fix it automatically + +## 0.7.4 (2024-07-31) + +* Allowed creating open-source templates for active license owners +* Fixed basic theme problem in angular templates +* Handled docker related errors in solution runner gracefully +* Fixed versions of Chat Module packages + +## 0.7.3 (2024-07-27) + +* Added administrator mode indicator on the application title +* Made enhancements for aligning application title on macOS + +## 0.7.2 (2024-07-26) + +* Added `Blazor.Client` packages for alignment with new hosting logic +* Updated Microsoft packages to v8.0.4 +* Revised application upgrade process +* Fixed profile photo problem in tiered projects +* Removed **LinkedAccounts** and **AuthorityDelegation** menu from template + +## 0.7.1 (2024-07-24) + +* Fixed restart problem after installing extensions on macOS +* Provided a model for sharing same Kubernetes cluster between developers +* Fixed the **Text Template Management** Module build problem in app template +* Fixed login problem for community edition +* Fixed all reported bugs & made enhancements + +## 0.7.0 (2024-07-17) + +* Added an option for building & starting C# applications directly +* Disabled redis on migrator when solution is tiered +* Allowed Generating Static Proxies on ABP Studio UI + +## 0.6.9 (2024-06-27) + +* Allowed to open ABP Studio by clicking on an *.abpsln file +* Fixed solution runner multiple instance problem +* Allowed to install a NPM package to a package + +## 0.6.8 (2024-06-13) + +* Added free to pro upgrade option +* Fixed microservice template helm chart bugs +* Made enhancements on new CLI + +## 0.6.7 (2024-05-31) + +* Added free option to app templates +* Made social login as optional for app template +* Added open source templates +* Started showing angular projects on browser tab +* Introduced the community edition \ No newline at end of file From d70697ef9587195bea76d0d8a17d5193cc3ef308 Mon Sep 17 00:00:00 2001 From: EngincanV Date: Mon, 2 Sep 2024 15:47:06 +0300 Subject: [PATCH 19/55] Update release-notes.md --- docs/en/studio/release-notes.md | 48 ++++++++++++++++----------------- 1 file changed, 24 insertions(+), 24 deletions(-) diff --git a/docs/en/studio/release-notes.md b/docs/en/studio/release-notes.md index b182669a97..e2bbddf2eb 100644 --- a/docs/en/studio/release-notes.md +++ b/docs/en/studio/release-notes.md @@ -1,46 +1,46 @@ # ABP Studio Release Notes -This document contains **brief release notes** for each ABP Studio release. Release notes only include **major features** and **visible enhancements**.Therefore, they don't include all the development done in the related version. +This document contains **brief release notes** for each ABP Studio release. Release notes only include **major features** and **visible enhancements**. Therefore, they don't include all the development done in the related version. ## 0.7.9 (2024-08-29) -* Readme.md file is now being automatically opened after opening a solution or module creation -* Refactor & made enhancements for microservice template -* Fixed some bugs those occur while creating a new module +* Opened Readme.md file after module creation or opening a solution +* Refactor & made enhancements to microservice template +* Fixed some bugs that occur while creating a new module * Synchronized new templates with the old templates * Angular: Fixed logo problem in templates ## 0.7.8 (2024-08-23) -* Revised the new solution creation wizard -* Fixed bugs on blazor webapp template +* Revised the new solution creation wizard and improved for UX +* Fixed bugs on the Blazor WebApp template * Reduced logs count per application ## 0.7.7 (2024-08-14) * Updated LeptonX logos in new templates -* ABP Suite: Open modules with .sln path instead of directory (fixes some problems in Suite integration) +* ABP Suite: Opened modules with .sln path instead of directory (fixes some problems in Suite integration) * Enhancements on Solution Runner ## 0.7.6 (2024-08-12) * Removed redundant helm repo installation -* Made enhancements on Welcome Page area +* Made enhancements to the Welcome Page area * Microservice Template: Enabled `DynamicPermissionStore` in AuthServer * Added Blazor WebApp option for Application template * Added **Solution Creation Info** action for identifying the solution ## 0.7.5 (2024-08-06) -* Fixed ABP Suite integration for macOs +* Fixed ABP Suite integration for macOS * Fixed build errors after upgrading to ABP 8.2.1 -* ABP Suite: Detected version inconsistencies and notified users to fix it automatically +* ABP Suite: Detected version inconsistencies and notified users to fix them automatically ## 0.7.4 (2024-07-31) * Allowed creating open-source templates for active license owners -* Fixed basic theme problem in angular templates -* Handled docker related errors in solution runner gracefully +* Fixed basic theme problems in angular templates +* Handled docker related errors in solution runner * Fixed versions of Chat Module packages ## 0.7.3 (2024-07-27) @@ -54,38 +54,38 @@ This document contains **brief release notes** for each ABP Studio release. Rele * Updated Microsoft packages to v8.0.4 * Revised application upgrade process * Fixed profile photo problem in tiered projects -* Removed **LinkedAccounts** and **AuthorityDelegation** menu from template +* Removed **LinkedAccounts** and **AuthorityDelegation** menu from templates ## 0.7.1 (2024-07-24) * Fixed restart problem after installing extensions on macOS -* Provided a model for sharing same Kubernetes cluster between developers -* Fixed the **Text Template Management** Module build problem in app template -* Fixed login problem for community edition +* Provided a model for sharing the same Kubernetes cluster between developers +* Fixed the **Text Template Management** Module build problem in the app template +* Fixed login problem for the community edition * Fixed all reported bugs & made enhancements ## 0.7.0 (2024-07-17) * Added an option for building & starting C# applications directly -* Disabled redis on migrator when solution is tiered +* Disabled redis on migrator when the solution is tiered * Allowed Generating Static Proxies on ABP Studio UI ## 0.6.9 (2024-06-27) -* Allowed to open ABP Studio by clicking on an *.abpsln file +* Allowed to open ABP Studio by clicking on a `*.abpsln` file * Fixed solution runner multiple instance problem -* Allowed to install a NPM package to a package +* Allowed to install an NPM package to a package ## 0.6.8 (2024-06-13) * Added free to pro upgrade option * Fixed microservice template helm chart bugs -* Made enhancements on new CLI +* Made enhancements to the new CLI ## 0.6.7 (2024-05-31) * Added free option to app templates -* Made social login as optional for app template -* Added open source templates -* Started showing angular projects on browser tab -* Introduced the community edition \ No newline at end of file +* Made social login optional for the app template +* Added open-source (free) templates +* Started showing angular projects on the browser tab +* Introduced the Community Edition \ No newline at end of file From 5c665eca079fa70b15ca9c0b8898c45ee0d9b839 Mon Sep 17 00:00:00 2001 From: Ebicoglu Date: Mon, 2 Sep 2024 16:16:02 +0300 Subject: [PATCH 20/55] add images --- .../Post.md | 18 +++++++----------- .../coupled-tenants.png | Bin 0 -> 13125 bytes .../questions.png | Bin 0 -> 18091 bytes .../security-gdpr-db-retention.png | Bin 0 -> 16617 bytes .../shared-entity.png | Bin 0 -> 14762 bytes .../tenancy-schema.png | Bin 34471 -> 12713 bytes .../user-multiple-membership.png | Bin 0 -> 32139 bytes 7 files changed, 7 insertions(+), 11 deletions(-) create mode 100644 docs/en/Community-Articles/2024-09-01-Do-You-Need-MultiTenancy/coupled-tenants.png create mode 100644 docs/en/Community-Articles/2024-09-01-Do-You-Need-MultiTenancy/questions.png create mode 100644 docs/en/Community-Articles/2024-09-01-Do-You-Need-MultiTenancy/security-gdpr-db-retention.png create mode 100644 docs/en/Community-Articles/2024-09-01-Do-You-Need-MultiTenancy/shared-entity.png create mode 100644 docs/en/Community-Articles/2024-09-01-Do-You-Need-MultiTenancy/user-multiple-membership.png diff --git a/docs/en/Community-Articles/2024-09-01-Do-You-Need-MultiTenancy/Post.md b/docs/en/Community-Articles/2024-09-01-Do-You-Need-MultiTenancy/Post.md index a60ec95e27..e5b7cc1189 100644 --- a/docs/en/Community-Articles/2024-09-01-Do-You-Need-MultiTenancy/Post.md +++ b/docs/en/Community-Articles/2024-09-01-Do-You-Need-MultiTenancy/Post.md @@ -25,13 +25,7 @@ It’s an architectural approach to building SaaS solutions. In this model, the **Developing a multi-tenant application is harder** compared to non-multi-tenant applications. You add `TenandId` to all your shared entities. And each time you make a query, you need to filter by `TenantId`. There is an increased risk of security breaches if one tenant's data is compromised. Multi-tenancy can limit the extent of customization available to each tenant since they all operate on the same core infrastructure. Also, in a microservice environment, things get two times more complicated. So you should carefully consider if you need multi-tenancy or not. Sometimes, I got questions like; -> Our customer has branches in different cities, so should I make this application a multi-tenant? - -Or ; - -> Our university has different faculties; should I make each faculty a different tenant? - - +![Questions](questions.png) **No! These are not multi-tenant applications.** It just needs a simple filtering by your different branches/faculties/departments/holding sub-companies/ groups or whatever hierarchy is… You are confusing "grouping" with "resource sharing". @@ -60,13 +54,15 @@ Let's answer these questions; If you need to *share a user among other tenants, or in other words, users can be members of different tenants,* then **your application is definitely not multi-tenant**! Multi-tenancy means a tenant’s data is always isolated, even if it’s logically separated. **You cannot share a user among your tenants.** The reason is simple: In the future, if you move a tenant to on-premise, then your application will break! - +![user-multiple-membership](user-multiple-membership.png) ##### **2. Does any tenant need to see other tenants' data?** If your answer is **YES**, **then** **your application is not multi-tenant**. In multi-tenant apps, the tenant's data cannot be shared in any circumstances among the other tenants. Business decision-makers sometimes want to share some entities with other tenants. If there's this requirement, you shouldn't start a multi-tenant architecture. You can simply group these tenants manually. Again, reply to this question; **In the future, if I move a tenant physically to another environment, will my app still work properly?** In this case, it will not! -Let's say your app is *Amazon.com* and you have a product entity "iPhone 16 Pro Max" that you want to share with the sellers. This requirement violates the multi-tenant rule. While your *Amazon.com* is still SaaS, it shouldn't be multi-tenant. +![Shared entity](shared-entity.png) + +Let's say your app is *Amazon.com* and you have a product entity *iPhone* that you want to share with other sellers. This requirement violates the multi-tenant rule. While your *Amazon.com* is still SaaS, it shouldn't be multi-tenant. On the other hand, if you serve several online shopping websites dedicated to different brands. Let's say Nike and Adidas want to have their own e-commerce websites. And your ***Amazon.com* provides these companies with their own subdomains: *nike.amazon.com* and *adidas.amazon.com***. In this architecture, these companies will have their own user, roles, settings. Also these companies will have their own branding like custom login screen, custom logo, different theme layouts, menu items, language options, payment gateways etc... Hence, **this is %100 multi-tenant.** @@ -76,14 +72,14 @@ On the other hand, if you serve several online shopping websites dedicated to di If your answer is **YES**, you should **stop making it multi-tenant**. It is **not a multi-tenant app**! This means your tenants are tightly coupled with the application's infrastructure or database, and this requirement prevents you from making it multi-tenant because it disrupts the entire system when you take out a tenant. - +![Coupled Tenants](coupled-tenants.png) ##### **4. Do your customers need higher security and better GDPR enforcement?** If your answer is **YES**, you **should not make it multi-tenancy.** When a **hacker** gets into your server, he can **steal all your client data**. Also, if you have a security hole, **a tenant can gain access** to other tenants' data. Especially your tenants' data is being shared in the same database... On the other hand, some customers, for example, government agencies or banks, may be required to locate the database in their own geo-location and make it unreachable from the main application. In this case, you should go with a single-tenant architecture. Another difficulty is that some tenants may have **different data retention policies**, so you must implement different strategies for each tenant. In this case, you should also consider making it a single-tenant. - +![Security GDPR Data Retention](security-gdpr-db-retention.png) ##### **5. Do you need cumulative queries over your tenants?** diff --git a/docs/en/Community-Articles/2024-09-01-Do-You-Need-MultiTenancy/coupled-tenants.png b/docs/en/Community-Articles/2024-09-01-Do-You-Need-MultiTenancy/coupled-tenants.png new file mode 100644 index 0000000000000000000000000000000000000000..5dbe0890844c657f636265bfbf8fcdff49ffd46f GIT binary patch literal 13125 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

#G{A? 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 literal 0 HcmV?d00001 diff --git a/docs/en/Community-Articles/2024-09-01-Do-You-Need-MultiTenancy/shared-entity.png b/docs/en/Community-Articles/2024-09-01-Do-You-Need-MultiTenancy/shared-entity.png new file mode 100644 index 0000000000000000000000000000000000000000..bb9b5d979dc02f8f6e9cc28168141e3104458c83 GIT binary patch literal 14762 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 H-uwM86C1>| literal 0 HcmV?d00001 diff --git a/docs/en/Community-Articles/2024-09-01-Do-You-Need-MultiTenancy/tenancy-schema.png b/docs/en/Community-Articles/2024-09-01-Do-You-Need-MultiTenancy/tenancy-schema.png index 9c0d6962ff86b94a178453d5fa5eaad330e7b322..952aca726671cacc3f8a1b9ec4dbb5adc2271943 100644 GIT binary patch literal 12713 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℘m~aovwMW&&(VUk$Lz$& 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 literal 0 HcmV?d00001 From 67da5b5dc3fd878178ac62d21e9fc50682c66593 Mon Sep 17 00:00:00 2001 From: Masum ULU <49063256+masum-ulu@users.noreply.github.com> Date: Mon, 2 Sep 2024 19:54:27 +0300 Subject: [PATCH 21/55] Update current-user.component.html --- .../lib/components/nav-items/current-user.component.html | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/npm/ng-packs/packages/theme-basic/src/lib/components/nav-items/current-user.component.html b/npm/ng-packs/packages/theme-basic/src/lib/components/nav-items/current-user.component.html index 2559e52161..0da02b7fe3 100644 --- a/npm/ng-packs/packages/theme-basic/src/lib/components/nav-items/current-user.component.html +++ b/npm/ng-packs/packages/theme-basic/src/lib/components/nav-items/current-user.component.html @@ -56,9 +56,7 @@ } @else { - - {{ - 'AbpAccount::Login' | abpLocalization - }} - + + {{ 'AbpAccount::Login' | abpLocalization }} + } From a7d99605bdfb08ebb085b89b299918699daadcad Mon Sep 17 00:00:00 2001 From: Fahri Gedik Date: Mon, 2 Sep 2024 22:20:21 +0300 Subject: [PATCH 22/55] Update en.json for Submit post --- .../AbpIoLocalization/Www/Localization/Resources/en.json | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/en.json b/abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/en.json index 61d068120a..bf455c7c26 100644 --- a/abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/en.json +++ b/abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/en.json @@ -569,6 +569,11 @@ "CreatePostTitleInfo": "Title of the post to be shown on the post list.", "CreatePostSummaryInfo": "A short summary of the post to be shown on the post list. Maximum length: {0}", "CreatePostCoverInfo": "For creating an effective post, add a cover photo. Upload 16:9 aspect ratio pictures for the best view.
Maximum file size: 1MB.", + "CreatePostCoverInfo_Title": "Add a cover image to your post.", + "CreatePostCoverInfo1": " Accepted file types : JPEG, JPG, PNG", + "CreatePostCoverInfo2": " Max file size : 1 MB", + "CreatePostCoverInfo3": " Image proportion : 16:9", + "CreatePostCoverInfo4": " Download a sample cover image ", "ThisExtensionIsNotAllowed": "This extension is not allowed.", "TheFileIsTooLarge": "The file is too large.", "GoToThePost": "Go to the Post", From 9ec7985ab72562b7cd315fd55979b1730293628e Mon Sep 17 00:00:00 2001 From: maliming Date: Tue, 3 Sep 2024 08:42:19 +0800 Subject: [PATCH 23/55] Add optional X509KeyStorageFlags parameter to `AddProductionEncryptionAndSigningCertificate`. --- .../OpenIddictServerBuilderExtensions.cs | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/modules/openiddict/src/Volo.Abp.OpenIddict.AspNetCore/Microsoft/Extensions/DependencyInjection/OpenIddictServerBuilderExtensions.cs b/modules/openiddict/src/Volo.Abp.OpenIddict.AspNetCore/Microsoft/Extensions/DependencyInjection/OpenIddictServerBuilderExtensions.cs index c99ce5e245..e5f2d7222a 100644 --- a/modules/openiddict/src/Volo.Abp.OpenIddict.AspNetCore/Microsoft/Extensions/DependencyInjection/OpenIddictServerBuilderExtensions.cs +++ b/modules/openiddict/src/Volo.Abp.OpenIddict.AspNetCore/Microsoft/Extensions/DependencyInjection/OpenIddictServerBuilderExtensions.cs @@ -5,14 +5,17 @@ namespace Microsoft.Extensions.DependencyInjection; public static class OpenIddictServerBuilderExtensions { - public static OpenIddictServerBuilder AddProductionEncryptionAndSigningCertificate(this OpenIddictServerBuilder builder, string fileName, string passPhrase) + public static OpenIddictServerBuilder AddProductionEncryptionAndSigningCertificate(this OpenIddictServerBuilder builder, string fileName, string passPhrase, X509KeyStorageFlags? flag) { if (!File.Exists(fileName)) { throw new FileNotFoundException($"Signing Certificate couldn't found: {fileName}"); } - var certificate = new X509Certificate2(fileName, passPhrase); + var certificate = flag != null + ? new X509Certificate2(fileName, passPhrase, flag.Value) + : new X509Certificate2(fileName, passPhrase); + builder.AddSigningCertificate(certificate); builder.AddEncryptionCertificate(certificate); return builder; From 6ea31b2421b53095c9b8bba337dc3aabfeb549a3 Mon Sep 17 00:00:00 2001 From: maliming Date: Tue, 3 Sep 2024 14:07:48 +0800 Subject: [PATCH 24/55] Update modules/openiddict/src/Volo.Abp.OpenIddict.AspNetCore/Microsoft/Extensions/DependencyInjection/OpenIddictServerBuilderExtensions.cs MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: SALİH ÖZKARA --- .../DependencyInjection/OpenIddictServerBuilderExtensions.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/openiddict/src/Volo.Abp.OpenIddict.AspNetCore/Microsoft/Extensions/DependencyInjection/OpenIddictServerBuilderExtensions.cs b/modules/openiddict/src/Volo.Abp.OpenIddict.AspNetCore/Microsoft/Extensions/DependencyInjection/OpenIddictServerBuilderExtensions.cs index e5f2d7222a..7ba0fc9340 100644 --- a/modules/openiddict/src/Volo.Abp.OpenIddict.AspNetCore/Microsoft/Extensions/DependencyInjection/OpenIddictServerBuilderExtensions.cs +++ b/modules/openiddict/src/Volo.Abp.OpenIddict.AspNetCore/Microsoft/Extensions/DependencyInjection/OpenIddictServerBuilderExtensions.cs @@ -5,7 +5,7 @@ namespace Microsoft.Extensions.DependencyInjection; public static class OpenIddictServerBuilderExtensions { - public static OpenIddictServerBuilder AddProductionEncryptionAndSigningCertificate(this OpenIddictServerBuilder builder, string fileName, string passPhrase, X509KeyStorageFlags? flag) + public static OpenIddictServerBuilder AddProductionEncryptionAndSigningCertificate(this OpenIddictServerBuilder builder, string fileName, string passPhrase, X509KeyStorageFlags? flag = null) { if (!File.Exists(fileName)) { From 8d9198b54f403be33b7ebdad8aef7989530d0007 Mon Sep 17 00:00:00 2001 From: Engincan VESKE Date: Tue, 3 Sep 2024 09:36:47 +0300 Subject: [PATCH 25/55] Update hangfire.md --- .../framework/infrastructure/background-jobs/hangfire.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/en/framework/infrastructure/background-jobs/hangfire.md b/docs/en/framework/infrastructure/background-jobs/hangfire.md index af112f8fec..396c7498b5 100644 --- a/docs/en/framework/infrastructure/background-jobs/hangfire.md +++ b/docs/en/framework/infrastructure/background-jobs/hangfire.md @@ -155,11 +155,11 @@ app.UseAbpHangfireDashboard("/hangfire", options => **Important**: `UseAbpHangfireDashboard` should be called after the authentication and authorization middlewares in your `Startup` class (probably at the last line). Otherwise, authorization will always fail! -#### Dashboard Authorization In API Website. +#### Dashboard Authorization In API Projects -If you use the hangfire dashboard in a api project that uses non-cookie authentication (like JWT Bearers), The `/hangfire` page can't authenticate the user. +If you use the hangfire dashboard in an API project that uses non-cookie authentication (like JWT Bearers), The `/hangfire` page can't authenticate the user. -In this case, you can add a cookies authorization scheme to authenticate the user. The best way to do this is to use the `Cookie` and `OpenIdConnect` authentication schemes. This requires creating a new OAuth2 client and add the `ClientId`, `ClientSecret` properties to the `AuthServer` section in the `appsettings.json` file. +In this case, you can add a cookies authorization scheme to authenticate the user. The best way to do this is to use the `Cookie` and `OpenIdConnect` authentication schemes. This requires creating a new OAuth2 client and adding the `ClientId`, and `ClientSecret` properties to the `AuthServer` section in the `appsettings.json` file. The final code should look like below: @@ -222,4 +222,4 @@ app.UseAbpHangfireDashboard("/hangfire", options => { options.AsyncAuthorization = new[] {new AbpHangfireAuthorizationFilter()}; }); -``` \ No newline at end of file +``` From 4a4e6fb258db5b42b9a9a8a8e7c14e2bf68252d8 Mon Sep 17 00:00:00 2001 From: Berkan Sasmaz Date: Tue, 3 Sep 2024 11:02:15 +0300 Subject: [PATCH 26/55] Add studio issue template --- .github/ISSUE_TEMPLATE/03_studio.yml | 94 +++++++++++++++++++ ...cle_request.yml => 04_article_request.yml} | 0 ...mance_issue.md => 05_performance_issue.md} | 0 .../{05_blank_issue.md => 06_blank_issue.md} | 0 4 files changed, 94 insertions(+) create mode 100644 .github/ISSUE_TEMPLATE/03_studio.yml rename .github/ISSUE_TEMPLATE/{03_article_request.yml => 04_article_request.yml} (100%) rename .github/ISSUE_TEMPLATE/{04_performance_issue.md => 05_performance_issue.md} (100%) rename .github/ISSUE_TEMPLATE/{05_blank_issue.md => 06_blank_issue.md} (100%) diff --git a/.github/ISSUE_TEMPLATE/03_studio.yml b/.github/ISSUE_TEMPLATE/03_studio.yml new file mode 100644 index 0000000000..51f87c5d84 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/03_studio.yml @@ -0,0 +1,94 @@ +name: 🤠 ABP Studio +description: Create a report to help us improve the ABP Studio +labels: [studio] +body: + - type: markdown + attributes: + value: | + We welcome bug reports! This template will help us gather the information we need to start the triage process. + + Please keep in mind that the GitHub issue tracker is not intended as a general support forum, but for reporting **non-security** bugs and feature requests. + If you believe you have an issue that affects the SECURITY of the platform, please do NOT create an issue and instead email your issue details to info@abp.io. + For other types of questions, consider using [StackOverflow](https://stackoverflow.com/questions/tagged/abp). + - type: checkboxes + id: searched + attributes: + label: Is there an existing issue for this? + description: Please search to see if an issue already exists for the bug you encountered or feature request ([abp/issues](https://github.com/abpframework/abp/issues?q=is%3Aopen+is%3Aissue+label%3Astudio)). + options: + - label: I have searched the existing issues + required: true + - type: textarea + id: background + attributes: + label: Description + description: Please share a clear and concise description of the problem. + placeholder: Description + validations: + required: true + - type: markdown + attributes: + value: | + ## Setup + Please provide more information on your ABP Studio setup. + - type: input + id: version + attributes: + label: Version + description: Which version of ABP Studio are you using? + placeholder: Version + validations: + required: true + - type: dropdown + id: Operation-System + attributes: + label: Operation System + description: What is the operation system of the computer? + options: + - Windows (Default) + - Linux + - macOS + - Others + validations: + required: true + - type: textarea + id: solution-config + attributes: + label: Solution Configuration + description: | + If there is an open solution, what are the configurations of the solution? + 🧐 Hint: You can see all the information about your solution from the configuration window, which opens when you right-click on the [solution](https://abp.io/docs/latest/studio/solution-explorer#solution) and click on the Solution Configuration button. + placeholder: | + - **Template**: app + - **Created ABP Studio Version**: 0.7.9 + - **Tiered**: No + - **UI Framework**: mvc + - **Theme**: leptonx + - **Theme Style**: system + - **Database Provider**: ef + - **Database Management System**: sqlserver + - **Separate Tenant Schema**: No + - **Mobile Framework**: none + - **Public Website**: No + - **Optional Modules**: + * GDPR + * TextTemplateManagement + * LanguageManagement + * AuditLogging + * SaaS + * OpenIddictAdmin + validations: + required: false + - type: markdown + attributes: + value: | + --- + - type: textarea + id: other-info + attributes: + label: Other information + description: | + If you have an idea where the problem might lie, let us know that here. Please include any pointers to code, relevant changes, or related issues you know of. + placeholder: Other information + validations: + required: false diff --git a/.github/ISSUE_TEMPLATE/03_article_request.yml b/.github/ISSUE_TEMPLATE/04_article_request.yml similarity index 100% rename from .github/ISSUE_TEMPLATE/03_article_request.yml rename to .github/ISSUE_TEMPLATE/04_article_request.yml diff --git a/.github/ISSUE_TEMPLATE/04_performance_issue.md b/.github/ISSUE_TEMPLATE/05_performance_issue.md similarity index 100% rename from .github/ISSUE_TEMPLATE/04_performance_issue.md rename to .github/ISSUE_TEMPLATE/05_performance_issue.md diff --git a/.github/ISSUE_TEMPLATE/05_blank_issue.md b/.github/ISSUE_TEMPLATE/06_blank_issue.md similarity index 100% rename from .github/ISSUE_TEMPLATE/05_blank_issue.md rename to .github/ISSUE_TEMPLATE/06_blank_issue.md From c4595f281c98aa338d05dc293817f7c5f7594249 Mon Sep 17 00:00:00 2001 From: Berkan Sasmaz Date: Tue, 3 Sep 2024 11:03:44 +0300 Subject: [PATCH 27/55] Update 03_studio.yml --- .github/ISSUE_TEMPLATE/03_studio.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/ISSUE_TEMPLATE/03_studio.yml b/.github/ISSUE_TEMPLATE/03_studio.yml index 51f87c5d84..c6839403d7 100644 --- a/.github/ISSUE_TEMPLATE/03_studio.yml +++ b/.github/ISSUE_TEMPLATE/03_studio.yml @@ -57,7 +57,7 @@ body: label: Solution Configuration description: | If there is an open solution, what are the configurations of the solution? - 🧐 Hint: You can see all the information about your solution from the configuration window, which opens when you right-click on the [solution](https://abp.io/docs/latest/studio/solution-explorer#solution) and click on the Solution Configuration button. + 🧐 Hint: You can see all the information about your solution from the configuration window, which opens when you right-click on the [solution](https://abp.io/docs/latest/studio/solution-explorer#solution) and click on the `Solution Configuration` button. placeholder: | - **Template**: app - **Created ABP Studio Version**: 0.7.9 From 7867d473414261899a9c38b8b1bf16c124fc5097 Mon Sep 17 00:00:00 2001 From: sumeyyeKurtulus Date: Tue, 3 Sep 2024 11:04:17 +0300 Subject: [PATCH 28/55] fix: logic to grant permissions in a right way --- .../permission-management.component.ts | 100 +++++++++--------- 1 file changed, 49 insertions(+), 51 deletions(-) diff --git a/npm/ng-packs/packages/permission-management/src/lib/components/permission-management.component.ts b/npm/ng-packs/packages/permission-management/src/lib/components/permission-management.component.ts index cabc903d95..31bbc19ab4 100644 --- a/npm/ng-packs/packages/permission-management/src/lib/components/permission-management.component.ts +++ b/npm/ng-packs/packages/permission-management/src/lib/components/permission-management.component.ts @@ -171,23 +171,14 @@ export class PermissionManagementComponent } onClickCheckbox(clickedPermission: PermissionGrantInfoDto) { - if ( - clickedPermission.isGranted && - this.isGrantedByOtherProviderName(clickedPermission.grantedProviders) - ) + const { isGranted, grantedProviders } = clickedPermission; + if (isGranted && this.isGrantedByOtherProviderName(grantedProviders)) { return; + } + this.setSelectedGroup(this.selectedGroup); setTimeout(() => { - this.permissions = this.permissions.map(per => { - if (clickedPermission.name === per.name) { - return { ...per, isGranted: !per.isGranted }; - } else if (clickedPermission.name === per.parentName && clickedPermission.isGranted) { - return { ...per, isGranted: false }; - } else if (clickedPermission.parentName === per.name && !clickedPermission.isGranted) { - return { ...per, isGranted: true }; - } - return per; - }); + this.updatePermissionStatus(clickedPermission); this.updateSelectedGroupPermissions(clickedPermission); this.setTabCheckboxState(); this.setGrantCheckboxState(); @@ -195,31 +186,58 @@ export class PermissionManagementComponent }, 0); } - setParentClicked(clickedPermission: PermissionGrantInfoDto) { - const parentPermissions: PermissionGrantInfoDto[] = findAllParentPermissions( - this.permissions, - clickedPermission, - ); + updatePermissionStatus(clickedPermission: PermissionGrantInfoDto) { + this.permissions = this.permissions.map(permission => { + const isExactMatch = clickedPermission.name == permission.name; + const isParentOfPermission = clickedPermission.parentName === permission.name; + const isChildOfPermission = clickedPermission.name === permission.parentName; + + if (isExactMatch) { + return { ...permission, isGranted: !permission.isGranted }; + } + if (isChildOfPermission && permission.isGranted) { + return { ...permission, isGranted: false }; + } + + if (isParentOfPermission && !permission.isGranted) { + return { ...permission, isGranted: true }; + } + + return permission; + }); + } + + setParentClicked(clickedPermission: PermissionGrantInfoDto) { if (clickedPermission.parentName) { - if (parentPermissions.length) { + const parentPermissions = findParentPermissions(this.permissions, clickedPermission); + if (parentPermissions.length > 0) { + const parentNames = new Set(parentPermissions.map(parent => parent.name)); + this.permissions = this.permissions.map(per => { - parentPermissions.forEach(parent => { - if (per.name === parent.name) { - per.isGranted = true; - } - }); - return per; + let updatedIsGranted = per.isGranted; + + if (per.parentName === clickedPermission.name && !clickedPermission.isGranted) { + updatedIsGranted = false; + } + + if (parentNames.has(per.name)) { + updatedIsGranted = true; + } + + return { ...per, isGranted: updatedIsGranted }; }); } return; } this.permissions = this.permissions.map(per => { - const root = findRootParent(this.permissions, per); - if (root) { - if (root.name === clickedPermission.name && !root.isGranted) { - per.isGranted = false; + const parents = findParentPermissions(this.permissions, per); + if (parents.length > 0) { + const rootParent = parents[parents.length - 1]; + + if (rootParent.name === clickedPermission.name && !rootParent.isGranted) { + return { ...per, isGranted: false }; } } return per; @@ -385,10 +403,9 @@ export class PermissionManagementComponent } } -function traverseParentPermissions( +function findParentPermissions( permissions: PermissionGrantInfoDto[], permission: PermissionGrantInfoDto, - collectAll = false, ): PermissionGrantInfoDto[] { const permissionMap = new Map(permissions.map(p => [p.name, p])); let currentPermission = permissionMap.get(permission.name) ?? null; @@ -401,30 +418,11 @@ function traverseParentPermissions( } parentPermissions.push(parentPermission); currentPermission = parentPermission; - - if (!collectAll) { - break; - } } return parentPermissions; } -function findRootParent( - permissions: PermissionGrantInfoDto[], - permission: PermissionGrantInfoDto, -): PermissionGrantInfoDto | null { - const parentPermissions = traverseParentPermissions(permissions, permission); - return parentPermissions.length ? parentPermissions[parentPermissions.length - 1] : null; -} - -function findAllParentPermissions( - permissions: PermissionGrantInfoDto[], - permission: PermissionGrantInfoDto, -): PermissionGrantInfoDto[] { - return traverseParentPermissions(permissions, permission, true); -} - function findMargin( permissions: PermissionGrantInfoDto[], permission: PermissionGrantInfoDto, From 94bbae8832802c9ac4b3c45ed1db8dcade1fe96c Mon Sep 17 00:00:00 2001 From: Ebicoglu Date: Tue, 3 Sep 2024 11:06:15 +0300 Subject: [PATCH 29/55] Update Post.md --- .../2024-09-01-Do-You-Need-MultiTenancy/Post.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/en/Community-Articles/2024-09-01-Do-You-Need-MultiTenancy/Post.md b/docs/en/Community-Articles/2024-09-01-Do-You-Need-MultiTenancy/Post.md index e5b7cc1189..b80917f4c4 100644 --- a/docs/en/Community-Articles/2024-09-01-Do-You-Need-MultiTenancy/Post.md +++ b/docs/en/Community-Articles/2024-09-01-Do-You-Need-MultiTenancy/Post.md @@ -28,7 +28,7 @@ It’s an architectural approach to building SaaS solutions. In this model, the ![Questions](questions.png) **No! These are not multi-tenant applications.** It just needs a simple filtering by your different branches/faculties/departments/holding sub-companies/ groups or whatever hierarchy is… -You are confusing "grouping" with "resource sharing". +**You are confusing "grouping" with "resource sharing".** --- From 8e1a5879739ad4761107fa0b3cfd84f30072722f Mon Sep 17 00:00:00 2001 From: Engincan VESKE Date: Tue, 3 Sep 2024 11:30:56 +0300 Subject: [PATCH 30/55] Update road-map.md --- docs/en/release-info/road-map.md | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/docs/en/release-info/road-map.md b/docs/en/release-info/road-map.md index 7bba375001..6c14efefda 100644 --- a/docs/en/release-info/road-map.md +++ b/docs/en/release-info/road-map.md @@ -4,18 +4,17 @@ This document provides a road map, release schedule, and planned features for th ## Next Versions -### v8.2 +### v8.3 -The next version will be 8.2 and planned to release the stable 8.2 version in June 2024. We will be mostly working on the following topics: +The next version will be 8.3 and we will be mostly working on the following topics: -* ABP Studio Community Edition -* Blazor Full-Stack UI ([#18289](https://github.com/abpframework/abp/issues/18289)) -* Angular Universal ([#15782](https://github.com/abpframework/abp/issues/15782)) -* Upgrading React Native template to the latest major release 0.72.7 ([#18191](https://github.com/abpframework/abp/issues/18191)) -* Deployment Documents Improvements ([#15034](https://github.com/abpframework/abp/issues/15034)) -* Improvements on the existing features and provide more guides. +* CMS Kit: Marked Items/Favorites & Approvement System for Comments +* Docs Module: Added Google Translation Support & Introducing the Single Project Mode +* Using DBFunction for Global Query Filters +* Upgrade Angular Version to v18.1.x +* Improvements on the existing features and provide more guides... -See the [8.2 milestone](https://github.com/abpframework/abp/milestone/95) for all the issues we've planned to work on. +See the [8.3 milestone](https://github.com/abpframework/abp/milestone/106) for all the issues we've planned to work on. ## Backlog Items From e61793ad051893c2c707a4132b5979f0bb938ad1 Mon Sep 17 00:00:00 2001 From: Yunus Emre Kalkan Date: Tue, 3 Sep 2024 14:32:55 +0300 Subject: [PATCH 31/55] Update adding-new-microservices.md --- .../microservice/adding-new-microservices.md | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/docs/en/solution-templates/microservice/adding-new-microservices.md b/docs/en/solution-templates/microservice/adding-new-microservices.md index 458457a109..4a82ee6a55 100644 --- a/docs/en/solution-templates/microservice/adding-new-microservices.md +++ b/docs/en/solution-templates/microservice/adding-new-microservices.md @@ -41,20 +41,16 @@ The new microservice is created and added to the solution. You can see the new m ### Configuring the appsettings.json The new microservice is created with the necessary configurations and dependencies. We should configure several sections by modifying the `appsettings.json` file: - * Set the `Administration` & `AbpBlobStoring` connection strings. * Set the `CorsOrigins` to allow the web gateway to access the microservice. * Set the `AuthServer` configurations to enable the microservice to authenticate and authorize users. - * Set the correct `StringEncryption` key. You can copy the configurations from the existing microservices and modify them according to the new microservice. Below is an example of the `appsettings.json` file for the `ProductService` microservice. ```diff { "ConnectionStrings": { -- "Administration": "Administration_Database", -- "AbpBlobStoring": "BlobStoring_Database", -+ "Administration": "Server=localhost,1434; User Id=sa; Password=myPassw@rd; Database=Bookstore_Administration; TrustServerCertificate=true", -+ "AbpBlobStoring": "Server=localhost,1434; User Id=sa; Password=myPassw@rd; Database=Bookstore_BlobStoring; TrustServerCertificate=true", + "Administration": "Server=localhost,1434; User Id=sa; Password=myPassw@rd; Database=Bookstore_Administration; TrustServerCertificate=true", + "AbpBlobStoring": "Server=localhost,1434; User Id=sa; Password=myPassw@rd; Database=Bookstore_BlobStoring; TrustServerCertificate=true", "ProductService": "Server=localhost,1434; User Id=sa; Password=myPassw@rd; Database=Bookstore_ProductService; TrustServerCertificate=true" }, "App": { @@ -100,8 +96,7 @@ You can copy the configurations from the existing microservices and modify them "Url": "http://localhost:9200" }, "StringEncryption": { -- "DefaultPassPhrase": "string_encrryption_key" -+ "DefaultPassPhrase": "PDAWjbshpwlOwNB6" + "DefaultPassPhrase": "PDAWjbshpwlOwNB6" } } ``` From 0c0f4b67beb2a8da4999e793958884478c99bbd6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Halil=20=C4=B0brahim=20Kalkan?= Date: Tue, 3 Sep 2024 15:39:53 +0300 Subject: [PATCH 32/55] Revisit the abp 9.0 road map --- docs/en/release-info/road-map.md | 44 +++++++++++++++++++++++++------- 1 file changed, 35 insertions(+), 9 deletions(-) diff --git a/docs/en/release-info/road-map.md b/docs/en/release-info/road-map.md index 1e3fe105ac..400b5b8d25 100644 --- a/docs/en/release-info/road-map.md +++ b/docs/en/release-info/road-map.md @@ -8,18 +8,44 @@ This document provides a road map, release schedule, and planned features for th The next version will be 9.0 and planned to release the stable 9.0 version in November 2024. We will be mostly working on the following topics: -* Upgrading to .NET 9 -* Introducing `Extension Property Policy` feature -* Handling localization resources in a microservice scenario -* ABP Suite: Show default template for customized templates for better sync. -* Microservice development tutorials -* Improvements on the existing features and provide more guides. - -See the [9.0 milestone](https://github.com/abpframework/abp/milestone/104) for all the issues we've planned to work on. +* Framework + * Upgrading to .NET 9.0 + * Google Cloud Storage BLOB Provider + * Better handling localization resources in a microservice scenario + * SSR support for the Angular UI + * Upgrading 3rd-party dependencies + +* ABP Suite + * Multiple navigation properties to the same target entity + * Define navigation properties without target string property dependency + * Improvements one-to-many scenarios + * Access to default code generation templates for customized templates + +* ABP Studio + * Blazor WebApp UI option for the new startup templates + * Execution order (dependency management) for Solution Runner + * Automate more details on new service creation for a microservice solution + * Support multiple concurrent Kubernetes deployment/integration scenarios + * Show the README file when you create a new solution or open an existing solution + * Improve ABP Suite code-generation possibilities for microservice solutions + * Improve the module installation experience + * Auto-install 3rd-party dependencies + * Better handle long log files + * Allow to directly create new solutions with ABP's RC (Release Candidate) versions + * Support Intel processors for Mac computers, support ARM chipset for Windows and support Linux OS + * Improve client proxy generation experience + +* Application modules + * Account module: Support mixed social/local login scenarios + * UI/UX improvements on existing [application modules](../modules/index.md) + +* New tutorials + * Modular monolith development + * Microservice development ## Backlog Items -The *Next Versions* section above shows the main focus of the planned versions. However, in each release, we add new features to the core framework and the [application modules](../modules). +The *Next Versions* section above shows the main focus of the planned versions. However, in each release, we add new features to the core framework and the [application modules](../modules/index.md). Here is a list of major items in the backlog we are considering working on in the next versions. From 796ce51d718d16a7cacd6080c7ff4f5b80cf6c90 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?SAL=C4=B0H=20=C3=96ZKARA?= Date: Tue, 3 Sep 2024 16:03:35 +0300 Subject: [PATCH 33/55] Fix: Blog tag problem --- .../Volo/Blogging/Posts/PostAppService.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 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 d1825f4475..0d612dfb0c 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 @@ -308,7 +308,7 @@ namespace Volo.Blogging.Posts foreach (var newTag in newTags) { - var tag = tags.FirstOrDefault(t => t.Name == newTag); + var tag = tags.FirstOrDefault(t => t.Name.Equals(newTag, StringComparison.OrdinalIgnoreCase)); if (tag == null) { From dc8d930b07273234b5f2d2ba6e4c91875bce07a5 Mon Sep 17 00:00:00 2001 From: selman koc <64414348+skoc10@users.noreply.github.com> Date: Tue, 3 Sep 2024 16:06:25 +0300 Subject: [PATCH 34/55] Update version to release 8.2.3 --- common.props | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/common.props b/common.props index 12d4871ea1..26b2c2f91a 100644 --- a/common.props +++ b/common.props @@ -1,8 +1,8 @@ latest - 8.2.2 - 3.2.2 + 8.2.3 + 3.2.3 $(NoWarn);CS1591;CS0436 https://abp.io/assets/abp_nupkg.png https://abp.io/ From f7bd52c481483328016f0fd208ad2393b7306640 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Halil=20=C4=B0brahim=20Kalkan?= Date: Tue, 3 Sep 2024 16:20:10 +0300 Subject: [PATCH 35/55] Update road-map.md --- docs/en/release-info/road-map.md | 77 +++++++++++++++++++++----------- 1 file changed, 51 insertions(+), 26 deletions(-) diff --git a/docs/en/release-info/road-map.md b/docs/en/release-info/road-map.md index 400b5b8d25..437d53d902 100644 --- a/docs/en/release-info/road-map.md +++ b/docs/en/release-info/road-map.md @@ -37,7 +37,7 @@ The next version will be 9.0 and planned to release the stable 9.0 version in No * Application modules * Account module: Support mixed social/local login scenarios - * UI/UX improvements on existing [application modules](../modules/index.md) + * UI/UX improvements on existing application modules * New tutorials * Modular monolith development @@ -45,41 +45,66 @@ The next version will be 9.0 and planned to release the stable 9.0 version in No ## Backlog Items -The *Next Versions* section above shows the main focus of the planned versions. However, in each release, we add new features to the core framework and the [application modules](../modules/index.md). - -Here is a list of major items in the backlog we are considering working on in the next versions. +The *Next Versions* section above shows the main focus of the planned versions. However, in each release, we add new features to the ABP platform. ### Framework -* [#86](https://github.com/abpframework/abp/issues/86) / GrapQL Integration +The ABP framework is [open source](https://github.com/abpframework/abp) and free for everyone. You can see its [public backlog](https://github.com/abpframework/abp/milestone/2). Here, are some of the important features you can expect from next versions: + * [#236](https://github.com/abpframework/abp/issues/236) / Resource based authorization system -* [#2882](https://github.com/abpframework/abp/issues/2882) / Providing a gRPC integration infrastructure (while it is [already possible](https://github.com/abpframework/abp-samples/tree/master/GrpcDemo) to create or consume gRPC endpoints for your application, we plan to create endpoints for the [standard application modules](../modules)) +* [#2882](https://github.com/abpframework/abp/issues/2882) / Providing a gRPC integration infrastructure (while it is [already possible](https://github.com/abpframework/abp-samples/tree/master/GrpcDemo) to create or consume gRPC endpoints for your application, we plan to create endpoints for the [standard application modules](../modules/index.md)) * [#57](https://github.com/abpframework/abp/issues/57) / Built-in CQRS infrastructure +* [#58](https://github.com/abpframework/abp/issues/58) / Content localization system (multilingual entities) * [#4223](https://github.com/abpframework/abp/issues/4223) / WebHook system * [#162](https://github.com/abpframework/abp/issues/162) / Azure ElasticDB Integration for multitenancy * [#2296](https://github.com/abpframework/abp/issues/2296) / Feature toggling infrastructure -* [#16342](https://github.com/abpframework/abp/issues/16342) / CMS Kit: Meta information for SEO -* [#16260](https://github.com/abpframework/abp/issues/16260) / GCP Blob Storage Provider * [#15932](https://github.com/abpframework/abp/issues/15932) / Introduce ABP Diagnostics Module -* [#16756](https://github.com/abpframework/abp/issues/16756) / Blob Storing - Provider configuration UI * [#16744](https://github.com/abpframework/abp/issues/16744) / State Management API - -### Modules / Themes - -* New styles, components and features for the LeptonX theme. -* Payment module: Invoice system. -* Dynamic dashboard system. -* User guiding module. -* gRPC integration and implementation for all the pre-built modules. - -### Tooling - -* ABP Suite: Extra Properties on CRUD Page generation -* ABP Suite: Allow to create PAGE instead of MODAL for CRUD page generation -* ABP Suite: Export child/detail entity records -* CMS Kit features, including spam protection, social media feeds, multi-language support, and so on. - -You can always check the milestone planning and the prioritized backlog issues on [the GitHub repository](https://github.com/abpframework/abp/milestones) for a detailed road map. The backlog items are subject to change. We are adding new items and changing priorities based on the community feedbacks and goals of the project. +* [#17815](https://github.com/abpframework/abp/issues/17815) / Operation Rate Limiting + +### Application Modules / UI Themes + +ABP Platform provides many (free and commercial) [pre-built application modules](../modules/index.md) and modern [UI themes](../ui-themes/index.md). In every release, many enhancements and bugfixes are already done on the existing modules. In addition, here some of the planned features for next versions: + +* LeptonX theme: New layouts, styles and components +* CMS Kit module: Meta information for SEO, media gallery, RSS feed, content versioning, social media streams +* Identity module: Idle session warning +* Payment module: Invoice system +* New module: User notification +* New module: Dynamic dashboard +* New module: User guiding +* New module: Keycloak integration + +### ABP Studio + +[ABP Studio](../studio/index.md) is a cross-platform desktop application for ABP and .NET developers to simplify and automate daily tasks of developers. It has a community (free) edition as well as commercial editions. It is released and versioned independently from the ABP platform and frequently released. Here, are some of the important planned features for next ABP Studio versions: + +* Theme builder for the LeptonX theme +* Analyze user solutions to explore entities, domain services, application services, pages and other fundamental objects. +* Add status bar to the built-in browser to easily see errors +* Swagger authentication support for the built-in browser +* Show related requests/events (traces) together in the solution runner panel +* Integrate common tool dashboards into ABP Studio (such a Garana, Redis, RabbitMQ, Kibana, etc) +* Built-in command terminal +* Automate all steps of new service creation for microservice solutions +* Container application type support for Solution Runner (to individually control docker dependencies) +* More options while creating new solutions +* Downloading samples in ABP studio +* Built-in ABP documentation experience +* Auto-execute terminal commands in markdown files +* Compare changed on the startup templates when a new ABP version is published +* Remove unused projects while downloading source code of an existing module +* Testing/hosting applications for module templates +* Easily explore all module and package dependencies of a large solution +* Built-in deployment options +* Rapid application development features +* ABP support integration + +### ABP Suite + +* Extra properties on CRUD page generation +* Allow to create pages instead of modals for CRUD page generation +* Export child/detail entity records ## Feature Requests From a7116ed6427d54c2ca17d45fe43fa9524d59b717 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Halil=20=C4=B0brahim=20Kalkan?= Date: Tue, 3 Sep 2024 16:34:43 +0300 Subject: [PATCH 36/55] Update road-map.md --- docs/en/release-info/road-map.md | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/docs/en/release-info/road-map.md b/docs/en/release-info/road-map.md index 437d53d902..82da0a0b8e 100644 --- a/docs/en/release-info/road-map.md +++ b/docs/en/release-info/road-map.md @@ -77,7 +77,9 @@ ABP Platform provides many (free and commercial) [pre-built application modules] ### ABP Studio -[ABP Studio](../studio/index.md) is a cross-platform desktop application for ABP and .NET developers to simplify and automate daily tasks of developers. It has a community (free) edition as well as commercial editions. It is released and versioned independently from the ABP platform and frequently released. Here, are some of the important planned features for next ABP Studio versions: +[ABP Studio](../studio/index.md) is a cross-platform desktop application for ABP and .NET developers to simplify and automate daily tasks of developers. It has a community (free) edition as well as commercial editions. It is released and versioned independently from the ABP platform and frequently released. + +Here, are some of the important planned features for next ABP Studio versions: * Theme builder for the LeptonX theme * Analyze user solutions to explore entities, domain services, application services, pages and other fundamental objects. @@ -102,9 +104,19 @@ ABP Platform provides many (free and commercial) [pre-built application modules] ### ABP Suite -* Extra properties on CRUD page generation +[ABP Suite](../suite/index.md) is a GUI application that is mainly used to generate CRUD style pages in your application. You define your entity and it can generate all the code from the database layer to the UI layer. The generated code is clean and a perfect starting point to implement your custom requirements on top of it. + +Here, are some of the important planned features for next ABP Suite versions: + +* Handle image properties for entities +* Allow to define extra properties for DTOs those are not a part of the entity * Allow to create pages instead of modals for CRUD page generation -* Export child/detail entity records +* View-only (detail view) modal/page for an entity +* Export child/detail entity records as a part of export operation for a main (master) entity +* Allow to accept attachments (files) for an entity +* Allow to add custom entity actions for an entity +* Allow to inherit from an existing entity class +* Custom form layouts on CRUD page generation ## Feature Requests From 3ba90465c015fef9bd670f5d0eb73daf79099b80 Mon Sep 17 00:00:00 2001 From: sumeyyeKurtulus Date: Tue, 3 Sep 2024 16:40:51 +0300 Subject: [PATCH 37/55] update: fixing the logic error for `setTabCheckboxState` function --- .../src/lib/components/permission-management.component.ts | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/npm/ng-packs/packages/permission-management/src/lib/components/permission-management.component.ts b/npm/ng-packs/packages/permission-management/src/lib/components/permission-management.component.ts index 31bbc19ab4..8ad2fd2320 100644 --- a/npm/ng-packs/packages/permission-management/src/lib/components/permission-management.component.ts +++ b/npm/ng-packs/packages/permission-management/src/lib/components/permission-management.component.ts @@ -180,9 +180,9 @@ export class PermissionManagementComponent setTimeout(() => { this.updatePermissionStatus(clickedPermission); this.updateSelectedGroupPermissions(clickedPermission); + this.setParentClicked(clickedPermission); this.setTabCheckboxState(); this.setGrantCheckboxState(); - this.setParentClicked(clickedPermission); }, 0); } @@ -254,13 +254,13 @@ export class PermissionManagementComponent } setTabCheckboxState() { - const selectableGroupPermissions = this.selectedGroupPermissions.filter(per => + const selectablePermissions = this.permissions.filter(per => per.grantedProviders.every(p => p.providerName === this.providerName), ); - const selectedPermissions = selectableGroupPermissions.filter(per => per.isGranted); + const selectedPermissions = selectablePermissions.filter(per => per.isGranted); const element = document.querySelector('#select-all-in-this-tabs') as any; - if (selectedPermissions.length === selectableGroupPermissions.length) { + if (selectedPermissions.length === selectablePermissions.length) { element.indeterminate = false; this.selectThisTab = true; } else if (selectedPermissions.length === 0) { From 41ac0b3ec56b42a96933b0981afb5b924f6e9a0b Mon Sep 17 00:00:00 2001 From: Washington Acero Date: Tue, 3 Sep 2024 11:07:43 -0700 Subject: [PATCH 38/55] Update and fixes es.json MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Hay campos de validacion con mensajes erroneos y numeraciones para la interpolacion de nombres de campos, ejemplo en la clave se muestra "ThisFieldOnlyAcceptsFilesWithTheFollowingExtensions:{0}": "Este campo sólo acepta ficheros con las siguientes extensiones: {1}", y deberia ser "ThisFieldOnlyAcceptsFilesWithTheFollowingExtensions:{0}": "Este campo sólo acepta ficheros con las siguientes extensiones: {0}". --- .../Volo/Abp/Validation/Localization/es.json | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/framework/src/Volo.Abp.Validation/Volo/Abp/Validation/Localization/es.json b/framework/src/Volo.Abp.Validation/Volo/Abp/Validation/Localization/es.json index 9ecba92ca0..77937eab9f 100644 --- a/framework/src/Volo.Abp.Validation/Volo/Abp/Validation/Localization/es.json +++ b/framework/src/Volo.Abp.Validation/Volo/Abp/Validation/Localization/es.json @@ -8,7 +8,7 @@ "The {0} field only accepts files with the following extensions: {1}": "El campo {0} sólo acepta ficheros con la siguientes extensiones: {1}", "The field {0} must be a string or array type with a maximum length of '{1}'.": "El campo {0} debe ser de tipo cadena o lista con una longitud máxima de '{1}'.", "The field {0} must be a string or array type with a minimum length of '{1}'.": "El campo {0} debe ser de tipo cadena o lista con una longitud máxima de '{1}'.", - "The {0} field is not a valid phone number.": "El campo no tiene un número de teléfono valido.", + "The {0} field is not a valid phone number.": "El campo {0} no tiene un número de teléfono valido.", "The field {0} must be between {1} and {2}.": "El campo {0} debe estar entre {1} y {2}.", "The field {0} must match the regular expression '{1}'.": "El campo {0} no coincide con el formato solicitado.", "The {0} field is required.": "El campo {0} es requerido.", @@ -23,17 +23,17 @@ "ThisFieldIsNotValid.": "Este campo no es valido.", "ThisFieldIsNotAValidEmailAddress.": "Este campo no es una dirección de e-mail valida.", "ThisFieldOnlyAcceptsFilesWithTheFollowingExtensions:{0}": "Este campo sólo acepta ficheros con las siguientes extensiones: {0}", - "ThisFieldMustBeAStringOrArrayTypeWithAMaximumLengthOf{0}": "Este campo debe ser una cadena o lista con una longitud máxima de {1}.", - "ThisFieldMustBeAStringOrArrayTypeWithAMinimumLengthOf{0}": "Este campo debe ser una cadena o lista con una longitud mínima de {1}.", + "ThisFieldMustBeAStringOrArrayTypeWithAMaximumLengthOf{0}": "Este campo debe ser una cadena o lista con una longitud máxima de {0}.", + "ThisFieldMustBeAStringOrArrayTypeWithAMinimumLengthOf{0}": "Este campo debe ser una cadena o lista con una longitud mínima de {0}.", "ThisFieldIsNotAValidPhoneNumber.": "Este campo no es un número de teléfono valido.", "ThisFieldMustBeBetween{0}And{1}": "Este campo debe estar entre {0} y {1}.", "ThisFieldMustBeGreaterThanOrEqual{0}": "Este campo debe ser mayor o igual a {0}.", "ThisFieldMustBeLessOrEqual{0}": "Este campo debe ser menor o igual a {0}.", "ThisFieldMustMatchTheRegularExpression{0}": "Este campo debe coincidir con la expresión regular '{0}'.", "ThisFieldIsRequired.": "Este campo es requerido", - "ThisFieldMustBeAStringWithAMaximumLengthOf{0}": "Este campo debe ser una cadena con una longitud máxima de {1}.", - "ThisFieldMustBeAStringWithAMinimumLengthOf{1}AndAMaximumLengthOf{0}": "Este campo debe ser una cadena con una longitud mínima de {2} y máxima de {1}.", - "ThisFieldIsNotAValidFullyQualifiedHttpHttpsOrFtpUrl": "El campo {0} no es una URL (http, https o ftp) valida.", - "ThisFieldIsInvalid.": "Este en un campo no valido." + "ThisFieldMustBeAStringWithAMaximumLengthOf{0}": "Este campo debe ser una cadena con una longitud máxima de {0}.", + "ThisFieldMustBeAStringWithAMinimumLengthOf{1}AndAMaximumLengthOf{0}": "Este campo debe ser una cadena con una longitud mínima de {1} y máxima de {0}.", + "ThisFieldIsNotAValidFullyQualifiedHttpHttpsOrFtpUrl": "El campo no es una URL (http, https o ftp) valida.", + "ThisFieldIsInvalid.": "Este campo no es válido." } -} \ No newline at end of file +} From 819f3d16a1209b928466d6aef585e47f4e2e0cd8 Mon Sep 17 00:00:00 2001 From: liangshiwei Date: Wed, 4 Sep 2024 10:32:25 +0800 Subject: [PATCH 39/55] Update abp-8-2.md --- docs/en/release-info/migration-guides/abp-8-2.md | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/docs/en/release-info/migration-guides/abp-8-2.md b/docs/en/release-info/migration-guides/abp-8-2.md index 0a70af9796..cd904f052e 100644 --- a/docs/en/release-info/migration-guides/abp-8-2.md +++ b/docs/en/release-info/migration-guides/abp-8-2.md @@ -51,8 +51,13 @@ If the flag icon has been specified while defining the localization languages, t In this version, ABP Framework provides a new UI option called **Blazor Full-Stack WebApp**. We have already created an introduction/migration guide for you to check it: [Migrating to Blazor Web App](abp-8-2-blazor-web-app.md) > Please read the documentation carefully if you are considering migrating your existing **Blazor** project to **Blazor WebApp**. + +## Angular UI + +In this version, the Angular UI has been updated to use the Angular version 17.3.0 and Nx version to 19.0.0. See the PR for more information: [#19915](https://github.com/abpframework/abp/pull/19915/) + ## Session Management Infrastructure The **Session Management** feature allows you to prevent concurrent login and manage user sessions. -In this version, a new entity called `IdentitySession` has been added to the framework and you should create a new migration and apply it to your database. +In this version, a new entity called `IdentitySession` has been added to the framework and you should create a new migration and apply it to your database. \ No newline at end of file From c33a3fb2a9c1a6d3d1fa2bb00c6027fedc3e27f6 Mon Sep 17 00:00:00 2001 From: voloagent Date: Wed, 4 Sep 2024 08:06:42 +0300 Subject: [PATCH 40/55] Update_NPM_Packages --- ....Application.Contracts.abppkg.analyze.json | 2 +- ...bp.Account.Application.abppkg.analyze.json | 90 +- ...olo.Abp.Account.Blazor.abppkg.analyze.json | 25 +- ...Account.HttpApi.Client.abppkg.analyze.json | 2 +- ...lo.Abp.Account.HttpApi.abppkg.analyze.json | 103 +- ...Account.Web.OpenIddict.abppkg.analyze.json | 2 +- .../Volo.Abp.Account.Web.abppkg.analyze.json | 103 +- ...tLogging.Domain.Shared.abppkg.analyze.json | 2 +- ...bp.AuditLogging.Domain.abppkg.analyze.json | 22 +- ...ng.EntityFrameworkCore.abppkg.analyze.json | 44 +- ...p.AuditLogging.MongoDB.abppkg.analyze.json | 4 +- ...oundJobs.Domain.Shared.abppkg.analyze.json | 2 +- ....BackgroundJobs.Domain.abppkg.analyze.json | 3 +- ...bs.EntityFrameworkCore.abppkg.analyze.json | 26 +- ...BackgroundJobs.MongoDB.abppkg.analyze.json | 4 +- ...ore.Mvc.UI.Theme.Basic.abppkg.analyze.json | 2 +- .../package.json | 6 +- .../yarn.lock | 276 ++-- .../package.json | 4 +- .../yarn.lock | 280 ++-- ...Database.Domain.Shared.abppkg.analyze.json | 46 +- ...toring.Database.Domain.abppkg.analyze.json | 330 ++++- ...se.EntityFrameworkCore.abppkg.analyze.json | 139 +- ...oring.Database.MongoDB.abppkg.analyze.json | 70 +- ...pp.EntityFrameworkCore.abppkg.analyze.json | 3 +- ...loggingTestApp.MongoDB.abppkg.analyze.json | 2 +- .../app/Volo.BloggingTestApp/package.json | 4 +- .../app/Volo.BloggingTestApp/yarn.lock | 318 ++--- ....Application.Contracts.abppkg.analyze.json | 2 +- ...ging.Admin.Application.abppkg.analyze.json | 8 +- ...g.Admin.HttpApi.Client.abppkg.analyze.json | 2 +- ...Blogging.Admin.HttpApi.abppkg.analyze.json | 86 +- ...olo.Blogging.Admin.Web.abppkg.analyze.json | 20 +- ....Application.Contracts.abppkg.analyze.json | 2 +- ...o.Blogging.Application.abppkg.analyze.json | 163 ++- ...Blogging.Domain.Shared.abppkg.analyze.json | 2 +- .../Volo.Blogging.Domain.abppkg.analyze.json | 116 +- ...ng.EntityFrameworkCore.abppkg.analyze.json | 56 +- ...logging.HttpApi.Client.abppkg.analyze.json | 2 +- .../Volo.Blogging.HttpApi.abppkg.analyze.json | 296 ++++- .../Volo.Blogging.MongoDB.abppkg.analyze.json | 20 +- .../Volo.Blogging.Web.abppkg.analyze.json | 38 +- .../Volo.ClientSimulation.Demo/package.json | 2 +- .../demo/Volo.ClientSimulation.Demo/yarn.lock | 258 ++-- ...o.ClientSimulation.Web.abppkg.analyze.json | 2 +- modules/cms-kit/angular/package.json | 10 +- .../angular/projects/cms-kit/package.json | 4 +- .../Volo.CmsKit.IdentityServer/package.json | 2 +- .../host/Volo.CmsKit.IdentityServer/yarn.lock | 258 ++-- .../host/Volo.CmsKit.Web.Host/package.json | 2 +- .../host/Volo.CmsKit.Web.Host/yarn.lock | 258 ++-- .../host/Volo.CmsKit.Web.Unified/package.json | 4 +- .../host/Volo.CmsKit.Web.Unified/yarn.lock | 392 +++--- ....Application.Contracts.abppkg.analyze.json | 18 +- ...sKit.Admin.Application.abppkg.analyze.json | 51 +- ...t.Admin.HttpApi.Client.abppkg.analyze.json | 2 +- ...o.CmsKit.Admin.HttpApi.abppkg.analyze.json | 2 +- .../Volo.CmsKit.Admin.Web.abppkg.analyze.json | 122 +- ....Application.Contracts.abppkg.analyze.json | 2 +- ...olo.CmsKit.Application.abppkg.analyze.json | 2 +- ....Application.Contracts.abppkg.analyze.json | 2 +- ...Kit.Common.Application.abppkg.analyze.json | 27 +- ....Common.HttpApi.Client.abppkg.analyze.json | 2 +- ....CmsKit.Common.HttpApi.abppkg.analyze.json | 2 +- ...Volo.CmsKit.Common.Web.abppkg.analyze.json | 2 +- ...o.CmsKit.Domain.Shared.abppkg.analyze.json | 2 +- .../Volo.CmsKit.Domain.abppkg.analyze.json | 265 +++- ...it.EntityFrameworkCore.abppkg.analyze.json | 21 +- ....CmsKit.HttpApi.Client.abppkg.analyze.json | 2 +- .../Volo.CmsKit.HttpApi.abppkg.analyze.json | 2 +- .../Volo.CmsKit.MongoDB.abppkg.analyze.json | 50 +- ....Application.Contracts.abppkg.analyze.json | 16 +- ...Kit.Public.Application.abppkg.analyze.json | 72 +- ....Public.HttpApi.Client.abppkg.analyze.json | 2 +- ....CmsKit.Public.HttpApi.abppkg.analyze.json | 2 +- ...Volo.CmsKit.Public.Web.abppkg.analyze.json | 20 +- .../Volo.CmsKit.Web.abppkg.analyze.json | 2 +- ...cs.EntityFrameworkCore.abppkg.analyze.json | 3 +- modules/docs/app/VoloDocs.Web/package.json | 4 +- modules/docs/app/VoloDocs.Web/yarn.lock | 318 ++--- ....Application.Contracts.abppkg.analyze.json | 2 +- ...Docs.Admin.Application.abppkg.analyze.json | 17 +- ...s.Admin.HttpApi.Client.abppkg.analyze.json | 2 +- ...olo.Docs.Admin.HttpApi.abppkg.analyze.json | 265 +++- .../Volo.Docs.Admin.Web.abppkg.analyze.json | 32 +- ....Application.Contracts.abppkg.analyze.json | 2 +- .../Volo.Docs.Application.abppkg.analyze.json | 17 +- ...olo.Docs.Domain.Shared.abppkg.analyze.json | 2 +- .../Volo.Docs.Domain.abppkg.analyze.json | 70 +- ...cs.EntityFrameworkCore.abppkg.analyze.json | 38 +- ...lo.Docs.HttpApi.Client.abppkg.analyze.json | 2 +- .../Volo.Docs.HttpApi.abppkg.analyze.json | 224 +++- .../Volo.Docs.MongoDB.abppkg.analyze.json | 10 +- .../Volo.Docs.Web.abppkg.analyze.json | 40 +- ....Application.Contracts.abppkg.analyze.json | 4 +- ...Management.Application.abppkg.analyze.json | 5 +- ...nagement.Blazor.Server.abppkg.analyze.json | 68 + ...atureManagement.Blazor.abppkg.analyze.json | 90 ++ ...nagement.Domain.Shared.abppkg.analyze.json | 2 +- ...atureManagement.Domain.abppkg.analyze.json | 21 +- ...nt.EntityFrameworkCore.abppkg.analyze.json | 38 +- ...agement.HttpApi.Client.abppkg.analyze.json | 2 +- ...tureManagement.HttpApi.abppkg.analyze.json | 64 +- ...tureManagement.MongoDB.abppkg.analyze.json | 12 +- ....FeatureManagement.Web.abppkg.analyze.json | 8 +- ....Application.Contracts.abppkg.analyze.json | 7 + ...p.Identity.Application.abppkg.analyze.json | 89 ++ ...lo.Abp.Identity.Domain.abppkg.analyze.json | 1181 ++++++++++++++++- ...ty.EntityFrameworkCore.abppkg.analyze.json | 19 + ...o.Abp.Identity.MongoDB.abppkg.analyze.json | 28 +- .../Volo.Abp.Identity.Web.abppkg.analyze.json | 6 - ...tyServer.Domain.Shared.abppkg.analyze.json | 2 +- ....IdentityServer.Domain.abppkg.analyze.json | 144 +- ...er.EntityFrameworkCore.abppkg.analyze.json | 158 +-- ...IdentityServer.MongoDB.abppkg.analyze.json | 22 +- .../app/OpenIddict.Demo.Server/package.json | 2 +- modules/openiddict/app/angular/package.json | 20 +- ...enIddict.Domain.Shared.abppkg.analyze.json | 2 +- ....Abp.OpenIddict.Domain.abppkg.analyze.json | 117 +- ...ct.EntityFrameworkCore.abppkg.analyze.json | 44 +- ...Abp.OpenIddict.MongoDB.abppkg.analyze.json | 16 +- ....Application.Contracts.abppkg.analyze.json | 2 +- ...Management.Application.abppkg.analyze.json | 91 +- ...nagement.Blazor.Server.abppkg.analyze.json | 68 + ...ssionManagement.Blazor.abppkg.analyze.json | 79 ++ ...nagement.Domain.Shared.abppkg.analyze.json | 2 +- ...ssionManagement.Domain.abppkg.analyze.json | 20 +- ...nt.EntityFrameworkCore.abppkg.analyze.json | 38 +- ...agement.HttpApi.Client.abppkg.analyze.json | 2 +- ...sionManagement.HttpApi.abppkg.analyze.json | 47 +- ...sionManagement.MongoDB.abppkg.analyze.json | 8 +- ...rmissionManagement.Web.abppkg.analyze.json | 8 +- .../package.json | 2 +- .../yarn.lock | 258 ++-- ....Application.Contracts.abppkg.analyze.json | 9 +- ...Management.Application.abppkg.analyze.json | 124 +- ...nagement.Blazor.Server.abppkg.analyze.json | 68 + ...ttingManagement.Blazor.abppkg.analyze.json | 85 ++ ...nagement.Domain.Shared.abppkg.analyze.json | 4 +- ...ttingManagement.Domain.abppkg.analyze.json | 212 ++- ...nt.EntityFrameworkCore.abppkg.analyze.json | 26 +- ...agement.HttpApi.Client.abppkg.analyze.json | 2 +- ...tingManagement.HttpApi.abppkg.analyze.json | 72 +- ...tingManagement.MongoDB.abppkg.analyze.json | 10 +- ....SettingManagement.Web.abppkg.analyze.json | 14 +- ....Application.Contracts.abppkg.analyze.json | 2 +- ...Management.Application.abppkg.analyze.json | 10 +- ...nagement.Blazor.Server.abppkg.analyze.json | 13 +- ...enantManagement.Blazor.abppkg.analyze.json | 79 ++ ...nagement.Domain.Shared.abppkg.analyze.json | 2 +- ...enantManagement.Domain.abppkg.analyze.json | 35 +- ...nt.EntityFrameworkCore.abppkg.analyze.json | 32 +- ...agement.HttpApi.Client.abppkg.analyze.json | 2 +- ...nantManagement.HttpApi.abppkg.analyze.json | 133 +- ...nantManagement.MongoDB.abppkg.analyze.json | 4 +- ...p.TenantManagement.Web.abppkg.analyze.json | 20 +- ...bp.Users.Domain.Shared.abppkg.analyze.json | 2 +- .../Volo.Abp.Users.Domain.abppkg.analyze.json | 2 +- ...rs.EntityFrameworkCore.abppkg.analyze.json | 2 +- ...Volo.Abp.Users.MongoDB.abppkg.analyze.json | 2 +- .../package.json | 4 +- .../yarn.lock | 292 ++-- ...irtualFileExplorer.Web.abppkg.analyze.json | 8 +- npm/lerna.json | 2 +- npm/ng-packs/package.json | 4 +- .../packages/account-core/package.json | 6 +- npm/ng-packs/packages/account/package.json | 6 +- npm/ng-packs/packages/components/package.json | 6 +- npm/ng-packs/packages/core/package.json | 4 +- .../packages/feature-management/package.json | 4 +- npm/ng-packs/packages/generators/package.json | 2 +- npm/ng-packs/packages/identity/package.json | 8 +- npm/ng-packs/packages/oauth/package.json | 6 +- .../permission-management/package.json | 4 +- npm/ng-packs/packages/schematics/package.json | 2 +- .../packages/setting-management/package.json | 6 +- .../packages/tenant-management/package.json | 6 +- .../packages/theme-basic/package.json | 6 +- .../packages/theme-shared/package.json | 4 +- npm/packs/anchor-js/package.json | 4 +- .../package.json | 4 +- .../package.json | 6 +- .../package.json | 4 +- .../package.json | 34 +- npm/packs/aspnetcore.mvc.ui/package-lock.json | 2 +- npm/packs/aspnetcore.mvc.ui/package.json | 2 +- npm/packs/blogging/package.json | 10 +- npm/packs/bootstrap-datepicker/package.json | 2 +- .../bootstrap-daterangepicker/package.json | 2 +- npm/packs/bootstrap/package.json | 4 +- npm/packs/chart.js/package.json | 2 +- npm/packs/clipboard/package.json | 4 +- npm/packs/cms-kit.admin/package.json | 12 +- npm/packs/cms-kit.public/package.json | 6 +- npm/packs/cms-kit/package.json | 6 +- npm/packs/codemirror/package.json | 4 +- npm/packs/core/package.json | 4 +- npm/packs/cropperjs/package.json | 4 +- npm/packs/datatables.net-bs4/package.json | 4 +- npm/packs/datatables.net-bs5/package.json | 4 +- npm/packs/datatables.net/package.json | 4 +- npm/packs/docs/package.json | 12 +- npm/packs/flag-icon-css/package.json | 2 +- npm/packs/flag-icons/package.json | 2 +- npm/packs/font-awesome/package.json | 4 +- npm/packs/highlight.js/package.json | 4 +- npm/packs/jquery-form/package.json | 4 +- .../package.json | 4 +- npm/packs/jquery-validation/package.json | 4 +- npm/packs/jquery/package.json | 4 +- npm/packs/jstree/package.json | 4 +- npm/packs/lodash/package.json | 4 +- npm/packs/luxon/package.json | 4 +- .../package.json | 4 +- npm/packs/markdown-it/package.json | 4 +- npm/packs/moment/package.json | 2 +- npm/packs/owl.carousel/package.json | 4 +- npm/packs/popper.js/package.json | 4 +- npm/packs/prismjs/package.json | 6 +- npm/packs/qrcode/package.json | 4 +- npm/packs/select2/package.json | 4 +- npm/packs/signalr/package.json | 4 +- npm/packs/slugify/package.json | 2 +- npm/packs/star-rating-svg/package.json | 4 +- npm/packs/sweetalert2/package.json | 4 +- npm/packs/timeago/package.json | 4 +- npm/packs/toastr/package.json | 4 +- npm/packs/tui-editor/package.json | 6 +- npm/packs/uppy/package.json | 4 +- npm/packs/utils/package.json | 2 +- npm/packs/vee-validate/package.json | 4 +- npm/packs/virtual-file-explorer/package.json | 6 +- npm/packs/vue/package.json | 2 +- npm/packs/zxcvbn/package.json | 4 +- .../Volo.Abp.Account.SourceCode.zip | Bin 224023 -> 224624 bytes .../Volo.Abp.AuditLogging.SourceCode.zip | Bin 89902 -> 89853 bytes .../Volo.Abp.BackgroundJobs.SourceCode.zip | Bin 62537 -> 62505 bytes .../Volo.Abp.BasicTheme.SourceCode.zip | Bin 455738 -> 455704 bytes ...lo.Abp.BlobStoring.Database.SourceCode.zip | Bin 67504 -> 68764 bytes .../Volo.Abp.FeatureManagement.SourceCode.zip | Bin 187892 -> 189295 bytes .../Volo.Abp.Identity.SourceCode.zip | Bin 399212 -> 400349 bytes .../Volo.Abp.IdentityServer.SourceCode.zip | Bin 165853 -> 165748 bytes .../Volo.Abp.OpenIddict.SourceCode.zip | Bin 2269916 -> 2269974 bytes ...lo.Abp.PermissionManagement.SourceCode.zip | Bin 178230 -> 180121 bytes .../Volo.Abp.SettingManagement.SourceCode.zip | Bin 236877 -> 240886 bytes .../Volo.Abp.TenantManagement.SourceCode.zip | Bin 165760 -> 166696 bytes .../Volo.Abp.Users.SourceCode.zip | Bin 32041 -> 31922 bytes ...olo.Abp.VirtualFileExplorer.SourceCode.zip | Bin 47496 -> 47505 bytes .../Volo.Blogging.SourceCode.zip | Bin 370004 -> 372210 bytes .../Volo.ClientSimulation.SourceCode.zip | Bin 38660 -> 38644 bytes .../Volo.CmsKit.SourceCode.zip | Bin 1255341 -> 1255610 bytes .../Volo.Docs.SourceCode.zip | Bin 558607 -> 560653 bytes templates/app-nolayers/angular/package.json | 20 +- .../package.json | 4 +- .../package.json | 4 +- .../Server.Mongo/package.json | 2 +- .../Server/package.json | 2 +- .../package.json | 2 +- .../package.json | 2 +- .../package.json | 2 +- .../package.json | 2 +- templates/app/angular/package.json | 20 +- .../package.json | 2 +- .../package.json | 4 +- .../package.json | 4 +- .../package.json | 4 +- .../package.json | 4 +- .../package.json | 2 +- .../package.json | 2 +- .../package.json | 2 +- templates/module/angular/package.json | 20 +- .../projects/my-project-name/package.json | 4 +- .../package.json | 2 +- .../package.json | 4 +- .../package.json | 2 +- .../package.json | 2 +- 276 files changed, 7809 insertions(+), 2370 deletions(-) create mode 100644 modules/feature-management/src/Volo.Abp.FeatureManagement.Blazor.Server/Volo.Abp.FeatureManagement.Blazor.Server.abppkg.analyze.json create mode 100644 modules/feature-management/src/Volo.Abp.FeatureManagement.Blazor/Volo.Abp.FeatureManagement.Blazor.abppkg.analyze.json create mode 100644 modules/permission-management/src/Volo.Abp.PermissionManagement.Blazor.Server/Volo.Abp.PermissionManagement.Blazor.Server.abppkg.analyze.json create mode 100644 modules/permission-management/src/Volo.Abp.PermissionManagement.Blazor/Volo.Abp.PermissionManagement.Blazor.abppkg.analyze.json create mode 100644 modules/setting-management/src/Volo.Abp.SettingManagement.Blazor.Server/Volo.Abp.SettingManagement.Blazor.Server.abppkg.analyze.json create mode 100644 modules/setting-management/src/Volo.Abp.SettingManagement.Blazor/Volo.Abp.SettingManagement.Blazor.abppkg.analyze.json create mode 100644 modules/tenant-management/src/Volo.Abp.TenantManagement.Blazor/Volo.Abp.TenantManagement.Blazor.abppkg.analyze.json diff --git a/modules/account/src/Volo.Abp.Account.Application.Contracts/Volo.Abp.Account.Application.Contracts.abppkg.analyze.json b/modules/account/src/Volo.Abp.Account.Application.Contracts/Volo.Abp.Account.Application.Contracts.abppkg.analyze.json index 9b8257a2f0..da04b6d001 100644 --- a/modules/account/src/Volo.Abp.Account.Application.Contracts/Volo.Abp.Account.Application.Contracts.abppkg.analyze.json +++ b/modules/account/src/Volo.Abp.Account.Application.Contracts/Volo.Abp.Account.Application.Contracts.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.Account.Application.Contracts", - "hash": "392da50100d94bd18adbc7c41cd9efce", + "hash": "", "contents": [ { "namespace": "Volo.Abp.Account", diff --git a/modules/account/src/Volo.Abp.Account.Application/Volo.Abp.Account.Application.abppkg.analyze.json b/modules/account/src/Volo.Abp.Account.Application/Volo.Abp.Account.Application.abppkg.analyze.json index dbd55b0f21..d02c89e745 100644 --- a/modules/account/src/Volo.Abp.Account.Application/Volo.Abp.Account.Application.abppkg.analyze.json +++ b/modules/account/src/Volo.Abp.Account.Application/Volo.Abp.Account.Application.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.Account.Application", - "hash": "ebd6f98a2003938944d5a3790daf20af", + "hash": "", "contents": [ { "namespace": "Volo.Abp.Account", @@ -141,6 +141,7 @@ "methods": [ { "returnType": "IdentityUserDto", + "namespace": "Volo.Abp.Account", "name": "RegisterAsync", "summary": null, "isAsync": true, @@ -157,6 +158,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.Account", "name": "SendPasswordResetCodeAsync", "summary": null, "isAsync": true, @@ -173,6 +175,7 @@ }, { "returnType": "Boolean", + "namespace": "Volo.Abp.Account", "name": "VerifyPasswordResetTokenAsync", "summary": null, "isAsync": true, @@ -189,6 +192,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.Account", "name": "ResetPasswordAsync", "summary": null, "isAsync": true, @@ -208,6 +212,87 @@ "name": "AccountAppService", "summary": null }, + { + "namespace": "Volo.Abp.Account", + "baseClass": { + "name": "IdentityAppServiceBase", + "namespace": "Volo.Abp.Identity", + "declaringAssemblyName": "Volo.Abp.Identity.Application", + "fullName": "Volo.Abp.Identity.IdentityAppServiceBase" + }, + "implementingInterfaces": [ + { + "name": "IApplicationService", + "namespace": "Volo.Abp.Application.Services", + "declaringAssemblyName": "Volo.Abp.Ddd.Application.Contracts", + "fullName": "Volo.Abp.Application.Services.IApplicationService" + }, + { + "name": "IRemoteService", + "namespace": "Volo.Abp", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.IRemoteService" + }, + { + "name": "IAvoidDuplicateCrossCuttingConcerns", + "namespace": "Volo.Abp.Aspects", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.Aspects.IAvoidDuplicateCrossCuttingConcerns" + }, + { + "name": "IValidationEnabled", + "namespace": "Volo.Abp.Validation", + "declaringAssemblyName": "Volo.Abp.Validation", + "fullName": "Volo.Abp.Validation.IValidationEnabled" + }, + { + "name": "IUnitOfWorkEnabled", + "namespace": "Volo.Abp.Uow", + "declaringAssemblyName": "Volo.Abp.Uow", + "fullName": "Volo.Abp.Uow.IUnitOfWorkEnabled" + }, + { + "name": "IAuditingEnabled", + "namespace": "Volo.Abp.Auditing", + "declaringAssemblyName": "Volo.Abp.Auditing.Contracts", + "fullName": "Volo.Abp.Auditing.IAuditingEnabled" + }, + { + "name": "IGlobalFeatureCheckingEnabled", + "namespace": "Volo.Abp.GlobalFeatures", + "declaringAssemblyName": "Volo.Abp.GlobalFeatures", + "fullName": "Volo.Abp.GlobalFeatures.IGlobalFeatureCheckingEnabled" + }, + { + "name": "ITransientDependency", + "namespace": "Volo.Abp.DependencyInjection", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.DependencyInjection.ITransientDependency" + }, + { + "name": "IDynamicClaimsAppService", + "namespace": "Volo.Abp.Account", + "declaringAssemblyName": "Volo.Abp.Account.Application.Contracts", + "fullName": "Volo.Abp.Account.IDynamicClaimsAppService" + } + ], + "methods": [ + { + "returnType": "Void", + "namespace": "Volo.Abp.Account", + "name": "RefreshAsync", + "summary": null, + "isAsync": true, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [] + } + ], + "contentType": "applicationService", + "name": "DynamicClaimsAppService", + "summary": null + }, { "namespace": "Volo.Abp.Account", "baseClass": { @@ -275,6 +360,7 @@ "methods": [ { "returnType": "ProfileDto", + "namespace": "Volo.Abp.Account", "name": "GetAsync", "summary": null, "isAsync": true, @@ -285,6 +371,7 @@ }, { "returnType": "ProfileDto", + "namespace": "Volo.Abp.Account", "name": "UpdateAsync", "summary": null, "isAsync": true, @@ -301,6 +388,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.Account", "name": "ChangePasswordAsync", "summary": null, "isAsync": true, diff --git a/modules/account/src/Volo.Abp.Account.Blazor/Volo.Abp.Account.Blazor.abppkg.analyze.json b/modules/account/src/Volo.Abp.Account.Blazor/Volo.Abp.Account.Blazor.abppkg.analyze.json index 0fe0981e1d..cba964b090 100644 --- a/modules/account/src/Volo.Abp.Account.Blazor/Volo.Abp.Account.Blazor.abppkg.analyze.json +++ b/modules/account/src/Volo.Abp.Account.Blazor/Volo.Abp.Account.Blazor.abppkg.analyze.json @@ -1,10 +1,25 @@ { "name": "Volo.Abp.Account.Blazor", - "hash": "caa7279a6d55f90db90b3ec2313a4e12", + "hash": "", "contents": [ { - "namespace": "Volo.Abp.Account.Blazor;", + "namespace": "Volo.Abp.Account.Blazor", "dependsOnModules": [ + { + "declaringAssemblyName": "Volo.Abp.AspNetCore.Components.Web.Theming", + "namespace": "Volo.Abp.AspNetCore.Components.Web.Theming", + "name": "AbpAspNetCoreComponentsWebThemingModule" + }, + { + "declaringAssemblyName": "Volo.Abp.AutoMapper", + "namespace": "Volo.Abp.AutoMapper", + "name": "AbpAutoMapperModule" + }, + { + "declaringAssemblyName": "Volo.Abp.Account.Application.Contracts", + "namespace": "Volo.Abp.Account", + "name": "AbpAccountApplicationContractsModule" + } ], "implementingInterfaces": [ { @@ -53,6 +68,12 @@ "contentType": "abpModule", "name": "AbpAccountBlazorModule", "summary": null + }, + { + "namespace": "Volo.Abp.Account.Blazor.Pages.Account", + "contentType": "webPage", + "name": "AccountManage", + "summary": null } ] } \ No newline at end of file diff --git a/modules/account/src/Volo.Abp.Account.HttpApi.Client/Volo.Abp.Account.HttpApi.Client.abppkg.analyze.json b/modules/account/src/Volo.Abp.Account.HttpApi.Client/Volo.Abp.Account.HttpApi.Client.abppkg.analyze.json index bed1809a98..d6313846ba 100644 --- a/modules/account/src/Volo.Abp.Account.HttpApi.Client/Volo.Abp.Account.HttpApi.Client.abppkg.analyze.json +++ b/modules/account/src/Volo.Abp.Account.HttpApi.Client/Volo.Abp.Account.HttpApi.Client.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.Account.HttpApi.Client", - "hash": "5a1716ad59fa19da3009381a4d0d3e1d", + "hash": "", "contents": [ { "namespace": "Volo.Abp.Account", diff --git a/modules/account/src/Volo.Abp.Account.HttpApi/Volo.Abp.Account.HttpApi.abppkg.analyze.json b/modules/account/src/Volo.Abp.Account.HttpApi/Volo.Abp.Account.HttpApi.abppkg.analyze.json index 2df3965fe7..3ee0c8975a 100644 --- a/modules/account/src/Volo.Abp.Account.HttpApi/Volo.Abp.Account.HttpApi.abppkg.analyze.json +++ b/modules/account/src/Volo.Abp.Account.HttpApi/Volo.Abp.Account.HttpApi.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.Account.HttpApi", - "hash": "caa7279a6d55f90db90b3ec2313a4e12", + "hash": "", "contents": [ { "namespace": "Volo.Abp.Account", @@ -68,6 +68,107 @@ "contentType": "abpModule", "name": "AbpAccountHttpApiModule", "summary": null + }, + { + "apis": [ + { + "path": "api/account/register", + "method": "POST", + "groupName": "Account", + "responseType": "Volo.Abp.Identity.IdentityUserDto", + "responseTypeAsJson": "", + "parameterDescriptions": [ + { + "name": "input", + "type": "RegisterDto" + } + ] + }, + { + "path": "api/account/send-password-reset-code", + "method": "POST", + "groupName": "Account", + "responseType": "System.Void", + "responseTypeAsJson": "", + "parameterDescriptions": [ + { + "name": "input", + "type": "SendPasswordResetCodeDto" + } + ] + }, + { + "path": "api/account/verify-password-reset-token", + "method": "POST", + "groupName": "Account", + "responseType": "System.Boolean", + "responseTypeAsJson": "true", + "parameterDescriptions": [ + { + "name": "input", + "type": "VerifyPasswordResetTokenInput" + } + ] + }, + { + "path": "api/account/reset-password", + "method": "POST", + "groupName": "Account", + "responseType": "System.Void", + "responseTypeAsJson": "", + "parameterDescriptions": [ + { + "name": "input", + "type": "ResetPasswordDto" + } + ] + }, + { + "path": "api/account/dynamic-claims/refresh", + "method": "POST", + "groupName": "DynamicClaims", + "responseType": "System.Void", + "responseTypeAsJson": "", + "parameterDescriptions": [] + }, + { + "path": "api/account/my-profile", + "method": "GET", + "groupName": "Profile", + "responseType": "Volo.Abp.Account.ProfileDto", + "responseTypeAsJson": "", + "parameterDescriptions": [] + }, + { + "path": "api/account/my-profile", + "method": "PUT", + "groupName": "Profile", + "responseType": "Volo.Abp.Account.ProfileDto", + "responseTypeAsJson": "", + "parameterDescriptions": [ + { + "name": "input", + "type": "UpdateProfileDto" + } + ] + }, + { + "path": "api/account/my-profile/change-password", + "method": "POST", + "groupName": "Profile", + "responseType": "System.Void", + "responseTypeAsJson": "", + "parameterDescriptions": [ + { + "name": "input", + "type": "ChangePasswordInput" + } + ] + } + ], + "contentType": "httpApi", + "name": "Defined Http Apis", + "summary": null } ] } \ No newline at end of file diff --git a/modules/account/src/Volo.Abp.Account.Web.OpenIddict/Volo.Abp.Account.Web.OpenIddict.abppkg.analyze.json b/modules/account/src/Volo.Abp.Account.Web.OpenIddict/Volo.Abp.Account.Web.OpenIddict.abppkg.analyze.json index 2f22b0023e..5f73497d46 100644 --- a/modules/account/src/Volo.Abp.Account.Web.OpenIddict/Volo.Abp.Account.Web.OpenIddict.abppkg.analyze.json +++ b/modules/account/src/Volo.Abp.Account.Web.OpenIddict/Volo.Abp.Account.Web.OpenIddict.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.Account.Web.OpenIddict", - "hash": "29785246e5bdaa8010c7da236efe3ba1", + "hash": "", "contents": [ { "namespace": "Volo.Abp.Account.Web", diff --git a/modules/account/src/Volo.Abp.Account.Web/Volo.Abp.Account.Web.abppkg.analyze.json b/modules/account/src/Volo.Abp.Account.Web/Volo.Abp.Account.Web.abppkg.analyze.json index f346e062ae..af62c4f131 100644 --- a/modules/account/src/Volo.Abp.Account.Web/Volo.Abp.Account.Web.abppkg.analyze.json +++ b/modules/account/src/Volo.Abp.Account.Web/Volo.Abp.Account.Web.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.Account.Web", - "hash": "93b7e37fb41330719f0911b2c1b31cf0", + "hash": "", "contents": [ { "namespace": "Volo.Abp.Account.Web", @@ -78,6 +78,107 @@ "contentType": "abpModule", "name": "AbpAccountWebModule", "summary": null + }, + { + "apis": [ + { + "path": "api/account/login", + "method": "POST", + "groupName": "Account", + "responseType": "Volo.Abp.Account.Web.Areas.Account.Controllers.Models.AbpLoginResult", + "responseTypeAsJson": "", + "parameterDescriptions": [ + { + "name": "login", + "type": "UserLoginInfo" + } + ] + }, + { + "path": "api/account/logout", + "method": "GET", + "groupName": "Account", + "responseType": "System.Void", + "responseTypeAsJson": "", + "parameterDescriptions": [] + }, + { + "path": "api/account/check-password", + "method": "POST", + "groupName": "Account", + "responseType": "Volo.Abp.Account.Web.Areas.Account.Controllers.Models.AbpLoginResult", + "responseTypeAsJson": "", + "parameterDescriptions": [ + { + "name": "login", + "type": "UserLoginInfo" + } + ] + } + ], + "contentType": "httpApi", + "name": "Defined Http Apis", + "summary": null + }, + { + "namespace": "Volo.Abp.Account.Web.Pages.Account", + "contentType": "webPage", + "name": "AccessDeniedModel", + "summary": null + }, + { + "namespace": "Volo.Abp.Account.Web.Pages.Account", + "contentType": "webPage", + "name": "ForgotPasswordModel", + "summary": null + }, + { + "namespace": "Volo.Abp.Account.Web.Pages.Account", + "contentType": "webPage", + "name": "LoggedOutModel", + "summary": null + }, + { + "namespace": "Volo.Abp.Account.Web.Pages.Account", + "contentType": "webPage", + "name": "LoginModel", + "summary": null + }, + { + "namespace": "Volo.Abp.Account.Web.Pages.Account", + "contentType": "webPage", + "name": "LogoutModel", + "summary": null + }, + { + "namespace": "Volo.Abp.Account.Web.Pages.Account", + "contentType": "webPage", + "name": "ManageModel", + "summary": null + }, + { + "namespace": "Volo.Abp.Account.Web.Pages.Account", + "contentType": "webPage", + "name": "PasswordResetLinkSentModel", + "summary": null + }, + { + "namespace": "Volo.Abp.Account.Web.Pages.Account", + "contentType": "webPage", + "name": "RegisterModel", + "summary": null + }, + { + "namespace": "Volo.Abp.Account.Web.Pages.Account", + "contentType": "webPage", + "name": "ResetPasswordModel", + "summary": null + }, + { + "namespace": "Volo.Abp.Account.Web.Pages.Account", + "contentType": "webPage", + "name": "ResetPasswordConfirmationModel", + "summary": null } ] } \ No newline at end of file diff --git a/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo.Abp.AuditLogging.Domain.Shared.abppkg.analyze.json b/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo.Abp.AuditLogging.Domain.Shared.abppkg.analyze.json index 459bd50c19..3dab2d3fe4 100644 --- a/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo.Abp.AuditLogging.Domain.Shared.abppkg.analyze.json +++ b/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo.Abp.AuditLogging.Domain.Shared.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.AuditLogging.Domain.Shared", - "hash": "8e82f96ec1349d214e72c8fb4f902460", + "hash": "", "contents": [ { "namespace": "Volo.Abp.AuditLogging", diff --git a/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain/Volo.Abp.AuditLogging.Domain.abppkg.analyze.json b/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain/Volo.Abp.AuditLogging.Domain.abppkg.analyze.json index 9d2726bc18..92016b016f 100644 --- a/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain/Volo.Abp.AuditLogging.Domain.abppkg.analyze.json +++ b/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain/Volo.Abp.AuditLogging.Domain.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.AuditLogging.Domain", - "hash": "fa171768247503b44e7e57d4518d2ef8", + "hash": "", "contents": [ { "namespace": "Volo.Abp.AuditLogging", @@ -274,7 +274,7 @@ { "name": "IMultiTenant", "namespace": "Volo.Abp.MultiTenancy", - "declaringAssemblyName": "Volo.Abp.MultiTenancy", + "declaringAssemblyName": "Volo.Abp.MultiTenancy.Abstractions", "fullName": "Volo.Abp.MultiTenancy.IMultiTenant" } ], @@ -486,6 +486,7 @@ "methods": [ { "returnType": "List", + "namespace": "Volo.Abp.AuditLogging", "name": "GetListAsync", "summary": null, "isAsync": true, @@ -528,6 +529,11 @@ "name": "url", "isOptional": true }, + { + "type": "String", + "name": "clientId", + "isOptional": true + }, { "type": "Nullable", "name": "userId", @@ -587,6 +593,7 @@ }, { "returnType": "Int64", + "namespace": "Volo.Abp.AuditLogging", "name": "GetCountAsync", "summary": null, "isAsync": true, @@ -614,6 +621,11 @@ "name": "url", "isOptional": true }, + { + "type": "String", + "name": "clientId", + "isOptional": true + }, { "type": "Nullable", "name": "userId", @@ -668,6 +680,7 @@ }, { "returnType": "Dictionary", + "namespace": "Volo.Abp.AuditLogging", "name": "GetAverageExecutionDurationPerDayAsync", "summary": null, "isAsync": true, @@ -694,6 +707,7 @@ }, { "returnType": "EntityChange", + "namespace": "Volo.Abp.AuditLogging", "name": "GetEntityChange", "summary": null, "isAsync": true, @@ -715,6 +729,7 @@ }, { "returnType": "List", + "namespace": "Volo.Abp.AuditLogging", "name": "GetEntityChangeListAsync", "summary": null, "isAsync": true, @@ -781,6 +796,7 @@ }, { "returnType": "Int64", + "namespace": "Volo.Abp.AuditLogging", "name": "GetEntityChangeCountAsync", "summary": null, "isAsync": true, @@ -827,6 +843,7 @@ }, { "returnType": "EntityChangeWithUsername", + "namespace": "Volo.Abp.AuditLogging", "name": "GetEntityChangeWithUsernameAsync", "summary": null, "isAsync": true, @@ -848,6 +865,7 @@ }, { "returnType": "List", + "namespace": "Volo.Abp.AuditLogging", "name": "GetEntityChangesWithUsernameAsync", "summary": null, "isAsync": true, diff --git a/modules/audit-logging/src/Volo.Abp.AuditLogging.EntityFrameworkCore/Volo.Abp.AuditLogging.EntityFrameworkCore.abppkg.analyze.json b/modules/audit-logging/src/Volo.Abp.AuditLogging.EntityFrameworkCore/Volo.Abp.AuditLogging.EntityFrameworkCore.abppkg.analyze.json index 5e5f6b6373..40affc51e8 100644 --- a/modules/audit-logging/src/Volo.Abp.AuditLogging.EntityFrameworkCore/Volo.Abp.AuditLogging.EntityFrameworkCore.abppkg.analyze.json +++ b/modules/audit-logging/src/Volo.Abp.AuditLogging.EntityFrameworkCore/Volo.Abp.AuditLogging.EntityFrameworkCore.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.AuditLogging.EntityFrameworkCore", - "hash": "ce7134690167eded17ba2eac28d2d34e", + "hash": "", "contents": [ { "namespace": "Volo.Abp.AuditLogging.EntityFrameworkCore", @@ -67,33 +67,27 @@ { "namespace": "Volo.Abp.AuditLogging.EntityFrameworkCore", "connectionStringName": "AbpAuditLogging", - "databaseTables": [ - { - "entityFullName": "Volo.Abp.AuditLogging.AuditLog", - "contentType": "databaseTable", - "name": "AbpAuditLogs", - "summary": null - }, - { - "entityFullName": "Volo.Abp.AuditLogging.AuditLogAction", - "contentType": "databaseTable", - "name": "AbpAuditLogActions", - "summary": null - }, - { - "entityFullName": "Volo.Abp.AuditLogging.EntityChange", - "contentType": "databaseTable", - "name": "AbpEntityChanges", - "summary": null - }, + "databaseTables": [], + "replacedDbContexts": [], + "modelBuilderExtensionMethods": [ { - "entityFullName": "Volo.Abp.AuditLogging.EntityPropertyChange", - "contentType": "databaseTable", - "name": "AbpEntityPropertyChanges", - "summary": null + "returnType": "Void", + "namespace": "Volo.Abp.AuditLogging.EntityFrameworkCore", + "name": "ConfigureAuditLogging", + "summary": null, + "isAsync": false, + "isPublic": true, + "isPrivate": false, + "isStatic": true, + "parameters": [ + { + "type": "ModelBuilder", + "name": "builder", + "isOptional": false + } + ] } ], - "replacedDbContexts": [], "implementingInterfaces": [ { "name": "IInfrastructure", diff --git a/modules/audit-logging/src/Volo.Abp.AuditLogging.MongoDB/Volo.Abp.AuditLogging.MongoDB.abppkg.analyze.json b/modules/audit-logging/src/Volo.Abp.AuditLogging.MongoDB/Volo.Abp.AuditLogging.MongoDB.abppkg.analyze.json index 7b26febfce..93652f22ec 100644 --- a/modules/audit-logging/src/Volo.Abp.AuditLogging.MongoDB/Volo.Abp.AuditLogging.MongoDB.abppkg.analyze.json +++ b/modules/audit-logging/src/Volo.Abp.AuditLogging.MongoDB/Volo.Abp.AuditLogging.MongoDB.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.AuditLogging.MongoDB", - "hash": "ce6dfe92b247a77b0138c47e0da4a98c", + "hash": "", "contents": [ { "namespace": "Volo.Abp.AuditLogging.MongoDB", @@ -71,7 +71,7 @@ { "entityFullName": "Volo.Abp.AuditLogging.AuditLog", "contentType": "databaseCollection", - "name": "AbpAuditLogs", + "name": "AuditLogs", "summary": null } ], diff --git a/modules/background-jobs/src/Volo.Abp.BackgroundJobs.Domain.Shared/Volo.Abp.BackgroundJobs.Domain.Shared.abppkg.analyze.json b/modules/background-jobs/src/Volo.Abp.BackgroundJobs.Domain.Shared/Volo.Abp.BackgroundJobs.Domain.Shared.abppkg.analyze.json index c916e58771..40eeda286c 100644 --- a/modules/background-jobs/src/Volo.Abp.BackgroundJobs.Domain.Shared/Volo.Abp.BackgroundJobs.Domain.Shared.abppkg.analyze.json +++ b/modules/background-jobs/src/Volo.Abp.BackgroundJobs.Domain.Shared/Volo.Abp.BackgroundJobs.Domain.Shared.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.BackgroundJobs.Domain.Shared", - "hash": "ad745dc8f75ef6e5b391ee5eca14a895", + "hash": "", "contents": [ { "namespace": "Volo.Abp.BackgroundJobs", diff --git a/modules/background-jobs/src/Volo.Abp.BackgroundJobs.Domain/Volo.Abp.BackgroundJobs.Domain.abppkg.analyze.json b/modules/background-jobs/src/Volo.Abp.BackgroundJobs.Domain/Volo.Abp.BackgroundJobs.Domain.abppkg.analyze.json index e969d25819..f792712158 100644 --- a/modules/background-jobs/src/Volo.Abp.BackgroundJobs.Domain/Volo.Abp.BackgroundJobs.Domain.abppkg.analyze.json +++ b/modules/background-jobs/src/Volo.Abp.BackgroundJobs.Domain/Volo.Abp.BackgroundJobs.Domain.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.BackgroundJobs.Domain", - "hash": "9135b4c99ca5f16a980041e8621fb415", + "hash": "", "contents": [ { "namespace": "Volo.Abp.BackgroundJobs", @@ -222,6 +222,7 @@ "methods": [ { "returnType": "List", + "namespace": "Volo.Abp.BackgroundJobs", "name": "GetWaitingListAsync", "summary": null, "isAsync": true, diff --git a/modules/background-jobs/src/Volo.Abp.BackgroundJobs.EntityFrameworkCore/Volo.Abp.BackgroundJobs.EntityFrameworkCore.abppkg.analyze.json b/modules/background-jobs/src/Volo.Abp.BackgroundJobs.EntityFrameworkCore/Volo.Abp.BackgroundJobs.EntityFrameworkCore.abppkg.analyze.json index 41772a0d4f..abe0548d04 100644 --- a/modules/background-jobs/src/Volo.Abp.BackgroundJobs.EntityFrameworkCore/Volo.Abp.BackgroundJobs.EntityFrameworkCore.abppkg.analyze.json +++ b/modules/background-jobs/src/Volo.Abp.BackgroundJobs.EntityFrameworkCore/Volo.Abp.BackgroundJobs.EntityFrameworkCore.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.BackgroundJobs.EntityFrameworkCore", - "hash": "093b92974b3f005cca5e441d8cc1bafb", + "hash": "", "contents": [ { "namespace": "Volo.Abp.BackgroundJobs.EntityFrameworkCore", @@ -67,15 +67,27 @@ { "namespace": "Volo.Abp.BackgroundJobs.EntityFrameworkCore", "connectionStringName": "AbpBackgroundJobs", - "databaseTables": [ + "databaseTables": [], + "replacedDbContexts": [], + "modelBuilderExtensionMethods": [ { - "entityFullName": "Volo.Abp.BackgroundJobs.BackgroundJobRecord", - "contentType": "databaseTable", - "name": "AbpBackgroundJobs", - "summary": null + "returnType": "Void", + "namespace": "Volo.Abp.BackgroundJobs.EntityFrameworkCore", + "name": "ConfigureBackgroundJobs", + "summary": null, + "isAsync": false, + "isPublic": true, + "isPrivate": false, + "isStatic": true, + "parameters": [ + { + "type": "ModelBuilder", + "name": "builder", + "isOptional": false + } + ] } ], - "replacedDbContexts": [], "implementingInterfaces": [ { "name": "IInfrastructure", diff --git a/modules/background-jobs/src/Volo.Abp.BackgroundJobs.MongoDB/Volo.Abp.BackgroundJobs.MongoDB.abppkg.analyze.json b/modules/background-jobs/src/Volo.Abp.BackgroundJobs.MongoDB/Volo.Abp.BackgroundJobs.MongoDB.abppkg.analyze.json index 3c333134f7..d6e11b2a6f 100644 --- a/modules/background-jobs/src/Volo.Abp.BackgroundJobs.MongoDB/Volo.Abp.BackgroundJobs.MongoDB.abppkg.analyze.json +++ b/modules/background-jobs/src/Volo.Abp.BackgroundJobs.MongoDB/Volo.Abp.BackgroundJobs.MongoDB.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.BackgroundJobs.MongoDB", - "hash": "43dcde5f0f68f0b06ce3158a154b58e1", + "hash": "", "contents": [ { "namespace": "Volo.Abp.BackgroundJobs.MongoDB", @@ -71,7 +71,7 @@ { "entityFullName": "Volo.Abp.BackgroundJobs.BackgroundJobRecord", "contentType": "databaseCollection", - "name": "AbpBackgroundJobs", + "name": "BackgroundJobs", "summary": null } ], diff --git a/modules/basic-theme/src/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic.abppkg.analyze.json b/modules/basic-theme/src/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic.abppkg.analyze.json index 0e1d29e0df..14797aa792 100644 --- a/modules/basic-theme/src/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic.abppkg.analyze.json +++ b/modules/basic-theme/src/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic", - "hash": "69ff20961072c952f3a841d6e783cba9", + "hash": "", "contents": [ { "namespace": "Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic", diff --git a/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.Demo/package.json b/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.Demo/package.json index 9b15609e88..fc53ff7c76 100644 --- a/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.Demo/package.json +++ b/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.Demo/package.json @@ -3,8 +3,8 @@ "name": "asp.net", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.shared": "~8.2.2", - "@abp/prismjs": "~8.2.2", - "@abp/highlight.js": "~8.2.2" + "@abp/aspnetcore.mvc.ui.theme.shared": "~8.2.3", + "@abp/prismjs": "~8.2.3", + "@abp/highlight.js": "~8.2.3" } } diff --git a/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.Demo/yarn.lock b/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.Demo/yarn.lock index 8f2f7c6c0c..0c24a28d41 100644 --- a/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.Demo/yarn.lock +++ b/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.Demo/yarn.lock @@ -2,212 +2,212 @@ # yarn lockfile v1 -"@abp/aspnetcore.mvc.ui.theme.shared@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-8.2.2.tgz#419da4bac71ceb7b1afbd8b740b0675f51de6575" - integrity sha512-tYPbEqoENmxzN9zaBAF8/ssNk8uuVTkKpi663612H1b85ik3Tbm4H3gamKbSR1TxMwIJZxVyizxDMDhLu6ff3w== - dependencies: - "@abp/aspnetcore.mvc.ui" "~8.2.2" - "@abp/bootstrap" "~8.2.2" - "@abp/bootstrap-datepicker" "~8.2.2" - "@abp/bootstrap-daterangepicker" "~8.2.2" - "@abp/datatables.net-bs5" "~8.2.2" - "@abp/font-awesome" "~8.2.2" - "@abp/jquery-form" "~8.2.2" - "@abp/jquery-validation-unobtrusive" "~8.2.2" - "@abp/lodash" "~8.2.2" - "@abp/luxon" "~8.2.2" - "@abp/malihu-custom-scrollbar-plugin" "~8.2.2" - "@abp/moment" "~8.2.2" - "@abp/select2" "~8.2.2" - "@abp/sweetalert2" "~8.2.2" - "@abp/timeago" "~8.2.2" - "@abp/toastr" "~8.2.2" - -"@abp/aspnetcore.mvc.ui@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-8.2.2.tgz#53de1c58c14a98f15f408c9a404e5052cc28c966" - integrity sha512-XjduoVC/2nrlo7R77cTgvDQGZK0fqATx1VaHPHbQJLKvjZXS7rIU6Q0Eye+XcnGnw4udcq3luAorqI96JFkBiQ== +"@abp/aspnetcore.mvc.ui.theme.shared@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-8.2.3.tgz#b1a795a947cf710730ddeec4684e706cd0d8b853" + integrity sha512-UDRzWXFUL1kHlrhzgjXwo+UxFwkthyQj2agk889mdt4doZ4NGbHKmgdHNrtt1PIOM8VOcQNubBx5VePffuMcYA== + dependencies: + "@abp/aspnetcore.mvc.ui" "~8.2.3" + "@abp/bootstrap" "~8.2.3" + "@abp/bootstrap-datepicker" "~8.2.3" + "@abp/bootstrap-daterangepicker" "~8.2.3" + "@abp/datatables.net-bs5" "~8.2.3" + "@abp/font-awesome" "~8.2.3" + "@abp/jquery-form" "~8.2.3" + "@abp/jquery-validation-unobtrusive" "~8.2.3" + "@abp/lodash" "~8.2.3" + "@abp/luxon" "~8.2.3" + "@abp/malihu-custom-scrollbar-plugin" "~8.2.3" + "@abp/moment" "~8.2.3" + "@abp/select2" "~8.2.3" + "@abp/sweetalert2" "~8.2.3" + "@abp/timeago" "~8.2.3" + "@abp/toastr" "~8.2.3" + +"@abp/aspnetcore.mvc.ui@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-8.2.3.tgz#02e20c42b198bf6bb13e313b4a4b435f17dc9ddd" + integrity sha512-414cAonBhJDZmlEat4gY1Qaf1npgJjYj/re9O0Rk/FdW2vO8Qt56LozGIsbvVY4RjMsQwpwkkgH4RWlIKm3q8w== dependencies: ansi-colors "^4.1.1" -"@abp/bootstrap-datepicker@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-8.2.2.tgz#a14ff40f5bc29e9ad50ea68391f1238ab86f4d1b" - integrity sha512-nqDfEkbFj20ULJap5tsEThmzIUssfIhV8sqBitd9xKnCmoGpbywp/SZgB2hHNEqb3zIJaewNS9P11PoxqRpdBA== +"@abp/bootstrap-datepicker@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-8.2.3.tgz#ceec259251a692d25daae9263b54a3142b007f23" + integrity sha512-o3uZtuw/NKJTCKf5tK5U7Qii+9PgJGWIjLkqb7mXGftIMdqOaJ+QHZe+J9XaO4of8l2HtGkXp+fuQGVJBTlFAg== dependencies: bootstrap-datepicker "^1.9.0" -"@abp/bootstrap-daterangepicker@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-8.2.2.tgz#bff1cf71bce370ae0e4f3c04b9eee4221604959b" - integrity sha512-M0RbUHN52R7ZAyudhlQ6zWAbMmZ88FVR9EPP2dovfKLKfOUGWQiww2QA3a5gvwo/FBObC95XYfpVg72IQgr5ww== +"@abp/bootstrap-daterangepicker@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-8.2.3.tgz#b33117eb5dfcdbea9cb5212acfecd4e040ce7c2d" + integrity sha512-UR1TXFStbvD54wb6vEVK3FVHYtgugLBdDg4Xyh+aNe2sUTm+kfXh4+1Xm+3R1SV3cWvRT57Sy1bc306c6CQ7Zg== dependencies: bootstrap-daterangepicker "^3.1.0" -"@abp/bootstrap@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-8.2.2.tgz#78db0e4f54dd4b09462d386df83e451506717af6" - integrity sha512-A6hdNB2+Uokm5CniB6+qxR7Q2dyRwMLv2ct0v6PxOT1M+/Z2+oCzFDHLYKnmbcx5pg+1MmvnNC+clQZELDxjyw== +"@abp/bootstrap@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-8.2.3.tgz#462c4a5712d6d0baee345dc318fc5463527cbc21" + integrity sha512-jThgI5nlP5A/cKLUoNgRA5ldHz5xNoGkD+V0Z/gScbeAE8Q8eu7Q5P82PLF8B8cgKjOqJXb2L5kbdNYFdqIOwg== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" bootstrap "^5.1.3" -"@abp/clipboard@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-8.2.2.tgz#cb9a7bc2d08b8fb762c24cbd53f86a6aa5c8197a" - integrity sha512-D9azkwO9ZAwKsqdYRkzz0JOukfMdhUOpI382VxmfLTHgTgrby6xTae8SGIrXthgemEny3RlqYAX2R7EVfN3upg== +"@abp/clipboard@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-8.2.3.tgz#9e0c0b750114ddaca0beba1051dd7fc1fe77f543" + integrity sha512-RS1pVeeN1/5LlDNBBRDFUqR+xpfWteCZfIByh8xAbec1xuxHmxxxvb3kv1Wp7n4c1ec3V0yLRyvaj0SfYmnWNA== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" clipboard "^2.0.8" -"@abp/core@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-8.2.2.tgz#b4905fa539272bee26f5f95ceb2224b48cfac8ab" - integrity sha512-YKbT92+T9Zs0IvvIPJrMcBUjwR5u6U6f1KegRcRR79b43ZckIrQbqftjyFLF7YSPuJlVCHoO0YhU2Q1EagiFDg== +"@abp/core@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-8.2.3.tgz#1474f8e24cc8707bd909e1cd49230cdaa54c447e" + integrity sha512-mluL7NHWRxvjwHHGd3kOWQg0Tnmt4o2ih/KfdDJl7z4lpy386yL+UutkE3NNhgbEGWDt1hnS5rKFZabhaahwWg== dependencies: - "@abp/utils" "~8.2.2" + "@abp/utils" "~8.2.3" -"@abp/datatables.net-bs5@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-8.2.2.tgz#c314a615cf98cf0fdb6a97ffea3a42d0b050ccd5" - integrity sha512-dkb0wHdZ93mLSwmHbJ3hMKBm0ZFA9jpLxxWf7u+c7sBU+McACRdFHyl0x6dtinspDgo5GaPHGqmbsVx5S7eM2w== +"@abp/datatables.net-bs5@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-8.2.3.tgz#8e80767d7677ebf69a56248039ef5604499bbc30" + integrity sha512-XTjo15yM/nJiFfRtTMnfOJNh6FX+Vmmf5Kq5aG5XjUcp1IepEAgiNNOSmh+zRhUt4BDZ4RWcfSSGNbh0icUIOg== dependencies: - "@abp/datatables.net" "~8.2.2" + "@abp/datatables.net" "~8.2.3" datatables.net-bs5 "^1.11.4" -"@abp/datatables.net@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-8.2.2.tgz#1627836a2ee7efe1d470bdc32ec437ed86996fc8" - integrity sha512-hPAyx90kI4s+LlUsN6GfLWFEGe9JXExgqSzFUwkOqi+WS+kGWvPElUXfS06VaKiu/h/H9SVl+X+iajd3L9Zr9g== +"@abp/datatables.net@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-8.2.3.tgz#e38567679720546d42b895d9a464728ea3730292" + integrity sha512-CT18SqBuY25UmjNbiSbI9eqvbPNZZm+yYsZoasSUv3JOpO1oPfclgtZV5FKeBQQvM5Vc0BhRs7KMKF2F0pwszA== dependencies: - "@abp/jquery" "~8.2.2" + "@abp/jquery" "~8.2.3" datatables.net "^1.11.4" -"@abp/font-awesome@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-8.2.2.tgz#924ce3b78a902ef844901d824d8eb616cbc32ba8" - integrity sha512-yCn94hjowg42hTvyf3xJu7kOCMWfh5Qw4D8PbiaF3WwP1kbpC2QCeZ/Rh9Oltsml34rkhMKPTzLzZqki25Q5QQ== +"@abp/font-awesome@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-8.2.3.tgz#92d7645c94cda07becb8e2ea23e7769ec55c43b1" + integrity sha512-OLQRBuPHtPyM5IHhIJwsbkE8idmu/DDAIm92kOa97p0r0Hx7epnKx+Yrwz23FuRH2wYlmYJqDmwj1VTK90gxYA== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" "@fortawesome/fontawesome-free" "^6.5.1" -"@abp/highlight.js@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/highlight.js/-/highlight.js-8.2.2.tgz#06d5acce5713357d320854297744a39e1d788054" - integrity sha512-TqiHFFDOWcbSXbj1ykePSxnVW8SMNZpgta8MBZq6obtwbAKsLV8D/xfPSr8/kl7sQEFIEWTwCdTGuOBE3xDiaw== +"@abp/highlight.js@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/highlight.js/-/highlight.js-8.2.3.tgz#bae44df0505814cc0692c3a1ea7ca1e36988a677" + integrity sha512-IFNDZcXGKMLY/IZRLZVxY7vsoaWYD2aZYCdqKGFyxHaBTB3KltEDC1Nb6pxE0C1YlNJS5g3BOC+V/z8ZD7h6SA== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" "@highlightjs/cdn-assets" "~11.4.0" -"@abp/jquery-form@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-8.2.2.tgz#aad534f5b4f4346ac97249040af663e70ecbd03e" - integrity sha512-QueETCaVq6g8b7c0jIepbKZKS2SO/aCZJy/uRc/lPumr2Hs96aZvHQGIAZopCQKPfF9mLp+Sc2QEN/zdt8QiNA== +"@abp/jquery-form@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-8.2.3.tgz#a8c593e6afbbcff5250657f052fc9912cdf352ac" + integrity sha512-AhkNUdyXE/q7hsra+1xj8W/g7lkIgR9YXrr0RgddPW+dqYqVvbYdFcPliHaSsl+kzPHSRx7eez8AjQSZlReIjg== dependencies: - "@abp/jquery" "~8.2.2" + "@abp/jquery" "~8.2.3" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-8.2.2.tgz#7396dd6a62cdf0796d967b167da5cc91974a9c5e" - integrity sha512-dH0ax7Lxaf+MeZC0z80IPHyXocuA26lzHtwFx/g4NIxxV1gKL8/wI+rAX1ulloSdqEA8kN6rlgOZMqiG2kNWcw== +"@abp/jquery-validation-unobtrusive@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-8.2.3.tgz#d21cbc1694b68f6377134e4e535d19e2cda0fb8d" + integrity sha512-2Ilrveqsj5jorZ2N75zLlHO8+NGRmLecRWIDZZmuyCXVF/LyyceaNBhkdiV+Ofcts387TVkQkjkoArV10Uu+Jg== dependencies: - "@abp/jquery-validation" "~8.2.2" + "@abp/jquery-validation" "~8.2.3" jquery-validation-unobtrusive "^3.2.12" -"@abp/jquery-validation@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-8.2.2.tgz#25ac2fb35aa8f60ba82116ef429996e7ae8518bb" - integrity sha512-WbvobzuEKmnFdCK2Bic7YNhbuauN1mIzgrnd8Ap0nLAxpwsVYkUBwKHoi7jyYv+Udvl39VjYFeciul9rZYI2pg== +"@abp/jquery-validation@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-8.2.3.tgz#642b7f56c1da5469443f864f04eb09cb0bf75bb4" + integrity sha512-qbML5oyoq9ltq212qD8C7jVOqNwTdvyRzTu3SsN15AXecapZxO/BPjhCgLb99OK4zT7hZaC8R+H0CDBa3O5pvg== dependencies: - "@abp/jquery" "~8.2.2" + "@abp/jquery" "~8.2.3" jquery-validation "^1.19.3" -"@abp/jquery@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-8.2.2.tgz#2496431ed11c5e2410e0efaa34404ac760a064ff" - integrity sha512-2ItXN6O45NIpSK/D8wUu+xVnrkxhc79Pce/yYMzFzI7QGYaKvpaP+tVWQQmKEa7RCNCyPS57AxuDtNqI4LSqDQ== +"@abp/jquery@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-8.2.3.tgz#e73d1df860276ae2a081c6f945f586720a71781d" + integrity sha512-SDOnVUJo0g3tuA40Z2Nme8yI1nTCwp0Mh2aAf3L3W+F8lzV3OQS8mUmpektxhPsFen0DufSvilOC+aI6/Jx5lQ== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" jquery "~3.6.0" -"@abp/lodash@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-8.2.2.tgz#a12ed0018f831c0f763da5c6a09d07494acf01ed" - integrity sha512-X+Y3CBMjNgeK/Y47MPMF4sH8PRF0TP+YpjvZ9lbGVSxiQPsNdrYKseZ1gp+AnDBHvj+Oxb7s/aRVZ1pbDJpXiQ== +"@abp/lodash@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-8.2.3.tgz#e78ef9e681369af51b6c36a0a450884c4ee5677a" + integrity sha512-47YoHS0CrH+PiQ8eF/ASYodGH+foBRBJVkDmRgZ1vegs10CJukBYgAutPlNMC2onlEF1jLYJ40ZKsHd6TrFQkA== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" lodash "^4.17.21" -"@abp/luxon@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-8.2.2.tgz#76026e1ae79601cc322cda458ac1f2b2cb76190a" - integrity sha512-I08NgiUJwCfNvwOZNYjwB/+2bUwulU3urqKIIB9Mg6PGK2hohsE8k2CMEijA+T25YYO32xgXevOfOq5YU2NCTw== +"@abp/luxon@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-8.2.3.tgz#445d763360b29a7591ab31898ce522e61be9d97e" + integrity sha512-pT+oO4znadhSleuH3x6n1nEgOzfVl0aHurt4F+wnJHyP7SdC2+RjZOYJUkuRIaZzflG4699Qq0UgAW6GfpuUgg== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" luxon "^2.3.0" -"@abp/malihu-custom-scrollbar-plugin@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-8.2.2.tgz#53405af2869fde990962914f24228a9fa65bab2f" - integrity sha512-/6g+Qm/5CbCzVgohEH8C72smIN4Lw/uL/KJbP7uEBVAXfKqY6vGA2VhrKNvIiBPfktIzZCHrcKsHwysMPtOS2Q== +"@abp/malihu-custom-scrollbar-plugin@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-8.2.3.tgz#7018c4ab65b78512bf5ea8f542fb0c7119a39e0b" + integrity sha512-CCc0iOaulmssuUL7RsAApRzYD+SXAPbqz5iod6yuyx3Y5Vaz4ik+2/cG7XZgwcgsmctJYZl3IxZ/ijnZXLgHUw== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/moment@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-8.2.2.tgz#1895904212fde6dc1793611940a9f8ec95b2c45f" - integrity sha512-VhhCOzVpapvFOn1gzQIcXB/RMyRKcZOlVLGLTqosg14woPSFm0+0utLHkPOLihWbUSQqDRYKvC2cPbNC6CknKg== +"@abp/moment@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-8.2.3.tgz#126039218e6068eca4279eae1eb5375207780931" + integrity sha512-nV11P1KqX8xPmb/bs3yYbFPz7ZOXWnZPKd4Z2k0JYaFTS2C07twgS0uQQHwW6iP8DrS1QBBAyLYBuM3ctgB0dg== dependencies: moment "^2.9.0" -"@abp/prismjs@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-8.2.2.tgz#1910701fbe28d87d1312f16e865778f0e8b19670" - integrity sha512-5KaPPTcLc5/F4MB375orQe5W04bPcE8D/OTGllsj2RViGnmmkVj7Wzkwm6R63qWJtBrYuf9sh2c6eUACNkR2/A== +"@abp/prismjs@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-8.2.3.tgz#8927f1660815f4e3de11085ea5f3a73b127a858a" + integrity sha512-JJ/wlLlWShGYj0FMFjxriCIA4v1Fe+oHTgo1Kt9JpYkYG+Zq+rHsj1tvNthh2GU7Y69Kt2w1r1LpEDKZZHu58A== dependencies: - "@abp/clipboard" "~8.2.2" - "@abp/core" "~8.2.2" + "@abp/clipboard" "~8.2.3" + "@abp/core" "~8.2.3" prismjs "^1.26.0" -"@abp/select2@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-8.2.2.tgz#0dc011b838824598dc0a716e55b597aca62712dc" - integrity sha512-zTgtOl2iWihbGja3l8IIi+PqepYNk6O7fUcf6C9cdnBM4IrZSnJqw3sQDr9DqIoEzgdC6izVQzPJJEAi5CZ8Xg== +"@abp/select2@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-8.2.3.tgz#fc92d19ba22cbef5df9b8b2f85b4d21d3139883f" + integrity sha512-/MEJkSuM5+N5OIBLbrQUARUV++NpH9pVq4+btYhghDQDtHYrMHKU41QsginTFKfqBZ4f+OYV/HPnOuj7DJxOBw== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" select2 "^4.0.13" -"@abp/sweetalert2@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-8.2.2.tgz#1c75ec9ef1df2eec6304368667052d8ff9c9e795" - integrity sha512-yNgVxJ6E/cEtc8DYn00BtF9XFLShlZRsAnsipiP74YDvQKWUQSnwi70QoHEYDk2tJ+RsXqtZudvrKv8TyH/ijQ== +"@abp/sweetalert2@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-8.2.3.tgz#a82d674e262e9db89bc219ac350cae8ef17d7669" + integrity sha512-ap8vOgkKbmhAmDfVmEJPyVbIzA3V3mi9SvP/OLaNYEaMG0AppYf3iiSvC+6TA+qAFQuF5fI1oKUcsiE68uQGjw== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" sweetalert2 "^11.3.6" -"@abp/timeago@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-8.2.2.tgz#8af9558d325b2f2f9d9c5b1f90ac9eaf5531429b" - integrity sha512-ILdMeCTDNvmVOSm8Xc9ppL1xI1NoDzLbUCUojI7mvEFCE8sw3QGiFGhW6W7kYcoD7sRkxFl1Jn5V/urpAiQwaQ== +"@abp/timeago@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-8.2.3.tgz#dede68da0b5e252a573b0a1c5a9e4c831bc3c820" + integrity sha512-AbYf35a5M4QMAFK3aV6JE7QHR3GzpOX1zsun39i+97ZrNZf6do/eIgDx6dolTlSb0AsHf8qCrf7T6o1kIaXQ2w== dependencies: - "@abp/jquery" "~8.2.2" + "@abp/jquery" "~8.2.3" timeago "^1.6.7" -"@abp/toastr@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-8.2.2.tgz#a59d5b29e43698dbb614792bfd51185453859a7f" - integrity sha512-I4iiXV/SSXiD4UGM5oVsg6m6p4XmuxvqWmjOLSyoUfJQMC378mzNX0Ec9hYIY42C+GS2NalKtoaaYzBfcEtwoQ== +"@abp/toastr@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-8.2.3.tgz#77767666d578c05f039e84178c428370f6f10802" + integrity sha512-V1H0Efik/kGsRuTNPl//FsoH/8VU58S1K4GQ9k2V1bi8INaC/kU//I9frwOJsXd55imvsbmzh4XzrJ574eU84w== dependencies: - "@abp/jquery" "~8.2.2" + "@abp/jquery" "~8.2.3" toastr "^2.1.4" -"@abp/utils@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-8.2.2.tgz#84035d36e968c8ecdeee3c7617aa45bfeb3f6afd" - integrity sha512-70hmgTd7N63AnanzZYUWpobckhPzplBjlRmMhIi+9WZLQfxWpM/EN6l+qQndjAMMvgFl/vW03BUJh1fL9kGynA== +"@abp/utils@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-8.2.3.tgz#05e3d419ee9a6228f7ed4f86e8fd03f3ce57ed27" + integrity sha512-WMs/okBxGitkGRdsikByyJLFXRSD/DPfBWZdDhU4+TvcQmnTqog9S75kZ8CUpUe/wwDHYsY51ef6N6jOfkGTFQ== dependencies: just-compare "^2.3.0" diff --git a/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic.Demo/package.json b/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic.Demo/package.json index e70d84e1a4..999387c332 100644 --- a/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic.Demo/package.json +++ b/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic.Demo/package.json @@ -3,8 +3,8 @@ "name": "asp.net", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "~8.2.2", - "@abp/prismjs": "~8.2.2" + "@abp/aspnetcore.mvc.ui.theme.basic": "~8.2.3", + "@abp/prismjs": "~8.2.3" }, "devDependencies": {} } diff --git a/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic.Demo/yarn.lock b/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic.Demo/yarn.lock index e0afb0de3c..86d1bf43fa 100644 --- a/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic.Demo/yarn.lock +++ b/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic.Demo/yarn.lock @@ -2,211 +2,211 @@ # yarn lockfile v1 -"@abp/aspnetcore.mvc.ui.theme.basic@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-8.2.2.tgz#0b18f3eee58b4a115e861a3732514a02d613d301" - integrity sha512-fFytBe1n+DxK7rVPnO8zqZWixBTDfdSrFUyg+qgpe+/Q10ec7x9j5noB+aiF73OZelJ9LGKz2gl+MS66Erpy2A== - dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~8.2.2" - -"@abp/aspnetcore.mvc.ui.theme.shared@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-8.2.2.tgz#419da4bac71ceb7b1afbd8b740b0675f51de6575" - integrity sha512-tYPbEqoENmxzN9zaBAF8/ssNk8uuVTkKpi663612H1b85ik3Tbm4H3gamKbSR1TxMwIJZxVyizxDMDhLu6ff3w== - dependencies: - "@abp/aspnetcore.mvc.ui" "~8.2.2" - "@abp/bootstrap" "~8.2.2" - "@abp/bootstrap-datepicker" "~8.2.2" - "@abp/bootstrap-daterangepicker" "~8.2.2" - "@abp/datatables.net-bs5" "~8.2.2" - "@abp/font-awesome" "~8.2.2" - "@abp/jquery-form" "~8.2.2" - "@abp/jquery-validation-unobtrusive" "~8.2.2" - "@abp/lodash" "~8.2.2" - "@abp/luxon" "~8.2.2" - "@abp/malihu-custom-scrollbar-plugin" "~8.2.2" - "@abp/moment" "~8.2.2" - "@abp/select2" "~8.2.2" - "@abp/sweetalert2" "~8.2.2" - "@abp/timeago" "~8.2.2" - "@abp/toastr" "~8.2.2" - -"@abp/aspnetcore.mvc.ui@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-8.2.2.tgz#53de1c58c14a98f15f408c9a404e5052cc28c966" - integrity sha512-XjduoVC/2nrlo7R77cTgvDQGZK0fqATx1VaHPHbQJLKvjZXS7rIU6Q0Eye+XcnGnw4udcq3luAorqI96JFkBiQ== +"@abp/aspnetcore.mvc.ui.theme.basic@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-8.2.3.tgz#4456eef32942a1064543f46b9b22fdd941ec209d" + integrity sha512-CmJ7Jp5guO/lCXb9IjrhZ0jpnlbL0d3k/7w6gp/jGhFZ5w7gTgI+ZOtr4jzQnQRWF+ZwaVhsgtfBG9PdNl63QA== + dependencies: + "@abp/aspnetcore.mvc.ui.theme.shared" "~8.2.3" + +"@abp/aspnetcore.mvc.ui.theme.shared@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-8.2.3.tgz#b1a795a947cf710730ddeec4684e706cd0d8b853" + integrity sha512-UDRzWXFUL1kHlrhzgjXwo+UxFwkthyQj2agk889mdt4doZ4NGbHKmgdHNrtt1PIOM8VOcQNubBx5VePffuMcYA== + dependencies: + "@abp/aspnetcore.mvc.ui" "~8.2.3" + "@abp/bootstrap" "~8.2.3" + "@abp/bootstrap-datepicker" "~8.2.3" + "@abp/bootstrap-daterangepicker" "~8.2.3" + "@abp/datatables.net-bs5" "~8.2.3" + "@abp/font-awesome" "~8.2.3" + "@abp/jquery-form" "~8.2.3" + "@abp/jquery-validation-unobtrusive" "~8.2.3" + "@abp/lodash" "~8.2.3" + "@abp/luxon" "~8.2.3" + "@abp/malihu-custom-scrollbar-plugin" "~8.2.3" + "@abp/moment" "~8.2.3" + "@abp/select2" "~8.2.3" + "@abp/sweetalert2" "~8.2.3" + "@abp/timeago" "~8.2.3" + "@abp/toastr" "~8.2.3" + +"@abp/aspnetcore.mvc.ui@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-8.2.3.tgz#02e20c42b198bf6bb13e313b4a4b435f17dc9ddd" + integrity sha512-414cAonBhJDZmlEat4gY1Qaf1npgJjYj/re9O0Rk/FdW2vO8Qt56LozGIsbvVY4RjMsQwpwkkgH4RWlIKm3q8w== dependencies: ansi-colors "^4.1.1" -"@abp/bootstrap-datepicker@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-8.2.2.tgz#a14ff40f5bc29e9ad50ea68391f1238ab86f4d1b" - integrity sha512-nqDfEkbFj20ULJap5tsEThmzIUssfIhV8sqBitd9xKnCmoGpbywp/SZgB2hHNEqb3zIJaewNS9P11PoxqRpdBA== +"@abp/bootstrap-datepicker@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-8.2.3.tgz#ceec259251a692d25daae9263b54a3142b007f23" + integrity sha512-o3uZtuw/NKJTCKf5tK5U7Qii+9PgJGWIjLkqb7mXGftIMdqOaJ+QHZe+J9XaO4of8l2HtGkXp+fuQGVJBTlFAg== dependencies: bootstrap-datepicker "^1.9.0" -"@abp/bootstrap-daterangepicker@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-8.2.2.tgz#bff1cf71bce370ae0e4f3c04b9eee4221604959b" - integrity sha512-M0RbUHN52R7ZAyudhlQ6zWAbMmZ88FVR9EPP2dovfKLKfOUGWQiww2QA3a5gvwo/FBObC95XYfpVg72IQgr5ww== +"@abp/bootstrap-daterangepicker@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-8.2.3.tgz#b33117eb5dfcdbea9cb5212acfecd4e040ce7c2d" + integrity sha512-UR1TXFStbvD54wb6vEVK3FVHYtgugLBdDg4Xyh+aNe2sUTm+kfXh4+1Xm+3R1SV3cWvRT57Sy1bc306c6CQ7Zg== dependencies: bootstrap-daterangepicker "^3.1.0" -"@abp/bootstrap@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-8.2.2.tgz#78db0e4f54dd4b09462d386df83e451506717af6" - integrity sha512-A6hdNB2+Uokm5CniB6+qxR7Q2dyRwMLv2ct0v6PxOT1M+/Z2+oCzFDHLYKnmbcx5pg+1MmvnNC+clQZELDxjyw== +"@abp/bootstrap@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-8.2.3.tgz#462c4a5712d6d0baee345dc318fc5463527cbc21" + integrity sha512-jThgI5nlP5A/cKLUoNgRA5ldHz5xNoGkD+V0Z/gScbeAE8Q8eu7Q5P82PLF8B8cgKjOqJXb2L5kbdNYFdqIOwg== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" bootstrap "^5.1.3" -"@abp/clipboard@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-8.2.2.tgz#cb9a7bc2d08b8fb762c24cbd53f86a6aa5c8197a" - integrity sha512-D9azkwO9ZAwKsqdYRkzz0JOukfMdhUOpI382VxmfLTHgTgrby6xTae8SGIrXthgemEny3RlqYAX2R7EVfN3upg== +"@abp/clipboard@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-8.2.3.tgz#9e0c0b750114ddaca0beba1051dd7fc1fe77f543" + integrity sha512-RS1pVeeN1/5LlDNBBRDFUqR+xpfWteCZfIByh8xAbec1xuxHmxxxvb3kv1Wp7n4c1ec3V0yLRyvaj0SfYmnWNA== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" clipboard "^2.0.8" -"@abp/core@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-8.2.2.tgz#b4905fa539272bee26f5f95ceb2224b48cfac8ab" - integrity sha512-YKbT92+T9Zs0IvvIPJrMcBUjwR5u6U6f1KegRcRR79b43ZckIrQbqftjyFLF7YSPuJlVCHoO0YhU2Q1EagiFDg== +"@abp/core@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-8.2.3.tgz#1474f8e24cc8707bd909e1cd49230cdaa54c447e" + integrity sha512-mluL7NHWRxvjwHHGd3kOWQg0Tnmt4o2ih/KfdDJl7z4lpy386yL+UutkE3NNhgbEGWDt1hnS5rKFZabhaahwWg== dependencies: - "@abp/utils" "~8.2.2" + "@abp/utils" "~8.2.3" -"@abp/datatables.net-bs5@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-8.2.2.tgz#c314a615cf98cf0fdb6a97ffea3a42d0b050ccd5" - integrity sha512-dkb0wHdZ93mLSwmHbJ3hMKBm0ZFA9jpLxxWf7u+c7sBU+McACRdFHyl0x6dtinspDgo5GaPHGqmbsVx5S7eM2w== +"@abp/datatables.net-bs5@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-8.2.3.tgz#8e80767d7677ebf69a56248039ef5604499bbc30" + integrity sha512-XTjo15yM/nJiFfRtTMnfOJNh6FX+Vmmf5Kq5aG5XjUcp1IepEAgiNNOSmh+zRhUt4BDZ4RWcfSSGNbh0icUIOg== dependencies: - "@abp/datatables.net" "~8.2.2" + "@abp/datatables.net" "~8.2.3" datatables.net-bs5 "^1.11.4" -"@abp/datatables.net@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-8.2.2.tgz#1627836a2ee7efe1d470bdc32ec437ed86996fc8" - integrity sha512-hPAyx90kI4s+LlUsN6GfLWFEGe9JXExgqSzFUwkOqi+WS+kGWvPElUXfS06VaKiu/h/H9SVl+X+iajd3L9Zr9g== +"@abp/datatables.net@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-8.2.3.tgz#e38567679720546d42b895d9a464728ea3730292" + integrity sha512-CT18SqBuY25UmjNbiSbI9eqvbPNZZm+yYsZoasSUv3JOpO1oPfclgtZV5FKeBQQvM5Vc0BhRs7KMKF2F0pwszA== dependencies: - "@abp/jquery" "~8.2.2" + "@abp/jquery" "~8.2.3" datatables.net "^1.11.4" -"@abp/font-awesome@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-8.2.2.tgz#924ce3b78a902ef844901d824d8eb616cbc32ba8" - integrity sha512-yCn94hjowg42hTvyf3xJu7kOCMWfh5Qw4D8PbiaF3WwP1kbpC2QCeZ/Rh9Oltsml34rkhMKPTzLzZqki25Q5QQ== +"@abp/font-awesome@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-8.2.3.tgz#92d7645c94cda07becb8e2ea23e7769ec55c43b1" + integrity sha512-OLQRBuPHtPyM5IHhIJwsbkE8idmu/DDAIm92kOa97p0r0Hx7epnKx+Yrwz23FuRH2wYlmYJqDmwj1VTK90gxYA== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" "@fortawesome/fontawesome-free" "^6.5.1" -"@abp/jquery-form@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-8.2.2.tgz#aad534f5b4f4346ac97249040af663e70ecbd03e" - integrity sha512-QueETCaVq6g8b7c0jIepbKZKS2SO/aCZJy/uRc/lPumr2Hs96aZvHQGIAZopCQKPfF9mLp+Sc2QEN/zdt8QiNA== +"@abp/jquery-form@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-8.2.3.tgz#a8c593e6afbbcff5250657f052fc9912cdf352ac" + integrity sha512-AhkNUdyXE/q7hsra+1xj8W/g7lkIgR9YXrr0RgddPW+dqYqVvbYdFcPliHaSsl+kzPHSRx7eez8AjQSZlReIjg== dependencies: - "@abp/jquery" "~8.2.2" + "@abp/jquery" "~8.2.3" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-8.2.2.tgz#7396dd6a62cdf0796d967b167da5cc91974a9c5e" - integrity sha512-dH0ax7Lxaf+MeZC0z80IPHyXocuA26lzHtwFx/g4NIxxV1gKL8/wI+rAX1ulloSdqEA8kN6rlgOZMqiG2kNWcw== +"@abp/jquery-validation-unobtrusive@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-8.2.3.tgz#d21cbc1694b68f6377134e4e535d19e2cda0fb8d" + integrity sha512-2Ilrveqsj5jorZ2N75zLlHO8+NGRmLecRWIDZZmuyCXVF/LyyceaNBhkdiV+Ofcts387TVkQkjkoArV10Uu+Jg== dependencies: - "@abp/jquery-validation" "~8.2.2" + "@abp/jquery-validation" "~8.2.3" jquery-validation-unobtrusive "^3.2.12" -"@abp/jquery-validation@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-8.2.2.tgz#25ac2fb35aa8f60ba82116ef429996e7ae8518bb" - integrity sha512-WbvobzuEKmnFdCK2Bic7YNhbuauN1mIzgrnd8Ap0nLAxpwsVYkUBwKHoi7jyYv+Udvl39VjYFeciul9rZYI2pg== +"@abp/jquery-validation@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-8.2.3.tgz#642b7f56c1da5469443f864f04eb09cb0bf75bb4" + integrity sha512-qbML5oyoq9ltq212qD8C7jVOqNwTdvyRzTu3SsN15AXecapZxO/BPjhCgLb99OK4zT7hZaC8R+H0CDBa3O5pvg== dependencies: - "@abp/jquery" "~8.2.2" + "@abp/jquery" "~8.2.3" jquery-validation "^1.19.3" -"@abp/jquery@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-8.2.2.tgz#2496431ed11c5e2410e0efaa34404ac760a064ff" - integrity sha512-2ItXN6O45NIpSK/D8wUu+xVnrkxhc79Pce/yYMzFzI7QGYaKvpaP+tVWQQmKEa7RCNCyPS57AxuDtNqI4LSqDQ== +"@abp/jquery@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-8.2.3.tgz#e73d1df860276ae2a081c6f945f586720a71781d" + integrity sha512-SDOnVUJo0g3tuA40Z2Nme8yI1nTCwp0Mh2aAf3L3W+F8lzV3OQS8mUmpektxhPsFen0DufSvilOC+aI6/Jx5lQ== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" jquery "~3.6.0" -"@abp/lodash@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-8.2.2.tgz#a12ed0018f831c0f763da5c6a09d07494acf01ed" - integrity sha512-X+Y3CBMjNgeK/Y47MPMF4sH8PRF0TP+YpjvZ9lbGVSxiQPsNdrYKseZ1gp+AnDBHvj+Oxb7s/aRVZ1pbDJpXiQ== +"@abp/lodash@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-8.2.3.tgz#e78ef9e681369af51b6c36a0a450884c4ee5677a" + integrity sha512-47YoHS0CrH+PiQ8eF/ASYodGH+foBRBJVkDmRgZ1vegs10CJukBYgAutPlNMC2onlEF1jLYJ40ZKsHd6TrFQkA== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" lodash "^4.17.21" -"@abp/luxon@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-8.2.2.tgz#76026e1ae79601cc322cda458ac1f2b2cb76190a" - integrity sha512-I08NgiUJwCfNvwOZNYjwB/+2bUwulU3urqKIIB9Mg6PGK2hohsE8k2CMEijA+T25YYO32xgXevOfOq5YU2NCTw== +"@abp/luxon@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-8.2.3.tgz#445d763360b29a7591ab31898ce522e61be9d97e" + integrity sha512-pT+oO4znadhSleuH3x6n1nEgOzfVl0aHurt4F+wnJHyP7SdC2+RjZOYJUkuRIaZzflG4699Qq0UgAW6GfpuUgg== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" luxon "^2.3.0" -"@abp/malihu-custom-scrollbar-plugin@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-8.2.2.tgz#53405af2869fde990962914f24228a9fa65bab2f" - integrity sha512-/6g+Qm/5CbCzVgohEH8C72smIN4Lw/uL/KJbP7uEBVAXfKqY6vGA2VhrKNvIiBPfktIzZCHrcKsHwysMPtOS2Q== +"@abp/malihu-custom-scrollbar-plugin@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-8.2.3.tgz#7018c4ab65b78512bf5ea8f542fb0c7119a39e0b" + integrity sha512-CCc0iOaulmssuUL7RsAApRzYD+SXAPbqz5iod6yuyx3Y5Vaz4ik+2/cG7XZgwcgsmctJYZl3IxZ/ijnZXLgHUw== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/moment@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-8.2.2.tgz#1895904212fde6dc1793611940a9f8ec95b2c45f" - integrity sha512-VhhCOzVpapvFOn1gzQIcXB/RMyRKcZOlVLGLTqosg14woPSFm0+0utLHkPOLihWbUSQqDRYKvC2cPbNC6CknKg== +"@abp/moment@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-8.2.3.tgz#126039218e6068eca4279eae1eb5375207780931" + integrity sha512-nV11P1KqX8xPmb/bs3yYbFPz7ZOXWnZPKd4Z2k0JYaFTS2C07twgS0uQQHwW6iP8DrS1QBBAyLYBuM3ctgB0dg== dependencies: moment "^2.9.0" -"@abp/prismjs@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-8.2.2.tgz#1910701fbe28d87d1312f16e865778f0e8b19670" - integrity sha512-5KaPPTcLc5/F4MB375orQe5W04bPcE8D/OTGllsj2RViGnmmkVj7Wzkwm6R63qWJtBrYuf9sh2c6eUACNkR2/A== +"@abp/prismjs@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-8.2.3.tgz#8927f1660815f4e3de11085ea5f3a73b127a858a" + integrity sha512-JJ/wlLlWShGYj0FMFjxriCIA4v1Fe+oHTgo1Kt9JpYkYG+Zq+rHsj1tvNthh2GU7Y69Kt2w1r1LpEDKZZHu58A== dependencies: - "@abp/clipboard" "~8.2.2" - "@abp/core" "~8.2.2" + "@abp/clipboard" "~8.2.3" + "@abp/core" "~8.2.3" prismjs "^1.26.0" -"@abp/select2@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-8.2.2.tgz#0dc011b838824598dc0a716e55b597aca62712dc" - integrity sha512-zTgtOl2iWihbGja3l8IIi+PqepYNk6O7fUcf6C9cdnBM4IrZSnJqw3sQDr9DqIoEzgdC6izVQzPJJEAi5CZ8Xg== +"@abp/select2@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-8.2.3.tgz#fc92d19ba22cbef5df9b8b2f85b4d21d3139883f" + integrity sha512-/MEJkSuM5+N5OIBLbrQUARUV++NpH9pVq4+btYhghDQDtHYrMHKU41QsginTFKfqBZ4f+OYV/HPnOuj7DJxOBw== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" select2 "^4.0.13" -"@abp/sweetalert2@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-8.2.2.tgz#1c75ec9ef1df2eec6304368667052d8ff9c9e795" - integrity sha512-yNgVxJ6E/cEtc8DYn00BtF9XFLShlZRsAnsipiP74YDvQKWUQSnwi70QoHEYDk2tJ+RsXqtZudvrKv8TyH/ijQ== +"@abp/sweetalert2@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-8.2.3.tgz#a82d674e262e9db89bc219ac350cae8ef17d7669" + integrity sha512-ap8vOgkKbmhAmDfVmEJPyVbIzA3V3mi9SvP/OLaNYEaMG0AppYf3iiSvC+6TA+qAFQuF5fI1oKUcsiE68uQGjw== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" sweetalert2 "^11.3.6" -"@abp/timeago@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-8.2.2.tgz#8af9558d325b2f2f9d9c5b1f90ac9eaf5531429b" - integrity sha512-ILdMeCTDNvmVOSm8Xc9ppL1xI1NoDzLbUCUojI7mvEFCE8sw3QGiFGhW6W7kYcoD7sRkxFl1Jn5V/urpAiQwaQ== +"@abp/timeago@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-8.2.3.tgz#dede68da0b5e252a573b0a1c5a9e4c831bc3c820" + integrity sha512-AbYf35a5M4QMAFK3aV6JE7QHR3GzpOX1zsun39i+97ZrNZf6do/eIgDx6dolTlSb0AsHf8qCrf7T6o1kIaXQ2w== dependencies: - "@abp/jquery" "~8.2.2" + "@abp/jquery" "~8.2.3" timeago "^1.6.7" -"@abp/toastr@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-8.2.2.tgz#a59d5b29e43698dbb614792bfd51185453859a7f" - integrity sha512-I4iiXV/SSXiD4UGM5oVsg6m6p4XmuxvqWmjOLSyoUfJQMC378mzNX0Ec9hYIY42C+GS2NalKtoaaYzBfcEtwoQ== +"@abp/toastr@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-8.2.3.tgz#77767666d578c05f039e84178c428370f6f10802" + integrity sha512-V1H0Efik/kGsRuTNPl//FsoH/8VU58S1K4GQ9k2V1bi8INaC/kU//I9frwOJsXd55imvsbmzh4XzrJ574eU84w== dependencies: - "@abp/jquery" "~8.2.2" + "@abp/jquery" "~8.2.3" toastr "^2.1.4" -"@abp/utils@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-8.2.2.tgz#84035d36e968c8ecdeee3c7617aa45bfeb3f6afd" - integrity sha512-70hmgTd7N63AnanzZYUWpobckhPzplBjlRmMhIi+9WZLQfxWpM/EN6l+qQndjAMMvgFl/vW03BUJh1fL9kGynA== +"@abp/utils@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-8.2.3.tgz#05e3d419ee9a6228f7ed4f86e8fd03f3ce57ed27" + integrity sha512-WMs/okBxGitkGRdsikByyJLFXRSD/DPfBWZdDhU4+TvcQmnTqog9S75kZ8CUpUe/wwDHYsY51ef6N6jOfkGTFQ== dependencies: just-compare "^2.3.0" diff --git a/modules/blob-storing-database/src/Volo.Abp.BlobStoring.Database.Domain.Shared/Volo.Abp.BlobStoring.Database.Domain.Shared.abppkg.analyze.json b/modules/blob-storing-database/src/Volo.Abp.BlobStoring.Database.Domain.Shared/Volo.Abp.BlobStoring.Database.Domain.Shared.abppkg.analyze.json index ad923a8ce3..6deba88b34 100644 --- a/modules/blob-storing-database/src/Volo.Abp.BlobStoring.Database.Domain.Shared/Volo.Abp.BlobStoring.Database.Domain.Shared.abppkg.analyze.json +++ b/modules/blob-storing-database/src/Volo.Abp.BlobStoring.Database.Domain.Shared/Volo.Abp.BlobStoring.Database.Domain.Shared.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.BlobStoring.Database.Domain.Shared", - "hash": "ca71bff6138a518c84899353b3d88f2e", + "hash": "", "contents": [ { "namespace": "Volo.Abp.BlobStoring.Database", @@ -11,6 +11,50 @@ "name": "AbpValidationModule" } ], + "implementingInterfaces": [ + { + "name": "IAbpModule", + "namespace": "Volo.Abp.Modularity", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.Modularity.IAbpModule" + }, + { + "name": "IOnPreApplicationInitialization", + "namespace": "Volo.Abp.Modularity", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.Modularity.IOnPreApplicationInitialization" + }, + { + "name": "IOnApplicationInitialization", + "namespace": "Volo.Abp", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.IOnApplicationInitialization" + }, + { + "name": "IOnPostApplicationInitialization", + "namespace": "Volo.Abp.Modularity", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.Modularity.IOnPostApplicationInitialization" + }, + { + "name": "IOnApplicationShutdown", + "namespace": "Volo.Abp", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.IOnApplicationShutdown" + }, + { + "name": "IPreConfigureServices", + "namespace": "Volo.Abp.Modularity", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.Modularity.IPreConfigureServices" + }, + { + "name": "IPostConfigureServices", + "namespace": "Volo.Abp.Modularity", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.Modularity.IPostConfigureServices" + } + ], "contentType": "abpModule", "name": "BlobStoringDatabaseDomainSharedModule", "summary": null diff --git a/modules/blob-storing-database/src/Volo.Abp.BlobStoring.Database.Domain/Volo.Abp.BlobStoring.Database.Domain.abppkg.analyze.json b/modules/blob-storing-database/src/Volo.Abp.BlobStoring.Database.Domain/Volo.Abp.BlobStoring.Database.Domain.abppkg.analyze.json index 44aa7327f7..cd919d1727 100644 --- a/modules/blob-storing-database/src/Volo.Abp.BlobStoring.Database.Domain/Volo.Abp.BlobStoring.Database.Domain.abppkg.analyze.json +++ b/modules/blob-storing-database/src/Volo.Abp.BlobStoring.Database.Domain/Volo.Abp.BlobStoring.Database.Domain.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.BlobStoring.Database.Domain", - "hash": "4c72530134504ee1792b7e24248dc384", + "hash": "", "contents": [ { "namespace": "Volo.Abp.BlobStoring.Database", @@ -21,6 +21,50 @@ "name": "BlobStoringDatabaseDomainSharedModule" } ], + "implementingInterfaces": [ + { + "name": "IAbpModule", + "namespace": "Volo.Abp.Modularity", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.Modularity.IAbpModule" + }, + { + "name": "IOnPreApplicationInitialization", + "namespace": "Volo.Abp.Modularity", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.Modularity.IOnPreApplicationInitialization" + }, + { + "name": "IOnApplicationInitialization", + "namespace": "Volo.Abp", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.IOnApplicationInitialization" + }, + { + "name": "IOnPostApplicationInitialization", + "namespace": "Volo.Abp.Modularity", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.Modularity.IOnPostApplicationInitialization" + }, + { + "name": "IOnApplicationShutdown", + "namespace": "Volo.Abp", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.IOnApplicationShutdown" + }, + { + "name": "IPreConfigureServices", + "namespace": "Volo.Abp.Modularity", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.Modularity.IPreConfigureServices" + }, + { + "name": "IPostConfigureServices", + "namespace": "Volo.Abp.Modularity", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.Modularity.IPostConfigureServices" + } + ], "contentType": "abpModule", "name": "BlobStoringDatabaseDomainModule", "summary": null @@ -29,56 +73,69 @@ "baseClass": { "name": "AggregateRoot", "namespace": "Volo.Abp.Domain.Entities", - "declaringAssemblyName": "Volo.Abp.Ddd.Domain" + "declaringAssemblyName": "Volo.Abp.Ddd.Domain", + "fullName": "Volo.Abp.Domain.Entities.AggregateRoot" }, "implementingInterfaces": [ { "name": "IEntity", "namespace": "Volo.Abp.Domain.Entities", - "declaringAssemblyName": "Volo.Abp.Ddd.Domain" + "declaringAssemblyName": "Volo.Abp.Ddd.Domain", + "fullName": "Volo.Abp.Domain.Entities.IEntity" }, { "name": "IEntity", "namespace": "Volo.Abp.Domain.Entities", - "declaringAssemblyName": "Volo.Abp.Ddd.Domain" + "declaringAssemblyName": "Volo.Abp.Ddd.Domain", + "fullName": "Volo.Abp.Domain.Entities.IEntity" }, { "name": "IAggregateRoot", "namespace": "Volo.Abp.Domain.Entities", - "declaringAssemblyName": "Volo.Abp.Ddd.Domain" + "declaringAssemblyName": "Volo.Abp.Ddd.Domain", + "fullName": "Volo.Abp.Domain.Entities.IAggregateRoot" }, { "name": "IAggregateRoot", "namespace": "Volo.Abp.Domain.Entities", - "declaringAssemblyName": "Volo.Abp.Ddd.Domain" + "declaringAssemblyName": "Volo.Abp.Ddd.Domain", + "fullName": "Volo.Abp.Domain.Entities.IAggregateRoot" }, { "name": "IGeneratesDomainEvents", "namespace": "Volo.Abp.Domain.Entities", - "declaringAssemblyName": "Volo.Abp.Ddd.Domain" + "declaringAssemblyName": "Volo.Abp.Ddd.Domain", + "fullName": "Volo.Abp.Domain.Entities.IGeneratesDomainEvents" }, { "name": "IHasExtraProperties", "namespace": "Volo.Abp.Data", - "declaringAssemblyName": "Volo.Abp.ObjectExtending" + "declaringAssemblyName": "Volo.Abp.ObjectExtending", + "fullName": "Volo.Abp.Data.IHasExtraProperties" }, { "name": "IHasConcurrencyStamp", "namespace": "Volo.Abp.Domain.Entities", - "declaringAssemblyName": "Volo.Abp.Data" + "declaringAssemblyName": "Volo.Abp.Data", + "fullName": "Volo.Abp.Domain.Entities.IHasConcurrencyStamp" }, { "name": "IMultiTenant", "namespace": "Volo.Abp.MultiTenancy", - "declaringAssemblyName": "Volo.Abp.MultiTenancy" + "declaringAssemblyName": "Volo.Abp.MultiTenancy.Abstractions", + "fullName": "Volo.Abp.MultiTenancy.IMultiTenant" } ], "methods": [ { "returnType": "Void", - "isAsync": false, + "namespace": "Volo.Abp.BlobStoring.Database", "name": "SetContent", "summary": null, + "isAsync": false, + "isPublic": true, + "isPrivate": false, + "isStatic": false, "parameters": [ { "type": "Byte[]", @@ -88,10 +145,32 @@ ] } ], - "namespace": "Volo.Abp.BlobStoring.Database", - "primaryKeyType": "Guid", "collectionProperties": {}, "navigationProperties": {}, + "namespace": "Volo.Abp.BlobStoring.Database", + "primaryKeyType": "Guid", + "properties": [ + { + "type": "System.Guid", + "name": "ContainerId", + "summary": null + }, + { + "type": "System.Nullable`1[System.Guid]", + "name": "TenantId", + "summary": null + }, + { + "type": "System.String", + "name": "Name", + "summary": null + }, + { + "type": "System.Byte[]", + "name": "Content", + "summary": null + } + ], "contentType": "aggregateRoot", "name": "DatabaseBlob", "summary": null @@ -100,55 +179,76 @@ "baseClass": { "name": "AggregateRoot", "namespace": "Volo.Abp.Domain.Entities", - "declaringAssemblyName": "Volo.Abp.Ddd.Domain" + "declaringAssemblyName": "Volo.Abp.Ddd.Domain", + "fullName": "Volo.Abp.Domain.Entities.AggregateRoot" }, "implementingInterfaces": [ { "name": "IEntity", "namespace": "Volo.Abp.Domain.Entities", - "declaringAssemblyName": "Volo.Abp.Ddd.Domain" + "declaringAssemblyName": "Volo.Abp.Ddd.Domain", + "fullName": "Volo.Abp.Domain.Entities.IEntity" }, { "name": "IEntity", "namespace": "Volo.Abp.Domain.Entities", - "declaringAssemblyName": "Volo.Abp.Ddd.Domain" + "declaringAssemblyName": "Volo.Abp.Ddd.Domain", + "fullName": "Volo.Abp.Domain.Entities.IEntity" }, { "name": "IAggregateRoot", "namespace": "Volo.Abp.Domain.Entities", - "declaringAssemblyName": "Volo.Abp.Ddd.Domain" + "declaringAssemblyName": "Volo.Abp.Ddd.Domain", + "fullName": "Volo.Abp.Domain.Entities.IAggregateRoot" }, { "name": "IAggregateRoot", "namespace": "Volo.Abp.Domain.Entities", - "declaringAssemblyName": "Volo.Abp.Ddd.Domain" + "declaringAssemblyName": "Volo.Abp.Ddd.Domain", + "fullName": "Volo.Abp.Domain.Entities.IAggregateRoot" }, { "name": "IGeneratesDomainEvents", "namespace": "Volo.Abp.Domain.Entities", - "declaringAssemblyName": "Volo.Abp.Ddd.Domain" + "declaringAssemblyName": "Volo.Abp.Ddd.Domain", + "fullName": "Volo.Abp.Domain.Entities.IGeneratesDomainEvents" }, { "name": "IHasExtraProperties", "namespace": "Volo.Abp.Data", - "declaringAssemblyName": "Volo.Abp.ObjectExtending" + "declaringAssemblyName": "Volo.Abp.ObjectExtending", + "fullName": "Volo.Abp.Data.IHasExtraProperties" }, { "name": "IHasConcurrencyStamp", "namespace": "Volo.Abp.Domain.Entities", - "declaringAssemblyName": "Volo.Abp.Data" + "declaringAssemblyName": "Volo.Abp.Data", + "fullName": "Volo.Abp.Domain.Entities.IHasConcurrencyStamp" }, { "name": "IMultiTenant", "namespace": "Volo.Abp.MultiTenancy", - "declaringAssemblyName": "Volo.Abp.MultiTenancy" + "declaringAssemblyName": "Volo.Abp.MultiTenancy.Abstractions", + "fullName": "Volo.Abp.MultiTenancy.IMultiTenant" } ], "methods": [], - "namespace": "Volo.Abp.BlobStoring.Database", - "primaryKeyType": "Guid", "collectionProperties": {}, "navigationProperties": {}, + "namespace": "Volo.Abp.BlobStoring.Database", + "primaryKeyType": "Guid", + "properties": [ + { + "type": "System.Nullable`1[System.Guid]", + "name": "TenantId", + "summary": null + }, + { + "type": "System.String", + "name": "Name", + "summary": null + } + ], "contentType": "aggregateRoot", "name": "DatabaseBlobContainer", "summary": null @@ -158,12 +258,67 @@ "entityAnalyzeModel": { "namespace": "Volo.Abp.BlobStoring.Database", "primaryKeyType": "Guid", - "collectionProperties": {}, - "navigationProperties": {}, + "properties": [], "contentType": "entity", "name": "DatabaseBlobContainer", "summary": null }, + "implementingInterfaces": [ + { + "name": "IBasicRepository", + "namespace": "Volo.Abp.Domain.Repositories", + "declaringAssemblyName": "Volo.Abp.Ddd.Domain", + "fullName": "Volo.Abp.Domain.Repositories.IBasicRepository" + }, + { + "name": "IBasicRepository", + "namespace": "Volo.Abp.Domain.Repositories", + "declaringAssemblyName": "Volo.Abp.Ddd.Domain", + "fullName": "Volo.Abp.Domain.Repositories.IBasicRepository" + }, + { + "name": "IReadOnlyBasicRepository", + "namespace": "Volo.Abp.Domain.Repositories", + "declaringAssemblyName": "Volo.Abp.Ddd.Domain", + "fullName": "Volo.Abp.Domain.Repositories.IReadOnlyBasicRepository" + }, + { + "name": "IRepository", + "namespace": "Volo.Abp.Domain.Repositories", + "declaringAssemblyName": "Volo.Abp.Ddd.Domain", + "fullName": "Volo.Abp.Domain.Repositories.IRepository" + }, + { + "name": "IReadOnlyBasicRepository", + "namespace": "Volo.Abp.Domain.Repositories", + "declaringAssemblyName": "Volo.Abp.Ddd.Domain", + "fullName": "Volo.Abp.Domain.Repositories.IReadOnlyBasicRepository" + } + ], + "methods": [ + { + "returnType": "DatabaseBlobContainer", + "namespace": "Volo.Abp.BlobStoring.Database", + "name": "FindAsync", + "summary": null, + "isAsync": true, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "String", + "name": "name", + "isOptional": false + }, + { + "type": "CancellationToken", + "name": "cancellationToken", + "isOptional": true + } + ] + } + ], "contentType": "repositoryInterface", "name": "IDatabaseBlobContainerRepository", "summary": null @@ -173,12 +328,131 @@ "entityAnalyzeModel": { "namespace": "Volo.Abp.BlobStoring.Database", "primaryKeyType": "Guid", - "collectionProperties": {}, - "navigationProperties": {}, + "properties": [], "contentType": "entity", "name": "DatabaseBlob", "summary": null }, + "implementingInterfaces": [ + { + "name": "IBasicRepository", + "namespace": "Volo.Abp.Domain.Repositories", + "declaringAssemblyName": "Volo.Abp.Ddd.Domain", + "fullName": "Volo.Abp.Domain.Repositories.IBasicRepository" + }, + { + "name": "IBasicRepository", + "namespace": "Volo.Abp.Domain.Repositories", + "declaringAssemblyName": "Volo.Abp.Ddd.Domain", + "fullName": "Volo.Abp.Domain.Repositories.IBasicRepository" + }, + { + "name": "IReadOnlyBasicRepository", + "namespace": "Volo.Abp.Domain.Repositories", + "declaringAssemblyName": "Volo.Abp.Ddd.Domain", + "fullName": "Volo.Abp.Domain.Repositories.IReadOnlyBasicRepository" + }, + { + "name": "IRepository", + "namespace": "Volo.Abp.Domain.Repositories", + "declaringAssemblyName": "Volo.Abp.Ddd.Domain", + "fullName": "Volo.Abp.Domain.Repositories.IRepository" + }, + { + "name": "IReadOnlyBasicRepository", + "namespace": "Volo.Abp.Domain.Repositories", + "declaringAssemblyName": "Volo.Abp.Ddd.Domain", + "fullName": "Volo.Abp.Domain.Repositories.IReadOnlyBasicRepository" + } + ], + "methods": [ + { + "returnType": "DatabaseBlob", + "namespace": "Volo.Abp.BlobStoring.Database", + "name": "FindAsync", + "summary": null, + "isAsync": true, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "Guid", + "name": "containerId", + "isOptional": false + }, + { + "type": "String", + "name": "name", + "isOptional": false + }, + { + "type": "CancellationToken", + "name": "cancellationToken", + "isOptional": true + } + ] + }, + { + "returnType": "Boolean", + "namespace": "Volo.Abp.BlobStoring.Database", + "name": "ExistsAsync", + "summary": null, + "isAsync": true, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "Guid", + "name": "containerId", + "isOptional": false + }, + { + "type": "String", + "name": "name", + "isOptional": false + }, + { + "type": "CancellationToken", + "name": "cancellationToken", + "isOptional": true + } + ] + }, + { + "returnType": "Boolean", + "namespace": "Volo.Abp.BlobStoring.Database", + "name": "DeleteAsync", + "summary": null, + "isAsync": true, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "Guid", + "name": "containerId", + "isOptional": false + }, + { + "type": "String", + "name": "name", + "isOptional": false + }, + { + "type": "Boolean", + "name": "autoSave", + "isOptional": true + }, + { + "type": "CancellationToken", + "name": "cancellationToken", + "isOptional": true + } + ] + } + ], "contentType": "repositoryInterface", "name": "IDatabaseBlobRepository", "summary": null diff --git a/modules/blob-storing-database/src/Volo.Abp.BlobStoring.Database.EntityFrameworkCore/Volo.Abp.BlobStoring.Database.EntityFrameworkCore.abppkg.analyze.json b/modules/blob-storing-database/src/Volo.Abp.BlobStoring.Database.EntityFrameworkCore/Volo.Abp.BlobStoring.Database.EntityFrameworkCore.abppkg.analyze.json index 132618f5a1..9cfa23ae83 100644 --- a/modules/blob-storing-database/src/Volo.Abp.BlobStoring.Database.EntityFrameworkCore/Volo.Abp.BlobStoring.Database.EntityFrameworkCore.abppkg.analyze.json +++ b/modules/blob-storing-database/src/Volo.Abp.BlobStoring.Database.EntityFrameworkCore/Volo.Abp.BlobStoring.Database.EntityFrameworkCore.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.BlobStoring.Database.EntityFrameworkCore", - "hash": "0c136e999f8d28fc3b27414e0ff5aef7", + "hash": "", "contents": [ { "namespace": "Volo.Abp.BlobStoring.Database.EntityFrameworkCore", @@ -16,6 +16,50 @@ "name": "AbpEntityFrameworkCoreModule" } ], + "implementingInterfaces": [ + { + "name": "IAbpModule", + "namespace": "Volo.Abp.Modularity", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.Modularity.IAbpModule" + }, + { + "name": "IOnPreApplicationInitialization", + "namespace": "Volo.Abp.Modularity", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.Modularity.IOnPreApplicationInitialization" + }, + { + "name": "IOnApplicationInitialization", + "namespace": "Volo.Abp", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.IOnApplicationInitialization" + }, + { + "name": "IOnPostApplicationInitialization", + "namespace": "Volo.Abp.Modularity", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.Modularity.IOnPostApplicationInitialization" + }, + { + "name": "IOnApplicationShutdown", + "namespace": "Volo.Abp", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.IOnApplicationShutdown" + }, + { + "name": "IPreConfigureServices", + "namespace": "Volo.Abp.Modularity", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.Modularity.IPreConfigureServices" + }, + { + "name": "IPostConfigureServices", + "namespace": "Volo.Abp.Modularity", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.Modularity.IPostConfigureServices" + } + ], "contentType": "abpModule", "name": "BlobStoringDatabaseEntityFrameworkCoreModule", "summary": null @@ -23,18 +67,93 @@ { "namespace": "Volo.Abp.BlobStoring.Database.EntityFrameworkCore", "connectionStringName": "AbpBlobStoring", - "databaseTables": [ + "databaseTables": [], + "replacedDbContexts": [], + "modelBuilderExtensionMethods": [ + { + "returnType": "Void", + "namespace": "Volo.Abp.BlobStoring.Database.EntityFrameworkCore", + "name": "ConfigureBlobStoring", + "summary": null, + "isAsync": false, + "isPublic": true, + "isPrivate": false, + "isStatic": true, + "parameters": [ + { + "type": "ModelBuilder", + "name": "builder", + "isOptional": false + } + ] + } + ], + "implementingInterfaces": [ + { + "name": "IInfrastructure", + "namespace": "Microsoft.EntityFrameworkCore.Infrastructure", + "declaringAssemblyName": "Microsoft.EntityFrameworkCore", + "fullName": "Microsoft.EntityFrameworkCore.Infrastructure.IInfrastructure" + }, + { + "name": "IDbContextDependencies", + "namespace": "Microsoft.EntityFrameworkCore.Internal", + "declaringAssemblyName": "Microsoft.EntityFrameworkCore", + "fullName": "Microsoft.EntityFrameworkCore.Internal.IDbContextDependencies" + }, + { + "name": "IDbSetCache", + "namespace": "Microsoft.EntityFrameworkCore.Internal", + "declaringAssemblyName": "Microsoft.EntityFrameworkCore", + "fullName": "Microsoft.EntityFrameworkCore.Internal.IDbSetCache" + }, + { + "name": "IDbContextPoolable", + "namespace": "Microsoft.EntityFrameworkCore.Internal", + "declaringAssemblyName": "Microsoft.EntityFrameworkCore", + "fullName": "Microsoft.EntityFrameworkCore.Internal.IDbContextPoolable" + }, + { + "name": "IResettableService", + "namespace": "Microsoft.EntityFrameworkCore.Infrastructure", + "declaringAssemblyName": "Microsoft.EntityFrameworkCore", + "fullName": "Microsoft.EntityFrameworkCore.Infrastructure.IResettableService" + }, + { + "name": "IDisposable", + "namespace": "System", + "declaringAssemblyName": "System.Private.CoreLib", + "fullName": "System.IDisposable" + }, + { + "name": "IAsyncDisposable", + "namespace": "System", + "declaringAssemblyName": "System.Private.CoreLib", + "fullName": "System.IAsyncDisposable" + }, + { + "name": "IAbpEfCoreDbContext", + "namespace": "Volo.Abp.EntityFrameworkCore", + "declaringAssemblyName": "Volo.Abp.EntityFrameworkCore", + "fullName": "Volo.Abp.EntityFrameworkCore.IAbpEfCoreDbContext" + }, + { + "name": "IEfCoreDbContext", + "namespace": "Volo.Abp.EntityFrameworkCore", + "declaringAssemblyName": "Volo.Abp.EntityFrameworkCore", + "fullName": "Volo.Abp.EntityFrameworkCore.IEfCoreDbContext" + }, { - "entityFullName": "Volo.Abp.BlobStoring.Database.DatabaseBlob", - "contentType": "databaseTable", - "name": "AbpBlobs", - "summary": null + "name": "ITransientDependency", + "namespace": "Volo.Abp.DependencyInjection", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.DependencyInjection.ITransientDependency" }, { - "entityFullName": "Volo.Abp.BlobStoring.Database.DatabaseBlobContainer", - "contentType": "databaseTable", - "name": "AbpBlobContainers", - "summary": null + "name": "IBlobStoringDbContext", + "namespace": "Volo.Abp.BlobStoring.Database.EntityFrameworkCore", + "declaringAssemblyName": "Volo.Abp.BlobStoring.Database.EntityFrameworkCore", + "fullName": "Volo.Abp.BlobStoring.Database.EntityFrameworkCore.IBlobStoringDbContext" } ], "contentType": "efCoreDbContext", diff --git a/modules/blob-storing-database/src/Volo.Abp.BlobStoring.Database.MongoDB/Volo.Abp.BlobStoring.Database.MongoDB.abppkg.analyze.json b/modules/blob-storing-database/src/Volo.Abp.BlobStoring.Database.MongoDB/Volo.Abp.BlobStoring.Database.MongoDB.abppkg.analyze.json index 888f20c52a..207bff6963 100644 --- a/modules/blob-storing-database/src/Volo.Abp.BlobStoring.Database.MongoDB/Volo.Abp.BlobStoring.Database.MongoDB.abppkg.analyze.json +++ b/modules/blob-storing-database/src/Volo.Abp.BlobStoring.Database.MongoDB/Volo.Abp.BlobStoring.Database.MongoDB.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.BlobStoring.Database.MongoDB", - "hash": "d0d45fc623e9180d60e60935449cb69b", + "hash": "", "contents": [ { "namespace": "Volo.Abp.BlobStoring.Database.MongoDB", @@ -16,6 +16,50 @@ "name": "AbpMongoDbModule" } ], + "implementingInterfaces": [ + { + "name": "IAbpModule", + "namespace": "Volo.Abp.Modularity", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.Modularity.IAbpModule" + }, + { + "name": "IOnPreApplicationInitialization", + "namespace": "Volo.Abp.Modularity", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.Modularity.IOnPreApplicationInitialization" + }, + { + "name": "IOnApplicationInitialization", + "namespace": "Volo.Abp", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.IOnApplicationInitialization" + }, + { + "name": "IOnPostApplicationInitialization", + "namespace": "Volo.Abp.Modularity", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.Modularity.IOnPostApplicationInitialization" + }, + { + "name": "IOnApplicationShutdown", + "namespace": "Volo.Abp", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.IOnApplicationShutdown" + }, + { + "name": "IPreConfigureServices", + "namespace": "Volo.Abp.Modularity", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.Modularity.IPreConfigureServices" + }, + { + "name": "IPostConfigureServices", + "namespace": "Volo.Abp.Modularity", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.Modularity.IPostConfigureServices" + } + ], "contentType": "abpModule", "name": "BlobStoringDatabaseMongoDbModule", "summary": null @@ -27,16 +71,36 @@ { "entityFullName": "Volo.Abp.BlobStoring.Database.DatabaseBlobContainer", "contentType": "databaseCollection", - "name": "AbpBlobContainers", + "name": "BlobContainers", "summary": null }, { "entityFullName": "Volo.Abp.BlobStoring.Database.DatabaseBlob", "contentType": "databaseCollection", - "name": "AbpBlobs", + "name": "Blobs", "summary": null } ], + "implementingInterfaces": [ + { + "name": "IAbpMongoDbContext", + "namespace": "Volo.Abp.MongoDB", + "declaringAssemblyName": "Volo.Abp.MongoDB", + "fullName": "Volo.Abp.MongoDB.IAbpMongoDbContext" + }, + { + "name": "ITransientDependency", + "namespace": "Volo.Abp.DependencyInjection", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.DependencyInjection.ITransientDependency" + }, + { + "name": "IBlobStoringMongoDbContext", + "namespace": "Volo.Abp.BlobStoring.Database.MongoDB", + "declaringAssemblyName": "Volo.Abp.BlobStoring.Database.MongoDB", + "fullName": "Volo.Abp.BlobStoring.Database.MongoDB.IBlobStoringMongoDbContext" + } + ], "contentType": "mongoDbContext", "name": "BlobStoringMongoDbContext", "summary": null diff --git a/modules/blogging/app/Volo.BloggingTestApp.EntityFrameworkCore/Volo.BloggingTestApp.EntityFrameworkCore.abppkg.analyze.json b/modules/blogging/app/Volo.BloggingTestApp.EntityFrameworkCore/Volo.BloggingTestApp.EntityFrameworkCore.abppkg.analyze.json index 0933dd25b5..f0d94eb3ee 100644 --- a/modules/blogging/app/Volo.BloggingTestApp.EntityFrameworkCore/Volo.BloggingTestApp.EntityFrameworkCore.abppkg.analyze.json +++ b/modules/blogging/app/Volo.BloggingTestApp.EntityFrameworkCore/Volo.BloggingTestApp.EntityFrameworkCore.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.BloggingTestApp.EntityFrameworkCore", - "hash": "1ae906cf0026320e50077986287d66ac", + "hash": "", "contents": [ { "namespace": "Volo.BloggingTestApp.EntityFrameworkCore", @@ -89,6 +89,7 @@ "connectionStringName": null, "databaseTables": [], "replacedDbContexts": [], + "modelBuilderExtensionMethods": [], "implementingInterfaces": [ { "name": "IInfrastructure", diff --git a/modules/blogging/app/Volo.BloggingTestApp.MongoDB/Volo.BloggingTestApp.MongoDB.abppkg.analyze.json b/modules/blogging/app/Volo.BloggingTestApp.MongoDB/Volo.BloggingTestApp.MongoDB.abppkg.analyze.json index bb074e1d10..c5a0eb3244 100644 --- a/modules/blogging/app/Volo.BloggingTestApp.MongoDB/Volo.BloggingTestApp.MongoDB.abppkg.analyze.json +++ b/modules/blogging/app/Volo.BloggingTestApp.MongoDB/Volo.BloggingTestApp.MongoDB.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.BloggingTestApp.MongoDB", - "hash": "f3aae951c5c4cd55de2a949848c2a755", + "hash": "", "contents": [ { "namespace": "Volo.BloggingTestApp.MongoDB", diff --git a/modules/blogging/app/Volo.BloggingTestApp/package.json b/modules/blogging/app/Volo.BloggingTestApp/package.json index b1018ce2c8..c9615cf41a 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": "~8.2.2", - "@abp/blogging": "~8.2.2" + "@abp/aspnetcore.mvc.ui.theme.basic": "~8.2.3", + "@abp/blogging": "~8.2.3" } } diff --git a/modules/blogging/app/Volo.BloggingTestApp/yarn.lock b/modules/blogging/app/Volo.BloggingTestApp/yarn.lock index dd66c44c61..34ce3340d1 100644 --- a/modules/blogging/app/Volo.BloggingTestApp/yarn.lock +++ b/modules/blogging/app/Volo.BloggingTestApp/yarn.lock @@ -2,237 +2,237 @@ # yarn lockfile v1 -"@abp/aspnetcore.mvc.ui.theme.basic@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-8.2.2.tgz#0b18f3eee58b4a115e861a3732514a02d613d301" - integrity sha512-fFytBe1n+DxK7rVPnO8zqZWixBTDfdSrFUyg+qgpe+/Q10ec7x9j5noB+aiF73OZelJ9LGKz2gl+MS66Erpy2A== - dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~8.2.2" - -"@abp/aspnetcore.mvc.ui.theme.shared@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-8.2.2.tgz#419da4bac71ceb7b1afbd8b740b0675f51de6575" - integrity sha512-tYPbEqoENmxzN9zaBAF8/ssNk8uuVTkKpi663612H1b85ik3Tbm4H3gamKbSR1TxMwIJZxVyizxDMDhLu6ff3w== - dependencies: - "@abp/aspnetcore.mvc.ui" "~8.2.2" - "@abp/bootstrap" "~8.2.2" - "@abp/bootstrap-datepicker" "~8.2.2" - "@abp/bootstrap-daterangepicker" "~8.2.2" - "@abp/datatables.net-bs5" "~8.2.2" - "@abp/font-awesome" "~8.2.2" - "@abp/jquery-form" "~8.2.2" - "@abp/jquery-validation-unobtrusive" "~8.2.2" - "@abp/lodash" "~8.2.2" - "@abp/luxon" "~8.2.2" - "@abp/malihu-custom-scrollbar-plugin" "~8.2.2" - "@abp/moment" "~8.2.2" - "@abp/select2" "~8.2.2" - "@abp/sweetalert2" "~8.2.2" - "@abp/timeago" "~8.2.2" - "@abp/toastr" "~8.2.2" - -"@abp/aspnetcore.mvc.ui@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-8.2.2.tgz#53de1c58c14a98f15f408c9a404e5052cc28c966" - integrity sha512-XjduoVC/2nrlo7R77cTgvDQGZK0fqATx1VaHPHbQJLKvjZXS7rIU6Q0Eye+XcnGnw4udcq3luAorqI96JFkBiQ== +"@abp/aspnetcore.mvc.ui.theme.basic@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-8.2.3.tgz#4456eef32942a1064543f46b9b22fdd941ec209d" + integrity sha512-CmJ7Jp5guO/lCXb9IjrhZ0jpnlbL0d3k/7w6gp/jGhFZ5w7gTgI+ZOtr4jzQnQRWF+ZwaVhsgtfBG9PdNl63QA== + dependencies: + "@abp/aspnetcore.mvc.ui.theme.shared" "~8.2.3" + +"@abp/aspnetcore.mvc.ui.theme.shared@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-8.2.3.tgz#b1a795a947cf710730ddeec4684e706cd0d8b853" + integrity sha512-UDRzWXFUL1kHlrhzgjXwo+UxFwkthyQj2agk889mdt4doZ4NGbHKmgdHNrtt1PIOM8VOcQNubBx5VePffuMcYA== + dependencies: + "@abp/aspnetcore.mvc.ui" "~8.2.3" + "@abp/bootstrap" "~8.2.3" + "@abp/bootstrap-datepicker" "~8.2.3" + "@abp/bootstrap-daterangepicker" "~8.2.3" + "@abp/datatables.net-bs5" "~8.2.3" + "@abp/font-awesome" "~8.2.3" + "@abp/jquery-form" "~8.2.3" + "@abp/jquery-validation-unobtrusive" "~8.2.3" + "@abp/lodash" "~8.2.3" + "@abp/luxon" "~8.2.3" + "@abp/malihu-custom-scrollbar-plugin" "~8.2.3" + "@abp/moment" "~8.2.3" + "@abp/select2" "~8.2.3" + "@abp/sweetalert2" "~8.2.3" + "@abp/timeago" "~8.2.3" + "@abp/toastr" "~8.2.3" + +"@abp/aspnetcore.mvc.ui@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-8.2.3.tgz#02e20c42b198bf6bb13e313b4a4b435f17dc9ddd" + integrity sha512-414cAonBhJDZmlEat4gY1Qaf1npgJjYj/re9O0Rk/FdW2vO8Qt56LozGIsbvVY4RjMsQwpwkkgH4RWlIKm3q8w== dependencies: ansi-colors "^4.1.1" -"@abp/blogging@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/blogging/-/blogging-8.2.2.tgz#7d030acd5902ad318c4461531173ba7d2176f56c" - integrity sha512-5JZ2hprBWBk73eT2vLns5GPPMohFVOAOb441TQJJaEQOhAg+/Q9/pGaOg1dE56UiZEKWnRahaqzaM1hKsKfo2Q== +"@abp/blogging@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/blogging/-/blogging-8.2.3.tgz#3a88e287ddc25ab1e380379727096a3a17258889" + integrity sha512-vc9JFlTT0Cd7EJqo+l36ZQejMTvYbf/N4/dBrOG2m4G1n/5d+M61w0YHiVX5KeKXhrLaJjyOvR8eKq+gMfeebA== dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~8.2.2" - "@abp/owl.carousel" "~8.2.2" - "@abp/prismjs" "~8.2.2" - "@abp/tui-editor" "~8.2.2" + "@abp/aspnetcore.mvc.ui.theme.shared" "~8.2.3" + "@abp/owl.carousel" "~8.2.3" + "@abp/prismjs" "~8.2.3" + "@abp/tui-editor" "~8.2.3" -"@abp/bootstrap-datepicker@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-8.2.2.tgz#a14ff40f5bc29e9ad50ea68391f1238ab86f4d1b" - integrity sha512-nqDfEkbFj20ULJap5tsEThmzIUssfIhV8sqBitd9xKnCmoGpbywp/SZgB2hHNEqb3zIJaewNS9P11PoxqRpdBA== +"@abp/bootstrap-datepicker@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-8.2.3.tgz#ceec259251a692d25daae9263b54a3142b007f23" + integrity sha512-o3uZtuw/NKJTCKf5tK5U7Qii+9PgJGWIjLkqb7mXGftIMdqOaJ+QHZe+J9XaO4of8l2HtGkXp+fuQGVJBTlFAg== dependencies: bootstrap-datepicker "^1.9.0" -"@abp/bootstrap-daterangepicker@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-8.2.2.tgz#bff1cf71bce370ae0e4f3c04b9eee4221604959b" - integrity sha512-M0RbUHN52R7ZAyudhlQ6zWAbMmZ88FVR9EPP2dovfKLKfOUGWQiww2QA3a5gvwo/FBObC95XYfpVg72IQgr5ww== +"@abp/bootstrap-daterangepicker@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-8.2.3.tgz#b33117eb5dfcdbea9cb5212acfecd4e040ce7c2d" + integrity sha512-UR1TXFStbvD54wb6vEVK3FVHYtgugLBdDg4Xyh+aNe2sUTm+kfXh4+1Xm+3R1SV3cWvRT57Sy1bc306c6CQ7Zg== dependencies: bootstrap-daterangepicker "^3.1.0" -"@abp/bootstrap@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-8.2.2.tgz#78db0e4f54dd4b09462d386df83e451506717af6" - integrity sha512-A6hdNB2+Uokm5CniB6+qxR7Q2dyRwMLv2ct0v6PxOT1M+/Z2+oCzFDHLYKnmbcx5pg+1MmvnNC+clQZELDxjyw== +"@abp/bootstrap@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-8.2.3.tgz#462c4a5712d6d0baee345dc318fc5463527cbc21" + integrity sha512-jThgI5nlP5A/cKLUoNgRA5ldHz5xNoGkD+V0Z/gScbeAE8Q8eu7Q5P82PLF8B8cgKjOqJXb2L5kbdNYFdqIOwg== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" bootstrap "^5.1.3" -"@abp/clipboard@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-8.2.2.tgz#cb9a7bc2d08b8fb762c24cbd53f86a6aa5c8197a" - integrity sha512-D9azkwO9ZAwKsqdYRkzz0JOukfMdhUOpI382VxmfLTHgTgrby6xTae8SGIrXthgemEny3RlqYAX2R7EVfN3upg== +"@abp/clipboard@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-8.2.3.tgz#9e0c0b750114ddaca0beba1051dd7fc1fe77f543" + integrity sha512-RS1pVeeN1/5LlDNBBRDFUqR+xpfWteCZfIByh8xAbec1xuxHmxxxvb3kv1Wp7n4c1ec3V0yLRyvaj0SfYmnWNA== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" clipboard "^2.0.8" -"@abp/core@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-8.2.2.tgz#b4905fa539272bee26f5f95ceb2224b48cfac8ab" - integrity sha512-YKbT92+T9Zs0IvvIPJrMcBUjwR5u6U6f1KegRcRR79b43ZckIrQbqftjyFLF7YSPuJlVCHoO0YhU2Q1EagiFDg== +"@abp/core@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-8.2.3.tgz#1474f8e24cc8707bd909e1cd49230cdaa54c447e" + integrity sha512-mluL7NHWRxvjwHHGd3kOWQg0Tnmt4o2ih/KfdDJl7z4lpy386yL+UutkE3NNhgbEGWDt1hnS5rKFZabhaahwWg== dependencies: - "@abp/utils" "~8.2.2" + "@abp/utils" "~8.2.3" -"@abp/datatables.net-bs5@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-8.2.2.tgz#c314a615cf98cf0fdb6a97ffea3a42d0b050ccd5" - integrity sha512-dkb0wHdZ93mLSwmHbJ3hMKBm0ZFA9jpLxxWf7u+c7sBU+McACRdFHyl0x6dtinspDgo5GaPHGqmbsVx5S7eM2w== +"@abp/datatables.net-bs5@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-8.2.3.tgz#8e80767d7677ebf69a56248039ef5604499bbc30" + integrity sha512-XTjo15yM/nJiFfRtTMnfOJNh6FX+Vmmf5Kq5aG5XjUcp1IepEAgiNNOSmh+zRhUt4BDZ4RWcfSSGNbh0icUIOg== dependencies: - "@abp/datatables.net" "~8.2.2" + "@abp/datatables.net" "~8.2.3" datatables.net-bs5 "^1.11.4" -"@abp/datatables.net@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-8.2.2.tgz#1627836a2ee7efe1d470bdc32ec437ed86996fc8" - integrity sha512-hPAyx90kI4s+LlUsN6GfLWFEGe9JXExgqSzFUwkOqi+WS+kGWvPElUXfS06VaKiu/h/H9SVl+X+iajd3L9Zr9g== +"@abp/datatables.net@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-8.2.3.tgz#e38567679720546d42b895d9a464728ea3730292" + integrity sha512-CT18SqBuY25UmjNbiSbI9eqvbPNZZm+yYsZoasSUv3JOpO1oPfclgtZV5FKeBQQvM5Vc0BhRs7KMKF2F0pwszA== dependencies: - "@abp/jquery" "~8.2.2" + "@abp/jquery" "~8.2.3" datatables.net "^1.11.4" -"@abp/font-awesome@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-8.2.2.tgz#924ce3b78a902ef844901d824d8eb616cbc32ba8" - integrity sha512-yCn94hjowg42hTvyf3xJu7kOCMWfh5Qw4D8PbiaF3WwP1kbpC2QCeZ/Rh9Oltsml34rkhMKPTzLzZqki25Q5QQ== +"@abp/font-awesome@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-8.2.3.tgz#92d7645c94cda07becb8e2ea23e7769ec55c43b1" + integrity sha512-OLQRBuPHtPyM5IHhIJwsbkE8idmu/DDAIm92kOa97p0r0Hx7epnKx+Yrwz23FuRH2wYlmYJqDmwj1VTK90gxYA== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" "@fortawesome/fontawesome-free" "^6.5.1" -"@abp/jquery-form@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-8.2.2.tgz#aad534f5b4f4346ac97249040af663e70ecbd03e" - integrity sha512-QueETCaVq6g8b7c0jIepbKZKS2SO/aCZJy/uRc/lPumr2Hs96aZvHQGIAZopCQKPfF9mLp+Sc2QEN/zdt8QiNA== +"@abp/jquery-form@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-8.2.3.tgz#a8c593e6afbbcff5250657f052fc9912cdf352ac" + integrity sha512-AhkNUdyXE/q7hsra+1xj8W/g7lkIgR9YXrr0RgddPW+dqYqVvbYdFcPliHaSsl+kzPHSRx7eez8AjQSZlReIjg== dependencies: - "@abp/jquery" "~8.2.2" + "@abp/jquery" "~8.2.3" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-8.2.2.tgz#7396dd6a62cdf0796d967b167da5cc91974a9c5e" - integrity sha512-dH0ax7Lxaf+MeZC0z80IPHyXocuA26lzHtwFx/g4NIxxV1gKL8/wI+rAX1ulloSdqEA8kN6rlgOZMqiG2kNWcw== +"@abp/jquery-validation-unobtrusive@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-8.2.3.tgz#d21cbc1694b68f6377134e4e535d19e2cda0fb8d" + integrity sha512-2Ilrveqsj5jorZ2N75zLlHO8+NGRmLecRWIDZZmuyCXVF/LyyceaNBhkdiV+Ofcts387TVkQkjkoArV10Uu+Jg== dependencies: - "@abp/jquery-validation" "~8.2.2" + "@abp/jquery-validation" "~8.2.3" jquery-validation-unobtrusive "^3.2.12" -"@abp/jquery-validation@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-8.2.2.tgz#25ac2fb35aa8f60ba82116ef429996e7ae8518bb" - integrity sha512-WbvobzuEKmnFdCK2Bic7YNhbuauN1mIzgrnd8Ap0nLAxpwsVYkUBwKHoi7jyYv+Udvl39VjYFeciul9rZYI2pg== +"@abp/jquery-validation@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-8.2.3.tgz#642b7f56c1da5469443f864f04eb09cb0bf75bb4" + integrity sha512-qbML5oyoq9ltq212qD8C7jVOqNwTdvyRzTu3SsN15AXecapZxO/BPjhCgLb99OK4zT7hZaC8R+H0CDBa3O5pvg== dependencies: - "@abp/jquery" "~8.2.2" + "@abp/jquery" "~8.2.3" jquery-validation "^1.19.3" -"@abp/jquery@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-8.2.2.tgz#2496431ed11c5e2410e0efaa34404ac760a064ff" - integrity sha512-2ItXN6O45NIpSK/D8wUu+xVnrkxhc79Pce/yYMzFzI7QGYaKvpaP+tVWQQmKEa7RCNCyPS57AxuDtNqI4LSqDQ== +"@abp/jquery@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-8.2.3.tgz#e73d1df860276ae2a081c6f945f586720a71781d" + integrity sha512-SDOnVUJo0g3tuA40Z2Nme8yI1nTCwp0Mh2aAf3L3W+F8lzV3OQS8mUmpektxhPsFen0DufSvilOC+aI6/Jx5lQ== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" jquery "~3.6.0" -"@abp/lodash@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-8.2.2.tgz#a12ed0018f831c0f763da5c6a09d07494acf01ed" - integrity sha512-X+Y3CBMjNgeK/Y47MPMF4sH8PRF0TP+YpjvZ9lbGVSxiQPsNdrYKseZ1gp+AnDBHvj+Oxb7s/aRVZ1pbDJpXiQ== +"@abp/lodash@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-8.2.3.tgz#e78ef9e681369af51b6c36a0a450884c4ee5677a" + integrity sha512-47YoHS0CrH+PiQ8eF/ASYodGH+foBRBJVkDmRgZ1vegs10CJukBYgAutPlNMC2onlEF1jLYJ40ZKsHd6TrFQkA== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" lodash "^4.17.21" -"@abp/luxon@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-8.2.2.tgz#76026e1ae79601cc322cda458ac1f2b2cb76190a" - integrity sha512-I08NgiUJwCfNvwOZNYjwB/+2bUwulU3urqKIIB9Mg6PGK2hohsE8k2CMEijA+T25YYO32xgXevOfOq5YU2NCTw== +"@abp/luxon@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-8.2.3.tgz#445d763360b29a7591ab31898ce522e61be9d97e" + integrity sha512-pT+oO4znadhSleuH3x6n1nEgOzfVl0aHurt4F+wnJHyP7SdC2+RjZOYJUkuRIaZzflG4699Qq0UgAW6GfpuUgg== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" luxon "^2.3.0" -"@abp/malihu-custom-scrollbar-plugin@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-8.2.2.tgz#53405af2869fde990962914f24228a9fa65bab2f" - integrity sha512-/6g+Qm/5CbCzVgohEH8C72smIN4Lw/uL/KJbP7uEBVAXfKqY6vGA2VhrKNvIiBPfktIzZCHrcKsHwysMPtOS2Q== +"@abp/malihu-custom-scrollbar-plugin@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-8.2.3.tgz#7018c4ab65b78512bf5ea8f542fb0c7119a39e0b" + integrity sha512-CCc0iOaulmssuUL7RsAApRzYD+SXAPbqz5iod6yuyx3Y5Vaz4ik+2/cG7XZgwcgsmctJYZl3IxZ/ijnZXLgHUw== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/moment@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-8.2.2.tgz#1895904212fde6dc1793611940a9f8ec95b2c45f" - integrity sha512-VhhCOzVpapvFOn1gzQIcXB/RMyRKcZOlVLGLTqosg14woPSFm0+0utLHkPOLihWbUSQqDRYKvC2cPbNC6CknKg== +"@abp/moment@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-8.2.3.tgz#126039218e6068eca4279eae1eb5375207780931" + integrity sha512-nV11P1KqX8xPmb/bs3yYbFPz7ZOXWnZPKd4Z2k0JYaFTS2C07twgS0uQQHwW6iP8DrS1QBBAyLYBuM3ctgB0dg== dependencies: moment "^2.9.0" -"@abp/owl.carousel@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/owl.carousel/-/owl.carousel-8.2.2.tgz#861d6d4bf23728609bbb3a85964a7efbcc763d73" - integrity sha512-0M1cJ7WV5No72EdEU3Eru/EkwlM01hxnz8dQubgSxTysgsfbkoUocK9f3lIUfuiIn2onGxm5oOhHT+0A8iumyQ== +"@abp/owl.carousel@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/owl.carousel/-/owl.carousel-8.2.3.tgz#b5e50655a6d04055e6e581a2af0e5ae5b8ca6295" + integrity sha512-cEKeGr76KibzhC1F+pEW+lkTezwQGx5rghgXUjxoG9BgPiukqAK79g7317EwYW7hBchKAUGt99ZJmUCsA8mWlQ== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" owl.carousel "^2.3.4" -"@abp/prismjs@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-8.2.2.tgz#1910701fbe28d87d1312f16e865778f0e8b19670" - integrity sha512-5KaPPTcLc5/F4MB375orQe5W04bPcE8D/OTGllsj2RViGnmmkVj7Wzkwm6R63qWJtBrYuf9sh2c6eUACNkR2/A== +"@abp/prismjs@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-8.2.3.tgz#8927f1660815f4e3de11085ea5f3a73b127a858a" + integrity sha512-JJ/wlLlWShGYj0FMFjxriCIA4v1Fe+oHTgo1Kt9JpYkYG+Zq+rHsj1tvNthh2GU7Y69Kt2w1r1LpEDKZZHu58A== dependencies: - "@abp/clipboard" "~8.2.2" - "@abp/core" "~8.2.2" + "@abp/clipboard" "~8.2.3" + "@abp/core" "~8.2.3" prismjs "^1.26.0" -"@abp/select2@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-8.2.2.tgz#0dc011b838824598dc0a716e55b597aca62712dc" - integrity sha512-zTgtOl2iWihbGja3l8IIi+PqepYNk6O7fUcf6C9cdnBM4IrZSnJqw3sQDr9DqIoEzgdC6izVQzPJJEAi5CZ8Xg== +"@abp/select2@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-8.2.3.tgz#fc92d19ba22cbef5df9b8b2f85b4d21d3139883f" + integrity sha512-/MEJkSuM5+N5OIBLbrQUARUV++NpH9pVq4+btYhghDQDtHYrMHKU41QsginTFKfqBZ4f+OYV/HPnOuj7DJxOBw== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" select2 "^4.0.13" -"@abp/sweetalert2@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-8.2.2.tgz#1c75ec9ef1df2eec6304368667052d8ff9c9e795" - integrity sha512-yNgVxJ6E/cEtc8DYn00BtF9XFLShlZRsAnsipiP74YDvQKWUQSnwi70QoHEYDk2tJ+RsXqtZudvrKv8TyH/ijQ== +"@abp/sweetalert2@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-8.2.3.tgz#a82d674e262e9db89bc219ac350cae8ef17d7669" + integrity sha512-ap8vOgkKbmhAmDfVmEJPyVbIzA3V3mi9SvP/OLaNYEaMG0AppYf3iiSvC+6TA+qAFQuF5fI1oKUcsiE68uQGjw== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" sweetalert2 "^11.3.6" -"@abp/timeago@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-8.2.2.tgz#8af9558d325b2f2f9d9c5b1f90ac9eaf5531429b" - integrity sha512-ILdMeCTDNvmVOSm8Xc9ppL1xI1NoDzLbUCUojI7mvEFCE8sw3QGiFGhW6W7kYcoD7sRkxFl1Jn5V/urpAiQwaQ== +"@abp/timeago@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-8.2.3.tgz#dede68da0b5e252a573b0a1c5a9e4c831bc3c820" + integrity sha512-AbYf35a5M4QMAFK3aV6JE7QHR3GzpOX1zsun39i+97ZrNZf6do/eIgDx6dolTlSb0AsHf8qCrf7T6o1kIaXQ2w== dependencies: - "@abp/jquery" "~8.2.2" + "@abp/jquery" "~8.2.3" timeago "^1.6.7" -"@abp/toastr@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-8.2.2.tgz#a59d5b29e43698dbb614792bfd51185453859a7f" - integrity sha512-I4iiXV/SSXiD4UGM5oVsg6m6p4XmuxvqWmjOLSyoUfJQMC378mzNX0Ec9hYIY42C+GS2NalKtoaaYzBfcEtwoQ== +"@abp/toastr@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-8.2.3.tgz#77767666d578c05f039e84178c428370f6f10802" + integrity sha512-V1H0Efik/kGsRuTNPl//FsoH/8VU58S1K4GQ9k2V1bi8INaC/kU//I9frwOJsXd55imvsbmzh4XzrJ574eU84w== dependencies: - "@abp/jquery" "~8.2.2" + "@abp/jquery" "~8.2.3" toastr "^2.1.4" -"@abp/tui-editor@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/tui-editor/-/tui-editor-8.2.2.tgz#07212ebb19faf30074711943ac7f4f604c2c181e" - integrity sha512-JH3sAXiz1esdTJ4qUd3FQmWgTtChC9bEZYNvR+zxWQdsXV4IKcugcwZnktXhakEJOdjx4aHXLm8wwj1Stil0Vw== +"@abp/tui-editor@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/tui-editor/-/tui-editor-8.2.3.tgz#7f810481cd109e88bb67890e8daae7ae0a94c79d" + integrity sha512-rWl1WYwkzRZXXG5/ndU6ve9NZL73b2gTne6FShR36T7LdsmUZp4yuF6g956dvObUOw1Uhyo7TvvUcC72pKD8aA== dependencies: - "@abp/jquery" "~8.2.2" - "@abp/prismjs" "~8.2.2" + "@abp/jquery" "~8.2.3" + "@abp/prismjs" "~8.2.3" -"@abp/utils@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-8.2.2.tgz#84035d36e968c8ecdeee3c7617aa45bfeb3f6afd" - integrity sha512-70hmgTd7N63AnanzZYUWpobckhPzplBjlRmMhIi+9WZLQfxWpM/EN6l+qQndjAMMvgFl/vW03BUJh1fL9kGynA== +"@abp/utils@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-8.2.3.tgz#05e3d419ee9a6228f7ed4f86e8fd03f3ce57ed27" + integrity sha512-WMs/okBxGitkGRdsikByyJLFXRSD/DPfBWZdDhU4+TvcQmnTqog9S75kZ8CUpUe/wwDHYsY51ef6N6jOfkGTFQ== dependencies: just-compare "^2.3.0" diff --git a/modules/blogging/src/Volo.Blogging.Admin.Application.Contracts/Volo.Blogging.Admin.Application.Contracts.abppkg.analyze.json b/modules/blogging/src/Volo.Blogging.Admin.Application.Contracts/Volo.Blogging.Admin.Application.Contracts.abppkg.analyze.json index 3c721cbb8f..238d602da6 100644 --- a/modules/blogging/src/Volo.Blogging.Admin.Application.Contracts/Volo.Blogging.Admin.Application.Contracts.abppkg.analyze.json +++ b/modules/blogging/src/Volo.Blogging.Admin.Application.Contracts/Volo.Blogging.Admin.Application.Contracts.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Blogging.Admin.Application.Contracts", - "hash": "765deda9c2ad81c60686d163f8856cde", + "hash": "", "contents": [ { "namespace": "Volo.Blogging.Admin", diff --git a/modules/blogging/src/Volo.Blogging.Admin.Application/Volo.Blogging.Admin.Application.abppkg.analyze.json b/modules/blogging/src/Volo.Blogging.Admin.Application/Volo.Blogging.Admin.Application.abppkg.analyze.json index b247ffa372..473750d55d 100644 --- a/modules/blogging/src/Volo.Blogging.Admin.Application/Volo.Blogging.Admin.Application.abppkg.analyze.json +++ b/modules/blogging/src/Volo.Blogging.Admin.Application/Volo.Blogging.Admin.Application.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Blogging.Admin.Application", - "hash": "f36b44743b8df7a8d4cc013570d044a2", + "hash": "", "contents": [ { "namespace": "Volo.Blogging.Admin", @@ -146,6 +146,7 @@ "methods": [ { "returnType": "ListResultDto", + "namespace": "Volo.Blogging.Admin.Blogs", "name": "GetListAsync", "summary": null, "isAsync": true, @@ -156,6 +157,7 @@ }, { "returnType": "BlogDto", + "namespace": "Volo.Blogging.Admin.Blogs", "name": "GetAsync", "summary": null, "isAsync": true, @@ -172,6 +174,7 @@ }, { "returnType": "BlogDto", + "namespace": "Volo.Blogging.Admin.Blogs", "name": "CreateAsync", "summary": null, "isAsync": true, @@ -188,6 +191,7 @@ }, { "returnType": "BlogDto", + "namespace": "Volo.Blogging.Admin.Blogs", "name": "UpdateAsync", "summary": null, "isAsync": true, @@ -209,6 +213,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Blogging.Admin.Blogs", "name": "DeleteAsync", "summary": null, "isAsync": true, @@ -225,6 +230,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Blogging.Admin.Blogs", "name": "ClearCacheAsync", "summary": null, "isAsync": true, diff --git a/modules/blogging/src/Volo.Blogging.Admin.HttpApi.Client/Volo.Blogging.Admin.HttpApi.Client.abppkg.analyze.json b/modules/blogging/src/Volo.Blogging.Admin.HttpApi.Client/Volo.Blogging.Admin.HttpApi.Client.abppkg.analyze.json index 294df5e147..851a0316da 100644 --- a/modules/blogging/src/Volo.Blogging.Admin.HttpApi.Client/Volo.Blogging.Admin.HttpApi.Client.abppkg.analyze.json +++ b/modules/blogging/src/Volo.Blogging.Admin.HttpApi.Client/Volo.Blogging.Admin.HttpApi.Client.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Blogging.Admin.HttpApi.Client", - "hash": "3c18ac9eda422806cb4bba72a39ad229", + "hash": "", "contents": [ { "namespace": "Volo.Blogging.Admin", diff --git a/modules/blogging/src/Volo.Blogging.Admin.HttpApi/Volo.Blogging.Admin.HttpApi.abppkg.analyze.json b/modules/blogging/src/Volo.Blogging.Admin.HttpApi/Volo.Blogging.Admin.HttpApi.abppkg.analyze.json index a93621f41c..1a6a317bd2 100644 --- a/modules/blogging/src/Volo.Blogging.Admin.HttpApi/Volo.Blogging.Admin.HttpApi.abppkg.analyze.json +++ b/modules/blogging/src/Volo.Blogging.Admin.HttpApi/Volo.Blogging.Admin.HttpApi.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Blogging.Admin.HttpApi", - "hash": "689f6b3f8cc4a2e9e75308df5a58b588", + "hash": "", "contents": [ { "namespace": "Volo.Blogging.Admin", @@ -63,6 +63,90 @@ "contentType": "abpModule", "name": "BloggingAdminHttpApiModule", "summary": null + }, + { + "apis": [ + { + "path": "api/blogging/blogs/admin", + "method": "GET", + "groupName": "BlogManagement", + "responseType": "Volo.Abp.Application.Dtos.ListResultDto`1[Volo.Blogging.Blogs.Dtos.BlogDto]", + "responseTypeAsJson": "{\r\n \"items\": [\r\n {\r\n \"name\": \"string\",\r\n \"shortName\": \"string\",\r\n \"description\": \"string\",\r\n \"concurrencyStamp\": \"string\",\r\n \"isDeleted\": false,\r\n \"deleterId\": null,\r\n \"deletionTime\": null,\r\n \"lastModificationTime\": null,\r\n \"lastModifierId\": null,\r\n \"creationTime\": \"0001-01-01T00:00:00\",\r\n \"creatorId\": null,\r\n \"id\": \"00000000-0000-0000-0000-000000000000\"\r\n }\r\n ]\r\n}", + "parameterDescriptions": [] + }, + { + "path": "api/blogging/blogs/admin/{id}", + "method": "GET", + "groupName": "BlogManagement", + "responseType": "Volo.Blogging.Blogs.Dtos.BlogDto", + "responseTypeAsJson": "{\r\n \"name\": \"string\",\r\n \"shortName\": \"string\",\r\n \"description\": \"string\",\r\n \"concurrencyStamp\": \"string\",\r\n \"isDeleted\": false,\r\n \"deleterId\": null,\r\n \"deletionTime\": null,\r\n \"lastModificationTime\": null,\r\n \"lastModifierId\": null,\r\n \"creationTime\": \"0001-01-01T00:00:00\",\r\n \"creatorId\": null,\r\n \"id\": \"00000000-0000-0000-0000-000000000000\"\r\n}", + "parameterDescriptions": [ + { + "name": "id", + "type": "Guid" + } + ] + }, + { + "path": "api/blogging/blogs/admin", + "method": "POST", + "groupName": "BlogManagement", + "responseType": "Volo.Blogging.Blogs.Dtos.BlogDto", + "responseTypeAsJson": "{\r\n \"name\": \"string\",\r\n \"shortName\": \"string\",\r\n \"description\": \"string\",\r\n \"concurrencyStamp\": \"string\",\r\n \"isDeleted\": false,\r\n \"deleterId\": null,\r\n \"deletionTime\": null,\r\n \"lastModificationTime\": null,\r\n \"lastModifierId\": null,\r\n \"creationTime\": \"0001-01-01T00:00:00\",\r\n \"creatorId\": null,\r\n \"id\": \"00000000-0000-0000-0000-000000000000\"\r\n}", + "parameterDescriptions": [ + { + "name": "input", + "type": "CreateBlogDto" + } + ] + }, + { + "path": "api/blogging/blogs/admin/{id}", + "method": "PUT", + "groupName": "BlogManagement", + "responseType": "Volo.Blogging.Blogs.Dtos.BlogDto", + "responseTypeAsJson": "{\r\n \"name\": \"string\",\r\n \"shortName\": \"string\",\r\n \"description\": \"string\",\r\n \"concurrencyStamp\": \"string\",\r\n \"isDeleted\": false,\r\n \"deleterId\": null,\r\n \"deletionTime\": null,\r\n \"lastModificationTime\": null,\r\n \"lastModifierId\": null,\r\n \"creationTime\": \"0001-01-01T00:00:00\",\r\n \"creatorId\": null,\r\n \"id\": \"00000000-0000-0000-0000-000000000000\"\r\n}", + "parameterDescriptions": [ + { + "name": "id", + "type": "Guid" + }, + { + "name": "input", + "type": "UpdateBlogDto" + } + ] + }, + { + "path": "api/blogging/blogs/admin/{id}", + "method": "DELETE", + "groupName": "BlogManagement", + "responseType": "System.Void", + "responseTypeAsJson": "", + "parameterDescriptions": [ + { + "name": "id", + "type": "Guid" + } + ] + }, + { + "path": "api/blogging/blogs/admin/clear-cache/{id}", + "method": "GET", + "groupName": "BlogManagement", + "responseType": "System.Void", + "responseTypeAsJson": "", + "parameterDescriptions": [ + { + "name": "id", + "type": "Guid" + } + ] + } + ], + "contentType": "httpApi", + "name": "Defined Http Apis", + "summary": null } ] } \ No newline at end of file diff --git a/modules/blogging/src/Volo.Blogging.Admin.Web/Volo.Blogging.Admin.Web.abppkg.analyze.json b/modules/blogging/src/Volo.Blogging.Admin.Web/Volo.Blogging.Admin.Web.abppkg.analyze.json index 258c5ec139..bfadd4006b 100644 --- a/modules/blogging/src/Volo.Blogging.Admin.Web/Volo.Blogging.Admin.Web.abppkg.analyze.json +++ b/modules/blogging/src/Volo.Blogging.Admin.Web/Volo.Blogging.Admin.Web.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Blogging.Admin.Web", - "hash": "f00cd39c07130843c7103cc1f6caf9a2", + "hash": "", "contents": [ { "namespace": "Volo.Blogging.Admin", @@ -73,6 +73,24 @@ "contentType": "abpModule", "name": "BloggingAdminWebModule", "summary": null + }, + { + "namespace": "Volo.Blogging.Admin.Pages.Blogging.Admin.Blogs", + "contentType": "webPage", + "name": "CreateModel", + "summary": null + }, + { + "namespace": "Volo.Blogging.Admin.Pages.Blogging.Admin.Blogs", + "contentType": "webPage", + "name": "EditModel", + "summary": null + }, + { + "namespace": "Volo.Blogging.Admin.Pages.Blogging.Admin.Blogs", + "contentType": "webPage", + "name": "IndexModel", + "summary": null } ] } \ No newline at end of file diff --git a/modules/blogging/src/Volo.Blogging.Application.Contracts/Volo.Blogging.Application.Contracts.abppkg.analyze.json b/modules/blogging/src/Volo.Blogging.Application.Contracts/Volo.Blogging.Application.Contracts.abppkg.analyze.json index 233c9594ac..6d09472ac6 100644 --- a/modules/blogging/src/Volo.Blogging.Application.Contracts/Volo.Blogging.Application.Contracts.abppkg.analyze.json +++ b/modules/blogging/src/Volo.Blogging.Application.Contracts/Volo.Blogging.Application.Contracts.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Blogging.Application.Contracts", - "hash": "90bed1d4c7274bff6059309df9800b27", + "hash": "", "contents": [ { "namespace": "Volo.Blogging", diff --git a/modules/blogging/src/Volo.Blogging.Application/Volo.Blogging.Application.abppkg.analyze.json b/modules/blogging/src/Volo.Blogging.Application/Volo.Blogging.Application.abppkg.analyze.json index 97dc91e6d7..b332019e6d 100644 --- a/modules/blogging/src/Volo.Blogging.Application/Volo.Blogging.Application.abppkg.analyze.json +++ b/modules/blogging/src/Volo.Blogging.Application/Volo.Blogging.Application.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Blogging.Application", - "hash": "0119e0d4243cd5f865bda1dc7115637f", + "hash": "", "contents": [ { "namespace": "Volo.Blogging", @@ -151,6 +151,7 @@ "methods": [ { "returnType": "List", + "namespace": "Volo.Blogging.Tagging", "name": "GetPopularTagsAsync", "summary": null, "isAsync": true, @@ -242,6 +243,7 @@ "methods": [ { "returnType": "ListResultDto", + "namespace": "Volo.Blogging.Posts", "name": "GetListByBlogIdAndTagNameAsync", "summary": null, "isAsync": true, @@ -263,6 +265,7 @@ }, { "returnType": "ListResultDto", + "namespace": "Volo.Blogging.Posts", "name": "GetTimeOrderedListAsync", "summary": null, "isAsync": true, @@ -279,6 +282,7 @@ }, { "returnType": "PostWithDetailsDto", + "namespace": "Volo.Blogging.Posts", "name": "GetForReadingAsync", "summary": null, "isAsync": true, @@ -295,6 +299,7 @@ }, { "returnType": "PostWithDetailsDto", + "namespace": "Volo.Blogging.Posts", "name": "GetAsync", "summary": null, "isAsync": true, @@ -311,6 +316,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Blogging.Posts", "name": "DeleteAsync", "summary": null, "isAsync": true, @@ -327,6 +333,7 @@ }, { "returnType": "PostWithDetailsDto", + "namespace": "Volo.Blogging.Posts", "name": "UpdateAsync", "summary": null, "isAsync": true, @@ -346,8 +353,48 @@ } ] }, + { + "returnType": "List", + "namespace": "Volo.Blogging.Posts", + "name": "GetListByUserIdAsync", + "summary": null, + "isAsync": true, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "Guid", + "name": "userId", + "isOptional": false + } + ] + }, + { + "returnType": "List", + "namespace": "Volo.Blogging.Posts", + "name": "GetLatestBlogPostsAsync", + "summary": null, + "isAsync": true, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "Guid", + "name": "blogId", + "isOptional": false + }, + { + "type": "Int32", + "name": "count", + "isOptional": false + } + ] + }, { "returnType": "PostWithDetailsDto", + "namespace": "Volo.Blogging.Posts", "name": "CreateAsync", "summary": null, "isAsync": true, @@ -367,6 +414,110 @@ "name": "PostAppService", "summary": null }, + { + "namespace": "Volo.Blogging.Members", + "baseClass": { + "name": "BloggingAppServiceBase", + "namespace": "Volo.Blogging", + "declaringAssemblyName": "Volo.Blogging.Application", + "fullName": "Volo.Blogging.BloggingAppServiceBase" + }, + "implementingInterfaces": [ + { + "name": "IApplicationService", + "namespace": "Volo.Abp.Application.Services", + "declaringAssemblyName": "Volo.Abp.Ddd.Application.Contracts", + "fullName": "Volo.Abp.Application.Services.IApplicationService" + }, + { + "name": "IRemoteService", + "namespace": "Volo.Abp", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.IRemoteService" + }, + { + "name": "IAvoidDuplicateCrossCuttingConcerns", + "namespace": "Volo.Abp.Aspects", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.Aspects.IAvoidDuplicateCrossCuttingConcerns" + }, + { + "name": "IValidationEnabled", + "namespace": "Volo.Abp.Validation", + "declaringAssemblyName": "Volo.Abp.Validation", + "fullName": "Volo.Abp.Validation.IValidationEnabled" + }, + { + "name": "IUnitOfWorkEnabled", + "namespace": "Volo.Abp.Uow", + "declaringAssemblyName": "Volo.Abp.Uow", + "fullName": "Volo.Abp.Uow.IUnitOfWorkEnabled" + }, + { + "name": "IAuditingEnabled", + "namespace": "Volo.Abp.Auditing", + "declaringAssemblyName": "Volo.Abp.Auditing.Contracts", + "fullName": "Volo.Abp.Auditing.IAuditingEnabled" + }, + { + "name": "IGlobalFeatureCheckingEnabled", + "namespace": "Volo.Abp.GlobalFeatures", + "declaringAssemblyName": "Volo.Abp.GlobalFeatures", + "fullName": "Volo.Abp.GlobalFeatures.IGlobalFeatureCheckingEnabled" + }, + { + "name": "ITransientDependency", + "namespace": "Volo.Abp.DependencyInjection", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.DependencyInjection.ITransientDependency" + }, + { + "name": "IMemberAppService", + "namespace": "Volo.Blogging.Members", + "declaringAssemblyName": "Volo.Blogging.Application.Contracts", + "fullName": "Volo.Blogging.Members.IMemberAppService" + } + ], + "methods": [ + { + "returnType": "BlogUserDto", + "namespace": "Volo.Blogging.Members", + "name": "FindAsync", + "summary": null, + "isAsync": true, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "String", + "name": "username", + "isOptional": false + } + ] + }, + { + "returnType": "Void", + "namespace": "Volo.Blogging.Members", + "name": "UpdateUserProfileAsync", + "summary": null, + "isAsync": true, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "CustomIdentityBlogUserUpdateDto", + "name": "input", + "isOptional": false + } + ] + } + ], + "contentType": "applicationService", + "name": "MemberAppService", + "summary": null + }, { "namespace": "Volo.Blogging.Files", "baseClass": { @@ -434,6 +585,7 @@ "methods": [ { "returnType": "RawFileDto", + "namespace": "Volo.Blogging.Files", "name": "GetAsync", "summary": null, "isAsync": true, @@ -450,6 +602,7 @@ }, { "returnType": "IRemoteStreamContent", + "namespace": "Volo.Blogging.Files", "name": "GetFileAsync", "summary": null, "isAsync": true, @@ -466,6 +619,7 @@ }, { "returnType": "FileUploadOutputDto", + "namespace": "Volo.Blogging.Files", "name": "CreateAsync", "summary": null, "isAsync": true, @@ -552,6 +706,7 @@ "methods": [ { "returnType": "List", + "namespace": "Volo.Blogging.Comments", "name": "GetHierarchicalListOfPostAsync", "summary": null, "isAsync": true, @@ -568,6 +723,7 @@ }, { "returnType": "CommentWithDetailsDto", + "namespace": "Volo.Blogging.Comments", "name": "CreateAsync", "summary": null, "isAsync": true, @@ -584,6 +740,7 @@ }, { "returnType": "CommentWithDetailsDto", + "namespace": "Volo.Blogging.Comments", "name": "UpdateAsync", "summary": null, "isAsync": true, @@ -605,6 +762,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Blogging.Comments", "name": "DeleteAsync", "summary": null, "isAsync": true, @@ -691,6 +849,7 @@ "methods": [ { "returnType": "ListResultDto", + "namespace": "Volo.Blogging.Blogs", "name": "GetListAsync", "summary": null, "isAsync": true, @@ -701,6 +860,7 @@ }, { "returnType": "BlogDto", + "namespace": "Volo.Blogging.Blogs", "name": "GetByShortNameAsync", "summary": null, "isAsync": true, @@ -717,6 +877,7 @@ }, { "returnType": "BlogDto", + "namespace": "Volo.Blogging.Blogs", "name": "GetAsync", "summary": null, "isAsync": true, diff --git a/modules/blogging/src/Volo.Blogging.Domain.Shared/Volo.Blogging.Domain.Shared.abppkg.analyze.json b/modules/blogging/src/Volo.Blogging.Domain.Shared/Volo.Blogging.Domain.Shared.abppkg.analyze.json index 54e8d52f5f..2b2ee467f7 100644 --- a/modules/blogging/src/Volo.Blogging.Domain.Shared/Volo.Blogging.Domain.Shared.abppkg.analyze.json +++ b/modules/blogging/src/Volo.Blogging.Domain.Shared/Volo.Blogging.Domain.Shared.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Blogging.Domain.Shared", - "hash": "416d1bef921b5bb0eb443877eb8af5a6", + "hash": "", "contents": [ { "namespace": "Volo.Blogging", diff --git a/modules/blogging/src/Volo.Blogging.Domain/Volo.Blogging.Domain.abppkg.analyze.json b/modules/blogging/src/Volo.Blogging.Domain/Volo.Blogging.Domain.abppkg.analyze.json index 4ca41ac00d..64b65921d1 100644 --- a/modules/blogging/src/Volo.Blogging.Domain/Volo.Blogging.Domain.abppkg.analyze.json +++ b/modules/blogging/src/Volo.Blogging.Domain/Volo.Blogging.Domain.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Blogging.Domain", - "hash": "6ef78d68d0b8c8fe7a3f43214e572d5d", + "hash": "", "contents": [ { "namespace": "Volo.Blogging", @@ -152,7 +152,7 @@ { "name": "IMultiTenant", "namespace": "Volo.Abp.MultiTenancy", - "declaringAssemblyName": "Volo.Abp.MultiTenancy", + "declaringAssemblyName": "Volo.Abp.MultiTenancy.Abstractions", "fullName": "Volo.Abp.MultiTenancy.IMultiTenant" }, { @@ -165,6 +165,7 @@ "methods": [ { "returnType": "Boolean", + "namespace": "Volo.Blogging.Users", "name": "Update", "summary": null, "isAsync": false, @@ -229,6 +230,41 @@ "type": "System.Boolean", "name": "PhoneNumberConfirmed", "summary": null + }, + { + "type": "System.String", + "name": "WebSite", + "summary": null + }, + { + "type": "System.String", + "name": "Twitter", + "summary": null + }, + { + "type": "System.String", + "name": "Github", + "summary": null + }, + { + "type": "System.String", + "name": "Linkedin", + "summary": null + }, + { + "type": "System.String", + "name": "Company", + "summary": null + }, + { + "type": "System.String", + "name": "JobTitle", + "summary": null + }, + { + "type": "System.String", + "name": "Biography", + "summary": null } ], "contentType": "aggregateRoot", @@ -349,6 +385,7 @@ "methods": [ { "returnType": "Void", + "namespace": "Volo.Blogging.Tagging", "name": "SetName", "summary": null, "isAsync": false, @@ -365,6 +402,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Blogging.Tagging", "name": "IncreaseUsageCount", "summary": null, "isAsync": false, @@ -381,6 +419,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Blogging.Tagging", "name": "DecreaseUsageCount", "summary": null, "isAsync": false, @@ -397,6 +436,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Blogging.Tagging", "name": "SetDescription", "summary": null, "isAsync": false, @@ -556,6 +596,7 @@ "methods": [ { "returnType": "Post", + "namespace": "Volo.Blogging.Posts", "name": "IncreaseReadCount", "summary": null, "isAsync": false, @@ -566,6 +607,7 @@ }, { "returnType": "Post", + "namespace": "Volo.Blogging.Posts", "name": "SetTitle", "summary": null, "isAsync": false, @@ -582,6 +624,7 @@ }, { "returnType": "Post", + "namespace": "Volo.Blogging.Posts", "name": "SetUrl", "summary": null, "isAsync": false, @@ -598,6 +641,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Blogging.Posts", "name": "AddTag", "summary": null, "isAsync": false, @@ -614,6 +658,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Blogging.Posts", "name": "RemoveTag", "summary": null, "isAsync": false, @@ -800,6 +845,7 @@ "methods": [ { "returnType": "Void", + "namespace": "Volo.Blogging.Comments", "name": "SetText", "summary": null, "isAsync": false, @@ -954,6 +1000,7 @@ "methods": [ { "returnType": "Blog", + "namespace": "Volo.Blogging.Blogs", "name": "SetName", "summary": null, "isAsync": false, @@ -970,6 +1017,7 @@ }, { "returnType": "Blog", + "namespace": "Volo.Blogging.Blogs", "name": "SetShortName", "summary": null, "isAsync": false, @@ -1061,6 +1109,7 @@ "methods": [ { "returnType": "List", + "namespace": "Volo.Blogging.Users", "name": "GetUsersAsync", "summary": null, "isAsync": true, @@ -1135,6 +1184,7 @@ "methods": [ { "returnType": "List", + "namespace": "Volo.Blogging.Tagging", "name": "GetListAsync", "summary": null, "isAsync": true, @@ -1156,6 +1206,7 @@ }, { "returnType": "Tag", + "namespace": "Volo.Blogging.Tagging", "name": "GetByNameAsync", "summary": null, "isAsync": true, @@ -1182,6 +1233,7 @@ }, { "returnType": "Tag", + "namespace": "Volo.Blogging.Tagging", "name": "FindByNameAsync", "summary": null, "isAsync": true, @@ -1208,6 +1260,7 @@ }, { "returnType": "List", + "namespace": "Volo.Blogging.Tagging", "name": "GetListAsync", "summary": null, "isAsync": true, @@ -1229,6 +1282,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Blogging.Tagging", "name": "DecreaseUsageCountOfTagsAsync", "summary": null, "isAsync": true, @@ -1298,6 +1352,7 @@ "methods": [ { "returnType": "List", + "namespace": "Volo.Blogging.Posts", "name": "GetPostsByBlogId", "summary": null, "isAsync": true, @@ -1319,6 +1374,7 @@ }, { "returnType": "Boolean", + "namespace": "Volo.Blogging.Posts", "name": "IsPostUrlInUseAsync", "summary": null, "isAsync": true, @@ -1350,6 +1406,7 @@ }, { "returnType": "Post", + "namespace": "Volo.Blogging.Posts", "name": "GetPostByUrl", "summary": null, "isAsync": true, @@ -1376,6 +1433,7 @@ }, { "returnType": "List", + "namespace": "Volo.Blogging.Posts", "name": "GetOrderedList", "summary": null, "isAsync": true, @@ -1399,6 +1457,55 @@ "isOptional": true } ] + }, + { + "returnType": "List", + "namespace": "Volo.Blogging.Posts", + "name": "GetListByUserIdAsync", + "summary": null, + "isAsync": true, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "Guid", + "name": "userId", + "isOptional": false + }, + { + "type": "CancellationToken", + "name": "cancellationToken", + "isOptional": true + } + ] + }, + { + "returnType": "List", + "namespace": "Volo.Blogging.Posts", + "name": "GetLatestBlogPostsAsync", + "summary": null, + "isAsync": true, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "Guid", + "name": "blogId", + "isOptional": false + }, + { + "type": "Int32", + "name": "count", + "isOptional": false + }, + { + "type": "CancellationToken", + "name": "cancellationToken", + "isOptional": true + } + ] } ], "contentType": "repositoryInterface", @@ -1450,6 +1557,7 @@ "methods": [ { "returnType": "List", + "namespace": "Volo.Blogging.Comments", "name": "GetListOfPostAsync", "summary": null, "isAsync": true, @@ -1471,6 +1579,7 @@ }, { "returnType": "Int32", + "namespace": "Volo.Blogging.Comments", "name": "GetCommentCountOfPostAsync", "summary": null, "isAsync": true, @@ -1492,6 +1601,7 @@ }, { "returnType": "List", + "namespace": "Volo.Blogging.Comments", "name": "GetRepliesOfComment", "summary": null, "isAsync": true, @@ -1513,6 +1623,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Blogging.Comments", "name": "DeleteOfPost", "summary": null, "isAsync": true, @@ -1582,6 +1693,7 @@ "methods": [ { "returnType": "Blog", + "namespace": "Volo.Blogging.Blogs", "name": "FindByShortNameAsync", "summary": null, "isAsync": true, diff --git a/modules/blogging/src/Volo.Blogging.EntityFrameworkCore/Volo.Blogging.EntityFrameworkCore.abppkg.analyze.json b/modules/blogging/src/Volo.Blogging.EntityFrameworkCore/Volo.Blogging.EntityFrameworkCore.abppkg.analyze.json index 7fb2558e8c..6a4b92e01e 100644 --- a/modules/blogging/src/Volo.Blogging.EntityFrameworkCore/Volo.Blogging.EntityFrameworkCore.abppkg.analyze.json +++ b/modules/blogging/src/Volo.Blogging.EntityFrameworkCore/Volo.Blogging.EntityFrameworkCore.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Blogging.EntityFrameworkCore", - "hash": "6a38802ee4510532b9dd8879c2b2b7ff", + "hash": "", "contents": [ { "namespace": "Volo.Blogging.EntityFrameworkCore", @@ -67,45 +67,27 @@ { "namespace": "Volo.Blogging.EntityFrameworkCore", "connectionStringName": "Blogging", - "databaseTables": [ - { - "entityFullName": "Volo.Blogging.Blogs.Blog", - "contentType": "databaseTable", - "name": "BlgBlogs", - "summary": null - }, - { - "entityFullName": "Volo.Blogging.Comments.Comment", - "contentType": "databaseTable", - "name": "BlgComments", - "summary": null - }, - { - "entityFullName": "Volo.Blogging.Posts.Post", - "contentType": "databaseTable", - "name": "BlgPosts", - "summary": null - }, - { - "entityFullName": "Volo.Blogging.Posts.PostTag", - "contentType": "databaseTable", - "name": "BlgPostTags", - "summary": null - }, - { - "entityFullName": "Volo.Blogging.Tagging.Tag", - "contentType": "databaseTable", - "name": "BlgTags", - "summary": null - }, + "databaseTables": [], + "replacedDbContexts": [], + "modelBuilderExtensionMethods": [ { - "entityFullName": "Volo.Blogging.Users.BlogUser", - "contentType": "databaseTable", - "name": "BlgUsers", - "summary": null + "returnType": "Void", + "namespace": "Volo.Blogging.EntityFrameworkCore", + "name": "ConfigureBlogging", + "summary": null, + "isAsync": false, + "isPublic": true, + "isPrivate": false, + "isStatic": true, + "parameters": [ + { + "type": "ModelBuilder", + "name": "builder", + "isOptional": false + } + ] } ], - "replacedDbContexts": [], "implementingInterfaces": [ { "name": "IInfrastructure", diff --git a/modules/blogging/src/Volo.Blogging.HttpApi.Client/Volo.Blogging.HttpApi.Client.abppkg.analyze.json b/modules/blogging/src/Volo.Blogging.HttpApi.Client/Volo.Blogging.HttpApi.Client.abppkg.analyze.json index fab3946f08..4fde803ba1 100644 --- a/modules/blogging/src/Volo.Blogging.HttpApi.Client/Volo.Blogging.HttpApi.Client.abppkg.analyze.json +++ b/modules/blogging/src/Volo.Blogging.HttpApi.Client/Volo.Blogging.HttpApi.Client.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Blogging.HttpApi.Client", - "hash": "3ca2666acad094da483790ffe3497ae0", + "hash": "", "contents": [ { "namespace": "Volo.Blogging", diff --git a/modules/blogging/src/Volo.Blogging.HttpApi/Volo.Blogging.HttpApi.abppkg.analyze.json b/modules/blogging/src/Volo.Blogging.HttpApi/Volo.Blogging.HttpApi.abppkg.analyze.json index e9fa020357..7b15b827b0 100644 --- a/modules/blogging/src/Volo.Blogging.HttpApi/Volo.Blogging.HttpApi.abppkg.analyze.json +++ b/modules/blogging/src/Volo.Blogging.HttpApi/Volo.Blogging.HttpApi.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Blogging.HttpApi", - "hash": "3e6f3a5c72fe4dd10117f387c5a28255", + "hash": "", "contents": [ { "namespace": "Volo.Blogging", @@ -63,6 +63,300 @@ "contentType": "abpModule", "name": "BloggingHttpApiModule", "summary": null + }, + { + "apis": [ + { + "path": "api/blogging/files/{name}", + "method": "GET", + "groupName": "BlogFiles", + "responseType": "Volo.Blogging.Files.RawFileDto", + "responseTypeAsJson": "", + "parameterDescriptions": [ + { + "name": "name", + "type": "String" + } + ] + }, + { + "path": "api/blogging/files/www/{name}", + "method": "GET", + "groupName": "BlogFiles", + "responseType": "Volo.Abp.Content.IRemoteStreamContent", + "responseTypeAsJson": "", + "parameterDescriptions": [ + { + "name": "name", + "type": "String" + } + ] + }, + { + "path": "api/blogging/files/images/upload", + "method": "POST", + "groupName": "BlogFiles", + "responseType": "Volo.Blogging.Files.FileUploadOutputDto", + "responseTypeAsJson": "{\r\n \"name\": \"string\",\r\n \"webUrl\": \"string\"\r\n}", + "parameterDescriptions": [ + { + "name": "File", + "type": "IRemoteStreamContent" + }, + { + "name": "Name", + "type": "String" + } + ] + }, + { + "path": "api/blogging/blogs", + "method": "GET", + "groupName": "Blogs", + "responseType": "Volo.Abp.Application.Dtos.ListResultDto`1[Volo.Blogging.Blogs.Dtos.BlogDto]", + "responseTypeAsJson": "{\r\n \"items\": [\r\n {\r\n \"name\": \"string\",\r\n \"shortName\": \"string\",\r\n \"description\": \"string\",\r\n \"concurrencyStamp\": \"string\",\r\n \"isDeleted\": false,\r\n \"deleterId\": null,\r\n \"deletionTime\": null,\r\n \"lastModificationTime\": null,\r\n \"lastModifierId\": null,\r\n \"creationTime\": \"0001-01-01T00:00:00\",\r\n \"creatorId\": null,\r\n \"id\": \"00000000-0000-0000-0000-000000000000\"\r\n }\r\n ]\r\n}", + "parameterDescriptions": [] + }, + { + "path": "api/blogging/blogs/by-shortname/{shortName}", + "method": "GET", + "groupName": "Blogs", + "responseType": "Volo.Blogging.Blogs.Dtos.BlogDto", + "responseTypeAsJson": "{\r\n \"name\": \"string\",\r\n \"shortName\": \"string\",\r\n \"description\": \"string\",\r\n \"concurrencyStamp\": \"string\",\r\n \"isDeleted\": false,\r\n \"deleterId\": null,\r\n \"deletionTime\": null,\r\n \"lastModificationTime\": null,\r\n \"lastModifierId\": null,\r\n \"creationTime\": \"0001-01-01T00:00:00\",\r\n \"creatorId\": null,\r\n \"id\": \"00000000-0000-0000-0000-000000000000\"\r\n}", + "parameterDescriptions": [ + { + "name": "shortName", + "type": "String" + } + ] + }, + { + "path": "api/blogging/blogs/{id}", + "method": "GET", + "groupName": "Blogs", + "responseType": "Volo.Blogging.Blogs.Dtos.BlogDto", + "responseTypeAsJson": "{\r\n \"name\": \"string\",\r\n \"shortName\": \"string\",\r\n \"description\": \"string\",\r\n \"concurrencyStamp\": \"string\",\r\n \"isDeleted\": false,\r\n \"deleterId\": null,\r\n \"deletionTime\": null,\r\n \"lastModificationTime\": null,\r\n \"lastModifierId\": null,\r\n \"creationTime\": \"0001-01-01T00:00:00\",\r\n \"creatorId\": null,\r\n \"id\": \"00000000-0000-0000-0000-000000000000\"\r\n}", + "parameterDescriptions": [ + { + "name": "id", + "type": "Guid" + } + ] + }, + { + "path": "api/blogging/comments/hierarchical/{postId}", + "method": "GET", + "groupName": "Comments", + "responseType": "System.Collections.Generic.List`1[Volo.Blogging.Comments.Dtos.CommentWithRepliesDto]", + "responseTypeAsJson": "[\r\n {\r\n \"comment\": {\r\n \"repliedCommentId\": null,\r\n \"text\": \"string\",\r\n \"writer\": {\r\n \"tenantId\": null,\r\n \"name\": \"string\",\r\n \"surname\": \"string\",\r\n \"userName\": \"string\",\r\n \"email\": \"string\",\r\n \"emailConfirmed\": false,\r\n \"phoneNumber\": \"string\",\r\n \"phoneNumberConfirmed\": false,\r\n \"webSite\": \"string\",\r\n \"twitter\": \"string\",\r\n \"github\": \"string\",\r\n \"linkedin\": \"string\",\r\n \"company\": \"string\",\r\n \"jobTitle\": \"string\",\r\n \"biography\": \"string\",\r\n \"extraProperties\": {\r\n \"string\": \"object\"\r\n },\r\n \"id\": \"00000000-0000-0000-0000-000000000000\"\r\n },\r\n \"concurrencyStamp\": \"string\",\r\n \"isDeleted\": false,\r\n \"deleterId\": null,\r\n \"deletionTime\": null,\r\n \"lastModificationTime\": null,\r\n \"lastModifierId\": null,\r\n \"creationTime\": \"0001-01-01T00:00:00\",\r\n \"creatorId\": null,\r\n \"id\": \"00000000-0000-0000-0000-000000000000\"\r\n },\r\n \"replies\": [\r\n {\r\n \"repliedCommentId\": null,\r\n \"text\": \"string\",\r\n \"writer\": {\r\n \"tenantId\": null,\r\n \"name\": \"string\",\r\n \"surname\": \"string\",\r\n \"userName\": \"string\",\r\n \"email\": \"string\",\r\n \"emailConfirmed\": false,\r\n \"phoneNumber\": \"string\",\r\n \"phoneNumberConfirmed\": false,\r\n \"webSite\": \"string\",\r\n \"twitter\": \"string\",\r\n \"github\": \"string\",\r\n \"linkedin\": \"string\",\r\n \"company\": \"string\",\r\n \"jobTitle\": \"string\",\r\n \"biography\": \"string\",\r\n \"extraProperties\": {\r\n \"string\": \"object\"\r\n },\r\n \"id\": \"00000000-0000-0000-0000-000000000000\"\r\n },\r\n \"concurrencyStamp\": \"string\",\r\n \"isDeleted\": false,\r\n \"deleterId\": null,\r\n \"deletionTime\": null,\r\n \"lastModificationTime\": null,\r\n \"lastModifierId\": null,\r\n \"creationTime\": \"0001-01-01T00:00:00\",\r\n \"creatorId\": null,\r\n \"id\": \"00000000-0000-0000-0000-000000000000\"\r\n }\r\n ]\r\n }\r\n]", + "parameterDescriptions": [ + { + "name": "postId", + "type": "Guid" + } + ] + }, + { + "path": "api/blogging/comments", + "method": "POST", + "groupName": "Comments", + "responseType": "Volo.Blogging.Comments.Dtos.CommentWithDetailsDto", + "responseTypeAsJson": "{\r\n \"repliedCommentId\": null,\r\n \"text\": \"string\",\r\n \"writer\": {\r\n \"tenantId\": null,\r\n \"name\": \"string\",\r\n \"surname\": \"string\",\r\n \"userName\": \"string\",\r\n \"email\": \"string\",\r\n \"emailConfirmed\": false,\r\n \"phoneNumber\": \"string\",\r\n \"phoneNumberConfirmed\": false,\r\n \"webSite\": \"string\",\r\n \"twitter\": \"string\",\r\n \"github\": \"string\",\r\n \"linkedin\": \"string\",\r\n \"company\": \"string\",\r\n \"jobTitle\": \"string\",\r\n \"biography\": \"string\",\r\n \"extraProperties\": {\r\n \"string\": \"object\"\r\n },\r\n \"id\": \"00000000-0000-0000-0000-000000000000\"\r\n },\r\n \"concurrencyStamp\": \"string\",\r\n \"isDeleted\": false,\r\n \"deleterId\": null,\r\n \"deletionTime\": null,\r\n \"lastModificationTime\": null,\r\n \"lastModifierId\": null,\r\n \"creationTime\": \"0001-01-01T00:00:00\",\r\n \"creatorId\": null,\r\n \"id\": \"00000000-0000-0000-0000-000000000000\"\r\n}", + "parameterDescriptions": [ + { + "name": "input", + "type": "CreateCommentDto" + } + ] + }, + { + "path": "api/blogging/comments/{id}", + "method": "PUT", + "groupName": "Comments", + "responseType": "Volo.Blogging.Comments.Dtos.CommentWithDetailsDto", + "responseTypeAsJson": "{\r\n \"repliedCommentId\": null,\r\n \"text\": \"string\",\r\n \"writer\": {\r\n \"tenantId\": null,\r\n \"name\": \"string\",\r\n \"surname\": \"string\",\r\n \"userName\": \"string\",\r\n \"email\": \"string\",\r\n \"emailConfirmed\": false,\r\n \"phoneNumber\": \"string\",\r\n \"phoneNumberConfirmed\": false,\r\n \"webSite\": \"string\",\r\n \"twitter\": \"string\",\r\n \"github\": \"string\",\r\n \"linkedin\": \"string\",\r\n \"company\": \"string\",\r\n \"jobTitle\": \"string\",\r\n \"biography\": \"string\",\r\n \"extraProperties\": {\r\n \"string\": \"object\"\r\n },\r\n \"id\": \"00000000-0000-0000-0000-000000000000\"\r\n },\r\n \"concurrencyStamp\": \"string\",\r\n \"isDeleted\": false,\r\n \"deleterId\": null,\r\n \"deletionTime\": null,\r\n \"lastModificationTime\": null,\r\n \"lastModifierId\": null,\r\n \"creationTime\": \"0001-01-01T00:00:00\",\r\n \"creatorId\": null,\r\n \"id\": \"00000000-0000-0000-0000-000000000000\"\r\n}", + "parameterDescriptions": [ + { + "name": "id", + "type": "Guid" + }, + { + "name": "input", + "type": "UpdateCommentDto" + } + ] + }, + { + "path": "api/blogging/comments/{id}", + "method": "DELETE", + "groupName": "Comments", + "responseType": "System.Void", + "responseTypeAsJson": "", + "parameterDescriptions": [ + { + "name": "id", + "type": "Guid" + } + ] + }, + { + "path": "api/blogging/posts/{blogId}/all", + "method": "GET", + "groupName": "Posts", + "responseType": "Volo.Abp.Application.Dtos.ListResultDto`1[Volo.Blogging.Posts.PostWithDetailsDto]", + "responseTypeAsJson": "{\r\n \"items\": [\r\n {\r\n \"blogId\": \"00000000-0000-0000-0000-000000000000\",\r\n \"title\": \"string\",\r\n \"coverImage\": \"string\",\r\n \"url\": \"string\",\r\n \"content\": \"string\",\r\n \"description\": \"string\",\r\n \"readCount\": 0,\r\n \"commentCount\": 0,\r\n \"writer\": {\r\n \"tenantId\": null,\r\n \"name\": \"string\",\r\n \"surname\": \"string\",\r\n \"userName\": \"string\",\r\n \"email\": \"string\",\r\n \"emailConfirmed\": false,\r\n \"phoneNumber\": \"string\",\r\n \"phoneNumberConfirmed\": false,\r\n \"webSite\": \"string\",\r\n \"twitter\": \"string\",\r\n \"github\": \"string\",\r\n \"linkedin\": \"string\",\r\n \"company\": \"string\",\r\n \"jobTitle\": \"string\",\r\n \"biography\": \"string\",\r\n \"extraProperties\": {\r\n \"string\": \"object\"\r\n },\r\n \"id\": \"00000000-0000-0000-0000-000000000000\"\r\n },\r\n \"tags\": [\r\n {\r\n \"name\": \"string\",\r\n \"description\": \"string\",\r\n \"usageCount\": 0,\r\n \"isDeleted\": false,\r\n \"deleterId\": null,\r\n \"deletionTime\": null,\r\n \"lastModificationTime\": null,\r\n \"lastModifierId\": null,\r\n \"creationTime\": \"0001-01-01T00:00:00\",\r\n \"creatorId\": null,\r\n \"id\": \"00000000-0000-0000-0000-000000000000\"\r\n }\r\n ],\r\n \"concurrencyStamp\": \"string\",\r\n \"isDeleted\": false,\r\n \"deleterId\": null,\r\n \"deletionTime\": null,\r\n \"lastModificationTime\": null,\r\n \"lastModifierId\": null,\r\n \"creationTime\": \"0001-01-01T00:00:00\",\r\n \"creatorId\": null,\r\n \"id\": \"00000000-0000-0000-0000-000000000000\"\r\n }\r\n ]\r\n}", + "parameterDescriptions": [ + { + "name": "blogId", + "type": "Guid" + }, + { + "name": "tagName", + "type": "String" + } + ] + }, + { + "path": "api/blogging/posts/{blogId}/all/by-time", + "method": "GET", + "groupName": "Posts", + "responseType": "Volo.Abp.Application.Dtos.ListResultDto`1[Volo.Blogging.Posts.PostWithDetailsDto]", + "responseTypeAsJson": "{\r\n \"items\": [\r\n {\r\n \"blogId\": \"00000000-0000-0000-0000-000000000000\",\r\n \"title\": \"string\",\r\n \"coverImage\": \"string\",\r\n \"url\": \"string\",\r\n \"content\": \"string\",\r\n \"description\": \"string\",\r\n \"readCount\": 0,\r\n \"commentCount\": 0,\r\n \"writer\": {\r\n \"tenantId\": null,\r\n \"name\": \"string\",\r\n \"surname\": \"string\",\r\n \"userName\": \"string\",\r\n \"email\": \"string\",\r\n \"emailConfirmed\": false,\r\n \"phoneNumber\": \"string\",\r\n \"phoneNumberConfirmed\": false,\r\n \"webSite\": \"string\",\r\n \"twitter\": \"string\",\r\n \"github\": \"string\",\r\n \"linkedin\": \"string\",\r\n \"company\": \"string\",\r\n \"jobTitle\": \"string\",\r\n \"biography\": \"string\",\r\n \"extraProperties\": {\r\n \"string\": \"object\"\r\n },\r\n \"id\": \"00000000-0000-0000-0000-000000000000\"\r\n },\r\n \"tags\": [\r\n {\r\n \"name\": \"string\",\r\n \"description\": \"string\",\r\n \"usageCount\": 0,\r\n \"isDeleted\": false,\r\n \"deleterId\": null,\r\n \"deletionTime\": null,\r\n \"lastModificationTime\": null,\r\n \"lastModifierId\": null,\r\n \"creationTime\": \"0001-01-01T00:00:00\",\r\n \"creatorId\": null,\r\n \"id\": \"00000000-0000-0000-0000-000000000000\"\r\n }\r\n ],\r\n \"concurrencyStamp\": \"string\",\r\n \"isDeleted\": false,\r\n \"deleterId\": null,\r\n \"deletionTime\": null,\r\n \"lastModificationTime\": null,\r\n \"lastModifierId\": null,\r\n \"creationTime\": \"0001-01-01T00:00:00\",\r\n \"creatorId\": null,\r\n \"id\": \"00000000-0000-0000-0000-000000000000\"\r\n }\r\n ]\r\n}", + "parameterDescriptions": [ + { + "name": "blogId", + "type": "Guid" + } + ] + }, + { + "path": "api/blogging/posts/read", + "method": "GET", + "groupName": "Posts", + "responseType": "Volo.Blogging.Posts.PostWithDetailsDto", + "responseTypeAsJson": "{\r\n \"blogId\": \"00000000-0000-0000-0000-000000000000\",\r\n \"title\": \"string\",\r\n \"coverImage\": \"string\",\r\n \"url\": \"string\",\r\n \"content\": \"string\",\r\n \"description\": \"string\",\r\n \"readCount\": 0,\r\n \"commentCount\": 0,\r\n \"writer\": {\r\n \"tenantId\": null,\r\n \"name\": \"string\",\r\n \"surname\": \"string\",\r\n \"userName\": \"string\",\r\n \"email\": \"string\",\r\n \"emailConfirmed\": false,\r\n \"phoneNumber\": \"string\",\r\n \"phoneNumberConfirmed\": false,\r\n \"webSite\": \"string\",\r\n \"twitter\": \"string\",\r\n \"github\": \"string\",\r\n \"linkedin\": \"string\",\r\n \"company\": \"string\",\r\n \"jobTitle\": \"string\",\r\n \"biography\": \"string\",\r\n \"extraProperties\": {\r\n \"string\": \"object\"\r\n },\r\n \"id\": \"00000000-0000-0000-0000-000000000000\"\r\n },\r\n \"tags\": [\r\n {\r\n \"name\": \"string\",\r\n \"description\": \"string\",\r\n \"usageCount\": 0,\r\n \"isDeleted\": false,\r\n \"deleterId\": null,\r\n \"deletionTime\": null,\r\n \"lastModificationTime\": null,\r\n \"lastModifierId\": null,\r\n \"creationTime\": \"0001-01-01T00:00:00\",\r\n \"creatorId\": null,\r\n \"id\": \"00000000-0000-0000-0000-000000000000\"\r\n }\r\n ],\r\n \"concurrencyStamp\": \"string\",\r\n \"isDeleted\": false,\r\n \"deleterId\": null,\r\n \"deletionTime\": null,\r\n \"lastModificationTime\": null,\r\n \"lastModifierId\": null,\r\n \"creationTime\": \"0001-01-01T00:00:00\",\r\n \"creatorId\": null,\r\n \"id\": \"00000000-0000-0000-0000-000000000000\"\r\n}", + "parameterDescriptions": [ + { + "name": "Url", + "type": "String" + }, + { + "name": "BlogId", + "type": "Guid" + } + ] + }, + { + "path": "api/blogging/posts/{id}", + "method": "GET", + "groupName": "Posts", + "responseType": "Volo.Blogging.Posts.PostWithDetailsDto", + "responseTypeAsJson": "{\r\n \"blogId\": \"00000000-0000-0000-0000-000000000000\",\r\n \"title\": \"string\",\r\n \"coverImage\": \"string\",\r\n \"url\": \"string\",\r\n \"content\": \"string\",\r\n \"description\": \"string\",\r\n \"readCount\": 0,\r\n \"commentCount\": 0,\r\n \"writer\": {\r\n \"tenantId\": null,\r\n \"name\": \"string\",\r\n \"surname\": \"string\",\r\n \"userName\": \"string\",\r\n \"email\": \"string\",\r\n \"emailConfirmed\": false,\r\n \"phoneNumber\": \"string\",\r\n \"phoneNumberConfirmed\": false,\r\n \"webSite\": \"string\",\r\n \"twitter\": \"string\",\r\n \"github\": \"string\",\r\n \"linkedin\": \"string\",\r\n \"company\": \"string\",\r\n \"jobTitle\": \"string\",\r\n \"biography\": \"string\",\r\n \"extraProperties\": {\r\n \"string\": \"object\"\r\n },\r\n \"id\": \"00000000-0000-0000-0000-000000000000\"\r\n },\r\n \"tags\": [\r\n {\r\n \"name\": \"string\",\r\n \"description\": \"string\",\r\n \"usageCount\": 0,\r\n \"isDeleted\": false,\r\n \"deleterId\": null,\r\n \"deletionTime\": null,\r\n \"lastModificationTime\": null,\r\n \"lastModifierId\": null,\r\n \"creationTime\": \"0001-01-01T00:00:00\",\r\n \"creatorId\": null,\r\n \"id\": \"00000000-0000-0000-0000-000000000000\"\r\n }\r\n ],\r\n \"concurrencyStamp\": \"string\",\r\n \"isDeleted\": false,\r\n \"deleterId\": null,\r\n \"deletionTime\": null,\r\n \"lastModificationTime\": null,\r\n \"lastModifierId\": null,\r\n \"creationTime\": \"0001-01-01T00:00:00\",\r\n \"creatorId\": null,\r\n \"id\": \"00000000-0000-0000-0000-000000000000\"\r\n}", + "parameterDescriptions": [ + { + "name": "id", + "type": "Guid" + } + ] + }, + { + "path": "api/blogging/posts", + "method": "POST", + "groupName": "Posts", + "responseType": "Volo.Blogging.Posts.PostWithDetailsDto", + "responseTypeAsJson": "{\r\n \"blogId\": \"00000000-0000-0000-0000-000000000000\",\r\n \"title\": \"string\",\r\n \"coverImage\": \"string\",\r\n \"url\": \"string\",\r\n \"content\": \"string\",\r\n \"description\": \"string\",\r\n \"readCount\": 0,\r\n \"commentCount\": 0,\r\n \"writer\": {\r\n \"tenantId\": null,\r\n \"name\": \"string\",\r\n \"surname\": \"string\",\r\n \"userName\": \"string\",\r\n \"email\": \"string\",\r\n \"emailConfirmed\": false,\r\n \"phoneNumber\": \"string\",\r\n \"phoneNumberConfirmed\": false,\r\n \"webSite\": \"string\",\r\n \"twitter\": \"string\",\r\n \"github\": \"string\",\r\n \"linkedin\": \"string\",\r\n \"company\": \"string\",\r\n \"jobTitle\": \"string\",\r\n \"biography\": \"string\",\r\n \"extraProperties\": {\r\n \"string\": \"object\"\r\n },\r\n \"id\": \"00000000-0000-0000-0000-000000000000\"\r\n },\r\n \"tags\": [\r\n {\r\n \"name\": \"string\",\r\n \"description\": \"string\",\r\n \"usageCount\": 0,\r\n \"isDeleted\": false,\r\n \"deleterId\": null,\r\n \"deletionTime\": null,\r\n \"lastModificationTime\": null,\r\n \"lastModifierId\": null,\r\n \"creationTime\": \"0001-01-01T00:00:00\",\r\n \"creatorId\": null,\r\n \"id\": \"00000000-0000-0000-0000-000000000000\"\r\n }\r\n ],\r\n \"concurrencyStamp\": \"string\",\r\n \"isDeleted\": false,\r\n \"deleterId\": null,\r\n \"deletionTime\": null,\r\n \"lastModificationTime\": null,\r\n \"lastModifierId\": null,\r\n \"creationTime\": \"0001-01-01T00:00:00\",\r\n \"creatorId\": null,\r\n \"id\": \"00000000-0000-0000-0000-000000000000\"\r\n}", + "parameterDescriptions": [ + { + "name": "input", + "type": "CreatePostDto" + } + ] + }, + { + "path": "api/blogging/posts/{id}", + "method": "PUT", + "groupName": "Posts", + "responseType": "Volo.Blogging.Posts.PostWithDetailsDto", + "responseTypeAsJson": "{\r\n \"blogId\": \"00000000-0000-0000-0000-000000000000\",\r\n \"title\": \"string\",\r\n \"coverImage\": \"string\",\r\n \"url\": \"string\",\r\n \"content\": \"string\",\r\n \"description\": \"string\",\r\n \"readCount\": 0,\r\n \"commentCount\": 0,\r\n \"writer\": {\r\n \"tenantId\": null,\r\n \"name\": \"string\",\r\n \"surname\": \"string\",\r\n \"userName\": \"string\",\r\n \"email\": \"string\",\r\n \"emailConfirmed\": false,\r\n \"phoneNumber\": \"string\",\r\n \"phoneNumberConfirmed\": false,\r\n \"webSite\": \"string\",\r\n \"twitter\": \"string\",\r\n \"github\": \"string\",\r\n \"linkedin\": \"string\",\r\n \"company\": \"string\",\r\n \"jobTitle\": \"string\",\r\n \"biography\": \"string\",\r\n \"extraProperties\": {\r\n \"string\": \"object\"\r\n },\r\n \"id\": \"00000000-0000-0000-0000-000000000000\"\r\n },\r\n \"tags\": [\r\n {\r\n \"name\": \"string\",\r\n \"description\": \"string\",\r\n \"usageCount\": 0,\r\n \"isDeleted\": false,\r\n \"deleterId\": null,\r\n \"deletionTime\": null,\r\n \"lastModificationTime\": null,\r\n \"lastModifierId\": null,\r\n \"creationTime\": \"0001-01-01T00:00:00\",\r\n \"creatorId\": null,\r\n \"id\": \"00000000-0000-0000-0000-000000000000\"\r\n }\r\n ],\r\n \"concurrencyStamp\": \"string\",\r\n \"isDeleted\": false,\r\n \"deleterId\": null,\r\n \"deletionTime\": null,\r\n \"lastModificationTime\": null,\r\n \"lastModifierId\": null,\r\n \"creationTime\": \"0001-01-01T00:00:00\",\r\n \"creatorId\": null,\r\n \"id\": \"00000000-0000-0000-0000-000000000000\"\r\n}", + "parameterDescriptions": [ + { + "name": "id", + "type": "Guid" + }, + { + "name": "input", + "type": "UpdatePostDto" + } + ] + }, + { + "path": "api/blogging/posts/user/{userId}", + "method": "GET", + "groupName": "Posts", + "responseType": "System.Collections.Generic.List`1[Volo.Blogging.Posts.PostWithDetailsDto]", + "responseTypeAsJson": "[\r\n {\r\n \"blogId\": \"00000000-0000-0000-0000-000000000000\",\r\n \"title\": \"string\",\r\n \"coverImage\": \"string\",\r\n \"url\": \"string\",\r\n \"content\": \"string\",\r\n \"description\": \"string\",\r\n \"readCount\": 0,\r\n \"commentCount\": 0,\r\n \"writer\": {\r\n \"tenantId\": null,\r\n \"name\": \"string\",\r\n \"surname\": \"string\",\r\n \"userName\": \"string\",\r\n \"email\": \"string\",\r\n \"emailConfirmed\": false,\r\n \"phoneNumber\": \"string\",\r\n \"phoneNumberConfirmed\": false,\r\n \"webSite\": \"string\",\r\n \"twitter\": \"string\",\r\n \"github\": \"string\",\r\n \"linkedin\": \"string\",\r\n \"company\": \"string\",\r\n \"jobTitle\": \"string\",\r\n \"biography\": \"string\",\r\n \"extraProperties\": {\r\n \"string\": \"object\"\r\n },\r\n \"id\": \"00000000-0000-0000-0000-000000000000\"\r\n },\r\n \"tags\": [\r\n {\r\n \"name\": \"string\",\r\n \"description\": \"string\",\r\n \"usageCount\": 0,\r\n \"isDeleted\": false,\r\n \"deleterId\": null,\r\n \"deletionTime\": null,\r\n \"lastModificationTime\": null,\r\n \"lastModifierId\": null,\r\n \"creationTime\": \"0001-01-01T00:00:00\",\r\n \"creatorId\": null,\r\n \"id\": \"00000000-0000-0000-0000-000000000000\"\r\n }\r\n ],\r\n \"concurrencyStamp\": \"string\",\r\n \"isDeleted\": false,\r\n \"deleterId\": null,\r\n \"deletionTime\": null,\r\n \"lastModificationTime\": null,\r\n \"lastModifierId\": null,\r\n \"creationTime\": \"0001-01-01T00:00:00\",\r\n \"creatorId\": null,\r\n \"id\": \"00000000-0000-0000-0000-000000000000\"\r\n }\r\n]", + "parameterDescriptions": [ + { + "name": "userId", + "type": "Guid" + } + ] + }, + { + "path": "api/blogging/posts/{blogId}/latest/{count}", + "method": "GET", + "groupName": "Posts", + "responseType": "System.Collections.Generic.List`1[Volo.Blogging.Posts.PostWithDetailsDto]", + "responseTypeAsJson": "[\r\n {\r\n \"blogId\": \"00000000-0000-0000-0000-000000000000\",\r\n \"title\": \"string\",\r\n \"coverImage\": \"string\",\r\n \"url\": \"string\",\r\n \"content\": \"string\",\r\n \"description\": \"string\",\r\n \"readCount\": 0,\r\n \"commentCount\": 0,\r\n \"writer\": {\r\n \"tenantId\": null,\r\n \"name\": \"string\",\r\n \"surname\": \"string\",\r\n \"userName\": \"string\",\r\n \"email\": \"string\",\r\n \"emailConfirmed\": false,\r\n \"phoneNumber\": \"string\",\r\n \"phoneNumberConfirmed\": false,\r\n \"webSite\": \"string\",\r\n \"twitter\": \"string\",\r\n \"github\": \"string\",\r\n \"linkedin\": \"string\",\r\n \"company\": \"string\",\r\n \"jobTitle\": \"string\",\r\n \"biography\": \"string\",\r\n \"extraProperties\": {\r\n \"string\": \"object\"\r\n },\r\n \"id\": \"00000000-0000-0000-0000-000000000000\"\r\n },\r\n \"tags\": [\r\n {\r\n \"name\": \"string\",\r\n \"description\": \"string\",\r\n \"usageCount\": 0,\r\n \"isDeleted\": false,\r\n \"deleterId\": null,\r\n \"deletionTime\": null,\r\n \"lastModificationTime\": null,\r\n \"lastModifierId\": null,\r\n \"creationTime\": \"0001-01-01T00:00:00\",\r\n \"creatorId\": null,\r\n \"id\": \"00000000-0000-0000-0000-000000000000\"\r\n }\r\n ],\r\n \"concurrencyStamp\": \"string\",\r\n \"isDeleted\": false,\r\n \"deleterId\": null,\r\n \"deletionTime\": null,\r\n \"lastModificationTime\": null,\r\n \"lastModifierId\": null,\r\n \"creationTime\": \"0001-01-01T00:00:00\",\r\n \"creatorId\": null,\r\n \"id\": \"00000000-0000-0000-0000-000000000000\"\r\n }\r\n]", + "parameterDescriptions": [ + { + "name": "blogId", + "type": "Guid" + }, + { + "name": "count", + "type": "Int32" + } + ] + }, + { + "path": "api/blogging/posts/{id}", + "method": "DELETE", + "groupName": "Posts", + "responseType": "System.Void", + "responseTypeAsJson": "", + "parameterDescriptions": [ + { + "name": "id", + "type": "Guid" + } + ] + }, + { + "path": "api/blogging/tags/popular/{blogId}", + "method": "GET", + "groupName": "Tags", + "responseType": "System.Collections.Generic.List`1[Volo.Blogging.Tagging.Dtos.TagDto]", + "responseTypeAsJson": "[\r\n {\r\n \"name\": \"string\",\r\n \"description\": \"string\",\r\n \"usageCount\": 0,\r\n \"isDeleted\": false,\r\n \"deleterId\": null,\r\n \"deletionTime\": null,\r\n \"lastModificationTime\": null,\r\n \"lastModifierId\": null,\r\n \"creationTime\": \"0001-01-01T00:00:00\",\r\n \"creatorId\": null,\r\n \"id\": \"00000000-0000-0000-0000-000000000000\"\r\n }\r\n]", + "parameterDescriptions": [ + { + "name": "blogId", + "type": "Guid" + }, + { + "name": "ResultCount", + "type": "Int32" + }, + { + "name": "MinimumPostCount", + "type": "Nullable" + } + ] + } + ], + "contentType": "httpApi", + "name": "Defined Http Apis", + "summary": null } ] } \ No newline at end of file diff --git a/modules/blogging/src/Volo.Blogging.MongoDB/Volo.Blogging.MongoDB.abppkg.analyze.json b/modules/blogging/src/Volo.Blogging.MongoDB/Volo.Blogging.MongoDB.abppkg.analyze.json index f72236e318..3c45d3118e 100644 --- a/modules/blogging/src/Volo.Blogging.MongoDB/Volo.Blogging.MongoDB.abppkg.analyze.json +++ b/modules/blogging/src/Volo.Blogging.MongoDB/Volo.Blogging.MongoDB.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Blogging.MongoDB", - "hash": "4487b4df01fcd98b0ce2e7d2d11c9ba5", + "hash": "", "contents": [ { "namespace": "Volo.Blogging.MongoDB", @@ -74,33 +74,33 @@ "connectionStringName": "Blogging", "databaseCollections": [ { - "entityFullName": "Volo.Blogging.Blogs.Blog", + "entityFullName": "Volo.Blogging.Users.BlogUser", "contentType": "databaseCollection", - "name": "BlgBlogs", + "name": "Users", "summary": null }, { - "entityFullName": "Volo.Blogging.Comments.Comment", + "entityFullName": "Volo.Blogging.Blogs.Blog", "contentType": "databaseCollection", - "name": "BlgComments", + "name": "Blogs", "summary": null }, { - "entityFullName": "Volo.Blogging.Users.BlogUser", + "entityFullName": "Volo.Blogging.Posts.Post", "contentType": "databaseCollection", - "name": "BlgUsers", + "name": "Posts", "summary": null }, { "entityFullName": "Volo.Blogging.Tagging.Tag", "contentType": "databaseCollection", - "name": "BlgTags", + "name": "Tags", "summary": null }, { - "entityFullName": "Volo.Blogging.Posts.Post", + "entityFullName": "Volo.Blogging.Comments.Comment", "contentType": "databaseCollection", - "name": "BlgPosts", + "name": "Comments", "summary": null } ], diff --git a/modules/blogging/src/Volo.Blogging.Web/Volo.Blogging.Web.abppkg.analyze.json b/modules/blogging/src/Volo.Blogging.Web/Volo.Blogging.Web.abppkg.analyze.json index 27a396bd9e..895ffb1675 100644 --- a/modules/blogging/src/Volo.Blogging.Web/Volo.Blogging.Web.abppkg.analyze.json +++ b/modules/blogging/src/Volo.Blogging.Web/Volo.Blogging.Web.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Blogging.Web", - "hash": "d4c82263439a4a663a6b98ee502d02f4", + "hash": "", "contents": [ { "namespace": "Volo.Blogging", @@ -73,6 +73,42 @@ "contentType": "abpModule", "name": "BloggingWebModule", "summary": null + }, + { + "namespace": "Volo.Blogging.Pages.Blogs", + "contentType": "webPage", + "name": "IndexModel", + "summary": null + }, + { + "namespace": "Volo.Blogging.Pages.Blogs.Posts", + "contentType": "webPage", + "name": "DetailModel", + "summary": null + }, + { + "namespace": "Volo.Blogging.Pages.Blogs.Posts", + "contentType": "webPage", + "name": "EditModel", + "summary": null + }, + { + "namespace": "Volo.Blogging.Pages.Blogs.Posts", + "contentType": "webPage", + "name": "IndexModel", + "summary": null + }, + { + "namespace": "Volo.Blogging.Pages.Blogs.Posts", + "contentType": "webPage", + "name": "NewModel", + "summary": null + }, + { + "namespace": "Volo.Blogging.Pages.Blogs.Members", + "contentType": "webPage", + "name": "IndexModel", + "summary": null } ] } \ No newline at end of file diff --git a/modules/client-simulation/demo/Volo.ClientSimulation.Demo/package.json b/modules/client-simulation/demo/Volo.ClientSimulation.Demo/package.json index b1b1bb9a3b..ebbec7b446 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": "~8.2.2" + "@abp/aspnetcore.mvc.ui.theme.basic": "~8.2.3" } } diff --git a/modules/client-simulation/demo/Volo.ClientSimulation.Demo/yarn.lock b/modules/client-simulation/demo/Volo.ClientSimulation.Demo/yarn.lock index 9188715ca6..f36d2d8e77 100644 --- a/modules/client-simulation/demo/Volo.ClientSimulation.Demo/yarn.lock +++ b/modules/client-simulation/demo/Volo.ClientSimulation.Demo/yarn.lock @@ -2,194 +2,194 @@ # yarn lockfile v1 -"@abp/aspnetcore.mvc.ui.theme.basic@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-8.2.2.tgz#0b18f3eee58b4a115e861a3732514a02d613d301" - integrity sha512-fFytBe1n+DxK7rVPnO8zqZWixBTDfdSrFUyg+qgpe+/Q10ec7x9j5noB+aiF73OZelJ9LGKz2gl+MS66Erpy2A== - dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~8.2.2" - -"@abp/aspnetcore.mvc.ui.theme.shared@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-8.2.2.tgz#419da4bac71ceb7b1afbd8b740b0675f51de6575" - integrity sha512-tYPbEqoENmxzN9zaBAF8/ssNk8uuVTkKpi663612H1b85ik3Tbm4H3gamKbSR1TxMwIJZxVyizxDMDhLu6ff3w== - dependencies: - "@abp/aspnetcore.mvc.ui" "~8.2.2" - "@abp/bootstrap" "~8.2.2" - "@abp/bootstrap-datepicker" "~8.2.2" - "@abp/bootstrap-daterangepicker" "~8.2.2" - "@abp/datatables.net-bs5" "~8.2.2" - "@abp/font-awesome" "~8.2.2" - "@abp/jquery-form" "~8.2.2" - "@abp/jquery-validation-unobtrusive" "~8.2.2" - "@abp/lodash" "~8.2.2" - "@abp/luxon" "~8.2.2" - "@abp/malihu-custom-scrollbar-plugin" "~8.2.2" - "@abp/moment" "~8.2.2" - "@abp/select2" "~8.2.2" - "@abp/sweetalert2" "~8.2.2" - "@abp/timeago" "~8.2.2" - "@abp/toastr" "~8.2.2" - -"@abp/aspnetcore.mvc.ui@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-8.2.2.tgz#53de1c58c14a98f15f408c9a404e5052cc28c966" - integrity sha512-XjduoVC/2nrlo7R77cTgvDQGZK0fqATx1VaHPHbQJLKvjZXS7rIU6Q0Eye+XcnGnw4udcq3luAorqI96JFkBiQ== +"@abp/aspnetcore.mvc.ui.theme.basic@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-8.2.3.tgz#4456eef32942a1064543f46b9b22fdd941ec209d" + integrity sha512-CmJ7Jp5guO/lCXb9IjrhZ0jpnlbL0d3k/7w6gp/jGhFZ5w7gTgI+ZOtr4jzQnQRWF+ZwaVhsgtfBG9PdNl63QA== + dependencies: + "@abp/aspnetcore.mvc.ui.theme.shared" "~8.2.3" + +"@abp/aspnetcore.mvc.ui.theme.shared@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-8.2.3.tgz#b1a795a947cf710730ddeec4684e706cd0d8b853" + integrity sha512-UDRzWXFUL1kHlrhzgjXwo+UxFwkthyQj2agk889mdt4doZ4NGbHKmgdHNrtt1PIOM8VOcQNubBx5VePffuMcYA== + dependencies: + "@abp/aspnetcore.mvc.ui" "~8.2.3" + "@abp/bootstrap" "~8.2.3" + "@abp/bootstrap-datepicker" "~8.2.3" + "@abp/bootstrap-daterangepicker" "~8.2.3" + "@abp/datatables.net-bs5" "~8.2.3" + "@abp/font-awesome" "~8.2.3" + "@abp/jquery-form" "~8.2.3" + "@abp/jquery-validation-unobtrusive" "~8.2.3" + "@abp/lodash" "~8.2.3" + "@abp/luxon" "~8.2.3" + "@abp/malihu-custom-scrollbar-plugin" "~8.2.3" + "@abp/moment" "~8.2.3" + "@abp/select2" "~8.2.3" + "@abp/sweetalert2" "~8.2.3" + "@abp/timeago" "~8.2.3" + "@abp/toastr" "~8.2.3" + +"@abp/aspnetcore.mvc.ui@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-8.2.3.tgz#02e20c42b198bf6bb13e313b4a4b435f17dc9ddd" + integrity sha512-414cAonBhJDZmlEat4gY1Qaf1npgJjYj/re9O0Rk/FdW2vO8Qt56LozGIsbvVY4RjMsQwpwkkgH4RWlIKm3q8w== dependencies: ansi-colors "^4.1.1" -"@abp/bootstrap-datepicker@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-8.2.2.tgz#a14ff40f5bc29e9ad50ea68391f1238ab86f4d1b" - integrity sha512-nqDfEkbFj20ULJap5tsEThmzIUssfIhV8sqBitd9xKnCmoGpbywp/SZgB2hHNEqb3zIJaewNS9P11PoxqRpdBA== +"@abp/bootstrap-datepicker@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-8.2.3.tgz#ceec259251a692d25daae9263b54a3142b007f23" + integrity sha512-o3uZtuw/NKJTCKf5tK5U7Qii+9PgJGWIjLkqb7mXGftIMdqOaJ+QHZe+J9XaO4of8l2HtGkXp+fuQGVJBTlFAg== dependencies: bootstrap-datepicker "^1.9.0" -"@abp/bootstrap-daterangepicker@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-8.2.2.tgz#bff1cf71bce370ae0e4f3c04b9eee4221604959b" - integrity sha512-M0RbUHN52R7ZAyudhlQ6zWAbMmZ88FVR9EPP2dovfKLKfOUGWQiww2QA3a5gvwo/FBObC95XYfpVg72IQgr5ww== +"@abp/bootstrap-daterangepicker@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-8.2.3.tgz#b33117eb5dfcdbea9cb5212acfecd4e040ce7c2d" + integrity sha512-UR1TXFStbvD54wb6vEVK3FVHYtgugLBdDg4Xyh+aNe2sUTm+kfXh4+1Xm+3R1SV3cWvRT57Sy1bc306c6CQ7Zg== dependencies: bootstrap-daterangepicker "^3.1.0" -"@abp/bootstrap@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-8.2.2.tgz#78db0e4f54dd4b09462d386df83e451506717af6" - integrity sha512-A6hdNB2+Uokm5CniB6+qxR7Q2dyRwMLv2ct0v6PxOT1M+/Z2+oCzFDHLYKnmbcx5pg+1MmvnNC+clQZELDxjyw== +"@abp/bootstrap@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-8.2.3.tgz#462c4a5712d6d0baee345dc318fc5463527cbc21" + integrity sha512-jThgI5nlP5A/cKLUoNgRA5ldHz5xNoGkD+V0Z/gScbeAE8Q8eu7Q5P82PLF8B8cgKjOqJXb2L5kbdNYFdqIOwg== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" bootstrap "^5.1.3" -"@abp/core@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-8.2.2.tgz#b4905fa539272bee26f5f95ceb2224b48cfac8ab" - integrity sha512-YKbT92+T9Zs0IvvIPJrMcBUjwR5u6U6f1KegRcRR79b43ZckIrQbqftjyFLF7YSPuJlVCHoO0YhU2Q1EagiFDg== +"@abp/core@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-8.2.3.tgz#1474f8e24cc8707bd909e1cd49230cdaa54c447e" + integrity sha512-mluL7NHWRxvjwHHGd3kOWQg0Tnmt4o2ih/KfdDJl7z4lpy386yL+UutkE3NNhgbEGWDt1hnS5rKFZabhaahwWg== dependencies: - "@abp/utils" "~8.2.2" + "@abp/utils" "~8.2.3" -"@abp/datatables.net-bs5@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-8.2.2.tgz#c314a615cf98cf0fdb6a97ffea3a42d0b050ccd5" - integrity sha512-dkb0wHdZ93mLSwmHbJ3hMKBm0ZFA9jpLxxWf7u+c7sBU+McACRdFHyl0x6dtinspDgo5GaPHGqmbsVx5S7eM2w== +"@abp/datatables.net-bs5@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-8.2.3.tgz#8e80767d7677ebf69a56248039ef5604499bbc30" + integrity sha512-XTjo15yM/nJiFfRtTMnfOJNh6FX+Vmmf5Kq5aG5XjUcp1IepEAgiNNOSmh+zRhUt4BDZ4RWcfSSGNbh0icUIOg== dependencies: - "@abp/datatables.net" "~8.2.2" + "@abp/datatables.net" "~8.2.3" datatables.net-bs5 "^1.11.4" -"@abp/datatables.net@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-8.2.2.tgz#1627836a2ee7efe1d470bdc32ec437ed86996fc8" - integrity sha512-hPAyx90kI4s+LlUsN6GfLWFEGe9JXExgqSzFUwkOqi+WS+kGWvPElUXfS06VaKiu/h/H9SVl+X+iajd3L9Zr9g== +"@abp/datatables.net@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-8.2.3.tgz#e38567679720546d42b895d9a464728ea3730292" + integrity sha512-CT18SqBuY25UmjNbiSbI9eqvbPNZZm+yYsZoasSUv3JOpO1oPfclgtZV5FKeBQQvM5Vc0BhRs7KMKF2F0pwszA== dependencies: - "@abp/jquery" "~8.2.2" + "@abp/jquery" "~8.2.3" datatables.net "^1.11.4" -"@abp/font-awesome@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-8.2.2.tgz#924ce3b78a902ef844901d824d8eb616cbc32ba8" - integrity sha512-yCn94hjowg42hTvyf3xJu7kOCMWfh5Qw4D8PbiaF3WwP1kbpC2QCeZ/Rh9Oltsml34rkhMKPTzLzZqki25Q5QQ== +"@abp/font-awesome@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-8.2.3.tgz#92d7645c94cda07becb8e2ea23e7769ec55c43b1" + integrity sha512-OLQRBuPHtPyM5IHhIJwsbkE8idmu/DDAIm92kOa97p0r0Hx7epnKx+Yrwz23FuRH2wYlmYJqDmwj1VTK90gxYA== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" "@fortawesome/fontawesome-free" "^6.5.1" -"@abp/jquery-form@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-8.2.2.tgz#aad534f5b4f4346ac97249040af663e70ecbd03e" - integrity sha512-QueETCaVq6g8b7c0jIepbKZKS2SO/aCZJy/uRc/lPumr2Hs96aZvHQGIAZopCQKPfF9mLp+Sc2QEN/zdt8QiNA== +"@abp/jquery-form@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-8.2.3.tgz#a8c593e6afbbcff5250657f052fc9912cdf352ac" + integrity sha512-AhkNUdyXE/q7hsra+1xj8W/g7lkIgR9YXrr0RgddPW+dqYqVvbYdFcPliHaSsl+kzPHSRx7eez8AjQSZlReIjg== dependencies: - "@abp/jquery" "~8.2.2" + "@abp/jquery" "~8.2.3" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-8.2.2.tgz#7396dd6a62cdf0796d967b167da5cc91974a9c5e" - integrity sha512-dH0ax7Lxaf+MeZC0z80IPHyXocuA26lzHtwFx/g4NIxxV1gKL8/wI+rAX1ulloSdqEA8kN6rlgOZMqiG2kNWcw== +"@abp/jquery-validation-unobtrusive@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-8.2.3.tgz#d21cbc1694b68f6377134e4e535d19e2cda0fb8d" + integrity sha512-2Ilrveqsj5jorZ2N75zLlHO8+NGRmLecRWIDZZmuyCXVF/LyyceaNBhkdiV+Ofcts387TVkQkjkoArV10Uu+Jg== dependencies: - "@abp/jquery-validation" "~8.2.2" + "@abp/jquery-validation" "~8.2.3" jquery-validation-unobtrusive "^3.2.12" -"@abp/jquery-validation@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-8.2.2.tgz#25ac2fb35aa8f60ba82116ef429996e7ae8518bb" - integrity sha512-WbvobzuEKmnFdCK2Bic7YNhbuauN1mIzgrnd8Ap0nLAxpwsVYkUBwKHoi7jyYv+Udvl39VjYFeciul9rZYI2pg== +"@abp/jquery-validation@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-8.2.3.tgz#642b7f56c1da5469443f864f04eb09cb0bf75bb4" + integrity sha512-qbML5oyoq9ltq212qD8C7jVOqNwTdvyRzTu3SsN15AXecapZxO/BPjhCgLb99OK4zT7hZaC8R+H0CDBa3O5pvg== dependencies: - "@abp/jquery" "~8.2.2" + "@abp/jquery" "~8.2.3" jquery-validation "^1.19.3" -"@abp/jquery@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-8.2.2.tgz#2496431ed11c5e2410e0efaa34404ac760a064ff" - integrity sha512-2ItXN6O45NIpSK/D8wUu+xVnrkxhc79Pce/yYMzFzI7QGYaKvpaP+tVWQQmKEa7RCNCyPS57AxuDtNqI4LSqDQ== +"@abp/jquery@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-8.2.3.tgz#e73d1df860276ae2a081c6f945f586720a71781d" + integrity sha512-SDOnVUJo0g3tuA40Z2Nme8yI1nTCwp0Mh2aAf3L3W+F8lzV3OQS8mUmpektxhPsFen0DufSvilOC+aI6/Jx5lQ== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" jquery "~3.6.0" -"@abp/lodash@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-8.2.2.tgz#a12ed0018f831c0f763da5c6a09d07494acf01ed" - integrity sha512-X+Y3CBMjNgeK/Y47MPMF4sH8PRF0TP+YpjvZ9lbGVSxiQPsNdrYKseZ1gp+AnDBHvj+Oxb7s/aRVZ1pbDJpXiQ== +"@abp/lodash@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-8.2.3.tgz#e78ef9e681369af51b6c36a0a450884c4ee5677a" + integrity sha512-47YoHS0CrH+PiQ8eF/ASYodGH+foBRBJVkDmRgZ1vegs10CJukBYgAutPlNMC2onlEF1jLYJ40ZKsHd6TrFQkA== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" lodash "^4.17.21" -"@abp/luxon@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-8.2.2.tgz#76026e1ae79601cc322cda458ac1f2b2cb76190a" - integrity sha512-I08NgiUJwCfNvwOZNYjwB/+2bUwulU3urqKIIB9Mg6PGK2hohsE8k2CMEijA+T25YYO32xgXevOfOq5YU2NCTw== +"@abp/luxon@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-8.2.3.tgz#445d763360b29a7591ab31898ce522e61be9d97e" + integrity sha512-pT+oO4znadhSleuH3x6n1nEgOzfVl0aHurt4F+wnJHyP7SdC2+RjZOYJUkuRIaZzflG4699Qq0UgAW6GfpuUgg== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" luxon "^2.3.0" -"@abp/malihu-custom-scrollbar-plugin@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-8.2.2.tgz#53405af2869fde990962914f24228a9fa65bab2f" - integrity sha512-/6g+Qm/5CbCzVgohEH8C72smIN4Lw/uL/KJbP7uEBVAXfKqY6vGA2VhrKNvIiBPfktIzZCHrcKsHwysMPtOS2Q== +"@abp/malihu-custom-scrollbar-plugin@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-8.2.3.tgz#7018c4ab65b78512bf5ea8f542fb0c7119a39e0b" + integrity sha512-CCc0iOaulmssuUL7RsAApRzYD+SXAPbqz5iod6yuyx3Y5Vaz4ik+2/cG7XZgwcgsmctJYZl3IxZ/ijnZXLgHUw== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/moment@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-8.2.2.tgz#1895904212fde6dc1793611940a9f8ec95b2c45f" - integrity sha512-VhhCOzVpapvFOn1gzQIcXB/RMyRKcZOlVLGLTqosg14woPSFm0+0utLHkPOLihWbUSQqDRYKvC2cPbNC6CknKg== +"@abp/moment@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-8.2.3.tgz#126039218e6068eca4279eae1eb5375207780931" + integrity sha512-nV11P1KqX8xPmb/bs3yYbFPz7ZOXWnZPKd4Z2k0JYaFTS2C07twgS0uQQHwW6iP8DrS1QBBAyLYBuM3ctgB0dg== dependencies: moment "^2.9.0" -"@abp/select2@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-8.2.2.tgz#0dc011b838824598dc0a716e55b597aca62712dc" - integrity sha512-zTgtOl2iWihbGja3l8IIi+PqepYNk6O7fUcf6C9cdnBM4IrZSnJqw3sQDr9DqIoEzgdC6izVQzPJJEAi5CZ8Xg== +"@abp/select2@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-8.2.3.tgz#fc92d19ba22cbef5df9b8b2f85b4d21d3139883f" + integrity sha512-/MEJkSuM5+N5OIBLbrQUARUV++NpH9pVq4+btYhghDQDtHYrMHKU41QsginTFKfqBZ4f+OYV/HPnOuj7DJxOBw== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" select2 "^4.0.13" -"@abp/sweetalert2@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-8.2.2.tgz#1c75ec9ef1df2eec6304368667052d8ff9c9e795" - integrity sha512-yNgVxJ6E/cEtc8DYn00BtF9XFLShlZRsAnsipiP74YDvQKWUQSnwi70QoHEYDk2tJ+RsXqtZudvrKv8TyH/ijQ== +"@abp/sweetalert2@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-8.2.3.tgz#a82d674e262e9db89bc219ac350cae8ef17d7669" + integrity sha512-ap8vOgkKbmhAmDfVmEJPyVbIzA3V3mi9SvP/OLaNYEaMG0AppYf3iiSvC+6TA+qAFQuF5fI1oKUcsiE68uQGjw== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" sweetalert2 "^11.3.6" -"@abp/timeago@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-8.2.2.tgz#8af9558d325b2f2f9d9c5b1f90ac9eaf5531429b" - integrity sha512-ILdMeCTDNvmVOSm8Xc9ppL1xI1NoDzLbUCUojI7mvEFCE8sw3QGiFGhW6W7kYcoD7sRkxFl1Jn5V/urpAiQwaQ== +"@abp/timeago@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-8.2.3.tgz#dede68da0b5e252a573b0a1c5a9e4c831bc3c820" + integrity sha512-AbYf35a5M4QMAFK3aV6JE7QHR3GzpOX1zsun39i+97ZrNZf6do/eIgDx6dolTlSb0AsHf8qCrf7T6o1kIaXQ2w== dependencies: - "@abp/jquery" "~8.2.2" + "@abp/jquery" "~8.2.3" timeago "^1.6.7" -"@abp/toastr@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-8.2.2.tgz#a59d5b29e43698dbb614792bfd51185453859a7f" - integrity sha512-I4iiXV/SSXiD4UGM5oVsg6m6p4XmuxvqWmjOLSyoUfJQMC378mzNX0Ec9hYIY42C+GS2NalKtoaaYzBfcEtwoQ== +"@abp/toastr@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-8.2.3.tgz#77767666d578c05f039e84178c428370f6f10802" + integrity sha512-V1H0Efik/kGsRuTNPl//FsoH/8VU58S1K4GQ9k2V1bi8INaC/kU//I9frwOJsXd55imvsbmzh4XzrJ574eU84w== dependencies: - "@abp/jquery" "~8.2.2" + "@abp/jquery" "~8.2.3" toastr "^2.1.4" -"@abp/utils@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-8.2.2.tgz#84035d36e968c8ecdeee3c7617aa45bfeb3f6afd" - integrity sha512-70hmgTd7N63AnanzZYUWpobckhPzplBjlRmMhIi+9WZLQfxWpM/EN6l+qQndjAMMvgFl/vW03BUJh1fL9kGynA== +"@abp/utils@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-8.2.3.tgz#05e3d419ee9a6228f7ed4f86e8fd03f3ce57ed27" + integrity sha512-WMs/okBxGitkGRdsikByyJLFXRSD/DPfBWZdDhU4+TvcQmnTqog9S75kZ8CUpUe/wwDHYsY51ef6N6jOfkGTFQ== dependencies: just-compare "^2.3.0" diff --git a/modules/client-simulation/src/Volo.ClientSimulation.Web/Volo.ClientSimulation.Web.abppkg.analyze.json b/modules/client-simulation/src/Volo.ClientSimulation.Web/Volo.ClientSimulation.Web.abppkg.analyze.json index 907c063ea6..e0da5e658e 100644 --- a/modules/client-simulation/src/Volo.ClientSimulation.Web/Volo.ClientSimulation.Web.abppkg.analyze.json +++ b/modules/client-simulation/src/Volo.ClientSimulation.Web/Volo.ClientSimulation.Web.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.ClientSimulation.Web", - "hash": "219a88f8096628953238e9590f6a5e56", + "hash": "", "contents": [ { "namespace": "Volo.ClientSimulation", diff --git a/modules/cms-kit/angular/package.json b/modules/cms-kit/angular/package.json index 80b1d4a302..eda7c69abc 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": "~8.2.2", - "@abp/ng.identity": "~8.2.2", - "@abp/ng.setting-management": "~8.2.2", - "@abp/ng.tenant-management": "~8.2.2", - "@abp/ng.theme.basic": "~8.2.2", + "@abp/ng.account": "~8.2.3", + "@abp/ng.identity": "~8.2.3", + "@abp/ng.setting-management": "~8.2.3", + "@abp/ng.tenant-management": "~8.2.3", + "@abp/ng.theme.basic": "~8.2.3", "@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 86d97c4783..c296473075 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": ">=8.2.2", - "@abp/ng.theme.shared": ">=8.2.2" + "@abp/ng.core": ">=8.2.3", + "@abp/ng.theme.shared": ">=8.2.3" }, "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 fc4e098ad5..135d6777aa 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": "~8.2.2" + "@abp/aspnetcore.mvc.ui.theme.basic": "~8.2.3" } } diff --git a/modules/cms-kit/host/Volo.CmsKit.IdentityServer/yarn.lock b/modules/cms-kit/host/Volo.CmsKit.IdentityServer/yarn.lock index 9188715ca6..f36d2d8e77 100644 --- a/modules/cms-kit/host/Volo.CmsKit.IdentityServer/yarn.lock +++ b/modules/cms-kit/host/Volo.CmsKit.IdentityServer/yarn.lock @@ -2,194 +2,194 @@ # yarn lockfile v1 -"@abp/aspnetcore.mvc.ui.theme.basic@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-8.2.2.tgz#0b18f3eee58b4a115e861a3732514a02d613d301" - integrity sha512-fFytBe1n+DxK7rVPnO8zqZWixBTDfdSrFUyg+qgpe+/Q10ec7x9j5noB+aiF73OZelJ9LGKz2gl+MS66Erpy2A== - dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~8.2.2" - -"@abp/aspnetcore.mvc.ui.theme.shared@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-8.2.2.tgz#419da4bac71ceb7b1afbd8b740b0675f51de6575" - integrity sha512-tYPbEqoENmxzN9zaBAF8/ssNk8uuVTkKpi663612H1b85ik3Tbm4H3gamKbSR1TxMwIJZxVyizxDMDhLu6ff3w== - dependencies: - "@abp/aspnetcore.mvc.ui" "~8.2.2" - "@abp/bootstrap" "~8.2.2" - "@abp/bootstrap-datepicker" "~8.2.2" - "@abp/bootstrap-daterangepicker" "~8.2.2" - "@abp/datatables.net-bs5" "~8.2.2" - "@abp/font-awesome" "~8.2.2" - "@abp/jquery-form" "~8.2.2" - "@abp/jquery-validation-unobtrusive" "~8.2.2" - "@abp/lodash" "~8.2.2" - "@abp/luxon" "~8.2.2" - "@abp/malihu-custom-scrollbar-plugin" "~8.2.2" - "@abp/moment" "~8.2.2" - "@abp/select2" "~8.2.2" - "@abp/sweetalert2" "~8.2.2" - "@abp/timeago" "~8.2.2" - "@abp/toastr" "~8.2.2" - -"@abp/aspnetcore.mvc.ui@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-8.2.2.tgz#53de1c58c14a98f15f408c9a404e5052cc28c966" - integrity sha512-XjduoVC/2nrlo7R77cTgvDQGZK0fqATx1VaHPHbQJLKvjZXS7rIU6Q0Eye+XcnGnw4udcq3luAorqI96JFkBiQ== +"@abp/aspnetcore.mvc.ui.theme.basic@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-8.2.3.tgz#4456eef32942a1064543f46b9b22fdd941ec209d" + integrity sha512-CmJ7Jp5guO/lCXb9IjrhZ0jpnlbL0d3k/7w6gp/jGhFZ5w7gTgI+ZOtr4jzQnQRWF+ZwaVhsgtfBG9PdNl63QA== + dependencies: + "@abp/aspnetcore.mvc.ui.theme.shared" "~8.2.3" + +"@abp/aspnetcore.mvc.ui.theme.shared@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-8.2.3.tgz#b1a795a947cf710730ddeec4684e706cd0d8b853" + integrity sha512-UDRzWXFUL1kHlrhzgjXwo+UxFwkthyQj2agk889mdt4doZ4NGbHKmgdHNrtt1PIOM8VOcQNubBx5VePffuMcYA== + dependencies: + "@abp/aspnetcore.mvc.ui" "~8.2.3" + "@abp/bootstrap" "~8.2.3" + "@abp/bootstrap-datepicker" "~8.2.3" + "@abp/bootstrap-daterangepicker" "~8.2.3" + "@abp/datatables.net-bs5" "~8.2.3" + "@abp/font-awesome" "~8.2.3" + "@abp/jquery-form" "~8.2.3" + "@abp/jquery-validation-unobtrusive" "~8.2.3" + "@abp/lodash" "~8.2.3" + "@abp/luxon" "~8.2.3" + "@abp/malihu-custom-scrollbar-plugin" "~8.2.3" + "@abp/moment" "~8.2.3" + "@abp/select2" "~8.2.3" + "@abp/sweetalert2" "~8.2.3" + "@abp/timeago" "~8.2.3" + "@abp/toastr" "~8.2.3" + +"@abp/aspnetcore.mvc.ui@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-8.2.3.tgz#02e20c42b198bf6bb13e313b4a4b435f17dc9ddd" + integrity sha512-414cAonBhJDZmlEat4gY1Qaf1npgJjYj/re9O0Rk/FdW2vO8Qt56LozGIsbvVY4RjMsQwpwkkgH4RWlIKm3q8w== dependencies: ansi-colors "^4.1.1" -"@abp/bootstrap-datepicker@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-8.2.2.tgz#a14ff40f5bc29e9ad50ea68391f1238ab86f4d1b" - integrity sha512-nqDfEkbFj20ULJap5tsEThmzIUssfIhV8sqBitd9xKnCmoGpbywp/SZgB2hHNEqb3zIJaewNS9P11PoxqRpdBA== +"@abp/bootstrap-datepicker@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-8.2.3.tgz#ceec259251a692d25daae9263b54a3142b007f23" + integrity sha512-o3uZtuw/NKJTCKf5tK5U7Qii+9PgJGWIjLkqb7mXGftIMdqOaJ+QHZe+J9XaO4of8l2HtGkXp+fuQGVJBTlFAg== dependencies: bootstrap-datepicker "^1.9.0" -"@abp/bootstrap-daterangepicker@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-8.2.2.tgz#bff1cf71bce370ae0e4f3c04b9eee4221604959b" - integrity sha512-M0RbUHN52R7ZAyudhlQ6zWAbMmZ88FVR9EPP2dovfKLKfOUGWQiww2QA3a5gvwo/FBObC95XYfpVg72IQgr5ww== +"@abp/bootstrap-daterangepicker@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-8.2.3.tgz#b33117eb5dfcdbea9cb5212acfecd4e040ce7c2d" + integrity sha512-UR1TXFStbvD54wb6vEVK3FVHYtgugLBdDg4Xyh+aNe2sUTm+kfXh4+1Xm+3R1SV3cWvRT57Sy1bc306c6CQ7Zg== dependencies: bootstrap-daterangepicker "^3.1.0" -"@abp/bootstrap@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-8.2.2.tgz#78db0e4f54dd4b09462d386df83e451506717af6" - integrity sha512-A6hdNB2+Uokm5CniB6+qxR7Q2dyRwMLv2ct0v6PxOT1M+/Z2+oCzFDHLYKnmbcx5pg+1MmvnNC+clQZELDxjyw== +"@abp/bootstrap@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-8.2.3.tgz#462c4a5712d6d0baee345dc318fc5463527cbc21" + integrity sha512-jThgI5nlP5A/cKLUoNgRA5ldHz5xNoGkD+V0Z/gScbeAE8Q8eu7Q5P82PLF8B8cgKjOqJXb2L5kbdNYFdqIOwg== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" bootstrap "^5.1.3" -"@abp/core@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-8.2.2.tgz#b4905fa539272bee26f5f95ceb2224b48cfac8ab" - integrity sha512-YKbT92+T9Zs0IvvIPJrMcBUjwR5u6U6f1KegRcRR79b43ZckIrQbqftjyFLF7YSPuJlVCHoO0YhU2Q1EagiFDg== +"@abp/core@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-8.2.3.tgz#1474f8e24cc8707bd909e1cd49230cdaa54c447e" + integrity sha512-mluL7NHWRxvjwHHGd3kOWQg0Tnmt4o2ih/KfdDJl7z4lpy386yL+UutkE3NNhgbEGWDt1hnS5rKFZabhaahwWg== dependencies: - "@abp/utils" "~8.2.2" + "@abp/utils" "~8.2.3" -"@abp/datatables.net-bs5@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-8.2.2.tgz#c314a615cf98cf0fdb6a97ffea3a42d0b050ccd5" - integrity sha512-dkb0wHdZ93mLSwmHbJ3hMKBm0ZFA9jpLxxWf7u+c7sBU+McACRdFHyl0x6dtinspDgo5GaPHGqmbsVx5S7eM2w== +"@abp/datatables.net-bs5@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-8.2.3.tgz#8e80767d7677ebf69a56248039ef5604499bbc30" + integrity sha512-XTjo15yM/nJiFfRtTMnfOJNh6FX+Vmmf5Kq5aG5XjUcp1IepEAgiNNOSmh+zRhUt4BDZ4RWcfSSGNbh0icUIOg== dependencies: - "@abp/datatables.net" "~8.2.2" + "@abp/datatables.net" "~8.2.3" datatables.net-bs5 "^1.11.4" -"@abp/datatables.net@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-8.2.2.tgz#1627836a2ee7efe1d470bdc32ec437ed86996fc8" - integrity sha512-hPAyx90kI4s+LlUsN6GfLWFEGe9JXExgqSzFUwkOqi+WS+kGWvPElUXfS06VaKiu/h/H9SVl+X+iajd3L9Zr9g== +"@abp/datatables.net@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-8.2.3.tgz#e38567679720546d42b895d9a464728ea3730292" + integrity sha512-CT18SqBuY25UmjNbiSbI9eqvbPNZZm+yYsZoasSUv3JOpO1oPfclgtZV5FKeBQQvM5Vc0BhRs7KMKF2F0pwszA== dependencies: - "@abp/jquery" "~8.2.2" + "@abp/jquery" "~8.2.3" datatables.net "^1.11.4" -"@abp/font-awesome@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-8.2.2.tgz#924ce3b78a902ef844901d824d8eb616cbc32ba8" - integrity sha512-yCn94hjowg42hTvyf3xJu7kOCMWfh5Qw4D8PbiaF3WwP1kbpC2QCeZ/Rh9Oltsml34rkhMKPTzLzZqki25Q5QQ== +"@abp/font-awesome@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-8.2.3.tgz#92d7645c94cda07becb8e2ea23e7769ec55c43b1" + integrity sha512-OLQRBuPHtPyM5IHhIJwsbkE8idmu/DDAIm92kOa97p0r0Hx7epnKx+Yrwz23FuRH2wYlmYJqDmwj1VTK90gxYA== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" "@fortawesome/fontawesome-free" "^6.5.1" -"@abp/jquery-form@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-8.2.2.tgz#aad534f5b4f4346ac97249040af663e70ecbd03e" - integrity sha512-QueETCaVq6g8b7c0jIepbKZKS2SO/aCZJy/uRc/lPumr2Hs96aZvHQGIAZopCQKPfF9mLp+Sc2QEN/zdt8QiNA== +"@abp/jquery-form@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-8.2.3.tgz#a8c593e6afbbcff5250657f052fc9912cdf352ac" + integrity sha512-AhkNUdyXE/q7hsra+1xj8W/g7lkIgR9YXrr0RgddPW+dqYqVvbYdFcPliHaSsl+kzPHSRx7eez8AjQSZlReIjg== dependencies: - "@abp/jquery" "~8.2.2" + "@abp/jquery" "~8.2.3" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-8.2.2.tgz#7396dd6a62cdf0796d967b167da5cc91974a9c5e" - integrity sha512-dH0ax7Lxaf+MeZC0z80IPHyXocuA26lzHtwFx/g4NIxxV1gKL8/wI+rAX1ulloSdqEA8kN6rlgOZMqiG2kNWcw== +"@abp/jquery-validation-unobtrusive@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-8.2.3.tgz#d21cbc1694b68f6377134e4e535d19e2cda0fb8d" + integrity sha512-2Ilrveqsj5jorZ2N75zLlHO8+NGRmLecRWIDZZmuyCXVF/LyyceaNBhkdiV+Ofcts387TVkQkjkoArV10Uu+Jg== dependencies: - "@abp/jquery-validation" "~8.2.2" + "@abp/jquery-validation" "~8.2.3" jquery-validation-unobtrusive "^3.2.12" -"@abp/jquery-validation@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-8.2.2.tgz#25ac2fb35aa8f60ba82116ef429996e7ae8518bb" - integrity sha512-WbvobzuEKmnFdCK2Bic7YNhbuauN1mIzgrnd8Ap0nLAxpwsVYkUBwKHoi7jyYv+Udvl39VjYFeciul9rZYI2pg== +"@abp/jquery-validation@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-8.2.3.tgz#642b7f56c1da5469443f864f04eb09cb0bf75bb4" + integrity sha512-qbML5oyoq9ltq212qD8C7jVOqNwTdvyRzTu3SsN15AXecapZxO/BPjhCgLb99OK4zT7hZaC8R+H0CDBa3O5pvg== dependencies: - "@abp/jquery" "~8.2.2" + "@abp/jquery" "~8.2.3" jquery-validation "^1.19.3" -"@abp/jquery@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-8.2.2.tgz#2496431ed11c5e2410e0efaa34404ac760a064ff" - integrity sha512-2ItXN6O45NIpSK/D8wUu+xVnrkxhc79Pce/yYMzFzI7QGYaKvpaP+tVWQQmKEa7RCNCyPS57AxuDtNqI4LSqDQ== +"@abp/jquery@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-8.2.3.tgz#e73d1df860276ae2a081c6f945f586720a71781d" + integrity sha512-SDOnVUJo0g3tuA40Z2Nme8yI1nTCwp0Mh2aAf3L3W+F8lzV3OQS8mUmpektxhPsFen0DufSvilOC+aI6/Jx5lQ== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" jquery "~3.6.0" -"@abp/lodash@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-8.2.2.tgz#a12ed0018f831c0f763da5c6a09d07494acf01ed" - integrity sha512-X+Y3CBMjNgeK/Y47MPMF4sH8PRF0TP+YpjvZ9lbGVSxiQPsNdrYKseZ1gp+AnDBHvj+Oxb7s/aRVZ1pbDJpXiQ== +"@abp/lodash@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-8.2.3.tgz#e78ef9e681369af51b6c36a0a450884c4ee5677a" + integrity sha512-47YoHS0CrH+PiQ8eF/ASYodGH+foBRBJVkDmRgZ1vegs10CJukBYgAutPlNMC2onlEF1jLYJ40ZKsHd6TrFQkA== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" lodash "^4.17.21" -"@abp/luxon@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-8.2.2.tgz#76026e1ae79601cc322cda458ac1f2b2cb76190a" - integrity sha512-I08NgiUJwCfNvwOZNYjwB/+2bUwulU3urqKIIB9Mg6PGK2hohsE8k2CMEijA+T25YYO32xgXevOfOq5YU2NCTw== +"@abp/luxon@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-8.2.3.tgz#445d763360b29a7591ab31898ce522e61be9d97e" + integrity sha512-pT+oO4znadhSleuH3x6n1nEgOzfVl0aHurt4F+wnJHyP7SdC2+RjZOYJUkuRIaZzflG4699Qq0UgAW6GfpuUgg== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" luxon "^2.3.0" -"@abp/malihu-custom-scrollbar-plugin@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-8.2.2.tgz#53405af2869fde990962914f24228a9fa65bab2f" - integrity sha512-/6g+Qm/5CbCzVgohEH8C72smIN4Lw/uL/KJbP7uEBVAXfKqY6vGA2VhrKNvIiBPfktIzZCHrcKsHwysMPtOS2Q== +"@abp/malihu-custom-scrollbar-plugin@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-8.2.3.tgz#7018c4ab65b78512bf5ea8f542fb0c7119a39e0b" + integrity sha512-CCc0iOaulmssuUL7RsAApRzYD+SXAPbqz5iod6yuyx3Y5Vaz4ik+2/cG7XZgwcgsmctJYZl3IxZ/ijnZXLgHUw== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/moment@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-8.2.2.tgz#1895904212fde6dc1793611940a9f8ec95b2c45f" - integrity sha512-VhhCOzVpapvFOn1gzQIcXB/RMyRKcZOlVLGLTqosg14woPSFm0+0utLHkPOLihWbUSQqDRYKvC2cPbNC6CknKg== +"@abp/moment@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-8.2.3.tgz#126039218e6068eca4279eae1eb5375207780931" + integrity sha512-nV11P1KqX8xPmb/bs3yYbFPz7ZOXWnZPKd4Z2k0JYaFTS2C07twgS0uQQHwW6iP8DrS1QBBAyLYBuM3ctgB0dg== dependencies: moment "^2.9.0" -"@abp/select2@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-8.2.2.tgz#0dc011b838824598dc0a716e55b597aca62712dc" - integrity sha512-zTgtOl2iWihbGja3l8IIi+PqepYNk6O7fUcf6C9cdnBM4IrZSnJqw3sQDr9DqIoEzgdC6izVQzPJJEAi5CZ8Xg== +"@abp/select2@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-8.2.3.tgz#fc92d19ba22cbef5df9b8b2f85b4d21d3139883f" + integrity sha512-/MEJkSuM5+N5OIBLbrQUARUV++NpH9pVq4+btYhghDQDtHYrMHKU41QsginTFKfqBZ4f+OYV/HPnOuj7DJxOBw== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" select2 "^4.0.13" -"@abp/sweetalert2@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-8.2.2.tgz#1c75ec9ef1df2eec6304368667052d8ff9c9e795" - integrity sha512-yNgVxJ6E/cEtc8DYn00BtF9XFLShlZRsAnsipiP74YDvQKWUQSnwi70QoHEYDk2tJ+RsXqtZudvrKv8TyH/ijQ== +"@abp/sweetalert2@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-8.2.3.tgz#a82d674e262e9db89bc219ac350cae8ef17d7669" + integrity sha512-ap8vOgkKbmhAmDfVmEJPyVbIzA3V3mi9SvP/OLaNYEaMG0AppYf3iiSvC+6TA+qAFQuF5fI1oKUcsiE68uQGjw== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" sweetalert2 "^11.3.6" -"@abp/timeago@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-8.2.2.tgz#8af9558d325b2f2f9d9c5b1f90ac9eaf5531429b" - integrity sha512-ILdMeCTDNvmVOSm8Xc9ppL1xI1NoDzLbUCUojI7mvEFCE8sw3QGiFGhW6W7kYcoD7sRkxFl1Jn5V/urpAiQwaQ== +"@abp/timeago@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-8.2.3.tgz#dede68da0b5e252a573b0a1c5a9e4c831bc3c820" + integrity sha512-AbYf35a5M4QMAFK3aV6JE7QHR3GzpOX1zsun39i+97ZrNZf6do/eIgDx6dolTlSb0AsHf8qCrf7T6o1kIaXQ2w== dependencies: - "@abp/jquery" "~8.2.2" + "@abp/jquery" "~8.2.3" timeago "^1.6.7" -"@abp/toastr@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-8.2.2.tgz#a59d5b29e43698dbb614792bfd51185453859a7f" - integrity sha512-I4iiXV/SSXiD4UGM5oVsg6m6p4XmuxvqWmjOLSyoUfJQMC378mzNX0Ec9hYIY42C+GS2NalKtoaaYzBfcEtwoQ== +"@abp/toastr@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-8.2.3.tgz#77767666d578c05f039e84178c428370f6f10802" + integrity sha512-V1H0Efik/kGsRuTNPl//FsoH/8VU58S1K4GQ9k2V1bi8INaC/kU//I9frwOJsXd55imvsbmzh4XzrJ574eU84w== dependencies: - "@abp/jquery" "~8.2.2" + "@abp/jquery" "~8.2.3" toastr "^2.1.4" -"@abp/utils@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-8.2.2.tgz#84035d36e968c8ecdeee3c7617aa45bfeb3f6afd" - integrity sha512-70hmgTd7N63AnanzZYUWpobckhPzplBjlRmMhIi+9WZLQfxWpM/EN6l+qQndjAMMvgFl/vW03BUJh1fL9kGynA== +"@abp/utils@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-8.2.3.tgz#05e3d419ee9a6228f7ed4f86e8fd03f3ce57ed27" + integrity sha512-WMs/okBxGitkGRdsikByyJLFXRSD/DPfBWZdDhU4+TvcQmnTqog9S75kZ8CUpUe/wwDHYsY51ef6N6jOfkGTFQ== dependencies: just-compare "^2.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 9b45d34690..dd50dd6a99 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": "~8.2.2" + "@abp/aspnetcore.mvc.ui.theme.basic": "~8.2.3" } } 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 9188715ca6..f36d2d8e77 100644 --- a/modules/cms-kit/host/Volo.CmsKit.Web.Host/yarn.lock +++ b/modules/cms-kit/host/Volo.CmsKit.Web.Host/yarn.lock @@ -2,194 +2,194 @@ # yarn lockfile v1 -"@abp/aspnetcore.mvc.ui.theme.basic@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-8.2.2.tgz#0b18f3eee58b4a115e861a3732514a02d613d301" - integrity sha512-fFytBe1n+DxK7rVPnO8zqZWixBTDfdSrFUyg+qgpe+/Q10ec7x9j5noB+aiF73OZelJ9LGKz2gl+MS66Erpy2A== - dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~8.2.2" - -"@abp/aspnetcore.mvc.ui.theme.shared@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-8.2.2.tgz#419da4bac71ceb7b1afbd8b740b0675f51de6575" - integrity sha512-tYPbEqoENmxzN9zaBAF8/ssNk8uuVTkKpi663612H1b85ik3Tbm4H3gamKbSR1TxMwIJZxVyizxDMDhLu6ff3w== - dependencies: - "@abp/aspnetcore.mvc.ui" "~8.2.2" - "@abp/bootstrap" "~8.2.2" - "@abp/bootstrap-datepicker" "~8.2.2" - "@abp/bootstrap-daterangepicker" "~8.2.2" - "@abp/datatables.net-bs5" "~8.2.2" - "@abp/font-awesome" "~8.2.2" - "@abp/jquery-form" "~8.2.2" - "@abp/jquery-validation-unobtrusive" "~8.2.2" - "@abp/lodash" "~8.2.2" - "@abp/luxon" "~8.2.2" - "@abp/malihu-custom-scrollbar-plugin" "~8.2.2" - "@abp/moment" "~8.2.2" - "@abp/select2" "~8.2.2" - "@abp/sweetalert2" "~8.2.2" - "@abp/timeago" "~8.2.2" - "@abp/toastr" "~8.2.2" - -"@abp/aspnetcore.mvc.ui@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-8.2.2.tgz#53de1c58c14a98f15f408c9a404e5052cc28c966" - integrity sha512-XjduoVC/2nrlo7R77cTgvDQGZK0fqATx1VaHPHbQJLKvjZXS7rIU6Q0Eye+XcnGnw4udcq3luAorqI96JFkBiQ== +"@abp/aspnetcore.mvc.ui.theme.basic@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-8.2.3.tgz#4456eef32942a1064543f46b9b22fdd941ec209d" + integrity sha512-CmJ7Jp5guO/lCXb9IjrhZ0jpnlbL0d3k/7w6gp/jGhFZ5w7gTgI+ZOtr4jzQnQRWF+ZwaVhsgtfBG9PdNl63QA== + dependencies: + "@abp/aspnetcore.mvc.ui.theme.shared" "~8.2.3" + +"@abp/aspnetcore.mvc.ui.theme.shared@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-8.2.3.tgz#b1a795a947cf710730ddeec4684e706cd0d8b853" + integrity sha512-UDRzWXFUL1kHlrhzgjXwo+UxFwkthyQj2agk889mdt4doZ4NGbHKmgdHNrtt1PIOM8VOcQNubBx5VePffuMcYA== + dependencies: + "@abp/aspnetcore.mvc.ui" "~8.2.3" + "@abp/bootstrap" "~8.2.3" + "@abp/bootstrap-datepicker" "~8.2.3" + "@abp/bootstrap-daterangepicker" "~8.2.3" + "@abp/datatables.net-bs5" "~8.2.3" + "@abp/font-awesome" "~8.2.3" + "@abp/jquery-form" "~8.2.3" + "@abp/jquery-validation-unobtrusive" "~8.2.3" + "@abp/lodash" "~8.2.3" + "@abp/luxon" "~8.2.3" + "@abp/malihu-custom-scrollbar-plugin" "~8.2.3" + "@abp/moment" "~8.2.3" + "@abp/select2" "~8.2.3" + "@abp/sweetalert2" "~8.2.3" + "@abp/timeago" "~8.2.3" + "@abp/toastr" "~8.2.3" + +"@abp/aspnetcore.mvc.ui@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-8.2.3.tgz#02e20c42b198bf6bb13e313b4a4b435f17dc9ddd" + integrity sha512-414cAonBhJDZmlEat4gY1Qaf1npgJjYj/re9O0Rk/FdW2vO8Qt56LozGIsbvVY4RjMsQwpwkkgH4RWlIKm3q8w== dependencies: ansi-colors "^4.1.1" -"@abp/bootstrap-datepicker@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-8.2.2.tgz#a14ff40f5bc29e9ad50ea68391f1238ab86f4d1b" - integrity sha512-nqDfEkbFj20ULJap5tsEThmzIUssfIhV8sqBitd9xKnCmoGpbywp/SZgB2hHNEqb3zIJaewNS9P11PoxqRpdBA== +"@abp/bootstrap-datepicker@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-8.2.3.tgz#ceec259251a692d25daae9263b54a3142b007f23" + integrity sha512-o3uZtuw/NKJTCKf5tK5U7Qii+9PgJGWIjLkqb7mXGftIMdqOaJ+QHZe+J9XaO4of8l2HtGkXp+fuQGVJBTlFAg== dependencies: bootstrap-datepicker "^1.9.0" -"@abp/bootstrap-daterangepicker@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-8.2.2.tgz#bff1cf71bce370ae0e4f3c04b9eee4221604959b" - integrity sha512-M0RbUHN52R7ZAyudhlQ6zWAbMmZ88FVR9EPP2dovfKLKfOUGWQiww2QA3a5gvwo/FBObC95XYfpVg72IQgr5ww== +"@abp/bootstrap-daterangepicker@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-8.2.3.tgz#b33117eb5dfcdbea9cb5212acfecd4e040ce7c2d" + integrity sha512-UR1TXFStbvD54wb6vEVK3FVHYtgugLBdDg4Xyh+aNe2sUTm+kfXh4+1Xm+3R1SV3cWvRT57Sy1bc306c6CQ7Zg== dependencies: bootstrap-daterangepicker "^3.1.0" -"@abp/bootstrap@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-8.2.2.tgz#78db0e4f54dd4b09462d386df83e451506717af6" - integrity sha512-A6hdNB2+Uokm5CniB6+qxR7Q2dyRwMLv2ct0v6PxOT1M+/Z2+oCzFDHLYKnmbcx5pg+1MmvnNC+clQZELDxjyw== +"@abp/bootstrap@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-8.2.3.tgz#462c4a5712d6d0baee345dc318fc5463527cbc21" + integrity sha512-jThgI5nlP5A/cKLUoNgRA5ldHz5xNoGkD+V0Z/gScbeAE8Q8eu7Q5P82PLF8B8cgKjOqJXb2L5kbdNYFdqIOwg== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" bootstrap "^5.1.3" -"@abp/core@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-8.2.2.tgz#b4905fa539272bee26f5f95ceb2224b48cfac8ab" - integrity sha512-YKbT92+T9Zs0IvvIPJrMcBUjwR5u6U6f1KegRcRR79b43ZckIrQbqftjyFLF7YSPuJlVCHoO0YhU2Q1EagiFDg== +"@abp/core@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-8.2.3.tgz#1474f8e24cc8707bd909e1cd49230cdaa54c447e" + integrity sha512-mluL7NHWRxvjwHHGd3kOWQg0Tnmt4o2ih/KfdDJl7z4lpy386yL+UutkE3NNhgbEGWDt1hnS5rKFZabhaahwWg== dependencies: - "@abp/utils" "~8.2.2" + "@abp/utils" "~8.2.3" -"@abp/datatables.net-bs5@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-8.2.2.tgz#c314a615cf98cf0fdb6a97ffea3a42d0b050ccd5" - integrity sha512-dkb0wHdZ93mLSwmHbJ3hMKBm0ZFA9jpLxxWf7u+c7sBU+McACRdFHyl0x6dtinspDgo5GaPHGqmbsVx5S7eM2w== +"@abp/datatables.net-bs5@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-8.2.3.tgz#8e80767d7677ebf69a56248039ef5604499bbc30" + integrity sha512-XTjo15yM/nJiFfRtTMnfOJNh6FX+Vmmf5Kq5aG5XjUcp1IepEAgiNNOSmh+zRhUt4BDZ4RWcfSSGNbh0icUIOg== dependencies: - "@abp/datatables.net" "~8.2.2" + "@abp/datatables.net" "~8.2.3" datatables.net-bs5 "^1.11.4" -"@abp/datatables.net@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-8.2.2.tgz#1627836a2ee7efe1d470bdc32ec437ed86996fc8" - integrity sha512-hPAyx90kI4s+LlUsN6GfLWFEGe9JXExgqSzFUwkOqi+WS+kGWvPElUXfS06VaKiu/h/H9SVl+X+iajd3L9Zr9g== +"@abp/datatables.net@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-8.2.3.tgz#e38567679720546d42b895d9a464728ea3730292" + integrity sha512-CT18SqBuY25UmjNbiSbI9eqvbPNZZm+yYsZoasSUv3JOpO1oPfclgtZV5FKeBQQvM5Vc0BhRs7KMKF2F0pwszA== dependencies: - "@abp/jquery" "~8.2.2" + "@abp/jquery" "~8.2.3" datatables.net "^1.11.4" -"@abp/font-awesome@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-8.2.2.tgz#924ce3b78a902ef844901d824d8eb616cbc32ba8" - integrity sha512-yCn94hjowg42hTvyf3xJu7kOCMWfh5Qw4D8PbiaF3WwP1kbpC2QCeZ/Rh9Oltsml34rkhMKPTzLzZqki25Q5QQ== +"@abp/font-awesome@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-8.2.3.tgz#92d7645c94cda07becb8e2ea23e7769ec55c43b1" + integrity sha512-OLQRBuPHtPyM5IHhIJwsbkE8idmu/DDAIm92kOa97p0r0Hx7epnKx+Yrwz23FuRH2wYlmYJqDmwj1VTK90gxYA== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" "@fortawesome/fontawesome-free" "^6.5.1" -"@abp/jquery-form@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-8.2.2.tgz#aad534f5b4f4346ac97249040af663e70ecbd03e" - integrity sha512-QueETCaVq6g8b7c0jIepbKZKS2SO/aCZJy/uRc/lPumr2Hs96aZvHQGIAZopCQKPfF9mLp+Sc2QEN/zdt8QiNA== +"@abp/jquery-form@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-8.2.3.tgz#a8c593e6afbbcff5250657f052fc9912cdf352ac" + integrity sha512-AhkNUdyXE/q7hsra+1xj8W/g7lkIgR9YXrr0RgddPW+dqYqVvbYdFcPliHaSsl+kzPHSRx7eez8AjQSZlReIjg== dependencies: - "@abp/jquery" "~8.2.2" + "@abp/jquery" "~8.2.3" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-8.2.2.tgz#7396dd6a62cdf0796d967b167da5cc91974a9c5e" - integrity sha512-dH0ax7Lxaf+MeZC0z80IPHyXocuA26lzHtwFx/g4NIxxV1gKL8/wI+rAX1ulloSdqEA8kN6rlgOZMqiG2kNWcw== +"@abp/jquery-validation-unobtrusive@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-8.2.3.tgz#d21cbc1694b68f6377134e4e535d19e2cda0fb8d" + integrity sha512-2Ilrveqsj5jorZ2N75zLlHO8+NGRmLecRWIDZZmuyCXVF/LyyceaNBhkdiV+Ofcts387TVkQkjkoArV10Uu+Jg== dependencies: - "@abp/jquery-validation" "~8.2.2" + "@abp/jquery-validation" "~8.2.3" jquery-validation-unobtrusive "^3.2.12" -"@abp/jquery-validation@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-8.2.2.tgz#25ac2fb35aa8f60ba82116ef429996e7ae8518bb" - integrity sha512-WbvobzuEKmnFdCK2Bic7YNhbuauN1mIzgrnd8Ap0nLAxpwsVYkUBwKHoi7jyYv+Udvl39VjYFeciul9rZYI2pg== +"@abp/jquery-validation@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-8.2.3.tgz#642b7f56c1da5469443f864f04eb09cb0bf75bb4" + integrity sha512-qbML5oyoq9ltq212qD8C7jVOqNwTdvyRzTu3SsN15AXecapZxO/BPjhCgLb99OK4zT7hZaC8R+H0CDBa3O5pvg== dependencies: - "@abp/jquery" "~8.2.2" + "@abp/jquery" "~8.2.3" jquery-validation "^1.19.3" -"@abp/jquery@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-8.2.2.tgz#2496431ed11c5e2410e0efaa34404ac760a064ff" - integrity sha512-2ItXN6O45NIpSK/D8wUu+xVnrkxhc79Pce/yYMzFzI7QGYaKvpaP+tVWQQmKEa7RCNCyPS57AxuDtNqI4LSqDQ== +"@abp/jquery@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-8.2.3.tgz#e73d1df860276ae2a081c6f945f586720a71781d" + integrity sha512-SDOnVUJo0g3tuA40Z2Nme8yI1nTCwp0Mh2aAf3L3W+F8lzV3OQS8mUmpektxhPsFen0DufSvilOC+aI6/Jx5lQ== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" jquery "~3.6.0" -"@abp/lodash@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-8.2.2.tgz#a12ed0018f831c0f763da5c6a09d07494acf01ed" - integrity sha512-X+Y3CBMjNgeK/Y47MPMF4sH8PRF0TP+YpjvZ9lbGVSxiQPsNdrYKseZ1gp+AnDBHvj+Oxb7s/aRVZ1pbDJpXiQ== +"@abp/lodash@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-8.2.3.tgz#e78ef9e681369af51b6c36a0a450884c4ee5677a" + integrity sha512-47YoHS0CrH+PiQ8eF/ASYodGH+foBRBJVkDmRgZ1vegs10CJukBYgAutPlNMC2onlEF1jLYJ40ZKsHd6TrFQkA== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" lodash "^4.17.21" -"@abp/luxon@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-8.2.2.tgz#76026e1ae79601cc322cda458ac1f2b2cb76190a" - integrity sha512-I08NgiUJwCfNvwOZNYjwB/+2bUwulU3urqKIIB9Mg6PGK2hohsE8k2CMEijA+T25YYO32xgXevOfOq5YU2NCTw== +"@abp/luxon@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-8.2.3.tgz#445d763360b29a7591ab31898ce522e61be9d97e" + integrity sha512-pT+oO4znadhSleuH3x6n1nEgOzfVl0aHurt4F+wnJHyP7SdC2+RjZOYJUkuRIaZzflG4699Qq0UgAW6GfpuUgg== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" luxon "^2.3.0" -"@abp/malihu-custom-scrollbar-plugin@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-8.2.2.tgz#53405af2869fde990962914f24228a9fa65bab2f" - integrity sha512-/6g+Qm/5CbCzVgohEH8C72smIN4Lw/uL/KJbP7uEBVAXfKqY6vGA2VhrKNvIiBPfktIzZCHrcKsHwysMPtOS2Q== +"@abp/malihu-custom-scrollbar-plugin@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-8.2.3.tgz#7018c4ab65b78512bf5ea8f542fb0c7119a39e0b" + integrity sha512-CCc0iOaulmssuUL7RsAApRzYD+SXAPbqz5iod6yuyx3Y5Vaz4ik+2/cG7XZgwcgsmctJYZl3IxZ/ijnZXLgHUw== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/moment@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-8.2.2.tgz#1895904212fde6dc1793611940a9f8ec95b2c45f" - integrity sha512-VhhCOzVpapvFOn1gzQIcXB/RMyRKcZOlVLGLTqosg14woPSFm0+0utLHkPOLihWbUSQqDRYKvC2cPbNC6CknKg== +"@abp/moment@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-8.2.3.tgz#126039218e6068eca4279eae1eb5375207780931" + integrity sha512-nV11P1KqX8xPmb/bs3yYbFPz7ZOXWnZPKd4Z2k0JYaFTS2C07twgS0uQQHwW6iP8DrS1QBBAyLYBuM3ctgB0dg== dependencies: moment "^2.9.0" -"@abp/select2@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-8.2.2.tgz#0dc011b838824598dc0a716e55b597aca62712dc" - integrity sha512-zTgtOl2iWihbGja3l8IIi+PqepYNk6O7fUcf6C9cdnBM4IrZSnJqw3sQDr9DqIoEzgdC6izVQzPJJEAi5CZ8Xg== +"@abp/select2@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-8.2.3.tgz#fc92d19ba22cbef5df9b8b2f85b4d21d3139883f" + integrity sha512-/MEJkSuM5+N5OIBLbrQUARUV++NpH9pVq4+btYhghDQDtHYrMHKU41QsginTFKfqBZ4f+OYV/HPnOuj7DJxOBw== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" select2 "^4.0.13" -"@abp/sweetalert2@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-8.2.2.tgz#1c75ec9ef1df2eec6304368667052d8ff9c9e795" - integrity sha512-yNgVxJ6E/cEtc8DYn00BtF9XFLShlZRsAnsipiP74YDvQKWUQSnwi70QoHEYDk2tJ+RsXqtZudvrKv8TyH/ijQ== +"@abp/sweetalert2@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-8.2.3.tgz#a82d674e262e9db89bc219ac350cae8ef17d7669" + integrity sha512-ap8vOgkKbmhAmDfVmEJPyVbIzA3V3mi9SvP/OLaNYEaMG0AppYf3iiSvC+6TA+qAFQuF5fI1oKUcsiE68uQGjw== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" sweetalert2 "^11.3.6" -"@abp/timeago@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-8.2.2.tgz#8af9558d325b2f2f9d9c5b1f90ac9eaf5531429b" - integrity sha512-ILdMeCTDNvmVOSm8Xc9ppL1xI1NoDzLbUCUojI7mvEFCE8sw3QGiFGhW6W7kYcoD7sRkxFl1Jn5V/urpAiQwaQ== +"@abp/timeago@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-8.2.3.tgz#dede68da0b5e252a573b0a1c5a9e4c831bc3c820" + integrity sha512-AbYf35a5M4QMAFK3aV6JE7QHR3GzpOX1zsun39i+97ZrNZf6do/eIgDx6dolTlSb0AsHf8qCrf7T6o1kIaXQ2w== dependencies: - "@abp/jquery" "~8.2.2" + "@abp/jquery" "~8.2.3" timeago "^1.6.7" -"@abp/toastr@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-8.2.2.tgz#a59d5b29e43698dbb614792bfd51185453859a7f" - integrity sha512-I4iiXV/SSXiD4UGM5oVsg6m6p4XmuxvqWmjOLSyoUfJQMC378mzNX0Ec9hYIY42C+GS2NalKtoaaYzBfcEtwoQ== +"@abp/toastr@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-8.2.3.tgz#77767666d578c05f039e84178c428370f6f10802" + integrity sha512-V1H0Efik/kGsRuTNPl//FsoH/8VU58S1K4GQ9k2V1bi8INaC/kU//I9frwOJsXd55imvsbmzh4XzrJ574eU84w== dependencies: - "@abp/jquery" "~8.2.2" + "@abp/jquery" "~8.2.3" toastr "^2.1.4" -"@abp/utils@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-8.2.2.tgz#84035d36e968c8ecdeee3c7617aa45bfeb3f6afd" - integrity sha512-70hmgTd7N63AnanzZYUWpobckhPzplBjlRmMhIi+9WZLQfxWpM/EN6l+qQndjAMMvgFl/vW03BUJh1fL9kGynA== +"@abp/utils@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-8.2.3.tgz#05e3d419ee9a6228f7ed4f86e8fd03f3ce57ed27" + integrity sha512-WMs/okBxGitkGRdsikByyJLFXRSD/DPfBWZdDhU4+TvcQmnTqog9S75kZ8CUpUe/wwDHYsY51ef6N6jOfkGTFQ== dependencies: just-compare "^2.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 464d669db0..31015ec59f 100644 --- a/modules/cms-kit/host/Volo.CmsKit.Web.Unified/package.json +++ b/modules/cms-kit/host/Volo.CmsKit.Web.Unified/package.json @@ -3,7 +3,7 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "~8.2.2", - "@abp/cms-kit": "8.2.2" + "@abp/aspnetcore.mvc.ui.theme.basic": "~8.2.3", + "@abp/cms-kit": "8.2.3" } } 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 49c81591f8..b0d5e9edf5 100644 --- a/modules/cms-kit/host/Volo.CmsKit.Web.Unified/yarn.lock +++ b/modules/cms-kit/host/Volo.CmsKit.Web.Unified/yarn.lock @@ -2,293 +2,293 @@ # yarn lockfile v1 -"@abp/aspnetcore.mvc.ui.theme.basic@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-8.2.2.tgz#0b18f3eee58b4a115e861a3732514a02d613d301" - integrity sha512-fFytBe1n+DxK7rVPnO8zqZWixBTDfdSrFUyg+qgpe+/Q10ec7x9j5noB+aiF73OZelJ9LGKz2gl+MS66Erpy2A== - dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~8.2.2" - -"@abp/aspnetcore.mvc.ui.theme.shared@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-8.2.2.tgz#419da4bac71ceb7b1afbd8b740b0675f51de6575" - integrity sha512-tYPbEqoENmxzN9zaBAF8/ssNk8uuVTkKpi663612H1b85ik3Tbm4H3gamKbSR1TxMwIJZxVyizxDMDhLu6ff3w== - dependencies: - "@abp/aspnetcore.mvc.ui" "~8.2.2" - "@abp/bootstrap" "~8.2.2" - "@abp/bootstrap-datepicker" "~8.2.2" - "@abp/bootstrap-daterangepicker" "~8.2.2" - "@abp/datatables.net-bs5" "~8.2.2" - "@abp/font-awesome" "~8.2.2" - "@abp/jquery-form" "~8.2.2" - "@abp/jquery-validation-unobtrusive" "~8.2.2" - "@abp/lodash" "~8.2.2" - "@abp/luxon" "~8.2.2" - "@abp/malihu-custom-scrollbar-plugin" "~8.2.2" - "@abp/moment" "~8.2.2" - "@abp/select2" "~8.2.2" - "@abp/sweetalert2" "~8.2.2" - "@abp/timeago" "~8.2.2" - "@abp/toastr" "~8.2.2" - -"@abp/aspnetcore.mvc.ui@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-8.2.2.tgz#53de1c58c14a98f15f408c9a404e5052cc28c966" - integrity sha512-XjduoVC/2nrlo7R77cTgvDQGZK0fqATx1VaHPHbQJLKvjZXS7rIU6Q0Eye+XcnGnw4udcq3luAorqI96JFkBiQ== +"@abp/aspnetcore.mvc.ui.theme.basic@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-8.2.3.tgz#4456eef32942a1064543f46b9b22fdd941ec209d" + integrity sha512-CmJ7Jp5guO/lCXb9IjrhZ0jpnlbL0d3k/7w6gp/jGhFZ5w7gTgI+ZOtr4jzQnQRWF+ZwaVhsgtfBG9PdNl63QA== + dependencies: + "@abp/aspnetcore.mvc.ui.theme.shared" "~8.2.3" + +"@abp/aspnetcore.mvc.ui.theme.shared@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-8.2.3.tgz#b1a795a947cf710730ddeec4684e706cd0d8b853" + integrity sha512-UDRzWXFUL1kHlrhzgjXwo+UxFwkthyQj2agk889mdt4doZ4NGbHKmgdHNrtt1PIOM8VOcQNubBx5VePffuMcYA== + dependencies: + "@abp/aspnetcore.mvc.ui" "~8.2.3" + "@abp/bootstrap" "~8.2.3" + "@abp/bootstrap-datepicker" "~8.2.3" + "@abp/bootstrap-daterangepicker" "~8.2.3" + "@abp/datatables.net-bs5" "~8.2.3" + "@abp/font-awesome" "~8.2.3" + "@abp/jquery-form" "~8.2.3" + "@abp/jquery-validation-unobtrusive" "~8.2.3" + "@abp/lodash" "~8.2.3" + "@abp/luxon" "~8.2.3" + "@abp/malihu-custom-scrollbar-plugin" "~8.2.3" + "@abp/moment" "~8.2.3" + "@abp/select2" "~8.2.3" + "@abp/sweetalert2" "~8.2.3" + "@abp/timeago" "~8.2.3" + "@abp/toastr" "~8.2.3" + +"@abp/aspnetcore.mvc.ui@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-8.2.3.tgz#02e20c42b198bf6bb13e313b4a4b435f17dc9ddd" + integrity sha512-414cAonBhJDZmlEat4gY1Qaf1npgJjYj/re9O0Rk/FdW2vO8Qt56LozGIsbvVY4RjMsQwpwkkgH4RWlIKm3q8w== dependencies: ansi-colors "^4.1.1" -"@abp/bootstrap-datepicker@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-8.2.2.tgz#a14ff40f5bc29e9ad50ea68391f1238ab86f4d1b" - integrity sha512-nqDfEkbFj20ULJap5tsEThmzIUssfIhV8sqBitd9xKnCmoGpbywp/SZgB2hHNEqb3zIJaewNS9P11PoxqRpdBA== +"@abp/bootstrap-datepicker@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-8.2.3.tgz#ceec259251a692d25daae9263b54a3142b007f23" + integrity sha512-o3uZtuw/NKJTCKf5tK5U7Qii+9PgJGWIjLkqb7mXGftIMdqOaJ+QHZe+J9XaO4of8l2HtGkXp+fuQGVJBTlFAg== dependencies: bootstrap-datepicker "^1.9.0" -"@abp/bootstrap-daterangepicker@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-8.2.2.tgz#bff1cf71bce370ae0e4f3c04b9eee4221604959b" - integrity sha512-M0RbUHN52R7ZAyudhlQ6zWAbMmZ88FVR9EPP2dovfKLKfOUGWQiww2QA3a5gvwo/FBObC95XYfpVg72IQgr5ww== +"@abp/bootstrap-daterangepicker@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-8.2.3.tgz#b33117eb5dfcdbea9cb5212acfecd4e040ce7c2d" + integrity sha512-UR1TXFStbvD54wb6vEVK3FVHYtgugLBdDg4Xyh+aNe2sUTm+kfXh4+1Xm+3R1SV3cWvRT57Sy1bc306c6CQ7Zg== dependencies: bootstrap-daterangepicker "^3.1.0" -"@abp/bootstrap@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-8.2.2.tgz#78db0e4f54dd4b09462d386df83e451506717af6" - integrity sha512-A6hdNB2+Uokm5CniB6+qxR7Q2dyRwMLv2ct0v6PxOT1M+/Z2+oCzFDHLYKnmbcx5pg+1MmvnNC+clQZELDxjyw== +"@abp/bootstrap@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-8.2.3.tgz#462c4a5712d6d0baee345dc318fc5463527cbc21" + integrity sha512-jThgI5nlP5A/cKLUoNgRA5ldHz5xNoGkD+V0Z/gScbeAE8Q8eu7Q5P82PLF8B8cgKjOqJXb2L5kbdNYFdqIOwg== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" bootstrap "^5.1.3" -"@abp/clipboard@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-8.2.2.tgz#cb9a7bc2d08b8fb762c24cbd53f86a6aa5c8197a" - integrity sha512-D9azkwO9ZAwKsqdYRkzz0JOukfMdhUOpI382VxmfLTHgTgrby6xTae8SGIrXthgemEny3RlqYAX2R7EVfN3upg== +"@abp/clipboard@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-8.2.3.tgz#9e0c0b750114ddaca0beba1051dd7fc1fe77f543" + integrity sha512-RS1pVeeN1/5LlDNBBRDFUqR+xpfWteCZfIByh8xAbec1xuxHmxxxvb3kv1Wp7n4c1ec3V0yLRyvaj0SfYmnWNA== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" clipboard "^2.0.8" -"@abp/cms-kit.admin@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/cms-kit.admin/-/cms-kit.admin-8.2.2.tgz#91a9bb91f2d450e5b5bdf1c9ec3805b77cfd57fd" - integrity sha512-rVapT4xhdkvBYPEPcZnRPcnszJUFLmbyvnTGymbuHT9RnfiPUuSfCwVzv0HtvV+Y/2FSRxKBD28WWMBMTBbFpA== +"@abp/cms-kit.admin@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/cms-kit.admin/-/cms-kit.admin-8.2.3.tgz#f1dc21055bd0445e12925c6a442510555f1059fe" + integrity sha512-khr/sRGSL5/mEK1kSI4Qxx6i+0RXmQKxjkOPMBJ7zTcrBZfHYRaXTIVbK9Jpod37MzwN05Wp5V1MQYOm0Q6NEA== dependencies: - "@abp/codemirror" "~8.2.2" - "@abp/jstree" "~8.2.2" - "@abp/slugify" "~8.2.2" - "@abp/tui-editor" "~8.2.2" - "@abp/uppy" "~8.2.2" + "@abp/codemirror" "~8.2.3" + "@abp/jstree" "~8.2.3" + "@abp/slugify" "~8.2.3" + "@abp/tui-editor" "~8.2.3" + "@abp/uppy" "~8.2.3" -"@abp/cms-kit.public@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/cms-kit.public/-/cms-kit.public-8.2.2.tgz#a3a5661e92f101b6992b6680e7a51d1bb53bb6b0" - integrity sha512-aJSb3GAZ1iAbSv4EMdUYi6qcC5Ek9a/vGRVtkW+Qg3FCKD4Tkz2oV3GjKk5zd6hHJB5qXWkasjOvyqlAb7iAlg== +"@abp/cms-kit.public@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/cms-kit.public/-/cms-kit.public-8.2.3.tgz#99250a4367a3e43ef84ffbf29bf6bf0ffafb499f" + integrity sha512-CxBF7z5/4OBFjePsJl3zFZDUDGhTkoUQF9qKlDvHk9t2AEkV+cPk2TPVZ+YRMt9a0Fc9G+r09tB3Z6HUEwMPCQ== dependencies: - "@abp/highlight.js" "~8.2.2" - "@abp/star-rating-svg" "~8.2.2" + "@abp/highlight.js" "~8.2.3" + "@abp/star-rating-svg" "~8.2.3" -"@abp/cms-kit@8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/cms-kit/-/cms-kit-8.2.2.tgz#6f8a6a800a5482429c52d57a39d51c3ea92665c7" - integrity sha512-/xL8ltkx0fs1tEiuXNENorFWkx3uXlXKaqZIMP/vGNgtnxovACAtY5hZ4exhMH7ULBvvPDDjEdCOhHhPr7h1kQ== +"@abp/cms-kit@8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/cms-kit/-/cms-kit-8.2.3.tgz#64a8b4214a80965f440c8d542e40c19920495647" + integrity sha512-UE/thd4n5xr93Q7PoZzYmVRlbYulFtDdPFum1Kn3SURb+dlLEXUGDye0j2Fp+zpTds4/xUVKn+OOUNr6enIfcg== dependencies: - "@abp/cms-kit.admin" "~8.2.2" - "@abp/cms-kit.public" "~8.2.2" + "@abp/cms-kit.admin" "~8.2.3" + "@abp/cms-kit.public" "~8.2.3" -"@abp/codemirror@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/codemirror/-/codemirror-8.2.2.tgz#874f2eac4e681be7f849b56741ee6a9e942560da" - integrity sha512-surnvXvyXEm2SqEMihYHbBwyBOuqnSouvZewtM9RI0IRhi6Y60/4gA0T4BT8B2qZgKpoOlaymO/GBYMdc8xfKw== +"@abp/codemirror@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/codemirror/-/codemirror-8.2.3.tgz#151f107e8f4593cea51b791b05446a30dd466cda" + integrity sha512-IIedBSQbBY0FQje+7t9guHdoUturkfcq2CqYQobytocK27K/NCd/LxygZoeMEpbQMHD+wmeAbel0HJDEjsOYOg== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" codemirror "^5.65.1" -"@abp/core@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-8.2.2.tgz#b4905fa539272bee26f5f95ceb2224b48cfac8ab" - integrity sha512-YKbT92+T9Zs0IvvIPJrMcBUjwR5u6U6f1KegRcRR79b43ZckIrQbqftjyFLF7YSPuJlVCHoO0YhU2Q1EagiFDg== +"@abp/core@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-8.2.3.tgz#1474f8e24cc8707bd909e1cd49230cdaa54c447e" + integrity sha512-mluL7NHWRxvjwHHGd3kOWQg0Tnmt4o2ih/KfdDJl7z4lpy386yL+UutkE3NNhgbEGWDt1hnS5rKFZabhaahwWg== dependencies: - "@abp/utils" "~8.2.2" + "@abp/utils" "~8.2.3" -"@abp/datatables.net-bs5@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-8.2.2.tgz#c314a615cf98cf0fdb6a97ffea3a42d0b050ccd5" - integrity sha512-dkb0wHdZ93mLSwmHbJ3hMKBm0ZFA9jpLxxWf7u+c7sBU+McACRdFHyl0x6dtinspDgo5GaPHGqmbsVx5S7eM2w== +"@abp/datatables.net-bs5@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-8.2.3.tgz#8e80767d7677ebf69a56248039ef5604499bbc30" + integrity sha512-XTjo15yM/nJiFfRtTMnfOJNh6FX+Vmmf5Kq5aG5XjUcp1IepEAgiNNOSmh+zRhUt4BDZ4RWcfSSGNbh0icUIOg== dependencies: - "@abp/datatables.net" "~8.2.2" + "@abp/datatables.net" "~8.2.3" datatables.net-bs5 "^1.11.4" -"@abp/datatables.net@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-8.2.2.tgz#1627836a2ee7efe1d470bdc32ec437ed86996fc8" - integrity sha512-hPAyx90kI4s+LlUsN6GfLWFEGe9JXExgqSzFUwkOqi+WS+kGWvPElUXfS06VaKiu/h/H9SVl+X+iajd3L9Zr9g== +"@abp/datatables.net@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-8.2.3.tgz#e38567679720546d42b895d9a464728ea3730292" + integrity sha512-CT18SqBuY25UmjNbiSbI9eqvbPNZZm+yYsZoasSUv3JOpO1oPfclgtZV5FKeBQQvM5Vc0BhRs7KMKF2F0pwszA== dependencies: - "@abp/jquery" "~8.2.2" + "@abp/jquery" "~8.2.3" datatables.net "^1.11.4" -"@abp/font-awesome@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-8.2.2.tgz#924ce3b78a902ef844901d824d8eb616cbc32ba8" - integrity sha512-yCn94hjowg42hTvyf3xJu7kOCMWfh5Qw4D8PbiaF3WwP1kbpC2QCeZ/Rh9Oltsml34rkhMKPTzLzZqki25Q5QQ== +"@abp/font-awesome@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-8.2.3.tgz#92d7645c94cda07becb8e2ea23e7769ec55c43b1" + integrity sha512-OLQRBuPHtPyM5IHhIJwsbkE8idmu/DDAIm92kOa97p0r0Hx7epnKx+Yrwz23FuRH2wYlmYJqDmwj1VTK90gxYA== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" "@fortawesome/fontawesome-free" "^6.5.1" -"@abp/highlight.js@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/highlight.js/-/highlight.js-8.2.2.tgz#06d5acce5713357d320854297744a39e1d788054" - integrity sha512-TqiHFFDOWcbSXbj1ykePSxnVW8SMNZpgta8MBZq6obtwbAKsLV8D/xfPSr8/kl7sQEFIEWTwCdTGuOBE3xDiaw== +"@abp/highlight.js@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/highlight.js/-/highlight.js-8.2.3.tgz#bae44df0505814cc0692c3a1ea7ca1e36988a677" + integrity sha512-IFNDZcXGKMLY/IZRLZVxY7vsoaWYD2aZYCdqKGFyxHaBTB3KltEDC1Nb6pxE0C1YlNJS5g3BOC+V/z8ZD7h6SA== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" "@highlightjs/cdn-assets" "~11.4.0" -"@abp/jquery-form@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-8.2.2.tgz#aad534f5b4f4346ac97249040af663e70ecbd03e" - integrity sha512-QueETCaVq6g8b7c0jIepbKZKS2SO/aCZJy/uRc/lPumr2Hs96aZvHQGIAZopCQKPfF9mLp+Sc2QEN/zdt8QiNA== +"@abp/jquery-form@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-8.2.3.tgz#a8c593e6afbbcff5250657f052fc9912cdf352ac" + integrity sha512-AhkNUdyXE/q7hsra+1xj8W/g7lkIgR9YXrr0RgddPW+dqYqVvbYdFcPliHaSsl+kzPHSRx7eez8AjQSZlReIjg== dependencies: - "@abp/jquery" "~8.2.2" + "@abp/jquery" "~8.2.3" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-8.2.2.tgz#7396dd6a62cdf0796d967b167da5cc91974a9c5e" - integrity sha512-dH0ax7Lxaf+MeZC0z80IPHyXocuA26lzHtwFx/g4NIxxV1gKL8/wI+rAX1ulloSdqEA8kN6rlgOZMqiG2kNWcw== +"@abp/jquery-validation-unobtrusive@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-8.2.3.tgz#d21cbc1694b68f6377134e4e535d19e2cda0fb8d" + integrity sha512-2Ilrveqsj5jorZ2N75zLlHO8+NGRmLecRWIDZZmuyCXVF/LyyceaNBhkdiV+Ofcts387TVkQkjkoArV10Uu+Jg== dependencies: - "@abp/jquery-validation" "~8.2.2" + "@abp/jquery-validation" "~8.2.3" jquery-validation-unobtrusive "^3.2.12" -"@abp/jquery-validation@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-8.2.2.tgz#25ac2fb35aa8f60ba82116ef429996e7ae8518bb" - integrity sha512-WbvobzuEKmnFdCK2Bic7YNhbuauN1mIzgrnd8Ap0nLAxpwsVYkUBwKHoi7jyYv+Udvl39VjYFeciul9rZYI2pg== +"@abp/jquery-validation@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-8.2.3.tgz#642b7f56c1da5469443f864f04eb09cb0bf75bb4" + integrity sha512-qbML5oyoq9ltq212qD8C7jVOqNwTdvyRzTu3SsN15AXecapZxO/BPjhCgLb99OK4zT7hZaC8R+H0CDBa3O5pvg== dependencies: - "@abp/jquery" "~8.2.2" + "@abp/jquery" "~8.2.3" jquery-validation "^1.19.3" -"@abp/jquery@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-8.2.2.tgz#2496431ed11c5e2410e0efaa34404ac760a064ff" - integrity sha512-2ItXN6O45NIpSK/D8wUu+xVnrkxhc79Pce/yYMzFzI7QGYaKvpaP+tVWQQmKEa7RCNCyPS57AxuDtNqI4LSqDQ== +"@abp/jquery@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-8.2.3.tgz#e73d1df860276ae2a081c6f945f586720a71781d" + integrity sha512-SDOnVUJo0g3tuA40Z2Nme8yI1nTCwp0Mh2aAf3L3W+F8lzV3OQS8mUmpektxhPsFen0DufSvilOC+aI6/Jx5lQ== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" jquery "~3.6.0" -"@abp/jstree@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/jstree/-/jstree-8.2.2.tgz#04ae34dba02e4b71cc84cdb8914522a48d3257c9" - integrity sha512-9fY0lcqgeDmABWe7f/dkGaIS9+K70O1gyuK0UPvcKw6hOv+zDk/Rt//DXXCpobC1/UMNHYq/d67ARDsUyNFriA== +"@abp/jstree@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/jstree/-/jstree-8.2.3.tgz#475cc17a81f379292d2b4e379868f20c1948a354" + integrity sha512-qclfZnVUhGWoJKC+k3uTUVqSZloJsvs/YbScgNbSaUi4wC0IMnmlTSNT40Vw66i3PoZUl1qMMcmDNxc18wVddw== dependencies: - "@abp/jquery" "~8.2.2" + "@abp/jquery" "~8.2.3" jstree "^3.3.12" -"@abp/lodash@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-8.2.2.tgz#a12ed0018f831c0f763da5c6a09d07494acf01ed" - integrity sha512-X+Y3CBMjNgeK/Y47MPMF4sH8PRF0TP+YpjvZ9lbGVSxiQPsNdrYKseZ1gp+AnDBHvj+Oxb7s/aRVZ1pbDJpXiQ== +"@abp/lodash@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-8.2.3.tgz#e78ef9e681369af51b6c36a0a450884c4ee5677a" + integrity sha512-47YoHS0CrH+PiQ8eF/ASYodGH+foBRBJVkDmRgZ1vegs10CJukBYgAutPlNMC2onlEF1jLYJ40ZKsHd6TrFQkA== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" lodash "^4.17.21" -"@abp/luxon@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-8.2.2.tgz#76026e1ae79601cc322cda458ac1f2b2cb76190a" - integrity sha512-I08NgiUJwCfNvwOZNYjwB/+2bUwulU3urqKIIB9Mg6PGK2hohsE8k2CMEijA+T25YYO32xgXevOfOq5YU2NCTw== +"@abp/luxon@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-8.2.3.tgz#445d763360b29a7591ab31898ce522e61be9d97e" + integrity sha512-pT+oO4znadhSleuH3x6n1nEgOzfVl0aHurt4F+wnJHyP7SdC2+RjZOYJUkuRIaZzflG4699Qq0UgAW6GfpuUgg== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" luxon "^2.3.0" -"@abp/malihu-custom-scrollbar-plugin@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-8.2.2.tgz#53405af2869fde990962914f24228a9fa65bab2f" - integrity sha512-/6g+Qm/5CbCzVgohEH8C72smIN4Lw/uL/KJbP7uEBVAXfKqY6vGA2VhrKNvIiBPfktIzZCHrcKsHwysMPtOS2Q== +"@abp/malihu-custom-scrollbar-plugin@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-8.2.3.tgz#7018c4ab65b78512bf5ea8f542fb0c7119a39e0b" + integrity sha512-CCc0iOaulmssuUL7RsAApRzYD+SXAPbqz5iod6yuyx3Y5Vaz4ik+2/cG7XZgwcgsmctJYZl3IxZ/ijnZXLgHUw== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/moment@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-8.2.2.tgz#1895904212fde6dc1793611940a9f8ec95b2c45f" - integrity sha512-VhhCOzVpapvFOn1gzQIcXB/RMyRKcZOlVLGLTqosg14woPSFm0+0utLHkPOLihWbUSQqDRYKvC2cPbNC6CknKg== +"@abp/moment@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-8.2.3.tgz#126039218e6068eca4279eae1eb5375207780931" + integrity sha512-nV11P1KqX8xPmb/bs3yYbFPz7ZOXWnZPKd4Z2k0JYaFTS2C07twgS0uQQHwW6iP8DrS1QBBAyLYBuM3ctgB0dg== dependencies: moment "^2.9.0" -"@abp/prismjs@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-8.2.2.tgz#1910701fbe28d87d1312f16e865778f0e8b19670" - integrity sha512-5KaPPTcLc5/F4MB375orQe5W04bPcE8D/OTGllsj2RViGnmmkVj7Wzkwm6R63qWJtBrYuf9sh2c6eUACNkR2/A== +"@abp/prismjs@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-8.2.3.tgz#8927f1660815f4e3de11085ea5f3a73b127a858a" + integrity sha512-JJ/wlLlWShGYj0FMFjxriCIA4v1Fe+oHTgo1Kt9JpYkYG+Zq+rHsj1tvNthh2GU7Y69Kt2w1r1LpEDKZZHu58A== dependencies: - "@abp/clipboard" "~8.2.2" - "@abp/core" "~8.2.2" + "@abp/clipboard" "~8.2.3" + "@abp/core" "~8.2.3" prismjs "^1.26.0" -"@abp/select2@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-8.2.2.tgz#0dc011b838824598dc0a716e55b597aca62712dc" - integrity sha512-zTgtOl2iWihbGja3l8IIi+PqepYNk6O7fUcf6C9cdnBM4IrZSnJqw3sQDr9DqIoEzgdC6izVQzPJJEAi5CZ8Xg== +"@abp/select2@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-8.2.3.tgz#fc92d19ba22cbef5df9b8b2f85b4d21d3139883f" + integrity sha512-/MEJkSuM5+N5OIBLbrQUARUV++NpH9pVq4+btYhghDQDtHYrMHKU41QsginTFKfqBZ4f+OYV/HPnOuj7DJxOBw== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" select2 "^4.0.13" -"@abp/slugify@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/slugify/-/slugify-8.2.2.tgz#fd15b7814f7199b1ac23fafaaf22178d802ca4c7" - integrity sha512-V+EkEuoh1BECYDemBuMyftoUFqyiRObCF5WpdrfrQRSBsB0AYe7DFOUQIklcubK+BXkof3IGoRx6xc/G0WfXFw== +"@abp/slugify@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/slugify/-/slugify-8.2.3.tgz#129b8d7a8b502865d428a3bfedac8fca3330e337" + integrity sha512-v1P+4ceGhedua52F3mJTw8iDS3dIOg+GjBhNZQbPYW0JEVBIaqXSGrgbvWhrHGxzb+tjZ6DNqLiqtHU7bKDOrQ== dependencies: slugify "^1.6.5" -"@abp/star-rating-svg@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/star-rating-svg/-/star-rating-svg-8.2.2.tgz#22c18082ff47d03b10c02e03951f9441dbe93041" - integrity sha512-gvmeI/FNaS586/rQflhRrNvDo8JLupIWQ935Le/brk6x3w8OEEs9JT2WUtm2icvTe15+iWY9rdq3wp3G+6zh1w== +"@abp/star-rating-svg@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/star-rating-svg/-/star-rating-svg-8.2.3.tgz#b75a1734ec280d616ce6655ce1ba56fc98d326a8" + integrity sha512-7oWlRfZcNE0fCYJpMTpocQW1xmyUjiobHAiUEe3mYBwAE9RNaesz8hr0/+TjCYxzyWdrjCcj8hkmVVejzu+lxA== dependencies: - "@abp/jquery" "~8.2.2" + "@abp/jquery" "~8.2.3" star-rating-svg "^3.5.0" -"@abp/sweetalert2@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-8.2.2.tgz#1c75ec9ef1df2eec6304368667052d8ff9c9e795" - integrity sha512-yNgVxJ6E/cEtc8DYn00BtF9XFLShlZRsAnsipiP74YDvQKWUQSnwi70QoHEYDk2tJ+RsXqtZudvrKv8TyH/ijQ== +"@abp/sweetalert2@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-8.2.3.tgz#a82d674e262e9db89bc219ac350cae8ef17d7669" + integrity sha512-ap8vOgkKbmhAmDfVmEJPyVbIzA3V3mi9SvP/OLaNYEaMG0AppYf3iiSvC+6TA+qAFQuF5fI1oKUcsiE68uQGjw== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" sweetalert2 "^11.3.6" -"@abp/timeago@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-8.2.2.tgz#8af9558d325b2f2f9d9c5b1f90ac9eaf5531429b" - integrity sha512-ILdMeCTDNvmVOSm8Xc9ppL1xI1NoDzLbUCUojI7mvEFCE8sw3QGiFGhW6W7kYcoD7sRkxFl1Jn5V/urpAiQwaQ== +"@abp/timeago@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-8.2.3.tgz#dede68da0b5e252a573b0a1c5a9e4c831bc3c820" + integrity sha512-AbYf35a5M4QMAFK3aV6JE7QHR3GzpOX1zsun39i+97ZrNZf6do/eIgDx6dolTlSb0AsHf8qCrf7T6o1kIaXQ2w== dependencies: - "@abp/jquery" "~8.2.2" + "@abp/jquery" "~8.2.3" timeago "^1.6.7" -"@abp/toastr@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-8.2.2.tgz#a59d5b29e43698dbb614792bfd51185453859a7f" - integrity sha512-I4iiXV/SSXiD4UGM5oVsg6m6p4XmuxvqWmjOLSyoUfJQMC378mzNX0Ec9hYIY42C+GS2NalKtoaaYzBfcEtwoQ== +"@abp/toastr@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-8.2.3.tgz#77767666d578c05f039e84178c428370f6f10802" + integrity sha512-V1H0Efik/kGsRuTNPl//FsoH/8VU58S1K4GQ9k2V1bi8INaC/kU//I9frwOJsXd55imvsbmzh4XzrJ574eU84w== dependencies: - "@abp/jquery" "~8.2.2" + "@abp/jquery" "~8.2.3" toastr "^2.1.4" -"@abp/tui-editor@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/tui-editor/-/tui-editor-8.2.2.tgz#07212ebb19faf30074711943ac7f4f604c2c181e" - integrity sha512-JH3sAXiz1esdTJ4qUd3FQmWgTtChC9bEZYNvR+zxWQdsXV4IKcugcwZnktXhakEJOdjx4aHXLm8wwj1Stil0Vw== +"@abp/tui-editor@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/tui-editor/-/tui-editor-8.2.3.tgz#7f810481cd109e88bb67890e8daae7ae0a94c79d" + integrity sha512-rWl1WYwkzRZXXG5/ndU6ve9NZL73b2gTne6FShR36T7LdsmUZp4yuF6g956dvObUOw1Uhyo7TvvUcC72pKD8aA== dependencies: - "@abp/jquery" "~8.2.2" - "@abp/prismjs" "~8.2.2" + "@abp/jquery" "~8.2.3" + "@abp/prismjs" "~8.2.3" -"@abp/uppy@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/uppy/-/uppy-8.2.2.tgz#fd03486da77ac663e998223614c9f3b0d287f104" - integrity sha512-qDbYGQdMf2KST1VqkO4DQmBeUv/XObQ+wO6hVVzKnMmM5o+Ii5eiKYB6t3DAiJuP51UA3LO2h55qoVbgoJVghA== +"@abp/uppy@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/uppy/-/uppy-8.2.3.tgz#a7938f9a9c6268c34688911ccc87d7f35c8dfa18" + integrity sha512-Z4mfhBqBkiyyJdBRs1Il0zLd345PzjY1a/4Nk9w2JnsqFncj/BUvATPLTuqaa4I2n5ZbHueuYf3Q94LBVL2h+g== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" uppy "^3.0.0" -"@abp/utils@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-8.2.2.tgz#84035d36e968c8ecdeee3c7617aa45bfeb3f6afd" - integrity sha512-70hmgTd7N63AnanzZYUWpobckhPzplBjlRmMhIi+9WZLQfxWpM/EN6l+qQndjAMMvgFl/vW03BUJh1fL9kGynA== +"@abp/utils@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-8.2.3.tgz#05e3d419ee9a6228f7ed4f86e8fd03f3ce57ed27" + integrity sha512-WMs/okBxGitkGRdsikByyJLFXRSD/DPfBWZdDhU4+TvcQmnTqog9S75kZ8CUpUe/wwDHYsY51ef6N6jOfkGTFQ== dependencies: just-compare "^2.3.0" diff --git a/modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo.CmsKit.Admin.Application.Contracts.abppkg.analyze.json b/modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo.CmsKit.Admin.Application.Contracts.abppkg.analyze.json index b89faf42fe..866d8d6dc8 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo.CmsKit.Admin.Application.Contracts.abppkg.analyze.json +++ b/modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo.CmsKit.Admin.Application.Contracts.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.CmsKit.Admin.Application.Contracts", - "hash": "ff0f4d058f512abcca9b3b61a7bb300e", + "hash": "", "contents": [ { "namespace": "Volo.CmsKit.Admin", @@ -60,7 +60,7 @@ "summary": null }, { - "displayName": "Comment Management", + "displayName": "Comment management", "isEnabled": true, "contentType": "permission", "name": "CmsKit.Comments", @@ -74,7 +74,7 @@ "summary": null }, { - "displayName": "Tag Management", + "displayName": "Tag management", "isEnabled": true, "contentType": "permission", "name": "CmsKit.Tags", @@ -102,7 +102,7 @@ "summary": null }, { - "displayName": "Page Management", + "displayName": "Page management", "isEnabled": true, "contentType": "permission", "name": "CmsKit.Pages", @@ -130,14 +130,14 @@ "summary": null }, { - "displayName": "Set As Home Page", + "displayName": "Set as home page", "isEnabled": true, "contentType": "permission", "name": "CmsKit.Pages.SetAsHomePage", "summary": null }, { - "displayName": "Blog Management", + "displayName": "Blog management", "isEnabled": true, "contentType": "permission", "name": "CmsKit.Blogs", @@ -172,7 +172,7 @@ "summary": null }, { - "displayName": "Blog Post Management", + "displayName": "Blog post management", "isEnabled": true, "contentType": "permission", "name": "CmsKit.BlogPosts", @@ -207,7 +207,7 @@ "summary": null }, { - "displayName": "Menu Management", + "displayName": "Menu management", "isEnabled": true, "contentType": "permission", "name": "CmsKit.Menus", @@ -235,7 +235,7 @@ "summary": null }, { - "displayName": "Global Resources", + "displayName": "Global resources", "isEnabled": true, "contentType": "permission", "name": "CmsKit.GlobalResources", diff --git a/modules/cms-kit/src/Volo.CmsKit.Admin.Application/Volo.CmsKit.Admin.Application.abppkg.analyze.json b/modules/cms-kit/src/Volo.CmsKit.Admin.Application/Volo.CmsKit.Admin.Application.abppkg.analyze.json index e58e8fb34a..67d89bcb09 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Admin.Application/Volo.CmsKit.Admin.Application.abppkg.analyze.json +++ b/modules/cms-kit/src/Volo.CmsKit.Admin.Application/Volo.CmsKit.Admin.Application.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.CmsKit.Admin.Application", - "hash": "1cf0db9a201c7d8143e4f8efb6218d59", + "hash": "", "contents": [ { "namespace": "Volo.CmsKit.Admin", @@ -136,6 +136,7 @@ "methods": [ { "returnType": "Void", + "namespace": "Volo.CmsKit.Admin.Tags", "name": "AddTagToEntityAsync", "summary": null, "isAsync": true, @@ -152,6 +153,7 @@ }, { "returnType": "Void", + "namespace": "Volo.CmsKit.Admin.Tags", "name": "RemoveTagFromEntityAsync", "summary": null, "isAsync": true, @@ -168,6 +170,7 @@ }, { "returnType": "Void", + "namespace": "Volo.CmsKit.Admin.Tags", "name": "SetEntityTagsAsync", "summary": null, "isAsync": true, @@ -296,6 +299,7 @@ "methods": [ { "returnType": "TagDto", + "namespace": "Volo.CmsKit.Admin.Tags", "name": "CreateAsync", "summary": null, "isAsync": true, @@ -312,6 +316,7 @@ }, { "returnType": "TagDto", + "namespace": "Volo.CmsKit.Admin.Tags", "name": "UpdateAsync", "summary": null, "isAsync": true, @@ -333,6 +338,7 @@ }, { "returnType": "List", + "namespace": "Volo.CmsKit.Admin.Tags", "name": "GetTagDefinitionsAsync", "summary": null, "isAsync": true, @@ -343,6 +349,7 @@ }, { "returnType": "TagDto", + "namespace": "Volo.CmsKit.Admin.Tags", "name": "GetAsync", "summary": null, "isAsync": true, @@ -359,6 +366,7 @@ }, { "returnType": "PagedResultDto", + "namespace": "Volo.CmsKit.Admin.Tags", "name": "GetListAsync", "summary": null, "isAsync": true, @@ -375,6 +383,7 @@ }, { "returnType": "Void", + "namespace": "Volo.CmsKit.Admin.Tags", "name": "DeleteAsync", "summary": null, "isAsync": true, @@ -497,6 +506,7 @@ "methods": [ { "returnType": "PageDto", + "namespace": "Volo.CmsKit.Admin.Pages", "name": "GetAsync", "summary": null, "isAsync": true, @@ -513,6 +523,7 @@ }, { "returnType": "PagedResultDto", + "namespace": "Volo.CmsKit.Admin.Pages", "name": "GetListAsync", "summary": null, "isAsync": true, @@ -529,6 +540,7 @@ }, { "returnType": "PageDto", + "namespace": "Volo.CmsKit.Admin.Pages", "name": "CreateAsync", "summary": null, "isAsync": true, @@ -545,6 +557,7 @@ }, { "returnType": "PageDto", + "namespace": "Volo.CmsKit.Admin.Pages", "name": "UpdateAsync", "summary": null, "isAsync": true, @@ -566,6 +579,7 @@ }, { "returnType": "Void", + "namespace": "Volo.CmsKit.Admin.Pages", "name": "DeleteAsync", "summary": null, "isAsync": true, @@ -582,6 +596,7 @@ }, { "returnType": "Void", + "namespace": "Volo.CmsKit.Admin.Pages", "name": "SetAsHomePageAsync", "summary": null, "isAsync": true, @@ -668,6 +683,7 @@ "methods": [ { "returnType": "ListResultDto", + "namespace": "Volo.CmsKit.Admin.Menus", "name": "GetListAsync", "summary": null, "isAsync": true, @@ -677,7 +693,8 @@ "parameters": [] }, { - "returnType": "MenuItemDto", + "returnType": "MenuItemWithDetailsDto", + "namespace": "Volo.CmsKit.Admin.Menus", "name": "GetAsync", "summary": null, "isAsync": true, @@ -694,6 +711,7 @@ }, { "returnType": "MenuItemDto", + "namespace": "Volo.CmsKit.Admin.Menus", "name": "CreateAsync", "summary": null, "isAsync": true, @@ -710,6 +728,7 @@ }, { "returnType": "MenuItemDto", + "namespace": "Volo.CmsKit.Admin.Menus", "name": "UpdateAsync", "summary": null, "isAsync": true, @@ -731,6 +750,7 @@ }, { "returnType": "Void", + "namespace": "Volo.CmsKit.Admin.Menus", "name": "DeleteAsync", "summary": null, "isAsync": true, @@ -747,6 +767,7 @@ }, { "returnType": "Void", + "namespace": "Volo.CmsKit.Admin.Menus", "name": "MoveMenuItemAsync", "summary": null, "isAsync": true, @@ -768,6 +789,7 @@ }, { "returnType": "PagedResultDto", + "namespace": "Volo.CmsKit.Admin.Menus", "name": "GetPageLookupAsync", "summary": null, "isAsync": true, @@ -854,6 +876,7 @@ "methods": [ { "returnType": "MediaDescriptorDto", + "namespace": "Volo.CmsKit.Admin.MediaDescriptors", "name": "CreateAsync", "summary": null, "isAsync": true, @@ -875,6 +898,7 @@ }, { "returnType": "Void", + "namespace": "Volo.CmsKit.Admin.MediaDescriptors", "name": "DeleteAsync", "summary": null, "isAsync": true, @@ -961,6 +985,7 @@ "methods": [ { "returnType": "GlobalResourcesDto", + "namespace": "Volo.CmsKit.Admin.GlobalResources", "name": "GetAsync", "summary": null, "isAsync": true, @@ -971,6 +996,7 @@ }, { "returnType": "Void", + "namespace": "Volo.CmsKit.Admin.GlobalResources", "name": "SetGlobalResourcesAsync", "summary": null, "isAsync": true, @@ -1057,6 +1083,7 @@ "methods": [ { "returnType": "PagedResultDto", + "namespace": "Volo.CmsKit.Admin.Comments", "name": "GetListAsync", "summary": null, "isAsync": true, @@ -1073,6 +1100,7 @@ }, { "returnType": "CommentWithAuthorDto", + "namespace": "Volo.CmsKit.Admin.Comments", "name": "GetAsync", "summary": null, "isAsync": true, @@ -1089,6 +1117,7 @@ }, { "returnType": "Void", + "namespace": "Volo.CmsKit.Admin.Comments", "name": "DeleteAsync", "summary": null, "isAsync": true, @@ -1217,6 +1246,7 @@ "methods": [ { "returnType": "BlogDto", + "namespace": "Volo.CmsKit.Admin.Blogs", "name": "GetAsync", "summary": null, "isAsync": true, @@ -1233,6 +1263,7 @@ }, { "returnType": "PagedResultDto", + "namespace": "Volo.CmsKit.Admin.Blogs", "name": "GetListAsync", "summary": null, "isAsync": true, @@ -1249,6 +1280,7 @@ }, { "returnType": "BlogDto", + "namespace": "Volo.CmsKit.Admin.Blogs", "name": "CreateAsync", "summary": null, "isAsync": true, @@ -1265,6 +1297,7 @@ }, { "returnType": "BlogDto", + "namespace": "Volo.CmsKit.Admin.Blogs", "name": "UpdateAsync", "summary": null, "isAsync": true, @@ -1286,6 +1319,7 @@ }, { "returnType": "Void", + "namespace": "Volo.CmsKit.Admin.Blogs", "name": "DeleteAsync", "summary": null, "isAsync": true, @@ -1372,6 +1406,7 @@ "methods": [ { "returnType": "List", + "namespace": "Volo.CmsKit.Admin.Blogs", "name": "GetListAsync", "summary": null, "isAsync": true, @@ -1388,6 +1423,7 @@ }, { "returnType": "Void", + "namespace": "Volo.CmsKit.Admin.Blogs", "name": "SetAsync", "summary": null, "isAsync": true, @@ -1515,6 +1551,7 @@ "methods": [ { "returnType": "BlogPostDto", + "namespace": "Volo.CmsKit.Admin.Blogs", "name": "CreateAsync", "summary": null, "isAsync": true, @@ -1531,6 +1568,7 @@ }, { "returnType": "BlogPostDto", + "namespace": "Volo.CmsKit.Admin.Blogs", "name": "UpdateAsync", "summary": null, "isAsync": true, @@ -1552,6 +1590,7 @@ }, { "returnType": "BlogPostDto", + "namespace": "Volo.CmsKit.Admin.Blogs", "name": "GetAsync", "summary": null, "isAsync": true, @@ -1568,6 +1607,7 @@ }, { "returnType": "PagedResultDto", + "namespace": "Volo.CmsKit.Admin.Blogs", "name": "GetListAsync", "summary": null, "isAsync": true, @@ -1584,6 +1624,7 @@ }, { "returnType": "Void", + "namespace": "Volo.CmsKit.Admin.Blogs", "name": "DeleteAsync", "summary": null, "isAsync": true, @@ -1600,6 +1641,7 @@ }, { "returnType": "Void", + "namespace": "Volo.CmsKit.Admin.Blogs", "name": "PublishAsync", "summary": null, "isAsync": true, @@ -1616,6 +1658,7 @@ }, { "returnType": "Void", + "namespace": "Volo.CmsKit.Admin.Blogs", "name": "DraftAsync", "summary": null, "isAsync": true, @@ -1632,6 +1675,7 @@ }, { "returnType": "BlogPostDto", + "namespace": "Volo.CmsKit.Admin.Blogs", "name": "CreateAndPublishAsync", "summary": null, "isAsync": true, @@ -1648,6 +1692,7 @@ }, { "returnType": "Void", + "namespace": "Volo.CmsKit.Admin.Blogs", "name": "SendToReviewAsync", "summary": null, "isAsync": true, @@ -1664,6 +1709,7 @@ }, { "returnType": "BlogPostDto", + "namespace": "Volo.CmsKit.Admin.Blogs", "name": "CreateAndSendToReviewAsync", "summary": null, "isAsync": true, @@ -1680,6 +1726,7 @@ }, { "returnType": "Boolean", + "namespace": "Volo.CmsKit.Admin.Blogs", "name": "HasBlogPostWaitingForReviewAsync", "summary": null, "isAsync": true, diff --git a/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/Volo.CmsKit.Admin.HttpApi.Client.abppkg.analyze.json b/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/Volo.CmsKit.Admin.HttpApi.Client.abppkg.analyze.json index 5f9d12dd8c..15d3a881b5 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/Volo.CmsKit.Admin.HttpApi.Client.abppkg.analyze.json +++ b/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/Volo.CmsKit.Admin.HttpApi.Client.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.CmsKit.Admin.HttpApi.Client", - "hash": "ef3894ffa45c8acb929d4feba96f8075", + "hash": "", "contents": [ { "namespace": "Volo.CmsKit.Admin", diff --git a/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi/Volo.CmsKit.Admin.HttpApi.abppkg.analyze.json b/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi/Volo.CmsKit.Admin.HttpApi.abppkg.analyze.json index a616d94e35..e18611bd30 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi/Volo.CmsKit.Admin.HttpApi.abppkg.analyze.json +++ b/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi/Volo.CmsKit.Admin.HttpApi.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.CmsKit.Admin.HttpApi", - "hash": "5d180189476676a5483931264591c077", + "hash": "", "contents": [ { "namespace": "Volo.CmsKit.Admin", diff --git a/modules/cms-kit/src/Volo.CmsKit.Admin.Web/Volo.CmsKit.Admin.Web.abppkg.analyze.json b/modules/cms-kit/src/Volo.CmsKit.Admin.Web/Volo.CmsKit.Admin.Web.abppkg.analyze.json index 87cdbecc70..69bd893ca3 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Admin.Web/Volo.CmsKit.Admin.Web.abppkg.analyze.json +++ b/modules/cms-kit/src/Volo.CmsKit.Admin.Web/Volo.CmsKit.Admin.Web.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.CmsKit.Admin.Web", - "hash": "fa6d7b5a529c2c76386141dc3cb12bba", + "hash": "", "contents": [ { "namespace": "Volo.CmsKit.Admin.Web", @@ -63,6 +63,126 @@ "contentType": "abpModule", "name": "CmsKitAdminWebModule", "summary": null + }, + { + "namespace": "Volo.CmsKit.Admin.Web.Pages.CmsKit.Tags", + "contentType": "webPage", + "name": "CreateModalModel", + "summary": null + }, + { + "namespace": "Volo.CmsKit.Admin.Web.Pages.CmsKit.Tags", + "contentType": "webPage", + "name": "EditModalModel", + "summary": null + }, + { + "namespace": "Volo.CmsKit.Admin.Web.Pages.CmsKit.Tags", + "contentType": "webPage", + "name": "IndexModel", + "summary": null + }, + { + "namespace": "Volo.CmsKit.Admin.Web.Pages.CmsKit.Pages", + "contentType": "webPage", + "name": "CreateModel", + "summary": null + }, + { + "namespace": "Volo.CmsKit.Admin.Web.Pages.CmsKit.Pages", + "contentType": "webPage", + "name": "IndexModel", + "summary": null + }, + { + "namespace": "Volo.CmsKit.Admin.Web.Pages.CmsKit.Pages", + "contentType": "webPage", + "name": "UpdateModel", + "summary": null + }, + { + "namespace": "Volo.CmsKit.Admin.Web.Pages.CmsKit.Menus.MenuItems", + "contentType": "webPage", + "name": "CreateModalModel", + "summary": null + }, + { + "namespace": "Volo.CmsKit.Admin.Web.Pages.CmsKit.Menus.MenuItems", + "contentType": "webPage", + "name": "IndexModel", + "summary": null + }, + { + "namespace": "Volo.CmsKit.Admin.Web.Pages.CmsKit.Menus.MenuItems", + "contentType": "webPage", + "name": "UpdateModalModel", + "summary": null + }, + { + "namespace": "Volo.CmsKit.Admin.Web.Pages.CmsKit.GlobalResources", + "contentType": "webPage", + "name": "IndexModel", + "summary": null + }, + { + "namespace": "Volo.CmsKit.Admin.Web.Pages.CmsKit.Contents", + "contentType": "webPage", + "name": "AddWidgetModal", + "summary": null + }, + { + "namespace": "Volo.CmsKit.Admin.Web.Pages.CmsKit.Comments", + "contentType": "webPage", + "name": "DetailsModel", + "summary": null + }, + { + "namespace": "Volo.CmsKit.Admin.Web.Pages.CmsKit.Comments", + "contentType": "webPage", + "name": "IndexModel", + "summary": null + }, + { + "namespace": "Volo.CmsKit.Admin.Web.Pages.CmsKit.Blogs", + "contentType": "webPage", + "name": "CreateModalModel", + "summary": null + }, + { + "namespace": "Volo.CmsKit.Admin.Web.Pages.CmsKit.Blogs", + "contentType": "webPage", + "name": "FeaturesModalModel", + "summary": null + }, + { + "namespace": "Volo.CmsKit.Admin.Web.Pages.CmsKit.Blogs", + "contentType": "webPage", + "name": "IndexModel", + "summary": null + }, + { + "namespace": "Volo.CmsKit.Admin.Web.Pages.CmsKit.Blogs", + "contentType": "webPage", + "name": "UpdateModalModel", + "summary": null + }, + { + "namespace": "Volo.CmsKit.Admin.Web.Pages.CmsKit.BlogPosts", + "contentType": "webPage", + "name": "CreateModel", + "summary": null + }, + { + "namespace": "Volo.CmsKit.Admin.Web.Pages.CmsKit.BlogPosts", + "contentType": "webPage", + "name": "IndexModel", + "summary": null + }, + { + "namespace": "Volo.CmsKit.Admin.Web.Pages.CmsKit.BlogPosts", + "contentType": "webPage", + "name": "UpdateModel", + "summary": null } ] } \ No newline at end of file diff --git a/modules/cms-kit/src/Volo.CmsKit.Application.Contracts/Volo.CmsKit.Application.Contracts.abppkg.analyze.json b/modules/cms-kit/src/Volo.CmsKit.Application.Contracts/Volo.CmsKit.Application.Contracts.abppkg.analyze.json index 31c2e8b638..f99448fb3a 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Application.Contracts/Volo.CmsKit.Application.Contracts.abppkg.analyze.json +++ b/modules/cms-kit/src/Volo.CmsKit.Application.Contracts/Volo.CmsKit.Application.Contracts.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.CmsKit.Application.Contracts", - "hash": "66c9cd5f35e614372742f30cffd8bd6f", + "hash": "", "contents": [ { "namespace": "Volo.CmsKit", diff --git a/modules/cms-kit/src/Volo.CmsKit.Application/Volo.CmsKit.Application.abppkg.analyze.json b/modules/cms-kit/src/Volo.CmsKit.Application/Volo.CmsKit.Application.abppkg.analyze.json index 176ef47816..f9241cd762 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Application/Volo.CmsKit.Application.abppkg.analyze.json +++ b/modules/cms-kit/src/Volo.CmsKit.Application/Volo.CmsKit.Application.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.CmsKit.Application", - "hash": "00e09a7a3302312d77b39946caa4bfeb", + "hash": "", "contents": [ { "namespace": "Volo.CmsKit", diff --git a/modules/cms-kit/src/Volo.CmsKit.Common.Application.Contracts/Volo.CmsKit.Common.Application.Contracts.abppkg.analyze.json b/modules/cms-kit/src/Volo.CmsKit.Common.Application.Contracts/Volo.CmsKit.Common.Application.Contracts.abppkg.analyze.json index 3c7c768c62..83c5e5ef19 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Common.Application.Contracts/Volo.CmsKit.Common.Application.Contracts.abppkg.analyze.json +++ b/modules/cms-kit/src/Volo.CmsKit.Common.Application.Contracts/Volo.CmsKit.Common.Application.Contracts.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.CmsKit.Common.Application.Contracts", - "hash": "784cb8875b468f63331845f2e59b803c", + "hash": "", "contents": [ { "namespace": "Volo.CmsKit", diff --git a/modules/cms-kit/src/Volo.CmsKit.Common.Application/Volo.CmsKit.Common.Application.abppkg.analyze.json b/modules/cms-kit/src/Volo.CmsKit.Common.Application/Volo.CmsKit.Common.Application.abppkg.analyze.json index cc91790057..97e0500737 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Common.Application/Volo.CmsKit.Common.Application.abppkg.analyze.json +++ b/modules/cms-kit/src/Volo.CmsKit.Common.Application/Volo.CmsKit.Common.Application.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.CmsKit.Common.Application", - "hash": "9c83bf387d563350ffb80d42d2884a92", + "hash": "", "contents": [ { "namespace": "Volo.CmsKit", @@ -141,6 +141,7 @@ "methods": [ { "returnType": "List", + "namespace": "Volo.CmsKit.Tags", "name": "GetAllRelatedTagsAsync", "summary": null, "isAsync": true, @@ -159,6 +160,28 @@ "isOptional": false } ] + }, + { + "returnType": "List", + "namespace": "Volo.CmsKit.Tags", + "name": "GetPopularTagsAsync", + "summary": null, + "isAsync": true, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "String", + "name": "entityType", + "isOptional": false + }, + { + "type": "Int32", + "name": "maxCount", + "isOptional": false + } + ] } ], "contentType": "applicationService", @@ -232,6 +255,7 @@ "methods": [ { "returnType": "RemoteStreamContent", + "namespace": "Volo.CmsKit.MediaDescriptors", "name": "DownloadAsync", "summary": null, "isAsync": true, @@ -318,6 +342,7 @@ "methods": [ { "returnType": "BlogFeatureDto", + "namespace": "Volo.CmsKit.Blogs", "name": "GetOrDefaultAsync", "summary": null, "isAsync": true, diff --git a/modules/cms-kit/src/Volo.CmsKit.Common.HttpApi.Client/Volo.CmsKit.Common.HttpApi.Client.abppkg.analyze.json b/modules/cms-kit/src/Volo.CmsKit.Common.HttpApi.Client/Volo.CmsKit.Common.HttpApi.Client.abppkg.analyze.json index 07cf87050b..878f2a794c 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Common.HttpApi.Client/Volo.CmsKit.Common.HttpApi.Client.abppkg.analyze.json +++ b/modules/cms-kit/src/Volo.CmsKit.Common.HttpApi.Client/Volo.CmsKit.Common.HttpApi.Client.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.CmsKit.Common.HttpApi.Client", - "hash": "e7ad713defbe5999262cd31144491fae", + "hash": "", "contents": [ { "namespace": "Volo.CmsKit", diff --git a/modules/cms-kit/src/Volo.CmsKit.Common.HttpApi/Volo.CmsKit.Common.HttpApi.abppkg.analyze.json b/modules/cms-kit/src/Volo.CmsKit.Common.HttpApi/Volo.CmsKit.Common.HttpApi.abppkg.analyze.json index 9fe40718c1..d89526e298 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Common.HttpApi/Volo.CmsKit.Common.HttpApi.abppkg.analyze.json +++ b/modules/cms-kit/src/Volo.CmsKit.Common.HttpApi/Volo.CmsKit.Common.HttpApi.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.CmsKit.Common.HttpApi", - "hash": "a5120d7c193b3e67658db2321ee7f3cf", + "hash": "", "contents": [ { "namespace": "Volo.CmsKit", diff --git a/modules/cms-kit/src/Volo.CmsKit.Common.Web/Volo.CmsKit.Common.Web.abppkg.analyze.json b/modules/cms-kit/src/Volo.CmsKit.Common.Web/Volo.CmsKit.Common.Web.abppkg.analyze.json index 4fb7b3751a..6b69cfe938 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Common.Web/Volo.CmsKit.Common.Web.abppkg.analyze.json +++ b/modules/cms-kit/src/Volo.CmsKit.Common.Web/Volo.CmsKit.Common.Web.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.CmsKit.Common.Web", - "hash": "f301d4e5431930d0c906428b835e9b6d", + "hash": "", "contents": [ { "namespace": "Volo.CmsKit.Web", diff --git a/modules/cms-kit/src/Volo.CmsKit.Domain.Shared/Volo.CmsKit.Domain.Shared.abppkg.analyze.json b/modules/cms-kit/src/Volo.CmsKit.Domain.Shared/Volo.CmsKit.Domain.Shared.abppkg.analyze.json index 5ae7c0efe3..1a7b4bd11b 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Domain.Shared/Volo.CmsKit.Domain.Shared.abppkg.analyze.json +++ b/modules/cms-kit/src/Volo.CmsKit.Domain.Shared/Volo.CmsKit.Domain.Shared.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.CmsKit.Domain.Shared", - "hash": "bdbefadcd3677ae51a666b11c07bee07", + "hash": "", "contents": [ { "namespace": "Volo.CmsKit", diff --git a/modules/cms-kit/src/Volo.CmsKit.Domain/Volo.CmsKit.Domain.abppkg.analyze.json b/modules/cms-kit/src/Volo.CmsKit.Domain/Volo.CmsKit.Domain.abppkg.analyze.json index a6e5c0aa93..23d55caf3c 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Domain/Volo.CmsKit.Domain.abppkg.analyze.json +++ b/modules/cms-kit/src/Volo.CmsKit.Domain/Volo.CmsKit.Domain.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.CmsKit.Domain", - "hash": "a330d75df32c8b504c193f59fe9554e5", + "hash": "", "contents": [ { "namespace": "Volo.CmsKit", @@ -157,7 +157,7 @@ { "name": "IMultiTenant", "namespace": "Volo.Abp.MultiTenancy", - "declaringAssemblyName": "Volo.Abp.MultiTenancy", + "declaringAssemblyName": "Volo.Abp.MultiTenancy.Abstractions", "fullName": "Volo.Abp.MultiTenancy.IMultiTenant" }, { @@ -170,6 +170,7 @@ "methods": [ { "returnType": "Boolean", + "namespace": "Volo.CmsKit.Users", "name": "Update", "summary": null, "isAsync": false, @@ -353,13 +354,14 @@ { "name": "IMultiTenant", "namespace": "Volo.Abp.MultiTenancy", - "declaringAssemblyName": "Volo.Abp.MultiTenancy", + "declaringAssemblyName": "Volo.Abp.MultiTenancy.Abstractions", "fullName": "Volo.Abp.MultiTenancy.IMultiTenant" } ], "methods": [ { "returnType": "Void", + "namespace": "Volo.CmsKit.Tags", "name": "SetName", "summary": null, "isAsync": false, @@ -376,6 +378,7 @@ }, { "returnType": "Void", + "namespace": "Volo.CmsKit.Tags", "name": "SetEntityType", "summary": null, "isAsync": false, @@ -469,7 +472,7 @@ { "name": "IMultiTenant", "namespace": "Volo.Abp.MultiTenancy", - "declaringAssemblyName": "Volo.Abp.MultiTenancy", + "declaringAssemblyName": "Volo.Abp.MultiTenancy.Abstractions", "fullName": "Volo.Abp.MultiTenancy.IMultiTenant" } ], @@ -568,6 +571,7 @@ "methods": [ { "returnType": "Void", + "namespace": "Volo.CmsKit.Ratings", "name": "SetStarCount", "summary": null, "isAsync": false, @@ -736,13 +740,20 @@ { "name": "IMultiTenant", "namespace": "Volo.Abp.MultiTenancy", - "declaringAssemblyName": "Volo.Abp.MultiTenancy", + "declaringAssemblyName": "Volo.Abp.MultiTenancy.Abstractions", "fullName": "Volo.Abp.MultiTenancy.IMultiTenant" + }, + { + "name": "IHasEntityVersion", + "namespace": "Volo.Abp.Auditing", + "declaringAssemblyName": "Volo.Abp.Auditing.Contracts", + "fullName": "Volo.Abp.Auditing.IHasEntityVersion" } ], "methods": [ { "returnType": "Void", + "namespace": "Volo.CmsKit.Pages", "name": "SetTitle", "summary": null, "isAsync": false, @@ -759,6 +770,7 @@ }, { "returnType": "Void", + "namespace": "Volo.CmsKit.Pages", "name": "SetContent", "summary": null, "isAsync": false, @@ -775,6 +787,7 @@ }, { "returnType": "Void", + "namespace": "Volo.CmsKit.Pages", "name": "SetScript", "summary": null, "isAsync": false, @@ -791,6 +804,7 @@ }, { "returnType": "Void", + "namespace": "Volo.CmsKit.Pages", "name": "SetStyle", "summary": null, "isAsync": false, @@ -845,6 +859,11 @@ "type": "System.Boolean", "name": "IsHomePage", "summary": null + }, + { + "type": "System.Int32", + "name": "EntityVersion", + "summary": null } ], "contentType": "aggregateRoot", @@ -940,13 +959,14 @@ { "name": "IMultiTenant", "namespace": "Volo.Abp.MultiTenancy", - "declaringAssemblyName": "Volo.Abp.MultiTenancy", + "declaringAssemblyName": "Volo.Abp.MultiTenancy.Abstractions", "fullName": "Volo.Abp.MultiTenancy.IMultiTenant" } ], "methods": [ { "returnType": "Void", + "namespace": "Volo.CmsKit.Menus", "name": "SetDisplayName", "summary": null, "isAsync": false, @@ -963,6 +983,7 @@ }, { "returnType": "Void", + "namespace": "Volo.CmsKit.Menus", "name": "SetUrl", "summary": null, "isAsync": false, @@ -1156,13 +1177,14 @@ { "name": "IMultiTenant", "namespace": "Volo.Abp.MultiTenancy", - "declaringAssemblyName": "Volo.Abp.MultiTenancy", + "declaringAssemblyName": "Volo.Abp.MultiTenancy.Abstractions", "fullName": "Volo.Abp.MultiTenancy.IMultiTenant" } ], "methods": [ { "returnType": "Void", + "namespace": "Volo.CmsKit.MediaDescriptors", "name": "SetName", "summary": null, "isAsync": false, @@ -1302,13 +1324,14 @@ { "name": "IMultiTenant", "namespace": "Volo.Abp.MultiTenancy", - "declaringAssemblyName": "Volo.Abp.MultiTenancy", + "declaringAssemblyName": "Volo.Abp.MultiTenancy.Abstractions", "fullName": "Volo.Abp.MultiTenancy.IMultiTenant" } ], "methods": [ { "returnType": "Void", + "namespace": "Volo.CmsKit.GlobalResources", "name": "SetValue", "summary": null, "isAsync": false, @@ -1414,13 +1437,14 @@ { "name": "IMultiTenant", "namespace": "Volo.Abp.MultiTenancy", - "declaringAssemblyName": "Volo.Abp.MultiTenancy", + "declaringAssemblyName": "Volo.Abp.MultiTenancy.Abstractions", "fullName": "Volo.Abp.MultiTenancy.IMultiTenant" } ], "methods": [ { "returnType": "Void", + "namespace": "Volo.CmsKit.Comments", "name": "SetText", "summary": null, "isAsync": false, @@ -1475,6 +1499,16 @@ "type": "System.DateTime", "name": "CreationTime", "summary": null + }, + { + "type": "System.String", + "name": "Url", + "summary": null + }, + { + "type": "System.String", + "name": "IdempotencyToken", + "summary": null } ], "contentType": "aggregateRoot", @@ -1594,13 +1628,14 @@ { "name": "IMultiTenant", "namespace": "Volo.Abp.MultiTenancy", - "declaringAssemblyName": "Volo.Abp.MultiTenancy", + "declaringAssemblyName": "Volo.Abp.MultiTenancy.Abstractions", "fullName": "Volo.Abp.MultiTenancy.IMultiTenant" } ], "methods": [ { "returnType": "Void", + "namespace": "Volo.CmsKit.Blogs", "name": "SetName", "summary": null, "isAsync": false, @@ -1617,6 +1652,7 @@ }, { "returnType": "Void", + "namespace": "Volo.CmsKit.Blogs", "name": "SetSlug", "summary": null, "isAsync": false, @@ -1907,13 +1943,20 @@ { "name": "IMultiTenant", "namespace": "Volo.Abp.MultiTenancy", - "declaringAssemblyName": "Volo.Abp.MultiTenancy", + "declaringAssemblyName": "Volo.Abp.MultiTenancy.Abstractions", "fullName": "Volo.Abp.MultiTenancy.IMultiTenant" + }, + { + "name": "IHasEntityVersion", + "namespace": "Volo.Abp.Auditing", + "declaringAssemblyName": "Volo.Abp.Auditing.Contracts", + "fullName": "Volo.Abp.Auditing.IHasEntityVersion" } ], "methods": [ { "returnType": "Void", + "namespace": "Volo.CmsKit.Blogs", "name": "SetTitle", "summary": null, "isAsync": false, @@ -1930,6 +1973,7 @@ }, { "returnType": "Void", + "namespace": "Volo.CmsKit.Blogs", "name": "SetShortDescription", "summary": null, "isAsync": false, @@ -1946,6 +1990,7 @@ }, { "returnType": "Void", + "namespace": "Volo.CmsKit.Blogs", "name": "SetContent", "summary": null, "isAsync": false, @@ -1962,6 +2007,7 @@ }, { "returnType": "Void", + "namespace": "Volo.CmsKit.Blogs", "name": "SetDraft", "summary": null, "isAsync": false, @@ -1972,6 +2018,7 @@ }, { "returnType": "Void", + "namespace": "Volo.CmsKit.Blogs", "name": "SetPublished", "summary": null, "isAsync": false, @@ -1982,6 +2029,7 @@ }, { "returnType": "Void", + "namespace": "Volo.CmsKit.Blogs", "name": "SetWaitingForReview", "summary": null, "isAsync": false, @@ -2052,6 +2100,11 @@ "type": "Volo.CmsKit.Blogs.BlogPostStatus", "name": "Status", "summary": null + }, + { + "type": "System.Int32", + "name": "EntityVersion", + "summary": null } ], "contentType": "aggregateRoot", @@ -2069,6 +2122,7 @@ "methods": [ { "returnType": "EntityTag", + "namespace": "Volo.CmsKit.Tags", "name": "AddTagToEntityAsync", "summary": null, "isAsync": true, @@ -2105,6 +2159,7 @@ }, { "returnType": "Void", + "namespace": "Volo.CmsKit.Tags", "name": "RemoveTagFromEntityAsync", "summary": null, "isAsync": true, @@ -2141,6 +2196,7 @@ }, { "returnType": "Void", + "namespace": "Volo.CmsKit.Tags", "name": "SetEntityTagsAsync", "summary": null, "isAsync": true, @@ -2167,6 +2223,7 @@ }, { "returnType": "List", + "namespace": "Volo.CmsKit.Tags", "name": "GetEntityIdsFilteredByTagAsync", "summary": null, "isAsync": true, @@ -2193,6 +2250,7 @@ }, { "returnType": "List", + "namespace": "Volo.CmsKit.Tags", "name": "GetEntityIdsFilteredByTagNameAsync", "summary": null, "isAsync": true, @@ -2252,6 +2310,7 @@ "methods": [ { "returnType": "Tag", + "namespace": "Volo.CmsKit.Tags", "name": "GetOrAddAsync", "summary": null, "isAsync": true, @@ -2273,6 +2332,7 @@ }, { "returnType": "Tag", + "namespace": "Volo.CmsKit.Tags", "name": "CreateAsync", "summary": null, "isAsync": true, @@ -2299,6 +2359,7 @@ }, { "returnType": "Tag", + "namespace": "Volo.CmsKit.Tags", "name": "UpdateAsync", "summary": null, "isAsync": true, @@ -2348,6 +2409,7 @@ "methods": [ { "returnType": "List", + "namespace": "Volo.CmsKit.Reactions", "name": "GetReactionsAsync", "summary": null, "isAsync": true, @@ -2364,6 +2426,7 @@ }, { "returnType": "List", + "namespace": "Volo.CmsKit.Reactions", "name": "GetSummariesAsync", "summary": null, "isAsync": true, @@ -2385,6 +2448,7 @@ }, { "returnType": "UserReaction", + "namespace": "Volo.CmsKit.Reactions", "name": "GetOrCreateAsync", "summary": null, "isAsync": true, @@ -2416,6 +2480,7 @@ }, { "returnType": "Boolean", + "namespace": "Volo.CmsKit.Reactions", "name": "DeleteAsync", "summary": null, "isAsync": true, @@ -2475,6 +2540,7 @@ "methods": [ { "returnType": "Rating", + "namespace": "Volo.CmsKit.Ratings", "name": "SetStarAsync", "summary": null, "isAsync": true, @@ -2534,6 +2600,7 @@ "methods": [ { "returnType": "Page", + "namespace": "Volo.CmsKit.Pages", "name": "CreateAsync", "summary": null, "isAsync": true, @@ -2570,6 +2637,7 @@ }, { "returnType": "Void", + "namespace": "Volo.CmsKit.Pages", "name": "SetSlugAsync", "summary": null, "isAsync": true, @@ -2591,6 +2659,7 @@ }, { "returnType": "Void", + "namespace": "Volo.CmsKit.Pages", "name": "SetHomePageAsync", "summary": null, "isAsync": true, @@ -2607,6 +2676,7 @@ }, { "returnType": "Page", + "namespace": "Volo.CmsKit.Pages", "name": "GetHomePageAsync", "summary": null, "isAsync": true, @@ -2645,6 +2715,7 @@ "methods": [ { "returnType": "Void", + "namespace": "Volo.CmsKit.Menus", "name": "SetPageUrl", "summary": null, "isAsync": false, @@ -2666,6 +2737,29 @@ }, { "returnType": "Void", + "namespace": "Volo.CmsKit.Menus", + "name": "SetPageUrl", + "summary": null, + "isAsync": false, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "MenuItem", + "name": "menuItem", + "isOptional": false + }, + { + "type": "String", + "name": "url", + "isOptional": false + } + ] + }, + { + "returnType": "Void", + "namespace": "Volo.CmsKit.Menus", "name": "MoveAsync", "summary": null, "isAsync": true, @@ -2692,6 +2786,7 @@ }, { "returnType": "Void", + "namespace": "Volo.CmsKit.Menus", "name": "OrganizeTreeOrderForMenuItem", "summary": null, "isAsync": false, @@ -2741,6 +2836,7 @@ "methods": [ { "returnType": "MediaDescriptor", + "namespace": "Volo.CmsKit.MediaDescriptors", "name": "CreateAsync", "summary": null, "isAsync": true, @@ -2800,6 +2896,7 @@ "methods": [ { "returnType": "GlobalResource", + "namespace": "Volo.CmsKit.GlobalResources", "name": "SetGlobalStyleAsync", "summary": null, "isAsync": true, @@ -2816,6 +2913,7 @@ }, { "returnType": "GlobalResource", + "namespace": "Volo.CmsKit.GlobalResources", "name": "SetGlobalScriptAsync", "summary": null, "isAsync": true, @@ -2832,6 +2930,7 @@ }, { "returnType": "GlobalResource", + "namespace": "Volo.CmsKit.GlobalResources", "name": "GetGlobalStyleAsync", "summary": null, "isAsync": true, @@ -2842,6 +2941,7 @@ }, { "returnType": "GlobalResource", + "namespace": "Volo.CmsKit.GlobalResources", "name": "GetGlobalScriptAsync", "summary": null, "isAsync": true, @@ -2880,6 +2980,7 @@ "methods": [ { "returnType": "Comment", + "namespace": "Volo.CmsKit.Comments", "name": "CreateAsync", "summary": null, "isAsync": true, @@ -2907,6 +3008,11 @@ "name": "text", "isOptional": false }, + { + "type": "String", + "name": "url", + "isOptional": true + }, { "type": "Nullable", "name": "repliedCommentId", @@ -2944,6 +3050,7 @@ "methods": [ { "returnType": "Void", + "namespace": "Volo.CmsKit.Blogs", "name": "SetAsync", "summary": null, "isAsync": true, @@ -2970,6 +3077,7 @@ }, { "returnType": "Void", + "namespace": "Volo.CmsKit.Blogs", "name": "SetDefaultsAsync", "summary": null, "isAsync": true, @@ -2986,6 +3094,7 @@ }, { "returnType": "Void", + "namespace": "Volo.CmsKit.Blogs", "name": "SetIfNotSetAsync", "summary": null, "isAsync": true, @@ -3012,6 +3121,7 @@ }, { "returnType": "Void", + "namespace": "Volo.CmsKit.Blogs", "name": "SetDefaultsIfNotSetAsync", "summary": null, "isAsync": true, @@ -3056,6 +3166,7 @@ "methods": [ { "returnType": "Blog", + "namespace": "Volo.CmsKit.Blogs", "name": "CreateAsync", "summary": null, "isAsync": true, @@ -3077,6 +3188,7 @@ }, { "returnType": "Blog", + "namespace": "Volo.CmsKit.Blogs", "name": "UpdateAsync", "summary": null, "isAsync": true, @@ -3131,6 +3243,7 @@ "methods": [ { "returnType": "BlogPost", + "namespace": "Volo.CmsKit.Blogs", "name": "CreateAsync", "summary": null, "isAsync": true, @@ -3182,6 +3295,7 @@ }, { "returnType": "Void", + "namespace": "Volo.CmsKit.Blogs", "name": "SetSlugUrlAsync", "summary": null, "isAsync": true, @@ -3306,6 +3420,7 @@ "methods": [ { "returnType": "EntityTag", + "namespace": "Volo.CmsKit.Tags", "name": "FindAsync", "summary": null, "isAsync": true, @@ -3337,6 +3452,7 @@ }, { "returnType": "Void", + "namespace": "Volo.CmsKit.Tags", "name": "DeleteManyAsync", "summary": null, "isAsync": true, @@ -3363,6 +3479,7 @@ }, { "returnType": "List", + "namespace": "Volo.CmsKit.Tags", "name": "GetEntityIdsFilteredByTagAsync", "summary": null, "isAsync": true, @@ -3389,6 +3506,7 @@ }, { "returnType": "List", + "namespace": "Volo.CmsKit.Tags", "name": "GetEntityIdsFilteredByTagNameAsync", "summary": null, "isAsync": true, @@ -3468,6 +3586,7 @@ "methods": [ { "returnType": "Tag", + "namespace": "Volo.CmsKit.Tags", "name": "GetAsync", "summary": null, "isAsync": true, @@ -3494,6 +3613,7 @@ }, { "returnType": "Boolean", + "namespace": "Volo.CmsKit.Tags", "name": "AnyAsync", "summary": null, "isAsync": true, @@ -3520,6 +3640,7 @@ }, { "returnType": "Tag", + "namespace": "Volo.CmsKit.Tags", "name": "FindAsync", "summary": null, "isAsync": true, @@ -3546,6 +3667,7 @@ }, { "returnType": "List", + "namespace": "Volo.CmsKit.Tags", "name": "GetListAsync", "summary": null, "isAsync": true, @@ -3558,6 +3680,21 @@ "name": "filter", "isOptional": false }, + { + "type": "Int32", + "name": "maxResultCount", + "isOptional": true + }, + { + "type": "Int32", + "name": "skipCount", + "isOptional": true + }, + { + "type": "String", + "name": "sorting", + "isOptional": true + }, { "type": "CancellationToken", "name": "cancellationToken", @@ -3567,6 +3704,7 @@ }, { "returnType": "Int32", + "namespace": "Volo.CmsKit.Tags", "name": "GetCountAsync", "summary": null, "isAsync": true, @@ -3588,6 +3726,7 @@ }, { "returnType": "List", + "namespace": "Volo.CmsKit.Tags", "name": "GetAllRelatedTagsAsync", "summary": null, "isAsync": true, @@ -3611,6 +3750,33 @@ "isOptional": true } ] + }, + { + "returnType": "List", + "namespace": "Volo.CmsKit.Tags", + "name": "GetPopularTagsAsync", + "summary": null, + "isAsync": true, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "String", + "name": "entityType", + "isOptional": false + }, + { + "type": "Int32", + "name": "maxCount", + "isOptional": false + }, + { + "type": "CancellationToken", + "name": "cancellationToken", + "isOptional": true + } + ] } ], "contentType": "repositoryInterface", @@ -3662,6 +3828,7 @@ "methods": [ { "returnType": "UserReaction", + "namespace": "Volo.CmsKit.Reactions", "name": "FindAsync", "summary": null, "isAsync": true, @@ -3698,6 +3865,7 @@ }, { "returnType": "List", + "namespace": "Volo.CmsKit.Reactions", "name": "GetListForUserAsync", "summary": null, "isAsync": true, @@ -3729,6 +3897,7 @@ }, { "returnType": "List", + "namespace": "Volo.CmsKit.Reactions", "name": "GetSummariesAsync", "summary": null, "isAsync": true, @@ -3803,6 +3972,7 @@ "methods": [ { "returnType": "Rating", + "namespace": "Volo.CmsKit.Ratings", "name": "GetCurrentUserRatingAsync", "summary": null, "isAsync": true, @@ -3834,6 +4004,7 @@ }, { "returnType": "List", + "namespace": "Volo.CmsKit.Ratings", "name": "GetGroupedStarCountsAsync", "summary": null, "isAsync": true, @@ -3908,6 +4079,7 @@ "methods": [ { "returnType": "Int32", + "namespace": "Volo.CmsKit.Pages", "name": "GetCountAsync", "summary": null, "isAsync": true, @@ -3929,6 +4101,7 @@ }, { "returnType": "List", + "namespace": "Volo.CmsKit.Pages", "name": "GetListAsync", "summary": null, "isAsync": true, @@ -3965,6 +4138,7 @@ }, { "returnType": "Page", + "namespace": "Volo.CmsKit.Pages", "name": "GetBySlugAsync", "summary": null, "isAsync": true, @@ -3986,6 +4160,7 @@ }, { "returnType": "Page", + "namespace": "Volo.CmsKit.Pages", "name": "FindBySlugAsync", "summary": null, "isAsync": true, @@ -4007,6 +4182,7 @@ }, { "returnType": "Boolean", + "namespace": "Volo.CmsKit.Pages", "name": "ExistsAsync", "summary": null, "isAsync": true, @@ -4028,6 +4204,7 @@ }, { "returnType": "List", + "namespace": "Volo.CmsKit.Pages", "name": "GetListOfHomePagesAsync", "summary": null, "isAsync": true, @@ -4041,6 +4218,28 @@ "isOptional": true } ] + }, + { + "returnType": "String", + "namespace": "Volo.CmsKit.Pages", + "name": "FindTitleAsync", + "summary": null, + "isAsync": true, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "Guid", + "name": "pageId", + "isOptional": false + }, + { + "type": "CancellationToken", + "name": "cancellationToken", + "isOptional": true + } + ] } ], "contentType": "repositoryInterface", @@ -4186,6 +4385,7 @@ "methods": [ { "returnType": "GlobalResource", + "namespace": "Volo.CmsKit.GlobalResources", "name": "FindByNameAsync", "summary": null, "isAsync": true, @@ -4255,6 +4455,7 @@ "methods": [ { "returnType": "CommentWithAuthorQueryResultItem", + "namespace": "Volo.CmsKit.Comments", "name": "GetWithAuthorAsync", "summary": null, "isAsync": true, @@ -4276,6 +4477,7 @@ }, { "returnType": "List", + "namespace": "Volo.CmsKit.Comments", "name": "GetListAsync", "summary": null, "isAsync": true, @@ -4337,6 +4539,7 @@ }, { "returnType": "Int64", + "namespace": "Volo.CmsKit.Comments", "name": "GetCountAsync", "summary": null, "isAsync": true, @@ -4383,6 +4586,7 @@ }, { "returnType": "List", + "namespace": "Volo.CmsKit.Comments", "name": "GetListWithAuthorsAsync", "summary": null, "isAsync": true, @@ -4409,6 +4613,7 @@ }, { "returnType": "Void", + "namespace": "Volo.CmsKit.Comments", "name": "DeleteWithRepliesAsync", "summary": null, "isAsync": true, @@ -4427,6 +4632,28 @@ "isOptional": true } ] + }, + { + "returnType": "Boolean", + "namespace": "Volo.CmsKit.Comments", + "name": "ExistsAsync", + "summary": null, + "isAsync": true, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "String", + "name": "idempotencyToken", + "isOptional": false + }, + { + "type": "CancellationToken", + "name": "cancellationToken", + "isOptional": true + } + ] } ], "contentType": "repositoryInterface", @@ -4478,6 +4705,7 @@ "methods": [ { "returnType": "List", + "namespace": "Volo.CmsKit.Blogs", "name": "GetListAsync", "summary": null, "isAsync": true, @@ -4499,6 +4727,7 @@ }, { "returnType": "List", + "namespace": "Volo.CmsKit.Blogs", "name": "GetListAsync", "summary": null, "isAsync": true, @@ -4525,6 +4754,7 @@ }, { "returnType": "BlogFeature", + "namespace": "Volo.CmsKit.Blogs", "name": "FindAsync", "summary": null, "isAsync": true, @@ -4599,6 +4829,7 @@ "methods": [ { "returnType": "Int32", + "namespace": "Volo.CmsKit.Blogs", "name": "GetCountAsync", "summary": null, "isAsync": true, @@ -4640,6 +4871,7 @@ }, { "returnType": "List", + "namespace": "Volo.CmsKit.Blogs", "name": "GetListAsync", "summary": null, "isAsync": true, @@ -4696,6 +4928,7 @@ }, { "returnType": "Boolean", + "namespace": "Volo.CmsKit.Blogs", "name": "SlugExistsAsync", "summary": null, "isAsync": true, @@ -4722,6 +4955,7 @@ }, { "returnType": "BlogPost", + "namespace": "Volo.CmsKit.Blogs", "name": "GetBySlugAsync", "summary": null, "isAsync": true, @@ -4748,6 +4982,7 @@ }, { "returnType": "List", + "namespace": "Volo.CmsKit.Blogs", "name": "GetAuthorsHasBlogPostsAsync", "summary": null, "isAsync": true, @@ -4784,6 +5019,7 @@ }, { "returnType": "Int32", + "namespace": "Volo.CmsKit.Blogs", "name": "GetAuthorsHasBlogPostsCountAsync", "summary": null, "isAsync": true, @@ -4805,6 +5041,7 @@ }, { "returnType": "CmsUser", + "namespace": "Volo.CmsKit.Blogs", "name": "GetAuthorHasBlogPostAsync", "summary": null, "isAsync": true, @@ -4826,6 +5063,7 @@ }, { "returnType": "Boolean", + "namespace": "Volo.CmsKit.Blogs", "name": "HasBlogPostWaitingForReviewAsync", "summary": null, "isAsync": true, @@ -4890,6 +5128,7 @@ "methods": [ { "returnType": "List", + "namespace": "Volo.CmsKit.Blogs", "name": "GetListAsync", "summary": null, "isAsync": true, @@ -4926,6 +5165,7 @@ }, { "returnType": "Int64", + "namespace": "Volo.CmsKit.Blogs", "name": "GetCountAsync", "summary": null, "isAsync": true, @@ -4947,6 +5187,7 @@ }, { "returnType": "Blog", + "namespace": "Volo.CmsKit.Blogs", "name": "GetBySlugAsync", "summary": null, "isAsync": true, @@ -4968,6 +5209,7 @@ }, { "returnType": "Boolean", + "namespace": "Volo.CmsKit.Blogs", "name": "ExistsAsync", "summary": null, "isAsync": true, @@ -4989,6 +5231,7 @@ }, { "returnType": "Boolean", + "namespace": "Volo.CmsKit.Blogs", "name": "SlugExistsAsync", "summary": null, "isAsync": true, diff --git a/modules/cms-kit/src/Volo.CmsKit.EntityFrameworkCore/Volo.CmsKit.EntityFrameworkCore.abppkg.analyze.json b/modules/cms-kit/src/Volo.CmsKit.EntityFrameworkCore/Volo.CmsKit.EntityFrameworkCore.abppkg.analyze.json index 75a47da9b8..f8745e593d 100644 --- a/modules/cms-kit/src/Volo.CmsKit.EntityFrameworkCore/Volo.CmsKit.EntityFrameworkCore.abppkg.analyze.json +++ b/modules/cms-kit/src/Volo.CmsKit.EntityFrameworkCore/Volo.CmsKit.EntityFrameworkCore.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.CmsKit.EntityFrameworkCore", - "hash": "f77c50f915305bf6c4f61dd28fac3d42", + "hash": "", "contents": [ { "namespace": "Volo.CmsKit.EntityFrameworkCore", @@ -74,6 +74,25 @@ "connectionStringName": "CmsKit", "databaseTables": [], "replacedDbContexts": [], + "modelBuilderExtensionMethods": [ + { + "returnType": "Void", + "namespace": "Volo.CmsKit.EntityFrameworkCore", + "name": "ConfigureCmsKit", + "summary": null, + "isAsync": false, + "isPublic": true, + "isPrivate": false, + "isStatic": true, + "parameters": [ + { + "type": "ModelBuilder", + "name": "builder", + "isOptional": false + } + ] + } + ], "implementingInterfaces": [ { "name": "IInfrastructure", diff --git a/modules/cms-kit/src/Volo.CmsKit.HttpApi.Client/Volo.CmsKit.HttpApi.Client.abppkg.analyze.json b/modules/cms-kit/src/Volo.CmsKit.HttpApi.Client/Volo.CmsKit.HttpApi.Client.abppkg.analyze.json index 1629b07433..6d48362846 100644 --- a/modules/cms-kit/src/Volo.CmsKit.HttpApi.Client/Volo.CmsKit.HttpApi.Client.abppkg.analyze.json +++ b/modules/cms-kit/src/Volo.CmsKit.HttpApi.Client/Volo.CmsKit.HttpApi.Client.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.CmsKit.HttpApi.Client", - "hash": "81149b8997a408cc61968718d651707d", + "hash": "", "contents": [ { "namespace": "Volo.CmsKit", diff --git a/modules/cms-kit/src/Volo.CmsKit.HttpApi/Volo.CmsKit.HttpApi.abppkg.analyze.json b/modules/cms-kit/src/Volo.CmsKit.HttpApi/Volo.CmsKit.HttpApi.abppkg.analyze.json index 3cccbcb7bd..a2b88f1280 100644 --- a/modules/cms-kit/src/Volo.CmsKit.HttpApi/Volo.CmsKit.HttpApi.abppkg.analyze.json +++ b/modules/cms-kit/src/Volo.CmsKit.HttpApi/Volo.CmsKit.HttpApi.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.CmsKit.HttpApi", - "hash": "21341ac4929e1d6f0dbc8e183ac3434d", + "hash": "", "contents": [ { "namespace": "Volo.CmsKit", diff --git a/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo.CmsKit.MongoDB.abppkg.analyze.json b/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo.CmsKit.MongoDB.abppkg.analyze.json index e4f8245ace..e43dc00fc3 100644 --- a/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo.CmsKit.MongoDB.abppkg.analyze.json +++ b/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo.CmsKit.MongoDB.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.CmsKit.MongoDB", - "hash": "0a97f3dd5afa54002ac001896c098325", + "hash": "", "contents": [ { "namespace": "Volo.CmsKit.MongoDB", @@ -74,81 +74,81 @@ "connectionStringName": "CmsKit", "databaseCollections": [ { - "entityFullName": "Volo.CmsKit.Tags.Tag", + "entityFullName": "Volo.CmsKit.Comments.Comment", "contentType": "databaseCollection", - "name": "CmsTags", + "name": "Comments", "summary": null }, { "entityFullName": "Volo.CmsKit.Reactions.UserReaction", "contentType": "databaseCollection", - "name": "CmsUserReactions", + "name": "UserReactions", "summary": null }, { - "entityFullName": "Volo.CmsKit.Pages.Page", + "entityFullName": "Volo.CmsKit.Users.CmsUser", "contentType": "databaseCollection", - "name": "CmsPages", + "name": "CmsUsers", "summary": null }, { - "entityFullName": "Volo.CmsKit.Comments.Comment", + "entityFullName": "Volo.CmsKit.Ratings.Rating", "contentType": "databaseCollection", - "name": "CmsComments", + "name": "Ratings", "summary": null }, { - "entityFullName": "Volo.CmsKit.Ratings.Rating", + "entityFullName": "Volo.CmsKit.Tags.Tag", "contentType": "databaseCollection", - "name": "CmsRatings", + "name": "Tags", "summary": null }, { - "entityFullName": "Volo.CmsKit.Blogs.BlogFeature", + "entityFullName": "Volo.CmsKit.Tags.EntityTag", "contentType": "databaseCollection", - "name": "CmsBlogFeatures", + "name": "EntityTags", "summary": null }, { - "entityFullName": "Volo.CmsKit.Users.CmsUser", + "entityFullName": "Volo.CmsKit.Pages.Page", "contentType": "databaseCollection", - "name": "CmsUsers", + "name": "Pages", "summary": null }, { - "entityFullName": "Volo.CmsKit.Blogs.BlogPost", + "entityFullName": "Volo.CmsKit.Blogs.Blog", "contentType": "databaseCollection", - "name": "CmsBlogPosts", + "name": "Blogs", "summary": null }, { - "entityFullName": "Volo.CmsKit.Menus.MenuItem", + "entityFullName": "Volo.CmsKit.Blogs.BlogPost", "contentType": "databaseCollection", - "name": "CmsMenuItems", + "name": "BlogPosts", "summary": null }, { - "entityFullName": "Volo.CmsKit.Blogs.Blog", + "entityFullName": "Volo.CmsKit.Blogs.BlogFeature", "contentType": "databaseCollection", - "name": "CmsBlogs", + "name": "BlogFeatures", "summary": null }, { - "entityFullName": "Volo.CmsKit.Tags.EntityTag", + "entityFullName": "Volo.CmsKit.MediaDescriptors.MediaDescriptor", "contentType": "databaseCollection", - "name": "CmsEntityTags", + "name": "MediaDescriptors", "summary": null }, { - "entityFullName": "Volo.CmsKit.MediaDescriptors.MediaDescriptor", + "entityFullName": "Volo.CmsKit.Menus.MenuItem", "contentType": "databaseCollection", - "name": "CmsMediaDescriptors", + "name": "MenuItems", "summary": null }, { "entityFullName": "Volo.CmsKit.GlobalResources.GlobalResource", "contentType": "databaseCollection", - "name": "CmsGlobalResources", + "name": "GlobalResources", "summary": null } ], diff --git a/modules/cms-kit/src/Volo.CmsKit.Public.Application.Contracts/Volo.CmsKit.Public.Application.Contracts.abppkg.analyze.json b/modules/cms-kit/src/Volo.CmsKit.Public.Application.Contracts/Volo.CmsKit.Public.Application.Contracts.abppkg.analyze.json index 1dc00dc661..68bc9f6b6d 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Public.Application.Contracts/Volo.CmsKit.Public.Application.Contracts.abppkg.analyze.json +++ b/modules/cms-kit/src/Volo.CmsKit.Public.Application.Contracts/Volo.CmsKit.Public.Application.Contracts.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.CmsKit.Public.Application.Contracts", - "hash": "399ba7790fef13507bce65ed77967e4b", + "hash": "", "contents": [ { "namespace": "Volo.CmsKit.Public", @@ -63,6 +63,20 @@ "contentType": "abpModule", "name": "CmsKitPublicApplicationContractsModule", "summary": null + }, + { + "displayName": "Comment management", + "isEnabled": true, + "contentType": "permission", + "name": "CmsKitPublic.Comments", + "summary": null + }, + { + "displayName": "Delete all", + "isEnabled": true, + "contentType": "permission", + "name": "CmsKitPublic.Comments.DeleteAll", + "summary": null } ] } \ No newline at end of file diff --git a/modules/cms-kit/src/Volo.CmsKit.Public.Application/Volo.CmsKit.Public.Application.abppkg.analyze.json b/modules/cms-kit/src/Volo.CmsKit.Public.Application/Volo.CmsKit.Public.Application.abppkg.analyze.json index 5aa9406110..06a2245857 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Public.Application/Volo.CmsKit.Public.Application.abppkg.analyze.json +++ b/modules/cms-kit/src/Volo.CmsKit.Public.Application/Volo.CmsKit.Public.Application.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.CmsKit.Public.Application", - "hash": "b56557870806fcc0a1b72ff08f55da55", + "hash": "", "contents": [ { "namespace": "Volo.CmsKit.Public", @@ -136,6 +136,7 @@ "methods": [ { "returnType": "ListResultDto", + "namespace": "Volo.CmsKit.Public.Reactions", "name": "GetForSelectionAsync", "summary": null, "isAsync": true, @@ -157,6 +158,7 @@ }, { "returnType": "Void", + "namespace": "Volo.CmsKit.Public.Reactions", "name": "CreateAsync", "summary": null, "isAsync": true, @@ -183,6 +185,7 @@ }, { "returnType": "Void", + "namespace": "Volo.CmsKit.Public.Reactions", "name": "DeleteAsync", "summary": null, "isAsync": true, @@ -279,6 +282,7 @@ "methods": [ { "returnType": "RatingDto", + "namespace": "Volo.CmsKit.Public.Ratings", "name": "CreateAsync", "summary": null, "isAsync": true, @@ -305,6 +309,7 @@ }, { "returnType": "Void", + "namespace": "Volo.CmsKit.Public.Ratings", "name": "DeleteAsync", "summary": null, "isAsync": true, @@ -326,6 +331,7 @@ }, { "returnType": "List", + "namespace": "Volo.CmsKit.Public.Ratings", "name": "GetGroupedStarCountsAsync", "summary": null, "isAsync": true, @@ -417,6 +423,7 @@ "methods": [ { "returnType": "PageDto", + "namespace": "Volo.CmsKit.Public.Pages", "name": "FindBySlugAsync", "summary": null, "isAsync": true, @@ -433,6 +440,7 @@ }, { "returnType": "PageDto", + "namespace": "Volo.CmsKit.Public.Pages", "name": "FindDefaultHomePageAsync", "summary": null, "isAsync": true, @@ -440,6 +448,23 @@ "isPrivate": false, "isStatic": false, "parameters": [] + }, + { + "returnType": "Boolean", + "namespace": "Volo.CmsKit.Public.Pages", + "name": "DoesSlugExistAsync", + "summary": null, + "isAsync": true, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "String", + "name": "slug", + "isOptional": false + } + ] } ], "contentType": "applicationService", @@ -513,6 +538,7 @@ "methods": [ { "returnType": "List", + "namespace": "Volo.CmsKit.Public.Menus", "name": "GetListAsync", "summary": null, "isAsync": true, @@ -593,6 +619,7 @@ "methods": [ { "returnType": "GlobalResourceDto", + "namespace": "Volo.CmsKit.Public.GlobalResources", "name": "GetGlobalScriptAsync", "summary": null, "isAsync": true, @@ -603,6 +630,7 @@ }, { "returnType": "GlobalResourceDto", + "namespace": "Volo.CmsKit.Public.GlobalResources", "name": "GetGlobalStyleAsync", "summary": null, "isAsync": true, @@ -683,6 +711,7 @@ "methods": [ { "returnType": "ListResultDto", + "namespace": "Volo.CmsKit.Public.Comments", "name": "GetListAsync", "summary": null, "isAsync": true, @@ -704,6 +733,7 @@ }, { "returnType": "CommentDto", + "namespace": "Volo.CmsKit.Public.Comments", "name": "CreateAsync", "summary": null, "isAsync": true, @@ -730,6 +760,7 @@ }, { "returnType": "CommentDto", + "namespace": "Volo.CmsKit.Public.Comments", "name": "UpdateAsync", "summary": null, "isAsync": true, @@ -751,6 +782,7 @@ }, { "returnType": "Void", + "namespace": "Volo.CmsKit.Public.Comments", "name": "DeleteAsync", "summary": null, "isAsync": true, @@ -837,6 +869,7 @@ "methods": [ { "returnType": "BlogPostCommonDto", + "namespace": "Volo.CmsKit.Public.Blogs", "name": "GetAsync", "summary": null, "isAsync": true, @@ -858,6 +891,7 @@ }, { "returnType": "PagedResultDto", + "namespace": "Volo.CmsKit.Public.Blogs", "name": "GetListAsync", "summary": null, "isAsync": true, @@ -879,6 +913,7 @@ }, { "returnType": "PagedResultDto", + "namespace": "Volo.CmsKit.Public.Blogs", "name": "GetAuthorsHasBlogPostsAsync", "summary": null, "isAsync": true, @@ -895,6 +930,7 @@ }, { "returnType": "CmsUserDto", + "namespace": "Volo.CmsKit.Public.Blogs", "name": "GetAuthorHasBlogPostAsync", "summary": null, "isAsync": true, @@ -908,6 +944,40 @@ "isOptional": false } ] + }, + { + "returnType": "Void", + "namespace": "Volo.CmsKit.Public.Blogs", + "name": "DeleteAsync", + "summary": null, + "isAsync": true, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "Guid", + "name": "id", + "isOptional": false + } + ] + }, + { + "returnType": "String", + "namespace": "Volo.CmsKit.Public.Blogs", + "name": "GetTagNameAsync", + "summary": null, + "isAsync": true, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "Guid", + "name": "tagId", + "isOptional": false + } + ] } ], "contentType": "applicationService", diff --git a/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi.Client/Volo.CmsKit.Public.HttpApi.Client.abppkg.analyze.json b/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi.Client/Volo.CmsKit.Public.HttpApi.Client.abppkg.analyze.json index 80205a3959..62a47341e8 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi.Client/Volo.CmsKit.Public.HttpApi.Client.abppkg.analyze.json +++ b/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi.Client/Volo.CmsKit.Public.HttpApi.Client.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.CmsKit.Public.HttpApi.Client", - "hash": "54e4cc77905039df9b16fde35a23e6fa", + "hash": "", "contents": [ { "namespace": "Volo.CmsKit.Public", diff --git a/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi/Volo.CmsKit.Public.HttpApi.abppkg.analyze.json b/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi/Volo.CmsKit.Public.HttpApi.abppkg.analyze.json index a99c733cc3..ff3f4e1b8e 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi/Volo.CmsKit.Public.HttpApi.abppkg.analyze.json +++ b/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi/Volo.CmsKit.Public.HttpApi.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.CmsKit.Public.HttpApi", - "hash": "e0f90c7c40bbd72d50bcd41f413fbf6a", + "hash": "", "contents": [ { "namespace": "Volo.CmsKit.Public", diff --git a/modules/cms-kit/src/Volo.CmsKit.Public.Web/Volo.CmsKit.Public.Web.abppkg.analyze.json b/modules/cms-kit/src/Volo.CmsKit.Public.Web/Volo.CmsKit.Public.Web.abppkg.analyze.json index baff1e5a88..c82bbb321d 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Public.Web/Volo.CmsKit.Public.Web.abppkg.analyze.json +++ b/modules/cms-kit/src/Volo.CmsKit.Public.Web/Volo.CmsKit.Public.Web.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.CmsKit.Public.Web", - "hash": "a7ba6e8a7c5cd8f816a4fe9e11d41a02", + "hash": "", "contents": [ { "namespace": "Volo.CmsKit.Public.Web", @@ -63,6 +63,24 @@ "contentType": "abpModule", "name": "CmsKitPublicWebModule", "summary": null + }, + { + "namespace": "Volo.CmsKit.Public.Web.Pages.Public.CmsKit.Pages", + "contentType": "webPage", + "name": "IndexModel", + "summary": null + }, + { + "namespace": "Volo.CmsKit.Public.Web.Pages.Public.CmsKit.Blogs", + "contentType": "webPage", + "name": "BlogPostModel", + "summary": null + }, + { + "namespace": "Volo.CmsKit.Public.Web.Pages.Public.CmsKit.Blogs", + "contentType": "webPage", + "name": "IndexModel", + "summary": null } ] } \ No newline at end of file diff --git a/modules/cms-kit/src/Volo.CmsKit.Web/Volo.CmsKit.Web.abppkg.analyze.json b/modules/cms-kit/src/Volo.CmsKit.Web/Volo.CmsKit.Web.abppkg.analyze.json index 39cd4fabeb..1c49452d8b 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Web/Volo.CmsKit.Web.abppkg.analyze.json +++ b/modules/cms-kit/src/Volo.CmsKit.Web/Volo.CmsKit.Web.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.CmsKit.Web", - "hash": "5baa473fb5239f09781f6d7baf769b0c", + "hash": "", "contents": [ { "namespace": "Volo.CmsKit.Web", diff --git a/modules/docs/app/VoloDocs.EntityFrameworkCore/VoloDocs.EntityFrameworkCore.abppkg.analyze.json b/modules/docs/app/VoloDocs.EntityFrameworkCore/VoloDocs.EntityFrameworkCore.abppkg.analyze.json index db21a0a643..795e64c256 100644 --- a/modules/docs/app/VoloDocs.EntityFrameworkCore/VoloDocs.EntityFrameworkCore.abppkg.analyze.json +++ b/modules/docs/app/VoloDocs.EntityFrameworkCore/VoloDocs.EntityFrameworkCore.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "VoloDocs.EntityFrameworkCore", - "hash": "16b4276f8bb7836474b6a2da1a71df37", + "hash": "", "contents": [ { "namespace": "VoloDocs.EntityFrameworkCore", @@ -84,6 +84,7 @@ "connectionStringName": null, "databaseTables": [], "replacedDbContexts": [], + "modelBuilderExtensionMethods": [], "implementingInterfaces": [ { "name": "IInfrastructure", diff --git a/modules/docs/app/VoloDocs.Web/package.json b/modules/docs/app/VoloDocs.Web/package.json index 195d382561..9567c10ab1 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": "~8.2.2", - "@abp/docs": "~8.2.2" + "@abp/aspnetcore.mvc.ui.theme.basic": "~8.2.3", + "@abp/docs": "~8.2.3" } } diff --git a/modules/docs/app/VoloDocs.Web/yarn.lock b/modules/docs/app/VoloDocs.Web/yarn.lock index 626914216a..54979e8a5a 100644 --- a/modules/docs/app/VoloDocs.Web/yarn.lock +++ b/modules/docs/app/VoloDocs.Web/yarn.lock @@ -2,238 +2,238 @@ # yarn lockfile v1 -"@abp/anchor-js@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/anchor-js/-/anchor-js-8.2.2.tgz#d39a1da657d62d32e043f2286150e6b0ca1dd1cf" - integrity sha512-xYYmAyRLCne5cIVAVJPAx05PkLSn2H+1RyQfitxvmGG4yaRSzZcoXx8iHWk0aa0SrMPT00bay5+XhzcOqqXGcg== +"@abp/anchor-js@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/anchor-js/-/anchor-js-8.2.3.tgz#07d4eab78670b4da36e7feb8643dbd305cb01535" + integrity sha512-JSwv2pXvdyWkFSpowIh0aC02QLRweZfcEYOc+PmTku+SgsB3b+eSz53BKh9lTnlssmSAWs396buPvt8QAtiebA== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" anchor-js "^4.3.1" -"@abp/aspnetcore.mvc.ui.theme.basic@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-8.2.2.tgz#0b18f3eee58b4a115e861a3732514a02d613d301" - integrity sha512-fFytBe1n+DxK7rVPnO8zqZWixBTDfdSrFUyg+qgpe+/Q10ec7x9j5noB+aiF73OZelJ9LGKz2gl+MS66Erpy2A== - dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~8.2.2" - -"@abp/aspnetcore.mvc.ui.theme.shared@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-8.2.2.tgz#419da4bac71ceb7b1afbd8b740b0675f51de6575" - integrity sha512-tYPbEqoENmxzN9zaBAF8/ssNk8uuVTkKpi663612H1b85ik3Tbm4H3gamKbSR1TxMwIJZxVyizxDMDhLu6ff3w== - dependencies: - "@abp/aspnetcore.mvc.ui" "~8.2.2" - "@abp/bootstrap" "~8.2.2" - "@abp/bootstrap-datepicker" "~8.2.2" - "@abp/bootstrap-daterangepicker" "~8.2.2" - "@abp/datatables.net-bs5" "~8.2.2" - "@abp/font-awesome" "~8.2.2" - "@abp/jquery-form" "~8.2.2" - "@abp/jquery-validation-unobtrusive" "~8.2.2" - "@abp/lodash" "~8.2.2" - "@abp/luxon" "~8.2.2" - "@abp/malihu-custom-scrollbar-plugin" "~8.2.2" - "@abp/moment" "~8.2.2" - "@abp/select2" "~8.2.2" - "@abp/sweetalert2" "~8.2.2" - "@abp/timeago" "~8.2.2" - "@abp/toastr" "~8.2.2" - -"@abp/aspnetcore.mvc.ui@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-8.2.2.tgz#53de1c58c14a98f15f408c9a404e5052cc28c966" - integrity sha512-XjduoVC/2nrlo7R77cTgvDQGZK0fqATx1VaHPHbQJLKvjZXS7rIU6Q0Eye+XcnGnw4udcq3luAorqI96JFkBiQ== +"@abp/aspnetcore.mvc.ui.theme.basic@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-8.2.3.tgz#4456eef32942a1064543f46b9b22fdd941ec209d" + integrity sha512-CmJ7Jp5guO/lCXb9IjrhZ0jpnlbL0d3k/7w6gp/jGhFZ5w7gTgI+ZOtr4jzQnQRWF+ZwaVhsgtfBG9PdNl63QA== + dependencies: + "@abp/aspnetcore.mvc.ui.theme.shared" "~8.2.3" + +"@abp/aspnetcore.mvc.ui.theme.shared@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-8.2.3.tgz#b1a795a947cf710730ddeec4684e706cd0d8b853" + integrity sha512-UDRzWXFUL1kHlrhzgjXwo+UxFwkthyQj2agk889mdt4doZ4NGbHKmgdHNrtt1PIOM8VOcQNubBx5VePffuMcYA== + dependencies: + "@abp/aspnetcore.mvc.ui" "~8.2.3" + "@abp/bootstrap" "~8.2.3" + "@abp/bootstrap-datepicker" "~8.2.3" + "@abp/bootstrap-daterangepicker" "~8.2.3" + "@abp/datatables.net-bs5" "~8.2.3" + "@abp/font-awesome" "~8.2.3" + "@abp/jquery-form" "~8.2.3" + "@abp/jquery-validation-unobtrusive" "~8.2.3" + "@abp/lodash" "~8.2.3" + "@abp/luxon" "~8.2.3" + "@abp/malihu-custom-scrollbar-plugin" "~8.2.3" + "@abp/moment" "~8.2.3" + "@abp/select2" "~8.2.3" + "@abp/sweetalert2" "~8.2.3" + "@abp/timeago" "~8.2.3" + "@abp/toastr" "~8.2.3" + +"@abp/aspnetcore.mvc.ui@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-8.2.3.tgz#02e20c42b198bf6bb13e313b4a4b435f17dc9ddd" + integrity sha512-414cAonBhJDZmlEat4gY1Qaf1npgJjYj/re9O0Rk/FdW2vO8Qt56LozGIsbvVY4RjMsQwpwkkgH4RWlIKm3q8w== dependencies: ansi-colors "^4.1.1" -"@abp/bootstrap-datepicker@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-8.2.2.tgz#a14ff40f5bc29e9ad50ea68391f1238ab86f4d1b" - integrity sha512-nqDfEkbFj20ULJap5tsEThmzIUssfIhV8sqBitd9xKnCmoGpbywp/SZgB2hHNEqb3zIJaewNS9P11PoxqRpdBA== +"@abp/bootstrap-datepicker@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-8.2.3.tgz#ceec259251a692d25daae9263b54a3142b007f23" + integrity sha512-o3uZtuw/NKJTCKf5tK5U7Qii+9PgJGWIjLkqb7mXGftIMdqOaJ+QHZe+J9XaO4of8l2HtGkXp+fuQGVJBTlFAg== dependencies: bootstrap-datepicker "^1.9.0" -"@abp/bootstrap-daterangepicker@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-8.2.2.tgz#bff1cf71bce370ae0e4f3c04b9eee4221604959b" - integrity sha512-M0RbUHN52R7ZAyudhlQ6zWAbMmZ88FVR9EPP2dovfKLKfOUGWQiww2QA3a5gvwo/FBObC95XYfpVg72IQgr5ww== +"@abp/bootstrap-daterangepicker@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-8.2.3.tgz#b33117eb5dfcdbea9cb5212acfecd4e040ce7c2d" + integrity sha512-UR1TXFStbvD54wb6vEVK3FVHYtgugLBdDg4Xyh+aNe2sUTm+kfXh4+1Xm+3R1SV3cWvRT57Sy1bc306c6CQ7Zg== dependencies: bootstrap-daterangepicker "^3.1.0" -"@abp/bootstrap@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-8.2.2.tgz#78db0e4f54dd4b09462d386df83e451506717af6" - integrity sha512-A6hdNB2+Uokm5CniB6+qxR7Q2dyRwMLv2ct0v6PxOT1M+/Z2+oCzFDHLYKnmbcx5pg+1MmvnNC+clQZELDxjyw== +"@abp/bootstrap@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-8.2.3.tgz#462c4a5712d6d0baee345dc318fc5463527cbc21" + integrity sha512-jThgI5nlP5A/cKLUoNgRA5ldHz5xNoGkD+V0Z/gScbeAE8Q8eu7Q5P82PLF8B8cgKjOqJXb2L5kbdNYFdqIOwg== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" bootstrap "^5.1.3" -"@abp/clipboard@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-8.2.2.tgz#cb9a7bc2d08b8fb762c24cbd53f86a6aa5c8197a" - integrity sha512-D9azkwO9ZAwKsqdYRkzz0JOukfMdhUOpI382VxmfLTHgTgrby6xTae8SGIrXthgemEny3RlqYAX2R7EVfN3upg== +"@abp/clipboard@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-8.2.3.tgz#9e0c0b750114ddaca0beba1051dd7fc1fe77f543" + integrity sha512-RS1pVeeN1/5LlDNBBRDFUqR+xpfWteCZfIByh8xAbec1xuxHmxxxvb3kv1Wp7n4c1ec3V0yLRyvaj0SfYmnWNA== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" clipboard "^2.0.8" -"@abp/core@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-8.2.2.tgz#b4905fa539272bee26f5f95ceb2224b48cfac8ab" - integrity sha512-YKbT92+T9Zs0IvvIPJrMcBUjwR5u6U6f1KegRcRR79b43ZckIrQbqftjyFLF7YSPuJlVCHoO0YhU2Q1EagiFDg== +"@abp/core@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-8.2.3.tgz#1474f8e24cc8707bd909e1cd49230cdaa54c447e" + integrity sha512-mluL7NHWRxvjwHHGd3kOWQg0Tnmt4o2ih/KfdDJl7z4lpy386yL+UutkE3NNhgbEGWDt1hnS5rKFZabhaahwWg== dependencies: - "@abp/utils" "~8.2.2" + "@abp/utils" "~8.2.3" -"@abp/datatables.net-bs5@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-8.2.2.tgz#c314a615cf98cf0fdb6a97ffea3a42d0b050ccd5" - integrity sha512-dkb0wHdZ93mLSwmHbJ3hMKBm0ZFA9jpLxxWf7u+c7sBU+McACRdFHyl0x6dtinspDgo5GaPHGqmbsVx5S7eM2w== +"@abp/datatables.net-bs5@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-8.2.3.tgz#8e80767d7677ebf69a56248039ef5604499bbc30" + integrity sha512-XTjo15yM/nJiFfRtTMnfOJNh6FX+Vmmf5Kq5aG5XjUcp1IepEAgiNNOSmh+zRhUt4BDZ4RWcfSSGNbh0icUIOg== dependencies: - "@abp/datatables.net" "~8.2.2" + "@abp/datatables.net" "~8.2.3" datatables.net-bs5 "^1.11.4" -"@abp/datatables.net@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-8.2.2.tgz#1627836a2ee7efe1d470bdc32ec437ed86996fc8" - integrity sha512-hPAyx90kI4s+LlUsN6GfLWFEGe9JXExgqSzFUwkOqi+WS+kGWvPElUXfS06VaKiu/h/H9SVl+X+iajd3L9Zr9g== +"@abp/datatables.net@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-8.2.3.tgz#e38567679720546d42b895d9a464728ea3730292" + integrity sha512-CT18SqBuY25UmjNbiSbI9eqvbPNZZm+yYsZoasSUv3JOpO1oPfclgtZV5FKeBQQvM5Vc0BhRs7KMKF2F0pwszA== dependencies: - "@abp/jquery" "~8.2.2" + "@abp/jquery" "~8.2.3" datatables.net "^1.11.4" -"@abp/docs@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/docs/-/docs-8.2.2.tgz#a622232cfb735597846594d7b6f63ed8edefd9c9" - integrity sha512-DxToU6jcjvK0Xce4bvg0HJ7dF2yo1QZKt+/8q0aPVQ0QWKBfPCobh1G4ZFlu4oC6FAMClJvyXCFD+WvYYfjFLw== +"@abp/docs@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/docs/-/docs-8.2.3.tgz#1928c5340eaf81f7a3054749ccf483d7b029eb42" + integrity sha512-BKvOTISXSGJ24Pl/pnFiV0Az85kCcp1K/y+o1LaHmUa7L53RkNfTRSzerY0q/eg0Mjnnv9Qyl+1Uv4TLWaFLYg== dependencies: - "@abp/anchor-js" "~8.2.2" - "@abp/clipboard" "~8.2.2" - "@abp/malihu-custom-scrollbar-plugin" "~8.2.2" - "@abp/popper.js" "~8.2.2" - "@abp/prismjs" "~8.2.2" + "@abp/anchor-js" "~8.2.3" + "@abp/clipboard" "~8.2.3" + "@abp/malihu-custom-scrollbar-plugin" "~8.2.3" + "@abp/popper.js" "~8.2.3" + "@abp/prismjs" "~8.2.3" -"@abp/font-awesome@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-8.2.2.tgz#924ce3b78a902ef844901d824d8eb616cbc32ba8" - integrity sha512-yCn94hjowg42hTvyf3xJu7kOCMWfh5Qw4D8PbiaF3WwP1kbpC2QCeZ/Rh9Oltsml34rkhMKPTzLzZqki25Q5QQ== +"@abp/font-awesome@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-8.2.3.tgz#92d7645c94cda07becb8e2ea23e7769ec55c43b1" + integrity sha512-OLQRBuPHtPyM5IHhIJwsbkE8idmu/DDAIm92kOa97p0r0Hx7epnKx+Yrwz23FuRH2wYlmYJqDmwj1VTK90gxYA== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" "@fortawesome/fontawesome-free" "^6.5.1" -"@abp/jquery-form@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-8.2.2.tgz#aad534f5b4f4346ac97249040af663e70ecbd03e" - integrity sha512-QueETCaVq6g8b7c0jIepbKZKS2SO/aCZJy/uRc/lPumr2Hs96aZvHQGIAZopCQKPfF9mLp+Sc2QEN/zdt8QiNA== +"@abp/jquery-form@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-8.2.3.tgz#a8c593e6afbbcff5250657f052fc9912cdf352ac" + integrity sha512-AhkNUdyXE/q7hsra+1xj8W/g7lkIgR9YXrr0RgddPW+dqYqVvbYdFcPliHaSsl+kzPHSRx7eez8AjQSZlReIjg== dependencies: - "@abp/jquery" "~8.2.2" + "@abp/jquery" "~8.2.3" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-8.2.2.tgz#7396dd6a62cdf0796d967b167da5cc91974a9c5e" - integrity sha512-dH0ax7Lxaf+MeZC0z80IPHyXocuA26lzHtwFx/g4NIxxV1gKL8/wI+rAX1ulloSdqEA8kN6rlgOZMqiG2kNWcw== +"@abp/jquery-validation-unobtrusive@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-8.2.3.tgz#d21cbc1694b68f6377134e4e535d19e2cda0fb8d" + integrity sha512-2Ilrveqsj5jorZ2N75zLlHO8+NGRmLecRWIDZZmuyCXVF/LyyceaNBhkdiV+Ofcts387TVkQkjkoArV10Uu+Jg== dependencies: - "@abp/jquery-validation" "~8.2.2" + "@abp/jquery-validation" "~8.2.3" jquery-validation-unobtrusive "^3.2.12" -"@abp/jquery-validation@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-8.2.2.tgz#25ac2fb35aa8f60ba82116ef429996e7ae8518bb" - integrity sha512-WbvobzuEKmnFdCK2Bic7YNhbuauN1mIzgrnd8Ap0nLAxpwsVYkUBwKHoi7jyYv+Udvl39VjYFeciul9rZYI2pg== +"@abp/jquery-validation@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-8.2.3.tgz#642b7f56c1da5469443f864f04eb09cb0bf75bb4" + integrity sha512-qbML5oyoq9ltq212qD8C7jVOqNwTdvyRzTu3SsN15AXecapZxO/BPjhCgLb99OK4zT7hZaC8R+H0CDBa3O5pvg== dependencies: - "@abp/jquery" "~8.2.2" + "@abp/jquery" "~8.2.3" jquery-validation "^1.19.3" -"@abp/jquery@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-8.2.2.tgz#2496431ed11c5e2410e0efaa34404ac760a064ff" - integrity sha512-2ItXN6O45NIpSK/D8wUu+xVnrkxhc79Pce/yYMzFzI7QGYaKvpaP+tVWQQmKEa7RCNCyPS57AxuDtNqI4LSqDQ== +"@abp/jquery@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-8.2.3.tgz#e73d1df860276ae2a081c6f945f586720a71781d" + integrity sha512-SDOnVUJo0g3tuA40Z2Nme8yI1nTCwp0Mh2aAf3L3W+F8lzV3OQS8mUmpektxhPsFen0DufSvilOC+aI6/Jx5lQ== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" jquery "~3.6.0" -"@abp/lodash@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-8.2.2.tgz#a12ed0018f831c0f763da5c6a09d07494acf01ed" - integrity sha512-X+Y3CBMjNgeK/Y47MPMF4sH8PRF0TP+YpjvZ9lbGVSxiQPsNdrYKseZ1gp+AnDBHvj+Oxb7s/aRVZ1pbDJpXiQ== +"@abp/lodash@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-8.2.3.tgz#e78ef9e681369af51b6c36a0a450884c4ee5677a" + integrity sha512-47YoHS0CrH+PiQ8eF/ASYodGH+foBRBJVkDmRgZ1vegs10CJukBYgAutPlNMC2onlEF1jLYJ40ZKsHd6TrFQkA== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" lodash "^4.17.21" -"@abp/luxon@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-8.2.2.tgz#76026e1ae79601cc322cda458ac1f2b2cb76190a" - integrity sha512-I08NgiUJwCfNvwOZNYjwB/+2bUwulU3urqKIIB9Mg6PGK2hohsE8k2CMEijA+T25YYO32xgXevOfOq5YU2NCTw== +"@abp/luxon@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-8.2.3.tgz#445d763360b29a7591ab31898ce522e61be9d97e" + integrity sha512-pT+oO4znadhSleuH3x6n1nEgOzfVl0aHurt4F+wnJHyP7SdC2+RjZOYJUkuRIaZzflG4699Qq0UgAW6GfpuUgg== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" luxon "^2.3.0" -"@abp/malihu-custom-scrollbar-plugin@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-8.2.2.tgz#53405af2869fde990962914f24228a9fa65bab2f" - integrity sha512-/6g+Qm/5CbCzVgohEH8C72smIN4Lw/uL/KJbP7uEBVAXfKqY6vGA2VhrKNvIiBPfktIzZCHrcKsHwysMPtOS2Q== +"@abp/malihu-custom-scrollbar-plugin@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-8.2.3.tgz#7018c4ab65b78512bf5ea8f542fb0c7119a39e0b" + integrity sha512-CCc0iOaulmssuUL7RsAApRzYD+SXAPbqz5iod6yuyx3Y5Vaz4ik+2/cG7XZgwcgsmctJYZl3IxZ/ijnZXLgHUw== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/moment@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-8.2.2.tgz#1895904212fde6dc1793611940a9f8ec95b2c45f" - integrity sha512-VhhCOzVpapvFOn1gzQIcXB/RMyRKcZOlVLGLTqosg14woPSFm0+0utLHkPOLihWbUSQqDRYKvC2cPbNC6CknKg== +"@abp/moment@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-8.2.3.tgz#126039218e6068eca4279eae1eb5375207780931" + integrity sha512-nV11P1KqX8xPmb/bs3yYbFPz7ZOXWnZPKd4Z2k0JYaFTS2C07twgS0uQQHwW6iP8DrS1QBBAyLYBuM3ctgB0dg== dependencies: moment "^2.9.0" -"@abp/popper.js@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/popper.js/-/popper.js-8.2.2.tgz#8e258b1ef20a3fdc1ebdccd3a8c3e03089e53066" - integrity sha512-IOAviyU5k1o9gpJImGddEgB8rFupD25ZUXUNkPxkxTdQHBe3/7KAUK/HtTT4xZlR/QomCOmpRkIpHt6nq7O5cg== +"@abp/popper.js@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/popper.js/-/popper.js-8.2.3.tgz#ac3a1072575bb8f22d8073bc39ba6e914aff478f" + integrity sha512-RCSTZMhhueS7I5O7nTD7EiRHILIHe3IyiaC1xIY4T8FQYcR1TAPNNhO4hr8SuJhDTwhM9NwnnqFOMpQPnHRY8w== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" "@popperjs/core" "^2.11.2" -"@abp/prismjs@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-8.2.2.tgz#1910701fbe28d87d1312f16e865778f0e8b19670" - integrity sha512-5KaPPTcLc5/F4MB375orQe5W04bPcE8D/OTGllsj2RViGnmmkVj7Wzkwm6R63qWJtBrYuf9sh2c6eUACNkR2/A== +"@abp/prismjs@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-8.2.3.tgz#8927f1660815f4e3de11085ea5f3a73b127a858a" + integrity sha512-JJ/wlLlWShGYj0FMFjxriCIA4v1Fe+oHTgo1Kt9JpYkYG+Zq+rHsj1tvNthh2GU7Y69Kt2w1r1LpEDKZZHu58A== dependencies: - "@abp/clipboard" "~8.2.2" - "@abp/core" "~8.2.2" + "@abp/clipboard" "~8.2.3" + "@abp/core" "~8.2.3" prismjs "^1.26.0" -"@abp/select2@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-8.2.2.tgz#0dc011b838824598dc0a716e55b597aca62712dc" - integrity sha512-zTgtOl2iWihbGja3l8IIi+PqepYNk6O7fUcf6C9cdnBM4IrZSnJqw3sQDr9DqIoEzgdC6izVQzPJJEAi5CZ8Xg== +"@abp/select2@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-8.2.3.tgz#fc92d19ba22cbef5df9b8b2f85b4d21d3139883f" + integrity sha512-/MEJkSuM5+N5OIBLbrQUARUV++NpH9pVq4+btYhghDQDtHYrMHKU41QsginTFKfqBZ4f+OYV/HPnOuj7DJxOBw== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" select2 "^4.0.13" -"@abp/sweetalert2@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-8.2.2.tgz#1c75ec9ef1df2eec6304368667052d8ff9c9e795" - integrity sha512-yNgVxJ6E/cEtc8DYn00BtF9XFLShlZRsAnsipiP74YDvQKWUQSnwi70QoHEYDk2tJ+RsXqtZudvrKv8TyH/ijQ== +"@abp/sweetalert2@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-8.2.3.tgz#a82d674e262e9db89bc219ac350cae8ef17d7669" + integrity sha512-ap8vOgkKbmhAmDfVmEJPyVbIzA3V3mi9SvP/OLaNYEaMG0AppYf3iiSvC+6TA+qAFQuF5fI1oKUcsiE68uQGjw== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" sweetalert2 "^11.3.6" -"@abp/timeago@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-8.2.2.tgz#8af9558d325b2f2f9d9c5b1f90ac9eaf5531429b" - integrity sha512-ILdMeCTDNvmVOSm8Xc9ppL1xI1NoDzLbUCUojI7mvEFCE8sw3QGiFGhW6W7kYcoD7sRkxFl1Jn5V/urpAiQwaQ== +"@abp/timeago@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-8.2.3.tgz#dede68da0b5e252a573b0a1c5a9e4c831bc3c820" + integrity sha512-AbYf35a5M4QMAFK3aV6JE7QHR3GzpOX1zsun39i+97ZrNZf6do/eIgDx6dolTlSb0AsHf8qCrf7T6o1kIaXQ2w== dependencies: - "@abp/jquery" "~8.2.2" + "@abp/jquery" "~8.2.3" timeago "^1.6.7" -"@abp/toastr@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-8.2.2.tgz#a59d5b29e43698dbb614792bfd51185453859a7f" - integrity sha512-I4iiXV/SSXiD4UGM5oVsg6m6p4XmuxvqWmjOLSyoUfJQMC378mzNX0Ec9hYIY42C+GS2NalKtoaaYzBfcEtwoQ== +"@abp/toastr@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-8.2.3.tgz#77767666d578c05f039e84178c428370f6f10802" + integrity sha512-V1H0Efik/kGsRuTNPl//FsoH/8VU58S1K4GQ9k2V1bi8INaC/kU//I9frwOJsXd55imvsbmzh4XzrJ574eU84w== dependencies: - "@abp/jquery" "~8.2.2" + "@abp/jquery" "~8.2.3" toastr "^2.1.4" -"@abp/utils@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-8.2.2.tgz#84035d36e968c8ecdeee3c7617aa45bfeb3f6afd" - integrity sha512-70hmgTd7N63AnanzZYUWpobckhPzplBjlRmMhIi+9WZLQfxWpM/EN6l+qQndjAMMvgFl/vW03BUJh1fL9kGynA== +"@abp/utils@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-8.2.3.tgz#05e3d419ee9a6228f7ed4f86e8fd03f3ce57ed27" + integrity sha512-WMs/okBxGitkGRdsikByyJLFXRSD/DPfBWZdDhU4+TvcQmnTqog9S75kZ8CUpUe/wwDHYsY51ef6N6jOfkGTFQ== dependencies: just-compare "^2.3.0" diff --git a/modules/docs/src/Volo.Docs.Admin.Application.Contracts/Volo.Docs.Admin.Application.Contracts.abppkg.analyze.json b/modules/docs/src/Volo.Docs.Admin.Application.Contracts/Volo.Docs.Admin.Application.Contracts.abppkg.analyze.json index 15df3ae702..e46f6f929a 100644 --- a/modules/docs/src/Volo.Docs.Admin.Application.Contracts/Volo.Docs.Admin.Application.Contracts.abppkg.analyze.json +++ b/modules/docs/src/Volo.Docs.Admin.Application.Contracts/Volo.Docs.Admin.Application.Contracts.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Docs.Admin.Application.Contracts", - "hash": "100fbf697289f27c22d70a1f4eb45b5a", + "hash": "", "contents": [ { "namespace": "Volo.Docs.Admin", diff --git a/modules/docs/src/Volo.Docs.Admin.Application/Volo.Docs.Admin.Application.abppkg.analyze.json b/modules/docs/src/Volo.Docs.Admin.Application/Volo.Docs.Admin.Application.abppkg.analyze.json index 2ceac5605f..777b36a3d0 100644 --- a/modules/docs/src/Volo.Docs.Admin.Application/Volo.Docs.Admin.Application.abppkg.analyze.json +++ b/modules/docs/src/Volo.Docs.Admin.Application/Volo.Docs.Admin.Application.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Docs.Admin.Application", - "hash": "9f9f4df9fb9f426b7c115abc968b99d1", + "hash": "", "contents": [ { "namespace": "Volo.Docs.Admin", @@ -146,6 +146,7 @@ "methods": [ { "returnType": "PagedResultDto", + "namespace": "Volo.Docs.Admin.Projects", "name": "GetListAsync", "summary": null, "isAsync": true, @@ -162,6 +163,7 @@ }, { "returnType": "ProjectDto", + "namespace": "Volo.Docs.Admin.Projects", "name": "GetAsync", "summary": null, "isAsync": true, @@ -178,6 +180,7 @@ }, { "returnType": "ProjectDto", + "namespace": "Volo.Docs.Admin.Projects", "name": "CreateAsync", "summary": null, "isAsync": true, @@ -194,6 +197,7 @@ }, { "returnType": "ProjectDto", + "namespace": "Volo.Docs.Admin.Projects", "name": "UpdateAsync", "summary": null, "isAsync": true, @@ -215,6 +219,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Docs.Admin.Projects", "name": "DeleteAsync", "summary": null, "isAsync": true, @@ -231,6 +236,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Docs.Admin.Projects", "name": "ReindexAsync", "summary": null, "isAsync": true, @@ -247,6 +253,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Docs.Admin.Projects", "name": "ReindexAllAsync", "summary": null, "isAsync": true, @@ -257,6 +264,7 @@ }, { "returnType": "List", + "namespace": "Volo.Docs.Admin.Projects", "name": "GetListWithoutDetailsAsync", "summary": null, "isAsync": true, @@ -337,6 +345,7 @@ "methods": [ { "returnType": "Void", + "namespace": "Volo.Docs.Admin.Documents", "name": "ClearCacheAsync", "summary": null, "isAsync": true, @@ -353,6 +362,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Docs.Admin.Documents", "name": "PullAllAsync", "summary": null, "isAsync": true, @@ -369,6 +379,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Docs.Admin.Documents", "name": "PullAsync", "summary": null, "isAsync": true, @@ -385,6 +396,7 @@ }, { "returnType": "PagedResultDto", + "namespace": "Volo.Docs.Admin.Documents", "name": "GetAllAsync", "summary": null, "isAsync": true, @@ -401,6 +413,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Docs.Admin.Documents", "name": "RemoveFromCacheAsync", "summary": null, "isAsync": true, @@ -417,6 +430,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Docs.Admin.Documents", "name": "ReindexAsync", "summary": null, "isAsync": true, @@ -433,6 +447,7 @@ }, { "returnType": "List", + "namespace": "Volo.Docs.Admin.Documents", "name": "GetFilterItemsAsync", "summary": null, "isAsync": true, diff --git a/modules/docs/src/Volo.Docs.Admin.HttpApi.Client/Volo.Docs.Admin.HttpApi.Client.abppkg.analyze.json b/modules/docs/src/Volo.Docs.Admin.HttpApi.Client/Volo.Docs.Admin.HttpApi.Client.abppkg.analyze.json index a516cd090d..0a847b9638 100644 --- a/modules/docs/src/Volo.Docs.Admin.HttpApi.Client/Volo.Docs.Admin.HttpApi.Client.abppkg.analyze.json +++ b/modules/docs/src/Volo.Docs.Admin.HttpApi.Client/Volo.Docs.Admin.HttpApi.Client.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Docs.Admin.HttpApi.Client", - "hash": "76183fefaf0abfaa267c1d6e05a08b82", + "hash": "", "contents": [ { "namespace": "Volo.Docs.Admin", diff --git a/modules/docs/src/Volo.Docs.Admin.HttpApi/Volo.Docs.Admin.HttpApi.abppkg.analyze.json b/modules/docs/src/Volo.Docs.Admin.HttpApi/Volo.Docs.Admin.HttpApi.abppkg.analyze.json index a8db7612a7..9e75458cb8 100644 --- a/modules/docs/src/Volo.Docs.Admin.HttpApi/Volo.Docs.Admin.HttpApi.abppkg.analyze.json +++ b/modules/docs/src/Volo.Docs.Admin.HttpApi/Volo.Docs.Admin.HttpApi.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Docs.Admin.HttpApi", - "hash": "6661b70996cefd1caa9f3072d98aeab3", + "hash": "", "contents": [ { "namespace": "Volo.Docs.Admin", @@ -63,6 +63,269 @@ "contentType": "abpModule", "name": "DocsAdminHttpApiModule", "summary": null + }, + { + "apis": [ + { + "path": "api/docs/admin/documents/ClearCache", + "method": "POST", + "groupName": "DocumentsAdmin", + "responseType": "System.Void", + "responseTypeAsJson": "", + "parameterDescriptions": [ + { + "name": "input", + "type": "ClearCacheInput" + } + ] + }, + { + "path": "api/docs/admin/documents/PullAll", + "method": "POST", + "groupName": "DocumentsAdmin", + "responseType": "System.Void", + "responseTypeAsJson": "", + "parameterDescriptions": [ + { + "name": "input", + "type": "PullAllDocumentInput" + } + ] + }, + { + "path": "api/docs/admin/documents/Pull", + "method": "POST", + "groupName": "DocumentsAdmin", + "responseType": "System.Void", + "responseTypeAsJson": "", + "parameterDescriptions": [ + { + "name": "input", + "type": "PullDocumentInput" + } + ] + }, + { + "path": "api/docs/admin/documents/GetAll", + "method": "GET", + "groupName": "DocumentsAdmin", + "responseType": "Volo.Abp.Application.Dtos.PagedResultDto`1[Volo.Docs.Admin.Documents.DocumentDto]", + "responseTypeAsJson": "{\r\n \"totalCount\": 0,\r\n \"items\": [\r\n {\r\n \"projectId\": \"00000000-0000-0000-0000-000000000000\",\r\n \"projectName\": \"string\",\r\n \"name\": \"string\",\r\n \"version\": \"string\",\r\n \"languageCode\": \"string\",\r\n \"fileName\": \"string\",\r\n \"format\": \"string\",\r\n \"creationTime\": \"0001-01-01T00:00:00\",\r\n \"lastUpdatedTime\": \"0001-01-01T00:00:00\",\r\n \"lastSignificantUpdateTime\": null,\r\n \"lastCachedTime\": \"0001-01-01T00:00:00\",\r\n \"id\": \"00000000-0000-0000-0000-000000000000\"\r\n }\r\n ]\r\n}", + "parameterDescriptions": [ + { + "name": "ProjectId", + "type": "Nullable" + }, + { + "name": "Name", + "type": "String" + }, + { + "name": "Version", + "type": "String" + }, + { + "name": "LanguageCode", + "type": "String" + }, + { + "name": "FileName", + "type": "String" + }, + { + "name": "Format", + "type": "String" + }, + { + "name": "CreationTimeMin", + "type": "Nullable" + }, + { + "name": "CreationTimeMax", + "type": "Nullable" + }, + { + "name": "LastUpdatedTimeMin", + "type": "Nullable" + }, + { + "name": "LastUpdatedTimeMax", + "type": "Nullable" + }, + { + "name": "LastSignificantUpdateTimeMin", + "type": "Nullable" + }, + { + "name": "LastSignificantUpdateTimeMax", + "type": "Nullable" + }, + { + "name": "LastCachedTimeMin", + "type": "Nullable" + }, + { + "name": "LastCachedTimeMax", + "type": "Nullable" + }, + { + "name": "Sorting", + "type": "String" + }, + { + "name": "SkipCount", + "type": "Int32" + }, + { + "name": "MaxResultCount", + "type": "Int32" + } + ] + }, + { + "path": "api/docs/admin/documents/RemoveDocumentFromCache", + "method": "PUT", + "groupName": "DocumentsAdmin", + "responseType": "System.Void", + "responseTypeAsJson": "", + "parameterDescriptions": [ + { + "name": "documentId", + "type": "Guid" + } + ] + }, + { + "path": "api/docs/admin/documents/ReindexDocument", + "method": "PUT", + "groupName": "DocumentsAdmin", + "responseType": "System.Void", + "responseTypeAsJson": "", + "parameterDescriptions": [ + { + "name": "documentId", + "type": "Guid" + } + ] + }, + { + "path": "api/docs/admin/documents/GetFilterItems", + "method": "GET", + "groupName": "DocumentsAdmin", + "responseType": "System.Collections.Generic.List`1[Volo.Docs.Admin.Documents.DocumentInfoDto]", + "responseTypeAsJson": "[\r\n {\r\n \"version\": \"string\",\r\n \"format\": \"string\",\r\n \"languageCode\": \"string\",\r\n \"projectId\": \"00000000-0000-0000-0000-000000000000\"\r\n }\r\n]", + "parameterDescriptions": [] + }, + { + "path": "api/docs/admin/projects", + "method": "GET", + "groupName": "ProjectsAdmin", + "responseType": "Volo.Abp.Application.Dtos.PagedResultDto`1[Volo.Docs.Admin.Projects.ProjectDto]", + "responseTypeAsJson": "{\r\n \"totalCount\": 0,\r\n \"items\": [\r\n {\r\n \"name\": \"string\",\r\n \"shortName\": \"string\",\r\n \"format\": \"string\",\r\n \"defaultDocumentName\": \"string\",\r\n \"navigationDocumentName\": \"string\",\r\n \"parametersDocumentName\": \"string\",\r\n \"minimumVersion\": \"string\",\r\n \"mainWebsiteUrl\": \"string\",\r\n \"latestVersionBranchName\": \"string\",\r\n \"documentStoreType\": \"string\",\r\n \"extraProperties\": {\r\n \"string\": \"object\"\r\n },\r\n \"concurrencyStamp\": \"string\",\r\n \"id\": \"00000000-0000-0000-0000-000000000000\"\r\n }\r\n ]\r\n}", + "parameterDescriptions": [ + { + "name": "Sorting", + "type": "String" + }, + { + "name": "SkipCount", + "type": "Int32" + }, + { + "name": "MaxResultCount", + "type": "Int32" + } + ] + }, + { + "path": "api/docs/admin/projects/{id}", + "method": "GET", + "groupName": "ProjectsAdmin", + "responseType": "Volo.Docs.Admin.Projects.ProjectDto", + "responseTypeAsJson": "{\r\n \"name\": \"string\",\r\n \"shortName\": \"string\",\r\n \"format\": \"string\",\r\n \"defaultDocumentName\": \"string\",\r\n \"navigationDocumentName\": \"string\",\r\n \"parametersDocumentName\": \"string\",\r\n \"minimumVersion\": \"string\",\r\n \"mainWebsiteUrl\": \"string\",\r\n \"latestVersionBranchName\": \"string\",\r\n \"documentStoreType\": \"string\",\r\n \"extraProperties\": {\r\n \"string\": \"object\"\r\n },\r\n \"concurrencyStamp\": \"string\",\r\n \"id\": \"00000000-0000-0000-0000-000000000000\"\r\n}", + "parameterDescriptions": [ + { + "name": "id", + "type": "Guid" + } + ] + }, + { + "path": "api/docs/admin/projects", + "method": "POST", + "groupName": "ProjectsAdmin", + "responseType": "Volo.Docs.Admin.Projects.ProjectDto", + "responseTypeAsJson": "{\r\n \"name\": \"string\",\r\n \"shortName\": \"string\",\r\n \"format\": \"string\",\r\n \"defaultDocumentName\": \"string\",\r\n \"navigationDocumentName\": \"string\",\r\n \"parametersDocumentName\": \"string\",\r\n \"minimumVersion\": \"string\",\r\n \"mainWebsiteUrl\": \"string\",\r\n \"latestVersionBranchName\": \"string\",\r\n \"documentStoreType\": \"string\",\r\n \"extraProperties\": {\r\n \"string\": \"object\"\r\n },\r\n \"concurrencyStamp\": \"string\",\r\n \"id\": \"00000000-0000-0000-0000-000000000000\"\r\n}", + "parameterDescriptions": [ + { + "name": "input", + "type": "CreateProjectDto" + } + ] + }, + { + "path": "api/docs/admin/projects/{id}", + "method": "PUT", + "groupName": "ProjectsAdmin", + "responseType": "Volo.Docs.Admin.Projects.ProjectDto", + "responseTypeAsJson": "{\r\n \"name\": \"string\",\r\n \"shortName\": \"string\",\r\n \"format\": \"string\",\r\n \"defaultDocumentName\": \"string\",\r\n \"navigationDocumentName\": \"string\",\r\n \"parametersDocumentName\": \"string\",\r\n \"minimumVersion\": \"string\",\r\n \"mainWebsiteUrl\": \"string\",\r\n \"latestVersionBranchName\": \"string\",\r\n \"documentStoreType\": \"string\",\r\n \"extraProperties\": {\r\n \"string\": \"object\"\r\n },\r\n \"concurrencyStamp\": \"string\",\r\n \"id\": \"00000000-0000-0000-0000-000000000000\"\r\n}", + "parameterDescriptions": [ + { + "name": "id", + "type": "Guid" + }, + { + "name": "input", + "type": "UpdateProjectDto" + } + ] + }, + { + "path": "api/docs/admin/projects", + "method": "DELETE", + "groupName": "ProjectsAdmin", + "responseType": "System.Void", + "responseTypeAsJson": "", + "parameterDescriptions": [ + { + "name": "id", + "type": "Guid" + } + ] + }, + { + "path": "api/docs/admin/projects/ReindexAll", + "method": "POST", + "groupName": "ProjectsAdmin", + "responseType": "System.Void", + "responseTypeAsJson": "", + "parameterDescriptions": [] + }, + { + "path": "api/docs/admin/projects/GetListProjectWithoutDetailsAsync", + "method": "GET", + "groupName": "ProjectsAdmin", + "responseType": "System.Collections.Generic.List`1[Volo.Docs.Admin.Projects.ProjectWithoutDetailsDto]", + "responseTypeAsJson": "[\r\n {\r\n \"id\": \"00000000-0000-0000-0000-000000000000\",\r\n \"name\": \"string\"\r\n }\r\n]", + "parameterDescriptions": [] + }, + { + "path": "api/docs/admin/projects/Reindex", + "method": "POST", + "groupName": "ProjectsAdmin", + "responseType": "System.Void", + "responseTypeAsJson": "", + "parameterDescriptions": [ + { + "name": "input", + "type": "ReindexInput" + } + ] + } + ], + "contentType": "httpApi", + "name": "Defined Http Apis", + "summary": null } ] } \ No newline at end of file diff --git a/modules/docs/src/Volo.Docs.Admin.Web/Volo.Docs.Admin.Web.abppkg.analyze.json b/modules/docs/src/Volo.Docs.Admin.Web/Volo.Docs.Admin.Web.abppkg.analyze.json index 0cd4f5a31e..d186a8cb22 100644 --- a/modules/docs/src/Volo.Docs.Admin.Web/Volo.Docs.Admin.Web.abppkg.analyze.json +++ b/modules/docs/src/Volo.Docs.Admin.Web/Volo.Docs.Admin.Web.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Docs.Admin.Web", - "hash": "46beda5e0ea0eec3abd53bd83b1ab711", + "hash": "", "contents": [ { "namespace": "Volo.Docs.Admin", @@ -63,6 +63,36 @@ "contentType": "abpModule", "name": "DocsAdminWebModule", "summary": null + }, + { + "namespace": "Volo.Docs.Admin.Pages.Docs.Admin.Projects", + "contentType": "webPage", + "name": "CreateModel", + "summary": null + }, + { + "namespace": "Volo.Docs.Admin.Pages.Docs.Admin.Projects", + "contentType": "webPage", + "name": "EditModel", + "summary": null + }, + { + "namespace": "Volo.Docs.Admin.Pages.Docs.Admin.Projects", + "contentType": "webPage", + "name": "IndexModel", + "summary": null + }, + { + "namespace": "Volo.Docs.Admin.Pages.Docs.Admin.Projects", + "contentType": "webPage", + "name": "PullModel", + "summary": null + }, + { + "namespace": "Volo.Docs.Admin.Pages.Docs.Admin.Documents", + "contentType": "webPage", + "name": "IndexModel", + "summary": null } ] } \ No newline at end of file diff --git a/modules/docs/src/Volo.Docs.Application.Contracts/Volo.Docs.Application.Contracts.abppkg.analyze.json b/modules/docs/src/Volo.Docs.Application.Contracts/Volo.Docs.Application.Contracts.abppkg.analyze.json index 913486993a..72118d01a8 100644 --- a/modules/docs/src/Volo.Docs.Application.Contracts/Volo.Docs.Application.Contracts.abppkg.analyze.json +++ b/modules/docs/src/Volo.Docs.Application.Contracts/Volo.Docs.Application.Contracts.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Docs.Application.Contracts", - "hash": "77681b4bcac4f8661cfb9320e5a88586", + "hash": "", "contents": [ { "namespace": "Volo.Docs", diff --git a/modules/docs/src/Volo.Docs.Application/Volo.Docs.Application.abppkg.analyze.json b/modules/docs/src/Volo.Docs.Application/Volo.Docs.Application.abppkg.analyze.json index 62d9f908e0..86f06c124b 100644 --- a/modules/docs/src/Volo.Docs.Application/Volo.Docs.Application.abppkg.analyze.json +++ b/modules/docs/src/Volo.Docs.Application/Volo.Docs.Application.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Docs.Application", - "hash": "3ceeb88026645c5e1f479c66635735e1", + "hash": "", "contents": [ { "namespace": "Volo.Docs", @@ -146,6 +146,7 @@ "methods": [ { "returnType": "ListResultDto", + "namespace": "Volo.Docs.Projects", "name": "GetListAsync", "summary": null, "isAsync": true, @@ -156,6 +157,7 @@ }, { "returnType": "ProjectDto", + "namespace": "Volo.Docs.Projects", "name": "GetAsync", "summary": null, "isAsync": true, @@ -172,6 +174,7 @@ }, { "returnType": "ListResultDto", + "namespace": "Volo.Docs.Projects", "name": "GetVersionsAsync", "summary": null, "isAsync": true, @@ -188,6 +191,7 @@ }, { "returnType": "LanguageConfig", + "namespace": "Volo.Docs.Projects", "name": "GetLanguageListAsync", "summary": null, "isAsync": true, @@ -209,6 +213,7 @@ }, { "returnType": "String", + "namespace": "Volo.Docs.Projects", "name": "GetDefaultLanguageCodeAsync", "summary": null, "isAsync": true, @@ -300,6 +305,7 @@ "methods": [ { "returnType": "DocumentWithDetailsDto", + "namespace": "Volo.Docs.Documents", "name": "GetAsync", "summary": null, "isAsync": true, @@ -316,6 +322,7 @@ }, { "returnType": "DocumentWithDetailsDto", + "namespace": "Volo.Docs.Documents", "name": "GetDefaultAsync", "summary": null, "isAsync": true, @@ -332,6 +339,7 @@ }, { "returnType": "NavigationNode", + "namespace": "Volo.Docs.Documents", "name": "GetNavigationAsync", "summary": null, "isAsync": true, @@ -348,6 +356,7 @@ }, { "returnType": "DocumentResourceDto", + "namespace": "Volo.Docs.Documents", "name": "GetResourceAsync", "summary": null, "isAsync": true, @@ -363,7 +372,8 @@ ] }, { - "returnType": "List", + "returnType": "PagedResultDto", + "namespace": "Volo.Docs.Documents", "name": "SearchAsync", "summary": null, "isAsync": true, @@ -380,6 +390,7 @@ }, { "returnType": "Boolean", + "namespace": "Volo.Docs.Documents", "name": "FullSearchEnabledAsync", "summary": null, "isAsync": true, @@ -390,6 +401,7 @@ }, { "returnType": "List", + "namespace": "Volo.Docs.Documents", "name": "GetUrlsAsync", "summary": null, "isAsync": true, @@ -406,6 +418,7 @@ }, { "returnType": "DocumentParametersDto", + "namespace": "Volo.Docs.Documents", "name": "GetParametersAsync", "summary": null, "isAsync": true, diff --git a/modules/docs/src/Volo.Docs.Domain.Shared/Volo.Docs.Domain.Shared.abppkg.analyze.json b/modules/docs/src/Volo.Docs.Domain.Shared/Volo.Docs.Domain.Shared.abppkg.analyze.json index 99859ba391..f25d8b5f85 100644 --- a/modules/docs/src/Volo.Docs.Domain.Shared/Volo.Docs.Domain.Shared.abppkg.analyze.json +++ b/modules/docs/src/Volo.Docs.Domain.Shared/Volo.Docs.Domain.Shared.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Docs.Domain.Shared", - "hash": "cde21886d0014f55d0917549fc979627", + "hash": "", "contents": [ { "namespace": "Volo.Docs", diff --git a/modules/docs/src/Volo.Docs.Domain/Volo.Docs.Domain.abppkg.analyze.json b/modules/docs/src/Volo.Docs.Domain/Volo.Docs.Domain.abppkg.analyze.json index 27b92c495b..8056222fb4 100644 --- a/modules/docs/src/Volo.Docs.Domain/Volo.Docs.Domain.abppkg.analyze.json +++ b/modules/docs/src/Volo.Docs.Domain/Volo.Docs.Domain.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Docs.Domain", - "hash": "5b3b84e3cbb3954883258e6ceb4c6f98", + "hash": "", "contents": [ { "namespace": "Volo.Docs", @@ -157,6 +157,7 @@ "methods": [ { "returnType": "Void", + "namespace": "Volo.Docs.Projects", "name": "SetName", "summary": null, "isAsync": false, @@ -173,6 +174,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Docs.Projects", "name": "SetFormat", "summary": null, "isAsync": false, @@ -189,6 +191,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Docs.Projects", "name": "SetNavigationDocumentName", "summary": null, "isAsync": false, @@ -205,6 +208,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Docs.Projects", "name": "SetParametersDocumentName", "summary": null, "isAsync": false, @@ -221,6 +225,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Docs.Projects", "name": "SetDefaultDocumentName", "summary": null, "isAsync": false, @@ -350,6 +355,7 @@ "methods": [ { "returnType": "Void", + "namespace": "Volo.Docs.Documents", "name": "AddContributor", "summary": null, "isAsync": false, @@ -381,6 +387,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Docs.Documents", "name": "RemoveAllContributors", "summary": null, "isAsync": false, @@ -391,6 +398,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Docs.Documents", "name": "RemoveContributor", "summary": null, "isAsync": false, @@ -417,6 +425,7 @@ }, { "returnType": "DocumentContributor", + "namespace": "Volo.Docs.Documents", "name": "FindContributor", "summary": null, "isAsync": false, @@ -550,6 +559,7 @@ "methods": [ { "returnType": "Document", + "namespace": "Volo.Docs.GitHub.Documents", "name": "GetDocumentAsync", "summary": null, "isAsync": true, @@ -586,6 +596,7 @@ }, { "returnType": "List", + "namespace": "Volo.Docs.GitHub.Documents", "name": "GetVersionsAsync", "summary": null, "isAsync": true, @@ -602,6 +613,7 @@ }, { "returnType": "DocumentResource", + "namespace": "Volo.Docs.GitHub.Documents", "name": "GetResource", "summary": null, "isAsync": true, @@ -633,6 +645,7 @@ }, { "returnType": "LanguageConfig", + "namespace": "Volo.Docs.GitHub.Documents", "name": "GetLanguageListAsync", "summary": null, "isAsync": true, @@ -688,6 +701,7 @@ "methods": [ { "returnType": "Boolean", + "namespace": "Volo.Docs.GitHub.Documents", "name": "HasPatchSignificantChanges", "summary": null, "isAsync": false, @@ -738,6 +752,7 @@ "methods": [ { "returnType": "Document", + "namespace": "Volo.Docs.FileSystem.Documents", "name": "GetDocumentAsync", "summary": null, "isAsync": true, @@ -774,6 +789,7 @@ }, { "returnType": "List", + "namespace": "Volo.Docs.FileSystem.Documents", "name": "GetVersionsAsync", "summary": null, "isAsync": true, @@ -790,6 +806,7 @@ }, { "returnType": "LanguageConfig", + "namespace": "Volo.Docs.FileSystem.Documents", "name": "GetLanguageListAsync", "summary": null, "isAsync": true, @@ -811,6 +828,7 @@ }, { "returnType": "DocumentResource", + "namespace": "Volo.Docs.FileSystem.Documents", "name": "GetResource", "summary": null, "isAsync": true, @@ -876,6 +894,7 @@ "methods": [ { "returnType": "Void", + "namespace": "Volo.Docs.Documents.FullSearch.Elastic", "name": "CreateIndexIfNeededAsync", "summary": null, "isAsync": true, @@ -892,6 +911,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Docs.Documents.FullSearch.Elastic", "name": "AddOrUpdateAsync", "summary": null, "isAsync": true, @@ -913,6 +933,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Docs.Documents.FullSearch.Elastic", "name": "AddOrUpdateManyAsync", "summary": null, "isAsync": true, @@ -934,6 +955,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Docs.Documents.FullSearch.Elastic", "name": "DeleteAsync", "summary": null, "isAsync": true, @@ -955,6 +977,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Docs.Documents.FullSearch.Elastic", "name": "DeleteAllAsync", "summary": null, "isAsync": true, @@ -971,6 +994,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Docs.Documents.FullSearch.Elastic", "name": "DeleteAllByProjectIdAsync", "summary": null, "isAsync": true, @@ -991,7 +1015,8 @@ ] }, { - "returnType": "List", + "returnType": "EsDocumentResult", + "namespace": "Volo.Docs.Documents.FullSearch.Elastic", "name": "SearchAsync", "summary": null, "isAsync": true, @@ -1038,6 +1063,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Docs.Documents.FullSearch.Elastic", "name": "ValidateElasticSearchEnabled", "summary": null, "isAsync": false, @@ -1116,6 +1142,7 @@ "methods": [ { "returnType": "List", + "namespace": "Volo.Docs.Projects", "name": "GetListAsync", "summary": null, "isAsync": true, @@ -1147,6 +1174,7 @@ }, { "returnType": "List", + "namespace": "Volo.Docs.Projects", "name": "GetListWithoutDetailsAsync", "summary": null, "isAsync": true, @@ -1163,6 +1191,7 @@ }, { "returnType": "Project", + "namespace": "Volo.Docs.Projects", "name": "GetByShortNameAsync", "summary": null, "isAsync": true, @@ -1184,6 +1213,7 @@ }, { "returnType": "Boolean", + "namespace": "Volo.Docs.Projects", "name": "ShortNameExistsAsync", "summary": null, "isAsync": true, @@ -1241,6 +1271,7 @@ "methods": [ { "returnType": "List", + "namespace": "Volo.Docs.Documents", "name": "GetListWithoutDetailsByProjectId", "summary": null, "isAsync": true, @@ -1262,6 +1293,7 @@ }, { "returnType": "List", + "namespace": "Volo.Docs.Documents", "name": "GetUniqueListDocumentInfoAsync", "summary": null, "isAsync": true, @@ -1278,6 +1310,7 @@ }, { "returnType": "List", + "namespace": "Volo.Docs.Documents", "name": "GetListByProjectId", "summary": null, "isAsync": true, @@ -1297,8 +1330,36 @@ } ] }, + { + "returnType": "Void", + "namespace": "Volo.Docs.Documents", + "name": "UpdateProjectLastCachedTimeAsync", + "summary": null, + "isAsync": true, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "Guid", + "name": "projectId", + "isOptional": false + }, + { + "type": "DateTime", + "name": "cachedTime", + "isOptional": false + }, + { + "type": "CancellationToken", + "name": "cancellationToken", + "isOptional": true + } + ] + }, { "returnType": "Document", + "namespace": "Volo.Docs.Documents", "name": "FindAsync", "summary": null, "isAsync": true, @@ -1340,6 +1401,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Docs.Documents", "name": "DeleteAsync", "summary": null, "isAsync": true, @@ -1381,6 +1443,7 @@ }, { "returnType": "List", + "namespace": "Volo.Docs.Documents", "name": "GetListAsync", "summary": null, "isAsync": true, @@ -1412,6 +1475,7 @@ }, { "returnType": "List", + "namespace": "Volo.Docs.Documents", "name": "GetAllAsync", "summary": null, "isAsync": true, @@ -1513,6 +1577,7 @@ }, { "returnType": "Int64", + "namespace": "Volo.Docs.Documents", "name": "GetAllCountAsync", "summary": null, "isAsync": true, @@ -1614,6 +1679,7 @@ }, { "returnType": "Document", + "namespace": "Volo.Docs.Documents", "name": "GetAsync", "summary": null, "isAsync": true, diff --git a/modules/docs/src/Volo.Docs.EntityFrameworkCore/Volo.Docs.EntityFrameworkCore.abppkg.analyze.json b/modules/docs/src/Volo.Docs.EntityFrameworkCore/Volo.Docs.EntityFrameworkCore.abppkg.analyze.json index 1ee0fd3a6e..0f74f96d32 100644 --- a/modules/docs/src/Volo.Docs.EntityFrameworkCore/Volo.Docs.EntityFrameworkCore.abppkg.analyze.json +++ b/modules/docs/src/Volo.Docs.EntityFrameworkCore/Volo.Docs.EntityFrameworkCore.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Docs.EntityFrameworkCore", - "hash": "cda98b30d45c0f9999f98a05e8368841", + "hash": "", "contents": [ { "namespace": "Volo.Docs.EntityFrameworkCore", @@ -67,27 +67,27 @@ { "namespace": "Volo.Docs.EntityFrameworkCore", "connectionStringName": "Docs", - "databaseTables": [ - { - "entityFullName": "Volo.Docs.Documents.Document", - "contentType": "databaseTable", - "name": "DocsDocuments", - "summary": null - }, - { - "entityFullName": "Volo.Docs.Documents.DocumentContributor", - "contentType": "databaseTable", - "name": "DocsDocumentContributors", - "summary": null - }, + "databaseTables": [], + "replacedDbContexts": [], + "modelBuilderExtensionMethods": [ { - "entityFullName": "Volo.Docs.Projects.Project", - "contentType": "databaseTable", - "name": "DocsProjects", - "summary": null + "returnType": "Void", + "namespace": "Volo.Docs.EntityFrameworkCore", + "name": "ConfigureDocs", + "summary": null, + "isAsync": false, + "isPublic": true, + "isPrivate": false, + "isStatic": true, + "parameters": [ + { + "type": "ModelBuilder", + "name": "builder", + "isOptional": false + } + ] } ], - "replacedDbContexts": [], "implementingInterfaces": [ { "name": "IInfrastructure", diff --git a/modules/docs/src/Volo.Docs.HttpApi.Client/Volo.Docs.HttpApi.Client.abppkg.analyze.json b/modules/docs/src/Volo.Docs.HttpApi.Client/Volo.Docs.HttpApi.Client.abppkg.analyze.json index 7f356ba232..8f97c28e30 100644 --- a/modules/docs/src/Volo.Docs.HttpApi.Client/Volo.Docs.HttpApi.Client.abppkg.analyze.json +++ b/modules/docs/src/Volo.Docs.HttpApi.Client/Volo.Docs.HttpApi.Client.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Docs.HttpApi.Client", - "hash": "551e49e8d7abd9c47376edaae70ab7f8", + "hash": "", "contents": [ { "namespace": "Volo.Docs", diff --git a/modules/docs/src/Volo.Docs.HttpApi/Volo.Docs.HttpApi.abppkg.analyze.json b/modules/docs/src/Volo.Docs.HttpApi/Volo.Docs.HttpApi.abppkg.analyze.json index c9a125a359..468436f828 100644 --- a/modules/docs/src/Volo.Docs.HttpApi/Volo.Docs.HttpApi.abppkg.analyze.json +++ b/modules/docs/src/Volo.Docs.HttpApi/Volo.Docs.HttpApi.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Docs.HttpApi", - "hash": "26ffc9a7630f4d5dddf4eea1ac4c51cc", + "hash": "", "contents": [ { "namespace": "Volo.Docs", @@ -63,6 +63,228 @@ "contentType": "abpModule", "name": "DocsHttpApiModule", "summary": null + }, + { + "apis": [ + { + "path": "api/docs/projects", + "method": "GET", + "groupName": "DocsProject", + "responseType": "Volo.Abp.Application.Dtos.ListResultDto`1[Volo.Docs.Projects.ProjectDto]", + "responseTypeAsJson": "{\r\n \"items\": [\r\n {\r\n \"name\": \"string\",\r\n \"shortName\": \"string\",\r\n \"format\": \"string\",\r\n \"defaultDocumentName\": \"string\",\r\n \"navigationDocumentName\": \"string\",\r\n \"minimumVersion\": \"string\",\r\n \"mainWebsiteUrl\": \"string\",\r\n \"latestVersionBranchName\": \"string\",\r\n \"documentStoreType\": \"string\",\r\n \"extraProperties\": {\r\n \"string\": \"object\"\r\n },\r\n \"id\": \"00000000-0000-0000-0000-000000000000\"\r\n }\r\n ]\r\n}", + "parameterDescriptions": [] + }, + { + "path": "api/docs/projects/{shortName}", + "method": "GET", + "groupName": "DocsProject", + "responseType": "Volo.Docs.Projects.ProjectDto", + "responseTypeAsJson": "{\r\n \"name\": \"string\",\r\n \"shortName\": \"string\",\r\n \"format\": \"string\",\r\n \"defaultDocumentName\": \"string\",\r\n \"navigationDocumentName\": \"string\",\r\n \"minimumVersion\": \"string\",\r\n \"mainWebsiteUrl\": \"string\",\r\n \"latestVersionBranchName\": \"string\",\r\n \"documentStoreType\": \"string\",\r\n \"extraProperties\": {\r\n \"string\": \"object\"\r\n },\r\n \"id\": \"00000000-0000-0000-0000-000000000000\"\r\n}", + "parameterDescriptions": [ + { + "name": "shortName", + "type": "String" + } + ] + }, + { + "path": "api/docs/projects/{shortName}/defaultLanguage", + "method": "GET", + "groupName": "DocsProject", + "responseType": "System.String", + "responseTypeAsJson": "\"string\"", + "parameterDescriptions": [ + { + "name": "shortName", + "type": "String" + }, + { + "name": "version", + "type": "String" + } + ] + }, + { + "path": "api/docs/projects/{shortName}/versions", + "method": "GET", + "groupName": "DocsProject", + "responseType": "Volo.Abp.Application.Dtos.ListResultDto`1[Volo.Docs.Projects.VersionInfoDto]", + "responseTypeAsJson": "{\r\n \"items\": [\r\n {\r\n \"displayName\": \"string\",\r\n \"name\": \"string\"\r\n }\r\n ]\r\n}", + "parameterDescriptions": [ + { + "name": "shortName", + "type": "String" + } + ] + }, + { + "path": "api/docs/projects/{shortName}/{version}/languageList", + "method": "GET", + "groupName": "DocsProject", + "responseType": "Volo.Docs.Documents.LanguageConfig", + "responseTypeAsJson": "{\r\n \"languages\": [\r\n {\r\n \"displayName\": \"string\",\r\n \"code\": \"string\",\r\n \"isDefault\": false\r\n }\r\n ]\r\n}", + "parameterDescriptions": [ + { + "name": "shortName", + "type": "String" + }, + { + "name": "version", + "type": "String" + } + ] + }, + { + "path": "api/docs/documents", + "method": "GET", + "groupName": "DocsDocument", + "responseType": "Volo.Docs.Documents.DocumentWithDetailsDto", + "responseTypeAsJson": "{\r\n \"name\": \"string\",\r\n \"version\": \"string\",\r\n \"languageCode\": \"string\",\r\n \"fileName\": \"string\",\r\n \"content\": \"string\",\r\n \"format\": \"string\",\r\n \"editLink\": \"string\",\r\n \"rootUrl\": \"string\",\r\n \"rawRootUrl\": \"string\",\r\n \"localDirectory\": \"string\",\r\n \"creationTime\": \"0001-01-01T00:00:00\",\r\n \"lastUpdatedTime\": \"0001-01-01T00:00:00\",\r\n \"lastCachedTime\": \"0001-01-01T00:00:00\",\r\n \"project\": {\r\n \"name\": \"string\",\r\n \"shortName\": \"string\",\r\n \"format\": \"string\",\r\n \"defaultDocumentName\": \"string\",\r\n \"navigationDocumentName\": \"string\",\r\n \"minimumVersion\": \"string\",\r\n \"mainWebsiteUrl\": \"string\",\r\n \"latestVersionBranchName\": \"string\",\r\n \"documentStoreType\": \"string\",\r\n \"extraProperties\": {\r\n \"string\": \"object\"\r\n },\r\n \"id\": \"00000000-0000-0000-0000-000000000000\"\r\n },\r\n \"contributors\": [\r\n {\r\n \"username\": \"string\",\r\n \"userProfileUrl\": \"string\",\r\n \"avatarUrl\": \"string\",\r\n \"commitCount\": 0\r\n }\r\n ]\r\n}", + "parameterDescriptions": [ + { + "name": "ProjectId", + "type": "Guid" + }, + { + "name": "Name", + "type": "String" + }, + { + "name": "Version", + "type": "String" + }, + { + "name": "LanguageCode", + "type": "String" + } + ] + }, + { + "path": "api/docs/documents/default", + "method": "GET", + "groupName": "DocsDocument", + "responseType": "Volo.Docs.Documents.DocumentWithDetailsDto", + "responseTypeAsJson": "{\r\n \"name\": \"string\",\r\n \"version\": \"string\",\r\n \"languageCode\": \"string\",\r\n \"fileName\": \"string\",\r\n \"content\": \"string\",\r\n \"format\": \"string\",\r\n \"editLink\": \"string\",\r\n \"rootUrl\": \"string\",\r\n \"rawRootUrl\": \"string\",\r\n \"localDirectory\": \"string\",\r\n \"creationTime\": \"0001-01-01T00:00:00\",\r\n \"lastUpdatedTime\": \"0001-01-01T00:00:00\",\r\n \"lastCachedTime\": \"0001-01-01T00:00:00\",\r\n \"project\": {\r\n \"name\": \"string\",\r\n \"shortName\": \"string\",\r\n \"format\": \"string\",\r\n \"defaultDocumentName\": \"string\",\r\n \"navigationDocumentName\": \"string\",\r\n \"minimumVersion\": \"string\",\r\n \"mainWebsiteUrl\": \"string\",\r\n \"latestVersionBranchName\": \"string\",\r\n \"documentStoreType\": \"string\",\r\n \"extraProperties\": {\r\n \"string\": \"object\"\r\n },\r\n \"id\": \"00000000-0000-0000-0000-000000000000\"\r\n },\r\n \"contributors\": [\r\n {\r\n \"username\": \"string\",\r\n \"userProfileUrl\": \"string\",\r\n \"avatarUrl\": \"string\",\r\n \"commitCount\": 0\r\n }\r\n ]\r\n}", + "parameterDescriptions": [ + { + "name": "ProjectId", + "type": "Guid" + }, + { + "name": "Version", + "type": "String" + }, + { + "name": "LanguageCode", + "type": "String" + } + ] + }, + { + "path": "api/docs/documents/navigation", + "method": "GET", + "groupName": "DocsDocument", + "responseType": "Volo.Docs.Documents.NavigationNode", + "responseTypeAsJson": "", + "parameterDescriptions": [ + { + "name": "ProjectId", + "type": "Guid" + }, + { + "name": "Version", + "type": "String" + }, + { + "name": "LanguageCode", + "type": "String" + } + ] + }, + { + "path": "api/docs/documents/resource", + "method": "GET", + "groupName": "DocsDocument", + "responseType": "Volo.Docs.Documents.DocumentResourceDto", + "responseTypeAsJson": "", + "parameterDescriptions": [ + { + "name": "ProjectId", + "type": "Guid" + }, + { + "name": "Name", + "type": "String" + }, + { + "name": "Version", + "type": "String" + }, + { + "name": "LanguageCode", + "type": "String" + } + ] + }, + { + "path": "api/docs/documents/search", + "method": "POST", + "groupName": "DocsDocument", + "responseType": "Volo.Abp.Application.Dtos.PagedResultDto`1[Volo.Docs.Documents.DocumentSearchOutput]", + "responseTypeAsJson": "{\r\n \"totalCount\": 0,\r\n \"items\": [\r\n {\r\n \"name\": \"string\",\r\n \"fileName\": \"string\",\r\n \"version\": \"string\",\r\n \"languageCode\": \"string\",\r\n \"highlight\": [\r\n \"string\"\r\n ]\r\n }\r\n ]\r\n}", + "parameterDescriptions": [ + { + "name": "input", + "type": "DocumentSearchInput" + } + ] + }, + { + "path": "api/docs/documents/full-search-enabled", + "method": "GET", + "groupName": "DocsDocument", + "responseType": "System.Boolean", + "responseTypeAsJson": "true", + "parameterDescriptions": [] + }, + { + "path": "api/docs/documents/links", + "method": "GET", + "groupName": "DocsDocument", + "responseType": "System.Collections.Generic.List`1[System.String]", + "responseTypeAsJson": "[\r\n \"string\"\r\n]", + "parameterDescriptions": [ + { + "name": "prefix", + "type": "String" + } + ] + }, + { + "path": "api/docs/documents/parameters", + "method": "GET", + "groupName": "DocsDocument", + "responseType": "Volo.Docs.Documents.DocumentParametersDto", + "responseTypeAsJson": "{\r\n \"parameters\": [\r\n {\r\n \"name\": \"string\",\r\n \"displayName\": \"string\",\r\n \"values\": {\r\n \"string\": \"string\"\r\n }\r\n }\r\n ]\r\n}", + "parameterDescriptions": [ + { + "name": "ProjectId", + "type": "Guid" + }, + { + "name": "Version", + "type": "String" + }, + { + "name": "LanguageCode", + "type": "String" + } + ] + } + ], + "contentType": "httpApi", + "name": "Defined Http Apis", + "summary": null } ] } \ No newline at end of file diff --git a/modules/docs/src/Volo.Docs.MongoDB/Volo.Docs.MongoDB.abppkg.analyze.json b/modules/docs/src/Volo.Docs.MongoDB/Volo.Docs.MongoDB.abppkg.analyze.json index 287cbacf5b..e6dde9a37b 100644 --- a/modules/docs/src/Volo.Docs.MongoDB/Volo.Docs.MongoDB.abppkg.analyze.json +++ b/modules/docs/src/Volo.Docs.MongoDB/Volo.Docs.MongoDB.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Docs.MongoDB", - "hash": "010d09056500caecfaeb5cbb7f049f0a", + "hash": "", "contents": [ { "namespace": "Volo.Docs.MongoDB", @@ -69,15 +69,15 @@ "connectionStringName": "Docs", "databaseCollections": [ { - "entityFullName": "Volo.Docs.Documents.Document", + "entityFullName": "Volo.Docs.Projects.Project", "contentType": "databaseCollection", - "name": "DocsDocumentS", + "name": "Projects", "summary": null }, { - "entityFullName": "Volo.Docs.Projects.Project", + "entityFullName": "Volo.Docs.Documents.Document", "contentType": "databaseCollection", - "name": "DocsProjects", + "name": "Documents", "summary": null } ], diff --git a/modules/docs/src/Volo.Docs.Web/Volo.Docs.Web.abppkg.analyze.json b/modules/docs/src/Volo.Docs.Web/Volo.Docs.Web.abppkg.analyze.json index 8577f013a9..e05caa0b3c 100644 --- a/modules/docs/src/Volo.Docs.Web/Volo.Docs.Web.abppkg.analyze.json +++ b/modules/docs/src/Volo.Docs.Web/Volo.Docs.Web.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Docs.Web", - "hash": "6de1a5d8b7e07b55bd1fc1f98dad11d0", + "hash": "", "contents": [ { "namespace": "Volo.Docs", @@ -83,6 +83,44 @@ "contentType": "abpModule", "name": "DocsWebModule", "summary": null + }, + { + "apis": [ + { + "path": "document-resources", + "method": "GET", + "groupName": "DocumentResource", + "responseType": "Volo.Abp.Http.RemoteServiceErrorResponse", + "responseTypeAsJson": "", + "parameterDescriptions": [ + { + "name": "ProjectId", + "type": "Guid" + }, + { + "name": "Name", + "type": "String" + }, + { + "name": "Version", + "type": "String" + }, + { + "name": "LanguageCode", + "type": "String" + } + ] + } + ], + "contentType": "httpApi", + "name": "Defined Http Apis", + "summary": null + }, + { + "namespace": "Volo.Docs.Pages.Documents.Project", + "contentType": "webPage", + "name": "IndexModel", + "summary": null } ] } \ No newline at end of file diff --git a/modules/feature-management/src/Volo.Abp.FeatureManagement.Application.Contracts/Volo.Abp.FeatureManagement.Application.Contracts.abppkg.analyze.json b/modules/feature-management/src/Volo.Abp.FeatureManagement.Application.Contracts/Volo.Abp.FeatureManagement.Application.Contracts.abppkg.analyze.json index 16b9522c12..fe7a26b081 100644 --- a/modules/feature-management/src/Volo.Abp.FeatureManagement.Application.Contracts/Volo.Abp.FeatureManagement.Application.Contracts.abppkg.analyze.json +++ b/modules/feature-management/src/Volo.Abp.FeatureManagement.Application.Contracts/Volo.Abp.FeatureManagement.Application.Contracts.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.FeatureManagement.Application.Contracts", - "hash": "a098bfbfeedbc75302632b819fbdd62c", + "hash": "", "contents": [ { "namespace": "Volo.Abp.FeatureManagement", @@ -75,7 +75,7 @@ "summary": null }, { - "displayName": "Manage Host features", + "displayName": "Manage host features", "isEnabled": true, "contentType": "permission", "name": "FeatureManagement.ManageHostFeatures", diff --git a/modules/feature-management/src/Volo.Abp.FeatureManagement.Application/Volo.Abp.FeatureManagement.Application.abppkg.analyze.json b/modules/feature-management/src/Volo.Abp.FeatureManagement.Application/Volo.Abp.FeatureManagement.Application.abppkg.analyze.json index af78f2dc02..96e583a191 100644 --- a/modules/feature-management/src/Volo.Abp.FeatureManagement.Application/Volo.Abp.FeatureManagement.Application.abppkg.analyze.json +++ b/modules/feature-management/src/Volo.Abp.FeatureManagement.Application/Volo.Abp.FeatureManagement.Application.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.FeatureManagement.Application", - "hash": "a9ca2b4f663694fa5d258984dc689f56", + "hash": "", "contents": [ { "namespace": "Volo.Abp.FeatureManagement", @@ -136,6 +136,7 @@ "methods": [ { "returnType": "GetFeatureListResultDto", + "namespace": "Volo.Abp.FeatureManagement", "name": "GetAsync", "summary": null, "isAsync": true, @@ -157,6 +158,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.FeatureManagement", "name": "UpdateAsync", "summary": null, "isAsync": true, @@ -183,6 +185,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.FeatureManagement", "name": "DeleteAsync", "summary": null, "isAsync": true, diff --git a/modules/feature-management/src/Volo.Abp.FeatureManagement.Blazor.Server/Volo.Abp.FeatureManagement.Blazor.Server.abppkg.analyze.json b/modules/feature-management/src/Volo.Abp.FeatureManagement.Blazor.Server/Volo.Abp.FeatureManagement.Blazor.Server.abppkg.analyze.json new file mode 100644 index 0000000000..1b85033b80 --- /dev/null +++ b/modules/feature-management/src/Volo.Abp.FeatureManagement.Blazor.Server/Volo.Abp.FeatureManagement.Blazor.Server.abppkg.analyze.json @@ -0,0 +1,68 @@ +{ + "name": "Volo.Abp.FeatureManagement.Blazor.Server", + "hash": "", + "contents": [ + { + "namespace": "Volo.Abp.FeatureManagement.Blazor.Server", + "dependsOnModules": [ + { + "declaringAssemblyName": "Volo.Abp.FeatureManagement.Blazor", + "namespace": "Volo.Abp.FeatureManagement.Blazor", + "name": "AbpFeatureManagementBlazorModule" + }, + { + "declaringAssemblyName": "Volo.Abp.AspNetCore.Components.Server.Theming", + "namespace": "Volo.Abp.AspNetCore.Components.Server.Theming", + "name": "AbpAspNetCoreComponentsServerThemingModule" + } + ], + "implementingInterfaces": [ + { + "name": "IAbpModule", + "namespace": "Volo.Abp.Modularity", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.Modularity.IAbpModule" + }, + { + "name": "IOnPreApplicationInitialization", + "namespace": "Volo.Abp.Modularity", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.Modularity.IOnPreApplicationInitialization" + }, + { + "name": "IOnApplicationInitialization", + "namespace": "Volo.Abp", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.IOnApplicationInitialization" + }, + { + "name": "IOnPostApplicationInitialization", + "namespace": "Volo.Abp.Modularity", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.Modularity.IOnPostApplicationInitialization" + }, + { + "name": "IOnApplicationShutdown", + "namespace": "Volo.Abp", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.IOnApplicationShutdown" + }, + { + "name": "IPreConfigureServices", + "namespace": "Volo.Abp.Modularity", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.Modularity.IPreConfigureServices" + }, + { + "name": "IPostConfigureServices", + "namespace": "Volo.Abp.Modularity", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.Modularity.IPostConfigureServices" + } + ], + "contentType": "abpModule", + "name": "AbpFeatureManagementBlazorServerModule", + "summary": null + } + ] +} \ No newline at end of file diff --git a/modules/feature-management/src/Volo.Abp.FeatureManagement.Blazor/Volo.Abp.FeatureManagement.Blazor.abppkg.analyze.json b/modules/feature-management/src/Volo.Abp.FeatureManagement.Blazor/Volo.Abp.FeatureManagement.Blazor.abppkg.analyze.json new file mode 100644 index 0000000000..1332348464 --- /dev/null +++ b/modules/feature-management/src/Volo.Abp.FeatureManagement.Blazor/Volo.Abp.FeatureManagement.Blazor.abppkg.analyze.json @@ -0,0 +1,90 @@ +{ + "name": "Volo.Abp.FeatureManagement.Blazor", + "hash": "", + "contents": [ + { + "namespace": "Volo.Abp.FeatureManagement.Blazor", + "dependsOnModules": [ + { + "declaringAssemblyName": "Volo.Abp.AspNetCore.Components.Web.Theming", + "namespace": "Volo.Abp.AspNetCore.Components.Web.Theming", + "name": "AbpAspNetCoreComponentsWebThemingModule" + }, + { + "declaringAssemblyName": "Volo.Abp.FeatureManagement.Application.Contracts", + "namespace": "Volo.Abp.FeatureManagement", + "name": "AbpFeatureManagementApplicationContractsModule" + }, + { + "declaringAssemblyName": "Volo.Abp.Features", + "namespace": "Volo.Abp.Features", + "name": "AbpFeaturesModule" + }, + { + "declaringAssemblyName": "Volo.Abp.SettingManagement.Blazor", + "namespace": "Volo.Abp.SettingManagement.Blazor", + "name": "AbpSettingManagementBlazorModule" + } + ], + "implementingInterfaces": [ + { + "name": "IAbpModule", + "namespace": "Volo.Abp.Modularity", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.Modularity.IAbpModule" + }, + { + "name": "IOnPreApplicationInitialization", + "namespace": "Volo.Abp.Modularity", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.Modularity.IOnPreApplicationInitialization" + }, + { + "name": "IOnApplicationInitialization", + "namespace": "Volo.Abp", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.IOnApplicationInitialization" + }, + { + "name": "IOnPostApplicationInitialization", + "namespace": "Volo.Abp.Modularity", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.Modularity.IOnPostApplicationInitialization" + }, + { + "name": "IOnApplicationShutdown", + "namespace": "Volo.Abp", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.IOnApplicationShutdown" + }, + { + "name": "IPreConfigureServices", + "namespace": "Volo.Abp.Modularity", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.Modularity.IPreConfigureServices" + }, + { + "name": "IPostConfigureServices", + "namespace": "Volo.Abp.Modularity", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.Modularity.IPostConfigureServices" + } + ], + "contentType": "abpModule", + "name": "AbpFeatureManagementBlazorModule", + "summary": null + }, + { + "namespace": "Volo.Abp.FeatureManagement.Blazor.Components", + "contentType": "webPage", + "name": "FeatureManagementModal", + "summary": null + }, + { + "namespace": "Volo.Abp.FeatureManagement.Blazor.Components.FeatureSettingGroup", + "contentType": "webPage", + "name": "FeatureSettingManagementComponent", + "summary": null + } + ] +} \ No newline at end of file diff --git a/modules/feature-management/src/Volo.Abp.FeatureManagement.Domain.Shared/Volo.Abp.FeatureManagement.Domain.Shared.abppkg.analyze.json b/modules/feature-management/src/Volo.Abp.FeatureManagement.Domain.Shared/Volo.Abp.FeatureManagement.Domain.Shared.abppkg.analyze.json index a383a8f2d2..441f9df896 100644 --- a/modules/feature-management/src/Volo.Abp.FeatureManagement.Domain.Shared/Volo.Abp.FeatureManagement.Domain.Shared.abppkg.analyze.json +++ b/modules/feature-management/src/Volo.Abp.FeatureManagement.Domain.Shared/Volo.Abp.FeatureManagement.Domain.Shared.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.FeatureManagement.Domain.Shared", - "hash": "7cf1adab77763451880c93c2ce5de54d", + "hash": "", "contents": [ { "namespace": "Volo.Abp.FeatureManagement", diff --git a/modules/feature-management/src/Volo.Abp.FeatureManagement.Domain/Volo.Abp.FeatureManagement.Domain.abppkg.analyze.json b/modules/feature-management/src/Volo.Abp.FeatureManagement.Domain/Volo.Abp.FeatureManagement.Domain.abppkg.analyze.json index e45b038fb4..3c2abaac23 100644 --- a/modules/feature-management/src/Volo.Abp.FeatureManagement.Domain/Volo.Abp.FeatureManagement.Domain.abppkg.analyze.json +++ b/modules/feature-management/src/Volo.Abp.FeatureManagement.Domain/Volo.Abp.FeatureManagement.Domain.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.FeatureManagement.Domain", - "hash": "7dc58fbace956cd5b28d943e0568d553", + "hash": "", "contents": [ { "namespace": "Volo.Abp.FeatureManagement", @@ -117,6 +117,7 @@ "methods": [ { "returnType": "Boolean", + "namespace": "Volo.Abp.FeatureManagement", "name": "HasSameData", "summary": null, "isAsync": false, @@ -133,6 +134,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.FeatureManagement", "name": "Patch", "summary": null, "isAsync": false, @@ -153,11 +155,6 @@ "namespace": "Volo.Abp.FeatureManagement", "primaryKeyType": "Guid", "properties": [ - { - "type": "System.Guid", - "name": "Id", - "summary": null - }, { "type": "System.String", "name": "GroupName", @@ -266,6 +263,7 @@ "methods": [ { "returnType": "Boolean", + "namespace": "Volo.Abp.FeatureManagement", "name": "HasSameData", "summary": null, "isAsync": false, @@ -282,6 +280,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.FeatureManagement", "name": "Patch", "summary": null, "isAsync": false, @@ -302,11 +301,6 @@ "namespace": "Volo.Abp.FeatureManagement", "primaryKeyType": "Guid", "properties": [ - { - "type": "System.Guid", - "name": "Id", - "summary": null - }, { "type": "System.String", "name": "Name", @@ -436,6 +430,7 @@ "methods": [ { "returnType": "FeatureDefinitionRecord", + "namespace": "Volo.Abp.FeatureManagement", "name": "FindByNameAsync", "summary": null, "isAsync": true, @@ -552,6 +547,7 @@ "methods": [ { "returnType": "FeatureValue", + "namespace": "Volo.Abp.FeatureManagement", "name": "FindAsync", "summary": null, "isAsync": true, @@ -583,6 +579,7 @@ }, { "returnType": "List", + "namespace": "Volo.Abp.FeatureManagement", "name": "FindAllAsync", "summary": null, "isAsync": true, @@ -614,6 +611,7 @@ }, { "returnType": "List", + "namespace": "Volo.Abp.FeatureManagement", "name": "GetListAsync", "summary": null, "isAsync": true, @@ -640,6 +638,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.FeatureManagement", "name": "DeleteAsync", "summary": null, "isAsync": true, diff --git a/modules/feature-management/src/Volo.Abp.FeatureManagement.EntityFrameworkCore/Volo.Abp.FeatureManagement.EntityFrameworkCore.abppkg.analyze.json b/modules/feature-management/src/Volo.Abp.FeatureManagement.EntityFrameworkCore/Volo.Abp.FeatureManagement.EntityFrameworkCore.abppkg.analyze.json index 5374e87d7b..3626acafcb 100644 --- a/modules/feature-management/src/Volo.Abp.FeatureManagement.EntityFrameworkCore/Volo.Abp.FeatureManagement.EntityFrameworkCore.abppkg.analyze.json +++ b/modules/feature-management/src/Volo.Abp.FeatureManagement.EntityFrameworkCore/Volo.Abp.FeatureManagement.EntityFrameworkCore.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.FeatureManagement.EntityFrameworkCore", - "hash": "d23d13b3c72c26ef41eb0070ab00ac34", + "hash": "", "contents": [ { "namespace": "Volo.Abp.FeatureManagement.EntityFrameworkCore", @@ -67,27 +67,27 @@ { "namespace": "Volo.Abp.FeatureManagement.EntityFrameworkCore", "connectionStringName": "AbpFeatureManagement", - "databaseTables": [ - { - "entityFullName": "Volo.Abp.FeatureManagement.FeatureDefinitionRecord", - "contentType": "databaseTable", - "name": "AbpFeatures", - "summary": null - }, - { - "entityFullName": "Volo.Abp.FeatureManagement.FeatureGroupDefinitionRecord", - "contentType": "databaseTable", - "name": "AbpFeatureGroups", - "summary": null - }, + "databaseTables": [], + "replacedDbContexts": [], + "modelBuilderExtensionMethods": [ { - "entityFullName": "Volo.Abp.FeatureManagement.FeatureValue", - "contentType": "databaseTable", - "name": "AbpFeatureValues", - "summary": null + "returnType": "Void", + "namespace": "Volo.Abp.FeatureManagement.EntityFrameworkCore", + "name": "ConfigureFeatureManagement", + "summary": null, + "isAsync": false, + "isPublic": true, + "isPrivate": false, + "isStatic": true, + "parameters": [ + { + "type": "ModelBuilder", + "name": "builder", + "isOptional": false + } + ] } ], - "replacedDbContexts": [], "implementingInterfaces": [ { "name": "IInfrastructure", diff --git a/modules/feature-management/src/Volo.Abp.FeatureManagement.HttpApi.Client/Volo.Abp.FeatureManagement.HttpApi.Client.abppkg.analyze.json b/modules/feature-management/src/Volo.Abp.FeatureManagement.HttpApi.Client/Volo.Abp.FeatureManagement.HttpApi.Client.abppkg.analyze.json index cdacabfb3a..ce50d5b83a 100644 --- a/modules/feature-management/src/Volo.Abp.FeatureManagement.HttpApi.Client/Volo.Abp.FeatureManagement.HttpApi.Client.abppkg.analyze.json +++ b/modules/feature-management/src/Volo.Abp.FeatureManagement.HttpApi.Client/Volo.Abp.FeatureManagement.HttpApi.Client.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.FeatureManagement.HttpApi.Client", - "hash": "f2c557d60cc7414ca67a85fd5295870d", + "hash": "", "contents": [ { "namespace": "Volo.Abp.FeatureManagement", diff --git a/modules/feature-management/src/Volo.Abp.FeatureManagement.HttpApi/Volo.Abp.FeatureManagement.HttpApi.abppkg.analyze.json b/modules/feature-management/src/Volo.Abp.FeatureManagement.HttpApi/Volo.Abp.FeatureManagement.HttpApi.abppkg.analyze.json index 12fa8fd972..5f25516d3b 100644 --- a/modules/feature-management/src/Volo.Abp.FeatureManagement.HttpApi/Volo.Abp.FeatureManagement.HttpApi.abppkg.analyze.json +++ b/modules/feature-management/src/Volo.Abp.FeatureManagement.HttpApi/Volo.Abp.FeatureManagement.HttpApi.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.FeatureManagement.HttpApi", - "hash": "eaa44cd23162ceaf3ec1f00798ef4dd5", + "hash": "", "contents": [ { "namespace": "Volo.Abp.FeatureManagement", @@ -63,6 +63,68 @@ "contentType": "abpModule", "name": "AbpFeatureManagementHttpApiModule", "summary": null + }, + { + "apis": [ + { + "path": "api/feature-management/features", + "method": "GET", + "groupName": "Features", + "responseType": "Volo.Abp.FeatureManagement.GetFeatureListResultDto", + "responseTypeAsJson": "", + "parameterDescriptions": [ + { + "name": "providerName", + "type": "String" + }, + { + "name": "providerKey", + "type": "String" + } + ] + }, + { + "path": "api/feature-management/features", + "method": "PUT", + "groupName": "Features", + "responseType": "System.Void", + "responseTypeAsJson": "", + "parameterDescriptions": [ + { + "name": "providerName", + "type": "String" + }, + { + "name": "providerKey", + "type": "String" + }, + { + "name": "input", + "type": "UpdateFeaturesDto" + } + ] + }, + { + "path": "api/feature-management/features", + "method": "DELETE", + "groupName": "Features", + "responseType": "System.Void", + "responseTypeAsJson": "", + "parameterDescriptions": [ + { + "name": "providerName", + "type": "String" + }, + { + "name": "providerKey", + "type": "String" + } + ] + } + ], + "contentType": "httpApi", + "name": "Defined Http Apis", + "summary": null } ] } \ No newline at end of file diff --git a/modules/feature-management/src/Volo.Abp.FeatureManagement.MongoDB/Volo.Abp.FeatureManagement.MongoDB.abppkg.analyze.json b/modules/feature-management/src/Volo.Abp.FeatureManagement.MongoDB/Volo.Abp.FeatureManagement.MongoDB.abppkg.analyze.json index cec46992d3..db589c9c51 100644 --- a/modules/feature-management/src/Volo.Abp.FeatureManagement.MongoDB/Volo.Abp.FeatureManagement.MongoDB.abppkg.analyze.json +++ b/modules/feature-management/src/Volo.Abp.FeatureManagement.MongoDB/Volo.Abp.FeatureManagement.MongoDB.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.FeatureManagement.MongoDB", - "hash": "1287dca2b75f3753abc23921cc0263b4", + "hash": "", "contents": [ { "namespace": "Volo.Abp.FeatureManagement.MongoDB", @@ -69,21 +69,21 @@ "connectionStringName": "AbpFeatureManagement", "databaseCollections": [ { - "entityFullName": "Volo.Abp.FeatureManagement.FeatureValue", + "entityFullName": "Volo.Abp.FeatureManagement.FeatureGroupDefinitionRecord", "contentType": "databaseCollection", - "name": "AbpFeatureValues", + "name": "FeatureGroups", "summary": null }, { "entityFullName": "Volo.Abp.FeatureManagement.FeatureDefinitionRecord", "contentType": "databaseCollection", - "name": "AbpFeatures", + "name": "Features", "summary": null }, { - "entityFullName": "Volo.Abp.FeatureManagement.FeatureGroupDefinitionRecord", + "entityFullName": "Volo.Abp.FeatureManagement.FeatureValue", "contentType": "databaseCollection", - "name": "AbpFeatureGroups", + "name": "FeatureValues", "summary": null } ], diff --git a/modules/feature-management/src/Volo.Abp.FeatureManagement.Web/Volo.Abp.FeatureManagement.Web.abppkg.analyze.json b/modules/feature-management/src/Volo.Abp.FeatureManagement.Web/Volo.Abp.FeatureManagement.Web.abppkg.analyze.json index 53d44b8f79..905cfe0387 100644 --- a/modules/feature-management/src/Volo.Abp.FeatureManagement.Web/Volo.Abp.FeatureManagement.Web.abppkg.analyze.json +++ b/modules/feature-management/src/Volo.Abp.FeatureManagement.Web/Volo.Abp.FeatureManagement.Web.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.FeatureManagement.Web", - "hash": "448e16aaf1a76101ee1902adbe650fb1", + "hash": "", "contents": [ { "namespace": "Volo.Abp.FeatureManagement", @@ -68,6 +68,12 @@ "contentType": "abpModule", "name": "AbpFeatureManagementWebModule", "summary": null + }, + { + "namespace": "Volo.Abp.FeatureManagement.Web.Pages.FeatureManagement", + "contentType": "webPage", + "name": "FeatureManagementModal", + "summary": null } ] } \ No newline at end of file diff --git a/modules/identity/src/Volo.Abp.Identity.Application.Contracts/Volo.Abp.Identity.Application.Contracts.abppkg.analyze.json b/modules/identity/src/Volo.Abp.Identity.Application.Contracts/Volo.Abp.Identity.Application.Contracts.abppkg.analyze.json index 6f323d4671..ed9bd2c045 100644 --- a/modules/identity/src/Volo.Abp.Identity.Application.Contracts/Volo.Abp.Identity.Application.Contracts.abppkg.analyze.json +++ b/modules/identity/src/Volo.Abp.Identity.Application.Contracts/Volo.Abp.Identity.Application.Contracts.abppkg.analyze.json @@ -130,6 +130,13 @@ "name": "AbpIdentity.Users.Update", "summary": null }, + { + "displayName": "Manage roles", + "isEnabled": true, + "contentType": "permission", + "name": "AbpIdentity.Users.Update.ManageRoles", + "summary": null + }, { "displayName": "Delete", "isEnabled": true, diff --git a/modules/identity/src/Volo.Abp.Identity.Application/Volo.Abp.Identity.Application.abppkg.analyze.json b/modules/identity/src/Volo.Abp.Identity.Application/Volo.Abp.Identity.Application.abppkg.analyze.json index 603d2d9faf..51d711b151 100644 --- a/modules/identity/src/Volo.Abp.Identity.Application/Volo.Abp.Identity.Application.abppkg.analyze.json +++ b/modules/identity/src/Volo.Abp.Identity.Application/Volo.Abp.Identity.Application.abppkg.analyze.json @@ -183,6 +183,7 @@ "methods": [ { "returnType": "IdentityRoleDto", + "namespace": "Volo.Abp.Identity", "name": "GetAsync", "summary": null, "isAsync": true, @@ -199,6 +200,7 @@ }, { "returnType": "ListResultDto", + "namespace": "Volo.Abp.Identity", "name": "GetAllListAsync", "summary": null, "isAsync": true, @@ -209,6 +211,7 @@ }, { "returnType": "PagedResultDto", + "namespace": "Volo.Abp.Identity", "name": "GetListAsync", "summary": null, "isAsync": true, @@ -225,6 +228,7 @@ }, { "returnType": "IdentityRoleDto", + "namespace": "Volo.Abp.Identity", "name": "CreateAsync", "summary": null, "isAsync": true, @@ -241,6 +245,7 @@ }, { "returnType": "IdentityRoleDto", + "namespace": "Volo.Abp.Identity", "name": "UpdateAsync", "summary": null, "isAsync": true, @@ -262,6 +267,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.Identity", "name": "DeleteAsync", "summary": null, "isAsync": true, @@ -390,6 +396,7 @@ "methods": [ { "returnType": "IdentityUserDto", + "namespace": "Volo.Abp.Identity", "name": "GetAsync", "summary": null, "isAsync": true, @@ -406,6 +413,7 @@ }, { "returnType": "PagedResultDto", + "namespace": "Volo.Abp.Identity", "name": "GetListAsync", "summary": null, "isAsync": true, @@ -422,6 +430,7 @@ }, { "returnType": "ListResultDto", + "namespace": "Volo.Abp.Identity", "name": "GetRolesAsync", "summary": null, "isAsync": true, @@ -438,6 +447,7 @@ }, { "returnType": "ListResultDto", + "namespace": "Volo.Abp.Identity", "name": "GetAssignableRolesAsync", "summary": null, "isAsync": true, @@ -448,6 +458,7 @@ }, { "returnType": "IdentityUserDto", + "namespace": "Volo.Abp.Identity", "name": "CreateAsync", "summary": null, "isAsync": true, @@ -464,6 +475,7 @@ }, { "returnType": "IdentityUserDto", + "namespace": "Volo.Abp.Identity", "name": "UpdateAsync", "summary": null, "isAsync": true, @@ -485,6 +497,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.Identity", "name": "DeleteAsync", "summary": null, "isAsync": true, @@ -501,6 +514,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.Identity", "name": "UpdateRolesAsync", "summary": null, "isAsync": true, @@ -522,6 +536,7 @@ }, { "returnType": "IdentityUserDto", + "namespace": "Volo.Abp.Identity", "name": "FindByUsernameAsync", "summary": null, "isAsync": true, @@ -538,6 +553,7 @@ }, { "returnType": "IdentityUserDto", + "namespace": "Volo.Abp.Identity", "name": "FindByEmailAsync", "summary": null, "isAsync": true, @@ -624,6 +640,7 @@ "methods": [ { "returnType": "UserData", + "namespace": "Volo.Abp.Identity", "name": "FindByIdAsync", "summary": null, "isAsync": true, @@ -640,6 +657,7 @@ }, { "returnType": "UserData", + "namespace": "Volo.Abp.Identity", "name": "FindByUserNameAsync", "summary": null, "isAsync": true, @@ -656,6 +674,7 @@ }, { "returnType": "ListResultDto", + "namespace": "Volo.Abp.Identity", "name": "SearchAsync", "summary": null, "isAsync": true, @@ -672,6 +691,7 @@ }, { "returnType": "Int64", + "namespace": "Volo.Abp.Identity", "name": "GetCountAsync", "summary": null, "isAsync": true, @@ -758,6 +778,7 @@ "methods": [ { "returnType": "String[]", + "namespace": "Volo.Abp.Identity.Integration", "name": "GetRoleNamesAsync", "summary": null, "isAsync": true, @@ -771,6 +792,74 @@ "isOptional": false } ] + }, + { + "returnType": "UserData", + "namespace": "Volo.Abp.Identity.Integration", + "name": "FindByIdAsync", + "summary": null, + "isAsync": true, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "Guid", + "name": "id", + "isOptional": false + } + ] + }, + { + "returnType": "UserData", + "namespace": "Volo.Abp.Identity.Integration", + "name": "FindByUserNameAsync", + "summary": null, + "isAsync": true, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "String", + "name": "userName", + "isOptional": false + } + ] + }, + { + "returnType": "ListResultDto", + "namespace": "Volo.Abp.Identity.Integration", + "name": "SearchAsync", + "summary": null, + "isAsync": true, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "UserLookupSearchInputDto", + "name": "input", + "isOptional": false + } + ] + }, + { + "returnType": "Int64", + "namespace": "Volo.Abp.Identity.Integration", + "name": "GetCountAsync", + "summary": null, + "isAsync": true, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "UserLookupCountInputDto", + "name": "input", + "isOptional": false + } + ] } ], "contentType": "applicationService", diff --git a/modules/identity/src/Volo.Abp.Identity.Domain/Volo.Abp.Identity.Domain.abppkg.analyze.json b/modules/identity/src/Volo.Abp.Identity.Domain/Volo.Abp.Identity.Domain.abppkg.analyze.json index 9873e72b5f..1304d00eed 100644 --- a/modules/identity/src/Volo.Abp.Identity.Domain/Volo.Abp.Identity.Domain.abppkg.analyze.json +++ b/modules/identity/src/Volo.Abp.Identity.Domain/Volo.Abp.Identity.Domain.abppkg.analyze.json @@ -296,6 +296,7 @@ "methods": [ { "returnType": "Void", + "namespace": "Volo.Abp.Identity", "name": "SetName", "summary": null, "isAsync": false, @@ -492,6 +493,7 @@ "methods": [ { "returnType": "Void", + "namespace": "Volo.Abp.Identity", "name": "AddClaim", "summary": null, "isAsync": false, @@ -513,6 +515,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.Identity", "name": "AddClaims", "summary": null, "isAsync": false, @@ -534,6 +537,7 @@ }, { "returnType": "IdentityRoleClaim", + "namespace": "Volo.Abp.Identity", "name": "FindClaim", "summary": null, "isAsync": false, @@ -550,6 +554,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.Identity", "name": "RemoveClaim", "summary": null, "isAsync": false, @@ -566,6 +571,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.Identity", "name": "ChangeName", "summary": null, "isAsync": false, @@ -582,6 +588,7 @@ }, { "returnType": "String", + "namespace": "Volo.Abp.Identity", "name": "ToString", "summary": null, "isAsync": false, @@ -776,6 +783,170 @@ "name": "IdentitySecurityLog", "summary": null }, + { + "baseClass": { + "name": "BasicAggregateRoot", + "namespace": "Volo.Abp.Domain.Entities", + "declaringAssemblyName": "Volo.Abp.Ddd.Domain", + "fullName": "Volo.Abp.Domain.Entities.BasicAggregateRoot" + }, + "implementingInterfaces": [ + { + "name": "IEntity", + "namespace": "Volo.Abp.Domain.Entities", + "declaringAssemblyName": "Volo.Abp.Ddd.Domain", + "fullName": "Volo.Abp.Domain.Entities.IEntity" + }, + { + "name": "IEntity", + "namespace": "Volo.Abp.Domain.Entities", + "declaringAssemblyName": "Volo.Abp.Ddd.Domain", + "fullName": "Volo.Abp.Domain.Entities.IEntity" + }, + { + "name": "IAggregateRoot", + "namespace": "Volo.Abp.Domain.Entities", + "declaringAssemblyName": "Volo.Abp.Ddd.Domain", + "fullName": "Volo.Abp.Domain.Entities.IAggregateRoot" + }, + { + "name": "IAggregateRoot", + "namespace": "Volo.Abp.Domain.Entities", + "declaringAssemblyName": "Volo.Abp.Ddd.Domain", + "fullName": "Volo.Abp.Domain.Entities.IAggregateRoot" + }, + { + "name": "IGeneratesDomainEvents", + "namespace": "Volo.Abp.Domain.Entities", + "declaringAssemblyName": "Volo.Abp.Ddd.Domain", + "fullName": "Volo.Abp.Domain.Entities.IGeneratesDomainEvents" + }, + { + "name": "IMultiTenant", + "namespace": "Volo.Abp.MultiTenancy", + "declaringAssemblyName": "Volo.Abp.MultiTenancy.Abstractions", + "fullName": "Volo.Abp.MultiTenancy.IMultiTenant" + } + ], + "methods": [ + { + "returnType": "Void", + "namespace": "Volo.Abp.Identity", + "name": "SetSignedInTime", + "summary": null, + "isAsync": false, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "DateTime", + "name": "signedIn", + "isOptional": false + } + ] + }, + { + "returnType": "Void", + "namespace": "Volo.Abp.Identity", + "name": "UpdateLastAccessedTime", + "summary": null, + "isAsync": false, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "Nullable", + "name": "lastAccessed", + "isOptional": false + } + ] + }, + { + "returnType": "Void", + "namespace": "Volo.Abp.Identity", + "name": "SetIpAddresses", + "summary": null, + "isAsync": false, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "IEnumerable", + "name": "ipAddresses", + "isOptional": false + } + ] + }, + { + "returnType": "IEnumerable", + "namespace": "Volo.Abp.Identity", + "name": "GetIpAddresses", + "summary": null, + "isAsync": false, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [] + } + ], + "collectionProperties": {}, + "navigationProperties": {}, + "namespace": "Volo.Abp.Identity", + "primaryKeyType": "Guid", + "properties": [ + { + "type": "System.String", + "name": "SessionId", + "summary": null + }, + { + "type": "System.String", + "name": "Device", + "summary": "Web, Mobile ..." + }, + { + "type": "System.String", + "name": "DeviceInfo", + "summary": null + }, + { + "type": "System.Nullable`1[System.Guid]", + "name": "TenantId", + "summary": null + }, + { + "type": "System.Guid", + "name": "UserId", + "summary": null + }, + { + "type": "System.String", + "name": "ClientId", + "summary": null + }, + { + "type": "System.String", + "name": "IpAddresses", + "summary": null + }, + { + "type": "System.DateTime", + "name": "SignedIn", + "summary": null + }, + { + "type": "System.Nullable`1[System.DateTime]", + "name": "LastAccessed", + "summary": null + } + ], + "contentType": "aggregateRoot", + "name": "IdentitySession", + "summary": null + }, { "baseClass": { "name": "FullAuditedAggregateRoot", @@ -908,6 +1079,7 @@ "methods": [ { "returnType": "Void", + "namespace": "Volo.Abp.Identity", "name": "AddRole", "summary": null, "isAsync": false, @@ -924,6 +1096,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.Identity", "name": "RemoveRole", "summary": null, "isAsync": false, @@ -940,6 +1113,7 @@ }, { "returnType": "Boolean", + "namespace": "Volo.Abp.Identity", "name": "IsInRole", "summary": null, "isAsync": false, @@ -956,6 +1130,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.Identity", "name": "AddClaim", "summary": null, "isAsync": false, @@ -977,6 +1152,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.Identity", "name": "AddClaims", "summary": null, "isAsync": false, @@ -998,6 +1174,7 @@ }, { "returnType": "IdentityUserClaim", + "namespace": "Volo.Abp.Identity", "name": "FindClaim", "summary": null, "isAsync": false, @@ -1014,6 +1191,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.Identity", "name": "ReplaceClaim", "summary": null, "isAsync": false, @@ -1035,6 +1213,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.Identity", "name": "RemoveClaims", "summary": null, "isAsync": false, @@ -1051,6 +1230,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.Identity", "name": "RemoveClaim", "summary": null, "isAsync": false, @@ -1067,6 +1247,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.Identity", "name": "AddLogin", "summary": null, "isAsync": false, @@ -1083,6 +1264,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.Identity", "name": "RemoveLogin", "summary": null, "isAsync": false, @@ -1104,6 +1286,7 @@ }, { "returnType": "IdentityUserToken", + "namespace": "Volo.Abp.Identity", "name": "FindToken", "summary": null, "isAsync": false, @@ -1125,6 +1308,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.Identity", "name": "SetToken", "summary": null, "isAsync": false, @@ -1151,6 +1335,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.Identity", "name": "RemoveToken", "summary": null, "isAsync": false, @@ -1172,6 +1357,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.Identity", "name": "AddOrganizationUnit", "summary": null, "isAsync": false, @@ -1188,6 +1374,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.Identity", "name": "RemoveOrganizationUnit", "summary": null, "isAsync": false, @@ -1204,6 +1391,7 @@ }, { "returnType": "Boolean", + "namespace": "Volo.Abp.Identity", "name": "IsInOrganizationUnit", "summary": null, "isAsync": false, @@ -1220,6 +1408,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.Identity", "name": "SetEmailConfirmed", "summary": null, "isAsync": false, @@ -1236,6 +1425,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.Identity", "name": "SetPhoneNumberConfirmed", "summary": null, "isAsync": false, @@ -1252,6 +1442,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.Identity", "name": "SetPhoneNumber", "summary": null, "isAsync": false, @@ -1273,6 +1464,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.Identity", "name": "SetIsActive", "summary": null, "isAsync": false, @@ -1289,6 +1481,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.Identity", "name": "SetShouldChangePasswordOnNextLogin", "summary": null, "isAsync": false, @@ -1305,6 +1498,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.Identity", "name": "SetLastPasswordChangeTime", "summary": null, "isAsync": false, @@ -1321,6 +1515,7 @@ }, { "returnType": "String", + "namespace": "Volo.Abp.Identity", "name": "ToString", "summary": null, "isAsync": false, @@ -1708,6 +1903,7 @@ "methods": [ { "returnType": "String", + "namespace": "Volo.Abp.Identity", "name": "CreateCode", "summary": null, "isAsync": false, @@ -1724,6 +1920,7 @@ }, { "returnType": "String", + "namespace": "Volo.Abp.Identity", "name": "AppendCode", "summary": null, "isAsync": false, @@ -1745,6 +1942,7 @@ }, { "returnType": "String", + "namespace": "Volo.Abp.Identity", "name": "GetRelativeCode", "summary": null, "isAsync": false, @@ -1766,6 +1964,7 @@ }, { "returnType": "String", + "namespace": "Volo.Abp.Identity", "name": "CalculateNextCode", "summary": null, "isAsync": false, @@ -1782,6 +1981,7 @@ }, { "returnType": "String", + "namespace": "Volo.Abp.Identity", "name": "GetLastUnitCode", "summary": null, "isAsync": false, @@ -1798,6 +1998,7 @@ }, { "returnType": "String", + "namespace": "Volo.Abp.Identity", "name": "GetParentCode", "summary": null, "isAsync": false, @@ -1814,6 +2015,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.Identity", "name": "AddRole", "summary": null, "isAsync": false, @@ -1830,6 +2032,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.Identity", "name": "RemoveRole", "summary": null, "isAsync": false, @@ -1846,6 +2049,7 @@ }, { "returnType": "Boolean", + "namespace": "Volo.Abp.Identity", "name": "IsInRole", "summary": null, "isAsync": false, @@ -1919,6 +2123,7 @@ "methods": [ { "returnType": "IdentityClaimType", + "namespace": "Volo.Abp.Identity", "name": "CreateAsync", "summary": null, "isAsync": true, @@ -1935,6 +2140,7 @@ }, { "returnType": "IdentityClaimType", + "namespace": "Volo.Abp.Identity", "name": "UpdateAsync", "summary": null, "isAsync": true, @@ -1948,6 +2154,23 @@ "isOptional": false } ] + }, + { + "returnType": "Void", + "namespace": "Volo.Abp.Identity", + "name": "DeleteAsync", + "summary": null, + "isAsync": true, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "Guid", + "name": "id", + "isOptional": false + } + ] } ], "implementingInterfaces": [ @@ -1979,6 +2202,7 @@ "methods": [ { "returnType": "List", + "namespace": "Volo.Abp.Identity", "name": "GetListAsync", "summary": null, "isAsync": true, @@ -2005,6 +2229,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.Identity", "name": "LinkAsync", "summary": null, "isAsync": true, @@ -2031,6 +2256,7 @@ }, { "returnType": "Boolean", + "namespace": "Volo.Abp.Identity", "name": "IsLinkedAsync", "summary": null, "isAsync": true, @@ -2062,6 +2288,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.Identity", "name": "UnlinkAsync", "summary": null, "isAsync": true, @@ -2088,6 +2315,7 @@ }, { "returnType": "String", + "namespace": "Volo.Abp.Identity", "name": "GenerateLinkTokenAsync", "summary": null, "isAsync": true, @@ -2114,6 +2342,7 @@ }, { "returnType": "Boolean", + "namespace": "Volo.Abp.Identity", "name": "VerifyLinkTokenAsync", "summary": null, "isAsync": true, @@ -2173,6 +2402,7 @@ "methods": [ { "returnType": "IdentityRole", + "namespace": "Volo.Abp.Identity", "name": "GetByIdAsync", "summary": null, "isAsync": true, @@ -2189,6 +2419,7 @@ }, { "returnType": "IdentityResult", + "namespace": "Volo.Abp.Identity", "name": "SetRoleNameAsync", "summary": null, "isAsync": true, @@ -2210,6 +2441,7 @@ }, { "returnType": "IdentityResult", + "namespace": "Volo.Abp.Identity", "name": "DeleteAsync", "summary": null, "isAsync": true, @@ -2260,6 +2492,7 @@ "methods": [ { "returnType": "List", + "namespace": "Volo.Abp.Identity", "name": "GetListAsync", "summary": null, "isAsync": true, @@ -2286,6 +2519,7 @@ }, { "returnType": "List", + "namespace": "Volo.Abp.Identity", "name": "GetActiveDelegationsAsync", "summary": null, "isAsync": true, @@ -2307,6 +2541,7 @@ }, { "returnType": "IdentityUserDelegation", + "namespace": "Volo.Abp.Identity", "name": "FindActiveDelegationByIdAsync", "summary": null, "isAsync": true, @@ -2328,6 +2563,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.Identity", "name": "DelegateNewUserAsync", "summary": null, "isAsync": true, @@ -2364,6 +2600,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.Identity", "name": "DeleteDelegationAsync", "summary": null, "isAsync": true, @@ -2418,6 +2655,7 @@ "methods": [ { "returnType": "IdentityResult", + "namespace": "Volo.Abp.Identity", "name": "CreateAsync", "summary": null, "isAsync": true, @@ -2442,8 +2680,26 @@ } ] }, + { + "returnType": "IdentityResult", + "namespace": "Volo.Abp.Identity", + "name": "DeleteAsync", + "summary": null, + "isAsync": true, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "IdentityUser", + "name": "user", + "isOptional": false + } + ] + }, { "returnType": "IdentityUser", + "namespace": "Volo.Abp.Identity", "name": "GetByIdAsync", "summary": null, "isAsync": true, @@ -2460,6 +2716,7 @@ }, { "returnType": "IdentityResult", + "namespace": "Volo.Abp.Identity", "name": "SetRolesAsync", "summary": null, "isAsync": true, @@ -2481,6 +2738,7 @@ }, { "returnType": "Boolean", + "namespace": "Volo.Abp.Identity", "name": "IsInOrganizationUnitAsync", "summary": null, "isAsync": true, @@ -2502,6 +2760,7 @@ }, { "returnType": "Boolean", + "namespace": "Volo.Abp.Identity", "name": "IsInOrganizationUnitAsync", "summary": null, "isAsync": true, @@ -2523,6 +2782,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.Identity", "name": "AddToOrganizationUnitAsync", "summary": null, "isAsync": true, @@ -2544,6 +2804,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.Identity", "name": "AddToOrganizationUnitAsync", "summary": null, "isAsync": true, @@ -2565,6 +2826,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.Identity", "name": "RemoveFromOrganizationUnitAsync", "summary": null, "isAsync": true, @@ -2586,6 +2848,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.Identity", "name": "RemoveFromOrganizationUnitAsync", "summary": null, "isAsync": true, @@ -2607,6 +2870,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.Identity", "name": "SetOrganizationUnitsAsync", "summary": null, "isAsync": true, @@ -2628,6 +2892,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.Identity", "name": "SetOrganizationUnitsAsync", "summary": null, "isAsync": true, @@ -2649,6 +2914,7 @@ }, { "returnType": "List", + "namespace": "Volo.Abp.Identity", "name": "GetOrganizationUnitsAsync", "summary": null, "isAsync": true, @@ -2670,6 +2936,7 @@ }, { "returnType": "List", + "namespace": "Volo.Abp.Identity", "name": "GetUsersInOrganizationUnitAsync", "summary": null, "isAsync": true, @@ -2691,6 +2958,7 @@ }, { "returnType": "IdentityResult", + "namespace": "Volo.Abp.Identity", "name": "AddDefaultRolesAsync", "summary": null, "isAsync": true, @@ -2707,6 +2975,7 @@ }, { "returnType": "Boolean", + "namespace": "Volo.Abp.Identity", "name": "ShouldPeriodicallyChangePasswordAsync", "summary": null, "isAsync": true, @@ -2723,6 +2992,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.Identity", "name": "ResetRecoveryCodesAsync", "summary": null, "isAsync": true, @@ -2736,9 +3006,153 @@ "isOptional": false } ] - } - ], - "implementingInterfaces": [ + }, + { + "returnType": "IdentityResult", + "namespace": "Volo.Abp.Identity", + "name": "SetEmailAsync", + "summary": null, + "isAsync": true, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "IdentityUser", + "name": "user", + "isOptional": false + }, + { + "type": "String", + "name": "email", + "isOptional": false + } + ] + }, + { + "returnType": "IdentityResult", + "namespace": "Volo.Abp.Identity", + "name": "SetUserNameAsync", + "summary": null, + "isAsync": true, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "IdentityUser", + "name": "user", + "isOptional": false + }, + { + "type": "String", + "name": "userName", + "isOptional": false + } + ] + }, + { + "returnType": "Void", + "namespace": "Volo.Abp.Identity", + "name": "UpdateRoleAsync", + "summary": null, + "isAsync": true, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "Guid", + "name": "sourceRoleId", + "isOptional": false + }, + { + "type": "Nullable", + "name": "targetRoleId", + "isOptional": false + } + ] + }, + { + "returnType": "Void", + "namespace": "Volo.Abp.Identity", + "name": "UpdateOrganizationAsync", + "summary": null, + "isAsync": true, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "Guid", + "name": "sourceOrganizationId", + "isOptional": false + }, + { + "type": "Nullable", + "name": "targetOrganizationId", + "isOptional": false + } + ] + }, + { + "returnType": "Boolean", + "namespace": "Volo.Abp.Identity", + "name": "ValidateUserNameAsync", + "summary": null, + "isAsync": true, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "String", + "name": "userName", + "isOptional": false + }, + { + "type": "Nullable", + "name": "userId", + "isOptional": true + } + ] + }, + { + "returnType": "String", + "namespace": "Volo.Abp.Identity", + "name": "GetRandomUserNameAsync", + "summary": null, + "isAsync": true, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "Int32", + "name": "length", + "isOptional": false + } + ] + }, + { + "returnType": "String", + "namespace": "Volo.Abp.Identity", + "name": "GetUserNameFromEmailAsync", + "summary": null, + "isAsync": true, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "String", + "name": "email", + "isOptional": false + } + ] + } + ], + "implementingInterfaces": [ { "name": "IDisposable", "namespace": "System", @@ -2773,6 +3187,7 @@ "methods": [ { "returnType": "Void", + "namespace": "Volo.Abp.Identity", "name": "CreateAsync", "summary": null, "isAsync": true, @@ -2789,6 +3204,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.Identity", "name": "UpdateAsync", "summary": null, "isAsync": true, @@ -2805,6 +3221,7 @@ }, { "returnType": "String", + "namespace": "Volo.Abp.Identity", "name": "GetNextChildCodeAsync", "summary": null, "isAsync": true, @@ -2821,6 +3238,7 @@ }, { "returnType": "OrganizationUnit", + "namespace": "Volo.Abp.Identity", "name": "GetLastChildOrNullAsync", "summary": null, "isAsync": true, @@ -2837,6 +3255,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.Identity", "name": "DeleteAsync", "summary": null, "isAsync": true, @@ -2853,6 +3272,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.Identity", "name": "MoveAsync", "summary": null, "isAsync": true, @@ -2874,6 +3294,7 @@ }, { "returnType": "String", + "namespace": "Volo.Abp.Identity", "name": "GetCodeOrDefaultAsync", "summary": null, "isAsync": true, @@ -2890,6 +3311,7 @@ }, { "returnType": "List", + "namespace": "Volo.Abp.Identity", "name": "FindChildrenAsync", "summary": null, "isAsync": true, @@ -2911,6 +3333,7 @@ }, { "returnType": "Boolean", + "namespace": "Volo.Abp.Identity", "name": "IsInOrganizationUnitAsync", "summary": null, "isAsync": true, @@ -2932,6 +3355,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.Identity", "name": "AddRoleToOrganizationUnitAsync", "summary": null, "isAsync": true, @@ -2953,6 +3377,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.Identity", "name": "AddRoleToOrganizationUnitAsync", "summary": null, "isAsync": true, @@ -2974,6 +3399,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.Identity", "name": "RemoveRoleFromOrganizationUnitAsync", "summary": null, "isAsync": true, @@ -2995,6 +3421,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.Identity", "name": "RemoveRoleFromOrganizationUnitAsync", "summary": null, "isAsync": true, @@ -3013,6 +3440,23 @@ "isOptional": false } ] + }, + { + "returnType": "Void", + "namespace": "Volo.Abp.Identity", + "name": "RemoveDynamicClaimCacheAsync", + "summary": null, + "isAsync": true, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "OrganizationUnit", + "name": "organizationUnit", + "isOptional": false + } + ] } ], "implementingInterfaces": [ @@ -3078,6 +3522,7 @@ "methods": [ { "returnType": "Boolean", + "namespace": "Volo.Abp.Identity", "name": "AnyAsync", "summary": null, "isAsync": true, @@ -3104,6 +3549,7 @@ }, { "returnType": "List", + "namespace": "Volo.Abp.Identity", "name": "GetListAsync", "summary": null, "isAsync": true, @@ -3140,6 +3586,7 @@ }, { "returnType": "Int64", + "namespace": "Volo.Abp.Identity", "name": "GetCountAsync", "summary": null, "isAsync": true, @@ -3158,6 +3605,28 @@ "isOptional": true } ] + }, + { + "returnType": "List", + "namespace": "Volo.Abp.Identity", + "name": "GetListByNamesAsync", + "summary": null, + "isAsync": true, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "IEnumerable", + "name": "names", + "isOptional": false + }, + { + "type": "CancellationToken", + "name": "cancellationToken", + "isOptional": true + } + ] } ], "contentType": "repositoryInterface", @@ -3209,6 +3678,7 @@ "methods": [ { "returnType": "IdentityLinkUser", + "namespace": "Volo.Abp.Identity", "name": "FindAsync", "summary": null, "isAsync": true, @@ -3235,6 +3705,7 @@ }, { "returnType": "List", + "namespace": "Volo.Abp.Identity", "name": "GetListAsync", "summary": null, "isAsync": true, @@ -3261,6 +3732,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.Identity", "name": "DeleteAsync", "summary": null, "isAsync": true, @@ -3330,6 +3802,7 @@ "methods": [ { "returnType": "IdentityRole", + "namespace": "Volo.Abp.Identity", "name": "FindByNormalizedNameAsync", "summary": null, "isAsync": true, @@ -3354,8 +3827,51 @@ } ] }, + { + "returnType": "List", + "namespace": "Volo.Abp.Identity", + "name": "GetListWithUserCountAsync", + "summary": null, + "isAsync": true, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "String", + "name": "sorting", + "isOptional": true + }, + { + "type": "Int32", + "name": "maxResultCount", + "isOptional": true + }, + { + "type": "Int32", + "name": "skipCount", + "isOptional": true + }, + { + "type": "String", + "name": "filter", + "isOptional": true + }, + { + "type": "Boolean", + "name": "includeDetails", + "isOptional": true + }, + { + "type": "CancellationToken", + "name": "cancellationToken", + "isOptional": true + } + ] + }, { "returnType": "List", + "namespace": "Volo.Abp.Identity", "name": "GetListAsync", "summary": null, "isAsync": true, @@ -3397,6 +3913,7 @@ }, { "returnType": "List", + "namespace": "Volo.Abp.Identity", "name": "GetListAsync", "summary": null, "isAsync": true, @@ -3418,6 +3935,7 @@ }, { "returnType": "List", + "namespace": "Volo.Abp.Identity", "name": "GetDefaultOnesAsync", "summary": null, "isAsync": true, @@ -3439,6 +3957,7 @@ }, { "returnType": "Int64", + "namespace": "Volo.Abp.Identity", "name": "GetCountAsync", "summary": null, "isAsync": true, @@ -3457,31 +3976,58 @@ "isOptional": true } ] - } - ], - "contentType": "repositoryInterface", - "name": "IIdentityRoleRepository", - "summary": null - }, - { - "namespace": "Volo.Abp.Identity", - "entityAnalyzeModel": { - "namespace": "Volo.Abp.Identity", - "primaryKeyType": "Guid", - "properties": [], - "contentType": "entity", - "name": "IdentitySecurityLog", - "summary": null - }, - "implementingInterfaces": [ - { - "name": "IBasicRepository", - "namespace": "Volo.Abp.Domain.Repositories", - "declaringAssemblyName": "Volo.Abp.Ddd.Domain", - "fullName": "Volo.Abp.Domain.Repositories.IBasicRepository" }, { - "name": "IBasicRepository", + "returnType": "Void", + "namespace": "Volo.Abp.Identity", + "name": "RemoveClaimFromAllRolesAsync", + "summary": null, + "isAsync": true, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "String", + "name": "claimType", + "isOptional": false + }, + { + "type": "Boolean", + "name": "autoSave", + "isOptional": true + }, + { + "type": "CancellationToken", + "name": "cancellationToken", + "isOptional": true + } + ] + } + ], + "contentType": "repositoryInterface", + "name": "IIdentityRoleRepository", + "summary": null + }, + { + "namespace": "Volo.Abp.Identity", + "entityAnalyzeModel": { + "namespace": "Volo.Abp.Identity", + "primaryKeyType": "Guid", + "properties": [], + "contentType": "entity", + "name": "IdentitySecurityLog", + "summary": null + }, + "implementingInterfaces": [ + { + "name": "IBasicRepository", + "namespace": "Volo.Abp.Domain.Repositories", + "declaringAssemblyName": "Volo.Abp.Ddd.Domain", + "fullName": "Volo.Abp.Domain.Repositories.IBasicRepository" + }, + { + "name": "IBasicRepository", "namespace": "Volo.Abp.Domain.Repositories", "declaringAssemblyName": "Volo.Abp.Ddd.Domain", "fullName": "Volo.Abp.Domain.Repositories.IBasicRepository" @@ -3508,6 +4054,7 @@ "methods": [ { "returnType": "List", + "namespace": "Volo.Abp.Identity", "name": "GetListAsync", "summary": null, "isAsync": true, @@ -3589,6 +4136,7 @@ }, { "returnType": "Int64", + "namespace": "Volo.Abp.Identity", "name": "GetCountAsync", "summary": null, "isAsync": true, @@ -3637,8 +4185,314 @@ "isOptional": true }, { - "type": "String", - "name": "correlationId", + "type": "String", + "name": "correlationId", + "isOptional": true + }, + { + "type": "CancellationToken", + "name": "cancellationToken", + "isOptional": true + } + ] + }, + { + "returnType": "IdentitySecurityLog", + "namespace": "Volo.Abp.Identity", + "name": "GetByUserIdAsync", + "summary": null, + "isAsync": true, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "Guid", + "name": "id", + "isOptional": false + }, + { + "type": "Guid", + "name": "userId", + "isOptional": false + }, + { + "type": "Boolean", + "name": "includeDetails", + "isOptional": true + }, + { + "type": "CancellationToken", + "name": "cancellationToken", + "isOptional": true + } + ] + } + ], + "contentType": "repositoryInterface", + "name": "IIdentitySecurityLogRepository", + "summary": null + }, + { + "namespace": "Volo.Abp.Identity", + "entityAnalyzeModel": { + "namespace": "Volo.Abp.Identity", + "primaryKeyType": "Guid", + "properties": [], + "contentType": "entity", + "name": "IdentitySession", + "summary": null + }, + "implementingInterfaces": [ + { + "name": "IBasicRepository", + "namespace": "Volo.Abp.Domain.Repositories", + "declaringAssemblyName": "Volo.Abp.Ddd.Domain", + "fullName": "Volo.Abp.Domain.Repositories.IBasicRepository" + }, + { + "name": "IBasicRepository", + "namespace": "Volo.Abp.Domain.Repositories", + "declaringAssemblyName": "Volo.Abp.Ddd.Domain", + "fullName": "Volo.Abp.Domain.Repositories.IBasicRepository" + }, + { + "name": "IReadOnlyBasicRepository", + "namespace": "Volo.Abp.Domain.Repositories", + "declaringAssemblyName": "Volo.Abp.Ddd.Domain", + "fullName": "Volo.Abp.Domain.Repositories.IReadOnlyBasicRepository" + }, + { + "name": "IRepository", + "namespace": "Volo.Abp.Domain.Repositories", + "declaringAssemblyName": "Volo.Abp.Ddd.Domain", + "fullName": "Volo.Abp.Domain.Repositories.IRepository" + }, + { + "name": "IReadOnlyBasicRepository", + "namespace": "Volo.Abp.Domain.Repositories", + "declaringAssemblyName": "Volo.Abp.Ddd.Domain", + "fullName": "Volo.Abp.Domain.Repositories.IReadOnlyBasicRepository" + } + ], + "methods": [ + { + "returnType": "IdentitySession", + "namespace": "Volo.Abp.Identity", + "name": "FindAsync", + "summary": null, + "isAsync": true, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "String", + "name": "sessionId", + "isOptional": false + }, + { + "type": "CancellationToken", + "name": "cancellationToken", + "isOptional": true + } + ] + }, + { + "returnType": "IdentitySession", + "namespace": "Volo.Abp.Identity", + "name": "GetAsync", + "summary": null, + "isAsync": true, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "String", + "name": "sessionId", + "isOptional": false + }, + { + "type": "CancellationToken", + "name": "cancellationToken", + "isOptional": true + } + ] + }, + { + "returnType": "Boolean", + "namespace": "Volo.Abp.Identity", + "name": "ExistAsync", + "summary": null, + "isAsync": true, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "Guid", + "name": "id", + "isOptional": false + }, + { + "type": "CancellationToken", + "name": "cancellationToken", + "isOptional": true + } + ] + }, + { + "returnType": "Boolean", + "namespace": "Volo.Abp.Identity", + "name": "ExistAsync", + "summary": null, + "isAsync": true, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "String", + "name": "sessionId", + "isOptional": false + }, + { + "type": "CancellationToken", + "name": "cancellationToken", + "isOptional": true + } + ] + }, + { + "returnType": "List", + "namespace": "Volo.Abp.Identity", + "name": "GetListAsync", + "summary": null, + "isAsync": true, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "String", + "name": "sorting", + "isOptional": true + }, + { + "type": "Int32", + "name": "maxResultCount", + "isOptional": true + }, + { + "type": "Int32", + "name": "skipCount", + "isOptional": true + }, + { + "type": "Nullable", + "name": "userId", + "isOptional": true + }, + { + "type": "String", + "name": "device", + "isOptional": true + }, + { + "type": "String", + "name": "clientId", + "isOptional": true + }, + { + "type": "CancellationToken", + "name": "cancellationToken", + "isOptional": true + } + ] + }, + { + "returnType": "Int64", + "namespace": "Volo.Abp.Identity", + "name": "GetCountAsync", + "summary": null, + "isAsync": true, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "Nullable", + "name": "userId", + "isOptional": true + }, + { + "type": "String", + "name": "device", + "isOptional": true + }, + { + "type": "String", + "name": "clientId", + "isOptional": true + }, + { + "type": "CancellationToken", + "name": "cancellationToken", + "isOptional": true + } + ] + }, + { + "returnType": "Void", + "namespace": "Volo.Abp.Identity", + "name": "DeleteAllAsync", + "summary": null, + "isAsync": true, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "Guid", + "name": "userId", + "isOptional": false + }, + { + "type": "Nullable", + "name": "exceptSessionId", + "isOptional": true + }, + { + "type": "CancellationToken", + "name": "cancellationToken", + "isOptional": true + } + ] + }, + { + "returnType": "Void", + "namespace": "Volo.Abp.Identity", + "name": "DeleteAllAsync", + "summary": null, + "isAsync": true, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "Guid", + "name": "userId", + "isOptional": false + }, + { + "type": "String", + "name": "device", + "isOptional": false + }, + { + "type": "Nullable", + "name": "exceptSessionId", "isOptional": true }, { @@ -3649,8 +4503,9 @@ ] }, { - "returnType": "IdentitySecurityLog", - "name": "GetByUserIdAsync", + "returnType": "Void", + "namespace": "Volo.Abp.Identity", + "name": "DeleteAllAsync", "summary": null, "isAsync": true, "isPublic": true, @@ -3658,20 +4513,10 @@ "isStatic": false, "parameters": [ { - "type": "Guid", - "name": "id", - "isOptional": false - }, - { - "type": "Guid", - "name": "userId", + "type": "TimeSpan", + "name": "inactiveTimeSpan", "isOptional": false }, - { - "type": "Boolean", - "name": "includeDetails", - "isOptional": true - }, { "type": "CancellationToken", "name": "cancellationToken", @@ -3681,7 +4526,7 @@ } ], "contentType": "repositoryInterface", - "name": "IIdentitySecurityLogRepository", + "name": "IIdentitySessionRepository", "summary": null }, { @@ -3729,6 +4574,7 @@ "methods": [ { "returnType": "List", + "namespace": "Volo.Abp.Identity", "name": "GetListAsync", "summary": null, "isAsync": true, @@ -3755,6 +4601,7 @@ }, { "returnType": "List", + "namespace": "Volo.Abp.Identity", "name": "GetActiveDelegationsAsync", "summary": null, "isAsync": true, @@ -3776,6 +4623,7 @@ }, { "returnType": "IdentityUserDelegation", + "namespace": "Volo.Abp.Identity", "name": "FindActiveDelegationByIdAsync", "summary": null, "isAsync": true, @@ -3845,6 +4693,7 @@ "methods": [ { "returnType": "IdentityUser", + "namespace": "Volo.Abp.Identity", "name": "FindByNormalizedUserNameAsync", "summary": null, "isAsync": true, @@ -3871,6 +4720,7 @@ }, { "returnType": "List", + "namespace": "Volo.Abp.Identity", "name": "GetRoleNamesAsync", "summary": null, "isAsync": true, @@ -3892,6 +4742,7 @@ }, { "returnType": "List", + "namespace": "Volo.Abp.Identity", "name": "GetRoleNamesInOrganizationUnitAsync", "summary": null, "isAsync": true, @@ -3913,6 +4764,7 @@ }, { "returnType": "IdentityUser", + "namespace": "Volo.Abp.Identity", "name": "FindByLoginAsync", "summary": null, "isAsync": true, @@ -3944,6 +4796,7 @@ }, { "returnType": "IdentityUser", + "namespace": "Volo.Abp.Identity", "name": "FindByNormalizedEmailAsync", "summary": null, "isAsync": true, @@ -3970,6 +4823,7 @@ }, { "returnType": "List", + "namespace": "Volo.Abp.Identity", "name": "GetListByClaimAsync", "summary": null, "isAsync": true, @@ -3994,8 +4848,36 @@ } ] }, + { + "returnType": "Void", + "namespace": "Volo.Abp.Identity", + "name": "RemoveClaimFromAllUsersAsync", + "summary": null, + "isAsync": true, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "String", + "name": "claimType", + "isOptional": false + }, + { + "type": "Boolean", + "name": "autoSave", + "isOptional": true + }, + { + "type": "CancellationToken", + "name": "cancellationToken", + "isOptional": true + } + ] + }, { "returnType": "List", + "namespace": "Volo.Abp.Identity", "name": "GetListByNormalizedRoleNameAsync", "summary": null, "isAsync": true, @@ -4020,8 +4902,31 @@ } ] }, + { + "returnType": "List", + "namespace": "Volo.Abp.Identity", + "name": "GetUserIdListByRoleIdAsync", + "summary": null, + "isAsync": true, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "Guid", + "name": "roleId", + "isOptional": false + }, + { + "type": "CancellationToken", + "name": "cancellationToken", + "isOptional": true + } + ] + }, { "returnType": "List", + "namespace": "Volo.Abp.Identity", "name": "GetListAsync", "summary": null, "isAsync": true, @@ -4138,6 +5043,7 @@ }, { "returnType": "List", + "namespace": "Volo.Abp.Identity", "name": "GetRolesAsync", "summary": null, "isAsync": true, @@ -4164,6 +5070,7 @@ }, { "returnType": "List", + "namespace": "Volo.Abp.Identity", "name": "GetOrganizationUnitsAsync", "summary": null, "isAsync": true, @@ -4190,6 +5097,7 @@ }, { "returnType": "List", + "namespace": "Volo.Abp.Identity", "name": "GetUsersInOrganizationUnitAsync", "summary": null, "isAsync": true, @@ -4211,6 +5119,7 @@ }, { "returnType": "List", + "namespace": "Volo.Abp.Identity", "name": "GetUsersInOrganizationsListAsync", "summary": null, "isAsync": true, @@ -4232,6 +5141,7 @@ }, { "returnType": "List", + "namespace": "Volo.Abp.Identity", "name": "GetUsersInOrganizationUnitWithChildrenAsync", "summary": null, "isAsync": true, @@ -4253,6 +5163,7 @@ }, { "returnType": "Int64", + "namespace": "Volo.Abp.Identity", "name": "GetCountAsync", "summary": null, "isAsync": true, @@ -4349,6 +5260,7 @@ }, { "returnType": "IdentityUser", + "namespace": "Volo.Abp.Identity", "name": "FindByTenantIdAndUserNameAsync", "summary": null, "isAsync": true, @@ -4380,6 +5292,7 @@ }, { "returnType": "List", + "namespace": "Volo.Abp.Identity", "name": "GetListByIdsAsync", "summary": null, "isAsync": true, @@ -4403,6 +5316,82 @@ "isOptional": true } ] + }, + { + "returnType": "Void", + "namespace": "Volo.Abp.Identity", + "name": "UpdateRoleAsync", + "summary": null, + "isAsync": true, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "Guid", + "name": "sourceRoleId", + "isOptional": false + }, + { + "type": "Nullable", + "name": "targetRoleId", + "isOptional": false + }, + { + "type": "CancellationToken", + "name": "cancellationToken", + "isOptional": true + } + ] + }, + { + "returnType": "Void", + "namespace": "Volo.Abp.Identity", + "name": "UpdateOrganizationAsync", + "summary": null, + "isAsync": true, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "Guid", + "name": "sourceOrganizationId", + "isOptional": false + }, + { + "type": "Nullable", + "name": "targetOrganizationId", + "isOptional": false + }, + { + "type": "CancellationToken", + "name": "cancellationToken", + "isOptional": true + } + ] + }, + { + "returnType": "List", + "namespace": "Volo.Abp.Identity", + "name": "GetRoleNamesAsync", + "summary": null, + "isAsync": true, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "IEnumerable", + "name": "userIds", + "isOptional": false + }, + { + "type": "CancellationToken", + "name": "cancellationToken", + "isOptional": true + } + ] } ], "contentType": "repositoryInterface", @@ -4454,6 +5443,7 @@ "methods": [ { "returnType": "List", + "namespace": "Volo.Abp.Identity", "name": "GetChildrenAsync", "summary": null, "isAsync": true, @@ -4480,6 +5470,7 @@ }, { "returnType": "List", + "namespace": "Volo.Abp.Identity", "name": "GetAllChildrenWithParentCodeAsync", "summary": null, "isAsync": true, @@ -4511,6 +5502,7 @@ }, { "returnType": "OrganizationUnit", + "namespace": "Volo.Abp.Identity", "name": "GetAsync", "summary": null, "isAsync": true, @@ -4537,6 +5529,7 @@ }, { "returnType": "List", + "namespace": "Volo.Abp.Identity", "name": "GetListAsync", "summary": null, "isAsync": true, @@ -4573,6 +5566,7 @@ }, { "returnType": "List", + "namespace": "Volo.Abp.Identity", "name": "GetListAsync", "summary": null, "isAsync": true, @@ -4597,8 +5591,36 @@ } ] }, + { + "returnType": "List", + "namespace": "Volo.Abp.Identity", + "name": "GetListByRoleIdAsync", + "summary": null, + "isAsync": true, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "Guid", + "name": "roleId", + "isOptional": false + }, + { + "type": "Boolean", + "name": "includeDetails", + "isOptional": true + }, + { + "type": "CancellationToken", + "name": "cancellationToken", + "isOptional": true + } + ] + }, { "returnType": "List", + "namespace": "Volo.Abp.Identity", "name": "GetRolesAsync", "summary": null, "isAsync": true, @@ -4638,8 +5660,51 @@ } ] }, + { + "returnType": "List", + "namespace": "Volo.Abp.Identity", + "name": "GetRolesAsync", + "summary": null, + "isAsync": true, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "Guid[]", + "name": "organizationUnitIds", + "isOptional": false + }, + { + "type": "String", + "name": "sorting", + "isOptional": true + }, + { + "type": "Int32", + "name": "maxResultCount", + "isOptional": true + }, + { + "type": "Int32", + "name": "skipCount", + "isOptional": true + }, + { + "type": "Boolean", + "name": "includeDetails", + "isOptional": true + }, + { + "type": "CancellationToken", + "name": "cancellationToken", + "isOptional": true + } + ] + }, { "returnType": "Int32", + "namespace": "Volo.Abp.Identity", "name": "GetRolesCountAsync", "summary": null, "isAsync": true, @@ -4661,6 +5726,7 @@ }, { "returnType": "List", + "namespace": "Volo.Abp.Identity", "name": "GetUnaddedRolesAsync", "summary": null, "isAsync": true, @@ -4707,6 +5773,7 @@ }, { "returnType": "Int32", + "namespace": "Volo.Abp.Identity", "name": "GetUnaddedRolesCountAsync", "summary": null, "isAsync": true, @@ -4733,6 +5800,7 @@ }, { "returnType": "List", + "namespace": "Volo.Abp.Identity", "name": "GetMembersAsync", "summary": null, "isAsync": true, @@ -4777,8 +5845,31 @@ } ] }, + { + "returnType": "List", + "namespace": "Volo.Abp.Identity", + "name": "GetMemberIdsAsync", + "summary": null, + "isAsync": true, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "Guid", + "name": "id", + "isOptional": false + }, + { + "type": "CancellationToken", + "name": "cancellationToken", + "isOptional": true + } + ] + }, { "returnType": "Int32", + "namespace": "Volo.Abp.Identity", "name": "GetMembersCountAsync", "summary": null, "isAsync": true, @@ -4805,6 +5896,7 @@ }, { "returnType": "List", + "namespace": "Volo.Abp.Identity", "name": "GetUnaddedUsersAsync", "summary": null, "isAsync": true, @@ -4851,6 +5943,7 @@ }, { "returnType": "Int32", + "namespace": "Volo.Abp.Identity", "name": "GetUnaddedUsersCountAsync", "summary": null, "isAsync": true, @@ -4877,6 +5970,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.Identity", "name": "RemoveAllRolesAsync", "summary": null, "isAsync": true, @@ -4898,6 +5992,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.Identity", "name": "RemoveAllMembersAsync", "summary": null, "isAsync": true, diff --git a/modules/identity/src/Volo.Abp.Identity.EntityFrameworkCore/Volo.Abp.Identity.EntityFrameworkCore.abppkg.analyze.json b/modules/identity/src/Volo.Abp.Identity.EntityFrameworkCore/Volo.Abp.Identity.EntityFrameworkCore.abppkg.analyze.json index 7889d66fe1..8b87e80711 100644 --- a/modules/identity/src/Volo.Abp.Identity.EntityFrameworkCore/Volo.Abp.Identity.EntityFrameworkCore.abppkg.analyze.json +++ b/modules/identity/src/Volo.Abp.Identity.EntityFrameworkCore/Volo.Abp.Identity.EntityFrameworkCore.abppkg.analyze.json @@ -69,6 +69,25 @@ "connectionStringName": "AbpIdentity", "databaseTables": [], "replacedDbContexts": [], + "modelBuilderExtensionMethods": [ + { + "returnType": "Void", + "namespace": "Volo.Abp.Identity.EntityFrameworkCore", + "name": "ConfigureIdentity", + "summary": null, + "isAsync": false, + "isPublic": true, + "isPrivate": false, + "isStatic": true, + "parameters": [ + { + "type": "ModelBuilder", + "name": "builder", + "isOptional": false + } + ] + } + ], "implementingInterfaces": [ { "name": "IInfrastructure", diff --git a/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo.Abp.Identity.MongoDB.abppkg.analyze.json b/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo.Abp.Identity.MongoDB.abppkg.analyze.json index 16c91703aa..57087c93c4 100644 --- a/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo.Abp.Identity.MongoDB.abppkg.analyze.json +++ b/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo.Abp.Identity.MongoDB.abppkg.analyze.json @@ -69,45 +69,51 @@ "connectionStringName": "AbpIdentity", "databaseCollections": [ { - "entityFullName": "Volo.Abp.Identity.IdentityLinkUser", + "entityFullName": "Volo.Abp.Identity.IdentityUser", "contentType": "databaseCollection", - "name": "AbpLinkUsers", + "name": "Users", "summary": null }, { - "entityFullName": "Volo.Abp.Identity.IdentityUserDelegation", + "entityFullName": "Volo.Abp.Identity.IdentityRole", "contentType": "databaseCollection", - "name": "AbpUserDelegations", + "name": "Roles", "summary": null }, { "entityFullName": "Volo.Abp.Identity.IdentityClaimType", "contentType": "databaseCollection", - "name": "AbpClaimTypes", + "name": "ClaimTypes", "summary": null }, { "entityFullName": "Volo.Abp.Identity.OrganizationUnit", "contentType": "databaseCollection", - "name": "AbpOrganizationUnits", + "name": "OrganizationUnits", "summary": null }, { "entityFullName": "Volo.Abp.Identity.IdentitySecurityLog", "contentType": "databaseCollection", - "name": "AbpSecurityLogs", + "name": "SecurityLogs", "summary": null }, { - "entityFullName": "Volo.Abp.Identity.IdentityRole", + "entityFullName": "Volo.Abp.Identity.IdentityLinkUser", "contentType": "databaseCollection", - "name": "AbpRoles", + "name": "LinkUsers", "summary": null }, { - "entityFullName": "Volo.Abp.Identity.IdentityUser", + "entityFullName": "Volo.Abp.Identity.IdentityUserDelegation", + "contentType": "databaseCollection", + "name": "UserDelegations", + "summary": null + }, + { + "entityFullName": "Volo.Abp.Identity.IdentitySession", "contentType": "databaseCollection", - "name": "AbpUsers", + "name": "Sessions", "summary": null } ], diff --git a/modules/identity/src/Volo.Abp.Identity.Web/Volo.Abp.Identity.Web.abppkg.analyze.json b/modules/identity/src/Volo.Abp.Identity.Web/Volo.Abp.Identity.Web.abppkg.analyze.json index 3ab45eaadb..61e3708272 100644 --- a/modules/identity/src/Volo.Abp.Identity.Web/Volo.Abp.Identity.Web.abppkg.analyze.json +++ b/modules/identity/src/Volo.Abp.Identity.Web/Volo.Abp.Identity.Web.abppkg.analyze.json @@ -74,12 +74,6 @@ "name": "AbpIdentityWebModule", "summary": null }, - { - "apis": [], - "contentType": "httpApi", - "name": "Defined Http Apis", - "summary": null - }, { "namespace": "Volo.Abp.Identity.Web.Pages.Identity.Users", "contentType": "webPage", diff --git a/modules/identityserver/src/Volo.Abp.IdentityServer.Domain.Shared/Volo.Abp.IdentityServer.Domain.Shared.abppkg.analyze.json b/modules/identityserver/src/Volo.Abp.IdentityServer.Domain.Shared/Volo.Abp.IdentityServer.Domain.Shared.abppkg.analyze.json index db6116bba5..5887cf0c27 100644 --- a/modules/identityserver/src/Volo.Abp.IdentityServer.Domain.Shared/Volo.Abp.IdentityServer.Domain.Shared.abppkg.analyze.json +++ b/modules/identityserver/src/Volo.Abp.IdentityServer.Domain.Shared/Volo.Abp.IdentityServer.Domain.Shared.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.IdentityServer.Domain.Shared", - "hash": "4c08d52a7966ddf0249ea9b228f5019b", + "hash": "", "contents": [ { "namespace": "Volo.Abp.IdentityServer", diff --git a/modules/identityserver/src/Volo.Abp.IdentityServer.Domain/Volo.Abp.IdentityServer.Domain.abppkg.analyze.json b/modules/identityserver/src/Volo.Abp.IdentityServer.Domain/Volo.Abp.IdentityServer.Domain.abppkg.analyze.json index 25b8ab9746..ee8a8e35db 100644 --- a/modules/identityserver/src/Volo.Abp.IdentityServer.Domain/Volo.Abp.IdentityServer.Domain.abppkg.analyze.json +++ b/modules/identityserver/src/Volo.Abp.IdentityServer.Domain/Volo.Abp.IdentityServer.Domain.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.IdentityServer.Domain", - "hash": "e92e0873e411d6a1c141aa10c5cfad37", + "hash": "", "contents": [ { "namespace": "Volo.Abp.IdentityServer", @@ -526,6 +526,7 @@ "methods": [ { "returnType": "Void", + "namespace": "Volo.Abp.IdentityServer.IdentityResources", "name": "AddUserClaim", "summary": null, "isAsync": false, @@ -542,6 +543,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.IdentityServer.IdentityResources", "name": "RemoveAllUserClaims", "summary": null, "isAsync": false, @@ -552,6 +554,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.IdentityServer.IdentityResources", "name": "RemoveUserClaim", "summary": null, "isAsync": false, @@ -568,6 +571,7 @@ }, { "returnType": "IdentityResourceClaim", + "namespace": "Volo.Abp.IdentityServer.IdentityResources", "name": "FindUserClaim", "summary": null, "isAsync": false, @@ -584,6 +588,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.IdentityServer.IdentityResources", "name": "AddProperty", "summary": null, "isAsync": false, @@ -605,6 +610,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.IdentityServer.IdentityResources", "name": "RemoveAllProperties", "summary": null, "isAsync": false, @@ -615,6 +621,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.IdentityServer.IdentityResources", "name": "RemoveProperty", "summary": null, "isAsync": false, @@ -631,6 +638,7 @@ }, { "returnType": "IdentityResourceProperty", + "namespace": "Volo.Abp.IdentityServer.IdentityResources", "name": "FindProperty", "summary": null, "isAsync": false, @@ -1060,6 +1068,7 @@ "methods": [ { "returnType": "Void", + "namespace": "Volo.Abp.IdentityServer.Clients", "name": "AddGrantType", "summary": null, "isAsync": false, @@ -1076,6 +1085,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.IdentityServer.Clients", "name": "RemoveAllAllowedGrantTypes", "summary": null, "isAsync": false, @@ -1086,6 +1096,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.IdentityServer.Clients", "name": "RemoveGrantType", "summary": null, "isAsync": false, @@ -1102,6 +1113,7 @@ }, { "returnType": "ClientGrantType", + "namespace": "Volo.Abp.IdentityServer.Clients", "name": "FindGrantType", "summary": null, "isAsync": false, @@ -1118,6 +1130,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.IdentityServer.Clients", "name": "AddSecret", "summary": null, "isAsync": false, @@ -1149,6 +1162,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.IdentityServer.Clients", "name": "RemoveSecret", "summary": null, "isAsync": false, @@ -1170,6 +1184,7 @@ }, { "returnType": "ClientSecret", + "namespace": "Volo.Abp.IdentityServer.Clients", "name": "FindSecret", "summary": null, "isAsync": false, @@ -1191,6 +1206,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.IdentityServer.Clients", "name": "AddScope", "summary": null, "isAsync": false, @@ -1207,6 +1223,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.IdentityServer.Clients", "name": "RemoveAllScopes", "summary": null, "isAsync": false, @@ -1217,6 +1234,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.IdentityServer.Clients", "name": "RemoveScope", "summary": null, "isAsync": false, @@ -1233,6 +1251,7 @@ }, { "returnType": "ClientScope", + "namespace": "Volo.Abp.IdentityServer.Clients", "name": "FindScope", "summary": null, "isAsync": false, @@ -1249,6 +1268,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.IdentityServer.Clients", "name": "AddCorsOrigin", "summary": null, "isAsync": false, @@ -1265,6 +1285,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.IdentityServer.Clients", "name": "AddRedirectUri", "summary": null, "isAsync": false, @@ -1281,6 +1302,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.IdentityServer.Clients", "name": "AddPostLogoutRedirectUri", "summary": null, "isAsync": false, @@ -1297,6 +1319,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.IdentityServer.Clients", "name": "RemoveAllCorsOrigins", "summary": null, "isAsync": false, @@ -1307,6 +1330,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.IdentityServer.Clients", "name": "RemoveCorsOrigin", "summary": null, "isAsync": false, @@ -1323,6 +1347,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.IdentityServer.Clients", "name": "RemoveAllRedirectUris", "summary": null, "isAsync": false, @@ -1333,6 +1358,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.IdentityServer.Clients", "name": "RemoveRedirectUri", "summary": null, "isAsync": false, @@ -1349,6 +1375,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.IdentityServer.Clients", "name": "RemoveAllPostLogoutRedirectUris", "summary": null, "isAsync": false, @@ -1359,6 +1386,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.IdentityServer.Clients", "name": "RemovePostLogoutRedirectUri", "summary": null, "isAsync": false, @@ -1375,6 +1403,7 @@ }, { "returnType": "ClientCorsOrigin", + "namespace": "Volo.Abp.IdentityServer.Clients", "name": "FindCorsOrigin", "summary": null, "isAsync": false, @@ -1391,6 +1420,7 @@ }, { "returnType": "ClientRedirectUri", + "namespace": "Volo.Abp.IdentityServer.Clients", "name": "FindRedirectUri", "summary": null, "isAsync": false, @@ -1407,6 +1437,7 @@ }, { "returnType": "ClientPostLogoutRedirectUri", + "namespace": "Volo.Abp.IdentityServer.Clients", "name": "FindPostLogoutRedirectUri", "summary": null, "isAsync": false, @@ -1423,6 +1454,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.IdentityServer.Clients", "name": "AddProperty", "summary": null, "isAsync": false, @@ -1444,6 +1476,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.IdentityServer.Clients", "name": "RemoveAllProperties", "summary": null, "isAsync": false, @@ -1454,6 +1487,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.IdentityServer.Clients", "name": "RemoveProperty", "summary": null, "isAsync": false, @@ -1470,6 +1504,7 @@ }, { "returnType": "ClientProperty", + "namespace": "Volo.Abp.IdentityServer.Clients", "name": "FindProperty", "summary": null, "isAsync": false, @@ -1486,6 +1521,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.IdentityServer.Clients", "name": "AddClaim", "summary": null, "isAsync": false, @@ -1507,6 +1543,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.IdentityServer.Clients", "name": "RemoveAllClaims", "summary": null, "isAsync": false, @@ -1517,6 +1554,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.IdentityServer.Clients", "name": "RemoveClaim", "summary": null, "isAsync": false, @@ -1533,6 +1571,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.IdentityServer.Clients", "name": "RemoveClaim", "summary": null, "isAsync": false, @@ -1554,6 +1593,7 @@ }, { "returnType": "List", + "namespace": "Volo.Abp.IdentityServer.Clients", "name": "FindClaims", "summary": null, "isAsync": false, @@ -1570,6 +1610,7 @@ }, { "returnType": "ClientClaim", + "namespace": "Volo.Abp.IdentityServer.Clients", "name": "FindClaim", "summary": null, "isAsync": false, @@ -1591,6 +1632,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.IdentityServer.Clients", "name": "AddIdentityProviderRestriction", "summary": null, "isAsync": false, @@ -1607,6 +1649,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.IdentityServer.Clients", "name": "RemoveAllIdentityProviderRestrictions", "summary": null, "isAsync": false, @@ -1617,6 +1660,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.IdentityServer.Clients", "name": "RemoveIdentityProviderRestriction", "summary": null, "isAsync": false, @@ -1633,6 +1677,7 @@ }, { "returnType": "ClientIdPRestriction", + "namespace": "Volo.Abp.IdentityServer.Clients", "name": "FindIdentityProviderRestriction", "summary": null, "isAsync": false, @@ -2067,6 +2112,7 @@ "methods": [ { "returnType": "Void", + "namespace": "Volo.Abp.IdentityServer.ApiScopes", "name": "AddUserClaim", "summary": null, "isAsync": false, @@ -2083,6 +2129,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.IdentityServer.ApiScopes", "name": "RemoveAllUserClaims", "summary": null, "isAsync": false, @@ -2093,6 +2140,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.IdentityServer.ApiScopes", "name": "RemoveClaim", "summary": null, "isAsync": false, @@ -2109,6 +2157,7 @@ }, { "returnType": "ApiScopeClaim", + "namespace": "Volo.Abp.IdentityServer.ApiScopes", "name": "FindClaim", "summary": null, "isAsync": false, @@ -2125,6 +2174,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.IdentityServer.ApiScopes", "name": "AddProperty", "summary": null, "isAsync": false, @@ -2146,6 +2196,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.IdentityServer.ApiScopes", "name": "RemoveAllProperties", "summary": null, "isAsync": false, @@ -2156,6 +2207,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.IdentityServer.ApiScopes", "name": "RemoveProperty", "summary": null, "isAsync": false, @@ -2172,6 +2224,7 @@ }, { "returnType": "ApiScopeProperty", + "namespace": "Volo.Abp.IdentityServer.ApiScopes", "name": "FindProperty", "summary": null, "isAsync": false, @@ -2369,6 +2422,7 @@ "methods": [ { "returnType": "Void", + "namespace": "Volo.Abp.IdentityServer.ApiResources", "name": "AddSecret", "summary": null, "isAsync": false, @@ -2400,6 +2454,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.IdentityServer.ApiResources", "name": "RemoveSecret", "summary": null, "isAsync": false, @@ -2421,6 +2476,7 @@ }, { "returnType": "ApiResourceSecret", + "namespace": "Volo.Abp.IdentityServer.ApiResources", "name": "FindSecret", "summary": null, "isAsync": false, @@ -2442,6 +2498,7 @@ }, { "returnType": "ApiResourceScope", + "namespace": "Volo.Abp.IdentityServer.ApiResources", "name": "AddScope", "summary": null, "isAsync": false, @@ -2458,6 +2515,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.IdentityServer.ApiResources", "name": "AddUserClaim", "summary": null, "isAsync": false, @@ -2474,6 +2532,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.IdentityServer.ApiResources", "name": "RemoveAllUserClaims", "summary": null, "isAsync": false, @@ -2484,6 +2543,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.IdentityServer.ApiResources", "name": "RemoveClaim", "summary": null, "isAsync": false, @@ -2500,6 +2560,7 @@ }, { "returnType": "ApiResourceClaim", + "namespace": "Volo.Abp.IdentityServer.ApiResources", "name": "FindClaim", "summary": null, "isAsync": false, @@ -2516,6 +2577,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.IdentityServer.ApiResources", "name": "RemoveAllSecrets", "summary": null, "isAsync": false, @@ -2526,6 +2588,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.IdentityServer.ApiResources", "name": "RemoveAllScopes", "summary": null, "isAsync": false, @@ -2536,6 +2599,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.IdentityServer.ApiResources", "name": "RemoveScope", "summary": null, "isAsync": false, @@ -2552,6 +2616,7 @@ }, { "returnType": "ApiResourceScope", + "namespace": "Volo.Abp.IdentityServer.ApiResources", "name": "FindScope", "summary": null, "isAsync": false, @@ -2568,6 +2633,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.IdentityServer.ApiResources", "name": "AddProperty", "summary": null, "isAsync": false, @@ -2589,6 +2655,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.IdentityServer.ApiResources", "name": "RemoveAllProperties", "summary": null, "isAsync": false, @@ -2599,6 +2666,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.IdentityServer.ApiResources", "name": "RemoveProperty", "summary": null, "isAsync": false, @@ -2615,6 +2683,7 @@ }, { "returnType": "ApiResourceProperty", + "namespace": "Volo.Abp.IdentityServer.ApiResources", "name": "FindProperty", "summary": null, "isAsync": false, @@ -2760,6 +2829,7 @@ "methods": [ { "returnType": "List", + "namespace": "Volo.Abp.IdentityServer.IdentityResources", "name": "GetListByScopeNameAsync", "summary": null, "isAsync": true, @@ -2786,6 +2856,7 @@ }, { "returnType": "List", + "namespace": "Volo.Abp.IdentityServer.IdentityResources", "name": "GetListAsync", "summary": null, "isAsync": true, @@ -2827,6 +2898,7 @@ }, { "returnType": "Int64", + "namespace": "Volo.Abp.IdentityServer.IdentityResources", "name": "GetCountAsync", "summary": null, "isAsync": true, @@ -2848,6 +2920,7 @@ }, { "returnType": "IdentityResource", + "namespace": "Volo.Abp.IdentityServer.IdentityResources", "name": "FindByNameAsync", "summary": null, "isAsync": true, @@ -2874,6 +2947,7 @@ }, { "returnType": "Boolean", + "namespace": "Volo.Abp.IdentityServer.IdentityResources", "name": "CheckNameExistAsync", "summary": null, "isAsync": true, @@ -2948,6 +3022,7 @@ "methods": [ { "returnType": "List", + "namespace": "Volo.Abp.IdentityServer.Grants", "name": "GetListAsync", "summary": null, "isAsync": true, @@ -2989,6 +3064,7 @@ }, { "returnType": "PersistedGrant", + "namespace": "Volo.Abp.IdentityServer.Grants", "name": "FindByKeyAsync", "summary": null, "isAsync": true, @@ -3010,6 +3086,7 @@ }, { "returnType": "List", + "namespace": "Volo.Abp.IdentityServer.Grants", "name": "GetListBySubjectIdAsync", "summary": null, "isAsync": true, @@ -3031,6 +3108,7 @@ }, { "returnType": "List", + "namespace": "Volo.Abp.IdentityServer.Grants", "name": "GetListByExpirationAsync", "summary": null, "isAsync": true, @@ -3057,6 +3135,29 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.IdentityServer.Grants", + "name": "DeleteExpirationAsync", + "summary": null, + "isAsync": true, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "DateTime", + "name": "maxExpirationDate", + "isOptional": false + }, + { + "type": "CancellationToken", + "name": "cancellationToken", + "isOptional": true + } + ] + }, + { + "returnType": "Void", + "namespace": "Volo.Abp.IdentityServer.Grants", "name": "DeleteAsync", "summary": null, "isAsync": true, @@ -3141,6 +3242,7 @@ "methods": [ { "returnType": "DeviceFlowCodes", + "namespace": "Volo.Abp.IdentityServer.Devices", "name": "FindByUserCodeAsync", "summary": null, "isAsync": true, @@ -3162,6 +3264,7 @@ }, { "returnType": "DeviceFlowCodes", + "namespace": "Volo.Abp.IdentityServer.Devices", "name": "FindByDeviceCodeAsync", "summary": null, "isAsync": true, @@ -3183,6 +3286,7 @@ }, { "returnType": "List", + "namespace": "Volo.Abp.IdentityServer.Devices", "name": "GetListByExpirationAsync", "summary": null, "isAsync": true, @@ -3206,6 +3310,28 @@ "isOptional": true } ] + }, + { + "returnType": "Void", + "namespace": "Volo.Abp.IdentityServer.Devices", + "name": "DeleteExpirationAsync", + "summary": null, + "isAsync": true, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "DateTime", + "name": "maxExpirationDate", + "isOptional": false + }, + { + "type": "CancellationToken", + "name": "cancellationToken", + "isOptional": true + } + ] } ], "contentType": "repositoryInterface", @@ -3257,6 +3383,7 @@ "methods": [ { "returnType": "Client", + "namespace": "Volo.Abp.IdentityServer.Clients", "name": "FindByClientIdAsync", "summary": null, "isAsync": true, @@ -3283,6 +3410,7 @@ }, { "returnType": "List", + "namespace": "Volo.Abp.IdentityServer.Clients", "name": "GetListAsync", "summary": null, "isAsync": true, @@ -3324,6 +3452,7 @@ }, { "returnType": "Int64", + "namespace": "Volo.Abp.IdentityServer.Clients", "name": "GetCountAsync", "summary": null, "isAsync": true, @@ -3345,6 +3474,7 @@ }, { "returnType": "List", + "namespace": "Volo.Abp.IdentityServer.Clients", "name": "GetAllDistinctAllowedCorsOriginsAsync", "summary": null, "isAsync": true, @@ -3361,6 +3491,7 @@ }, { "returnType": "Boolean", + "namespace": "Volo.Abp.IdentityServer.Clients", "name": "CheckClientIdExistAsync", "summary": null, "isAsync": true, @@ -3435,6 +3566,7 @@ "methods": [ { "returnType": "ApiScope", + "namespace": "Volo.Abp.IdentityServer.ApiScopes", "name": "FindByNameAsync", "summary": null, "isAsync": true, @@ -3461,6 +3593,7 @@ }, { "returnType": "List", + "namespace": "Volo.Abp.IdentityServer.ApiScopes", "name": "GetListByNameAsync", "summary": null, "isAsync": true, @@ -3487,6 +3620,7 @@ }, { "returnType": "List", + "namespace": "Volo.Abp.IdentityServer.ApiScopes", "name": "GetListAsync", "summary": null, "isAsync": true, @@ -3528,6 +3662,7 @@ }, { "returnType": "Int64", + "namespace": "Volo.Abp.IdentityServer.ApiScopes", "name": "GetCountAsync", "summary": null, "isAsync": true, @@ -3549,6 +3684,7 @@ }, { "returnType": "Boolean", + "namespace": "Volo.Abp.IdentityServer.ApiScopes", "name": "CheckNameExistAsync", "summary": null, "isAsync": true, @@ -3623,6 +3759,7 @@ "methods": [ { "returnType": "ApiResource", + "namespace": "Volo.Abp.IdentityServer.ApiResources", "name": "FindByNameAsync", "summary": null, "isAsync": true, @@ -3649,6 +3786,7 @@ }, { "returnType": "List", + "namespace": "Volo.Abp.IdentityServer.ApiResources", "name": "FindByNameAsync", "summary": null, "isAsync": true, @@ -3675,6 +3813,7 @@ }, { "returnType": "List", + "namespace": "Volo.Abp.IdentityServer.ApiResources", "name": "GetListByScopesAsync", "summary": null, "isAsync": true, @@ -3701,6 +3840,7 @@ }, { "returnType": "List", + "namespace": "Volo.Abp.IdentityServer.ApiResources", "name": "GetListAsync", "summary": null, "isAsync": true, @@ -3742,6 +3882,7 @@ }, { "returnType": "Int64", + "namespace": "Volo.Abp.IdentityServer.ApiResources", "name": "GetCountAsync", "summary": null, "isAsync": true, @@ -3763,6 +3904,7 @@ }, { "returnType": "Boolean", + "namespace": "Volo.Abp.IdentityServer.ApiResources", "name": "CheckNameExistAsync", "summary": null, "isAsync": true, diff --git a/modules/identityserver/src/Volo.Abp.IdentityServer.EntityFrameworkCore/Volo.Abp.IdentityServer.EntityFrameworkCore.abppkg.analyze.json b/modules/identityserver/src/Volo.Abp.IdentityServer.EntityFrameworkCore/Volo.Abp.IdentityServer.EntityFrameworkCore.abppkg.analyze.json index a266ed41b3..bfa82a4f70 100644 --- a/modules/identityserver/src/Volo.Abp.IdentityServer.EntityFrameworkCore/Volo.Abp.IdentityServer.EntityFrameworkCore.abppkg.analyze.json +++ b/modules/identityserver/src/Volo.Abp.IdentityServer.EntityFrameworkCore/Volo.Abp.IdentityServer.EntityFrameworkCore.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.IdentityServer.EntityFrameworkCore", - "hash": "17dbfc67f1fd967841f05d2c9df3cbbf", + "hash": "", "contents": [ { "namespace": "Volo.Abp.IdentityServer.EntityFrameworkCore", @@ -67,147 +67,27 @@ { "namespace": "Volo.Abp.IdentityServer.EntityFrameworkCore", "connectionStringName": "AbpIdentityServer", - "databaseTables": [ - { - "entityFullName": "Volo.Abp.IdentityServer.ApiResources.ApiResource", - "contentType": "databaseTable", - "name": "IdentityServerApiResources", - "summary": null - }, - { - "entityFullName": "Volo.Abp.IdentityServer.ApiResources.ApiResourceClaim", - "contentType": "databaseTable", - "name": "IdentityServerApiResourceClaims", - "summary": null - }, - { - "entityFullName": "Volo.Abp.IdentityServer.ApiResources.ApiResourceProperty", - "contentType": "databaseTable", - "name": "IdentityServerApiResourceProperties", - "summary": null - }, - { - "entityFullName": "Volo.Abp.IdentityServer.ApiResources.ApiResourceScope", - "contentType": "databaseTable", - "name": "IdentityServerApiResourceScopes", - "summary": null - }, - { - "entityFullName": "Volo.Abp.IdentityServer.ApiResources.ApiResourceSecret", - "contentType": "databaseTable", - "name": "IdentityServerApiResourceSecrets", - "summary": null - }, - { - "entityFullName": "Volo.Abp.IdentityServer.ApiScopes.ApiScope", - "contentType": "databaseTable", - "name": "IdentityServerApiScopes", - "summary": null - }, - { - "entityFullName": "Volo.Abp.IdentityServer.ApiScopes.ApiScopeClaim", - "contentType": "databaseTable", - "name": "IdentityServerApiScopeClaims", - "summary": null - }, - { - "entityFullName": "Volo.Abp.IdentityServer.ApiScopes.ApiScopeProperty", - "contentType": "databaseTable", - "name": "IdentityServerApiScopeProperties", - "summary": null - }, - { - "entityFullName": "Volo.Abp.IdentityServer.Clients.Client", - "contentType": "databaseTable", - "name": "IdentityServerClients", - "summary": null - }, - { - "entityFullName": "Volo.Abp.IdentityServer.Clients.ClientClaim", - "contentType": "databaseTable", - "name": "IdentityServerClientClaims", - "summary": null - }, - { - "entityFullName": "Volo.Abp.IdentityServer.Clients.ClientCorsOrigin", - "contentType": "databaseTable", - "name": "IdentityServerClientCorsOrigins", - "summary": null - }, - { - "entityFullName": "Volo.Abp.IdentityServer.Clients.ClientGrantType", - "contentType": "databaseTable", - "name": "IdentityServerClientGrantTypes", - "summary": null - }, - { - "entityFullName": "Volo.Abp.IdentityServer.Clients.ClientIdPRestriction", - "contentType": "databaseTable", - "name": "IdentityServerClientIdPRestrictions", - "summary": null - }, - { - "entityFullName": "Volo.Abp.IdentityServer.Clients.ClientPostLogoutRedirectUri", - "contentType": "databaseTable", - "name": "IdentityServerClientPostLogoutRedirectUris", - "summary": null - }, - { - "entityFullName": "Volo.Abp.IdentityServer.Clients.ClientProperty", - "contentType": "databaseTable", - "name": "IdentityServerClientProperties", - "summary": null - }, - { - "entityFullName": "Volo.Abp.IdentityServer.Clients.ClientRedirectUri", - "contentType": "databaseTable", - "name": "IdentityServerClientRedirectUris", - "summary": null - }, - { - "entityFullName": "Volo.Abp.IdentityServer.Clients.ClientScope", - "contentType": "databaseTable", - "name": "IdentityServerClientScopes", - "summary": null - }, - { - "entityFullName": "Volo.Abp.IdentityServer.Clients.ClientSecret", - "contentType": "databaseTable", - "name": "IdentityServerClientSecrets", - "summary": null - }, - { - "entityFullName": "Volo.Abp.IdentityServer.Devices.DeviceFlowCodes", - "contentType": "databaseTable", - "name": "IdentityServerDeviceFlowCodes", - "summary": null - }, - { - "entityFullName": "Volo.Abp.IdentityServer.Grants.PersistedGrant", - "contentType": "databaseTable", - "name": "IdentityServerPersistedGrants", - "summary": null - }, - { - "entityFullName": "Volo.Abp.IdentityServer.IdentityResources.IdentityResource", - "contentType": "databaseTable", - "name": "IdentityServerIdentityResources", - "summary": null - }, - { - "entityFullName": "Volo.Abp.IdentityServer.IdentityResources.IdentityResourceClaim", - "contentType": "databaseTable", - "name": "IdentityServerIdentityResourceClaims", - "summary": null - }, + "databaseTables": [], + "replacedDbContexts": [], + "modelBuilderExtensionMethods": [ { - "entityFullName": "Volo.Abp.IdentityServer.IdentityResources.IdentityResourceProperty", - "contentType": "databaseTable", - "name": "IdentityServerIdentityResourceProperties", - "summary": null + "returnType": "Void", + "namespace": "Volo.Abp.IdentityServer.EntityFrameworkCore", + "name": "ConfigureIdentityServer", + "summary": null, + "isAsync": false, + "isPublic": true, + "isPrivate": false, + "isStatic": true, + "parameters": [ + { + "type": "ModelBuilder", + "name": "builder", + "isOptional": false + } + ] } ], - "replacedDbContexts": [], "implementingInterfaces": [ { "name": "IInfrastructure", diff --git a/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo.Abp.IdentityServer.MongoDB.abppkg.analyze.json b/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo.Abp.IdentityServer.MongoDB.abppkg.analyze.json index 7e7ef739ee..a425647a3c 100644 --- a/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo.Abp.IdentityServer.MongoDB.abppkg.analyze.json +++ b/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo.Abp.IdentityServer.MongoDB.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.IdentityServer.MongoDB", - "hash": "78375f5eb62811a80c4e7897e2f327df", + "hash": "", "contents": [ { "namespace": "Volo.Abp.IdentityServer.MongoDB", @@ -71,37 +71,37 @@ { "entityFullName": "Volo.Abp.IdentityServer.ApiResources.ApiResource", "contentType": "databaseCollection", - "name": "IdentityServerApiResources", + "name": "ApiResources", "summary": null }, { - "entityFullName": "Volo.Abp.IdentityServer.Clients.Client", + "entityFullName": "Volo.Abp.IdentityServer.ApiScopes.ApiScope", "contentType": "databaseCollection", - "name": "IdentityServerClients", + "name": "ApiScopes", "summary": null }, { - "entityFullName": "Volo.Abp.IdentityServer.ApiScopes.ApiScope", + "entityFullName": "Volo.Abp.IdentityServer.Clients.Client", "contentType": "databaseCollection", - "name": "IdentityServerApiScopes", + "name": "Clients", "summary": null }, { "entityFullName": "Volo.Abp.IdentityServer.IdentityResources.IdentityResource", "contentType": "databaseCollection", - "name": "IdentityServerIdentityResources", + "name": "IdentityResources", "summary": null }, { - "entityFullName": "Volo.Abp.IdentityServer.Devices.DeviceFlowCodes", + "entityFullName": "Volo.Abp.IdentityServer.Grants.PersistedGrant", "contentType": "databaseCollection", - "name": "IdentityServerDeviceFlowCodes", + "name": "PersistedGrants", "summary": null }, { - "entityFullName": "Volo.Abp.IdentityServer.Grants.PersistedGrant", + "entityFullName": "Volo.Abp.IdentityServer.Devices.DeviceFlowCodes", "contentType": "databaseCollection", - "name": "IdentityServerPersistedGrants", + "name": "DeviceFlowCodes", "summary": null } ], diff --git a/modules/openiddict/app/OpenIddict.Demo.Server/package.json b/modules/openiddict/app/OpenIddict.Demo.Server/package.json index 9b45d34690..dd50dd6a99 100644 --- a/modules/openiddict/app/OpenIddict.Demo.Server/package.json +++ b/modules/openiddict/app/OpenIddict.Demo.Server/package.json @@ -3,6 +3,6 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "~8.2.2" + "@abp/aspnetcore.mvc.ui.theme.basic": "~8.2.3" } } diff --git a/modules/openiddict/app/angular/package.json b/modules/openiddict/app/angular/package.json index ff77f436ec..0dc443964e 100644 --- a/modules/openiddict/app/angular/package.json +++ b/modules/openiddict/app/angular/package.json @@ -12,15 +12,15 @@ }, "private": true, "dependencies": { - "@abp/ng.account": "~8.2.2", - "@abp/ng.components": "~8.2.2", - "@abp/ng.core": "~8.2.2", - "@abp/ng.oauth": "~8.2.2", - "@abp/ng.identity": "~8.2.2", - "@abp/ng.setting-management": "~8.2.2", - "@abp/ng.tenant-management": "~8.2.2", - "@abp/ng.theme.shared": "~8.2.2", - "@abp/ng.theme.lepton-x": "~3.2.2", + "@abp/ng.account": "~8.2.3", + "@abp/ng.components": "~8.2.3", + "@abp/ng.core": "~8.2.3", + "@abp/ng.oauth": "~8.2.3", + "@abp/ng.identity": "~8.2.3", + "@abp/ng.setting-management": "~8.2.3", + "@abp/ng.tenant-management": "~8.2.3", + "@abp/ng.theme.shared": "~8.2.3", + "@abp/ng.theme.lepton-x": "~3.2.3", "@angular/animations": "^15.0.1", "@angular/common": "^15.0.1", "@angular/compiler": "^15.0.1", @@ -36,7 +36,7 @@ "zone.js": "~0.11.4" }, "devDependencies": { - "@abp/ng.schematics": "~8.2.2", + "@abp/ng.schematics": "~8.2.3", "@angular-devkit/build-angular": "^15.0.1", "@angular-eslint/builder": "~15.1.0", "@angular-eslint/eslint-plugin": "~15.1.0", diff --git a/modules/openiddict/src/Volo.Abp.OpenIddict.Domain.Shared/Volo.Abp.OpenIddict.Domain.Shared.abppkg.analyze.json b/modules/openiddict/src/Volo.Abp.OpenIddict.Domain.Shared/Volo.Abp.OpenIddict.Domain.Shared.abppkg.analyze.json index a374653fc6..5778ee3f66 100644 --- a/modules/openiddict/src/Volo.Abp.OpenIddict.Domain.Shared/Volo.Abp.OpenIddict.Domain.Shared.abppkg.analyze.json +++ b/modules/openiddict/src/Volo.Abp.OpenIddict.Domain.Shared/Volo.Abp.OpenIddict.Domain.Shared.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.OpenIddict.Domain.Shared", - "hash": "f6dd4c13b9e54fc791d6feb622b6bf26", + "hash": "", "contents": [ { "namespace": "Volo.Abp.OpenIddict", diff --git a/modules/openiddict/src/Volo.Abp.OpenIddict.Domain/Volo.Abp.OpenIddict.Domain.abppkg.analyze.json b/modules/openiddict/src/Volo.Abp.OpenIddict.Domain/Volo.Abp.OpenIddict.Domain.abppkg.analyze.json index 633f7567dd..6475807654 100644 --- a/modules/openiddict/src/Volo.Abp.OpenIddict.Domain/Volo.Abp.OpenIddict.Domain.abppkg.analyze.json +++ b/modules/openiddict/src/Volo.Abp.OpenIddict.Domain/Volo.Abp.OpenIddict.Domain.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.OpenIddict.Domain", - "hash": "7bc7931189c97d5bef0fed5dbd107b10", + "hash": "", "contents": [ { "namespace": "Volo.Abp.OpenIddict", @@ -692,6 +692,11 @@ "namespace": "Volo.Abp.OpenIddict.Applications", "primaryKeyType": "Guid", "properties": [ + { + "type": "System.String", + "name": "ApplicationType", + "summary": "Gets or sets the application type associated with the application." + }, { "type": "System.String", "name": "ClientId", @@ -702,6 +707,11 @@ "name": "ClientSecret", "summary": "Gets or sets the client secret associated with the current application.\r\n Note: depending on the application manager used to create this instance,\r\n this property may be hashed or encrypted for security reasons." }, + { + "type": "System.String", + "name": "ClientType", + "summary": "Gets or sets the client type associated with the application." + }, { "type": "System.String", "name": "ConsentType", @@ -717,6 +727,11 @@ "name": "DisplayNames", "summary": "Gets or sets the localized display names\r\n associated with the current application,\r\n serialized as a JSON object." }, + { + "type": "System.String", + "name": "JsonWebKeySet", + "summary": "Gets or sets the JSON Web Key Set associated with\r\n the application, serialized as a JSON object." + }, { "type": "System.String", "name": "Permissions", @@ -744,8 +759,8 @@ }, { "type": "System.String", - "name": "Type", - "summary": "Gets or sets the application type associated with the current application." + "name": "Settings", + "summary": "Gets or sets the settings serialized as a JSON object." }, { "type": "System.String", @@ -807,6 +822,7 @@ "methods": [ { "returnType": "Void", + "namespace": "Volo.Abp.OpenIddict.Tokens", "name": "DeleteManyByApplicationIdAsync", "summary": null, "isAsync": true, @@ -833,6 +849,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.OpenIddict.Tokens", "name": "DeleteManyByAuthorizationIdAsync", "summary": null, "isAsync": true, @@ -857,8 +874,36 @@ } ] }, + { + "returnType": "Void", + "namespace": "Volo.Abp.OpenIddict.Tokens", + "name": "DeleteManyByAuthorizationIdsAsync", + "summary": null, + "isAsync": true, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "Guid[]", + "name": "authorizationIds", + "isOptional": false + }, + { + "type": "Boolean", + "name": "autoSave", + "isOptional": true + }, + { + "type": "CancellationToken", + "name": "cancellationToken", + "isOptional": true + } + ] + }, { "returnType": "List", + "namespace": "Volo.Abp.OpenIddict.Tokens", "name": "FindAsync", "summary": null, "isAsync": true, @@ -885,6 +930,7 @@ }, { "returnType": "List", + "namespace": "Volo.Abp.OpenIddict.Tokens", "name": "FindAsync", "summary": null, "isAsync": true, @@ -916,6 +962,7 @@ }, { "returnType": "List", + "namespace": "Volo.Abp.OpenIddict.Tokens", "name": "FindAsync", "summary": null, "isAsync": true, @@ -952,6 +999,7 @@ }, { "returnType": "List", + "namespace": "Volo.Abp.OpenIddict.Tokens", "name": "FindByApplicationIdAsync", "summary": null, "isAsync": true, @@ -973,6 +1021,7 @@ }, { "returnType": "List", + "namespace": "Volo.Abp.OpenIddict.Tokens", "name": "FindByAuthorizationIdAsync", "summary": null, "isAsync": true, @@ -994,6 +1043,7 @@ }, { "returnType": "OpenIddictToken", + "namespace": "Volo.Abp.OpenIddict.Tokens", "name": "FindByIdAsync", "summary": null, "isAsync": true, @@ -1015,6 +1065,7 @@ }, { "returnType": "OpenIddictToken", + "namespace": "Volo.Abp.OpenIddict.Tokens", "name": "FindByReferenceIdAsync", "summary": null, "isAsync": true, @@ -1036,6 +1087,7 @@ }, { "returnType": "List", + "namespace": "Volo.Abp.OpenIddict.Tokens", "name": "FindBySubjectAsync", "summary": null, "isAsync": true, @@ -1057,6 +1109,7 @@ }, { "returnType": "List", + "namespace": "Volo.Abp.OpenIddict.Tokens", "name": "ListAsync", "summary": null, "isAsync": true, @@ -1082,8 +1135,9 @@ ] }, { - "returnType": "List", - "name": "GetPruneListAsync", + "returnType": "Int64", + "namespace": "Volo.Abp.OpenIddict.Tokens", + "name": "PruneAsync", "summary": null, "isAsync": true, "isPublic": true, @@ -1096,14 +1150,31 @@ "isOptional": false }, { - "type": "Int32", - "name": "count", + "type": "CancellationToken", + "name": "cancellationToken", + "isOptional": true + } + ] + }, + { + "returnType": "ValueTask", + "namespace": "Volo.Abp.OpenIddict.Tokens", + "name": "RevokeByAuthorizationIdAsync", + "summary": null, + "isAsync": false, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "Guid", + "name": "id", "isOptional": false }, { "type": "CancellationToken", "name": "cancellationToken", - "isOptional": true + "isOptional": false } ] } @@ -1157,6 +1228,7 @@ "methods": [ { "returnType": "List", + "namespace": "Volo.Abp.OpenIddict.Scopes", "name": "GetListAsync", "summary": null, "isAsync": true, @@ -1193,6 +1265,7 @@ }, { "returnType": "Int64", + "namespace": "Volo.Abp.OpenIddict.Scopes", "name": "GetCountAsync", "summary": null, "isAsync": true, @@ -1214,6 +1287,7 @@ }, { "returnType": "OpenIddictScope", + "namespace": "Volo.Abp.OpenIddict.Scopes", "name": "FindByIdAsync", "summary": null, "isAsync": true, @@ -1235,6 +1309,7 @@ }, { "returnType": "OpenIddictScope", + "namespace": "Volo.Abp.OpenIddict.Scopes", "name": "FindByNameAsync", "summary": null, "isAsync": true, @@ -1256,6 +1331,7 @@ }, { "returnType": "List", + "namespace": "Volo.Abp.OpenIddict.Scopes", "name": "FindByNamesAsync", "summary": null, "isAsync": true, @@ -1277,6 +1353,7 @@ }, { "returnType": "List", + "namespace": "Volo.Abp.OpenIddict.Scopes", "name": "FindByResourceAsync", "summary": null, "isAsync": true, @@ -1298,6 +1375,7 @@ }, { "returnType": "List", + "namespace": "Volo.Abp.OpenIddict.Scopes", "name": "ListAsync", "summary": null, "isAsync": true, @@ -1372,6 +1450,7 @@ "methods": [ { "returnType": "List", + "namespace": "Volo.Abp.OpenIddict.Authorizations", "name": "FindAsync", "summary": null, "isAsync": true, @@ -1398,6 +1477,7 @@ }, { "returnType": "List", + "namespace": "Volo.Abp.OpenIddict.Authorizations", "name": "FindAsync", "summary": null, "isAsync": true, @@ -1429,6 +1509,7 @@ }, { "returnType": "List", + "namespace": "Volo.Abp.OpenIddict.Authorizations", "name": "FindAsync", "summary": null, "isAsync": true, @@ -1465,6 +1546,7 @@ }, { "returnType": "List", + "namespace": "Volo.Abp.OpenIddict.Authorizations", "name": "FindByApplicationIdAsync", "summary": null, "isAsync": true, @@ -1486,6 +1568,7 @@ }, { "returnType": "OpenIddictAuthorization", + "namespace": "Volo.Abp.OpenIddict.Authorizations", "name": "FindByIdAsync", "summary": null, "isAsync": true, @@ -1507,6 +1590,7 @@ }, { "returnType": "List", + "namespace": "Volo.Abp.OpenIddict.Authorizations", "name": "FindBySubjectAsync", "summary": null, "isAsync": true, @@ -1528,6 +1612,7 @@ }, { "returnType": "List", + "namespace": "Volo.Abp.OpenIddict.Authorizations", "name": "ListAsync", "summary": null, "isAsync": true, @@ -1553,8 +1638,9 @@ ] }, { - "returnType": "List", - "name": "GetPruneListAsync", + "returnType": "Int64", + "namespace": "Volo.Abp.OpenIddict.Authorizations", + "name": "PruneAsync", "summary": null, "isAsync": true, "isPublic": true, @@ -1566,11 +1652,6 @@ "name": "date", "isOptional": false }, - { - "type": "Int32", - "name": "count", - "isOptional": false - }, { "type": "CancellationToken", "name": "cancellationToken", @@ -1628,6 +1709,7 @@ "methods": [ { "returnType": "List", + "namespace": "Volo.Abp.OpenIddict.Applications", "name": "GetListAsync", "summary": null, "isAsync": true, @@ -1664,6 +1746,7 @@ }, { "returnType": "Int64", + "namespace": "Volo.Abp.OpenIddict.Applications", "name": "GetCountAsync", "summary": null, "isAsync": true, @@ -1685,6 +1768,7 @@ }, { "returnType": "OpenIddictApplication", + "namespace": "Volo.Abp.OpenIddict.Applications", "name": "FindByClientIdAsync", "summary": null, "isAsync": true, @@ -1706,6 +1790,7 @@ }, { "returnType": "List", + "namespace": "Volo.Abp.OpenIddict.Applications", "name": "FindByPostLogoutRedirectUriAsync", "summary": null, "isAsync": true, @@ -1727,6 +1812,7 @@ }, { "returnType": "List", + "namespace": "Volo.Abp.OpenIddict.Applications", "name": "FindByRedirectUriAsync", "summary": null, "isAsync": true, @@ -1748,6 +1834,7 @@ }, { "returnType": "List", + "namespace": "Volo.Abp.OpenIddict.Applications", "name": "ListAsync", "summary": null, "isAsync": true, diff --git a/modules/openiddict/src/Volo.Abp.OpenIddict.EntityFrameworkCore/Volo.Abp.OpenIddict.EntityFrameworkCore.abppkg.analyze.json b/modules/openiddict/src/Volo.Abp.OpenIddict.EntityFrameworkCore/Volo.Abp.OpenIddict.EntityFrameworkCore.abppkg.analyze.json index cda46414df..81dbb8d0f9 100644 --- a/modules/openiddict/src/Volo.Abp.OpenIddict.EntityFrameworkCore/Volo.Abp.OpenIddict.EntityFrameworkCore.abppkg.analyze.json +++ b/modules/openiddict/src/Volo.Abp.OpenIddict.EntityFrameworkCore/Volo.Abp.OpenIddict.EntityFrameworkCore.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.OpenIddict.EntityFrameworkCore", - "hash": "15ae177e740932706726e9ba9e5e8b3e", + "hash": "", "contents": [ { "namespace": "Volo.Abp.OpenIddict.EntityFrameworkCore", @@ -67,33 +67,27 @@ { "namespace": "Volo.Abp.OpenIddict.EntityFrameworkCore", "connectionStringName": "AbpOpenIddict", - "databaseTables": [ - { - "entityFullName": "Volo.Abp.OpenIddict.Applications.OpenIddictApplication", - "contentType": "databaseTable", - "name": "OpenIddictApplications", - "summary": null - }, - { - "entityFullName": "Volo.Abp.OpenIddict.Authorizations.OpenIddictAuthorization", - "contentType": "databaseTable", - "name": "OpenIddictAuthorizations", - "summary": null - }, - { - "entityFullName": "Volo.Abp.OpenIddict.Scopes.OpenIddictScope", - "contentType": "databaseTable", - "name": "OpenIddictScopes", - "summary": null - }, + "databaseTables": [], + "replacedDbContexts": [], + "modelBuilderExtensionMethods": [ { - "entityFullName": "Volo.Abp.OpenIddict.Tokens.OpenIddictToken", - "contentType": "databaseTable", - "name": "OpenIddictTokens", - "summary": null + "returnType": "Void", + "namespace": "Volo.Abp.OpenIddict.EntityFrameworkCore", + "name": "ConfigureOpenIddict", + "summary": null, + "isAsync": false, + "isPublic": true, + "isPrivate": false, + "isStatic": true, + "parameters": [ + { + "type": "ModelBuilder", + "name": "builder", + "isOptional": false + } + ] } ], - "replacedDbContexts": [], "implementingInterfaces": [ { "name": "IInfrastructure", diff --git a/modules/openiddict/src/Volo.Abp.OpenIddict.MongoDB/Volo.Abp.OpenIddict.MongoDB.abppkg.analyze.json b/modules/openiddict/src/Volo.Abp.OpenIddict.MongoDB/Volo.Abp.OpenIddict.MongoDB.abppkg.analyze.json index 3ed6e04f73..98bae6abd8 100644 --- a/modules/openiddict/src/Volo.Abp.OpenIddict.MongoDB/Volo.Abp.OpenIddict.MongoDB.abppkg.analyze.json +++ b/modules/openiddict/src/Volo.Abp.OpenIddict.MongoDB/Volo.Abp.OpenIddict.MongoDB.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.OpenIddict.MongoDB", - "hash": "c523d1992cdfef4210763a2d4609779e", + "hash": "", "contents": [ { "namespace": "Volo.Abp.OpenIddict.MongoDB", @@ -69,27 +69,27 @@ "connectionStringName": "AbpOpenIddict", "databaseCollections": [ { - "entityFullName": "Volo.Abp.OpenIddict.Scopes.OpenIddictScope", + "entityFullName": "Volo.Abp.OpenIddict.Applications.OpenIddictApplication", "contentType": "databaseCollection", - "name": "OpenIddictScopes", + "name": "Applications", "summary": null }, { "entityFullName": "Volo.Abp.OpenIddict.Authorizations.OpenIddictAuthorization", "contentType": "databaseCollection", - "name": "OpenIddictAuthorizations", + "name": "Authorizations", "summary": null }, { - "entityFullName": "Volo.Abp.OpenIddict.Tokens.OpenIddictToken", + "entityFullName": "Volo.Abp.OpenIddict.Scopes.OpenIddictScope", "contentType": "databaseCollection", - "name": "OpenIddictTokens", + "name": "Scopes", "summary": null }, { - "entityFullName": "Volo.Abp.OpenIddict.Applications.OpenIddictApplication", + "entityFullName": "Volo.Abp.OpenIddict.Tokens.OpenIddictToken", "contentType": "databaseCollection", - "name": "OpenIddictApplications", + "name": "Tokens", "summary": null } ], diff --git a/modules/permission-management/src/Volo.Abp.PermissionManagement.Application.Contracts/Volo.Abp.PermissionManagement.Application.Contracts.abppkg.analyze.json b/modules/permission-management/src/Volo.Abp.PermissionManagement.Application.Contracts/Volo.Abp.PermissionManagement.Application.Contracts.abppkg.analyze.json index 5adbe608d9..bbfdbd10d9 100644 --- a/modules/permission-management/src/Volo.Abp.PermissionManagement.Application.Contracts/Volo.Abp.PermissionManagement.Application.Contracts.abppkg.analyze.json +++ b/modules/permission-management/src/Volo.Abp.PermissionManagement.Application.Contracts/Volo.Abp.PermissionManagement.Application.Contracts.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.PermissionManagement.Application.Contracts", - "hash": "ff59ff5b2d869012729f9c27ff07fa59", + "hash": "", "contents": [ { "namespace": "Volo.Abp.PermissionManagement", diff --git a/modules/permission-management/src/Volo.Abp.PermissionManagement.Application/Volo.Abp.PermissionManagement.Application.abppkg.analyze.json b/modules/permission-management/src/Volo.Abp.PermissionManagement.Application/Volo.Abp.PermissionManagement.Application.abppkg.analyze.json index 25cbab98c0..bc689ccd41 100644 --- a/modules/permission-management/src/Volo.Abp.PermissionManagement.Application/Volo.Abp.PermissionManagement.Application.abppkg.analyze.json +++ b/modules/permission-management/src/Volo.Abp.PermissionManagement.Application/Volo.Abp.PermissionManagement.Application.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.PermissionManagement.Application", - "hash": "79a7cac0023cd7e3a88b63544271c8e0", + "hash": "", "contents": [ { "namespace": "Volo.Abp.PermissionManagement", @@ -136,6 +136,7 @@ "methods": [ { "returnType": "GetPermissionListResultDto", + "namespace": "Volo.Abp.PermissionManagement", "name": "GetAsync", "summary": null, "isAsync": true, @@ -157,6 +158,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.PermissionManagement", "name": "UpdateAsync", "summary": null, "isAsync": true, @@ -185,6 +187,93 @@ "contentType": "applicationService", "name": "PermissionAppService", "summary": null + }, + { + "namespace": "Volo.Abp.PermissionManagement.Integration", + "baseClass": { + "name": "ApplicationService", + "namespace": "Volo.Abp.Application.Services", + "declaringAssemblyName": "Volo.Abp.Ddd.Application", + "fullName": "Volo.Abp.Application.Services.ApplicationService" + }, + "implementingInterfaces": [ + { + "name": "IApplicationService", + "namespace": "Volo.Abp.Application.Services", + "declaringAssemblyName": "Volo.Abp.Ddd.Application.Contracts", + "fullName": "Volo.Abp.Application.Services.IApplicationService" + }, + { + "name": "IRemoteService", + "namespace": "Volo.Abp", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.IRemoteService" + }, + { + "name": "IAvoidDuplicateCrossCuttingConcerns", + "namespace": "Volo.Abp.Aspects", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.Aspects.IAvoidDuplicateCrossCuttingConcerns" + }, + { + "name": "IValidationEnabled", + "namespace": "Volo.Abp.Validation", + "declaringAssemblyName": "Volo.Abp.Validation", + "fullName": "Volo.Abp.Validation.IValidationEnabled" + }, + { + "name": "IUnitOfWorkEnabled", + "namespace": "Volo.Abp.Uow", + "declaringAssemblyName": "Volo.Abp.Uow", + "fullName": "Volo.Abp.Uow.IUnitOfWorkEnabled" + }, + { + "name": "IAuditingEnabled", + "namespace": "Volo.Abp.Auditing", + "declaringAssemblyName": "Volo.Abp.Auditing.Contracts", + "fullName": "Volo.Abp.Auditing.IAuditingEnabled" + }, + { + "name": "IGlobalFeatureCheckingEnabled", + "namespace": "Volo.Abp.GlobalFeatures", + "declaringAssemblyName": "Volo.Abp.GlobalFeatures", + "fullName": "Volo.Abp.GlobalFeatures.IGlobalFeatureCheckingEnabled" + }, + { + "name": "ITransientDependency", + "namespace": "Volo.Abp.DependencyInjection", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.DependencyInjection.ITransientDependency" + }, + { + "name": "IPermissionIntegrationService", + "namespace": "Volo.Abp.PermissionManagement.Integration", + "declaringAssemblyName": "Volo.Abp.PermissionManagement.Application.Contracts", + "fullName": "Volo.Abp.PermissionManagement.Integration.IPermissionIntegrationService" + } + ], + "methods": [ + { + "returnType": "ListResultDto", + "namespace": "Volo.Abp.PermissionManagement.Integration", + "name": "IsGrantedAsync", + "summary": null, + "isAsync": true, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "List", + "name": "input", + "isOptional": false + } + ] + } + ], + "contentType": "applicationService", + "name": "PermissionIntegrationService", + "summary": null } ] } \ No newline at end of file diff --git a/modules/permission-management/src/Volo.Abp.PermissionManagement.Blazor.Server/Volo.Abp.PermissionManagement.Blazor.Server.abppkg.analyze.json b/modules/permission-management/src/Volo.Abp.PermissionManagement.Blazor.Server/Volo.Abp.PermissionManagement.Blazor.Server.abppkg.analyze.json new file mode 100644 index 0000000000..b374423a34 --- /dev/null +++ b/modules/permission-management/src/Volo.Abp.PermissionManagement.Blazor.Server/Volo.Abp.PermissionManagement.Blazor.Server.abppkg.analyze.json @@ -0,0 +1,68 @@ +{ + "name": "Volo.Abp.PermissionManagement.Blazor.Server", + "hash": "", + "contents": [ + { + "namespace": "Volo.Abp.PermissionManagement.Blazor.Server", + "dependsOnModules": [ + { + "declaringAssemblyName": "Volo.Abp.PermissionManagement.Blazor", + "namespace": "Volo.Abp.PermissionManagement.Blazor", + "name": "AbpPermissionManagementBlazorModule" + }, + { + "declaringAssemblyName": "Volo.Abp.AspNetCore.Components.Server.Theming", + "namespace": "Volo.Abp.AspNetCore.Components.Server.Theming", + "name": "AbpAspNetCoreComponentsServerThemingModule" + } + ], + "implementingInterfaces": [ + { + "name": "IAbpModule", + "namespace": "Volo.Abp.Modularity", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.Modularity.IAbpModule" + }, + { + "name": "IOnPreApplicationInitialization", + "namespace": "Volo.Abp.Modularity", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.Modularity.IOnPreApplicationInitialization" + }, + { + "name": "IOnApplicationInitialization", + "namespace": "Volo.Abp", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.IOnApplicationInitialization" + }, + { + "name": "IOnPostApplicationInitialization", + "namespace": "Volo.Abp.Modularity", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.Modularity.IOnPostApplicationInitialization" + }, + { + "name": "IOnApplicationShutdown", + "namespace": "Volo.Abp", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.IOnApplicationShutdown" + }, + { + "name": "IPreConfigureServices", + "namespace": "Volo.Abp.Modularity", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.Modularity.IPreConfigureServices" + }, + { + "name": "IPostConfigureServices", + "namespace": "Volo.Abp.Modularity", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.Modularity.IPostConfigureServices" + } + ], + "contentType": "abpModule", + "name": "AbpPermissionManagementBlazorServerModule", + "summary": null + } + ] +} \ No newline at end of file diff --git a/modules/permission-management/src/Volo.Abp.PermissionManagement.Blazor/Volo.Abp.PermissionManagement.Blazor.abppkg.analyze.json b/modules/permission-management/src/Volo.Abp.PermissionManagement.Blazor/Volo.Abp.PermissionManagement.Blazor.abppkg.analyze.json new file mode 100644 index 0000000000..da772e4123 --- /dev/null +++ b/modules/permission-management/src/Volo.Abp.PermissionManagement.Blazor/Volo.Abp.PermissionManagement.Blazor.abppkg.analyze.json @@ -0,0 +1,79 @@ +{ + "name": "Volo.Abp.PermissionManagement.Blazor", + "hash": "", + "contents": [ + { + "namespace": "Volo.Abp.PermissionManagement.Blazor", + "dependsOnModules": [ + { + "declaringAssemblyName": "Volo.Abp.AspNetCore.Components.Web.Theming", + "namespace": "Volo.Abp.AspNetCore.Components.Web.Theming", + "name": "AbpAspNetCoreComponentsWebThemingModule" + }, + { + "declaringAssemblyName": "Volo.Abp.AutoMapper", + "namespace": "Volo.Abp.AutoMapper", + "name": "AbpAutoMapperModule" + }, + { + "declaringAssemblyName": "Volo.Abp.PermissionManagement.Application.Contracts", + "namespace": "Volo.Abp.PermissionManagement", + "name": "AbpPermissionManagementApplicationContractsModule" + } + ], + "implementingInterfaces": [ + { + "name": "IAbpModule", + "namespace": "Volo.Abp.Modularity", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.Modularity.IAbpModule" + }, + { + "name": "IOnPreApplicationInitialization", + "namespace": "Volo.Abp.Modularity", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.Modularity.IOnPreApplicationInitialization" + }, + { + "name": "IOnApplicationInitialization", + "namespace": "Volo.Abp", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.IOnApplicationInitialization" + }, + { + "name": "IOnPostApplicationInitialization", + "namespace": "Volo.Abp.Modularity", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.Modularity.IOnPostApplicationInitialization" + }, + { + "name": "IOnApplicationShutdown", + "namespace": "Volo.Abp", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.IOnApplicationShutdown" + }, + { + "name": "IPreConfigureServices", + "namespace": "Volo.Abp.Modularity", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.Modularity.IPreConfigureServices" + }, + { + "name": "IPostConfigureServices", + "namespace": "Volo.Abp.Modularity", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.Modularity.IPostConfigureServices" + } + ], + "contentType": "abpModule", + "name": "AbpPermissionManagementBlazorModule", + "summary": null + }, + { + "namespace": "Volo.Abp.PermissionManagement.Blazor.Components", + "contentType": "webPage", + "name": "PermissionManagementModal", + "summary": null + } + ] +} \ No newline at end of file diff --git a/modules/permission-management/src/Volo.Abp.PermissionManagement.Domain.Shared/Volo.Abp.PermissionManagement.Domain.Shared.abppkg.analyze.json b/modules/permission-management/src/Volo.Abp.PermissionManagement.Domain.Shared/Volo.Abp.PermissionManagement.Domain.Shared.abppkg.analyze.json index d52d0be711..3d2c25d8c3 100644 --- a/modules/permission-management/src/Volo.Abp.PermissionManagement.Domain.Shared/Volo.Abp.PermissionManagement.Domain.Shared.abppkg.analyze.json +++ b/modules/permission-management/src/Volo.Abp.PermissionManagement.Domain.Shared/Volo.Abp.PermissionManagement.Domain.Shared.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.PermissionManagement.Domain.Shared", - "hash": "8d71916b9616b7e4dedfd03b7468a1b8", + "hash": "", "contents": [ { "namespace": "Volo.Abp.PermissionManagement", diff --git a/modules/permission-management/src/Volo.Abp.PermissionManagement.Domain/Volo.Abp.PermissionManagement.Domain.abppkg.analyze.json b/modules/permission-management/src/Volo.Abp.PermissionManagement.Domain/Volo.Abp.PermissionManagement.Domain.abppkg.analyze.json index 97a9c45861..a6f3e6528d 100644 --- a/modules/permission-management/src/Volo.Abp.PermissionManagement.Domain/Volo.Abp.PermissionManagement.Domain.abppkg.analyze.json +++ b/modules/permission-management/src/Volo.Abp.PermissionManagement.Domain/Volo.Abp.PermissionManagement.Domain.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.PermissionManagement.Domain", - "hash": "5fdb46829763b28e9bc9a5be7d3965aa", + "hash": "", "contents": [ { "namespace": "Volo.Abp.PermissionManagement", @@ -156,6 +156,7 @@ "methods": [ { "returnType": "Boolean", + "namespace": "Volo.Abp.PermissionManagement", "name": "HasSameData", "summary": null, "isAsync": false, @@ -172,6 +173,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.PermissionManagement", "name": "Patch", "summary": null, "isAsync": false, @@ -192,11 +194,6 @@ "namespace": "Volo.Abp.PermissionManagement", "primaryKeyType": "Guid", "properties": [ - { - "type": "System.Guid", - "name": "Id", - "summary": null - }, { "type": "System.String", "name": "GroupName", @@ -295,6 +292,7 @@ "methods": [ { "returnType": "Boolean", + "namespace": "Volo.Abp.PermissionManagement", "name": "HasSameData", "summary": null, "isAsync": false, @@ -311,6 +309,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.PermissionManagement", "name": "Patch", "summary": null, "isAsync": false, @@ -331,11 +330,6 @@ "namespace": "Volo.Abp.PermissionManagement", "primaryKeyType": "Guid", "properties": [ - { - "type": "System.Guid", - "name": "Id", - "summary": null - }, { "type": "System.String", "name": "Name", @@ -401,6 +395,7 @@ "methods": [ { "returnType": "PermissionDefinitionRecord", + "namespace": "Volo.Abp.PermissionManagement", "name": "FindByNameAsync", "summary": null, "isAsync": true, @@ -470,6 +465,7 @@ "methods": [ { "returnType": "PermissionGrant", + "namespace": "Volo.Abp.PermissionManagement", "name": "FindAsync", "summary": null, "isAsync": true, @@ -501,6 +497,7 @@ }, { "returnType": "List", + "namespace": "Volo.Abp.PermissionManagement", "name": "GetListAsync", "summary": null, "isAsync": true, @@ -527,6 +524,7 @@ }, { "returnType": "List", + "namespace": "Volo.Abp.PermissionManagement", "name": "GetListAsync", "summary": null, "isAsync": true, diff --git a/modules/permission-management/src/Volo.Abp.PermissionManagement.EntityFrameworkCore/Volo.Abp.PermissionManagement.EntityFrameworkCore.abppkg.analyze.json b/modules/permission-management/src/Volo.Abp.PermissionManagement.EntityFrameworkCore/Volo.Abp.PermissionManagement.EntityFrameworkCore.abppkg.analyze.json index a6e55276a6..b36c3d1419 100644 --- a/modules/permission-management/src/Volo.Abp.PermissionManagement.EntityFrameworkCore/Volo.Abp.PermissionManagement.EntityFrameworkCore.abppkg.analyze.json +++ b/modules/permission-management/src/Volo.Abp.PermissionManagement.EntityFrameworkCore/Volo.Abp.PermissionManagement.EntityFrameworkCore.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.PermissionManagement.EntityFrameworkCore", - "hash": "0dd0efed5fec2360dd19217eb02c8343", + "hash": "", "contents": [ { "namespace": "Volo.Abp.PermissionManagement.EntityFrameworkCore", @@ -67,27 +67,27 @@ { "namespace": "Volo.Abp.PermissionManagement.EntityFrameworkCore", "connectionStringName": "AbpPermissionManagement", - "databaseTables": [ - { - "entityFullName": "Volo.Abp.PermissionManagement.PermissionDefinitionRecord", - "contentType": "databaseTable", - "name": "AbpPermissions", - "summary": null - }, - { - "entityFullName": "Volo.Abp.PermissionManagement.PermissionGrant", - "contentType": "databaseTable", - "name": "AbpPermissionGrants", - "summary": null - }, + "databaseTables": [], + "replacedDbContexts": [], + "modelBuilderExtensionMethods": [ { - "entityFullName": "Volo.Abp.PermissionManagement.PermissionGroupDefinitionRecord", - "contentType": "databaseTable", - "name": "AbpPermissionGroups", - "summary": null + "returnType": "Void", + "namespace": "Volo.Abp.PermissionManagement.EntityFrameworkCore", + "name": "ConfigurePermissionManagement", + "summary": null, + "isAsync": false, + "isPublic": true, + "isPrivate": false, + "isStatic": true, + "parameters": [ + { + "type": "ModelBuilder", + "name": "builder", + "isOptional": false + } + ] } ], - "replacedDbContexts": [], "implementingInterfaces": [ { "name": "IInfrastructure", diff --git a/modules/permission-management/src/Volo.Abp.PermissionManagement.HttpApi.Client/Volo.Abp.PermissionManagement.HttpApi.Client.abppkg.analyze.json b/modules/permission-management/src/Volo.Abp.PermissionManagement.HttpApi.Client/Volo.Abp.PermissionManagement.HttpApi.Client.abppkg.analyze.json index d6e743f841..bad2a3d1b1 100644 --- a/modules/permission-management/src/Volo.Abp.PermissionManagement.HttpApi.Client/Volo.Abp.PermissionManagement.HttpApi.Client.abppkg.analyze.json +++ b/modules/permission-management/src/Volo.Abp.PermissionManagement.HttpApi.Client/Volo.Abp.PermissionManagement.HttpApi.Client.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.PermissionManagement.HttpApi.Client", - "hash": "d148a3deb0693369b6ac043923b7dd6a", + "hash": "", "contents": [ { "namespace": "Volo.Abp.PermissionManagement", diff --git a/modules/permission-management/src/Volo.Abp.PermissionManagement.HttpApi/Volo.Abp.PermissionManagement.HttpApi.abppkg.analyze.json b/modules/permission-management/src/Volo.Abp.PermissionManagement.HttpApi/Volo.Abp.PermissionManagement.HttpApi.abppkg.analyze.json index c9314a1775..951b30cdbd 100644 --- a/modules/permission-management/src/Volo.Abp.PermissionManagement.HttpApi/Volo.Abp.PermissionManagement.HttpApi.abppkg.analyze.json +++ b/modules/permission-management/src/Volo.Abp.PermissionManagement.HttpApi/Volo.Abp.PermissionManagement.HttpApi.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.PermissionManagement.HttpApi", - "hash": "7250e0a57ae6777cf200341791f24bdd", + "hash": "", "contents": [ { "namespace": "Volo.Abp.PermissionManagement.HttpApi", @@ -63,6 +63,51 @@ "contentType": "abpModule", "name": "AbpPermissionManagementHttpApiModule", "summary": null + }, + { + "apis": [ + { + "path": "api/permission-management/permissions", + "method": "GET", + "groupName": "Permissions", + "responseType": "Volo.Abp.PermissionManagement.GetPermissionListResultDto", + "responseTypeAsJson": "{\r\n \"entityDisplayName\": \"string\",\r\n \"groups\": [\r\n {\r\n \"name\": \"string\",\r\n \"displayName\": \"string\",\r\n \"displayNameKey\": \"string\",\r\n \"displayNameResource\": \"string\",\r\n \"permissions\": [\r\n {\r\n \"name\": \"string\",\r\n \"displayName\": \"string\",\r\n \"parentName\": \"string\",\r\n \"isGranted\": false,\r\n \"allowedProviders\": [\r\n \"string\"\r\n ],\r\n \"grantedProviders\": [\r\n {\r\n \"providerName\": \"string\",\r\n \"providerKey\": \"string\"\r\n }\r\n ]\r\n }\r\n ]\r\n }\r\n ]\r\n}", + "parameterDescriptions": [ + { + "name": "providerName", + "type": "String" + }, + { + "name": "providerKey", + "type": "String" + } + ] + }, + { + "path": "api/permission-management/permissions", + "method": "PUT", + "groupName": "Permissions", + "responseType": "System.Void", + "responseTypeAsJson": "", + "parameterDescriptions": [ + { + "name": "providerName", + "type": "String" + }, + { + "name": "providerKey", + "type": "String" + }, + { + "name": "input", + "type": "UpdatePermissionsDto" + } + ] + } + ], + "contentType": "httpApi", + "name": "Defined Http Apis", + "summary": null } ] } \ No newline at end of file diff --git a/modules/permission-management/src/Volo.Abp.PermissionManagement.MongoDB/Volo.Abp.PermissionManagement.MongoDB.abppkg.analyze.json b/modules/permission-management/src/Volo.Abp.PermissionManagement.MongoDB/Volo.Abp.PermissionManagement.MongoDB.abppkg.analyze.json index a86ff5892d..ab836e4108 100644 --- a/modules/permission-management/src/Volo.Abp.PermissionManagement.MongoDB/Volo.Abp.PermissionManagement.MongoDB.abppkg.analyze.json +++ b/modules/permission-management/src/Volo.Abp.PermissionManagement.MongoDB/Volo.Abp.PermissionManagement.MongoDB.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.PermissionManagement.MongoDB", - "hash": "33af874bb56ed9db03c5e7b77e15f321", + "hash": "", "contents": [ { "namespace": "Volo.Abp.PermissionManagement.MongoDB", @@ -71,19 +71,19 @@ { "entityFullName": "Volo.Abp.PermissionManagement.PermissionGroupDefinitionRecord", "contentType": "databaseCollection", - "name": "AbpPermissionGroups", + "name": "PermissionGroups", "summary": null }, { "entityFullName": "Volo.Abp.PermissionManagement.PermissionDefinitionRecord", "contentType": "databaseCollection", - "name": "AbpPermissions", + "name": "Permissions", "summary": null }, { "entityFullName": "Volo.Abp.PermissionManagement.PermissionGrant", "contentType": "databaseCollection", - "name": "AbpPermissionGrants", + "name": "PermissionGrants", "summary": null } ], diff --git a/modules/permission-management/src/Volo.Abp.PermissionManagement.Web/Volo.Abp.PermissionManagement.Web.abppkg.analyze.json b/modules/permission-management/src/Volo.Abp.PermissionManagement.Web/Volo.Abp.PermissionManagement.Web.abppkg.analyze.json index 0213be3e83..0b6bbe7fa9 100644 --- a/modules/permission-management/src/Volo.Abp.PermissionManagement.Web/Volo.Abp.PermissionManagement.Web.abppkg.analyze.json +++ b/modules/permission-management/src/Volo.Abp.PermissionManagement.Web/Volo.Abp.PermissionManagement.Web.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.PermissionManagement.Web", - "hash": "0499a3058051b1ccbf1cb53b7731f1c8", + "hash": "", "contents": [ { "namespace": "Volo.Abp.PermissionManagement.Web", @@ -68,6 +68,12 @@ "contentType": "abpModule", "name": "AbpPermissionManagementWebModule", "summary": null + }, + { + "namespace": "Volo.Abp.PermissionManagement.Web.Pages.AbpPermissionManagement", + "contentType": "webPage", + "name": "PermissionManagementModal", + "summary": null } ] } \ No newline at end of file diff --git a/modules/setting-management/app/Volo.Abp.SettingManagement.DemoApp/package.json b/modules/setting-management/app/Volo.Abp.SettingManagement.DemoApp/package.json index 9dd6b46b6c..d12cc88b84 100644 --- a/modules/setting-management/app/Volo.Abp.SettingManagement.DemoApp/package.json +++ b/modules/setting-management/app/Volo.Abp.SettingManagement.DemoApp/package.json @@ -3,6 +3,6 @@ "name": "demo-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "~8.2.2" + "@abp/aspnetcore.mvc.ui.theme.basic": "~8.2.3" } } diff --git a/modules/setting-management/app/Volo.Abp.SettingManagement.DemoApp/yarn.lock b/modules/setting-management/app/Volo.Abp.SettingManagement.DemoApp/yarn.lock index 9188715ca6..f36d2d8e77 100644 --- a/modules/setting-management/app/Volo.Abp.SettingManagement.DemoApp/yarn.lock +++ b/modules/setting-management/app/Volo.Abp.SettingManagement.DemoApp/yarn.lock @@ -2,194 +2,194 @@ # yarn lockfile v1 -"@abp/aspnetcore.mvc.ui.theme.basic@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-8.2.2.tgz#0b18f3eee58b4a115e861a3732514a02d613d301" - integrity sha512-fFytBe1n+DxK7rVPnO8zqZWixBTDfdSrFUyg+qgpe+/Q10ec7x9j5noB+aiF73OZelJ9LGKz2gl+MS66Erpy2A== - dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~8.2.2" - -"@abp/aspnetcore.mvc.ui.theme.shared@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-8.2.2.tgz#419da4bac71ceb7b1afbd8b740b0675f51de6575" - integrity sha512-tYPbEqoENmxzN9zaBAF8/ssNk8uuVTkKpi663612H1b85ik3Tbm4H3gamKbSR1TxMwIJZxVyizxDMDhLu6ff3w== - dependencies: - "@abp/aspnetcore.mvc.ui" "~8.2.2" - "@abp/bootstrap" "~8.2.2" - "@abp/bootstrap-datepicker" "~8.2.2" - "@abp/bootstrap-daterangepicker" "~8.2.2" - "@abp/datatables.net-bs5" "~8.2.2" - "@abp/font-awesome" "~8.2.2" - "@abp/jquery-form" "~8.2.2" - "@abp/jquery-validation-unobtrusive" "~8.2.2" - "@abp/lodash" "~8.2.2" - "@abp/luxon" "~8.2.2" - "@abp/malihu-custom-scrollbar-plugin" "~8.2.2" - "@abp/moment" "~8.2.2" - "@abp/select2" "~8.2.2" - "@abp/sweetalert2" "~8.2.2" - "@abp/timeago" "~8.2.2" - "@abp/toastr" "~8.2.2" - -"@abp/aspnetcore.mvc.ui@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-8.2.2.tgz#53de1c58c14a98f15f408c9a404e5052cc28c966" - integrity sha512-XjduoVC/2nrlo7R77cTgvDQGZK0fqATx1VaHPHbQJLKvjZXS7rIU6Q0Eye+XcnGnw4udcq3luAorqI96JFkBiQ== +"@abp/aspnetcore.mvc.ui.theme.basic@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-8.2.3.tgz#4456eef32942a1064543f46b9b22fdd941ec209d" + integrity sha512-CmJ7Jp5guO/lCXb9IjrhZ0jpnlbL0d3k/7w6gp/jGhFZ5w7gTgI+ZOtr4jzQnQRWF+ZwaVhsgtfBG9PdNl63QA== + dependencies: + "@abp/aspnetcore.mvc.ui.theme.shared" "~8.2.3" + +"@abp/aspnetcore.mvc.ui.theme.shared@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-8.2.3.tgz#b1a795a947cf710730ddeec4684e706cd0d8b853" + integrity sha512-UDRzWXFUL1kHlrhzgjXwo+UxFwkthyQj2agk889mdt4doZ4NGbHKmgdHNrtt1PIOM8VOcQNubBx5VePffuMcYA== + dependencies: + "@abp/aspnetcore.mvc.ui" "~8.2.3" + "@abp/bootstrap" "~8.2.3" + "@abp/bootstrap-datepicker" "~8.2.3" + "@abp/bootstrap-daterangepicker" "~8.2.3" + "@abp/datatables.net-bs5" "~8.2.3" + "@abp/font-awesome" "~8.2.3" + "@abp/jquery-form" "~8.2.3" + "@abp/jquery-validation-unobtrusive" "~8.2.3" + "@abp/lodash" "~8.2.3" + "@abp/luxon" "~8.2.3" + "@abp/malihu-custom-scrollbar-plugin" "~8.2.3" + "@abp/moment" "~8.2.3" + "@abp/select2" "~8.2.3" + "@abp/sweetalert2" "~8.2.3" + "@abp/timeago" "~8.2.3" + "@abp/toastr" "~8.2.3" + +"@abp/aspnetcore.mvc.ui@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-8.2.3.tgz#02e20c42b198bf6bb13e313b4a4b435f17dc9ddd" + integrity sha512-414cAonBhJDZmlEat4gY1Qaf1npgJjYj/re9O0Rk/FdW2vO8Qt56LozGIsbvVY4RjMsQwpwkkgH4RWlIKm3q8w== dependencies: ansi-colors "^4.1.1" -"@abp/bootstrap-datepicker@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-8.2.2.tgz#a14ff40f5bc29e9ad50ea68391f1238ab86f4d1b" - integrity sha512-nqDfEkbFj20ULJap5tsEThmzIUssfIhV8sqBitd9xKnCmoGpbywp/SZgB2hHNEqb3zIJaewNS9P11PoxqRpdBA== +"@abp/bootstrap-datepicker@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-8.2.3.tgz#ceec259251a692d25daae9263b54a3142b007f23" + integrity sha512-o3uZtuw/NKJTCKf5tK5U7Qii+9PgJGWIjLkqb7mXGftIMdqOaJ+QHZe+J9XaO4of8l2HtGkXp+fuQGVJBTlFAg== dependencies: bootstrap-datepicker "^1.9.0" -"@abp/bootstrap-daterangepicker@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-8.2.2.tgz#bff1cf71bce370ae0e4f3c04b9eee4221604959b" - integrity sha512-M0RbUHN52R7ZAyudhlQ6zWAbMmZ88FVR9EPP2dovfKLKfOUGWQiww2QA3a5gvwo/FBObC95XYfpVg72IQgr5ww== +"@abp/bootstrap-daterangepicker@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-8.2.3.tgz#b33117eb5dfcdbea9cb5212acfecd4e040ce7c2d" + integrity sha512-UR1TXFStbvD54wb6vEVK3FVHYtgugLBdDg4Xyh+aNe2sUTm+kfXh4+1Xm+3R1SV3cWvRT57Sy1bc306c6CQ7Zg== dependencies: bootstrap-daterangepicker "^3.1.0" -"@abp/bootstrap@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-8.2.2.tgz#78db0e4f54dd4b09462d386df83e451506717af6" - integrity sha512-A6hdNB2+Uokm5CniB6+qxR7Q2dyRwMLv2ct0v6PxOT1M+/Z2+oCzFDHLYKnmbcx5pg+1MmvnNC+clQZELDxjyw== +"@abp/bootstrap@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-8.2.3.tgz#462c4a5712d6d0baee345dc318fc5463527cbc21" + integrity sha512-jThgI5nlP5A/cKLUoNgRA5ldHz5xNoGkD+V0Z/gScbeAE8Q8eu7Q5P82PLF8B8cgKjOqJXb2L5kbdNYFdqIOwg== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" bootstrap "^5.1.3" -"@abp/core@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-8.2.2.tgz#b4905fa539272bee26f5f95ceb2224b48cfac8ab" - integrity sha512-YKbT92+T9Zs0IvvIPJrMcBUjwR5u6U6f1KegRcRR79b43ZckIrQbqftjyFLF7YSPuJlVCHoO0YhU2Q1EagiFDg== +"@abp/core@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-8.2.3.tgz#1474f8e24cc8707bd909e1cd49230cdaa54c447e" + integrity sha512-mluL7NHWRxvjwHHGd3kOWQg0Tnmt4o2ih/KfdDJl7z4lpy386yL+UutkE3NNhgbEGWDt1hnS5rKFZabhaahwWg== dependencies: - "@abp/utils" "~8.2.2" + "@abp/utils" "~8.2.3" -"@abp/datatables.net-bs5@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-8.2.2.tgz#c314a615cf98cf0fdb6a97ffea3a42d0b050ccd5" - integrity sha512-dkb0wHdZ93mLSwmHbJ3hMKBm0ZFA9jpLxxWf7u+c7sBU+McACRdFHyl0x6dtinspDgo5GaPHGqmbsVx5S7eM2w== +"@abp/datatables.net-bs5@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-8.2.3.tgz#8e80767d7677ebf69a56248039ef5604499bbc30" + integrity sha512-XTjo15yM/nJiFfRtTMnfOJNh6FX+Vmmf5Kq5aG5XjUcp1IepEAgiNNOSmh+zRhUt4BDZ4RWcfSSGNbh0icUIOg== dependencies: - "@abp/datatables.net" "~8.2.2" + "@abp/datatables.net" "~8.2.3" datatables.net-bs5 "^1.11.4" -"@abp/datatables.net@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-8.2.2.tgz#1627836a2ee7efe1d470bdc32ec437ed86996fc8" - integrity sha512-hPAyx90kI4s+LlUsN6GfLWFEGe9JXExgqSzFUwkOqi+WS+kGWvPElUXfS06VaKiu/h/H9SVl+X+iajd3L9Zr9g== +"@abp/datatables.net@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-8.2.3.tgz#e38567679720546d42b895d9a464728ea3730292" + integrity sha512-CT18SqBuY25UmjNbiSbI9eqvbPNZZm+yYsZoasSUv3JOpO1oPfclgtZV5FKeBQQvM5Vc0BhRs7KMKF2F0pwszA== dependencies: - "@abp/jquery" "~8.2.2" + "@abp/jquery" "~8.2.3" datatables.net "^1.11.4" -"@abp/font-awesome@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-8.2.2.tgz#924ce3b78a902ef844901d824d8eb616cbc32ba8" - integrity sha512-yCn94hjowg42hTvyf3xJu7kOCMWfh5Qw4D8PbiaF3WwP1kbpC2QCeZ/Rh9Oltsml34rkhMKPTzLzZqki25Q5QQ== +"@abp/font-awesome@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-8.2.3.tgz#92d7645c94cda07becb8e2ea23e7769ec55c43b1" + integrity sha512-OLQRBuPHtPyM5IHhIJwsbkE8idmu/DDAIm92kOa97p0r0Hx7epnKx+Yrwz23FuRH2wYlmYJqDmwj1VTK90gxYA== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" "@fortawesome/fontawesome-free" "^6.5.1" -"@abp/jquery-form@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-8.2.2.tgz#aad534f5b4f4346ac97249040af663e70ecbd03e" - integrity sha512-QueETCaVq6g8b7c0jIepbKZKS2SO/aCZJy/uRc/lPumr2Hs96aZvHQGIAZopCQKPfF9mLp+Sc2QEN/zdt8QiNA== +"@abp/jquery-form@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-8.2.3.tgz#a8c593e6afbbcff5250657f052fc9912cdf352ac" + integrity sha512-AhkNUdyXE/q7hsra+1xj8W/g7lkIgR9YXrr0RgddPW+dqYqVvbYdFcPliHaSsl+kzPHSRx7eez8AjQSZlReIjg== dependencies: - "@abp/jquery" "~8.2.2" + "@abp/jquery" "~8.2.3" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-8.2.2.tgz#7396dd6a62cdf0796d967b167da5cc91974a9c5e" - integrity sha512-dH0ax7Lxaf+MeZC0z80IPHyXocuA26lzHtwFx/g4NIxxV1gKL8/wI+rAX1ulloSdqEA8kN6rlgOZMqiG2kNWcw== +"@abp/jquery-validation-unobtrusive@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-8.2.3.tgz#d21cbc1694b68f6377134e4e535d19e2cda0fb8d" + integrity sha512-2Ilrveqsj5jorZ2N75zLlHO8+NGRmLecRWIDZZmuyCXVF/LyyceaNBhkdiV+Ofcts387TVkQkjkoArV10Uu+Jg== dependencies: - "@abp/jquery-validation" "~8.2.2" + "@abp/jquery-validation" "~8.2.3" jquery-validation-unobtrusive "^3.2.12" -"@abp/jquery-validation@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-8.2.2.tgz#25ac2fb35aa8f60ba82116ef429996e7ae8518bb" - integrity sha512-WbvobzuEKmnFdCK2Bic7YNhbuauN1mIzgrnd8Ap0nLAxpwsVYkUBwKHoi7jyYv+Udvl39VjYFeciul9rZYI2pg== +"@abp/jquery-validation@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-8.2.3.tgz#642b7f56c1da5469443f864f04eb09cb0bf75bb4" + integrity sha512-qbML5oyoq9ltq212qD8C7jVOqNwTdvyRzTu3SsN15AXecapZxO/BPjhCgLb99OK4zT7hZaC8R+H0CDBa3O5pvg== dependencies: - "@abp/jquery" "~8.2.2" + "@abp/jquery" "~8.2.3" jquery-validation "^1.19.3" -"@abp/jquery@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-8.2.2.tgz#2496431ed11c5e2410e0efaa34404ac760a064ff" - integrity sha512-2ItXN6O45NIpSK/D8wUu+xVnrkxhc79Pce/yYMzFzI7QGYaKvpaP+tVWQQmKEa7RCNCyPS57AxuDtNqI4LSqDQ== +"@abp/jquery@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-8.2.3.tgz#e73d1df860276ae2a081c6f945f586720a71781d" + integrity sha512-SDOnVUJo0g3tuA40Z2Nme8yI1nTCwp0Mh2aAf3L3W+F8lzV3OQS8mUmpektxhPsFen0DufSvilOC+aI6/Jx5lQ== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" jquery "~3.6.0" -"@abp/lodash@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-8.2.2.tgz#a12ed0018f831c0f763da5c6a09d07494acf01ed" - integrity sha512-X+Y3CBMjNgeK/Y47MPMF4sH8PRF0TP+YpjvZ9lbGVSxiQPsNdrYKseZ1gp+AnDBHvj+Oxb7s/aRVZ1pbDJpXiQ== +"@abp/lodash@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-8.2.3.tgz#e78ef9e681369af51b6c36a0a450884c4ee5677a" + integrity sha512-47YoHS0CrH+PiQ8eF/ASYodGH+foBRBJVkDmRgZ1vegs10CJukBYgAutPlNMC2onlEF1jLYJ40ZKsHd6TrFQkA== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" lodash "^4.17.21" -"@abp/luxon@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-8.2.2.tgz#76026e1ae79601cc322cda458ac1f2b2cb76190a" - integrity sha512-I08NgiUJwCfNvwOZNYjwB/+2bUwulU3urqKIIB9Mg6PGK2hohsE8k2CMEijA+T25YYO32xgXevOfOq5YU2NCTw== +"@abp/luxon@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-8.2.3.tgz#445d763360b29a7591ab31898ce522e61be9d97e" + integrity sha512-pT+oO4znadhSleuH3x6n1nEgOzfVl0aHurt4F+wnJHyP7SdC2+RjZOYJUkuRIaZzflG4699Qq0UgAW6GfpuUgg== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" luxon "^2.3.0" -"@abp/malihu-custom-scrollbar-plugin@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-8.2.2.tgz#53405af2869fde990962914f24228a9fa65bab2f" - integrity sha512-/6g+Qm/5CbCzVgohEH8C72smIN4Lw/uL/KJbP7uEBVAXfKqY6vGA2VhrKNvIiBPfktIzZCHrcKsHwysMPtOS2Q== +"@abp/malihu-custom-scrollbar-plugin@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-8.2.3.tgz#7018c4ab65b78512bf5ea8f542fb0c7119a39e0b" + integrity sha512-CCc0iOaulmssuUL7RsAApRzYD+SXAPbqz5iod6yuyx3Y5Vaz4ik+2/cG7XZgwcgsmctJYZl3IxZ/ijnZXLgHUw== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/moment@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-8.2.2.tgz#1895904212fde6dc1793611940a9f8ec95b2c45f" - integrity sha512-VhhCOzVpapvFOn1gzQIcXB/RMyRKcZOlVLGLTqosg14woPSFm0+0utLHkPOLihWbUSQqDRYKvC2cPbNC6CknKg== +"@abp/moment@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-8.2.3.tgz#126039218e6068eca4279eae1eb5375207780931" + integrity sha512-nV11P1KqX8xPmb/bs3yYbFPz7ZOXWnZPKd4Z2k0JYaFTS2C07twgS0uQQHwW6iP8DrS1QBBAyLYBuM3ctgB0dg== dependencies: moment "^2.9.0" -"@abp/select2@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-8.2.2.tgz#0dc011b838824598dc0a716e55b597aca62712dc" - integrity sha512-zTgtOl2iWihbGja3l8IIi+PqepYNk6O7fUcf6C9cdnBM4IrZSnJqw3sQDr9DqIoEzgdC6izVQzPJJEAi5CZ8Xg== +"@abp/select2@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-8.2.3.tgz#fc92d19ba22cbef5df9b8b2f85b4d21d3139883f" + integrity sha512-/MEJkSuM5+N5OIBLbrQUARUV++NpH9pVq4+btYhghDQDtHYrMHKU41QsginTFKfqBZ4f+OYV/HPnOuj7DJxOBw== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" select2 "^4.0.13" -"@abp/sweetalert2@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-8.2.2.tgz#1c75ec9ef1df2eec6304368667052d8ff9c9e795" - integrity sha512-yNgVxJ6E/cEtc8DYn00BtF9XFLShlZRsAnsipiP74YDvQKWUQSnwi70QoHEYDk2tJ+RsXqtZudvrKv8TyH/ijQ== +"@abp/sweetalert2@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-8.2.3.tgz#a82d674e262e9db89bc219ac350cae8ef17d7669" + integrity sha512-ap8vOgkKbmhAmDfVmEJPyVbIzA3V3mi9SvP/OLaNYEaMG0AppYf3iiSvC+6TA+qAFQuF5fI1oKUcsiE68uQGjw== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" sweetalert2 "^11.3.6" -"@abp/timeago@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-8.2.2.tgz#8af9558d325b2f2f9d9c5b1f90ac9eaf5531429b" - integrity sha512-ILdMeCTDNvmVOSm8Xc9ppL1xI1NoDzLbUCUojI7mvEFCE8sw3QGiFGhW6W7kYcoD7sRkxFl1Jn5V/urpAiQwaQ== +"@abp/timeago@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-8.2.3.tgz#dede68da0b5e252a573b0a1c5a9e4c831bc3c820" + integrity sha512-AbYf35a5M4QMAFK3aV6JE7QHR3GzpOX1zsun39i+97ZrNZf6do/eIgDx6dolTlSb0AsHf8qCrf7T6o1kIaXQ2w== dependencies: - "@abp/jquery" "~8.2.2" + "@abp/jquery" "~8.2.3" timeago "^1.6.7" -"@abp/toastr@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-8.2.2.tgz#a59d5b29e43698dbb614792bfd51185453859a7f" - integrity sha512-I4iiXV/SSXiD4UGM5oVsg6m6p4XmuxvqWmjOLSyoUfJQMC378mzNX0Ec9hYIY42C+GS2NalKtoaaYzBfcEtwoQ== +"@abp/toastr@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-8.2.3.tgz#77767666d578c05f039e84178c428370f6f10802" + integrity sha512-V1H0Efik/kGsRuTNPl//FsoH/8VU58S1K4GQ9k2V1bi8INaC/kU//I9frwOJsXd55imvsbmzh4XzrJ574eU84w== dependencies: - "@abp/jquery" "~8.2.2" + "@abp/jquery" "~8.2.3" toastr "^2.1.4" -"@abp/utils@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-8.2.2.tgz#84035d36e968c8ecdeee3c7617aa45bfeb3f6afd" - integrity sha512-70hmgTd7N63AnanzZYUWpobckhPzplBjlRmMhIi+9WZLQfxWpM/EN6l+qQndjAMMvgFl/vW03BUJh1fL9kGynA== +"@abp/utils@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-8.2.3.tgz#05e3d419ee9a6228f7ed4f86e8fd03f3ce57ed27" + integrity sha512-WMs/okBxGitkGRdsikByyJLFXRSD/DPfBWZdDhU4+TvcQmnTqog9S75kZ8CUpUe/wwDHYsY51ef6N6jOfkGTFQ== dependencies: just-compare "^2.3.0" diff --git a/modules/setting-management/src/Volo.Abp.SettingManagement.Application.Contracts/Volo.Abp.SettingManagement.Application.Contracts.abppkg.analyze.json b/modules/setting-management/src/Volo.Abp.SettingManagement.Application.Contracts/Volo.Abp.SettingManagement.Application.Contracts.abppkg.analyze.json index f08e228750..a366802a26 100644 --- a/modules/setting-management/src/Volo.Abp.SettingManagement.Application.Contracts/Volo.Abp.SettingManagement.Application.Contracts.abppkg.analyze.json +++ b/modules/setting-management/src/Volo.Abp.SettingManagement.Application.Contracts/Volo.Abp.SettingManagement.Application.Contracts.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.SettingManagement.Application.Contracts", - "hash": "212ba33f01b4091ceedd07b742d142bb", + "hash": "", "contents": [ { "namespace": "Volo.Abp.SettingManagement", @@ -82,6 +82,13 @@ "contentType": "permission", "name": "SettingManagement.Emailing.Test", "summary": null + }, + { + "displayName": "Time zone", + "isEnabled": true, + "contentType": "permission", + "name": "SettingManagement.TimeZone", + "summary": null } ] } \ No newline at end of file diff --git a/modules/setting-management/src/Volo.Abp.SettingManagement.Application/Volo.Abp.SettingManagement.Application.abppkg.analyze.json b/modules/setting-management/src/Volo.Abp.SettingManagement.Application/Volo.Abp.SettingManagement.Application.abppkg.analyze.json index 8476bfee4c..47160bc535 100644 --- a/modules/setting-management/src/Volo.Abp.SettingManagement.Application/Volo.Abp.SettingManagement.Application.abppkg.analyze.json +++ b/modules/setting-management/src/Volo.Abp.SettingManagement.Application/Volo.Abp.SettingManagement.Application.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.SettingManagement.Application", - "hash": "e101768281ffae14eab8cdfd970a3b0f", + "hash": "", "contents": [ { "namespace": "Volo.Abp.SettingManagement", @@ -24,6 +24,16 @@ "declaringAssemblyName": "Volo.Abp.Emailing", "namespace": "Volo.Abp.Emailing", "name": "AbpEmailingModule" + }, + { + "declaringAssemblyName": "Volo.Abp.Timing", + "namespace": "Volo.Abp.Timing", + "name": "AbpTimingModule" + }, + { + "declaringAssemblyName": "Volo.Abp.Users.Abstractions", + "namespace": "Volo.Abp.Users", + "name": "AbpUsersAbstractionModule" } ], "implementingInterfaces": [ @@ -141,6 +151,7 @@ "methods": [ { "returnType": "EmailSettingsDto", + "namespace": "Volo.Abp.SettingManagement", "name": "GetAsync", "summary": null, "isAsync": true, @@ -151,6 +162,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.SettingManagement", "name": "UpdateAsync", "summary": null, "isAsync": true, @@ -167,6 +179,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.SettingManagement", "name": "SendTestEmailAsync", "summary": null, "isAsync": true, @@ -185,6 +198,115 @@ "contentType": "applicationService", "name": "EmailSettingsAppService", "summary": null + }, + { + "namespace": "Volo.Abp.SettingManagement", + "baseClass": { + "name": "SettingManagementAppServiceBase", + "namespace": "Volo.Abp.SettingManagement", + "declaringAssemblyName": "Volo.Abp.SettingManagement.Application", + "fullName": "Volo.Abp.SettingManagement.SettingManagementAppServiceBase" + }, + "implementingInterfaces": [ + { + "name": "IApplicationService", + "namespace": "Volo.Abp.Application.Services", + "declaringAssemblyName": "Volo.Abp.Ddd.Application.Contracts", + "fullName": "Volo.Abp.Application.Services.IApplicationService" + }, + { + "name": "IRemoteService", + "namespace": "Volo.Abp", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.IRemoteService" + }, + { + "name": "IAvoidDuplicateCrossCuttingConcerns", + "namespace": "Volo.Abp.Aspects", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.Aspects.IAvoidDuplicateCrossCuttingConcerns" + }, + { + "name": "IValidationEnabled", + "namespace": "Volo.Abp.Validation", + "declaringAssemblyName": "Volo.Abp.Validation", + "fullName": "Volo.Abp.Validation.IValidationEnabled" + }, + { + "name": "IUnitOfWorkEnabled", + "namespace": "Volo.Abp.Uow", + "declaringAssemblyName": "Volo.Abp.Uow", + "fullName": "Volo.Abp.Uow.IUnitOfWorkEnabled" + }, + { + "name": "IAuditingEnabled", + "namespace": "Volo.Abp.Auditing", + "declaringAssemblyName": "Volo.Abp.Auditing.Contracts", + "fullName": "Volo.Abp.Auditing.IAuditingEnabled" + }, + { + "name": "IGlobalFeatureCheckingEnabled", + "namespace": "Volo.Abp.GlobalFeatures", + "declaringAssemblyName": "Volo.Abp.GlobalFeatures", + "fullName": "Volo.Abp.GlobalFeatures.IGlobalFeatureCheckingEnabled" + }, + { + "name": "ITransientDependency", + "namespace": "Volo.Abp.DependencyInjection", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.DependencyInjection.ITransientDependency" + }, + { + "name": "ITimeZoneSettingsAppService", + "namespace": "Volo.Abp.SettingManagement", + "declaringAssemblyName": "Volo.Abp.SettingManagement.Application.Contracts", + "fullName": "Volo.Abp.SettingManagement.ITimeZoneSettingsAppService" + } + ], + "methods": [ + { + "returnType": "String", + "namespace": "Volo.Abp.SettingManagement", + "name": "GetAsync", + "summary": null, + "isAsync": true, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [] + }, + { + "returnType": "List", + "namespace": "Volo.Abp.SettingManagement", + "name": "GetTimezonesAsync", + "summary": null, + "isAsync": true, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [] + }, + { + "returnType": "Void", + "namespace": "Volo.Abp.SettingManagement", + "name": "UpdateAsync", + "summary": null, + "isAsync": true, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "String", + "name": "timezone", + "isOptional": false + } + ] + } + ], + "contentType": "applicationService", + "name": "TimeZoneSettingsAppService", + "summary": null } ] } \ No newline at end of file diff --git a/modules/setting-management/src/Volo.Abp.SettingManagement.Blazor.Server/Volo.Abp.SettingManagement.Blazor.Server.abppkg.analyze.json b/modules/setting-management/src/Volo.Abp.SettingManagement.Blazor.Server/Volo.Abp.SettingManagement.Blazor.Server.abppkg.analyze.json new file mode 100644 index 0000000000..6854bbe6ab --- /dev/null +++ b/modules/setting-management/src/Volo.Abp.SettingManagement.Blazor.Server/Volo.Abp.SettingManagement.Blazor.Server.abppkg.analyze.json @@ -0,0 +1,68 @@ +{ + "name": "Volo.Abp.SettingManagement.Blazor.Server", + "hash": "", + "contents": [ + { + "namespace": "Volo.Abp.SettingManagement.Blazor.Server", + "dependsOnModules": [ + { + "declaringAssemblyName": "Volo.Abp.SettingManagement.Blazor", + "namespace": "Volo.Abp.SettingManagement.Blazor", + "name": "AbpSettingManagementBlazorModule" + }, + { + "declaringAssemblyName": "Volo.Abp.AspNetCore.Components.Server.Theming", + "namespace": "Volo.Abp.AspNetCore.Components.Server.Theming", + "name": "AbpAspNetCoreComponentsServerThemingModule" + } + ], + "implementingInterfaces": [ + { + "name": "IAbpModule", + "namespace": "Volo.Abp.Modularity", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.Modularity.IAbpModule" + }, + { + "name": "IOnPreApplicationInitialization", + "namespace": "Volo.Abp.Modularity", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.Modularity.IOnPreApplicationInitialization" + }, + { + "name": "IOnApplicationInitialization", + "namespace": "Volo.Abp", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.IOnApplicationInitialization" + }, + { + "name": "IOnPostApplicationInitialization", + "namespace": "Volo.Abp.Modularity", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.Modularity.IOnPostApplicationInitialization" + }, + { + "name": "IOnApplicationShutdown", + "namespace": "Volo.Abp", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.IOnApplicationShutdown" + }, + { + "name": "IPreConfigureServices", + "namespace": "Volo.Abp.Modularity", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.Modularity.IPreConfigureServices" + }, + { + "name": "IPostConfigureServices", + "namespace": "Volo.Abp.Modularity", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.Modularity.IPostConfigureServices" + } + ], + "contentType": "abpModule", + "name": "AbpSettingManagementBlazorServerModule", + "summary": null + } + ] +} \ No newline at end of file diff --git a/modules/setting-management/src/Volo.Abp.SettingManagement.Blazor/Volo.Abp.SettingManagement.Blazor.abppkg.analyze.json b/modules/setting-management/src/Volo.Abp.SettingManagement.Blazor/Volo.Abp.SettingManagement.Blazor.abppkg.analyze.json new file mode 100644 index 0000000000..e9362aea97 --- /dev/null +++ b/modules/setting-management/src/Volo.Abp.SettingManagement.Blazor/Volo.Abp.SettingManagement.Blazor.abppkg.analyze.json @@ -0,0 +1,85 @@ +{ + "name": "Volo.Abp.SettingManagement.Blazor", + "hash": "", + "contents": [ + { + "namespace": "Volo.Abp.SettingManagement.Blazor", + "dependsOnModules": [ + { + "declaringAssemblyName": "Volo.Abp.AutoMapper", + "namespace": "Volo.Abp.AutoMapper", + "name": "AbpAutoMapperModule" + }, + { + "declaringAssemblyName": "Volo.Abp.AspNetCore.Components.Web.Theming", + "namespace": "Volo.Abp.AspNetCore.Components.Web.Theming", + "name": "AbpAspNetCoreComponentsWebThemingModule" + }, + { + "declaringAssemblyName": "Volo.Abp.SettingManagement.Application.Contracts", + "namespace": "Volo.Abp.SettingManagement", + "name": "AbpSettingManagementApplicationContractsModule" + } + ], + "implementingInterfaces": [ + { + "name": "IAbpModule", + "namespace": "Volo.Abp.Modularity", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.Modularity.IAbpModule" + }, + { + "name": "IOnPreApplicationInitialization", + "namespace": "Volo.Abp.Modularity", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.Modularity.IOnPreApplicationInitialization" + }, + { + "name": "IOnApplicationInitialization", + "namespace": "Volo.Abp", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.IOnApplicationInitialization" + }, + { + "name": "IOnPostApplicationInitialization", + "namespace": "Volo.Abp.Modularity", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.Modularity.IOnPostApplicationInitialization" + }, + { + "name": "IOnApplicationShutdown", + "namespace": "Volo.Abp", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.IOnApplicationShutdown" + }, + { + "name": "IPreConfigureServices", + "namespace": "Volo.Abp.Modularity", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.Modularity.IPreConfigureServices" + }, + { + "name": "IPostConfigureServices", + "namespace": "Volo.Abp.Modularity", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.Modularity.IPostConfigureServices" + } + ], + "contentType": "abpModule", + "name": "AbpSettingManagementBlazorModule", + "summary": null + }, + { + "namespace": "Volo.Abp.SettingManagement.Blazor.Pages.SettingManagement.TimeZoneSettingGroup", + "contentType": "webPage", + "name": "TimeZoneSettingGroupViewComponent", + "summary": null + }, + { + "namespace": "Volo.Abp.SettingManagement.Blazor.Pages.SettingManagement.EmailSettingGroup", + "contentType": "webPage", + "name": "EmailSettingGroupViewComponent", + "summary": null + } + ] +} \ No newline at end of file diff --git a/modules/setting-management/src/Volo.Abp.SettingManagement.Domain.Shared/Volo.Abp.SettingManagement.Domain.Shared.abppkg.analyze.json b/modules/setting-management/src/Volo.Abp.SettingManagement.Domain.Shared/Volo.Abp.SettingManagement.Domain.Shared.abppkg.analyze.json index 9879af1346..3fffa604d6 100644 --- a/modules/setting-management/src/Volo.Abp.SettingManagement.Domain.Shared/Volo.Abp.SettingManagement.Domain.Shared.abppkg.analyze.json +++ b/modules/setting-management/src/Volo.Abp.SettingManagement.Domain.Shared/Volo.Abp.SettingManagement.Domain.Shared.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.SettingManagement.Domain.Shared", - "hash": "2f93f4bc80c473a7680b5edd11fe138a", + "hash": "", "contents": [ { "namespace": "Volo.Abp.SettingManagement", @@ -84,7 +84,7 @@ "valueType": "ToggleStringValueType", "defaultValue": "false", "displayName": "Allow changing email settings.", - "description": null, + "description": "", "isAvailableToHost": false, "isVisibleToClients": true, "contentType": "feature", diff --git a/modules/setting-management/src/Volo.Abp.SettingManagement.Domain/Volo.Abp.SettingManagement.Domain.abppkg.analyze.json b/modules/setting-management/src/Volo.Abp.SettingManagement.Domain/Volo.Abp.SettingManagement.Domain.abppkg.analyze.json index 1b8fbc33ea..c3b545a078 100644 --- a/modules/setting-management/src/Volo.Abp.SettingManagement.Domain/Volo.Abp.SettingManagement.Domain.abppkg.analyze.json +++ b/modules/setting-management/src/Volo.Abp.SettingManagement.Domain/Volo.Abp.SettingManagement.Domain.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.SettingManagement.Domain", - "hash": "3fb2486bb7c8da0747093a314bde80a6", + "hash": "", "contents": [ { "namespace": "Volo.Abp.SettingManagement", @@ -110,6 +110,7 @@ "methods": [ { "returnType": "String", + "namespace": "Volo.Abp.SettingManagement", "name": "ToString", "summary": null, "isAsync": false, @@ -149,6 +150,212 @@ "name": "Setting", "summary": null }, + { + "baseClass": { + "name": "BasicAggregateRoot", + "namespace": "Volo.Abp.Domain.Entities", + "declaringAssemblyName": "Volo.Abp.Ddd.Domain", + "fullName": "Volo.Abp.Domain.Entities.BasicAggregateRoot" + }, + "implementingInterfaces": [ + { + "name": "IEntity", + "namespace": "Volo.Abp.Domain.Entities", + "declaringAssemblyName": "Volo.Abp.Ddd.Domain", + "fullName": "Volo.Abp.Domain.Entities.IEntity" + }, + { + "name": "IEntity", + "namespace": "Volo.Abp.Domain.Entities", + "declaringAssemblyName": "Volo.Abp.Ddd.Domain", + "fullName": "Volo.Abp.Domain.Entities.IEntity" + }, + { + "name": "IAggregateRoot", + "namespace": "Volo.Abp.Domain.Entities", + "declaringAssemblyName": "Volo.Abp.Ddd.Domain", + "fullName": "Volo.Abp.Domain.Entities.IAggregateRoot" + }, + { + "name": "IAggregateRoot", + "namespace": "Volo.Abp.Domain.Entities", + "declaringAssemblyName": "Volo.Abp.Ddd.Domain", + "fullName": "Volo.Abp.Domain.Entities.IAggregateRoot" + }, + { + "name": "IGeneratesDomainEvents", + "namespace": "Volo.Abp.Domain.Entities", + "declaringAssemblyName": "Volo.Abp.Ddd.Domain", + "fullName": "Volo.Abp.Domain.Entities.IGeneratesDomainEvents" + }, + { + "name": "IHasExtraProperties", + "namespace": "Volo.Abp.Data", + "declaringAssemblyName": "Volo.Abp.ObjectExtending", + "fullName": "Volo.Abp.Data.IHasExtraProperties" + } + ], + "methods": [ + { + "returnType": "Boolean", + "namespace": "Volo.Abp.SettingManagement", + "name": "HasSameData", + "summary": null, + "isAsync": false, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "SettingDefinitionRecord", + "name": "otherRecord", + "isOptional": false + } + ] + }, + { + "returnType": "Void", + "namespace": "Volo.Abp.SettingManagement", + "name": "Patch", + "summary": null, + "isAsync": false, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "SettingDefinitionRecord", + "name": "otherRecord", + "isOptional": false + } + ] + } + ], + "collectionProperties": {}, + "navigationProperties": {}, + "namespace": "Volo.Abp.SettingManagement", + "primaryKeyType": "Guid", + "properties": [ + { + "type": "System.String", + "name": "Name", + "summary": "Unique name of the setting." + }, + { + "type": "System.String", + "name": "DisplayName", + "summary": null + }, + { + "type": "System.String", + "name": "Description", + "summary": null + }, + { + "type": "System.String", + "name": "DefaultValue", + "summary": "Default value of the setting." + }, + { + "type": "System.Boolean", + "name": "IsVisibleToClients", + "summary": "Can clients see this setting and it's value.\r\n It maybe dangerous for some settings to be visible to clients (such as an email server password).\r\n Default: false." + }, + { + "type": "System.String", + "name": "Providers", + "summary": "Comma separated list of provider names." + }, + { + "type": "System.Boolean", + "name": "IsInherited", + "summary": "Is this setting inherited from parent scopes.\r\n Default: True." + }, + { + "type": "System.Boolean", + "name": "IsEncrypted", + "summary": "Is this setting stored as encrypted in the data source.\r\n Default: False." + }, + { + "type": "Volo.Abp.Data.ExtraPropertyDictionary", + "name": "ExtraProperties", + "summary": null + } + ], + "contentType": "aggregateRoot", + "name": "SettingDefinitionRecord", + "summary": null + }, + { + "namespace": "Volo.Abp.SettingManagement", + "entityAnalyzeModel": { + "namespace": "Volo.Abp.SettingManagement", + "primaryKeyType": "Guid", + "properties": [], + "contentType": "entity", + "name": "SettingDefinitionRecord", + "summary": null + }, + "implementingInterfaces": [ + { + "name": "IBasicRepository", + "namespace": "Volo.Abp.Domain.Repositories", + "declaringAssemblyName": "Volo.Abp.Ddd.Domain", + "fullName": "Volo.Abp.Domain.Repositories.IBasicRepository" + }, + { + "name": "IBasicRepository", + "namespace": "Volo.Abp.Domain.Repositories", + "declaringAssemblyName": "Volo.Abp.Ddd.Domain", + "fullName": "Volo.Abp.Domain.Repositories.IBasicRepository" + }, + { + "name": "IReadOnlyBasicRepository", + "namespace": "Volo.Abp.Domain.Repositories", + "declaringAssemblyName": "Volo.Abp.Ddd.Domain", + "fullName": "Volo.Abp.Domain.Repositories.IReadOnlyBasicRepository" + }, + { + "name": "IRepository", + "namespace": "Volo.Abp.Domain.Repositories", + "declaringAssemblyName": "Volo.Abp.Ddd.Domain", + "fullName": "Volo.Abp.Domain.Repositories.IRepository" + }, + { + "name": "IReadOnlyBasicRepository", + "namespace": "Volo.Abp.Domain.Repositories", + "declaringAssemblyName": "Volo.Abp.Ddd.Domain", + "fullName": "Volo.Abp.Domain.Repositories.IReadOnlyBasicRepository" + } + ], + "methods": [ + { + "returnType": "SettingDefinitionRecord", + "namespace": "Volo.Abp.SettingManagement", + "name": "FindByNameAsync", + "summary": null, + "isAsync": true, + "isPublic": true, + "isPrivate": false, + "isStatic": false, + "parameters": [ + { + "type": "String", + "name": "name", + "isOptional": false + }, + { + "type": "CancellationToken", + "name": "cancellationToken", + "isOptional": true + } + ] + } + ], + "contentType": "repositoryInterface", + "name": "ISettingDefinitionRecordRepository", + "summary": null + }, { "namespace": "Volo.Abp.SettingManagement", "entityAnalyzeModel": { @@ -194,6 +401,7 @@ "methods": [ { "returnType": "Setting", + "namespace": "Volo.Abp.SettingManagement", "name": "FindAsync", "summary": null, "isAsync": true, @@ -225,6 +433,7 @@ }, { "returnType": "List", + "namespace": "Volo.Abp.SettingManagement", "name": "GetListAsync", "summary": null, "isAsync": true, @@ -251,6 +460,7 @@ }, { "returnType": "List", + "namespace": "Volo.Abp.SettingManagement", "name": "GetListAsync", "summary": null, "isAsync": true, diff --git a/modules/setting-management/src/Volo.Abp.SettingManagement.EntityFrameworkCore/Volo.Abp.SettingManagement.EntityFrameworkCore.abppkg.analyze.json b/modules/setting-management/src/Volo.Abp.SettingManagement.EntityFrameworkCore/Volo.Abp.SettingManagement.EntityFrameworkCore.abppkg.analyze.json index 6289a82aab..a3808c931c 100644 --- a/modules/setting-management/src/Volo.Abp.SettingManagement.EntityFrameworkCore/Volo.Abp.SettingManagement.EntityFrameworkCore.abppkg.analyze.json +++ b/modules/setting-management/src/Volo.Abp.SettingManagement.EntityFrameworkCore/Volo.Abp.SettingManagement.EntityFrameworkCore.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.SettingManagement.EntityFrameworkCore", - "hash": "05cb2df7469683b6e1c25cce3b82f5fc", + "hash": "", "contents": [ { "namespace": "Volo.Abp.SettingManagement.EntityFrameworkCore", @@ -67,15 +67,27 @@ { "namespace": "Volo.Abp.SettingManagement.EntityFrameworkCore", "connectionStringName": "AbpSettingManagement", - "databaseTables": [ + "databaseTables": [], + "replacedDbContexts": [], + "modelBuilderExtensionMethods": [ { - "entityFullName": "Volo.Abp.SettingManagement.Setting", - "contentType": "databaseTable", - "name": "AbpSettings", - "summary": null + "returnType": "Void", + "namespace": "Volo.Abp.SettingManagement.EntityFrameworkCore", + "name": "ConfigureSettingManagement", + "summary": null, + "isAsync": false, + "isPublic": true, + "isPrivate": false, + "isStatic": true, + "parameters": [ + { + "type": "ModelBuilder", + "name": "builder", + "isOptional": false + } + ] } ], - "replacedDbContexts": [], "implementingInterfaces": [ { "name": "IInfrastructure", diff --git a/modules/setting-management/src/Volo.Abp.SettingManagement.HttpApi.Client/Volo.Abp.SettingManagement.HttpApi.Client.abppkg.analyze.json b/modules/setting-management/src/Volo.Abp.SettingManagement.HttpApi.Client/Volo.Abp.SettingManagement.HttpApi.Client.abppkg.analyze.json index 874c264584..a65ff634f1 100644 --- a/modules/setting-management/src/Volo.Abp.SettingManagement.HttpApi.Client/Volo.Abp.SettingManagement.HttpApi.Client.abppkg.analyze.json +++ b/modules/setting-management/src/Volo.Abp.SettingManagement.HttpApi.Client/Volo.Abp.SettingManagement.HttpApi.Client.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.SettingManagement.HttpApi.Client", - "hash": "e808131c7d2271d8fe47b855225c6226", + "hash": "", "contents": [ { "namespace": "Volo.Abp.SettingManagement", diff --git a/modules/setting-management/src/Volo.Abp.SettingManagement.HttpApi/Volo.Abp.SettingManagement.HttpApi.abppkg.analyze.json b/modules/setting-management/src/Volo.Abp.SettingManagement.HttpApi/Volo.Abp.SettingManagement.HttpApi.abppkg.analyze.json index 11ee7889e6..c448c0450e 100644 --- a/modules/setting-management/src/Volo.Abp.SettingManagement.HttpApi/Volo.Abp.SettingManagement.HttpApi.abppkg.analyze.json +++ b/modules/setting-management/src/Volo.Abp.SettingManagement.HttpApi/Volo.Abp.SettingManagement.HttpApi.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.SettingManagement.HttpApi", - "hash": "c1ea0544950c8b5fb8fa33c66533554b", + "hash": "", "contents": [ { "namespace": "Volo.Abp.SettingManagement", @@ -63,6 +63,76 @@ "contentType": "abpModule", "name": "AbpSettingManagementHttpApiModule", "summary": null + }, + { + "apis": [ + { + "path": "api/setting-management/emailing", + "method": "GET", + "groupName": "EmailSettings", + "responseType": "Volo.Abp.SettingManagement.EmailSettingsDto", + "responseTypeAsJson": "{\r\n \"smtpHost\": \"string\",\r\n \"smtpPort\": 0,\r\n \"smtpUserName\": \"string\",\r\n \"smtpPassword\": \"string\",\r\n \"smtpDomain\": \"string\",\r\n \"smtpEnableSsl\": false,\r\n \"smtpUseDefaultCredentials\": false,\r\n \"defaultFromAddress\": \"string\",\r\n \"defaultFromDisplayName\": \"string\"\r\n}", + "parameterDescriptions": [] + }, + { + "path": "api/setting-management/emailing", + "method": "POST", + "groupName": "EmailSettings", + "responseType": "System.Void", + "responseTypeAsJson": "", + "parameterDescriptions": [ + { + "name": "input", + "type": "UpdateEmailSettingsDto" + } + ] + }, + { + "path": "api/setting-management/emailing/send-test-email", + "method": "POST", + "groupName": "EmailSettings", + "responseType": "System.Void", + "responseTypeAsJson": "", + "parameterDescriptions": [ + { + "name": "input", + "type": "SendTestEmailInput" + } + ] + }, + { + "path": "api/setting-management/timezone", + "method": "GET", + "groupName": "TimeZoneSettings", + "responseType": "System.String", + "responseTypeAsJson": "\"string\"", + "parameterDescriptions": [] + }, + { + "path": "api/setting-management/timezone/timezones", + "method": "GET", + "groupName": "TimeZoneSettings", + "responseType": "System.Collections.Generic.List`1[Volo.Abp.NameValue]", + "responseTypeAsJson": "[\r\n {\r\n \"name\": \"string\",\r\n \"value\": \"string\"\r\n }\r\n]", + "parameterDescriptions": [] + }, + { + "path": "api/setting-management/timezone", + "method": "POST", + "groupName": "TimeZoneSettings", + "responseType": "System.Void", + "responseTypeAsJson": "", + "parameterDescriptions": [ + { + "name": "timezone", + "type": "String" + } + ] + } + ], + "contentType": "httpApi", + "name": "Defined Http Apis", + "summary": null } ] } \ No newline at end of file diff --git a/modules/setting-management/src/Volo.Abp.SettingManagement.MongoDB/Volo.Abp.SettingManagement.MongoDB.abppkg.analyze.json b/modules/setting-management/src/Volo.Abp.SettingManagement.MongoDB/Volo.Abp.SettingManagement.MongoDB.abppkg.analyze.json index e96ca54b0e..c2d39b1a14 100644 --- a/modules/setting-management/src/Volo.Abp.SettingManagement.MongoDB/Volo.Abp.SettingManagement.MongoDB.abppkg.analyze.json +++ b/modules/setting-management/src/Volo.Abp.SettingManagement.MongoDB/Volo.Abp.SettingManagement.MongoDB.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.SettingManagement.MongoDB", - "hash": "3171fe44d81aa843b693ea20310d7ada", + "hash": "", "contents": [ { "namespace": "Volo.Abp.SettingManagement.MongoDB", @@ -71,7 +71,13 @@ { "entityFullName": "Volo.Abp.SettingManagement.Setting", "contentType": "databaseCollection", - "name": "AbpSettings", + "name": "Settings", + "summary": null + }, + { + "entityFullName": "Volo.Abp.SettingManagement.SettingDefinitionRecord", + "contentType": "databaseCollection", + "name": "SettingDefinitionRecords", "summary": null } ], diff --git a/modules/setting-management/src/Volo.Abp.SettingManagement.Web/Volo.Abp.SettingManagement.Web.abppkg.analyze.json b/modules/setting-management/src/Volo.Abp.SettingManagement.Web/Volo.Abp.SettingManagement.Web.abppkg.analyze.json index 1ecad9fea9..79035880e2 100644 --- a/modules/setting-management/src/Volo.Abp.SettingManagement.Web/Volo.Abp.SettingManagement.Web.abppkg.analyze.json +++ b/modules/setting-management/src/Volo.Abp.SettingManagement.Web/Volo.Abp.SettingManagement.Web.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.SettingManagement.Web", - "hash": "535a8e561ef369beac7b706d17493489", + "hash": "", "contents": [ { "namespace": "Volo.Abp.SettingManagement.Web", @@ -73,6 +73,18 @@ "contentType": "abpModule", "name": "AbpSettingManagementWebModule", "summary": null + }, + { + "namespace": "Volo.Abp.SettingManagement.Web.Pages.SettingManagement", + "contentType": "webPage", + "name": "IndexModel", + "summary": null + }, + { + "namespace": "Volo.Abp.SettingManagement.Web.Pages.SettingManagement.Components.EmailSettingGroup", + "contentType": "webPage", + "name": "SendTestEmailModal", + "summary": null } ] } \ No newline at end of file diff --git a/modules/tenant-management/src/Volo.Abp.TenantManagement.Application.Contracts/Volo.Abp.TenantManagement.Application.Contracts.abppkg.analyze.json b/modules/tenant-management/src/Volo.Abp.TenantManagement.Application.Contracts/Volo.Abp.TenantManagement.Application.Contracts.abppkg.analyze.json index b04a748fb6..23e71f33a6 100644 --- a/modules/tenant-management/src/Volo.Abp.TenantManagement.Application.Contracts/Volo.Abp.TenantManagement.Application.Contracts.abppkg.analyze.json +++ b/modules/tenant-management/src/Volo.Abp.TenantManagement.Application.Contracts/Volo.Abp.TenantManagement.Application.Contracts.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.TenantManagement.Application.Contracts", - "hash": "e1f3dac6048d2ca6284ea045f63842a6", + "hash": "", "contents": [ { "namespace": "Volo.Abp.TenantManagement", diff --git a/modules/tenant-management/src/Volo.Abp.TenantManagement.Application/Volo.Abp.TenantManagement.Application.abppkg.analyze.json b/modules/tenant-management/src/Volo.Abp.TenantManagement.Application/Volo.Abp.TenantManagement.Application.abppkg.analyze.json index df4860923c..00ccf9c37a 100644 --- a/modules/tenant-management/src/Volo.Abp.TenantManagement.Application/Volo.Abp.TenantManagement.Application.abppkg.analyze.json +++ b/modules/tenant-management/src/Volo.Abp.TenantManagement.Application/Volo.Abp.TenantManagement.Application.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.TenantManagement.Application", - "hash": "688edf873e866db07c39a080b1d040f4", + "hash": "", "contents": [ { "namespace": "Volo.Abp.TenantManagement", @@ -178,6 +178,7 @@ "methods": [ { "returnType": "TenantDto", + "namespace": "Volo.Abp.TenantManagement", "name": "GetAsync", "summary": null, "isAsync": true, @@ -194,6 +195,7 @@ }, { "returnType": "PagedResultDto", + "namespace": "Volo.Abp.TenantManagement", "name": "GetListAsync", "summary": null, "isAsync": true, @@ -210,6 +212,7 @@ }, { "returnType": "TenantDto", + "namespace": "Volo.Abp.TenantManagement", "name": "CreateAsync", "summary": null, "isAsync": true, @@ -226,6 +229,7 @@ }, { "returnType": "TenantDto", + "namespace": "Volo.Abp.TenantManagement", "name": "UpdateAsync", "summary": null, "isAsync": true, @@ -247,6 +251,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.TenantManagement", "name": "DeleteAsync", "summary": null, "isAsync": true, @@ -263,6 +268,7 @@ }, { "returnType": "String", + "namespace": "Volo.Abp.TenantManagement", "name": "GetDefaultConnectionStringAsync", "summary": null, "isAsync": true, @@ -279,6 +285,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.TenantManagement", "name": "UpdateDefaultConnectionStringAsync", "summary": null, "isAsync": true, @@ -300,6 +307,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.TenantManagement", "name": "DeleteDefaultConnectionStringAsync", "summary": null, "isAsync": true, diff --git a/modules/tenant-management/src/Volo.Abp.TenantManagement.Blazor.Server/Volo.Abp.TenantManagement.Blazor.Server.abppkg.analyze.json b/modules/tenant-management/src/Volo.Abp.TenantManagement.Blazor.Server/Volo.Abp.TenantManagement.Blazor.Server.abppkg.analyze.json index fe0a801b11..f51c1b20fd 100644 --- a/modules/tenant-management/src/Volo.Abp.TenantManagement.Blazor.Server/Volo.Abp.TenantManagement.Blazor.Server.abppkg.analyze.json +++ b/modules/tenant-management/src/Volo.Abp.TenantManagement.Blazor.Server/Volo.Abp.TenantManagement.Blazor.Server.abppkg.analyze.json @@ -1,11 +1,20 @@ { "name": "Volo.Abp.TenantManagement.Blazor.Server", - "hash": "3cee9d89359b00bd39be9e09f6036218", + "hash": "", "contents": [ { "namespace": "Volo.Abp.TenantManagement.Blazor.Server", "dependsOnModules": [ - + { + "declaringAssemblyName": "Volo.Abp.TenantManagement.Blazor", + "namespace": "Volo.Abp.TenantManagement.Blazor", + "name": "AbpTenantManagementBlazorModule" + }, + { + "declaringAssemblyName": "Volo.Abp.FeatureManagement.Blazor.Server", + "namespace": "Volo.Abp.FeatureManagement.Blazor.Server", + "name": "AbpFeatureManagementBlazorServerModule" + } ], "implementingInterfaces": [ { diff --git a/modules/tenant-management/src/Volo.Abp.TenantManagement.Blazor/Volo.Abp.TenantManagement.Blazor.abppkg.analyze.json b/modules/tenant-management/src/Volo.Abp.TenantManagement.Blazor/Volo.Abp.TenantManagement.Blazor.abppkg.analyze.json new file mode 100644 index 0000000000..908261e0c3 --- /dev/null +++ b/modules/tenant-management/src/Volo.Abp.TenantManagement.Blazor/Volo.Abp.TenantManagement.Blazor.abppkg.analyze.json @@ -0,0 +1,79 @@ +{ + "name": "Volo.Abp.TenantManagement.Blazor", + "hash": "", + "contents": [ + { + "namespace": "Volo.Abp.TenantManagement.Blazor", + "dependsOnModules": [ + { + "declaringAssemblyName": "Volo.Abp.AutoMapper", + "namespace": "Volo.Abp.AutoMapper", + "name": "AbpAutoMapperModule" + }, + { + "declaringAssemblyName": "Volo.Abp.TenantManagement.Application.Contracts", + "namespace": "Volo.Abp.TenantManagement", + "name": "AbpTenantManagementApplicationContractsModule" + }, + { + "declaringAssemblyName": "Volo.Abp.FeatureManagement.Blazor", + "namespace": "Volo.Abp.FeatureManagement.Blazor", + "name": "AbpFeatureManagementBlazorModule" + } + ], + "implementingInterfaces": [ + { + "name": "IAbpModule", + "namespace": "Volo.Abp.Modularity", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.Modularity.IAbpModule" + }, + { + "name": "IOnPreApplicationInitialization", + "namespace": "Volo.Abp.Modularity", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.Modularity.IOnPreApplicationInitialization" + }, + { + "name": "IOnApplicationInitialization", + "namespace": "Volo.Abp", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.IOnApplicationInitialization" + }, + { + "name": "IOnPostApplicationInitialization", + "namespace": "Volo.Abp.Modularity", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.Modularity.IOnPostApplicationInitialization" + }, + { + "name": "IOnApplicationShutdown", + "namespace": "Volo.Abp", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.IOnApplicationShutdown" + }, + { + "name": "IPreConfigureServices", + "namespace": "Volo.Abp.Modularity", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.Modularity.IPreConfigureServices" + }, + { + "name": "IPostConfigureServices", + "namespace": "Volo.Abp.Modularity", + "declaringAssemblyName": "Volo.Abp.Core", + "fullName": "Volo.Abp.Modularity.IPostConfigureServices" + } + ], + "contentType": "abpModule", + "name": "AbpTenantManagementBlazorModule", + "summary": null + }, + { + "namespace": "Volo.Abp.TenantManagement.Blazor.Pages.TenantManagement", + "contentType": "webPage", + "name": "TenantManagement", + "summary": null + } + ] +} \ No newline at end of file diff --git a/modules/tenant-management/src/Volo.Abp.TenantManagement.Domain.Shared/Volo.Abp.TenantManagement.Domain.Shared.abppkg.analyze.json b/modules/tenant-management/src/Volo.Abp.TenantManagement.Domain.Shared/Volo.Abp.TenantManagement.Domain.Shared.abppkg.analyze.json index bc7b75e6db..1492d48c29 100644 --- a/modules/tenant-management/src/Volo.Abp.TenantManagement.Domain.Shared/Volo.Abp.TenantManagement.Domain.Shared.abppkg.analyze.json +++ b/modules/tenant-management/src/Volo.Abp.TenantManagement.Domain.Shared/Volo.Abp.TenantManagement.Domain.Shared.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.TenantManagement.Domain.Shared", - "hash": "3f7377330e647dfcc3894752e2f60b77", + "hash": "", "contents": [ { "namespace": "Volo.Abp.TenantManagement", diff --git a/modules/tenant-management/src/Volo.Abp.TenantManagement.Domain/Volo.Abp.TenantManagement.Domain.abppkg.analyze.json b/modules/tenant-management/src/Volo.Abp.TenantManagement.Domain/Volo.Abp.TenantManagement.Domain.abppkg.analyze.json index 08b8c1320d..aeb603a65d 100644 --- a/modules/tenant-management/src/Volo.Abp.TenantManagement.Domain/Volo.Abp.TenantManagement.Domain.abppkg.analyze.json +++ b/modules/tenant-management/src/Volo.Abp.TenantManagement.Domain/Volo.Abp.TenantManagement.Domain.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.TenantManagement.Domain", - "hash": "3cee9d89359b00bd39be9e09f6036218", + "hash": "", "contents": [ { "namespace": "Volo.Abp.TenantManagement", @@ -217,11 +217,18 @@ "namespace": "Volo.Abp", "declaringAssemblyName": "Volo.Abp.Core", "fullName": "Volo.Abp.ISoftDelete" + }, + { + "name": "IHasEntityVersion", + "namespace": "Volo.Abp.Auditing", + "declaringAssemblyName": "Volo.Abp.Auditing.Contracts", + "fullName": "Volo.Abp.Auditing.IHasEntityVersion" } ], "methods": [ { "returnType": "String", + "namespace": "Volo.Abp.TenantManagement", "name": "FindDefaultConnectionString", "summary": null, "isAsync": false, @@ -232,6 +239,7 @@ }, { "returnType": "String", + "namespace": "Volo.Abp.TenantManagement", "name": "FindConnectionString", "summary": null, "isAsync": false, @@ -248,6 +256,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.TenantManagement", "name": "SetDefaultConnectionString", "summary": null, "isAsync": false, @@ -264,6 +273,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.TenantManagement", "name": "SetConnectionString", "summary": null, "isAsync": false, @@ -285,6 +295,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.TenantManagement", "name": "RemoveDefaultConnectionString", "summary": null, "isAsync": false, @@ -295,6 +306,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.TenantManagement", "name": "RemoveConnectionString", "summary": null, "isAsync": false, @@ -327,6 +339,16 @@ "name": "Name", "summary": null }, + { + "type": "System.String", + "name": "NormalizedName", + "summary": null + }, + { + "type": "System.Int32", + "name": "EntityVersion", + "summary": null + }, { "type": "System.Collections.Generic.List`1[Volo.Abp.TenantManagement.TenantConnectionString]", "name": "ConnectionStrings", @@ -348,6 +370,7 @@ "methods": [ { "returnType": "Tenant", + "namespace": "Volo.Abp.TenantManagement", "name": "CreateAsync", "summary": null, "isAsync": true, @@ -364,6 +387,7 @@ }, { "returnType": "Void", + "namespace": "Volo.Abp.TenantManagement", "name": "ChangeNameAsync", "summary": null, "isAsync": true, @@ -453,6 +477,7 @@ "methods": [ { "returnType": "Tenant", + "namespace": "Volo.Abp.TenantManagement", "name": "FindByNameAsync", "summary": null, "isAsync": true, @@ -462,7 +487,7 @@ "parameters": [ { "type": "String", - "name": "name", + "name": "normalizedName", "isOptional": false }, { @@ -479,6 +504,7 @@ }, { "returnType": "Tenant", + "namespace": "Volo.Abp.TenantManagement", "name": "FindByName", "summary": null, "isAsync": false, @@ -488,7 +514,7 @@ "parameters": [ { "type": "String", - "name": "name", + "name": "normalizedName", "isOptional": false }, { @@ -500,6 +526,7 @@ }, { "returnType": "Tenant", + "namespace": "Volo.Abp.TenantManagement", "name": "FindById", "summary": null, "isAsync": false, @@ -521,6 +548,7 @@ }, { "returnType": "List", + "namespace": "Volo.Abp.TenantManagement", "name": "GetListAsync", "summary": null, "isAsync": true, @@ -562,6 +590,7 @@ }, { "returnType": "Int64", + "namespace": "Volo.Abp.TenantManagement", "name": "GetCountAsync", "summary": null, "isAsync": true, diff --git a/modules/tenant-management/src/Volo.Abp.TenantManagement.EntityFrameworkCore/Volo.Abp.TenantManagement.EntityFrameworkCore.abppkg.analyze.json b/modules/tenant-management/src/Volo.Abp.TenantManagement.EntityFrameworkCore/Volo.Abp.TenantManagement.EntityFrameworkCore.abppkg.analyze.json index 45f69efbd7..10ee1c4800 100644 --- a/modules/tenant-management/src/Volo.Abp.TenantManagement.EntityFrameworkCore/Volo.Abp.TenantManagement.EntityFrameworkCore.abppkg.analyze.json +++ b/modules/tenant-management/src/Volo.Abp.TenantManagement.EntityFrameworkCore/Volo.Abp.TenantManagement.EntityFrameworkCore.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.TenantManagement.EntityFrameworkCore", - "hash": "eb61591475ebf7d3ac246f0c25e300ce", + "hash": "", "contents": [ { "namespace": "Volo.Abp.TenantManagement.EntityFrameworkCore", @@ -67,21 +67,27 @@ { "namespace": "Volo.Abp.TenantManagement.EntityFrameworkCore", "connectionStringName": "AbpTenantManagement", - "databaseTables": [ - { - "entityFullName": "Volo.Abp.TenantManagement.Tenant", - "contentType": "databaseTable", - "name": "AbpTenants", - "summary": null - }, + "databaseTables": [], + "replacedDbContexts": [], + "modelBuilderExtensionMethods": [ { - "entityFullName": "Volo.Abp.TenantManagement.TenantConnectionString", - "contentType": "databaseTable", - "name": "AbpTenantConnectionStrings", - "summary": null + "returnType": "Void", + "namespace": "Volo.Abp.TenantManagement.EntityFrameworkCore", + "name": "ConfigureTenantManagement", + "summary": null, + "isAsync": false, + "isPublic": true, + "isPrivate": false, + "isStatic": true, + "parameters": [ + { + "type": "ModelBuilder", + "name": "builder", + "isOptional": false + } + ] } ], - "replacedDbContexts": [], "implementingInterfaces": [ { "name": "IInfrastructure", diff --git a/modules/tenant-management/src/Volo.Abp.TenantManagement.HttpApi.Client/Volo.Abp.TenantManagement.HttpApi.Client.abppkg.analyze.json b/modules/tenant-management/src/Volo.Abp.TenantManagement.HttpApi.Client/Volo.Abp.TenantManagement.HttpApi.Client.abppkg.analyze.json index 99ab6efc48..cecbad39d3 100644 --- a/modules/tenant-management/src/Volo.Abp.TenantManagement.HttpApi.Client/Volo.Abp.TenantManagement.HttpApi.Client.abppkg.analyze.json +++ b/modules/tenant-management/src/Volo.Abp.TenantManagement.HttpApi.Client/Volo.Abp.TenantManagement.HttpApi.Client.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.TenantManagement.HttpApi.Client", - "hash": "480c1662d374db4e0c6a8cb9de911f2b", + "hash": "", "contents": [ { "namespace": "Volo.Abp.TenantManagement", diff --git a/modules/tenant-management/src/Volo.Abp.TenantManagement.HttpApi/Volo.Abp.TenantManagement.HttpApi.abppkg.analyze.json b/modules/tenant-management/src/Volo.Abp.TenantManagement.HttpApi/Volo.Abp.TenantManagement.HttpApi.abppkg.analyze.json index dff20d2597..43cb2a091f 100644 --- a/modules/tenant-management/src/Volo.Abp.TenantManagement.HttpApi/Volo.Abp.TenantManagement.HttpApi.abppkg.analyze.json +++ b/modules/tenant-management/src/Volo.Abp.TenantManagement.HttpApi/Volo.Abp.TenantManagement.HttpApi.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.TenantManagement.HttpApi", - "hash": "ac5f94dc37adf0b83aaf38cb220ee0f1", + "hash": "", "contents": [ { "namespace": "Volo.Abp.TenantManagement", @@ -68,6 +68,137 @@ "contentType": "abpModule", "name": "AbpTenantManagementHttpApiModule", "summary": null + }, + { + "apis": [ + { + "path": "api/multi-tenancy/tenants/{id}", + "method": "GET", + "groupName": "Tenant", + "responseType": "Volo.Abp.TenantManagement.TenantDto", + "responseTypeAsJson": "", + "parameterDescriptions": [ + { + "name": "id", + "type": "Guid" + } + ] + }, + { + "path": "api/multi-tenancy/tenants", + "method": "GET", + "groupName": "Tenant", + "responseType": "Volo.Abp.Application.Dtos.PagedResultDto`1[Volo.Abp.TenantManagement.TenantDto]", + "responseTypeAsJson": "", + "parameterDescriptions": [ + { + "name": "Filter", + "type": "String" + }, + { + "name": "Sorting", + "type": "String" + }, + { + "name": "SkipCount", + "type": "Int32" + }, + { + "name": "MaxResultCount", + "type": "Int32" + } + ] + }, + { + "path": "api/multi-tenancy/tenants", + "method": "POST", + "groupName": "Tenant", + "responseType": "Volo.Abp.TenantManagement.TenantDto", + "responseTypeAsJson": "", + "parameterDescriptions": [ + { + "name": "input", + "type": "TenantCreateDto" + } + ] + }, + { + "path": "api/multi-tenancy/tenants/{id}", + "method": "PUT", + "groupName": "Tenant", + "responseType": "Volo.Abp.TenantManagement.TenantDto", + "responseTypeAsJson": "", + "parameterDescriptions": [ + { + "name": "id", + "type": "Guid" + }, + { + "name": "input", + "type": "TenantUpdateDto" + } + ] + }, + { + "path": "api/multi-tenancy/tenants/{id}", + "method": "DELETE", + "groupName": "Tenant", + "responseType": "System.Void", + "responseTypeAsJson": "", + "parameterDescriptions": [ + { + "name": "id", + "type": "Guid" + } + ] + }, + { + "path": "api/multi-tenancy/tenants/{id}/default-connection-string", + "method": "GET", + "groupName": "Tenant", + "responseType": "System.String", + "responseTypeAsJson": "\"string\"", + "parameterDescriptions": [ + { + "name": "id", + "type": "Guid" + } + ] + }, + { + "path": "api/multi-tenancy/tenants/{id}/default-connection-string", + "method": "PUT", + "groupName": "Tenant", + "responseType": "System.Void", + "responseTypeAsJson": "", + "parameterDescriptions": [ + { + "name": "id", + "type": "Guid" + }, + { + "name": "defaultConnectionString", + "type": "String" + } + ] + }, + { + "path": "api/multi-tenancy/tenants/{id}/default-connection-string", + "method": "DELETE", + "groupName": "Tenant", + "responseType": "System.Void", + "responseTypeAsJson": "", + "parameterDescriptions": [ + { + "name": "id", + "type": "Guid" + } + ] + } + ], + "contentType": "httpApi", + "name": "Defined Http Apis", + "summary": null } ] } \ No newline at end of file diff --git a/modules/tenant-management/src/Volo.Abp.TenantManagement.MongoDB/Volo.Abp.TenantManagement.MongoDB.abppkg.analyze.json b/modules/tenant-management/src/Volo.Abp.TenantManagement.MongoDB/Volo.Abp.TenantManagement.MongoDB.abppkg.analyze.json index c64187c410..8568728f30 100644 --- a/modules/tenant-management/src/Volo.Abp.TenantManagement.MongoDB/Volo.Abp.TenantManagement.MongoDB.abppkg.analyze.json +++ b/modules/tenant-management/src/Volo.Abp.TenantManagement.MongoDB/Volo.Abp.TenantManagement.MongoDB.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.TenantManagement.MongoDB", - "hash": "c1aa3fe8ddd85fb93f1c2d76eddb273a", + "hash": "", "contents": [ { "namespace": "Volo.Abp.TenantManagement.MongoDB", @@ -71,7 +71,7 @@ { "entityFullName": "Volo.Abp.TenantManagement.Tenant", "contentType": "databaseCollection", - "name": "AbpTenants", + "name": "Tenants", "summary": null } ], diff --git a/modules/tenant-management/src/Volo.Abp.TenantManagement.Web/Volo.Abp.TenantManagement.Web.abppkg.analyze.json b/modules/tenant-management/src/Volo.Abp.TenantManagement.Web/Volo.Abp.TenantManagement.Web.abppkg.analyze.json index 533ac19881..d605081e6d 100644 --- a/modules/tenant-management/src/Volo.Abp.TenantManagement.Web/Volo.Abp.TenantManagement.Web.abppkg.analyze.json +++ b/modules/tenant-management/src/Volo.Abp.TenantManagement.Web/Volo.Abp.TenantManagement.Web.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.TenantManagement.Web", - "hash": "2870a361082a3b19907bdf95db3a74a8", + "hash": "", "contents": [ { "namespace": "Volo.Abp.TenantManagement.Web", @@ -73,6 +73,24 @@ "contentType": "abpModule", "name": "AbpTenantManagementWebModule", "summary": null + }, + { + "namespace": "Volo.Abp.TenantManagement.Web.Pages.TenantManagement.Tenants", + "contentType": "webPage", + "name": "CreateModalModel", + "summary": null + }, + { + "namespace": "Volo.Abp.TenantManagement.Web.Pages.TenantManagement.Tenants", + "contentType": "webPage", + "name": "EditModalModel", + "summary": null + }, + { + "namespace": "Volo.Abp.TenantManagement.Web.Pages.TenantManagement.Tenants", + "contentType": "webPage", + "name": "IndexModel", + "summary": null } ] } \ No newline at end of file diff --git a/modules/users/src/Volo.Abp.Users.Domain.Shared/Volo.Abp.Users.Domain.Shared.abppkg.analyze.json b/modules/users/src/Volo.Abp.Users.Domain.Shared/Volo.Abp.Users.Domain.Shared.abppkg.analyze.json index c01961d614..f001d30c53 100644 --- a/modules/users/src/Volo.Abp.Users.Domain.Shared/Volo.Abp.Users.Domain.Shared.abppkg.analyze.json +++ b/modules/users/src/Volo.Abp.Users.Domain.Shared/Volo.Abp.Users.Domain.Shared.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.Users.Domain.Shared", - "hash": "f13b103d9a1de0a275ce797073c6311a", + "hash": "", "contents": [ { "namespace": "Volo.Abp.Users", diff --git a/modules/users/src/Volo.Abp.Users.Domain/Volo.Abp.Users.Domain.abppkg.analyze.json b/modules/users/src/Volo.Abp.Users.Domain/Volo.Abp.Users.Domain.abppkg.analyze.json index 9f37a4213d..d836422562 100644 --- a/modules/users/src/Volo.Abp.Users.Domain/Volo.Abp.Users.Domain.abppkg.analyze.json +++ b/modules/users/src/Volo.Abp.Users.Domain/Volo.Abp.Users.Domain.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.Users.Domain", - "hash": "72e2b3b29257e18485fa49e93d4cfa67", + "hash": "", "contents": [ { "namespace": "Volo.Abp.Users", diff --git a/modules/users/src/Volo.Abp.Users.EntityFrameworkCore/Volo.Abp.Users.EntityFrameworkCore.abppkg.analyze.json b/modules/users/src/Volo.Abp.Users.EntityFrameworkCore/Volo.Abp.Users.EntityFrameworkCore.abppkg.analyze.json index bfd574aa77..d6daa7b3e7 100644 --- a/modules/users/src/Volo.Abp.Users.EntityFrameworkCore/Volo.Abp.Users.EntityFrameworkCore.abppkg.analyze.json +++ b/modules/users/src/Volo.Abp.Users.EntityFrameworkCore/Volo.Abp.Users.EntityFrameworkCore.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.Users.EntityFrameworkCore", - "hash": "65424b5b14baadc11902735eda05d600", + "hash": "", "contents": [ { "namespace": "Volo.Abp.Users.EntityFrameworkCore", diff --git a/modules/users/src/Volo.Abp.Users.MongoDB/Volo.Abp.Users.MongoDB.abppkg.analyze.json b/modules/users/src/Volo.Abp.Users.MongoDB/Volo.Abp.Users.MongoDB.abppkg.analyze.json index 0eb90d3bbc..79dd021405 100644 --- a/modules/users/src/Volo.Abp.Users.MongoDB/Volo.Abp.Users.MongoDB.abppkg.analyze.json +++ b/modules/users/src/Volo.Abp.Users.MongoDB/Volo.Abp.Users.MongoDB.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.Users.MongoDB", - "hash": "9c292e59ebd9d93e0caa335c86132208", + "hash": "", "contents": [ { "namespace": "Volo.Abp.Users.MongoDB", diff --git a/modules/virtual-file-explorer/app/Volo.Abp.VirtualFileExplorer.DemoApp/package.json b/modules/virtual-file-explorer/app/Volo.Abp.VirtualFileExplorer.DemoApp/package.json index 7056b0209c..ae774ccd5b 100644 --- a/modules/virtual-file-explorer/app/Volo.Abp.VirtualFileExplorer.DemoApp/package.json +++ b/modules/virtual-file-explorer/app/Volo.Abp.VirtualFileExplorer.DemoApp/package.json @@ -3,7 +3,7 @@ "version": "1.0.0", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "~8.2.2", - "@abp/virtual-file-explorer": "~8.2.2" + "@abp/aspnetcore.mvc.ui.theme.basic": "~8.2.3", + "@abp/virtual-file-explorer": "~8.2.3" } } diff --git a/modules/virtual-file-explorer/app/Volo.Abp.VirtualFileExplorer.DemoApp/yarn.lock b/modules/virtual-file-explorer/app/Volo.Abp.VirtualFileExplorer.DemoApp/yarn.lock index 1d3e7be780..f25b94a69b 100644 --- a/modules/virtual-file-explorer/app/Volo.Abp.VirtualFileExplorer.DemoApp/yarn.lock +++ b/modules/virtual-file-explorer/app/Volo.Abp.VirtualFileExplorer.DemoApp/yarn.lock @@ -2,221 +2,221 @@ # yarn lockfile v1 -"@abp/aspnetcore.mvc.ui.theme.basic@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-8.2.2.tgz#0b18f3eee58b4a115e861a3732514a02d613d301" - integrity sha512-fFytBe1n+DxK7rVPnO8zqZWixBTDfdSrFUyg+qgpe+/Q10ec7x9j5noB+aiF73OZelJ9LGKz2gl+MS66Erpy2A== - dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~8.2.2" - -"@abp/aspnetcore.mvc.ui.theme.shared@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-8.2.2.tgz#419da4bac71ceb7b1afbd8b740b0675f51de6575" - integrity sha512-tYPbEqoENmxzN9zaBAF8/ssNk8uuVTkKpi663612H1b85ik3Tbm4H3gamKbSR1TxMwIJZxVyizxDMDhLu6ff3w== - dependencies: - "@abp/aspnetcore.mvc.ui" "~8.2.2" - "@abp/bootstrap" "~8.2.2" - "@abp/bootstrap-datepicker" "~8.2.2" - "@abp/bootstrap-daterangepicker" "~8.2.2" - "@abp/datatables.net-bs5" "~8.2.2" - "@abp/font-awesome" "~8.2.2" - "@abp/jquery-form" "~8.2.2" - "@abp/jquery-validation-unobtrusive" "~8.2.2" - "@abp/lodash" "~8.2.2" - "@abp/luxon" "~8.2.2" - "@abp/malihu-custom-scrollbar-plugin" "~8.2.2" - "@abp/moment" "~8.2.2" - "@abp/select2" "~8.2.2" - "@abp/sweetalert2" "~8.2.2" - "@abp/timeago" "~8.2.2" - "@abp/toastr" "~8.2.2" - -"@abp/aspnetcore.mvc.ui@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-8.2.2.tgz#53de1c58c14a98f15f408c9a404e5052cc28c966" - integrity sha512-XjduoVC/2nrlo7R77cTgvDQGZK0fqATx1VaHPHbQJLKvjZXS7rIU6Q0Eye+XcnGnw4udcq3luAorqI96JFkBiQ== +"@abp/aspnetcore.mvc.ui.theme.basic@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-8.2.3.tgz#4456eef32942a1064543f46b9b22fdd941ec209d" + integrity sha512-CmJ7Jp5guO/lCXb9IjrhZ0jpnlbL0d3k/7w6gp/jGhFZ5w7gTgI+ZOtr4jzQnQRWF+ZwaVhsgtfBG9PdNl63QA== + dependencies: + "@abp/aspnetcore.mvc.ui.theme.shared" "~8.2.3" + +"@abp/aspnetcore.mvc.ui.theme.shared@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-8.2.3.tgz#b1a795a947cf710730ddeec4684e706cd0d8b853" + integrity sha512-UDRzWXFUL1kHlrhzgjXwo+UxFwkthyQj2agk889mdt4doZ4NGbHKmgdHNrtt1PIOM8VOcQNubBx5VePffuMcYA== + dependencies: + "@abp/aspnetcore.mvc.ui" "~8.2.3" + "@abp/bootstrap" "~8.2.3" + "@abp/bootstrap-datepicker" "~8.2.3" + "@abp/bootstrap-daterangepicker" "~8.2.3" + "@abp/datatables.net-bs5" "~8.2.3" + "@abp/font-awesome" "~8.2.3" + "@abp/jquery-form" "~8.2.3" + "@abp/jquery-validation-unobtrusive" "~8.2.3" + "@abp/lodash" "~8.2.3" + "@abp/luxon" "~8.2.3" + "@abp/malihu-custom-scrollbar-plugin" "~8.2.3" + "@abp/moment" "~8.2.3" + "@abp/select2" "~8.2.3" + "@abp/sweetalert2" "~8.2.3" + "@abp/timeago" "~8.2.3" + "@abp/toastr" "~8.2.3" + +"@abp/aspnetcore.mvc.ui@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-8.2.3.tgz#02e20c42b198bf6bb13e313b4a4b435f17dc9ddd" + integrity sha512-414cAonBhJDZmlEat4gY1Qaf1npgJjYj/re9O0Rk/FdW2vO8Qt56LozGIsbvVY4RjMsQwpwkkgH4RWlIKm3q8w== dependencies: ansi-colors "^4.1.1" -"@abp/bootstrap-datepicker@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-8.2.2.tgz#a14ff40f5bc29e9ad50ea68391f1238ab86f4d1b" - integrity sha512-nqDfEkbFj20ULJap5tsEThmzIUssfIhV8sqBitd9xKnCmoGpbywp/SZgB2hHNEqb3zIJaewNS9P11PoxqRpdBA== +"@abp/bootstrap-datepicker@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-8.2.3.tgz#ceec259251a692d25daae9263b54a3142b007f23" + integrity sha512-o3uZtuw/NKJTCKf5tK5U7Qii+9PgJGWIjLkqb7mXGftIMdqOaJ+QHZe+J9XaO4of8l2HtGkXp+fuQGVJBTlFAg== dependencies: bootstrap-datepicker "^1.9.0" -"@abp/bootstrap-daterangepicker@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-8.2.2.tgz#bff1cf71bce370ae0e4f3c04b9eee4221604959b" - integrity sha512-M0RbUHN52R7ZAyudhlQ6zWAbMmZ88FVR9EPP2dovfKLKfOUGWQiww2QA3a5gvwo/FBObC95XYfpVg72IQgr5ww== +"@abp/bootstrap-daterangepicker@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-8.2.3.tgz#b33117eb5dfcdbea9cb5212acfecd4e040ce7c2d" + integrity sha512-UR1TXFStbvD54wb6vEVK3FVHYtgugLBdDg4Xyh+aNe2sUTm+kfXh4+1Xm+3R1SV3cWvRT57Sy1bc306c6CQ7Zg== dependencies: bootstrap-daterangepicker "^3.1.0" -"@abp/bootstrap@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-8.2.2.tgz#78db0e4f54dd4b09462d386df83e451506717af6" - integrity sha512-A6hdNB2+Uokm5CniB6+qxR7Q2dyRwMLv2ct0v6PxOT1M+/Z2+oCzFDHLYKnmbcx5pg+1MmvnNC+clQZELDxjyw== +"@abp/bootstrap@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-8.2.3.tgz#462c4a5712d6d0baee345dc318fc5463527cbc21" + integrity sha512-jThgI5nlP5A/cKLUoNgRA5ldHz5xNoGkD+V0Z/gScbeAE8Q8eu7Q5P82PLF8B8cgKjOqJXb2L5kbdNYFdqIOwg== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" bootstrap "^5.1.3" -"@abp/clipboard@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-8.2.2.tgz#cb9a7bc2d08b8fb762c24cbd53f86a6aa5c8197a" - integrity sha512-D9azkwO9ZAwKsqdYRkzz0JOukfMdhUOpI382VxmfLTHgTgrby6xTae8SGIrXthgemEny3RlqYAX2R7EVfN3upg== +"@abp/clipboard@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-8.2.3.tgz#9e0c0b750114ddaca0beba1051dd7fc1fe77f543" + integrity sha512-RS1pVeeN1/5LlDNBBRDFUqR+xpfWteCZfIByh8xAbec1xuxHmxxxvb3kv1Wp7n4c1ec3V0yLRyvaj0SfYmnWNA== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" clipboard "^2.0.8" -"@abp/core@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-8.2.2.tgz#b4905fa539272bee26f5f95ceb2224b48cfac8ab" - integrity sha512-YKbT92+T9Zs0IvvIPJrMcBUjwR5u6U6f1KegRcRR79b43ZckIrQbqftjyFLF7YSPuJlVCHoO0YhU2Q1EagiFDg== +"@abp/core@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-8.2.3.tgz#1474f8e24cc8707bd909e1cd49230cdaa54c447e" + integrity sha512-mluL7NHWRxvjwHHGd3kOWQg0Tnmt4o2ih/KfdDJl7z4lpy386yL+UutkE3NNhgbEGWDt1hnS5rKFZabhaahwWg== dependencies: - "@abp/utils" "~8.2.2" + "@abp/utils" "~8.2.3" -"@abp/datatables.net-bs5@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-8.2.2.tgz#c314a615cf98cf0fdb6a97ffea3a42d0b050ccd5" - integrity sha512-dkb0wHdZ93mLSwmHbJ3hMKBm0ZFA9jpLxxWf7u+c7sBU+McACRdFHyl0x6dtinspDgo5GaPHGqmbsVx5S7eM2w== +"@abp/datatables.net-bs5@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-8.2.3.tgz#8e80767d7677ebf69a56248039ef5604499bbc30" + integrity sha512-XTjo15yM/nJiFfRtTMnfOJNh6FX+Vmmf5Kq5aG5XjUcp1IepEAgiNNOSmh+zRhUt4BDZ4RWcfSSGNbh0icUIOg== dependencies: - "@abp/datatables.net" "~8.2.2" + "@abp/datatables.net" "~8.2.3" datatables.net-bs5 "^1.11.4" -"@abp/datatables.net@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-8.2.2.tgz#1627836a2ee7efe1d470bdc32ec437ed86996fc8" - integrity sha512-hPAyx90kI4s+LlUsN6GfLWFEGe9JXExgqSzFUwkOqi+WS+kGWvPElUXfS06VaKiu/h/H9SVl+X+iajd3L9Zr9g== +"@abp/datatables.net@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-8.2.3.tgz#e38567679720546d42b895d9a464728ea3730292" + integrity sha512-CT18SqBuY25UmjNbiSbI9eqvbPNZZm+yYsZoasSUv3JOpO1oPfclgtZV5FKeBQQvM5Vc0BhRs7KMKF2F0pwszA== dependencies: - "@abp/jquery" "~8.2.2" + "@abp/jquery" "~8.2.3" datatables.net "^1.11.4" -"@abp/font-awesome@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-8.2.2.tgz#924ce3b78a902ef844901d824d8eb616cbc32ba8" - integrity sha512-yCn94hjowg42hTvyf3xJu7kOCMWfh5Qw4D8PbiaF3WwP1kbpC2QCeZ/Rh9Oltsml34rkhMKPTzLzZqki25Q5QQ== +"@abp/font-awesome@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-8.2.3.tgz#92d7645c94cda07becb8e2ea23e7769ec55c43b1" + integrity sha512-OLQRBuPHtPyM5IHhIJwsbkE8idmu/DDAIm92kOa97p0r0Hx7epnKx+Yrwz23FuRH2wYlmYJqDmwj1VTK90gxYA== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" "@fortawesome/fontawesome-free" "^6.5.1" -"@abp/jquery-form@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-8.2.2.tgz#aad534f5b4f4346ac97249040af663e70ecbd03e" - integrity sha512-QueETCaVq6g8b7c0jIepbKZKS2SO/aCZJy/uRc/lPumr2Hs96aZvHQGIAZopCQKPfF9mLp+Sc2QEN/zdt8QiNA== +"@abp/jquery-form@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-8.2.3.tgz#a8c593e6afbbcff5250657f052fc9912cdf352ac" + integrity sha512-AhkNUdyXE/q7hsra+1xj8W/g7lkIgR9YXrr0RgddPW+dqYqVvbYdFcPliHaSsl+kzPHSRx7eez8AjQSZlReIjg== dependencies: - "@abp/jquery" "~8.2.2" + "@abp/jquery" "~8.2.3" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-8.2.2.tgz#7396dd6a62cdf0796d967b167da5cc91974a9c5e" - integrity sha512-dH0ax7Lxaf+MeZC0z80IPHyXocuA26lzHtwFx/g4NIxxV1gKL8/wI+rAX1ulloSdqEA8kN6rlgOZMqiG2kNWcw== +"@abp/jquery-validation-unobtrusive@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-8.2.3.tgz#d21cbc1694b68f6377134e4e535d19e2cda0fb8d" + integrity sha512-2Ilrveqsj5jorZ2N75zLlHO8+NGRmLecRWIDZZmuyCXVF/LyyceaNBhkdiV+Ofcts387TVkQkjkoArV10Uu+Jg== dependencies: - "@abp/jquery-validation" "~8.2.2" + "@abp/jquery-validation" "~8.2.3" jquery-validation-unobtrusive "^3.2.12" -"@abp/jquery-validation@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-8.2.2.tgz#25ac2fb35aa8f60ba82116ef429996e7ae8518bb" - integrity sha512-WbvobzuEKmnFdCK2Bic7YNhbuauN1mIzgrnd8Ap0nLAxpwsVYkUBwKHoi7jyYv+Udvl39VjYFeciul9rZYI2pg== +"@abp/jquery-validation@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-8.2.3.tgz#642b7f56c1da5469443f864f04eb09cb0bf75bb4" + integrity sha512-qbML5oyoq9ltq212qD8C7jVOqNwTdvyRzTu3SsN15AXecapZxO/BPjhCgLb99OK4zT7hZaC8R+H0CDBa3O5pvg== dependencies: - "@abp/jquery" "~8.2.2" + "@abp/jquery" "~8.2.3" jquery-validation "^1.19.3" -"@abp/jquery@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-8.2.2.tgz#2496431ed11c5e2410e0efaa34404ac760a064ff" - integrity sha512-2ItXN6O45NIpSK/D8wUu+xVnrkxhc79Pce/yYMzFzI7QGYaKvpaP+tVWQQmKEa7RCNCyPS57AxuDtNqI4LSqDQ== +"@abp/jquery@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-8.2.3.tgz#e73d1df860276ae2a081c6f945f586720a71781d" + integrity sha512-SDOnVUJo0g3tuA40Z2Nme8yI1nTCwp0Mh2aAf3L3W+F8lzV3OQS8mUmpektxhPsFen0DufSvilOC+aI6/Jx5lQ== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" jquery "~3.6.0" -"@abp/lodash@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-8.2.2.tgz#a12ed0018f831c0f763da5c6a09d07494acf01ed" - integrity sha512-X+Y3CBMjNgeK/Y47MPMF4sH8PRF0TP+YpjvZ9lbGVSxiQPsNdrYKseZ1gp+AnDBHvj+Oxb7s/aRVZ1pbDJpXiQ== +"@abp/lodash@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-8.2.3.tgz#e78ef9e681369af51b6c36a0a450884c4ee5677a" + integrity sha512-47YoHS0CrH+PiQ8eF/ASYodGH+foBRBJVkDmRgZ1vegs10CJukBYgAutPlNMC2onlEF1jLYJ40ZKsHd6TrFQkA== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" lodash "^4.17.21" -"@abp/luxon@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-8.2.2.tgz#76026e1ae79601cc322cda458ac1f2b2cb76190a" - integrity sha512-I08NgiUJwCfNvwOZNYjwB/+2bUwulU3urqKIIB9Mg6PGK2hohsE8k2CMEijA+T25YYO32xgXevOfOq5YU2NCTw== +"@abp/luxon@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-8.2.3.tgz#445d763360b29a7591ab31898ce522e61be9d97e" + integrity sha512-pT+oO4znadhSleuH3x6n1nEgOzfVl0aHurt4F+wnJHyP7SdC2+RjZOYJUkuRIaZzflG4699Qq0UgAW6GfpuUgg== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" luxon "^2.3.0" -"@abp/malihu-custom-scrollbar-plugin@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-8.2.2.tgz#53405af2869fde990962914f24228a9fa65bab2f" - integrity sha512-/6g+Qm/5CbCzVgohEH8C72smIN4Lw/uL/KJbP7uEBVAXfKqY6vGA2VhrKNvIiBPfktIzZCHrcKsHwysMPtOS2Q== +"@abp/malihu-custom-scrollbar-plugin@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-8.2.3.tgz#7018c4ab65b78512bf5ea8f542fb0c7119a39e0b" + integrity sha512-CCc0iOaulmssuUL7RsAApRzYD+SXAPbqz5iod6yuyx3Y5Vaz4ik+2/cG7XZgwcgsmctJYZl3IxZ/ijnZXLgHUw== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/moment@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-8.2.2.tgz#1895904212fde6dc1793611940a9f8ec95b2c45f" - integrity sha512-VhhCOzVpapvFOn1gzQIcXB/RMyRKcZOlVLGLTqosg14woPSFm0+0utLHkPOLihWbUSQqDRYKvC2cPbNC6CknKg== +"@abp/moment@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-8.2.3.tgz#126039218e6068eca4279eae1eb5375207780931" + integrity sha512-nV11P1KqX8xPmb/bs3yYbFPz7ZOXWnZPKd4Z2k0JYaFTS2C07twgS0uQQHwW6iP8DrS1QBBAyLYBuM3ctgB0dg== dependencies: moment "^2.9.0" -"@abp/prismjs@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-8.2.2.tgz#1910701fbe28d87d1312f16e865778f0e8b19670" - integrity sha512-5KaPPTcLc5/F4MB375orQe5W04bPcE8D/OTGllsj2RViGnmmkVj7Wzkwm6R63qWJtBrYuf9sh2c6eUACNkR2/A== +"@abp/prismjs@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-8.2.3.tgz#8927f1660815f4e3de11085ea5f3a73b127a858a" + integrity sha512-JJ/wlLlWShGYj0FMFjxriCIA4v1Fe+oHTgo1Kt9JpYkYG+Zq+rHsj1tvNthh2GU7Y69Kt2w1r1LpEDKZZHu58A== dependencies: - "@abp/clipboard" "~8.2.2" - "@abp/core" "~8.2.2" + "@abp/clipboard" "~8.2.3" + "@abp/core" "~8.2.3" prismjs "^1.26.0" -"@abp/select2@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-8.2.2.tgz#0dc011b838824598dc0a716e55b597aca62712dc" - integrity sha512-zTgtOl2iWihbGja3l8IIi+PqepYNk6O7fUcf6C9cdnBM4IrZSnJqw3sQDr9DqIoEzgdC6izVQzPJJEAi5CZ8Xg== +"@abp/select2@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-8.2.3.tgz#fc92d19ba22cbef5df9b8b2f85b4d21d3139883f" + integrity sha512-/MEJkSuM5+N5OIBLbrQUARUV++NpH9pVq4+btYhghDQDtHYrMHKU41QsginTFKfqBZ4f+OYV/HPnOuj7DJxOBw== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" select2 "^4.0.13" -"@abp/sweetalert2@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-8.2.2.tgz#1c75ec9ef1df2eec6304368667052d8ff9c9e795" - integrity sha512-yNgVxJ6E/cEtc8DYn00BtF9XFLShlZRsAnsipiP74YDvQKWUQSnwi70QoHEYDk2tJ+RsXqtZudvrKv8TyH/ijQ== +"@abp/sweetalert2@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-8.2.3.tgz#a82d674e262e9db89bc219ac350cae8ef17d7669" + integrity sha512-ap8vOgkKbmhAmDfVmEJPyVbIzA3V3mi9SvP/OLaNYEaMG0AppYf3iiSvC+6TA+qAFQuF5fI1oKUcsiE68uQGjw== dependencies: - "@abp/core" "~8.2.2" + "@abp/core" "~8.2.3" sweetalert2 "^11.3.6" -"@abp/timeago@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-8.2.2.tgz#8af9558d325b2f2f9d9c5b1f90ac9eaf5531429b" - integrity sha512-ILdMeCTDNvmVOSm8Xc9ppL1xI1NoDzLbUCUojI7mvEFCE8sw3QGiFGhW6W7kYcoD7sRkxFl1Jn5V/urpAiQwaQ== +"@abp/timeago@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-8.2.3.tgz#dede68da0b5e252a573b0a1c5a9e4c831bc3c820" + integrity sha512-AbYf35a5M4QMAFK3aV6JE7QHR3GzpOX1zsun39i+97ZrNZf6do/eIgDx6dolTlSb0AsHf8qCrf7T6o1kIaXQ2w== dependencies: - "@abp/jquery" "~8.2.2" + "@abp/jquery" "~8.2.3" timeago "^1.6.7" -"@abp/toastr@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-8.2.2.tgz#a59d5b29e43698dbb614792bfd51185453859a7f" - integrity sha512-I4iiXV/SSXiD4UGM5oVsg6m6p4XmuxvqWmjOLSyoUfJQMC378mzNX0Ec9hYIY42C+GS2NalKtoaaYzBfcEtwoQ== +"@abp/toastr@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-8.2.3.tgz#77767666d578c05f039e84178c428370f6f10802" + integrity sha512-V1H0Efik/kGsRuTNPl//FsoH/8VU58S1K4GQ9k2V1bi8INaC/kU//I9frwOJsXd55imvsbmzh4XzrJ574eU84w== dependencies: - "@abp/jquery" "~8.2.2" + "@abp/jquery" "~8.2.3" toastr "^2.1.4" -"@abp/utils@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-8.2.2.tgz#84035d36e968c8ecdeee3c7617aa45bfeb3f6afd" - integrity sha512-70hmgTd7N63AnanzZYUWpobckhPzplBjlRmMhIi+9WZLQfxWpM/EN6l+qQndjAMMvgFl/vW03BUJh1fL9kGynA== +"@abp/utils@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-8.2.3.tgz#05e3d419ee9a6228f7ed4f86e8fd03f3ce57ed27" + integrity sha512-WMs/okBxGitkGRdsikByyJLFXRSD/DPfBWZdDhU4+TvcQmnTqog9S75kZ8CUpUe/wwDHYsY51ef6N6jOfkGTFQ== dependencies: just-compare "^2.3.0" -"@abp/virtual-file-explorer@~8.2.2": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@abp/virtual-file-explorer/-/virtual-file-explorer-8.2.2.tgz#260a47986a3dc552ab8b205fab9dbb2f9f282dbc" - integrity sha512-C3HW+FPjCSUx5x0gdTl9w4neBtU5hVJQ/flhiOwLkdDpCir+l6gNurcCuVResmsla7ZNjovtDVY1q4EyDpVNjg== +"@abp/virtual-file-explorer@~8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@abp/virtual-file-explorer/-/virtual-file-explorer-8.2.3.tgz#0d4ba9c028f26784a3b4ecd72c9a5f1b3f15d9f4" + integrity sha512-kIfsGhfifWRNCzi+8wfYVCTEyR6YNfi3lGmA2pVIveZkbqcXR6UbN90DaHZdadmz0gvf7QVUBdOkR5pEDGS6dg== dependencies: - "@abp/clipboard" "~8.2.2" - "@abp/prismjs" "~8.2.2" + "@abp/clipboard" "~8.2.3" + "@abp/prismjs" "~8.2.3" "@fortawesome/fontawesome-free@^6.5.1": version "6.5.1" diff --git a/modules/virtual-file-explorer/src/Volo.Abp.VirtualFileExplorer.Web/Volo.Abp.VirtualFileExplorer.Web.abppkg.analyze.json b/modules/virtual-file-explorer/src/Volo.Abp.VirtualFileExplorer.Web/Volo.Abp.VirtualFileExplorer.Web.abppkg.analyze.json index b5f54bbc17..8665e359e5 100644 --- a/modules/virtual-file-explorer/src/Volo.Abp.VirtualFileExplorer.Web/Volo.Abp.VirtualFileExplorer.Web.abppkg.analyze.json +++ b/modules/virtual-file-explorer/src/Volo.Abp.VirtualFileExplorer.Web/Volo.Abp.VirtualFileExplorer.Web.abppkg.analyze.json @@ -1,6 +1,6 @@ { "name": "Volo.Abp.VirtualFileExplorer.Web", - "hash": "f1492ce429d5cb7008824a7ebb1fb435", + "hash": "", "contents": [ { "namespace": "Volo.Abp.VirtualFileExplorer.Web", @@ -63,6 +63,12 @@ "contentType": "abpModule", "name": "AbpVirtualFileExplorerWebModule", "summary": null + }, + { + "namespace": "Volo.Abp.VirtualFileExplorer.Web.Pages.VirtualFileExplorer", + "contentType": "webPage", + "name": "IndexModel", + "summary": null } ] } \ No newline at end of file diff --git a/npm/lerna.json b/npm/lerna.json index a79de09357..1dabf8956f 100644 --- a/npm/lerna.json +++ b/npm/lerna.json @@ -1,5 +1,5 @@ { - "version": "8.2.2", + "version": "8.2.3", "packages": [ "packs/*" ], diff --git a/npm/ng-packs/package.json b/npm/ng-packs/package.json index d33d785a88..37e0d2028f 100644 --- a/npm/ng-packs/package.json +++ b/npm/ng-packs/package.json @@ -44,8 +44,8 @@ }, "private": true, "devDependencies": { - "@abp/ng.theme.lepton-x": "~3.2.2", - "@abp/utils": "~8.2.2", + "@abp/ng.theme.lepton-x": "~3.2.3", + "@abp/utils": "~8.2.3", "@angular-devkit/build-angular": "~17.3.0", "@angular-devkit/core": "~17.3.0", "@angular-devkit/schematics": "~17.3.0", diff --git a/npm/ng-packs/packages/account-core/package.json b/npm/ng-packs/packages/account-core/package.json index 860a017e5a..a94620b1d4 100644 --- a/npm/ng-packs/packages/account-core/package.json +++ b/npm/ng-packs/packages/account-core/package.json @@ -1,14 +1,14 @@ { "name": "@abp/ng.account.core", - "version": "8.2.2", + "version": "8.2.3", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "dependencies": { - "@abp/ng.core": "~8.2.2", - "@abp/ng.theme.shared": "~8.2.2", + "@abp/ng.core": "~8.2.3", + "@abp/ng.theme.shared": "~8.2.3", "tslib": "^2.0.0" }, "publishConfig": { diff --git a/npm/ng-packs/packages/account/package.json b/npm/ng-packs/packages/account/package.json index 93e91f9c17..acd85b33d0 100644 --- a/npm/ng-packs/packages/account/package.json +++ b/npm/ng-packs/packages/account/package.json @@ -1,14 +1,14 @@ { "name": "@abp/ng.account", - "version": "8.2.2", + "version": "8.2.3", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "dependencies": { - "@abp/ng.account.core": "~8.2.2", - "@abp/ng.theme.shared": "~8.2.2", + "@abp/ng.account.core": "~8.2.3", + "@abp/ng.theme.shared": "~8.2.3", "tslib": "^2.0.0" }, "publishConfig": { diff --git a/npm/ng-packs/packages/components/package.json b/npm/ng-packs/packages/components/package.json index da49a58203..1dc467b3dc 100644 --- a/npm/ng-packs/packages/components/package.json +++ b/npm/ng-packs/packages/components/package.json @@ -1,14 +1,14 @@ { "name": "@abp/ng.components", - "version": "8.2.2", + "version": "8.2.3", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "peerDependencies": { - "@abp/ng.core": ">=8.2.2", - "@abp/ng.theme.shared": ">=8.2.2" + "@abp/ng.core": ">=8.2.3", + "@abp/ng.theme.shared": ">=8.2.3" }, "dependencies": { "chart.js": "^3.5.1", diff --git a/npm/ng-packs/packages/core/package.json b/npm/ng-packs/packages/core/package.json index 35772329b1..eb9b3c08ff 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": "8.2.2", + "version": "8.2.3", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "dependencies": { - "@abp/utils": "~8.2.2", + "@abp/utils": "~8.2.3", "just-clone": "^6.0.0", "just-compare": "^2.0.0", "ts-toolbelt": "6.15.4", diff --git a/npm/ng-packs/packages/feature-management/package.json b/npm/ng-packs/packages/feature-management/package.json index a49632f3a7..160f3a9ce7 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": "8.2.2", + "version": "8.2.3", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "dependencies": { - "@abp/ng.theme.shared": "~8.2.2", + "@abp/ng.theme.shared": "~8.2.3", "tslib": "^2.0.0" }, "publishConfig": { diff --git a/npm/ng-packs/packages/generators/package.json b/npm/ng-packs/packages/generators/package.json index 5a276d8b38..f8f2f16ede 100644 --- a/npm/ng-packs/packages/generators/package.json +++ b/npm/ng-packs/packages/generators/package.json @@ -1,6 +1,6 @@ { "name": "@abp/nx.generators", - "version": "8.2.2", + "version": "8.2.3", "homepage": "https://abp.io", "generators": "./generators.json", "type": "commonjs", diff --git a/npm/ng-packs/packages/identity/package.json b/npm/ng-packs/packages/identity/package.json index 29920b93eb..9878adebe0 100644 --- a/npm/ng-packs/packages/identity/package.json +++ b/npm/ng-packs/packages/identity/package.json @@ -1,15 +1,15 @@ { "name": "@abp/ng.identity", - "version": "8.2.2", + "version": "8.2.3", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "dependencies": { - "@abp/ng.components": "~8.2.2", - "@abp/ng.permission-management": "~8.2.2", - "@abp/ng.theme.shared": "~8.2.2", + "@abp/ng.components": "~8.2.3", + "@abp/ng.permission-management": "~8.2.3", + "@abp/ng.theme.shared": "~8.2.3", "tslib": "^2.0.0" }, "publishConfig": { diff --git a/npm/ng-packs/packages/oauth/package.json b/npm/ng-packs/packages/oauth/package.json index 531bb8524f..39d8f5b3f5 100644 --- a/npm/ng-packs/packages/oauth/package.json +++ b/npm/ng-packs/packages/oauth/package.json @@ -1,14 +1,14 @@ { "name": "@abp/ng.oauth", - "version": "8.2.2", + "version": "8.2.3", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "dependencies": { - "@abp/ng.core": "~8.2.2", - "@abp/utils": "~8.2.2", + "@abp/ng.core": "~8.2.3", + "@abp/utils": "~8.2.3", "angular-oauth2-oidc": "^17.0.0", "just-clone": "^6.0.0", "just-compare": "^2.0.0", diff --git a/npm/ng-packs/packages/permission-management/package.json b/npm/ng-packs/packages/permission-management/package.json index 566370a878..0fafad15c1 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": "8.2.2", + "version": "8.2.3", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "dependencies": { - "@abp/ng.theme.shared": "~8.2.2", + "@abp/ng.theme.shared": "~8.2.3", "tslib": "^2.0.0" }, "publishConfig": { diff --git a/npm/ng-packs/packages/schematics/package.json b/npm/ng-packs/packages/schematics/package.json index 6a5e0b359f..5c5ded4180 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": "8.2.2", + "version": "8.2.3", "author": "", "schematics": "./collection.json", "dependencies": { diff --git a/npm/ng-packs/packages/setting-management/package.json b/npm/ng-packs/packages/setting-management/package.json index 8006b6b084..2a623bf390 100644 --- a/npm/ng-packs/packages/setting-management/package.json +++ b/npm/ng-packs/packages/setting-management/package.json @@ -1,14 +1,14 @@ { "name": "@abp/ng.setting-management", - "version": "8.2.2", + "version": "8.2.3", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "dependencies": { - "@abp/ng.components": "~8.2.2", - "@abp/ng.theme.shared": "~8.2.2", + "@abp/ng.components": "~8.2.3", + "@abp/ng.theme.shared": "~8.2.3", "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 1d93a58e96..375ff1428f 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": "8.2.2", + "version": "8.2.3", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "dependencies": { - "@abp/ng.feature-management": "~8.2.2", - "@abp/ng.theme.shared": "~8.2.2", + "@abp/ng.feature-management": "~8.2.3", + "@abp/ng.theme.shared": "~8.2.3", "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 48c3131a90..901b4019b3 100644 --- a/npm/ng-packs/packages/theme-basic/package.json +++ b/npm/ng-packs/packages/theme-basic/package.json @@ -1,14 +1,14 @@ { "name": "@abp/ng.theme.basic", - "version": "8.2.2", + "version": "8.2.3", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "dependencies": { - "@abp/ng.account.core": "~8.2.2", - "@abp/ng.theme.shared": "~8.2.2", + "@abp/ng.account.core": "~8.2.3", + "@abp/ng.theme.shared": "~8.2.3", "tslib": "^2.0.0" }, "publishConfig": { diff --git a/npm/ng-packs/packages/theme-shared/package.json b/npm/ng-packs/packages/theme-shared/package.json index 045843db48..06421475a0 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": "8.2.2", + "version": "8.2.3", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "dependencies": { - "@abp/ng.core": "~8.2.2", + "@abp/ng.core": "~8.2.3", "@fortawesome/fontawesome-free": "^5.15.4", "@ng-bootstrap/ng-bootstrap": "~16.0.0", "@ngx-validate/core": "^0.2.0", diff --git a/npm/packs/anchor-js/package.json b/npm/packs/anchor-js/package.json index 72b8fdd4c9..195925d941 100644 --- a/npm/packs/anchor-js/package.json +++ b/npm/packs/anchor-js/package.json @@ -1,11 +1,11 @@ { - "version": "8.2.2", + "version": "8.2.3", "name": "@abp/anchor-js", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~8.2.2", + "@abp/core": "~8.2.3", "anchor-js": "^4.3.1" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/aspnetcore.components.server.basictheme/package.json b/npm/packs/aspnetcore.components.server.basictheme/package.json index a3787bcbf9..7a70736f5f 100644 --- a/npm/packs/aspnetcore.components.server.basictheme/package.json +++ b/npm/packs/aspnetcore.components.server.basictheme/package.json @@ -1,11 +1,11 @@ { - "version": "8.2.2", + "version": "8.2.3", "name": "@abp/aspnetcore.components.server.basictheme", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/aspnetcore.components.server.theming": "~8.2.2" + "@abp/aspnetcore.components.server.theming": "~8.2.3" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", "homepage": "https://abp.io", diff --git a/npm/packs/aspnetcore.components.server.theming/package.json b/npm/packs/aspnetcore.components.server.theming/package.json index df823b75d1..e5a3f5363d 100644 --- a/npm/packs/aspnetcore.components.server.theming/package.json +++ b/npm/packs/aspnetcore.components.server.theming/package.json @@ -1,12 +1,12 @@ { - "version": "8.2.2", + "version": "8.2.3", "name": "@abp/aspnetcore.components.server.theming", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/bootstrap": "~8.2.2", - "@abp/font-awesome": "~8.2.2" + "@abp/bootstrap": "~8.2.3", + "@abp/font-awesome": "~8.2.3" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", "homepage": "https://abp.io", diff --git a/npm/packs/aspnetcore.mvc.ui.theme.basic/package.json b/npm/packs/aspnetcore.mvc.ui.theme.basic/package.json index ef25fb8d9a..c2289e6056 100644 --- a/npm/packs/aspnetcore.mvc.ui.theme.basic/package.json +++ b/npm/packs/aspnetcore.mvc.ui.theme.basic/package.json @@ -1,5 +1,5 @@ { - "version": "8.2.2", + "version": "8.2.3", "name": "@abp/aspnetcore.mvc.ui.theme.basic", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.shared": "~8.2.2" + "@abp/aspnetcore.mvc.ui.theme.shared": "~8.2.3" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", "homepage": "https://abp.io", diff --git a/npm/packs/aspnetcore.mvc.ui.theme.shared/package.json b/npm/packs/aspnetcore.mvc.ui.theme.shared/package.json index c9bef8fbf6..5d62a69f9a 100644 --- a/npm/packs/aspnetcore.mvc.ui.theme.shared/package.json +++ b/npm/packs/aspnetcore.mvc.ui.theme.shared/package.json @@ -1,5 +1,5 @@ { - "version": "8.2.2", + "version": "8.2.3", "name": "@abp/aspnetcore.mvc.ui.theme.shared", "repository": { "type": "git", @@ -10,22 +10,22 @@ "access": "public" }, "dependencies": { - "@abp/aspnetcore.mvc.ui": "~8.2.2", - "@abp/bootstrap": "~8.2.2", - "@abp/bootstrap-datepicker": "~8.2.2", - "@abp/bootstrap-daterangepicker": "~8.2.2", - "@abp/datatables.net-bs5": "~8.2.2", - "@abp/font-awesome": "~8.2.2", - "@abp/jquery-form": "~8.2.2", - "@abp/jquery-validation-unobtrusive": "~8.2.2", - "@abp/lodash": "~8.2.2", - "@abp/luxon": "~8.2.2", - "@abp/malihu-custom-scrollbar-plugin": "~8.2.2", - "@abp/moment": "~8.2.2", - "@abp/select2": "~8.2.2", - "@abp/sweetalert2": "~8.2.2", - "@abp/timeago": "~8.2.2", - "@abp/toastr": "~8.2.2" + "@abp/aspnetcore.mvc.ui": "~8.2.3", + "@abp/bootstrap": "~8.2.3", + "@abp/bootstrap-datepicker": "~8.2.3", + "@abp/bootstrap-daterangepicker": "~8.2.3", + "@abp/datatables.net-bs5": "~8.2.3", + "@abp/font-awesome": "~8.2.3", + "@abp/jquery-form": "~8.2.3", + "@abp/jquery-validation-unobtrusive": "~8.2.3", + "@abp/lodash": "~8.2.3", + "@abp/luxon": "~8.2.3", + "@abp/malihu-custom-scrollbar-plugin": "~8.2.3", + "@abp/moment": "~8.2.3", + "@abp/select2": "~8.2.3", + "@abp/sweetalert2": "~8.2.3", + "@abp/timeago": "~8.2.3", + "@abp/toastr": "~8.2.3" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", "homepage": "https://abp.io", diff --git a/npm/packs/aspnetcore.mvc.ui/package-lock.json b/npm/packs/aspnetcore.mvc.ui/package-lock.json index 1126dda1ae..27b6996cb0 100644 --- a/npm/packs/aspnetcore.mvc.ui/package-lock.json +++ b/npm/packs/aspnetcore.mvc.ui/package-lock.json @@ -1,6 +1,6 @@ { "name": "@abp/aspnetcore.mvc.ui", - "version": "8.2.2", + "version": "8.2.3", "lockfileVersion": 1, "requires": true, "packages": { diff --git a/npm/packs/aspnetcore.mvc.ui/package.json b/npm/packs/aspnetcore.mvc.ui/package.json index 77b1505845..d526eee3db 100644 --- a/npm/packs/aspnetcore.mvc.ui/package.json +++ b/npm/packs/aspnetcore.mvc.ui/package.json @@ -1,5 +1,5 @@ { - "version": "8.2.2", + "version": "8.2.3", "name": "@abp/aspnetcore.mvc.ui", "repository": { "type": "git", diff --git a/npm/packs/blogging/package.json b/npm/packs/blogging/package.json index 100cbad9c3..b3c624c31b 100644 --- a/npm/packs/blogging/package.json +++ b/npm/packs/blogging/package.json @@ -1,14 +1,14 @@ { - "version": "8.2.2", + "version": "8.2.3", "name": "@abp/blogging", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.shared": "~8.2.2", - "@abp/owl.carousel": "~8.2.2", - "@abp/prismjs": "~8.2.2", - "@abp/tui-editor": "~8.2.2" + "@abp/aspnetcore.mvc.ui.theme.shared": "~8.2.3", + "@abp/owl.carousel": "~8.2.3", + "@abp/prismjs": "~8.2.3", + "@abp/tui-editor": "~8.2.3" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", "homepage": "https://abp.io", diff --git a/npm/packs/bootstrap-datepicker/package.json b/npm/packs/bootstrap-datepicker/package.json index f36c1fb317..267dede75c 100644 --- a/npm/packs/bootstrap-datepicker/package.json +++ b/npm/packs/bootstrap-datepicker/package.json @@ -1,5 +1,5 @@ { - "version": "8.2.2", + "version": "8.2.3", "name": "@abp/bootstrap-datepicker", "repository": { "type": "git", diff --git a/npm/packs/bootstrap-daterangepicker/package.json b/npm/packs/bootstrap-daterangepicker/package.json index 5943cf0c29..09e5451077 100644 --- a/npm/packs/bootstrap-daterangepicker/package.json +++ b/npm/packs/bootstrap-daterangepicker/package.json @@ -1,5 +1,5 @@ { - "version": "8.2.2", + "version": "8.2.3", "name": "@abp/bootstrap-daterangepicker", "repository": { "type": "git", diff --git a/npm/packs/bootstrap/package.json b/npm/packs/bootstrap/package.json index 40e7608567..2d0039a40a 100644 --- a/npm/packs/bootstrap/package.json +++ b/npm/packs/bootstrap/package.json @@ -1,5 +1,5 @@ { - "version": "8.2.2", + "version": "8.2.3", "name": "@abp/bootstrap", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/core": "~8.2.2", + "@abp/core": "~8.2.3", "bootstrap": "^5.1.3" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/chart.js/package.json b/npm/packs/chart.js/package.json index dd4de22dc9..66cc397891 100644 --- a/npm/packs/chart.js/package.json +++ b/npm/packs/chart.js/package.json @@ -1,5 +1,5 @@ { - "version": "8.2.2", + "version": "8.2.3", "name": "@abp/chart.js", "publishConfig": { "access": "public" diff --git a/npm/packs/clipboard/package.json b/npm/packs/clipboard/package.json index 6e9f862b4e..16f5e0e5ab 100644 --- a/npm/packs/clipboard/package.json +++ b/npm/packs/clipboard/package.json @@ -1,11 +1,11 @@ { - "version": "8.2.2", + "version": "8.2.3", "name": "@abp/clipboard", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~8.2.2", + "@abp/core": "~8.2.3", "clipboard": "^2.0.8" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/cms-kit.admin/package.json b/npm/packs/cms-kit.admin/package.json index ec0dd82987..6b74d23783 100644 --- a/npm/packs/cms-kit.admin/package.json +++ b/npm/packs/cms-kit.admin/package.json @@ -1,15 +1,15 @@ { - "version": "8.2.2", + "version": "8.2.3", "name": "@abp/cms-kit.admin", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/codemirror": "~8.2.2", - "@abp/jstree": "~8.2.2", - "@abp/slugify": "~8.2.2", - "@abp/tui-editor": "~8.2.2", - "@abp/uppy": "~8.2.2" + "@abp/codemirror": "~8.2.3", + "@abp/jstree": "~8.2.3", + "@abp/slugify": "~8.2.3", + "@abp/tui-editor": "~8.2.3", + "@abp/uppy": "~8.2.3" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", "homepage": "https://abp.io", diff --git a/npm/packs/cms-kit.public/package.json b/npm/packs/cms-kit.public/package.json index a36a37ae5a..7956d0e4a1 100644 --- a/npm/packs/cms-kit.public/package.json +++ b/npm/packs/cms-kit.public/package.json @@ -1,12 +1,12 @@ { - "version": "8.2.2", + "version": "8.2.3", "name": "@abp/cms-kit.public", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/highlight.js": "~8.2.2", - "@abp/star-rating-svg": "~8.2.2" + "@abp/highlight.js": "~8.2.3", + "@abp/star-rating-svg": "~8.2.3" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", "homepage": "https://abp.io", diff --git a/npm/packs/cms-kit/package.json b/npm/packs/cms-kit/package.json index 379a3d32a7..0b476961be 100644 --- a/npm/packs/cms-kit/package.json +++ b/npm/packs/cms-kit/package.json @@ -1,12 +1,12 @@ { - "version": "8.2.2", + "version": "8.2.3", "name": "@abp/cms-kit", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/cms-kit.admin": "~8.2.2", - "@abp/cms-kit.public": "~8.2.2" + "@abp/cms-kit.admin": "~8.2.3", + "@abp/cms-kit.public": "~8.2.3" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", "homepage": "https://abp.io", diff --git a/npm/packs/codemirror/package.json b/npm/packs/codemirror/package.json index 154c467d4c..5a46440f88 100644 --- a/npm/packs/codemirror/package.json +++ b/npm/packs/codemirror/package.json @@ -1,11 +1,11 @@ { - "version": "8.2.2", + "version": "8.2.3", "name": "@abp/codemirror", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~8.2.2", + "@abp/core": "~8.2.3", "codemirror": "^5.65.1" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/core/package.json b/npm/packs/core/package.json index 8a66a06101..21d76e656e 100644 --- a/npm/packs/core/package.json +++ b/npm/packs/core/package.json @@ -1,5 +1,5 @@ { - "version": "8.2.2", + "version": "8.2.3", "name": "@abp/core", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/utils": "~8.2.2" + "@abp/utils": "~8.2.3" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", "homepage": "https://abp.io", diff --git a/npm/packs/cropperjs/package.json b/npm/packs/cropperjs/package.json index 73af564b2e..dfcf4f532e 100644 --- a/npm/packs/cropperjs/package.json +++ b/npm/packs/cropperjs/package.json @@ -1,11 +1,11 @@ { - "version": "8.2.2", + "version": "8.2.3", "name": "@abp/cropperjs", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~8.2.2", + "@abp/core": "~8.2.3", "cropperjs": "^1.5.12" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/datatables.net-bs4/package.json b/npm/packs/datatables.net-bs4/package.json index 2fd776800a..645efc9034 100644 --- a/npm/packs/datatables.net-bs4/package.json +++ b/npm/packs/datatables.net-bs4/package.json @@ -1,5 +1,5 @@ { - "version": "8.2.2", + "version": "8.2.3", "name": "@abp/datatables.net-bs4", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/datatables.net": "~8.2.2", + "@abp/datatables.net": "~8.2.3", "datatables.net-bs4": "^1.11.4" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/datatables.net-bs5/package.json b/npm/packs/datatables.net-bs5/package.json index d770864a3a..0ccc23d28b 100644 --- a/npm/packs/datatables.net-bs5/package.json +++ b/npm/packs/datatables.net-bs5/package.json @@ -1,11 +1,11 @@ { - "version": "8.2.2", + "version": "8.2.3", "name": "@abp/datatables.net-bs5", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/datatables.net": "~8.2.2", + "@abp/datatables.net": "~8.2.3", "datatables.net-bs5": "^1.11.4" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/datatables.net/package.json b/npm/packs/datatables.net/package.json index f68847ef0e..d21a55661b 100644 --- a/npm/packs/datatables.net/package.json +++ b/npm/packs/datatables.net/package.json @@ -1,5 +1,5 @@ { - "version": "8.2.2", + "version": "8.2.3", "name": "@abp/datatables.net", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/jquery": "~8.2.2", + "@abp/jquery": "~8.2.3", "datatables.net": "^1.11.4" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/docs/package.json b/npm/packs/docs/package.json index 65540a6660..237fd4740d 100644 --- a/npm/packs/docs/package.json +++ b/npm/packs/docs/package.json @@ -1,15 +1,15 @@ { - "version": "8.2.2", + "version": "8.2.3", "name": "@abp/docs", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/anchor-js": "~8.2.2", - "@abp/clipboard": "~8.2.2", - "@abp/malihu-custom-scrollbar-plugin": "~8.2.2", - "@abp/popper.js": "~8.2.2", - "@abp/prismjs": "~8.2.2" + "@abp/anchor-js": "~8.2.3", + "@abp/clipboard": "~8.2.3", + "@abp/malihu-custom-scrollbar-plugin": "~8.2.3", + "@abp/popper.js": "~8.2.3", + "@abp/prismjs": "~8.2.3" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", "homepage": "https://abp.io", diff --git a/npm/packs/flag-icon-css/package.json b/npm/packs/flag-icon-css/package.json index 2cddd598b5..ff9c49b757 100644 --- a/npm/packs/flag-icon-css/package.json +++ b/npm/packs/flag-icon-css/package.json @@ -1,5 +1,5 @@ { - "version": "8.2.2", + "version": "8.2.3", "name": "@abp/flag-icon-css", "publishConfig": { "access": "public" diff --git a/npm/packs/flag-icons/package.json b/npm/packs/flag-icons/package.json index ec2930b555..ac940cb5a4 100644 --- a/npm/packs/flag-icons/package.json +++ b/npm/packs/flag-icons/package.json @@ -1,5 +1,5 @@ { - "version": "8.2.2", + "version": "8.2.3", "name": "@abp/flag-icons", "publishConfig": { "access": "public" diff --git a/npm/packs/font-awesome/package.json b/npm/packs/font-awesome/package.json index f6e534b7ed..5b64da33ee 100644 --- a/npm/packs/font-awesome/package.json +++ b/npm/packs/font-awesome/package.json @@ -1,5 +1,5 @@ { - "version": "8.2.2", + "version": "8.2.3", "name": "@abp/font-awesome", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/core": "~8.2.2", + "@abp/core": "~8.2.3", "@fortawesome/fontawesome-free": "^6.5.1" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/highlight.js/package.json b/npm/packs/highlight.js/package.json index 386635509f..8265e639f2 100644 --- a/npm/packs/highlight.js/package.json +++ b/npm/packs/highlight.js/package.json @@ -1,11 +1,11 @@ { - "version": "8.2.2", + "version": "8.2.3", "name": "@abp/highlight.js", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~8.2.2", + "@abp/core": "~8.2.3", "@highlightjs/cdn-assets": "~11.4.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/jquery-form/package.json b/npm/packs/jquery-form/package.json index 0a2d9b97fe..f74dcf6138 100644 --- a/npm/packs/jquery-form/package.json +++ b/npm/packs/jquery-form/package.json @@ -1,5 +1,5 @@ { - "version": "8.2.2", + "version": "8.2.3", "name": "@abp/jquery-form", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/jquery": "~8.2.2", + "@abp/jquery": "~8.2.3", "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 c407106aa5..fc3475998a 100644 --- a/npm/packs/jquery-validation-unobtrusive/package.json +++ b/npm/packs/jquery-validation-unobtrusive/package.json @@ -1,5 +1,5 @@ { - "version": "8.2.2", + "version": "8.2.3", "name": "@abp/jquery-validation-unobtrusive", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/jquery-validation": "~8.2.2", + "@abp/jquery-validation": "~8.2.3", "jquery-validation-unobtrusive": "^3.2.12" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/jquery-validation/package.json b/npm/packs/jquery-validation/package.json index 51261cb5d9..2b924d4887 100644 --- a/npm/packs/jquery-validation/package.json +++ b/npm/packs/jquery-validation/package.json @@ -1,5 +1,5 @@ { - "version": "8.2.2", + "version": "8.2.3", "name": "@abp/jquery-validation", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/jquery": "~8.2.2", + "@abp/jquery": "~8.2.3", "jquery-validation": "^1.19.3" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/jquery/package.json b/npm/packs/jquery/package.json index dfb53dfbe2..8ae6a4968e 100644 --- a/npm/packs/jquery/package.json +++ b/npm/packs/jquery/package.json @@ -1,5 +1,5 @@ { - "version": "8.2.2", + "version": "8.2.3", "name": "@abp/jquery", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/core": "~8.2.2", + "@abp/core": "~8.2.3", "jquery": "~3.6.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/jstree/package.json b/npm/packs/jstree/package.json index f2cfb5bd9f..681282586a 100644 --- a/npm/packs/jstree/package.json +++ b/npm/packs/jstree/package.json @@ -1,11 +1,11 @@ { - "version": "8.2.2", + "version": "8.2.3", "name": "@abp/jstree", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/jquery": "~8.2.2", + "@abp/jquery": "~8.2.3", "jstree": "^3.3.12" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/lodash/package.json b/npm/packs/lodash/package.json index 3d98e2b8b0..019f848fec 100644 --- a/npm/packs/lodash/package.json +++ b/npm/packs/lodash/package.json @@ -1,5 +1,5 @@ { - "version": "8.2.2", + "version": "8.2.3", "name": "@abp/lodash", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/core": "~8.2.2", + "@abp/core": "~8.2.3", "lodash": "^4.17.21" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/luxon/package.json b/npm/packs/luxon/package.json index c4f8450c46..55a65f0b9b 100644 --- a/npm/packs/luxon/package.json +++ b/npm/packs/luxon/package.json @@ -1,5 +1,5 @@ { - "version": "8.2.2", + "version": "8.2.3", "name": "@abp/luxon", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/core": "~8.2.2", + "@abp/core": "~8.2.3", "luxon": "^2.3.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/malihu-custom-scrollbar-plugin/package.json b/npm/packs/malihu-custom-scrollbar-plugin/package.json index 5d0a4f6c35..d1addb28ff 100644 --- a/npm/packs/malihu-custom-scrollbar-plugin/package.json +++ b/npm/packs/malihu-custom-scrollbar-plugin/package.json @@ -1,5 +1,5 @@ { - "version": "8.2.2", + "version": "8.2.3", "name": "@abp/malihu-custom-scrollbar-plugin", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/core": "~8.2.2", + "@abp/core": "~8.2.3", "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 6528b398fb..eadaa77634 100644 --- a/npm/packs/markdown-it/package.json +++ b/npm/packs/markdown-it/package.json @@ -1,11 +1,11 @@ { - "version": "8.2.2", + "version": "8.2.3", "name": "@abp/markdown-it", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~8.2.2", + "@abp/core": "~8.2.3", "markdown-it": "^12.3.2" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/moment/package.json b/npm/packs/moment/package.json index 68674a7ec9..2cbcb8934b 100644 --- a/npm/packs/moment/package.json +++ b/npm/packs/moment/package.json @@ -1,5 +1,5 @@ { - "version": "8.2.2", + "version": "8.2.3", "name": "@abp/moment", "repository": { "type": "git", diff --git a/npm/packs/owl.carousel/package.json b/npm/packs/owl.carousel/package.json index 9d1ef0a3da..d8e45e0aa6 100644 --- a/npm/packs/owl.carousel/package.json +++ b/npm/packs/owl.carousel/package.json @@ -1,11 +1,11 @@ { - "version": "8.2.2", + "version": "8.2.3", "name": "@abp/owl.carousel", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~8.2.2", + "@abp/core": "~8.2.3", "owl.carousel": "^2.3.4" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/popper.js/package.json b/npm/packs/popper.js/package.json index c2bdb9a860..6b883898c2 100644 --- a/npm/packs/popper.js/package.json +++ b/npm/packs/popper.js/package.json @@ -1,11 +1,11 @@ { - "version": "8.2.2", + "version": "8.2.3", "name": "@abp/popper.js", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~8.2.2", + "@abp/core": "~8.2.3", "@popperjs/core": "^2.11.2" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/prismjs/package.json b/npm/packs/prismjs/package.json index 431c1f9298..a7a14357e0 100644 --- a/npm/packs/prismjs/package.json +++ b/npm/packs/prismjs/package.json @@ -1,12 +1,12 @@ { - "version": "8.2.2", + "version": "8.2.3", "name": "@abp/prismjs", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/clipboard": "~8.2.2", - "@abp/core": "~8.2.2", + "@abp/clipboard": "~8.2.3", + "@abp/core": "~8.2.3", "prismjs": "^1.26.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/qrcode/package.json b/npm/packs/qrcode/package.json index 7d9699bf96..14b84926df 100644 --- a/npm/packs/qrcode/package.json +++ b/npm/packs/qrcode/package.json @@ -1,5 +1,5 @@ { - "version": "8.2.2", + "version": "8.2.3", "name": "@abp/qrcode", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/core": "~8.2.2" + "@abp/core": "~8.2.3" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", "homepage": "https://abp.io", diff --git a/npm/packs/select2/package.json b/npm/packs/select2/package.json index 24eec4548c..c417f83ffc 100644 --- a/npm/packs/select2/package.json +++ b/npm/packs/select2/package.json @@ -1,5 +1,5 @@ { - "version": "8.2.2", + "version": "8.2.3", "name": "@abp/select2", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/core": "~8.2.2", + "@abp/core": "~8.2.3", "select2": "^4.0.13" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/signalr/package.json b/npm/packs/signalr/package.json index 799dfa8ffd..b354ea481c 100644 --- a/npm/packs/signalr/package.json +++ b/npm/packs/signalr/package.json @@ -1,11 +1,11 @@ { - "version": "8.2.2", + "version": "8.2.3", "name": "@abp/signalr", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~8.2.2", + "@abp/core": "~8.2.3", "@microsoft/signalr": "~6.0.1" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/slugify/package.json b/npm/packs/slugify/package.json index 98c7542f66..9a23bececc 100644 --- a/npm/packs/slugify/package.json +++ b/npm/packs/slugify/package.json @@ -1,5 +1,5 @@ { - "version": "8.2.2", + "version": "8.2.3", "name": "@abp/slugify", "publishConfig": { "access": "public" diff --git a/npm/packs/star-rating-svg/package.json b/npm/packs/star-rating-svg/package.json index 5019b2cc35..36844f3d4d 100644 --- a/npm/packs/star-rating-svg/package.json +++ b/npm/packs/star-rating-svg/package.json @@ -1,11 +1,11 @@ { - "version": "8.2.2", + "version": "8.2.3", "name": "@abp/star-rating-svg", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/jquery": "~8.2.2", + "@abp/jquery": "~8.2.3", "star-rating-svg": "^3.5.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/sweetalert2/package.json b/npm/packs/sweetalert2/package.json index 634b741065..a9123c9136 100644 --- a/npm/packs/sweetalert2/package.json +++ b/npm/packs/sweetalert2/package.json @@ -1,5 +1,5 @@ { - "version": "8.2.2", + "version": "8.2.3", "name": "@abp/sweetalert2", "publishConfig": { "access": "public" @@ -10,7 +10,7 @@ "directory": "npm/packs/sweetalert2" }, "dependencies": { - "@abp/core": "~8.2.2", + "@abp/core": "~8.2.3", "sweetalert2": "^11.3.6" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/timeago/package.json b/npm/packs/timeago/package.json index 5e6bca3302..88f9cf4490 100644 --- a/npm/packs/timeago/package.json +++ b/npm/packs/timeago/package.json @@ -1,5 +1,5 @@ { - "version": "8.2.2", + "version": "8.2.3", "name": "@abp/timeago", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/jquery": "~8.2.2", + "@abp/jquery": "~8.2.3", "timeago": "^1.6.7" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/toastr/package.json b/npm/packs/toastr/package.json index 95e1b383c6..46a6d088f3 100644 --- a/npm/packs/toastr/package.json +++ b/npm/packs/toastr/package.json @@ -1,5 +1,5 @@ { - "version": "8.2.2", + "version": "8.2.3", "name": "@abp/toastr", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/jquery": "~8.2.2", + "@abp/jquery": "~8.2.3", "toastr": "^2.1.4" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/tui-editor/package.json b/npm/packs/tui-editor/package.json index 0479012b0a..6f4aebeec1 100644 --- a/npm/packs/tui-editor/package.json +++ b/npm/packs/tui-editor/package.json @@ -1,12 +1,12 @@ { - "version": "8.2.2", + "version": "8.2.3", "name": "@abp/tui-editor", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/jquery": "~8.2.2", - "@abp/prismjs": "~8.2.2" + "@abp/jquery": "~8.2.3", + "@abp/prismjs": "~8.2.3" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", "homepage": "https://abp.io", diff --git a/npm/packs/uppy/package.json b/npm/packs/uppy/package.json index 352378b845..98ab525cde 100644 --- a/npm/packs/uppy/package.json +++ b/npm/packs/uppy/package.json @@ -1,11 +1,11 @@ { - "version": "8.2.2", + "version": "8.2.3", "name": "@abp/uppy", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~8.2.2", + "@abp/core": "~8.2.3", "uppy": "^3.0.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/utils/package.json b/npm/packs/utils/package.json index 02f8fe280b..f1bbf337b4 100644 --- a/npm/packs/utils/package.json +++ b/npm/packs/utils/package.json @@ -1,6 +1,6 @@ { "name": "@abp/utils", - "version": "8.2.2", + "version": "8.2.3", "scripts": { "prepublishOnly": "yarn install --ignore-scripts && node prepublish.js", "ng": "ng", diff --git a/npm/packs/vee-validate/package.json b/npm/packs/vee-validate/package.json index 4945a96b10..47b0dcc10d 100644 --- a/npm/packs/vee-validate/package.json +++ b/npm/packs/vee-validate/package.json @@ -1,11 +1,11 @@ { - "version": "8.2.2", + "version": "8.2.3", "name": "@abp/vee-validate", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/vue": "~8.2.2", + "@abp/vue": "~8.2.3", "vee-validate": "~3.4.4" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/virtual-file-explorer/package.json b/npm/packs/virtual-file-explorer/package.json index 87692477a9..29fa21a17c 100644 --- a/npm/packs/virtual-file-explorer/package.json +++ b/npm/packs/virtual-file-explorer/package.json @@ -1,12 +1,12 @@ { - "version": "8.2.2", + "version": "8.2.3", "name": "@abp/virtual-file-explorer", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/clipboard": "~8.2.2", - "@abp/prismjs": "~8.2.2" + "@abp/clipboard": "~8.2.3", + "@abp/prismjs": "~8.2.3" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", "homepage": "https://abp.io", diff --git a/npm/packs/vue/package.json b/npm/packs/vue/package.json index 93bd7fca32..51b5a9630a 100644 --- a/npm/packs/vue/package.json +++ b/npm/packs/vue/package.json @@ -1,5 +1,5 @@ { - "version": "8.2.2", + "version": "8.2.3", "name": "@abp/vue", "publishConfig": { "access": "public" diff --git a/npm/packs/zxcvbn/package.json b/npm/packs/zxcvbn/package.json index 23d0360d22..45d2b7cf4b 100644 --- a/npm/packs/zxcvbn/package.json +++ b/npm/packs/zxcvbn/package.json @@ -1,11 +1,11 @@ { - "version": "8.2.2", + "version": "8.2.3", "name": "@abp/zxcvbn", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~8.2.2", + "@abp/core": "~8.2.3", "zxcvbn": "^4.4.2" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/source-code/Volo.Abp.Account.SourceCode/Volo.Abp.Account.SourceCode.zip b/source-code/Volo.Abp.Account.SourceCode/Volo.Abp.Account.SourceCode.zip index bab54e6aca4212ce35c6be8d4bcc4dcc6089f4ae..e32e454cb0966a451994fac2e8f3478daefa4c26 100644 GIT binary patch delta 22149 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 diff --git a/source-code/Volo.Abp.AuditLogging.SourceCode/Volo.Abp.AuditLogging.SourceCode.zip b/source-code/Volo.Abp.AuditLogging.SourceCode/Volo.Abp.AuditLogging.SourceCode.zip index 67e0b04dbe2b2955ae6b4bd904bd36448d72106c..60c3aabf182704182a3448f291ba2fd889f3a0cb 100644 GIT binary patch delta 10811 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

~&y7(ba#Qy_% CFCEbU diff --git a/source-code/Volo.Abp.BackgroundJobs.SourceCode/Volo.Abp.BackgroundJobs.SourceCode.zip b/source-code/Volo.Abp.BackgroundJobs.SourceCode/Volo.Abp.BackgroundJobs.SourceCode.zip index 8763b8f7f236faa33229109f6aa39fd819603f75..286bc0ba2a15e9a1114079a6928351eb3f386641 100644 GIT binary patch delta 10327 zcmZ{J2RxSF`#+Dp*CX=SD?1}Adqrl5?7jDlM2{UpxD{C$nIU_R5Ry$4GP7l+j0*p| z`|11ne0)Ct-}8DsuXEk+YnRR-BSP&tA69FMWBW?%;Na2xUL&PnTSrmt#>@5WRB(sJ=ge5!$#ra9; z2m$t&_+Yr8Swq1&1vrpNZHpYE$2Yi?&F+@StPy6g&qPmDxd*f2rALya_4Bxh_6TPGd=n`Q zd~8!UN`(cUZEMr1;mDva+byQ&zan|IGn->{w26K_d5@o!@U#)*j7JMu{f&BF^`^N~ zAKzttoH4g#vl1FNOLR=lum+!L5z23LnzRVFquJp^*{4w=thwI&nz@80j-p|v=7L-6 zHMreZiGTO;f20O-vQ-(PvqNr~67e`4Gla^~h7>tt7jiEAH?}{c81o zLO=7PefF|Za`&hHTuT!UWYEI4`U7>vAMxx8Ea}qIoFg>r=4F1D5e~d7LBC)dKc)Io zit^(7eJ1=e9x@Fby;r3Rv_Za1{czp7SL0uo*INTHfV>I8Uo(4F+g<>3oC z001w zJv~9>JIzea^0wzVV{OeZIw|_W2WBM5k!!v013c?+e>DqE*l^VIUuIumm64SGD!HSM zU+Y?aZKC8!hCjEBfRd|fk|i4tP5)Hg-IJEV&*72{M>0BzOk}o>5R^)b9ugud=HX@DWXBbQYK~MuZ1In^>nyc z{%3rC!D=zdp~p%N17{9l?>R)jc#GIK&&-*hg|h}|ae2!=!41qwmUC7!q)tU7rOVg0 zsp)9Qr(Y-hUM$AeDZ5&I`uDlBn5~u}%FoOp zT>1_(Ixib8h4b!vq<*heR_+<~vgXfvz(|6#)>a9xlWnTZ?eKGbX~3jm@uq9{ULiU1 z%x6)kb5+)r$%YL-u!okHE4o9yZ`zi+^2!w+S0*Lnn5IwoUkmu%YpvvV=_&pLr{6w#1*b2qYBZ~_Xznuynx9Jv;_ZE%*%TJJ zE`U9D$5KF|61z&6{_d~7CWfEn(K6__2>)5VstI@ys33Ck7Nbf}8-p+)%Yz5B3UC6F zSK&|)b+2;5h<}$Ma!+B81F-a=!+-@o6Qs4bhnKt4lZ1ZFE`Cy_Bb8raDl+^1uDjUqg)+ev;-EW*6rwQ|ESv={v9m|Z0jea#pSuZE1sZ!5OOS!l zJ}Y{Uh9^H%%B6KZgPWgZGq*LrWwZQw)3wZ}O!bpR2z}g*x@%1v-m%9+BA1c|a+jGE-|@SAMWp*yXdCK}ZZ5tWJMuffgW934tU-2W{C)mwrgsOY(0+khfwEQ~7YK!>Ow1W1Tsz{q}w zP@Aih>l3ILkB)|B00`XY14jC<057hSBc~Yn5nD?aHD7EkNn<~ z^BmGiE~~uduMEfuO7j_9IDFNgCh)DI1Sx+)aACe0PI!zjCxZj8Mgu}5MSuW}Y$z~y zC5=(D_q}uo6d?QYF5NjyG&DjMG&DURq?7?59TG>*8qT}Vh>$*Ds5lSV>o*fbpAD9R zccb+ZRk^q(O?4cOU{mvEy4Jxt6K>PgzCCZtdtlIRJL-$yEQ{8=lz0@x@VG_dr2nxD zsUX?4@IE!c6J@Urjg&+`&C|!uY}RDII8&zY^D4Z1v&W?9uv7)xzUivQvf*MYE2#;ZPByJ_WzW4!h!RGQ z%$*Q#iEg7j%UQkyps~+i{av({{lle$SVH2M02;)}(;H+(+EF-z-Zl9e2*>^1pv!tZ zv0~xWxwr@T)_P?l8x}5J3yb-P|PkPq;`n_BxeBS1bI@-gxBjy6)HE$p?)(H$pmCxj&Ky>mJ<7b}Xl zTD>*(#wwbndzb?+3@Uv~EzmbZrntZ0)>ly!B6JBO#H;q;vrzqDf&@86@8kA0FWyXo_;N_;y`+ATgV zj=tMR*@l68F$c|WEyyc&w!thEEkfu(;_DKU$yG%w*jv=&$`0~Y(7pq_RgYXEmzZ4Y zO>xeUi~CcC*P`phGd?v4rOT)Ori`XHtxCRI=gS`Vb&l}=5Sf|Lcl^|I7yYhXDPtM+ zF10k`gCx#+TkTcrv~MoVlX5V>K6kn-&9NCn-ij`zTex;CVb=&gsIm+RG0BBTKX))PDTLPBtL*tYU) zDMc$)qD;uD(Z9;^wH|G@a`56c3d%U@xU9?z)ZOI94lx}c>b(4>bN@y}I?GbmCi$726$zaJNEJW$ zmyNJJJU44`wrJT!KZ)F&Wh@(Al+9A>3%T1WuX5E%%2bC;Wi+7Jgh+mi;XF2`;|5Yc zq*uC{mx-b>R#v60jL2OJ*YQ}2M{P%owXf=9`r>;U8K;Cy zEDa34l}P1Y-r+N-XLJf)TTr7EtM7>4=n#o#e}?}K7!J-9-HSh*TB-dx6h5vho^R&b zE$Ck+9aLx_S=qDUw1Bimbvxlzl-A7U^ z&hj0F95Xe1nSae0b+MQJpdO!!O>qpFplyyzIi69Q&$c2l@LE`p@tURS>6v|j^p?26 zQbHQc4TuJa+Ydby{vl3M2%w>XB) z+4g38V96AL0pp5>NH!S@=70^R=3B+8-IpBIw9LkAn#!Bg@%ng{+C|IcjB2y}gIeyH z=h0)dW-nSf&gcx#P;iVrwR}(=iW$B6tCZt5^F6{}cc~oq?sJ5YOiwryRx;i3O%td} zdT3Bk=2MjD9=5apMBZ3@naqUagmU;B7TGYxrB)GxwVnjA4&#TnQ~jWO!p zkEsj~HI0OKoV}Z{QL(qxXpO_7hTWJMxqo@D#rk{EVy)snwKCS{F@Z$Pin&fC@LHUO z*lWJ6z(lZOTq^oOgc~3Sx4WA@k?fKL$yAKSVBrtm@r)6$I4yrYXM68ibu$*GxrC| z5gOaCMph?jB)LwG=;mx2JC?jPZCYJfHN0%wgX4n33mTava-|(k2+}RNuWn|nzBh}Q zsR+<^=-nEw5_+^*d}O5Z@KNMJzBsO$pY(o7j?v(IxhF&7$|V&M7QS~ZuUNF3WVE3+ zJOA737!rhOk#z#6YSzd>{7zZI@ZHeeiZ2*0r;WI71k7BaF-885XAEk5b*sqsw@quK zmOP~eftz2_Hexm3i(J)hl@u?KRTg;JH>CKY`mP!$;-QmG<8W&EcLJpbH1jWsUD1L1 zAr_?Rfz@^{I40TZm-+lz_!L&PLxYDy4ze}~kv2!1I0e>#j4_2~JyViicn>Br{f$YA*K4Q91on-e6dV(!}*-yx~6+q?yNOZ;5{HzsBm{kixvONV3Si8{=G3y-Plr6&~0?O5S51 zu@+OLw_|upg!$ohZKrbk0Z!hi8uCOBOB)aG@X>8TGI^NfZEtA`%Xb#s>MXZy5&X=Y z?aw)|Du=7K=#x^I*^}LKiLhNg`pQNt9PeOrdVhE;MnZCufH1Mt?zTRD=7scd)uM1bT=RJ6UPBf60TuIlgf$NSW_>{mp znXwwkWSPVoi>;{JQJCSRN_}elOX5bZR21D*d-RWvW22D9)jJ%gqvS3TEy&1}m$x4- zZKQe`D|lH&2rbC(Ma>nGKV@WaYzwEe10uirUrBKUrHM)BHybSPr!j>h;?L2~lQ zs7^Ho;fcM{8SF~jkj%p52*y`g+DZ`}_StusYur}JeYj4H_KoGbqyo4fYUcCdIr~kj z-#(zzqj<89Hm?-U>CkTSLb{yoSij%rDF4M{MTL}IozFBjhZ-uH#4~wM(C;<^>(d+(d6f2dRm-jS3$nJV#*}AO9 zML1G%o>}x9=efWGp7%Mkx4E z$h@{lre@7(N#3b2^s66Ne@K1Sip4F*w*TW>=26~i#0Fhv(T67P@7`Of%&wTL02}Lz zm;D6!>f~59Q&Rk{UFdAbHbK?$@w_J`^`YA8p6{w$92@1HRnhH*HN2F3M_sPIpKgB= zsu{CWV><{?AS*CZ^rgwev!&-_m7dUP;a%8ITu7~(Y4mOGC1#l0RxdF~3j8S&z!vsa6y zFBVMTSZ@-lE2H{$FudQ(6=i_^kQ5+m=z!F?zaPx%n%7f6p4S7UM9^_y-F>?=(u17W zzQZkC*?MgX<6g@>1`Na?QJcbzIUPL(q`nYB}k{Z=o?RA#HiD`RQKev|6-1c{}gK)`L$Ln?`L{d!C1={vIl#&?R^U^)?ZcL z*iWsqGNswHX%#Ya<0UxGdMWh{XUR-k9?!s(>idQ7WS1;o0T~<+rwW?np^r}Q6=sXU!+FbgnMTivxEJk zVZ9#NudLSIv-%gO!&T?Jck3C?U>6GZKfWl@(1gIcdWv{Ubs*JOng+par zsCHi;3x@VP*2q<5I0H{m zP2i<1?KgO(0rCs4^Y@oApD_`ThO`)2XGbQp8e!4*=40us-_5Gp&eFCF^}NTUcYG8+?I8Q!7beXBTI#bUWP zrg&>;CKO?Z83lWto>vJu_Y;t;gg0ba<&uAGj`EUAg*34Jd{kr}=gwPEcP7ZRJGfx< zc1=RkSb5BTzJ7U|UWZ$M6O)jdr;lsNKk|g?W_bmoW-O|jPPdkFC#;0b;nX-;nC3w2 z{Z{VRpE{@P4DI*sg+_&g-ZCKgK(Nm=*za0kH~r@a9W|kCwyc!AO0Fq3!T+zs7tg^AjZG-ND z4>|GZmM;ORHC#;XX+mH3*p5dC?SU@kJJni-#*Yld1R*60&e0hQ`nDl*J z6*p4}ouz$N`Fgm}yS-8W`tDStufFco6wbbVF)r4*3T=<N8ul@l8f^FOZk11>*%a#O5RYBtTTJ=fHB}awlKdNTc z71Wy$euWO_bB^j)M~S$;j4uvk^lN^z8sz4}w{sLA9d4}Zc}Ce`lZ>XoEG zXjqJlQtmmdfiyMq3V?SZ#rixMDj~}T+d0A`g+b9oR z?6s8|snkZHOXpo!D_r_iar5&7KCYS#T{%9pWA{UqA4dx+Jf5>m89w?_Hh`xz@@q== z+ah`S;r+Y{)2hM)&8b7q?br`TKDV11(A&afl*D$v+Ah$S$awjbkxDfjJ}lC5JQCW! zaxt8JcJWX+jqHa};pA})hw45eV_RPfXmm6Z*3jydC2dVVW=J~=F3#q7IEJ~T%&!_n zs%cU;lT*&qJh)TZ+3pv@RYt=ru#xY+)+%~nw*;s-sgT8_tY{gHzqPKjpbc}_We9Qy za-6u384vTdgc6IN`@H5kE2tv*jzbyTcwV}Apw${uKXA&()%>A2!nxH-{&b)4)1|r3 zU4rqO;4VrtXl-Wk?jsq(4^6Q4iW`^X*!gN%-)akI64%gty)r!Ar|!nJOu*p!lI-4g zayEW7QA#gA`iJm$F}GFZ5a$m+B~tx(nCq#U6T))Gk`8!k!tSF{<}H@?1KSU$y)}E8 z?m}3qU7XdRa8x(Bd_xhHZi!HZu2%AF#(+YG;ai9z%KW`i#hc~+F2tb>Y)2`52>Om9 zhLJ)j0xRSgBC5hfP=I*&AC7xOH40&SsDkRrBia>(EX25>5bZbv2mwmtQ9Wfn7C?vA z3!Rsal^9_5Z-9Tx-`oD`^8_7~_U$Bglu{6|4!P%$e1PJZJ(WP&%}6yu5hrQ7D3(?R z9g1+ze2HSwWly7!A2}aU#6(^fij`i_f+CEH-BGN8k{2k#yEGd`Tq=)85rwaAqlmML zbd**`bsdV(tGkS1dDg!|5iE_2DB?yFDsI(sE%XoqShb4$zRU#DTV;Qb3YcpZf?9an zO{lf_)0Vc~fS$j%=|HV&yE)XB{%MI{8$!=cuYI9*>2>Jex0o&+9uPR+;Q+O&ov7#5 zPAlk{x$7a+mUbmWO3;m&%9~IK9DL&fwUXTyzuTmK1klutvcuMs0LeoaJ*_$EH?jW{!M~1vaL~}KFPNIWsQh?@0U85zd;to|gJIXdpzuoVAH9h~ z!hhdcprOfJ5MEIS1hfSKGfkrZ@2D;cPXgMbvVXk@k}(8K?iQ$S10;;0(&@qp!-alk zehYg3&H>0F=+g-l$OOH&x*!;J8x%AH>c`2U@C}S3V4HftVgd(nRUgV*2)_Cr0qfHL z149`KnT5VcK$9fkDTn3-vpj~NFb^>Eo*&XDo-l)2_do5(gfDag_t)MU(3$jyO#a?L z&4Q*9L9?nCOww2a`$p^l=?6h58BB@em}x-)8t|`oLC_qq{9psg1b%FrSp|8sps|ZG zJD`jXAo3A4YPF9Dn6eGfvCaVO-G&1ewqn4p4L0y|3KhM-_cP!@&V{b_{;4DlNPZ;z zk8gJ_D5L{9Q+7}&@TU{1-yvAqxwJdK(Hk3rU%1IXe5b{y$|@6+V}*awi# zP{JY{|1eqpGam;s%AOp8U9y2y=3<4B0di(g^>}**0gH11JmBmA|0hn!8--D_aXRvjsb$0<`J-xAP|xT9?Vlg z*}`Iu_pBfE$sK&b8W()aMM8q~!6d-(0_v@-+fbqdpx_2Ln2V|P5xBa5T6!KWAYkL6 zpz2Lve}Mw(!?J_Tx)rqT4XPSn=z}mEs$Q<)V*eR`!Xg4DAMuCH1uU#$0q9GV&@e79 zAz;Ume^}JO2tWh`FHu5W>9But*#*1!y+mBBN(#~cP=Es?(Qts~Gb(_bpAoR?n7`N- zYvjO_&m@q&Nt}m$YoNWSpz9Zl7HiyJ3Yl>TfOZ*Wi+dRXL&k$FRPn`IxeT1gvjg}` zD0TWFVvGAWI_oUo0jd;WHL6n2ZP9Uqf{ivxa~PJO#yMLE~fq$p&uHIx3i| zIAi#W;J{PCOJTDM@6A0Gl-B^}zTg9~>y*%p4I7CISOkTVK!uAlb^v(2j+(KY8weP4 z2B@k7RAk@)&o@vWl!LH*CIpXU5(C_uDERs&0=D-YEUqHJLIDRrTEhyIXXE`f@_mp! znDaOL3l$KzO#=BMy!i190cOA`xJih+;CK;Gxs?G$=hhbl%&p*$y2@Yg?*|C;7XM|n zw-^B=Y@_^nzKwuAFZokKF@c3ww7_6JH9)h2idLP!jUO{Oc&q=U-i^`=O2|ecV749? z2rkC~=5|qeCR#8wjSVVKfPdEu9&eQWAIfk*YZv91*)9SW@ai98lK+`ad!Wc@#Xm%7 z0o^@rC=elg2$*{{82$g1ZhRnf|97|reuo;G1vnd8xPhQoufc!l1@AcO{-vl3Dcl?R z`hgW3iV_$Lj|&Ql^^gLpU=slIUugl;uL6)GiC@7w*6=U3GQ{FMK)^0H{fk8l00(qX gcc<5`WMzZh%!7Z+3*Et6{-Z?qjU8L)cR51)e{yb$3jhEB delta 10485 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 diff --git a/source-code/Volo.Abp.BasicTheme.SourceCode/Volo.Abp.BasicTheme.SourceCode.zip b/source-code/Volo.Abp.BasicTheme.SourceCode/Volo.Abp.BasicTheme.SourceCode.zip index 448886a85a71642d1818e2e791bd5df058fbe5ca..f8b328211cb24b805d399499cf7468bcb2baf44e 100644 GIT binary patch delta 33246 zcmY(pb8sik8}1$3<|Z54*f`nPwr!i=U}M|1ZQHh!jcx1fvwKdx@9&SP>bkpUrsulu z>F(oH79OJ^vNrHl*0RaI)0gW?|)WY)vgMzV<)XM?8ga0i|K(PId#Dhb*{|)#- z?ScL+n8LAu{4Hc5Wd3Wyi*$?d=VtXwd)ZtB5Fj8|@OZ!BZ}Bm3_{kfZ5Qz02cvv8R z8whq6<%9isCkRk-H!8%x7SY-ejL85k2#9z>G=#s;WkjO`f&cG$+hqQf#Ik z!o(J>r6QvNtWthWAob}W24Jus;u-tJSR|6c z>U=6@bn-Up?9Vb<2M7l+Q+4;QTLLG#l<6>Rp4VFG63H!q9$F^O0E<(p&h;I;aQkcK z1Zc)S)GC6(B^8<=p@$0*aT?&{Pzg^rT@DCsd1(fnw_J|gp?E=Z;G_}T5xEXML+w`8 z9XvW87%zg>k6~coofiUZ|wRtAD4VIK0V((|PP0=-t7tH_9sQ)yvn#>=j1_r9X z!2BnEeI$0#KNr|=ul~wMfoJj8pZLUYfqw(|1StRHch#qQ>;I!C9dLZkH8-+UD8ogc&ad4XxGY zLJfDiG)-+?Ohb|LV6)SryN+oyP}yEqk1-n#6&}?ir(u$8(-!pb_X6*}h)GppGvJ#o zzv;7u1_AM!)IqwxD-knoYx<%6vGjf}G2R~$OSB(lnY)WMOqhde*ZQh(lSGB2ouEUO zZ8J2~)|yPwT=?6ZOr;snwJb>U@R2KT|35{5fc_{F?@pxr_cLdS-2dgJG${n|-~55> zJldZ7^Suf2y}bm8O!3`h8-MS}BA5QB)FtK9-@q}I!@qzwZ6efvYD4Zd zug1U91_C7e`O!LHKZ9%dc7*Te`pJ+22!J&u;2(Y)*SkkDj&>P8p_g`Vv4BN1618^p zGfYgR$6AVBm2kMxrHj#6UX08~={qM2BKC@S$D!UF2qTSTSqH$!qk_*=j9(25WbDYo9G8eDO1I~h!xxFS>e zS%(?3+pwqq%dq$6f77u(fqvtk=#EVPcQ8O@Ir*#Q7mMM)tm_Ev9moCS0ya>x02~Bk zyc{Qa{0KYsUx%)WES|i8fq-J-es}<`L0t^9ew0WqXk#EYdP&6JHkyaSGJifL`u`rt zJx)4?Uc0||axkysHpdm_Y#uI+L>$ zOXeof4QG=M@o#DB{Qg|6h-N`u;jF@DDx+i}!PJd$2>}rQG1j8b%29=19c~G~S;H?icKu8@rM9!&U#I4l zWawZf^$0N$uSNPiA2>CR@#uF#I21^Qq$^H^WfHZ$RHa!5LP zS9q}R=!)gq!!E=rshH_^=F=-VNYT2&_*U}Q8P0rrhLVO>1r)DJPO=g}u2X^oE zSGy_C2#cs_XcL1LXfk6UiSn=p^W_m7p_9+yeGKkjbWjGSi@pn6IdyIE8E)eTx8G(G zB*@Uo8PG(%C)b&xBy%kHSy^BJs-a*wb+Yyi<(_Y9AvQ;?iyGgxsWZ4Sp>qR&c)V?z z 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 K+QH6*$o~K**sdM` delta 32903 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 LI&4;3Sl diff --git a/source-code/Volo.Abp.BlobStoring.Database.SourceCode/Volo.Abp.BlobStoring.Database.SourceCode.zip b/source-code/Volo.Abp.BlobStoring.Database.SourceCode/Volo.Abp.BlobStoring.Database.SourceCode.zip index d488768968f89ba230124e1a924d279b688d4796..13ee3634d61679c686a931f6249f43bc61966ebd 100644 GIT binary patch delta 10305 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 qfWrO34ZqvG#}41y$H`<0Yr3NV delta 9074 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 E18-s&761SM diff --git a/source-code/Volo.Abp.FeatureManagement.SourceCode/Volo.Abp.FeatureManagement.SourceCode.zip b/source-code/Volo.Abp.FeatureManagement.SourceCode/Volo.Abp.FeatureManagement.SourceCode.zip index 52317e183c172c15ef2d22a78db0793c8727d94a..58c7c083f2c0a8166b7c1c0b554149f1ac09ba6b 100644 GIT binary patch delta 25317 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 UW@X|8&#Lc&r$~GTAYQWn0XBKa^Z)<= diff --git a/source-code/Volo.Abp.Identity.SourceCode/Volo.Abp.Identity.SourceCode.zip b/source-code/Volo.Abp.Identity.SourceCode/Volo.Abp.Identity.SourceCode.zip index 66f3d1023dd8a2521759d18621fec26f1dfd5b8c..9ab6092f0ef8663b868af856941b7abf5fcc43fa 100644 GIT binary patch delta 44643 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 delta 43506 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

{+0YFO4rVZ;{}UIqYrR4tOZ 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 M0)K}c4CG?}2X&ipq5uE@ diff --git a/source-code/Volo.Abp.IdentityServer.SourceCode/Volo.Abp.IdentityServer.SourceCode.zip b/source-code/Volo.Abp.IdentityServer.SourceCode/Volo.Abp.IdentityServer.SourceCode.zip index 372300afaf7bd009f74c4b6bff08f3e19b4212cb..34248c96b17cddab27852f3e530abc7dc8716901 100644 GIT binary patch delta 21453 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�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 KKi}ztQS*QEo2Zfi delta 29505 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ℑ-sp_s! z(9rcl(E20}=Z0}=i^G7}?;Q}Q7cNA`G(xq|Y1>EG&S^(QByh>asST@xcf*M%-%%))yjxQt#UL|+E~Ckg2Z z(*M;Hr2WvuWu@GsYsNYQ=SkqbEi5wllh7K}En<&1EaBi&e;sJ%4)7F!^S7%m{k!2N zcvTe4tYp5-j{@66#k)D`*qC8PV7X|{U$tmp4;t9bR>NodF+=bK#3^g6lF~85hr9;BcX&E>>Q}O$J8spfpdZ2aDWq#zrAa zdOniLp~{wD<$jPMo({=hz|)LX_~J5nfDh-6Z243C7YIebx`2OgY*Xb6DdEcrNS5|n zdjj~RqTYk=xfp5D5n2E2gOUm88vss(@tioI*#o~`4Qc>CEJlh{pVSi27oo-H52M41 z@=FQ7dTbBA%u;T;Np^W}@dJF1gH<+vUDIIP10RZGk@bMJ&HMc&PJf@Gr70h$h*%^B!qd1BZ)z9_T=RR=kV=^m zwx%Fuig`;gzTOmrH)$b%n6Bg9(cpm;ru_G!Dw(x-KpQ z_yr*>|9%G2q*BZ;KF+!>Y&I^anp9)oZ*fe%VKyozTsm$MCy^Ldpx(h;;uyiID#>h-i+L<8aD`5Q? zMiTGs<~I}m=tPzegHsb+HL z!Gh{j8)|@8naVSuvXzh5$BG-_gqv(D7UhhXJOjX4a82R~&D<#zQo&gpxhSGXJDf5A zoE}{KZO9K1UIIVc2oGwae~P}@y?+5~1>=x^aI$8XP`?B&u4L43d_I@@w0sEiO$~P3 zgxHOWdKIJJ=UK7-xxwtapgJ9T;urW=^tWd>5#30K$Zfwy8L|LA2Un^H0xjJ-{9zNy zr9&i502XccuoEJ@gJ!Ajn}J&Vhmh)DSj&vWxjEeEJ2)&ge-#*i1jC?!r+UwRPUZkJ z6&u&X+PSWP+X3Az0G;gz_M}+)^ltuHCvQWyD{MQ&RFo`Ad?A0El`0gi~FSQg^1e)%& zu$nxJ(M+-Cx1w>>t1XW@ z?b^Ycfsh5hS98w_@v}rx_;p@7ln+sm4N?j(iVNphyhACn!z;tNUI;1y)1NO0S@yWS zgnLqV5mx?XAuEc8QCAAo!B>U0>Dzu&%JM1$*40)rztPY4^?I?dfFG7|$CkW00G^lk zZ~QNDZ<>#7FV?)u1POA0K+cpzeF-dVg``CVGSp2Qv)p9!7S@Y4d=qkOLKO%gA4I}T=+$rg?j(aE%+jShl8(| z_)#qi!>>4E;cifBF2^EMrNG&&-P{zHdq%tNIcQ$fM{~J6iyu+TX*Q|_EwV#dD%6Uw z*%4NW^igm`frU=3;}rPSfdT_XmI{RjroI9AS_PllYqBsEOg*LE*#Z;prBNPP{VN9KJI;luu`Ru0=dxy$}XH-_JeGy z7OU~%elF00zapX;klWNp_JuYJ4Qb$vFK++^@nc!)w+1vqikukSc@g0v#^Ce@q=3Hb zu*|{(Xao(o{s4&lsz<0=WD^vL{TjJ(8r2A_8~Q?4I96yv3Nqr1IHLlSVz?39onrq7 D8V^s3 delta 28044 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 h%WxoFt9{tA>JS@4R|SoxrP5M)vRe5@a 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 z

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 O&QyYU^b^cP6#obK|JmyR diff --git a/source-code/Volo.Abp.TenantManagement.SourceCode/Volo.Abp.TenantManagement.SourceCode.zip b/source-code/Volo.Abp.TenantManagement.SourceCode/Volo.Abp.TenantManagement.SourceCode.zip index 32b7e870f6453b9655a3e0f0e34cf95e1a684862..9da58bff66527816a142f1639f90fe228b66b4ad 100644 GIT binary patch delta 25995 zcmZsD2Rzm9_qg}9_ue~u?=73m%

|N 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 diff --git a/templates/app-nolayers/angular/package.json b/templates/app-nolayers/angular/package.json index c23203c71a..a4c730cf71 100644 --- a/templates/app-nolayers/angular/package.json +++ b/templates/app-nolayers/angular/package.json @@ -12,15 +12,15 @@ }, "private": true, "dependencies": { - "@abp/ng.account": "~8.2.2", - "@abp/ng.components": "~8.2.2", - "@abp/ng.core": "~8.2.2", - "@abp/ng.oauth": "~8.2.2", - "@abp/ng.identity": "~8.2.2", - "@abp/ng.setting-management": "~8.2.2", - "@abp/ng.tenant-management": "~8.2.2", - "@abp/ng.theme.shared": "~8.2.2", - "@abp/ng.theme.lepton-x": "~3.2.2", + "@abp/ng.account": "~8.2.3", + "@abp/ng.components": "~8.2.3", + "@abp/ng.core": "~8.2.3", + "@abp/ng.oauth": "~8.2.3", + "@abp/ng.identity": "~8.2.3", + "@abp/ng.setting-management": "~8.2.3", + "@abp/ng.tenant-management": "~8.2.3", + "@abp/ng.theme.shared": "~8.2.3", + "@abp/ng.theme.lepton-x": "~3.2.3", "@angular/animations": "~17.3.0", "@angular/common": "~17.3.0", "@angular/compiler": "~17.3.0", @@ -36,7 +36,7 @@ "zone.js": "~0.14.0" }, "devDependencies": { - "@abp/ng.schematics": "~8.2.2", + "@abp/ng.schematics": "~8.2.3", "@angular-devkit/build-angular": "~17.3.0", "@angular-eslint/builder": "~17.3.0", "@angular-eslint/eslint-plugin": "~17.3.0", diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/package.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/package.json index a816b47500..9c77fbf0b9 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/package.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/package.json @@ -3,7 +3,7 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.components.server.leptonxlitetheme": "~3.2.2", - "@abp/aspnetcore.mvc.ui.theme.leptonxlite": "~3.2.2" + "@abp/aspnetcore.components.server.leptonxlitetheme": "~3.2.3", + "@abp/aspnetcore.mvc.ui.theme.leptonxlite": "~3.2.3" } } diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/package.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/package.json index ee5e45940e..89365ec624 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/package.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/package.json @@ -3,7 +3,7 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.leptonxlite": "~3.2.2", - "@abp/aspnetcore.components.server.leptonxlitetheme": "~3.2.2" + "@abp/aspnetcore.mvc.ui.theme.leptonxlite": "~3.2.3", + "@abp/aspnetcore.components.server.leptonxlitetheme": "~3.2.3" } } diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.WebAssembly/Server.Mongo/package.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.WebAssembly/Server.Mongo/package.json index 619a3e5d5a..0d93755ed0 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.WebAssembly/Server.Mongo/package.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.WebAssembly/Server.Mongo/package.json @@ -3,6 +3,6 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.leptonxlite": "~3.2.2" + "@abp/aspnetcore.mvc.ui.theme.leptonxlite": "~3.2.3" } } diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.WebAssembly/Server/package.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.WebAssembly/Server/package.json index 619a3e5d5a..0d93755ed0 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.WebAssembly/Server/package.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.WebAssembly/Server/package.json @@ -3,6 +3,6 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.leptonxlite": "~3.2.2" + "@abp/aspnetcore.mvc.ui.theme.leptonxlite": "~3.2.3" } } diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/package.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/package.json index 619a3e5d5a..0d93755ed0 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/package.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/package.json @@ -3,6 +3,6 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.leptonxlite": "~3.2.2" + "@abp/aspnetcore.mvc.ui.theme.leptonxlite": "~3.2.3" } } diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/package.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/package.json index 619a3e5d5a..0d93755ed0 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/package.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/package.json @@ -3,6 +3,6 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.leptonxlite": "~3.2.2" + "@abp/aspnetcore.mvc.ui.theme.leptonxlite": "~3.2.3" } } diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/package.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/package.json index 619a3e5d5a..0d93755ed0 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/package.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/package.json @@ -3,6 +3,6 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.leptonxlite": "~3.2.2" + "@abp/aspnetcore.mvc.ui.theme.leptonxlite": "~3.2.3" } } diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/package.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/package.json index 619a3e5d5a..0d93755ed0 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/package.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/package.json @@ -3,6 +3,6 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.leptonxlite": "~3.2.2" + "@abp/aspnetcore.mvc.ui.theme.leptonxlite": "~3.2.3" } } diff --git a/templates/app/angular/package.json b/templates/app/angular/package.json index 29d38f0642..b60bfb7120 100644 --- a/templates/app/angular/package.json +++ b/templates/app/angular/package.json @@ -12,15 +12,15 @@ }, "private": true, "dependencies": { - "@abp/ng.account": "~8.2.2", - "@abp/ng.components": "~8.2.2", - "@abp/ng.core": "~8.2.2", - "@abp/ng.identity": "~8.2.2", - "@abp/ng.oauth": "~8.2.2", - "@abp/ng.setting-management": "~8.2.2", - "@abp/ng.tenant-management": "~8.2.2", - "@abp/ng.theme.lepton-x": "~3.2.2", - "@abp/ng.theme.shared": "~8.2.2", + "@abp/ng.account": "~8.2.3", + "@abp/ng.components": "~8.2.3", + "@abp/ng.core": "~8.2.3", + "@abp/ng.identity": "~8.2.3", + "@abp/ng.oauth": "~8.2.3", + "@abp/ng.setting-management": "~8.2.3", + "@abp/ng.tenant-management": "~8.2.3", + "@abp/ng.theme.lepton-x": "~3.2.3", + "@abp/ng.theme.shared": "~8.2.3", "@angular/animations": "~17.3.0", "@angular/common": "~17.3.0", "@angular/compiler": "~17.3.0", @@ -36,7 +36,7 @@ "zone.js": "~0.14.0" }, "devDependencies": { - "@abp/ng.schematics": "~8.2.2", + "@abp/ng.schematics": "~8.2.3", "@angular-devkit/build-angular": "~17.3.0", "@angular-eslint/builder": "~17.3.0", "@angular-eslint/eslint-plugin": "~17.3.0", diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.AuthServer/package.json b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.AuthServer/package.json index 370a7c9b5d..c07815ed34 100644 --- a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.AuthServer/package.json +++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.AuthServer/package.json @@ -3,6 +3,6 @@ "name": "my-app-authserver", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.leptonxlite": "~3.2.2" + "@abp/aspnetcore.mvc.ui.theme.leptonxlite": "~3.2.3" } } diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.Server.Tiered/package.json b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.Server.Tiered/package.json index ee5e45940e..89365ec624 100644 --- a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.Server.Tiered/package.json +++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.Server.Tiered/package.json @@ -3,7 +3,7 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.leptonxlite": "~3.2.2", - "@abp/aspnetcore.components.server.leptonxlitetheme": "~3.2.2" + "@abp/aspnetcore.mvc.ui.theme.leptonxlite": "~3.2.3", + "@abp/aspnetcore.components.server.leptonxlitetheme": "~3.2.3" } } diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.Server/package.json b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.Server/package.json index ee5e45940e..89365ec624 100644 --- a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.Server/package.json +++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.Server/package.json @@ -3,7 +3,7 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.leptonxlite": "~3.2.2", - "@abp/aspnetcore.components.server.leptonxlitetheme": "~3.2.2" + "@abp/aspnetcore.mvc.ui.theme.leptonxlite": "~3.2.3", + "@abp/aspnetcore.components.server.leptonxlitetheme": "~3.2.3" } } diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.WebApp.Tiered/package.json b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.WebApp.Tiered/package.json index ee5e45940e..89365ec624 100644 --- a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.WebApp.Tiered/package.json +++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.WebApp.Tiered/package.json @@ -3,7 +3,7 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.leptonxlite": "~3.2.2", - "@abp/aspnetcore.components.server.leptonxlitetheme": "~3.2.2" + "@abp/aspnetcore.mvc.ui.theme.leptonxlite": "~3.2.3", + "@abp/aspnetcore.components.server.leptonxlitetheme": "~3.2.3" } } diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.WebApp/package.json b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.WebApp/package.json index ee5e45940e..89365ec624 100644 --- a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.WebApp/package.json +++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.WebApp/package.json @@ -3,7 +3,7 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.leptonxlite": "~3.2.2", - "@abp/aspnetcore.components.server.leptonxlitetheme": "~3.2.2" + "@abp/aspnetcore.mvc.ui.theme.leptonxlite": "~3.2.3", + "@abp/aspnetcore.components.server.leptonxlitetheme": "~3.2.3" } } 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 619a3e5d5a..0d93755ed0 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.leptonxlite": "~3.2.2" + "@abp/aspnetcore.mvc.ui.theme.leptonxlite": "~3.2.3" } } 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 619a3e5d5a..0d93755ed0 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.leptonxlite": "~3.2.2" + "@abp/aspnetcore.mvc.ui.theme.leptonxlite": "~3.2.3" } } 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 619a3e5d5a..0d93755ed0 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.leptonxlite": "~3.2.2" + "@abp/aspnetcore.mvc.ui.theme.leptonxlite": "~3.2.3" } } diff --git a/templates/module/angular/package.json b/templates/module/angular/package.json index 26df49b91c..c7db2c63e0 100644 --- a/templates/module/angular/package.json +++ b/templates/module/angular/package.json @@ -13,15 +13,15 @@ }, "private": true, "dependencies": { - "@abp/ng.account": "~8.2.2", - "@abp/ng.components": "~8.2.2", - "@abp/ng.core": "~8.2.2", - "@abp/ng.identity": "~8.2.2", - "@abp/ng.oauth": "~8.2.2", - "@abp/ng.setting-management": "~8.2.2", - "@abp/ng.tenant-management": "~8.2.2", - "@abp/ng.theme.basic": "~8.2.2", - "@abp/ng.theme.shared": "~8.2.2", + "@abp/ng.account": "~8.2.3", + "@abp/ng.components": "~8.2.3", + "@abp/ng.core": "~8.2.3", + "@abp/ng.identity": "~8.2.3", + "@abp/ng.oauth": "~8.2.3", + "@abp/ng.setting-management": "~8.2.3", + "@abp/ng.tenant-management": "~8.2.3", + "@abp/ng.theme.basic": "~8.2.3", + "@abp/ng.theme.shared": "~8.2.3", "@angular/animations": "~17.3.0", "@angular/common": "~17.3.0", "@angular/compiler": "~17.3.0", @@ -36,7 +36,7 @@ "zone.js": "~0.14.0" }, "devDependencies": { - "@abp/ng.schematics": "~8.2.2", + "@abp/ng.schematics": "~8.2.3", "@angular-devkit/build-angular": "~17.3.0", "@angular-eslint/builder": "~17.3.0", "@angular-eslint/eslint-plugin": "~17.3.0", diff --git a/templates/module/angular/projects/my-project-name/package.json b/templates/module/angular/projects/my-project-name/package.json index 85a88a331a..22b2b030c8 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": ">=14", "@angular/core": ">=14", - "@abp/ng.core": ">=8.2.2", - "@abp/ng.theme.shared": ">=8.2.2" + "@abp/ng.core": ">=8.2.3", + "@abp/ng.theme.shared": ">=8.2.3" }, "dependencies": { "tslib": "^2.1.0" diff --git a/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.AuthServer/package.json b/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.AuthServer/package.json index 280c264653..d800a08ff3 100644 --- a/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.AuthServer/package.json +++ b/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.AuthServer/package.json @@ -3,6 +3,6 @@ "name": "my-app-authserver", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "~8.2.2" + "@abp/aspnetcore.mvc.ui.theme.basic": "~8.2.3" } } diff --git a/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.Blazor.Server.Host/package.json b/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.Blazor.Server.Host/package.json index f739bd54d1..af3e00aed6 100644 --- a/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.Blazor.Server.Host/package.json +++ b/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.Blazor.Server.Host/package.json @@ -3,7 +3,7 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "~8.2.2", - "@abp/aspnetcore.components.server.basictheme": "~8.2.2" + "@abp/aspnetcore.mvc.ui.theme.basic": "~8.2.3", + "@abp/aspnetcore.components.server.basictheme": "~8.2.3" } } 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 9b45d34690..dd50dd6a99 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": "~8.2.2" + "@abp/aspnetcore.mvc.ui.theme.basic": "~8.2.3" } } 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 9b45d34690..dd50dd6a99 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": "~8.2.2" + "@abp/aspnetcore.mvc.ui.theme.basic": "~8.2.3" } } From 8c5d1cafb3441e6d6b0486215d3497cf30e582b2 Mon Sep 17 00:00:00 2001 From: Engincan VESKE Date: Wed, 4 Sep 2024 09:50:13 +0300 Subject: [PATCH 41/55] Update api-development/index.md --- docs/en/framework/api-development/index.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/en/framework/api-development/index.md b/docs/en/framework/api-development/index.md index 4b2105486d..2f55487b1c 100644 --- a/docs/en/framework/api-development/index.md +++ b/docs/en/framework/api-development/index.md @@ -2,10 +2,10 @@ The following documents explain the concepts, infrastructure and integrations to build HTTP APIs with ABP: -* [ABP Endpoints](./standard-apis/overview.md) +* [ABP Endpoints](./standard-apis) * [API Versioning](./versioning.md) * [Auto API Controllers](./auto-controllers.md) * [Dynamic C# API Clients](./dynamic-csharp-clients.md) * [Integration Services](./integration-services.md) * [Static C# API Clients](./static-csharp-clients.md) -* [Swagger Integration](./swagger.md) \ No newline at end of file +* [Swagger Integration](./swagger.md) From 741776ac32001282d2931bc8a325dbcb36a8932d Mon Sep 17 00:00:00 2001 From: liangshiwei Date: Wed, 4 Sep 2024 17:41:16 +0800 Subject: [PATCH 42/55] Add BlobStoring Google Provider --- Directory.Packages.props | 1 + framework/Volo.Abp.sln | 14 ++ .../Volo.Abp.BlobStoring.Google.csproj | 24 ++++ .../Google/AbpBlobStoringGoogleModule.cs | 9 ++ .../Google/DefaultGoogleBlobNameCalculator.cs | 21 +++ ...gleBlobContainerConfigurationExtensions.cs | 24 ++++ .../Google/GoogleBlobNamingNormalizer.cs | 120 ++++++++++++++++ .../BlobStoring/Google/GoogleBlobProvider.cs | 129 ++++++++++++++++++ .../Google/GoogleBlobProviderConfiguration.cs | 70 ++++++++++ .../GoogleBlobProviderConfigurationNames.cs | 11 ++ .../Google/IGoogleBlobNameCalculator.cs | 6 + .../Volo.Abp.BlobStoring.Google.Tests.csproj | 19 +++ .../Google/AbpBlobStoringGoogleTestBase.cs | 19 +++ .../Google/AbpBlobStoringGoogleTestModule.cs | 60 ++++++++ ...oogleBlobNamingNormalizerProvider_Tests.cs | 94 +++++++++++++ 15 files changed, 621 insertions(+) create mode 100644 framework/src/Volo.Abp.BlobStoring.Google/Volo.Abp.BlobStoring.Google.csproj create mode 100644 framework/src/Volo.Abp.BlobStoring.Google/Volo/Abp/BlobStoring/Google/AbpBlobStoringGoogleModule.cs create mode 100644 framework/src/Volo.Abp.BlobStoring.Google/Volo/Abp/BlobStoring/Google/DefaultGoogleBlobNameCalculator.cs create mode 100644 framework/src/Volo.Abp.BlobStoring.Google/Volo/Abp/BlobStoring/Google/GoogleBlobContainerConfigurationExtensions.cs create mode 100644 framework/src/Volo.Abp.BlobStoring.Google/Volo/Abp/BlobStoring/Google/GoogleBlobNamingNormalizer.cs create mode 100644 framework/src/Volo.Abp.BlobStoring.Google/Volo/Abp/BlobStoring/Google/GoogleBlobProvider.cs create mode 100644 framework/src/Volo.Abp.BlobStoring.Google/Volo/Abp/BlobStoring/Google/GoogleBlobProviderConfiguration.cs create mode 100644 framework/src/Volo.Abp.BlobStoring.Google/Volo/Abp/BlobStoring/Google/GoogleBlobProviderConfigurationNames.cs create mode 100644 framework/src/Volo.Abp.BlobStoring.Google/Volo/Abp/BlobStoring/Google/IGoogleBlobNameCalculator.cs create mode 100644 framework/test/Volo.Abp.BlobStoring.Google.Tests/Volo.Abp.BlobStoring.Google.Tests.csproj create mode 100644 framework/test/Volo.Abp.BlobStoring.Google.Tests/Volo/Abp/BlobStoring/Google/AbpBlobStoringGoogleTestBase.cs create mode 100644 framework/test/Volo.Abp.BlobStoring.Google.Tests/Volo/Abp/BlobStoring/Google/AbpBlobStoringGoogleTestModule.cs create mode 100644 framework/test/Volo.Abp.BlobStoring.Google.Tests/Volo/Abp/BlobStoring/Google/DefaultGoogleBlobNamingNormalizerProvider_Tests.cs diff --git a/Directory.Packages.props b/Directory.Packages.props index b43886f7cf..652b9a836e 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -38,6 +38,7 @@ + diff --git a/framework/Volo.Abp.sln b/framework/Volo.Abp.sln index 3373a239de..19fbf05df8 100644 --- a/framework/Volo.Abp.sln +++ b/framework/Volo.Abp.sln @@ -467,6 +467,10 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Volo.Abp.RemoteServices.Tes EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Volo.Abp.AspNetCore.Abstractions", "src\Volo.Abp.AspNetCore.Abstractions\Volo.Abp.AspNetCore.Abstractions.csproj", "{E1051CD0-9262-4869-832D-B951723F4DDE}" EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Volo.Abp.BlobStoring.Google", "src\Volo.Abp.BlobStoring.Google\Volo.Abp.BlobStoring.Google.csproj", "{DEEB5200-BBF9-464D-9B7E-8FC035A27E94}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Volo.Abp.BlobStoring.Google.Tests", "test\Volo.Abp.BlobStoring.Google.Tests\Volo.Abp.BlobStoring.Google.Tests.csproj", "{40FB8907-9CF7-44D0-8B5F-538AC6DAF8B9}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -1393,6 +1397,14 @@ Global {E1051CD0-9262-4869-832D-B951723F4DDE}.Debug|Any CPU.Build.0 = Debug|Any CPU {E1051CD0-9262-4869-832D-B951723F4DDE}.Release|Any CPU.ActiveCfg = Release|Any CPU {E1051CD0-9262-4869-832D-B951723F4DDE}.Release|Any CPU.Build.0 = Release|Any CPU + {DEEB5200-BBF9-464D-9B7E-8FC035A27E94}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {DEEB5200-BBF9-464D-9B7E-8FC035A27E94}.Debug|Any CPU.Build.0 = Debug|Any CPU + {DEEB5200-BBF9-464D-9B7E-8FC035A27E94}.Release|Any CPU.ActiveCfg = Release|Any CPU + {DEEB5200-BBF9-464D-9B7E-8FC035A27E94}.Release|Any CPU.Build.0 = Release|Any CPU + {40FB8907-9CF7-44D0-8B5F-538AC6DAF8B9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {40FB8907-9CF7-44D0-8B5F-538AC6DAF8B9}.Debug|Any CPU.Build.0 = Debug|Any CPU + {40FB8907-9CF7-44D0-8B5F-538AC6DAF8B9}.Release|Any CPU.ActiveCfg = Release|Any CPU + {40FB8907-9CF7-44D0-8B5F-538AC6DAF8B9}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE @@ -1628,6 +1640,8 @@ Global {DFAF8763-D1D6-4EB4-B459-20E31007FE2F} = {447C8A77-E5F0-4538-8687-7383196D04EA} {DACD4485-61BE-4DE5-ACAE-4FFABC122500} = {447C8A77-E5F0-4538-8687-7383196D04EA} {E1051CD0-9262-4869-832D-B951723F4DDE} = {5DF0E140-0513-4D0D-BE2E-3D4D85CD70E6} + {DEEB5200-BBF9-464D-9B7E-8FC035A27E94} = {5DF0E140-0513-4D0D-BE2E-3D4D85CD70E6} + {40FB8907-9CF7-44D0-8B5F-538AC6DAF8B9} = {447C8A77-E5F0-4538-8687-7383196D04EA} EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {BB97ECF4-9A84-433F-A80B-2A3285BDD1D5} diff --git a/framework/src/Volo.Abp.BlobStoring.Google/Volo.Abp.BlobStoring.Google.csproj b/framework/src/Volo.Abp.BlobStoring.Google/Volo.Abp.BlobStoring.Google.csproj new file mode 100644 index 0000000000..073c8c1891 --- /dev/null +++ b/framework/src/Volo.Abp.BlobStoring.Google/Volo.Abp.BlobStoring.Google.csproj @@ -0,0 +1,24 @@ + + + + + + + netstandard2.0;netstandard2.1;net8.0 + enable + Nullable + Volo.Abp.BlobStoring.Google + Volo.Abp.BlobStoring.Google + $(AssetTargetFallback);portable-net45+win8+wp8+wpa81; + false + false + false + + + + + + + + + diff --git a/framework/src/Volo.Abp.BlobStoring.Google/Volo/Abp/BlobStoring/Google/AbpBlobStoringGoogleModule.cs b/framework/src/Volo.Abp.BlobStoring.Google/Volo/Abp/BlobStoring/Google/AbpBlobStoringGoogleModule.cs new file mode 100644 index 0000000000..f5243fda15 --- /dev/null +++ b/framework/src/Volo.Abp.BlobStoring.Google/Volo/Abp/BlobStoring/Google/AbpBlobStoringGoogleModule.cs @@ -0,0 +1,9 @@ +using Volo.Abp.Modularity; + +namespace Volo.Abp.BlobStoring.Google; + +[DependsOn(typeof(AbpBlobStoringModule))] +public class AbpBlobStoringGoogleModule : AbpModule +{ + +} \ No newline at end of file diff --git a/framework/src/Volo.Abp.BlobStoring.Google/Volo/Abp/BlobStoring/Google/DefaultGoogleBlobNameCalculator.cs b/framework/src/Volo.Abp.BlobStoring.Google/Volo/Abp/BlobStoring/Google/DefaultGoogleBlobNameCalculator.cs new file mode 100644 index 0000000000..90a7e7e7c4 --- /dev/null +++ b/framework/src/Volo.Abp.BlobStoring.Google/Volo/Abp/BlobStoring/Google/DefaultGoogleBlobNameCalculator.cs @@ -0,0 +1,21 @@ +using Volo.Abp.DependencyInjection; +using Volo.Abp.MultiTenancy; + +namespace Volo.Abp.BlobStoring.Google; + +public class DefaultGoogleBlobNameCalculator: IGoogleBlobNameCalculator, ITransientDependency +{ + protected ICurrentTenant CurrentTenant { get; } + + public DefaultGoogleBlobNameCalculator(ICurrentTenant currentTenant) + { + CurrentTenant = currentTenant; + } + + public virtual string Calculate(BlobProviderArgs args) + { + return CurrentTenant.Id == null + ? $"host/{args.BlobName}" + : $"tenants/{CurrentTenant.Id.Value.ToString("D")}/{args.BlobName}"; + } +} \ No newline at end of file diff --git a/framework/src/Volo.Abp.BlobStoring.Google/Volo/Abp/BlobStoring/Google/GoogleBlobContainerConfigurationExtensions.cs b/framework/src/Volo.Abp.BlobStoring.Google/Volo/Abp/BlobStoring/Google/GoogleBlobContainerConfigurationExtensions.cs new file mode 100644 index 0000000000..b99fd3af6a --- /dev/null +++ b/framework/src/Volo.Abp.BlobStoring.Google/Volo/Abp/BlobStoring/Google/GoogleBlobContainerConfigurationExtensions.cs @@ -0,0 +1,24 @@ +using System; + +namespace Volo.Abp.BlobStoring.Google; + +public static class GoogleBlobContainerConfigurationExtensions +{ + public static GoogleBlobProviderConfiguration GetGoogleConfiguration( + this BlobContainerConfiguration containerConfiguration) + { + return new GoogleBlobProviderConfiguration(containerConfiguration); + } + + public static BlobContainerConfiguration UseGoogle( + this BlobContainerConfiguration containerConfiguration, + Action azureConfigureAction) + { + containerConfiguration.ProviderType = typeof(GoogleBlobProvider); + containerConfiguration.NamingNormalizers.TryAdd(); + + azureConfigureAction(new GoogleBlobProviderConfiguration(containerConfiguration)); + + return containerConfiguration; + } +} \ No newline at end of file diff --git a/framework/src/Volo.Abp.BlobStoring.Google/Volo/Abp/BlobStoring/Google/GoogleBlobNamingNormalizer.cs b/framework/src/Volo.Abp.BlobStoring.Google/Volo/Abp/BlobStoring/Google/GoogleBlobNamingNormalizer.cs new file mode 100644 index 0000000000..68f4318acb --- /dev/null +++ b/framework/src/Volo.Abp.BlobStoring.Google/Volo/Abp/BlobStoring/Google/GoogleBlobNamingNormalizer.cs @@ -0,0 +1,120 @@ +using System.Globalization; +using System.Text.RegularExpressions; +using Volo.Abp.DependencyInjection; +using Volo.Abp.Localization; + +namespace Volo.Abp.BlobStoring.Google; + +public class GoogleBlobNamingNormalizer: IBlobNamingNormalizer, ITransientDependency +{ + ///

+ /// https://cloud.google.com/storage/docs/buckets#naming + /// + public string NormalizeContainerName(string containerName) + { + using (CultureHelper.Use(CultureInfo.InvariantCulture)) + { + // All letters in a Bucket name must be lowercase. + containerName = containerName.ToLower(); + + // Bucket names must contain 3-63 characters. Names containing dots can contain up to 222 characters, but each dot-separated component can be no longer than 63 characters. + if(containerName.Contains(".")) + { + if (containerName.Length > 222) + { + containerName = containerName.Substring(0, 222); + } + + var parts = containerName.Split('.'); + for (var i = 0; i < parts.Length; i++) + { + if (parts[i].Length > 63) + { + parts[i] = parts[i].Substring(0, 63); + } + } + + containerName = string.Join(".", parts); + } + else if (containerName.Length > 63) + { + containerName = containerName.Substring(0, 63); + } + + //Bucket names can only contain lowercase letters, numeric characters, dashes (-), underscores (_), and dots (.). Spaces are not allowed. Names containing dots require verification. + containerName = Regex.Replace(containerName, "[^a-z0-9-_.]", string.Empty); + + //Be a syntactically valid DNS name (for example, bucket..example.com is not valid because it contains two dots in a row). + containerName = Regex.Replace(containerName, "[.]{2,}", "."); + + //Bucket names cannot be represented as an IP address in dotted-decimal notation (for example, 192.168.5.4). + containerName = Regex.Replace(containerName, "^(?:(?:^|\\.)(?:2(?:5[0-5]|[0-4]\\d)|1?\\d?\\d)){4}$", string.Empty); + + //Bucket names cannot begin with the "goog" prefix. + containerName = Regex.Replace(containerName, "^goog", string.Empty); + + //Bucket names cannot contain "google" or close misspellings, such as "g00gle". + containerName = Regex.Replace(containerName, "google", string.Empty); + + //Bucket names must start and end with a number or letter. + containerName = RemoveInvalidStartEndCharacters(containerName); + + // Bucket names must be from 3 through 63 characters long. Names containing dots can contain up to 222 characters. + if (containerName.Length < 3) + { + var length = containerName.Length; + for (var i = 0; i < 3 - length; i++) + { + containerName += "0"; + } + } + + return containerName; + } + } + + protected virtual string RemoveInvalidStartEndCharacters(string containerName) + { + if (string.IsNullOrWhiteSpace(containerName)) + { + return containerName; + } + + if (!char.IsLetterOrDigit(containerName[0])) + { + containerName = containerName.Substring(1); + return RemoveInvalidStartEndCharacters( containerName); + } + + if (!char.IsLetterOrDigit(containerName[containerName.Length - 1])) + { + containerName = containerName.Substring(0, containerName.Length - 1); + return RemoveInvalidStartEndCharacters(containerName); + } + + return containerName; + } + + /// + /// https://cloud.google.com/storage/docs/objects#naming + /// + public string NormalizeBlobName(string blobName) + { + //Object names can contain any sequence of valid Unicode characters, of length 1-1024 bytes when UTF-8 encoded + if (blobName.Length > 1024) + { + blobName = blobName.Substring(0, 1024); + } + + //Object names cannot contain Carriage Return or Line Feed characters. + blobName = Regex.Replace(blobName, "[\r\n]", string.Empty); + + //Object names cannot start with .well-known/acme-challenge/. + blobName = Regex.Replace(blobName, "^\\.well-known/acme-challenge/", string.Empty); + + //Objects cannot be named . or ... + blobName = Regex.Replace(blobName, "^\\.\\.?$", string.Empty); + + return blobName; + } +} \ No newline at end of file diff --git a/framework/src/Volo.Abp.BlobStoring.Google/Volo/Abp/BlobStoring/Google/GoogleBlobProvider.cs b/framework/src/Volo.Abp.BlobStoring.Google/Volo/Abp/BlobStoring/Google/GoogleBlobProvider.cs new file mode 100644 index 0000000000..006923996f --- /dev/null +++ b/framework/src/Volo.Abp.BlobStoring.Google/Volo/Abp/BlobStoring/Google/GoogleBlobProvider.cs @@ -0,0 +1,129 @@ +using System; +using System.IO; +using System.Net; +using System.Threading.Tasks; +using Google; +using Google.Apis.Auth.OAuth2; +using Google.Cloud.Storage.V1; +using Volo.Abp.DependencyInjection; + +namespace Volo.Abp.BlobStoring.Google; + +public class GoogleBlobProvider : BlobProviderBase, ITransientDependency +{ + protected IGoogleBlobNameCalculator GoogleBlobNameCalculator { get; } + protected IBlobNormalizeNamingService BlobNormalizeNamingService { get; } + + public GoogleBlobProvider(IGoogleBlobNameCalculator googleBlobNameCalculator, IBlobNormalizeNamingService blobNormalizeNamingService) + { + GoogleBlobNameCalculator = googleBlobNameCalculator; + BlobNormalizeNamingService = blobNormalizeNamingService; + } + + public async override Task SaveAsync(BlobProviderSaveArgs args) + { + var configuration = args.Configuration.GetGoogleConfiguration(); + var storageClient = await GetStorageClientClientAsync(args); + var blobName = GoogleBlobNameCalculator.Calculate(args); + var containerName = GetContainerName(args); + + if(await BlobExistsAsync(args, blobName) && !args.OverrideExisting) + { + throw new BlobAlreadyExistsException($"Saving BLOB '{args.BlobName}' does already exists in the container '{GetContainerName(args)}'! Set {nameof(args.OverrideExisting)} if it should be overwritten."); + } + + if (configuration.CreateContainerIfNotExists) + { + await CreateContainerIfNotExists(args); + } + + await storageClient.UploadObjectAsync(containerName, blobName, contentType: "application/octet-stream", args.BlobStream, + new UploadObjectOptions + { + IfGenerationMatch = !args.OverrideExisting ? 0 : 1 + }); + } + + public async override Task DeleteAsync(BlobProviderDeleteArgs args) + { + var storageClient = await GetStorageClientClientAsync(args); + var blobName = GoogleBlobNameCalculator.Calculate(args); + var containerName = GetContainerName(args); + + await storageClient.DeleteObjectAsync(containerName, blobName); + + return true; + } + + public async override Task ExistsAsync(BlobProviderExistsArgs args) + { + var blobName = GoogleBlobNameCalculator.Calculate(args); + return await BlobExistsAsync(args, blobName); + } + + public async override Task GetOrNullAsync(BlobProviderGetArgs args) + { + var storageClient = await GetStorageClientClientAsync(args); + var blobName = GoogleBlobNameCalculator.Calculate(args); + var containerName = GetContainerName(args); + + var @object = await storageClient.GetObjectAsync(containerName, blobName); + if (@object == null) + { + return null; + } + + var stream = new MemoryStream(); + + await storageClient.DownloadObjectAsync(containerName, blobName, stream); + + stream.Seek(0, SeekOrigin.Begin); + + return stream; + } + + protected virtual string GetContainerName(BlobProviderArgs args) + { + var configuration = args.Configuration.GetGoogleConfiguration(); + return configuration.ContainerName.IsNullOrWhiteSpace() + ? args.ContainerName + : BlobNormalizeNamingService.NormalizeContainerName(args.Configuration, configuration.ContainerName!); + } + + protected virtual async Task BlobExistsAsync(BlobProviderArgs args, string blobName) + { + var @object = await (await GetStorageClientClientAsync(args)).GetObjectAsync(args.ContainerName, blobName); + + return @object != null; + } + + protected virtual async Task CreateContainerIfNotExists(BlobProviderArgs args) + { + var storageClient = await GetStorageClientClientAsync(args); + var configuration = args.Configuration.GetGoogleConfiguration(); + try + { + await storageClient.GetBucketAsync(args.ContainerName); + } + catch (GoogleApiException e) when (e.HttpStatusCode == HttpStatusCode.NotFound) + { + await storageClient.CreateBucketAsync(configuration.ProjectId, GetContainerName(args)); + } + } + + protected virtual async Task GetStorageClientClientAsync(BlobProviderArgs args) + { + var configuration = args.Configuration.GetGoogleConfiguration(); + var googleCredential = GoogleCredential.FromServiceAccountCredential( + new ServiceAccountCredential( + new ServiceAccountCredential.Initializer(configuration.ClientEmail) + { + ProjectId = configuration.ProjectId, + Scopes = configuration.Scopes + } + .FromPrivateKey(configuration.PrivateKey) + )); + + return await StorageClient.CreateAsync(googleCredential); + } +} \ No newline at end of file diff --git a/framework/src/Volo.Abp.BlobStoring.Google/Volo/Abp/BlobStoring/Google/GoogleBlobProviderConfiguration.cs b/framework/src/Volo.Abp.BlobStoring.Google/Volo/Abp/BlobStoring/Google/GoogleBlobProviderConfiguration.cs new file mode 100644 index 0000000000..f00987b303 --- /dev/null +++ b/framework/src/Volo.Abp.BlobStoring.Google/Volo/Abp/BlobStoring/Google/GoogleBlobProviderConfiguration.cs @@ -0,0 +1,70 @@ +using System.Collections.Generic; + +namespace Volo.Abp.BlobStoring.Google; + +public class GoogleBlobProviderConfiguration +{ + private readonly BlobContainerConfiguration _containerConfiguration; + + public GoogleBlobProviderConfiguration(BlobContainerConfiguration containerConfiguration) + { + _containerConfiguration = containerConfiguration; + } + + /// + /// Unique identifier for your project. + /// For more info see: https://cloud.google.com/resource-manager/docs/creating-managing-projects + /// + public string? ProjectId { + get => _containerConfiguration.GetConfigurationOrDefault(GoogleBlobProviderConfigurationNames.ProjectId); + set => _containerConfiguration.SetConfiguration(GoogleBlobProviderConfigurationNames.ProjectId, value); + } + + /// + /// Email address that generated by the Google Cloud. + /// + public string? ClientEmail { + get => _containerConfiguration.GetConfigurationOrDefault(GoogleBlobProviderConfigurationNames.ClientEmail); + set => _containerConfiguration.SetConfiguration(GoogleBlobProviderConfigurationNames.ClientEmail, value); + } + + /// + /// Private key that generated by Google Cloud. + /// Starts with '-----BEGIN PRIVATE KEY-----' + /// and ends with '-----END PRIVATE KEY-----' + /// + public string? PrivateKey { + get => _containerConfiguration.GetConfigurationOrDefault(GoogleBlobProviderConfigurationNames.PrivateKey); + set => _containerConfiguration.SetConfiguration(GoogleBlobProviderConfigurationNames.PrivateKey, value); + } + + /// + /// Available OAuth 2.0 scopes. + /// + public List? Scopes { + get => _containerConfiguration.GetConfigurationOrDefault(GoogleBlobProviderConfigurationNames.Scopes, new List()); + set => _containerConfiguration.SetConfiguration(GoogleBlobProviderConfigurationNames.Scopes, value); + } + + /// + /// The name can only contain lowercase letters, numeric characters, dashes (-), underscores (_), and dots (.). Spaces are not allowed. Names containing dots require verification. + /// Must start and end with a number or letter. + /// Must contain 3-63 characters. Names containing dots can contain up to 222 characters, but each dot-separated component can be no longer than 63 characters. + /// Cannot be represented as an IP address in dotted-decimal notation (for example, 192.168.5.4). + /// Cannot begin with the "goog" prefix. + /// Cannot contain "google" or close misspellings, such as "g00gle". + /// If this parameter is not specified, the ContainerName of the will be used. + /// + public string? ContainerName { + get => _containerConfiguration.GetConfigurationOrDefault(GoogleBlobProviderConfigurationNames.ContainerName); + set => _containerConfiguration.SetConfiguration(GoogleBlobProviderConfigurationNames.ContainerName, value); + } + + /// + /// Default value: false. + /// + public bool CreateContainerIfNotExists { + get => _containerConfiguration.GetConfigurationOrDefault(GoogleBlobProviderConfigurationNames.CreateContainerIfNotExists, false); + set => _containerConfiguration.SetConfiguration(GoogleBlobProviderConfigurationNames.CreateContainerIfNotExists, value); + } +} \ No newline at end of file diff --git a/framework/src/Volo.Abp.BlobStoring.Google/Volo/Abp/BlobStoring/Google/GoogleBlobProviderConfigurationNames.cs b/framework/src/Volo.Abp.BlobStoring.Google/Volo/Abp/BlobStoring/Google/GoogleBlobProviderConfigurationNames.cs new file mode 100644 index 0000000000..0cfd10d129 --- /dev/null +++ b/framework/src/Volo.Abp.BlobStoring.Google/Volo/Abp/BlobStoring/Google/GoogleBlobProviderConfigurationNames.cs @@ -0,0 +1,11 @@ +namespace Volo.Abp.BlobStoring.Google; + +public static class GoogleBlobProviderConfigurationNames +{ + public const string ProjectId = "Google.ProjectId"; + public const string ClientEmail = "Google.ClientEmail"; + public const string PrivateKey = "Google.PrivateKey"; + public const string Scopes = "Google.Scopes"; + public const string ContainerName = "Google.ContainerName"; + public const string CreateContainerIfNotExists = "Google.CreateContainerIfNotExists"; +} \ No newline at end of file diff --git a/framework/src/Volo.Abp.BlobStoring.Google/Volo/Abp/BlobStoring/Google/IGoogleBlobNameCalculator.cs b/framework/src/Volo.Abp.BlobStoring.Google/Volo/Abp/BlobStoring/Google/IGoogleBlobNameCalculator.cs new file mode 100644 index 0000000000..8099c6fa8c --- /dev/null +++ b/framework/src/Volo.Abp.BlobStoring.Google/Volo/Abp/BlobStoring/Google/IGoogleBlobNameCalculator.cs @@ -0,0 +1,6 @@ +namespace Volo.Abp.BlobStoring.Google; + +public interface IGoogleBlobNameCalculator +{ + string Calculate(BlobProviderArgs args); +} \ No newline at end of file diff --git a/framework/test/Volo.Abp.BlobStoring.Google.Tests/Volo.Abp.BlobStoring.Google.Tests.csproj b/framework/test/Volo.Abp.BlobStoring.Google.Tests/Volo.Abp.BlobStoring.Google.Tests.csproj new file mode 100644 index 0000000000..a36e26fade --- /dev/null +++ b/framework/test/Volo.Abp.BlobStoring.Google.Tests/Volo.Abp.BlobStoring.Google.Tests.csproj @@ -0,0 +1,19 @@ + + + + + + net8.0 + + 9f0d2c00-80c1-435b-bfab-2c39c8249091 + + + + + + + + + + + diff --git a/framework/test/Volo.Abp.BlobStoring.Google.Tests/Volo/Abp/BlobStoring/Google/AbpBlobStoringGoogleTestBase.cs b/framework/test/Volo.Abp.BlobStoring.Google.Tests/Volo/Abp/BlobStoring/Google/AbpBlobStoringGoogleTestBase.cs new file mode 100644 index 0000000000..709590f6ed --- /dev/null +++ b/framework/test/Volo.Abp.BlobStoring.Google.Tests/Volo/Abp/BlobStoring/Google/AbpBlobStoringGoogleTestBase.cs @@ -0,0 +1,19 @@ +using Volo.Abp.Testing; + +namespace Volo.Abp.BlobStoring.Google; + +public class AbpBlobStoringGoogleTestCommonBase : AbpIntegratedTest +{ + protected override void SetAbpApplicationCreationOptions(AbpApplicationCreationOptions options) + { + options.UseAutofac(); + } +} + +public class AbpBlobStoringGoogleTestBase : AbpIntegratedTest +{ + protected override void SetAbpApplicationCreationOptions(AbpApplicationCreationOptions options) + { + options.UseAutofac(); + } +} diff --git a/framework/test/Volo.Abp.BlobStoring.Google.Tests/Volo/Abp/BlobStoring/Google/AbpBlobStoringGoogleTestModule.cs b/framework/test/Volo.Abp.BlobStoring.Google.Tests/Volo/Abp/BlobStoring/Google/AbpBlobStoringGoogleTestModule.cs new file mode 100644 index 0000000000..35345613ac --- /dev/null +++ b/framework/test/Volo.Abp.BlobStoring.Google.Tests/Volo/Abp/BlobStoring/Google/AbpBlobStoringGoogleTestModule.cs @@ -0,0 +1,60 @@ +using System; +using Microsoft.Extensions.Configuration; +using Microsoft.Extensions.DependencyInjection; +using Volo.Abp.Modularity; + +namespace Volo.Abp.BlobStoring.Google; + + +/// +/// This module will not try to connect to azure. +/// +[DependsOn( + typeof(AbpBlobStoringGoogleModule), + typeof(AbpBlobStoringTestModule) +)] +public class AbpBlobStoringGoogleTestCommonModule : AbpModule +{ + +} + +[DependsOn( + typeof(AbpBlobStoringGoogleTestCommonModule) +)] +public class AbpBlobStoringGoogleTestModule : AbpModule +{ + private const string UserSecretsId = "9f0d2c00-80c1-435b-bfab-2c39c8249091"; + + private string _connectionString; + + private readonly string _randomContainerName = "abp-azure-test-container-" + Guid.NewGuid().ToString("N"); + + public override void ConfigureServices(ServiceConfigurationContext context) + { + context.Services.ReplaceConfiguration(ConfigurationHelper.BuildConfiguration(builderAction: builder => + { + builder.AddUserSecrets(UserSecretsId); + })); + + // var configuration = context.Services.GetConfiguration(); + // _connectionString = configuration["Azure:ConnectionString"]; + // + // Configure(options => + // { + // options.Containers.ConfigureAll((containerName, containerConfiguration) => + // { + // containerConfiguration.UseAzure(azure => + // { + // azure.ConnectionString = _connectionString; + // azure.ContainerName = _randomContainerName; + // azure.CreateContainerIfNotExists = true; + // }); + // }); + // }); + } + + public override void OnApplicationShutdown(ApplicationShutdownContext context) + { + + } +} \ No newline at end of file diff --git a/framework/test/Volo.Abp.BlobStoring.Google.Tests/Volo/Abp/BlobStoring/Google/DefaultGoogleBlobNamingNormalizerProvider_Tests.cs b/framework/test/Volo.Abp.BlobStoring.Google.Tests/Volo/Abp/BlobStoring/Google/DefaultGoogleBlobNamingNormalizerProvider_Tests.cs new file mode 100644 index 0000000000..cfe43f8bcf --- /dev/null +++ b/framework/test/Volo.Abp.BlobStoring.Google.Tests/Volo/Abp/BlobStoring/Google/DefaultGoogleBlobNamingNormalizerProvider_Tests.cs @@ -0,0 +1,94 @@ +using Shouldly; +using Xunit; + +namespace Volo.Abp.BlobStoring.Google; + +public class DefaultGoogleBlobNamingNormalizerProvider_Tests: AbpBlobStoringGoogleTestCommonBase +{ + private readonly IBlobNamingNormalizer _blobNamingNormalizer; + + public DefaultGoogleBlobNamingNormalizerProvider_Tests() + { + _blobNamingNormalizer = GetRequiredService(); + } + + [Fact] + public void NormalizeContainerName_Lowercase() + { + var filename = "ThisIsMyContainerName"; + filename = _blobNamingNormalizer.NormalizeContainerName(filename); + filename.ShouldBe("thisismycontainername"); + } + + [Fact] + public void NormalizeContainerName_Only_Letters_Numbers_Dash_Dots_Underscores() + { + var filename = ",./this-i,/s-my-c,/ont,/ai+*/=!@#$n^&*er.name+/"; + filename = _blobNamingNormalizer.NormalizeContainerName(filename); + filename.ShouldBe("this-is-my-container.name"); + } + + [Fact] + public void NormalizeContainerName_Only_Start_With_Letters_Or_Numbers() + { + var filename = "-this.--is-.-.-my--_container---name-"; + filename = _blobNamingNormalizer.NormalizeContainerName(filename); + filename.ShouldBe("this.--is-.-.-my--_container---name"); + + filename = ".this.--is-.-.-my--container---name0._"; + filename = _blobNamingNormalizer.NormalizeContainerName(filename); + filename.ShouldBe("this.--is-.-.-my--container---name0"); + } + + [Fact] + public void NormalizeContainerName_Min_Length() + { + var filename = "a"; + filename = _blobNamingNormalizer.NormalizeContainerName(filename); + filename.Length.ShouldBeGreaterThanOrEqualTo(3); + } + + [Fact] + public void NormalizeContainerName_Max_Length() + { + var filename = "abpabpabpabpabpabpabpabpabpabpabpabpabpabpabpabpabpabpabpabpabpabpabp"; + filename = _blobNamingNormalizer.NormalizeContainerName(filename); + filename.Length.ShouldBeLessThanOrEqualTo(63); + } + + [Fact] + public void NormalizeContainerName_Must_Not_Be_Ip_Address() + { + var filename = "192.168.5.4"; + filename = _blobNamingNormalizer.NormalizeContainerName(filename); + filename.ShouldBe("000"); + + filename = "a.192.168.5.4"; + filename = _blobNamingNormalizer.NormalizeContainerName(filename); + filename.ShouldBe("a.192.168.5.4"); + } + + [Fact] + public void NormalizeContainerName_Dots() + { + var filename = ".this..is.my.container....name."; + filename = _blobNamingNormalizer.NormalizeContainerName(filename); + filename.ShouldBe("this.is.my.container.name"); + } + + [Fact] + public void NormalizeContainerName_DNS() + { + var filename = "bucket...example..com"; + filename = _blobNamingNormalizer.NormalizeContainerName(filename); + filename.ShouldBe("bucket.example.com"); + } + + [Fact] + public void NormalizeContainerName_Max_Length_Dash() + { + var filename = "-this-is-my-container-name-abpabpabpabpabpabpabpabp-a-b-p-a--b-p-"; + filename = _blobNamingNormalizer.NormalizeContainerName(filename); + filename.ShouldBe("this-is-my-container-name-abpabpabpabpabpabpabpabp-a-b-p-a--b"); + } +} From 4ec032ecb05ebdcb77d875de89dd896655975c1e Mon Sep 17 00:00:00 2001 From: sumeyyeKurtulus Date: Wed, 4 Sep 2024 14:27:27 +0300 Subject: [PATCH 43/55] add: `ng-zorro-antd-tree` bundle for lepton-x theme changes --- .../schematics/src/commands/change-theme/style-map.ts | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/npm/ng-packs/packages/schematics/src/commands/change-theme/style-map.ts b/npm/ng-packs/packages/schematics/src/commands/change-theme/style-map.ts index 0b9f724e57..4bf4300a2b 100644 --- a/npm/ng-packs/packages/schematics/src/commands/change-theme/style-map.ts +++ b/npm/ng-packs/packages/schematics/src/commands/change-theme/style-map.ts @@ -196,6 +196,11 @@ styleMap.set(ThemeOptionsEnum.LeptonX, [ inject: true, bundleName: 'bootstrap-icons', }, + { + input: 'node_modules/ng-zorro-antd/tree/style/index.min.css', + inject: false, + bundleName: 'ng-zorro-antd-tree', + }, ]); styleMap.set(ThemeOptionsEnum.LeptonXLite, [ { From fdcba83c60e2306f8dddd600f1ff088042bd7285 Mon Sep 17 00:00:00 2001 From: liangshiwei Date: Thu, 5 Sep 2024 13:51:09 +0800 Subject: [PATCH 44/55] add unit tests --- .../BlobStoring/Google/GoogleBlobProvider.cs | 62 ++++++++++++----- .../Google/AbpBlobStoringGoogleTestModule.cs | 66 ++++++++++++++----- .../Google/GoogleBlobContainer_Tests.cs | 13 ++++ .../Google/GoogleBlobNameCalculator_Tests.cs | 56 ++++++++++++++++ 4 files changed, 162 insertions(+), 35 deletions(-) create mode 100644 framework/test/Volo.Abp.BlobStoring.Google.Tests/Volo/Abp/BlobStoring/Google/GoogleBlobContainer_Tests.cs create mode 100644 framework/test/Volo.Abp.BlobStoring.Google.Tests/Volo/Abp/BlobStoring/Google/GoogleBlobNameCalculator_Tests.cs diff --git a/framework/src/Volo.Abp.BlobStoring.Google/Volo/Abp/BlobStoring/Google/GoogleBlobProvider.cs b/framework/src/Volo.Abp.BlobStoring.Google/Volo/Abp/BlobStoring/Google/GoogleBlobProvider.cs index 006923996f..dc5eefc1ee 100644 --- a/framework/src/Volo.Abp.BlobStoring.Google/Volo/Abp/BlobStoring/Google/GoogleBlobProvider.cs +++ b/framework/src/Volo.Abp.BlobStoring.Google/Volo/Abp/BlobStoring/Google/GoogleBlobProvider.cs @@ -31,17 +31,13 @@ public class GoogleBlobProvider : BlobProviderBase, ITransientDependency { throw new BlobAlreadyExistsException($"Saving BLOB '{args.BlobName}' does already exists in the container '{GetContainerName(args)}'! Set {nameof(args.OverrideExisting)} if it should be overwritten."); } - + if (configuration.CreateContainerIfNotExists) { await CreateContainerIfNotExists(args); } - await storageClient.UploadObjectAsync(containerName, blobName, contentType: "application/octet-stream", args.BlobStream, - new UploadObjectOptions - { - IfGenerationMatch = !args.OverrideExisting ? 0 : 1 - }); + await storageClient.UploadObjectAsync(containerName, blobName, contentType: "application/octet-stream", args.BlobStream); } public async override Task DeleteAsync(BlobProviderDeleteArgs args) @@ -49,8 +45,16 @@ public class GoogleBlobProvider : BlobProviderBase, ITransientDependency var storageClient = await GetStorageClientClientAsync(args); var blobName = GoogleBlobNameCalculator.Calculate(args); var containerName = GetContainerName(args); - - await storageClient.DeleteObjectAsync(containerName, blobName); + + try + { + await storageClient.DeleteObjectAsync(containerName, blobName); + } + catch (GoogleApiException e) when (e.HttpStatusCode == HttpStatusCode.NotFound) + { + return true; + } + return true; } @@ -66,13 +70,12 @@ public class GoogleBlobProvider : BlobProviderBase, ITransientDependency var storageClient = await GetStorageClientClientAsync(args); var blobName = GoogleBlobNameCalculator.Calculate(args); var containerName = GetContainerName(args); - - var @object = await storageClient.GetObjectAsync(containerName, blobName); - if (@object == null) + + if(!await BlobExistsAsync(args, blobName)) { return null; } - + var stream = new MemoryStream(); await storageClient.DownloadObjectAsync(containerName, blobName, stream); @@ -92,23 +95,48 @@ public class GoogleBlobProvider : BlobProviderBase, ITransientDependency protected virtual async Task BlobExistsAsync(BlobProviderArgs args, string blobName) { - var @object = await (await GetStorageClientClientAsync(args)).GetObjectAsync(args.ContainerName, blobName); - - return @object != null; + var storageClient = await GetStorageClientClientAsync(args); + if(!await ContainerExistsAsync(args, storageClient)) + { + return false; + } + + try + { + await storageClient.GetObjectAsync(GetContainerName(args), blobName); + } + catch (GoogleApiException e) when (e.HttpStatusCode == HttpStatusCode.NotFound) + { + return false; + } + + return true; } protected virtual async Task CreateContainerIfNotExists(BlobProviderArgs args) { var storageClient = await GetStorageClientClientAsync(args); var configuration = args.Configuration.GetGoogleConfiguration(); + if(await ContainerExistsAsync(args, storageClient)) + { + return; + } + + await storageClient.CreateBucketAsync(configuration.ProjectId, GetContainerName(args)); + } + + protected virtual async Task ContainerExistsAsync(BlobProviderArgs args, StorageClient client) + { try { - await storageClient.GetBucketAsync(args.ContainerName); + await client.GetBucketAsync(GetContainerName(args)); } catch (GoogleApiException e) when (e.HttpStatusCode == HttpStatusCode.NotFound) { - await storageClient.CreateBucketAsync(configuration.ProjectId, GetContainerName(args)); + return false; } + + return true; } protected virtual async Task GetStorageClientClientAsync(BlobProviderArgs args) diff --git a/framework/test/Volo.Abp.BlobStoring.Google.Tests/Volo/Abp/BlobStoring/Google/AbpBlobStoringGoogleTestModule.cs b/framework/test/Volo.Abp.BlobStoring.Google.Tests/Volo/Abp/BlobStoring/Google/AbpBlobStoringGoogleTestModule.cs index 35345613ac..cca775a04f 100644 --- a/framework/test/Volo.Abp.BlobStoring.Google.Tests/Volo/Abp/BlobStoring/Google/AbpBlobStoringGoogleTestModule.cs +++ b/framework/test/Volo.Abp.BlobStoring.Google.Tests/Volo/Abp/BlobStoring/Google/AbpBlobStoringGoogleTestModule.cs @@ -1,4 +1,7 @@ using System; +using System.Threading.Tasks; +using Google.Apis.Auth.OAuth2; +using Google.Cloud.Storage.V1; using Microsoft.Extensions.Configuration; using Microsoft.Extensions.DependencyInjection; using Volo.Abp.Modularity; @@ -25,9 +28,11 @@ public class AbpBlobStoringGoogleTestModule : AbpModule { private const string UserSecretsId = "9f0d2c00-80c1-435b-bfab-2c39c8249091"; - private string _connectionString; + private string _clientEmail; + private string _projectId; + private string _privateKey; - private readonly string _randomContainerName = "abp-azure-test-container-" + Guid.NewGuid().ToString("N"); + private readonly string _randomContainerName = "abp-test-container-" + Guid.NewGuid().ToString("N"); public override void ConfigureServices(ServiceConfigurationContext context) { @@ -36,25 +41,50 @@ public class AbpBlobStoringGoogleTestModule : AbpModule builder.AddUserSecrets(UserSecretsId); })); - // var configuration = context.Services.GetConfiguration(); - // _connectionString = configuration["Azure:ConnectionString"]; - // - // Configure(options => - // { - // options.Containers.ConfigureAll((containerName, containerConfiguration) => - // { - // containerConfiguration.UseAzure(azure => - // { - // azure.ConnectionString = _connectionString; - // azure.ContainerName = _randomContainerName; - // azure.CreateContainerIfNotExists = true; - // }); - // }); - // }); + var configuration = context.Services.GetConfiguration(); + _clientEmail = configuration["Google:ClientEmail"]; + _projectId = configuration["Google:ProjectId"]; + _privateKey = configuration["Google:PrivateKey"]; + + Configure(options => + { + options.Containers.ConfigureAll((containerName, containerConfiguration) => + { + containerConfiguration.UseGoogle(google => + { + google.ClientEmail = _clientEmail; + google.ProjectId = _projectId = "wide-origin-296910"; + google.PrivateKey = _privateKey; + google.ContainerName = _randomContainerName; + google.CreateContainerIfNotExists = true; + }); + }); + }); } public override void OnApplicationShutdown(ApplicationShutdownContext context) { - + var googleCredential = GoogleCredential.FromServiceAccountCredential( + new ServiceAccountCredential( + new ServiceAccountCredential.Initializer(_clientEmail) + { + ProjectId = _projectId + } + .FromPrivateKey(_privateKey) + )); + + var client = StorageClient.Create(googleCredential); + + try + { + client.DeleteBucket(_randomContainerName, new DeleteBucketOptions + { + DeleteObjects = true + }); + } + catch (Exception e) + { + // ignored + } } } \ No newline at end of file diff --git a/framework/test/Volo.Abp.BlobStoring.Google.Tests/Volo/Abp/BlobStoring/Google/GoogleBlobContainer_Tests.cs b/framework/test/Volo.Abp.BlobStoring.Google.Tests/Volo/Abp/BlobStoring/Google/GoogleBlobContainer_Tests.cs new file mode 100644 index 0000000000..6a4405f7cd --- /dev/null +++ b/framework/test/Volo.Abp.BlobStoring.Google.Tests/Volo/Abp/BlobStoring/Google/GoogleBlobContainer_Tests.cs @@ -0,0 +1,13 @@ +using Xunit; + +namespace Volo.Abp.BlobStoring.Google; + +/* +//Please set the correct connection string in secrets.json and continue the test. +public class GoogleBlobContainer_Tests : BlobContainer_Tests +{ + public GoogleBlobContainer_Tests() + { + } +} +*/ diff --git a/framework/test/Volo.Abp.BlobStoring.Google.Tests/Volo/Abp/BlobStoring/Google/GoogleBlobNameCalculator_Tests.cs b/framework/test/Volo.Abp.BlobStoring.Google.Tests/Volo/Abp/BlobStoring/Google/GoogleBlobNameCalculator_Tests.cs new file mode 100644 index 0000000000..dbdc95c6f4 --- /dev/null +++ b/framework/test/Volo.Abp.BlobStoring.Google.Tests/Volo/Abp/BlobStoring/Google/GoogleBlobNameCalculator_Tests.cs @@ -0,0 +1,56 @@ +using System; +using Shouldly; +using Volo.Abp.MultiTenancy; +using Xunit; + +namespace Volo.Abp.BlobStoring.Google; + +public class GoogleBlobNameCalculator_Tests : AbpBlobStoringGoogleTestCommonBase +{ + private readonly IGoogleBlobNameCalculator _calculator; + private readonly ICurrentTenant _currentTenant; + + private const string AzureContainerName = "/"; + private const string AzureSeparator = "/"; + + public GoogleBlobNameCalculator_Tests() + { + _calculator = GetRequiredService(); + _currentTenant = GetRequiredService(); + } + + [Fact] + public void Default_Settings() + { + _calculator.Calculate( + GetArgs("my-container", "my-blob") + ).ShouldBe($"host{AzureSeparator}my-blob"); + } + + [Fact] + public void Default_Settings_With_TenantId() + { + var tenantId = Guid.NewGuid(); + + using (_currentTenant.Change(tenantId)) + { + _calculator.Calculate( + GetArgs("my-container", "my-blob") + ).ShouldBe($"tenants{AzureSeparator}{tenantId:D}{AzureSeparator}my-blob"); + } + } + + private static BlobProviderArgs GetArgs( + string containerName, + string blobName) + { + return new BlobProviderGetArgs( + containerName, + new BlobContainerConfiguration().UseGoogle(x => + { + x.ContainerName = containerName; + }), + blobName + ); + } +} \ No newline at end of file From acbaaa221a9008cba8ea3bcc3a08d51f8f6ef231 Mon Sep 17 00:00:00 2001 From: selman koc <64414348+skoc10@users.noreply.github.com> Date: Thu, 5 Sep 2024 09:01:52 +0300 Subject: [PATCH 45/55] Update common.props --- common.props | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/common.props b/common.props index fd23245b0b..befbbe384f 100644 --- a/common.props +++ b/common.props @@ -1,8 +1,8 @@ latest - 8.3.0-rc.3 - 3.3.0-rc.3 + 8.3.0 + 3.3.0 $(NoWarn);CS1591;CS0436 https://abp.io/assets/abp_nupkg.png https://abp.io/ From 078643680c22d9e2a23be500b2871c25d1274926 Mon Sep 17 00:00:00 2001 From: maliming Date: Thu, 5 Sep 2024 14:27:01 +0800 Subject: [PATCH 46/55] Backup `ExtraProperties` during `Reload` entry. Because `Reload` will not convert the `ExtraProperties` from the JSON string to the `Dictionary`. --- .../Abp/EntityFrameworkCore/AbpDbContext.cs | 12 ++++++++++ .../Domain/ExtraProperties_Tests.cs | 22 +++++++++++++++++++ .../Volo/Abp/TestApp/Domain/City.cs | 4 +++- .../TestApp/Testing/ConcurrencyStamp_Tests.cs | 3 ++- 4 files changed, 39 insertions(+), 2 deletions(-) diff --git a/framework/src/Volo.Abp.EntityFrameworkCore/Volo/Abp/EntityFrameworkCore/AbpDbContext.cs b/framework/src/Volo.Abp.EntityFrameworkCore/Volo/Abp/EntityFrameworkCore/AbpDbContext.cs index c4bd75cca2..c471d89acf 100644 --- a/framework/src/Volo.Abp.EntityFrameworkCore/Volo/Abp/EntityFrameworkCore/AbpDbContext.cs +++ b/framework/src/Volo.Abp.EntityFrameworkCore/Volo/Abp/EntityFrameworkCore/AbpDbContext.cs @@ -614,7 +614,19 @@ public abstract class AbpDbContext : DbContext, IAbpEfCoreDbContext, return; } + ExtraPropertyDictionary? originalExtraProperties = null; + if (entry.Entity is IHasExtraProperties) + { + originalExtraProperties = entry.OriginalValues.GetValue(nameof(IHasExtraProperties.ExtraProperties)); + } + entry.Reload(); + + if (entry.Entity is IHasExtraProperties) + { + ObjectHelper.TrySetProperty(entry.Entity.As(), x => x.ExtraProperties, () => originalExtraProperties); + } + ObjectHelper.TrySetProperty(entry.Entity.As(), x => x.IsDeleted, () => true); SetDeletionAuditProperties(entry); } diff --git a/framework/test/Volo.Abp.EntityFrameworkCore.Tests/Volo/Abp/EntityFrameworkCore/Domain/ExtraProperties_Tests.cs b/framework/test/Volo.Abp.EntityFrameworkCore.Tests/Volo/Abp/EntityFrameworkCore/Domain/ExtraProperties_Tests.cs index 42b6ca2a67..59eaa367fa 100644 --- a/framework/test/Volo.Abp.EntityFrameworkCore.Tests/Volo/Abp/EntityFrameworkCore/Domain/ExtraProperties_Tests.cs +++ b/framework/test/Volo.Abp.EntityFrameworkCore.Tests/Volo/Abp/EntityFrameworkCore/Domain/ExtraProperties_Tests.cs @@ -1,6 +1,7 @@ using System; using System.Linq; using System.Threading.Tasks; +using Microsoft.Extensions.DependencyInjection; using Shouldly; using Volo.Abp.Data; using Volo.Abp.Domain.Repositories; @@ -59,6 +60,27 @@ public class ExtraProperties_Tests : ExtraProperties_Tests("PhoneCode").ShouldBe("42"); + + await CityRepository.DeleteAsync(london); + + london = await CityRepository.FindByNameAsync("London"); + london.ShouldBeNull(); + + using (var uow = ServiceProvider.GetRequiredService().Disable()) + { + london = await CityRepository.FindByNameAsync("London"); + london.IsDeleted.ShouldBeTrue(); + london.HasProperty("PhoneCode").ShouldBeTrue(); + london.GetProperty("PhoneCode").ShouldBe("42"); + } + } + public enum Color { Red = 0, diff --git a/framework/test/Volo.Abp.TestApp/Volo/Abp/TestApp/Domain/City.cs b/framework/test/Volo.Abp.TestApp/Volo/Abp/TestApp/Domain/City.cs index 15ca147d91..50c3d32458 100644 --- a/framework/test/Volo.Abp.TestApp/Volo/Abp/TestApp/Domain/City.cs +++ b/framework/test/Volo.Abp.TestApp/Volo/Abp/TestApp/Domain/City.cs @@ -5,12 +5,14 @@ using Volo.Abp.Domain.Entities; namespace Volo.Abp.TestApp.Domain; -public class City : AggregateRoot +public class City : AggregateRoot, ISoftDelete { public string Name { get; set; } public ICollection Districts { get; set; } + public bool IsDeleted { get; set; } + private City() { diff --git a/framework/test/Volo.Abp.TestApp/Volo/Abp/TestApp/Testing/ConcurrencyStamp_Tests.cs b/framework/test/Volo.Abp.TestApp/Volo/Abp/TestApp/Testing/ConcurrencyStamp_Tests.cs index 2f9f8c1257..2906431ff1 100644 --- a/framework/test/Volo.Abp.TestApp/Volo/Abp/TestApp/Testing/ConcurrencyStamp_Tests.cs +++ b/framework/test/Volo.Abp.TestApp/Volo/Abp/TestApp/Testing/ConcurrencyStamp_Tests.cs @@ -1,5 +1,6 @@ using System.Threading.Tasks; using Volo.Abp.Data; +using Volo.Abp.Domain.Repositories; using Volo.Abp.Modularity; using Volo.Abp.TestApp.Domain; using Xunit; @@ -49,7 +50,7 @@ public abstract class ConcurrencyStamp_Tests : TestAppTestBase(async () => { - await CityRepository.DeleteAsync(london1); + await CityRepository.HardDeleteAsync(london1); }); } } From df1705f592b14d76446724a5c4cc178446509e49 Mon Sep 17 00:00:00 2001 From: EngincanV Date: Thu, 5 Sep 2024 09:58:09 +0300 Subject: [PATCH 47/55] Refactoring --- .../BlobStoring/Google/DefaultGoogleBlobNameCalculator.cs | 2 +- .../Google/GoogleBlobContainerConfigurationExtensions.cs | 4 ++-- .../Abp/BlobStoring/Google/GoogleBlobNamingNormalizer.cs | 4 ++-- .../Volo/Abp/BlobStoring/Google/GoogleBlobProvider.cs | 3 +-- .../BlobStoring/Google/AbpBlobStoringGoogleTestModule.cs | 2 +- .../BlobStoring/Google/GoogleBlobNameCalculator_Tests.cs | 8 ++++---- 6 files changed, 11 insertions(+), 12 deletions(-) diff --git a/framework/src/Volo.Abp.BlobStoring.Google/Volo/Abp/BlobStoring/Google/DefaultGoogleBlobNameCalculator.cs b/framework/src/Volo.Abp.BlobStoring.Google/Volo/Abp/BlobStoring/Google/DefaultGoogleBlobNameCalculator.cs index 90a7e7e7c4..fec52b44d1 100644 --- a/framework/src/Volo.Abp.BlobStoring.Google/Volo/Abp/BlobStoring/Google/DefaultGoogleBlobNameCalculator.cs +++ b/framework/src/Volo.Abp.BlobStoring.Google/Volo/Abp/BlobStoring/Google/DefaultGoogleBlobNameCalculator.cs @@ -3,7 +3,7 @@ using Volo.Abp.MultiTenancy; namespace Volo.Abp.BlobStoring.Google; -public class DefaultGoogleBlobNameCalculator: IGoogleBlobNameCalculator, ITransientDependency +public class DefaultGoogleBlobNameCalculator : IGoogleBlobNameCalculator, ITransientDependency { protected ICurrentTenant CurrentTenant { get; } diff --git a/framework/src/Volo.Abp.BlobStoring.Google/Volo/Abp/BlobStoring/Google/GoogleBlobContainerConfigurationExtensions.cs b/framework/src/Volo.Abp.BlobStoring.Google/Volo/Abp/BlobStoring/Google/GoogleBlobContainerConfigurationExtensions.cs index b99fd3af6a..3c0efd4c86 100644 --- a/framework/src/Volo.Abp.BlobStoring.Google/Volo/Abp/BlobStoring/Google/GoogleBlobContainerConfigurationExtensions.cs +++ b/framework/src/Volo.Abp.BlobStoring.Google/Volo/Abp/BlobStoring/Google/GoogleBlobContainerConfigurationExtensions.cs @@ -12,12 +12,12 @@ public static class GoogleBlobContainerConfigurationExtensions public static BlobContainerConfiguration UseGoogle( this BlobContainerConfiguration containerConfiguration, - Action azureConfigureAction) + Action googleConfigureAction) { containerConfiguration.ProviderType = typeof(GoogleBlobProvider); containerConfiguration.NamingNormalizers.TryAdd(); - azureConfigureAction(new GoogleBlobProviderConfiguration(containerConfiguration)); + googleConfigureAction(new GoogleBlobProviderConfiguration(containerConfiguration)); return containerConfiguration; } diff --git a/framework/src/Volo.Abp.BlobStoring.Google/Volo/Abp/BlobStoring/Google/GoogleBlobNamingNormalizer.cs b/framework/src/Volo.Abp.BlobStoring.Google/Volo/Abp/BlobStoring/Google/GoogleBlobNamingNormalizer.cs index 68f4318acb..8dc840d805 100644 --- a/framework/src/Volo.Abp.BlobStoring.Google/Volo/Abp/BlobStoring/Google/GoogleBlobNamingNormalizer.cs +++ b/framework/src/Volo.Abp.BlobStoring.Google/Volo/Abp/BlobStoring/Google/GoogleBlobNamingNormalizer.cs @@ -5,7 +5,7 @@ using Volo.Abp.Localization; namespace Volo.Abp.BlobStoring.Google; -public class GoogleBlobNamingNormalizer: IBlobNamingNormalizer, ITransientDependency +public class GoogleBlobNamingNormalizer : IBlobNamingNormalizer, ITransientDependency { /// /// https://cloud.google.com/storage/docs/buckets#naming @@ -83,7 +83,7 @@ public class GoogleBlobNamingNormalizer: IBlobNamingNormalizer, ITransientDepend if (!char.IsLetterOrDigit(containerName[0])) { containerName = containerName.Substring(1); - return RemoveInvalidStartEndCharacters( containerName); + return RemoveInvalidStartEndCharacters(containerName); } if (!char.IsLetterOrDigit(containerName[containerName.Length - 1])) diff --git a/framework/src/Volo.Abp.BlobStoring.Google/Volo/Abp/BlobStoring/Google/GoogleBlobProvider.cs b/framework/src/Volo.Abp.BlobStoring.Google/Volo/Abp/BlobStoring/Google/GoogleBlobProvider.cs index dc5eefc1ee..6f9b5c280e 100644 --- a/framework/src/Volo.Abp.BlobStoring.Google/Volo/Abp/BlobStoring/Google/GoogleBlobProvider.cs +++ b/framework/src/Volo.Abp.BlobStoring.Google/Volo/Abp/BlobStoring/Google/GoogleBlobProvider.cs @@ -27,7 +27,7 @@ public class GoogleBlobProvider : BlobProviderBase, ITransientDependency var blobName = GoogleBlobNameCalculator.Calculate(args); var containerName = GetContainerName(args); - if(await BlobExistsAsync(args, blobName) && !args.OverrideExisting) + if (await BlobExistsAsync(args, blobName) && !args.OverrideExisting) { throw new BlobAlreadyExistsException($"Saving BLOB '{args.BlobName}' does already exists in the container '{GetContainerName(args)}'! Set {nameof(args.OverrideExisting)} if it should be overwritten."); } @@ -54,7 +54,6 @@ public class GoogleBlobProvider : BlobProviderBase, ITransientDependency { return true; } - return true; } diff --git a/framework/test/Volo.Abp.BlobStoring.Google.Tests/Volo/Abp/BlobStoring/Google/AbpBlobStoringGoogleTestModule.cs b/framework/test/Volo.Abp.BlobStoring.Google.Tests/Volo/Abp/BlobStoring/Google/AbpBlobStoringGoogleTestModule.cs index cca775a04f..be2de91a38 100644 --- a/framework/test/Volo.Abp.BlobStoring.Google.Tests/Volo/Abp/BlobStoring/Google/AbpBlobStoringGoogleTestModule.cs +++ b/framework/test/Volo.Abp.BlobStoring.Google.Tests/Volo/Abp/BlobStoring/Google/AbpBlobStoringGoogleTestModule.cs @@ -10,7 +10,7 @@ namespace Volo.Abp.BlobStoring.Google; /// -/// This module will not try to connect to azure. +/// This module will not try to connect to Google Cloud Storage. /// [DependsOn( typeof(AbpBlobStoringGoogleModule), diff --git a/framework/test/Volo.Abp.BlobStoring.Google.Tests/Volo/Abp/BlobStoring/Google/GoogleBlobNameCalculator_Tests.cs b/framework/test/Volo.Abp.BlobStoring.Google.Tests/Volo/Abp/BlobStoring/Google/GoogleBlobNameCalculator_Tests.cs index dbdc95c6f4..781900ad81 100644 --- a/framework/test/Volo.Abp.BlobStoring.Google.Tests/Volo/Abp/BlobStoring/Google/GoogleBlobNameCalculator_Tests.cs +++ b/framework/test/Volo.Abp.BlobStoring.Google.Tests/Volo/Abp/BlobStoring/Google/GoogleBlobNameCalculator_Tests.cs @@ -10,8 +10,8 @@ public class GoogleBlobNameCalculator_Tests : AbpBlobStoringGoogleTestCommonBase private readonly IGoogleBlobNameCalculator _calculator; private readonly ICurrentTenant _currentTenant; - private const string AzureContainerName = "/"; - private const string AzureSeparator = "/"; + private const string GoogleContainerName = "/"; + private const string GoogleSeparator = "/"; public GoogleBlobNameCalculator_Tests() { @@ -24,7 +24,7 @@ public class GoogleBlobNameCalculator_Tests : AbpBlobStoringGoogleTestCommonBase { _calculator.Calculate( GetArgs("my-container", "my-blob") - ).ShouldBe($"host{AzureSeparator}my-blob"); + ).ShouldBe($"host{GoogleSeparator}my-blob"); } [Fact] @@ -36,7 +36,7 @@ public class GoogleBlobNameCalculator_Tests : AbpBlobStoringGoogleTestCommonBase { _calculator.Calculate( GetArgs("my-container", "my-blob") - ).ShouldBe($"tenants{AzureSeparator}{tenantId:D}{AzureSeparator}my-blob"); + ).ShouldBe($"tenants{GoogleSeparator}{tenantId:D}{GoogleSeparator}my-blob"); } } From 1ecd3f632c56a49c1cea6651e9f6e5145625d06a Mon Sep 17 00:00:00 2001 From: liangshiwei Date: Thu, 5 Sep 2024 16:47:49 +0800 Subject: [PATCH 48/55] Add BLOB Storing Google Provider document --- .../infrastructure/blob-storing/google.md | 70 +++++++++++++++++++ .../infrastructure/blob-storing/index.md | 1 + .../BlobStoring/Google/GoogleBlobProvider.cs | 5 ++ .../Google/GoogleBlobProviderConfiguration.cs | 9 +++ .../GoogleBlobProviderConfigurationNames.cs | 1 + .../Google/AbpBlobStoringGoogleTestModule.cs | 2 +- 6 files changed, 87 insertions(+), 1 deletion(-) create mode 100644 docs/en/framework/infrastructure/blob-storing/google.md diff --git a/docs/en/framework/infrastructure/blob-storing/google.md b/docs/en/framework/infrastructure/blob-storing/google.md new file mode 100644 index 0000000000..a90152b4f0 --- /dev/null +++ b/docs/en/framework/infrastructure/blob-storing/google.md @@ -0,0 +1,70 @@ +# BLOB Storing Google Provider + +BLOB Storing Google Provider can store BLOBs in [Google Cloud Storage](https://cloud.google.com/storage). + +> Read the [BLOB Storing document](../blob-storing) to understand how to use the BLOB storing system. This document only covers how to configure containers to use a Google Cloud Storage as the storage provider. + +## Installation + +Use the ABP CLI to add [Volo.Abp.BlobStoring.Google](https://www.nuget.org/packages/Volo.Abp.BlobStoring.Google) NuGet package to your project: + +* Install the [ABP CLI](../../../cli) if you haven't installed before. +* Open a command line (terminal) in the directory of the `.csproj` file you want to add the `Volo.Abp.BlobStoring.Google` package. +* Run `abp add-package Volo.Abp.BlobStoring.Google` command. + +If you want to do it manually, install the [Volo.Abp.BlobStoring.Google](https://www.nuget.org/packages/Volo.Abp.BlobStoring.Google) NuGet package to your project and add `[DependsOn(typeof(AbpBlobStoringGoogleModule))]` to the [ABP module](../../architecture/modularity/basics.md) class inside your project. + +## Configuration + +Configuration is done in the `ConfigureServices` method of your [module](../../architecture/modularity/basics.md) class, as explained in the [BLOB Storing document](../blob-storing). + +**Example: Configure to use the Google storage provider by default** + +````csharp +Configure(options => +{ + options.Containers.ConfigureDefault(container => + { + container.UseGoogle(google => + { + google.ClientEmail = "your coogle client email"; + google.ProjectId = "your coogle project id"; + google.PrivateKey = "your coogle private key"; + google.Scopes = "your coogle scopes"; + google.ContainerName = "your coogle container name"; + google.CreateContainerIfNotExists = true; + //google.UseApplicationDefaultCredentials = true; // If you want to use application default credentials + }); + }); +}); +```` + +> See the [BLOB Storing document](../blob-storing) to learn how to configure this provider for a specific container. + +### Options + +* **ClientEmail** (string): The client email of the Google service account. You can create a service account and get the client email. Please refer to Google documentation: https://cloud.google.com/iam/docs/service-account-overview +* **ProjectId** (string): The project ID of the Google service account. +* **PrivateKey** (string): The private key of the Google service account. You can create a service account and get the private key. Please refer to Google documentation: https://cloud.google.com/iam/docs/keys-create-delete +* **Scopes** (string): The scopes of the Google service account. +* **UseApplicationDefaultCredentials** (bool): If `true`, it uses the application default credentials(ADC). Default value is `false`. Please refer to Google documentation: https://cloud.google.com/docs/authentication/provide-credentials-adc +* **ContainerName** (string): You can specify the container name in Google. If this is not specified, it uses the name of the BLOB container defined with the `BlobContainerName` attribute (see the [BLOB storing document](../blob-storing)). Please note that Google has some **rules for naming containers**. A container name must be a valid DNS name, conforming to the [following naming rules](https://docs.microsoft.com/en-us/rest/api/storageservices/naming-and-referencing-containers--blobs--and-metadata#container-names): + * Container names must start or end with a letter or number, and can contain only letters, numbers, and the dash (-) character. + * Every dash (-) character must be immediately preceded and followed by a letter or number; consecutive dashes are not permitted in container names. + * All letters in a container name must be **lowercase**. + * Container names must be from **3** through **63** characters long. +* **CreateContainerIfNotExists** (bool): Default value is `false`, If a container does not exist in Google, `GoogleBlobProvider` will try to create it. + + +## Google Blob Name Calculator + +Google Blob Provider organizes BLOB name and implements some conventions. The full name of a BLOB is determined by the following rules by default: + +* Appends `host` string if [current tenant](../../architecture/multi-tenancy) is `null` (or multi-tenancy is disabled for the container - see the [BLOB Storing document](../blob-storing) to learn how to disable multi-tenancy for a container). +* Appends `tenants/` string if current tenant is not `null`. +* Appends the BLOB name. + +## Other Services + +* `GoogleBlobProvider` is the main service that implements the Google BLOB storage provider, if you want to override/replace it via [dependency injection](../../fundamentals/dependency-injection.md) (don't replace `IBlobProvider` interface, but replace `GoogleBlobProvider` class). +* `IGoogleBlobNameCalculator` is used to calculate the full BLOB name (that is explained above). It is implemented by the `DefaultGoogleBlobNameCalculator` by default. diff --git a/docs/en/framework/infrastructure/blob-storing/index.md b/docs/en/framework/infrastructure/blob-storing/index.md index 61a05c65c0..f95a90e410 100644 --- a/docs/en/framework/infrastructure/blob-storing/index.md +++ b/docs/en/framework/infrastructure/blob-storing/index.md @@ -22,6 +22,7 @@ The ABP has already the following storage provider implementations: * [Aliyun](./aliyun.md): Stores BLOBs on the [Aliyun Storage Service](https://help.aliyun.com/product/31815.html). * [Minio](./minio.md): Stores BLOBs on the [MinIO Object storage](https://min.io/). * [Aws](./aws.md): Stores BLOBs on the [Amazon Simple Storage Service](https://aws.amazon.com/s3/). +* [Google](./google.md): Stores BLOBs on the [Google Cloud Storage](https://cloud.google.com/storage). More providers will be implemented by the time. You can [request](https://github.com/abpframework/abp/issues/new) it for your favorite provider or [create it yourself](./custom-provider.md) and [contribute](../../../contribution) to the ABP. diff --git a/framework/src/Volo.Abp.BlobStoring.Google/Volo/Abp/BlobStoring/Google/GoogleBlobProvider.cs b/framework/src/Volo.Abp.BlobStoring.Google/Volo/Abp/BlobStoring/Google/GoogleBlobProvider.cs index 6f9b5c280e..cd5dc21d7f 100644 --- a/framework/src/Volo.Abp.BlobStoring.Google/Volo/Abp/BlobStoring/Google/GoogleBlobProvider.cs +++ b/framework/src/Volo.Abp.BlobStoring.Google/Volo/Abp/BlobStoring/Google/GoogleBlobProvider.cs @@ -141,6 +141,11 @@ public class GoogleBlobProvider : BlobProviderBase, ITransientDependency protected virtual async Task GetStorageClientClientAsync(BlobProviderArgs args) { var configuration = args.Configuration.GetGoogleConfiguration(); + if (configuration.UseApplicationDefaultCredentials) + { + return await StorageClient.CreateAsync(); + } + var googleCredential = GoogleCredential.FromServiceAccountCredential( new ServiceAccountCredential( new ServiceAccountCredential.Initializer(configuration.ClientEmail) diff --git a/framework/src/Volo.Abp.BlobStoring.Google/Volo/Abp/BlobStoring/Google/GoogleBlobProviderConfiguration.cs b/framework/src/Volo.Abp.BlobStoring.Google/Volo/Abp/BlobStoring/Google/GoogleBlobProviderConfiguration.cs index f00987b303..39db24f700 100644 --- a/framework/src/Volo.Abp.BlobStoring.Google/Volo/Abp/BlobStoring/Google/GoogleBlobProviderConfiguration.cs +++ b/framework/src/Volo.Abp.BlobStoring.Google/Volo/Abp/BlobStoring/Google/GoogleBlobProviderConfiguration.cs @@ -46,6 +46,15 @@ public class GoogleBlobProviderConfiguration set => _containerConfiguration.SetConfiguration(GoogleBlobProviderConfigurationNames.Scopes, value); } + /// + /// Use the application default credentials. https://cloud.google.com/docs/authentication/provide-credentials-adc + /// Default value: false. + /// + public bool UseApplicationDefaultCredentials { + get => _containerConfiguration.GetConfigurationOrDefault(GoogleBlobProviderConfigurationNames.UseApplicationDefaultCredentials, false); + set => _containerConfiguration.SetConfiguration(GoogleBlobProviderConfigurationNames.UseApplicationDefaultCredentials, value); + } + /// /// The name can only contain lowercase letters, numeric characters, dashes (-), underscores (_), and dots (.). Spaces are not allowed. Names containing dots require verification. /// Must start and end with a number or letter. diff --git a/framework/src/Volo.Abp.BlobStoring.Google/Volo/Abp/BlobStoring/Google/GoogleBlobProviderConfigurationNames.cs b/framework/src/Volo.Abp.BlobStoring.Google/Volo/Abp/BlobStoring/Google/GoogleBlobProviderConfigurationNames.cs index 0cfd10d129..c682c693c8 100644 --- a/framework/src/Volo.Abp.BlobStoring.Google/Volo/Abp/BlobStoring/Google/GoogleBlobProviderConfigurationNames.cs +++ b/framework/src/Volo.Abp.BlobStoring.Google/Volo/Abp/BlobStoring/Google/GoogleBlobProviderConfigurationNames.cs @@ -6,6 +6,7 @@ public static class GoogleBlobProviderConfigurationNames public const string ClientEmail = "Google.ClientEmail"; public const string PrivateKey = "Google.PrivateKey"; public const string Scopes = "Google.Scopes"; + public const string UseApplicationDefaultCredentials = "Google.ApplicationDefaultCredentials"; public const string ContainerName = "Google.ContainerName"; public const string CreateContainerIfNotExists = "Google.CreateContainerIfNotExists"; } \ No newline at end of file diff --git a/framework/test/Volo.Abp.BlobStoring.Google.Tests/Volo/Abp/BlobStoring/Google/AbpBlobStoringGoogleTestModule.cs b/framework/test/Volo.Abp.BlobStoring.Google.Tests/Volo/Abp/BlobStoring/Google/AbpBlobStoringGoogleTestModule.cs index be2de91a38..36a100a191 100644 --- a/framework/test/Volo.Abp.BlobStoring.Google.Tests/Volo/Abp/BlobStoring/Google/AbpBlobStoringGoogleTestModule.cs +++ b/framework/test/Volo.Abp.BlobStoring.Google.Tests/Volo/Abp/BlobStoring/Google/AbpBlobStoringGoogleTestModule.cs @@ -53,7 +53,7 @@ public class AbpBlobStoringGoogleTestModule : AbpModule containerConfiguration.UseGoogle(google => { google.ClientEmail = _clientEmail; - google.ProjectId = _projectId = "wide-origin-296910"; + google.ProjectId = _projectId; google.PrivateKey = _privateKey; google.ContainerName = _randomContainerName; google.CreateContainerIfNotExists = true; From 0960a481335e7b76e4d8f5aa322be58bbe06f8c6 Mon Sep 17 00:00:00 2001 From: voloagent Date: Thu, 5 Sep 2024 12:03:29 +0300 Subject: [PATCH 49/55] Update_NPM_Packages --- .../package.json | 6 +- .../yarn.lock | 276 ++++++------ .../package.json | 4 +- .../yarn.lock | 280 ++++++------ .../app/Volo.BloggingTestApp/package.json | 4 +- .../app/Volo.BloggingTestApp/yarn.lock | 318 +++++++------- .../Volo.ClientSimulation.Demo/package.json | 2 +- .../demo/Volo.ClientSimulation.Demo/yarn.lock | 258 +++++------ modules/cms-kit/angular/package.json | 10 +- .../angular/projects/cms-kit/package.json | 4 +- .../Volo.CmsKit.IdentityServer/package.json | 2 +- .../host/Volo.CmsKit.IdentityServer/yarn.lock | 258 +++++------ .../host/Volo.CmsKit.Web.Host/package.json | 2 +- .../host/Volo.CmsKit.Web.Host/yarn.lock | 258 +++++------ .../host/Volo.CmsKit.Web.Unified/package.json | 4 +- .../host/Volo.CmsKit.Web.Unified/yarn.lock | 404 +++++++++--------- modules/docs/app/VoloDocs.Web/package.json | 4 +- modules/docs/app/VoloDocs.Web/yarn.lock | 318 +++++++------- .../app/OpenIddict.Demo.Server/package.json | 2 +- modules/openiddict/app/angular/package.json | 20 +- .../package.json | 2 +- .../yarn.lock | 258 +++++------ .../package.json | 4 +- .../yarn.lock | 292 ++++++------- npm/lerna.json | 2 +- npm/ng-packs/package.json | 4 +- .../packages/account-core/package.json | 6 +- npm/ng-packs/packages/account/package.json | 6 +- npm/ng-packs/packages/components/package.json | 6 +- npm/ng-packs/packages/core/package.json | 4 +- .../packages/feature-management/package.json | 4 +- npm/ng-packs/packages/generators/package.json | 2 +- npm/ng-packs/packages/identity/package.json | 8 +- npm/ng-packs/packages/oauth/package.json | 6 +- .../permission-management/package.json | 4 +- npm/ng-packs/packages/schematics/package.json | 2 +- .../packages/setting-management/package.json | 6 +- .../packages/tenant-management/package.json | 6 +- .../packages/theme-basic/package.json | 6 +- .../packages/theme-shared/package.json | 4 +- npm/packs/anchor-js/package.json | 4 +- .../package.json | 4 +- .../package.json | 6 +- .../package.json | 4 +- .../package.json | 34 +- npm/packs/aspnetcore.mvc.ui/package-lock.json | 2 +- npm/packs/aspnetcore.mvc.ui/package.json | 2 +- npm/packs/blogging/package.json | 10 +- npm/packs/bootstrap-datepicker/package.json | 2 +- .../bootstrap-daterangepicker/package.json | 2 +- npm/packs/bootstrap/package.json | 4 +- npm/packs/chart.js/package.json | 2 +- npm/packs/clipboard/package.json | 4 +- npm/packs/cms-kit.admin/package.json | 14 +- npm/packs/cms-kit.public/package.json | 6 +- npm/packs/cms-kit/package.json | 6 +- npm/packs/codemirror/package.json | 4 +- npm/packs/core/package.json | 4 +- npm/packs/cropperjs/package.json | 4 +- npm/packs/datatables.net-bs4/package.json | 4 +- npm/packs/datatables.net-bs5/package.json | 4 +- npm/packs/datatables.net/package.json | 4 +- npm/packs/docs/package.json | 12 +- npm/packs/flag-icon-css/package.json | 2 +- npm/packs/flag-icons/package.json | 2 +- npm/packs/font-awesome/package.json | 4 +- npm/packs/highlight.js/package.json | 4 +- npm/packs/jquery-form/package.json | 4 +- .../package.json | 4 +- npm/packs/jquery-validation/package.json | 4 +- npm/packs/jquery/package.json | 4 +- npm/packs/jstree/package.json | 4 +- npm/packs/lodash/package.json | 4 +- npm/packs/luxon/package.json | 4 +- .../package.json | 4 +- npm/packs/markdown-it/package.json | 4 +- npm/packs/moment/package.json | 2 +- npm/packs/owl.carousel/package.json | 4 +- npm/packs/popper.js/package.json | 4 +- npm/packs/prismjs/package.json | 6 +- npm/packs/qrcode/package.json | 4 +- npm/packs/select2/package.json | 4 +- npm/packs/signalr/package.json | 4 +- npm/packs/slugify/package.json | 2 +- npm/packs/star-rating-svg/package.json | 4 +- npm/packs/sweetalert2/package.json | 4 +- npm/packs/timeago/package.json | 4 +- npm/packs/toastr/package.json | 4 +- npm/packs/tui-editor/package.json | 6 +- npm/packs/uppy/package.json | 4 +- npm/packs/utils/package.json | 2 +- npm/packs/vee-validate/package.json | 4 +- npm/packs/virtual-file-explorer/package.json | 6 +- npm/packs/vue/package.json | 2 +- npm/packs/zxcvbn/package.json | 4 +- .../Volo.Abp.Account.SourceCode.zip | Bin 225296 -> 225262 bytes .../Volo.Abp.AuditLogging.SourceCode.zip | Bin 89910 -> 89879 bytes .../Volo.Abp.BackgroundJobs.SourceCode.zip | Bin 62574 -> 62533 bytes .../Volo.Abp.BasicTheme.SourceCode.zip | Bin 456296 -> 456241 bytes ...lo.Abp.BlobStoring.Database.SourceCode.zip | Bin 68826 -> 68797 bytes .../Volo.Abp.FeatureManagement.SourceCode.zip | Bin 190146 -> 190090 bytes .../Volo.Abp.Identity.SourceCode.zip | Bin 400509 -> 400532 bytes .../Volo.Abp.IdentityServer.SourceCode.zip | Bin 165821 -> 165786 bytes .../Volo.Abp.OpenIddict.SourceCode.zip | Bin 2269516 -> 2269458 bytes ...lo.Abp.PermissionManagement.SourceCode.zip | Bin 179989 -> 180163 bytes .../Volo.Abp.SettingManagement.SourceCode.zip | Bin 241681 -> 241619 bytes .../Volo.Abp.TenantManagement.SourceCode.zip | Bin 167257 -> 167194 bytes .../Volo.Abp.Users.SourceCode.zip | Bin 31944 -> 31921 bytes ...olo.Abp.VirtualFileExplorer.SourceCode.zip | Bin 47759 -> 47756 bytes .../Volo.Blogging.SourceCode.zip | Bin 372722 -> 372642 bytes .../Volo.ClientSimulation.SourceCode.zip | Bin 38892 -> 38882 bytes .../Volo.CmsKit.SourceCode.zip | Bin 1294623 -> 1294558 bytes .../Volo.Docs.SourceCode.zip | Bin 566235 -> 566151 bytes templates/app-nolayers/angular/package.json | 20 +- .../package.json | 4 +- .../package.json | 4 +- .../Server.Mongo/package.json | 2 +- .../Server/package.json | 2 +- .../package.json | 2 +- .../package.json | 2 +- .../package.json | 2 +- .../package.json | 2 +- templates/app/angular/package.json | 20 +- .../package.json | 2 +- .../package.json | 4 +- .../package.json | 4 +- .../package.json | 4 +- .../package.json | 4 +- .../package.json | 2 +- .../package.json | 2 +- .../package.json | 2 +- templates/module/angular/package.json | 20 +- .../projects/my-project-name/package.json | 4 +- .../package.json | 2 +- .../package.json | 4 +- .../package.json | 2 +- .../package.json | 2 +- 137 files changed, 1724 insertions(+), 1724 deletions(-) diff --git a/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.Demo/package.json b/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.Demo/package.json index 32bd218436..634b99a3cb 100644 --- a/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.Demo/package.json +++ b/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.Demo/package.json @@ -3,8 +3,8 @@ "name": "asp.net", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.shared": "~8.3.0-rc.3", - "@abp/prismjs": "~8.3.0-rc.3", - "@abp/highlight.js": "~8.3.0-rc.3" + "@abp/aspnetcore.mvc.ui.theme.shared": "~8.3.0", + "@abp/prismjs": "~8.3.0", + "@abp/highlight.js": "~8.3.0" } } diff --git a/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.Demo/yarn.lock b/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.Demo/yarn.lock index 0b1fef9585..214c3a3fdd 100644 --- a/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.Demo/yarn.lock +++ b/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.Demo/yarn.lock @@ -2,212 +2,212 @@ # yarn lockfile v1 -"@abp/aspnetcore.mvc.ui.theme.shared@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-8.3.0-rc.3.tgz#804fe763c3b66cbaf7ac8de7aca53a8690f0283c" - integrity sha512-ldiW9rXMMF7iAZpgFg1gDbwZW64/qLjhIyn+IcO7BzpLD6DKCzeQl/M+p7H1h7TC/ZSLEjRfcQs+ubjMI+OFoQ== - dependencies: - "@abp/aspnetcore.mvc.ui" "~8.3.0-rc.3" - "@abp/bootstrap" "~8.3.0-rc.3" - "@abp/bootstrap-datepicker" "~8.3.0-rc.3" - "@abp/bootstrap-daterangepicker" "~8.3.0-rc.3" - "@abp/datatables.net-bs5" "~8.3.0-rc.3" - "@abp/font-awesome" "~8.3.0-rc.3" - "@abp/jquery-form" "~8.3.0-rc.3" - "@abp/jquery-validation-unobtrusive" "~8.3.0-rc.3" - "@abp/lodash" "~8.3.0-rc.3" - "@abp/luxon" "~8.3.0-rc.3" - "@abp/malihu-custom-scrollbar-plugin" "~8.3.0-rc.3" - "@abp/moment" "~8.3.0-rc.3" - "@abp/select2" "~8.3.0-rc.3" - "@abp/sweetalert2" "~8.3.0-rc.3" - "@abp/timeago" "~8.3.0-rc.3" - "@abp/toastr" "~8.3.0-rc.3" - -"@abp/aspnetcore.mvc.ui@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-8.3.0-rc.3.tgz#e1e68f10e1715af44505da2d80b12fdf52d7de8c" - integrity sha512-0ld0/fXTj2mJZ12W1nn87K1Beqg+zbIGSR8lxWXG56jVArxasSqL3CiOQg+lLMUnWq1kwtTuoxZZVA76aL+nJA== +"@abp/aspnetcore.mvc.ui.theme.shared@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-8.3.0.tgz#5d6bb5181a62770e9cb967980b77e75c115c5ed7" + integrity sha512-o/0eh8jLS+YJiseTKzzioUz0vNnMFzyoz+mkyA4PlO1gqw2JFhzPhTBZ3cuyV9QlxUfEA8dWAkqAUX6vqiHwkw== + dependencies: + "@abp/aspnetcore.mvc.ui" "~8.3.0" + "@abp/bootstrap" "~8.3.0" + "@abp/bootstrap-datepicker" "~8.3.0" + "@abp/bootstrap-daterangepicker" "~8.3.0" + "@abp/datatables.net-bs5" "~8.3.0" + "@abp/font-awesome" "~8.3.0" + "@abp/jquery-form" "~8.3.0" + "@abp/jquery-validation-unobtrusive" "~8.3.0" + "@abp/lodash" "~8.3.0" + "@abp/luxon" "~8.3.0" + "@abp/malihu-custom-scrollbar-plugin" "~8.3.0" + "@abp/moment" "~8.3.0" + "@abp/select2" "~8.3.0" + "@abp/sweetalert2" "~8.3.0" + "@abp/timeago" "~8.3.0" + "@abp/toastr" "~8.3.0" + +"@abp/aspnetcore.mvc.ui@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-8.3.0.tgz#d7ba0539bfcc6661a347dea7f952489010b3e816" + integrity sha512-OxgZhLKiXGFYYpNJ5O/IbhinsniiBPv9586e+1Soar0GckCMIIegJxnJb1Bo1O75blrcK2cIU6LqjRT1FXt2Lw== dependencies: ansi-colors "^4.1.3" -"@abp/bootstrap-datepicker@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-8.3.0-rc.3.tgz#319054e54532085031a80d5859dec1a56b7548ac" - integrity sha512-fWKry7HLQ14Vv3GiF/bqge4ySN/9GkK/kZRrdeopdzvmOKTPCHSJ8DNrXAmd+WVHbcqdQ6uovWBOfMufCLohJw== +"@abp/bootstrap-datepicker@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-8.3.0.tgz#8c1bf9efec37b671d8f28b8b1e89c1ac66684267" + integrity sha512-KCwMtm7x+cnKPeNMzhjDJUce0stwu4e57ibmvA6sMf1tmj+yB256O4E2hIDDohiT3vP/zV8HVHX6uATlcmGC9w== dependencies: bootstrap-datepicker "^1.10.0" -"@abp/bootstrap-daterangepicker@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-8.3.0-rc.3.tgz#873728e2d6313fae07f1f74a4cf483e50bccfa7f" - integrity sha512-nu2N12ftl/1zA7Fe1lAgZiJnkZKFBNjfsPmy+ykQLKGWIkca14b0UHwUIHEaiI26fD6bBT50/kMRzA7uE3goaA== +"@abp/bootstrap-daterangepicker@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-8.3.0.tgz#2b8ed978333502677916f88cbb3e1d1b1c8a3a17" + integrity sha512-uQSfuCQogl4BujdqvtdAoSE+z32ci8FT5+i3gLfpqbgTaxvY/Kv5NxAUH5/1sjnuAE7SMWO+eVvI3V0pXgQohg== dependencies: bootstrap-daterangepicker "^3.1.0" -"@abp/bootstrap@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-8.3.0-rc.3.tgz#ca01bc3b6c4d5b63cf1bb86472e8df366ff3cf40" - integrity sha512-qSJ5s8k3X4WANgUoEZ289q+UKkStnbAMIEmIh6x93nIZHaGAJsK3oaSNgZ2DbGPhxpMKxhJpCuzF1KrRDtwtUQ== +"@abp/bootstrap@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-8.3.0.tgz#96d6ea7e6ac30f6e34e495a4224f56f7b2a1a7a3" + integrity sha512-5AmdTtakmWhZmHrb7ibvvf+KwF9OGadpAe7Kv9mNEE02K2qkp7Xw4r5o/bgVl7YfLC1FA6GZZXrV2s2t0gjHtg== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" bootstrap "^5.3.3" -"@abp/clipboard@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-8.3.0-rc.3.tgz#73eeba6bebccd0926ee40ba693c4c1e72f559f05" - integrity sha512-NUjh2ML1g9afBZcW0Ulp9/7CEMPH57ukxUwJBC88yd0C+oYC7KVurD7yeLtBrMAMQdfqP0e/lQcxZj69HB9p7g== +"@abp/clipboard@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-8.3.0.tgz#1b171e533f768cf42c8fc0c9c67fac1c636fee8c" + integrity sha512-T0O4OaMxLLYztAxyvEc3onEOpGHB/C8/jDcvJwd7mgpLoi9zXVfHwpnzkx/egfNJMzp49STD6Jc+jACi8Uq+CQ== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" clipboard "^2.0.11" -"@abp/core@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-8.3.0-rc.3.tgz#4031ec2c08a00652bb717c962ddc3aa8b3cf72c9" - integrity sha512-9Y7EcLE+0RLnJyhZlSYCElTjrFz+P7uXbyl+1UyuyY+dxyAdZhZ+1WPHFSr0f8KlJrxkjnsPj+gR4e48u15FDw== +"@abp/core@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-8.3.0.tgz#3a68f5a9549efcc3e13500e301f2576751b51445" + integrity sha512-zrxnZi4qij/Y4AZWaXuPqs3Dd7gBtU/onX7FkYxLgQDxYBfx+84QAnPRNRFKMWaD/wKbTUB0wA66U3t2aiQX9Q== dependencies: - "@abp/utils" "~8.3.0-rc.3" + "@abp/utils" "~8.3.0" -"@abp/datatables.net-bs5@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-8.3.0-rc.3.tgz#da22fbf7fe23671bfa20e83c9490e7bbe169b4aa" - integrity sha512-36VOOd/1461LZN11awaU5xbC3oYYJFebNFBeFZijsc8LtVKCwgMWZ8K3sCOolBVEyltDzKntw+w0NwhlWjd8tA== +"@abp/datatables.net-bs5@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-8.3.0.tgz#21822ae4912a561afe9112925185aece03fcd0eb" + integrity sha512-GOGYSSHp3iPUDFRX2Y3C0wkiCOJDuYuK/zUSzQLNpOvBMZO+I/oWBcZM+qkVowIzsoRlAGV9+CVV2B/B05qidA== dependencies: - "@abp/datatables.net" "~8.3.0-rc.3" + "@abp/datatables.net" "~8.3.0" datatables.net-bs5 "^2.0.8" -"@abp/datatables.net@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-8.3.0-rc.3.tgz#933ade7c61d3dfb61aa9278eb948e7756013a61f" - integrity sha512-MjSWhmMilHAKb4HmCLQOXesuFWvguIxhpKRAfSfweIiaOtgaPBh4KR8PSGxZgC0fImQYjWSfHQP4QkLAd5xasA== +"@abp/datatables.net@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-8.3.0.tgz#ff697758ce9309ba8311f23aec921c4722588c8b" + integrity sha512-4dIdv7eN1tVouOUrlF+MIdg8zQpecyH61waqLgy1q5jMZQivrTSFZ7UWMG3WVOAYjw5zSUZHZPbzA+ttnaOPkg== dependencies: - "@abp/jquery" "~8.3.0-rc.3" + "@abp/jquery" "~8.3.0" datatables.net "^2.0.8" -"@abp/font-awesome@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-8.3.0-rc.3.tgz#efa785200433025725e6dcd48c8b6b538938681d" - integrity sha512-DRjSDWhTWmL0I2A7KcFOxQFaLftxg0Rvcss0138j/mGpt64+unzcYo6YRCEga/k6ygxc7dYnhFmQf2tli44toQ== +"@abp/font-awesome@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-8.3.0.tgz#9e4e9adc08dfca52c0a07d1608c5e5662675a4c9" + integrity sha512-NRxvM/dzvQC2Cj/F5i07XB/i6IVTmXcO9sOq6TWosWib0wGaPxRbCSjy8QUAYSD1QYaVQ30XMb3XXImaMGyd8A== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" "@fortawesome/fontawesome-free" "^6.5.2" -"@abp/highlight.js@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/highlight.js/-/highlight.js-8.3.0-rc.3.tgz#aadc37d3d2fdb0f75a28df341b52131e8f55edd4" - integrity sha512-ht2qdrdU4s4sadMv7Fog6zNCWEonV3+D4JCizt0k7dFq13wVSv/xtq04CVe/s0zp5LhD5EfJMleVaaQKEAFV/A== +"@abp/highlight.js@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/highlight.js/-/highlight.js-8.3.0.tgz#fabd11a8ef7cd0e379b4c9b359d66b4aa7585e30" + integrity sha512-SHvGXqQrZGuNmup32FisVHrWCdTJyEzHgp6y8Twx1FaP1e0hSN3QK6Jw4Do600ZKI9n5xCK+kMCpdJau8I6bIg== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" "@highlightjs/cdn-assets" "~11.9.0" -"@abp/jquery-form@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-8.3.0-rc.3.tgz#fbb1ceb0e4092243cb018e1d7aa1ca86371fa98c" - integrity sha512-n7Tu4b2UhaRMcQCmzcBMiEYnaaR/OmA7LZfOcg4YP202xnLj29w4R/sRbQjr0w9lvPhue9rrSXaEf43UrV8eyg== +"@abp/jquery-form@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-8.3.0.tgz#fa2ad2fedbe3d3528ee94cbbd4f94d48f0cb5e4d" + integrity sha512-olP9FmpNVTbOIewsVua0moHVYXw4Sl3chFbvTDLG6vRBohLSjllUXfgY3UEIVWR1PCqnAg+iEJZl9NHB9iOLBg== dependencies: - "@abp/jquery" "~8.3.0-rc.3" + "@abp/jquery" "~8.3.0" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-8.3.0-rc.3.tgz#bcc8dad54b880134519f642b6a1a151584889bf2" - integrity sha512-4pfc7vYh5oMZc4+AJRwN7CQmb4ZK29POyuL9RjuBCQbvYCLcru0M5cQTz3wt9jLeAXn402lbwxh1cLioZfw8SQ== +"@abp/jquery-validation-unobtrusive@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-8.3.0.tgz#0992cdd33170df83c79aa3371038c0b30e451521" + integrity sha512-9hidjq8x8sTnP5O3K2b2x9NpxvPd9WB03ENR6OfvM89kfSmQapSvBZTlCu80YK9NaQJ6MLQRLYOCuc3GHcj3EQ== dependencies: - "@abp/jquery-validation" "~8.3.0-rc.3" + "@abp/jquery-validation" "~8.3.0" jquery-validation-unobtrusive "^4.0.0" -"@abp/jquery-validation@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-8.3.0-rc.3.tgz#d71e59dfa793070b780bb8078f4cd12b8217f701" - integrity sha512-/OEh5PVKfA4BB7YVmFFBa+GKDR4jzNOkRBUnzplxxcegrXlbbjuxC7VcnsLzXQJ1c2aUO6a1y8L7MsPMjaXVrg== +"@abp/jquery-validation@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-8.3.0.tgz#bd6a72c6d86f116abe3b5d2adf3752bdbbcca887" + integrity sha512-6l5BZSa3N0Fou6Se7MfUSnI2dD4SYhZ2V988bgPJQ6p37XBOZ2OAj7LEIf5FSjtUzXjao/6/vqjkPNYreNikig== dependencies: - "@abp/jquery" "~8.3.0-rc.3" + "@abp/jquery" "~8.3.0" jquery-validation "^1.20.1" -"@abp/jquery@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-8.3.0-rc.3.tgz#7350b8675c7199b143bad86f46a50c629568605b" - integrity sha512-GkjKCrQmqqeu3xvpWTZxFa1VVRKPhmiutO2syuPi2dReDBhMV6h6EZZeu5y8lHLvL1HTEEANFFFXJGUna07FRQ== +"@abp/jquery@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-8.3.0.tgz#9be5ef2f769680226e6a1a981026590caf3b57ef" + integrity sha512-GsFY+n3EtS6B0pAoKd+xMnt5Dzi5bHvIbhLgDgfQfOBzAy3twGRWsPQ3nkuXXm8TppwujMNowU1oiLKPPm0AOA== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" jquery "~3.7.1" -"@abp/lodash@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-8.3.0-rc.3.tgz#90b1c266a16bd2bdfab22bb635114610738a17ba" - integrity sha512-L4lw6eSOXeXg2IixjdcHHVw1z7Q1wLUJDr8NzlRF51KfEPZ5Lt28IhoJuEfE7y24e6v+q6CL15axPwSQOUIlhw== +"@abp/lodash@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-8.3.0.tgz#f5a0a496c999886f2d6999067bfac2e1f0c3969c" + integrity sha512-BiAsONbKR/RKG3WjRaMWVmhNe1ELEsykVq+ogG1Rhk3kwPbvze3TS8k2p0Lu/RC41/BmDUmJ5abg1pUMwkRT8w== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" lodash "^4.17.21" -"@abp/luxon@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-8.3.0-rc.3.tgz#dc2a024c4b20b59408c41b259fe9b7cc8820bd7f" - integrity sha512-QOpAHiJxzSW+4HClyTspYaMDSUbY4Sz36d4Q7LSKHcwLIuqQ7rRfGEeWctYZYPwHIgK4udhde08Z8xrzl5tZSg== +"@abp/luxon@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-8.3.0.tgz#7dd3f756be1605506e26f7ac76b80cc082a12d07" + integrity sha512-8gdI5BtXkVp0sFg89QVDe8AvgQ7Qfq4JCqz2PMrKPSATR3H8GD6BCaEYpRp6CNTCjVrQjGZdzKgUyea1D3dHbw== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" luxon "^3.4.4" -"@abp/malihu-custom-scrollbar-plugin@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-8.3.0-rc.3.tgz#4eb53cf29ecf7c613f2d00e5b1bab4d807fd8396" - integrity sha512-NyQ2Qg2PfsDjWZfSwfsESFFkveIMQXFwWiSWgmeolWeFNtETDI1KJ5Nrf//sY+8zpn6ciCQTI5iaklLPPWQSKg== +"@abp/malihu-custom-scrollbar-plugin@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-8.3.0.tgz#c88c132c3402bbb02054ca7d446051950f87a817" + integrity sha512-nd/mb6LJa6fMxal8PGcIjIRIoZ/UHCd01WDC9YI2H4wGCGx0CA0JyHso5oc/OEzJhUL8ujO/vYm9uLb7YahPtA== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/moment@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-8.3.0-rc.3.tgz#8f997de893d8b69f670f99fe0f3f8a8b3ed64451" - integrity sha512-UulCn7Qt6Y1JfXYd+KGsvJZX7uybXVwud+55tE7TnNl7OXmQ6R3yL6uv+5da0iJsZzQa6c3EknmTkLLD53HfRw== +"@abp/moment@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-8.3.0.tgz#8e4f7a523ab76ef9e4cd96a399560bad38d38d1a" + integrity sha512-LywSsKuQ2GN/Btmle6CcTKa811zbvUWdC+RLQA792K9HyBs6LvN0qRRluEQZgplairRgh2pDOg8tdFlUERkv2w== dependencies: moment "^2.30.1" -"@abp/prismjs@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-8.3.0-rc.3.tgz#9a78f0339f0b20591990f585497e7f5e585828d8" - integrity sha512-IaPkxDQeB9NhFGRh7jEmRTdLcNcCEdwdEELzZpYgQIQ4EOA/bq9jbYa9rD9wAYXRE6/yliQLTzmOzori4ddrXw== +"@abp/prismjs@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-8.3.0.tgz#0c87c63294d1452ed7152083d2fb6e70aa3aeae6" + integrity sha512-3wpwbqqlGRfQSLcBP+Qb2TKOoVGZVYYwOP6dP3So9ev8J5gFMDEizH9zLwRVHYrrsZZP8/etYnyZ0hn7ewuI5Q== dependencies: - "@abp/clipboard" "~8.3.0-rc.3" - "@abp/core" "~8.3.0-rc.3" + "@abp/clipboard" "~8.3.0" + "@abp/core" "~8.3.0" prismjs "^1.29.0" -"@abp/select2@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-8.3.0-rc.3.tgz#621505b7a829b02cfbb146c7b710093b9e6e19f4" - integrity sha512-SV0gTfKbEAgMG/ND6zrc3QF1buByHePrPxoI1lt1ZiSgt5m9V9i6+zDkE20/W/puegINJAU2kJZtm9hCfMtXaQ== +"@abp/select2@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-8.3.0.tgz#ef4742fcd345394767f46180f61c6cabbd0b3867" + integrity sha512-bdLt2+ImxxpiZl4HGbYJpdDROQUT7/Z/+8A+6oJNacq3lNekdvufLYgTMxKru6zTbnd9j3HFKMOTE1eRjb9Xqg== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" select2 "^4.0.13" -"@abp/sweetalert2@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-8.3.0-rc.3.tgz#728978d364fe80dfd3b9cacdee0960e921d404af" - integrity sha512-G3xAKewy7TH2UZgLg+mVhgng5y1RbanVfsA/VTc9DE1XBMG9fpiqywhbny/5qabFhgvNjMKM28Yce23uAsji1A== +"@abp/sweetalert2@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-8.3.0.tgz#a63020d57e44f7940817287d3d9676288bfb85aa" + integrity sha512-ooqPM4Z2v2scnMo5l8ycTmp6t/sW4sCsvIkJ4TyM876WLQJaZxJdOao4RQWuU+dVFr9zg8cOwqLH4q7UEiO6ww== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" sweetalert2 "^11.3.6" -"@abp/timeago@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-8.3.0-rc.3.tgz#dcef20b900e6e95e12fec64b2f1632949f164eb0" - integrity sha512-sFOlpH54PiHosrmRoPZHtC+RVQdjPWetvtFm7svIfCta+dq6Iz70B7/O0oqQabAIERhA9jTf3ubMtBF6FCdmYg== +"@abp/timeago@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-8.3.0.tgz#b3b8d6927bf170f77af848bc1925e5ef6835bd55" + integrity sha512-Dd6xaUoF9Bp4F9WJnTsFBqY+Gt++UR7UmLvBZL/dvthkeNCu2I8MUsmshkUUjY0lIXpjZwefUOuyupQrgHXPMg== dependencies: - "@abp/jquery" "~8.3.0-rc.3" + "@abp/jquery" "~8.3.0" timeago "^1.6.7" -"@abp/toastr@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-8.3.0-rc.3.tgz#5c821d5a049c322f082c37febd5980d2d664292c" - integrity sha512-PdiQMO6UA6yTKGHqztm5Kxu3UzsidnYyQtjojVTYQd87mvgIDIUkoXxXJ2VVgHnRy2FdZW12UfZG4v3/eJHbmg== +"@abp/toastr@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-8.3.0.tgz#e68a2bd8f731e79034594bc2c736f7c66b3df1af" + integrity sha512-aWK/RaX/FmcEKhJLjsw1A0K2c04m2fRJkmo9NwzBCSscy6Msw9IMkqNWLiFDThMU8/qKzq7wq3Vmk/C0IpeAwA== dependencies: - "@abp/jquery" "~8.3.0-rc.3" + "@abp/jquery" "~8.3.0" toastr "^2.1.4" -"@abp/utils@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-8.3.0-rc.3.tgz#00b4acf4a4a2b4c4c1193a737f972d6508cf1831" - integrity sha512-cEPVo2QkLmn4Meo++dkvknfKlNlfQ7kmdWdXon1ZViaf9YFbTEZIYD5ccrdGUvKkVlAyOHG3TcAHesiAOyx1PQ== +"@abp/utils@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-8.3.0.tgz#96ae9266ad4d833fd9d723acef7fc85fabf618d9" + integrity sha512-w/XAqza4Z8wBWRoj5uPNKbd1/bE9L/uUWk6EUSBKmljMRryWQBmaPkb1XgvrOMQIbyyF60tUvvipapQLPVh6hw== dependencies: just-compare "^2.3.0" diff --git a/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic.Demo/package.json b/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic.Demo/package.json index 1b69c3f930..3f9c9e79e8 100644 --- a/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic.Demo/package.json +++ b/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic.Demo/package.json @@ -3,8 +3,8 @@ "name": "asp.net", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "~8.3.0-rc.3", - "@abp/prismjs": "~8.3.0-rc.3" + "@abp/aspnetcore.mvc.ui.theme.basic": "~8.3.0", + "@abp/prismjs": "~8.3.0" }, "devDependencies": {} } diff --git a/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic.Demo/yarn.lock b/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic.Demo/yarn.lock index 662b4432c6..62c9b5489d 100644 --- a/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic.Demo/yarn.lock +++ b/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic.Demo/yarn.lock @@ -2,211 +2,211 @@ # yarn lockfile v1 -"@abp/aspnetcore.mvc.ui.theme.basic@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-8.3.0-rc.3.tgz#58dc0dc5bb42e7c2bd70c717256332df2efe6d45" - integrity sha512-ba97ROK5RiEtIwOMwwfHuZFAX/iaQ+fR4Tw6cz+SHGkqfrACP4KnO+GwplCCyG/Y/ZmbX8KTliDEWGKDL4CCqQ== - dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~8.3.0-rc.3" - -"@abp/aspnetcore.mvc.ui.theme.shared@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-8.3.0-rc.3.tgz#804fe763c3b66cbaf7ac8de7aca53a8690f0283c" - integrity sha512-ldiW9rXMMF7iAZpgFg1gDbwZW64/qLjhIyn+IcO7BzpLD6DKCzeQl/M+p7H1h7TC/ZSLEjRfcQs+ubjMI+OFoQ== - dependencies: - "@abp/aspnetcore.mvc.ui" "~8.3.0-rc.3" - "@abp/bootstrap" "~8.3.0-rc.3" - "@abp/bootstrap-datepicker" "~8.3.0-rc.3" - "@abp/bootstrap-daterangepicker" "~8.3.0-rc.3" - "@abp/datatables.net-bs5" "~8.3.0-rc.3" - "@abp/font-awesome" "~8.3.0-rc.3" - "@abp/jquery-form" "~8.3.0-rc.3" - "@abp/jquery-validation-unobtrusive" "~8.3.0-rc.3" - "@abp/lodash" "~8.3.0-rc.3" - "@abp/luxon" "~8.3.0-rc.3" - "@abp/malihu-custom-scrollbar-plugin" "~8.3.0-rc.3" - "@abp/moment" "~8.3.0-rc.3" - "@abp/select2" "~8.3.0-rc.3" - "@abp/sweetalert2" "~8.3.0-rc.3" - "@abp/timeago" "~8.3.0-rc.3" - "@abp/toastr" "~8.3.0-rc.3" - -"@abp/aspnetcore.mvc.ui@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-8.3.0-rc.3.tgz#e1e68f10e1715af44505da2d80b12fdf52d7de8c" - integrity sha512-0ld0/fXTj2mJZ12W1nn87K1Beqg+zbIGSR8lxWXG56jVArxasSqL3CiOQg+lLMUnWq1kwtTuoxZZVA76aL+nJA== +"@abp/aspnetcore.mvc.ui.theme.basic@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-8.3.0.tgz#a2d17eb5da2c3abfad4bcc842cfcda0e58a130a4" + integrity sha512-T2dg7WlvNSrwTCfy5wk4gqiJ/15kIjMGM4wLXIJcMYn60yGY/YeX6Q4A3R/qJzfl4JdgW5rt3GpdKv86y/ADXg== + dependencies: + "@abp/aspnetcore.mvc.ui.theme.shared" "~8.3.0" + +"@abp/aspnetcore.mvc.ui.theme.shared@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-8.3.0.tgz#5d6bb5181a62770e9cb967980b77e75c115c5ed7" + integrity sha512-o/0eh8jLS+YJiseTKzzioUz0vNnMFzyoz+mkyA4PlO1gqw2JFhzPhTBZ3cuyV9QlxUfEA8dWAkqAUX6vqiHwkw== + dependencies: + "@abp/aspnetcore.mvc.ui" "~8.3.0" + "@abp/bootstrap" "~8.3.0" + "@abp/bootstrap-datepicker" "~8.3.0" + "@abp/bootstrap-daterangepicker" "~8.3.0" + "@abp/datatables.net-bs5" "~8.3.0" + "@abp/font-awesome" "~8.3.0" + "@abp/jquery-form" "~8.3.0" + "@abp/jquery-validation-unobtrusive" "~8.3.0" + "@abp/lodash" "~8.3.0" + "@abp/luxon" "~8.3.0" + "@abp/malihu-custom-scrollbar-plugin" "~8.3.0" + "@abp/moment" "~8.3.0" + "@abp/select2" "~8.3.0" + "@abp/sweetalert2" "~8.3.0" + "@abp/timeago" "~8.3.0" + "@abp/toastr" "~8.3.0" + +"@abp/aspnetcore.mvc.ui@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-8.3.0.tgz#d7ba0539bfcc6661a347dea7f952489010b3e816" + integrity sha512-OxgZhLKiXGFYYpNJ5O/IbhinsniiBPv9586e+1Soar0GckCMIIegJxnJb1Bo1O75blrcK2cIU6LqjRT1FXt2Lw== dependencies: ansi-colors "^4.1.3" -"@abp/bootstrap-datepicker@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-8.3.0-rc.3.tgz#319054e54532085031a80d5859dec1a56b7548ac" - integrity sha512-fWKry7HLQ14Vv3GiF/bqge4ySN/9GkK/kZRrdeopdzvmOKTPCHSJ8DNrXAmd+WVHbcqdQ6uovWBOfMufCLohJw== +"@abp/bootstrap-datepicker@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-8.3.0.tgz#8c1bf9efec37b671d8f28b8b1e89c1ac66684267" + integrity sha512-KCwMtm7x+cnKPeNMzhjDJUce0stwu4e57ibmvA6sMf1tmj+yB256O4E2hIDDohiT3vP/zV8HVHX6uATlcmGC9w== dependencies: bootstrap-datepicker "^1.10.0" -"@abp/bootstrap-daterangepicker@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-8.3.0-rc.3.tgz#873728e2d6313fae07f1f74a4cf483e50bccfa7f" - integrity sha512-nu2N12ftl/1zA7Fe1lAgZiJnkZKFBNjfsPmy+ykQLKGWIkca14b0UHwUIHEaiI26fD6bBT50/kMRzA7uE3goaA== +"@abp/bootstrap-daterangepicker@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-8.3.0.tgz#2b8ed978333502677916f88cbb3e1d1b1c8a3a17" + integrity sha512-uQSfuCQogl4BujdqvtdAoSE+z32ci8FT5+i3gLfpqbgTaxvY/Kv5NxAUH5/1sjnuAE7SMWO+eVvI3V0pXgQohg== dependencies: bootstrap-daterangepicker "^3.1.0" -"@abp/bootstrap@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-8.3.0-rc.3.tgz#ca01bc3b6c4d5b63cf1bb86472e8df366ff3cf40" - integrity sha512-qSJ5s8k3X4WANgUoEZ289q+UKkStnbAMIEmIh6x93nIZHaGAJsK3oaSNgZ2DbGPhxpMKxhJpCuzF1KrRDtwtUQ== +"@abp/bootstrap@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-8.3.0.tgz#96d6ea7e6ac30f6e34e495a4224f56f7b2a1a7a3" + integrity sha512-5AmdTtakmWhZmHrb7ibvvf+KwF9OGadpAe7Kv9mNEE02K2qkp7Xw4r5o/bgVl7YfLC1FA6GZZXrV2s2t0gjHtg== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" bootstrap "^5.3.3" -"@abp/clipboard@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-8.3.0-rc.3.tgz#73eeba6bebccd0926ee40ba693c4c1e72f559f05" - integrity sha512-NUjh2ML1g9afBZcW0Ulp9/7CEMPH57ukxUwJBC88yd0C+oYC7KVurD7yeLtBrMAMQdfqP0e/lQcxZj69HB9p7g== +"@abp/clipboard@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-8.3.0.tgz#1b171e533f768cf42c8fc0c9c67fac1c636fee8c" + integrity sha512-T0O4OaMxLLYztAxyvEc3onEOpGHB/C8/jDcvJwd7mgpLoi9zXVfHwpnzkx/egfNJMzp49STD6Jc+jACi8Uq+CQ== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" clipboard "^2.0.11" -"@abp/core@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-8.3.0-rc.3.tgz#4031ec2c08a00652bb717c962ddc3aa8b3cf72c9" - integrity sha512-9Y7EcLE+0RLnJyhZlSYCElTjrFz+P7uXbyl+1UyuyY+dxyAdZhZ+1WPHFSr0f8KlJrxkjnsPj+gR4e48u15FDw== +"@abp/core@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-8.3.0.tgz#3a68f5a9549efcc3e13500e301f2576751b51445" + integrity sha512-zrxnZi4qij/Y4AZWaXuPqs3Dd7gBtU/onX7FkYxLgQDxYBfx+84QAnPRNRFKMWaD/wKbTUB0wA66U3t2aiQX9Q== dependencies: - "@abp/utils" "~8.3.0-rc.3" + "@abp/utils" "~8.3.0" -"@abp/datatables.net-bs5@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-8.3.0-rc.3.tgz#da22fbf7fe23671bfa20e83c9490e7bbe169b4aa" - integrity sha512-36VOOd/1461LZN11awaU5xbC3oYYJFebNFBeFZijsc8LtVKCwgMWZ8K3sCOolBVEyltDzKntw+w0NwhlWjd8tA== +"@abp/datatables.net-bs5@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-8.3.0.tgz#21822ae4912a561afe9112925185aece03fcd0eb" + integrity sha512-GOGYSSHp3iPUDFRX2Y3C0wkiCOJDuYuK/zUSzQLNpOvBMZO+I/oWBcZM+qkVowIzsoRlAGV9+CVV2B/B05qidA== dependencies: - "@abp/datatables.net" "~8.3.0-rc.3" + "@abp/datatables.net" "~8.3.0" datatables.net-bs5 "^2.0.8" -"@abp/datatables.net@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-8.3.0-rc.3.tgz#933ade7c61d3dfb61aa9278eb948e7756013a61f" - integrity sha512-MjSWhmMilHAKb4HmCLQOXesuFWvguIxhpKRAfSfweIiaOtgaPBh4KR8PSGxZgC0fImQYjWSfHQP4QkLAd5xasA== +"@abp/datatables.net@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-8.3.0.tgz#ff697758ce9309ba8311f23aec921c4722588c8b" + integrity sha512-4dIdv7eN1tVouOUrlF+MIdg8zQpecyH61waqLgy1q5jMZQivrTSFZ7UWMG3WVOAYjw5zSUZHZPbzA+ttnaOPkg== dependencies: - "@abp/jquery" "~8.3.0-rc.3" + "@abp/jquery" "~8.3.0" datatables.net "^2.0.8" -"@abp/font-awesome@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-8.3.0-rc.3.tgz#efa785200433025725e6dcd48c8b6b538938681d" - integrity sha512-DRjSDWhTWmL0I2A7KcFOxQFaLftxg0Rvcss0138j/mGpt64+unzcYo6YRCEga/k6ygxc7dYnhFmQf2tli44toQ== +"@abp/font-awesome@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-8.3.0.tgz#9e4e9adc08dfca52c0a07d1608c5e5662675a4c9" + integrity sha512-NRxvM/dzvQC2Cj/F5i07XB/i6IVTmXcO9sOq6TWosWib0wGaPxRbCSjy8QUAYSD1QYaVQ30XMb3XXImaMGyd8A== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" "@fortawesome/fontawesome-free" "^6.5.2" -"@abp/jquery-form@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-8.3.0-rc.3.tgz#fbb1ceb0e4092243cb018e1d7aa1ca86371fa98c" - integrity sha512-n7Tu4b2UhaRMcQCmzcBMiEYnaaR/OmA7LZfOcg4YP202xnLj29w4R/sRbQjr0w9lvPhue9rrSXaEf43UrV8eyg== +"@abp/jquery-form@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-8.3.0.tgz#fa2ad2fedbe3d3528ee94cbbd4f94d48f0cb5e4d" + integrity sha512-olP9FmpNVTbOIewsVua0moHVYXw4Sl3chFbvTDLG6vRBohLSjllUXfgY3UEIVWR1PCqnAg+iEJZl9NHB9iOLBg== dependencies: - "@abp/jquery" "~8.3.0-rc.3" + "@abp/jquery" "~8.3.0" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-8.3.0-rc.3.tgz#bcc8dad54b880134519f642b6a1a151584889bf2" - integrity sha512-4pfc7vYh5oMZc4+AJRwN7CQmb4ZK29POyuL9RjuBCQbvYCLcru0M5cQTz3wt9jLeAXn402lbwxh1cLioZfw8SQ== +"@abp/jquery-validation-unobtrusive@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-8.3.0.tgz#0992cdd33170df83c79aa3371038c0b30e451521" + integrity sha512-9hidjq8x8sTnP5O3K2b2x9NpxvPd9WB03ENR6OfvM89kfSmQapSvBZTlCu80YK9NaQJ6MLQRLYOCuc3GHcj3EQ== dependencies: - "@abp/jquery-validation" "~8.3.0-rc.3" + "@abp/jquery-validation" "~8.3.0" jquery-validation-unobtrusive "^4.0.0" -"@abp/jquery-validation@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-8.3.0-rc.3.tgz#d71e59dfa793070b780bb8078f4cd12b8217f701" - integrity sha512-/OEh5PVKfA4BB7YVmFFBa+GKDR4jzNOkRBUnzplxxcegrXlbbjuxC7VcnsLzXQJ1c2aUO6a1y8L7MsPMjaXVrg== +"@abp/jquery-validation@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-8.3.0.tgz#bd6a72c6d86f116abe3b5d2adf3752bdbbcca887" + integrity sha512-6l5BZSa3N0Fou6Se7MfUSnI2dD4SYhZ2V988bgPJQ6p37XBOZ2OAj7LEIf5FSjtUzXjao/6/vqjkPNYreNikig== dependencies: - "@abp/jquery" "~8.3.0-rc.3" + "@abp/jquery" "~8.3.0" jquery-validation "^1.20.1" -"@abp/jquery@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-8.3.0-rc.3.tgz#7350b8675c7199b143bad86f46a50c629568605b" - integrity sha512-GkjKCrQmqqeu3xvpWTZxFa1VVRKPhmiutO2syuPi2dReDBhMV6h6EZZeu5y8lHLvL1HTEEANFFFXJGUna07FRQ== +"@abp/jquery@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-8.3.0.tgz#9be5ef2f769680226e6a1a981026590caf3b57ef" + integrity sha512-GsFY+n3EtS6B0pAoKd+xMnt5Dzi5bHvIbhLgDgfQfOBzAy3twGRWsPQ3nkuXXm8TppwujMNowU1oiLKPPm0AOA== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" jquery "~3.7.1" -"@abp/lodash@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-8.3.0-rc.3.tgz#90b1c266a16bd2bdfab22bb635114610738a17ba" - integrity sha512-L4lw6eSOXeXg2IixjdcHHVw1z7Q1wLUJDr8NzlRF51KfEPZ5Lt28IhoJuEfE7y24e6v+q6CL15axPwSQOUIlhw== +"@abp/lodash@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-8.3.0.tgz#f5a0a496c999886f2d6999067bfac2e1f0c3969c" + integrity sha512-BiAsONbKR/RKG3WjRaMWVmhNe1ELEsykVq+ogG1Rhk3kwPbvze3TS8k2p0Lu/RC41/BmDUmJ5abg1pUMwkRT8w== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" lodash "^4.17.21" -"@abp/luxon@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-8.3.0-rc.3.tgz#dc2a024c4b20b59408c41b259fe9b7cc8820bd7f" - integrity sha512-QOpAHiJxzSW+4HClyTspYaMDSUbY4Sz36d4Q7LSKHcwLIuqQ7rRfGEeWctYZYPwHIgK4udhde08Z8xrzl5tZSg== +"@abp/luxon@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-8.3.0.tgz#7dd3f756be1605506e26f7ac76b80cc082a12d07" + integrity sha512-8gdI5BtXkVp0sFg89QVDe8AvgQ7Qfq4JCqz2PMrKPSATR3H8GD6BCaEYpRp6CNTCjVrQjGZdzKgUyea1D3dHbw== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" luxon "^3.4.4" -"@abp/malihu-custom-scrollbar-plugin@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-8.3.0-rc.3.tgz#4eb53cf29ecf7c613f2d00e5b1bab4d807fd8396" - integrity sha512-NyQ2Qg2PfsDjWZfSwfsESFFkveIMQXFwWiSWgmeolWeFNtETDI1KJ5Nrf//sY+8zpn6ciCQTI5iaklLPPWQSKg== +"@abp/malihu-custom-scrollbar-plugin@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-8.3.0.tgz#c88c132c3402bbb02054ca7d446051950f87a817" + integrity sha512-nd/mb6LJa6fMxal8PGcIjIRIoZ/UHCd01WDC9YI2H4wGCGx0CA0JyHso5oc/OEzJhUL8ujO/vYm9uLb7YahPtA== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/moment@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-8.3.0-rc.3.tgz#8f997de893d8b69f670f99fe0f3f8a8b3ed64451" - integrity sha512-UulCn7Qt6Y1JfXYd+KGsvJZX7uybXVwud+55tE7TnNl7OXmQ6R3yL6uv+5da0iJsZzQa6c3EknmTkLLD53HfRw== +"@abp/moment@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-8.3.0.tgz#8e4f7a523ab76ef9e4cd96a399560bad38d38d1a" + integrity sha512-LywSsKuQ2GN/Btmle6CcTKa811zbvUWdC+RLQA792K9HyBs6LvN0qRRluEQZgplairRgh2pDOg8tdFlUERkv2w== dependencies: moment "^2.30.1" -"@abp/prismjs@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-8.3.0-rc.3.tgz#9a78f0339f0b20591990f585497e7f5e585828d8" - integrity sha512-IaPkxDQeB9NhFGRh7jEmRTdLcNcCEdwdEELzZpYgQIQ4EOA/bq9jbYa9rD9wAYXRE6/yliQLTzmOzori4ddrXw== +"@abp/prismjs@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-8.3.0.tgz#0c87c63294d1452ed7152083d2fb6e70aa3aeae6" + integrity sha512-3wpwbqqlGRfQSLcBP+Qb2TKOoVGZVYYwOP6dP3So9ev8J5gFMDEizH9zLwRVHYrrsZZP8/etYnyZ0hn7ewuI5Q== dependencies: - "@abp/clipboard" "~8.3.0-rc.3" - "@abp/core" "~8.3.0-rc.3" + "@abp/clipboard" "~8.3.0" + "@abp/core" "~8.3.0" prismjs "^1.29.0" -"@abp/select2@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-8.3.0-rc.3.tgz#621505b7a829b02cfbb146c7b710093b9e6e19f4" - integrity sha512-SV0gTfKbEAgMG/ND6zrc3QF1buByHePrPxoI1lt1ZiSgt5m9V9i6+zDkE20/W/puegINJAU2kJZtm9hCfMtXaQ== +"@abp/select2@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-8.3.0.tgz#ef4742fcd345394767f46180f61c6cabbd0b3867" + integrity sha512-bdLt2+ImxxpiZl4HGbYJpdDROQUT7/Z/+8A+6oJNacq3lNekdvufLYgTMxKru6zTbnd9j3HFKMOTE1eRjb9Xqg== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" select2 "^4.0.13" -"@abp/sweetalert2@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-8.3.0-rc.3.tgz#728978d364fe80dfd3b9cacdee0960e921d404af" - integrity sha512-G3xAKewy7TH2UZgLg+mVhgng5y1RbanVfsA/VTc9DE1XBMG9fpiqywhbny/5qabFhgvNjMKM28Yce23uAsji1A== +"@abp/sweetalert2@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-8.3.0.tgz#a63020d57e44f7940817287d3d9676288bfb85aa" + integrity sha512-ooqPM4Z2v2scnMo5l8ycTmp6t/sW4sCsvIkJ4TyM876WLQJaZxJdOao4RQWuU+dVFr9zg8cOwqLH4q7UEiO6ww== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" sweetalert2 "^11.3.6" -"@abp/timeago@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-8.3.0-rc.3.tgz#dcef20b900e6e95e12fec64b2f1632949f164eb0" - integrity sha512-sFOlpH54PiHosrmRoPZHtC+RVQdjPWetvtFm7svIfCta+dq6Iz70B7/O0oqQabAIERhA9jTf3ubMtBF6FCdmYg== +"@abp/timeago@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-8.3.0.tgz#b3b8d6927bf170f77af848bc1925e5ef6835bd55" + integrity sha512-Dd6xaUoF9Bp4F9WJnTsFBqY+Gt++UR7UmLvBZL/dvthkeNCu2I8MUsmshkUUjY0lIXpjZwefUOuyupQrgHXPMg== dependencies: - "@abp/jquery" "~8.3.0-rc.3" + "@abp/jquery" "~8.3.0" timeago "^1.6.7" -"@abp/toastr@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-8.3.0-rc.3.tgz#5c821d5a049c322f082c37febd5980d2d664292c" - integrity sha512-PdiQMO6UA6yTKGHqztm5Kxu3UzsidnYyQtjojVTYQd87mvgIDIUkoXxXJ2VVgHnRy2FdZW12UfZG4v3/eJHbmg== +"@abp/toastr@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-8.3.0.tgz#e68a2bd8f731e79034594bc2c736f7c66b3df1af" + integrity sha512-aWK/RaX/FmcEKhJLjsw1A0K2c04m2fRJkmo9NwzBCSscy6Msw9IMkqNWLiFDThMU8/qKzq7wq3Vmk/C0IpeAwA== dependencies: - "@abp/jquery" "~8.3.0-rc.3" + "@abp/jquery" "~8.3.0" toastr "^2.1.4" -"@abp/utils@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-8.3.0-rc.3.tgz#00b4acf4a4a2b4c4c1193a737f972d6508cf1831" - integrity sha512-cEPVo2QkLmn4Meo++dkvknfKlNlfQ7kmdWdXon1ZViaf9YFbTEZIYD5ccrdGUvKkVlAyOHG3TcAHesiAOyx1PQ== +"@abp/utils@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-8.3.0.tgz#96ae9266ad4d833fd9d723acef7fc85fabf618d9" + integrity sha512-w/XAqza4Z8wBWRoj5uPNKbd1/bE9L/uUWk6EUSBKmljMRryWQBmaPkb1XgvrOMQIbyyF60tUvvipapQLPVh6hw== dependencies: just-compare "^2.3.0" diff --git a/modules/blogging/app/Volo.BloggingTestApp/package.json b/modules/blogging/app/Volo.BloggingTestApp/package.json index b1fe7111c9..a7d225a033 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": "~8.3.0-rc.3", - "@abp/blogging": "~8.3.0-rc.3" + "@abp/aspnetcore.mvc.ui.theme.basic": "~8.3.0", + "@abp/blogging": "~8.3.0" } } diff --git a/modules/blogging/app/Volo.BloggingTestApp/yarn.lock b/modules/blogging/app/Volo.BloggingTestApp/yarn.lock index f34fbcc450..a1ee3f6aea 100644 --- a/modules/blogging/app/Volo.BloggingTestApp/yarn.lock +++ b/modules/blogging/app/Volo.BloggingTestApp/yarn.lock @@ -2,237 +2,237 @@ # yarn lockfile v1 -"@abp/aspnetcore.mvc.ui.theme.basic@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-8.3.0-rc.3.tgz#58dc0dc5bb42e7c2bd70c717256332df2efe6d45" - integrity sha512-ba97ROK5RiEtIwOMwwfHuZFAX/iaQ+fR4Tw6cz+SHGkqfrACP4KnO+GwplCCyG/Y/ZmbX8KTliDEWGKDL4CCqQ== - dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~8.3.0-rc.3" - -"@abp/aspnetcore.mvc.ui.theme.shared@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-8.3.0-rc.3.tgz#804fe763c3b66cbaf7ac8de7aca53a8690f0283c" - integrity sha512-ldiW9rXMMF7iAZpgFg1gDbwZW64/qLjhIyn+IcO7BzpLD6DKCzeQl/M+p7H1h7TC/ZSLEjRfcQs+ubjMI+OFoQ== - dependencies: - "@abp/aspnetcore.mvc.ui" "~8.3.0-rc.3" - "@abp/bootstrap" "~8.3.0-rc.3" - "@abp/bootstrap-datepicker" "~8.3.0-rc.3" - "@abp/bootstrap-daterangepicker" "~8.3.0-rc.3" - "@abp/datatables.net-bs5" "~8.3.0-rc.3" - "@abp/font-awesome" "~8.3.0-rc.3" - "@abp/jquery-form" "~8.3.0-rc.3" - "@abp/jquery-validation-unobtrusive" "~8.3.0-rc.3" - "@abp/lodash" "~8.3.0-rc.3" - "@abp/luxon" "~8.3.0-rc.3" - "@abp/malihu-custom-scrollbar-plugin" "~8.3.0-rc.3" - "@abp/moment" "~8.3.0-rc.3" - "@abp/select2" "~8.3.0-rc.3" - "@abp/sweetalert2" "~8.3.0-rc.3" - "@abp/timeago" "~8.3.0-rc.3" - "@abp/toastr" "~8.3.0-rc.3" - -"@abp/aspnetcore.mvc.ui@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-8.3.0-rc.3.tgz#e1e68f10e1715af44505da2d80b12fdf52d7de8c" - integrity sha512-0ld0/fXTj2mJZ12W1nn87K1Beqg+zbIGSR8lxWXG56jVArxasSqL3CiOQg+lLMUnWq1kwtTuoxZZVA76aL+nJA== +"@abp/aspnetcore.mvc.ui.theme.basic@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-8.3.0.tgz#a2d17eb5da2c3abfad4bcc842cfcda0e58a130a4" + integrity sha512-T2dg7WlvNSrwTCfy5wk4gqiJ/15kIjMGM4wLXIJcMYn60yGY/YeX6Q4A3R/qJzfl4JdgW5rt3GpdKv86y/ADXg== + dependencies: + "@abp/aspnetcore.mvc.ui.theme.shared" "~8.3.0" + +"@abp/aspnetcore.mvc.ui.theme.shared@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-8.3.0.tgz#5d6bb5181a62770e9cb967980b77e75c115c5ed7" + integrity sha512-o/0eh8jLS+YJiseTKzzioUz0vNnMFzyoz+mkyA4PlO1gqw2JFhzPhTBZ3cuyV9QlxUfEA8dWAkqAUX6vqiHwkw== + dependencies: + "@abp/aspnetcore.mvc.ui" "~8.3.0" + "@abp/bootstrap" "~8.3.0" + "@abp/bootstrap-datepicker" "~8.3.0" + "@abp/bootstrap-daterangepicker" "~8.3.0" + "@abp/datatables.net-bs5" "~8.3.0" + "@abp/font-awesome" "~8.3.0" + "@abp/jquery-form" "~8.3.0" + "@abp/jquery-validation-unobtrusive" "~8.3.0" + "@abp/lodash" "~8.3.0" + "@abp/luxon" "~8.3.0" + "@abp/malihu-custom-scrollbar-plugin" "~8.3.0" + "@abp/moment" "~8.3.0" + "@abp/select2" "~8.3.0" + "@abp/sweetalert2" "~8.3.0" + "@abp/timeago" "~8.3.0" + "@abp/toastr" "~8.3.0" + +"@abp/aspnetcore.mvc.ui@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-8.3.0.tgz#d7ba0539bfcc6661a347dea7f952489010b3e816" + integrity sha512-OxgZhLKiXGFYYpNJ5O/IbhinsniiBPv9586e+1Soar0GckCMIIegJxnJb1Bo1O75blrcK2cIU6LqjRT1FXt2Lw== dependencies: ansi-colors "^4.1.3" -"@abp/blogging@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/blogging/-/blogging-8.3.0-rc.3.tgz#fc68b867467e64bf600a91577ff3285e7f1d4870" - integrity sha512-1fGQo62qNOPArbj3hPDmgYFO0hmqP0gMSWKXlFKc7DhB0+tkM0kNn85FgAaZ37DdFSdQAh/0xUzuQYPZGB8dFw== +"@abp/blogging@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/blogging/-/blogging-8.3.0.tgz#2559f67b961ce3987a1dd59c138c223e19f36d51" + integrity sha512-z9ntHhxgDYxX31OpGbPVsy9eY3/zLJiCpEtRpvNYKrKAVsS4fZSxfaywvma8owBpYmwyw4uNHVLr4EXpq0oX2Q== dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~8.3.0-rc.3" - "@abp/owl.carousel" "~8.3.0-rc.3" - "@abp/prismjs" "~8.3.0-rc.3" - "@abp/tui-editor" "~8.3.0-rc.3" + "@abp/aspnetcore.mvc.ui.theme.shared" "~8.3.0" + "@abp/owl.carousel" "~8.3.0" + "@abp/prismjs" "~8.3.0" + "@abp/tui-editor" "~8.3.0" -"@abp/bootstrap-datepicker@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-8.3.0-rc.3.tgz#319054e54532085031a80d5859dec1a56b7548ac" - integrity sha512-fWKry7HLQ14Vv3GiF/bqge4ySN/9GkK/kZRrdeopdzvmOKTPCHSJ8DNrXAmd+WVHbcqdQ6uovWBOfMufCLohJw== +"@abp/bootstrap-datepicker@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-8.3.0.tgz#8c1bf9efec37b671d8f28b8b1e89c1ac66684267" + integrity sha512-KCwMtm7x+cnKPeNMzhjDJUce0stwu4e57ibmvA6sMf1tmj+yB256O4E2hIDDohiT3vP/zV8HVHX6uATlcmGC9w== dependencies: bootstrap-datepicker "^1.10.0" -"@abp/bootstrap-daterangepicker@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-8.3.0-rc.3.tgz#873728e2d6313fae07f1f74a4cf483e50bccfa7f" - integrity sha512-nu2N12ftl/1zA7Fe1lAgZiJnkZKFBNjfsPmy+ykQLKGWIkca14b0UHwUIHEaiI26fD6bBT50/kMRzA7uE3goaA== +"@abp/bootstrap-daterangepicker@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-8.3.0.tgz#2b8ed978333502677916f88cbb3e1d1b1c8a3a17" + integrity sha512-uQSfuCQogl4BujdqvtdAoSE+z32ci8FT5+i3gLfpqbgTaxvY/Kv5NxAUH5/1sjnuAE7SMWO+eVvI3V0pXgQohg== dependencies: bootstrap-daterangepicker "^3.1.0" -"@abp/bootstrap@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-8.3.0-rc.3.tgz#ca01bc3b6c4d5b63cf1bb86472e8df366ff3cf40" - integrity sha512-qSJ5s8k3X4WANgUoEZ289q+UKkStnbAMIEmIh6x93nIZHaGAJsK3oaSNgZ2DbGPhxpMKxhJpCuzF1KrRDtwtUQ== +"@abp/bootstrap@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-8.3.0.tgz#96d6ea7e6ac30f6e34e495a4224f56f7b2a1a7a3" + integrity sha512-5AmdTtakmWhZmHrb7ibvvf+KwF9OGadpAe7Kv9mNEE02K2qkp7Xw4r5o/bgVl7YfLC1FA6GZZXrV2s2t0gjHtg== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" bootstrap "^5.3.3" -"@abp/clipboard@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-8.3.0-rc.3.tgz#73eeba6bebccd0926ee40ba693c4c1e72f559f05" - integrity sha512-NUjh2ML1g9afBZcW0Ulp9/7CEMPH57ukxUwJBC88yd0C+oYC7KVurD7yeLtBrMAMQdfqP0e/lQcxZj69HB9p7g== +"@abp/clipboard@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-8.3.0.tgz#1b171e533f768cf42c8fc0c9c67fac1c636fee8c" + integrity sha512-T0O4OaMxLLYztAxyvEc3onEOpGHB/C8/jDcvJwd7mgpLoi9zXVfHwpnzkx/egfNJMzp49STD6Jc+jACi8Uq+CQ== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" clipboard "^2.0.11" -"@abp/core@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-8.3.0-rc.3.tgz#4031ec2c08a00652bb717c962ddc3aa8b3cf72c9" - integrity sha512-9Y7EcLE+0RLnJyhZlSYCElTjrFz+P7uXbyl+1UyuyY+dxyAdZhZ+1WPHFSr0f8KlJrxkjnsPj+gR4e48u15FDw== +"@abp/core@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-8.3.0.tgz#3a68f5a9549efcc3e13500e301f2576751b51445" + integrity sha512-zrxnZi4qij/Y4AZWaXuPqs3Dd7gBtU/onX7FkYxLgQDxYBfx+84QAnPRNRFKMWaD/wKbTUB0wA66U3t2aiQX9Q== dependencies: - "@abp/utils" "~8.3.0-rc.3" + "@abp/utils" "~8.3.0" -"@abp/datatables.net-bs5@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-8.3.0-rc.3.tgz#da22fbf7fe23671bfa20e83c9490e7bbe169b4aa" - integrity sha512-36VOOd/1461LZN11awaU5xbC3oYYJFebNFBeFZijsc8LtVKCwgMWZ8K3sCOolBVEyltDzKntw+w0NwhlWjd8tA== +"@abp/datatables.net-bs5@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-8.3.0.tgz#21822ae4912a561afe9112925185aece03fcd0eb" + integrity sha512-GOGYSSHp3iPUDFRX2Y3C0wkiCOJDuYuK/zUSzQLNpOvBMZO+I/oWBcZM+qkVowIzsoRlAGV9+CVV2B/B05qidA== dependencies: - "@abp/datatables.net" "~8.3.0-rc.3" + "@abp/datatables.net" "~8.3.0" datatables.net-bs5 "^2.0.8" -"@abp/datatables.net@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-8.3.0-rc.3.tgz#933ade7c61d3dfb61aa9278eb948e7756013a61f" - integrity sha512-MjSWhmMilHAKb4HmCLQOXesuFWvguIxhpKRAfSfweIiaOtgaPBh4KR8PSGxZgC0fImQYjWSfHQP4QkLAd5xasA== +"@abp/datatables.net@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-8.3.0.tgz#ff697758ce9309ba8311f23aec921c4722588c8b" + integrity sha512-4dIdv7eN1tVouOUrlF+MIdg8zQpecyH61waqLgy1q5jMZQivrTSFZ7UWMG3WVOAYjw5zSUZHZPbzA+ttnaOPkg== dependencies: - "@abp/jquery" "~8.3.0-rc.3" + "@abp/jquery" "~8.3.0" datatables.net "^2.0.8" -"@abp/font-awesome@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-8.3.0-rc.3.tgz#efa785200433025725e6dcd48c8b6b538938681d" - integrity sha512-DRjSDWhTWmL0I2A7KcFOxQFaLftxg0Rvcss0138j/mGpt64+unzcYo6YRCEga/k6ygxc7dYnhFmQf2tli44toQ== +"@abp/font-awesome@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-8.3.0.tgz#9e4e9adc08dfca52c0a07d1608c5e5662675a4c9" + integrity sha512-NRxvM/dzvQC2Cj/F5i07XB/i6IVTmXcO9sOq6TWosWib0wGaPxRbCSjy8QUAYSD1QYaVQ30XMb3XXImaMGyd8A== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" "@fortawesome/fontawesome-free" "^6.5.2" -"@abp/jquery-form@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-8.3.0-rc.3.tgz#fbb1ceb0e4092243cb018e1d7aa1ca86371fa98c" - integrity sha512-n7Tu4b2UhaRMcQCmzcBMiEYnaaR/OmA7LZfOcg4YP202xnLj29w4R/sRbQjr0w9lvPhue9rrSXaEf43UrV8eyg== +"@abp/jquery-form@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-8.3.0.tgz#fa2ad2fedbe3d3528ee94cbbd4f94d48f0cb5e4d" + integrity sha512-olP9FmpNVTbOIewsVua0moHVYXw4Sl3chFbvTDLG6vRBohLSjllUXfgY3UEIVWR1PCqnAg+iEJZl9NHB9iOLBg== dependencies: - "@abp/jquery" "~8.3.0-rc.3" + "@abp/jquery" "~8.3.0" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-8.3.0-rc.3.tgz#bcc8dad54b880134519f642b6a1a151584889bf2" - integrity sha512-4pfc7vYh5oMZc4+AJRwN7CQmb4ZK29POyuL9RjuBCQbvYCLcru0M5cQTz3wt9jLeAXn402lbwxh1cLioZfw8SQ== +"@abp/jquery-validation-unobtrusive@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-8.3.0.tgz#0992cdd33170df83c79aa3371038c0b30e451521" + integrity sha512-9hidjq8x8sTnP5O3K2b2x9NpxvPd9WB03ENR6OfvM89kfSmQapSvBZTlCu80YK9NaQJ6MLQRLYOCuc3GHcj3EQ== dependencies: - "@abp/jquery-validation" "~8.3.0-rc.3" + "@abp/jquery-validation" "~8.3.0" jquery-validation-unobtrusive "^4.0.0" -"@abp/jquery-validation@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-8.3.0-rc.3.tgz#d71e59dfa793070b780bb8078f4cd12b8217f701" - integrity sha512-/OEh5PVKfA4BB7YVmFFBa+GKDR4jzNOkRBUnzplxxcegrXlbbjuxC7VcnsLzXQJ1c2aUO6a1y8L7MsPMjaXVrg== +"@abp/jquery-validation@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-8.3.0.tgz#bd6a72c6d86f116abe3b5d2adf3752bdbbcca887" + integrity sha512-6l5BZSa3N0Fou6Se7MfUSnI2dD4SYhZ2V988bgPJQ6p37XBOZ2OAj7LEIf5FSjtUzXjao/6/vqjkPNYreNikig== dependencies: - "@abp/jquery" "~8.3.0-rc.3" + "@abp/jquery" "~8.3.0" jquery-validation "^1.20.1" -"@abp/jquery@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-8.3.0-rc.3.tgz#7350b8675c7199b143bad86f46a50c629568605b" - integrity sha512-GkjKCrQmqqeu3xvpWTZxFa1VVRKPhmiutO2syuPi2dReDBhMV6h6EZZeu5y8lHLvL1HTEEANFFFXJGUna07FRQ== +"@abp/jquery@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-8.3.0.tgz#9be5ef2f769680226e6a1a981026590caf3b57ef" + integrity sha512-GsFY+n3EtS6B0pAoKd+xMnt5Dzi5bHvIbhLgDgfQfOBzAy3twGRWsPQ3nkuXXm8TppwujMNowU1oiLKPPm0AOA== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" jquery "~3.7.1" -"@abp/lodash@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-8.3.0-rc.3.tgz#90b1c266a16bd2bdfab22bb635114610738a17ba" - integrity sha512-L4lw6eSOXeXg2IixjdcHHVw1z7Q1wLUJDr8NzlRF51KfEPZ5Lt28IhoJuEfE7y24e6v+q6CL15axPwSQOUIlhw== +"@abp/lodash@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-8.3.0.tgz#f5a0a496c999886f2d6999067bfac2e1f0c3969c" + integrity sha512-BiAsONbKR/RKG3WjRaMWVmhNe1ELEsykVq+ogG1Rhk3kwPbvze3TS8k2p0Lu/RC41/BmDUmJ5abg1pUMwkRT8w== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" lodash "^4.17.21" -"@abp/luxon@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-8.3.0-rc.3.tgz#dc2a024c4b20b59408c41b259fe9b7cc8820bd7f" - integrity sha512-QOpAHiJxzSW+4HClyTspYaMDSUbY4Sz36d4Q7LSKHcwLIuqQ7rRfGEeWctYZYPwHIgK4udhde08Z8xrzl5tZSg== +"@abp/luxon@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-8.3.0.tgz#7dd3f756be1605506e26f7ac76b80cc082a12d07" + integrity sha512-8gdI5BtXkVp0sFg89QVDe8AvgQ7Qfq4JCqz2PMrKPSATR3H8GD6BCaEYpRp6CNTCjVrQjGZdzKgUyea1D3dHbw== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" luxon "^3.4.4" -"@abp/malihu-custom-scrollbar-plugin@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-8.3.0-rc.3.tgz#4eb53cf29ecf7c613f2d00e5b1bab4d807fd8396" - integrity sha512-NyQ2Qg2PfsDjWZfSwfsESFFkveIMQXFwWiSWgmeolWeFNtETDI1KJ5Nrf//sY+8zpn6ciCQTI5iaklLPPWQSKg== +"@abp/malihu-custom-scrollbar-plugin@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-8.3.0.tgz#c88c132c3402bbb02054ca7d446051950f87a817" + integrity sha512-nd/mb6LJa6fMxal8PGcIjIRIoZ/UHCd01WDC9YI2H4wGCGx0CA0JyHso5oc/OEzJhUL8ujO/vYm9uLb7YahPtA== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/moment@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-8.3.0-rc.3.tgz#8f997de893d8b69f670f99fe0f3f8a8b3ed64451" - integrity sha512-UulCn7Qt6Y1JfXYd+KGsvJZX7uybXVwud+55tE7TnNl7OXmQ6R3yL6uv+5da0iJsZzQa6c3EknmTkLLD53HfRw== +"@abp/moment@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-8.3.0.tgz#8e4f7a523ab76ef9e4cd96a399560bad38d38d1a" + integrity sha512-LywSsKuQ2GN/Btmle6CcTKa811zbvUWdC+RLQA792K9HyBs6LvN0qRRluEQZgplairRgh2pDOg8tdFlUERkv2w== dependencies: moment "^2.30.1" -"@abp/owl.carousel@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/owl.carousel/-/owl.carousel-8.3.0-rc.3.tgz#acf0bcb208013cef595fe7a6d7f7c25518a43e66" - integrity sha512-QgAJ3LJ8HYZQQV9z64TCJ/L4gx19avIlakMs5iViz64vxQM1HM1bLaBHR/51twcxHGDEpTN6aH2N0ERONGgkQg== +"@abp/owl.carousel@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/owl.carousel/-/owl.carousel-8.3.0.tgz#4a1128e7eb98511b890fb91ef7658b6d8d3381e7" + integrity sha512-nVBPb00XOInGNUFQgzNEN/ASZGJPl1FTxPXkg6aQQPPAQMz3ZJXByZrvej56zUR550M831XtRNmWoulI+/yVGQ== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" owl.carousel "^2.3.4" -"@abp/prismjs@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-8.3.0-rc.3.tgz#9a78f0339f0b20591990f585497e7f5e585828d8" - integrity sha512-IaPkxDQeB9NhFGRh7jEmRTdLcNcCEdwdEELzZpYgQIQ4EOA/bq9jbYa9rD9wAYXRE6/yliQLTzmOzori4ddrXw== +"@abp/prismjs@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-8.3.0.tgz#0c87c63294d1452ed7152083d2fb6e70aa3aeae6" + integrity sha512-3wpwbqqlGRfQSLcBP+Qb2TKOoVGZVYYwOP6dP3So9ev8J5gFMDEizH9zLwRVHYrrsZZP8/etYnyZ0hn7ewuI5Q== dependencies: - "@abp/clipboard" "~8.3.0-rc.3" - "@abp/core" "~8.3.0-rc.3" + "@abp/clipboard" "~8.3.0" + "@abp/core" "~8.3.0" prismjs "^1.29.0" -"@abp/select2@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-8.3.0-rc.3.tgz#621505b7a829b02cfbb146c7b710093b9e6e19f4" - integrity sha512-SV0gTfKbEAgMG/ND6zrc3QF1buByHePrPxoI1lt1ZiSgt5m9V9i6+zDkE20/W/puegINJAU2kJZtm9hCfMtXaQ== +"@abp/select2@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-8.3.0.tgz#ef4742fcd345394767f46180f61c6cabbd0b3867" + integrity sha512-bdLt2+ImxxpiZl4HGbYJpdDROQUT7/Z/+8A+6oJNacq3lNekdvufLYgTMxKru6zTbnd9j3HFKMOTE1eRjb9Xqg== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" select2 "^4.0.13" -"@abp/sweetalert2@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-8.3.0-rc.3.tgz#728978d364fe80dfd3b9cacdee0960e921d404af" - integrity sha512-G3xAKewy7TH2UZgLg+mVhgng5y1RbanVfsA/VTc9DE1XBMG9fpiqywhbny/5qabFhgvNjMKM28Yce23uAsji1A== +"@abp/sweetalert2@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-8.3.0.tgz#a63020d57e44f7940817287d3d9676288bfb85aa" + integrity sha512-ooqPM4Z2v2scnMo5l8ycTmp6t/sW4sCsvIkJ4TyM876WLQJaZxJdOao4RQWuU+dVFr9zg8cOwqLH4q7UEiO6ww== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" sweetalert2 "^11.3.6" -"@abp/timeago@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-8.3.0-rc.3.tgz#dcef20b900e6e95e12fec64b2f1632949f164eb0" - integrity sha512-sFOlpH54PiHosrmRoPZHtC+RVQdjPWetvtFm7svIfCta+dq6Iz70B7/O0oqQabAIERhA9jTf3ubMtBF6FCdmYg== +"@abp/timeago@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-8.3.0.tgz#b3b8d6927bf170f77af848bc1925e5ef6835bd55" + integrity sha512-Dd6xaUoF9Bp4F9WJnTsFBqY+Gt++UR7UmLvBZL/dvthkeNCu2I8MUsmshkUUjY0lIXpjZwefUOuyupQrgHXPMg== dependencies: - "@abp/jquery" "~8.3.0-rc.3" + "@abp/jquery" "~8.3.0" timeago "^1.6.7" -"@abp/toastr@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-8.3.0-rc.3.tgz#5c821d5a049c322f082c37febd5980d2d664292c" - integrity sha512-PdiQMO6UA6yTKGHqztm5Kxu3UzsidnYyQtjojVTYQd87mvgIDIUkoXxXJ2VVgHnRy2FdZW12UfZG4v3/eJHbmg== +"@abp/toastr@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-8.3.0.tgz#e68a2bd8f731e79034594bc2c736f7c66b3df1af" + integrity sha512-aWK/RaX/FmcEKhJLjsw1A0K2c04m2fRJkmo9NwzBCSscy6Msw9IMkqNWLiFDThMU8/qKzq7wq3Vmk/C0IpeAwA== dependencies: - "@abp/jquery" "~8.3.0-rc.3" + "@abp/jquery" "~8.3.0" toastr "^2.1.4" -"@abp/tui-editor@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/tui-editor/-/tui-editor-8.3.0-rc.3.tgz#52524047cba5b068d7bb22f1295226c090f3c6b1" - integrity sha512-PPipxm/BNtfmimc185kK7hHkkAS692huhKlLJnLHwCpuHvGbKB1rCoourW451V6knuYOkfu79wM3GSnVFROF2A== +"@abp/tui-editor@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/tui-editor/-/tui-editor-8.3.0.tgz#188360644140f3173b0347c1ce883612a5eb9e18" + integrity sha512-GNFuKvAlwihuzg91dekGZ5s5aLKySROHbLujanzaco1nfRvWehx+J+oCP0rHzQ3++DpxEXhlz05qW9I1gCEAKA== dependencies: - "@abp/jquery" "~8.3.0-rc.3" - "@abp/prismjs" "~8.3.0-rc.3" + "@abp/jquery" "~8.3.0" + "@abp/prismjs" "~8.3.0" -"@abp/utils@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-8.3.0-rc.3.tgz#00b4acf4a4a2b4c4c1193a737f972d6508cf1831" - integrity sha512-cEPVo2QkLmn4Meo++dkvknfKlNlfQ7kmdWdXon1ZViaf9YFbTEZIYD5ccrdGUvKkVlAyOHG3TcAHesiAOyx1PQ== +"@abp/utils@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-8.3.0.tgz#96ae9266ad4d833fd9d723acef7fc85fabf618d9" + integrity sha512-w/XAqza4Z8wBWRoj5uPNKbd1/bE9L/uUWk6EUSBKmljMRryWQBmaPkb1XgvrOMQIbyyF60tUvvipapQLPVh6hw== dependencies: just-compare "^2.3.0" diff --git a/modules/client-simulation/demo/Volo.ClientSimulation.Demo/package.json b/modules/client-simulation/demo/Volo.ClientSimulation.Demo/package.json index 53ce0825c3..f218cbad11 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": "~8.3.0-rc.3" + "@abp/aspnetcore.mvc.ui.theme.basic": "~8.3.0" } } diff --git a/modules/client-simulation/demo/Volo.ClientSimulation.Demo/yarn.lock b/modules/client-simulation/demo/Volo.ClientSimulation.Demo/yarn.lock index cb24c2926f..d19b65bc24 100644 --- a/modules/client-simulation/demo/Volo.ClientSimulation.Demo/yarn.lock +++ b/modules/client-simulation/demo/Volo.ClientSimulation.Demo/yarn.lock @@ -2,194 +2,194 @@ # yarn lockfile v1 -"@abp/aspnetcore.mvc.ui.theme.basic@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-8.3.0-rc.3.tgz#58dc0dc5bb42e7c2bd70c717256332df2efe6d45" - integrity sha512-ba97ROK5RiEtIwOMwwfHuZFAX/iaQ+fR4Tw6cz+SHGkqfrACP4KnO+GwplCCyG/Y/ZmbX8KTliDEWGKDL4CCqQ== - dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~8.3.0-rc.3" - -"@abp/aspnetcore.mvc.ui.theme.shared@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-8.3.0-rc.3.tgz#804fe763c3b66cbaf7ac8de7aca53a8690f0283c" - integrity sha512-ldiW9rXMMF7iAZpgFg1gDbwZW64/qLjhIyn+IcO7BzpLD6DKCzeQl/M+p7H1h7TC/ZSLEjRfcQs+ubjMI+OFoQ== - dependencies: - "@abp/aspnetcore.mvc.ui" "~8.3.0-rc.3" - "@abp/bootstrap" "~8.3.0-rc.3" - "@abp/bootstrap-datepicker" "~8.3.0-rc.3" - "@abp/bootstrap-daterangepicker" "~8.3.0-rc.3" - "@abp/datatables.net-bs5" "~8.3.0-rc.3" - "@abp/font-awesome" "~8.3.0-rc.3" - "@abp/jquery-form" "~8.3.0-rc.3" - "@abp/jquery-validation-unobtrusive" "~8.3.0-rc.3" - "@abp/lodash" "~8.3.0-rc.3" - "@abp/luxon" "~8.3.0-rc.3" - "@abp/malihu-custom-scrollbar-plugin" "~8.3.0-rc.3" - "@abp/moment" "~8.3.0-rc.3" - "@abp/select2" "~8.3.0-rc.3" - "@abp/sweetalert2" "~8.3.0-rc.3" - "@abp/timeago" "~8.3.0-rc.3" - "@abp/toastr" "~8.3.0-rc.3" - -"@abp/aspnetcore.mvc.ui@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-8.3.0-rc.3.tgz#e1e68f10e1715af44505da2d80b12fdf52d7de8c" - integrity sha512-0ld0/fXTj2mJZ12W1nn87K1Beqg+zbIGSR8lxWXG56jVArxasSqL3CiOQg+lLMUnWq1kwtTuoxZZVA76aL+nJA== +"@abp/aspnetcore.mvc.ui.theme.basic@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-8.3.0.tgz#a2d17eb5da2c3abfad4bcc842cfcda0e58a130a4" + integrity sha512-T2dg7WlvNSrwTCfy5wk4gqiJ/15kIjMGM4wLXIJcMYn60yGY/YeX6Q4A3R/qJzfl4JdgW5rt3GpdKv86y/ADXg== + dependencies: + "@abp/aspnetcore.mvc.ui.theme.shared" "~8.3.0" + +"@abp/aspnetcore.mvc.ui.theme.shared@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-8.3.0.tgz#5d6bb5181a62770e9cb967980b77e75c115c5ed7" + integrity sha512-o/0eh8jLS+YJiseTKzzioUz0vNnMFzyoz+mkyA4PlO1gqw2JFhzPhTBZ3cuyV9QlxUfEA8dWAkqAUX6vqiHwkw== + dependencies: + "@abp/aspnetcore.mvc.ui" "~8.3.0" + "@abp/bootstrap" "~8.3.0" + "@abp/bootstrap-datepicker" "~8.3.0" + "@abp/bootstrap-daterangepicker" "~8.3.0" + "@abp/datatables.net-bs5" "~8.3.0" + "@abp/font-awesome" "~8.3.0" + "@abp/jquery-form" "~8.3.0" + "@abp/jquery-validation-unobtrusive" "~8.3.0" + "@abp/lodash" "~8.3.0" + "@abp/luxon" "~8.3.0" + "@abp/malihu-custom-scrollbar-plugin" "~8.3.0" + "@abp/moment" "~8.3.0" + "@abp/select2" "~8.3.0" + "@abp/sweetalert2" "~8.3.0" + "@abp/timeago" "~8.3.0" + "@abp/toastr" "~8.3.0" + +"@abp/aspnetcore.mvc.ui@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-8.3.0.tgz#d7ba0539bfcc6661a347dea7f952489010b3e816" + integrity sha512-OxgZhLKiXGFYYpNJ5O/IbhinsniiBPv9586e+1Soar0GckCMIIegJxnJb1Bo1O75blrcK2cIU6LqjRT1FXt2Lw== dependencies: ansi-colors "^4.1.3" -"@abp/bootstrap-datepicker@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-8.3.0-rc.3.tgz#319054e54532085031a80d5859dec1a56b7548ac" - integrity sha512-fWKry7HLQ14Vv3GiF/bqge4ySN/9GkK/kZRrdeopdzvmOKTPCHSJ8DNrXAmd+WVHbcqdQ6uovWBOfMufCLohJw== +"@abp/bootstrap-datepicker@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-8.3.0.tgz#8c1bf9efec37b671d8f28b8b1e89c1ac66684267" + integrity sha512-KCwMtm7x+cnKPeNMzhjDJUce0stwu4e57ibmvA6sMf1tmj+yB256O4E2hIDDohiT3vP/zV8HVHX6uATlcmGC9w== dependencies: bootstrap-datepicker "^1.10.0" -"@abp/bootstrap-daterangepicker@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-8.3.0-rc.3.tgz#873728e2d6313fae07f1f74a4cf483e50bccfa7f" - integrity sha512-nu2N12ftl/1zA7Fe1lAgZiJnkZKFBNjfsPmy+ykQLKGWIkca14b0UHwUIHEaiI26fD6bBT50/kMRzA7uE3goaA== +"@abp/bootstrap-daterangepicker@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-8.3.0.tgz#2b8ed978333502677916f88cbb3e1d1b1c8a3a17" + integrity sha512-uQSfuCQogl4BujdqvtdAoSE+z32ci8FT5+i3gLfpqbgTaxvY/Kv5NxAUH5/1sjnuAE7SMWO+eVvI3V0pXgQohg== dependencies: bootstrap-daterangepicker "^3.1.0" -"@abp/bootstrap@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-8.3.0-rc.3.tgz#ca01bc3b6c4d5b63cf1bb86472e8df366ff3cf40" - integrity sha512-qSJ5s8k3X4WANgUoEZ289q+UKkStnbAMIEmIh6x93nIZHaGAJsK3oaSNgZ2DbGPhxpMKxhJpCuzF1KrRDtwtUQ== +"@abp/bootstrap@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-8.3.0.tgz#96d6ea7e6ac30f6e34e495a4224f56f7b2a1a7a3" + integrity sha512-5AmdTtakmWhZmHrb7ibvvf+KwF9OGadpAe7Kv9mNEE02K2qkp7Xw4r5o/bgVl7YfLC1FA6GZZXrV2s2t0gjHtg== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" bootstrap "^5.3.3" -"@abp/core@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-8.3.0-rc.3.tgz#4031ec2c08a00652bb717c962ddc3aa8b3cf72c9" - integrity sha512-9Y7EcLE+0RLnJyhZlSYCElTjrFz+P7uXbyl+1UyuyY+dxyAdZhZ+1WPHFSr0f8KlJrxkjnsPj+gR4e48u15FDw== +"@abp/core@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-8.3.0.tgz#3a68f5a9549efcc3e13500e301f2576751b51445" + integrity sha512-zrxnZi4qij/Y4AZWaXuPqs3Dd7gBtU/onX7FkYxLgQDxYBfx+84QAnPRNRFKMWaD/wKbTUB0wA66U3t2aiQX9Q== dependencies: - "@abp/utils" "~8.3.0-rc.3" + "@abp/utils" "~8.3.0" -"@abp/datatables.net-bs5@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-8.3.0-rc.3.tgz#da22fbf7fe23671bfa20e83c9490e7bbe169b4aa" - integrity sha512-36VOOd/1461LZN11awaU5xbC3oYYJFebNFBeFZijsc8LtVKCwgMWZ8K3sCOolBVEyltDzKntw+w0NwhlWjd8tA== +"@abp/datatables.net-bs5@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-8.3.0.tgz#21822ae4912a561afe9112925185aece03fcd0eb" + integrity sha512-GOGYSSHp3iPUDFRX2Y3C0wkiCOJDuYuK/zUSzQLNpOvBMZO+I/oWBcZM+qkVowIzsoRlAGV9+CVV2B/B05qidA== dependencies: - "@abp/datatables.net" "~8.3.0-rc.3" + "@abp/datatables.net" "~8.3.0" datatables.net-bs5 "^2.0.8" -"@abp/datatables.net@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-8.3.0-rc.3.tgz#933ade7c61d3dfb61aa9278eb948e7756013a61f" - integrity sha512-MjSWhmMilHAKb4HmCLQOXesuFWvguIxhpKRAfSfweIiaOtgaPBh4KR8PSGxZgC0fImQYjWSfHQP4QkLAd5xasA== +"@abp/datatables.net@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-8.3.0.tgz#ff697758ce9309ba8311f23aec921c4722588c8b" + integrity sha512-4dIdv7eN1tVouOUrlF+MIdg8zQpecyH61waqLgy1q5jMZQivrTSFZ7UWMG3WVOAYjw5zSUZHZPbzA+ttnaOPkg== dependencies: - "@abp/jquery" "~8.3.0-rc.3" + "@abp/jquery" "~8.3.0" datatables.net "^2.0.8" -"@abp/font-awesome@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-8.3.0-rc.3.tgz#efa785200433025725e6dcd48c8b6b538938681d" - integrity sha512-DRjSDWhTWmL0I2A7KcFOxQFaLftxg0Rvcss0138j/mGpt64+unzcYo6YRCEga/k6ygxc7dYnhFmQf2tli44toQ== +"@abp/font-awesome@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-8.3.0.tgz#9e4e9adc08dfca52c0a07d1608c5e5662675a4c9" + integrity sha512-NRxvM/dzvQC2Cj/F5i07XB/i6IVTmXcO9sOq6TWosWib0wGaPxRbCSjy8QUAYSD1QYaVQ30XMb3XXImaMGyd8A== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" "@fortawesome/fontawesome-free" "^6.5.2" -"@abp/jquery-form@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-8.3.0-rc.3.tgz#fbb1ceb0e4092243cb018e1d7aa1ca86371fa98c" - integrity sha512-n7Tu4b2UhaRMcQCmzcBMiEYnaaR/OmA7LZfOcg4YP202xnLj29w4R/sRbQjr0w9lvPhue9rrSXaEf43UrV8eyg== +"@abp/jquery-form@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-8.3.0.tgz#fa2ad2fedbe3d3528ee94cbbd4f94d48f0cb5e4d" + integrity sha512-olP9FmpNVTbOIewsVua0moHVYXw4Sl3chFbvTDLG6vRBohLSjllUXfgY3UEIVWR1PCqnAg+iEJZl9NHB9iOLBg== dependencies: - "@abp/jquery" "~8.3.0-rc.3" + "@abp/jquery" "~8.3.0" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-8.3.0-rc.3.tgz#bcc8dad54b880134519f642b6a1a151584889bf2" - integrity sha512-4pfc7vYh5oMZc4+AJRwN7CQmb4ZK29POyuL9RjuBCQbvYCLcru0M5cQTz3wt9jLeAXn402lbwxh1cLioZfw8SQ== +"@abp/jquery-validation-unobtrusive@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-8.3.0.tgz#0992cdd33170df83c79aa3371038c0b30e451521" + integrity sha512-9hidjq8x8sTnP5O3K2b2x9NpxvPd9WB03ENR6OfvM89kfSmQapSvBZTlCu80YK9NaQJ6MLQRLYOCuc3GHcj3EQ== dependencies: - "@abp/jquery-validation" "~8.3.0-rc.3" + "@abp/jquery-validation" "~8.3.0" jquery-validation-unobtrusive "^4.0.0" -"@abp/jquery-validation@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-8.3.0-rc.3.tgz#d71e59dfa793070b780bb8078f4cd12b8217f701" - integrity sha512-/OEh5PVKfA4BB7YVmFFBa+GKDR4jzNOkRBUnzplxxcegrXlbbjuxC7VcnsLzXQJ1c2aUO6a1y8L7MsPMjaXVrg== +"@abp/jquery-validation@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-8.3.0.tgz#bd6a72c6d86f116abe3b5d2adf3752bdbbcca887" + integrity sha512-6l5BZSa3N0Fou6Se7MfUSnI2dD4SYhZ2V988bgPJQ6p37XBOZ2OAj7LEIf5FSjtUzXjao/6/vqjkPNYreNikig== dependencies: - "@abp/jquery" "~8.3.0-rc.3" + "@abp/jquery" "~8.3.0" jquery-validation "^1.20.1" -"@abp/jquery@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-8.3.0-rc.3.tgz#7350b8675c7199b143bad86f46a50c629568605b" - integrity sha512-GkjKCrQmqqeu3xvpWTZxFa1VVRKPhmiutO2syuPi2dReDBhMV6h6EZZeu5y8lHLvL1HTEEANFFFXJGUna07FRQ== +"@abp/jquery@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-8.3.0.tgz#9be5ef2f769680226e6a1a981026590caf3b57ef" + integrity sha512-GsFY+n3EtS6B0pAoKd+xMnt5Dzi5bHvIbhLgDgfQfOBzAy3twGRWsPQ3nkuXXm8TppwujMNowU1oiLKPPm0AOA== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" jquery "~3.7.1" -"@abp/lodash@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-8.3.0-rc.3.tgz#90b1c266a16bd2bdfab22bb635114610738a17ba" - integrity sha512-L4lw6eSOXeXg2IixjdcHHVw1z7Q1wLUJDr8NzlRF51KfEPZ5Lt28IhoJuEfE7y24e6v+q6CL15axPwSQOUIlhw== +"@abp/lodash@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-8.3.0.tgz#f5a0a496c999886f2d6999067bfac2e1f0c3969c" + integrity sha512-BiAsONbKR/RKG3WjRaMWVmhNe1ELEsykVq+ogG1Rhk3kwPbvze3TS8k2p0Lu/RC41/BmDUmJ5abg1pUMwkRT8w== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" lodash "^4.17.21" -"@abp/luxon@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-8.3.0-rc.3.tgz#dc2a024c4b20b59408c41b259fe9b7cc8820bd7f" - integrity sha512-QOpAHiJxzSW+4HClyTspYaMDSUbY4Sz36d4Q7LSKHcwLIuqQ7rRfGEeWctYZYPwHIgK4udhde08Z8xrzl5tZSg== +"@abp/luxon@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-8.3.0.tgz#7dd3f756be1605506e26f7ac76b80cc082a12d07" + integrity sha512-8gdI5BtXkVp0sFg89QVDe8AvgQ7Qfq4JCqz2PMrKPSATR3H8GD6BCaEYpRp6CNTCjVrQjGZdzKgUyea1D3dHbw== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" luxon "^3.4.4" -"@abp/malihu-custom-scrollbar-plugin@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-8.3.0-rc.3.tgz#4eb53cf29ecf7c613f2d00e5b1bab4d807fd8396" - integrity sha512-NyQ2Qg2PfsDjWZfSwfsESFFkveIMQXFwWiSWgmeolWeFNtETDI1KJ5Nrf//sY+8zpn6ciCQTI5iaklLPPWQSKg== +"@abp/malihu-custom-scrollbar-plugin@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-8.3.0.tgz#c88c132c3402bbb02054ca7d446051950f87a817" + integrity sha512-nd/mb6LJa6fMxal8PGcIjIRIoZ/UHCd01WDC9YI2H4wGCGx0CA0JyHso5oc/OEzJhUL8ujO/vYm9uLb7YahPtA== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/moment@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-8.3.0-rc.3.tgz#8f997de893d8b69f670f99fe0f3f8a8b3ed64451" - integrity sha512-UulCn7Qt6Y1JfXYd+KGsvJZX7uybXVwud+55tE7TnNl7OXmQ6R3yL6uv+5da0iJsZzQa6c3EknmTkLLD53HfRw== +"@abp/moment@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-8.3.0.tgz#8e4f7a523ab76ef9e4cd96a399560bad38d38d1a" + integrity sha512-LywSsKuQ2GN/Btmle6CcTKa811zbvUWdC+RLQA792K9HyBs6LvN0qRRluEQZgplairRgh2pDOg8tdFlUERkv2w== dependencies: moment "^2.30.1" -"@abp/select2@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-8.3.0-rc.3.tgz#621505b7a829b02cfbb146c7b710093b9e6e19f4" - integrity sha512-SV0gTfKbEAgMG/ND6zrc3QF1buByHePrPxoI1lt1ZiSgt5m9V9i6+zDkE20/W/puegINJAU2kJZtm9hCfMtXaQ== +"@abp/select2@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-8.3.0.tgz#ef4742fcd345394767f46180f61c6cabbd0b3867" + integrity sha512-bdLt2+ImxxpiZl4HGbYJpdDROQUT7/Z/+8A+6oJNacq3lNekdvufLYgTMxKru6zTbnd9j3HFKMOTE1eRjb9Xqg== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" select2 "^4.0.13" -"@abp/sweetalert2@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-8.3.0-rc.3.tgz#728978d364fe80dfd3b9cacdee0960e921d404af" - integrity sha512-G3xAKewy7TH2UZgLg+mVhgng5y1RbanVfsA/VTc9DE1XBMG9fpiqywhbny/5qabFhgvNjMKM28Yce23uAsji1A== +"@abp/sweetalert2@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-8.3.0.tgz#a63020d57e44f7940817287d3d9676288bfb85aa" + integrity sha512-ooqPM4Z2v2scnMo5l8ycTmp6t/sW4sCsvIkJ4TyM876WLQJaZxJdOao4RQWuU+dVFr9zg8cOwqLH4q7UEiO6ww== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" sweetalert2 "^11.3.6" -"@abp/timeago@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-8.3.0-rc.3.tgz#dcef20b900e6e95e12fec64b2f1632949f164eb0" - integrity sha512-sFOlpH54PiHosrmRoPZHtC+RVQdjPWetvtFm7svIfCta+dq6Iz70B7/O0oqQabAIERhA9jTf3ubMtBF6FCdmYg== +"@abp/timeago@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-8.3.0.tgz#b3b8d6927bf170f77af848bc1925e5ef6835bd55" + integrity sha512-Dd6xaUoF9Bp4F9WJnTsFBqY+Gt++UR7UmLvBZL/dvthkeNCu2I8MUsmshkUUjY0lIXpjZwefUOuyupQrgHXPMg== dependencies: - "@abp/jquery" "~8.3.0-rc.3" + "@abp/jquery" "~8.3.0" timeago "^1.6.7" -"@abp/toastr@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-8.3.0-rc.3.tgz#5c821d5a049c322f082c37febd5980d2d664292c" - integrity sha512-PdiQMO6UA6yTKGHqztm5Kxu3UzsidnYyQtjojVTYQd87mvgIDIUkoXxXJ2VVgHnRy2FdZW12UfZG4v3/eJHbmg== +"@abp/toastr@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-8.3.0.tgz#e68a2bd8f731e79034594bc2c736f7c66b3df1af" + integrity sha512-aWK/RaX/FmcEKhJLjsw1A0K2c04m2fRJkmo9NwzBCSscy6Msw9IMkqNWLiFDThMU8/qKzq7wq3Vmk/C0IpeAwA== dependencies: - "@abp/jquery" "~8.3.0-rc.3" + "@abp/jquery" "~8.3.0" toastr "^2.1.4" -"@abp/utils@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-8.3.0-rc.3.tgz#00b4acf4a4a2b4c4c1193a737f972d6508cf1831" - integrity sha512-cEPVo2QkLmn4Meo++dkvknfKlNlfQ7kmdWdXon1ZViaf9YFbTEZIYD5ccrdGUvKkVlAyOHG3TcAHesiAOyx1PQ== +"@abp/utils@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-8.3.0.tgz#96ae9266ad4d833fd9d723acef7fc85fabf618d9" + integrity sha512-w/XAqza4Z8wBWRoj5uPNKbd1/bE9L/uUWk6EUSBKmljMRryWQBmaPkb1XgvrOMQIbyyF60tUvvipapQLPVh6hw== dependencies: just-compare "^2.3.0" diff --git a/modules/cms-kit/angular/package.json b/modules/cms-kit/angular/package.json index ca02c9739a..3ee27697d0 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": "~8.3.0-rc.3", - "@abp/ng.identity": "~8.3.0-rc.3", - "@abp/ng.setting-management": "~8.3.0-rc.3", - "@abp/ng.tenant-management": "~8.3.0-rc.3", - "@abp/ng.theme.basic": "~8.3.0-rc.3", + "@abp/ng.account": "~8.3.0", + "@abp/ng.identity": "~8.3.0", + "@abp/ng.setting-management": "~8.3.0", + "@abp/ng.tenant-management": "~8.3.0", + "@abp/ng.theme.basic": "~8.3.0", "@angular/animations": "~10.0.0", "@angular/common": "~10.0.0", "@angular/compiler": "~10.0.0", diff --git a/modules/cms-kit/angular/projects/cms-kit/package.json b/modules/cms-kit/angular/projects/cms-kit/package.json index e852ec60a4..d2cfd7941b 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": ">=8.3.0-rc.3", - "@abp/ng.theme.shared": ">=8.3.0-rc.3" + "@abp/ng.core": ">=8.3.0", + "@abp/ng.theme.shared": ">=8.3.0" }, "dependencies": { "tslib": "^2.0.0" diff --git a/modules/cms-kit/host/Volo.CmsKit.IdentityServer/package.json b/modules/cms-kit/host/Volo.CmsKit.IdentityServer/package.json index 12e64e10a4..31f6d4b511 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": "~8.3.0-rc.3" + "@abp/aspnetcore.mvc.ui.theme.basic": "~8.3.0" } } diff --git a/modules/cms-kit/host/Volo.CmsKit.IdentityServer/yarn.lock b/modules/cms-kit/host/Volo.CmsKit.IdentityServer/yarn.lock index cb24c2926f..d19b65bc24 100644 --- a/modules/cms-kit/host/Volo.CmsKit.IdentityServer/yarn.lock +++ b/modules/cms-kit/host/Volo.CmsKit.IdentityServer/yarn.lock @@ -2,194 +2,194 @@ # yarn lockfile v1 -"@abp/aspnetcore.mvc.ui.theme.basic@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-8.3.0-rc.3.tgz#58dc0dc5bb42e7c2bd70c717256332df2efe6d45" - integrity sha512-ba97ROK5RiEtIwOMwwfHuZFAX/iaQ+fR4Tw6cz+SHGkqfrACP4KnO+GwplCCyG/Y/ZmbX8KTliDEWGKDL4CCqQ== - dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~8.3.0-rc.3" - -"@abp/aspnetcore.mvc.ui.theme.shared@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-8.3.0-rc.3.tgz#804fe763c3b66cbaf7ac8de7aca53a8690f0283c" - integrity sha512-ldiW9rXMMF7iAZpgFg1gDbwZW64/qLjhIyn+IcO7BzpLD6DKCzeQl/M+p7H1h7TC/ZSLEjRfcQs+ubjMI+OFoQ== - dependencies: - "@abp/aspnetcore.mvc.ui" "~8.3.0-rc.3" - "@abp/bootstrap" "~8.3.0-rc.3" - "@abp/bootstrap-datepicker" "~8.3.0-rc.3" - "@abp/bootstrap-daterangepicker" "~8.3.0-rc.3" - "@abp/datatables.net-bs5" "~8.3.0-rc.3" - "@abp/font-awesome" "~8.3.0-rc.3" - "@abp/jquery-form" "~8.3.0-rc.3" - "@abp/jquery-validation-unobtrusive" "~8.3.0-rc.3" - "@abp/lodash" "~8.3.0-rc.3" - "@abp/luxon" "~8.3.0-rc.3" - "@abp/malihu-custom-scrollbar-plugin" "~8.3.0-rc.3" - "@abp/moment" "~8.3.0-rc.3" - "@abp/select2" "~8.3.0-rc.3" - "@abp/sweetalert2" "~8.3.0-rc.3" - "@abp/timeago" "~8.3.0-rc.3" - "@abp/toastr" "~8.3.0-rc.3" - -"@abp/aspnetcore.mvc.ui@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-8.3.0-rc.3.tgz#e1e68f10e1715af44505da2d80b12fdf52d7de8c" - integrity sha512-0ld0/fXTj2mJZ12W1nn87K1Beqg+zbIGSR8lxWXG56jVArxasSqL3CiOQg+lLMUnWq1kwtTuoxZZVA76aL+nJA== +"@abp/aspnetcore.mvc.ui.theme.basic@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-8.3.0.tgz#a2d17eb5da2c3abfad4bcc842cfcda0e58a130a4" + integrity sha512-T2dg7WlvNSrwTCfy5wk4gqiJ/15kIjMGM4wLXIJcMYn60yGY/YeX6Q4A3R/qJzfl4JdgW5rt3GpdKv86y/ADXg== + dependencies: + "@abp/aspnetcore.mvc.ui.theme.shared" "~8.3.0" + +"@abp/aspnetcore.mvc.ui.theme.shared@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-8.3.0.tgz#5d6bb5181a62770e9cb967980b77e75c115c5ed7" + integrity sha512-o/0eh8jLS+YJiseTKzzioUz0vNnMFzyoz+mkyA4PlO1gqw2JFhzPhTBZ3cuyV9QlxUfEA8dWAkqAUX6vqiHwkw== + dependencies: + "@abp/aspnetcore.mvc.ui" "~8.3.0" + "@abp/bootstrap" "~8.3.0" + "@abp/bootstrap-datepicker" "~8.3.0" + "@abp/bootstrap-daterangepicker" "~8.3.0" + "@abp/datatables.net-bs5" "~8.3.0" + "@abp/font-awesome" "~8.3.0" + "@abp/jquery-form" "~8.3.0" + "@abp/jquery-validation-unobtrusive" "~8.3.0" + "@abp/lodash" "~8.3.0" + "@abp/luxon" "~8.3.0" + "@abp/malihu-custom-scrollbar-plugin" "~8.3.0" + "@abp/moment" "~8.3.0" + "@abp/select2" "~8.3.0" + "@abp/sweetalert2" "~8.3.0" + "@abp/timeago" "~8.3.0" + "@abp/toastr" "~8.3.0" + +"@abp/aspnetcore.mvc.ui@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-8.3.0.tgz#d7ba0539bfcc6661a347dea7f952489010b3e816" + integrity sha512-OxgZhLKiXGFYYpNJ5O/IbhinsniiBPv9586e+1Soar0GckCMIIegJxnJb1Bo1O75blrcK2cIU6LqjRT1FXt2Lw== dependencies: ansi-colors "^4.1.3" -"@abp/bootstrap-datepicker@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-8.3.0-rc.3.tgz#319054e54532085031a80d5859dec1a56b7548ac" - integrity sha512-fWKry7HLQ14Vv3GiF/bqge4ySN/9GkK/kZRrdeopdzvmOKTPCHSJ8DNrXAmd+WVHbcqdQ6uovWBOfMufCLohJw== +"@abp/bootstrap-datepicker@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-8.3.0.tgz#8c1bf9efec37b671d8f28b8b1e89c1ac66684267" + integrity sha512-KCwMtm7x+cnKPeNMzhjDJUce0stwu4e57ibmvA6sMf1tmj+yB256O4E2hIDDohiT3vP/zV8HVHX6uATlcmGC9w== dependencies: bootstrap-datepicker "^1.10.0" -"@abp/bootstrap-daterangepicker@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-8.3.0-rc.3.tgz#873728e2d6313fae07f1f74a4cf483e50bccfa7f" - integrity sha512-nu2N12ftl/1zA7Fe1lAgZiJnkZKFBNjfsPmy+ykQLKGWIkca14b0UHwUIHEaiI26fD6bBT50/kMRzA7uE3goaA== +"@abp/bootstrap-daterangepicker@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-8.3.0.tgz#2b8ed978333502677916f88cbb3e1d1b1c8a3a17" + integrity sha512-uQSfuCQogl4BujdqvtdAoSE+z32ci8FT5+i3gLfpqbgTaxvY/Kv5NxAUH5/1sjnuAE7SMWO+eVvI3V0pXgQohg== dependencies: bootstrap-daterangepicker "^3.1.0" -"@abp/bootstrap@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-8.3.0-rc.3.tgz#ca01bc3b6c4d5b63cf1bb86472e8df366ff3cf40" - integrity sha512-qSJ5s8k3X4WANgUoEZ289q+UKkStnbAMIEmIh6x93nIZHaGAJsK3oaSNgZ2DbGPhxpMKxhJpCuzF1KrRDtwtUQ== +"@abp/bootstrap@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-8.3.0.tgz#96d6ea7e6ac30f6e34e495a4224f56f7b2a1a7a3" + integrity sha512-5AmdTtakmWhZmHrb7ibvvf+KwF9OGadpAe7Kv9mNEE02K2qkp7Xw4r5o/bgVl7YfLC1FA6GZZXrV2s2t0gjHtg== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" bootstrap "^5.3.3" -"@abp/core@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-8.3.0-rc.3.tgz#4031ec2c08a00652bb717c962ddc3aa8b3cf72c9" - integrity sha512-9Y7EcLE+0RLnJyhZlSYCElTjrFz+P7uXbyl+1UyuyY+dxyAdZhZ+1WPHFSr0f8KlJrxkjnsPj+gR4e48u15FDw== +"@abp/core@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-8.3.0.tgz#3a68f5a9549efcc3e13500e301f2576751b51445" + integrity sha512-zrxnZi4qij/Y4AZWaXuPqs3Dd7gBtU/onX7FkYxLgQDxYBfx+84QAnPRNRFKMWaD/wKbTUB0wA66U3t2aiQX9Q== dependencies: - "@abp/utils" "~8.3.0-rc.3" + "@abp/utils" "~8.3.0" -"@abp/datatables.net-bs5@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-8.3.0-rc.3.tgz#da22fbf7fe23671bfa20e83c9490e7bbe169b4aa" - integrity sha512-36VOOd/1461LZN11awaU5xbC3oYYJFebNFBeFZijsc8LtVKCwgMWZ8K3sCOolBVEyltDzKntw+w0NwhlWjd8tA== +"@abp/datatables.net-bs5@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-8.3.0.tgz#21822ae4912a561afe9112925185aece03fcd0eb" + integrity sha512-GOGYSSHp3iPUDFRX2Y3C0wkiCOJDuYuK/zUSzQLNpOvBMZO+I/oWBcZM+qkVowIzsoRlAGV9+CVV2B/B05qidA== dependencies: - "@abp/datatables.net" "~8.3.0-rc.3" + "@abp/datatables.net" "~8.3.0" datatables.net-bs5 "^2.0.8" -"@abp/datatables.net@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-8.3.0-rc.3.tgz#933ade7c61d3dfb61aa9278eb948e7756013a61f" - integrity sha512-MjSWhmMilHAKb4HmCLQOXesuFWvguIxhpKRAfSfweIiaOtgaPBh4KR8PSGxZgC0fImQYjWSfHQP4QkLAd5xasA== +"@abp/datatables.net@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-8.3.0.tgz#ff697758ce9309ba8311f23aec921c4722588c8b" + integrity sha512-4dIdv7eN1tVouOUrlF+MIdg8zQpecyH61waqLgy1q5jMZQivrTSFZ7UWMG3WVOAYjw5zSUZHZPbzA+ttnaOPkg== dependencies: - "@abp/jquery" "~8.3.0-rc.3" + "@abp/jquery" "~8.3.0" datatables.net "^2.0.8" -"@abp/font-awesome@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-8.3.0-rc.3.tgz#efa785200433025725e6dcd48c8b6b538938681d" - integrity sha512-DRjSDWhTWmL0I2A7KcFOxQFaLftxg0Rvcss0138j/mGpt64+unzcYo6YRCEga/k6ygxc7dYnhFmQf2tli44toQ== +"@abp/font-awesome@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-8.3.0.tgz#9e4e9adc08dfca52c0a07d1608c5e5662675a4c9" + integrity sha512-NRxvM/dzvQC2Cj/F5i07XB/i6IVTmXcO9sOq6TWosWib0wGaPxRbCSjy8QUAYSD1QYaVQ30XMb3XXImaMGyd8A== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" "@fortawesome/fontawesome-free" "^6.5.2" -"@abp/jquery-form@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-8.3.0-rc.3.tgz#fbb1ceb0e4092243cb018e1d7aa1ca86371fa98c" - integrity sha512-n7Tu4b2UhaRMcQCmzcBMiEYnaaR/OmA7LZfOcg4YP202xnLj29w4R/sRbQjr0w9lvPhue9rrSXaEf43UrV8eyg== +"@abp/jquery-form@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-8.3.0.tgz#fa2ad2fedbe3d3528ee94cbbd4f94d48f0cb5e4d" + integrity sha512-olP9FmpNVTbOIewsVua0moHVYXw4Sl3chFbvTDLG6vRBohLSjllUXfgY3UEIVWR1PCqnAg+iEJZl9NHB9iOLBg== dependencies: - "@abp/jquery" "~8.3.0-rc.3" + "@abp/jquery" "~8.3.0" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-8.3.0-rc.3.tgz#bcc8dad54b880134519f642b6a1a151584889bf2" - integrity sha512-4pfc7vYh5oMZc4+AJRwN7CQmb4ZK29POyuL9RjuBCQbvYCLcru0M5cQTz3wt9jLeAXn402lbwxh1cLioZfw8SQ== +"@abp/jquery-validation-unobtrusive@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-8.3.0.tgz#0992cdd33170df83c79aa3371038c0b30e451521" + integrity sha512-9hidjq8x8sTnP5O3K2b2x9NpxvPd9WB03ENR6OfvM89kfSmQapSvBZTlCu80YK9NaQJ6MLQRLYOCuc3GHcj3EQ== dependencies: - "@abp/jquery-validation" "~8.3.0-rc.3" + "@abp/jquery-validation" "~8.3.0" jquery-validation-unobtrusive "^4.0.0" -"@abp/jquery-validation@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-8.3.0-rc.3.tgz#d71e59dfa793070b780bb8078f4cd12b8217f701" - integrity sha512-/OEh5PVKfA4BB7YVmFFBa+GKDR4jzNOkRBUnzplxxcegrXlbbjuxC7VcnsLzXQJ1c2aUO6a1y8L7MsPMjaXVrg== +"@abp/jquery-validation@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-8.3.0.tgz#bd6a72c6d86f116abe3b5d2adf3752bdbbcca887" + integrity sha512-6l5BZSa3N0Fou6Se7MfUSnI2dD4SYhZ2V988bgPJQ6p37XBOZ2OAj7LEIf5FSjtUzXjao/6/vqjkPNYreNikig== dependencies: - "@abp/jquery" "~8.3.0-rc.3" + "@abp/jquery" "~8.3.0" jquery-validation "^1.20.1" -"@abp/jquery@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-8.3.0-rc.3.tgz#7350b8675c7199b143bad86f46a50c629568605b" - integrity sha512-GkjKCrQmqqeu3xvpWTZxFa1VVRKPhmiutO2syuPi2dReDBhMV6h6EZZeu5y8lHLvL1HTEEANFFFXJGUna07FRQ== +"@abp/jquery@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-8.3.0.tgz#9be5ef2f769680226e6a1a981026590caf3b57ef" + integrity sha512-GsFY+n3EtS6B0pAoKd+xMnt5Dzi5bHvIbhLgDgfQfOBzAy3twGRWsPQ3nkuXXm8TppwujMNowU1oiLKPPm0AOA== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" jquery "~3.7.1" -"@abp/lodash@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-8.3.0-rc.3.tgz#90b1c266a16bd2bdfab22bb635114610738a17ba" - integrity sha512-L4lw6eSOXeXg2IixjdcHHVw1z7Q1wLUJDr8NzlRF51KfEPZ5Lt28IhoJuEfE7y24e6v+q6CL15axPwSQOUIlhw== +"@abp/lodash@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-8.3.0.tgz#f5a0a496c999886f2d6999067bfac2e1f0c3969c" + integrity sha512-BiAsONbKR/RKG3WjRaMWVmhNe1ELEsykVq+ogG1Rhk3kwPbvze3TS8k2p0Lu/RC41/BmDUmJ5abg1pUMwkRT8w== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" lodash "^4.17.21" -"@abp/luxon@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-8.3.0-rc.3.tgz#dc2a024c4b20b59408c41b259fe9b7cc8820bd7f" - integrity sha512-QOpAHiJxzSW+4HClyTspYaMDSUbY4Sz36d4Q7LSKHcwLIuqQ7rRfGEeWctYZYPwHIgK4udhde08Z8xrzl5tZSg== +"@abp/luxon@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-8.3.0.tgz#7dd3f756be1605506e26f7ac76b80cc082a12d07" + integrity sha512-8gdI5BtXkVp0sFg89QVDe8AvgQ7Qfq4JCqz2PMrKPSATR3H8GD6BCaEYpRp6CNTCjVrQjGZdzKgUyea1D3dHbw== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" luxon "^3.4.4" -"@abp/malihu-custom-scrollbar-plugin@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-8.3.0-rc.3.tgz#4eb53cf29ecf7c613f2d00e5b1bab4d807fd8396" - integrity sha512-NyQ2Qg2PfsDjWZfSwfsESFFkveIMQXFwWiSWgmeolWeFNtETDI1KJ5Nrf//sY+8zpn6ciCQTI5iaklLPPWQSKg== +"@abp/malihu-custom-scrollbar-plugin@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-8.3.0.tgz#c88c132c3402bbb02054ca7d446051950f87a817" + integrity sha512-nd/mb6LJa6fMxal8PGcIjIRIoZ/UHCd01WDC9YI2H4wGCGx0CA0JyHso5oc/OEzJhUL8ujO/vYm9uLb7YahPtA== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/moment@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-8.3.0-rc.3.tgz#8f997de893d8b69f670f99fe0f3f8a8b3ed64451" - integrity sha512-UulCn7Qt6Y1JfXYd+KGsvJZX7uybXVwud+55tE7TnNl7OXmQ6R3yL6uv+5da0iJsZzQa6c3EknmTkLLD53HfRw== +"@abp/moment@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-8.3.0.tgz#8e4f7a523ab76ef9e4cd96a399560bad38d38d1a" + integrity sha512-LywSsKuQ2GN/Btmle6CcTKa811zbvUWdC+RLQA792K9HyBs6LvN0qRRluEQZgplairRgh2pDOg8tdFlUERkv2w== dependencies: moment "^2.30.1" -"@abp/select2@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-8.3.0-rc.3.tgz#621505b7a829b02cfbb146c7b710093b9e6e19f4" - integrity sha512-SV0gTfKbEAgMG/ND6zrc3QF1buByHePrPxoI1lt1ZiSgt5m9V9i6+zDkE20/W/puegINJAU2kJZtm9hCfMtXaQ== +"@abp/select2@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-8.3.0.tgz#ef4742fcd345394767f46180f61c6cabbd0b3867" + integrity sha512-bdLt2+ImxxpiZl4HGbYJpdDROQUT7/Z/+8A+6oJNacq3lNekdvufLYgTMxKru6zTbnd9j3HFKMOTE1eRjb9Xqg== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" select2 "^4.0.13" -"@abp/sweetalert2@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-8.3.0-rc.3.tgz#728978d364fe80dfd3b9cacdee0960e921d404af" - integrity sha512-G3xAKewy7TH2UZgLg+mVhgng5y1RbanVfsA/VTc9DE1XBMG9fpiqywhbny/5qabFhgvNjMKM28Yce23uAsji1A== +"@abp/sweetalert2@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-8.3.0.tgz#a63020d57e44f7940817287d3d9676288bfb85aa" + integrity sha512-ooqPM4Z2v2scnMo5l8ycTmp6t/sW4sCsvIkJ4TyM876WLQJaZxJdOao4RQWuU+dVFr9zg8cOwqLH4q7UEiO6ww== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" sweetalert2 "^11.3.6" -"@abp/timeago@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-8.3.0-rc.3.tgz#dcef20b900e6e95e12fec64b2f1632949f164eb0" - integrity sha512-sFOlpH54PiHosrmRoPZHtC+RVQdjPWetvtFm7svIfCta+dq6Iz70B7/O0oqQabAIERhA9jTf3ubMtBF6FCdmYg== +"@abp/timeago@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-8.3.0.tgz#b3b8d6927bf170f77af848bc1925e5ef6835bd55" + integrity sha512-Dd6xaUoF9Bp4F9WJnTsFBqY+Gt++UR7UmLvBZL/dvthkeNCu2I8MUsmshkUUjY0lIXpjZwefUOuyupQrgHXPMg== dependencies: - "@abp/jquery" "~8.3.0-rc.3" + "@abp/jquery" "~8.3.0" timeago "^1.6.7" -"@abp/toastr@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-8.3.0-rc.3.tgz#5c821d5a049c322f082c37febd5980d2d664292c" - integrity sha512-PdiQMO6UA6yTKGHqztm5Kxu3UzsidnYyQtjojVTYQd87mvgIDIUkoXxXJ2VVgHnRy2FdZW12UfZG4v3/eJHbmg== +"@abp/toastr@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-8.3.0.tgz#e68a2bd8f731e79034594bc2c736f7c66b3df1af" + integrity sha512-aWK/RaX/FmcEKhJLjsw1A0K2c04m2fRJkmo9NwzBCSscy6Msw9IMkqNWLiFDThMU8/qKzq7wq3Vmk/C0IpeAwA== dependencies: - "@abp/jquery" "~8.3.0-rc.3" + "@abp/jquery" "~8.3.0" toastr "^2.1.4" -"@abp/utils@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-8.3.0-rc.3.tgz#00b4acf4a4a2b4c4c1193a737f972d6508cf1831" - integrity sha512-cEPVo2QkLmn4Meo++dkvknfKlNlfQ7kmdWdXon1ZViaf9YFbTEZIYD5ccrdGUvKkVlAyOHG3TcAHesiAOyx1PQ== +"@abp/utils@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-8.3.0.tgz#96ae9266ad4d833fd9d723acef7fc85fabf618d9" + integrity sha512-w/XAqza4Z8wBWRoj5uPNKbd1/bE9L/uUWk6EUSBKmljMRryWQBmaPkb1XgvrOMQIbyyF60tUvvipapQLPVh6hw== dependencies: just-compare "^2.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 f19ff1baf6..7dad1fc3e2 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": "~8.3.0-rc.3" + "@abp/aspnetcore.mvc.ui.theme.basic": "~8.3.0" } } 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 cb24c2926f..d19b65bc24 100644 --- a/modules/cms-kit/host/Volo.CmsKit.Web.Host/yarn.lock +++ b/modules/cms-kit/host/Volo.CmsKit.Web.Host/yarn.lock @@ -2,194 +2,194 @@ # yarn lockfile v1 -"@abp/aspnetcore.mvc.ui.theme.basic@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-8.3.0-rc.3.tgz#58dc0dc5bb42e7c2bd70c717256332df2efe6d45" - integrity sha512-ba97ROK5RiEtIwOMwwfHuZFAX/iaQ+fR4Tw6cz+SHGkqfrACP4KnO+GwplCCyG/Y/ZmbX8KTliDEWGKDL4CCqQ== - dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~8.3.0-rc.3" - -"@abp/aspnetcore.mvc.ui.theme.shared@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-8.3.0-rc.3.tgz#804fe763c3b66cbaf7ac8de7aca53a8690f0283c" - integrity sha512-ldiW9rXMMF7iAZpgFg1gDbwZW64/qLjhIyn+IcO7BzpLD6DKCzeQl/M+p7H1h7TC/ZSLEjRfcQs+ubjMI+OFoQ== - dependencies: - "@abp/aspnetcore.mvc.ui" "~8.3.0-rc.3" - "@abp/bootstrap" "~8.3.0-rc.3" - "@abp/bootstrap-datepicker" "~8.3.0-rc.3" - "@abp/bootstrap-daterangepicker" "~8.3.0-rc.3" - "@abp/datatables.net-bs5" "~8.3.0-rc.3" - "@abp/font-awesome" "~8.3.0-rc.3" - "@abp/jquery-form" "~8.3.0-rc.3" - "@abp/jquery-validation-unobtrusive" "~8.3.0-rc.3" - "@abp/lodash" "~8.3.0-rc.3" - "@abp/luxon" "~8.3.0-rc.3" - "@abp/malihu-custom-scrollbar-plugin" "~8.3.0-rc.3" - "@abp/moment" "~8.3.0-rc.3" - "@abp/select2" "~8.3.0-rc.3" - "@abp/sweetalert2" "~8.3.0-rc.3" - "@abp/timeago" "~8.3.0-rc.3" - "@abp/toastr" "~8.3.0-rc.3" - -"@abp/aspnetcore.mvc.ui@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-8.3.0-rc.3.tgz#e1e68f10e1715af44505da2d80b12fdf52d7de8c" - integrity sha512-0ld0/fXTj2mJZ12W1nn87K1Beqg+zbIGSR8lxWXG56jVArxasSqL3CiOQg+lLMUnWq1kwtTuoxZZVA76aL+nJA== +"@abp/aspnetcore.mvc.ui.theme.basic@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-8.3.0.tgz#a2d17eb5da2c3abfad4bcc842cfcda0e58a130a4" + integrity sha512-T2dg7WlvNSrwTCfy5wk4gqiJ/15kIjMGM4wLXIJcMYn60yGY/YeX6Q4A3R/qJzfl4JdgW5rt3GpdKv86y/ADXg== + dependencies: + "@abp/aspnetcore.mvc.ui.theme.shared" "~8.3.0" + +"@abp/aspnetcore.mvc.ui.theme.shared@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-8.3.0.tgz#5d6bb5181a62770e9cb967980b77e75c115c5ed7" + integrity sha512-o/0eh8jLS+YJiseTKzzioUz0vNnMFzyoz+mkyA4PlO1gqw2JFhzPhTBZ3cuyV9QlxUfEA8dWAkqAUX6vqiHwkw== + dependencies: + "@abp/aspnetcore.mvc.ui" "~8.3.0" + "@abp/bootstrap" "~8.3.0" + "@abp/bootstrap-datepicker" "~8.3.0" + "@abp/bootstrap-daterangepicker" "~8.3.0" + "@abp/datatables.net-bs5" "~8.3.0" + "@abp/font-awesome" "~8.3.0" + "@abp/jquery-form" "~8.3.0" + "@abp/jquery-validation-unobtrusive" "~8.3.0" + "@abp/lodash" "~8.3.0" + "@abp/luxon" "~8.3.0" + "@abp/malihu-custom-scrollbar-plugin" "~8.3.0" + "@abp/moment" "~8.3.0" + "@abp/select2" "~8.3.0" + "@abp/sweetalert2" "~8.3.0" + "@abp/timeago" "~8.3.0" + "@abp/toastr" "~8.3.0" + +"@abp/aspnetcore.mvc.ui@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-8.3.0.tgz#d7ba0539bfcc6661a347dea7f952489010b3e816" + integrity sha512-OxgZhLKiXGFYYpNJ5O/IbhinsniiBPv9586e+1Soar0GckCMIIegJxnJb1Bo1O75blrcK2cIU6LqjRT1FXt2Lw== dependencies: ansi-colors "^4.1.3" -"@abp/bootstrap-datepicker@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-8.3.0-rc.3.tgz#319054e54532085031a80d5859dec1a56b7548ac" - integrity sha512-fWKry7HLQ14Vv3GiF/bqge4ySN/9GkK/kZRrdeopdzvmOKTPCHSJ8DNrXAmd+WVHbcqdQ6uovWBOfMufCLohJw== +"@abp/bootstrap-datepicker@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-8.3.0.tgz#8c1bf9efec37b671d8f28b8b1e89c1ac66684267" + integrity sha512-KCwMtm7x+cnKPeNMzhjDJUce0stwu4e57ibmvA6sMf1tmj+yB256O4E2hIDDohiT3vP/zV8HVHX6uATlcmGC9w== dependencies: bootstrap-datepicker "^1.10.0" -"@abp/bootstrap-daterangepicker@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-8.3.0-rc.3.tgz#873728e2d6313fae07f1f74a4cf483e50bccfa7f" - integrity sha512-nu2N12ftl/1zA7Fe1lAgZiJnkZKFBNjfsPmy+ykQLKGWIkca14b0UHwUIHEaiI26fD6bBT50/kMRzA7uE3goaA== +"@abp/bootstrap-daterangepicker@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-8.3.0.tgz#2b8ed978333502677916f88cbb3e1d1b1c8a3a17" + integrity sha512-uQSfuCQogl4BujdqvtdAoSE+z32ci8FT5+i3gLfpqbgTaxvY/Kv5NxAUH5/1sjnuAE7SMWO+eVvI3V0pXgQohg== dependencies: bootstrap-daterangepicker "^3.1.0" -"@abp/bootstrap@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-8.3.0-rc.3.tgz#ca01bc3b6c4d5b63cf1bb86472e8df366ff3cf40" - integrity sha512-qSJ5s8k3X4WANgUoEZ289q+UKkStnbAMIEmIh6x93nIZHaGAJsK3oaSNgZ2DbGPhxpMKxhJpCuzF1KrRDtwtUQ== +"@abp/bootstrap@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-8.3.0.tgz#96d6ea7e6ac30f6e34e495a4224f56f7b2a1a7a3" + integrity sha512-5AmdTtakmWhZmHrb7ibvvf+KwF9OGadpAe7Kv9mNEE02K2qkp7Xw4r5o/bgVl7YfLC1FA6GZZXrV2s2t0gjHtg== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" bootstrap "^5.3.3" -"@abp/core@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-8.3.0-rc.3.tgz#4031ec2c08a00652bb717c962ddc3aa8b3cf72c9" - integrity sha512-9Y7EcLE+0RLnJyhZlSYCElTjrFz+P7uXbyl+1UyuyY+dxyAdZhZ+1WPHFSr0f8KlJrxkjnsPj+gR4e48u15FDw== +"@abp/core@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-8.3.0.tgz#3a68f5a9549efcc3e13500e301f2576751b51445" + integrity sha512-zrxnZi4qij/Y4AZWaXuPqs3Dd7gBtU/onX7FkYxLgQDxYBfx+84QAnPRNRFKMWaD/wKbTUB0wA66U3t2aiQX9Q== dependencies: - "@abp/utils" "~8.3.0-rc.3" + "@abp/utils" "~8.3.0" -"@abp/datatables.net-bs5@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-8.3.0-rc.3.tgz#da22fbf7fe23671bfa20e83c9490e7bbe169b4aa" - integrity sha512-36VOOd/1461LZN11awaU5xbC3oYYJFebNFBeFZijsc8LtVKCwgMWZ8K3sCOolBVEyltDzKntw+w0NwhlWjd8tA== +"@abp/datatables.net-bs5@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-8.3.0.tgz#21822ae4912a561afe9112925185aece03fcd0eb" + integrity sha512-GOGYSSHp3iPUDFRX2Y3C0wkiCOJDuYuK/zUSzQLNpOvBMZO+I/oWBcZM+qkVowIzsoRlAGV9+CVV2B/B05qidA== dependencies: - "@abp/datatables.net" "~8.3.0-rc.3" + "@abp/datatables.net" "~8.3.0" datatables.net-bs5 "^2.0.8" -"@abp/datatables.net@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-8.3.0-rc.3.tgz#933ade7c61d3dfb61aa9278eb948e7756013a61f" - integrity sha512-MjSWhmMilHAKb4HmCLQOXesuFWvguIxhpKRAfSfweIiaOtgaPBh4KR8PSGxZgC0fImQYjWSfHQP4QkLAd5xasA== +"@abp/datatables.net@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-8.3.0.tgz#ff697758ce9309ba8311f23aec921c4722588c8b" + integrity sha512-4dIdv7eN1tVouOUrlF+MIdg8zQpecyH61waqLgy1q5jMZQivrTSFZ7UWMG3WVOAYjw5zSUZHZPbzA+ttnaOPkg== dependencies: - "@abp/jquery" "~8.3.0-rc.3" + "@abp/jquery" "~8.3.0" datatables.net "^2.0.8" -"@abp/font-awesome@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-8.3.0-rc.3.tgz#efa785200433025725e6dcd48c8b6b538938681d" - integrity sha512-DRjSDWhTWmL0I2A7KcFOxQFaLftxg0Rvcss0138j/mGpt64+unzcYo6YRCEga/k6ygxc7dYnhFmQf2tli44toQ== +"@abp/font-awesome@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-8.3.0.tgz#9e4e9adc08dfca52c0a07d1608c5e5662675a4c9" + integrity sha512-NRxvM/dzvQC2Cj/F5i07XB/i6IVTmXcO9sOq6TWosWib0wGaPxRbCSjy8QUAYSD1QYaVQ30XMb3XXImaMGyd8A== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" "@fortawesome/fontawesome-free" "^6.5.2" -"@abp/jquery-form@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-8.3.0-rc.3.tgz#fbb1ceb0e4092243cb018e1d7aa1ca86371fa98c" - integrity sha512-n7Tu4b2UhaRMcQCmzcBMiEYnaaR/OmA7LZfOcg4YP202xnLj29w4R/sRbQjr0w9lvPhue9rrSXaEf43UrV8eyg== +"@abp/jquery-form@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-8.3.0.tgz#fa2ad2fedbe3d3528ee94cbbd4f94d48f0cb5e4d" + integrity sha512-olP9FmpNVTbOIewsVua0moHVYXw4Sl3chFbvTDLG6vRBohLSjllUXfgY3UEIVWR1PCqnAg+iEJZl9NHB9iOLBg== dependencies: - "@abp/jquery" "~8.3.0-rc.3" + "@abp/jquery" "~8.3.0" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-8.3.0-rc.3.tgz#bcc8dad54b880134519f642b6a1a151584889bf2" - integrity sha512-4pfc7vYh5oMZc4+AJRwN7CQmb4ZK29POyuL9RjuBCQbvYCLcru0M5cQTz3wt9jLeAXn402lbwxh1cLioZfw8SQ== +"@abp/jquery-validation-unobtrusive@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-8.3.0.tgz#0992cdd33170df83c79aa3371038c0b30e451521" + integrity sha512-9hidjq8x8sTnP5O3K2b2x9NpxvPd9WB03ENR6OfvM89kfSmQapSvBZTlCu80YK9NaQJ6MLQRLYOCuc3GHcj3EQ== dependencies: - "@abp/jquery-validation" "~8.3.0-rc.3" + "@abp/jquery-validation" "~8.3.0" jquery-validation-unobtrusive "^4.0.0" -"@abp/jquery-validation@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-8.3.0-rc.3.tgz#d71e59dfa793070b780bb8078f4cd12b8217f701" - integrity sha512-/OEh5PVKfA4BB7YVmFFBa+GKDR4jzNOkRBUnzplxxcegrXlbbjuxC7VcnsLzXQJ1c2aUO6a1y8L7MsPMjaXVrg== +"@abp/jquery-validation@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-8.3.0.tgz#bd6a72c6d86f116abe3b5d2adf3752bdbbcca887" + integrity sha512-6l5BZSa3N0Fou6Se7MfUSnI2dD4SYhZ2V988bgPJQ6p37XBOZ2OAj7LEIf5FSjtUzXjao/6/vqjkPNYreNikig== dependencies: - "@abp/jquery" "~8.3.0-rc.3" + "@abp/jquery" "~8.3.0" jquery-validation "^1.20.1" -"@abp/jquery@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-8.3.0-rc.3.tgz#7350b8675c7199b143bad86f46a50c629568605b" - integrity sha512-GkjKCrQmqqeu3xvpWTZxFa1VVRKPhmiutO2syuPi2dReDBhMV6h6EZZeu5y8lHLvL1HTEEANFFFXJGUna07FRQ== +"@abp/jquery@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-8.3.0.tgz#9be5ef2f769680226e6a1a981026590caf3b57ef" + integrity sha512-GsFY+n3EtS6B0pAoKd+xMnt5Dzi5bHvIbhLgDgfQfOBzAy3twGRWsPQ3nkuXXm8TppwujMNowU1oiLKPPm0AOA== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" jquery "~3.7.1" -"@abp/lodash@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-8.3.0-rc.3.tgz#90b1c266a16bd2bdfab22bb635114610738a17ba" - integrity sha512-L4lw6eSOXeXg2IixjdcHHVw1z7Q1wLUJDr8NzlRF51KfEPZ5Lt28IhoJuEfE7y24e6v+q6CL15axPwSQOUIlhw== +"@abp/lodash@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-8.3.0.tgz#f5a0a496c999886f2d6999067bfac2e1f0c3969c" + integrity sha512-BiAsONbKR/RKG3WjRaMWVmhNe1ELEsykVq+ogG1Rhk3kwPbvze3TS8k2p0Lu/RC41/BmDUmJ5abg1pUMwkRT8w== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" lodash "^4.17.21" -"@abp/luxon@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-8.3.0-rc.3.tgz#dc2a024c4b20b59408c41b259fe9b7cc8820bd7f" - integrity sha512-QOpAHiJxzSW+4HClyTspYaMDSUbY4Sz36d4Q7LSKHcwLIuqQ7rRfGEeWctYZYPwHIgK4udhde08Z8xrzl5tZSg== +"@abp/luxon@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-8.3.0.tgz#7dd3f756be1605506e26f7ac76b80cc082a12d07" + integrity sha512-8gdI5BtXkVp0sFg89QVDe8AvgQ7Qfq4JCqz2PMrKPSATR3H8GD6BCaEYpRp6CNTCjVrQjGZdzKgUyea1D3dHbw== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" luxon "^3.4.4" -"@abp/malihu-custom-scrollbar-plugin@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-8.3.0-rc.3.tgz#4eb53cf29ecf7c613f2d00e5b1bab4d807fd8396" - integrity sha512-NyQ2Qg2PfsDjWZfSwfsESFFkveIMQXFwWiSWgmeolWeFNtETDI1KJ5Nrf//sY+8zpn6ciCQTI5iaklLPPWQSKg== +"@abp/malihu-custom-scrollbar-plugin@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-8.3.0.tgz#c88c132c3402bbb02054ca7d446051950f87a817" + integrity sha512-nd/mb6LJa6fMxal8PGcIjIRIoZ/UHCd01WDC9YI2H4wGCGx0CA0JyHso5oc/OEzJhUL8ujO/vYm9uLb7YahPtA== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/moment@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-8.3.0-rc.3.tgz#8f997de893d8b69f670f99fe0f3f8a8b3ed64451" - integrity sha512-UulCn7Qt6Y1JfXYd+KGsvJZX7uybXVwud+55tE7TnNl7OXmQ6R3yL6uv+5da0iJsZzQa6c3EknmTkLLD53HfRw== +"@abp/moment@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-8.3.0.tgz#8e4f7a523ab76ef9e4cd96a399560bad38d38d1a" + integrity sha512-LywSsKuQ2GN/Btmle6CcTKa811zbvUWdC+RLQA792K9HyBs6LvN0qRRluEQZgplairRgh2pDOg8tdFlUERkv2w== dependencies: moment "^2.30.1" -"@abp/select2@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-8.3.0-rc.3.tgz#621505b7a829b02cfbb146c7b710093b9e6e19f4" - integrity sha512-SV0gTfKbEAgMG/ND6zrc3QF1buByHePrPxoI1lt1ZiSgt5m9V9i6+zDkE20/W/puegINJAU2kJZtm9hCfMtXaQ== +"@abp/select2@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-8.3.0.tgz#ef4742fcd345394767f46180f61c6cabbd0b3867" + integrity sha512-bdLt2+ImxxpiZl4HGbYJpdDROQUT7/Z/+8A+6oJNacq3lNekdvufLYgTMxKru6zTbnd9j3HFKMOTE1eRjb9Xqg== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" select2 "^4.0.13" -"@abp/sweetalert2@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-8.3.0-rc.3.tgz#728978d364fe80dfd3b9cacdee0960e921d404af" - integrity sha512-G3xAKewy7TH2UZgLg+mVhgng5y1RbanVfsA/VTc9DE1XBMG9fpiqywhbny/5qabFhgvNjMKM28Yce23uAsji1A== +"@abp/sweetalert2@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-8.3.0.tgz#a63020d57e44f7940817287d3d9676288bfb85aa" + integrity sha512-ooqPM4Z2v2scnMo5l8ycTmp6t/sW4sCsvIkJ4TyM876WLQJaZxJdOao4RQWuU+dVFr9zg8cOwqLH4q7UEiO6ww== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" sweetalert2 "^11.3.6" -"@abp/timeago@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-8.3.0-rc.3.tgz#dcef20b900e6e95e12fec64b2f1632949f164eb0" - integrity sha512-sFOlpH54PiHosrmRoPZHtC+RVQdjPWetvtFm7svIfCta+dq6Iz70B7/O0oqQabAIERhA9jTf3ubMtBF6FCdmYg== +"@abp/timeago@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-8.3.0.tgz#b3b8d6927bf170f77af848bc1925e5ef6835bd55" + integrity sha512-Dd6xaUoF9Bp4F9WJnTsFBqY+Gt++UR7UmLvBZL/dvthkeNCu2I8MUsmshkUUjY0lIXpjZwefUOuyupQrgHXPMg== dependencies: - "@abp/jquery" "~8.3.0-rc.3" + "@abp/jquery" "~8.3.0" timeago "^1.6.7" -"@abp/toastr@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-8.3.0-rc.3.tgz#5c821d5a049c322f082c37febd5980d2d664292c" - integrity sha512-PdiQMO6UA6yTKGHqztm5Kxu3UzsidnYyQtjojVTYQd87mvgIDIUkoXxXJ2VVgHnRy2FdZW12UfZG4v3/eJHbmg== +"@abp/toastr@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-8.3.0.tgz#e68a2bd8f731e79034594bc2c736f7c66b3df1af" + integrity sha512-aWK/RaX/FmcEKhJLjsw1A0K2c04m2fRJkmo9NwzBCSscy6Msw9IMkqNWLiFDThMU8/qKzq7wq3Vmk/C0IpeAwA== dependencies: - "@abp/jquery" "~8.3.0-rc.3" + "@abp/jquery" "~8.3.0" toastr "^2.1.4" -"@abp/utils@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-8.3.0-rc.3.tgz#00b4acf4a4a2b4c4c1193a737f972d6508cf1831" - integrity sha512-cEPVo2QkLmn4Meo++dkvknfKlNlfQ7kmdWdXon1ZViaf9YFbTEZIYD5ccrdGUvKkVlAyOHG3TcAHesiAOyx1PQ== +"@abp/utils@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-8.3.0.tgz#96ae9266ad4d833fd9d723acef7fc85fabf618d9" + integrity sha512-w/XAqza4Z8wBWRoj5uPNKbd1/bE9L/uUWk6EUSBKmljMRryWQBmaPkb1XgvrOMQIbyyF60tUvvipapQLPVh6hw== dependencies: just-compare "^2.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 2bc6c31ab8..bad9a5bd0d 100644 --- a/modules/cms-kit/host/Volo.CmsKit.Web.Unified/package.json +++ b/modules/cms-kit/host/Volo.CmsKit.Web.Unified/package.json @@ -3,7 +3,7 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "~8.3.0-rc.3", - "@abp/cms-kit": "8.3.0-rc.3" + "@abp/aspnetcore.mvc.ui.theme.basic": "~8.3.0", + "@abp/cms-kit": "8.3.0" } } 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 d9aa78b27a..2b5adef665 100644 --- a/modules/cms-kit/host/Volo.CmsKit.Web.Unified/yarn.lock +++ b/modules/cms-kit/host/Volo.CmsKit.Web.Unified/yarn.lock @@ -2,302 +2,302 @@ # yarn lockfile v1 -"@abp/aspnetcore.mvc.ui.theme.basic@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-8.3.0-rc.3.tgz#58dc0dc5bb42e7c2bd70c717256332df2efe6d45" - integrity sha512-ba97ROK5RiEtIwOMwwfHuZFAX/iaQ+fR4Tw6cz+SHGkqfrACP4KnO+GwplCCyG/Y/ZmbX8KTliDEWGKDL4CCqQ== - dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~8.3.0-rc.3" - -"@abp/aspnetcore.mvc.ui.theme.shared@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-8.3.0-rc.3.tgz#804fe763c3b66cbaf7ac8de7aca53a8690f0283c" - integrity sha512-ldiW9rXMMF7iAZpgFg1gDbwZW64/qLjhIyn+IcO7BzpLD6DKCzeQl/M+p7H1h7TC/ZSLEjRfcQs+ubjMI+OFoQ== - dependencies: - "@abp/aspnetcore.mvc.ui" "~8.3.0-rc.3" - "@abp/bootstrap" "~8.3.0-rc.3" - "@abp/bootstrap-datepicker" "~8.3.0-rc.3" - "@abp/bootstrap-daterangepicker" "~8.3.0-rc.3" - "@abp/datatables.net-bs5" "~8.3.0-rc.3" - "@abp/font-awesome" "~8.3.0-rc.3" - "@abp/jquery-form" "~8.3.0-rc.3" - "@abp/jquery-validation-unobtrusive" "~8.3.0-rc.3" - "@abp/lodash" "~8.3.0-rc.3" - "@abp/luxon" "~8.3.0-rc.3" - "@abp/malihu-custom-scrollbar-plugin" "~8.3.0-rc.3" - "@abp/moment" "~8.3.0-rc.3" - "@abp/select2" "~8.3.0-rc.3" - "@abp/sweetalert2" "~8.3.0-rc.3" - "@abp/timeago" "~8.3.0-rc.3" - "@abp/toastr" "~8.3.0-rc.3" - -"@abp/aspnetcore.mvc.ui@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-8.3.0-rc.3.tgz#e1e68f10e1715af44505da2d80b12fdf52d7de8c" - integrity sha512-0ld0/fXTj2mJZ12W1nn87K1Beqg+zbIGSR8lxWXG56jVArxasSqL3CiOQg+lLMUnWq1kwtTuoxZZVA76aL+nJA== +"@abp/aspnetcore.mvc.ui.theme.basic@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-8.3.0.tgz#a2d17eb5da2c3abfad4bcc842cfcda0e58a130a4" + integrity sha512-T2dg7WlvNSrwTCfy5wk4gqiJ/15kIjMGM4wLXIJcMYn60yGY/YeX6Q4A3R/qJzfl4JdgW5rt3GpdKv86y/ADXg== + dependencies: + "@abp/aspnetcore.mvc.ui.theme.shared" "~8.3.0" + +"@abp/aspnetcore.mvc.ui.theme.shared@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-8.3.0.tgz#5d6bb5181a62770e9cb967980b77e75c115c5ed7" + integrity sha512-o/0eh8jLS+YJiseTKzzioUz0vNnMFzyoz+mkyA4PlO1gqw2JFhzPhTBZ3cuyV9QlxUfEA8dWAkqAUX6vqiHwkw== + dependencies: + "@abp/aspnetcore.mvc.ui" "~8.3.0" + "@abp/bootstrap" "~8.3.0" + "@abp/bootstrap-datepicker" "~8.3.0" + "@abp/bootstrap-daterangepicker" "~8.3.0" + "@abp/datatables.net-bs5" "~8.3.0" + "@abp/font-awesome" "~8.3.0" + "@abp/jquery-form" "~8.3.0" + "@abp/jquery-validation-unobtrusive" "~8.3.0" + "@abp/lodash" "~8.3.0" + "@abp/luxon" "~8.3.0" + "@abp/malihu-custom-scrollbar-plugin" "~8.3.0" + "@abp/moment" "~8.3.0" + "@abp/select2" "~8.3.0" + "@abp/sweetalert2" "~8.3.0" + "@abp/timeago" "~8.3.0" + "@abp/toastr" "~8.3.0" + +"@abp/aspnetcore.mvc.ui@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-8.3.0.tgz#d7ba0539bfcc6661a347dea7f952489010b3e816" + integrity sha512-OxgZhLKiXGFYYpNJ5O/IbhinsniiBPv9586e+1Soar0GckCMIIegJxnJb1Bo1O75blrcK2cIU6LqjRT1FXt2Lw== dependencies: ansi-colors "^4.1.3" -"@abp/bootstrap-datepicker@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-8.3.0-rc.3.tgz#319054e54532085031a80d5859dec1a56b7548ac" - integrity sha512-fWKry7HLQ14Vv3GiF/bqge4ySN/9GkK/kZRrdeopdzvmOKTPCHSJ8DNrXAmd+WVHbcqdQ6uovWBOfMufCLohJw== +"@abp/bootstrap-datepicker@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-8.3.0.tgz#8c1bf9efec37b671d8f28b8b1e89c1ac66684267" + integrity sha512-KCwMtm7x+cnKPeNMzhjDJUce0stwu4e57ibmvA6sMf1tmj+yB256O4E2hIDDohiT3vP/zV8HVHX6uATlcmGC9w== dependencies: bootstrap-datepicker "^1.10.0" -"@abp/bootstrap-daterangepicker@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-8.3.0-rc.3.tgz#873728e2d6313fae07f1f74a4cf483e50bccfa7f" - integrity sha512-nu2N12ftl/1zA7Fe1lAgZiJnkZKFBNjfsPmy+ykQLKGWIkca14b0UHwUIHEaiI26fD6bBT50/kMRzA7uE3goaA== +"@abp/bootstrap-daterangepicker@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-8.3.0.tgz#2b8ed978333502677916f88cbb3e1d1b1c8a3a17" + integrity sha512-uQSfuCQogl4BujdqvtdAoSE+z32ci8FT5+i3gLfpqbgTaxvY/Kv5NxAUH5/1sjnuAE7SMWO+eVvI3V0pXgQohg== dependencies: bootstrap-daterangepicker "^3.1.0" -"@abp/bootstrap@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-8.3.0-rc.3.tgz#ca01bc3b6c4d5b63cf1bb86472e8df366ff3cf40" - integrity sha512-qSJ5s8k3X4WANgUoEZ289q+UKkStnbAMIEmIh6x93nIZHaGAJsK3oaSNgZ2DbGPhxpMKxhJpCuzF1KrRDtwtUQ== +"@abp/bootstrap@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-8.3.0.tgz#96d6ea7e6ac30f6e34e495a4224f56f7b2a1a7a3" + integrity sha512-5AmdTtakmWhZmHrb7ibvvf+KwF9OGadpAe7Kv9mNEE02K2qkp7Xw4r5o/bgVl7YfLC1FA6GZZXrV2s2t0gjHtg== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" bootstrap "^5.3.3" -"@abp/clipboard@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-8.3.0-rc.3.tgz#73eeba6bebccd0926ee40ba693c4c1e72f559f05" - integrity sha512-NUjh2ML1g9afBZcW0Ulp9/7CEMPH57ukxUwJBC88yd0C+oYC7KVurD7yeLtBrMAMQdfqP0e/lQcxZj69HB9p7g== +"@abp/clipboard@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-8.3.0.tgz#1b171e533f768cf42c8fc0c9c67fac1c636fee8c" + integrity sha512-T0O4OaMxLLYztAxyvEc3onEOpGHB/C8/jDcvJwd7mgpLoi9zXVfHwpnzkx/egfNJMzp49STD6Jc+jACi8Uq+CQ== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" clipboard "^2.0.11" -"@abp/cms-kit.admin@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/cms-kit.admin/-/cms-kit.admin-8.3.0-rc.3.tgz#9904a23025c634ee2f60c1babf64078ae08d985a" - integrity sha512-DscM2f/VO/A93M/bXw9tKcGkiX4qSQgkRKU871F2enek/7RG94eXie9JEXUgjw+fuUwXlrGSNngQOgYaIF41tQ== +"@abp/cms-kit.admin@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/cms-kit.admin/-/cms-kit.admin-8.3.0.tgz#9601f8b8e391a1b19b53fa04f0ea7ffb8358ab45" + integrity sha512-Bwk505jNh4bthmSemsvsc2eaSppaUyctHCX2of+ZEwkbB4uc9S4ctbeV9VmeO45AUIm055/GnttfXbMKvte7ng== dependencies: - "@abp/codemirror" "~8.3.0-rc.3" - "@abp/jstree" "~8.3.0-rc.3" - "@abp/markdown-it" "~8.3.0-rc.3" - "@abp/slugify" "~8.3.0-rc.3" - "@abp/tui-editor" "~8.3.0-rc.3" - "@abp/uppy" "~8.3.0-rc.3" + "@abp/codemirror" "~8.3.0" + "@abp/jstree" "~8.3.0" + "@abp/markdown-it" "~8.3.0" + "@abp/slugify" "~8.3.0" + "@abp/tui-editor" "~8.3.0" + "@abp/uppy" "~8.3.0" -"@abp/cms-kit.public@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/cms-kit.public/-/cms-kit.public-8.3.0-rc.3.tgz#6c114453248c5512df8a374dbe3af06247d151d2" - integrity sha512-gTWT5WQM4E/VMn/oSK5N4hbrqtLwRdyZ9+jztprUtlOEedx3oLJpdSBU4GxC9ds2ting23leBRFAb2iSXQ0n9A== +"@abp/cms-kit.public@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/cms-kit.public/-/cms-kit.public-8.3.0.tgz#cec3a67e223f951ceb6863ef62b7a487794d7253" + integrity sha512-K8azk9SGEIzE4F+Zcb9tltZezyNP9Yzkq4bDRysv5EAyfa+zNQbyftaA6LcysEhhHbiJ8Gzvtxl93sNUiCluFg== dependencies: - "@abp/highlight.js" "~8.3.0-rc.3" - "@abp/star-rating-svg" "~8.3.0-rc.3" + "@abp/highlight.js" "~8.3.0" + "@abp/star-rating-svg" "~8.3.0" -"@abp/cms-kit@8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/cms-kit/-/cms-kit-8.3.0-rc.3.tgz#9546f1bfed955739ecee5a7175b1e426e21bbf64" - integrity sha512-M2t7QlJARQQV9LeDOoUk6S3hleyRe4zwfVACY3PAw3BTV3xZI3Vqt2RMEjuXjOOxxkdQfPMfE4pY5wWKumPOjQ== +"@abp/cms-kit@8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/cms-kit/-/cms-kit-8.3.0.tgz#7ac7ebcb43b1633ea337e5e6f5b447ef4e000992" + integrity sha512-XBunhRVZE4cKyTx1L9Ieh3SUw4rn0+GPGHarUmdK4oiK2q3zRZHnmAQ9w0Pb34yNcAlbPVvcqU0zE2lz2k2sSQ== dependencies: - "@abp/cms-kit.admin" "~8.3.0-rc.3" - "@abp/cms-kit.public" "~8.3.0-rc.3" + "@abp/cms-kit.admin" "~8.3.0" + "@abp/cms-kit.public" "~8.3.0" -"@abp/codemirror@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/codemirror/-/codemirror-8.3.0-rc.3.tgz#c2f871609bc8819e8f010e98cdf9c9f2324c9afa" - integrity sha512-i2RQoBWk1hmcjfU570EsFaFTu1wCRPrxzT+FbJCXmGGSuZYdVo6piOuK06MNvqmNPq/gbGVV3aFCRc3KNHkKYA== +"@abp/codemirror@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/codemirror/-/codemirror-8.3.0.tgz#e5b631154ab9900ba01128b4f8d2d5d16b74566f" + integrity sha512-1Mi9wT/Nl1c7VS4q/OVFilbyhAkUTy+o4WRA1OMvLd9c4pJXflmJk6CT7XODmB38ePp3kygLB7nxvNN+GLu70A== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" codemirror "^6.0.1" -"@abp/core@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-8.3.0-rc.3.tgz#4031ec2c08a00652bb717c962ddc3aa8b3cf72c9" - integrity sha512-9Y7EcLE+0RLnJyhZlSYCElTjrFz+P7uXbyl+1UyuyY+dxyAdZhZ+1WPHFSr0f8KlJrxkjnsPj+gR4e48u15FDw== +"@abp/core@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-8.3.0.tgz#3a68f5a9549efcc3e13500e301f2576751b51445" + integrity sha512-zrxnZi4qij/Y4AZWaXuPqs3Dd7gBtU/onX7FkYxLgQDxYBfx+84QAnPRNRFKMWaD/wKbTUB0wA66U3t2aiQX9Q== dependencies: - "@abp/utils" "~8.3.0-rc.3" + "@abp/utils" "~8.3.0" -"@abp/datatables.net-bs5@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-8.3.0-rc.3.tgz#da22fbf7fe23671bfa20e83c9490e7bbe169b4aa" - integrity sha512-36VOOd/1461LZN11awaU5xbC3oYYJFebNFBeFZijsc8LtVKCwgMWZ8K3sCOolBVEyltDzKntw+w0NwhlWjd8tA== +"@abp/datatables.net-bs5@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-8.3.0.tgz#21822ae4912a561afe9112925185aece03fcd0eb" + integrity sha512-GOGYSSHp3iPUDFRX2Y3C0wkiCOJDuYuK/zUSzQLNpOvBMZO+I/oWBcZM+qkVowIzsoRlAGV9+CVV2B/B05qidA== dependencies: - "@abp/datatables.net" "~8.3.0-rc.3" + "@abp/datatables.net" "~8.3.0" datatables.net-bs5 "^2.0.8" -"@abp/datatables.net@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-8.3.0-rc.3.tgz#933ade7c61d3dfb61aa9278eb948e7756013a61f" - integrity sha512-MjSWhmMilHAKb4HmCLQOXesuFWvguIxhpKRAfSfweIiaOtgaPBh4KR8PSGxZgC0fImQYjWSfHQP4QkLAd5xasA== +"@abp/datatables.net@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-8.3.0.tgz#ff697758ce9309ba8311f23aec921c4722588c8b" + integrity sha512-4dIdv7eN1tVouOUrlF+MIdg8zQpecyH61waqLgy1q5jMZQivrTSFZ7UWMG3WVOAYjw5zSUZHZPbzA+ttnaOPkg== dependencies: - "@abp/jquery" "~8.3.0-rc.3" + "@abp/jquery" "~8.3.0" datatables.net "^2.0.8" -"@abp/font-awesome@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-8.3.0-rc.3.tgz#efa785200433025725e6dcd48c8b6b538938681d" - integrity sha512-DRjSDWhTWmL0I2A7KcFOxQFaLftxg0Rvcss0138j/mGpt64+unzcYo6YRCEga/k6ygxc7dYnhFmQf2tli44toQ== +"@abp/font-awesome@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-8.3.0.tgz#9e4e9adc08dfca52c0a07d1608c5e5662675a4c9" + integrity sha512-NRxvM/dzvQC2Cj/F5i07XB/i6IVTmXcO9sOq6TWosWib0wGaPxRbCSjy8QUAYSD1QYaVQ30XMb3XXImaMGyd8A== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" "@fortawesome/fontawesome-free" "^6.5.2" -"@abp/highlight.js@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/highlight.js/-/highlight.js-8.3.0-rc.3.tgz#aadc37d3d2fdb0f75a28df341b52131e8f55edd4" - integrity sha512-ht2qdrdU4s4sadMv7Fog6zNCWEonV3+D4JCizt0k7dFq13wVSv/xtq04CVe/s0zp5LhD5EfJMleVaaQKEAFV/A== +"@abp/highlight.js@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/highlight.js/-/highlight.js-8.3.0.tgz#fabd11a8ef7cd0e379b4c9b359d66b4aa7585e30" + integrity sha512-SHvGXqQrZGuNmup32FisVHrWCdTJyEzHgp6y8Twx1FaP1e0hSN3QK6Jw4Do600ZKI9n5xCK+kMCpdJau8I6bIg== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" "@highlightjs/cdn-assets" "~11.9.0" -"@abp/jquery-form@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-8.3.0-rc.3.tgz#fbb1ceb0e4092243cb018e1d7aa1ca86371fa98c" - integrity sha512-n7Tu4b2UhaRMcQCmzcBMiEYnaaR/OmA7LZfOcg4YP202xnLj29w4R/sRbQjr0w9lvPhue9rrSXaEf43UrV8eyg== +"@abp/jquery-form@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-8.3.0.tgz#fa2ad2fedbe3d3528ee94cbbd4f94d48f0cb5e4d" + integrity sha512-olP9FmpNVTbOIewsVua0moHVYXw4Sl3chFbvTDLG6vRBohLSjllUXfgY3UEIVWR1PCqnAg+iEJZl9NHB9iOLBg== dependencies: - "@abp/jquery" "~8.3.0-rc.3" + "@abp/jquery" "~8.3.0" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-8.3.0-rc.3.tgz#bcc8dad54b880134519f642b6a1a151584889bf2" - integrity sha512-4pfc7vYh5oMZc4+AJRwN7CQmb4ZK29POyuL9RjuBCQbvYCLcru0M5cQTz3wt9jLeAXn402lbwxh1cLioZfw8SQ== +"@abp/jquery-validation-unobtrusive@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-8.3.0.tgz#0992cdd33170df83c79aa3371038c0b30e451521" + integrity sha512-9hidjq8x8sTnP5O3K2b2x9NpxvPd9WB03ENR6OfvM89kfSmQapSvBZTlCu80YK9NaQJ6MLQRLYOCuc3GHcj3EQ== dependencies: - "@abp/jquery-validation" "~8.3.0-rc.3" + "@abp/jquery-validation" "~8.3.0" jquery-validation-unobtrusive "^4.0.0" -"@abp/jquery-validation@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-8.3.0-rc.3.tgz#d71e59dfa793070b780bb8078f4cd12b8217f701" - integrity sha512-/OEh5PVKfA4BB7YVmFFBa+GKDR4jzNOkRBUnzplxxcegrXlbbjuxC7VcnsLzXQJ1c2aUO6a1y8L7MsPMjaXVrg== +"@abp/jquery-validation@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-8.3.0.tgz#bd6a72c6d86f116abe3b5d2adf3752bdbbcca887" + integrity sha512-6l5BZSa3N0Fou6Se7MfUSnI2dD4SYhZ2V988bgPJQ6p37XBOZ2OAj7LEIf5FSjtUzXjao/6/vqjkPNYreNikig== dependencies: - "@abp/jquery" "~8.3.0-rc.3" + "@abp/jquery" "~8.3.0" jquery-validation "^1.20.1" -"@abp/jquery@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-8.3.0-rc.3.tgz#7350b8675c7199b143bad86f46a50c629568605b" - integrity sha512-GkjKCrQmqqeu3xvpWTZxFa1VVRKPhmiutO2syuPi2dReDBhMV6h6EZZeu5y8lHLvL1HTEEANFFFXJGUna07FRQ== +"@abp/jquery@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-8.3.0.tgz#9be5ef2f769680226e6a1a981026590caf3b57ef" + integrity sha512-GsFY+n3EtS6B0pAoKd+xMnt5Dzi5bHvIbhLgDgfQfOBzAy3twGRWsPQ3nkuXXm8TppwujMNowU1oiLKPPm0AOA== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" jquery "~3.7.1" -"@abp/jstree@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/jstree/-/jstree-8.3.0-rc.3.tgz#eb8ad04055d7d7a4f18d165c61cd8400119c87e5" - integrity sha512-OmQ0lkASZM8Yxm42ZKUsuxD2inG7D96SfBlupDCdn1zH1qp9uRu3/7TeliWa9QaHIKeUubQzB6JHgHnO2pCqIw== +"@abp/jstree@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/jstree/-/jstree-8.3.0.tgz#48054d14cd2f5ad255e5ddfb11facfae5902256a" + integrity sha512-9+0cLxIPo1pZJvYsmvo/lWWDI/yH2e9p7iQg/QukQsavvfZ/QNTDweCTI4o407lu66s6921UEZ+KnozvFvuAfg== dependencies: - "@abp/jquery" "~8.3.0-rc.3" + "@abp/jquery" "~8.3.0" jstree "^3.3.16" -"@abp/lodash@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-8.3.0-rc.3.tgz#90b1c266a16bd2bdfab22bb635114610738a17ba" - integrity sha512-L4lw6eSOXeXg2IixjdcHHVw1z7Q1wLUJDr8NzlRF51KfEPZ5Lt28IhoJuEfE7y24e6v+q6CL15axPwSQOUIlhw== +"@abp/lodash@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-8.3.0.tgz#f5a0a496c999886f2d6999067bfac2e1f0c3969c" + integrity sha512-BiAsONbKR/RKG3WjRaMWVmhNe1ELEsykVq+ogG1Rhk3kwPbvze3TS8k2p0Lu/RC41/BmDUmJ5abg1pUMwkRT8w== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" lodash "^4.17.21" -"@abp/luxon@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-8.3.0-rc.3.tgz#dc2a024c4b20b59408c41b259fe9b7cc8820bd7f" - integrity sha512-QOpAHiJxzSW+4HClyTspYaMDSUbY4Sz36d4Q7LSKHcwLIuqQ7rRfGEeWctYZYPwHIgK4udhde08Z8xrzl5tZSg== +"@abp/luxon@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-8.3.0.tgz#7dd3f756be1605506e26f7ac76b80cc082a12d07" + integrity sha512-8gdI5BtXkVp0sFg89QVDe8AvgQ7Qfq4JCqz2PMrKPSATR3H8GD6BCaEYpRp6CNTCjVrQjGZdzKgUyea1D3dHbw== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" luxon "^3.4.4" -"@abp/malihu-custom-scrollbar-plugin@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-8.3.0-rc.3.tgz#4eb53cf29ecf7c613f2d00e5b1bab4d807fd8396" - integrity sha512-NyQ2Qg2PfsDjWZfSwfsESFFkveIMQXFwWiSWgmeolWeFNtETDI1KJ5Nrf//sY+8zpn6ciCQTI5iaklLPPWQSKg== +"@abp/malihu-custom-scrollbar-plugin@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-8.3.0.tgz#c88c132c3402bbb02054ca7d446051950f87a817" + integrity sha512-nd/mb6LJa6fMxal8PGcIjIRIoZ/UHCd01WDC9YI2H4wGCGx0CA0JyHso5oc/OEzJhUL8ujO/vYm9uLb7YahPtA== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/markdown-it@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/markdown-it/-/markdown-it-8.3.0-rc.3.tgz#b5fea34b0978da8c25683e54b97e72667af62051" - integrity sha512-YEGu4JRTKohMG7jdl6Jvr0PCaeIwM5+1GgMp+ozs5MbhF9fSrnbgkPAHNxjaN7vwEmwtegXWWTrf3M4cj0KceQ== +"@abp/markdown-it@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/markdown-it/-/markdown-it-8.3.0.tgz#d8ca44d277dbce804b2240371cbd4d01e7bfeb55" + integrity sha512-hrwh1M/KbOmZ826EbllU/bQFcQq+YskZMpKTIDhPj8FQTXsOIjsvlcNjaBcSCGwE3hHyiUG8h3qw1VjjTE/PmA== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" markdown-it "^14.1.0" -"@abp/moment@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-8.3.0-rc.3.tgz#8f997de893d8b69f670f99fe0f3f8a8b3ed64451" - integrity sha512-UulCn7Qt6Y1JfXYd+KGsvJZX7uybXVwud+55tE7TnNl7OXmQ6R3yL6uv+5da0iJsZzQa6c3EknmTkLLD53HfRw== +"@abp/moment@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-8.3.0.tgz#8e4f7a523ab76ef9e4cd96a399560bad38d38d1a" + integrity sha512-LywSsKuQ2GN/Btmle6CcTKa811zbvUWdC+RLQA792K9HyBs6LvN0qRRluEQZgplairRgh2pDOg8tdFlUERkv2w== dependencies: moment "^2.30.1" -"@abp/prismjs@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-8.3.0-rc.3.tgz#9a78f0339f0b20591990f585497e7f5e585828d8" - integrity sha512-IaPkxDQeB9NhFGRh7jEmRTdLcNcCEdwdEELzZpYgQIQ4EOA/bq9jbYa9rD9wAYXRE6/yliQLTzmOzori4ddrXw== +"@abp/prismjs@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-8.3.0.tgz#0c87c63294d1452ed7152083d2fb6e70aa3aeae6" + integrity sha512-3wpwbqqlGRfQSLcBP+Qb2TKOoVGZVYYwOP6dP3So9ev8J5gFMDEizH9zLwRVHYrrsZZP8/etYnyZ0hn7ewuI5Q== dependencies: - "@abp/clipboard" "~8.3.0-rc.3" - "@abp/core" "~8.3.0-rc.3" + "@abp/clipboard" "~8.3.0" + "@abp/core" "~8.3.0" prismjs "^1.29.0" -"@abp/select2@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-8.3.0-rc.3.tgz#621505b7a829b02cfbb146c7b710093b9e6e19f4" - integrity sha512-SV0gTfKbEAgMG/ND6zrc3QF1buByHePrPxoI1lt1ZiSgt5m9V9i6+zDkE20/W/puegINJAU2kJZtm9hCfMtXaQ== +"@abp/select2@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-8.3.0.tgz#ef4742fcd345394767f46180f61c6cabbd0b3867" + integrity sha512-bdLt2+ImxxpiZl4HGbYJpdDROQUT7/Z/+8A+6oJNacq3lNekdvufLYgTMxKru6zTbnd9j3HFKMOTE1eRjb9Xqg== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" select2 "^4.0.13" -"@abp/slugify@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/slugify/-/slugify-8.3.0-rc.3.tgz#cedb942d00ce64ed5d097a981b1d29294f2446a9" - integrity sha512-Nyw7EqB8ebFOTQs4MXu9d79ivoTaYSkunnCL6Ebw4jLc0Of8naNKgGYzojRdBqN/8kNCYgsIKn0t/Wga37qmTA== +"@abp/slugify@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/slugify/-/slugify-8.3.0.tgz#ac061a40268437a10defef48045ddce8eb109035" + integrity sha512-YCNg+wiyx2Y+pQesQvsZKQBYj9kVc5041opCFRuwos3IbbHUCtOdzvrc11ZAIAaUOfN5EfGZ2MfVD3v18OH3DQ== dependencies: slugify "^1.6.6" -"@abp/star-rating-svg@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/star-rating-svg/-/star-rating-svg-8.3.0-rc.3.tgz#2b5e9d8473ccf2bbefc5666c388b04560c1ef529" - integrity sha512-VhvEUZ6NPgTl7CQxqNUy2IUCPT4RyOpAVDF5RQF25r/hLoThDKk7IqhsrmWgWLShfJEMMxv9T2rSq8jnoS6MJw== +"@abp/star-rating-svg@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/star-rating-svg/-/star-rating-svg-8.3.0.tgz#5a8d62eca5158a4bc9f827a610db5c93e6fc9e78" + integrity sha512-W7ds+IYw45M+HNVBPSBMH7Tn7edrxQ+elUgE8eEYdz9MzYoGxwIW97lzwDjr30LMR45+ITzcc6v8GwwF4jSR6w== dependencies: - "@abp/jquery" "~8.3.0-rc.3" + "@abp/jquery" "~8.3.0" star-rating-svg "^3.5.0" -"@abp/sweetalert2@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-8.3.0-rc.3.tgz#728978d364fe80dfd3b9cacdee0960e921d404af" - integrity sha512-G3xAKewy7TH2UZgLg+mVhgng5y1RbanVfsA/VTc9DE1XBMG9fpiqywhbny/5qabFhgvNjMKM28Yce23uAsji1A== +"@abp/sweetalert2@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-8.3.0.tgz#a63020d57e44f7940817287d3d9676288bfb85aa" + integrity sha512-ooqPM4Z2v2scnMo5l8ycTmp6t/sW4sCsvIkJ4TyM876WLQJaZxJdOao4RQWuU+dVFr9zg8cOwqLH4q7UEiO6ww== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" sweetalert2 "^11.3.6" -"@abp/timeago@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-8.3.0-rc.3.tgz#dcef20b900e6e95e12fec64b2f1632949f164eb0" - integrity sha512-sFOlpH54PiHosrmRoPZHtC+RVQdjPWetvtFm7svIfCta+dq6Iz70B7/O0oqQabAIERhA9jTf3ubMtBF6FCdmYg== +"@abp/timeago@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-8.3.0.tgz#b3b8d6927bf170f77af848bc1925e5ef6835bd55" + integrity sha512-Dd6xaUoF9Bp4F9WJnTsFBqY+Gt++UR7UmLvBZL/dvthkeNCu2I8MUsmshkUUjY0lIXpjZwefUOuyupQrgHXPMg== dependencies: - "@abp/jquery" "~8.3.0-rc.3" + "@abp/jquery" "~8.3.0" timeago "^1.6.7" -"@abp/toastr@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-8.3.0-rc.3.tgz#5c821d5a049c322f082c37febd5980d2d664292c" - integrity sha512-PdiQMO6UA6yTKGHqztm5Kxu3UzsidnYyQtjojVTYQd87mvgIDIUkoXxXJ2VVgHnRy2FdZW12UfZG4v3/eJHbmg== +"@abp/toastr@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-8.3.0.tgz#e68a2bd8f731e79034594bc2c736f7c66b3df1af" + integrity sha512-aWK/RaX/FmcEKhJLjsw1A0K2c04m2fRJkmo9NwzBCSscy6Msw9IMkqNWLiFDThMU8/qKzq7wq3Vmk/C0IpeAwA== dependencies: - "@abp/jquery" "~8.3.0-rc.3" + "@abp/jquery" "~8.3.0" toastr "^2.1.4" -"@abp/tui-editor@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/tui-editor/-/tui-editor-8.3.0-rc.3.tgz#52524047cba5b068d7bb22f1295226c090f3c6b1" - integrity sha512-PPipxm/BNtfmimc185kK7hHkkAS692huhKlLJnLHwCpuHvGbKB1rCoourW451V6knuYOkfu79wM3GSnVFROF2A== +"@abp/tui-editor@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/tui-editor/-/tui-editor-8.3.0.tgz#188360644140f3173b0347c1ce883612a5eb9e18" + integrity sha512-GNFuKvAlwihuzg91dekGZ5s5aLKySROHbLujanzaco1nfRvWehx+J+oCP0rHzQ3++DpxEXhlz05qW9I1gCEAKA== dependencies: - "@abp/jquery" "~8.3.0-rc.3" - "@abp/prismjs" "~8.3.0-rc.3" + "@abp/jquery" "~8.3.0" + "@abp/prismjs" "~8.3.0" -"@abp/uppy@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/uppy/-/uppy-8.3.0-rc.3.tgz#e0cb5713a362f00e7a21131d47033351f3b98bca" - integrity sha512-yCvRuWI6KgbSJvKNy7PK27q/sS2Pn+R2A8l/1Ys1DU5EVU8QguXcYpbuWWgnhqrCc/x9okMB+FbbJwGMkD2LMQ== +"@abp/uppy@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/uppy/-/uppy-8.3.0.tgz#4b19ae7ed431276415195c19e94a24841232a7aa" + integrity sha512-ob9dVKxCnnxP3VarSIivx5++7KzKpUGA8qFI+tOpTiL2uPI71ERo4neOnCC1USa03bWDEo24cLWz3/CNGVIWrA== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" uppy "^3.27.0" -"@abp/utils@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-8.3.0-rc.3.tgz#00b4acf4a4a2b4c4c1193a737f972d6508cf1831" - integrity sha512-cEPVo2QkLmn4Meo++dkvknfKlNlfQ7kmdWdXon1ZViaf9YFbTEZIYD5ccrdGUvKkVlAyOHG3TcAHesiAOyx1PQ== +"@abp/utils@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-8.3.0.tgz#96ae9266ad4d833fd9d723acef7fc85fabf618d9" + integrity sha512-w/XAqza4Z8wBWRoj5uPNKbd1/bE9L/uUWk6EUSBKmljMRryWQBmaPkb1XgvrOMQIbyyF60tUvvipapQLPVh6hw== dependencies: just-compare "^2.3.0" diff --git a/modules/docs/app/VoloDocs.Web/package.json b/modules/docs/app/VoloDocs.Web/package.json index dacaaf1988..0eabf0859a 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": "~8.3.0-rc.3", - "@abp/docs": "~8.3.0-rc.3" + "@abp/aspnetcore.mvc.ui.theme.basic": "~8.3.0", + "@abp/docs": "~8.3.0" } } diff --git a/modules/docs/app/VoloDocs.Web/yarn.lock b/modules/docs/app/VoloDocs.Web/yarn.lock index 6e02053bbb..027f4c5064 100644 --- a/modules/docs/app/VoloDocs.Web/yarn.lock +++ b/modules/docs/app/VoloDocs.Web/yarn.lock @@ -2,238 +2,238 @@ # yarn lockfile v1 -"@abp/anchor-js@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/anchor-js/-/anchor-js-8.3.0-rc.3.tgz#b75b06cd79c26305555b0e2fcdf246909fd0870a" - integrity sha512-2YmkxFmGGacgsc9Xq//L8bD2oDTw8EFvIEsHua99f1sRWFgJq3QxjNMkk9uM8iQJGROJLs39B8jp2RcVsPWzbg== +"@abp/anchor-js@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/anchor-js/-/anchor-js-8.3.0.tgz#8dd848c157440ab41fe46e486afa390fae6838b4" + integrity sha512-fugT/x0pdHbE246W3z3qhunRz/SUkEwYU8ANBu8QM/+JgKwyqIl8M82UD3aHCimKQFqadvMo17XGQJsGcSAS/Q== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" anchor-js "^5.0.0" -"@abp/aspnetcore.mvc.ui.theme.basic@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-8.3.0-rc.3.tgz#58dc0dc5bb42e7c2bd70c717256332df2efe6d45" - integrity sha512-ba97ROK5RiEtIwOMwwfHuZFAX/iaQ+fR4Tw6cz+SHGkqfrACP4KnO+GwplCCyG/Y/ZmbX8KTliDEWGKDL4CCqQ== - dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~8.3.0-rc.3" - -"@abp/aspnetcore.mvc.ui.theme.shared@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-8.3.0-rc.3.tgz#804fe763c3b66cbaf7ac8de7aca53a8690f0283c" - integrity sha512-ldiW9rXMMF7iAZpgFg1gDbwZW64/qLjhIyn+IcO7BzpLD6DKCzeQl/M+p7H1h7TC/ZSLEjRfcQs+ubjMI+OFoQ== - dependencies: - "@abp/aspnetcore.mvc.ui" "~8.3.0-rc.3" - "@abp/bootstrap" "~8.3.0-rc.3" - "@abp/bootstrap-datepicker" "~8.3.0-rc.3" - "@abp/bootstrap-daterangepicker" "~8.3.0-rc.3" - "@abp/datatables.net-bs5" "~8.3.0-rc.3" - "@abp/font-awesome" "~8.3.0-rc.3" - "@abp/jquery-form" "~8.3.0-rc.3" - "@abp/jquery-validation-unobtrusive" "~8.3.0-rc.3" - "@abp/lodash" "~8.3.0-rc.3" - "@abp/luxon" "~8.3.0-rc.3" - "@abp/malihu-custom-scrollbar-plugin" "~8.3.0-rc.3" - "@abp/moment" "~8.3.0-rc.3" - "@abp/select2" "~8.3.0-rc.3" - "@abp/sweetalert2" "~8.3.0-rc.3" - "@abp/timeago" "~8.3.0-rc.3" - "@abp/toastr" "~8.3.0-rc.3" - -"@abp/aspnetcore.mvc.ui@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-8.3.0-rc.3.tgz#e1e68f10e1715af44505da2d80b12fdf52d7de8c" - integrity sha512-0ld0/fXTj2mJZ12W1nn87K1Beqg+zbIGSR8lxWXG56jVArxasSqL3CiOQg+lLMUnWq1kwtTuoxZZVA76aL+nJA== +"@abp/aspnetcore.mvc.ui.theme.basic@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-8.3.0.tgz#a2d17eb5da2c3abfad4bcc842cfcda0e58a130a4" + integrity sha512-T2dg7WlvNSrwTCfy5wk4gqiJ/15kIjMGM4wLXIJcMYn60yGY/YeX6Q4A3R/qJzfl4JdgW5rt3GpdKv86y/ADXg== + dependencies: + "@abp/aspnetcore.mvc.ui.theme.shared" "~8.3.0" + +"@abp/aspnetcore.mvc.ui.theme.shared@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-8.3.0.tgz#5d6bb5181a62770e9cb967980b77e75c115c5ed7" + integrity sha512-o/0eh8jLS+YJiseTKzzioUz0vNnMFzyoz+mkyA4PlO1gqw2JFhzPhTBZ3cuyV9QlxUfEA8dWAkqAUX6vqiHwkw== + dependencies: + "@abp/aspnetcore.mvc.ui" "~8.3.0" + "@abp/bootstrap" "~8.3.0" + "@abp/bootstrap-datepicker" "~8.3.0" + "@abp/bootstrap-daterangepicker" "~8.3.0" + "@abp/datatables.net-bs5" "~8.3.0" + "@abp/font-awesome" "~8.3.0" + "@abp/jquery-form" "~8.3.0" + "@abp/jquery-validation-unobtrusive" "~8.3.0" + "@abp/lodash" "~8.3.0" + "@abp/luxon" "~8.3.0" + "@abp/malihu-custom-scrollbar-plugin" "~8.3.0" + "@abp/moment" "~8.3.0" + "@abp/select2" "~8.3.0" + "@abp/sweetalert2" "~8.3.0" + "@abp/timeago" "~8.3.0" + "@abp/toastr" "~8.3.0" + +"@abp/aspnetcore.mvc.ui@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-8.3.0.tgz#d7ba0539bfcc6661a347dea7f952489010b3e816" + integrity sha512-OxgZhLKiXGFYYpNJ5O/IbhinsniiBPv9586e+1Soar0GckCMIIegJxnJb1Bo1O75blrcK2cIU6LqjRT1FXt2Lw== dependencies: ansi-colors "^4.1.3" -"@abp/bootstrap-datepicker@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-8.3.0-rc.3.tgz#319054e54532085031a80d5859dec1a56b7548ac" - integrity sha512-fWKry7HLQ14Vv3GiF/bqge4ySN/9GkK/kZRrdeopdzvmOKTPCHSJ8DNrXAmd+WVHbcqdQ6uovWBOfMufCLohJw== +"@abp/bootstrap-datepicker@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-8.3.0.tgz#8c1bf9efec37b671d8f28b8b1e89c1ac66684267" + integrity sha512-KCwMtm7x+cnKPeNMzhjDJUce0stwu4e57ibmvA6sMf1tmj+yB256O4E2hIDDohiT3vP/zV8HVHX6uATlcmGC9w== dependencies: bootstrap-datepicker "^1.10.0" -"@abp/bootstrap-daterangepicker@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-8.3.0-rc.3.tgz#873728e2d6313fae07f1f74a4cf483e50bccfa7f" - integrity sha512-nu2N12ftl/1zA7Fe1lAgZiJnkZKFBNjfsPmy+ykQLKGWIkca14b0UHwUIHEaiI26fD6bBT50/kMRzA7uE3goaA== +"@abp/bootstrap-daterangepicker@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-8.3.0.tgz#2b8ed978333502677916f88cbb3e1d1b1c8a3a17" + integrity sha512-uQSfuCQogl4BujdqvtdAoSE+z32ci8FT5+i3gLfpqbgTaxvY/Kv5NxAUH5/1sjnuAE7SMWO+eVvI3V0pXgQohg== dependencies: bootstrap-daterangepicker "^3.1.0" -"@abp/bootstrap@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-8.3.0-rc.3.tgz#ca01bc3b6c4d5b63cf1bb86472e8df366ff3cf40" - integrity sha512-qSJ5s8k3X4WANgUoEZ289q+UKkStnbAMIEmIh6x93nIZHaGAJsK3oaSNgZ2DbGPhxpMKxhJpCuzF1KrRDtwtUQ== +"@abp/bootstrap@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-8.3.0.tgz#96d6ea7e6ac30f6e34e495a4224f56f7b2a1a7a3" + integrity sha512-5AmdTtakmWhZmHrb7ibvvf+KwF9OGadpAe7Kv9mNEE02K2qkp7Xw4r5o/bgVl7YfLC1FA6GZZXrV2s2t0gjHtg== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" bootstrap "^5.3.3" -"@abp/clipboard@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-8.3.0-rc.3.tgz#73eeba6bebccd0926ee40ba693c4c1e72f559f05" - integrity sha512-NUjh2ML1g9afBZcW0Ulp9/7CEMPH57ukxUwJBC88yd0C+oYC7KVurD7yeLtBrMAMQdfqP0e/lQcxZj69HB9p7g== +"@abp/clipboard@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-8.3.0.tgz#1b171e533f768cf42c8fc0c9c67fac1c636fee8c" + integrity sha512-T0O4OaMxLLYztAxyvEc3onEOpGHB/C8/jDcvJwd7mgpLoi9zXVfHwpnzkx/egfNJMzp49STD6Jc+jACi8Uq+CQ== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" clipboard "^2.0.11" -"@abp/core@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-8.3.0-rc.3.tgz#4031ec2c08a00652bb717c962ddc3aa8b3cf72c9" - integrity sha512-9Y7EcLE+0RLnJyhZlSYCElTjrFz+P7uXbyl+1UyuyY+dxyAdZhZ+1WPHFSr0f8KlJrxkjnsPj+gR4e48u15FDw== +"@abp/core@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-8.3.0.tgz#3a68f5a9549efcc3e13500e301f2576751b51445" + integrity sha512-zrxnZi4qij/Y4AZWaXuPqs3Dd7gBtU/onX7FkYxLgQDxYBfx+84QAnPRNRFKMWaD/wKbTUB0wA66U3t2aiQX9Q== dependencies: - "@abp/utils" "~8.3.0-rc.3" + "@abp/utils" "~8.3.0" -"@abp/datatables.net-bs5@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-8.3.0-rc.3.tgz#da22fbf7fe23671bfa20e83c9490e7bbe169b4aa" - integrity sha512-36VOOd/1461LZN11awaU5xbC3oYYJFebNFBeFZijsc8LtVKCwgMWZ8K3sCOolBVEyltDzKntw+w0NwhlWjd8tA== +"@abp/datatables.net-bs5@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-8.3.0.tgz#21822ae4912a561afe9112925185aece03fcd0eb" + integrity sha512-GOGYSSHp3iPUDFRX2Y3C0wkiCOJDuYuK/zUSzQLNpOvBMZO+I/oWBcZM+qkVowIzsoRlAGV9+CVV2B/B05qidA== dependencies: - "@abp/datatables.net" "~8.3.0-rc.3" + "@abp/datatables.net" "~8.3.0" datatables.net-bs5 "^2.0.8" -"@abp/datatables.net@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-8.3.0-rc.3.tgz#933ade7c61d3dfb61aa9278eb948e7756013a61f" - integrity sha512-MjSWhmMilHAKb4HmCLQOXesuFWvguIxhpKRAfSfweIiaOtgaPBh4KR8PSGxZgC0fImQYjWSfHQP4QkLAd5xasA== +"@abp/datatables.net@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-8.3.0.tgz#ff697758ce9309ba8311f23aec921c4722588c8b" + integrity sha512-4dIdv7eN1tVouOUrlF+MIdg8zQpecyH61waqLgy1q5jMZQivrTSFZ7UWMG3WVOAYjw5zSUZHZPbzA+ttnaOPkg== dependencies: - "@abp/jquery" "~8.3.0-rc.3" + "@abp/jquery" "~8.3.0" datatables.net "^2.0.8" -"@abp/docs@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/docs/-/docs-8.3.0-rc.3.tgz#def4cc74abb30fef29f5bca77b05f02d5e576886" - integrity sha512-jYnF8JCbwQuWDAJn+0pSy6PgP1xo6xkjZjBdHBnwPnA1GgpiPYDf7+/BDNvdEPsUfXR6tanro9qefaVxyyQpgg== +"@abp/docs@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/docs/-/docs-8.3.0.tgz#3ca32d80b00e2f2b7410c76d92f653919fa50d20" + integrity sha512-HIHLoRtMeeZIF9JAfQ+EWyFyNWT/rJhtz23rweWz2waaC+Ua5JWkFF3vcNuPiMIqWilOp0iwsSAP0ex10/+7kA== dependencies: - "@abp/anchor-js" "~8.3.0-rc.3" - "@abp/clipboard" "~8.3.0-rc.3" - "@abp/malihu-custom-scrollbar-plugin" "~8.3.0-rc.3" - "@abp/popper.js" "~8.3.0-rc.3" - "@abp/prismjs" "~8.3.0-rc.3" + "@abp/anchor-js" "~8.3.0" + "@abp/clipboard" "~8.3.0" + "@abp/malihu-custom-scrollbar-plugin" "~8.3.0" + "@abp/popper.js" "~8.3.0" + "@abp/prismjs" "~8.3.0" -"@abp/font-awesome@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-8.3.0-rc.3.tgz#efa785200433025725e6dcd48c8b6b538938681d" - integrity sha512-DRjSDWhTWmL0I2A7KcFOxQFaLftxg0Rvcss0138j/mGpt64+unzcYo6YRCEga/k6ygxc7dYnhFmQf2tli44toQ== +"@abp/font-awesome@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-8.3.0.tgz#9e4e9adc08dfca52c0a07d1608c5e5662675a4c9" + integrity sha512-NRxvM/dzvQC2Cj/F5i07XB/i6IVTmXcO9sOq6TWosWib0wGaPxRbCSjy8QUAYSD1QYaVQ30XMb3XXImaMGyd8A== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" "@fortawesome/fontawesome-free" "^6.5.2" -"@abp/jquery-form@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-8.3.0-rc.3.tgz#fbb1ceb0e4092243cb018e1d7aa1ca86371fa98c" - integrity sha512-n7Tu4b2UhaRMcQCmzcBMiEYnaaR/OmA7LZfOcg4YP202xnLj29w4R/sRbQjr0w9lvPhue9rrSXaEf43UrV8eyg== +"@abp/jquery-form@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-8.3.0.tgz#fa2ad2fedbe3d3528ee94cbbd4f94d48f0cb5e4d" + integrity sha512-olP9FmpNVTbOIewsVua0moHVYXw4Sl3chFbvTDLG6vRBohLSjllUXfgY3UEIVWR1PCqnAg+iEJZl9NHB9iOLBg== dependencies: - "@abp/jquery" "~8.3.0-rc.3" + "@abp/jquery" "~8.3.0" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-8.3.0-rc.3.tgz#bcc8dad54b880134519f642b6a1a151584889bf2" - integrity sha512-4pfc7vYh5oMZc4+AJRwN7CQmb4ZK29POyuL9RjuBCQbvYCLcru0M5cQTz3wt9jLeAXn402lbwxh1cLioZfw8SQ== +"@abp/jquery-validation-unobtrusive@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-8.3.0.tgz#0992cdd33170df83c79aa3371038c0b30e451521" + integrity sha512-9hidjq8x8sTnP5O3K2b2x9NpxvPd9WB03ENR6OfvM89kfSmQapSvBZTlCu80YK9NaQJ6MLQRLYOCuc3GHcj3EQ== dependencies: - "@abp/jquery-validation" "~8.3.0-rc.3" + "@abp/jquery-validation" "~8.3.0" jquery-validation-unobtrusive "^4.0.0" -"@abp/jquery-validation@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-8.3.0-rc.3.tgz#d71e59dfa793070b780bb8078f4cd12b8217f701" - integrity sha512-/OEh5PVKfA4BB7YVmFFBa+GKDR4jzNOkRBUnzplxxcegrXlbbjuxC7VcnsLzXQJ1c2aUO6a1y8L7MsPMjaXVrg== +"@abp/jquery-validation@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-8.3.0.tgz#bd6a72c6d86f116abe3b5d2adf3752bdbbcca887" + integrity sha512-6l5BZSa3N0Fou6Se7MfUSnI2dD4SYhZ2V988bgPJQ6p37XBOZ2OAj7LEIf5FSjtUzXjao/6/vqjkPNYreNikig== dependencies: - "@abp/jquery" "~8.3.0-rc.3" + "@abp/jquery" "~8.3.0" jquery-validation "^1.20.1" -"@abp/jquery@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-8.3.0-rc.3.tgz#7350b8675c7199b143bad86f46a50c629568605b" - integrity sha512-GkjKCrQmqqeu3xvpWTZxFa1VVRKPhmiutO2syuPi2dReDBhMV6h6EZZeu5y8lHLvL1HTEEANFFFXJGUna07FRQ== +"@abp/jquery@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-8.3.0.tgz#9be5ef2f769680226e6a1a981026590caf3b57ef" + integrity sha512-GsFY+n3EtS6B0pAoKd+xMnt5Dzi5bHvIbhLgDgfQfOBzAy3twGRWsPQ3nkuXXm8TppwujMNowU1oiLKPPm0AOA== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" jquery "~3.7.1" -"@abp/lodash@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-8.3.0-rc.3.tgz#90b1c266a16bd2bdfab22bb635114610738a17ba" - integrity sha512-L4lw6eSOXeXg2IixjdcHHVw1z7Q1wLUJDr8NzlRF51KfEPZ5Lt28IhoJuEfE7y24e6v+q6CL15axPwSQOUIlhw== +"@abp/lodash@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-8.3.0.tgz#f5a0a496c999886f2d6999067bfac2e1f0c3969c" + integrity sha512-BiAsONbKR/RKG3WjRaMWVmhNe1ELEsykVq+ogG1Rhk3kwPbvze3TS8k2p0Lu/RC41/BmDUmJ5abg1pUMwkRT8w== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" lodash "^4.17.21" -"@abp/luxon@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-8.3.0-rc.3.tgz#dc2a024c4b20b59408c41b259fe9b7cc8820bd7f" - integrity sha512-QOpAHiJxzSW+4HClyTspYaMDSUbY4Sz36d4Q7LSKHcwLIuqQ7rRfGEeWctYZYPwHIgK4udhde08Z8xrzl5tZSg== +"@abp/luxon@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-8.3.0.tgz#7dd3f756be1605506e26f7ac76b80cc082a12d07" + integrity sha512-8gdI5BtXkVp0sFg89QVDe8AvgQ7Qfq4JCqz2PMrKPSATR3H8GD6BCaEYpRp6CNTCjVrQjGZdzKgUyea1D3dHbw== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" luxon "^3.4.4" -"@abp/malihu-custom-scrollbar-plugin@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-8.3.0-rc.3.tgz#4eb53cf29ecf7c613f2d00e5b1bab4d807fd8396" - integrity sha512-NyQ2Qg2PfsDjWZfSwfsESFFkveIMQXFwWiSWgmeolWeFNtETDI1KJ5Nrf//sY+8zpn6ciCQTI5iaklLPPWQSKg== +"@abp/malihu-custom-scrollbar-plugin@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-8.3.0.tgz#c88c132c3402bbb02054ca7d446051950f87a817" + integrity sha512-nd/mb6LJa6fMxal8PGcIjIRIoZ/UHCd01WDC9YI2H4wGCGx0CA0JyHso5oc/OEzJhUL8ujO/vYm9uLb7YahPtA== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/moment@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-8.3.0-rc.3.tgz#8f997de893d8b69f670f99fe0f3f8a8b3ed64451" - integrity sha512-UulCn7Qt6Y1JfXYd+KGsvJZX7uybXVwud+55tE7TnNl7OXmQ6R3yL6uv+5da0iJsZzQa6c3EknmTkLLD53HfRw== +"@abp/moment@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-8.3.0.tgz#8e4f7a523ab76ef9e4cd96a399560bad38d38d1a" + integrity sha512-LywSsKuQ2GN/Btmle6CcTKa811zbvUWdC+RLQA792K9HyBs6LvN0qRRluEQZgplairRgh2pDOg8tdFlUERkv2w== dependencies: moment "^2.30.1" -"@abp/popper.js@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/popper.js/-/popper.js-8.3.0-rc.3.tgz#446554b4937f97115346b2f617f58dea91d21a29" - integrity sha512-+lT3no56TfRF4DDVKNxJ56ZOB358UQlAG8BZ9107TmvwP0I+IoKDpApByv6FRnc1Sxy6RoY5vdDRdeTAKSSAyA== +"@abp/popper.js@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/popper.js/-/popper.js-8.3.0.tgz#95af55f98209ed2537e5f61404e6bfcdf36045e9" + integrity sha512-1jJbKU7zod3ihQ5hpDz91j33gkprQUkysvOzFnyDG8T5yQk+E63kYCHY+dzV3lSI1QpQscZA0c3SWVcgDgROvA== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" "@popperjs/core" "^2.11.8" -"@abp/prismjs@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-8.3.0-rc.3.tgz#9a78f0339f0b20591990f585497e7f5e585828d8" - integrity sha512-IaPkxDQeB9NhFGRh7jEmRTdLcNcCEdwdEELzZpYgQIQ4EOA/bq9jbYa9rD9wAYXRE6/yliQLTzmOzori4ddrXw== +"@abp/prismjs@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-8.3.0.tgz#0c87c63294d1452ed7152083d2fb6e70aa3aeae6" + integrity sha512-3wpwbqqlGRfQSLcBP+Qb2TKOoVGZVYYwOP6dP3So9ev8J5gFMDEizH9zLwRVHYrrsZZP8/etYnyZ0hn7ewuI5Q== dependencies: - "@abp/clipboard" "~8.3.0-rc.3" - "@abp/core" "~8.3.0-rc.3" + "@abp/clipboard" "~8.3.0" + "@abp/core" "~8.3.0" prismjs "^1.29.0" -"@abp/select2@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-8.3.0-rc.3.tgz#621505b7a829b02cfbb146c7b710093b9e6e19f4" - integrity sha512-SV0gTfKbEAgMG/ND6zrc3QF1buByHePrPxoI1lt1ZiSgt5m9V9i6+zDkE20/W/puegINJAU2kJZtm9hCfMtXaQ== +"@abp/select2@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-8.3.0.tgz#ef4742fcd345394767f46180f61c6cabbd0b3867" + integrity sha512-bdLt2+ImxxpiZl4HGbYJpdDROQUT7/Z/+8A+6oJNacq3lNekdvufLYgTMxKru6zTbnd9j3HFKMOTE1eRjb9Xqg== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" select2 "^4.0.13" -"@abp/sweetalert2@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-8.3.0-rc.3.tgz#728978d364fe80dfd3b9cacdee0960e921d404af" - integrity sha512-G3xAKewy7TH2UZgLg+mVhgng5y1RbanVfsA/VTc9DE1XBMG9fpiqywhbny/5qabFhgvNjMKM28Yce23uAsji1A== +"@abp/sweetalert2@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-8.3.0.tgz#a63020d57e44f7940817287d3d9676288bfb85aa" + integrity sha512-ooqPM4Z2v2scnMo5l8ycTmp6t/sW4sCsvIkJ4TyM876WLQJaZxJdOao4RQWuU+dVFr9zg8cOwqLH4q7UEiO6ww== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" sweetalert2 "^11.3.6" -"@abp/timeago@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-8.3.0-rc.3.tgz#dcef20b900e6e95e12fec64b2f1632949f164eb0" - integrity sha512-sFOlpH54PiHosrmRoPZHtC+RVQdjPWetvtFm7svIfCta+dq6Iz70B7/O0oqQabAIERhA9jTf3ubMtBF6FCdmYg== +"@abp/timeago@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-8.3.0.tgz#b3b8d6927bf170f77af848bc1925e5ef6835bd55" + integrity sha512-Dd6xaUoF9Bp4F9WJnTsFBqY+Gt++UR7UmLvBZL/dvthkeNCu2I8MUsmshkUUjY0lIXpjZwefUOuyupQrgHXPMg== dependencies: - "@abp/jquery" "~8.3.0-rc.3" + "@abp/jquery" "~8.3.0" timeago "^1.6.7" -"@abp/toastr@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-8.3.0-rc.3.tgz#5c821d5a049c322f082c37febd5980d2d664292c" - integrity sha512-PdiQMO6UA6yTKGHqztm5Kxu3UzsidnYyQtjojVTYQd87mvgIDIUkoXxXJ2VVgHnRy2FdZW12UfZG4v3/eJHbmg== +"@abp/toastr@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-8.3.0.tgz#e68a2bd8f731e79034594bc2c736f7c66b3df1af" + integrity sha512-aWK/RaX/FmcEKhJLjsw1A0K2c04m2fRJkmo9NwzBCSscy6Msw9IMkqNWLiFDThMU8/qKzq7wq3Vmk/C0IpeAwA== dependencies: - "@abp/jquery" "~8.3.0-rc.3" + "@abp/jquery" "~8.3.0" toastr "^2.1.4" -"@abp/utils@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-8.3.0-rc.3.tgz#00b4acf4a4a2b4c4c1193a737f972d6508cf1831" - integrity sha512-cEPVo2QkLmn4Meo++dkvknfKlNlfQ7kmdWdXon1ZViaf9YFbTEZIYD5ccrdGUvKkVlAyOHG3TcAHesiAOyx1PQ== +"@abp/utils@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-8.3.0.tgz#96ae9266ad4d833fd9d723acef7fc85fabf618d9" + integrity sha512-w/XAqza4Z8wBWRoj5uPNKbd1/bE9L/uUWk6EUSBKmljMRryWQBmaPkb1XgvrOMQIbyyF60tUvvipapQLPVh6hw== dependencies: just-compare "^2.3.0" diff --git a/modules/openiddict/app/OpenIddict.Demo.Server/package.json b/modules/openiddict/app/OpenIddict.Demo.Server/package.json index f19ff1baf6..7dad1fc3e2 100644 --- a/modules/openiddict/app/OpenIddict.Demo.Server/package.json +++ b/modules/openiddict/app/OpenIddict.Demo.Server/package.json @@ -3,6 +3,6 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "~8.3.0-rc.3" + "@abp/aspnetcore.mvc.ui.theme.basic": "~8.3.0" } } diff --git a/modules/openiddict/app/angular/package.json b/modules/openiddict/app/angular/package.json index d697bd9bac..8399146544 100644 --- a/modules/openiddict/app/angular/package.json +++ b/modules/openiddict/app/angular/package.json @@ -12,15 +12,15 @@ }, "private": true, "dependencies": { - "@abp/ng.account": "~8.3.0-rc.3", - "@abp/ng.components": "~8.3.0-rc.3", - "@abp/ng.core": "~8.3.0-rc.3", - "@abp/ng.oauth": "~8.3.0-rc.3", - "@abp/ng.identity": "~8.3.0-rc.3", - "@abp/ng.setting-management": "~8.3.0-rc.3", - "@abp/ng.tenant-management": "~8.3.0-rc.3", - "@abp/ng.theme.shared": "~8.3.0-rc.3", - "@abp/ng.theme.lepton-x": "~3.3.0-rc.3", + "@abp/ng.account": "~8.3.0", + "@abp/ng.components": "~8.3.0", + "@abp/ng.core": "~8.3.0", + "@abp/ng.oauth": "~8.3.0", + "@abp/ng.identity": "~8.3.0", + "@abp/ng.setting-management": "~8.3.0", + "@abp/ng.tenant-management": "~8.3.0", + "@abp/ng.theme.shared": "~8.3.0", + "@abp/ng.theme.lepton-x": "~3.3.0", "@angular/animations": "^15.0.1", "@angular/common": "^15.0.1", "@angular/compiler": "^15.0.1", @@ -36,7 +36,7 @@ "zone.js": "~0.11.4" }, "devDependencies": { - "@abp/ng.schematics": "~8.3.0-rc.3", + "@abp/ng.schematics": "~8.3.0", "@angular-devkit/build-angular": "^15.0.1", "@angular-eslint/builder": "~15.1.0", "@angular-eslint/eslint-plugin": "~15.1.0", diff --git a/modules/setting-management/app/Volo.Abp.SettingManagement.DemoApp/package.json b/modules/setting-management/app/Volo.Abp.SettingManagement.DemoApp/package.json index d37cc9c2c9..78fa030754 100644 --- a/modules/setting-management/app/Volo.Abp.SettingManagement.DemoApp/package.json +++ b/modules/setting-management/app/Volo.Abp.SettingManagement.DemoApp/package.json @@ -3,6 +3,6 @@ "name": "demo-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "~8.3.0-rc.3" + "@abp/aspnetcore.mvc.ui.theme.basic": "~8.3.0" } } diff --git a/modules/setting-management/app/Volo.Abp.SettingManagement.DemoApp/yarn.lock b/modules/setting-management/app/Volo.Abp.SettingManagement.DemoApp/yarn.lock index cb24c2926f..d19b65bc24 100644 --- a/modules/setting-management/app/Volo.Abp.SettingManagement.DemoApp/yarn.lock +++ b/modules/setting-management/app/Volo.Abp.SettingManagement.DemoApp/yarn.lock @@ -2,194 +2,194 @@ # yarn lockfile v1 -"@abp/aspnetcore.mvc.ui.theme.basic@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-8.3.0-rc.3.tgz#58dc0dc5bb42e7c2bd70c717256332df2efe6d45" - integrity sha512-ba97ROK5RiEtIwOMwwfHuZFAX/iaQ+fR4Tw6cz+SHGkqfrACP4KnO+GwplCCyG/Y/ZmbX8KTliDEWGKDL4CCqQ== - dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~8.3.0-rc.3" - -"@abp/aspnetcore.mvc.ui.theme.shared@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-8.3.0-rc.3.tgz#804fe763c3b66cbaf7ac8de7aca53a8690f0283c" - integrity sha512-ldiW9rXMMF7iAZpgFg1gDbwZW64/qLjhIyn+IcO7BzpLD6DKCzeQl/M+p7H1h7TC/ZSLEjRfcQs+ubjMI+OFoQ== - dependencies: - "@abp/aspnetcore.mvc.ui" "~8.3.0-rc.3" - "@abp/bootstrap" "~8.3.0-rc.3" - "@abp/bootstrap-datepicker" "~8.3.0-rc.3" - "@abp/bootstrap-daterangepicker" "~8.3.0-rc.3" - "@abp/datatables.net-bs5" "~8.3.0-rc.3" - "@abp/font-awesome" "~8.3.0-rc.3" - "@abp/jquery-form" "~8.3.0-rc.3" - "@abp/jquery-validation-unobtrusive" "~8.3.0-rc.3" - "@abp/lodash" "~8.3.0-rc.3" - "@abp/luxon" "~8.3.0-rc.3" - "@abp/malihu-custom-scrollbar-plugin" "~8.3.0-rc.3" - "@abp/moment" "~8.3.0-rc.3" - "@abp/select2" "~8.3.0-rc.3" - "@abp/sweetalert2" "~8.3.0-rc.3" - "@abp/timeago" "~8.3.0-rc.3" - "@abp/toastr" "~8.3.0-rc.3" - -"@abp/aspnetcore.mvc.ui@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-8.3.0-rc.3.tgz#e1e68f10e1715af44505da2d80b12fdf52d7de8c" - integrity sha512-0ld0/fXTj2mJZ12W1nn87K1Beqg+zbIGSR8lxWXG56jVArxasSqL3CiOQg+lLMUnWq1kwtTuoxZZVA76aL+nJA== +"@abp/aspnetcore.mvc.ui.theme.basic@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-8.3.0.tgz#a2d17eb5da2c3abfad4bcc842cfcda0e58a130a4" + integrity sha512-T2dg7WlvNSrwTCfy5wk4gqiJ/15kIjMGM4wLXIJcMYn60yGY/YeX6Q4A3R/qJzfl4JdgW5rt3GpdKv86y/ADXg== + dependencies: + "@abp/aspnetcore.mvc.ui.theme.shared" "~8.3.0" + +"@abp/aspnetcore.mvc.ui.theme.shared@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-8.3.0.tgz#5d6bb5181a62770e9cb967980b77e75c115c5ed7" + integrity sha512-o/0eh8jLS+YJiseTKzzioUz0vNnMFzyoz+mkyA4PlO1gqw2JFhzPhTBZ3cuyV9QlxUfEA8dWAkqAUX6vqiHwkw== + dependencies: + "@abp/aspnetcore.mvc.ui" "~8.3.0" + "@abp/bootstrap" "~8.3.0" + "@abp/bootstrap-datepicker" "~8.3.0" + "@abp/bootstrap-daterangepicker" "~8.3.0" + "@abp/datatables.net-bs5" "~8.3.0" + "@abp/font-awesome" "~8.3.0" + "@abp/jquery-form" "~8.3.0" + "@abp/jquery-validation-unobtrusive" "~8.3.0" + "@abp/lodash" "~8.3.0" + "@abp/luxon" "~8.3.0" + "@abp/malihu-custom-scrollbar-plugin" "~8.3.0" + "@abp/moment" "~8.3.0" + "@abp/select2" "~8.3.0" + "@abp/sweetalert2" "~8.3.0" + "@abp/timeago" "~8.3.0" + "@abp/toastr" "~8.3.0" + +"@abp/aspnetcore.mvc.ui@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-8.3.0.tgz#d7ba0539bfcc6661a347dea7f952489010b3e816" + integrity sha512-OxgZhLKiXGFYYpNJ5O/IbhinsniiBPv9586e+1Soar0GckCMIIegJxnJb1Bo1O75blrcK2cIU6LqjRT1FXt2Lw== dependencies: ansi-colors "^4.1.3" -"@abp/bootstrap-datepicker@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-8.3.0-rc.3.tgz#319054e54532085031a80d5859dec1a56b7548ac" - integrity sha512-fWKry7HLQ14Vv3GiF/bqge4ySN/9GkK/kZRrdeopdzvmOKTPCHSJ8DNrXAmd+WVHbcqdQ6uovWBOfMufCLohJw== +"@abp/bootstrap-datepicker@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-8.3.0.tgz#8c1bf9efec37b671d8f28b8b1e89c1ac66684267" + integrity sha512-KCwMtm7x+cnKPeNMzhjDJUce0stwu4e57ibmvA6sMf1tmj+yB256O4E2hIDDohiT3vP/zV8HVHX6uATlcmGC9w== dependencies: bootstrap-datepicker "^1.10.0" -"@abp/bootstrap-daterangepicker@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-8.3.0-rc.3.tgz#873728e2d6313fae07f1f74a4cf483e50bccfa7f" - integrity sha512-nu2N12ftl/1zA7Fe1lAgZiJnkZKFBNjfsPmy+ykQLKGWIkca14b0UHwUIHEaiI26fD6bBT50/kMRzA7uE3goaA== +"@abp/bootstrap-daterangepicker@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-8.3.0.tgz#2b8ed978333502677916f88cbb3e1d1b1c8a3a17" + integrity sha512-uQSfuCQogl4BujdqvtdAoSE+z32ci8FT5+i3gLfpqbgTaxvY/Kv5NxAUH5/1sjnuAE7SMWO+eVvI3V0pXgQohg== dependencies: bootstrap-daterangepicker "^3.1.0" -"@abp/bootstrap@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-8.3.0-rc.3.tgz#ca01bc3b6c4d5b63cf1bb86472e8df366ff3cf40" - integrity sha512-qSJ5s8k3X4WANgUoEZ289q+UKkStnbAMIEmIh6x93nIZHaGAJsK3oaSNgZ2DbGPhxpMKxhJpCuzF1KrRDtwtUQ== +"@abp/bootstrap@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-8.3.0.tgz#96d6ea7e6ac30f6e34e495a4224f56f7b2a1a7a3" + integrity sha512-5AmdTtakmWhZmHrb7ibvvf+KwF9OGadpAe7Kv9mNEE02K2qkp7Xw4r5o/bgVl7YfLC1FA6GZZXrV2s2t0gjHtg== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" bootstrap "^5.3.3" -"@abp/core@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-8.3.0-rc.3.tgz#4031ec2c08a00652bb717c962ddc3aa8b3cf72c9" - integrity sha512-9Y7EcLE+0RLnJyhZlSYCElTjrFz+P7uXbyl+1UyuyY+dxyAdZhZ+1WPHFSr0f8KlJrxkjnsPj+gR4e48u15FDw== +"@abp/core@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-8.3.0.tgz#3a68f5a9549efcc3e13500e301f2576751b51445" + integrity sha512-zrxnZi4qij/Y4AZWaXuPqs3Dd7gBtU/onX7FkYxLgQDxYBfx+84QAnPRNRFKMWaD/wKbTUB0wA66U3t2aiQX9Q== dependencies: - "@abp/utils" "~8.3.0-rc.3" + "@abp/utils" "~8.3.0" -"@abp/datatables.net-bs5@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-8.3.0-rc.3.tgz#da22fbf7fe23671bfa20e83c9490e7bbe169b4aa" - integrity sha512-36VOOd/1461LZN11awaU5xbC3oYYJFebNFBeFZijsc8LtVKCwgMWZ8K3sCOolBVEyltDzKntw+w0NwhlWjd8tA== +"@abp/datatables.net-bs5@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-8.3.0.tgz#21822ae4912a561afe9112925185aece03fcd0eb" + integrity sha512-GOGYSSHp3iPUDFRX2Y3C0wkiCOJDuYuK/zUSzQLNpOvBMZO+I/oWBcZM+qkVowIzsoRlAGV9+CVV2B/B05qidA== dependencies: - "@abp/datatables.net" "~8.3.0-rc.3" + "@abp/datatables.net" "~8.3.0" datatables.net-bs5 "^2.0.8" -"@abp/datatables.net@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-8.3.0-rc.3.tgz#933ade7c61d3dfb61aa9278eb948e7756013a61f" - integrity sha512-MjSWhmMilHAKb4HmCLQOXesuFWvguIxhpKRAfSfweIiaOtgaPBh4KR8PSGxZgC0fImQYjWSfHQP4QkLAd5xasA== +"@abp/datatables.net@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-8.3.0.tgz#ff697758ce9309ba8311f23aec921c4722588c8b" + integrity sha512-4dIdv7eN1tVouOUrlF+MIdg8zQpecyH61waqLgy1q5jMZQivrTSFZ7UWMG3WVOAYjw5zSUZHZPbzA+ttnaOPkg== dependencies: - "@abp/jquery" "~8.3.0-rc.3" + "@abp/jquery" "~8.3.0" datatables.net "^2.0.8" -"@abp/font-awesome@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-8.3.0-rc.3.tgz#efa785200433025725e6dcd48c8b6b538938681d" - integrity sha512-DRjSDWhTWmL0I2A7KcFOxQFaLftxg0Rvcss0138j/mGpt64+unzcYo6YRCEga/k6ygxc7dYnhFmQf2tli44toQ== +"@abp/font-awesome@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-8.3.0.tgz#9e4e9adc08dfca52c0a07d1608c5e5662675a4c9" + integrity sha512-NRxvM/dzvQC2Cj/F5i07XB/i6IVTmXcO9sOq6TWosWib0wGaPxRbCSjy8QUAYSD1QYaVQ30XMb3XXImaMGyd8A== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" "@fortawesome/fontawesome-free" "^6.5.2" -"@abp/jquery-form@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-8.3.0-rc.3.tgz#fbb1ceb0e4092243cb018e1d7aa1ca86371fa98c" - integrity sha512-n7Tu4b2UhaRMcQCmzcBMiEYnaaR/OmA7LZfOcg4YP202xnLj29w4R/sRbQjr0w9lvPhue9rrSXaEf43UrV8eyg== +"@abp/jquery-form@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-8.3.0.tgz#fa2ad2fedbe3d3528ee94cbbd4f94d48f0cb5e4d" + integrity sha512-olP9FmpNVTbOIewsVua0moHVYXw4Sl3chFbvTDLG6vRBohLSjllUXfgY3UEIVWR1PCqnAg+iEJZl9NHB9iOLBg== dependencies: - "@abp/jquery" "~8.3.0-rc.3" + "@abp/jquery" "~8.3.0" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-8.3.0-rc.3.tgz#bcc8dad54b880134519f642b6a1a151584889bf2" - integrity sha512-4pfc7vYh5oMZc4+AJRwN7CQmb4ZK29POyuL9RjuBCQbvYCLcru0M5cQTz3wt9jLeAXn402lbwxh1cLioZfw8SQ== +"@abp/jquery-validation-unobtrusive@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-8.3.0.tgz#0992cdd33170df83c79aa3371038c0b30e451521" + integrity sha512-9hidjq8x8sTnP5O3K2b2x9NpxvPd9WB03ENR6OfvM89kfSmQapSvBZTlCu80YK9NaQJ6MLQRLYOCuc3GHcj3EQ== dependencies: - "@abp/jquery-validation" "~8.3.0-rc.3" + "@abp/jquery-validation" "~8.3.0" jquery-validation-unobtrusive "^4.0.0" -"@abp/jquery-validation@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-8.3.0-rc.3.tgz#d71e59dfa793070b780bb8078f4cd12b8217f701" - integrity sha512-/OEh5PVKfA4BB7YVmFFBa+GKDR4jzNOkRBUnzplxxcegrXlbbjuxC7VcnsLzXQJ1c2aUO6a1y8L7MsPMjaXVrg== +"@abp/jquery-validation@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-8.3.0.tgz#bd6a72c6d86f116abe3b5d2adf3752bdbbcca887" + integrity sha512-6l5BZSa3N0Fou6Se7MfUSnI2dD4SYhZ2V988bgPJQ6p37XBOZ2OAj7LEIf5FSjtUzXjao/6/vqjkPNYreNikig== dependencies: - "@abp/jquery" "~8.3.0-rc.3" + "@abp/jquery" "~8.3.0" jquery-validation "^1.20.1" -"@abp/jquery@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-8.3.0-rc.3.tgz#7350b8675c7199b143bad86f46a50c629568605b" - integrity sha512-GkjKCrQmqqeu3xvpWTZxFa1VVRKPhmiutO2syuPi2dReDBhMV6h6EZZeu5y8lHLvL1HTEEANFFFXJGUna07FRQ== +"@abp/jquery@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-8.3.0.tgz#9be5ef2f769680226e6a1a981026590caf3b57ef" + integrity sha512-GsFY+n3EtS6B0pAoKd+xMnt5Dzi5bHvIbhLgDgfQfOBzAy3twGRWsPQ3nkuXXm8TppwujMNowU1oiLKPPm0AOA== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" jquery "~3.7.1" -"@abp/lodash@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-8.3.0-rc.3.tgz#90b1c266a16bd2bdfab22bb635114610738a17ba" - integrity sha512-L4lw6eSOXeXg2IixjdcHHVw1z7Q1wLUJDr8NzlRF51KfEPZ5Lt28IhoJuEfE7y24e6v+q6CL15axPwSQOUIlhw== +"@abp/lodash@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-8.3.0.tgz#f5a0a496c999886f2d6999067bfac2e1f0c3969c" + integrity sha512-BiAsONbKR/RKG3WjRaMWVmhNe1ELEsykVq+ogG1Rhk3kwPbvze3TS8k2p0Lu/RC41/BmDUmJ5abg1pUMwkRT8w== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" lodash "^4.17.21" -"@abp/luxon@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-8.3.0-rc.3.tgz#dc2a024c4b20b59408c41b259fe9b7cc8820bd7f" - integrity sha512-QOpAHiJxzSW+4HClyTspYaMDSUbY4Sz36d4Q7LSKHcwLIuqQ7rRfGEeWctYZYPwHIgK4udhde08Z8xrzl5tZSg== +"@abp/luxon@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-8.3.0.tgz#7dd3f756be1605506e26f7ac76b80cc082a12d07" + integrity sha512-8gdI5BtXkVp0sFg89QVDe8AvgQ7Qfq4JCqz2PMrKPSATR3H8GD6BCaEYpRp6CNTCjVrQjGZdzKgUyea1D3dHbw== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" luxon "^3.4.4" -"@abp/malihu-custom-scrollbar-plugin@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-8.3.0-rc.3.tgz#4eb53cf29ecf7c613f2d00e5b1bab4d807fd8396" - integrity sha512-NyQ2Qg2PfsDjWZfSwfsESFFkveIMQXFwWiSWgmeolWeFNtETDI1KJ5Nrf//sY+8zpn6ciCQTI5iaklLPPWQSKg== +"@abp/malihu-custom-scrollbar-plugin@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-8.3.0.tgz#c88c132c3402bbb02054ca7d446051950f87a817" + integrity sha512-nd/mb6LJa6fMxal8PGcIjIRIoZ/UHCd01WDC9YI2H4wGCGx0CA0JyHso5oc/OEzJhUL8ujO/vYm9uLb7YahPtA== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/moment@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-8.3.0-rc.3.tgz#8f997de893d8b69f670f99fe0f3f8a8b3ed64451" - integrity sha512-UulCn7Qt6Y1JfXYd+KGsvJZX7uybXVwud+55tE7TnNl7OXmQ6R3yL6uv+5da0iJsZzQa6c3EknmTkLLD53HfRw== +"@abp/moment@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-8.3.0.tgz#8e4f7a523ab76ef9e4cd96a399560bad38d38d1a" + integrity sha512-LywSsKuQ2GN/Btmle6CcTKa811zbvUWdC+RLQA792K9HyBs6LvN0qRRluEQZgplairRgh2pDOg8tdFlUERkv2w== dependencies: moment "^2.30.1" -"@abp/select2@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-8.3.0-rc.3.tgz#621505b7a829b02cfbb146c7b710093b9e6e19f4" - integrity sha512-SV0gTfKbEAgMG/ND6zrc3QF1buByHePrPxoI1lt1ZiSgt5m9V9i6+zDkE20/W/puegINJAU2kJZtm9hCfMtXaQ== +"@abp/select2@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-8.3.0.tgz#ef4742fcd345394767f46180f61c6cabbd0b3867" + integrity sha512-bdLt2+ImxxpiZl4HGbYJpdDROQUT7/Z/+8A+6oJNacq3lNekdvufLYgTMxKru6zTbnd9j3HFKMOTE1eRjb9Xqg== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" select2 "^4.0.13" -"@abp/sweetalert2@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-8.3.0-rc.3.tgz#728978d364fe80dfd3b9cacdee0960e921d404af" - integrity sha512-G3xAKewy7TH2UZgLg+mVhgng5y1RbanVfsA/VTc9DE1XBMG9fpiqywhbny/5qabFhgvNjMKM28Yce23uAsji1A== +"@abp/sweetalert2@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-8.3.0.tgz#a63020d57e44f7940817287d3d9676288bfb85aa" + integrity sha512-ooqPM4Z2v2scnMo5l8ycTmp6t/sW4sCsvIkJ4TyM876WLQJaZxJdOao4RQWuU+dVFr9zg8cOwqLH4q7UEiO6ww== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" sweetalert2 "^11.3.6" -"@abp/timeago@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-8.3.0-rc.3.tgz#dcef20b900e6e95e12fec64b2f1632949f164eb0" - integrity sha512-sFOlpH54PiHosrmRoPZHtC+RVQdjPWetvtFm7svIfCta+dq6Iz70B7/O0oqQabAIERhA9jTf3ubMtBF6FCdmYg== +"@abp/timeago@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-8.3.0.tgz#b3b8d6927bf170f77af848bc1925e5ef6835bd55" + integrity sha512-Dd6xaUoF9Bp4F9WJnTsFBqY+Gt++UR7UmLvBZL/dvthkeNCu2I8MUsmshkUUjY0lIXpjZwefUOuyupQrgHXPMg== dependencies: - "@abp/jquery" "~8.3.0-rc.3" + "@abp/jquery" "~8.3.0" timeago "^1.6.7" -"@abp/toastr@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-8.3.0-rc.3.tgz#5c821d5a049c322f082c37febd5980d2d664292c" - integrity sha512-PdiQMO6UA6yTKGHqztm5Kxu3UzsidnYyQtjojVTYQd87mvgIDIUkoXxXJ2VVgHnRy2FdZW12UfZG4v3/eJHbmg== +"@abp/toastr@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-8.3.0.tgz#e68a2bd8f731e79034594bc2c736f7c66b3df1af" + integrity sha512-aWK/RaX/FmcEKhJLjsw1A0K2c04m2fRJkmo9NwzBCSscy6Msw9IMkqNWLiFDThMU8/qKzq7wq3Vmk/C0IpeAwA== dependencies: - "@abp/jquery" "~8.3.0-rc.3" + "@abp/jquery" "~8.3.0" toastr "^2.1.4" -"@abp/utils@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-8.3.0-rc.3.tgz#00b4acf4a4a2b4c4c1193a737f972d6508cf1831" - integrity sha512-cEPVo2QkLmn4Meo++dkvknfKlNlfQ7kmdWdXon1ZViaf9YFbTEZIYD5ccrdGUvKkVlAyOHG3TcAHesiAOyx1PQ== +"@abp/utils@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-8.3.0.tgz#96ae9266ad4d833fd9d723acef7fc85fabf618d9" + integrity sha512-w/XAqza4Z8wBWRoj5uPNKbd1/bE9L/uUWk6EUSBKmljMRryWQBmaPkb1XgvrOMQIbyyF60tUvvipapQLPVh6hw== dependencies: just-compare "^2.3.0" diff --git a/modules/virtual-file-explorer/app/Volo.Abp.VirtualFileExplorer.DemoApp/package.json b/modules/virtual-file-explorer/app/Volo.Abp.VirtualFileExplorer.DemoApp/package.json index 4bdf0833cb..1579c94398 100644 --- a/modules/virtual-file-explorer/app/Volo.Abp.VirtualFileExplorer.DemoApp/package.json +++ b/modules/virtual-file-explorer/app/Volo.Abp.VirtualFileExplorer.DemoApp/package.json @@ -3,7 +3,7 @@ "version": "1.0.0", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "~8.3.0-rc.3", - "@abp/virtual-file-explorer": "~8.3.0-rc.3" + "@abp/aspnetcore.mvc.ui.theme.basic": "~8.3.0", + "@abp/virtual-file-explorer": "~8.3.0" } } diff --git a/modules/virtual-file-explorer/app/Volo.Abp.VirtualFileExplorer.DemoApp/yarn.lock b/modules/virtual-file-explorer/app/Volo.Abp.VirtualFileExplorer.DemoApp/yarn.lock index e09dc87c82..4d83a17c81 100644 --- a/modules/virtual-file-explorer/app/Volo.Abp.VirtualFileExplorer.DemoApp/yarn.lock +++ b/modules/virtual-file-explorer/app/Volo.Abp.VirtualFileExplorer.DemoApp/yarn.lock @@ -2,221 +2,221 @@ # yarn lockfile v1 -"@abp/aspnetcore.mvc.ui.theme.basic@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-8.3.0-rc.3.tgz#58dc0dc5bb42e7c2bd70c717256332df2efe6d45" - integrity sha512-ba97ROK5RiEtIwOMwwfHuZFAX/iaQ+fR4Tw6cz+SHGkqfrACP4KnO+GwplCCyG/Y/ZmbX8KTliDEWGKDL4CCqQ== - dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~8.3.0-rc.3" - -"@abp/aspnetcore.mvc.ui.theme.shared@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-8.3.0-rc.3.tgz#804fe763c3b66cbaf7ac8de7aca53a8690f0283c" - integrity sha512-ldiW9rXMMF7iAZpgFg1gDbwZW64/qLjhIyn+IcO7BzpLD6DKCzeQl/M+p7H1h7TC/ZSLEjRfcQs+ubjMI+OFoQ== - dependencies: - "@abp/aspnetcore.mvc.ui" "~8.3.0-rc.3" - "@abp/bootstrap" "~8.3.0-rc.3" - "@abp/bootstrap-datepicker" "~8.3.0-rc.3" - "@abp/bootstrap-daterangepicker" "~8.3.0-rc.3" - "@abp/datatables.net-bs5" "~8.3.0-rc.3" - "@abp/font-awesome" "~8.3.0-rc.3" - "@abp/jquery-form" "~8.3.0-rc.3" - "@abp/jquery-validation-unobtrusive" "~8.3.0-rc.3" - "@abp/lodash" "~8.3.0-rc.3" - "@abp/luxon" "~8.3.0-rc.3" - "@abp/malihu-custom-scrollbar-plugin" "~8.3.0-rc.3" - "@abp/moment" "~8.3.0-rc.3" - "@abp/select2" "~8.3.0-rc.3" - "@abp/sweetalert2" "~8.3.0-rc.3" - "@abp/timeago" "~8.3.0-rc.3" - "@abp/toastr" "~8.3.0-rc.3" - -"@abp/aspnetcore.mvc.ui@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-8.3.0-rc.3.tgz#e1e68f10e1715af44505da2d80b12fdf52d7de8c" - integrity sha512-0ld0/fXTj2mJZ12W1nn87K1Beqg+zbIGSR8lxWXG56jVArxasSqL3CiOQg+lLMUnWq1kwtTuoxZZVA76aL+nJA== +"@abp/aspnetcore.mvc.ui.theme.basic@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-8.3.0.tgz#a2d17eb5da2c3abfad4bcc842cfcda0e58a130a4" + integrity sha512-T2dg7WlvNSrwTCfy5wk4gqiJ/15kIjMGM4wLXIJcMYn60yGY/YeX6Q4A3R/qJzfl4JdgW5rt3GpdKv86y/ADXg== + dependencies: + "@abp/aspnetcore.mvc.ui.theme.shared" "~8.3.0" + +"@abp/aspnetcore.mvc.ui.theme.shared@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-8.3.0.tgz#5d6bb5181a62770e9cb967980b77e75c115c5ed7" + integrity sha512-o/0eh8jLS+YJiseTKzzioUz0vNnMFzyoz+mkyA4PlO1gqw2JFhzPhTBZ3cuyV9QlxUfEA8dWAkqAUX6vqiHwkw== + dependencies: + "@abp/aspnetcore.mvc.ui" "~8.3.0" + "@abp/bootstrap" "~8.3.0" + "@abp/bootstrap-datepicker" "~8.3.0" + "@abp/bootstrap-daterangepicker" "~8.3.0" + "@abp/datatables.net-bs5" "~8.3.0" + "@abp/font-awesome" "~8.3.0" + "@abp/jquery-form" "~8.3.0" + "@abp/jquery-validation-unobtrusive" "~8.3.0" + "@abp/lodash" "~8.3.0" + "@abp/luxon" "~8.3.0" + "@abp/malihu-custom-scrollbar-plugin" "~8.3.0" + "@abp/moment" "~8.3.0" + "@abp/select2" "~8.3.0" + "@abp/sweetalert2" "~8.3.0" + "@abp/timeago" "~8.3.0" + "@abp/toastr" "~8.3.0" + +"@abp/aspnetcore.mvc.ui@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-8.3.0.tgz#d7ba0539bfcc6661a347dea7f952489010b3e816" + integrity sha512-OxgZhLKiXGFYYpNJ5O/IbhinsniiBPv9586e+1Soar0GckCMIIegJxnJb1Bo1O75blrcK2cIU6LqjRT1FXt2Lw== dependencies: ansi-colors "^4.1.3" -"@abp/bootstrap-datepicker@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-8.3.0-rc.3.tgz#319054e54532085031a80d5859dec1a56b7548ac" - integrity sha512-fWKry7HLQ14Vv3GiF/bqge4ySN/9GkK/kZRrdeopdzvmOKTPCHSJ8DNrXAmd+WVHbcqdQ6uovWBOfMufCLohJw== +"@abp/bootstrap-datepicker@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-8.3.0.tgz#8c1bf9efec37b671d8f28b8b1e89c1ac66684267" + integrity sha512-KCwMtm7x+cnKPeNMzhjDJUce0stwu4e57ibmvA6sMf1tmj+yB256O4E2hIDDohiT3vP/zV8HVHX6uATlcmGC9w== dependencies: bootstrap-datepicker "^1.10.0" -"@abp/bootstrap-daterangepicker@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-8.3.0-rc.3.tgz#873728e2d6313fae07f1f74a4cf483e50bccfa7f" - integrity sha512-nu2N12ftl/1zA7Fe1lAgZiJnkZKFBNjfsPmy+ykQLKGWIkca14b0UHwUIHEaiI26fD6bBT50/kMRzA7uE3goaA== +"@abp/bootstrap-daterangepicker@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-8.3.0.tgz#2b8ed978333502677916f88cbb3e1d1b1c8a3a17" + integrity sha512-uQSfuCQogl4BujdqvtdAoSE+z32ci8FT5+i3gLfpqbgTaxvY/Kv5NxAUH5/1sjnuAE7SMWO+eVvI3V0pXgQohg== dependencies: bootstrap-daterangepicker "^3.1.0" -"@abp/bootstrap@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-8.3.0-rc.3.tgz#ca01bc3b6c4d5b63cf1bb86472e8df366ff3cf40" - integrity sha512-qSJ5s8k3X4WANgUoEZ289q+UKkStnbAMIEmIh6x93nIZHaGAJsK3oaSNgZ2DbGPhxpMKxhJpCuzF1KrRDtwtUQ== +"@abp/bootstrap@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-8.3.0.tgz#96d6ea7e6ac30f6e34e495a4224f56f7b2a1a7a3" + integrity sha512-5AmdTtakmWhZmHrb7ibvvf+KwF9OGadpAe7Kv9mNEE02K2qkp7Xw4r5o/bgVl7YfLC1FA6GZZXrV2s2t0gjHtg== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" bootstrap "^5.3.3" -"@abp/clipboard@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-8.3.0-rc.3.tgz#73eeba6bebccd0926ee40ba693c4c1e72f559f05" - integrity sha512-NUjh2ML1g9afBZcW0Ulp9/7CEMPH57ukxUwJBC88yd0C+oYC7KVurD7yeLtBrMAMQdfqP0e/lQcxZj69HB9p7g== +"@abp/clipboard@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-8.3.0.tgz#1b171e533f768cf42c8fc0c9c67fac1c636fee8c" + integrity sha512-T0O4OaMxLLYztAxyvEc3onEOpGHB/C8/jDcvJwd7mgpLoi9zXVfHwpnzkx/egfNJMzp49STD6Jc+jACi8Uq+CQ== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" clipboard "^2.0.11" -"@abp/core@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-8.3.0-rc.3.tgz#4031ec2c08a00652bb717c962ddc3aa8b3cf72c9" - integrity sha512-9Y7EcLE+0RLnJyhZlSYCElTjrFz+P7uXbyl+1UyuyY+dxyAdZhZ+1WPHFSr0f8KlJrxkjnsPj+gR4e48u15FDw== +"@abp/core@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-8.3.0.tgz#3a68f5a9549efcc3e13500e301f2576751b51445" + integrity sha512-zrxnZi4qij/Y4AZWaXuPqs3Dd7gBtU/onX7FkYxLgQDxYBfx+84QAnPRNRFKMWaD/wKbTUB0wA66U3t2aiQX9Q== dependencies: - "@abp/utils" "~8.3.0-rc.3" + "@abp/utils" "~8.3.0" -"@abp/datatables.net-bs5@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-8.3.0-rc.3.tgz#da22fbf7fe23671bfa20e83c9490e7bbe169b4aa" - integrity sha512-36VOOd/1461LZN11awaU5xbC3oYYJFebNFBeFZijsc8LtVKCwgMWZ8K3sCOolBVEyltDzKntw+w0NwhlWjd8tA== +"@abp/datatables.net-bs5@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-8.3.0.tgz#21822ae4912a561afe9112925185aece03fcd0eb" + integrity sha512-GOGYSSHp3iPUDFRX2Y3C0wkiCOJDuYuK/zUSzQLNpOvBMZO+I/oWBcZM+qkVowIzsoRlAGV9+CVV2B/B05qidA== dependencies: - "@abp/datatables.net" "~8.3.0-rc.3" + "@abp/datatables.net" "~8.3.0" datatables.net-bs5 "^2.0.8" -"@abp/datatables.net@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-8.3.0-rc.3.tgz#933ade7c61d3dfb61aa9278eb948e7756013a61f" - integrity sha512-MjSWhmMilHAKb4HmCLQOXesuFWvguIxhpKRAfSfweIiaOtgaPBh4KR8PSGxZgC0fImQYjWSfHQP4QkLAd5xasA== +"@abp/datatables.net@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-8.3.0.tgz#ff697758ce9309ba8311f23aec921c4722588c8b" + integrity sha512-4dIdv7eN1tVouOUrlF+MIdg8zQpecyH61waqLgy1q5jMZQivrTSFZ7UWMG3WVOAYjw5zSUZHZPbzA+ttnaOPkg== dependencies: - "@abp/jquery" "~8.3.0-rc.3" + "@abp/jquery" "~8.3.0" datatables.net "^2.0.8" -"@abp/font-awesome@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-8.3.0-rc.3.tgz#efa785200433025725e6dcd48c8b6b538938681d" - integrity sha512-DRjSDWhTWmL0I2A7KcFOxQFaLftxg0Rvcss0138j/mGpt64+unzcYo6YRCEga/k6ygxc7dYnhFmQf2tli44toQ== +"@abp/font-awesome@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-8.3.0.tgz#9e4e9adc08dfca52c0a07d1608c5e5662675a4c9" + integrity sha512-NRxvM/dzvQC2Cj/F5i07XB/i6IVTmXcO9sOq6TWosWib0wGaPxRbCSjy8QUAYSD1QYaVQ30XMb3XXImaMGyd8A== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" "@fortawesome/fontawesome-free" "^6.5.2" -"@abp/jquery-form@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-8.3.0-rc.3.tgz#fbb1ceb0e4092243cb018e1d7aa1ca86371fa98c" - integrity sha512-n7Tu4b2UhaRMcQCmzcBMiEYnaaR/OmA7LZfOcg4YP202xnLj29w4R/sRbQjr0w9lvPhue9rrSXaEf43UrV8eyg== +"@abp/jquery-form@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-8.3.0.tgz#fa2ad2fedbe3d3528ee94cbbd4f94d48f0cb5e4d" + integrity sha512-olP9FmpNVTbOIewsVua0moHVYXw4Sl3chFbvTDLG6vRBohLSjllUXfgY3UEIVWR1PCqnAg+iEJZl9NHB9iOLBg== dependencies: - "@abp/jquery" "~8.3.0-rc.3" + "@abp/jquery" "~8.3.0" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-8.3.0-rc.3.tgz#bcc8dad54b880134519f642b6a1a151584889bf2" - integrity sha512-4pfc7vYh5oMZc4+AJRwN7CQmb4ZK29POyuL9RjuBCQbvYCLcru0M5cQTz3wt9jLeAXn402lbwxh1cLioZfw8SQ== +"@abp/jquery-validation-unobtrusive@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-8.3.0.tgz#0992cdd33170df83c79aa3371038c0b30e451521" + integrity sha512-9hidjq8x8sTnP5O3K2b2x9NpxvPd9WB03ENR6OfvM89kfSmQapSvBZTlCu80YK9NaQJ6MLQRLYOCuc3GHcj3EQ== dependencies: - "@abp/jquery-validation" "~8.3.0-rc.3" + "@abp/jquery-validation" "~8.3.0" jquery-validation-unobtrusive "^4.0.0" -"@abp/jquery-validation@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-8.3.0-rc.3.tgz#d71e59dfa793070b780bb8078f4cd12b8217f701" - integrity sha512-/OEh5PVKfA4BB7YVmFFBa+GKDR4jzNOkRBUnzplxxcegrXlbbjuxC7VcnsLzXQJ1c2aUO6a1y8L7MsPMjaXVrg== +"@abp/jquery-validation@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-8.3.0.tgz#bd6a72c6d86f116abe3b5d2adf3752bdbbcca887" + integrity sha512-6l5BZSa3N0Fou6Se7MfUSnI2dD4SYhZ2V988bgPJQ6p37XBOZ2OAj7LEIf5FSjtUzXjao/6/vqjkPNYreNikig== dependencies: - "@abp/jquery" "~8.3.0-rc.3" + "@abp/jquery" "~8.3.0" jquery-validation "^1.20.1" -"@abp/jquery@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-8.3.0-rc.3.tgz#7350b8675c7199b143bad86f46a50c629568605b" - integrity sha512-GkjKCrQmqqeu3xvpWTZxFa1VVRKPhmiutO2syuPi2dReDBhMV6h6EZZeu5y8lHLvL1HTEEANFFFXJGUna07FRQ== +"@abp/jquery@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-8.3.0.tgz#9be5ef2f769680226e6a1a981026590caf3b57ef" + integrity sha512-GsFY+n3EtS6B0pAoKd+xMnt5Dzi5bHvIbhLgDgfQfOBzAy3twGRWsPQ3nkuXXm8TppwujMNowU1oiLKPPm0AOA== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" jquery "~3.7.1" -"@abp/lodash@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-8.3.0-rc.3.tgz#90b1c266a16bd2bdfab22bb635114610738a17ba" - integrity sha512-L4lw6eSOXeXg2IixjdcHHVw1z7Q1wLUJDr8NzlRF51KfEPZ5Lt28IhoJuEfE7y24e6v+q6CL15axPwSQOUIlhw== +"@abp/lodash@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-8.3.0.tgz#f5a0a496c999886f2d6999067bfac2e1f0c3969c" + integrity sha512-BiAsONbKR/RKG3WjRaMWVmhNe1ELEsykVq+ogG1Rhk3kwPbvze3TS8k2p0Lu/RC41/BmDUmJ5abg1pUMwkRT8w== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" lodash "^4.17.21" -"@abp/luxon@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-8.3.0-rc.3.tgz#dc2a024c4b20b59408c41b259fe9b7cc8820bd7f" - integrity sha512-QOpAHiJxzSW+4HClyTspYaMDSUbY4Sz36d4Q7LSKHcwLIuqQ7rRfGEeWctYZYPwHIgK4udhde08Z8xrzl5tZSg== +"@abp/luxon@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-8.3.0.tgz#7dd3f756be1605506e26f7ac76b80cc082a12d07" + integrity sha512-8gdI5BtXkVp0sFg89QVDe8AvgQ7Qfq4JCqz2PMrKPSATR3H8GD6BCaEYpRp6CNTCjVrQjGZdzKgUyea1D3dHbw== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" luxon "^3.4.4" -"@abp/malihu-custom-scrollbar-plugin@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-8.3.0-rc.3.tgz#4eb53cf29ecf7c613f2d00e5b1bab4d807fd8396" - integrity sha512-NyQ2Qg2PfsDjWZfSwfsESFFkveIMQXFwWiSWgmeolWeFNtETDI1KJ5Nrf//sY+8zpn6ciCQTI5iaklLPPWQSKg== +"@abp/malihu-custom-scrollbar-plugin@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-8.3.0.tgz#c88c132c3402bbb02054ca7d446051950f87a817" + integrity sha512-nd/mb6LJa6fMxal8PGcIjIRIoZ/UHCd01WDC9YI2H4wGCGx0CA0JyHso5oc/OEzJhUL8ujO/vYm9uLb7YahPtA== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/moment@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-8.3.0-rc.3.tgz#8f997de893d8b69f670f99fe0f3f8a8b3ed64451" - integrity sha512-UulCn7Qt6Y1JfXYd+KGsvJZX7uybXVwud+55tE7TnNl7OXmQ6R3yL6uv+5da0iJsZzQa6c3EknmTkLLD53HfRw== +"@abp/moment@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-8.3.0.tgz#8e4f7a523ab76ef9e4cd96a399560bad38d38d1a" + integrity sha512-LywSsKuQ2GN/Btmle6CcTKa811zbvUWdC+RLQA792K9HyBs6LvN0qRRluEQZgplairRgh2pDOg8tdFlUERkv2w== dependencies: moment "^2.30.1" -"@abp/prismjs@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-8.3.0-rc.3.tgz#9a78f0339f0b20591990f585497e7f5e585828d8" - integrity sha512-IaPkxDQeB9NhFGRh7jEmRTdLcNcCEdwdEELzZpYgQIQ4EOA/bq9jbYa9rD9wAYXRE6/yliQLTzmOzori4ddrXw== +"@abp/prismjs@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-8.3.0.tgz#0c87c63294d1452ed7152083d2fb6e70aa3aeae6" + integrity sha512-3wpwbqqlGRfQSLcBP+Qb2TKOoVGZVYYwOP6dP3So9ev8J5gFMDEizH9zLwRVHYrrsZZP8/etYnyZ0hn7ewuI5Q== dependencies: - "@abp/clipboard" "~8.3.0-rc.3" - "@abp/core" "~8.3.0-rc.3" + "@abp/clipboard" "~8.3.0" + "@abp/core" "~8.3.0" prismjs "^1.29.0" -"@abp/select2@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-8.3.0-rc.3.tgz#621505b7a829b02cfbb146c7b710093b9e6e19f4" - integrity sha512-SV0gTfKbEAgMG/ND6zrc3QF1buByHePrPxoI1lt1ZiSgt5m9V9i6+zDkE20/W/puegINJAU2kJZtm9hCfMtXaQ== +"@abp/select2@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-8.3.0.tgz#ef4742fcd345394767f46180f61c6cabbd0b3867" + integrity sha512-bdLt2+ImxxpiZl4HGbYJpdDROQUT7/Z/+8A+6oJNacq3lNekdvufLYgTMxKru6zTbnd9j3HFKMOTE1eRjb9Xqg== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" select2 "^4.0.13" -"@abp/sweetalert2@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-8.3.0-rc.3.tgz#728978d364fe80dfd3b9cacdee0960e921d404af" - integrity sha512-G3xAKewy7TH2UZgLg+mVhgng5y1RbanVfsA/VTc9DE1XBMG9fpiqywhbny/5qabFhgvNjMKM28Yce23uAsji1A== +"@abp/sweetalert2@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-8.3.0.tgz#a63020d57e44f7940817287d3d9676288bfb85aa" + integrity sha512-ooqPM4Z2v2scnMo5l8ycTmp6t/sW4sCsvIkJ4TyM876WLQJaZxJdOao4RQWuU+dVFr9zg8cOwqLH4q7UEiO6ww== dependencies: - "@abp/core" "~8.3.0-rc.3" + "@abp/core" "~8.3.0" sweetalert2 "^11.3.6" -"@abp/timeago@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-8.3.0-rc.3.tgz#dcef20b900e6e95e12fec64b2f1632949f164eb0" - integrity sha512-sFOlpH54PiHosrmRoPZHtC+RVQdjPWetvtFm7svIfCta+dq6Iz70B7/O0oqQabAIERhA9jTf3ubMtBF6FCdmYg== +"@abp/timeago@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-8.3.0.tgz#b3b8d6927bf170f77af848bc1925e5ef6835bd55" + integrity sha512-Dd6xaUoF9Bp4F9WJnTsFBqY+Gt++UR7UmLvBZL/dvthkeNCu2I8MUsmshkUUjY0lIXpjZwefUOuyupQrgHXPMg== dependencies: - "@abp/jquery" "~8.3.0-rc.3" + "@abp/jquery" "~8.3.0" timeago "^1.6.7" -"@abp/toastr@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-8.3.0-rc.3.tgz#5c821d5a049c322f082c37febd5980d2d664292c" - integrity sha512-PdiQMO6UA6yTKGHqztm5Kxu3UzsidnYyQtjojVTYQd87mvgIDIUkoXxXJ2VVgHnRy2FdZW12UfZG4v3/eJHbmg== +"@abp/toastr@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-8.3.0.tgz#e68a2bd8f731e79034594bc2c736f7c66b3df1af" + integrity sha512-aWK/RaX/FmcEKhJLjsw1A0K2c04m2fRJkmo9NwzBCSscy6Msw9IMkqNWLiFDThMU8/qKzq7wq3Vmk/C0IpeAwA== dependencies: - "@abp/jquery" "~8.3.0-rc.3" + "@abp/jquery" "~8.3.0" toastr "^2.1.4" -"@abp/utils@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-8.3.0-rc.3.tgz#00b4acf4a4a2b4c4c1193a737f972d6508cf1831" - integrity sha512-cEPVo2QkLmn4Meo++dkvknfKlNlfQ7kmdWdXon1ZViaf9YFbTEZIYD5ccrdGUvKkVlAyOHG3TcAHesiAOyx1PQ== +"@abp/utils@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-8.3.0.tgz#96ae9266ad4d833fd9d723acef7fc85fabf618d9" + integrity sha512-w/XAqza4Z8wBWRoj5uPNKbd1/bE9L/uUWk6EUSBKmljMRryWQBmaPkb1XgvrOMQIbyyF60tUvvipapQLPVh6hw== dependencies: just-compare "^2.3.0" -"@abp/virtual-file-explorer@~8.3.0-rc.3": - version "8.3.0-rc.3" - resolved "https://registry.yarnpkg.com/@abp/virtual-file-explorer/-/virtual-file-explorer-8.3.0-rc.3.tgz#c9da03db01969b733c49960e7eee0a39479a108e" - integrity sha512-wlW07CnEDiHB/WbvS42HSstVpgYOYJb7wToeIX/06rfAnvvbJx8f97/hCvCbfmD+dM5bFr7QzVOAIH1IMYH/FQ== +"@abp/virtual-file-explorer@~8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@abp/virtual-file-explorer/-/virtual-file-explorer-8.3.0.tgz#44572a5251274db27e740c627d6f6169bb54d1fb" + integrity sha512-UEMeSOfpLTwEhFvmDd8+/CoBslC3n15w51Fnmz/RH007Z4M5BQvt//uTNzEV2trOn/MtAL+bf9X+Ij3Qu6JQvg== dependencies: - "@abp/clipboard" "~8.3.0-rc.3" - "@abp/prismjs" "~8.3.0-rc.3" + "@abp/clipboard" "~8.3.0" + "@abp/prismjs" "~8.3.0" "@fortawesome/fontawesome-free@^6.5.2": version "6.6.0" diff --git a/npm/lerna.json b/npm/lerna.json index d6116295a3..7ee07a5e0a 100644 --- a/npm/lerna.json +++ b/npm/lerna.json @@ -1,5 +1,5 @@ { - "version": "8.3.0-rc.3", + "version": "8.3.0", "packages": [ "packs/*" ], diff --git a/npm/ng-packs/package.json b/npm/ng-packs/package.json index d0d5e3d9ad..5392dd31a1 100644 --- a/npm/ng-packs/package.json +++ b/npm/ng-packs/package.json @@ -44,8 +44,8 @@ }, "private": true, "devDependencies": { - "@abp/ng.theme.lepton-x": "~3.3.0-rc.3", - "@abp/utils": "~8.3.0-rc.3", + "@abp/ng.theme.lepton-x": "~3.3.0", + "@abp/utils": "~8.3.0", "@angular-devkit/build-angular": "~18.1.0", "@angular-devkit/core": "~18.1.0", "@angular-devkit/schematics": "~18.1.0", diff --git a/npm/ng-packs/packages/account-core/package.json b/npm/ng-packs/packages/account-core/package.json index f01d85aa7c..3ad5145166 100644 --- a/npm/ng-packs/packages/account-core/package.json +++ b/npm/ng-packs/packages/account-core/package.json @@ -1,14 +1,14 @@ { "name": "@abp/ng.account.core", - "version": "8.3.0-rc.3", + "version": "8.3.0", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "dependencies": { - "@abp/ng.core": "~8.3.0-rc.3", - "@abp/ng.theme.shared": "~8.3.0-rc.3", + "@abp/ng.core": "~8.3.0", + "@abp/ng.theme.shared": "~8.3.0", "tslib": "^2.0.0" }, "publishConfig": { diff --git a/npm/ng-packs/packages/account/package.json b/npm/ng-packs/packages/account/package.json index c404ffedec..a8b2ac221d 100644 --- a/npm/ng-packs/packages/account/package.json +++ b/npm/ng-packs/packages/account/package.json @@ -1,14 +1,14 @@ { "name": "@abp/ng.account", - "version": "8.3.0-rc.3", + "version": "8.3.0", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "dependencies": { - "@abp/ng.account.core": "~8.3.0-rc.3", - "@abp/ng.theme.shared": "~8.3.0-rc.3", + "@abp/ng.account.core": "~8.3.0", + "@abp/ng.theme.shared": "~8.3.0", "tslib": "^2.0.0" }, "publishConfig": { diff --git a/npm/ng-packs/packages/components/package.json b/npm/ng-packs/packages/components/package.json index 1e251c50a9..c160b8a7a9 100644 --- a/npm/ng-packs/packages/components/package.json +++ b/npm/ng-packs/packages/components/package.json @@ -1,14 +1,14 @@ { "name": "@abp/ng.components", - "version": "8.3.0-rc.3", + "version": "8.3.0", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "peerDependencies": { - "@abp/ng.core": ">=8.3.0-rc.3", - "@abp/ng.theme.shared": ">=8.3.0-rc.3" + "@abp/ng.core": ">=8.3.0", + "@abp/ng.theme.shared": ">=8.3.0" }, "dependencies": { "chart.js": "^3.5.1", diff --git a/npm/ng-packs/packages/core/package.json b/npm/ng-packs/packages/core/package.json index 6cd072b679..d359ae4e3b 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": "8.3.0-rc.3", + "version": "8.3.0", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "dependencies": { - "@abp/utils": "~8.3.0-rc.3", + "@abp/utils": "~8.3.0", "just-clone": "^6.0.0", "just-compare": "^2.0.0", "ts-toolbelt": "^9.0.0", diff --git a/npm/ng-packs/packages/feature-management/package.json b/npm/ng-packs/packages/feature-management/package.json index 687f0f1953..c0eb03d2c0 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": "8.3.0-rc.3", + "version": "8.3.0", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "dependencies": { - "@abp/ng.theme.shared": "~8.3.0-rc.3", + "@abp/ng.theme.shared": "~8.3.0", "tslib": "^2.0.0" }, "publishConfig": { diff --git a/npm/ng-packs/packages/generators/package.json b/npm/ng-packs/packages/generators/package.json index 4b48551668..28b79e08e7 100644 --- a/npm/ng-packs/packages/generators/package.json +++ b/npm/ng-packs/packages/generators/package.json @@ -1,6 +1,6 @@ { "name": "@abp/nx.generators", - "version": "8.3.0-rc.3", + "version": "8.3.0", "homepage": "https://abp.io", "generators": "./generators.json", "type": "commonjs", diff --git a/npm/ng-packs/packages/identity/package.json b/npm/ng-packs/packages/identity/package.json index 3eb308c534..cd2617105d 100644 --- a/npm/ng-packs/packages/identity/package.json +++ b/npm/ng-packs/packages/identity/package.json @@ -1,15 +1,15 @@ { "name": "@abp/ng.identity", - "version": "8.3.0-rc.3", + "version": "8.3.0", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "dependencies": { - "@abp/ng.components": "~8.3.0-rc.3", - "@abp/ng.permission-management": "~8.3.0-rc.3", - "@abp/ng.theme.shared": "~8.3.0-rc.3", + "@abp/ng.components": "~8.3.0", + "@abp/ng.permission-management": "~8.3.0", + "@abp/ng.theme.shared": "~8.3.0", "tslib": "^2.0.0" }, "publishConfig": { diff --git a/npm/ng-packs/packages/oauth/package.json b/npm/ng-packs/packages/oauth/package.json index bd0ef7871c..89b8ed1ad7 100644 --- a/npm/ng-packs/packages/oauth/package.json +++ b/npm/ng-packs/packages/oauth/package.json @@ -1,14 +1,14 @@ { "name": "@abp/ng.oauth", - "version": "8.3.0-rc.3", + "version": "8.3.0", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "dependencies": { - "@abp/ng.core": "~8.3.0-rc.3", - "@abp/utils": "~8.3.0-rc.3", + "@abp/ng.core": "~8.3.0", + "@abp/utils": "~8.3.0", "angular-oauth2-oidc": "^17.0.0", "just-clone": "^6.0.0", "just-compare": "^2.0.0", diff --git a/npm/ng-packs/packages/permission-management/package.json b/npm/ng-packs/packages/permission-management/package.json index a1c32a36b1..862c04870e 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": "8.3.0-rc.3", + "version": "8.3.0", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "dependencies": { - "@abp/ng.theme.shared": "~8.3.0-rc.3", + "@abp/ng.theme.shared": "~8.3.0", "tslib": "^2.0.0" }, "publishConfig": { diff --git a/npm/ng-packs/packages/schematics/package.json b/npm/ng-packs/packages/schematics/package.json index a88440c715..edc2aadf71 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": "8.3.0-rc.3", + "version": "8.3.0", "author": "", "schematics": "./collection.json", "dependencies": { diff --git a/npm/ng-packs/packages/setting-management/package.json b/npm/ng-packs/packages/setting-management/package.json index a11894abd7..2e04e52d72 100644 --- a/npm/ng-packs/packages/setting-management/package.json +++ b/npm/ng-packs/packages/setting-management/package.json @@ -1,14 +1,14 @@ { "name": "@abp/ng.setting-management", - "version": "8.3.0-rc.3", + "version": "8.3.0", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "dependencies": { - "@abp/ng.components": "~8.3.0-rc.3", - "@abp/ng.theme.shared": "~8.3.0-rc.3", + "@abp/ng.components": "~8.3.0", + "@abp/ng.theme.shared": "~8.3.0", "tslib": "^2.0.0" }, "publishConfig": { diff --git a/npm/ng-packs/packages/tenant-management/package.json b/npm/ng-packs/packages/tenant-management/package.json index 40bca8f9a6..d4923aac88 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": "8.3.0-rc.3", + "version": "8.3.0", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "dependencies": { - "@abp/ng.feature-management": "~8.3.0-rc.3", - "@abp/ng.theme.shared": "~8.3.0-rc.3", + "@abp/ng.feature-management": "~8.3.0", + "@abp/ng.theme.shared": "~8.3.0", "tslib": "^2.0.0" }, "publishConfig": { diff --git a/npm/ng-packs/packages/theme-basic/package.json b/npm/ng-packs/packages/theme-basic/package.json index 5cdbba79f2..4685fdff0f 100644 --- a/npm/ng-packs/packages/theme-basic/package.json +++ b/npm/ng-packs/packages/theme-basic/package.json @@ -1,14 +1,14 @@ { "name": "@abp/ng.theme.basic", - "version": "8.3.0-rc.3", + "version": "8.3.0", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "dependencies": { - "@abp/ng.account.core": "~8.3.0-rc.3", - "@abp/ng.theme.shared": "~8.3.0-rc.3", + "@abp/ng.account.core": "~8.3.0", + "@abp/ng.theme.shared": "~8.3.0", "tslib": "^2.0.0" }, "publishConfig": { diff --git a/npm/ng-packs/packages/theme-shared/package.json b/npm/ng-packs/packages/theme-shared/package.json index 6df5fd269a..73ae5ab3fa 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": "8.3.0-rc.3", + "version": "8.3.0", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "dependencies": { - "@abp/ng.core": "~8.3.0-rc.3", + "@abp/ng.core": "~8.3.0", "@fortawesome/fontawesome-free": "^5.15.4", "@ng-bootstrap/ng-bootstrap": "~16.0.0", "@ngx-validate/core": "^0.2.0", diff --git a/npm/packs/anchor-js/package.json b/npm/packs/anchor-js/package.json index ee7c57b982..fd89d404e0 100644 --- a/npm/packs/anchor-js/package.json +++ b/npm/packs/anchor-js/package.json @@ -1,11 +1,11 @@ { - "version": "8.3.0-rc.3", + "version": "8.3.0", "name": "@abp/anchor-js", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~8.3.0-rc.3", + "@abp/core": "~8.3.0", "anchor-js": "^5.0.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/aspnetcore.components.server.basictheme/package.json b/npm/packs/aspnetcore.components.server.basictheme/package.json index cd468cecbf..0012af2931 100644 --- a/npm/packs/aspnetcore.components.server.basictheme/package.json +++ b/npm/packs/aspnetcore.components.server.basictheme/package.json @@ -1,11 +1,11 @@ { - "version": "8.3.0-rc.3", + "version": "8.3.0", "name": "@abp/aspnetcore.components.server.basictheme", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/aspnetcore.components.server.theming": "~8.3.0-rc.3" + "@abp/aspnetcore.components.server.theming": "~8.3.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", "homepage": "https://abp.io", diff --git a/npm/packs/aspnetcore.components.server.theming/package.json b/npm/packs/aspnetcore.components.server.theming/package.json index c3e280d3a2..33703c8b11 100644 --- a/npm/packs/aspnetcore.components.server.theming/package.json +++ b/npm/packs/aspnetcore.components.server.theming/package.json @@ -1,12 +1,12 @@ { - "version": "8.3.0-rc.3", + "version": "8.3.0", "name": "@abp/aspnetcore.components.server.theming", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/bootstrap": "~8.3.0-rc.3", - "@abp/font-awesome": "~8.3.0-rc.3" + "@abp/bootstrap": "~8.3.0", + "@abp/font-awesome": "~8.3.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", "homepage": "https://abp.io", diff --git a/npm/packs/aspnetcore.mvc.ui.theme.basic/package.json b/npm/packs/aspnetcore.mvc.ui.theme.basic/package.json index 90c087475a..3f07ddc20a 100644 --- a/npm/packs/aspnetcore.mvc.ui.theme.basic/package.json +++ b/npm/packs/aspnetcore.mvc.ui.theme.basic/package.json @@ -1,5 +1,5 @@ { - "version": "8.3.0-rc.3", + "version": "8.3.0", "name": "@abp/aspnetcore.mvc.ui.theme.basic", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.shared": "~8.3.0-rc.3" + "@abp/aspnetcore.mvc.ui.theme.shared": "~8.3.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", "homepage": "https://abp.io", diff --git a/npm/packs/aspnetcore.mvc.ui.theme.shared/package.json b/npm/packs/aspnetcore.mvc.ui.theme.shared/package.json index cf2c054fc9..a413a66478 100644 --- a/npm/packs/aspnetcore.mvc.ui.theme.shared/package.json +++ b/npm/packs/aspnetcore.mvc.ui.theme.shared/package.json @@ -1,5 +1,5 @@ { - "version": "8.3.0-rc.3", + "version": "8.3.0", "name": "@abp/aspnetcore.mvc.ui.theme.shared", "repository": { "type": "git", @@ -10,22 +10,22 @@ "access": "public" }, "dependencies": { - "@abp/aspnetcore.mvc.ui": "~8.3.0-rc.3", - "@abp/bootstrap": "~8.3.0-rc.3", - "@abp/bootstrap-datepicker": "~8.3.0-rc.3", - "@abp/bootstrap-daterangepicker": "~8.3.0-rc.3", - "@abp/datatables.net-bs5": "~8.3.0-rc.3", - "@abp/font-awesome": "~8.3.0-rc.3", - "@abp/jquery-form": "~8.3.0-rc.3", - "@abp/jquery-validation-unobtrusive": "~8.3.0-rc.3", - "@abp/lodash": "~8.3.0-rc.3", - "@abp/luxon": "~8.3.0-rc.3", - "@abp/malihu-custom-scrollbar-plugin": "~8.3.0-rc.3", - "@abp/moment": "~8.3.0-rc.3", - "@abp/select2": "~8.3.0-rc.3", - "@abp/sweetalert2": "~8.3.0-rc.3", - "@abp/timeago": "~8.3.0-rc.3", - "@abp/toastr": "~8.3.0-rc.3" + "@abp/aspnetcore.mvc.ui": "~8.3.0", + "@abp/bootstrap": "~8.3.0", + "@abp/bootstrap-datepicker": "~8.3.0", + "@abp/bootstrap-daterangepicker": "~8.3.0", + "@abp/datatables.net-bs5": "~8.3.0", + "@abp/font-awesome": "~8.3.0", + "@abp/jquery-form": "~8.3.0", + "@abp/jquery-validation-unobtrusive": "~8.3.0", + "@abp/lodash": "~8.3.0", + "@abp/luxon": "~8.3.0", + "@abp/malihu-custom-scrollbar-plugin": "~8.3.0", + "@abp/moment": "~8.3.0", + "@abp/select2": "~8.3.0", + "@abp/sweetalert2": "~8.3.0", + "@abp/timeago": "~8.3.0", + "@abp/toastr": "~8.3.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", "homepage": "https://abp.io", diff --git a/npm/packs/aspnetcore.mvc.ui/package-lock.json b/npm/packs/aspnetcore.mvc.ui/package-lock.json index 94df624335..7f2e9dafab 100644 --- a/npm/packs/aspnetcore.mvc.ui/package-lock.json +++ b/npm/packs/aspnetcore.mvc.ui/package-lock.json @@ -1,6 +1,6 @@ { "name": "@abp/aspnetcore.mvc.ui", - "version": "8.3.0-rc.3", + "version": "8.3.0", "lockfileVersion": 1, "requires": true, "packages": { diff --git a/npm/packs/aspnetcore.mvc.ui/package.json b/npm/packs/aspnetcore.mvc.ui/package.json index 65932a0290..65e95b0e54 100644 --- a/npm/packs/aspnetcore.mvc.ui/package.json +++ b/npm/packs/aspnetcore.mvc.ui/package.json @@ -1,5 +1,5 @@ { - "version": "8.3.0-rc.3", + "version": "8.3.0", "name": "@abp/aspnetcore.mvc.ui", "repository": { "type": "git", diff --git a/npm/packs/blogging/package.json b/npm/packs/blogging/package.json index e6133588b4..2ef191542f 100644 --- a/npm/packs/blogging/package.json +++ b/npm/packs/blogging/package.json @@ -1,14 +1,14 @@ { - "version": "8.3.0-rc.3", + "version": "8.3.0", "name": "@abp/blogging", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.shared": "~8.3.0-rc.3", - "@abp/owl.carousel": "~8.3.0-rc.3", - "@abp/prismjs": "~8.3.0-rc.3", - "@abp/tui-editor": "~8.3.0-rc.3" + "@abp/aspnetcore.mvc.ui.theme.shared": "~8.3.0", + "@abp/owl.carousel": "~8.3.0", + "@abp/prismjs": "~8.3.0", + "@abp/tui-editor": "~8.3.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", "homepage": "https://abp.io", diff --git a/npm/packs/bootstrap-datepicker/package.json b/npm/packs/bootstrap-datepicker/package.json index 0056258323..ca23ca04c7 100644 --- a/npm/packs/bootstrap-datepicker/package.json +++ b/npm/packs/bootstrap-datepicker/package.json @@ -1,5 +1,5 @@ { - "version": "8.3.0-rc.3", + "version": "8.3.0", "name": "@abp/bootstrap-datepicker", "repository": { "type": "git", diff --git a/npm/packs/bootstrap-daterangepicker/package.json b/npm/packs/bootstrap-daterangepicker/package.json index 510fab9d4d..4c21c29f88 100644 --- a/npm/packs/bootstrap-daterangepicker/package.json +++ b/npm/packs/bootstrap-daterangepicker/package.json @@ -1,5 +1,5 @@ { - "version": "8.3.0-rc.3", + "version": "8.3.0", "name": "@abp/bootstrap-daterangepicker", "repository": { "type": "git", diff --git a/npm/packs/bootstrap/package.json b/npm/packs/bootstrap/package.json index c452dac38f..3f33c9d6a4 100644 --- a/npm/packs/bootstrap/package.json +++ b/npm/packs/bootstrap/package.json @@ -1,5 +1,5 @@ { - "version": "8.3.0-rc.3", + "version": "8.3.0", "name": "@abp/bootstrap", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/core": "~8.3.0-rc.3", + "@abp/core": "~8.3.0", "bootstrap": "^5.3.3" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/chart.js/package.json b/npm/packs/chart.js/package.json index 28c5592347..540b145fba 100644 --- a/npm/packs/chart.js/package.json +++ b/npm/packs/chart.js/package.json @@ -1,5 +1,5 @@ { - "version": "8.3.0-rc.3", + "version": "8.3.0", "name": "@abp/chart.js", "publishConfig": { "access": "public" diff --git a/npm/packs/clipboard/package.json b/npm/packs/clipboard/package.json index e6f4d53d72..647f1aa46c 100644 --- a/npm/packs/clipboard/package.json +++ b/npm/packs/clipboard/package.json @@ -1,11 +1,11 @@ { - "version": "8.3.0-rc.3", + "version": "8.3.0", "name": "@abp/clipboard", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~8.3.0-rc.3", + "@abp/core": "~8.3.0", "clipboard": "^2.0.11" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/cms-kit.admin/package.json b/npm/packs/cms-kit.admin/package.json index 1ddd2cea7c..80f1fa2736 100644 --- a/npm/packs/cms-kit.admin/package.json +++ b/npm/packs/cms-kit.admin/package.json @@ -1,16 +1,16 @@ { - "version": "8.3.0-rc.3", + "version": "8.3.0", "name": "@abp/cms-kit.admin", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/codemirror": "~8.3.0-rc.3", - "@abp/jstree": "~8.3.0-rc.3", - "@abp/markdown-it": "~8.3.0-rc.3", - "@abp/slugify": "~8.3.0-rc.3", - "@abp/tui-editor": "~8.3.0-rc.3", - "@abp/uppy": "~8.3.0-rc.3" + "@abp/codemirror": "~8.3.0", + "@abp/jstree": "~8.3.0", + "@abp/markdown-it": "~8.3.0", + "@abp/slugify": "~8.3.0", + "@abp/tui-editor": "~8.3.0", + "@abp/uppy": "~8.3.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", "homepage": "https://abp.io", diff --git a/npm/packs/cms-kit.public/package.json b/npm/packs/cms-kit.public/package.json index 11bd82e722..bd1e2c0bd5 100644 --- a/npm/packs/cms-kit.public/package.json +++ b/npm/packs/cms-kit.public/package.json @@ -1,12 +1,12 @@ { - "version": "8.3.0-rc.3", + "version": "8.3.0", "name": "@abp/cms-kit.public", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/highlight.js": "~8.3.0-rc.3", - "@abp/star-rating-svg": "~8.3.0-rc.3" + "@abp/highlight.js": "~8.3.0", + "@abp/star-rating-svg": "~8.3.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", "homepage": "https://abp.io", diff --git a/npm/packs/cms-kit/package.json b/npm/packs/cms-kit/package.json index 423348338c..4a51bb35a5 100644 --- a/npm/packs/cms-kit/package.json +++ b/npm/packs/cms-kit/package.json @@ -1,12 +1,12 @@ { - "version": "8.3.0-rc.3", + "version": "8.3.0", "name": "@abp/cms-kit", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/cms-kit.admin": "~8.3.0-rc.3", - "@abp/cms-kit.public": "~8.3.0-rc.3" + "@abp/cms-kit.admin": "~8.3.0", + "@abp/cms-kit.public": "~8.3.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", "homepage": "https://abp.io", diff --git a/npm/packs/codemirror/package.json b/npm/packs/codemirror/package.json index a4ac0fd330..a9c78e009a 100644 --- a/npm/packs/codemirror/package.json +++ b/npm/packs/codemirror/package.json @@ -1,11 +1,11 @@ { - "version": "8.3.0-rc.3", + "version": "8.3.0", "name": "@abp/codemirror", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~8.3.0-rc.3", + "@abp/core": "~8.3.0", "codemirror": "^6.0.1" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/core/package.json b/npm/packs/core/package.json index f3241bcc77..2aa9201d27 100644 --- a/npm/packs/core/package.json +++ b/npm/packs/core/package.json @@ -1,5 +1,5 @@ { - "version": "8.3.0-rc.3", + "version": "8.3.0", "name": "@abp/core", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/utils": "~8.3.0-rc.3" + "@abp/utils": "~8.3.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", "homepage": "https://abp.io", diff --git a/npm/packs/cropperjs/package.json b/npm/packs/cropperjs/package.json index 94a4e602d5..f96c0e2610 100644 --- a/npm/packs/cropperjs/package.json +++ b/npm/packs/cropperjs/package.json @@ -1,11 +1,11 @@ { - "version": "8.3.0-rc.3", + "version": "8.3.0", "name": "@abp/cropperjs", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~8.3.0-rc.3", + "@abp/core": "~8.3.0", "cropperjs": "^1.6.2" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/datatables.net-bs4/package.json b/npm/packs/datatables.net-bs4/package.json index 893d932721..a3fc1c5423 100644 --- a/npm/packs/datatables.net-bs4/package.json +++ b/npm/packs/datatables.net-bs4/package.json @@ -1,5 +1,5 @@ { - "version": "8.3.0-rc.3", + "version": "8.3.0", "name": "@abp/datatables.net-bs4", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/datatables.net": "~8.3.0-rc.3", + "@abp/datatables.net": "~8.3.0", "datatables.net-bs4": "^2.0.8" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/datatables.net-bs5/package.json b/npm/packs/datatables.net-bs5/package.json index 15673d43da..d4d5e9a279 100644 --- a/npm/packs/datatables.net-bs5/package.json +++ b/npm/packs/datatables.net-bs5/package.json @@ -1,11 +1,11 @@ { - "version": "8.3.0-rc.3", + "version": "8.3.0", "name": "@abp/datatables.net-bs5", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/datatables.net": "~8.3.0-rc.3", + "@abp/datatables.net": "~8.3.0", "datatables.net-bs5": "^2.0.8" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/datatables.net/package.json b/npm/packs/datatables.net/package.json index c275a54b68..68324d0f9d 100644 --- a/npm/packs/datatables.net/package.json +++ b/npm/packs/datatables.net/package.json @@ -1,5 +1,5 @@ { - "version": "8.3.0-rc.3", + "version": "8.3.0", "name": "@abp/datatables.net", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/jquery": "~8.3.0-rc.3", + "@abp/jquery": "~8.3.0", "datatables.net": "^2.0.8" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/docs/package.json b/npm/packs/docs/package.json index 0e1db554bc..36d50dea63 100644 --- a/npm/packs/docs/package.json +++ b/npm/packs/docs/package.json @@ -1,15 +1,15 @@ { - "version": "8.3.0-rc.3", + "version": "8.3.0", "name": "@abp/docs", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/anchor-js": "~8.3.0-rc.3", - "@abp/clipboard": "~8.3.0-rc.3", - "@abp/malihu-custom-scrollbar-plugin": "~8.3.0-rc.3", - "@abp/popper.js": "~8.3.0-rc.3", - "@abp/prismjs": "~8.3.0-rc.3" + "@abp/anchor-js": "~8.3.0", + "@abp/clipboard": "~8.3.0", + "@abp/malihu-custom-scrollbar-plugin": "~8.3.0", + "@abp/popper.js": "~8.3.0", + "@abp/prismjs": "~8.3.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", "homepage": "https://abp.io", diff --git a/npm/packs/flag-icon-css/package.json b/npm/packs/flag-icon-css/package.json index d43f28e44f..a191804b85 100644 --- a/npm/packs/flag-icon-css/package.json +++ b/npm/packs/flag-icon-css/package.json @@ -1,5 +1,5 @@ { - "version": "8.3.0-rc.3", + "version": "8.3.0", "name": "@abp/flag-icon-css", "publishConfig": { "access": "public" diff --git a/npm/packs/flag-icons/package.json b/npm/packs/flag-icons/package.json index 00950318fa..900dc2df88 100644 --- a/npm/packs/flag-icons/package.json +++ b/npm/packs/flag-icons/package.json @@ -1,5 +1,5 @@ { - "version": "8.3.0-rc.3", + "version": "8.3.0", "name": "@abp/flag-icons", "publishConfig": { "access": "public" diff --git a/npm/packs/font-awesome/package.json b/npm/packs/font-awesome/package.json index 0c66501db4..82a85c21e9 100644 --- a/npm/packs/font-awesome/package.json +++ b/npm/packs/font-awesome/package.json @@ -1,5 +1,5 @@ { - "version": "8.3.0-rc.3", + "version": "8.3.0", "name": "@abp/font-awesome", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/core": "~8.3.0-rc.3", + "@abp/core": "~8.3.0", "@fortawesome/fontawesome-free": "^6.5.2" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/highlight.js/package.json b/npm/packs/highlight.js/package.json index dc1502ba79..904dfc6554 100644 --- a/npm/packs/highlight.js/package.json +++ b/npm/packs/highlight.js/package.json @@ -1,11 +1,11 @@ { - "version": "8.3.0-rc.3", + "version": "8.3.0", "name": "@abp/highlight.js", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~8.3.0-rc.3", + "@abp/core": "~8.3.0", "@highlightjs/cdn-assets": "~11.9.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/jquery-form/package.json b/npm/packs/jquery-form/package.json index 8e97bfeecb..36a3a1dcea 100644 --- a/npm/packs/jquery-form/package.json +++ b/npm/packs/jquery-form/package.json @@ -1,5 +1,5 @@ { - "version": "8.3.0-rc.3", + "version": "8.3.0", "name": "@abp/jquery-form", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/jquery": "~8.3.0-rc.3", + "@abp/jquery": "~8.3.0", "jquery-form": "^4.3.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/jquery-validation-unobtrusive/package.json b/npm/packs/jquery-validation-unobtrusive/package.json index f583e797cd..ace2ea9270 100644 --- a/npm/packs/jquery-validation-unobtrusive/package.json +++ b/npm/packs/jquery-validation-unobtrusive/package.json @@ -1,5 +1,5 @@ { - "version": "8.3.0-rc.3", + "version": "8.3.0", "name": "@abp/jquery-validation-unobtrusive", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/jquery-validation": "~8.3.0-rc.3", + "@abp/jquery-validation": "~8.3.0", "jquery-validation-unobtrusive": "^4.0.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/jquery-validation/package.json b/npm/packs/jquery-validation/package.json index 4f084283e6..4aef5ae19f 100644 --- a/npm/packs/jquery-validation/package.json +++ b/npm/packs/jquery-validation/package.json @@ -1,5 +1,5 @@ { - "version": "8.3.0-rc.3", + "version": "8.3.0", "name": "@abp/jquery-validation", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/jquery": "~8.3.0-rc.3", + "@abp/jquery": "~8.3.0", "jquery-validation": "^1.20.1" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/jquery/package.json b/npm/packs/jquery/package.json index a2887951f9..8774c94075 100644 --- a/npm/packs/jquery/package.json +++ b/npm/packs/jquery/package.json @@ -1,5 +1,5 @@ { - "version": "8.3.0-rc.3", + "version": "8.3.0", "name": "@abp/jquery", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/core": "~8.3.0-rc.3", + "@abp/core": "~8.3.0", "jquery": "~3.7.1" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/jstree/package.json b/npm/packs/jstree/package.json index 715a8f4047..4923ca3fdb 100644 --- a/npm/packs/jstree/package.json +++ b/npm/packs/jstree/package.json @@ -1,11 +1,11 @@ { - "version": "8.3.0-rc.3", + "version": "8.3.0", "name": "@abp/jstree", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/jquery": "~8.3.0-rc.3", + "@abp/jquery": "~8.3.0", "jstree": "^3.3.16" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/lodash/package.json b/npm/packs/lodash/package.json index 135aaeca85..4f3a512eff 100644 --- a/npm/packs/lodash/package.json +++ b/npm/packs/lodash/package.json @@ -1,5 +1,5 @@ { - "version": "8.3.0-rc.3", + "version": "8.3.0", "name": "@abp/lodash", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/core": "~8.3.0-rc.3", + "@abp/core": "~8.3.0", "lodash": "^4.17.21" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/luxon/package.json b/npm/packs/luxon/package.json index 5181a78888..a7255dd2ad 100644 --- a/npm/packs/luxon/package.json +++ b/npm/packs/luxon/package.json @@ -1,5 +1,5 @@ { - "version": "8.3.0-rc.3", + "version": "8.3.0", "name": "@abp/luxon", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/core": "~8.3.0-rc.3", + "@abp/core": "~8.3.0", "luxon": "^3.4.4" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/malihu-custom-scrollbar-plugin/package.json b/npm/packs/malihu-custom-scrollbar-plugin/package.json index 41c703db42..2103a1040f 100644 --- a/npm/packs/malihu-custom-scrollbar-plugin/package.json +++ b/npm/packs/malihu-custom-scrollbar-plugin/package.json @@ -1,5 +1,5 @@ { - "version": "8.3.0-rc.3", + "version": "8.3.0", "name": "@abp/malihu-custom-scrollbar-plugin", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/core": "~8.3.0-rc.3", + "@abp/core": "~8.3.0", "malihu-custom-scrollbar-plugin": "^3.1.5" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/markdown-it/package.json b/npm/packs/markdown-it/package.json index 86c6f2002e..4146b4b7e5 100644 --- a/npm/packs/markdown-it/package.json +++ b/npm/packs/markdown-it/package.json @@ -1,11 +1,11 @@ { - "version": "8.3.0-rc.3", + "version": "8.3.0", "name": "@abp/markdown-it", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~8.3.0-rc.3", + "@abp/core": "~8.3.0", "markdown-it": "^14.1.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/moment/package.json b/npm/packs/moment/package.json index d17d9fd48a..5f906b4cd9 100644 --- a/npm/packs/moment/package.json +++ b/npm/packs/moment/package.json @@ -1,5 +1,5 @@ { - "version": "8.3.0-rc.3", + "version": "8.3.0", "name": "@abp/moment", "repository": { "type": "git", diff --git a/npm/packs/owl.carousel/package.json b/npm/packs/owl.carousel/package.json index e0461826e7..0b667ecb41 100644 --- a/npm/packs/owl.carousel/package.json +++ b/npm/packs/owl.carousel/package.json @@ -1,11 +1,11 @@ { - "version": "8.3.0-rc.3", + "version": "8.3.0", "name": "@abp/owl.carousel", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~8.3.0-rc.3", + "@abp/core": "~8.3.0", "owl.carousel": "^2.3.4" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/popper.js/package.json b/npm/packs/popper.js/package.json index c9ab7b8fc4..fa1a86b6a6 100644 --- a/npm/packs/popper.js/package.json +++ b/npm/packs/popper.js/package.json @@ -1,11 +1,11 @@ { - "version": "8.3.0-rc.3", + "version": "8.3.0", "name": "@abp/popper.js", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~8.3.0-rc.3", + "@abp/core": "~8.3.0", "@popperjs/core": "^2.11.8" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/prismjs/package.json b/npm/packs/prismjs/package.json index de51b2ea72..af5671f7f5 100644 --- a/npm/packs/prismjs/package.json +++ b/npm/packs/prismjs/package.json @@ -1,12 +1,12 @@ { - "version": "8.3.0-rc.3", + "version": "8.3.0", "name": "@abp/prismjs", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/clipboard": "~8.3.0-rc.3", - "@abp/core": "~8.3.0-rc.3", + "@abp/clipboard": "~8.3.0", + "@abp/core": "~8.3.0", "prismjs": "^1.29.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/qrcode/package.json b/npm/packs/qrcode/package.json index 9273b97825..0725fff12d 100644 --- a/npm/packs/qrcode/package.json +++ b/npm/packs/qrcode/package.json @@ -1,5 +1,5 @@ { - "version": "8.3.0-rc.3", + "version": "8.3.0", "name": "@abp/qrcode", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/core": "~8.3.0-rc.3" + "@abp/core": "~8.3.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", "homepage": "https://abp.io", diff --git a/npm/packs/select2/package.json b/npm/packs/select2/package.json index f47529354a..4af92ff2e9 100644 --- a/npm/packs/select2/package.json +++ b/npm/packs/select2/package.json @@ -1,5 +1,5 @@ { - "version": "8.3.0-rc.3", + "version": "8.3.0", "name": "@abp/select2", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/core": "~8.3.0-rc.3", + "@abp/core": "~8.3.0", "select2": "^4.0.13" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/signalr/package.json b/npm/packs/signalr/package.json index f2cb6251e0..8c9363b193 100644 --- a/npm/packs/signalr/package.json +++ b/npm/packs/signalr/package.json @@ -1,11 +1,11 @@ { - "version": "8.3.0-rc.3", + "version": "8.3.0", "name": "@abp/signalr", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~8.3.0-rc.3", + "@abp/core": "~8.3.0", "@microsoft/signalr": "~8.0.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/slugify/package.json b/npm/packs/slugify/package.json index 9f25335d94..e03b21ac8b 100644 --- a/npm/packs/slugify/package.json +++ b/npm/packs/slugify/package.json @@ -1,5 +1,5 @@ { - "version": "8.3.0-rc.3", + "version": "8.3.0", "name": "@abp/slugify", "publishConfig": { "access": "public" diff --git a/npm/packs/star-rating-svg/package.json b/npm/packs/star-rating-svg/package.json index 38e7146051..d3651a533e 100644 --- a/npm/packs/star-rating-svg/package.json +++ b/npm/packs/star-rating-svg/package.json @@ -1,11 +1,11 @@ { - "version": "8.3.0-rc.3", + "version": "8.3.0", "name": "@abp/star-rating-svg", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/jquery": "~8.3.0-rc.3", + "@abp/jquery": "~8.3.0", "star-rating-svg": "^3.5.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/sweetalert2/package.json b/npm/packs/sweetalert2/package.json index 4147d00dc2..4b315f3e78 100644 --- a/npm/packs/sweetalert2/package.json +++ b/npm/packs/sweetalert2/package.json @@ -1,5 +1,5 @@ { - "version": "8.3.0-rc.3", + "version": "8.3.0", "name": "@abp/sweetalert2", "publishConfig": { "access": "public" @@ -10,7 +10,7 @@ "directory": "npm/packs/sweetalert2" }, "dependencies": { - "@abp/core": "~8.3.0-rc.3", + "@abp/core": "~8.3.0", "sweetalert2": "^11.3.6" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/timeago/package.json b/npm/packs/timeago/package.json index 94cb33d4ff..861af9ca6f 100644 --- a/npm/packs/timeago/package.json +++ b/npm/packs/timeago/package.json @@ -1,5 +1,5 @@ { - "version": "8.3.0-rc.3", + "version": "8.3.0", "name": "@abp/timeago", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/jquery": "~8.3.0-rc.3", + "@abp/jquery": "~8.3.0", "timeago": "^1.6.7" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/toastr/package.json b/npm/packs/toastr/package.json index 631be12a47..b789d4f922 100644 --- a/npm/packs/toastr/package.json +++ b/npm/packs/toastr/package.json @@ -1,5 +1,5 @@ { - "version": "8.3.0-rc.3", + "version": "8.3.0", "name": "@abp/toastr", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/jquery": "~8.3.0-rc.3", + "@abp/jquery": "~8.3.0", "toastr": "^2.1.4" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/tui-editor/package.json b/npm/packs/tui-editor/package.json index 57c9e23a15..2c0ce92334 100644 --- a/npm/packs/tui-editor/package.json +++ b/npm/packs/tui-editor/package.json @@ -1,12 +1,12 @@ { - "version": "8.3.0-rc.3", + "version": "8.3.0", "name": "@abp/tui-editor", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/jquery": "~8.3.0-rc.3", - "@abp/prismjs": "~8.3.0-rc.3" + "@abp/jquery": "~8.3.0", + "@abp/prismjs": "~8.3.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", "homepage": "https://abp.io", diff --git a/npm/packs/uppy/package.json b/npm/packs/uppy/package.json index b05af03f86..e93dafc93c 100644 --- a/npm/packs/uppy/package.json +++ b/npm/packs/uppy/package.json @@ -1,11 +1,11 @@ { - "version": "8.3.0-rc.3", + "version": "8.3.0", "name": "@abp/uppy", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~8.3.0-rc.3", + "@abp/core": "~8.3.0", "uppy": "^3.27.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/utils/package.json b/npm/packs/utils/package.json index c8bd7eb717..cc1530084d 100644 --- a/npm/packs/utils/package.json +++ b/npm/packs/utils/package.json @@ -1,6 +1,6 @@ { "name": "@abp/utils", - "version": "8.3.0-rc.3", + "version": "8.3.0", "scripts": { "prepublishOnly": "yarn install --ignore-scripts && node prepublish.js", "ng": "ng", diff --git a/npm/packs/vee-validate/package.json b/npm/packs/vee-validate/package.json index 41cb537672..697d06f2a6 100644 --- a/npm/packs/vee-validate/package.json +++ b/npm/packs/vee-validate/package.json @@ -1,11 +1,11 @@ { - "version": "8.3.0-rc.3", + "version": "8.3.0", "name": "@abp/vee-validate", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/vue": "~8.3.0-rc.3", + "@abp/vue": "~8.3.0", "vee-validate": "~3.4.4" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/virtual-file-explorer/package.json b/npm/packs/virtual-file-explorer/package.json index e5aa2747cc..9a4a36dc12 100644 --- a/npm/packs/virtual-file-explorer/package.json +++ b/npm/packs/virtual-file-explorer/package.json @@ -1,12 +1,12 @@ { - "version": "8.3.0-rc.3", + "version": "8.3.0", "name": "@abp/virtual-file-explorer", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/clipboard": "~8.3.0-rc.3", - "@abp/prismjs": "~8.3.0-rc.3" + "@abp/clipboard": "~8.3.0", + "@abp/prismjs": "~8.3.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", "homepage": "https://abp.io", diff --git a/npm/packs/vue/package.json b/npm/packs/vue/package.json index 5ca8405411..b3855eb41c 100644 --- a/npm/packs/vue/package.json +++ b/npm/packs/vue/package.json @@ -1,5 +1,5 @@ { - "version": "8.3.0-rc.3", + "version": "8.3.0", "name": "@abp/vue", "publishConfig": { "access": "public" diff --git a/npm/packs/zxcvbn/package.json b/npm/packs/zxcvbn/package.json index b897512464..c531c64056 100644 --- a/npm/packs/zxcvbn/package.json +++ b/npm/packs/zxcvbn/package.json @@ -1,11 +1,11 @@ { - "version": "8.3.0-rc.3", + "version": "8.3.0", "name": "@abp/zxcvbn", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~8.3.0-rc.3", + "@abp/core": "~8.3.0", "zxcvbn": "^4.4.2" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/source-code/Volo.Abp.Account.SourceCode/Volo.Abp.Account.SourceCode.zip b/source-code/Volo.Abp.Account.SourceCode/Volo.Abp.Account.SourceCode.zip index 74f6b6769099845fbeb4494b152cdb8c8bd2ec07..19272c5597146c0d6da09783cc973c91cdd19759 100644 GIT binary patch delta 17885 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 RsfNBUq-2CAzlRhR_#bCgU=9EP delta 17633 zcmZ`f2RxPU_xF8YdtNhKdu4AKWhXP6%up$-NJEoK+UBhuMJnwfB$OoDTBsB<8`473 zl>DFfd2e+4{{Hv#xgW>b&pGEg&$5S#1-6=#1ek{0z6i0E+Za)pS9q2ogfZ_64g^REJ*6n0gu4;qF+B(;0j9p#CL#DY zXl=_CF>X#8&D#;r>*Ebvg!? zw#lvahIH{Ikr9GBOy29&YKYE{E>p8BD(~yg@@Q#!>-2QxWznp`PoKQ+mRuRzo}0_4 z*mrzR@EXR4{SkBZHoCnge5H<-7&Mfh_`-8AHGM

COk2=619{y%zsELjBlB!TS4`0^IEGA6&%U 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�-8P2TLU@J}(GVEIE5rrY}HCPf)wZ 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 IaA~FeAH7{^U;qFB diff --git a/source-code/Volo.Abp.AuditLogging.SourceCode/Volo.Abp.AuditLogging.SourceCode.zip b/source-code/Volo.Abp.AuditLogging.SourceCode/Volo.Abp.AuditLogging.SourceCode.zip index e1360af411f6c792dcacc594b445fb47c899815f..64afbfd1220394196d50556a988a1f27db43eb5b 100644 GIT binary patch delta 6637 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 ANB{r; delta 6664 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 delta 7927 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 pbgFzHoU121Mm?>sxbH`YJq{{TEf8uI`E diff --git a/source-code/Volo.Abp.BasicTheme.SourceCode/Volo.Abp.BasicTheme.SourceCode.zip b/source-code/Volo.Abp.BasicTheme.SourceCode/Volo.Abp.BasicTheme.SourceCode.zip index a70e83b8cf1bcd652619e46d9ab57a89b724006c..bcbf9971683d1d73a3a75003d39a13965f11a7c5 100644 GIT binary patch delta 34058 zcmY(qb97(L8}=KgN#n-08r!yQG`7v%*lujwR@3ksv$1Wf@#(M6d(K(!fA_lftl2Z4 zxo6L;J=Ywa;nknvAu7p2LZO3!fqeoCmZPXg6at47Ri$WD0{4Rc7mUMj{8N&kKY9HV z0zU0R{tGM+*dYD|IY`<66%jzW`6sZV+WmWyRQM(8pTLaH0D<_oT5VxVY_O-lFJnq| z!hj)4ibo(w%`|{vPV!@bP1?dl0KC3S3nLTG3enR-(-+6w@0fLF53!F-vhb?k9j_03 zioq;e%ni8AO}Fj6iu4wF<0q4}Fue!Ez^+4>f*Q!?+5uh?eCmt8@#Jt`buY+gou;Xm?SL-hA+tvS4!N_`l|9w%YQ^&WMZho z6dT z;tjxdp|80z!~G~wnO3nbJ3YSR7$Uz7<*W_&?`AetcJpa-L|Qx#-bDS~mDMpT&??Mz zt8L|DI2Uet*`sCa=3^3#R|;2<8`qc0mX9j%w1iLGzOQv}kT8$2Xqz){fO{152b_pb zA0uB@r)`HZS8NbSTBQy(+{s4HcBlj41d3sQ<6yo^{UYPDm1E^5*EDMNS-^Q+>VpB;9%9g{6@^GnU?INltE3g~R{L0u1agi=^+Q>i_zGe zgx-bqOf*1rg>aYHPrEdYoDWBmd^bDR@l)%x!(rJkf6360OvG+QsjI7>X?#2rRaf$| zjLVZDlS^-LG@%r-|9~NkFfjX-9E);MQ<&JhLL9UnR9HxmN9dbavQl`j16u{ z-t`ntZtA=5&oniCSw+iz4_m3bg^C>@$yg$#x8T6QcCDB`Y3)1~YhhdOBxb6596%kL zl8Pvh*j)or>YRYKl6NHHQICNLT)x~?#R)>x>Gxt6{camnhqwVCTIiT8l}FMUUZ}sm z3KDVUovL1dKi1gZE0+31KQQxh$?-WRfTwn)9Fj7wLd7=AhJ(W!-nAMf?Y4o4W-KQk z#(hv;o68tTfaSk39!!moETrktyqgs97cx+9_sPxj_mzBeZ6^#q#K`K@`{~bXBg4&S zbN9U6Kb7i0wI&Wc>0byzbZl{o>V0jePF;{@cxOgUX{V6F>|$Z)B3p-DZa!$>5A4|G z{pAva){@tA^WdA4n!(_Tm31khc$IRQ(o|eEAHSB$?QFYSR_Znw`;bXc3U#kB<8Xo> z48{yuNQa41)KFISU3rNOkyczWsCVu=VjuC%Z@U4388by0VwyDJYJ>Nn-6+l=XyW1b zk$0u_i0ZO&A!qF-qb-M1YWxPqGvmhlo`%hu!Pj)MaM82#`VPgqcVvnlu>UJBlGylW z{|!1EzcB>b|7KP7uYeEkzk?172?izsmTF`JL!Mgq6$&a<(iVmoXigNi=@UW^z6^N} zi#I{S%f~`yp2oz;k1X@NX|Nwkqg=*vH`IB3)OTx^|Lje>hhly>@kqIBYJWr!8Dyq` z)Mu5CpuJL`hN#&mZS?#H1uBA-oyiv)&pI<{Z-BG>mOYwYsx;YDOJOHBqqVwdq?e4$ z#y62h74ag<0PSM|==MWE+?@@*$J7qBRa2`|Esx5EEV9)hzqX4*){2e1ZW2I%(1e#`sosnOvzTSiiYE=&32j@xMz%QLl(ex~d+`ymj+l0IN+eyb6oko-cEZ{}=a06k)jk zzH|5@3jZy)cH&w81qjmQ|2<-r;rtgQ*~w=98>G*2iT??C@<;!KD24xONlI0G{q(=l z8{ns*Ps&u%0F2GnNdVzGC>t?D*UfZ2n#Nk{p#k{cE9*viE;qmp`h${{#;; zga7)lr0)Mu(AFS>K>c6aA4PSe&HrYe-`~tLOcIu1NkwsmVM@BxLIemYMQH9&AQv=H zD-iDsu^3OyA_Y(B#PEiysuW zg>h))?1uqWPlao$d7mbuDoW^!#*<5`E6zg`EPA?gguOa96zJlrkNI^Ch4D+w1yY97 z9meLIszg-R5K?vYO#@(X42?BhMzJ#B6ybEoTB?BW7l;2yP@{lbB*Gvb8`dgpI94!z zVtr>+tu_J6d|HmIh0J5# zk|t?QqI*4Ra!lbZ@CY-ruq~JN%+R_^PV|4JrS^cmTZAA!7}${%7#P>zJ%_8Aiz}l> zlD`fs;H#TdFuHL55~=l(U+`GiIVxulXPD(za2?30cEx~fCWxkveO9`>Znz-L;=`|UV?0XVvs zM84OtamDfOcvG@LJef}r0G?lJ0e*D02*N&KN!u$bo`3JpWsd^z)35ZQL~c%gfQ3q7 zX^zJu$33c)?wifS4;VJ1i^mTt!E41MW~ZD#4j;FVhRDd=va{m&{JuW-L&yGovs~lp zFIV)#4f4-|`_6r@;u#c!bH~@2$scYc;=-O)}VXJ z*{t|`<8uE}vDH;0c&8}-+uj>HAM+AFPbXW{VqAIBfRW|gp3|3$*FiXzP%f1d{dbthI%9hP$XK|V_ z%P?7*{Bv>LOPwES<)zbeQwIesE|hWHK#q09E6cr-l+cq6)M~m}{ zV-e#!Lk)nBr5fh@l5oyNNU>ojD#lv_dr0`xh5%(l{fwK%ViHbM2Qu6KDogUsOQ zZ{8Ryn|&p^CCjz7INb?=N56?{q*B`5jJ)8cg7-U|yW2+G@mmbwq5ch#Ft%6T#FzPx z!!Li>8d201#qvP1wgN=$pfEe#6sSJt<$F)*8@@KGywxrHFgxaC%~!d!3Vr~8kzPTg zrP#@WeVkPHyyfIngO~taz*<{=MQPP4Ebh4OP*-ol9=q3Q?i?Qod?@MQwQfs7uwE9x z`=Hh3dK%7Tcn6V!+n{dvo;znb*4LY4_$nhknt1eu&VVqH1_@UWJ$A3vp$OkHw>>>uHwFC27Scd4f}F6xq=Rhp(16+ zE7_H@vq%EI#3C6es&toMT*VDf7MZ7|c5E z8;I@SC8-I9Jb^zc%pxv@#=T0J#uYixUem8iyIL0qcSzkjqkd3yadeM{d!*d?smhV7 zcA=PAwDAF+fe7xEL(^+f0}%+EFT5DwxpAYFQ(4#WP95t&CUVVh|r zT@Nkeusb1}|ireU;6JoVsoX*pbBhNG6y_v1!9Hv)G?n~{1; zSe3f-TP>=g&n*PlX#=KlhKK5$>RxGYbZlIHW+4IHC03sfWHj|rS%wX@cU6Xc``|h0 zt~v^yabFDu!KVSgClc1MGf_6%^m2C~&e`kRKnvBc>0)ulz4F(W(N z=n@-(X0Bvc{Az%Sy~1a?S2Ac#TD2~_i>?+gQw~k0^XO>Y#7dxS!B59PIs|YG=Z%A~ zvje>KFd3joUd#sl7HfeQq5Tf8K!-poho+0$w zT(A;Pzo!lKAAyZjj!=1|4GEHBquI0A;H#uzBm%=I#_6Z?}3iRi%?sU^5yc% zm7=Qmb{hXG^o8@b88Ug*lx#?tA;r;5y&DXVD|QLbd$79R%F0K|D_cC?af$d^8f$X{C zO9Ep```f#Zt}rQW=Wh&X-IU&uPox@r(p$C>#*yN5qk(i^TR`hA$#vKGiBpiw7do*@ zDyu<$acUFI^jZW8%+G@gnlNMf#ent7Q&$D=2$GvP2%q4|uY}I6WReuzDZg6~YH0?m ze*b)byOwV;?EY=swpE!6@5WC5)#w!%@#I8&5SSrN13v~6me@uW<^Uf8rJyG8_c}3K zjNwxf3jb+I7=805#!ZSXg-?c0S6s-@$S;;CXR8362M(S^H|eE9f(fHk_N^Zg4Y ziZ4_$_q*e^CSirU0%u_&3(}nI9kM)`-E@y~s*Xy+zDyv^l`ZH$$l|yt@C{;O zVc*2->wm5OPNqhuwRZ9+{-*3=CMRqqzsBht-|W8 znkpWg)N;J|K2Iy`K?<$14m2z&(CyWgAM)78p13uaTCG&AV@sl=+FgNqUmHX`!vIo; zt8T|$!=Otu`(KYYJE8^fuEqV*b%o@s`?gC99I(w915tm}5QzK6(7(JWEa!dRHZT^I zQm_zM)WJ`wnX^@R_#-9PwFo-bA$^S97W(1@s>Dkvv&dS5-+8FH0OqB8;p9eTb;~Ot zgS?p@L>mR|Lwes8ue+v>TE)e^uSl*(*1mykt9`A008o%F0a`gsaN7^c*#-9n@ z^n=&_LeKo(nY#VcCytKw1+Tf?k|?&{O4?GR-}s09L6a_C?0GvA-%aAzG%+Igj7bBB z^A<{J7=yye5(SRd17PUq@(pj_B%)rZsjL7wNNK!ko5%&>5IV<;bz9mqI}00C+^Z0V z^BXia>*<1Q9Y8Wk2FcJ+{B%ZU(S~&M4(73Y$_(!CBo)9T;v6B>2h`i$vhkU^em-yY z<*(hNOhIbG8AzxRE07}Nk_C!jUyH#ono)P|trEAC)${z8(@^#fSipud)iy+ysJXby zvR+^ByzlUD;&9otO&95|71zv3%Hv{B-#96c~cEd!cX_Ug`ZYFhQ@Ot$O~mErK{QwaF@=?#^XbbQ;EPk ze3dhfpV=&T5Bstg*A=U;`DS0ZRw)e{*p^3J?Ub1@l`zKN!9-%Ur4RL|tVxb&h?fDa zR7~dI08L%X%sulql_vJ{Ee*|RYTfo6g+NxNUaIHB#I+6So%-!#)OUZcUvOusmB=F` zO`PFpH)v9Hc{oSy-|IyQQkjdS!fEi`p~=U2?VE#WCq^1rNN4{X_C?>>LvcMVMxjDsJHNS2z01<|u1SYup_h^Q zm?t;RguEu@>6*j5&aOHi@A%4^=?-V1FwkpN!#=pS)QBrGnX27sRr>)qaLArxLgAl8 zm*Ycc2zljY{p<1dmcQ$h@GT@ysajqZ;!|5teV?kOnGZa;t+>=UKi#bd3u39goH0__ zog2BUwjOPJr7wn8b{&>CrFQjtId2r1tvu#$)q@QF3f*cidDpA~yXf0VYqSdS9$?;mB5NxJ(^r#v$OT(L%5Naj}(f zO0g|(99{b=9&{b}D=pj$c8t`PJ5?y-6&!{_BKz0>dW3bM%KZP|Lx$8Ul+r)$sjhaD9X*nNs&XVls@e6ncTA0GI9#AFzs zLhZ9%W!5hS7!VK7C&l!SUnn>QoTD%}tQD;E8#Uov?o#%6la=@pV0X=wR{__U2eczZ z+?XHSnluC){Gpv>$6U6KQb(|-&NR3ll_v*XBp>gm$y!G*;$QDDGcBH`OY^m~f=L*aNL`{9e4rydxoRj;9a4Um#qUdZR zy2aCNWHZbk_MmGHB>m^rz5*52mly(!k9}Rc3eT%#TPst4No2S5w?s>0xNwQgk(Mx_S|RaOBfd4qZ>ltWkk2sW zTv?7`O>m`Qwp zFFgQrFemZ!kZAK*Ou>J-5t8s?W1BD zZvXC&SpN797e;(OUMt5#gm(m2W63H)Nsz)1@rURno0{INSyFZ=K0Rhao?Avq zA2z6Ue~+aj0BToNDwAjPG~yZ-W^Ak1pg!N^II)C7_bvT~t-+YQZ{TK3q(@6NGbnug z>?Rny4nolwDX4T$;C)OtjO>rfy9Q0zqGH6^b`NiH=~F&gI4V^Z?^_P30@o9D?RpO1QpR;j`o~`!Ft^BF7dEby-@hMwgtoWeFB<#^nf{kB={iQbwsSDEJJ$;XXvsU}Kws=RB)$ zb*HkQ*r|fDcze)}QtSIg<23h#PNnSGI~8bAiSywsDZK>kUsGqd(OcaY~KO z0tkzI-^^EYt|#W%Az0{*D_vq}A8lE)JwG2=?3#w`rZB!29$=C>|4P8lAW87HZ6r7UiMmxijp0vRk7O%b%NdBqj zo*R1c^K6%Iet)Tbx}58rBEa~_6KjA74NNaTyUv^^F+k;;fjyr!dLd@8sm| zscj{3O@3Ncozp?(2vLfA^z zT7&%OGSut%6hUWeS@o{|=mWUP_M_@WcurB=(^h)gtNxt;yL(Kl#mRWv*Q=|bzZ1lI&6mSpUS_NI-=q~p)HvE%bipZx>{Ge z<`RTXY=1WqDb2dbNOCXr<3gy2AiP}*?|UN}edQ%exn1OmR$3iPo2iW|)&m;DT(0?@U?b>jJ_E|PI!+KE%_ z^r?5++{^LmEpvqo`s_Z4P1<)b&BoIXBh|sku3321eyA06W#8N;HKR>8Vq;bPJ2n)P z`c_hCC8rYzs$(1e-1`TMzRG2;p-X4YovH417)4&Da(=vByI6d{J#E3lJ_DJ_6NkZH zQ@t1kgdgz9RWiXYqja;A2de4a z@G3(MTE2q{f?9BNPdu5_WtzruV&4BS9TvCo(R+_?NsJ2V9Lz=9(rkMs9v(EQx2Rm> z8rG~N$}Zm^EbpTQ?)DJ<>;^i>48}kX4nqm8nx$Qb`=SoklSGh=3vW(dsHRcvAjNUk%^6uz{e`98Rf6anDic#e$1|>*Y3^R{ z9My7kJf4XgpvIJ*U5S48E+G_*>#M|3)avR89>3xiQ$`BTN8$pbh7~v1Q9y|M)Xr&6 z7-|WvJ9C{TJ3^4dgt!B4wID%pd34-mnBNP|SPerYcTdiwR*Rlk)=?@vK|s@}gIS7U zHa{Dmj1R(_$r`iwIRVm>#N-NoFO|4ogf#DBBvhgwYKznL31oyFv@%Z3V)WcNWnx7ZhUJhfwn%{?_l)*j7h+iqs9mvd2H)qWy?UpoDbiGVez5{_7#EK@V00{sGr7jIR*GWkTb{ zOiENMq-E{op-d=<==STq%xj8X>ki2k-8zfm2>AxPBD90I{Y{+}lYP|R!c<1jJ^c8m zt#!z(t0vZmv)Y1UjSt!VT%?#~@bWbkDS2!4sX^nnt35zuO>JWJXZla&>)eS3$<&$w zgFQqBHOY9f#|6EA`1US~s8ewmaIKaDT*C8|kyYTO?!OSpU<3i%_p`x2_$*lM>gA>+l!ZSM&v7Y^-bb#w2 zl=WDtC5RRfsOajCAt@K&C?@_X0kSX~Q9rpNariSqIVed#Vix-uUg%d;ft1;Fkm%Df zm=o-Y<7&xPX2K3nPBa%5dQGeH5&ozrqwFfns%w_pP%6IAWuZZ}yX`ZupFel8Wh1$xz2G!Y>N{=&)FS+$ z-fJ6of?KGW@U+wnfPkx@j>yspLCMQQ0OJq%CEBQDo#YD#=OQWt|z`k9{|@Ol$H_x|(_AI~vy5 zsX-g?+Hkng4?=t8l+GH{6GY)+$Ep$MG^QFkmloU3`Z*elih?%nm4F>=Bm67AN_4bL z%41=3(?O#Dr>0bxQKW3$y^nM(OtSsQ(hi1Szr)0&r>Pv}&^K*2A2nOfv3h1LTh)}7 zS#?Q5`PchzGi#3_lXO{*&mvCq8}p1k3)y-AG#XKc`!wkjy`Zn5wR85FGYelZe_l3} zn0^EpNf3XYX`X87FpCHSI5cL{k7Ql}_sTjR!%HZAi@A!JG1fz=SmU7iPB*VUKT+!sJ#D90{^iX;=!oO%z$nhSo$og}@Obd^g;eHvH1jD=NA1jK(dZ%1WC_4ODvRo3o%(5Ci-C-!*ez7Ul=r=tX3|3>h6 zJ(sa;FJ{Wap;QPFdp~pyR_t?MsQ)M6YmatBcg{7!+Sq?VORkX01Y#mM}x)_y7+QHl#xtKVRGul0zXfcSE zl96)Zeco%Jg&*pVnZx-*6!LGSwm9!ZIBHt7JZHR{xG(F%yx#GX6|mz&WQ5v*X__1vKRhrRIDHO zw&Z_S-};s}kNk-aCnS#G@-uQ1i?#Lfmb;wto*VEH6VE|An0J0+@D;0+6#ad0?~K>7 zKlu#aymzUkhkk5+NN(!ah82L>t8xsgfm$snwF3-uDh+WUIRs5aZRyNP29AhRsKD)pDO2V`M8uLw$GcA?AlOBrf!_K4%;2-t76$uQ4msM8L9 zE2^WomD+L+#44`Q(isSzcG+YC#5|e8g1)?KLu{Z9SU6l90v;)=cldL{Im*z!1 zUS3H0+-Llk&G+SbK1ML9V?jxebJ)2z1Q>h0S zGEU|cU5nNc>!c|!T)?5e=*mtS zjhudz*YP+XxR~H$e-wCK3;2mAe=4e8&^@%6SSg)jRjIb`!v<*T!9?poPJxn_r$uXA zcJcf8*{G5jU^F zaZy)m&evj(Y?boiCmc;`+AX5A>`eK&oF5;A)$zCC4?VMcXPaYVr`+$9zwF%Ef6%20 z{P@5Nl;$B_Bl4!f?{*O(cSxQkDiRZQOHAj7O(2xv1$t51h;V^C zOTeo_OI^NEBZbO_%1!>dxMY0v5V3oqKnj4@HpN!`neUBrZKODM10ept$@$M>R_7!6 z&%l!O>_7fLXGhWq@XuS6l=FS%KQBmt)qh@)!=U$nZk65?0ji|)U@f4KEj%(Xj%!i| zdnDG3*S_G&{o)giP=~d>hlN#UjVcCBCrz16>12^~Wj`$JF3I?w6!^ZZiSs-{X z32u)IFS*`!ct1J+b^`wY7-au8x^Xf@{Xe4|Ww`EtMwQ@*z<%tpz1q-MV2Viz`9YR*kA)&7n zmYrdoLhUqYkPqjIqU@|xDJWivl-b|wt5`mNWKPcQ@&7E21E7%_ByvxOpqBI4deI;% zw^QRS6xal8M-%5nIfHzj1W$sBOwN%Vs&Rg z0}{4^-3m#59%1GnnOe1o*1VbNlM4E2J9~4z%8IqtknPmxvMFeLBa%#t8N@6aJAAvZ zCxiKLJeOLpfUgu1Ge)ZGeg>*Np^I=TZ?>ui%WmYc^^EJ;?3>Qq zCW$x2!?t{NJxCuKV797DoGE4-u&20msVr$)xEL&#UT z9G=r9Nk*OQmdh(e^S;x(=BL;B+`iZdRLIrl7S7%GzEAnf^|~<;?Y^(KaR9#>R}4`B zFtGZ^NQ_A4?vUtEaPz(IBDQy#p`<;v=*~&kJ5Kyh8my}LPwQbA6xxpMdZcO)m?nf4p#8K=}@Q{I2<7andqBmU@qLFh^xHQs+z=3*Ek++eC-6!TtGiiz8>Ie+{o^+7Y zkhzWBOHT4UyvO?G?@;fXv0iTgEBDZ6oqPmbvg>7(e-m!b|Lo$Qv97)y$z?Eo-e459}Yc|x!||MzVE#l3`As>ieska z#t>3KS@c?PqJzla_ipL=n5lpIh^J7kUZ$r~D(~&wy)e*fY?m4aTY-QlDo#_j0)t6E zcTm7Az9ie*T@BxwN|%g4Cs{AbaV_J=$86+>WkQesBD%8lHL7evwAk6_z~M+J7cnFK zfu{j1ZqhFmYubypVp>CnatmuMr^NQLJ6Z`oWeSg#DAVOY6~6jfn`sJ zn;1vSYU_mM+@V|k6@1`EIsu=+qGSY(!^TOov$Mu2D`c~qTxRxcd-Vf8?g(R?sCsHM z=uT1*qE4{m71M#Ryoy>$8O1ABT`WaX%P68OoHn1ZuV8PqAa9G;^X1k+XC%~$#7N`j zT*+eXEfRj-^HhP8s^_3cS1vW`<#+V> zxyOi7_|XyTGL91JSE1y9K*L{qO#S>D=N53?=E3ZFz1#^Ye_*DNkDuT<@RHWh5a+A? zEAa3$yrTHRJs;87J18Lhvpv`;Ssb?OtZ8ifre?7G15kdo_79{&P#_5D6>(V;%YOGclr9UU#Dj+RQ9w$4#_pTAdB z?Z8)A&F=vzhEQ%1e35fTX3&5A`rwRhr967g@?J8O8Y^@6Zn~Niy_nRtFoh1!*+HX7 zzP-TQKoNM+*(81UA5fue=qhYXQ7f#u*qh%Rd;! z9ko59AL|rkmox{Ly?1XeVB3#an>&bWLAUyb4>TZI7H7Zldh`=`btP@uP6qMB6L@SO znv-!NRJ4y+Sfqqi=o8VE8ea#ZfHp%Xj~lFa_K8B_ za|Jv>34QFZdW_>Qg^@bbeZArviy)5rj=O^@e2uQ@EN-CeC9Z<iTU$5T%*bHYtL7R2;fgv?m2Q|0LjFkRd!X_j=My)zFM=r%F4{)H* z9V=8qxyjX7^LV^>0EC~?1t(tkPD`a1B zEkRNrQ$am>7iz;ryGTjQG&%ux6qb>UsPd7vNGk_Da7-T3_L0A`p5N=cd^5q=Y8~3%l@yRX*qz!Of~SrbVM2x0R3`3*MlJtI?pPCyDnW{dA*`&ncqkB? zTzAXgt_Nd0>%o^_;&$FIWUr;G>FAxsgR2ozzH(ZyQMcy2%+%fV?WMp1kXLvm(OjgQ z$E^S5oZ!O+GtAmQaE(0r$HL}d{Z-)eDu`MS;;Dnw$KwN_@g#ydJ4a(%8bB()iaG^VhQraBf}S5yS)Q(&<8LK2ty5A+C(^|%>(hlOqlYr97uohy(t zXD*i{LE-ZFMNFWb)}AOsWu)>jY9`02FhB{dGUjASq9J3NRvZxxNLLmky6PLcuFhdM zHrRiho9yw3{s{(t7;gKhlK{v+7wf?{Poq50;euJ>l86h*Q-zTGK@70!fdf%Ta-!Pl znoNo7yutJ61wmpUp(xC+HD3r92Uw$*!Lv<26O3E6rqc$gnx2xLJXI%(;cVXa{Joi> zRZB%S5RE>wcow=mz%RhIO>Z%-!-% z^dTz371n~MAcP?)}ytt)JbPoCZ5V1rTFhkfQHi#6Yt1@HJp$0lLwaG zC}T1{c*eRnJ%|tfJm6g}eCUv~>uVAXlgiYg8vH)fkI!9Gs42w-QF>?ad6Z)U%AV>S zWFl&q7S(MDx$KKBAR?mID)xnYd1+ohn|z{!ZO@-8v*a17e(|l86G$g+gTg1QaxGOf zrTTPUM*SJCzyOK^sS8_%?(W7W(%d0y4~_lK*dKi!)E*jz)cUFGwl2?7_%4|u^6ouXRC;gcVlVmZg&m$><~S*3uAX`DS7nU z6ut=91U@}m`jLaLsov+&N&qqK3TUY}86#5-Bp4 zmDSR(3M7U?kR0!n>i$VmdXUyUu@Bt*)`o_0kKxdDKklzcY#$^_Y+t(pBeH|il&gpH zHS44y%Y&gCY9vY6#Y8*VL!DOn+g%?h0DEd_e&Dj5-frH3HK@c@hJRx=LHGC9pxD_N z=HonSNd+#0{T+?$@_aR3c24?OvxD)PyvoVENU(_{zX(mG44pc+7?j2@4~0bz;J5dk z(#V&fOrEbU>Z_B1>Ro7GO*^@Ap3;ZLDRWkA^ToS2HQw~wYLNo)G^5)GP>Iov3 z;ofNRxJ1%?usf8mpDm8EL#0ZP3$sb!3#X+TTy3bxK*M=NY?ynND zHl~bj3M{&*=_HwF^k>%DDFl`$-aEG;tH9K0M-k_+`xCNt&MG-0Uick#kJ!^J+=o1| z;gEoduh;dY!k+N9l-M|Y1t=(doHh#-6nloI9I_TFK|~Es>mgZ+lQ4aPTwG46o@B7P zlzUUX#EbcQ_alVdKttoF!b0Q7ENNsHy=Jz#MTaydNIW%jLPNqu{{AJL(WNUZ`3OV1tL&u*c57_<`{n*->s15Y@WpgvKg5CF)-It4ZCrlDNhQm- zuMo_S34NPJxCS{aE5C zwWUs?mlDwMQ7}1-Ml_jol!iIz&ttWd4C_{dmeo$Xpxh=uhLY(@VlQ5S76uH9x{bryi0Y|Xh+3rPZ)g4)JsSl+C6RpSvB@Z^zmC=rEHq?7 z^ZPf1VlUB=bk&woU(|H#p(*B`qqeZez-I{_CPbu|7OABAF9*t!_`wK^$*$|T)FjqF zsQgVV-Q-=6X$@I|%FYs&9RVN_FXky?yFc;xg4Actnj6072mw|~ZWIrnC_~H2nMazSR_(hQI}7u2(QRCuY-cTuqxKI*P7cGa@ZF`n@Tl`5b`A-!*<&EybcX zqmNSYkFU-i0HklC^ZO+*InVTR1>|6izt|^ME^f1TDL#btL|kaDlcj?6j1IVIpBN;| zz-Z$JybD0a$>BePBPxy0lr_YJN(Dl>dsAF~WO=h1g|n7no@);mOV)SKV}sYNgtpI;j6%ZpH9&>6z!R!WyJ;b1DOX(vppTP9?CYIfdoZaX zGzuS7(jM1FUMtC4FO`LasP+pRtmYip_Tpu~TWJjMvaKgOR{{ot3Oj0XLov24#IkBO zh;BAr$x;5C*jhuO(Ou`yf!nzNA1{wROz@)AD-(q;PGlTE{-RS(Bw=jc>}d9K1@Q^#pj^{Gk;X8-yh_4t^w}KoVd{AM$76D&A4|l<^q-@ zVXAsubEs47vpLx@uJ)Q4+S=K;y@}e53RY35t<|vv$J0%BCNW0`e&)9=VQr-S|! z`wn!_shJ;d=FywrFFwP$+c5Nc!S2CO1@O?@m^6ohU%bEkazm#>OTIP3SorG)aVvGW zy08^YbO*ZmO$Z^@6%b;1C!uGu4{7Ja8DVw#-8hu%k5EPk5mbLi&S`rwQNrzxp(gQs z-mYUAZPP#Kx2}%$c)Wdslp-0^bmY=QCc8K{g3@|Nvu&N3{Jw6`r|g0>T%1i4K!EPW z$HpLzROPaSVI~aLgDMNgj#=bH^qclLwqiy4^&T+S_W1t%gPB)#hwId1^JpNRcrdOJ)@H*c@}jIq5k2G<Q3;kEnST)F_GJX^8F%F1+tcl?pug23W)_WTo}*H_apr+Y2EHkooBQrO9iW zwx+6ZfIwY#5kVK8kTNBP6RmyToOB&KH&QK>v%Cdnix2FD4A-IHf3yvC-D{OsDa9p_ z!HZ`MEiQ%yWG(2!7aBUN41qWX1>Ws5~fq)<@Zy}z~(^`*{8(h~!vmu?rd%EH7P1`BULq2wZ z3kDxfoi(@R-t_?VM%X8a>ugO7DL~oMY^|P?BqK#upOM0)w}{s(3Cny9gl95s?y>#L zUgM#z&{ai%NtycuzvBO?>q_8i>bicn?%9TBl4cF0Xp|uh6f!iBM1zp2$W&&bB6C8n z$EK)cPNT|gA_-AS8Iv@KWUkB)@vXD>t?Tr>U%%gZpKbluwAbEyoqf(;_q-EN+G{R$ zx-!ZUKl?uP)vKpPHp#~}Cx`SJvT0>-!1qs^wmJMd#cZnjQBd*j)9o+z2ETJdzJL5y zm-jC2YPY&&@dchwHkCyNX@1KcXmF)?Pt`xXbu&U8G@7pV3B2U5_bp$~cZ-LQd_eL3 z`GFe!N5+i5FW2Ji7M3@uCeN+l^5U4iQqN^B<;{4$Xxhe-M?v3tprHvW?@#v1$ngna+{e9!v9{R%GUP6=uM z&_2m{)`F}#{LpWzm8BAor>TXTtE^UIdT4w$^l5qBmVYWS&@VjdVI%+fmeBoqdI|X0 zz32;N8>ZDA&p%_ORFs(K**aX_`sJlzih1_=A7YaXTVm%L-u|$>#{6r~0O8@h%B$wp zSvRiT`qg^4tu?5aZ~i(f|J}jc@oU@d>ZeDwOC4Qe^=JLYtm&coH(tNV{NBy7P~!2j zX$|L72l;Am|Kxq`qMi0P?K;oNJc$98!U1w7_x1->_sn+wr^J2u%+2xdE-R$6|kNTyn=XpF?>6qD+WH@5@{l)9Om#sbX zCv(}A1JZX_e}A_7SAXpg&F!Im^)yNE+GXB6ix4JUTwuLse(V>f$ zkM)uE^=;PAIsRf3iQpxTD$C^ol8fBNM2N~Y~H?ZN!g;C4)p7Ne*Z1Hh*m0RAHh?O4mj7vPi1D;2t zX)z6lhezMru-R?w`*~@$J$53!TAoNqbS87k+9g+Ijt1$4j+`h`WemH37yhSK@+KS@$$k<-`=dP@m+oJ>8`DZ~tv&sU3D_ z>*4c>$Hs+)+6#AXHIeLjDD30ATMkQNh z4RJbwS`E>|uQNG^r9wT@rYw}-yYSGtgZx4LGcPUB%5Bu{`D52*y>WZ|#%jv%f16&c zn(Ho?Gk&^rba>j*s2A7Qlq5b~mU?>oy>}PgQ-8gCFfTdHA)sO2OjCP>X!YV&?-55X z3KlP2a`j^Epy|uI+jz}et`)hirX{f^L^b@I{*kvTk8Q&ABMkO<^7O1HhRSH|%J5yX zZk9~3;)Py!Jv{e?4f{4dR96fXGtFMx0 zF9x|iTAcFOV2;T`#rK{w&E3Nnz2=S35BK}DAn8c@IHvwY>3P>V3LmETpXKfG!r2ksIkh1( zY2itY2xHsy#FhG$3+sYBBLl`v{@k>3RQ+4;r(0@g?s>6z*1!cN;|CkRlD*_@`hENL zin74S#4pBuQ%1i#efjfjzaI`KK3F}H=a;eyWcJ41?{q4^3sj@rV?Wn z`TS5u^$?S|+W&V^(efc$|HALv{Li6?&;y5)W_^^OqB(omx?i<#Tn3(evUEYJ`hu_< zDTV#@tZV#-zFiO#JLG8crL~JRc8pn}SY~PAzI%AKrh}=h#R&gmb)|BdKaYnrq&PHL zJ^JDisI;xez)ypunadLIwGL~i-E2wdxuL;6#BPE{=$-rP6k5+p-Awgs%(b|Mw;mrd zBV_N(O=i3FX0AHBWz8|q0CVT6#-uv)H}&btDrT68_e>YTK+;Jnz5jamhKujqV!={>+k_7v3pJDx7J=>sruY;>So=mZuRamN_(#b)sLMcIoS2Rf!0zb zqvG2oUTxVYAMFTLUt#O|k9W3TMw);3j1zVmv)#uJj~g1Zaqf6s_fqsGAY_bla^9k| zn;Nq32c-=?a`n)&kb0N3dh7bGIs1HD3gh9KH%AZ|;=bJ@J2p?jGf3>a1+a463@JbtWb%UBz*!!L7OR z#pMQ>6PDx^^j)t0w(Q)hESz8b9G5>9-aH2Pv`2fS3zpjz&T2~B#xxFJ{WeN_V*Kdb zp1-CHNRyat&@5479(m-rm*e3z<|zvY>YNP;y&&IM^VV_4?KcAo>;--{Rd3|pPCk0c zW35%%kBZ?QB?F~HUI*q}v%Gh0v0=o9l(Q#2?^I3C+W+Ba>Fh6#saC)LbQ7PfUv?gl zp>+X{qS?l#q+6sRn2_?jI}p5V^y=RVTvEqMo--00OdYetJ4t!=?l0MIefIO0&1fE@ zU2BA=PFyrX(&pfN&10h-ZjFq5Zg$MT!do*X%~Czz(BXNa`YG3xDZ$qLrfD6o^KTvJ zlvMgK!G6rs_~~jnW;uN%PuKX4J=FH(^SAVIUp!;2TdIETlwF$XT>8;pFgh)mIF+Av zk9rq%@iU*L2zCiS5hNsgD0Me0=M^EuzViDs2?ycc+c=%i*-)UO>N$l+k`w zibp;w~C;4Dbb>xU2YLA^6ZUlV;k!>P!YhzTODXOUC-u{So+B7=zQHaKt_ zQWex+_a)^B!M7ffVRrkxWK$iRfEJW6K6mlS|5X5}C_o`YTv!VVS(yy$yN#4fr!t2) z_N;O%{jAP(gSO}oU?N8jyB0Ddu=H-Ef@60fxr~zg-)V(G$>ZdzeV{P`;mYegeO#f) zS7iA#GV~rFp=z&GkDl!EpG946bK_<2$vH!mqFGzMv)guv<>dXyTg#yzkPX@bff}q_N~~-myjsy&knse_(wwt?lk%6`m6T@OCX;4e5ilvLDA-F^#Vu`8WQ{0Np40Pro9U1Z@aIjHA*MF0 z;$>4m-`nlqrz$HUQSXV%pVk0mA8nR*izIng(p!xohLDi6&jD{WFmR|BNIvQj2|y4j2|ymIfZoi zl}c2TxtD~*ATKso>f@Hns4ot@gk*%b4ogk(A|}*Yq;ApG|FTWWs2h>Wv=*5gd*gTDyEJm^EX{HY@C}a*1 zLo=>1wN(9x>m6a7dV?vaJCmZLp&G});Rjegj+unx5@Chal)>a#9>*YToWLmKv&GCF zvaVNE^R%%*Aed4`^+;+t9;loq#qtJQM4ZkL%zlz7xx1) zg)+8##Pq`LRSf;uqQzdHU^b*7lI&ukUJ09@Fu^pCYKjquaPl1pWcE`gm)@$jHt)r9 zl|V9kg!%}d)iC~)SH&q?i0kiBK!vp=lterCsQS_RyB45)w@j|2~Lr%Y`<5(QJ~LgvZs;9op-q8pwgt zGW(&QJVl6!*KYNS%w(7ZN?>~iZqP**cxN-x$EvzWNV<7n7iCb^oYNJre!?bY80;XX z<5p8-i)G$GW{!W2_@VzycUpDdOyP<}QK+Z$S(hV0ZYk&Q7hmQ1xmBx5;%oMYN9t@`)6M|<8^ZCHJ^@5X-retn8J8TwVcZM~-A{vpO;6@SXrcj3?5BetY@Y>yGx z2R50#E^2)1Au(0=@Jn^O)2$Ouej4{@#u5hKsSY~eUgDd)`RUfw_G0_cw}CHl_ZX+I zW^zgMmF_LM`}oYR`_M-+{YS;V}}zg4`&f?2yPyX2_j z0o^-CGPBZ4l=2hQuOu`pFTrz%fB!9?&Y1R}aolTkRN0Y3>PO@Cf_{Im zYTNnh)gl8clhFwck8*ZYtZG;E^3Qa1N*b#-?Lf`Ab2S%~<-FP-%2bqJ-=_Ld&B|@p zpe>#;e3$h-*OuSvRh=}`?e@Gwy#(JIwqJVo!#BMD-qTGHaYOwVUYnC+?;f~GX5-C6 zGeYb2Cp>)nap>YRvY)pV$$XY6Nh%Etcbgj%d~A!wUeo%Cu6Z8M^v@4{;XP7cNo{@c z^Iv&sx+dM;xbzs}nc}cMcM>=%0jkVDn-JuHZ-=vakGW?cW$ka(a8}w7B*~BoSzZ`!>%GnPYeN&W5 z-tYaiyD3v6w0T0KRK@#DdA}*Qjt9=%vrk2KVa(SpbCdQhZHoV09nA|^_{u-4{qBa6HRV1kINKeT-Vaz;i|F$E^A=eO^UM)^F_BGL8WzAyS{sL= zktD|ng_dXy)oyBymeQmWYm4Zoa)rI^P;Z(n49B7+G)3TXXaJ=ZOhAvRzN3>6Jj}5+ z;+&8JrM+@STdB88U6DPNO`D3|P}$?tktd~npMfsYRju`B#JQ4D1tOLp@r|3#~A0 z?u#Z9ovJ#`*#aPC!DY{3GE}EJmutx4dS4_*+-vnk>XPaj9f&-RorPow;yV|RU0N)% z2#@kdGQEuOa6af?s!J^6 z;Q2_2P@`DtbzMAlA+lk6FR;?n!oG_{KA9{4)NTMp;|8eUxCJ64g+(Umv&eYCMSUf# z87}hJT3zA96L91zJQu^p{I9<#?79%{VeBC1Ed=ofL#o(rkUTb7jATeWKLkxVAqV5L zj**a<^p~)N#M40??6P>uTv0sF`+*`?V~V62+mOf+MdGhNOGvEcC~EFxAC7DMQ7__A zt3N2(X)35JHpbSAkU1f)SOi4BAuLglJ4AM{s}oOBNrHYXot+^M1Mj~$1iCZevf|i4 zxOEYlM3mSrM(Vsa_TSdTZ!%>0y9-OzK|&QSPmZJ~E?kWKiR9n_kbKSld!``3QWn?E z76nQC;pMK<%_G5C6Wp>G?#u8g=3c~D^b*O*JHQC*syWA)3ie%s>)|Rf?%WN$cV&m=5nC+a-{su zlX?g?Im+NG%SGDCSk&1`q|K=}Hd!G;Y*zsC<}W061?oe(vZsB6U@vr`04{q@S3+H= zqI#EJ|CuJ11Nu3$`Jn=?ksPT2Y#)dw5@+`Yg3+~8XcwvjQC~7D?Du+EgUxVRb41r* zg&^ceL}vwosP|M>bO=rgLVbwnI5$&%KM>J`YYa#9F|H3nQwfvru+51*VO+kz#dU24 zc3mlQEoLR?7fz?H!8dmY;rLbXAfviUG#x$b7AhYD1*_r5mPca~hFF8tU>LJh7ZVm@d+!j-F0Fww{PT_}fX<2qKK z8T&g?T(w5jvoZQ#&fkMY;Rxy1o5LQyQ4nS zLOX~uc>Fq~KoGBWfCPoHh@d{~|H*%L9E+2;h`4F`Bg3aN@SM?E;Q9%d4Tn1yPhF3k zNT1nX(M14Q1(z*{DQ_Eb?c;i+LcHp^0lYe~9V_NCL-EWFqDgesmXpV5_;E$a| zzGwqdCh|3`yvJ@ryc`TUV|K7;Ni7Qoq^1+0j){LKCm}JPYo*aTyiLQVU&^0ByliCBPh9D*4RaXC~UPnRt9jl3>Wk-&fU+^wR7ORAcI?a~} zjmQIDJ+N%bkqOKd%iyJ>x{Cb9gkB9Q{iBRN<*M%W% zGQ*--YTRW)6&PRXP4*oGG28;kfC9P`h$~RT$F_*(-USvZze?`nqp$TAI2ZQBKf!k* zrn42m2ZbWgnCK&`M(eWC)KYMA5;*C>>6Av1h+7Ryha)Yb#wZ-r_*^GI@pVkne=j3;rzAcCga3mMj@(V$vIDshn9exBvC$m*1 z^Z(;=R=~L1Y}!nKi|g|KDmFuo>=MPb{p0kG0PhXB#=|B4+xVoDU!6<}^*vyET{WQ! zK2-M>kH2AXqQ4=GeIn$KDPj%Kn(~yUPDfKt5759%hjMYjZl;e*Y42qPznXjC=zXHue|{er-TOw2O21XY>ib3Lp#6ZVzZ0X;@8tfo zHEVp-L%oL0)v$Hp-rz^!!u^OG`e5S&py^;shb9Aj;U6SVoYqcovC;(bEwE|k4%d;k z4t7~V-%kqvFRzwB)#1aKz0Y{%whWWm8i#I2ay`q zJ}Bz4=|NZ(#kevGO~KIzkvtj9Bp^!W{^;aa5Xk+M#cBePjG=%H;=deN0Y`Vh=ULdM zy%Uxb_kGA<;r@OTBxVo#i*W!Ml8p zNW*VpjflX}F4j6Aa@G7Fq%Osm%hZ)NC{s(0tW}3GraIHX!7aa1!m_tQR$w(xbYuQ=?fb|ACA{@(p;I& zB|zj3Wi3lw0mGdH!|l(J)0E@NVap@Ph{$A2ZET7IUUq9eog<^Dz>yh9V({h&c&?|& z!$IB9NcPrH;k<(XfwUqfAb@LFaUEle@aVYj(2A;7M_!Y#=`U?mF{_;h-2am!yo?5b61q zpw#<6eP4@PW6%O(`Pi#6V?{_87#?#bb9$Al%UX8DySItnO2mw^`h6EzW`Mq_9M%!I z6C;CCzROQ&(1S!YCL zKAeLykFDEKZ^A#qF!~8=Vy-EcM;2`VphQ8Fu!@Tlx~4a!`JJqa*fK#hz{3v}o@kPmkhlqV zJ?@hD>PPu)bC@1D?UZPMXH|c`wK+v;yQs`q8sJhYtm9fx@s7^>3yF`nmrk(|8 z%^?cGkt%(#EM=+P<2tD{9T2y~^%h-Y)jOW@Lj{HgVf}tz)B7T1u^8B1al=|4kLR98 zZe&J~{4sBV>bMG+5nd2gZbT)p?|C$jFzwwH7kd*D@&u?K;buj9+;ATGkZEm~2(GV8 zqOQOJE=`43SZZ=IrD|S4eTjo-kKHr716HSjRc=Dslu22QQ{bq&GZBa@Lb`S+GmG-G zH6o-}#251f&EEL zs%U?b%u*dnS*in;PlM-B_O9~!pEy%?M^OeBHW#kS+>9zjUxV`f(?uh!1o?aV!*4#rALn-gps?Eqh)>YQ(F^?$ri+ zVQ?>?t^*cX)5$-OOs-tnMcVB1<11k2K0fTkg%?FnJe=|vU>5&n)Uo=^Y0(KOnOTzo zXEhKS9FYP3-Kp=2zsV52TWV+Ve;fY7*@76hghrq2D>&sfVvEp{8ZU{>vtSr}Gm#uy zZbM%}ii>QzK2teh(=6miLbKJg+Q|zBz@5D~THk)eW~|cXEmBaV2(FM`s9gdtFST_- z-SM_ds1JdTvCzvO6#9Khw7A6OI9->tl04SQLAv7NAGSb;uG6DJP}NuAFZ`nrDbpEN zdo+yQR>i=@y=h$dn}2pT8c6uxD=+h7@14HTLGFwURAlwL;?X6d-G<)5cbcz2Z8flS zcN;^nb`J9G$G$51@c7ha^ zOC5(d9cOxz5h2AU=8t|D;lcu>Ecqz*FZ^z)C<%=$0MV8>3Ta-2gvY)eAzJfUX#a^$ zNSDlp!ZQ8HP0*!mh!l5Ec0Pf!4nD~!;lOgy7UgEQ4@cMvnulcEMXesg9_ZrAAIY;FWSU{1oYZ3J7 z>O+zK*DS7@$i-o$}pq!374MAUXmXb{%lz z6c%^DX(^1Ncq}xM&`UhG6vm=GmEvJ(5GuCoB(yI!?|5$l_Sw@Y?wdEcbjrW{COo$# z7l^tda}!LZU+jeRNL}O4*o%v2W9>@RN3uPG#i-w^#lT#V#S*;m{$kPapJ1s?mssjJ z40|(W;w|we>vnoM`xN#VF788QUUnzHs(9eiZh@-%ITV5&m<(H)rb=Qq@-{#t^SBU= z8M$Rt+3)ap4`$M#^ITJVal>sCK$J`_0VQphsgl$Z(Mdx!OLZuq)Q(CvYSpI{Amu_X z^w&r=u=v1h6!$#=#hFfbM7O&rKRvm4aELuQ;6Ckkzs}{C!}WJWcjAiHX=i6c4|c=w zaTmPq4Jy=81}7_ya%Z6&SmM4C{&bToMDzO3GH{x?MIp9Sj;u5ipwM!F&fo5Y^vE!Z ztLD1iJ(@}=D_cS*cIeCUiFb~HGxy-)uI~+ZI{E3OC03;?!0PTY3c;?e2Yz-J)FBg3O&N*X~mruxpdS zt`EQmHU|+O)9!($gol6OW{;S^e6YC>c)=rzLyg~GNw9#0rd4%9G*gI+{<;R$56^vo z<`Gxf(!c*5$>C3_J}3#KkrdYj_N#>SFusQ3Y<-|ObKQLiuBg;@LNp*7UJh+L2V*r7 z0^$Py75|ykv8)z2u8z^*ytra-!imD=p_#zT-iR&5GSITG$2wJL;NjOu8tXh3osN|B z(|WH3&rsLpy0SYp5O$o_0Joj}k0Ijh?K}1{8_}06WQ+$jG29XY)`4gRoqp`wSayrZ zJ#V>)wX4t=vQ_Z0a@on=ikHB}J;57+w^Si#VymJGUjEgv|2Du^n&I(M^9fQS;-A(3 z+1?$zHk0YP6@{wlC&-O3Elg=YstNkl;bI*U|6Rj{PtaI$IusoCD=`5OwghmPm;+ko z?`i*?s$u8Fc0HgPx~~6$QUkv*J#lt56rHfpT^1_)8`69VFPK@#?kPYgTK-4SyXA?U!UB2mG`iUexuILK$cZfyTtbUQu&9OOSsQ~9_?sGwG8gz;d#wrvC`SGE(R6xe)@r{R1-d#LUpz-mjD2RIHyi%=A6`YL(L9XUF(@r5}oZKv0b!l&*>%Yxt*P#w_95MaT(N^IpXkmBe z?7@lnuWCpq>rfJF62R(rpk>5R9P}PJ;*Cv6f%I~w(#pvS;JgL|g!=@v3J1PNUPScH zdk}qVMYRT6BNO5qnVnUC++se02bB=1MPe7A%Pn48z*$)Iy7yt z(|d6%K+`9&Js5*qoZu9ZjR5J~Zx)*A)Cmm`2R^C|pp(ulWRJr>A#E)G3DJqP@rcvn z8{p|U@OUoAV*}SteiPz$`X@-NOQ#}1`Z_Co^)s4;-9Dq<7D$ui58tNpe1ugCsiNEeGx7Dd=^^l`4^<=g;bPXofvp^19wrLE$?THgoL&?`_KOa D_mMZX delta 33706 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 SP%Ywd!Y8yJEpUg4O5}g?G|@c( diff --git a/source-code/Volo.Abp.BlobStoring.Database.SourceCode/Volo.Abp.BlobStoring.Database.SourceCode.zip b/source-code/Volo.Abp.BlobStoring.Database.SourceCode/Volo.Abp.BlobStoring.Database.SourceCode.zip index 65e54a89fc16276a49f41d571c291284a841556a..015404c21b4695cdbadeb6e9f20364d38ac9a539 100644 GIT binary patch delta 7423 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 delta 7587 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 O=du#m=`-so#Qy^fdi5~? diff --git a/source-code/Volo.Abp.FeatureManagement.SourceCode/Volo.Abp.FeatureManagement.SourceCode.zip b/source-code/Volo.Abp.FeatureManagement.SourceCode/Volo.Abp.FeatureManagement.SourceCode.zip index c580db561984230e1594e2cec3b11cd187d0e9ee..8e6bf057791e67ff2a36ce93755caf84842816a1 100644 GIT binary patch delta 17748 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%0AY9Y%n`G7!C8{P5z&D`bY{_D0~4HEitA>68b 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 diff --git a/source-code/Volo.Abp.Identity.SourceCode/Volo.Abp.Identity.SourceCode.zip b/source-code/Volo.Abp.Identity.SourceCode/Volo.Abp.Identity.SourceCode.zip index 8ccebe30edd6339468f5e25abe3bd9fb992f716b..870d2fc5a935074604638e33787771af6c258b8e 100644 GIT binary patch delta 30198 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%0DsIwEFqIlY6gD5TaW)a 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 diff --git a/source-code/Volo.Abp.IdentityServer.SourceCode/Volo.Abp.IdentityServer.SourceCode.zip b/source-code/Volo.Abp.IdentityServer.SourceCode/Volo.Abp.IdentityServer.SourceCode.zip index 1d3869609da71d0f29cbb5d770d53d497071e04a..87d165f0ece0c7f330327cf1e4d4277fb7d12a52 100644 GIT binary patch delta 14202 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 LnI_nvyOjR{E;E9z diff --git a/source-code/Volo.Abp.OpenIddict.SourceCode/Volo.Abp.OpenIddict.SourceCode.zip b/source-code/Volo.Abp.OpenIddict.SourceCode/Volo.Abp.OpenIddict.SourceCode.zip index 6f017f1053e4a01274b57bd6d3941b43a408b462..4fdc4696c77309a57987861dfdd406b57794f33b 100644 GIT binary patch delta 24682 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 diff --git a/source-code/Volo.Abp.PermissionManagement.SourceCode/Volo.Abp.PermissionManagement.SourceCode.zip b/source-code/Volo.Abp.PermissionManagement.SourceCode/Volo.Abp.PermissionManagement.SourceCode.zip index 10a7c29905176cb4b7261007324af3864f28c20f..2f3c13813e4d59ffe8ae2304064fb6d525883172 100644 GIT binary patch delta 21547 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 delta 21513 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 OvuenU9yMlg%;f)Db%gN% diff --git a/source-code/Volo.Abp.TenantManagement.SourceCode/Volo.Abp.TenantManagement.SourceCode.zip b/source-code/Volo.Abp.TenantManagement.SourceCode/Volo.Abp.TenantManagement.SourceCode.zip index 86201e85db4699e170da4ede33c4c875517fc946..a809fb5866af4b4638e7e2fb1ff8cf0a8cf9bd9e 100644 GIT binary patch delta 18270 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 N3-i#qF@S+j^*@Ck_p1N^ delta 18409 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 O?Sq9FN}0iQrTIS$;8Lal diff --git a/source-code/Volo.Abp.Users.SourceCode/Volo.Abp.Users.SourceCode.zip b/source-code/Volo.Abp.Users.SourceCode/Volo.Abp.Users.SourceCode.zip index 15b9d11a92b2364bc6072b888c0183369d0fda7b..f2080d9ce3d5fb5e005f9fe1d86b22756fe1fa49 100644 GIT binary patch delta 4514 zcmZWt2UrtJ*G@taDWL@eEG3jkFVdtpr38=~kRqUj-h0QOf(1o^K~OGYR6w~{E=9SD zU`If(qew)!7P=xTprH6K6F#rGKhLwz%)aM6=ggk>%+7|+Z`g)!SOHf@4o(6FgWSPt~I=^{3RYk30Jt#X57{;JP#%;JfKgejf|4me@(KZPzJ4gU%P z-h$pZJnHJR;acq}PBZ}y0~j(A03W7OB0_)^qR3Y)q&SCI*wC;TOgP61MT=hO;qQ1$ zn~+2NE?D!G!O!d!R907WI!a^EdM?j1zg&7+L!rb<|CkT;dzxc7xPf70G+zl`AqI~o zq>VBzjGr96M%bcuN{6>&m(Nx?3v-LlrlAzE$jIHkeSMOR!@8Z>2L}ia9XK9=hIk~Y zSz=6ToU&n`V-0a_nf-3dS_b{eAB@4l7pY!Mm64tBjW4tBTT8 zu7hu+A2lhIJgZ#lGZ{8&t8;IjD6PvqMT{NMG?g+nkXKI|d8i*%AQ4%5DP8gM8IP%N zLuNABjOslDU#pP&RkB`A_}Rhz%BX4BqBec;?Z zE>wjR=+*R2Y#U2Y3b7xGr6}%>Tb_Un$v6m1NHd)itskN!)#~0I=pRnF$^VvnH0e0zfn98SA)N(e=M zYD?*Pyp|zSt;A)dSzR${Ns7STu%gc(&!(cY{rXyZE81J0gub&rx9(8myX%CVbv=rF zr*^hQ(7H2q_E5jR;=Vg4AXl|vXU_IB(1lic)SJ6aIZv$-{X!_;m`~)8rQ!^wfY{ z?<&TXJ0^^=kq!B*2w(o&xKPjXoc~+dGjMa>^D?1 zN*z2tIcM0?k|K?Coo9x&oE`VAH}3abm><)gYZoikeq2pDZ*cBVpZ8flg+-V0%wU5h zO#b)qgnM`ApS3jm(n2J&u~1E(|83=_!!kiE1s7z8pkOaaJ}dmiWS`^>NdI+R0ocFS!d=~+}i^Bw7{B@UM8UZh`@4s6_n9W6EzjEntgHGQRq$|-y|E2;eS zsMj&RYo6u3xNA=azoaOK`0rMBJ=*d;CWmBG5q5Y-&;Gf6R2k2_ZM<7(!~UJ-b^fI! zFX9=QkIrM%qeY6IPGPeL)4k$U$@-@rlW&iu|M52C?jt_iygLCR@BgYja?*NRft~z_ z=T5UUleaslW5xy*X3xV8oqZp>DOK!wS#LQH9mBS{fR@rbSaYIs;L0{q&4&P1?F~x= z|5kIa091qoFrywuFEchcu~lPll6Vut(+6kM2V1ob=h0FiEFMPwtqqfLN$`UX>eeV?*`$9$j~qGFVp&BYFW(_-ng7^DO4w1j83k9k3apr>6~_H2+fLYOlb3DD-T3Kp056)>J%e z_v7@^`PQ}FRXSLF_e8NAE$cT@GpO=;Dj@@U88wUYtwp7qH@hP3e5Rs% zs}IZszB>Bg(;DloZT{LC5&Q>R9FL~SG;J+#t*pMU8HH6*9^3~ekhBsVw?GAdq-y)7c4|o1U zKdUpTb2LOCliY#HgH{!EiFAt)$colH@-FSk%t4*;f!a2{e}AI zE_BSvS2$`?w7lLv@%GRukuU!dCOK97ayXC7S9VL=%w+a%|BN*;FF}U6I5slJnfct! zU17h`OXm0Yr#l*jw$bV)4&|S_zxL6I(j1)k<3(?!I-S*YH5)$msOgS7c^}G--+}$>JIb@R@ zhrms|pv}#C!j+}z%)y|X2l|bZd)^l7<%~9sr}!_4%I9TEKdshs^xFGGnR1}f-7iFP zs>A=MON{6b_Se&|v%g8#)DP~AreZT^tnl*jUZbIJqK)eF6^Fr4L4u7A@J}K)*;yE~ zczKovtVx>{1uERMdgEpmLbF-VnjEurg%j}6?#HtD;G_LR*aWvIHY^68V+m`*aB5{u z0-WD)Le55yyDS9nDFG)y)vFs?=DoJCEMDGHtkfyKN-X5KpCkM(1@8l9A@^ONI}0$T z87zO|f+U*dvH@J8>B4b}rUyrbU=|*_GS&r~L3})z0!RH2UpSVmjME`8@IEj!6MhZ- z`j!PFp)_c53PW(6VnB|t5u6JXCoR{sFaF8fQuL&5LN68c`uER>2olnyfQz^Qz=z|Z zzic>yBZ#lSf?zm=AI5m>jgyc;9i`CA;NJk~EJ6|`lfYDj2)Gk20%HuIF_{0t>WFAb zEGx{fuQ!hWhG~{s2_p^|5&SUBg$M+v@={Nl{_NLQHF(t75k9jasrQbaT?cu9~Gm#LWbp)U6$yDL}sHTnn)bIT-g%>MvRA= zt0NXi!2J5<<@aV1$O$MP)E&3p?rni4KlJKq8$Vij6&&`7#70A416{Y~*YZ zpXLBlx1}LCV`sRc_;g{gCY_bXJ&fbqvMUAs|9~BvE6HPptP1^)r6afr^zeZ%8Gf+U zO9XsQ7lS6g3!ce01FjGbZZ`;sNu*AZDqO)2E6Fo%*NN-D|4pm2#6OWn_s zB_c~HQsLef>AUg0-f`7?@8|b>f9K3|p67p-=lst(>ed)~))?3wZ5Ww&Q79A(Dqlw= zpZy@?h`LB!oG}9<^pn=ekg{X50yHpAaG8Pm2$y7*7?|*$rH&DL~T@0<4) zDwMi_ee=-t=;0%;Q--O;0Z)#`s>kd>ogQ+u9bsU%5NqavJm%J-tN*#shw|6jec;-s zr{>%P5`cAx(u)sISZ(_7Sw}`iSfo(5xn0BY;g!;{6Jg~irM};lS?(%+u6CmMP{UFt zGuhSyADq^!DJVN{LkZWfS&-6@JV+LMF}Z$xD#7Mj{v&kp7dejHGj6I6x~hEC_?ucM zJhPnpf?2p5zJuxB%Z0WdtLyX5j1Y!Xd?d{kd6>guB`N={NOaQl@-Iv6&@T@q$lTnw zekXF(LF#TH!sVIdN<9$R*o+R@| zWkY+`TS!}Wlp?%`ZEf&%#(c)Pf~%Fm9=D|YP59FobT5|aWK*4Xp3J;|fG55|V?pRC zEfXt1?6;H2#~$aUls!_prG2OL^Pl4f8r8=ls&c4H;EEMVxWy8@+rrybG?ltC2 zYCL|RrXc?974zsjtN4#ssY5~To;^#ob`{{R#OcaBVeE-L;}k+8O=Rv*?1<;32CC}Scx~(5eruAODR*N-0UAJ1&&=6=QoZK7}U)6QD_x5`u-_dy5ASR4gK1bg$ zptiYcMAc?!feo3$w6kId=}wKr4$T!nnN35183`?LRGgZsq7c4aQV6zYgN8a~8K1&w1AFx%|c!%tT__XRqBW_K&M6KK_vk zQgvb%PsEm=Jox=a(Bp}jaS~~%-7{u zUfM7bZ@FgrGXGd*^OK?Yz(SjQbxQ9ZeNRl9cve@CAe7FeMOvHqX56dQuf%vk-~&&9 zm>W~TU2}=&4Vb$p(08sEC(_Jw=Dw4 zgoVM1Di0Wl+O_QzyMjO6DUwnK?9{5#E4owh+)qRfLQW+@PC0^3E`C@$qpAc9RX8cO zqA`xO{10`xnk4(y8qRCAsg#5}Q}kv9n$v8mUtzNl_$~Aq%%A@SCoJEgfdRK@3Xmzx;+s?05VY_fQ zN6S&4tkqVETN-m4G7VmiWDPzjoTE}sUrA33XO!hRF65p?t#jo}mfyjzc|FR`rRb3d z*ZL#@U-lt4PVBR+_|T4Lu!8K#K5Z;8C}UeSfK?Dw`0 z7(tu-pzv^+c(Sy4p@pnzkz6AbSH?;}r6+D+9o`gy6K{vX(xuj;;NIEPNX zE%wrdoIyj*7{JbKkXXSoNrKWyHQ78RGnO;fv+@GVaGg0>f(jNEH=si@#cOY1vD`Q- z4e)OqA^1*IrsMhISV+^qk^Jg=(^uHBm|N8%nY8zuRd{Ym zIPCIfaC&#rc~5re@4l-#+U*Ok5M zMJ(TrR~dDk6=<;(oUg;@#>6<3CHcx~*B6-$ec4zU^W>9?s&;Mj99xRf*DHuqHRCM% z@ZaxR-<2)g=L$34@BYG-z~#Z>)OD9Z*r&(vmamfBsK5=emA-}X0~K!R8;hcUT$-{a zR%ZqA+H|lrg|nS~Wl3Op?f1=TvNj~|ICDS_L2A}*Cw?R8x0u@YdG7I#W=|z=SK3>3 zCxuMJJ~Ns*$t`&q<0aHX<$I|`C->Y625Y$DD`Gw6)kvuVh*}!WA%1 z_`Yc~7`GaL?XI@Apff%Zsq{*=Z7aP(uz$q_b5vZq>By?95L^K~?vLS?8FwFgi;<@Y zyp3pn-tu(h)P5WIQ42=>KEvETe`h)%9jLSUJ_bI4#+wb`a^N1g90}BdOKcDwci1Ya zL3kK{8e|QZV!_^UN!}{Qf}`QzRw1eI#@&7zgZ_{}@y)Hg{YHb<${xDRfBZcGPNBZA zx-JxlHV^<#;Ud6RkR3z>?~;JC;E+T4E@*j^cA!v-KXgz{KyZu90UX1ya18%296CxE zf;B-+7&ojpFL$_}40T)1ib9zo^izKmnSmOP9lVXk!ejmMG(@3v5Q00vG28+U`ty8D z5u8(EQ1AP|hj2ldxP3K3By|MwgE*LtkOo!}xPMI(N$i){BC-SfuwC#FU-&cJmW858 zL!UV!>TWO-;R18=__E!tpm`T#P$(w^ryk-E0K3eODI=at2yQqSjCA?eOpwbWB@ZNd z`L^$U$T--GoG2W6r@~K7A~3uR!BI-v@QkVq@Qmh$o1&v}=ugO|(P(kFcf?ZxF~aA{ zKgCi4f>Bsl@Uufc2tk$VPXZkf8wYP4DhY>HR0o43abQ5g!Nc)}ptZlDAB&H;8xfJc zzyQexmWsvV(C@W?(;-n%8~gwFvJyhtqrF9@cik6@V-N$5hxB(l+AyGbQQQC8dX*_s z3WFe9=UGrF3q%M2@m=YA>F9*9Ucu0JLVkkqy*F(gpHG#<5K>IKcJO-P?IP_m;5TvjC&n5Vir}^CPkTwa5Ipb>o+Xr<65!WFHfUbF;B*3gs28E8SA?IMFkmr(zFAolp(d-X zCU(GQ&AB}jF~hcVYf$f|&}wKPM$u%wB@l;aG6=<3CvHKUKrD$K8lQwi1KVx*mn0#0 zkyB7N=W>{!Q&Jd(!Xv^u*>90IZy4a4%nmk^IN%<*l5yz0F346nINBlyJE0wl(g_XH z7!i%Z4REFC0wXupe{Hc|8@sB55Sa{pb_kIu;7sv>yCkLH(2MR+x=4dxQ#9bdlGbzD zPeYavp@TXBA+z@UDdTp4fmC_mnyLni6b{anmqKJwNEm|28sbR!X`=y8i3M?|qlA z|6S{>nfvT#_Uyf9&&*lt?C4Xth*P*niZbvBcrY+9C@^MkXk#B4!M~HGt#TBGg@^pD zse|=E{M`XKkQbrtW0VM}-~$R7Jhan}4!}Vrs+a>%fD&ut0YJg|0R@h64F53j&#)o7 zG?ii&zb8Xx+<-jKfhS7LfJZt8SU0K#t(zS~>|FTniM#DoJahgVu$Y62<&o$>)YEro z3s&5N%AcL{oLs)vZ}VzZ*-x@1OB_V&W4(=89jH6CwC(-Q|qEja_+!E_< zY~>kgHPYuhlNbc&q8-*hJwf~{Ks7H36`|hLL=eA)g}Ni!UXY6baRm5SxaDf%y#K{vVANxFJIWud+Y(7TUfOjX&qnS<#Y5i~SOl9;1ax zM&Yw9Bbhiwd#q(u*wJ2r8Ui~<5jVCNVu+76- z;7l*QZ{3Ax<`_@?)dEKp;u@;Is=h_9_QDPgMwF`7+fFr|F21?b%DC3dLfSwu#=%{jQj#_T7YXYlB? zmJ0E&J&wn0>}LLPqMx(32kXzse_2x})Pb#sTQljjtR64)hY1*DI>p`-E+vQO8)?2$sgN&a=Z>}yF7__cxQ&7;nTRerXTinp$DuY9{#MP#u>oF6MajeMZm(Bd1&9{o& z$dU5{sY17x{q5w^>3vvA;MI@jM6vJTAjtN3bbDosp?!U*)B){N4=uvwNmlP6_-Z-@ z*0EQI75A!{7xZTwr>AenIMZA^-Fk4CcRakG!g&cDbAdzfegM6bhZ*@IUWV*6_#CToqVOpc(H~>C0Tj zy&w$dSEEVDXD&Qi?(Yn{u`em8k(Wpk9i3zTg{U>P)cPy|!PJTcz9xdH;44ttAE}zO zvp*j@i#=IvZ48h2v#5_pw6uy;aeR!C&uxx_NkHIo-(aZ+yt$#tE#=sOZP)g5Bsbcr z8nqQ)s{O`2Y^}FK2wtI!f}3g%*ZWk08&}99na<%ZV(+eg-eY~dh$gtac9DA= zix;L5U`%7gh(g75m3)FfBSv~!JaAd95YM-p8tI*wT{97<-9XwSr$ox+2vQw%ReITM z>cpd%)9pNim%s5^28#z|%hE=0wkJkg&AaB_ELQ3x2%e`!?oTnVe)my&@ykKE6{*=u zZqjS1RDqidiWSsW|I6IdO94sn6t3Ux#QwSaiKK~`e@MW9QyEn?e;3+rcv#U@kElkx zjwT+SH?keCO<}&Z#tR%e#BUfbeM_t%ikK}C^E!1Y3C|>b;;e7pRvpwy+@^9^KRvbO zot*JC;RSQ(*zGQSVSQRKO}@WpJ}MnBbH}<&@d(9FLLtP*=#c8(vh-S^;yz+cNIl+6Un=Hh&P99@jr2-phcCu~>nzSQ zliu-n#WT7QKydfdoqA5&ieQgDOR}1(7x3FzKdZKh8jI_yUwrs(=(b|-(lCdGnI?bz zxb{UIcu7fO-&t||{PIHGdZkvvx3Tx0l*WLiE3Kk|lnssBHek|j)m|tKxeVOq8(lYo zyJ|E@%WmkSwn6g>fxx!t6TN%L04cs$LbaQ@v)d<(#;70y#sby;wCXkUTu#T26WgGi zPugUC*J^bI4Ef_TjDw%(8t7YUS(AE(N-ZRI!Lx!(XPRBF>)q@V<1AICBR^fVX#BQd zRG>-$r4) zCC=JQDnnVJh?qcIy^BLrT<&+=?|$+n@9POMjpTr1Gs=npc{p-IAN`4k485&-1k&^IOx+i zI&yQ~hZZf0uj_KDWcJ6bd*J-^_|S~grLkcg)L4@BSd)O3;8^388|L7cBhRCm40g`i zdM2XXRFiX4nuYC2qpD|Eodp7)w_*-LiC6X7I&Li~YmueFv-~{aBr>CQ0{Zgrr@)oh z0jB`XZV)|csr@)sn%3WmHi8`|wg@FGr#b$bN3AQ^(~$$KCvVODm6+9|Guomd(Zz_vno6ID zu9q=(&#Kcl??pSW*$ob(-HEX!-3-0nc&M4`64xTB8=3^6Wk&O;uf)ij5crVN6nsVL zxyzG#o~@Oz3DlLVJ0Kz~`d9M1dX(i(j2j#;fJE( z5NIl_swgSbs5uLXw=`+hTNSr1+YUwv;iYX4yxby^qYHEu(sm(p zj0#b?+hIVSIbom@4V^ew94xxK(=2H9yr09=#OJ6XI(8Ukh3rnsH}Fs_=!V>z%?7?L ziI5u)^&Mw4U?474j`bWPOc%2nA(U_;G`O0x!hoj54W*R!wO1&HKfx$LIx%@-n;8)x zz&rF}UVBYVK()EwJS)6N4&)nP6=m{(`@IatRLE;ejPtwb|x2~2i%oxKD~Q>wgg zxzH1LkDXbkKX}wdPkf#RBlz5>>-^V=X^r3MkYfO{8N+T^Ne5%5pAIIcR!%dg^*I{k zZFi8%)h?IVaMzwxo+&^nd`PK2Wli3P$91#oXh76sF!7_|!qHh`)55$XZ`LSMis$8G z%K3S4lQ}w{&=G1W4|wQ_fVj~C#=Wbn7x{P1D(uX6>a)JA{$Q-F59g>87dQTCTq!Wr zrwoNSlJB4Bet)`I!;G!FZln(LT(h99tMm&Qc24a}ug+5oHGO$9-o?o>j;T{sk&!5Y z$@58j9^Eo29J$ctQBZDk=sZhRnsV^q5B!bBP+GRKIqEkU$Bf|WtJ`7$>-&9nAHkoc zt8{Hq-^vgQFW$k`rz-h{D|?sjZ9-Y-XDx@&SK@K_Ioj8RcxTW>E}%P@SB71zm1 zU1Bd^jYs1lk`O8@2FHdkf1D64!sP&VDO$)YafNSviL!3;R)FX-@$0GOBk&rb>lv@T;re zpGbbTH>7?kxPFT(#a5TMfZT3(U`bUb@Ym$s6Aq<#YI;&uM~9E{Q;H>|yQN6|oNr8P zsL^W{zVt1YfH&5yo)=BX3wDFkN_F15Z~WM*LpU$lyO0xZceaPS-q;By4X9*g5@Zu` zpcqn|LXHsFyL?w!(u0#A+SY+~F}6Lwj-{2hC*xsk|JKZqg>hG^GKA156p1y8o@+9B zaNy1EBd$`{RK}%u3yu_x4uc`udpn&uTdaKhn1v$(G2m-gt$K{uvj$i&@ed1AQJW(v zPsFRbuxkN7eGqabWDP7ZvV~PtcyMWR!VoMadH}yEMVe#MkhCM*vCn*nv9gC^AW^)l z>{#P%&zN6i)D@~oxC{Dcg*0rAJ}hQIQdTd^FSG~whpbgiJ*}(js!CHLMY4*Au{Ydo z=__{Pz;W&!g=(U&xbapFSz}^ZLi-QL((r}Ah2hGkb|j+9E*yx)SeuR zw|Y06am0qlKa7HEj$;F!df@_W>tO^(cQ>0iOjnbWt2uosJ5 z-@WcG$@LNu=g2HwH9FGKy%$9#H#qQ=iW%YSsUACp;oV_Q9+BKib@_+1L>d=YB%d^Ic@%#mCETB;`7)F_u`ZEm8pAy0xdD56 z2tFK@`EF}~r(xGIyEG=6k>F(T7T)+7zoIZ<&7tD};gAq_tfy3aC~X)t=|&p( z%zLjE$pWaVC!GQ6>a$HBA;;_o3e60z06}S+B<)@cV;{Mp7=rcr+hkm8KIFmT8Qea%=8dwK zs7=2pUwpl?#*44dC%ai(WOZUnRRC8C6x5rF84YjOYK>Kur9GRAG=FOSLSEnMiEFlV z<@aa${+C=zzKeN-AD8nS5b-@Yv2@@y8+8E%nh+M4ehI`rDzAnq2rcjs8txqV_6d$CP?$%#jy zZOyvRznO=IelmcVfyl64e1_(02Fw2>J#Q$7*@4KCXg#X6K+S(%+^&U6Vt8a`(h%FE z=809!foGle-g>?SUx8Yw8qz6PJUvZfLFe)*PQ1Vh9z&!=sLdm9`c&-*0k%mNCRSp- z{_|dcvABz9?1;D?^+IyD@{%^1Ji_bc@iY&jq-bNZAC>9lh{urk*A66EX0X)Y8=;1*~QrNmb?^${KVRKM#VWqot_K2=%@j{g`x?b+~L zzd?~{2YJMISsAWw&o#nx*=FGS?I))`pUl$yeUX{3O>%}NVjg9PPNsvry}}WVE*|Xp zK1(xL`1%b8K-M`yAffj%>zT~hud!nX-;4I;x?{4+Z?Ep)xZ@dL7ZFHhd0>B@j&=M3 zpXH38Bhi^t;i#f!_-N5z8|=o5bSPi%V==kRIV1QPIkeN^eKBS8qz-MW!iK@e!ZF7A zQCWQwXRoK0J==M+pxk%ajy-u}va@UvRJH^j6*?u|qqmoLuzBpmg!Vi-nA8Wih6oyW z1lC_?K~qWJqC?=B^l)4>(tEywCNI zS3{_fdXZoCvp~ShJzvP~%)gy=p~Gwb@aRQIC8skit$n1G0a#ukC~HVv^K2| z%IaqV`0%*#CZFTk6TQJSA(`$H+Zr@)*44aShKYVGXN+XzQa`FuVoVMfHz`34=zHdJcuq#6NA*CFG+ z<1c<*&^DbGZB?*t*L;`BS^f2k*PQ!`UA^+qkBb;?o2mtpa$)m=4QCc+?p9rybc&n0 zAm=x=$O$&RMbe)PVSLZNCN61D%?z?qU;D*uRp7cAf5_7obSDr66SgJ=>$7_|xzYJ; zm8eM4bLb<8Ju=6b1y2gw2GTxl!mBkQ*yE!@=6>SULTxz~uo8E6Ws*_G$IKL9ILQ!Y zAzBmQx-@cjX=sjtOo}}(TmOviqwB6c(NwC0p!R9fQg?M-ZB>a}@Te)5K0#5p0&@-6 zgzdwE6)RoTxzj#30Dw&kU%I(z_Tj~0^Qd=n!j~on@-l5b26tS?L}$I|Dn*l3D&ksl z`0yl-z)6>l#;Pw51Y@OAf zGUq+Y>|}9X4W?(9dMma!ot#E*}+tf+_cuu!Q%|1%jH&~@=t#A zzm#2URxWI^)QW(gCnm4m>zU{aEY|A8_-c37_x>dt?MUrjoFKO{@|WslHGGN4J|L&E zkZ#R*_0+rRN|V)M_?dB%3=ir3?n-|t-|BOpo8uoZFTwlM`%)|!s^i}f&Jib^;FI2v z1loa|Nf1#<<70Iyl}w-}XH@(0BvD$7a{9aqT0++3O;nptXG~)(O!!wy zh?gRMY?~{Zo>Wy#)4Md)lSFr~8P!#7oz!1Sj|zY%R?=`UHNV~RqE%?|8y@fA6dj$U zM7-SdBHwe5xexo)lR?9R9rx%pL%BszDX`x<2`#au|mag3?iz8s@JkhDDhhGL^ex zu+-M#%IQ~f&1iRW_ophbpDe#8zd_Xy*2QLa!ZE~VU?Q?z>g1SL@USvevt05lq&N=} z&j_!KAHkX&D|r#V>PN~*-0f`7WQR|rqbLxye^HP=Q zm%6pSV)S}d!{L}{I%l$E<*pw}!#7Ono54KVZBfU3f#dl>;U_xB1}jwtV3a1`-INI-gd_T*p##;Qf5A!G61j`Walq*y%ij{3Mk>`yZd5;t#Q5WI~U|AA@=7 z>{DK}p*yl57uZM}V|jyn)M-&wB#Zcm_>&2R@p2SluZdtMN{YLe4PXA^5lspsS7&m| z_2gzI@pW7u$+50Wm9Z$8(q^8JNhJf7k-fN)=FwJ1fBdeX&#-aoQ33n2NE>I(8ST6w ze1Eh4FVnA_x*xF(?I&?Go-*jpH;#be8LC5aLh!>>V~F@4o6+jI>SFX`mtK*pYK$Ro z{_1C_#lo0p`jYr0t-fI_lv!)3Ha3EBLUvAtyK&aSb|MwilqVrFw_4Vz_0@$DYq)tg zCZ6bXZvrGFoUbtPhsvOQxI$NxDDHyOGDVo89%|OOO zao&s~-6Js3Fj_^fwTfWA1 z)UOyX)NLzyPFB>KFG;TM@{OWq;?=N6AWPCSUpfxsY3&?Gj|}uAHZNATr6K0_r&GG~ zSD_une$M!6S$pVe2f)jIzFS8@@Q9}dQK1hkQ5Yqq>1^YI*1 zv!Id+mkNmqE1}70_Y=$@-0u6<6#K88&KA2rLCR=dg7hbh=%}qQ8{{(*U`3)$G5jAv z$S3d^=-+MH15wD_h_&Q{RSVO`gG7dAFP|iy*m6f9rSf6!bq}bywZ0ROw6)k1l%uTg zm)}uL#6aY~=J!e$jwxoJ0ZeX<$J{?SB=xf~cP5z0Zca5py3x3%(gp>{{Lc5O=ohlL za)n(`C`GpPj4I(IwGrb-&1V~KQGDb`28bxkbNdL(=96yRN>5BWA_ccOZl&}&knhuz%LRjwong_uz zY9+izK2+BR#%XoQH(2N`-=tC(QZ>>>jCzj4EmCkRInSD@tJ+~DlvB_hrX)QFQsU-) zalMkuuKLR8tFkHI`;+tC+JDx^0H=6hWjC; zeyVviEm}v88h~(>TiRiIf9a1{St5e?J*u#uQ$};9w=s?^DE;%8)?shc*Eo#uX>{Kp z@zchZ8L}C&XL1$nasY--;FZIlK3EB--+R2U^D;@T^gVx5ffMtW&(5A1+qU5I+wo1 z3W@D}y%Xn8sj7-2W|_kfnyi6A8gJx1<4`-=UIFmfSd`St&?4<#9=CeEcx}~XHZZq9 zFxsO(^V0A=ZTPe^ec5_{19v8&CIGv7n_kH+F&GxDtd6Rvo*R{5yv2joZaG#DsKAa( z)*ppU^^mwTiz{8|x`EGLnp4W8)f3|(;?-!0G{iTv+6a$KiQ?&<^L$2%RVP>`P6;H; z411R(mxCzE$55Z>LCrKPjEXSd_UUue4tnwhDkI)`3bvHoqKpg5@&Oe*Ve)pGlBDn}(*l;M6gya~B4SA{u>7T4h-l;3fphe5 zXRts--FhL95N$sFxTee7ceYVXtpSveFeeI%1HPeSEZ)D^J_?AU7+3*^eEZ*+zdDD; zTuKxLS{eeVh_68bUJ2cYl8IC)3}{&iP%Iq)m9WZy9+szFAnDr%WO?9`U|?h+%fkTN z=h6eka#-N4q5P*rROqty0iE)ZYXwO#vPr) zy*sW{@q}vg_Xn{kqo5^ZYv%7|UM_-f`d1Vt$BDp>8+Jv!^A?ED3uPTX&jog={-=^6@IsD)N)gkw%W$j_r44i`fJ11WGUD`R2<9G)i>6_ zUPu8@9RTYl3MiP(LB&kwln-j;EtFxQc4WgTw-H08q5o}%Xw9+Z(+2{XwfIBF)JEx{ z(`=jf&@r@EdN6?qX{Y)Qu(pu^9#taOpgN*FOr3*h9C!(tdh)mBfGj2#5n0;GWDI;5K2K(Yr8deF0nGeP7% z`$NY$lmY>2RbnJDA~aSzKm6mhAdb1h0PF!wKzS1h00-DWi>ax6sz&PdlEbkMcW9ewVfZFVeN4!uWJOXnXpnRm%WF|IcPb zKvPcX|0==&hfEh}l0DQ39cJRgeWd_kK}-N8B`U!C0RuWr>H`Q)LIA)vqlVmFXh66C z7NC{(AgY3hXa)Zxy8Zy7{B6x&mmVZi|NQ~Nf5^Y@z^6b=)`Ol8Ss=LAuOK3N04z!X zq`g98R+NE-!-M%xfuQD{`(b=9)vT`s=d!iz6ZjQ7Q>g=HXEMjvqhsf!hg$@B^aI z=r3Xnpp@qTb&=AR~aRXO>VAMhoT$=g=T=)v= zBUN0Zy*I?1e#oQvmsup55F!^~qe+hSKfwbY7lGgqw4i#VwLpMf(Zj615SUUM3Tx_8 z0U_F$|BQq!2EpO#{-H1ecEx{2LSQ^SpfipE(AFdSj~j;&I9ngW76k6}k^fO}1=*@LHPWgs|^IRp|0F3PZ>tB&yz1Se<#RcHPY z2MYN>Aixp=2?9r!$iTOc4}%XN@FQy|ELDyRW$KrM;M8oOQ1c(?GXyHJg+fdf4=j-i z5S)@d6e_nz{%5a3FARv)zu&C>b~E1rI_Oa)F4WEcTp|Au5uAXkN+AGT`LH7<#dZ$X zAR6cYA?g8@mCDc^0ljM=oPQS}2Y6ETumCoB0%A81&gMUH-E@UoHc>?Yjl)hA5ulHC z4e;Jbe*_38$`Y){MU86z`^zA@z=QhI zR}nTJO@T(-f;QenAPeLzF%B5}69=ZurNUhV6E`msabI6ma|vF;X>~e}Wa-+X{Hr!< zZ^4U}PQ^vHjME=4mjyqBV7-gYCp+lX%OzQ)rsYVmu+)iI^`?)czp_g=4K(Xzp|>cN zkheCNmsSd(slw{7)nj70ihD-ISzDApjPP2&*MVAO5HE%_w(@%xvythuA2Pk({xxZa z{hc2Bmx&LuL@SP(+Zg{$PMrXW8Z48#7%~gk{6J2hxWaOL1>^$Y|H;kNrI2|J9u95+ z5e`lZ4ic2911``6IWLIg`c-{>Fuh*3XP5|8_?&35kN!NT*l&}LeOr$lWkcj31L5|D z99f;3QBAwGsH3GN<0GhR{8zZ7VaU&RN3pG7`AH=ycFN%AJ=`k$Yd0^3PqEZ!_RiT0 z6=vx){gj3sV#?nzh0x3t*B?>NdQ_VYk?n>~Be6y9NPr_-kur}mXFZP-Bq_5^zm^JN zY0zPejOfDAYNt|m78k5NJ+heWQEH#FGcY& z)4_g6ViC-z(No8I>67YJP_rbgbNo_2DR~||iFNv>($wM`{Aj$?lT{I7U)dWEm9bmE zv3Z>N$*GmJbs`%;oYD5aMPVtExtwQI!(~$qK{x`5=RUzUi&D4)gVf#ZDheYsLTk(9 z%;bVScgnJ~A|X9h#CGw`B6j<8rY4|H@4EJ~)+ca1M~M}Z6AL#*9Ah%R3U|$d< z_hr-ho%9H}_{Yvv5qje0S>H`MDG?EoOy5y7L4r6969AC=+9lwo?XLK+w6?tRP=I%m zKr<>utFnXJ^`JrbZqF>gp#tTqY5`mvCnsAr>5N&H7yf&~VK24_Wyb3VFfSr}ffD2- z0t!%D?3MM;AJ4kK-7vvHlK&I|rhdb>!jz38@cS%&y2}}iCuIHdNd%8;Zm6iE>yB-g z&yZhhfhwQ8?wH8~v)Ffr3r?5JX6J|V9V#3g0p%%eLQy~8lb)YGlGBV|N^Xuv$7}iT z*u&+2y!l`)f8yrj)2=TnFqw3H{p{mFycqcQWUa_S|6Y-pNakHa45yWM4_G3!pnSM4 z{n_(xcp^iJar?)i>EL1Qlu4`Fp{R(j41je?ZGVj^;}5vVA89~moi&t=+YJlWt49Zo z2O@2eeFg0w?Qa~CHOGN_Q#r>>r6G0{6%)ZV4O3(tJxP3Y73Ym%vY$6i?{~zCB3gI~ za}=d)WTv@2aB!%ku)8!Rm%+|BtH!zaXD>mW7vtf(rz1G#?k(RPs~KI$$(|Z+Q|y|i zp-1&eyyx$SfaD}!5_%2lI2_)Y=B&JRwX;s><043QqD&iBL%+s8iE`RRjP9m!wQJ(a zsXM@bUtGiZc?Q9d{=kyo1;@DlV&`H#h3!~WwWETfDm>wIxTiI8JRavpPM}19sX=Z6NC<@x5ilvlhlfR31`bL#^95UW?EDe76u|LhSAX=z`j})Yw zIKcmnU6(2VuaLr;Y6<*qDo~K@a*_f?fg68fv$w5wCMnVC*CYjA&`WT@^@9}ieTU4w z2MB{Ji9d}{WD3e>brS>uPQP8Uj#a*~-n3_pe9Z=nLpF4_AlAG`qMUyjK6zFSUBqA>cyF-*`N(* ztn^BoTlG8@4p&_r@HKraM^jM3!A|T?cUmanoX1ehaHZdOWzf|p*Yd*wZAY_(cCu1; zDA<5`8zDC*m*Fc|7ZPBV!u#1>`{&OE9g$6G6Ro55yOmHluV10x7%tdO*&AEIfP0eo zw#c67@fGAxu86upjMNF#D)mUoo?c;R{F0VBZ)zMd8r=l= zF?&B<1+1@T5J@BSa(TTVHNm`Ru3ilsR-mNIEJH1K9ImB#O4IfYDQ>4FGlX{bgLgcQ zU&KOAI@;nu$SB8rXRJvz`x2_gq&o*v1Gviy_ID(o`N1gl>O{0V+?;ekDLXqi|r6Ww(9Cp8Bmy|ZPtj)Ai z&m!g0>b_p|Mh@aj)#QgZOqU2&>by1=a>MHj*GXVz&+42RWXCft${ZCnz(U|LZ zL5o!a{$R1~B)g``DUb7@etX&R?ThIwt5Z=!q@N(JH;SBH$kU5EaG#n;oNMQkLZ=5A z839|;#^U9p&->iHhFVw>1$6M&5a~RxP%UCo9TFQoD)g79nEiLFHGI2)4)w0S!@K*< zOVPs?t(6gbI-9@ktSfVCmdl5A3}-FPN9=h%z5;7j*_{8fTBNTO;EIDpIU88vxWAJ(c~Rrcyz9380UvtRh0*}QGV z8Tf-~l8|@7;{14Nr{dGINXB-8pk$(%xwVH=w7~n}Cg&PY!a*XW1e#zYRqLFqBz;{x z@0BgOkv7EWM3$bU2hoeeZ|Nli?N5+a=x1Ut3?vopwI{7IOtuFV(knOVE6eh>s>}G0 zr8LPd=JA}5_(bC4bSB@9?HVX~N(CHRErJhfP-9AdrggPdfp0K|#`nEfiuA=)7ZiW| zWPW%iidNNFLZZDlC%xW}K#j}3vb_KDtBW4uPML*kqmt1qg6y*>^2ETh=-g+mwF5y0 z=KsjmV_3q8fcKbfQ7I=UD1lMp1f}!0Ja&GCQg1X;xanEm}|=`ySq-Uurd}OEu3lK zVr&y$cE@vc-EjCRh4@awIn*(HCzTFd)Fg2DiflJ$6*8M|#{0Pu_>||>#`u9Q`}U>! zw-veXO z6UuN0bMOb+zCzZ#yr~?ODaPsRq@TqU&I4DcXL@Tg-rjYVB!9@6vM|UrA}f;PWw8|n zkrQ?;k&jGt_m)g+6LwL%375YC+vSxtl@llEaIScFfucaxs99?aKZ!a?h)(T~J7Tb| zjE$GnXmurp%TTKu7;8-zqZo%n8PXYA(pfbqnKP9gzQ<*6T<s)d?Ig25H|id0)9(H8U~3biTV;|f+#{@ zTd36$$ApN!P1=SNsZ!f3P{kY~Icb2V!BDSzzs9cn=)#+u`_6?orJxa~Cm7Syz~}_y zB-x0ZYZZzLyL|Bgurb9eu$e&e=Q6A7o8wG+FCB*~hI^z&D#bMugx>?>p|AY>da>j` zW$*H5N`fLyWArm+0JRjGFOM|>JLJAghYfk^NGMYM$YE#xdKk&P#OSj(m1=V{ii%{B zW5X+`L^NpCrnRGpH56=ICwHAYKWJdrOl~7%t0S;a;ybFpAyV3u3=S!8bH3x#zw_GG z?N|09>vCmSk6w49ydjJ~i%z5Id6xKNK{|mWm*s*#lfSR9b{I|gYiA=H$l@}MqI2_Nx5%HD?`n@bVT*Bp$Sv}nnAIRlmg3W;e?WQNt^v}$+~ z+@kk}6*E?OZ8X?i@CG$wV+S>NwhmfkpqNEQuTaSlmg2Uzbvz_k~3*c79e6S#S!wZQd?ZB8qsMMRm#bLVr-G7mG=1(n2Vp zw6T#n9_>;+pnd>cRx4j|=yAVjv?bWj{6dahdxOMrfF1CA071p{!OL?xHt{XWO&GIa z3U!h~F3t0|Tf#juwsY{su7ClTt+2>GT>2u!tm19EOE@XaMp-c$H7oAP@RHjYo;OoUxE2KOl_w{Rqy8i63)?R^tBbK~Ms`aT z3esrrykFZqSvmq@Var09AR4 z#3(i-SL+9&!TR>G9^4zpH@xHSi91-*eu>7pe$YR@cwcsER7tZ;meg?9`pfqRhva#P z-~FhiULu&-7clp&jliS9PompWp~~kFs^v*7f58OuuyYbD9_f(PbzjN)bRs^!&xY+8aGTZ@CN4#vGj4e47ORoqNk^Rl-Po@vwtrn3X6BK!YB6Tl5^AvQx zKk!&lGLRy${H8_l`Td9OX2T&yGRm-XyMC<8x(Rh`)`F)q<;1?lY36jFqS|6K?Ux%y zx6CLi?K8l%hf5KjSW8$jfJM@BC6dmQ-S@*e780LkGnfcuf=Sxt#|O*+5OOOm^~Wno|~;I{b;;3K-v)h z(l&8u1#PBea@lLzz>#N4rfhb?`qNYRf@%A!5D!dnCsqT9zduxotc&S+YCWZ!&&v0Q zz!anFfi~9Cc(?VgN~V*&wYSwsHC=?s@tH0}TPDUn!eZZPKbL9hOlzhbSDzdZ~ zl`JiZh+OC{fv!Sa1Iv@aGL8L%z@dC@5`Gg;^>~t`LdV_4wBQ$Co#PFA%ovF8jn)TF zUhzhO7dpv5YiP5XuO6K=*rr~l=?l$m5FJSqnf#<1vI0Jw#gojYbg_-4%rT0jS&7C@ zMZ>F#=29I|j!S{+apa{@&sZAF#!@7ae!OKl!X6MM+B*N33FGhrHC zimzW@o6Y)57jq6TO}UP}N==0QM7C_URQo0yyq5kG#d|J;v`wRQu81x~S716aBxmLo zizQ}ZpeTOsE&4#4adw%@7B9!@C`*>?w(gQx@+7+gGQNag_`=AA9t~5q4@EJr!=ei) z*VJy2X2PU+bp?evg_7I;uvL5d?Lq0&_`8;>pDMbW0zoRz>>V*EcuitBDPF}&XqKA` zf>jWC4ic?Ghgu= zW0q3%v29U)2W@k6WZ`cuDu28+O20e)WyHc*#TnpHa4Yz^ibDj)_47o5USQ`lQo#56 zgtvLeEW=NcO3hGig-Ih>P~=29LvqT0x_h>=+Ze@JXJEiuxn>+s+clrJy=c7U%6*JXLsFnb;;T z{;J5ctnhXJ=uxY5MNyXt&oJTI9E!cDT!(1WXvE}v1U{e)zIYtsBIQ-i>Oih>&|yo> z;)I5C(PGI5l%FH!%Cjp@7sDO(9_?UbpxfY(nq#Pb8_y!}g+#kwcDm7dIW^aLP8;gB zpv73Ua*10By_vR`zND2cLA{`C0J^QM)rkDcr?PI+^R z4UBPhrkB-sQ`h+JtUFnZfPaf>0E0%=o20c;jlo;%oebvkYt`&V%m)TQXYU?(W`W*} zSw{K5b9)hc7ZD*#U__|4iqM}ivo=6V@cs7yPD<0tOt*-i*@OKpncFh@mpdb=piQZ# zYmNOitdv@H-sR28ccLeL_MBHi<9q!9B_CJ#MaNz|+>DZ%z~8WLimfF%(7a8g9ty@Z zuZ*ya;GbAm3*7s%Y5DONEz)c^n4&o?Iy3xW(24reUF|0ZcCA$oGk+H z@`3}v0!C}xd&SUQ$^N}q0BN%v7`0=~EgQ`8I-625O>W&Ahl^0yJk*^ZydLyam2fqp zl)`&&w7n5-7ZR~Ajon*6XFG!*ATk-Bx;tIT`(aDMr5>?vOqIsUjGey41bNnlO>xCC zqGD1_iK%@$*Cod>y~NBw_xG6{)zw}tR(pZSxKJ-cju$WO+R5(ShIjMu{8Lk4UEJPt zQnR@;he3BjfRb9Go(!!t7|~Y#_2GGM(j?(Lk?uUF!HucvcJ!O420t0UFAmFE8EjoM zEiPa$Sf?JuT7KlqNZ_$`^AcF1SBS=}yU)ysZSAw&t*GWJzUV6@IXK!GcU7y(y)QuZ zwiRjNr(MzbsmOb6`{U41c}xnFlo3sI@?KF`f^vr@2qBqBRTy#38@!L!KJbk4$<|SC zW3Mk)$&12Dr;&m4#vh;kFV{E|r){77^!oW(=m(YcW=exn&T0*xESYz|+i;bI#VX#m zoM%~{wIN5u2arrzq~0`~*qQ6_A+O!ytE{OIRommaNTFKQbyh0j=$x*omG~gA>D9)< zN4Q)JUo#1tUeeTj(?Bp0hnge&!qOVX38Ic^jRgj|QRwc03cKC5q5U{1A=C1Oo=(af z(7>2Jw)D_*#>3}JT#_}Gz>w!hw<=}9<*^g~@+O6JC*-|*mu3Al=@ON49p;oO*RQ<< z9U{%O$?*rgBm@JCMmPQIn@97uWASY)7C2FO{JKaVBeaJFYGc44pcmB}yuBV&ez*#YDiR-Z}}lh6C$kPF&*p-@;oEP`rL-#aMY}t8C2J z=#C}1c8jcb*pQ$6;qLgLpXj@RXn-%+J?q!+*()td-IlUTD|ngy9_HBB<_oLvST{3Z z{e-5g*x|*aD%(qw5x-n2s9x~f8gsd6i++|}_UV^KFp1q^B=&0hm+{|+JL+DX>uAv= z&Ozv6S%aYn8!ZSzlwZ35#Htl9(Ux8ys=p#;E^65E`bsxN(ZGJ5my=(T7p3bXXgvEC zEWIa#aib}6f}&l8|I+ME+;4{BIX7?gRBEm5i+LH1IE$Y2VJDm2j}YmXpWLby50)^# zo<@C{IRgLMpKeL`UAdj1x^XhQ;YP8(+pQkhFQ^6<_!jQL5C4oV1w)uP{RJiRC{9~$ z@C3zou^m3U5On;nnR))=UoSevo)CKJ9V>Rs;E{ak_C|0_+;W&y)u_vTA;;?YCcQjk zo?0gH5aFkzdeg$-);z%K+ThjpEH}E1>QukVnTI~uh@3AAWes{O-JX|q0lu{N!bcE^ zmmw^YOPC_UNg_w~)H3*^q2cqWuV(p?&F4we02ih{8Rha?Y-1*i7*M_a;LoX=aavu_ zD>%R7qEaf+xKHxTa4uyil&3U=Gh#SLNGnipZ{jK zBh&;ev2~OhI)>BE*#FkOTaHyt;yYeBb%bW|x=-V4zQG#Q_e6l?!!=U!LOqj4=JU=4 zU?@Uo&Kr2Vyla<*#jiFJKc+3{wy=GrF4OGlh#DKW11wdR%yes9wd3QTn@{Vk@g@$g z>=7z_^d63Hm2;lol0iXY^DV^IZ5yBIe^W;Q2BouR4P3?c>~MYBQYExPA*N)W$4{`N zuFJLx7SnMH0@v`VN|3-Kp^vzDwmZi<&R#msyeteU)IM2uuQNVF@88%~SI6E6A<+5? zG9uyT+EA-gl4}*H@g=Zk!W!!2C5VqXm{Zs9$9@rBoAXs#tTppNj2bTNloeq5{QCnX z7*K>)xvc=)G*Cf~jZna@71(9UMP;I;PYe~%hgbh1bvaTNY^=+&(cDO`VjtDgGZTIH z@}TN89QeUVh+Qya)*yY*E}~%clj1P4edQA;E8fM~H@KmN3zG&fcPXF^ld(V z(M8OpP}Id3#d^`s*p&5oZ8p!1Y$Fk60&Izw{gE|<1dSFMrB5GEal$cdq?vY&QU_n@7dV(cZ2Z9%(At##PC9~&B@ zbwq99D<@uocfX6PN(&k-S&F7*bdk>-NLqc2oa~cLn9rTCB$GMWZV}(WOJ$ArQi8RH zauG-QOlfJ}`MQgYkH>t?vmM)Oq2ozS(BC9T81s!rGAz&* zbxqs#TNr4tvxo0!LX_Vyn06mR0=W$w%Skc-Z8 zACOqrYcS5Zs5ja3!O>$Nug8*$v~tf0`i(g@61jJVt-w}j*==jmvW23uKBULfrYCe- zH_Gt9BtADeps?&@8w;Hw{K5X?>$x5`vb_aLxxOvh@@ln-vx!49kaQ2yb4Ktx66{Ts zl&4nBUIRWNhup@THFnVfd^-_q(qH0o-k;x?ag;AutO~~|SvgDZyG+^JHyk((a4RTX zNSe6VXX82BWwVXA74l=2g+T;;c&Ik)WrfpX+3r)Cp1ahH_&td>be;5miy?DvM41FA z!p$}%j6=ZrjV~Q;C+A_BXDR?zNmNZ7plI-DaGCX&sVtv$Xx+8D?OR($BHrx5l`C!C zU~md#vNh3HQS8$atkVg;#PD^vc8xu8A3VGsW2F4%GC_v%taaNlz!9v%_uH7rc3oM zp6L4l%33dq(XshlC!!77TGg^fB>TQ^)qi1(K+F@vN3Ie7MzhhIjYsy1v*28cTrkuL zd0_;1o`}8T*1DOrJUryQx@n^dxHlu`?((o?exkUuXSn*+J5bTSA2}KNw@k#)MIQxG zmQ2{T9rbq}tLD3E@6x~+6Z+L_Me+{NOASp_X4^rVuX~PZvMB-->eKVqaW7uwhu=B6 z_AFQwZfzd$If&NxZ)w;%`IcQLzRPZXvXl7EYSa=J{dpUUN00x;UYYSvnSqCgf4;p! zv_uxM|9pPGYn}Q=41k04L4ufwh}QXv(g0v32RX>3r=rl$@{|a0aC#6IM_R~X7COW< zn-$yuk+Av=r=$i>em z^9{Io()&z!oedS40taaAy<|!?5QK3%Xz#(5zBh=N?-YSELSMMPd@cyLrdR$bBtG<2 z65r(VDw~dG9OPwD5KJvf6v>`Os~O&^>F`vW4nt288}W08Ft0)r8D=k*9pR-AGasD` z^ErI`!V5NPOuqv&eq8^_wr6y|zoRq`H%pIAidTm|F(H?ETj3jE9=lR53&4M4v!|4$ zd{o_FlSfE` zhv2k&Ux|UL&122{qkq>yUGfrE51}Z93M&tR=*Vus0AV@MW9dY?JmzERM43V`Ov9lF zd|ad4J=FAF=o+CS!@(&**N72vo5uhtQ^o;*8KQemN`s;FI=DwAc7rzANT)2J?!r!Y zKd!vAtCLx~@HCm_heUGG3uj7h=h-a#2ITND*Lt#6?y-6S8ZACZj?IZd*{I0=Rgp9GbTiD|D9Qw1KCB?(zZU=9>G^ijSS&N*ad~mLL#Yct1s=IuX3eN*FhygRqO^1Sc#x@oKF(diI}&$J55<+i6?qMB zElU@FfR6B0Uuuu1h&VN+g~GNasI?USEBJjDSs@u)G-2>_9Nw9*Bi?EzqZOCdTQtd9 zl12qDB#gHbA(m@Ov;_KyQkU9jGO}h0vh@CdcHJjm9EQIPhq8!K!=K(t@Jd%|?!5Vd z{RQi%iM_0o(LkBV{tMy5E?^%ZX2`AXVQGQusAI)9p2NZ;3Zyu@%rxY{h=%`ARc>F_ zBRt-qan)2jS7KR8N_6Y#jxQ9iz^8C9neD#LLan~o*wTPI=h$9Xh!a`S+b->NxgZ)g z%qc{51|C1VN_NzzpMQ7Ca&Ye8ZCR)6F+3mbleLuTWU>spzC{7U{j-DWGE`qbmLB1% zt3C?m8h?vzzGybUc1)mF!lQ;z=dVz#>-V^+81#2w6g&g6M+&Rq@uP+sbPv-!HI91J zRGNSv1r9U&MX?^ya#LgM}hGb^`oF@ ztMMpg+j%|;PaI_7vHti1p|qKv{V8^WJPnYlt9C?u)HgZhKMKaL)gOtZ$h)=o{~dpC(kp~_wIQTXKndK9$0)E|XnZ@ounETXNYLeO_97SiJ+Rj1~w^r+AB zbAJ>_0+b$!VBov09ca{=Kf{Cg*P}pM!6&eED+68NVP_|ytG+S{)YkyCy@bA(Vs*~J z6pwD=Lp&Y@)G+SH*IP7#<56&lq(X%Gfy9zMmXK8?cKiV#&X8l6-+@WA;Xfr{U!Z=C zAvv*<5P=pd$mIJY7_0X~Kg>KjDFzk-@+5`tPiY!NGesOmNJ`;`^&=@Nu%6=MWAF4) z5%%2vQ5V(|r`o~#kW`;PePWsg?9uvfKaysG`e&W~6s1A9(+y$DgmhzAfBLuA%mBll zXEI`7i~64`FNjm7JM|y)|6BY6&Fk-Po(cjFWQMS15y6P5_5hV|sOmkm3I2Z$td|sl zNQeqTGP1B?u`08G0BTVvBn;_D!-U!XbBq0B8z&AWvO+I30hn!iHV_~w3F&cRfUIS+ zz#yC)AV65^FGLKn%^{`wGwzw!)0=;WQU`53|G1QcWami1!XCP)=3qlFRZpb<%VCv+ zMFL1k-s6P)b7lPFM@;#z0XHn5Fw3FmpSN%uIx_Qrh!9oS z^7!P-z=+3JVR+Y2!aFEY=pQ1oI>bdo1VUbb2^$r20T7_40fodNZwnqrvz(^yqX)H_ zfHuj0Y&$ifL{12*76IhyFS*vIv4|ZSq#Zi3a{rJ$w4h`bh+5%uSRlVbAOKwlmQ8oz zUU$dN7`B(Uglu<=De0EIqO#RFL@VuHEFDh2{j3}9?I z10ckq_>t)gg`XM1;I3j}81o(q5rh6hG!V-YLKy5@0tAp4LtNf7Lb^*Hhq@1i@=c&j zQHWeA0gMGI1p?^JV35BV3Z$#_G0Yeges2zg_sr2*)D+yuQAQcTRsjS^*uwlgJmlpXT+!y2+((gLDh~Zkj~0S<|q`daDu{Okmps8K1Hj50Ikg8HiL$>KtQH93~KxfjYFYp z9~h+O`@iECuLA-;_`%d^b&oSy1BI{xU=U{g<4FH=o&C=e8i8R%|Gz|#09`Zzl=SBh z=f4{#KM+PdtS5kNoPTaVXlnockwT~&9T)Sf^bRP;yXw>`j z#=|^0k1)cwL&H%)OM~_Q>joeWz_0vtFv zm4D14A@7<%Ftg((AfO--`YuX99um?1=XJW#((#Xjntp?}f6p2#2+XJpf(jXFe%y$Q z&CrAGJrp*D=(Ri^Y%Qf2TYnC=Nodo6w*UTGKEUkzTc}{`uXfwn^#IjgLDPKwUlvpf YO8R?2Awq_eBp@EGxX9RlYQW+CAAY0-v;Y7A diff --git a/source-code/Volo.Blogging.SourceCode/Volo.Blogging.SourceCode.zip b/source-code/Volo.Blogging.SourceCode/Volo.Blogging.SourceCode.zip index 6338a1e11c0c3818b35dc14db35ae86b8cf236fb..759829b4b469d1537ae61c21250b7e005dda3b63 100644 GIT binary patch delta 36364 zcmZ_0WmFqVv^LxXcPLieixqb*t_6w~FIwCw4#5f(hX4Tz6nA$i?(XhVq!f4mION>- zu5;J=eq?2{XJ*gj**41QDqiL)9@vKA;3-uw=WEP#D$jm zcLTxPOFE@+HITxHJX zNw2>p`8%lHmb3l6_T$$p&lZ{P`mpxHZ(7tlmUc`tWqo8H9y{NOo0a7IDs5c}%H?Mx zGqPYGyBBm2{|BBb-nZ5-L#)c9`vM&+CZpBM;C&b$fLQ+wdYg=d83=s!$`|R?D^73> zH8Gf<5f|Ldj0kGCT@b+xI*PwVPl)0Rr&2HRV3ko6Bh2>2j6Ux$Z6-}&x{R!8QjDuR zTH`nH&&aNiRjS%NdNOk{JFqv}#h2R|j#VEeqqpdrm}qxnML=&?3V(RqQA)#iH1g|d zeq>d{Qx6Ha63dG+FQ!}`4HVz+NGB+o-0sNUwT*ervaCs&ITL-x6ALghL0waoKPHQt6NXDAcolph2i zO*bFiEE$37trM>WzT}<{bTIMc`rUZ&Z%fYQ)yEZ~E|Pe|1bL?)zBj9qL^5cP;&MEZ zA!x__p>%^I61OGSnd&5|mTzoDZqt7LMT-p23Ub5aN79qBL&t#p#yoFn|BK+vupnPW z7?2>9o}TzcKu*1=iC>X5qogk|nVToNg#R<8Zicq?J<=?4$Rpn_5WAvWlgw9qZ8=Ks zBC4_lU;VZf@E>o}O2J&p%>gg4GK0LdoHqJuFFd8sLH1MbTXFFPT0AXIS>5EYA)-UO z>r&a-IIj_rIQ`t}TOSrtnK9l#if$V_aZNd+DQ8EPIu}r$_6>{cq%e+^4utZ-4z2UM zTtR>8l|f_LQky3kE1=zrUW^D2E3bwN=i7`GLT*cA(Td$?^howFB2&CxHFTmY0n*0d86Eq6K|Zw$!ucbM?OC>zITk;_1qA2Tz%XheNRe? zoSZF6Eac_suo55B`Dz*KoZUt(3?MVHu!oSa{y}zo zx%4euVU3=p{IB9gPph}5LnE3uCG3UODJ^P3wh@h*M^lkgs7bb_jC*sC9b6@hRYC%=4QA?2mv)<%Wd^mKZbhDf-resUC3jWSja_<)e%HI|cnVdX4oTY6(P*Sy? zWrN#S`5tDji8Z3zRQ>RI@%n)qtT8c+ef}FN2-u?4G=7l&)QGKNep&jxpzk*p?OZSs z6|V9FkSx+H&RG!27aKHeNRQ5yruA*=NqTP7f@3peXgWeCN#X0_d_!(xZ+G#+Rb#^^ z4x?7@)$1b#L>C;Nu3fBU$wx`lJK8nSNj(wKuX-17flNx*K-^bJbSKgb#M)HalR#HN z{q1~T>)w-)t!BFrIy29;>&obMY4r&@^ywVj>a3dS@j_5@JOrKFG)MP`R34vI35mZu zk;3^yb`Fosn2}@|^TKq6Z{k;1M3^l!TLSPM>A_)f8zJ#^oomEN_gX9P4y_(tbWZrU zFZvNOcXj}2ZTs(&*Yc*bn-W;MBx_#1-3L-O6!Ei5DL)IEe^c9P78n0z0FQXYN!Bjd zaB(wz7Ni5|PE|Tjs4ZFqhxO;zRnIjp6JH10)Hxk5E^7Ns+0zotRC#mXXc4+O+8*8h zBm=`1!_{9;{N^<*uQ87GQg(bac5A!s-LKP>C(hx^_G%Q|0I#HGcor&iPzmOPcTEvv^+ z5Tgz*UEtEg=s-6Wo8;4ER30xH(9nKlo_YTkNwX?y7i$w@(Am_2X!hm?mhIjnj2VM8 znZG!|#6Oy@ycR7dFDs;YpP!hb5^Z18h~&4obNsg{`*0~Zw1|AYTMb_ADZ+KPc=O%? zk%1kM3xURQ_RyeYw@_T6)r|(+D10NgTr{m~hl`_TS*CM&;k#hL-@l1bv>(jc`A7Ya zx#NU0+;jxI&~ocW0fBZ(E!{-1ax+yz{aNp5<>oFC!{~6rk;}*#=DE8wjm`ppMe)!o z-g!gXe}$kG1+&eAzuT8v>HgBJ=CZu1W|%Gp8N~Bf#wZBXJX8u)ZJ|SEZXGmJxd&K_ z$OM#Y%l<0c9R*j#Gn!p3pL&M0G?m)zcJ8pwYc$mK5n0g@OQ(CdO8j*!H496` z{1$Iw$@uF7jVvbCc1Xw(Z2zGp=NZp3`P6je@cxfv!^<7c;To-qAsqzJB0=Fw-{PbO zNaS`t7PU}#m0%!1`OJXHs?W-1sN0hJ)Y+-+hn4tOI65?+FA?(JZjl&&8T&zUPG{Gi zPLX^c2RnbnqEupN8DMSjp;rKp^+cTbJ`(U&GA#gU8B^X3%z2aD-P&^%j^3YG8>izH z$&pC!lYNMIqwk`bX}F$EKc}eA_G6nH8+0Q_N|Gx1jyb5NCzjQ!LYI`dUr(Z?mQ9Eo z1tx9OM=odSVt@4!s88XUd}T4C1ipOj;W79W64gO<*MY;b8&X!$6^7tTp-;RVXH^?P zVo4QJh&*_jVodc;^{-r@0RkP9Vh5@6VSGyr=ZO1{)N7NuuR{ylyJ}6M##mVFCZJm) zb@q2v$cyKzit@GQ2eRYZ_!2FWNeUW?DZ`#5Ku`$JHt8IE72>2;5xHy>g^C0QRjkihdl`=2U=~qb?r>FNOzg*ESxx3^O#Trl!71pBz zt&wD?b);hdo3pf!l0|H_qt0DD{?=Z-S>RQ}z?4g*P!x;IdM57k_3s5}w(}1) zzinq{yWiEY_@e&r;AGCPnNz$Y!`v>K?0cOabf)5easv)Shw}PYS3izU3gP#?+bZSR zzLp~rgaN6NiqNB2gI@_@OIEOr&UeL2M&W<=C5};tRmO`kXpM4lYW_3z+No-BJVgL! zaej{999Ai>bEIt*)_ulolAR0|R4kBvQMj5K+A>%EE*T|<_>YvKf%lSmzL3J?_Q5ta zrOZT7D~S{{MpxLo}f|HN1BinUnL8= zSl%Rq{uXdKp;tZr9^ypiO{@)EaQy!6t#edV?DwmlY(1r|6*gi^;GtUt$dBd?0b|{L zeJandAhk+C+^_+~Vgiu?Quw==`JdHdpr@v5{V#6oA9AEGaXV;z9>ZP7WQiyQS>A+cZ?7{S|ch5z%@nXD7 z|2T^Z!CPFFU5aFRo~Xpj3?$b-X2rcb)Q>k~R6eUSi2k#wMLx#5KX~g6auV0=!JkXP zb`Imt_opo75A}5?TsSrdK(dy+k3bx+|99N(iojW z-GT$@6lQcQVOUDaz9jH0cv=`|TkQMSHg4-Kj{1*VH)J^QW@)ong@g8)mMl=3yNnZ^ zm1Ck7Wt{z!`D~E@TERUAtQ^v*tK5^l9IfoO9rAanIv+lpwfw@HN6yZI9Z^=IX1XPhMmK~Z*j$IU4wtP+FZwpp5@@i`DYWZ zXdmGO@1Jifpcb}niccUyBYm~>s{nr&OA-Z2eqCb{n;xsqe3X~rWzA|qS^a`VQ5F`h+ucoNT1bg^XiYWaESu+*!AxG4FD=6J9U^TB>Xft9y zc-z4~T;Pav<4`jE=KjUw-fwf8V$Y_yV-MbHj$h#`UB{$ccuGNA-J@lO_;#YOf*?|_bC0hksL7QGZPVNaU%txpG@=DL z^|h%fOGxZgd~+ix5rc?QHOS8*JnF|In<8-KEBHo9dMcGt zVxS0$(trSp(y|poF%!0PC!6nm#YR*!eDS}2?aH)$rOdXk6_Z4c$9Za@kW#HC_9SV_ zU~W>#{e&O&y)%ih_RO+iQk0#yi;4Kl9J18lhdDY`8cfDs&~0No<(D37r$+0Gg+GCM zbtTqW*IZ>khWqVyLT2gpttjtfZ@tEQpD5FRlGy|AZg$_&2L}aFH>Dt25|}@^GaLNH z?9IWUr_4k~Au;Fz3uq~T1@cK6S#l~y6pM2zimh`W*|m{rNEfJ+JqiXs^hT=Kt-04M zs{OJlXS`}50mX-xQ`K&>gsl`V?p2<40Ft>rO{)7&ufpHEC+EeZ4PQ#1!0mq0>Y9D! zLqgov($c6vR)Bz%32X?F!SxdxjpQG5HWPa1_%3?jn8*<#5RtF8AFQLdhTun<*Z<`W z#yg=R^&r(rJ+v>JjO;d4Ig*1#rr8^ZT{FsJ>fiUW+(2fpb!@nTS_+GMNFj^M#f9Is zhnL?yN|m^$Zq56JL`}%YjZVa}0B-~@kv7l5h`iHa;F=gQyBN_CwuEA}f?*z4T;Skl zxH&cb{FLVe?&sRjhHO8lyJeXo&rIO?w$wnn(l?o{myWXYt_|CC$(EfhJ&$No zkH#0h*ylSzGqdSFq=c{DKly}liH%wKb91dDS&1Y4F(|f&b%sf!Y_G&i$Ga#WT5eyk zK+R=C@eWhya<$McsNXjtaZfGB_sFeYspoJdm7Yt6?^4A}7P8eWk<_zK>9SD_9q}M6 zH2n;+b2OHowjj)ZIQ2!i>fAscz{M1@sZH-|_~N02)FZug_xaQI16L+xJ^s18fzNrk zRo3S3f}OH7&k<}#gV_z@8o zslKR9rT2N(ng@=eW;L0!^Fi_5!?!M_+D!vuP@Nawf?T1lt#|9-Co_xj$x01FYnYYq zj4cxiagTf`_h(V~{FSZD?3J^0LiB^e5ffnmrOc+CtfQR_W*~)ZSDP*s@*?2?>KMNO z8j z+^!V2T+2YQ#Xq%+GZn>k+p#1bG_A|pFf|e5Du=IEOod_2EHb>BGDy>q%gj=zBxlYD zH)(T5%Z%@lC(l?RAL1ONeO}83ddbEhA`)U6iK2!GA~cc_<6&802R8*|6ccf|*1p?3 zWGB0buNOO)i`K#2FpD2{2y#@k1AUE})Fq_puZ)4kEk}&Q)x`T{qHdU=k1AslSZZ*4NwW{egvHr z$?(jA0xQcAJ!8NUdANe{uJ(F|!H{Iq-{^89-iRfZdx*nd9}L3;&c;Hrd8fSFhPhud zl%SL$|NMJJ9#QzkJqGsr;(FI?9(<$@owlDnx6~^?;}=p8TE>F%E_zRaQ^LPc4!GAE z1=DpT&>N63S!z+Au>G2{EJ1~zW|0cxraj7<=c*k9h_8oy#uL1A{(imin6Z+%Gmg^% z1A1p-M_5VB|JJfjWD3sQ!&QlCu;GZgsFG@LwAfk(hZYfBar~&Oj4<=kx4V=VI+v1k zYPngp>$ygrv!eh75iPt2IOHB5&zr+wieK>A7qyyd5NX#ss6~ zdJgdM<@*4=Mhd2lC`q`&bDmZPb-T4-%<-n*_`jOk4 z=nkA&1nLNupVXRpTU&k7!aZ!_bR~pXehcDH_b;m5s+4*WHr}14o_&Pa?1=U5RVTRl zXOMk^(*Q&OPDF-4xyLEA$D~ny)%8^gF1m`jH9bRIw_&m+G>waCO;>OFEvz1#E1l~E z*hC5VOcYdiYox8nW11an*FP=#tl;4xxEdRj&?I&alxBXCRGbC8KXY0<#|IBNQv7 zh+N!XZ&2(Al=x zySk`{lJ4D`m?;M+tz8B^9@QL0lW2&iX6otjvTQ! zE@OX{&`}h_leFfuU|fn(yVco>1`=K?=1LllXotrm&t5xDBkBz#(DpG0V-i0-93ONO ztZNJVc!IwEJipzIyZXfo@3>#Gh&hV7!{YxCe(dfmKlK*z58=DPM6(Q2lK{2UO$kZA zH|W~7!N2tosEhxm`bf18L?o&FoUS<-FJSbhpj$kn;n`|)vL!UmIFK&798VD;onn#b zUy0PdRqPq=F%sC-@~C3}xnIDu@R6C{n&7>o02(bwsLa}+)rb7JaQD$~$khFb_ZMB* z%7!x*(F0nFfo~X5Jl`LBcJq7+pD>9HJ?>`WMEqDmq0=A-8c%2Or9@=Yr%=&Cj0xz=14wVRUcqzQXQ8-*7ZdW9vl z;I(>?t{vJ@e?&_$c_gr9Uq5e?*0C#i_sSzeE;m)JMb&5 z+d^Hdj?;vuw_k%5zj86neVY?2mX74FO4D%%==LPEPhIsg`&(niV=1seY4b!w+J$68 z1ydf`qy~M;7~Ra1ltOJA?lD{3*EtFXJ=#eUZc{)g&R=hqNG&=Yk7S3Upzd_V?W1F7 z>}SH^TJv?`Pn^g6S|cU;vB|jNL_8OJhK-Kf0XXtO7_#=@M$4w?9lVjy_;lPXTAYza zP+6GC-a&1Bexfi&8)NG1%>jfZOf(qXL_c~GxosJXG`lf#L&P5*1ttS~)%n)(Z}XR3 zw%XqB5;N5W(%&SC9vV1wT`X+KHBKF4_+ngYcn|F=`HdDkW$rq zahHZXe^9lSv28GLMAZrj)p0)FZ_;)YgTgR(x$&`m;Nn{uyZGN9-%hJ+ee4A+2X+LI zVyb;dhD$18@_nbAjR-R-wl+mV-1!jBkx(L6^63aY6R?_JMS->1Z8)PhyKT5NDNbX0 z<-U4c(>N2JOvFLt@h?l9}KjxaG>Pmm%_ zX>4JU%5D#~-jw*y-s^~vKkOZn%Pa!rCzvuMBH_S(Ci@?u9ihxy#$yi|ZQxf_-CzMy zK0E8mG`rcme(UrIhL)xYOZ74}K^H7Y@4CxTVEnDE4mJn7S%u4o-XOl3Ce<%*(IT72 zbp=^#KX*#UJIx`*VM*(qZ(0c-qk;ge33gboZV;cYFnJ^FwYW>s&Y2itcEo8As^h2B zC9pJQ&A-YLBjWl}pRzWJe?XQ}Ah^INis}55ta(1KofNg-oNiu!5@UmF+O(|u-Kk+k zN{zAkd`{%cm_1{=mnxGldGcQHxZGq?W_)4(xOkt|+f!V>Ple@SE_>W>A6|n{$qL#= z0`z{d@lwvl=16vcOuSjTb0gM_+wG1CRm6Uk+f7%yV!0{ z6tu#vNF>dXsE()AGsGj-V_)NNmu>L*Zo^&(1-)V*;f%|ww?ybGey|Tf_po+a@NGk; zPoZrf&e1Q=G!wl~spAT<-WhG6_Yn&v(fjN@rZA#)a+t7`o)Uo49zcT5Ryw@`c_dZ$ zS3!b`(y$}1-`JbQyJSFxp-1S8?)${;OpWlsAiN)@Y`A-w zR$4MS3_lyRz1j91)N3q6u{qi&vI`pyVZX_9Z91!!ZZGMY>^8P`{QlGUotf-%DX-~w zkx$IYukZ^PKULbpfsYg(x1h9k+4ilJM{2}+lw&&DVB`XlQR95;j24wHfwQBdx=rO( z#_mqKZrtPK=4_Ep%Q}#?LukcsmoH}Qq#yDE)(f{UL&j#3+*nav=oNJK8mXf428UV4 zuDn|~F!GAA=t>uwdX6EPWkvjZXvldgd$SrHdP%dU#e=g~CLeS)Hb6MALx>pO99z#P z`40ZT{SLnizyy#$u_Y>mXOB&vk3_vhzjiGc$@ojK%z#HT9dY4h7Y~N9YX2P@|A!`~ z=EnI0H>vqp-CcTH+`h}NxaP?X?QwS*+WZB^U13PBdRR)K#bF`42eI|Lp~4Z}CBS{b zE}FV4UD8@$5oVtrJ*Z0=gHTW+h+WyGO_@9)ehb^xIrtKNW~4B$FW%tWM0(cQr0|h; z3OPoQu5Q`Ubpg?a+=6OC71bAp19y&f$HBDl`)?!HK_;%=X1_@07R!aOdYro#?*|@< zpDwe0wX|I!0m{rhjH%ySpvWU*Mg@NV8E-1)+F%wN3+bRDoo-JUfAc*KD%zy9RRZs15ryM zEQq|f3Kzc}A`B9_^mW&VrJPMzXFjC&6pR)fo2vA`af4LsMLDjGd@eZgh^lkaDYD!p@A{9h#-o{a0s9p@Tgp;2xiZb z{}JZts~^6k9x_17BG_UaRgXWWRjJHu{fa564Bnn~6l%t*HTmUvQS(PUpe%xQY`V)z zb%MJ|F)VG}D!0U;Z{Yi_`=K*R{Ha$bmy!09)v?$|IpZkgI_a_u{RVu|s#ZY${^BZe>{CMakW;E+zc#vKm8`;HWTVd^Ii3kqj()hI`^YuS z;dt1caCTS4MAX;9VswkVu}5&8eqPHUTgqJut;ZkJ`T?T|!a zkVW%(Oct#w+sd*9+@vj4 z5CkD04&0|H+B@_Z9?`RAZp`kVXPc`4wVpBWK@OYB0Bp?qV?L)`p-<6>^ik{X?7c9x zbofl#Is%MN&Ulcp#X`;&3<);VH}K|@<|sVy;l4YS5S{eW%g);dm-a=!O_ubK+%K=$ zAWDvx?;Qa{6wA#OTDTv%J|BvskR-rSp>Z*ja_y^lUWXNL?8`^yk&Yz#y!tP;;iele zP&$0kgHnZ<{y?Noj-bmEMmglvToc80Oo3d4`R3=6=o zQkSyEvUbIFG1Q9zAjLQLU5p;qsPRQc?;YH#xBS;L*4_=8!aHbhzc$JV)lL73WjJQ= z30)OOXNXRgWw5m%-lfMHLtiR`oQ2nh>|X!YU+}I{K=+C*t%y*f4p9QNV0QaPK4u{X&xL zzq+8c`}+btp8dafxV2_pJmJ}bw99W`F$in7D$g0nmS>_AK&llViq zKY32~fkJGELFKO7)0VlJG<^umM75Q(KA7I4e^<*SPrJG#+bV`EmG~H}`{~UV{RfFl zov6zRkS8(sLkqe`MQ++!OJ41C?zc*UYCp3tI@(N?9A+O_vj3QbsXGaIRCh1MhF}P- z$bFN&R7id3#>3rw-r!%d`>x|`E>_Q8xXP87_sR|uNmp`E6HENopMbzcrQ)d-JFafM zpOe(xq{Y5nQ``1k+{#QJha=({M*Q28uv2GbS3=gCz1Q>f%OM~U#+Lu%8_}TOFF3mS zeue_O;2-FU&%iDLAtz!mZ@}aMIN+3TOdv(5KVT?CQ7bC5P$#^N zPmiTzli_vHatY2IJG6E|h;Mb(nH7QgPHg6~^5bg7`qtJWAT|r5hNQ8?0Ekmfvdy}!#$N7noYNk~$+(ymxuQYqbufroJx9ahGwmb0plr*NUC0+K}BmQcd z(-b!bJc@(ze%TBF&L_8E@pc_|%JtRn3P62$YFL6AYB)K}OxE95HpIq{}PuH6sP!RU-1jY0YT|_=H=S=glWZfR(Q>{ z$yg%Qc$IPt9I5Pix& zCLNl^ay|}^jgOEX?Oh}^1G%)H%xr%(9tl|!?@>iWc(n>98!G&KqG~i+5a*;Yd;cHj zs3HmGfck)H$N*Fu@+4bh`u!T~Jn*YjRt61-llB%yn1LFb~J zue2DuDY)eO$e6H&%9`>YZ%WV@dODf3-43ZRCwv&^`{89l_xOhA zXi^m(h8k47mbt(XNk})Ui`hs^pg4b5&A3&$B)cAJS^8IdU`bcw2?$fSc3_uw(_CFx zjr-Ppz2NOFj&x0uw8HQ_`!HKYV;65Bn&1`zoF)EhwoDA0iISi+2bI5_US`^K}B4f6OMhh^h)Fp0#b>t3ow| zj^p#eaBC=hTH>4E=ph?%8_anp`E7JLZPHVT00Z2ho;KMOQ%MTeZ+4r>o3m5f-B;GO z)2{hyBlH!DXgw!b@w9W(5qF+yq%#c&=qSV=X%R zk8^h^D-(?iBvH}_q)U4GXo{2hmXSJ?nnn~DOffZU3vfD{H~95>w-0pMF$bAbC2JJO zg#|b|SG+D#p^NH*Ps&BTsrUb9=1~>D^y24-4oVs5&vxSq2X2XH``<{rpXl{sV3tYC z@Gli%23<>qo&!P=4CK8(@C{g`5CsxF2808XCgJ`6r%P;DE(KpqIbQc9+h7$7SMDbH zIM5MLy#SAD{oiys`A@o(t=+o=iI!w-hSo+s( z!?CsL1%gntZ5%TYQmbr@<%sna^Gm9uq3S8BDR}~g*kR~QGZieP56!LX@z@)^@1TZ@@pAlqgHYt~KIH2TwH}$R=ryEpkdT%y! zAKXcMc!cTwe?s(L#`a5w`(FjUdc^~7k0-CpVu!lCl@wMI)AP)p5n^x*_I8Occ#Nq-;jO7qE(@JHtUu5-Wm zX#IqRE&Vy4H)(H}{2@P%N{KP(WRTcDZo7_0mQpN6vbTvxT4zyC)C-cUn|_9y^eZ7e zP12>XyRyNV=ClZm<^x{5ULyBQkdn_k%D9?CI=VC@^Pm*43Io-5cv>f1*b=|K@wfEP zOCG3Xr@@(-iH{`?>g4z*GX~FV^G{Lkb4txg6h^#r$S$KKX`=ih*X3DUr(zgOA~-mr zfKAntyJ_eQ3T1rGuxEYw9z_n(Kra_pLKP}TY{)eW!oZ@h!X{-e2g?Tww(g0JkNbn4 z@?`HvMHhk*=y&yknQDK%{q#Vb-aSz_cKirttW*VS<6oiwZv9VO2NzX9FWrBu{P)uR zd^PkYziiDY@{3QU-%O2TJ|jE~gs>sOP(jw<;PAl)ZLlC98_qBMTMT(&ax9ONXuY|a z+IMPLHEAB-`#Ee~d042mLP4wMFqTDP7G-B&wwsfB^UzmCgRD!FQ^KwG#y0uK`ZxWh zLU8JMw0fxe{ZSUpf}5AcvAnRPSlVw06~;qf3ER7b(=3SbqOJFTM;9LB`sT-)4KvcR z`CZ=wW4REttVpT;gu*dXYQ3;YT)62aX- zzYqLxb>Bm3S4(SnD|>^?diKf#+^xWgI;X`wFDl}ED-MR{h+1kAM?~i@gDbhZTDO0U zC;Nj<3NBMn_ee|6C(>907pU;Qxn2y*)0*xje^Czm8pBKHeuVMcSt8e?t zi=7&FXhIG5SC{__L$tdO@M8Tg^x-3h&#($S&+Ek?4(hP9kYfZmQc#Jif?WqIYO~S; zDBoj=;y@T(1|>cb9uWzX0Xt7$%&1X>=#%U~kI#cjLg?2I#JMB~f~{un1)MV+P?q53 zEB1pq`nd>~G}*~oFd@j`{UY*obTz-);EJ9`{#;$h0ksyO4Rv9*0bY2{_*F`9Giz!9 ziG@Z7(VtXV98Ke-*Pst!0G> zD=V2$_8}l$8DXyoKm14&9owPd9QN$1@yGP#@J>fGG2b`+z@c#Z1_xtWjaiYb!8b~A zlnc2Os%+?@=cabfhb*a@bOJ6;YIt#IDs&DQ59I{pRtSB$eOe%j_laLe%;?_~b0L72 zqf10_Jt%r7xM#)uzi&t~J@!av*+O;{JgHRYeBm!tBT;8?wfIOJrjTGj{14^QhqCu% z?0I3NEdqChF5=0(nV9Kle)3*+ZdF?2eAuyAwu_*~iOIpiop06Z{EU=}ST$Y*>wT!<1f96TsK zroy&^6-V+)?jg93%z)~vp*`hzLZ%E3gn3am@(}8NDzk(_Vw(U6prD)G--T{#mx`$8(p;h>(F~65h|5!D)`YRCQ?8<= z`&3}e6+}oXG8_i@qk7suV1fny{y!$#|K{_*Qw}ds8%&2HzQi8-@V9Aj&rX60gj7JD z^Eu`U8wepBX4!<|d65*H!A60m^);&x`+55S(PH9x`(UGx`VgkEc`0~ArkJ=nb7QMv z@6>soK|1Xc^b<-yzKbWq<>5Bp?>hB_oh_x>nxh(cFD{3LY|41b2RX3GCrd$CT=kr(k@UpYAR z0VJ6I3ys6VYcA;+GF?%+q(#?U5`({mnPA7Du<>bYkJ#4Wa+;=6J`?LEP}S?-)Qj-% z6D_dpDs)?haqZu2nc$6}7xXYUHvuox?E#|xVbN#wx?+DTfX3xIS#iAa?}I0L{r09H zetH>^1u!I8kwOPF@`qw|+&s^*@oA-6s+QeQczY|wbCgfEvAiBebi8RPYO_v7)4868 z`zLc!FmzF*#BNaFUhBq6veo{nbQ-ysQP~Wa);{iSo@P2zgSv=P!tC*Pmm_wxtq`mJ zl3&K1!Jw6sTA|1}R)rB0L)}B-sUL+&cVX7wa4UO};~8pj>d&5 z_NNyWNS2kl(RUcZNM`rRyl({HAB?Sdm{${-oe&j?rPrr>PC}Ne){oLT_j>u1cuIK4 zY5IV~q<{C)+6{z0rnld=I&3a`b6M|v{OM+WaQ9moz~!T>aX#$)yRQ4o>VE@#+V;>3 z*fu-5z!y_3H|X=_eFpmu2>u9u1CHK72H)&af&xS^zdi4IA)M?Q@{Gx&GgQ+c`MnLK zb~~*ccd*iPH6hVCJ!(o;&>FX2NQs1&07%~Wht2o%`E8gn8 za!te6R)q-~VGPjYkkRnM(tc~O@cL^ptf)N2Qvu(i@*AXT&deYTPW58HZEL*K)yAqa z5l}#dMc6H@JNiwf+L&!1GYU#bzcc2kMHI>c)x=CtT|{5oCWP|7R<{0azI3+>Wl>_Ja?{R2XKL*rqsJA+ z;9bqAue%DJX#ov(Uhc>=*O;PU*4wf3X7QP>xE~HBOIJkt(g?MOiepwOdYO}9JB9qr zu4~_i1IW=loK^eRjv}NFL5t4!C_#*4tJl}q|Hay1ANo>I;I9faBu5`Y7nU$bKcV2q zZ6*P(pF=V`G)_Ru-QZBct%tAwo%6>>w_85XRwS>)o+!3pUS|;DCjq)^QPr@l^uA(q zjIySF(3hd?ZnaCv-Bpv{yR<*@PNCHxT@{r)RjGs1;~X$<^EMd_Mw1UoaHSHHK;}C> zx!yWi^N3rks`fw;<}{b5q6(zDrWve=I49i5f{=Kn+sUIiboBUxp0@ae(EyF9e9YJ^ zb>`8-sFur`!+7RgBWC^>>k}r@}*K{hUPk`b}Rmd?A@Z%p&T_g;E4~l0VPc@~2D-DVy=uJs6oi!y@~Z9)I%&Tx2-aq#mh zzpc1V?n)fgll0FjKS^m8R(cD8+UNWRyz>oFE&X6ma!@5zn%66b(i7o%m9MPG^o9uj zA}OGxV5Cjh3Z&ikyv(O=Lzj7vYP*9j%nlz){eIYiw0TfB*5RL3e(@K@8sf&tuZ!y}q{k0y1{E1F0RUrp4fn!e(=AdY_&j{2~6anBPOC(D3+n@+Y2zq@9eq;m}5#Dh@Toh{t~) zT(0YtYJus5ML?1*BlhzOUu3Q~&UUtO;CY1~5%rg%q(@OT z-x59fIN@WTxV#Bdy-UZ8+asK9-lHc@NuP^K5CdL$da`UqcW(uU%G8*Xv+HmT++y*; zO>YS)=p5xg9u8qa1o*#1(Sui7oxtZPx($S2_P`K8qH*Ea>yVKEuU~8tLWT@*dojIa zWPl`e9<7HSK}r1V`h?FP9SB7q3@5|~AC3W{hzfZ7k_A-_e#s#`i*$qdp#p3{K5aOg zqUeinjmDzs*hHSU1QQHZbzJ`Z#q3;dn##nplDRxTy=>;OlWJve&WJZ@q35_z(aaUm z@!N9)V5!_(sK@Tg6vq5M?y4>$qVpf^X`*qY>)VOPLd~39)s)wH<3bl@?Q$)uyG?3} z2$Pz&$>c3XJsI+CLG!}|%hS0X=#>!G($~{!@Q{62xUf%}o6Z4GBE7G=m*0Vi2m$mFIYpun>@niCi()Meqb+U*;rc;Uz+nEU+p*YY~D9B zz^YFiQmTsAe`}Zhl(&59(Re>w>q*(WHk^9TySya2WY?-*)o1+ahV~hB@#ZNFc4Nu03T!t6Mzj8Ht5KzekVr#kxa}I3)mGJ z;Se;{Jr^TnyMAOPR``~w(4WD5v#6n$!NUuovJQ{NU`NWxtQQ(!Uyu{D&L8~E&avxVkm&pt z`CoB-ZNr<790Ox9E3A+BTR49R5ZeaGtgZ{&BCR0+Vbu={9ifm(U-Yve zWwxvu6L!b8B3P`7wi*(H8+3GDZ{-u3VJx6MoP9cwH(|iQJwtO&U+(+mD)+H_-fvMp z#n)5Jv|C$76agfD*cb39%Be`tdCXjFJP|AZt#sUDOsKVe!-)(ee~R=Uldltc4e)xw zyzUn^z~Eo=#syTqC}av3U;!-@!3SKwgxxv;Lck)-ODO>@opjbw8;9sxOb}>n`X42~Y`f+7R+doTXM}&yz03;zfZ{aBG)NG!SdFk|nW=8wZ z=Lv6{He^i(AP!-*0Z`XT+5xJe67O9AFwp#C3sZTL`dslr>!o7dM|Z#sv<|%=UNBV0w4`q4?hv`5z4bn2V6mUCYgZGP+m_VARhWF^h*FH zFaPVHuDce{3_XF~-@0z;dVcV~kq^OA0f^L%H3A-?b;i2@P0&80`T)n!ot4e2GGVOe zU*7&7Ml!qEP(rU5W0FXO^r16)A+!`K95LV4AP0C6bq_80(z`cJ*u2Y@mZ z3OL$n)oYYjujYpS5h_}j{sf?XsZuw90?dSpw?hL)KzUCDz+l*yj=qxuxzS&CCak=q z@~55;7z0!oN+X93jkKAyib&O2F6=+>lc3>F#ORHoNpgEL+Qv!xVOXF05R4>DW zG^ztWZ#q&pl`%Kw?gT1dug8I3$R=5FAroqy?}6 z+Fs5I_zOxQ*#N&o;bNyh=jnJ(9RUEy`q^{B@zsPQfP8cYB0?60;jke4cEF*RjvDQO zFO$%^cn2T>R7iy*P#roPBxm5?m$6v|0RGlY~3`)&= z0g0gXu6%&qP+qGq&=E>;`UBrVON|48>`*E(2zU=Ig@ge4fJo0UXfbzrmfAwrXJAR5 zm&m9IQgFx+-#Z{2B-j%Ut&TJd=mu??6agHCHnoZZPC|_QATm@)RT5AYDg@~VPzs77qw(+?o#&0LM*Nq3cSxHV3@iji z4vwxaBNb>0wR@xt;3aee1&1Z{`1P}{7M^E}%8-~`phBHq4v-2eG$0oUJ!GxJ&j)fs zn<^FoE1?uj84!9FTX$X#+=tEp3|0u5OrOOWKMz10LNO1+1XbXg0vuKych&!BB)|IE z++GYkqTThF^11Jn=Z$BH|2BYyv?;=&*U{Gg5AGWEKtt%j8XJJrP-?yLc@QsF=kDM@ zKKTq@Dgc711SI{Rqj^|JnGzg1gs~a;a%H8Cpap0JZ5rGPgo9F1Z9q6EppXur5tO>` z0{(@T?)LyKp*+ogpbylq=7)hnP`JH(KIXrF{>3*?ojsp&)IFba*h8DbOaO174W4Fz zkx*Xr955G3@ht$MHx23%mw-D+FL+3qz*FHr}ax3xz|j>)!_QLOZm! z+_cMn?yw2w#Yp}=R>6RjyTc*Y$?gGLpu&;&ff7(k`7h813K4y>ed7KzL=}LSGg`=6 z0vt6&WC93ZM|KEAg4Sj{0@A%u5RGHt+KVUgo&1ll1f2pkpw(8-fSXXEAE&^y{m(+B z0T9DupdbYG5_t5|?C}!#6Iwa_8W;$rXm5cSP>Syk*!4oyJ^*W=toq0Qudwfcit70O z-`)2fARVQ55ew2aDk=(!iUk$y1;mD8$A*a&>?LAZ!?lAw8hgG5MT43|jTI9Ud%@T% zs4-ULcc<`nXW@VToU`XV=YH;I?%e4!_dRt<^yz@B)Pf}?Y9&5kxJpteOKUGnyc54y zr1CCqUXH6(MViBEYqyp36Vn)KBe8Z2pKPT~;%Z5J79Uw#VuNvBW*zAgllH7Djbm1x3zFWmv{NC{ zde+WT>q~D~TE7O;a#llUEJ8D5utS#FKOWMJ#fs!kGT0dCgV{>6jx$e55(kABh zJx@|LKSc}rHX-Mwb-;ca4ra55NgvtbC3Bp#jWw~rbg3@$Nv}x~y{gD-{IyhUM{^6D zFU@45{@%q>CuW~^iR8#uk*?oKMNIl>wdBm69CM|+tS!9XEWKf?td~2b+03C6_eyk9 zhv0qEZjuAs-Y5M^v)a60+RiBA4@zt$0@sg7H>mL7&r&Ux``rSmHHAUIZ_-;zQT>E; zmp&*bSxR2%NvWEaPKPH7K4)jb9h|x0*doOXnq82bAgWNZfK|Usqlwlw%hM90wmBo6 zW=-MRIq4l`ymX#FoWH<2QC?x8WX0gOE=o(-)0jUcK3_NbOX7oi)ZdbhoxRQ(;_tm0 zN2pS0@t4$)4wP{FmgG!qafXAJr7V(FUb`#ODOPpi-L4*bi;b<5Idr~^3z7ask_+@7 zrr3keMX6fe*lQ9yvcVfGsU~X+Yi>#F*;8bZf4R+AF^ z^tybExco+H!n*Vvv#+eOP{&@&Rs*=&s|maHiaF700Ps#4L%#zZzGG804)ycfoo|a_RlTXWXgqD6K?BuDnSE0mG?hL)m}jo^T+B+9RZ~99(&FmMeHq`5P}xPMd_kw~FM5c4 zdl=vJ9OSG1m0Tjzl|}ZF?IR={&Ae@4gR9&jZ+K(bkuhX8msjwf*jjGE(h}RtOW9L# zXL&5M*Wa`I{X*nlMEUa$b(f2{fqmpU416kCUeBIVQ{-5t)_iPhD|^iNU-%ozKa;X=}_oRVdrDr|W;pU)a-)%QBlX@|>^BsVtAo8}dN*^zf!E zG5en1mie6ds7P)?)4>0p+<+JgiTC7&j~~c==tJv=ayR<0_Mx0eA3i;lyV8e*NBm*i zBe}Esu|4?mNbW%8agXIr^kH53!^_8VGEIqpB9EjES^d%-oPHvA_r*f751M)7CbY9g z)?s_g}4OiWrWsf20+F$c_=Nx(`T69n{N0r ztBmI-*j}lsaV$%upn4b5o^!txJV(`by+~O?%LC2zM|+t=d=U zwtt0*2U9VzjehSiGwAq*J9V~YafAI>AIp6;nw|oA%rK6wW~c%o>RLb#ABE^R*!xz-vKR#W-pDix2de*z>el1S z+3hfZ%1XaC#hzqksb4zYk(x|Po=>2q6Do&7*ju?;1t*6J*)B`hhfnv@ADzT}Owq=j zK}3(6#L=uB5fifiLkrG-gXzto?|*VtYE~La>^PYwp8Zeup|nCov|xnUbVRm-PVcyT zlis2F*cq5uU4Lwb3yhW(=J(@7&^v<*oS^uv%=+)vb@2mhBWF$g#S7erp~ZVSnHo^E z>FBsAWIn;ex+DP z-+o?gu>Hs-ULR2sHlIl{=DWeixx8cEZ1{cb8ZV^erqH>8R%&*2r8{@7M zD3m99F@rB%Y-e!Z+D}O2l~pdWF?jFDg5zgBkiZRpO$4F|;P6>)N9#1{v+SXLME>0j z<|~RDb*UQMi|4SSrk|c>1Yw_LSEyOa8%C2-v|-_Q`VHB^l@GooY|!vG4EB}sIj@9h z{<0FrUex(xWTz+XcXqp>X@u@nz`od?-7G8ekY(P90wKiY%wQ z;&!o%Ksaq1B0Iq>Egulwsy{xcN5ldAiAI-w57l)_^UAFhp)a=+XdLT|I<%+PPQAn4 zM0lc8SP%U|60ftwNs_{Ps1R2v7 zWj{^T@7d1=3F^;3d+FS~k&#^5eI+n&{U3pcfv=)erIqH{a@>{imKsgLRgI>F0Ck20 zMTw_;hWJENzQ;!iUrUNI?jYho*8VsgA1?dBL#^Ubp~6LI;4cjN&s&+5@|YRAZtia+ zwH68AbJb^^FoR+pcTJc%imgrvVx!?i2mus|clo5MQM+SlA{zy$bD`+ z%VZGo^wWZv73P}T| zYsDF67RzkKV1KaPksv(p7&Zlueg(YW-v+$?r^!ZMH^h{g=CS9Ns#Av=Nmo@Cci>fw zR71Zv1D7}NWLqks3#zB8#He{2Pe0;Xs?9%)Xx$uJef&Kq7;eLx$u~CWi$X!_XBaNj zC@vf>M8X62jS21a$L5$BW}e};NZRWmBrL;o=`Xg5(WG9Q|L0X_WSflJGI6q~{Yb^L z=3|IzG9A?CJ|R#)ed!Z-aK%ZPcG&-S)jLD3ol(_mUy*;;HPpQE5>%}DHZLKetK=l37NWv#x8QTKQ4{a{Rq>{h(5fi8{r{8-i$nK)Ui~I>2ZaHj=asTBBE$X6@}wx-fH$X z!~tRT7_!8tsfr4%3hkWu)YH!iS#FqXVc88C2R0|A6{RsmfoL=x1e*R925dcO>dblK zoss8k6)LL9VsbSGUFELSrO?E`x=c(#Bj4grY>~e>GH9v0Qj0?WXmm2x z1zEF^Ra{3+a$?XV4<(SAwa5d_x`%UobtMY2T(rJHCPxLmEqdp^>Vv&tdR2{Ph~T8# zZmOC$EcH}eDB})KWIW=tn2 zGf?XVZM-?vme&&w1!Fiy%Vru4@rvOuJW$2g0q+1#_0$`w?uHXl3n*)VR;BtVY=Zg5 z2Sr^PsG>lFmV+;fo<|Z<45USAJz=pg*IG|R$D6C7+SF`1G~bLJp1%U!-xinWgA9h@ z(;$eiu8gCghMp~kIw4>gZk$F6ps(R>b!7_mWwIY;;u23XiGss^N*GOjNm92bsHuK1 zvWDV9J$!a+yLROEe?QiIAAz-VZ-)Qa8{Jq|gS*AnAE~bPVWQ#wNo)vdmrx4nbIVp^LO$6?#_v*gKzpL&jf| zO?~s%Vx~4D3w=Y{Fty-J+n2?7}E`cToSM=|Yr5U?!BK=Bi>|(bz2m2sp5^YlpgU}tr zcEBI?a4+@4F0CJ!2lKvM@Y%IX5iTun<4uNmey81~;)5YKm^a!z!AO<*6BAj6DB(1N z<{_9`Ctppi0Y^f3ugGlqKE4$WVF`Ywr+gEBV|ecqTHgwXr2RvYvEJ`0!W%yRZrrvF zK}GnUt>CMgmzYxFC9Qu2+RQMd{oh|I!Vfb3M%vQayqZ5O_6g6xDt?Nme_|ibzr&Og z@8L+aB%F^#x#7sS{~uLUn^IAqgx5n+&zD5hy^@Mc@bH??)FQ^M2+IMHu()4|=}w2{!kU5BM_z}ty+LzD%18)P+MQA0d_ zCCeuv@=732f#VGoc4{5i2nqItbAmFYgWN`Z;K?VlX3_XM{6dV`ycdmEz>On#4UU*l zyq z>TD}Cq3FhlP3kUU+2pXBh#K`!MWM7?XB_H&{s`I;icW88WDiE>^i-j~(5x3mV~uRW z{WqlvQtj)d%I)At6UB!bdz*-c;Z1!cZjdvgB`*kS%BP9g7jbDlF`LDt!wFeE8bt7} z@NH8imRjYxC~!e5gr3G`Af6xYN>QN>;2Ehjpp|C41QL%6k|8ZpX--Ys7m21hq%!@7 zk$iM;Z-%K?Qq{81h_%L4VHpv<7*0e!4#@O?yH4XF2f~9 zTcJ=pM^>ho)?9I-iiV&!ji$Ar7%|2~k%Yl{QHwq`M~jluOyy;1I(z6B#cO9&6oMkg z8i6j(*I}S2CR38@MBZ&2kw=u5$P1Px@HSdl-2e47H0V11x(SBu9Ixtl!|)z_ziGF& zUCMLB6=QvggZvuMw%~*Olopt$O*+vJfUt?U9X^(>^MNldxXm^#QJ(y@D7SNCYiL_-JTPfBJ`Iz@-^gPnOMV`C6Gb!w$ZpJ}=( za3O{xZxQ6`=?rPVSoUPmY?L#i6+fdo`Q_L3ud(3ou;AiKb6^J3Gz8pGldLm!0dTz) z&*KU5=&oc^B##)hg+0+|b(7YLD{a>O=6gQ9g6vfky!aQY!VJc?Ryxy$WN#7Hb{m4+ z5Y$8fHJxir&W=+8+hDFu<{Jwv0ow;2-nUV#jRF~?cPUP~^o1g@JfP8ydj1RHid<|0 z=`1PGK9-lD!R-lKMxt@y*ylS6#@Rw9tA@Va8vhA`Z4jf9*h2ax{!<9_`SO z9(Z)kNvlFo2JaP~Rr@UZh2?oD^_V?hHR~)!D+z_I#YpZ;z&K*(}Pd1IBQgL){L%i8bzk zpjul+P+j<;T%J$l`P)P}Z4Ty8Esmc;2ix3V)Dg`)SHZkjJB&1^#qsHCR~(XV-EAal zwnyg+>*M%%k-DmEz8*b!5;<{?X7mRT-H{)XFX@ORbM_OGNC^HB`{s>j?9wK?6G}S# zk4Pd&pr{PJJ1I0~3Pupo!~?3xowm|jm@0k9)9Ew2x|3_!R*;5orcuvd?LOq;7Bqmg z(7{HA;C<8~G88%CHJ<~1=849VvMc_NoiUHuxR^AN)`4O1iWAK+GoF}nqymHnquRpr z<~(=%DW6x|$6R+~?&3!8$j{}<^pdd#q!s9D(Gi+vkduHJ)IC}eQw40gD1NkP{_h7{ ztwQ2P*#5=Iw%#$SNLCuwkk+Mqa_oYfO@0wY7{dLF4$q>x^7a(c6+t<;GA1jP{#})x z)SP^hnst(-@@evz7seRcbyL_d5!emopK!IT%4tZ|T$EE&i+1#!;)+w~FSye0D%8T% z^QKCr-IN+s$q;^PdLpY_RF!JeLqIx|_PJkjWexhm(a!Y1ax3iXu5_WKe@$r=8iG!% zicPb%V9CbIDyb9n?7=(XH$AXq^{*O<&h$`xsZ(AM(ameB$d1Iv;u{t{d9OM(J@U^5 zc<~v8*DoeLI3*!I}S2ofv| z7%XfL!AMFiJw`ygo)Qo)2PC{b_wCJVF0wa@{(Z(oVP=v8Y=5q^q4rSK0wSOIg2_od zFi4%;8fs08>U+S2Uen@lX1EX1h|Det5(aJv`_C?h* zsM<+Tz4?(rmkd-CSoDeem@0KDh}=S60vm-&Vn-%hFJfkq9|ro*Ojf)o{@v%ZAOAyg zz#b*q*B5tO1Yer0cv34p`=gbI%SdVji;lEU!SQrjf9}UsL|&$W4TEseM*H-W{(PwY zL{)W6gpI}(UZ(Lzx@cPK^d4yN6f{^|kGzl=o_7C&0i5dM0L*2L!bI4}ybV-eMdev0 zBh@3MiV_@VV@~j)fDU8F|9b}_%V`UeT0eUbpM?G2z&x_!IEKDxCFmzu5oBXX9i*_k z>Fsa-%O{`sBf(1ItYitfgZQjeJP0#ck3n>Ul&>Iqu)-#oq`{b)W=FFIJA28j!g^Y|!*d-nsOTIQmP*j47pA(&d?s;1h)F-)P2;x-YLxvL^GSU(h_z`k;o>>+6g zuj7K*W(!Co`xy%rBUo|XL)2umQKJbn`yNA_16tlf!25d9g`sCdW=rx?L2-1jrO$}4|so~t{n?!!w z-$+i|L-+{AmGZ}pKzVUZQ~8Dwoc|D!+tp_Bk`YP+Iuf+bUh(fxEM_9MI&tLiuS1~p z7Ms5ifL+)O&eg$iXSE;a|6K1|4c6C2JizOTr8oS23@}nJ8L6<{a?mI=VoZ>ch`wqt zV-#QJwm3E?%K>NLYc3kiI0G3z4G*bAsV0PsR%+6MTn)W*lq}Keq4r2Y)2ejZiWgttG zx}c@15DFtOg^Css(VQ4jWCPaeya_psM|nwWCQoZ4wScs-yfgo}_p)natmw{I(Mf`P zOWJUJtkeN)C-CXhYXVYjZpTEv9i&Ku*=vX>x4kNAOSNbv+D>nId@-{Bgul*0E;l+d zJbEAy@VyRuSc2zYv{bnhk?-$LqTJI!+9vzSN%8@wSZv~AZ}v-IN_Y?GOjb2!P>_H@ z|D<(O=2hv){Gf{w2wxRpcgzlxP&BZ+D)NT@lXy!E*zbHL4)ZI*mMAV&19}?p**!3) z7nArbTIFk`d)P}5+riMUdEcEu#Q*D~id#`{jUTnd%M1&(%Eq){0f{QqnY>_V1}74Y z3pVT<!=6?|DTV%P$EExI5M zT~JT(Ti3-5AHNT)G-|ryOkMW=2%kIyZ^x_5;PtZZPW*o-uvwQlnEHABYEg-;dZx}mSLEdwi8|&==5Pl2sH?6K z`I^nD+>_Q36*bL3(XyRJqTpRPRwwg-J;)_;*S$va7kI2fRm+IzA{T{a@(S3vC}4Fu z7W6FsM2BYXGh*43sn}D8?i*2BFA*KoyQ(QZcE5^uhFkk_8=KmWJ7~o+k0i32-iIH^mmxS7t6Myno(3CcD$S`mYu&$7FuG1N9YJD!_5GPKUz~+Y zq~KW!3m<-)6VvfCTJj#NDnzhkc7YK-YZf0xb7rB_&i$&2=(R%jY)t&^H#N~6I?U#W zt^J7T`xB5kmz+J#R@ji_;J5em513mmv{F3E%RQ+=!=cF>#mVReFuQqpjQG7sC-ONX8c^ayOF^?* zIv+{L6`IOL(<#z^0U|RlibyY41gBCi@VKYd<^Mm)l}JyBkX$GXI1E+lV!2jgHH zi`f|do?m9_^zAuP<le+Pq^_;lxvsu@As8MXB6VkDLC!d*Stm#`1L(-S~P*nJl- zwAAC6ZecdQ+mVL62Hr~`ZhD_-7d?=|;82$0NlUjSYOFK)uudvA;=uyG&jS@7XEkr#SMY8vyxl06bfARc@nuIRI-2$z)c#&NI?%Dgf@2dbTdpKfP}1YGugO;p zZs6%!Yk}_@(CU?Lv?>g*N1E;}fBKJQitkERqkJwKmPF+s-@jO%7=bSriu6hs3R=?S z>2PvgfxLgCdZNI;zl=a}z|qO| z;G9;r{BDeFQ{l=t_d8^D)55+S+|l8i{q^9iR(1uCY~D)hW}`d`Kl-7{7iaVH%RNLi zQc^{IsF}@xq{?b)J;()qYDwPjoPajw;jfEe>o!Hj`?J#wpOyTIwABFfu=xlkvvY4j zX_1+!QqD@gH#)r%jaX=2iQEE0R`E?w96solS(t(_X9aez;-_5a3201}NSV;PIS&VE2@s4!uA3?Yq$XMw3b(Q)3qpS?8-#=f-GyqU4~@k zbj2mZV=L2qX2Kt9`Ke{-I#iAFW2*XfiZg8vJ4tGIO_plEp07bdw(R%%7YUEqm=YET zFz7;rQi9y|NYF8qq_zbmho5=4=V0p4`Yd$@rc!?xUb!`;&5IyV)uyqlCunJCAP%CT4)P`)}C7HSb^IhJVr50f- zwOM`1w*rA#cLwdVkrSkCM1rV3EcLJQ)TbnMcrr`vw280!1N&8RyM@KcMp|*hY?Z>G z1u3#+h4X3k-Qfyq-Lp3<{b-F0*o+zeIR>3UaBscVDo znO&iD#Zwsc5JD+!;T9wqlF3r*Z{?}&wqok3xhxgmJZ4TiwEvu?1JdT>Ii`3xwe(vC zt-Xyee0mhvC;20Ee+8)hat7UsP-?;PZJ5_4fbi{j!TM=3?r-X?#E&|E-3 zr4~)zjx=BIA~a3HLPiZpGrdn}^wH(R5)2;Mi0@lO3ZvuG0?_VI+EbcNJCNqm2}08- zbo`+46+#(f-M4NWho!oT28kuJ#&1yZ^P`|2kmbQ?!cvdCZ_O5#K~rJyZp@i{2VS&b z-x&t&d{(wL9fPuWBG;j_9I%sbJ-5x6*z6#h@g67NW->!KS`l+^Mjq1(wPMSz8O%9J(fxfb9AZ zeF`s6lCI-8etHhSpgvY3tJP;jlm8{7gP`RP;k)?|l(ie@panNM%bnePM%C`YloKBOV6A z>H^5>VZTjeb1+5{c{?(UpiegoBXH4c!zDu*w^5&3GoHLrMSyrclLjMT*!wQnB+P z@(##f(7KD;y6QtdmPqJ{?_)VUT7Q(pC*)+hrQBtiS zmuPyv8s|01?=Crm$+||MAbzB(l0+GYC6VpZ$#3e{os;;Hor5y^mTwLBzLWn?-~&Dq z53_;e(ixYW@AL=Z*K9sP;eD(VZL-33oUskI`*okWMVeh0RNjHKT-Lw+eYCVI$O@t_bt2q4c z8B#8r_p#_97=mBUp1)^gOa4f)Q}R`(e@1#C^7o>BCVPYB_9K!>G})N8j{eVCji#N^ z*JWup>+&=p-exTw;gyzdHpvgyDf2O}i?ip?7<^kTub7)n!IMnwN}FqH0-qSmX^W{i zKDdrviTJdWq3tjy3g)48E1`9uaJTg1uge;3g-Q)niNq}iUPPF;DN}px2VcCW%zK_} z&ht_BmHQyNr$YXk8#wunovfp6g>Ai3J0eMsZ+uLned7M^Y*DWrb)uM|wi%=113_`s zH%V%x-v{9}H*_7w%P-nG{`0;WFHfz1E}%w0nA1c+pofi?dv0`afGH$*sNwJ~I`uIp zcQ&sDBXP5Nql`dTL7^98<-%IYPL`ep2+TdM0^gBYl(e|dlpVftRv1g|9qqYS-2V1% zf6vkIXMr_inuH;soewZJV_pC z9Qf}^Wq1hVx*RTe-gFjcPA>NE{l@*#qUDD^O684sd%vWresgyz>ihl?Td~U*%6p68 zhsxVeG&e^P4=nHQj-(!6zaB77yw$!wKA4X=yZDf=9nZJ3o({G5x?QD&R@HxbseJM} zD4^9`YGFL~?#|GARjU2*VJC{F*7t@>e}-RKfweE1aJv=nDRo_Wd&GUJ=mwxQT;|)6OFchO$^$)P_gFB(YcSu{IMd69!wlJVDj}d55bp6+4}Z& zbNFj!^vfUPF@h_J6&k$LDAi7Pu((V*-ODRrA0sh?L6rpB>u87;URPJd96& z_Y>e(JpSc7X1vb>sM4&Lf(wh!JG-N8ke>r{_;LNOztCjdJF0^~$@i>(G zfctJOI0*zE`SBqxOPDt$;r%lj$>bX`#hGy>O?f2thns^(nuU`ix6|1>6P;>$Eemg| zuLJmMni&#lDR##`!&q+;~^9is_#DwM>yQ)RYh2@^9WZGQH@tnoi~A2I9UDp0caDOE1Ay zrhw80a4~U>fmE-EH&&&AP222@q3gq=Q1-*Ul@BJhTcSM5oIQ;=F>_G!;#ZmjDkI3q zN$u|6zi-A)f)Wx|-%QT09hn8Wy_4~jS0{7}E-Ya@0e0(cMttWR@0DNIA7rBc*m6Vx z7LM1HSJrhhF1t0^{1Lh`qo!wgTJz~FIw(TZ89Y9Z*J6*pU7(d_$fARhjP3zGuDM<_Yv}c8q=s)Y__VqZHwHb3=Ohjy`sVY!Z2iq@@ z;-+lti$+sRefkYMmsYDI4zDgAmHHWU=p~r7BJ=N%I}VcdmxI0qzh5sBC%4mmxD6a_ z2_wApVp(b42ZSB`Sz5V}l43$LQuRE0!(NRjRe-15&LZ;2BX0GuajiadFp$Qm4FI$z zeniDXB4bNEYThOxo`i#S<8vjfzyRkXD^H|iWw2? zR>ml4n(X!c-U23EtbBBs7k`j8ch z_2rg6!+Mji=Xgh;nV0xk#K4p6i3#Y96@54AK) zmjlIH*y2XHfwC}0B3(7yWQQ;%ug?$MwLgl*3rRDh?4J01qEot(Z!vlpP+c|C5|dJ0 ziPN9Uv#Y(%{n(QHZs2~+jU`a_#O>f%AhkUZhxY#RSNgOX(Qit!XX-W~>?)rMLlh}Z z?LxX4^w)^c=vkT|j^3fl5Y361_WGi@QI#+AtrOIdh>{CpZN9!)$&?LZ53V~-px1)I2iTBpVKV*wqBNo59Ww* z;oMe~lgtQ~MMH+h%VsGGaVxLD3)#y~suwbC6?xiX25N5NM0{pA!x}D-yF~p%{nfAY ztI21x=obVAuls>xs#}$vk2e$u4?BgG)r|tZ3C}*$g-{x91?y|SQGzIp;}NloA`M5D zydMVB1UNWzoam&AW?Iia0V%7)16N-UB^b-#a zJ2eqB>T|j7J+4ytQ1^z#%t$NlM)7_Bhug-E_l5&m+ksgZlV6uVWJ;Y%o#vf)sY~QB zwD;kUSs;9T?RVM7z_YlW!zw38RHQ<=5*DqP0{SXl!8zRUr>FvffAh`{bvDsHTB96U zDP`+5pM}~&iDSwA^UWn2FpmX)fOG+%A3c(>5d#{y!!E@XY^IQNF{9g zR?#R0vYx5vVJR_4tP%c~YW&2!<;)&E_NEPeF%j*eLy;|4zv$z3z#GDquNWS=#{w+M zTgXSE{#FTfCJ}_ae4gqiBOHTrTfM3)_?5?9t(bt0-*sc`rqto=Zou^@&y#0!IP%Zv z*(2RXn@iPfZ*aCKImE4pKY_jojo*~mo`sBC&n_)nMN8a@G5ad!t4WJvfho^2($d?5 z2_K&GpEJEty0uwUkzku)wf@p0Xm}4LO?`2v;M5-WcdO6k#b^ zb8{gNUr3>{dK3gaj|UByucmIWxg8T+8#>C};tXdE#&!`#<0(|IHOb4zDiWqY58355 z3_d=UT=*zyK0+KJBix;BIwo+jQJgvO&~BfSoG`OtQepDBfEg^oZY*g@B~ZCUUGDi_ z=~YXqlZDKjj~>yv;;d_osr-p;t3SAfu;mBt;hNGGsNL}GjmvRcEY`IJ&dS#pu_5vn zkni=5CGy2grL1@nYpk)-_DnXT`5#pLQK@DZ?Jz6>z#N*X=g$jd-Nr^(&51Qw$%4l> zg$7r~h;2pIlcm8~^^j1cOF3#*O7R5616#c5doF2<&2t{rzNyDbsQaoue=9XoMnH3Mjd1yZu5!il-=qM9qkb?OUdx zE{H=R7PbB0p4|CClegcpUMe{0gZ>bqbg!%-mNd?GmjyUJ_|@E=jCe$+pDzVLi6=?s zfAe0>Q$s_A6hc%9=X2zBxoyP#KnZgnc&G6g@tiHghFA;I{K6dxME9*0^IX4)DD)LI zcroV8I$vI%*%ph5rOU9=^VARX-LGmINba-`t<8_sDbNWISWwCH}-Rh$K4y!A5_BYK@1- zr#YVe_>>Ag_xGm*^Vswo?)s9Jrp~iBRTfb-l@~%RLX`8n)CMvxcE&4;6s}2OzYWQB zwh@~x!3GX`Mf4_vPCD0O0W3;~)eCik+a5|IJ7=xH$F8%bTTV;F8#hnsJHK;s$Gs4y z?+QTO;t%i3kf<$k1oc5^l+CLA6d}cIF8-;iubTc0`*eJc5#}mKe~7g+314?AFT|=4 z;nA2hE?r(khnUw=xKAJY*gnr%SxcmKq%l3)06V3|2sANYg(|j%*Rg z+{l#fRq(iTn-Rz#D6|K;$bw_&+(Sd@+?709QD3`bi3@!FgiqSrE8X1rYbR$@!XY+< z_PL-Zw!e2z-@q>eJ&9x{Oc|u*=(ndT{cdAx$5N6&xg=<(I*wQ()1$AHGTkBw5(Pmj%)0zKRYK@aT+#{t32(iHC&FXOvx7 zCCsq{CO=zW?dY1NE?)Z7JG%W0;t~EERQ@J?vp0AkZs=7K*F+*0@P_x2Y-6}HeF|p} z&%#&#Ky60#h2Lw(RNUQU)DO)iQF!#|21ExMkHuA@CA^>A8bnR~oi#+u*q0Rz-CVY) zkIpkisuC6b`H57_*st4chwTISD{z>n!EV}OO*T}!YRq_(F)R7l8#1Dv3#AVI%unI=O&wwE;!j5@Ue4V7 z>W^7l!&#CUOr{rUUK=#0#t1Ii->&BSUDl{PHPz*YheA+yUXUdq^(`5Xh~mdmJ-Etb zK4sFll0Mq2x3OVL+_yQ6_klV3zJD){d6x^Tyi(?YmmeYM=1#Fl&h_o(59xCYQhy3j z%?4D$W8+tmGD9pSNg-<|vAYqRyMEl7p9}5o+FG;(e_l}tTzsh2D;GIPVO3FNcG|e> z+O0x$JD8gwS8-eV73Zs3A#e0*#tSUE;!|8N>E5MY4(Z9fGxEqb1B_2{A}jphm<&+i zmi)Ey*vxapg_qpfcHDuqt#tHFKs3wpHt0=vGPWIg5#Y7qcY0wgv|MVPXG;1%Y*@DO zDfUQBi9U$kH;*(T`3`^cS(lcaHJ{#?p5t!t-TO-W^>Sg-z;kIhtWmGWN&E!Nti7n) zZB$&M@aK(0wV>u%5TDD=%Rf32pMfm5nc*lCrQ~6E8oA z-vyEF4KY9Gl{MNV3lp(L*01L{%T=eeQleutUsn9?{06MZISMq& z+CiZk=7H1dnCJMZG{789hBLOvlKovnKh#0#UAZ<@^Q-}KKn~&*UeZFW96#osD4C9F zQN$_=Tk4mZlL@bq8QOyBV9|?|Eb9exV?sv3xIPM2-}83@y{?Y@AJv;8!SnnHKU-DP z!i4J%o==G8P1Zf5q0n9OZ7tj1K6&W5h-ka-c$6fNzVCj#QC?Uj(K6qX;93vVxxZ&> z{z9Z?Zt;ph235^ZCUrob)%J7avvlS(h9+LGBE|O>AHN^fh+W9YmrW~MOrL*xW$<7# zo^~VaooLdsZS#vL#aKebH~`!+IASHjFf&zO@{-oqpiRR;pZIM+&d={0J;D}PrBpqY z)6{rWhkV>$NQN4Prn+_4FLarGlP_9(u9bhE?UQzVKj$40@Z@8c;Ubx;6^zH|nUT*T ziAPSZz#@MhZD;Y`DCEehi2UX9=gO#}M#*Rt6FoY`Ua2zHo?+G&?;kYas`10*+E8AN zL}5en`UNL^rco<1%|<1M2-X;xN%Es4xyp?T4%>aqgXQgz^)KLiLY`%QA+Ch$obDTb z!lU7oiVd?_2tu2ykrJWFQY?F^9x@isi%7S4PNzsDLarBd&s!!7N)4qGxaT~Kof;;W z-({fuwiz)MUv|UU53Q*NFI!N2TN!%c@xi#IZo!mUCig8;gxfR~N`ifChJF>lh>I~} zfW?C6H|0Zzt$h~nb`)+^;+3hmu2P#b)`)j0`Qg3(4QG6F8bS%3zP)V>ZA~h;7KnfO zXP8g^mQ8K*9$yFv>|8J-G(O`U57rQzlIDcyk%e}BPbSr0f0Xa?2YdUqHK<>!Xiwf{ zZdHVecK+Om9gf{|QlLT4D_hlywSR4-9&S{`ysRziitgoJ@J4&4?OEfx;mr&559VIZ z!%EA}S*#k9txubq6u0}HovoK0Gjf%B{Lt{n{b^E5z@6y;xT{=?elU`;G!Y%CDM~MW z?x)}c?X32o@y9(@a`2yEF;5{w3B<|yAeR1R2?y%7Z5H0_WpNbqRq;uqX)hv=Sv7;j zwJJxk(;}%CS`2D0Z^l#QGfI)nYD_-$*C&LRi&GF%xKXZJ9vw-em%hX5TqlqIFx!b* zb^mP6Juef`LM2-yLb2I}HUveMR7_+=`;IBQuZE{UV!*O{hzj<==m90{y+SJeGI`7=A06wwHl4DL}T{K@e3E%3&0CLg2dw`wO*w}>_Q@Y>!0VT zS8AYf&r}VqNA~M4qk0FWAS~t<{>y!wgbcWb&-6cl&DrKkBB{{d(0Jn>$=2yxM*#7T zmb80o87&3Vn_M}+F&Z??cVY(ExtyE6`*WrAmWN!LfwMC!;?(-i2uXi?TFW=WrQ2>E zZCE7hDE92D(E(e%j+%1QUWmz>$1H>EFJ{g)^XlPeqmoJ${%R+)7u(>rhoxSytmJiH z@LwBy@Rmn5Ln>og%hAAy$)8pcA+;dYrydH+Smv zN!gic9WB@SO>F5-p5roqiZp*g7_tGDco*QO0B%l>TeT1`Y!w&Vkr?|C{Iow5+{Ea< ziL!c>zvlfe;7mZhM~(!v)|M9kdYBtoT^3BMm|bBLIxw&eQvQ}VF#xLPnLTe>iB>h8 zMNYKzA$Ae(S`+b)iI_U+QZKA4h)2QlcEs!3Xs9;SF0GCZe@GrLVJBAHi}lA0FHAj? z1s5(>O%4wsU+$v-xgrl~2F##Wag(Jry8;@9)#Fm%(U8A2YZLJq>I%pNUvm&BAk|R* zZKjPtM6my~k?jspn7I=^kWXZGwk}yTudVEJl1(4ouIQ^bXS@x3KGDT6YZ-1`S;JAZ z5~1W&kLn=H;kz-&`#Cz&N5r?}R?YA!uKwI-VPVrH>5OtUX zLss=`KlI`g-DoDDmn(%h?Nm2@%9xuHh)@HG#}U(Ir_Hftgl>rHlItQj!Dbf{Y1+(W zG5g71HeDYh;1%D=NBu^87VC!>;>({MF(jfU(i+@^ZuE6DYzIwBG*D6xjOm|Qi-MO5 z`TY^wTIswelO&vSRD zZxgg{V)0D)Nb2AhKdr2fvuopJRKH4hpFa#j@iH0F=W9~%w$V$mh%X(NZ7*`nLHRIn-9PPOdlmh97ik_J!jIR9T?2}7idD^z!c9>6UWfb52c>^axPQCZ zy!h&3g_|-G%N+F+C5PtON<%xUY+NR5v8OnuT4k}2skMs(71PWJnXf?F{>yhNcwZWT zjR_;z?u9>xM$Exe6|XbhEZ%5?2i&-dd(?G&b|`w?(W+l zD#29<+a&&`{*!hXd(&2&i0qj0`-@fu}JX_UctbCibS4wGfGOR}%R?DdlJ zt{qW`0%>NqqS=wA*e4^LMjbu+Mw6}QX}C5Cl-fjDOXr9Sv=oy*{!wUr2VP@F`fk*& zh_K1`LjcYw8YdTGXx{I%)%sEg(9Njbe(hEAb4(f)4 zZpA$+2`)Z<$IzeCZ#fradH~~N(iDH^3^i}#5vK1)#>zyMRV;Dbp>YVcK@<^mL}QEy zp8L^|0|e6~V2@Agm3}Kr6WVt6C+hF^qC|41%#WEk-AT4j@rue!^71-+@l z)=UW3r<8H`x|DVfSkZ@^V%mp(u0R)imS)?+$|a25e1v4ZbJ;ep7UgHT0)9`nZIuQkoV3PXAO^o;KKu<9qEhR`$0=i~)z6~$ zBw5q`flZ_%rY)~EFB_OY=)Wx`+y^=N&apWutUz>}_Q1HKRKJq#YC9Tzva+Ya+&%9q zyfBq1nIMWxf~E9V(%wmI*>8H#wT6-fexd zr{T6Q)jn&KHl7z43FIQq%|L%XDlIW2oy+D_#p!B9lRc%s{ws48q;{8KI?`9KFJ&6Z z@DtOnP;2n^ftytSISZc#fvOlL{a^n5`j`dx4iXU#CY0hz5dqr8MuBW6VkSdMrRgpW zH$D@M6E_9%=QS1dxwERjO4x4si9LvnpmY^YZTp|9h>&8y(uYH|vCTi%=vb2?O0Z%> zNRSjHUMcxIdVpO#ZqrOogx>A>V|fYUW)h`Lt)nV6x05(%yk~W?G#yjz(HD&}2*F_! zr3z3DJyQ$26c511aia7onE2o(&+5LrbKOX@bwO0|BqVzNM845mdew1`4LtkrQI|^QsP)ir1oBCVngKp=Z_{bcQM}vu98j z*^m;cQKIL=X@lHJIzi@tLdO)=`OFb5_Z|WNJq7=A8)YX3KtP~CLO^(dfKc1784FK5 zG14Z0=Ucez#=$6w`unhSi$i^Tc>aZfQ38yxXOxGC{V)H*ORb@q>q!?562#ib4El%$ zLI&4EG*!E$aeI$KR_Qhm3$$<~7y>|9dbYatR@Rzv z{dc23zIZBL10&n`xfsAEEV5B-#F~&M&qNwai`N#rYFM}))Tp!SY$7Mx1=_7pj1%57p) z`-~-;a8}8BndZ!djoa9KTN};t4M*w_`%n|ZaAQ%0qN=ZgC9x*>hsovbtBF}w&|AdQ zHggYpFyluXPX!fB&EYSA>9FOOYWZF(abW?xYmwGtfS>lH`as3eKm7U-FsTBxZ7pDcl|{_n_(rXlcz&ZX5`C ztQ29bW01y1mMF_xP{_t9rR;}iVkW-u@W_1u(#7f7VeZnEQjvK#^W!l1T@0t2K&S(e zr8C5>a1bb!c(_JXtW0$*`$O+u|H~h+sk{Zs=+%NWVaHfp2Z|P%+|~23x9ww% zk-#0Jd z?C&gqJWyh#-qWY0Dfh_!*!mM2o$-imiSX*vHP@dq^wzX7@F&dV6c7Vec?JJIrB1*# zo<%QomTF8YLoo3Fg>A6?FBo<&Uz))Obg$zl7(vU45eWt+GrzK<#1ohikYG1$aJi1U zW|uT>TlzIk+DfL)@%J45;_L!6T;K-?)LJY_rKNV>Joi3;q)4_tlF`C)rGF$Htv}83 zg^@>EMay4qk~AzXj%ezaYqV0$?We6j69}DJ0w-Fv0|tT-ljbw(28|U#CcJ`}8r6}4 za+wK%Q$`bP`@W2We%VCGmM4+aU<$dd+__jv>d_{vZ(PE|-k)VMQkp&(71NVAn#+?; z%_Vn}_LB3dOq`uE)K6%n9{d<)A>0IoAA}z5hezbs%qZFmKbUfnmyO-9x)pg`y0$_&_ZnYtWAk5eE zNP(O@&={-Gqd2U?ixXLy)@pJ2tynJ|E0l$w&EvoY=;sTqvL*4ywJFWX$1i}a= zZyOL{b_y!6&A@)L({l(_kQ&&%iyQaDQSvRe_Te(E*ZP{gw>FqQ8CAQdm}G-pJFUlM zUX^X7{bMr_z2q%bAm0jER8yY+R7UHJdDah;gMrD9Id6?*<0pPyGAYZyXBS{gch}gi(4;42NMImN1M6D3f(`Q&Ns<1pT*>ThTz4~gRbPh7V2WVr zYKp(yNqR=kW$p94%3|c7=;*_yiA?9Jvd0GM>RnUZ6Ulzle4fE}QwM0h!k}5>EXOb~UJ4?d~Gf%9L-1?q?rDifR9P9ESlIy>y2Z6U>$h~}T35RkZBoRh14?P3G z=5TAeEDMzy@Gcj~d){p+FotAOgH5XzWac*ZEW4Ul>RuE6g^DLF-0_GQ<7-boZgl1-VGqJ5E|0E@qU~v5|eCs zd(Jo&!c)qoJl@GKgELY_f5Ty>Cth4?sE`{t4f5B9&{2=qIQ5zF0ew zv_6dTbPy>L7xc($vKz>ocV!E{Dr#ys=_6BABqBww4-OTlSF+zo-{N6HW5QvVYopCL zaLbJaPse)6y3nb84o~^863vO37Qa7@3|?^)7D^SWSlDXllVIH>Y!fLoPFNf0SctYo zv*my~7Rb`EYY?`NS=)@(Y0KYc4ZCmRSR*`WMs|I_3hB`CXMC{iVFqdPrZ0Bjazz{A zIxz$p{<(5#r9-Z2(f?hYM3&cMq@0TGo>!m<_E!QH<- z%&~Nu3lb`Mr3tb4D^>di`OWjn9QNkXtsZj|2#DXPLPuO;j6dm`_BH7Uy=hq_`eYlR?n*u@k8^7X%eoNp9ygxagEuL z;P7lYU(~LnUsNbI?r$I9J7Mx9_I^!?Uma^7+0!6a`=R zr_#xq1HXl%T(y*99qx*(6y>3;U2GO{(_0g6C>lNXBbuq2o?R3ToAm3|nE6CfEkR7h zHoN6zjmXk?op62{Eg;g?1`Nd;AHgkgmylR!!$iwIHmXUMQ^U`k2stw6w}} zjr3pR^yh5DY*CeK1;qO22f8TYedc)b1KFUs$3Q-aR=zo$pFay?Op3GVcgm{)&K~$>8lFq<$y;M#+!bcIJ!jU>&q`+Oj%rK;Y_~e=sM^Zy%s- zSw@+hsY@i03gd(hG|*>Gcjfpxd6$IMgstH(i$x)WBZLGecgqM&&-`jRi1$`&Ho6V_TRuto`-b&AD!U?mgIG#fL zm(jAks2^w~df=dX1~o$4`Ecn}B=`V$F+47sjj zfq~CZKZXti|7_RengG7u{;wzrxLmu_`Jbmra*Jbql!b4aLr~3RaXXH2LddH>1 zX|37Ic$C!-25kHdjF~e}rVy9x1G+trmc6o(54E%_(aWRgeBa-3B0UB!>wRf{R6wn1 zs7D|^^Hr~yD7qLgfBOXO*}zL#16gZ}`y7#xP%DkiOXLP3{Jd*shj-LTJJ{)vrJQOJ z_n+C9zs!c4*|@C{XrK+<`p5{`)~o3p>CBfwD|(pAS`M;Dm_ zJIavV;g#JbOVI|cx?{=Q+21A3yWYO9Bcsivb!fT=Tg`}k;rwouFOqux(G{!Y zCqWZu%r|8GXreK;lg1!^=TdQ!gBY{#$oxfLe7<&Y4i24sV$dYLp8OqVK0$XXFv1zm3MLU{E`M_6a#dSU_>62AI7j-s?f{S@s#FN^WC=j3M6lNoED{vg!@ z@HZ!F&;o9+Kf|GT|E4#U(SZX&L<9tEG6V!uXtf|B2XyrS2@S$MLIHh;2EwXc8IeYW zUHT}^-Dd(m8PxU30n+%7BoRCUk(^Mi(alY$;LrG%?)1m2d`_y27a;UVBz=7qX5!g5 z^|JUK1AbwrSKm5wu|}n5O9SE#Y^!U|BZing6q0LZb&S31uByyjY312l+LZC}R5(ml zB}_%@0tvfFoX&~M*#_X=SxNXD-?Ip1b#L5XV0DN z)KyiWGf>?Gs@UCiJ>lOGg;K+EolQf=R?J$=!}S+YICZCi0)8Rl}nu2_RA9uxmh&zxxbOZfQi6+V}|;IQ%VBUa;4N zYdR7YHa(^167!=zp^FEEc)cfuNkhjlKvdwEgkk4yZd`?{u)m=v?Hkg9#skPg=hlvD zFXRlCSx$Str3lET)omV?eq&X>eece7mBWXxs#IAd{KoxO+}vj0u<;{pe(!~T z;wP(`-Rt8uM-QdvpEM`xD16!(bR7quwplwSb>;ak2}hZf$C+l9q?=@F@|WgumlFYC z%7$All(xBerf<_z4Vg~s3G*op1oL6c+bKF1HN7P_Y(Bg_J&~W{uvS#UlrNRj9^{FL zHaumhJsP^GMEU8=$nvkSp0-%STko9850f@MaZ@4I%tUvOuchBmyqvhMB3S1twKZ?5 z*LrKpFg8fXzM_}bQ#mk6re^KEL8#V2g0A2fE8tD@ITGi;*b=S612$Ky{}Zq&$kei7 zej4k~5TG(1HK3AENZJzd;)zC`2Vc}!QDdp ze@MCi@yBb-$n9iaiG4MWrqqaBH$+Z1usNN*l_t{?AFQnLs%~ldCRd=GFkS&3CxyvnT zh$6pCyxETC*T6ZtD*{`euqHM`i2JsF$g~y5zIu!=uadnq%F)R;_!Bm;Szre#K|1L5 z$qsH`vl$~A*(5qdBl!fP7YNN*2j*@vLpOO-eH69)z0uJ~sz4YE5C;=I6ts<}n(Q13DAvq*U{|;PEsDvv*t#D#Sj^lg$;=$1CO;y@i}ykU@U@Mys{j;f6a(hn$FR;!k!#K!jxdmIuRJ+_1ml z@wV9%ol)VWj!}_X3VPyijD;X>X`>pcY9{wr<{JxwM1P9onDo$;EdJ`{b+!OKm-%a5Rgla( zPJBxt+1#~6zaW(-hAIwQHTqgeW$6$z^S!R(o^X<6z$Rz9e-&`ETPQs?QFyHLS>bmg{` z&DDaKXQpAIrLJ%6$`=We=~uQm?bUAx5Aq0_IepKs`XsJ8+!h`|%M!xocjpBEePyD? z8K73LL8uUo{c_lg@ONM5{}b%|H~TyZVM1weL8Oqh!{;!`zQZqY(+sKe0q>tIBMzUZ z{#O$Je|99v@tQ7O+@yU+p@HG?cPmdG)mKoj8)3nxS6O}$zg>10wmFpTt`A6BFb}q^ zTK>NNdo1p~wTtCzHD;fAqL5GZW&y=$#eUf8)%fKC6kT-Vg_%cfcn-(dJ+{CxutLWDm~{Ug*{05o8t z&`Ka6{U4=K9T6Y`x51+7@>{Z}Hzx!I>i!w{bnOfTAO-*bk3MvhCupT%IR{X6#0{Rk z>I%ab``Tyv>@HZ!Ru7G%0eKrDFo$>leJ)Ni=(zPK@EPl?w+6ZKI|)?nxLNJF6KcmS z49N9pp?f2pGxGV4S%iZpEK`!dz>c>+u|gM{LUHQ*#D8eK5{t7?V6sYz;I|j&xIznE zXxd;$U4{@A4oY-g9M}9*{uRl}G-~om&2r`eGq7dqfv^AGfYdk@pP;SE2+tQibZ8`} z;MSGQfs{<&ic}97`!t#|ImR`yKb0|6yc+W&+Owhlxu^kO9~ws(w>`cIKKLzxA?Xy( z7zx>Z5M+JI%A&;xI)~p_6t8<;knvI>1o6?8JNg-BeMTM`Mi{r4*0p3yx_OIM@1338Oai;2i@6U+9=jyI?W5}A z;xA5}9QYdN&9tyDJn#_FB+M^A^WKHnHF`(Fv-bQ;o};{Aluiq42uD$Fh{wUkoKq*; zZqxE%nhRos#p0Rew|DpB{|!z;cToT#|02JQPg_n$*sz1np#fgQNV@0%1vn`k1CR)F z{5(fm{$M=K#(_^m&J;S{kH`<@Bmpr(Q!oMe;HUV!@PPHAJSI8*Gh}iNvlM$r=V6UZ zDx2#7sL7NK)?k*!O8eFJ=&oUbP#r#ppna|d`tYU`8+W=LE^V@fr9uMsS8`))O|`q` zVBoc@S-botsHu)O#KPyE!o}(HI^|ZvD7Mt6;i;TxtL%+et@&dScEsG46j9puTQrYY z;OxSX7L6>wL=pFd@vt#nhtdaR0#FtDSgkonF+Hha(oWd0^{=n--Tog?Y+6SU_V?Gm zF1SLYTizNwI=S9AjiMcn3pVhJTsjJ&U+p&wZTxCuMbe)-q}OI3?OOZDfvNdR^iXh4 zcei6@SxltBBX+C*@DjT#@vc10jT%E$3j4o{8?*`w@D_$62R5Jtj^hFjz!Qe!C$7B~ zjVByap4@E_=#y*601d(gFo7>Kk6AdPaM7m1<4rywRNL5Q(E0NC*~OV&-;uvin4lLZ zN)&2O3lMMTJDJ<{-y~F<^yPX-wB%T7h?Lh)_WHS6MP&%>rGg0gf&|6EY3ODzNkNSW zIa{3yBSRgbl6^T#IuC?Sf~=ua(`_a~c2AZeHfT@bM&5<|&FFTtEiRa9H7-a97Y9u! zIjAqX()c5RS&q!ss9bNpYBkA^`l+9m+uUdB*r~nTENOqj%pK)6`aB)OdtENH0+rtO zUVr&&+v@NF0RvpN9)r*BJK z^Gpxf@%yT(hEOJl9!S?}6@YIGGS#*!?ApVK`CUFYYM`--n0oq05O}HQmqIFl5OOzG^1k#XpHmcIs%S(WqzMb#M%l{Ac2AJir6IgJIw3N&v8eTVae4 zPy?GrKM(<&;LKxUz%^`+ZQLgVEF!|VgH!-P5bXSq75UR|Dr5wNWN|1>E*|87!bo%PV-a*;KMr;_5zTB0&8gJdNJc)$f6bqecu3(hH{$%kf5&gAcn>i zEdUj~r3P(49$bT&G2kPdwq*jyh0`K!p4JRln|*eGLAX{k;+b!rPg;3Vp~ofw1*kp~ zh`tfY?FlkiqiRMuonM~f+uu!~@h<>!&^1>8W8;N8pboCF%nyJF_Zi#~Yfdts1RsoH zf(>r~GjNgl_kb06N18(bQ*c^BBtRVw!+H!r78TYdrW8OHT&^Dq(1O#*vjJCd8euNL z5>E3gc{=fh)xa(X*ug%*(CFI$XhVeccYpJ`z31sW1iy-)o!S8D#`n#Dzi^r09zYAc zO{oFEF*;0oh|ru}2Jyy@C4h-ZZ@e{(*J1$Oq^FXOjB?HQ^?5eGM%AAKF`> z3cTbH0HlGJBHjThfUr5bFbLQS3*t659ca<0*V09 z{vH2w_5@V8Llb6@sQ&N0ItW^&078dy-vL2Tp#Tt8J0M8MZxD1$3B=f_lmJAASI|lXB7$JuHGl%q;p%KZ19jotrZk`; z+$m(U9VIn=T3MP&;AaM&h)7Sa;Kt({1|BpNp)Kde5-8ftS zzh*%G2DFA(cWweQ!b=IwPhEh8P2PBU(M~>rm*8oyOvfXf@mYN`1=wd5yAJ*t# z8_)$_OQ-_~f|sPe13_>kmAZg7@KRY1@DH4u-UoDs(@+P2K}awy5u?D5aGc)-X%$I5 zJ?ahIY_PML#;3CxPk4t+Hjii1pI&4_9LV_L|2erKYP=i=Ho$dN&H$fMfBpd?JqIj+ zmwwL!pK>Gq(OxV8chF!UDcT`3kUW7@_ym$Vv~wKD1$`e0LT`NYe-&~aP*Eg7dv|As zoP*>bqM{(d98fSKiUczXVnQ)vK9w_P1;cujdMfChSronB!-zTKp?8Ke@sq@&&qXx0=3yhNYQ!rYpIuG0H1^r7>mbTdy^Kv;;;anj&i7 zvl23;h@}nRYPz%1l6M;UMkV%&w&pn`jZlMai6#^deb5wB@Xn8#EC!DKteMS9*S~12 zS?SqV%}G|uE!FI0rIhcQL{>WcL(`I#EYt!nETr+X8X<_4z6t`)c2c)R668p8H7>_p zGZE%6$M!K7{$w~OOM%5VY_}2$sp`+xLT@I#Wh2aC4q9Qhr}H)RZd)VmuCvaNZ7n!b zzd~TLWR$nnPAFm;iyZ`OHZ|5c2??yO%vrFY&4PuSaDg^)(@p5ggdrY+J1fO{3eL0y z!@Pv=1O~&sg&(vqvZ`>CDt7b{dNKHxY6AXR5$Wm+U%`r%N~;Ta6d-l(H3eMKNh!on z_=lB@YYSso_tOG|&#Z1@pss(s#+UOo&WnmEAFQA_;VA3qyVk}9j%dG^iS|+oz4NF7ODEu2 zs8bigi?)#%|#R1$EscY^4-`?i27FLqH1;3Ad;$<*-nLHNGrg zXiHIW-R0=d@t2rrYVM{L;)Bu%tj}2dRrB4|sJECtLAff(b;P z6-E-R%?Hj3jQa37;T(&E1qH$<$~fzyT=@AfHhc1>6$<7Io_4QBshW15XlA#3kCbUsy76@_8}_OZVA;{D0I9dtYf8@_XHm%wY@LMdu;oM z7#Hks!b)i=*TB^$Mzaqvl~4t=zeF;Qy(5ubzsR5$07 zP{x|h`6{etO?N02#;_1Q@T0M(`7jZs5#_L*B#3M(PZGt(Y7_KK{OL1m{)KEa zF$PSG#B|aEtTYl!X;WY;%ubAgm^G4d-fzz0GZy$uJj4U66y+lpvu?GhE*@lcrM1M~jIURa z=*03A1I|2L^ceYeF}}boo>ma&EOyLuZ6Z1_hL9HG3VABF z5nHl4iw@#aR?3PIM>BhU-Mc+3ME*sTKW|7ku}C(sm*~g96O+VstmK?5MliJ&quZL> zV8icWMv@qnw{NKE%OLkgi5aZj)CuAOR#!Sj9LLm*uV&?a!q)b(*3QikO(fcp37uQt zOhUeStRs-P3Huo`PaMJ+)-D!*W+jj1<$cHn@n2Iq4vW@{E7$~CJ3epUM~uR{#@Zuq z-68yp=#ZEAn`p&6J#wSyz}C1qIpQc=s{1Kle9Y`EIwdw_-; zP{Gn1u_5?x$7|}a^I{s+%|9>7bNciJaVHDNiG`vKD=qw6{LV^?u8C~d$UA*Q#Op6I zLql$f{aGpVwkR3t6r=d~}gy0wAVA`YA zFR;yzU7_kr5ie#iUa9Kq(J||-a4(;TK^w}cJ_PTVvR6jFMAfLCU|UTc1gWDWk-X`y z4qr_qJ8JXZw2&iS*mgHpm1+n_QdB`{#4FLuo2+2ERD6{xfm52Bz_-+h+W*a5a?=F$ zAtEK^@kf_fbJv}9OzNK*rD zmxz{hOlW^rm7u!^4pKy{mtRTki4;;>8?)KmA@PmK+&|l_xWOKD|8j4Yst3m(Jw$

-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 diff --git a/source-code/Volo.ClientSimulation.SourceCode/Volo.ClientSimulation.SourceCode.zip b/source-code/Volo.ClientSimulation.SourceCode/Volo.ClientSimulation.SourceCode.zip index 9fe6e26a444e1f1e53dab99bc46c15fd6135dadf..68193f472d5704054961694f5bbe60ff88ba638e 100644 GIT binary patch delta 9879 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

IWh7=|)!t<1>E%pRd+hEVp%CNdIb)c@_? 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 delta 25167 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 delta 6080 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 diff --git a/source-code/Volo.Abp.VirtualFileExplorer.SourceCode/Volo.Abp.VirtualFileExplorer.SourceCode.zip b/source-code/Volo.Abp.VirtualFileExplorer.SourceCode/Volo.Abp.VirtualFileExplorer.SourceCode.zip index 879defa228b73ea82d30a5afb828f6a56e4f5a6f..cb3a68021a9820e640f67db210d38bf1f7a84f20 100644 GIT binary patch delta 11939 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 HR8ap9AgtG> delta 12196 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 diff --git a/source-code/Volo.Blogging.SourceCode/Volo.Blogging.SourceCode.zip b/source-code/Volo.Blogging.SourceCode/Volo.Blogging.SourceCode.zip index e826354f678598a949648334af4d9297d899d1ec..c8f4a8cbecc3ada66452574da5bebc35a506a6d7 100644 GIT binary patch delta 49377 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 delta 47485 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 I^T*}?179N@ga7~l diff --git a/source-code/Volo.CmsKit.SourceCode/Volo.CmsKit.SourceCode.zip b/source-code/Volo.CmsKit.SourceCode/Volo.CmsKit.SourceCode.zip index 21544059297eabe376abd346bf454eeff9b1c5ed..05161372d3fa23310d218b42590a133cfc4d508b 100644 GIT binary patch delta 110665 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