Browse Source

Merge branch 'dev' into ExtensionPropertyPolicy

pull/20281/head
Engincan VESKE 2 years ago
parent
commit
36edca49f3
  1. 20
      .github/workflows/auto-pr.yml
  2. 51
      README.md
  3. 14
      abp_io/AbpIoLocalization/AbpIoLocalization/AbpIoLocalizationModule.cs
  4. 21
      abp_io/AbpIoLocalization/AbpIoLocalization/Admin/Localization/Resources/en.json
  5. 10
      abp_io/AbpIoLocalization/AbpIoLocalization/Base/Localization/Resources/en.json
  6. 10
      abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/AbpIoCommercialResource.cs
  7. 2
      abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/ar.json
  8. 2
      abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/cs.json
  9. 2
      abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/de.json
  10. 154
      abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/en.json
  11. 2
      abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/es.json
  12. 2
      abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/fi.json
  13. 2
      abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/fr.json
  14. 2
      abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/hi.json
  15. 2
      abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/hr.json
  16. 2
      abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/hu.json
  17. 2
      abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/is.json
  18. 2
      abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/it.json
  19. 2
      abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/nl.json
  20. 2
      abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/pl-PL.json
  21. 2
      abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/pt-BR.json
  22. 2
      abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/ro-RO.json
  23. 2
      abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/ru.json
  24. 2
      abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/sk.json
  25. 2
      abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/sl.json
  26. 2
      abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/tr.json
  27. 2
      abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/vi.json
  28. 2
      abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/zh-Hans.json
  29. 2
      abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/zh-Hant.json
  30. 10
      abp_io/AbpIoLocalization/AbpIoLocalization/Community/Localization/AbpIoCommunityResource.cs
  31. 2
      abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/ar.json
  32. 2
      abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/cs.json
  33. 2
      abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/de.json
  34. 1399
      abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/en.json
  35. 2
      abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/es.json
  36. 2
      abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/fi.json
  37. 2
      abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/fr.json
  38. 2
      abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/hi.json
  39. 2
      abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/hr.json
  40. 2
      abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/hu.json
  41. 2
      abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/is.json
  42. 2
      abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/it.json
  43. 2
      abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/nl.json
  44. 2
      abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/pl-PL.json
  45. 2
      abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/pt-BR.json
  46. 2
      abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/ro-RO.json
  47. 2
      abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/ru.json
  48. 2
      abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/sk.json
  49. 2
      abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/sl.json
  50. 2
      abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/tr.json
  51. 2
      abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/vi.json
  52. 2
      abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/zh-Hans.json
  53. 2
      abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/zh-Hant.json
  54. BIN
      docs/en/Blog-Posts/2024-07-23-AbpIo-United-Is-Live/cover.png
  55. BIN
      docs/en/Blog-Posts/2024-07-25-Introducing-The-New-ABP-CLI/cover-image.png
  56. 81
      docs/en/Blog-Posts/2024-07-25-Introducing-The-New-ABP-CLI/post.md
  57. BIN
      docs/en/Blog-Posts/2024-07-30-Announcing-ABP-Studio/abp-studio-helm-charts.png
  58. BIN
      docs/en/Blog-Posts/2024-07-30-Announcing-ABP-Studio/abp-studio-license-comparison-table.png
  59. BIN
      docs/en/Blog-Posts/2024-07-30-Announcing-ABP-Studio/abp-studio-new-layered-solution-template-wizard-options.png
  60. BIN
      docs/en/Blog-Posts/2024-07-30-Announcing-ABP-Studio/abp-studio-new-layered-solution-template-wizard.png
  61. BIN
      docs/en/Blog-Posts/2024-07-30-Announcing-ABP-Studio/abp-studio-solution-runner-overall.png
  62. BIN
      docs/en/Blog-Posts/2024-07-30-Announcing-ABP-Studio/abp-studio-solution-runner-start-apps.png
  63. BIN
      docs/en/Blog-Posts/2024-07-30-Announcing-ABP-Studio/abp-suite-in-abp-studio.png
  64. BIN
      docs/en/Blog-Posts/2024-07-30-Announcing-ABP-Studio/abp-suite-open-in-abp-studio.png
  65. 93
      docs/en/Blog-Posts/2024-07-30-Announcing-ABP-Studio/post.md
  66. BIN
      docs/en/Blog-Posts/2024-07-30-Announcing-ABP-Studio/solution-explorer.png
  67. BIN
      docs/en/Blog-Posts/2024-07-30-Announcing-ABP-Studio/suite-generated-entity.png
  68. BIN
      docs/en/images/cmskit-module-markedItems.png
  69. 16
      framework/NuGet.md
  70. 6
      framework/src/Volo.Abp.AspNetCore.Components.WebAssembly/Volo/Abp/AspNetCore/Components/WebAssembly/MultiTenant/WebAssemblyMultiTenantUrlOptions.cs
  71. 49
      framework/src/Volo.Abp.AspNetCore.Components.WebAssembly/Volo/Abp/AspNetCore/Components/WebAssembly/MultiTenant/WebAssemblyMultiTenantUrlProvider.cs
  72. 32
      framework/src/Volo.Abp.AspNetCore.Mvc.UI.Bundling/Volo/Abp/AspNetCore/Mvc/UI/Bundling/TagHelpers/ScriptTagHelper.cs
  73. 11
      framework/src/Volo.Abp.BackgroundWorkers.Hangfire/Volo/Abp/BackgroundWorkers/Hangfire/HangfireBackgroundWorkerBase.cs
  74. 53
      framework/src/Volo.Abp.BackgroundWorkers.Hangfire/Volo/Abp/BackgroundWorkers/Hangfire/HangfireBackgroundWorkerManager.cs
  75. 9
      framework/src/Volo.Abp.BackgroundWorkers.Hangfire/Volo/Abp/BackgroundWorkers/Hangfire/HangfirePeriodicBackgroundWorkerAdapter.cs
  76. 13
      framework/src/Volo.Abp.BackgroundWorkers.Quartz/Volo/Abp/BackgroundWorkers/Quartz/QuartzPeriodicBackgroundWorkerAdapter.cs
  77. 42
      framework/src/Volo.Abp.BackgroundWorkers/Volo/Abp/BackgroundWorkers/BackgroundWorkerNameAttribute.cs
  78. 6
      framework/src/Volo.Abp.BackgroundWorkers/Volo/Abp/BackgroundWorkers/IBackgroundWorkerNameProvider.cs
  79. 2
      framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/CliConsts.cs
  80. 2
      framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/AddModuleCommand.cs
  81. 2
      framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/AddPackageCommand.cs
  82. 2
      framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/BuildCommand.cs
  83. 2
      framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/BundleCommand.cs
  84. 2
      framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/CleanCommand.cs
  85. 2
      framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/ClearDownloadCacheCommand.cs
  86. 2
      framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/CliCommand.cs
  87. 2
      framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/GetSourceCommand.cs
  88. 2
      framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/HelpCommand.cs
  89. 2
      framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/InstallLibsCommand.cs
  90. 2
      framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/ListModulesCommand.cs
  91. 2
      framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/ListTemplatesCommand.cs
  92. 2
      framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/LoginCommand.cs
  93. 2
      framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/LoginInfoCommand.cs
  94. 2
      framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/NewCommand.cs
  95. 5
      framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/ProjectCreationCommandBase.cs
  96. 2
      framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/PromptCommand.cs
  97. 2
      framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/ProxyCommandBase.cs
  98. 2
      framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/SuiteCommand.cs
  99. 2
      framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/SwitchToLocalCommand.cs
  100. 2
      framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/SwitchToNightlyCommand.cs

20
.github/workflows/auto-pr.yml

@ -1,13 +1,13 @@
name: Merge branch dev with prerel-8.3 name: Merge branch dev with rel-8.3
on: on:
push: push:
branches: branches:
- prerel-8.3 - rel-8.3
permissions: permissions:
contents: read contents: read
jobs: jobs:
merge-dev-with-prerel-8-3: merge-dev-with-rel-8-3:
permissions: permissions:
contents: write # for peter-evans/create-pull-request to create branch contents: write # for peter-evans/create-pull-request to create branch
pull-requests: write # for peter-evans/create-pull-request to create a PR pull-requests: write # for peter-evans/create-pull-request to create a PR
@ -18,19 +18,19 @@ jobs:
ref: dev ref: dev
- name: Reset promotion branch - name: Reset promotion branch
run: | run: |
git fetch origin prerel-8.3:prerel-8.3 git fetch origin rel-8.3:rel-8.3
git reset --hard prerel-8.3 git reset --hard rel-8.3
- name: Create Pull Request - name: Create Pull Request
uses: peter-evans/create-pull-request@v3 uses: peter-evans/create-pull-request@v3
with: with:
branch: auto-merge/prerel-8-3/${{github.run_number}} branch: auto-merge/rel-8-3/${{github.run_number}}
title: Merge branch dev with prerel-8.3 title: Merge branch dev with rel-8.3
body: This PR generated automatically to merge dev with prerel-8.3. Please review the changed files before merging to prevent any errors that may occur. body: This PR generated automatically to merge dev with rel-8.3. Please review the changed files before merging to prevent any errors that may occur.
reviewers: maliming reviewers: maliming
token: ${{ github.token }} token: ${{ github.token }}
- name: Merge Pull Request - name: Merge Pull Request
env: env:
GH_TOKEN: ${{ secrets.BOT_SECRET }} GH_TOKEN: ${{ secrets.BOT_SECRET }}
run: | run: |
gh pr review auto-merge/prerel-8-3/${{github.run_number}} --approve gh pr review auto-merge/rel-8-3/${{github.run_number}} --approve
gh pr merge auto-merge/prerel-8-3/${{github.run_number}} --merge --auto --delete-branch gh pr merge auto-merge/rel-8-3/${{github.run_number}} --merge --auto --delete-branch

51
README.md

