Browse Source

Merge branch 'rel-9.2' into MauiStyleContributor

pull/23183/head
maliming 7 months ago
parent
commit
d79c443cf4
No known key found for this signature in database GPG Key ID: A646B9CB645ECEA4
  1. 4
      .github/workflows/build-and-test.yml
  2. 4
      common.props
  3. BIN
      docs/en/get-started/images/abp-studio-new-solution-dialog-modularity.png
  4. BIN
      docs/en/get-started/images/abp-studio-no-layers-new-solution-modularity.png
  5. 6
      docs/en/get-started/layered-web-application.md
  6. 6
      docs/en/get-started/single-layer-web-application.md
  7. 31
      docs/en/studio/release-notes.md
  8. 3
      docs/en/studio/version-mapping.md
  9. 3
      docs/en/tutorials/book-store-with-abp-suite/part-01.md
  10. 2
      docs/en/tutorials/book-store-with-abp-suite/part-02.md
  11. 2
      docs/en/tutorials/book-store-with-abp-suite/part-04.md
  12. 2
      docs/en/tutorials/book-store/part-01.md
  13. BIN
      docs/en/tutorials/microservice/images/abp-studio-abp-suite-inside-dark.png
  14. BIN
      docs/en/tutorials/microservice/images/abp-studio-add-entity-framework-core-migration-dark.png
  15. BIN
      docs/en/tutorials/microservice/images/abp-studio-add-new-microservice-command-2-dark.png
  16. BIN
      docs/en/tutorials/microservice/images/abp-studio-add-new-microservice-command-dark.png
  17. BIN
      docs/en/tutorials/microservice/images/abp-studio-add-new-microservice-dialog-2-dark.png
  18. BIN
      docs/en/tutorials/microservice/images/abp-studio-add-new-microservice-dialog-additional-options-step-dark.png
  19. BIN
      docs/en/tutorials/microservice/images/abp-studio-add-new-microservice-dialog-dark.png
  20. BIN
      docs/en/tutorials/microservice/images/abp-studio-add-new-microservice-dialog-database-management-dark.png
  21. BIN
      docs/en/tutorials/microservice/images/abp-studio-add-new-microservice-dialog-database-step-dark.png
  22. BIN
      docs/en/tutorials/microservice/images/abp-studio-add-new-microservice-dialog-database-step-mongo-dark.png
  23. BIN
      docs/en/tutorials/microservice/images/abp-studio-add-new-microservice-dialog-integration-step-dark.png
  24. BIN
      docs/en/tutorials/microservice/images/abp-studio-add-new-microservice-dialog-integration-step-ng-dark.png
  25. BIN
      docs/en/tutorials/microservice/images/abp-studio-browse-catalog-service-dark.png
  26. BIN
      docs/en/tutorials/microservice/images/abp-studio-browse-ordering-service-dark.png
  27. BIN
      docs/en/tutorials/microservice/images/abp-studio-browser-catalog-service-swagger-ui-dark.png
  28. BIN
      docs/en/tutorials/microservice/images/abp-studio-catalog-service-start-dark.png
  29. BIN
      docs/en/tutorials/microservice/images/abp-studio-entity-framework-core-add-migration-order-dark.png
  30. BIN
      docs/en/tutorials/microservice/images/abp-studio-generate-proxy-2-blazor-dark.png
  31. BIN
      docs/en/tutorials/microservice/images/abp-studio-generate-proxy-2-dark.png
  32. BIN
      docs/en/tutorials/microservice/images/abp-studio-generate-proxy-blazor-dark.png
  33. BIN
      docs/en/tutorials/microservice/images/abp-studio-generate-proxy-blazor-server-2-dark.png
  34. BIN
      docs/en/tutorials/microservice/images/abp-studio-generate-proxy-blazor-server-dark.png
  35. BIN
      docs/en/tutorials/microservice/images/abp-studio-generate-proxy-blazor-webapp-server-dark.png
  36. BIN
      docs/en/tutorials/microservice/images/abp-studio-generate-proxy-dark.png
  37. BIN
      docs/en/tutorials/microservice/images/abp-studio-generate-proxy-window-dark.png
  38. BIN
      docs/en/tutorials/microservice/images/abp-studio-generate-proxy-window-ordering-module-dark.png
  39. BIN
      docs/en/tutorials/microservice/images/abp-studio-new-catalog-service-in-solution-explorer-dark.png
  40. BIN
      docs/en/tutorials/microservice/images/abp-studio-open-abp-suite-dark.png
  41. BIN
      docs/en/tutorials/microservice/images/abp-studio-open-abp-suite-select-module-dark.png
  42. BIN
      docs/en/tutorials/microservice/images/abp-studio-open-with-visual-studio-dark.png
  43. BIN
      docs/en/tutorials/microservice/images/abp-studio-run-solution-dark.png
  44. BIN
      docs/en/tutorials/microservice/images/abp-studio-run-start-all-dark.png
  45. BIN
      docs/en/tutorials/microservice/images/abp-studio-solution-explorer-initial-cloud-crm-microservice-solution-blazor-dark.png
  46. BIN
      docs/en/tutorials/microservice/images/abp-studio-solution-explorer-initial-cloud-crm-microservice-solution-dark.png
  47. BIN
      docs/en/tutorials/microservice/images/abp-studio-solution-explorer-initial-cloud-crm-microservice-solution-ng-dark.png
  48. BIN
      docs/en/tutorials/microservice/images/abp-studio-solution-explorer-ordering-microservice-dark.png
  49. BIN
      docs/en/tutorials/microservice/images/abp-studio-solution-runner-play-all-dark.png
  50. BIN
      docs/en/tutorials/microservice/images/add-catalog-service-contracts-reference-dark.png
  51. BIN
      docs/en/tutorials/microservice/images/add-package-reference-ordering-service-dark.png
  52. BIN
      docs/en/tutorials/microservice/images/catalog-service-dependency-dark.png
  53. BIN
      docs/en/tutorials/microservice/images/create-order-dark.png
  54. BIN
      docs/en/tutorials/microservice/images/generate-catalog-service-proxy-dark.png
  55. BIN
      docs/en/tutorials/microservice/images/generate-proxy-catalog-service-dark.png
  56. BIN
      docs/en/tutorials/microservice/images/import-module-dark.png
  57. BIN
      docs/en/tutorials/microservice/images/import-module-dialog-dark.png
  58. BIN
      docs/en/tutorials/microservice/images/install-module-dialog-dark.png
  59. BIN
      docs/en/tutorials/microservice/images/ordering-service-swagger-ui-dark.png
  60. BIN
      docs/en/tutorials/microservice/images/visual-studio-new-migration-class-dark.png
  61. BIN
      docs/en/tutorials/microservice/images/visual-studio-solution-explorer-catalog-service-dark.png
  62. BIN
      docs/en/tutorials/microservice/images/vs-ordering-contracts-dark.png
  63. BIN
      docs/en/tutorials/microservice/images/vs-ordering-entity-dark.png
  64. BIN
      docs/en/tutorials/microservice/images/web-orders-page-dark.png
  65. BIN
      docs/en/tutorials/microservice/images/web-orders-page-with-product-name-dark.png
  66. 10
      docs/en/tutorials/microservice/index.md
  67. 46
      docs/en/tutorials/microservice/part-01.md
  68. 61
      docs/en/tutorials/microservice/part-02.md
  69. 82
      docs/en/tutorials/microservice/part-03.md
  70. 55
      docs/en/tutorials/microservice/part-04.md
  71. 284
      docs/en/tutorials/microservice/part-05.md
  72. 82
      docs/en/tutorials/microservice/part-06.md
  73. 22
      docs/en/tutorials/microservice/part-07.md
  74. 1
      docs/en/tutorials/modular-crm/part-03.md
  75. 12
      docs/en/tutorials/modular-crm/part-05.md
  76. 13
      docs/en/tutorials/modular-crm/part-06.md
  77. 11
      docs/en/tutorials/modular-crm/part-07.md
  78. 34
      docs/en/tutorials/modular-crm/part-08.md
  79. 4
      docs/en/ui-themes/lepton/customizing-lepton-theme.md
  80. 4
      framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Auth/AuthService.cs
  81. 2
      framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/CliConsts.cs
  82. 2
      framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Licensing/AbpIoApiKeyService.cs
  83. 2
      framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/TemplateInfoProvider.cs
  84. 2
      framework/src/Volo.Abp.Emailing/Volo/Abp/Emailing/EmailSettingProvider.cs
  85. 45
      framework/src/Volo.Abp.EntityFrameworkCore/Volo/Abp/EntityFrameworkCore/ChangeTrackers/AbpEfCoreNavigationHelper.cs
  86. 6
      modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.Demo/package.json
  87. 264
      modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.Demo/yarn.lock
  88. 4
      modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic.Demo/package.json
  89. 268
      modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic.Demo/yarn.lock
  90. 4
      modules/blogging/app/Volo.BloggingTestApp/package.json
  91. 306
      modules/blogging/app/Volo.BloggingTestApp/yarn.lock
  92. 2
      modules/client-simulation/demo/Volo.ClientSimulation.Demo/package.json
  93. 240
      modules/client-simulation/demo/Volo.ClientSimulation.Demo/yarn.lock
  94. 10
      modules/cms-kit/angular/package.json
  95. 4
      modules/cms-kit/angular/projects/cms-kit/package.json
  96. 2
      modules/cms-kit/host/Volo.CmsKit.IdentityServer/package.json
  97. 240
      modules/cms-kit/host/Volo.CmsKit.IdentityServer/yarn.lock
  98. 2
      modules/cms-kit/host/Volo.CmsKit.Web.Host/package.json
  99. 240
      modules/cms-kit/host/Volo.CmsKit.Web.Host/yarn.lock
  100. 4
      modules/cms-kit/host/Volo.CmsKit.Web.Unified/package.json

4
.github/workflows/build-and-test.yml

@ -56,10 +56,6 @@ jobs:
with:
dotnet-version: 9.0.100
- name: chown
run: |
sudo chown -R $USER:$USER /home/runneradmin
- name: Build All
run: ./build-all.ps1
working-directory: ./build

4
common.props

@ -1,8 +1,8 @@
<Project>
<PropertyGroup>
<LangVersion>latest</LangVersion>
<Version>9.2.1</Version>
<LeptonXVersion>4.2.1</LeptonXVersion>
<Version>9.2.2</Version>
<LeptonXVersion>4.2.2</LeptonXVersion>
<NoWarn>$(NoWarn);CS1591;CS0436</NoWarn>
<PackageIconUrl>https://abp.io/assets/abp_nupkg.png</PackageIconUrl>
<PackageProjectUrl>https://abp.io/</PackageProjectUrl>

BIN
docs/en/get-started/images/abp-studio-new-solution-dialog-modularity.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 76 KiB

BIN
docs/en/get-started/images/abp-studio-no-layers-new-solution-modularity.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 68 KiB

6
docs/en/get-started/layered-web-application.md

@ -105,6 +105,12 @@ Here, you can select the database management systems (DBMS){{ if DB == "EF" }} a
If you uncheck the *Kubernetes Configuration* option, the solution will not include the Kubernetes configuration files, such as Helm charts and other Kubernetes-related files. You can also specify *Social Logins*; if you uncheck this option, the solution will not be configured for social login. Lastly, you can specify the *Include Tests* option to include or exclude the test projects from the solution.
On the next screen, you can configure the modularity options for your solution:
> If you select the *Setup as a modular solution* option, the solution is created more ready for [modular monolith development](../tutorials/modular-crm/index.md) and allows you to add sub-modules during the solution creation phase.
![abp-studio-new-solution-modularity](images/abp-studio-new-solution-dialog-modularity.png)
Now, we are ready to allow ABP Studio to create our solution. Just click the *Create* button and let the ABP Studio do the rest for you. After clicking the Create button, the dialog is closed and your solution is loaded into ABP Studio:
![abp-studio-created-new-solution](images/abp-studio-created-new-solution.png)

6
docs/en/get-started/single-layer-web-application.md

@ -73,6 +73,12 @@ Here, you can select the database management systems (DBMS){{ if DB == "EF" }} a
![abp-studio-no-layers-new-solution-additional-options](images/abp-studio-no-layers-new-solution-additional-options-0.9.13.png)
Configure any additional options as needed and click the *Next* button to continue. On the next screen, you can configure the modularity options for your solution:
> If you select the *Setup as a modular solution* option, the solution is created more ready for [modular monolith development](../tutorials/modular-crm/index.md) and allows you to add sub-modules during the solution creation phase.
![abp-studio-no-layers-new-solution-modularity](images/abp-studio-no-layers-new-solution-modularity.png)
Now, we are ready to allow ABP Studio to create our solution. Just click the *Create* button and let the ABP Studio do the rest for you.
After clicking the *Create* button, the dialog is closed and your solution is loaded into ABP Studio:

31
docs/en/studio/release-notes.md

@ -2,6 +2,37 @@
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.
## 1.0.2 (2025-06-24)
* Enhanced the ABP NuGet package installation experience.
* Upgraded template dependencies for ABP Framework and LeptonX. (targeting ABP `9.2.1`)
* Replaced the `System.Data` package with `Microsoft.Data`.
* Fixed a dynamic-env file path configuration issue in Angular templates.
* Disabled Pushed Authorization for MAUI applications.
* Improved the IDE experience by displaying the main project in a dedicated 'main' folder and hiding `.abppkg` files.
## 1.0.1 (2025-06-13)
* Fixed an issue with language selection during solution creation.
* Resolved a logo visibility problem in the Angular semi-dark theme.
* Added and corrected the handling of CEF (Chromium Embedded Framework) resources for the Windows version.
## 1.0.0 (2025-06-11)
* **Solution Runner with Health Checks:** ABP Studio's Solution Runner now provides visual health monitoring that makes tracking your applications' status easily.
* **Improved Multi-DbContext Migration Handling:** ABP Studio now prompts you to select the correct DbContext for migration operations when working with multiple DbContexts.
* **Theme Style Selection on Project Creation:** When creating a new solution, you can now choose your theme, theme style, and layout right from the project creation wizard instead of having to configure these settings later.
* **Solution & Module Creation:** Introduced major enhancements, including language selection, database provider choice for microservices, improved folder handling, theme visualization, and better module installation recommendations.
* **MAUI & Blazor:** Configured the new MAUI/Blazor bundling system, added dashboard pages to MAUI projects, and applied various fixes for themes and dependencies.
* **Solution Runner & Docker:** Added Docker container support to the solution runner, enabling users to add and manage containers within run profiles.
* **Authentication & Authorization:** Fixed Swagger authentication, and added dynamic claims support for microservices.
* **ABP Studio Login:** Improved login flows with selecting account and organization support.
* **Language Selection:** Added language selection during solution creation. You can now include only the languages you need in your project.
* **Performance:** Sped up the development cycle by skipping package restores during project runs when no dependencies have changed.
* **Dependency Updates:** Upgraded ABP Framework, LeptonX, and other Microsoft dependencies to the latest versions. (targeting ABP `9.2.0`)
* **User Experience:** Implemented several UI/UX improvements, such as remembering user choices in wizards and sorting items alphabetically.
* **Testing & Internals:** Switched to `MongoSandbox` for integration tests, improved local development against abp.io websites, and made various fixes to CI/CD workflows.
## 0.9.26 (2025-04-30)
* Fixed the issue where C# applications would not stop when requested.

3
docs/en/studio/version-mapping.md

@ -4,6 +4,9 @@ This document provides a general overview of the relationship between various ve
| **ABP Studio Version** | **ABP Version of Startup Template** |
|------------------------|---------------------------|
| 1.0.2 | 9.2.1 |
| 1.0.1 | 9.2.0 |
| 1.0.0 | 9.2.0 |
| 0.9.26 | 9.1.1 |
| 0.9.24 - 0.9.25 | 9.1.0 |
| 0.9.22 - 0.9.23 | 9.0.4 |

3
docs/en/tutorials/book-store-with-abp-suite/part-01.md

@ -34,11 +34,14 @@ You can use the following configurations:
* **Database Provider:** {{DB_Value}}
* **Public Website:** No
* **Tiered:** No
* **Sample Crud Page:** No
You can select the other options based on your preference.
> **Please complete the [Get Started](../../get-started/layered-web-application.md) guide and run the web application before going further.**
> **Please do not check the `Sample Crud Page` option while creating the solution, since it conflicts with this tutorial.**
## Summary
We've created the initial layered monolith solution. In the next part, we will learn how to create entities, and generate CRUD pages based on the specified options (including tests, UI, customizable code support etc.) with [ABP Suite](../../suite/index.md).

2
docs/en/tutorials/book-store-with-abp-suite/part-02.md

@ -128,7 +128,7 @@ It will take some time to complete the process. After the process is completed,
{{ end }}
After the application is started, you can right-click and *Browse* on the application to open it in the ABP Studio's pre-integrated browser. You can see the Books page in the following figure with a single record:
After the application is started, you can right-click and *Browse* on the application to open it in the ABP Studio's pre-integrated browser. After logging in using the default credentials (`admin` / `1q2w3E*`), you can see the Books page in the following figure with a single record:
![](./images/suite-book-pages-browser.png)

2
docs/en/tutorials/book-store-with-abp-suite/part-04.md

@ -51,7 +51,7 @@ Here is the details:
* Selected the display property as *Name*, this will be used in the dropdown component to set an author with a book & also it will be shown in the datatable of the *Books* page.
* Also, made the relation **required** and set it **filterable** so books can be filterable by authors.
> **Note**: You should delete all existing books in the database (if any), before the code generation. Because, a new foreign-key will be added to the _books_ table and if there is any record in the table, then a new migration can't apply to the database and you may need to update the database manually.
> **Note**: You should delete all existing books in the database (if any), before the code generation. Because, a new foreign-key will be added to the _books_ table and if there is any record in the table, then a new migration can't apply to the database and you may need to update the database manually. Deleting existing records from UI will not be enough because of soft-delete, therefore you will have to delete the records manually.
After, specifying the metadata, you can click the *Ok* button to close the modal. Then, click the **Save and generate** button to start code generation process. ABP Suite will establish one-to-many relationship between the entities, and will generate all necessary code automatically:

2
docs/en/tutorials/book-store/part-01.md

