diff --git a/.github/workflows/build-and-test.yml b/.github/workflows/build-and-test.yml
index 68d7849c56..acbc322f12 100644
--- a/.github/workflows/build-and-test.yml
+++ b/.github/workflows/build-and-test.yml
@@ -41,7 +41,7 @@ permissions:
jobs:
build-test:
- runs-on: windows-latest
+ runs-on: ubuntu-latest
if: ${{ !github.event.pull_request.draft }}
steps:
- uses: actions/checkout@v2
@@ -49,15 +49,19 @@ jobs:
with:
dotnet-version: 7.0.100
+ - name: chown
+ run: |
+ sudo chown -R $USER:$USER /home/runneradmin
+
- name: Build All
- run: .\build-all.ps1 -f
- working-directory: .\build
- shell: powershell
+ run: ./build-all.ps1
+ working-directory: ./build
+ shell: pwsh
- name: Test All
- run: .\test-all.ps1 -f
- working-directory: .\build
- shell: powershell
+ run: ./test-all.ps1
+ working-directory: ./build
+ shell: pwsh
- name: Codecov
uses: codecov/codecov-action@v2
diff --git a/abp_io/AbpIoLocalization/AbpIoLocalization/AbpIoLocalization.csproj b/abp_io/AbpIoLocalization/AbpIoLocalization/AbpIoLocalization.csproj
index 7b26f13919..400c15ff77 100644
--- a/abp_io/AbpIoLocalization/AbpIoLocalization/AbpIoLocalization.csproj
+++ b/abp_io/AbpIoLocalization/AbpIoLocalization/AbpIoLocalization.csproj
@@ -1,7 +1,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
diff --git a/abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/ar.json b/abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/ar.json
index 938f3f9525..d875bffc2b 100644
--- a/abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/ar.json
+++ b/abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/ar.json
@@ -516,6 +516,7 @@
"Pricing_Page_Testimonial_4": "ABP التجاري منتج رائع يوصى به. تسويق المنتجات التجارية لعملائنا في منصة واحدة قابلة للتكوين. البداية السريعة التي يوفرها إطار العمل والأدوات لأي فريق تستحق كل سنت. كانت ABP هي الأنسب لاحتياجاتنا.",
"Pricing_Page_Testimonial_5": "إطار عمل ABP ليس مجرد إطار عمل ، ولكنه أيضًا دليل لتطوير / إدارة المشروع ، لأنه يوفر تدريب DDD و GenericRepository و DI و Microservice و Modularity. حتى إذا كنت لن تستخدم الإطار نفسه ، يمكنك تطوير نفسك باستخدام docs.abp.io المُعد جيدًا ومهنيًا (OpenIdict و Redis و Quartz وما إلى ذلك). نظرًا لأن العديد من الأشياء مبنية مسبقًا ، فإنها تقصر وقت تطوير المشروع بشكل كبير (مثل صفحة تسجيل الدخول ، ومعالجة الاستثناءات ، وتصفية البيانات ، والبذر ، وتسجيل التدقيق ، والترجمة ، ووحدة التحكم في واجهة برمجة التطبيقات التلقائية ، وما إلى ذلك). كمثال من تطبيقنا ، لقد استخدمت Local Event Bus للتحكم في المخزون. لذلك ، أنا قادر على إدارة حركات الأوامر عن طريق كتابة معالج الأسهم. إنه لأمر رائع ألا تضيع الوقت من أجل CreationTime ، CreatorId. يتم ملؤها تلقائيًا.",
"Pricing_Page_Testimonial_6": "إطار عمل ABP هو إطار عمل جيد ولكنه يحتاج إلى وقت لفهم الطبقات والفئات والمكتبات المختلفة التي يستخدمها (خاصة ABP). قضيت الكثير من الوقت في قراءة قاعدة الكود ، لكن ABP Commercial توفر لنا الوقت لإنشاء كيانات تخصص المشروع (AR) والمستودع المرتبط بكل منها. أعجبني أيضًا أن النهج المستخدم في ABP ناضج جدًا ، ونعلم أنه يعتمد على DDD و monolith.",
+ "Pricing_Page_Testimonial_7": "كشركة ناشئة ، نحتاج إلى التكرار بسرعة وقضاء أقل وقت في استخدام الميزات المعيارية وغير الأساسية.\nتتراوح مهندسينا من ذوي الخبرة العالية إلى المهندسين المبتدئين ، فنحن بحاجة إلى فهم مشترك وطريقة لمشاركة المعرفة الفنية والمعرفة بالمجال ، وقد سمح لنا ABP بالقيام بذلك بسبب أدلةهم ووثائقهم الرائعة.\nهناك أشياء لا داعي للقلق بشأنها لأنها تعمل خارج الصندوق مع ABP.\nساعدتنا ABP في تبسيط النماذج الأولية السريعة والتطوير ، أقل من 4 أسابيع من بداية الميزة إلى الإنتاج. مع كل ميزاتها المتميزة المضمنة في الترخيص ، منحتنا ABP \"Startup in a Box\" في جانب هندسة البرمجيات.",
"AbpBookDownloadArea_ClaimYourEBook": "احصل على كتاب إتقان إطار عمل ABP الالكتروني الخاص بك",
"AddMemberModal_Warning_1": "اذا كان المستخدم الذي تحاول اضافته لا يوجد في النظام, يرجى مطالبة عضو فريقك بالتسجيل في {0} ومشاركة اسم المستخدم الخاص بحسابه معك.",
"MyOrganizations_Detail_WelcomeMessage": "مرحبًا بك في مؤسستك، {0}",
diff --git a/abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/en.json b/abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/en.json
index fa6c683071..c6521a6c56 100644
--- a/abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/en.json
+++ b/abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/en.json
@@ -538,6 +538,7 @@
"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 start that the framework and tooling provide any team is worth every cent. ABP Commercial 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_6": "ABP Framework is a good framework but it needs time to understand the different layers, classes, and libraries it used (specially ABP). I spent a lot of time reading the code base, but ABP Commercial save us time to create 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, 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.",
"AbpBookDownloadArea_ClaimYourEBook": "Claim your Mastering ABP Framework E-Book",
"AddMemberModal_Warning_1": "If the username you are trying to add doesn't exist in the system, please ask your team member to register on {0} and share the username of his/her account with you.",
"MyOrganizations_Detail_WelcomeMessage": "Welcome to your organization, {0}",
diff --git a/abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/fi.json b/abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/fi.json
index bc8bd81c8f..885f43c70b 100644
--- a/abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/fi.json
+++ b/abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/fi.json
@@ -538,6 +538,7 @@
"Pricing_Page_Testimonial_4": "ABP Commercial on loistava tuote, jota suosittelen. Kaupalliset tuotteet markkinoille asiakkaillemme yhdellä konfiguroitavalla alustalla. Kehyksen ja työkalujen tarjoama aloitus jokaiselle joukkueelle on jokaisen sentin arvoinen. ABP Commercial sopi parhaiten tarpeisiimme.",
"Pricing_Page_Testimonial_5": "ABP Framework ei ole vain viitekehys, vaan se on myös opas projektin kehittämiseen/hallintaan, koska se tarjoaa DDD-, GenericRepository-, DI-, Microservice- ja Modularity-koulutusta. Vaikka et itse käyttäisikään kehystä, voit kehittää itseäsi docs.abp.io:lla, joka on hyvin ja ammattimaisesti valmisteltu (OpenIddict, Redis, Quartz jne.). Koska monet asiat on rakennettu valmiiksi, se lyhentää projektin kehitysaikaa merkittävästi (kuten kirjautumissivu, poikkeusten käsittely, tietojen suodatus, kylvö, tarkastusloki, lokalisointi, automaattinen API-ohjain jne.). Esimerkkinä sovelluksestamme olen käyttänyt paikallista tapahtumaväylää varastonhallintaan. Pystyn siis hallitsemaan tilausliikkeitä kirjoittamalla varastokäsittelijäksi. On hienoa olla hukkaamatta aikaa CreationTimelle, CreatorId:lle. Ne täytetään automaattisesti.",
"Pricing_Page_Testimonial_6": "ABP Framework on hyvä kehys, mutta sen käyttämien eri kerrosten, luokkien ja kirjastojen (erityisesti ABP:n) ymmärtäminen vaatii aikaa. Käytin paljon aikaa koodikannan lukemiseen, mutta ABP Commercial säästää aikaa projektin erityiskokonaisuuksien (AR) ja kuhunkin niistä linkitetyn arkiston luomiseen. Pidin myös ABP:ssä käytetystä lähestymistavasta, joka on hyvin kypsä, sillä se perustuu DDD:hen ja monoliittisuuteen.",
+ "Pricing_Page_Testimonial_7": "Aloittajana meidän on iteroitava nopeasti ja käytettävä mahdollisimman vähän aikaa perusominaisuuksiin ja muihin kuin ydinominaisuuksiin.\nInsinöörimme vaihtelevat erittäin kokeneista nuorempiin insinööreihin, tarvitsimme yhteisymmärryksen ja tavan jakaa teknistä ja aluetietoa. ABP antoi meille mahdollisuuden tehdä tämä heidän loistavien oppaidensa ja dokumentointinsa ansiosta.\nOn asioita, joista meidän ei ole tarvinnut huolehtia, koska ne toimivat suoraan ABP:n kanssa.\nABP auttoi meitä virtaviivaistamaan nopeaa prototyyppien valmistusta ja kehitystä, alle 4 viikkoa ominaisuuden käyttöönotosta tuotantoon. Kaikkien lisenssiin sisältyvien ensiluokkaisten ominaisuuksiensa ansiosta ABP on antanut meille \"Startup in a Box\" -ohjelman ohjelmistosuunnittelun puolella.",
"AbpBookDownloadArea_ClaimYourEBook": "Lunasta Mastering ABP Framework -e-kirja",
"AddMemberModal_Warning_1": "Jos käyttäjätunnusta, jota yrität lisätä, ei ole järjestelmässä, pyydä tiimisi jäsentä rekisteröitymään osoitteessa {0} a> ja jakaa hänen tilinsä käyttäjätunnus kanssasi.",
"MyOrganizations_Detail_WelcomeMessage": "Tervetuloa organisaatioosi, {0}",
diff --git a/abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/hu.json b/abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/hu.json
index 9df49a3b0a..65f7a66c2d 100644
--- a/abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/hu.json
+++ b/abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/hu.json
@@ -539,6 +539,7 @@
"Pricing_Page_Testimonial_4": "Az ABP Commercial egy fantasztikus termék, amelyet ajánlunk. Kereskedelmi termékek, amelyeket ügyfeleink számára egyetlen konfigurálható platformon értékesíthetnek. Az ugrásszerű indítás, amelyet a keret és az eszközök biztosítanak bármely csapat számára, minden centet megér. Az ABP Commercial volt a legjobban megfelelő az igényeinknek.",
"Pricing_Page_Testimonial_5": "Az ABP Framework nem csak keretrendszer, hanem útmutató is a projektfejlesztéshez/menedzsmenthez, mert DDD, GenericRepository, DI, Microservice és Modularity képzést biztosít. Ha magát a keretrendszert nem is használja, fejlesztheti magát a docs.abp.io-val, amely jól és professzionálisan elkészített (OpenIddict, Redis, Quartz stb.) leírás. Mivel sok minden előre be van építve, jelentősen lerövidíti a projektfejlesztési időt (például bejelentkezési oldal, kivételkezelés, adatszűrés, aéapadatok, audit naplózás, lokalizáció, automatikus API vezérlő stb.). Alkalmazásunkból példaként a Helyi Event Bus-t használtam az állomány karbantartására. Így a rendelési mozgásokat eseményekkel tudom a készlethez igazítani. Csodálatos, hogy nem veszítünk időt a CreationTime-ra, a CreatorId-re. Automatikusan feltöltődnek.",
"Pricing_Page_Testimonial_6": "Az ABP Framework egy jó keretrendszer, de időre van szükség a különböző rétegek, osztályok és könyvtárak (különösen az ABP) megértéséhez. Sok időt töltöttem a kódbázis elolvasásával, de az ABP Commercial időt takarít meg nekünk a projekt speciális entitások (AR) és a mindegyikhez kapcsolódó tároló létrehozására. Tetszett az ABP-ben használt megközelítés is nagyon érett, tudjuk, hogy a DDD-n és a monoliton alapul.",
+ "Pricing_Page_Testimonial_7": "Indításként gyorsan ismételgetnünk kell, és minimális időt kell töltenünk az alapjellemzőkkel és a nem alapvető funkciókkal.\nMérnökeink a nagy tapasztalattal rendelkező mérnököktől a fiatal mérnökökig terjednek, közös megértésre volt szükségünk, és egy módra volt szükségünk a műszaki és területi ismeretek megosztására, az ABP ezt nagyszerű útmutatóik és dokumentációik révén tette lehetővé.\nVannak dolgok, amelyek miatt nem kellett aggódnunk, mióta az ABP-vel már a dobozból működnek.\nAz ABP segített nekünk a gyors prototípus-készítés és fejlesztés egyszerűsítésében, kevesebb mint 4 héttel a funkció kezdetétől a gyártásig. A licencben szereplő összes prémium funkcióval együtt az ABP a szoftverfejlesztési oldalon a „Startup in a Box”-t adta nekünk.",
"AbpBookDownloadArea_ClaimYourEBook": "Igényelje Mastering ABP Framework e-könyvét",
"AddMemberModal_Warning_1": "Ha a hozzáadni kívánt felhasználónév nem létezik a rendszerben, kérje meg csapattagját, hogy regisztráljon a (z) {0} webhelyen, és ossza meg fiókja felhasználónevét Önnel.",
"MyOrganizations_Detail_WelcomeMessage": "Üdvözöljük szervezetében, {0}",
diff --git a/abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/tr.json b/abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/tr.json
index 96375db1f6..9623aba8bf 100644
--- a/abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/tr.json
+++ b/abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/tr.json
@@ -548,6 +548,7 @@
"Pricing_Page_Testimonial_4": "ABP Commercial harika bir ürün, tavsiye ederim. Müşterilerimiz için ticari ürünleri tek bir yapılandırılabilir platformda pazara sunuyor. Çerçeve ve araçların herhangi bir ekibe sağladığı hızlı başlangıç her kuruşa değer. ABP Commercial ihtiyaçlarımız için en uygun üründü.",
"Pricing_Page_Testimonial_5": "ABP Framework sadece bir framework değil, aynı zamanda bir proje geliştirme/yönetme rehberi, çünkü DDD, GenericRepository, DI, Microservice ve Modularity eğitimleri veriyor. Framework'ün kendisini kullanmayacak olsanız bile, iyi ve profesyonelce hazırlanmış docs.abp.io ile kendinizi geliştirebilirsiniz (OpenIddict, Redis, Quartz vb.). Birçok şey önceden hazır olduğu için proje geliştirme süresini önemli ölçüde kısaltıyor (Giriş sayfası, istisna işleme, veri filtreleme, tohumlama, denetim günlüğü, yerelleştirme, otomatik API denetleyicisi vb.) Uygulamamızdan bir örnek olarak, stok kontrolü için Local Event Bus kullandım. Böylece stok işleyicisi yazarak sipariş hareketlerini yönetebiliyorum. CreationTime, CreatorId için zaman kaybetmemek harika. Bunlar otomatik olarak dolduruluyor.",
"Pricing_Page_Testimonial_6": "ABP Framework iyi bir çerçeve ancak kullandığı farklı katmanları, sınıfları ve kütüphaneleri (özellikle ABP) anlamak için zaman gerekiyor. Kod tabanını okumak için çok zaman harcadım, ancak ABP Commercial, proje özel varlıklarını (AR) ve her birine bağlı depoyu oluşturmak için bize zaman kazandırdı. ABP'de kullanılan yaklaşımın çok olgun olduğunu da beğendim, DDD ve monolith'e dayandığını biliyoruz.",
+ "Pricing_Page_Testimonial_7": "Bir başlangıç olarak hızlı bir şekilde yineleme yapmamız ve temel olmayan özellikler için minimum zaman harcamamız gerekiyor.\nMühendislerimiz son derece deneyimli mühendislerden genç mühendislere kadar çeşitlilik gösteriyor, ortak bir anlayışa ve teknik ve alan bilgisini paylaşmanın bir yoluna ihtiyacımız vardı, ABP harika kılavuzları ve belgeleri sayesinde bunu yapmamızı sağladı. \nABP ile kutudan çıkar çıkmaz çalıştıkları için endişelenmemize gerek kalmayan şeyler var. \nABP, hızlı prototip oluşturma ve geliştirmeyi kolaylaştırmamıza yardımcı oldu, özelliğin başlangıcından üretime kadar 4 haftadan kısa bir süre geçti. Lisansa dahil olan tüm premium özellikleriyle ABP, Yazılım Mühendisliği tarafında bize \"Startup in a Box\" sağladı.",
"AbpBookDownloadArea_ClaimYourEBook": "Mastering ABP Framework E-Kitabınızı talep edin",
"AddMemberModal_Warning_1": "Eklemeye çalıştığınız kullanıcı adı sistemde yoksa, lütfen ekip üyenizden {0} adresine kaydolmasını ve hesabının kullanıcı adını sizinle paylaşmasını isteyin.",
"MyOrganizations_Detail_WelcomeMessage": "Organizasyonunuza hoş geldiniz, {0}",
diff --git a/abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/zh-Hans.json b/abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/zh-Hans.json
index d78d8469f8..c6ed352d1e 100644
--- a/abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/zh-Hans.json
+++ b/abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/zh-Hans.json
@@ -538,6 +538,7 @@
"Pricing_Page_Testimonial_4": "ABP 商业版 是一款很值得推荐的出色产品。 是在一个可配置的平台上为我们的客户推向市场的商业产品。 其框架和工具为任何团队提供的快速启动值得每一分钱。 ABP 商业版 最适合我们的需求。",
"Pricing_Page_Testimonial_5": "ABP Framework 不仅是一个框架,它还是项目开发/管理的指南,因为它提供了 DDD、GenericRepository、DI、微服务和模块化培训。 即使你不打算使用框架本身,你也可以通过 docs.abp.io 进行自己的开发,该文档已经做好了专业的准备(OpenIddict、Redis、Quartz 等)。 因为很多东西都是预先构建的,它大大缩短了项目开发时间(例如登录页面、异常处理、数据过滤、种子、审计日志、本地化、自动 API 控制器等)。 作为我们应用程序的一个示例,我使用本地事件总线进行库存控制。 因此我可以通过编写库存处理程序来管理订单移动。 不为 CreationTime,CreatorId 浪费时间真是太好了。 它们正在自动填充。",
"Pricing_Page_Testimonial_6": "ABP Framework 是一个很好的框架,但它需要时间来理解它使用的不同层、类和库(特别是 ABP)。 我花了很多时间阅读代码库,但是 ABP Commercial 为我们节省了创建项目专业实体 (AR) 和链接到每个实体的存储库的时间。 我也喜欢 ABP 中使用的方法非常成熟,我们知道它基于 DDD 和单体。",
+ "Pricing_Page_Testimonial_7": "作为一家初创公司,我们需要快速迭代并在样板和非核心功能上花费最少的时间。\n我们的工程师从经验丰富的工程师到初级工程师,我们需要一个共同的理解和一种分享技术和领域知识的方式,ABP 允许我们这样做是因为他们提供了很好的指南和文档。\n有些事情我们不必担心,因为它们与 ABP 一起开箱即用。\nABP 帮助我们简化了快速原型设计和开发,从功能开始到生产不到 4 周。凭借许可证中包含的所有高级功能,ABP 在软件工程方面为我们提供了“盒子里的启动”。",
"AbpBookDownloadArea_ClaimYourEBook": "领取您的掌握ABP框架电子书",
"AddMemberModal_Warning_1": "如果您尝试添加的用户名在系统中不存在,请让您的团队成员在 {0} 上注册 a> 并与您分享他/她帐户的用户名。",
"MyOrganizations_Detail_WelcomeMessage": "欢迎加入您的组织,{0}",
diff --git a/abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/en.json b/abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/en.json
index 63e795efee..16ce5acab0 100644
--- a/abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/en.json
+++ b/abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/en.json
@@ -419,6 +419,15 @@
"WhoWeAre_Expert": "About Me",
"CreateSolutionFolder": "Create Solution Folder",
"CreateSolutionFolderOption": "Specifies if the project will be in a new folder in the output folder or directly the output folder.",
- "BooksPageTitle": "ABP Books"
+ "BooksPageTitle": "ABP Books",
+ "PackageDetailPage_NuGetPackageInstallationOptions": "There are two ways to install {0} NuGet package to your project",
+ "PackageDetailPage_InstallingWithABPCLI": "1: Installing with the ABP CLI",
+ "PackageDetailPage_InstallingWithABPCLIDescription1": "If you haven't installed the ABP CLI, first install by executing the following command in a command-line terminal",
+ "PackageDetailPage_InstallingWithABPCLIDescription2": "Once you have installed the ABP CLI, open a command-line terminal in the location of the project (.csproj file) you want to install it and execute the following command",
+ "PackageDetailPage_InstallingWithABPCLIDescription3": "It will add the {0} package reference to your project and the {1} dependency to your module class.",
+ "PackageDetailPage_ManualInstallation": "2: Manual Installation",
+ "PackageDetailPage_ManualInstallationDesription1": "Add {0} NuGet package reference to your project using your IDE or executing the following command",
+ "PackageDetailPage_ManualInstallationDesription2": "Then add the {0} dependency to your module class as shown in the following example",
+ "PackageDetailPage_SeeDocumentation": "See the documentation to learn how to use this package in your applications."
}
}
diff --git a/docs/en/Blog-Posts/2023-05-03 v7_2_Release_Stable/POST.md b/docs/en/Blog-Posts/2023-05-03 v7_2_Release_Stable/POST.md
new file mode 100644
index 0000000000..1fc9a64d0c
--- /dev/null
+++ b/docs/en/Blog-Posts/2023-05-03 v7_2_Release_Stable/POST.md
@@ -0,0 +1,86 @@
+# ABP.IO Platform 7.2 Final Has Been Released!
+
+[ABP Framework](https://abp.io/) and [ABP Commercial](https://commercial.abp.io/) 7.2 versions have been released today.
+
+## What's New With Version 7.2?
+
+All the new features were already explained in detail in the [7.2 RC Announcement Post](https://blog.abp.io/abp/ABP.IO-Platform-7.2-RC-Has-Been-Published), so no need to go over them again. Check it out for more details.
+
+## Getting Started with 7.2
+
+### Creating New Solutions
+
+You can create a new solution with the ABP Framework version 7.2 by either using the `abp new` command or generating the CLI command on the [get started page](https://abp.io/get-started).
+
+> See the [getting started document](https://docs.abp.io/en/abp/latest/Getting-Started) for more.
+
+### How to Upgrade an Existing Solution
+
+#### Install/Update the ABP CLI
+
+First of all, install the ABP CLI or upgrade it to the latest version.
+
+If you haven't installed it yet:
+
+```bash
+dotnet tool install -g Volo.Abp.Cli
+```
+
+To update the existing CLI:
+
+```bash
+dotnet tool update -g Volo.Abp.Cli
+```
+
+#### Upgrading Existing Solutions with the ABP Update Command
+
+[ABP CLI](https://docs.abp.io/en/abp/latest/CLI) provides a handy command to update all the ABP related NuGet and NPM packages in your solution with a single command:
+
+```bash
+abp update
+```
+
+Run this command in the root folder of your solution.
+
+## Migration Guides
+
+There are breaking changes in this version that may affect your application.
+Please see the following migration documents, if you are upgrading from v7.1:
+
+* [ABP Framework 7.1 to 7.2 Migration Guide](https://docs.abp.io/en/abp/7.2/Migration-Guides/Abp-7_2)
+* [ABP Commercial 7.1 to 7.2 Migration Guide](https://docs.abp.io/en/commercial/7.2/migration-guides/v7_2)
+
+## Community News
+
+### ABP - DOTNET CONF'23
+
+
+
+As the ABP team, we've organized 10+ [online events](https://community.abp.io/events) and gained a good experience with software talks. We are organizing ABP Dotnet Conference 2023, a full-featured software conference, on May 10. You can visit [https://abp.io/conference](https://abp.io/conference) to see the speakers, talks, schedules, and other details.
+
+Don't forget to take your seat and buy a ticket from [https://kommunity.com/volosoft/events/1st-abp-conference-96db1a54](https://kommunity.com/volosoft/events/1st-abp-conference-96db1a54)!
+
+### New ABP Community Posts
+
+There are exciting articles contributed by the ABP community as always. I will highlight some of them here:
+
+* [Converting Create/Edit Modal to Page AngularUI](https://community.abp.io/posts/converting-createedit-modal-to-page-angularui-doadhgil) by [Masum Ulu](https://twitter.com/masumulu)
+* [How to Export Data to Excel Files with ASP.NET Core Minimal API](https://community.abp.io/posts/how-to-export-data-to-excel-files-with-asp.net-core-minimal-api-79o45u3s) by [Berkan Sasmaz](https://twitter.com/berkansasmazz)
+* [ABP React Template](https://community.abp.io/posts/abp-react-template-33pjmran) by [Anto Subash](https://twitter.com/antosubash)
+* [Using Dapper with the ABP Framework](https://community.abp.io/posts/using-dapper-with-the-abp-framework-shp74p2l) by [Halil Ibrahim Kalkan](https://twitter.com/hibrahimkalkan)
+* [Converting Create/Edit Modal to Page - Blazor](https://community.abp.io/posts/converting-createedit-modal-to-page-blazor-eexdex8y) by [Enis Necipoglu](https://twitter.com/EnisNecipoglu)
+* [What’s New in .NET 8 🧐 ? Discover ALL .NET 8 Features](https://community.abp.io/posts/whats-new-in-.net-8-discover-all-.net-8-features-llcmrdre) by [Alper Ebicoglu](https://twitter.com/alperebicoglu)
+
+Thanks to the ABP Community for all the content they have published. You can also [post your ABP-related (text or video) content](https://community.abp.io/articles/submit) to the ABP Community.
+
+### New ABP Blog Posts
+
+There are also some exciting blog posts written by the ABP team. You can see the following list for some of those articles:
+
+* [You Are Invited to ABP .NET Conf’23! 📣](https://blog.abp.io/abp/You-Are-Invited-to-ABP-dotNET-Conf23) by [Bige Beşikçi](https://twitter.com/bigedediki)
+* [💻 Speed Up Your ASP.NET Application 🚀](https://blog.abp.io/abp/Speed-Up-Your-ASP.NET-Application) by [Salih Özkara](https://twitter.com/salihozkara_)
+* [C# 12 🔍 Discover the Exciting New Features & Improvements 🆕🚀](https://blog.abp.io/abp/CSharp-12-Discover-the-Exciting-New-Features-and-Improvements) by [Alper Ebiçoğlu](https://twitter.com/alperebicoglu)
+
+## About the Next Version
+
+The next feature version will be 7.3. You can follow the [release planning here](https://github.com/abpframework/abp/milestones). Please [submit an issue](https://github.com/abpframework/abp/issues/new) if you have any problems with this version.
diff --git a/docs/en/Blog-Posts/2023-05-03 v7_2_Release_Stable/abp-conf.png b/docs/en/Blog-Posts/2023-05-03 v7_2_Release_Stable/abp-conf.png
new file mode 100644
index 0000000000..889ddbdc0a
Binary files /dev/null and b/docs/en/Blog-Posts/2023-05-03 v7_2_Release_Stable/abp-conf.png differ
diff --git a/docs/en/Blog-Posts/2023-05-03 v7_2_Release_Stable/cover-image.png b/docs/en/Blog-Posts/2023-05-03 v7_2_Release_Stable/cover-image.png
new file mode 100644
index 0000000000..59b45f9ec5
Binary files /dev/null and b/docs/en/Blog-Posts/2023-05-03 v7_2_Release_Stable/cover-image.png differ
diff --git a/docs/en/Community-Articles/2023-05-03-Authority-Delegation-In-ABP-Commerical/POST.md b/docs/en/Community-Articles/2023-05-03-Authority-Delegation-In-ABP-Commerical/POST.md
new file mode 100644
index 0000000000..e7c540764f
--- /dev/null
+++ b/docs/en/Community-Articles/2023-05-03-Authority-Delegation-In-ABP-Commerical/POST.md
@@ -0,0 +1,36 @@
+# Authority Delegation in ABP Commercial
+
+In this post, I'll explain a new feature that comes with the ABP Commercial `v7.2.0`. It's called **Authority Delegation**.
+
+## Authority Delegation
+
+Authority Delegation is a way of delegating the responsibility of the current user to a different user(s) for a limited time. Thus, the user can switch to the delegated user's account and perform actions on their behalf.
+
+> This feature is part of the [Account Pro module](https://commercial.abp.io/modules/Volo.Account.Pro), which is one of the application PRO modules of [ABP Commercial](https://commercial.abp.io/).
+
+### Delegating a new user
+
+After logging into the application, you can see the `Authority Delegation` menu item under the user menu. When you click the menu, a modal will open, and in the first tab of the modal, you will see the list of delegated users.
+
+
+
+You can click the `Delegate New User` button to delegate a new user:
+
+
+
+* You can specify a time range to ensure the delegation is only available within the time range.
+* You can make multiple delegates to the same user and set different delegate time ranges.
+
+> The delegation has three states: `Expired`, `Active`, and `Future`. These states are set automatically by checking the specified time interval.
+
+### My delegated users
+
+A list of users who delegated me to log in on behalf of them can be seen in the figure:
+
+
+
+You can click the `Login` button to log in to the application as a delegated user and go back to your account by clicking the `Back to my account` icon.
+
+
+
+> The **Authority Delegation** feature uses the [impersonation system](https://docs.abp.io/en/commercial/latest/modules/account/impersonation) internally.
diff --git a/docs/en/Community-Articles/2023-05-03-Authority-Delegation-In-ABP-Commerical/images/delegate-new-user.jpg b/docs/en/Community-Articles/2023-05-03-Authority-Delegation-In-ABP-Commerical/images/delegate-new-user.jpg
new file mode 100644
index 0000000000..b52d624a08
Binary files /dev/null and b/docs/en/Community-Articles/2023-05-03-Authority-Delegation-In-ABP-Commerical/images/delegate-new-user.jpg differ
diff --git a/docs/en/Community-Articles/2023-05-03-Authority-Delegation-In-ABP-Commerical/images/delegated-impersonate.jpg b/docs/en/Community-Articles/2023-05-03-Authority-Delegation-In-ABP-Commerical/images/delegated-impersonate.jpg
new file mode 100644
index 0000000000..7847516886
Binary files /dev/null and b/docs/en/Community-Articles/2023-05-03-Authority-Delegation-In-ABP-Commerical/images/delegated-impersonate.jpg differ
diff --git a/docs/en/Community-Articles/2023-05-03-Authority-Delegation-In-ABP-Commerical/images/delegated-users.jpg b/docs/en/Community-Articles/2023-05-03-Authority-Delegation-In-ABP-Commerical/images/delegated-users.jpg
new file mode 100644
index 0000000000..a95fafe17d
Binary files /dev/null and b/docs/en/Community-Articles/2023-05-03-Authority-Delegation-In-ABP-Commerical/images/delegated-users.jpg differ
diff --git a/docs/en/Community-Articles/2023-05-03-Authority-Delegation-In-ABP-Commerical/images/my-delegated-users.jpg b/docs/en/Community-Articles/2023-05-03-Authority-Delegation-In-ABP-Commerical/images/my-delegated-users.jpg
new file mode 100644
index 0000000000..c94f228bd9
Binary files /dev/null and b/docs/en/Community-Articles/2023-05-03-Authority-Delegation-In-ABP-Commerical/images/my-delegated-users.jpg differ
diff --git a/docs/en/Deployment/Configuring-OpenIddict.md b/docs/en/Deployment/Configuring-OpenIddict.md
new file mode 100644
index 0000000000..bf7bc9c619
--- /dev/null
+++ b/docs/en/Deployment/Configuring-OpenIddict.md
@@ -0,0 +1,62 @@
+# Configuring OpenIddict
+
+This document introduces how to configure `OpenIddict` in the `AuthServer` project.
+
+There are different configurations in the `AuthServer` project for `Development` and `Production` environment.
+
+````csharp
+public override void PreConfigureServices(ServiceConfigurationContext context)
+{
+ var hostingEnvironment = context.Services.GetHostingEnvironment();
+
+ // Development environment
+ if (hostingEnvironment.IsDevelopment())
+ {
+ PreConfigure(options =>
+ {
+ // This is default value, you can remove this line.
+ options.AddDevelopmentEncryptionAndSigningCertificate = true;
+ });
+ }
+
+ // Production or Staging environment
+ if (!hostingEnvironment.IsDevelopment())
+ {
+ PreConfigure(options =>
+ {
+ options.AddDevelopmentEncryptionAndSigningCertificate = false;
+ });
+
+ PreConfigure(builder =>
+ {
+ builder.AddSigningCertificate(GetSigningCertificate(hostingEnvironment));
+ builder.AddEncryptionCertificate(GetSigningCertificate(hostingEnvironment));
+
+ //...
+ });
+ }
+}
+
+private X509Certificate2 GetSigningCertificate(IWebHostEnvironment hostingEnv)
+{
+ return new X509Certificate2(Path.Combine(hostingEnv.ContentRootPath, "authserver.pfx"), "00000000-0000-0000-0000-000000000000");
+}
+````
+
+## Development Environment
+
+We've enabled `AddDevelopmentEncryptionAndSigningCertificate` by default on development environment, It registers (and generates if necessary) a user-specific development encryption/development signing certificate. This is a certificate used for signing and encrypting the tokens and for **development environment only**.
+
+`AddDevelopmentEncryptionAndSigningCertificate` cannot be used in applications deployed on IIS or Azure App Service: trying to use them on IIS or Azure App Service will result in an exception being thrown at runtime (unless the application pool is configured to [load a user profile](https://learn.microsoft.com/en-us/iis/manage/configuring-security/application-pool-identities#user-profile)).
+
+To avoid that, consider creating self-signed certificates and storing them in the X.509 certificates storage of the host machine(s). This is the way we do it in production environment.
+
+## Production Environment
+
+We've disabled `AddDevelopmentEncryptionAndSigningCertificate` in production environment and tried to setup signing and encrypting certificates using `authserver.pfx`.
+
+You can use the `dotnet dev-certs https -v -ep authserver.pfx -p 00000000-0000-0000-0000-000000000000` command to generate the `authserver.pfx` certificate.
+
+> `00000000-0000-0000-0000-000000000000` is the password of the certificate, you can change it to any password you want.
+
+> Also, please remember to copy `authserver.pfx` to the [Content Root Folder](https://learn.microsoft.com/en-us/dotnet/api/microsoft.aspnetcore.hosting.ihostingenvironment.contentrootpath?view=aspnetcore-7.0) of the `AuthServer` website.
diff --git a/docs/en/Deployment/Index.md b/docs/en/Deployment/Index.md
index 849d3bd4f3..3eb299b483 100644
--- a/docs/en/Deployment/Index.md
+++ b/docs/en/Deployment/Index.md
@@ -6,6 +6,7 @@ However, there are some topics that you should care about when you are deploying
## Guides
+* [Configuring for OpenIddict](Configuring-OpenIddict.md): Notes for some essential configurations for OpenIddict.
* [Configuring for Production](Configuring-Production.md): Notes for some essential configurations for production environments.
* [Optimization for Production](Optimizing-Production.md): Tips and suggestions for optimizing your application on production environments.
* [Deploying to a Clustered Environment](Clustered-Environment.md): Explains how to configure your application when you want to run multiple instances of your application concurrently.
diff --git a/docs/en/Index.md b/docs/en/Index.md
index ac8213a90f..bcb370677f 100644
--- a/docs/en/Index.md
+++ b/docs/en/Index.md
@@ -18,7 +18,7 @@ ABP Framework can work with any UI framework, while the following frameworks are
ABP Framework can work with any database provider, while the following providers are supported out of the box:
-
+
## Exploring the Documentation
@@ -60,7 +60,7 @@ The [Startup templates](Startup-Templates/Index.md) are pre-built Visual Studio
### Mastering ABP Framework
-
+
*Mastering ABP Framework* is an ultimate guide to get started and expertise with the ABP Framework. It is authored by Halil İbrahim Kalkan, the creator and the lead developer of the ABP Framework.
@@ -68,7 +68,7 @@ The [Startup templates](Startup-Templates/Index.md) are pre-built Visual Studio
### Free E-Book: Implementing Domain Driven Design
-
+
A **practical guide** for implementing Domain Driven Design (DDD). While the implementation details are **based on the ABP Framework** infrastructure, the basic concepts, principles and models can be applied to any solution, even if it is not a .NET solution.
diff --git a/docs/en/Road-Map.md b/docs/en/Road-Map.md
index 7cf8948515..8fa7b9b2e7 100644
--- a/docs/en/Road-Map.md
+++ b/docs/en/Road-Map.md
@@ -4,11 +4,11 @@ This document provides a road map, release schedule and planned features for the
## Next Versions
-### v7.1
+### v7.3
-The next version will be 7.1 and planned to release the stable 7.1 version in February, 2023. In the version 7.1, we will mostly focus on stabilizing and enhancing existing features, improving the developer experience, as well as adding relatively minor new features.
+The next version will be 7.3 and planned to release the stable 7.3 version in July, 2023. In the version 7.3, we will mostly focus on stabilizing and enhancing existing features, improving the developer experience, as well as adding relatively minor new features.
-See the [7.1 milestone](https://github.com/abpframework/abp/milestone/68) for all the issues we've planned to work on.
+See the [7.3 milestone](https://github.com/abpframework/abp/milestone/82) for all the issues we've planned to work on.
## Backlog Items
@@ -19,13 +19,15 @@ Here, a list of major items in the backlog we are considering to work on in the
* [#6655](https://github.com/abpframework/abp/pull/6655) / Use Typescript for the MVC UI
* [#236](https://github.com/abpframework/abp/issues/236) / Resource based authorization system
* [#2882](https://github.com/abpframework/abp/issues/2882) / Providing a gRPC integration infrastructure (while it is [already possible](https://github.com/abpframework/abp-samples/tree/master/GrpcDemo) to create or consume gRPC endpoints for your application, we plan to create endpoints for the [standard application modules](https://docs.abp.io/en/abp/latest/Modules/Index))
-* [#1754](https://github.com/abpframework/abp/issues/1754) / Multi-lingual entities
* [#57](https://github.com/abpframework/abp/issues/57) / Built-in CQRS infrastructure
* [#336](https://github.com/abpframework/abp/issues/336) / Health Check abstractions
-* [#2532](https://github.com/abpframework/abp/issues/2532), [#2564](https://github.com/abpframework/abp/issues/2465) / CosmosDB integration with EF Core and MongoDB API
+* [#2532](https://github.com/abpframework/abp/issues/2532) / CosmosDB integration with EF Core and MongoDB API
* [#4223](https://github.com/abpframework/abp/issues/4223) / WebHook system
* [#162](https://github.com/abpframework/abp/issues/162) / Azure ElasticDB Integration for multitenancy
* [#2296](https://github.com/abpframework/abp/issues/2296) / Feature toggling infrastructure
+* [#16342](https://github.com/abpframework/abp/issues/16342) / CmsKit: Meta information for SEO
+* [#16260](https://github.com/abpframework/abp/issues/16260) / GCP Blob Storage Provider
+* [#15932](https://github.com/abpframework/abp/issues/15932) / Introduce ABP Diagnostics Module
You can always check the milestone planning and the prioritized backlog issues on [the GitHub repository](https://github.com/abpframework/abp/milestones) for a detailed road map. The backlog items are subject to change. We are adding new items and changing priorities based on the community feedbacks and goals of the project.
diff --git a/docs/en/Tutorials/Part-8.md b/docs/en/Tutorials/Part-8.md
index 24dafffdb9..9d638e909e 100644
--- a/docs/en/Tutorials/Part-8.md
+++ b/docs/en/Tutorials/Part-8.md
@@ -102,7 +102,7 @@ namespace Acme.BookStore.Authors;
public class GetAuthorListDto : PagedAndSortedResultRequestDto
{
- public string Filter { get; set; }
+ public string? Filter { get; set; }
}
````
diff --git a/docs/en/Tutorials/Part-9.md b/docs/en/Tutorials/Part-9.md
index d67e20a8e0..704d5f016b 100644
--- a/docs/en/Tutorials/Part-9.md
+++ b/docs/en/Tutorials/Part-9.md
@@ -90,7 +90,7 @@ Create a new razor page, `Index.cshtml` under the `Pages/Authors` folder of the
This is a simple page similar to the Books page we had created before. It imports a JavaScript file which will be introduced below.
-### IndexModel.cshtml.cs
+### Index.cshtml.cs
````csharp
using Microsoft.AspNetCore.Mvc.RazorPages;
diff --git a/docs/en/UI/Angular/Theme-Configurations.md b/docs/en/UI/Angular/Theme-Configurations.md
index e663955667..09cbc5914c 100644
--- a/docs/en/UI/Angular/Theme-Configurations.md
+++ b/docs/en/UI/Angular/Theme-Configurations.md
@@ -69,7 +69,7 @@ Theme packages no longer import styles as CSS modules as of ABP version 6.0. The
},
```
-## Lepton X
+## Lepton X [commercial](https://docs.abp.io/en/commercial)
```json
{
"input": "node_modules/@volosoft/ngx-lepton-x/assets/css/dark.css",
@@ -174,7 +174,7 @@ Theme packages no longer import styles as CSS modules as of ABP version 6.0. The
```
-## Theme Lepton
+## Theme Lepton [commercial](https://docs.abp.io/en/commercial)
```json
{
"input": "node_modules/@volo/abp.ng.theme.lepton/dist/global/styles/lepton1.min.css",
diff --git a/docs/en/docs-nav.json b/docs/en/docs-nav.json
index 1abd957604..ad2bbc652b 100644
--- a/docs/en/docs-nav.json
+++ b/docs/en/docs-nav.json
@@ -16,7 +16,7 @@
},
{
"text": "Getting Started",
- "path":"Getting-Started-Overall.md",
+ "path": "Getting-Started-Overall.md",
"items": [
{
"text": "Web Application - Layered Architecture",
@@ -1166,6 +1166,10 @@
"text": "Overall",
"path": "UI/Angular/Theming.md"
},
+ {
+ "text": "Configuration",
+ "path": "UI/Angular/Theme-Configurations.md"
+ },
{
"text": "The Basic Theme",
"path": "UI/Angular/Basic-Theme.md"
@@ -1405,12 +1409,12 @@
"path": "Modules/IdentityServer.md",
"items": [
{
- "text": "IdentityServer Migration Guide",
- "path": "Migration-Guides/IdentityServer4-Step-by-Step.md"
+ "text": "IdentityServer Migration Guide",
+ "path": "Migration-Guides/IdentityServer4-Step-by-Step.md"
}
]
},
- {
+ {
"text": "OpenIddict",
"items": [
{
@@ -1438,7 +1442,7 @@
},
{
"text": "Common",
- "items":[
+ "items": [
{
"text": "Database Tables",
"path": "Modules/Database-Tables.md"
diff --git a/docs/zh-Hans/Tutorials/Part-8.md b/docs/zh-Hans/Tutorials/Part-8.md
index d3b78de7e0..5c58d1b524 100644
--- a/docs/zh-Hans/Tutorials/Part-8.md
+++ b/docs/zh-Hans/Tutorials/Part-8.md
@@ -107,7 +107,7 @@ namespace Acme.BookStore.Authors
{
public class GetAuthorListDto : PagedAndSortedResultRequestDto
{
- public string Filter { get; set; }
+ public string? Filter { get; set; }
}
}
````
diff --git a/framework/src/Volo.Abp.ApiVersioning.Abstractions/Volo.Abp.ApiVersioning.Abstractions.csproj b/framework/src/Volo.Abp.ApiVersioning.Abstractions/Volo.Abp.ApiVersioning.Abstractions.csproj
index 365450cd73..038e852f21 100644
--- a/framework/src/Volo.Abp.ApiVersioning.Abstractions/Volo.Abp.ApiVersioning.Abstractions.csproj
+++ b/framework/src/Volo.Abp.ApiVersioning.Abstractions/Volo.Abp.ApiVersioning.Abstractions.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.ApiVersioning.Abstractions
Volo.Abp.ApiVersioning.Abstractions
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.AspNetCore.Mvc.Client.Common/Volo.Abp.AspNetCore.Mvc.Client.Common.csproj b/framework/src/Volo.Abp.AspNetCore.Mvc.Client.Common/Volo.Abp.AspNetCore.Mvc.Client.Common.csproj
index 1c1f4ef696..9f9ddb9755 100644
--- a/framework/src/Volo.Abp.AspNetCore.Mvc.Client.Common/Volo.Abp.AspNetCore.Mvc.Client.Common.csproj
+++ b/framework/src/Volo.Abp.AspNetCore.Mvc.Client.Common/Volo.Abp.AspNetCore.Mvc.Client.Common.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.AspNetCore.Mvc.Client.Common
Volo.Abp.AspNetCore.Mvc.Client.Common
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo.Abp.AspNetCore.Mvc.Contracts.csproj b/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo.Abp.AspNetCore.Mvc.Contracts.csproj
index 7a5da3dca7..a89f7c60a7 100644
--- a/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo.Abp.AspNetCore.Mvc.Contracts.csproj
+++ b/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo.Abp.AspNetCore.Mvc.Contracts.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.AspNetCore.Mvc.Contracts
Volo.Abp.AspNetCore.Mvc.Contracts
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.AspNetCore.Mvc.Dapr.EventBus/Volo/Abp/AspNetCore/Mvc/Dapr/EventBus/Controllers/AbpAspNetCoreMvcDaprEventsController.cs b/framework/src/Volo.Abp.AspNetCore.Mvc.Dapr.EventBus/Volo/Abp/AspNetCore/Mvc/Dapr/EventBus/Controllers/AbpAspNetCoreMvcDaprEventsController.cs
index 92cf41db90..da0dad6a70 100644
--- a/framework/src/Volo.Abp.AspNetCore.Mvc.Dapr.EventBus/Volo/Abp/AspNetCore/Mvc/Dapr/EventBus/Controllers/AbpAspNetCoreMvcDaprEventsController.cs
+++ b/framework/src/Volo.Abp.AspNetCore.Mvc.Dapr.EventBus/Volo/Abp/AspNetCore/Mvc/Dapr/EventBus/Controllers/AbpAspNetCoreMvcDaprEventsController.cs
@@ -21,6 +21,7 @@ public class AbpAspNetCoreMvcDaprEventsController : AbpController
var daprSerializer = HttpContext.RequestServices.GetRequiredService();
var body = (await JsonDocument.ParseAsync(HttpContext.Request.Body));
+ var id = body.RootElement.GetProperty("id").GetString();
var pubSubName = body.RootElement.GetProperty("pubsubname").GetString();
var topic = body.RootElement.GetProperty("topic").GetString();
var data = body.RootElement.GetProperty("data").GetRawText();
@@ -32,7 +33,7 @@ public class AbpAspNetCoreMvcDaprEventsController : AbpController
var distributedEventBus = HttpContext.RequestServices.GetRequiredService();
var eventData = daprSerializer.Deserialize(data, distributedEventBus.GetEventType(topic));
- await distributedEventBus.TriggerHandlersAsync(distributedEventBus.GetEventType(topic), eventData);
+ await distributedEventBus.TriggerHandlersAsync(id, distributedEventBus.GetEventType(topic), eventData);
return Ok();
}
}
diff --git a/framework/src/Volo.Abp.Auditing.Contracts/Volo.Abp.Auditing.Contracts.csproj b/framework/src/Volo.Abp.Auditing.Contracts/Volo.Abp.Auditing.Contracts.csproj
index e11f6aeeda..d926ca6365 100644
--- a/framework/src/Volo.Abp.Auditing.Contracts/Volo.Abp.Auditing.Contracts.csproj
+++ b/framework/src/Volo.Abp.Auditing.Contracts/Volo.Abp.Auditing.Contracts.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.Auditing.Contracts
Volo.Abp.Auditing.Contracts
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.Auditing/Volo.Abp.Auditing.csproj b/framework/src/Volo.Abp.Auditing/Volo.Abp.Auditing.csproj
index 5bdc6f89c5..6a29572457 100644
--- a/framework/src/Volo.Abp.Auditing/Volo.Abp.Auditing.csproj
+++ b/framework/src/Volo.Abp.Auditing/Volo.Abp.Auditing.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.Auditing
Volo.Abp.Auditing
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.Authorization.Abstractions/Volo.Abp.Authorization.Abstractions.csproj b/framework/src/Volo.Abp.Authorization.Abstractions/Volo.Abp.Authorization.Abstractions.csproj
index f0dd3e965e..86c690687d 100644
--- a/framework/src/Volo.Abp.Authorization.Abstractions/Volo.Abp.Authorization.Abstractions.csproj
+++ b/framework/src/Volo.Abp.Authorization.Abstractions/Volo.Abp.Authorization.Abstractions.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.Authorization.Abstractions
Volo.Abp.Authorization.Abstractions
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.Authorization/Volo.Abp.Authorization.csproj b/framework/src/Volo.Abp.Authorization/Volo.Abp.Authorization.csproj
index be5c6f8898..02dcdde621 100644
--- a/framework/src/Volo.Abp.Authorization/Volo.Abp.Authorization.csproj
+++ b/framework/src/Volo.Abp.Authorization/Volo.Abp.Authorization.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.Authorization
Volo.Abp.Authorization
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.Autofac/Volo.Abp.Autofac.csproj b/framework/src/Volo.Abp.Autofac/Volo.Abp.Autofac.csproj
index e03023a72a..32c4eb4e39 100644
--- a/framework/src/Volo.Abp.Autofac/Volo.Abp.Autofac.csproj
+++ b/framework/src/Volo.Abp.Autofac/Volo.Abp.Autofac.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.Autofac
Volo.Abp.Autofac
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.AzureServiceBus/Volo.Abp.AzureServiceBus.csproj b/framework/src/Volo.Abp.AzureServiceBus/Volo.Abp.AzureServiceBus.csproj
index 3c4c82a512..98a67869cf 100644
--- a/framework/src/Volo.Abp.AzureServiceBus/Volo.Abp.AzureServiceBus.csproj
+++ b/framework/src/Volo.Abp.AzureServiceBus/Volo.Abp.AzureServiceBus.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.AzureServiceBus
Volo.Abp.AzureServiceBus
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.BackgroundJobs.Abstractions/Volo.Abp.BackgroundJobs.Abstractions.csproj b/framework/src/Volo.Abp.BackgroundJobs.Abstractions/Volo.Abp.BackgroundJobs.Abstractions.csproj
index 1788867e39..6a7eded3d8 100644
--- a/framework/src/Volo.Abp.BackgroundJobs.Abstractions/Volo.Abp.BackgroundJobs.Abstractions.csproj
+++ b/framework/src/Volo.Abp.BackgroundJobs.Abstractions/Volo.Abp.BackgroundJobs.Abstractions.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.BackgroundJobs.Abstractions
Volo.Abp.BackgroundJobs.Abstractions
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.BackgroundJobs.HangFire/Volo.Abp.BackgroundJobs.HangFire.csproj b/framework/src/Volo.Abp.BackgroundJobs.HangFire/Volo.Abp.BackgroundJobs.HangFire.csproj
index 9a197ef095..5823174e54 100644
--- a/framework/src/Volo.Abp.BackgroundJobs.HangFire/Volo.Abp.BackgroundJobs.HangFire.csproj
+++ b/framework/src/Volo.Abp.BackgroundJobs.HangFire/Volo.Abp.BackgroundJobs.HangFire.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.BackgroundJobs.HangFire
Volo.Abp.BackgroundJobs.HangFire
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.BackgroundJobs.Quartz/Volo.Abp.BackgroundJobs.Quartz.csproj b/framework/src/Volo.Abp.BackgroundJobs.Quartz/Volo.Abp.BackgroundJobs.Quartz.csproj
index 3b235be413..1326926d55 100644
--- a/framework/src/Volo.Abp.BackgroundJobs.Quartz/Volo.Abp.BackgroundJobs.Quartz.csproj
+++ b/framework/src/Volo.Abp.BackgroundJobs.Quartz/Volo.Abp.BackgroundJobs.Quartz.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.BackgroundJobs.Quartz
Volo.Abp.BackgroundJobs.Quartz
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.BackgroundJobs.RabbitMQ/Volo.Abp.BackgroundJobs.RabbitMQ.csproj b/framework/src/Volo.Abp.BackgroundJobs.RabbitMQ/Volo.Abp.BackgroundJobs.RabbitMQ.csproj
index a74903bad4..40f87898ba 100644
--- a/framework/src/Volo.Abp.BackgroundJobs.RabbitMQ/Volo.Abp.BackgroundJobs.RabbitMQ.csproj
+++ b/framework/src/Volo.Abp.BackgroundJobs.RabbitMQ/Volo.Abp.BackgroundJobs.RabbitMQ.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.BackgroundJobs.RabbitMQ
Volo.Abp.BackgroundJobs.RabbitMQ
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.BackgroundJobs/Volo.Abp.BackgroundJobs.csproj b/framework/src/Volo.Abp.BackgroundJobs/Volo.Abp.BackgroundJobs.csproj
index 7d4f2d9fa2..a9450e134c 100644
--- a/framework/src/Volo.Abp.BackgroundJobs/Volo.Abp.BackgroundJobs.csproj
+++ b/framework/src/Volo.Abp.BackgroundJobs/Volo.Abp.BackgroundJobs.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.BackgroundJobs
Volo.Abp.BackgroundJobs
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.BackgroundWorkers.Hangfire/Volo.Abp.BackgroundWorkers.Hangfire.csproj b/framework/src/Volo.Abp.BackgroundWorkers.Hangfire/Volo.Abp.BackgroundWorkers.Hangfire.csproj
index 8832400d64..9792dbf1ff 100644
--- a/framework/src/Volo.Abp.BackgroundWorkers.Hangfire/Volo.Abp.BackgroundWorkers.Hangfire.csproj
+++ b/framework/src/Volo.Abp.BackgroundWorkers.Hangfire/Volo.Abp.BackgroundWorkers.Hangfire.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.BackgroundWorkers.Hangfire
Volo.Abp.BackgroundWorkers.Hangfire
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.BackgroundWorkers.Quartz/Volo.Abp.BackgroundWorkers.Quartz.csproj b/framework/src/Volo.Abp.BackgroundWorkers.Quartz/Volo.Abp.BackgroundWorkers.Quartz.csproj
index 4aad05aef7..2c43a121d1 100644
--- a/framework/src/Volo.Abp.BackgroundWorkers.Quartz/Volo.Abp.BackgroundWorkers.Quartz.csproj
+++ b/framework/src/Volo.Abp.BackgroundWorkers.Quartz/Volo.Abp.BackgroundWorkers.Quartz.csproj
@@ -5,7 +5,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.BackgroundWorkers.Quartz
Volo.Abp.BackgroundWorkers.Quartz
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.BackgroundWorkers/Volo.Abp.BackgroundWorkers.csproj b/framework/src/Volo.Abp.BackgroundWorkers/Volo.Abp.BackgroundWorkers.csproj
index c8e518c4d3..f01a73d7a1 100644
--- a/framework/src/Volo.Abp.BackgroundWorkers/Volo.Abp.BackgroundWorkers.csproj
+++ b/framework/src/Volo.Abp.BackgroundWorkers/Volo.Abp.BackgroundWorkers.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.BackgroundWorkers
Volo.Abp.BackgroundWorkers
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.BlobStoring.Aliyun/Volo.Abp.BlobStoring.Aliyun.csproj b/framework/src/Volo.Abp.BlobStoring.Aliyun/Volo.Abp.BlobStoring.Aliyun.csproj
index c594d29395..76241505be 100644
--- a/framework/src/Volo.Abp.BlobStoring.Aliyun/Volo.Abp.BlobStoring.Aliyun.csproj
+++ b/framework/src/Volo.Abp.BlobStoring.Aliyun/Volo.Abp.BlobStoring.Aliyun.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.BlobStoring.Aliyun
Volo.Abp.BlobStoring.Aliyun
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.BlobStoring.Aws/Volo.Abp.BlobStoring.Aws.csproj b/framework/src/Volo.Abp.BlobStoring.Aws/Volo.Abp.BlobStoring.Aws.csproj
index c14651658d..a5f94b783b 100644
--- a/framework/src/Volo.Abp.BlobStoring.Aws/Volo.Abp.BlobStoring.Aws.csproj
+++ b/framework/src/Volo.Abp.BlobStoring.Aws/Volo.Abp.BlobStoring.Aws.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
false
false
false
diff --git a/framework/src/Volo.Abp.BlobStoring.Azure/Volo.Abp.BlobStoring.Azure.csproj b/framework/src/Volo.Abp.BlobStoring.Azure/Volo.Abp.BlobStoring.Azure.csproj
index d33d74be6b..03b01e537c 100644
--- a/framework/src/Volo.Abp.BlobStoring.Azure/Volo.Abp.BlobStoring.Azure.csproj
+++ b/framework/src/Volo.Abp.BlobStoring.Azure/Volo.Abp.BlobStoring.Azure.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.BlobStoring.Azure
Volo.Abp.BlobStoring.Azure
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.BlobStoring.FileSystem/Volo.Abp.BlobStoring.FileSystem.csproj b/framework/src/Volo.Abp.BlobStoring.FileSystem/Volo.Abp.BlobStoring.FileSystem.csproj
index ac4025de2a..4996a4a0b2 100644
--- a/framework/src/Volo.Abp.BlobStoring.FileSystem/Volo.Abp.BlobStoring.FileSystem.csproj
+++ b/framework/src/Volo.Abp.BlobStoring.FileSystem/Volo.Abp.BlobStoring.FileSystem.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.BlobStoring.FileSystem
Volo.Abp.BlobStoring.FileSystem
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.BlobStoring/Volo.Abp.BlobStoring.csproj b/framework/src/Volo.Abp.BlobStoring/Volo.Abp.BlobStoring.csproj
index 850f98b5f1..6b3c44a49b 100644
--- a/framework/src/Volo.Abp.BlobStoring/Volo.Abp.BlobStoring.csproj
+++ b/framework/src/Volo.Abp.BlobStoring/Volo.Abp.BlobStoring.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.BlobStoring
Volo.Abp.BlobStoring
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.Caching.StackExchangeRedis/Volo.Abp.Caching.StackExchangeRedis.csproj b/framework/src/Volo.Abp.Caching.StackExchangeRedis/Volo.Abp.Caching.StackExchangeRedis.csproj
index d1faed8f5c..e2bfd7549a 100644
--- a/framework/src/Volo.Abp.Caching.StackExchangeRedis/Volo.Abp.Caching.StackExchangeRedis.csproj
+++ b/framework/src/Volo.Abp.Caching.StackExchangeRedis/Volo.Abp.Caching.StackExchangeRedis.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.Caching.StackExchangeRedis
Volo.Abp.Caching.StackExchangeRedis
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.Caching/Volo.Abp.Caching.csproj b/framework/src/Volo.Abp.Caching/Volo.Abp.Caching.csproj
index 4022d38fee..52d6a3381d 100644
--- a/framework/src/Volo.Abp.Caching/Volo.Abp.Caching.csproj
+++ b/framework/src/Volo.Abp.Caching/Volo.Abp.Caching.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.Caching
Volo.Abp.Caching
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.Castle.Core/Volo.Abp.Castle.Core.csproj b/framework/src/Volo.Abp.Castle.Core/Volo.Abp.Castle.Core.csproj
index 83a3253b07..7125519bb0 100644
--- a/framework/src/Volo.Abp.Castle.Core/Volo.Abp.Castle.Core.csproj
+++ b/framework/src/Volo.Abp.Castle.Core/Volo.Abp.Castle.Core.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.Castle.Core
Volo.Abp.Castle.Core
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.Cli.Core/Volo.Abp.Cli.Core.csproj b/framework/src/Volo.Abp.Cli.Core/Volo.Abp.Cli.Core.csproj
index 1688a4246f..a6bb742585 100644
--- a/framework/src/Volo.Abp.Cli.Core/Volo.Abp.Cli.Core.csproj
+++ b/framework/src/Volo.Abp.Cli.Core/Volo.Abp.Cli.Core.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
false
false
diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/CliUrls.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/CliUrls.cs
index 83ae5a9f73..35ae34b895 100644
--- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/CliUrls.cs
+++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/CliUrls.cs
@@ -29,6 +29,11 @@ public static class CliUrls
return $"{NuGetRootPath}{apiKey}/v3/package/{packageId}/index.json";
}
+ public static string GetNuGetPackageSearchUrl(string apiKey, string packageId)
+ {
+ return $"{NuGetRootPath}{apiKey}/v3/search?q={packageId}";
+ }
+
public static string GetApiDefinitionUrl(string url, ApplicationApiDescriptionModelRequestDto model = null)
{
url = url.EnsureEndsWith('/');
diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Version/CommercialPackages.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Version/CommercialPackages.cs
index e99eddb499..7bfb578a2d 100644
--- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Version/CommercialPackages.cs
+++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Version/CommercialPackages.cs
@@ -4,9 +4,9 @@ using System.Text;
namespace Volo.Abp.Cli.Version;
-internal static class CommercialPackages
+static internal class CommercialPackages
{
- private static readonly HashSet Packages = new()
+ private readonly static HashSet Packages = new()
{
"volo.abp.suite"
//other PRO packages can be added to this list...
diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Version/PackageVersionCheckerService.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Version/PackageVersionCheckerService.cs
index 43ced1a1a1..de8511cdca 100644
--- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Version/PackageVersionCheckerService.cs
+++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Version/PackageVersionCheckerService.cs
@@ -109,20 +109,54 @@ public class PackageVersionCheckerService : ITransientDependency
return await GetPackageVersionsFromMyGet(packageId);
}
- if (CommercialPackages.IsCommercial(packageId))
+ if (await IsCommercialPackageAsync(packageId))
{
return await GetPackageVersionsFromAbpCommercialNuGetAsync(packageId);
}
- else
+
+ return await GetPackageVersionsFromNuGetOrgAsync(packageId) ?? new List();
+ }
+
+ private async Task IsCommercialPackageAsync(string packageId)
+ {
+ if (CommercialPackages.IsCommercial(packageId))
+ {
+ return true;
+ }
+
+ await SetApiKeyResultAsync();
+ if (_apiKeyResult?.ApiKey == null)
{
- var packagesFromNugetOrg = await GetPackageVersionsFromNuGetOrgAsync(packageId);
- if (packagesFromNugetOrg != null)
+ return false;
+ }
+
+ var searchUrl = CliUrls.GetNuGetPackageSearchUrl(_apiKeyResult.ApiKey, packageId);
+ return await HasAnyPackageAsync(searchUrl);
+ }
+
+ private async Task HasAnyPackageAsync(string url)
+ {
+ try
+ {
+ var client = _cliHttpClientFactory.CreateClient(needsAuthentication: false);
+
+ using (var responseMessage = await client.GetHttpResponseMessageWithRetryAsync(
+ url,
+ cancellationToken: CancellationTokenProvider.Token,
+ logger: Logger
+ ))
{
- return packagesFromNugetOrg;
+ await RemoteServiceExceptionHandler.EnsureSuccessfulHttpResponseAsync(responseMessage);
+
+ var responseContent = await responseMessage.Content.ReadAsStringAsync();
+
+ return JsonSerializer.Deserialize(responseContent).TotalHits > 0;
}
}
-
- return await GetPackageVersionsFromAbpCommercialNuGetAsync(packageId);
+ catch (Exception)
+ {
+ return false;
+ }
}
private async Task> GetPackageVersionsFromAbpCommercialNuGetAsync(string packageId)
@@ -175,19 +209,15 @@ public class PackageVersionCheckerService : ITransientDependency
private async Task GetNuGetUrlForCommercialPackage(string packageId)
{
- if (_apiKeyResult == null)
- {
- _apiKeyResult = await _apiKeyService.GetApiKeyOrNullAsync();
-
- if (_apiKeyResult == null)
- {
- return null;
- }
- }
-
+ await SetApiKeyResultAsync();
return CliUrls.GetNuGetPackageInfoUrl(_apiKeyResult.ApiKey, packageId);
}
+ private async Task SetApiKeyResultAsync()
+ {
+ _apiKeyResult ??= await _apiKeyService.GetApiKeyOrNullAsync();
+ }
+
private async Task GetLatestStableVersionOrNullAsync()
{
try
@@ -214,6 +244,12 @@ public class PackageVersionCheckerService : ITransientDependency
}
}
+ public class NuGetSearchResultDto
+ {
+ [JsonProperty("totalHits")]
+ public int TotalHits { get; set; }
+ }
+
public class NuGetVersionResultDto
{
[JsonProperty("versions")]
diff --git a/framework/src/Volo.Abp.Core/Volo.Abp.Core.csproj b/framework/src/Volo.Abp.Core/Volo.Abp.Core.csproj
index e208ecf533..8bf90f7767 100644
--- a/framework/src/Volo.Abp.Core/Volo.Abp.Core.csproj
+++ b/framework/src/Volo.Abp.Core/Volo.Abp.Core.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.Core
Volo.Abp.Core
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
@@ -32,4 +32,7 @@
+
+
+
diff --git a/framework/src/Volo.Abp.Data/Volo.Abp.Data.csproj b/framework/src/Volo.Abp.Data/Volo.Abp.Data.csproj
index b1077c82da..b5d2589b19 100644
--- a/framework/src/Volo.Abp.Data/Volo.Abp.Data.csproj
+++ b/framework/src/Volo.Abp.Data/Volo.Abp.Data.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.Data
Volo.Abp.Data
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.Ddd.Application.Contracts/Volo.Abp.Ddd.Application.Contracts.csproj b/framework/src/Volo.Abp.Ddd.Application.Contracts/Volo.Abp.Ddd.Application.Contracts.csproj
index a955026b52..bde6d12081 100644
--- a/framework/src/Volo.Abp.Ddd.Application.Contracts/Volo.Abp.Ddd.Application.Contracts.csproj
+++ b/framework/src/Volo.Abp.Ddd.Application.Contracts/Volo.Abp.Ddd.Application.Contracts.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.Ddd.Application.Contracts
Volo.Abp.Ddd.Application.Contracts
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.Ddd.Application/Volo.Abp.Ddd.Application.csproj b/framework/src/Volo.Abp.Ddd.Application/Volo.Abp.Ddd.Application.csproj
index ca69278768..fc0586ce8e 100644
--- a/framework/src/Volo.Abp.Ddd.Application/Volo.Abp.Ddd.Application.csproj
+++ b/framework/src/Volo.Abp.Ddd.Application/Volo.Abp.Ddd.Application.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.Ddd.Application
Volo.Abp.Ddd.Application
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.Ddd.Domain/Volo.Abp.Ddd.Domain.csproj b/framework/src/Volo.Abp.Ddd.Domain/Volo.Abp.Ddd.Domain.csproj
index f10f6fdebd..fd80a60544 100644
--- a/framework/src/Volo.Abp.Ddd.Domain/Volo.Abp.Ddd.Domain.csproj
+++ b/framework/src/Volo.Abp.Ddd.Domain/Volo.Abp.Ddd.Domain.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.Ddd.Domain
Volo.Abp.Ddd.Domain
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.DistributedLocking.Abstractions/Volo.Abp.DistributedLocking.Abstractions.csproj b/framework/src/Volo.Abp.DistributedLocking.Abstractions/Volo.Abp.DistributedLocking.Abstractions.csproj
index 85b832eefb..7e01d295e7 100644
--- a/framework/src/Volo.Abp.DistributedLocking.Abstractions/Volo.Abp.DistributedLocking.Abstractions.csproj
+++ b/framework/src/Volo.Abp.DistributedLocking.Abstractions/Volo.Abp.DistributedLocking.Abstractions.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.DistributedLocking.Abstractions
Volo.Abp.DistributedLocking.Abstractions
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.DistributedLocking/Volo.Abp.DistributedLocking.csproj b/framework/src/Volo.Abp.DistributedLocking/Volo.Abp.DistributedLocking.csproj
index 0abb5e699c..ae9f960917 100644
--- a/framework/src/Volo.Abp.DistributedLocking/Volo.Abp.DistributedLocking.csproj
+++ b/framework/src/Volo.Abp.DistributedLocking/Volo.Abp.DistributedLocking.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.DistributedLocking
Volo.Abp.DistributedLocking
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.Emailing/Volo.Abp.Emailing.csproj b/framework/src/Volo.Abp.Emailing/Volo.Abp.Emailing.csproj
index a2f83399a0..e2c55f2bb6 100644
--- a/framework/src/Volo.Abp.Emailing/Volo.Abp.Emailing.csproj
+++ b/framework/src/Volo.Abp.Emailing/Volo.Abp.Emailing.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.Emailing
Volo.Abp.Emailing
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.EntityFrameworkCore/Volo/Abp/EntityFrameworkCore/AbpDbContext.cs b/framework/src/Volo.Abp.EntityFrameworkCore/Volo/Abp/EntityFrameworkCore/AbpDbContext.cs
index 33fdadc9b4..0a5eaa851e 100644
--- a/framework/src/Volo.Abp.EntityFrameworkCore/Volo/Abp/EntityFrameworkCore/AbpDbContext.cs
+++ b/framework/src/Volo.Abp.EntityFrameworkCore/Volo/Abp/EntityFrameworkCore/AbpDbContext.cs
@@ -462,7 +462,7 @@ public abstract class AbpDbContext : DbContext, IAbpEfCoreDbContext,
protected virtual void ApplyAbpConceptsForModifiedEntity(EntityEntry entry)
{
- if (entry.State == EntityState.Modified && entry.Properties.Any(x => x.IsModified && x.Metadata.ValueGenerated == ValueGenerated.Never))
+ if (entry.State == EntityState.Modified && entry.Properties.Any(x => x.IsModified && (x.Metadata.ValueGenerated == ValueGenerated.Never || x.Metadata.ValueGenerated == ValueGenerated.OnAdd)))
{
IncrementEntityVersionProperty(entry);
SetModificationAuditProperties(entry);
diff --git a/framework/src/Volo.Abp.EventBus.Abstractions/Volo.Abp.EventBus.Abstractions.csproj b/framework/src/Volo.Abp.EventBus.Abstractions/Volo.Abp.EventBus.Abstractions.csproj
index ae0cef7f59..225b9b70ee 100644
--- a/framework/src/Volo.Abp.EventBus.Abstractions/Volo.Abp.EventBus.Abstractions.csproj
+++ b/framework/src/Volo.Abp.EventBus.Abstractions/Volo.Abp.EventBus.Abstractions.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
diff --git a/framework/src/Volo.Abp.EventBus.Abstractions/Volo/Abp/EventBus/Distributed/DistributedEventReceived.cs b/framework/src/Volo.Abp.EventBus.Abstractions/Volo/Abp/EventBus/Distributed/DistributedEventReceived.cs
new file mode 100644
index 0000000000..42036d85ce
--- /dev/null
+++ b/framework/src/Volo.Abp.EventBus.Abstractions/Volo/Abp/EventBus/Distributed/DistributedEventReceived.cs
@@ -0,0 +1,10 @@
+namespace Volo.Abp.EventBus.Distributed;
+
+public class DistributedEventReceived
+{
+ public DistributedEventSource Source { get; set; }
+
+ public string EventName { get; set; }
+
+ public object EventData { get; set; }
+}
diff --git a/framework/src/Volo.Abp.EventBus.Abstractions/Volo/Abp/EventBus/Distributed/DistributedEventSent.cs b/framework/src/Volo.Abp.EventBus.Abstractions/Volo/Abp/EventBus/Distributed/DistributedEventSent.cs
new file mode 100644
index 0000000000..990068e0cc
--- /dev/null
+++ b/framework/src/Volo.Abp.EventBus.Abstractions/Volo/Abp/EventBus/Distributed/DistributedEventSent.cs
@@ -0,0 +1,10 @@
+namespace Volo.Abp.EventBus.Distributed;
+
+public class DistributedEventSent
+{
+ public DistributedEventSource Source { get; set; }
+
+ public string EventName { get; set; }
+
+ public object EventData { get; set; }
+}
diff --git a/framework/src/Volo.Abp.EventBus.Abstractions/Volo/Abp/EventBus/Distributed/DistributedEventSource.cs b/framework/src/Volo.Abp.EventBus.Abstractions/Volo/Abp/EventBus/Distributed/DistributedEventSource.cs
new file mode 100644
index 0000000000..a1cea8eef7
--- /dev/null
+++ b/framework/src/Volo.Abp.EventBus.Abstractions/Volo/Abp/EventBus/Distributed/DistributedEventSource.cs
@@ -0,0 +1,10 @@
+namespace Volo.Abp.EventBus.Distributed;
+
+public enum DistributedEventSource
+{
+ Direct,
+
+ Inbox,
+
+ Outbox
+}
diff --git a/framework/src/Volo.Abp.EventBus.Azure/Volo.Abp.EventBus.Azure.csproj b/framework/src/Volo.Abp.EventBus.Azure/Volo.Abp.EventBus.Azure.csproj
index 2ffd853cdc..7cbaa944da 100644
--- a/framework/src/Volo.Abp.EventBus.Azure/Volo.Abp.EventBus.Azure.csproj
+++ b/framework/src/Volo.Abp.EventBus.Azure/Volo.Abp.EventBus.Azure.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.EventBus.Azure
Volo.Abp.EventBus.Azure
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.EventBus.Azure/Volo/Abp/EventBus/Azure/AzureDistributedEventBus.cs b/framework/src/Volo.Abp.EventBus.Azure/Volo/Abp/EventBus/Azure/AzureDistributedEventBus.cs
index 78e26e7c32..8279a412a5 100644
--- a/framework/src/Volo.Abp.EventBus.Azure/Volo/Abp/EventBus/Azure/AzureDistributedEventBus.cs
+++ b/framework/src/Volo.Abp.EventBus.Azure/Volo/Abp/EventBus/Azure/AzureDistributedEventBus.cs
@@ -9,6 +9,7 @@ using Microsoft.Extensions.Options;
using Volo.Abp.DependencyInjection;
using Volo.Abp.EventBus.Distributed;
using Volo.Abp.AzureServiceBus;
+using Volo.Abp.EventBus.Local;
using Volo.Abp.Guids;
using Volo.Abp.MultiTenancy;
using Volo.Abp.Threading;
@@ -21,13 +22,13 @@ namespace Volo.Abp.EventBus.Azure;
[ExposeServices(typeof(IDistributedEventBus), typeof(AzureDistributedEventBus))]
public class AzureDistributedEventBus : DistributedEventBusBase, ISingletonDependency
{
- private readonly AbpAzureEventBusOptions _options;
- private readonly IAzureServiceBusMessageConsumerFactory _messageConsumerFactory;
- private readonly IPublisherPool _publisherPool;
- private readonly IAzureServiceBusSerializer _serializer;
- private readonly ConcurrentDictionary> _handlerFactories;
- private readonly ConcurrentDictionary _eventTypes;
- private IAzureServiceBusMessageConsumer _consumer;
+ protected AbpAzureEventBusOptions Options { get; }
+ protected IAzureServiceBusMessageConsumerFactory MessageConsumerFactory { get; }
+ protected IPublisherPool PublisherPool { get; }
+ protected IAzureServiceBusSerializer Serializer { get; }
+ protected ConcurrentDictionary> HandlerFactories { get; }
+ protected ConcurrentDictionary EventTypes { get; }
+ protected IAzureServiceBusMessageConsumer Consumer { get; private set; }
public AzureDistributedEventBus(
IServiceScopeFactory serviceScopeFactory,
@@ -40,31 +41,33 @@ public class AzureDistributedEventBus : DistributedEventBusBase, ISingletonDepen
IAzureServiceBusSerializer serializer,
IAzureServiceBusMessageConsumerFactory messageConsumerFactory,
IPublisherPool publisherPool,
- IEventHandlerInvoker eventHandlerInvoker)
+ IEventHandlerInvoker eventHandlerInvoker,
+ ILocalEventBus localEventBus)
: base(serviceScopeFactory,
currentTenant,
unitOfWorkManager,
abpDistributedEventBusOptions,
guidGenerator,
clock,
- eventHandlerInvoker)
+ eventHandlerInvoker,
+ localEventBus)
{
- _options = abpAzureEventBusOptions.Value;
- _serializer = serializer;
- _messageConsumerFactory = messageConsumerFactory;
- _publisherPool = publisherPool;
- _handlerFactories = new ConcurrentDictionary>();
- _eventTypes = new ConcurrentDictionary();
+ Options = abpAzureEventBusOptions.Value;
+ Serializer = serializer;
+ MessageConsumerFactory = messageConsumerFactory;
+ PublisherPool = publisherPool;
+ HandlerFactories = new ConcurrentDictionary>();
+ EventTypes = new ConcurrentDictionary();
}
public void Initialize()
{
- _consumer = _messageConsumerFactory.CreateMessageConsumer(
- _options.TopicName,
- _options.SubscriberName,
- _options.ConnectionName);
+ Consumer = MessageConsumerFactory.CreateMessageConsumer(
+ Options.TopicName,
+ Options.SubscriberName,
+ Options.ConnectionName);
- _consumer.OnMessageReceived(ProcessEventAsync);
+ Consumer.OnMessageReceived(ProcessEventAsync);
SubscribeHandlers(AbpDistributedEventBusOptions.Handlers);
}
@@ -75,24 +78,31 @@ public class AzureDistributedEventBus : DistributedEventBusBase, ISingletonDepen
{
return;
}
- var eventType = _eventTypes.GetOrDefault(eventName);
+ var eventType = EventTypes.GetOrDefault(eventName);
if (eventType == null)
{
return;
}
- if (await AddToInboxAsync(message.MessageId, eventName, eventType, message.Body.ToArray()))
+ var eventData = Serializer.Deserialize(message.Body.ToArray(), eventType);
+
+ if (await AddToInboxAsync(message.MessageId, eventName, eventType, eventData))
{
return;
}
- var eventData = _serializer.Deserialize(message.Body.ToArray(), eventType);
-
- await TriggerHandlersAsync(eventType, eventData);
+ await TriggerHandlersDirectAsync(eventType, eventData);
}
public async override Task PublishFromOutboxAsync(OutgoingEventInfo outgoingEvent, OutboxConfig outboxConfig)
{
+ await TriggerDistributedEventSentAsync(new DistributedEventSent()
+ {
+ Source = DistributedEventSource.Outbox,
+ EventName = outgoingEvent.EventName,
+ EventData = outgoingEvent.EventData
+ });
+
await PublishAsync(outgoingEvent.EventName, outgoingEvent.EventData, outgoingEvent.Id);
}
@@ -100,9 +110,9 @@ public class AzureDistributedEventBus : DistributedEventBusBase, ISingletonDepen
{
var outgoingEventArray = outgoingEvents.ToArray();
- var publisher = await _publisherPool.GetAsync(
- _options.TopicName,
- _options.ConnectionName);
+ var publisher = await PublisherPool.GetAsync(
+ Options.TopicName,
+ Options.ConnectionName);
using var messageBatch = await publisher.CreateMessageBatchAsync();
@@ -120,6 +130,13 @@ public class AzureDistributedEventBus : DistributedEventBusBase, ISingletonDepen
throw new AbpException(
"The message is too large to fit in the batch. Set AbpEventBusBoxesOptions.OutboxWaitingEventMaxCount to reduce the number");
}
+
+ await TriggerDistributedEventSentAsync(new DistributedEventSent()
+ {
+ Source = DistributedEventSource.Outbox,
+ EventName = outgoingEvent.EventName,
+ EventData = outgoingEvent.EventData
+ });
}
await publisher.SendMessagesAsync(messageBatch);
@@ -127,15 +144,15 @@ public class AzureDistributedEventBus : DistributedEventBusBase, ISingletonDepen
public async override Task ProcessFromInboxAsync(IncomingEventInfo incomingEvent, InboxConfig inboxConfig)
{
- var eventType = _eventTypes.GetOrDefault(incomingEvent.EventName);
+ var eventType = EventTypes.GetOrDefault(incomingEvent.EventName);
if (eventType == null)
{
return;
}
- var eventData = _serializer.Deserialize(incomingEvent.EventData, eventType);
+ var eventData = Serializer.Deserialize(incomingEvent.EventData, eventType);
var exceptions = new List();
- await TriggerHandlersAsync(eventType, eventData, exceptions, inboxConfig);
+ await TriggerHandlersFromInboxAsync(eventType, eventData, exceptions, inboxConfig);
if (exceptions.Any())
{
ThrowOriginalExceptions(eventType, exceptions);
@@ -144,7 +161,7 @@ public class AzureDistributedEventBus : DistributedEventBusBase, ISingletonDepen
protected override byte[] Serialize(object eventData)
{
- return _serializer.Serialize(eventData);
+ return Serializer.Serialize(eventData);
}
public override IDisposable Subscribe(Type eventType, IEventHandlerFactory factory)
@@ -225,7 +242,7 @@ public class AzureDistributedEventBus : DistributedEventBusBase, ISingletonDepen
protected virtual Task PublishAsync(string eventName, object eventData)
{
- var body = _serializer.Serialize(eventData);
+ var body = Serializer.Serialize(eventData);
return PublishAsync(eventName, body, null);
}
@@ -245,16 +262,16 @@ public class AzureDistributedEventBus : DistributedEventBusBase, ISingletonDepen
message.MessageId = (eventId ?? GuidGenerator.Create()).ToString("N");
}
- var publisher = await _publisherPool.GetAsync(
- _options.TopicName,
- _options.ConnectionName);
+ var publisher = await PublisherPool.GetAsync(
+ Options.TopicName,
+ Options.ConnectionName);
await publisher.SendMessageAsync(message);
}
protected override IEnumerable GetHandlerFactories(Type eventType)
{
- return _handlerFactories
+ return HandlerFactories
.Where(hf => ShouldTriggerEventForHandler(eventType, hf.Key))
.Select(handlerFactory =>
new EventTypeWithEventHandlerFactories(handlerFactory.Key, handlerFactory.Value))
@@ -266,14 +283,20 @@ public class AzureDistributedEventBus : DistributedEventBusBase, ISingletonDepen
return handlerEventType == targetEventType || handlerEventType.IsAssignableFrom(targetEventType);
}
+ protected override Task OnAddToOutboxAsync(string eventName, Type eventType, object eventData)
+ {
+ EventTypes.GetOrAdd(eventName, eventType);
+ return base.OnAddToOutboxAsync(eventName, eventType, eventData);
+ }
+
private List GetOrCreateHandlerFactories(Type eventType)
{
- return _handlerFactories.GetOrAdd(
+ return HandlerFactories.GetOrAdd(
eventType,
type =>
{
var eventName = EventNameAttribute.GetNameOrDefault(type);
- _eventTypes[eventName] = type;
+ EventTypes.GetOrAdd(eventName, eventType);
return new List();
}
);
diff --git a/framework/src/Volo.Abp.EventBus.Dapr/Volo/Abp/EventBus/Dapr/DaprDistributedEventBus.cs b/framework/src/Volo.Abp.EventBus.Dapr/Volo/Abp/EventBus/Dapr/DaprDistributedEventBus.cs
index a00127ac8c..23cf8aa1e9 100644
--- a/framework/src/Volo.Abp.EventBus.Dapr/Volo/Abp/EventBus/Dapr/DaprDistributedEventBus.cs
+++ b/framework/src/Volo.Abp.EventBus.Dapr/Volo/Abp/EventBus/Dapr/DaprDistributedEventBus.cs
@@ -8,6 +8,7 @@ using Microsoft.Extensions.Options;
using Volo.Abp.Dapr;
using Volo.Abp.DependencyInjection;
using Volo.Abp.EventBus.Distributed;
+using Volo.Abp.EventBus.Local;
using Volo.Abp.Guids;
using Volo.Abp.MultiTenancy;
using Volo.Abp.Threading;
@@ -37,8 +38,9 @@ public class DaprDistributedEventBus : DistributedEventBusBase, ISingletonDepend
IEventHandlerInvoker eventHandlerInvoker,
IDaprSerializer serializer,
IOptions daprEventBusOptions,
- IAbpDaprClientFactory daprClientFactory)
- : base(serviceScopeFactory, currentTenant, unitOfWorkManager, abpDistributedEventBusOptions, guidGenerator, clock, eventHandlerInvoker)
+ IAbpDaprClientFactory daprClientFactory,
+ ILocalEventBus localEventBus)
+ : base(serviceScopeFactory, currentTenant, unitOfWorkManager, abpDistributedEventBusOptions, guidGenerator, clock, eventHandlerInvoker, localEventBus)
{
Serializer = serializer;
DaprEventBusOptions = daprEventBusOptions.Value;
@@ -141,6 +143,13 @@ public class DaprDistributedEventBus : DistributedEventBusBase, ISingletonDepend
public override async Task PublishFromOutboxAsync(OutgoingEventInfo outgoingEvent, OutboxConfig outboxConfig)
{
+ await TriggerDistributedEventSentAsync(new DistributedEventSent()
+ {
+ Source = DistributedEventSource.Outbox,
+ EventName = outgoingEvent.EventName,
+ EventData = outgoingEvent.EventData
+ });
+
await PublishToDaprAsync(outgoingEvent.EventName, Serializer.Deserialize(outgoingEvent.EventData, GetEventType(outgoingEvent.EventName)));
}
@@ -150,10 +159,27 @@ public class DaprDistributedEventBus : DistributedEventBusBase, ISingletonDepend
foreach (var outgoingEvent in outgoingEventArray)
{
+ await TriggerDistributedEventSentAsync(new DistributedEventSent()
+ {
+ Source = DistributedEventSource.Outbox,
+ EventName = outgoingEvent.EventName,
+ EventData = outgoingEvent.EventData
+ });
+
await PublishToDaprAsync(outgoingEvent.EventName, Serializer.Deserialize(outgoingEvent.EventData, GetEventType(outgoingEvent.EventName)));
}
}
+ public virtual async Task TriggerHandlersAsync(string messageId, Type eventType, object eventData)
+ {
+ if (await AddToInboxAsync(messageId, EventNameAttribute.GetNameOrDefault(eventType), eventType, eventData))
+ {
+ return;
+ }
+
+ await TriggerHandlersDirectAsync(eventType, eventData);
+ }
+
public async override Task ProcessFromInboxAsync(IncomingEventInfo incomingEvent, InboxConfig inboxConfig)
{
var eventType = EventTypes.GetOrDefault(incomingEvent.EventName);
@@ -164,7 +190,7 @@ public class DaprDistributedEventBus : DistributedEventBusBase, ISingletonDepend
var eventData = Serializer.Deserialize(incomingEvent.EventData, eventType);
var exceptions = new List();
- await TriggerHandlersAsync(eventType, eventData, exceptions, inboxConfig);
+ await TriggerHandlersFromInboxAsync(eventType, eventData, exceptions, inboxConfig);
if (exceptions.Any())
{
ThrowOriginalExceptions(eventType, exceptions);
@@ -176,6 +202,12 @@ public class DaprDistributedEventBus : DistributedEventBusBase, ISingletonDepend
return Serializer.Serialize(eventData);
}
+ protected override Task OnAddToOutboxAsync(string eventName, Type eventType, object eventData)
+ {
+ EventTypes.GetOrAdd(eventName, eventType);
+ return base.OnAddToOutboxAsync(eventName, eventType, eventData);
+ }
+
private List GetOrCreateHandlerFactories(Type eventType)
{
return HandlerFactories.GetOrAdd(
@@ -183,7 +215,7 @@ public class DaprDistributedEventBus : DistributedEventBusBase, ISingletonDepend
type =>
{
var eventName = EventNameAttribute.GetNameOrDefault(type);
- EventTypes[eventName] = type;
+ EventTypes.GetOrAdd(eventName, eventType);
return new List();
}
);
diff --git a/framework/src/Volo.Abp.EventBus.Kafka/Volo.Abp.EventBus.Kafka.csproj b/framework/src/Volo.Abp.EventBus.Kafka/Volo.Abp.EventBus.Kafka.csproj
index cbf8d78aea..9a240aa49a 100644
--- a/framework/src/Volo.Abp.EventBus.Kafka/Volo.Abp.EventBus.Kafka.csproj
+++ b/framework/src/Volo.Abp.EventBus.Kafka/Volo.Abp.EventBus.Kafka.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
diff --git a/framework/src/Volo.Abp.EventBus.Kafka/Volo/Abp/EventBus/Kafka/KafkaDistributedEventBus.cs b/framework/src/Volo.Abp.EventBus.Kafka/Volo/Abp/EventBus/Kafka/KafkaDistributedEventBus.cs
index aa79c81f50..62e161fad1 100644
--- a/framework/src/Volo.Abp.EventBus.Kafka/Volo/Abp/EventBus/Kafka/KafkaDistributedEventBus.cs
+++ b/framework/src/Volo.Abp.EventBus.Kafka/Volo/Abp/EventBus/Kafka/KafkaDistributedEventBus.cs
@@ -8,6 +8,7 @@ using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Options;
using Volo.Abp.DependencyInjection;
using Volo.Abp.EventBus.Distributed;
+using Volo.Abp.EventBus.Local;
using Volo.Abp.Guids;
using Volo.Abp.Kafka;
using Volo.Abp.MultiTenancy;
@@ -40,7 +41,8 @@ public class KafkaDistributedEventBus : DistributedEventBusBase, ISingletonDepen
IProducerPool producerPool,
IGuidGenerator guidGenerator,
IClock clock,
- IEventHandlerInvoker eventHandlerInvoker)
+ IEventHandlerInvoker eventHandlerInvoker,
+ ILocalEventBus localEventBus)
: base(
serviceScopeFactory,
currentTenant,
@@ -48,7 +50,8 @@ public class KafkaDistributedEventBus : DistributedEventBusBase, ISingletonDepen
abpDistributedEventBusOptions,
guidGenerator,
clock,
- eventHandlerInvoker)
+ eventHandlerInvoker,
+ localEventBus)
{
AbpKafkaEventBusOptions = abpKafkaEventBusOptions.Value;
MessageConsumerFactory = messageConsumerFactory;
@@ -80,15 +83,14 @@ public class KafkaDistributedEventBus : DistributedEventBusBase, ISingletonDepen
}
var messageId = message.GetMessageId();
+ var eventData = Serializer.Deserialize(message.Value, eventType);
- if (await AddToInboxAsync(messageId, eventName, eventType, message.Value))
+ if (await AddToInboxAsync(messageId, eventName, eventType, eventData))
{
return;
}
- var eventData = Serializer.Deserialize(message.Value, eventType);
-
- await TriggerHandlersAsync(eventType, eventData);
+ await TriggerHandlersDirectAsync(eventType, eventData);
}
public override IDisposable Subscribe(Type eventType, IEventHandlerFactory factory)
@@ -177,11 +179,18 @@ public class KafkaDistributedEventBus : DistributedEventBusBase, ISingletonDepen
unitOfWork.AddOrReplaceDistributedEvent(eventRecord);
}
- public override Task PublishFromOutboxAsync(
+ public override async Task PublishFromOutboxAsync(
OutgoingEventInfo outgoingEvent,
OutboxConfig outboxConfig)
{
- return PublishAsync(
+ await TriggerDistributedEventSentAsync(new DistributedEventSent()
+ {
+ Source = DistributedEventSource.Outbox,
+ EventName = outgoingEvent.EventName,
+ EventData = outgoingEvent.EventData
+ });
+
+ await PublishAsync(
AbpKafkaEventBusOptions.TopicName,
outgoingEvent.EventName,
outgoingEvent.EventData,
@@ -192,19 +201,26 @@ public class KafkaDistributedEventBus : DistributedEventBusBase, ISingletonDepen
);
}
- public override Task PublishManyFromOutboxAsync(IEnumerable outgoingEvents, OutboxConfig outboxConfig)
+ public async override Task PublishManyFromOutboxAsync(IEnumerable outgoingEvents, OutboxConfig outboxConfig)
{
var producer = ProducerPool.Get(AbpKafkaEventBusOptions.ConnectionName);
var outgoingEventArray = outgoingEvents.ToArray();
-
+
foreach (var outgoingEvent in outgoingEventArray)
{
var messageId = outgoingEvent.Id.ToString("N");
- var headers = new Headers
+ var headers = new Headers
{
{ "messageId", System.Text.Encoding.UTF8.GetBytes(messageId)}
};
-
+
+ await TriggerDistributedEventSentAsync(new DistributedEventSent()
+ {
+ Source = DistributedEventSource.Outbox,
+ EventName = outgoingEvent.EventName,
+ EventData = outgoingEvent.EventData
+ });
+
producer.Produce(
AbpKafkaEventBusOptions.TopicName,
new Message
@@ -214,8 +230,6 @@ public class KafkaDistributedEventBus : DistributedEventBusBase, ISingletonDepen
Headers = headers
});
}
-
- return Task.CompletedTask;
}
public async override Task ProcessFromInboxAsync(
@@ -230,7 +244,7 @@ public class KafkaDistributedEventBus : DistributedEventBusBase, ISingletonDepen
var eventData = Serializer.Deserialize(incomingEvent.EventData, eventType);
var exceptions = new List();
- await TriggerHandlersAsync(eventType, eventData, exceptions, inboxConfig);
+ await TriggerHandlersFromInboxAsync(eventType, eventData, exceptions, inboxConfig);
if (exceptions.Any())
{
ThrowOriginalExceptions(eventType, exceptions);
@@ -251,9 +265,9 @@ public class KafkaDistributedEventBus : DistributedEventBusBase, ISingletonDepen
}
private Task> PublishAsync(
- string topicName,
+ string topicName,
string eventName,
- byte[] body,
+ byte[] body,
Headers headers)
{
var producer = ProducerPool.Get(AbpKafkaEventBusOptions.ConnectionName);
@@ -268,6 +282,12 @@ public class KafkaDistributedEventBus : DistributedEventBusBase, ISingletonDepen
});
}
+ protected override Task OnAddToOutboxAsync(string eventName, Type eventType, object eventData)
+ {
+ EventTypes.GetOrAdd(eventName, eventType);
+ return base.OnAddToOutboxAsync(eventName, eventType, eventData);
+ }
+
private List GetOrCreateHandlerFactories(Type eventType)
{
return HandlerFactories.GetOrAdd(
@@ -275,7 +295,7 @@ public class KafkaDistributedEventBus : DistributedEventBusBase, ISingletonDepen
type =>
{
var eventName = EventNameAttribute.GetNameOrDefault(type);
- EventTypes[eventName] = type;
+ EventTypes.GetOrAdd(eventName, eventType);
return new List();
}
);
diff --git a/framework/src/Volo.Abp.EventBus.RabbitMQ/Volo.Abp.EventBus.RabbitMQ.csproj b/framework/src/Volo.Abp.EventBus.RabbitMQ/Volo.Abp.EventBus.RabbitMQ.csproj
index 40787f3fb2..73c4d4a69a 100644
--- a/framework/src/Volo.Abp.EventBus.RabbitMQ/Volo.Abp.EventBus.RabbitMQ.csproj
+++ b/framework/src/Volo.Abp.EventBus.RabbitMQ/Volo.Abp.EventBus.RabbitMQ.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.EventBus.RabbitMQ
Volo.Abp.EventBus.RabbitMQ
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.EventBus.RabbitMQ/Volo/Abp/EventBus/RabbitMq/RabbitMqDistributedEventBus.cs b/framework/src/Volo.Abp.EventBus.RabbitMQ/Volo/Abp/EventBus/RabbitMq/RabbitMqDistributedEventBus.cs
index 7e352ca530..8d4756165a 100644
--- a/framework/src/Volo.Abp.EventBus.RabbitMQ/Volo/Abp/EventBus/RabbitMq/RabbitMqDistributedEventBus.cs
+++ b/framework/src/Volo.Abp.EventBus.RabbitMQ/Volo/Abp/EventBus/RabbitMq/RabbitMqDistributedEventBus.cs
@@ -9,6 +9,7 @@ using RabbitMQ.Client;
using RabbitMQ.Client.Events;
using Volo.Abp.DependencyInjection;
using Volo.Abp.EventBus.Distributed;
+using Volo.Abp.EventBus.Local;
using Volo.Abp.Guids;
using Volo.Abp.MultiTenancy;
using Volo.Abp.RabbitMQ;
@@ -47,7 +48,8 @@ public class RabbitMqDistributedEventBus : DistributedEventBusBase, ISingletonDe
IUnitOfWorkManager unitOfWorkManager,
IGuidGenerator guidGenerator,
IClock clock,
- IEventHandlerInvoker eventHandlerInvoker)
+ IEventHandlerInvoker eventHandlerInvoker,
+ ILocalEventBus localEventBus)
: base(
serviceScopeFactory,
currentTenant,
@@ -55,7 +57,8 @@ public class RabbitMqDistributedEventBus : DistributedEventBusBase, ISingletonDe
distributedEventBusOptions,
guidGenerator,
clock,
- eventHandlerInvoker)
+ eventHandlerInvoker,
+ localEventBus)
{
ConnectionPool = connectionPool;
Serializer = serializer;
@@ -98,16 +101,14 @@ public class RabbitMqDistributedEventBus : DistributedEventBusBase, ISingletonDe
return;
}
- var eventBytes = ea.Body.ToArray();
+ var eventData = Serializer.Deserialize(ea.Body.ToArray(), eventType);
- if (await AddToInboxAsync(ea.BasicProperties.MessageId, eventName, eventType, eventBytes))
+ if (await AddToInboxAsync(ea.BasicProperties.MessageId, eventName, eventType, eventData))
{
return;
}
- var eventData = Serializer.Deserialize(eventBytes, eventType);
-
- await TriggerHandlersAsync(eventType, eventData);
+ await TriggerHandlersDirectAsync(eventType, eventData);
}
public override IDisposable Subscribe(Type eventType, IEventHandlerFactory factory)
@@ -193,11 +194,18 @@ public class RabbitMqDistributedEventBus : DistributedEventBusBase, ISingletonDe
unitOfWork.AddOrReplaceDistributedEvent(eventRecord);
}
- public override Task PublishFromOutboxAsync(
+ public override async Task PublishFromOutboxAsync(
OutgoingEventInfo outgoingEvent,
OutboxConfig outboxConfig)
{
- return PublishAsync(outgoingEvent.EventName, outgoingEvent.EventData, null, eventId: outgoingEvent.Id);
+ await TriggerDistributedEventSentAsync(new DistributedEventSent()
+ {
+ Source = DistributedEventSource.Outbox,
+ EventName = outgoingEvent.EventName,
+ EventData = outgoingEvent.EventData
+ });
+
+ await PublishAsync(outgoingEvent.EventName, outgoingEvent.EventData, null, eventId: outgoingEvent.Id);
}
public async override Task PublishManyFromOutboxAsync(
@@ -211,10 +219,17 @@ public class RabbitMqDistributedEventBus : DistributedEventBusBase, ISingletonDe
foreach (var outgoingEvent in outgoingEventArray)
{
+ await TriggerDistributedEventSentAsync(new DistributedEventSent()
+ {
+ Source = DistributedEventSource.Outbox,
+ EventName = outgoingEvent.EventName,
+ EventData = outgoingEvent.EventData
+ });
+
await PublishAsync(
channel,
- outgoingEvent.EventName,
- outgoingEvent.EventData,
+ outgoingEvent.EventName,
+ outgoingEvent.EventData,
properties: null,
eventId: outgoingEvent.Id);
}
@@ -235,7 +250,7 @@ public class RabbitMqDistributedEventBus : DistributedEventBusBase, ISingletonDe
var eventData = Serializer.Deserialize(incomingEvent.EventData, eventType);
var exceptions = new List();
- await TriggerHandlersAsync(eventType, eventData, exceptions, inboxConfig);
+ await TriggerHandlersFromInboxAsync(eventType, eventData, exceptions, inboxConfig);
if (exceptions.Any())
{
ThrowOriginalExceptions(eventType, exceptions);
@@ -249,7 +264,7 @@ public class RabbitMqDistributedEventBus : DistributedEventBusBase, ISingletonDe
public Task PublishAsync(
Type eventType,
- object eventData,
+ object eventData,
IBasicProperties properties,
Dictionary headersArguments = null)
{
@@ -343,6 +358,12 @@ public class RabbitMqDistributedEventBus : DistributedEventBusBase, ISingletonDe
}
}
+ protected override Task OnAddToOutboxAsync(string eventName, Type eventType, object eventData)
+ {
+ EventTypes.GetOrAdd(eventName, eventType);
+ return base.OnAddToOutboxAsync(eventName, eventType, eventData);
+ }
+
private List GetOrCreateHandlerFactories(Type eventType)
{
return HandlerFactories.GetOrAdd(
@@ -350,7 +371,7 @@ public class RabbitMqDistributedEventBus : DistributedEventBusBase, ISingletonDe
type =>
{
var eventName = EventNameAttribute.GetNameOrDefault(type);
- EventTypes[eventName] = type;
+ EventTypes.GetOrAdd(eventName, eventType);
return new List();
}
);
diff --git a/framework/src/Volo.Abp.EventBus.Rebus/Volo.Abp.EventBus.Rebus.csproj b/framework/src/Volo.Abp.EventBus.Rebus/Volo.Abp.EventBus.Rebus.csproj
index c862e1845b..9800674fab 100644
--- a/framework/src/Volo.Abp.EventBus.Rebus/Volo.Abp.EventBus.Rebus.csproj
+++ b/framework/src/Volo.Abp.EventBus.Rebus/Volo.Abp.EventBus.Rebus.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.EventBus.Rebus
Volo.Abp.EventBus.Rebus
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.EventBus.Rebus/Volo/Abp/EventBus/Rebus/RebusDistributedEventBus.cs b/framework/src/Volo.Abp.EventBus.Rebus/Volo/Abp/EventBus/Rebus/RebusDistributedEventBus.cs
index bfe763d960..0983e98836 100644
--- a/framework/src/Volo.Abp.EventBus.Rebus/Volo/Abp/EventBus/Rebus/RebusDistributedEventBus.cs
+++ b/framework/src/Volo.Abp.EventBus.Rebus/Volo/Abp/EventBus/Rebus/RebusDistributedEventBus.cs
@@ -11,6 +11,7 @@ using Rebus.Pipeline;
using Rebus.Transport;
using Volo.Abp.DependencyInjection;
using Volo.Abp.EventBus.Distributed;
+using Volo.Abp.EventBus.Local;
using Volo.Abp.Guids;
using Volo.Abp.MultiTenancy;
using Volo.Abp.Threading;
@@ -41,7 +42,8 @@ public class RebusDistributedEventBus : DistributedEventBusBase, ISingletonDepen
IRebusSerializer serializer,
IGuidGenerator guidGenerator,
IClock clock,
- IEventHandlerInvoker eventHandlerInvoker) :
+ IEventHandlerInvoker eventHandlerInvoker,
+ ILocalEventBus localEventBus) :
base(
serviceScopeFactory,
currentTenant,
@@ -49,7 +51,8 @@ public class RebusDistributedEventBus : DistributedEventBusBase, ISingletonDepen
abpDistributedEventBusOptions,
guidGenerator,
clock,
- eventHandlerInvoker)
+ eventHandlerInvoker,
+ localEventBus)
{
Rebus = rebus;
Serializer = serializer;
@@ -142,12 +145,12 @@ public class RebusDistributedEventBus : DistributedEventBusBase, ISingletonDepen
var messageId = MessageContext.Current.TransportMessage.GetMessageId();
var eventName = EventNameAttribute.GetNameOrDefault(eventType);
- if (await AddToInboxAsync(messageId, eventName, eventType, MessageContext.Current.TransportMessage.Body))
+ if (await AddToInboxAsync(messageId, eventName, eventType, eventData))
{
return;
}
- await TriggerHandlersAsync(eventType, eventData);
+ await TriggerHandlersDirectAsync(eventType, eventData);
}
protected async override Task PublishToEventBusAsync(Type eventType, object eventData)
@@ -181,6 +184,12 @@ public class RebusDistributedEventBus : DistributedEventBusBase, ISingletonDepen
unitOfWork.AddOrReplaceDistributedEvent(eventRecord);
}
+ protected override Task OnAddToOutboxAsync(string eventName, Type eventType, object eventData)
+ {
+ EventTypes.GetOrAdd(eventName, eventType);
+ return base.OnAddToOutboxAsync(eventName, eventType, eventData);
+ }
+
private List GetOrCreateHandlerFactories(Type eventType)
{
return HandlerFactories.GetOrAdd(
@@ -188,7 +197,7 @@ public class RebusDistributedEventBus : DistributedEventBusBase, ISingletonDepen
type =>
{
var eventName = EventNameAttribute.GetNameOrDefault(type);
- EventTypes[eventName] = type;
+ EventTypes.GetOrAdd(eventName, eventType);
return new List();
}
);
@@ -225,14 +234,21 @@ public class RebusDistributedEventBus : DistributedEventBusBase, ISingletonDepen
return false;
}
- public override Task PublishFromOutboxAsync(
+ public override async Task PublishFromOutboxAsync(
OutgoingEventInfo outgoingEvent,
OutboxConfig outboxConfig)
{
var eventType = EventTypes.GetOrDefault(outgoingEvent.EventName);
var eventData = Serializer.Deserialize(outgoingEvent.EventData, eventType);
- return PublishAsync(eventType, eventData, eventId: outgoingEvent.Id);
+ await TriggerDistributedEventSentAsync(new DistributedEventSent()
+ {
+ Source = DistributedEventSource.Outbox,
+ EventName = outgoingEvent.EventName,
+ EventData = outgoingEvent.EventData
+ });
+
+ await PublishAsync(eventType, eventData, eventId: outgoingEvent.Id);
}
public async override Task PublishManyFromOutboxAsync(IEnumerable outgoingEvents, OutboxConfig outboxConfig)
@@ -243,9 +259,16 @@ public class RebusDistributedEventBus : DistributedEventBusBase, ISingletonDepen
{
foreach (var outgoingEvent in outgoingEventArray)
{
+ await TriggerDistributedEventSentAsync(new DistributedEventSent()
+ {
+ Source = DistributedEventSource.Outbox,
+ EventName = outgoingEvent.EventName,
+ EventData = outgoingEvent.EventData
+ });
+
await PublishFromOutboxAsync(outgoingEvent, outboxConfig);
}
-
+
await scope.CompleteAsync();
}
}
@@ -262,7 +285,7 @@ public class RebusDistributedEventBus : DistributedEventBusBase, ISingletonDepen
var eventData = Serializer.Deserialize(incomingEvent.EventData, eventType);
var exceptions = new List();
- await TriggerHandlersAsync(eventType, eventData, exceptions, inboxConfig);
+ await TriggerHandlersFromInboxAsync(eventType, eventData, exceptions, inboxConfig);
if (exceptions.Any())
{
ThrowOriginalExceptions(eventType, exceptions);
diff --git a/framework/src/Volo.Abp.EventBus/Volo.Abp.EventBus.csproj b/framework/src/Volo.Abp.EventBus/Volo.Abp.EventBus.csproj
index bee75bf7ff..500c6cc507 100644
--- a/framework/src/Volo.Abp.EventBus/Volo.Abp.EventBus.csproj
+++ b/framework/src/Volo.Abp.EventBus/Volo.Abp.EventBus.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.EventBus
Volo.Abp.EventBus
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.EventBus/Volo/Abp/EventBus/Distributed/DistributedEventBusBase.cs b/framework/src/Volo.Abp.EventBus/Volo/Abp/EventBus/Distributed/DistributedEventBusBase.cs
index 5da66e03cd..89423ce111 100644
--- a/framework/src/Volo.Abp.EventBus/Volo/Abp/EventBus/Distributed/DistributedEventBusBase.cs
+++ b/framework/src/Volo.Abp.EventBus/Volo/Abp/EventBus/Distributed/DistributedEventBusBase.cs
@@ -4,6 +4,7 @@ using System.Linq;
using System.Threading.Tasks;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Options;
+using Volo.Abp.EventBus.Local;
using Volo.Abp.Guids;
using Volo.Abp.MultiTenancy;
using Volo.Abp.Timing;
@@ -16,6 +17,7 @@ public abstract class DistributedEventBusBase : EventBusBase, IDistributedEventB
protected IGuidGenerator GuidGenerator { get; }
protected IClock Clock { get; }
protected AbpDistributedEventBusOptions AbpDistributedEventBusOptions { get; }
+ protected ILocalEventBus LocalEventBus { get; }
protected DistributedEventBusBase(
IServiceScopeFactory serviceScopeFactory,
@@ -24,8 +26,8 @@ public abstract class DistributedEventBusBase : EventBusBase, IDistributedEventB
IOptions abpDistributedEventBusOptions,
IGuidGenerator guidGenerator,
IClock clock,
- IEventHandlerInvoker eventHandlerInvoker
- ) : base(
+ IEventHandlerInvoker eventHandlerInvoker,
+ ILocalEventBus localEventBus) : base(
serviceScopeFactory,
currentTenant,
unitOfWorkManager,
@@ -34,6 +36,7 @@ public abstract class DistributedEventBusBase : EventBusBase, IDistributedEventB
GuidGenerator = guidGenerator;
Clock = clock;
AbpDistributedEventBusOptions = abpDistributedEventBusOptions.Value;
+ LocalEventBus = localEventBus;
}
public IDisposable Subscribe(IDistributedEventHandler handler) where TEvent : class
@@ -78,6 +81,13 @@ public abstract class DistributedEventBusBase : EventBusBase, IDistributedEventB
}
}
+ await TriggerDistributedEventSentAsync(new DistributedEventSent()
+ {
+ Source = DistributedEventSource.Direct,
+ EventName = EventNameAttribute.GetNameOrDefault(eventType),
+ EventData = eventData
+ });
+
await PublishToEventBusAsync(eventType, eventData);
}
@@ -95,7 +105,7 @@ public abstract class DistributedEventBusBase : EventBusBase, IDistributedEventB
IncomingEventInfo incomingEvent,
InboxConfig inboxConfig);
- private async Task AddToOutboxAsync(Type eventType, object eventData)
+ protected virtual async Task AddToOutboxAsync(Type eventType, object eventData)
{
var unitOfWork = UnitOfWorkManager.Current;
if (unitOfWork == null)
@@ -107,9 +117,18 @@ public abstract class DistributedEventBusBase : EventBusBase, IDistributedEventB
{
if (outboxConfig.Selector == null || outboxConfig.Selector(eventType))
{
- var eventOutbox =
- (IEventOutbox)unitOfWork.ServiceProvider.GetRequiredService(outboxConfig.ImplementationType);
+ var eventOutbox = (IEventOutbox)unitOfWork.ServiceProvider.GetRequiredService(outboxConfig.ImplementationType);
var eventName = EventNameAttribute.GetNameOrDefault(eventType);
+
+ await OnAddToOutboxAsync(eventName, eventType, eventData);
+
+ await TriggerDistributedEventSentAsync(new DistributedEventSent()
+ {
+ Source = DistributedEventSource.Direct,
+ EventName = eventName,
+ EventData = eventData
+ });
+
await eventOutbox.EnqueueAsync(
new OutgoingEventInfo(
GuidGenerator.Create(),
@@ -125,11 +144,16 @@ public abstract class DistributedEventBusBase : EventBusBase, IDistributedEventB
return false;
}
+ protected virtual Task OnAddToOutboxAsync(string eventName, Type eventType, object eventData)
+ {
+ return Task.CompletedTask;
+ }
+
protected async Task AddToInboxAsync(
string messageId,
string eventName,
Type eventType,
- byte[] eventBytes)
+ object eventData)
{
if (AbpDistributedEventBusOptions.Inboxes.Count <= 0)
{
@@ -153,12 +177,19 @@ public abstract class DistributedEventBusBase : EventBusBase, IDistributedEventB
}
}
+ await TriggerDistributedEventReceivedAsync(new DistributedEventReceived
+ {
+ Source = DistributedEventSource.Direct,
+ EventName = EventNameAttribute.GetNameOrDefault(eventType),
+ EventData = eventData
+ });
+
await eventInbox.EnqueueAsync(
new IncomingEventInfo(
GuidGenerator.Create(),
messageId,
eventName,
- eventBytes,
+ Serialize(eventData),
Clock.Now
)
);
@@ -170,4 +201,52 @@ public abstract class DistributedEventBusBase : EventBusBase, IDistributedEventB
}
protected abstract byte[] Serialize(object eventData);
+
+ protected virtual async Task TriggerHandlersDirectAsync(Type eventType, object eventData)
+ {
+ await TriggerDistributedEventReceivedAsync(new DistributedEventReceived
+ {
+ Source = DistributedEventSource.Direct,
+ EventName = EventNameAttribute.GetNameOrDefault(eventType),
+ EventData = eventData
+ });
+
+ await TriggerHandlersAsync(eventType, eventData);
+ }
+
+ protected virtual async Task TriggerHandlersFromInboxAsync(Type eventType, object eventData, List exceptions, InboxConfig inboxConfig = null)
+ {
+ await TriggerDistributedEventReceivedAsync(new DistributedEventReceived
+ {
+ Source = DistributedEventSource.Inbox,
+ EventName = EventNameAttribute.GetNameOrDefault(eventType),
+ EventData = eventData
+ });
+
+ await TriggerHandlersAsync(eventType, eventData, exceptions, inboxConfig);
+ }
+
+ public virtual async Task TriggerDistributedEventSentAsync(DistributedEventSent distributedEvent)
+ {
+ try
+ {
+ await LocalEventBus.PublishAsync(distributedEvent);
+ }
+ catch (Exception _)
+ {
+ // ignored
+ }
+ }
+
+ public virtual async Task TriggerDistributedEventReceivedAsync(DistributedEventReceived distributedEvent)
+ {
+ try
+ {
+ await LocalEventBus.PublishAsync(distributedEvent);
+ }
+ catch (Exception _)
+ {
+ // ignored
+ }
+ }
}
diff --git a/framework/src/Volo.Abp.EventBus/Volo/Abp/EventBus/Distributed/LocalDistributedEventBus.cs b/framework/src/Volo.Abp.EventBus/Volo/Abp/EventBus/Distributed/LocalDistributedEventBus.cs
index 64f375130b..b63133a388 100644
--- a/framework/src/Volo.Abp.EventBus/Volo/Abp/EventBus/Distributed/LocalDistributedEventBus.cs
+++ b/framework/src/Volo.Abp.EventBus/Volo/Abp/EventBus/Distributed/LocalDistributedEventBus.cs
@@ -28,6 +28,30 @@ public class LocalDistributedEventBus : IDistributedEventBus, ISingletonDependen
ServiceScopeFactory = serviceScopeFactory;
AbpDistributedEventBusOptions = distributedEventBusOptions.Value;
Subscribe(distributedEventBusOptions.Value.Handlers);
+
+ // For unit testing
+ if (localEventBus is LocalEventBus eventBus)
+ {
+ eventBus.OnEventHandleInvoking = async (eventType, eventData) =>
+ {
+ await localEventBus.PublishAsync(new DistributedEventReceived()
+ {
+ Source = DistributedEventSource.Direct,
+ EventName = EventNameAttribute.GetNameOrDefault(eventType),
+ EventData = eventData
+ }, onUnitOfWorkComplete: false);
+ };
+
+ eventBus.OnPublishing = async (eventType, eventData) =>
+ {
+ await localEventBus.PublishAsync(new DistributedEventSent()
+ {
+ Source = DistributedEventSource.Direct,
+ EventName = EventNameAttribute.GetNameOrDefault(eventType),
+ EventData = eventData
+ }, onUnitOfWorkComplete: false);
+ };
+ }
}
public virtual void Subscribe(ITypeList handlers)
@@ -132,7 +156,7 @@ public class LocalDistributedEventBus : IDistributedEventBus, ISingletonDependen
{
return _localEventBus.PublishAsync(eventType, eventData, onUnitOfWorkComplete);
}
-
+
public Task PublishAsync(TEvent eventData, bool onUnitOfWorkComplete = true, bool useOutbox = true) where TEvent : class
{
return _localEventBus.PublishAsync(eventData, onUnitOfWorkComplete);
@@ -142,4 +166,4 @@ public class LocalDistributedEventBus : IDistributedEventBus, ISingletonDependen
{
return _localEventBus.PublishAsync(eventType, eventData, onUnitOfWorkComplete);
}
-}
\ No newline at end of file
+}
diff --git a/framework/src/Volo.Abp.EventBus/Volo/Abp/EventBus/EventBusBase.cs b/framework/src/Volo.Abp.EventBus/Volo/Abp/EventBus/EventBusBase.cs
index 6e48b27e5f..516a0008d7 100644
--- a/framework/src/Volo.Abp.EventBus/Volo/Abp/EventBus/EventBusBase.cs
+++ b/framework/src/Volo.Abp.EventBus/Volo/Abp/EventBus/EventBusBase.cs
@@ -9,7 +9,6 @@ using Microsoft.Extensions.DependencyInjection;
using Volo.Abp.Collections;
using Volo.Abp.EventBus.Distributed;
using Volo.Abp.MultiTenancy;
-using Volo.Abp.Reflection;
using Volo.Abp.Uow;
namespace Volo.Abp.EventBus;
@@ -214,7 +213,7 @@ public abstract class EventBusBase : IEventBus
using (CurrentTenant.Change(GetEventDataTenantId(eventData)))
{
- await EventHandlerInvoker.InvokeAsync(eventHandlerWrapper.EventHandler, eventData, eventType);
+ await InvokeEventHandlerAsync(eventHandlerWrapper.EventHandler, eventData, eventType);
}
}
catch (TargetInvocationException ex)
@@ -228,6 +227,11 @@ public abstract class EventBusBase : IEventBus
}
}
+ protected virtual Task InvokeEventHandlerAsync(IEventHandler eventHandler, object eventData, Type eventType)
+ {
+ return EventHandlerInvoker.InvokeAsync(eventHandler, eventData, eventType);
+ }
+
protected virtual Guid? GetEventDataTenantId(object eventData)
{
return eventData switch
diff --git a/framework/src/Volo.Abp.EventBus/Volo/Abp/EventBus/Local/LocalEventBus.cs b/framework/src/Volo.Abp.EventBus/Volo/Abp/EventBus/Local/LocalEventBus.cs
index 3f7dbbc851..9570bf80e1 100644
--- a/framework/src/Volo.Abp.EventBus/Volo/Abp/EventBus/Local/LocalEventBus.cs
+++ b/framework/src/Volo.Abp.EventBus/Volo/Abp/EventBus/Local/LocalEventBus.cs
@@ -8,6 +8,7 @@ using System.Linq;
using System.Threading.Tasks;
using Microsoft.Extensions.DependencyInjection;
using Volo.Abp.DependencyInjection;
+using Volo.Abp.EventBus.Distributed;
using Volo.Abp.MultiTenancy;
using Volo.Abp.Threading;
using Volo.Abp.Uow;
@@ -168,4 +169,45 @@ public class LocalEventBus : EventBusBase, ILocalEventBus, ISingletonDependency
return false;
}
+
+ // Internal for unit testing
+ internal Func OnEventHandleInvoking { get; set; }
+
+ // Internal for unit testing
+ protected async override Task InvokeEventHandlerAsync(IEventHandler eventHandler, object eventData, Type eventType)
+ {
+ if (OnEventHandleInvoking != null && eventType != typeof(DistributedEventSent) && eventType != typeof(DistributedEventReceived))
+ {
+ await OnEventHandleInvoking(eventType, eventData);
+ }
+
+ await base.InvokeEventHandlerAsync(eventHandler, eventData, eventType);
+ }
+
+ // Internal for unit testing
+ internal Func OnPublishing { get; set; }
+
+ // For unit testing
+ public async override Task PublishAsync(
+ Type eventType,
+ object eventData,
+ bool onUnitOfWorkComplete = true)
+ {
+ if (onUnitOfWorkComplete && UnitOfWorkManager.Current != null)
+ {
+ AddToUnitOfWork(
+ UnitOfWorkManager.Current,
+ new UnitOfWorkEventRecord(eventType, eventData, EventOrderGenerator.GetNext())
+ );
+ return;
+ }
+
+ // For unit testing
+ if (OnPublishing != null && eventType != typeof(DistributedEventSent) && eventType != typeof(DistributedEventReceived))
+ {
+ await OnPublishing(eventType, eventData);
+ }
+
+ await PublishToEventBusAsync(eventType, eventData);
+ }
}
diff --git a/framework/src/Volo.Abp.ExceptionHandling/Volo.Abp.ExceptionHandling.csproj b/framework/src/Volo.Abp.ExceptionHandling/Volo.Abp.ExceptionHandling.csproj
index b1d60e60c7..96c708d6c6 100644
--- a/framework/src/Volo.Abp.ExceptionHandling/Volo.Abp.ExceptionHandling.csproj
+++ b/framework/src/Volo.Abp.ExceptionHandling/Volo.Abp.ExceptionHandling.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
true
diff --git a/framework/src/Volo.Abp.Features/Volo.Abp.Features.csproj b/framework/src/Volo.Abp.Features/Volo.Abp.Features.csproj
index 3b58621b45..08f5621892 100644
--- a/framework/src/Volo.Abp.Features/Volo.Abp.Features.csproj
+++ b/framework/src/Volo.Abp.Features/Volo.Abp.Features.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.Features
Volo.Abp.Features
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.FluentValidation/Volo.Abp.FluentValidation.csproj b/framework/src/Volo.Abp.FluentValidation/Volo.Abp.FluentValidation.csproj
index 4722fac1b0..af4f5c21c0 100644
--- a/framework/src/Volo.Abp.FluentValidation/Volo.Abp.FluentValidation.csproj
+++ b/framework/src/Volo.Abp.FluentValidation/Volo.Abp.FluentValidation.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.FluentValidation
Volo.Abp.FluentValidation
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.Gdpr.Abstractions/Volo.Abp.Gdpr.Abstractions.csproj b/framework/src/Volo.Abp.Gdpr.Abstractions/Volo.Abp.Gdpr.Abstractions.csproj
index 8af8416bb0..412f2f38e4 100644
--- a/framework/src/Volo.Abp.Gdpr.Abstractions/Volo.Abp.Gdpr.Abstractions.csproj
+++ b/framework/src/Volo.Abp.Gdpr.Abstractions/Volo.Abp.Gdpr.Abstractions.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
diff --git a/framework/src/Volo.Abp.GlobalFeatures/Volo.Abp.GlobalFeatures.csproj b/framework/src/Volo.Abp.GlobalFeatures/Volo.Abp.GlobalFeatures.csproj
index 024ec5ec17..7862b829c7 100644
--- a/framework/src/Volo.Abp.GlobalFeatures/Volo.Abp.GlobalFeatures.csproj
+++ b/framework/src/Volo.Abp.GlobalFeatures/Volo.Abp.GlobalFeatures.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.GlobalFeatures
Volo.Abp.GlobalFeatures
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.Guids/Volo.Abp.Guids.csproj b/framework/src/Volo.Abp.Guids/Volo.Abp.Guids.csproj
index 6c8c4c4916..ed4e0af802 100644
--- a/framework/src/Volo.Abp.Guids/Volo.Abp.Guids.csproj
+++ b/framework/src/Volo.Abp.Guids/Volo.Abp.Guids.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.Guids
Volo.Abp.Guids
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.HangFire/Volo.Abp.HangFire.csproj b/framework/src/Volo.Abp.HangFire/Volo.Abp.HangFire.csproj
index 2a3d6fe8ba..40d03c2f15 100644
--- a/framework/src/Volo.Abp.HangFire/Volo.Abp.HangFire.csproj
+++ b/framework/src/Volo.Abp.HangFire/Volo.Abp.HangFire.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.HangFire
Volo.Abp.HangFire
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.Http.Abstractions/Volo.Abp.Http.Abstractions.csproj b/framework/src/Volo.Abp.Http.Abstractions/Volo.Abp.Http.Abstractions.csproj
index 59de087fc4..332c803147 100644
--- a/framework/src/Volo.Abp.Http.Abstractions/Volo.Abp.Http.Abstractions.csproj
+++ b/framework/src/Volo.Abp.Http.Abstractions/Volo.Abp.Http.Abstractions.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.Http.Abstractions
Volo.Abp.Http.Abstractions
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.Http.Client.IdentityModel/Volo.Abp.Http.Client.IdentityModel.csproj b/framework/src/Volo.Abp.Http.Client.IdentityModel/Volo.Abp.Http.Client.IdentityModel.csproj
index d8eef1ba5d..083e987d49 100644
--- a/framework/src/Volo.Abp.Http.Client.IdentityModel/Volo.Abp.Http.Client.IdentityModel.csproj
+++ b/framework/src/Volo.Abp.Http.Client.IdentityModel/Volo.Abp.Http.Client.IdentityModel.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.Http.Client.IdentityModel
Volo.Abp.Http.Client.IdentityModel
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.Http.Client/Volo.Abp.Http.Client.csproj b/framework/src/Volo.Abp.Http.Client/Volo.Abp.Http.Client.csproj
index 67aef7dd89..26708da6b7 100644
--- a/framework/src/Volo.Abp.Http.Client/Volo.Abp.Http.Client.csproj
+++ b/framework/src/Volo.Abp.Http.Client/Volo.Abp.Http.Client.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.Http.Client
Volo.Abp.Http.Client
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.Http/Volo.Abp.Http.csproj b/framework/src/Volo.Abp.Http/Volo.Abp.Http.csproj
index d707299f21..3b029e3b9d 100644
--- a/framework/src/Volo.Abp.Http/Volo.Abp.Http.csproj
+++ b/framework/src/Volo.Abp.Http/Volo.Abp.Http.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.Http
Volo.Abp.Http
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.IdentityModel/Volo.Abp.IdentityModel.csproj b/framework/src/Volo.Abp.IdentityModel/Volo.Abp.IdentityModel.csproj
index 8bc6b1b5de..a707f58b9c 100644
--- a/framework/src/Volo.Abp.IdentityModel/Volo.Abp.IdentityModel.csproj
+++ b/framework/src/Volo.Abp.IdentityModel/Volo.Abp.IdentityModel.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.IdentityModel
Volo.Abp.IdentityModel
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.Json.Abstractions/Volo.Abp.Json.Abstractions.csproj b/framework/src/Volo.Abp.Json.Abstractions/Volo.Abp.Json.Abstractions.csproj
index 15130c129c..d3f63e6e20 100644
--- a/framework/src/Volo.Abp.Json.Abstractions/Volo.Abp.Json.Abstractions.csproj
+++ b/framework/src/Volo.Abp.Json.Abstractions/Volo.Abp.Json.Abstractions.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.Json.Abstractions
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
false
diff --git a/framework/src/Volo.Abp.Json.Newtonsoft/Volo.Abp.Json.Newtonsoft.csproj b/framework/src/Volo.Abp.Json.Newtonsoft/Volo.Abp.Json.Newtonsoft.csproj
index 6927cff0db..5349254ea3 100644
--- a/framework/src/Volo.Abp.Json.Newtonsoft/Volo.Abp.Json.Newtonsoft.csproj
+++ b/framework/src/Volo.Abp.Json.Newtonsoft/Volo.Abp.Json.Newtonsoft.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.Json.Newtonsoft
Volo.Abp.Json.Newtonsoft
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.Json.SystemTextJson/Volo.Abp.Json.SystemTextJson.csproj b/framework/src/Volo.Abp.Json.SystemTextJson/Volo.Abp.Json.SystemTextJson.csproj
index b3aba746a3..e7551a0e42 100644
--- a/framework/src/Volo.Abp.Json.SystemTextJson/Volo.Abp.Json.SystemTextJson.csproj
+++ b/framework/src/Volo.Abp.Json.SystemTextJson/Volo.Abp.Json.SystemTextJson.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.Json.SystemTextJson
Volo.Abp.Json.SystemTextJson
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.Json/Volo.Abp.Json.csproj b/framework/src/Volo.Abp.Json/Volo.Abp.Json.csproj
index eee618b18d..40049addba 100644
--- a/framework/src/Volo.Abp.Json/Volo.Abp.Json.csproj
+++ b/framework/src/Volo.Abp.Json/Volo.Abp.Json.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.Json
Volo.Abp.Json
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.Kafka/Volo.Abp.Kafka.csproj b/framework/src/Volo.Abp.Kafka/Volo.Abp.Kafka.csproj
index 762ef89854..f66761fc2a 100644
--- a/framework/src/Volo.Abp.Kafka/Volo.Abp.Kafka.csproj
+++ b/framework/src/Volo.Abp.Kafka/Volo.Abp.Kafka.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
diff --git a/framework/src/Volo.Abp.Ldap.Abstractions/Volo.Abp.Ldap.Abstractions.csproj b/framework/src/Volo.Abp.Ldap.Abstractions/Volo.Abp.Ldap.Abstractions.csproj
index 69c8d8930a..9a61150096 100644
--- a/framework/src/Volo.Abp.Ldap.Abstractions/Volo.Abp.Ldap.Abstractions.csproj
+++ b/framework/src/Volo.Abp.Ldap.Abstractions/Volo.Abp.Ldap.Abstractions.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.Ldap.Abstractions
Volo.Abp.Ldap.Abstractions
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.Ldap/Volo.Abp.Ldap.csproj b/framework/src/Volo.Abp.Ldap/Volo.Abp.Ldap.csproj
index 886787cdf9..951cbf3be2 100644
--- a/framework/src/Volo.Abp.Ldap/Volo.Abp.Ldap.csproj
+++ b/framework/src/Volo.Abp.Ldap/Volo.Abp.Ldap.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.Ldap
Volo.Abp.Ldap
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.Localization.Abstractions/Volo.Abp.Localization.Abstractions.csproj b/framework/src/Volo.Abp.Localization.Abstractions/Volo.Abp.Localization.Abstractions.csproj
index b883ae7011..952d59b739 100644
--- a/framework/src/Volo.Abp.Localization.Abstractions/Volo.Abp.Localization.Abstractions.csproj
+++ b/framework/src/Volo.Abp.Localization.Abstractions/Volo.Abp.Localization.Abstractions.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.Localization.Abstractions
Volo.Abp.Localization.Abstractions
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.Localization/Volo.Abp.Localization.csproj b/framework/src/Volo.Abp.Localization/Volo.Abp.Localization.csproj
index 53e71d1c38..8b889e2057 100644
--- a/framework/src/Volo.Abp.Localization/Volo.Abp.Localization.csproj
+++ b/framework/src/Volo.Abp.Localization/Volo.Abp.Localization.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.Localization
Volo.Abp.Localization
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.MailKit/Volo.Abp.MailKit.csproj b/framework/src/Volo.Abp.MailKit/Volo.Abp.MailKit.csproj
index 0665aa9cf2..bec6f35355 100644
--- a/framework/src/Volo.Abp.MailKit/Volo.Abp.MailKit.csproj
+++ b/framework/src/Volo.Abp.MailKit/Volo.Abp.MailKit.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.MailKit
Volo.Abp.MailKit
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.MemoryDb/Volo.Abp.MemoryDb.csproj b/framework/src/Volo.Abp.MemoryDb/Volo.Abp.MemoryDb.csproj
index 1a896b8891..07ddca1d7a 100644
--- a/framework/src/Volo.Abp.MemoryDb/Volo.Abp.MemoryDb.csproj
+++ b/framework/src/Volo.Abp.MemoryDb/Volo.Abp.MemoryDb.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.MemoryDb
Volo.Abp.MemoryDb
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.Minify/Volo.Abp.Minify.csproj b/framework/src/Volo.Abp.Minify/Volo.Abp.Minify.csproj
index e260f450d6..f552541094 100644
--- a/framework/src/Volo.Abp.Minify/Volo.Abp.Minify.csproj
+++ b/framework/src/Volo.Abp.Minify/Volo.Abp.Minify.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.Minify
Volo.Abp.Minify
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.MongoDB/Volo.Abp.MongoDB.csproj b/framework/src/Volo.Abp.MongoDB/Volo.Abp.MongoDB.csproj
index 4a9c323e58..5857929d00 100644
--- a/framework/src/Volo.Abp.MongoDB/Volo.Abp.MongoDB.csproj
+++ b/framework/src/Volo.Abp.MongoDB/Volo.Abp.MongoDB.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.MongoDB
Volo.Abp.MongoDB
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
@@ -15,7 +15,7 @@
-
+
diff --git a/framework/src/Volo.Abp.MongoDB/Volo/Abp/MongoDB/AbpMongoDbDateTimeSerializer.cs b/framework/src/Volo.Abp.MongoDB/Volo/Abp/MongoDB/AbpMongoDbDateTimeSerializer.cs
index f8619602cb..c1d8b8f514 100644
--- a/framework/src/Volo.Abp.MongoDB/Volo/Abp/MongoDB/AbpMongoDbDateTimeSerializer.cs
+++ b/framework/src/Volo.Abp.MongoDB/Volo/Abp/MongoDB/AbpMongoDbDateTimeSerializer.cs
@@ -34,7 +34,7 @@ public class AbpMongoDbDateTimeSerializer : DateTimeSerializer
return (dateTime - BsonConstants.UnixEpoch).Ticks / 10000L;
}
- // For unit testing.
+ // For unit testing
internal void SetDateTimeKind(DateTimeKind dateTimeKind)
{
DateTimeKind = dateTimeKind;
diff --git a/framework/src/Volo.Abp.MultiLingualObjects/Volo.Abp.MultiLingualObjects.csproj b/framework/src/Volo.Abp.MultiLingualObjects/Volo.Abp.MultiLingualObjects.csproj
index 77da44eb47..54c8469153 100644
--- a/framework/src/Volo.Abp.MultiLingualObjects/Volo.Abp.MultiLingualObjects.csproj
+++ b/framework/src/Volo.Abp.MultiLingualObjects/Volo.Abp.MultiLingualObjects.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.MultiLingualObject
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
false
diff --git a/framework/src/Volo.Abp.MultiTenancy/Volo.Abp.MultiTenancy.csproj b/framework/src/Volo.Abp.MultiTenancy/Volo.Abp.MultiTenancy.csproj
index 344dbfdec0..b8948be49f 100644
--- a/framework/src/Volo.Abp.MultiTenancy/Volo.Abp.MultiTenancy.csproj
+++ b/framework/src/Volo.Abp.MultiTenancy/Volo.Abp.MultiTenancy.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.MultiTenancy
Volo.Abp.MultiTenancy
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.ObjectExtending/Volo.Abp.ObjectExtending.csproj b/framework/src/Volo.Abp.ObjectExtending/Volo.Abp.ObjectExtending.csproj
index 19f549b36a..de9711ff6a 100644
--- a/framework/src/Volo.Abp.ObjectExtending/Volo.Abp.ObjectExtending.csproj
+++ b/framework/src/Volo.Abp.ObjectExtending/Volo.Abp.ObjectExtending.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.ObjectExtending
Volo.Abp.ObjectExtending
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.ObjectMapping/Volo.Abp.ObjectMapping.csproj b/framework/src/Volo.Abp.ObjectMapping/Volo.Abp.ObjectMapping.csproj
index 163fd6d534..14d738ab6c 100644
--- a/framework/src/Volo.Abp.ObjectMapping/Volo.Abp.ObjectMapping.csproj
+++ b/framework/src/Volo.Abp.ObjectMapping/Volo.Abp.ObjectMapping.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.ObjectMapping
Volo.Abp.ObjectMapping
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.Quartz/Volo.Abp.Quartz.csproj b/framework/src/Volo.Abp.Quartz/Volo.Abp.Quartz.csproj
index efa11dc9aa..71c3dd4caf 100644
--- a/framework/src/Volo.Abp.Quartz/Volo.Abp.Quartz.csproj
+++ b/framework/src/Volo.Abp.Quartz/Volo.Abp.Quartz.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.Quartz
Volo.Abp.Quartz
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.RabbitMQ/Volo.Abp.RabbitMQ.csproj b/framework/src/Volo.Abp.RabbitMQ/Volo.Abp.RabbitMQ.csproj
index 98cc95fecb..eed4f273fd 100644
--- a/framework/src/Volo.Abp.RabbitMQ/Volo.Abp.RabbitMQ.csproj
+++ b/framework/src/Volo.Abp.RabbitMQ/Volo.Abp.RabbitMQ.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.RabbitMQ
Volo.Abp.RabbitMQ
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.RemoteServices/Volo.Abp.RemoteServices.csproj b/framework/src/Volo.Abp.RemoteServices/Volo.Abp.RemoteServices.csproj
index 74ad1df500..52d536b51a 100644
--- a/framework/src/Volo.Abp.RemoteServices/Volo.Abp.RemoteServices.csproj
+++ b/framework/src/Volo.Abp.RemoteServices/Volo.Abp.RemoteServices.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.RemoteServices
Volo.Abp.RemoteServices
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.Security/Volo.Abp.Security.csproj b/framework/src/Volo.Abp.Security/Volo.Abp.Security.csproj
index 65aca85c88..ab99014a5d 100644
--- a/framework/src/Volo.Abp.Security/Volo.Abp.Security.csproj
+++ b/framework/src/Volo.Abp.Security/Volo.Abp.Security.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.Security
Volo.Abp.Security
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.Serialization/Volo.Abp.Serialization.csproj b/framework/src/Volo.Abp.Serialization/Volo.Abp.Serialization.csproj
index b23178d760..f410670e83 100644
--- a/framework/src/Volo.Abp.Serialization/Volo.Abp.Serialization.csproj
+++ b/framework/src/Volo.Abp.Serialization/Volo.Abp.Serialization.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.Serialization
Volo.Abp.Serialization
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.Settings/Volo.Abp.Settings.csproj b/framework/src/Volo.Abp.Settings/Volo.Abp.Settings.csproj
index 65f985a87b..fdedd2fc69 100644
--- a/framework/src/Volo.Abp.Settings/Volo.Abp.Settings.csproj
+++ b/framework/src/Volo.Abp.Settings/Volo.Abp.Settings.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.Settings
Volo.Abp.Settings
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.Sms.Aliyun/Volo.Abp.Sms.Aliyun.csproj b/framework/src/Volo.Abp.Sms.Aliyun/Volo.Abp.Sms.Aliyun.csproj
index 763e5d1804..8b007b7a4a 100644
--- a/framework/src/Volo.Abp.Sms.Aliyun/Volo.Abp.Sms.Aliyun.csproj
+++ b/framework/src/Volo.Abp.Sms.Aliyun/Volo.Abp.Sms.Aliyun.csproj
@@ -3,7 +3,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.Sms.Aliyun
Volo.Abp.Sms.Aliyun
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.Sms/Volo.Abp.Sms.csproj b/framework/src/Volo.Abp.Sms/Volo.Abp.Sms.csproj
index 35adb7e62c..becbe00e65 100644
--- a/framework/src/Volo.Abp.Sms/Volo.Abp.Sms.csproj
+++ b/framework/src/Volo.Abp.Sms/Volo.Abp.Sms.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.Sms
Volo.Abp.Sms
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.Specifications/Volo.Abp.Specifications.csproj b/framework/src/Volo.Abp.Specifications/Volo.Abp.Specifications.csproj
index 6e17993ba1..f6a5b54948 100644
--- a/framework/src/Volo.Abp.Specifications/Volo.Abp.Specifications.csproj
+++ b/framework/src/Volo.Abp.Specifications/Volo.Abp.Specifications.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.Specifications
Volo.Abp.Specifications
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.TestBase/Volo.Abp.TestBase.csproj b/framework/src/Volo.Abp.TestBase/Volo.Abp.TestBase.csproj
index 004a0fa4d6..4b90693b3e 100644
--- a/framework/src/Volo.Abp.TestBase/Volo.Abp.TestBase.csproj
+++ b/framework/src/Volo.Abp.TestBase/Volo.Abp.TestBase.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.TestBase
Volo.Abp.TestBase
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.TextTemplating.Core/Volo.Abp.TextTemplating.Core.csproj b/framework/src/Volo.Abp.TextTemplating.Core/Volo.Abp.TextTemplating.Core.csproj
index 649bdc2912..8581d01dc4 100644
--- a/framework/src/Volo.Abp.TextTemplating.Core/Volo.Abp.TextTemplating.Core.csproj
+++ b/framework/src/Volo.Abp.TextTemplating.Core/Volo.Abp.TextTemplating.Core.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
diff --git a/framework/src/Volo.Abp.TextTemplating.Razor/Volo.Abp.TextTemplating.Razor.csproj b/framework/src/Volo.Abp.TextTemplating.Razor/Volo.Abp.TextTemplating.Razor.csproj
index 670502cdb7..962746bd0a 100644
--- a/framework/src/Volo.Abp.TextTemplating.Razor/Volo.Abp.TextTemplating.Razor.csproj
+++ b/framework/src/Volo.Abp.TextTemplating.Razor/Volo.Abp.TextTemplating.Razor.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
diff --git a/framework/src/Volo.Abp.TextTemplating.Scriban/Volo.Abp.TextTemplating.Scriban.csproj b/framework/src/Volo.Abp.TextTemplating.Scriban/Volo.Abp.TextTemplating.Scriban.csproj
index a6f7c5eb35..d18d90c8f9 100644
--- a/framework/src/Volo.Abp.TextTemplating.Scriban/Volo.Abp.TextTemplating.Scriban.csproj
+++ b/framework/src/Volo.Abp.TextTemplating.Scriban/Volo.Abp.TextTemplating.Scriban.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
diff --git a/framework/src/Volo.Abp.TextTemplating/Volo.Abp.TextTemplating.csproj b/framework/src/Volo.Abp.TextTemplating/Volo.Abp.TextTemplating.csproj
index 3af0ba984d..27907183c0 100644
--- a/framework/src/Volo.Abp.TextTemplating/Volo.Abp.TextTemplating.csproj
+++ b/framework/src/Volo.Abp.TextTemplating/Volo.Abp.TextTemplating.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
diff --git a/framework/src/Volo.Abp.Threading/Volo.Abp.Threading.csproj b/framework/src/Volo.Abp.Threading/Volo.Abp.Threading.csproj
index 0f5fbf3e9a..70f9ecb0f8 100644
--- a/framework/src/Volo.Abp.Threading/Volo.Abp.Threading.csproj
+++ b/framework/src/Volo.Abp.Threading/Volo.Abp.Threading.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.Threading
Volo.Abp.Threading
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.Timing/Volo.Abp.Timing.csproj b/framework/src/Volo.Abp.Timing/Volo.Abp.Timing.csproj
index 25c6bddc59..4ba0547035 100644
--- a/framework/src/Volo.Abp.Timing/Volo.Abp.Timing.csproj
+++ b/framework/src/Volo.Abp.Timing/Volo.Abp.Timing.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.Timing
Volo.Abp.Timing
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.UI.Navigation/Volo.Abp.UI.Navigation.csproj b/framework/src/Volo.Abp.UI.Navigation/Volo.Abp.UI.Navigation.csproj
index 77d95d186d..657911f50d 100644
--- a/framework/src/Volo.Abp.UI.Navigation/Volo.Abp.UI.Navigation.csproj
+++ b/framework/src/Volo.Abp.UI.Navigation/Volo.Abp.UI.Navigation.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.UI.Navigation
Volo.Abp.UI.Navigation
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.UI/Volo.Abp.UI.csproj b/framework/src/Volo.Abp.UI/Volo.Abp.UI.csproj
index 7cf2afccb1..0cf11fba78 100644
--- a/framework/src/Volo.Abp.UI/Volo.Abp.UI.csproj
+++ b/framework/src/Volo.Abp.UI/Volo.Abp.UI.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.UI
Volo.Abp.UI
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.Uow/Volo.Abp.Uow.csproj b/framework/src/Volo.Abp.Uow/Volo.Abp.Uow.csproj
index 1c5552d1da..f33af433e7 100644
--- a/framework/src/Volo.Abp.Uow/Volo.Abp.Uow.csproj
+++ b/framework/src/Volo.Abp.Uow/Volo.Abp.Uow.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.Uow
Volo.Abp.Uow
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.Validation.Abstractions/Volo.Abp.Validation.Abstractions.csproj b/framework/src/Volo.Abp.Validation.Abstractions/Volo.Abp.Validation.Abstractions.csproj
index 32ada2ce09..ff9731ff00 100644
--- a/framework/src/Volo.Abp.Validation.Abstractions/Volo.Abp.Validation.Abstractions.csproj
+++ b/framework/src/Volo.Abp.Validation.Abstractions/Volo.Abp.Validation.Abstractions.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.Validation.Abstractions
Volo.Abp.Validation.Abstractions
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.Validation/Volo.Abp.Validation.csproj b/framework/src/Volo.Abp.Validation/Volo.Abp.Validation.csproj
index 10daff842e..b8f10667a2 100644
--- a/framework/src/Volo.Abp.Validation/Volo.Abp.Validation.csproj
+++ b/framework/src/Volo.Abp.Validation/Volo.Abp.Validation.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.Validation
Volo.Abp.Validation
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp.VirtualFileSystem/Volo.Abp.VirtualFileSystem.csproj b/framework/src/Volo.Abp.VirtualFileSystem/Volo.Abp.VirtualFileSystem.csproj
index 64425620dc..7e4ade4eca 100644
--- a/framework/src/Volo.Abp.VirtualFileSystem/Volo.Abp.VirtualFileSystem.csproj
+++ b/framework/src/Volo.Abp.VirtualFileSystem/Volo.Abp.VirtualFileSystem.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.VirtualFileSystem
Volo.Abp.VirtualFileSystem
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/src/Volo.Abp/Volo.Abp.csproj b/framework/src/Volo.Abp/Volo.Abp.csproj
index 37f9ded71c..53fede568c 100644
--- a/framework/src/Volo.Abp/Volo.Abp.csproj
+++ b/framework/src/Volo.Abp/Volo.Abp.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp
Volo.Abp
$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;
diff --git a/framework/test/Volo.Abp.EntityFrameworkCore.Tests/Volo/Abp/EntityFrameworkCore/Auditing/Auditing_Tests.cs b/framework/test/Volo.Abp.EntityFrameworkCore.Tests/Volo/Abp/EntityFrameworkCore/Auditing/Auditing_Tests.cs
index 3f6e11c02d..8ad0029cc0 100644
--- a/framework/test/Volo.Abp.EntityFrameworkCore.Tests/Volo/Abp/EntityFrameworkCore/Auditing/Auditing_Tests.cs
+++ b/framework/test/Volo.Abp.EntityFrameworkCore.Tests/Volo/Abp/EntityFrameworkCore/Auditing/Auditing_Tests.cs
@@ -29,6 +29,28 @@ public class Auditing_Tests : Auditing_Tests
}));
}
+ [Fact]
+ public async Task Should_Set_Modification_If_Properties_Changed_With_Default_Value()
+ {
+ var date = DateTime.Parse("2022-01-01");
+ await WithUnitOfWorkAsync((async () =>
+ {
+ var douglas = await PersonRepository.GetAsync(TestDataBuilder.UserDouglasId);
+ douglas.HasDefaultValue = date;
+ }));
+
+ await WithUnitOfWorkAsync((async () =>
+ {
+ var douglas = await PersonRepository.FindAsync(TestDataBuilder.UserDouglasId);
+
+ douglas.ShouldNotBeNull();
+ douglas.HasDefaultValue.ShouldBe(date);
+ douglas.LastModificationTime.ShouldNotBeNull();
+ douglas.LastModificationTime.Value.ShouldBeLessThanOrEqualTo(Clock.Now);
+ douglas.LastModifierId.ShouldBe(CurrentUserId);
+ }));
+ }
+
[Fact]
public async Task Should_Set_Modification_If_Properties_Not_Generated_By_Database()
{
diff --git a/framework/test/Volo.Abp.EntityFrameworkCore.Tests/Volo/Abp/EntityFrameworkCore/TestMigrationsDbContext.cs b/framework/test/Volo.Abp.EntityFrameworkCore.Tests/Volo/Abp/EntityFrameworkCore/TestMigrationsDbContext.cs
index 529912aa68..99e689bdd4 100644
--- a/framework/test/Volo.Abp.EntityFrameworkCore.Tests/Volo/Abp/EntityFrameworkCore/TestMigrationsDbContext.cs
+++ b/framework/test/Volo.Abp.EntityFrameworkCore.Tests/Volo/Abp/EntityFrameworkCore/TestMigrationsDbContext.cs
@@ -20,7 +20,7 @@ public class TestMigrationsDbContext : AbpDbContext
public DbSet EntityWithIntPks { get; set; }
public DbSet Author { get; set; }
-
+
public DbSet Products { get; set; }
public TestMigrationsDbContext(DbContextOptions options)
@@ -44,6 +44,7 @@ public class TestMigrationsDbContext : AbpDbContext
modelBuilder.Entity(b =>
{
b.Property(x => x.LastActiveTime).ValueGeneratedOnAddOrUpdate().HasDefaultValue(DateTime.Now);
+ b.Property(x => x.HasDefaultValue).HasDefaultValue(DateTime.Now);
});
modelBuilder.Entity(b =>
diff --git a/framework/test/Volo.Abp.EntityFrameworkCore.Tests/Volo/Abp/TestApp/EntityFrameworkCore/TestAppDbContext.cs b/framework/test/Volo.Abp.EntityFrameworkCore.Tests/Volo/Abp/TestApp/EntityFrameworkCore/TestAppDbContext.cs
index 921b97f6a4..66772343af 100644
--- a/framework/test/Volo.Abp.EntityFrameworkCore.Tests/Volo/Abp/TestApp/EntityFrameworkCore/TestAppDbContext.cs
+++ b/framework/test/Volo.Abp.EntityFrameworkCore.Tests/Volo/Abp/TestApp/EntityFrameworkCore/TestAppDbContext.cs
@@ -29,7 +29,7 @@ public class TestAppDbContext : AbpDbContext, IThirdDbContext,
public DbSet Author { get; set; }
public DbSet FourthDummyEntities { get; set; }
-
+
public DbSet Products { get; set; }
public TestAppDbContext(DbContextOptions options)
@@ -60,6 +60,7 @@ public class TestAppDbContext : AbpDbContext, IThirdDbContext,
modelBuilder.Entity(b =>
{
b.Property(x => x.LastActiveTime).ValueGeneratedOnAddOrUpdate().HasDefaultValue(DateTime.Now);
+ b.Property(x => x.HasDefaultValue).HasDefaultValue(DateTime.Now);
});
modelBuilder
diff --git a/framework/test/Volo.Abp.EventBus.Tests/Volo/Abp/EventBus/Distributed/DistributedEventHandles.cs b/framework/test/Volo.Abp.EventBus.Tests/Volo/Abp/EventBus/Distributed/DistributedEventHandles.cs
new file mode 100644
index 0000000000..eb1f1a52df
--- /dev/null
+++ b/framework/test/Volo.Abp.EventBus.Tests/Volo/Abp/EventBus/Distributed/DistributedEventHandles.cs
@@ -0,0 +1,22 @@
+using System.Threading.Tasks;
+
+namespace Volo.Abp.EventBus.Distributed;
+
+public class DistributedEventHandles : ILocalEventHandler, ILocalEventHandler
+{
+ public static int SentCount { get; set; }
+
+ public static int ReceivedCount { get; set; }
+
+ public Task HandleEventAsync(DistributedEventSent eventData)
+ {
+ SentCount++;
+ return Task.CompletedTask;
+ }
+
+ public Task HandleEventAsync(DistributedEventReceived eventData)
+ {
+ ReceivedCount++;
+ return Task.CompletedTask;
+ }
+}
diff --git a/framework/test/Volo.Abp.EventBus.Tests/Volo/Abp/EventBus/Distributed/LocalDistributedEventBus_Test.cs b/framework/test/Volo.Abp.EventBus.Tests/Volo/Abp/EventBus/Distributed/LocalDistributedEventBus_Test.cs
index c239df38c9..bbb8838cf6 100644
--- a/framework/test/Volo.Abp.EventBus.Tests/Volo/Abp/EventBus/Distributed/LocalDistributedEventBus_Test.cs
+++ b/framework/test/Volo.Abp.EventBus.Tests/Volo/Abp/EventBus/Distributed/LocalDistributedEventBus_Test.cs
@@ -1,7 +1,8 @@
using System;
using System.Threading.Tasks;
using Volo.Abp.Domain.Entities.Events.Distributed;
-using Volo.Abp.MultiTenancy;
+using Volo.Abp.EventBus.Local;
+using Volo.Abp.Uow;
using Xunit;
namespace Volo.Abp.EventBus.Distributed;
@@ -49,7 +50,7 @@ public class LocalDistributedEventBus_Test : LocalDistributedEventBusTestBase
public async Task Should_Get_TenantId_From_EventEto_Extra_Property()
{
var tenantId = Guid.NewGuid();
-
+
DistributedEventBus.Subscribe(GetRequiredService());
await DistributedEventBus.PublishAsync(new MySimpleEto
@@ -59,7 +60,44 @@ public class LocalDistributedEventBus_Test : LocalDistributedEventBusTestBase
{"TenantId", tenantId.ToString()}
}
});
-
+
Assert.Equal(tenantId, MySimpleDistributedSingleInstanceEventHandler.TenantId);
}
+
+ [Fact]
+ public async Task DistributedEventSentAndReceived_Test()
+ {
+ GetRequiredService().Subscribe();
+ GetRequiredService().Subscribe();
+
+ DistributedEventBus.Subscribe();
+
+ using (var uow = GetRequiredService().Begin())
+ {
+ await DistributedEventBus.PublishAsync(new MyEventDate(), onUnitOfWorkComplete: false);
+
+ Assert.Equal(1, DistributedEventHandles.SentCount);
+ Assert.Equal(1, DistributedEventHandles.ReceivedCount);
+
+ await DistributedEventBus.PublishAsync(new MyEventDate(), onUnitOfWorkComplete: true);
+
+ await uow.CompleteAsync();
+
+ Assert.Equal(2, DistributedEventHandles.SentCount);
+ Assert.Equal(2, DistributedEventHandles.ReceivedCount);
+ }
+ }
+
+ class MyEventDate
+ {
+
+ }
+
+ class MyEventHandle : IDistributedEventHandler
+ {
+ public Task HandleEventAsync(MyEventDate eventData)
+ {
+ return Task.CompletedTask;
+ }
+ }
}
diff --git a/framework/test/Volo.Abp.MongoDB.Tests/Volo.Abp.MongoDB.Tests.csproj b/framework/test/Volo.Abp.MongoDB.Tests/Volo.Abp.MongoDB.Tests.csproj
index ef1ff44a00..a504a13e19 100644
--- a/framework/test/Volo.Abp.MongoDB.Tests/Volo.Abp.MongoDB.Tests.csproj
+++ b/framework/test/Volo.Abp.MongoDB.Tests/Volo.Abp.MongoDB.Tests.csproj
@@ -15,7 +15,10 @@
-
+
+
+
+
diff --git a/framework/test/Volo.Abp.MongoDB.Tests/Volo/Abp/MongoDB/AbpMongoDbTestModule.cs b/framework/test/Volo.Abp.MongoDB.Tests/Volo/Abp/MongoDB/AbpMongoDbTestModule.cs
index 3d4c0468ab..ed967fdb92 100644
--- a/framework/test/Volo.Abp.MongoDB.Tests/Volo/Abp/MongoDB/AbpMongoDbTestModule.cs
+++ b/framework/test/Volo.Abp.MongoDB.Tests/Volo/Abp/MongoDB/AbpMongoDbTestModule.cs
@@ -21,14 +21,9 @@ public class AbpMongoDbTestModule : AbpModule
{
public override void ConfigureServices(ServiceConfigurationContext context)
{
- var stringArray = MongoDbFixture.ConnectionString.Split('?');
- var connectionString = stringArray[0].EnsureEndsWith('/') +
- "Db_" +
- Guid.NewGuid().ToString("N") + "/?" + stringArray[1];
-
Configure(options =>
{
- options.ConnectionStrings.Default = connectionString;
+ options.ConnectionStrings.Default = MongoDbFixture.GetRandomConnectionString();
});
context.Services.AddMongoDbContext(options =>
diff --git a/framework/test/Volo.Abp.MongoDB.Tests/Volo/Abp/MongoDB/MongoDbFixture.cs b/framework/test/Volo.Abp.MongoDB.Tests/Volo/Abp/MongoDB/MongoDbFixture.cs
index c92dbbbd50..9b70fe2681 100644
--- a/framework/test/Volo.Abp.MongoDB.Tests/Volo/Abp/MongoDB/MongoDbFixture.cs
+++ b/framework/test/Volo.Abp.MongoDB.Tests/Volo/Abp/MongoDB/MongoDbFixture.cs
@@ -1,17 +1,30 @@
using System;
-using Mongo2Go;
+using EphemeralMongo;
namespace Volo.Abp.MongoDB;
public class MongoDbFixture : IDisposable
{
- private static readonly MongoDbRunner MongoDbRunner;
- public static readonly string ConnectionString;
+ public readonly static IMongoRunner MongoDbRunner;
static MongoDbFixture()
{
- MongoDbRunner = MongoDbRunner.Start(singleNodeReplSet: true, singleNodeReplSetWaitTimeout: 20);
- ConnectionString = MongoDbRunner.ConnectionString;
+ MongoDbRunner = MongoRunner.Run(new MongoRunnerOptions
+ {
+ UseSingleNodeReplicaSet = true
+ });
+ }
+
+ public static string GetRandomConnectionString()
+ {
+ return GetConnectionString("Db_" + Guid.NewGuid().ToString("N"));
+ }
+
+ public static string GetConnectionString(string databaseName)
+ {
+ var stringArray = MongoDbRunner.ConnectionString.Split('?');
+ var connectionString = stringArray[0].EnsureEndsWith('/') + databaseName + "/?" + stringArray[1];
+ return connectionString;
}
public void Dispose()
diff --git a/framework/test/Volo.Abp.MongoDB.Tests/Volo/Abp/MongoDB/Transactions/Transaction_Tests.cs b/framework/test/Volo.Abp.MongoDB.Tests/Volo/Abp/MongoDB/Transactions/Transaction_Tests.cs
index 935846d662..5fae3353d2 100644
--- a/framework/test/Volo.Abp.MongoDB.Tests/Volo/Abp/MongoDB/Transactions/Transaction_Tests.cs
+++ b/framework/test/Volo.Abp.MongoDB.Tests/Volo/Abp/MongoDB/Transactions/Transaction_Tests.cs
@@ -10,6 +10,7 @@ using Xunit;
namespace Volo.Abp.MongoDB.Transactions;
+[Collection(MongoTestCollection.Name)]
public class Transaction_Tests : TestAppTestBase
{
private readonly IBasicRepository _personRepository;
diff --git a/framework/test/Volo.Abp.TestApp/Volo/Abp/TestApp/Domain/Person.cs b/framework/test/Volo.Abp.TestApp/Volo/Abp/TestApp/Domain/Person.cs
index 0726126eba..5d78236fca 100644
--- a/framework/test/Volo.Abp.TestApp/Volo/Abp/TestApp/Domain/Person.cs
+++ b/framework/test/Volo.Abp.TestApp/Volo/Abp/TestApp/Domain/Person.cs
@@ -30,6 +30,8 @@ public class Person : FullAuditedAggregateRoot, IMultiTenant, IHasEntityVe
public virtual DateTime LastActiveTime { get; set; }
+ public virtual DateTime HasDefaultValue { get; set; }
+
public int EntityVersion { get; set; }
private Person()
diff --git a/latest-versions.json b/latest-versions.json
index ff17f97610..e291aaffe5 100644
--- a/latest-versions.json
+++ b/latest-versions.json
@@ -1,6 +1,6 @@
[
{
- "version": "7.1.1",
+ "version": "7.2.1",
"releaseDate": "",
"type": "stable",
"message": ""
diff --git a/modules/account/src/Volo.Abp.Account.Application.Contracts/Volo.Abp.Account.Application.Contracts.csproj b/modules/account/src/Volo.Abp.Account.Application.Contracts/Volo.Abp.Account.Application.Contracts.csproj
index d6b87b957d..296077aa8c 100644
--- a/modules/account/src/Volo.Abp.Account.Application.Contracts/Volo.Abp.Account.Application.Contracts.csproj
+++ b/modules/account/src/Volo.Abp.Account.Application.Contracts/Volo.Abp.Account.Application.Contracts.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.Account.Application.Contracts
Volo.Abp.Account.Application.Contracts
true
diff --git a/modules/account/src/Volo.Abp.Account.HttpApi.Client/Volo.Abp.Account.HttpApi.Client.csproj b/modules/account/src/Volo.Abp.Account.HttpApi.Client/Volo.Abp.Account.HttpApi.Client.csproj
index aef884dbe2..ebbf58da1f 100644
--- a/modules/account/src/Volo.Abp.Account.HttpApi.Client/Volo.Abp.Account.HttpApi.Client.csproj
+++ b/modules/account/src/Volo.Abp.Account.HttpApi.Client/Volo.Abp.Account.HttpApi.Client.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Abp.Account.HttpApi.Client
Volo.Abp.Account.HttpApi.Client
diff --git a/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo.Abp.AuditLogging.Domain.Shared.csproj b/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo.Abp.AuditLogging.Domain.Shared.csproj
index e59e988f46..18d18ad117 100644
--- a/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo.Abp.AuditLogging.Domain.Shared.csproj
+++ b/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo.Abp.AuditLogging.Domain.Shared.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
true
diff --git a/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain/Volo.Abp.AuditLogging.Domain.csproj b/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain/Volo.Abp.AuditLogging.Domain.csproj
index df43919393..f0bd42709d 100644
--- a/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain/Volo.Abp.AuditLogging.Domain.csproj
+++ b/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain/Volo.Abp.AuditLogging.Domain.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
diff --git a/modules/audit-logging/src/Volo.Abp.AuditLogging.MongoDB/Volo.Abp.AuditLogging.MongoDB.csproj b/modules/audit-logging/src/Volo.Abp.AuditLogging.MongoDB/Volo.Abp.AuditLogging.MongoDB.csproj
index c22202f7f9..43bdcb53c0 100644
--- a/modules/audit-logging/src/Volo.Abp.AuditLogging.MongoDB/Volo.Abp.AuditLogging.MongoDB.csproj
+++ b/modules/audit-logging/src/Volo.Abp.AuditLogging.MongoDB/Volo.Abp.AuditLogging.MongoDB.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
diff --git a/modules/audit-logging/src/Volo.Abp.AuditLogging.MongoDB/Volo/Abp/AuditLogging/MongoDB/MongoAuditLogRepository.cs b/modules/audit-logging/src/Volo.Abp.AuditLogging.MongoDB/Volo/Abp/AuditLogging/MongoDB/MongoAuditLogRepository.cs
index 5bb84197fa..1dc8b50778 100644
--- a/modules/audit-logging/src/Volo.Abp.AuditLogging.MongoDB/Volo/Abp/AuditLogging/MongoDB/MongoAuditLogRepository.cs
+++ b/modules/audit-logging/src/Volo.Abp.AuditLogging.MongoDB/Volo/Abp/AuditLogging/MongoDB/MongoAuditLogRepository.cs
@@ -262,7 +262,7 @@ public class MongoAuditLogRepository : MongoDbRepository e.Id == auditLogId)
.WhereIf(startTime.HasValue, e => e.ChangeTime >= startTime)
.WhereIf(endTime.HasValue, e => e.ChangeTime <= endTime)
- .WhereIf(changeType.HasValue, e => e.ChangeType == changeType)
+ .WhereIf(changeType.HasValue, e => e.ChangeType == changeType.Value)
.WhereIf(!string.IsNullOrWhiteSpace(entityId), e => e.EntityId == entityId)
.WhereIf(!string.IsNullOrWhiteSpace(entityTypeFullName),
e => e.EntityTypeFullName.Contains(entityTypeFullName));
diff --git a/modules/audit-logging/test/Volo.Abp.AuditLogging.MongoDB.Tests/Volo.Abp.AuditLogging.MongoDB.Tests.csproj b/modules/audit-logging/test/Volo.Abp.AuditLogging.MongoDB.Tests/Volo.Abp.AuditLogging.MongoDB.Tests.csproj
index 6599d1e446..5739f6fb34 100644
--- a/modules/audit-logging/test/Volo.Abp.AuditLogging.MongoDB.Tests/Volo.Abp.AuditLogging.MongoDB.Tests.csproj
+++ b/modules/audit-logging/test/Volo.Abp.AuditLogging.MongoDB.Tests/Volo.Abp.AuditLogging.MongoDB.Tests.csproj
@@ -14,7 +14,10 @@
-
+
+
+
+
diff --git a/modules/audit-logging/test/Volo.Abp.AuditLogging.MongoDB.Tests/Volo/Abp/AuditLogging/MongoDB/AbpAuditLoggingMongoDbTestModule.cs b/modules/audit-logging/test/Volo.Abp.AuditLogging.MongoDB.Tests/Volo/Abp/AuditLogging/MongoDB/AbpAuditLoggingMongoDbTestModule.cs
index 592d11a480..ca021f1f1d 100644
--- a/modules/audit-logging/test/Volo.Abp.AuditLogging.MongoDB.Tests/Volo/Abp/AuditLogging/MongoDB/AbpAuditLoggingMongoDbTestModule.cs
+++ b/modules/audit-logging/test/Volo.Abp.AuditLogging.MongoDB.Tests/Volo/Abp/AuditLogging/MongoDB/AbpAuditLoggingMongoDbTestModule.cs
@@ -13,14 +13,9 @@ public class AbpAuditLoggingMongoDbTestModule : AbpModule
{
public override void ConfigureServices(ServiceConfigurationContext context)
{
- var stringArray = MongoDbFixture.ConnectionString.Split('?');
- var connectionString = stringArray[0].EnsureEndsWith('/') +
- "Db_" +
- Guid.NewGuid().ToString("N") + "/?" + stringArray[1];
-
Configure(options =>
{
- options.ConnectionStrings.Default = connectionString;
+ options.ConnectionStrings.Default = MongoDbFixture.GetRandomConnectionString();
});
}
}
diff --git a/modules/audit-logging/test/Volo.Abp.AuditLogging.MongoDB.Tests/Volo/Abp/AuditLogging/MongoDB/MongoDbFixture.cs b/modules/audit-logging/test/Volo.Abp.AuditLogging.MongoDB.Tests/Volo/Abp/AuditLogging/MongoDB/MongoDbFixture.cs
index ea7be8dd53..a68f246c78 100644
--- a/modules/audit-logging/test/Volo.Abp.AuditLogging.MongoDB.Tests/Volo/Abp/AuditLogging/MongoDB/MongoDbFixture.cs
+++ b/modules/audit-logging/test/Volo.Abp.AuditLogging.MongoDB.Tests/Volo/Abp/AuditLogging/MongoDB/MongoDbFixture.cs
@@ -1,17 +1,30 @@
using System;
-using Mongo2Go;
+using EphemeralMongo;
namespace Volo.Abp.AuditLogging.MongoDB;
public class MongoDbFixture : IDisposable
{
- private static readonly MongoDbRunner MongoDbRunner;
- public static readonly string ConnectionString;
+ public readonly static IMongoRunner MongoDbRunner;
static MongoDbFixture()
{
- MongoDbRunner = MongoDbRunner.Start(singleNodeReplSet: true, singleNodeReplSetWaitTimeout: 20);
- ConnectionString = MongoDbRunner.ConnectionString;
+ MongoDbRunner = MongoRunner.Run(new MongoRunnerOptions
+ {
+ UseSingleNodeReplicaSet = true
+ });
+ }
+
+ public static string GetRandomConnectionString()
+ {
+ return GetConnectionString("Db_" + Guid.NewGuid().ToString("N"));
+ }
+
+ public static string GetConnectionString(string databaseName)
+ {
+ var stringArray = MongoDbRunner.ConnectionString.Split('?');
+ var connectionString = stringArray[0].EnsureEndsWith('/') + databaseName + "/?" + stringArray[1];
+ return connectionString;
}
public void Dispose()
diff --git a/modules/background-jobs/app/Volo.Abp.BackgroundJobs.DemoApp.Shared/Volo.Abp.BackgroundJobs.DemoApp.Shared.csproj b/modules/background-jobs/app/Volo.Abp.BackgroundJobs.DemoApp.Shared/Volo.Abp.BackgroundJobs.DemoApp.Shared.csproj
index a32ea90b09..e6a08dbd02 100644
--- a/modules/background-jobs/app/Volo.Abp.BackgroundJobs.DemoApp.Shared/Volo.Abp.BackgroundJobs.DemoApp.Shared.csproj
+++ b/modules/background-jobs/app/Volo.Abp.BackgroundJobs.DemoApp.Shared/Volo.Abp.BackgroundJobs.DemoApp.Shared.csproj
@@ -3,7 +3,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
diff --git a/modules/background-jobs/src/Volo.Abp.BackgroundJobs.Domain.Shared/Volo.Abp.BackgroundJobs.Domain.Shared.csproj b/modules/background-jobs/src/Volo.Abp.BackgroundJobs.Domain.Shared/Volo.Abp.BackgroundJobs.Domain.Shared.csproj
index 4c79e9bcfd..ab2ccc71a4 100644
--- a/modules/background-jobs/src/Volo.Abp.BackgroundJobs.Domain.Shared/Volo.Abp.BackgroundJobs.Domain.Shared.csproj
+++ b/modules/background-jobs/src/Volo.Abp.BackgroundJobs.Domain.Shared/Volo.Abp.BackgroundJobs.Domain.Shared.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
diff --git a/modules/background-jobs/test/Volo.Abp.BackgroundJobs.MongoDB.Tests/Volo.Abp.BackgroundJobs.MongoDB.Tests.csproj b/modules/background-jobs/test/Volo.Abp.BackgroundJobs.MongoDB.Tests/Volo.Abp.BackgroundJobs.MongoDB.Tests.csproj
index 7e763bdcc0..c985df35ca 100644
--- a/modules/background-jobs/test/Volo.Abp.BackgroundJobs.MongoDB.Tests/Volo.Abp.BackgroundJobs.MongoDB.Tests.csproj
+++ b/modules/background-jobs/test/Volo.Abp.BackgroundJobs.MongoDB.Tests/Volo.Abp.BackgroundJobs.MongoDB.Tests.csproj
@@ -14,7 +14,10 @@
-
+
+
+
+
diff --git a/modules/background-jobs/test/Volo.Abp.BackgroundJobs.MongoDB.Tests/Volo/Abp/BackgroundJobs/MongoDB/AbpBackgroundJobsMongoDbTestModule.cs b/modules/background-jobs/test/Volo.Abp.BackgroundJobs.MongoDB.Tests/Volo/Abp/BackgroundJobs/MongoDB/AbpBackgroundJobsMongoDbTestModule.cs
index 77a6dc6321..84f9f0731e 100644
--- a/modules/background-jobs/test/Volo.Abp.BackgroundJobs.MongoDB.Tests/Volo/Abp/BackgroundJobs/MongoDB/AbpBackgroundJobsMongoDbTestModule.cs
+++ b/modules/background-jobs/test/Volo.Abp.BackgroundJobs.MongoDB.Tests/Volo/Abp/BackgroundJobs/MongoDB/AbpBackgroundJobsMongoDbTestModule.cs
@@ -13,14 +13,9 @@ public class AbpBackgroundJobsMongoDbTestModule : AbpModule
{
public override void ConfigureServices(ServiceConfigurationContext context)
{
- var stringArray = MongoDbFixture.ConnectionString.Split('?');
- var connectionString = stringArray[0].EnsureEndsWith('/') +
- "Db_" +
- Guid.NewGuid().ToString("N") + "/?" + stringArray[1];
-
Configure(options =>
{
- options.ConnectionStrings.Default = connectionString;
+ options.ConnectionStrings.Default = MongoDbFixture.GetRandomConnectionString();
});
}
}
diff --git a/modules/background-jobs/test/Volo.Abp.BackgroundJobs.MongoDB.Tests/Volo/Abp/BackgroundJobs/MongoDB/MongoDbFixture.cs b/modules/background-jobs/test/Volo.Abp.BackgroundJobs.MongoDB.Tests/Volo/Abp/BackgroundJobs/MongoDB/MongoDbFixture.cs
index 45a4e14bc7..97bd35c6fa 100644
--- a/modules/background-jobs/test/Volo.Abp.BackgroundJobs.MongoDB.Tests/Volo/Abp/BackgroundJobs/MongoDB/MongoDbFixture.cs
+++ b/modules/background-jobs/test/Volo.Abp.BackgroundJobs.MongoDB.Tests/Volo/Abp/BackgroundJobs/MongoDB/MongoDbFixture.cs
@@ -1,17 +1,30 @@
using System;
-using Mongo2Go;
+using EphemeralMongo;
namespace Volo.Abp.BackgroundJobs.MongoDB;
public class MongoDbFixture : IDisposable
{
- private static readonly MongoDbRunner MongoDbRunner;
- public static readonly string ConnectionString;
+ public readonly static IMongoRunner MongoDbRunner;
static MongoDbFixture()
{
- MongoDbRunner = MongoDbRunner.Start(singleNodeReplSet: true, singleNodeReplSetWaitTimeout: 20);
- ConnectionString = MongoDbRunner.ConnectionString;
+ MongoDbRunner = MongoRunner.Run(new MongoRunnerOptions
+ {
+ UseSingleNodeReplicaSet = true
+ });
+ }
+
+ public static string GetRandomConnectionString()
+ {
+ return GetConnectionString("Db_" + Guid.NewGuid().ToString("N"));
+ }
+
+ public static string GetConnectionString(string databaseName)
+ {
+ var stringArray = MongoDbRunner.ConnectionString.Split('?');
+ var connectionString = stringArray[0].EnsureEndsWith('/') + databaseName + "/?" + stringArray[1];
+ return connectionString;
}
public void Dispose()
diff --git a/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.Demo/package.json b/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.Demo/package.json
index becc251b84..37e21ef9a8 100644
--- a/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.Demo/package.json
+++ b/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.Demo/package.json
@@ -3,7 +3,7 @@
"name": "asp.net",
"private": true,
"dependencies": {
- "@abp/aspnetcore.mvc.ui.theme.shared": "~7.2.0-rc.2",
+ "@abp/aspnetcore.mvc.ui.theme.shared": "~7.2.1",
"highlight.js": "^9.13.1"
},
"devDependencies": {}
diff --git a/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.Demo/yarn.lock b/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.Demo/yarn.lock
index f5d2d6f173..34499a7b23 100644
--- a/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.Demo/yarn.lock
+++ b/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.Demo/yarn.lock
@@ -2,32 +2,32 @@
# yarn lockfile v1
-"@abp/aspnetcore.mvc.ui.theme.shared@~7.2.0-rc.2":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-7.2.0.tgz#fbdf50b0b66b32c8106714beab4b453029c8e533"
- integrity sha512-SaTCFSoZ9VJiv0gdxoXsSn/kmLdDH9JspEDi2xvrDFVp+7PYnQrn44ngQxzsi4ykhVkP5wCf56AEkauDKSFnmw==
- dependencies:
- "@abp/aspnetcore.mvc.ui" "~7.2.0"
- "@abp/bootstrap" "~7.2.0"
- "@abp/bootstrap-datepicker" "~7.2.0"
- "@abp/bootstrap-daterangepicker" "~7.2.0"
- "@abp/datatables.net-bs5" "~7.2.0"
- "@abp/font-awesome" "~7.2.0"
- "@abp/jquery-form" "~7.2.0"
- "@abp/jquery-validation-unobtrusive" "~7.2.0"
- "@abp/lodash" "~7.2.0"
- "@abp/luxon" "~7.2.0"
- "@abp/malihu-custom-scrollbar-plugin" "~7.2.0"
- "@abp/moment" "~7.2.0"
- "@abp/select2" "~7.2.0"
- "@abp/sweetalert2" "~7.2.0"
- "@abp/timeago" "~7.2.0"
- "@abp/toastr" "~7.2.0"
-
-"@abp/aspnetcore.mvc.ui@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-7.2.0.tgz#d3198a4a881c73a86dd2d4eb0569388354526481"
- integrity sha512-QsNHcJ4c9KeAFOPB5bec1i/VOkQ2ZCfhO5qOZMbVls4uy5VDLZtg93xyYaFhQilu1mzXGbfEdPqHK7sArQj7Eg==
+"@abp/aspnetcore.mvc.ui.theme.shared@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-7.2.1.tgz#68903cb3fafca670d603e658f20e435734e3d738"
+ integrity sha512-B7gGe8qAjvMsLfqxFVdvGFfMylV3NQzthXT/BMoq1MtgMdLKrrpeu6Oz3mIr68IuFlA38edqlm8Scy+iknD+Xg==
+ dependencies:
+ "@abp/aspnetcore.mvc.ui" "~7.2.1"
+ "@abp/bootstrap" "~7.2.1"
+ "@abp/bootstrap-datepicker" "~7.2.1"
+ "@abp/bootstrap-daterangepicker" "~7.2.1"
+ "@abp/datatables.net-bs5" "~7.2.1"
+ "@abp/font-awesome" "~7.2.1"
+ "@abp/jquery-form" "~7.2.1"
+ "@abp/jquery-validation-unobtrusive" "~7.2.1"
+ "@abp/lodash" "~7.2.1"
+ "@abp/luxon" "~7.2.1"
+ "@abp/malihu-custom-scrollbar-plugin" "~7.2.1"
+ "@abp/moment" "~7.2.1"
+ "@abp/select2" "~7.2.1"
+ "@abp/sweetalert2" "~7.2.1"
+ "@abp/timeago" "~7.2.1"
+ "@abp/toastr" "~7.2.1"
+
+"@abp/aspnetcore.mvc.ui@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-7.2.1.tgz#b4ae5dcdb90983673092dbfee93c16f21cbb21fe"
+ integrity sha512-edBAWEKQnUdH8jgY+QDECs3BFu0qIXbMV/AiTH9j64uo4ADQ6rgJ6Uq7xy6YtxJ0uImFkgLXDd9LYQEPvU43Bg==
dependencies:
ansi-colors "^4.1.1"
extend-object "^1.0.0"
@@ -36,158 +36,158 @@
merge-stream "^2.0.0"
micromatch "^4.0.2"
-"@abp/bootstrap-datepicker@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-7.2.0.tgz#10a3e810edf47f0acd82ac5dadf3d65bc10eb1b5"
- integrity sha512-uFmaiAX3jnACYsvI+5rRjMmJ8dFX53rNUG7NyCEZ+Btml6MwhoV1LemkCXsWj9iiL6XVmIO9A2bjdhlYI7Gvxw==
+"@abp/bootstrap-datepicker@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-7.2.1.tgz#eca6c1138074ce222ff6c474bc51f4fbe05882c3"
+ integrity sha512-DUBEz8wzsWJlEfQ7CZJYemLE/wNYyY7LtWRBRjNFndS8P2xo3FP4xuh0mnovSZ3AXPy7oAAKg0zayFzf3XS4aw==
dependencies:
bootstrap-datepicker "^1.9.0"
-"@abp/bootstrap-daterangepicker@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-7.2.0.tgz#80ccb46058f141e5b497181624abfd29d5f51efe"
- integrity sha512-Koapg+vD8trKHk92awjIQqdcxOYqP12EpePjxk08TFMoXEeSkYUU4dyIQ7frmM8ExYvaBo3rDPsr2eDSVgcVvQ==
+"@abp/bootstrap-daterangepicker@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-7.2.1.tgz#ad236d026c3596e71a6a2088e5332e00d62c8ff7"
+ integrity sha512-WF/3qQobtvizWGmycgkzHMIjHJoLYAnCsi+vJPzv+VqvGstnQOgkz/rlfcu7uAp9y5H4OWdSAbkOj9eELNfxlA==
dependencies:
bootstrap-daterangepicker "^3.1.0"
-"@abp/bootstrap@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-7.2.0.tgz#87cfe5c3e6c210fe483e061b4127edc19998089c"
- integrity sha512-qa4KUhPe+aBwsN2QmuksmsxLgsONgouKVRYXRo9go7TmjcKwzyB4eryWTkV1p8drxzsY+Uzllapy6oJ9e1fV1A==
+"@abp/bootstrap@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-7.2.1.tgz#94d8186af2f1a1ed4d558756ffa18fd43f26e318"
+ integrity sha512-nU3mBK0VVgkDJqu5CBOHAD1FNvKSO6wnfX5wSB+IYDIfAV9wsmiTIMx6YO8psjMOd4flEmlKLALK6p17i79jhw==
dependencies:
- "@abp/core" "~7.2.0"
+ "@abp/core" "~7.2.1"
bootstrap "^5.1.3"
-"@abp/core@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/core/-/core-7.2.0.tgz#7fe85c5bf7afcdf5907ab90e2587caa1a352c05a"
- integrity sha512-J/pnKP5I4Hc3iY9QJJqBgevGSV7XteK3RLwV1b8dLGj4+12rgpqDYQCpENwEnVAlyBUU7QJJbb8gFNIO7DGzHA==
+"@abp/core@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/core/-/core-7.2.1.tgz#5685d615482daa032ab24f49aeb7fff3f50af898"
+ integrity sha512-N99Ee/rbtXFaV3vdGfv6Mbj1Zav73oBGGNbzmAiQaO/g1hda6ndzSC9WzRJkJ7MaJKTPNJx1ExBNEcNMw1P2UA==
dependencies:
- "@abp/utils" "~7.2.0"
+ "@abp/utils" "~7.2.1"
-"@abp/datatables.net-bs5@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-7.2.0.tgz#867f7b0dae84118c00cbdf499072d454d23d3a37"
- integrity sha512-VgdPEGHK1GeVpvsbYGWNqu4eW06LdC/Hw8Jv+hVf7oCJqJfobckeVkoNToQ7jsqQjl3Hh7xakf9dLXGvHtdKgg==
+"@abp/datatables.net-bs5@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-7.2.1.tgz#0474e874729a51a7e87f2ebfa931ecd8e6fe3eed"
+ integrity sha512-7AvNK0mYHWcdbQJAH6/PV9yjz/FbJlVHWP7mOREd6DIkg+Q8Ihmqjn8bnJyhN2UeRMTz9EZU2nO+E9oAllYlog==
dependencies:
- "@abp/datatables.net" "~7.2.0"
+ "@abp/datatables.net" "~7.2.1"
datatables.net-bs5 "^1.11.4"
-"@abp/datatables.net@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-7.2.0.tgz#8f5593f697d8e8577a9858a82969856cb6cb019a"
- integrity sha512-nL8JqESl8Oz8zpI3i2J4BngI1hwVMXdt9gElwdKgnuiPMbR+lLdQobiBLbnOYpMrulCivGZDor70iSH5OOoA/w==
+"@abp/datatables.net@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-7.2.1.tgz#30aeec4c37cc76e5c4dff78dee433c0b42599e41"
+ integrity sha512-AM6LonrGTOA2VyRme5rT/DcVX0TF2WxSRiM7vpTajq4A16O8yceos/XXop4QEGjGCPGbRqUuWQsIAxXRpcwYJQ==
dependencies:
- "@abp/jquery" "~7.2.0"
+ "@abp/jquery" "~7.2.1"
datatables.net "^1.11.4"
-"@abp/font-awesome@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-7.2.0.tgz#be94e415f8f5b47059adbc27f1c027b11c0883f1"
- integrity sha512-WQXSRVsJR8p1x69kb9xR9qjSxb+gGe5CUPN8aWYYCHDK5mppDP/YT53Nvx02Z201/r26aVa84nd8/+0yJvSKdw==
+"@abp/font-awesome@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-7.2.1.tgz#58751a48e7a648edb075d5a424c4ed9c6448e8e5"
+ integrity sha512-jIYHdXtijkd0b823Gd8pDqXmJ8luA0n4NqnF6MuZtQaz95CY8o0SNc7iGSJep3Gfi9XVVUVkXqWE2Gc82uyaNA==
dependencies:
- "@abp/core" "~7.2.0"
+ "@abp/core" "~7.2.1"
"@fortawesome/fontawesome-free" "^5.15.4"
-"@abp/jquery-form@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-7.2.0.tgz#5b243e08c2d3b9cb6928c902fd4431005a499bef"
- integrity sha512-Ug2vSv7oGeT44lUVyk4uFdgDtdwPe4gGBFXJmUPCfeHgn3yP8sqNNsMO3TRkwlh0jUdJhKC3d86ek9SX7CzZvw==
+"@abp/jquery-form@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-7.2.1.tgz#b09398cfb0abef4255a5bb1853c67ef9bfa76f49"
+ integrity sha512-Jqgog1AJHsCP3lLhUkCXMUzzk2XhAW9pje5dwSdKqE0/bg2OOGo1L3LKUFeEk9dWuMVRkrLRmfdcGRt1SRb4rQ==
dependencies:
- "@abp/jquery" "~7.2.0"
+ "@abp/jquery" "~7.2.1"
jquery-form "^4.3.0"
-"@abp/jquery-validation-unobtrusive@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-7.2.0.tgz#28a1055286985efcc47d464aac51d8b7f37945df"
- integrity sha512-QzCWTrW2bbK9jjXFJpt0TaY3Lk6wGmWnAZZO8lyIMJ1TCqZVI+J+nIMStsRgkFWu5YM5OwbyKjZAG5lb3MqoAw==
+"@abp/jquery-validation-unobtrusive@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-7.2.1.tgz#a62f85c7226d71588d1aa732739b3434c43f40e9"
+ integrity sha512-pEleVw7js8SpIRX73U5ccrfvc0H7Lxfa761wH9WglQOgC0Z1dAkJWbqr/6zKuUi3sVECYgFK8RcVm8/oPRGMzw==
dependencies:
- "@abp/jquery-validation" "~7.2.0"
+ "@abp/jquery-validation" "~7.2.1"
jquery-validation-unobtrusive "^3.2.12"
-"@abp/jquery-validation@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-7.2.0.tgz#321a7a46ec2ef3b079fd7734af38886c97232f11"
- integrity sha512-9hVaEPKZDU6UwyZt2xcJ9SK14gH4O4L1aHCIEuwWAnhKpOux5G4aPGzYqCGdUSf1MlzXf7iwkDKrTZLrPsOdrw==
+"@abp/jquery-validation@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-7.2.1.tgz#e8506f0513d26ae3550cb9410ce500e20065d9cb"
+ integrity sha512-QuCQV2UhKUXwOgYfwKMdu959lWSTOPR83wDTbuTAYd9nsOpCHmhDMApVT0hv44Jv+/ZmE360mkpogzkb0abxLg==
dependencies:
- "@abp/jquery" "~7.2.0"
+ "@abp/jquery" "~7.2.1"
jquery-validation "^1.19.3"
-"@abp/jquery@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-7.2.0.tgz#155ed7c7b116dbe360eac2132d9bf54407524acc"
- integrity sha512-IM4w4AgPoG4ftmbnhmDSOKNmvQW3d7cklNyf4cmV4o0oGOIbFyWKJwZQqYmZU9saoLHHElW5KKM4sPJ4lHcD0Q==
+"@abp/jquery@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-7.2.1.tgz#4ac9cd9ba4710f8dccaa145c17cef00e147efe6f"
+ integrity sha512-W2qE9LP6BCp1bdOMiup4MuB/R7Plj9se+1Sct1EeF1AnpNXv4IvVr5aGEy0/gKeeHvOrHB4wKIXcBhURFSAY1w==
dependencies:
- "@abp/core" "~7.2.0"
+ "@abp/core" "~7.2.1"
jquery "~3.6.0"
-"@abp/lodash@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-7.2.0.tgz#dad30f704641cd43fe98caa067b2aa86eca4cc7e"
- integrity sha512-wt94OjgGl8ZRpdbuE+OQFv0LOZSNACMAb5Grx/GuK2J2fORwHfISX9P0IA0MoF3SQTtfY7daJo02Wa2pO5DVRw==
+"@abp/lodash@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-7.2.1.tgz#36d60374a9fc2130c1f7bd264902d78221fa3b5b"
+ integrity sha512-XFZrxijDLhKqtL4LL3x9C/TvnJs/MIjmNwJ7+Ieg26fo2IFqYg2+hIieCUqGzn66IBwUAoRR0Cqa66erxijDlA==
dependencies:
- "@abp/core" "~7.2.0"
+ "@abp/core" "~7.2.1"
lodash "^4.17.21"
-"@abp/luxon@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-7.2.0.tgz#fe3fc84b26fdf824f510b45409e06c99a7081bab"
- integrity sha512-rS19oaECHKcRayKBfzDnaGXzy8TyZHopz9Wjib0WzeCTyRKgkT1TxCHvUH1DO2PWITODKamUyKSYjGKhGVADfg==
+"@abp/luxon@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-7.2.1.tgz#eb31dd7242be766f995954924e0127f2b58e4516"
+ integrity sha512-lSzulfTa4RPOcp80wmDUQFN9BatTASgYnYfu9RK9U/Fi2nV5KvqzUvRkB/XTitupLaoTJfV5h8Cpf47QMgiLSw==
dependencies:
- "@abp/core" "~7.2.0"
+ "@abp/core" "~7.2.1"
luxon "^2.3.0"
-"@abp/malihu-custom-scrollbar-plugin@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-7.2.0.tgz#975594f6c588807b05e2d5f1ed2b74dd652853be"
- integrity sha512-CieuDFEfnhPfoG5tqzSTKhS27SvaggZbDNmMtoDOd/L5CR7xm7QXfSadN+yFKqWDEO+gbLK//+xvEiyYepMNJA==
+"@abp/malihu-custom-scrollbar-plugin@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-7.2.1.tgz#d3b8aa15774a34f0abe704e416b00d8be76d3346"
+ integrity sha512-xqsjMQJez25mFwNRTUdHTQl78tYJ9+NEmEYLjpo+qRbs2hBExZQO67gTuO6TKvPRBCVgMiIcdpuegtoFhZLl5g==
dependencies:
- "@abp/core" "~7.2.0"
+ "@abp/core" "~7.2.1"
malihu-custom-scrollbar-plugin "^3.1.5"
-"@abp/moment@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-7.2.0.tgz#4ff2bc73008d1717ac5756ee4a7f5460cee51afb"
- integrity sha512-scD8UwmvNGOV75kK2wE8/Mhyp7iSRQWE6MtN3KgWg3AMdkDyrwnQtC55PzXLdec7XIgYbf+r8qSO+CFKaBwMGg==
+"@abp/moment@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-7.2.1.tgz#07bcaeb408b0025f2e8c2a7b259f5f27e05f8d25"
+ integrity sha512-L7EvEKEyl9RsPnSVbPwL3QC3xcKqkaLtZo75wTws2o5hXHs4f4mkADdnpfjCYFFZ+H0vMYjxzKYNI8rHm/ZU0g==
dependencies:
moment "^2.9.0"
-"@abp/select2@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-7.2.0.tgz#fe612080ce2ebbec849663b64310d304f1a4d730"
- integrity sha512-sGpB+ANvCN87W30rlcqQkx1gTAkU6Zz9AxKaxbzFJI35y/j0dybrx32q2/eLg8hkjvQnJ93sNa8oc3fQQ7/7AA==
+"@abp/select2@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-7.2.1.tgz#c2d9494d09395691792ede04bf3d7173ebd35a95"
+ integrity sha512-AW1ylrPQv+WeT3HdQQqy09uvxSeWPzxLhVEylL+HIGFn3TwMCVo2DtgnxSYde4WCpDMRlYzkWlUBX5y9UzhArw==
dependencies:
- "@abp/core" "~7.2.0"
+ "@abp/core" "~7.2.1"
select2 "^4.0.13"
-"@abp/sweetalert2@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-7.2.0.tgz#787164525d741972bf51b5ac371de6d84432f635"
- integrity sha512-9nDv3lp/VGhHLHiLM6/ZL3nhKF7S9Ag4lsedULbGAx4aJK/OfVpkEYJ+4dDLWRHRTO1xrnlMmCPGEsRIUvDklA==
+"@abp/sweetalert2@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-7.2.1.tgz#ab11b3ef48ca55687a8afb0f8fca0b9e696d10a3"
+ integrity sha512-qGMQE7I3bnCN0xwliBP+y+1m5nx7mOYc2yuTozNLdNpmNgT0TAkjyvufn99JQBPoFju+VjMEjS5R005RbvLuVQ==
dependencies:
- "@abp/core" "~7.2.0"
+ "@abp/core" "~7.2.1"
sweetalert2 "^11.3.6"
-"@abp/timeago@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-7.2.0.tgz#c8798a15f3a76fe620fdf04b54b36b5271ff3934"
- integrity sha512-wKl5Cz5IQGlhYI5eEBxiu97iNigVZ/epBozFuH/iJOXNzbCtORnwuL1PfE7C5LRBkxCg4Y+2GDIuPMU1j1cOgQ==
+"@abp/timeago@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-7.2.1.tgz#0fad3c1d7b0678ca63a47f9ba6f5702a162f6857"
+ integrity sha512-1M6WWQ/kPdndMPhgJ5/I22NjxLgmHM4b4sLaKATIH5D4EM7aii22RiM5cSBVAKoJZjJ8S3R28g78zS01xKrSnw==
dependencies:
- "@abp/jquery" "~7.2.0"
+ "@abp/jquery" "~7.2.1"
timeago "^1.6.7"
-"@abp/toastr@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-7.2.0.tgz#f6e2dda276d92af97dbb5dd6747194b58aea8591"
- integrity sha512-QC7NwvVKL1de/PP4F3wT8k7GO0r2WmvhMwFegSnQl5ym/froLDhYAs9Ru8wRHFUF3vHAC7OwYHDGt6guJYR9qA==
+"@abp/toastr@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-7.2.1.tgz#6ddc793e0a66e2b1f9dd192530ad46aacfd60cb2"
+ integrity sha512-BkLohyVJxLx0aJ6WJ2iBRV8y20JWfgoRCpzGUCcAhAp+BBF9FVhVxxZo0loFjprFprvLjJK91Z0bErJW6BWvFQ==
dependencies:
- "@abp/jquery" "~7.2.0"
+ "@abp/jquery" "~7.2.1"
toastr "^2.1.4"
-"@abp/utils@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-7.2.0.tgz#7d7c7fe8d45ee0a123d1d0ad8ce317e809cab02d"
- integrity sha512-GH6383eaRQllM8X+IMoYbBu7D0jSKA/h2f4jwxm0GmlFvxtRo69lqcnSIBDFocdzNotZbRAXuKEE+e8Wo1YH1Q==
+"@abp/utils@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-7.2.1.tgz#a0d5a6de02cb1b68d096399bb03771a8bb9b03b5"
+ integrity sha512-1QAdnFH9RD03w5mqNCz2G4mCuEPRgAJNLvFAEu9RTkL6EhOsCCQSG5mzA4cTWNDvVlNcUF8uyroXmlUvuzpYHg==
dependencies:
just-compare "^1.3.0"
diff --git a/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic.Demo/package.json b/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic.Demo/package.json
index f263dc1253..44570d13f9 100644
--- a/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic.Demo/package.json
+++ b/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic.Demo/package.json
@@ -3,8 +3,8 @@
"name": "asp.net",
"private": true,
"dependencies": {
- "@abp/aspnetcore.mvc.ui.theme.basic": "~7.2.0-rc.2",
- "@abp/prismjs": "~7.2.0-rc.2"
+ "@abp/aspnetcore.mvc.ui.theme.basic": "~7.2.1",
+ "@abp/prismjs": "~7.2.1"
},
"devDependencies": {}
}
diff --git a/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic.Demo/yarn.lock b/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic.Demo/yarn.lock
index 0097506228..5df5cf1a39 100644
--- a/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic.Demo/yarn.lock
+++ b/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic.Demo/yarn.lock
@@ -2,39 +2,39 @@
# yarn lockfile v1
-"@abp/aspnetcore.mvc.ui.theme.basic@~7.2.0-rc.2":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-7.2.0.tgz#fca379e596ec39de4057b9e522e30e0aee324e87"
- integrity sha512-VWBtDqjak9iH0c0e/FmXqW8Riy7CsVjo2VVP5C8pO36BP/IubAnSa02xGek6Yy34vqIu40J67QTNljR66ZlEvQ==
- dependencies:
- "@abp/aspnetcore.mvc.ui.theme.shared" "~7.2.0"
-
-"@abp/aspnetcore.mvc.ui.theme.shared@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-7.2.0.tgz#fbdf50b0b66b32c8106714beab4b453029c8e533"
- integrity sha512-SaTCFSoZ9VJiv0gdxoXsSn/kmLdDH9JspEDi2xvrDFVp+7PYnQrn44ngQxzsi4ykhVkP5wCf56AEkauDKSFnmw==
- dependencies:
- "@abp/aspnetcore.mvc.ui" "~7.2.0"
- "@abp/bootstrap" "~7.2.0"
- "@abp/bootstrap-datepicker" "~7.2.0"
- "@abp/bootstrap-daterangepicker" "~7.2.0"
- "@abp/datatables.net-bs5" "~7.2.0"
- "@abp/font-awesome" "~7.2.0"
- "@abp/jquery-form" "~7.2.0"
- "@abp/jquery-validation-unobtrusive" "~7.2.0"
- "@abp/lodash" "~7.2.0"
- "@abp/luxon" "~7.2.0"
- "@abp/malihu-custom-scrollbar-plugin" "~7.2.0"
- "@abp/moment" "~7.2.0"
- "@abp/select2" "~7.2.0"
- "@abp/sweetalert2" "~7.2.0"
- "@abp/timeago" "~7.2.0"
- "@abp/toastr" "~7.2.0"
-
-"@abp/aspnetcore.mvc.ui@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-7.2.0.tgz#d3198a4a881c73a86dd2d4eb0569388354526481"
- integrity sha512-QsNHcJ4c9KeAFOPB5bec1i/VOkQ2ZCfhO5qOZMbVls4uy5VDLZtg93xyYaFhQilu1mzXGbfEdPqHK7sArQj7Eg==
+"@abp/aspnetcore.mvc.ui.theme.basic@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-7.2.1.tgz#34a948ef593442995bf663fd5c0d3ab4fd7390e8"
+ integrity sha512-AxtugI8e8n6BDklLV/z9oZQzmpF3oEhIVyr1dxv55hIBe8GcOZHA/9CqKHY/OpSwch7ka0EEPrHawCvylcNAdQ==
+ dependencies:
+ "@abp/aspnetcore.mvc.ui.theme.shared" "~7.2.1"
+
+"@abp/aspnetcore.mvc.ui.theme.shared@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-7.2.1.tgz#68903cb3fafca670d603e658f20e435734e3d738"
+ integrity sha512-B7gGe8qAjvMsLfqxFVdvGFfMylV3NQzthXT/BMoq1MtgMdLKrrpeu6Oz3mIr68IuFlA38edqlm8Scy+iknD+Xg==
+ dependencies:
+ "@abp/aspnetcore.mvc.ui" "~7.2.1"
+ "@abp/bootstrap" "~7.2.1"
+ "@abp/bootstrap-datepicker" "~7.2.1"
+ "@abp/bootstrap-daterangepicker" "~7.2.1"
+ "@abp/datatables.net-bs5" "~7.2.1"
+ "@abp/font-awesome" "~7.2.1"
+ "@abp/jquery-form" "~7.2.1"
+ "@abp/jquery-validation-unobtrusive" "~7.2.1"
+ "@abp/lodash" "~7.2.1"
+ "@abp/luxon" "~7.2.1"
+ "@abp/malihu-custom-scrollbar-plugin" "~7.2.1"
+ "@abp/moment" "~7.2.1"
+ "@abp/select2" "~7.2.1"
+ "@abp/sweetalert2" "~7.2.1"
+ "@abp/timeago" "~7.2.1"
+ "@abp/toastr" "~7.2.1"
+
+"@abp/aspnetcore.mvc.ui@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-7.2.1.tgz#b4ae5dcdb90983673092dbfee93c16f21cbb21fe"
+ integrity sha512-edBAWEKQnUdH8jgY+QDECs3BFu0qIXbMV/AiTH9j64uo4ADQ6rgJ6Uq7xy6YtxJ0uImFkgLXDd9LYQEPvU43Bg==
dependencies:
ansi-colors "^4.1.1"
extend-object "^1.0.0"
@@ -43,175 +43,175 @@
merge-stream "^2.0.0"
micromatch "^4.0.2"
-"@abp/bootstrap-datepicker@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-7.2.0.tgz#10a3e810edf47f0acd82ac5dadf3d65bc10eb1b5"
- integrity sha512-uFmaiAX3jnACYsvI+5rRjMmJ8dFX53rNUG7NyCEZ+Btml6MwhoV1LemkCXsWj9iiL6XVmIO9A2bjdhlYI7Gvxw==
+"@abp/bootstrap-datepicker@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-7.2.1.tgz#eca6c1138074ce222ff6c474bc51f4fbe05882c3"
+ integrity sha512-DUBEz8wzsWJlEfQ7CZJYemLE/wNYyY7LtWRBRjNFndS8P2xo3FP4xuh0mnovSZ3AXPy7oAAKg0zayFzf3XS4aw==
dependencies:
bootstrap-datepicker "^1.9.0"
-"@abp/bootstrap-daterangepicker@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-7.2.0.tgz#80ccb46058f141e5b497181624abfd29d5f51efe"
- integrity sha512-Koapg+vD8trKHk92awjIQqdcxOYqP12EpePjxk08TFMoXEeSkYUU4dyIQ7frmM8ExYvaBo3rDPsr2eDSVgcVvQ==
+"@abp/bootstrap-daterangepicker@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-7.2.1.tgz#ad236d026c3596e71a6a2088e5332e00d62c8ff7"
+ integrity sha512-WF/3qQobtvizWGmycgkzHMIjHJoLYAnCsi+vJPzv+VqvGstnQOgkz/rlfcu7uAp9y5H4OWdSAbkOj9eELNfxlA==
dependencies:
bootstrap-daterangepicker "^3.1.0"
-"@abp/bootstrap@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-7.2.0.tgz#87cfe5c3e6c210fe483e061b4127edc19998089c"
- integrity sha512-qa4KUhPe+aBwsN2QmuksmsxLgsONgouKVRYXRo9go7TmjcKwzyB4eryWTkV1p8drxzsY+Uzllapy6oJ9e1fV1A==
+"@abp/bootstrap@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-7.2.1.tgz#94d8186af2f1a1ed4d558756ffa18fd43f26e318"
+ integrity sha512-nU3mBK0VVgkDJqu5CBOHAD1FNvKSO6wnfX5wSB+IYDIfAV9wsmiTIMx6YO8psjMOd4flEmlKLALK6p17i79jhw==
dependencies:
- "@abp/core" "~7.2.0"
+ "@abp/core" "~7.2.1"
bootstrap "^5.1.3"
-"@abp/clipboard@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-7.2.0.tgz#3f8364668a8ecd4892919c84fd7569644b17bc7b"
- integrity sha512-1WJdWjm7lWG5DDGOUU4M5XRBJhZArrH8WNE/JFhEZw/4fQvTO9nWpFZb0Jj3642eLk0i+Bab0qtsZSHVqMNLQw==
+"@abp/clipboard@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-7.2.1.tgz#dab262b84aa956eeb3a145461b662c5ae851b4a8"
+ integrity sha512-72C3QMEMMtXzjv6GTJJiILSJ1ScBidcKdahrRLlomo4TgCIEgg1+oYL3Q0uyrlB5I0mUqBaf+qYlxXue8JdRAQ==
dependencies:
- "@abp/core" "~7.2.0"
+ "@abp/core" "~7.2.1"
clipboard "^2.0.8"
-"@abp/core@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/core/-/core-7.2.0.tgz#7fe85c5bf7afcdf5907ab90e2587caa1a352c05a"
- integrity sha512-J/pnKP5I4Hc3iY9QJJqBgevGSV7XteK3RLwV1b8dLGj4+12rgpqDYQCpENwEnVAlyBUU7QJJbb8gFNIO7DGzHA==
+"@abp/core@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/core/-/core-7.2.1.tgz#5685d615482daa032ab24f49aeb7fff3f50af898"
+ integrity sha512-N99Ee/rbtXFaV3vdGfv6Mbj1Zav73oBGGNbzmAiQaO/g1hda6ndzSC9WzRJkJ7MaJKTPNJx1ExBNEcNMw1P2UA==
dependencies:
- "@abp/utils" "~7.2.0"
+ "@abp/utils" "~7.2.1"
-"@abp/datatables.net-bs5@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-7.2.0.tgz#867f7b0dae84118c00cbdf499072d454d23d3a37"
- integrity sha512-VgdPEGHK1GeVpvsbYGWNqu4eW06LdC/Hw8Jv+hVf7oCJqJfobckeVkoNToQ7jsqQjl3Hh7xakf9dLXGvHtdKgg==
+"@abp/datatables.net-bs5@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-7.2.1.tgz#0474e874729a51a7e87f2ebfa931ecd8e6fe3eed"
+ integrity sha512-7AvNK0mYHWcdbQJAH6/PV9yjz/FbJlVHWP7mOREd6DIkg+Q8Ihmqjn8bnJyhN2UeRMTz9EZU2nO+E9oAllYlog==
dependencies:
- "@abp/datatables.net" "~7.2.0"
+ "@abp/datatables.net" "~7.2.1"
datatables.net-bs5 "^1.11.4"
-"@abp/datatables.net@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-7.2.0.tgz#8f5593f697d8e8577a9858a82969856cb6cb019a"
- integrity sha512-nL8JqESl8Oz8zpI3i2J4BngI1hwVMXdt9gElwdKgnuiPMbR+lLdQobiBLbnOYpMrulCivGZDor70iSH5OOoA/w==
+"@abp/datatables.net@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-7.2.1.tgz#30aeec4c37cc76e5c4dff78dee433c0b42599e41"
+ integrity sha512-AM6LonrGTOA2VyRme5rT/DcVX0TF2WxSRiM7vpTajq4A16O8yceos/XXop4QEGjGCPGbRqUuWQsIAxXRpcwYJQ==
dependencies:
- "@abp/jquery" "~7.2.0"
+ "@abp/jquery" "~7.2.1"
datatables.net "^1.11.4"
-"@abp/font-awesome@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-7.2.0.tgz#be94e415f8f5b47059adbc27f1c027b11c0883f1"
- integrity sha512-WQXSRVsJR8p1x69kb9xR9qjSxb+gGe5CUPN8aWYYCHDK5mppDP/YT53Nvx02Z201/r26aVa84nd8/+0yJvSKdw==
+"@abp/font-awesome@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-7.2.1.tgz#58751a48e7a648edb075d5a424c4ed9c6448e8e5"
+ integrity sha512-jIYHdXtijkd0b823Gd8pDqXmJ8luA0n4NqnF6MuZtQaz95CY8o0SNc7iGSJep3Gfi9XVVUVkXqWE2Gc82uyaNA==
dependencies:
- "@abp/core" "~7.2.0"
+ "@abp/core" "~7.2.1"
"@fortawesome/fontawesome-free" "^5.15.4"
-"@abp/jquery-form@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-7.2.0.tgz#5b243e08c2d3b9cb6928c902fd4431005a499bef"
- integrity sha512-Ug2vSv7oGeT44lUVyk4uFdgDtdwPe4gGBFXJmUPCfeHgn3yP8sqNNsMO3TRkwlh0jUdJhKC3d86ek9SX7CzZvw==
+"@abp/jquery-form@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-7.2.1.tgz#b09398cfb0abef4255a5bb1853c67ef9bfa76f49"
+ integrity sha512-Jqgog1AJHsCP3lLhUkCXMUzzk2XhAW9pje5dwSdKqE0/bg2OOGo1L3LKUFeEk9dWuMVRkrLRmfdcGRt1SRb4rQ==
dependencies:
- "@abp/jquery" "~7.2.0"
+ "@abp/jquery" "~7.2.1"
jquery-form "^4.3.0"
-"@abp/jquery-validation-unobtrusive@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-7.2.0.tgz#28a1055286985efcc47d464aac51d8b7f37945df"
- integrity sha512-QzCWTrW2bbK9jjXFJpt0TaY3Lk6wGmWnAZZO8lyIMJ1TCqZVI+J+nIMStsRgkFWu5YM5OwbyKjZAG5lb3MqoAw==
+"@abp/jquery-validation-unobtrusive@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-7.2.1.tgz#a62f85c7226d71588d1aa732739b3434c43f40e9"
+ integrity sha512-pEleVw7js8SpIRX73U5ccrfvc0H7Lxfa761wH9WglQOgC0Z1dAkJWbqr/6zKuUi3sVECYgFK8RcVm8/oPRGMzw==
dependencies:
- "@abp/jquery-validation" "~7.2.0"
+ "@abp/jquery-validation" "~7.2.1"
jquery-validation-unobtrusive "^3.2.12"
-"@abp/jquery-validation@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-7.2.0.tgz#321a7a46ec2ef3b079fd7734af38886c97232f11"
- integrity sha512-9hVaEPKZDU6UwyZt2xcJ9SK14gH4O4L1aHCIEuwWAnhKpOux5G4aPGzYqCGdUSf1MlzXf7iwkDKrTZLrPsOdrw==
+"@abp/jquery-validation@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-7.2.1.tgz#e8506f0513d26ae3550cb9410ce500e20065d9cb"
+ integrity sha512-QuCQV2UhKUXwOgYfwKMdu959lWSTOPR83wDTbuTAYd9nsOpCHmhDMApVT0hv44Jv+/ZmE360mkpogzkb0abxLg==
dependencies:
- "@abp/jquery" "~7.2.0"
+ "@abp/jquery" "~7.2.1"
jquery-validation "^1.19.3"
-"@abp/jquery@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-7.2.0.tgz#155ed7c7b116dbe360eac2132d9bf54407524acc"
- integrity sha512-IM4w4AgPoG4ftmbnhmDSOKNmvQW3d7cklNyf4cmV4o0oGOIbFyWKJwZQqYmZU9saoLHHElW5KKM4sPJ4lHcD0Q==
+"@abp/jquery@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-7.2.1.tgz#4ac9cd9ba4710f8dccaa145c17cef00e147efe6f"
+ integrity sha512-W2qE9LP6BCp1bdOMiup4MuB/R7Plj9se+1Sct1EeF1AnpNXv4IvVr5aGEy0/gKeeHvOrHB4wKIXcBhURFSAY1w==
dependencies:
- "@abp/core" "~7.2.0"
+ "@abp/core" "~7.2.1"
jquery "~3.6.0"
-"@abp/lodash@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-7.2.0.tgz#dad30f704641cd43fe98caa067b2aa86eca4cc7e"
- integrity sha512-wt94OjgGl8ZRpdbuE+OQFv0LOZSNACMAb5Grx/GuK2J2fORwHfISX9P0IA0MoF3SQTtfY7daJo02Wa2pO5DVRw==
+"@abp/lodash@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-7.2.1.tgz#36d60374a9fc2130c1f7bd264902d78221fa3b5b"
+ integrity sha512-XFZrxijDLhKqtL4LL3x9C/TvnJs/MIjmNwJ7+Ieg26fo2IFqYg2+hIieCUqGzn66IBwUAoRR0Cqa66erxijDlA==
dependencies:
- "@abp/core" "~7.2.0"
+ "@abp/core" "~7.2.1"
lodash "^4.17.21"
-"@abp/luxon@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-7.2.0.tgz#fe3fc84b26fdf824f510b45409e06c99a7081bab"
- integrity sha512-rS19oaECHKcRayKBfzDnaGXzy8TyZHopz9Wjib0WzeCTyRKgkT1TxCHvUH1DO2PWITODKamUyKSYjGKhGVADfg==
+"@abp/luxon@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-7.2.1.tgz#eb31dd7242be766f995954924e0127f2b58e4516"
+ integrity sha512-lSzulfTa4RPOcp80wmDUQFN9BatTASgYnYfu9RK9U/Fi2nV5KvqzUvRkB/XTitupLaoTJfV5h8Cpf47QMgiLSw==
dependencies:
- "@abp/core" "~7.2.0"
+ "@abp/core" "~7.2.1"
luxon "^2.3.0"
-"@abp/malihu-custom-scrollbar-plugin@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-7.2.0.tgz#975594f6c588807b05e2d5f1ed2b74dd652853be"
- integrity sha512-CieuDFEfnhPfoG5tqzSTKhS27SvaggZbDNmMtoDOd/L5CR7xm7QXfSadN+yFKqWDEO+gbLK//+xvEiyYepMNJA==
+"@abp/malihu-custom-scrollbar-plugin@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-7.2.1.tgz#d3b8aa15774a34f0abe704e416b00d8be76d3346"
+ integrity sha512-xqsjMQJez25mFwNRTUdHTQl78tYJ9+NEmEYLjpo+qRbs2hBExZQO67gTuO6TKvPRBCVgMiIcdpuegtoFhZLl5g==
dependencies:
- "@abp/core" "~7.2.0"
+ "@abp/core" "~7.2.1"
malihu-custom-scrollbar-plugin "^3.1.5"
-"@abp/moment@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-7.2.0.tgz#4ff2bc73008d1717ac5756ee4a7f5460cee51afb"
- integrity sha512-scD8UwmvNGOV75kK2wE8/Mhyp7iSRQWE6MtN3KgWg3AMdkDyrwnQtC55PzXLdec7XIgYbf+r8qSO+CFKaBwMGg==
+"@abp/moment@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-7.2.1.tgz#07bcaeb408b0025f2e8c2a7b259f5f27e05f8d25"
+ integrity sha512-L7EvEKEyl9RsPnSVbPwL3QC3xcKqkaLtZo75wTws2o5hXHs4f4mkADdnpfjCYFFZ+H0vMYjxzKYNI8rHm/ZU0g==
dependencies:
moment "^2.9.0"
-"@abp/prismjs@~7.2.0-rc.2":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-7.2.0.tgz#27225e6bbcba7e8e61805a352efc7a66872a1bc8"
- integrity sha512-JlL2dGL75B08C2taIS7PMRplAvRBwjVxBCGGeXnv1QgX3kXfxlzU6hJQq6AB+knGBOmDIK7wFoHKTdOn+/JA1w==
+"@abp/prismjs@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-7.2.1.tgz#322ea0c1368df89a8649af2ecf9660ae9c3eb12a"
+ integrity sha512-918o/Gev6f5tm6U0cO6S7Teygzre1x+HpzGH5WJdNx14/ZQ6wNrcsIMIjd84R6noUPVt83/eZ27N+RQtvntQLg==
dependencies:
- "@abp/clipboard" "~7.2.0"
- "@abp/core" "~7.2.0"
+ "@abp/clipboard" "~7.2.1"
+ "@abp/core" "~7.2.1"
prismjs "^1.26.0"
-"@abp/select2@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-7.2.0.tgz#fe612080ce2ebbec849663b64310d304f1a4d730"
- integrity sha512-sGpB+ANvCN87W30rlcqQkx1gTAkU6Zz9AxKaxbzFJI35y/j0dybrx32q2/eLg8hkjvQnJ93sNa8oc3fQQ7/7AA==
+"@abp/select2@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-7.2.1.tgz#c2d9494d09395691792ede04bf3d7173ebd35a95"
+ integrity sha512-AW1ylrPQv+WeT3HdQQqy09uvxSeWPzxLhVEylL+HIGFn3TwMCVo2DtgnxSYde4WCpDMRlYzkWlUBX5y9UzhArw==
dependencies:
- "@abp/core" "~7.2.0"
+ "@abp/core" "~7.2.1"
select2 "^4.0.13"
-"@abp/sweetalert2@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-7.2.0.tgz#787164525d741972bf51b5ac371de6d84432f635"
- integrity sha512-9nDv3lp/VGhHLHiLM6/ZL3nhKF7S9Ag4lsedULbGAx4aJK/OfVpkEYJ+4dDLWRHRTO1xrnlMmCPGEsRIUvDklA==
+"@abp/sweetalert2@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-7.2.1.tgz#ab11b3ef48ca55687a8afb0f8fca0b9e696d10a3"
+ integrity sha512-qGMQE7I3bnCN0xwliBP+y+1m5nx7mOYc2yuTozNLdNpmNgT0TAkjyvufn99JQBPoFju+VjMEjS5R005RbvLuVQ==
dependencies:
- "@abp/core" "~7.2.0"
+ "@abp/core" "~7.2.1"
sweetalert2 "^11.3.6"
-"@abp/timeago@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-7.2.0.tgz#c8798a15f3a76fe620fdf04b54b36b5271ff3934"
- integrity sha512-wKl5Cz5IQGlhYI5eEBxiu97iNigVZ/epBozFuH/iJOXNzbCtORnwuL1PfE7C5LRBkxCg4Y+2GDIuPMU1j1cOgQ==
+"@abp/timeago@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-7.2.1.tgz#0fad3c1d7b0678ca63a47f9ba6f5702a162f6857"
+ integrity sha512-1M6WWQ/kPdndMPhgJ5/I22NjxLgmHM4b4sLaKATIH5D4EM7aii22RiM5cSBVAKoJZjJ8S3R28g78zS01xKrSnw==
dependencies:
- "@abp/jquery" "~7.2.0"
+ "@abp/jquery" "~7.2.1"
timeago "^1.6.7"
-"@abp/toastr@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-7.2.0.tgz#f6e2dda276d92af97dbb5dd6747194b58aea8591"
- integrity sha512-QC7NwvVKL1de/PP4F3wT8k7GO0r2WmvhMwFegSnQl5ym/froLDhYAs9Ru8wRHFUF3vHAC7OwYHDGt6guJYR9qA==
+"@abp/toastr@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-7.2.1.tgz#6ddc793e0a66e2b1f9dd192530ad46aacfd60cb2"
+ integrity sha512-BkLohyVJxLx0aJ6WJ2iBRV8y20JWfgoRCpzGUCcAhAp+BBF9FVhVxxZo0loFjprFprvLjJK91Z0bErJW6BWvFQ==
dependencies:
- "@abp/jquery" "~7.2.0"
+ "@abp/jquery" "~7.2.1"
toastr "^2.1.4"
-"@abp/utils@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-7.2.0.tgz#7d7c7fe8d45ee0a123d1d0ad8ce317e809cab02d"
- integrity sha512-GH6383eaRQllM8X+IMoYbBu7D0jSKA/h2f4jwxm0GmlFvxtRo69lqcnSIBDFocdzNotZbRAXuKEE+e8Wo1YH1Q==
+"@abp/utils@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-7.2.1.tgz#a0d5a6de02cb1b68d096399bb03771a8bb9b03b5"
+ integrity sha512-1QAdnFH9RD03w5mqNCz2G4mCuEPRgAJNLvFAEu9RTkL6EhOsCCQSG5mzA4cTWNDvVlNcUF8uyroXmlUvuzpYHg==
dependencies:
just-compare "^1.3.0"
diff --git a/modules/blob-storing-database/src/Volo.Abp.BlobStoring.Database.Domain.Shared/Volo.Abp.BlobStoring.Database.Domain.Shared.csproj b/modules/blob-storing-database/src/Volo.Abp.BlobStoring.Database.Domain.Shared/Volo.Abp.BlobStoring.Database.Domain.Shared.csproj
index 899a964810..09592bce70 100644
--- a/modules/blob-storing-database/src/Volo.Abp.BlobStoring.Database.Domain.Shared/Volo.Abp.BlobStoring.Database.Domain.Shared.csproj
+++ b/modules/blob-storing-database/src/Volo.Abp.BlobStoring.Database.Domain.Shared/Volo.Abp.BlobStoring.Database.Domain.Shared.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
diff --git a/modules/blob-storing-database/src/Volo.Abp.BlobStoring.Database.Domain/Volo.Abp.BlobStoring.Database.Domain.csproj b/modules/blob-storing-database/src/Volo.Abp.BlobStoring.Database.Domain/Volo.Abp.BlobStoring.Database.Domain.csproj
index c3ac872d18..bc2af4186c 100644
--- a/modules/blob-storing-database/src/Volo.Abp.BlobStoring.Database.Domain/Volo.Abp.BlobStoring.Database.Domain.csproj
+++ b/modules/blob-storing-database/src/Volo.Abp.BlobStoring.Database.Domain/Volo.Abp.BlobStoring.Database.Domain.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
diff --git a/modules/blob-storing-database/src/Volo.Abp.BlobStoring.Database.MongoDB/Volo.Abp.BlobStoring.Database.MongoDB.csproj b/modules/blob-storing-database/src/Volo.Abp.BlobStoring.Database.MongoDB/Volo.Abp.BlobStoring.Database.MongoDB.csproj
index 6b1f447f8a..27d7a12bf1 100644
--- a/modules/blob-storing-database/src/Volo.Abp.BlobStoring.Database.MongoDB/Volo.Abp.BlobStoring.Database.MongoDB.csproj
+++ b/modules/blob-storing-database/src/Volo.Abp.BlobStoring.Database.MongoDB/Volo.Abp.BlobStoring.Database.MongoDB.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
diff --git a/modules/blob-storing-database/test/Volo.Abp.BlobStoring.Database.MongoDB.Tests/MongoDB/BlobStoringDatabaseMongoDbTestModule.cs b/modules/blob-storing-database/test/Volo.Abp.BlobStoring.Database.MongoDB.Tests/MongoDB/BlobStoringDatabaseMongoDbTestModule.cs
index 982a389404..32a94b9642 100644
--- a/modules/blob-storing-database/test/Volo.Abp.BlobStoring.Database.MongoDB.Tests/MongoDB/BlobStoringDatabaseMongoDbTestModule.cs
+++ b/modules/blob-storing-database/test/Volo.Abp.BlobStoring.Database.MongoDB.Tests/MongoDB/BlobStoringDatabaseMongoDbTestModule.cs
@@ -13,14 +13,9 @@ public class BlobStoringDatabaseMongoDbTestModule : AbpModule
{
public override void ConfigureServices(ServiceConfigurationContext context)
{
- var stringArray = MongoDbFixture.ConnectionString.Split('?');
- var connectionString = stringArray[0].EnsureEndsWith('/') +
- "Db_" +
- Guid.NewGuid().ToString("N") + "/?" + stringArray[1];
-
Configure(options =>
{
- options.ConnectionStrings.Default = connectionString;
+ options.ConnectionStrings.Default = MongoDbFixture.GetRandomConnectionString();
});
}
}
diff --git a/modules/blob-storing-database/test/Volo.Abp.BlobStoring.Database.MongoDB.Tests/MongoDB/MongoDbFixture.cs b/modules/blob-storing-database/test/Volo.Abp.BlobStoring.Database.MongoDB.Tests/MongoDB/MongoDbFixture.cs
index 875d510727..8952236f43 100644
--- a/modules/blob-storing-database/test/Volo.Abp.BlobStoring.Database.MongoDB.Tests/MongoDB/MongoDbFixture.cs
+++ b/modules/blob-storing-database/test/Volo.Abp.BlobStoring.Database.MongoDB.Tests/MongoDB/MongoDbFixture.cs
@@ -1,17 +1,30 @@
using System;
-using Mongo2Go;
+using EphemeralMongo;
namespace Volo.Abp.BlobStoring.Database.MongoDB;
public class MongoDbFixture : IDisposable
{
- private static readonly MongoDbRunner MongoDbRunner;
- public static readonly string ConnectionString;
+ public readonly static IMongoRunner MongoDbRunner;
static MongoDbFixture()
{
- MongoDbRunner = MongoDbRunner.Start(singleNodeReplSet: true, singleNodeReplSetWaitTimeout: 20);
- ConnectionString = MongoDbRunner.ConnectionString;
+ MongoDbRunner = MongoRunner.Run(new MongoRunnerOptions
+ {
+ UseSingleNodeReplicaSet = true
+ });
+ }
+
+ public static string GetRandomConnectionString()
+ {
+ return GetConnectionString("Db_" + Guid.NewGuid().ToString("N"));
+ }
+
+ public static string GetConnectionString(string databaseName)
+ {
+ var stringArray = MongoDbRunner.ConnectionString.Split('?');
+ var connectionString = stringArray[0].EnsureEndsWith('/') + databaseName + "/?" + stringArray[1];
+ return connectionString;
}
public void Dispose()
diff --git a/modules/blob-storing-database/test/Volo.Abp.BlobStoring.Database.MongoDB.Tests/Volo.Abp.BlobStoring.Database.MongoDB.Tests.csproj b/modules/blob-storing-database/test/Volo.Abp.BlobStoring.Database.MongoDB.Tests/Volo.Abp.BlobStoring.Database.MongoDB.Tests.csproj
index c4d517912b..12d6f00f28 100644
--- a/modules/blob-storing-database/test/Volo.Abp.BlobStoring.Database.MongoDB.Tests/Volo.Abp.BlobStoring.Database.MongoDB.Tests.csproj
+++ b/modules/blob-storing-database/test/Volo.Abp.BlobStoring.Database.MongoDB.Tests/Volo.Abp.BlobStoring.Database.MongoDB.Tests.csproj
@@ -7,7 +7,10 @@
-
+
+
+
+
diff --git a/modules/blogging/app/Volo.BloggingTestApp/package.json b/modules/blogging/app/Volo.BloggingTestApp/package.json
index 49bae3ece9..c4ec6f8763 100644
--- a/modules/blogging/app/Volo.BloggingTestApp/package.json
+++ b/modules/blogging/app/Volo.BloggingTestApp/package.json
@@ -3,7 +3,7 @@
"name": "volo.blogtestapp",
"private": true,
"dependencies": {
- "@abp/aspnetcore.mvc.ui.theme.basic": "~7.2.0-rc.2",
- "@abp/blogging": "~7.2.0-rc.2"
+ "@abp/aspnetcore.mvc.ui.theme.basic": "~7.2.1",
+ "@abp/blogging": "~7.2.1"
}
}
diff --git a/modules/blogging/app/Volo.BloggingTestApp/yarn.lock b/modules/blogging/app/Volo.BloggingTestApp/yarn.lock
index c75e4cff80..2f4db33c3b 100644
--- a/modules/blogging/app/Volo.BloggingTestApp/yarn.lock
+++ b/modules/blogging/app/Volo.BloggingTestApp/yarn.lock
@@ -2,39 +2,39 @@
# yarn lockfile v1
-"@abp/aspnetcore.mvc.ui.theme.basic@~7.2.0-rc.2":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-7.2.0.tgz#fca379e596ec39de4057b9e522e30e0aee324e87"
- integrity sha512-VWBtDqjak9iH0c0e/FmXqW8Riy7CsVjo2VVP5C8pO36BP/IubAnSa02xGek6Yy34vqIu40J67QTNljR66ZlEvQ==
- dependencies:
- "@abp/aspnetcore.mvc.ui.theme.shared" "~7.2.0"
-
-"@abp/aspnetcore.mvc.ui.theme.shared@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-7.2.0.tgz#fbdf50b0b66b32c8106714beab4b453029c8e533"
- integrity sha512-SaTCFSoZ9VJiv0gdxoXsSn/kmLdDH9JspEDi2xvrDFVp+7PYnQrn44ngQxzsi4ykhVkP5wCf56AEkauDKSFnmw==
- dependencies:
- "@abp/aspnetcore.mvc.ui" "~7.2.0"
- "@abp/bootstrap" "~7.2.0"
- "@abp/bootstrap-datepicker" "~7.2.0"
- "@abp/bootstrap-daterangepicker" "~7.2.0"
- "@abp/datatables.net-bs5" "~7.2.0"
- "@abp/font-awesome" "~7.2.0"
- "@abp/jquery-form" "~7.2.0"
- "@abp/jquery-validation-unobtrusive" "~7.2.0"
- "@abp/lodash" "~7.2.0"
- "@abp/luxon" "~7.2.0"
- "@abp/malihu-custom-scrollbar-plugin" "~7.2.0"
- "@abp/moment" "~7.2.0"
- "@abp/select2" "~7.2.0"
- "@abp/sweetalert2" "~7.2.0"
- "@abp/timeago" "~7.2.0"
- "@abp/toastr" "~7.2.0"
-
-"@abp/aspnetcore.mvc.ui@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-7.2.0.tgz#d3198a4a881c73a86dd2d4eb0569388354526481"
- integrity sha512-QsNHcJ4c9KeAFOPB5bec1i/VOkQ2ZCfhO5qOZMbVls4uy5VDLZtg93xyYaFhQilu1mzXGbfEdPqHK7sArQj7Eg==
+"@abp/aspnetcore.mvc.ui.theme.basic@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-7.2.1.tgz#34a948ef593442995bf663fd5c0d3ab4fd7390e8"
+ integrity sha512-AxtugI8e8n6BDklLV/z9oZQzmpF3oEhIVyr1dxv55hIBe8GcOZHA/9CqKHY/OpSwch7ka0EEPrHawCvylcNAdQ==
+ dependencies:
+ "@abp/aspnetcore.mvc.ui.theme.shared" "~7.2.1"
+
+"@abp/aspnetcore.mvc.ui.theme.shared@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-7.2.1.tgz#68903cb3fafca670d603e658f20e435734e3d738"
+ integrity sha512-B7gGe8qAjvMsLfqxFVdvGFfMylV3NQzthXT/BMoq1MtgMdLKrrpeu6Oz3mIr68IuFlA38edqlm8Scy+iknD+Xg==
+ dependencies:
+ "@abp/aspnetcore.mvc.ui" "~7.2.1"
+ "@abp/bootstrap" "~7.2.1"
+ "@abp/bootstrap-datepicker" "~7.2.1"
+ "@abp/bootstrap-daterangepicker" "~7.2.1"
+ "@abp/datatables.net-bs5" "~7.2.1"
+ "@abp/font-awesome" "~7.2.1"
+ "@abp/jquery-form" "~7.2.1"
+ "@abp/jquery-validation-unobtrusive" "~7.2.1"
+ "@abp/lodash" "~7.2.1"
+ "@abp/luxon" "~7.2.1"
+ "@abp/malihu-custom-scrollbar-plugin" "~7.2.1"
+ "@abp/moment" "~7.2.1"
+ "@abp/select2" "~7.2.1"
+ "@abp/sweetalert2" "~7.2.1"
+ "@abp/timeago" "~7.2.1"
+ "@abp/toastr" "~7.2.1"
+
+"@abp/aspnetcore.mvc.ui@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-7.2.1.tgz#b4ae5dcdb90983673092dbfee93c16f21cbb21fe"
+ integrity sha512-edBAWEKQnUdH8jgY+QDECs3BFu0qIXbMV/AiTH9j64uo4ADQ6rgJ6Uq7xy6YtxJ0uImFkgLXDd9LYQEPvU43Bg==
dependencies:
ansi-colors "^4.1.1"
extend-object "^1.0.0"
@@ -43,201 +43,201 @@
merge-stream "^2.0.0"
micromatch "^4.0.2"
-"@abp/blogging@~7.2.0-rc.2":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/blogging/-/blogging-7.2.0.tgz#1a03053cf0c43b40cdce81a2f48618e2c0e514e6"
- integrity sha512-62rLnu+D0BvU5+Kk+7GbB9JHJ53/w1XS96RI6S1wZ2wwZcHFBIUKlDeNgoigrw0CgSHhEimcMmFDnZvbHWcp5w==
+"@abp/blogging@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/blogging/-/blogging-7.2.1.tgz#225d9a3314244c864a03e987e53e7797e04a0f27"
+ integrity sha512-sbtKkPau5VmLBA0iW9R6ICF2bxAD6nBm60qC9EGFdNa8KxGdWCwcxiWlxMAf3YQawYxE7UHXJpaIVJy3Si+qzA==
dependencies:
- "@abp/aspnetcore.mvc.ui.theme.shared" "~7.2.0"
- "@abp/owl.carousel" "~7.2.0"
- "@abp/prismjs" "~7.2.0"
- "@abp/tui-editor" "~7.2.0"
+ "@abp/aspnetcore.mvc.ui.theme.shared" "~7.2.1"
+ "@abp/owl.carousel" "~7.2.1"
+ "@abp/prismjs" "~7.2.1"
+ "@abp/tui-editor" "~7.2.1"
-"@abp/bootstrap-datepicker@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-7.2.0.tgz#10a3e810edf47f0acd82ac5dadf3d65bc10eb1b5"
- integrity sha512-uFmaiAX3jnACYsvI+5rRjMmJ8dFX53rNUG7NyCEZ+Btml6MwhoV1LemkCXsWj9iiL6XVmIO9A2bjdhlYI7Gvxw==
+"@abp/bootstrap-datepicker@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-7.2.1.tgz#eca6c1138074ce222ff6c474bc51f4fbe05882c3"
+ integrity sha512-DUBEz8wzsWJlEfQ7CZJYemLE/wNYyY7LtWRBRjNFndS8P2xo3FP4xuh0mnovSZ3AXPy7oAAKg0zayFzf3XS4aw==
dependencies:
bootstrap-datepicker "^1.9.0"
-"@abp/bootstrap-daterangepicker@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-7.2.0.tgz#80ccb46058f141e5b497181624abfd29d5f51efe"
- integrity sha512-Koapg+vD8trKHk92awjIQqdcxOYqP12EpePjxk08TFMoXEeSkYUU4dyIQ7frmM8ExYvaBo3rDPsr2eDSVgcVvQ==
+"@abp/bootstrap-daterangepicker@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-7.2.1.tgz#ad236d026c3596e71a6a2088e5332e00d62c8ff7"
+ integrity sha512-WF/3qQobtvizWGmycgkzHMIjHJoLYAnCsi+vJPzv+VqvGstnQOgkz/rlfcu7uAp9y5H4OWdSAbkOj9eELNfxlA==
dependencies:
bootstrap-daterangepicker "^3.1.0"
-"@abp/bootstrap@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-7.2.0.tgz#87cfe5c3e6c210fe483e061b4127edc19998089c"
- integrity sha512-qa4KUhPe+aBwsN2QmuksmsxLgsONgouKVRYXRo9go7TmjcKwzyB4eryWTkV1p8drxzsY+Uzllapy6oJ9e1fV1A==
+"@abp/bootstrap@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-7.2.1.tgz#94d8186af2f1a1ed4d558756ffa18fd43f26e318"
+ integrity sha512-nU3mBK0VVgkDJqu5CBOHAD1FNvKSO6wnfX5wSB+IYDIfAV9wsmiTIMx6YO8psjMOd4flEmlKLALK6p17i79jhw==
dependencies:
- "@abp/core" "~7.2.0"
+ "@abp/core" "~7.2.1"
bootstrap "^5.1.3"
-"@abp/clipboard@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-7.2.0.tgz#3f8364668a8ecd4892919c84fd7569644b17bc7b"
- integrity sha512-1WJdWjm7lWG5DDGOUU4M5XRBJhZArrH8WNE/JFhEZw/4fQvTO9nWpFZb0Jj3642eLk0i+Bab0qtsZSHVqMNLQw==
+"@abp/clipboard@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-7.2.1.tgz#dab262b84aa956eeb3a145461b662c5ae851b4a8"
+ integrity sha512-72C3QMEMMtXzjv6GTJJiILSJ1ScBidcKdahrRLlomo4TgCIEgg1+oYL3Q0uyrlB5I0mUqBaf+qYlxXue8JdRAQ==
dependencies:
- "@abp/core" "~7.2.0"
+ "@abp/core" "~7.2.1"
clipboard "^2.0.8"
-"@abp/core@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/core/-/core-7.2.0.tgz#7fe85c5bf7afcdf5907ab90e2587caa1a352c05a"
- integrity sha512-J/pnKP5I4Hc3iY9QJJqBgevGSV7XteK3RLwV1b8dLGj4+12rgpqDYQCpENwEnVAlyBUU7QJJbb8gFNIO7DGzHA==
+"@abp/core@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/core/-/core-7.2.1.tgz#5685d615482daa032ab24f49aeb7fff3f50af898"
+ integrity sha512-N99Ee/rbtXFaV3vdGfv6Mbj1Zav73oBGGNbzmAiQaO/g1hda6ndzSC9WzRJkJ7MaJKTPNJx1ExBNEcNMw1P2UA==
dependencies:
- "@abp/utils" "~7.2.0"
+ "@abp/utils" "~7.2.1"
-"@abp/datatables.net-bs5@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-7.2.0.tgz#867f7b0dae84118c00cbdf499072d454d23d3a37"
- integrity sha512-VgdPEGHK1GeVpvsbYGWNqu4eW06LdC/Hw8Jv+hVf7oCJqJfobckeVkoNToQ7jsqQjl3Hh7xakf9dLXGvHtdKgg==
+"@abp/datatables.net-bs5@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-7.2.1.tgz#0474e874729a51a7e87f2ebfa931ecd8e6fe3eed"
+ integrity sha512-7AvNK0mYHWcdbQJAH6/PV9yjz/FbJlVHWP7mOREd6DIkg+Q8Ihmqjn8bnJyhN2UeRMTz9EZU2nO+E9oAllYlog==
dependencies:
- "@abp/datatables.net" "~7.2.0"
+ "@abp/datatables.net" "~7.2.1"
datatables.net-bs5 "^1.11.4"
-"@abp/datatables.net@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-7.2.0.tgz#8f5593f697d8e8577a9858a82969856cb6cb019a"
- integrity sha512-nL8JqESl8Oz8zpI3i2J4BngI1hwVMXdt9gElwdKgnuiPMbR+lLdQobiBLbnOYpMrulCivGZDor70iSH5OOoA/w==
+"@abp/datatables.net@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-7.2.1.tgz#30aeec4c37cc76e5c4dff78dee433c0b42599e41"
+ integrity sha512-AM6LonrGTOA2VyRme5rT/DcVX0TF2WxSRiM7vpTajq4A16O8yceos/XXop4QEGjGCPGbRqUuWQsIAxXRpcwYJQ==
dependencies:
- "@abp/jquery" "~7.2.0"
+ "@abp/jquery" "~7.2.1"
datatables.net "^1.11.4"
-"@abp/font-awesome@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-7.2.0.tgz#be94e415f8f5b47059adbc27f1c027b11c0883f1"
- integrity sha512-WQXSRVsJR8p1x69kb9xR9qjSxb+gGe5CUPN8aWYYCHDK5mppDP/YT53Nvx02Z201/r26aVa84nd8/+0yJvSKdw==
+"@abp/font-awesome@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-7.2.1.tgz#58751a48e7a648edb075d5a424c4ed9c6448e8e5"
+ integrity sha512-jIYHdXtijkd0b823Gd8pDqXmJ8luA0n4NqnF6MuZtQaz95CY8o0SNc7iGSJep3Gfi9XVVUVkXqWE2Gc82uyaNA==
dependencies:
- "@abp/core" "~7.2.0"
+ "@abp/core" "~7.2.1"
"@fortawesome/fontawesome-free" "^5.15.4"
-"@abp/jquery-form@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-7.2.0.tgz#5b243e08c2d3b9cb6928c902fd4431005a499bef"
- integrity sha512-Ug2vSv7oGeT44lUVyk4uFdgDtdwPe4gGBFXJmUPCfeHgn3yP8sqNNsMO3TRkwlh0jUdJhKC3d86ek9SX7CzZvw==
+"@abp/jquery-form@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-7.2.1.tgz#b09398cfb0abef4255a5bb1853c67ef9bfa76f49"
+ integrity sha512-Jqgog1AJHsCP3lLhUkCXMUzzk2XhAW9pje5dwSdKqE0/bg2OOGo1L3LKUFeEk9dWuMVRkrLRmfdcGRt1SRb4rQ==
dependencies:
- "@abp/jquery" "~7.2.0"
+ "@abp/jquery" "~7.2.1"
jquery-form "^4.3.0"
-"@abp/jquery-validation-unobtrusive@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-7.2.0.tgz#28a1055286985efcc47d464aac51d8b7f37945df"
- integrity sha512-QzCWTrW2bbK9jjXFJpt0TaY3Lk6wGmWnAZZO8lyIMJ1TCqZVI+J+nIMStsRgkFWu5YM5OwbyKjZAG5lb3MqoAw==
+"@abp/jquery-validation-unobtrusive@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-7.2.1.tgz#a62f85c7226d71588d1aa732739b3434c43f40e9"
+ integrity sha512-pEleVw7js8SpIRX73U5ccrfvc0H7Lxfa761wH9WglQOgC0Z1dAkJWbqr/6zKuUi3sVECYgFK8RcVm8/oPRGMzw==
dependencies:
- "@abp/jquery-validation" "~7.2.0"
+ "@abp/jquery-validation" "~7.2.1"
jquery-validation-unobtrusive "^3.2.12"
-"@abp/jquery-validation@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-7.2.0.tgz#321a7a46ec2ef3b079fd7734af38886c97232f11"
- integrity sha512-9hVaEPKZDU6UwyZt2xcJ9SK14gH4O4L1aHCIEuwWAnhKpOux5G4aPGzYqCGdUSf1MlzXf7iwkDKrTZLrPsOdrw==
+"@abp/jquery-validation@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-7.2.1.tgz#e8506f0513d26ae3550cb9410ce500e20065d9cb"
+ integrity sha512-QuCQV2UhKUXwOgYfwKMdu959lWSTOPR83wDTbuTAYd9nsOpCHmhDMApVT0hv44Jv+/ZmE360mkpogzkb0abxLg==
dependencies:
- "@abp/jquery" "~7.2.0"
+ "@abp/jquery" "~7.2.1"
jquery-validation "^1.19.3"
-"@abp/jquery@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-7.2.0.tgz#155ed7c7b116dbe360eac2132d9bf54407524acc"
- integrity sha512-IM4w4AgPoG4ftmbnhmDSOKNmvQW3d7cklNyf4cmV4o0oGOIbFyWKJwZQqYmZU9saoLHHElW5KKM4sPJ4lHcD0Q==
+"@abp/jquery@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-7.2.1.tgz#4ac9cd9ba4710f8dccaa145c17cef00e147efe6f"
+ integrity sha512-W2qE9LP6BCp1bdOMiup4MuB/R7Plj9se+1Sct1EeF1AnpNXv4IvVr5aGEy0/gKeeHvOrHB4wKIXcBhURFSAY1w==
dependencies:
- "@abp/core" "~7.2.0"
+ "@abp/core" "~7.2.1"
jquery "~3.6.0"
-"@abp/lodash@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-7.2.0.tgz#dad30f704641cd43fe98caa067b2aa86eca4cc7e"
- integrity sha512-wt94OjgGl8ZRpdbuE+OQFv0LOZSNACMAb5Grx/GuK2J2fORwHfISX9P0IA0MoF3SQTtfY7daJo02Wa2pO5DVRw==
+"@abp/lodash@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-7.2.1.tgz#36d60374a9fc2130c1f7bd264902d78221fa3b5b"
+ integrity sha512-XFZrxijDLhKqtL4LL3x9C/TvnJs/MIjmNwJ7+Ieg26fo2IFqYg2+hIieCUqGzn66IBwUAoRR0Cqa66erxijDlA==
dependencies:
- "@abp/core" "~7.2.0"
+ "@abp/core" "~7.2.1"
lodash "^4.17.21"
-"@abp/luxon@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-7.2.0.tgz#fe3fc84b26fdf824f510b45409e06c99a7081bab"
- integrity sha512-rS19oaECHKcRayKBfzDnaGXzy8TyZHopz9Wjib0WzeCTyRKgkT1TxCHvUH1DO2PWITODKamUyKSYjGKhGVADfg==
+"@abp/luxon@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-7.2.1.tgz#eb31dd7242be766f995954924e0127f2b58e4516"
+ integrity sha512-lSzulfTa4RPOcp80wmDUQFN9BatTASgYnYfu9RK9U/Fi2nV5KvqzUvRkB/XTitupLaoTJfV5h8Cpf47QMgiLSw==
dependencies:
- "@abp/core" "~7.2.0"
+ "@abp/core" "~7.2.1"
luxon "^2.3.0"
-"@abp/malihu-custom-scrollbar-plugin@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-7.2.0.tgz#975594f6c588807b05e2d5f1ed2b74dd652853be"
- integrity sha512-CieuDFEfnhPfoG5tqzSTKhS27SvaggZbDNmMtoDOd/L5CR7xm7QXfSadN+yFKqWDEO+gbLK//+xvEiyYepMNJA==
+"@abp/malihu-custom-scrollbar-plugin@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-7.2.1.tgz#d3b8aa15774a34f0abe704e416b00d8be76d3346"
+ integrity sha512-xqsjMQJez25mFwNRTUdHTQl78tYJ9+NEmEYLjpo+qRbs2hBExZQO67gTuO6TKvPRBCVgMiIcdpuegtoFhZLl5g==
dependencies:
- "@abp/core" "~7.2.0"
+ "@abp/core" "~7.2.1"
malihu-custom-scrollbar-plugin "^3.1.5"
-"@abp/moment@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-7.2.0.tgz#4ff2bc73008d1717ac5756ee4a7f5460cee51afb"
- integrity sha512-scD8UwmvNGOV75kK2wE8/Mhyp7iSRQWE6MtN3KgWg3AMdkDyrwnQtC55PzXLdec7XIgYbf+r8qSO+CFKaBwMGg==
+"@abp/moment@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-7.2.1.tgz#07bcaeb408b0025f2e8c2a7b259f5f27e05f8d25"
+ integrity sha512-L7EvEKEyl9RsPnSVbPwL3QC3xcKqkaLtZo75wTws2o5hXHs4f4mkADdnpfjCYFFZ+H0vMYjxzKYNI8rHm/ZU0g==
dependencies:
moment "^2.9.0"
-"@abp/owl.carousel@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/owl.carousel/-/owl.carousel-7.2.0.tgz#6aa7170ae5cf7ee3c51d27fac3567af8e38a55ca"
- integrity sha512-sl9FntbMbzbuW87qK3pm4lmJ6lpBc8hCwWm/E0LyCPQDbRl5Loc54PMua4l6EOL91EGBuNF/EzpjY8RDsOF0Lw==
+"@abp/owl.carousel@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/owl.carousel/-/owl.carousel-7.2.1.tgz#50ff8709fc25a6774695d6a7c0b77f300aeb4dc9"
+ integrity sha512-fxl4ig/oJxiNX+UqFM40yjEoe8P7kvubMqmhO1GVnZWoZrNDsNVnFVhMpps47c58WPQ1iRSYJivdmxXTUG5EUw==
dependencies:
- "@abp/core" "~7.2.0"
+ "@abp/core" "~7.2.1"
owl.carousel "^2.3.4"
-"@abp/prismjs@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-7.2.0.tgz#27225e6bbcba7e8e61805a352efc7a66872a1bc8"
- integrity sha512-JlL2dGL75B08C2taIS7PMRplAvRBwjVxBCGGeXnv1QgX3kXfxlzU6hJQq6AB+knGBOmDIK7wFoHKTdOn+/JA1w==
+"@abp/prismjs@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-7.2.1.tgz#322ea0c1368df89a8649af2ecf9660ae9c3eb12a"
+ integrity sha512-918o/Gev6f5tm6U0cO6S7Teygzre1x+HpzGH5WJdNx14/ZQ6wNrcsIMIjd84R6noUPVt83/eZ27N+RQtvntQLg==
dependencies:
- "@abp/clipboard" "~7.2.0"
- "@abp/core" "~7.2.0"
+ "@abp/clipboard" "~7.2.1"
+ "@abp/core" "~7.2.1"
prismjs "^1.26.0"
-"@abp/select2@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-7.2.0.tgz#fe612080ce2ebbec849663b64310d304f1a4d730"
- integrity sha512-sGpB+ANvCN87W30rlcqQkx1gTAkU6Zz9AxKaxbzFJI35y/j0dybrx32q2/eLg8hkjvQnJ93sNa8oc3fQQ7/7AA==
+"@abp/select2@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-7.2.1.tgz#c2d9494d09395691792ede04bf3d7173ebd35a95"
+ integrity sha512-AW1ylrPQv+WeT3HdQQqy09uvxSeWPzxLhVEylL+HIGFn3TwMCVo2DtgnxSYde4WCpDMRlYzkWlUBX5y9UzhArw==
dependencies:
- "@abp/core" "~7.2.0"
+ "@abp/core" "~7.2.1"
select2 "^4.0.13"
-"@abp/sweetalert2@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-7.2.0.tgz#787164525d741972bf51b5ac371de6d84432f635"
- integrity sha512-9nDv3lp/VGhHLHiLM6/ZL3nhKF7S9Ag4lsedULbGAx4aJK/OfVpkEYJ+4dDLWRHRTO1xrnlMmCPGEsRIUvDklA==
+"@abp/sweetalert2@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-7.2.1.tgz#ab11b3ef48ca55687a8afb0f8fca0b9e696d10a3"
+ integrity sha512-qGMQE7I3bnCN0xwliBP+y+1m5nx7mOYc2yuTozNLdNpmNgT0TAkjyvufn99JQBPoFju+VjMEjS5R005RbvLuVQ==
dependencies:
- "@abp/core" "~7.2.0"
+ "@abp/core" "~7.2.1"
sweetalert2 "^11.3.6"
-"@abp/timeago@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-7.2.0.tgz#c8798a15f3a76fe620fdf04b54b36b5271ff3934"
- integrity sha512-wKl5Cz5IQGlhYI5eEBxiu97iNigVZ/epBozFuH/iJOXNzbCtORnwuL1PfE7C5LRBkxCg4Y+2GDIuPMU1j1cOgQ==
+"@abp/timeago@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-7.2.1.tgz#0fad3c1d7b0678ca63a47f9ba6f5702a162f6857"
+ integrity sha512-1M6WWQ/kPdndMPhgJ5/I22NjxLgmHM4b4sLaKATIH5D4EM7aii22RiM5cSBVAKoJZjJ8S3R28g78zS01xKrSnw==
dependencies:
- "@abp/jquery" "~7.2.0"
+ "@abp/jquery" "~7.2.1"
timeago "^1.6.7"
-"@abp/toastr@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-7.2.0.tgz#f6e2dda276d92af97dbb5dd6747194b58aea8591"
- integrity sha512-QC7NwvVKL1de/PP4F3wT8k7GO0r2WmvhMwFegSnQl5ym/froLDhYAs9Ru8wRHFUF3vHAC7OwYHDGt6guJYR9qA==
+"@abp/toastr@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-7.2.1.tgz#6ddc793e0a66e2b1f9dd192530ad46aacfd60cb2"
+ integrity sha512-BkLohyVJxLx0aJ6WJ2iBRV8y20JWfgoRCpzGUCcAhAp+BBF9FVhVxxZo0loFjprFprvLjJK91Z0bErJW6BWvFQ==
dependencies:
- "@abp/jquery" "~7.2.0"
+ "@abp/jquery" "~7.2.1"
toastr "^2.1.4"
-"@abp/tui-editor@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/tui-editor/-/tui-editor-7.2.0.tgz#223771bf4b2e641488f3411e656caf5201fdbfd9"
- integrity sha512-YsBm1indYY1TRSULGIH7TmqrsW4nSuVm6ePNv8/0rv3UY/YYZJ+I6eiJt27X6NuKUfc3/4B2T5hS0s9ixAh0Xw==
+"@abp/tui-editor@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/tui-editor/-/tui-editor-7.2.1.tgz#c123431ef3ee9c665bfcf412ada4ef73dc1ec53d"
+ integrity sha512-f/LzTdSE0eilE29Npm22SxN4v8beL4O58ZqKE5OHLdL8i3pJfZO5DHe9dzTxalymc9j5i0DCZSzpLKsACp5JnQ==
dependencies:
- "@abp/jquery" "~7.2.0"
- "@abp/prismjs" "~7.2.0"
+ "@abp/jquery" "~7.2.1"
+ "@abp/prismjs" "~7.2.1"
-"@abp/utils@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-7.2.0.tgz#7d7c7fe8d45ee0a123d1d0ad8ce317e809cab02d"
- integrity sha512-GH6383eaRQllM8X+IMoYbBu7D0jSKA/h2f4jwxm0GmlFvxtRo69lqcnSIBDFocdzNotZbRAXuKEE+e8Wo1YH1Q==
+"@abp/utils@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-7.2.1.tgz#a0d5a6de02cb1b68d096399bb03771a8bb9b03b5"
+ integrity sha512-1QAdnFH9RD03w5mqNCz2G4mCuEPRgAJNLvFAEu9RTkL6EhOsCCQSG5mzA4cTWNDvVlNcUF8uyroXmlUvuzpYHg==
dependencies:
just-compare "^1.3.0"
diff --git a/modules/blogging/src/Volo.Blogging.Admin.Application.Contracts/Volo.Blogging.Admin.Application.Contracts.csproj b/modules/blogging/src/Volo.Blogging.Admin.Application.Contracts/Volo.Blogging.Admin.Application.Contracts.csproj
index 2af8db519c..c033f7bbd5 100644
--- a/modules/blogging/src/Volo.Blogging.Admin.Application.Contracts/Volo.Blogging.Admin.Application.Contracts.csproj
+++ b/modules/blogging/src/Volo.Blogging.Admin.Application.Contracts/Volo.Blogging.Admin.Application.Contracts.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Blogging.Admin.Application.Contracts
Volo.Blogging.Admin.Application.Contracts
true
diff --git a/modules/blogging/src/Volo.Blogging.Admin.HttpApi.Client/Volo.Blogging.Admin.HttpApi.Client.csproj b/modules/blogging/src/Volo.Blogging.Admin.HttpApi.Client/Volo.Blogging.Admin.HttpApi.Client.csproj
index 55b11f728d..6a666bb915 100644
--- a/modules/blogging/src/Volo.Blogging.Admin.HttpApi.Client/Volo.Blogging.Admin.HttpApi.Client.csproj
+++ b/modules/blogging/src/Volo.Blogging.Admin.HttpApi.Client/Volo.Blogging.Admin.HttpApi.Client.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Blogging.Admin.HttpApi.Client
Volo.Blogging.Admin.HttpApi.Client
diff --git a/modules/blogging/src/Volo.Blogging.Application.Contracts.Shared/Volo.Blogging.Application.Contracts.Shared.csproj b/modules/blogging/src/Volo.Blogging.Application.Contracts.Shared/Volo.Blogging.Application.Contracts.Shared.csproj
index 83c53a8d5d..2f5bce179d 100644
--- a/modules/blogging/src/Volo.Blogging.Application.Contracts.Shared/Volo.Blogging.Application.Contracts.Shared.csproj
+++ b/modules/blogging/src/Volo.Blogging.Application.Contracts.Shared/Volo.Blogging.Application.Contracts.Shared.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Blogging.Application.Contracts.Shared
Volo.Blogging.Application.Contracts.Shared
diff --git a/modules/blogging/src/Volo.Blogging.Application.Contracts/Volo.Blogging.Application.Contracts.csproj b/modules/blogging/src/Volo.Blogging.Application.Contracts/Volo.Blogging.Application.Contracts.csproj
index 2483d728b4..039ed80868 100644
--- a/modules/blogging/src/Volo.Blogging.Application.Contracts/Volo.Blogging.Application.Contracts.csproj
+++ b/modules/blogging/src/Volo.Blogging.Application.Contracts/Volo.Blogging.Application.Contracts.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Blogging.Application.Contracts
Volo.Blogging.Application.Contracts
true
diff --git a/modules/blogging/src/Volo.Blogging.Domain.Shared/Volo.Blogging.Domain.Shared.csproj b/modules/blogging/src/Volo.Blogging.Domain.Shared/Volo.Blogging.Domain.Shared.csproj
index c56b888d38..b18e3f290a 100644
--- a/modules/blogging/src/Volo.Blogging.Domain.Shared/Volo.Blogging.Domain.Shared.csproj
+++ b/modules/blogging/src/Volo.Blogging.Domain.Shared/Volo.Blogging.Domain.Shared.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Blogging.Domain.Shared
Volo.Blogging.Domain.Shared
true
diff --git a/modules/blogging/src/Volo.Blogging.HttpApi.Client/Volo.Blogging.HttpApi.Client.csproj b/modules/blogging/src/Volo.Blogging.HttpApi.Client/Volo.Blogging.HttpApi.Client.csproj
index 68b3775baa..c9e1ccfd75 100644
--- a/modules/blogging/src/Volo.Blogging.HttpApi.Client/Volo.Blogging.HttpApi.Client.csproj
+++ b/modules/blogging/src/Volo.Blogging.HttpApi.Client/Volo.Blogging.HttpApi.Client.csproj
@@ -4,7 +4,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.Blogging.HttpApi.Client
Volo.Blogging.HttpApi.Client
diff --git a/modules/blogging/test/Volo.Blogging.MongoDB.Tests/Volo.Blogging.MongoDB.Tests.csproj b/modules/blogging/test/Volo.Blogging.MongoDB.Tests/Volo.Blogging.MongoDB.Tests.csproj
index a2bfdf915a..4d32836bbe 100644
--- a/modules/blogging/test/Volo.Blogging.MongoDB.Tests/Volo.Blogging.MongoDB.Tests.csproj
+++ b/modules/blogging/test/Volo.Blogging.MongoDB.Tests/Volo.Blogging.MongoDB.Tests.csproj
@@ -7,7 +7,10 @@
-
+
+
+
+
diff --git a/modules/blogging/test/Volo.Blogging.MongoDB.Tests/Volo/Blogging/MongoDB/BloggingMongoDBTestModule.cs b/modules/blogging/test/Volo.Blogging.MongoDB.Tests/Volo/Blogging/MongoDB/BloggingMongoDBTestModule.cs
index 41942f75d0..364aa4dc0e 100644
--- a/modules/blogging/test/Volo.Blogging.MongoDB.Tests/Volo/Blogging/MongoDB/BloggingMongoDBTestModule.cs
+++ b/modules/blogging/test/Volo.Blogging.MongoDB.Tests/Volo/Blogging/MongoDB/BloggingMongoDBTestModule.cs
@@ -13,14 +13,9 @@ namespace Volo.Blogging.MongoDB
{
public override void ConfigureServices(ServiceConfigurationContext context)
{
- var stringArray = MongoDbFixture.ConnectionString.Split('?');
- var connectionString = stringArray[0].EnsureEndsWith('/') +
- "Db_" +
- Guid.NewGuid().ToString("N") + "/?" + stringArray[1];
-
Configure(options =>
{
- options.ConnectionStrings.Default = connectionString;
+ options.ConnectionStrings.Default = MongoDbFixture.GetRandomConnectionString();
});
}
}
diff --git a/modules/blogging/test/Volo.Blogging.MongoDB.Tests/Volo/Blogging/MongoDB/MongoDbFixture.cs b/modules/blogging/test/Volo.Blogging.MongoDB.Tests/Volo/Blogging/MongoDB/MongoDbFixture.cs
index 6da6ba3662..ad1fce80e5 100644
--- a/modules/blogging/test/Volo.Blogging.MongoDB.Tests/Volo/Blogging/MongoDB/MongoDbFixture.cs
+++ b/modules/blogging/test/Volo.Blogging.MongoDB.Tests/Volo/Blogging/MongoDB/MongoDbFixture.cs
@@ -1,22 +1,32 @@
using System;
-using Mongo2Go;
+using EphemeralMongo;
-namespace Volo.Blogging.MongoDB
+public class MongoDbFixture : IDisposable
{
- public class MongoDbFixture : IDisposable
- {
- private static readonly MongoDbRunner MongoDbRunner;
- public static readonly string ConnectionString;
+ public readonly static IMongoRunner MongoDbRunner;
- static MongoDbFixture()
+ static MongoDbFixture()
+ {
+ MongoDbRunner = MongoRunner.Run(new MongoRunnerOptions
{
- MongoDbRunner = MongoDbRunner.Start(singleNodeReplSet: true, singleNodeReplSetWaitTimeout: 20);
- ConnectionString = MongoDbRunner.ConnectionString;
- }
+ UseSingleNodeReplicaSet = true
+ });
+ }
- public void Dispose()
- {
- MongoDbRunner?.Dispose();
- }
+ public static string GetRandomConnectionString()
+ {
+ return GetConnectionString("Db_" + Guid.NewGuid().ToString("N"));
+ }
+
+ public static string GetConnectionString(string databaseName)
+ {
+ var stringArray = MongoDbRunner.ConnectionString.Split('?');
+ var connectionString = stringArray[0].EnsureEndsWith('/') + databaseName + "/?" + stringArray[1];
+ return connectionString;
+ }
+
+ public void Dispose()
+ {
+ MongoDbRunner?.Dispose();
}
}
diff --git a/modules/client-simulation/demo/Volo.ClientSimulation.Demo/package.json b/modules/client-simulation/demo/Volo.ClientSimulation.Demo/package.json
index 3a4341992b..39563c4d9c 100644
--- a/modules/client-simulation/demo/Volo.ClientSimulation.Demo/package.json
+++ b/modules/client-simulation/demo/Volo.ClientSimulation.Demo/package.json
@@ -3,6 +3,6 @@
"name": "client-simulation-web",
"private": true,
"dependencies": {
- "@abp/aspnetcore.mvc.ui.theme.basic": "~7.2.0-rc.2"
+ "@abp/aspnetcore.mvc.ui.theme.basic": "~7.2.1"
}
}
diff --git a/modules/client-simulation/demo/Volo.ClientSimulation.Demo/yarn.lock b/modules/client-simulation/demo/Volo.ClientSimulation.Demo/yarn.lock
index 8813b33030..02eb319962 100644
--- a/modules/client-simulation/demo/Volo.ClientSimulation.Demo/yarn.lock
+++ b/modules/client-simulation/demo/Volo.ClientSimulation.Demo/yarn.lock
@@ -2,39 +2,39 @@
# yarn lockfile v1
-"@abp/aspnetcore.mvc.ui.theme.basic@~7.2.0-rc.2":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-7.2.0.tgz#fca379e596ec39de4057b9e522e30e0aee324e87"
- integrity sha512-VWBtDqjak9iH0c0e/FmXqW8Riy7CsVjo2VVP5C8pO36BP/IubAnSa02xGek6Yy34vqIu40J67QTNljR66ZlEvQ==
- dependencies:
- "@abp/aspnetcore.mvc.ui.theme.shared" "~7.2.0"
-
-"@abp/aspnetcore.mvc.ui.theme.shared@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-7.2.0.tgz#fbdf50b0b66b32c8106714beab4b453029c8e533"
- integrity sha512-SaTCFSoZ9VJiv0gdxoXsSn/kmLdDH9JspEDi2xvrDFVp+7PYnQrn44ngQxzsi4ykhVkP5wCf56AEkauDKSFnmw==
- dependencies:
- "@abp/aspnetcore.mvc.ui" "~7.2.0"
- "@abp/bootstrap" "~7.2.0"
- "@abp/bootstrap-datepicker" "~7.2.0"
- "@abp/bootstrap-daterangepicker" "~7.2.0"
- "@abp/datatables.net-bs5" "~7.2.0"
- "@abp/font-awesome" "~7.2.0"
- "@abp/jquery-form" "~7.2.0"
- "@abp/jquery-validation-unobtrusive" "~7.2.0"
- "@abp/lodash" "~7.2.0"
- "@abp/luxon" "~7.2.0"
- "@abp/malihu-custom-scrollbar-plugin" "~7.2.0"
- "@abp/moment" "~7.2.0"
- "@abp/select2" "~7.2.0"
- "@abp/sweetalert2" "~7.2.0"
- "@abp/timeago" "~7.2.0"
- "@abp/toastr" "~7.2.0"
-
-"@abp/aspnetcore.mvc.ui@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-7.2.0.tgz#d3198a4a881c73a86dd2d4eb0569388354526481"
- integrity sha512-QsNHcJ4c9KeAFOPB5bec1i/VOkQ2ZCfhO5qOZMbVls4uy5VDLZtg93xyYaFhQilu1mzXGbfEdPqHK7sArQj7Eg==
+"@abp/aspnetcore.mvc.ui.theme.basic@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-7.2.1.tgz#34a948ef593442995bf663fd5c0d3ab4fd7390e8"
+ integrity sha512-AxtugI8e8n6BDklLV/z9oZQzmpF3oEhIVyr1dxv55hIBe8GcOZHA/9CqKHY/OpSwch7ka0EEPrHawCvylcNAdQ==
+ dependencies:
+ "@abp/aspnetcore.mvc.ui.theme.shared" "~7.2.1"
+
+"@abp/aspnetcore.mvc.ui.theme.shared@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-7.2.1.tgz#68903cb3fafca670d603e658f20e435734e3d738"
+ integrity sha512-B7gGe8qAjvMsLfqxFVdvGFfMylV3NQzthXT/BMoq1MtgMdLKrrpeu6Oz3mIr68IuFlA38edqlm8Scy+iknD+Xg==
+ dependencies:
+ "@abp/aspnetcore.mvc.ui" "~7.2.1"
+ "@abp/bootstrap" "~7.2.1"
+ "@abp/bootstrap-datepicker" "~7.2.1"
+ "@abp/bootstrap-daterangepicker" "~7.2.1"
+ "@abp/datatables.net-bs5" "~7.2.1"
+ "@abp/font-awesome" "~7.2.1"
+ "@abp/jquery-form" "~7.2.1"
+ "@abp/jquery-validation-unobtrusive" "~7.2.1"
+ "@abp/lodash" "~7.2.1"
+ "@abp/luxon" "~7.2.1"
+ "@abp/malihu-custom-scrollbar-plugin" "~7.2.1"
+ "@abp/moment" "~7.2.1"
+ "@abp/select2" "~7.2.1"
+ "@abp/sweetalert2" "~7.2.1"
+ "@abp/timeago" "~7.2.1"
+ "@abp/toastr" "~7.2.1"
+
+"@abp/aspnetcore.mvc.ui@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-7.2.1.tgz#b4ae5dcdb90983673092dbfee93c16f21cbb21fe"
+ integrity sha512-edBAWEKQnUdH8jgY+QDECs3BFu0qIXbMV/AiTH9j64uo4ADQ6rgJ6Uq7xy6YtxJ0uImFkgLXDd9LYQEPvU43Bg==
dependencies:
ansi-colors "^4.1.1"
extend-object "^1.0.0"
@@ -43,158 +43,158 @@
merge-stream "^2.0.0"
micromatch "^4.0.2"
-"@abp/bootstrap-datepicker@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-7.2.0.tgz#10a3e810edf47f0acd82ac5dadf3d65bc10eb1b5"
- integrity sha512-uFmaiAX3jnACYsvI+5rRjMmJ8dFX53rNUG7NyCEZ+Btml6MwhoV1LemkCXsWj9iiL6XVmIO9A2bjdhlYI7Gvxw==
+"@abp/bootstrap-datepicker@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-7.2.1.tgz#eca6c1138074ce222ff6c474bc51f4fbe05882c3"
+ integrity sha512-DUBEz8wzsWJlEfQ7CZJYemLE/wNYyY7LtWRBRjNFndS8P2xo3FP4xuh0mnovSZ3AXPy7oAAKg0zayFzf3XS4aw==
dependencies:
bootstrap-datepicker "^1.9.0"
-"@abp/bootstrap-daterangepicker@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-7.2.0.tgz#80ccb46058f141e5b497181624abfd29d5f51efe"
- integrity sha512-Koapg+vD8trKHk92awjIQqdcxOYqP12EpePjxk08TFMoXEeSkYUU4dyIQ7frmM8ExYvaBo3rDPsr2eDSVgcVvQ==
+"@abp/bootstrap-daterangepicker@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-7.2.1.tgz#ad236d026c3596e71a6a2088e5332e00d62c8ff7"
+ integrity sha512-WF/3qQobtvizWGmycgkzHMIjHJoLYAnCsi+vJPzv+VqvGstnQOgkz/rlfcu7uAp9y5H4OWdSAbkOj9eELNfxlA==
dependencies:
bootstrap-daterangepicker "^3.1.0"
-"@abp/bootstrap@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-7.2.0.tgz#87cfe5c3e6c210fe483e061b4127edc19998089c"
- integrity sha512-qa4KUhPe+aBwsN2QmuksmsxLgsONgouKVRYXRo9go7TmjcKwzyB4eryWTkV1p8drxzsY+Uzllapy6oJ9e1fV1A==
+"@abp/bootstrap@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-7.2.1.tgz#94d8186af2f1a1ed4d558756ffa18fd43f26e318"
+ integrity sha512-nU3mBK0VVgkDJqu5CBOHAD1FNvKSO6wnfX5wSB+IYDIfAV9wsmiTIMx6YO8psjMOd4flEmlKLALK6p17i79jhw==
dependencies:
- "@abp/core" "~7.2.0"
+ "@abp/core" "~7.2.1"
bootstrap "^5.1.3"
-"@abp/core@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/core/-/core-7.2.0.tgz#7fe85c5bf7afcdf5907ab90e2587caa1a352c05a"
- integrity sha512-J/pnKP5I4Hc3iY9QJJqBgevGSV7XteK3RLwV1b8dLGj4+12rgpqDYQCpENwEnVAlyBUU7QJJbb8gFNIO7DGzHA==
+"@abp/core@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/core/-/core-7.2.1.tgz#5685d615482daa032ab24f49aeb7fff3f50af898"
+ integrity sha512-N99Ee/rbtXFaV3vdGfv6Mbj1Zav73oBGGNbzmAiQaO/g1hda6ndzSC9WzRJkJ7MaJKTPNJx1ExBNEcNMw1P2UA==
dependencies:
- "@abp/utils" "~7.2.0"
+ "@abp/utils" "~7.2.1"
-"@abp/datatables.net-bs5@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-7.2.0.tgz#867f7b0dae84118c00cbdf499072d454d23d3a37"
- integrity sha512-VgdPEGHK1GeVpvsbYGWNqu4eW06LdC/Hw8Jv+hVf7oCJqJfobckeVkoNToQ7jsqQjl3Hh7xakf9dLXGvHtdKgg==
+"@abp/datatables.net-bs5@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-7.2.1.tgz#0474e874729a51a7e87f2ebfa931ecd8e6fe3eed"
+ integrity sha512-7AvNK0mYHWcdbQJAH6/PV9yjz/FbJlVHWP7mOREd6DIkg+Q8Ihmqjn8bnJyhN2UeRMTz9EZU2nO+E9oAllYlog==
dependencies:
- "@abp/datatables.net" "~7.2.0"
+ "@abp/datatables.net" "~7.2.1"
datatables.net-bs5 "^1.11.4"
-"@abp/datatables.net@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-7.2.0.tgz#8f5593f697d8e8577a9858a82969856cb6cb019a"
- integrity sha512-nL8JqESl8Oz8zpI3i2J4BngI1hwVMXdt9gElwdKgnuiPMbR+lLdQobiBLbnOYpMrulCivGZDor70iSH5OOoA/w==
+"@abp/datatables.net@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-7.2.1.tgz#30aeec4c37cc76e5c4dff78dee433c0b42599e41"
+ integrity sha512-AM6LonrGTOA2VyRme5rT/DcVX0TF2WxSRiM7vpTajq4A16O8yceos/XXop4QEGjGCPGbRqUuWQsIAxXRpcwYJQ==
dependencies:
- "@abp/jquery" "~7.2.0"
+ "@abp/jquery" "~7.2.1"
datatables.net "^1.11.4"
-"@abp/font-awesome@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-7.2.0.tgz#be94e415f8f5b47059adbc27f1c027b11c0883f1"
- integrity sha512-WQXSRVsJR8p1x69kb9xR9qjSxb+gGe5CUPN8aWYYCHDK5mppDP/YT53Nvx02Z201/r26aVa84nd8/+0yJvSKdw==
+"@abp/font-awesome@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-7.2.1.tgz#58751a48e7a648edb075d5a424c4ed9c6448e8e5"
+ integrity sha512-jIYHdXtijkd0b823Gd8pDqXmJ8luA0n4NqnF6MuZtQaz95CY8o0SNc7iGSJep3Gfi9XVVUVkXqWE2Gc82uyaNA==
dependencies:
- "@abp/core" "~7.2.0"
+ "@abp/core" "~7.2.1"
"@fortawesome/fontawesome-free" "^5.15.4"
-"@abp/jquery-form@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-7.2.0.tgz#5b243e08c2d3b9cb6928c902fd4431005a499bef"
- integrity sha512-Ug2vSv7oGeT44lUVyk4uFdgDtdwPe4gGBFXJmUPCfeHgn3yP8sqNNsMO3TRkwlh0jUdJhKC3d86ek9SX7CzZvw==
+"@abp/jquery-form@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-7.2.1.tgz#b09398cfb0abef4255a5bb1853c67ef9bfa76f49"
+ integrity sha512-Jqgog1AJHsCP3lLhUkCXMUzzk2XhAW9pje5dwSdKqE0/bg2OOGo1L3LKUFeEk9dWuMVRkrLRmfdcGRt1SRb4rQ==
dependencies:
- "@abp/jquery" "~7.2.0"
+ "@abp/jquery" "~7.2.1"
jquery-form "^4.3.0"
-"@abp/jquery-validation-unobtrusive@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-7.2.0.tgz#28a1055286985efcc47d464aac51d8b7f37945df"
- integrity sha512-QzCWTrW2bbK9jjXFJpt0TaY3Lk6wGmWnAZZO8lyIMJ1TCqZVI+J+nIMStsRgkFWu5YM5OwbyKjZAG5lb3MqoAw==
+"@abp/jquery-validation-unobtrusive@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-7.2.1.tgz#a62f85c7226d71588d1aa732739b3434c43f40e9"
+ integrity sha512-pEleVw7js8SpIRX73U5ccrfvc0H7Lxfa761wH9WglQOgC0Z1dAkJWbqr/6zKuUi3sVECYgFK8RcVm8/oPRGMzw==
dependencies:
- "@abp/jquery-validation" "~7.2.0"
+ "@abp/jquery-validation" "~7.2.1"
jquery-validation-unobtrusive "^3.2.12"
-"@abp/jquery-validation@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-7.2.0.tgz#321a7a46ec2ef3b079fd7734af38886c97232f11"
- integrity sha512-9hVaEPKZDU6UwyZt2xcJ9SK14gH4O4L1aHCIEuwWAnhKpOux5G4aPGzYqCGdUSf1MlzXf7iwkDKrTZLrPsOdrw==
+"@abp/jquery-validation@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-7.2.1.tgz#e8506f0513d26ae3550cb9410ce500e20065d9cb"
+ integrity sha512-QuCQV2UhKUXwOgYfwKMdu959lWSTOPR83wDTbuTAYd9nsOpCHmhDMApVT0hv44Jv+/ZmE360mkpogzkb0abxLg==
dependencies:
- "@abp/jquery" "~7.2.0"
+ "@abp/jquery" "~7.2.1"
jquery-validation "^1.19.3"
-"@abp/jquery@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-7.2.0.tgz#155ed7c7b116dbe360eac2132d9bf54407524acc"
- integrity sha512-IM4w4AgPoG4ftmbnhmDSOKNmvQW3d7cklNyf4cmV4o0oGOIbFyWKJwZQqYmZU9saoLHHElW5KKM4sPJ4lHcD0Q==
+"@abp/jquery@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-7.2.1.tgz#4ac9cd9ba4710f8dccaa145c17cef00e147efe6f"
+ integrity sha512-W2qE9LP6BCp1bdOMiup4MuB/R7Plj9se+1Sct1EeF1AnpNXv4IvVr5aGEy0/gKeeHvOrHB4wKIXcBhURFSAY1w==
dependencies:
- "@abp/core" "~7.2.0"
+ "@abp/core" "~7.2.1"
jquery "~3.6.0"
-"@abp/lodash@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-7.2.0.tgz#dad30f704641cd43fe98caa067b2aa86eca4cc7e"
- integrity sha512-wt94OjgGl8ZRpdbuE+OQFv0LOZSNACMAb5Grx/GuK2J2fORwHfISX9P0IA0MoF3SQTtfY7daJo02Wa2pO5DVRw==
+"@abp/lodash@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-7.2.1.tgz#36d60374a9fc2130c1f7bd264902d78221fa3b5b"
+ integrity sha512-XFZrxijDLhKqtL4LL3x9C/TvnJs/MIjmNwJ7+Ieg26fo2IFqYg2+hIieCUqGzn66IBwUAoRR0Cqa66erxijDlA==
dependencies:
- "@abp/core" "~7.2.0"
+ "@abp/core" "~7.2.1"
lodash "^4.17.21"
-"@abp/luxon@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-7.2.0.tgz#fe3fc84b26fdf824f510b45409e06c99a7081bab"
- integrity sha512-rS19oaECHKcRayKBfzDnaGXzy8TyZHopz9Wjib0WzeCTyRKgkT1TxCHvUH1DO2PWITODKamUyKSYjGKhGVADfg==
+"@abp/luxon@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-7.2.1.tgz#eb31dd7242be766f995954924e0127f2b58e4516"
+ integrity sha512-lSzulfTa4RPOcp80wmDUQFN9BatTASgYnYfu9RK9U/Fi2nV5KvqzUvRkB/XTitupLaoTJfV5h8Cpf47QMgiLSw==
dependencies:
- "@abp/core" "~7.2.0"
+ "@abp/core" "~7.2.1"
luxon "^2.3.0"
-"@abp/malihu-custom-scrollbar-plugin@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-7.2.0.tgz#975594f6c588807b05e2d5f1ed2b74dd652853be"
- integrity sha512-CieuDFEfnhPfoG5tqzSTKhS27SvaggZbDNmMtoDOd/L5CR7xm7QXfSadN+yFKqWDEO+gbLK//+xvEiyYepMNJA==
+"@abp/malihu-custom-scrollbar-plugin@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-7.2.1.tgz#d3b8aa15774a34f0abe704e416b00d8be76d3346"
+ integrity sha512-xqsjMQJez25mFwNRTUdHTQl78tYJ9+NEmEYLjpo+qRbs2hBExZQO67gTuO6TKvPRBCVgMiIcdpuegtoFhZLl5g==
dependencies:
- "@abp/core" "~7.2.0"
+ "@abp/core" "~7.2.1"
malihu-custom-scrollbar-plugin "^3.1.5"
-"@abp/moment@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-7.2.0.tgz#4ff2bc73008d1717ac5756ee4a7f5460cee51afb"
- integrity sha512-scD8UwmvNGOV75kK2wE8/Mhyp7iSRQWE6MtN3KgWg3AMdkDyrwnQtC55PzXLdec7XIgYbf+r8qSO+CFKaBwMGg==
+"@abp/moment@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-7.2.1.tgz#07bcaeb408b0025f2e8c2a7b259f5f27e05f8d25"
+ integrity sha512-L7EvEKEyl9RsPnSVbPwL3QC3xcKqkaLtZo75wTws2o5hXHs4f4mkADdnpfjCYFFZ+H0vMYjxzKYNI8rHm/ZU0g==
dependencies:
moment "^2.9.0"
-"@abp/select2@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-7.2.0.tgz#fe612080ce2ebbec849663b64310d304f1a4d730"
- integrity sha512-sGpB+ANvCN87W30rlcqQkx1gTAkU6Zz9AxKaxbzFJI35y/j0dybrx32q2/eLg8hkjvQnJ93sNa8oc3fQQ7/7AA==
+"@abp/select2@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-7.2.1.tgz#c2d9494d09395691792ede04bf3d7173ebd35a95"
+ integrity sha512-AW1ylrPQv+WeT3HdQQqy09uvxSeWPzxLhVEylL+HIGFn3TwMCVo2DtgnxSYde4WCpDMRlYzkWlUBX5y9UzhArw==
dependencies:
- "@abp/core" "~7.2.0"
+ "@abp/core" "~7.2.1"
select2 "^4.0.13"
-"@abp/sweetalert2@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-7.2.0.tgz#787164525d741972bf51b5ac371de6d84432f635"
- integrity sha512-9nDv3lp/VGhHLHiLM6/ZL3nhKF7S9Ag4lsedULbGAx4aJK/OfVpkEYJ+4dDLWRHRTO1xrnlMmCPGEsRIUvDklA==
+"@abp/sweetalert2@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-7.2.1.tgz#ab11b3ef48ca55687a8afb0f8fca0b9e696d10a3"
+ integrity sha512-qGMQE7I3bnCN0xwliBP+y+1m5nx7mOYc2yuTozNLdNpmNgT0TAkjyvufn99JQBPoFju+VjMEjS5R005RbvLuVQ==
dependencies:
- "@abp/core" "~7.2.0"
+ "@abp/core" "~7.2.1"
sweetalert2 "^11.3.6"
-"@abp/timeago@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-7.2.0.tgz#c8798a15f3a76fe620fdf04b54b36b5271ff3934"
- integrity sha512-wKl5Cz5IQGlhYI5eEBxiu97iNigVZ/epBozFuH/iJOXNzbCtORnwuL1PfE7C5LRBkxCg4Y+2GDIuPMU1j1cOgQ==
+"@abp/timeago@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-7.2.1.tgz#0fad3c1d7b0678ca63a47f9ba6f5702a162f6857"
+ integrity sha512-1M6WWQ/kPdndMPhgJ5/I22NjxLgmHM4b4sLaKATIH5D4EM7aii22RiM5cSBVAKoJZjJ8S3R28g78zS01xKrSnw==
dependencies:
- "@abp/jquery" "~7.2.0"
+ "@abp/jquery" "~7.2.1"
timeago "^1.6.7"
-"@abp/toastr@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-7.2.0.tgz#f6e2dda276d92af97dbb5dd6747194b58aea8591"
- integrity sha512-QC7NwvVKL1de/PP4F3wT8k7GO0r2WmvhMwFegSnQl5ym/froLDhYAs9Ru8wRHFUF3vHAC7OwYHDGt6guJYR9qA==
+"@abp/toastr@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-7.2.1.tgz#6ddc793e0a66e2b1f9dd192530ad46aacfd60cb2"
+ integrity sha512-BkLohyVJxLx0aJ6WJ2iBRV8y20JWfgoRCpzGUCcAhAp+BBF9FVhVxxZo0loFjprFprvLjJK91Z0bErJW6BWvFQ==
dependencies:
- "@abp/jquery" "~7.2.0"
+ "@abp/jquery" "~7.2.1"
toastr "^2.1.4"
-"@abp/utils@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-7.2.0.tgz#7d7c7fe8d45ee0a123d1d0ad8ce317e809cab02d"
- integrity sha512-GH6383eaRQllM8X+IMoYbBu7D0jSKA/h2f4jwxm0GmlFvxtRo69lqcnSIBDFocdzNotZbRAXuKEE+e8Wo1YH1Q==
+"@abp/utils@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-7.2.1.tgz#a0d5a6de02cb1b68d096399bb03771a8bb9b03b5"
+ integrity sha512-1QAdnFH9RD03w5mqNCz2G4mCuEPRgAJNLvFAEu9RTkL6EhOsCCQSG5mzA4cTWNDvVlNcUF8uyroXmlUvuzpYHg==
dependencies:
just-compare "^1.3.0"
diff --git a/modules/cms-kit/angular/package.json b/modules/cms-kit/angular/package.json
index afe5e255d3..503852b7f7 100644
--- a/modules/cms-kit/angular/package.json
+++ b/modules/cms-kit/angular/package.json
@@ -15,11 +15,11 @@
},
"private": true,
"dependencies": {
- "@abp/ng.account": "~7.2.0-rc.2",
- "@abp/ng.identity": "~7.2.0-rc.2",
- "@abp/ng.setting-management": "~7.2.0-rc.2",
- "@abp/ng.tenant-management": "~7.2.0-rc.2",
- "@abp/ng.theme.basic": "~7.2.0-rc.2",
+ "@abp/ng.account": "~7.2.1",
+ "@abp/ng.identity": "~7.2.1",
+ "@abp/ng.setting-management": "~7.2.1",
+ "@abp/ng.tenant-management": "~7.2.1",
+ "@abp/ng.theme.basic": "~7.2.1",
"@angular/animations": "~10.0.0",
"@angular/common": "~10.0.0",
"@angular/compiler": "~10.0.0",
diff --git a/modules/cms-kit/angular/projects/cms-kit/package.json b/modules/cms-kit/angular/projects/cms-kit/package.json
index 162902d27b..35a11493f0 100644
--- a/modules/cms-kit/angular/projects/cms-kit/package.json
+++ b/modules/cms-kit/angular/projects/cms-kit/package.json
@@ -4,8 +4,8 @@
"peerDependencies": {
"@angular/common": "^9.1.11",
"@angular/core": "^9.1.11",
- "@abp/ng.core": ">=7.2.0-rc.2",
- "@abp/ng.theme.shared": ">=7.2.0-rc.2"
+ "@abp/ng.core": ">=7.2.1",
+ "@abp/ng.theme.shared": ">=7.2.1"
},
"dependencies": {
"tslib": "^2.0.0"
diff --git a/modules/cms-kit/host/Volo.CmsKit.Host.Shared/Volo.CmsKit.Host.Shared.csproj b/modules/cms-kit/host/Volo.CmsKit.Host.Shared/Volo.CmsKit.Host.Shared.csproj
index aca54af174..ca4506de62 100644
--- a/modules/cms-kit/host/Volo.CmsKit.Host.Shared/Volo.CmsKit.Host.Shared.csproj
+++ b/modules/cms-kit/host/Volo.CmsKit.Host.Shared/Volo.CmsKit.Host.Shared.csproj
@@ -1,7 +1,7 @@
- netstandard2.0
+ netstandard2.0;netstandard2.1;net7.0
Volo.CmsKit
diff --git a/modules/cms-kit/host/Volo.CmsKit.IdentityServer/package.json b/modules/cms-kit/host/Volo.CmsKit.IdentityServer/package.json
index 7a74e0cd59..7691fde3ac 100644
--- a/modules/cms-kit/host/Volo.CmsKit.IdentityServer/package.json
+++ b/modules/cms-kit/host/Volo.CmsKit.IdentityServer/package.json
@@ -3,6 +3,6 @@
"name": "my-app-identityserver",
"private": true,
"dependencies": {
- "@abp/aspnetcore.mvc.ui.theme.basic": "~7.2.0-rc.2"
+ "@abp/aspnetcore.mvc.ui.theme.basic": "~7.2.1"
}
}
diff --git a/modules/cms-kit/host/Volo.CmsKit.IdentityServer/yarn.lock b/modules/cms-kit/host/Volo.CmsKit.IdentityServer/yarn.lock
index 8813b33030..02eb319962 100644
--- a/modules/cms-kit/host/Volo.CmsKit.IdentityServer/yarn.lock
+++ b/modules/cms-kit/host/Volo.CmsKit.IdentityServer/yarn.lock
@@ -2,39 +2,39 @@
# yarn lockfile v1
-"@abp/aspnetcore.mvc.ui.theme.basic@~7.2.0-rc.2":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-7.2.0.tgz#fca379e596ec39de4057b9e522e30e0aee324e87"
- integrity sha512-VWBtDqjak9iH0c0e/FmXqW8Riy7CsVjo2VVP5C8pO36BP/IubAnSa02xGek6Yy34vqIu40J67QTNljR66ZlEvQ==
- dependencies:
- "@abp/aspnetcore.mvc.ui.theme.shared" "~7.2.0"
-
-"@abp/aspnetcore.mvc.ui.theme.shared@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-7.2.0.tgz#fbdf50b0b66b32c8106714beab4b453029c8e533"
- integrity sha512-SaTCFSoZ9VJiv0gdxoXsSn/kmLdDH9JspEDi2xvrDFVp+7PYnQrn44ngQxzsi4ykhVkP5wCf56AEkauDKSFnmw==
- dependencies:
- "@abp/aspnetcore.mvc.ui" "~7.2.0"
- "@abp/bootstrap" "~7.2.0"
- "@abp/bootstrap-datepicker" "~7.2.0"
- "@abp/bootstrap-daterangepicker" "~7.2.0"
- "@abp/datatables.net-bs5" "~7.2.0"
- "@abp/font-awesome" "~7.2.0"
- "@abp/jquery-form" "~7.2.0"
- "@abp/jquery-validation-unobtrusive" "~7.2.0"
- "@abp/lodash" "~7.2.0"
- "@abp/luxon" "~7.2.0"
- "@abp/malihu-custom-scrollbar-plugin" "~7.2.0"
- "@abp/moment" "~7.2.0"
- "@abp/select2" "~7.2.0"
- "@abp/sweetalert2" "~7.2.0"
- "@abp/timeago" "~7.2.0"
- "@abp/toastr" "~7.2.0"
-
-"@abp/aspnetcore.mvc.ui@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-7.2.0.tgz#d3198a4a881c73a86dd2d4eb0569388354526481"
- integrity sha512-QsNHcJ4c9KeAFOPB5bec1i/VOkQ2ZCfhO5qOZMbVls4uy5VDLZtg93xyYaFhQilu1mzXGbfEdPqHK7sArQj7Eg==
+"@abp/aspnetcore.mvc.ui.theme.basic@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-7.2.1.tgz#34a948ef593442995bf663fd5c0d3ab4fd7390e8"
+ integrity sha512-AxtugI8e8n6BDklLV/z9oZQzmpF3oEhIVyr1dxv55hIBe8GcOZHA/9CqKHY/OpSwch7ka0EEPrHawCvylcNAdQ==
+ dependencies:
+ "@abp/aspnetcore.mvc.ui.theme.shared" "~7.2.1"
+
+"@abp/aspnetcore.mvc.ui.theme.shared@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-7.2.1.tgz#68903cb3fafca670d603e658f20e435734e3d738"
+ integrity sha512-B7gGe8qAjvMsLfqxFVdvGFfMylV3NQzthXT/BMoq1MtgMdLKrrpeu6Oz3mIr68IuFlA38edqlm8Scy+iknD+Xg==
+ dependencies:
+ "@abp/aspnetcore.mvc.ui" "~7.2.1"
+ "@abp/bootstrap" "~7.2.1"
+ "@abp/bootstrap-datepicker" "~7.2.1"
+ "@abp/bootstrap-daterangepicker" "~7.2.1"
+ "@abp/datatables.net-bs5" "~7.2.1"
+ "@abp/font-awesome" "~7.2.1"
+ "@abp/jquery-form" "~7.2.1"
+ "@abp/jquery-validation-unobtrusive" "~7.2.1"
+ "@abp/lodash" "~7.2.1"
+ "@abp/luxon" "~7.2.1"
+ "@abp/malihu-custom-scrollbar-plugin" "~7.2.1"
+ "@abp/moment" "~7.2.1"
+ "@abp/select2" "~7.2.1"
+ "@abp/sweetalert2" "~7.2.1"
+ "@abp/timeago" "~7.2.1"
+ "@abp/toastr" "~7.2.1"
+
+"@abp/aspnetcore.mvc.ui@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-7.2.1.tgz#b4ae5dcdb90983673092dbfee93c16f21cbb21fe"
+ integrity sha512-edBAWEKQnUdH8jgY+QDECs3BFu0qIXbMV/AiTH9j64uo4ADQ6rgJ6Uq7xy6YtxJ0uImFkgLXDd9LYQEPvU43Bg==
dependencies:
ansi-colors "^4.1.1"
extend-object "^1.0.0"
@@ -43,158 +43,158 @@
merge-stream "^2.0.0"
micromatch "^4.0.2"
-"@abp/bootstrap-datepicker@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-7.2.0.tgz#10a3e810edf47f0acd82ac5dadf3d65bc10eb1b5"
- integrity sha512-uFmaiAX3jnACYsvI+5rRjMmJ8dFX53rNUG7NyCEZ+Btml6MwhoV1LemkCXsWj9iiL6XVmIO9A2bjdhlYI7Gvxw==
+"@abp/bootstrap-datepicker@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-7.2.1.tgz#eca6c1138074ce222ff6c474bc51f4fbe05882c3"
+ integrity sha512-DUBEz8wzsWJlEfQ7CZJYemLE/wNYyY7LtWRBRjNFndS8P2xo3FP4xuh0mnovSZ3AXPy7oAAKg0zayFzf3XS4aw==
dependencies:
bootstrap-datepicker "^1.9.0"
-"@abp/bootstrap-daterangepicker@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-7.2.0.tgz#80ccb46058f141e5b497181624abfd29d5f51efe"
- integrity sha512-Koapg+vD8trKHk92awjIQqdcxOYqP12EpePjxk08TFMoXEeSkYUU4dyIQ7frmM8ExYvaBo3rDPsr2eDSVgcVvQ==
+"@abp/bootstrap-daterangepicker@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-7.2.1.tgz#ad236d026c3596e71a6a2088e5332e00d62c8ff7"
+ integrity sha512-WF/3qQobtvizWGmycgkzHMIjHJoLYAnCsi+vJPzv+VqvGstnQOgkz/rlfcu7uAp9y5H4OWdSAbkOj9eELNfxlA==
dependencies:
bootstrap-daterangepicker "^3.1.0"
-"@abp/bootstrap@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-7.2.0.tgz#87cfe5c3e6c210fe483e061b4127edc19998089c"
- integrity sha512-qa4KUhPe+aBwsN2QmuksmsxLgsONgouKVRYXRo9go7TmjcKwzyB4eryWTkV1p8drxzsY+Uzllapy6oJ9e1fV1A==
+"@abp/bootstrap@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-7.2.1.tgz#94d8186af2f1a1ed4d558756ffa18fd43f26e318"
+ integrity sha512-nU3mBK0VVgkDJqu5CBOHAD1FNvKSO6wnfX5wSB+IYDIfAV9wsmiTIMx6YO8psjMOd4flEmlKLALK6p17i79jhw==
dependencies:
- "@abp/core" "~7.2.0"
+ "@abp/core" "~7.2.1"
bootstrap "^5.1.3"
-"@abp/core@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/core/-/core-7.2.0.tgz#7fe85c5bf7afcdf5907ab90e2587caa1a352c05a"
- integrity sha512-J/pnKP5I4Hc3iY9QJJqBgevGSV7XteK3RLwV1b8dLGj4+12rgpqDYQCpENwEnVAlyBUU7QJJbb8gFNIO7DGzHA==
+"@abp/core@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/core/-/core-7.2.1.tgz#5685d615482daa032ab24f49aeb7fff3f50af898"
+ integrity sha512-N99Ee/rbtXFaV3vdGfv6Mbj1Zav73oBGGNbzmAiQaO/g1hda6ndzSC9WzRJkJ7MaJKTPNJx1ExBNEcNMw1P2UA==
dependencies:
- "@abp/utils" "~7.2.0"
+ "@abp/utils" "~7.2.1"
-"@abp/datatables.net-bs5@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-7.2.0.tgz#867f7b0dae84118c00cbdf499072d454d23d3a37"
- integrity sha512-VgdPEGHK1GeVpvsbYGWNqu4eW06LdC/Hw8Jv+hVf7oCJqJfobckeVkoNToQ7jsqQjl3Hh7xakf9dLXGvHtdKgg==
+"@abp/datatables.net-bs5@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-7.2.1.tgz#0474e874729a51a7e87f2ebfa931ecd8e6fe3eed"
+ integrity sha512-7AvNK0mYHWcdbQJAH6/PV9yjz/FbJlVHWP7mOREd6DIkg+Q8Ihmqjn8bnJyhN2UeRMTz9EZU2nO+E9oAllYlog==
dependencies:
- "@abp/datatables.net" "~7.2.0"
+ "@abp/datatables.net" "~7.2.1"
datatables.net-bs5 "^1.11.4"
-"@abp/datatables.net@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-7.2.0.tgz#8f5593f697d8e8577a9858a82969856cb6cb019a"
- integrity sha512-nL8JqESl8Oz8zpI3i2J4BngI1hwVMXdt9gElwdKgnuiPMbR+lLdQobiBLbnOYpMrulCivGZDor70iSH5OOoA/w==
+"@abp/datatables.net@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-7.2.1.tgz#30aeec4c37cc76e5c4dff78dee433c0b42599e41"
+ integrity sha512-AM6LonrGTOA2VyRme5rT/DcVX0TF2WxSRiM7vpTajq4A16O8yceos/XXop4QEGjGCPGbRqUuWQsIAxXRpcwYJQ==
dependencies:
- "@abp/jquery" "~7.2.0"
+ "@abp/jquery" "~7.2.1"
datatables.net "^1.11.4"
-"@abp/font-awesome@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-7.2.0.tgz#be94e415f8f5b47059adbc27f1c027b11c0883f1"
- integrity sha512-WQXSRVsJR8p1x69kb9xR9qjSxb+gGe5CUPN8aWYYCHDK5mppDP/YT53Nvx02Z201/r26aVa84nd8/+0yJvSKdw==
+"@abp/font-awesome@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-7.2.1.tgz#58751a48e7a648edb075d5a424c4ed9c6448e8e5"
+ integrity sha512-jIYHdXtijkd0b823Gd8pDqXmJ8luA0n4NqnF6MuZtQaz95CY8o0SNc7iGSJep3Gfi9XVVUVkXqWE2Gc82uyaNA==
dependencies:
- "@abp/core" "~7.2.0"
+ "@abp/core" "~7.2.1"
"@fortawesome/fontawesome-free" "^5.15.4"
-"@abp/jquery-form@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-7.2.0.tgz#5b243e08c2d3b9cb6928c902fd4431005a499bef"
- integrity sha512-Ug2vSv7oGeT44lUVyk4uFdgDtdwPe4gGBFXJmUPCfeHgn3yP8sqNNsMO3TRkwlh0jUdJhKC3d86ek9SX7CzZvw==
+"@abp/jquery-form@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-7.2.1.tgz#b09398cfb0abef4255a5bb1853c67ef9bfa76f49"
+ integrity sha512-Jqgog1AJHsCP3lLhUkCXMUzzk2XhAW9pje5dwSdKqE0/bg2OOGo1L3LKUFeEk9dWuMVRkrLRmfdcGRt1SRb4rQ==
dependencies:
- "@abp/jquery" "~7.2.0"
+ "@abp/jquery" "~7.2.1"
jquery-form "^4.3.0"
-"@abp/jquery-validation-unobtrusive@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-7.2.0.tgz#28a1055286985efcc47d464aac51d8b7f37945df"
- integrity sha512-QzCWTrW2bbK9jjXFJpt0TaY3Lk6wGmWnAZZO8lyIMJ1TCqZVI+J+nIMStsRgkFWu5YM5OwbyKjZAG5lb3MqoAw==
+"@abp/jquery-validation-unobtrusive@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-7.2.1.tgz#a62f85c7226d71588d1aa732739b3434c43f40e9"
+ integrity sha512-pEleVw7js8SpIRX73U5ccrfvc0H7Lxfa761wH9WglQOgC0Z1dAkJWbqr/6zKuUi3sVECYgFK8RcVm8/oPRGMzw==
dependencies:
- "@abp/jquery-validation" "~7.2.0"
+ "@abp/jquery-validation" "~7.2.1"
jquery-validation-unobtrusive "^3.2.12"
-"@abp/jquery-validation@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-7.2.0.tgz#321a7a46ec2ef3b079fd7734af38886c97232f11"
- integrity sha512-9hVaEPKZDU6UwyZt2xcJ9SK14gH4O4L1aHCIEuwWAnhKpOux5G4aPGzYqCGdUSf1MlzXf7iwkDKrTZLrPsOdrw==
+"@abp/jquery-validation@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-7.2.1.tgz#e8506f0513d26ae3550cb9410ce500e20065d9cb"
+ integrity sha512-QuCQV2UhKUXwOgYfwKMdu959lWSTOPR83wDTbuTAYd9nsOpCHmhDMApVT0hv44Jv+/ZmE360mkpogzkb0abxLg==
dependencies:
- "@abp/jquery" "~7.2.0"
+ "@abp/jquery" "~7.2.1"
jquery-validation "^1.19.3"
-"@abp/jquery@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-7.2.0.tgz#155ed7c7b116dbe360eac2132d9bf54407524acc"
- integrity sha512-IM4w4AgPoG4ftmbnhmDSOKNmvQW3d7cklNyf4cmV4o0oGOIbFyWKJwZQqYmZU9saoLHHElW5KKM4sPJ4lHcD0Q==
+"@abp/jquery@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-7.2.1.tgz#4ac9cd9ba4710f8dccaa145c17cef00e147efe6f"
+ integrity sha512-W2qE9LP6BCp1bdOMiup4MuB/R7Plj9se+1Sct1EeF1AnpNXv4IvVr5aGEy0/gKeeHvOrHB4wKIXcBhURFSAY1w==
dependencies:
- "@abp/core" "~7.2.0"
+ "@abp/core" "~7.2.1"
jquery "~3.6.0"
-"@abp/lodash@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-7.2.0.tgz#dad30f704641cd43fe98caa067b2aa86eca4cc7e"
- integrity sha512-wt94OjgGl8ZRpdbuE+OQFv0LOZSNACMAb5Grx/GuK2J2fORwHfISX9P0IA0MoF3SQTtfY7daJo02Wa2pO5DVRw==
+"@abp/lodash@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-7.2.1.tgz#36d60374a9fc2130c1f7bd264902d78221fa3b5b"
+ integrity sha512-XFZrxijDLhKqtL4LL3x9C/TvnJs/MIjmNwJ7+Ieg26fo2IFqYg2+hIieCUqGzn66IBwUAoRR0Cqa66erxijDlA==
dependencies:
- "@abp/core" "~7.2.0"
+ "@abp/core" "~7.2.1"
lodash "^4.17.21"
-"@abp/luxon@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-7.2.0.tgz#fe3fc84b26fdf824f510b45409e06c99a7081bab"
- integrity sha512-rS19oaECHKcRayKBfzDnaGXzy8TyZHopz9Wjib0WzeCTyRKgkT1TxCHvUH1DO2PWITODKamUyKSYjGKhGVADfg==
+"@abp/luxon@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-7.2.1.tgz#eb31dd7242be766f995954924e0127f2b58e4516"
+ integrity sha512-lSzulfTa4RPOcp80wmDUQFN9BatTASgYnYfu9RK9U/Fi2nV5KvqzUvRkB/XTitupLaoTJfV5h8Cpf47QMgiLSw==
dependencies:
- "@abp/core" "~7.2.0"
+ "@abp/core" "~7.2.1"
luxon "^2.3.0"
-"@abp/malihu-custom-scrollbar-plugin@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-7.2.0.tgz#975594f6c588807b05e2d5f1ed2b74dd652853be"
- integrity sha512-CieuDFEfnhPfoG5tqzSTKhS27SvaggZbDNmMtoDOd/L5CR7xm7QXfSadN+yFKqWDEO+gbLK//+xvEiyYepMNJA==
+"@abp/malihu-custom-scrollbar-plugin@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-7.2.1.tgz#d3b8aa15774a34f0abe704e416b00d8be76d3346"
+ integrity sha512-xqsjMQJez25mFwNRTUdHTQl78tYJ9+NEmEYLjpo+qRbs2hBExZQO67gTuO6TKvPRBCVgMiIcdpuegtoFhZLl5g==
dependencies:
- "@abp/core" "~7.2.0"
+ "@abp/core" "~7.2.1"
malihu-custom-scrollbar-plugin "^3.1.5"
-"@abp/moment@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-7.2.0.tgz#4ff2bc73008d1717ac5756ee4a7f5460cee51afb"
- integrity sha512-scD8UwmvNGOV75kK2wE8/Mhyp7iSRQWE6MtN3KgWg3AMdkDyrwnQtC55PzXLdec7XIgYbf+r8qSO+CFKaBwMGg==
+"@abp/moment@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-7.2.1.tgz#07bcaeb408b0025f2e8c2a7b259f5f27e05f8d25"
+ integrity sha512-L7EvEKEyl9RsPnSVbPwL3QC3xcKqkaLtZo75wTws2o5hXHs4f4mkADdnpfjCYFFZ+H0vMYjxzKYNI8rHm/ZU0g==
dependencies:
moment "^2.9.0"
-"@abp/select2@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-7.2.0.tgz#fe612080ce2ebbec849663b64310d304f1a4d730"
- integrity sha512-sGpB+ANvCN87W30rlcqQkx1gTAkU6Zz9AxKaxbzFJI35y/j0dybrx32q2/eLg8hkjvQnJ93sNa8oc3fQQ7/7AA==
+"@abp/select2@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-7.2.1.tgz#c2d9494d09395691792ede04bf3d7173ebd35a95"
+ integrity sha512-AW1ylrPQv+WeT3HdQQqy09uvxSeWPzxLhVEylL+HIGFn3TwMCVo2DtgnxSYde4WCpDMRlYzkWlUBX5y9UzhArw==
dependencies:
- "@abp/core" "~7.2.0"
+ "@abp/core" "~7.2.1"
select2 "^4.0.13"
-"@abp/sweetalert2@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-7.2.0.tgz#787164525d741972bf51b5ac371de6d84432f635"
- integrity sha512-9nDv3lp/VGhHLHiLM6/ZL3nhKF7S9Ag4lsedULbGAx4aJK/OfVpkEYJ+4dDLWRHRTO1xrnlMmCPGEsRIUvDklA==
+"@abp/sweetalert2@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-7.2.1.tgz#ab11b3ef48ca55687a8afb0f8fca0b9e696d10a3"
+ integrity sha512-qGMQE7I3bnCN0xwliBP+y+1m5nx7mOYc2yuTozNLdNpmNgT0TAkjyvufn99JQBPoFju+VjMEjS5R005RbvLuVQ==
dependencies:
- "@abp/core" "~7.2.0"
+ "@abp/core" "~7.2.1"
sweetalert2 "^11.3.6"
-"@abp/timeago@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-7.2.0.tgz#c8798a15f3a76fe620fdf04b54b36b5271ff3934"
- integrity sha512-wKl5Cz5IQGlhYI5eEBxiu97iNigVZ/epBozFuH/iJOXNzbCtORnwuL1PfE7C5LRBkxCg4Y+2GDIuPMU1j1cOgQ==
+"@abp/timeago@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-7.2.1.tgz#0fad3c1d7b0678ca63a47f9ba6f5702a162f6857"
+ integrity sha512-1M6WWQ/kPdndMPhgJ5/I22NjxLgmHM4b4sLaKATIH5D4EM7aii22RiM5cSBVAKoJZjJ8S3R28g78zS01xKrSnw==
dependencies:
- "@abp/jquery" "~7.2.0"
+ "@abp/jquery" "~7.2.1"
timeago "^1.6.7"
-"@abp/toastr@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-7.2.0.tgz#f6e2dda276d92af97dbb5dd6747194b58aea8591"
- integrity sha512-QC7NwvVKL1de/PP4F3wT8k7GO0r2WmvhMwFegSnQl5ym/froLDhYAs9Ru8wRHFUF3vHAC7OwYHDGt6guJYR9qA==
+"@abp/toastr@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-7.2.1.tgz#6ddc793e0a66e2b1f9dd192530ad46aacfd60cb2"
+ integrity sha512-BkLohyVJxLx0aJ6WJ2iBRV8y20JWfgoRCpzGUCcAhAp+BBF9FVhVxxZo0loFjprFprvLjJK91Z0bErJW6BWvFQ==
dependencies:
- "@abp/jquery" "~7.2.0"
+ "@abp/jquery" "~7.2.1"
toastr "^2.1.4"
-"@abp/utils@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-7.2.0.tgz#7d7c7fe8d45ee0a123d1d0ad8ce317e809cab02d"
- integrity sha512-GH6383eaRQllM8X+IMoYbBu7D0jSKA/h2f4jwxm0GmlFvxtRo69lqcnSIBDFocdzNotZbRAXuKEE+e8Wo1YH1Q==
+"@abp/utils@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-7.2.1.tgz#a0d5a6de02cb1b68d096399bb03771a8bb9b03b5"
+ integrity sha512-1QAdnFH9RD03w5mqNCz2G4mCuEPRgAJNLvFAEu9RTkL6EhOsCCQSG5mzA4cTWNDvVlNcUF8uyroXmlUvuzpYHg==
dependencies:
just-compare "^1.3.0"
diff --git a/modules/cms-kit/host/Volo.CmsKit.Web.Host/package.json b/modules/cms-kit/host/Volo.CmsKit.Web.Host/package.json
index a92840fd98..e712a37d94 100644
--- a/modules/cms-kit/host/Volo.CmsKit.Web.Host/package.json
+++ b/modules/cms-kit/host/Volo.CmsKit.Web.Host/package.json
@@ -3,6 +3,6 @@
"name": "my-app",
"private": true,
"dependencies": {
- "@abp/aspnetcore.mvc.ui.theme.basic": "~7.2.0-rc.2"
+ "@abp/aspnetcore.mvc.ui.theme.basic": "~7.2.1"
}
}
diff --git a/modules/cms-kit/host/Volo.CmsKit.Web.Host/yarn.lock b/modules/cms-kit/host/Volo.CmsKit.Web.Host/yarn.lock
index 8813b33030..02eb319962 100644
--- a/modules/cms-kit/host/Volo.CmsKit.Web.Host/yarn.lock
+++ b/modules/cms-kit/host/Volo.CmsKit.Web.Host/yarn.lock
@@ -2,39 +2,39 @@
# yarn lockfile v1
-"@abp/aspnetcore.mvc.ui.theme.basic@~7.2.0-rc.2":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-7.2.0.tgz#fca379e596ec39de4057b9e522e30e0aee324e87"
- integrity sha512-VWBtDqjak9iH0c0e/FmXqW8Riy7CsVjo2VVP5C8pO36BP/IubAnSa02xGek6Yy34vqIu40J67QTNljR66ZlEvQ==
- dependencies:
- "@abp/aspnetcore.mvc.ui.theme.shared" "~7.2.0"
-
-"@abp/aspnetcore.mvc.ui.theme.shared@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-7.2.0.tgz#fbdf50b0b66b32c8106714beab4b453029c8e533"
- integrity sha512-SaTCFSoZ9VJiv0gdxoXsSn/kmLdDH9JspEDi2xvrDFVp+7PYnQrn44ngQxzsi4ykhVkP5wCf56AEkauDKSFnmw==
- dependencies:
- "@abp/aspnetcore.mvc.ui" "~7.2.0"
- "@abp/bootstrap" "~7.2.0"
- "@abp/bootstrap-datepicker" "~7.2.0"
- "@abp/bootstrap-daterangepicker" "~7.2.0"
- "@abp/datatables.net-bs5" "~7.2.0"
- "@abp/font-awesome" "~7.2.0"
- "@abp/jquery-form" "~7.2.0"
- "@abp/jquery-validation-unobtrusive" "~7.2.0"
- "@abp/lodash" "~7.2.0"
- "@abp/luxon" "~7.2.0"
- "@abp/malihu-custom-scrollbar-plugin" "~7.2.0"
- "@abp/moment" "~7.2.0"
- "@abp/select2" "~7.2.0"
- "@abp/sweetalert2" "~7.2.0"
- "@abp/timeago" "~7.2.0"
- "@abp/toastr" "~7.2.0"
-
-"@abp/aspnetcore.mvc.ui@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-7.2.0.tgz#d3198a4a881c73a86dd2d4eb0569388354526481"
- integrity sha512-QsNHcJ4c9KeAFOPB5bec1i/VOkQ2ZCfhO5qOZMbVls4uy5VDLZtg93xyYaFhQilu1mzXGbfEdPqHK7sArQj7Eg==
+"@abp/aspnetcore.mvc.ui.theme.basic@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-7.2.1.tgz#34a948ef593442995bf663fd5c0d3ab4fd7390e8"
+ integrity sha512-AxtugI8e8n6BDklLV/z9oZQzmpF3oEhIVyr1dxv55hIBe8GcOZHA/9CqKHY/OpSwch7ka0EEPrHawCvylcNAdQ==
+ dependencies:
+ "@abp/aspnetcore.mvc.ui.theme.shared" "~7.2.1"
+
+"@abp/aspnetcore.mvc.ui.theme.shared@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-7.2.1.tgz#68903cb3fafca670d603e658f20e435734e3d738"
+ integrity sha512-B7gGe8qAjvMsLfqxFVdvGFfMylV3NQzthXT/BMoq1MtgMdLKrrpeu6Oz3mIr68IuFlA38edqlm8Scy+iknD+Xg==
+ dependencies:
+ "@abp/aspnetcore.mvc.ui" "~7.2.1"
+ "@abp/bootstrap" "~7.2.1"
+ "@abp/bootstrap-datepicker" "~7.2.1"
+ "@abp/bootstrap-daterangepicker" "~7.2.1"
+ "@abp/datatables.net-bs5" "~7.2.1"
+ "@abp/font-awesome" "~7.2.1"
+ "@abp/jquery-form" "~7.2.1"
+ "@abp/jquery-validation-unobtrusive" "~7.2.1"
+ "@abp/lodash" "~7.2.1"
+ "@abp/luxon" "~7.2.1"
+ "@abp/malihu-custom-scrollbar-plugin" "~7.2.1"
+ "@abp/moment" "~7.2.1"
+ "@abp/select2" "~7.2.1"
+ "@abp/sweetalert2" "~7.2.1"
+ "@abp/timeago" "~7.2.1"
+ "@abp/toastr" "~7.2.1"
+
+"@abp/aspnetcore.mvc.ui@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-7.2.1.tgz#b4ae5dcdb90983673092dbfee93c16f21cbb21fe"
+ integrity sha512-edBAWEKQnUdH8jgY+QDECs3BFu0qIXbMV/AiTH9j64uo4ADQ6rgJ6Uq7xy6YtxJ0uImFkgLXDd9LYQEPvU43Bg==
dependencies:
ansi-colors "^4.1.1"
extend-object "^1.0.0"
@@ -43,158 +43,158 @@
merge-stream "^2.0.0"
micromatch "^4.0.2"
-"@abp/bootstrap-datepicker@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-7.2.0.tgz#10a3e810edf47f0acd82ac5dadf3d65bc10eb1b5"
- integrity sha512-uFmaiAX3jnACYsvI+5rRjMmJ8dFX53rNUG7NyCEZ+Btml6MwhoV1LemkCXsWj9iiL6XVmIO9A2bjdhlYI7Gvxw==
+"@abp/bootstrap-datepicker@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-7.2.1.tgz#eca6c1138074ce222ff6c474bc51f4fbe05882c3"
+ integrity sha512-DUBEz8wzsWJlEfQ7CZJYemLE/wNYyY7LtWRBRjNFndS8P2xo3FP4xuh0mnovSZ3AXPy7oAAKg0zayFzf3XS4aw==
dependencies:
bootstrap-datepicker "^1.9.0"
-"@abp/bootstrap-daterangepicker@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-7.2.0.tgz#80ccb46058f141e5b497181624abfd29d5f51efe"
- integrity sha512-Koapg+vD8trKHk92awjIQqdcxOYqP12EpePjxk08TFMoXEeSkYUU4dyIQ7frmM8ExYvaBo3rDPsr2eDSVgcVvQ==
+"@abp/bootstrap-daterangepicker@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-7.2.1.tgz#ad236d026c3596e71a6a2088e5332e00d62c8ff7"
+ integrity sha512-WF/3qQobtvizWGmycgkzHMIjHJoLYAnCsi+vJPzv+VqvGstnQOgkz/rlfcu7uAp9y5H4OWdSAbkOj9eELNfxlA==
dependencies:
bootstrap-daterangepicker "^3.1.0"
-"@abp/bootstrap@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-7.2.0.tgz#87cfe5c3e6c210fe483e061b4127edc19998089c"
- integrity sha512-qa4KUhPe+aBwsN2QmuksmsxLgsONgouKVRYXRo9go7TmjcKwzyB4eryWTkV1p8drxzsY+Uzllapy6oJ9e1fV1A==
+"@abp/bootstrap@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-7.2.1.tgz#94d8186af2f1a1ed4d558756ffa18fd43f26e318"
+ integrity sha512-nU3mBK0VVgkDJqu5CBOHAD1FNvKSO6wnfX5wSB+IYDIfAV9wsmiTIMx6YO8psjMOd4flEmlKLALK6p17i79jhw==
dependencies:
- "@abp/core" "~7.2.0"
+ "@abp/core" "~7.2.1"
bootstrap "^5.1.3"
-"@abp/core@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/core/-/core-7.2.0.tgz#7fe85c5bf7afcdf5907ab90e2587caa1a352c05a"
- integrity sha512-J/pnKP5I4Hc3iY9QJJqBgevGSV7XteK3RLwV1b8dLGj4+12rgpqDYQCpENwEnVAlyBUU7QJJbb8gFNIO7DGzHA==
+"@abp/core@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/core/-/core-7.2.1.tgz#5685d615482daa032ab24f49aeb7fff3f50af898"
+ integrity sha512-N99Ee/rbtXFaV3vdGfv6Mbj1Zav73oBGGNbzmAiQaO/g1hda6ndzSC9WzRJkJ7MaJKTPNJx1ExBNEcNMw1P2UA==
dependencies:
- "@abp/utils" "~7.2.0"
+ "@abp/utils" "~7.2.1"
-"@abp/datatables.net-bs5@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-7.2.0.tgz#867f7b0dae84118c00cbdf499072d454d23d3a37"
- integrity sha512-VgdPEGHK1GeVpvsbYGWNqu4eW06LdC/Hw8Jv+hVf7oCJqJfobckeVkoNToQ7jsqQjl3Hh7xakf9dLXGvHtdKgg==
+"@abp/datatables.net-bs5@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-7.2.1.tgz#0474e874729a51a7e87f2ebfa931ecd8e6fe3eed"
+ integrity sha512-7AvNK0mYHWcdbQJAH6/PV9yjz/FbJlVHWP7mOREd6DIkg+Q8Ihmqjn8bnJyhN2UeRMTz9EZU2nO+E9oAllYlog==
dependencies:
- "@abp/datatables.net" "~7.2.0"
+ "@abp/datatables.net" "~7.2.1"
datatables.net-bs5 "^1.11.4"
-"@abp/datatables.net@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-7.2.0.tgz#8f5593f697d8e8577a9858a82969856cb6cb019a"
- integrity sha512-nL8JqESl8Oz8zpI3i2J4BngI1hwVMXdt9gElwdKgnuiPMbR+lLdQobiBLbnOYpMrulCivGZDor70iSH5OOoA/w==
+"@abp/datatables.net@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-7.2.1.tgz#30aeec4c37cc76e5c4dff78dee433c0b42599e41"
+ integrity sha512-AM6LonrGTOA2VyRme5rT/DcVX0TF2WxSRiM7vpTajq4A16O8yceos/XXop4QEGjGCPGbRqUuWQsIAxXRpcwYJQ==
dependencies:
- "@abp/jquery" "~7.2.0"
+ "@abp/jquery" "~7.2.1"
datatables.net "^1.11.4"
-"@abp/font-awesome@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-7.2.0.tgz#be94e415f8f5b47059adbc27f1c027b11c0883f1"
- integrity sha512-WQXSRVsJR8p1x69kb9xR9qjSxb+gGe5CUPN8aWYYCHDK5mppDP/YT53Nvx02Z201/r26aVa84nd8/+0yJvSKdw==
+"@abp/font-awesome@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-7.2.1.tgz#58751a48e7a648edb075d5a424c4ed9c6448e8e5"
+ integrity sha512-jIYHdXtijkd0b823Gd8pDqXmJ8luA0n4NqnF6MuZtQaz95CY8o0SNc7iGSJep3Gfi9XVVUVkXqWE2Gc82uyaNA==
dependencies:
- "@abp/core" "~7.2.0"
+ "@abp/core" "~7.2.1"
"@fortawesome/fontawesome-free" "^5.15.4"
-"@abp/jquery-form@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-7.2.0.tgz#5b243e08c2d3b9cb6928c902fd4431005a499bef"
- integrity sha512-Ug2vSv7oGeT44lUVyk4uFdgDtdwPe4gGBFXJmUPCfeHgn3yP8sqNNsMO3TRkwlh0jUdJhKC3d86ek9SX7CzZvw==
+"@abp/jquery-form@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-7.2.1.tgz#b09398cfb0abef4255a5bb1853c67ef9bfa76f49"
+ integrity sha512-Jqgog1AJHsCP3lLhUkCXMUzzk2XhAW9pje5dwSdKqE0/bg2OOGo1L3LKUFeEk9dWuMVRkrLRmfdcGRt1SRb4rQ==
dependencies:
- "@abp/jquery" "~7.2.0"
+ "@abp/jquery" "~7.2.1"
jquery-form "^4.3.0"
-"@abp/jquery-validation-unobtrusive@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-7.2.0.tgz#28a1055286985efcc47d464aac51d8b7f37945df"
- integrity sha512-QzCWTrW2bbK9jjXFJpt0TaY3Lk6wGmWnAZZO8lyIMJ1TCqZVI+J+nIMStsRgkFWu5YM5OwbyKjZAG5lb3MqoAw==
+"@abp/jquery-validation-unobtrusive@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-7.2.1.tgz#a62f85c7226d71588d1aa732739b3434c43f40e9"
+ integrity sha512-pEleVw7js8SpIRX73U5ccrfvc0H7Lxfa761wH9WglQOgC0Z1dAkJWbqr/6zKuUi3sVECYgFK8RcVm8/oPRGMzw==
dependencies:
- "@abp/jquery-validation" "~7.2.0"
+ "@abp/jquery-validation" "~7.2.1"
jquery-validation-unobtrusive "^3.2.12"
-"@abp/jquery-validation@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-7.2.0.tgz#321a7a46ec2ef3b079fd7734af38886c97232f11"
- integrity sha512-9hVaEPKZDU6UwyZt2xcJ9SK14gH4O4L1aHCIEuwWAnhKpOux5G4aPGzYqCGdUSf1MlzXf7iwkDKrTZLrPsOdrw==
+"@abp/jquery-validation@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-7.2.1.tgz#e8506f0513d26ae3550cb9410ce500e20065d9cb"
+ integrity sha512-QuCQV2UhKUXwOgYfwKMdu959lWSTOPR83wDTbuTAYd9nsOpCHmhDMApVT0hv44Jv+/ZmE360mkpogzkb0abxLg==
dependencies:
- "@abp/jquery" "~7.2.0"
+ "@abp/jquery" "~7.2.1"
jquery-validation "^1.19.3"
-"@abp/jquery@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-7.2.0.tgz#155ed7c7b116dbe360eac2132d9bf54407524acc"
- integrity sha512-IM4w4AgPoG4ftmbnhmDSOKNmvQW3d7cklNyf4cmV4o0oGOIbFyWKJwZQqYmZU9saoLHHElW5KKM4sPJ4lHcD0Q==
+"@abp/jquery@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-7.2.1.tgz#4ac9cd9ba4710f8dccaa145c17cef00e147efe6f"
+ integrity sha512-W2qE9LP6BCp1bdOMiup4MuB/R7Plj9se+1Sct1EeF1AnpNXv4IvVr5aGEy0/gKeeHvOrHB4wKIXcBhURFSAY1w==
dependencies:
- "@abp/core" "~7.2.0"
+ "@abp/core" "~7.2.1"
jquery "~3.6.0"
-"@abp/lodash@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-7.2.0.tgz#dad30f704641cd43fe98caa067b2aa86eca4cc7e"
- integrity sha512-wt94OjgGl8ZRpdbuE+OQFv0LOZSNACMAb5Grx/GuK2J2fORwHfISX9P0IA0MoF3SQTtfY7daJo02Wa2pO5DVRw==
+"@abp/lodash@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-7.2.1.tgz#36d60374a9fc2130c1f7bd264902d78221fa3b5b"
+ integrity sha512-XFZrxijDLhKqtL4LL3x9C/TvnJs/MIjmNwJ7+Ieg26fo2IFqYg2+hIieCUqGzn66IBwUAoRR0Cqa66erxijDlA==
dependencies:
- "@abp/core" "~7.2.0"
+ "@abp/core" "~7.2.1"
lodash "^4.17.21"
-"@abp/luxon@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-7.2.0.tgz#fe3fc84b26fdf824f510b45409e06c99a7081bab"
- integrity sha512-rS19oaECHKcRayKBfzDnaGXzy8TyZHopz9Wjib0WzeCTyRKgkT1TxCHvUH1DO2PWITODKamUyKSYjGKhGVADfg==
+"@abp/luxon@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-7.2.1.tgz#eb31dd7242be766f995954924e0127f2b58e4516"
+ integrity sha512-lSzulfTa4RPOcp80wmDUQFN9BatTASgYnYfu9RK9U/Fi2nV5KvqzUvRkB/XTitupLaoTJfV5h8Cpf47QMgiLSw==
dependencies:
- "@abp/core" "~7.2.0"
+ "@abp/core" "~7.2.1"
luxon "^2.3.0"
-"@abp/malihu-custom-scrollbar-plugin@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-7.2.0.tgz#975594f6c588807b05e2d5f1ed2b74dd652853be"
- integrity sha512-CieuDFEfnhPfoG5tqzSTKhS27SvaggZbDNmMtoDOd/L5CR7xm7QXfSadN+yFKqWDEO+gbLK//+xvEiyYepMNJA==
+"@abp/malihu-custom-scrollbar-plugin@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-7.2.1.tgz#d3b8aa15774a34f0abe704e416b00d8be76d3346"
+ integrity sha512-xqsjMQJez25mFwNRTUdHTQl78tYJ9+NEmEYLjpo+qRbs2hBExZQO67gTuO6TKvPRBCVgMiIcdpuegtoFhZLl5g==
dependencies:
- "@abp/core" "~7.2.0"
+ "@abp/core" "~7.2.1"
malihu-custom-scrollbar-plugin "^3.1.5"
-"@abp/moment@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-7.2.0.tgz#4ff2bc73008d1717ac5756ee4a7f5460cee51afb"
- integrity sha512-scD8UwmvNGOV75kK2wE8/Mhyp7iSRQWE6MtN3KgWg3AMdkDyrwnQtC55PzXLdec7XIgYbf+r8qSO+CFKaBwMGg==
+"@abp/moment@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-7.2.1.tgz#07bcaeb408b0025f2e8c2a7b259f5f27e05f8d25"
+ integrity sha512-L7EvEKEyl9RsPnSVbPwL3QC3xcKqkaLtZo75wTws2o5hXHs4f4mkADdnpfjCYFFZ+H0vMYjxzKYNI8rHm/ZU0g==
dependencies:
moment "^2.9.0"
-"@abp/select2@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-7.2.0.tgz#fe612080ce2ebbec849663b64310d304f1a4d730"
- integrity sha512-sGpB+ANvCN87W30rlcqQkx1gTAkU6Zz9AxKaxbzFJI35y/j0dybrx32q2/eLg8hkjvQnJ93sNa8oc3fQQ7/7AA==
+"@abp/select2@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-7.2.1.tgz#c2d9494d09395691792ede04bf3d7173ebd35a95"
+ integrity sha512-AW1ylrPQv+WeT3HdQQqy09uvxSeWPzxLhVEylL+HIGFn3TwMCVo2DtgnxSYde4WCpDMRlYzkWlUBX5y9UzhArw==
dependencies:
- "@abp/core" "~7.2.0"
+ "@abp/core" "~7.2.1"
select2 "^4.0.13"
-"@abp/sweetalert2@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-7.2.0.tgz#787164525d741972bf51b5ac371de6d84432f635"
- integrity sha512-9nDv3lp/VGhHLHiLM6/ZL3nhKF7S9Ag4lsedULbGAx4aJK/OfVpkEYJ+4dDLWRHRTO1xrnlMmCPGEsRIUvDklA==
+"@abp/sweetalert2@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-7.2.1.tgz#ab11b3ef48ca55687a8afb0f8fca0b9e696d10a3"
+ integrity sha512-qGMQE7I3bnCN0xwliBP+y+1m5nx7mOYc2yuTozNLdNpmNgT0TAkjyvufn99JQBPoFju+VjMEjS5R005RbvLuVQ==
dependencies:
- "@abp/core" "~7.2.0"
+ "@abp/core" "~7.2.1"
sweetalert2 "^11.3.6"
-"@abp/timeago@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-7.2.0.tgz#c8798a15f3a76fe620fdf04b54b36b5271ff3934"
- integrity sha512-wKl5Cz5IQGlhYI5eEBxiu97iNigVZ/epBozFuH/iJOXNzbCtORnwuL1PfE7C5LRBkxCg4Y+2GDIuPMU1j1cOgQ==
+"@abp/timeago@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-7.2.1.tgz#0fad3c1d7b0678ca63a47f9ba6f5702a162f6857"
+ integrity sha512-1M6WWQ/kPdndMPhgJ5/I22NjxLgmHM4b4sLaKATIH5D4EM7aii22RiM5cSBVAKoJZjJ8S3R28g78zS01xKrSnw==
dependencies:
- "@abp/jquery" "~7.2.0"
+ "@abp/jquery" "~7.2.1"
timeago "^1.6.7"
-"@abp/toastr@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-7.2.0.tgz#f6e2dda276d92af97dbb5dd6747194b58aea8591"
- integrity sha512-QC7NwvVKL1de/PP4F3wT8k7GO0r2WmvhMwFegSnQl5ym/froLDhYAs9Ru8wRHFUF3vHAC7OwYHDGt6guJYR9qA==
+"@abp/toastr@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-7.2.1.tgz#6ddc793e0a66e2b1f9dd192530ad46aacfd60cb2"
+ integrity sha512-BkLohyVJxLx0aJ6WJ2iBRV8y20JWfgoRCpzGUCcAhAp+BBF9FVhVxxZo0loFjprFprvLjJK91Z0bErJW6BWvFQ==
dependencies:
- "@abp/jquery" "~7.2.0"
+ "@abp/jquery" "~7.2.1"
toastr "^2.1.4"
-"@abp/utils@~7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-7.2.0.tgz#7d7c7fe8d45ee0a123d1d0ad8ce317e809cab02d"
- integrity sha512-GH6383eaRQllM8X+IMoYbBu7D0jSKA/h2f4jwxm0GmlFvxtRo69lqcnSIBDFocdzNotZbRAXuKEE+e8Wo1YH1Q==
+"@abp/utils@~7.2.1":
+ version "7.2.1"
+ resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-7.2.1.tgz#a0d5a6de02cb1b68d096399bb03771a8bb9b03b5"
+ integrity sha512-1QAdnFH9RD03w5mqNCz2G4mCuEPRgAJNLvFAEu9RTkL6EhOsCCQSG5mzA4cTWNDvVlNcUF8uyroXmlUvuzpYHg==
dependencies:
just-compare "^1.3.0"
diff --git a/modules/cms-kit/host/Volo.CmsKit.Web.Unified/Migrations/20221216140823_Initial.Designer.cs b/modules/cms-kit/host/Volo.CmsKit.Web.Unified/Migrations/20221216140823_Initial.Designer.cs
deleted file mode 100644
index 62e4c309ca..0000000000
--- a/modules/cms-kit/host/Volo.CmsKit.Web.Unified/Migrations/20221216140823_Initial.Designer.cs
+++ /dev/null
@@ -1,2303 +0,0 @@
-//
-using System;
-using Microsoft.EntityFrameworkCore;
-using Microsoft.EntityFrameworkCore.Infrastructure;
-using Microsoft.EntityFrameworkCore.Metadata;
-using Microsoft.EntityFrameworkCore.Migrations;
-using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
-using Volo.Abp.EntityFrameworkCore;
-using Volo.CmsKit.EntityFrameworkCore;
-
-#nullable disable
-
-namespace Volo.CmsKit.Migrations
-{
- [DbContext(typeof(UnifiedDbContext))]
- [Migration("20221216140823_Initial")]
- partial class Initial
- {
- ///
- protected override void BuildTargetModel(ModelBuilder modelBuilder)
- {
-#pragma warning disable 612, 618
- modelBuilder
- .HasAnnotation("_Abp_DatabaseProvider", EfCoreDatabaseProvider.SqlServer)
- .HasAnnotation("ProductVersion", "7.0.0")
- .HasAnnotation("Relational:MaxIdentifierLength", 128);
-
- SqlServerModelBuilderExtensions.UseIdentityColumns(modelBuilder);
-
- modelBuilder.Entity("Volo.Abp.AuditLogging.AuditLog", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("uniqueidentifier");
-
- b.Property("ApplicationName")
- .HasMaxLength(96)
- .HasColumnType("nvarchar(96)")
- .HasColumnName("ApplicationName");
-
- b.Property("BrowserInfo")
- .HasMaxLength(512)
- .HasColumnType("nvarchar(512)")
- .HasColumnName("BrowserInfo");
-
- b.Property("ClientId")
- .HasMaxLength(64)
- .HasColumnType("nvarchar(64)")
- .HasColumnName("ClientId");
-
- b.Property("ClientIpAddress")
- .HasMaxLength(64)
- .HasColumnType("nvarchar(64)")
- .HasColumnName("ClientIpAddress");
-
- b.Property("ClientName")
- .HasMaxLength(128)
- .HasColumnType("nvarchar(128)")
- .HasColumnName("ClientName");
-
- b.Property("Comments")
- .HasMaxLength(256)
- .HasColumnType("nvarchar(256)")
- .HasColumnName("Comments");
-
- b.Property("ConcurrencyStamp")
- .IsConcurrencyToken()
- .HasMaxLength(40)
- .HasColumnType("nvarchar(40)")
- .HasColumnName("ConcurrencyStamp");
-
- b.Property("CorrelationId")
- .HasMaxLength(64)
- .HasColumnType("nvarchar(64)")
- .HasColumnName("CorrelationId");
-
- b.Property("Exceptions")
- .HasColumnType("nvarchar(max)");
-
- b.Property("ExecutionDuration")
- .HasColumnType("int")
- .HasColumnName("ExecutionDuration");
-
- b.Property("ExecutionTime")
- .HasColumnType("datetime2");
-
- b.Property("ExtraProperties")
- .HasColumnType("nvarchar(max)")
- .HasColumnName("ExtraProperties");
-
- b.Property("HttpMethod")
- .HasMaxLength(16)
- .HasColumnType("nvarchar(16)")
- .HasColumnName("HttpMethod");
-
- b.Property("HttpStatusCode")
- .HasColumnType("int")
- .HasColumnName("HttpStatusCode");
-
- b.Property("ImpersonatorTenantId")
- .HasColumnType("uniqueidentifier")
- .HasColumnName("ImpersonatorTenantId");
-
- b.Property("ImpersonatorTenantName")
- .HasMaxLength(64)
- .HasColumnType("nvarchar(64)")
- .HasColumnName("ImpersonatorTenantName");
-
- b.Property("ImpersonatorUserId")
- .HasColumnType("uniqueidentifier")
- .HasColumnName("ImpersonatorUserId");
-
- b.Property("ImpersonatorUserName")
- .HasMaxLength(256)
- .HasColumnType("nvarchar(256)")
- .HasColumnName("ImpersonatorUserName");
-
- b.Property("TenantId")
- .HasColumnType("uniqueidentifier")
- .HasColumnName("TenantId");
-
- b.Property("TenantName")
- .HasMaxLength(64)
- .HasColumnType("nvarchar(64)")
- .HasColumnName("TenantName");
-
- b.Property("Url")
- .HasMaxLength(256)
- .HasColumnType("nvarchar(256)")
- .HasColumnName("Url");
-
- b.Property("UserId")
- .HasColumnType("uniqueidentifier")
- .HasColumnName("UserId");
-
- b.Property("UserName")
- .HasMaxLength(256)
- .HasColumnType("nvarchar(256)")
- .HasColumnName("UserName");
-
- b.HasKey("Id");
-
- b.HasIndex("TenantId", "ExecutionTime");
-
- b.HasIndex("TenantId", "UserId", "ExecutionTime");
-
- b.ToTable("AbpAuditLogs", (string)null);
- });
-
- modelBuilder.Entity("Volo.Abp.AuditLogging.AuditLogAction", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("uniqueidentifier");
-
- b.Property("AuditLogId")
- .HasColumnType("uniqueidentifier")
- .HasColumnName("AuditLogId");
-
- b.Property("ExecutionDuration")
- .HasColumnType("int")
- .HasColumnName("ExecutionDuration");
-
- b.Property("ExecutionTime")
- .HasColumnType("datetime2")
- .HasColumnName("ExecutionTime");
-
- b.Property("ExtraProperties")
- .HasColumnType("nvarchar(max)")
- .HasColumnName("ExtraProperties");
-
- b.Property("MethodName")
- .HasMaxLength(128)
- .HasColumnType("nvarchar(128)")
- .HasColumnName("MethodName");
-
- b.Property("Parameters")
- .HasMaxLength(2000)
- .HasColumnType("nvarchar(2000)")
- .HasColumnName("Parameters");
-
- b.Property("ServiceName")
- .HasMaxLength(256)
- .HasColumnType("nvarchar(256)")
- .HasColumnName("ServiceName");
-
- b.Property("TenantId")
- .HasColumnType("uniqueidentifier")
- .HasColumnName("TenantId");
-
- b.HasKey("Id");
-
- b.HasIndex("AuditLogId");
-
- b.HasIndex("TenantId", "ServiceName", "MethodName", "ExecutionTime");
-
- b.ToTable("AbpAuditLogActions", (string)null);
- });
-
- modelBuilder.Entity("Volo.Abp.AuditLogging.EntityChange", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("uniqueidentifier");
-
- b.Property("AuditLogId")
- .HasColumnType("uniqueidentifier")
- .HasColumnName("AuditLogId");
-
- b.Property("ChangeTime")
- .HasColumnType("datetime2")
- .HasColumnName("ChangeTime");
-
- b.Property("ChangeType")
- .HasColumnType("tinyint")
- .HasColumnName("ChangeType");
-
- b.Property("EntityId")
- .IsRequired()
- .HasMaxLength(128)
- .HasColumnType("nvarchar(128)")
- .HasColumnName("EntityId");
-
- b.Property("EntityTenantId")
- .HasColumnType("uniqueidentifier");
-
- b.Property("EntityTypeFullName")
- .IsRequired()
- .HasMaxLength(128)
- .HasColumnType("nvarchar(128)")
- .HasColumnName("EntityTypeFullName");
-
- b.Property("ExtraProperties")
- .HasColumnType("nvarchar(max)")
- .HasColumnName("ExtraProperties");
-
- b.Property("TenantId")
- .HasColumnType("uniqueidentifier")
- .HasColumnName("TenantId");
-
- b.HasKey("Id");
-
- b.HasIndex("AuditLogId");
-
- b.HasIndex("TenantId", "EntityTypeFullName", "EntityId");
-
- b.ToTable("AbpEntityChanges", (string)null);
- });
-
- modelBuilder.Entity("Volo.Abp.AuditLogging.EntityPropertyChange", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("uniqueidentifier");
-
- b.Property("EntityChangeId")
- .HasColumnType("uniqueidentifier");
-
- b.Property("NewValue")
- .HasMaxLength(512)
- .HasColumnType("nvarchar(512)")
- .HasColumnName("NewValue");
-
- b.Property("OriginalValue")
- .HasMaxLength(512)
- .HasColumnType("nvarchar(512)")
- .HasColumnName("OriginalValue");
-
- b.Property("PropertyName")
- .IsRequired()
- .HasMaxLength(128)
- .HasColumnType("nvarchar(128)")
- .HasColumnName("PropertyName");
-
- b.Property("PropertyTypeFullName")
- .IsRequired()
- .HasMaxLength(64)
- .HasColumnType("nvarchar(64)")
- .HasColumnName("PropertyTypeFullName");
-
- b.Property("TenantId")
- .HasColumnType("uniqueidentifier")
- .HasColumnName("TenantId");
-
- b.HasKey("Id");
-
- b.HasIndex("EntityChangeId");
-
- b.ToTable("AbpEntityPropertyChanges", (string)null);
- });
-
- modelBuilder.Entity("Volo.Abp.BlobStoring.Database.DatabaseBlob", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("uniqueidentifier");
-
- b.Property("ConcurrencyStamp")
- .IsConcurrencyToken()
- .HasMaxLength(40)
- .HasColumnType("nvarchar(40)")
- .HasColumnName("ConcurrencyStamp");
-
- b.Property("ContainerId")
- .HasColumnType("uniqueidentifier");
-
- b.Property("Content")
- .HasMaxLength(2147483647)
- .HasColumnType("varbinary(max)");
-
- b.Property("ExtraProperties")
- .HasColumnType("nvarchar(max)")
- .HasColumnName("ExtraProperties");
-
- b.Property("Name")
- .IsRequired()
- .HasMaxLength(256)
- .HasColumnType("nvarchar(256)");
-
- b.Property("TenantId")
- .HasColumnType("uniqueidentifier")
- .HasColumnName("TenantId");
-
- b.HasKey("Id");
-
- b.HasIndex("ContainerId");
-
- b.HasIndex("TenantId", "ContainerId", "Name");
-
- b.ToTable("AbpBlobs", (string)null);
- });
-
- modelBuilder.Entity("Volo.Abp.BlobStoring.Database.DatabaseBlobContainer", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("uniqueidentifier");
-
- b.Property("ConcurrencyStamp")
- .IsConcurrencyToken()
- .HasMaxLength(40)
- .HasColumnType("nvarchar(40)")
- .HasColumnName("ConcurrencyStamp");
-
- b.Property("ExtraProperties")
- .HasColumnType("nvarchar(max)")
- .HasColumnName("ExtraProperties");
-
- b.Property("Name")
- .IsRequired()
- .HasMaxLength(128)
- .HasColumnType("nvarchar(128)");
-
- b.Property("TenantId")
- .HasColumnType("uniqueidentifier")
- .HasColumnName("TenantId");
-
- b.HasKey("Id");
-
- b.HasIndex("TenantId", "Name");
-
- b.ToTable("AbpBlobContainers", (string)null);
- });
-
- modelBuilder.Entity("Volo.Abp.FeatureManagement.FeatureDefinitionRecord", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("uniqueidentifier");
-
- b.Property("AllowedProviders")
- .HasMaxLength(256)
- .HasColumnType("nvarchar(256)");
-
- b.Property("DefaultValue")
- .HasMaxLength(256)
- .HasColumnType("nvarchar(256)");
-
- b.Property("Description")
- .HasMaxLength(256)
- .HasColumnType("nvarchar(256)");
-
- b.Property("DisplayName")
- .IsRequired()
- .HasMaxLength(256)
- .HasColumnType("nvarchar(256)");
-
- b.Property("ExtraProperties")
- .HasColumnType("nvarchar(max)")
- .HasColumnName("ExtraProperties");
-
- b.Property("GroupName")
- .IsRequired()
- .HasMaxLength(128)
- .HasColumnType("nvarchar(128)");
-
- b.Property("IsAvailableToHost")
- .HasColumnType("bit");
-
- b.Property("IsVisibleToClients")
- .HasColumnType("bit");
-
- b.Property("Name")
- .IsRequired()
- .HasMaxLength(128)
- .HasColumnType("nvarchar(128)");
-
- b.Property("ParentName")
- .HasMaxLength(128)
- .HasColumnType("nvarchar(128)");
-
- b.Property("ValueType")
- .HasMaxLength(2048)
- .HasColumnType("nvarchar(2048)");
-
- b.HasKey("Id");
-
- b.HasIndex("GroupName");
-
- b.HasIndex("Name")
- .IsUnique();
-
- b.ToTable("AbpFeatures", (string)null);
- });
-
- modelBuilder.Entity("Volo.Abp.FeatureManagement.FeatureGroupDefinitionRecord", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("uniqueidentifier");
-
- b.Property("DisplayName")
- .IsRequired()
- .HasMaxLength(256)
- .HasColumnType("nvarchar(256)");
-
- b.Property("ExtraProperties")
- .HasColumnType("nvarchar(max)")
- .HasColumnName("ExtraProperties");
-
- b.Property("Name")
- .IsRequired()
- .HasMaxLength(128)
- .HasColumnType("nvarchar(128)");
-
- b.HasKey("Id");
-
- b.HasIndex("Name")
- .IsUnique();
-
- b.ToTable("AbpFeatureGroups", (string)null);
- });
-
- modelBuilder.Entity("Volo.Abp.FeatureManagement.FeatureValue", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("uniqueidentifier");
-
- b.Property("Name")
- .IsRequired()
- .HasMaxLength(128)
- .HasColumnType("nvarchar(128)");
-
- b.Property("ProviderKey")
- .HasMaxLength(64)
- .HasColumnType("nvarchar(64)");
-
- b.Property("ProviderName")
- .HasMaxLength(64)
- .HasColumnType("nvarchar(64)");
-
- b.Property("Value")
- .IsRequired()
- .HasMaxLength(128)
- .HasColumnType("nvarchar(128)");
-
- b.HasKey("Id");
-
- b.HasIndex("Name", "ProviderName", "ProviderKey")
- .IsUnique()
- .HasFilter("[ProviderName] IS NOT NULL AND [ProviderKey] IS NOT NULL");
-
- b.ToTable("AbpFeatureValues", (string)null);
- });
-
- modelBuilder.Entity("Volo.Abp.Identity.IdentityClaimType", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("uniqueidentifier");
-
- b.Property("ConcurrencyStamp")
- .IsConcurrencyToken()
- .HasMaxLength(40)
- .HasColumnType("nvarchar(40)")
- .HasColumnName("ConcurrencyStamp");
-
- b.Property("Description")
- .HasMaxLength(256)
- .HasColumnType("nvarchar(256)");
-
- b.Property("ExtraProperties")
- .HasColumnType("nvarchar(max)")
- .HasColumnName("ExtraProperties");
-
- b.Property("IsStatic")
- .HasColumnType("bit");
-
- b.Property("Name")
- .IsRequired()
- .HasMaxLength(256)
- .HasColumnType("nvarchar(256)");
-
- b.Property("Regex")
- .HasMaxLength(512)
- .HasColumnType("nvarchar(512)");
-
- b.Property("RegexDescription")
- .HasMaxLength(128)
- .HasColumnType("nvarchar(128)");
-
- b.Property("Required")
- .HasColumnType("bit");
-
- b.Property("ValueType")
- .HasColumnType("int");
-
- b.HasKey("Id");
-
- b.ToTable("AbpClaimTypes", (string)null);
- });
-
- modelBuilder.Entity("Volo.Abp.Identity.IdentityLinkUser", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("uniqueidentifier");
-
- b.Property("SourceTenantId")
- .HasColumnType("uniqueidentifier");
-
- b.Property("SourceUserId")
- .HasColumnType("uniqueidentifier");
-
- b.Property("TargetTenantId")
- .HasColumnType("uniqueidentifier");
-
- b.Property("TargetUserId")
- .HasColumnType("uniqueidentifier");
-
- b.HasKey("Id");
-
- b.HasIndex("SourceUserId", "SourceTenantId", "TargetUserId", "TargetTenantId")
- .IsUnique()
- .HasFilter("[SourceTenantId] IS NOT NULL AND [TargetTenantId] IS NOT NULL");
-
- b.ToTable("AbpLinkUsers", (string)null);
- });
-
- modelBuilder.Entity("Volo.Abp.Identity.IdentityRole", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("uniqueidentifier");
-
- b.Property("ConcurrencyStamp")
- .IsConcurrencyToken()
- .HasMaxLength(40)
- .HasColumnType("nvarchar(40)")
- .HasColumnName("ConcurrencyStamp");
-
- b.Property("ExtraProperties")
- .HasColumnType("nvarchar(max)")
- .HasColumnName("ExtraProperties");
-
- b.Property("IsDefault")
- .HasColumnType("bit")
- .HasColumnName("IsDefault");
-
- b.Property("IsPublic")
- .HasColumnType("bit")
- .HasColumnName("IsPublic");
-
- b.Property("IsStatic")
- .HasColumnType("bit")
- .HasColumnName("IsStatic");
-
- b.Property("Name")
- .IsRequired()
- .HasMaxLength(256)
- .HasColumnType("nvarchar(256)");
-
- b.Property("NormalizedName")
- .IsRequired()
- .HasMaxLength(256)
- .HasColumnType("nvarchar(256)");
-
- b.Property("TenantId")
- .HasColumnType("uniqueidentifier")
- .HasColumnName("TenantId");
-
- b.HasKey("Id");
-
- b.HasIndex("NormalizedName");
-
- b.ToTable("AbpRoles", (string)null);
- });
-
- modelBuilder.Entity("Volo.Abp.Identity.IdentityRoleClaim", b =>
- {
- b.Property("Id")
- .HasColumnType("uniqueidentifier");
-
- b.Property("ClaimType")
- .IsRequired()
- .HasMaxLength(256)
- .HasColumnType("nvarchar(256)");
-
- b.Property("ClaimValue")
- .HasMaxLength(1024)
- .HasColumnType("nvarchar(1024)");
-
- b.Property("RoleId")
- .HasColumnType("uniqueidentifier");
-
- b.Property("TenantId")
- .HasColumnType("uniqueidentifier")
- .HasColumnName("TenantId");
-
- b.HasKey("Id");
-
- b.HasIndex("RoleId");
-
- b.ToTable("AbpRoleClaims", (string)null);
- });
-
- modelBuilder.Entity("Volo.Abp.Identity.IdentitySecurityLog", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("uniqueidentifier");
-
- b.Property("Action")
- .HasMaxLength(96)
- .HasColumnType("nvarchar(96)");
-
- b.Property("ApplicationName")
- .HasMaxLength(96)
- .HasColumnType("nvarchar(96)");
-
- b.Property("BrowserInfo")
- .HasMaxLength(512)
- .HasColumnType("nvarchar(512)");
-
- b.Property("ClientId")
- .HasMaxLength(64)
- .HasColumnType("nvarchar(64)");
-
- b.Property("ClientIpAddress")
- .HasMaxLength(64)
- .HasColumnType("nvarchar(64)");
-
- b.Property("ConcurrencyStamp")
- .IsConcurrencyToken()
- .HasMaxLength(40)
- .HasColumnType("nvarchar(40)")
- .HasColumnName("ConcurrencyStamp");
-
- b.Property("CorrelationId")
- .HasMaxLength(64)
- .HasColumnType("nvarchar(64)");
-
- b.Property("CreationTime")
- .HasColumnType("datetime2");
-
- b.Property("ExtraProperties")
- .HasColumnType("nvarchar(max)")
- .HasColumnName("ExtraProperties");
-
- b.Property("Identity")
- .HasMaxLength(96)
- .HasColumnType("nvarchar(96)");
-
- b.Property("TenantId")
- .HasColumnType("uniqueidentifier")
- .HasColumnName("TenantId");
-
- b.Property("TenantName")
- .HasMaxLength(64)
- .HasColumnType("nvarchar(64)");
-
- b.Property("UserId")
- .HasColumnType("uniqueidentifier");
-
- b.Property("UserName")
- .HasMaxLength(256)
- .HasColumnType("nvarchar(256)");
-
- b.HasKey("Id");
-
- b.HasIndex("TenantId", "Action");
-
- b.HasIndex("TenantId", "ApplicationName");
-
- b.HasIndex("TenantId", "Identity");
-
- b.HasIndex("TenantId", "UserId");
-
- b.ToTable("AbpSecurityLogs", (string)null);
- });
-
- modelBuilder.Entity("Volo.Abp.Identity.IdentityUser", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("uniqueidentifier");
-
- b.Property("AccessFailedCount")
- .ValueGeneratedOnAdd()
- .HasColumnType("int")
- .HasDefaultValue(0)
- .HasColumnName("AccessFailedCount");
-
- b.Property("ConcurrencyStamp")
- .IsConcurrencyToken()
- .HasMaxLength(40)
- .HasColumnType("nvarchar(40)")
- .HasColumnName("ConcurrencyStamp");
-
- b.Property("CreationTime")
- .HasColumnType("datetime2")
- .HasColumnName("CreationTime");
-
- b.Property("CreatorId")
- .HasColumnType("uniqueidentifier")
- .HasColumnName("CreatorId");
-
- b.Property("DeleterId")
- .HasColumnType("uniqueidentifier")
- .HasColumnName("DeleterId");
-
- b.Property("DeletionTime")
- .HasColumnType("datetime2")
- .HasColumnName("DeletionTime");
-
- b.Property("Email")
- .IsRequired()
- .HasMaxLength(256)
- .HasColumnType("nvarchar(256)")
- .HasColumnName("Email");
-
- b.Property("EmailConfirmed")
- .ValueGeneratedOnAdd()
- .HasColumnType("bit")
- .HasDefaultValue(false)
- .HasColumnName("EmailConfirmed");
-
- b.Property("ExtraProperties")
- .HasColumnType("nvarchar(max)")
- .HasColumnName("ExtraProperties");
-
- b.Property("IsActive")
- .HasColumnType("bit")
- .HasColumnName("IsActive");
-
- b.Property("IsDeleted")
- .ValueGeneratedOnAdd()
- .HasColumnType("bit")
- .HasDefaultValue(false)
- .HasColumnName("IsDeleted");
-
- b.Property("IsExternal")
- .ValueGeneratedOnAdd()
- .HasColumnType("bit")
- .HasDefaultValue(false)
- .HasColumnName("IsExternal");
-
- b.Property("LastModificationTime")
- .HasColumnType("datetime2")
- .HasColumnName("LastModificationTime");
-
- b.Property("LastModifierId")
- .HasColumnType("uniqueidentifier")
- .HasColumnName("LastModifierId");
-
- b.Property("LockoutEnabled")
- .ValueGeneratedOnAdd()
- .HasColumnType("bit")
- .HasDefaultValue(false)
- .HasColumnName("LockoutEnabled");
-
- b.Property("LockoutEnd")
- .HasColumnType("datetimeoffset");
-
- b.Property("Name")
- .HasMaxLength(64)
- .HasColumnType("nvarchar(64)")
- .HasColumnName("Name");
-
- b.Property("NormalizedEmail")
- .IsRequired()
- .HasMaxLength(256)
- .HasColumnType("nvarchar(256)")
- .HasColumnName("NormalizedEmail");
-
- b.Property("NormalizedUserName")
- .IsRequired()
- .HasMaxLength(256)
- .HasColumnType("nvarchar(256)")
- .HasColumnName("NormalizedUserName");
-
- b.Property("PasswordHash")
- .HasMaxLength(256)
- .HasColumnType("nvarchar(256)")
- .HasColumnName("PasswordHash");
-
- b.Property("PhoneNumber")
- .HasMaxLength(16)
- .HasColumnType("nvarchar(16)")
- .HasColumnName("PhoneNumber");
-
- b.Property("PhoneNumberConfirmed")
- .ValueGeneratedOnAdd()
- .HasColumnType("bit")
- .HasDefaultValue(false)
- .HasColumnName("PhoneNumberConfirmed");
-
- b.Property("SecurityStamp")
- .IsRequired()
- .HasMaxLength(256)
- .HasColumnType("nvarchar(256)")
- .HasColumnName("SecurityStamp");
-
- b.Property("Surname")
- .HasMaxLength(64)
- .HasColumnType("nvarchar(64)")
- .HasColumnName("Surname");
-
- b.Property("TenantId")
- .HasColumnType("uniqueidentifier")
- .HasColumnName("TenantId");
-
- b.Property("TwoFactorEnabled")
- .ValueGeneratedOnAdd()
- .HasColumnType("bit")
- .HasDefaultValue(false)
- .HasColumnName("TwoFactorEnabled");
-
- b.Property("UserName")
- .IsRequired()
- .HasMaxLength(256)
- .HasColumnType("nvarchar(256)")
- .HasColumnName("UserName");
-
- b.HasKey("Id");
-
- b.HasIndex("Email");
-
- b.HasIndex("NormalizedEmail");
-
- b.HasIndex("NormalizedUserName");
-
- b.HasIndex("UserName");
-
- b.ToTable("AbpUsers", (string)null);
- });
-
- modelBuilder.Entity("Volo.Abp.Identity.IdentityUserClaim", b =>
- {
- b.Property("Id")
- .HasColumnType("uniqueidentifier");
-
- b.Property("ClaimType")
- .IsRequired()
- .HasMaxLength(256)
- .HasColumnType("nvarchar(256)");
-
- b.Property("ClaimValue")
- .HasMaxLength(1024)
- .HasColumnType("nvarchar(1024)");
-
- b.Property("TenantId")
- .HasColumnType("uniqueidentifier")
- .HasColumnName("TenantId");
-
- b.Property("UserId")
- .HasColumnType("uniqueidentifier");
-
- b.HasKey("Id");
-
- b.HasIndex("UserId");
-
- b.ToTable("AbpUserClaims", (string)null);
- });
-
- modelBuilder.Entity("Volo.Abp.Identity.IdentityUserLogin", b =>
- {
- b.Property