@ -1,18 +1,17 @@
# ABP Framework # ABP Framework
![build and test](https://img.shields.io/github/actions/workflow/status/abpframework/abp/build-and-test.yml?branch=dev&style=flat-square) 🔹 [![codecov](https://codecov.io/gh/abpframework/abp/branch/dev/graph/badge.svg?token=jUKLCxa6HF)](https://codecov.io/gh/abpframework/abp) 🔹 [![NuGet](https://img.shields.io/nuget/v/Volo.Abp.Core.svg?style=flat-square)](https://www.nuget.org/packages/Volo.Abp.Core) 🔹 [![NuGet (with prereleases)](https://img.shields.io/nuget/vpre/Volo.Abp.Core.svg?style=flat-square)](https://www.nuget.org/packages/Volo.Abp.Core) 🔹 [![MyGet (nightly builds)](https://img.shields.io/myget/abp-nightly/vpre/Volo.Abp.svg?style=flat-square)](https://docs.abp.io/en/abp/latest/Nightly-Builds) 🔹 ![build and test](https://img.shields.io/github/actions/workflow/status/abpframework/abp/build-and-test.yml?branch=dev&style=flat-square) 🔹 [![codecov](https://codecov.io/gh/abpframework/abp/branch/dev/graph/badge.svg?token=jUKLCxa6HF)](https://codecov.io/gh/abpframework/abp) 🔹 [![NuGet](https://img.shields.io/nuget/v/Volo.Abp.Core.svg?style=flat-square)](https://www.nuget.org/packages/Volo.Abp.Core) 🔹 [![NuGet (with prereleases)](https://img.shields.io/nuget/vpre/Volo.Abp.Core.svg?style=flat-square)](https://www.nuget.org/packages/Volo.Abp.Core) 🔹 [![MyGet (nightly builds)](https://img.shields.io/myget/abp-nightly/vpre/Volo.Abp.svg?style=flat-square)](https://abp.io/docs/latest/release-info/nightly-builds) 🔹
[![NuGet Download](https://img.shields.io/nuget/dt/Volo.Abp.Core.svg?style=flat-square)](https://www.nuget.org/packages/Volo.Abp.Core) 🔹 [![Code of Conduct](https://img.shields.io/badge/Contributor%20Covenant-v2.0%20adopted-ff69b4.svg)](https://github.com/abpframework/abp/blob/dev/CODE_OF_CONDUCT.md) 🔹 [![CLA Signed](https://cla-assistant.io/readme/badge/abpframework/abp)](https://cla-assistant.io/abpframework/abp) 🔹 [![Discord Shield](https://discord.com/api/guilds/951497912645476422/widget.png?style=shield)](https://discord.gg/abp) [![NuGet Download](https://img.shields.io/nuget/dt/Volo.Abp.Core.svg?style=flat-square)](https://www.nuget.org/packages/Volo.Abp.Core) 🔹 [![Code of Conduct](https://img.shields.io/badge/Contributor%20Covenant-v2.0%20adopted-ff69b4.svg)](https://github.com/abpframework/abp/blob/dev/CODE_OF_CONDUCT.md) 🔹 [![CLA Signed](https://cla-assistant.io/readme/badge/abpframework/abp)](https://cla-assistant.io/abpframework/abp) 🔹 [![Discord Shield](https://discord.com/api/guilds/951497912645476422/widget.png?style=shield)](https://discord.gg/abp)
ABP Framework is a complete **infrastructure** based on **ASP.NET Core** that creates **modern web applications** and **APIs** by following the software development **best practices** and the **latest technologies**. ABP Framework is a complete **infrastructure** based on **ASP.NET Core** that creates **modern web applications** and **APIs** by following the software development **best practices** and the **latest technologies**.
[![ABP Platform](https://github.com/abpframework/abp/assets/9526587/47531496-4088-406d-9c69-63cb0ffec2ba)](https://abp.io) [![ABP Platform](https://github.com/user-attachments/assets/200653c0-0e69-4b47-b76a-3a83460aaab6)](https://abp.io)
## Getting Started ## Getting Started
- [Quick Start](https://docs.abp.io/en/abp/latest/Tutorials/Todo/Index) is a single-part, quick-start tutorial to build a simple application with the ABP Framework. Start with this tutorial if you want to understand how ABP works quickly. - [Quick Start](https://abp.io/docs/latest/tutorials/todo) is a single-part, quick-start tutorial to build a simple application with the ABP Framework. Start with this tutorial if you want to understand how ABP works quickly.
- [Getting Started guide](https://docs.abp.io/en/abp/latest/Getting-Started) can be used to create and run ABP-based solutions with different options and details. - [Getting Started guide](https://abp.io/docs/latest/get-started) can be used to create and run ABP-based solutions with different options and details.
- [Web Application Development Tutorial](https://docs.abp.io/en/abp/latest/Tutorials/Part-1) is a complete tutorial on developing a full-stack web application with all aspects of a real-life solution. - [Web Application Development Tutorial](https://abp.io/docs/latest/tutorials/book-store) is a complete tutorial on developing a full-stack web application with all aspects of a real-life solution.
### Quick Start ### Quick Start
@ -28,7 +27,7 @@ Create a new solution:
> abp new BookStore -u mvc -d ef > abp new BookStore -u mvc -d ef
```` ````
> See the [CLI documentation](https://docs.abp.io/en/abp/latest/CLI) for all available options. > See the [CLI documentation](https://abp.io/docs/latest/cli) for all available options.
@ -54,21 +53,21 @@ ABP provides a **full stack developer experience**.
<img src="docs/en/images/ddd-microservice-simple.png"> <img src="docs/en/images/ddd-microservice-simple.png">
ABP offers a complete, **modular** and **layered** software architecture based on **[Domain Driven Design](https://docs.abp.io/en/abp/latest/Domain-Driven-Design)** principles and patterns. It also provides the necessary infrastructure and guidance to [implement this architecture](https://docs.abp.io/en/abp/latest/Domain-Driven-Design-Implementation-Guide). ABP offers a complete, **modular** and **layered** software architecture based on **[Domain Driven Design](https://abp.io/docs/latest/framework/architecture/domain-driven-design)** principles and patterns. It also provides the necessary infrastructure and guidance to [implement this architecture](https://abp.io/books/implementing-domain-driven-design).
ABP Framework is suitable for **[microservice solutions](https://docs.abp.io/en/abp/latest/Microservice-Architecture)** as well as monolithic applications. ABP Framework is suitable for **[microservice solutions](https://abp.io/docs/latest/framework/architecture/microservices)** as well as monolithic applications.
### Infrastructure ### Infrastructure
There are a lot of features provided by the ABP Framework to achieve real-world scenarios easier, like [Event Bus](https://docs.abp.io/en/abp/latest/Event-Bus), [Background Job System](https://docs.abp.io/en/abp/latest/Background-Jobs), [Audit Logging](https://docs.abp.io/en/abp/latest/Audit-Logging), [BLOB Storing](https://docs.abp.io/en/abp/latest/Blob-Storing), [Data Seeding](https://docs.abp.io/en/abp/latest/Data-Seeding), [Data Filtering](https://docs.abp.io/en/abp/latest/Data-Filtering), etc. There are a lot of features provided by the ABP Framework to achieve real-world scenarios easier, like [Event Bus](https://abp.io/docs/latest/framework/infrastructure/event-bus), [Background Job System](https://abp.io/docs/latest/framework/infrastructure/background-jobs), [Audit Logging](https://abp.io/docs/latest/framework/infrastructure/audit-logging), [BLOB Storing](https://abp.io/docs/latest/framework/infrastructure/blob-storing), [Data Seeding](https://abp.io/docs/latest/framework/infrastructure/data-seeding), [Data Filtering](https://abp.io/docs/latest/framework/infrastructure/data-filtering), etc.
### Cross-Cutting Concerns ### Cross-Cutting Concerns
ABP also simplifies (and even automates wherever possible) cross-cutting concerns and common non-functional requirements like [Exception Handling](https://docs.abp.io/en/abp/latest/Exception-Handling), [Validation](https://docs.abp.io/en/abp/latest/Validation), [Authorization](https://docs.abp.io/en/abp/latest/Authorization), [Localization](https://docs.abp.io/en/abp/latest/Localization), [Caching](https://docs.abp.io/en/abp/latest/Caching), [Dependency Injection](https://docs.abp.io/en/abp/latest/Dependency-Injection), [Setting Management](https://docs.abp.io/en/abp/latest/Settings), etc. ABP also simplifies (and even automates wherever possible) cross-cutting concerns and common non-functional requirements like [Exception Handling](https://abp.io/docs/latest/framework/fundamentals/exception-handling), [Validation](https://abp.io/docs/latest/framework/fundamentals/validation), [Authorization](https://abp.io/docs/latest/framework/fundamentals/authorizationn), [Localization](https://abp.io/docs/latest/framework/fundamentals/localization), [Caching](https://abp.io/docs/latest/framework/fundamentals/caching), [Dependency Injection](https://abp.io/docs/latest/framework/fundamentals/dependency-injection), [Setting Management](https://abp.io/docs/latest/framework/infrastructure/settings), etc.
@ -76,18 +75,18 @@ ABP also simplifies (and even automates wherever possible) cross-cutting concern
ABP is a modular framework and the Application Modules provide **pre-built application functionalities**; ABP is a modular framework and the Application Modules provide **pre-built application functionalities**;
- [**Account**](https://docs.abp.io/en/abp/latest/Modules/Account): Provides UI for the account management and allows user to login/register to the application. - [**Account**](https://abp.io/docs/latest/modules/account): Provides UI for the account management and allows user to login/register to the application.
- **[Identity](https://docs.abp.io/en/abp/latest/Modules/Identity)**: Manages organization units, roles, users and their permissions based on the Microsoft Identity library. - **[Identity](https://abp.io/docs/latest/modules/identity)**: Manages organization units, roles, users and their permissions based on the Microsoft Identity library.
- [**OpenIddict**](https://docs.abp.io/en/abp/latest/Modules/OpenIddict): Integrates to OpenIddict. - [**OpenIddict**](https://abp.io/docs/latest/modules/openiddict): Integrates to OpenIddict.
- [**Tenant Management**](https://docs.abp.io/en/abp/latest/Modules/Tenant-Management): Manages tenants for a [multi-tenant](https://docs.abp.io/en/abp/latest/Multi-Tenancy) (SaaS) application. - [**Tenant Management**](https://abp.io/docs/latest/modules/tenant-management): Manages tenants for a [multi-tenant](https://abp.io/docs/latest/framework/architecture/multi-tenancy) (SaaS) application.
See the [Application Modules](https://docs.abp.io/en/abp/latest/Modules/Index) document for all pre-built modules. See the [Application Modules](https://abp.io/docs/latest/modules) document for all pre-built modules.
### Startup Templates ### Startup Templates
The [Startup templates](https://docs.abp.io/en/abp/latest/Startup-Templates/Index) are pre-built Visual Studio solution templates. You can create your own solution based on these templates to **immediately start your development**. The [Startup templates](https://abp.io/docs/latest/solution-templates) are pre-built Visual Studio solution templates. You can create your own solution based on these templates to **immediately start your development**.
@ -103,19 +102,19 @@ This book will help you to gain a complete understanding of the ABP Framework an
### ABP Community Web Site ### ABP Community Web Site
The [ABP Community](https://community.abp.io/) is a website to publish **articles** and share **knowledge** about the ABP Framework. You can also create content for the community! The [ABP Community](https://abp.io/community) is a website to publish **articles** and share **knowledge** about the ABP Framework. You can also create content for the community!
### Blog ### Blog
Follow the [ABP Blog](https://blog.abp.io/) to learn the latest happenings in the ABP Framework. Follow the [ABP Blog](https://abp.io/blog) to learn the latest happenings in the ABP Framework.
### Samples ### Samples
See the [sample projects](https://docs.abp.io/en/abp/latest/Samples/Index) built with the ABP Framework. See the [sample projects](https://abp.io/docs/latest/samples) built with the ABP Framework.
### Want to Contribute? ### Want to Contribute?
ABP is a community-driven open-source project. See [the contribution guide](https://docs.abp.io/en/abp/latest/Contribution/Index) if you want to participate in this project. ABP is a community-driven open-source project. See [the contribution guide](https://abp.io/docs/latest/contribution) if you want to participate in this project.
@ -123,11 +122,11 @@ ABP is a community-driven open-source project. See [the contribution guide](http
* [Home Website](https://abp.io) * [Home Website](https://abp.io)
* [Get Started](https://abp.io/get-started) * [Get Started](https://abp.io/get-started)
* [Features](https://abp.io/features) * [Features](https://abp.io/framework)
* [Documents](https://docs.abp.io/) * [Documents](https://abp.io/docs/latest)
* [Samples](https://docs.abp.io/en/abp/latest/Samples/Index) * [Samples](https://abp.io/docs/latest/samples)
* [Blog](https://blog.abp.io/) * [Blog](https://abp.io/blog)
* [Community](https://community.abp.io/) * [Community](https://abp.io/community)
* [Stackoverflow](https://stackoverflow.com/questions/tagged/abp) * [Stackoverflow](https://stackoverflow.com/questions/tagged/abp)
* [Twitter](https://twitter.com/abpframework) * [Twitter](https://twitter.com/abpframework)

14
abp_io/AbpIoLocalization/AbpIoLocalization/AbpIoLocalizationModule.cs

@ -2,8 +2,6 @@
using AbpIoLocalization.Admin.Localization; using AbpIoLocalization.Admin.Localization;
using AbpIoLocalization.Base.Localization; using AbpIoLocalization.Base.Localization;
using AbpIoLocalization.Blog.Localization; using AbpIoLocalization.Blog.Localization;
using AbpIoLocalization.Commercial.Localization;
using AbpIoLocalization.Community.Localization;
using AbpIoLocalization.Docs.Localization; using AbpIoLocalization.Docs.Localization;
using AbpIoLocalization.Support.Localization; using AbpIoLocalization.Support.Localization;
using AbpIoLocalization.Www; using AbpIoLocalization.Www;
@ -28,9 +26,7 @@ namespace AbpIoLocalization
Configure<AbpExceptionLocalizationOptions>(options => Configure<AbpExceptionLocalizationOptions>(options =>
{ {
options.MapCodeNamespace("Volo.AbpIo.Commercial", typeof(AbpIoCommercialResource));
options.MapCodeNamespace("Volo.AbpIo.Domain", typeof(AbpIoBaseResource)); options.MapCodeNamespace("Volo.AbpIo.Domain", typeof(AbpIoBaseResource));
options.MapCodeNamespace("Volo.AbpIo.Community", typeof(AbpIoCommunityResource));
}); });
Configure<AbpLocalizationOptions>(options => Configure<AbpLocalizationOptions>(options =>
@ -57,11 +53,6 @@ namespace AbpIoLocalization
.AddVirtualJson("/Blog/Localization/Resources") .AddVirtualJson("/Blog/Localization/Resources")
.AddBaseTypes(typeof(AbpIoBaseResource)); .AddBaseTypes(typeof(AbpIoBaseResource));
options.Resources
.Add<AbpIoCommercialResource>("en")
.AddVirtualJson("/Commercial/Localization/Resources")
.AddBaseTypes(typeof(AbpIoBaseResource));
options.Resources options.Resources
.Add<AbpIoDocsResource>("en") .Add<AbpIoDocsResource>("en")
.AddVirtualJson("/Docs/Localization/Resources") .AddVirtualJson("/Docs/Localization/Resources")
@ -76,11 +67,6 @@ namespace AbpIoLocalization
.Add<AbpIoWwwResource>("en") .Add<AbpIoWwwResource>("en")
.AddVirtualJson("/Www/Localization/Resources") .AddVirtualJson("/Www/Localization/Resources")
.AddBaseTypes(typeof(AbpIoBaseResource)); .AddBaseTypes(typeof(AbpIoBaseResource));
options.Resources
.Add<AbpIoCommunityResource>("en")
.AddVirtualJson("/Community/Localization/Resources")
.AddBaseTypes(typeof(AbpIoBaseResource));
}); });
} }
} }

21
abp_io/AbpIoLocalization/AbpIoLocalization/Admin/Localization/Resources/en.json

@ -72,7 +72,7 @@
"Menu:NpmPackages": "NPM Packages", "Menu:NpmPackages": "NPM Packages",
"Menu:Modules": "Modules", "Menu:Modules": "Modules",
"Menu:Maintenance": "Maintenance", "Menu:Maintenance": "Maintenance",
"Menu:NugetPackages": "Nuget Packages", "Menu:NugetPackages": "NuGet Packages",
"CreateAnOrganization": "Create an organization", "CreateAnOrganization": "Create an organization",
"Organizations": "Organizations", "Organizations": "Organizations",
"LongName": "Long name", "LongName": "Long name",
@ -219,8 +219,8 @@
"ReIndexAllPostsConfirmationMessage": "Are you sure you want to reindex all posts?", "ReIndexAllPostsConfirmationMessage": "Are you sure you want to reindex all posts?",
"SuccessfullyReIndexAllPosts": "All posts have been successfully reindexed.", "SuccessfullyReIndexAllPosts": "All posts have been successfully reindexed.",
"Permission:FullSearch": "Full text search", "Permission:FullSearch": "Full text search",
"Menu:CliAnalytics": "Cli Analytics", "Menu:CliAnalytics": "CLI Analytics",
"Menu:Reports": "Reports", "Menu:Reports": "Dynamic Reports",
"TemplateName": "Template name", "TemplateName": "Template name",
"TemplateVersion": "Template version", "TemplateVersion": "Template version",
"DatabaseProvider": "Database provider", "DatabaseProvider": "Database provider",
@ -232,7 +232,7 @@
"UiFramework": "Ui framework", "UiFramework": "Ui framework",
"Options": "Options", "Options": "Options",
"CliAnalytics": "Cli Analytics", "CliAnalytics": "Cli Analytics",
"Reports": "Reports", "Reports": "Dynamic Reports",
"Permission:CliAnalyticses": "Cli Analyticses", "Permission:CliAnalyticses": "Cli Analyticses",
"Permission:CliAnalytics": "Cli Analytics", "Permission:CliAnalytics": "Cli Analytics",
"Permission:Reports": "Reports", "Permission:Reports": "Reports",
@ -590,7 +590,7 @@
"OrganizationDoesNotHaveACreditCardInGateway": "Organization does not have a credit card in the gateway!", "OrganizationDoesNotHaveACreditCardInGateway": "Organization does not have a credit card in the gateway!",
"Permission:EditWinners": "Edit Winners", "Permission:EditWinners": "Edit Winners",
"Permission:ChangeDrawingStatus": "Change Drawing Status", "Permission:ChangeDrawingStatus": "Change Drawing Status",
"Menu:Licenses": "Licenses", "Menu:Licenses": "Licensing",
"OrganizationId": "Organization Id", "OrganizationId": "Organization Id",
"RemoveAllWinnersConfirmationMessage": "Are you sure you want to remove all winners?", "RemoveAllWinnersConfirmationMessage": "Are you sure you want to remove all winners?",
"AutoRenewals": "Auto Renewals", "AutoRenewals": "Auto Renewals",
@ -623,6 +623,17 @@
"DeleteImageSuccessMessage": "Image successfully deleted", "DeleteImageSuccessMessage": "Image successfully deleted",
"DeleteImage": "Delete Image", "DeleteImage": "Delete Image",
"NetTerms": "Terms (Days)", "NetTerms": "Terms (Days)",
"Menu:DynamicReports": "Dynamic Reports",
"Menu:Others": "Others",
"Menu:Packs&Modules": "Packs & Modules",
"ReleaseCaches": "Release Cache",
"Menu:HeroSections": "Hero Sections",
"HeroSections": "Hero Sections",
"DynamicReports": "Dynamic Reports",
"Menu:ReportsMenu": "Reports",
"Permission:HeroSections": "Hero Sections",
"RedirectLink": "Redirect link",
"HeroSectionsDeletionConfirmationMessage": "Are you sure you want to delete the hero section?",
"AbpStudioName": "Abp Studio name" "AbpStudioName": "Abp Studio name"
} }
} }

10
abp_io/AbpIoLocalization/AbpIoLocalization/Base/Localization/Resources/en.json

@ -90,9 +90,9 @@
"TermsAndConditions": "Terms & Conditions", "TermsAndConditions": "Terms & Conditions",
"WouldLikeToReceiveMarketingMaterials": "I would like to receive marketing materials like product deals & special offers.", "WouldLikeToReceiveMarketingMaterials": "I would like to receive marketing materials like product deals & special offers.",
"JoinOurMarketingNewsletter": "Join our marketing newsletter", "JoinOurMarketingNewsletter": "Join our marketing newsletter",
"CommunityPrivacyPolicyConfirmation": "I agree to the Terms & Conditions and <a class=\"text-white fw-6 text-decoration-underline opacity-50\" href=\"https://commercial.abp.io/Privacy\">Privacy Policy</a>.", "CommunityPrivacyPolicyConfirmation": "I agree to the Terms & Conditions and <a class=\"text-white fw-6 text-decoration-underline opacity-50\" href=\"/Privacy\">Privacy Policy</a>.",
"WouldLikeToReceiveNotification": "I would like to receive the latest news from abp.io websites.", "WouldLikeToReceiveNotification": "I would like to receive the latest news from abp.io websites.",
"CommercialNewsletterConfirmationMessage": "I agree to the <a class=\"text-white fw-bolder text-decoration-underline\" href=\"https://commercial.abp.io/TermsConditions\">Terms & Conditions</a> and <a class=\"text-white fw-bolder text-decoration-underline\" href=\"https://commercial.abp.io/Privacy\">Privacy Policy</a>.", "CommercialNewsletterConfirmationMessage": "I agree to the <a href=\"/TermsConditions\">Terms & Conditions</a> and <a href=\"/Privacy\">Privacy Policy</a>.",
"FreeDDDEBook": "Free DDD E-Book", "FreeDDDEBook": "Free DDD E-Book",
"AdditionalServices": "Additional Services", "AdditionalServices": "Additional Services",
"Learn": "Learn", "Learn": "Learn",
@ -118,7 +118,7 @@
"EULA": "EULA", "EULA": "EULA",
"ABPCommercialIntroductionMessage": "Pre-built application modules, advanced startup templates, rapid application development tooling, professional UI themes and premium support.", "ABPCommercialIntroductionMessage": "Pre-built application modules, advanced startup templates, rapid application development tooling, professional UI themes and premium support.",
"MasteringAbpFrameworkEBook": "Mastering ABP Framework", "MasteringAbpFrameworkEBook": "Mastering ABP Framework",
"MasteringTheABPFrameworkExplanation": "Written by the creator of the ABP Framework, this book will help you gain a complete understanding of the framework and modern web application development techniques.", "MasteringTheABPFrameworkExplanation": "Mastering ABP Framework e-book; written by the creator of the ABP Framework, will help you gain a complete understanding of the framework and modern web application development techniques.",
"Speakers": "Speakers", "Speakers": "Speakers",
"PreviousEvents": "Previous Events", "PreviousEvents": "Previous Events",
"WatchTheEvent": "Watch the Event", "WatchTheEvent": "Watch the Event",
@ -158,7 +158,7 @@
"SeePreviousEvents": "See Previous Events", "SeePreviousEvents": "See Previous Events",
"CookieConsent_Accept": "Accept", "CookieConsent_Accept": "Accept",
"CookieConsent_Explanation_1": "We use cookies to give you the best experience on our website.", "CookieConsent_Explanation_1": "We use cookies to give you the best experience on our website.",
"CookieConsent_Explanation_2": "If you continue to browse, then you agree to our <a href=\"@Url.Page(\"/Privacy\")\">Privacy policy and cookie policy.</a>.", "CookieConsent_Explanation_2": "If you continue to browse, then you agree to our <a href=\"/Privacy\">Privacy policy and cookie policy.</a>.",
"Error_Page_400_Title": "There was a problem serving the requested page.", "Error_Page_400_Title": "There was a problem serving the requested page.",
"Error_Page_400_Description_1": "Usually this means that an unexpected error happened while processing your request.", "Error_Page_400_Description_1": "Usually this means that an unexpected error happened while processing your request.",
"Error_Page_400_Description_2": "If the problem persists, contact us at <a href=\"mailto:info@abp.io\">info@abp.io</a> and we'll help get you on your way.", "Error_Page_400_Description_2": "If the problem persists, contact us at <a href=\"mailto:info@abp.io\">info@abp.io</a> and we'll help get you on your way.",
@ -239,7 +239,7 @@
"Trainings": "Trainings", "Trainings": "Trainings",
"MeetTheABPCommunity": "Meet the ABP <span class=\"gradient-community\">Community</span>", "MeetTheABPCommunity": "Meet the ABP <span class=\"gradient-community\">Community</span>",
"DisplayName:CommunityIndexPagePoll": "Community Index Page Poll", "DisplayName:CommunityIndexPagePoll": "Community Index Page Poll",
"ReturnOfInvestment": "Return Of Investment", "ReturnOnInvestment": "Return On Investment",
"PromotionalOffers": "Promotional Offers", "PromotionalOffers": "Promotional Offers",
"PromotionalOffersDefinition": "Discounts, seasonal campaigns, etc.", "PromotionalOffersDefinition": "Discounts, seasonal campaigns, etc.",
"EventsDefinition": "Community Talks, Webinars, ABP .NET Conference, etc.", "EventsDefinition": "Community Talks, Webinars, ABP .NET Conference, etc.",

10
abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/AbpIoCommercialResource.cs

@ -1,10 +0,0 @@
using Volo.Abp.Localization;
namespace AbpIoLocalization.Commercial.Localization
{
[LocalizationResourceName("AbpIoCommercial")]
public class AbpIoCommercialResource
{
}
}

2
abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/ar.json

@ -157,7 +157,7 @@
"ABPCLIExplanation": "ABP CLI (واجهة سطر الأوامر) هي أداة سطر أوامر لتنفيذ بعض العمليات الشائعة للحلول المستندة إلى ABP.", "ABPCLIExplanation": "ABP CLI (واجهة سطر الأوامر) هي أداة سطر أوامر لتنفيذ بعض العمليات الشائعة للحلول المستندة إلى ABP.",
"ABPSuiteEasilyCURD": "ABP Suite هي أداة تسمح لك بإنشاء صفحات CRUD بسهولة", "ABPSuiteEasilyCURD": "ABP Suite هي أداة تسمح لك بإنشاء صفحات CRUD بسهولة",
"WeAreHereToHelp": "نحن هنا من أجل <span class=\"zero-text\"> المساعدة </ span>", "WeAreHereToHelp": "نحن هنا من أجل <span class=\"zero-text\"> المساعدة </ span>",
"BrowseOrAskQuestion": "يمكنك تصفح مواضيع المساعدة الخاصة بنا أو البحث في الأسئلة الشائعة ، أو يمكنك طرح سؤال علينا باستخدام <a href=\"{0}\" class=\"text-success\"> نموذج الاتصال </a>.", "BrowseOrAskQuestion": "يمكنك تصفح مواضيع المساعدة الخاصة بنا أو البحث في الأسئلة الشائعة ، أو يمكنك طرح سؤال علينا باستخدام <a href=\"{0}\"> نموذج الاتصال </a>.",
"SearchQuestionPlaceholder": "البحث في الأسئلة المتداولة", "SearchQuestionPlaceholder": "البحث في الأسئلة المتداولة",
"WhatIsTheABPCommercial": "ما هو برنامج ABP التجاري؟", "WhatIsTheABPCommercial": "ما هو برنامج ABP التجاري؟",
"WhatAreDifferencesThanAbpFramework": "ما هي الاختلافات بين إطار عمل ABP مفتوح المصدر وإطار عمل ABP التجاري؟", "WhatAreDifferencesThanAbpFramework": "ما هي الاختلافات بين إطار عمل ABP مفتوح المصدر وإطار عمل ABP التجاري؟",

2
abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/cs.json

@ -157,7 +157,7 @@
"ABPCLIExplanation": "ABP CLI (Command Line Interface) je nástroj příkazového řádku pro provádění některých běžných operací pro řešení založená na ABP.", "ABPCLIExplanation": "ABP CLI (Command Line Interface) je nástroj příkazového řádku pro provádění některých běžných operací pro řešení založená na ABP.",
"ABPSuiteEasilyCURD": "ABP Suite je nástroj, který vám umožní snadno vytvářet stránky CRUD", "ABPSuiteEasilyCURD": "ABP Suite je nástroj, který vám umožní snadno vytvářet stránky CRUD",
"WeAreHereToHelp": "Jsme tu, abychom vám <span class=\"zero-text\">Pomohli</span>", "WeAreHereToHelp": "Jsme tu, abychom vám <span class=\"zero-text\">Pomohli</span>",
"BrowseOrAskQuestion": "Můžete procházet naše témata nápovědy nebo vyhledávat v často kladených dotazech, případně nám můžete položit otázku pomocí <a href=\"{0}\" class=\"text-success\">kontaktního formuláře</a>.", "BrowseOrAskQuestion": "Můžete procházet naše témata nápovědy nebo vyhledávat v často kladených dotazech, případně nám můžete položit otázku pomocí <a href=\"{0}\">kontaktního formuláře</a>.",
"SearchQuestionPlaceholder": "Hledejte v často kladených otázkách", "SearchQuestionPlaceholder": "Hledejte v často kladených otázkách",
"WhatIsTheABPCommercial": "Co je ABP Commercial?", "WhatIsTheABPCommercial": "Co je ABP Commercial?",
"WhatAreDifferencesThanAbpFramework": "Jaké jsou rozdíly mezi open source ABP Framework a ABP Commercial?", "WhatAreDifferencesThanAbpFramework": "Jaké jsou rozdíly mezi open source ABP Framework a ABP Commercial?",

2
abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/de.json

@ -157,7 +157,7 @@
"ABPCLIExplanation": "ABP CLI (Command Line Interface) ist ein Befehlszeilentool zum Ausführen einiger allgemeiner Operationen für ABP-basierte Lösungen.", "ABPCLIExplanation": "ABP CLI (Command Line Interface) ist ein Befehlszeilentool zum Ausführen einiger allgemeiner Operationen für ABP-basierte Lösungen.",
"ABPSuiteEasilyCURD": "ABP Suite ist ein Tool, mit dem Sie einfach CRUD-Seiten erstellen können", "ABPSuiteEasilyCURD": "ABP Suite ist ein Tool, mit dem Sie einfach CRUD-Seiten erstellen können",
"WeAreHereToHelp": "Wir sind hier, um <span class=\"zero-text\">Hilfe</span>", "WeAreHereToHelp": "Wir sind hier, um <span class=\"zero-text\">Hilfe</span>",
"BrowseOrAskQuestion": "Sie können unsere Hilfethemen durchsuchen oder in häufig gestellten Fragen suchen oder uns über das <a href=\"{0}\" class=\"text-success\">Kontaktformular</a> eine Frage stellen.", "BrowseOrAskQuestion": "Sie können unsere Hilfethemen durchsuchen oder in häufig gestellten Fragen suchen oder uns über das <a href=\"{0}\" >Kontaktformular</a> eine Frage stellen.",
"SearchQuestionPlaceholder": "Suche in häufig gestellten Fragen", "SearchQuestionPlaceholder": "Suche in häufig gestellten Fragen",
"WhatIsTheABPCommercial": "Was ist der ABP-Werbespot?", "WhatIsTheABPCommercial": "Was ist der ABP-Werbespot?",
"WhatAreDifferencesThanAbpFramework": "Was sind die Unterschiede zwischen dem Open Source ABP Framework und dem ABP Commercial?", "WhatAreDifferencesThanAbpFramework": "Was sind die Unterschiede zwischen dem Open Source ABP Framework und dem ABP Commercial?",

154
abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/en.json

@ -47,7 +47,7 @@
"UnsubscribeLicenseExpirationEmailSuccessTitle": "Successfully unsubscribed", "UnsubscribeLicenseExpirationEmailSuccessTitle": "Successfully unsubscribed",
"UnsubscribeLicenseExpirationEmailSuccessMessage": "You will not receive license expiration date reminder emails anymore.", "UnsubscribeLicenseExpirationEmailSuccessMessage": "You will not receive license expiration date reminder emails anymore.",
"IndexPageHeroSection": "<span class=\"first-line\">A complete</span><span class=\"second-line\"> web development platform</span><span class=\"third-line\">built-on <img src=\"{0}\" width=\"110\" class=\"ml-1\" /> framework</span>", "IndexPageHeroSection": "<span class=\"first-line\">A complete</span><span class=\"second-line\"> web development platform</span><span class=\"third-line\">built-on <img src=\"{0}\" width=\"110\" class=\"ml-1\" /> framework</span>",
"AbpCommercialShortDescription": "ABP Commercial provides pre-built application modules, rapid application development tooling, professional UI themes, premium support and more.", "AbpCommercialShortDescription": "ABP provides pre-built application modules, rapid application development tooling, professional UI themes, premium support and more.",
"LiveDemo": "Live Demo", "LiveDemo": "Live Demo",
"LiveDemoLead": "<a href=\"{0}\">{1}</a> using your ABP account, <a href=\"{2}\">{3}</a> to abp.io or fill the form below to create a live demo now", "LiveDemoLead": "<a href=\"{0}\">{1}</a> using your ABP account, <a href=\"{2}\">{3}</a> to abp.io or fill the form below to create a live demo now",
"ThereIsAlreadyAnAccountWithTheGivenEmailAddress": "There is already an account with the given email address: <b>{0}</b><br/> You should login with your account to proceed.", "ThereIsAlreadyAnAccountWithTheGivenEmailAddress": "There is already an account with the given email address: <b>{0}</b><br/> You should login with your account to proceed.",
@ -67,7 +67,7 @@
"Send": "Send", "Send": "Send",
"WhatIsABPFramework": "WHAT IS THE ABP FRAMEWORK?", "WhatIsABPFramework": "WHAT IS THE ABP FRAMEWORK?",
"OpenSourceBaseFramework": "Open Source Base Framework", "OpenSourceBaseFramework": "Open Source Base Framework",
"ABPFrameworkExplanation": "<p class=\"lead\">ABP Commercial is based on the ABP Framework, an open source and community driven web application framework for ASP.NET Core.</p><p>ABP Framework provides an excellent infrastructure to write maintainable, extensible and testable code with the best practices.</p><p>Built on and integrated to popular tools you already know. Low learning curve, easy adaptation, comfortable development.</p>", "ABPFrameworkExplanation": "<p class=\"lead\">ABP commercial version is based on the ABP Framework, an open source and community driven web application framework for ASP.NET Core.</p><p>ABP Framework provides an excellent infrastructure to write maintainable, extensible and testable code with the best practices.</p><p>Built on and integrated to popular tools you already know. Low learning curve, easy adaptation, comfortable development.</p>",
"Modular": "Modular", "Modular": "Modular",
"MicroserviceCompatible": "Microservice compatible", "MicroserviceCompatible": "Microservice compatible",
"DomainDrivenDesignInfrastructure": "Domain Driven Design Infrastructure", "DomainDrivenDesignInfrastructure": "Domain Driven Design Infrastructure",
@ -81,8 +81,8 @@
"AdvancedLocalization": "Advanced Localization", "AdvancedLocalization": "Advanced Localization",
"ManyMore": "Many more", "ManyMore": "Many more",
"ExploreTheABPFramework": "Explore the ABP Framework", "ExploreTheABPFramework": "Explore the ABP Framework",
"WhyUseTheABPCommercial": "Why Use The ABP Commercial?", "WhyUseTheABPCommercial": "Why Use The ABP Platform?",
"WhyUseTheABPCommercialExplanation": "<p class=\"lead mt-5\">Building enterprise-grade web applications can be complex and time-consuming.</p><p>ABP Commercial offers the perfect base infrastructure necessary for all the modern enterprise-grade ASP.NET Core based solutions. Right from the design to deployment, the entire development cycle is empowered by the ABP's built-in features & modules.</p>", "WhyUseTheABPCommercialExplanation": "<p class=\"lead mt-5\">Building enterprise-grade web applications can be complex and time-consuming.</p><p>ABP offers the perfect base infrastructure necessary for all the modern enterprise-grade ASP.NET Core based solutions. Right from the design to deployment, the entire development cycle is empowered by the ABP's built-in features & modules.</p>",
"StartupTemplatesShortDescription": "Startup templates make you jump-start your project in a few seconds.", "StartupTemplatesShortDescription": "Startup templates make you jump-start your project in a few seconds.",
"UIFrameworksOptions": "UI frameworks options;", "UIFrameworksOptions": "UI frameworks options;",
"DatabaseProviderOptions": "Database provider options;", "DatabaseProviderOptions": "Database provider options;",
@ -97,7 +97,7 @@
"TextTemplateManagement": "Text Template Management", "TextTemplateManagement": "Text Template Management",
"See All Modules": "SeeAllModules", "See All Modules": "SeeAllModules",
"ABPSuite": "ABP Suite", "ABPSuite": "ABP Suite",
"AbpSuiteShortDescription": "ABP Suite is a complementary tool to ABP Commercial.", "AbpSuiteShortDescription": "ABP Suite is a complementary tool to ABP projects.",
"AbpSuiteExplanation": "It allows you to build web pages in a matter of minutes. It's a .NET Core Global tool that can be installed from the command line. It can create a new ABP solution and generate CRUD pages from the database to the front-end.", "AbpSuiteExplanation": "It allows you to build web pages in a matter of minutes. It's a .NET Core Global tool that can be installed from the command line. It can create a new ABP solution and generate CRUD pages from the database to the front-end.",
"Details": "Details", "Details": "Details",
"LeptonTheme": "Lepton Theme", "LeptonTheme": "Lepton Theme",
@ -110,7 +110,7 @@
"DarkBlueTheme": "Dark Blue Theme", "DarkBlueTheme": "Dark Blue Theme",
"LightTheme": "Light Theme", "LightTheme": "Light Theme",
"ProudToWorkWith": "Proud to Work With", "ProudToWorkWith": "Proud to Work With",
"OurConsumers": "Thousands of enterprises and developers over 70 countries worldwide rely on ABP Commercial.", "OurConsumers": "Thousands of enterprises and developers over 70 countries worldwide rely on ABP.",
"JoinOurConsumers": "Join them and build amazing products fast.", "JoinOurConsumers": "Join them and build amazing products fast.",
"AdditionalServicesExplanation": "Do you need additional or custom services? <strong>We and our partners can provide;</strong>", "AdditionalServicesExplanation": "Do you need additional or custom services? <strong>We and our partners can provide;</strong>",
"CustomProjectDevelopment": "Custom Project Development", "CustomProjectDevelopment": "Custom Project Development",
@ -160,50 +160,50 @@
"ABPCLIExplanation": "ABP CLI (Command Line Interface) is a command line tool to perform some common operations for ABP-based solutions.", "ABPCLIExplanation": "ABP CLI (Command Line Interface) is a command line tool to perform some common operations for ABP-based solutions.",
"ABPSuiteEasilyCURD": "ABP Suite is a tool which allows you to easily create CRUD pages", "ABPSuiteEasilyCURD": "ABP Suite is a tool which allows you to easily create CRUD pages",
"WeAreHereToHelp": "We are Here to <span class=\"zero-text\">Help</span>", "WeAreHereToHelp": "We are Here to <span class=\"zero-text\">Help</span>",
"BrowseOrAskQuestion": "You can browse our help topics or search in the frequently asked questions, or you can ask us a question by using the <a href=\"{0}\" class=\"text-success\">contact form</a>.", "BrowseOrAskQuestion": "You can browse our help topics or search in the frequently asked questions, or you can ask us a question by using the <a href=\"{0}\">contact form</a>.",
"SearchQuestionPlaceholder": "Search in frequently asked questions", "SearchQuestionPlaceholder": "Search in frequently asked questions",
"WhatIsTheABPCommercial": "What is ABP Commercial?", "WhatIsTheABPCommercial": "What is ABP?",
"WhatAreDifferencesThanAbpFramework": "What are the differences between the open source ABP Framework and ABP Commercial?", "WhatAreDifferencesThanAbpFramework": "What are the differences between the open-source ABP and commercial version of ABP?",
"AbpCommercialMetaTitle": " {0} | ABP Commercial", "AbpCommercialMetaTitle": " {0} | ABP",
"AbpCommercialMetaDescription": "A comprehensive web development platform on ABP Framework with pre-built modules, startup templates, rapid dev tools, pro UI themes & premium support.", "AbpCommercialMetaDescription": "A comprehensive web development platform on ABP Framework with pre-built modules, startup templates, rapid dev tools, pro UI themes & premium support.",
"ABPCommercialExplanation": "ABP Commercial is a set of premium modules, tools, themes and services that are built on top of the open source <a target=\"_blank\" href=\"{0}\">ABP framework</a>. ABP Commercial is being developed and supported by the same team behind the ABP framework.", "ABPCommercialExplanation": "ABP Platform is a set of premium modules, tools, themes and services that are built on top of the open source <a target=\"_blank\" href=\"{0}\">ABP framework</a>. ABP is being developed and supported by the same team behind the ABP framework.",
"WhatAreDifferencesThanABPFrameworkExplanation": "<p> <a target=\"_blank\" href=\"{0}\">ABP framework</a> is a modular, themeable, microservice compatible application development framework for ASP.NET Core. It provides a complete architecture and a strong infrastructure to let you focus on your own business code rather than repeating yourself for every new project. It is based on the best practices of software development and popular tools you already know. </p> <p> ABP framework is completely free, open source and community-driven. It also provides a free theme and some pre-built modules (e.g. identity management and tenant management).</p>", "WhatAreDifferencesThanABPFrameworkExplanation": "<p> <a target=\"_blank\" href=\"{0}\">ABP framework</a> is a modular, themeable, microservice compatible application development framework for ASP.NET Core. It provides a complete architecture and a strong infrastructure to let you focus on your own business code rather than repeating yourself for every new project. It is based on the best practices of software development and popular tools you already know. </p> <p> ABP framework is completely free, open source and community-driven. It also provides a free theme and some pre-built modules (e.g. identity management and tenant management).</p>",
"VisitTheFrameworkVSCommercialDocument": "Visit the following link for more information <a href=\"{0}\" target=\"_blank\"> {1} </a>", "VisitTheFrameworkVSCommercialDocument": "Visit the following link for more information <a href=\"{0}\" target=\"_blank\"> {1} </a>",
"ABPCommercialFollowingBenefits": "ABP Commercial adds the following benefits on top of the ABP framework:", "ABPCommercialFollowingBenefits": "ABP commercial version adds the following benefits on top of the ABP framework:",
"Professional": "Professional", "Professional": "Professional",
"UIThemes": "UI Themes", "UIThemes": "UI Themes",
"EnterpriseModules": "Enterprise ready, feature-rich, pre-built <a href=\"{0}\">Application Modules</a> (e.g. Identity Server management, SaaS management, language management)", "EnterpriseModules": "Enterprise ready, feature-rich, pre-built <a href=\"{0}\">Application Modules</a> (e.g. Identity Server management, SaaS management, language management)",
"ToolingToSupport": "Tooling to support your development productivity (e.g. <a href=\"{0}\">ABP Suite</a>)", "ToolingToSupport": "Tooling to support your development productivity (e.g. <a href=\"{0}\">ABP Suite</a>)",
"PremiumSupportLink": "Premium <a href=\"{0}\" target=\"_blank\">Support</a>", "PremiumSupportLink": "Premium <a href=\"{0}\" target=\"_blank\">Support</a>",
"WhatDoIDownloadABPCommercial": "What do I download when I purchase the ABP Commercial?", "WhatDoIDownloadABPCommercial": "What do I download when I purchase the ABP commercial version?",
"CreateUnlimitedSolutions": "Once you purchase an ABP Commercial license, you will be able to create unlimited solutions like described in the <a href=\"{0}\">Getting Started</a> document.", "CreateUnlimitedSolutions": "Once you purchase an ABP Commercial license, you will be able to create unlimited solutions like described in the <a href=\"{0}\">Getting Started</a> document.",
"ABPCommercialSolutionExplanation": "When you create a new application, you get a Visual Studio solution (a startup template) based on your preferences. The downloaded solution has commercial modules and themes already installed and configured for you. You can remove a pre-installed module or add another module if you like. All modules and themes use NuGet/NPM packages by default.", "ABPCommercialSolutionExplanation": "When you create a new application, you get a Visual Studio solution (a startup template) based on your preferences. The downloaded solution has commercial modules and themes already installed and configured for you. You can remove a pre-installed module or add another module if you like. All modules and themes use NuGet/NPM packages by default.",
"StartDevelopWithTutorials": "The downloaded solution is well architected and documented. You can start developing your own business code based on it following the <a href=\"{0}\">tutorials</a>.", "StartDevelopWithTutorials": "The downloaded solution is well architected and documented. You can start developing your own business code based on it following the <a href=\"{0}\">tutorials</a>.",
"TryTheCommercialDemo": "You can try the <a href=\"{0}\">Live Demo</a> to see a sample application created using the ABP Commercial startup template.", "TryTheCommercialDemo": "You can try the <a href=\"{0}\">Live Demo</a> to see a sample application created using the ABP startup template.",
"HowManyProducts": "How many different products/solutions can I build using the ABP Commercial?", "HowManyProducts": "How many different products/solutions can I build using the ABP?",
"HowManyProductsExplanation": "You can create as many projects as you want during your active license period; there is no limit! After your license expires, you cannot create new projects, but you can continue to develop the projects you have downloaded and deploy them to an unlimited count of servers.", "HowManyProductsExplanation": "You can create as many projects as you want during your active license period; there is no limit! After your license expires, you cannot create new projects, but you can continue to develop the projects you have downloaded and deploy them to an unlimited count of servers.",
"HowManyDevelopers": "How many developers can work on the ABP Commercial?", "HowManyDevelopers": "How many developers can work on the ABP?",
"HowManyDevelopersExplanation": "ABP Commercial licenses are per developer. Different license types have different developer limits. However, you can add more developers to any license type whenever you need. Check out the <a href=\"{0}\">Plans & Pricing</a> page for license types, developer limits and additional developer costs.", "HowManyDevelopersExplanation": "ABP licenses are per developer. Different license types have different developer limits. However, you can add more developers to any license type whenever you need. Check out the <a href=\"{0}\">Plans & Pricing</a> page for license types, developer limits and additional developer costs.",
"ChangingLicenseType": "Can I upgrade my license type later?", "ChangingLicenseType": "Can I upgrade my license type later?",
"ChangingLicenseTypeExplanation": "You can upgrade to a higher license by paying the difference within your active license period. When you upgrade to a higher license plan, you get the benefits of the new plan, but the license upgrade does not change the license expiry date. Besides, you can also add new developer seats to your existing license, check out the \"How many developers can work on the ABP Commercial?\" FAQ.", "ChangingLicenseTypeExplanation": "You can upgrade to a higher license by paying the difference within your active license period. When you upgrade to a higher license plan, you get the benefits of the new plan, but the license upgrade does not change the license expiry date. Besides, you can also add new developer seats to your existing license, check out the \"How many developers can work on the ABP?\" FAQ.",
"LicenseExtendUpgradeDiff": "What is the difference between license extend and upgrade?", "LicenseExtendUpgradeDiff": "What is the difference between license extend and upgrade?",
"LicenseExtendUpgradeDiffExplanation": "<strong>Extending:</strong> By extending/renewing your license, you will continue to get premium support and get major or minor updates for the modules and themes. Besides, you will be able to continue creating new projects. And you will still be able to use ABP Suite, which speeds up your development. When you extend your license, 1 year is added to your license expiry date. <hr/><strong>Upgrading:</strong> By upgrading your license, you will be promoted to a higher license plan, which will allow you to get additional benefits. Check out the <a href=\"/pricing\">license comparison table</a> to see the differences between the license plans. <strong>On the other hand, when you upgrade, your license expiry date will not change!</strong> To extend your license end date, you need to extend your license.", "LicenseExtendUpgradeDiffExplanation": "<strong>Extending:</strong> By extending/renewing your license, you will continue to get premium support and get major or minor updates for the modules and themes. Besides, you will be able to continue creating new projects. And you will still be able to use ABP Suite, which speeds up your development. When you extend your license, 1 year is added to your license expiry date. <hr/><strong>Upgrading:</strong> By upgrading your license, you will be promoted to a higher license plan, which will allow you to get additional benefits. Check out the <a href=\"/pricing\">license comparison table</a> to see the differences between the license plans. <strong>On the other hand, when you upgrade, your license expiry date will not change!</strong> To extend your license end date, you need to extend your license.",
"LicenseRenewalCost": "What is the license renewal cost after 1 year?", "LicenseRenewalCost": "What is the license renewal cost after 1 year?",
"LicenseRenewalCostExplanation": "The renewal (extend) price of the standard Team License is ${0}, standard Business License is ${1} and standard Enterprise License is ${2}. If you are already a customer, <a href='{3}' target='_blank'>log into your account</a> to review the current renewal pricing.", "LicenseRenewalCostExplanation": "The renewal (extend) price of the standard Team License is ${0}, standard Business License is ${1} and standard Enterprise License is ${2}. If you are already a customer, <a href='{3}' target='_blank'>log into your account</a> to review the current renewal pricing.",
"HowDoIRenewMyLicense": "How do I renew my license?", "HowDoIRenewMyLicense": "How do I renew my license?",
"HowDoIRenewMyLicenseExplanation": "You can renew your license by navigating to the <a href='{0}' target='_blank'>organization management page</a>. In order to take advantage of our discounted Early Renewal rates, ensure you renew before your license expires. Don't worry about not knowing when your Early Renewal opportunity closes; you'll receive 3 reminder e-mails before your subscription expires. We'll send them 30 days, 7 days and 1 day before expiration.", "HowDoIRenewMyLicenseExplanation": "You can renew your license by navigating to the <a href='{0}' target='_blank'>organization management page</a>. In order to take advantage of our discounted Early Renewal rates, ensure you renew before your license expires. Don't worry about not knowing when your Early Renewal opportunity closes; you'll receive 3 reminder e-mails before your subscription expires. We'll send them 30 days, 7 days and 1 day before expiration.",
"IsSourceCodeIncluded": "Does my license include the source code of the commercial modules and themes?", "IsSourceCodeIncluded": "Does my license include the source code of the pro modules and themes?",
"IsSourceCodeIncludedExplanation1": "Depends on the license type you've purchased:", "IsSourceCodeIncludedExplanation1": "Depends on the license type you've purchased:",
"IsSourceCodeIncludedExplanation2": "<strong>Team</strong>: Your solution uses the modules and themes as NuGet and NPM packages. It doesn't include their source code. This way, you can easily upgrade these modules and themes whenever a new version is available. However, you can not get the source code of these modules and themes.", "IsSourceCodeIncludedExplanation2": "<strong>Team</strong>: Your solution uses the modules and themes as NuGet and NPM packages. It doesn't include their source code. This way, you can easily upgrade these modules and themes whenever a new version is available. However, you can not get the source code of these modules and themes.",
"IsSourceCodeIncludedExplanation3": "<strong>Business/Enterprise</strong>: In addition to the Team license, you are able to download the source code of any module or theme you need. You can even remove the NuGet/NPM package references for a particular module and add its source code directly to your solution to fully change it.", "IsSourceCodeIncludedExplanation3": "<strong>Business/Enterprise</strong>: In addition to the Team license, you are able to download the source code of any module or theme you need. You can even remove the NuGet/NPM package references for a particular module and add its source code directly to your solution to fully change it.",
"IsSourceCodeIncludedExplanation4": "<p>Including the source code of a module to your solution gives you the maximum freedom to customize that module. However, it will then not be possible to automatically upgrade the module when a new version is released.</p><p>None of the licenses include the ABP Suite source code, which is an external tool that generates code for you and assists your development.</p><p>Check out the <a href=\"{0}\">Plans & Pricing</a> page for other differences between the license types.</p>", "IsSourceCodeIncludedExplanation4": "<p>Including the source code of a module to your solution gives you the maximum freedom to customize that module. However, it will then not be possible to automatically upgrade the module when a new version is released.</p><p>None of the licenses include the ABP Suite and ABP Studio source code, which is external tools that generates code for you and assists your development.</p><p>Check out the <a href=\"{0}\">Plans & Pricing</a> page for other differences between the license types.</p>",
"ChangingDevelopers": "Can I change the registered developers of my organization in the future?", "ChangingDevelopers": "Can I change the registered developers of my organization in the future?",
"ChangingDevelopersExplanation": "In addition to adding new developers to your license, you can also change the existing developers (you can remove a developer and add a new one to the same seat) without any additional cost.", "ChangingDevelopersExplanation": "In addition to adding new developers to your license, you can also change the existing developers (you can remove a developer and add a new one to the same seat) without any additional cost.",
"WhatHappensWhenLicenseEnds": "What happens when my license period ends?", "WhatHappensWhenLicenseEnds": "What happens when my license period ends?",
"WhatHappensWhenLicenseEndsExplanation1": "The ABP Commercial license is a <a href=\"{0}\" target=\"_blank\">perpetual license</a>. After your license expires, you can continue developing your project. And you are not obliged to renew your license. Your license comes with a one-year update and support plan out of the box. In order to continue to get new features, performance enhancements, bug fixes, support and continue using ABP Suite, you need to renew your license. When your license expires;", "WhatHappensWhenLicenseEndsExplanation1": "The ABP license is a <a href=\"{0}\" target=\"_blank\">perpetual license</a>. After your license expires, you can continue developing your project. And you are not obliged to renew your license. Your license comes with a one-year update and support plan out of the box. In order to continue to get new features, performance enhancements, bug fixes, support and continue using ABP Suite, you need to renew your license. When your license expires;",
"WhatHappensWhenLicenseEndsExplanation2": "You can not create new solutions using the ABP Commercial, but you can continue developing your existing applications forever.", "WhatHappensWhenLicenseEndsExplanation2": "You can not create new solutions using the ABP commercial version, but you can continue developing your existing applications forever.",
"WhatHappensWhenLicenseEndsExplanation3": "You will be able to get updates for the modules and themes within your MINOR version (except RC or Preview versions). For example, if you are using v3.2.0 of a module, you can still get updates for v3.2.x (v3.2.1, v3.2.5... etc.) of that module. But you cannot get updates for the next major or minor version (like v3.3.0, v3.3.3, 4.x.x.. etc.). For example, when your license expired, the latest release was v4.4.3, and later, it published both 4.4.4 version and 4.5.0 version, you would be able to access the v4.4.X but you wouldn't be access the v4.5.X.", "WhatHappensWhenLicenseEndsExplanation3": "You will be able to get updates for the modules and themes within your MINOR version (except RC or Preview versions). For example, if you are using v3.2.0 of a module, you can still get updates for v3.2.x (v3.2.1, v3.2.5... etc.) of that module. But you cannot get updates for the next major or minor version (like v3.3.0, v3.3.3, 4.x.x.. etc.). For example, when your license expired, the latest release was v4.4.3, and later, it published both 4.4.4 version and 4.5.0 version, you would be able to access the v4.4.X but you wouldn't be access the v4.5.X.",
"WhatHappensWhenLicenseEndsExplanation4": "You can not install new modules and themes added to the ABP Commercial platform after your license ends.", "WhatHappensWhenLicenseEndsExplanation4": "You can not install new modules and themes added to the ABP commercial platform after your license ends.",
"WhatHappensWhenLicenseEndsExplanation5": "You can not use the ABP Suite.", "WhatHappensWhenLicenseEndsExplanation5": "You can not use the ABP Suite.",
"WhatHappensWhenLicenseEndsExplanation6": "You can not get the <a href=\"{0}\">premium support</a> anymore.", "WhatHappensWhenLicenseEndsExplanation6": "You can not get the <a href=\"{0}\">premium support</a> anymore.",
"WhatHappensWhenLicenseEndsExplanation7": "You can extend (renew) your license if you want to continue getting these benefits. If you extend your license within <strong>{3} days</strong> after your license expires, the following discounts will be applied: Team License {0}; Business License {1}; Enterprise License {2}.", "WhatHappensWhenLicenseEndsExplanation7": "You can extend (renew) your license if you want to continue getting these benefits. If you extend your license within <strong>{3} days</strong> after your license expires, the following discounts will be applied: Team License {0}; Business License {1}; Enterprise License {2}.",
@ -212,11 +212,11 @@
"WhenShouldIRenewMyLicense": "When should I renew my license?", "WhenShouldIRenewMyLicense": "When should I renew my license?",
"WhenShouldIRenewMyLicenseExplanation": "If you renew your license within <strong>{3} days</strong> after your license expires, the following discounts will be applied: Team License {0}; Business License {1}; Enterprise License {2}. However, if you renew your license after <strong>{3} days</strong> since the expiry date of your license, the renewal price will be the same as the license purchase price, and there will be no discount on your renewal.", "WhenShouldIRenewMyLicenseExplanation": "If you renew your license within <strong>{3} days</strong> after your license expires, the following discounts will be applied: Team License {0}; Business License {1}; Enterprise License {2}. However, if you renew your license after <strong>{3} days</strong> since the expiry date of your license, the renewal price will be the same as the license purchase price, and there will be no discount on your renewal.",
"TrialPlan": "Do you have a trial plan?", "TrialPlan": "Do you have a trial plan?",
"TrialPlanExplanation": "Yes, to start your free trial, contact <a href=\"mailto:marketing@volosoft.com?subject=ABP Commercial — Trial License Request\">marketing@volosoft.com</a>. We also offer a 30-day money-back guarantee for the Team license, no questions asked! You can request a full refund within the first 30 days of the license purchase. We provide a 60% refund within 30 days for Business and Enterprise licenses. This is because the Business and Enterprise licenses contain the full source-code of all the modules and themes.", "TrialPlanExplanation": "Yes, to start your free trial, contact <a href=\"mailto:marketing@volosoft.com?subject=ABP — Trial License Request\">marketing@volosoft.com</a>. We also offer a 30-day money-back guarantee for the Team license, no questions asked! You can request a full refund within the first 30 days of the license purchase. We provide a 60% refund within 30 days for Business and Enterprise licenses. This is because the Business and Enterprise licenses contain the full source-code of all the modules and themes.",
"DoYouAcceptBankWireTransfer": "Do you accept bank wire transfers?", "DoYouAcceptBankWireTransfer": "Do you accept bank wire transfers?",
"DoYouAcceptBankWireTransferExplanation": "Yes, we accept bank wire transfers.<br/>After sending the license fee via bank transfer, send your receipt and requested license type to accounting@volosoft.com.<br/>Our international bank account information:", "DoYouAcceptBankWireTransferExplanation": "Yes, we accept bank wire transfers.<br/>After sending the license fee via bank transfer, send your receipt and requested license type to accounting@volosoft.com.<br/>Our international bank account information:",
"HowToUpgrade": "How to upgrade existing applications when a new version is available?", "HowToUpgrade": "How to upgrade existing applications when a new version is available?",
"HowToUpgradeExplanation1": "When you create a new application using ABP Commercial, all the modules and themes are used as NuGet and NPM packages. So, you can easily upgrade the packages when a new version is available.", "HowToUpgradeExplanation1": "When you create a new application using ABP, all the modules and themes are used as NuGet and NPM packages. So, you can easily upgrade the packages when a new version is available.",
"HowToUpgradeExplanation2": "In addition to the standard NuGet/NPM upgrades, <a href=\"{0}\">ABP CLI</a> provides an update command that automatically finds and upgrades all ABP-related packages in your solution.", "HowToUpgradeExplanation2": "In addition to the standard NuGet/NPM upgrades, <a href=\"{0}\">ABP CLI</a> provides an update command that automatically finds and upgrades all ABP-related packages in your solution.",
"DatabaseSupport": "Which database systems are supported?", "DatabaseSupport": "Which database systems are supported?",
"DatabaseSupportExplanation": "ABP Framework itself is database agnostic and can work with any database provider by its nature. Check out the <a href=\"{0}\" target=\"_blank\">Data Access document</a> for a list of currently implemented providers.", "DatabaseSupportExplanation": "ABP Framework itself is database agnostic and can work with any database provider by its nature. Check out the <a href=\"{0}\" target=\"_blank\">Data Access document</a> for a list of currently implemented providers.",
@ -225,15 +225,15 @@
"UISupportExplanation": "ABP Framework itself is UI framework agnostic and can work with any UI framework. However, startup templates, module UIs and themes were not implemented for all UI frameworks. Check out the <a href=\"{0}\">Getting Started document</a> for the up-to-date list of UI options.", "UISupportExplanation": "ABP Framework itself is UI framework agnostic and can work with any UI framework. However, startup templates, module UIs and themes were not implemented for all UI frameworks. Check out the <a href=\"{0}\">Getting Started document</a> for the up-to-date list of UI options.",
"MicroserviceSupport": "Does it support the microservice architecture?", "MicroserviceSupport": "Does it support the microservice architecture?",
"MicroserviceSupportExplanation1": "One of the major goals of the ABP framework is to provide a convenient infrastructure to create microservice solutions. Check out the <a href=\"{0}\">Microservice Architecture document</a> to understand how it helps with creating microservice systems.", "MicroserviceSupportExplanation1": "One of the major goals of the ABP framework is to provide a convenient infrastructure to create microservice solutions. Check out the <a href=\"{0}\">Microservice Architecture document</a> to understand how it helps with creating microservice systems.",
"MicroserviceSupportExplanation2": "All the ABP Commercial modules are designed to support microservice deployment scenarios (with its own API and database) by following the <a href=\"{0}\">Module Development Best Practices document</a>.", "MicroserviceSupportExplanation2": "All the ABP modules are designed to support microservice deployment scenarios (with its own API and database) by following the <a href=\"{0}\">Module Development Best Practices document</a>.",
"MicroserviceSupportExplanation3": "We provide a sample <a href=\"{0}\">Microservice Demo Solution</a> that demonstrates a microservice architecture implementation to help you create your own solution.", "MicroserviceSupportExplanation3": "We provide a sample <a href=\"{0}\">Microservice Demo Solution</a> that demonstrates a microservice architecture implementation to help you create your own solution.",
"MicroserviceSupportExplanation4": "So, the short answer is: \"<strong>Yes, it supports microservice architecture</strong>\".", "MicroserviceSupportExplanation4": "So, the short answer is: \"<strong>Yes, it supports microservice architecture</strong>\".",
"MicroserviceSupportExplanation5": "However, a microservice system is a solution, and every solution will have different requirements, network topology, communication scenarios, authentication possibilities, database sharding/partitioning decisions, runtime configurations, 3rd party system integrations and many more.", "MicroserviceSupportExplanation5": "However, a microservice system is a solution, and every solution will have different requirements, network topology, communication scenarios, authentication possibilities, database sharding/partitioning decisions, runtime configurations, 3rd party system integrations and many more.",
"MicroserviceSupportExplanation6": "The ABP Framework and ABP Commercial provide infrastructure for microservice scenarios, microservice compatible modules, samples and documentation to help you build your own solution. But don't expect to directly download your dream solution pre-built for you. You will need to understand it and bring specific parts together based on your requirements.", "MicroserviceSupportExplanation6": "ABP provides infrastructure for microservice scenarios, microservice compatible modules, samples and documentation to help you build your own solution. But don't expect to directly download your dream solution pre-built for you. You will need to understand it and bring specific parts together based on your requirements.",
"WhereCanIDownloadSourceCode": "Where can I download the source-code?", "WhereCanIDownloadSourceCode": "Where can I download the source-code?",
"WhereCanIDownloadSourceCodeExplanation": "You can download the source code of all the ABP modules, Angular packages and themes via ABP Suite or ABP CLI. Check out <a href=\"{0}\">How to download the source-code?</a>", "WhereCanIDownloadSourceCodeExplanation": "You can download the source code of all the ABP modules, Angular packages and themes via ABP Suite or ABP CLI. Check out <a href=\"{0}\">How to download the source-code?</a>",
"ComputerLimitation": "How many computers can a developer login when developing ABP?", "ComputerLimitation": "How many computers can a developer login when developing ABP?",
"ComputerLimitationExplanation": "We specifically permit <strong>{0} computers</strong> per individual/licensed developer. Whenever there is a need for a developer to develop ABP Commercial products on a third machine, an e-mail should be sent to license@abp.io explaining the situation, and we will then make the appropriate allocation in our system.", "ComputerLimitationExplanation": "We specifically permit <strong>{0} computers</strong> per individual/licensed developer. Whenever there is a need for a developer to develop ABP based products on a third machine, an e-mail should be sent to license@abp.io explaining the situation, and we will then make the appropriate allocation in our system.",
"RefundPolicy": "Do you have a refund policy?", "RefundPolicy": "Do you have a refund policy?",
"RefundPolicyExplanation": "You can request a refund within <strong>30 days</strong> of your license purchase. The Business and Enterprise license types have source-code download options; therefore, we provide a 60% refund within 30 days for Business and Enterprise licenses. In addition, no refunds are made for renewals and second license purchases.", "RefundPolicyExplanation": "You can request a refund within <strong>30 days</strong> of your license purchase. The Business and Enterprise license types have source-code download options; therefore, we provide a 60% refund within 30 days for Business and Enterprise licenses. In addition, no refunds are made for renewals and second license purchases.",
"HowCanIRefundVat": "How can I refund VAT?", "HowCanIRefundVat": "How can I refund VAT?",
@ -243,7 +243,7 @@
"HowCanIGetMyInvoice": "How can I get my invoice?", "HowCanIGetMyInvoice": "How can I get my invoice?",
"HowCanIGetMyInvoiceExplanation": "There are 2 payment gateways for purchasing a license: Iyzico and 2Checkout. If you purchase your license through the 2Checkout gateway, it sends the PDF invoice to your email address; check out <a href=\"https://knowledgecenter.2checkout.com/Documentation/03Billing-and-payments/Payment-operations/How-do-invoices-work\">2Checkout invoicing.</a> If you purchase through the Iyzico gateway, with a custom purchase link or via a bank wire transfer, we will prepare and send your invoice. You can request or download your invoice from the <a href=\"{0}\">organization management page</a>. Before contacting us for the invoice, check your organization management page!", "HowCanIGetMyInvoiceExplanation": "There are 2 payment gateways for purchasing a license: Iyzico and 2Checkout. If you purchase your license through the 2Checkout gateway, it sends the PDF invoice to your email address; check out <a href=\"https://knowledgecenter.2checkout.com/Documentation/03Billing-and-payments/Payment-operations/How-do-invoices-work\">2Checkout invoicing.</a> If you purchase through the Iyzico gateway, with a custom purchase link or via a bank wire transfer, we will prepare and send your invoice. You can request or download your invoice from the <a href=\"{0}\">organization management page</a>. Before contacting us for the invoice, check your organization management page!",
"Forum": "Forum", "Forum": "Forum",
"SupportExplanation": "ABP Commercial license provides a premium forum support by a team consisting of the ABP Framework experts.", "SupportExplanation": "ABP license provides a premium forum support by a team consisting of the ABP Framework experts.",
"PrivateTicket": "Private Ticket", "PrivateTicket": "Private Ticket",
"PrivateTicketExplanation": "Enterprise License also includes a private support with e-mail and ticket system.", "PrivateTicketExplanation": "Enterprise License also includes a private support with e-mail and ticket system.",
"AbpSuiteExplanation1": "ABP Suite allows you to build web pages in a matter of minutes. It's a .NET Core Global tool that can be installed from the command line.", "AbpSuiteExplanation1": "ABP Suite allows you to build web pages in a matter of minutes. It's a .NET Core Global tool that can be installed from the command line.",
@ -271,7 +271,7 @@
"Document": "Document", "Document": "Document",
"UsingABPSuiteToCURD": "Using ABP Suite for CRUD Page Generation & Tooling", "UsingABPSuiteToCURD": "Using ABP Suite for CRUD Page Generation & Tooling",
"SeeABPSuiteDocument": "Check out the ABP Suite document to learn the usage of ABP Suite.", "SeeABPSuiteDocument": "Check out the ABP Suite document to learn the usage of ABP Suite.",
"AskQuestionsOnSupport": "You can ask questions on ABP Commercial Support.", "AskQuestionsOnSupport": "You can ask questions on ABP Support.",
"Documentation": "Documentation", "Documentation": "Documentation",
"SeeModulesDocument": "See the modules page for a list of all the PRO modules.", "SeeModulesDocument": "See the modules page for a list of all the PRO modules.",
"Pricing": "Pricing", "Pricing": "Pricing",
@ -322,7 +322,7 @@
"GithubUsername": "GitHub username", "GithubUsername": "GitHub username",
"PhoneNumber": "Phone number", "PhoneNumber": "Phone number",
"Country": "Country", "Country": "Country",
"DescribeABPCommercialUsage": "Describe the project you are planning to develop based on APB Commercial", "DescribeABPCommercialUsage": "Describe the project you are planning to develop based on APB",
"DiscountRequestCertifyInformationMessage": "I certify that all information is true and correct.", "DiscountRequestCertifyInformationMessage": "I certify that all information is true and correct.",
"DiscountRequestReceived": "We have received your discount request.", "DiscountRequestReceived": "We have received your discount request.",
"DiscountRequestStatusMessage": "We will respond to you after checking the information you have provided.", "DiscountRequestStatusMessage": "We will respond to you after checking the information you have provided.",
@ -371,7 +371,7 @@
"DDDBookEmailBody": "Thank you. <br /> To download your book, <a href=\"{0}\">click here</a>.", "DDDBookEmailBody": "Thank you. <br /> To download your book, <a href=\"{0}\">click here</a>.",
"StartFree": "Start free", "StartFree": "Start free",
"FreeTrial": "Free Trial", "FreeTrial": "Free Trial",
"AcceptsMarketingCommunications": " Yes, I`d like to receive ABP Commercial marketing communications.", "AcceptsMarketingCommunications": " Yes, I`d like to receive ABP related marketing news.",
"PurposeOfUsage": "Purpose of usage", "PurposeOfUsage": "Purpose of usage",
"Choose": "- Choose -", "Choose": "- Choose -",
"CompanyOrganizationName": "Company / Organization name", "CompanyOrganizationName": "Company / Organization name",
@ -400,8 +400,8 @@
"DowngradeLicensePlanExplanation": "You cannot downgrade your existing license plan. But you can purchase a new lower license plan and continue your development on the new license. After you purchase a lower license, you just need to login to your new license plan via ABP CLI command: ` abp login <username> -o <organization> `.", "DowngradeLicensePlanExplanation": "You cannot downgrade your existing license plan. But you can purchase a new lower license plan and continue your development on the new license. After you purchase a lower license, you just need to login to your new license plan via ABP CLI command: ` abp login <username> -o <organization> `.",
"LicenseTransfer": "Can a license be transferred from one developer to another?", "LicenseTransfer": "Can a license be transferred from one developer to another?",
"LicenseTransferExplanation": "Yes! When you purchase a license, you become the license holder, hence you will have access to the organization management page. An organization has owner and developer roles. Owners can manage the developer seats and assign developers. Each assigned developer will log in via ABP CLI command into the system and will have development and support permissions.", "LicenseTransferExplanation": "Yes! When you purchase a license, you become the license holder, hence you will have access to the organization management page. An organization has owner and developer roles. Owners can manage the developer seats and assign developers. Each assigned developer will log in via ABP CLI command into the system and will have development and support permissions.",
"UserOwnerDescription": "The 'Owner' of the organization is the admin of this account. He/she manages the organization by purchasing licenses and allocating developers. An 'Owner' cannot write code in the ABP Commercial projects, cannot download the ABP sample projects, and cannot ask questions on the support website. If you want to do all these, you have to add yourself as a developer too.", "UserOwnerDescription": "The 'Owner' of the organization is the admin of this account. He/she manages the organization by purchasing licenses and allocating developers. An 'Owner' cannot write code in the ABP projects, cannot download the ABP sample projects, and cannot ask questions on the support website. If you want to do all these, you have to add yourself as a developer too.",
"UserDeveloperDescription": "The 'Developers' can write code in the ABP Commercial projects, download the ABP sample projects, and ask questions on the support website. On the other hand, the 'Developers' cannot manage this organization.", "UserDeveloperDescription": "The 'Developers' can write code in the ABP projects, download the ABP sample projects, and ask questions on the support website. On the other hand, the 'Developers' cannot manage this organization.",
"RemoveCurrentUserFromOrganizationWarningMessage": "You are removing yourself from your own organization. You will no longer be able to manage this organization, do you confirm?", "RemoveCurrentUserFromOrganizationWarningMessage": "You are removing yourself from your own organization. You will no longer be able to manage this organization, do you confirm?",
"RenewExistingOrganizationOrCreateNewOneMessage": "You can renew the license of your organization(s) by clicking the below \"Extend Now\" button(s) and thus you can extend the license expiration date by 1 year. If you continue to checkout, you will have a new organization. Do you want to continue with a new organization?", "RenewExistingOrganizationOrCreateNewOneMessage": "You can renew the license of your organization(s) by clicking the below \"Extend Now\" button(s) and thus you can extend the license expiration date by 1 year. If you continue to checkout, you will have a new organization. Do you want to continue with a new organization?",
"PurchaseTrialOrganizationOrCreateNewOneMessage": "You have a trial license. To purchase your trial license click the Purchase Now button. If you continue to checkout, you will have a new organization. Do you want to continue with a new organization?", "PurchaseTrialOrganizationOrCreateNewOneMessage": "You have a trial license. To purchase your trial license click the Purchase Now button. If you continue to checkout, you will have a new organization. Do you want to continue with a new organization?",
@ -421,7 +421,7 @@
"UIFrameworks": "UI Frameworks", "UIFrameworks": "UI Frameworks",
"UsefulLinks": "Useful Links", "UsefulLinks": "Useful Links",
"Platform": "Platform", "Platform": "Platform",
"CoolestCompaniesUseABPCommercial": "The coolest companies already use <span class=\"fw-bold\">ABP Commercial.</span>", "CoolestCompaniesUseABPCommercial": "The coolest companies already use <span class=\"fw-bold\">ABP.</span>",
"UserInterface": "User Interface", "UserInterface": "User Interface",
"APIGateway": "API Gateway", "APIGateway": "API Gateway",
"Microservice": "Microservice", "Microservice": "Microservice",
@ -462,12 +462,12 @@
"LightDarkAndSemiDarkThemes": "Light, Dark and Semi-Dark", "LightDarkAndSemiDarkThemes": "Light, Dark and Semi-Dark",
"LeptonXThemeExplanation": "Lepton Theme can change your theme according to your system settings.", "LeptonXThemeExplanation": "Lepton Theme can change your theme according to your system settings.",
"PRO": "PRO", "PRO": "PRO",
"WelcomeToABPCommercial": "Welcome to <span class=\"gradient-commercial\">ABP Commercial!</span>", "WelcomeToABPCommercial": "Welcome to <span class=\"gradient-commercial\">ABP Platform!</span>",
"YourAccountDetails": "Your Account Details", "YourAccountDetails": "Your Account Details",
"OrganizationName": "Organization Name", "OrganizationName": "Organization Name",
"AddDevelopers": "Add Developers", "AddDevelopers": "Add Developers",
"StartDevelopment": "Start Development", "StartDevelopment": "Start Development",
"CreateAndRunApplicationUsingStartupTemplate": "Learn how to create and run a new web application using the ABP Commercial startup template.", "CreateAndRunApplicationUsingStartupTemplate": "Learn how to create and run a new web application using the ABP startup templates.",
"CommunityDescription2": "<span class=\"fw-6\">community.abp.io</span> is a place where people can share ABP-related articles. Search for articles, tutorials, code samples, case studies and meet people in the same lane as you.", "CommunityDescription2": "<span class=\"fw-6\">community.abp.io</span> is a place where people can share ABP-related articles. Search for articles, tutorials, code samples, case studies and meet people in the same lane as you.",
"UseABPSuiteExplanation": "Use ABP Suite to download the source-code of the modules and themes.", "UseABPSuiteExplanation": "Use ABP Suite to download the source-code of the modules and themes.",
"ManageModulesWithSuite": "You can also manage your ABP modules with Suite.", "ManageModulesWithSuite": "You can also manage your ABP modules with Suite.",
@ -480,9 +480,9 @@
"MultipleUIOptionsExplanation": "We love different ways to create the User Interface. This startup solution provides three different UI framework options for your business application.", "MultipleUIOptionsExplanation": "We love different ways to create the User Interface. This startup solution provides three different UI framework options for your business application.",
"MultipleDatabaseOptions": "Multiple Database Options", "MultipleDatabaseOptions": "Multiple Database Options",
"MultipleDatabaseOptionsExplanation": "You have two database provider options (in addition to using both in a single application). Use Entity Framework Core to work with any relational database and optionally use Dapper when you need to write low-level queries for better performance. MongoDB is another option if you need to use a document-based NoSQL database. While these providers are well-integrated, abstracted and pre-configured, you can actually interact with any database system that you can use with .NET.", "MultipleDatabaseOptionsExplanation": "You have two database provider options (in addition to using both in a single application). Use Entity Framework Core to work with any relational database and optionally use Dapper when you need to write low-level queries for better performance. MongoDB is another option if you need to use a document-based NoSQL database. While these providers are well-integrated, abstracted and pre-configured, you can actually interact with any database system that you can use with .NET.",
"ModularArchitectureExplanation2": "Modularity is a first-class citizen in the ABP.IO platform. All the application functionalities are split into well-isolated optional modules. The startup solution already comes with the fundamental <a href=\"/modules\" class=\"text-primary\">ABP Commercial modules</a> pre-installed. You can also create your own modules to build a modular system for your own application.", "ModularArchitectureExplanation2": "Modularity is a first-class citizen in the ABP.IO platform. All the application functionalities are split into well-isolated optional modules. The startup solution already comes with the fundamental <a href=\"/modules\" class=\"text-primary\">ABP modules</a> pre-installed. You can also create your own modules to build a modular system for your own application.",
"MultiTenancyForSaasBusiness": "Multi-Tenancy for your SaaS Business", "MultiTenancyForSaasBusiness": "Multi-Tenancy for your SaaS Business",
"MultiTenancyForSaasBusinessExplanation": "ABP Commercial provides a complete, end-to-end multi-tenancy system to create your SaaS (Software-as-a-Service) systems. It allows the tenants to share or have their own databases with on-the-fly database creation and migration system.", "MultiTenancyForSaasBusinessExplanation": "ABP provides a complete, end-to-end multi-tenancy system to create your SaaS (Software-as-a-Service) systems. It allows the tenants to share or have their own databases with on-the-fly database creation and migration system.",
"MicroserviceStartupSolution": "Microservice Startup Solution", "MicroserviceStartupSolution": "Microservice Startup Solution",
"MicroserviceArchitectureExplanation2": "You can get it for your next microservice system to take advantage of the pre-built base solution and distilled experience.", "MicroserviceArchitectureExplanation2": "You can get it for your next microservice system to take advantage of the pre-built base solution and distilled experience.",
"PreIntegratedTools": "Pre-Integrated to popular tools", "PreIntegratedTools": "Pre-Integrated to popular tools",
@ -496,7 +496,7 @@
"LandingWebsite": "Landing Website", "LandingWebsite": "Landing Website",
"LandingWebsiteExplanation": "A generic landing/public website that can be used for several purposes, like introducing your company, selling your products, etc.", "LandingWebsiteExplanation": "A generic landing/public website that can be used for several purposes, like introducing your company, selling your products, etc.",
"ABPFrameworkEBook": "Mastering ABP Framework e-book", "ABPFrameworkEBook": "Mastering ABP Framework e-book",
"MasteringAbpFrameworkEBookDescription": "Included within your ABP Commercial license", "MasteringAbpFrameworkEBookDescription": "Included within your ABP license",
"FullName": "Full Name", "FullName": "Full Name",
"LicenseTypeNotCorrect": "The license type is not correct!", "LicenseTypeNotCorrect": "The license type is not correct!",
"Trainings": "Trainings", "Trainings": "Trainings",
@ -517,7 +517,7 @@
"SendTrainingRequest": "Send Training Request", "SendTrainingRequest": "Send Training Request",
"OnlyEnglishVersionOfThisDocumentIsTheRecentAndValid": "* The English version of this document is the most up-to-date, and the English version will prevail in any dispute.", "OnlyEnglishVersionOfThisDocumentIsTheRecentAndValid": "* The English version of this document is the most up-to-date, and the English version will prevail in any dispute.",
"Pricing_Page_Title": "Pricing & Plans", "Pricing_Page_Title": "Pricing & Plans",
"Pricing_Page_Description": "Choose the features and functionality your business needs today. Buy an ABP Commercial license and create unlimited projects.", "Pricing_Page_Description": "Choose the features and functionality your business needs today. Buy an ABP license and create unlimited projects.",
"Pricing_Page_HurryUp": "Hurry Up!", "Pricing_Page_HurryUp": "Hurry Up!",
"Pricing_Page_BuyLicense": "Buy a license at <strong>2021 prices</strong> until January 16!", "Pricing_Page_BuyLicense": "Buy a license at <strong>2021 prices</strong> until January 16!",
"Pricing_Page_ValidForExistingCustomers": "Also valid for existing customers and license renewals.", "Pricing_Page_ValidForExistingCustomers": "Also valid for existing customers and license renewals.",
@ -537,16 +537,16 @@
"Pricing_Page_Hint14": "Team and Business licenses have incident/question count limit. If you buy additional developer licenses, your incident limit increases by {0} (for the Team License) or {1} (for the Business License) per developer.", "Pricing_Page_Hint14": "Team and Business licenses have incident/question count limit. If you buy additional developer licenses, your incident limit increases by {0} (for the Team License) or {1} (for the Business License) per developer.",
"Pricing_Page_Hint15": "Only Enterprise License includes private support. You can send an e-mail directly to the ABP Team or ask questions on support.abp.io with a private ticket option. The private tickets are not visible to the public.", "Pricing_Page_Hint15": "Only Enterprise License includes private support. You can send an e-mail directly to the ABP Team or ask questions on support.abp.io with a private ticket option. The private tickets are not visible to the public.",
"Pricing_Page_Hint16": "You can download the source-code of all ABP themes. You may want to add the source code to your solution to make radical changes or just keep it for yourself for security reasons.", "Pricing_Page_Hint16": "You can download the source-code of all ABP themes. You may want to add the source code to your solution to make radical changes or just keep it for yourself for security reasons.",
"Pricing_Page_Testimonial_1": "ABP Commercial allowed SC Ventures to deliver a bank-grade multi-tenant silo-database SaaS platform in 9 months to support the accounts receivable / accounts payable supply chain financing of significant value invoices from multiple integrated anchors. The modularity of ABP made it possible for the team to deliver in record time, pass all VAPT, and deploy the containerized microservices stack via full CI/CD and pipelines into production.", "Pricing_Page_Testimonial_1": "ABP allowed SC Ventures to deliver a bank-grade multi-tenant silo-database SaaS platform in 9 months to support the accounts receivable / accounts payable supply chain financing of significant value invoices from multiple integrated anchors. The modularity of ABP made it possible for the team to deliver in record time, pass all VAPT, and deploy the containerized microservices stack via full CI/CD and pipelines into production.",
"Pricing_Page_Testimonial_2": "We see the value of using ABP Commercial to reduce the overhead of custom development projects. The team is able to unify the code pattern in different project streams. We see more potential in the framework for us to build new features faster than before. We trust we will be constantly seeing the value of leveraging ABP Commercial.", "Pricing_Page_Testimonial_2": "We see the value of using ABP to reduce the overhead of custom development projects. The team is able to unify the code pattern in different project streams. We see more potential in the framework for us to build new features faster than before. We trust we will be constantly seeing the value of leveraging ABP.",
"Pricing_Page_Testimonial_3": "We love ABP. We don't have to write everything from scratch. We start from out-of-the-box features and just focus on what we really need to write. Also, ABP is well-architected and the code is high quality with fewer bugs. If we had to write everything we needed on our own, we might have to spend years. One more thing we like is that the new version, issue fixing, or improvement comes out very soon every other week. We don't wait too long.", "Pricing_Page_Testimonial_3": "We love ABP. We don't have to write everything from scratch. We start from out-of-the-box features and just focus on what we really need to write. Also, ABP is well-architected and the code is high quality with fewer bugs. If we had to write everything we needed on our own, we might have to spend years. One more thing we like is that the new version, issue fixing, or improvement comes out very soon every other week. We don't wait too long.",
"Pricing_Page_Testimonial_4": "ABP Commercial is a fantastic product would recommend. Commercial products to market for our customers in a single configurable platform. The jump starts that the framework and tooling provide any team is worth every cent. ABP Commercial was the best fit for our needs.", "Pricing_Page_Testimonial_4": "ABP is a fantastic product would recommend. Commercial products to market for our customers in a single configurable platform. The jump starts that the framework and tooling provide any team is worth every cent. ABP was the best fit for our needs.",
"Pricing_Page_Testimonial_5": "ABP Framework is not only a framework, but it is also a guide for project development/management, because it provides DDD, GenericRepository, DI, Microservice, and Modularity training. Even if you are not going to use the framework itself, you can develop yourself with docs.abp.io which is well and professionally prepared (OpenIddict, Redis, Quartz etc.). Because many things are pre-built, it shortens project development time significantly (Such as login page, exception handling, data filtering, seeding, audit logging, localization, auto API controller etc.). As an example from our application, I have used Local Event Bus for stock control. So, I am able to manage order movements by writing stock handler. It is wonderful not to lose time for CreationTime, CreatorId. They are being filled automatically.", "Pricing_Page_Testimonial_5": "ABP Framework is not only a framework, but it is also a guide for project development/management, because it provides DDD, GenericRepository, DI, Microservice, and Modularity training. Even if you are not going to use the framework itself, you can develop yourself with docs.abp.io which is well and professionally prepared (OpenIddict, Redis, Quartz etc.). Because many things are pre-built, it shortens project development time significantly (Such as login page, exception handling, data filtering, seeding, audit logging, localization, auto API controller etc.). As an example from our application, I have used Local Event Bus for stock control. So, I am able to manage order movements by writing stock handler. It is wonderful not to lose time for CreationTime, CreatorId. They are being filled automatically.",
"Pricing_Page_Testimonial_6": "ABP Framework is a good framework but it needs time to understand the different layers, classes, and libraries it uses (especially ABP). I spent a lot of time reading the code base, but ABP Commercial saved us time in creating the project specialty entities (AR) and the repository linked to each of them. I liked also the approach used in ABP is very mature; we know is based on DDD and monolith.", "Pricing_Page_Testimonial_6": "ABP Framework is a good framework but it needs time to understand the different layers, classes, and libraries it uses (especially ABP). I spent a lot of time reading the code base, but ABP saved us time in creating the project specialty entities (AR) and the repository linked to each of them. I liked also the approach used in ABP is very mature; we know is based on DDD and monolith.",
"Pricing_Page_Testimonial_7": "As a startup, we need to iterate quickly and spend minimal time on boilerplate and non-core features.\nOur engineers range from highly experienced to junior engineers, and we needed a common understanding and a way to share technical and domain knowledge, ABP allowed us to do this due to their great guides and documentation. \nThere are things we haven't had to worry about since they work out of the box with ABP. \nABP helped us streamline rapid prototyping and development, less than 4 weeks from feature inception to production. With all its premium features included in the license, ABP has given us, \"Startup in a Box\" on the Software Engineering Side.", "Pricing_Page_Testimonial_7": "As a startup, we need to iterate quickly and spend minimal time on boilerplate and non-core features.\nOur engineers range from highly experienced to junior engineers, and we needed a common understanding and a way to share technical and domain knowledge, ABP allowed us to do this due to their great guides and documentation. \nThere are things we haven't had to worry about since they work out of the box with ABP. \nABP helped us streamline rapid prototyping and development, less than 4 weeks from feature inception to production. With all its premium features included in the license, ABP has given us, \"Startup in a Box\" on the Software Engineering Side.",
"Pricing_Page_Testimonial_8": "I would recommend ABP commercial to all those who want to expand the range of products available to their customers. It's fantastic when need to use a distributed enterprise environment (Angular, WPF, Win&Linux). In addition to their products, we love their support, which makes our job faster and easier. We already know that we have found a great partner for the future who will support us in expanding our business.", "Pricing_Page_Testimonial_8": "I would recommend ABP to all those who want to expand the range of products available to their customers. It's fantastic when need to use a distributed enterprise environment (Angular, WPF, Win&Linux). In addition to their products, we love their support, which makes our job faster and easier. We already know that we have found a great partner for the future who will support us in expanding our business.",
"Pricing_Page_Testimonial_9": "We are a company of 2 employees that's been in business for over 20 years.\nIn terms of our experience with ABP Commercial, we were approached by a client who requested that we develop a new human resources application in a modern environment to replace their 25-year-old Access application. We decided to transition from a desktop solution to a web-based one.\n\nAt the time, we had very little knowledge of web applications and .NET, but we stumbled upon ABP Commercial, and with the help of ABP Framework, technical documentation, and ABP Suite, we were able to not only develop the application to the client's specifications but also successfully work within a .NET environment within a year.", "Pricing_Page_Testimonial_9": "We are a company of 2 employees that's been in business for over 20 years.\nIn terms of our experience with ABP, we were approached by a client who requested that we develop a new human resources application in a modern environment to replace their 25-year-old Access application. We decided to transition from a desktop solution to a web-based one.\n\nAt the time, we had very little knowledge of web applications and .NET, but we stumbled upon ABP, and with the help of ABP Framework, technical documentation, and ABP Suite, we were able to not only develop the application to the client's specifications but also successfully work within a .NET environment within a year.",
"AbpBookDownloadArea_ClaimYourEBook": "Claim your <span class='gradient-framework'>Mastering ABP Framework</span> E-Book", "AbpBookDownloadArea_ClaimYourEBook": "Claim your ABP Framework E-book",
"AddMemberModal_Warning_1": "If the <strong>username</strong> you are trying to add doesn't exist in the system, please ask your team member to register on <a href='{0}/Account/Register'>{0}</a> and share the username of his/her account with you.", "AddMemberModal_Warning_1": "If the <strong>username</strong> you are trying to add doesn't exist in the system, please ask your team member to register on <a href='{0}/Account/Register'>{0}</a> and share the username of his/her account with you.",
"MyOrganizations_Detail_WelcomeMessage": "Welcome to your organization, {0}", "MyOrganizations_Detail_WelcomeMessage": "Welcome to your organization, {0}",
"MyOrganizations_Detail_OrganizationManagement": "Organization <span class=\"gradient-commercial\">Management</span>", "MyOrganizations_Detail_OrganizationManagement": "Organization <span class=\"gradient-commercial\">Management</span>",
@ -607,7 +607,7 @@
"Purchase_IncludedDeveloperInfo": "{0} {1} included.", "Purchase_IncludedDeveloperInfo": "{0} {1} included.",
"Purchase_LicenseExtraDeveloperPurchaseMessage": "The <span class=\"fw-bold\">{0} License</span> includes {1} developers. You can add additional developers.", "Purchase_LicenseExtraDeveloperPurchaseMessage": "The <span class=\"fw-bold\">{0} License</span> includes {1} developers. You can add additional developers.",
"StartupTemplates_Page_Title": "ABP Startup Templates", "StartupTemplates_Page_Title": "ABP Startup Templates",
"StartupTemplates_Page_Description": "ABP Commercial allows you to build solutions with any level of complexity. It provides two main pre-built startup solutions. You can select the one close to your requirements and build your own custom solution on top of it.", "StartupTemplates_Page_Description": "ABP allows you to build solutions with any level of complexity. It provides two main pre-built startup solutions. You can select the one close to your requirements and build your own custom solution on top of it.",
"MicroserviceStartupSolutionForDotnet": "Microservice Startup Solution for .NET", "MicroserviceStartupSolutionForDotnet": "Microservice Startup Solution for .NET",
"MonolithSolutionForDotnet": "Monolith (modular) Solution for .NET", "MonolithSolutionForDotnet": "Monolith (modular) Solution for .NET",
"TrainingDetailsHeaderInfo_TrainingHour": "{0} hours", "TrainingDetailsHeaderInfo_TrainingHour": "{0} hours",
@ -619,9 +619,9 @@
"Contact_Page_Title": "Contact with ABP Development Team", "Contact_Page_Title": "Contact with ABP Development Team",
"Contact_Page_Description": "Contact with ABP Development team, if you need any help or share your thoughts and opinions! ABP Support Team is ready to help.", "Contact_Page_Description": "Contact with ABP Development team, if you need any help or share your thoughts and opinions! ABP Support Team is ready to help.",
"Demo_Page_Title": "Create a Demo", "Demo_Page_Title": "Create a Demo",
"Demo_Page_Description": "Create a free demo to see a sample application created using the ABP Commercial startup template. Don't repeat yourself for common application requirements.", "Demo_Page_Description": "Create a free demo to see a sample application created using the ABP startup templates. Don't repeat yourself for common application requirements.",
"Discounted_Page_Title": "Discounted pricing", "Discounted_Page_Title": "Discounted pricing",
"Discounted_Page_Description": "Choose the features and functionality your business needs today. Buy an ABP Commercial license and create unlimited projects", "Discounted_Page_Description": "Choose the features and functionality your business needs today. Buy an ABP license and create unlimited projects",
"Faq_Page_Title": "Frequently Asked Questions (FAQ)", "Faq_Page_Title": "Frequently Asked Questions (FAQ)",
"Faq_Page_Description": "Do you have any questions? Search frequently asked questions or ask us a question using the contact form.", "Faq_Page_Description": "Do you have any questions? Search frequently asked questions or ask us a question using the contact form.",
"Faq_Page_SwiftCode": "SWIFT Code", "Faq_Page_SwiftCode": "SWIFT Code",
@ -634,11 +634,11 @@
"ProjectCreatedSuccess_Page_Title": "Your project created", "ProjectCreatedSuccess_Page_Title": "Your project created",
"ProjectCreatedSuccess_Page_Description": "Your ABP project created successfully!", "ProjectCreatedSuccess_Page_Description": "Your ABP project created successfully!",
"Suite_Page_Title": "ABP Suite", "Suite_Page_Title": "ABP Suite",
"Suite_Page_Description": "ABP Commercial provides rapid application development tooling to increase developer productivity. ABP Suite allows you to create CRUD pages easily.", "Suite_Page_Description": "ABP provides rapid application development tooling to increase developer productivity. ABP Suite allows you to create CRUD pages easily.",
"Themes_Page_Title": "ABP Themes", "Themes_Page_Title": "ABP Themes",
"Themes_Page_Description": "ABP Commercial provides multiple professional, modern UI themes. Create a free demo to have a quick view of what the UI looks like.", "Themes_Page_Description": "ABP provides multiple professional, modern UI themes. Create a free demo to have a quick view of what the UI looks like.",
"Tools_Page_Title": "Rapid Application Development Tools", "Tools_Page_Title": "Rapid Application Development Tools",
"Tools_Page_Description": "ABP Commercial provides rapid application development tooling to increase developer productivity. ABP Suite allows you to create CRUD pages easily.", "Tools_Page_Description": "ABP provides rapid application development tooling to increase developer productivity. ABP Suite allows you to create CRUD pages easily.",
"DeveloperPrice": "Developer Price", "DeveloperPrice": "Developer Price",
"AdditionalDeveloperPaymentInfoSection_AdditionalDevelopers": "{0} <small>developers</small>", "AdditionalDeveloperPaymentInfoSection_AdditionalDevelopers": "{0} <small>developers</small>",
"LicenseRemainingDays": "for <span class=\"text-white\"> {0} </span> days", "LicenseRemainingDays": "for <span class=\"text-white\"> {0} </span> days",
@ -669,10 +669,10 @@
"Landing_Page_ChatModule": "Chat", "Landing_Page_ChatModule": "Chat",
"Landing_Page_DocsModule": "Docs", "Landing_Page_DocsModule": "Docs",
"Landing_Page_FileManagementModule": "File Management", "Landing_Page_FileManagementModule": "File Management",
"Landing_Page_CustomerStory_1": "ABP Commercial allowed SC Ventures to deliver a bank-grade multi-tenant silo-database SaaS platform in 9 months to support the accounts receivable / accounts payable supply chain financing of significant value invoices from multiple integrated anchors. The modularity of ABP made it possible for the team to deliver in record time, pass all VAPT, and deploy the containerized microservices stack via full CI/CD and pipelines into production.", "Landing_Page_CustomerStory_1": "ABP allowed SC Ventures to deliver a bank-grade multi-tenant silo-database SaaS platform in 9 months to support the accounts receivable / accounts payable supply chain financing of significant value invoices from multiple integrated anchors. The modularity of ABP made it possible for the team to deliver in record time, pass all VAPT, and deploy the containerized microservices stack via full CI/CD and pipelines into production.",
"Landing_Page_CustomerStory_2": "We see the value of using ABP Commercial to reduce the overhead of custom development projects. The team can unify the code pattern in different project streams. We see more potential in the framework for us to build new features faster than before. We trust we will be constantly seeing the value of leveraging ABP Commercial.", "Landing_Page_CustomerStory_2": "We see the value of using ABP to reduce the overhead of custom development projects. The team can unify the code pattern in different project streams. We see more potential in the framework for us to build new features faster than before. We trust we will be constantly seeing the value of leveraging ABP.",
"Landing_Page_CustomerStory_3": "We love ABP. We don't have to write everything from scratch. We start from out-of-the-box features and just focus on what we really need to write. Also, ABP is well-architected and the code is high quality with fewer bugs. If we had to write everything we needed on our own, we might have to spend years. One more thing we like is that the new version, or issue fixing, or improvement comes out very soon\n every other week. We don't wait too long.", "Landing_Page_CustomerStory_3": "We love ABP. We don't have to write everything from scratch. We start from out-of-the-box features and just focus on what we really need to write. Also, ABP is well-architected and the code is high quality with fewer bugs. If we had to write everything we needed on our own, we might have to spend years. One more thing we like is that the new version, or issue fixing, or improvement comes out very soon\n every other week. We don't wait too long.",
"Landing_Page_CustomerStory_4": "ABP Commercial is a fantastic product would recommend. Commercial products to market for our customers in a single configurable platform. The jump starts that the framework and tooling provide any team is worth every cent. ABP Commercial was the best fit for our needs.", "Landing_Page_CustomerStory_4": "ABP is a fantastic product would recommend. Commercial products to market for our customers in a single configurable platform. The jump starts that the framework and tooling provide any team is worth every cent. ABP was the best fit for our needs.",
"Landing_Page_AdditionalServices": "Custom or volume license, onboarding, live training & support, custom project development, porting existing projects and more...", "Landing_Page_AdditionalServices": "Custom or volume license, onboarding, live training & support, custom project development, porting existing projects and more...",
"Landing_Page_IncludedDeveloperLicenses": "Included <strong>{0}</strong> developer licenses", "Landing_Page_IncludedDeveloperLicenses": "Included <strong>{0}</strong> developer licenses",
"Landing_Page_SeeOnDemo": "See on Demo", "Landing_Page_SeeOnDemo": "See on Demo",
@ -736,7 +736,7 @@
"Landing_Page_PaymentModuleDescription_1": "Provides integration for different payment gateways.", "Landing_Page_PaymentModuleDescription_1": "Provides integration for different payment gateways.",
"Landing_Page_PaymentModuleDescription_2": "This module provides integration for payment gateways, so you can easily get payment from your customers.", "Landing_Page_PaymentModuleDescription_2": "This module provides integration for payment gateways, so you can easily get payment from your customers.",
"Landing_Page_PaymentModuleDescription_3": "This module supports the following payment gateways", "Landing_Page_PaymentModuleDescription_3": "This module supports the following payment gateways",
"Welcome_Page_UseSameCredentialForCommercialWebsites": "Use the same credentials for both <a href=\"https://commercial.abp.io\" class=\"text-primary\">commercial.abp.io</a> and <a href=\"https://support.abp.io\" class=\"text-primary\">support.abp.io</a>.", "Welcome_Page_UseSameCredentialForCommercialWebsites": "Use the same credentials for both <a href=\"https://abp.io\" class=\"text-primary\">abp.io</a> and <a href=\"https://abp.io/support\" class=\"text-primary\">abp.io/support</a>.",
"WatchCrudPagesVideo": "Watch the \"Creating CRUD Pages with ABP Suite\" Video!", "WatchCrudPagesVideo": "Watch the \"Creating CRUD Pages with ABP Suite\" Video!",
"WatchGeneratingFromDatabaseVideo": "Watch the \"ABP Suite: Generating CRUD Pages From Existing Database Tables\" Video!", "WatchGeneratingFromDatabaseVideo": "Watch the \"ABP Suite: Generating CRUD Pages From Existing Database Tables\" Video!",
"WatchTakeCloserLookVideo": "Watch the \"Take a closer look at the code generation: ABP Suite\" Video!", "WatchTakeCloserLookVideo": "Watch the \"Take a closer look at the code generation: ABP Suite\" Video!",
@ -745,15 +745,15 @@
"GetConfirmationEmail": "<a href=\"javascript:void(0);\" id=\"{0}\" class=\"text-decoration-underline\">Click here to get a verification email</a> if you haven't got it before.", "GetConfirmationEmail": "<a href=\"javascript:void(0);\" id=\"{0}\" class=\"text-decoration-underline\">Click here to get a verification email</a> if you haven't got it before.",
"WhichLicenseTypeYouAreInterestedIn": "Which license type you are interested in?", "WhichLicenseTypeYouAreInterestedIn": "Which license type you are interested in?",
"DontTakeOurWordForIt": "Don't take our word for it...", "DontTakeOurWordForIt": "Don't take our word for it...",
"ReadAbpCommercialUsersWantYouToKnow": "Read what ABP Commercial users want you to know", "ReadAbpCommercialUsersWantYouToKnow": "Read what ABP users want you to know",
"Testimonial_ShortDescription_1": "The modularity of ABP made it possible for the team to deliver in time.", "Testimonial_ShortDescription_1": "The modularity of ABP made it possible for the team to deliver in time.",
"Testimonial_ShortDescription_2": "Build new features faster than before.", "Testimonial_ShortDescription_2": "Build new features faster than before.",
"Testimonial_ShortDescription_3": "We start from out-of-the-box features and just focus on what we really need to write.", "Testimonial_ShortDescription_3": "We start from out-of-the-box features and just focus on what we really need to write.",
"Testimonial_ShortDescription_4": "ABP Commercial was the best fit for our needs.", "Testimonial_ShortDescription_4": "ABP was the best fit for our needs.",
"OnlineReviewersOnAbpCommercial": "Online Reviews on ABP Commercial", "OnlineReviewersOnAbpCommercial": "Online Reviews on ABP",
"SeeWhatToldAboutAbpCommercial": "See what has been told about ABP Commercial and write your thoughts if you want.", "SeeWhatToldAboutAbpCommercial": "See what has been told about ABP and write your thoughts if you want.",
"BlazoriseLicense": "Do we need to buy a Blazorise license?", "BlazoriseLicense": "Do we need to buy a Blazorise license?",
"BlazoriseLicenseExplanation": "We have an agreement between Volosoft and Megabit, with this agreement Blazorise license is bundled with ABP Commercial products therefore our customers do not need to purchase an extra Blazorise license.", "BlazoriseLicenseExplanation": "We have an agreement between Volosoft and Megabit, with this agreement Blazorise license is bundled with ABP products therefore our customers do not need to purchase an extra Blazorise license.",
"ExtendPaymentInfoSection_DeveloperPrice": "{0}x Additional Developer(s)", "ExtendPaymentInfoSection_DeveloperPrice": "{0}x Additional Developer(s)",
"ExtendPaymentInfoSection_DiscountRate": "Discount {0}%", "ExtendPaymentInfoSection_DiscountRate": "Discount {0}%",
"TotalNetPrice": "Total Net Price", "TotalNetPrice": "Total Net Price",
@ -812,7 +812,7 @@
"UpgradePaymentInfoSection_LicenseRenewalPrice": "License renewal", "UpgradePaymentInfoSection_LicenseRenewalPrice": "License renewal",
"Total": "Total", "Total": "Total",
"SupportPolicyFaqTitle": "What is your support policy?", "SupportPolicyFaqTitle": "What is your support policy?",
"SupportPolicyFaqExplanation": "We do support only the active and the previous major version. We do not guarantee a patch release for the 3rd and older major versions. For example, if the active version is 7.0.0, we will release patch releases for both 6.x.x and 7.x.x. Besides, we provide support only for ABP Framework and ABP Commercial related issues. That means no support is given for the 3rd party applications, cloud services and other peripheral libraries used by ABP products. We will use commercially reasonable efforts to provide our customers with technical support during \"Volosoft Bilisim A.S\"s official business hours. On the other hand, we do not commit to a service-level agreement (SLA) response time, but we will try to respond to the technical issues as quickly as possible within our official working hours. Unless a special agreement is made with the customer, we only provide support at https://support.abp.io. We also have private email support, which is only available to Enterprise License holders.", "SupportPolicyFaqExplanation": "We do support only the active and the previous major version. We do not guarantee a patch release for the 3rd and older major versions. For example, if the active version is 7.0.0, we will release patch releases for both 6.x.x and 7.x.x. Besides, we provide support only for ABP Framework and ABP related issues. That means no support is given for the 3rd party applications, cloud services and other peripheral libraries used by ABP products. We will use commercially reasonable efforts to provide our customers with technical support during \"Volosoft Bilisim A.S\"s official business hours. On the other hand, we do not commit to a service-level agreement (SLA) response time, but we will try to respond to the technical issues as quickly as possible within our official working hours. Unless a special agreement is made with the customer, we only provide support at https://support.abp.io. We also have private email support, which is only available to Enterprise License holders.",
"TotalDevelopers": "Total {0} developer(s)", "TotalDevelopers": "Total {0} developer(s)",
"CustomPurchaseExplanation": "Tailored to your specific needs", "CustomPurchaseExplanation": "Tailored to your specific needs",
"WhereDidYouHearAboutUs": "Where did you hear about us?", "WhereDidYouHearAboutUs": "Where did you hear about us?",
@ -845,11 +845,11 @@
"BlazoriseSupportExplanation1": "Sign up for a new account at <a href=\"https://blazorise.com/support/register\">blazorise.com/support/register</a> with the same email address as your abp.io account. Leave the \"License Key\" entry blank. <strong>It must be the same email address as your email account on abp.io</strong>.", "BlazoriseSupportExplanation1": "Sign up for a new account at <a href=\"https://blazorise.com/support/register\">blazorise.com/support/register</a> with the same email address as your abp.io account. Leave the \"License Key\" entry blank. <strong>It must be the same email address as your email account on abp.io</strong>.",
"BlazoriseSupportExplanation2": "Verify your email address by checking your email box. Check your spam box if you don't see an email in your inbox!", "BlazoriseSupportExplanation2": "Verify your email address by checking your email box. Check your spam box if you don't see an email in your inbox!",
"BlazoriseSupportExplanation3": "Log into the Blazorise support website at <a href=\"https://blazorise.com/support/login\">blazorise.com/support/login</a>.", "BlazoriseSupportExplanation3": "Log into the Blazorise support website at <a href=\"https://blazorise.com/support/login\">blazorise.com/support/login</a>.",
"BlazoriseSupportExplanation4": "If you have an active ABP Commercial license, you will also have a Blazorise PRO license. You can get your Blazorise license key at <a href=\"https://blazorise.com/support/user/manage/license\">blazorise.com/support/user/manage/license</a>.", "BlazoriseSupportExplanation4": "If you have an active ABP Paid License, you will also have a Blazorise PRO license. You can get your Blazorise license key at <a href=\"https://blazorise.com/support/user/manage/license\">blazorise.com/support/user/manage/license</a>.",
"BlazoriseSupportExplanation5": "You can post your questions on the support website and generate a product token for your application.", "BlazoriseSupportExplanation5": "You can post your questions on the support website and generate a product token for your application.",
"AbpLiveTrainingPackages": "ABP Live Training Packages", "AbpLiveTrainingPackages": "ABP Live Training Packages",
"Releases": "Releases", "Releases": "Releases",
"ReleasesDescription": "This page contains detailed information about each release. You can see all the closed pull requests for a specific release. For overall milestone developments, you can check out the <a href=\"https://docs.abp.io/en/commercial/latest/release-notes\">brief release notes page</a>.", "ReleasesDescription": "This page contains detailed information about each release. You can see all the closed pull requests for a specific release. For overall milestone developments, you can check out the <a href=\"https://abp.io/docs/latest/release-notes\">brief release notes page</a>.",
"ReleaseDate": "Release Date", "ReleaseDate": "Release Date",
"Labels": "Labels", "Labels": "Labels",
"PreRelease": "Pre-release", "PreRelease": "Pre-release",
@ -907,8 +907,8 @@
"ReleaseLogs_Pr": "Pull Request #{0} - {1}", "ReleaseLogs_Pr": "Pull Request #{0} - {1}",
"NoLabels": "No labels", "NoLabels": "No labels",
"DoesTheSubscriptionRenewAutomatically": "Does the subscription renew automatically?", "DoesTheSubscriptionRenewAutomatically": "Does the subscription renew automatically?",
"DoesTheSubscriptionRenewAutomaticallyExplanation": "The ABP Commercial does not have an auto-renewal billing model. Therefore <strong>your subscription will not be automatically renewed</strong> at the end of your license period. If you want to continue to have the benefits of ABP Commercial, you need to manually renew it at the <a href=\"/my-organizations\">organization management page</a>. If you have multiple organizations, click the \"Manage\" button at your expiring organization and then click the \"Extend Now\" button to renew your license. You may also want to take a look at the <a href=\"/faq#what-happens-when-license-ends\">What Happens When My License Ends?</a> section.", "DoesTheSubscriptionRenewAutomaticallyExplanation": "ABP.IO platform does not have an auto-renewal billing model. Therefore <strong>your subscription will not be automatically renewed</strong> at the end of your license period. If you want to continue to have the benefits of ABP.IO platform, you need to manually renew it at the <a href=\"{0}\">organization management page</a>. If you have multiple organizations, click the \"Manage\" button at your expiring organization and then click the \"Extend Now\" button to renew your license. You may also want to take a look at the <a href=\"/faq#what-happens-when-license-ends\">What Happens When My License Ends?</a> section.",
"DoesTheSubscriptionRenewAutomaticallyExplanationAutoRenewal": "ABP Commercial allows you to auto-renew your license. This is an optional service. You can toggle this feature when you purchase a new license or later enable it from your <a href=\"https://commercial.abp.io/my-organizations\">organization management page.</a> Auto-renewal toggle is in the 'Payments Method' section of the <a href=\"https://commercial.abp.io/my-organizations\">organization management page.</a> If you want to turn off auto-renewal, visit <a href=\"https://commercial.abp.io/my-organizations\">organization management page, </a>go to the 'Payments Method' section and uncheck the 'Automatic Renewal' checkbox. When you turn off the auto-renewal feature, you must renew your license yourself.", "DoesTheSubscriptionRenewAutomaticallyExplanationAutoRenewal": "ABP allows you to auto-renew your license. This is an optional service. You can toggle this feature when you purchase a new license or later enable it from your <a href=\"https://abp.io/my-organizations\">organization management page.</a> Auto-renewal toggle is in the 'Payments Method' section of the <a href=\"https://abp.io/my-organizations\">organization management page.</a> If you want to turn off auto-renewal, visit <a href=\"https://abp.io/my-organizations\">organization management page, </a>go to the 'Payments Method' section and uncheck the 'Automatic Renewal' checkbox. When you turn off the auto-renewal feature, you must renew your license yourself.",
"ExtraQuestionCreditsFaqTitle": "Can I purchase extra support question credits?", "ExtraQuestionCreditsFaqTitle": "Can I purchase extra support question credits?",
"ExtraQuestionCreditsFaqExplanation": "Yes, you can. To buy extra question credits, send an e-mail to <a href=\"mailto:info@abp.io\">info@abp.io</a> with your organization's name. Here's the price list for the extra question credits: <ul><li>50 questions pack $999</li><li>25 questions pack $625</li><li>15 questions pack $450</li></ul>", "ExtraQuestionCreditsFaqExplanation": "Yes, you can. To buy extra question credits, send an e-mail to <a href=\"mailto:info@abp.io\">info@abp.io</a> with your organization's name. Here's the price list for the extra question credits: <ul><li>50 questions pack $999</li><li>25 questions pack $625</li><li>15 questions pack $450</li></ul>",
"AlreadyBetaTester": "You have already joined the beta tester program.", "AlreadyBetaTester": "You have already joined the beta tester program.",
@ -945,9 +945,9 @@
"PricingExplanation2": "30 days money back guarantee — <a href=\"/faq#refund-policy\">Learn more</a>", "PricingExplanation2": "30 days money back guarantee — <a href=\"/faq#refund-policy\">Learn more</a>",
"MoneyBackGuaranteeText": "* 30-day money-back guarantee on all licenses! 100% refund on Team, 60% refund on Business and Enterprise licenses within 30 days.", "MoneyBackGuaranteeText": "* 30-day money-back guarantee on all licenses! 100% refund on Team, 60% refund on Business and Enterprise licenses within 30 days.",
"MobileApplicationStartupTemplates": "Mobile Application Startup Templates", "MobileApplicationStartupTemplates": "Mobile Application Startup Templates",
"MobileApplicationStartupTemplates_Description1": "Integrated mobile application startup templates for your ABP Commercial solutions.", "MobileApplicationStartupTemplates_Description1": "Integrated mobile application startup templates for your ABP solutions.",
"CreatePowerfulLineOfBusinessApplicationsUsingABPMobileStartupTemplates": "Create Powerful line-of-business Applications using ABP Mobile Startup Templates", "CreatePowerfulLineOfBusinessApplicationsUsingABPMobileStartupTemplates": "Create Powerful line-of-business Applications using ABP Mobile Startup Templates",
"CreatePowerfulLineOfBusinessApplicationsUsingABPMobileStartupTemplates_Description1": "ABP Commercial provides two mobile application startup templates implemented with <span class=\"text-highlight\">React Native</span> and <span class=\"text-highlight\">.NET MAUI.</span> When you create your new ABP-based solution, you will also have basic startup applications connected to your backend APIs.", "CreatePowerfulLineOfBusinessApplicationsUsingABPMobileStartupTemplates_Description1": "ABP provides two mobile application startup templates implemented with <span class=\"text-highlight\">React Native</span> and <span class=\"text-highlight\">.NET MAUI.</span> When you create your new ABP-based solution, you will also have basic startup applications connected to your backend APIs.",
"CreatePowerfulLineOfBusinessApplicationsUsingABPMobileStartupTemplates_Description2": "The application has a pre-built authentication token cycle, <span class=\"text-highlight\">multi-language support, multi-tenancy support, login, forgot password, profile management and a user management page</span>. You can add your own business logic and customize it based on your requirements.", "CreatePowerfulLineOfBusinessApplicationsUsingABPMobileStartupTemplates_Description2": "The application has a pre-built authentication token cycle, <span class=\"text-highlight\">multi-language support, multi-tenancy support, login, forgot password, profile management and a user management page</span>. You can add your own business logic and customize it based on your requirements.",
"TwoFrameworkOptions": "Two Framework Options", "TwoFrameworkOptions": "Two Framework Options",
"TwoFrameworkOptions_Description": "ABP provides both <span class=\"text-highlight\">React Native</span> and <span class=\"text-highlight\">.NET MAUI</span> mobile startup templates. This way, you can choose the one that best suits your needs. Both apps reuse code at the highest rate between iOS and Android platforms.", "TwoFrameworkOptions_Description": "ABP provides both <span class=\"text-highlight\">React Native</span> and <span class=\"text-highlight\">.NET MAUI</span> mobile startup templates. This way, you can choose the one that best suits your needs. Both apps reuse code at the highest rate between iOS and Android platforms.",
@ -1011,7 +1011,7 @@
"UITheme&Layout": "UI Theme & Layout", "UITheme&Layout": "UI Theme & Layout",
"UITheme&Layout_THEPROBLEM_Description": "When addressing UI concerns, a range of challenges surfaces. These include establishing the groundwork for a responsive, contemporary, and adaptable UI kit with a consistent appearance and a host of features like navigation menus, headers, toolbars, footers, widgets, and more.", "UITheme&Layout_THEPROBLEM_Description": "When addressing UI concerns, a range of challenges surfaces. These include establishing the groundwork for a responsive, contemporary, and adaptable UI kit with a consistent appearance and a host of features like navigation menus, headers, toolbars, footers, widgets, and more.",
"UITheme&Layout_THEPROBLEM_Description2": "Even if you opt for a pre-designed theme, seamlessly integrating it into your project could demand days of development. An additional hurdle lies in upgrading such themes. Frequently, the theme's HTML/CSS structure becomes intertwined with your UI code, rendering future theme changes or upgrades intricate tasks. This interweaving of code and design complicates the flexibility of making adjustments down the line.", "UITheme&Layout_THEPROBLEM_Description2": "Even if you opt for a pre-designed theme, seamlessly integrating it into your project could demand days of development. An additional hurdle lies in upgrading such themes. Frequently, the theme's HTML/CSS structure becomes intertwined with your UI code, rendering future theme changes or upgrades intricate tasks. This interweaving of code and design complicates the flexibility of making adjustments down the line.",
"UITheme&Layout_ABPSOLUTION_Description": "ABP Framework offers a distinctive theming system that liberates your UI code from theme constraints. Themes exist in isolation, packaged as NuGet or NPM packages, making theme installation or upgrades a matter of minutes. While you retain the option to develop your custom theme or integrate an existing one, ABP Commercial presents a collection of polished and contemporary themes.", "UITheme&Layout_ABPSOLUTION_Description": "ABP Framework offers a distinctive theming system that liberates your UI code from theme constraints. Themes exist in isolation, packaged as NuGet or NPM packages, making theme installation or upgrades a matter of minutes. While you retain the option to develop your custom theme or integrate an existing one, ABP presents a collection of polished and contemporary themes.",
"UITheme&Layout_ABPSOLUTION_Description2": "Additionally, there are UI component providers like Telerik and DevExpress. However, these providers primarily furnish individual components, placing the onus on you to establish your layout system. When working within ABP-based projects, you can seamlessly incorporate these libraries, similar to how you would in any other project.", "UITheme&Layout_ABPSOLUTION_Description2": "Additionally, there are UI component providers like Telerik and DevExpress. However, these providers primarily furnish individual components, placing the onus on you to establish your layout system. When working within ABP-based projects, you can seamlessly incorporate these libraries, similar to how you would in any other project.",
"TestInfrastructure": "Test Infrastructure", "TestInfrastructure": "Test Infrastructure",
"TestInfrastructure_THEPROBLEM_Description": "Establishing a robust testing environment is a time-consuming endeavor. It involves setting up dedicated test projects within your solution, carefully selecting the necessary tools, creating service and database mocks, crafting essential base classes and utility services to minimize redundant code across tests, and addressing various related tasks.", "TestInfrastructure_THEPROBLEM_Description": "Establishing a robust testing environment is a time-consuming endeavor. It involves setting up dedicated test projects within your solution, carefully selecting the necessary tools, creating service and database mocks, crafting essential base classes and utility services to minimize redundant code across tests, and addressing various related tasks.",
@ -1068,10 +1068,10 @@
"Microservices": "Microservices", "Microservices": "Microservices",
"Microservices_THEPROBLEM_Description": "Building a microservice system requires many infrastructure details: Authenticating and authorizing applications and microservices and implementing asynchronous messaging and synchronous (Rest/GRPC) communication patterns between microservices are the most fundamental issues.", "Microservices_THEPROBLEM_Description": "Building a microservice system requires many infrastructure details: Authenticating and authorizing applications and microservices and implementing asynchronous messaging and synchronous (Rest/GRPC) communication patterns between microservices are the most fundamental issues.",
"Microservices_ABPSOLUTION_Description": "The ABP Framework provides services, <a href=\"https://docs.abp.io/en/abp/latest/Microservice-Architecture\" target=\"_blank\">guides</a>, and samples to help you implement your microservice solution using the industry standard tools.", "Microservices_ABPSOLUTION_Description": "The ABP Framework provides services, <a href=\"https://docs.abp.io/en/abp/latest/Microservice-Architecture\" target=\"_blank\">guides</a>, and samples to help you implement your microservice solution using the industry standard tools.",
"Microservices_ABPSOLUTION_Description2": "ABP Commercial even goes one step further and provides a complete <a href=\"https://docs.abp.io/en/commercial/latest/startup-templates/microservice/index\" target=\"_blank\">startup template</a> to kick-start your microservice solution.", "Microservices_ABPSOLUTION_Description2": "ABP commercial version even goes one step further and provides a complete <a href=\"https://docs.abp.io/en/commercial/latest/startup-templates/microservice/index\" target=\"_blank\">startup template</a> to kick-start your microservice solution.",
"PreBuiltModules": "Pre-Built Modules", "PreBuiltModules": "Pre-Built Modules",
"PreBuiltModules_THEPROBLEM_Description": "All of us have similar but slightly different business requirements. However, we all should re-invent the wheel since no one's code can directly work in our solution. They are all embedded parts of a larger solution.", "PreBuiltModules_THEPROBLEM_Description": "All of us have similar but slightly different business requirements. However, we all should re-invent the wheel since no one's code can directly work in our solution. They are all embedded parts of a larger solution.",
"PreBuiltModules_ABPSOLUTION_Description": "ABP Commercial <a href=\"/modules\">modules</a> provides a lot of re-usable application modules like payment, chat, file management, audit log reporting... etc. All of these modules are easily installed into your solution and directly work. We are constantly adding more modules.", "PreBuiltModules_ABPSOLUTION_Description": "ABP <a href=\"/modules\">modules</a> provides a lot of re-usable application modules like payment, chat, file management, audit log reporting... etc. All of these modules are easily installed into your solution and directly work. We are constantly adding more modules.",
"PreBuiltModules_ABPSOLUTION_Description2": "All modules are designed as customizable for your business requirements. If you need complete control, you can download the full source code of any module and completely customize based on your specific business requirements.", "PreBuiltModules_ABPSOLUTION_Description2": "All modules are designed as customizable for your business requirements. If you need complete control, you can download the full source code of any module and completely customize based on your specific business requirements.",
"ABPCommunity": "ABP Community", "ABPCommunity": "ABP Community",
"ABPCommunity_Description": "Finally, Being in a big community where everyone follows similar coding styles and principles and shares a common infrastructure brings power when you have troubles or need help with design decisions. Since we write code similarly, we can help each other much better. ABP is a community-backed project with more than 10K stars on GitHub.", "ABPCommunity_Description": "Finally, Being in a big community where everyone follows similar coding styles and principles and shares a common infrastructure brings power when you have troubles or need help with design decisions. Since we write code similarly, we can help each other much better. ABP is a community-backed project with more than 10K stars on GitHub.",
@ -1127,13 +1127,13 @@
"CardAlias": "Card Alias (Optional)", "CardAlias": "Card Alias (Optional)",
"AbpDoesNotSaveYourPaymentDetails_Description": "The payment data will be saved in <a href=\"{0}\" target=\"_blank\" class=\"{1}\">{2}</a> security vaults and you can remove stored data anytime. Enabling auto-renewal ensures that your ABP subscription will automatically renew prior to expiration, providing a valid credit card. Disabling auto-renewal means you will have to renew your subscription manually. To continue your project development without interruption, we suggest you enable the Auto-Renewal option.", "AbpDoesNotSaveYourPaymentDetails_Description": "The payment data will be saved in <a href=\"{0}\" target=\"_blank\" class=\"{1}\">{2}</a> security vaults and you can remove stored data anytime. Enabling auto-renewal ensures that your ABP subscription will automatically renew prior to expiration, providing a valid credit card. Disabling auto-renewal means you will have to renew your subscription manually. To continue your project development without interruption, we suggest you enable the Auto-Renewal option.",
"AddBillingInformation": "Add Billing Information", "AddBillingInformation": "Add Billing Information",
"YouHaveNoCardsSaved": "You have no cards saved.", "YouHaveNoCardsSaved": "Card not saved yet.",
"CreateCreditCardModal_BillingDetails_Description": "You must save your billing details to be able to add your credit card.", "CreateCreditCardModal_BillingDetails_Description": "You must save your billing details to be able to add your credit card.",
"TaxNo": "Tax No", "TaxNo": "Tax No",
"CardNumber": "Card Number", "CardNumber": "Card Number",
"NameOnCard": "Name on Card", "NameOnCard": "Name on Card",
"BillingDetails": "Billing Details", "BillingDetails": "Billing Details",
"ThereIsNoDeveloper": "There is no developer.", "ThereIsNoDeveloper": "No developer added.",
"CardDetails": "Debit/Credit Card Details", "CardDetails": "Debit/Credit Card Details",
"YearCantBeNull": "Year field cannot be empty.", "YearCantBeNull": "Year field cannot be empty.",
"CardHolderName": "Name on Card", "CardHolderName": "Name on Card",
@ -1208,9 +1208,9 @@
"Application{0}": "Application {0}", "Application{0}": "Application {0}",
"PreBuiltApplicationModulesTitle": "Pre-Built Application <span class=\"gradient-commercial\">Modules</span>", "PreBuiltApplicationModulesTitle": "Pre-Built Application <span class=\"gradient-commercial\">Modules</span>",
"RegisterDemo": "Register", "RegisterDemo": "Register",
"TrainingDescription": "We are offering the following training packages for who want to get expertise on the ABP Framework and the ABP Commercial.", "TrainingDescription": "We are offering the following training packages for who want to get expertise on ABP.",
"PurchaseDevelopers": "developers", "PurchaseDevelopers": "developers",
"LinkExpiredMessage": "The payment link has expired! Contact us at <a href='mailto:sales@volosoft.com'>sales@volosoft.com</a> to update the link or <a href='https://commercial.abp.io/contact'>click here</a> to navigate to the contact page." "LinkExpiredMessage": "The payment link has expired! Contact us at <a href='mailto:sales@volosoft.com'>sales@volosoft.com</a> to update the link or <a href='https://abp.io/contact'>click here</a> to navigate to the contact page."
} }
} }

2
abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/es.json

@ -157,7 +157,7 @@
"ABPCLIExplanation": "ABP CLI (Command Line Interface) es una herramienta de línea de comandos para realizar algunas operaciones comunes para soluciones basadas en ABP.", "ABPCLIExplanation": "ABP CLI (Command Line Interface) es una herramienta de línea de comandos para realizar algunas operaciones comunes para soluciones basadas en ABP.",
"ABPSuiteEasilyCURD": "ABP Suite es una herramienta que le permite crear fácilmente páginas CRUD", "ABPSuiteEasilyCURD": "ABP Suite es una herramienta que le permite crear fácilmente páginas CRUD",
"WeAreHereToHelp": "Estamos aquí para <span class=\"zero-text\"> Ayuda </span>", "WeAreHereToHelp": "Estamos aquí para <span class=\"zero-text\"> Ayuda </span>",
"BrowseOrAskQuestion": "Puede explorar nuestros temas de ayuda o buscar preguntas frecuentes, o puede hacernos una pregunta mediante el <a href=\"{0}\" class=\"text-success\"> formulario de contacto </a>.", "BrowseOrAskQuestion": "Puede explorar nuestros temas de ayuda o buscar preguntas frecuentes, o puede hacernos una pregunta mediante el <a href=\"{0}\" > formulario de contacto </a>.",
"SearchQuestionPlaceholder": "Buscar en preguntas frecuentes", "SearchQuestionPlaceholder": "Buscar en preguntas frecuentes",
"WhatIsTheABPCommercial": "¿Qué es ABP Commercial?", "WhatIsTheABPCommercial": "¿Qué es ABP Commercial?",
"WhatAreDifferencesThanAbpFramework": "¿Cuáles son las diferencias entre ABP Framework de código abierto y ABP Commercial?", "WhatAreDifferencesThanAbpFramework": "¿Cuáles son las diferencias entre ABP Framework de código abierto y ABP Commercial?",

2
abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/fi.json

@ -160,7 +160,7 @@
"ABPCLIExplanation": "ABP CLI (Command Line Interface) on komentorivityökalu joidenkin yleisten toimintojen suorittamiseen ABP-pohjaisiin ratkaisuihin.", "ABPCLIExplanation": "ABP CLI (Command Line Interface) on komentorivityökalu joidenkin yleisten toimintojen suorittamiseen ABP-pohjaisiin ratkaisuihin.",
"ABPSuiteEasilyCURD": "ABP Suite on työkalu, jonka avulla voit helposti luoda CRUD-sivuja", "ABPSuiteEasilyCURD": "ABP Suite on työkalu, jonka avulla voit helposti luoda CRUD-sivuja",
"WeAreHereToHelp": "<span class=\"zero-text\">Apua</span> olemme täällä", "WeAreHereToHelp": "<span class=\"zero-text\">Apua</span> olemme täällä",
"BrowseOrAskQuestion": "Voit selata ohjeaiheitamme tai etsiä usein kysyttyjä kysymyksiä tai voit esittää meille kysymyksiä <a href=\"{0}\" class=\"text-success\"> yhteydenottolomakkeella </a>.", "BrowseOrAskQuestion": "Voit selata ohjeaiheitamme tai etsiä usein kysyttyjä kysymyksiä tai voit esittää meille kysymyksiä <a href=\"{0}\"> yhteydenottolomakkeella </a>.",
"SearchQuestionPlaceholder": "Hae usein kysyttyjä kysymyksiä", "SearchQuestionPlaceholder": "Hae usein kysyttyjä kysymyksiä",
"WhatIsTheABPCommercial": "Mikä on ABP-kauppa?", "WhatIsTheABPCommercial": "Mikä on ABP-kauppa?",
"WhatAreDifferencesThanAbpFramework": "Mitä eroja on avoimen lähdekoodin ABP Frameworkilla ja ABP Commercialilla?", "WhatAreDifferencesThanAbpFramework": "Mitä eroja on avoimen lähdekoodin ABP Frameworkilla ja ABP Commercialilla?",

2
abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/fr.json

@ -157,7 +157,7 @@
"ABPCLIExplanation": "ABP CLI (Command Line Interface) est un outil de ligne de commande pour effectuer certaines opérations courantes pour les solutions basées sur ABP.", "ABPCLIExplanation": "ABP CLI (Command Line Interface) est un outil de ligne de commande pour effectuer certaines opérations courantes pour les solutions basées sur ABP.",
"ABPSuiteEasilyCURD": "ABP Suite est un outil qui vous permet de créer facilement des pages CRUD", "ABPSuiteEasilyCURD": "ABP Suite est un outil qui vous permet de créer facilement des pages CRUD",
"WeAreHereToHelp": "Nous sommes ici pour <span class=\"zero-text\"> Aide </span>", "WeAreHereToHelp": "Nous sommes ici pour <span class=\"zero-text\"> Aide </span>",
"BrowseOrAskQuestion": "Vous pouvez parcourir nos rubriques d'aide ou rechercher dans les questions fréquemment posées, ou vous pouvez nous poser une question en utilisant le <a href=\"{0}\" class=\"text-success\"> formulaire de contact </a>.", "BrowseOrAskQuestion": "Vous pouvez parcourir nos rubriques d'aide ou rechercher dans les questions fréquemment posées, ou vous pouvez nous poser une question en utilisant le <a href=\"{0}\"> formulaire de contact </a>.",
"SearchQuestionPlaceholder": "Rechercher dans les questions fréquemment posées", "SearchQuestionPlaceholder": "Rechercher dans les questions fréquemment posées",
"WhatIsTheABPCommercial": "Qu'est-ce que la publicité ABP?", "WhatIsTheABPCommercial": "Qu'est-ce que la publicité ABP?",
"WhatAreDifferencesThanAbpFramework": "Quelles sont les différences entre le Framework ABP open source et le ABP Commercial?", "WhatAreDifferencesThanAbpFramework": "Quelles sont les différences entre le Framework ABP open source et le ABP Commercial?",

2
abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/hi.json

@ -157,7 +157,7 @@
"ABPCLIExplanation": "ABP CLI (कमांड लाइन इंटरफेस) ABP आधारित समाधानों के लिए कुछ सामान्य ऑपरेशन करने के लिए एक कमांड लाइन टूल है।", "ABPCLIExplanation": "ABP CLI (कमांड लाइन इंटरफेस) ABP आधारित समाधानों के लिए कुछ सामान्य ऑपरेशन करने के लिए एक कमांड लाइन टूल है।",
"ABPSuiteEasilyCURD": "एबीपी सूट एक उपकरण है जो आपको आसानी से CRUD पेज बनाने की अनुमति देता है", "ABPSuiteEasilyCURD": "एबीपी सूट एक उपकरण है जो आपको आसानी से CRUD पेज बनाने की अनुमति देता है",
"WeAreHereToHelp": "हम यहाँ हैं <span class=\"zero-text\"> मदद </span>", "WeAreHereToHelp": "हम यहाँ हैं <span class=\"zero-text\"> मदद </span>",
"BrowseOrAskQuestion": "आप हमारे सहायता विषयों को ब्राउज़ कर सकते हैं या अक्सर पूछे जाने वाले प्रश्नों में खोज कर सकते हैं, या आप <a href=\"{0}\" class=\"text-success\">संपर्क फ़ॉर्म</a> का उपयोग करके हमसे एक प्रश्न पूछ सकते हैं।", "BrowseOrAskQuestion": "आप हमारे सहायता विषयों को ब्राउज़ कर सकते हैं या अक्सर पूछे जाने वाले प्रश्नों में खोज कर सकते हैं, या आप <a href=\"{0}\">संपर्क फ़ॉर्म</a> का उपयोग करके हमसे एक प्रश्न पूछ सकते हैं।",
"SearchQuestionPlaceholder": "अक्सर पूछे जाने वाले प्रश्नों में खोजें", "SearchQuestionPlaceholder": "अक्सर पूछे जाने वाले प्रश्नों में खोजें",
"WhatIsTheABPCommercial": "ABP कमर्शियल क्या है?", "WhatIsTheABPCommercial": "ABP कमर्शियल क्या है?",
"WhatAreDifferencesThanAbpFramework": "ओपन सोर्स ABP फ्रेमवर्क और ABP कमर्शियल के बीच क्या अंतर हैं?", "WhatAreDifferencesThanAbpFramework": "ओपन सोर्स ABP फ्रेमवर्क और ABP कमर्शियल के बीच क्या अंतर हैं?",

2
abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/hr.json

@ -160,7 +160,7 @@
"ABPCLIExplanation": "ABP CLI (sučelje naredbenog retka) alat je naredbenog retka za izvođenje nekih uobičajenih operacija za rješenja temeljena na ABP-u.", "ABPCLIExplanation": "ABP CLI (sučelje naredbenog retka) alat je naredbenog retka za izvođenje nekih uobičajenih operacija za rješenja temeljena na ABP-u.",
"ABPSuiteEasilyCURD": "ABP Suite je alat koji vam omogućuje jednostavno stvaranje CRUD stranica", "ABPSuiteEasilyCURD": "ABP Suite je alat koji vam omogućuje jednostavno stvaranje CRUD stranica",
"WeAreHereToHelp": "Ovdje smo da <span class=\"zero-text\">pomognemo</span>", "WeAreHereToHelp": "Ovdje smo da <span class=\"zero-text\">pomognemo</span>",
"BrowseOrAskQuestion": "Možete pregledavati naše teme pomoći ili pretraživati u često postavljanim pitanjima ili nam možete postaviti pitanje koristeći <a href=\"{0}\" class=\"text-success\">obrazac za kontakt</a> .", "BrowseOrAskQuestion": "Možete pregledavati naše teme pomoći ili pretraživati u često postavljanim pitanjima ili nam možete postaviti pitanje koristeći <a href=\"{0}\">obrazac za kontakt</a> .",
"SearchQuestionPlaceholder": "Pretražite u često postavljanim pitanjima", "SearchQuestionPlaceholder": "Pretražite u često postavljanim pitanjima",
"WhatIsTheABPCommercial": "Što je ABP Commercial?", "WhatIsTheABPCommercial": "Što je ABP Commercial?",
"WhatAreDifferencesThanAbpFramework": "Koje su razlike između open source ABP Framework i ABP Commercial?", "WhatAreDifferencesThanAbpFramework": "Koje su razlike između open source ABP Framework i ABP Commercial?",

2
abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/hu.json

@ -160,7 +160,7 @@
"ABPCLIExplanation": "Az ABP CLI (Command Line Interface) egy parancssori eszköz az ABP alapú megoldások általános műveleteinek végrehajtására.", "ABPCLIExplanation": "Az ABP CLI (Command Line Interface) egy parancssori eszköz az ABP alapú megoldások általános műveleteinek végrehajtására.",
"ABPSuiteEasilyCURD": "Az ABP Suite egy olyan eszköz, amellyel könnyedén hozhat létre CRUD oldalakat", "ABPSuiteEasilyCURD": "Az ABP Suite egy olyan eszköz, amellyel könnyedén hozhat létre CRUD oldalakat",
"WeAreHereToHelp": "Azért vagyunk itt, hogy <span class=\"zero-text\">segítsünk</span>", "WeAreHereToHelp": "Azért vagyunk itt, hogy <span class=\"zero-text\">segítsünk</span>",
"BrowseOrAskQuestion": "Böngésszen a súgótémáink között, kereshet a gyakran ismételt kérdések között, vagy feltehet nekünk kérdést a <a href=\"{0}\" class=\"text-success\">kapcsolatfelvételi űrlap</a> használatával.", "BrowseOrAskQuestion": "Böngésszen a súgótémáink között, kereshet a gyakran ismételt kérdések között, vagy feltehet nekünk kérdést a <a href=\"{0}\">kapcsolatfelvételi űrlap</a> használatával.",
"SearchQuestionPlaceholder": "Keressen a gyakran ismételt kérdések között", "SearchQuestionPlaceholder": "Keressen a gyakran ismételt kérdések között",
"WhatIsTheABPCommercial": "Mi az az ABP Commercial?", "WhatIsTheABPCommercial": "Mi az az ABP Commercial?",
"WhatAreDifferencesThanAbpFramework": "Mi a különbség a nyílt forráskódú ABP Framework és az ABP Commercial között?", "WhatAreDifferencesThanAbpFramework": "Mi a különbség a nyílt forráskódú ABP Framework és az ABP Commercial között?",

2
abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/is.json

@ -157,7 +157,7 @@
"ABPCLIExplanation": "ABP CLI (Command Line Interface) er skipanalínutæki til að framkvæma nokkrar algengar aðgerðir fyrir ABP byggðar lausnir.", "ABPCLIExplanation": "ABP CLI (Command Line Interface) er skipanalínutæki til að framkvæma nokkrar algengar aðgerðir fyrir ABP byggðar lausnir.",
"ABPSuiteEasilyCURD": "ABP Suite er tæki sem gerir þér kleift að búa til CRUD síður auðveldlega", "ABPSuiteEasilyCURD": "ABP Suite er tæki sem gerir þér kleift að búa til CRUD síður auðveldlega",
"WeAreHereToHelp": "Við erum hérna til að <span class=\"zero-text\">Hjálpa</span>", "WeAreHereToHelp": "Við erum hérna til að <span class=\"zero-text\">Hjálpa</span>",
"BrowseOrAskQuestion": "Þú getur skoðað hjálparefni okkar eða leitað í algengum spurningum, eða þú getur spurt okkur spurningar með því að nota <a href=\"{0}\" class=\"text-success\"> samskiptaform </a> .", "BrowseOrAskQuestion": "Þú getur skoðað hjálparefni okkar eða leitað í algengum spurningum, eða þú getur spurt okkur spurningar með því að nota <a href=\"{0}\"> samskiptaform </a> .",
"SearchQuestionPlaceholder": "Leitaðu í algengum spurningum", "SearchQuestionPlaceholder": "Leitaðu í algengum spurningum",
"WhatIsTheABPCommercial": "Hvað er ABP Commercial?", "WhatIsTheABPCommercial": "Hvað er ABP Commercial?",
"WhatAreDifferencesThanAbpFramework": "Hver er munurinn á milli open source ABP Framework og ABP Commercial?", "WhatAreDifferencesThanAbpFramework": "Hver er munurinn á milli open source ABP Framework og ABP Commercial?",

2
abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/it.json

@ -157,7 +157,7 @@
"ABPCLIExplanation": "ABP CLI (Command Line Interface) è uno strumento a riga di comando per eseguire alcune operazioni comuni per soluzioni basate su ABP.", "ABPCLIExplanation": "ABP CLI (Command Line Interface) è uno strumento a riga di comando per eseguire alcune operazioni comuni per soluzioni basate su ABP.",
"ABPSuiteEasilyCURD": "ABP Suite è uno strumento che ti permette di creare facilmente pagine CRUD", "ABPSuiteEasilyCURD": "ABP Suite è uno strumento che ti permette di creare facilmente pagine CRUD",
"WeAreHereToHelp": "Siamo qui per <span class=\"zero-text\">Aiutarti</span>", "WeAreHereToHelp": "Siamo qui per <span class=\"zero-text\">Aiutarti</span>",
"BrowseOrAskQuestion": "Puoi sfogliare i nostri argomenti della guida o cercare nelle domande frequenti oppure puoi farci una domanda utilizzando il <a href=\"{0}\" class=\"text-success\"> modulo di contatto </a>.", "BrowseOrAskQuestion": "Puoi sfogliare i nostri argomenti della guida o cercare nelle domande frequenti oppure puoi farci una domanda utilizzando il <a href=\"{0}\"> modulo di contatto </a>.",
"SearchQuestionPlaceholder": "Cerca nelle domande frequenti", "SearchQuestionPlaceholder": "Cerca nelle domande frequenti",
"WhatIsTheABPCommercial": "Cos'è ABP Commercial?", "WhatIsTheABPCommercial": "Cos'è ABP Commercial?",
"WhatAreDifferencesThanAbpFramework": "Quali sono le differenze tra ABP Framework open source e ABP Commercial?", "WhatAreDifferencesThanAbpFramework": "Quali sono le differenze tra ABP Framework open source e ABP Commercial?",

2
abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/nl.json

@ -157,7 +157,7 @@
"ABPCLIExplanation": "ABP CLI (Command Line Interface) is een opdrachtregelprogramma om een aantal veelvoorkomende bewerkingen uit te voeren voor op ABP gebaseerde oplossingen.", "ABPCLIExplanation": "ABP CLI (Command Line Interface) is een opdrachtregelprogramma om een aantal veelvoorkomende bewerkingen uit te voeren voor op ABP gebaseerde oplossingen.",
"ABPSuiteEasilyCURD": "ABP Suite is een tool waarmee u eenvoudig CRUD-pagina's kunt maken", "ABPSuiteEasilyCURD": "ABP Suite is een tool waarmee u eenvoudig CRUD-pagina's kunt maken",
"WeAreHereToHelp": "We zijn hier om <span class=\"zero-text\">Help</span>", "WeAreHereToHelp": "We zijn hier om <span class=\"zero-text\">Help</span>",
"BrowseOrAskQuestion": "U kunt door onze Help-onderwerpen bladeren of zoeken in veelgestelde vragen, of u kunt ons een vraag stellen via het <a href=\"{0}\" class=\"text-success\">contactformulier</a>.", "BrowseOrAskQuestion": "U kunt door onze Help-onderwerpen bladeren of zoeken in veelgestelde vragen, of u kunt ons een vraag stellen via het <a href=\"{0}\">contactformulier</a>.",
"SearchQuestionPlaceholder": "Zoeken in veelgestelde vragen", "SearchQuestionPlaceholder": "Zoeken in veelgestelde vragen",
"WhatIsTheABPCommercial": "Wat is de ABP Commercial?", "WhatIsTheABPCommercial": "Wat is de ABP Commercial?",
"WhatAreDifferencesThanAbpFramework": "Wat zijn de verschillen tussen het open source ABP Framework en de ABP Commercial?", "WhatAreDifferencesThanAbpFramework": "Wat zijn de verschillen tussen het open source ABP Framework en de ABP Commercial?",

2
abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/pl-PL.json

@ -157,7 +157,7 @@
"ABPCLIExplanation": "ABP CLI (Interfejs wiersza poleceń) to narzędzie wiersza poleceń do wykonywania niektórych typowych operacji dla rozwiązań opartych na ABP.", "ABPCLIExplanation": "ABP CLI (Interfejs wiersza poleceń) to narzędzie wiersza poleceń do wykonywania niektórych typowych operacji dla rozwiązań opartych na ABP.",
"ABPSuiteEasilyCURD": "ABP Suite to narzędzie, które pozwala łatwo tworzyć strony CRUD", "ABPSuiteEasilyCURD": "ABP Suite to narzędzie, które pozwala łatwo tworzyć strony CRUD",
"WeAreHereToHelp": "Jesteśmy tutaj, aby <span class=\"zero-text\">pomoc</span>", "WeAreHereToHelp": "Jesteśmy tutaj, aby <span class=\"zero-text\">pomoc</span>",
"BrowseOrAskQuestion": "Możesz przeglądać nasze tematy pomocy lub przeszukiwać często zadawane pytania albo możesz zadać nam pytanie, korzystając z <a href=\"{0}\" class=\"text-success\">formularza kontaktowego</a>.", "BrowseOrAskQuestion": "Możesz przeglądać nasze tematy pomocy lub przeszukiwać często zadawane pytania albo możesz zadać nam pytanie, korzystając z <a href=\"{0}\">formularza kontaktowego</a>.",
"SearchQuestionPlaceholder": "Szukaj w często zadawanych pytaniach", "SearchQuestionPlaceholder": "Szukaj w często zadawanych pytaniach",
"WhatIsTheABPCommercial": "Co to jest reklama ABP?", "WhatIsTheABPCommercial": "Co to jest reklama ABP?",
"WhatAreDifferencesThanAbpFramework": "Jakie są różnice między Open Source ABP Framework a ABP Commercial?", "WhatAreDifferencesThanAbpFramework": "Jakie są różnice między Open Source ABP Framework a ABP Commercial?",

2
abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/pt-BR.json

@ -157,7 +157,7 @@
"ABPCLIExplanation": "ABP CLI (Command Line Interface) é uma ferramenta de linha de comando para realizar algumas operações comuns para soluções baseadas em ABP.", "ABPCLIExplanation": "ABP CLI (Command Line Interface) é uma ferramenta de linha de comando para realizar algumas operações comuns para soluções baseadas em ABP.",
"ABPSuiteEasilyCURD": "ABP Suite é uma ferramenta que permite criar facilmente páginas CRUD", "ABPSuiteEasilyCURD": "ABP Suite é uma ferramenta que permite criar facilmente páginas CRUD",
"WeAreHereToHelp": "Estamos aqui para <span class=\"zero-text\"> ajudar </span>", "WeAreHereToHelp": "Estamos aqui para <span class=\"zero-text\"> ajudar </span>",
"BrowseOrAskQuestion": "Você pode navegar em nossos tópicos de ajuda ou pesquisar as perguntas mais frequentes, ou pode nos fazer uma pergunta usando o <a href=\"{0}\" class=\"text-success\"> formulário de contato </a>.", "BrowseOrAskQuestion": "Você pode navegar em nossos tópicos de ajuda ou pesquisar as perguntas mais frequentes, ou pode nos fazer uma pergunta usando o <a href=\"{0}\"> formulário de contato </a>.",
"SearchQuestionPlaceholder": "Pesquise nas perguntas mais frequentes", "SearchQuestionPlaceholder": "Pesquise nas perguntas mais frequentes",
"WhatIsTheABPCommercial": "O que é o comercial ABP?", "WhatIsTheABPCommercial": "O que é o comercial ABP?",
"WhatAreDifferencesThanAbpFramework": "Quais são as diferenças entre o ABP Framework de código aberto e o ABP Commercial?", "WhatAreDifferencesThanAbpFramework": "Quais são as diferenças entre o ABP Framework de código aberto e o ABP Commercial?",

2
abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/ro-RO.json

@ -157,7 +157,7 @@
"ABPCLIExplanation": "ABP CLI (Command Line Interface) este un instrument de linii de comandă pentru executarea unor operaţii comune pentru soluţiile ABP.", "ABPCLIExplanation": "ABP CLI (Command Line Interface) este un instrument de linii de comandă pentru executarea unor operaţii comune pentru soluţiile ABP.",
"ABPSuiteEasilyCURD": "Suita ABP este un instrument care vă permite crearea cu uşurinţă a paginilor CRUD", "ABPSuiteEasilyCURD": "Suita ABP este un instrument care vă permite crearea cu uşurinţă a paginilor CRUD",
"WeAreHereToHelp": "Suntem aici să <span class=\"zero-text\">Ajutăm</span>", "WeAreHereToHelp": "Suntem aici să <span class=\"zero-text\">Ajutăm</span>",
"BrowseOrAskQuestion": "Puteţi răsfoi subiectele noastre de ajutor sau puteţi căuta în cadrul secţiunii întrebărilor frecvent adresate, sau ne puteţi adresa o întrebare folosind <a href=\"{0}\" class=\"text-success\">formularul de contact</a>.", "BrowseOrAskQuestion": "Puteţi răsfoi subiectele noastre de ajutor sau puteţi căuta în cadrul secţiunii întrebărilor frecvent adresate, sau ne puteţi adresa o întrebare folosind <a href=\"{0}\">formularul de contact</a>.",
"SearchQuestionPlaceholder": "Caută în întrebările frecvent adresate", "SearchQuestionPlaceholder": "Caută în întrebările frecvent adresate",
"WhatIsTheABPCommercial": "Ce este ABP Commercial?", "WhatIsTheABPCommercial": "Ce este ABP Commercial?",
"WhatAreDifferencesThanAbpFramework": "Care sunt diferenţele dintre ABP Framework şi ABP Comercial?", "WhatAreDifferencesThanAbpFramework": "Care sunt diferenţele dintre ABP Framework şi ABP Comercial?",

2
abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/ru.json

@ -160,7 +160,7 @@
"ABPCLIExplanation": "ABP CLI (интерфейс командной строки) — это инструмент командной строки для выполнения некоторых распространенных операций для решений на основе ABP.", "ABPCLIExplanation": "ABP CLI (интерфейс командной строки) — это инструмент командной строки для выполнения некоторых распространенных операций для решений на основе ABP.",
"ABPSuiteEasilyCURD": "ABP Suite — это инструмент, который позволяет легко создавать страницы CRUD.", "ABPSuiteEasilyCURD": "ABP Suite — это инструмент, который позволяет легко создавать страницы CRUD.",
"WeAreHereToHelp": "Мы здесь, чтобы <span class=\"zero-text\">Помощь</span>", "WeAreHereToHelp": "Мы здесь, чтобы <span class=\"zero-text\">Помощь</span>",
"BrowseOrAskQuestion": "Вы можете просмотреть разделы справки или выполнить поиск по часто задаваемым вопросам, либо задать нам вопрос, используя <a href=\"{0}\" class=\"text-success\">Форма обратной связи</a>.", "BrowseOrAskQuestion": "Вы можете просмотреть разделы справки или выполнить поиск по часто задаваемым вопросам, либо задать нам вопрос, используя <a href=\"{0}\">Форма обратной связи</a>.",
"SearchQuestionPlaceholder": "Поиск в часто задаваемых вопросах", "SearchQuestionPlaceholder": "Поиск в часто задаваемых вопросах",
"WhatIsTheABPCommercial": "Что такое ABP Commercial?", "WhatIsTheABPCommercial": "Что такое ABP Commercial?",
"WhatAreDifferencesThanAbpFramework": "Каковы различия между ABP Framework с открытым исходным кодом и ABP Commercial?", "WhatAreDifferencesThanAbpFramework": "Каковы различия между ABP Framework с открытым исходным кодом и ABP Commercial?",

2
abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/sk.json

@ -157,7 +157,7 @@
"ABPCLIExplanation": "ABP CLI (Command Line Interface) je nástroj v príkazovom riadku na vykonávanie niektorých bežných operácií v riešeniach založených na ABP.", "ABPCLIExplanation": "ABP CLI (Command Line Interface) je nástroj v príkazovom riadku na vykonávanie niektorých bežných operácií v riešeniach založených na ABP.",
"ABPSuiteEasilyCURD": "ABP Suite je nástroj, ktorý vám umožňuje jednoducho vytvárať CRUD stránky.", "ABPSuiteEasilyCURD": "ABP Suite je nástroj, ktorý vám umožňuje jednoducho vytvárať CRUD stránky.",
"WeAreHereToHelp": "Sme tu, aby sme <span class=\"zero-text\">pomohli</span>", "WeAreHereToHelp": "Sme tu, aby sme <span class=\"zero-text\">pomohli</span>",
"BrowseOrAskQuestion": "Môžete si prezerať témy našej nápovedy alebo vyhľadávať v často kladených otázkach, prípadne nám môžete položiť otázku pomocou <a href=\"{0}\" class=\"text-success\">kontaktného formulára</a>.", "BrowseOrAskQuestion": "Môžete si prezerať témy našej nápovedy alebo vyhľadávať v často kladených otázkach, prípadne nám môžete položiť otázku pomocou <a href=\"{0}\">kontaktného formulára</a>.",
"SearchQuestionPlaceholder": "Vyhľadávanie v často kladených otázkach", "SearchQuestionPlaceholder": "Vyhľadávanie v často kladených otázkach",
"WhatIsTheABPCommercial": "Čo je to ABP Commercial?", "WhatIsTheABPCommercial": "Čo je to ABP Commercial?",
"WhatAreDifferencesThanAbpFramework": "Aké sú rozdiely medzi open source ABP Framework a ABP Commercial?", "WhatAreDifferencesThanAbpFramework": "Aké sú rozdiely medzi open source ABP Framework a ABP Commercial?",

2
abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/sl.json

@ -157,7 +157,7 @@
"ABPCLIExplanation": "ABP CLI (vmesnik ukazne vrstice) je orodje ukazne vrstice za izvajanje nekaterih običajnih operacij za rešitve, ki temeljijo na ABP.", "ABPCLIExplanation": "ABP CLI (vmesnik ukazne vrstice) je orodje ukazne vrstice za izvajanje nekaterih običajnih operacij za rešitve, ki temeljijo na ABP.",
"ABPSuiteEasilyCURD": "ABP Suite je orodje, ki vam omogoča preprosto ustvarjanje strani CRUD", "ABPSuiteEasilyCURD": "ABP Suite je orodje, ki vam omogoča preprosto ustvarjanje strani CRUD",
"WeAreHereToHelp": "Tukaj smo za <span class=\"zero-text\">pomoč</span>", "WeAreHereToHelp": "Tukaj smo za <span class=\"zero-text\">pomoč</span>",
"BrowseOrAskQuestion": "Brskate lahko po naših temah pomoči ali iščete po pogostih vprašanjih ali pa nam postavite vprašanje z uporabo <a href=\"{0}\" class=\"text-success\">kontaktnega obrazca</a>.", "BrowseOrAskQuestion": "Brskate lahko po naših temah pomoči ali iščete po pogostih vprašanjih ali pa nam postavite vprašanje z uporabo <a href=\"{0}\">kontaktnega obrazca</a>.",
"SearchQuestionPlaceholder": "Iščite v pogosto zastavljenih vprašanjih", "SearchQuestionPlaceholder": "Iščite v pogosto zastavljenih vprašanjih",
"WhatIsTheABPCommercial": "Kaj je reklama ABP?", "WhatIsTheABPCommercial": "Kaj je reklama ABP?",
"WhatAreDifferencesThanAbpFramework": "Kakšne so razlike med odprtokodnim okvirom ABP in ABP Commercial?", "WhatAreDifferencesThanAbpFramework": "Kakšne so razlike med odprtokodnim okvirom ABP in ABP Commercial?",

2
abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/tr.json

@ -153,7 +153,7 @@
"ABPCLIExplanation": "ABP CLI (Komut Satırı Arayüzü), ABP tabanlı projeler için bazı ortak işlemleri gerçekleştirmek için bir komut satırı aracıdır.", "ABPCLIExplanation": "ABP CLI (Komut Satırı Arayüzü), ABP tabanlı projeler için bazı ortak işlemleri gerçekleştirmek için bir komut satırı aracıdır.",
"ABPSuiteEasilyCURD": "ABP Suite, kolayca CRUD sayfaları oluşturmanıza olanak sağlayan bir araçtır", "ABPSuiteEasilyCURD": "ABP Suite, kolayca CRUD sayfaları oluşturmanıza olanak sağlayan bir araçtır",
"WeAreHereToHelp": "<span class=\"zero-text\">Yardım</span> için buradayız", "WeAreHereToHelp": "<span class=\"zero-text\">Yardım</span> için buradayız",
"BrowseOrAskQuestion": "Yardım konularımıza göz atabilir veya sık sorulan sorularda arama yapabilir ya da <a href=\"{0}\" class=\"text-success\">iletişim formunu</a> kullanarak bize soru sorabilirsiniz.", "BrowseOrAskQuestion": "Yardım konularımıza göz atabilir veya sık sorulan sorularda arama yapabilir ya da <a href=\"{0}\">iletişim formunu</a> kullanarak bize soru sorabilirsiniz.",
"SearchQuestionPlaceholder": "Sık sorulan sorularda ara", "SearchQuestionPlaceholder": "Sık sorulan sorularda ara",
"WhatIsTheABPCommercial": "ABP Commercial nedir?", "WhatIsTheABPCommercial": "ABP Commercial nedir?",
"WhatAreDifferencesThanAbpFramework": "Açık kaynaklı ABP Frameworkü ile ABP Commercial arasındaki farklar nelerdir?", "WhatAreDifferencesThanAbpFramework": "Açık kaynaklı ABP Frameworkü ile ABP Commercial arasındaki farklar nelerdir?",

2
abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/vi.json

@ -157,7 +157,7 @@
"ABPCLIExplanation": "ABP CLI (Giao diện dòng lệnh) là một công cụ dòng lệnh để thực hiện một số hoạt động phổ biến cho các giải pháp dựa trên ABP.", "ABPCLIExplanation": "ABP CLI (Giao diện dòng lệnh) là một công cụ dòng lệnh để thực hiện một số hoạt động phổ biến cho các giải pháp dựa trên ABP.",
"ABPSuiteEasilyCURD": "ABP Suite là một công cụ cho phép bạn dễ dàng tạo các trang CRUD", "ABPSuiteEasilyCURD": "ABP Suite là một công cụ cho phép bạn dễ dàng tạo các trang CRUD",
"WeAreHereToHelp": "Chúng tôi ở đây để <span class=\"zero-text\"> Trợ giúp </span>", "WeAreHereToHelp": "Chúng tôi ở đây để <span class=\"zero-text\"> Trợ giúp </span>",
"BrowseOrAskQuestion": "Bạn có thể duyệt qua các chủ đề trợ giúp của chúng tôi hoặc tìm kiếm trong các câu hỏi thường gặp hoặc bạn có thể đặt câu hỏi cho chúng tôi bằng cách sử dụng <a href=\"{0}\" class=\"text-success\"> biểu mẫu liên hệ </a>.", "BrowseOrAskQuestion": "Bạn có thể duyệt qua các chủ đề trợ giúp của chúng tôi hoặc tìm kiếm trong các câu hỏi thường gặp hoặc bạn có thể đặt câu hỏi cho chúng tôi bằng cách sử dụng <a href=\"{0}\"> biểu mẫu liên hệ </a>.",
"SearchQuestionPlaceholder": "Tìm kiếm trong các câu hỏi thường gặp", "SearchQuestionPlaceholder": "Tìm kiếm trong các câu hỏi thường gặp",
"WhatIsTheABPCommercial": "ABP thương mại là gì?", "WhatIsTheABPCommercial": "ABP thương mại là gì?",
"WhatAreDifferencesThanAbpFramework": "Sự khác biệt giữa Khung ABP nguồn mở và ABP Thương mại là gì?", "WhatAreDifferencesThanAbpFramework": "Sự khác biệt giữa Khung ABP nguồn mở và ABP Thương mại là gì?",

2
abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/zh-Hans.json

@ -160,7 +160,7 @@
"ABPCLIExplanation": "ABP CLI(命令行界面)是一种命令行工具,用于执行基于 ABP 的解决方案的一些常用操作。", "ABPCLIExplanation": "ABP CLI(命令行界面)是一种命令行工具,用于执行基于 ABP 的解决方案的一些常用操作。",
"ABPSuiteEasilyCURD": "ABP Suite 是一款可让您轻松创建 CRUD 页面的工具", "ABPSuiteEasilyCURD": "ABP Suite 是一款可让您轻松创建 CRUD 页面的工具",
"WeAreHereToHelp": "我们在这里<span class=\"zero-text\">帮助</span>", "WeAreHereToHelp": "我们在这里<span class=\"zero-text\">帮助</span>",
"BrowseOrAskQuestion": "您可以浏览我们的帮助主题或搜索常见问题,也可以使用 <a href=\"{0}\" class=\"text-success\">联系表单</a>向我们提问。", "BrowseOrAskQuestion": "您可以浏览我们的帮助主题或搜索常见问题,也可以使用 <a href=\"{0}\">联系表单</a>向我们提问。",
"SearchQuestionPlaceholder": "在常见问题中搜索", "SearchQuestionPlaceholder": "在常见问题中搜索",
"WhatIsTheABPCommercial": "ABP Commercial 是什么?", "WhatIsTheABPCommercial": "ABP Commercial 是什么?",
"WhatAreDifferencesThanAbpFramework": "开源 ABP 框架与 ABP 商业版之间有哪些区别?", "WhatAreDifferencesThanAbpFramework": "开源 ABP 框架与 ABP 商业版之间有哪些区别?",

2
abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/zh-Hant.json

@ -159,7 +159,7 @@
"ABPCLIExplanation": "ABP CLI(命令行頁面)是一個執行基於ABP解決方案的一些常見操作的命令行工具.", "ABPCLIExplanation": "ABP CLI(命令行頁面)是一個執行基於ABP解決方案的一些常見操作的命令行工具.",
"ABPSuiteEasilyCURD": "ABP Suite是一個使你輕松創建CURD頁面的工具", "ABPSuiteEasilyCURD": "ABP Suite是一個使你輕松創建CURD頁面的工具",
"WeAreHereToHelp": "我們在這裏為你提供<span class=\"zero-text\">幫助</span>", "WeAreHereToHelp": "我們在這裏為你提供<span class=\"zero-text\">幫助</span>",
"BrowseOrAskQuestion": "你可以瀏覽我們的幫助主題或搜索常見的問題, 或者你可以使用<a href=\"{0}\" class=\"text-success\">聯系表單</a>向我們提問.", "BrowseOrAskQuestion": "你可以瀏覽我們的幫助主題或搜索常見的問題, 或者你可以使用<a href=\"{0}\">聯系表單</a>向我們提問.",
"SearchQuestionPlaceholder": "搜索常見的問題", "SearchQuestionPlaceholder": "搜索常見的問題",
"WhatIsTheABPCommercial": "什麽是ABP商業版?", "WhatIsTheABPCommercial": "什麽是ABP商業版?",
"WhatAreDifferencesThanAbpFramework": "ABP框架與ABP商業版有什麽不同?", "WhatAreDifferencesThanAbpFramework": "ABP框架與ABP商業版有什麽不同?",

10
abp_io/AbpIoLocalization/AbpIoLocalization/Community/Localization/AbpIoCommunityResource.cs

@ -1,10 +0,0 @@
using Volo.Abp.Localization;
namespace AbpIoLocalization.Community.Localization
{
[LocalizationResourceName("AbpIoCommunity")]
public class AbpIoCommunityResource
{
}
}

2
abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/ar.json

@ -301,7 +301,7 @@
"ProgressiveWebApplication": "تطبيق ويب تقدمي", "ProgressiveWebApplication": "تطبيق ويب تقدمي",
"Preview": "معاينة", "Preview": "معاينة",
"CreateANewSolution": "قم بإنشاء حل جديد", "CreateANewSolution": "قم بإنشاء حل جديد",
"ABPFrameworkFeatures": "إطار عمل ABP <span class=\"gradient-framework\">ميزات</span>", "FrameworkFeatures": "إطار عمل ABP <span class=\"gradient-framework\">ميزات</span>",
"Commercial": "تجاري", "Commercial": "تجاري",
"ThirdPartyTools": "أدوات الطرف الثالث", "ThirdPartyTools": "أدوات الطرف الثالث",
"Back": "عودة", "Back": "عودة",

2
abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/cs.json

@ -301,7 +301,7 @@
"ProgressiveWebApplication": "Progresivní webová aplikace", "ProgressiveWebApplication": "Progresivní webová aplikace",
"Preview": "Náhled", "Preview": "Náhled",
"CreateANewSolution": "Vytvořte nové řešení", "CreateANewSolution": "Vytvořte nové řešení",
"ABPFrameworkFeatures": "<span class=\"gradient-framework\">Funkce</span> rámce ABP", "FrameworkFeatures": "<span class=\"gradient-framework\">Funkce</span> rámce ABP",
"Commercial": "Komerční", "Commercial": "Komerční",
"ThirdPartyTools": "Nástroje třetích stran", "ThirdPartyTools": "Nástroje třetích stran",
"Back": "Zadní", "Back": "Zadní",

2
abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/de.json

@ -301,7 +301,7 @@
"ProgressiveWebApplication": "Progressive Webanwendung", "ProgressiveWebApplication": "Progressive Webanwendung",
"Preview": "Vorschau", "Preview": "Vorschau",
"CreateANewSolution": "Erstellen Sie eine neue Lösung", "CreateANewSolution": "Erstellen Sie eine neue Lösung",
"ABPFrameworkFeatures": "ABP-Framework- <span class=\"gradient-framework\">Funktionen</span>", "FrameworkFeatures": "ABP-Framework- <span class=\"gradient-framework\">Funktionen</span>",
"Commercial": "Kommerziell", "Commercial": "Kommerziell",
"ThirdPartyTools": "Tools von Drittanbietern", "ThirdPartyTools": "Tools von Drittanbietern",
"Back": "Zurück", "Back": "Zurück",

1399
abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/en.json

File diff suppressed because it is too large

2
abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/es.json

@ -301,7 +301,7 @@
"ProgressiveWebApplication": "Aplicación web progresiva", "ProgressiveWebApplication": "Aplicación web progresiva",
"Preview": "Avance", "Preview": "Avance",
"CreateANewSolution": "Crear una nueva solución", "CreateANewSolution": "Crear una nueva solución",
"ABPFrameworkFeatures": "<span class=\"gradient-framework\">Características</span> del marco ABP", "FrameworkFeatures": "<span class=\"gradient-framework\">Características</span> del marco ABP",
"Commercial": "Comercial", "Commercial": "Comercial",
"ThirdPartyTools": "Herramientas de terceros", "ThirdPartyTools": "Herramientas de terceros",
"Back": "Atrás", "Back": "Atrás",

2
abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/fi.json

@ -301,7 +301,7 @@
"ProgressiveWebApplication": "Progressiivinen verkkosovellus", "ProgressiveWebApplication": "Progressiivinen verkkosovellus",
"Preview": "Esikatsele", "Preview": "Esikatsele",
"CreateANewSolution": "Luo uusi ratkaisu", "CreateANewSolution": "Luo uusi ratkaisu",
"ABPFrameworkFeatures": "ABP-kehyksen <span class=\"gradient-framework\">Ominaisuudet</span>", "FrameworkFeatures": "ABP-kehyksen <span class=\"gradient-framework\">Ominaisuudet</span>",
"Commercial": "Kaupallinen", "Commercial": "Kaupallinen",
"ThirdPartyTools": "Kolmannen osapuolen työkalut", "ThirdPartyTools": "Kolmannen osapuolen työkalut",
"Back": "Takaisin", "Back": "Takaisin",

2
abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/fr.json

@ -301,7 +301,7 @@
"ProgressiveWebApplication": "Application Web progressive", "ProgressiveWebApplication": "Application Web progressive",
"Preview": "Aperçu", "Preview": "Aperçu",
"CreateANewSolution": "Créer une nouvelle solution", "CreateANewSolution": "Créer une nouvelle solution",
"ABPFrameworkFeatures": "<span class=\"gradient-framework\">Fonctionnalités</span> du cadre ABP", "FrameworkFeatures": "<span class=\"gradient-framework\">Fonctionnalités</span> du cadre ABP",
"Commercial": "Commercial", "Commercial": "Commercial",
"ThirdPartyTools": "Outils tiers", "ThirdPartyTools": "Outils tiers",
"Back": "Dos", "Back": "Dos",

2
abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/hi.json

@ -301,7 +301,7 @@
"ProgressiveWebApplication": "प्रगतिशील वेब अनुप्रयोग", "ProgressiveWebApplication": "प्रगतिशील वेब अनुप्रयोग",
"Preview": "पूर्व दर्शन", "Preview": "पूर्व दर्शन",
"CreateANewSolution": "एक नया समाधान बनाएं", "CreateANewSolution": "एक नया समाधान बनाएं",
"ABPFrameworkFeatures": "एबीपी फ्रेमवर्क <span class=\"gradient-framework\">विशेषताएं</span>", "FrameworkFeatures": "एबीपी फ्रेमवर्क <span class=\"gradient-framework\">विशेषताएं</span>",
"Commercial": "व्यावसायिक", "Commercial": "व्यावसायिक",
"ThirdPartyTools": "तृतीय पक्ष उपकरण", "ThirdPartyTools": "तृतीय पक्ष उपकरण",
"Back": "पीछे", "Back": "पीछे",

2
abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/hr.json

@ -301,7 +301,7 @@
"ProgressiveWebApplication": "Progresivna web aplikacija", "ProgressiveWebApplication": "Progresivna web aplikacija",
"Preview": "Pregled", "Preview": "Pregled",
"CreateANewSolution": "Napravite novo rješenje", "CreateANewSolution": "Napravite novo rješenje",
"ABPFrameworkFeatures": "<span class=\"gradient-framework\">Značajke</span> ABP okvira", "FrameworkFeatures": "<span class=\"gradient-framework\">Značajke</span> ABP okvira",
"Commercial": "Komercijalni", "Commercial": "Komercijalni",
"ThirdPartyTools": "Alati trećih strana", "ThirdPartyTools": "Alati trećih strana",
"Back": "leđa", "Back": "leđa",

2
abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/hu.json

@ -301,7 +301,7 @@
"ProgressiveWebApplication": "Progresszív webes alkalmazás", "ProgressiveWebApplication": "Progresszív webes alkalmazás",
"Preview": "Előnézet", "Preview": "Előnézet",
"CreateANewSolution": "Hozzon létre egy új megoldást", "CreateANewSolution": "Hozzon létre egy új megoldást",
"ABPFrameworkFeatures": "Az ABP keretrendszer <span class=\"gradient-framework\">jellemzői</span>", "FrameworkFeatures": "Az ABP keretrendszer <span class=\"gradient-framework\">jellemzői</span>",
"Commercial": "Kereskedelmi", "Commercial": "Kereskedelmi",
"ThirdPartyTools": "Harmadik féltől származó eszközök", "ThirdPartyTools": "Harmadik féltől származó eszközök",
"Back": "Vissza", "Back": "Vissza",

2
abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/is.json

@ -301,7 +301,7 @@
"ProgressiveWebApplication": "Framsækið vefforrit", "ProgressiveWebApplication": "Framsækið vefforrit",
"Preview": "Forskoðun", "Preview": "Forskoðun",
"CreateANewSolution": "Búðu til nýja lausn", "CreateANewSolution": "Búðu til nýja lausn",
"ABPFrameworkFeatures": "ABP Framework <span class=\"gradient-framework\">Eiginleikar</span>", "FrameworkFeatures": "ABP Framework <span class=\"gradient-framework\">Eiginleikar</span>",
"Commercial": "Auglýsing", "Commercial": "Auglýsing",
"ThirdPartyTools": "Verkfæri þriðja aðila", "ThirdPartyTools": "Verkfæri þriðja aðila",
"Back": "Til baka", "Back": "Til baka",

2
abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/it.json

@ -301,7 +301,7 @@
"ProgressiveWebApplication": "Applicazione Web progressiva", "ProgressiveWebApplication": "Applicazione Web progressiva",
"Preview": "Anteprima", "Preview": "Anteprima",
"CreateANewSolution": "Creare una nuova soluzione", "CreateANewSolution": "Creare una nuova soluzione",
"ABPFrameworkFeatures": "<span class=\"gradient-framework\">Caratteristiche</span> della struttura ABP", "FrameworkFeatures": "<span class=\"gradient-framework\">Caratteristiche</span> della struttura ABP",
"Commercial": "Commerciale", "Commercial": "Commerciale",
"ThirdPartyTools": "Strumenti di terze parti", "ThirdPartyTools": "Strumenti di terze parti",
"Back": "Indietro", "Back": "Indietro",

2
abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/nl.json

@ -301,7 +301,7 @@
"ProgressiveWebApplication": "Progressieve webapplicatie", "ProgressiveWebApplication": "Progressieve webapplicatie",
"Preview": "Voorbeeld", "Preview": "Voorbeeld",
"CreateANewSolution": "Creëer een nieuwe oplossing", "CreateANewSolution": "Creëer een nieuwe oplossing",
"ABPFrameworkFeatures": "ABP Framework <span class=\"gradient-framework\">-functies</span>", "FrameworkFeatures": "ABP Framework <span class=\"gradient-framework\">-functies</span>",
"Commercial": "Reclame", "Commercial": "Reclame",
"ThirdPartyTools": "Hulpmiddelen van derden", "ThirdPartyTools": "Hulpmiddelen van derden",
"Back": "Rug", "Back": "Rug",

2
abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/pl-PL.json

@ -301,7 +301,7 @@
"ProgressiveWebApplication": "Progresywna aplikacja internetowa", "ProgressiveWebApplication": "Progresywna aplikacja internetowa",
"Preview": "Zapowiedź", "Preview": "Zapowiedź",
"CreateANewSolution": "Utwórz nowe rozwiązanie", "CreateANewSolution": "Utwórz nowe rozwiązanie",
"ABPFrameworkFeatures": "<span class=\"gradient-framework\">Funkcje</span> struktury ABP", "FrameworkFeatures": "<span class=\"gradient-framework\">Funkcje</span> struktury ABP",
"Commercial": "Handlowy", "Commercial": "Handlowy",
"ThirdPartyTools": "Narzędzia stron trzecich", "ThirdPartyTools": "Narzędzia stron trzecich",
"Back": "Z powrotem", "Back": "Z powrotem",

2
abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/pt-BR.json

@ -301,7 +301,7 @@
"ProgressiveWebApplication": "Aplicativo Web Progressivo", "ProgressiveWebApplication": "Aplicativo Web Progressivo",
"Preview": "Visualização", "Preview": "Visualização",
"CreateANewSolution": "Crie uma nova solução", "CreateANewSolution": "Crie uma nova solução",
"ABPFrameworkFeatures": "<span class=\"gradient-framework\">Recursos</span> da estrutura ABP", "FrameworkFeatures": "<span class=\"gradient-framework\">Recursos</span> da estrutura ABP",
"Commercial": "Comercial", "Commercial": "Comercial",
"ThirdPartyTools": "Ferramentas de terceiros", "ThirdPartyTools": "Ferramentas de terceiros",
"Back": "Voltar", "Back": "Voltar",

2
abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/ro-RO.json

@ -301,7 +301,7 @@
"ProgressiveWebApplication": "Aplicație web progresivă", "ProgressiveWebApplication": "Aplicație web progresivă",
"Preview": "previzualizare", "Preview": "previzualizare",
"CreateANewSolution": "Creați o nouă soluție", "CreateANewSolution": "Creați o nouă soluție",
"ABPFrameworkFeatures": "<span class=\"gradient-framework\">Caracteristicile</span> cadrului ABP", "FrameworkFeatures": "<span class=\"gradient-framework\">Caracteristicile</span> cadrului ABP",
"Commercial": "Comercial", "Commercial": "Comercial",
"ThirdPartyTools": "Instrumente de la terți", "ThirdPartyTools": "Instrumente de la terți",
"Back": "Înapoi", "Back": "Înapoi",

2
abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/ru.json

@ -299,7 +299,7 @@
"ProgressiveWebApplication": "Прогрессивное веб-приложение", "ProgressiveWebApplication": "Прогрессивное веб-приложение",
"Preview": "Предварительный просмотр", "Preview": "Предварительный просмотр",
"CreateANewSolution": "Создать новое решение", "CreateANewSolution": "Создать новое решение",
"ABPFrameworkFeatures": "Структура ABP <span class=\"gradient-framework\">Функции</span>", "FrameworkFeatures": "Структура ABP <span class=\"gradient-framework\">Функции</span>",
"Commercial": "Коммерческий", "Commercial": "Коммерческий",
"ThirdPartyTools": "Сторонние инструменты", "ThirdPartyTools": "Сторонние инструменты",
"Back": "Назад", "Back": "Назад",

2
abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/sk.json

@ -301,7 +301,7 @@
"ProgressiveWebApplication": "Progresívna webová aplikácia", "ProgressiveWebApplication": "Progresívna webová aplikácia",
"Preview": "Náhľad", "Preview": "Náhľad",
"CreateANewSolution": "Vytvorte nové riešenie", "CreateANewSolution": "Vytvorte nové riešenie",
"ABPFrameworkFeatures": "<span class=\"gradient-framework\">Funkcie</span> rámca ABP", "FrameworkFeatures": "<span class=\"gradient-framework\">Funkcie</span> rámca ABP",
"Commercial": "Komerčný", "Commercial": "Komerčný",
"ThirdPartyTools": "Nástroje tretích strán", "ThirdPartyTools": "Nástroje tretích strán",
"Back": "späť", "Back": "späť",

2
abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/sl.json

@ -301,7 +301,7 @@
"ProgressiveWebApplication": "Progresivna spletna aplikacija", "ProgressiveWebApplication": "Progresivna spletna aplikacija",
"Preview": "Predogled", "Preview": "Predogled",
"CreateANewSolution": "Ustvarite novo rešitev", "CreateANewSolution": "Ustvarite novo rešitev",
"ABPFrameworkFeatures": "<span class=\"gradient-framework\">Funkcije</span> ogrodja ABP", "FrameworkFeatures": "<span class=\"gradient-framework\">Funkcije</span> ogrodja ABP",
"Commercial": "Komercialno", "Commercial": "Komercialno",
"ThirdPartyTools": "Orodja tretjih oseb", "ThirdPartyTools": "Orodja tretjih oseb",
"Back": "Nazaj", "Back": "Nazaj",

2
abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/tr.json

@ -298,7 +298,7 @@
"SeparateIdentityServer": "Ayrı Kimlik Sunucusu", "SeparateIdentityServer": "Ayrı Kimlik Sunucusu",
"Preview": "Önizleme", "Preview": "Önizleme",
"CreateANewSolution": "Yeni bir çözüm oluşturun", "CreateANewSolution": "Yeni bir çözüm oluşturun",
"ABPFrameworkFeatures": "ABP Framework <span class=\"gradient-framework\">Özellikleri</span>", "FrameworkFeatures": "ABP Framework <span class=\"gradient-framework\">Özellikleri</span>",
"ThirdPartyTools": "Üçüncü taraf araçlar", "ThirdPartyTools": "Üçüncü taraf araçlar",
"Back": "Geri", "Back": "Geri",
"SeeMore": "Daha fazla göster", "SeeMore": "Daha fazla göster",

2
abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/vi.json

@ -301,7 +301,7 @@
"ProgressiveWebApplication": "Ứng dụng web tiến bộ", "ProgressiveWebApplication": "Ứng dụng web tiến bộ",
"Preview": "Xem trước", "Preview": "Xem trước",
"CreateANewSolution": "Tạo một giải pháp mới", "CreateANewSolution": "Tạo một giải pháp mới",
"ABPFrameworkFeatures": "<span class=\"gradient-framework\">Tính năng</span> của khung ABP", "FrameworkFeatures": "<span class=\"gradient-framework\">Tính năng</span> của khung ABP",
"Commercial": "Thuộc về thương mại", "Commercial": "Thuộc về thương mại",
"ThirdPartyTools": "Công cụ của bên thứ ba", "ThirdPartyTools": "Công cụ của bên thứ ba",
"Back": "Mặt sau", "Back": "Mặt sau",

2
abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/zh-Hans.json

@ -301,7 +301,7 @@
"ProgressiveWebApplication": "渐进式Web应用程序", "ProgressiveWebApplication": "渐进式Web应用程序",
"Preview": "预览", "Preview": "预览",
"CreateANewSolution": "创建新解决方案", "CreateANewSolution": "创建新解决方案",
"ABPFrameworkFeatures": "ABP 框架 <span class=\"gradient-framework\">特点</span", "FrameworkFeatures": "ABP 框架 <span class=\"gradient-framework\">特点</span",
"Commercial": "商业版", "Commercial": "商业版",
"ThirdPartyTools": "第三方工具", "ThirdPartyTools": "第三方工具",
"Back": "返回", "Back": "返回",

2
abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/zh-Hant.json

@ -301,7 +301,7 @@
"ProgressiveWebApplication": "漸進式網頁應用程式", "ProgressiveWebApplication": "漸進式網頁應用程式",
"Preview": "預覽", "Preview": "預覽",
"CreateANewSolution": "建立新的解決方案", "CreateANewSolution": "建立新的解決方案",
"ABPFrameworkFeatures": "ABP框架<span class=\"gradient-framework\">特點</span>", "FrameworkFeatures": "ABP框架<span class=\"gradient-framework\">特點</span>",
"Commercial": "商業的", "Commercial": "商業的",
"ThirdPartyTools": "第三方工具", "ThirdPartyTools": "第三方工具",
"Back": "後退", "Back": "後退",

BIN
docs/en/Blog-Posts/2024-07-23-AbpIo-United-Is-Live/cover.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1022 KiB

After

Width:  |  Height:  |  Size: 342 KiB

BIN
docs/en/Blog-Posts/2024-07-25-Introducing-The-New-ABP-CLI/cover-image.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 238 KiB

81
docs/en/Blog-Posts/2024-07-25-Introducing-The-New-ABP-CLI/post.md

@ -0,0 +1,81 @@
# Introducing the New ABP CLI
![](cover-image.png)
📢 We're excited to introduce the [new ABP CLI](https://abp.io/docs/latest/cli/index) after the announcement of [the new unified ABP Platform](https://abp.io/blog/new-abp-platform-is-live).
As you know, we recently unified the ABP platform in a single domain ([abp.io](https://abp.io/)) and made some changes in our templating system to simplify your development. Also, we released more stable ABP Studio versions, which can dramatically improve and speed up your development time. Besides all of these changes, we have also introduced a new ABP CLI to bring you a more streamlined and efficient experience, which also extends the current commands.
Here is a brief overview of what's new, what's changed, and why this change is happening...
## The New ABP CLI
ABP CLI is a command line tool to perform some common operations for ABP based solutions or [ABP Studio](https://abp.io/docs/latest/studio) features. With v8.2+, the old/legacy ABP CLI has been replaced with a new CLI system to align with the new templating system and ABP Studio.
The new ABP CLI extends the old ABP CLI, adds more features that are used by ABP Studio behind the scenes, and is also fully compatible with the new templating system. Also, it allows you to use the old ABP CLI if you need, it by passing a single parameter.
To be able to use the new ABP CLI, you should first delete the existing/old CLI with the following command if you installed it before:
```bash
dotnet tool uninstall -g Volo.Abp.Cli
```
Then, to install the new ABP CLI, you can just simply execute the following command in your terminal:
```bash
dotnet tool install -g Volo.Abp.Studio.Cli
```
> Both old and new ABP CLI binary names use the same `abp` command as the executing command. Therefore, you should uninstall the old CLI first, if you installed it before.
> **Note**: Since the new ABP CLI uses the same `abp` command, you can use the same commands as you did before.
## Reason for the Change
ABP introduces a new templating system, which is fully compatible with the ABP Studio from v8.2+. Since, ABP Studio offers more and better features (such as tracking, monitoring, and deploying your applications from a single point), and the new templating system has a different versioning structure, we wanted to introduce a new ABP CLI by extending the current features and adding even more features that are compatible with the new templating system and ABP Studio.
This change allows you to create your application with the new templating system either by running the cross-platform ABP Studio application or ABP CLI and allows you to create automated pipelines with the power of the new ABP CLI.
## Using the Old ABP CLI
If you have an older version of ABP solutions and need to use the old ABP CLI for any reason, you can do it easily with the new ABP CLI.
You just need to put the `--old` command at the end of your command and execute the related CLI command as you would before. This allows you to use the old CLI commands with the new CLI without the need to uninstall the new CLI.
For example, if you want to create a new ABP v8.2.0 solution, you can execute the following command:
```bash
abp new Acme.BookStore --version 8.2.0 --old
```
When you run this command, the new ABP CLI installs the old CLI with `abp-old` name as the executing command within the latest version of ABP under the **%UserProfile%\\.abp\studio\cli\old** directory and allows you to use the old commands.
If you want to use a specific version of the old ABP CLI, it's also possible with the new ABP CLI. You can use the `install-old-cli` command of the new CLI to either install or update an old CLI, then you can directly execute any old ABP CLI command by simply passing the `--old` parameter to the end of your command:
```bash
# installing the old ABP CLI with v8.0
abp install-old-cli --version 8.0.0
abp new Acme.BookStore --version 8.0 --old # alternatively, you can use the `abp-old` command without need to pass the "--old" parameter
```
## New Commands
New ABP CLI extends the existing features of old ABP CLI and introduces new commands. Here are some of the new commands:
* `kube-connect`: Connects to Kubernetes environment. (Available for **Business or higher licenses**)
* `kube-intercept`: Intercepts a service running in Kubernetes environment. (Available for **Business or higher licenses**)
* `list-module-sources`: Lists the remote module sources.
* and more...
You can check the CLI documentation for all available commands and their usage.
## Conclusion
In this blog post, we briefly explained the new ABP CLI, what's the reason for this change, and how to use the old ABP CLI with the new ABP CLI.
If you have any further questions related to the new ABP CLI, you can always refer to the [CLI](https://abp.io/docs/latest/cli/index) and [Old ABP CLI vs New ABP CLI](https://abp.io/docs/latest/cli/differences-between-old-and-new-cli) documentation. Also, we listed some of the questions that you may have, which you can [check from here](https://abp.io/docs/latest/cli/differences-between-old-and-new-cli#common-questions).
Please try out the new ABP CLI, and provide feedback to help us release more stable versions, with additional features.
Thanks for being a part of the ABP Community!

BIN
docs/en/Blog-Posts/2024-07-30-Announcing-ABP-Studio/abp-studio-helm-charts.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

BIN
docs/en/Blog-Posts/2024-07-30-Announcing-ABP-Studio/abp-studio-license-comparison-table.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 47 KiB

BIN
docs/en/Blog-Posts/2024-07-30-Announcing-ABP-Studio/abp-studio-new-layered-solution-template-wizard-options.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 58 KiB

After

Width:  |  Height:  |  Size: 39 KiB

BIN
docs/en/Blog-Posts/2024-07-30-Announcing-ABP-Studio/abp-studio-new-layered-solution-template-wizard.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 63 KiB

After

Width:  |  Height:  |  Size: 44 KiB

BIN
docs/en/Blog-Posts/2024-07-30-Announcing-ABP-Studio/abp-studio-solution-runner-overall.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 193 KiB

BIN
docs/en/Blog-Posts/2024-07-30-Announcing-ABP-Studio/abp-studio-solution-runner-start-apps.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 43 KiB

BIN
docs/en/Blog-Posts/2024-07-30-Announcing-ABP-Studio/abp-suite-in-abp-studio.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 146 KiB

BIN
docs/en/Blog-Posts/2024-07-30-Announcing-ABP-Studio/abp-suite-open-in-abp-studio.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.4 KiB

93
docs/en/Blog-Posts/2024-07-30-Announcing-ABP-Studio/post.md

@ -1,5 +1,9 @@
# Announcing ABP Studio (beta) General Availability # Announcing ABP Studio (beta) General Availability
ABP Framework makes your daily coding activities much easier, more convenient, and even more enjoyable. However, building a software product is not just about coding. We know that you need to build, run, test, debug and deploy your software, and trace errors on a failure. You also should to design architecture of your overall solution and perform many common operations on your solutions in addition to the coding activity.
We'd already provided tools like [ABP CLI](https://abp.io/cli) and [ABP Suite](https://abp.io/suite) for these kind of purposes before. [ABP Studio](https://abp.io/studio) takes this one long step further and offers a tool that you can use continuously throughout your coding activities, help you for non-coding activities to make you focus on your software development.
I am very excited to announce that the ABP Studio (beta) is generally available to everyone. It is now downloadable on the [get started page](https://abp.io/get-started) of the [new ABP Platform website](https://abp.io/blog/new-abp-platform-is-live). I am very excited to announce that the ABP Studio (beta) is generally available to everyone. It is now downloadable on the [get started page](https://abp.io/get-started) of the [new ABP Platform website](https://abp.io/blog/new-abp-platform-is-live).
## What is ABP Studio? ## What is ABP Studio?
@ -9,28 +13,99 @@ I am very excited to announce that the ABP Studio (beta) is generally available
**From now on, ABP Studio is the default way to start with the ABP Platform**; **From now on, ABP Studio is the default way to start with the ABP Platform**;
* The [get started page](https://abp.io/get-started) has updated so it offers to download ABP Studio to create a new ABP based solution. * The [get started page](https://abp.io/get-started) has updated so it offers to download ABP Studio to create a new ABP based solution.
* The ABP CLI ([Volo.Abp.Cli](https://nuget.org/packages/Volo.Abp.Cli)) is replaced by the ABP Studio CLI ([Volo.Abp.Studio.Cli](https://www.nuget.org/packages/Volo.Abp.Studio.Cli)). [The new ABP CLI](https://abp.io/docs/latest/cli) is compatible with the old one, but extends it by introducing new commands. * The ABP CLI ([Volo.Abp.Cli](https://nuget.org/packages/Volo.Abp.Cli)) is replaced by the ABP Studio CLI ([Volo.Abp.Studio.Cli](https://www.nuget.org/packages/Volo.Abp.Studio.Cli)). [The new ABP Studio CLI](https://abp.io/docs/latest/cli) is compatible with the old one, and extends it by introducing new commands.
* [Startup solution templates](https://abp.io/docs/latest/solution-templates) are completely renewed. The solution structures are similar to the old ones, but they are totally new templates built with the new templating engine. * [Startup solution templates](https://abp.io/docs/latest/solution-templates) are completely renewed. The solution structures are similar to the old ones, but they are totally new templates built with the new templating engine.
* All the documentation and tutorials now uses ABP Studio and ABP Studio CLI. * All the documentation and tutorials now uses ABP Studio and ABP Studio CLI.
> ABP Studio is in beta stage now. It is also in rapid development and release cycle. We frequently release new feature and patch versions. Please [file an issue](https://github.com/abpframework/abp/issues/new/choose) if you find any bug. > **ABP Studio is in beta stage now.** It is also in rapid development and release cycle. We frequently release new feature and patch versions. Please [file an issue](https://github.com/abpframework/abp/issues/new/choose) if you have any problem.
> >
> If you want to continue to use the old CLI and old startup templates, please [refer that document](https://abp.io/docs/latest/cli/differences-between-old-and-new-cli). > If you want to continue to use the old CLI and old startup templates, please [refer that document](https://abp.io/docs/latest/cli/differences-between-old-and-new-cli).
## The New Startup Templates ## The Easiest Way to Start with the ABP Framework
As mentioned about, the [startup solution templates](https://abp.io/docs/latest/solution-templates) are completely renewed with ABP Studio. They provide much more options compared to the old startup templates. The following screenshot is taken from the New Solution wizard of ABP Studio, which provides an comfortable and easy way to create new solutions: As mentioned before, the [startup solution templates](https://abp.io/docs/latest/solution-templates) are completely renewed with ABP Studio. They provide much more options compared to the old startup templates. The following screenshot is taken from the New Solution wizard of ABP Studio, which provides an comfortable and easy way to create new solutions:
![abp-studio-new-layered-solution-template-wizard](abp-studio-new-layered-solution-template-wizard.png) ![abp-studio-new-layered-solution-template-wizard](abp-studio-new-layered-solution-template-wizard.png)
For example, you can now select all the non-fundamental modules as optional: For example, you can now select most of the non-fundamental modules as optional while creating a new solution:
![abp-studio-new-layered-solution-template-wizard-options](abp-studio-new-layered-solution-template-wizard-options.png) ![abp-studio-new-layered-solution-template-wizard-options](abp-studio-new-layered-solution-template-wizard-options.png)
### The Microservice Startup Template ### Developing Microservices Solutions is Now Much Easier
The most important change is made on the [microservice startup template](https://abp.io/docs/latest/solution-templates/microservice) (which is available only for Business or higher license holders). We've designed the solution structure, integrations, Kubernetes/Helm configuration, database migrations and all others from scratch and well documented all the decisions we've applied. Developing microservice solutions with ABP Framework is now easier and more understandable than ever.
## Architecting Your Complex Solutions
One of the main purposes to build ABP Studio was to simplify to create multi-modular and distributed systems. Either you create a modular monolith application or a microservice solution, [ABP Studio's solution explorer](https://abp.io/docs/latest/studio/solution-explorer) provides a convenient way to design your high-level solution structure.
You see a microservice solution in the following screenshot:
![solution-explorer](solution-explorer.png)
That ABP Studio solution contains multiple separate .NET solutions (`.sln`) each has multiple .NET projects (`.csproj`). ABP Studio allows you to easily manage such a multi-solution system on a single view. You can create new packages and modules, import existing packages and modules, manage their dependencies and so on.
## Run and Test Your Multi-Application Solutions with a Single Click
One of the biggest shortcomings we face when developing distributed or complex solutions is being able to easily run all components of the solutions so that we can test and debug a single service or application without caring about all the runtime dependencies.
Here a screenshot from the ABP Studio's [Solution Runner](https://abp.io/docs/latest/studio/running-applications) view:
![abp-studio-solution-runner-overall](abp-studio-solution-runner-overall.png)
When you use ABP Studio, it is dramatically easier to run, monitor, test, debug and develop your applications and services. You can browse your web UI applications, monitor all the HTTP requests, distributed events, exceptions and logs in real time on a single screen. In this way, you can easily run all the systems and trace the problems when you have.
All you need to click the *Play* button or right-click and select the *Run* -> *Start All* command:
![abp-studio-solution-runner-start-apps](abp-studio-solution-runner-start-apps.png)
The nice thing is that you can create multiple profiles for each of your teams so that they can run only the applications they need to develop the application they are working on.
## Seamlessly Develop Your Service as Integrated to Kubernetes
Kubernetes is the de-facto tool to deploy, run and scale complex systems. However, it can also be a great tool to develop such solutions in a local environment.
With ABP Studio's [Kubernetes Integration](https://abp.io/docs/latest/studio/kubernetes) system, it is now possible to deploy and run a complex system in a Kubernetes cluster. Then you can establish a bridge between your local development environment and the Kubernetes cluster. In this way, you can develop, run, test and debug an application or service in your local development environment as it is running in the Kubernetes cluster. All incoming and outgoing traffic is properly routed and managed by ABP Studio. You just focus on the service you are responsible to develop and let the Kubernetes run rest of the system for you.
You can see all the Helm charts in a solution in the Kubernetes panel of ABP Studio:
![abp-studio-helm-charts](abp-studio-helm-charts.png)
Here, you can easily build, install and uninstall the Helm charts to your Kubernetes cluster. In the Kubernetes tab, you can connect to the Kubernetes cluster and intercept a service to develop it locally. See [the documentation](https://abp.io/docs/latest/studio/kubernetes) for more information.
The good news is that all the monitoring data (HTTP Requests, Events, Exceptions, Logs,...) is still visible in real time with the Kubernetes integration too.
## Use the ABP Suite as Integrated to ABP Studio
[ABP Suite](https://abp.io/suite) is a tool that is basically used to generate code for ABP Solutions. It has started by creating simple CRUD pages, and now it does much more. It can establish relations with existing entities, create complex user interfaces like parent/child tables and so on...
ABP Suite can be used directly inside ABP Studio by clicking the *ABP Suite* -> *Open* command:
![abp-suite-open-in-abp-studio](abp-suite-open-in-abp-studio.png)
This will open ABP Suite in a new tab for the current solution and focus on the CRUD page generation:
![abp-suite-in-abp-studio](abp-suite-in-abp-studio.png)
The new ABP Studio solution templates and ABP Suite code generation are compatible with each other. Here a screenshot from the generated CRUD UI for a very simple Book entity:
![suite-generated-entity](suite-generated-entity.png)
## The Community Edition vs Commercial Licenses
ABP Studio has a Community Edition which is completely free and available to everyone. As you can guess, there are come differences between the community edition and commercial editions. ABP Platform has 4 fundamental license types;
* Open source (free)
* Team
* Business
* Enterprise
Here, the comparison table for ABP Studio features for these license types:
![abp-studio-license-comparison-table](abp-studio-license-comparison-table.png)
The most important change is made on the [microservice startup template](https://abp.io/docs/latest/solution-templates/microservice) (which is available only for Business or higher license holders). We've designed the solution structure, integrations, Kubernetes/Helm configuration, database migrations and all others from scratch and well documented all the decisions we applied. Developing microservice solutions with ABP Framework is now easier and more understandable than ever. Microservice startup template and Kubernetes integration features are available only for commercial licenses since these are considered more enterprise requirements. Also, the solution size is limited with the ABP Community edition. If you are building a large or distributed solution, consider to [purchase a commercial license](https://abp.io/pricing).
## The Solution Explorer ## Conclusion
One of the main purposes to build ABP Studio is to simplify to create multi-modular and distributed systems. Either you create a modular monolith application or a microservice solution, [ABP Studio's solution explorer](https://abp.io/docs/latest/studio/solution-explorer) provides a convenient way to design your high-level solution. You can think it as an architectural tool to create modules and packages and arrange their dependencies. I've introduced the ABP Studio General Availability with this post. It is still in the beta stage. You can expect frequent releases during the beta phase. We will add new features and fix issues quickly. Please [download](https://abp.io/studio) and use it now. If you find any problem, do not hesitate to open an [issue on GitHub](https://github.com/abpframework/abp/issues/new/choose).

BIN
docs/en/Blog-Posts/2024-07-30-Announcing-ABP-Studio/solution-explorer.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 103 KiB

BIN
docs/en/Blog-Posts/2024-07-30-Announcing-ABP-Studio/suite-generated-entity.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 44 KiB

BIN
docs/en/images/cmskit-module-markedItems.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.3 KiB

After

Width:  |  Height:  |  Size: 5.7 KiB

16
framework/NuGet.md

@ -11,21 +11,21 @@ ABP offers an opinionated architecture to build enterprise software solutions wi
🔗GitHub Repository: https://github.com/abpframework/abp 🔗GitHub Repository: https://github.com/abpframework/abp
🔗Samples: https://docs.abp.io/en/abp/latest/Samples/Index 🔗Samples: https://abp.io/docs/latest/Samples/Index
🔗Official Theme: https://www.LeptonTheme.com 🔗Official Theme: https://www.LeptonTheme.com
🔗Documentation: https://docs.abp.io 🔗Documentation: https://abp.io/docs
🔗Community: https://community.abp.io 🔗Community: https://abp.io/community
🔗Blog: https://blog.abp.io 🔗Blog: https://abp.io/blog
🔗Books: https://abp.io/books 🔗Books: https://abp.io/books
🔗Twitter: https://twitter.com/abpframework 🔗Twitter: https://twitter.com/abpframework
🔗Discord: https://community.abp.io/discord 🔗Discord: https://abp.io/community/discord
🔗Stackoverflow: https://stackoverflow.com/questions/tagged/abp 🔗Stackoverflow: https://stackoverflow.com/questions/tagged/abp
@ -124,8 +124,6 @@ Support for open-source ABP Framework client-side packages is available at [GitH
If you are building an enterprise-level application with pro support, extra tools like a code generator, fancy themes and a microservice template, time to invest in the commercial version! If you are building an enterprise-level application with pro support, extra tools like a code generator, fancy themes and a microservice template, time to invest in the commercial version!
To understand how it works, see [How it Works]( https://commercial.abp.io/how-it-works) page. To understand how it works, see [How it Works](https://abp.io/how-it-works) page.
If you wonder why you should choose ABP Commercial, check out [Why ABP.IO Platform](https://docs.abp.io/en/commercial/latest/why-abp-io-platform) page. If you wonder why you should choose ABP Commercial, check out [Why ABP.IO Platform](https://abp.io/docs/latest/others/why-abp-platform) page.
Official website: [https://commercial.abp.io](https://commercial.abp.io/)

6
framework/src/Volo.Abp.AspNetCore.Components.WebAssembly/Volo/Abp/AspNetCore/Components/WebAssembly/MultiTenant/WebAssemblyMultiTenantUrlOptions.cs

@ -0,0 +1,6 @@
namespace Volo.Abp.AspNetCore.Components.WebAssembly.MultiTenant;
public class WebAssemblyMultiTenantUrlOptions
{
public string DomainFormat { get; set; } = default!;
}

49
framework/src/Volo.Abp.AspNetCore.Components.WebAssembly/Volo/Abp/AspNetCore/Components/WebAssembly/MultiTenant/WebAssemblyMultiTenantUrlProvider.cs

@ -0,0 +1,49 @@
using System;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Components;
using Microsoft.Extensions.Options;
using Volo.Abp.DependencyInjection;
using Volo.Abp.MultiTenancy;
using Volo.Abp.Text.Formatting;
namespace Volo.Abp.AspNetCore.Components.WebAssembly.MultiTenant;
[Dependency(ReplaceServices = true)]
[ExposeServices(typeof(IMultiTenantUrlProvider), typeof(MultiTenantUrlProvider))]
public class WebAssemblyMultiTenantUrlProvider : MultiTenantUrlProvider
{
private readonly static string[] ProtocolPrefixes = ["http://", "https://"];
protected NavigationManager NavigationManager { get; }
protected IOptions<WebAssemblyMultiTenantUrlOptions> Options { get; }
public WebAssemblyMultiTenantUrlProvider(
ICurrentTenant currentTenant,
ITenantStore tenantStore,
NavigationManager navigationManager,
IOptions<WebAssemblyMultiTenantUrlOptions> options)
: base(currentTenant, tenantStore)
{
NavigationManager = navigationManager;
Options = options;
}
public async override Task<string> GetUrlAsync(string templateUrl)
{
if (!Options.Value.DomainFormat.IsNullOrEmpty() && !CurrentTenant.IsAvailable)
{
// If the domain format is configured and the tenant is not available
// try to extract the tenant name from the current blazor URL.
var url = NavigationManager.ToAbsoluteUri(NavigationManager.Uri).Authority;
var domainFormat = Options.Value.DomainFormat.RemovePreFix(ProtocolPrefixes).RemovePostFix("/");
var extractResult = FormattedStringValueExtracter.Extract(url, domainFormat, ignoreCase: true);
if (extractResult.IsMatch)
{
var tenant = extractResult.Matches[0].Value;
return templateUrl.Replace(TenantPlaceHolder, tenant).Replace(TenantIdPlaceHolder, tenant).Replace(TenantNamePlaceHolder, tenant);
}
}
return await base.GetUrlAsync(templateUrl);
}
}

32
framework/src/Volo.Abp.AspNetCore.Mvc.UI.Bundling/Volo/Abp/AspNetCore/Mvc/UI/Bundling/TagHelpers/ScriptTagHelper.cs

@ -0,0 +1,32 @@
using System;
using System.Linq;
using Microsoft.AspNetCore.Razor.TagHelpers;
using Microsoft.Extensions.Options;
using Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.TagHelpers;
namespace Volo.Abp.AspNetCore.Mvc.UI.Bundling.TagHelpers;
[HtmlTargetElement("script")]
public class ScriptTagHelper : AbpTagHelper
{
protected AbpBundlingOptions Options { get; }
public ScriptTagHelper(IOptions<AbpBundlingOptions> options)
{
Options = options.Value;
}
public override void Process(TagHelperContext context, TagHelperOutput output)
{
if (Options.DeferScriptsByDefault)
{
output.Attributes.Add("defer", "");
}
var src = output.Attributes["src"]?.Value?.ToString();
if (!src.IsNullOrWhiteSpace() && Options.DeferScripts.Any(x => src.Equals(x, StringComparison.OrdinalIgnoreCase)))
{
output.Attributes.Add("defer", "");
}
}
}

11
framework/src/Volo.Abp.BackgroundWorkers.Hangfire/Volo/Abp/BackgroundWorkers/Hangfire/HangfireBackgroundWorkerBase.cs

@ -1,6 +1,7 @@
using System; using System;
using System.Threading; using System.Threading;
using System.Threading.Tasks; using System.Threading.Tasks;
using Hangfire.States;
namespace Volo.Abp.BackgroundWorkers.Hangfire; namespace Volo.Abp.BackgroundWorkers.Hangfire;
@ -10,15 +11,9 @@ public abstract class HangfireBackgroundWorkerBase : BackgroundWorkerBase, IHang
public string CronExpression { get; set; } = default!; public string CronExpression { get; set; } = default!;
public TimeZoneInfo? TimeZone { get; set; } public TimeZoneInfo? TimeZone { get; set; } = TimeZoneInfo.Utc;
public string Queue { get; set; } public string Queue { get; set; } = EnqueuedState.DefaultQueue;
public abstract Task DoWorkAsync(CancellationToken cancellationToken = default); public abstract Task DoWorkAsync(CancellationToken cancellationToken = default);
protected HangfireBackgroundWorkerBase()
{
TimeZone = null;
Queue = "default";
}
} }

53
framework/src/Volo.Abp.BackgroundWorkers.Hangfire/Volo/Abp/BackgroundWorkers/Hangfire/HangfireBackgroundWorkerManager.cs

@ -35,39 +35,54 @@ public class HangfireBackgroundWorkerManager : BackgroundWorkerManager, ISinglet
case IHangfireBackgroundWorker hangfireBackgroundWorker: case IHangfireBackgroundWorker hangfireBackgroundWorker:
{ {
var unProxyWorker = ProxyHelper.UnProxy(hangfireBackgroundWorker); var unProxyWorker = ProxyHelper.UnProxy(hangfireBackgroundWorker);
if (hangfireBackgroundWorker.RecurringJobId.IsNullOrWhiteSpace())
{ RecurringJob.AddOrUpdate(
RecurringJob.AddOrUpdate( hangfireBackgroundWorker.RecurringJobId,
() => ((IHangfireBackgroundWorker)unProxyWorker).DoWorkAsync(cancellationToken), hangfireBackgroundWorker.Queue,
hangfireBackgroundWorker.CronExpression, hangfireBackgroundWorker.TimeZone, () => ((IHangfireBackgroundWorker)unProxyWorker).DoWorkAsync(cancellationToken),
hangfireBackgroundWorker.Queue); hangfireBackgroundWorker.CronExpression,
} new RecurringJobOptions
else {
{ TimeZone = hangfireBackgroundWorker.TimeZone
RecurringJob.AddOrUpdate(hangfireBackgroundWorker.RecurringJobId, });
() => ((IHangfireBackgroundWorker)unProxyWorker).DoWorkAsync(cancellationToken),
hangfireBackgroundWorker.CronExpression, hangfireBackgroundWorker.TimeZone,
hangfireBackgroundWorker.Queue);
}
break; break;
} }
case AsyncPeriodicBackgroundWorkerBase or PeriodicBackgroundWorkerBase: case AsyncPeriodicBackgroundWorkerBase or PeriodicBackgroundWorkerBase:
{ {
var timer = worker.GetType() var timer = worker.GetType().GetProperty("Timer", BindingFlags.Instance | BindingFlags.NonPublic)?.GetValue(worker);
.GetProperty("Timer", BindingFlags.Instance | BindingFlags.NonPublic)?.GetValue(worker);
var period = worker is AsyncPeriodicBackgroundWorkerBase ? ((AbpAsyncTimer?)timer)?.Period : ((AbpTimer?)timer)?.Period; var period = worker is AsyncPeriodicBackgroundWorkerBase ? ((AbpAsyncTimer?)timer)?.Period : ((AbpTimer?)timer)?.Period;
if (period == null) if (period == null)
{ {
return; return;
} }
var adapterType = typeof(HangfirePeriodicBackgroundWorkerAdapter<>).MakeGenericType(ProxyHelper.GetUnProxiedType(worker)); var adapterType = typeof(HangfirePeriodicBackgroundWorkerAdapter<>).MakeGenericType(ProxyHelper.GetUnProxiedType(worker));
var workerAdapter = (Activator.CreateInstance(adapterType) as IHangfireBackgroundWorker)!; var workerAdapter = (Activator.CreateInstance(adapterType) as IHangfireBackgroundWorker)!;
RecurringJob.AddOrUpdate(() => workerAdapter.DoWorkAsync(cancellationToken), GetCron(period.Value), workerAdapter.TimeZone, workerAdapter.Queue); if (workerAdapter.RecurringJobId.IsNullOrWhiteSpace())
{
RecurringJob.AddOrUpdate(
() => workerAdapter.DoWorkAsync(cancellationToken),
GetCron(period.Value),
workerAdapter.TimeZone ,
workerAdapter.Queue);
}
else
{
RecurringJob.AddOrUpdate(
workerAdapter.RecurringJobId,
workerAdapter.Queue,
() => workerAdapter.DoWorkAsync(cancellationToken),
GetCron(period.Value),
new RecurringJobOptions
{
TimeZone = workerAdapter.TimeZone
});
}
break; break;
} }

9
framework/src/Volo.Abp.BackgroundWorkers.Hangfire/Volo/Abp/BackgroundWorkers/Hangfire/HangfirePeriodicBackgroundWorkerAdapter.cs

@ -1,4 +1,5 @@
using System.Reflection; using System;
using System.Reflection;
using System.Threading; using System.Threading;
using System.Threading.Tasks; using System.Threading.Tasks;
using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.DependencyInjection;
@ -13,9 +14,9 @@ public class HangfirePeriodicBackgroundWorkerAdapter<TWorker> : HangfireBackgrou
public HangfirePeriodicBackgroundWorkerAdapter() public HangfirePeriodicBackgroundWorkerAdapter()
{ {
_doWorkAsyncMethod = _doWorkAsyncMethod = typeof(TWorker).GetMethod("DoWorkAsync", BindingFlags.Instance | BindingFlags.NonPublic)!;
typeof(TWorker).GetMethod("DoWorkAsync", BindingFlags.Instance | BindingFlags.NonPublic)!;
_doWorkMethod = typeof(TWorker).GetMethod("DoWork", BindingFlags.Instance | BindingFlags.NonPublic)!; _doWorkMethod = typeof(TWorker).GetMethod("DoWork", BindingFlags.Instance | BindingFlags.NonPublic)!;
RecurringJobId = BackgroundWorkerNameAttribute.GetNameOrNull<TWorker>();
} }
public async override Task DoWorkAsync(CancellationToken cancellationToken = default) public async override Task DoWorkAsync(CancellationToken cancellationToken = default)
@ -33,4 +34,6 @@ public class HangfirePeriodicBackgroundWorkerAdapter<TWorker> : HangfireBackgrou
break; break;
} }
} }
} }

13
framework/src/Volo.Abp.BackgroundWorkers.Quartz/Volo/Abp/BackgroundWorkers/Quartz/QuartzPeriodicBackgroundWorkerAdapter.cs

@ -39,14 +39,7 @@ public class QuartzPeriodicBackgroundWorkerAdapter<TWorker> : QuartzBackgroundWo
var timer = workerType.GetProperty("Timer", BindingFlags.Instance | BindingFlags.NonPublic)?.GetValue(worker); var timer = workerType.GetProperty("Timer", BindingFlags.Instance | BindingFlags.NonPublic)?.GetValue(worker);
if (worker is AsyncPeriodicBackgroundWorkerBase) period = worker is AsyncPeriodicBackgroundWorkerBase ? ((AbpAsyncTimer?)timer)?.Period : ((AbpTimer?)timer)?.Period;
{
period = ((AbpAsyncTimer?)timer)?.Period;
}
else
{
period = ((AbpTimer?)timer)?.Period;
}
} }
else else
{ {
@ -60,10 +53,10 @@ public class QuartzPeriodicBackgroundWorkerAdapter<TWorker> : QuartzBackgroundWo
JobDetail = JobBuilder JobDetail = JobBuilder
.Create<QuartzPeriodicBackgroundWorkerAdapter<TWorker>>() .Create<QuartzPeriodicBackgroundWorkerAdapter<TWorker>>()
.WithIdentity(workerType.FullName!) .WithIdentity(BackgroundWorkerNameAttribute.GetName<TWorker>())
.Build(); .Build();
Trigger = TriggerBuilder.Create() Trigger = TriggerBuilder.Create()
.WithIdentity(workerType.FullName!) .WithIdentity(BackgroundWorkerNameAttribute.GetName<TWorker>())
.WithSimpleSchedule(builder => builder.WithInterval(TimeSpan.FromMilliseconds(period.Value)).RepeatForever()) .WithSimpleSchedule(builder => builder.WithInterval(TimeSpan.FromMilliseconds(period.Value)).RepeatForever())
.Build(); .Build();
} }

42
framework/src/Volo.Abp.BackgroundWorkers/Volo/Abp/BackgroundWorkers/BackgroundWorkerNameAttribute.cs

@ -0,0 +1,42 @@
using System;
using System.Linq;
namespace Volo.Abp.BackgroundWorkers;
public class BackgroundWorkerNameAttribute : Attribute, IBackgroundWorkerNameProvider
{
public string Name { get; }
public BackgroundWorkerNameAttribute(string name)
{
Name = Check.NotNullOrWhiteSpace(name, nameof(name));
}
public static string GetName<TWorkerType>()
{
return GetName(typeof(TWorkerType));
}
public static string GetName(Type workerType)
{
Check.NotNull(workerType, nameof(workerType));
return GetNameOrNull(workerType) ?? workerType.FullName!;
}
public static string? GetNameOrNull<TWorkerType>()
{
return GetNameOrNull(typeof(TWorkerType));
}
public static string? GetNameOrNull(Type workerType)
{
Check.NotNull(workerType, nameof(workerType));
return workerType
.GetCustomAttributes(true)
.OfType<IBackgroundWorkerNameProvider>()
.FirstOrDefault()
?.Name;
}
}

6
framework/src/Volo.Abp.BackgroundWorkers/Volo/Abp/BackgroundWorkers/IBackgroundWorkerNameProvider.cs

@ -0,0 +1,6 @@
namespace Volo.Abp.BackgroundWorkers;
public interface IBackgroundWorkerNameProvider
{
string Name { get; }
}

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

@ -6,7 +6,7 @@ public static class CliConsts
public const string BranchPrefix = "branch@"; public const string BranchPrefix = "branch@";
public const string DocsLink = "https://docs.abp.io"; public const string DocsLink = "https://abp.io/docs";
public const string HttpClientName = "AbpHttpClient"; public const string HttpClientName = "AbpHttpClient";

2
framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/AddModuleCommand.cs

@ -139,7 +139,7 @@ public class AddModuleCommand : IConsoleCommand, ITransientDependency
sb.AppendLine(@" abp add-module ProductManagement --new -sp ..\Acme.BookStore.Web\Acme.BookStore.Web.csproj Crates a new module named `ProductManagement` and adds it to your solution."); sb.AppendLine(@" abp add-module ProductManagement --new -sp ..\Acme.BookStore.Web\Acme.BookStore.Web.csproj Crates a new module named `ProductManagement` and adds it to your solution.");
sb.AppendLine(@" abp add-module ProductManagement --new --add-to-solution-file -sp ..\Acme.BookStore.Web\Acme.BookStore.Web.csproj Crates a new module named `ProductManagement`, adds it to your solution & solution file."); sb.AppendLine(@" abp add-module ProductManagement --new --add-to-solution-file -sp ..\Acme.BookStore.Web\Acme.BookStore.Web.csproj Crates a new module named `ProductManagement`, adds it to your solution & solution file.");
sb.AppendLine(""); sb.AppendLine("");
sb.AppendLine("See the documentation for more info: https://docs.abp.io/en/abp/latest/CLI"); sb.AppendLine("See the documentation for more info: https://abp.io/docs/latest/cli");
return sb.ToString(); return sb.ToString();
} }

2
framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/AddPackageCommand.cs

@ -105,7 +105,7 @@ public class AddPackageCommand : IConsoleCommand, ITransientDependency
sb.AppendLine(" abp add-package Volo.Abp.FluentValidation -p Acme.BookStore.Application Adds the NuGet package to the given project."); sb.AppendLine(" abp add-package Volo.Abp.FluentValidation -p Acme.BookStore.Application Adds the NuGet package to the given project.");
sb.AppendLine(" abp add-package @abp/ng.theme.basic Adds the NPM package to the given corresponding project."); sb.AppendLine(" abp add-package @abp/ng.theme.basic Adds the NPM package to the given corresponding project.");
sb.AppendLine(""); sb.AppendLine("");
sb.AppendLine("See the documentation for more info: https://docs.abp.io/en/abp/latest/CLI"); sb.AppendLine("See the documentation for more info: https://abp.io/docs/latest/cli");
return sb.ToString(); return sb.ToString();
} }

2
framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/BuildCommand.cs

@ -103,7 +103,7 @@ public class BuildCommand : IConsoleCommand, ITransientDependency
sb.AppendLine("-n |--build-name <name> (default: empty)"); sb.AppendLine("-n |--build-name <name> (default: empty)");
sb.AppendLine("-f | --force (default: false)"); sb.AppendLine("-f | --force (default: false)");
sb.AppendLine(""); sb.AppendLine("");
sb.AppendLine("See the documentation for more info: https://docs.abp.io/en/abp/latest/CLI"); sb.AppendLine("See the documentation for more info: https://abp.io/docs/latest/cli");
return sb.ToString(); return sb.ToString();
} }

2
framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/BundleCommand.cs

@ -65,7 +65,7 @@ public class BundleCommand : IConsoleCommand, ITransientDependency
sb.AppendLine("-f | --force (default: false)"); sb.AppendLine("-f | --force (default: false)");
sb.AppendLine("-t | --project-type (default: webassembly)"); sb.AppendLine("-t | --project-type (default: webassembly)");
sb.AppendLine(""); sb.AppendLine("");
sb.AppendLine("See the documentation for more info: https://docs.abp.io/en/abp/latest/CLI"); sb.AppendLine("See the documentation for more info: https://abp.io/docs/latest/cli");
return sb.ToString(); return sb.ToString();
} }

2
framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/CleanCommand.cs

@ -52,7 +52,7 @@ public class CleanCommand : IConsoleCommand, ITransientDependency
sb.AppendLine("Usage:"); sb.AppendLine("Usage:");
sb.AppendLine(" abp clean"); sb.AppendLine(" abp clean");
sb.AppendLine(""); sb.AppendLine("");
sb.AppendLine("See the documentation for more info: https://docs.abp.io/en/abp/latest/CLI"); sb.AppendLine("See the documentation for more info: https://abp.io/docs/latest/cli");
return sb.ToString(); return sb.ToString();
} }

2
framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/ClearDownloadCacheCommand.cs

@ -47,7 +47,7 @@ public class ClearDownloadCacheCommand : IConsoleCommand, ITransientDependency
sb.AppendLine("Usage:"); sb.AppendLine("Usage:");
sb.AppendLine(" abp clear-download-cache"); sb.AppendLine(" abp clear-download-cache");
sb.AppendLine(""); sb.AppendLine("");
sb.AppendLine("See the documentation for more info: https://docs.abp.io/en/abp/latest/CLI"); sb.AppendLine("See the documentation for more info: https://abp.io/docs/latest/cli");
return sb.ToString(); return sb.ToString();
} }

2
framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/CliCommand.cs

@ -152,7 +152,7 @@ public class CliCommand : IConsoleCommand, ITransientDependency
public string GetShortDescription() public string GetShortDescription()
{ {
return "Update or remove ABP CLI. See https://docs.abp.io/en/abp/latest/CLI"; return "Update or remove ABP CLI. See https://abp.io/docs/latest/cli";
} }
public static class Options public static class Options

2
framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/GetSourceCommand.cs

@ -100,7 +100,7 @@ public class GetSourceCommand : IConsoleCommand, ITransientDependency
sb.AppendLine(" abp get-source Volo.Blogging"); sb.AppendLine(" abp get-source Volo.Blogging");
sb.AppendLine(" abp get-source Volo.Blogging -o d:\\my-project"); sb.AppendLine(" abp get-source Volo.Blogging -o d:\\my-project");
sb.AppendLine(""); sb.AppendLine("");
sb.AppendLine("See the documentation for more info: https://docs.abp.io/en/abp/latest/CLI"); sb.AppendLine("See the documentation for more info: https://abp.io/docs/latest/cli");
return sb.ToString(); return sb.ToString();
} }

2
framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/HelpCommand.cs

@ -86,7 +86,7 @@ public class HelpCommand : IConsoleCommand, ITransientDependency
sb.AppendLine(""); sb.AppendLine("");
sb.AppendLine(" abp help <command>"); sb.AppendLine(" abp help <command>");
sb.AppendLine(""); sb.AppendLine("");
sb.AppendLine("See the documentation for more info: https://docs.abp.io/en/abp/latest/CLI"); sb.AppendLine("See the documentation for more info: https://abp.io/docs/latest/cli");
return sb.ToString(); return sb.ToString();
} }

2
framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/InstallLibsCommand.cs

@ -58,7 +58,7 @@ public class InstallLibsCommand : IConsoleCommand, ITransientDependency
sb.AppendLine(""); sb.AppendLine("");
sb.AppendLine("-wd|--working-directory <directory-path> (default: empty)"); sb.AppendLine("-wd|--working-directory <directory-path> (default: empty)");
sb.AppendLine(""); sb.AppendLine("");
sb.AppendLine("See the documentation for more info: https://docs.abp.io/en/abp/latest/CLI"); sb.AppendLine("See the documentation for more info: https://abp.io/docs/latest/cli");
return sb.ToString(); return sb.ToString();
} }

2
framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/ListModulesCommand.cs

@ -67,7 +67,7 @@ public class ListModulesCommand : IConsoleCommand, ITransientDependency
sb.AppendLine("Options:"); sb.AppendLine("Options:");
sb.AppendLine(" --include-pro-modules Includes commercial (pro) modules in the output."); sb.AppendLine(" --include-pro-modules Includes commercial (pro) modules in the output.");
sb.AppendLine(""); sb.AppendLine("");
sb.AppendLine("See the documentation for more info: https://docs.abp.io/en/abp/latest/CLI"); sb.AppendLine("See the documentation for more info: https://abp.io/docs/latest/cli");
return sb.ToString(); return sb.ToString();
} }

2
framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/ListTemplatesCommand.cs

@ -94,7 +94,7 @@ public class ListTemplatesCommand : IConsoleCommand, ITransientDependency
sb.AppendLine("Usage:"); sb.AppendLine("Usage:");
sb.AppendLine(" abp list-templates"); sb.AppendLine(" abp list-templates");
sb.AppendLine(""); sb.AppendLine("");
sb.AppendLine("See the documentation for more info: https://docs.abp.io/en/abp/latest/CLI"); sb.AppendLine("See the documentation for more info: https://abp.io/docs/latest/cli");
return sb.ToString(); return sb.ToString();
} }

2
framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/LoginCommand.cs

@ -183,7 +183,7 @@ public class LoginCommand : IConsoleCommand, ITransientDependency
sb.AppendLine(" abp login john"); sb.AppendLine(" abp login john");
sb.AppendLine(" abp login john -p 1234"); sb.AppendLine(" abp login john -p 1234");
sb.AppendLine(""); sb.AppendLine("");
sb.AppendLine("See the documentation for more info: https://docs.abp.io/en/abp/latest/CLI"); sb.AppendLine("See the documentation for more info: https://abp.io/docs/latest/cli");
return sb.ToString(); return sb.ToString();
} }

2
framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/LoginInfoCommand.cs

@ -57,7 +57,7 @@ public class LoginInfoCommand : IConsoleCommand, ITransientDependency
sb.AppendLine("Usage:"); sb.AppendLine("Usage:");
sb.AppendLine(" abp login-info"); sb.AppendLine(" abp login-info");
sb.AppendLine(""); sb.AppendLine("");
sb.AppendLine("See the documentation for more info: https://docs.abp.io/en/abp/latest/CLI"); sb.AppendLine("See the documentation for more info: https://abp.io/docs/latest/cli");
return sb.ToString(); return sb.ToString();
} }

2
framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/NewCommand.cs

@ -232,7 +232,7 @@ public class NewCommand : ProjectCreationCommandBase, IConsoleCommand, ITransien
sb.AppendLine(" abp new Acme.BookStore --theme basic"); sb.AppendLine(" abp new Acme.BookStore --theme basic");
sb.AppendLine(" abp new Acme.BookStore --connection-string \"Server=myServerName\\myInstanceName;Database=myDatabase;User Id=myUsername;Password=myPassword\""); sb.AppendLine(" abp new Acme.BookStore --connection-string \"Server=myServerName\\myInstanceName;Database=myDatabase;User Id=myUsername;Password=myPassword\"");
sb.AppendLine(""); sb.AppendLine("");
sb.AppendLine("See the documentation for more info: https://docs.abp.io/en/abp/latest/CLI"); sb.AppendLine("See the documentation for more info: https://abp.io/docs/latest/cli");
return sb.ToString(); return sb.ToString();
} }

5
framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/ProjectCreationCommandBase.cs

@ -347,16 +347,15 @@ public abstract class ProjectCreationCommandBase
uiFramework = uiFramework == UiFramework.NotSpecified || uiFramework == UiFramework.None ? UiFramework.Mvc : uiFramework; uiFramework = uiFramework == UiFramework.NotSpecified || uiFramework == UiFramework.None ? UiFramework.Mvc : uiFramework;
databaseProvider = databaseProvider == DatabaseProvider.NotSpecified ? DatabaseProvider.EntityFrameworkCore : databaseProvider; databaseProvider = databaseProvider == DatabaseProvider.NotSpecified ? DatabaseProvider.EntityFrameworkCore : databaseProvider;
var urlPrefix = commercial ? "commercial" : "www";
var tieredYesNo = tiered ? "yes" : "no"; var tieredYesNo = tiered ? "yes" : "no";
var url = $"https://{urlPrefix}.abp.io/project-created-success?ui={uiFramework:g}&db={databaseProvider:g}&tiered={tieredYesNo}"; var url = $"https://abp.io/project-created-success?ui={uiFramework:g}&db={databaseProvider:g}&tiered={tieredYesNo}&commercial={(commercial ? "yes" : "no")}";
CmdHelper.Open(url); CmdHelper.Open(url);
} }
protected void OpenMicroserviceDocumentPage() protected void OpenMicroserviceDocumentPage()
{ {
var url = "https://docs.abp.io/en/commercial/latest/startup-templates/microservice/index"; var url = "https://abp.io/docs/latest/solution-templates/microservice";
CmdHelper.Open(url); CmdHelper.Open(url);
} }

2
framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/PromptCommand.cs

@ -22,7 +22,7 @@ public class PromptCommand : IConsoleCommand, ITransientDependency
sb.AppendLine("Usage:"); sb.AppendLine("Usage:");
sb.AppendLine(" abp prompt"); sb.AppendLine(" abp prompt");
sb.AppendLine(""); sb.AppendLine("");
sb.AppendLine("See the documentation for more info: https://docs.abp.io/en/abp/latest/CLI"); sb.AppendLine("See the documentation for more info: https://abp.io/docs/latest/cli");
return sb.ToString(); return sb.ToString();
} }