@ -101,6 +101,8 @@ The final folder/file structure should be as shown below:
EF Core requires that you relate the entities with your `DbContext`. The easiest way to do so is adding a `DbSet` property to the `BookStoreDbContext` class in the `Acme.BookStore.EntityFrameworkCore` project, as shown below:
````csharp
using Acme.BookStore.Books;
public class BookStoreDbContext : AbpDbContext<BookStoreDbContext>
{
public DbSet<Book> Books { get; set; }

BIN
docs/en/tutorials/microservice/images/abp-studio-abp-suite-inside-dark.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 113 KiB

BIN
docs/en/tutorials/microservice/images/abp-studio-add-entity-framework-core-migration-dark.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 35 KiB

BIN
docs/en/tutorials/microservice/images/abp-studio-add-new-microservice-command-2-dark.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

BIN
docs/en/tutorials/microservice/images/abp-studio-add-new-microservice-command-dark.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

BIN
docs/en/tutorials/microservice/images/abp-studio-add-new-microservice-dialog-2-dark.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

BIN
docs/en/tutorials/microservice/images/abp-studio-add-new-microservice-dialog-additional-options-step-dark.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

BIN
docs/en/tutorials/microservice/images/abp-studio-add-new-microservice-dialog-dark.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

BIN
docs/en/tutorials/microservice/images/abp-studio-add-new-microservice-dialog-database-management-dark.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

BIN
docs/en/tutorials/microservice/images/abp-studio-add-new-microservice-dialog-database-step-dark.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

BIN
docs/en/tutorials/microservice/images/abp-studio-add-new-microservice-dialog-database-step-mongo-dark.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

BIN
docs/en/tutorials/microservice/images/abp-studio-add-new-microservice-dialog-integration-step-dark.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 58 KiB

BIN
docs/en/tutorials/microservice/images/abp-studio-add-new-microservice-dialog-integration-step-ng-dark.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 59 KiB

BIN
docs/en/tutorials/microservice/images/abp-studio-browse-catalog-service-dark.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 58 KiB

BIN
docs/en/tutorials/microservice/images/abp-studio-browse-ordering-service-dark.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 90 KiB

BIN
docs/en/tutorials/microservice/images/abp-studio-browser-catalog-service-swagger-ui-dark.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 96 KiB

BIN
docs/en/tutorials/microservice/images/abp-studio-catalog-service-start-dark.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

BIN
docs/en/tutorials/microservice/images/abp-studio-entity-framework-core-add-migration-order-dark.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.0 KiB

BIN
docs/en/tutorials/microservice/images/abp-studio-generate-proxy-2-blazor-dark.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

BIN
docs/en/tutorials/microservice/images/abp-studio-generate-proxy-2-dark.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 31 KiB

BIN
docs/en/tutorials/microservice/images/abp-studio-generate-proxy-blazor-dark.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

BIN
docs/en/tutorials/microservice/images/abp-studio-generate-proxy-blazor-server-2-dark.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 34 KiB

BIN
docs/en/tutorials/microservice/images/abp-studio-generate-proxy-blazor-server-dark.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

BIN
docs/en/tutorials/microservice/images/abp-studio-generate-proxy-blazor-webapp-server-dark.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 43 KiB

BIN
docs/en/tutorials/microservice/images/abp-studio-generate-proxy-dark.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 29 KiB

BIN
docs/en/tutorials/microservice/images/abp-studio-generate-proxy-window-dark.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB

BIN
docs/en/tutorials/microservice/images/abp-studio-generate-proxy-window-ordering-module-dark.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB

BIN
docs/en/tutorials/microservice/images/abp-studio-new-catalog-service-in-solution-explorer-dark.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 29 KiB

BIN
docs/en/tutorials/microservice/images/abp-studio-open-abp-suite-dark.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

BIN
docs/en/tutorials/microservice/images/abp-studio-open-abp-suite-select-module-dark.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

BIN
docs/en/tutorials/microservice/images/abp-studio-open-with-visual-studio-dark.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

BIN
docs/en/tutorials/microservice/images/abp-studio-run-solution-dark.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

BIN
docs/en/tutorials/microservice/images/abp-studio-run-start-all-dark.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

BIN
docs/en/tutorials/microservice/images/abp-studio-solution-explorer-initial-cloud-crm-microservice-solution-blazor-dark.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

BIN
docs/en/tutorials/microservice/images/abp-studio-solution-explorer-initial-cloud-crm-microservice-solution-dark.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 29 KiB

BIN
docs/en/tutorials/microservice/images/abp-studio-solution-explorer-initial-cloud-crm-microservice-solution-ng-dark.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

BIN
docs/en/tutorials/microservice/images/abp-studio-solution-explorer-ordering-microservice-dark.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 33 KiB

BIN
docs/en/tutorials/microservice/images/abp-studio-solution-runner-play-all-dark.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

BIN
docs/en/tutorials/microservice/images/add-catalog-service-contracts-reference-dark.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 21 KiB

BIN
docs/en/tutorials/microservice/images/add-package-reference-ordering-service-dark.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 27 KiB

BIN
docs/en/tutorials/microservice/images/catalog-service-dependency-dark.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 61 KiB

BIN
docs/en/tutorials/microservice/images/create-order-dark.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 68 KiB

BIN
docs/en/tutorials/microservice/images/generate-catalog-service-proxy-dark.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 KiB

BIN
docs/en/tutorials/microservice/images/generate-proxy-catalog-service-dark.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

BIN
docs/en/tutorials/microservice/images/import-module-dark.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

BIN
docs/en/tutorials/microservice/images/import-module-dialog-dark.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB

BIN
docs/en/tutorials/microservice/images/install-module-dialog-dark.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 42 KiB

BIN
docs/en/tutorials/microservice/images/ordering-service-swagger-ui-dark.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 56 KiB

BIN
docs/en/tutorials/microservice/images/visual-studio-new-migration-class-dark.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

BIN
docs/en/tutorials/microservice/images/visual-studio-solution-explorer-catalog-service-dark.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

BIN
docs/en/tutorials/microservice/images/vs-ordering-contracts-dark.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

BIN
docs/en/tutorials/microservice/images/vs-ordering-entity-dark.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

BIN
docs/en/tutorials/microservice/images/web-orders-page-dark.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 85 KiB

BIN
docs/en/tutorials/microservice/images/web-orders-page-with-product-name-dark.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 29 KiB

10
docs/en/tutorials/microservice/index.md

@ -1,5 +1,13 @@
# Microservice Development Tutorial
````json
//[doc-params]
{
"UI": ["MVC","Blazor","BlazorServer", "BlazorWebApp", "NG"],
"DB": ["EF","Mongo"]
}
````
````json
//[doc-nav]
{
@ -30,7 +38,7 @@ This tutorial is organized as the following parts:
## Download the Source Code
After logging in to the ABP website, you can download the source code from [here](https://abp.io/api/download/samples/cloud-crm-mvc-ef).
After logging in to the ABP website, you can download the source code from {{if UI == "MVC"}} [here](https://abp.io/api/download/samples/cloud-crm-mvc-ef) {{else if UI == "NG"}} [here](https://abp.io/api/download/samples/cloud-crm-ng-ef) {{else if UI == "Blazor"}} [here](https://abp.io/api/download/samples/cloud-crm-blazor-wasm-ef) {{else if UI == "BlazorServer"}} [here](https://abp.io/api/download/samples/cloud-crm-blazor-server-ef) {{else if UI == "BlazorWebApp"}} [here](https://abp.io/api/download/samples/cloud-crm-blazor-webapp-ef) {{end}}.
## See Also

46
docs/en/tutorials/microservice/part-01.md

@ -1,5 +1,13 @@
# Microservice Tutorial Part 01: Creating the Initial Solution
````json
//[doc-params]
{
"UI": ["MVC","Blazor","BlazorServer", "BlazorWebApp", "NG"],
"DB": ["EF","Mongo"]
}
````
````json
//[doc-nav]
{
@ -13,19 +21,49 @@
Follow the *[Get Started](../../get-started/microservice.md)* guide to create a new layered web application with the following configurations:
* **Solution name**: `CloudCrm`
{{if DB == "EF"}}
* **Database Provider**: Entity Framework Core
* **Database Management System**: SQL Server
{{end}}
{{if DB == "Mongo"}}
* **Database Provider**: MongoDB
{{end}}
{{if UI == "MVC"}}
* **UI Framework**: MVC / Razor Pages
{{end}}
{{if UI == "Blazor"}}
* **UI Framework**: Blazor WebAssembly
{{end}}
{{if UI == "BlazorServer"}}
* **UI Framework**: Blazor Server
{{end}}
{{if UI == "BlazorWebApp"}}
* **UI Framework**: Blazor Web App
{{end}}
{{if UI == "NG"}}
* **UI Framework**: Angular
{{end}}
* **Mobile framework**: None
* **Public website**: Selected
You can select the other options based on your preference.
> **Please complete the *[Get Started](../../get-started/microservice.md)* guide and run the applications before going further.** You can skip the sections after the *Running the Solution* section, if you don't prefer to complete all.
> **Please complete the *[Get Started](../../get-started/layered-web-application.md)* guide and run the web application before going further.** You can skip the sections after the *Running the Solution* section, if you don't prefer to complete all.
The initial solution structure should be like the following in ABP Studio's *[Solution Explorer](../../studio/solution-explorer.md)*:
![abp-studio-solution-explorer-initial-cloud-crm-microservice-solution](images/abp-studio-solution-explorer-initial-cloud-crm-microservice-solution.png)
{{if UI == "MVC"}}
![abp-studio-solution-explorer-initial-cloud-crm-microservice-solution](images/abp-studio-solution-explorer-initial-cloud-crm-microservice-solution-dark.png)
{{else if UI == "NG"}}
![abp-studio-solution-explorer-initial-cloud-crm-microservice-solution-ng](images/abp-studio-solution-explorer-initial-cloud-crm-microservice-solution-ng-dark.png)
{{else}}
![abp-studio-solution-explorer-initial-cloud-crm-microservice-solution-blazor](images/abp-studio-solution-explorer-initial-cloud-crm-microservice-solution-blazor-dark.png)
{{end}}
> ABP Studio will perform a few additional steps after creating your solution. **Please wait until all the background tasks are completed** before going further.
@ -37,4 +75,4 @@ You can see the *[Microservice Solution Template](../../solution-templates/micro
## Summary
In this part, you've created the initial microservice solution, which already contains a few infrastructure services. We will create our first business service in the [next part](part-02.md).
In this part, you've created the initial microservice solution, which already contains a few infrastructure services. We will create our first business service in the [next part](part-02.md).

61
docs/en/tutorials/microservice/part-02.md

@ -1,5 +1,13 @@
# Microservice Tutorial Part 02: Creating the initial Catalog service
````json
//[doc-params]
{
"UI": ["MVC","Blazor","BlazorServer", "BlazorWebApp", "NG"],
"DB": ["EF","Mongo"]
}
````
````json
//[doc-nav]
{
@ -20,11 +28,11 @@ In this tutorial, you will create a new Catalog service and integrate it to the
Right-click the `services` folder in the *Solution Explorer* panel, select the *Add* -> *New Module* -> *Microservice* command:
![abp-studio-add-new-microservice-command](images/abp-studio-add-new-microservice-command.png)
![abp-studio-add-new-microservice-command](images/abp-studio-add-new-microservice-command-dark.png)
This command opens a new dialog to define the properties of the new microservice. You can use the following values to create a new microservice named `CatalogService`:
![abp-studio-add-new-microservice-dialog](images/abp-studio-add-new-microservice-dialog.png)
![abp-studio-add-new-microservice-dialog](images/abp-studio-add-new-microservice-dialog-dark.png)
When you click the *Next* button, you are redirected to the database provider selection step.
@ -32,28 +40,49 @@ When you click the *Next* button, you are redirected to the database provider se
Here, you can select the database provider to be used by the new microservice:
![abp-studio-add-new-microservice-dialog-database-step](images/abp-studio-add-new-microservice-dialog-database-step.png)
{{if DB == "Mongo"}}
Select *Entity Framework Core* option and proceed the *Next* step.
![abp-studio-add-new-microservice-dialog-database-step-mongo](images/abp-studio-add-new-microservice-dialog-database-step-mongo-dark.png)
### Integrating to the Solution
Select *MongoDB* option and proceed the *Next* step.
{{end}}
In this step, we can select the options for integrating the new microservice to the rest of the solution components:
{{if DB == "EF"}}
![abp-studio-add-new-microservice-dialog-integration-step](images/abp-studio-add-new-microservice-dialog-integration-step.png)
![abp-studio-add-new-microservice-dialog-database-step](images/abp-studio-add-new-microservice-dialog-database-step-dark.png)
ABP Studio intelligently selects the right values for you, but you should still check them carefully since they directly affect what we will do in the next parts of this tutorial.
Select *Entity Framework Core* option and proceed the *Next* step.
**Ensure the options are configured the same as in the preceding figure**, and click the *Next* button.
### Selecting Database Management System
![abp-studio-add-new-microservice-dialog-database-step](images/abp-studio-add-new-microservice-dialog-database-management-dark.png)
Select the desired option and proceed to the next step.
{{end}}
### Additional Options
![abp-studio-add-new-microservice-dialog-additional-options-step](images/abp-studio-add-new-microservice-dialog-additional-options-step.png)
![abp-studio-add-new-microservice-dialog-additional-options-step](images/abp-studio-add-new-microservice-dialog-additional-options-step-dark.png)
In this step, you can select additional options for the new microservice. You can leave them as default and click the *Create* button.
That's all, ABP Studio creates the new microservice and arranges all the integration and configuration for you.
### Integrating to the Solution
In this step, we can select the options for integrating the new microservice to the rest of the solution components:
{{if UI == "NG"}}
![abp-studio-add-new-microservice-dialog-integration-step](images/abp-studio-add-new-microservice-dialog-integration-step-ng-dark.png)
{{else}}
![abp-studio-add-new-microservice-dialog-integration-step](images/abp-studio-add-new-microservice-dialog-integration-step-dark.png)
{{end}}
ABP Studio intelligently selects the right values for you, but you should still check them carefully since they directly affect what we will do in the next parts of this tutorial.
**Ensure the options are configured the same as in the preceding figure**, and click the *Next* button.
## Exploring the New Catalog Microservice
In this section, we will investigate the new microservice in overall.
@ -62,7 +91,7 @@ In this section, we will investigate the new microservice in overall.
The new microservice is added under the `services` folder in the `CloudCrm` ABP Studio solution:
![abp-studio-new-catalog-service-in-solution-explorer](images/abp-studio-new-catalog-service-in-solution-explorer.png)
![abp-studio-new-catalog-service-in-solution-explorer](images/abp-studio-new-catalog-service-in-solution-explorer-dark.png)
The new microservice has its own separate .NET solution that includes three packages (.NET projects):
@ -74,11 +103,11 @@ The new microservice has its own separate .NET solution that includes three pack
You can open the new microservice in your favorite IDE for development. As a shortcut, you can right-click it in ABP Studio, select the *Open with* -> *Visual Studio* command for example:
![abp-studio-open-with-visual-studio](images/abp-studio-open-with-visual-studio.png)
![abp-studio-open-with-visual-studio](images/abp-studio-open-with-visual-studio-dark.png)
Here is the `CloudCrm.CatalogService` .NET solution in Visual Studio:
![visual-studio-solution-explorer-catalog-service](images/visual-studio-solution-explorer-catalog-service.png)
![visual-studio-solution-explorer-catalog-service](images/visual-studio-solution-explorer-catalog-service-dark.png)
### Running the New Service
@ -88,17 +117,17 @@ You can run the solution using ABP Studio's *Solution Runner*. It will also run
Click the *Play* button near to the solution root:
![abp-studio-solution-runner-play-all](images/abp-studio-solution-runner-play-all.png)
![abp-studio-solution-runner-play-all](images/abp-studio-solution-runner-play-all-dark.png)
### Browsing the Catalog Service
Once all of the applications have started, right-click the Catalog service and select the *Browse* command:
![abp-studio-browse-catalog-service](images/abp-studio-browse-catalog-service.png)
![abp-studio-browse-catalog-service](images/abp-studio-browse-catalog-service-dark.png)
It will open the built-in browser and you will see the Swagger UI for the Catalog service:
![abp-studio-browser-catalog-service-swagger-ui](images/abp-studio-browser-catalog-service-swagger-ui.png)
![abp-studio-browser-catalog-service-swagger-ui](images/abp-studio-browser-catalog-service-swagger-ui-dark.png)
You can test the APIs on the Swagger UI to see if the new microservice is properly working.

82
docs/en/tutorials/microservice/part-03.md

@ -1,5 +1,13 @@
# Microservice Tutorial Part 03: Building the Catalog service
````json
//[doc-params]
{
"UI": ["MVC","Blazor","BlazorServer", "BlazorWebApp", "NG"],
"DB": ["EF","Mongo"]
}
````
````json
//[doc-nav]
{
@ -24,21 +32,21 @@ First of all, **stop all the applications** in ABP Studio's *Solution Runner* pa
Now, select the *ABP Suite* -> *Open* command on the main menu to open ABP Suite:
![abp-studio-open-abp-suite](images/abp-studio-open-abp-suite.png)
![abp-studio-open-abp-suite](images/abp-studio-open-abp-suite-dark.png)
It will ask to you which module you want to use:
![abp-studio-open-abp-suite-select-module](images/abp-studio-open-abp-suite-select-module.png)
![abp-studio-open-abp-suite-select-module](images/abp-studio-open-abp-suite-select-module-dark.png)
The `CloudCrm` microservice solution contains more than one .NET solution. Typically, each ABP Studio module represents a separate .NET solution (see the [concepts](../../studio/concepts.md) document). ABP Suite works on a single .NET solution to generate code, so we should select a module here.
Select the `CloudCrm.CatalogService` module and click the *OK* button. It will open ABP Suite as shown below:
![abp-studio-abp-suite-inside](images/abp-studio-abp-suite-inside.png)
![abp-studio-abp-suite-inside](images/abp-studio-abp-suite-inside-dark.png)
## Generating a Products Page
In the next section, we will use ABP Suite to create a fully functional CRUD page with ABP Suite. The UI part will be in the main web application (`CloudCrm.Web`) and the application service and other parts will be generated in the Catalog microservice.
In the next section, we will use ABP Suite to create a fully functional CRUD page with ABP Suite. The UI part will be in the main web application (`{{if UI == "MVC"}} `CloudCrm.Web` {{else if UI == "BlazorServer" || UI == "Blazor" || UI == "BlazorWebApp"}} `CloudCrm.Blazor` {{else}} `Angular` {{end}}`) and the application service and other parts will be generated in the Catalog microservice.
### Configuring the Product Entity Information
@ -71,7 +79,7 @@ That's all. You can click the *Save and generate* button to start the code gener
ABP Suite will generate the necessary code for you. It will take some time to complete the process. After the process is completed, you will see a success message, click the *OK* button.
![abp-studio-catalog-service-build-and-start](images/abp-studio-catalog-service-start.png)
![abp-studio-catalog-service-build-and-start](images/abp-studio-catalog-service-start-dark.png)
We can now start the `CloudCrm.CatalogService` application by clicking the *Start* button (or alternatively, directly clicking the *run* icon) in the *Solution Runner* panel.
@ -79,39 +87,65 @@ We can now start the `CloudCrm.CatalogService` application by clicking the *Star
After the application is started, you can right-click and [Browse](../../studio/running-applications.md#monitoring) on the `CloudCrm.CatalogService` application to open it in the ABP Studio's pre-integrated browser. You can see the *Products* controller in the Swagger UI.
{{if UI == "NG"}}
### Generating the UI Proxy
Now, we need to generate the [Static API Proxy](../../framework/api-development/static-csharp-clients.md) for the *Web* project. Right-click the *CloudCrm.Web* [package](../../studio/concepts.md#package) and select the *ABP CLI* -> *Generate Proxy* -> *C#* command:
ABP Suite automatically generates the UI proxy for the `Angular` project. If you want to create manually, run this command under the `Angular` project folder:
```bash
abp generate-proxy -t ng -m catalog -u http://localhost:44384 --target catalog-service
```
![abp-studio-generate-proxy](images/abp-studio-generate-proxy.png)
For more information, please refer to the [Service Proxies](https://abp.io/docs/latest/framework/ui/angular/service-proxies) documentation.
{{end}}
It will open the *Generate C# Proxies* window. Select the `CloudCrm.CatalogService` application, and it will automatically populate the *URL* field. Select the *catalog* module, set the service type to *application*, and check the *Without contracts* checkbox, as the `CloudCrm.Web` project already depends on the `CloudCrm.CatalogService.Contracts` package:
{{if UI == "MVC" || UI == "Blazor" || UI == "BlazorServer" || UI == "BlazorWebApp"}}
### Generating the UI Proxy
![abp-studio-generate-proxy-window](images/abp-studio-generate-proxy-window.png)
{{if UI == "BlazorWebApp"}}
> To be able to select the *Application*, you must *Start* the related application beforehand. You can start the application using [Solution Runner](../../studio/running-applications.md) as explained in the previous parts.
Now, we need to generate the [Static API Proxy](../../framework/api-development/static-csharp-clients.md) for the UI project. Since we are using `BlazorWebApp`, we will generate client proxies in both the `CloudCrm.Blazor` and `CloudCrm.Blazor.Client` projects, as pages are sometimes rendered on the server side and sometimes on the client side.
Lastly, we need to configure the use of a static HTTP client for the `CatalogService` in the `CloudCrm.Web` project. Open the `CloudCrmWebModule.cs` file in the `Web` project and add the following line to the `ConfigureServices` method:
#### For the Server Project
![abp-studio-generate-proxy-blazor-server](images/abp-studio-generate-proxy-blazor-webapp-server-dark.png)
```csharp
//...
using CloudCrm.CatalogService;
This will open the Generate C# Proxies window. Select the `CloudCrm.CatalogService` application this will automatically fill in the *URL* field. Next, choose the catalog module, set the service type to *Application*, and check the *Without contracts* option, since the `CloudCrm.Blazor` project already references the `CloudCrm.CatalogService.Contracts` package.
#### For client project
![abp-studio-generate-proxy-blazor](images/abp-studio-generate-proxy-blazor-dark.png)
This will open the Generate C# Proxies window. Select the `CloudCrm.CatalogService` application this will automatically fill in the *URL* field. Next, choose the catalog module, set the service type to *Application*, and check the *Without contracts* option, since the `CloudCrm.Blazor.Client` project already references the `CloudCrm.CatalogService.Contracts` package.
{{else}}
Now, we need to generate the [Static API Proxy](../../framework/api-development/static-csharp-clients.md) for the UI project. Right-click the {{if UI == "MVC"}} `CloudCrm.Web` {{else if UI == "BlazorServer"}} `CloudCrm.Blazor` {{else if UI == "Blazor"}} `CloudCrm.Blazor.Client` {{end}} [package](../../studio/concepts.md#package) and select the *ABP CLI* -> *Generate Proxy* -> *C#* command:
{{if UI == "MVC"}}
![abp-studio-generate-proxy](images/abp-studio-generate-proxy-dark.png)
{{else if UI == "BlazorServer"}}
![abp-studio-generate-proxy-blazor-server](images/abp-studio-generate-proxy-blazor-server-dark.png)
{{else if UI == "Blazor"}}
![abp-studio-generate-proxy-blazor](images/abp-studio-generate-proxy-blazor-dark.png)
{{end}}
{{end}}
It will open the *Generate C# Proxies* window. Select the `CloudCrm.CatalogService` application, and it will automatically populate the *URL* field. Select the *catalog* module, set the service type to *application*, and check the *Without contracts* checkbox, as the {{if UI == "MVC"}} `CloudCrm.Web` {{else}} `CloudCrm.Blazor` {{end}} project already depends on the `CloudCrm.CatalogService.Contracts` package:
![abp-studio-generate-proxy-window](images/abp-studio-generate-proxy-window-dark.png)
> To be able to select the *Application*, you must *Start* the related application beforehand. You can start the application using [Solution Runner](../../studio/running-applications.md) as explained in the previous parts.
{{end}}
public override void ConfigureServices(ServiceConfigurationContext context)
{
// Code omitted for brevity
context.Services.AddStaticHttpClientProxies(
typeof(CloudCrmCatalogServiceContractsModule).Assembly);
}
```
### Running the Application
Now, stop any application running in the *Solution Runner* panel, and then run the applications by clicking the *Start All* button on the root item in the *Solution Runner* panel:
![abp-studio-run-build-and-start-all](images/abp-studio-run-start-all.png)
![abp-studio-run-build-and-start-all](images/abp-studio-run-start-all-dark.png)
After the application is started, you can right-click and [Browse](../../studio/running-applications.md#monitoring) on the `CloudCrm.Web` application to open it in the ABP Studio's pre-integrated browser:
After the application is started, you can right-click and [Browse](../../studio/running-applications.md#monitoring) on the {{if UI == "MVC"}} `CloudCrm.Web` {{else if UI == "NG"}} `CloudCrm.Angular` {{else}} `CloudCrm.Blazor` {{end}} application to open it in the ABP Studio's pre-integrated browser:
![abp-studio-browse-cloud-crm-products](images/abp-studio-browse-cloud-crm-products.png)
@ -125,4 +159,4 @@ You can open the Sql Server Management Studio to see the created tables and data
## Summary
In this part, we've created a new entity named *Product* and generated the necessary code for it. We've also generated the UI proxy for the `CatalogService` application and configured the static HTTP client for it in the `Web` project. We've run the application and tested the *Products* page.
In this part, we've created a new entity named *Product* and generated the necessary code for it. We've also generated the UI proxy for the `CatalogService` application and configured the static HTTP client for it in the {{if UI == "MVC"}} `CloudCrm.Web` {{else if UI == "BlazorServer"}} `CloudCrm.Blazor` {{else}} `CloudCrm.Blazor.Client` {{end}} project. We've run the application and tested the *Products* page.

55
docs/en/tutorials/microservice/part-04.md

@ -1,5 +1,13 @@
# Microservice Tutorial Part 04: Creating the initial Ordering service
````json
//[doc-params]
{
"UI": ["MVC","Blazor","BlazorServer", "BlazorWebApp", "NG"],
"DB": ["EF","Mongo"]
}
````
````json
//[doc-nav]
{
@ -20,11 +28,11 @@ In the previous part, we implemented the Catalog microservice functionality usin
Right-click the `services` folder in the *Solution Explorer* panel, select the *Add* -> *New Module* -> *Microservice* command:
![abp-studio-add-new-microservice-command](images/abp-studio-add-new-microservice-command-2.png)
![abp-studio-add-new-microservice-command](images/abp-studio-add-new-microservice-command-2-dark.png)
This command opens a new dialog to define the properties of the new microservice. You can use the following values to create a new microservice named `OrderingService`:
![abp-studio-add-new-microservice-dialog](images/abp-studio-add-new-microservice-dialog-2.png)
![abp-studio-add-new-microservice-dialog](images/abp-studio-add-new-microservice-dialog-2-dark.png)
When you click the *Next* button, you are redirected to the database provider selection step.
@ -32,28 +40,49 @@ When you click the *Next* button, you are redirected to the database provider se
Here, you can select the database provider to be used by the new microservice:
![abp-studio-add-new-microservice-dialog-database-step](images/abp-studio-add-new-microservice-dialog-database-step.png)
{{if DB == "Mongo"}}
Select *Entity Framework Core* option and proceed the *Next* step.
![abp-studio-add-new-microservice-dialog-database-step-mongo](images/abp-studio-add-new-microservice-dialog-database-step-mongo-dark.png)
### Integrating to the Solution
Select *MongoDB* option and proceed the *Next* step.
{{end}}
In this step, we can select the options for integrating the new microservice to the rest of the solution components:
{{if DB == "EF"}}
![abp-studio-add-new-microservice-dialog-integration-step](images/abp-studio-add-new-microservice-dialog-integration-step.png)
![abp-studio-add-new-microservice-dialog-database-step](images/abp-studio-add-new-microservice-dialog-database-step-dark.png)
ABP Studio intelligently selects the right values for you, but you should still check them carefully since they directly affect what we will do in the next parts of this tutorial.
Select *Entity Framework Core* option and proceed the *Next* step.
**Ensure the options are configured the same as in the preceding figure**, and click the *Next* button.
### Selecting Database Management System
![abp-studio-add-new-microservice-dialog-database-step](images/abp-studio-add-new-microservice-dialog-database-management-dark.png)
Select the desired option and proceed to the next step.
{{end}}
### Additional Options
![abp-studio-add-new-microservice-dialog-additional-options-step](images/abp-studio-add-new-microservice-dialog-additional-options-step.png)
![abp-studio-add-new-microservice-dialog-additional-options-step](images/abp-studio-add-new-microservice-dialog-additional-options-step-dark.png)
In this step, you can select additional options for the new microservice. You can leave them as default and click the *Create* button.
That's all, ABP Studio creates the new microservice and arranges all the integration and configuration for you.
### Integrating to the Solution
In this step, we can select the options for integrating the new microservice to the rest of the solution components:
{{if UI == "NG"}}
![abp-studio-add-new-microservice-dialog-integration-step](images/abp-studio-add-new-microservice-dialog-integration-step-ng-dark.png)
{{else}}
![abp-studio-add-new-microservice-dialog-integration-step](images/abp-studio-add-new-microservice-dialog-integration-step-dark.png)
{{end}}
ABP Studio intelligently selects the right values for you, but you should still check them carefully since they directly affect what we will do in the next parts of this tutorial.
**Ensure the options are configured the same as in the preceding figure**, and click the *Next* button.
## Exploring the New Ordering Microservice
In this section, we will investigate the new microservice in overall.
@ -62,7 +91,7 @@ In this section, we will investigate the new microservice in overall.
Just like the Catalog microservice, the Ordering microservice is a .NET solution that contains multiple projects. You can see the solution structure in the *Solution Explorer* panel:
![abp-studio-solution-explorer-ordering-microservice](images/abp-studio-solution-explorer-ordering-microservice.png)
![abp-studio-solution-explorer-ordering-microservice](images/abp-studio-solution-explorer-ordering-microservice-dark.png)
* `CloudCrm.OrderingService` is the main project that you will implement your service. It typically contains your [entities](../../framework/architecture/domain-driven-design/entities.md), [repositories](../../framework/architecture/domain-driven-design/repositories.md), [application services](../../framework/architecture/domain-driven-design/application-services.md), API controllers, etc.
* `CloudCrm.OrderingService.Contracts` project can be shared with the other services and applications. It typically contains interfaces of your [application services](../../framework/architecture/domain-driven-design/application-services.md), [data transfer objects](../../framework/architecture/domain-driven-design/data-transfer-objects.md), and some other types you may want to share with the clients of this microservice.
@ -76,13 +105,13 @@ You can run the solution using ABP Studio's *Solution Runner*. It will also run
Click the *Play* button near to the solution root:
![abp-studio-run-solution](images/abp-studio-run-solution.png)
![abp-studio-run-solution](images/abp-studio-run-solution-dark.png)
### Browsing the Ordering Service
After the application is started, you can right-click and [Browse](../../studio/running-applications.md#monitoring) on the `CloudCrm.OrderingService` application to open it in the ABP Studio's pre-integrated browser. You can see the *Orders* controller in the Swagger UI:
![abp-studio-browse-ordering-service](images/abp-studio-browse-ordering-service.png)
![abp-studio-browse-ordering-service](images/abp-studio-browse-ordering-service-dark.png)
### Opening the Ordering Database

284
docs/en/tutorials/microservice/part-05.md

@ -1,5 +1,13 @@
# Microservice Tutorial Part 05: Building the Ordering service
````json
//[doc-params]
{
"UI": ["MVC","Blazor","BlazorServer", "BlazorWebApp", "NG"],
"DB": ["EF","Mongo"]
}
````
````json
//[doc-nav]
{
@ -18,7 +26,7 @@ In the previous part, we created the Ordering microservice. In this part, we wil
## Creating the Order Entity
We will start by creating the `Order` entity, which will represent an order in our system. We'll add this entity to the `CloudCrm.OrderingService` project. Create a new folder named `Entities` and add a class named `Order` inside it:
We will start by creating the `Order` entity, which will represent an order in our system. We'll add this entity to the `CloudCrm.OrderingService` project. Create a new folder named `Entities` and create a file `Order.cs` inside it:
```csharp
using CloudCrm.OrderingService.Enums;
@ -38,7 +46,7 @@ To keep this example simple, we allow users to include only a single product wit
### Adding the OrderState Enum
We also need to define the `OrderState` enum. In the `CloudCrm.OrderingService.Contracts` project, create a folder named `Enums` and add an `OrderState` enum inside it:
We also need to define the `OrderState` enum. In the `CloudCrm.OrderingService.Contracts` project, create a folder named `Enums` and create a file `OrderState.cs` inside it:
```csharp
namespace CloudCrm.OrderingService.Enums;
@ -53,7 +61,7 @@ public enum OrderState : byte
The final solution structure should look like this:
![vs-ordering-entity](images/vs-ordering-entity.png)
![vs-ordering-entity](images/vs-ordering-entity-dark.png)
## Configuring the Database Mapping
@ -122,15 +130,15 @@ Please stop the applications if they are running and ensure that the solution ha
Right-click the `CloudCrm.OrderingService` package and select the *EF Core CLI* -> *Add Migration* command:
![abp-studio-add-entity-framework-core-migration](images/abp-studio-add-entity-framework-core-migration.png)
![abp-studio-add-entity-framework-core-migration](images/abp-studio-add-entity-framework-core-migration-dark.png)
The *Add Migration* command opens a new dialog to get a migration name:
The *Add Migration* command opens a new dialog to get a migration name `Added_Order_Entity`:
![abp-studio-entity-framework-core-add-migration-order](images/abp-studio-entity-framework-core-add-migration-order.png)
![abp-studio-entity-framework-core-add-migration-order](images/abp-studio-entity-framework-core-add-migration-order-dark.png)
Once you click the *OK* button, a new database migration class is added to the `Migrations` folder of the `CloudCrm.OrderingService` project:
![visual-studio-new-migration-class](images/visual-studio-new-migration-class.png)
![visual-studio-new-migration-class](images/visual-studio-new-migration-class-dark.png)
The changes will be applied to the database during the next application startup. For more details, refer to the [database migrations on service startup](../../solution-templates/microservice/database-configurations.md#database-migrations-on-service-startup) section.
@ -198,7 +206,7 @@ public class OrderDto
The final solution structure should look like this:
![vs-ordering-contracts](images/vs-ordering-contracts.png)
![vs-ordering-contracts](images/vs-ordering-contracts-dark.png)
## Implementing the Application Service
@ -269,7 +277,7 @@ public class OrderingServiceApplicationAutoMapperProfile : Profile
Now, we can test the `OrderAppService` class using the Swagger UI. Open the Solution Runner and right-click to `CloudCrm.OrderingService` project and select the *Start* command. After the application starts, you can open the Swagger UI by clicking to the [Browse](../../studio/running-applications.md#monitoring) command:
![ordering-service-swagger-ui](images/ordering-service-swagger-ui.png)
![ordering-service-swagger-ui](images/ordering-service-swagger-ui-dark.png)
Expand the `api/ordering/order` API and click the *Try it out* button. Then, create a few orders by filling in the request body and clicking the *Execute* button:
@ -283,6 +291,7 @@ If you check the database, you should see the entities created in the `Orders` t
## Creating the User Interface
{{if UI == "MVC"}}
Now, we will create the user interface for the Ordering module. We will use the `CloudCrm.Web` project to create the user interface. Open the `CloudCrm.Web` .NET solution in your favorite IDE.
### Creating the Orders Page
@ -339,38 +348,120 @@ Here, we inject the `IOrderAppService` into the `Index` Razor Page. We use this
```
This page shows a list of orders on the UI. We haven't created a UI to create new orders, and we will not do it to keep this tutorial simple. If you want to learn how to create advanced UIs with ABP, please follow the [Book Store tutorial](../../tutorials/book-store/index.md).
{{end}}
### Generating the UI Proxy
{{if UI == "Blazor" || UI == "BlazorServer" || UI == "BlazorWebApp"}}
To select the *Application* during proxy generation, ensure that the `CloudCrm.OrderingService` is *Started* beforehand. You can start the application using [Solution Runner](../../studio/running-applications.md).
Now, we will create the user interface for the Ordering module. We will use the {{if UI == "BlazorServer"}} `CloudCrm.Blazor.Server` {{else}} `CloudCrm.Blazor.Client` {{end}} project to create the user interface. Open the {{if UI == "BlazorServer"}} `CloudCrm.Blazor.Server` {{else}} `CloudCrm.Blazor.Client` {{end}} .NET solution in your favorite IDE.
Now, we need to generate the [Static API Proxy](../../framework/api-development/static-csharp-clients.md) for the *Web* project. Right-click the *CloudCrm.Web* [package](../../studio/concepts.md#package) and select the *ABP CLI* -> *Generate Proxy* -> *C#* command:
### Creating the Orders Page
![abp-studio-generate-proxy-2](images/abp-studio-generate-proxy-2.png)
{{if UI == "BlazorServer"}}
It will open the *Generate C# Proxies* window. Select the `CloudCrm.OrderingService` application, and it will automatically populate the *URL* field. Choose the *ordering* module and service type is *application* lastly check the *Without contracts* checkbox, since we already have a dependency on the `CloudCrm.OrderingService.Contracts` package in the `CloudCrm.Web` project:
Create `Orders.razor` file under the `Components/Pages` folder in the `CloudCrm.Blazor.Server` project.
![abp-studio-generate-proxy-window-ordering-module](images/abp-studio-generate-proxy-window-ordering-module.png)
{{else}}
Lastly, we need to configure the use of a static HTTP client for the `OrderingService` in the `CloudCrm.Web` project. Open the `CloudCrmWebModule.cs` file in the `Web` project and add the following line to the `ConfigureServices` method:
Create `Orders.razor` file under the `Pages` folder in the `CloudCrm.Blazor.Client` project.
```csharp
//...
using CloudCrm.OrderingService;
{{end}}
public override void ConfigureServices(ServiceConfigurationContext context)
{
// Code omitted for brevity
context.Services.AddStaticHttpClientProxies(
typeof(CloudCrmOrderingServiceContractsModule).Assembly);
```html
@page "/orders"
@using CloudCrm.OrderingService.Services
@inject IOrderAppService OrderAppService
<h1>Orders</h1>
<div class="card">
<div class="card-body">
@if (OrderList == null)
{
<p><em>Loading orders...</em></p>
}
else if (!OrderList.Any())
{
<p><em>No orders found.</em></p>
}
else
{
<ul class="list-group">
@foreach (var order in OrderList)
{
<li class="list-group-item">
<strong>Customer:</strong> @order.CustomerName <br />
<strong>Product:</strong> @order.ProductId <br />
<strong>State:</strong> @order.State
</li>
}
</ul>
}
</div>
</div>
@code {
private List<OrderDto> OrderList { get; set; }
protected override async Task OnInitializedAsync()
{
try
{
var result = await OrderAppService.GetListAsync();
OrderList = result;
}
catch (Exception ex)
{
Console.WriteLine($"Error loading orders: {ex.Message}");
OrderList = new List<OrderDto>();
}
}
}
```
{{end}}
{{if UI == "MVC" || UI == "Blazor" || UI == "BlazorServer" || UI == "BlazorWebApp"}}
### Generating the UI Proxy
To select the *Application* during proxy generation, ensure that the `CloudCrm.OrderingService` is *Started* beforehand. You can start the application using [Solution Runner](../../studio/running-applications.md).
{{if UI == "BlazorWebApp"}}
Now, we need to generate the [Static API Proxy](../../framework/api-development/static-csharp-clients.md) for the UI project. Since we are using `BlazorWebApp`, we will generate client proxies in both the `CloudCrm.Blazor` and `CloudCrm.Blazor.Client` projects, as pages are sometimes rendered on the server side and sometimes on the client side.
#### For the Server Project
![abp-studio-generate-proxy-blazor-server](images/abp-studio-generate-proxy-blazor-webapp-server-dark.png)
This will open the Generate C# Proxies window. Select the `CloudCrm.CatalogService` application this will automatically fill in the *URL* field. Next, choose the catalog module, set the service type to *Application*, and check the *Without contracts* option, since the `CloudCrm.Blazor` project already references the `CloudCrm.CatalogService.Contracts` package.
#### For client project
![abp-studio-generate-proxy-blazor](images/abp-studio-generate-proxy-blazor-dark.png)
This will open the Generate C# Proxies window. Select the `CloudCrm.CatalogService` application this will automatically fill in the *URL* field. Next, choose the catalog module, set the service type to *Application*, and check the *Without contracts* option, since the `CloudCrm.Blazor.Client` project already references the `CloudCrm.CatalogService.Contracts` package.
{{else}}
Now, we need to generate the [Static API Proxy](../../framework/api-development/static-csharp-clients.md) for the UI project. Right-click the {{if UI == "MVC"}} `CloudCrm.Web` {{else if UI == "BlazorServer"}} `CloudCrm.Blazor.Server` {{else if UI == "Blazor"}} `CloudCrm.Blazor.Client` {{end}} [package](../../studio/concepts.md#package) and select the *ABP CLI* -> *Generate Proxy* -> *C#* command:
{{if UI == "MVC"}}
![abp-studio-generate-proxy-2](images/abp-studio-generate-proxy-2-dark.png)
{{else if UI == "BlazorServer"}}
![abp-studio-generate-proxy-blazor-server-2](images/abp-studio-generate-proxy-blazor-server-2-dark.png)
{{else if UI == "Blazor"}}
![abp-studio-generate-proxy-blazor-2](images/abp-studio-generate-proxy-2-blazor-dark.png)
{{end}}
{{end}}
It will open the *Generate C# Proxies* window. Select the `CloudCrm.OrderingService` application, and it will automatically populate the *URL* field. Choose the *ordering* module and service type is *application* lastly check the *Without contracts* checkbox, since we already have a dependency on the `CloudCrm.OrderingService.Contracts` package in the {{if UI == "MVC"}} `CloudCrm.Web` {{else if UI == "BlazorServer"}} `CloudCrm.Blazor.Server` {{else if UI == "Blazor"}} `CloudCrm.Blazor.Client` {{end}} project:
![abp-studio-generate-proxy-window-ordering-module](images/abp-studio-generate-proxy-window-ordering-module-dark.png)
### Adding the Menu Item
> ABP provides a modular navigation [menu system](../../framework/ui/mvc-razor-pages/navigation-menu.md) that allows you to define the menu items in a modular way.
Finally, we need to add a menu item to the sidebar to navigate to the `Orders` page. Open the `CloudCrmMenus` file in the `Navigation` folder of the `CloudCrm.Web` project and edit with the following code:
Finally, we need to add a menu item to the sidebar to navigate to the `Orders` page. Open the `CloudCrmMenus` file in the `Navigation` folder of the {{if UI == "MVC"}} `CloudCrm.Web` {{else}} `CloudCrm.Blazor.Client` {{end}} project and edit with the following code:
```csharp
namespace CloudCrm.Web.Navigation;
@ -391,7 +482,7 @@ public class CloudCrmMenus
}
```
Then, open the `CloudCrmMenuContributor` class in the `CloudCrm.Web` project, located in the `Navigation` folder, and add the following code to `ConfigureMainMenuAsync` method:
Then, open the `CloudCrmMenuContributor` class in the {{if UI == "MVC"}} `CloudCrm.Web` {{else}} `CloudCrm.Blazor` {{end}} project, located in the `Navigation` folder, and add the following code to `ConfigureMainMenuAsync` method:
```csharp
private static async Task ConfigureMainMenuAsync(MenuConfigurationContext context)
@ -409,15 +500,152 @@ private static async Task ConfigureMainMenuAsync(MenuConfigurationContext contex
}
```
{{end}}
{{if UI == "NG"}}
### Generating the Proxies
Run the following command line under the `Angular` project folder to generate the UI proxy for the `OrderingService`:
```bash
abp generate-proxy -t ng -m ordering -u http://localhost:44311 --target ordering-service
```
> Make sure the url port (example 44311) must be same with your OrderService's port.
For more information, please refer to the [Service Proxies](https://abp.io/docs/latest/framework/ui/angular/service-proxies) documentation.
### Create Order Module
Run the following command line to create a new module, named `OrderModule` in the root folder of the angular application:
```bash
yarn ng generate module order --module ordering-service --project ordering-service --routing --route orders
```
### Add Order Route
* Create `order-base.routes.ts` file under the `projects/ordering-service/config/src/providers` folder and add the following code:
*order-base.routes.ts*
```typescript
import { ABP, eLayoutType } from '@abp/ng.core';
import { eOrderingServiceRouteNames } from '../enums/route-names';
export const ORDER_BASE_ROUTES: ABP.Route[] = [
{
path: '/ordering-service/orders',
parentName: eOrderingServiceRouteNames.OrderingService,
name: 'OrderingService::Menu:Orders',
layout: eLayoutType.application,
breadcrumbText: 'OrderingService::Orders',
},
];
```
* Create `order-route.provider.ts` file under the `projects/ordering-service/config/src/providers` folder and add the following code:
*order-route.provider.ts*
```typescript
import { inject, provideAppInitializer } from '@angular/core';
import { ABP, RoutesService } from '@abp/ng.core';
import { ORDER_BASE_ROUTES } from './order-base.routes';
export const ORDERS_ORDER_ROUTE_PROVIDER = [
provideAppInitializer(() => {
configureRoutes();
}),
];
function configureRoutes() {
const routesService = inject(RoutesService);
const routes: ABP.Route[] = [...ORDER_BASE_ROUTES];
routesService.add(routes);
}
```
* Open the `projects/ordering-service/config/src/ordering-service-config.module.ts` file and add `ORDERS_ORDER_ROUTE_PROVIDER` to the `providers` array as following code:
*ordering-service-config.module.ts*
```typescript
import { ModuleWithProviders, NgModule } from '@angular/core';
import { ORDERING_SERVICE_ROUTE_PROVIDERS } from './providers/route.provider';
import { ORDERS_ORDER_ROUTE_PROVIDER } from './providers/order-route.provider';
@NgModule()
export class OrderingServiceConfigModule {
static forRoot(): ModuleWithProviders<OrderingServiceConfigModule> {
return {
ngModule: OrderingServiceConfigModule,
providers: [ORDERING_SERVICE_ROUTE_PROVIDERS, ORDERS_ORDER_ROUTE_PROVIDER],
};
}
}
```
### Create Order Page
* Create `order.component.ts` file under the `projects/ordering-service/src/lib/order` folder as following code:
```typescript
import { Component } from '@angular/core';
import { OrderDto, OrderService } from './proxy/ordering-service/services';
@Component({
selector: 'lib-order',
standalone: false,
templateUrl: './order.component.html',
styleUrl: './order.component.css'
})
export class OrderComponent {
items: OrderDto[] = [];
constructor(private readonly proxy: OrderService) {
this.proxy.getList().subscribe((res) => {
this.items = res;
});
}
}
```
* Create `order.component.html` file under the `projects/ordering-service/src/lib/order` folder as following code:
```html
<div class="card">
<div class="card-body">
<table class="table table-bordered">
<thead>
<tr>
<th>Order ID</th>
<th>Product Id</th>
<th>Customer Name</th>
</tr>
<tr *ngFor="let item of items">
<td>{%{{{item.id}}}%}</td>
<td>{%{{{item.productId}}}%}</td>
<td>{%{{{item.customerName}}}%}</td>
</tr>
</thead>
</table>
</div>
</div>
```
{{end}}
## Building and Running the Application
Now, we can run the application to see the changes. Please stop the applications if they are running. Then open the *Solution Runner* panel, right-click the `CloudCrm` root item, and select the *Start* command:
![abp-studio-run-build-start](images/abp-studio-run-start-all.png)
![abp-studio-run-build-start](images/abp-studio-run-start-all-dark.png)
After the applications are started, you can *Browse* and navigate to the `Orders` page to see the list of orders:
![web-orders-page](images/web-orders-page.png)
![web-orders-page](images/web-orders-page-dark.png)
Great! We have successfully implemented the Ordering module. However, there is a problem:

82
docs/en/tutorials/microservice/part-06.md

@ -1,5 +1,13 @@
# Microservice Tutorial Part 06: Integrating the services: HTTP API Calls
````json
//[doc-params]
{
"UI": ["MVC","Blazor","BlazorServer", "BlazorWebApp", "NG"],
"DB": ["EF","Mongo"]
}
````
````json
//[doc-nav]
{
@ -22,7 +30,7 @@ In this section, we will integrate the Ordering service with the Catalog service
In a microservices architecture, each service is responsible for its own data and business logic. However, services often need to communicate with each other to fulfill their responsibilities. This communication can be synchronous or asynchronous, depending on the requirements.
![web-orders-page](images/web-orders-page.png)
![web-orders-page](images/web-orders-page-dark.png)
In our case, the Ordering service needs to display the product name instead of the product ID. To achieve this, we need to call the Catalog service to retrieve the product details based on the product ID. This is a typical example of a synchronous communication pattern between microservices. As a solution to that problem, we will use an [integration service](../../framework/api-development/integration-services.md) that will handle the communication with the Catalog service. Integration service concept in ABP is designed for request/response style inter-module (in modular applications) and inter-microservice (in distributed systems) communication.
@ -111,11 +119,11 @@ Now that we have created the `IProductIntegrationService` interface and the `Pro
First, we need to add a reference to the `CloudCrm.OrderingService` package in the Ordering service. Open the ABP Studio, and stop the application(s) if it is running. Then, open the *Solution Explorer* and right-click on the `CloudCrm.OrderingService` package. Select *Add* -> *Package Reference* command:
![add-package-reference-ordering-service](images/add-package-reference-ordering-service.png)
![add-package-reference-ordering-service](images/add-package-reference-ordering-service-dark.png)
In the *Add Package Reference* window, select the `CloudCrm.CatalogService.Contracts` package from the *This solution* tab. Click the *OK* button to add the reference:
![add-catalog-service-contracts-reference](images/add-catalog-service-contracts-reference.png)
![add-catalog-service-contracts-reference](images/add-catalog-service-contracts-reference-dark.png)
ABP Studio adds the package reference and arranges the [module](../../framework/architecture/modularity/basics.md) dependency.
@ -236,25 +244,13 @@ Let's explain the changes we made:
We have created the `IProductIntegrationService` interface and the `ProductIntegrationService` class in the `CloudCrm.CatalogService` solution. Now, we need to generate the proxy classes for the integration service in the `CloudCrm.OrderingService` package. First, *Start* the `CloudCrm.CatalogService` application in ABP Studio *Solution Runner*. Then, open the *Solution Explorer* and right-click on the `CloudCrm.OrderingService` package. Select the *ABP CLI* -> *Generate Proxy* -> *C#* command:
![generate-proxy-catalog-service](images/generate-proxy-catalog-service.png)
![generate-proxy-catalog-service](images/generate-proxy-catalog-service-dark.png)
It opens the *Generate C# proxies* window. Select the `CloudCrm.CatalogService` application from the *Application* dropdown list. Then, choose the *catalog* module from the *Module* dropdown list and choose the *integration* service from the *Service type* dropdown list. Check the *Without contracts* checkbox and click the *Generate* button:
![generate-catalog-service-proxy](images/generate-catalog-service-proxy.png)
![generate-catalog-service-proxy](images/generate-catalog-service-proxy-dark.png)
We have generated the proxy classes for the `IProductIntegrationService` interface. Now, we must add the *Remote Service* url to the `appsettings.json` file of the `CloudCrm.OrderingService` project. Open the `appsettings.json` file (the `appsettings.json` file of the `CloudCrm.OrderingService` project of the `CloudCrm.OrderingService` .NET solution) and add the *CatalogService* section following configuration:
```json
{
"RemoteServices": {
"CatalogService": {
"BaseUrl": "http://localhost:44334"
}
}
}
```
> **BaseUrl** refers to the base URL of the Catalog service. You can use the *Copy Url* option from the Catalog service's context menu in the ABP Studio **Solution Runner** to paste it here.
Proxy classes for the `IProductIntegrationService` interface have been generated.
Lastly, open the `CloudCrmOrderingServiceModule` class (the `CloudCrmOrderingServiceModule.cs` file under the `CloudCrm.OrderingService` project of the `CloudCrm.OrderingService` .NET solution) and add the following code to the `ConfigureServices` method:
@ -271,6 +267,8 @@ public override void ConfigureServices(ServiceConfigurationContext context)
### Updating the UI to Display the Product Name
{{if UI == "MVC"}}
Open the `Index.cshtml` file (the `Index.cshtml` file under the `Pages/Orders` folder of the `CloudCrm.Web` project of the `CloudCrm.Web` .NET solution) and update the table content to display the product name instead of the product ID:
```html
@ -295,9 +293,53 @@ Open the `Index.cshtml` file (the `Index.cshtml` file under the `Pages/Orders` f
</abp-card>
```
{{else if UI == "NG"}}
Open the `order.component.html` file (the `order.component.html` file under the `angular\projects\ordering-service\src\lib\order`) and update the table content to display the product name instead of the product ID:
```html
<div class="card">
<div class="card-body">
<table class="table table-bordered">
<thead>
<tr>
<th>Order ID</th>
<th>Product Name</th>
<th>Customer Name</th>
</tr>
<tr *ngFor="let item of items">
<td>{%{{{item.id}}}%}</td>
<td>{%{{{item.productName}}}%}</td>
<td>{%{{{item.customerName}}}%}</td>
</tr>
</thead>
</table>
</div>
</div>
```
{{else if UI == "Blazor" || UI == "BlazorServer" || UI == "BlazorWebApp"}}
Open the `Orders.razor` file (the `Orders.razor` file under the {{if UI == "BlazorServer"}} `CloudCrm.Blazor\Pages` {{else}} `CloudCrm.Blazor.Client\Pages` {{end}} and update the table content to display the product name instead of the product ID:
```html
<ul class="list-group">
@foreach (var order in OrderList)
{
<li class="list-group-item">
<strong>Customer:</strong> @order.CustomerName <br />
<strong>Product Name:</strong> @order.ProductName <br />
<strong>State:</strong> @order.State
</li>
}
</ul>
```
{{end}}
That's it! Now, you can *Start* the all applications and browse it in ABP Studio to see the result:
![web-orders-page-with-product-name](images/web-orders-page-with-product-name.png)
![web-orders-page-with-product-name](images/web-orders-page-with-product-name-dark.png)
Now, the Ordering service displays the product name instead of the product ID. We have successfully integrated the Ordering service with the Catalog service using HTTP API calls.
@ -318,4 +360,4 @@ Open the `etc\helm\cloudcrm\charts\ordering\templates\ordering.yaml` file in a t
value: "http://{%{{{ .Release.Name }}}%}-catalog"
````
With this simple configuration, now the Ordering module can discover the catalog microservice's URL inside your Kubernetes cluster.
With this simple configuration, now the Ordering module can discover the catalog microservice's URL inside your Kubernetes cluster.

22
docs/en/tutorials/microservice/part-07.md

@ -1,5 +1,13 @@
# Microservice Tutorial Part 07: Integrating the services: Using Distributed Events
````json
//[doc-params]
{
"UI": ["MVC","Blazor","BlazorServer", "BlazorWebApp", "NG"],
"DB": ["EF","Mongo"]
}
````
````json
//[doc-nav]
{
@ -135,21 +143,21 @@ Since the `OrderPlacedEto` class is in the `CloudCrm.OrderingService.Contracts`
Open the ABP Studio UI and stop the applications if they are running. Then, open the *Solution Explorer* panel and right-click on the `CloudCrm.CatalogService`. Select *Import Module* from the context menu:
![Import Module](images/import-module.png)
![Import Module](images/import-module-dark.png)
In the opening dialog, find and select the `CloudCrm.OrderingService` module, check the *Install this module* option, click the *OK* button:
![Import Module Dialog](images/import-module-dialog.png)
![Import Module Dialog](images/import-module-dialog-dark.png)
Once you click the OK button, the Ordering service is imported to the Catalog service. It opens the *Install Module* dialog:
![Install Module Dialog](images/install-module-dialog.png)
![Install Module Dialog](images/install-module-dialog-dark.png)
Here, select the `CloudCrm.OrderingService.Contracts` package on the left side (because we want to add that package reference) and `CloudCrm.CatalogService` package on the middle area (because we want to add the package reference to that project).
You can check the ABP Studio's *Solution Explorer* panel to see the module and the project reference (dependency):
![catalog-service-dependency](images/catalog-service-dependency.png)
![catalog-service-dependency](images/catalog-service-dependency-dark.png)
### Handling the `OrderPlacedEto` Event
@ -205,7 +213,7 @@ To keep this tutorial simple, we will not implement a user interface for creatin
Once the application is running and ready, [Browse](../../studio/running-applications.md#c-application) the `CloudCrm.OrderingService` application. Use the `POST /api/ordering/order` endpoint to create a new order:
![Create Order](images/create-order.png)
![Create Order](images/create-order-dark.png)
Find the *Order* API, click the *Try it out* button, enter a sample value the *Request body* section, and click the *Execute* button:
@ -218,9 +226,9 @@ Find the *Order* API, click the *Try it out* button, enter a sample value the *R
> **IMPORTANT:** Here, you should type a valid Product Id from the Products table of your database!
Once you press the *Execute* button, a new order is created. At that point, you can check the `/Orders` page to see if the new order is listed. You can also check the `/Products` page to see if the stock count of the related product is decreased by one in the `CloudCrm.Web` application.
Once you press the *Execute* button, a new order is created. At that point, you can check the `/Orders` page to see if the new order is listed. You can also check the `/Products` page to see if the stock count of the related product is decreased by one in the {{if UI == "MVC"}} `CloudCrm.Web` {{else if UI == "NG"}} `Angular` {{else}} `CloudCrm.Blazor` {{end}} application.
Here are sample screenshots from the Orders and Products pages of the `CloudCrm.Web` application:
Here are sample screenshots from the Orders and Products pages of the {{if UI == "MVC"}} `CloudCrm.Web` {{else if UI == "NG"}} `Angular` {{else}} `CloudCrm.Blazor` {{end}} application:
![Orders](images/orders.png)

1
docs/en/tutorials/modular-crm/part-03.md

@ -441,7 +441,6 @@ Here, you simply use the `IProductAppService` to get a list of all products and
@page
@using Microsoft.Extensions.Localization
@using ModularCrm.Catalog.Localization
@using ModularCrm.Catalog.UI.Pages.Catalog
@model ModularCrm.Catalog.UI.Pages.Catalog.IndexModel
@inject IStringLocalizer<CatalogResource> L

12
docs/en/tutorials/modular-crm/part-05.md

@ -75,7 +75,6 @@ Open your IDE, in `Data` folder under the `ModularCrm.Ordering` project, and edi
````csharp
using Microsoft.EntityFrameworkCore;
using ModularCrm.Ordering.Entities;
using Volo.Abp.Data;
using Volo.Abp.EntityFrameworkCore;
@ -92,7 +91,6 @@ Afterwards, create *Orders* `DbSet` for the `OrderingDbContext` class in the `Da
````csharp
using Microsoft.EntityFrameworkCore;
using ModularCrm.Ordering.Entities;
using Volo.Abp.Data;
using Volo.Abp.EntityFrameworkCore;
@ -103,9 +101,10 @@ public class OrderingDbContext : AbpDbContext<OrderingDbContext>, IOrderingDbCon
{
public DbSet<Order> Orders { get; set; }
public OrderingDbContext(DbContextOptions<OrderingDbContext> options) : base(options)
public OrderingDbContext(DbContextOptions<OrderingDbContext> options)
: base(options)
{
}
protected override void OnModelCreating(ModelBuilder builder)
@ -123,7 +122,6 @@ It is best to configure the database table mapping for the `Order` entity in the
````csharp
using Microsoft.EntityFrameworkCore;
using ModularCrm.Ordering.Entities;
using Volo.Abp;
using Volo.Abp.EntityFrameworkCore.Modeling;
@ -184,7 +182,7 @@ public class ModularCrmDbContext :
protected override void OnModelCreating(ModelBuilder builder)
{
...
builder.ConfigureOrdering(); //NEW: CALL THE EXTENSION METHOD
builder.ConfigureOrdering();
}
````
@ -309,7 +307,7 @@ using System.Collections.Generic;
using System.Threading.Tasks;
using Volo.Abp.Domain.Repositories;
namespace ModularCrm.Ordering.Services;
namespace ModularCrm.Ordering;
public class OrderAppService : OrderingAppService, IOrderAppService
{

13
docs/en/tutorials/modular-crm/part-06.md

@ -56,11 +56,10 @@ Open the `IProductIntegrationService.cs` file and replace it's content with the
using System;
using System.Collections.Generic;
using System.Threading.Tasks;
using ModularCrm.Catalog;
using Volo.Abp;
using Volo.Abp.Application.Services;
namespace ModularCrm.Products.Integration;
namespace ModularCrm.Catalog.Integration;
[IntegrationService]
public interface IProductIntegrationService : IApplicationService
@ -91,13 +90,10 @@ Open the `ProductIntegrationService.cs` file and replace its content with the fo
using System;
using System.Collections.Generic;
using System.Threading.Tasks;
using ModularCrm.Catalog;
using Volo.Abp;
using Volo.Abp.Domain.Repositories;
namespace ModularCrm.Products.Integration;
namespace ModularCrm.Catalog.Integration;
[IntegrationService]
public class ProductIntegrationService
: CatalogAppService, IProductIntegrationService
{
@ -152,13 +148,12 @@ using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using ModularCrm.Products.Integration;
using Volo.Abp.Application.Services;
using ModularCrm.Catalog.Integration;
using Volo.Abp.Domain.Repositories;
namespace ModularCrm.Ordering;
public class OrderAppService : ApplicationService, IOrderAppService
public class OrderAppService : OrderingAppService, IOrderAppService
{
private readonly IRepository<Order, Guid> _orderRepository;
private readonly IProductIntegrationService _productIntegrationService;

11
docs/en/tutorials/modular-crm/part-07.md

@ -64,12 +64,12 @@ using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using ModularCrm.Catalog.Integration;
using ModularCrm.Ordering.Events;
using ModularCrm.Products.Integration;
using Volo.Abp.Domain.Repositories;
using Volo.Abp.EventBus.Distributed;
namespace ModularCrm.Ordering.Services;
namespace ModularCrm.Ordering;
public class OrderAppService : OrderingAppService, IOrderAppService
{
@ -163,22 +163,21 @@ You can check the ABP Studio's *Solution Explorer* panel to see the module impor
Now, it is possible to use the `OrderPlacedEto` class inside the Catalog module since it has the `ModularCrm.Ordering.Contracts` package reference.
Open the Catalog module's .NET solution in your IDE, locate the `ModularCrm.Catalog` project, and create a new `Orders` folder and an `OrderEventHandler` class inside that folder. The final folder structure should be like this:
Open the Catalog module's .NET solution in your IDE, locate the `ModularCrm.Catalog` project, and create a new `EventHandlers` folder and an `OrderEventHandler` class inside that folder. The final folder structure should be like this:
![visual-studio-order-event-handler](images/visual-studio-order-event-handler-v2.png)
Replace the `OrderEventHandler.cs` file's content with the following code block:
````csharp
using ModularCrm.Catalog;
using ModularCrm.Ordering.Events;
using System;
using System.Threading.Tasks;
using ModularCrm.Ordering.Events;
using Volo.Abp.DependencyInjection;
using Volo.Abp.Domain.Repositories;
using Volo.Abp.EventBus.Distributed;
namespace ModularCrm.Products.Orders;
namespace ModularCrm.Catalog.EventHandlers;
public class OrderEventHandler :
IDistributedEventHandler<OrderPlacedEto>,

34
docs/en/tutorials/modular-crm/part-08.md

@ -40,7 +40,7 @@ In this section, we will create an application service in the main application's
Open the main `ModularCrm` .NET solution in your IDE, create an `Orders` folder under the `Services` folder and add an `IOrderReportingAppService` interface. Here is the definition of that interface:
````csharp
using ModularCrm.Orders;
using ModularCrm.Services.Dtos.Orders;
using Volo.Abp.Application.Services;
namespace ModularCrm.Services.Orders;
@ -51,13 +51,12 @@ public interface IOrderReportingAppService : IApplicationService
}
````
We have a single method, `GetLatestOrders`, that will return a list of the latest orders. We should also define the `OrderReportDto` class that that method returns. Create the `Orders` folder under the `Services/Dtos` folder and create a class named `OrderReportDto`.
We have a single method, `GetLatestOrders`, that will return a list of the latest orders. We should also define the `OrderReportDto` class that method returns. Create the `Orders` folder under the `Services/Dtos` folder and create a class named `OrderReportDto`.
````csharp
using System;
using ModularCrm.Ordering;
namespace ModularCrm.Orders;
namespace ModularCrm.Services.Dtos.Orders;
public class OrderReportDto
{
@ -87,11 +86,10 @@ Open the `OrderReportingAppService.cs` file and change its content by the follow
````csharp
using ModularCrm.Catalog;
using ModularCrm.Ordering;
using ModularCrm.Services;
using ModularCrm.Services.Orders;
using ModularCrm.Services.Dtos.Orders;
using Volo.Abp.Domain.Repositories;
namespace ModularCrm.Orders;
namespace ModularCrm.Services.Orders;
public class OrderReportingAppService :
ModularCrmAppService,
@ -114,16 +112,16 @@ public class OrderReportingAppService :
var products = await _productRepository.GetQueryableAsync();
var latestOrders = (from order in orders
join product in products on order.ProductId equals product.Id
orderby order.CreationTime descending
select new OrderReportDto
{
OrderId = order.Id,
CustomerName = order.CustomerName,
State = order.State,
ProductId = product.Id,
ProductName = product.Name
})
join product in products on order.ProductId equals product.Id
orderby order.CreationTime descending
select new OrderReportDto
{
OrderId = order.Id,
CustomerName = order.CustomerName,
State = order.State,
ProductId = product.Id,
ProductName = product.Name
})
.Take(10)
.ToList();
@ -150,7 +148,7 @@ Open the ABP Studio UI, stop the application if it is running, build and run it
You should get the order objects with product names.
Alternatively, you can visit the `/api/app/order-reporting/latest-orders` URL to directly execute the HTTP API on the browser (you should write the full URL, like `https://localhost:44303/api/app/order-reporting/latest-orders` - port can be different for your case)
Alternatively, you can visit the `/api/app/order-reporting/latest-orders` URL to directly execute the HTTP API on the browser (you should write the full URL, like `https://localhost:44303/api/app/order-reporting/latest-orders` - the **port number** can be different for your case)
## Summary

4
docs/en/ui-themes/lepton/customizing-lepton-theme.md

@ -160,7 +160,7 @@ Please note that the **search component** filters only the routes and cannot hid
### Download Lepton Theme Source-Code
Download the Lepton Theme source-code to retrieve the existing CSS files. To do this create a new folder named as `LeptonTheme` and run the following ABP CLI command inside the `LeptonTheme` folder:
Download the Lepton Theme source-code to retrieve the existing CSS files. To do this create a new folder named as `LeptonTheme` in your project root folder and run the following ABP CLI command inside the `LeptonTheme` folder:
```bash
abp get-source Volo.LeptonTheme
@ -238,4 +238,4 @@ The main menu's background color changed. With this approach, you can change you
![lepton-custom-css-result](../../images/lepton-custom-css-result.png)
{{end}}
{{end}}

4
framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Auth/AuthService.cs

@ -47,7 +47,7 @@ public class AuthService : IAuthService, ITransientDependency
return null;
}
var url = $"{CliUrls.WwwAbpIo}api/license/login-info";
var url = $"{CliUrls.AccountAbpIo}api/license/login-info";
var client = CliHttpClientFactory.CreateClient();
@ -130,7 +130,7 @@ public class AuthService : IAuthService, ITransientDependency
public async Task<bool> CheckMultipleOrganizationsAsync(string username)
{
var url = $"{CliUrls.WwwAbpIo}api/license/check-multiple-organizations?username={username}";
var url = $"{CliUrls.AccountAbpIo}api/license/check-multiple-organizations?username={username}";
var client = CliHttpClientFactory.CreateClient();

2
framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/CliConsts.cs

@ -12,7 +12,7 @@ public static class CliConsts
public static string GithubHttpClientName = "GithubHttpClient";
public static string LogoutUrl = CliUrls.WwwAbpIo + "api/license/logout";
public static string LogoutUrl = CliUrls.AccountAbpIo + "api/license/logout";
public static string LicenseCodePlaceHolder = @"<LICENSE_CODE/>";

2
framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Licensing/AbpIoApiKeyService.cs

@ -51,7 +51,7 @@ public class AbpIoApiKeyService : IApiKeyService, ITransientDependency
return _apiKeyResult;
}
var url = $"{CliUrls.WwwAbpIo}api/license/api-key";
var url = $"{CliUrls.AccountAbpIo}api/license/api-key";
var client = _cliHttpClientFactory.CreateClient();
using (var response = await client.GetHttpResponseMessageWithRetryAsync(url, CancellationTokenProvider.Token, _logger))

2
framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/TemplateInfoProvider.cs

@ -88,7 +88,7 @@ public class TemplateInfoProvider : ITemplateInfoProvider, ITransientDependency
try
{
var url = $"{CliUrls.WwwAbpIo}api/license/check-user";
var url = $"{CliUrls.AccountAbpIo}api/license/check-user";
var client = _cliHttpClientFactory.CreateClient();
using (var response = await client.GetHttpResponseMessageWithRetryAsync(url, CancellationTokenProvider.Token, Logger))

2
framework/src/Volo.Abp.Emailing/Volo/Abp/Emailing/EmailSettingProvider.cs

@ -8,7 +8,7 @@ namespace Volo.Abp.Emailing;
/// Defines settings to send emails.
/// <see cref="EmailSettingNames"/> for all available configurations.
/// </summary>
internal class EmailSettingProvider : SettingDefinitionProvider
public class EmailSettingProvider : SettingDefinitionProvider
{
public override void Define(ISettingDefinitionContext context)
{

45
framework/src/Volo.Abp.EntityFrameworkCore/Volo/Abp/EntityFrameworkCore/ChangeTrackers/AbpEfCoreNavigationHelper.cs

@ -31,14 +31,6 @@ public class AbpEfCoreNavigationHelper : ITransientDependency
protected virtual void EntityEntryTrackedOrStateChanged(EntityEntry entityEntry)
{
if (entityEntry.State is EntityState.Unchanged or EntityState.Modified)
{
foreach (var entry in EntityEntries.Values.Where(x => x.NavigationEntries.Any()))
{
entry.UpdateNavigationEntries();
}
}
if (entityEntry.State != EntityState.Unchanged)
{
return;
@ -58,23 +50,11 @@ public class AbpEfCoreNavigationHelper : ITransientDependency
EntityEntries.Add(entryId, new AbpEntityEntry(entryId, entityEntry));
}
protected virtual void DetectChanges(EntityEntry entityEntry)
{
if (entityEntry.State != EntityState.Added &&
entityEntry.State != EntityState.Deleted &&
entityEntry.State != EntityState.Modified)
{
return;
}
RecursiveDetectChanges(entityEntry);
}
protected virtual void RecursiveDetectChanges(EntityEntry entityEntry)
protected virtual void DetectChanges(EntityEntry entityEntry, bool checkEntityEntryState = true)
{
#pragma warning disable EF1001
var stateManager = entityEntry.Context.GetDependencies().StateManager;
var internalEntityEntityEntry = stateManager.Entries.FirstOrDefault(x => x.Entity == entityEntry.Entity);
var internalEntityEntityEntry = stateManager.TryGetEntry(entityEntry.Entity, throwOnNonUniqueness: false);
if (internalEntityEntityEntry == null)
{
return;
@ -95,15 +75,16 @@ public class AbpEfCoreNavigationHelper : ITransientDependency
continue;
}
if (!abpEntityEntry.IsModified)
abpEntityEntry.UpdateNavigationEntries();
if (!abpEntityEntry.IsModified && (!checkEntityEntryState || IsEntityEntryChanged(entityEntry)))
{
abpEntityEntry.IsModified = true;
RecursiveDetectChanges(abpEntityEntry.EntityEntry);
DetectChanges(abpEntityEntry.EntityEntry, false);
}
var navigationEntry = abpEntityEntry.NavigationEntries.FirstOrDefault(x => x.NavigationEntry.Metadata is INavigation navigationMetadata && navigationMetadata.ForeignKey == foreignKey) ??
abpEntityEntry.NavigationEntries.FirstOrDefault(x => x.NavigationEntry.Metadata is ISkipNavigation skipNavigationMetadata && skipNavigationMetadata.ForeignKey == foreignKey);
if (navigationEntry != null)
if (navigationEntry != null && IsEntityEntryChanged(entityEntry))
{
navigationEntry.IsModified = true;
}
@ -134,15 +115,16 @@ public class AbpEfCoreNavigationHelper : ITransientDependency
continue;
}
if (!abpEntityEntry.IsModified)
abpEntityEntry.UpdateNavigationEntries();
if (!abpEntityEntry.IsModified && (!checkEntityEntryState || IsEntityEntryChanged(entityEntry)))
{
abpEntityEntry.IsModified = true;
RecursiveDetectChanges(abpEntityEntry.EntityEntry);
DetectChanges(abpEntityEntry.EntityEntry, false);
}
var navigationEntry = abpEntityEntry.NavigationEntries.FirstOrDefault(x => x.NavigationEntry.Metadata is INavigation navigationMetadata && navigationMetadata.ForeignKey == inverseForeignKey) ??
abpEntityEntry.NavigationEntries.FirstOrDefault(x => x.NavigationEntry.Metadata is ISkipNavigation skipNavigationMetadata && skipNavigationMetadata.ForeignKey == inverseForeignKey);
if (navigationEntry != null)
if (navigationEntry != null && (!checkEntityEntryState || IsEntityEntryChanged(entityEntry)))
{
navigationEntry.IsModified = true;
}
@ -151,6 +133,13 @@ public class AbpEfCoreNavigationHelper : ITransientDependency
#pragma warning restore EF1001
}
protected virtual bool IsEntityEntryChanged(EntityEntry entityEntry)
{
return entityEntry.State == EntityState.Added ||
entityEntry.State == EntityState.Deleted ||
entityEntry.State == EntityState.Modified;
}
public virtual List<EntityEntry> GetChangedEntityEntries()
{
return EntityEntries

6
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": "~9.2.1",
"@abp/prismjs": "~9.2.1",
"@abp/highlight.js": "~9.2.1"
"@abp/aspnetcore.mvc.ui.theme.shared": "~9.2.2",
"@abp/prismjs": "~9.2.2",
"@abp/highlight.js": "~9.2.2"
}
}

264
modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.Demo/yarn.lock

@ -2,203 +2,203 @@
# yarn lockfile v1
"@abp/aspnetcore.mvc.ui.theme.shared@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-9.2.1.tgz#35f6de6f106c80592ce70d36b6e8b20c64862803"
integrity sha512-kZz1tgUguGHxwG1MRkbkeXn9sIjbCOHJcBU+w+XuWwCqigM2yaE+KgnASDcjCrjQiPu6i73hf9OwtxXY1UbGMQ==
dependencies:
"@abp/aspnetcore.mvc.ui" "~9.2.1"
"@abp/bootstrap" "~9.2.1"
"@abp/bootstrap-datepicker" "~9.2.1"
"@abp/bootstrap-daterangepicker" "~9.2.1"
"@abp/datatables.net-bs5" "~9.2.1"
"@abp/font-awesome" "~9.2.1"
"@abp/jquery-form" "~9.2.1"
"@abp/jquery-validation-unobtrusive" "~9.2.1"
"@abp/lodash" "~9.2.1"
"@abp/luxon" "~9.2.1"
"@abp/malihu-custom-scrollbar-plugin" "~9.2.1"
"@abp/moment" "~9.2.1"
"@abp/select2" "~9.2.1"
"@abp/sweetalert2" "~9.2.1"
"@abp/timeago" "~9.2.1"
"@abp/aspnetcore.mvc.ui@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-9.2.1.tgz#8b30f830d85f7e1f4a386b0ef8d0444e2550bc42"
integrity sha512-0C41JpevGynbyHGeKkqLUSVNK64QETsKVyVWY4fSZkChGHlD09Fn3qIlHJInpBqJ9qNYs5VQ7RRP02PSum9mAg==
"@abp/aspnetcore.mvc.ui.theme.shared@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-9.2.2.tgz#f852a8f3aa66b638378db798c03679122b4ba5a5"
integrity sha512-yP3JCJ2mcmhVIDEL9/hispM07FowSYr/VvM6ohv1daMQfyLmciIXyQPgoQwhHEWXifJvytKhbQauDxW3B3L7lw==
dependencies:
"@abp/aspnetcore.mvc.ui" "~9.2.2"
"@abp/bootstrap" "~9.2.2"
"@abp/bootstrap-datepicker" "~9.2.2"
"@abp/bootstrap-daterangepicker" "~9.2.2"
"@abp/datatables.net-bs5" "~9.2.2"
"@abp/font-awesome" "~9.2.2"
"@abp/jquery-form" "~9.2.2"
"@abp/jquery-validation-unobtrusive" "~9.2.2"
"@abp/lodash" "~9.2.2"
"@abp/luxon" "~9.2.2"
"@abp/malihu-custom-scrollbar-plugin" "~9.2.2"
"@abp/moment" "~9.2.2"
"@abp/select2" "~9.2.2"
"@abp/sweetalert2" "~9.2.2"
"@abp/timeago" "~9.2.2"
"@abp/aspnetcore.mvc.ui@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-9.2.2.tgz#0349556ce125bf83e88ce8384ff1d1e648c9766a"
integrity sha512-Ll24xOpccgIZtnCRKrIj5AygRrV0fBCVqKvR16VwiWwMPd86N60Vflb9LyU7lx9/1sFMp/ONbGojxDy/tG9aBQ==
dependencies:
ansi-colors "^4.1.3"
"@abp/bootstrap-datepicker@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-9.2.1.tgz#373c8715d175ca23a8871bacdb5f017b070254aa"
integrity sha512-uaCpz5EDSZYDacjnYoqTiktTDFGnGJPEHYh5eG4BORlQta53Hvak7m2CkRVjdOaXtuPLi6EbWPSh2bHIfhKRyQ==
"@abp/bootstrap-datepicker@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-9.2.2.tgz#75aefaa4a2f0b322012599d92caa5c7a0b88cd67"
integrity sha512-6ogV4COwnGmAznEOG64qQUfoyYvmMvoi4fwAqOcKrNjWUcVFUa+wL+fbVDf9tbYT3SkeoNG5sD0JN7xj43V5cg==
dependencies:
bootstrap-datepicker "^1.10.0"
"@abp/bootstrap-daterangepicker@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-9.2.1.tgz#b49e17a4753b09d49bfad6774a7f185e7e5bf71c"
integrity sha512-kd6LEACfx7CBIQOAiE/RHFp/WnthE2iz/eivl3fwuz1VgAO0CBIQ7hYoX91GaAIQgt+OAcgGbOl2G6E284EM9Q==
"@abp/bootstrap-daterangepicker@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-9.2.2.tgz#5493d00116aa29404873ff551aa86f2605bb19f2"
integrity sha512-/JYaSj/LLaVYaeqihVS8jZb0K7J40SLakwVCFXwFhAB+/MSfgdGmzJxdf8nv/2GYlIZtG1Bv2gaQ8kHjd+M7DA==
dependencies:
bootstrap-daterangepicker "^3.1.0"
"@abp/bootstrap@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-9.2.1.tgz#ddf624e95f1dab4a8fce8d20b6dccd2b3d3f1679"
integrity sha512-NghAVP7M/Y2y9GYDu7IWo8oW7EyJEO+1NnPqCudpjWX4C6B27d7ghJ7I0MfrHoRq9/hBJZ07AKf3KMAZQD99ng==
"@abp/bootstrap@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-9.2.2.tgz#80a7e43c3629ca9db3bedd6fb28b69f5e4d90685"
integrity sha512-1PI1sRzLy1aWcv+JO8mYl5/sRfbUq2pXAwWcRb80axJSOfb36Uhw+yURRcEaaw7bAtNN7qLvf0EBKS9Rh3iTrQ==
dependencies:
"@abp/core" "~9.2.1"
"@abp/core" "~9.2.2"
bootstrap "^5.3.3"
"@abp/clipboard@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-9.2.1.tgz#03ca342381e55b8348612a6b7d4f60d431e8dee8"
integrity sha512-8iedZdgBm7j7adC+2oY1fJF1K2CHU8lz5KmCPgGcLzB2ch59ASH2GdyeTtN3Us3TxOCm6uIRkIRzKs53gVvIaA==
"@abp/clipboard@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-9.2.2.tgz#dffa57695f5b92fdbed73fdcc234a12efe179da0"
integrity sha512-D3bgyYy1d8PdeO7FU/IieeMGYeYFpW/A3A8zimbAzk1zJAVXW54uhq20Bx+vqa8aoXQRdk660riSm/c5rdc6Hw==
dependencies:
"@abp/core" "~9.2.1"
"@abp/core" "~9.2.2"
clipboard "^2.0.11"
"@abp/core@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/core/-/core-9.2.1.tgz#f7c635f1fe88fc3fbbc4accaa6aee2dc3b5631a7"
integrity sha512-onCzS2w+U+wBv5FRDCVE176AiyZDMm1D5GaqiEnpuAwsBncFpFyZedC95dtPmykagJbpOvHVSPOLyZ2jzGjcYg==
"@abp/core@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/core/-/core-9.2.2.tgz#d1fc363ddb26b4118e14d277f32a26247be4d430"
integrity sha512-YR5XPW0JED/hca8aGiWd73pR6u93Gs6IfklpU0DnSrOFTm2FnoNAryPujGUyGl0ZJM8G7Rt0xwQyAKV6PAqsXg==
dependencies:
"@abp/utils" "~9.2.1"
"@abp/utils" "~9.2.2"
"@abp/datatables.net-bs5@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-9.2.1.tgz#ff69059e96d5341166fa8d08390e9bb352010e5d"
integrity sha512-NEkf8xWTIYFDs9lAAPs0hOL2UD+pnVwyix/9IAtip3BIkyPFpLCniNWbu1WhuNJpfmLHrWPSqIrouR80gGL7PQ==
"@abp/datatables.net-bs5@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-9.2.2.tgz#197f99726c3bcaefaefdb9c91d07b50052340871"
integrity sha512-BVWCOrPx7B3JMnxZ/ZatSfv2NRRWQXhL85DFkKE92k5+ZE+Fzx2noa3SgwAsuVXmg8Q7zVg5xRM4w7hDwBW8Bw==
dependencies:
"@abp/datatables.net" "~9.2.1"
"@abp/datatables.net" "~9.2.2"
datatables.net-bs5 "^2.1.8"
"@abp/datatables.net@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-9.2.1.tgz#0a5ab74ca44cd785efb487f0447e8acdea9d7aa1"
integrity sha512-A9TSPRNUV0eeCPnpGV9Htu9ZylUf3e03smYcbEROQHe+htwhcEV5dz8SLAI90baPi2g7VnyPav/3efaqo+ETdg==
"@abp/datatables.net@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-9.2.2.tgz#334104f11d2da98df4afaf03b53a2cd504c7068f"
integrity sha512-2tJxpmsh5zaVpbz0TWwpd+cdS1auwpURRfbNZ6xDM8cL/FS2dTBv8RGBIsKU0xltdfzKmtSd/Uh0xVjJjkNN2Q==
dependencies:
"@abp/jquery" "~9.2.1"
"@abp/jquery" "~9.2.2"
datatables.net "^2.1.8"
"@abp/font-awesome@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-9.2.1.tgz#a387f1cf457bdb6e3cd30bd9f4c455a41f8ca0b1"
integrity sha512-RVo3422BItdAAmafSCH/mT1Ux8q6yUz7nswGep4beP1k1VfmFExj1mgVphIpAlH3DWyzfnwUOq7lLWf/Ul2dOA==
"@abp/font-awesome@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-9.2.2.tgz#f978cd07eb8175f73e252c345a9765cdf35b4d3d"
integrity sha512-Zoc5HoqFqltc4/nudGFhL/Mr0UtMP15BjzLqbMJX0XFjHVzAg9oIGeC/kWFqUPWrQ+M5xGLm4kznNuyzee7Dnw==
dependencies:
"@abp/core" "~9.2.1"
"@abp/core" "~9.2.2"
"@fortawesome/fontawesome-free" "^6.6.0"
"@abp/highlight.js@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/highlight.js/-/highlight.js-9.2.1.tgz#32766530a14fad03faaf4a2ac37cff5015798fc8"
integrity sha512-Qog65kMHjPofbVmDZ74EM49vgownoIgSPsnn3eXYG+ZnItl08xREMT5aWeAtxwISKxOd4ra5U/zfuV5Bo2n7dw==
"@abp/highlight.js@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/highlight.js/-/highlight.js-9.2.2.tgz#ce38a70999538a8f6c9ded08bcfb43c49a6bfb8a"
integrity sha512-hMuBcOOjaowjtkrr5Hlhr6BqxlnrEauhqcYNx+b09gAHu7xEqNK5zwuhUWKySkpyZn+eM6IW+xITbXBhUqzLdQ==
dependencies:
"@abp/core" "~9.2.1"
"@abp/core" "~9.2.2"
"@highlightjs/cdn-assets" "~11.10.0"
"@abp/jquery-form@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-9.2.1.tgz#727b391c36e8ff46b62cb01be14715a05fe74b4f"
integrity sha512-n6EpUNNRzilOzP5rYTWr9K2mPQbvBQAuxPiwUZpfwf+QpJrs+NppJMaC06HFbHcSkDDy/utd+P1/sqWaJjL/tw==
"@abp/jquery-form@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-9.2.2.tgz#f958f05b66e63bc7b0fe6ed7bf2c5b25e8e5c244"
integrity sha512-Plo30NgmoZETQvtO2h9UkfXl8dcsdNvG9G0a7AENkj/fszJDP4J5T2U2XkPG4G6wbOg4h8gsmIceV++bCFXfgw==
dependencies:
"@abp/jquery" "~9.2.1"
"@abp/jquery" "~9.2.2"
jquery-form "^4.3.0"
"@abp/jquery-validation-unobtrusive@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-9.2.1.tgz#98215811818e618d96a1dcac6419962fd39c6fef"
integrity sha512-7no3KxRW3agw4EAM5iTvQjE4+m9JrjuMAV20gAU0uVPB2+sHlluEAks0IU9wz76T+Ac7osferUZz33LgdDvIaw==
"@abp/jquery-validation-unobtrusive@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-9.2.2.tgz#6fe634b9032c9e40198f3e0f27cc57afb3266d29"
integrity sha512-VXRNSky8nVtH0NHn189HvwitKPaLzfbYoMEM7QFf1n3mEbkoBp4P43JbuTJdAzyRm5KNPNewMl5HW8EnZB0krQ==
dependencies:
"@abp/jquery-validation" "~9.2.1"
"@abp/jquery-validation" "~9.2.2"
jquery-validation-unobtrusive "^4.0.0"
"@abp/jquery-validation@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-9.2.1.tgz#559c581523e4e098f2bf67627dfe6c7ef0e1c3c1"
integrity sha512-AEGm3agbwr1f5kmXvpBeiDmsS22P88zVr8NJDICGsgBxZofKndXsDFciNZGu6lXF5qXp8AwGRi//QPaCeQsP8g==
"@abp/jquery-validation@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-9.2.2.tgz#50a72f32d1c113e67cf75effefe7f1501d5956bd"
integrity sha512-mHfPYSBkBSxytaJcbRbHtyeojGmiHiW825qFyyIBwr2kCY0s6Jr3zW8rtm3bIu2EB64cITI7kp7yKyJOxgQYlQ==
dependencies:
"@abp/jquery" "~9.2.1"
"@abp/jquery" "~9.2.2"
jquery-validation "^1.21.0"
"@abp/jquery@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-9.2.1.tgz#bbcc9eab9cef528a8163f5062665ffcf2b87c2f0"
integrity sha512-gdDIKMNEpeUdzUu5C/g6j568ytJ7ifaDxBr1NYf2kJ34p7y6rrBmyY+sL+xR3ZlcGgyPGXyFhTLRD7qTjXlkPg==
"@abp/jquery@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-9.2.2.tgz#42c092c1790d03cdc4578d8cbeaa1954cb843cf7"
integrity sha512-NavJF7SToheI+3VQWbZe+5cZVMBDt4hSGzclfB/r2/+YdKerxgggv9tDp6w8PuvnhuxHmZp6MIPelKCFN0B3Tw==
dependencies:
"@abp/core" "~9.2.1"
"@abp/core" "~9.2.2"
jquery "~3.7.1"
"@abp/lodash@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-9.2.1.tgz#a80ab7a908a0332b721277b1193209187fab57d8"
integrity sha512-I2+XYqwMi3+FXCv4xp5hBoJmOszg2WR1gnGc+Qd0zwb2VAbG4MvKVFgM/GUAFD8EKlquGyPf3f+4l5FkaPFkrQ==
"@abp/lodash@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-9.2.2.tgz#41ec734ec769f22f5bebcea0b783d2b47ccb6d9a"
integrity sha512-0uvG9hGBwp0hg5sgh0NC3URIPAD0sSfVgMN39wFJdfA+snrd4fb9TqRhZ+ntvK7iGdCEx6iIHGIgOTTzkpBB6Q==
dependencies:
"@abp/core" "~9.2.1"
"@abp/core" "~9.2.2"
lodash "^4.17.21"
"@abp/luxon@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-9.2.1.tgz#7e3d197425813cfc6932cd3f9f09f97ecd2f4fc7"
integrity sha512-2tyOZRmq9jQN0Uhg8WaHfEzL0Xeew04sbA8O9bqw28psRbXaWXEVdElRMBNt50sZkFPhHFoxxFN7PR8obs0Qug==
"@abp/luxon@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-9.2.2.tgz#553d69dc8291a1e53b5760dacf6a9067f0e54862"
integrity sha512-3J4Ch4lteckGD5n9tm5qqDydxASAD22z8z86/wfKR91y+JlXRMFTki6vU8vVnDzW4jVN+i+pUj2tg9Ov2buikQ==
dependencies:
"@abp/core" "~9.2.1"
"@abp/core" "~9.2.2"
luxon "^3.5.0"
"@abp/malihu-custom-scrollbar-plugin@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-9.2.1.tgz#b0fa249885d442ba84657c7705df73851cb56db1"
integrity sha512-fzgQZsbN0xLMxEWh7znKAI4j0CPb8ciT/3x+QguGZDJf7OFw0YnEWctfEYJnnGG28HpHs1mh64gjqoeceHy0HQ==
"@abp/malihu-custom-scrollbar-plugin@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-9.2.2.tgz#97af3474245425b531200a4970c2e4f110a84deb"
integrity sha512-siudEyOumlFV/94CABziPHWVg/C4+QjZdEqzsClPCQg+73PFNIiSwKLR7IyeBOHd+1Nf6sqNeOOmWpcGgGFe2g==
dependencies:
"@abp/core" "~9.2.1"
"@abp/core" "~9.2.2"
malihu-custom-scrollbar-plugin "^3.1.5"
"@abp/moment@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-9.2.1.tgz#9982c65d63171962091b08fc4e0d1ea98cc1f0eb"
integrity sha512-V4KH1WmahP0BoaQGLEY4a0AQyfk1cLeNMk3qCPtuqIUbOFwimJY3oQgpelilEwjI3oD/upMzGphjLGrfQLRM2A==
"@abp/moment@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-9.2.2.tgz#4c6d1752705678a23044aabb1316537e3edfc54c"
integrity sha512-xi07p1rj673qAtLwnSAmY/7DE5YfnAMvVRD8O0g+NrXiGbC1Zfv0iwhaXKTOzmUF8R+cVD/Ca3hEajqs8jHF0w==
dependencies:
moment "^2.30.1"
"@abp/prismjs@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-9.2.1.tgz#d204983b3b7b31529675904db46ed896f686b863"
integrity sha512-uvwAZXPJOa827fRfuqAJdhLhg1zxN9wKe9OD0S7NqyO+giu4UFAgMxrdddQ3QgUlbPOCIxPYE65fNvBByfFrdg==
"@abp/prismjs@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-9.2.2.tgz#fea1da8a4cd56fc0540f46e4bb97dc25f8b8617e"
integrity sha512-6gvZiq1j+Q1YmWuNnenQdEWeE/zQs9ZTGLJhXCI/V3MBtzd15NbmR3Bxg/8IFaikgpDyunJwKv9cEU8XKskR5Q==
dependencies:
"@abp/clipboard" "~9.2.1"
"@abp/core" "~9.2.1"
"@abp/clipboard" "~9.2.2"
"@abp/core" "~9.2.2"
prismjs "^1.29.0"
"@abp/select2@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-9.2.1.tgz#5c3c6a4b0018b533491d6a46540069782559c57a"
integrity sha512-p743cnoohNLKX11ptnBcN5z9+ZyC11M9mwRR6SWbW5f1Eqvbkq03bf2mDFUfukCNis4RefeURZunPlsBOmRn/A==
"@abp/select2@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-9.2.2.tgz#af5a9b7411be257f57b192fe2cabaa4915fa3b78"
integrity sha512-UvEPO0KPXFdj4qUw1zkSu0z4/gj+54OpPBQuSLZmErXt8Mswz/XWdNZ5SqEpJdMzeHLWmFuGndo5J5EeJ+u29A==
dependencies:
"@abp/core" "~9.2.1"
"@abp/core" "~9.2.2"
select2 "^4.0.13"
"@abp/sweetalert2@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-9.2.1.tgz#3db7e33855614460d2fdc5e3f8b65530902fcd9a"
integrity sha512-fJYLVxc5pAJoSLIcQYf5xRkPVnVQi/5+xwTgOePy3QeygOrAMpGS7vy+MIq7Mn+tBoEFlQ/Jn+NoB04AIYYPFw==
"@abp/sweetalert2@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-9.2.2.tgz#d82e4363d7b9ff7b372b6b7f7db3da85a35b8d3e"
integrity sha512-/+xSR+6T6cJqurJz7AgtuJj0V9TjkQiVNuN8CpZYHUjiRHIclkeGIAk7xZOH2/I/q9Ijy6cAwcx23vSP1aj00Q==
dependencies:
"@abp/core" "~9.2.1"
"@abp/core" "~9.2.2"
sweetalert2 "^11.14.1"
"@abp/timeago@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-9.2.1.tgz#6904e2d7bda57b436e3385c5fd1899b9cd806dd8"
integrity sha512-fmsPuBouWR/BvhXN53yJpg1Se06uIL7ox8XOgx1MHCe+1vxbXnFCtM2VujfowWtOSTJOzbL1DHcDpFE7JlkOag==
"@abp/timeago@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-9.2.2.tgz#688ff285031e473831d780ae9f046e902f11538f"
integrity sha512-aWLlp8/ZYsqzyBF2OjlBhZoIKTNskuwSyNeH2YG6SPeNpvisDn7UN3aeThrBSmDWjKOksYFlHNW9Zmg8DC3wYw==
dependencies:
"@abp/jquery" "~9.2.1"
"@abp/jquery" "~9.2.2"
timeago "^1.6.7"
"@abp/utils@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-9.2.1.tgz#803fd48927ae332309f8a7005806c6aa6e499750"
integrity sha512-+j0SNB/K2j2xTTijy/qCL3ds2c/7OW4nrJ8Ccq17WtEqP+jk2TtJi0EnLqhNTDih0A++XV+pcftUC+cQ0h1cUw==
"@abp/utils@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-9.2.2.tgz#27873c943b29fee5f31b893cdd6f7d4c21b21913"
integrity sha512-dHztqg4w4CgYwBecutG59dkQk3S6WoivZ7swS16C6sV3KO2chEiVjMKU36pw0XndAUtIzd0UiD5IFF6rkBuvJA==
dependencies:
just-compare "^2.3.0"

4
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": "~9.2.1",
"@abp/prismjs": "~9.2.1"
"@abp/aspnetcore.mvc.ui.theme.basic": "~9.2.2",
"@abp/prismjs": "~9.2.2"
},
"devDependencies": {}
}

268
modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic.Demo/yarn.lock

@ -2,202 +2,202 @@
# yarn lockfile v1
"@abp/aspnetcore.mvc.ui.theme.basic@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-9.2.1.tgz#2380cf2ecebbe8e6250c51290df88a1015b2ad81"
integrity sha512-Wmn4+siWFPxoQmjo3R6wt0PRqeaaIsN6WM5vrWWB+RvTBXdCyitlQKEWtOudnr95WDwwWC+BZThS75gImjCtLw==
dependencies:
"@abp/aspnetcore.mvc.ui.theme.shared" "~9.2.1"
"@abp/aspnetcore.mvc.ui.theme.shared@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-9.2.1.tgz#35f6de6f106c80592ce70d36b6e8b20c64862803"
integrity sha512-kZz1tgUguGHxwG1MRkbkeXn9sIjbCOHJcBU+w+XuWwCqigM2yaE+KgnASDcjCrjQiPu6i73hf9OwtxXY1UbGMQ==
dependencies:
"@abp/aspnetcore.mvc.ui" "~9.2.1"
"@abp/bootstrap" "~9.2.1"
"@abp/bootstrap-datepicker" "~9.2.1"
"@abp/bootstrap-daterangepicker" "~9.2.1"
"@abp/datatables.net-bs5" "~9.2.1"
"@abp/font-awesome" "~9.2.1"
"@abp/jquery-form" "~9.2.1"
"@abp/jquery-validation-unobtrusive" "~9.2.1"
"@abp/lodash" "~9.2.1"
"@abp/luxon" "~9.2.1"
"@abp/malihu-custom-scrollbar-plugin" "~9.2.1"
"@abp/moment" "~9.2.1"
"@abp/select2" "~9.2.1"
"@abp/sweetalert2" "~9.2.1"
"@abp/timeago" "~9.2.1"
"@abp/aspnetcore.mvc.ui@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-9.2.1.tgz#8b30f830d85f7e1f4a386b0ef8d0444e2550bc42"
integrity sha512-0C41JpevGynbyHGeKkqLUSVNK64QETsKVyVWY4fSZkChGHlD09Fn3qIlHJInpBqJ9qNYs5VQ7RRP02PSum9mAg==
"@abp/aspnetcore.mvc.ui.theme.basic@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-9.2.2.tgz#4d18dca3945daa42e94966314ceaa83b57ad573e"
integrity sha512-9kUxDDeQ/8o1ZiudA00o+riaa4M3pgrVmdj/6UY5lZZ+GMq3uR2hRBsbSNYlPBI73if3cwPWKuKE/Sv0qLcs+A==
dependencies:
"@abp/aspnetcore.mvc.ui.theme.shared" "~9.2.2"
"@abp/aspnetcore.mvc.ui.theme.shared@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-9.2.2.tgz#f852a8f3aa66b638378db798c03679122b4ba5a5"
integrity sha512-yP3JCJ2mcmhVIDEL9/hispM07FowSYr/VvM6ohv1daMQfyLmciIXyQPgoQwhHEWXifJvytKhbQauDxW3B3L7lw==
dependencies:
"@abp/aspnetcore.mvc.ui" "~9.2.2"
"@abp/bootstrap" "~9.2.2"
"@abp/bootstrap-datepicker" "~9.2.2"
"@abp/bootstrap-daterangepicker" "~9.2.2"
"@abp/datatables.net-bs5" "~9.2.2"
"@abp/font-awesome" "~9.2.2"
"@abp/jquery-form" "~9.2.2"
"@abp/jquery-validation-unobtrusive" "~9.2.2"
"@abp/lodash" "~9.2.2"
"@abp/luxon" "~9.2.2"
"@abp/malihu-custom-scrollbar-plugin" "~9.2.2"
"@abp/moment" "~9.2.2"
"@abp/select2" "~9.2.2"
"@abp/sweetalert2" "~9.2.2"
"@abp/timeago" "~9.2.2"
"@abp/aspnetcore.mvc.ui@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-9.2.2.tgz#0349556ce125bf83e88ce8384ff1d1e648c9766a"
integrity sha512-Ll24xOpccgIZtnCRKrIj5AygRrV0fBCVqKvR16VwiWwMPd86N60Vflb9LyU7lx9/1sFMp/ONbGojxDy/tG9aBQ==
dependencies:
ansi-colors "^4.1.3"
"@abp/bootstrap-datepicker@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-9.2.1.tgz#373c8715d175ca23a8871bacdb5f017b070254aa"
integrity sha512-uaCpz5EDSZYDacjnYoqTiktTDFGnGJPEHYh5eG4BORlQta53Hvak7m2CkRVjdOaXtuPLi6EbWPSh2bHIfhKRyQ==
"@abp/bootstrap-datepicker@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-9.2.2.tgz#75aefaa4a2f0b322012599d92caa5c7a0b88cd67"
integrity sha512-6ogV4COwnGmAznEOG64qQUfoyYvmMvoi4fwAqOcKrNjWUcVFUa+wL+fbVDf9tbYT3SkeoNG5sD0JN7xj43V5cg==
dependencies:
bootstrap-datepicker "^1.10.0"
"@abp/bootstrap-daterangepicker@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-9.2.1.tgz#b49e17a4753b09d49bfad6774a7f185e7e5bf71c"
integrity sha512-kd6LEACfx7CBIQOAiE/RHFp/WnthE2iz/eivl3fwuz1VgAO0CBIQ7hYoX91GaAIQgt+OAcgGbOl2G6E284EM9Q==
"@abp/bootstrap-daterangepicker@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-9.2.2.tgz#5493d00116aa29404873ff551aa86f2605bb19f2"
integrity sha512-/JYaSj/LLaVYaeqihVS8jZb0K7J40SLakwVCFXwFhAB+/MSfgdGmzJxdf8nv/2GYlIZtG1Bv2gaQ8kHjd+M7DA==
dependencies:
bootstrap-daterangepicker "^3.1.0"
"@abp/bootstrap@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-9.2.1.tgz#ddf624e95f1dab4a8fce8d20b6dccd2b3d3f1679"
integrity sha512-NghAVP7M/Y2y9GYDu7IWo8oW7EyJEO+1NnPqCudpjWX4C6B27d7ghJ7I0MfrHoRq9/hBJZ07AKf3KMAZQD99ng==
"@abp/bootstrap@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-9.2.2.tgz#80a7e43c3629ca9db3bedd6fb28b69f5e4d90685"
integrity sha512-1PI1sRzLy1aWcv+JO8mYl5/sRfbUq2pXAwWcRb80axJSOfb36Uhw+yURRcEaaw7bAtNN7qLvf0EBKS9Rh3iTrQ==
dependencies:
"@abp/core" "~9.2.1"
"@abp/core" "~9.2.2"
bootstrap "^5.3.3"
"@abp/clipboard@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-9.2.1.tgz#03ca342381e55b8348612a6b7d4f60d431e8dee8"
integrity sha512-8iedZdgBm7j7adC+2oY1fJF1K2CHU8lz5KmCPgGcLzB2ch59ASH2GdyeTtN3Us3TxOCm6uIRkIRzKs53gVvIaA==
"@abp/clipboard@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-9.2.2.tgz#dffa57695f5b92fdbed73fdcc234a12efe179da0"
integrity sha512-D3bgyYy1d8PdeO7FU/IieeMGYeYFpW/A3A8zimbAzk1zJAVXW54uhq20Bx+vqa8aoXQRdk660riSm/c5rdc6Hw==
dependencies:
"@abp/core" "~9.2.1"
"@abp/core" "~9.2.2"
clipboard "^2.0.11"
"@abp/core@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/core/-/core-9.2.1.tgz#f7c635f1fe88fc3fbbc4accaa6aee2dc3b5631a7"
integrity sha512-onCzS2w+U+wBv5FRDCVE176AiyZDMm1D5GaqiEnpuAwsBncFpFyZedC95dtPmykagJbpOvHVSPOLyZ2jzGjcYg==
"@abp/core@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/core/-/core-9.2.2.tgz#d1fc363ddb26b4118e14d277f32a26247be4d430"
integrity sha512-YR5XPW0JED/hca8aGiWd73pR6u93Gs6IfklpU0DnSrOFTm2FnoNAryPujGUyGl0ZJM8G7Rt0xwQyAKV6PAqsXg==
dependencies:
"@abp/utils" "~9.2.1"
"@abp/utils" "~9.2.2"
"@abp/datatables.net-bs5@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-9.2.1.tgz#ff69059e96d5341166fa8d08390e9bb352010e5d"
integrity sha512-NEkf8xWTIYFDs9lAAPs0hOL2UD+pnVwyix/9IAtip3BIkyPFpLCniNWbu1WhuNJpfmLHrWPSqIrouR80gGL7PQ==
"@abp/datatables.net-bs5@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-9.2.2.tgz#197f99726c3bcaefaefdb9c91d07b50052340871"
integrity sha512-BVWCOrPx7B3JMnxZ/ZatSfv2NRRWQXhL85DFkKE92k5+ZE+Fzx2noa3SgwAsuVXmg8Q7zVg5xRM4w7hDwBW8Bw==
dependencies:
"@abp/datatables.net" "~9.2.1"
"@abp/datatables.net" "~9.2.2"
datatables.net-bs5 "^2.1.8"
"@abp/datatables.net@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-9.2.1.tgz#0a5ab74ca44cd785efb487f0447e8acdea9d7aa1"
integrity sha512-A9TSPRNUV0eeCPnpGV9Htu9ZylUf3e03smYcbEROQHe+htwhcEV5dz8SLAI90baPi2g7VnyPav/3efaqo+ETdg==
"@abp/datatables.net@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-9.2.2.tgz#334104f11d2da98df4afaf03b53a2cd504c7068f"
integrity sha512-2tJxpmsh5zaVpbz0TWwpd+cdS1auwpURRfbNZ6xDM8cL/FS2dTBv8RGBIsKU0xltdfzKmtSd/Uh0xVjJjkNN2Q==
dependencies:
"@abp/jquery" "~9.2.1"
"@abp/jquery" "~9.2.2"
datatables.net "^2.1.8"
"@abp/font-awesome@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-9.2.1.tgz#a387f1cf457bdb6e3cd30bd9f4c455a41f8ca0b1"
integrity sha512-RVo3422BItdAAmafSCH/mT1Ux8q6yUz7nswGep4beP1k1VfmFExj1mgVphIpAlH3DWyzfnwUOq7lLWf/Ul2dOA==
"@abp/font-awesome@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-9.2.2.tgz#f978cd07eb8175f73e252c345a9765cdf35b4d3d"
integrity sha512-Zoc5HoqFqltc4/nudGFhL/Mr0UtMP15BjzLqbMJX0XFjHVzAg9oIGeC/kWFqUPWrQ+M5xGLm4kznNuyzee7Dnw==
dependencies:
"@abp/core" "~9.2.1"
"@abp/core" "~9.2.2"
"@fortawesome/fontawesome-free" "^6.6.0"
"@abp/jquery-form@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-9.2.1.tgz#727b391c36e8ff46b62cb01be14715a05fe74b4f"
integrity sha512-n6EpUNNRzilOzP5rYTWr9K2mPQbvBQAuxPiwUZpfwf+QpJrs+NppJMaC06HFbHcSkDDy/utd+P1/sqWaJjL/tw==
"@abp/jquery-form@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-9.2.2.tgz#f958f05b66e63bc7b0fe6ed7bf2c5b25e8e5c244"
integrity sha512-Plo30NgmoZETQvtO2h9UkfXl8dcsdNvG9G0a7AENkj/fszJDP4J5T2U2XkPG4G6wbOg4h8gsmIceV++bCFXfgw==
dependencies:
"@abp/jquery" "~9.2.1"
"@abp/jquery" "~9.2.2"
jquery-form "^4.3.0"
"@abp/jquery-validation-unobtrusive@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-9.2.1.tgz#98215811818e618d96a1dcac6419962fd39c6fef"
integrity sha512-7no3KxRW3agw4EAM5iTvQjE4+m9JrjuMAV20gAU0uVPB2+sHlluEAks0IU9wz76T+Ac7osferUZz33LgdDvIaw==
"@abp/jquery-validation-unobtrusive@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-9.2.2.tgz#6fe634b9032c9e40198f3e0f27cc57afb3266d29"
integrity sha512-VXRNSky8nVtH0NHn189HvwitKPaLzfbYoMEM7QFf1n3mEbkoBp4P43JbuTJdAzyRm5KNPNewMl5HW8EnZB0krQ==
dependencies:
"@abp/jquery-validation" "~9.2.1"
"@abp/jquery-validation" "~9.2.2"
jquery-validation-unobtrusive "^4.0.0"
"@abp/jquery-validation@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-9.2.1.tgz#559c581523e4e098f2bf67627dfe6c7ef0e1c3c1"
integrity sha512-AEGm3agbwr1f5kmXvpBeiDmsS22P88zVr8NJDICGsgBxZofKndXsDFciNZGu6lXF5qXp8AwGRi//QPaCeQsP8g==
"@abp/jquery-validation@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-9.2.2.tgz#50a72f32d1c113e67cf75effefe7f1501d5956bd"
integrity sha512-mHfPYSBkBSxytaJcbRbHtyeojGmiHiW825qFyyIBwr2kCY0s6Jr3zW8rtm3bIu2EB64cITI7kp7yKyJOxgQYlQ==
dependencies:
"@abp/jquery" "~9.2.1"
"@abp/jquery" "~9.2.2"
jquery-validation "^1.21.0"
"@abp/jquery@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-9.2.1.tgz#bbcc9eab9cef528a8163f5062665ffcf2b87c2f0"
integrity sha512-gdDIKMNEpeUdzUu5C/g6j568ytJ7ifaDxBr1NYf2kJ34p7y6rrBmyY+sL+xR3ZlcGgyPGXyFhTLRD7qTjXlkPg==
"@abp/jquery@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-9.2.2.tgz#42c092c1790d03cdc4578d8cbeaa1954cb843cf7"
integrity sha512-NavJF7SToheI+3VQWbZe+5cZVMBDt4hSGzclfB/r2/+YdKerxgggv9tDp6w8PuvnhuxHmZp6MIPelKCFN0B3Tw==
dependencies:
"@abp/core" "~9.2.1"
"@abp/core" "~9.2.2"
jquery "~3.7.1"
"@abp/lodash@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-9.2.1.tgz#a80ab7a908a0332b721277b1193209187fab57d8"
integrity sha512-I2+XYqwMi3+FXCv4xp5hBoJmOszg2WR1gnGc+Qd0zwb2VAbG4MvKVFgM/GUAFD8EKlquGyPf3f+4l5FkaPFkrQ==
"@abp/lodash@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-9.2.2.tgz#41ec734ec769f22f5bebcea0b783d2b47ccb6d9a"
integrity sha512-0uvG9hGBwp0hg5sgh0NC3URIPAD0sSfVgMN39wFJdfA+snrd4fb9TqRhZ+ntvK7iGdCEx6iIHGIgOTTzkpBB6Q==
dependencies:
"@abp/core" "~9.2.1"
"@abp/core" "~9.2.2"
lodash "^4.17.21"
"@abp/luxon@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-9.2.1.tgz#7e3d197425813cfc6932cd3f9f09f97ecd2f4fc7"
integrity sha512-2tyOZRmq9jQN0Uhg8WaHfEzL0Xeew04sbA8O9bqw28psRbXaWXEVdElRMBNt50sZkFPhHFoxxFN7PR8obs0Qug==
"@abp/luxon@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-9.2.2.tgz#553d69dc8291a1e53b5760dacf6a9067f0e54862"
integrity sha512-3J4Ch4lteckGD5n9tm5qqDydxASAD22z8z86/wfKR91y+JlXRMFTki6vU8vVnDzW4jVN+i+pUj2tg9Ov2buikQ==
dependencies:
"@abp/core" "~9.2.1"
"@abp/core" "~9.2.2"
luxon "^3.5.0"
"@abp/malihu-custom-scrollbar-plugin@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-9.2.1.tgz#b0fa249885d442ba84657c7705df73851cb56db1"
integrity sha512-fzgQZsbN0xLMxEWh7znKAI4j0CPb8ciT/3x+QguGZDJf7OFw0YnEWctfEYJnnGG28HpHs1mh64gjqoeceHy0HQ==
"@abp/malihu-custom-scrollbar-plugin@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-9.2.2.tgz#97af3474245425b531200a4970c2e4f110a84deb"
integrity sha512-siudEyOumlFV/94CABziPHWVg/C4+QjZdEqzsClPCQg+73PFNIiSwKLR7IyeBOHd+1Nf6sqNeOOmWpcGgGFe2g==
dependencies:
"@abp/core" "~9.2.1"
"@abp/core" "~9.2.2"
malihu-custom-scrollbar-plugin "^3.1.5"
"@abp/moment@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-9.2.1.tgz#9982c65d63171962091b08fc4e0d1ea98cc1f0eb"
integrity sha512-V4KH1WmahP0BoaQGLEY4a0AQyfk1cLeNMk3qCPtuqIUbOFwimJY3oQgpelilEwjI3oD/upMzGphjLGrfQLRM2A==
"@abp/moment@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-9.2.2.tgz#4c6d1752705678a23044aabb1316537e3edfc54c"
integrity sha512-xi07p1rj673qAtLwnSAmY/7DE5YfnAMvVRD8O0g+NrXiGbC1Zfv0iwhaXKTOzmUF8R+cVD/Ca3hEajqs8jHF0w==
dependencies:
moment "^2.30.1"
"@abp/prismjs@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-9.2.1.tgz#d204983b3b7b31529675904db46ed896f686b863"
integrity sha512-uvwAZXPJOa827fRfuqAJdhLhg1zxN9wKe9OD0S7NqyO+giu4UFAgMxrdddQ3QgUlbPOCIxPYE65fNvBByfFrdg==
"@abp/prismjs@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-9.2.2.tgz#fea1da8a4cd56fc0540f46e4bb97dc25f8b8617e"
integrity sha512-6gvZiq1j+Q1YmWuNnenQdEWeE/zQs9ZTGLJhXCI/V3MBtzd15NbmR3Bxg/8IFaikgpDyunJwKv9cEU8XKskR5Q==
dependencies:
"@abp/clipboard" "~9.2.1"
"@abp/core" "~9.2.1"
"@abp/clipboard" "~9.2.2"
"@abp/core" "~9.2.2"
prismjs "^1.29.0"
"@abp/select2@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-9.2.1.tgz#5c3c6a4b0018b533491d6a46540069782559c57a"
integrity sha512-p743cnoohNLKX11ptnBcN5z9+ZyC11M9mwRR6SWbW5f1Eqvbkq03bf2mDFUfukCNis4RefeURZunPlsBOmRn/A==
"@abp/select2@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-9.2.2.tgz#af5a9b7411be257f57b192fe2cabaa4915fa3b78"
integrity sha512-UvEPO0KPXFdj4qUw1zkSu0z4/gj+54OpPBQuSLZmErXt8Mswz/XWdNZ5SqEpJdMzeHLWmFuGndo5J5EeJ+u29A==
dependencies:
"@abp/core" "~9.2.1"
"@abp/core" "~9.2.2"
select2 "^4.0.13"
"@abp/sweetalert2@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-9.2.1.tgz#3db7e33855614460d2fdc5e3f8b65530902fcd9a"
integrity sha512-fJYLVxc5pAJoSLIcQYf5xRkPVnVQi/5+xwTgOePy3QeygOrAMpGS7vy+MIq7Mn+tBoEFlQ/Jn+NoB04AIYYPFw==
"@abp/sweetalert2@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-9.2.2.tgz#d82e4363d7b9ff7b372b6b7f7db3da85a35b8d3e"
integrity sha512-/+xSR+6T6cJqurJz7AgtuJj0V9TjkQiVNuN8CpZYHUjiRHIclkeGIAk7xZOH2/I/q9Ijy6cAwcx23vSP1aj00Q==
dependencies:
"@abp/core" "~9.2.1"
"@abp/core" "~9.2.2"
sweetalert2 "^11.14.1"
"@abp/timeago@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-9.2.1.tgz#6904e2d7bda57b436e3385c5fd1899b9cd806dd8"
integrity sha512-fmsPuBouWR/BvhXN53yJpg1Se06uIL7ox8XOgx1MHCe+1vxbXnFCtM2VujfowWtOSTJOzbL1DHcDpFE7JlkOag==
"@abp/timeago@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-9.2.2.tgz#688ff285031e473831d780ae9f046e902f11538f"
integrity sha512-aWLlp8/ZYsqzyBF2OjlBhZoIKTNskuwSyNeH2YG6SPeNpvisDn7UN3aeThrBSmDWjKOksYFlHNW9Zmg8DC3wYw==
dependencies:
"@abp/jquery" "~9.2.1"
"@abp/jquery" "~9.2.2"
timeago "^1.6.7"
"@abp/utils@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-9.2.1.tgz#803fd48927ae332309f8a7005806c6aa6e499750"
integrity sha512-+j0SNB/K2j2xTTijy/qCL3ds2c/7OW4nrJ8Ccq17WtEqP+jk2TtJi0EnLqhNTDih0A++XV+pcftUC+cQ0h1cUw==
"@abp/utils@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-9.2.2.tgz#27873c943b29fee5f31b893cdd6f7d4c21b21913"
integrity sha512-dHztqg4w4CgYwBecutG59dkQk3S6WoivZ7swS16C6sV3KO2chEiVjMKU36pw0XndAUtIzd0UiD5IFF6rkBuvJA==
dependencies:
just-compare "^2.3.0"

4
modules/blogging/app/Volo.BloggingTestApp/package.json

@ -3,7 +3,7 @@
"name": "volo.blogtestapp",
"private": true,
"dependencies": {
"@abp/aspnetcore.mvc.ui.theme.basic": "~9.2.1",
"@abp/blogging": "~9.2.1"
"@abp/aspnetcore.mvc.ui.theme.basic": "~9.2.2",
"@abp/blogging": "~9.2.2"
}
}

306
modules/blogging/app/Volo.BloggingTestApp/yarn.lock

@ -2,228 +2,228 @@
# yarn lockfile v1
"@abp/aspnetcore.mvc.ui.theme.basic@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-9.2.1.tgz#2380cf2ecebbe8e6250c51290df88a1015b2ad81"
integrity sha512-Wmn4+siWFPxoQmjo3R6wt0PRqeaaIsN6WM5vrWWB+RvTBXdCyitlQKEWtOudnr95WDwwWC+BZThS75gImjCtLw==
dependencies:
"@abp/aspnetcore.mvc.ui.theme.shared" "~9.2.1"
"@abp/aspnetcore.mvc.ui.theme.shared@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-9.2.1.tgz#35f6de6f106c80592ce70d36b6e8b20c64862803"
integrity sha512-kZz1tgUguGHxwG1MRkbkeXn9sIjbCOHJcBU+w+XuWwCqigM2yaE+KgnASDcjCrjQiPu6i73hf9OwtxXY1UbGMQ==
dependencies:
"@abp/aspnetcore.mvc.ui" "~9.2.1"
"@abp/bootstrap" "~9.2.1"
"@abp/bootstrap-datepicker" "~9.2.1"
"@abp/bootstrap-daterangepicker" "~9.2.1"
"@abp/datatables.net-bs5" "~9.2.1"
"@abp/font-awesome" "~9.2.1"
"@abp/jquery-form" "~9.2.1"
"@abp/jquery-validation-unobtrusive" "~9.2.1"
"@abp/lodash" "~9.2.1"
"@abp/luxon" "~9.2.1"
"@abp/malihu-custom-scrollbar-plugin" "~9.2.1"
"@abp/moment" "~9.2.1"
"@abp/select2" "~9.2.1"
"@abp/sweetalert2" "~9.2.1"
"@abp/timeago" "~9.2.1"
"@abp/aspnetcore.mvc.ui@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-9.2.1.tgz#8b30f830d85f7e1f4a386b0ef8d0444e2550bc42"
integrity sha512-0C41JpevGynbyHGeKkqLUSVNK64QETsKVyVWY4fSZkChGHlD09Fn3qIlHJInpBqJ9qNYs5VQ7RRP02PSum9mAg==
"@abp/aspnetcore.mvc.ui.theme.basic@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-9.2.2.tgz#4d18dca3945daa42e94966314ceaa83b57ad573e"
integrity sha512-9kUxDDeQ/8o1ZiudA00o+riaa4M3pgrVmdj/6UY5lZZ+GMq3uR2hRBsbSNYlPBI73if3cwPWKuKE/Sv0qLcs+A==
dependencies:
"@abp/aspnetcore.mvc.ui.theme.shared" "~9.2.2"
"@abp/aspnetcore.mvc.ui.theme.shared@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-9.2.2.tgz#f852a8f3aa66b638378db798c03679122b4ba5a5"
integrity sha512-yP3JCJ2mcmhVIDEL9/hispM07FowSYr/VvM6ohv1daMQfyLmciIXyQPgoQwhHEWXifJvytKhbQauDxW3B3L7lw==
dependencies:
"@abp/aspnetcore.mvc.ui" "~9.2.2"
"@abp/bootstrap" "~9.2.2"
"@abp/bootstrap-datepicker" "~9.2.2"
"@abp/bootstrap-daterangepicker" "~9.2.2"
"@abp/datatables.net-bs5" "~9.2.2"
"@abp/font-awesome" "~9.2.2"
"@abp/jquery-form" "~9.2.2"
"@abp/jquery-validation-unobtrusive" "~9.2.2"
"@abp/lodash" "~9.2.2"
"@abp/luxon" "~9.2.2"
"@abp/malihu-custom-scrollbar-plugin" "~9.2.2"
"@abp/moment" "~9.2.2"
"@abp/select2" "~9.2.2"
"@abp/sweetalert2" "~9.2.2"
"@abp/timeago" "~9.2.2"
"@abp/aspnetcore.mvc.ui@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-9.2.2.tgz#0349556ce125bf83e88ce8384ff1d1e648c9766a"
integrity sha512-Ll24xOpccgIZtnCRKrIj5AygRrV0fBCVqKvR16VwiWwMPd86N60Vflb9LyU7lx9/1sFMp/ONbGojxDy/tG9aBQ==
dependencies:
ansi-colors "^4.1.3"
"@abp/blogging@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/blogging/-/blogging-9.2.1.tgz#194c833a2f54e0ec2f761ba375d12684aef03b33"
integrity sha512-nxxC0oSVkAqQ23q//LFLoJllbP5Vn4aR0ao9Snf6FDZ3mekG9KerNV5mT2bVJSEgqxBQG+ReP/kO1F/lkjQA/w==
"@abp/blogging@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/blogging/-/blogging-9.2.2.tgz#e0feb54e275785c05f76e094e6edbe9847546666"
integrity sha512-oPnh1EORTAvbJDf3HkLA/moeb0L3rwmy5JnPlXGcmDfV1IXQHVeJ+vtLa5624HU0Z+ZX4npy7wyOL5jUtAHLog==
dependencies:
"@abp/aspnetcore.mvc.ui.theme.shared" "~9.2.1"
"@abp/owl.carousel" "~9.2.1"
"@abp/prismjs" "~9.2.1"
"@abp/tui-editor" "~9.2.1"
"@abp/aspnetcore.mvc.ui.theme.shared" "~9.2.2"
"@abp/owl.carousel" "~9.2.2"
"@abp/prismjs" "~9.2.2"
"@abp/tui-editor" "~9.2.2"
"@abp/bootstrap-datepicker@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-9.2.1.tgz#373c8715d175ca23a8871bacdb5f017b070254aa"
integrity sha512-uaCpz5EDSZYDacjnYoqTiktTDFGnGJPEHYh5eG4BORlQta53Hvak7m2CkRVjdOaXtuPLi6EbWPSh2bHIfhKRyQ==
"@abp/bootstrap-datepicker@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-9.2.2.tgz#75aefaa4a2f0b322012599d92caa5c7a0b88cd67"
integrity sha512-6ogV4COwnGmAznEOG64qQUfoyYvmMvoi4fwAqOcKrNjWUcVFUa+wL+fbVDf9tbYT3SkeoNG5sD0JN7xj43V5cg==
dependencies:
bootstrap-datepicker "^1.10.0"
"@abp/bootstrap-daterangepicker@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-9.2.1.tgz#b49e17a4753b09d49bfad6774a7f185e7e5bf71c"
integrity sha512-kd6LEACfx7CBIQOAiE/RHFp/WnthE2iz/eivl3fwuz1VgAO0CBIQ7hYoX91GaAIQgt+OAcgGbOl2G6E284EM9Q==
"@abp/bootstrap-daterangepicker@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-9.2.2.tgz#5493d00116aa29404873ff551aa86f2605bb19f2"
integrity sha512-/JYaSj/LLaVYaeqihVS8jZb0K7J40SLakwVCFXwFhAB+/MSfgdGmzJxdf8nv/2GYlIZtG1Bv2gaQ8kHjd+M7DA==
dependencies:
bootstrap-daterangepicker "^3.1.0"
"@abp/bootstrap@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-9.2.1.tgz#ddf624e95f1dab4a8fce8d20b6dccd2b3d3f1679"
integrity sha512-NghAVP7M/Y2y9GYDu7IWo8oW7EyJEO+1NnPqCudpjWX4C6B27d7ghJ7I0MfrHoRq9/hBJZ07AKf3KMAZQD99ng==
"@abp/bootstrap@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-9.2.2.tgz#80a7e43c3629ca9db3bedd6fb28b69f5e4d90685"
integrity sha512-1PI1sRzLy1aWcv+JO8mYl5/sRfbUq2pXAwWcRb80axJSOfb36Uhw+yURRcEaaw7bAtNN7qLvf0EBKS9Rh3iTrQ==
dependencies:
"@abp/core" "~9.2.1"
"@abp/core" "~9.2.2"
bootstrap "^5.3.3"
"@abp/clipboard@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-9.2.1.tgz#03ca342381e55b8348612a6b7d4f60d431e8dee8"
integrity sha512-8iedZdgBm7j7adC+2oY1fJF1K2CHU8lz5KmCPgGcLzB2ch59ASH2GdyeTtN3Us3TxOCm6uIRkIRzKs53gVvIaA==
"@abp/clipboard@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-9.2.2.tgz#dffa57695f5b92fdbed73fdcc234a12efe179da0"
integrity sha512-D3bgyYy1d8PdeO7FU/IieeMGYeYFpW/A3A8zimbAzk1zJAVXW54uhq20Bx+vqa8aoXQRdk660riSm/c5rdc6Hw==
dependencies:
"@abp/core" "~9.2.1"
"@abp/core" "~9.2.2"
clipboard "^2.0.11"
"@abp/core@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/core/-/core-9.2.1.tgz#f7c635f1fe88fc3fbbc4accaa6aee2dc3b5631a7"
integrity sha512-onCzS2w+U+wBv5FRDCVE176AiyZDMm1D5GaqiEnpuAwsBncFpFyZedC95dtPmykagJbpOvHVSPOLyZ2jzGjcYg==
"@abp/core@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/core/-/core-9.2.2.tgz#d1fc363ddb26b4118e14d277f32a26247be4d430"
integrity sha512-YR5XPW0JED/hca8aGiWd73pR6u93Gs6IfklpU0DnSrOFTm2FnoNAryPujGUyGl0ZJM8G7Rt0xwQyAKV6PAqsXg==
dependencies:
"@abp/utils" "~9.2.1"
"@abp/utils" "~9.2.2"
"@abp/datatables.net-bs5@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-9.2.1.tgz#ff69059e96d5341166fa8d08390e9bb352010e5d"
integrity sha512-NEkf8xWTIYFDs9lAAPs0hOL2UD+pnVwyix/9IAtip3BIkyPFpLCniNWbu1WhuNJpfmLHrWPSqIrouR80gGL7PQ==
"@abp/datatables.net-bs5@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-9.2.2.tgz#197f99726c3bcaefaefdb9c91d07b50052340871"
integrity sha512-BVWCOrPx7B3JMnxZ/ZatSfv2NRRWQXhL85DFkKE92k5+ZE+Fzx2noa3SgwAsuVXmg8Q7zVg5xRM4w7hDwBW8Bw==
dependencies:
"@abp/datatables.net" "~9.2.1"
"@abp/datatables.net" "~9.2.2"
datatables.net-bs5 "^2.1.8"
"@abp/datatables.net@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-9.2.1.tgz#0a5ab74ca44cd785efb487f0447e8acdea9d7aa1"
integrity sha512-A9TSPRNUV0eeCPnpGV9Htu9ZylUf3e03smYcbEROQHe+htwhcEV5dz8SLAI90baPi2g7VnyPav/3efaqo+ETdg==
"@abp/datatables.net@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-9.2.2.tgz#334104f11d2da98df4afaf03b53a2cd504c7068f"
integrity sha512-2tJxpmsh5zaVpbz0TWwpd+cdS1auwpURRfbNZ6xDM8cL/FS2dTBv8RGBIsKU0xltdfzKmtSd/Uh0xVjJjkNN2Q==
dependencies:
"@abp/jquery" "~9.2.1"
"@abp/jquery" "~9.2.2"
datatables.net "^2.1.8"
"@abp/font-awesome@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-9.2.1.tgz#a387f1cf457bdb6e3cd30bd9f4c455a41f8ca0b1"
integrity sha512-RVo3422BItdAAmafSCH/mT1Ux8q6yUz7nswGep4beP1k1VfmFExj1mgVphIpAlH3DWyzfnwUOq7lLWf/Ul2dOA==
"@abp/font-awesome@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-9.2.2.tgz#f978cd07eb8175f73e252c345a9765cdf35b4d3d"
integrity sha512-Zoc5HoqFqltc4/nudGFhL/Mr0UtMP15BjzLqbMJX0XFjHVzAg9oIGeC/kWFqUPWrQ+M5xGLm4kznNuyzee7Dnw==
dependencies:
"@abp/core" "~9.2.1"
"@abp/core" "~9.2.2"
"@fortawesome/fontawesome-free" "^6.6.0"
"@abp/jquery-form@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-9.2.1.tgz#727b391c36e8ff46b62cb01be14715a05fe74b4f"
integrity sha512-n6EpUNNRzilOzP5rYTWr9K2mPQbvBQAuxPiwUZpfwf+QpJrs+NppJMaC06HFbHcSkDDy/utd+P1/sqWaJjL/tw==
"@abp/jquery-form@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-9.2.2.tgz#f958f05b66e63bc7b0fe6ed7bf2c5b25e8e5c244"
integrity sha512-Plo30NgmoZETQvtO2h9UkfXl8dcsdNvG9G0a7AENkj/fszJDP4J5T2U2XkPG4G6wbOg4h8gsmIceV++bCFXfgw==
dependencies:
"@abp/jquery" "~9.2.1"
"@abp/jquery" "~9.2.2"
jquery-form "^4.3.0"
"@abp/jquery-validation-unobtrusive@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-9.2.1.tgz#98215811818e618d96a1dcac6419962fd39c6fef"
integrity sha512-7no3KxRW3agw4EAM5iTvQjE4+m9JrjuMAV20gAU0uVPB2+sHlluEAks0IU9wz76T+Ac7osferUZz33LgdDvIaw==
"@abp/jquery-validation-unobtrusive@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-9.2.2.tgz#6fe634b9032c9e40198f3e0f27cc57afb3266d29"
integrity sha512-VXRNSky8nVtH0NHn189HvwitKPaLzfbYoMEM7QFf1n3mEbkoBp4P43JbuTJdAzyRm5KNPNewMl5HW8EnZB0krQ==
dependencies:
"@abp/jquery-validation" "~9.2.1"
"@abp/jquery-validation" "~9.2.2"
jquery-validation-unobtrusive "^4.0.0"
"@abp/jquery-validation@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-9.2.1.tgz#559c581523e4e098f2bf67627dfe6c7ef0e1c3c1"
integrity sha512-AEGm3agbwr1f5kmXvpBeiDmsS22P88zVr8NJDICGsgBxZofKndXsDFciNZGu6lXF5qXp8AwGRi//QPaCeQsP8g==
"@abp/jquery-validation@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-9.2.2.tgz#50a72f32d1c113e67cf75effefe7f1501d5956bd"
integrity sha512-mHfPYSBkBSxytaJcbRbHtyeojGmiHiW825qFyyIBwr2kCY0s6Jr3zW8rtm3bIu2EB64cITI7kp7yKyJOxgQYlQ==
dependencies:
"@abp/jquery" "~9.2.1"
"@abp/jquery" "~9.2.2"
jquery-validation "^1.21.0"
"@abp/jquery@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-9.2.1.tgz#bbcc9eab9cef528a8163f5062665ffcf2b87c2f0"
integrity sha512-gdDIKMNEpeUdzUu5C/g6j568ytJ7ifaDxBr1NYf2kJ34p7y6rrBmyY+sL+xR3ZlcGgyPGXyFhTLRD7qTjXlkPg==
"@abp/jquery@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-9.2.2.tgz#42c092c1790d03cdc4578d8cbeaa1954cb843cf7"
integrity sha512-NavJF7SToheI+3VQWbZe+5cZVMBDt4hSGzclfB/r2/+YdKerxgggv9tDp6w8PuvnhuxHmZp6MIPelKCFN0B3Tw==
dependencies:
"@abp/core" "~9.2.1"
"@abp/core" "~9.2.2"
jquery "~3.7.1"
"@abp/lodash@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-9.2.1.tgz#a80ab7a908a0332b721277b1193209187fab57d8"
integrity sha512-I2+XYqwMi3+FXCv4xp5hBoJmOszg2WR1gnGc+Qd0zwb2VAbG4MvKVFgM/GUAFD8EKlquGyPf3f+4l5FkaPFkrQ==
"@abp/lodash@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-9.2.2.tgz#41ec734ec769f22f5bebcea0b783d2b47ccb6d9a"
integrity sha512-0uvG9hGBwp0hg5sgh0NC3URIPAD0sSfVgMN39wFJdfA+snrd4fb9TqRhZ+ntvK7iGdCEx6iIHGIgOTTzkpBB6Q==
dependencies:
"@abp/core" "~9.2.1"
"@abp/core" "~9.2.2"
lodash "^4.17.21"
"@abp/luxon@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-9.2.1.tgz#7e3d197425813cfc6932cd3f9f09f97ecd2f4fc7"
integrity sha512-2tyOZRmq9jQN0Uhg8WaHfEzL0Xeew04sbA8O9bqw28psRbXaWXEVdElRMBNt50sZkFPhHFoxxFN7PR8obs0Qug==
"@abp/luxon@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-9.2.2.tgz#553d69dc8291a1e53b5760dacf6a9067f0e54862"
integrity sha512-3J4Ch4lteckGD5n9tm5qqDydxASAD22z8z86/wfKR91y+JlXRMFTki6vU8vVnDzW4jVN+i+pUj2tg9Ov2buikQ==
dependencies:
"@abp/core" "~9.2.1"
"@abp/core" "~9.2.2"
luxon "^3.5.0"
"@abp/malihu-custom-scrollbar-plugin@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-9.2.1.tgz#b0fa249885d442ba84657c7705df73851cb56db1"
integrity sha512-fzgQZsbN0xLMxEWh7znKAI4j0CPb8ciT/3x+QguGZDJf7OFw0YnEWctfEYJnnGG28HpHs1mh64gjqoeceHy0HQ==
"@abp/malihu-custom-scrollbar-plugin@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-9.2.2.tgz#97af3474245425b531200a4970c2e4f110a84deb"
integrity sha512-siudEyOumlFV/94CABziPHWVg/C4+QjZdEqzsClPCQg+73PFNIiSwKLR7IyeBOHd+1Nf6sqNeOOmWpcGgGFe2g==
dependencies:
"@abp/core" "~9.2.1"
"@abp/core" "~9.2.2"
malihu-custom-scrollbar-plugin "^3.1.5"
"@abp/moment@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-9.2.1.tgz#9982c65d63171962091b08fc4e0d1ea98cc1f0eb"
integrity sha512-V4KH1WmahP0BoaQGLEY4a0AQyfk1cLeNMk3qCPtuqIUbOFwimJY3oQgpelilEwjI3oD/upMzGphjLGrfQLRM2A==
"@abp/moment@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-9.2.2.tgz#4c6d1752705678a23044aabb1316537e3edfc54c"
integrity sha512-xi07p1rj673qAtLwnSAmY/7DE5YfnAMvVRD8O0g+NrXiGbC1Zfv0iwhaXKTOzmUF8R+cVD/Ca3hEajqs8jHF0w==
dependencies:
moment "^2.30.1"
"@abp/owl.carousel@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/owl.carousel/-/owl.carousel-9.2.1.tgz#e9d5387419a698330bf8b303b2e34445afdbd47c"
integrity sha512-LjI2/LsStow7/0eXGkvjn7WUQs69NilUsE6mnpPzMILI7hc1TLXtrWP4XRS3+4ZWsVMGXUa8pGXQGtGTsHXF0w==
"@abp/owl.carousel@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/owl.carousel/-/owl.carousel-9.2.2.tgz#4f9b43ec16298bcbe75883437af50dcc3e8de393"
integrity sha512-jChHZRn/eGARJOVbKxlDKNpqySaccyC99xv0Ui7kp2KMgdr+kpKK0PnTom/8kBXvZhToArN8oidQfO8c+ur49A==
dependencies:
"@abp/core" "~9.2.1"
"@abp/core" "~9.2.2"
owl.carousel "^2.3.4"
"@abp/prismjs@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-9.2.1.tgz#d204983b3b7b31529675904db46ed896f686b863"
integrity sha512-uvwAZXPJOa827fRfuqAJdhLhg1zxN9wKe9OD0S7NqyO+giu4UFAgMxrdddQ3QgUlbPOCIxPYE65fNvBByfFrdg==
"@abp/prismjs@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-9.2.2.tgz#fea1da8a4cd56fc0540f46e4bb97dc25f8b8617e"
integrity sha512-6gvZiq1j+Q1YmWuNnenQdEWeE/zQs9ZTGLJhXCI/V3MBtzd15NbmR3Bxg/8IFaikgpDyunJwKv9cEU8XKskR5Q==
dependencies:
"@abp/clipboard" "~9.2.1"
"@abp/core" "~9.2.1"
"@abp/clipboard" "~9.2.2"
"@abp/core" "~9.2.2"
prismjs "^1.29.0"
"@abp/select2@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-9.2.1.tgz#5c3c6a4b0018b533491d6a46540069782559c57a"
integrity sha512-p743cnoohNLKX11ptnBcN5z9+ZyC11M9mwRR6SWbW5f1Eqvbkq03bf2mDFUfukCNis4RefeURZunPlsBOmRn/A==
"@abp/select2@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-9.2.2.tgz#af5a9b7411be257f57b192fe2cabaa4915fa3b78"
integrity sha512-UvEPO0KPXFdj4qUw1zkSu0z4/gj+54OpPBQuSLZmErXt8Mswz/XWdNZ5SqEpJdMzeHLWmFuGndo5J5EeJ+u29A==
dependencies:
"@abp/core" "~9.2.1"
"@abp/core" "~9.2.2"
select2 "^4.0.13"
"@abp/sweetalert2@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-9.2.1.tgz#3db7e33855614460d2fdc5e3f8b65530902fcd9a"
integrity sha512-fJYLVxc5pAJoSLIcQYf5xRkPVnVQi/5+xwTgOePy3QeygOrAMpGS7vy+MIq7Mn+tBoEFlQ/Jn+NoB04AIYYPFw==
"@abp/sweetalert2@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-9.2.2.tgz#d82e4363d7b9ff7b372b6b7f7db3da85a35b8d3e"
integrity sha512-/+xSR+6T6cJqurJz7AgtuJj0V9TjkQiVNuN8CpZYHUjiRHIclkeGIAk7xZOH2/I/q9Ijy6cAwcx23vSP1aj00Q==
dependencies:
"@abp/core" "~9.2.1"
"@abp/core" "~9.2.2"
sweetalert2 "^11.14.1"
"@abp/timeago@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-9.2.1.tgz#6904e2d7bda57b436e3385c5fd1899b9cd806dd8"
integrity sha512-fmsPuBouWR/BvhXN53yJpg1Se06uIL7ox8XOgx1MHCe+1vxbXnFCtM2VujfowWtOSTJOzbL1DHcDpFE7JlkOag==
"@abp/timeago@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-9.2.2.tgz#688ff285031e473831d780ae9f046e902f11538f"
integrity sha512-aWLlp8/ZYsqzyBF2OjlBhZoIKTNskuwSyNeH2YG6SPeNpvisDn7UN3aeThrBSmDWjKOksYFlHNW9Zmg8DC3wYw==
dependencies:
"@abp/jquery" "~9.2.1"
"@abp/jquery" "~9.2.2"
timeago "^1.6.7"
"@abp/tui-editor@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/tui-editor/-/tui-editor-9.2.1.tgz#7ddee18eccd1346a93c5995edbca51f4a95f0260"
integrity sha512-RS86YdOdzBTPSmGQRqHxvsyQYiL9/rtZM5/+qVK8rqU5VwyydxGyWNa/6KcCcKui4P4YiGIZ98x0KQ4fT6t0BQ==
"@abp/tui-editor@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/tui-editor/-/tui-editor-9.2.2.tgz#333e796b0dfec3cf7b743faefe736124f48fcd5e"
integrity sha512-oQ1GBseLsQz924BdomAM8okUUM8SujVxahXoZn36azsvb6naR7E3iI5fhneeqrcJaCricslQd0RIafbYFbl/Ww==
dependencies:
"@abp/jquery" "~9.2.1"
"@abp/prismjs" "~9.2.1"
"@abp/jquery" "~9.2.2"
"@abp/prismjs" "~9.2.2"
"@abp/utils@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-9.2.1.tgz#803fd48927ae332309f8a7005806c6aa6e499750"
integrity sha512-+j0SNB/K2j2xTTijy/qCL3ds2c/7OW4nrJ8Ccq17WtEqP+jk2TtJi0EnLqhNTDih0A++XV+pcftUC+cQ0h1cUw==
"@abp/utils@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-9.2.2.tgz#27873c943b29fee5f31b893cdd6f7d4c21b21913"
integrity sha512-dHztqg4w4CgYwBecutG59dkQk3S6WoivZ7swS16C6sV3KO2chEiVjMKU36pw0XndAUtIzd0UiD5IFF6rkBuvJA==
dependencies:
just-compare "^2.3.0"

2
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": "~9.2.1"
"@abp/aspnetcore.mvc.ui.theme.basic": "~9.2.2"
}
}

240
modules/client-simulation/demo/Volo.ClientSimulation.Demo/yarn.lock

@ -2,185 +2,185 @@
# yarn lockfile v1
"@abp/aspnetcore.mvc.ui.theme.basic@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-9.2.1.tgz#2380cf2ecebbe8e6250c51290df88a1015b2ad81"
integrity sha512-Wmn4+siWFPxoQmjo3R6wt0PRqeaaIsN6WM5vrWWB+RvTBXdCyitlQKEWtOudnr95WDwwWC+BZThS75gImjCtLw==
"@abp/aspnetcore.mvc.ui.theme.basic@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-9.2.2.tgz#4d18dca3945daa42e94966314ceaa83b57ad573e"
integrity sha512-9kUxDDeQ/8o1ZiudA00o+riaa4M3pgrVmdj/6UY5lZZ+GMq3uR2hRBsbSNYlPBI73if3cwPWKuKE/Sv0qLcs+A==
dependencies:
"@abp/aspnetcore.mvc.ui.theme.shared" "~9.2.1"
"@abp/aspnetcore.mvc.ui.theme.shared" "~9.2.2"
"@abp/aspnetcore.mvc.ui.theme.shared@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-9.2.1.tgz#35f6de6f106c80592ce70d36b6e8b20c64862803"
integrity sha512-kZz1tgUguGHxwG1MRkbkeXn9sIjbCOHJcBU+w+XuWwCqigM2yaE+KgnASDcjCrjQiPu6i73hf9OwtxXY1UbGMQ==
"@abp/aspnetcore.mvc.ui.theme.shared@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-9.2.2.tgz#f852a8f3aa66b638378db798c03679122b4ba5a5"
integrity sha512-yP3JCJ2mcmhVIDEL9/hispM07FowSYr/VvM6ohv1daMQfyLmciIXyQPgoQwhHEWXifJvytKhbQauDxW3B3L7lw==
dependencies:
"@abp/aspnetcore.mvc.ui" "~9.2.1"
"@abp/bootstrap" "~9.2.1"
"@abp/bootstrap-datepicker" "~9.2.1"
"@abp/bootstrap-daterangepicker" "~9.2.1"
"@abp/datatables.net-bs5" "~9.2.1"
"@abp/font-awesome" "~9.2.1"
"@abp/jquery-form" "~9.2.1"
"@abp/jquery-validation-unobtrusive" "~9.2.1"
"@abp/lodash" "~9.2.1"
"@abp/luxon" "~9.2.1"
"@abp/malihu-custom-scrollbar-plugin" "~9.2.1"
"@abp/moment" "~9.2.1"
"@abp/select2" "~9.2.1"
"@abp/sweetalert2" "~9.2.1"
"@abp/timeago" "~9.2.1"
"@abp/aspnetcore.mvc.ui@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-9.2.1.tgz#8b30f830d85f7e1f4a386b0ef8d0444e2550bc42"
integrity sha512-0C41JpevGynbyHGeKkqLUSVNK64QETsKVyVWY4fSZkChGHlD09Fn3qIlHJInpBqJ9qNYs5VQ7RRP02PSum9mAg==
"@abp/aspnetcore.mvc.ui" "~9.2.2"
"@abp/bootstrap" "~9.2.2"
"@abp/bootstrap-datepicker" "~9.2.2"
"@abp/bootstrap-daterangepicker" "~9.2.2"
"@abp/datatables.net-bs5" "~9.2.2"
"@abp/font-awesome" "~9.2.2"
"@abp/jquery-form" "~9.2.2"
"@abp/jquery-validation-unobtrusive" "~9.2.2"
"@abp/lodash" "~9.2.2"
"@abp/luxon" "~9.2.2"
"@abp/malihu-custom-scrollbar-plugin" "~9.2.2"
"@abp/moment" "~9.2.2"
"@abp/select2" "~9.2.2"
"@abp/sweetalert2" "~9.2.2"
"@abp/timeago" "~9.2.2"
"@abp/aspnetcore.mvc.ui@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-9.2.2.tgz#0349556ce125bf83e88ce8384ff1d1e648c9766a"
integrity sha512-Ll24xOpccgIZtnCRKrIj5AygRrV0fBCVqKvR16VwiWwMPd86N60Vflb9LyU7lx9/1sFMp/ONbGojxDy/tG9aBQ==
dependencies:
ansi-colors "^4.1.3"
"@abp/bootstrap-datepicker@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-9.2.1.tgz#373c8715d175ca23a8871bacdb5f017b070254aa"
integrity sha512-uaCpz5EDSZYDacjnYoqTiktTDFGnGJPEHYh5eG4BORlQta53Hvak7m2CkRVjdOaXtuPLi6EbWPSh2bHIfhKRyQ==
"@abp/bootstrap-datepicker@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-9.2.2.tgz#75aefaa4a2f0b322012599d92caa5c7a0b88cd67"
integrity sha512-6ogV4COwnGmAznEOG64qQUfoyYvmMvoi4fwAqOcKrNjWUcVFUa+wL+fbVDf9tbYT3SkeoNG5sD0JN7xj43V5cg==
dependencies:
bootstrap-datepicker "^1.10.0"
"@abp/bootstrap-daterangepicker@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-9.2.1.tgz#b49e17a4753b09d49bfad6774a7f185e7e5bf71c"
integrity sha512-kd6LEACfx7CBIQOAiE/RHFp/WnthE2iz/eivl3fwuz1VgAO0CBIQ7hYoX91GaAIQgt+OAcgGbOl2G6E284EM9Q==
"@abp/bootstrap-daterangepicker@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-9.2.2.tgz#5493d00116aa29404873ff551aa86f2605bb19f2"
integrity sha512-/JYaSj/LLaVYaeqihVS8jZb0K7J40SLakwVCFXwFhAB+/MSfgdGmzJxdf8nv/2GYlIZtG1Bv2gaQ8kHjd+M7DA==
dependencies:
bootstrap-daterangepicker "^3.1.0"
"@abp/bootstrap@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-9.2.1.tgz#ddf624e95f1dab4a8fce8d20b6dccd2b3d3f1679"
integrity sha512-NghAVP7M/Y2y9GYDu7IWo8oW7EyJEO+1NnPqCudpjWX4C6B27d7ghJ7I0MfrHoRq9/hBJZ07AKf3KMAZQD99ng==
"@abp/bootstrap@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-9.2.2.tgz#80a7e43c3629ca9db3bedd6fb28b69f5e4d90685"
integrity sha512-1PI1sRzLy1aWcv+JO8mYl5/sRfbUq2pXAwWcRb80axJSOfb36Uhw+yURRcEaaw7bAtNN7qLvf0EBKS9Rh3iTrQ==
dependencies:
"@abp/core" "~9.2.1"
"@abp/core" "~9.2.2"
bootstrap "^5.3.3"
"@abp/core@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/core/-/core-9.2.1.tgz#f7c635f1fe88fc3fbbc4accaa6aee2dc3b5631a7"
integrity sha512-onCzS2w+U+wBv5FRDCVE176AiyZDMm1D5GaqiEnpuAwsBncFpFyZedC95dtPmykagJbpOvHVSPOLyZ2jzGjcYg==
"@abp/core@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/core/-/core-9.2.2.tgz#d1fc363ddb26b4118e14d277f32a26247be4d430"
integrity sha512-YR5XPW0JED/hca8aGiWd73pR6u93Gs6IfklpU0DnSrOFTm2FnoNAryPujGUyGl0ZJM8G7Rt0xwQyAKV6PAqsXg==
dependencies:
"@abp/utils" "~9.2.1"
"@abp/utils" "~9.2.2"
"@abp/datatables.net-bs5@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-9.2.1.tgz#ff69059e96d5341166fa8d08390e9bb352010e5d"
integrity sha512-NEkf8xWTIYFDs9lAAPs0hOL2UD+pnVwyix/9IAtip3BIkyPFpLCniNWbu1WhuNJpfmLHrWPSqIrouR80gGL7PQ==
"@abp/datatables.net-bs5@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-9.2.2.tgz#197f99726c3bcaefaefdb9c91d07b50052340871"
integrity sha512-BVWCOrPx7B3JMnxZ/ZatSfv2NRRWQXhL85DFkKE92k5+ZE+Fzx2noa3SgwAsuVXmg8Q7zVg5xRM4w7hDwBW8Bw==
dependencies:
"@abp/datatables.net" "~9.2.1"
"@abp/datatables.net" "~9.2.2"
datatables.net-bs5 "^2.1.8"
"@abp/datatables.net@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-9.2.1.tgz#0a5ab74ca44cd785efb487f0447e8acdea9d7aa1"
integrity sha512-A9TSPRNUV0eeCPnpGV9Htu9ZylUf3e03smYcbEROQHe+htwhcEV5dz8SLAI90baPi2g7VnyPav/3efaqo+ETdg==
"@abp/datatables.net@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-9.2.2.tgz#334104f11d2da98df4afaf03b53a2cd504c7068f"
integrity sha512-2tJxpmsh5zaVpbz0TWwpd+cdS1auwpURRfbNZ6xDM8cL/FS2dTBv8RGBIsKU0xltdfzKmtSd/Uh0xVjJjkNN2Q==
dependencies:
"@abp/jquery" "~9.2.1"
"@abp/jquery" "~9.2.2"
datatables.net "^2.1.8"
"@abp/font-awesome@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-9.2.1.tgz#a387f1cf457bdb6e3cd30bd9f4c455a41f8ca0b1"
integrity sha512-RVo3422BItdAAmafSCH/mT1Ux8q6yUz7nswGep4beP1k1VfmFExj1mgVphIpAlH3DWyzfnwUOq7lLWf/Ul2dOA==
"@abp/font-awesome@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-9.2.2.tgz#f978cd07eb8175f73e252c345a9765cdf35b4d3d"
integrity sha512-Zoc5HoqFqltc4/nudGFhL/Mr0UtMP15BjzLqbMJX0XFjHVzAg9oIGeC/kWFqUPWrQ+M5xGLm4kznNuyzee7Dnw==
dependencies:
"@abp/core" "~9.2.1"
"@abp/core" "~9.2.2"
"@fortawesome/fontawesome-free" "^6.6.0"
"@abp/jquery-form@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-9.2.1.tgz#727b391c36e8ff46b62cb01be14715a05fe74b4f"
integrity sha512-n6EpUNNRzilOzP5rYTWr9K2mPQbvBQAuxPiwUZpfwf+QpJrs+NppJMaC06HFbHcSkDDy/utd+P1/sqWaJjL/tw==
"@abp/jquery-form@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-9.2.2.tgz#f958f05b66e63bc7b0fe6ed7bf2c5b25e8e5c244"
integrity sha512-Plo30NgmoZETQvtO2h9UkfXl8dcsdNvG9G0a7AENkj/fszJDP4J5T2U2XkPG4G6wbOg4h8gsmIceV++bCFXfgw==
dependencies:
"@abp/jquery" "~9.2.1"
"@abp/jquery" "~9.2.2"
jquery-form "^4.3.0"
"@abp/jquery-validation-unobtrusive@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-9.2.1.tgz#98215811818e618d96a1dcac6419962fd39c6fef"
integrity sha512-7no3KxRW3agw4EAM5iTvQjE4+m9JrjuMAV20gAU0uVPB2+sHlluEAks0IU9wz76T+Ac7osferUZz33LgdDvIaw==
"@abp/jquery-validation-unobtrusive@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-9.2.2.tgz#6fe634b9032c9e40198f3e0f27cc57afb3266d29"
integrity sha512-VXRNSky8nVtH0NHn189HvwitKPaLzfbYoMEM7QFf1n3mEbkoBp4P43JbuTJdAzyRm5KNPNewMl5HW8EnZB0krQ==
dependencies:
"@abp/jquery-validation" "~9.2.1"
"@abp/jquery-validation" "~9.2.2"
jquery-validation-unobtrusive "^4.0.0"
"@abp/jquery-validation@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-9.2.1.tgz#559c581523e4e098f2bf67627dfe6c7ef0e1c3c1"
integrity sha512-AEGm3agbwr1f5kmXvpBeiDmsS22P88zVr8NJDICGsgBxZofKndXsDFciNZGu6lXF5qXp8AwGRi//QPaCeQsP8g==
"@abp/jquery-validation@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-9.2.2.tgz#50a72f32d1c113e67cf75effefe7f1501d5956bd"
integrity sha512-mHfPYSBkBSxytaJcbRbHtyeojGmiHiW825qFyyIBwr2kCY0s6Jr3zW8rtm3bIu2EB64cITI7kp7yKyJOxgQYlQ==
dependencies:
"@abp/jquery" "~9.2.1"
"@abp/jquery" "~9.2.2"
jquery-validation "^1.21.0"
"@abp/jquery@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-9.2.1.tgz#bbcc9eab9cef528a8163f5062665ffcf2b87c2f0"
integrity sha512-gdDIKMNEpeUdzUu5C/g6j568ytJ7ifaDxBr1NYf2kJ34p7y6rrBmyY+sL+xR3ZlcGgyPGXyFhTLRD7qTjXlkPg==
"@abp/jquery@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-9.2.2.tgz#42c092c1790d03cdc4578d8cbeaa1954cb843cf7"
integrity sha512-NavJF7SToheI+3VQWbZe+5cZVMBDt4hSGzclfB/r2/+YdKerxgggv9tDp6w8PuvnhuxHmZp6MIPelKCFN0B3Tw==
dependencies:
"@abp/core" "~9.2.1"
"@abp/core" "~9.2.2"
jquery "~3.7.1"
"@abp/lodash@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-9.2.1.tgz#a80ab7a908a0332b721277b1193209187fab57d8"
integrity sha512-I2+XYqwMi3+FXCv4xp5hBoJmOszg2WR1gnGc+Qd0zwb2VAbG4MvKVFgM/GUAFD8EKlquGyPf3f+4l5FkaPFkrQ==
"@abp/lodash@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-9.2.2.tgz#41ec734ec769f22f5bebcea0b783d2b47ccb6d9a"
integrity sha512-0uvG9hGBwp0hg5sgh0NC3URIPAD0sSfVgMN39wFJdfA+snrd4fb9TqRhZ+ntvK7iGdCEx6iIHGIgOTTzkpBB6Q==
dependencies:
"@abp/core" "~9.2.1"
"@abp/core" "~9.2.2"
lodash "^4.17.21"
"@abp/luxon@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-9.2.1.tgz#7e3d197425813cfc6932cd3f9f09f97ecd2f4fc7"
integrity sha512-2tyOZRmq9jQN0Uhg8WaHfEzL0Xeew04sbA8O9bqw28psRbXaWXEVdElRMBNt50sZkFPhHFoxxFN7PR8obs0Qug==
"@abp/luxon@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-9.2.2.tgz#553d69dc8291a1e53b5760dacf6a9067f0e54862"
integrity sha512-3J4Ch4lteckGD5n9tm5qqDydxASAD22z8z86/wfKR91y+JlXRMFTki6vU8vVnDzW4jVN+i+pUj2tg9Ov2buikQ==
dependencies:
"@abp/core" "~9.2.1"
"@abp/core" "~9.2.2"
luxon "^3.5.0"
"@abp/malihu-custom-scrollbar-plugin@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-9.2.1.tgz#b0fa249885d442ba84657c7705df73851cb56db1"
integrity sha512-fzgQZsbN0xLMxEWh7znKAI4j0CPb8ciT/3x+QguGZDJf7OFw0YnEWctfEYJnnGG28HpHs1mh64gjqoeceHy0HQ==
"@abp/malihu-custom-scrollbar-plugin@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-9.2.2.tgz#97af3474245425b531200a4970c2e4f110a84deb"
integrity sha512-siudEyOumlFV/94CABziPHWVg/C4+QjZdEqzsClPCQg+73PFNIiSwKLR7IyeBOHd+1Nf6sqNeOOmWpcGgGFe2g==
dependencies:
"@abp/core" "~9.2.1"
"@abp/core" "~9.2.2"
malihu-custom-scrollbar-plugin "^3.1.5"
"@abp/moment@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-9.2.1.tgz#9982c65d63171962091b08fc4e0d1ea98cc1f0eb"
integrity sha512-V4KH1WmahP0BoaQGLEY4a0AQyfk1cLeNMk3qCPtuqIUbOFwimJY3oQgpelilEwjI3oD/upMzGphjLGrfQLRM2A==
"@abp/moment@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-9.2.2.tgz#4c6d1752705678a23044aabb1316537e3edfc54c"
integrity sha512-xi07p1rj673qAtLwnSAmY/7DE5YfnAMvVRD8O0g+NrXiGbC1Zfv0iwhaXKTOzmUF8R+cVD/Ca3hEajqs8jHF0w==
dependencies:
moment "^2.30.1"
"@abp/select2@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-9.2.1.tgz#5c3c6a4b0018b533491d6a46540069782559c57a"
integrity sha512-p743cnoohNLKX11ptnBcN5z9+ZyC11M9mwRR6SWbW5f1Eqvbkq03bf2mDFUfukCNis4RefeURZunPlsBOmRn/A==
"@abp/select2@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-9.2.2.tgz#af5a9b7411be257f57b192fe2cabaa4915fa3b78"
integrity sha512-UvEPO0KPXFdj4qUw1zkSu0z4/gj+54OpPBQuSLZmErXt8Mswz/XWdNZ5SqEpJdMzeHLWmFuGndo5J5EeJ+u29A==
dependencies:
"@abp/core" "~9.2.1"
"@abp/core" "~9.2.2"
select2 "^4.0.13"
"@abp/sweetalert2@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-9.2.1.tgz#3db7e33855614460d2fdc5e3f8b65530902fcd9a"
integrity sha512-fJYLVxc5pAJoSLIcQYf5xRkPVnVQi/5+xwTgOePy3QeygOrAMpGS7vy+MIq7Mn+tBoEFlQ/Jn+NoB04AIYYPFw==
"@abp/sweetalert2@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-9.2.2.tgz#d82e4363d7b9ff7b372b6b7f7db3da85a35b8d3e"
integrity sha512-/+xSR+6T6cJqurJz7AgtuJj0V9TjkQiVNuN8CpZYHUjiRHIclkeGIAk7xZOH2/I/q9Ijy6cAwcx23vSP1aj00Q==
dependencies:
"@abp/core" "~9.2.1"
"@abp/core" "~9.2.2"
sweetalert2 "^11.14.1"
"@abp/timeago@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-9.2.1.tgz#6904e2d7bda57b436e3385c5fd1899b9cd806dd8"
integrity sha512-fmsPuBouWR/BvhXN53yJpg1Se06uIL7ox8XOgx1MHCe+1vxbXnFCtM2VujfowWtOSTJOzbL1DHcDpFE7JlkOag==
"@abp/timeago@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-9.2.2.tgz#688ff285031e473831d780ae9f046e902f11538f"
integrity sha512-aWLlp8/ZYsqzyBF2OjlBhZoIKTNskuwSyNeH2YG6SPeNpvisDn7UN3aeThrBSmDWjKOksYFlHNW9Zmg8DC3wYw==
dependencies:
"@abp/jquery" "~9.2.1"
"@abp/jquery" "~9.2.2"
timeago "^1.6.7"
"@abp/utils@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-9.2.1.tgz#803fd48927ae332309f8a7005806c6aa6e499750"
integrity sha512-+j0SNB/K2j2xTTijy/qCL3ds2c/7OW4nrJ8Ccq17WtEqP+jk2TtJi0EnLqhNTDih0A++XV+pcftUC+cQ0h1cUw==
"@abp/utils@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-9.2.2.tgz#27873c943b29fee5f31b893cdd6f7d4c21b21913"
integrity sha512-dHztqg4w4CgYwBecutG59dkQk3S6WoivZ7swS16C6sV3KO2chEiVjMKU36pw0XndAUtIzd0UiD5IFF6rkBuvJA==
dependencies:
just-compare "^2.3.0"

10
modules/cms-kit/angular/package.json

@ -15,11 +15,11 @@
},
"private": true,
"dependencies": {
"@abp/ng.account": "~9.2.1",
"@abp/ng.identity": "~9.2.1",
"@abp/ng.setting-management": "~9.2.1",
"@abp/ng.tenant-management": "~9.2.1",
"@abp/ng.theme.basic": "~9.2.1",
"@abp/ng.account": "~9.2.2",
"@abp/ng.identity": "~9.2.2",
"@abp/ng.setting-management": "~9.2.2",
"@abp/ng.tenant-management": "~9.2.2",
"@abp/ng.theme.basic": "~9.2.2",
"@angular/animations": "~10.0.0",
"@angular/common": "~10.0.0",
"@angular/compiler": "~10.0.0",

4
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": ">=9.2.1",
"@abp/ng.theme.shared": ">=9.2.1"
"@abp/ng.core": ">=9.2.2",
"@abp/ng.theme.shared": ">=9.2.2"
},
"dependencies": {
"tslib": "^2.0.0"

2
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": "~9.2.1"
"@abp/aspnetcore.mvc.ui.theme.basic": "~9.2.2"
}
}

240
modules/cms-kit/host/Volo.CmsKit.IdentityServer/yarn.lock

@ -2,185 +2,185 @@
# yarn lockfile v1
"@abp/aspnetcore.mvc.ui.theme.basic@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-9.2.1.tgz#2380cf2ecebbe8e6250c51290df88a1015b2ad81"
integrity sha512-Wmn4+siWFPxoQmjo3R6wt0PRqeaaIsN6WM5vrWWB+RvTBXdCyitlQKEWtOudnr95WDwwWC+BZThS75gImjCtLw==
"@abp/aspnetcore.mvc.ui.theme.basic@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-9.2.2.tgz#4d18dca3945daa42e94966314ceaa83b57ad573e"
integrity sha512-9kUxDDeQ/8o1ZiudA00o+riaa4M3pgrVmdj/6UY5lZZ+GMq3uR2hRBsbSNYlPBI73if3cwPWKuKE/Sv0qLcs+A==
dependencies:
"@abp/aspnetcore.mvc.ui.theme.shared" "~9.2.1"
"@abp/aspnetcore.mvc.ui.theme.shared" "~9.2.2"
"@abp/aspnetcore.mvc.ui.theme.shared@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-9.2.1.tgz#35f6de6f106c80592ce70d36b6e8b20c64862803"
integrity sha512-kZz1tgUguGHxwG1MRkbkeXn9sIjbCOHJcBU+w+XuWwCqigM2yaE+KgnASDcjCrjQiPu6i73hf9OwtxXY1UbGMQ==
"@abp/aspnetcore.mvc.ui.theme.shared@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-9.2.2.tgz#f852a8f3aa66b638378db798c03679122b4ba5a5"
integrity sha512-yP3JCJ2mcmhVIDEL9/hispM07FowSYr/VvM6ohv1daMQfyLmciIXyQPgoQwhHEWXifJvytKhbQauDxW3B3L7lw==
dependencies:
"@abp/aspnetcore.mvc.ui" "~9.2.1"
"@abp/bootstrap" "~9.2.1"
"@abp/bootstrap-datepicker" "~9.2.1"
"@abp/bootstrap-daterangepicker" "~9.2.1"
"@abp/datatables.net-bs5" "~9.2.1"
"@abp/font-awesome" "~9.2.1"
"@abp/jquery-form" "~9.2.1"
"@abp/jquery-validation-unobtrusive" "~9.2.1"
"@abp/lodash" "~9.2.1"
"@abp/luxon" "~9.2.1"
"@abp/malihu-custom-scrollbar-plugin" "~9.2.1"
"@abp/moment" "~9.2.1"
"@abp/select2" "~9.2.1"
"@abp/sweetalert2" "~9.2.1"
"@abp/timeago" "~9.2.1"
"@abp/aspnetcore.mvc.ui@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-9.2.1.tgz#8b30f830d85f7e1f4a386b0ef8d0444e2550bc42"
integrity sha512-0C41JpevGynbyHGeKkqLUSVNK64QETsKVyVWY4fSZkChGHlD09Fn3qIlHJInpBqJ9qNYs5VQ7RRP02PSum9mAg==
"@abp/aspnetcore.mvc.ui" "~9.2.2"
"@abp/bootstrap" "~9.2.2"
"@abp/bootstrap-datepicker" "~9.2.2"
"@abp/bootstrap-daterangepicker" "~9.2.2"
"@abp/datatables.net-bs5" "~9.2.2"
"@abp/font-awesome" "~9.2.2"
"@abp/jquery-form" "~9.2.2"
"@abp/jquery-validation-unobtrusive" "~9.2.2"
"@abp/lodash" "~9.2.2"
"@abp/luxon" "~9.2.2"
"@abp/malihu-custom-scrollbar-plugin" "~9.2.2"
"@abp/moment" "~9.2.2"
"@abp/select2" "~9.2.2"
"@abp/sweetalert2" "~9.2.2"
"@abp/timeago" "~9.2.2"
"@abp/aspnetcore.mvc.ui@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-9.2.2.tgz#0349556ce125bf83e88ce8384ff1d1e648c9766a"
integrity sha512-Ll24xOpccgIZtnCRKrIj5AygRrV0fBCVqKvR16VwiWwMPd86N60Vflb9LyU7lx9/1sFMp/ONbGojxDy/tG9aBQ==
dependencies:
ansi-colors "^4.1.3"
"@abp/bootstrap-datepicker@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-9.2.1.tgz#373c8715d175ca23a8871bacdb5f017b070254aa"
integrity sha512-uaCpz5EDSZYDacjnYoqTiktTDFGnGJPEHYh5eG4BORlQta53Hvak7m2CkRVjdOaXtuPLi6EbWPSh2bHIfhKRyQ==
"@abp/bootstrap-datepicker@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-9.2.2.tgz#75aefaa4a2f0b322012599d92caa5c7a0b88cd67"
integrity sha512-6ogV4COwnGmAznEOG64qQUfoyYvmMvoi4fwAqOcKrNjWUcVFUa+wL+fbVDf9tbYT3SkeoNG5sD0JN7xj43V5cg==
dependencies:
bootstrap-datepicker "^1.10.0"
"@abp/bootstrap-daterangepicker@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-9.2.1.tgz#b49e17a4753b09d49bfad6774a7f185e7e5bf71c"
integrity sha512-kd6LEACfx7CBIQOAiE/RHFp/WnthE2iz/eivl3fwuz1VgAO0CBIQ7hYoX91GaAIQgt+OAcgGbOl2G6E284EM9Q==
"@abp/bootstrap-daterangepicker@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-9.2.2.tgz#5493d00116aa29404873ff551aa86f2605bb19f2"
integrity sha512-/JYaSj/LLaVYaeqihVS8jZb0K7J40SLakwVCFXwFhAB+/MSfgdGmzJxdf8nv/2GYlIZtG1Bv2gaQ8kHjd+M7DA==
dependencies:
bootstrap-daterangepicker "^3.1.0"
"@abp/bootstrap@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-9.2.1.tgz#ddf624e95f1dab4a8fce8d20b6dccd2b3d3f1679"
integrity sha512-NghAVP7M/Y2y9GYDu7IWo8oW7EyJEO+1NnPqCudpjWX4C6B27d7ghJ7I0MfrHoRq9/hBJZ07AKf3KMAZQD99ng==
"@abp/bootstrap@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-9.2.2.tgz#80a7e43c3629ca9db3bedd6fb28b69f5e4d90685"
integrity sha512-1PI1sRzLy1aWcv+JO8mYl5/sRfbUq2pXAwWcRb80axJSOfb36Uhw+yURRcEaaw7bAtNN7qLvf0EBKS9Rh3iTrQ==
dependencies:
"@abp/core" "~9.2.1"
"@abp/core" "~9.2.2"
bootstrap "^5.3.3"
"@abp/core@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/core/-/core-9.2.1.tgz#f7c635f1fe88fc3fbbc4accaa6aee2dc3b5631a7"
integrity sha512-onCzS2w+U+wBv5FRDCVE176AiyZDMm1D5GaqiEnpuAwsBncFpFyZedC95dtPmykagJbpOvHVSPOLyZ2jzGjcYg==
"@abp/core@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/core/-/core-9.2.2.tgz#d1fc363ddb26b4118e14d277f32a26247be4d430"
integrity sha512-YR5XPW0JED/hca8aGiWd73pR6u93Gs6IfklpU0DnSrOFTm2FnoNAryPujGUyGl0ZJM8G7Rt0xwQyAKV6PAqsXg==
dependencies:
"@abp/utils" "~9.2.1"
"@abp/utils" "~9.2.2"
"@abp/datatables.net-bs5@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-9.2.1.tgz#ff69059e96d5341166fa8d08390e9bb352010e5d"
integrity sha512-NEkf8xWTIYFDs9lAAPs0hOL2UD+pnVwyix/9IAtip3BIkyPFpLCniNWbu1WhuNJpfmLHrWPSqIrouR80gGL7PQ==
"@abp/datatables.net-bs5@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-9.2.2.tgz#197f99726c3bcaefaefdb9c91d07b50052340871"
integrity sha512-BVWCOrPx7B3JMnxZ/ZatSfv2NRRWQXhL85DFkKE92k5+ZE+Fzx2noa3SgwAsuVXmg8Q7zVg5xRM4w7hDwBW8Bw==
dependencies:
"@abp/datatables.net" "~9.2.1"
"@abp/datatables.net" "~9.2.2"
datatables.net-bs5 "^2.1.8"
"@abp/datatables.net@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-9.2.1.tgz#0a5ab74ca44cd785efb487f0447e8acdea9d7aa1"
integrity sha512-A9TSPRNUV0eeCPnpGV9Htu9ZylUf3e03smYcbEROQHe+htwhcEV5dz8SLAI90baPi2g7VnyPav/3efaqo+ETdg==
"@abp/datatables.net@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-9.2.2.tgz#334104f11d2da98df4afaf03b53a2cd504c7068f"
integrity sha512-2tJxpmsh5zaVpbz0TWwpd+cdS1auwpURRfbNZ6xDM8cL/FS2dTBv8RGBIsKU0xltdfzKmtSd/Uh0xVjJjkNN2Q==
dependencies:
"@abp/jquery" "~9.2.1"
"@abp/jquery" "~9.2.2"
datatables.net "^2.1.8"
"@abp/font-awesome@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-9.2.1.tgz#a387f1cf457bdb6e3cd30bd9f4c455a41f8ca0b1"
integrity sha512-RVo3422BItdAAmafSCH/mT1Ux8q6yUz7nswGep4beP1k1VfmFExj1mgVphIpAlH3DWyzfnwUOq7lLWf/Ul2dOA==
"@abp/font-awesome@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-9.2.2.tgz#f978cd07eb8175f73e252c345a9765cdf35b4d3d"
integrity sha512-Zoc5HoqFqltc4/nudGFhL/Mr0UtMP15BjzLqbMJX0XFjHVzAg9oIGeC/kWFqUPWrQ+M5xGLm4kznNuyzee7Dnw==
dependencies:
"@abp/core" "~9.2.1"
"@abp/core" "~9.2.2"
"@fortawesome/fontawesome-free" "^6.6.0"
"@abp/jquery-form@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-9.2.1.tgz#727b391c36e8ff46b62cb01be14715a05fe74b4f"
integrity sha512-n6EpUNNRzilOzP5rYTWr9K2mPQbvBQAuxPiwUZpfwf+QpJrs+NppJMaC06HFbHcSkDDy/utd+P1/sqWaJjL/tw==
"@abp/jquery-form@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-9.2.2.tgz#f958f05b66e63bc7b0fe6ed7bf2c5b25e8e5c244"
integrity sha512-Plo30NgmoZETQvtO2h9UkfXl8dcsdNvG9G0a7AENkj/fszJDP4J5T2U2XkPG4G6wbOg4h8gsmIceV++bCFXfgw==
dependencies:
"@abp/jquery" "~9.2.1"
"@abp/jquery" "~9.2.2"
jquery-form "^4.3.0"
"@abp/jquery-validation-unobtrusive@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-9.2.1.tgz#98215811818e618d96a1dcac6419962fd39c6fef"
integrity sha512-7no3KxRW3agw4EAM5iTvQjE4+m9JrjuMAV20gAU0uVPB2+sHlluEAks0IU9wz76T+Ac7osferUZz33LgdDvIaw==
"@abp/jquery-validation-unobtrusive@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-9.2.2.tgz#6fe634b9032c9e40198f3e0f27cc57afb3266d29"
integrity sha512-VXRNSky8nVtH0NHn189HvwitKPaLzfbYoMEM7QFf1n3mEbkoBp4P43JbuTJdAzyRm5KNPNewMl5HW8EnZB0krQ==
dependencies:
"@abp/jquery-validation" "~9.2.1"
"@abp/jquery-validation" "~9.2.2"
jquery-validation-unobtrusive "^4.0.0"
"@abp/jquery-validation@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-9.2.1.tgz#559c581523e4e098f2bf67627dfe6c7ef0e1c3c1"
integrity sha512-AEGm3agbwr1f5kmXvpBeiDmsS22P88zVr8NJDICGsgBxZofKndXsDFciNZGu6lXF5qXp8AwGRi//QPaCeQsP8g==
"@abp/jquery-validation@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-9.2.2.tgz#50a72f32d1c113e67cf75effefe7f1501d5956bd"
integrity sha512-mHfPYSBkBSxytaJcbRbHtyeojGmiHiW825qFyyIBwr2kCY0s6Jr3zW8rtm3bIu2EB64cITI7kp7yKyJOxgQYlQ==
dependencies:
"@abp/jquery" "~9.2.1"
"@abp/jquery" "~9.2.2"
jquery-validation "^1.21.0"
"@abp/jquery@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-9.2.1.tgz#bbcc9eab9cef528a8163f5062665ffcf2b87c2f0"
integrity sha512-gdDIKMNEpeUdzUu5C/g6j568ytJ7ifaDxBr1NYf2kJ34p7y6rrBmyY+sL+xR3ZlcGgyPGXyFhTLRD7qTjXlkPg==
"@abp/jquery@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-9.2.2.tgz#42c092c1790d03cdc4578d8cbeaa1954cb843cf7"
integrity sha512-NavJF7SToheI+3VQWbZe+5cZVMBDt4hSGzclfB/r2/+YdKerxgggv9tDp6w8PuvnhuxHmZp6MIPelKCFN0B3Tw==
dependencies:
"@abp/core" "~9.2.1"
"@abp/core" "~9.2.2"
jquery "~3.7.1"
"@abp/lodash@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-9.2.1.tgz#a80ab7a908a0332b721277b1193209187fab57d8"
integrity sha512-I2+XYqwMi3+FXCv4xp5hBoJmOszg2WR1gnGc+Qd0zwb2VAbG4MvKVFgM/GUAFD8EKlquGyPf3f+4l5FkaPFkrQ==
"@abp/lodash@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-9.2.2.tgz#41ec734ec769f22f5bebcea0b783d2b47ccb6d9a"
integrity sha512-0uvG9hGBwp0hg5sgh0NC3URIPAD0sSfVgMN39wFJdfA+snrd4fb9TqRhZ+ntvK7iGdCEx6iIHGIgOTTzkpBB6Q==
dependencies:
"@abp/core" "~9.2.1"
"@abp/core" "~9.2.2"
lodash "^4.17.21"
"@abp/luxon@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-9.2.1.tgz#7e3d197425813cfc6932cd3f9f09f97ecd2f4fc7"
integrity sha512-2tyOZRmq9jQN0Uhg8WaHfEzL0Xeew04sbA8O9bqw28psRbXaWXEVdElRMBNt50sZkFPhHFoxxFN7PR8obs0Qug==
"@abp/luxon@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-9.2.2.tgz#553d69dc8291a1e53b5760dacf6a9067f0e54862"
integrity sha512-3J4Ch4lteckGD5n9tm5qqDydxASAD22z8z86/wfKR91y+JlXRMFTki6vU8vVnDzW4jVN+i+pUj2tg9Ov2buikQ==
dependencies:
"@abp/core" "~9.2.1"
"@abp/core" "~9.2.2"
luxon "^3.5.0"
"@abp/malihu-custom-scrollbar-plugin@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-9.2.1.tgz#b0fa249885d442ba84657c7705df73851cb56db1"
integrity sha512-fzgQZsbN0xLMxEWh7znKAI4j0CPb8ciT/3x+QguGZDJf7OFw0YnEWctfEYJnnGG28HpHs1mh64gjqoeceHy0HQ==
"@abp/malihu-custom-scrollbar-plugin@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-9.2.2.tgz#97af3474245425b531200a4970c2e4f110a84deb"
integrity sha512-siudEyOumlFV/94CABziPHWVg/C4+QjZdEqzsClPCQg+73PFNIiSwKLR7IyeBOHd+1Nf6sqNeOOmWpcGgGFe2g==
dependencies:
"@abp/core" "~9.2.1"
"@abp/core" "~9.2.2"
malihu-custom-scrollbar-plugin "^3.1.5"
"@abp/moment@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-9.2.1.tgz#9982c65d63171962091b08fc4e0d1ea98cc1f0eb"
integrity sha512-V4KH1WmahP0BoaQGLEY4a0AQyfk1cLeNMk3qCPtuqIUbOFwimJY3oQgpelilEwjI3oD/upMzGphjLGrfQLRM2A==
"@abp/moment@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-9.2.2.tgz#4c6d1752705678a23044aabb1316537e3edfc54c"
integrity sha512-xi07p1rj673qAtLwnSAmY/7DE5YfnAMvVRD8O0g+NrXiGbC1Zfv0iwhaXKTOzmUF8R+cVD/Ca3hEajqs8jHF0w==
dependencies:
moment "^2.30.1"
"@abp/select2@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-9.2.1.tgz#5c3c6a4b0018b533491d6a46540069782559c57a"
integrity sha512-p743cnoohNLKX11ptnBcN5z9+ZyC11M9mwRR6SWbW5f1Eqvbkq03bf2mDFUfukCNis4RefeURZunPlsBOmRn/A==
"@abp/select2@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-9.2.2.tgz#af5a9b7411be257f57b192fe2cabaa4915fa3b78"
integrity sha512-UvEPO0KPXFdj4qUw1zkSu0z4/gj+54OpPBQuSLZmErXt8Mswz/XWdNZ5SqEpJdMzeHLWmFuGndo5J5EeJ+u29A==
dependencies:
"@abp/core" "~9.2.1"
"@abp/core" "~9.2.2"
select2 "^4.0.13"
"@abp/sweetalert2@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-9.2.1.tgz#3db7e33855614460d2fdc5e3f8b65530902fcd9a"
integrity sha512-fJYLVxc5pAJoSLIcQYf5xRkPVnVQi/5+xwTgOePy3QeygOrAMpGS7vy+MIq7Mn+tBoEFlQ/Jn+NoB04AIYYPFw==
"@abp/sweetalert2@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-9.2.2.tgz#d82e4363d7b9ff7b372b6b7f7db3da85a35b8d3e"
integrity sha512-/+xSR+6T6cJqurJz7AgtuJj0V9TjkQiVNuN8CpZYHUjiRHIclkeGIAk7xZOH2/I/q9Ijy6cAwcx23vSP1aj00Q==
dependencies:
"@abp/core" "~9.2.1"
"@abp/core" "~9.2.2"
sweetalert2 "^11.14.1"
"@abp/timeago@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-9.2.1.tgz#6904e2d7bda57b436e3385c5fd1899b9cd806dd8"
integrity sha512-fmsPuBouWR/BvhXN53yJpg1Se06uIL7ox8XOgx1MHCe+1vxbXnFCtM2VujfowWtOSTJOzbL1DHcDpFE7JlkOag==
"@abp/timeago@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-9.2.2.tgz#688ff285031e473831d780ae9f046e902f11538f"
integrity sha512-aWLlp8/ZYsqzyBF2OjlBhZoIKTNskuwSyNeH2YG6SPeNpvisDn7UN3aeThrBSmDWjKOksYFlHNW9Zmg8DC3wYw==
dependencies:
"@abp/jquery" "~9.2.1"
"@abp/jquery" "~9.2.2"
timeago "^1.6.7"
"@abp/utils@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-9.2.1.tgz#803fd48927ae332309f8a7005806c6aa6e499750"
integrity sha512-+j0SNB/K2j2xTTijy/qCL3ds2c/7OW4nrJ8Ccq17WtEqP+jk2TtJi0EnLqhNTDih0A++XV+pcftUC+cQ0h1cUw==
"@abp/utils@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-9.2.2.tgz#27873c943b29fee5f31b893cdd6f7d4c21b21913"
integrity sha512-dHztqg4w4CgYwBecutG59dkQk3S6WoivZ7swS16C6sV3KO2chEiVjMKU36pw0XndAUtIzd0UiD5IFF6rkBuvJA==
dependencies:
just-compare "^2.3.0"

2
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": "~9.2.1"
"@abp/aspnetcore.mvc.ui.theme.basic": "~9.2.2"
}
}

240
modules/cms-kit/host/Volo.CmsKit.Web.Host/yarn.lock

@ -2,185 +2,185 @@
# yarn lockfile v1
"@abp/aspnetcore.mvc.ui.theme.basic@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-9.2.1.tgz#2380cf2ecebbe8e6250c51290df88a1015b2ad81"
integrity sha512-Wmn4+siWFPxoQmjo3R6wt0PRqeaaIsN6WM5vrWWB+RvTBXdCyitlQKEWtOudnr95WDwwWC+BZThS75gImjCtLw==
"@abp/aspnetcore.mvc.ui.theme.basic@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-9.2.2.tgz#4d18dca3945daa42e94966314ceaa83b57ad573e"
integrity sha512-9kUxDDeQ/8o1ZiudA00o+riaa4M3pgrVmdj/6UY5lZZ+GMq3uR2hRBsbSNYlPBI73if3cwPWKuKE/Sv0qLcs+A==
dependencies:
"@abp/aspnetcore.mvc.ui.theme.shared" "~9.2.1"
"@abp/aspnetcore.mvc.ui.theme.shared" "~9.2.2"
"@abp/aspnetcore.mvc.ui.theme.shared@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-9.2.1.tgz#35f6de6f106c80592ce70d36b6e8b20c64862803"
integrity sha512-kZz1tgUguGHxwG1MRkbkeXn9sIjbCOHJcBU+w+XuWwCqigM2yaE+KgnASDcjCrjQiPu6i73hf9OwtxXY1UbGMQ==
"@abp/aspnetcore.mvc.ui.theme.shared@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-9.2.2.tgz#f852a8f3aa66b638378db798c03679122b4ba5a5"
integrity sha512-yP3JCJ2mcmhVIDEL9/hispM07FowSYr/VvM6ohv1daMQfyLmciIXyQPgoQwhHEWXifJvytKhbQauDxW3B3L7lw==
dependencies:
"@abp/aspnetcore.mvc.ui" "~9.2.1"
"@abp/bootstrap" "~9.2.1"
"@abp/bootstrap-datepicker" "~9.2.1"
"@abp/bootstrap-daterangepicker" "~9.2.1"
"@abp/datatables.net-bs5" "~9.2.1"
"@abp/font-awesome" "~9.2.1"
"@abp/jquery-form" "~9.2.1"
"@abp/jquery-validation-unobtrusive" "~9.2.1"
"@abp/lodash" "~9.2.1"
"@abp/luxon" "~9.2.1"
"@abp/malihu-custom-scrollbar-plugin" "~9.2.1"
"@abp/moment" "~9.2.1"
"@abp/select2" "~9.2.1"
"@abp/sweetalert2" "~9.2.1"
"@abp/timeago" "~9.2.1"
"@abp/aspnetcore.mvc.ui@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-9.2.1.tgz#8b30f830d85f7e1f4a386b0ef8d0444e2550bc42"
integrity sha512-0C41JpevGynbyHGeKkqLUSVNK64QETsKVyVWY4fSZkChGHlD09Fn3qIlHJInpBqJ9qNYs5VQ7RRP02PSum9mAg==
"@abp/aspnetcore.mvc.ui" "~9.2.2"
"@abp/bootstrap" "~9.2.2"
"@abp/bootstrap-datepicker" "~9.2.2"
"@abp/bootstrap-daterangepicker" "~9.2.2"
"@abp/datatables.net-bs5" "~9.2.2"
"@abp/font-awesome" "~9.2.2"
"@abp/jquery-form" "~9.2.2"
"@abp/jquery-validation-unobtrusive" "~9.2.2"
"@abp/lodash" "~9.2.2"
"@abp/luxon" "~9.2.2"
"@abp/malihu-custom-scrollbar-plugin" "~9.2.2"
"@abp/moment" "~9.2.2"
"@abp/select2" "~9.2.2"
"@abp/sweetalert2" "~9.2.2"
"@abp/timeago" "~9.2.2"
"@abp/aspnetcore.mvc.ui@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-9.2.2.tgz#0349556ce125bf83e88ce8384ff1d1e648c9766a"
integrity sha512-Ll24xOpccgIZtnCRKrIj5AygRrV0fBCVqKvR16VwiWwMPd86N60Vflb9LyU7lx9/1sFMp/ONbGojxDy/tG9aBQ==
dependencies:
ansi-colors "^4.1.3"
"@abp/bootstrap-datepicker@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-9.2.1.tgz#373c8715d175ca23a8871bacdb5f017b070254aa"
integrity sha512-uaCpz5EDSZYDacjnYoqTiktTDFGnGJPEHYh5eG4BORlQta53Hvak7m2CkRVjdOaXtuPLi6EbWPSh2bHIfhKRyQ==
"@abp/bootstrap-datepicker@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-9.2.2.tgz#75aefaa4a2f0b322012599d92caa5c7a0b88cd67"
integrity sha512-6ogV4COwnGmAznEOG64qQUfoyYvmMvoi4fwAqOcKrNjWUcVFUa+wL+fbVDf9tbYT3SkeoNG5sD0JN7xj43V5cg==
dependencies:
bootstrap-datepicker "^1.10.0"
"@abp/bootstrap-daterangepicker@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-9.2.1.tgz#b49e17a4753b09d49bfad6774a7f185e7e5bf71c"
integrity sha512-kd6LEACfx7CBIQOAiE/RHFp/WnthE2iz/eivl3fwuz1VgAO0CBIQ7hYoX91GaAIQgt+OAcgGbOl2G6E284EM9Q==
"@abp/bootstrap-daterangepicker@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-9.2.2.tgz#5493d00116aa29404873ff551aa86f2605bb19f2"
integrity sha512-/JYaSj/LLaVYaeqihVS8jZb0K7J40SLakwVCFXwFhAB+/MSfgdGmzJxdf8nv/2GYlIZtG1Bv2gaQ8kHjd+M7DA==
dependencies:
bootstrap-daterangepicker "^3.1.0"
"@abp/bootstrap@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-9.2.1.tgz#ddf624e95f1dab4a8fce8d20b6dccd2b3d3f1679"
integrity sha512-NghAVP7M/Y2y9GYDu7IWo8oW7EyJEO+1NnPqCudpjWX4C6B27d7ghJ7I0MfrHoRq9/hBJZ07AKf3KMAZQD99ng==
"@abp/bootstrap@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-9.2.2.tgz#80a7e43c3629ca9db3bedd6fb28b69f5e4d90685"
integrity sha512-1PI1sRzLy1aWcv+JO8mYl5/sRfbUq2pXAwWcRb80axJSOfb36Uhw+yURRcEaaw7bAtNN7qLvf0EBKS9Rh3iTrQ==
dependencies:
"@abp/core" "~9.2.1"
"@abp/core" "~9.2.2"
bootstrap "^5.3.3"
"@abp/core@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/core/-/core-9.2.1.tgz#f7c635f1fe88fc3fbbc4accaa6aee2dc3b5631a7"
integrity sha512-onCzS2w+U+wBv5FRDCVE176AiyZDMm1D5GaqiEnpuAwsBncFpFyZedC95dtPmykagJbpOvHVSPOLyZ2jzGjcYg==
"@abp/core@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/core/-/core-9.2.2.tgz#d1fc363ddb26b4118e14d277f32a26247be4d430"
integrity sha512-YR5XPW0JED/hca8aGiWd73pR6u93Gs6IfklpU0DnSrOFTm2FnoNAryPujGUyGl0ZJM8G7Rt0xwQyAKV6PAqsXg==
dependencies:
"@abp/utils" "~9.2.1"
"@abp/utils" "~9.2.2"
"@abp/datatables.net-bs5@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-9.2.1.tgz#ff69059e96d5341166fa8d08390e9bb352010e5d"
integrity sha512-NEkf8xWTIYFDs9lAAPs0hOL2UD+pnVwyix/9IAtip3BIkyPFpLCniNWbu1WhuNJpfmLHrWPSqIrouR80gGL7PQ==
"@abp/datatables.net-bs5@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-9.2.2.tgz#197f99726c3bcaefaefdb9c91d07b50052340871"
integrity sha512-BVWCOrPx7B3JMnxZ/ZatSfv2NRRWQXhL85DFkKE92k5+ZE+Fzx2noa3SgwAsuVXmg8Q7zVg5xRM4w7hDwBW8Bw==
dependencies:
"@abp/datatables.net" "~9.2.1"
"@abp/datatables.net" "~9.2.2"
datatables.net-bs5 "^2.1.8"
"@abp/datatables.net@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-9.2.1.tgz#0a5ab74ca44cd785efb487f0447e8acdea9d7aa1"
integrity sha512-A9TSPRNUV0eeCPnpGV9Htu9ZylUf3e03smYcbEROQHe+htwhcEV5dz8SLAI90baPi2g7VnyPav/3efaqo+ETdg==
"@abp/datatables.net@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-9.2.2.tgz#334104f11d2da98df4afaf03b53a2cd504c7068f"
integrity sha512-2tJxpmsh5zaVpbz0TWwpd+cdS1auwpURRfbNZ6xDM8cL/FS2dTBv8RGBIsKU0xltdfzKmtSd/Uh0xVjJjkNN2Q==
dependencies:
"@abp/jquery" "~9.2.1"
"@abp/jquery" "~9.2.2"
datatables.net "^2.1.8"
"@abp/font-awesome@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-9.2.1.tgz#a387f1cf457bdb6e3cd30bd9f4c455a41f8ca0b1"
integrity sha512-RVo3422BItdAAmafSCH/mT1Ux8q6yUz7nswGep4beP1k1VfmFExj1mgVphIpAlH3DWyzfnwUOq7lLWf/Ul2dOA==
"@abp/font-awesome@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-9.2.2.tgz#f978cd07eb8175f73e252c345a9765cdf35b4d3d"
integrity sha512-Zoc5HoqFqltc4/nudGFhL/Mr0UtMP15BjzLqbMJX0XFjHVzAg9oIGeC/kWFqUPWrQ+M5xGLm4kznNuyzee7Dnw==
dependencies:
"@abp/core" "~9.2.1"
"@abp/core" "~9.2.2"
"@fortawesome/fontawesome-free" "^6.6.0"
"@abp/jquery-form@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-9.2.1.tgz#727b391c36e8ff46b62cb01be14715a05fe74b4f"
integrity sha512-n6EpUNNRzilOzP5rYTWr9K2mPQbvBQAuxPiwUZpfwf+QpJrs+NppJMaC06HFbHcSkDDy/utd+P1/sqWaJjL/tw==
"@abp/jquery-form@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-9.2.2.tgz#f958f05b66e63bc7b0fe6ed7bf2c5b25e8e5c244"
integrity sha512-Plo30NgmoZETQvtO2h9UkfXl8dcsdNvG9G0a7AENkj/fszJDP4J5T2U2XkPG4G6wbOg4h8gsmIceV++bCFXfgw==
dependencies:
"@abp/jquery" "~9.2.1"
"@abp/jquery" "~9.2.2"
jquery-form "^4.3.0"
"@abp/jquery-validation-unobtrusive@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-9.2.1.tgz#98215811818e618d96a1dcac6419962fd39c6fef"
integrity sha512-7no3KxRW3agw4EAM5iTvQjE4+m9JrjuMAV20gAU0uVPB2+sHlluEAks0IU9wz76T+Ac7osferUZz33LgdDvIaw==
"@abp/jquery-validation-unobtrusive@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-9.2.2.tgz#6fe634b9032c9e40198f3e0f27cc57afb3266d29"
integrity sha512-VXRNSky8nVtH0NHn189HvwitKPaLzfbYoMEM7QFf1n3mEbkoBp4P43JbuTJdAzyRm5KNPNewMl5HW8EnZB0krQ==
dependencies:
"@abp/jquery-validation" "~9.2.1"
"@abp/jquery-validation" "~9.2.2"
jquery-validation-unobtrusive "^4.0.0"
"@abp/jquery-validation@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-9.2.1.tgz#559c581523e4e098f2bf67627dfe6c7ef0e1c3c1"
integrity sha512-AEGm3agbwr1f5kmXvpBeiDmsS22P88zVr8NJDICGsgBxZofKndXsDFciNZGu6lXF5qXp8AwGRi//QPaCeQsP8g==
"@abp/jquery-validation@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-9.2.2.tgz#50a72f32d1c113e67cf75effefe7f1501d5956bd"
integrity sha512-mHfPYSBkBSxytaJcbRbHtyeojGmiHiW825qFyyIBwr2kCY0s6Jr3zW8rtm3bIu2EB64cITI7kp7yKyJOxgQYlQ==
dependencies:
"@abp/jquery" "~9.2.1"
"@abp/jquery" "~9.2.2"
jquery-validation "^1.21.0"
"@abp/jquery@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-9.2.1.tgz#bbcc9eab9cef528a8163f5062665ffcf2b87c2f0"
integrity sha512-gdDIKMNEpeUdzUu5C/g6j568ytJ7ifaDxBr1NYf2kJ34p7y6rrBmyY+sL+xR3ZlcGgyPGXyFhTLRD7qTjXlkPg==
"@abp/jquery@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-9.2.2.tgz#42c092c1790d03cdc4578d8cbeaa1954cb843cf7"
integrity sha512-NavJF7SToheI+3VQWbZe+5cZVMBDt4hSGzclfB/r2/+YdKerxgggv9tDp6w8PuvnhuxHmZp6MIPelKCFN0B3Tw==
dependencies:
"@abp/core" "~9.2.1"
"@abp/core" "~9.2.2"
jquery "~3.7.1"
"@abp/lodash@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-9.2.1.tgz#a80ab7a908a0332b721277b1193209187fab57d8"
integrity sha512-I2+XYqwMi3+FXCv4xp5hBoJmOszg2WR1gnGc+Qd0zwb2VAbG4MvKVFgM/GUAFD8EKlquGyPf3f+4l5FkaPFkrQ==
"@abp/lodash@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-9.2.2.tgz#41ec734ec769f22f5bebcea0b783d2b47ccb6d9a"
integrity sha512-0uvG9hGBwp0hg5sgh0NC3URIPAD0sSfVgMN39wFJdfA+snrd4fb9TqRhZ+ntvK7iGdCEx6iIHGIgOTTzkpBB6Q==
dependencies:
"@abp/core" "~9.2.1"
"@abp/core" "~9.2.2"
lodash "^4.17.21"
"@abp/luxon@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-9.2.1.tgz#7e3d197425813cfc6932cd3f9f09f97ecd2f4fc7"
integrity sha512-2tyOZRmq9jQN0Uhg8WaHfEzL0Xeew04sbA8O9bqw28psRbXaWXEVdElRMBNt50sZkFPhHFoxxFN7PR8obs0Qug==
"@abp/luxon@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-9.2.2.tgz#553d69dc8291a1e53b5760dacf6a9067f0e54862"
integrity sha512-3J4Ch4lteckGD5n9tm5qqDydxASAD22z8z86/wfKR91y+JlXRMFTki6vU8vVnDzW4jVN+i+pUj2tg9Ov2buikQ==
dependencies:
"@abp/core" "~9.2.1"
"@abp/core" "~9.2.2"
luxon "^3.5.0"
"@abp/malihu-custom-scrollbar-plugin@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-9.2.1.tgz#b0fa249885d442ba84657c7705df73851cb56db1"
integrity sha512-fzgQZsbN0xLMxEWh7znKAI4j0CPb8ciT/3x+QguGZDJf7OFw0YnEWctfEYJnnGG28HpHs1mh64gjqoeceHy0HQ==
"@abp/malihu-custom-scrollbar-plugin@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-9.2.2.tgz#97af3474245425b531200a4970c2e4f110a84deb"
integrity sha512-siudEyOumlFV/94CABziPHWVg/C4+QjZdEqzsClPCQg+73PFNIiSwKLR7IyeBOHd+1Nf6sqNeOOmWpcGgGFe2g==
dependencies:
"@abp/core" "~9.2.1"
"@abp/core" "~9.2.2"
malihu-custom-scrollbar-plugin "^3.1.5"
"@abp/moment@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-9.2.1.tgz#9982c65d63171962091b08fc4e0d1ea98cc1f0eb"
integrity sha512-V4KH1WmahP0BoaQGLEY4a0AQyfk1cLeNMk3qCPtuqIUbOFwimJY3oQgpelilEwjI3oD/upMzGphjLGrfQLRM2A==
"@abp/moment@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-9.2.2.tgz#4c6d1752705678a23044aabb1316537e3edfc54c"
integrity sha512-xi07p1rj673qAtLwnSAmY/7DE5YfnAMvVRD8O0g+NrXiGbC1Zfv0iwhaXKTOzmUF8R+cVD/Ca3hEajqs8jHF0w==
dependencies:
moment "^2.30.1"
"@abp/select2@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-9.2.1.tgz#5c3c6a4b0018b533491d6a46540069782559c57a"
integrity sha512-p743cnoohNLKX11ptnBcN5z9+ZyC11M9mwRR6SWbW5f1Eqvbkq03bf2mDFUfukCNis4RefeURZunPlsBOmRn/A==
"@abp/select2@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-9.2.2.tgz#af5a9b7411be257f57b192fe2cabaa4915fa3b78"
integrity sha512-UvEPO0KPXFdj4qUw1zkSu0z4/gj+54OpPBQuSLZmErXt8Mswz/XWdNZ5SqEpJdMzeHLWmFuGndo5J5EeJ+u29A==
dependencies:
"@abp/core" "~9.2.1"
"@abp/core" "~9.2.2"
select2 "^4.0.13"
"@abp/sweetalert2@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-9.2.1.tgz#3db7e33855614460d2fdc5e3f8b65530902fcd9a"
integrity sha512-fJYLVxc5pAJoSLIcQYf5xRkPVnVQi/5+xwTgOePy3QeygOrAMpGS7vy+MIq7Mn+tBoEFlQ/Jn+NoB04AIYYPFw==
"@abp/sweetalert2@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-9.2.2.tgz#d82e4363d7b9ff7b372b6b7f7db3da85a35b8d3e"
integrity sha512-/+xSR+6T6cJqurJz7AgtuJj0V9TjkQiVNuN8CpZYHUjiRHIclkeGIAk7xZOH2/I/q9Ijy6cAwcx23vSP1aj00Q==
dependencies:
"@abp/core" "~9.2.1"
"@abp/core" "~9.2.2"
sweetalert2 "^11.14.1"
"@abp/timeago@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-9.2.1.tgz#6904e2d7bda57b436e3385c5fd1899b9cd806dd8"
integrity sha512-fmsPuBouWR/BvhXN53yJpg1Se06uIL7ox8XOgx1MHCe+1vxbXnFCtM2VujfowWtOSTJOzbL1DHcDpFE7JlkOag==
"@abp/timeago@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-9.2.2.tgz#688ff285031e473831d780ae9f046e902f11538f"
integrity sha512-aWLlp8/ZYsqzyBF2OjlBhZoIKTNskuwSyNeH2YG6SPeNpvisDn7UN3aeThrBSmDWjKOksYFlHNW9Zmg8DC3wYw==
dependencies:
"@abp/jquery" "~9.2.1"
"@abp/jquery" "~9.2.2"
timeago "^1.6.7"
"@abp/utils@~9.2.1":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-9.2.1.tgz#803fd48927ae332309f8a7005806c6aa6e499750"
integrity sha512-+j0SNB/K2j2xTTijy/qCL3ds2c/7OW4nrJ8Ccq17WtEqP+jk2TtJi0EnLqhNTDih0A++XV+pcftUC+cQ0h1cUw==
"@abp/utils@~9.2.2":
version "9.2.2"
resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-9.2.2.tgz#27873c943b29fee5f31b893cdd6f7d4c21b21913"
integrity sha512-dHztqg4w4CgYwBecutG59dkQk3S6WoivZ7swS16C6sV3KO2chEiVjMKU36pw0XndAUtIzd0UiD5IFF6rkBuvJA==
dependencies:
just-compare "^2.3.0"

4
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": "~9.2.1",
"@abp/cms-kit": "9.2.1"
"@abp/aspnetcore.mvc.ui.theme.basic": "~9.2.2",
"@abp/cms-kit": "9.2.2"
}
}

Some files were not shown because too many files changed in this diff

Loading…
Cancel
Save