2
framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/ProxyCommandBase.cs

@ -114,7 +114,7 @@ public abstract class ProxyCommandBase<T> : IConsoleCommand, ITransientDependenc
sb.AppendLine(" -p|--prompt Asks the options from the command line prompt (for the missing options)"); sb.AppendLine(" -p|--prompt Asks the options from the command line prompt (for the missing options)");
sb.AppendLine(" --target <target-name> (default: 'defaultProject') Angular project name to place generated code in."); sb.AppendLine(" --target <target-name> (default: 'defaultProject') Angular project name to place generated code in.");
sb.AppendLine(""); sb.AppendLine("");
sb.AppendLine("See the documentation for more info: https://docs.abp.io/en/abp/latest/CLI"); sb.AppendLine("See the documentation for more info: https://abp.io/docs/latest/cli");
return sb.ToString(); return sb.ToString();
} }

2
framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/SuiteCommand.cs

@ -578,7 +578,7 @@ public class SuiteCommand : IConsoleCommand, ITransientDependency
public string GetShortDescription() public string GetShortDescription()
{ {
return "Install, update, remove or start ABP Suite. See https://commercial.abp.io/tools/suite."; return "Install, update, remove or start ABP Suite. See https://abp.io/suite.";
} }
public static class Options public static class Options

2
framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/SwitchToLocalCommand.cs

@ -103,7 +103,7 @@ public class SwitchToLocal : IConsoleCommand, ITransientDependency
sb.AppendLine(" abp switch-to-local --paths D:\\Github\\abp"); sb.AppendLine(" abp switch-to-local --paths D:\\Github\\abp");
sb.AppendLine(" abp switch-to-local --paths D:\\Github\\abp --solution D:\\test\\MyProject"); sb.AppendLine(" abp switch-to-local --paths D:\\Github\\abp --solution D:\\test\\MyProject");
sb.AppendLine(" abp switch-to-local --paths \"D:\\Github\\abp|D:\\Github\\volo\""); sb.AppendLine(" abp switch-to-local --paths \"D:\\Github\\abp|D:\\Github\\volo\"");
sb.AppendLine("See the documentation for more info: https://docs.abp.io/en/abp/latest/CLI"); sb.AppendLine("See the documentation for more info: https://abp.io/docs/latest/cli");
return sb.ToString(); return sb.ToString();
} }

2
framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/SwitchToNightlyCommand.cs

@ -33,7 +33,7 @@ public class SwitchToNightlyCommand : IConsoleCommand, ITransientDependency
sb.AppendLine("Options:"); sb.AppendLine("Options:");
sb.AppendLine("-d|--directory"); sb.AppendLine("-d|--directory");
sb.AppendLine(""); sb.AppendLine("");
sb.AppendLine("See the documentation for more info: https://docs.abp.io/en/abp/latest/CLI"); sb.AppendLine("See the documentation for more info: https://abp.io/docs/latest/cli");
return sb.ToString(); return sb.ToString();
} }

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

Loading…
Cancel
Save